@mateuszjs/magic-render 0.1.0-next.37 → 0.1.0-next.39
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/index.mjs +1 -1
- package/lib/index.mjs.map +1 -1
- package/lib/types/WebGPU/generatePreview.d.ts +1 -1
- package/lib/types/WebGPU/generatePreview.d.ts.map +1 -1
- package/lib/types/getCanvasMatrix.d.ts +1 -1
- package/lib/types/getCanvasMatrix.d.ts.map +1 -1
- package/lib/types/index.d.ts +4 -4
- package/lib/types/index.d.ts.map +1 -1
- package/lib/types/run.d.ts +1 -1
- package/lib/types/run.d.ts.map +1 -1
- package/package.json +1 -1
package/lib/index.mjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
var A,e,t,i,n={945:(A,e,t)=>{var i,n;t.d(e,{Ay:()=>Mi}),String.prototype.codePointAt||(i=function(){try{var A={},e=Object.defineProperty,t=e(A,A,A)&&e}catch(A){}return t}(),n=function(A){if(null==this)throw TypeError();var e=String(this),t=e.length,i=A?Number(A):0;if(i!=i&&(i=0),!(i<0||i>=t)){var n,r=e.charCodeAt(i);return r>=55296&&r<=56319&&t>i+1&&(n=e.charCodeAt(i+1))>=56320&&n<=57343?1024*(r-55296)+n-56320+65536:r}},i?i(String.prototype,"codePointAt",{value:n,configurable:!0,writable:!0}):String.prototype.codePointAt=n);function r(){this.table=new Uint16Array(16),this.trans=new Uint16Array(288)}function s(A,e){this.source=A,this.sourceIndex=0,this.tag=0,this.bitcount=0,this.dest=e,this.destLen=0,this.ltree=new r,this.dtree=new r}var a=new r,o=new r,g=new Uint8Array(30),I=new Uint16Array(30),Q=new Uint8Array(30),C=new Uint16Array(30),c=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),B=new r,l=new Uint8Array(320);function E(A,e,t,i){var n,r;for(n=0;n<t;++n)A[n]=0;for(n=0;n<30-t;++n)A[n+t]=n/t|0;for(r=i,n=0;n<30;++n)e[n]=r,r+=1<<A[n]}var u=new Uint16Array(16);function f(A,e,t,i){var n,r;for(n=0;n<16;++n)A.table[n]=0;for(n=0;n<i;++n)A.table[e[t+n]]++;for(A.table[0]=0,r=0,n=0;n<16;++n)u[n]=r,r+=A.table[n];for(n=0;n<i;++n)e[t+n]&&(A.trans[u[e[t+n]]++]=n)}function h(A){A.bitcount--||(A.tag=A.source[A.sourceIndex++],A.bitcount=7);var e=1&A.tag;return A.tag>>>=1,e}function p(A,e,t){if(!e)return t;for(;A.bitcount<24;)A.tag|=A.source[A.sourceIndex++]<<A.bitcount,A.bitcount+=8;var i=A.tag&65535>>>16-e;return A.tag>>>=e,A.bitcount-=e,i+t}function y(A,e){for(;A.bitcount<24;)A.tag|=A.source[A.sourceIndex++]<<A.bitcount,A.bitcount+=8;var t=0,i=0,n=0,r=A.tag;do{i=2*i+(1&r),r>>>=1,++n,t+=e.table[n],i-=e.table[n]}while(i>=0);return A.tag=r,A.bitcount-=n,e.trans[t+i]}function d(A,e,t){var i,n,r,s,a,o;for(i=p(A,5,257),n=p(A,5,1),r=p(A,4,4),s=0;s<19;++s)l[s]=0;for(s=0;s<r;++s){var g=p(A,3,0);l[c[s]]=g}for(f(B,l,0,19),a=0;a<i+n;){var I=y(A,B);switch(I){case 16:var Q=l[a-1];for(o=p(A,2,3);o;--o)l[a++]=Q;break;case 17:for(o=p(A,3,3);o;--o)l[a++]=0;break;case 18:for(o=p(A,7,11);o;--o)l[a++]=0;break;default:l[a++]=I}}f(e,l,0,i),f(t,l,i,n)}function m(A,e,t){for(;;){var i,n,r,s,a=y(A,e);if(256===a)return 0;if(a<256)A.dest[A.destLen++]=a;else for(i=p(A,g[a-=257],I[a]),n=y(A,t),s=r=A.destLen-p(A,Q[n],C[n]);s<r+i;++s)A.dest[A.destLen++]=A.dest[s]}}function b(A){for(var e,t;A.bitcount>8;)A.sourceIndex--,A.bitcount-=8;if((e=256*(e=A.source[A.sourceIndex+1])+A.source[A.sourceIndex])!==(65535&~(256*A.source[A.sourceIndex+3]+A.source[A.sourceIndex+2])))return-3;for(A.sourceIndex+=4,t=e;t;--t)A.dest[A.destLen++]=A.source[A.sourceIndex++];return A.bitcount=0,0}!function(A,e){var t;for(t=0;t<7;++t)A.table[t]=0;for(A.table[7]=24,A.table[8]=152,A.table[9]=112,t=0;t<24;++t)A.trans[t]=256+t;for(t=0;t<144;++t)A.trans[24+t]=t;for(t=0;t<8;++t)A.trans[168+t]=280+t;for(t=0;t<112;++t)A.trans[176+t]=144+t;for(t=0;t<5;++t)e.table[t]=0;for(e.table[5]=32,t=0;t<32;++t)e.trans[t]=t}(a,o),E(g,I,4,3),E(Q,C,2,1),g[28]=0,I[28]=258;var D=function(A,e){var t,i,n=new s(A,e);do{switch(t=h(n),p(n,2,0)){case 0:i=b(n);break;case 1:i=m(n,a,o);break;case 2:d(n,n.ltree,n.dtree),i=m(n,n.ltree,n.dtree);break;default:i=-3}if(0!==i)throw new Error("Data error")}while(!t);return n.destLen<n.dest.length?"function"==typeof n.dest.slice?n.dest.slice(0,n.destLen):n.dest.subarray(0,n.destLen):n.dest};function S(A,e,t,i,n){return Math.pow(1-n,3)*A+3*Math.pow(1-n,2)*n*e+3*(1-n)*Math.pow(n,2)*t+Math.pow(n,3)*i}function w(){this.x1=Number.NaN,this.y1=Number.NaN,this.x2=Number.NaN,this.y2=Number.NaN}function v(){this.commands=[],this.fill="black",this.stroke=null,this.strokeWidth=1}function k(A){throw new Error(A)}function x(A,e){A||k(e)}w.prototype.isEmpty=function(){return isNaN(this.x1)||isNaN(this.y1)||isNaN(this.x2)||isNaN(this.y2)},w.prototype.addPoint=function(A,e){"number"==typeof A&&((isNaN(this.x1)||isNaN(this.x2))&&(this.x1=A,this.x2=A),A<this.x1&&(this.x1=A),A>this.x2&&(this.x2=A)),"number"==typeof e&&((isNaN(this.y1)||isNaN(this.y2))&&(this.y1=e,this.y2=e),e<this.y1&&(this.y1=e),e>this.y2&&(this.y2=e))},w.prototype.addX=function(A){this.addPoint(A,null)},w.prototype.addY=function(A){this.addPoint(null,A)},w.prototype.addBezier=function(A,e,t,i,n,r,s,a){var o=[A,e],g=[t,i],I=[n,r],Q=[s,a];this.addPoint(A,e),this.addPoint(s,a);for(var C=0;C<=1;C++){var c=6*o[C]-12*g[C]+6*I[C],B=-3*o[C]+9*g[C]-9*I[C]+3*Q[C],l=3*g[C]-3*o[C];if(0!==B){var E=Math.pow(c,2)-4*l*B;if(!(E<0)){var u=(-c+Math.sqrt(E))/(2*B);0<u&&u<1&&(0===C&&this.addX(S(o[C],g[C],I[C],Q[C],u)),1===C&&this.addY(S(o[C],g[C],I[C],Q[C],u)));var f=(-c-Math.sqrt(E))/(2*B);0<f&&f<1&&(0===C&&this.addX(S(o[C],g[C],I[C],Q[C],f)),1===C&&this.addY(S(o[C],g[C],I[C],Q[C],f)))}}else{if(0===c)continue;var h=-l/c;0<h&&h<1&&(0===C&&this.addX(S(o[C],g[C],I[C],Q[C],h)),1===C&&this.addY(S(o[C],g[C],I[C],Q[C],h)))}}},w.prototype.addQuad=function(A,e,t,i,n,r){var s=A+2/3*(t-A),a=e+2/3*(i-e),o=s+1/3*(n-A),g=a+1/3*(r-e);this.addBezier(A,e,s,a,o,g,n,r)},v.prototype.moveTo=function(A,e){this.commands.push({type:"M",x:A,y:e})},v.prototype.lineTo=function(A,e){this.commands.push({type:"L",x:A,y:e})},v.prototype.curveTo=v.prototype.bezierCurveTo=function(A,e,t,i,n,r){this.commands.push({type:"C",x1:A,y1:e,x2:t,y2:i,x:n,y:r})},v.prototype.quadTo=v.prototype.quadraticCurveTo=function(A,e,t,i){this.commands.push({type:"Q",x1:A,y1:e,x:t,y:i})},v.prototype.close=v.prototype.closePath=function(){this.commands.push({type:"Z"})},v.prototype.extend=function(A){if(A.commands)A=A.commands;else if(A instanceof w){var e=A;return this.moveTo(e.x1,e.y1),this.lineTo(e.x2,e.y1),this.lineTo(e.x2,e.y2),this.lineTo(e.x1,e.y2),void this.close()}Array.prototype.push.apply(this.commands,A)},v.prototype.getBoundingBox=function(){for(var A=new w,e=0,t=0,i=0,n=0,r=0;r<this.commands.length;r++){var s=this.commands[r];switch(s.type){case"M":A.addPoint(s.x,s.y),e=i=s.x,t=n=s.y;break;case"L":A.addPoint(s.x,s.y),i=s.x,n=s.y;break;case"Q":A.addQuad(i,n,s.x1,s.y1,s.x,s.y),i=s.x,n=s.y;break;case"C":A.addBezier(i,n,s.x1,s.y1,s.x2,s.y2,s.x,s.y),i=s.x,n=s.y;break;case"Z":i=e,n=t;break;default:throw new Error("Unexpected path command "+s.type)}}return A.isEmpty()&&A.addPoint(0,0),A},v.prototype.draw=function(A){A.beginPath();for(var e=0;e<this.commands.length;e+=1){var t=this.commands[e];"M"===t.type?A.moveTo(t.x,t.y):"L"===t.type?A.lineTo(t.x,t.y):"C"===t.type?A.bezierCurveTo(t.x1,t.y1,t.x2,t.y2,t.x,t.y):"Q"===t.type?A.quadraticCurveTo(t.x1,t.y1,t.x,t.y):"Z"===t.type&&A.closePath()}this.fill&&(A.fillStyle=this.fill,A.fill()),this.stroke&&(A.strokeStyle=this.stroke,A.lineWidth=this.strokeWidth,A.stroke())},v.prototype.toPathData=function(A){function e(e){return Math.round(e)===e?""+Math.round(e):e.toFixed(A)}function t(){for(var A=arguments,t="",i=0;i<arguments.length;i+=1){var n=A[i];n>=0&&i>0&&(t+=" "),t+=e(n)}return t}A=void 0!==A?A:2;for(var i="",n=0;n<this.commands.length;n+=1){var r=this.commands[n];"M"===r.type?i+="M"+t(r.x,r.y):"L"===r.type?i+="L"+t(r.x,r.y):"C"===r.type?i+="C"+t(r.x1,r.y1,r.x2,r.y2,r.x,r.y):"Q"===r.type?i+="Q"+t(r.x1,r.y1,r.x,r.y):"Z"===r.type&&(i+="Z")}return i},v.prototype.toSVG=function(A){var e='<path d="';return e+=this.toPathData(A),e+='"',this.fill&&"black"!==this.fill&&(null===this.fill?e+=' fill="none"':e+=' fill="'+this.fill+'"'),this.stroke&&(e+=' stroke="'+this.stroke+'" stroke-width="'+this.strokeWidth+'"'),e+="/>"},v.prototype.toDOMElement=function(A){var e=this.toPathData(A),t=document.createElementNS("http://www.w3.org/2000/svg","path");return t.setAttribute("d",e),t};var G={fail:k,argument:x,assert:x},U=2147483648,N={},F={},M={};function R(A){return function(){return A}}F.BYTE=function(A){return G.argument(A>=0&&A<=255,"Byte value should be between 0 and 255."),[A]},M.BYTE=R(1),F.CHAR=function(A){return[A.charCodeAt(0)]},M.CHAR=R(1),F.CHARARRAY=function(A){void 0===A&&(A="",console.warn("Undefined CHARARRAY encountered and treated as an empty string. This is probably caused by a missing glyph name."));for(var e=[],t=0;t<A.length;t+=1)e[t]=A.charCodeAt(t);return e},M.CHARARRAY=function(A){return void 0===A?0:A.length},F.USHORT=function(A){return[A>>8&255,255&A]},M.USHORT=R(2),F.SHORT=function(A){return A>=32768&&(A=-(65536-A)),[A>>8&255,255&A]},M.SHORT=R(2),F.UINT24=function(A){return[A>>16&255,A>>8&255,255&A]},M.UINT24=R(3),F.ULONG=function(A){return[A>>24&255,A>>16&255,A>>8&255,255&A]},M.ULONG=R(4),F.LONG=function(A){return A>=U&&(A=-(2*U-A)),[A>>24&255,A>>16&255,A>>8&255,255&A]},M.LONG=R(4),F.FIXED=F.ULONG,M.FIXED=M.ULONG,F.FWORD=F.SHORT,M.FWORD=M.SHORT,F.UFWORD=F.USHORT,M.UFWORD=M.USHORT,F.LONGDATETIME=function(A){return[0,0,0,0,A>>24&255,A>>16&255,A>>8&255,255&A]},M.LONGDATETIME=R(8),F.TAG=function(A){return G.argument(4===A.length,"Tag should be exactly 4 ASCII characters."),[A.charCodeAt(0),A.charCodeAt(1),A.charCodeAt(2),A.charCodeAt(3)]},M.TAG=R(4),F.Card8=F.BYTE,M.Card8=M.BYTE,F.Card16=F.USHORT,M.Card16=M.USHORT,F.OffSize=F.BYTE,M.OffSize=M.BYTE,F.SID=F.USHORT,M.SID=M.USHORT,F.NUMBER=function(A){return A>=-107&&A<=107?[A+139]:A>=108&&A<=1131?[247+((A-=108)>>8),255&A]:A>=-1131&&A<=-108?[251+((A=-A-108)>>8),255&A]:A>=-32768&&A<=32767?F.NUMBER16(A):F.NUMBER32(A)},M.NUMBER=function(A){return F.NUMBER(A).length},F.NUMBER16=function(A){return[28,A>>8&255,255&A]},M.NUMBER16=R(3),F.NUMBER32=function(A){return[29,A>>24&255,A>>16&255,A>>8&255,255&A]},M.NUMBER32=R(5),F.REAL=function(A){var e=A.toString(),t=/\.(\d*?)(?:9{5,20}|0{5,20})\d{0,2}(?:e(.+)|$)/.exec(e);if(t){var i=parseFloat("1e"+((t[2]?+t[2]:0)+t[1].length));e=(Math.round(A*i)/i).toString()}for(var n="",r=0,s=e.length;r<s;r+=1){var a=e[r];n+="e"===a?"-"===e[++r]?"c":"b":"."===a?"a":"-"===a?"e":a}for(var o=[30],g=0,I=(n+=1&n.length?"f":"ff").length;g<I;g+=2)o.push(parseInt(n.substr(g,2),16));return o},M.REAL=function(A){return F.REAL(A).length},F.NAME=F.CHARARRAY,M.NAME=M.CHARARRAY,F.STRING=F.CHARARRAY,M.STRING=M.CHARARRAY,N.UTF8=function(A,e,t){for(var i=[],n=t,r=0;r<n;r++,e+=1)i[r]=A.getUint8(e);return String.fromCharCode.apply(null,i)},N.UTF16=function(A,e,t){for(var i=[],n=t/2,r=0;r<n;r++,e+=2)i[r]=A.getUint16(e);return String.fromCharCode.apply(null,i)},F.UTF16=function(A){for(var e=[],t=0;t<A.length;t+=1){var i=A.charCodeAt(t);e[e.length]=i>>8&255,e[e.length]=255&i}return e},M.UTF16=function(A){return 2*A.length};var L={"x-mac-croatian":"ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûü†°¢£§•¶ß®Š™´¨≠ŽØ∞±≤≥∆µ∂∑∏š∫ªºΩžø¿¡¬√ƒ≈ƫȅ ÀÃÕŒœĐ—“”‘’÷◊©⁄€‹›Æ»–·‚„‰ÂćÁčÈÍÎÏÌÓÔđÒÚÛÙıˆ˜¯πË˚¸Êæˇ","x-mac-cyrillic":"АБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ†°Ґ£§•¶І®©™Ђђ≠Ѓѓ∞±≤≥іµґЈЄєЇїЉљЊњјЅ¬√ƒ≈∆«»… ЋћЌќѕ–—“”‘’÷„ЎўЏџ№Ёёяабвгдежзийклмнопрстуфхцчшщъыьэю","x-mac-gaelic":"ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûü†°¢£§•¶ß®©™´¨≠ÆØḂ±≤≥ḃĊċḊḋḞḟĠġṀæøṁṖṗɼƒſṠ«»… ÀÃÕŒœ–—“”‘’ṡẛÿŸṪ€‹›Ŷŷṫ·Ỳỳ⁊ÂÊÁËÈÍÎÏÌÓÔ♣ÒÚÛÙıÝýŴŵẄẅẀẁẂẃ","x-mac-greek":"Ĺ²É³ÖÜ΅àâä΄¨çéèê룙î‰ôö¦€ùûü†ΓΔΘΛΞΠß®©ΣΪ§≠°·Α±≤≥¥ΒΕΖΗΙΚΜΦΫΨΩάΝ¬ΟΡ≈Τ«»… ΥΧΆΈœ–―“”‘’÷ΉΊΌΎέήίόΏύαβψδεφγηιξκλμνοπώρστθωςχυζϊϋΐΰ","x-mac-icelandic":"ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûüݰ¢£§•¶ß®©™´¨≠ÆØ∞±≤≥¥µ∂∑∏π∫ªºΩæø¿¡¬√ƒ≈∆«»… ÀÃÕŒœ–—“”‘’÷◊ÿŸ⁄€ÐðÞþý·‚„‰ÂÊÁËÈÍÎÏÌÓÔÒÚÛÙıˆ˜¯˘˙˚¸˝˛ˇ","x-mac-inuit":"ᐃᐄᐅᐆᐊᐋᐱᐲᐳᐴᐸᐹᑉᑎᑏᑐᑑᑕᑖᑦᑭᑮᑯᑰᑲᑳᒃᒋᒌᒍᒎᒐᒑ°ᒡᒥᒦ•¶ᒧ®©™ᒨᒪᒫᒻᓂᓃᓄᓅᓇᓈᓐᓯᓰᓱᓲᓴᓵᔅᓕᓖᓗᓘᓚᓛᓪᔨᔩᔪᔫᔭ… ᔮᔾᕕᕖᕗ–—“”‘’ᕘᕙᕚᕝᕆᕇᕈᕉᕋᕌᕐᕿᖀᖁᖂᖃᖄᖅᖏᖐᖑᖒᖓᖔᖕᙱᙲᙳᙴᙵᙶᖖᖠᖡᖢᖣᖤᖥᖦᕼŁł","x-mac-ce":"ÄĀāÉĄÖÜáąČäčĆć鏟ĎíďĒēĖóėôöõúĚěü†°Ę£§•¶ß®©™ę¨≠ģĮįĪ≤≥īĶ∂∑łĻļĽľĹĺŅņѬ√ńŇ∆«»… ňŐÕőŌ–—“”‘’÷◊ōŔŕŘ‹›řŖŗŠ‚„šŚśÁŤťÍŽžŪÓÔūŮÚůŰűŲųÝýķŻŁżĢˇ",macintosh:"ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûü†°¢£§•¶ß®©™´¨≠ÆØ∞±≤≥¥µ∂∑∏π∫ªºΩæø¿¡¬√ƒ≈∆«»… ÀÃÕŒœ–—“”‘’÷◊ÿŸ⁄€‹›fifl‡·‚„‰ÂÊÁËÈÍÎÏÌÓÔÒÚÛÙıˆ˜¯˘˙˚¸˝˛ˇ","x-mac-romanian":"ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûü†°¢£§•¶ß®©™´¨≠ĂȘ∞±≤≥¥µ∂∑∏π∫ªºΩăș¿¡¬√ƒ≈∆«»… ÀÃÕŒœ–—“”‘’÷◊ÿŸ⁄€‹›Țț‡·‚„‰ÂÊÁËÈÍÎÏÌÓÔÒÚÛÙıˆ˜¯˘˙˚¸˝˛ˇ","x-mac-turkish":"ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûü†°¢£§•¶ß®©™´¨≠ÆØ∞±≤≥¥µ∂∑∏π∫ªºΩæø¿¡¬√ƒ≈∆«»… ÀÃÕŒœ–—“”‘’÷◊ÿŸĞğİıŞş‡·‚„‰ÂÊÁËÈÍÎÏÌÓÔÒÚÛÙˆ˜¯˘˙˚¸˝˛ˇ"};N.MACSTRING=function(A,e,t,i){var n=L[i];if(void 0!==n){for(var r="",s=0;s<t;s++){var a=A.getUint8(e+s);r+=a<=127?String.fromCharCode(a):n[127&a]}return r}};var z,J="function"==typeof WeakMap&&new WeakMap;function q(A){return A>=-128&&A<=127}function O(A,e,t){for(var i=0,n=A.length;e<n&&i<64&&0===A[e];)++e,++i;return t.push(128|i-1),e}function K(A,e,t){for(var i=0,n=A.length,r=e;r<n&&i<64;){var s=A[r];if(!q(s))break;if(0===s&&r+1<n&&0===A[r+1])break;++r,++i}t.push(i-1);for(var a=e;a<r;++a)t.push(A[a]+256&255);return r}function T(A,e,t){for(var i=0,n=A.length,r=e;r<n&&i<64;){var s=A[r];if(0===s)break;if(q(s)&&r+1<n&&q(A[r+1]))break;++r,++i}t.push(64|i-1);for(var a=e;a<r;++a){var o=A[a];t.push(o+65536>>8&255,o+256&255)}return r}F.MACSTRING=function(A,e){var t=function(A){if(!z)for(var e in z={},L)z[e]=new String(e);var t=z[A];if(void 0!==t){if(J){var i=J.get(t);if(void 0!==i)return i}var n=L[A];if(void 0!==n){for(var r={},s=0;s<n.length;s++)r[n.charCodeAt(s)]=s+128;return J&&J.set(t,r),r}}}(e);if(void 0!==t){for(var i=[],n=0;n<A.length;n++){var r=A.charCodeAt(n);if(r>=128&&void 0===(r=t[r]))return;i[n]=r}return i}},M.MACSTRING=function(A,e){var t=F.MACSTRING(A,e);return void 0!==t?t.length:0},F.VARDELTAS=function(A){for(var e=0,t=[];e<A.length;){var i=A[e];e=0===i?O(A,e,t):i>=-128&&i<=127?K(A,e,t):T(A,e,t)}return t},F.INDEX=function(A){for(var e=1,t=[e],i=[],n=0;n<A.length;n+=1){var r=F.OBJECT(A[n]);Array.prototype.push.apply(i,r),e+=r.length,t.push(e)}if(0===i.length)return[0,0];for(var s=[],a=1+Math.floor(Math.log(e)/Math.log(2))/8|0,o=[void 0,F.BYTE,F.USHORT,F.UINT24,F.ULONG][a],g=0;g<t.length;g+=1){var I=o(t[g]);Array.prototype.push.apply(s,I)}return Array.prototype.concat(F.Card16(A.length),F.OffSize(a),s,i)},M.INDEX=function(A){return F.INDEX(A).length},F.DICT=function(A){for(var e=[],t=Object.keys(A),i=t.length,n=0;n<i;n+=1){var r=parseInt(t[n],0),s=A[r];e=(e=e.concat(F.OPERAND(s.value,s.type))).concat(F.OPERATOR(r))}return e},M.DICT=function(A){return F.DICT(A).length},F.OPERATOR=function(A){return A<1200?[A]:[12,A-1200]},F.OPERAND=function(A,e){var t=[];if(Array.isArray(e))for(var i=0;i<e.length;i+=1)G.argument(A.length===e.length,"Not enough arguments given for type"+e),t=t.concat(F.OPERAND(A[i],e[i]));else if("SID"===e)t=t.concat(F.NUMBER(A));else if("offset"===e)t=t.concat(F.NUMBER32(A));else if("number"===e)t=t.concat(F.NUMBER(A));else{if("real"!==e)throw new Error("Unknown operand type "+e);t=t.concat(F.REAL(A))}return t},F.OP=F.BYTE,M.OP=M.BYTE;var H="function"==typeof WeakMap&&new WeakMap;function Y(A,e,t){if(e.length&&("coverageFormat"!==e[0].name||1===e[0].value))for(var i=0;i<e.length;i+=1){var n=e[i];this[n.name]=n.value}if(this.tableName=A,this.fields=e,t)for(var r=Object.keys(t),s=0;s<r.length;s+=1){var a=r[s],o=t[a];void 0!==this[a]&&(this[a]=o)}}function P(A,e,t){void 0===t&&(t=e.length);var i=new Array(e.length+1);i[0]={name:A+"Count",type:"USHORT",value:t};for(var n=0;n<e.length;n++)i[n+1]={name:A+n,type:"USHORT",value:e[n]};return i}function _(A,e,t){var i=e.length,n=new Array(i+1);n[0]={name:A+"Count",type:"USHORT",value:i};for(var r=0;r<i;r++)n[r+1]={name:A+r,type:"TABLE",value:t(e[r],r)};return n}function V(A,e,t){var i=e.length,n=[];n[0]={name:A+"Count",type:"USHORT",value:i};for(var r=0;r<i;r++)n=n.concat(t(e[r],r));return n}function X(A){1===A.format?Y.call(this,"coverageTable",[{name:"coverageFormat",type:"USHORT",value:1}].concat(P("glyph",A.glyphs))):2===A.format?Y.call(this,"coverageTable",[{name:"coverageFormat",type:"USHORT",value:2}].concat(V("rangeRecord",A.ranges,(function(A){return[{name:"startGlyphID",type:"USHORT",value:A.start},{name:"endGlyphID",type:"USHORT",value:A.end},{name:"startCoverageIndex",type:"USHORT",value:A.index}]})))):G.assert(!1,"Coverage format must be 1 or 2.")}function W(A){Y.call(this,"scriptListTable",V("scriptRecord",A,(function(A,e){var t=A.script,i=t.defaultLangSys;return G.assert(!!i,"Unable to write GSUB: script "+A.tag+" has no default language system."),[{name:"scriptTag"+e,type:"TAG",value:A.tag},{name:"script"+e,type:"TABLE",value:new Y("scriptTable",[{name:"defaultLangSys",type:"TABLE",value:new Y("defaultLangSys",[{name:"lookupOrder",type:"USHORT",value:0},{name:"reqFeatureIndex",type:"USHORT",value:i.reqFeatureIndex}].concat(P("featureIndex",i.featureIndexes)))}].concat(V("langSys",t.langSysRecords,(function(A,e){var t=A.langSys;return[{name:"langSysTag"+e,type:"TAG",value:A.tag},{name:"langSys"+e,type:"TABLE",value:new Y("langSys",[{name:"lookupOrder",type:"USHORT",value:0},{name:"reqFeatureIndex",type:"USHORT",value:t.reqFeatureIndex}].concat(P("featureIndex",t.featureIndexes)))}]}))))}]})))}function j(A){Y.call(this,"featureListTable",V("featureRecord",A,(function(A,e){var t=A.feature;return[{name:"featureTag"+e,type:"TAG",value:A.tag},{name:"feature"+e,type:"TABLE",value:new Y("featureTable",[{name:"featureParams",type:"USHORT",value:t.featureParams}].concat(P("lookupListIndex",t.lookupListIndexes)))}]})))}function Z(A,e){Y.call(this,"lookupListTable",_("lookup",A,(function(A){var t=e[A.lookupType];return G.assert(!!t,"Unable to write GSUB lookup type "+A.lookupType+" tables."),new Y("lookupTable",[{name:"lookupType",type:"USHORT",value:A.lookupType},{name:"lookupFlag",type:"USHORT",value:A.lookupFlag}].concat(_("subtable",A.subtables,t)))})))}F.CHARSTRING=function(A){if(H){var e=H.get(A);if(void 0!==e)return e}for(var t=[],i=A.length,n=0;n<i;n+=1){var r=A[n];t=t.concat(F[r.type](r.value))}return H&&H.set(A,t),t},M.CHARSTRING=function(A){return F.CHARSTRING(A).length},F.OBJECT=function(A){var e=F[A.type];return G.argument(void 0!==e,"No encoding function for type "+A.type),e(A.value)},M.OBJECT=function(A){var e=M[A.type];return G.argument(void 0!==e,"No sizeOf function for type "+A.type),e(A.value)},F.TABLE=function(A){for(var e=[],t=A.fields.length,i=[],n=[],r=0;r<t;r+=1){var s=A.fields[r],a=F[s.type];G.argument(void 0!==a,"No encoding function for field type "+s.type+" ("+s.name+")");var o=A[s.name];void 0===o&&(o=s.value);var g=a(o);"TABLE"===s.type?(n.push(e.length),e=e.concat([0,0]),i.push(g)):e=e.concat(g)}for(var I=0;I<i.length;I+=1){var Q=n[I],C=e.length;G.argument(C<65536,"Table "+A.tableName+" too big."),e[Q]=C>>8,e[Q+1]=255&C,e=e.concat(i[I])}return e},M.TABLE=function(A){for(var e=0,t=A.fields.length,i=0;i<t;i+=1){var n=A.fields[i],r=M[n.type];G.argument(void 0!==r,"No sizeOf function for field type "+n.type+" ("+n.name+")");var s=A[n.name];void 0===s&&(s=n.value),e+=r(s),"TABLE"===n.type&&(e+=2)}return e},F.RECORD=F.TABLE,M.RECORD=M.TABLE,F.LITERAL=function(A){return A},M.LITERAL=function(A){return A.length},Y.prototype.encode=function(){return F.TABLE(this)},Y.prototype.sizeOf=function(){return M.TABLE(this)},X.prototype=Object.create(Y.prototype),X.prototype.constructor=X,W.prototype=Object.create(Y.prototype),W.prototype.constructor=W,j.prototype=Object.create(Y.prototype),j.prototype.constructor=j,Z.prototype=Object.create(Y.prototype),Z.prototype.constructor=Z;var $={Table:Y,Record:Y,Coverage:X,ScriptList:W,FeatureList:j,LookupList:Z,ushortList:P,tableList:_,recordList:V};function AA(A,e){return A.getUint8(e)}function eA(A,e){return A.getUint16(e,!1)}function tA(A,e){return A.getUint32(e,!1)}function iA(A,e){return A.getInt16(e,!1)+A.getUint16(e+2,!1)/65535}var nA={byte:1,uShort:2,short:2,uLong:4,fixed:4,longDateTime:8,tag:4};function rA(A,e){this.data=A,this.offset=e,this.relativeOffset=0}rA.prototype.parseByte=function(){var A=this.data.getUint8(this.offset+this.relativeOffset);return this.relativeOffset+=1,A},rA.prototype.parseChar=function(){var A=this.data.getInt8(this.offset+this.relativeOffset);return this.relativeOffset+=1,A},rA.prototype.parseCard8=rA.prototype.parseByte,rA.prototype.parseUShort=function(){var A=this.data.getUint16(this.offset+this.relativeOffset);return this.relativeOffset+=2,A},rA.prototype.parseCard16=rA.prototype.parseUShort,rA.prototype.parseSID=rA.prototype.parseUShort,rA.prototype.parseOffset16=rA.prototype.parseUShort,rA.prototype.parseShort=function(){var A=this.data.getInt16(this.offset+this.relativeOffset);return this.relativeOffset+=2,A},rA.prototype.parseF2Dot14=function(){var A=this.data.getInt16(this.offset+this.relativeOffset)/16384;return this.relativeOffset+=2,A},rA.prototype.parseULong=function(){var A=tA(this.data,this.offset+this.relativeOffset);return this.relativeOffset+=4,A},rA.prototype.parseOffset32=rA.prototype.parseULong,rA.prototype.parseFixed=function(){var A=iA(this.data,this.offset+this.relativeOffset);return this.relativeOffset+=4,A},rA.prototype.parseString=function(A){var e=this.data,t=this.offset+this.relativeOffset,i="";this.relativeOffset+=A;for(var n=0;n<A;n++)i+=String.fromCharCode(e.getUint8(t+n));return i},rA.prototype.parseTag=function(){return this.parseString(4)},rA.prototype.parseLongDateTime=function(){var A=tA(this.data,this.offset+this.relativeOffset+4);return A-=2082844800,this.relativeOffset+=8,A},rA.prototype.parseVersion=function(A){var e=eA(this.data,this.offset+this.relativeOffset),t=eA(this.data,this.offset+this.relativeOffset+2);return this.relativeOffset+=4,void 0===A&&(A=4096),e+t/A/10},rA.prototype.skip=function(A,e){void 0===e&&(e=1),this.relativeOffset+=nA[A]*e},rA.prototype.parseULongList=function(A){void 0===A&&(A=this.parseULong());for(var e=new Array(A),t=this.data,i=this.offset+this.relativeOffset,n=0;n<A;n++)e[n]=t.getUint32(i),i+=4;return this.relativeOffset+=4*A,e},rA.prototype.parseOffset16List=rA.prototype.parseUShortList=function(A){void 0===A&&(A=this.parseUShort());for(var e=new Array(A),t=this.data,i=this.offset+this.relativeOffset,n=0;n<A;n++)e[n]=t.getUint16(i),i+=2;return this.relativeOffset+=2*A,e},rA.prototype.parseShortList=function(A){for(var e=new Array(A),t=this.data,i=this.offset+this.relativeOffset,n=0;n<A;n++)e[n]=t.getInt16(i),i+=2;return this.relativeOffset+=2*A,e},rA.prototype.parseByteList=function(A){for(var e=new Array(A),t=this.data,i=this.offset+this.relativeOffset,n=0;n<A;n++)e[n]=t.getUint8(i++);return this.relativeOffset+=A,e},rA.prototype.parseList=function(A,e){e||(e=A,A=this.parseUShort());for(var t=new Array(A),i=0;i<A;i++)t[i]=e.call(this);return t},rA.prototype.parseList32=function(A,e){e||(e=A,A=this.parseULong());for(var t=new Array(A),i=0;i<A;i++)t[i]=e.call(this);return t},rA.prototype.parseRecordList=function(A,e){e||(e=A,A=this.parseUShort());for(var t=new Array(A),i=Object.keys(e),n=0;n<A;n++){for(var r={},s=0;s<i.length;s++){var a=i[s],o=e[a];r[a]=o.call(this)}t[n]=r}return t},rA.prototype.parseRecordList32=function(A,e){e||(e=A,A=this.parseULong());for(var t=new Array(A),i=Object.keys(e),n=0;n<A;n++){for(var r={},s=0;s<i.length;s++){var a=i[s],o=e[a];r[a]=o.call(this)}t[n]=r}return t},rA.prototype.parseStruct=function(A){if("function"==typeof A)return A.call(this);for(var e=Object.keys(A),t={},i=0;i<e.length;i++){var n=e[i],r=A[n];t[n]=r.call(this)}return t},rA.prototype.parseValueRecord=function(A){if(void 0===A&&(A=this.parseUShort()),0!==A){var e={};return 1&A&&(e.xPlacement=this.parseShort()),2&A&&(e.yPlacement=this.parseShort()),4&A&&(e.xAdvance=this.parseShort()),8&A&&(e.yAdvance=this.parseShort()),16&A&&(e.xPlaDevice=void 0,this.parseShort()),32&A&&(e.yPlaDevice=void 0,this.parseShort()),64&A&&(e.xAdvDevice=void 0,this.parseShort()),128&A&&(e.yAdvDevice=void 0,this.parseShort()),e}},rA.prototype.parseValueRecordList=function(){for(var A=this.parseUShort(),e=this.parseUShort(),t=new Array(e),i=0;i<e;i++)t[i]=this.parseValueRecord(A);return t},rA.prototype.parsePointer=function(A){var e=this.parseOffset16();if(e>0)return new rA(this.data,this.offset+e).parseStruct(A)},rA.prototype.parsePointer32=function(A){var e=this.parseOffset32();if(e>0)return new rA(this.data,this.offset+e).parseStruct(A)},rA.prototype.parseListOfLists=function(A){for(var e=this.parseOffset16List(),t=e.length,i=this.relativeOffset,n=new Array(t),r=0;r<t;r++){var s=e[r];if(0!==s)if(this.relativeOffset=s,A){for(var a=this.parseOffset16List(),o=new Array(a.length),g=0;g<a.length;g++)this.relativeOffset=s+a[g],o[g]=A.call(this);n[r]=o}else n[r]=this.parseUShortList();else n[r]=void 0}return this.relativeOffset=i,n},rA.prototype.parseCoverage=function(){var A=this.offset+this.relativeOffset,e=this.parseUShort(),t=this.parseUShort();if(1===e)return{format:1,glyphs:this.parseUShortList(t)};if(2===e){for(var i=new Array(t),n=0;n<t;n++)i[n]={start:this.parseUShort(),end:this.parseUShort(),index:this.parseUShort()};return{format:2,ranges:i}}throw new Error("0x"+A.toString(16)+": Coverage format must be 1 or 2.")},rA.prototype.parseClassDef=function(){var A=this.offset+this.relativeOffset,e=this.parseUShort();if(1===e)return{format:1,startGlyph:this.parseUShort(),classes:this.parseUShortList()};if(2===e)return{format:2,ranges:this.parseRecordList({start:rA.uShort,end:rA.uShort,classId:rA.uShort})};throw new Error("0x"+A.toString(16)+": ClassDef format must be 1 or 2.")},rA.list=function(A,e){return function(){return this.parseList(A,e)}},rA.list32=function(A,e){return function(){return this.parseList32(A,e)}},rA.recordList=function(A,e){return function(){return this.parseRecordList(A,e)}},rA.recordList32=function(A,e){return function(){return this.parseRecordList32(A,e)}},rA.pointer=function(A){return function(){return this.parsePointer(A)}},rA.pointer32=function(A){return function(){return this.parsePointer32(A)}},rA.tag=rA.prototype.parseTag,rA.byte=rA.prototype.parseByte,rA.uShort=rA.offset16=rA.prototype.parseUShort,rA.uShortList=rA.prototype.parseUShortList,rA.uLong=rA.offset32=rA.prototype.parseULong,rA.uLongList=rA.prototype.parseULongList,rA.struct=rA.prototype.parseStruct,rA.coverage=rA.prototype.parseCoverage,rA.classDef=rA.prototype.parseClassDef;var sA={reserved:rA.uShort,reqFeatureIndex:rA.uShort,featureIndexes:rA.uShortList};rA.prototype.parseScriptList=function(){return this.parsePointer(rA.recordList({tag:rA.tag,script:rA.pointer({defaultLangSys:rA.pointer(sA),langSysRecords:rA.recordList({tag:rA.tag,langSys:rA.pointer(sA)})})}))||[]},rA.prototype.parseFeatureList=function(){return this.parsePointer(rA.recordList({tag:rA.tag,feature:rA.pointer({featureParams:rA.offset16,lookupListIndexes:rA.uShortList})}))||[]},rA.prototype.parseLookupList=function(A){return this.parsePointer(rA.list(rA.pointer((function(){var e=this.parseUShort();G.argument(1<=e&&e<=9,"GPOS/GSUB lookup type "+e+" unknown.");var t=this.parseUShort(),i=16&t;return{lookupType:e,lookupFlag:t,subtables:this.parseList(rA.pointer(A[e])),markFilteringSet:i?this.parseUShort():void 0}}))))||[]},rA.prototype.parseFeatureVariationsList=function(){return this.parsePointer32((function(){var A=this.parseUShort(),e=this.parseUShort();return G.argument(1===A&&e<1,"GPOS/GSUB feature variations table unknown."),this.parseRecordList32({conditionSetOffset:rA.offset32,featureTableSubstitutionOffset:rA.offset32})}))||[]};var aA={getByte:AA,getCard8:AA,getUShort:eA,getCard16:eA,getShort:function(A,e){return A.getInt16(e,!1)},getULong:tA,getFixed:iA,getTag:function(A,e){for(var t="",i=e;i<e+4;i+=1)t+=String.fromCharCode(A.getInt8(i));return t},getOffset:function(A,e,t){for(var i=0,n=0;n<t;n+=1)i<<=8,i+=A.getUint8(e+n);return i},getBytes:function(A,e,t){for(var i=[],n=e;n<t;n+=1)i.push(A.getUint8(n));return i},bytesToString:function(A){for(var e="",t=0;t<A.length;t+=1)e+=String.fromCharCode(A[t]);return e},Parser:rA};function oA(A,e,t){A.segments.push({end:e,start:e,delta:-(e-t),offset:0,glyphIndex:t})}var gA={parse:function(A,e){var t={};t.version=aA.getUShort(A,e),G.argument(0===t.version,"cmap table version should be 0."),t.numTables=aA.getUShort(A,e+2);for(var i=-1,n=t.numTables-1;n>=0;n-=1){var r=aA.getUShort(A,e+4+8*n),s=aA.getUShort(A,e+4+8*n+2);if(3===r&&(0===s||1===s||10===s)||0===r&&(0===s||1===s||2===s||3===s||4===s)){i=aA.getULong(A,e+4+8*n+4);break}}if(-1===i)throw new Error("No valid cmap sub-tables found.");var a=new aA.Parser(A,e+i);if(t.format=a.parseUShort(),12===t.format)!function(A,e){var t;e.parseUShort(),A.length=e.parseULong(),A.language=e.parseULong(),A.groupCount=t=e.parseULong(),A.glyphIndexMap={};for(var i=0;i<t;i+=1)for(var n=e.parseULong(),r=e.parseULong(),s=e.parseULong(),a=n;a<=r;a+=1)A.glyphIndexMap[a]=s,s++}(t,a);else{if(4!==t.format)throw new Error("Only format 4 and 12 cmap tables are supported (found format "+t.format+").");!function(A,e,t,i,n){var r;A.length=e.parseUShort(),A.language=e.parseUShort(),A.segCount=r=e.parseUShort()>>1,e.skip("uShort",3),A.glyphIndexMap={};for(var s=new aA.Parser(t,i+n+14),a=new aA.Parser(t,i+n+16+2*r),o=new aA.Parser(t,i+n+16+4*r),g=new aA.Parser(t,i+n+16+6*r),I=i+n+16+8*r,Q=0;Q<r-1;Q+=1)for(var C=void 0,c=s.parseUShort(),B=a.parseUShort(),l=o.parseShort(),E=g.parseUShort(),u=B;u<=c;u+=1)0!==E?(I=g.offset+g.relativeOffset-2,I+=E,I+=2*(u-B),0!==(C=aA.getUShort(t,I))&&(C=C+l&65535)):C=u+l&65535,A.glyphIndexMap[u]=C}(t,a,A,e,i)}return t},make:function(A){var e,t=!0;for(e=A.length-1;e>0;e-=1){if(A.get(e).unicode>65535){console.log("Adding CMAP format 12 (needed!)"),t=!1;break}}var i=[{name:"version",type:"USHORT",value:0},{name:"numTables",type:"USHORT",value:t?1:2},{name:"platformID",type:"USHORT",value:3},{name:"encodingID",type:"USHORT",value:1},{name:"offset",type:"ULONG",value:t?12:20}];t||(i=i.concat([{name:"cmap12PlatformID",type:"USHORT",value:3},{name:"cmap12EncodingID",type:"USHORT",value:10},{name:"cmap12Offset",type:"ULONG",value:0}])),i=i.concat([{name:"format",type:"USHORT",value:4},{name:"cmap4Length",type:"USHORT",value:0},{name:"language",type:"USHORT",value:0},{name:"segCountX2",type:"USHORT",value:0},{name:"searchRange",type:"USHORT",value:0},{name:"entrySelector",type:"USHORT",value:0},{name:"rangeShift",type:"USHORT",value:0}]);var n=new $.Table("cmap",i);for(n.segments=[],e=0;e<A.length;e+=1){for(var r=A.get(e),s=0;s<r.unicodes.length;s+=1)oA(n,r.unicodes[s],e);n.segments=n.segments.sort((function(A,e){return A.start-e.start}))}!function(A){A.segments.push({end:65535,start:65535,delta:1,offset:0})}(n);var a=n.segments.length,o=0,g=[],I=[],Q=[],C=[],c=[],B=[];for(e=0;e<a;e+=1){var l=n.segments[e];l.end<=65535&&l.start<=65535?(g=g.concat({name:"end_"+e,type:"USHORT",value:l.end}),I=I.concat({name:"start_"+e,type:"USHORT",value:l.start}),Q=Q.concat({name:"idDelta_"+e,type:"SHORT",value:l.delta}),C=C.concat({name:"idRangeOffset_"+e,type:"USHORT",value:l.offset}),void 0!==l.glyphId&&(c=c.concat({name:"glyph_"+e,type:"USHORT",value:l.glyphId}))):o+=1,t||void 0===l.glyphIndex||(B=(B=(B=B.concat({name:"cmap12Start_"+e,type:"ULONG",value:l.start})).concat({name:"cmap12End_"+e,type:"ULONG",value:l.end})).concat({name:"cmap12Glyph_"+e,type:"ULONG",value:l.glyphIndex}))}if(n.segCountX2=2*(a-o),n.searchRange=2*Math.pow(2,Math.floor(Math.log(a-o)/Math.log(2))),n.entrySelector=Math.log(n.searchRange/2)/Math.log(2),n.rangeShift=n.segCountX2-n.searchRange,n.fields=n.fields.concat(g),n.fields.push({name:"reservedPad",type:"USHORT",value:0}),n.fields=n.fields.concat(I),n.fields=n.fields.concat(Q),n.fields=n.fields.concat(C),n.fields=n.fields.concat(c),n.cmap4Length=14+2*g.length+2+2*I.length+2*Q.length+2*C.length+2*c.length,!t){var E=16+4*B.length;n.cmap12Offset=20+n.cmap4Length,n.fields=n.fields.concat([{name:"cmap12Format",type:"USHORT",value:12},{name:"cmap12Reserved",type:"USHORT",value:0},{name:"cmap12Length",type:"ULONG",value:E},{name:"cmap12Language",type:"ULONG",value:0},{name:"cmap12nGroups",type:"ULONG",value:B.length/3}]),n.fields=n.fields.concat(B)}return n}},IA=[".notdef","space","exclam","quotedbl","numbersign","dollar","percent","ampersand","quoteright","parenleft","parenright","asterisk","plus","comma","hyphen","period","slash","zero","one","two","three","four","five","six","seven","eight","nine","colon","semicolon","less","equal","greater","question","at","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","bracketleft","backslash","bracketright","asciicircum","underscore","quoteleft","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","braceleft","bar","braceright","asciitilde","exclamdown","cent","sterling","fraction","yen","florin","section","currency","quotesingle","quotedblleft","guillemotleft","guilsinglleft","guilsinglright","fi","fl","endash","dagger","daggerdbl","periodcentered","paragraph","bullet","quotesinglbase","quotedblbase","quotedblright","guillemotright","ellipsis","perthousand","questiondown","grave","acute","circumflex","tilde","macron","breve","dotaccent","dieresis","ring","cedilla","hungarumlaut","ogonek","caron","emdash","AE","ordfeminine","Lslash","Oslash","OE","ordmasculine","ae","dotlessi","lslash","oslash","oe","germandbls","onesuperior","logicalnot","mu","trademark","Eth","onehalf","plusminus","Thorn","onequarter","divide","brokenbar","degree","thorn","threequarters","twosuperior","registered","minus","eth","multiply","threesuperior","copyright","Aacute","Acircumflex","Adieresis","Agrave","Aring","Atilde","Ccedilla","Eacute","Ecircumflex","Edieresis","Egrave","Iacute","Icircumflex","Idieresis","Igrave","Ntilde","Oacute","Ocircumflex","Odieresis","Ograve","Otilde","Scaron","Uacute","Ucircumflex","Udieresis","Ugrave","Yacute","Ydieresis","Zcaron","aacute","acircumflex","adieresis","agrave","aring","atilde","ccedilla","eacute","ecircumflex","edieresis","egrave","iacute","icircumflex","idieresis","igrave","ntilde","oacute","ocircumflex","odieresis","ograve","otilde","scaron","uacute","ucircumflex","udieresis","ugrave","yacute","ydieresis","zcaron","exclamsmall","Hungarumlautsmall","dollaroldstyle","dollarsuperior","ampersandsmall","Acutesmall","parenleftsuperior","parenrightsuperior","266 ff","onedotenleader","zerooldstyle","oneoldstyle","twooldstyle","threeoldstyle","fouroldstyle","fiveoldstyle","sixoldstyle","sevenoldstyle","eightoldstyle","nineoldstyle","commasuperior","threequartersemdash","periodsuperior","questionsmall","asuperior","bsuperior","centsuperior","dsuperior","esuperior","isuperior","lsuperior","msuperior","nsuperior","osuperior","rsuperior","ssuperior","tsuperior","ff","ffi","ffl","parenleftinferior","parenrightinferior","Circumflexsmall","hyphensuperior","Gravesmall","Asmall","Bsmall","Csmall","Dsmall","Esmall","Fsmall","Gsmall","Hsmall","Ismall","Jsmall","Ksmall","Lsmall","Msmall","Nsmall","Osmall","Psmall","Qsmall","Rsmall","Ssmall","Tsmall","Usmall","Vsmall","Wsmall","Xsmall","Ysmall","Zsmall","colonmonetary","onefitted","rupiah","Tildesmall","exclamdownsmall","centoldstyle","Lslashsmall","Scaronsmall","Zcaronsmall","Dieresissmall","Brevesmall","Caronsmall","Dotaccentsmall","Macronsmall","figuredash","hypheninferior","Ogoneksmall","Ringsmall","Cedillasmall","questiondownsmall","oneeighth","threeeighths","fiveeighths","seveneighths","onethird","twothirds","zerosuperior","foursuperior","fivesuperior","sixsuperior","sevensuperior","eightsuperior","ninesuperior","zeroinferior","oneinferior","twoinferior","threeinferior","fourinferior","fiveinferior","sixinferior","seveninferior","eightinferior","nineinferior","centinferior","dollarinferior","periodinferior","commainferior","Agravesmall","Aacutesmall","Acircumflexsmall","Atildesmall","Adieresissmall","Aringsmall","AEsmall","Ccedillasmall","Egravesmall","Eacutesmall","Ecircumflexsmall","Edieresissmall","Igravesmall","Iacutesmall","Icircumflexsmall","Idieresissmall","Ethsmall","Ntildesmall","Ogravesmall","Oacutesmall","Ocircumflexsmall","Otildesmall","Odieresissmall","OEsmall","Oslashsmall","Ugravesmall","Uacutesmall","Ucircumflexsmall","Udieresissmall","Yacutesmall","Thornsmall","Ydieresissmall","001.000","001.001","001.002","001.003","Black","Bold","Book","Light","Medium","Regular","Roman","Semibold"],QA=["","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","space","exclam","quotedbl","numbersign","dollar","percent","ampersand","quoteright","parenleft","parenright","asterisk","plus","comma","hyphen","period","slash","zero","one","two","three","four","five","six","seven","eight","nine","colon","semicolon","less","equal","greater","question","at","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","bracketleft","backslash","bracketright","asciicircum","underscore","quoteleft","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","braceleft","bar","braceright","asciitilde","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","exclamdown","cent","sterling","fraction","yen","florin","section","currency","quotesingle","quotedblleft","guillemotleft","guilsinglleft","guilsinglright","fi","fl","","endash","dagger","daggerdbl","periodcentered","","paragraph","bullet","quotesinglbase","quotedblbase","quotedblright","guillemotright","ellipsis","perthousand","","questiondown","","grave","acute","circumflex","tilde","macron","breve","dotaccent","dieresis","","ring","cedilla","","hungarumlaut","ogonek","caron","emdash","","","","","","","","","","","","","","","","","AE","","ordfeminine","","","","","Lslash","Oslash","OE","ordmasculine","","","","","","ae","","","","dotlessi","","","lslash","oslash","oe","germandbls"],CA=["","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","space","exclamsmall","Hungarumlautsmall","","dollaroldstyle","dollarsuperior","ampersandsmall","Acutesmall","parenleftsuperior","parenrightsuperior","twodotenleader","onedotenleader","comma","hyphen","period","fraction","zerooldstyle","oneoldstyle","twooldstyle","threeoldstyle","fouroldstyle","fiveoldstyle","sixoldstyle","sevenoldstyle","eightoldstyle","nineoldstyle","colon","semicolon","commasuperior","threequartersemdash","periodsuperior","questionsmall","","asuperior","bsuperior","centsuperior","dsuperior","esuperior","","","isuperior","","","lsuperior","msuperior","nsuperior","osuperior","","","rsuperior","ssuperior","tsuperior","","ff","fi","fl","ffi","ffl","parenleftinferior","","parenrightinferior","Circumflexsmall","hyphensuperior","Gravesmall","Asmall","Bsmall","Csmall","Dsmall","Esmall","Fsmall","Gsmall","Hsmall","Ismall","Jsmall","Ksmall","Lsmall","Msmall","Nsmall","Osmall","Psmall","Qsmall","Rsmall","Ssmall","Tsmall","Usmall","Vsmall","Wsmall","Xsmall","Ysmall","Zsmall","colonmonetary","onefitted","rupiah","Tildesmall","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","exclamdownsmall","centoldstyle","Lslashsmall","","","Scaronsmall","Zcaronsmall","Dieresissmall","Brevesmall","Caronsmall","","Dotaccentsmall","","","Macronsmall","","","figuredash","hypheninferior","","","Ogoneksmall","Ringsmall","Cedillasmall","","","","onequarter","onehalf","threequarters","questiondownsmall","oneeighth","threeeighths","fiveeighths","seveneighths","onethird","twothirds","","","zerosuperior","onesuperior","twosuperior","threesuperior","foursuperior","fivesuperior","sixsuperior","sevensuperior","eightsuperior","ninesuperior","zeroinferior","oneinferior","twoinferior","threeinferior","fourinferior","fiveinferior","sixinferior","seveninferior","eightinferior","nineinferior","centinferior","dollarinferior","periodinferior","commainferior","Agravesmall","Aacutesmall","Acircumflexsmall","Atildesmall","Adieresissmall","Aringsmall","AEsmall","Ccedillasmall","Egravesmall","Eacutesmall","Ecircumflexsmall","Edieresissmall","Igravesmall","Iacutesmall","Icircumflexsmall","Idieresissmall","Ethsmall","Ntildesmall","Ogravesmall","Oacutesmall","Ocircumflexsmall","Otildesmall","Odieresissmall","OEsmall","Oslashsmall","Ugravesmall","Uacutesmall","Ucircumflexsmall","Udieresissmall","Yacutesmall","Thornsmall","Ydieresissmall"],cA=[".notdef",".null","nonmarkingreturn","space","exclam","quotedbl","numbersign","dollar","percent","ampersand","quotesingle","parenleft","parenright","asterisk","plus","comma","hyphen","period","slash","zero","one","two","three","four","five","six","seven","eight","nine","colon","semicolon","less","equal","greater","question","at","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","bracketleft","backslash","bracketright","asciicircum","underscore","grave","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","braceleft","bar","braceright","asciitilde","Adieresis","Aring","Ccedilla","Eacute","Ntilde","Odieresis","Udieresis","aacute","agrave","acircumflex","adieresis","atilde","aring","ccedilla","eacute","egrave","ecircumflex","edieresis","iacute","igrave","icircumflex","idieresis","ntilde","oacute","ograve","ocircumflex","odieresis","otilde","uacute","ugrave","ucircumflex","udieresis","dagger","degree","cent","sterling","section","bullet","paragraph","germandbls","registered","copyright","trademark","acute","dieresis","notequal","AE","Oslash","infinity","plusminus","lessequal","greaterequal","yen","mu","partialdiff","summation","product","pi","integral","ordfeminine","ordmasculine","Omega","ae","oslash","questiondown","exclamdown","logicalnot","radical","florin","approxequal","Delta","guillemotleft","guillemotright","ellipsis","nonbreakingspace","Agrave","Atilde","Otilde","OE","oe","endash","emdash","quotedblleft","quotedblright","quoteleft","quoteright","divide","lozenge","ydieresis","Ydieresis","fraction","currency","guilsinglleft","guilsinglright","fi","fl","daggerdbl","periodcentered","quotesinglbase","quotedblbase","perthousand","Acircumflex","Ecircumflex","Aacute","Edieresis","Egrave","Iacute","Icircumflex","Idieresis","Igrave","Oacute","Ocircumflex","apple","Ograve","Uacute","Ucircumflex","Ugrave","dotlessi","circumflex","tilde","macron","breve","dotaccent","ring","cedilla","hungarumlaut","ogonek","caron","Lslash","lslash","Scaron","scaron","Zcaron","zcaron","brokenbar","Eth","eth","Yacute","yacute","Thorn","thorn","minus","multiply","onesuperior","twosuperior","threesuperior","onehalf","onequarter","threequarters","franc","Gbreve","gbreve","Idotaccent","Scedilla","scedilla","Cacute","cacute","Ccaron","ccaron","dcroat"];function BA(A){this.font=A}function lA(A){this.cmap=A}function EA(A,e){this.encoding=A,this.charset=e}function uA(A){switch(A.version){case 1:this.names=cA.slice();break;case 2:this.names=new Array(A.numberOfGlyphs);for(var e=0;e<A.numberOfGlyphs;e++)A.glyphNameIndex[e]<cA.length?this.names[e]=cA[A.glyphNameIndex[e]]:this.names[e]=A.names[A.glyphNameIndex[e]-cA.length];break;case 2.5:this.names=new Array(A.numberOfGlyphs);for(var t=0;t<A.numberOfGlyphs;t++)this.names[t]=cA[t+A.glyphNameIndex[t]];break;default:this.names=[]}}function fA(A,e){e.lowMemory?function(A){A._IndexToUnicodeMap={};for(var e=A.tables.cmap.glyphIndexMap,t=Object.keys(e),i=0;i<t.length;i+=1){var n=t[i],r=e[n];void 0===A._IndexToUnicodeMap[r]?A._IndexToUnicodeMap[r]={unicodes:[parseInt(n)]}:A._IndexToUnicodeMap[r].unicodes.push(parseInt(n))}}(A):function(A){for(var e,t=A.tables.cmap.glyphIndexMap,i=Object.keys(t),n=0;n<i.length;n+=1){var r=i[n],s=t[r];(e=A.glyphs.get(s)).addUnicode(parseInt(r))}for(var a=0;a<A.glyphs.length;a+=1)e=A.glyphs.get(a),A.cffEncoding?A.isCIDFont?e.name="gid"+a:e.name=A.cffEncoding.charset[a]:A.glyphNames.names&&(e.name=A.glyphNames.glyphIndexToName(a))}(A)}BA.prototype.charToGlyphIndex=function(A){var e=A.codePointAt(0),t=this.font.glyphs;if(t)for(var i=0;i<t.length;i+=1)for(var n=t.get(i),r=0;r<n.unicodes.length;r+=1)if(n.unicodes[r]===e)return i;return null},lA.prototype.charToGlyphIndex=function(A){return this.cmap.glyphIndexMap[A.codePointAt(0)]||0},EA.prototype.charToGlyphIndex=function(A){var e=A.codePointAt(0),t=this.encoding[e];return this.charset.indexOf(t)},uA.prototype.nameToGlyphIndex=function(A){return this.names.indexOf(A)},uA.prototype.glyphIndexToName=function(A){return this.names[A]};var hA={line:function(A,e,t,i,n){A.beginPath(),A.moveTo(e,t),A.lineTo(i,n),A.stroke()}};function pA(A){this.bindConstructorValues(A)}function yA(A,e,t){Object.defineProperty(A,e,{get:function(){return A.path,A[t]},set:function(e){A[t]=e},enumerable:!0,configurable:!0})}function dA(A,e){if(this.font=A,this.glyphs={},Array.isArray(e))for(var t=0;t<e.length;t++){var i=e[t];i.path.unitsPerEm=A.unitsPerEm,this.glyphs[t]=i}this.length=e&&e.length||0}pA.prototype.bindConstructorValues=function(A){var e,t;this.index=A.index||0,this.name=A.name||null,this.unicode=A.unicode||void 0,this.unicodes=A.unicodes||void 0!==A.unicode?[A.unicode]:[],"xMin"in A&&(this.xMin=A.xMin),"yMin"in A&&(this.yMin=A.yMin),"xMax"in A&&(this.xMax=A.xMax),"yMax"in A&&(this.yMax=A.yMax),"advanceWidth"in A&&(this.advanceWidth=A.advanceWidth),Object.defineProperty(this,"path",(e=A.path,t=e||new v,{configurable:!0,get:function(){return"function"==typeof t&&(t=t()),t},set:function(A){t=A}}))},pA.prototype.addUnicode=function(A){0===this.unicodes.length&&(this.unicode=A),this.unicodes.push(A)},pA.prototype.getBoundingBox=function(){return this.path.getBoundingBox()},pA.prototype.getPath=function(A,e,t,i,n){var r,s;A=void 0!==A?A:0,e=void 0!==e?e:0,t=void 0!==t?t:72,i||(i={});var a=i.xScale,o=i.yScale;if(i.hinting&&n&&n.hinting&&(s=this.path&&n.hinting.exec(this,t)),s)r=n.hinting.getCommands(s),A=Math.round(A),e=Math.round(e),a=o=1;else{r=this.path.commands;var g=1/(this.path.unitsPerEm||1e3)*t;void 0===a&&(a=g),void 0===o&&(o=g)}for(var I=new v,Q=0;Q<r.length;Q+=1){var C=r[Q];"M"===C.type?I.moveTo(A+C.x*a,e+-C.y*o):"L"===C.type?I.lineTo(A+C.x*a,e+-C.y*o):"Q"===C.type?I.quadraticCurveTo(A+C.x1*a,e+-C.y1*o,A+C.x*a,e+-C.y*o):"C"===C.type?I.curveTo(A+C.x1*a,e+-C.y1*o,A+C.x2*a,e+-C.y2*o,A+C.x*a,e+-C.y*o):"Z"===C.type&&I.closePath()}return I},pA.prototype.getContours=function(){if(void 0===this.points)return[];for(var A=[],e=[],t=0;t<this.points.length;t+=1){var i=this.points[t];e.push(i),i.lastPointOfContour&&(A.push(e),e=[])}return G.argument(0===e.length,"There are still points left in the current contour."),A},pA.prototype.getMetrics=function(){for(var A=this.path.commands,e=[],t=[],i=0;i<A.length;i+=1){var n=A[i];"Z"!==n.type&&(e.push(n.x),t.push(n.y)),"Q"!==n.type&&"C"!==n.type||(e.push(n.x1),t.push(n.y1)),"C"===n.type&&(e.push(n.x2),t.push(n.y2))}var r={xMin:Math.min.apply(null,e),yMin:Math.min.apply(null,t),xMax:Math.max.apply(null,e),yMax:Math.max.apply(null,t),leftSideBearing:this.leftSideBearing};return isFinite(r.xMin)||(r.xMin=0),isFinite(r.xMax)||(r.xMax=this.advanceWidth),isFinite(r.yMin)||(r.yMin=0),isFinite(r.yMax)||(r.yMax=0),r.rightSideBearing=this.advanceWidth-r.leftSideBearing-(r.xMax-r.xMin),r},pA.prototype.draw=function(A,e,t,i,n){this.getPath(e,t,i,n).draw(A)},pA.prototype.drawPoints=function(A,e,t,i){function n(e,t,i,n){A.beginPath();for(var r=0;r<e.length;r+=1)A.moveTo(t+e[r].x*n,i+e[r].y*n),A.arc(t+e[r].x*n,i+e[r].y*n,2,0,2*Math.PI,!1);A.closePath(),A.fill()}e=void 0!==e?e:0,t=void 0!==t?t:0,i=void 0!==i?i:24;for(var r=1/this.path.unitsPerEm*i,s=[],a=[],o=this.path,g=0;g<o.commands.length;g+=1){var I=o.commands[g];void 0!==I.x&&s.push({x:I.x,y:-I.y}),void 0!==I.x1&&a.push({x:I.x1,y:-I.y1}),void 0!==I.x2&&a.push({x:I.x2,y:-I.y2})}A.fillStyle="blue",n(s,e,t,r),A.fillStyle="red",n(a,e,t,r)},pA.prototype.drawMetrics=function(A,e,t,i){var n;e=void 0!==e?e:0,t=void 0!==t?t:0,i=void 0!==i?i:24,n=1/this.path.unitsPerEm*i,A.lineWidth=1,A.strokeStyle="black",hA.line(A,e,-1e4,e,1e4),hA.line(A,-1e4,t,1e4,t);var r=this.xMin||0,s=this.yMin||0,a=this.xMax||0,o=this.yMax||0,g=this.advanceWidth||0;A.strokeStyle="blue",hA.line(A,e+r*n,-1e4,e+r*n,1e4),hA.line(A,e+a*n,-1e4,e+a*n,1e4),hA.line(A,-1e4,t+-s*n,1e4,t+-s*n),hA.line(A,-1e4,t+-o*n,1e4,t+-o*n),A.strokeStyle="green",hA.line(A,e+g*n,-1e4,e+g*n,1e4)},dA.prototype.get=function(A){if(void 0===this.glyphs[A]){this.font._push(A),"function"==typeof this.glyphs[A]&&(this.glyphs[A]=this.glyphs[A]());var e=this.glyphs[A],t=this.font._IndexToUnicodeMap[A];if(t)for(var i=0;i<t.unicodes.length;i++)e.addUnicode(t.unicodes[i]);this.font.cffEncoding?this.font.isCIDFont?e.name="gid"+A:e.name=this.font.cffEncoding.charset[A]:this.font.glyphNames.names&&(e.name=this.font.glyphNames.glyphIndexToName(A)),this.glyphs[A].advanceWidth=this.font._hmtxTableData[A].advanceWidth,this.glyphs[A].leftSideBearing=this.font._hmtxTableData[A].leftSideBearing}else"function"==typeof this.glyphs[A]&&(this.glyphs[A]=this.glyphs[A]());return this.glyphs[A]},dA.prototype.push=function(A,e){this.glyphs[A]=e,this.length++};var mA={GlyphSet:dA,glyphLoader:function(A,e){return new pA({index:e,font:A})},ttfGlyphLoader:function(A,e,t,i,n,r){return function(){var s=new pA({index:e,font:A});return s.path=function(){t(s,i,n);var e=r(A.glyphs,s);return e.unitsPerEm=A.unitsPerEm,e},yA(s,"xMin","_xMin"),yA(s,"xMax","_xMax"),yA(s,"yMin","_yMin"),yA(s,"yMax","_yMax"),s}},cffGlyphLoader:function(A,e,t,i){return function(){var n=new pA({index:e,font:A});return n.path=function(){var e=t(A,n,i);return e.unitsPerEm=A.unitsPerEm,e},n}}};function bA(A,e){if(A===e)return!0;if(Array.isArray(A)&&Array.isArray(e)){if(A.length!==e.length)return!1;for(var t=0;t<A.length;t+=1)if(!bA(A[t],e[t]))return!1;return!0}return!1}function DA(A){return A.length<1240?107:A.length<33900?1131:32768}function SA(A,e,t){var i,n,r=[],s=[],a=aA.getCard16(A,e);if(0!==a){var o=aA.getByte(A,e+2);i=e+(a+1)*o+2;for(var g=e+3,I=0;I<a+1;I+=1)r.push(aA.getOffset(A,g,o)),g+=o;n=i+r[a]}else n=e+2;for(var Q=0;Q<r.length-1;Q+=1){var C=aA.getBytes(A,i+r[Q],i+r[Q+1]);t&&(C=t(C)),s.push(C)}return{objects:s,startOffset:e,endOffset:n}}function wA(A,e){if(28===e)return A.parseByte()<<8|A.parseByte();if(29===e)return A.parseByte()<<24|A.parseByte()<<16|A.parseByte()<<8|A.parseByte();if(30===e)return function(A){for(var e="",t=["0","1","2","3","4","5","6","7","8","9",".","E","E-",null,"-"];;){var i=A.parseByte(),n=i>>4,r=15&i;if(15===n)break;if(e+=t[n],15===r)break;e+=t[r]}return parseFloat(e)}(A);if(e>=32&&e<=246)return e-139;if(e>=247&&e<=250)return 256*(e-247)+A.parseByte()+108;if(e>=251&&e<=254)return 256*-(e-251)-A.parseByte()-108;throw new Error("Invalid b0 "+e)}function vA(A,e,t){e=void 0!==e?e:0;var i=new aA.Parser(A,e),n=[],r=[];for(t=void 0!==t?t:A.length;i.relativeOffset<t;){var s=i.parseByte();s<=21?(12===s&&(s=1200+i.parseByte()),n.push([s,r]),r=[]):r.push(wA(i,s))}return function(A){for(var e={},t=0;t<A.length;t+=1){var i=A[t][0],n=A[t][1],r=void 0;if(r=1===n.length?n[0]:n,e.hasOwnProperty(i)&&!isNaN(e[i]))throw new Error("Object "+e+" already has key "+i);e[i]=r}return e}(n)}function kA(A,e){return e=e<=390?IA[e]:A[e-391]}function xA(A,e,t){for(var i,n={},r=0;r<e.length;r+=1){var s=e[r];if(Array.isArray(s.type)){var a=[];a.length=s.type.length;for(var o=0;o<s.type.length;o++)void 0===(i=void 0!==A[s.op]?A[s.op][o]:void 0)&&(i=void 0!==s.value&&void 0!==s.value[o]?s.value[o]:null),"SID"===s.type[o]&&(i=kA(t,i)),a[o]=i;n[s.name]=a}else void 0===(i=A[s.op])&&(i=void 0!==s.value?s.value:null),"SID"===s.type&&(i=kA(t,i)),n[s.name]=i}return n}var GA=[{name:"version",op:0,type:"SID"},{name:"notice",op:1,type:"SID"},{name:"copyright",op:1200,type:"SID"},{name:"fullName",op:2,type:"SID"},{name:"familyName",op:3,type:"SID"},{name:"weight",op:4,type:"SID"},{name:"isFixedPitch",op:1201,type:"number",value:0},{name:"italicAngle",op:1202,type:"number",value:0},{name:"underlinePosition",op:1203,type:"number",value:-100},{name:"underlineThickness",op:1204,type:"number",value:50},{name:"paintType",op:1205,type:"number",value:0},{name:"charstringType",op:1206,type:"number",value:2},{name:"fontMatrix",op:1207,type:["real","real","real","real","real","real"],value:[.001,0,0,.001,0,0]},{name:"uniqueId",op:13,type:"number"},{name:"fontBBox",op:5,type:["number","number","number","number"],value:[0,0,0,0]},{name:"strokeWidth",op:1208,type:"number",value:0},{name:"xuid",op:14,type:[],value:null},{name:"charset",op:15,type:"offset",value:0},{name:"encoding",op:16,type:"offset",value:0},{name:"charStrings",op:17,type:"offset",value:0},{name:"private",op:18,type:["number","offset"],value:[0,0]},{name:"ros",op:1230,type:["SID","SID","number"]},{name:"cidFontVersion",op:1231,type:"number",value:0},{name:"cidFontRevision",op:1232,type:"number",value:0},{name:"cidFontType",op:1233,type:"number",value:0},{name:"cidCount",op:1234,type:"number",value:8720},{name:"uidBase",op:1235,type:"number"},{name:"fdArray",op:1236,type:"offset"},{name:"fdSelect",op:1237,type:"offset"},{name:"fontName",op:1238,type:"SID"}],UA=[{name:"subrs",op:19,type:"offset",value:0},{name:"defaultWidthX",op:20,type:"number",value:0},{name:"nominalWidthX",op:21,type:"number",value:0}];function NA(A,e){return xA(vA(A,0,A.byteLength),GA,e)}function FA(A,e,t,i){return xA(vA(A,e,t),UA,i)}function MA(A,e,t,i){for(var n=[],r=0;r<t.length;r+=1){var s=NA(new DataView(new Uint8Array(t[r]).buffer),i);s._subrs=[],s._subrsBias=0,s._defaultWidthX=0,s._nominalWidthX=0;var a=s.private[0],o=s.private[1];if(0!==a&&0!==o){var g=FA(A,o+e,a,i);if(s._defaultWidthX=g.defaultWidthX,s._nominalWidthX=g.nominalWidthX,0!==g.subrs){var I=SA(A,o+g.subrs+e);s._subrs=I.objects,s._subrsBias=DA(s._subrs)}s._privateDict=g}n.push(s)}return n}function RA(A,e,t){var i,n,r,s,a,o,g,I,Q=new v,C=[],c=0,B=!1,l=!1,E=0,u=0;if(A.isCIDFont){var f=A.tables.cff.topDict._fdSelect[e.index],h=A.tables.cff.topDict._fdArray[f];a=h._subrs,o=h._subrsBias,g=h._defaultWidthX,I=h._nominalWidthX}else a=A.tables.cff.topDict._subrs,o=A.tables.cff.topDict._subrsBias,g=A.tables.cff.topDict._defaultWidthX,I=A.tables.cff.topDict._nominalWidthX;var p=g;function y(A,e){l&&Q.closePath(),Q.moveTo(A,e),l=!0}function d(){C.length%2!=0&&!B&&(p=C.shift()+I),c+=C.length>>1,C.length=0,B=!0}return function t(g){for(var f,h,m,b,D,S,w,v,k,x,G,U,N=0;N<g.length;){var F=g[N];switch(N+=1,F){case 1:case 3:case 18:case 23:d();break;case 4:C.length>1&&!B&&(p=C.shift()+I,B=!0),u+=C.pop(),y(E,u);break;case 5:for(;C.length>0;)E+=C.shift(),u+=C.shift(),Q.lineTo(E,u);break;case 6:for(;C.length>0&&(E+=C.shift(),Q.lineTo(E,u),0!==C.length);)u+=C.shift(),Q.lineTo(E,u);break;case 7:for(;C.length>0&&(u+=C.shift(),Q.lineTo(E,u),0!==C.length);)E+=C.shift(),Q.lineTo(E,u);break;case 8:for(;C.length>0;)i=E+C.shift(),n=u+C.shift(),r=i+C.shift(),s=n+C.shift(),E=r+C.shift(),u=s+C.shift(),Q.curveTo(i,n,r,s,E,u);break;case 10:D=C.pop()+o,(S=a[D])&&t(S);break;case 11:return;case 12:switch(F=g[N],N+=1,F){case 35:i=E+C.shift(),n=u+C.shift(),r=i+C.shift(),s=n+C.shift(),w=r+C.shift(),v=s+C.shift(),k=w+C.shift(),x=v+C.shift(),G=k+C.shift(),U=x+C.shift(),E=G+C.shift(),u=U+C.shift(),C.shift(),Q.curveTo(i,n,r,s,w,v),Q.curveTo(k,x,G,U,E,u);break;case 34:i=E+C.shift(),n=u,r=i+C.shift(),s=n+C.shift(),w=r+C.shift(),v=s,k=w+C.shift(),x=s,G=k+C.shift(),U=u,E=G+C.shift(),Q.curveTo(i,n,r,s,w,v),Q.curveTo(k,x,G,U,E,u);break;case 36:i=E+C.shift(),n=u+C.shift(),r=i+C.shift(),s=n+C.shift(),w=r+C.shift(),v=s,k=w+C.shift(),x=s,G=k+C.shift(),U=x+C.shift(),E=G+C.shift(),Q.curveTo(i,n,r,s,w,v),Q.curveTo(k,x,G,U,E,u);break;case 37:i=E+C.shift(),n=u+C.shift(),r=i+C.shift(),s=n+C.shift(),w=r+C.shift(),v=s+C.shift(),k=w+C.shift(),x=v+C.shift(),G=k+C.shift(),U=x+C.shift(),Math.abs(G-E)>Math.abs(U-u)?E=G+C.shift():u=U+C.shift(),Q.curveTo(i,n,r,s,w,v),Q.curveTo(k,x,G,U,E,u);break;default:console.log("Glyph "+e.index+": unknown operator 1200"+F),C.length=0}break;case 14:C.length>0&&!B&&(p=C.shift()+I,B=!0),l&&(Q.closePath(),l=!1);break;case 19:case 20:d(),N+=c+7>>3;break;case 21:C.length>2&&!B&&(p=C.shift()+I,B=!0),u+=C.pop(),y(E+=C.pop(),u);break;case 22:C.length>1&&!B&&(p=C.shift()+I,B=!0),y(E+=C.pop(),u);break;case 24:for(;C.length>2;)i=E+C.shift(),n=u+C.shift(),r=i+C.shift(),s=n+C.shift(),E=r+C.shift(),u=s+C.shift(),Q.curveTo(i,n,r,s,E,u);E+=C.shift(),u+=C.shift(),Q.lineTo(E,u);break;case 25:for(;C.length>6;)E+=C.shift(),u+=C.shift(),Q.lineTo(E,u);i=E+C.shift(),n=u+C.shift(),r=i+C.shift(),s=n+C.shift(),E=r+C.shift(),u=s+C.shift(),Q.curveTo(i,n,r,s,E,u);break;case 26:for(C.length%2&&(E+=C.shift());C.length>0;)i=E,n=u+C.shift(),r=i+C.shift(),s=n+C.shift(),E=r,u=s+C.shift(),Q.curveTo(i,n,r,s,E,u);break;case 27:for(C.length%2&&(u+=C.shift());C.length>0;)i=E+C.shift(),n=u,r=i+C.shift(),s=n+C.shift(),E=r+C.shift(),u=s,Q.curveTo(i,n,r,s,E,u);break;case 28:f=g[N],h=g[N+1],C.push((f<<24|h<<16)>>16),N+=2;break;case 29:D=C.pop()+A.gsubrsBias,(S=A.gsubrs[D])&&t(S);break;case 30:for(;C.length>0&&(i=E,n=u+C.shift(),r=i+C.shift(),s=n+C.shift(),E=r+C.shift(),u=s+(1===C.length?C.shift():0),Q.curveTo(i,n,r,s,E,u),0!==C.length);)i=E+C.shift(),n=u,r=i+C.shift(),s=n+C.shift(),u=s+C.shift(),E=r+(1===C.length?C.shift():0),Q.curveTo(i,n,r,s,E,u);break;case 31:for(;C.length>0&&(i=E+C.shift(),n=u,r=i+C.shift(),s=n+C.shift(),u=s+C.shift(),E=r+(1===C.length?C.shift():0),Q.curveTo(i,n,r,s,E,u),0!==C.length);)i=E,n=u+C.shift(),r=i+C.shift(),s=n+C.shift(),E=r+C.shift(),u=s+(1===C.length?C.shift():0),Q.curveTo(i,n,r,s,E,u);break;default:F<32?console.log("Glyph "+e.index+": unknown operator "+F):F<247?C.push(F-139):F<251?(f=g[N],N+=1,C.push(256*(F-247)+f+108)):F<255?(f=g[N],N+=1,C.push(256*-(F-251)-f-108)):(f=g[N],h=g[N+1],m=g[N+2],b=g[N+3],N+=4,C.push((f<<24|h<<16|m<<8|b)/65536))}}}(t),e.advanceWidth=p,Q}function LA(A,e){var t,i=IA.indexOf(A);return i>=0&&(t=i),(i=e.indexOf(A))>=0?t=i+IA.length:(t=IA.length+e.length,e.push(A)),t}function zA(A,e,t){for(var i={},n=0;n<A.length;n+=1){var r=A[n],s=e[r.name];void 0===s||bA(s,r.value)||("SID"===r.type&&(s=LA(s,t)),i[r.op]={name:r.name,type:r.type,value:s})}return i}function JA(A,e){var t=new $.Record("Top DICT",[{name:"dict",type:"DICT",value:{}}]);return t.dict=zA(GA,A,e),t}function qA(A){var e=new $.Record("Top DICT INDEX",[{name:"topDicts",type:"INDEX",value:[]}]);return e.topDicts=[{name:"topDict_0",type:"TABLE",value:A}],e}function OA(A){var e=[],t=A.path;e.push({name:"width",type:"NUMBER",value:A.advanceWidth});for(var i=0,n=0,r=0;r<t.commands.length;r+=1){var s=void 0,a=void 0,o=t.commands[r];if("Q"===o.type){var g=1/3,I=2/3;o={type:"C",x:o.x,y:o.y,x1:Math.round(g*i+I*o.x1),y1:Math.round(g*n+I*o.y1),x2:Math.round(g*o.x+I*o.x1),y2:Math.round(g*o.y+I*o.y1)}}if("M"===o.type)s=Math.round(o.x-i),a=Math.round(o.y-n),e.push({name:"dx",type:"NUMBER",value:s}),e.push({name:"dy",type:"NUMBER",value:a}),e.push({name:"rmoveto",type:"OP",value:21}),i=Math.round(o.x),n=Math.round(o.y);else if("L"===o.type)s=Math.round(o.x-i),a=Math.round(o.y-n),e.push({name:"dx",type:"NUMBER",value:s}),e.push({name:"dy",type:"NUMBER",value:a}),e.push({name:"rlineto",type:"OP",value:5}),i=Math.round(o.x),n=Math.round(o.y);else if("C"===o.type){var Q=Math.round(o.x1-i),C=Math.round(o.y1-n),c=Math.round(o.x2-o.x1),B=Math.round(o.y2-o.y1);s=Math.round(o.x-o.x2),a=Math.round(o.y-o.y2),e.push({name:"dx1",type:"NUMBER",value:Q}),e.push({name:"dy1",type:"NUMBER",value:C}),e.push({name:"dx2",type:"NUMBER",value:c}),e.push({name:"dy2",type:"NUMBER",value:B}),e.push({name:"dx",type:"NUMBER",value:s}),e.push({name:"dy",type:"NUMBER",value:a}),e.push({name:"rrcurveto",type:"OP",value:8}),i=Math.round(o.x),n=Math.round(o.y)}}return e.push({name:"endchar",type:"OP",value:14}),e}var KA={parse:function(A,e,t,i){t.tables.cff={};var n=function(A,e){var t={};return t.formatMajor=aA.getCard8(A,e),t.formatMinor=aA.getCard8(A,e+1),t.size=aA.getCard8(A,e+2),t.offsetSize=aA.getCard8(A,e+3),t.startOffset=e,t.endOffset=e+4,t}(A,e),r=SA(A,n.endOffset,aA.bytesToString),s=SA(A,r.endOffset),a=SA(A,s.endOffset,aA.bytesToString),o=SA(A,a.endOffset);t.gsubrs=o.objects,t.gsubrsBias=DA(t.gsubrs);var g=MA(A,e,s.objects,a.objects);if(1!==g.length)throw new Error("CFF table has too many fonts in 'FontSet' - count of fonts NameIndex.length = "+g.length);var I=g[0];if(t.tables.cff.topDict=I,I._privateDict&&(t.defaultWidthX=I._privateDict.defaultWidthX,t.nominalWidthX=I._privateDict.nominalWidthX),void 0!==I.ros[0]&&void 0!==I.ros[1]&&(t.isCIDFont=!0),t.isCIDFont){var Q=I.fdArray,C=I.fdSelect;if(0===Q||0===C)throw new Error("Font is marked as a CID font, but FDArray and/or FDSelect information is missing");var c=SA(A,Q+=e),B=MA(A,e,c.objects,a.objects);I._fdArray=B,C+=e,I._fdSelect=function(A,e,t,i){var n,r=[],s=new aA.Parser(A,e),a=s.parseCard8();if(0===a)for(var o=0;o<t;o++){if((n=s.parseCard8())>=i)throw new Error("CFF table CID Font FDSelect has bad FD index value "+n+" (FD count "+i+")");r.push(n)}else{if(3!==a)throw new Error("CFF Table CID Font FDSelect table has unsupported format "+a);var g,I=s.parseCard16(),Q=s.parseCard16();if(0!==Q)throw new Error("CFF Table CID Font FDSelect format 3 range has bad initial GID "+Q);for(var C=0;C<I;C++){if(n=s.parseCard8(),g=s.parseCard16(),n>=i)throw new Error("CFF table CID Font FDSelect has bad FD index value "+n+" (FD count "+i+")");if(g>t)throw new Error("CFF Table CID Font FDSelect format 3 range has bad GID "+g);for(;Q<g;Q++)r.push(n);Q=g}if(g!==t)throw new Error("CFF Table CID Font FDSelect format 3 range has bad final GID "+g)}return r}(A,C,t.numGlyphs,B.length)}var l,E=e+I.private[1],u=FA(A,E,I.private[0],a.objects);if(t.defaultWidthX=u.defaultWidthX,t.nominalWidthX=u.nominalWidthX,0!==u.subrs){var f=E+u.subrs,h=SA(A,f);t.subrs=h.objects,t.subrsBias=DA(t.subrs)}else t.subrs=[],t.subrsBias=0;i.lowMemory?(l=function(A,e){var t,i,n=[],r=aA.getCard16(A,e);if(0!==r){var s=aA.getByte(A,e+2);t=e+(r+1)*s+2;for(var a=e+3,o=0;o<r+1;o+=1)n.push(aA.getOffset(A,a,s)),a+=s;i=t+n[r]}else i=e+2;return{offsets:n,startOffset:e,endOffset:i}}(A,e+I.charStrings),t.nGlyphs=l.offsets.length):(l=SA(A,e+I.charStrings),t.nGlyphs=l.objects.length);var p=function(A,e,t,i){var n,r,s=new aA.Parser(A,e);t-=1;var a=[".notdef"],o=s.parseCard8();if(0===o)for(var g=0;g<t;g+=1)n=s.parseSID(),a.push(kA(i,n));else if(1===o)for(;a.length<=t;){n=s.parseSID(),r=s.parseCard8();for(var I=0;I<=r;I+=1)a.push(kA(i,n)),n+=1}else{if(2!==o)throw new Error("Unknown charset format "+o);for(;a.length<=t;){n=s.parseSID(),r=s.parseCard16();for(var Q=0;Q<=r;Q+=1)a.push(kA(i,n)),n+=1}}return a}(A,e+I.charset,t.nGlyphs,a.objects);if(0===I.encoding?t.cffEncoding=new EA(QA,p):1===I.encoding?t.cffEncoding=new EA(CA,p):t.cffEncoding=function(A,e,t){var i,n={},r=new aA.Parser(A,e),s=r.parseCard8();if(0===s)for(var a=r.parseCard8(),o=0;o<a;o+=1)n[i=r.parseCard8()]=o;else{if(1!==s)throw new Error("Unknown encoding format "+s);var g=r.parseCard8();i=1;for(var I=0;I<g;I+=1)for(var Q=r.parseCard8(),C=r.parseCard8(),c=Q;c<=Q+C;c+=1)n[c]=i,i+=1}return new EA(n,t)}(A,e+I.encoding,p),t.encoding=t.encoding||t.cffEncoding,t.glyphs=new mA.GlyphSet(t),i.lowMemory)t._push=function(i){var n=function(A,e,t,i,n){var r=aA.getCard16(t,i),s=0;0!==r&&(s=i+(r+1)*aA.getByte(t,i+2)+2);var a=aA.getBytes(t,s+e[A],s+e[A+1]);return n&&(a=n(a)),a}(i,l.offsets,A,e+I.charStrings);t.glyphs.push(i,mA.cffGlyphLoader(t,i,RA,n))};else for(var y=0;y<t.nGlyphs;y+=1){var d=l.objects[y];t.glyphs.push(y,mA.cffGlyphLoader(t,y,RA,d))}},make:function(A,e){for(var t,i=new $.Table("CFF ",[{name:"header",type:"RECORD"},{name:"nameIndex",type:"RECORD"},{name:"topDictIndex",type:"RECORD"},{name:"stringIndex",type:"RECORD"},{name:"globalSubrIndex",type:"RECORD"},{name:"charsets",type:"RECORD"},{name:"charStringsIndex",type:"RECORD"},{name:"privateDict",type:"RECORD"}]),n=1/e.unitsPerEm,r={version:e.version,fullName:e.fullName,familyName:e.familyName,weight:e.weightName,fontBBox:e.fontBBox||[0,0,0,0],fontMatrix:[n,0,0,n,0,0],charset:999,encoding:0,charStrings:999,private:[0,999]},s=[],a=1;a<A.length;a+=1)t=A.get(a),s.push(t.name);var o=[];i.header=new $.Record("Header",[{name:"major",type:"Card8",value:1},{name:"minor",type:"Card8",value:0},{name:"hdrSize",type:"Card8",value:4},{name:"major",type:"Card8",value:1}]),i.nameIndex=function(A){var e=new $.Record("Name INDEX",[{name:"names",type:"INDEX",value:[]}]);e.names=[];for(var t=0;t<A.length;t+=1)e.names.push({name:"name_"+t,type:"NAME",value:A[t]});return e}([e.postScriptName]);var g=JA(r,o);i.topDictIndex=qA(g),i.globalSubrIndex=new $.Record("Global Subr INDEX",[{name:"subrs",type:"INDEX",value:[]}]),i.charsets=function(A,e){for(var t=new $.Record("Charsets",[{name:"format",type:"Card8",value:0}]),i=0;i<A.length;i+=1){var n=LA(A[i],e);t.fields.push({name:"glyph_"+i,type:"SID",value:n})}return t}(s,o),i.charStringsIndex=function(A){for(var e=new $.Record("CharStrings INDEX",[{name:"charStrings",type:"INDEX",value:[]}]),t=0;t<A.length;t+=1){var i=A.get(t),n=OA(i);e.charStrings.push({name:i.name,type:"CHARSTRING",value:n})}return e}(A),i.privateDict=function(A,e){var t=new $.Record("Private DICT",[{name:"dict",type:"DICT",value:{}}]);return t.dict=zA(UA,A,e),t}({},o),i.stringIndex=function(A){var e=new $.Record("String INDEX",[{name:"strings",type:"INDEX",value:[]}]);e.strings=[];for(var t=0;t<A.length;t+=1)e.strings.push({name:"string_"+t,type:"STRING",value:A[t]});return e}(o);var I=i.header.sizeOf()+i.nameIndex.sizeOf()+i.topDictIndex.sizeOf()+i.stringIndex.sizeOf()+i.globalSubrIndex.sizeOf();return r.charset=I,r.encoding=0,r.charStrings=r.charset+i.charsets.sizeOf(),r.private[1]=r.charStrings+i.charStringsIndex.sizeOf(),g=JA(r,o),i.topDictIndex=qA(g),i}};var TA={parse:function(A,e){var t={},i=new aA.Parser(A,e);return t.version=i.parseVersion(),t.fontRevision=Math.round(1e3*i.parseFixed())/1e3,t.checkSumAdjustment=i.parseULong(),t.magicNumber=i.parseULong(),G.argument(1594834165===t.magicNumber,"Font header has wrong magic number."),t.flags=i.parseUShort(),t.unitsPerEm=i.parseUShort(),t.created=i.parseLongDateTime(),t.modified=i.parseLongDateTime(),t.xMin=i.parseShort(),t.yMin=i.parseShort(),t.xMax=i.parseShort(),t.yMax=i.parseShort(),t.macStyle=i.parseUShort(),t.lowestRecPPEM=i.parseUShort(),t.fontDirectionHint=i.parseShort(),t.indexToLocFormat=i.parseShort(),t.glyphDataFormat=i.parseShort(),t},make:function(A){var e=Math.round((new Date).getTime()/1e3)+2082844800,t=e;return A.createdTimestamp&&(t=A.createdTimestamp+2082844800),new $.Table("head",[{name:"version",type:"FIXED",value:65536},{name:"fontRevision",type:"FIXED",value:65536},{name:"checkSumAdjustment",type:"ULONG",value:0},{name:"magicNumber",type:"ULONG",value:1594834165},{name:"flags",type:"USHORT",value:0},{name:"unitsPerEm",type:"USHORT",value:1e3},{name:"created",type:"LONGDATETIME",value:t},{name:"modified",type:"LONGDATETIME",value:e},{name:"xMin",type:"SHORT",value:0},{name:"yMin",type:"SHORT",value:0},{name:"xMax",type:"SHORT",value:0},{name:"yMax",type:"SHORT",value:0},{name:"macStyle",type:"USHORT",value:0},{name:"lowestRecPPEM",type:"USHORT",value:0},{name:"fontDirectionHint",type:"SHORT",value:2},{name:"indexToLocFormat",type:"SHORT",value:0},{name:"glyphDataFormat",type:"SHORT",value:0}],A)}};var HA={parse:function(A,e){var t={},i=new aA.Parser(A,e);return t.version=i.parseVersion(),t.ascender=i.parseShort(),t.descender=i.parseShort(),t.lineGap=i.parseShort(),t.advanceWidthMax=i.parseUShort(),t.minLeftSideBearing=i.parseShort(),t.minRightSideBearing=i.parseShort(),t.xMaxExtent=i.parseShort(),t.caretSlopeRise=i.parseShort(),t.caretSlopeRun=i.parseShort(),t.caretOffset=i.parseShort(),i.relativeOffset+=8,t.metricDataFormat=i.parseShort(),t.numberOfHMetrics=i.parseUShort(),t},make:function(A){return new $.Table("hhea",[{name:"version",type:"FIXED",value:65536},{name:"ascender",type:"FWORD",value:0},{name:"descender",type:"FWORD",value:0},{name:"lineGap",type:"FWORD",value:0},{name:"advanceWidthMax",type:"UFWORD",value:0},{name:"minLeftSideBearing",type:"FWORD",value:0},{name:"minRightSideBearing",type:"FWORD",value:0},{name:"xMaxExtent",type:"FWORD",value:0},{name:"caretSlopeRise",type:"SHORT",value:1},{name:"caretSlopeRun",type:"SHORT",value:0},{name:"caretOffset",type:"SHORT",value:0},{name:"reserved1",type:"SHORT",value:0},{name:"reserved2",type:"SHORT",value:0},{name:"reserved3",type:"SHORT",value:0},{name:"reserved4",type:"SHORT",value:0},{name:"metricDataFormat",type:"SHORT",value:0},{name:"numberOfHMetrics",type:"USHORT",value:0}],A)}};var YA={parse:function(A,e,t,i,n,r,s){s.lowMemory?function(A,e,t,i,n){var r,s;A._hmtxTableData={};for(var a=new aA.Parser(e,t),o=0;o<n;o+=1)o<i&&(r=a.parseUShort(),s=a.parseShort()),A._hmtxTableData[o]={advanceWidth:r,leftSideBearing:s}}(A,e,t,i,n):function(A,e,t,i,n){for(var r,s,a=new aA.Parser(A,e),o=0;o<i;o+=1){o<t&&(r=a.parseUShort(),s=a.parseShort());var g=n.get(o);g.advanceWidth=r,g.leftSideBearing=s}}(e,t,i,n,r)},make:function(A){for(var e=new $.Table("hmtx",[]),t=0;t<A.length;t+=1){var i=A.get(t),n=i.advanceWidth||0,r=i.leftSideBearing||0;e.fields.push({name:"advanceWidth_"+t,type:"USHORT",value:n}),e.fields.push({name:"leftSideBearing_"+t,type:"SHORT",value:r})}return e}};var PA={make:function(A){for(var e=new $.Table("ltag",[{name:"version",type:"ULONG",value:1},{name:"flags",type:"ULONG",value:0},{name:"numTags",type:"ULONG",value:A.length}]),t="",i=12+4*A.length,n=0;n<A.length;++n){var r=t.indexOf(A[n]);r<0&&(r=t.length,t+=A[n]),e.fields.push({name:"offset "+n,type:"USHORT",value:i+r}),e.fields.push({name:"length "+n,type:"USHORT",value:A[n].length})}return e.fields.push({name:"stringPool",type:"CHARARRAY",value:t}),e},parse:function(A,e){var t=new aA.Parser(A,e),i=t.parseULong();G.argument(1===i,"Unsupported ltag table version."),t.skip("uLong",1);for(var n=t.parseULong(),r=[],s=0;s<n;s++){for(var a="",o=e+t.parseUShort(),g=t.parseUShort(),I=o;I<o+g;++I)a+=String.fromCharCode(A.getInt8(I));r.push(a)}return r}};var _A={parse:function(A,e){var t={},i=new aA.Parser(A,e);return t.version=i.parseVersion(),t.numGlyphs=i.parseUShort(),1===t.version&&(t.maxPoints=i.parseUShort(),t.maxContours=i.parseUShort(),t.maxCompositePoints=i.parseUShort(),t.maxCompositeContours=i.parseUShort(),t.maxZones=i.parseUShort(),t.maxTwilightPoints=i.parseUShort(),t.maxStorage=i.parseUShort(),t.maxFunctionDefs=i.parseUShort(),t.maxInstructionDefs=i.parseUShort(),t.maxStackElements=i.parseUShort(),t.maxSizeOfInstructions=i.parseUShort(),t.maxComponentElements=i.parseUShort(),t.maxComponentDepth=i.parseUShort()),t},make:function(A){return new $.Table("maxp",[{name:"version",type:"FIXED",value:20480},{name:"numGlyphs",type:"USHORT",value:A}])}},VA=["copyright","fontFamily","fontSubfamily","uniqueID","fullName","version","postScriptName","trademark","manufacturer","designer","description","manufacturerURL","designerURL","license","licenseURL","reserved","preferredFamily","preferredSubfamily","compatibleFullName","sampleText","postScriptFindFontName","wwsFamily","wwsSubfamily"],XA={0:"en",1:"fr",2:"de",3:"it",4:"nl",5:"sv",6:"es",7:"da",8:"pt",9:"no",10:"he",11:"ja",12:"ar",13:"fi",14:"el",15:"is",16:"mt",17:"tr",18:"hr",19:"zh-Hant",20:"ur",21:"hi",22:"th",23:"ko",24:"lt",25:"pl",26:"hu",27:"es",28:"lv",29:"se",30:"fo",31:"fa",32:"ru",33:"zh",34:"nl-BE",35:"ga",36:"sq",37:"ro",38:"cz",39:"sk",40:"si",41:"yi",42:"sr",43:"mk",44:"bg",45:"uk",46:"be",47:"uz",48:"kk",49:"az-Cyrl",50:"az-Arab",51:"hy",52:"ka",53:"mo",54:"ky",55:"tg",56:"tk",57:"mn-CN",58:"mn",59:"ps",60:"ks",61:"ku",62:"sd",63:"bo",64:"ne",65:"sa",66:"mr",67:"bn",68:"as",69:"gu",70:"pa",71:"or",72:"ml",73:"kn",74:"ta",75:"te",76:"si",77:"my",78:"km",79:"lo",80:"vi",81:"id",82:"tl",83:"ms",84:"ms-Arab",85:"am",86:"ti",87:"om",88:"so",89:"sw",90:"rw",91:"rn",92:"ny",93:"mg",94:"eo",128:"cy",129:"eu",130:"ca",131:"la",132:"qu",133:"gn",134:"ay",135:"tt",136:"ug",137:"dz",138:"jv",139:"su",140:"gl",141:"af",142:"br",143:"iu",144:"gd",145:"gv",146:"ga",147:"to",148:"el-polyton",149:"kl",150:"az",151:"nn"},WA={0:0,1:0,2:0,3:0,4:0,5:0,6:0,7:0,8:0,9:0,10:5,11:1,12:4,13:0,14:6,15:0,16:0,17:0,18:0,19:2,20:4,21:9,22:21,23:3,24:29,25:29,26:29,27:29,28:29,29:0,30:0,31:4,32:7,33:25,34:0,35:0,36:0,37:0,38:29,39:29,40:0,41:5,42:7,43:7,44:7,45:7,46:7,47:7,48:7,49:7,50:4,51:24,52:23,53:7,54:7,55:7,56:7,57:27,58:7,59:4,60:4,61:4,62:4,63:26,64:9,65:9,66:9,67:13,68:13,69:11,70:10,71:12,72:17,73:16,74:14,75:15,76:18,77:19,78:20,79:22,80:30,81:0,82:0,83:0,84:4,85:28,86:28,87:28,88:0,89:0,90:0,91:0,92:0,93:0,94:0,128:0,129:0,130:0,131:0,132:0,133:0,134:0,135:7,136:4,137:26,138:0,139:0,140:0,141:0,142:0,143:28,144:0,145:0,146:0,147:0,148:6,149:0,150:0,151:0},jA={1078:"af",1052:"sq",1156:"gsw",1118:"am",5121:"ar-DZ",15361:"ar-BH",3073:"ar",2049:"ar-IQ",11265:"ar-JO",13313:"ar-KW",12289:"ar-LB",4097:"ar-LY",6145:"ary",8193:"ar-OM",16385:"ar-QA",1025:"ar-SA",10241:"ar-SY",7169:"aeb",14337:"ar-AE",9217:"ar-YE",1067:"hy",1101:"as",2092:"az-Cyrl",1068:"az",1133:"ba",1069:"eu",1059:"be",2117:"bn",1093:"bn-IN",8218:"bs-Cyrl",5146:"bs",1150:"br",1026:"bg",1027:"ca",3076:"zh-HK",5124:"zh-MO",2052:"zh",4100:"zh-SG",1028:"zh-TW",1155:"co",1050:"hr",4122:"hr-BA",1029:"cs",1030:"da",1164:"prs",1125:"dv",2067:"nl-BE",1043:"nl",3081:"en-AU",10249:"en-BZ",4105:"en-CA",9225:"en-029",16393:"en-IN",6153:"en-IE",8201:"en-JM",17417:"en-MY",5129:"en-NZ",13321:"en-PH",18441:"en-SG",7177:"en-ZA",11273:"en-TT",2057:"en-GB",1033:"en",12297:"en-ZW",1061:"et",1080:"fo",1124:"fil",1035:"fi",2060:"fr-BE",3084:"fr-CA",1036:"fr",5132:"fr-LU",6156:"fr-MC",4108:"fr-CH",1122:"fy",1110:"gl",1079:"ka",3079:"de-AT",1031:"de",5127:"de-LI",4103:"de-LU",2055:"de-CH",1032:"el",1135:"kl",1095:"gu",1128:"ha",1037:"he",1081:"hi",1038:"hu",1039:"is",1136:"ig",1057:"id",1117:"iu",2141:"iu-Latn",2108:"ga",1076:"xh",1077:"zu",1040:"it",2064:"it-CH",1041:"ja",1099:"kn",1087:"kk",1107:"km",1158:"quc",1159:"rw",1089:"sw",1111:"kok",1042:"ko",1088:"ky",1108:"lo",1062:"lv",1063:"lt",2094:"dsb",1134:"lb",1071:"mk",2110:"ms-BN",1086:"ms",1100:"ml",1082:"mt",1153:"mi",1146:"arn",1102:"mr",1148:"moh",1104:"mn",2128:"mn-CN",1121:"ne",1044:"nb",2068:"nn",1154:"oc",1096:"or",1123:"ps",1045:"pl",1046:"pt",2070:"pt-PT",1094:"pa",1131:"qu-BO",2155:"qu-EC",3179:"qu",1048:"ro",1047:"rm",1049:"ru",9275:"smn",4155:"smj-NO",5179:"smj",3131:"se-FI",1083:"se",2107:"se-SE",8251:"sms",6203:"sma-NO",7227:"sms",1103:"sa",7194:"sr-Cyrl-BA",3098:"sr",6170:"sr-Latn-BA",2074:"sr-Latn",1132:"nso",1074:"tn",1115:"si",1051:"sk",1060:"sl",11274:"es-AR",16394:"es-BO",13322:"es-CL",9226:"es-CO",5130:"es-CR",7178:"es-DO",12298:"es-EC",17418:"es-SV",4106:"es-GT",18442:"es-HN",2058:"es-MX",19466:"es-NI",6154:"es-PA",15370:"es-PY",10250:"es-PE",20490:"es-PR",3082:"es",1034:"es",21514:"es-US",14346:"es-UY",8202:"es-VE",2077:"sv-FI",1053:"sv",1114:"syr",1064:"tg",2143:"tzm",1097:"ta",1092:"tt",1098:"te",1054:"th",1105:"bo",1055:"tr",1090:"tk",1152:"ug",1058:"uk",1070:"hsb",1056:"ur",2115:"uz-Cyrl",1091:"uz",1066:"vi",1106:"cy",1160:"wo",1157:"sah",1144:"ii",1130:"yo"};function ZA(A,e,t){switch(A){case 0:if(65535===e)return"und";if(t)return t[e];break;case 1:return XA[e];case 3:return jA[e]}}var $A="utf-16",Ae={0:"macintosh",1:"x-mac-japanese",2:"x-mac-chinesetrad",3:"x-mac-korean",6:"x-mac-greek",7:"x-mac-cyrillic",9:"x-mac-devanagai",10:"x-mac-gurmukhi",11:"x-mac-gujarati",12:"x-mac-oriya",13:"x-mac-bengali",14:"x-mac-tamil",15:"x-mac-telugu",16:"x-mac-kannada",17:"x-mac-malayalam",18:"x-mac-sinhalese",19:"x-mac-burmese",20:"x-mac-khmer",21:"x-mac-thai",22:"x-mac-lao",23:"x-mac-georgian",24:"x-mac-armenian",25:"x-mac-chinesesimp",26:"x-mac-tibetan",27:"x-mac-mongolian",28:"x-mac-ethiopic",29:"x-mac-ce",30:"x-mac-vietnamese",31:"x-mac-extarabic"},ee={15:"x-mac-icelandic",17:"x-mac-turkish",18:"x-mac-croatian",24:"x-mac-ce",25:"x-mac-ce",26:"x-mac-ce",27:"x-mac-ce",28:"x-mac-ce",30:"x-mac-icelandic",37:"x-mac-romanian",38:"x-mac-ce",39:"x-mac-ce",40:"x-mac-ce",143:"x-mac-inuit",146:"x-mac-gaelic"};function te(A,e,t){switch(A){case 0:return $A;case 1:return ee[t]||Ae[e];case 3:if(1===e||10===e)return $A}}function ie(A){var e={};for(var t in A)e[A[t]]=parseInt(t);return e}function ne(A,e,t,i,n,r){return new $.Record("NameRecord",[{name:"platformID",type:"USHORT",value:A},{name:"encodingID",type:"USHORT",value:e},{name:"languageID",type:"USHORT",value:t},{name:"nameID",type:"USHORT",value:i},{name:"length",type:"USHORT",value:n},{name:"offset",type:"USHORT",value:r}])}function re(A,e){var t=function(A,e){var t=A.length,i=e.length-t+1;A:for(var n=0;n<i;n++)for(;n<i;n++){for(var r=0;r<t;r++)if(e[n+r]!==A[r])continue A;return n}return-1}(A,e);if(t<0){t=e.length;for(var i=0,n=A.length;i<n;++i)e.push(A[i])}return t}var se={parse:function(A,e,t){for(var i={},n=new aA.Parser(A,e),r=n.parseUShort(),s=n.parseUShort(),a=n.offset+n.parseUShort(),o=0;o<s;o++){var g=n.parseUShort(),I=n.parseUShort(),Q=n.parseUShort(),C=n.parseUShort(),c=VA[C]||C,B=n.parseUShort(),l=n.parseUShort(),E=ZA(g,Q,t),u=te(g,I,Q);if(void 0!==u&&void 0!==E){var f=void 0;if(f=u===$A?N.UTF16(A,a+l,B):N.MACSTRING(A,a+l,B,u)){var h=i[c];void 0===h&&(h=i[c]={}),h[E]=f}}}return 1===r&&n.parseUShort(),i},make:function(A,e){var t,i=[],n={},r=ie(VA);for(var s in A){var a=r[s];if(void 0===a&&(a=s),t=parseInt(a),isNaN(t))throw new Error('Name table entry "'+s+'" does not exist, see nameTableNames for complete list.');n[t]=A[s],i.push(t)}for(var o=ie(XA),g=ie(jA),I=[],Q=[],C=0;C<i.length;C++){var c=n[t=i[C]];for(var B in c){var l=c[B],E=1,u=o[B],f=WA[u],h=te(E,f,u),p=F.MACSTRING(l,h);void 0===p&&(E=0,(u=e.indexOf(B))<0&&(u=e.length,e.push(B)),f=4,p=F.UTF16(l));var y=re(p,Q);I.push(ne(E,f,u,t,p.length,y));var d=g[B];if(void 0!==d){var m=F.UTF16(l),b=re(m,Q);I.push(ne(3,1,d,t,m.length,b))}}}I.sort((function(A,e){return A.platformID-e.platformID||A.encodingID-e.encodingID||A.languageID-e.languageID||A.nameID-e.nameID}));for(var D=new $.Table("name",[{name:"format",type:"USHORT",value:0},{name:"count",type:"USHORT",value:I.length},{name:"stringOffset",type:"USHORT",value:6+12*I.length}]),S=0;S<I.length;S++)D.fields.push({name:"record_"+S,type:"RECORD",value:I[S]});return D.fields.push({name:"strings",type:"LITERAL",value:Q}),D}},ae=[{begin:0,end:127},{begin:128,end:255},{begin:256,end:383},{begin:384,end:591},{begin:592,end:687},{begin:688,end:767},{begin:768,end:879},{begin:880,end:1023},{begin:11392,end:11519},{begin:1024,end:1279},{begin:1328,end:1423},{begin:1424,end:1535},{begin:42240,end:42559},{begin:1536,end:1791},{begin:1984,end:2047},{begin:2304,end:2431},{begin:2432,end:2559},{begin:2560,end:2687},{begin:2688,end:2815},{begin:2816,end:2943},{begin:2944,end:3071},{begin:3072,end:3199},{begin:3200,end:3327},{begin:3328,end:3455},{begin:3584,end:3711},{begin:3712,end:3839},{begin:4256,end:4351},{begin:6912,end:7039},{begin:4352,end:4607},{begin:7680,end:7935},{begin:7936,end:8191},{begin:8192,end:8303},{begin:8304,end:8351},{begin:8352,end:8399},{begin:8400,end:8447},{begin:8448,end:8527},{begin:8528,end:8591},{begin:8592,end:8703},{begin:8704,end:8959},{begin:8960,end:9215},{begin:9216,end:9279},{begin:9280,end:9311},{begin:9312,end:9471},{begin:9472,end:9599},{begin:9600,end:9631},{begin:9632,end:9727},{begin:9728,end:9983},{begin:9984,end:10175},{begin:12288,end:12351},{begin:12352,end:12447},{begin:12448,end:12543},{begin:12544,end:12591},{begin:12592,end:12687},{begin:43072,end:43135},{begin:12800,end:13055},{begin:13056,end:13311},{begin:44032,end:55215},{begin:55296,end:57343},{begin:67840,end:67871},{begin:19968,end:40959},{begin:57344,end:63743},{begin:12736,end:12783},{begin:64256,end:64335},{begin:64336,end:65023},{begin:65056,end:65071},{begin:65040,end:65055},{begin:65104,end:65135},{begin:65136,end:65279},{begin:65280,end:65519},{begin:65520,end:65535},{begin:3840,end:4095},{begin:1792,end:1871},{begin:1920,end:1983},{begin:3456,end:3583},{begin:4096,end:4255},{begin:4608,end:4991},{begin:5024,end:5119},{begin:5120,end:5759},{begin:5760,end:5791},{begin:5792,end:5887},{begin:6016,end:6143},{begin:6144,end:6319},{begin:10240,end:10495},{begin:40960,end:42127},{begin:5888,end:5919},{begin:66304,end:66351},{begin:66352,end:66383},{begin:66560,end:66639},{begin:118784,end:119039},{begin:119808,end:120831},{begin:1044480,end:1048573},{begin:65024,end:65039},{begin:917504,end:917631},{begin:6400,end:6479},{begin:6480,end:6527},{begin:6528,end:6623},{begin:6656,end:6687},{begin:11264,end:11359},{begin:11568,end:11647},{begin:19904,end:19967},{begin:43008,end:43055},{begin:65536,end:65663},{begin:65856,end:65935},{begin:66432,end:66463},{begin:66464,end:66527},{begin:66640,end:66687},{begin:66688,end:66735},{begin:67584,end:67647},{begin:68096,end:68191},{begin:119552,end:119647},{begin:73728,end:74751},{begin:119648,end:119679},{begin:7040,end:7103},{begin:7168,end:7247},{begin:7248,end:7295},{begin:43136,end:43231},{begin:43264,end:43311},{begin:43312,end:43359},{begin:43520,end:43615},{begin:65936,end:65999},{begin:66e3,end:66047},{begin:66208,end:66271},{begin:127024,end:127135}];var oe={parse:function(A,e){var t={},i=new aA.Parser(A,e);t.version=i.parseUShort(),t.xAvgCharWidth=i.parseShort(),t.usWeightClass=i.parseUShort(),t.usWidthClass=i.parseUShort(),t.fsType=i.parseUShort(),t.ySubscriptXSize=i.parseShort(),t.ySubscriptYSize=i.parseShort(),t.ySubscriptXOffset=i.parseShort(),t.ySubscriptYOffset=i.parseShort(),t.ySuperscriptXSize=i.parseShort(),t.ySuperscriptYSize=i.parseShort(),t.ySuperscriptXOffset=i.parseShort(),t.ySuperscriptYOffset=i.parseShort(),t.yStrikeoutSize=i.parseShort(),t.yStrikeoutPosition=i.parseShort(),t.sFamilyClass=i.parseShort(),t.panose=[];for(var n=0;n<10;n++)t.panose[n]=i.parseByte();return t.ulUnicodeRange1=i.parseULong(),t.ulUnicodeRange2=i.parseULong(),t.ulUnicodeRange3=i.parseULong(),t.ulUnicodeRange4=i.parseULong(),t.achVendID=String.fromCharCode(i.parseByte(),i.parseByte(),i.parseByte(),i.parseByte()),t.fsSelection=i.parseUShort(),t.usFirstCharIndex=i.parseUShort(),t.usLastCharIndex=i.parseUShort(),t.sTypoAscender=i.parseShort(),t.sTypoDescender=i.parseShort(),t.sTypoLineGap=i.parseShort(),t.usWinAscent=i.parseUShort(),t.usWinDescent=i.parseUShort(),t.version>=1&&(t.ulCodePageRange1=i.parseULong(),t.ulCodePageRange2=i.parseULong()),t.version>=2&&(t.sxHeight=i.parseShort(),t.sCapHeight=i.parseShort(),t.usDefaultChar=i.parseUShort(),t.usBreakChar=i.parseUShort(),t.usMaxContent=i.parseUShort()),t},make:function(A){return new $.Table("OS/2",[{name:"version",type:"USHORT",value:3},{name:"xAvgCharWidth",type:"SHORT",value:0},{name:"usWeightClass",type:"USHORT",value:0},{name:"usWidthClass",type:"USHORT",value:0},{name:"fsType",type:"USHORT",value:0},{name:"ySubscriptXSize",type:"SHORT",value:650},{name:"ySubscriptYSize",type:"SHORT",value:699},{name:"ySubscriptXOffset",type:"SHORT",value:0},{name:"ySubscriptYOffset",type:"SHORT",value:140},{name:"ySuperscriptXSize",type:"SHORT",value:650},{name:"ySuperscriptYSize",type:"SHORT",value:699},{name:"ySuperscriptXOffset",type:"SHORT",value:0},{name:"ySuperscriptYOffset",type:"SHORT",value:479},{name:"yStrikeoutSize",type:"SHORT",value:49},{name:"yStrikeoutPosition",type:"SHORT",value:258},{name:"sFamilyClass",type:"SHORT",value:0},{name:"bFamilyType",type:"BYTE",value:0},{name:"bSerifStyle",type:"BYTE",value:0},{name:"bWeight",type:"BYTE",value:0},{name:"bProportion",type:"BYTE",value:0},{name:"bContrast",type:"BYTE",value:0},{name:"bStrokeVariation",type:"BYTE",value:0},{name:"bArmStyle",type:"BYTE",value:0},{name:"bLetterform",type:"BYTE",value:0},{name:"bMidline",type:"BYTE",value:0},{name:"bXHeight",type:"BYTE",value:0},{name:"ulUnicodeRange1",type:"ULONG",value:0},{name:"ulUnicodeRange2",type:"ULONG",value:0},{name:"ulUnicodeRange3",type:"ULONG",value:0},{name:"ulUnicodeRange4",type:"ULONG",value:0},{name:"achVendID",type:"CHARARRAY",value:"XXXX"},{name:"fsSelection",type:"USHORT",value:0},{name:"usFirstCharIndex",type:"USHORT",value:0},{name:"usLastCharIndex",type:"USHORT",value:0},{name:"sTypoAscender",type:"SHORT",value:0},{name:"sTypoDescender",type:"SHORT",value:0},{name:"sTypoLineGap",type:"SHORT",value:0},{name:"usWinAscent",type:"USHORT",value:0},{name:"usWinDescent",type:"USHORT",value:0},{name:"ulCodePageRange1",type:"ULONG",value:0},{name:"ulCodePageRange2",type:"ULONG",value:0},{name:"sxHeight",type:"SHORT",value:0},{name:"sCapHeight",type:"SHORT",value:0},{name:"usDefaultChar",type:"USHORT",value:0},{name:"usBreakChar",type:"USHORT",value:0},{name:"usMaxContext",type:"USHORT",value:0}],A)},unicodeRanges:ae,getUnicodeRange:function(A){for(var e=0;e<ae.length;e+=1){var t=ae[e];if(A>=t.begin&&A<t.end)return e}return-1}};var ge={parse:function(A,e){var t={},i=new aA.Parser(A,e);switch(t.version=i.parseVersion(),t.italicAngle=i.parseFixed(),t.underlinePosition=i.parseShort(),t.underlineThickness=i.parseShort(),t.isFixedPitch=i.parseULong(),t.minMemType42=i.parseULong(),t.maxMemType42=i.parseULong(),t.minMemType1=i.parseULong(),t.maxMemType1=i.parseULong(),t.version){case 1:t.names=cA.slice();break;case 2:t.numberOfGlyphs=i.parseUShort(),t.glyphNameIndex=new Array(t.numberOfGlyphs);for(var n=0;n<t.numberOfGlyphs;n++)t.glyphNameIndex[n]=i.parseUShort();t.names=[];for(var r=0;r<t.numberOfGlyphs;r++)if(t.glyphNameIndex[r]>=cA.length){var s=i.parseChar();t.names.push(i.parseString(s))}break;case 2.5:t.numberOfGlyphs=i.parseUShort(),t.offset=new Array(t.numberOfGlyphs);for(var a=0;a<t.numberOfGlyphs;a++)t.offset[a]=i.parseChar()}return t},make:function(){return new $.Table("post",[{name:"version",type:"FIXED",value:196608},{name:"italicAngle",type:"FIXED",value:0},{name:"underlinePosition",type:"FWORD",value:0},{name:"underlineThickness",type:"FWORD",value:0},{name:"isFixedPitch",type:"ULONG",value:0},{name:"minMemType42",type:"ULONG",value:0},{name:"maxMemType42",type:"ULONG",value:0},{name:"minMemType1",type:"ULONG",value:0},{name:"maxMemType1",type:"ULONG",value:0}])}},Ie=new Array(9);Ie[1]=function(){var A=this.offset+this.relativeOffset,e=this.parseUShort();return 1===e?{substFormat:1,coverage:this.parsePointer(rA.coverage),deltaGlyphId:this.parseUShort()}:2===e?{substFormat:2,coverage:this.parsePointer(rA.coverage),substitute:this.parseOffset16List()}:void G.assert(!1,"0x"+A.toString(16)+": lookup type 1 format must be 1 or 2.")},Ie[2]=function(){var A=this.parseUShort();return G.argument(1===A,"GSUB Multiple Substitution Subtable identifier-format must be 1"),{substFormat:A,coverage:this.parsePointer(rA.coverage),sequences:this.parseListOfLists()}},Ie[3]=function(){var A=this.parseUShort();return G.argument(1===A,"GSUB Alternate Substitution Subtable identifier-format must be 1"),{substFormat:A,coverage:this.parsePointer(rA.coverage),alternateSets:this.parseListOfLists()}},Ie[4]=function(){var A=this.parseUShort();return G.argument(1===A,"GSUB ligature table identifier-format must be 1"),{substFormat:A,coverage:this.parsePointer(rA.coverage),ligatureSets:this.parseListOfLists((function(){return{ligGlyph:this.parseUShort(),components:this.parseUShortList(this.parseUShort()-1)}}))}};var Qe={sequenceIndex:rA.uShort,lookupListIndex:rA.uShort};Ie[5]=function(){var A=this.offset+this.relativeOffset,e=this.parseUShort();if(1===e)return{substFormat:e,coverage:this.parsePointer(rA.coverage),ruleSets:this.parseListOfLists((function(){var A=this.parseUShort(),e=this.parseUShort();return{input:this.parseUShortList(A-1),lookupRecords:this.parseRecordList(e,Qe)}}))};if(2===e)return{substFormat:e,coverage:this.parsePointer(rA.coverage),classDef:this.parsePointer(rA.classDef),classSets:this.parseListOfLists((function(){var A=this.parseUShort(),e=this.parseUShort();return{classes:this.parseUShortList(A-1),lookupRecords:this.parseRecordList(e,Qe)}}))};if(3===e){var t=this.parseUShort(),i=this.parseUShort();return{substFormat:e,coverages:this.parseList(t,rA.pointer(rA.coverage)),lookupRecords:this.parseRecordList(i,Qe)}}G.assert(!1,"0x"+A.toString(16)+": lookup type 5 format must be 1, 2 or 3.")},Ie[6]=function(){var A=this.offset+this.relativeOffset,e=this.parseUShort();return 1===e?{substFormat:1,coverage:this.parsePointer(rA.coverage),chainRuleSets:this.parseListOfLists((function(){return{backtrack:this.parseUShortList(),input:this.parseUShortList(this.parseShort()-1),lookahead:this.parseUShortList(),lookupRecords:this.parseRecordList(Qe)}}))}:2===e?{substFormat:2,coverage:this.parsePointer(rA.coverage),backtrackClassDef:this.parsePointer(rA.classDef),inputClassDef:this.parsePointer(rA.classDef),lookaheadClassDef:this.parsePointer(rA.classDef),chainClassSet:this.parseListOfLists((function(){return{backtrack:this.parseUShortList(),input:this.parseUShortList(this.parseShort()-1),lookahead:this.parseUShortList(),lookupRecords:this.parseRecordList(Qe)}}))}:3===e?{substFormat:3,backtrackCoverage:this.parseList(rA.pointer(rA.coverage)),inputCoverage:this.parseList(rA.pointer(rA.coverage)),lookaheadCoverage:this.parseList(rA.pointer(rA.coverage)),lookupRecords:this.parseRecordList(Qe)}:void G.assert(!1,"0x"+A.toString(16)+": lookup type 6 format must be 1, 2 or 3.")},Ie[7]=function(){var A=this.parseUShort();G.argument(1===A,"GSUB Extension Substitution subtable identifier-format must be 1");var e=this.parseUShort(),t=new rA(this.data,this.offset+this.parseULong());return{substFormat:1,lookupType:e,extension:Ie[e].call(t)}},Ie[8]=function(){var A=this.parseUShort();return G.argument(1===A,"GSUB Reverse Chaining Contextual Single Substitution Subtable identifier-format must be 1"),{substFormat:A,coverage:this.parsePointer(rA.coverage),backtrackCoverage:this.parseList(rA.pointer(rA.coverage)),lookaheadCoverage:this.parseList(rA.pointer(rA.coverage)),substitutes:this.parseUShortList()}};var Ce=new Array(9);Ce[1]=function(A){return 1===A.substFormat?new $.Table("substitutionTable",[{name:"substFormat",type:"USHORT",value:1},{name:"coverage",type:"TABLE",value:new $.Coverage(A.coverage)},{name:"deltaGlyphID",type:"USHORT",value:A.deltaGlyphId}]):new $.Table("substitutionTable",[{name:"substFormat",type:"USHORT",value:2},{name:"coverage",type:"TABLE",value:new $.Coverage(A.coverage)}].concat($.ushortList("substitute",A.substitute)))},Ce[2]=function(A){return G.assert(1===A.substFormat,"Lookup type 2 substFormat must be 1."),new $.Table("substitutionTable",[{name:"substFormat",type:"USHORT",value:1},{name:"coverage",type:"TABLE",value:new $.Coverage(A.coverage)}].concat($.tableList("seqSet",A.sequences,(function(A){return new $.Table("sequenceSetTable",$.ushortList("sequence",A))}))))},Ce[3]=function(A){return G.assert(1===A.substFormat,"Lookup type 3 substFormat must be 1."),new $.Table("substitutionTable",[{name:"substFormat",type:"USHORT",value:1},{name:"coverage",type:"TABLE",value:new $.Coverage(A.coverage)}].concat($.tableList("altSet",A.alternateSets,(function(A){return new $.Table("alternateSetTable",$.ushortList("alternate",A))}))))},Ce[4]=function(A){return G.assert(1===A.substFormat,"Lookup type 4 substFormat must be 1."),new $.Table("substitutionTable",[{name:"substFormat",type:"USHORT",value:1},{name:"coverage",type:"TABLE",value:new $.Coverage(A.coverage)}].concat($.tableList("ligSet",A.ligatureSets,(function(A){return new $.Table("ligatureSetTable",$.tableList("ligature",A,(function(A){return new $.Table("ligatureTable",[{name:"ligGlyph",type:"USHORT",value:A.ligGlyph}].concat($.ushortList("component",A.components,A.components.length+1)))})))}))))},Ce[6]=function(A){if(1===A.substFormat){var e=new $.Table("chainContextTable",[{name:"substFormat",type:"USHORT",value:A.substFormat},{name:"coverage",type:"TABLE",value:new $.Coverage(A.coverage)}].concat($.tableList("chainRuleSet",A.chainRuleSets,(function(A){return new $.Table("chainRuleSetTable",$.tableList("chainRule",A,(function(A){var e=$.ushortList("backtrackGlyph",A.backtrack,A.backtrack.length).concat($.ushortList("inputGlyph",A.input,A.input.length+1)).concat($.ushortList("lookaheadGlyph",A.lookahead,A.lookahead.length)).concat($.ushortList("substitution",[],A.lookupRecords.length));return A.lookupRecords.forEach((function(A,t){e=e.concat({name:"sequenceIndex"+t,type:"USHORT",value:A.sequenceIndex}).concat({name:"lookupListIndex"+t,type:"USHORT",value:A.lookupListIndex})})),new $.Table("chainRuleTable",e)})))}))));return e}if(2===A.substFormat)G.assert(!1,"lookup type 6 format 2 is not yet supported.");else if(3===A.substFormat){var t=[{name:"substFormat",type:"USHORT",value:A.substFormat}];return t.push({name:"backtrackGlyphCount",type:"USHORT",value:A.backtrackCoverage.length}),A.backtrackCoverage.forEach((function(A,e){t.push({name:"backtrackCoverage"+e,type:"TABLE",value:new $.Coverage(A)})})),t.push({name:"inputGlyphCount",type:"USHORT",value:A.inputCoverage.length}),A.inputCoverage.forEach((function(A,e){t.push({name:"inputCoverage"+e,type:"TABLE",value:new $.Coverage(A)})})),t.push({name:"lookaheadGlyphCount",type:"USHORT",value:A.lookaheadCoverage.length}),A.lookaheadCoverage.forEach((function(A,e){t.push({name:"lookaheadCoverage"+e,type:"TABLE",value:new $.Coverage(A)})})),t.push({name:"substitutionCount",type:"USHORT",value:A.lookupRecords.length}),A.lookupRecords.forEach((function(A,e){t=t.concat({name:"sequenceIndex"+e,type:"USHORT",value:A.sequenceIndex}).concat({name:"lookupListIndex"+e,type:"USHORT",value:A.lookupListIndex})})),new $.Table("chainContextTable",t)}G.assert(!1,"lookup type 6 format must be 1, 2 or 3.")};var ce={parse:function(A,e){var t=new rA(A,e=e||0),i=t.parseVersion(1);return G.argument(1===i||1.1===i,"Unsupported GSUB table version."),1===i?{version:i,scripts:t.parseScriptList(),features:t.parseFeatureList(),lookups:t.parseLookupList(Ie)}:{version:i,scripts:t.parseScriptList(),features:t.parseFeatureList(),lookups:t.parseLookupList(Ie),variations:t.parseFeatureVariationsList()}},make:function(A){return new $.Table("GSUB",[{name:"version",type:"ULONG",value:65536},{name:"scripts",type:"TABLE",value:new $.ScriptList(A.scripts)},{name:"features",type:"TABLE",value:new $.FeatureList(A.features)},{name:"lookups",type:"TABLE",value:new $.LookupList(A.lookups,Ce)}])}};var Be={parse:function(A,e){var t=new aA.Parser(A,e),i=t.parseULong();G.argument(1===i,"Unsupported META table version."),t.parseULong(),t.parseULong();for(var n=t.parseULong(),r={},s=0;s<n;s++){var a=t.parseTag(),o=t.parseULong(),g=t.parseULong(),I=N.UTF8(A,e+o,g);r[a]=I}return r},make:function(A){var e=Object.keys(A).length,t="",i=16+12*e,n=new $.Table("meta",[{name:"version",type:"ULONG",value:1},{name:"flags",type:"ULONG",value:0},{name:"offset",type:"ULONG",value:i},{name:"numTags",type:"ULONG",value:e}]);for(var r in A){var s=t.length;t+=A[r],n.fields.push({name:"tag "+r,type:"TAG",value:r}),n.fields.push({name:"offset "+r,type:"ULONG",value:i+s}),n.fields.push({name:"length "+r,type:"ULONG",value:A[r].length})}return n.fields.push({name:"stringPool",type:"CHARARRAY",value:t}),n}};function le(A){return Math.log(A)/Math.log(2)|0}function Ee(A){for(;A.length%4!=0;)A.push(0);for(var e=0,t=0;t<A.length;t+=4)e+=(A[t]<<24)+(A[t+1]<<16)+(A[t+2]<<8)+A[t+3];return e%=Math.pow(2,32)}function ue(A,e,t,i){return new $.Record("Table Record",[{name:"tag",type:"TAG",value:void 0!==A?A:""},{name:"checkSum",type:"ULONG",value:void 0!==e?e:0},{name:"offset",type:"ULONG",value:void 0!==t?t:0},{name:"length",type:"ULONG",value:void 0!==i?i:0}])}function fe(A){var e=new $.Table("sfnt",[{name:"version",type:"TAG",value:"OTTO"},{name:"numTables",type:"USHORT",value:0},{name:"searchRange",type:"USHORT",value:0},{name:"entrySelector",type:"USHORT",value:0},{name:"rangeShift",type:"USHORT",value:0}]);e.tables=A,e.numTables=A.length;var t=Math.pow(2,le(e.numTables));e.searchRange=16*t,e.entrySelector=le(t),e.rangeShift=16*e.numTables-e.searchRange;for(var i=[],n=[],r=e.sizeOf()+ue().sizeOf()*e.numTables;r%4!=0;)r+=1,n.push({name:"padding",type:"BYTE",value:0});for(var s=0;s<A.length;s+=1){var a=A[s];G.argument(4===a.tableName.length,"Table name"+a.tableName+" is invalid.");var o=a.sizeOf(),g=ue(a.tableName,Ee(a.encode()),r,o);for(i.push({name:g.tag+" Table Record",type:"RECORD",value:g}),n.push({name:a.tableName+" table",type:"RECORD",value:a}),r+=o,G.argument(!isNaN(r),"Something went wrong calculating the offset.");r%4!=0;)r+=1,n.push({name:"padding",type:"BYTE",value:0})}return i.sort((function(A,e){return A.value.tag>e.value.tag?1:-1})),e.fields=e.fields.concat(i),e.fields=e.fields.concat(n),e}function he(A,e,t){for(var i=0;i<e.length;i+=1){var n=A.charToGlyphIndex(e[i]);if(n>0)return A.glyphs.get(n).getMetrics()}return t}function pe(A){for(var e=0,t=0;t<A.length;t+=1)e+=A[t];return e/A.length}var ye={make:fe,fontToTable:function(A){for(var e,t=[],i=[],n=[],r=[],s=[],a=[],o=[],g=0,I=0,Q=0,C=0,c=0,B=0;B<A.glyphs.length;B+=1){var l=A.glyphs.get(B),E=0|l.unicode;if(isNaN(l.advanceWidth))throw new Error("Glyph "+l.name+" ("+B+"): advanceWidth is not a number.");(e>E||void 0===e)&&E>0&&(e=E),g<E&&(g=E);var u=oe.getUnicodeRange(E);if(u<32)I|=1<<u;else if(u<64)Q|=1<<u-32;else if(u<96)C|=1<<u-64;else{if(!(u<123))throw new Error("Unicode ranges bits > 123 are reserved for internal usage");c|=1<<u-96}if(".notdef"!==l.name){var f=l.getMetrics();t.push(f.xMin),i.push(f.yMin),n.push(f.xMax),r.push(f.yMax),a.push(f.leftSideBearing),o.push(f.rightSideBearing),s.push(l.advanceWidth)}}var h={xMin:Math.min.apply(null,t),yMin:Math.min.apply(null,i),xMax:Math.max.apply(null,n),yMax:Math.max.apply(null,r),advanceWidthMax:Math.max.apply(null,s),advanceWidthAvg:pe(s),minLeftSideBearing:Math.min.apply(null,a),maxLeftSideBearing:Math.max.apply(null,a),minRightSideBearing:Math.min.apply(null,o)};h.ascender=A.ascender,h.descender=A.descender;var p=TA.make({flags:3,unitsPerEm:A.unitsPerEm,xMin:h.xMin,yMin:h.yMin,xMax:h.xMax,yMax:h.yMax,lowestRecPPEM:3,createdTimestamp:A.createdTimestamp}),y=HA.make({ascender:h.ascender,descender:h.descender,advanceWidthMax:h.advanceWidthMax,minLeftSideBearing:h.minLeftSideBearing,minRightSideBearing:h.minRightSideBearing,xMaxExtent:h.maxLeftSideBearing+(h.xMax-h.xMin),numberOfHMetrics:A.glyphs.length}),d=_A.make(A.glyphs.length),m=oe.make(Object.assign({xAvgCharWidth:Math.round(h.advanceWidthAvg),usFirstCharIndex:e,usLastCharIndex:g,ulUnicodeRange1:I,ulUnicodeRange2:Q,ulUnicodeRange3:C,ulUnicodeRange4:c,sTypoAscender:h.ascender,sTypoDescender:h.descender,sTypoLineGap:0,usWinAscent:h.yMax,usWinDescent:Math.abs(h.yMin),ulCodePageRange1:1,sxHeight:he(A,"xyvw",{yMax:Math.round(h.ascender/2)}).yMax,sCapHeight:he(A,"HIKLEFJMNTZBDPRAGOQSUVWXY",h).yMax,usDefaultChar:A.hasChar(" ")?32:0,usBreakChar:A.hasChar(" ")?32:0},A.tables.os2)),b=YA.make(A.glyphs),D=gA.make(A.glyphs),S=A.getEnglishName("fontFamily"),w=A.getEnglishName("fontSubfamily"),v=S+" "+w,k=A.getEnglishName("postScriptName");k||(k=S.replace(/\s/g,"")+"-"+w);var x={};for(var G in A.names)x[G]=A.names[G];x.uniqueID||(x.uniqueID={en:A.getEnglishName("manufacturer")+":"+v}),x.postScriptName||(x.postScriptName={en:k}),x.preferredFamily||(x.preferredFamily=A.names.fontFamily),x.preferredSubfamily||(x.preferredSubfamily=A.names.fontSubfamily);var U=[],N=se.make(x,U),F=U.length>0?PA.make(U):void 0,M=ge.make(),R=KA.make(A.glyphs,{version:A.getEnglishName("version"),fullName:v,familyName:S,weightName:w,postScriptName:k,unitsPerEm:A.unitsPerEm,fontBBox:[0,h.yMin,h.ascender,h.advanceWidthMax]}),L=A.metas&&Object.keys(A.metas).length>0?Be.make(A.metas):void 0,z=[p,y,d,m,N,D,M,R,b];F&&z.push(F),A.tables.gsub&&z.push(ce.make(A.tables.gsub)),L&&z.push(L);for(var J=fe(z),q=Ee(J.encode()),O=J.fields,K=!1,T=0;T<O.length;T+=1)if("head table"===O[T].name){O[T].value.checkSumAdjustment=2981146554-q,K=!0;break}if(!K)throw new Error("Could not find head table with checkSum to adjust.");return J},computeCheckSum:Ee};function de(A,e){for(var t=0,i=A.length-1;t<=i;){var n=t+i>>>1,r=A[n].tag;if(r===e)return n;r<e?t=n+1:i=n-1}return-t-1}function me(A,e){for(var t=0,i=A.length-1;t<=i;){var n=t+i>>>1,r=A[n];if(r===e)return n;r<e?t=n+1:i=n-1}return-t-1}function be(A,e){for(var t,i=0,n=A.length-1;i<=n;){var r=i+n>>>1,s=(t=A[r]).start;if(s===e)return t;s<e?i=r+1:n=r-1}if(i>0)return e>(t=A[i-1]).end?0:t}function De(A,e){this.font=A,this.tableName=e}function Se(A){De.call(this,A,"gpos")}function we(A){De.call(this,A,"gsub")}function ve(A,e){var t=A.length;if(t!==e.length)return!1;for(var i=0;i<t;i++)if(A[i]!==e[i])return!1;return!0}function ke(A,e,t){for(var i=A.subtables,n=0;n<i.length;n++){var r=i[n];if(r.substFormat===e)return r}if(t)return i.push(t),t}function xe(A){for(var e=new ArrayBuffer(A.length),t=new Uint8Array(e),i=0;i<A.length;++i)t[i]=A[i];return e}function Ge(A,e){if(!A)throw e}function Ue(A,e,t,i,n){var r;return(e&i)>0?(r=A.parseByte(),e&n||(r=-r),r=t+r):r=(e&n)>0?t:t+A.parseShort(),r}function Ne(A,e,t){var i,n,r=new aA.Parser(e,t);if(A.numberOfContours=r.parseShort(),A._xMin=r.parseShort(),A._yMin=r.parseShort(),A._xMax=r.parseShort(),A._yMax=r.parseShort(),A.numberOfContours>0){for(var s=A.endPointIndices=[],a=0;a<A.numberOfContours;a+=1)s.push(r.parseUShort());A.instructionLength=r.parseUShort(),A.instructions=[];for(var o=0;o<A.instructionLength;o+=1)A.instructions.push(r.parseByte());var g=s[s.length-1]+1;i=[];for(var I=0;I<g;I+=1)if(n=r.parseByte(),i.push(n),(8&n)>0)for(var Q=r.parseByte(),C=0;C<Q;C+=1)i.push(n),I+=1;if(G.argument(i.length===g,"Bad flags."),s.length>0){var c,B=[];if(g>0){for(var l=0;l<g;l+=1)n=i[l],(c={}).onCurve=!!(1&n),c.lastPointOfContour=s.indexOf(l)>=0,B.push(c);for(var E=0,u=0;u<g;u+=1)n=i[u],(c=B[u]).x=Ue(r,n,E,2,16),E=c.x;for(var f=0,h=0;h<g;h+=1)n=i[h],(c=B[h]).y=Ue(r,n,f,4,32),f=c.y}A.points=B}else A.points=[]}else if(0===A.numberOfContours)A.points=[];else{A.isComposite=!0,A.points=[],A.components=[];for(var p=!0;p;){i=r.parseUShort();var y={glyphIndex:r.parseUShort(),xScale:1,scale01:0,scale10:0,yScale:1,dx:0,dy:0};(1&i)>0?(2&i)>0?(y.dx=r.parseShort(),y.dy=r.parseShort()):y.matchedPoints=[r.parseUShort(),r.parseUShort()]:(2&i)>0?(y.dx=r.parseChar(),y.dy=r.parseChar()):y.matchedPoints=[r.parseByte(),r.parseByte()],(8&i)>0?y.xScale=y.yScale=r.parseF2Dot14():(64&i)>0?(y.xScale=r.parseF2Dot14(),y.yScale=r.parseF2Dot14()):(128&i)>0&&(y.xScale=r.parseF2Dot14(),y.scale01=r.parseF2Dot14(),y.scale10=r.parseF2Dot14(),y.yScale=r.parseF2Dot14()),A.components.push(y),p=!!(32&i)}if(256&i){A.instructionLength=r.parseUShort(),A.instructions=[];for(var d=0;d<A.instructionLength;d+=1)A.instructions.push(r.parseByte())}}}function Fe(A,e){for(var t=[],i=0;i<A.length;i+=1){var n=A[i],r={x:e.xScale*n.x+e.scale01*n.y+e.dx,y:e.scale10*n.x+e.yScale*n.y+e.dy,onCurve:n.onCurve,lastPointOfContour:n.lastPointOfContour};t.push(r)}return t}function Me(A){var e=new v;if(!A)return e;for(var t=function(A){for(var e=[],t=[],i=0;i<A.length;i+=1){var n=A[i];t.push(n),n.lastPointOfContour&&(e.push(t),t=[])}return G.argument(0===t.length,"There are still points left in the current contour."),e}(A),i=0;i<t.length;++i){var n=t[i],r=null,s=n[n.length-1],a=n[0];if(s.onCurve)e.moveTo(s.x,s.y);else if(a.onCurve)e.moveTo(a.x,a.y);else{var o={x:.5*(s.x+a.x),y:.5*(s.y+a.y)};e.moveTo(o.x,o.y)}for(var g=0;g<n.length;++g)if(r=s,s=a,a=n[(g+1)%n.length],s.onCurve)e.lineTo(s.x,s.y);else{var I=a;r.onCurve||{x:.5*(s.x+r.x),y:.5*(s.y+r.y)},a.onCurve||(I={x:.5*(s.x+a.x),y:.5*(s.y+a.y)}),e.quadraticCurveTo(s.x,s.y,I.x,I.y)}e.closePath()}return e}function Re(A,e){if(e.isComposite)for(var t=0;t<e.components.length;t+=1){var i=e.components[t],n=A.get(i.glyphIndex);if(n.getPath(),n.points){var r=void 0;if(void 0===i.matchedPoints)r=Fe(n.points,i);else{if(i.matchedPoints[0]>e.points.length-1||i.matchedPoints[1]>n.points.length-1)throw Error("Matched points out of range in "+e.name);var s=e.points[i.matchedPoints[0]],a=n.points[i.matchedPoints[1]],o={xScale:i.xScale,scale01:i.scale01,scale10:i.scale10,yScale:i.yScale,dx:0,dy:0};a=Fe([a],o)[0],o.dx=s.x-a.x,o.dy=s.y-a.y,r=Fe(n.points,o)}e.points=e.points.concat(r)}}return Me(e.points)}De.prototype={searchTag:de,binSearch:me,getTable:function(A){var e=this.font.tables[this.tableName];return!e&&A&&(e=this.font.tables[this.tableName]=this.createDefaultTable()),e},getScriptNames:function(){var A=this.getTable();return A?A.scripts.map((function(A){return A.tag})):[]},getDefaultScriptName:function(){var A=this.getTable();if(A){for(var e=!1,t=0;t<A.scripts.length;t++){var i=A.scripts[t].tag;if("DFLT"===i)return i;"latn"===i&&(e=!0)}return e?"latn":void 0}},getScriptTable:function(A,e){var t=this.getTable(e);if(t){A=A||"DFLT";var i=t.scripts,n=de(t.scripts,A);if(n>=0)return i[n].script;if(e){var r={tag:A,script:{defaultLangSys:{reserved:0,reqFeatureIndex:65535,featureIndexes:[]},langSysRecords:[]}};return i.splice(-1-n,0,r),r.script}}},getLangSysTable:function(A,e,t){var i=this.getScriptTable(A,t);if(i){if(!e||"dflt"===e||"DFLT"===e)return i.defaultLangSys;var n=de(i.langSysRecords,e);if(n>=0)return i.langSysRecords[n].langSys;if(t){var r={tag:e,langSys:{reserved:0,reqFeatureIndex:65535,featureIndexes:[]}};return i.langSysRecords.splice(-1-n,0,r),r.langSys}}},getFeatureTable:function(A,e,t,i){var n=this.getLangSysTable(A,e,i);if(n){for(var r,s=n.featureIndexes,a=this.font.tables[this.tableName].features,o=0;o<s.length;o++)if((r=a[s[o]]).tag===t)return r.feature;if(i){var g=a.length;return G.assert(0===g||t>=a[g-1].tag,"Features must be added in alphabetical order."),r={tag:t,feature:{params:0,lookupListIndexes:[]}},a.push(r),s.push(g),r.feature}}},getLookupTables:function(A,e,t,i,n){var r=this.getFeatureTable(A,e,t,n),s=[];if(r){for(var a,o=r.lookupListIndexes,g=this.font.tables[this.tableName].lookups,I=0;I<o.length;I++)(a=g[o[I]]).lookupType===i&&s.push(a);if(0===s.length&&n){a={lookupType:i,lookupFlag:0,subtables:[],markFilteringSet:void 0};var Q=g.length;return g.push(a),o.push(Q),[a]}}return s},getGlyphClass:function(A,e){switch(A.format){case 1:return A.startGlyph<=e&&e<A.startGlyph+A.classes.length?A.classes[e-A.startGlyph]:0;case 2:var t=be(A.ranges,e);return t?t.classId:0}},getCoverageIndex:function(A,e){switch(A.format){case 1:var t=me(A.glyphs,e);return t>=0?t:-1;case 2:var i=be(A.ranges,e);return i?i.index+e-i.start:-1}},expandCoverage:function(A){if(1===A.format)return A.glyphs;for(var e=[],t=A.ranges,i=0;i<t.length;i++)for(var n=t[i],r=n.start,s=n.end,a=r;a<=s;a++)e.push(a);return e}},Se.prototype=De.prototype,Se.prototype.init=function(){var A=this.getDefaultScriptName();this.defaultKerningTables=this.getKerningTables(A)},Se.prototype.getKerningValue=function(A,e,t){for(var i=0;i<A.length;i++)for(var n=A[i].subtables,r=0;r<n.length;r++){var s=n[r],a=this.getCoverageIndex(s.coverage,e);if(!(a<0))switch(s.posFormat){case 1:for(var o=s.pairSets[a],g=0;g<o.length;g++){var I=o[g];if(I.secondGlyph===t)return I.value1&&I.value1.xAdvance||0}break;case 2:var Q=this.getGlyphClass(s.classDef1,e),C=this.getGlyphClass(s.classDef2,t),c=s.classRecords[Q][C];return c.value1&&c.value1.xAdvance||0}}return 0},Se.prototype.getKerningTables=function(A,e){if(this.font.tables.gpos)return this.getLookupTables(A,e,"kern",2)},we.prototype=De.prototype,we.prototype.createDefaultTable=function(){return{version:1,scripts:[{tag:"DFLT",script:{defaultLangSys:{reserved:0,reqFeatureIndex:65535,featureIndexes:[]},langSysRecords:[]}}],features:[],lookups:[]}},we.prototype.getSingle=function(A,e,t){for(var i=[],n=this.getLookupTables(e,t,A,1),r=0;r<n.length;r++)for(var s=n[r].subtables,a=0;a<s.length;a++){var o=s[a],g=this.expandCoverage(o.coverage),I=void 0;if(1===o.substFormat){var Q=o.deltaGlyphId;for(I=0;I<g.length;I++){var C=g[I];i.push({sub:C,by:C+Q})}}else{var c=o.substitute;for(I=0;I<g.length;I++)i.push({sub:g[I],by:c[I]})}}return i},we.prototype.getMultiple=function(A,e,t){for(var i=[],n=this.getLookupTables(e,t,A,2),r=0;r<n.length;r++)for(var s=n[r].subtables,a=0;a<s.length;a++){var o=s[a],g=this.expandCoverage(o.coverage),I=void 0;for(I=0;I<g.length;I++){var Q=g[I],C=o.sequences[I];i.push({sub:Q,by:C})}}return i},we.prototype.getAlternates=function(A,e,t){for(var i=[],n=this.getLookupTables(e,t,A,3),r=0;r<n.length;r++)for(var s=n[r].subtables,a=0;a<s.length;a++)for(var o=s[a],g=this.expandCoverage(o.coverage),I=o.alternateSets,Q=0;Q<g.length;Q++)i.push({sub:g[Q],by:I[Q]});return i},we.prototype.getLigatures=function(A,e,t){for(var i=[],n=this.getLookupTables(e,t,A,4),r=0;r<n.length;r++)for(var s=n[r].subtables,a=0;a<s.length;a++)for(var o=s[a],g=this.expandCoverage(o.coverage),I=o.ligatureSets,Q=0;Q<g.length;Q++)for(var C=g[Q],c=I[Q],B=0;B<c.length;B++){var l=c[B];i.push({sub:[C].concat(l.components),by:l.ligGlyph})}return i},we.prototype.addSingle=function(A,e,t,i){var n=ke(this.getLookupTables(t,i,A,1,!0)[0],2,{substFormat:2,coverage:{format:1,glyphs:[]},substitute:[]});G.assert(1===n.coverage.format,"Single: unable to modify coverage table format "+n.coverage.format);var r=e.sub,s=this.binSearch(n.coverage.glyphs,r);s<0&&(s=-1-s,n.coverage.glyphs.splice(s,0,r),n.substitute.splice(s,0,0)),n.substitute[s]=e.by},we.prototype.addMultiple=function(A,e,t,i){G.assert(e.by instanceof Array&&e.by.length>1,'Multiple: "by" must be an array of two or more ids');var n=ke(this.getLookupTables(t,i,A,2,!0)[0],1,{substFormat:1,coverage:{format:1,glyphs:[]},sequences:[]});G.assert(1===n.coverage.format,"Multiple: unable to modify coverage table format "+n.coverage.format);var r=e.sub,s=this.binSearch(n.coverage.glyphs,r);s<0&&(s=-1-s,n.coverage.glyphs.splice(s,0,r),n.sequences.splice(s,0,0)),n.sequences[s]=e.by},we.prototype.addAlternate=function(A,e,t,i){var n=ke(this.getLookupTables(t,i,A,3,!0)[0],1,{substFormat:1,coverage:{format:1,glyphs:[]},alternateSets:[]});G.assert(1===n.coverage.format,"Alternate: unable to modify coverage table format "+n.coverage.format);var r=e.sub,s=this.binSearch(n.coverage.glyphs,r);s<0&&(s=-1-s,n.coverage.glyphs.splice(s,0,r),n.alternateSets.splice(s,0,0)),n.alternateSets[s]=e.by},we.prototype.addLigature=function(A,e,t,i){var n=this.getLookupTables(t,i,A,4,!0)[0],r=n.subtables[0];r||(r={substFormat:1,coverage:{format:1,glyphs:[]},ligatureSets:[]},n.subtables[0]=r),G.assert(1===r.coverage.format,"Ligature: unable to modify coverage table format "+r.coverage.format);var s=e.sub[0],a=e.sub.slice(1),o={ligGlyph:e.by,components:a},g=this.binSearch(r.coverage.glyphs,s);if(g>=0){for(var I=r.ligatureSets[g],Q=0;Q<I.length;Q++)if(ve(I[Q].components,a))return;I.push(o)}else g=-1-g,r.coverage.glyphs.splice(g,0,s),r.ligatureSets.splice(g,0,[o])},we.prototype.getFeature=function(A,e,t){if(/ss\d\d/.test(A))return this.getSingle(A,e,t);switch(A){case"aalt":case"salt":return this.getSingle(A,e,t).concat(this.getAlternates(A,e,t));case"dlig":case"liga":case"rlig":return this.getLigatures(A,e,t);case"ccmp":return this.getMultiple(A,e,t).concat(this.getLigatures(A,e,t));case"stch":return this.getMultiple(A,e,t)}},we.prototype.add=function(A,e,t,i){if(/ss\d\d/.test(A))return this.addSingle(A,e,t,i);switch(A){case"aalt":case"salt":return"number"==typeof e.by?this.addSingle(A,e,t,i):this.addAlternate(A,e,t,i);case"dlig":case"liga":case"rlig":return this.addLigature(A,e,t,i);case"ccmp":return e.by instanceof Array?this.addMultiple(A,e,t,i):this.addLigature(A,e,t,i)}};var Le,ze,Je,qe,Oe={getPath:Me,parse:function(A,e,t,i,n){return n.lowMemory?function(A,e,t,i){var n=new mA.GlyphSet(i);return i._push=function(r){var s=t[r];s!==t[r+1]?n.push(r,mA.ttfGlyphLoader(i,r,Ne,A,e+s,Re)):n.push(r,mA.glyphLoader(i,r))},n}(A,e,t,i):function(A,e,t,i){for(var n=new mA.GlyphSet(i),r=0;r<t.length-1;r+=1){var s=t[r];s!==t[r+1]?n.push(r,mA.ttfGlyphLoader(i,r,Ne,A,e+s,Re)):n.push(r,mA.glyphLoader(i,r))}return n}(A,e,t,i)}};function Ke(A){this.font=A,this.getCommands=function(A){return Oe.getPath(A).commands},this._fpgmState=this._prepState=void 0,this._errorState=0}function Te(A){return A}function He(A){return Math.sign(A)*Math.round(Math.abs(A))}function Ye(A){return Math.sign(A)*Math.round(Math.abs(2*A))/2}function Pe(A){return Math.sign(A)*(Math.round(Math.abs(A)+.5)-.5)}function _e(A){return Math.sign(A)*Math.ceil(Math.abs(A))}function Ve(A){return Math.sign(A)*Math.floor(Math.abs(A))}var Xe=function(A){var e=this.srPeriod,t=this.srPhase,i=1;return A<0&&(A=-A,i=-1),A+=this.srThreshold-t,A=Math.trunc(A/e)*e,(A+=t)<0?t*i:A*i},We={x:1,y:0,axis:"x",distance:function(A,e,t,i){return(t?A.xo:A.x)-(i?e.xo:e.x)},interpolate:function(A,e,t,i){var n,r,s,a,o,g,I;if(!i||i===this)return n=A.xo-e.xo,r=A.xo-t.xo,o=e.x-e.xo,g=t.x-t.xo,0===(I=(s=Math.abs(n))+(a=Math.abs(r)))?void(A.x=A.xo+(o+g)/2):void(A.x=A.xo+(o*a+g*s)/I);n=i.distance(A,e,!0,!0),r=i.distance(A,t,!0,!0),o=i.distance(e,e,!1,!0),g=i.distance(t,t,!1,!0),0!==(I=(s=Math.abs(n))+(a=Math.abs(r)))?We.setRelative(A,A,(o*a+g*s)/I,i,!0):We.setRelative(A,A,(o+g)/2,i,!0)},normalSlope:Number.NEGATIVE_INFINITY,setRelative:function(A,e,t,i,n){if(i&&i!==this){var r=n?e.xo:e.x,s=n?e.yo:e.y,a=r+t*i.x,o=s+t*i.y;A.x=a+(A.y-o)/i.normalSlope}else A.x=(n?e.xo:e.x)+t},slope:0,touch:function(A){A.xTouched=!0},touched:function(A){return A.xTouched},untouch:function(A){A.xTouched=!1}},je={x:0,y:1,axis:"y",distance:function(A,e,t,i){return(t?A.yo:A.y)-(i?e.yo:e.y)},interpolate:function(A,e,t,i){var n,r,s,a,o,g,I;if(!i||i===this)return n=A.yo-e.yo,r=A.yo-t.yo,o=e.y-e.yo,g=t.y-t.yo,0===(I=(s=Math.abs(n))+(a=Math.abs(r)))?void(A.y=A.yo+(o+g)/2):void(A.y=A.yo+(o*a+g*s)/I);n=i.distance(A,e,!0,!0),r=i.distance(A,t,!0,!0),o=i.distance(e,e,!1,!0),g=i.distance(t,t,!1,!0),0!==(I=(s=Math.abs(n))+(a=Math.abs(r)))?je.setRelative(A,A,(o*a+g*s)/I,i,!0):je.setRelative(A,A,(o+g)/2,i,!0)},normalSlope:0,setRelative:function(A,e,t,i,n){if(i&&i!==this){var r=n?e.xo:e.x,s=n?e.yo:e.y,a=r+t*i.x,o=s+t*i.y;A.y=o+i.normalSlope*(A.x-a)}else A.y=(n?e.yo:e.y)+t},slope:Number.POSITIVE_INFINITY,touch:function(A){A.yTouched=!0},touched:function(A){return A.yTouched},untouch:function(A){A.yTouched=!1}};function Ze(A,e){this.x=A,this.y=e,this.axis=void 0,this.slope=e/A,this.normalSlope=-A/e,Object.freeze(this)}function $e(A,e){var t=Math.sqrt(A*A+e*e);return e/=t,1===(A/=t)&&0===e?We:0===A&&1===e?je:new Ze(A,e)}function At(A,e,t,i){this.x=this.xo=Math.round(64*A)/64,this.y=this.yo=Math.round(64*e)/64,this.lastPointOfContour=t,this.onCurve=i,this.prevPointOnContour=void 0,this.nextPointOnContour=void 0,this.xTouched=!1,this.yTouched=!1,Object.preventExtensions(this)}Object.freeze(We),Object.freeze(je),Ze.prototype.distance=function(A,e,t,i){return this.x*We.distance(A,e,t,i)+this.y*je.distance(A,e,t,i)},Ze.prototype.interpolate=function(A,e,t,i){var n,r,s,a,o,g,I;s=i.distance(A,e,!0,!0),a=i.distance(A,t,!0,!0),n=i.distance(e,e,!1,!0),r=i.distance(t,t,!1,!0),0!==(I=(o=Math.abs(s))+(g=Math.abs(a)))?this.setRelative(A,A,(n*g+r*o)/I,i,!0):this.setRelative(A,A,(n+r)/2,i,!0)},Ze.prototype.setRelative=function(A,e,t,i,n){i=i||this;var r=n?e.xo:e.x,s=n?e.yo:e.y,a=r+t*i.x,o=s+t*i.y,g=i.normalSlope,I=this.slope,Q=A.x,C=A.y;A.x=(I*Q-g*a+o-C)/(I-g),A.y=I*(A.x-Q)+C},Ze.prototype.touch=function(A){A.xTouched=!0,A.yTouched=!0},At.prototype.nextTouched=function(A){for(var e=this.nextPointOnContour;!A.touched(e)&&e!==this;)e=e.nextPointOnContour;return e},At.prototype.prevTouched=function(A){for(var e=this.prevPointOnContour;!A.touched(e)&&e!==this;)e=e.prevPointOnContour;return e};var et=Object.freeze(new At(0,0)),tt={cvCutIn:17/16,deltaBase:9,deltaShift:.125,loop:1,minDis:1,autoFlip:!0};function it(A,e){switch(this.env=A,this.stack=[],this.prog=e,A){case"glyf":this.zp0=this.zp1=this.zp2=1,this.rp0=this.rp1=this.rp2=0;case"prep":this.fv=this.pv=this.dpv=We,this.round=He}}function nt(A){for(var e=A.tZone=new Array(A.gZone.length),t=0;t<e.length;t++)e[t]=new At(0,0)}function rt(A,e){var t,i=A.prog,n=A.ip,r=1;do{if(88===(t=i[++n]))r++;else if(89===t)r--;else if(64===t)n+=i[n+1]+1;else if(65===t)n+=2*i[n+1]+1;else if(t>=176&&t<=183)n+=t-176+1;else if(t>=184&&t<=191)n+=2*(t-184+1);else if(e&&1===r&&27===t)break}while(r>0);A.ip=n}function st(A,e){exports.DEBUG&&console.log(e.step,"SVTCA["+A.axis+"]"),e.fv=e.pv=e.dpv=A}function at(A,e){exports.DEBUG&&console.log(e.step,"SPVTCA["+A.axis+"]"),e.pv=e.dpv=A}function ot(A,e){exports.DEBUG&&console.log(e.step,"SFVTCA["+A.axis+"]"),e.fv=A}function gt(A,e){var t,i,n=e.stack,r=n.pop(),s=n.pop(),a=e.z2[r],o=e.z1[s];exports.DEBUG&&console.log("SPVTL["+A+"]",r,s),A?(t=a.y-o.y,i=o.x-a.x):(t=o.x-a.x,i=o.y-a.y),e.pv=e.dpv=$e(t,i)}function It(A,e){var t,i,n=e.stack,r=n.pop(),s=n.pop(),a=e.z2[r],o=e.z1[s];exports.DEBUG&&console.log("SFVTL["+A+"]",r,s),A?(t=a.y-o.y,i=o.x-a.x):(t=o.x-a.x,i=o.y-a.y),e.fv=$e(t,i)}function Qt(A){exports.DEBUG&&console.log(A.step,"POP[]"),A.stack.pop()}function Ct(A,e){var t=e.stack.pop(),i=e.z0[t],n=e.fv,r=e.pv;exports.DEBUG&&console.log(e.step,"MDAP["+A+"]",t);var s=r.distance(i,et);A&&(s=e.round(s)),n.setRelative(i,et,s,r),n.touch(i),e.rp0=e.rp1=t}function ct(A,e){var t,i,n,r=e.z2,s=r.length-2;exports.DEBUG&&console.log(e.step,"IUP["+A.axis+"]");for(var a=0;a<s;a++)t=r[a],A.touched(t)||(i=t.prevTouched(A))!==t&&(i===(n=t.nextTouched(A))&&A.setRelative(t,t,A.distance(i,i,!1,!0),A,!0),A.interpolate(t,i,n,A))}function Bt(A,e){for(var t=e.stack,i=A?e.rp1:e.rp2,n=(A?e.z0:e.z1)[i],r=e.fv,s=e.pv,a=e.loop,o=e.z2;a--;){var g=t.pop(),I=o[g],Q=s.distance(n,n,!1,!0);r.setRelative(I,I,Q,s),r.touch(I),exports.DEBUG&&console.log(e.step,(e.loop>1?"loop "+(e.loop-a)+": ":"")+"SHP["+(A?"rp1":"rp2")+"]",g)}e.loop=1}function lt(A,e){var t=e.stack,i=A?e.rp1:e.rp2,n=(A?e.z0:e.z1)[i],r=e.fv,s=e.pv,a=t.pop(),o=e.z2[e.contours[a]],g=o;exports.DEBUG&&console.log(e.step,"SHC["+A+"]",a);var I=s.distance(n,n,!1,!0);do{g!==n&&r.setRelative(g,g,I,s),g=g.nextPointOnContour}while(g!==o)}function Et(A,e){var t,i,n=e.stack,r=A?e.rp1:e.rp2,s=(A?e.z0:e.z1)[r],a=e.fv,o=e.pv,g=n.pop();switch(exports.DEBUG&&console.log(e.step,"SHZ["+A+"]",g),g){case 0:t=e.tZone;break;case 1:t=e.gZone;break;default:throw new Error("Invalid zone")}for(var I=o.distance(s,s,!1,!0),Q=t.length-2,C=0;C<Q;C++)i=t[C],a.setRelative(i,i,I,o)}function ut(A,e){var t=e.stack,i=t.pop()/64,n=t.pop(),r=e.z1[n],s=e.z0[e.rp0],a=e.fv,o=e.pv;a.setRelative(r,s,i,o),a.touch(r),exports.DEBUG&&console.log(e.step,"MSIRP["+A+"]",i,n),e.rp1=e.rp0,e.rp2=n,A&&(e.rp0=n)}function ft(A,e){var t=e.stack,i=t.pop(),n=t.pop(),r=e.z0[n],s=e.fv,a=e.pv,o=e.cvt[i];exports.DEBUG&&console.log(e.step,"MIAP["+A+"]",i,"(",o,")",n);var g=a.distance(r,et);A&&(Math.abs(g-o)<e.cvCutIn&&(g=o),g=e.round(g)),s.setRelative(r,et,g,a),0===e.zp0&&(r.xo=r.x,r.yo=r.y),s.touch(r),e.rp0=e.rp1=n}function ht(A,e){var t=e.stack,i=t.pop(),n=e.z2[i];exports.DEBUG&&console.log(e.step,"GC["+A+"]",i),t.push(64*e.dpv.distance(n,et,A,!1))}function pt(A,e){var t=e.stack,i=t.pop(),n=t.pop(),r=e.z1[i],s=e.z0[n],a=e.dpv.distance(s,r,A,A);exports.DEBUG&&console.log(e.step,"MD["+A+"]",i,n,"->",a),e.stack.push(Math.round(64*a))}function yt(A,e){var t=e.stack,i=t.pop(),n=e.fv,r=e.pv,s=e.ppem,a=e.deltaBase+16*(A-1),o=e.deltaShift,g=e.z0;exports.DEBUG&&console.log(e.step,"DELTAP["+A+"]",i,t);for(var I=0;I<i;I++){var Q=t.pop(),C=t.pop();if(a+((240&C)>>4)===s){var c=(15&C)-8;c>=0&&c++,exports.DEBUG&&console.log(e.step,"DELTAPFIX",Q,"by",c*o);var B=g[Q];n.setRelative(B,B,c*o,r)}}}function dt(A,e){var t=e.stack,i=t.pop();exports.DEBUG&&console.log(e.step,"ROUND[]"),t.push(64*e.round(i/64))}function mt(A,e){var t=e.stack,i=t.pop(),n=e.ppem,r=e.deltaBase+16*(A-1),s=e.deltaShift;exports.DEBUG&&console.log(e.step,"DELTAC["+A+"]",i,t);for(var a=0;a<i;a++){var o=t.pop(),g=t.pop();if(r+((240&g)>>4)===n){var I=(15&g)-8;I>=0&&I++;var Q=I*s;exports.DEBUG&&console.log(e.step,"DELTACFIX",o,"by",Q),e.cvt[o]+=Q}}}function bt(A,e){var t,i,n=e.stack,r=n.pop(),s=n.pop(),a=e.z2[r],o=e.z1[s];exports.DEBUG&&console.log(e.step,"SDPVTL["+A+"]",r,s),A?(t=a.y-o.y,i=o.x-a.x):(t=o.x-a.x,i=o.y-a.y),e.dpv=$e(t,i)}function Dt(A,e){var t=e.stack,i=e.prog,n=e.ip;exports.DEBUG&&console.log(e.step,"PUSHB["+A+"]");for(var r=0;r<A;r++)t.push(i[++n]);e.ip=n}function St(A,e){var t=e.ip,i=e.prog,n=e.stack;exports.DEBUG&&console.log(e.ip,"PUSHW["+A+"]");for(var r=0;r<A;r++){var s=i[++t]<<8|i[++t];32768&s&&(s=-(1+(65535^s))),n.push(s)}e.ip=t}function wt(A,e,t,i,n,r){var s,a,o,g,I=r.stack,Q=A&&I.pop(),C=I.pop(),c=r.rp0,B=r.z0[c],l=r.z1[C],E=r.minDis,u=r.fv,f=r.dpv;o=(a=s=f.distance(l,B,!0,!0))>=0?1:-1,a=Math.abs(a),A&&(g=r.cvt[Q],i&&Math.abs(a-g)<r.cvCutIn&&(a=g)),t&&a<E&&(a=E),i&&(a=r.round(a)),u.setRelative(l,B,o*a,f),u.touch(l),exports.DEBUG&&console.log(r.step,(A?"MIRP[":"MDRP[")+(e?"M":"m")+(t?">":"_")+(i?"R":"_")+(0===n?"Gr":1===n?"Bl":2===n?"Wh":"")+"]",A?Q+"("+r.cvt[Q]+","+g+")":"",C,"(d =",s,"->",o*a,")"),r.rp1=r.rp0,r.rp2=C,e&&(r.rp0=C)}function vt(A){this.char=A,this.state={},this.activeState=null}function kt(A,e,t){this.contextName=t,this.startIndex=A,this.endOffset=e}function xt(A,e,t){this.contextName=A,this.openRange=null,this.ranges=[],this.checkStart=e,this.checkEnd=t}function Gt(A,e){this.context=A,this.index=e,this.length=A.length,this.current=A[e],this.backtrack=A.slice(0,e),this.lookahead=A.slice(e+1)}function Ut(A){this.eventId=A,this.subscribers=[]}function Nt(A){var e=this,t=["start","end","next","newToken","contextStart","contextEnd","insertToken","removeToken","removeRange","replaceToken","replaceRange","composeRUD","updateContextsRanges"];t.forEach((function(A){Object.defineProperty(e.events,A,{value:new Ut(A)})})),A&&t.forEach((function(t){var i=A[t];"function"==typeof i&&e.events[t].subscribe(i)}));["insertToken","removeToken","removeRange","replaceToken","replaceRange","composeRUD"].forEach((function(A){e.events[A].subscribe(e.updateContextsRanges)}))}function Ft(A){this.tokens=[],this.registeredContexts={},this.contextCheckers=[],this.events={},this.registeredModifiers=[],Nt.call(this,A)}function Mt(A){return/[\u0600-\u065F\u066A-\u06D2\u06FA-\u06FF]/.test(A)}function Rt(A){return/[\u0630\u0690\u0621\u0631\u0661\u0671\u0622\u0632\u0672\u0692\u06C2\u0623\u0673\u0693\u06C3\u0624\u0694\u06C4\u0625\u0675\u0695\u06C5\u06E5\u0676\u0696\u06C6\u0627\u0677\u0697\u06C7\u0648\u0688\u0698\u06C8\u0689\u0699\u06C9\u068A\u06CA\u066B\u068B\u06CB\u068C\u068D\u06CD\u06FD\u068E\u06EE\u06FE\u062F\u068F\u06CF\u06EF]/.test(A)}function Lt(A){return/[\u0600-\u0605\u060C-\u060E\u0610-\u061B\u061E\u064B-\u065F\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED]/.test(A)}function zt(A){return/[A-z]/.test(A)}function Jt(A){this.font=A,this.features={}}function qt(A){this.id=A.id,this.tag=A.tag,this.substitution=A.substitution}function Ot(A,e){if(!A)return-1;switch(e.format){case 1:return e.glyphs.indexOf(A);case 2:for(var t=e.ranges,i=0;i<t.length;i++){var n=t[i];if(A>=n.start&&A<=n.end){var r=A-n.start;return n.index+r}}break;default:return-1}return-1}function Kt(A,e){return-1===Ot(A,e.coverage)?null:A+e.deltaGlyphId}function Tt(A,e){var t=Ot(A,e.coverage);return-1===t?null:e.substitute[t]}function Ht(A,e){for(var t=[],i=0;i<A.length;i++){var n=A[i],r=e.current,s=Ot(r=Array.isArray(r)?r[0]:r,n);-1!==s&&t.push(s)}return t.length!==A.length?-1:t}function Yt(A,e){var t=e.inputCoverage.length+e.lookaheadCoverage.length+e.backtrackCoverage.length;if(A.context.length<t)return[];var i=Ht(e.inputCoverage,A);if(-1===i)return[];var n=e.inputCoverage.length-1;if(A.lookahead.length<e.lookaheadCoverage.length)return[];for(var r=A.lookahead.slice(n);r.length&&Lt(r[0].char);)r.shift();var s=new Gt(r,0),a=Ht(e.lookaheadCoverage,s),o=[].concat(A.backtrack);for(o.reverse();o.length&&Lt(o[0].char);)o.shift();if(o.length<e.backtrackCoverage.length)return[];var g=new Gt(o,0),I=Ht(e.backtrackCoverage,g),Q=[];if(i.length===e.inputCoverage.length&&a.length===e.lookaheadCoverage.length&&I.length===e.backtrackCoverage.length)for(var C=0;C<e.lookupRecords.length;C++)for(var c=e.lookupRecords[C].lookupListIndex,B=this.getLookupByIndex(c),l=0;l<B.subtables.length;l++){var E=B.subtables[l],u=this.getLookupMethod(B,E);if("12"===this.getSubstitutionType(B,E))for(var f=0;f<i.length;f++){var h=u(A.get(f));h&&Q.push(h)}}return Q}function Pt(A,e){var t,i=Ot(A.current,e.coverage);if(-1===i)return null;for(var n=e.ligatureSets[i],r=0;r<n.length;r++){t=n[r];for(var s=0;s<t.components.length;s++){if(A.lookahead[s]!==t.components[s])break;if(s===t.components.length-1)return t}}return null}function _t(A,e){var t=Ot(A,e.coverage);return-1===t?null:e.sequences[t]}Ke.prototype.exec=function(A,e){if("number"!=typeof e)throw new Error("Point size is not a number!");if(!(this._errorState>2)){var t=this.font,i=this._prepState;if(!i||i.ppem!==e){var n=this._fpgmState;if(!n){it.prototype=tt,(n=this._fpgmState=new it("fpgm",t.tables.fpgm)).funcs=[],n.font=t,exports.DEBUG&&(console.log("---EXEC FPGM---"),n.step=-1);try{ze(n)}catch(A){return console.log("Hinting error in FPGM:"+A),void(this._errorState=3)}}it.prototype=n,(i=this._prepState=new it("prep",t.tables.prep)).ppem=e;var r=t.tables.cvt;if(r)for(var s=i.cvt=new Array(r.length),a=e/t.unitsPerEm,o=0;o<r.length;o++)s[o]=r[o]*a;else i.cvt=[];exports.DEBUG&&(console.log("---EXEC PREP---"),i.step=-1);try{ze(i)}catch(A){this._errorState<2&&console.log("Hinting error in PREP:"+A),this._errorState=2}}if(!(this._errorState>1))try{return Je(A,i)}catch(A){return this._errorState<1&&(console.log("Hinting error:"+A),console.log("Note: further hinting errors are silenced")),void(this._errorState=1)}}},Je=function(A,e){var t,i,n,r=e.ppem/e.font.unitsPerEm,s=r,a=A.components;if(it.prototype=e,a){var o=e.font;i=[],t=[];for(var g=0;g<a.length;g++){var I=a[g],Q=o.glyphs.get(I.glyphIndex);n=new it("glyf",Q.instructions),exports.DEBUG&&(console.log("---EXEC COMP "+g+"---"),n.step=-1),qe(Q,n,r,s);for(var C=Math.round(I.dx*r),c=Math.round(I.dy*s),B=n.gZone,l=n.contours,E=0;E<B.length;E++){var u=B[E];u.xTouched=u.yTouched=!1,u.xo=u.x=u.x+C,u.yo=u.y=u.y+c}var f=i.length;i.push.apply(i,B);for(var h=0;h<l.length;h++)t.push(l[h]+f)}A.instructions&&!n.inhibitGridFit&&((n=new it("glyf",A.instructions)).gZone=n.z0=n.z1=n.z2=i,n.contours=t,i.push(new At(0,0),new At(Math.round(A.advanceWidth*r),0)),exports.DEBUG&&(console.log("---EXEC COMPOSITE---"),n.step=-1),ze(n),i.length-=2)}else n=new it("glyf",A.instructions),exports.DEBUG&&(console.log("---EXEC GLYPH---"),n.step=-1),qe(A,n,r,s),i=n.gZone;return i},qe=function(A,e,t,i){for(var n,r,s,a=A.points||[],o=a.length,g=e.gZone=e.z0=e.z1=e.z2=[],I=e.contours=[],Q=0;Q<o;Q++)n=a[Q],g[Q]=new At(n.x*t,n.y*i,n.lastPointOfContour,n.onCurve);for(var C=0;C<o;C++)n=g[C],r||(r=n,I.push(C)),n.lastPointOfContour?(n.nextPointOnContour=r,r.prevPointOnContour=n,r=void 0):(s=g[C+1],n.nextPointOnContour=s,s.prevPointOnContour=n);if(!e.inhibitGridFit){if(exports.DEBUG){console.log("PROCESSING GLYPH",e.stack);for(var c=0;c<o;c++)console.log(c,g[c].x,g[c].y)}if(g.push(new At(0,0),new At(Math.round(A.advanceWidth*t),0)),ze(e),g.length-=2,exports.DEBUG){console.log("FINISHED GLYPH",e.stack);for(var B=0;B<o;B++)console.log(B,g[B].x,g[B].y)}}},ze=function(A){var e=A.prog;if(e){var t,i=e.length;for(A.ip=0;A.ip<i;A.ip++){if(exports.DEBUG&&A.step++,!(t=Le[e[A.ip]]))throw new Error("unknown instruction: 0x"+Number(e[A.ip]).toString(16));t(A)}}},Le=[st.bind(void 0,je),st.bind(void 0,We),at.bind(void 0,je),at.bind(void 0,We),ot.bind(void 0,je),ot.bind(void 0,We),gt.bind(void 0,0),gt.bind(void 0,1),It.bind(void 0,0),It.bind(void 0,1),function(A){var e=A.stack,t=e.pop(),i=e.pop();exports.DEBUG&&console.log(A.step,"SPVFS[]",t,i),A.pv=A.dpv=$e(i,t)},function(A){var e=A.stack,t=e.pop(),i=e.pop();exports.DEBUG&&console.log(A.step,"SPVFS[]",t,i),A.fv=$e(i,t)},function(A){var e=A.stack,t=A.pv;exports.DEBUG&&console.log(A.step,"GPV[]"),e.push(16384*t.x),e.push(16384*t.y)},function(A){var e=A.stack,t=A.fv;exports.DEBUG&&console.log(A.step,"GFV[]"),e.push(16384*t.x),e.push(16384*t.y)},function(A){A.fv=A.pv,exports.DEBUG&&console.log(A.step,"SFVTPV[]")},function(A){var e=A.stack,t=e.pop(),i=e.pop(),n=e.pop(),r=e.pop(),s=e.pop(),a=A.z0,o=A.z1,g=a[t],I=a[i],Q=o[n],C=o[r],c=A.z2[s];exports.DEBUG&&console.log("ISECT[], ",t,i,n,r,s);var B=g.x,l=g.y,E=I.x,u=I.y,f=Q.x,h=Q.y,p=C.x,y=C.y,d=(B-E)*(h-y)-(l-u)*(f-p),m=B*u-l*E,b=f*y-h*p;c.x=(m*(f-p)-b*(B-E))/d,c.y=(m*(h-y)-b*(l-u))/d},function(A){A.rp0=A.stack.pop(),exports.DEBUG&&console.log(A.step,"SRP0[]",A.rp0)},function(A){A.rp1=A.stack.pop(),exports.DEBUG&&console.log(A.step,"SRP1[]",A.rp1)},function(A){A.rp2=A.stack.pop(),exports.DEBUG&&console.log(A.step,"SRP2[]",A.rp2)},function(A){var e=A.stack.pop();switch(exports.DEBUG&&console.log(A.step,"SZP0[]",e),A.zp0=e,e){case 0:A.tZone||nt(A),A.z0=A.tZone;break;case 1:A.z0=A.gZone;break;default:throw new Error("Invalid zone pointer")}},function(A){var e=A.stack.pop();switch(exports.DEBUG&&console.log(A.step,"SZP1[]",e),A.zp1=e,e){case 0:A.tZone||nt(A),A.z1=A.tZone;break;case 1:A.z1=A.gZone;break;default:throw new Error("Invalid zone pointer")}},function(A){var e=A.stack.pop();switch(exports.DEBUG&&console.log(A.step,"SZP2[]",e),A.zp2=e,e){case 0:A.tZone||nt(A),A.z2=A.tZone;break;case 1:A.z2=A.gZone;break;default:throw new Error("Invalid zone pointer")}},function(A){var e=A.stack.pop();switch(exports.DEBUG&&console.log(A.step,"SZPS[]",e),A.zp0=A.zp1=A.zp2=e,e){case 0:A.tZone||nt(A),A.z0=A.z1=A.z2=A.tZone;break;case 1:A.z0=A.z1=A.z2=A.gZone;break;default:throw new Error("Invalid zone pointer")}},function(A){A.loop=A.stack.pop(),exports.DEBUG&&console.log(A.step,"SLOOP[]",A.loop)},function(A){exports.DEBUG&&console.log(A.step,"RTG[]"),A.round=He},function(A){exports.DEBUG&&console.log(A.step,"RTHG[]"),A.round=Pe},function(A){var e=A.stack.pop();exports.DEBUG&&console.log(A.step,"SMD[]",e),A.minDis=e/64},function(A){exports.DEBUG&&console.log(A.step,"ELSE[]"),rt(A,!1)},function(A){var e=A.stack.pop();exports.DEBUG&&console.log(A.step,"JMPR[]",e),A.ip+=e-1},function(A){var e=A.stack.pop();exports.DEBUG&&console.log(A.step,"SCVTCI[]",e),A.cvCutIn=e/64},void 0,void 0,function(A){var e=A.stack;exports.DEBUG&&console.log(A.step,"DUP[]"),e.push(e[e.length-1])},Qt,function(A){exports.DEBUG&&console.log(A.step,"CLEAR[]"),A.stack.length=0},function(A){var e=A.stack,t=e.pop(),i=e.pop();exports.DEBUG&&console.log(A.step,"SWAP[]"),e.push(t),e.push(i)},function(A){var e=A.stack;exports.DEBUG&&console.log(A.step,"DEPTH[]"),e.push(e.length)},function(A){var e=A.stack,t=e.pop();exports.DEBUG&&console.log(A.step,"CINDEX[]",t),e.push(e[e.length-t])},function(A){var e=A.stack,t=e.pop();exports.DEBUG&&console.log(A.step,"MINDEX[]",t),e.push(e.splice(e.length-t,1)[0])},void 0,void 0,void 0,function(A){var e=A.stack,t=e.pop(),i=e.pop();exports.DEBUG&&console.log(A.step,"LOOPCALL[]",t,i);var n=A.ip,r=A.prog;A.prog=A.funcs[t];for(var s=0;s<i;s++)ze(A),exports.DEBUG&&console.log(++A.step,s+1<i?"next loopcall":"done loopcall",s);A.ip=n,A.prog=r},function(A){var e=A.stack.pop();exports.DEBUG&&console.log(A.step,"CALL[]",e);var t=A.ip,i=A.prog;A.prog=A.funcs[e],ze(A),A.ip=t,A.prog=i,exports.DEBUG&&console.log(++A.step,"returning from",e)},function(A){if("fpgm"!==A.env)throw new Error("FDEF not allowed here");var e=A.stack,t=A.prog,i=A.ip,n=e.pop(),r=i;for(exports.DEBUG&&console.log(A.step,"FDEF[]",n);45!==t[++i];);A.ip=i,A.funcs[n]=t.slice(r+1,i)},void 0,Ct.bind(void 0,0),Ct.bind(void 0,1),ct.bind(void 0,je),ct.bind(void 0,We),Bt.bind(void 0,0),Bt.bind(void 0,1),lt.bind(void 0,0),lt.bind(void 0,1),Et.bind(void 0,0),Et.bind(void 0,1),function(A){for(var e=A.stack,t=A.loop,i=A.fv,n=e.pop()/64,r=A.z2;t--;){var s=e.pop(),a=r[s];exports.DEBUG&&console.log(A.step,(A.loop>1?"loop "+(A.loop-t)+": ":"")+"SHPIX[]",s,n),i.setRelative(a,a,n),i.touch(a)}A.loop=1},function(A){for(var e=A.stack,t=A.rp1,i=A.rp2,n=A.loop,r=A.z0[t],s=A.z1[i],a=A.fv,o=A.dpv,g=A.z2;n--;){var I=e.pop(),Q=g[I];exports.DEBUG&&console.log(A.step,(A.loop>1?"loop "+(A.loop-n)+": ":"")+"IP[]",I,t,"<->",i),a.interpolate(Q,r,s,o),a.touch(Q)}A.loop=1},ut.bind(void 0,0),ut.bind(void 0,1),function(A){for(var e=A.stack,t=A.rp0,i=A.z0[t],n=A.loop,r=A.fv,s=A.pv,a=A.z1;n--;){var o=e.pop(),g=a[o];exports.DEBUG&&console.log(A.step,(A.loop>1?"loop "+(A.loop-n)+": ":"")+"ALIGNRP[]",o),r.setRelative(g,i,0,s),r.touch(g)}A.loop=1},function(A){exports.DEBUG&&console.log(A.step,"RTDG[]"),A.round=Ye},ft.bind(void 0,0),ft.bind(void 0,1),function(A){var e=A.prog,t=A.ip,i=A.stack,n=e[++t];exports.DEBUG&&console.log(A.step,"NPUSHB[]",n);for(var r=0;r<n;r++)i.push(e[++t]);A.ip=t},function(A){var e=A.ip,t=A.prog,i=A.stack,n=t[++e];exports.DEBUG&&console.log(A.step,"NPUSHW[]",n);for(var r=0;r<n;r++){var s=t[++e]<<8|t[++e];32768&s&&(s=-(1+(65535^s))),i.push(s)}A.ip=e},function(A){var e=A.stack,t=A.store;t||(t=A.store=[]);var i=e.pop(),n=e.pop();exports.DEBUG&&console.log(A.step,"WS",i,n),t[n]=i},function(A){var e=A.stack,t=A.store,i=e.pop();exports.DEBUG&&console.log(A.step,"RS",i);var n=t&&t[i]||0;e.push(n)},function(A){var e=A.stack,t=e.pop(),i=e.pop();exports.DEBUG&&console.log(A.step,"WCVTP",t,i),A.cvt[i]=t/64},function(A){var e=A.stack,t=e.pop();exports.DEBUG&&console.log(A.step,"RCVT",t),e.push(64*A.cvt[t])},ht.bind(void 0,0),ht.bind(void 0,1),void 0,pt.bind(void 0,0),pt.bind(void 0,1),function(A){exports.DEBUG&&console.log(A.step,"MPPEM[]"),A.stack.push(A.ppem)},void 0,function(A){exports.DEBUG&&console.log(A.step,"FLIPON[]"),A.autoFlip=!0},void 0,void 0,function(A){var e=A.stack,t=e.pop(),i=e.pop();exports.DEBUG&&console.log(A.step,"LT[]",t,i),e.push(i<t?1:0)},function(A){var e=A.stack,t=e.pop(),i=e.pop();exports.DEBUG&&console.log(A.step,"LTEQ[]",t,i),e.push(i<=t?1:0)},function(A){var e=A.stack,t=e.pop(),i=e.pop();exports.DEBUG&&console.log(A.step,"GT[]",t,i),e.push(i>t?1:0)},function(A){var e=A.stack,t=e.pop(),i=e.pop();exports.DEBUG&&console.log(A.step,"GTEQ[]",t,i),e.push(i>=t?1:0)},function(A){var e=A.stack,t=e.pop(),i=e.pop();exports.DEBUG&&console.log(A.step,"EQ[]",t,i),e.push(t===i?1:0)},function(A){var e=A.stack,t=e.pop(),i=e.pop();exports.DEBUG&&console.log(A.step,"NEQ[]",t,i),e.push(t!==i?1:0)},function(A){var e=A.stack,t=e.pop();exports.DEBUG&&console.log(A.step,"ODD[]",t),e.push(Math.trunc(t)%2?1:0)},function(A){var e=A.stack,t=e.pop();exports.DEBUG&&console.log(A.step,"EVEN[]",t),e.push(Math.trunc(t)%2?0:1)},function(A){var e=A.stack.pop();exports.DEBUG&&console.log(A.step,"IF[]",e),e||(rt(A,!0),exports.DEBUG&&console.log(A.step,"EIF[]"))},function(A){exports.DEBUG&&console.log(A.step,"EIF[]")},function(A){var e=A.stack,t=e.pop(),i=e.pop();exports.DEBUG&&console.log(A.step,"AND[]",t,i),e.push(t&&i?1:0)},function(A){var e=A.stack,t=e.pop(),i=e.pop();exports.DEBUG&&console.log(A.step,"OR[]",t,i),e.push(t||i?1:0)},function(A){var e=A.stack,t=e.pop();exports.DEBUG&&console.log(A.step,"NOT[]",t),e.push(t?0:1)},yt.bind(void 0,1),function(A){var e=A.stack.pop();exports.DEBUG&&console.log(A.step,"SDB[]",e),A.deltaBase=e},function(A){var e=A.stack.pop();exports.DEBUG&&console.log(A.step,"SDS[]",e),A.deltaShift=Math.pow(.5,e)},function(A){var e=A.stack,t=e.pop(),i=e.pop();exports.DEBUG&&console.log(A.step,"ADD[]",t,i),e.push(i+t)},function(A){var e=A.stack,t=e.pop(),i=e.pop();exports.DEBUG&&console.log(A.step,"SUB[]",t,i),e.push(i-t)},function(A){var e=A.stack,t=e.pop(),i=e.pop();exports.DEBUG&&console.log(A.step,"DIV[]",t,i),e.push(64*i/t)},function(A){var e=A.stack,t=e.pop(),i=e.pop();exports.DEBUG&&console.log(A.step,"MUL[]",t,i),e.push(i*t/64)},function(A){var e=A.stack,t=e.pop();exports.DEBUG&&console.log(A.step,"ABS[]",t),e.push(Math.abs(t))},function(A){var e=A.stack,t=e.pop();exports.DEBUG&&console.log(A.step,"NEG[]",t),e.push(-t)},function(A){var e=A.stack,t=e.pop();exports.DEBUG&&console.log(A.step,"FLOOR[]",t),e.push(64*Math.floor(t/64))},function(A){var e=A.stack,t=e.pop();exports.DEBUG&&console.log(A.step,"CEILING[]",t),e.push(64*Math.ceil(t/64))},dt.bind(void 0,0),dt.bind(void 0,1),dt.bind(void 0,2),dt.bind(void 0,3),void 0,void 0,void 0,void 0,function(A){var e=A.stack,t=e.pop(),i=e.pop();exports.DEBUG&&console.log(A.step,"WCVTF[]",t,i),A.cvt[i]=t*A.ppem/A.font.unitsPerEm},yt.bind(void 0,2),yt.bind(void 0,3),mt.bind(void 0,1),mt.bind(void 0,2),mt.bind(void 0,3),function(A){var e,t=A.stack.pop();switch(exports.DEBUG&&console.log(A.step,"SROUND[]",t),A.round=Xe,192&t){case 0:e=.5;break;case 64:e=1;break;case 128:e=2;break;default:throw new Error("invalid SROUND value")}switch(A.srPeriod=e,48&t){case 0:A.srPhase=0;break;case 16:A.srPhase=.25*e;break;case 32:A.srPhase=.5*e;break;case 48:A.srPhase=.75*e;break;default:throw new Error("invalid SROUND value")}t&=15,A.srThreshold=0===t?0:(t/8-.5)*e},function(A){var e,t=A.stack.pop();switch(exports.DEBUG&&console.log(A.step,"S45ROUND[]",t),A.round=Xe,192&t){case 0:e=Math.sqrt(2)/2;break;case 64:e=Math.sqrt(2);break;case 128:e=2*Math.sqrt(2);break;default:throw new Error("invalid S45ROUND value")}switch(A.srPeriod=e,48&t){case 0:A.srPhase=0;break;case 16:A.srPhase=.25*e;break;case 32:A.srPhase=.5*e;break;case 48:A.srPhase=.75*e;break;default:throw new Error("invalid S45ROUND value")}t&=15,A.srThreshold=0===t?0:(t/8-.5)*e},void 0,void 0,function(A){exports.DEBUG&&console.log(A.step,"ROFF[]"),A.round=Te},void 0,function(A){exports.DEBUG&&console.log(A.step,"RUTG[]"),A.round=_e},function(A){exports.DEBUG&&console.log(A.step,"RDTG[]"),A.round=Ve},Qt,Qt,void 0,void 0,void 0,void 0,void 0,function(A){var e=A.stack.pop();exports.DEBUG&&console.log(A.step,"SCANCTRL[]",e)},bt.bind(void 0,0),bt.bind(void 0,1),function(A){var e=A.stack,t=e.pop(),i=0;exports.DEBUG&&console.log(A.step,"GETINFO[]",t),1&t&&(i=35),32&t&&(i|=4096),e.push(i)},void 0,function(A){var e=A.stack,t=e.pop(),i=e.pop(),n=e.pop();exports.DEBUG&&console.log(A.step,"ROLL[]"),e.push(i),e.push(t),e.push(n)},function(A){var e=A.stack,t=e.pop(),i=e.pop();exports.DEBUG&&console.log(A.step,"MAX[]",t,i),e.push(Math.max(i,t))},function(A){var e=A.stack,t=e.pop(),i=e.pop();exports.DEBUG&&console.log(A.step,"MIN[]",t,i),e.push(Math.min(i,t))},function(A){var e=A.stack.pop();exports.DEBUG&&console.log(A.step,"SCANTYPE[]",e)},function(A){var e=A.stack.pop(),t=A.stack.pop();switch(exports.DEBUG&&console.log(A.step,"INSTCTRL[]",e,t),e){case 1:return void(A.inhibitGridFit=!!t);case 2:return void(A.ignoreCvt=!!t);default:throw new Error("invalid INSTCTRL[] selector")}},void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,Dt.bind(void 0,1),Dt.bind(void 0,2),Dt.bind(void 0,3),Dt.bind(void 0,4),Dt.bind(void 0,5),Dt.bind(void 0,6),Dt.bind(void 0,7),Dt.bind(void 0,8),St.bind(void 0,1),St.bind(void 0,2),St.bind(void 0,3),St.bind(void 0,4),St.bind(void 0,5),St.bind(void 0,6),St.bind(void 0,7),St.bind(void 0,8),wt.bind(void 0,0,0,0,0,0),wt.bind(void 0,0,0,0,0,1),wt.bind(void 0,0,0,0,0,2),wt.bind(void 0,0,0,0,0,3),wt.bind(void 0,0,0,0,1,0),wt.bind(void 0,0,0,0,1,1),wt.bind(void 0,0,0,0,1,2),wt.bind(void 0,0,0,0,1,3),wt.bind(void 0,0,0,1,0,0),wt.bind(void 0,0,0,1,0,1),wt.bind(void 0,0,0,1,0,2),wt.bind(void 0,0,0,1,0,3),wt.bind(void 0,0,0,1,1,0),wt.bind(void 0,0,0,1,1,1),wt.bind(void 0,0,0,1,1,2),wt.bind(void 0,0,0,1,1,3),wt.bind(void 0,0,1,0,0,0),wt.bind(void 0,0,1,0,0,1),wt.bind(void 0,0,1,0,0,2),wt.bind(void 0,0,1,0,0,3),wt.bind(void 0,0,1,0,1,0),wt.bind(void 0,0,1,0,1,1),wt.bind(void 0,0,1,0,1,2),wt.bind(void 0,0,1,0,1,3),wt.bind(void 0,0,1,1,0,0),wt.bind(void 0,0,1,1,0,1),wt.bind(void 0,0,1,1,0,2),wt.bind(void 0,0,1,1,0,3),wt.bind(void 0,0,1,1,1,0),wt.bind(void 0,0,1,1,1,1),wt.bind(void 0,0,1,1,1,2),wt.bind(void 0,0,1,1,1,3),wt.bind(void 0,1,0,0,0,0),wt.bind(void 0,1,0,0,0,1),wt.bind(void 0,1,0,0,0,2),wt.bind(void 0,1,0,0,0,3),wt.bind(void 0,1,0,0,1,0),wt.bind(void 0,1,0,0,1,1),wt.bind(void 0,1,0,0,1,2),wt.bind(void 0,1,0,0,1,3),wt.bind(void 0,1,0,1,0,0),wt.bind(void 0,1,0,1,0,1),wt.bind(void 0,1,0,1,0,2),wt.bind(void 0,1,0,1,0,3),wt.bind(void 0,1,0,1,1,0),wt.bind(void 0,1,0,1,1,1),wt.bind(void 0,1,0,1,1,2),wt.bind(void 0,1,0,1,1,3),wt.bind(void 0,1,1,0,0,0),wt.bind(void 0,1,1,0,0,1),wt.bind(void 0,1,1,0,0,2),wt.bind(void 0,1,1,0,0,3),wt.bind(void 0,1,1,0,1,0),wt.bind(void 0,1,1,0,1,1),wt.bind(void 0,1,1,0,1,2),wt.bind(void 0,1,1,0,1,3),wt.bind(void 0,1,1,1,0,0),wt.bind(void 0,1,1,1,0,1),wt.bind(void 0,1,1,1,0,2),wt.bind(void 0,1,1,1,0,3),wt.bind(void 0,1,1,1,1,0),wt.bind(void 0,1,1,1,1,1),wt.bind(void 0,1,1,1,1,2),wt.bind(void 0,1,1,1,1,3)],vt.prototype.setState=function(A,e){return this.state[A]=e,this.activeState={key:A,value:this.state[A]},this.activeState},vt.prototype.getState=function(A){return this.state[A]||null},Ft.prototype.inboundIndex=function(A){return A>=0&&A<this.tokens.length},Ft.prototype.composeRUD=function(A){var e=this,t=A.map((function(A){return e[A[0]].apply(e,A.slice(1).concat(true))})),i=function(A){return"object"==typeof A&&A.hasOwnProperty("FAIL")};if(t.every(i))return{FAIL:"composeRUD: one or more operations hasn't completed successfully",report:t.filter(i)};this.dispatch("composeRUD",[t.filter((function(A){return!i(A)}))])},Ft.prototype.replaceRange=function(A,e,t,i){e=null!==e?e:this.tokens.length;var n=t.every((function(A){return A instanceof vt}));if(!isNaN(A)&&this.inboundIndex(A)&&n){var r=this.tokens.splice.apply(this.tokens,[A,e].concat(t));return i||this.dispatch("replaceToken",[A,e,t]),[r,t]}return{FAIL:"replaceRange: invalid tokens or startIndex."}},Ft.prototype.replaceToken=function(A,e,t){if(!isNaN(A)&&this.inboundIndex(A)&&e instanceof vt){var i=this.tokens.splice(A,1,e);return t||this.dispatch("replaceToken",[A,e]),[i[0],e]}return{FAIL:"replaceToken: invalid token or index."}},Ft.prototype.removeRange=function(A,e,t){e=isNaN(e)?this.tokens.length:e;var i=this.tokens.splice(A,e);return t||this.dispatch("removeRange",[i,A,e]),i},Ft.prototype.removeToken=function(A,e){if(!isNaN(A)&&this.inboundIndex(A)){var t=this.tokens.splice(A,1);return e||this.dispatch("removeToken",[t,A]),t}return{FAIL:"removeToken: invalid token index."}},Ft.prototype.insertToken=function(A,e,t){return A.every((function(A){return A instanceof vt}))?(this.tokens.splice.apply(this.tokens,[e,0].concat(A)),t||this.dispatch("insertToken",[A,e]),A):{FAIL:"insertToken: invalid token(s)."}},Ft.prototype.registerModifier=function(A,e,t){this.events.newToken.subscribe((function(i,n){var r=[i,n],s=[i,n];if(null===e||!0===e.apply(this,r)){var a=t.apply(this,s);i.setState(A,a)}})),this.registeredModifiers.push(A)},Ut.prototype.subscribe=function(A){return"function"==typeof A?this.subscribers.push(A)-1:{FAIL:"invalid '"+this.eventId+"' event handler"}},Ut.prototype.unsubscribe=function(A){this.subscribers.splice(A,1)},Gt.prototype.setCurrentIndex=function(A){this.index=A,this.current=this.context[A],this.backtrack=this.context.slice(0,A),this.lookahead=this.context.slice(A+1)},Gt.prototype.get=function(A){switch(!0){case 0===A:return this.current;case A<0&&Math.abs(A)<=this.backtrack.length:return this.backtrack.slice(A)[0];case A>0&&A<=this.lookahead.length:return this.lookahead[A-1];default:return null}},Ft.prototype.rangeToText=function(A){if(A instanceof kt)return this.getRangeTokens(A).map((function(A){return A.char})).join("")},Ft.prototype.getText=function(){return this.tokens.map((function(A){return A.char})).join("")},Ft.prototype.getContext=function(A){var e=this.registeredContexts[A];return e||null},Ft.prototype.on=function(A,e){var t=this.events[A];return t?t.subscribe(e):null},Ft.prototype.dispatch=function(A,e){var t=this,i=this.events[A];i instanceof Ut&&i.subscribers.forEach((function(A){A.apply(t,e||[])}))},Ft.prototype.registerContextChecker=function(A,e,t){if(this.getContext(A))return{FAIL:"context name '"+A+"' is already registered."};if("function"!=typeof e)return{FAIL:"missing context start check."};if("function"!=typeof t)return{FAIL:"missing context end check."};var i=new xt(A,e,t);return this.registeredContexts[A]=i,this.contextCheckers.push(i),i},Ft.prototype.getRangeTokens=function(A){var e=A.startIndex+A.endOffset;return[].concat(this.tokens.slice(A.startIndex,e))},Ft.prototype.getContextRanges=function(A){var e=this.getContext(A);return e?e.ranges:{FAIL:"context checker '"+A+"' is not registered."}},Ft.prototype.resetContextsRanges=function(){var A=this.registeredContexts;for(var e in A){if(A.hasOwnProperty(e))A[e].ranges=[]}},Ft.prototype.updateContextsRanges=function(){this.resetContextsRanges();for(var A=this.tokens.map((function(A){return A.char})),e=0;e<A.length;e++){var t=new Gt(A,e);this.runContextCheck(t)}this.dispatch("updateContextsRanges",[this.registeredContexts])},Ft.prototype.setEndOffset=function(A,e){var t=new kt(this.getContext(e).openRange.startIndex,A,e),i=this.getContext(e).ranges;return t.rangeId=e+"."+i.length,i.push(t),this.getContext(e).openRange=null,t},Ft.prototype.runContextCheck=function(A){var e=this,t=A.index;this.contextCheckers.forEach((function(i){var n=i.contextName,r=e.getContext(n).openRange;if(!r&&i.checkStart(A)&&(r=new kt(t,null,n),e.getContext(n).openRange=r,e.dispatch("contextStart",[n,t])),r&&i.checkEnd(A)){var s=t-r.startIndex+1,a=e.setEndOffset(s,n);e.dispatch("contextEnd",[n,a])}}))},Ft.prototype.tokenize=function(A){this.tokens=[],this.resetContextsRanges();var e=Array.from(A);this.dispatch("start");for(var t=0;t<e.length;t++){var i=e[t],n=new Gt(e,t);this.dispatch("next",[n]),this.runContextCheck(n);var r=new vt(i);this.tokens.push(r),this.dispatch("newToken",[r,n])}return this.dispatch("end",[this.tokens]),this.tokens},Jt.prototype.getDefaultScriptFeaturesIndexes=function(){for(var A=this.font.tables.gsub.scripts,e=0;e<A.length;e++){var t=A[e];if("DFLT"===t.tag)return t.script.defaultLangSys.featureIndexes}return[]},Jt.prototype.getScriptFeaturesIndexes=function(A){if(!this.font.tables.gsub)return[];if(!A)return this.getDefaultScriptFeaturesIndexes();for(var e=this.font.tables.gsub.scripts,t=0;t<e.length;t++){var i=e[t];if(i.tag===A&&i.script.defaultLangSys)return i.script.defaultLangSys.featureIndexes;var n=i.langSysRecords;if(n)for(var r=0;r<n.length;r++){var s=n[r];if(s.tag===A)return s.langSys.featureIndexes}}return this.getDefaultScriptFeaturesIndexes()},Jt.prototype.mapTagsToFeatures=function(A,e){for(var t={},i=0;i<A.length;i++){var n=A[i].tag,r=A[i].feature;t[n]=r}this.features[e].tags=t},Jt.prototype.getScriptFeatures=function(A){var e=this.features[A];if(this.features.hasOwnProperty(A))return e;var t=this.getScriptFeaturesIndexes(A);if(!t)return null;var i=this.font.tables.gsub;return e=t.map((function(A){return i.features[A]})),this.features[A]=e,this.mapTagsToFeatures(e,A),e},Jt.prototype.getSubstitutionType=function(A,e){return A.lookupType.toString()+e.substFormat.toString()},Jt.prototype.getLookupMethod=function(A,e){var t=this;switch(this.getSubstitutionType(A,e)){case"11":return function(A){return Kt.apply(t,[A,e])};case"12":return function(A){return Tt.apply(t,[A,e])};case"63":return function(A){return Yt.apply(t,[A,e])};case"41":return function(A){return Pt.apply(t,[A,e])};case"21":return function(A){return _t.apply(t,[A,e])};default:throw new Error("lookupType: "+A.lookupType+" - substFormat: "+e.substFormat+" is not yet supported")}},Jt.prototype.lookupFeature=function(A){var e=A.contextParams,t=e.index,i=this.getFeature({tag:A.tag,script:A.script});if(!i)return new Error("font '"+this.font.names.fullName.en+"' doesn't support feature '"+A.tag+"' for script '"+A.script+"'.");for(var n=this.getFeatureLookups(i),r=[].concat(e.context),s=0;s<n.length;s++)for(var a=n[s],o=this.getLookupSubtables(a),g=0;g<o.length;g++){var I=o[g],Q=this.getSubstitutionType(a,I),C=this.getLookupMethod(a,I),c=void 0;switch(Q){case"11":(c=C(e.current))&&r.splice(t,1,new qt({id:11,tag:A.tag,substitution:c}));break;case"12":(c=C(e.current))&&r.splice(t,1,new qt({id:12,tag:A.tag,substitution:c}));break;case"63":c=C(e),Array.isArray(c)&&c.length&&r.splice(t,1,new qt({id:63,tag:A.tag,substitution:c}));break;case"41":(c=C(e))&&r.splice(t,1,new qt({id:41,tag:A.tag,substitution:c}));break;case"21":(c=C(e.current))&&r.splice(t,1,new qt({id:21,tag:A.tag,substitution:c}))}e=new Gt(r,t),Array.isArray(c)&&!c.length||(c=null)}return r.length?r:null},Jt.prototype.supports=function(A){if(!A.script)return!1;this.getScriptFeatures(A.script);var e=this.features.hasOwnProperty(A.script);if(!A.tag)return e;var t=this.features[A.script].some((function(e){return e.tag===A.tag}));return e&&t},Jt.prototype.getLookupSubtables=function(A){return A.subtables||null},Jt.prototype.getLookupByIndex=function(A){return this.font.tables.gsub.lookups[A]||null},Jt.prototype.getFeatureLookups=function(A){return A.lookupListIndexes.map(this.getLookupByIndex.bind(this))},Jt.prototype.getFeature=function(A){if(!this.font)return{FAIL:"No font was found"};this.features.hasOwnProperty(A.script)||this.getScriptFeatures(A.script);var e=this.features[A.script];return e?e.tags[A.tag]?this.features[A.script].tags[A.tag]:null:{FAIL:"No feature for script "+A.script}};var Vt={startCheck:function(A){var e=A.current,t=A.get(-1);return null===t&&Mt(e)||!Mt(t)&&Mt(e)},endCheck:function(A){var e=A.get(1);return null===e||!Mt(e)}};var Xt={startCheck:function(A){var e=A.current,t=A.get(-1);return(Mt(e)||Lt(e))&&!Mt(t)},endCheck:function(A){var e=A.get(1);switch(!0){case null===e:return!0;case!Mt(e)&&!Lt(e):var t=/\s/.test(e);if(!t)return!0;if(t){var i;if(i=A.lookahead.some((function(A){return Mt(A)||Lt(A)})),!i)return!0}break;default:return!1}}};var Wt={11:function(A,e,t){e[t].setState(A.tag,A.substitution)},12:function(A,e,t){e[t].setState(A.tag,A.substitution)},63:function(A,e,t){A.substitution.forEach((function(i,n){e[t+n].setState(A.tag,i)}))},41:function(A,e,t){var i=e[t];i.setState(A.tag,A.substitution.ligGlyph);for(var n=A.substitution.components.length,r=0;r<n;r++)(i=e[t+r+1]).setState("deleted",!0)}};function jt(A,e,t){A instanceof qt&&Wt[A.id]&&Wt[A.id](A,e,t)}function Zt(A){var e=this,t="arab",i=this.featuresTags[t],n=this.tokenizer.getRangeTokens(A);if(1!==n.length){var r=new Gt(n.map((function(A){return A.getState("glyphIndex")})),0),s=new Gt(n.map((function(A){return A.char})),0);n.forEach((function(A,a){if(!Lt(A.char)){r.setCurrentIndex(a),s.setCurrentIndex(a);var o,g=0;switch(function(A){for(var e=[].concat(A.backtrack),t=e.length-1;t>=0;t--){var i=e[t],n=Rt(i),r=Lt(i);if(!n&&!r)return!0;if(n)return!1}return!1}(s)&&(g|=1),function(A){if(Rt(A.current))return!1;for(var e=0;e<A.lookahead.length;e++)if(!Lt(A.lookahead[e]))return!0;return!1}(s)&&(g|=2),g){case 1:o="fina";break;case 2:o="init";break;case 3:o="medi"}if(-1!==i.indexOf(o)){var I=e.query.lookupFeature({tag:o,script:t,contextParams:r});if(I instanceof Error)return console.info(I.message);I.forEach((function(A,e){A instanceof qt&&(jt(A,n,e),r.context[e]=A.substitution)}))}}}))}}function $t(A,e){return new Gt(A.map((function(A){return A.activeState.value})),e||0)}function Ai(A){var e=this,t=this.tokenizer.getRangeTokens(A),i=$t(t);i.context.forEach((function(A,n){i.setCurrentIndex(n);var r=e.query.lookupFeature({tag:"rlig",script:"arab",contextParams:i});r.length&&(r.forEach((function(A){return jt(A,t,n)})),i=$t(t))}))}var ei={startCheck:function(A){var e=A.current,t=A.get(-1);return null===t&&zt(e)||!zt(t)&&zt(e)},endCheck:function(A){var e=A.get(1);return null===e||!zt(e)}};function ti(A,e){return new Gt(A.map((function(A){return A.activeState.value})),e||0)}function ii(A){var e=this,t=this.tokenizer.getRangeTokens(A),i=ti(t);i.context.forEach((function(A,n){i.setCurrentIndex(n);var r=e.query.lookupFeature({tag:"liga",script:"latn",contextParams:i});r.length&&(r.forEach((function(A){return jt(A,t,n)})),i=ti(t))}))}function ni(A){this.baseDir=A||"ltr",this.tokenizer=new Ft,this.featuresTags={}}function ri(A){var e=this.contextChecks[A+"Check"];return this.tokenizer.registerContextChecker(A,e.startCheck,e.endCheck)}function si(){return ri.call(this,"latinWord"),ri.call(this,"arabicWord"),ri.call(this,"arabicSentence"),this.tokenizer.tokenize(this.text)}function ai(){var A=this;this.tokenizer.getContextRanges("arabicSentence").forEach((function(e){var t=A.tokenizer.getRangeTokens(e);A.tokenizer.replaceRange(e.startIndex,e.endOffset,t.reverse())}))}function oi(){if(-1===this.tokenizer.registeredModifiers.indexOf("glyphIndex"))throw new Error("glyphIndex modifier is required to apply arabic presentation features.")}function gi(){var A=this;this.featuresTags.hasOwnProperty("arab")&&(oi.call(this),this.tokenizer.getContextRanges("arabicWord").forEach((function(e){Zt.call(A,e)})))}function Ii(){var A=this,e="arab";this.featuresTags.hasOwnProperty(e)&&(-1!==this.featuresTags[e].indexOf("rlig")&&(oi.call(this),this.tokenizer.getContextRanges("arabicWord").forEach((function(e){Ai.call(A,e)}))))}function Qi(){var A=this,e="latn";this.featuresTags.hasOwnProperty(e)&&(-1!==this.featuresTags[e].indexOf("liga")&&(oi.call(this),this.tokenizer.getContextRanges("latinWord").forEach((function(e){ii.call(A,e)}))))}function Ci(A){(A=A||{}).tables=A.tables||{},A.empty||(Ge(A.familyName,"When creating a new Font object, familyName is required."),Ge(A.styleName,"When creating a new Font object, styleName is required."),Ge(A.unitsPerEm,"When creating a new Font object, unitsPerEm is required."),Ge(A.ascender,"When creating a new Font object, ascender is required."),Ge(A.descender<=0,"When creating a new Font object, negative descender value is required."),this.names={fontFamily:{en:A.familyName||" "},fontSubfamily:{en:A.styleName||" "},fullName:{en:A.fullName||A.familyName+" "+A.styleName},postScriptName:{en:A.postScriptName||(A.familyName+A.styleName).replace(/\s/g,"")},designer:{en:A.designer||" "},designerURL:{en:A.designerURL||" "},manufacturer:{en:A.manufacturer||" "},manufacturerURL:{en:A.manufacturerURL||" "},license:{en:A.license||" "},licenseURL:{en:A.licenseURL||" "},version:{en:A.version||"Version 0.1"},description:{en:A.description||" "},copyright:{en:A.copyright||" "},trademark:{en:A.trademark||" "}},this.unitsPerEm=A.unitsPerEm||1e3,this.ascender=A.ascender,this.descender=A.descender,this.createdTimestamp=A.createdTimestamp,this.tables=Object.assign(A.tables,{os2:Object.assign({usWeightClass:A.weightClass||this.usWeightClasses.MEDIUM,usWidthClass:A.widthClass||this.usWidthClasses.MEDIUM,fsSelection:A.fsSelection||this.fsSelectionValues.REGULAR},A.tables.os2)})),this.supported=!0,this.glyphs=new mA.GlyphSet(this,A.glyphs||[]),this.encoding=new BA(this),this.position=new Se(this),this.substitution=new we(this),this.tables=this.tables||{},this._push=null,this._hmtxTableData={},Object.defineProperty(this,"hinting",{get:function(){return this._hinting?this._hinting:"truetype"===this.outlinesFormat?this._hinting=new Ke(this):void 0}})}function ci(A,e){var t=JSON.stringify(A),i=256;for(var n in e){var r=parseInt(n);if(r&&!(r<256)){if(JSON.stringify(e[n])===t)return r;i<=r&&(i=r+1)}}return e[i]=A,i}function Bi(A,e,t){var i=ci(e.name,t);return[{name:"tag_"+A,type:"TAG",value:e.tag},{name:"minValue_"+A,type:"FIXED",value:e.minValue<<16},{name:"defaultValue_"+A,type:"FIXED",value:e.defaultValue<<16},{name:"maxValue_"+A,type:"FIXED",value:e.maxValue<<16},{name:"flags_"+A,type:"USHORT",value:0},{name:"nameID_"+A,type:"USHORT",value:i}]}function li(A,e,t){var i={},n=new aA.Parser(A,e);return i.tag=n.parseTag(),i.minValue=n.parseFixed(),i.defaultValue=n.parseFixed(),i.maxValue=n.parseFixed(),n.skip("uShort",1),i.name=t[n.parseUShort()]||{},i}function Ei(A,e,t,i){for(var n=[{name:"nameID_"+A,type:"USHORT",value:ci(e.name,i)},{name:"flags_"+A,type:"USHORT",value:0}],r=0;r<t.length;++r){var s=t[r].tag;n.push({name:"axis_"+A+" "+s,type:"FIXED",value:e.coordinates[s]<<16})}return n}function ui(A,e,t,i){var n={},r=new aA.Parser(A,e);n.name=i[r.parseUShort()]||{},r.skip("uShort",1),n.coordinates={};for(var s=0;s<t.length;++s)n.coordinates[t[s].tag]=r.parseFixed();return n}ni.prototype.setText=function(A){this.text=A},ni.prototype.contextChecks={latinWordCheck:ei,arabicWordCheck:Vt,arabicSentenceCheck:Xt},ni.prototype.registerFeatures=function(A,e){var t=this,i=e.filter((function(e){return t.query.supports({script:A,tag:e})}));this.featuresTags.hasOwnProperty(A)?this.featuresTags[A]=this.featuresTags[A].concat(i):this.featuresTags[A]=i},ni.prototype.applyFeatures=function(A,e){if(!A)throw new Error("No valid font was provided to apply features");this.query||(this.query=new Jt(A));for(var t=0;t<e.length;t++){var i=e[t];this.query.supports({script:i.script})&&this.registerFeatures(i.script,i.tags)}},ni.prototype.registerModifier=function(A,e,t){this.tokenizer.registerModifier(A,e,t)},ni.prototype.checkContextReady=function(A){return!!this.tokenizer.getContext(A)},ni.prototype.applyFeaturesToContexts=function(){this.checkContextReady("arabicWord")&&(gi.call(this),Ii.call(this)),this.checkContextReady("latinWord")&&Qi.call(this),this.checkContextReady("arabicSentence")&&ai.call(this)},ni.prototype.processText=function(A){this.text&&this.text===A||(this.setText(A),si.call(this),this.applyFeaturesToContexts())},ni.prototype.getBidiText=function(A){return this.processText(A),this.tokenizer.getText()},ni.prototype.getTextGlyphs=function(A){this.processText(A);for(var e=[],t=0;t<this.tokenizer.tokens.length;t++){var i=this.tokenizer.tokens[t];if(!i.state.deleted){var n=i.activeState.value;e.push(Array.isArray(n)?n[0]:n)}}return e},Ci.prototype.hasChar=function(A){return null!==this.encoding.charToGlyphIndex(A)},Ci.prototype.charToGlyphIndex=function(A){return this.encoding.charToGlyphIndex(A)},Ci.prototype.charToGlyph=function(A){var e=this.charToGlyphIndex(A),t=this.glyphs.get(e);return t||(t=this.glyphs.get(0)),t},Ci.prototype.updateFeatures=function(A){return this.defaultRenderOptions.features.map((function(e){return"latn"===e.script?{script:"latn",tags:e.tags.filter((function(e){return A[e]}))}:e}))},Ci.prototype.stringToGlyphs=function(A,e){var t=this,i=new ni;i.registerModifier("glyphIndex",null,(function(A){return t.charToGlyphIndex(A.char)}));var n=e?this.updateFeatures(e.features):this.defaultRenderOptions.features;i.applyFeatures(this,n);for(var r=i.getTextGlyphs(A),s=r.length,a=new Array(s),o=this.glyphs.get(0),g=0;g<s;g+=1)a[g]=this.glyphs.get(r[g])||o;return a},Ci.prototype.nameToGlyphIndex=function(A){return this.glyphNames.nameToGlyphIndex(A)},Ci.prototype.nameToGlyph=function(A){var e=this.nameToGlyphIndex(A),t=this.glyphs.get(e);return t||(t=this.glyphs.get(0)),t},Ci.prototype.glyphIndexToName=function(A){return this.glyphNames.glyphIndexToName?this.glyphNames.glyphIndexToName(A):""},Ci.prototype.getKerningValue=function(A,e){A=A.index||A,e=e.index||e;var t=this.position.defaultKerningTables;return t?this.position.getKerningValue(t,A,e):this.kerningPairs[A+","+e]||0},Ci.prototype.defaultRenderOptions={kerning:!0,features:[{script:"arab",tags:["init","medi","fina","rlig"]},{script:"latn",tags:["liga","rlig"]}]},Ci.prototype.forEachGlyph=function(A,e,t,i,n,r){e=void 0!==e?e:0,t=void 0!==t?t:0,i=void 0!==i?i:72,n=Object.assign({},this.defaultRenderOptions,n);var s,a=1/this.unitsPerEm*i,o=this.stringToGlyphs(A,n);if(n.kerning){var g=n.script||this.position.getDefaultScriptName();s=this.position.getKerningTables(g,n.language)}for(var I=0;I<o.length;I+=1){var Q=o[I];if(r.call(this,Q,e,t,i,n),Q.advanceWidth&&(e+=Q.advanceWidth*a),n.kerning&&I<o.length-1)e+=(s?this.position.getKerningValue(s,Q.index,o[I+1].index):this.getKerningValue(Q,o[I+1]))*a;n.letterSpacing?e+=n.letterSpacing*i:n.tracking&&(e+=n.tracking/1e3*i)}return e},Ci.prototype.getPath=function(A,e,t,i,n){var r=new v;return this.forEachGlyph(A,e,t,i,n,(function(A,e,t,i){var s=A.getPath(e,t,i,n,this);r.extend(s)})),r},Ci.prototype.getPaths=function(A,e,t,i,n){var r=[];return this.forEachGlyph(A,e,t,i,n,(function(A,e,t,i){var s=A.getPath(e,t,i,n,this);r.push(s)})),r},Ci.prototype.getAdvanceWidth=function(A,e,t){return this.forEachGlyph(A,0,0,e,t,(function(){}))},Ci.prototype.draw=function(A,e,t,i,n,r){this.getPath(e,t,i,n,r).draw(A)},Ci.prototype.drawPoints=function(A,e,t,i,n,r){this.forEachGlyph(e,t,i,n,r,(function(e,t,i,n){e.drawPoints(A,t,i,n)}))},Ci.prototype.drawMetrics=function(A,e,t,i,n,r){this.forEachGlyph(e,t,i,n,r,(function(e,t,i,n){e.drawMetrics(A,t,i,n)}))},Ci.prototype.getEnglishName=function(A){var e=this.names[A];if(e)return e.en},Ci.prototype.validate=function(){var A=this;function e(e){var t=A.getEnglishName(e);t&&t.trim().length}e("fontFamily"),e("weightName"),e("manufacturer"),e("copyright"),e("version"),this.unitsPerEm},Ci.prototype.toTables=function(){return ye.fontToTable(this)},Ci.prototype.toBuffer=function(){return console.warn("Font.toBuffer is deprecated. Use Font.toArrayBuffer instead."),this.toArrayBuffer()},Ci.prototype.toArrayBuffer=function(){for(var A=this.toTables().encode(),e=new ArrayBuffer(A.length),t=new Uint8Array(e),i=0;i<A.length;i++)t[i]=A[i];return e},Ci.prototype.download=function(A){var e=this.getEnglishName("fontFamily"),i=this.getEnglishName("fontSubfamily");A=A||e.replace(/\s/g,"")+"-"+i+".otf";var n=this.toArrayBuffer();if("undefined"!=typeof window)if(window.URL=window.URL||window.webkitURL,window.URL){var r=new DataView(n),s=new Blob([r],{type:"font/opentype"}),a=document.createElement("a");a.href=window.URL.createObjectURL(s),a.download=A;var o=document.createEvent("MouseEvents");o.initEvent("click",!0,!1),a.dispatchEvent(o)}else console.warn("Font file could not be downloaded. Try using a different browser.");else{var g=t(7256),I=function(A){for(var e=new Buffer(A.byteLength),t=new Uint8Array(A),i=0;i<e.length;++i)e[i]=t[i];return e}(n);g.writeFileSync(A,I)}},Ci.prototype.fsSelectionValues={ITALIC:1,UNDERSCORE:2,NEGATIVE:4,OUTLINED:8,STRIKEOUT:16,BOLD:32,REGULAR:64,USER_TYPO_METRICS:128,WWS:256,OBLIQUE:512},Ci.prototype.usWidthClasses={ULTRA_CONDENSED:1,EXTRA_CONDENSED:2,CONDENSED:3,SEMI_CONDENSED:4,MEDIUM:5,SEMI_EXPANDED:6,EXPANDED:7,EXTRA_EXPANDED:8,ULTRA_EXPANDED:9},Ci.prototype.usWeightClasses={THIN:100,EXTRA_LIGHT:200,LIGHT:300,NORMAL:400,MEDIUM:500,SEMI_BOLD:600,BOLD:700,EXTRA_BOLD:800,BLACK:900};var fi={make:function(A,e){var t=new $.Table("fvar",[{name:"version",type:"ULONG",value:65536},{name:"offsetToData",type:"USHORT",value:0},{name:"countSizePairs",type:"USHORT",value:2},{name:"axisCount",type:"USHORT",value:A.axes.length},{name:"axisSize",type:"USHORT",value:20},{name:"instanceCount",type:"USHORT",value:A.instances.length},{name:"instanceSize",type:"USHORT",value:4+4*A.axes.length}]);t.offsetToData=t.sizeOf();for(var i=0;i<A.axes.length;i++)t.fields=t.fields.concat(Bi(i,A.axes[i],e));for(var n=0;n<A.instances.length;n++)t.fields=t.fields.concat(Ei(n,A.instances[n],A.axes,e));return t},parse:function(A,e,t){var i=new aA.Parser(A,e),n=i.parseULong();G.argument(65536===n,"Unsupported fvar table version.");var r=i.parseOffset16();i.skip("uShort",1);for(var s=i.parseUShort(),a=i.parseUShort(),o=i.parseUShort(),g=i.parseUShort(),I=[],Q=0;Q<s;Q++)I.push(li(A,e+r+Q*a,t));for(var C=[],c=e+r+s*a,B=0;B<o;B++)C.push(ui(A,c+B*g,I,t));return{axes:I,instances:C}}},hi=function(){return{coverage:this.parsePointer(rA.coverage),attachPoints:this.parseList(rA.pointer(rA.uShortList))}},pi=function(){var A=this.parseUShort();return G.argument(1===A||2===A||3===A,"Unsupported CaretValue table version."),1===A?{coordinate:this.parseShort()}:2===A?{pointindex:this.parseShort()}:3===A?{coordinate:this.parseShort()}:void 0},yi=function(){return this.parseList(rA.pointer(pi))},di=function(){return{coverage:this.parsePointer(rA.coverage),ligGlyphs:this.parseList(rA.pointer(yi))}},mi=function(){return this.parseUShort(),this.parseList(rA.pointer(rA.coverage))};var bi={parse:function(A,e){var t=new rA(A,e=e||0),i=t.parseVersion(1);G.argument(1===i||1.2===i||1.3===i,"Unsupported GDEF table version.");var n={version:i,classDef:t.parsePointer(rA.classDef),attachList:t.parsePointer(hi),ligCaretList:t.parsePointer(di),markAttachClassDef:t.parsePointer(rA.classDef)};return i>=1.2&&(n.markGlyphSets=t.parsePointer(mi)),n}},Di=new Array(10);Di[1]=function(){var A=this.offset+this.relativeOffset,e=this.parseUShort();return 1===e?{posFormat:1,coverage:this.parsePointer(rA.coverage),value:this.parseValueRecord()}:2===e?{posFormat:2,coverage:this.parsePointer(rA.coverage),values:this.parseValueRecordList()}:void G.assert(!1,"0x"+A.toString(16)+": GPOS lookup type 1 format must be 1 or 2.")},Di[2]=function(){var A=this.offset+this.relativeOffset,e=this.parseUShort();G.assert(1===e||2===e,"0x"+A.toString(16)+": GPOS lookup type 2 format must be 1 or 2.");var t=this.parsePointer(rA.coverage),i=this.parseUShort(),n=this.parseUShort();if(1===e)return{posFormat:e,coverage:t,valueFormat1:i,valueFormat2:n,pairSets:this.parseList(rA.pointer(rA.list((function(){return{secondGlyph:this.parseUShort(),value1:this.parseValueRecord(i),value2:this.parseValueRecord(n)}}))))};if(2===e){var r=this.parsePointer(rA.classDef),s=this.parsePointer(rA.classDef),a=this.parseUShort(),o=this.parseUShort();return{posFormat:e,coverage:t,valueFormat1:i,valueFormat2:n,classDef1:r,classDef2:s,class1Count:a,class2Count:o,classRecords:this.parseList(a,rA.list(o,(function(){return{value1:this.parseValueRecord(i),value2:this.parseValueRecord(n)}})))}}},Di[3]=function(){return{error:"GPOS Lookup 3 not supported"}},Di[4]=function(){return{error:"GPOS Lookup 4 not supported"}},Di[5]=function(){return{error:"GPOS Lookup 5 not supported"}},Di[6]=function(){return{error:"GPOS Lookup 6 not supported"}},Di[7]=function(){return{error:"GPOS Lookup 7 not supported"}},Di[8]=function(){return{error:"GPOS Lookup 8 not supported"}},Di[9]=function(){return{error:"GPOS Lookup 9 not supported"}};var Si=new Array(10);var wi={parse:function(A,e){var t=new rA(A,e=e||0),i=t.parseVersion(1);return G.argument(1===i||1.1===i,"Unsupported GPOS table version "+i),1===i?{version:i,scripts:t.parseScriptList(),features:t.parseFeatureList(),lookups:t.parseLookupList(Di)}:{version:i,scripts:t.parseScriptList(),features:t.parseFeatureList(),lookups:t.parseLookupList(Di),variations:t.parseFeatureVariationsList()}},make:function(A){return new $.Table("GPOS",[{name:"version",type:"ULONG",value:65536},{name:"scripts",type:"TABLE",value:new $.ScriptList(A.scripts)},{name:"features",type:"TABLE",value:new $.FeatureList(A.features)},{name:"lookups",type:"TABLE",value:new $.LookupList(A.lookups,Si)}])}};var vi={parse:function(A,e){var t=new aA.Parser(A,e),i=t.parseUShort();if(0===i)return function(A){var e={};A.skip("uShort");var t=A.parseUShort();G.argument(0===t,"Unsupported kern sub-table version."),A.skip("uShort",2);var i=A.parseUShort();A.skip("uShort",3);for(var n=0;n<i;n+=1){var r=A.parseUShort(),s=A.parseUShort(),a=A.parseShort();e[r+","+s]=a}return e}(t);if(1===i)return function(A){var e={};A.skip("uShort"),A.parseULong()>1&&console.warn("Only the first kern subtable is supported."),A.skip("uLong");var t=255&A.parseUShort();if(A.skip("uShort"),0===t){var i=A.parseUShort();A.skip("uShort",3);for(var n=0;n<i;n+=1){var r=A.parseUShort(),s=A.parseUShort(),a=A.parseShort();e[r+","+s]=a}}return e}(t);throw new Error("Unsupported kern table version ("+i+").")}};var ki={parse:function(A,e,t,i){for(var n=new aA.Parser(A,e),r=i?n.parseUShort:n.parseULong,s=[],a=0;a<t+1;a+=1){var o=r.call(n);i&&(o*=2),s.push(o)}return s}};function xi(A,e){t(7256).readFile(A,(function(A,t){if(A)return e(A.message);e(null,xe(t))}))}function Gi(A,e){var t=new XMLHttpRequest;t.open("get",A,!0),t.responseType="arraybuffer",t.onload=function(){return t.response?e(null,t.response):e("Font could not be loaded: "+t.statusText)},t.onerror=function(){e("Font could not be loaded")},t.send()}function Ui(A,e){for(var t=[],i=12,n=0;n<e;n+=1){var r=aA.getTag(A,i),s=aA.getULong(A,i+4),a=aA.getULong(A,i+8),o=aA.getULong(A,i+12);t.push({tag:r,checksum:s,offset:a,length:o,compression:!1}),i+=16}return t}function Ni(A,e){if("WOFF"===e.compression){var t=new Uint8Array(A.buffer,e.offset+2,e.compressedLength-2),i=new Uint8Array(e.length);if(D(t,i),i.byteLength!==e.length)throw new Error("Decompression error: "+e.tag+" decompressed length doesn't match recorded length");return{data:new DataView(i.buffer,0),offset:0}}return{data:A,offset:e.offset}}function Fi(A,e){var t,i;e=null==e?{}:e;var n,r,s,a,o,g,I,Q,C,c,B,l,E,u=new Ci({empty:!0}),f=new DataView(A,0),h=[],p=aA.getTag(f,0);if(p===String.fromCharCode(0,1,0,0)||"true"===p||"typ1"===p)u.outlinesFormat="truetype",h=Ui(f,n=aA.getUShort(f,4));else if("OTTO"===p)u.outlinesFormat="cff",h=Ui(f,n=aA.getUShort(f,4));else{if("wOFF"!==p)throw new Error("Unsupported OpenType signature "+p);var y=aA.getTag(f,4);if(y===String.fromCharCode(0,1,0,0))u.outlinesFormat="truetype";else{if("OTTO"!==y)throw new Error("Unsupported OpenType flavor "+p);u.outlinesFormat="cff"}h=function(A,e){for(var t=[],i=44,n=0;n<e;n+=1){var r=aA.getTag(A,i),s=aA.getULong(A,i+4),a=aA.getULong(A,i+8),o=aA.getULong(A,i+12),g=void 0;g=a<o&&"WOFF",t.push({tag:r,offset:s,compression:g,compressedLength:a,length:o}),i+=20}return t}(f,n=aA.getUShort(f,12))}for(var d=0;d<n;d+=1){var m=h[d],b=void 0;switch(m.tag){case"cmap":b=Ni(f,m),u.tables.cmap=gA.parse(b.data,b.offset),u.encoding=new lA(u.tables.cmap);break;case"cvt ":b=Ni(f,m),E=new aA.Parser(b.data,b.offset),u.tables.cvt=E.parseShortList(m.length/2);break;case"fvar":s=m;break;case"fpgm":b=Ni(f,m),E=new aA.Parser(b.data,b.offset),u.tables.fpgm=E.parseByteList(m.length);break;case"head":b=Ni(f,m),u.tables.head=TA.parse(b.data,b.offset),u.unitsPerEm=u.tables.head.unitsPerEm,t=u.tables.head.indexToLocFormat;break;case"hhea":b=Ni(f,m),u.tables.hhea=HA.parse(b.data,b.offset),u.ascender=u.tables.hhea.ascender,u.descender=u.tables.hhea.descender,u.numberOfHMetrics=u.tables.hhea.numberOfHMetrics;break;case"hmtx":Q=m;break;case"ltag":b=Ni(f,m),i=PA.parse(b.data,b.offset);break;case"maxp":b=Ni(f,m),u.tables.maxp=_A.parse(b.data,b.offset),u.numGlyphs=u.tables.maxp.numGlyphs;break;case"name":B=m;break;case"OS/2":b=Ni(f,m),u.tables.os2=oe.parse(b.data,b.offset);break;case"post":b=Ni(f,m),u.tables.post=ge.parse(b.data,b.offset),u.glyphNames=new uA(u.tables.post);break;case"prep":b=Ni(f,m),E=new aA.Parser(b.data,b.offset),u.tables.prep=E.parseByteList(m.length);break;case"glyf":a=m;break;case"loca":c=m;break;case"CFF ":r=m;break;case"kern":C=m;break;case"GDEF":o=m;break;case"GPOS":g=m;break;case"GSUB":I=m;break;case"meta":l=m}}var D=Ni(f,B);if(u.tables.name=se.parse(D.data,D.offset,i),u.names=u.tables.name,a&&c){var S=0===t,w=Ni(f,c),v=ki.parse(w.data,w.offset,u.numGlyphs,S),k=Ni(f,a);u.glyphs=Oe.parse(k.data,k.offset,v,u,e)}else{if(!r)throw new Error("Font doesn't contain TrueType or CFF outlines.");var x=Ni(f,r);KA.parse(x.data,x.offset,u,e)}var G=Ni(f,Q);if(YA.parse(u,G.data,G.offset,u.numberOfHMetrics,u.numGlyphs,u.glyphs,e),fA(u,e),C){var U=Ni(f,C);u.kerningPairs=vi.parse(U.data,U.offset)}else u.kerningPairs={};if(o){var N=Ni(f,o);u.tables.gdef=bi.parse(N.data,N.offset)}if(g){var F=Ni(f,g);u.tables.gpos=wi.parse(F.data,F.offset),u.position.init()}if(I){var M=Ni(f,I);u.tables.gsub=ce.parse(M.data,M.offset)}if(s){var R=Ni(f,s);u.tables.fvar=fi.parse(R.data,R.offset,u.names)}if(l){var L=Ni(f,l);u.tables.meta=Be.parse(L.data,L.offset),u.metas=u.tables.meta}return u}const Mi=Object.freeze({__proto__:null,Font:Ci,Glyph:pA,Path:v,BoundingBox:w,_parse:aA,parse:Fi,load:function(A,e,t){t=null==t?{}:t;var i="undefined"==typeof window&&!t.isUrl?xi:Gi;return new Promise((function(n,r){i(A,(function(A,i){if(A){if(e)return e(A);r(A)}var s;try{s=Fi(i,t)}catch(A){if(e)return e(A,null);r(A)}if(e)return e(null,s);n(s)}))}))},loadSync:function(A,e){return Fi(xe(t(7256).readFileSync(A)),e)}})},4637:(A,e,t)=>{t.d(e,{q:()=>s});var i=/[a-zA-Z0-9:_-]/,n=/[\s\t\r\n]/,r=/['"]/;function s(A){var e="",t=[],s=I,a=null,o=null;function g(e){var t=function(A,e,t){if("number"==typeof t)throw new Error("locate takes a { startIndex, offsetLine, offsetColumn } object as the third argument");return function(A,e){void 0===e&&(e={});var t=e.offsetLine||0,i=e.offsetColumn||0,n=A.split("\n"),r=0,s=n.map((function(A,e){var t=r+A.length+1,i={start:r,end:t,line:e};return r=t,i})),a=0;function o(A,e){return A.start<=e&&e<A.end}function g(A,e){return{line:t+A.line,column:i+e-A.start,character:e}}return function(e,t){"string"==typeof e&&(e=A.indexOf(e,t||0));for(var i=s[a],n=e>=i.end?1:-1;i;){if(o(i,e))return g(i,e);i=s[a+=n]}}}(A,t)(e,t&&t.startIndex)}(A,h),i=t.line,n=t.column,r=A.slice(0,h),s=/(^|\n).*$/.exec(r)[0].replace(/\t/g," "),a=A.slice(h),o=""+s+/.*(\n|$)/.exec(a)[0]+"\n"+function(A,e){for(var t="";e--;)t+=A;return t}(" ",s.length)+"^";throw new Error(e+" ("+i+":"+n+"). If this is valid SVG, it's probably a bug in svg-parser. Please raise an issue at https://github.com/Rich-Harris/svg-parser/issues – thanks!\n\n"+o)}function I(){for(;h<A.length&&"<"!==A[h]||!i.test(A[h+1]);)e+=A[h++];return Q()}function Q(){for(var e="";h<A.length&&"<"!==A[h];)e+=A[h++];return/\S/.test(e)&&a.children.push({type:"text",value:e}),"<"===A[h]?C:Q}function C(){var e=A[h];if("?"===e)return Q;if("!"===e){if("--"===A.slice(h+1,h+3))return c;if("[CDATA["===A.slice(h+1,h+8))return B;if(/doctype/i.test(A.slice(h+1,h+8)))return Q}if("/"===e)return l;var i,n={type:"element",tagName:E(),properties:{},children:[]};for(a?a.children.push(n):o=n;h<A.length&&(i=u());)n.properties[i.name]=i.value;var r=!1;return"/"===A[h]&&(h+=1,r=!0),">"!==A[h]&&g("Expected >"),r||(a=n,t.push(n)),Q}function c(){var e=A.indexOf("--\x3e",h);return~e||g("expected --\x3e"),h=e+2,Q}function B(){var e=A.indexOf("]]>",h);return~e||g("expected ]]>"),a.children.push(A.slice(h+7,e)),h=e+2,Q}function l(){var e=E();return e||g("Expected tag name"),e!==a.tagName&&g("Expected closing tag </"+e+"> to match opening tag <"+a.tagName+">"),f(),">"!==A[h]&&g("Expected >"),t.pop(),a=t[t.length-1],Q}function E(){for(var e="";h<A.length&&i.test(A[h]);)e+=A[h++];return e}function u(){if(!n.test(A[h]))return null;f();var e=E();if(!e)return null;var t=!0;return f(),"="===A[h]&&(h+=1,f(),t=r.test(A[h])?function(){for(var e=A[h++],t="",i=!1;h<A.length;){var n=A[h++];if(n===e&&!i)return t;"\\"!==n||i||(i=!0),t+=i?"\\"+n:n,i=!1}}():function(){var e="";do{var t=A[h];if(" "===t||">"===t||"/"===t)return e;e+=t,h+=1}while(h<A.length);return e}(),isNaN(t)||""===t.trim()||(t=+t)),{name:e,value:t}}function f(){for(;h<A.length&&n.test(A[h]);)h+=1}for(var h=I.length;h<A.length;)s||g("Unexpected character"),s=s(),h+=1;return s!==Q&&g("Unexpected end of input"),"svg"===o.tagName&&(o.metadata=e),{type:"root",children:[o]}}},214:(A,e,t)=>{function i(A,e,t,i){A.width=Math.max(1,Math.min(e,i.limits.maxTextureDimension2D)),A.height=Math.max(1,Math.min(t,i.limits.maxTextureDimension2D))}function n(A,e,t){const n=new ResizeObserver((A=>{var n,r,s,a;for(const o of A){i(o.target,null!==(r=null===(n=o.devicePixelContentBoxSize)||void 0===n?void 0:n[0].inlineSize)&&void 0!==r?r:o.contentBoxSize[0].inlineSize*devicePixelRatio,null!==(a=null===(s=o.devicePixelContentBoxSize)||void 0===s?void 0:s[0].blockSize)&&void 0!==a?a:o.contentBoxSize[0].blockSize*devicePixelRatio,e),t()}}));try{n.observe(A,{box:"device-pixel-content-box"})}catch(e){n.observe(A,{box:"content-box"})}i(A,A.clientWidth,A.clientHeight,e)}t.d(e,{A:()=>n})},7608:(A,e,t)=>{t.a(A,(async(A,i)=>{try{t.d(e,{A:()=>g});var n=t(1317),r=t(4109),s=t(9146),a=A([n,r,s]);[n,r,s]=a.then?(await a)():a;var o=function(A,e,t,i){return new(t||(t=Promise))((function(n,r){function s(A){try{o(i.next(A))}catch(A){r(A)}}function a(A){try{o(i.throw(A))}catch(A){r(A)}}function o(A){var e;A.done?n(A.value):(e=A.value,e instanceof t?e:new t((function(A){A(e)}))).then(s,a)}o((i=i.apply(A,e||[])).next())}))};function g(A,e,t,i,a,g,I,Q){return o(this,void 0,void 0,(function*(){const o=document.createElement("canvas");o.width=400,o.height=400;const C=o.getContext("webgpu");C.configure({device:A,format:e});const c=Object.assign({},r.UI);(0,n.A)(i,a,"fill",o),s.Ay.updateRenderScale(g),I(o,C).then((()=>{Q(o),C.unconfigure(),r.UI.x=c.x,r.UI.y=c.y,r.UI.zoom=c.zoom,s.Ay.updateRenderScale(t.width/(t.clientWidth*r.UI.zoom))}))}))}i()}catch(I){i(I)}}))},1911:(A,e,t)=>{t.d(e,{A:()=>n});var i=function(A,e,t,i){return new(t||(t=Promise))((function(n,r){function s(A){try{o(i.next(A))}catch(A){r(A)}}function a(A){try{o(i.throw(A))}catch(A){r(A)}}function o(A){var e;A.done?n(A.value):(e=A.value,e instanceof t?e:new t((function(A){A(e)}))).then(s,a)}o((i=i.apply(A,e||[])).next())}))};function n(){return i(this,void 0,void 0,(function*(){if(!navigator.gpu)throw Error("this browser does not support WebGPU");const A=yield navigator.gpu.requestAdapter();if(!A)throw Error("this browser supports webgpu but it appears disabled");const e=A.features.has("bgra8unorm-storage"),t=yield A.requestDevice({requiredFeatures:e?["bgra8unorm-storage"]:[],label:"id: "+Date.now()});t.lost.then((A=>{console.error(`WebGPU device was lost: ${A.message}`),A.reason}));return{device:t,presentationFormat:navigator.gpu.getPreferredCanvasFormat(),storageFormat:e?navigator.gpu.getPreferredCanvasFormat():"rgba8unorm"}}))}},1549:(A,e,t)=>{t.d(e,{Be:()=>n});const i=(...A)=>{const e=Math.max(...A);return 1+Math.log2(e)|0};function n(A,e,t,n={}){const r=A.createTexture({label:"createTextureFromSource",format:e,mipLevelCount:n.mips?i(t.width,t.height):1,size:[t.width,t.height],usage:GPUTextureUsage.TEXTURE_BINDING|GPUTextureUsage.COPY_DST|GPUTextureUsage.RENDER_ATTACHMENT});return function(A,e,t,{flipY:i,depthOrArrayLayers:n}={}){A.queue.copyExternalImageToTexture({source:t,flipY:i},{texture:e},{width:t.width,height:t.height,depthOrArrayLayers:n})}(A,r,t,n),r}},2872:(A,e,t)=>{t.a(A,(async(A,i)=>{try{t.d(e,{A:()=>Q});var n=t(2842),r=t(4109),s=t(9146),a=A([r,s]);[r,s]=a.then?(await a)():a;var o=function(A,e,t,i){return new(t||(t=Promise))((function(n,r){function s(A){try{o(i.next(A))}catch(A){r(A)}}function a(A){try{o(i.throw(A))}catch(A){r(A)}}function o(A){var e;A.done?n(A.value):(e=A.value,e instanceof t?e:new t((function(A){A(e)}))).then(s,a)}o((i=i.apply(A,e||[])).next())}))};const g=1,I=16;class Q{constructor(A){this.isPreviousPickDone=!0,this.pickBuffer=A.createBuffer({label:"pick id buffer",size:g*I,usage:GPUBufferUsage.MAP_READ|GPUBufferUsage.COPY_DST}),this.pickTexture=A.createTexture({label:"picking texture color",size:[1,1],format:"rgba32uint",usage:GPUTextureUsage.COPY_SRC|GPUTextureUsage.RENDER_ATTACHMENT})}startPicking(A){const e={label:"render pick",colorAttachments:[{view:this.pickTexture.createView(),loadOp:"clear",clearValue:[0,0,0,1],storeOp:"store"}]},t=A.beginRenderPass(e);t.setViewport(0,0,1,1,0,1),t.setScissorRect(0,0,1,1);return{pass:t,end:()=>{t.end(),this.isPreviousPickDone&&A.copyTextureToBuffer({texture:this.pickTexture,origin:{x:0,y:0}},{buffer:this.pickBuffer},{width:g})}}}createMatrix(A,e){const t=-(r.Wn.x/A.width*2-1),i=r.Wn.y/A.height*2-1;return[n.A.scaling([A.width,A.height,0]),n.A.translation([t,i,0]),e].reduce(((A,e)=>n.A.multiply(A,e)),n.A.translation([-1,1,0]))}asyncPick(){return o(this,void 0,void 0,(function*(){if(this.isPreviousPickDone){this.isPreviousPickDone=!1;try{yield this.pickBuffer.mapAsync(GPUMapMode.READ,0,I*g);const[A,e,t,i]=new Uint32Array(this.pickBuffer.getMappedRange(0,I*g));s.QZ([A,e,t,i]);let n=0;for(;n<r.Wn.afterPickEventsQueue.length;){const{requireNewPick:A,cb:e}=r.Wn.afterPickEventsQueue[n];if(A&&n>0)break;e(),n++}r.Wn.afterPickEventsQueue.splice(0,n),this.pickBuffer.unmap()}catch(A){}this.isPreviousPickDone=!0}}))}}i()}catch(A){i(A)}}))},688:(A,e,t)=>{t.d(e,{IP:()=>L,ym:()=>M,RW:()=>R,bB:()=>F,DS:()=>N,Ay:()=>K,nj:()=>q,zK:()=>O,oQ:()=>D,Jl:()=>x,np:()=>G,H:()=>k,_J:()=>S,D4:()=>b,R9:()=>z,Zo:()=>U,Fh:()=>w,Q3:()=>v});const i="const PI = 3.14159265358979323846;\nconst EPSILON = 1.1920929e-7;\n\nstruct Vertex {\n @location(0) p0: vec4f, //xy -> corner position, zw -> circle position\n @location(1) p1: vec4f,\n @location(2) p2: vec4f,\n @location(3) color: vec4f,\n @location(4) radius_list: vec3f,\n};\n\nstruct Uniforms {\n worldViewProjection: mat4x4f,\n};\n\nstruct VertexOutput {\n @builtin(position) position: vec4f,\n @location(0) @interpolate(flat) p0: vec4f,\n @location(1) @interpolate(flat) p1: vec4f,\n @location(2) @interpolate(flat) p2: vec4f,\n @location(3) @interpolate(flat) color: vec4f,\n @location(4) pixel: vec2f,\n @location(5) @interpolate(flat) radius_list: vec3f,\n @location(6) @interpolate(flat) threshold_list: vec3f,\n};\n\n@group(0) @binding(0) var<uniform> u: Uniforms;\n\nfn threshold_pythagorean_leg(corner: vec4f, radius: f32) -> f32 {\n let p_circle_dist = distance(corner.xy, corner.zw);\n // Pythagorean theorem, finding one leg of a right triangle when you know the hypotenuse and the other leg.\n return sqrt(p_circle_dist * p_circle_dist - radius * radius);\n}\n\n@vertex fn vs(\n vert: Vertex,\n @builtin(vertex_index) vertex_index : u32\n) -> VertexOutput {\n var out: VertexOutput;\n\n let positions = array<vec2f, 3>(vert.p0.xy, vert.p1.xy, vert.p2.xy);\n out.position = vec4f(positions[vertex_index], 0, 1);\n\n out.pixel = vec2f(out.position.x, out.position.y);\n\n out.position = u.worldViewProjection * out.position;\n\n out.p0 = vert.p0;\n out.p1 = vert.p1;\n out.p2 = vert.p2;\n out.color = vert.color;\n\n out.radius_list = vert.radius_list;\n\n out.threshold_list = vec3f(\n threshold_pythagorean_leg(vert.p0, vert.radius_list.x),\n threshold_pythagorean_leg(vert.p1, vert.radius_list.y),\n threshold_pythagorean_leg(vert.p2, vert.radius_list.z),\n ); // behind this value is a rounded corner\n\n return out;\n}\n\n@fragment fn fs(in: VertexOutput) -> @location(0) vec4f {\n let p0_circle_dist = distance(in.p0.xy, in.pixel) - in.threshold_list.x;\n let p1_circle_dist = distance(in.p1.xy, in.pixel) - in.threshold_list.y;\n let p2_circle_dist = distance(in.p2.xy, in.pixel) - in.threshold_list.z;\n \n let min_circle_dist = min(\n p0_circle_dist,\n min(p1_circle_dist, p2_circle_dist)\n );\n\n var p: vec2f; // closest corner\n var p_circle: vec2f; // closest corner's circle position\n var radius: f32;\n var threshold: f32;\n\n if (abs(min_circle_dist - p0_circle_dist) <= EPSILON) {\n p = in.p0.xy;\n p_circle = in.p0.zw;\n radius = in.radius_list.x;\n threshold = in.threshold_list.x;\n } else if (abs(min_circle_dist - p1_circle_dist) <= EPSILON) {\n p = in.p1.xy;\n p_circle = in.p1.zw;\n radius = in.radius_list.y;\n threshold = in.threshold_list.y;\n } else {\n p = in.p2.xy;\n p_circle = in.p2.zw;\n radius = in.radius_list.z;\n threshold = in.threshold_list.z;\n }\n\n\n let circle_distance = distance(p_circle, in.pixel);\n let edge_width = fwidth(circle_distance);\n\n let circle_alpha = 1.0 - smoothstep(radius - edge_width, radius + edge_width, circle_distance);\n let dist = distance(p, in.pixel);\n let alpha = mix(circle_alpha, 1.0, step(threshold, dist)); // if threshold <= dist, use circle alpha, otherwise use 1.0\n\n return in.color * alpha;\n}\n",n=16;const r="struct Uniform {\n filterDim: i32, // x for horizontal, y for vertical\n blockDim: u32,\n sigma: f32, // standard deviation for X (when flip=0) and Y (when flip=1)\n flip: u32,\n}\n\n@group(0) @binding(0) var samp : sampler;\n@group(0) @binding(1) var<uniform> u : Uniform;\n@group(0) @binding(2) var inputTex : texture_2d<f32>;\n@group(0) @binding(3) var outputTex : texture_storage_2d<{presentationFormat}, write>;\n\n// This shader blurs the input texture in one direction, depending on whether\n// |u.flip| is 0 or 1.\n// It does so by running (128 / 4) threads per workgroup to load 128\n// texels into 4 rows of shared memory. Each thread loads a\n// 4 x 4 block of texels to take advantage of the texture sampling\n// hardware.\n// Then, each thread computes the blur result by averaging the adjacent texel values\n// in shared memory.\n// Because we're operating on a subset of the texture, we cannot compute all of the\n// results since not all of the neighbors are available in shared memory.\n// Specifically, with 128 x 128 tiles, we can only compute and write out\n// square blocks of size 128 - (filterSize - 1). We compute the number of blocks\n// needed in Javascript and dispatch that amount.\n\n// 128/4 = 32 -> number of threads per working group\n// does it in 4x4 block of texels(takes advantage of texture sampling hardware)\n// with this beign said, we don't have all the neighbours, only this block\n// That's why we can only compute & write out blocks of size 128 - (filterSize - 1)\nvar<workgroup> tile : array<array<vec4f, 128>, 4>;\n\n@compute @workgroup_size(32, 1, 1)\nfn main(\n @builtin(workgroup_id) WorkGroupID : vec3<u32>,\n @builtin(local_invocation_id) LocalInvocationID : vec3<u32>\n) {\n let filterOffset = (u.filterDim - 1) / 2;\n let dims = vec2<i32>(textureDimensions(inputTex, 0));\n let baseIndex = vec2<i32>(WorkGroupID.xy * vec2(u.blockDim, 4) + // it's just the index of the first texel in a group\n LocalInvocationID.xy * vec2(4, 1)) // <0, 128>\n - vec2(filterOffset, 0);\n // baseIndex = xy of first texel of group\n for (var r = 0; r < 4; r++) {\n for (var c = 0; c < 4; c++) {\n var loadIndex = baseIndex + vec2(c, r);\n if (u.flip != 0) {\n loadIndex = loadIndex.yx;\n }\n\n tile[r][4 * LocalInvocationID.x + u32(c)] = textureSampleLevel(\n inputTex,\n samp,\n (vec2<f32>(loadIndex) + vec2<f32>(0.5, 0.5)) / vec2<f32>(dims),\n 0.0\n ).rgba;\n }\n }\n\n workgroupBarrier();\n // helps coordinate access to read-write memory\n // so all threads(32) will wait to hit this barrer, and then start form here together\n\n for (var r = 0; r < 4; r++) {\n for (var c = 0; c < 4; c++) {\n var writeIndex = baseIndex + vec2(c, r);\n if (u.flip != 0) {\n writeIndex = writeIndex.yx;\n }\n\n let center = i32(4 * LocalInvocationID.x) + c;\n if (center >= filterOffset &&\n center < 128 - filterOffset &&\n all(writeIndex < dims)) {\n\n let denom = 2.0 * u.sigma * u.sigma;\n var acc = vec4f(0.0);\n var wsum = 0.0;\n\n for (var f = 0; f < u.filterDim; f++) {\n let rel = f - filterOffset;\n var i = center + rel;\n let w = exp(- (f32(rel * rel)) / denom);\n acc = acc + w * tile[r][i];\n wsum = wsum + w;\n }\n acc = acc / wsum;\n\n textureStore(outputTex, writeIndex, acc);\n }\n }\n }\n}\n",s=128,a=[4,4];const o="struct Vertex {\n @location(0) position: vec4f,\n};\n\nstruct Uniforms {\n cameraProjection: mat4x4f,\n};\n\nstruct VertexOutput {\n @builtin(position) position: vec4f,\n @location(0) texCoord: vec2f,\n};\n\n@group(0) @binding(0) var<uniform> u: Uniforms;\n@group(0) @binding(1) var ourSampler: sampler;\n@group(0) @binding(2) var ourTexture: texture_2d<f32>;\n\n@vertex fn vs(vert: Vertex) -> VertexOutput {\n var out: VertexOutput;\n // maybe we should pass offsets from the position instead of... position?\n out.position = u.cameraProjection * vec4f(vert.position.xy, 0, 1);\n out.texCoord = vert.position.zw;\n \n return out;\n}\n\n@fragment fn fs(in: VertexOutput) -> @location(0) vec4f {\n return textureSample(ourTexture, ourSampler, in.texCoord);\n // let color = textureSample(ourTexture, ourSampler, in.texCoord);\n // if (color.a < 0.1) {\n // return vec4f(0, 0, 1, 0.1);\n // }\n // return color;\n}\n",g=16;const I="struct Vertex {\n @location(0) position: vec4f,\n @location(1) id: vec4u,\n};\n\nstruct Uniforms {\n worldViewProjection: mat4x4f\n};\n\nstruct VertexOutput {\n @builtin(position) position: vec4f,\n @location(0) texCoord: vec2f,\n @location(1) @interpolate(flat) id: vec4u\n};\n\n@group(0) @binding(0) var<uniform> u: Uniforms;\n@group(0) @binding(1) var ourSampler: sampler;\n@group(0) @binding(2) var ourTexture: texture_2d<f32>;\n\n@vertex fn vs(vert: Vertex) -> VertexOutput {\n var out: VertexOutput;\n\n out.position = u.worldViewProjection * vec4f(vert.position.xy, 0.0, 1.0);\n out.texCoord = vert.position.zw;\n out.id = vert.id;\n\n return out;\n}\n\n\n@fragment fn fs(in: VertexOutput) -> @location(0) vec4u {\n let alpha = textureSample(ourTexture, ourSampler, in.texCoord).a;\n\n if (alpha < 0.1) {\n discard; // r32uint doesn't support blending so only skipping pixels lefts\n }\n\n return in.id;\n}\n",Q=32;const C="const PI = 3.14159265358979323846;\nconst EPSILON = 1.1920929e-7;\n\nstruct Vertex {\n @location(0) p0: vec4f, //xy -> corner position, zw -> circle position\n @location(1) p1: vec4f,\n @location(2) p2: vec4f,\n @location(3) id: vec4u,\n @location(4) radius_list: vec3f,\n};\n\nstruct Uniforms {\n worldViewProjection: mat4x4f,\n};\n\nstruct VertexOutput {\n @builtin(position) position: vec4f,\n @location(0) @interpolate(flat) p0: vec4f,\n @location(1) @interpolate(flat) p1: vec4f,\n @location(2) @interpolate(flat) p2: vec4f,\n @location(3) @interpolate(flat) id: vec4u,\n @location(4) pixel: vec2f,\n @location(5) @interpolate(flat) radius_list: vec3f,\n @location(6) @interpolate(flat) threshold_list: vec3f,\n};\n\n@group(0) @binding(0) var<uniform> u: Uniforms;\n\nfn threshold_pythagorean_leg(corner: vec4f, radius: f32) -> f32 {\n let p_circle_dist = distance(corner.xy, corner.zw);\n // Pythagorean theorem, finding one leg of a right triangle when you know the hypotenuse and the other leg.\n return sqrt(p_circle_dist * p_circle_dist - radius * radius);\n}\n\n@vertex fn vs(\n vert: Vertex,\n @builtin(vertex_index) vertex_index : u32\n) -> VertexOutput {\n var out: VertexOutput;\n\n let positions = array<vec2f, 3>(vert.p0.xy, vert.p1.xy, vert.p2.xy);\n out.position = vec4f(positions[vertex_index], 0, 1);\n\n out.pixel = vec2f(out.position.x, out.position.y);\n\n out.position = u.worldViewProjection * out.position;\n\n out.p0 = vert.p0;\n out.p1 = vert.p1;\n out.p2 = vert.p2;\n out.id = vert.id;\n\n out.radius_list = vert.radius_list;\n\n out.threshold_list = vec3f(\n threshold_pythagorean_leg(vert.p0, vert.radius_list.x),\n threshold_pythagorean_leg(vert.p1, vert.radius_list.y),\n threshold_pythagorean_leg(vert.p2, vert.radius_list.z),\n ); // behind this value is a ounded corner\n\n return out;\n}\n\n@fragment fn fs(in: VertexOutput) -> @location(0) vec4u {\n let p0_circle_dist = distance(in.p0.xy, in.pixel) - in.threshold_list.x;\n let p1_circle_dist = distance(in.p1.xy, in.pixel) - in.threshold_list.y;\n let p2_circle_dist = distance(in.p2.xy, in.pixel) - in.threshold_list.z;\n \n let min_circle_dist = min(\n p0_circle_dist,\n min(p1_circle_dist, p2_circle_dist)\n );\n\n var p: vec2f; // closest corner\n var p_circle: vec2f; // closest corner's circle position\n var radius: f32;\n var threshold: f32;\n\n if (abs(min_circle_dist - p0_circle_dist) <= EPSILON) {\n p = in.p0.xy;\n p_circle = in.p0.zw;\n radius = in.radius_list.x;\n threshold = in.threshold_list.x;\n } else if (abs(min_circle_dist - p1_circle_dist) <= EPSILON) {\n p = in.p1.xy;\n p_circle = in.p1.zw;\n radius = in.radius_list.y;\n threshold = in.threshold_list.y;\n } else {\n p = in.p2.xy;\n p_circle = in.p2.zw;\n radius = in.radius_list.z;\n threshold = in.threshold_list.z;\n }\n\n\n let circle_distance = distance(p_circle, in.pixel);\n let edge_width = fwidth(circle_distance);\n\n let circle_alpha = 1.0 - smoothstep(radius - edge_width, radius + edge_width, circle_distance);\n let dist = distance(p, in.pixel);\n let alpha = mix(circle_alpha, 1.0, step(threshold, dist)); // if threshold <= dist, use circle alpha, otherwise use 1.0\n\n if (alpha < 0.1) {\n discard; // r32uint doesn't support blending so only skipping pixels lefts\n }\n\n return in.id;\n}\n",c=19;const B="const STRAIGHT_LINE_THRESHOLD = 1e10;\nconst EPSILON = 1e-10;\nconst PI = 3.141592653589793;\n\nstruct Vertex {\n @location(0) position: vec4f,\n};\n\n@group(0) @binding(1) var texture: texture_storage_2d<rgba32float, read>;\n@group(0) @binding(2) var<uniform> camera_projection: mat4x4f;\n\nstruct VSOutput {\n @builtin(position) position: vec4f,\n @location(0) uv: vec2f,\n @location(1) norm_uv: vec2f,\n};\n\n@vertex fn vs(vert: Vertex) -> VSOutput {\n let size = textureDimensions(texture);\n return VSOutput(\n camera_projection * vec4f(vert.position.xy, 0.0, 1.0),\n vert.position.zw * vec2f(size),\n vert.position.zw,\n );\n}\n\nfn getSample(pos: vec2f) -> vec4f {\n let floor_pos = floor(pos - 0.5);\n let fract_pos = pos - 0.5 - floor_pos;\n\n let p00 = vec2u(floor_pos);\n let p10 = vec2u(floor_pos + vec2f(1.0, 0.0));\n let p01 = vec2u(floor_pos + vec2f(0.0, 1.0));\n let p11 = vec2u(floor_pos + vec2f(1.0, 1.0));\n\n let c00 = textureLoad(texture, p00);\n let c10 = textureLoad(texture, p10);\n let c01 = textureLoad(texture, p01);\n let c11 = textureLoad(texture, p11);\n\n let top = mix(c00, c10, fract_pos.x);\n let bottom = mix(c01, c11, fract_pos.x);\n\n return mix(top, bottom, fract_pos.y);\n}\n\n\n@fragment fn fs(vsOut: VSOutput) -> @location(0) vec4f {\n // let sdf = textureLoad(texture, vec2u(vsOut.uv));\n let sdf = getSample(vsOut.uv);\n\n let dist = sdf.r;\n let width = fwidth(dist) * 0.5;\n\n let inner_alpha = smoothstep(u.dist_start - width, u.dist_start + width, dist);\n let outer_alpha = smoothstep(u.dist_end - width, u.dist_end + width, dist);\n let alpha = outer_alpha - inner_alpha;\n let color = getColor(sdf, vsOut.uv, vsOut.norm_uv);\n let result = vec4f(color.rgb, color.a * alpha);\n\n return result;\n\n // let stroke_factor = select(0.5, 0.0, sdf.g > 1.0);\n // color = vec4f(0, sdf.g % 1, 0, 1.0);\n // color = vec4f(0, 0, sdf.b / (2 * PI), 1.0);\n // color = vec4f(sdf.r / 100.0, sdf.g % 1, sdf.b / (2 * PI), 1.0);\n // color = select(vec4f(0.5, 0, 0, 1), vec4f(0, 0, 0.5, 1), u32(sdf.r / 20.0) % 2 == 0);\n}\n";function l(A,e,t,i){const n=A.createShaderModule({label:"drawShape shader",code:B+t}),r=4*i,s=A.createRenderPipeline({label:"drawShape pipeline",layout:"auto",vertex:{module:n,entryPoint:"vs",buffers:[{arrayStride:16,attributes:[{shaderLocation:0,offset:0,format:"float32x4"}]}]},fragment:{module:n,entryPoint:"fs",targets:[{format:e,blend:{color:{srcFactor:"src-alpha",dstFactor:"one-minus-src-alpha"},alpha:{srcFactor:"one",dstFactor:"one-minus-src-alpha"}}}]},multisample:{count:4}});return function(e,t,i,n){const a=A.createBuffer({label:"drawShape vertex buffer",size:i.byteLength,usage:GPUBufferUsage.VERTEX|GPUBufferUsage.COPY_DST});A.queue.writeBuffer(a,0,i),q(a);const o=A.createBuffer({label:"drawShape uniforms",size:r,usage:GPUBufferUsage.UNIFORM|GPUBufferUsage.COPY_DST});A.queue.writeBuffer(o,0,n),q(o),e.setPipeline(s);const g=A.createBindGroup({label:"drawShape bind group",layout:s.getBindGroupLayout(0),entries:[{binding:0,resource:{buffer:o}},{binding:1,resource:t.createView()},{binding:2,resource:{buffer:L.buffer}}]});e.setBindGroup(0,g),e.setVertexBuffer(0,a),e.draw(6)}}const E="\nstruct Uniforms {\n dist_start: f32,\n dist_end: f32,\n padding: vec2f, // Padding for alignment\n color: vec4f,\n};\n\n@group(0) @binding(0) var<uniform> u: Uniforms;\n\nfn getColor(sdf: vec4f, uv: vec2f, norm_uv: vec2f) -> vec4f {\n return u.color;\n}",u='struct Stop {\n color: vec4f,\n offset: f32,\n}\n\nstruct Uniform {\n dist_start: f32,\n dist_end: f32,\n stops_count: u32,\n padding: u32, // Padding for alignment\n start: vec2f,\n end: vec2f,\n stops: array<Stop, 10>,\n};\n\n@group(0) @binding(0) var<uniform> u: Uniform;\n\n\nfn getColor(sdf: vec4f, world_uv: vec2f, uv: vec2f) -> vec4f {\n // Fallbacks\n if (u.stops_count == 0u) {\n return vec4f(1.0, 1.0, 1.0, 1.0);\n }\n if (u.stops_count == 1u) {\n return u.stops[0u].color;\n }\n\n // Gradient axis given by start -> end in uv space\n let dir = u.end - u.start;\n let len2_raw = dot(dir, dir);\n let len2 = max(len2_raw, 1e-8);\n\n // Project current uv to axis; get normalized parameter t in [0, 1]\n var t_uv: f32;\n if (len2_raw < 1e-7) {\n // Degenerate axis: fall back to horizontal gradient across world_uv.x\n t_uv = clamp(uv.x, 0.0, 1.0);\n } else {\n // project vector with uv positon onto gradient vector to see "how far" is the pixel along the gradient line\n // len2 to tonalize\n t_uv = clamp(dot(uv - u.start, dir) / len2, 0.0, 1.0);\n }\n\n // Find lower/upper stops around t_uv using stop offsets\n let last_index = u.stops_count - 1u;\n var lower_t = -1.0;\n var lower_color = u.stops[0u].color;\n var upper_t = 2.0;\n var upper_color = u.stops[last_index].color;\n\n for (var i: u32 = 0u; i < u.stops_count; i = i + 1u) {\n let ti = clamp(u.stops[i].offset, 0.0, 1.0);\n if (ti <= t_uv && ti > lower_t) {\n lower_t = ti;\n lower_color = u.stops[i].color;\n }\n if (ti >= t_uv && ti < upper_t) {\n upper_t = ti;\n upper_color = u.stops[i].color;\n }\n }\n\n // Boundaries: if t is before the first stop or after the last stop\n if (lower_t < 0.0) {\n return upper_color; // before first stop\n }\n if (upper_t > 1.5) {\n return lower_color; // after last stop\n }\n\n // Interpolate between the two surrounding stops\n let denom = max(upper_t - lower_t, 1e-8);\n let a = clamp((t_uv - lower_t) / denom, 0.0, 1.0);\n return mix(lower_color, upper_color, a);\n}',f="struct Stop {\n color: vec4f,\n offset: f32,\n}\n\nstruct Uniform {\n dist_start: f32,\n dist_end: f32,\n stops_count: u32,\n radius_ratio: f32, // vertical radius / horizontal radius (to create ellipse)\n center: vec2f, // Center point of radial gradient\n destination: vec2f, // because we have scale, the angle between center an destination is visible in the gradient!\n stops: array<Stop, 10>,\n};\n\n@group(0) @binding(0) var<uniform> u: Uniform;\n\nfn getColor(sdf: vec4f, world_uv: vec2f, uv: vec2f) -> vec4f {\n // Fallbacks\n if (u.stops_count == 0u) {\n return vec4f(1.0, 1.0, 1.0, 1.0);\n }\n if (u.stops_count == 1u) {\n return u.stops[0u].color;\n }\n\n // Calculate offset from center\n let offset = uv - u.center;\n \n // Vector from center to destination encodes major axis direction and length\n let dest_offset = u.destination - u.center;\n let hr = length(dest_offset);\n let inv_hr = 1.0 / max(hr, 1e-8);\n let inv_vr = inv_hr / max(u.radius_ratio, 1e-8);\n\n // Orthonormal basis aligned with gradient: u along destination, v perpendicular\n let u_dir = dest_offset * inv_hr; // normalized major axis\n let v_dir = vec2f(-u_dir.y, u_dir.x); // normalized minor axis\n\n // Project offset into this basis and normalize by radii\n let scaled_x = dot(offset, u_dir) * inv_hr; // == dot(offset, dest_offset) * inv_hr^2\n let scaled_y = dot(offset, v_dir) * inv_vr; // divide by vertical radius\n \n // Calculate normalized distance (0 at center, 1 at edge of ellipse)\n let normalized_dist = sqrt(scaled_x * scaled_x + scaled_y * scaled_y);\n let t_uv = clamp(normalized_dist, 0.0, 1.0);\n\n // Find lower/upper stops around t_uv using stop offsets\n let last_index = u.stops_count - 1u;\n var lower_t = -1.0;\n var lower_color = u.stops[0u].color;\n var upper_t = 2.0;\n var upper_color = u.stops[last_index].color;\n\n for (var i: u32 = 0u; i < u.stops_count; i = i + 1u) {\n let ti = clamp(u.stops[i].offset, 0.0, 1.0);\n if (ti <= t_uv && ti > lower_t) {\n lower_t = ti;\n lower_color = u.stops[i].color;\n }\n if (ti >= t_uv && ti < upper_t) {\n upper_t = ti;\n upper_color = u.stops[i].color;\n }\n }\n\n // Boundaries: if t is before the first stop or after the last stop\n if (lower_t < 0.0) {\n return upper_color; // before first stop\n }\n if (upper_t > 1.5) {\n return lower_color; // after last stop\n }\n\n // Interpolate between the two surrounding stops\n let denom = max(upper_t - lower_t, 1e-8);\n let a = clamp((t_uv - lower_t) / denom, 0.0, 1.0);\n return mix(lower_color, upper_color, a);\n}",h="const STRAIGHT_LINE_THRESHOLD = 1e10;\nconst EPSILON = 1e-10;\n\nstruct Vertex {\n @location(0) position: vec4f,\n @location(1) id: vec4u,\n};\n\nstruct Uniforms {\n dist_start: f32,\n dist_end: f32,\n};\n\n@group(0) @binding(0) var<uniform> camera_projection: mat4x4f;\n@group(0) @binding(1) var<uniform> u: Uniforms;\n@group(0) @binding(2) var texture: texture_storage_2d<rgba32float, read>;\n\nstruct VertexOutput {\n @builtin(position) position: vec4f,\n @location(0) uv: vec2f,\n @location(1) @interpolate(flat) id: vec4u\n};\n\n@vertex fn vs(vert: Vertex) -> VertexOutput {\n var out: VertexOutput;\n\n out.position = camera_projection * vec4f(vert.position.xy, 0.0, 1.0);\n out.id = vert.id;\n\n let size = textureDimensions(texture);\n out.uv = vert.position.zw * vec2f(size);\n\n return out;\n}\n\n@fragment fn fs(in: VertexOutput) -> @location(0) vec4u {\n let dist = textureLoad(texture, vec2u(in.uv)).r;\n\n if (dist > u.dist_start || dist < u.dist_end) {\n discard;\n }\n\n return in.id;\n}\n";const p="const STRAIGHT_LINE_THRESHOLD = 1e10;\nconst EPSILON = 1e-10;\nconst PI = 3.141592653589793;\n\nstruct CubicBezier {\n p0: vec2f,\n p1: vec2f,\n p2: vec2f,\n p3: vec2f,\n};\n\n@group(0) @binding(0) var tex: texture_storage_2d<rgba32float, write>;\n@group(0) @binding(1) var<storage, read> curves: array<vec2f>;\n\n@compute @workgroup_size(1) fn cs(\n @builtin(global_invocation_id) id : vec3u\n) {\n let pos = vec2f(id.xy) + vec2f(0.5, 0.5);\n let shape_info = evaluate_shape(pos);\n\n textureStore(tex, id.xy, vec4f(\n shape_info.signed_distance,\n shape_info.t,\n shape_info.angle,\n 1.0\n ));\n}\n\n\n// Evaluate cubic Bézier at parameter t\nfn bezier_point(curve: CubicBezier, t: f32) -> vec2f {\n let t2 = t * t;\n let t3 = t2 * t;\n let one_minus_t = 1.0 - t;\n let one_minus_t2 = one_minus_t * one_minus_t;\n let one_minus_t3 = one_minus_t2 * one_minus_t;\n \n return curve.p0 * one_minus_t3 + \n 3.0 * curve.p1 * t * one_minus_t2 + \n 3.0 * curve.p2 * t2 * one_minus_t + \n curve.p3 * t3;\n}\n\n// First derivative of cubic Bézier\nfn bezier_derivative(curve: CubicBezier, t: f32) -> vec2f {\n let one_minus_t = 1.0 - t;\n return 3.0 * one_minus_t * one_minus_t * (curve.p1 - curve.p0) +\n 6.0 * t * one_minus_t * (curve.p2 - curve.p1) +\n 3.0 * t * t * (curve.p3 - curve.p2);\n}\n\n// Second derivative of cubic Bézier\nfn bezier_second_derivative(curve: CubicBezier, t: f32) -> vec2f {\n return 6.0 * (1.0 - t) * (curve.p2 - 2.0 * curve.p1 + curve.p0) +\n 6.0 * t * (curve.p3 - 2.0 * curve.p2 + curve.p1);\n}\n\n// Find closest point on cubic Bézier curve to given point using analytical method\nfn closest_point_on_bezier(point: vec2f, curve: CubicBezier) -> f32 {\n // At the closest point, (P(t) - point) ⊥ P'(t)\n // This gives us: dot(P(t) - point, P'(t)) = 0\n // We can solve this quintic equation analytically or use Newton-Raphson\n \n // Start with a good initial guess using the control polygon\n var best_t = initial_guess_closest_point(point, curve);\n // if there is any weird artifact in the middle of the shape, then it's most likely because of initial guess!\n \n // Newton-Raphson to find exact solution\n for (var i = 0; i < 5; i++) {\n let curve_point = bezier_point(curve, best_t);\n let derivative = bezier_derivative(curve, best_t);\n let second_derivative = bezier_second_derivative(curve, best_t);\n \n let diff = curve_point - point;\n \n // f(t) = dot(P(t) - point, P'(t)) = 0\n let f = dot(diff, derivative);\n \n // f'(t) = dot(P'(t), P'(t)) + dot(P(t) - point, P''(t))\n let df = dot(derivative, derivative) + dot(diff, second_derivative);\n \n if (abs(df) < 1e-8) { break; }\n \n var new_t = best_t - f / df;\n \n // Clamp to valid range\n new_t = clamp(new_t, 0.0, 1.0);\n \n if (abs(new_t - best_t) < 1e-8) { break; }\n best_t = new_t;\n }\n \n return best_t;\n}\n\n// Get initial guess for closest point using hierarchical sampling\nfn initial_guess_closest_point(point: vec2f, curve: CubicBezier) -> f32 {\n // Stage 1: Coarse sampling to find approximate region\n var best_t = 0.0;\n var min_dist_sq = 1e10;\n \n let coarse_samples = 16; // More samples for better coverage\n for (var i = 0; i <= coarse_samples; i++) {\n let t = f32(i) / f32(coarse_samples);\n let curve_point = bezier_point(curve, t);\n let dist_sq = dot(curve_point - point, curve_point - point);\n \n if (dist_sq < min_dist_sq) {\n min_dist_sq = dist_sq;\n best_t = t;\n }\n }\n \n // Stage 2: Refine in the neighborhood of the best coarse sample\n let refine_range = 1.0 / f32(coarse_samples); // Search around ±one sample interval\n let t_min = max(0.0, best_t - refine_range);\n let t_max = min(1.0, best_t + refine_range);\n \n let fine_samples = 8;\n for (var i = 0; i <= fine_samples; i++) {\n let t = t_min + (t_max - t_min) * f32(i) / f32(fine_samples);\n let curve_point = bezier_point(curve, t);\n let dist_sq = dot(curve_point - point, curve_point - point);\n \n if (dist_sq < min_dist_sq) {\n min_dist_sq = dist_sq;\n best_t = t;\n }\n }\n \n return best_t;\n}\n\n// Project point onto line segment and return parameter [0,1]\nfn project_point_to_line_segment(point: vec2f, line_start: vec2f, line_end: vec2f) -> f32 {\n let line_vec = line_end - line_start;\n let point_vec = point - line_start;\n \n let line_length_sq = dot(line_vec, line_vec);\n \n if (line_length_sq < 1e-8) {\n return 0.0; // Degenerate line\n }\n \n let t = dot(point_vec, line_vec) / line_length_sq;\n return clamp(t, 0.0, 1.0);\n}\n\n// Calculate distance from point to line segment\nfn distance_to_line_segment(point: vec2f, line_start: vec2f, line_end: vec2f) -> f32 {\n let line_vec = line_end - line_start;\n let point_vec = point - line_start;\n \n let line_length_sq = dot(line_vec, line_vec);\n \n if (line_length_sq < 1e-8) {\n // Degenerate line - distance to start point\n return length(point_vec);\n }\n \n let t = dot(point_vec, line_vec) / line_length_sq;\n \n if (t <= 0.0) {\n // Closest point is the start of the line segment\n return length(point_vec);\n } else if (t >= 1.0) {\n // Closest point is the end of the line segment\n return length(point - line_end);\n } else {\n // Closest point is on the line segment\n let closest_point = line_start + t * line_vec;\n return length(point - closest_point);\n }\n}\n\n// Calculate winding number contribution from a line segment\nfn line_winding_contribution(point: vec2f, line_start: vec2f, line_end: vec2f) -> f32 {\n // Vector from query point to line endpoints\n let v1 = line_start - point;\n let v2 = line_end - point;\n \n // Skip if either point is very close to avoid numerical issues\n let dist1 = length(v1);\n let dist2 = length(v2);\n if (dist1 < 1e-6 || dist2 < 1e-6) {\n return 0.0;\n }\n \n // Normalize vectors\n let n1 = v1 / dist1;\n let n2 = v2 / dist2;\n \n // Calculate signed angle using atan2 for proper quadrant handling\n let cross_prod = n1.x * n2.y - n1.y * n2.x;\n let dot_prod = dot(n1, n2);\n \n // Use atan2 for proper quadrant handling\n let angle = atan2(cross_prod, dot_prod);\n \n return angle / (2.0 * 3.14159);\n}\n\n// Ray casting: count intersections of horizontal ray with curve\nfn ray_cast_curve_crossing(point: vec2f, curve: CubicBezier) -> i32 {\n // Quick Y-bounds check - if point is outside Y range, no intersection possible\n let y_min = min(min(curve.p0.y, curve.p1.y), min(curve.p2.y, curve.p3.y));\n let y_max = max(max(curve.p0.y, curve.p1.y), max(curve.p2.y, curve.p3.y));\n let x_min = max(max(curve.p0.x, curve.p1.x), max(curve.p2.x, curve.p3.x));\n \n if (point.y < y_min || point.y > y_max || point.x > x_min) {\n return 0;\n }\n \n // Sample the curve at regular intervals to find intersections\n var crossings = 0;\n let samples = 32; // Good balance between accuracy and performance\n \n for (var i = 0; i < samples; i++) {\n let t1 = f32(i) / f32(samples);\n let t2 = f32(i + 1) / f32(samples);\n \n let p1 = bezier_point(curve, t1);\n let p2 = bezier_point(curve, t2);\n \n // Check if this segment crosses the horizontal ray\n if (ray_crosses_segment(point, p1, p2)) {\n // Calculate the actual intersection X coordinate\n let intersection_x = get_ray_intersection_x(point.y, p1, p2);\n \n // Only count if intersection is to the right of the point\n if (intersection_x > point.x) {\n // Determine crossing direction for proper winding\n if (p1.y < point.y && p2.y >= point.y) {\n crossings += 1; // Upward crossing\n } else if (p1.y >= point.y && p2.y < point.y) {\n crossings -= 1; // Downward crossing\n }\n }\n }\n }\n \n return crossings;\n}\n\n// Check if horizontal ray from point crosses the line segment\nfn ray_crosses_segment(point: vec2f, p1: vec2f, p2: vec2f) -> bool {\n // Check if the segment crosses the horizontal line at point.y\n return (p1.y < point.y && p2.y >= point.y) || (p1.y >= point.y && p2.y < point.y);\n}\n\n// Calculate X coordinate where horizontal ray intersects line segment\nfn get_ray_intersection_x(ray_y: f32, p1: vec2f, p2: vec2f) -> f32 {\n if (abs(p2.y - p1.y) < 1e-8) {\n // Horizontal line - return leftmost X\n return min(p1.x, p2.x);\n }\n \n // Linear interpolation to find intersection X\n let t = (ray_y - p1.y) / (p2.y - p1.y);\n return p1.x + t * (p2.x - p1.x);\n}\n\n// Helper function: distance from point to line (for flatness test)\nfn distance_point_to_line(point: vec2f, line_start: vec2f, line_end: vec2f) -> f32 {\n let line_vec = line_end - line_start;\n let point_vec = point - line_start;\n \n let line_length_sq = dot(line_vec, line_vec);\n if (line_length_sq < 1e-8) {\n return length(point_vec);\n }\n \n let t = dot(point_vec, line_vec) / line_length_sq;\n let closest = line_start + clamp(t, 0.0, 1.0) * line_vec;\n return length(point - closest);\n}\n\nstruct ShapeInfo {\n signed_distance: f32,\n t: f32,\n angle: f32\n}\n\n// Main shape evaluation function using SDF approach with ray casting\nfn evaluate_shape(point: vec2f) -> ShapeInfo {\n var total_crossings: i32 = 0;\n var closest_curve_idx = 0u;\n var closest_t = 0.0;\n var min_distance: f32 = 1e+10;\n\n // For each curve, find closest point and count ray crossings\n let num_curves = arrayLength(&curves) / 4;\n for (var i = 0u; i < num_curves; i++) {\n let curve = CubicBezier(\n curves[i * 4 + 0],\n curves[i * 4 + 1],\n curves[i * 4 + 2],\n curves[i * 4 + 3]\n );\n\n // Check if this is a straight line,\n // we could check also p2, but at this point we should receive only\n // straight line on both handles, not a case for just one straight handle,\n // those are changed to have sibling cp value\n let is_straight_line = curve.p1.x > STRAIGHT_LINE_THRESHOLD;\n // let is_straight_line = curve.p1.x > STRAIGHT_LINE_THRESHOLD && curve.p2.x > STRAIGHT_LINE_THRESHOLD;\n\n\n if (is_straight_line) {\n // Handle as straight line from p0 to p3\n // if (u.stroke_width >= EPSILON) {\n let distance = distance_to_line_segment(point, curve.p0, curve.p3);\n // }\n if (distance < min_distance) {\n closest_curve_idx = i;\n closest_t = project_point_to_line_segment(point, curve.p0, curve.p3);\n min_distance = distance;\n }\n \n // Simple ray casting for line segment\n if (ray_crosses_segment(point, curve.p0, curve.p3)) {\n let intersection_x = get_ray_intersection_x(point.y, curve.p0, curve.p3);\n if (intersection_x > point.x) {\n if (curve.p0.y < point.y && curve.p3.y >= point.y) {\n total_crossings += 1; // Upward crossing\n } else if (curve.p0.y >= point.y && curve.p3.y < point.y) {\n total_crossings -= 1; // Downward crossing\n }\n }\n }\n } else {\n // Handle as normal cubic Bézier curve\n\n // if (u.stroke_width >= EPSILON) {\n let t = closest_point_on_bezier(point, curve);\n let closest_point = bezier_point(curve, t);\n let distance = length(point - closest_point);\n if (distance < min_distance) {\n closest_curve_idx = i;\n closest_t = t;\n min_distance = distance;\n }\n // }\n \n // Ray casting for curve\n total_crossings += ray_cast_curve_crossing(point, curve);\n }\n \n // min_distance = min(min_distance, distance);\n }\n\n var curve = CubicBezier(\n curves[closest_curve_idx * 4 + 0],\n curves[closest_curve_idx * 4 + 1],\n curves[closest_curve_idx * 4 + 2],\n curves[closest_curve_idx * 4 + 3]\n );\n\n // handling straight line case\n if (curve.p1.x > STRAIGHT_LINE_THRESHOLD) {\n curve.p1 = curve.p0;\n curve.p2 = curve.p3;\n }\n\n let closest_point = bezier_point(curve, closest_t);\n let angle = PI + atan2(point.y - closest_point.y, point.x - closest_point.x);\n \n // Determine if point is inside using odd-even rule (ray casting)\n // Count total crossings and check if odd\n let crossing_count = abs(total_crossings);\n let is_inside = (crossing_count % 2) == 1;\n let signed_dist = select(-min_distance, min_distance, is_inside);\n // let pixel_gradient = fwidth(signed_dist);\n \n // Anti-aliased fill (negative distance = inside)\n // let fill_alpha = smoothstep(pixel_gradient, -pixel_gradient, signed_dist);\n \n // Anti-aliased stroke (based on distance to curve boundary)\n // let stroke_half_width = u.stroke_width * 0.5;\n // let stroke_alpha = smoothstep(stroke_half_width + pixel_gradient, stroke_half_width - pixel_gradient, abs(signed_dist));\n return ShapeInfo(signed_dist, f32(closest_curve_idx) + closest_t, angle);\n}";const y="struct Uniform {\n placement_start: vec2f,\n placement_size: vec2f,\n};\n\n@group(0) @binding(0) var destination_tex: texture_storage_2d<rgba32float, write>;\n@group(0) @binding(1) var source_tex: texture_storage_2d<rgba32float, read>;\n@group(0) @binding(2) var depth_tex: texture_storage_2d<r32float, read_write>;\n@group(0) @binding(3) var<uniform> u: Uniform;\n\n@compute @workgroup_size(1) fn cs(\n @builtin(global_invocation_id) id : vec3u\n) {\n let texel_pos = vec2f(id.xy) + vec2f(0.5);\n\n let dest_pos = vec2i(u.placement_start + texel_pos);\n if (any(dest_pos < vec2i(0)) || any(dest_pos >= vec2i(textureDimensions(destination_tex)))) {\n return;\n }\n\n let ratio_source_tex_to_placement = vec2f(textureDimensions(source_tex)) / u.placement_size; // texture doesn't to be same size as placement_size!\n let depth = textureLoad(depth_tex, dest_pos).r;\n let source_texel = getSample(texel_pos * ratio_source_tex_to_placement);\n let scaled_dist = source_texel.r / ratio_source_tex_to_placement.x; // we assume all sizes keeps their ratio width / height, so we can use .x or .y here\n\n if (scaled_dist > depth){\n textureStore(destination_tex, dest_pos, vec4f(scaled_dist, source_texel.g, source_texel.b, source_texel.a));\n textureStore(depth_tex, dest_pos, vec4f(scaled_dist));\n }\n}\n\nfn getSample(pos: vec2f) -> vec4f {\n let floor_pos = floor(pos - 0.5);\n let fract_pos = (pos - 0.5) - floor_pos;\n\n let p00 = vec2u(floor_pos);\n let p10 = vec2u(floor_pos + vec2f(1.0, 0.0));\n let p01 = vec2u(floor_pos + vec2f(0.0, 1.0));\n let p11 = vec2u(floor_pos + vec2f(1.0, 1.0));\n\n let c00 = textureLoad(source_tex, p00);\n let c10 = textureLoad(source_tex, p10);\n let c01 = textureLoad(source_tex, p01);\n let c11 = textureLoad(source_tex, p11);\n\n let top = mix(c00, c10, fract_pos.x);\n let bottom = mix(c01, c11, fract_pos.x);\n\n return mix(top, bottom, fract_pos.y);\n}";const d="@group(0) @binding(0) var texture: texture_storage_2d<r32float, write>;\n\n@compute @workgroup_size(1)\nfn main(@builtin(global_invocation_id) id: vec3u) {\n textureStore(texture, id.xy, vec4f(-3.402823466e+38));\n}";const m="@group(0) @binding(0) var texture: texture_storage_2d<rgba32float, write>;\n\n@compute @workgroup_size(1)\nfn main(@builtin(global_invocation_id) id: vec3u) {\n textureStore(texture, id.xy, vec4f(-3.402823466e+38));\n}";let b,D,S,w,v,k,x,G,U,N,F,M,R;const L={buffer:null};let z,J=[];function q(A){J.push(A)}function O(){J.forEach((A=>A.destroy())),J=[]}function K(A,e){L.buffer=A.createBuffer({label:"uniforms",size:64,usage:GPUBufferUsage.UNIFORM|GPUBufferUsage.COPY_DST}),z=A.createBuffer({label:"uniforms",size:64,usage:GPUBufferUsage.UNIFORM|GPUBufferUsage.COPY_DST}),b=function(A,e){const t=A.createShaderModule({label:"draw triangle module",code:i}),r=A.createRenderPipeline({label:"draw triangle pipeline",layout:"auto",vertex:{module:t,entryPoint:"vs",buffers:[{arrayStride:4*n,stepMode:"instance",attributes:[{shaderLocation:0,offset:0,format:"float32x4"},{shaderLocation:1,offset:16,format:"float32x4"},{shaderLocation:2,offset:32,format:"float32x4"},{shaderLocation:3,offset:48,format:"unorm8x4"},{shaderLocation:4,offset:52,format:"float32x3"}]}]},fragment:{module:t,entryPoint:"fs",targets:[{format:e,blend:{color:{srcFactor:"one",dstFactor:"one-minus-src-alpha"},alpha:{srcFactor:"one",dstFactor:"one-minus-src-alpha"}}}]},multisample:{count:4}}),s=A.createBindGroup({layout:r.getBindGroupLayout(0),entries:[{binding:0,resource:{buffer:L.buffer}}]});return function(e,t){const i=t.byteLength/(4*n),a=A.createBuffer({label:"draw triangle - vertex buffer",size:t.byteLength,usage:GPUBufferUsage.VERTEX|GPUBufferUsage.COPY_DST});A.queue.writeBuffer(a,0,t),q(a),e.setPipeline(r),e.setVertexBuffer(0,a),e.setBindGroup(0,s),e.draw(3,i)}}(A,e),D=function(A,e){const t=A.createShaderModule({label:"blur shader module",code:r.replace("{presentationFormat}",e)}),i=A.createComputePipeline({layout:"auto",compute:{module:t,entryPoint:"main"}}),n=A.createSampler({magFilter:"linear",minFilter:"linear"});return function(e,t,r,o,g,I,Q){const C=A.createBuffer({size:16,usage:GPUBufferUsage.COPY_DST|GPUBufferUsage.UNIFORM}),c=A.createBuffer({size:16,usage:GPUBufferUsage.COPY_DST|GPUBufferUsage.UNIFORM}),B=[A.createTexture({label:"draw blur swap texture",size:{width:t.width,height:t.height},format:t.format,usage:GPUTextureUsage.STORAGE_BINDING|GPUTextureUsage.TEXTURE_BINDING}),t],l=A.createBindGroup({layout:i.getBindGroupLayout(0),entries:[{binding:0,resource:n},{binding:1,resource:{buffer:C}},{binding:2,resource:B[1].createView()},{binding:3,resource:B[0].createView()}]}),E=A.createBindGroup({layout:i.getBindGroupLayout(0),entries:[{binding:0,resource:n},{binding:1,resource:{buffer:c}},{binding:2,resource:B[0].createView()},{binding:3,resource:B[1].createView()}]}),u=Math.max(1,s-(o-1)),f=Math.max(1,s-(g-1)),h=new DataView(new ArrayBuffer(16));h.setInt32(0,o,!0),h.setUint32(4,u,!0),h.setFloat32(8,I,!0),h.setUint32(12,0,!0);const p=new DataView(new ArrayBuffer(16));p.setInt32(0,g,!0),p.setUint32(4,f,!0),p.setFloat32(8,Q,!0),p.setUint32(12,1,!0),A.queue.writeBuffer(C,0,h),A.queue.writeBuffer(c,0,p);const y=e.beginComputePass({label:"blur-pass"});y.setPipeline(i);for(let A=0;A<r;++A)y.setBindGroup(0,l),y.dispatchWorkgroups(Math.ceil(t.width/u),Math.ceil(t.height/a[1])),y.setBindGroup(0,E),y.dispatchWorkgroups(Math.ceil(t.height/f),Math.ceil(t.width/a[1]));y.end(),q(B[0]),q(C),q(c)}}(A,e),S=function(A,e){const t=A.createShaderModule({label:"draw texture module",code:o}),i=A.createSampler({minFilter:"linear",magFilter:"linear"}),n=A.createRenderPipeline({label:"draw texture pipeline",layout:"auto",vertex:{module:t,entryPoint:"vs",buffers:[{arrayStride:g,attributes:[{shaderLocation:0,offset:0,format:"float32x4"}]}]},fragment:{module:t,entryPoint:"fs",targets:[{format:e,blend:{color:{srcFactor:"one",dstFactor:"one-minus-src-alpha"},alpha:{srcFactor:"one",dstFactor:"one-minus-src-alpha"}}}]},multisample:{count:4}}),r=new WeakMap;return function(e,t,s){const a=t.byteLength/g,o=A.createBuffer({label:"draw texture - vertex buffer",size:t.byteLength,usage:GPUBufferUsage.VERTEX|GPUBufferUsage.COPY_DST});A.queue.writeBuffer(o,0,t);let I=r.get(s);I||(I=A.createBindGroup({layout:n.getBindGroupLayout(0),entries:[{binding:0,resource:{buffer:L.buffer}},{binding:1,resource:i},{binding:2,resource:s.createView()}]}),r.set(s,I)),e.setPipeline(n),e.setVertexBuffer(0,o),e.setBindGroup(0,I),e.draw(a)}}(A,e),w=function(A,e){const t=A.createShaderModule({label:"pick texture module",code:I}),i=A.createSampler({minFilter:"linear",magFilter:"linear"}),n=A.createRenderPipeline({label:"pick texture pipeline",layout:"auto",vertex:{module:t,entryPoint:"vs",buffers:[{arrayStride:Q,attributes:[{shaderLocation:0,offset:0,format:"float32x4"},{shaderLocation:1,offset:16,format:"uint32x4"}]}]},fragment:{module:t,entryPoint:"fs",targets:[{format:"rgba32uint"}]}}),r=new WeakMap;return function(t,s,a){const o=s.byteLength/Q,g=A.createBuffer({label:"pick texture - vertex buffer",size:s.byteLength,usage:GPUBufferUsage.VERTEX|GPUBufferUsage.COPY_DST});A.queue.writeBuffer(g,0,s);let I=r.get(a);I||(I=A.createBindGroup({layout:n.getBindGroupLayout(0),entries:[{binding:0,resource:{buffer:e}},{binding:1,resource:i},{binding:2,resource:a.createView()}]}),r.set(a,I)),t.setPipeline(n),t.setVertexBuffer(0,g),t.setBindGroup(0,I),t.draw(o)}}(A,z),v=function(A,e){const t=A.createShaderModule({label:"pick triangle module",code:C}),i=A.createRenderPipeline({label:"pick triangle pipeline",layout:"auto",vertex:{module:t,entryPoint:"vs",buffers:[{arrayStride:4*c,stepMode:"instance",attributes:[{shaderLocation:0,offset:0,format:"float32x4"},{shaderLocation:1,offset:16,format:"float32x4"},{shaderLocation:2,offset:32,format:"float32x4"},{shaderLocation:3,offset:48,format:"uint32x4"},{shaderLocation:4,offset:64,format:"float32x3"}]}]},fragment:{module:t,entryPoint:"fs",targets:[{format:"rgba32uint"}]}});let n=null;return function(t,r){const s=r.byteLength/(4*c),a=A.createBuffer({label:"pick triangle vertex buffer vertices",size:r.byteLength,usage:GPUBufferUsage.VERTEX|GPUBufferUsage.COPY_DST});A.queue.writeBuffer(a,0,r),n||(n=A.createBindGroup({layout:i.getBindGroupLayout(0),entries:[{binding:0,resource:{buffer:e}}]})),t.setPipeline(i),t.setVertexBuffer(0,a),t.setBindGroup(0,n),t.draw(3,s)}}(A,z),k=l(A,e,E,8),x=l(A,e,u,88),G=l(A,e,f,88),U=function(A,e){const t=A.createShaderModule({label:"pickShape shader",code:h}),i=A.createRenderPipeline({label:"pickShape pipeline",layout:"auto",vertex:{module:t,entryPoint:"vs",buffers:[{arrayStride:32,attributes:[{shaderLocation:0,offset:0,format:"float32x4"},{shaderLocation:1,offset:16,format:"uint32x4"}]}]},fragment:{module:t,entryPoint:"fs",targets:[{format:"rgba32uint"}]}});return function(t,n,r,s){const a=n.byteLength/32,o=A.createBuffer({label:"drawShape uniforms",size:r.byteLength,usage:GPUBufferUsage.UNIFORM|GPUBufferUsage.COPY_DST});A.queue.writeBuffer(o,0,r),q(o);const g=A.createBuffer({label:"pick texture - vertex buffer",size:n.byteLength,usage:GPUBufferUsage.VERTEX|GPUBufferUsage.COPY_DST});A.queue.writeBuffer(g,0,n),q(g);const I=A.createBindGroup({layout:i.getBindGroupLayout(0),entries:[{binding:0,resource:{buffer:e}},{binding:1,resource:{buffer:o}},{binding:2,resource:s.createView()}]});t.setPipeline(i),t.setVertexBuffer(0,g),t.setBindGroup(0,I),t.draw(a)}}(A,z),N=function(A){const e=A.createShaderModule({label:"computeShape shader",code:p}),t=A.createComputePipeline({label:"computeShape pipeline",layout:"auto",compute:{module:e}});return function(e,i,n){const r=A.createBuffer({label:"computeShape curves buffer",size:i.byteLength,usage:GPUBufferUsage.STORAGE|GPUBufferUsage.COPY_DST});A.queue.writeBuffer(r,0,i),q(r),e.setPipeline(t);const s=A.createBindGroup({layout:t.getBindGroupLayout(0),entries:[{binding:0,resource:n.createView()},{binding:1,resource:{buffer:r}}]});e.setBindGroup(0,s),e.dispatchWorkgroups(n.width,n.height)}}(A),F=function(A){const e=A.createShaderModule({label:"combineSdf shader",code:y}),t=A.createComputePipeline({label:"combineSdf pipeline",layout:"auto",compute:{module:e}});return function(e,i,n,r,s){const a=A.createBuffer({label:"combine sdf uniform buffer",size:s.byteLength,usage:GPUBufferUsage.UNIFORM|GPUBufferUsage.COPY_DST});A.queue.writeBuffer(a,0,s),q(a),e.setPipeline(t);const o=A.createBindGroup({layout:t.getBindGroupLayout(0),entries:[{binding:0,resource:i.createView()},{binding:1,resource:n.createView()},{binding:2,resource:r.createView()},{binding:3,resource:{buffer:a}}]});e.setBindGroup(0,o);const g=s.getFloat32(8,!0),I=s.getFloat32(12,!0);e.dispatchWorkgroups(g,I)}}(A),M=function(A){const e=A.createShaderModule({label:"fill texture with max float shader module",code:d}),t=A.createComputePipeline({layout:"auto",compute:{module:e}});return function(e,i){const n=A.createBindGroup({layout:t.getBindGroupLayout(0),entries:[{binding:0,resource:i.createView()}]});e.setPipeline(t),e.setBindGroup(0,n),e.dispatchWorkgroups(i.width,i.height)}}(A),R=function(A){const e=A.createShaderModule({label:"fill texture with max float shader module",code:m}),t=A.createComputePipeline({layout:"auto",compute:{module:e}});return function(e,i){const n=A.createBindGroup({layout:t.getBindGroupLayout(0),entries:[{binding:0,resource:i.createView()}]});e.setPipeline(t),e.setBindGroup(0,n),e.dispatchWorkgroups(i.width,i.height)}}(A)}},3438:(A,e,t)=>{t.a(A,(async(A,i)=>{try{t.d(e,{w:()=>Q,z:()=>C});var n=t(688),r=t(2842),s=t(2633),a=t(4302),o=t(238),g=A([s,a]);[s,a]=g.then?(await g)():g;let I=()=>{throw new Error("Cache not started")};function Q(){I()}function C(A,e,t,i,g,Q){const C=i.max_x-i.min_x,c=i.max_y-i.min_y,B=a.yE(t,g,Q),l={label:"texture cache pass",colorAttachments:[{view:(0,o.A)(A,g,Q,B.format).createView(),resolveTarget:B.createView(),loadOp:"clear",storeOp:"store"}]},E=e.beginRenderPass(l);(0,s.H)(E);const u=A.createBuffer({label:"texture cache - matrix buffer",size:64,usage:GPUBufferUsage.UNIFORM|GPUBufferUsage.COPY_DST}),f=r.A.ortho(i.min_x,i.min_x+C,i.min_y+c,i.min_y,1,-1);A.queue.writeBuffer(u,0,f);const h=n.IP.buffer;n.IP.buffer=u,I=()=>{E.end(),n.IP.buffer=h,(0,n.nj)(u)},a.Uw(t,B)}i()}catch(c){i(c)}}))},5270:(A,e,t)=>{t.a(A,(async(A,i)=>{try{t.d(e,{Al:()=>B,DP:()=>l,rU:()=>E});var n=t(191),r=t(945),s=t(5671),a=t(4302),o=t(9146),g=A([a,o]);[a,o]=g.then?(await g)():g;var I=function(A,e,t,i){return new(t||(t=Promise))((function(n,r){function s(A){try{o(i.next(A))}catch(A){r(A)}}function a(A){try{o(i.throw(A))}catch(A){r(A)}}function o(A){var e;A.done?n(A.value):(e=A.value,e instanceof t?e:new t((function(A){A(e)}))).then(s,a)}o((i=i.apply(A,e||[])).next())}))};const Q=250,C=10;let c;function B(){return I(this,void 0,void 0,(function*(){try{const A=fetch(n).then((A=>A.arrayBuffer()));c=r.Ay.parse(yield A)}catch(A){console.error("Failed to load font",A)}}))}function l(A,e){const t=String.fromCharCode(A),i=String.fromCharCode(e),n=c.charToGlyph(t),r=c.charToGlyph(i);return c.getKerningValue(n,r)/c.unitsPerEm}function E(A,e){var t;const i=String.fromCharCode(e),n=c.getPath(i,0,0,1),r=n.toPathData(5),g=(0,s.A)(r),I=[],{x1:B,x2:l,y1:E,y2:u}=n.getBoundingBox();g.forEach((A=>{for(let e=0;e<A.length;e+=3){const t=A.slice(e,e+4).map((A=>({x:A.x-B,y:-(A.y-u)})));I.push(...t)}I.splice(-1)}));let f=l-B;if(0===f){f=(null!==(t=c.charToGlyph(" ").advanceWidth)&&void 0!==t?t:Q)/c.unitsPerEm}e==C&&(f=0);const h=new o.V9({x:B,y:-u,width:f,height:-E- -u,sdf_texture_id:I.length>0?a.CW():null});return h.setPaths(I),h}i()}catch(u){i(u)}}))},4461:(A,e,t)=>{t.a(A,(async(A,i)=>{try{t.d(e,{A:()=>a});var n=t(2842),r=t(4109),s=A([r]);function a(A){const e=n.A.ortho(0,A.width,0,A.height,1,-1),t=n.A.translate(e,[r.UI.x,r.UI.y,0]);return n.A.scale(t,[r.UI.zoom,r.UI.zoom,1])}r=(s.then?(await s)():s)[0],i()}catch(o){i(o)}}))},9753:(A,e,t)=>{t.d(e,{A:()=>s,L:()=>r});var i=t(238);let n;function r(){null==n||n.destroy(),n=void 0}function s(A,e){const t=A.getCurrentTexture();n=(0,i.A)(e,t.width,t.height,t.format,n);return{label:"our render to canvas renderPass",colorAttachments:[{view:n.createView({label:"multisample texture view"}),resolveTarget:t.createView({label:"canvas texture view"}),clearValue:[0,0,0,1],loadOp:"clear",storeOp:"store"}]}}},238:(A,e,t)=>{function i(A,e,t,i,n){return n&&n.width===e&&n.height===t||(null==n||n.destroy(),n=A.createTexture({label:"multisample texture",format:i,usage:GPUTextureUsage.RENDER_ATTACHMENT,size:[e,t],sampleCount:4})),n}t.d(e,{A:()=>i})},8156:(A,e,t)=>{t.a(A,(async(A,i)=>{try{t.d(e,{A:()=>m,b:()=>u.b});var n=t(214),r=t(1911),s=t(688),a=t(2633),o=t(9146),g=t(4109),I=t(7846),Q=t(4302),C=t(3012),c=t(7608),B=t(9104),l=t(8513),E=t(5270),u=t(1613),f=t(9753),h=t(1317),p=A([a,o,g,Q,c,l,E,h]);[a,o,g,Q,c,l,E,h]=p.then?(await p)():p;var y=function(A,e,t,i){return new(t||(t=Promise))((function(n,r){function s(A){try{o(i.next(A))}catch(A){r(A)}}function a(A){try{o(i.throw(A))}catch(A){r(A)}}function o(A){var e;A.done?n(A.value):(e=A.value,e instanceof t?e:new t((function(A){A(e)}))).then(s,a)}o((i=i.apply(A,e||[])).next())}))};const d=0;function m(A,e,t,i,B,u,p,m,S,w){return y(this,void 0,void 0,(function*(){let v=0,k=!1,x={width:A,height:e,assets:[]};function G(){p(v>0||k)}let U=!1;const{device:N,presentationFormat:F,storageFormat:M}=yield(0,r.A)();o.Ws(x.width,x.height,N.limits.maxTextureDimension2D,N.limits.maxBufferSize),Q.Ts(N,F,M,(A=>{v=A,G(),q()}));const R=t.getContext("webgpu");if(!R)throw Error("WebGPU from canvas needs to be always provided");function L(){o.a3(t.width/(t.clientWidth*g.UI.zoom))}R.configure({device:N,format:F});let z=!1;(0,n.A)(t,N,(()=>{z||((0,h.A)(x.width,x.height,"fit",t,30),z=!0),L()})),(0,s.Ay)(N,F),(0,g.Ay)(t,L,(()=>{k=!0,G()}));const J=(0,C.A)((()=>{U||v>0||(0,c.A)(N,F,t,x.width,x.height,t.width/t.clientWidth,T,m)}),5e3),q=()=>{0===v&&J()};function O(){const A=x.assets.map((A=>{var e;if("img"in A&&A.img){const e=A.img;return{id:e.id,texture_id:e.texture_id,bounds:b([...e.bounds]),url:Q.ID(e.texture_id)}}if("shape"in A&&A.shape){const e=A.shape;if(!e.bounds)throw Error("Shape bounds are missing in asset with id: "+e.id);return{id:e.id,paths:[...e.paths].map((A=>[...A].map((A=>({x:A.x,y:A.y}))))),bounds:b([...e.bounds]),props:D(e.props),sdf_texture_id:e.sdf_texture_id,cache_texture_id:e.cache_texture_id}}if("text"in A&&A.text)return{id:A.text.id,content:null!==(e=A.text.content)&&void 0!==e?e:"",bounds:b([...A.text.bounds]),font_size:A.text.font_size,props:D(A.text.props)};throw Error("Unknown asset type")}));B(Object.assign(Object.assign({},x),{assets:A})),q()}o.qN((A=>{x={width:A.width,height:A.height,assets:[...A.assets]},O()})),E.Al(),o.JQ((A=>u([...A]))),o.Zr(Q.CW,Q.qD),o.el(l.sS,l.b8,l.le,l.c6,E.rU,E.DP),o.Mv(S),o.oA(((A,e)=>{w(A&&b([...A]),e&&D(e))}));const{stopRAF:K,capturePreview:T}=(0,a.A)(t,R,N,(()=>{k=!1,G()}));return{addImage:A=>{const e=Q.WQ(A,(({width:t,height:n,isNewTexture:r,shapeAssets:s,error:a})=>{if(a)throw a;if(s)return void o.x7(Object.assign(Object.assign({},x),{assets:[...x.assets,...s]}),!0);const g={img:{id:d,bounds:(0,I.A)(t,n,x.width,x.height),texture_id:e}};o.x7(Object.assign(Object.assign({},x),{assets:[...x.assets,g]}),!0),r&&i(A,(A=>{Q.Kg(e,A),O()}))}))},removeAsset:o.Vx,setSnapshot:(A,...e)=>y(this,[A,...e],void 0,(function*(A,e=!1){const t=yield Promise.allSettled(A.assets.map((A=>new Promise(((e,t)=>{if("paths"in A)return e({shape:{id:A.id||d,paths:A.paths,props:A.props,bounds:A.bounds,sdf_texture_id:A.sdf_texture_id||Q.CW(),cache_texture_id:A.cache_texture_id||null}});if("content"in A)return e({text:{id:A.id||d,content:A.content,bounds:A.bounds,font_size:A.font_size,props:A.props}});if(A.bounds)return e({img:{id:A.id||d,bounds:A.bounds,texture_id:A.texture_id||Q.WQ(A.url)}});const n=Q.WQ(A.url,(({width:r,height:s,isNewTexture:a,shapeAssets:o,error:g})=>g?t(g):o?e(o):(a&&i(A.url,(A=>{Q.Kg(n,A),O()})),e({img:{id:d,bounds:(0,I.A)(r,s,x.width,x.height),texture_id:n}}))))})))));t.filter((A=>"rejected"===A.status)).forEach((A=>{console.error(A.reason)}));const n=t.filter((A=>"fulfilled"===A.status)).flatMap((A=>Array.isArray(A.value)?[...A.value]:[A.value]));o.x7(Object.assign(Object.assign({},A),{assets:n}),e),q()})),destroy:()=>{U=!0,K(),o.ZE(),R.unconfigure(),(0,f.L)(),N.destroy()},setTool:A=>{S(A),o.tE(A)},toggleSharedTextEffects:o.$u,updateAssetProps:A=>{o.Er(A)},updateAssetBounds:A=>{o.Hg(A)}}}))}function b(A){return A.map((A=>({x:A.x,y:A.y,u:A.u,v:A.v})))}function D(A){var e;return{sdf_effects:[...A.sdf_effects].map((A=>({dist_start:A.dist_start,dist_end:A.dist_end,fill:(0,B.A)(A.fill)}))),filter:(null===(e=A.filter)||void 0===e?void 0:e.gaussianBlur)?{gaussianBlur:{x:A.filter.gaussianBlur.x,y:A.filter.gaussianBlur.y}}:null,opacity:A.opacity}}i()}catch(S){i(S)}}))},9105:(A,e,t)=>{function i(A,e,t,i,n){const r=A.createTexture({label:"manually crafted texture",size:[i,n],format:e,usage:GPUTextureUsage.TEXTURE_BINDING|GPUTextureUsage.COPY_DST});return A.queue.writeTexture({texture:r},t,{bytesPerRow:4*i},{width:i,height:n}),r}function n(A,e){const t=[255,0,0,255],n=[255,255,0,255];return i(A,e,new Uint8Array([[0,0,255,255],t,t,t,t,t,n,n,n,t,t,n,t,t,t,t,n,n,t,t,t,n,t,t,t,t,n,t,t,t,t,t,t,t,t].flat()),5,7)}function r(A,e){const t=[0,0,0,255],n=[255,0,0,255];return i(A,e,new Uint8Array([t,t,t,t,t,t,n,t,n,t,t,n,t,n,t,t,t,n,t,t,t,n,t,n,t,t,n,t,n,t,t,t,t,t,t].flat()),5,7)}t.d(e,{o:()=>r,s:()=>n})},4109:(A,e,t)=>{t.a(A,(async(A,i)=>{try{t.d(e,{Ay:()=>B,UI:()=>C,Wn:()=>c});var n=t(9146),r=t(6253),s=t(8513),a=A([n,s]);[n,s]=a.then?(await a)():a;const g=-1;var o;!function(A){A[A.Pan=0]="Pan",A[A.Zoom=1]="Zoom",A[A.None=2]="None"}(o||(o={}));let I=o.None,Q=null;const C={x:0,y:0,zoom:1},c={x:0,y:0,afterPickEventsQueue:[]};function B(A,e,t){function i(){return[(c.x-C.x)/C.zoom,(A.height-c.y-C.y)/C.zoom]}function a(e){const t=A.getBoundingClientRect(),i=A.width/t.width;c.x=(e.clientX-t.left)*i,c.y=(e.clientY-t.top)*i}function B(t,i,n){const s=C.zoom;C.zoom=(0,r.A)(C.zoom+t,.1,20),e();const a=C.zoom/s;C.x=i-(i-C.x)*a;const o=A.height-n;C.y=o-(o-C.y)*a}function l(t){const i=C.zoom;C.zoom=(0,r.A)(C.zoom-.005*t,.1,20),e();const n=C.zoom/i;C.x=c.x-(c.x-C.x)*n;const s=A.height-c.y;C.y=s-(s-C.y)*n}c.x=g,c.y=g,A.addEventListener("mouseleave",(()=>{t(),A.style.cursor="default";const e=()=>{c.x=g,c.y=g,n.YF()};c.afterPickEventsQueue.length>0?c.afterPickEventsQueue.push({requireNewPick:!1,cb:e}):e()})),A.addEventListener("dblclick",(()=>{n.kl()})),A.addEventListener("mousemove",(A=>{if(Q)return a(A),C.x=c.x-Q.x,void(C.y=-(c.y-Q.y));t();const e=()=>{a(A),n.us(...i())};c.afterPickEventsQueue.length>0?c.afterPickEventsQueue.push({requireNewPick:!1,cb:e}):e()})),A.addEventListener("mousedown",(e=>{if(I===o.Pan)return a(e),Q={x:c.x-C.x,y:c.y+C.y},void(A.style.cursor="grabbing");Q=null,t(),a(e),c.afterPickEventsQueue.push({requireNewPick:!0,cb:n.po.bind(null,...i())})})),A.addEventListener("mouseup",(()=>{I=o.None,Q=null,A.style.cursor="default",t(),c.afterPickEventsQueue.length>0?c.afterPickEventsQueue.push({requireNewPick:!1,cb:n.cV}):n.cV()})),A.addEventListener("wheel",(A=>{if(a(A),A.preventDefault(),I===o.Zoom){l(Math.abs(A.deltaY)>Math.abs(A.deltaX)?A.deltaY:-A.deltaX)}else A.ctrlKey?l(A.deltaY*C.zoom):(C.x-=A.deltaX,C.y+=A.deltaY)})),document.body.addEventListener("keydown",(e=>{const t=e.ctrlKey||"AltLeft"===e.code||"AltRight"===e.code;if(!s.Ol()||t)switch(e.key){case" ":e.preventDefault(),I!==o.Pan&&(A.style.cursor="grab",I=o.Pan);break;case"Alt":e.preventDefault(),I=o.Zoom;break;case"Escape":e.preventDefault(),n.PT();break;case"=":if(e.ctrlKey||e.metaKey){e.preventDefault();B(.1,c.x!==g?c.x:A.width/2,c.y!==g?c.y:A.height/2)}break;case"-":if(e.ctrlKey||e.metaKey||e.shiftKey){e.preventDefault();B(-.1,c.x!==g?c.x:A.width/2,c.y!==g?c.y:A.height/2)}}})),document.body.addEventListener("keyup",(e=>{" "!==e.key&&"Alt"!==e.key||(I=o.None)," "===e.key&&null===Q&&(A.style.cursor="default")}))}i()}catch(l){i(l)}}))},2633:(A,e,t)=>{t.a(A,(async(A,i)=>{try{t.d(e,{A:()=>l,H:()=>B});var n=t(9753),r=t(688),s=t(4461),a=t(2872),o=t(9146),g=t(4109),I=t(4302),Q=t(3438),C=A([s,a,o,g,I,Q]);let c;function B(A){c=A}function l(A,e,t,i){let C,B,l;const E=new a.A(t);o.XO(I.Eb,((A,e,i,n)=>{(0,Q.z)(t,l,A,e,i,n)}),Q.w),o.wV({draw_texture:(A,e)=>{(0,r._J)(c,A.dataView,I.bS(e))},draw_triangle:A=>{const e=A["*"].dataView;(0,r.D4)(c,e)},compute_shape:(A,e,t,i)=>{const n=A["*"].dataView;I.yo(i,e,t),(0,r.DS)(B,n,I.Mc(i))},clear_sdf:(A,e,t,i)=>{I.yo(A,t,i),I.yo(e,t,i),(0,r.RW)(B,I.Mc(A)),(0,r.ym)(B,I.Mc(e))},combine_sdf:(A,e,t,i)=>{(0,r.bB)(B,I.Mc(A),I.Mc(e),I.Mc(t),i.dataView)},draw_blur:(A,e,t,i,n,s)=>{(0,r.oQ)(l,I.Mc(A),e,t,i,n,s)},draw_shape:(A,e,t)=>{let i,n;if("linear"in e&&e.linear)i=r.Jl,n=e.linear;else if("radial"in e&&e.radial)i=r.np,n=e.radial;else{if(!("solid"in e)||!e.solid)throw Error("Unsupported shape uniform type");i=r.H,n=e.solid}const s=A["*"].dataView;i(c,I.Mc(t),s,n.dataView)},pick_texture:(A,e)=>{const t=A["*"].dataView;(0,r.Fh)(C,t,I.bS(e))},pick_shape:(A,e,t)=>{(0,r.Zo)(C,A["*"].dataView,e.dataView,I.Mc(t))},pick_triangle:A=>{const e=A["*"].dataView;(0,r.Q3)(C,e)}});let u=0;const f={x:0,y:0};function h(a,I){o.io(a),l=t.createCommandEncoder({label:"draw canvas main encoder"}),B=l.beginComputePass(),o.Gl(),B.end(),o.Wp();const Q=(0,n.A)((null==I?void 0:I.ctx)||e,t);c=l.beginRenderPass(Q);const p=(0,s.A)((null==I?void 0:I.canvas)||A);if(t.queue.writeBuffer(r.IP.buffer,0,p),o.LI(!!I),c.end(),I){const A=l.finish();return t.queue.submit([A]),(0,r.zK)(),void I.onCapture()}0===g.Wn.afterPickEventsQueue.length&&i();if(g.Wn.afterPickEventsQueue.length>0||f.x!==g.Wn.x||f.y!==g.Wn.y){f.x=g.Wn.x,f.y=g.Wn.y;const e=E.createMatrix(A,p);t.queue.writeBuffer(r.R9,0,e);const i=E.startPicking(l);C=i.pass,o.aO(),i.end()}const y=l.finish();t.queue.submit([y]),(0,r.zK)(),E.asyncPick(),u=requestAnimationFrame(h)}function p(){cancelAnimationFrame(u)}l=t.createCommandEncoder({label:"prerender ui elements SDF"}),B=l.beginComputePass(),o.wH(),B.end(),t.queue.submit([l.finish()]),u=requestAnimationFrame(h);return{stopRAF:p,capturePreview:(A,e)=>new Promise((t=>{p(),h(performance.now(),{canvas:A,ctx:e,onCapture:t}),u=requestAnimationFrame(h)}))}}[s,a,o,g,I,Q]=C.then?(await C)():C,i()}catch(E){i(E)}}))},9104:(A,e,t)=>{function i(A){if("solid"in A&&A.solid)return{solid:[...A.solid]};if("linear"in A&&A.linear)return{linear:{start:{x:A.linear.start.x,y:A.linear.start.y},end:{x:A.linear.end.x,y:A.linear.end.y},stops:[...A.linear.stops].map((A=>({offset:A.offset,color:[...A.color]})))}};if("radial"in A&&A.radial)return{radial:{center:{x:A.radial.center.x,y:A.radial.center.y},destination:{x:A.radial.destination.x,y:A.radial.destination.y},radius_ratio:A.radial.radius_ratio,stops:[...A.radial.stops].map((A=>({offset:A.offset,color:[...A.color]})))}};throw Error("Unknown fill type")}t.d(e,{A:()=>i})},6479:(A,e,t)=>{t.a(A,(async(A,i)=>{try{t.d(e,{A:()=>o});var n=t(9146),r=t(4302),s=t(8451),a=A([n,r]);function o(A,e,t){if(!t){const e=new s.I;A.forEach((A=>{e.addBox(A.boundingBox)})),t=e.max_y}A.forEach((({paths:A})=>{const i=A.map((A=>A.map((A=>({x:A.x,y:t-A.y})))));n.Iq(e,i,r.CW())}))}[n,r]=a.then?(await a)():a,i()}catch(g){i(g)}}))},8451:(A,e,t)=>{t.d(e,{I:()=>n,U:()=>o});var i=t(8103);class n{constructor(A){this.min_x=1/0,this.min_y=1/0,this.max_x=-1/0,this.max_y=-1/0,A&&A.forEach((A=>this.addPoint(A)))}addPoint(A){this.min_x=Math.min(this.min_x,A.x),this.min_y=Math.min(this.min_y,A.y),this.max_x=Math.max(this.max_x,A.x),this.max_y=Math.max(this.max_y,A.y)}addBox(A){this.min_x=Math.min(this.min_x,A.min_x),this.min_y=Math.min(this.min_y,A.min_y),this.max_x=Math.max(this.max_x,A.max_x),this.max_y=Math.max(this.max_y,A.max_y)}}function r(A,e,t){const i=1e-10;if(Math.abs(A)<i)return Math.abs(e)<i?[]:[-t/e];const n=e*e-4*A*t;if(n<-1e-10)return[];if(Math.abs(n)<i)return[-e/(2*A)];const r=Math.sqrt(n);return[(-e+r)/(2*A),(-e-r)/(2*A)]}function s(A,e,t,i,n){const r=A*A,s=1-A,a=s*s;return e*(a*s)+3*t*A*a+3*i*r*s+n*(r*A)}function a(A,e,t,i){let a=Math.min(A.x,i.x),o=Math.max(A.x,i.x),g=Math.min(A.y,i.y),I=Math.max(A.y,i.y);r(3*(-A.x+3*e.x-3*t.x+i.x),6*(A.x-2*e.x+t.x),3*(-A.x+e.x)).forEach((n=>{if(n>0&&n<1){const r=s(n,A.x,e.x,t.x,i.x);a=Math.min(a,r),o=Math.max(o,r)}}));r(3*(-A.y+3*e.y-3*t.y+i.y),6*(A.y-2*e.y+t.y),3*(-A.y+e.y)).forEach((n=>{if(n>0&&n<1){const r=s(n,A.y,e.y,t.y,i.y);g=Math.min(g,r),I=Math.max(I,r)}}));const Q=new n;return Q.min_x=a,Q.min_y=g,Q.max_x=o,Q.max_y=I,Q}function o(A){const e=new n;return A.forEach((A=>{const t=function(A){if(A.length<4)return new n(A);const e=A.length%3==0,t=new n,r=Math.floor((A.length-1)/3);for(let e=0;e<r;e++){const n=A[3*e],r=A[3*e+3],s=a(n,(0,i.te)(A[3*e+1])?n:A[3*e+1],(0,i.te)(A[3*e+2])?r:A[3*e+2],r);t.addBox(s)}if(e&&A.length>1){const e=A[A.length-3],n=A[0],r=a(e,(0,i.te)(A[A.length-2])?e:A[A.length-2],(0,i.te)(A[A.length-1])?n:A[A.length-1],n);t.addBox(r)}return t}(A);e.addBox(t)})),e}},678:(A,e,t)=>{t.d(e,{A:()=>o});var i=t(8451),n=t(8103);var r=t(8190);function s(A,e,t){const[i,n,r,s,a,o]=t;return{x:i*A+r*e+a,y:n*A+s*e+o}}function a(A,e,t=1){if("linear-gradient"!==A.type&&"radial-gradient"!==A.type)return console.error("toRuntimeGradient receive definition which is not a gradient!"),null;if(!A.stops)return console.error("Gradient without stops!",A),null;const i=A.stops.map((A=>Object.assign(Object.assign({},A),{color:[A.color[0]*t,A.color[1]*t,A.color[2]*t,A.color[3]*t]}))),r=A.gradientTransform||n.Pb;if("linear-gradient"===A.type){const t=(0,n.fV)(A.x1),a=(0,n.fV)(A.y1),o=(0,n.fV)(A.x2),g=(0,n.fV)(A.y2),I=s(t,a,r),Q=s(o,g,r),C=e.max_x-e.min_x,c=e.max_y-e.min_y;return I.x=(I.x-e.min_x)/C,I.y=1-(I.y-e.min_y)/c,Q.x=(Q.x-e.min_x)/C,Q.y=1-(Q.y-e.min_y)/c,{linear:{stops:i,start:I,end:Q}}}if("radial-gradient"===A.type){const t=(0,n.fV)(A.cx,.5),a=(0,n.fV)(A.cy,.5),o=(0,n.fV)(A.r,.5),g=e.max_x-e.min_x,I=e.max_y-e.min_y,Q=s(t,a,r),C=s(t+o,a,r),c=s(t,a+o,r),B=A=>({x:(A.x-e.min_x)/Math.max(g,1e-8),y:1-(A.y-e.min_y)/Math.max(I,1e-8)}),l=B(Q),E=B(C),u=B(c),f={x:E.x-l.x,y:E.y-l.y},h={x:u.x-l.x,y:u.y-l.y},{destination:p,ratio:y}=function(A,e,t){const i=Math.hypot(e.x,e.y),n=Math.hypot(t.x,t.y);if(i<1e-8||n<1e-8){const t=Math.max(i,1e-8),r=i>1e-8?n/i:1;return{destination:{x:A.x+(e.x||1)*(t/(i||1)),y:A.y+(e.y||0)*(t/(i||1))},ratio:isFinite(r)?r:1}}const r=e.x*e.x+t.x*t.x,s=e.x*e.y+t.x*t.y,a=e.y*e.y+t.y*t.y,o=r+a,g=r*a-s*s,I=Math.sqrt(Math.max(0,o*o*.25-g)),Q=.5*o+I,C=.5*o-I,c=Math.sqrt(Math.max(Q,0)),B=Math.sqrt(Math.max(C,0));let l=0,E=0;Math.abs(s)>1e-8||Math.abs(Q-r)>1e-8?Math.abs(s)>Math.abs(Q-r)?(l=1,E=(Q-r)/(s||1e-12)):(l=(s||1e-12)/(Q-r||1e-12),E=1):(l=1,E=0);const u=Math.hypot(l,E)||1;return l/=u,E/=u,{destination:{x:A.x+l*c,y:A.y+E*c},ratio:c>1e-8?B/c:1}}(l,f,h);return{radial:{stops:i,center:l,destination:p,radius_ratio:y}}}return null}function o(A,e,t=n.Pb){const g=[];if(!(0,n.nS)(A))return g;let I=t;if("properties"in A&&"object"==typeof A.properties){let t=(0,r.A)(A),o=t.paths;switch(A.tagName){case"g":I=(0,n.ae)(t.transform,I);break;case"defs":return g;case"use":if(t.href){const A=t.href.slice(1);if(A){const i=e[A];if(i){if(!i.paths)return console.error("The resolved definition of <use> has no paths!"),g;o=i.paths,t=Object.assign(Object.assign({},i),t)}}}}if(o){const A=(0,i.U)(o),r={sdf_effects:[],filter:null,opacity:1};if(t.fill){const i=(0,n.fV)(t["fill-opacity"],1),s=String(t.fill),o=s.match(/^url\(#([^)]+)\)$/);let g=null;if(o){const t=e[o[1]];if(t){const e=a(t,A,i);e&&(g=e)}}else{g={solid:(0,n.H0)(s,i)}}g&&r.sdf_effects.push({dist_start:Number.MAX_SAFE_INTEGER,dist_end:0,fill:g})}if(t["stroke-width"]){const i=String(t.stroke)||"#000",s=(0,n.fV)(t["stroke-width"],1),o=i.match(/^url\(#([^)]+)\)$/);let g=null;if(o){const t=e[o[1]];if(t){const e=a(t,A);e&&(g=e)}}else{g={solid:(0,n.H0)(i)}}g&&r.sdf_effects.push({dist_start:s/2,dist_end:-s/2,fill:g})}if(t.filter){const A=String(t.filter).match(/^url\(#([^)]+)\)$/);if(A){const t=e[A[1]];(null==t?void 0:t.stdDeviation)&&(r.filter={gaussianBlur:{x:t.stdDeviation[0],y:t.stdDeviation[1]}})}}"number"==typeof t.opacity&&(r.opacity=t.opacity),"string"==typeof t.transform&&(I=(0,n.ae)(t.transform,I));const Q=o.map((A=>A.map((A=>(0,n.te)(A)?A:s(A.x,A.y,I)))));g.push({paths:Q,props:r,boundingBox:A})}}return A.children.forEach((A=>{g.push(...o(A,e,I))})),g}},2821:(A,e,t)=>{t.d(e,{t:()=>i});const i={x:1e11,y:0}},9504:(A,e,t)=>{t.d(e,{F:()=>a,W:()=>r});var i=t(8103),n=t(8190);function r(A){const e=Object.keys(A);for(const t of e){const e=s(A,A[t]);A[t]=e}}function s(A,e,t=new Set){if(!e.href)return e;const i=String(e.href).replace("#","");if(t.has(i))return e;t.add(i);const n=A[i];if(!n)return e;const r=s(A,n,t);return(e=Object.assign(Object.assign({},r),e)).href=void 0,e.id&&(A[e.id]=e),e}function a(A,e,t=!1){if(!(0,i.nS)(A))return;const r=(0,n.A)(A);switch(A.tagName){case"linearGradient":if(!r.id)return;return void(e[r.id]=Object.assign({type:"linear-gradient"},r));case"radialGradient":if(!r.id)return;return void(e[r.id]=Object.assign({type:"radial-gradient"},r));case"path":if(t){if(!r.id)return;e[r.id]=r}return;case"filter":if(!r.id)return;return void(e[r.id]=r);case"defs":t=!0}A.children.forEach((A=>{a(A,e,t)}))}},8190:(A,e,t)=>{function i(A,e,t,i){const n=.5522847498307936,r=n*t,s=n*i;return[{x:A+t,y:e},{x:A+t,y:e+s},{x:A+r,y:e+i},{x:A,y:e+i},{x:A-r,y:e+i},{x:A-t,y:e+s},{x:A-t,y:e},{x:A-t,y:e-s},{x:A-r,y:e-i},{x:A,y:e-i},{x:A+r,y:e-i},{x:A+t,y:e-s}]}t.d(e,{A:()=>o});var n=t(5671),r=t(2821);function s(A,e,t,i){const n={x:A+t,y:e+i},s={x:A+t,y:e},a={x:A,y:e};return[{x:A,y:e+i},r.t,r.t,n,r.t,r.t,s,r.t,r.t,a,r.t,r.t]}var a=t(8103);function o(A){var e;let t=A.properties;if("string"==typeof(null===(e=A.properties)||void 0===e?void 0:e.style)){const e={};A.properties.style.split(";").forEach((A=>{const[t,i]=A.split(":");t&&i&&(e[t.trim()]=i.trim())})),t=Object.assign(Object.assign({},e),A.properties)}if(!t)return{};const r=Object.assign({},t);switch(A.tagName){case"path":r.paths=(0,n.A)(t.d),delete r.d;break;case"rect":r.paths=[s((0,a.fV)(t.x),(0,a.fV)(t.y),(0,a.fV)(t.width,1),(0,a.fV)(t.height,1))],delete r.x,delete r.y,delete r.width,delete r.height;break;case"ellipse":r.paths=[i((0,a.fV)(t.cx),(0,a.fV)(t.cy),(0,a.fV)(t.rx),(0,a.fV)(t.ry))],delete r.cx,delete r.cy,delete r.rx,delete r.ry;break;case"circle":r.paths=[i((0,a.fV)(t.cx),(0,a.fV)(t.cy),(0,a.fV)(t.r),(0,a.fV)(t.r))],delete r.cx,delete r.cy,delete r.r;break;case"radialGradient":case"linearGradient":A.children.length>0&&(r.stops=A.children.map((A=>{var e,t;if(!(0,a.nS)(A))return{offset:0,color:[0,0,0,0]};const i=o(A),n=(0,a.H0)(String(null!==(e=i["stop-color"])&&void 0!==e?e:"#000"));return n[3]=(0,a.fV)(i["stop-opacity"],1),{offset:Number(null!==(t=i.offset)&&void 0!==t?t:0),color:n}})));break;case"filter":(0,a.nS)(A.children[0])&&function(A,e){var t;if("feGaussianBlur"===e.tagName){A.type="gaussian-blur";const i=null===(t=e.properties)||void 0===t?void 0:t.stdDeviation;let n=0,r=0;if("number"==typeof i)n=i,r=i;else if("string"==typeof i){const A=i.trim().split(/[ ,]+/).filter(Boolean);A.length>=2?(n=(0,a.fV)(A[0],0),r=(0,a.fV)(A[1],0)):1===A.length&&(n=(0,a.fV)(A[0],0),r=n)}A.stdDeviation=[n,r]}}(r,A.children[0])}return"gradientTransform"in t&&(r.gradientTransform=(0,a.ae)(String(t.gradientTransform))),r}},1849:(A,e,t)=>{t.a(A,(async(A,i)=>{try{t.d(e,{A:()=>o});var n=t(8451),r=t(4302),s=A([r]);r=(s.then?(await s)():s)[0];const a=[{x:0,y:1,u:0,v:1},{x:1,y:1,u:1,v:1},{x:1,y:0,u:1,v:0},{x:0,y:0,u:0,v:0}];function o(A,e){if(!e){const t=new n.I;A.forEach((A=>{t.addBox(A.boundingBox)})),e=t.max_y}return A.map((({paths:A,props:t})=>({shape:{id:0,paths:A.map((A=>A.map((A=>({x:A.x,y:e-A.y}))))),bounds:a,props:t,sdf_texture_id:r.CW(),cache_texture_id:null}})))}i()}catch(g){i(g)}}))},5671:(A,e,t)=>{function i(A,e,t,i,n,r,s,a,o){if(0===t||0===i||A===a&&e===o)return[];const g=n*Math.PI/180,I=Math.cos(g),Q=Math.sin(g),C=(A-a)/2,c=(e-o)/2,B=I*C+Q*c,l=-Q*C+I*c;let E=(t=Math.abs(t))*t,u=(i=Math.abs(i))*i;const f=B*B,h=l*l,p=f/E+h/u;if(p>1){const A=Math.sqrt(p);E=(t*=A)*t,u=(i*=A)*i}const y=r===s?-1:1,d=Math.max(0,E*u-E*h-u*f),m=E*h+u*f,b=0===m?0:y*Math.sqrt(d/m),D=b*(t*l/i),S=b*(-i*B/t),w=I*D-Q*S+(A+a)/2,v=Q*D+I*S+(e+o)/2,k=(B-D)/t,x=(l-S)/i,G=(-B-D)/t,U=(-l-S)/i,N=Math.sqrt(k*k+x*x);let F=0===N?0:Math.acos(Math.max(-1,Math.min(1,k/N)));x<0&&(F=-F);const M=k*G+x*U,R=Math.sqrt((k*k+x*x)*(G*G+U*U));let L=0===R?0:Math.acos(Math.max(-1,Math.min(1,M/R)));k*U-x*G<0&&(L=-L),0===s&&L>0?L-=2*Math.PI:1===s&&L<0&&(L+=2*Math.PI);const z=Math.max(1,Math.ceil(Math.abs(L)/(Math.PI/2))),J=L/z,q=Math.abs(J)<1e-10?0:8/3*Math.sin(J/4)*Math.sin(J/4)/Math.sin(J/2),O=[];for(let A=0;A<z;A++){const e=F+A*J,n=F+(A+1)*J,r=Math.cos(e),s=Math.sin(e),g=Math.cos(n),C=Math.sin(n),c=t*(r-q*s),B=i*(s+q*r),l=t*(g+q*C),E=i*(C-q*g),u=t*g,f=i*C,h=w+I*c-Q*B,p=v+Q*c+I*B,y=w+I*l-Q*E,d=v+Q*l+I*E,m=A===z-1?a:w+I*u-Q*f,b=A===z-1?o:v+Q*u+I*f;O.push({cp1x:h,cp1y:p,cp2x:y,cp2y:d,x:m,y:b})}return O}t.d(e,{A:()=>r});var n=t(2821);function r(A){const e=function(A){const e=[],t=/([MmLlHhVvCcSsQqTtAaZz])\s*([^MmLlHhVvCcSsQqTtAaZz]*)/g;let i;for(;null!==(i=t.exec(A));){const A=i[1],t=i[2].trim(),n=[];if(t){const A=t.match(/-?[0-9]*\.?[0-9]+(?:[eE][-+]?[0-9]+)?/g);A&&n.push(...A.map(parseFloat))}e.push({command:A,args:n})}return e}(A),t=function(A){const e=[];let t=[],r={x:0,y:0},s={x:0,y:0},a=null,o=null;const g=()=>{t.length>0&&(e.push([...t]),t=[])};for(const{command:e,args:I}of A)switch(e.toLowerCase()){case"m":{g();const A="m"===e;for(let e=0;e<I.length;e+=2){const i={x:A?r.x+I[e]:I[e],y:A?r.y+I[e+1]:I[e+1]};0===e?(t.push(i),s=Object.assign({},i)):t.push(n.t,n.t,i),r=i}a=null,o=null;break}case"l":case"h":case"v":{const A=e!==e.toUpperCase(),i="h"===e.toLowerCase(),s="v"===e.toLowerCase();let g=0;for(;g<I.length;){let e=r.x,a=r.y;i?(e=I[g]+(A?r.x:0),g+=1):s?(a=I[g]+(A?r.y:0),g+=1):(e=I[g]+(A?r.x:0),a=I[g+1]+(A?r.y:0),g+=2);const o={x:e,y:a};t.push(n.t,n.t,o),r=o}a=null,o=null;break}case"a":{const A="a"===e;for(let e=0;e<I.length;e+=7){const s=I[e],g=I[e+1],Q=I[e+2],C=I[e+3],c=I[e+4],B={x:I[e+5]+(A?r.x:0),y:I[e+6]+(A?r.y:0)},l=i(r.x,r.y,s,g,Q,C,c,B.x,B.y);if(0===l.length)B.x===r.x&&B.y===r.y||t.push(n.t,n.t,B),r=B,a=null,o=null;else{for(const A of l)t.push({x:A.cp1x,y:A.cp1y},{x:A.cp2x,y:A.cp2y},{x:A.x,y:A.y}),r={x:A.x,y:A.y};a=null,o=null}}break}case"q":{const A="q"===e;for(let e=0;e<I.length;e+=4){const i={x:I[e]+(A?r.x:0),y:I[e+1]+(A?r.y:0)},n={x:I[e+2]+(A?r.x:0),y:I[e+3]+(A?r.y:0)},s={x:r.x+2/3*(i.x-r.x),y:r.y+2/3*(i.y-r.y)},g={x:n.x+2/3*(i.x-n.x),y:n.y+2/3*(i.y-n.y)};t.push(s,g,n),r=n,o=i,a=null}break}case"t":{const A="t"===e;for(let e=0;e<I.length;e+=2){const i=o?{x:2*r.x-o.x,y:2*r.y-o.y}:Object.assign({},r),n={x:I[e]+(A?r.x:0),y:I[e+1]+(A?r.y:0)},s={x:r.x+2/3*(i.x-r.x),y:r.y+2/3*(i.y-r.y)},g={x:n.x+2/3*(i.x-n.x),y:n.y+2/3*(i.y-n.y)};t.push(s,g,n),r=n,o=i,a=null}break}case"c":{const A="c"===e;for(let e=0;e<I.length;e+=6){const i={x:I[e]+(A?r.x:0),y:I[e+1]+(A?r.y:0)},n={x:I[e+2]+(A?r.x:0),y:I[e+3]+(A?r.y:0)},s={x:I[e+4]+(A?r.x:0),y:I[e+5]+(A?r.y:0)};t.push(i,n,s),r=s,a=n,o=null}break}case"s":{const A="s"===e;for(let e=0;e<I.length;e+=4){const i=a?{x:2*r.x-a.x,y:2*r.y-a.y}:Object.assign({},r),n={x:I[e]+(A?r.x:0),y:I[e+1]+(A?r.y:0)},s={x:I[e+2]+(A?r.x:0),y:I[e+3]+(A?r.y:0)};t.push(i,n,s),r=s,a=n,o=null}break}case"z":r=s,a=null,o=null,g();break;default:console.warn(`SVG path command '${e}' not supported yet`),a=null,o=null}return g(),e}(e);return t}},8103:(A,e,t)=>{t.d(e,{H0:()=>r,Pb:()=>o,ae:()=>I,fV:()=>s,nS:()=>a,te:()=>n});const i=1e10;function n(A){return A.x>i}function r(A,e=1){const t=new OffscreenCanvas(1,1).getContext("2d");t.fillStyle=A,t.fillRect(0,0,1,1);const i=t.getImageData(0,0,1,1),[n,r,s,a]=i.data;return[n/255*e,r/255*e,s/255*e,a/255*e]}function s(A,e=0){if("number"==typeof A)return A;const t=Number(A);return isNaN(t)?e:t}function a(A){return"string"!=typeof A&&"element"===A.type}const o=[1,0,0,1,0,0];function g(A,e){const[t,i,n,r,s,a]=A,[o,g,I,Q,C,c]=e;return[t*o+n*g,i*o+r*g,t*I+n*Q,i*I+r*Q,t*C+n*c+s,i*C+r*c+a]}function I(A,e=o){if(!A)return e;const t=/(\w+)\(([^)]+)\)/g;let i,n=e;const r=[];for(;null!==(i=t.exec(A));)r.push({op:i[1],args:i[2].split(/[ ,]+/).map(Number)});for(let A=r.length-1;A>=0;A--){const{op:e,args:t}=r[A];let i=o;switch(e){case"matrix":i=t;break;case"translate":{const[A,e=0]=t;i=[1,0,0,1,A,e];break}case"scale":{const[A,e=A]=t;i=[A,0,0,e,0,0];break}case"rotate":{const[A,e=0,n=0]=t,r=A*Math.PI/180,s=Math.cos(r),a=Math.sin(r);i=g([1,0,0,1,e,n],g([s,a,-a,s,0,0],[1,0,0,1,-e,-n]));break}}n=g(i,n)}return n}},4302:(A,e,t)=>{t.a(A,(async(A,i)=>{try{t.d(e,{CW:()=>N,Eb:()=>G,ID:()=>L,Kg:()=>O,Mc:()=>v,Ts:()=>b,Uw:()=>M,WQ:()=>S,bS:()=>k,qD:()=>U,yE:()=>R,yo:()=>F});var n=t(9105),r=t(1549),s=t(4637),a=t(6479),o=t(9504),g=t(2804),I=t(678),Q=t(1849),C=A([a,Q]);[a,Q]=C.then?(await C)():C;var c=function(A,e,t,i){return new(t||(t=Promise))((function(n,r){function s(A){try{o(i.next(A))}catch(A){r(A)}}function a(A){try{o(i.throw(A))}catch(A){r(A)}}function o(A){var e;A.done?n(A.value):(e=A.value,e instanceof t?e:new t((function(A){A(e)}))).then(s,a)}o((i=i.apply(A,e||[])).next())}))};function B(A,e){const t=A.properties,i=(null==t?void 0:t.viewBox)?l(t.viewBox):null,n="number"==typeof(null==t?void 0:t.width)?null==t?void 0:t.width:void 0,r="number"==typeof(null==t?void 0:t.height)?null==t?void 0:t.height:void 0;return[n||(null==i?void 0:i[0])||(null==e?void 0:e.naturalWidth),r||(null==i?void 0:i[1])||(null==e?void 0:e.naturalHeight)]}function l(A){const e=A.split(" ").map(Number);if(4===e.length){const[A,t,i,n]=e;return[i-A,n-t]}return null}let E,u,f,h,p,y,d,m;function b(A,e,t,i){E=A,d=e,m=t,u=[],f=(0,n.s)(E,d),h=(0,n.o)(E,d),y=0,p=()=>i(y),D(0,g)}function D(A,e){const t=(0,s.q)(e).children[0],[i,n]=B(t);if(!i||!n)throw Error("SVG Icon width and height are required");const r={};o.F(t,r),o.W(r);const g=(0,I.A)(t,r);(0,a.A)(g,A,n)}function S(A,e){const t=u.find((e=>e.url===A));if(t)return null==e||e({width:t.texture.width,height:t.texture.height}),u.indexOf(t);y++,p();const i=u.length;return u.push({url:A}),w(A,i,e),i}function w(A,e,t){return c(this,void 0,void 0,(function*(){try{const[i,n]=yield Promise.all([K(A),T(A)]);let s=null;if(n){const A=n.children[0],[e,r]=B(A,i);if(!e||!r)throw Error("SVG width and height are required");const s={};o.F(A,s),o.W(s);const a=(0,I.A)(A,s);return void(null==t||t({width:e,height:r,shapeAssets:(0,Q.A)(a,r)}))}const{ctx:a}=z(i,i.naturalWidth,i.naturalHeight),g=a.getImageData(0,0,i.naturalWidth,i.naturalHeight).data,C=J(g);s=q(g,C),null!==s?u[e]=s:(u[e].texture=(0,r.Be)(E,d,i,{flipY:!0}),u[e].data=g,u[e].hash=C),null==t||t({width:i.width,height:i.height,isNewTexture:!s})}catch(A){console.error(A),u[e].texture=h,null==t||t({error:A,width:0,height:0})}finally{y--,p()}}))}function v(A){const e=x(A);if(!e)throw Error("Texture not found with id: "+A);return e}function k(A){var e;return null!==(e=x(A))&&void 0!==e?e:f}function x(A){return u[A].texture}function G(){const A=u.length;return u.push({url:"cache"}),A}function U(A,e){const t=u.length,i="combineSdf - depth texture",n=E.createTexture({label:i,size:[A,e],format:"r32float",usage:GPUTextureUsage.STORAGE_BINDING|GPUTextureUsage.TEXTURE_BINDING});return u.push({url:i,texture:n}),t}function N(){const A=u.length,e=`SDF texture ${A}`,t=E.createTexture({label:e,size:[1,1],format:"rgba32float",usage:GPUTextureUsage.STORAGE_BINDING|GPUTextureUsage.TEXTURE_BINDING});return u.push({url:e,texture:t}),A}function F(A,e,t){var i;const n=null===(i=u[A])||void 0===i?void 0:i.texture;if(!n)throw Error("Texture not found with id: "+A);if(n.width===e&&n.height===t)return;const r=E.createTexture({label:n.label,size:[e,t],format:n.format,usage:n.usage});null==n||n.destroy(),u[A].texture=r}function M(A,e){var t;u[A].texture!==e&&(null===(t=u[A].texture)||void 0===t||t.destroy()),u[A].texture=e}function R(A,e,t){const i=u[A].texture;if(!(i&&Math.abs(i.width-e)<=Number.EPSILON&&Math.abs(i.height-t)<=Number.EPSILON)){null==i||i.destroy();const n=E.createTexture({label:"texture cache",format:m,usage:GPUTextureUsage.RENDER_ATTACHMENT|GPUTextureUsage.TEXTURE_BINDING|GPUTextureUsage.STORAGE_BINDING,size:[e,t]});return u[A].texture=n,n}return i}function L(A){return u[A].url}function z(A,e,t){const i=new OffscreenCanvas(e,t),n=i.getContext("2d");return n.drawImage(A,0,0,e,t),{canvas:i,ctx:n}}function J(A){let e=5381;for(let t=0;t<A.length;t++)e=(e<<5)+e+A[t];return String(e)}function q(A,e){for(let t=0;t<u.length;t++){const i=u[t];if(i.hash===e){if(A.length!==i.data.length)return null;for(let e=0;e<A.length;e++)if(A[e]!==i.data[e])return null;return i}}return null}function O(A,e){u[A].url=e}function K(A){return new Promise(((e,t)=>{const i=new Image;i.crossOrigin="anonymous",i.src=A,i.onload=()=>e(i),i.onerror=A=>t(A)}))}function T(A){return c(this,void 0,void 0,(function*(){const e=yield fetch(A),t=yield e.text();return t.includes("<svg")?(0,s.q)(t):null}))}i()}catch(H){i(H)}}))},1613:(A,e,t)=>{var i;t.d(e,{b:()=>i}),function(A){A[A.SelectAsset=0]="SelectAsset",A[A.DrawBezierCurve=1]="DrawBezierCurve",A[A.SelectNode=2]="SelectNode",A[A.Text=3]="Text"}(i||(i={}))},8513:(A,e,t)=>{t.a(A,(async(A,i)=>{try{t.d(e,{Ol:()=>g,b8:()=>p,c6:()=>l,le:()=>B,sS:()=>h});var n=t(9146),r=A([n]);n=(r.then?(await r)():r)[0];const s="",a=/\u2060\n/g;let o=null;function g(){return null!==o}function I(A,e){return A[e-1]===s&&"\n"===A[e]}function Q(A,e){return A[e-2]===s&&"\n"===A[e-1]}const C={selectionStart:0,selectionEnd:0};function c(A,e,t){if(I(A,e[t])){const A=C[t]==e[t]-1;e[t]=A?e[t]+2:e[t]-1}Q(A,e[t])&&(e[t]=e[t]-2),C[t]=e[t]}function B(A){if(!o)throw Error("Not typing");let e=o.selectionStart,t=o.selectionEnd;o.value=A,I(A,e)&&(e+=2),I(A,t)&&(t+=2),o.selectionStart=e,o.selectionEnd=t}function l(A,e){if(!o)throw Error("Not typing");o.selectionStart=A,o.selectionEnd=e}function E(){const A=n.Ih(this.value,this.selectionStart,this.selectionEnd);this.value=A.content,l(A.selection_start,A.selection_end)}function u(){c(this.value,this,"selectionStart"),c(this.value,this,"selectionEnd"),n.vZ(this.selectionStart,this.selectionEnd)}function f(A){var e,t;const i=this.value.substring(this.selectionStart,this.selectionEnd),n=null!==(e=null==i?void 0:i.toString().replace(a,""))&&void 0!==e?e:"";null===(t=A.clipboardData)||void 0===t||t.setData("text/plain",n),A.preventDefault()}function h(A){if(!o){const A=document.createElement("textarea");A.style.position="fixed",A.style.left="-210px",A.style.height="200px",A.style.opacity="0",A.style.width="9999px",A.style.whiteSpace="pre-line",document.body.appendChild(A),A.addEventListener("input",E),A.addEventListener("selectionchange",u),A.addEventListener("copy",f),o=A}o.focus(),B(A)}function p(){o&&(document.body.removeChild(o),o=null)}i()}catch(y){i(y)}}))},6253:(A,e,t)=>{function i(A,e,t){return Math.min(t,Math.max(e,A))}t.d(e,{A:()=>i})},7846:(A,e,t)=>{function i(A,e,t,i){const n=.5*(t-A),r=.5*(i-e);return[{x:n,y:r+e,u:0,v:1},{x:n+A,y:r+e,u:1,v:1},{x:n+A,y:r,u:1,v:0},{x:n,y:r,u:0,v:0}]}t.d(e,{A:()=>i})},2842:(A,e,t)=>{t.d(e,{A:()=>r});const i={cross(A,e,t=new Float32Array(3)){const i=A[1]*e[2]-A[2]*e[1],n=A[2]*e[0]-A[0]*e[2],r=A[0]*e[1]-A[1]*e[0];return t[0]=i,t[1]=n,t[2]=r,t},subtract:(A,e,t=new Float32Array(3))=>(t[0]=A[0]-e[0],t[1]=A[1]-e[1],t[2]=A[2]-e[2],t),normalize(A,e=new Float32Array(3)){const t=Math.sqrt(A[0]*A[0]+A[1]*A[1]+A[2]*A[2]);return t>1e-5?(e[0]=A[0]/t,e[1]=A[1]/t,e[2]=A[2]/t):(e[0]=0,e[1]=0,e[2]=0),e}},n={projection:(A,e,t,i)=>n.ortho(0,A,e,0,t,-t,i),perspective(A,e,t,i,n=new Float32Array(16)){const r=Math.tan(.5*Math.PI-.5*A),s=1/(t-i);return n[0]=r/e,n[1]=0,n[2]=0,n[3]=0,n[4]=0,n[5]=r,n[6]=0,n[7]=0,n[8]=0,n[9]=0,n[10]=i*s,n[11]=-1,n[12]=0,n[13]=0,n[14]=t*i*s,n[15]=0,n},ortho:(A,e,t,i,n,r,s=new Float32Array(16))=>(s[0]=2/(e-A),s[1]=0,s[2]=0,s[3]=0,s[4]=0,s[5]=2/(i-t),s[6]=0,s[7]=0,s[8]=0,s[9]=0,s[10]=1/(n-r),s[11]=0,s[12]=(e+A)/(A-e),s[13]=(i+t)/(t-i),s[14]=n/(n-r),s[15]=1,s),identity:(A=new Float32Array(16))=>(A[0]=1,A[1]=0,A[2]=0,A[3]=0,A[4]=0,A[5]=1,A[6]=0,A[7]=0,A[8]=0,A[9]=0,A[10]=1,A[11]=0,A[12]=0,A[13]=0,A[14]=0,A[15]=1,A),multiply(A,e,t=new Float32Array(16)){const i=e[0],n=e[1],r=e[2],s=e[3],a=e[4],o=e[5],g=e[6],I=e[7],Q=e[8],C=e[9],c=e[10],B=e[11],l=e[12],E=e[13],u=e[14],f=e[15],h=A[0],p=A[1],y=A[2],d=A[3],m=A[4],b=A[5],D=A[6],S=A[7],w=A[8],v=A[9],k=A[10],x=A[11],G=A[12],U=A[13],N=A[14],F=A[15];return t[0]=i*h+n*m+r*w+s*G,t[1]=i*p+n*b+r*v+s*U,t[2]=i*y+n*D+r*k+s*N,t[3]=i*d+n*S+r*x+s*F,t[4]=a*h+o*m+g*w+I*G,t[5]=a*p+o*b+g*v+I*U,t[6]=a*y+o*D+g*k+I*N,t[7]=a*d+o*S+g*x+I*F,t[8]=Q*h+C*m+c*w+B*G,t[9]=Q*p+C*b+c*v+B*U,t[10]=Q*y+C*D+c*k+B*N,t[11]=Q*d+C*S+c*x+B*F,t[12]=l*h+E*m+u*w+f*G,t[13]=l*p+E*b+u*v+f*U,t[14]=l*y+E*D+u*k+f*N,t[15]=l*d+E*S+u*x+f*F,t},cameraAim(A,e,t,n=new Float32Array(16)){const r=i.normalize(i.subtract(A,e)),s=i.normalize(i.cross(t,r)),a=i.normalize(i.cross(r,s));return n[0]=s[0],n[1]=s[1],n[2]=s[2],n[3]=0,n[4]=a[0],n[5]=a[1],n[6]=a[2],n[7]=0,n[8]=r[0],n[9]=r[1],n[10]=r[2],n[11]=0,n[12]=A[0],n[13]=A[1],n[14]=A[2],n[15]=1,n},inverse(A,e=new Float32Array(16)){const t=A[0],i=A[1],n=A[2],r=A[3],s=A[4],a=A[5],o=A[6],g=A[7],I=A[8],Q=A[9],C=A[10],c=A[11],B=A[12],l=A[13],E=A[14],u=A[15],f=C*u,h=E*c,p=o*u,y=E*g,d=o*c,m=C*g,b=n*u,D=E*r,S=n*c,w=C*r,v=n*g,k=o*r,x=I*l,G=B*Q,U=s*l,N=B*a,F=s*Q,M=I*a,R=t*l,L=B*i,z=t*Q,J=I*i,q=t*a,O=s*i,K=f*a+y*Q+d*l-(h*a+p*Q+m*l),T=h*i+b*Q+w*l-(f*i+D*Q+S*l),H=p*i+D*a+v*l-(y*i+b*a+k*l),Y=m*i+S*a+k*Q-(d*i+w*a+v*Q),P=1/(t*K+s*T+I*H+B*Y);return e[0]=P*K,e[1]=P*T,e[2]=P*H,e[3]=P*Y,e[4]=P*(h*s+p*I+m*B-(f*s+y*I+d*B)),e[5]=P*(f*t+D*I+S*B-(h*t+b*I+w*B)),e[6]=P*(y*t+b*s+k*B-(p*t+D*s+v*B)),e[7]=P*(d*t+w*s+v*I-(m*t+S*s+k*I)),e[8]=P*(x*g+N*c+F*u-(G*g+U*c+M*u)),e[9]=P*(G*r+R*c+J*u-(x*r+L*c+z*u)),e[10]=P*(U*r+L*g+q*u-(N*r+R*g+O*u)),e[11]=P*(M*r+z*g+O*c-(F*r+J*g+q*c)),e[12]=P*(U*C+M*E+G*o-(F*E+x*o+N*C)),e[13]=P*(z*E+x*n+L*C-(R*C+J*E+G*n)),e[14]=P*(R*o+O*E+N*n-(q*E+U*n+L*o)),e[15]=P*(q*C+F*n+J*o-(z*o+O*C+M*n)),e},transpose:(A,e=new Float32Array(16))=>(e[0]=A[0],e[1]=A[4],e[2]=A[8],e[3]=A[12],e[4]=A[1],e[5]=A[5],e[6]=A[9],e[7]=A[13],e[8]=A[2],e[9]=A[6],e[10]=A[10],e[11]=A[14],e[12]=A[3],e[13]=A[7],e[14]=A[11],e[15]=A[15],e),aim(A,e,t,n=new Float32Array(16)){const r=i.normalize(i.subtract(e,A)),s=i.normalize(i.cross(t,r)),a=i.normalize(i.cross(r,s));return n[0]=s[0],n[1]=s[1],n[2]=s[2],n[3]=0,n[4]=a[0],n[5]=a[1],n[6]=a[2],n[7]=0,n[8]=r[0],n[9]=r[1],n[10]=r[2],n[11]=0,n[12]=A[0],n[13]=A[1],n[14]=A[2],n[15]=1,n},lookAt:(A,e,t,i)=>n.inverse(n.cameraAim(A,e,t,i),i),translation:([A,e,t],i=new Float32Array(16))=>(i[0]=1,i[1]=0,i[2]=0,i[3]=0,i[4]=0,i[5]=1,i[6]=0,i[7]=0,i[8]=0,i[9]=0,i[10]=1,i[11]=0,i[12]=A,i[13]=e,i[14]=t,i[15]=1,i),rotationX(A,e=new Float32Array(16)){const t=Math.cos(A),i=Math.sin(A);return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=t,e[6]=i,e[7]=0,e[8]=0,e[9]=-i,e[10]=t,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e},rotationY(A,e=new Float32Array(16)){const t=Math.cos(A),i=Math.sin(A);return e[0]=t,e[1]=0,e[2]=-i,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=i,e[9]=0,e[10]=t,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e},rotationZ(A,e=new Float32Array(16)){const t=Math.cos(A),i=Math.sin(A);return e[0]=t,e[1]=i,e[2]=0,e[3]=0,e[4]=-i,e[5]=t,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e},scaling:([A,e,t],i=new Float32Array(16))=>(i[0]=A,i[1]=0,i[2]=0,i[3]=0,i[4]=0,i[5]=e,i[6]=0,i[7]=0,i[8]=0,i[9]=0,i[10]=t,i[11]=0,i[12]=0,i[13]=0,i[14]=0,i[15]=1,i),translate:(A,e,t)=>n.multiply(A,n.translation(e),t),rotateX:(A,e,t)=>n.multiply(A,n.rotationX(e),t),rotateY:(A,e,t)=>n.multiply(A,n.rotationY(e),t),rotateZ:(A,e,t)=>n.multiply(A,n.rotationZ(e),t),scale:(A,e,t)=>n.multiply(A,n.scaling(e),t)},r=n},1317:(A,e,t)=>{t.a(A,(async(A,i)=>{try{t.d(e,{A:()=>s});var n=t(4109),r=A([n]);function s(A,e,t,i,r=0){const s=i.width-2*r,a=i.height-2*r,o="fit"===t?Math.min(s/A,a/e):Math.max(s/A,a/e);n.UI.x=(i.width-A*o)/2,n.UI.y=(i.height-e*o)/2,n.UI.zoom=o}n=(r.then?(await r)():r)[0],i()}catch(a){i(a)}}))},3012:(A,e,t)=>{t.d(e,{A:()=>n});const i=Symbol("no args");function n(A,e){let t,n=i;return function r(...s){t?n=s:(A.apply(this,s),t=!0,setTimeout((()=>{t=!1,n!==i&&(r.apply(this,n),n=i)}),e))}}},9146:(A,e,t)=>{t.a(A,(async(A,i)=>{try{t.d(e,{$u:()=>NQ,Ay:()=>XI,Er:()=>GQ,Gl:()=>pQ,Hg:()=>UQ,Ih:()=>cQ,Iq:()=>wQ,JQ:()=>$I,LI:()=>mQ,Mv:()=>eQ,PT:()=>hQ,QZ:()=>CQ,V9:()=>tQ,Vx:()=>QQ,Wp:()=>yQ,Ws:()=>oQ,XO:()=>rQ,YF:()=>fQ,ZE:()=>SQ,Zr:()=>AQ,a3:()=>gQ,aO:()=>bQ,cV:()=>lQ,el:()=>nQ,io:()=>xQ,kl:()=>uQ,oA:()=>sQ,po:()=>BQ,qN:()=>ZI,tE:()=>kQ,us:()=>EQ,vZ:()=>dQ,wH:()=>vQ,wV:()=>jI,x7:()=>DQ});var n=t(4773);t(1285),t(9592),t(2148),t(4828),t(6973),t(2427),t(1669),t(6929),t(4936),t(8738),t(1432),t(1454),t(6402),t(5940),t(804),t(9098),t(9494),t(337),t(3971),t(7431),t(7591),t(6717),t(2164),t(5496),t(6135),t(9813),t(3793),t(8305),t(3456),t(8539),t(7679),t(2244),t(3509),t(9433),t(8371),t(903),t(3692),t(7382),t(3750),t(1425),t(8773),t(3086),t(8771),t(8991),t(2799),t(4233),t(8502),t(9025),t(9426),t(2059),t(1991),t(5558),t(6584),t(4358),t(2436),t(7409),t(9268),t(9499),t(3586),t(5239);const A={constructor:null,type:0,flags:0,signature:void 0,name:void 0,byteSize:0,align:0,instance:{members:[],template:null},static:{members:[],template:null}},r={type:0,flags:0},s={},a={},o={},g={},I={},Q={},C={},c={},B={},l={},E={},u={},f={},h={},p={},y={},d={},m={},b={},D={},S={},w={},v={},k={},x={},G={},U={},N={},F={},M={},R={},L={},z={},J={},q={},O={},K={},T={},H={},Y={},P={},_={},V={},X={},W={},j={},Z={},$={},AA={},eA={},tA={},iA={},nA={},rA={},sA={},aA={},oA={},gA={},IA={},QA={},CA={},cA={},BA={},lA={},EA={},uA={},fA={},hA={},pA={},yA={},dA={},mA={},bA={},DA={},SA={},wA={},vA={},kA={},xA={},GA={},UA={},NA={},FA={},MA={},RA={},LA={},zA={},JA={},qA={},OA={},KA={},TA={},HA={},YA={},PA={},_A={},VA={},XA={},WA={},jA={},ZA={},$A={},Ae={},ee={},te={},ie={},ne={},re={},se={},ae={},oe={},ge={},Ie={},Qe={},Ce={},ce={},Be={},le={},Ee={},ue={},fe={},he={},pe={},ye={},de={},me={},be={},De={},Se={},we={},ve={},ke={},xe={},Ge={},Ue={},Ne={},Fe={},Me={},Re={},Le={},ze={},Je={},qe={},Oe={},Ke={},Te={},He={},Ye={},Pe={},_e={},Ve={},Xe={},We={},je={},Ze={},$e={},At={},et={},tt={},it={},nt={},rt={},st={},at={},ot={},gt={},It={},Qt={},Ct={},ct={},Bt={},lt={},Et={},ut={},ft={},ht={},pt={},yt={},dt={},mt={},bt={},Dt={},St={},wt={},vt={},kt={},xt={},Gt={},Ut={},Nt={},Ft={},Mt={},Rt={},Lt={},zt={},Jt={},qt={},Ot={},Kt={},Tt={},Ht={},Yt={},Pt={},_t={},Vt={},Xt={},Wt={},jt={},Zt={},$t={},Ai={},ei={},ti={},ii={},ni={},ri={},si={},ai={},oi={},gi={},Ii={},Qi={},Ci={},ci={},Bi={},li={},Ei={},ui={},fi={},hi={},pi={},yi={},di={},mi={},bi={},Di={},Si={},wi={},vi={},ki={},xi={},Gi={},Ui={},Ni={},Fi={},Mi={},Ri={},Li={},zi={},Ji={},qi={},Oi={},Ki={},Ti={},Hi={},Yi={},Pi={},_i={},Vi={},Xi={},Wi={},ji={},Zi={},$i={},An={},en={},tn={},nn={},rn={},sn={},an={},on={},gn={},In={},Qn={},Cn={},cn={},Bn={},ln={},En={},un={},fn={},hn={},pn={},yn={},dn={},mn={},bn={},Dn={},Sn={},wn={},vn={},kn={},xn={},Gn={},Un={},Nn={},Fn={},Mn={},Rn={},Ln={},zn={},Jn={},qn={},On={},Kn={},Tn={},Hn={},Yn={},Pn={},_n={},Vn={},Xn={},Wn={},jn={},Zn={},$n={},Ar={},er={},tr={},ir={},nr={},rr={},sr={},ar={},or={},gr={},Ir={},Qr={},Cr={},cr={},Br={},lr={},Er={},ur={},fr={},hr={},pr={},yr={},dr={},mr={},br={},Dr={},Sr={},wr={},vr={},kr={},xr={},Gr={},Ur={},Nr={},Fr={},Mr={},Rr={},Lr={},zr={},Jr={},qr={},Or={},Kr={},Tr={},Hr={},Yr={},Pr={},_r={},Vr={},Xr={},Wr={},jr={},Zr={},$r={},As={},es={},ts={},is={},ns={},rs={},ss={},as={},os={},gs={},Is={},Qs={},Cs={},cs={},Bs={},ls={},Es={},us={},fs={},hs={},ps={},ys={},ds={},ms={},bs={},Ds={},Ss={},ws={},vs={},ks={},xs={},Gs={},Us={},Ns={},Fs={},Ms={},Rs={},Ls={},zs={},Js={},qs={},Os={},Ks={},Ts={},Hs={},Ys={},Ps={},_s={},Vs={},Xs={},Ws={},js={},Zs={},$s={},Aa={},ea={},ta={},ia={},na={},ra={},sa={},aa={},oa={},ga={},Ia={},Qa={},Ca={},ca={},Ba={},la={},Ea={},ua={},fa={},ha={},pa={},ya={},da={},ma={},ba={},Da={},Sa={},wa={},va={},ka={},xa={},Ga={},Ua={},Na={},Fa={},Ma={},Ra={},La={},za={},Ja={},qa={},Oa={},Ka={},Ta={},Ha={},Ya={},Pa={},_a={},Va={},Xa={},Wa={},ja={},Za={},$a={},Ao={},eo={},to={},io={},no={},ro={},so={},ao={},oo={},go={},Io={},Qo={},Co={},co={},Bo={},lo={},Eo={},uo={},fo={},ho={},po={},yo={},mo={},bo={},Do={},So={},wo={},vo={},ko={},xo={},Go={},Uo={},No={},Fo={},Mo={},Ro={},Lo={},zo={},Jo={},qo={},Oo={},Ko={},To={},Ho={},Yo={},Po={},_o={},Vo={},Xo={},Wo={},jo={},Zo={},$o={},Ag={},eg={},tg={},ig={},ng={},rg={},sg={},ag={},og={},gg={},Ig={},Qg={},Cg={},cg={},Bg={},lg={},Eg={},ug={},fg={},hg={},pg={},yg={},dg={},mg=A=>new Uint8Array(A),bg=mg(0),Dg=mg(8),Sg=mg(16),wg=mg(64),vg=mg(16),kg=mg(32),xg=mg(32),Gg=mg(352),Ug=mg(352),Ng=mg(1),Fg=mg([1]),Mg=mg([2]),Rg=mg(32),Lg=mg(76),zg=mg(8),Jg=mg(40),qg=mg(72),Og=mg(20),Kg=mg(24),Tg=mg(28),Hg=mg(1),Yg=mg(Fg),Pg=mg(Mg),_g=mg(40),Vg=mg(8),Xg=mg([170,170,170,170,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,63]),Wg=mg(112),jg=mg(104),Zg=mg(1),$g=mg(Fg),AI=mg(Mg),eI=mg(16),tI=mg([8,0]),iI=mg([170,170,170,170,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]),nI=mg(16),rI=mg(tI),sI=mg(tI),aI=mg(tI),oI=mg(16),gI=mg([2,0]),II=mg(tI),QI=mg([9,0]),CI=mg([10,0]),cI=mg(gI),BI=mg(tI),lI=mg(QI),EI=mg(CI),uI=mg(tI),fI=mg(gI),hI=mg(tI),pI=mg(QI),yI=mg(CI),dI=mg(tI),mI=mg(tI),bI=mg(tI),DI=mg(tI),SI=mg(gI),wI=mg(tI),vI=mg(QI),kI=mg(CI),xI=mg(tI),GI=mg(tI),UI=mg(2),NI=mg([1,0]),FI=mg(gI),MI=mg([3,0]),RI=mg(tI),LI=mg(tI),zI=mg(gI),JI=mg(tI),qI=mg(QI),OI=mg(CI),KI=mg([232,3,0,0]),TI=Object.assign;TI(gn,{memory:{array:bg},handle:109}),TI(In,{memory:{array:bg},handle:110}),TI(Qn,{memory:{array:bg},handle:111}),TI(Cn,{memory:{array:Dg}}),TI(cn,{slots:{0:Bn,2:ln,3:En,4:un}}),TI(Bn,{structure:g,memory:{array:bg},handle:98}),TI(ln,{structure:Q,memory:{array:bg},handle:99}),TI(En,{structure:g,memory:{array:bg},handle:100}),TI(un,{structure:c,memory:{array:bg},handle:101}),TI(fn,{memory:{array:bg},handle:112}),TI(hn,{memory:{array:bg},handle:113}),TI(pn,{memory:{array:bg},handle:114}),TI(yn,{memory:{array:Sg}}),TI(dn,{slots:{0:mn,1:bn,2:Dn,3:Sn}}),TI(mn,{structure:E,memory:{array:bg},handle:98}),TI(bn,{structure:f,memory:{array:bg},handle:102}),TI(Dn,{structure:f,memory:{array:bg},handle:99}),TI(Sn,{structure:p,memory:{array:bg},handle:103}),TI(wn,{memory:{array:bg},handle:38}),TI(vn,{memory:{array:bg},handle:39}),TI(kn,{memory:{array:wg}}),TI(xn,{memory:{array:bg},handle:40}),TI(Gn,{memory:{array:bg},handle:41}),TI(Un,{memory:{array:bg},handle:42}),TI(Nn,{memory:{array:bg},handle:43}),TI(Fn,{memory:{array:bg},handle:44}),TI(Mn,{memory:{array:bg},handle:45}),TI(Rn,{memory:{array:vg}}),TI(Ln,{memory:{array:bg},handle:46}),TI(zn,{memory:{array:bg},handle:47}),TI(Jn,{memory:{array:bg},handle:48}),TI(qn,{memory:{array:bg},handle:49}),TI(On,{memory:{array:kg}}),TI(Kn,{memory:{array:xg}}),TI(Tn,{memory:{array:Gg}}),TI(Hn,{memory:{array:Ug}}),TI(Yn,{slots:{0:Pn,1:_n,2:Vn}}),TI(Pn,{structure:aA,memory:{array:Ng},const:!0}),TI(_n,{structure:aA,memory:{array:Fg},const:!0}),TI(Vn,{structure:aA,memory:{array:Mg},const:!0}),TI(Xn,{memory:{array:bg},handle:50}),TI(Wn,{memory:{array:bg},handle:51}),TI(jn,{memory:{array:Rg}}),TI(Zn,{memory:{array:bg},handle:38}),TI($n,{memory:{array:bg},handle:52}),TI(Ar,{memory:{array:Lg}}),TI(er,{memory:{array:bg},handle:40}),TI(tr,{memory:{array:bg},handle:53}),TI(ir,{memory:{array:zg}}),TI(nr,{memory:{array:bg},handle:54}),TI(rr,{memory:{array:bg},handle:55}),TI(sr,{memory:{array:Jg},handle:266836,slots:{0:ar,1:gr,2:Qr,3:cr,4:lr,5:ur,6:hr,7:yr,8:mr,9:Dr}}),TI(ar,{structure:w,memory:{array:Jg,offset:0,length:4},slots:{0:or}}),TI(or,{structure:S,memory:{array:bg}}),TI(gr,{structure:R,memory:{array:Jg,offset:4,length:4},slots:{0:Ir}}),TI(Ir,{structure:M,memory:{array:bg}}),TI(Qr,{structure:O,memory:{array:Jg,offset:8,length:4},slots:{0:Cr}}),TI(Cr,{structure:q,memory:{array:bg}}),TI(cr,{structure:H,memory:{array:Jg,offset:12,length:4},slots:{0:Br}}),TI(Br,{structure:T,memory:{array:bg}}),TI(lr,{structure:V,memory:{array:Jg,offset:16,length:4},slots:{0:Er}}),TI(Er,{structure:_,memory:{array:bg}}),TI(ur,{structure:j,memory:{array:Jg,offset:20,length:4},slots:{0:fr}}),TI(fr,{structure:W,memory:{array:bg}}),TI(hr,{structure:QA,memory:{array:Jg,offset:24,length:4},slots:{0:pr}}),TI(pr,{structure:IA,memory:{array:bg}}),TI(yr,{structure:fA,memory:{array:Jg,offset:28,length:4},slots:{0:dr}}),TI(dr,{structure:uA,memory:{array:bg}}),TI(mr,{structure:bA,memory:{array:Jg,offset:32,length:4},slots:{0:br}}),TI(br,{structure:mA,memory:{array:bg}}),TI(Dr,{structure:vA,memory:{array:Jg,offset:36,length:4},slots:{0:Sr}}),TI(Sr,{structure:wA,memory:{array:bg}}),TI(wr,{memory:{array:bg},handle:37}),TI(vr,{memory:{array:bg},handle:116}),TI(kr,{memory:{array:qg}}),TI(xr,{slots:{0:Gr}}),TI(Gr,{structure:RA,memory:{array:bg},handle:106}),TI(Ur,{memory:{array:bg},handle:120}),TI(Nr,{memory:{array:Og}}),TI(Fr,{slots:{0:Mr}}),TI(Mr,{structure:OA,memory:{array:bg},handle:119}),TI(Rr,{memory:{array:Kg},handle:268476,slots:{2:Lr}}),TI(Lr,{structure:HA,memory:{array:Kg,offset:16,length:8}}),TI(zr,{memory:{array:Tg},handle:268500,slots:{3:Jr}}),TI(Jr,{structure:HA,memory:{array:Tg,offset:20,length:8}}),TI(qr,{slots:{0:Or,1:Kr,2:Tr}}),TI(Or,{structure:_A,memory:{array:Hg},const:!0}),TI(Kr,{structure:_A,memory:{array:Yg},const:!0}),TI(Tr,{structure:_A,memory:{array:Pg},const:!0}),TI(Hr,{memory:{array:bg},handle:115}),TI(Yr,{slots:{0:Pr}}),TI(Pr,{structure:XA,memory:{array:bg},handle:104}),TI(_r,{memory:{array:_g},handle:267456,slots:{2:Vr}}),TI(Vr,{structure:WA,memory:{array:_g,offset:8,length:32},slots:{0:Xr,1:jr}}),TI(Xr,{structure:YA,memory:{array:_g,offset:8,length:24},slots:{2:Wr}}),TI(Wr,{structure:HA,memory:{array:_g,offset:24,length:8}}),TI(jr,{structure:PA,memory:{array:_g,offset:8,length:28},slots:{3:Zr}}),TI(Zr,{structure:HA,memory:{array:_g,offset:28,length:8}}),TI($r,{memory:{array:Vg}}),TI(As,{memory:{array:bg},handle:105}),TI(es,{memory:{array:Xg},handle:266584,slots:{0:ts}}),TI(ts,{structure:$A,memory:{array:Xg,offset:0,length:8},slots:{0:is}}),TI(is,{structure:ZA,memory:{array:bg}}),TI(ns,{slots:{0:rs}}),TI(rs,{structure:ie,memory:{array:bg},handle:83}),TI(ss,{memory:{array:bg},handle:117}),TI(as,{memory:{array:Wg},handle:268224,slots:{1:os,2:gs}}),TI(os,{structure:JA,memory:{array:Wg,offset:4,length:8}}),TI(gs,{structure:ne,memory:{array:Wg,offset:12,length:24},slots:{0:Is}}),TI(Is,{structure:$A,memory:{array:Wg,offset:12,length:8}}),TI(Qs,{slots:{0:Cs}}),TI(Cs,{structure:ae,memory:{array:bg},handle:107}),TI(cs,{memory:{array:bg},handle:118}),TI(Bs,{memory:{array:jg},handle:268336,slots:{1:ls,4:us}}),TI(ls,{structure:Ce,memory:{array:jg,offset:4,length:8},slots:{0:Es}}),TI(Es,{structure:Ie,memory:{array:jg,offset:4,length:8}}),TI(us,{structure:ne,memory:{array:jg,offset:80,length:24},slots:{0:fs}}),TI(fs,{structure:$A,memory:{array:jg,offset:80,length:8}}),TI(hs,{slots:{0:ps}}),TI(ps,{structure:Be,memory:{array:bg},handle:108}),TI(ys,{slots:{0:ds,1:ms,2:bs}}),TI(ds,{structure:Ee,memory:{array:Zg},const:!0}),TI(ms,{structure:Ee,memory:{array:$g},const:!0}),TI(bs,{structure:Ee,memory:{array:AI},const:!0}),TI(Ds,{memory:{array:eI},handle:266608,slots:{2:Ss}}),TI(Ss,{structure:he,memory:{array:eI,offset:8,length:8}}),TI(ws,{memory:{array:bg},handle:56}),TI(vs,{memory:{array:bg},handle:57}),TI(ks,{memory:{array:bg},handle:58}),TI(xs,{memory:{array:bg},handle:56}),TI(Gs,{memory:{array:bg},handle:59}),TI(Us,{memory:{array:bg},handle:58}),TI(Ns,{memory:{array:bg},handle:63}),TI(Fs,{memory:{array:bg},handle:64}),TI(Ms,{memory:{array:bg},handle:60}),TI(Rs,{memory:{array:bg},handle:61}),TI(Ls,{memory:{array:bg},handle:62}),TI(zs,{memory:{array:bg},handle:65}),TI(Js,{memory:{array:bg},handle:66}),TI(qs,{memory:{array:bg},handle:58}),TI(Os,{slots:{0:Ks}}),TI(Ks,{structure:Pe,memory:{array:tI},const:!0}),TI(Ts,{memory:{array:bg},handle:68}),TI(Hs,{memory:{array:iI},handle:266224,slots:{0:Ys}}),TI(Ys,{structure:z,memory:{array:iI,offset:0,length:8},slots:{0:Ps}}),TI(Ps,{structure:L,memory:{array:bg}}),TI(_s,{slots:{0:Vs}}),TI(Vs,{structure:We,memory:{array:bg},handle:67}),TI(Xs,{memory:{array:bg},handle:69}),TI(Ws,{memory:{array:bg},handle:70}),TI(js,{memory:{array:bg},handle:90}),TI(Zs,{memory:{array:bg},handle:91}),TI($s,{memory:{array:bg},handle:76}),TI(Aa,{memory:{array:bg},handle:77}),TI(ea,{memory:{array:bg},handle:71}),TI(ta,{memory:{array:bg},handle:72}),TI(ia,{memory:{array:bg},handle:73}),TI(na,{memory:{array:bg},handle:74}),TI(ra,{memory:{array:bg},handle:75}),TI(sa,{memory:{array:nI}}),TI(aa,{memory:{array:bg},handle:78}),TI(oa,{memory:{array:bg},handle:79}),TI(ga,{memory:{array:bg},handle:80}),TI(Ia,{memory:{array:bg},handle:81}),TI(Qa,{memory:{array:bg},handle:82}),TI(Ca,{memory:{array:bg},handle:58}),TI(ca,{slots:{0:Ba}}),TI(Ba,{structure:kt,memory:{array:rI},const:!0}),TI(la,{memory:{array:bg},handle:84}),TI(Ea,{memory:{array:bg},handle:85}),TI(ua,{slots:{0:fa}}),TI(fa,{structure:Lt,memory:{array:sI},const:!0}),TI(ha,{memory:{array:bg},handle:86}),TI(pa,{slots:{0:ya}}),TI(ya,{structure:Ot,memory:{array:aI},const:!0}),TI(da,{memory:{array:bg},handle:87}),TI(ma,{memory:{array:oI},handle:266900,slots:{0:ba}}),TI(ba,{structure:Ie,memory:{array:oI,offset:0,length:8}}),TI(Da,{slots:{0:Sa,1:wa,2:va,3:ka}}),TI(Sa,{structure:Pt,memory:{array:gI},const:!0}),TI(wa,{structure:Pt,memory:{array:II},const:!0}),TI(va,{structure:Pt,memory:{array:QI},const:!0}),TI(ka,{structure:Pt,memory:{array:CI},const:!0}),TI(xa,{memory:{array:bg},handle:88}),TI(Ga,{slots:{0:Ua,1:Na,2:Fa,3:Ma}}),TI(Ua,{structure:Wt,memory:{array:cI},const:!0}),TI(Na,{structure:Wt,memory:{array:BI},const:!0}),TI(Fa,{structure:Wt,memory:{array:lI},const:!0}),TI(Ma,{structure:Wt,memory:{array:EI},const:!0}),TI(Ra,{memory:{array:bg},handle:89}),TI(La,{slots:{0:za}}),TI(za,{structure:Ai,memory:{array:uI},const:!0}),TI(Ja,{memory:{array:bg},handle:87}),TI(qa,{slots:{0:Oa,1:Ka,2:Ta,3:Ha}}),TI(Oa,{structure:ni,memory:{array:fI},const:!0}),TI(Ka,{structure:ni,memory:{array:hI},const:!0}),TI(Ta,{structure:ni,memory:{array:pI},const:!0}),TI(Ha,{structure:ni,memory:{array:yI},const:!0}),TI(Ya,{memory:{array:bg},handle:89}),TI(Pa,{memory:{array:bg},handle:87}),TI(_a,{slots:{0:Va}}),TI(Va,{structure:Ci,memory:{array:dI},const:!0}),TI(Xa,{memory:{array:bg},handle:87}),TI(Wa,{memory:{array:bg},handle:87}),TI(ja,{slots:{0:Za}}),TI(Za,{structure:pi,memory:{array:mI},const:!0}),TI($a,{memory:{array:bg},handle:87}),TI(Ao,{slots:{0:eo}}),TI(eo,{structure:bi,memory:{array:bI},const:!0}),TI(to,{memory:{array:bg},handle:92}),TI(io,{slots:{0:no}}),TI(no,{structure:vi,memory:{array:DI},const:!0}),TI(ro,{memory:{array:bg},handle:87}),TI(so,{slots:{0:ao,1:oo,2:go,3:Io}}),TI(ao,{structure:Ui,memory:{array:SI},const:!0}),TI(oo,{structure:Ui,memory:{array:wI},const:!0}),TI(go,{structure:Ui,memory:{array:vI},const:!0}),TI(Io,{structure:Ui,memory:{array:kI},const:!0}),TI(Qo,{memory:{array:bg},handle:93}),TI(Co,{slots:{0:co}}),TI(co,{structure:Ri,memory:{array:xI},const:!0}),TI(Bo,{memory:{array:bg},handle:94}),TI(lo,{slots:{0:Eo}}),TI(Eo,{structure:qi,memory:{array:GI},const:!0}),TI(uo,{memory:{array:bg},handle:87}),TI(fo,{slots:{0:ho,1:po,2:yo,3:mo}}),TI(ho,{structure:Pi,memory:{array:UI},const:!0}),TI(po,{structure:Pi,memory:{array:NI},const:!0}),TI(yo,{structure:Pi,memory:{array:FI},const:!0}),TI(mo,{structure:Pi,memory:{array:MI},const:!0}),TI(bo,{memory:{array:bg},handle:95}),TI(Do,{slots:{0:So}}),TI(So,{structure:Xi,memory:{array:RI},const:!0}),TI(wo,{memory:{array:bg},handle:85}),TI(vo,{slots:{0:ko}}),TI(ko,{structure:$i,memory:{array:LI},const:!0}),TI(xo,{memory:{array:bg},handle:96}),TI(Go,{slots:{0:Uo,1:No,2:Fo,3:Mo}}),TI(Uo,{structure:nn,memory:{array:zI},const:!0}),TI(No,{structure:nn,memory:{array:JI},const:!0}),TI(Fo,{structure:nn,memory:{array:qI},const:!0}),TI(Mo,{structure:nn,memory:{array:OI},const:!0}),TI(Ro,{memory:{array:bg},handle:97}),TI(Lo,{slots:{0:zo,1:Jo,2:qo,3:Oo,4:Ko,5:To,6:Yo,7:_o,9:Vo,10:Xo,11:Wo,12:jo,13:Zo,14:$o,15:Ag,16:eg,17:tg,18:ig,19:ng,20:rg,21:sg,22:ag,23:og,24:gg,25:Ig,26:Qg,27:Cg,28:cg,29:Bg,30:lg,31:Eg,32:ug,33:fg,34:hg,35:pg,36:yg,37:dg}}),TI(zo,{structure:UA,memory:{array:bg},handle:2}),TI(Jo,{structure:De,memory:{array:bg},handle:3}),TI(qo,{structure:xe,memory:{array:bg},handle:4}),TI(Oo,{structure:ze,memory:{array:bg},handle:5}),TI(Ko,{structure:He,memory:{array:bg},handle:6}),TI(To,{structure:Ye,memory:{array:bg},slots:{0:Ho}}),TI(Ho,{structure:je}),TI(Yo,{structure:Ye,memory:{array:bg},slots:{0:Po}}),TI(Po,{structure:$e}),TI(_o,{structure:lt,memory:{array:bg},handle:7}),TI(Vo,{structure:yt,memory:{array:bg},handle:8}),TI(Xo,{structure:vt,memory:{array:bg},handle:9}),TI(Wo,{structure:b,memory:{array:KI},const:!0}),TI(jo,{structure:Ut,memory:{array:bg},handle:10}),TI(Zo,{structure:Rt,memory:{array:bg},handle:11}),TI($o,{structure:qt,memory:{array:bg},handle:12}),TI(Ag,{structure:Ht,memory:{array:bg},handle:13}),TI(eg,{structure:we,memory:{array:bg},handle:14}),TI(tg,{structure:Xt,memory:{array:bg},handle:15}),TI(ig,{structure:$t,memory:{array:bg},handle:16}),TI(ng,{structure:ii,memory:{array:bg},handle:17}),TI(rg,{structure:ai,memory:{array:bg},handle:18}),TI(sg,{structure:Qi,memory:{array:bg},handle:19}),TI(ag,{structure:li,memory:{array:bg},handle:20}),TI(og,{structure:hi,memory:{array:bg},handle:21}),TI(gg,{structure:mi,memory:{array:bg},handle:22}),TI(Ig,{structure:tt,memory:{array:bg},handle:23}),TI(Qg,{structure:rt,memory:{array:bg},handle:24}),TI(Cg,{structure:wi,memory:{array:bg},handle:25}),TI(cg,{structure:Gi,memory:{array:bg},handle:26}),TI(Bg,{structure:Mi,memory:{array:bg},handle:27}),TI(lg,{structure:tt,memory:{array:bg},handle:28}),TI(Eg,{structure:Ji,memory:{array:bg},handle:29}),TI(ug,{structure:Ti,memory:{array:bg},handle:30}),TI(fg,{structure:Vi,memory:{array:bg},handle:31}),TI(hg,{structure:Zi,memory:{array:bg},handle:32}),TI(pg,{structure:tn,memory:{array:bg},handle:33}),TI(yg,{structure:an,memory:{array:bg},handle:34}),TI(dg,{structure:tt,memory:{array:bg},handle:35}),TI(s,{...A,flags:1,signature:0xa310b7d01f11b8can,name:"void",align:1,instance:{members:[{...r,bitOffset:0,bitSize:0,byteSize:0,structure:s}]}}),TI(a,{...A,flags:1,signature:0x61e77abe97c52d51n,name:"f32",byteSize:4,align:4,instance:{members:[{...r,type:4,bitOffset:0,bitSize:32,byteSize:4,structure:a}]}}),TI(o,{...A,type:12,flags:10,signature:0x207e329602a86755n,name:"Arg(fn (Point, Point) Point)",length:2,byteSize:24,align:4,instance:{members:[{...r,type:5,flags:1,bitOffset:0,bitSize:64,byteSize:8,slot:0,name:"retval",structure:B},{...r,type:5,flags:1,bitOffset:64,bitSize:64,byteSize:8,slot:1,name:"0",structure:B},{...r,type:5,flags:1,bitOffset:128,bitSize:64,byteSize:8,slot:2,name:"1",structure:B}]}}),TI(g,{...A,type:14,signature:0x8e48777d39cc425en,name:"fn (Point, Point) Point",length:2,instance:{members:[{...r,type:5,bitSize:192,byteSize:24,structure:o}],template:gn}}),TI(I,{...A,type:12,flags:10,signature:0x61503e2c040eea30n,name:"Arg(fn (Point, Point) f32)",length:2,byteSize:20,align:4,instance:{members:[{...r,type:4,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:0,name:"retval",structure:a},{...r,type:5,flags:1,bitOffset:32,bitSize:64,byteSize:8,slot:1,name:"0",structure:B},{...r,type:5,flags:1,bitOffset:96,bitSize:64,byteSize:8,slot:2,name:"1",structure:B}]}}),TI(Q,{...A,type:14,signature:0x18a1631fcf9c9650n,name:"fn (Point, Point) f32",length:2,instance:{members:[{...r,type:5,bitSize:160,byteSize:20,structure:I}],template:In}}),TI(C,{...A,type:12,flags:10,signature:0x2c8b0923044d56a3n,name:"Arg(fn (Point) f32)",length:1,byteSize:12,align:4,instance:{members:[{...r,type:4,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:0,name:"retval",structure:a},{...r,type:5,flags:1,bitOffset:32,bitSize:64,byteSize:8,slot:1,name:"0",structure:B}]}}),TI(c,{...A,type:14,signature:0xd65e9ab75b9dec39n,name:"fn (Point) f32",length:1,instance:{members:[{...r,type:5,bitSize:96,byteSize:12,structure:C}],template:Qn}}),TI(B,{...A,type:2,flags:16,signature:0xc6238f223c317b90n,name:"Point",byteSize:8,align:4,instance:{members:[{...r,type:4,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:0,name:"x",structure:a},{...r,type:4,flags:1,bitOffset:32,bitSize:32,byteSize:4,slot:1,name:"y",structure:a}],template:Cn},static:{members:[{...r,type:5,flags:18,slot:0,name:"mid",structure:g},{...r,type:5,flags:18,slot:2,name:"distance",structure:Q},{...r,type:5,flags:18,slot:3,name:"diff",structure:g},{...r,type:5,flags:18,slot:4,name:"length",structure:c}],template:cn}}),TI(l,{...A,type:12,flags:10,signature:0x8d352bb77a26e612n,name:"Arg(fn (PointUV, PointUV) Point)",length:2,byteSize:40,align:4,instance:{members:[{...r,type:5,flags:1,bitOffset:0,bitSize:64,byteSize:8,slot:0,name:"retval",structure:B},{...r,type:5,flags:1,bitOffset:64,bitSize:128,byteSize:16,slot:1,name:"0",structure:y},{...r,type:5,flags:1,bitOffset:192,bitSize:128,byteSize:16,slot:2,name:"1",structure:y}]}}),TI(E,{...A,type:14,signature:0x0f1df05e0d01db92n,name:"fn (PointUV, PointUV) Point",length:2,instance:{members:[{...r,type:5,bitSize:320,byteSize:40,structure:l}],template:fn}}),TI(u,{...A,type:12,flags:10,signature:0x9961a28ae296031fn,name:"Arg(fn (PointUV, PointUV) f32)",length:2,byteSize:36,align:4,instance:{members:[{...r,type:4,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:0,name:"retval",structure:a},{...r,type:5,flags:1,bitOffset:32,bitSize:128,byteSize:16,slot:1,name:"0",structure:y},{...r,type:5,flags:1,bitOffset:160,bitSize:128,byteSize:16,slot:2,name:"1",structure:y}]}}),TI(f,{...A,type:14,signature:0xb56a381f65765bdcn,name:"fn (PointUV, PointUV) f32",length:2,instance:{members:[{...r,type:5,bitSize:288,byteSize:36,structure:u}],template:hn}}),TI(h,{...A,type:12,flags:10,signature:0xe743c73bc7c6fe7bn,name:"Arg(fn (PointUV) Point)",length:1,byteSize:24,align:4,instance:{members:[{...r,type:5,flags:1,bitOffset:0,bitSize:64,byteSize:8,slot:0,name:"retval",structure:B},{...r,type:5,flags:1,bitOffset:64,bitSize:128,byteSize:16,slot:1,name:"0",structure:y}]}}),TI(p,{...A,type:14,signature:0xb4b152a5ffc2fd66n,name:"fn (PointUV) Point",length:1,instance:{members:[{...r,type:5,bitSize:192,byteSize:24,structure:h}],template:pn}}),TI(y,{...A,type:2,flags:16,signature:0x526f11b57045ab14n,name:"PointUV",byteSize:16,align:4,instance:{members:[{...r,type:4,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:0,name:"x",structure:a},{...r,type:4,flags:1,bitOffset:32,bitSize:32,byteSize:4,slot:1,name:"y",structure:a},{...r,type:4,flags:1,bitOffset:64,bitSize:32,byteSize:4,slot:2,name:"u",structure:a},{...r,type:4,flags:1,bitOffset:96,bitSize:32,byteSize:4,slot:3,name:"v",structure:a}],template:yn},static:{members:[{...r,type:5,flags:18,slot:0,name:"mid",structure:E},{...r,type:5,flags:18,slot:1,name:"angleTo",structure:f},{...r,type:5,flags:18,slot:2,name:"distance",structure:f},{...r,type:5,flags:18,slot:3,name:"toPoint",structure:p}],template:dn}}),TI(d,{...A,type:9,flags:10,signature:0xfecc1a9f32c06d42n,name:"[_]PointUV",byteSize:16,align:4,instance:{members:[{...r,type:5,bitSize:128,byteSize:16,structure:y}]}}),TI(m,{...A,type:8,flags:188,signature:0x2905307feb293d85n,name:"[]const PointUV",byteSize:8,align:4,instance:{members:[{...r,type:5,bitSize:64,byteSize:8,slot:0,structure:d}]}}),TI(b,{...A,flags:1,signature:0x68598db431a811a3n,name:"u32",byteSize:4,align:4,instance:{members:[{...r,type:3,bitOffset:0,bitSize:32,byteSize:4,structure:b}]}}),TI(D,{...A,type:12,flags:14,signature:0x9ddbe0c6075e76cbn,name:"Arg(fn ([]const PointUV, u32) void)",length:2,byteSize:12,align:4,instance:{members:[{...r,flags:1,bitOffset:96,bitSize:0,byteSize:0,slot:0,name:"retval",structure:s},{...r,type:5,flags:1,bitOffset:0,bitSize:64,byteSize:8,slot:1,name:"0",structure:m},{...r,type:3,flags:1,bitOffset:64,bitSize:32,byteSize:4,slot:2,name:"1",structure:b}]}}),TI(S,{...A,type:14,signature:0x6bba777479940b36n,name:"fn ([]const PointUV, u32) void",length:2,instance:{members:[{...r,type:5,bitSize:96,byteSize:12,structure:D}],template:wn},static:{members:[],template:vn}}),TI(w,{...A,type:8,flags:204,signature:0x1b2e4a00e258618fn,name:"*const fn ([]const PointUV, u32) void",byteSize:4,align:4,instance:{members:[{...r,type:5,bitSize:32,byteSize:4,slot:0,structure:S}]}}),TI(v,{...A,flags:1,signature:0x370ee22b85937307n,name:"u8",byteSize:1,align:1,instance:{members:[{...r,type:3,bitOffset:0,bitSize:8,byteSize:1,structure:v}]}}),TI(k,{...A,type:1,flags:224,signature:0x72a0d50910cc3369n,name:"[4]u8",length:4,byteSize:4,align:1,instance:{members:[{...r,type:3,bitSize:8,byteSize:1,structure:v}]}}),TI(x,{...A,type:1,flags:64,signature:0x965d25e134612060n,name:"[3]f32",length:3,byteSize:12,align:4,instance:{members:[{...r,type:4,bitSize:32,byteSize:4,structure:a}]}}),TI(G,{...A,type:2,flags:26,signature:0x192d6f39fdd42e6en,name:"DrawInstance",byteSize:64,align:4,instance:{members:[{...r,type:5,flags:1,bitOffset:0,bitSize:128,byteSize:16,slot:0,name:"p0",structure:y},{...r,type:5,flags:1,bitOffset:128,bitSize:128,byteSize:16,slot:1,name:"p1",structure:y},{...r,type:5,flags:1,bitOffset:256,bitSize:128,byteSize:16,slot:2,name:"p2",structure:y},{...r,type:5,flags:1,bitOffset:384,bitSize:32,byteSize:4,slot:3,name:"color",structure:k},{...r,type:5,flags:1,bitOffset:416,bitSize:96,byteSize:12,slot:4,name:"radius",structure:x}],template:kn}}),TI(U,{...A,type:9,flags:10,signature:0x914ee09efb47cbf7n,name:"[_]DrawInstance",byteSize:64,align:4,instance:{members:[{...r,type:5,bitSize:512,byteSize:64,structure:G}]}}),TI(N,{...A,type:8,flags:188,signature:0x39778fa380da3875n,name:"[]const DrawInstance",byteSize:8,align:4,instance:{members:[{...r,type:5,bitSize:64,byteSize:8,slot:0,structure:U}]}}),TI(F,{...A,type:12,flags:14,signature:0x93ffc88e8c95765dn,name:"Arg(fn ([]const DrawInstance) void)",length:1,byteSize:8,align:4,instance:{members:[{...r,flags:1,bitOffset:64,bitSize:0,byteSize:0,slot:0,name:"retval",structure:s},{...r,type:5,flags:1,bitOffset:0,bitSize:64,byteSize:8,slot:1,name:"0",structure:N}]}}),TI(M,{...A,type:14,signature:0xe9f243b3e4ecde6cn,name:"fn ([]const DrawInstance) void",length:1,instance:{members:[{...r,type:5,bitSize:64,byteSize:8,structure:F}],template:xn},static:{members:[],template:Gn}}),TI(R,{...A,type:8,flags:204,signature:0xffb0918139c04f1an,name:"*const fn ([]const DrawInstance) void",byteSize:4,align:4,instance:{members:[{...r,type:5,bitSize:32,byteSize:4,slot:0,structure:M}]}}),TI(L,{...A,type:9,flags:10,signature:0xc2e8551856512494n,name:"[_]Point",byteSize:8,align:4,instance:{members:[{...r,type:5,bitSize:64,byteSize:8,structure:B}]}}),TI(z,{...A,type:8,flags:188,signature:0x04fa74127b6acc09n,name:"[]const Point",byteSize:8,align:4,instance:{members:[{...r,type:5,bitSize:64,byteSize:8,slot:0,structure:L}]}}),TI(J,{...A,type:12,flags:14,signature:0xbcabfdc00e2aa5efn,name:"Arg(fn ([]const Point, u32, u32, u32) void)",length:4,byteSize:20,align:4,instance:{members:[{...r,flags:1,bitOffset:160,bitSize:0,byteSize:0,slot:0,name:"retval",structure:s},{...r,type:5,flags:1,bitOffset:0,bitSize:64,byteSize:8,slot:1,name:"0",structure:z},{...r,type:3,flags:1,bitOffset:64,bitSize:32,byteSize:4,slot:2,name:"1",structure:b},{...r,type:3,flags:1,bitOffset:96,bitSize:32,byteSize:4,slot:3,name:"2",structure:b},{...r,type:3,flags:1,bitOffset:128,bitSize:32,byteSize:4,slot:4,name:"3",structure:b}]}}),TI(q,{...A,type:14,signature:0x28e16a0b4ee9f18cn,name:"fn ([]const Point, u32, u32, u32) void",length:4,instance:{members:[{...r,type:5,bitSize:160,byteSize:20,structure:J}],template:Un},static:{members:[],template:Nn}}),TI(O,{...A,type:8,flags:204,signature:0x9ac954f1f874b3b5n,name:"*const fn ([]const Point, u32, u32, u32) void",byteSize:4,align:4,instance:{members:[{...r,type:5,bitSize:32,byteSize:4,slot:0,structure:q}]}}),TI(K,{...A,type:12,signature:0x9a708346bd652dc9n,name:"Arg(fn (u32, u32, u32, u32) void)",length:4,byteSize:16,align:4,instance:{members:[{...r,flags:1,bitOffset:128,bitSize:0,byteSize:0,slot:0,name:"retval",structure:s},{...r,type:3,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:1,name:"0",structure:b},{...r,type:3,flags:1,bitOffset:32,bitSize:32,byteSize:4,slot:2,name:"1",structure:b},{...r,type:3,flags:1,bitOffset:64,bitSize:32,byteSize:4,slot:3,name:"2",structure:b},{...r,type:3,flags:1,bitOffset:96,bitSize:32,byteSize:4,slot:4,name:"3",structure:b}]}}),TI(T,{...A,type:14,signature:0x4af89192d7f7e364n,name:"fn (u32, u32, u32, u32) void",length:4,instance:{members:[{...r,type:5,bitSize:128,byteSize:16,structure:K}],template:Fn},static:{members:[],template:Mn}}),TI(H,{...A,type:8,flags:204,signature:0x96ca213ec0738fa3n,name:"*const fn (u32, u32, u32, u32) void",byteSize:4,align:4,instance:{members:[{...r,type:5,bitSize:32,byteSize:4,slot:0,structure:T}]}}),TI(Y,{...A,type:2,signature:0x0253d658a7e15a7an,name:"Placement",byteSize:16,align:4,instance:{members:[{...r,type:4,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:0,name:"x",structure:a},{...r,type:4,flags:1,bitOffset:32,bitSize:32,byteSize:4,slot:1,name:"y",structure:a},{...r,type:4,flags:1,bitOffset:64,bitSize:32,byteSize:4,slot:2,name:"width",structure:a},{...r,type:4,flags:1,bitOffset:96,bitSize:32,byteSize:4,slot:3,name:"height",structure:a}],template:Rn}}),TI(P,{...A,type:12,flags:10,signature:0x7ec4cbcd82d19090n,name:"Arg(fn (u32, u32, u32, Placement) void)",length:4,byteSize:28,align:4,instance:{members:[{...r,flags:1,bitOffset:224,bitSize:0,byteSize:0,slot:0,name:"retval",structure:s},{...r,type:3,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:1,name:"0",structure:b},{...r,type:3,flags:1,bitOffset:32,bitSize:32,byteSize:4,slot:2,name:"1",structure:b},{...r,type:3,flags:1,bitOffset:64,bitSize:32,byteSize:4,slot:3,name:"2",structure:b},{...r,type:5,flags:1,bitOffset:96,bitSize:128,byteSize:16,slot:4,name:"3",structure:Y}]}}),TI(_,{...A,type:14,signature:0xd690a44ec2f29c5cn,name:"fn (u32, u32, u32, Placement) void",length:4,instance:{members:[{...r,type:5,bitSize:224,byteSize:28,structure:P}],template:Ln},static:{members:[],template:zn}}),TI(V,{...A,type:8,flags:204,signature:0x4ccf7def3d1e7c54n,name:"*const fn (u32, u32, u32, Placement) void",byteSize:4,align:4,instance:{members:[{...r,type:5,bitSize:32,byteSize:4,slot:0,structure:_}]}}),TI(X,{...A,type:12,signature:0xc8f1446a55bbdcc4n,name:"Arg(fn (u32, u32, u32, u32, f32, f32) void)",length:6,byteSize:24,align:4,instance:{members:[{...r,flags:1,bitOffset:192,bitSize:0,byteSize:0,slot:0,name:"retval",structure:s},{...r,type:3,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:1,name:"0",structure:b},{...r,type:3,flags:1,bitOffset:32,bitSize:32,byteSize:4,slot:2,name:"1",structure:b},{...r,type:3,flags:1,bitOffset:64,bitSize:32,byteSize:4,slot:3,name:"2",structure:b},{...r,type:3,flags:1,bitOffset:96,bitSize:32,byteSize:4,slot:4,name:"3",structure:b},{...r,type:4,flags:1,bitOffset:128,bitSize:32,byteSize:4,slot:5,name:"4",structure:a},{...r,type:4,flags:1,bitOffset:160,bitSize:32,byteSize:4,slot:6,name:"5",structure:a}]}}),TI(W,{...A,type:14,signature:0xc990915d10e8c5e9n,name:"fn (u32, u32, u32, u32, f32, f32) void",length:6,instance:{members:[{...r,type:5,bitSize:192,byteSize:24,structure:X}],template:Jn},static:{members:[],template:qn}}),TI(j,{...A,type:8,flags:204,signature:0xfdea5d2863b67a83n,name:"*const fn (u32, u32, u32, u32, f32, f32) void",byteSize:4,align:4,instance:{members:[{...r,type:5,bitSize:32,byteSize:4,slot:0,structure:W}]}}),TI(Z,{...A,type:1,flags:64,signature:0x60772e176987374dn,name:"[2]u32",length:2,byteSize:8,align:4,instance:{members:[{...r,type:3,bitSize:32,byteSize:4,structure:b}]}}),TI($,{...A,type:10,flags:16,signature:0x54c1b3c549d13acan,name:"@Vector(4, f32)",length:4,byteSize:16,align:16,instance:{members:[{...r,type:4,bitSize:32,byteSize:4,structure:a}]}}),TI(AA,{...A,type:2,flags:26,signature:0xbd6fe708f9f8d6ffn,name:"UniformSolid",byteSize:32,align:16,instance:{members:[{...r,type:4,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:0,name:"dist_start",structure:a},{...r,type:4,flags:1,bitOffset:32,bitSize:32,byteSize:4,slot:1,name:"dist_end",structure:a},{...r,type:5,bitOffset:64,bitSize:64,byteSize:8,slot:2,name:"padding",structure:Z},{...r,type:5,flags:1,bitOffset:128,bitSize:128,byteSize:16,slot:3,name:"color",structure:$}],template:On}}),TI(eA,{...A,type:1,flags:64,signature:0x55b5c2c225a6545bn,name:"[4]f32",length:4,byteSize:16,align:4,instance:{members:[{...r,type:4,bitSize:32,byteSize:4,structure:a}]}}),TI(tA,{...A,type:1,flags:64,signature:0xf25f9cba158fbe10n,name:"[3]u32",length:3,byteSize:12,align:4,instance:{members:[{...r,type:3,bitSize:32,byteSize:4,structure:b}]}}),TI(iA,{...A,type:2,flags:4122,signature:0xcaf30c045081f68fn,name:"UniformGradientStop",byteSize:32,align:4,instance:{members:[{...r,type:5,bitOffset:0,bitSize:128,byteSize:16,slot:0,name:"color",structure:eA},{...r,type:4,bitOffset:128,bitSize:32,byteSize:4,slot:1,name:"offset",structure:a},{...r,type:5,bitOffset:160,bitSize:96,byteSize:12,slot:2,name:"padding",structure:tA}],template:Kn}}),TI(nA,{...A,type:1,flags:10,signature:0xb8c0b82a9715265an,name:"[10]UniformGradientStop",length:10,byteSize:320,align:4,instance:{members:[{...r,type:5,bitSize:256,byteSize:32,structure:iA}]}}),TI(rA,{...A,type:2,flags:26,signature:0xf19f5f8ee9b0ab41n,name:"UniformLinearGradient",byteSize:352,align:4,instance:{members:[{...r,type:4,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:0,name:"dist_start",structure:a},{...r,type:4,flags:1,bitOffset:32,bitSize:32,byteSize:4,slot:1,name:"dist_end",structure:a},{...r,type:3,flags:1,bitOffset:64,bitSize:32,byteSize:4,slot:2,name:"stops_count",structure:b},{...r,type:3,bitOffset:96,bitSize:32,byteSize:4,slot:3,name:"padding",structure:b},{...r,type:5,flags:1,bitOffset:128,bitSize:64,byteSize:8,slot:4,name:"start",structure:B},{...r,type:5,flags:1,bitOffset:192,bitSize:64,byteSize:8,slot:5,name:"end",structure:B},{...r,type:5,flags:1,bitOffset:256,bitSize:2560,byteSize:320,slot:6,name:"stops",structure:nA}],template:Tn}}),TI(sA,{...A,type:2,flags:26,signature:0xba6e99cdb975c14dn,name:"UniformRadialGradient",byteSize:352,align:4,instance:{members:[{...r,type:4,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:0,name:"dist_start",structure:a},{...r,type:4,flags:1,bitOffset:32,bitSize:32,byteSize:4,slot:1,name:"dist_end",structure:a},{...r,type:3,flags:1,bitOffset:64,bitSize:32,byteSize:4,slot:2,name:"stops_count",structure:b},{...r,type:4,flags:1,bitOffset:96,bitSize:32,byteSize:4,slot:3,name:"radius_ratio",structure:a},{...r,type:5,flags:1,bitOffset:128,bitSize:64,byteSize:8,slot:4,name:"center",structure:B},{...r,type:5,flags:1,bitOffset:192,bitSize:64,byteSize:8,slot:5,name:"destination",structure:B},{...r,type:5,flags:1,bitOffset:256,bitSize:2560,byteSize:320,slot:6,name:"stops",structure:nA}],template:Hn}}),TI(aA,{...A,type:6,flags:1,signature:0x6787563e1d5f78a8n,name:"EN0",byteSize:1,align:1,instance:{members:[{...r,type:3,bitOffset:0,bitSize:2,byteSize:1,structure:aA}]},static:{members:[{...r,type:5,flags:4,slot:0,name:"solid",structure:aA},{...r,type:5,flags:4,slot:1,name:"linear",structure:aA},{...r,type:5,flags:4,slot:2,name:"radial",structure:aA}],template:Yn}}),TI(oA,{...A,type:3,flags:58,signature:0x20b352911ff31f6bn,name:"DrawUniform",byteSize:368,align:16,instance:{members:[{...r,type:5,bitOffset:0,bitSize:256,byteSize:32,slot:0,name:"solid",structure:AA},{...r,type:5,bitOffset:0,bitSize:2816,byteSize:352,slot:1,name:"linear",structure:rA},{...r,type:5,bitOffset:0,bitSize:2816,byteSize:352,slot:2,name:"radial",structure:sA},{...r,type:3,flags:8,bitOffset:2816,bitSize:2,byteSize:1,structure:aA}]}}),TI(gA,{...A,type:12,flags:14,signature:0x5e0099122add1a77n,name:"Arg(fn ([]const PointUV, DrawUniform, u32) void)",length:3,byteSize:384,align:16,instance:{members:[{...r,flags:1,bitOffset:3040,bitSize:0,byteSize:0,slot:0,name:"retval",structure:s},{...r,type:5,flags:1,bitOffset:2944,bitSize:64,byteSize:8,slot:1,name:"0",structure:m},{...r,type:5,flags:1,bitOffset:0,bitSize:2944,byteSize:368,slot:2,name:"1",structure:oA},{...r,type:3,flags:1,bitOffset:3008,bitSize:32,byteSize:4,slot:3,name:"2",structure:b}]}}),TI(IA,{...A,type:14,signature:0x43c5436481c75e6dn,name:"fn ([]const PointUV, DrawUniform, u32) void",length:3,instance:{members:[{...r,type:5,bitSize:3072,byteSize:384,structure:gA}],template:Xn},static:{members:[],template:Wn}}),TI(QA,{...A,type:8,flags:204,signature:0x673f1c5641823f18n,name:"*const fn ([]const PointUV, DrawUniform, u32) void",byteSize:4,align:4,instance:{members:[{...r,type:5,bitSize:32,byteSize:4,slot:0,structure:IA}]}}),TI(CA,{...A,type:1,flags:64,signature:0x6d60cb6f613019aan,name:"[4]u32",length:4,byteSize:16,align:4,instance:{members:[{...r,type:3,bitSize:32,byteSize:4,structure:b}]}}),TI(cA,{...A,type:2,flags:26,signature:0x3cad7320ede972e2n,name:"PickVertex",byteSize:32,align:4,instance:{members:[{...r,type:5,flags:1,bitOffset:0,bitSize:128,byteSize:16,slot:0,name:"point",structure:y},{...r,type:5,flags:1,bitOffset:128,bitSize:128,byteSize:16,slot:1,name:"id",structure:CA}],template:jn}}),TI(BA,{...A,type:9,flags:10,signature:0xa6fe4858c0857d6dn,name:"[_]PickVertex",byteSize:32,align:4,instance:{members:[{...r,type:5,bitSize:256,byteSize:32,structure:cA}]}}),TI(lA,{...A,type:8,flags:188,signature:0x8b5085e14c0be0d9n,name:"[]const PickVertex",byteSize:8,align:4,instance:{members:[{...r,type:5,bitSize:64,byteSize:8,slot:0,structure:BA}]}}),TI(EA,{...A,type:12,flags:14,signature:0x97dc1de2cc30f266n,name:"Arg(fn ([]const PickVertex, u32) void)",length:2,byteSize:12,align:4,instance:{members:[{...r,flags:1,bitOffset:96,bitSize:0,byteSize:0,slot:0,name:"retval",structure:s},{...r,type:5,flags:1,bitOffset:0,bitSize:64,byteSize:8,slot:1,name:"0",structure:lA},{...r,type:3,flags:1,bitOffset:64,bitSize:32,byteSize:4,slot:2,name:"1",structure:b}]}}),TI(uA,{...A,type:14,signature:0x1abcbee37e184e77n,name:"fn ([]const PickVertex, u32) void",length:2,instance:{members:[{...r,type:5,bitSize:96,byteSize:12,structure:EA}],template:Zn},static:{members:[],template:$n}}),TI(fA,{...A,type:8,flags:204,signature:0xcde286d73f219d41n,name:"*const fn ([]const PickVertex, u32) void",byteSize:4,align:4,instance:{members:[{...r,type:5,bitSize:32,byteSize:4,slot:0,structure:uA}]}}),TI(hA,{...A,type:2,flags:26,signature:0x1bee0546b01f3c4bn,name:"PickInstance",byteSize:76,align:4,instance:{members:[{...r,type:5,flags:1,bitOffset:0,bitSize:128,byteSize:16,slot:0,name:"p0",structure:y},{...r,type:5,flags:1,bitOffset:128,bitSize:128,byteSize:16,slot:1,name:"p1",structure:y},{...r,type:5,flags:1,bitOffset:256,bitSize:128,byteSize:16,slot:2,name:"p2",structure:y},{...r,type:5,flags:1,bitOffset:384,bitSize:128,byteSize:16,slot:3,name:"id",structure:CA},{...r,type:5,flags:1,bitOffset:512,bitSize:96,byteSize:12,slot:4,name:"radius",structure:x}],template:Ar}}),TI(pA,{...A,type:9,flags:10,signature:0x199be0bc5f322739n,name:"[_]PickInstance",byteSize:76,align:4,instance:{members:[{...r,type:5,bitSize:608,byteSize:76,structure:hA}]}}),TI(yA,{...A,type:8,flags:188,signature:0x5188567a77db91can,name:"[]const PickInstance",byteSize:8,align:4,instance:{members:[{...r,type:5,bitSize:64,byteSize:8,slot:0,structure:pA}]}}),TI(dA,{...A,type:12,flags:14,signature:0x3c18777eb99f248bn,name:"Arg(fn ([]const PickInstance) void)",length:1,byteSize:8,align:4,instance:{members:[{...r,flags:1,bitOffset:64,bitSize:0,byteSize:0,slot:0,name:"retval",structure:s},{...r,type:5,flags:1,bitOffset:0,bitSize:64,byteSize:8,slot:1,name:"0",structure:yA}]}}),TI(mA,{...A,type:14,signature:0xabc9dbbca86a3778n,name:"fn ([]const PickInstance) void",length:1,instance:{members:[{...r,type:5,bitSize:64,byteSize:8,structure:dA}],template:er},static:{members:[],template:tr}}),TI(bA,{...A,type:8,flags:204,signature:0x0c062d7fbc8eefacn,name:"*const fn ([]const PickInstance) void",byteSize:4,align:4,instance:{members:[{...r,type:5,bitSize:32,byteSize:4,slot:0,structure:mA}]}}),TI(DA,{...A,type:2,signature:0xcebaa9e2330cf84cn,name:"PickUniform",byteSize:8,align:4,instance:{members:[{...r,type:4,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:0,name:"dist_start",structure:a},{...r,type:4,flags:1,bitOffset:32,bitSize:32,byteSize:4,slot:1,name:"dist_end",structure:a}],template:ir}}),TI(SA,{...A,type:12,flags:14,signature:0x1a483e4175b48f5fn,name:"Arg(fn ([]const PickVertex, PickUniform, u32) void)",length:3,byteSize:20,align:4,instance:{members:[{...r,flags:1,bitOffset:160,bitSize:0,byteSize:0,slot:0,name:"retval",structure:s},{...r,type:5,flags:1,bitOffset:0,bitSize:64,byteSize:8,slot:1,name:"0",structure:lA},{...r,type:5,flags:1,bitOffset:64,bitSize:64,byteSize:8,slot:2,name:"1",structure:DA},{...r,type:3,flags:1,bitOffset:128,bitSize:32,byteSize:4,slot:3,name:"2",structure:b}]}}),TI(wA,{...A,type:14,signature:0xd4e43741c641092an,name:"fn ([]const PickVertex, PickUniform, u32) void",length:3,instance:{members:[{...r,type:5,bitSize:160,byteSize:20,structure:SA}],template:nr},static:{members:[],template:rr}}),TI(vA,{...A,type:8,flags:204,signature:0x8af50866e58be998n,name:"*const fn ([]const PickVertex, PickUniform, u32) void",byteSize:4,align:4,instance:{members:[{...r,type:5,bitSize:32,byteSize:4,slot:0,structure:wA}]}}),TI(kA,{...A,type:2,flags:14,signature:0x70ac94780a2323c1n,name:"WebGpuPrograms",byteSize:40,align:4,instance:{members:[{...r,type:5,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:0,name:"draw_texture",structure:w},{...r,type:5,flags:1,bitOffset:32,bitSize:32,byteSize:4,slot:1,name:"draw_triangle",structure:R},{...r,type:5,flags:1,bitOffset:64,bitSize:32,byteSize:4,slot:2,name:"compute_shape",structure:O},{...r,type:5,flags:1,bitOffset:96,bitSize:32,byteSize:4,slot:3,name:"clear_sdf",structure:H},{...r,type:5,flags:1,bitOffset:128,bitSize:32,byteSize:4,slot:4,name:"combine_sdf",structure:V},{...r,type:5,flags:1,bitOffset:160,bitSize:32,byteSize:4,slot:5,name:"draw_blur",structure:j},{...r,type:5,flags:1,bitOffset:192,bitSize:32,byteSize:4,slot:6,name:"draw_shape",structure:QA},{...r,type:5,flags:1,bitOffset:224,bitSize:32,byteSize:4,slot:7,name:"pick_texture",structure:fA},{...r,type:5,flags:1,bitOffset:256,bitSize:32,byteSize:4,slot:8,name:"pick_triangle",structure:bA},{...r,type:5,flags:1,bitOffset:288,bitSize:32,byteSize:4,slot:9,name:"pick_shape",structure:vA}],template:sr}}),TI(xA,{...A,type:8,flags:204,signature:0x4acb34c3b2746433n,name:"*const WebGpuPrograms",byteSize:4,align:4,instance:{members:[{...r,type:5,bitSize:32,byteSize:4,slot:0,structure:kA}]}}),TI(GA,{...A,type:12,flags:14,signature:0x7d3eadcf8af54d67n,name:"Arg(fn (*const WebGpuPrograms) void)",length:1,byteSize:4,align:4,instance:{members:[{...r,flags:1,bitOffset:32,bitSize:0,byteSize:0,slot:0,name:"retval",structure:s},{...r,type:5,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:1,name:"0",structure:xA}]}}),TI(UA,{...A,type:14,signature:0x876f54058f5a8a1dn,name:"fn (*const WebGpuPrograms) void",length:1,instance:{members:[{...r,type:5,bitSize:32,byteSize:4,structure:GA}],template:wr}}),TI(NA,{...A,type:1,flags:10,signature:0x009c896a0d8f3812n,name:"[4]PointUV",length:4,byteSize:64,align:4,instance:{members:[{...r,type:5,bitSize:128,byteSize:16,structure:y}]}}),TI(FA,{...A,flags:1,signature:0x6eddab4b13ff06c5n,name:"bool",byteSize:1,align:1,instance:{members:[{...r,type:1,bitOffset:0,bitSize:1,byteSize:1,structure:FA}]}}),TI(MA,{...A,type:12,flags:10,signature:0x58a13edda65f5ed0n,name:"Arg(fn (Serialized, Serialized) bool)",length:2,byteSize:148,align:4,instance:{members:[{...r,type:1,flags:1,bitOffset:1152,bitSize:1,byteSize:1,slot:0,name:"retval",structure:FA},{...r,type:5,flags:1,bitOffset:0,bitSize:576,byteSize:72,slot:1,name:"0",structure:LA},{...r,type:5,flags:1,bitOffset:576,bitSize:576,byteSize:72,slot:2,name:"1",structure:LA}]}}),TI(RA,{...A,type:14,signature:0x360330571d9497c6n,name:"fn (Serialized, Serialized) bool",length:2,instance:{members:[{...r,type:5,bitSize:1184,byteSize:148,structure:MA}],template:vr}}),TI(LA,{...A,type:2,flags:10,signature:0xb39c5f7dff3b2904n,name:"Serialized",byteSize:72,align:4,instance:{members:[{...r,type:5,flags:1,bitOffset:0,bitSize:512,byteSize:64,slot:0,name:"bounds",structure:NA},{...r,type:3,flags:1,bitOffset:512,bitSize:32,byteSize:4,slot:1,name:"texture_id",structure:b},{...r,type:3,flags:1,bitOffset:544,bitSize:32,byteSize:4,slot:2,name:"id",structure:b}],template:kr},static:{members:[{...r,type:5,flags:18,slot:0,name:"compare",structure:RA}],template:xr}}),TI(zA,{...A,type:9,flags:14,signature:0x28f4d67d0bc5a78fn,name:"[_][]const Point",byteSize:8,align:4,instance:{members:[{...r,type:5,bitSize:64,byteSize:8,structure:z}]}}),TI(JA,{...A,type:8,flags:188,signature:0x7ad3432b0313bcc4n,name:"[]const []const Point",byteSize:8,align:4,instance:{members:[{...r,type:5,bitSize:64,byteSize:8,slot:0,structure:zA}]}}),TI(qA,{...A,type:12,flags:10,signature:0x176aa807147c42f7n,name:"Arg(fn (GradientStop, GradientStop) bool)",length:2,byteSize:44,align:4,instance:{members:[{...r,type:1,flags:1,bitOffset:320,bitSize:1,byteSize:1,slot:0,name:"retval",structure:FA},{...r,type:5,flags:1,bitOffset:0,bitSize:160,byteSize:20,slot:1,name:"0",structure:KA},{...r,type:5,flags:1,bitOffset:160,bitSize:160,byteSize:20,slot:2,name:"1",structure:KA}]}}),TI(OA,{...A,type:14,signature:0x5ab6fe105d4fbdb3n,name:"fn (GradientStop, GradientStop) bool",length:2,instance:{members:[{...r,type:5,bitSize:352,byteSize:44,structure:qA}],template:Ur}}),TI(KA,{...A,type:2,flags:26,signature:0x0913e15ff917a229n,name:"GradientStop",byteSize:20,align:4,instance:{members:[{...r,type:5,flags:1,bitOffset:0,bitSize:128,byteSize:16,slot:0,name:"color",structure:eA},{...r,type:4,flags:1,bitOffset:128,bitSize:32,byteSize:4,slot:1,name:"offset",structure:a}],template:Nr},static:{members:[{...r,type:5,flags:18,slot:0,name:"compare",structure:OA}],template:Fr}}),TI(TA,{...A,type:9,flags:10,signature:0x7b432d3e8877b341n,name:"[_]GradientStop",byteSize:20,align:4,instance:{members:[{...r,type:5,bitSize:160,byteSize:20,structure:KA}]}}),TI(HA,{...A,type:8,flags:60,signature:0x5e6d4f4686359ed4n,name:"[]GradientStop",byteSize:8,align:4,instance:{members:[{...r,type:5,bitSize:64,byteSize:8,slot:0,structure:TA}]}}),TI(YA,{...A,type:2,flags:14,signature:0xb8e52699e00d4cb2n,name:"SerializedLinearGradient",byteSize:24,align:4,instance:{members:[{...r,type:5,flags:1,bitOffset:0,bitSize:64,byteSize:8,slot:0,name:"start",structure:B},{...r,type:5,flags:1,bitOffset:64,bitSize:64,byteSize:8,slot:1,name:"end",structure:B},{...r,type:5,flags:1,bitOffset:128,bitSize:64,byteSize:8,slot:2,name:"stops",structure:HA}],template:Rr}}),TI(PA,{...A,type:2,flags:14,signature:0xd33658d326d7d7f1n,name:"SerializedRadialGradient",byteSize:28,align:4,instance:{members:[{...r,type:4,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:0,name:"radius_ratio",structure:a},{...r,type:5,flags:1,bitOffset:32,bitSize:64,byteSize:8,slot:1,name:"center",structure:B},{...r,type:5,flags:1,bitOffset:96,bitSize:64,byteSize:8,slot:2,name:"destination",structure:B},{...r,type:5,flags:1,bitOffset:160,bitSize:64,byteSize:8,slot:3,name:"stops",structure:HA}],template:zr}}),TI(_A,{...A,type:6,flags:1,signature:0x429513dea7837a43n,name:"EN1",byteSize:1,align:1,instance:{members:[{...r,type:3,bitOffset:0,bitSize:2,byteSize:1,structure:_A}]},static:{members:[{...r,type:5,flags:4,slot:0,name:"linear",structure:_A},{...r,type:5,flags:4,slot:1,name:"radial",structure:_A},{...r,type:5,flags:4,slot:2,name:"solid",structure:_A}],template:qr}}),TI(VA,{...A,type:12,flags:14,signature:0xc6620c10f001ea7fn,name:"Arg(fn (SerializedFill, SerializedFill) bool)",length:2,byteSize:68,align:4,instance:{members:[{...r,type:1,flags:1,bitOffset:512,bitSize:1,byteSize:1,slot:0,name:"retval",structure:FA},{...r,type:5,flags:1,bitOffset:0,bitSize:256,byteSize:32,slot:1,name:"0",structure:WA},{...r,type:5,flags:1,bitOffset:256,bitSize:256,byteSize:32,slot:2,name:"1",structure:WA}]}}),TI(XA,{...A,type:14,signature:0xded4888babf4368fn,name:"fn (SerializedFill, SerializedFill) bool",length:2,instance:{members:[{...r,type:5,bitSize:544,byteSize:68,structure:VA}],template:Hr}}),TI(WA,{...A,type:3,flags:62,signature:0xd93e48683d9c2917n,name:"SerializedFill",byteSize:32,align:4,instance:{members:[{...r,type:5,bitOffset:0,bitSize:192,byteSize:24,slot:0,name:"linear",structure:YA},{...r,type:5,bitOffset:0,bitSize:224,byteSize:28,slot:1,name:"radial",structure:PA},{...r,type:5,bitOffset:0,bitSize:128,byteSize:16,slot:2,name:"solid",structure:eA},{...r,type:3,flags:8,bitOffset:224,bitSize:2,byteSize:1,structure:_A}]},static:{members:[{...r,type:5,flags:18,slot:0,name:"compare",structure:XA}],template:Yr}}),TI(jA,{...A,type:2,flags:14,signature:0x724eb4298011305en,name:"SerializedSdfEffect",byteSize:40,align:4,instance:{members:[{...r,type:4,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:0,name:"dist_start",structure:a},{...r,type:4,flags:1,bitOffset:32,bitSize:32,byteSize:4,slot:1,name:"dist_end",structure:a},{...r,type:5,flags:1,bitOffset:64,bitSize:256,byteSize:32,slot:2,name:"fill",structure:WA}],template:_r}}),TI(ZA,{...A,type:9,flags:14,signature:0x076e7ae5b86c0f77n,name:"[_]SerializedSdfEffect",byteSize:40,align:4,instance:{members:[{...r,type:5,bitSize:320,byteSize:40,structure:jA}]}}),TI($A,{...A,type:8,flags:188,signature:0xc6e96a13ca810a21n,name:"[]const SerializedSdfEffect",byteSize:8,align:4,instance:{members:[{...r,type:5,bitSize:64,byteSize:8,slot:0,structure:ZA}]}}),TI(Ae,{...A,type:2,flags:10,signature:0x186189c59a882b0cn,name:"Filter",byteSize:8,align:4,instance:{members:[{...r,type:5,flags:1,bitOffset:0,bitSize:64,byteSize:8,slot:0,name:"gaussianBlur",structure:B}],template:$r}}),TI(ee,{...A,type:7,flags:27,signature:0xf6590c3c20e730a9n,name:"?Filter",byteSize:12,align:4,instance:{members:[{...r,type:5,bitOffset:0,bitSize:64,byteSize:8,slot:0,structure:Ae},{...r,type:3,flags:8,bitOffset:64,bitSize:8,byteSize:1,structure:v}]}}),TI(te,{...A,type:12,flags:14,signature:0x11a4c5a9b090d0e9n,name:"Arg(fn (SerializedProps, SerializedProps) bool)",length:2,byteSize:52,align:4,instance:{members:[{...r,type:1,flags:1,bitOffset:384,bitSize:1,byteSize:1,slot:0,name:"retval",structure:FA},{...r,type:5,flags:1,bitOffset:0,bitSize:192,byteSize:24,slot:1,name:"0",structure:ne},{...r,type:5,flags:1,bitOffset:192,bitSize:192,byteSize:24,slot:2,name:"1",structure:ne}]}}),TI(ie,{...A,type:14,signature:0xc884f2247db508d4n,name:"fn (SerializedProps, SerializedProps) bool",length:2,instance:{members:[{...r,type:5,bitSize:416,byteSize:52,structure:te}],template:As}}),TI(ne,{...A,type:2,flags:4110,signature:0x34250012a56f0f2an,name:"SerializedProps",byteSize:24,align:4,instance:{members:[{...r,type:5,bitOffset:0,bitSize:64,byteSize:8,slot:0,name:"sdf_effects",structure:$A},{...r,type:5,bitOffset:64,bitSize:96,byteSize:12,slot:1,name:"filter",structure:ee},{...r,type:4,bitOffset:160,bitSize:32,byteSize:4,slot:2,name:"opacity",structure:a}],template:es},static:{members:[{...r,type:5,flags:18,slot:0,name:"compare",structure:ie}],template:ns}}),TI(re,{...A,type:7,flags:17,signature:0x6a0f688da3728775n,name:"?u32",byteSize:8,align:4,instance:{members:[{...r,type:3,bitOffset:0,bitSize:32,byteSize:4,slot:0,structure:b},{...r,type:3,flags:8,bitOffset:32,bitSize:8,byteSize:1,structure:v}]}}),TI(se,{...A,type:12,flags:14,signature:0xddb6d6caa19bbf41n,name:"Arg(fn (Serialized, Serialized) bool)",length:2,byteSize:228,align:4,instance:{members:[{...r,type:1,flags:1,bitOffset:1792,bitSize:1,byteSize:1,slot:0,name:"retval",structure:FA},{...r,type:5,flags:1,bitOffset:0,bitSize:896,byteSize:112,slot:1,name:"0",structure:oe},{...r,type:5,flags:1,bitOffset:896,bitSize:896,byteSize:112,slot:2,name:"1",structure:oe}]}}),TI(ae,{...A,type:14,signature:0x86a434d5de44aaeen,name:"fn (Serialized, Serialized) bool",length:2,instance:{members:[{...r,type:5,bitSize:1824,byteSize:228,structure:se}],template:ss}}),TI(oe,{...A,type:2,flags:14,signature:0x1fd2ad6b7b50b83cn,name:"Serialized",byteSize:112,align:4,instance:{members:[{...r,type:3,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:0,name:"id",structure:b},{...r,type:5,flags:1,bitOffset:32,bitSize:64,byteSize:8,slot:1,name:"paths",structure:JA},{...r,type:5,flags:1,bitOffset:96,bitSize:192,byteSize:24,slot:2,name:"props",structure:ne},{...r,type:5,flags:1,bitOffset:288,bitSize:512,byteSize:64,slot:3,name:"bounds",structure:NA},{...r,type:3,flags:1,bitOffset:800,bitSize:32,byteSize:4,slot:4,name:"sdf_texture_id",structure:b},{...r,type:5,flags:1,bitOffset:832,bitSize:64,byteSize:8,slot:5,name:"cache_texture_id",structure:re}],template:as},static:{members:[{...r,type:5,flags:18,slot:0,name:"compare",structure:ae}],template:Qs}}),TI(ge,{...A,type:9,flags:224,signature:0x9b3f78f92307ba61n,name:"[_]u8",byteSize:1,align:1,instance:{members:[{...r,type:3,bitSize:8,byteSize:1,structure:v}]}}),TI(Ie,{...A,type:8,flags:188,signature:0x7e2f0adf211d515en,name:"[]const u8",byteSize:8,align:4,instance:{members:[{...r,type:5,bitSize:64,byteSize:8,slot:0,structure:ge}]}}),TI(Qe,{...A,flags:17,signature:0xad790f74c7d61933n,name:"usize",byteSize:4,align:4,instance:{members:[{...r,type:3,bitOffset:0,bitSize:32,byteSize:4,structure:Qe}]}}),TI(Ce,{...A,type:7,flags:15,signature:0xebf81e7a82becd63n,name:"?[]const u8",byteSize:8,align:4,instance:{members:[{...r,type:5,bitOffset:0,bitSize:64,byteSize:8,slot:0,structure:Ie},{...r,type:3,flags:8,bitOffset:0,bitSize:32,byteSize:4,structure:Qe}]}}),TI(ce,{...A,type:12,flags:14,signature:0xcc11fdc7e0265fafn,name:"Arg(fn (Serialized, Serialized) bool)",length:2,byteSize:212,align:4,instance:{members:[{...r,type:1,flags:1,bitOffset:1664,bitSize:1,byteSize:1,slot:0,name:"retval",structure:FA},{...r,type:5,flags:1,bitOffset:0,bitSize:832,byteSize:104,slot:1,name:"0",structure:le},{...r,type:5,flags:1,bitOffset:832,bitSize:832,byteSize:104,slot:2,name:"1",structure:le}]}}),TI(Be,{...A,type:14,signature:0xb932ae3bc2509a83n,name:"fn (Serialized, Serialized) bool",length:2,instance:{members:[{...r,type:5,bitSize:1696,byteSize:212,structure:ce}],template:cs}}),TI(le,{...A,type:2,flags:14,signature:0x7439e7f6d7c6382bn,name:"Serialized",byteSize:104,align:4,instance:{members:[{...r,type:3,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:0,name:"id",structure:b},{...r,type:5,flags:129,bitOffset:32,bitSize:64,byteSize:8,slot:1,name:"content",structure:Ce},{...r,type:5,flags:1,bitOffset:96,bitSize:512,byteSize:64,slot:2,name:"bounds",structure:NA},{...r,type:4,flags:1,bitOffset:608,bitSize:32,byteSize:4,slot:3,name:"font_size",structure:a},{...r,type:5,flags:1,bitOffset:640,bitSize:192,byteSize:24,slot:4,name:"props",structure:ne}],template:Bs},static:{members:[{...r,type:5,flags:18,slot:0,name:"compare",structure:Be}],template:hs}}),TI(Ee,{...A,type:6,flags:1,signature:0x7cf6a3de88cb8656n,name:"EN2",byteSize:1,align:1,instance:{members:[{...r,type:3,bitOffset:0,bitSize:2,byteSize:1,structure:Ee}]},static:{members:[{...r,type:5,flags:4,slot:0,name:"img",structure:Ee},{...r,type:5,flags:4,slot:1,name:"shape",structure:Ee},{...r,type:5,flags:4,slot:2,name:"text",structure:Ee}],template:ys}}),TI(ue,{...A,type:3,flags:62,signature:0xe208830287208ab8n,name:"AssetSerialized",byteSize:116,align:4,instance:{members:[{...r,type:5,bitOffset:0,bitSize:576,byteSize:72,slot:0,name:"img",structure:LA},{...r,type:5,bitOffset:0,bitSize:896,byteSize:112,slot:1,name:"shape",structure:oe},{...r,type:5,bitOffset:0,bitSize:832,byteSize:104,slot:2,name:"text",structure:le},{...r,type:3,flags:8,bitOffset:896,bitSize:2,byteSize:1,structure:Ee}]}}),TI(fe,{...A,type:9,flags:14,signature:0x545b35b0e86f5133n,name:"[_]AssetSerialized",byteSize:116,align:4,instance:{members:[{...r,type:5,bitSize:928,byteSize:116,structure:ue}]}}),TI(he,{...A,type:8,flags:188,signature:0xdb8c3c7eb33ba569n,name:"[]const AssetSerialized",byteSize:8,align:4,instance:{members:[{...r,type:5,bitSize:64,byteSize:8,slot:0,structure:fe}]}}),TI(pe,{...A,type:2,flags:14,signature:0x040f51ff54213f3en,name:"ProjectSnapshot",byteSize:16,align:4,instance:{members:[{...r,type:4,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:0,name:"width",structure:a},{...r,type:4,flags:1,bitOffset:32,bitSize:32,byteSize:4,slot:1,name:"height",structure:a},{...r,type:5,flags:1,bitOffset:64,bitSize:64,byteSize:8,slot:2,name:"assets",structure:he}],template:Ds}}),TI(ye,{...A,type:12,flags:14,signature:0x1f03f5a00b0e5de2n,name:"Arg(fn (ProjectSnapshot) void)",length:1,byteSize:16,align:4,instance:{members:[{...r,flags:1,bitOffset:128,bitSize:0,byteSize:0,slot:0,name:"retval",structure:s},{...r,type:5,flags:1,bitOffset:0,bitSize:128,byteSize:16,slot:1,name:"0",structure:pe}]}}),TI(de,{...A,type:14,signature:0xb63619f3a3d97202n,name:"fn (ProjectSnapshot) void",length:1,instance:{members:[{...r,type:5,bitSize:128,byteSize:16,structure:ye}],template:ws},static:{members:[],template:vs}}),TI(me,{...A,type:8,flags:204,signature:0x218d6b7219b4fcffn,name:"*const fn (ProjectSnapshot) void",byteSize:4,align:4,instance:{members:[{...r,type:5,bitSize:32,byteSize:4,slot:0,structure:de}]}}),TI(be,{...A,type:12,flags:14,signature:0x46eb8e1a864daca6n,name:"Arg(fn (*const fn (ProjectSnapshot) void) void)",length:1,byteSize:4,align:4,instance:{members:[{...r,flags:1,bitOffset:32,bitSize:0,byteSize:0,slot:0,name:"retval",structure:s},{...r,type:5,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:1,name:"0",structure:me}]}}),TI(De,{...A,type:14,signature:0xe4540eca2ad313a9n,name:"fn (*const fn (ProjectSnapshot) void) void",length:1,instance:{members:[{...r,type:5,bitSize:32,byteSize:4,structure:be}],template:ks}}),TI(Se,{...A,type:12,flags:10,signature:0xeff0bc9c5c749d57n,name:"Arg(fn ([4]u32) void)",length:1,byteSize:16,align:4,instance:{members:[{...r,flags:1,bitOffset:128,bitSize:0,byteSize:0,slot:0,name:"retval",structure:s},{...r,type:5,flags:1,bitOffset:0,bitSize:128,byteSize:16,slot:1,name:"0",structure:CA}]}}),TI(we,{...A,type:14,signature:0xb1f961dbd50d7202n,name:"fn ([4]u32) void",length:1,instance:{members:[{...r,type:5,bitSize:128,byteSize:16,structure:Se}],template:xs},static:{members:[],template:Gs}}),TI(ve,{...A,type:8,flags:204,signature:0x0a1ebb9b406dec77n,name:"*const fn ([4]u32) void",byteSize:4,align:4,instance:{members:[{...r,type:5,bitSize:32,byteSize:4,slot:0,structure:we}]}}),TI(ke,{...A,type:12,flags:14,signature:0xe678ce0c736f4e9cn,name:"Arg(fn (*const fn ([4]u32) void) void)",length:1,byteSize:4,align:4,instance:{members:[{...r,flags:1,bitOffset:32,bitSize:0,byteSize:0,slot:0,name:"retval",structure:s},{...r,type:5,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:1,name:"0",structure:ve}]}}),TI(xe,{...A,type:14,signature:0xe323dc0b01a1fb73n,name:"fn (*const fn ([4]u32) void) void",length:1,instance:{members:[{...r,type:5,bitSize:32,byteSize:4,structure:ke}],template:Us}}),TI(Ge,{...A,type:12,signature:0xb8221fe5faddda90n,name:"Arg(fn () u32)",length:0,byteSize:4,align:4,instance:{members:[{...r,type:3,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:0,name:"retval",structure:b}]}}),TI(Ue,{...A,type:14,signature:0xa711f1fddc7220c8n,name:"fn () u32",length:0,instance:{members:[{...r,type:5,bitSize:32,byteSize:4,structure:Ge}],template:Ns},static:{members:[],template:Fs}}),TI(Ne,{...A,type:8,flags:204,signature:0x95f80fcb924afccen,name:"*const fn () u32",byteSize:4,align:4,instance:{members:[{...r,type:5,bitSize:32,byteSize:4,slot:0,structure:Ue}]}}),TI(Fe,{...A,type:12,signature:0x0566d9844dbd337dn,name:"Arg(fn (u32, u32) u32)",length:2,byteSize:12,align:4,instance:{members:[{...r,type:3,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:0,name:"retval",structure:b},{...r,type:3,flags:1,bitOffset:32,bitSize:32,byteSize:4,slot:1,name:"0",structure:b},{...r,type:3,flags:1,bitOffset:64,bitSize:32,byteSize:4,slot:2,name:"1",structure:b}]}}),TI(Me,{...A,type:14,signature:0x9f755f6b39d42191n,name:"fn (u32, u32) u32",length:2,instance:{members:[{...r,type:5,bitSize:96,byteSize:12,structure:Fe}],template:Ms},static:{members:[],template:Rs}}),TI(Re,{...A,type:8,flags:204,signature:0x3903f2f9a3f32669n,name:"*const fn (u32, u32) u32",byteSize:4,align:4,instance:{members:[{...r,type:5,bitSize:32,byteSize:4,slot:0,structure:Me}]}}),TI(Le,{...A,type:12,flags:14,signature:0x6374e64b8283db5fn,name:"Arg(fn (*const fn () u32, *const fn (u32, u32) u32) void)",length:2,byteSize:8,align:4,instance:{members:[{...r,flags:1,bitOffset:64,bitSize:0,byteSize:0,slot:0,name:"retval",structure:s},{...r,type:5,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:1,name:"0",structure:Ne},{...r,type:5,flags:1,bitOffset:32,bitSize:32,byteSize:4,slot:2,name:"1",structure:Re}]}}),TI(ze,{...A,type:14,signature:0xbc13909c33e6aa17n,name:"fn (*const fn () u32, *const fn (u32, u32) u32) void",length:2,instance:{members:[{...r,type:5,bitSize:64,byteSize:8,structure:Le}],template:Ls}}),TI(Je,{...A,flags:1,signature:0xe2acd8c981a459den,name:"u16",byteSize:2,align:2,instance:{members:[{...r,type:3,bitOffset:0,bitSize:16,byteSize:2,structure:Je}]}}),TI(qe,{...A,type:12,signature:0x3713837871c72c85n,name:"Arg(fn (u16) void)",length:1,byteSize:2,align:2,instance:{members:[{...r,flags:1,bitOffset:16,bitSize:0,byteSize:0,slot:0,name:"retval",structure:s},{...r,type:3,flags:1,bitOffset:0,bitSize:16,byteSize:2,slot:1,name:"0",structure:Je}]}}),TI(Oe,{...A,type:14,signature:0xebac9d6609aac3a5n,name:"fn (u16) void",length:1,instance:{members:[{...r,type:5,bitSize:16,byteSize:2,structure:qe}],template:zs},static:{members:[],template:Js}}),TI(Ke,{...A,type:8,flags:204,signature:0x5e5302dca1272845n,name:"*const fn (u16) void",byteSize:4,align:4,instance:{members:[{...r,type:5,bitSize:32,byteSize:4,slot:0,structure:Oe}]}}),TI(Te,{...A,type:12,flags:14,signature:0xa7c561935592105dn,name:"Arg(fn (*const fn (u16) void) void)",length:1,byteSize:4,align:4,instance:{members:[{...r,flags:1,bitOffset:32,bitSize:0,byteSize:0,slot:0,name:"retval",structure:s},{...r,type:5,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:1,name:"0",structure:Ke}]}}),TI(He,{...A,type:14,signature:0x385ffb81ccffe316n,name:"fn (*const fn (u16) void) void",length:1,instance:{members:[{...r,type:5,bitSize:32,byteSize:4,structure:Te}],template:qs}}),TI(Ye,{...A,flags:9,signature:0x406b8a99e2cc9d59n,name:"type",align:1,instance:{members:[{...r,type:6,bitOffset:0,bitSize:0,byteSize:0,slot:0,structure:Ye}]}}),TI(Pe,{...A,type:5,flags:1,signature:0x25c89e63075b428an,name:"ES0",byteSize:2,align:2,instance:{members:[{...r,type:3,bitOffset:0,bitSize:16,byteSize:2,structure:Pe}]},static:{members:[{...r,type:5,flags:4,slot:0,name:"OutOfMemory",structure:Pe}],template:Os}}),TI(_e,{...A,type:4,flags:1,signature:0x6b7a39b249c617e5n,name:"ES0!void",byteSize:2,align:2,instance:{members:[{...r,bitOffset:16,bitSize:0,byteSize:0,slot:0,structure:s},{...r,type:3,flags:8,bitOffset:0,bitSize:16,byteSize:2,structure:Pe}]}}),TI(Ve,{...A,type:8,flags:76,signature:0x91728680875c3974n,name:"*SerializedCharDetails",byteSize:4,align:4,instance:{members:[{...r,type:5,bitSize:32,byteSize:4,slot:0,structure:je}]}}),TI(Xe,{...A,type:12,flags:46,signature:0xb41ed3eb5bda8946n,name:"Arg(fn (*SerializedCharDetails, []const Point) ES0!void)",length:2,byteSize:16,align:4,instance:{members:[{...r,type:5,flags:1,bitOffset:96,bitSize:16,byteSize:2,slot:0,name:"retval",structure:_e},{...r,type:5,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:1,name:"0",structure:Ve},{...r,type:5,flags:1,bitOffset:32,bitSize:64,byteSize:8,slot:2,name:"1",structure:z}]}}),TI(We,{...A,type:14,signature:0xf6bba025f3c374f7n,name:"fn (*SerializedCharDetails, []const Point) ES0!void",length:2,instance:{members:[{...r,type:5,bitSize:128,byteSize:16,structure:Xe}],template:Ts}}),TI(je,{...A,type:2,flags:14,signature:0x3ca17ac5c5c6d21fn,name:"SerializedCharDetails",byteSize:32,align:4,instance:{members:[{...r,type:5,bitOffset:0,bitSize:64,byteSize:8,slot:0,name:"points",structure:z},{...r,type:4,flags:1,bitOffset:64,bitSize:32,byteSize:4,slot:1,name:"x",structure:a},{...r,type:4,flags:1,bitOffset:96,bitSize:32,byteSize:4,slot:2,name:"y",structure:a},{...r,type:4,flags:1,bitOffset:128,bitSize:32,byteSize:4,slot:3,name:"width",structure:a},{...r,type:4,flags:1,bitOffset:160,bitSize:32,byteSize:4,slot:4,name:"height",structure:a},{...r,type:5,flags:1,bitOffset:192,bitSize:64,byteSize:8,slot:5,name:"sdf_texture_id",structure:re}],template:Hs},static:{members:[{...r,type:5,flags:18,slot:0,name:"setPaths",structure:We}],template:_s}}),TI(Ze,{...A,type:12,flags:14,signature:0x039639ff5924e894n,name:"Arg(fn ([]const u8) void)",length:1,byteSize:8,align:4,instance:{members:[{...r,flags:1,bitOffset:64,bitSize:0,byteSize:0,slot:0,name:"retval",structure:s},{...r,type:5,flags:129,bitOffset:0,bitSize:64,byteSize:8,slot:1,name:"0",structure:Ie}]}}),TI($e,{...A,type:14,signature:0x1eed8488c4c4587dn,name:"fn ([]const u8) void",length:1,instance:{members:[{...r,type:5,bitSize:64,byteSize:8,structure:Ze}],template:Xs},static:{members:[],template:Ws}}),TI(At,{...A,type:8,flags:204,signature:0xf85cb44f556ad1dbn,name:"*const fn ([]const u8) void",byteSize:4,align:4,instance:{members:[{...r,type:5,bitSize:32,byteSize:4,slot:0,structure:$e}]}}),TI(et,{...A,type:12,signature:0xfa22378c989ae19dn,name:"Arg(fn () void)",length:0,align:1,instance:{members:[{...r,flags:1,bitOffset:0,bitSize:0,byteSize:0,slot:0,name:"retval",structure:s}]}}),TI(tt,{...A,type:14,signature:0xe3c3b022a28cd076n,name:"fn () void",length:0,instance:{members:[{...r,type:5,bitSize:0,byteSize:0,structure:et}],template:js},static:{members:[],template:Zs}}),TI(it,{...A,type:8,flags:204,signature:0xd7880dadce515974n,name:"*const fn () void",byteSize:4,align:4,instance:{members:[{...r,type:5,bitSize:32,byteSize:4,slot:0,structure:tt}]}}),TI(nt,{...A,type:12,signature:0x3f075bf644453a95n,name:"Arg(fn (u32, u32) void)",length:2,byteSize:8,align:4,instance:{members:[{...r,flags:1,bitOffset:64,bitSize:0,byteSize:0,slot:0,name:"retval",structure:s},{...r,type:3,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:1,name:"0",structure:b},{...r,type:3,flags:1,bitOffset:32,bitSize:32,byteSize:4,slot:2,name:"1",structure:b}]}}),TI(rt,{...A,type:14,signature:0x4c7e047aa4ecbc8an,name:"fn (u32, u32) void",length:2,instance:{members:[{...r,type:5,bitSize:64,byteSize:8,structure:nt}],template:$s},static:{members:[],template:Aa}}),TI(st,{...A,type:8,flags:204,signature:0xd2046085e5d32a60n,name:"*const fn (u32, u32) void",byteSize:4,align:4,instance:{members:[{...r,type:5,bitSize:32,byteSize:4,slot:0,structure:rt}]}}),TI(at,{...A,flags:1,signature:0x4769a1856fb7a822n,name:"u21",byteSize:4,align:4,instance:{members:[{...r,type:3,bitOffset:0,bitSize:21,byteSize:4,structure:at}]}}),TI(ot,{...A,type:12,flags:14,signature:0xc7036b66cafc0defn,name:"Arg(fn (u32, u21) SerializedCharDetails)",length:2,byteSize:40,align:4,instance:{members:[{...r,type:5,flags:1,bitOffset:0,bitSize:256,byteSize:32,slot:0,name:"retval",structure:je},{...r,type:3,flags:1,bitOffset:256,bitSize:32,byteSize:4,slot:1,name:"0",structure:b},{...r,type:3,flags:1,bitOffset:288,bitSize:21,byteSize:4,slot:2,name:"1",structure:at}]}}),TI(gt,{...A,type:14,signature:0xa3311a6b869c91c8n,name:"fn (u32, u21) SerializedCharDetails",length:2,instance:{members:[{...r,type:5,bitSize:320,byteSize:40,structure:ot}],template:ea},static:{members:[],template:ta}}),TI(It,{...A,type:8,flags:204,signature:0xa714eeb57ca0b4c3n,name:"*const fn (u32, u21) SerializedCharDetails",byteSize:4,align:4,instance:{members:[{...r,type:5,bitSize:32,byteSize:4,slot:0,structure:gt}]}}),TI(Qt,{...A,type:12,signature:0xd9143d269aa36b34n,name:"Arg(fn (u21, u21) f32)",length:2,byteSize:12,align:4,instance:{members:[{...r,type:4,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:0,name:"retval",structure:a},{...r,type:3,flags:1,bitOffset:32,bitSize:21,byteSize:4,slot:1,name:"0",structure:at},{...r,type:3,flags:1,bitOffset:64,bitSize:21,byteSize:4,slot:2,name:"1",structure:at}]}}),TI(Ct,{...A,type:14,signature:0x88315a5b723b6bc2n,name:"fn (u21, u21) f32",length:2,instance:{members:[{...r,type:5,bitSize:96,byteSize:12,structure:Qt}],template:ia},static:{members:[],template:na}}),TI(ct,{...A,type:8,flags:204,signature:0xe06b7369ba308bfen,name:"*const fn (u21, u21) f32",byteSize:4,align:4,instance:{members:[{...r,type:5,bitSize:32,byteSize:4,slot:0,structure:Ct}]}}),TI(Bt,{...A,type:12,flags:14,signature:0x7a2693af970dccb0n,name:"Arg(fn (*const fn ([]const u8) void, *const fn () void, *const fn ([]const u8) void, *const fn (u32, u32) void, *const fn (u32, u21) SerializedCharDetails, *const fn (u21, u21) f32) void)",length:6,byteSize:24,align:4,instance:{members:[{...r,flags:1,bitOffset:192,bitSize:0,byteSize:0,slot:0,name:"retval",structure:s},{...r,type:5,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:1,name:"0",structure:At},{...r,type:5,flags:1,bitOffset:32,bitSize:32,byteSize:4,slot:2,name:"1",structure:it},{...r,type:5,flags:1,bitOffset:64,bitSize:32,byteSize:4,slot:3,name:"2",structure:At},{...r,type:5,flags:1,bitOffset:96,bitSize:32,byteSize:4,slot:4,name:"3",structure:st},{...r,type:5,flags:1,bitOffset:128,bitSize:32,byteSize:4,slot:5,name:"4",structure:It},{...r,type:5,flags:1,bitOffset:160,bitSize:32,byteSize:4,slot:6,name:"5",structure:ct}]}}),TI(lt,{...A,type:14,signature:0x150db2a684296025n,name:"fn (*const fn ([]const u8) void, *const fn () void, *const fn ([]const u8) void, *const fn (u32, u32) void, *const fn (u32, u21) SerializedCharDetails, *const fn (u21, u21) f32) void",length:6,instance:{members:[{...r,type:5,bitSize:192,byteSize:24,structure:Bt}],template:ra}}),TI(Et,{...A,type:2,flags:4096,signature:0x57847e8f0b7a3a1fn,name:"BoundingBox",byteSize:16,align:4,instance:{members:[{...r,type:4,bitOffset:0,bitSize:32,byteSize:4,slot:0,name:"min_x",structure:a},{...r,type:4,bitOffset:32,bitSize:32,byteSize:4,slot:1,name:"min_y",structure:a},{...r,type:4,bitOffset:64,bitSize:32,byteSize:4,slot:2,name:"max_x",structure:a},{...r,type:4,bitOffset:96,bitSize:32,byteSize:4,slot:3,name:"max_y",structure:a}],template:sa}}),TI(ut,{...A,type:12,flags:10,signature:0x2ac29501eb9e3e4dn,name:"Arg(fn (u32, BoundingBox, f32, f32) void)",length:4,byteSize:28,align:4,instance:{members:[{...r,flags:1,bitOffset:224,bitSize:0,byteSize:0,slot:0,name:"retval",structure:s},{...r,type:3,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:1,name:"0",structure:b},{...r,type:5,flags:1,bitOffset:32,bitSize:128,byteSize:16,slot:2,name:"1",structure:Et},{...r,type:4,flags:1,bitOffset:160,bitSize:32,byteSize:4,slot:3,name:"2",structure:a},{...r,type:4,flags:1,bitOffset:192,bitSize:32,byteSize:4,slot:4,name:"3",structure:a}]}}),TI(ft,{...A,type:14,signature:0x84892c9ede5beff4n,name:"fn (u32, BoundingBox, f32, f32) void",length:4,instance:{members:[{...r,type:5,bitSize:224,byteSize:28,structure:ut}],template:aa},static:{members:[],template:oa}}),TI(ht,{...A,type:8,flags:204,signature:0x9d64984c3b5d53can,name:"*const fn (u32, BoundingBox, f32, f32) void",byteSize:4,align:4,instance:{members:[{...r,type:5,bitSize:32,byteSize:4,slot:0,structure:ft}]}}),TI(pt,{...A,type:12,flags:14,signature:0x1900e8aa46b19079n,name:"Arg(fn (*const fn () u32, *const fn (u32, BoundingBox, f32, f32) void, *const fn () void) void)",length:3,byteSize:12,align:4,instance:{members:[{...r,flags:1,bitOffset:96,bitSize:0,byteSize:0,slot:0,name:"retval",structure:s},{...r,type:5,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:1,name:"0",structure:Ne},{...r,type:5,flags:1,bitOffset:32,bitSize:32,byteSize:4,slot:2,name:"1",structure:ht},{...r,type:5,flags:1,bitOffset:64,bitSize:32,byteSize:4,slot:3,name:"2",structure:it}]}}),TI(yt,{...A,type:14,signature:0xc940a272a0334ff0n,name:"fn (*const fn () u32, *const fn (u32, BoundingBox, f32, f32) void, *const fn () void) void",length:3,instance:{members:[{...r,type:5,bitSize:96,byteSize:12,structure:pt}],template:ga}}),TI(dt,{...A,type:7,flags:27,signature:0xb2d532eb589d702bn,name:"?[4]PointUV",byteSize:68,align:4,instance:{members:[{...r,type:5,bitOffset:0,bitSize:512,byteSize:64,slot:0,structure:NA},{...r,type:3,flags:8,bitOffset:512,bitSize:8,byteSize:1,structure:v}]}}),TI(mt,{...A,type:7,flags:31,signature:0xb3adc85f376c14a8n,name:"?SerializedProps",byteSize:28,align:4,instance:{members:[{...r,type:5,bitOffset:0,bitSize:192,byteSize:24,slot:0,structure:ne},{...r,type:3,flags:8,bitOffset:192,bitSize:8,byteSize:1,structure:v}]}}),TI(bt,{...A,type:12,flags:14,signature:0xc0771316cbba6307n,name:"Arg(fn (?[4]PointUV, ?SerializedProps) void)",length:2,byteSize:96,align:4,instance:{members:[{...r,flags:1,bitOffset:768,bitSize:0,byteSize:0,slot:0,name:"retval",structure:s},{...r,type:5,flags:1,bitOffset:0,bitSize:544,byteSize:68,slot:1,name:"0",structure:dt},{...r,type:5,flags:1,bitOffset:544,bitSize:224,byteSize:28,slot:2,name:"1",structure:mt}]}}),TI(Dt,{...A,type:14,signature:0xb8577da7b177a0cdn,name:"fn (?[4]PointUV, ?SerializedProps) void",length:2,instance:{members:[{...r,type:5,bitSize:768,byteSize:96,structure:bt}],template:Ia},static:{members:[],template:Qa}}),TI(St,{...A,type:8,flags:204,signature:0x424265d95d4363c9n,name:"*const fn (?[4]PointUV, ?SerializedProps) void",byteSize:4,align:4,instance:{members:[{...r,type:5,bitSize:32,byteSize:4,slot:0,structure:Dt}]}}),TI(wt,{...A,type:12,flags:14,signature:0xcd792c1f0a450fbdn,name:"Arg(fn (*const fn (?[4]PointUV, ?SerializedProps) void) void)",length:1,byteSize:4,align:4,instance:{members:[{...r,flags:1,bitOffset:32,bitSize:0,byteSize:0,slot:0,name:"retval",structure:s},{...r,type:5,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:1,name:"0",structure:St}]}}),TI(vt,{...A,type:14,signature:0x91df2490b3dc5915n,name:"fn (*const fn (?[4]PointUV, ?SerializedProps) void) void",length:1,instance:{members:[{...r,type:5,bitSize:32,byteSize:4,structure:wt}],template:Ca}}),TI(kt,{...A,type:5,flags:1,signature:0x25c89e63075b428an,name:"ES1",byteSize:2,align:2,instance:{members:[{...r,type:3,bitOffset:0,bitSize:16,byteSize:2,structure:kt}]},static:{members:[{...r,type:5,flags:4,slot:0,name:"OutOfMemory",structure:kt}],template:ca}}),TI(xt,{...A,type:4,flags:1,signature:0x6b7a39b249c617e5n,name:"ES1!void",byteSize:2,align:2,instance:{members:[{...r,bitOffset:16,bitSize:0,byteSize:0,slot:0,structure:s},{...r,type:3,flags:8,bitOffset:0,bitSize:16,byteSize:2,structure:kt}]}}),TI(Gt,{...A,type:12,flags:42,signature:0xbd07afc7a8b47040n,name:"Arg(fn (f32, f32, f32, f32) ES1!void)",length:4,byteSize:20,align:4,instance:{members:[{...r,type:5,flags:1,bitOffset:128,bitSize:16,byteSize:2,slot:0,name:"retval",structure:xt},{...r,type:4,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:1,name:"0",structure:a},{...r,type:4,flags:1,bitOffset:32,bitSize:32,byteSize:4,slot:2,name:"1",structure:a},{...r,type:4,flags:1,bitOffset:64,bitSize:32,byteSize:4,slot:3,name:"2",structure:a},{...r,type:4,flags:1,bitOffset:96,bitSize:32,byteSize:4,slot:4,name:"3",structure:a}]}}),TI(Ut,{...A,type:14,signature:0xaa034c726f553059n,name:"fn (f32, f32, f32, f32) ES1!void",length:4,instance:{members:[{...r,type:5,bitSize:160,byteSize:20,structure:Gt}],template:la}}),TI(Nt,{...A,type:5,flags:1,signature:0x3596180da264e267n,name:"ES2",byteSize:2,align:2,instance:{members:[{...r,type:3,bitOffset:0,bitSize:16,byteSize:2,structure:Nt}]}}),TI(Ft,{...A,type:4,flags:1,signature:0x5a95f4d8316dada4n,name:"ES2!void",byteSize:2,align:2,instance:{members:[{...r,bitOffset:16,bitSize:0,byteSize:0,slot:0,structure:s},{...r,type:3,flags:8,bitOffset:0,bitSize:16,byteSize:2,structure:Nt}]}}),TI(Mt,{...A,type:12,flags:42,signature:0xc13dfeea4a886ef9n,name:"Arg(fn (f32) ES2!void)",length:1,byteSize:8,align:4,instance:{members:[{...r,type:5,flags:1,bitOffset:32,bitSize:16,byteSize:2,slot:0,name:"retval",structure:Ft},{...r,type:4,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:1,name:"0",structure:a}]}}),TI(Rt,{...A,type:14,signature:0x6c203f8ee5c200a7n,name:"fn (f32) ES2!void",length:1,instance:{members:[{...r,type:5,bitSize:64,byteSize:8,structure:Mt}],template:Ea}}),TI(Lt,{...A,type:5,flags:1,signature:0x25c89e63075b428an,name:"ES3",byteSize:2,align:2,instance:{members:[{...r,type:3,bitOffset:0,bitSize:16,byteSize:2,structure:Lt}]},static:{members:[{...r,type:5,flags:4,slot:0,name:"OutOfMemory",structure:Lt}],template:ua}}),TI(zt,{...A,type:4,flags:1,signature:0x8ab4e53b2545b35cn,name:"ES3!u32",byteSize:8,align:4,instance:{members:[{...r,type:3,bitOffset:0,bitSize:32,byteSize:4,slot:0,structure:b},{...r,type:3,flags:8,bitOffset:32,bitSize:16,byteSize:2,structure:Lt}]}}),TI(Jt,{...A,type:12,flags:46,signature:0xf139a9580e7f1046n,name:"Arg(fn (u32, []const []const Point, [4]PointUV, SerializedProps, u32, ?u32) ES3!u32)",length:6,byteSize:120,align:4,instance:{members:[{...r,type:5,flags:1,bitOffset:0,bitSize:64,byteSize:8,slot:0,name:"retval",structure:zt},{...r,type:3,flags:1,bitOffset:64,bitSize:32,byteSize:4,slot:1,name:"0",structure:b},{...r,type:5,flags:1,bitOffset:96,bitSize:64,byteSize:8,slot:2,name:"1",structure:JA},{...r,type:5,flags:1,bitOffset:160,bitSize:512,byteSize:64,slot:3,name:"2",structure:NA},{...r,type:5,flags:1,bitOffset:672,bitSize:192,byteSize:24,slot:4,name:"3",structure:ne},{...r,type:3,flags:1,bitOffset:864,bitSize:32,byteSize:4,slot:5,name:"4",structure:b},{...r,type:5,flags:1,bitOffset:896,bitSize:64,byteSize:8,slot:6,name:"5",structure:re}]}}),TI(qt,{...A,type:14,signature:0x70b4e0d3d8494b80n,name:"fn (u32, []const []const Point, [4]PointUV, SerializedProps, u32, ?u32) ES3!u32",length:6,instance:{members:[{...r,type:5,bitSize:960,byteSize:120,structure:Jt}],template:ha}}),TI(Ot,{...A,type:5,flags:1,signature:0x25c89e63075b428an,name:"ES4",byteSize:2,align:2,instance:{members:[{...r,type:3,bitOffset:0,bitSize:16,byteSize:2,structure:Ot}]},static:{members:[{...r,type:5,flags:4,slot:0,name:"OutOfMemory",structure:Ot}],template:pa}}),TI(Kt,{...A,type:4,flags:1,signature:0x6b7a39b249c617e5n,name:"ES4!void",byteSize:2,align:2,instance:{members:[{...r,bitOffset:16,bitSize:0,byteSize:0,slot:0,structure:s},{...r,type:3,flags:8,bitOffset:0,bitSize:16,byteSize:2,structure:Ot}]}}),TI(Tt,{...A,type:12,flags:42,signature:0xd958a5eaf8a8097an,name:"Arg(fn () ES4!void)",length:0,byteSize:2,align:2,instance:{members:[{...r,type:5,flags:1,bitOffset:0,bitSize:16,byteSize:2,slot:0,name:"retval",structure:Kt}]}}),TI(Ht,{...A,type:14,signature:0x73c032fe09668bden,name:"fn () ES4!void",length:0,instance:{members:[{...r,type:5,bitSize:16,byteSize:2,structure:Tt}],template:da}}),TI(Yt,{...A,type:2,flags:14,signature:0x7067aef648c68778n,name:"ComputeTextResult",byteSize:16,align:4,instance:{members:[{...r,type:5,flags:129,bitOffset:0,bitSize:64,byteSize:8,slot:0,name:"content",structure:Ie},{...r,type:3,flags:1,bitOffset:64,bitSize:32,byteSize:4,slot:1,name:"selection_start",structure:Qe},{...r,type:3,flags:1,bitOffset:96,bitSize:32,byteSize:4,slot:2,name:"selection_end",structure:Qe}],template:ma}}),TI(Pt,{...A,type:5,flags:1,signature:0x8cd77d092cb0bccbn,name:"ES5",byteSize:2,align:2,instance:{members:[{...r,type:3,bitOffset:0,bitSize:16,byteSize:2,structure:Pt}]},static:{members:[{...r,type:5,flags:4,slot:0,name:"InvalidUtf8",structure:Pt},{...r,type:5,flags:4,slot:1,name:"OutOfMemory",structure:Pt},{...r,type:5,flags:4,slot:2,name:"Utf8CannotEncodeSurrogateHalf",structure:Pt},{...r,type:5,flags:4,slot:3,name:"CodepointTooLarge",structure:Pt}],template:Da}}),TI(_t,{...A,type:4,flags:15,signature:0xa716eccd0723a468n,name:"ES5!ComputeTextResult",byteSize:20,align:4,instance:{members:[{...r,type:5,bitOffset:0,bitSize:128,byteSize:16,slot:0,structure:Yt},{...r,type:3,flags:8,bitOffset:128,bitSize:16,byteSize:2,structure:Pt}]}}),TI(Vt,{...A,type:12,flags:46,signature:0x2cc05dd496d3bd1cn,name:"Arg(fn ([]const u8, usize, usize) ES5!ComputeTextResult)",length:3,byteSize:36,align:4,instance:{members:[{...r,type:5,flags:1,bitOffset:0,bitSize:160,byteSize:20,slot:0,name:"retval",structure:_t},{...r,type:5,flags:1,bitOffset:160,bitSize:64,byteSize:8,slot:1,name:"0",structure:Ie},{...r,type:3,flags:1,bitOffset:224,bitSize:32,byteSize:4,slot:2,name:"1",structure:Qe},{...r,type:3,flags:1,bitOffset:256,bitSize:32,byteSize:4,slot:3,name:"2",structure:Qe}]}}),TI(Xt,{...A,type:14,signature:0x7b782f2ea3332570n,name:"fn ([]const u8, usize, usize) ES5!ComputeTextResult",length:3,instance:{members:[{...r,type:5,bitSize:288,byteSize:36,structure:Vt}],template:xa}}),TI(Wt,{...A,type:5,flags:1,signature:0x8cd77d092cb0bccbn,name:"ES6",byteSize:2,align:2,instance:{members:[{...r,type:3,bitOffset:0,bitSize:16,byteSize:2,structure:Wt}]},static:{members:[{...r,type:5,flags:4,slot:0,name:"InvalidUtf8",structure:Wt},{...r,type:5,flags:4,slot:1,name:"OutOfMemory",structure:Wt},{...r,type:5,flags:4,slot:2,name:"Utf8CannotEncodeSurrogateHalf",structure:Wt},{...r,type:5,flags:4,slot:3,name:"CodepointTooLarge",structure:Wt}],template:Ga}}),TI(jt,{...A,type:4,flags:1,signature:0x8895ad6894fa630en,name:"ES6!void",byteSize:2,align:2,instance:{members:[{...r,bitOffset:16,bitSize:0,byteSize:0,slot:0,structure:s},{...r,type:3,flags:8,bitOffset:0,bitSize:16,byteSize:2,structure:Wt}]}}),TI(Zt,{...A,type:12,flags:42,signature:0xbad36bdad79408a7n,name:"Arg(fn (f32, f32) ES6!void)",length:2,byteSize:12,align:4,instance:{members:[{...r,type:5,flags:1,bitOffset:64,bitSize:16,byteSize:2,slot:0,name:"retval",structure:jt},{...r,type:4,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:1,name:"0",structure:a},{...r,type:4,flags:1,bitOffset:32,bitSize:32,byteSize:4,slot:2,name:"1",structure:a}]}}),TI($t,{...A,type:14,signature:0xb582869dd359d760n,name:"fn (f32, f32) ES6!void",length:2,instance:{members:[{...r,type:5,bitSize:96,byteSize:12,structure:Zt}],template:Ra}}),TI(Ai,{...A,type:5,flags:1,signature:0x25c89e63075b428an,name:"ES7",byteSize:2,align:2,instance:{members:[{...r,type:3,bitOffset:0,bitSize:16,byteSize:2,structure:Ai}]},static:{members:[{...r,type:5,flags:4,slot:0,name:"OutOfMemory",structure:Ai}],template:La}}),TI(ei,{...A,type:4,flags:1,signature:0x6b7a39b249c617e5n,name:"ES7!void",byteSize:2,align:2,instance:{members:[{...r,bitOffset:16,bitSize:0,byteSize:0,slot:0,structure:s},{...r,type:3,flags:8,bitOffset:0,bitSize:16,byteSize:2,structure:Ai}]}}),TI(ti,{...A,type:12,flags:42,signature:0xd958a5eaf8a8097an,name:"Arg(fn () ES7!void)",length:0,byteSize:2,align:2,instance:{members:[{...r,type:5,flags:1,bitOffset:0,bitSize:16,byteSize:2,slot:0,name:"retval",structure:ei}]}}),TI(ii,{...A,type:14,signature:0x73c032fe09668bden,name:"fn () ES7!void",length:0,instance:{members:[{...r,type:5,bitSize:16,byteSize:2,structure:ti}],template:Ja}}),TI(ni,{...A,type:5,flags:1,signature:0x8cd77d092cb0bccbn,name:"ES8",byteSize:2,align:2,instance:{members:[{...r,type:3,bitOffset:0,bitSize:16,byteSize:2,structure:ni}]},static:{members:[{...r,type:5,flags:4,slot:0,name:"InvalidUtf8",structure:ni},{...r,type:5,flags:4,slot:1,name:"OutOfMemory",structure:ni},{...r,type:5,flags:4,slot:2,name:"Utf8CannotEncodeSurrogateHalf",structure:ni},{...r,type:5,flags:4,slot:3,name:"CodepointTooLarge",structure:ni}],template:qa}}),TI(ri,{...A,type:4,flags:1,signature:0x8895ad6894fa630en,name:"ES8!void",byteSize:2,align:2,instance:{members:[{...r,bitOffset:16,bitSize:0,byteSize:0,slot:0,structure:s},{...r,type:3,flags:8,bitOffset:0,bitSize:16,byteSize:2,structure:ni}]}}),TI(si,{...A,type:12,flags:42,signature:0xbad36bdad79408a7n,name:"Arg(fn (f32, f32) ES8!void)",length:2,byteSize:12,align:4,instance:{members:[{...r,type:5,flags:1,bitOffset:64,bitSize:16,byteSize:2,slot:0,name:"retval",structure:ri},{...r,type:4,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:1,name:"0",structure:a},{...r,type:4,flags:1,bitOffset:32,bitSize:32,byteSize:4,slot:2,name:"1",structure:a}]}}),TI(ai,{...A,type:14,signature:0xb582869dd359d760n,name:"fn (f32, f32) ES8!void",length:2,instance:{members:[{...r,type:5,bitSize:96,byteSize:12,structure:si}],template:Ya}}),TI(oi,{...A,type:5,flags:1,signature:0x3596180da264e267n,name:"ES9",byteSize:2,align:2,instance:{members:[{...r,type:3,bitOffset:0,bitSize:16,byteSize:2,structure:oi}]}}),TI(gi,{...A,type:4,flags:1,signature:0x5a95f4d8316dada4n,name:"ES9!void",byteSize:2,align:2,instance:{members:[{...r,bitOffset:16,bitSize:0,byteSize:0,slot:0,structure:s},{...r,type:3,flags:8,bitOffset:0,bitSize:16,byteSize:2,structure:oi}]}}),TI(Ii,{...A,type:12,flags:42,signature:0xfd5e24a97e2dd1f5n,name:"Arg(fn () ES9!void)",length:0,byteSize:2,align:2,instance:{members:[{...r,type:5,flags:1,bitOffset:0,bitSize:16,byteSize:2,slot:0,name:"retval",structure:gi}]}}),TI(Qi,{...A,type:14,signature:0xf4f49e751fc2421an,name:"fn () ES9!void",length:0,instance:{members:[{...r,type:5,bitSize:16,byteSize:2,structure:Ii}],template:Pa}}),TI(Ci,{...A,type:5,flags:1,signature:0x25c89e63075b428an,name:"ES10",byteSize:2,align:2,instance:{members:[{...r,type:3,bitOffset:0,bitSize:16,byteSize:2,structure:Ci}]},static:{members:[{...r,type:5,flags:4,slot:0,name:"OutOfMemory",structure:Ci}],template:_a}}),TI(ci,{...A,type:4,flags:1,signature:0x6b7a39b249c617e5n,name:"ES10!void",byteSize:2,align:2,instance:{members:[{...r,bitOffset:16,bitSize:0,byteSize:0,slot:0,structure:s},{...r,type:3,flags:8,bitOffset:0,bitSize:16,byteSize:2,structure:Ci}]}}),TI(Bi,{...A,type:12,flags:42,signature:0xd958a5eaf8a8097an,name:"Arg(fn () ES10!void)",length:0,byteSize:2,align:2,instance:{members:[{...r,type:5,flags:1,bitOffset:0,bitSize:16,byteSize:2,slot:0,name:"retval",structure:ci}]}}),TI(li,{...A,type:14,signature:0x73c032fe09668bden,name:"fn () ES10!void",length:0,instance:{members:[{...r,type:5,bitSize:16,byteSize:2,structure:Bi}],template:Xa}}),TI(Ei,{...A,type:5,flags:1,signature:0x3596180da264e267n,name:"ES11",byteSize:2,align:2,instance:{members:[{...r,type:3,bitOffset:0,bitSize:16,byteSize:2,structure:Ei}]}}),TI(ui,{...A,type:4,flags:1,signature:0x5a95f4d8316dada4n,name:"ES11!void",byteSize:2,align:2,instance:{members:[{...r,bitOffset:16,bitSize:0,byteSize:0,slot:0,structure:s},{...r,type:3,flags:8,bitOffset:0,bitSize:16,byteSize:2,structure:Ei}]}}),TI(fi,{...A,type:12,flags:42,signature:0xfd5e24a97e2dd1f5n,name:"Arg(fn () ES11!void)",length:0,byteSize:2,align:2,instance:{members:[{...r,type:5,flags:1,bitOffset:0,bitSize:16,byteSize:2,slot:0,name:"retval",structure:ui}]}}),TI(hi,{...A,type:14,signature:0xf4f49e751fc2421an,name:"fn () ES11!void",length:0,instance:{members:[{...r,type:5,bitSize:16,byteSize:2,structure:fi}],template:Wa}}),TI(pi,{...A,type:5,flags:1,signature:0x25c89e63075b428an,name:"ES12",byteSize:2,align:2,instance:{members:[{...r,type:3,bitOffset:0,bitSize:16,byteSize:2,structure:pi}]},static:{members:[{...r,type:5,flags:4,slot:0,name:"OutOfMemory",structure:pi}],template:ja}}),TI(yi,{...A,type:4,flags:1,signature:0x6b7a39b249c617e5n,name:"ES12!void",byteSize:2,align:2,instance:{members:[{...r,bitOffset:16,bitSize:0,byteSize:0,slot:0,structure:s},{...r,type:3,flags:8,bitOffset:0,bitSize:16,byteSize:2,structure:pi}]}}),TI(di,{...A,type:12,flags:42,signature:0xd958a5eaf8a8097an,name:"Arg(fn () ES12!void)",length:0,byteSize:2,align:2,instance:{members:[{...r,type:5,flags:1,bitOffset:0,bitSize:16,byteSize:2,slot:0,name:"retval",structure:yi}]}}),TI(mi,{...A,type:14,signature:0x73c032fe09668bden,name:"fn () ES12!void",length:0,instance:{members:[{...r,type:5,bitSize:16,byteSize:2,structure:di}],template:$a}}),TI(bi,{...A,type:5,flags:1,signature:0x25c89e63075b428an,name:"ES13",byteSize:2,align:2,instance:{members:[{...r,type:3,bitOffset:0,bitSize:16,byteSize:2,structure:bi}]},static:{members:[{...r,type:5,flags:4,slot:0,name:"OutOfMemory",structure:bi}],template:Ao}}),TI(Di,{...A,type:4,flags:1,signature:0x6b7a39b249c617e5n,name:"ES13!void",byteSize:2,align:2,instance:{members:[{...r,bitOffset:16,bitSize:0,byteSize:0,slot:0,structure:s},{...r,type:3,flags:8,bitOffset:0,bitSize:16,byteSize:2,structure:bi}]}}),TI(Si,{...A,type:12,flags:42,signature:0xb0a03008372ef3ddn,name:"Arg(fn (bool) ES13!void)",length:1,byteSize:4,align:2,instance:{members:[{...r,type:5,flags:1,bitOffset:0,bitSize:16,byteSize:2,slot:0,name:"retval",structure:Di},{...r,type:1,flags:1,bitOffset:16,bitSize:1,byteSize:1,slot:1,name:"0",structure:FA}]}}),TI(wi,{...A,type:14,signature:0x3ffa4c889df878a3n,name:"fn (bool) ES13!void",length:1,instance:{members:[{...r,type:5,bitSize:32,byteSize:4,structure:Si}],template:to}}),TI(vi,{...A,type:5,flags:1,signature:0x25c89e63075b428an,name:"ES14",byteSize:2,align:2,instance:{members:[{...r,type:3,bitOffset:0,bitSize:16,byteSize:2,structure:vi}]},static:{members:[{...r,type:5,flags:4,slot:0,name:"OutOfMemory",structure:vi}],template:io}}),TI(ki,{...A,type:4,flags:1,signature:0x6b7a39b249c617e5n,name:"ES14!void",byteSize:2,align:2,instance:{members:[{...r,bitOffset:16,bitSize:0,byteSize:0,slot:0,structure:s},{...r,type:3,flags:8,bitOffset:0,bitSize:16,byteSize:2,structure:vi}]}}),TI(xi,{...A,type:12,flags:42,signature:0xd958a5eaf8a8097an,name:"Arg(fn () ES14!void)",length:0,byteSize:2,align:2,instance:{members:[{...r,type:5,flags:1,bitOffset:0,bitSize:16,byteSize:2,slot:0,name:"retval",structure:ki}]}}),TI(Gi,{...A,type:14,signature:0x73c032fe09668bden,name:"fn () ES14!void",length:0,instance:{members:[{...r,type:5,bitSize:16,byteSize:2,structure:xi}],template:ro}}),TI(Ui,{...A,type:5,flags:1,signature:0x8cd77d092cb0bccbn,name:"ES15",byteSize:2,align:2,instance:{members:[{...r,type:3,bitOffset:0,bitSize:16,byteSize:2,structure:Ui}]},static:{members:[{...r,type:5,flags:4,slot:0,name:"InvalidUtf8",structure:Ui},{...r,type:5,flags:4,slot:1,name:"OutOfMemory",structure:Ui},{...r,type:5,flags:4,slot:2,name:"Utf8CannotEncodeSurrogateHalf",structure:Ui},{...r,type:5,flags:4,slot:3,name:"CodepointTooLarge",structure:Ui}],template:so}}),TI(Ni,{...A,type:4,flags:1,signature:0x8895ad6894fa630en,name:"ES15!void",byteSize:2,align:2,instance:{members:[{...r,bitOffset:16,bitSize:0,byteSize:0,slot:0,structure:s},{...r,type:3,flags:8,bitOffset:0,bitSize:16,byteSize:2,structure:Ui}]}}),TI(Fi,{...A,type:12,flags:46,signature:0xbbe804fb7169dcb9n,name:"Arg(fn (ProjectSnapshot, bool) ES15!void)",length:2,byteSize:20,align:4,instance:{members:[{...r,type:5,flags:1,bitOffset:128,bitSize:16,byteSize:2,slot:0,name:"retval",structure:Ni},{...r,type:5,flags:1,bitOffset:0,bitSize:128,byteSize:16,slot:1,name:"0",structure:pe},{...r,type:1,flags:1,bitOffset:144,bitSize:1,byteSize:1,slot:2,name:"1",structure:FA}]}}),TI(Mi,{...A,type:14,signature:0xa92431c35de81a60n,name:"fn (ProjectSnapshot, bool) ES15!void",length:2,instance:{members:[{...r,type:5,bitSize:160,byteSize:20,structure:Fi}],template:Qo}}),TI(Ri,{...A,type:5,flags:1,signature:0x25c89e63075b428an,name:"ES16",byteSize:2,align:2,instance:{members:[{...r,type:3,bitOffset:0,bitSize:16,byteSize:2,structure:Ri}]},static:{members:[{...r,type:5,flags:4,slot:0,name:"OutOfMemory",structure:Ri}],template:Co}}),TI(Li,{...A,type:4,flags:1,signature:0x6b7a39b249c617e5n,name:"ES16!void",byteSize:2,align:2,instance:{members:[{...r,bitOffset:16,bitSize:0,byteSize:0,slot:0,structure:s},{...r,type:3,flags:8,bitOffset:0,bitSize:16,byteSize:2,structure:Ri}]}}),TI(zi,{...A,type:12,flags:46,signature:0xbe3f066ab03562acn,name:"Arg(fn (u32, []const []const Point, u32) ES16!void)",length:3,byteSize:20,align:4,instance:{members:[{...r,type:5,flags:1,bitOffset:128,bitSize:16,byteSize:2,slot:0,name:"retval",structure:Li},{...r,type:3,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:1,name:"0",structure:b},{...r,type:5,flags:1,bitOffset:32,bitSize:64,byteSize:8,slot:2,name:"1",structure:JA},{...r,type:3,flags:1,bitOffset:96,bitSize:32,byteSize:4,slot:3,name:"2",structure:b}]}}),TI(Ji,{...A,type:14,signature:0x61ed6595fa447245n,name:"fn (u32, []const []const Point, u32) ES16!void",length:3,instance:{members:[{...r,type:5,bitSize:160,byteSize:20,structure:zi}],template:Bo}}),TI(qi,{...A,type:5,flags:1,signature:0x25c89e63075b428an,name:"ES17",byteSize:2,align:2,instance:{members:[{...r,type:3,bitOffset:0,bitSize:16,byteSize:2,structure:qi}]},static:{members:[{...r,type:5,flags:4,slot:0,name:"OutOfMemory",structure:qi}],template:lo}}),TI(Oi,{...A,type:4,flags:1,signature:0x6b7a39b249c617e5n,name:"ES17!void",byteSize:2,align:2,instance:{members:[{...r,bitOffset:16,bitSize:0,byteSize:0,slot:0,structure:s},{...r,type:3,flags:8,bitOffset:0,bitSize:16,byteSize:2,structure:qi}]}}),TI(Ki,{...A,type:12,flags:42,signature:0xd958a5eaf8a8097an,name:"Arg(fn () ES17!void)",length:0,byteSize:2,align:2,instance:{members:[{...r,type:5,flags:1,bitOffset:0,bitSize:16,byteSize:2,slot:0,name:"retval",structure:Oi}]}}),TI(Ti,{...A,type:14,signature:0x73c032fe09668bden,name:"fn () ES17!void",length:0,instance:{members:[{...r,type:5,bitSize:16,byteSize:2,structure:Ki}],template:uo}}),TI(Hi,{...A,type:5,flags:1,signature:0x3596180da264e267n,name:"ES18",byteSize:2,align:2,instance:{members:[{...r,type:3,bitOffset:0,bitSize:16,byteSize:2,structure:Hi}]}}),TI(Yi,{...A,type:4,flags:1,signature:0x5a95f4d8316dada4n,name:"ES18!void",byteSize:2,align:2,instance:{members:[{...r,bitOffset:16,bitSize:0,byteSize:0,slot:0,structure:s},{...r,type:3,flags:8,bitOffset:0,bitSize:16,byteSize:2,structure:Hi}]}}),TI(Pi,{...A,type:6,flags:1,signature:0x9ebf0e3a55069528n,name:"Tool",byteSize:2,align:2,instance:{members:[{...r,type:3,bitOffset:0,bitSize:16,byteSize:2,structure:Pi}]},static:{members:[{...r,type:5,flags:4,slot:0,name:"None",structure:Pi},{...r,type:5,flags:4,slot:1,name:"DrawShape",structure:Pi},{...r,type:5,flags:4,slot:2,name:"EditShape",structure:Pi},{...r,type:5,flags:4,slot:3,name:"Text",structure:Pi}],template:fo}}),TI(_i,{...A,type:12,flags:42,signature:0x3a529a2ba490f572n,name:"Arg(fn (Tool) ES18!void)",length:1,byteSize:4,align:2,instance:{members:[{...r,type:5,flags:1,bitOffset:0,bitSize:16,byteSize:2,slot:0,name:"retval",structure:Yi},{...r,type:3,flags:1,bitOffset:16,bitSize:16,byteSize:2,slot:1,name:"0",structure:Pi}]}}),TI(Vi,{...A,type:14,signature:0x9309965d6da7152fn,name:"fn (Tool) ES18!void",length:1,instance:{members:[{...r,type:5,bitSize:32,byteSize:4,structure:_i}],template:bo}}),TI(Xi,{...A,type:5,flags:1,signature:0x25c89e63075b428an,name:"ES19",byteSize:2,align:2,instance:{members:[{...r,type:3,bitOffset:0,bitSize:16,byteSize:2,structure:Xi}]},static:{members:[{...r,type:5,flags:4,slot:0,name:"OutOfMemory",structure:Xi}],template:Do}}),TI(Wi,{...A,type:4,flags:1,signature:0x6b7a39b249c617e5n,name:"ES19!void",byteSize:2,align:2,instance:{members:[{...r,bitOffset:16,bitSize:0,byteSize:0,slot:0,structure:s},{...r,type:3,flags:8,bitOffset:0,bitSize:16,byteSize:2,structure:Xi}]}}),TI(ji,{...A,type:12,flags:42,signature:0x5bb01020d75668f5n,name:"Arg(fn (f32) ES19!void)",length:1,byteSize:8,align:4,instance:{members:[{...r,type:5,flags:1,bitOffset:32,bitSize:16,byteSize:2,slot:0,name:"retval",structure:Wi},{...r,type:4,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:1,name:"0",structure:a}]}}),TI(Zi,{...A,type:14,signature:0x13f401b042d16a6cn,name:"fn (f32) ES19!void",length:1,instance:{members:[{...r,type:5,bitSize:64,byteSize:8,structure:ji}],template:wo}}),TI($i,{...A,type:5,flags:1,signature:0x25c89e63075b428an,name:"ES20",byteSize:2,align:2,instance:{members:[{...r,type:3,bitOffset:0,bitSize:16,byteSize:2,structure:$i}]},static:{members:[{...r,type:5,flags:4,slot:0,name:"OutOfMemory",structure:$i}],template:vo}}),TI(An,{...A,type:4,flags:1,signature:0x6b7a39b249c617e5n,name:"ES20!void",byteSize:2,align:2,instance:{members:[{...r,bitOffset:16,bitSize:0,byteSize:0,slot:0,structure:s},{...r,type:3,flags:8,bitOffset:0,bitSize:16,byteSize:2,structure:$i}]}}),TI(en,{...A,type:12,flags:46,signature:0xdcc0a09c72fdaa47n,name:"Arg(fn (SerializedProps) ES20!void)",length:1,byteSize:28,align:4,instance:{members:[{...r,type:5,flags:1,bitOffset:192,bitSize:16,byteSize:2,slot:0,name:"retval",structure:An},{...r,type:5,flags:1,bitOffset:0,bitSize:192,byteSize:24,slot:1,name:"0",structure:ne}]}}),TI(tn,{...A,type:14,signature:0xadaf31fb68a837abn,name:"fn (SerializedProps) ES20!void",length:1,instance:{members:[{...r,type:5,bitSize:224,byteSize:28,structure:en}],template:xo}}),TI(nn,{...A,type:5,flags:1,signature:0x8cd77d092cb0bccbn,name:"ES21",byteSize:2,align:2,instance:{members:[{...r,type:3,bitOffset:0,bitSize:16,byteSize:2,structure:nn}]},static:{members:[{...r,type:5,flags:4,slot:0,name:"InvalidUtf8",structure:nn},{...r,type:5,flags:4,slot:1,name:"OutOfMemory",structure:nn},{...r,type:5,flags:4,slot:2,name:"Utf8CannotEncodeSurrogateHalf",structure:nn},{...r,type:5,flags:4,slot:3,name:"CodepointTooLarge",structure:nn}],template:Go}}),TI(rn,{...A,type:4,flags:1,signature:0x8895ad6894fa630en,name:"ES21!void",byteSize:2,align:2,instance:{members:[{...r,bitOffset:16,bitSize:0,byteSize:0,slot:0,structure:s},{...r,type:3,flags:8,bitOffset:0,bitSize:16,byteSize:2,structure:nn}]}}),TI(sn,{...A,type:12,flags:42,signature:0x179a80c1ce9c51f4n,name:"Arg(fn ([4]PointUV) ES21!void)",length:1,byteSize:68,align:4,instance:{members:[{...r,type:5,flags:1,bitOffset:512,bitSize:16,byteSize:2,slot:0,name:"retval",structure:rn},{...r,type:5,flags:1,bitOffset:0,bitSize:512,byteSize:64,slot:1,name:"0",structure:NA}]}}),TI(an,{...A,type:14,signature:0xb54f99f684e1a0f6n,name:"fn ([4]PointUV) ES21!void",length:1,instance:{members:[{...r,type:5,bitSize:544,byteSize:68,structure:sn}],template:Ro}}),TI(on,{...A,type:2,flags:4096,signature:0x239ab4f327f6ac1bn,name:"index",align:1,static:{members:[{...r,type:5,flags:2,slot:0,name:"connectWebGpuPrograms",structure:UA},{...r,type:5,flags:2,slot:1,name:"connectOnAssetUpdateCallback",structure:De},{...r,type:5,flags:2,slot:2,name:"connectOnAssetSelectionCallback",structure:xe},{...r,type:5,flags:2,slot:3,name:"connectCreateSdfTexture",structure:ze},{...r,type:5,flags:2,slot:4,name:"onUpdateToolCallback",structure:He},{...r,type:5,flags:2,slot:5,name:"SerializedCharDetails",structure:Ye},{...r,type:5,flags:2,slot:6,name:"TextCallback",structure:Ye},{...r,type:5,flags:2,slot:7,name:"connectTyping",structure:lt},{...r,type:5,flags:2,slot:9,name:"connectCacheCallbacks",structure:yt},{...r,type:5,flags:2,slot:10,name:"connectSelectedAssetUpdates",structure:vt},{...r,type:5,flags:2,slot:11,name:"ASSET_ID_MIN",structure:b},{...r,type:5,flags:2,slot:12,name:"initState",structure:Ut},{...r,type:5,flags:2,slot:13,name:"updateRenderScale",structure:Rt},{...r,type:5,flags:2,slot:14,name:"addShape",structure:qt},{...r,type:5,flags:2,slot:15,name:"removeAsset",structure:Ht},{...r,type:5,flags:2,slot:16,name:"onUpdatePick",structure:we},{...r,type:5,flags:2,slot:17,name:"updateTextContent",structure:Xt},{...r,type:5,flags:2,slot:18,name:"onPointerDown",structure:$t},{...r,type:5,flags:2,slot:19,name:"onPointerUp",structure:ii},{...r,type:5,flags:2,slot:20,name:"onPointerMove",structure:ai},{...r,type:5,flags:2,slot:21,name:"onPointerDoubleClick",structure:Qi},{...r,type:5,flags:2,slot:22,name:"onPointerLeave",structure:li},{...r,type:5,flags:2,slot:23,name:"commitChanges",structure:hi},{...r,type:5,flags:2,slot:24,name:"computeSdfs",structure:mi},{...r,type:5,flags:2,slot:25,name:"updateCache",structure:tt},{...r,type:5,flags:2,slot:26,name:"setCaretPosition",structure:rt},{...r,type:5,flags:2,slot:27,name:"renderDraw",structure:wi},{...r,type:5,flags:2,slot:28,name:"renderPick",structure:Gi},{...r,type:5,flags:2,slot:29,name:"setSnapshot",structure:Mi},{...r,type:5,flags:2,slot:30,name:"deinitState",structure:tt},{...r,type:5,flags:2,slot:31,name:"importUiElement",structure:Ji},{...r,type:5,flags:2,slot:32,name:"generateUiElementsSdf",structure:Ti},{...r,type:5,flags:2,slot:33,name:"setTool",structure:Vi},{...r,type:5,flags:2,slot:34,name:"tick",structure:Zi},{...r,type:5,flags:2,slot:35,name:"setSelectedAssetProps",structure:tn},{...r,type:5,flags:2,slot:36,name:"setSelectedAssetBounds",structure:an},{...r,type:5,flags:2,slot:37,name:"toggleSharedTextEffects",structure:tt}],template:Lo}});const HI=[s,a,o,g,I,Q,C,c,B,l,E,u,f,h,p,y,d,m,b,D,S,w,v,k,x,G,U,N,F,M,R,L,z,J,q,O,K,T,H,Y,P,_,V,X,W,j,Z,$,AA,eA,tA,iA,nA,rA,sA,aA,oA,gA,IA,QA,CA,cA,BA,lA,EA,uA,fA,hA,pA,yA,dA,mA,bA,DA,SA,wA,vA,kA,xA,GA,UA,NA,FA,MA,RA,LA,zA,JA,qA,OA,KA,TA,HA,YA,PA,_A,VA,XA,WA,jA,ZA,$A,Ae,ee,te,ie,ne,re,se,ae,oe,ge,Ie,Qe,Ce,ce,Be,le,Ee,ue,fe,he,pe,ye,de,me,be,De,Se,we,ve,ke,xe,Ge,Ue,Ne,Fe,Me,Re,Le,ze,Je,qe,Oe,Ke,Te,He,Ye,Pe,_e,Ve,Xe,We,je,Ze,$e,At,et,tt,it,nt,rt,st,at,ot,gt,It,Qt,Ct,ct,Bt,lt,Et,ut,ft,ht,pt,yt,dt,mt,bt,Dt,St,wt,vt,kt,xt,Gt,Ut,Nt,Ft,Mt,Rt,Lt,zt,Jt,qt,Ot,Kt,Tt,Ht,Yt,Pt,_t,Vt,Xt,Wt,jt,Zt,$t,Ai,ei,ti,ii,ni,ri,si,ai,oi,gi,Ii,Qi,Ci,ci,Bi,li,Ei,ui,fi,hi,pi,yi,di,mi,bi,Di,Si,wi,vi,ki,xi,Gi,Ui,Ni,Fi,Mi,Ri,Li,zi,Ji,qi,Oi,Ki,Ti,Hi,Yi,Pi,_i,Vi,Xi,Wi,ji,Zi,$i,An,en,tn,nn,rn,sn,an,on],YI=on,PI={runtimeSafety:!1,littleEndian:!0,libc:!1},_I=(0,n.M)();_I.recreateStructures(HI,PI);const VI=(async()=>{const A=atob("AGFzbQEAAAAB/wI2YAZ/f39/f38Bf2AEf39/fwF/YAV/f39/fwBgAX8AYAAAYAN/f38AYAJ/fwF9YAABf2ACf38AYAJ/fwF/YAR/f39/AGAEf399fQBgBn9/f399fQBgBn9/f39/fwBgBH19fX0Bf2ABfQF/YAh/f39/f39/fwBgAn19AX9gAX8Bf2ADf39/AX9gAX8BfWAEf39+fwBgA39/fQBgBX9/fX1/AGAFf319fX8AYAV9fX19fQF9YAl/f39/f39/f38AYAd/f39/f31/AGAFf319fX0AYAN/fX0AYAJ9fQF9YAR/f399AGAGf39/fX99AGAFf39/fX0AYAh/f319fX19fwBgBH9/fX8AYAF9AX1gAn1/AX9gA39/fwF9YAN+f38BfmACfn8Bf2ABfgF/YAd/f39/fX1/AGAFf39/f38Bf2AEf35+fwBgBX9+fn5+AGAGf35+fn5/AGAEfn5+fwF+YAJ9fwF9YAJ/fABgAnx/AXxgAXwBf2ABfAF9YAN8fHwBfAKmAQcDZW52Bm1lbW9yeQIABQNlbnYZX19pbmRpcmVjdF9mdW5jdGlvbl90YWJsZQFwAOUDA2Vudg1fZGlzcGxheVBhbmljAAgWd2FzaV9zbmFwc2hvdF9wcmV2aWV3MQhmZF93cml0ZQABA2Vudg1faGFuZGxlSnNDYWxsAAEDZW52EF9hbGxvY2F0ZUpzVGh1bmsACQNlbnYMX2ZyZWVKc1RodW5rAAkDswWxBQQHEwoFDhIIDwYWAwgXBggTBQUFBQkJBQoICAIFBQUTGBkFGgkDBQkSCAUIBRIFCAkIAgUFEgkJCQkDBQUCBQkJEAcHCAcDBwMNDQ0ICRMFEgoFCAUIAgUFBQIFBQkJBgUCBwobCBEIBwMRCBwdHhIHBwUHBQgeHwITAgUFICEKIggSCCMFBQEFHwULCBYiEwgCBQUHAgkEBQESBw8SEgMFBRQkAwkJAwgDDQUDBAoTJRISBBMAAAIDBQQjAQQDBAkJCgkJCgkJCgkKCQoJCgkJCgkJCgkJCQkKCQkJCgkKCQkJCQkJChIJBQkKCAUICAgICAgICAgICAgICAgDCAMDAwMDAwMDAwMDAwMDAwQDBAQEBAQEBAQEBAQEBAQECAUICAgICAgICAgICAgICAgTCQkKCQoJCgkKCQoJCgkKCgoJCgkJCQkJCQMD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IQQgA0HMAGpBCGohBSADQRhqQQhqIQYgASgCACECAkACQANAIARBf2oiBEUNASACQQRqKgIAIQcgAioCACEIIAYgAkEIakEs/AoAACADIAc4AhwgAyAIOAIYIAUgBhA0IAMgBzgCUCADIAg4AkwgAkE0aiECIANBBGogA0HMAGoQNSIJQf//A3FFDQALIAAgCTsBGAwBCyADQfQAaiADQQRqEDYCQCADLwF8IgJFDQAgACACOwEYDAELIABBADsBGCAAIAMpAnQ3AgAgACABKQIUNwIIIAAgASoCIDgCFCAAQRBqIAFBHGooAgA2AgALIANBgAFqJAAL+QECAX8CfiMAQTBrIgIkAAJAAkACQAJAIAEtACgOAwECAAELIABBAjoAHCAAIAEpAgAiAzcCACACQQhqQQhqIAFBCGopAgAiBDcDACAAQQhqIAQ3AgAgAEEQaiACQQhqQRBqKQMANwIAIABBGGogAkEIakEYaigCADYCACACQQI6AAQgAiADNwMIDAILIABBADoAHCAAIAEpAhA3AhAgACABKQIINwIIIAAgASkCADcCACACQQA6ACgMAQsgAEEBOgAcIAAgASkCFDcCFCAAIAEpAgw3AgwgACABKQIENwIEIAAgASoCADgCACACQQE6ACwLIAJBMGokAAuKAgEHfyMAQSBrIgIkAAJAAkACQAJAIAAoAggiAyAAKAIEIgRLDQAgAyEFA0BBfyAFQQF2IAVqQQFqIgYgBiAFSRsiBSAETQ0ACyACQQhqIABBDGoiBCAAKAIAIgcgAyAFEDcCQCACKAIIIgZFDQAgAigCDCEFDAILIAJBFGogBCAFEDggAi8BHCIFDQMgAigCGCEFIAIoAhQhBgJAIAAoAgQiCEUNACAGIAAoAgAgCEEobPwKAAALIAQgByADEDkMAQsgACgCACEGDAELIAAgBjYCACAAIAU2AgggACgCBCEECyAAIARBAWo2AgQgBiAEQShsaiABQSj8CgAAQQAhBQsgAkEgaiQAIAULiAIDAX8BfgJ/IwBBMGsiAiQAIAIgASkCDCIDNwMQIAJBCGogAkEQaiABKAIAIAEoAgggASgCBBA3AkACQCACKAIIIgRFDQAgAigCDCEFIAEgAzcCDCABQQA2AgggAUKq1arVCjcCACAAQQA7AQggACAENgIAIAAgBTYCBAwBCyACQRxq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fgJAIAJBAnQiA0UNACAAKQIAIgSnIAFBqtWq1XogAhsgA0ECQQAgBEIgiKcoAgwRAgALC44DAQJ/IwBBEGsiAyQAAkACQCABQf///wBxIgRB/wBLDQBBACgC1J8QIQQMAQsCQCAEQf8PSw0AQQAoAtifECEEDAELAkAgAUH///8AcSIEQf//A0sNAEEAKALcnxAhBAwBC0EAKALgnxBBCiAEQYCAxABJGyEECwJAAkAgBEH//wNxRQ0ADAELAkACQAJAAkACQAJAIARBEHYiBEEHcUF/ag4EAAECAwALIAIgAToAAAwECyACIAFBP3FBgAFyOgABIAIgAUEGdkHAAXI6AAAMAwsgAUGA8P8AcUGAsANHDQFBCSEEQQAhAQwDCyACIAFBP3FBgAFyOgADIAIgAUEGdkE/cUGAAXI6AAIgAiABQQx2QT9xQYABcjoAASACIAFBgIDwAHFBEnZB8AFyOgAADAELIAIgAUE/cUGAAXI6AAIgAiABQQx2QeABcjoAACACIAFBBnZBP3FBgAFyOgABCyADIARBB3EiAToADkEAIQQLIABBADoAAyAAIAE6AAIgACAEOwEAIANBEGokAAuUAQMBfwF+AX8jAEEQayIFJAAgBSABKQIAIgY3AwACQAJAIAQNACAFIAIgAxBhQQAhByACIQEMAQtBACEBAkACQCADRQ0AQQAhB0EADQJBACEBIAanIAIgA0EAIARBACAGQiCIpygCCBEAACIDDQELQQAhBwwBCyADIQEgBCEHCyAAIAE2AgAgACAHNgIEIAVBEGokAAuGAQEBfyMAQTBrIgMkACADIAEpAgA3AwggA0EQaiADQQhqIAIQvgECQAJAIAMvARQiAUUNACADIAE7ASAgA0EYaiECDAELIANBADsBLCADIAI2AiggAyADKAIQNgIkIANBJGohAgsgACACKQIANwIAIABBCGogAkEIaigCADYCACADQTBqJAALKAEBfgJAIAJFDQAgACkCACIDpyABIAJBAEEAIANCIIinKAIMEQIACwucAgEHfyMAQSBrIgIkAAJAAkACQAJAIAAoAggiAyAAKAIEIgRLDQAgAyEFA0BBfyAFQQF2IAVqQRBqIgYgBiAFSRsiBSAETQ0ACyACQQhqIABBDGoiBCAAKAIAIgcgAyAFEFsCQCACKAIIIgZFDQAgAigCDCEFDAIL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kwEgEyECIABB+BhqIABBmBdqQQIQlAEiAUH//wNxRQ0ADAQLCyAAQaAZaiAAQfgYahCVASAALwGoGSIBDQIgAEHYGGogACgCoBkgACgCpBkQlAEiAUH//wNxRQ0ADAILCyAAQewYaiAAQdgYahCVASAALwH0GCIBRQ0BCyAAQbAGahAqDAULIAAoAuwYIAAoAvAYQQAoAtDYECgCIBEIAAsgAEGwBmoQKkEALwG41xAhAgtBACEBIAJB//8DcQ0CEEoiAkUNAiAAQcAGaiACEHogAEHUF2ohEyAAQcAXaiERIABBrBdqIRYgAEGAB2ohAUHkfiECIABB4BhqIRcCQANAIAJFDQEgFyACQaCdEGooAgA2AgAgACACQZidEGopAgA3A9gYIABB+BhqIABBwAZqIABB2BhqEIsBIABCADcCvBYgACAAKQP4GDcDoBkgACAAKQOAGTcDkBkgACAAKALYGCIYNgK4FiAAQQA2AsQWIABBmBdqIABBoBlqIABBkBlqQQAqArzXECIZQwAAIEGUIBlDAADwQUMAACBBIBhBCUYblCIZkiAZQwAAAD+UEIMBIAEgAEGYF2ogFiARIABBuBZqEJoBIAFBzABqIABBmBdqIBEgEyAAQbgWahCaASACQQxqIQIgAUGYAWohAQwACwtBACEBIABBgAdqQRpBACgC0NgQKAIgEQgADAILIBAhAgwACwsgAEGwGWokACABC8sBBAJ/AX4DfQV+IwBBEGsiBSQAIAVBCGoiBiAEQQhqKQIANwMAIAQpAgAhByABKgIQIQggAioCECEJIAMqAhAhCiABKQIAIQsgASkCCCEMIAIpAgAhDSACKQIIIQ4gAykCACEPIAAgAykCCDcCKCAAIA83AiAgACAONwIYIAAgDTcCECAAIAw3AgggACALNwIAIAAgCjgCSCAAIAk4AkQgACAIOAJAIAUgBzcDACAAIAUpAwA3AjAgAEE4aiAGKQMANwIAIAVBEGokAAuiBAEKfyMAQcAEayICJABBACAAKgIAOALw1hBBACAAKgIEOAL01hBBAEIANwOQ2BBBAEEAOgC02BBBAEEANgKY2BAQnAEgAkGUA2ohAyACQQRqQegAaiEEIAJBBGpBDGohBSACQShqIQYgAkHQAWohByACQYABakEMaiEIIAAoAgwhCSAAKAIIIQACQANAAkACQAJA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QCAAKAIkIgZFDQAgACgCKCEHIABBMGogAkE8aiACQRhqKAIAIAJBHGooAgAQDkMAAIA/QcibEBASIABB8ABqIABBMGpBwAD8CgAAIABB8ABqIAQQEyEIIABB8ABqIAMQEyEJIAAgCUEAKgKI2BAgCCAJEKoFlUMAAIA/ELMFIgqUOAK0ASAAIAggCpQ4ArABIABBuAFqIABBsAFqEBQgAkGcAWogACkDuAEiCzcCACAGIAcgC6e+jvwBIAtCIIinvo78ASACQYABaigCACABEQIACyAFQX9qIQUgAkGoAWohAgwACwsgAEEIahAqIABBwAFqJAAgBgv4BQEGfyMAQaAJayIBJABBACECQQAgADgCiNkQQQAgAPwBNgKU2RBBAEEAKALU2BBBAWo2AtTYEAJAAkAQSiIDDQBBgJkQIQRBhJkQIQVBqJoQIQZBrJoQIQMMAQsgAUEIaiADQawB/AoAACABQQE6ALQBIAFBCGpBrAFqIQMgAUGwAWohBiABQQxqIQUgAUEIaiEECwJAQQAtAITZEEUNAEEAIQJBACoCiNkQQQAqAoDZEJNDAADIQl5FDQACQAJAAkACQCADLQAARQ0AIAFCADcDwAEgAUGwmhA2AtABIAFBACkD+L8QNwO4ASAGLQAAIQIgASABQbgBajYCzAECQAJAAkACQCACQQNxDgMAAgEAC0EAKAL42BAhAiABQdQBaiAFQcAA/AoAACABQQE6AJQCIAFB1AFqQYSYECACEQgADAULIAFB6AVqIARBnAH8CgAAIAFBhAdqIARBnAH8CgAAIAFBoAhqIAFB+AdqIAFBzAFqEDMgAS8BuAgiAg0BQQAoAvjYECECIAFBvAhqIAFB6AVqQRBqQcAA/AoAACABQYAJakEIaiABQaAIakEIaikCADcDACABQYAJakEQaiABQaAIakEQaikCADcDACABQQE6APwIIAFBAToAmAkgASABKQKgCDcDgAkgAUG8CGogAUGACWogAhEIAAwECyABQZgCaiAEQagB/AoAACABQcADaiAEQagB/AoAACABQegEaiABQdgDaiABQcwBahAzIAEvAYAFIgJFDQILIAFBuAFqECoMBAtBoJgQQeSYEEEAKAL42BARCAAMAgtBACgC+NgQIQIgAUGEBWogAUHUAmpBwAD8CgAAIAFByAVqQQhqIAFB6ARqQQhq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gICAgMAEIQUMBQtCgICAgNAEIQUMBAtCgICAgPAAIQUMAwtCgICAgJAFIQUMAgtCgICAgIAFIQUMAQtCgICAgKAGIQULIAAgBTcCACAEQRBqJAALJQBBAkEDQQAgAEH/AXEiAEERSRsgAEEJSRtBAnRBwMAQaigCAAsdACABIAEoAgAgASgCBCABKAIIIAAREwA7AQxBAAucAQIBfwF+IwBBMGsiAyQAIAMgASkCADcDGAJAAkACQAJAQQENAEEIIQEMAQsgA0EgaiADQRhqIAIQFiADKQMgIgRCIIinIgFB//8DcUUNAQsgAyABOwEIIAMhAQwBCyADIAI2AhAgAyAEPgIMIANBADsBFCADQQxqIQELIAAgASkCADcCACAAQQhqIAFBCGooAgA2AgAgA0EwaiQACw4AIAEgABEHADYCAEEAC9sBAQF/IwBBEGsiBCQAAkACQCACDQBBQCECA0ACQCACDQBB6K4QIQIMAwsCQCACQaTcEGooAgANACACQaTcEGogAzYCACAEQQA7AQQgBCACQaSmEGooAgA2AgAgBCECDAMLIAJBBGohAgwACwtBQCECA0ACQCACDQBB8K4QIQIMAgsCQCACQaSmEGooAgAgA0cNACACQaTcEGoiAigCACEDIAJBADYCACAEQQA7AQwgBCADNgIIIARBCGohAgwCCyACQQRqIQIMAAsLIAAgAikCADcCACAEQRBqJAALEAAgACABQQAoApzZEBDyAQtdAQF/IwBBEGsiAyQAIAMgATYCDCADIAA2AggCQAJAAkACQCACIANBCGpBCBC1Ag4EAAMBAgALIANBEGokAA8LQe+REEEiEBEAC0HUkRBBGhARAAtBuZEQQRoQEQALEAAgACABQQAoAqDZEBDyAQsQACAAIAFBACgCpNkQEPIBCxAAIAAgAUEAKAKo2RAQ8gELEAAgACABQQAoAqzZEBDyAQsQACAAIAFBACgCsNkQEPIBCxAAIAAgAUEAKAK02RAQ8gELEAAgACABQQAoArjZEBDyAQsQACAAIAFBACgCvNkQEPIBCxAAIAAgAUEAKALA2RAQ8gELEAAgACABQQAoAsTZEBDyAQsQACAAIAFBACgCyNkQEPIBCxAAIAAgAUEAKALM2RAQ8gELEAAgACABQQAoAtDZEBDyAQsQACAAIAFBACgC1NkQEPIBCxAAIAAgAUEAKALY2RAQ8gELUAEBfyMAQSBrIgEkACABQQhqQQhqIABBCGopAgA3AwAgASAAKQIANwMIIAFBADYCGCABQQAoAtzZECIANgIcIAFBCGogABCDAiABQSBqJAALZgEBfyMAQRBrIgIkACACQQhqIABBCGopAgA3AwAgAiAAKQIANwMAAkACQAJAAkAgASACQRAQtQIOBAADAQIACyACQRBqJAAPC0HvkRBBIhARAAtB1JEQQRoQEQALQbmREEEaEBEAC1ABAX8jAEEgayIBJAAgAUEIakEIaiAAQQhqKQIANwMAIAEgACkCADcDCCABQQA2AhggAUEAKALg2RAiADYCHCABQQhqIAAQgwIgAUEgaiQAC1ABAX8jAEEgayIBJAAgAUEIakEIaiAAQQhqKQIANwMAIAEgACkCADcDCCABQQA2AhggAUEAKALk2RAiADYCHCABQQhqIAAQgwIgAUEgaiQAC1ABAX8jAEEgayIBJAAgAUEIakEIaiAAQQhqKQIANwMAIAEgACkCADcDCCABQQA2AhggAUEAKALo2RAiADYCHCABQQhqIAAQgwIgAUEgaiQAC1ABAX8jAEEgayIBJAAgAUEIakEIaiAAQQhqKQIANwMAIAEgACkCADcDCCABQQA2AhggAUEAKALs2RAiADYCHCABQQhqIAAQgwIgAUEgaiQAC1ABAX8jAEEgayIBJAAgAUEIakEIaiAAQQhqKQIANwMAIAEgACkCADcDCCABQQA2AhggAUEAKALw2RAiADYCHCABQQhqIAAQgwIgAUEgaiQAC1ABAX8jAEEgayIBJAAgAUEIakEIaiAAQQhqKQIANwMAIAEgACkCADcDCCABQQA2AhggAUEAKAL02RAiADYCHCABQQhqIAAQgwIgAUEgaiQAC1ABAX8jAEEgayIBJAAgAUEIakEIaiAAQQhqKQIANwMAIAEgACkCADcDCCABQQA2AhggAUEAKAL42RAiADYCHCABQQhqIAAQgwIgAUEgaiQAC1ABAX8jAEEgayIBJAAgAUEIakEIaiAAQQhqKQIANwMAIAEgACkCADcDCCABQQA2AhggAUEAKAL82RAiADYCHCABQQhqIAAQgwIgAUEgaiQAC1ABAX8jAEEgayIBJAAgAUEIakEIaiAAQQhqKQIANwMAIAEgACkCADcDCCABQQA2AhggAUEAKAKA2hAiADYCHCABQQhqIAAQgwIgAUEgaiQAC1ABAX8jAEEgayIBJAAgAUEIakEIaiAAQQhqKQIANwMAIAEgACkCADcDCCABQQA2AhggAUEAKAKE2hAiADYCHCABQQhqIAAQgwIgAUEgaiQAC1ABAX8jAEEgayIBJAAgAUEIakEIaiAAQQhqKQIANwMAIAEgACkCADcDCCABQQA2AhggAUEAKAKI2hAiADYCHCABQQhqIAAQgwIgAUEgaiQAC1ABAX8jAEEgayIBJAAgAUEIakEIaiAAQQhqKQIANwMAIAEgACkCADcDCCABQQA2AhggAUEAKAKM2hAiADYCHCABQQhqIAAQgwIgAUEgaiQAC1ABAX8jAEEgayIBJAAgAUEIakEIaiAAQQhqKQIANwMAIAEgACkCADcDCCABQQA2AhggAUEAKAKQ2hAiADYCHCABQQhqIAAQgwIgAUEgaiQAC1ABAX8jAEEgayIBJAAgAUEIakEIaiAAQQhqKQIANwMAIAEgACkCADcDCCABQQA2AhggAUEAKAKU2hAiADYCHCABQQhqIAAQgwIgAUEgaiQAC1ABAX8jAEEgayIBJAAgAUEIakEIaiAAQQhqKQIANwMAIAEgACkCADcDCCABQQA2AhggAUEAKAKY2hAiADYCHCABQQhqIAAQgwIgAUEgaiQACwwAQQAoApzaEBCUAgs+AAJAAkACQAJAIABBqtWq1XpBABC1Ag4EAAMBAgALDwtB75EQQSIQEQALQdSREEEaEBEAC0G5kRBBGhARAAsMAEEAKAKg2hAQlAILDABBACgCpNoQEJQCCwwAQQAoAqjaEBCUAgsMAEEAKAKs2hAQlAILDABBACgCsNoQEJQCCwwAQQAoArTaEBCUAgsMAEEAKAK42hAQlAILDABBACgCvNoQEJQCCwwAQQAoAsDaEBCUAgsMAEEAKALE2hAQlAILDABBACgCyNoQEJQCCwwAQQAoAszaEBCUAgsMAEEAKALQ2hAQlAILDABBACgC1NoQEJQCCwwAQQAoAtjaEBCUAgsQACAAIAFBACgC3NoQEKUCC10BAX8jAEEQayIDJAAgAyABNgIMIAMgADYCCAJAAkACQAJAIAIgA0EIakEIELUCDgQAAwECAAsgA0EQaiQADwtB75EQQSIQEQALQdSREEEaEBEAC0G5kRBBGhARAAsQACAAIAFBACgC4NoQEKUCCxAAIAAgAUEAKALk2hAQpQILEAAgACABQQAoAujaEBClAgsQACAAIAFBACgC7NoQEKUCCxAAIAAgAUEAKALw2hAQpQILEAAgACABQQAoAvTaEBClAgsQACAAIAFBACgC+NoQEKUCCxAAIAAgAUEAKAL82hAQpQILEAAgACABQQAoAoDbEBClAgsQACAAIAFBACgChNsQEKUCCxAAIAAgAUEAKAKI2xAQpQILEAAgACABQQAoAozbEBClAgsQACAAIAFBACgCkNsQEKUCCxAAIAAgAUEAKAKU2xAQpQILEAAgACABQQAoApjbEBClAgtKAQJ/IwBBEGsiAyQAQQAhBAJAQQAtAKTdEA0AIANBfzYCCCADIANBCGo2AgwgA0EIaiEECyAAIAEgAiAEEAIhBCADQRBqJAAgBAt+AQF/IwBBMGsiAiQAIAJBEGogAUEQaikCADcDACACQQhqIAFBCGopAgA3AwAgAkEgaiABQSBqKQIANwMAIAJBKGogAUEoaikCADcDACACIAEpAgA3AwAgAiABKQIYNwMYIAEgAiACQRhqIAARCQBBAXE6ADAgAkEwaiQAQQALGAAgASgCACABKAIEIAEoAgggABEFAEEAC9sBAQF/IwBBEGsiBCQAAkACQCACDQBBQCECA0ACQCACDQBB6K4QIQIMAwsCQCACQejfEGooAgANACACQejfEGogAzYCACAEQQA7AQQgBCACQaiqEGooAgA2AgAgBCECDAMLIAJBBGohAgwACwtBQCECA0ACQCACDQBB8K4QIQIMAgsCQCACQaiqEGooAgAgA0cNACACQejfEGoiAigCACEDIAJBADYCACAEQQA7AQwgBCADNgIIIARBCGohAgwCCyACQQRqIQIMAAsLIAAgAikCADcCACAEQRBqJAALEwAgASgCACABKAIEIAARCABBAAvbAQEBfyMAQRBrIgQkAAJAAkAgAg0AQUAhAgNAAkAgAg0AQeiuECECDAMLAkAgAkGo4BBqKAIADQAgAkGo4BBqIAM2AgAgBEEAOwEEIAQgAkHoqhBqKAIANgIAIAQhAgwDCyACQQRqIQIMAAsLQUAhAgNAAkAgAg0AQfCuECECDAILAkAgAkHoqhBqKAIAIANHDQAgAkGo4BBqIgIoAgAhAyACQQA2AgAgBEEAOwEMIAQgAzYCCCAEQQhqIQIMAgsgAkEEaiECDAALCyAAIAIpAgA3AgAgBEEQaiQACyIAIAEoAgAgASgCBCABKAIIIAEoAgwgASgCECAAEQIAQQAL2wEBAX8jAEEQayIEJAACQAJAIAINAEFAIQIDQAJAIAINAEHorhAhAgwDCwJAIAJB6OAQaigCAA0AIAJB6OAQaiADNgIAIARBADsBBCAEIAJBqKsQaigCADYCACAEIQIMAwsgAkEEaiECDAALC0FAIQIDQAJAIAINAEHwrhAhAgwCCwJAIAJBqKsQaigCACADRw0AIAJB6OAQaiICKAIAIQMgAkEANgIAIARBADsBDCAEIAM2AgggBEEIaiECDAILIAJBBGohAgwACwsgACACKQIANwIAIARBEGokAAsdACABKAIAIAEoAgQgASgCCCABKAIMIAARCgBBAAvbAQEBfyMAQRBrIgQkAAJAAkAgAg0AQUAhAgNAAkAgAg0AQeiuECECDAMLAkAgAkGo4RBqKAIADQAgAkGo4RBqIAM2AgAgBEEAOwEEIAQgAkHoqxBqKAIANgIAIAQhAgwDCyACQQRqIQIMAAsLQUAhAgNAAkAgAg0AQfCuECECDAILAkAgAkHoqxBqKAIAIANHDQAgAkGo4RBqIgIoAgAhAyACQQA2AgAgBEEAOwEMIAQgAzYCCCAEQQhqIQIMAgsgAkEEaiECDAALCyAAIAIpAgA3AgAgBEEQaiQAC2cBBH8jAEEgayICJAAgAkEEakEUaiABQRRqKQIANwIAIAIgASgCACIDNgIEIAIgASgCBCIENgIIIAIgASgCCCIFNgIMIAIgASkCDDcCECADIAQgBSACQRBqIAARCgAgAkEgaiQAQQAL2wEBAX8jAEEQayIEJAACQAJAIAINAEFAIQIDQAJAIAINAEHorhAhAgwDCwJAIAJB6OEQaigCAA0AIAJB6OEQaiADNgIAIARBADsBBCAEIAJBqKwQaigCADYCACAEIQIMAwsgAkEEaiECDAALC0FAIQIDQAJAIAINAEHwrhAhAgwCCwJAIAJBqKwQaigCACADRw0AIAJB6OEQaiICKAIAIQMgAkEANgIAIARBADsBDCAEIAM2AgggBEEIaiECDAILIAJBBGohAgwACwsgACACKQIANwIAIARBEGokAAsnACABKAIAIAEoAgQgASgCCCABKAIMIAEqAhAgASoCFCAAEQwAQQAL2wEBAX8jAEEQayIEJAACQAJAIAINAEFAIQIDQAJAIAINAEHorhAhAgwDCwJAIAJBqOIQaigCAA0AIAJBqOIQaiADNgIAIARBADsBBCAEIAJB6KwQaigCADYCACAEIQIMAwsgAkEEaiECDAALC0FAIQIDQAJAIAINAEHwrhAhAgwCCwJAIAJB6KwQaigCACADRw0AIAJBqOIQaiICKAIAIQMgAkEANgIAIARBADsBDCAEIAM2AgggBEEIaiECDAILIAJBBGohAgwACwsgACACKQIANwIAIARBEGokAAtdAQR/IwBBkANrIgIkACACIAEoAvQCIgM2AgQgAiABKALwAiIENgIAIAJBEGoiBSABQfAC/AoAACACIAEoAvgCIgE2AoADIAQgAyAFIAEgABEKACACQZADaiQAQQAL2wEBAX8jAEEQayIEJAACQAJAIAINAEFAIQIDQAJAIAINAEHorhAhAgwDCwJAIAJB6OIQaigCAA0AIAJB6OIQaiADNgIAIARBADsBBCAEIAJBqK0QaigCADYCACAEIQIMAwsgAkEEaiECDAALC0FAIQIDQAJAIAINAEHwrhAhAgwCCwJAIAJBqK0QaigCACADRw0AIAJB6OIQaiICKAIAIQMgAkEANgIAIARBADsBDCAEIAM2AgggBEEIaiECDAILIAJBBGohAgwACwsgACACKQIANwIAIARBEGokAAvbAQEBfyMAQRBrIgQkAAJAAkAgAg0AQUAhAgNAAkAgAg0AQeiuECECDAMLAkAgAkGo4xBqKAIADQAgAkGo4xBqIAM2AgAgBEEAOwEEIAQgAkHorRBqKAIANgIAIAQhAgwDCyACQQRqIQIMAAsLQUAhAgNAAkAgAg0AQfCuECECDAILAkAgAkHorRBqKAIAIANHDQAgAkGo4xBqIgIoAgAhAyACQQA2AgAgBEEAOwEMIAQgAzYCCCAEQQhqIQIMAgsgAkEEaiECDAALCyAAIAIpAgA3AgAgBEEQaiQAC9sBAQF/IwBBEGsiBCQAAkACQCACDQBBQCECA0ACQCACDQBB6K4QIQIMAwsCQCACQejjEGooAgANACACQejjEGogAzYCACAEQQA7AQQgBCACQaiuEGooAgA2AgAgBCECDAMLIAJBBGohAgwACwtBQCECA0ACQCACDQBB8K4QIQIMAgsCQCACQaiuEGooAgAgA0cNACACQejjEGoiAigCACEDIAJBADYCACAEQQA7AQwgBCADNgIIIARBCGohAgwCCyACQQRqIQIMAAsLIAAgAikCADcCACAEQRBqJAALVAEDfyMAQSBrIgIkACACIAEoAgQiAzYCECACIAEoAgAiBDYCDCACIAEpAgg3AhQgAiABKAIQIgE2AhwgBCADIAJBFGogASAAEQoAIAJBIGokAEEAC9sBAQF/IwBBEGsiBCQAAkACQCACDQBBQCECA0ACQCACDQBB6K4QIQIMAwsCQCACQajkEGooAgANACACQajkEGogAzYCACAEQQA7AQQgBCACQeiuEGooAgA2AgAgBCECDAMLIAJBBGohAgwACwtBQCECA0ACQCACDQBB8K4QIQIMAgsCQCACQeiuEGooAgAgA0cNACACQajkEGoiAigCACEDIAJBADYCACAEQQA7AQwgBCADNgIIIARBCGohAgwCCyACQQRqIQIMAAsLIAAgAikCADcCACAEQRBqJAALSAEBfyMAQSBrIgIkACACIAEpAgg3AwggAiABKQIQNwMQIAJBGGogAkEIaiACQRBqIAARBQAgASACKQMYNwIAIAJBIGokAEEACzsBAX8jAEEQayICJAAgAiABKQIENwMAIAIgASkCDDcDCCABIAIgAkEIaiAAEQYAOAIAIAJBEGokAEEACy8BAX8jAEEQayICJAAgAiABKQIENwMIIAEgAkEIaiAAERQAOAIAIAJBEGokAEEAC2sBAX8jAEEwayICJAAgAkEQaiABQRBqKQIANwMAIAJBIGogAUEgaikCADcDACACIAEpAgg3AwggAiABKQIYNwMYIAJBKGogAkEIaiACQQhqQRBqIAARBQAgASACKQMoNwIAIAJBMGokAEEAC1sBAX8jAEEgayICJAAgAkEIaiABQQxqKQIANwMAIAJBGGogAUEcaikCADcDACACIAEpAgQ3AwAgAiABKQIUNwMQIAEgAiACQRBqIAARBgA4AgAgAkEgaiQAQQALSQEBfyMAQSBrIgIkACACQRBqIAFBEGopAgA3AwAgAiABKQIINwMIIAJBGGogAkEIaiAAEQgAIAEgAikDGDcCACACQSBqJABBAAtQAQF/IwBBIGsiASQAIAFBCGpBCGogAEEIaikCADcDACABIAApAgA3AwggAUEANgIYIAFBACgCpNsQIgA2AhwgAUEIaiAAEIMCIAFBIGokAAtQAQF/IwBBIGsiASQAIAFBCGpBCGogAEEIaikCADcDACABIAApAgA3AwggAUEANgIYIAFBACgCqNsQIgA2AhwgAUEIaiAAEIMCIAFBIGokAAtQAQF/IwBBIGsiASQAIAFBCGpBCGogAEEIaikCADcDACABIAApAgA3AwggAUEANgIYIAFBACgCrNsQIgA2AhwgAUEIaiAAEIMCIAFBIGokAAtQAQF/IwBBIGsiASQAIAFBCGpBCGogAEEIaikCADcDACABIAApAgA3AwggAUEANgIYIAFBACgCsNsQIgA2AhwgAUEIaiAAEIMCIAFBIGokAAtQAQF/IwBBIGsiASQAIAFBCGpBCGogAEEIaikCADcDACABIAApAgA3AwggAUEANgIYIAFBACgCtNsQIgA2AhwgAUEIaiAAEIMCIAFBIGokAAtQAQF/IwBBIGsiASQAIAFBCGpBCGogAEEIaikCADcDACABIAApAgA3AwggAUEANgIYIAFBACgCuNsQIgA2AhwgAUEIaiAAEIMCIAFBIGokAAtQAQF/IwBBIGsiASQAIAFBCGpBCGogAEEIaikCADcDACABIAApAgA3AwggAUEANgIYIAFBACgCvNsQIgA2AhwgAUEIaiAAEIMCIAFBIGokAAtQAQF/IwBBIGsiASQAIAFBCGpBCGogAEEIaikCADcDACABIAApAgA3AwggAUEANgIYIAFBACgCwNsQIgA2AhwgAUEIaiAAEIMCIAFBIGokAAtQAQF/IwBBIGsiASQAIAFBCGpBCGogAEEIaikCADcDACABIAApAgA3AwggAUEANgIYIAFBACgCxNsQIgA2AhwgAUEIaiAAEIMCIAFBIGokAAtQAQF/IwBBIGsiASQAIAFBCGpBCGogAEEIaikCADcDACABIAApAgA3AwggAUEANgIYIAFBACgCyNsQIgA2AhwgAUEIaiAAEIMCIAFBIGokAAtQAQF/IwBBIGsiASQAIAFBCGpBCGogAEEIaikCADcDACABIAApAgA3AwggAUEANgIYIAFBACgCzNsQIgA2AhwgAUEIaiAAEIMCIAFBIGokAAtQAQF/IwBBIGsiASQAIAFBCGpBCGogAEEIaikCADcDACABIAApAgA3AwggAUEANgIYIAFBACgC0NsQIgA2AhwgAUEIaiAAEIMCIAFBIGokAAtQAQF/IwBBIGsiASQAIAFBCGpBCGogAEEIaikCADcDACABIAApAgA3AwggAUEANgIYIAFBACgC1NsQIgA2AhwgAUEIaiAAEIMCIAFBIGokAAtQAQF/IwBBIGsiASQAIAFBCGpBCGogAEEIaikCADcDACABIAApAgA3AwggAUEANgIYIAFBACgC2NsQIgA2AhwgAUEIaiAAEIMCIAFBIGokAAtQAQF/IwBBIGsiASQAIAFBCGpBCGogAEEIaikCADcDACABIAApAgA3AwggAUEANgIYIAFBACgC3NsQIgA2AhwgAUEIaiAAEIMCIAFBIGokAAtQAQF/IwBBIGsiASQAIAFBCGpBCGogAEEIaikCADcDACABIAApAgA3AwggAUEANgIYIAFBACgC4NsQIgA2AhwgAUEIaiAAEIMCIAFBIGokAAsMAEEAKALk2xAQ4AILWAEBfyMAQRBrIgEkAAJAAkACQAJAIAAgAUEMakEEELUCDgQAAwECAAsgASgCDCEAIAFBEGokACAADwtB75EQQSIQEQALQdSREEEaEBEAC0G5kRBBGhARAAsMAEEAKALo2xAQ4AILDABBACgC7NsQEOACCwwAQQAoAvDbEBDgAgsMAEEAKAL02xAQ4AILDABBACgC+NsQEOACCwwAQQAoAvzbEBDgAgsMAEEAKAKA3BAQ4AILDABBACgChNwQEOACCwwAQQAoAojcEBDgAgsMAEEAKAKM3BAQ4AILDABBACgCkNwQEOACCwwAQQAoApTcEBDgAgsMAEEAKAKY3BAQ4AILDABBACgCnNwQEOACCwwAQQAoAqDcEBDgAgsQACAAIAFBACgCpNwQEPECC2YBAX8jAEEQayIDJAAgAyABNgIMIAMgADYCCAJAAkACQAJAIAIgA0EEakEMELUCDgQAAwECAAsgAygCBCEBIANBEGokACABDwtB75EQQSIQEQALQdSREEEaEBEAC0G5kRBBGhARAAsQACAAIAFBACgCqNwQEPECCxAAIAAgAUEAKAKs3BAQ8QILEAAgACABQQAoArDcEBDxAgsQACAAIAFBACgCtNwQEPECCxAAIAAgAUEAKAK43BAQ8QILEAAgACABQQAoArzcEBDxAgsQACAAIAFBACgCwNwQEPECCxAAIAAgAUEAKALE3BAQ8QILEAAgACABQQAoAsjcEBDxAgsQACAAIAFBACgCzNwQEPECCxAAIAAgAUEAKALQ3BAQ8QILEAAgACABQQAoAtTcEBDxAgsQACAAIAFBACgC2NwQEPECCxAAIAAgAUEAKALc3BAQ8QILEAAgACABQQAoAuDcEBDxAgsOACAAQQAoAuTcEBCCAwtWAQF/IwBBEGsiAiQAIAIgADsBDgJAAkACQAJAIAEgAkEOakECELUCDgQAAwECAAsgAkEQaiQADwtB75EQQSIQEQALQdSREEEaEBEAC0G5kRBBGhARAAsOACAAQQAoAujcEBCCAwsOACAAQQAoAuzcEBCCAwsOACAAQQAoAvDcEBCCAwsOACAAQQAoAvTcEBCCAwsOACAAQQAoAvjcEBCCAwsOACAAQQAoAvzcEBCCAwsOACAAQQAoAoDdEBCCAwsOACAAQQAoAoTdEBCCAwsOACAAQQAoAojdEBCCAwsOACAAQQAoAozdEBCCAwsOACAAQQAoApDdEBCCAwsOACAAQQAoApTdEBCCAwsOACAAQQAoApjdEBCCAwsOACAAQQAoApzdEBCCAwsOACAAQQAoAqDdEBCCAwteAQF/IwBBIGsiAyQAIAMgASACQQAoAqjdEBCTAyAAQRhqIANBGGopAgA3AgAgAEEQaiADQRBqKQIANwIAIABBCGogA0EIaikCADcCACAAIAMpAgA3AgAgA0EgaiQAC7MBAQF/IwBBMGsiBCQAIAQgAjsBLCAEQS5qIAJBgID8AHFBEHY6AAAgBCABNgIoAkACQAJAAkAgAyAEQQhqQSgQtQIOBAADAQIACyAAIAQpAgg3AgAgAEEYaiAEQQhqQRhqKQIANwIAIABBEGogBEEIakEQaikCADcCACAAQQhqIARBCGpBCGopAgA3AgAgBEEwaiQADwtB75EQQSIQEQALQdSREEEaEBEAC0G5kRBBGhARAAteAQF/IwBBIGsiAyQAIAMgASACQQAoAqzdEBCTAyAAQRhqIANBGGopAgA3AgAgAEEQaiADQRBqKQIANwIAIABBCGogA0EIaikCADcCACAAIAMpAgA3AgAgA0EgaiQAC14BAX8jAEEgayIDJAAgAyABIAJBACgCsN0QEJMDIABBGGogA0EYaikCADcCACAAQRBqIANBEGopAgA3AgAgAEEIaiADQQhqKQIANwIAIAAgAykCADcCACADQSBqJAALXgEBfyMAQSBrIgMkACADIAEgAkEAKAK03RAQkwMgAEEYaiADQRhqKQIANwIAIABBEGogA0EQaikCADcCACAAQQhqIANBCGopAgA3AgAgACADKQIANwIAIANBIGokAAteAQF/IwBBIGsiAyQAIAMgASACQQAoArjdEBCTAyAAQRhqIANBGGopAgA3AgAgAEEQaiADQRBqKQIANwIAIABBCGogA0EIaikCADcCACAAIAMpAgA3AgAgA0EgaiQAC14BAX8jAEEgayIDJAAgAyABIAJBACgCvN0QEJMDIABBGGogA0EYaikCADcCACAAQRBqIANBEGopAgA3AgAgAEEIaiADQQhqKQIANwIAIAAgAykCADcCACADQSBqJAALXgEBfyMAQSBrIgMkACADIAEgAkEAKALA3RAQkwMgAEEYaiADQRhqKQIANwIAIABBEGogA0EQaikCADcCACAAQQhqIANBCGopAgA3AgAgACADKQIANwIAIANBIGokAAteAQF/IwBBIGsiAyQAIAMgASACQQAoAsTdEBCTAyAAQRhqIANBGGopAgA3AgAgAEEQaiADQRBqKQIANwIAIABBCGogA0EIaikCADcCACAAIAMpAgA3AgAgA0EgaiQAC14BAX8jAEEgayIDJAAgAyABIAJBACgCyN0QEJMDIABBGGogA0EYaikCADcCACAAQRBqIANBEGopAgA3AgAgAEEIaiADQQhqKQIANwIAIAAgAykCADcCACADQSBqJAALXgEBfyMAQSBrIgMkACADIAEgAkEAKALM3RAQkwMgAEEYaiADQRhqKQIANwIAIABBEGogA0EQaikCADcCACAAQQhqIANBCGopAgA3AgAgACADKQIANwIAIANBIGokAAteAQF/IwBBIGsiAyQAIAMgASACQQAoAtDdEBCTAyAAQRhqIANBGGopAgA3AgAgAEEQaiADQRBqKQIANwIAIABBCGogA0EIaikCADcCACAAIAMpAgA3AgAgA0EgaiQAC14BAX8jAEEgayIDJAAgAyABIAJBACgC1N0QEJMDIABBGGogA0EYaikCADcCACAAQRBqIANBEGopAgA3AgAgAEEIaiADQQhqKQIANwIAIAAgAykCADcCACADQSBqJAALXgEBfyMAQSBrIgMkACADIAEgAkEAKALY3RAQkwMgAEEYaiADQRhqKQIANwIAIABBEGogA0EQaikCADcCACAAQQhqIANBCGopAgA3AgAgACADKQIANwIAIANBIGokAAteAQF/IwBBIGsiAyQAIAMgASACQQAoAtzdEBCTAyAAQRhqIANBGGopAgA3AgAgAEEQaiADQRBqKQIANwIAIABBCGogA0EIaikCADcCACAAIAMpAgA3AgAgA0EgaiQAC14BAX8jAEEgayIDJAAgAyABIAJBACgC4N0QEJMDIABBGGogA0EYaikCADcCACAAQRBqIANBEGopAgA3AgAgAEEIaiADQQhqKQIANwIAIAAgAykCADcCACADQSBqJAALXgEBfyMAQSBrIgMkACADIAEgAkEAKALk3RAQkwMgAEEYaiADQRhqKQIANwIAIABBEGogA0EQaikCADcCACAAQQhqIANBCGopAgA3AgAgACADKQIANwIAIANBIGokAAsQACAAIAFBACgC6N0QEKQDC44BAgF/AX0jAEEQayIDJAAgAyABOwEMIANBDmogAUGAgPwAcUEQdjoAACADIAA7AQggA0EKaiAAQYCA/ABxQRB2OgAAAkACQAJAAkAgAiADQQRqQQwQtQIOBAADAQIACyADKgIEIQQgA0EQaiQAIAQPC0HvkRBBIhARAAtB1JEQQRoQEQALQbmREEEaEBEACxAAIAAgAUEAKALs3RAQpAMLEAAgACABQQAoAvDdEBCkAwsQACAAIAFBACgC9N0QEKQDCxAAIAAgAUEAKAL43RAQpAMLEAAgACABQQAoAvzdEBCkAwsQACAAIAFBACgCgN4QEKQDCxAAIAAgAUEAKAKE3hAQpAMLEAAgACABQQAoAojeEBCkAwsQACAAIAFBACgCjN4QEKQDCxAAIAAgAUEAKAKQ3hAQpAMLEAAgACABQQAoApTeEBCkAwsQACAAIAFBACgCmN4QEKQDCxAAIAAgAUEAKAKc3hAQpAMLEAAgACABQQAoAqDeEBCkAwsQACAAIAFBACgCpN4QEKQDC2gBAX8jAEEwayIEJAAgBEEYaiABQQhqKQIANwIAIAQgAzgCJCAEIAI4AiAgBCAANgIMIAQgASkCADcCECAEQQA2AiggBEEAKAKo3hAiATYCLCAAIARBEGogAiADIAEQtQMgBEEwaiQAC34BAX8jAEEgayIFJAAgBUEQaiABQQhqKQIANwIAIAUgAzgCHCAFIAI4AhggBSAANgIEIAUgASkCADcCCAJAAkACQAJAIAQgBUEEakEcELUCDgQAAwECAAsgBUEgaiQADwtB75EQQSIQEQALQdSREEEaEBEAC0G5kRBBGhARAAtoAQF/IwBBMGsiBCQAIARBGGogAUEIaikCADcCACAEIAM4AiQgBCACOAIgIAQgADYCDCAEIAEpAgA3AhAgBEEANgIoIARBACgCrN4QIgE2AiwgACAEQRBqIAIgAyABELUDIARBMGokAAtoAQF/IwBBMGsiBCQAIARBGGogAUEIaikCADcCACAEIAM4AiQgBCACOAIgIAQgADYCDCAEIAEpAgA3AhAgBEEANgIoIARBACgCsN4QIgE2AiwgACAEQRBqIAIgAyABELUDIARBMGokAAtoAQF/IwBBMGsiBCQAIARBGGogAUEIaikCADcCACAEIAM4AiQgBCACOAIgIAQgADYCDCAEIAEpAgA3AhAgBEEANgIoIARBACgCtN4QIgE2AiwgACAEQRBqIAIgAyABELUDIARBMGokAAtoAQF/IwBBMGsiBCQAIARBGGogAUEIaikCADcCACAEIAM4AiQgBCACOAIgIAQgADYCDCAEIAEpAgA3AhAgBEEANgIoIARBACgCuN4QIgE2AiwgACAEQRBqIAIgAyABELUDIARBMGokAAtoAQF/IwBBMGsiBCQAIARBGGogAUEIaikCADcCACAEIAM4AiQgBCACOAIgIAQgADYCDCAEIAEpAgA3AhAgBEEANgIoIARBACgCvN4QIgE2AiwgACAEQRBqIAIgAyABELUDIARBMGokAAtoAQF/IwBBMGsiBCQAIARBGGogAUEIaikCADcCACAEIAM4AiQgBCACOAIgIAQgADYCDCAEIAEpAgA3AhAgBEEANgIoIARBACgCwN4QIgE2AiwgACAEQRBqIAIgAyABELUDIARBMGokAAtoAQF/IwBBMGsiBCQAIARBGGogAUEIaikCADcCACAEIAM4AiQgBCACOAIgIAQgADYCDCAEIAEpAgA3AhAgBEEANgIoIARBACgCxN4QIgE2AiwgACAEQRBqIAIgAyABELUDIARBMGokAAtoAQF/IwBBMGsiBCQAIARBGGogAUEIaikCADcCACAEIAM4AiQgBCACOAIgIAQgADYCDCAEIAEpAgA3AhAgBEEANgIoIARBACgCyN4QIgE2AiwgACAEQRBqIAIgAyABELUDIARBMGokAAtoAQF/IwBBMGsiBCQAIARBGGogAUEIaikCADcCACAEIAM4AiQgBCACOAIgIAQgADYCDCAEIAEpAgA3AhAgBEEANgIoIARBACgCzN4QIgE2AiwgACAEQRBqIAIgAyABELUDIARBMGokAAtoAQF/IwBBMGsiBCQAIARBGGogAUEIaikCADcCACAEIAM4AiQgBCACOAIgIAQgADYCDCAEIAEpAgA3AhAgBEEANgIoIARBACgC0N4QIgE2AiwgACAEQRBqIAIgAyABELUDIARBMGokAAtoAQF/IwBBMGsiBCQAIARBGGogAUEIaikCADcCACAEIAM4AiQgBCACOAIgIAQgADYCDCAEIAEpAgA3AhAgBEEANgIoIARBACgC1N4QIgE2AiwgACAEQRBqIAIgAyABELUDIARBMGokAAtoAQF/IwBBMGsiBCQAIARBGGogAUEIaikCADcCACAEIAM4AiQgBCACOAIgIAQgADYCDCAEIAEpAgA3AhAgBEEANgIoIARBACgC2N4QIgE2AiwgACAEQRBqIAIgAyABELUDIARBMGokAAtoAQF/IwBBMGsiBCQAIARBGGogAUEIaikCADcCACAEIAM4AiQgBCACOAIgIAQgADYCDCAEIAEpAgA3AhAgBEEANgIoIARBACgC3N4QIgE2AiwgACAEQRBqIAIgAyABELUDIARBMGokAAtoAQF/IwBBMGsiBCQAIARBGGogAUEIaikCADcCACAEIAM4AiQgBCACOAIgIAQgADYCDCAEIAEpAgA3AhAgBEEANgIoIARBACgC4N4QIgE2AiwgACAEQRBqIAIgAyABELUDIARBMGokAAtoAQF/IwBBMGsiBCQAIARBGGogAUEIaikCADcCACAEIAM4AiQgBCACOAIgIAQgADYCDCAEIAEpAgA3AhAgBEEANgIoIARBACgC5N4QIgE2AiwgACAEQRBqIAIgAyABELUDIARBMGokAAuJAQEBfyMAQfAAayICJAAgAkEIaiAAQcQA/AoAACACQeQAaiABQRhqKAIANgIAIAJB3ABqIAFBEGopAgA3AgAgAkHUAGogAUEIaikCADcCACACIAEpAgA3AkwgAkEANgJoIAJBACgC6N4QIgE2AmwgAkEIaiACQQhqQcQAaiABEMYDIAJB8ABqJAALlwEBAX8jAEHgAGsiAyQAIAMgAEHEAPwKAAAgA0HcAGogAUEYaigCADYCACADQdQAaiABQRBqKQIANwIAIANBzABqIAFBCGopAgA3AgAgAyABKQIANwJEAkACQAJAAkAgAiADQeAAELUCDgQAAwECAAsgA0HgAGokAA8LQe+REEEiEBEAC0HUkRBBGhARAAtBuZEQQRoQEQALiQEBAX8jAEHwAGsiAiQAIAJBCGogAEHEAPwKAAAgAkHkAGogAUEYaigCADYCACACQdwAaiABQRBqKQIANwIAIAJB1ABqIAFBCGopAgA3AgAgAiABKQIANwJMIAJBADYCaCACQQAoAuzeECIBNgJsIAJBCGogAkEIakHEAGogARDGAyACQfAAaiQAC4kBAQF/IwBB8ABrIgIkACACQQhqIABBxAD8CgAAIAJB5ABqIAFBGGooAgA2AgAgAkHcAGogAUEQaikCADcCACACQdQAaiABQQhqKQIANwIAIAIgASkCADcCTCACQQA2AmggAkEAKALw3hAiATYCbCACQQhqIAJBCGpBxABqIAEQxgMgAkHwAGokAAuJAQEBfyMAQfAAayICJAAgAkEIaiAAQcQA/AoAACACQeQAaiABQRhqKAIANgIAIAJB3ABqIAFBEGopAgA3AgAgAkHUAGogAUEIaikCADcCACACIAEpAgA3AkwgAkEANgJoIAJBACgC9N4QIgE2AmwgAkEIaiACQQhqQcQAaiABEMYDIAJB8ABqJAALiQEBAX8jAEHwAGsiAiQAIAJBCGogAEHEAPwKAAAgAkHkAGogAUEYaigCADYCACACQdwAaiABQRBqKQIANwIAIAJB1ABqIAFBCGopAgA3AgAgAiABKQIANwJMIAJBADYCaCACQQAoAvjeECIBNgJsIAJBCGogAkEIakHEAGogARDGAyACQfAAaiQAC4kBAQF/IwBB8ABrIgIkACACQQhqIABBxAD8CgAAIAJB5ABqIAFBGGooAgA2AgAgAkHcAGogAUEQaikCADcCACACQdQAaiABQQhqKQIANwIAIAIgASkCADcCTCACQQA2AmggAkEAKAL83hAiATYCbCACQQhqIAJBCGpBxABqIAEQxgMgAkHwAGokAAuJAQEBfyMAQfAAayICJAAgAkEIaiAAQcQA/AoAACACQeQAaiABQRhqKAIANgIAIAJB3ABqIAFBEGopAgA3AgAgAkHUAGogAUEIaikCADcCACACIAEpAgA3AkwgAkEANgJoIAJBACgCgN8QIgE2AmwgAkEIaiACQQhqQcQAaiABEMYDIAJB8ABqJAALiQEBAX8jAEHwAGsiAiQAIAJBCGogAEHEAPwKAAAgAkHkAGogAUEYaigCADYCACACQdwAaiABQRBqKQIANwIAIAJB1ABqIAFBCGopAgA3AgAgAiABKQIANwJMIAJBADYCaCACQQAoAoTfECIBNgJsIAJBCGogAkEIakHEAGogARDGAyACQfAAaiQAC4kBAQF/IwBB8ABrIgIkACACQQhqIABBxAD8CgAAIAJB5ABqIAFBGGooAgA2AgAgAkHcAGogAUEQaikCADcCACACQdQAaiABQQhqKQIANwIAIAIgASkCADcCTCACQQA2AmggAkEAKAKI3xAiATYCbCACQQhqIAJBCGpBxABqIAEQxgMgAkHwAGokAAuJAQEBfyMAQfAAayICJAAgAkEIaiAAQcQA/AoAACACQeQAaiABQRhqKAIANgIAIAJB3ABqIAFBEGopAgA3AgAgAkHUAGogAUEIaikCADcCACACIAEpAgA3AkwgAkEANgJoIAJBACgCjN8QIgE2AmwgAkEIaiACQQhqQcQAaiABEMYDIAJB8ABqJAALiQEBAX8jAEHwAGsiAiQAIAJBCGogAEHEAPwKAAAgAkHkAGogAUEYaigCADYCACACQdwAaiABQRBqKQIANwIAIAJB1ABqIAFBCGopAgA3AgAgAiABKQIANwJMIAJBADYCaCACQQAoApDfECIBNgJsIAJBCGogAkEIakHEAGogARDGAyACQfAAaiQAC4kBAQF/IwBB8ABrIgIkACACQQhqIABBxAD8CgAAIAJB5ABqIAFBGGooAgA2AgAgAkHcAGogAUEQaikCADcCACACQdQAaiABQQhqKQIANwIAIAIgASkCADcCTCACQQA2AmggAkEAKAKU3xAiATYCbCACQQhqIAJBCGpBxABqIAEQxgMgAkHwAGokAAuJAQEBfyMAQfAAayICJAAgAkEIaiAAQcQA/AoAACACQeQAaiABQRhqKAIANgIAIAJB3ABqIAFBEGopAgA3AgAgAkHUAGogAUEIaikCADcCACACIAEpAgA3AkwgAkEANgJoIAJBACgCmN8QIgE2Amwg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KAK44BAQgAQLFgAgACABIAIgAyAEQQAoArzgEBCABAsWACAAIAEgAiADIARBACgCwOAQEIAECxYAIAAgASACIAMgBEEAKALE4BAQgAQLFgAgACABIAIgAyAEQQAoAsjgEBCABAsWACAAIAEgAiADIARBACgCzOAQEIAECxYAIAAgASACIAMgBEEAKALQ4BAQgAQLFgAgACABIAIgAyAEQQAoAtTgEBCABAsWACAAIAEgAiADIARBACgC2OAQEIAECxYAIAAgASACIAMgBEEAKALc4BAQgAQLFgAgACABIAIgAyAEQQAoAuDgEBCABAsWACAAIAEgAiADIARBACgC5OAQEIAECxQAIAAgASACIANBACgC6OAQEJEEC2gBAX8jAEEQayIFJAAgBSADNgIMIAUgAjYCCCAFIAE2AgQgBSAANgIAAkACQAJAAkAgBCAFQRAQtQIOBAADAQIACyAFQRBqJAAPC0HvkRBBIhARAAtB1JEQQRoQEQALQbmREEEaEBEACxQAIAAgASACIANBACgC7OAQEJEECxQAIAAgASACIANBACgC8OAQEJEECxQAIAAgASACIANBACgC9OAQEJEECxQAIAAgASACIANBACgC+OAQEJEECxQAIAAgASACIANBACgC/OAQEJEECxQAIAAgASACIANBACgCgOEQEJEECxQAIAAgASACIANBACgChOEQEJEECxQAIAAgASACIANBACgCiOEQEJEECxQAIAAgASACIANBACgCjOEQEJEECxQAIAAgASACIANBACgCkOEQEJEECxQAIAAgASACIANBACgClOEQEJEECxQAIAAgASACIANBACgCmOEQEJEECxQAIAAgASACIANBACgCnOEQEJEECxQAIAAgASACIANBACgCoOEQEJEECxQAIAAgASACIANBACgCpOEQEJEEC2gBAX8jAEEwayIEJAAgBEEgaiADQQhqKQIANwIAIAQgAjYCFCAEIAE2AhAgBCAANgIMIAQgAykCADcCGCAEQQA2AiggBEEAKAKo4RAiAzYCLCAAIAEgAiAEQRhqIAMQogQgBEEwaiQAC34BAX8jAEEgayIFJAAgBUEYaiADQQhqKQIANwIAIAUgAjYCDCAFIAE2AgggBSAANgIEIAUgAykCADcCEAJAAkACQAJAIAQgBUEEakEcELUCDgQAAwECAAsgBUEgaiQADwtB75EQQSIQEQALQdSREEEaEBEAC0G5kRBBGhARAAtoAQF/IwBBMGsiBCQAIARBIGogA0EIaikCADcCACAEIAI2AhQgBCABNgIQIAQgADYCDCAEIAMpAgA3AhggBEEANgIoIARBACgCrOEQIgM2AiwgACABIAIgBEEYaiADEKIEIARBMGokAAtoAQF/IwBBMGsiBCQAIARBIGogA0EIaikCADcCACAEIAI2AhQgBCABNgIQIAQgADYCDCAEIAMpAgA3AhggBEEANgIoIARBACgCsOEQIgM2AiwgACABIAIgBEEYaiADEKIEIARBMGokAAtoAQF/IwBBMGsiBCQAIARBIGogA0EIaikCADcCACAEIAI2AhQgBCABNgIQIAQgADYCDCAEIAMpAgA3AhggBEEANgIoIARBACgCtOEQIgM2AiwgACABIAIgBEEYaiADEKIEIARBMGokAAtoAQF/IwBBMGsiBCQAIARBIGogA0EIaikCADcCACAEIAI2AhQgBCABNgIQIAQgADYCDCAEIAMpAgA3AhggBEEANgIoIARBACgCuOEQIgM2AiwgACABIAIgBEEYaiADEKIEIARBMGokAAtoAQF/IwBBMGsiBCQAIARBIGogA0EIaikCADcCACAEIAI2AhQgBCABNgIQIAQgADYCDCAEIAMpAgA3AhggBEEANgIoIARBACgCvOEQIgM2AiwgACABIAIgBEEYaiADEKIEIARBMGokAAtoAQF/IwBBMGsiBCQAIARBIGogA0EIaikCADcCACAEIAI2AhQgBCABNgIQIAQgADYCDCAEIAMpAgA3AhggBEEANgIoIARBACgCwOEQIgM2AiwgACABIAIgBEEYaiADEKIEIARBMGokAAtoAQF/IwBBMGsiBCQAIARBIGogA0EIaikCADcCACAEIAI2AhQgBCABNgIQIAQgADYCDCAEIAMpAgA3AhggBEEANgIoIARBACgCxOEQIgM2AiwgACABIAIgBEEYaiADEKIEIARBMGokAAtoAQF/IwBBMGsiBCQAIARBIGogA0EIaikCADcCACAEIAI2AhQgBCABNgIQIAQgADYCDCAEIAMpAgA3AhggBEEANgIoIARBACgCyOEQIgM2AiwgACABIAIgBEEYaiADEKIEIARBMGokAAtoAQF/IwBBMGsiBCQAIARBIGogA0EIaikCADcCACAEIAI2AhQgBCABNgIQIAQgADYCDCAEIAMpAgA3AhggBEEANgIoIARBACgCzOEQIgM2AiwgACABIAIgBEEYaiADEKIEIARBMGokAAtoAQF/IwBBMGsiBCQAIARBIGogA0EIaikCADcCACAEIAI2AhQgBCABNgIQIAQgADYCDCAEIAMpAgA3AhggBEEANgIoIARBACgC0OEQIgM2AiwgACABIAIgBEEYaiADEKIEIARBMGokAAtoAQF/IwBBMGsiBCQAIARBIGogA0EIaikCADcCACAEIAI2AhQgBCABNgIQIAQgADYCDCAEIAMpAgA3AhggBEEANgIoIARBACgC1OEQIgM2AiwgACABIAIgBEEYaiADEKIEIARBMGokAAtoAQF/IwBBMGsiBCQAIARBIGogA0EIaikCADcCACAEIAI2AhQgBCABNgIQIAQgADYCDCAEIAMpAgA3AhggBEEANgIoIARBACgC2OEQIgM2AiwgACABIAIgBEEYaiADEKIEIARBMGokAAtoAQF/IwBBMGsiBCQAIARBIGogA0EIaikCADcCACAEIAI2AhQgBCABNgIQIAQgADYCDCAEIAMpAgA3AhggBEEANgIoIARBACgC3OEQIgM2AiwgACABIAIgBEEYaiADEKIEIARBMGokAAtoAQF/IwBBMGsiBCQAIARBIGogA0EIaikCADcCACAEIAI2AhQgBCABNgIQIAQgADYCDCAEIAMpAgA3AhggBEEANgIoIARBACgC4OEQIgM2AiwgACABIAIgBEEYaiADEKIEIARBMGokAAtoAQF/IwBBMGsiBCQAIARBIGogA0EIaikCADcCACAEIAI2AhQgBCABNgIQIAQgADYCDCAEIAMpAgA3AhggBEEANgIoIARBACgC5OEQIgM2AiwgACABIAIgBEEYaiADEKIEIARBMGokAAsYACAAIAEgAiADIAQgBUEAKALo4RAQswQLeQEBfyMAQSBrIgckACAHIAU4AhwgByAEOAIYIAcgAzYCFCAHIAI2AhAgByABNgIMIAcgADYCCAJAAkACQAJAIAYgB0EIakEYELUCDgQAAwECAAsgB0EgaiQADwtB75EQQSIQEQALQdSREEEaEBEAC0G5kRBBGhARAAsYACAAIAEgAiADIAQgBUEAKALs4RAQswQLGAAgACABIAIgAyAEIAVBACgC8OEQELMECxgAIAAgASACIAMgBCAFQQAoAvThEBCzBAsYACAAIAEgAiADIAQgBUEAKAL44RAQswQLGAAgACABIAIgAyAEIAVBACgC/OEQELMECxgAIAAgASACIAMgBCAFQQAoAoDiEBCzBAsYACAAIAEgAiADIAQgBUEAKAKE4hAQswQLGAAgACABIAIgAyAEIAVBACgCiOIQELMECxgAIAAgASACIAMgBCAFQQAoAoziEBCzBAsYACAAIAEgAiADIAQgBUEAKAKQ4hAQswQLGAAgACABIAIgAyAEIAVBACgClOIQELMECxgAIAAgASACIAMgBCAFQQAoApjiEBCzBAsYACAAIAEgAiADIAQgBUEAKAKc4hAQswQLGAAgACABIAIgAyAEIAVBACgCoOIQELMECxgAIAAgASACIAMgBCAFQQAoAqTiEBCzBAtgAQJ/IwBBkANrIgQkACAEQRBqIgUgAkHwAvwKAAAgBCADNgKAAyAEIAE2AgQgBCAANgIAIARBADYChAMgBEEAKAKo4hAiAjYCiAMgACABIAUgAyACEMQEIARBkANqJAALcgEBfyMAQYADayIFJAAgBSACQfAC/AoAACAFIAM2AvgCIAUgATYC9AIgBSAANgLwAgJAAkACQAJAIAQgBUGAAxC1Ag4EAAMBAgALIAVBgANqJAAPC0HvkRBBIhARAAtB1JEQQRoQEQALQbmREEEaEBEAC2ABAn8jAEGQA2siBCQAIARBEGoiBSACQfAC/AoAACAEIAM2AoADIAQgATYCBCAEIAA2AgAgBEEANgKEAyAEQQAoAqziECICNgKIAyAAIAEgBSADIAIQxAQgBEGQA2okAAtgAQJ/IwBBkANrIgQkACAEQRBqIgUgAkHwAvwKAAAgBCADNgKAAyAEIAE2AgQgBCAANgIAIARBADYChAMgBEEAKAKw4hAiAjYCiAMgACABIAUgAyACEMQEIARBkANqJAALYAECfyMAQZADayIEJAAgBEEQaiIFIAJB8AL8CgAAIAQgAzYCgAMgBCABNgIEIAQgADYCACAEQQA2AoQDIARBACgCtOIQIgI2AogDIAAgASAFIAMgAhDEBCAEQZADaiQAC2ABAn8jAEGQA2siBCQAIARBEGoiBSACQfAC/AoAACAEIAM2AoADIAQgATYCBCAEIAA2AgAgBEEANgKEAyAEQQAo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NgIIIAQgADYCBCAEIAIpAgA3AgwgBEEANgIYIARBACgCkOQQIgI2AhwgACABIARBDGogAyACEPUEIARBIGokAAtYAQF/IwBBIGsiBCQAIAQgAzYCFCAEIAE2AgggBCAANgIEIAQgAikCADcCDCAEQQA2AhggBEEAKAKU5BAiAjYCHCAAIAEgBEEMaiADIAIQ9QQgBEEgaiQAC1gBAX8jAEEgayIEJAAgBCADNgIUIAQgATYCCCAEIAA2AgQgBCACKQIANwIMIARBADYCGCAEQQAoApjkECICNgIcIAAgASAEQQxqIAMgAhD1BCAEQSBqJAALWAEBfyMAQSBrIgQkACAEIAM2AhQgBCABNgIIIAQgADYCBCAEIAIpAgA3AgwgBEEANgIYIARBACgCnOQQIgI2AhwgACABIARBDGogAyACEPUEIARBIGokAAtYAQF/IwBBIGsiBCQAIAQgAzYCFCAEIAE2AgggBCAANgIEIAQgAikCADcCDCAEQQA2AhggBEEAKAKg5BAiAjYCHCAAIAEgBEEMaiADIAIQ9QQgBEEgaiQAC1gBAX8jAEEgayIEJAAgBCADNgIUIAQgATYCCCAEIAA2AgQgBCACKQIANwIMIARBADYCGCAEQQAoAqTkECICNgIcIAAgASAEQQxqIAMgAhD1BCAEQSBqJAALoAEBAX8jAEHAAGsiAiQAIAJBGGogAUEYaikCADcDACACQRBqIAFBEGopAgA3AwAgAkEIaiABQQhqKQIANwMAIAJBKGogAUEoaikCADcDACACQTBqIAFBMGopAgA3AwAgAkE4aiABQThqKQIANwMAIAIgASkCADcDACACIAEpAiA3AyAgASACIAJBIGogABEJAEEBcToAQCACQcAAaiQAQQALSgECfyMAQZABayICJAAgAiABQcgA/AoAACACQcgAaiIDIAFByABqQcgA/AoAACABIAIgAyAAEQkAQQFxOgCQASACQZABaiQAQQALSgECfyMAQeABayICJAAgAiABQfAA/AoAACACQfAAaiIDIAFB8ABqQfAA/AoAACABIAIgAyAAEQkAQQFxOgDgASACQeABaiQAQQALSgECfyMAQdABayICJAAgAiABQegA/AoAACACQegAaiIDIAFB6ABqQegA/AoAACABIAIgAyAAEQkAQQFxOgDQASACQdABaiQAQQALjQEB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ACABIANBP3GthiECQgAhAQwBCyADRQ0AIAIgA0E/ca0iBIYgAUEAIANrQT9xrYiEIQIgASAEhiEBCyAAIAE3AwAgACACNwMIC1YBAX4CQAJAIANBP0wNACACIANBP3GtiCEBQgAhAgwBCyADRQ0AIAJBACADa0E/ca2GIAEgA0E/ca0iBIiEIQEgAiAEiCECCyAAIAE3AwAgACACNwMIC3UBAX4gACAEIAF+IAIgA358IANCIIgiAiABQiCIIgR+fCADQv////8PgyIDIAFC/////w+DIgF+IgVCIIggAyAEfnwiA0IgiHwgA0L/////D4MgAiABfnwiAUIgiHw3AwggACABQiCGIAVC/////w+DhDcDAAvyAgICfwN+IwBBIGsiBiQAAkACQAJAAkAgAyABWCAEIAJYIAQgAlEbDQAgBUUNASAFIAE3AwAgBSACNwMIDAELAkAgBFANACAGIAMgBCAEeacgAnmnayIHQf8AcRChBSAHQQFqQf8AcSEHIAZBCGopAwAhBEIAIQggBikDACEDAkADQCAHRQ0BIAIgBCACQn+FfCADIAFCf4V8IANUrXwiCUI/hyIKIASDfSABIAogA4MiClStfSECIANCAYggBEI/hoQhAyAIQgGGIAlCP4iEIQggASAKfSEBIAdBf2ohByAEQgGIIQQMAAsLIAVFDQIgBSABNwMAIAUgAjcDCAwCC0IAIQQgBkIANwMYAkAgAiADVA0AIAIgAiADgCIEIAN+fSECCyACIAEgAyAGQRBqEKUFIQggBUUNAiAFIAYpAxA3AwAgBSAGQRhqKQMANwMIDAILQgAhCAtCACEECyAAIAg3AwAgACAENwMIIAZBIGokAAuWAgEGfgJAIAJ5IgRCP4MiBUIAUQ0AIAAgBYYgAUIAIAR9iIQhACABIAWGIQEgAiAFhiECCyAAIAAgAkIgiCIGgCIEIAZ+fSEHIAFC/////w+DIQggAUIgiCEBIAJC/////w+DIQkCQANAAkAgBEL/////D1YNACAEIAl+IAdCIIYgAYRYDQILIARCf3whBCAHIAZ8IgdC/////w9YDQALCyAAQiCGIAGEIAQgAn59IgAgACAGgCIHIAZ+fSEBAkADQAJAIAdC/////w9WDQAgByAJfiABQiCGIAiEWA0CCyAHQn98IQcgASAGfCIBQoCAgIAQVA0ACwsgAyAAQiCGIAiEIAcgAn59IAWINwMAIAcgBEIghnwLPgEBfyMAQRBrIgUkACAFIAEgAiADIARBABCkBSAFKQMAIQQgACAFQQhqKQMANwMIIAAgBDcDACAFQRBqJAALowIBBH8CQAJAIAAgAFwNACAAvCICQf////8HcUGAgID8B08NACACQYCAgIB4cSEDQQggAkEBdCIEZ2sgBEEYdiAEQYCAgAhJGyEEAkAgAUEASA0AAkBB/gEgBGsgAU4NACADQYCAgPwHcr4PCwJAIAQgAWoiBUEASg0AIAIgAXQgA3K+DwsCQCAEQQBKDQAgAkEBIARrdEH///8DcSAFQRd0ciADcr4PCyABQRd0IAJqvg8LQQAgBGsgAUgNAQJAQWkgBGsgAUwNACADvg8LIARBAEpBF3QgAkH///8DcXJBACABayIFQQEgBCABamsiASAFIAFIG0F/aiIBdkEBakEBdiACaCABQR9xRkF/c3EgA3K+IQALIAAPCyABQRd0IAJqvgvJAQMBfwF+An9BACECAkACQAJAIAG9IgNCNIinIgRB/w9xIgVFDQAgBUH/D0cNAQwCCyADQv////////8Hg1ANASADQoCAgICAgICAgH+DQgAgAyADQgyGeaciAkEBaq2GQv////////8HgyACQT9xQTJLG4RCgICAgICAgPA/hCEDQYJ4IAJrIQIMAQsgA0L/////////h4B/g0KAgICAgICA8D+EIQMgBEH/D3FBgnhqIQILIABBADYCDCAAIAI2AgggACADNwMAC9QCAgN+An8CQAJAIAAgAGINACAAvSICQv///////////wCDQoCAgICAgID4/wBaDQAgAkKAgICAgICAgIB/gyEDQQsgAkIBhiIEeadrIARCNYinIARCgICAgICAgBBUGyEFAkAgAUEASA0AAkBB/g8gBWsgAU4NACADQoCAgICAgID4/wCEvw8LAkAgBSABaiIGQQBKDQAgAiABQT9xrYYgA4S/DwsCQCAFQQBKDQAgAkEBIAVrrYZC/////////weDIAatQjSGhCADhL8PCyABrUI0hiACfL8PC0EAIAFrIQZBACAFayABSA0BAkBBTCAFayABTA0AIAO/DwsgBUEASq1CNIYgAkL/////////B4OEIAZBASAFIAFqayIBIAYgAUgbQX9qQT9xrSIEiEIBfEIBiCAC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QX9qIQcMAAsLIARFDQIgBUHwAWogAkEDdGohB0QAAAAAAAAAACEPIAIhCANAIAhBAEgNBCAIQX9qIQggDyAHKwMAoCEPIAdBeGohBwwACwsgBUHwAWogDkEDdGogDzkDACAJQXhqIQkgCkF/aiEKDAALCyAFQfABaiACQQN0aiEIRAAAAAAAAAAAIQ8CQANAIAJBAEgNASACQX9qIQIgDyAIKwMAoCEPIAhBeGohCAwACwsgASAPmiAPIBobOQMADAELIAEgD5ogDyAaGzkDACACQQAgAkEAShshCCAFKwPwASAPoSEPIAVB8AFqQQhqIQcCQANAIAhFDQEgCEF/aiEIIA8gBysDAKAhDyAHQQhqIQcMAAsLIAEgD5ogDyAaGzkDCAsgBUGwBGokACAZQQdxDwsgCSAPIAcoAgC3ojkDACAHQXxqIQcgCUF4aiEJIAhBf2ohCCAPRAAAAAAAAHA+oiEPDAALCyAFQZADaiAJQQN0aiAPOQMAIApBCGohCiAJQQFqIQkMAAsLIAIgDzkDACACQQhqIQIgCEF/aiEIIAlBBGohCSAHQQFqIQcMAAsL0gICA38DfQJAAkAgACAAXA0AIAC8IgFBH3YhAgJAAkACQAJAAkACQAJAIAFB/////wdxIgNBz9i6lQRLDQAgA0GY5MX1A00NASADQZKrlPwDTQ0CDAQLIANBgICA/AdLDQYCQCABQQBIDQAgA0GY5MWVBEkNACAAQwAAAH+UDwsgAUF/Sg0DQwAAAAAhBCADQbTjv5YESw0HDAMLIANBgICAyANNDQFBACEDQwAAAAAhBSAAIQQMBAsgAkEBcyACayEDDAILIABDAACAP5IPCyAAQzuquD+UIAJBAnRB6NYQaioCAJL8ACEDCyAAIAOyIgRDAHIxv5SSIgAgBEOOvr81lCIFkyEECyAAIAQgBCAEIASUIgYgBkMVUjW7lEOPqio+kpSTIgaUQwAAAEAgBpOVIAWTkkMAAIA/kiEEIANFDQEgBCADEKcFDwsgACEECyAEC5gFAwN/AnwBfiMAQTBrIgMkAAJAAkACQCAAvUL///////////8Ag0L/////////9/8AVg0AIAG9Qv///////////wCDQoCAgICAgID4/wBUDQELIAAgAaIgAqAhAgwBCyACvUL///////////8Ag0L/////////9/8AVg0AAkACQCAARAAAAAAAAAAAYQ0AIAFEAAAAAAAAAABiDQELIAAgAaIgAqAhAgwBCwJAIAJEAAAAAAAAAABiDQAgACABoiECDAELIAMgABCoBSADKwMAIQAgAygCCCEEIANBEGogARCoBSADKwMQIQEgAygCGCEFIANBIGogAhCoBSADKwMgIQICQAJAIAUgBGoiBCADKAIoayIFQesASA0AIAK9QoCAgICAgICAgH+DQoCAgICAgIAIhL8hBgwBCyACQQAgBWsQqQUhBgsgACAARAAAAAIAAKBBoiICIAAgAqGgIgKhIgcgASABRAAAAAIAAKBBoiIAIAEgAKGgIgChIgGiIAcgAKIgAiABoqAiASACIACiIgIgAiABoCIAoaCgIQECQCAAIAagIgJEAAAAAAAAAABiDQAgAiABIAQQqQWgIQIMAQsCQCABIAEgBiACIAChIgehIAAgAiAHoaGgIgagIgAgBqEiB6EgBiAAIAehoaAiAUQAAAAAAAAAAGENACAAvSIIp0EBcQ0AIAhCAYQgAb0gCIVCPoh9vyEACyACIACgIQECQCACEKsFIARqQYJ4Tg0AIAAgASACoSIGoSACIAYgAaGgoCICRAAAAAAAAAAAYQ0AIAG9IghCAYNQIAhCNIinQf8PcUEAIARrR0YNACAIIAK9IAiFQj6IQgKDfUIBfL8hAQsgASAEEKkFIQILIANBMGokACACCycAAkAgACAAXA0AAkAgASABWw0AIAAPCyAAIAEgACABXRshAQsgAQuCAgICfwJ9AkACQAJAIAC8IgFBgICABE4NAEMAAID/QwAAwH8gAEMAAAAAWyICGyEDIAINAiABQQBIDQIgAEMAAABMlLwhAUHofiECDAELIAAhAyABQf////sHSw0BQYF/IQJDAAAAACEDIAFBgICA/ANGDQELIAIgAUGN9qsCaiIBQRd2arIiA0OAcTE/lCABQf///wNxQfOJ1PkDar5DAACAv5IiACADQ9H3FzeUIAAgAEMAAABAkpUiAyAAIABDAAAAP5SUIgQgAyADlCIAIAAgAJQiAEPu6ZE+lEOqqio/kpQgACAAQyaeeD6UQxPOzD6SlJKSlJIgBJOSkiEDCyADC5kDAgN/AXwjAEEQayIBJAACQAJAIAC8IgJB/////wdxIgNB2p+k+gNLDQAgA0GAgIDMA0kNASAAuxCuBSEADAELAkACQAJAAkAgA0HSp+2DBEkNACADQdbjiIcETw0DIAC7IQQgA0Hg27+FBE8NASACQX9KDQIgBETSITN/fNkSQKAQrQUhAAwECyAAuyEEAkAgA0Hkl9uABEkNAEQYLURU+yEJwEQYLURU+yEJQCACQX9KGyAEoJoQrgUhAAwECwJAIAJBf0oNACAERBgtRFT7Ifk/oBCtBYwhAAwECyAERBgtRFT7Ifm/oBCtBSEADAMLRBgtRFT7IRnARBgtRFT7IRlAIAJBf0obIASgEK4FIQAMAgsgBETSITN/fNkSwKAQrQWMIQAMAQsCQCADQf////sHSw0AIAAgAUEIahCvBSEDIAErAwghBAJAAkACQAJAIANBA3EOBAABAgMACyAEEK4FIQAMBAsgBBCtBSEADAMLIASaEK4FIQAMAgsgBBCtBYwhAAwBCyAAIACTIQALIAFBEGokACAACwv8VwIAQYCAEAvwVnkAAAB6AAAAewAAAHwAAAB7IC4uLiB9AHsAb3BhY2l0eQBPdXRPZk1lbW9yeQBtYXhfeQBtaW5feQBzaGFwZXMuYm91bmRpbmdfYm94LkJvdW5kaW5nQm94AGltYWdlcy5QaWNrVmVydGV4AGluZGV4AG1heF94AG1pbl94AHJlbmRlckRyYXcAdgB1AHRleHQAVGV4dABkaXN0X3N0YXJ0AHNlbGVjdGlvbl9zdGFydABzbG90AHNldFNuYXBzaG90AGluZGV4LlByb2plY3RTbmFwc2hvdABzdG9wc19jb3VudABTZWxlY3RlZCBzaGFwZSBhc3NldCBzaG91bGQgYmUgcHJlc2VudCBhdCB0aGlzIHBvaW50AHRvUG9pbnQAdHlwZXMuUG9pbnQAY29udGVudAB1cGRhdGVUZXh0Q29udGVudABpbXBvcnRVaUVsZW1lbnQAaW5kZXguUGxhY2VtZW50AHNkZi5zZGYuVW5pZm9ybUxpbmVhckdyYWRpZW50AHNkZi5maWxsLlNlcmlhbGl6ZWRMaW5lYXJHcmFkaWVudABzZGYuZmlsbC5MaW5lYXJHcmFkaWVudABzZGYuc2RmLlVuaWZvcm1SYWRpYWxHcmFkaWVudABzZGYuZmlsbC5TZXJpYWxpemVkUmFkaWFsR3JhZGllbnQAc2RmLmZpbGwuUmFkaWFsR3JhZGllbnQAdGV4dHMudGV4dHMuQ29tcHV0ZVRleHRSZXN1bHQAaGVpZ2h0AHJlbW92ZUFzc2V0AG9mZnNldABiaXRPZmZzZXQAYXNzZXRfcHJvcHMuU2VyaWFsaXplZFNkZkVmZmVjdABzZGYuc2RmLkVmZmVjdAByYWRpdXMAcG9pbnRzAGFzc2V0cwBzZGZfZWZmZWN0cwB0b2dnbGVTaGFyZWRUZXh0RWZmZWN0cwBzdG9wcwBwcm9wcwBzZXRTZWxlY3RlZEFzc2V0UHJvcHMAYXNzZXRfcHJvcHMuU2VyaWFsaXplZFByb3BzAGNvbm5lY3RXZWJHcHVQcm9ncmFtcwBpbmRleC5XZWJHcHVQcm9ncmFtcwBGYWlsZWQgdG8gcmV0cmlldmUgc3RvcmVkIGNoYXJhY3RlciBkZXRhaWxzAHRleHRzLmZvbnRzLlNlcmlhbGl6ZWRDaGFyRGV0YWlscwBjb25uZWN0Q2FjaGVDYWxsYmFja3MAcGF0aHMAc2V0UGF0aHMAZmxhZ3MAY29tcHV0ZVNkZnMAY29ubmVjdFNlbGVjdGVkQXNzZXRVcGRhdGVzAGNvbW1pdENoYW5nZXMAYm91bmRzAHNldFNlbGVjdGVkQXNzZXRCb3VuZHMAZHJhd19ibHVyAGdhdXNzaWFuQmx1cgBjb2xvcgBjZW50ZXIAZmlsdGVyAGFzc2V0X3Byb3BzLkZpbHRlcgBsaW5lYXIAc2RmLnNkZi5Vbmlmb3JtR3JhZGllbnRTdG9wAHNkZi5maWxsLkdyYWRpZW50U3RvcABvblBvaW50ZXJVcAByYWRpdXNfcmF0aW8AYW5nbGVUbwBvblBvaW50ZXJEb3duAHNldENhcmV0UG9zaXRpb24AZGVzdGluYXRpb24AYWxpZ24AbmFuAHNkZi5zZGYuRHJhd1VuaWZvcm0Ac2hhcGVzLnNoYXBlcy5QaWNrVW5pZm9ybQBzZXRUb29sAGluZGV4LlRvb2wAZmlsbABzZGYuZmlsbC5TZXJpYWxpemVkRmlsbABzZGYuZmlsbC5GaWxsAHJldHZhbAByYWRpYWwAdGljawBvblBvaW50ZXJEb3VibGVDbGljawByZW5kZXJQaWNrAG9uVXBkYXRlUGljawBUZXh0Q2FsbGJhY2sAY29ubmVjdE9uQXNzZXRTZWxlY3Rpb25DYWxsYmFjawBvblVwZGF0ZVRvb2xDYWxsYmFjawBjb25uZWN0T25Bc3NldFVwZGF0ZUNhbGxiYWNrAGxlbmd0aAB3aWR0aABjb25uZWN0VHlwaW5nAHBhZGRpbmcAaW1nAGluZgBVdGY4Q2Fubm90RW5jb2RlU3Vycm9nYXRlSGFsZgBkaWZmAGNsZWFyX3NkZgBjb21iaW5lX3NkZgBnZW5lcmF0ZVVpRWxlbWVudHNTZGYAZm9udF9zaXplAGJpdFNpemUAYnl0ZVNpemUAb25Qb2ludGVyTW92ZQBvblBvaW50ZXJMZWF2ZQBkZWluaXRTdGF0ZQBkcmF3X3RleHR1cmUAcGlja190ZXh0dXJlAGNvbm5lY3RDcmVhdGVTZGZUZXh0dXJlAHN0cnVjdHVyZQBzaWduYXR1cmUAY29tcGFyZQB0eXBlAGRyYXdfc2hhcGUAcGlja19zaGFwZQBjb21wdXRlX3NoYXBlAERyYXdTaGFwZQBFZGl0U2hhcGUAYWRkU2hhcGUATm9uZQBuYW1lAGRyYXdfdHJpYW5nbGUAcGlja190cmlhbmdsZQBNYXRyaXggbm90IGludmVydGlibGUAdXBkYXRlUmVuZGVyU2NhbGUAdXBkYXRlQ2FjaGUAQ29kZXBvaW50VG9vTGFyZ2UAdHJpYW5nbGVzLkRyYXdJbnN0YW5jZQB0cmlhbmdsZXMuUGlja0luc3RhbmNlAGRpc3RhbmNlAEZvbnQgSUQgbm90IGZvdW5kAGRpc3RfZW5kAHNlbGVjdGlvbl9lbmQAbWlkAHNvbGlkAHNkZi5zZGYuVW5pZm9ybVNvbGlkAHNkZl90ZXh0dXJlX2lkAGNhY2hlX3RleHR1cmVfaWQAdHlwZXMuQXNzZXRTZXJpYWxpemVkAHRleHRzLnRleHRzLlNlcmlhbGl6ZWQAc2hhcGVzLnNoYXBlcy5TZXJpYWxpemVkAGltYWdlcy5TZXJpYWxpemVkAHVwZGF0ZVRleHRDb250ZW50IGNhbGxlZCBidXQgbm8gdGV4dCBhc3NldCBzZWxlY3RlZABKYXZhU2NyaXB0IGZ1bmN0aW9uIGZhaWxlZABNdWx0aXRocmVhZGluZyBub3QgZW5hYmxlZABQcm9taXNlIGVuY291bnRlcmVkIGluIG1haW4gdGhyZWFkAHR5cGVzLlBvaW50VVYAQVNTRVRfSURfTUlOAEgASW52YWxpZFV0ZjgANQA0ADMAcDIAcDEAcDAAeyAuACwgLgAoZmxvYXQpAGFycmF5X2xpc3QuQXJyYXlMaXN0QWxpZ25lZChzZGYuZmlsbC5HcmFkaWVudFN0b3AsbnVsbCkAU0RGIGVmZmVjdCBkaXN0X2VuZCBzaG91bGQgTk9UIGJlIGEgbGFyZ2UgcG9zaXRpdmUgbnVtYmVyIQBBdHRlbXB0aW5nIHRvIGFkZCBwb2ludCB0byBhbHJlYWR5IGNsb3NlZCBwYXRoIQBnZXRSZWxhdGl2ZVBvaW50cyB3YXMgY2FsbGVkIGJ1dCB0aGUgc2hhcGUgc2RmIHdhcyBub3QgbWFya2VkIGFzIG91dGRhdGVkIQBNYXggc3RvcHMgbnVtYmVyIGlzIDEwIQB7IAAgPSAALCAAAAAAAAAAAAAAAAAAAAAAAIA///9/fwAAAAAAAIA/AAAAAAAAgD8AAIA/AAAAAAAAAAAAAAAAAgAAAAAAQEAAAMA/AACAPwAAgD8AAIA/AACAPwAAAAAAAAAAAAAAAAIAAAAAAMDAAAAAwQAAgD8AAAAAAAAAAAAAgD8AAAAAAAAAAAAAAAACAAAAAABAwQAAkMEAAIA/AACAPwAAAAAAAIA/AAAAAAAAAAAAAAAAAgAAAHwKBAAEAAAAAAAAAAAAAAAAAAAAAACAP///f38AAAAAAACAPwAAAAAAAIA/AACAPwAAAAAAAAAAAAAAAAIAAAAAANBBAADAQQAAgD8AAIA/AACAPwAAgD8AAAAAAAAAAAAAAAACAAAAAADwwQAAAMIAAIA/AAAAAAAAAAAAAIA/AAAAAAAAAAAAAAAAAgAAADQLBAADAAAAAADwQQAA8EEBAAAAAACAPwAAAAAAAAAAAQAAAAEAAAD/AAD/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAACqqqqqAAAAAAAAAAAAAAAAAAAAAAAAgD8BAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB9AAAAfgAAAH8AAACAAAAAAACAfwAAAAC3Q7pRAAAAAAAAAAAAAIA/AAAAAAAAgD8AAIA/AACAPwAAgD8AAIA/AACAPwAAAAAAAIA/AAAAAAAAAAAAAAAAAAAAAAAAAAAeHh7/AAAAAAAAAAAAZGRkf39///////8A/wD/AAD//wAAAAABAAAAAgAAAAIAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAEAAAABAAAAAAAAAAMAAAACAAAAAQAAAAAAAAACAAAAAQAAAAIAAAADAAAAAgAAAAEAAAADAAAAAgAAAAMAAAAEAAAAAwAAAAAAAAAEAAAAAwAAAAIAAAAFAAAAAAAAAAEAAAAGAAAAAQAAAAIAAAAHAAAAAgAAAAMAAAAIAAAAAwAAAAAAAAAJAAAAAAAAAAAAAAAAAAAAAAAAAKqqqqoAAAAAAAAAABIAAAAAAAAAFAAAAAAAAAAbAAAAAAAAABAAAAAAAAAAGAAAAOgDAADw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8QICAgICAgICAgICAgICAgICAgICAgICAgICAgICAhMDAwMDAwMDAwMDAwMjAwM0BAQERPHx8fHx8fHx8fHxAAABAAAAAgAAAAMAAAAEADMAAAAAAAAADwAAAKqqqqoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgQAAAIIAAACDAAAAhAAAAIUAAACGAAAA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"),e=new Uint8Array(A.length);for(let t=0;t<A.length;t++)e[t]=A.charCodeAt(t);return await new Promise((A=>setTimeout(A,0))),e.buffer})();_I.loadModule(VI,{memoryInitial:5,tableInitial:485,multithreaded:!1}),_I.linkVariables(!1);const{constructor:XI}=YI,WI=_I.getSpecialExports(),{connectWebGpuPrograms:jI,connectOnAssetUpdateCallback:ZI,connectOnAssetSelectionCallback:$I,connectCreateSdfTexture:AQ,onUpdateToolCallback:eQ,SerializedCharDetails:tQ,TextCallback:iQ,connectTyping:nQ,connectCacheCallbacks:rQ,connectSelectedAssetUpdates:sQ,ASSET_ID_MIN:aQ,initState:oQ,updateRenderScale:gQ,addShape:IQ,removeAsset:QQ,onUpdatePick:CQ,updateTextContent:cQ,onPointerDown:BQ,onPointerUp:lQ,onPointerMove:EQ,onPointerDoubleClick:uQ,onPointerLeave:fQ,commitChanges:hQ,computeSdfs:pQ,updateCache:yQ,setCaretPosition:dQ,renderDraw:mQ,renderPick:bQ,setSnapshot:DQ,deinitState:SQ,importUiElement:wQ,generateUiElementsSdf:vQ,setTool:kQ,tick:xQ,setSelectedAssetProps:GQ,setSelectedAssetBounds:UQ,toggleSharedTextEffects:NQ}=XI;await WI.init(),i()}catch(A){i(A)}}),1)},191:(A,e,t)=>{A.exports=t.p+"40dc20eab8f7c9f3.ttf"},2804:A=>{A.exports='<svg width="100%" height="100%" viewBox="0 0 417 417" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" xmlns:serif="http://www.serif.com/">\n <path d="M314.628,297.396C332.174,273.76 342.561,244.497 342.561,212.827C342.561,143.329 292.564,85.41 226.6,73.137C216.426,71.244 209.703,61.447 211.596,51.274C213.489,41.1 223.286,34.377 233.459,36.27C316.841,51.784 380.061,124.978 380.061,212.827C380.061,253.008 366.839,290.126 344.51,320.06L391.536,320.06C403.034,320.06 412.369,329.395 412.369,340.893C412.369,352.391 403.034,361.727 391.536,361.727L293.794,361.727C282.288,361.727 272.961,352.399 272.961,340.893L272.961,243.151C272.961,231.653 282.296,222.318 293.794,222.318C305.293,222.318 314.628,231.653 314.628,243.151L314.628,297.396ZM67.746,91.893L23.592,91.893C12.093,91.893 2.758,82.558 2.758,71.059C2.758,59.561 12.093,50.226 23.592,50.226L121.333,50.226C132.839,50.226 142.167,59.554 142.167,71.059L142.167,168.801C142.167,180.299 132.832,189.635 121.333,189.635C109.835,189.635 100.5,180.299 100.5,168.801L100.5,111.903C74.501,137.66 58.384,173.375 58.384,212.827C58.384,282.095 108.051,339.86 173.69,352.393C183.855,354.334 190.531,364.163 188.59,374.327C186.649,384.492 176.821,391.169 166.656,389.228C83.685,373.385 20.884,300.385 20.884,212.827C20.884,166.265 38.638,123.815 67.746,91.893Z"/>\n</svg>\n'},7256:()=>{},1285:(A,e,t)=>{var i=t(1388),n=t(6560),r=(t(4540),t(8e3));(0,n.co)({init(){this.accessorCache=new Map},getAccessor(A,e){const{type:t,bitSize:n,bitOffset:s,byteSize:a}=e,o=[],g=void 0===a&&(7&n||7&s);g&&o.push("Unaligned");let I=i.hQ[t];n>32&&(t===i.Z9.Int||t===i.Z9.Uint)&&(I=n<=64?`Big${I}`:`Jumbo${I}`),o.push(I,`${t===i.Z9.Bool&&a?8*a:n}`),g&&o.push(`@${s}`);const Q=A+o.join("");let C=DataView.prototype[Q];if(C)return C;if(C=this.accessorCache.get(Q),C)return C;for(;o.length>0;){const t=`getAccessor${o.join("")}`;if(C=this[t]?.(A,e))break;o.pop()}if(!C)throw new Error(`No accessor available: ${Q}`);return(0,r.n8)(C,"name",(0,r.vQ)(Q)),this.accessorCache.set(Q,C),C}})},9592:(A,e,t)=>{var i=t(1388);(0,t(6560).co)({getAccessorBool(A,e){const{byteSize:t}=e,n=8*t,r=this.getAccessor(A,{type:i.Z9.Uint,bitSize:n,byteSize:t});if("get"===A)return function(A,e){return!!r.call(this,A,e)};{const A=n<=32?0:0n,e=n<=32?1:1n;return function(t,i,n){r.call(this,t,i?e:A,n)}}}})},5239:(A,e,t)=>{var i=t(1388);(0,t(6560).co)({getAccessorInt(A,e){const{bitSize:t,byteSize:n}=e;if(n){const e=this.getAccessor(A,{type:i.Z9.Uint,bitSize:8*n,byteSize:n}),r=2**(t-1),s=r-1;return"get"===A?function(A,t){const i=e.call(this,A,t);return(i&s)-(i&r)}:function(A,t,i){const n=t<0?r|t&s:t&s;e.call(this,A,n,i)}}}})},2148:(A,e,t)=>{(0,t(6560).co)({getAccessorUint(A,e){const{bitSize:t,byteSize:i}=e;if(i){const n=this.getAccessor(A,{...e,bitSize:8*i}),r=2**t-1;return"get"===A?function(A,e){return n.call(this,A,e)&r}:function(A,e,t){const i=e&r;n.call(this,A,i,t)}}}})},1388:(A,e,t)=>{t.d(e,{AD:()=>s,EK:()=>n,F7:()=>y,M_:()=>g,Nt:()=>Q,Q6:()=>I,Q9:()=>p,UT:()=>C,Z9:()=>u,Zm:()=>B,e2:()=>E,ev:()=>i,hQ:()=>f,pK:()=>h,sU:()=>o,sl:()=>l,tv:()=>c,uE:()=>a,yi:()=>r});const i={Primitive:0,Array:1,Struct:2,Union:3,ErrorUnion:4,ErrorSet:5,Enum:6,Optional:7,Pointer:8,Slice:9,Vector:10,Opaque:11,ArgStruct:12,VariadicStruct:13,Function:14},n=Object.keys(i),r={HasValue:1,HasObject:2,HasPointer:4,HasSlot:8},s={IsSize:16},a={HasSentinel:16,IsString:32,IsTypedArray:64,IsClampedArray:128},o={IsExtern:16,IsPacked:32,IsIterator:64,IsTuple:128,IsAllocator:256,IsPromise:512,IsGenerator:1024,IsAbortSignal:2048,IsOptional:4096,IsReader:8192,IsWriter:16384},g={HasSelector:16,HasTag:32,HasInaccessible:64,IsExtern:128,IsPacked:256,IsIterator:512},I={IsOpenEnded:16,IsIterator:32},Q={HasSelector:16},C={HasLength:16,IsMultiple:32,IsSingle:64,IsConst:128,IsNullable:256},c={HasSentinel:16,IsString:32,IsTypedArray:64,IsClampedArray:128,IsOpaque:256},B={IsGlobal:16},l={IsTypedArray:16,IsClampedArray:32},E={HasOptions:16,IsThrowing:32,IsAsync:64},u={Void:0,Bool:1,Int:2,Uint:3,Float:4,Object:5,Type:6,Literal:7,Null:8,Undefined:9,Unsupported:10},f=Object.keys(u),h={IsRequired:1,IsReadOnly:2,IsPartOfSet:4,IsSelector:8,IsMethod:16,IsSentinel:32,IsBackingInt:64,IsString:128},p={OK:0,Failure:1,Deadlock:2,Disabled:3},y={IsInactive:1,IsImmutable:2,IgnoreUncreated:4,IgnoreInactive:8,IgnoreArguments:16,IgnoreRetval:32}},6560:(A,e,t)=>{t.d(e,{NP:()=>s,co:()=>r});var i=t(8e3);const n={name:"",mixins:[]};function r(A){return n.mixins.includes(A)||n.mixins.push(A),A}function s(){return function(A,e){const t=[],n=function(){for(const A of t)A.call(this)},{prototype:r}=n;(0,i.n8)(n,"name",(0,i.vQ)(A));for(const A of e)for(let[e,n]of Object.entries(A))if("init"===e)t.push(n);else{if("function"==typeof n);else{let A=r[e];if(void 0!==A)if(A?.constructor===Object)n=Object.assign({...A},n);else if(A!==n)throw new Error(`Duplicate property: ${e}`)}(0,i.n8)(r,e,(0,i.vQ)(n))}return n}(n.name,n.mixins)}},4762:(A,e,t)=>{t.d(e,{BC:()=>s,BY:()=>G,FD:()=>V,G9:()=>w,Ho:()=>c,Jc:()=>K,L2:()=>f,O0:()=>a,Pd:()=>k,QB:()=>N,Qm:()=>S,SB:()=>y,UQ:()=>R,Uv:()=>v,V0:()=>P,Vp:()=>L,Y8:()=>h,Z6:()=>B,Zb:()=>I,_L:()=>p,_l:()=>M,a6:()=>_,b$:()=>x,ci:()=>o,ck:()=>J,d_:()=>T,iS:()=>Q,if:()=>E,is:()=>u,it:()=>l,nz:()=>m,qG:()=>b,qx:()=>Y,t7:()=>g,to:()=>C,v2:()=>q,vp:()=>O,x1:()=>F,xH:()=>d,xp:()=>U,zy:()=>D});var i=t(1388),n=t(4540),r=t(8e3);Error;class s extends SyntaxError{constructor(A){super(`Cannot convert ${A} to an Int`)}}class a extends TypeError{constructor(){super("Unsupported")}}class o extends TypeError{constructor(A){const{name:e}=A;super(`An initializer must be provided to the constructor of ${e}, even when the intended value is undefined`)}}class g extends TypeError{constructor(A,e,t=null){const{name:n,type:r,byteSize:s}=A,a=e.byteLength,o=1!==s?"s":"";let g;if(r!==i.ev.Slice||t){g=`${n} has ${r===i.ev.Slice?t.length*s:s} byte${o}, received ${a}`}else g=`${n} has elements that are ${s} byte${o} in length, received ${a}`;super(g)}}class I extends TypeError{constructor(A){const{type:e,byteSize:t,typedArray:n}=A,r=1!==t?"s":"",s=["ArrayBuffer","DataView"].map(W);let a;n&&s.push(W(n.name)),a=e===i.ev.Slice?`Expecting ${Z(s)} that can accommodate items ${t} byte${r} in length`:`Expecting ${Z(s)} that is ${t} byte${r} in length`,super(a)}}class Q extends TypeError{constructor(A,e){const{name:t}=A;let i;i="number"==typeof e||"bigint"==typeof e?`Value given does not correspond to an item of enum ${t}: ${e}`:`Enum item of the type ${t} expected, received ${e}`,super(i)}}class C extends TypeError{constructor(A,e){const{name:t}=A,i=typeof e;let n;"string"===i||"number"===i||V(e)?(V(e)&&(e=`{ error: ${JSON.stringify(e.error)} }`),n=`Error ${i} does not corresponds to any error in error set ${t}: ${e}`):n=`Error of the type ${t} expected, received ${e}`,super(n)}}class c extends TypeError{constructor(A){const{name:e}=A;super(`Error given is not a part of error set ${e}`)}}TypeError;class B extends TypeError{constructor(A){const{name:e}=A;super(`Only one property of ${e} can be given a value`)}}class l extends TypeError{constructor(A,e,t){super(`Accessing property ${e} when ${t} is active`)}}class E extends TypeError{constructor(A,e,t){const{name:i,instance:{members:n}}=A;super(`${i} needs an initializer for one of its union properties: ${n.slice(0,t?-1:void 0).map((A=>A.name)).join(", ")}`)}}class u extends TypeError{constructor(A,e,t){const{name:i}=A,n=[];if(Array.isArray(e))for(const A of e)n.push(W(A));else n.push(W(e));const r=X(t);super(`${i} expects ${Z(n)} as argument, received ${r}`)}}class f extends u{constructor(A,e,t=!1){const{instance:{members:[s]},type:a,constructor:o}=A,g=[],I=(0,r.BF)(s);if(I){let A;switch(s.structure?.type){case i.ev.Enum:A="enum item";break;case i.ev.ErrorSet:A="error";break;default:A=I}g.push(`array of ${A}s`)}else g.push("array of objects");o[n.pM]&&g.push(o[n.pM].name),a===i.ev.Slice&&t&&g.push("length"),super(A,g.join(" or "),e)}}class h extends TypeError{constructor(A,e,t){const{name:i,length:n,instance:{members:[r]}}=A,{structure:{constructor:s}}=r,{length:a,constructor:o}=t,g=e?.length??n,I=1!==g?"s":"";let Q;Q=o===s?"only a single one":o.child===s?`a slice/array that has ${a}`:`${a} initializer${a>1?"s":""}`,super(`${i} has ${g} element${I}, received ${Q}`)}}class p extends TypeError{constructor(A,e){super(A<0?"Length of slice cannot be negative":`Length of slice can be ${e} or less, received ${A}`)}}class y extends TypeError{constructor(A,e){const{name:t}=A;super(`Missing initializers for ${t}: ${e.join(", ")}`)}}class d extends TypeError{constructor(A,e){const{name:t,instance:{members:i}}=A;let n;n=i.find((A=>A.name===e))?`Comptime value cannot be changed: ${e}`:`${t} does not have a property with that name: ${e}`,super(n)}}class m extends Error{constructor(A,e,t=!1){super();const i=i=>{e-=i;const n=1!==(A-=i)?"s":"",r=t?"at least ":"";this.message=`Expecting ${r}${A} argument${n}, received ${e}`,this.stack=H(this.stack,"new Arg(")};i(0),(0,r.n8)(this,n.q6,{value:i,enumerable:!1})}}class b extends Error{constructor(){super("Undefined argument")}}class D extends TypeError{constructor(){super("Non-slice pointers can only be created with the help of the new operator")}}class S extends TypeError{constructor(){super("Casting to function is not allowed")}}class w extends TypeError{constructor(A,e){const{name:t}=A,{constructor:{name:i}}=e;super(`Conversion of ${i} to ${t} requires an explicit cast`)}}TypeError;TypeError;class v extends TypeError{constructor(A,e){super(`Unable to simultaneously align memory to ${e}-byte and ${A}-byte boundary`)}}TypeError;class k extends TypeError{constructor(A,e){const t=X(e);super(`Expected ${W(A)}, received ${t}`)}}class x extends TypeError{constructor(){super("Pointers within an untagged union are not accessible")}}class G extends TypeError{constructor(){super("Null pointer")}}class U extends TypeError{constructor(A){super(`Object has been freed already: ${A.constructor.name}`)}}class N extends TypeError{constructor(A,e){const{name:t}=A;let i;if(null!=e){const A=e instanceof Object&&e.constructor!==Object?`${e.constructor.name} object`:typeof e;i=`${j(A)} ${A}`}else i=e+"";super(`${t} cannot point to ${i}`)}}class F extends TypeError{constructor(){super("Pointers in Zig memory cannot point to garbage-collected object")}}TypeError;class M extends RangeError{constructor(A,e){const{name:t}=A;super(`Index exceeds the size of ${t??"array"}: ${e}`)}}class R extends TypeError{constructor(A){const{name:e}=A;super(`${void 0!==e?`Property ${e}`:"Element"} can only be undefined`)}}class L extends TypeError{constructor(A){const{name:e,structure:{name:t}}=A;super(`Unable to create ${t} as it is not situated on a byte boundary: ${e}`)}}class z extends TypeError{constructor(){super("Unable to modify read-only object")}}class J extends TypeError{constructor(A){const{name:e}=A;super(`${e} cannot point to a read-only object`)}}TypeError;TypeError;TypeError;class q extends TypeError{constructor(){super("Unexpected async generator")}}class O extends Error{constructor(A,e=0){if(A instanceof Error)return super(A.message),A.stack=H(this.stack,e),A;super(A??"Error encountered in Zig code")}}class K extends O{constructor(A){super("Program exited"),this.code=A}}function T(A,e){const t=t=>{e-=t,A.message=`args[${e}]: ${A.message}`,A.stack=H(A.stack,"new Arg(")};return t(0),(0,r.n8)(A,n.q6,{value:t,enumerable:!1}),A}function H(A,e){if("string"==typeof A){const t=A.split("\n"),i=t.findIndex((A=>A.includes(e)));-1!==i&&(t.splice(1,i),A=t.join("\n"))}return A}function Y(A,e,t){return t instanceof RangeError&&!(t instanceof M)&&(t=new M(A,e)),t}function P(){throw new z}function _(A){let e=A.replace(/_/g," ");try{e=e.replace(/(\p{Uppercase}+)(\p{Lowercase}*)/gu,((A,e,t)=>1===e.length?` ${e.toLocaleLowerCase()}${t}`:t?A:` ${e}`)).trimStart()}catch(A){}return e.charAt(0).toLocaleUpperCase()+e.substring(1)}function V(A){return"object"==typeof A&&"string"==typeof A.error&&1===Object.keys(A).length}function X(A){const e=typeof A;let t;return t="object"===e?A?Object.prototype.toString.call(A):"null":e,W(t)}function W(A){return`${j(A)} ${A}`}function j(A){return/^\W*[aeiou]/i.test(A)?"an":"a"}function Z(A,e="or"){const t=` ${e} `;return A.length>2?A.slice(0,-1).join(", ")+t+A[A.length-1]:A.join(t)}},4358:(A,e,t)=>{var i=t(1388),n=t(6560),r=t(4540);(0,n.co)({init(){this.variables=[]},getSpecialExports(){const A=A=>{if(void 0===A)throw new Error("Not a Zig type");return A};return{init:(...A)=>this.initialize?.(...A),abandon:()=>this.abandonModule?.(),connect:A=>this.consoleObject=A,sizeOf:e=>A(e?.[r.SK]),alignOf:e=>A(e?.[r.Ec]),typeOf:e=>s[A(e?.[r.ZE])]}},recreateStructures(A,e){Object.assign(this,e);const t=(A,e)=>{for(const[t,i]of Object.entries(e))A[t]=n(i);return A},i=A=>A.length?A.buffer:new ArrayBuffer(0),n=A=>{const{memory:e,structure:n,actual:s}=A;if(e){if(s)return s;{const{array:s,offset:a,length:o}=e,g=this.obtainView(i(s),a,o),{handle:I,const:Q}=A,C=n?.constructor,c=A.actual=C.call(r.M0,g);return Q&&this.makeReadOnly(c),A.slots&&t(c[r._f],A.slots),I&&this.variables.push({handle:I,object:c}),c}}return n},s=new Map;for(const e of A){for(const A of[e.instance,e.static])if(A.template){const{slots:e,memory:t,handle:n}=A.template,a=A.template={};if(t){const{array:A,offset:e,length:s}=t;a[r.Qy]=this.obtainView(i(A),e,s),n&&this.variables.push({handle:n,object:a})}if(e){const A=a[r._f]={};s.set(A,e)}}this.defineStructure(e)}for(const[A,e]of s)t(A,e);for(const e of A)this.finalizeStructure(e)}});const s=i.EK.map((A=>A.replace(/([a-z])([A-Z])/g,"$1 $2").toLowerCase()))},4828:(A,e,t)=>{var i=t(1388),n=t(6560),r=t(4762),s=t(4540);(0,n.co)({init(){this.jsFunctionThunkMap=new Map,this.jsFunctionCallerMap=new Map,this.jsFunctionControllerMap=new Map,this.jsFunctionIdMap=new WeakMap,this.jsFunctionNextId=1},getFunctionId(A){let e=this.jsFunctionIdMap.get(A);return void 0===e&&(e=this.jsFunctionNextId++,this.jsFunctionIdMap.set(A,e)),e},getFunctionThunk(A,e){const t=this.getFunctionId(A);let i=this.jsFunctionThunkMap.get(t);if(void 0===i){const A=this.getViewAddress(e[s.Qy]),n=this.createJsThunk(A,t);if(!n)throw new Error("Unable to create function thunk");i=this.obtainZigView(n,0),this.jsFunctionThunkMap.set(t,i),this.jsFunctionControllerMap.set(t,e)}return i},createInboundCaller(A,e){const t=this.getFunctionId(A);return this.jsFunctionCallerMap.set(t,((t,n)=>{let a=i.Q9.OK,o=!1;try{const g=e(t);if(s.g9 in g){g[s.g9]("reset");const A=this.startContext();this.updatePointerTargets(A,g,!0),this.updateShadowTargets(A),this.endContext()}const I=function(A){try{if(!(e[s.du]&&A instanceof Error))throw A;g[s.zg](A)}catch(e){a=i.Q9.Failure,console.error(A)}},Q=function(A){try{g[s.zg](A)}catch(A){a=i.Q9.Failure,console.error(A)}};try{const e=A(...g),t=g.hasOwnProperty(s.zg);if("Promise"===e?.[Symbol.toStringTag])if(n||t){const A=e.then(Q,I);n&&A.then((()=>this.finalizeAsyncCall(n,a))),o=!0,a=i.Q9.OK}else a=i.Q9.Deadlock;else if(e?.[Symbol.asyncIterator]){if(!g.hasOwnProperty(s.wg))throw new r.v2;this.pipeContents(e,g),a=i.Q9.OK}else null==e&&t||Q(e)}catch(A){I(A)}}catch(A){console.error(A),a=i.Q9.Failure}return n&&!o&&this.finalizeAsyncCall(n,a),a})),function(...e){return A(...e)}},defineArgIterator(A){const e=this,t=A.filter((({structure:A})=>A.type===i.ev.Struct&&A.flags&i.sU.IsAllocator)).length;return{value(){let n,r=0,a=0,o=0;const g=[];for(const[I,{structure:Q,type:C}]of A.entries())try{let A,c,B=this[I];C===i.Z9.Object&&B?.[s.Qy]?.[s.Dr]&&(B=new B.constructor(B)),Q.type===i.ev.Struct&&(Q.flags&i.sU.IsAllocator?(A=1===t?"allocator":"allocator"+ ++r,c=this[s.Gz]=B):Q.flags&i.sU.IsPromise?(A="callback",1==++a&&(c=e.createPromiseCallback(this,B))):Q.flags&i.sU.IsGenerator?(A="callback",1==++a&&(c=e.createGeneratorCallback(this,B))):Q.flags&i.sU.IsAbortSignal&&(A="signal",1==++o&&(c=e.createInboundSignal(B)))),void 0!==A?void 0!==c&&(n||={},n[A]=c):g.push(B)}catch(A){g.push(A)}return n&&g.push(n),g[Symbol.iterator]()}}},handleJsCall(A,e,t,n=0){const r=this.obtainZigView(e,t,!1),s=this.jsFunctionCallerMap.get(A);return s?s(r,n):i.Q9.Failure},releaseFunction(A){const e=this.jsFunctionThunkMap.get(A),t=this.jsFunctionControllerMap.get(A);if(e&&t){const i=this.getViewAddress(t[s.Qy]),n=this.getViewAddress(e);this.destroyJsThunk(i,n),this.releaseZigView(e),A&&(this.jsFunctionThunkMap.delete(A),this.jsFunctionCallerMap.delete(A),this.jsFunctionControllerMap.delete(A))}},freeFunction(A){this.releaseFunction(this.getFunctionId(A))},exports:{handleJsCall:{argType:"iiii",returnType:"i"},releaseFunction:{argType:"i"}},imports:{createJsThunk:{argType:"ii",returnType:"i"},destroyJsThunk:{argType:"ii",returnType:"i"},finalizeAsyncCall:{argType:"ii"}}})},6973:(A,e,t)=>{var i=t(1388),n=t(6560),r=t(4762),s=t(4540);(0,n.co)({createOutboundCaller(A,e){const t=this,i=function(...n){if(!t.runThunk)return t.initPromise.then((()=>i(...n)));const a=new e(n,this?.[s.Gz]);try{return t.invokeThunk(A,i,a)}catch(A){if(A instanceof r.Jc&&0===A.code)return;throw A}};return i},copyArguments(A,e,t,n,a){let o=0,g=0,I=0;const Q=A[s.Bl];for(const{type:s,structure:C}of t){let t,c,B,l;if(C.type===i.ev.Struct)if(C.flags&i.sU.IsAllocator){t=(1==++I?n?.allocator??n?.allocator1:n?.[`allocator${I}`])??this.createDefaultAllocator(A,C)}else C.flags&i.sU.IsPromise?(c||=this.createPromise(C,A,n?.callback),t=c):C.flags&i.sU.IsGenerator?(B||=this.createGenerator(C,A,n?.callback),t=B):C.flags&i.sU.IsAbortSignal?(l||=this.createSignal(C,n?.signal),t=l):C.flags&i.sU.IsReader?t=this.createReader(e[g++]):C.flags&i.sU.IsWriter&&(t=this.createWriter(e[g++]));if(void 0===t&&(t=e[g++],void 0===t&&s!==i.Z9.Void))throw new r.qG;try{Q[o++].call(A,t,a)}catch(A){throw(0,r.d_)(A,o-1)}}},invokeThunk(A,e,t){const i=this.startContext(),n=t[s.iw],a=this.getViewAddress(A[s.Qy]),o=this.getViewAddress(e[s.Qy]),g=s.vm in t,I=s.g9 in t;I&&this.updatePointerAddresses(i,t);const Q=this.getShadowAddress(i,t,null,!1),C=n?this.getShadowAddress(i,n):0;this.updateShadows(i);const c=()=>{this.updateShadowTargets(i),I&&this.updatePointerTargets(i,t),this.libc&&this.flushStdout?.(),this.flushConsole?.(),this.endContext()};g&&(t[s.vm]=c);if(!(n?this.runVariadicThunk(a,o,Q,C,n.length):this.runThunk(a,o,Q)))throw c(),new r.vp;if(t[s.sF]?.(this.findShadowView(t[s.Qy])),g){let A=null;try{A=t.retval}catch(e){A=new r.vp(e,1)}return null!=A?(e[s.fM]&&A&&(A=A.string),t[s.zg](A)):e[s.fM]&&(t[s.fM]=!0),t[s.eR]??t[s._d]}c();try{const{retval:A}=t;return e[s.fM]&&A?A.string:A}catch(A){throw new r.vp(A,1)}},imports:{runThunk:{argType:"iii",returnType:"b"},runVariadicThunk:{argType:"iiiii",returnType:"b"}}})},2427:(A,e,t)=>{var i=t(1388),n=t(6560),r=t(4540),s=t(8e3);(0,n.co)({init(){const A={type:i.Z9.Int,bitSize:8,byteSize:1},e={type:i.Z9.Int,bitSize:16,byteSize:2},t={type:i.Z9.Int,bitSize:32,byteSize:4},n=this.getAccessor("get",A),r=this.getAccessor("set",A),a=this.getAccessor("get",e),o=this.getAccessor("set",e),g=this.getAccessor("get",t),I=this.getAccessor("set",t);this.copiers={0:s.Ie,1:function(A,e){r.call(A,0,n.call(e,0))},2:function(A,e){o.call(A,0,a.call(e,0,!0),!0)},4:function(A,e){I.call(A,0,g.call(e,0,!0),!0)},8:function(A,e){I.call(A,0,g.call(e,0,!0),!0),I.call(A,4,g.call(e,4,!0),!0)},16:function(A,e){I.call(A,0,g.call(e,0,!0),!0),I.call(A,4,g.call(e,4,!0),!0),I.call(A,8,g.call(e,8,!0),!0),I.call(A,12,g.call(e,12,!0),!0)},any:function(A,e){let t=0,i=A.byteLength;for(;t+4<=i;)I.call(A,t,g.call(e,t,!0),!0),t+=4;for(;t+1<=i;)r.call(A,t,n.call(e,t)),t++}},this.resetters={0:s.Ie,1:function(A,e){r.call(A,e,0)},2:function(A,e){o.call(A,e,0,!0)},4:function(A,e){I.call(A,e,0,!0)},8:function(A,e){I.call(A,e+0,0,!0),I.call(A,e+4,0,!0)},16:function(A,e){I.call(A,e+0,0,!0),I.call(A,e+4,0,!0),I.call(A,e+8,0,!0),I.call(A,e+12,0,!0)},any:function(A,e,t){let i=e;for(;i+4<=t;)I.call(A,i,0,!0),i+=4;for(;i+1<=t;)r.call(A,i,0),i++}}},defineCopier(A,e){const t=this.getCopyFunction(A,e);return{value(A){this[r.zN]?.(),A[r.zN]?.();const e=A[r.Qy],i=this[r.Qy];t(i,e)}}},defineResetter(A,e){const t=this.getResetFunction(e);return{value(){this[r.zN]?.();const i=this[r.Qy];t(i,A,e)}}},getCopyFunction(A,e=!1){return(e?void 0:this.copiers[A])??this.copiers.any},getResetFunction(A){return this.resetters[A]??this.resetters.any},...{defineRetvalCopier({byteSize:A,bitOffset:e}){if(A>0){const t=this,i=e>>3,n=this.getCopyFunction(A);return{value(e){const s=this[r.Qy],{address:a}=e[r.Dr],o=new DataView(t.memory.buffer,a+i,A),g=new DataView(s.buffer,s.byteOffset+i,A);n(g,o)}}}},copyExternBytes(A,e,t){const{memory:i}=this,n=new DataView(i.buffer,e,t);this.getCopyFunction(t)(A,n)}}})},1669:(A,e,t)=>{var i=t(1388),n=t(6560),r=t(4762);(0,n.co)({addIntConversion:A=>function(e,t){const n=A.call(this,e,t),{flags:s,bitSize:a}=t;if("set"===e)return a>32?function(A,e,t){n.call(this,A,BigInt(e),t)}:function(A,e,t){const i=Number(e);if(!isFinite(i))throw new r.BC(e);n.call(this,A,i,t)};{const{flags:A}=t.structure;if(A&i.AD.IsSize&&a>32){const A=BigInt(Number.MAX_SAFE_INTEGER),e=BigInt(Number.MIN_SAFE_INTEGER);return function(t,i){const r=n.call(this,t,i);return e<=r&&r<=A?Number(r):r}}}return n}})},6929:(A,e,t)=>{var i=t(6560),n=t(4762),r=t(4540),s=t(8e3);(0,i.co)({init(){this.isMemoryMapping=!0,this.memoryList=[],this.contextCount=0},startContext(){return++this.contextCount,{shadowList:[]}},endContext(){if(0==--this.contextCount){for(const{shadowDV:A}of this.memoryList)A&&this.freeShadowMemory(A);this.memoryList.splice(0)}},getShadowAddress(A,e,t,i){const a=e[r.Qy];if(t){if(void 0===t.address){const{start:e,end:g,targets:I}=t;let Q,C=0;for(const A of I){const e=A[r.Qy],t=e.byteOffset,i=A.constructor[r.Ec]??e[r.Ec];(void 0===C||i>C)&&(C=i,Q=t)}const c=g-e,B=this.allocateShadowMemory(c+C,1),l=this.getViewAddress(B),E=(0,s.hJ)((0,s.Au)(l,Q-e),C),u=(0,s.Au)(E,e-Q);for(const A of I){const t=A[r.Qy],i=t.byteOffset;if(i!==Q){const a=A.constructor[r.Ec]??t[r.Ec];if((0,s.on)((0,s.Au)(u,i-e),a))throw new n.Uv(a,C)}}const f=B.byteOffset+Number(u-l),h=new DataView(B.buffer,f,c);h[r.Dr]={address:u,len:c,align:1,unalignedAddress:l,type:o.Scratch};const p=new DataView(a.buffer,Number(e),c),y=this.registerMemory(u,c,1,i,p,h);A.shadowList.push(y),t.address=u}return(0,s.Au)(t.address,a.byteOffset-t.start)}{const t=e.constructor[r.Ec]??a[r.Ec],n=a.byteLength,s=this.allocateShadowMemory(n,t),o=this.getViewAddress(s),g=this.registerMemory(o,n,1,i,a,s);return A.shadowList.push(g),o}},updateShadows(A){const e=this.getCopyFunction();for(let{targetDV:t,shadowDV:i}of A.shadowList)i=this.restoreView(i),e(i,t)},updateShadowTargets(A){const e=this.getCopyFunction();for(let{targetDV:t,shadowDV:i,writable:n}of A.shadowList)n&&(i=this.restoreView(i),e(t,i))},registerMemory(A,e,t,i,n,r){const s=a(this.memoryList,A);let o=this.memoryList[s-1];return o?.address===A&&o.len===e?o.writable||=i:(o={address:A,len:e,align:t,writable:i,targetDV:n,shadowDV:r},this.memoryList.splice(s,0,o)),o},unregisterMemory(A,e){const t=a(this.memoryList,A),i=this.memoryList[t-1];if(i?.address===A&&i.len===e)return this.memoryList.splice(t-1,1),i},findMemory(A,e,t,i){let n=t*(i??0);const o=a(this.memoryList,e),g=this.memoryList[o-1];let I;if(g?.address===e&&g.len===n)I=g.targetDV;else if(g?.address<=e&&(0,s.Au)(e,n)<=(0,s.Au)(g.address,g.len)){const A=Number(e-g.address),t=void 0===i,{targetDV:s}=g;t&&(n=s.byteLength-A),I=this.obtainView(s.buffer,s.byteOffset+A,n),t&&(I[r.Ec]=g.align)}if(I){let{targetDV:e,shadowDV:t}=g;if(t&&A&&!A.shadowList.includes(g)){t=this.restoreView(t);this.getCopyFunction()(e,t)}}else I=this.obtainZigView(e,n);return I},findShadowView(A){for(const{shadowDV:e,targetDV:t}of this.memoryList)if(t===A)return e},releaseZigView(A){const e=A[r.Dr],t=e?.address;t&&t!==s.Y$&&(e.address=s.Y$)},getViewAddress(A){const e=A[r.Dr];if(e)return e.address;{const e=this.getBufferAddress(A.buffer);return(0,s.Au)(e,A.byteOffset)}},...{imports:{allocateScratchMemory:{argType:"ii",returnType:"i"},freeScratchMemory:{argType:"iii"}},exports:{getViewAddress:{argType:"v",returnType:"i"}},usizeMaxBuffer:new ArrayBuffer(0),allocateShadowMemory(A,e){const t=A?this.allocateScratchMemory(A,e):0;if(!t&&A)throw new Error("Out of memory");const i=this.obtainZigView(t,A),n=i?.[r.Dr];return n&&(n.align=e),i},freeShadowMemory(A){const{address:e,unalignedAddress:t,len:i,align:n}=A[r.Dr];i&&this.freeScratchMemory(t??e,i,n),this.releaseZigView(A)},obtainZigView(A,e,t=!0){if((0,s.cv)(A)&&(A=e>0?0:s.Fy),!A&&e)return null;let i,{buffer:n}=this.memory;return A===s.Fy&&(n=this.usizeMaxBuffer,A=s.$k,e=0),t?i=this.obtainView(n,A,e):(i=new DataView(n,A,e),i[r.Dr]={address:A,len:e}),i},getTargetAddress(A,e,t,i){const n=e[r.Qy];return n[r.Dr]?this.getViewAddress(n):0===n.byteLength?0:this.getShadowAddress(A,e,t,i)},getBufferAddress:A=>0}});function a(A,e){return(0,s.ZG)(A,e,(A=>A.address))}const o={Normal:0,Scratch:1}},4936:(A,e,t)=>{var i=t(6560),n=t(8e3);(0,i.co)({init(){this.abandoned=!1,this.destructors=[],this.nextValueIndex=1,this.valueMap=new Map,this.valueIndices=new Map,this.options=null,this.executable=null,this.memory=null,this.table=null,this.initialTableLength=0,this.exportedFunctions=null},abandonModule(){if(!this.abandoned){for(const A of this.destructors.reverse())A();this.abandoned=!0}},...{imports:{initialize:{argType:""}},exports:{displayPanic:{argType:"ii"}},async initialize(A){this.setCustomWASI?.(A),await this.initPromise},getObjectIndex(A){if(null!=A){let e=this.valueIndices.get(A);return void 0===e&&(e=this.nextValueIndex++,this.valueIndices.set(A,e),this.valueMap.set(e,A)),e}return 0},fromWebAssembly(A,e){switch(A){case"v":case"s":return this.valueMap.get(e);case"i":return e;case"b":return!!e}},toWebAssembly(A,e){switch(A){case"v":case"s":return this.getObjectIndex(e);case"i":return e;case"b":return e?1:0}},exportFunction(A,e="",t="",i){return A?(...i)=>{i=i.map(((A,t)=>this.fromWebAssembly(e.charAt(t),A)));const n=A.apply(this,i);return this.toWebAssembly(t,n)}:()=>{}},importFunction(A,e="",t=""){return(...i)=>{i=i.map(((A,t)=>this.toWebAssembly(e.charAt(t),A)));const n=A.apply(this,i);return this.fromWebAssembly(t,n)}},exportFunctions(){const A={};for(const[e,{argType:t,returnType:i,alias:n}]of Object.entries(this.exports)){const r=this[n??e];r&&(A[`_${e}`]=this.exportFunction(r,t,i,e))}return A},importFunctions(A){for(const[e,{argType:t,returnType:i}]of Object.entries(this.imports)){const s=A[e];s&&((0,n.n8)(this,e,(0,n.vQ)(this.importFunction(s,t,i))),this.destructors.push((()=>this[e]=r)))}},async instantiateWebAssembly(A,e){const{memoryInitial:t,memoryMax:i,tableInitial:r,multithreaded:s}=this.options=e,a=await A,o="Response"===a[Symbol.toStringTag]?"Streaming":"",g=WebAssembly,I=g["compile"+o],Q=this.executable=await I(a),C=this.exportFunctions(),c={},B={},l={},E=this.exportedModules={env:c,wasi:B,wasi_snapshot_preview1:l};for(const{module:A,name:e,kind:t}of g.Module.imports(Q))"function"===t&&("env"===A?c[e]=C[e]??n.Ie:"wasi_snapshot_preview1"===A?l[e]=this.getWASIHandler(e):"wasi"===A&&(B[e]=this.getThreadHandler?.(e)??n.Ie));return this.memory=c.memory=new g.Memory({initial:t,maximum:i,shared:s}),this.table=c.__indirect_function_table=new g.Table({initial:r,element:"anyfunc",shared:s}),this.initialTableLength=r,g.instantiate(Q,E)},loadModule(A,e){return this.initPromise=(async()=>{const t=await this.instantiateWebAssembly(A,e),{exports:i}=t;if(this.importFunctions(i),this.customWASI){const A={...i,memory:this.memory},e=new Proxy(t,{get:(e,t)=>"exports"===t?A:e[t]});this.customWASI.initialize?.(e)}this.initialize()})()},displayPanic(A,e){const t=new Uint8Array(this.memory.buffer,A,e),i=(0,n.g7)(t);console.error(`Zig panic: ${i}`)}}});const r=()=>{throw new Error("Module was abandoned")}},9268:(A,e,t)=>{var i=t(1388),n=t(6560),r=t(4540);(0,n.co)({linkVariables(A){if(!this.memory)return void(this.initPromise=this.initPromise.then((()=>this.linkVariables(A))));const e=this.getCopyFunction();for(const{object:t,handle:n}of this.variables){const s=t[r.Qy],a=n;let o=t[r.Qy]=this.obtainZigView(a,s.byteLength);A&&e(o,s),t.constructor[r.fV]?.save?.(o,t),this.destructors.push((()=>{o=this.restoreView(t[r.Qy]);const A=t[r.Qy]=this.allocateMemory(o.bytelength);e(A,o)}));const g=A=>{const e=A[r._f];if(e){const A=o.byteOffset;for(const t of Object.values(e))if(t){const e=t[r.Qy];if(e.buffer===s.buffer){const i=A+e.byteOffset-s.byteOffset;t[r.Qy]=this.obtainView(o.buffer,i,e.byteLength),t.constructor[r.fV]?.save?.(o,t),g(t)}}}};g(t),t[r.g9]?.((function(){this[r.q6]()}),i.F7.IgnoreInactive)}},imports:{recreateAddress:{argType:"i",returnType:"i"}}})},7409:(A,e,t)=>{var i=t(1388),n=t(6560),r=t(4540),s=t(8e3);(0,n.co)({updatePointerAddresses(A,e){const t=new Map,n=new Map,a=[],o=function(A){const e=this[r.C7];if(void 0===t.get(e)){const A=e[r._f][0];if(A){const i={target:A,writable:!e.constructor.const},g=A[r.Qy];if(g[r.Dr])t.set(e,null);else{t.set(e,A);const I=n.get(g.buffer);if(I){const A=Array.isArray(I)?I:[I],e=(0,s.ZG)(A,g.byteOffset,(A=>A.target[r.Qy].byteOffset));A.splice(e,0,i),Array.isArray(I)||(n.set(g.buffer,A),a.push(A))}else n.set(g.buffer,i);A[r.g9]?.(o,0)}}}},g=i.F7.IgnoreRetval|i.F7.IgnoreInactive;e[r.g9](o,g);const I=this.findTargetClusters(a),Q=new Map;for(const A of I)for(const e of A.targets)Q.set(e,A);for(const[e,i]of t)if(i){const t=Q.get(i),n=t?.writable??!e.constructor.const;e[r.BD]=this.getTargetAddress(A,i,t,n),r.pi in e&&(e[r.pi]=i.length)}},updatePointerTargets(A,e,t=!1){const n=new Map,s=function(e){const t=this[r.C7];if(!n.get(t)){n.set(t,!0);const a=t[r._f][0],o=a&&e&i.F7.IsImmutable?a:t[r.q6](A,!0,!(e&i.F7.IsInactive)),g=t.constructor.const?i.F7.IsImmutable:0;g&i.F7.IsImmutable||a&&!a[r.Qy][r.Dr]&&a[r.g9]?.(s,g),o!==a&&o&&!o[r.Qy][r.Dr]&&o?.[r.g9]?.(s,g)}},a=t?i.F7.IgnoreRetval:0;e[r.g9](s,a)},findTargetClusters(A){const e=[];for(const t of A){let A=null,i=0,n=0,s=null;for(const{target:a,writable:o}of t){const t=a[r.Qy],{byteOffset:g,byteLength:I}=t,Q=g+I;let C=!0;A&&(n>g?(s?s.writable||=o:(s={targets:[A],start:i,end:n,address:void 0,misaligned:void 0,writable:o},e.push(s)),s.targets.push(a),Q>n?s.end=Q:C=!1):s=null),C&&(A=a,i=g,n=Q)}}return e}})},3586:(A,e,t)=>{t(1388);var i=t(6560),n=t(8e3);(0,i.co)({init(){this.consoleObject=null,this.consolePending=[],this.consoleTimeout=0},writeToConsole(A){try{const e=new Uint8Array(A.buffer,A.byteOffset,A.byteLength).slice(),t=e.lastIndexOf(10);if(-1===t)this.consolePending.push(e);else{const A=e.subarray(0,t),i=e.subarray(t+1);this.writeToConsoleNow([...this.consolePending,A]),this.consolePending.splice(0),i.length>0&&this.consolePending.push(i)}return clearTimeout(this.consoleTimeout),this.consoleTimeout=0,this.consolePending.length>0&&(this.consoleTimeout=setTimeout((()=>{this.writeToConsoleNow(this.consolePending),this.consolePending.splice(0)}),250)),!0}catch(A){return console.error(A),!1}},writeToConsoleNow(A){const e=this.consoleObject??globalThis.console;e.log?.call?.(e,(0,n.g7)(A))},flushConsole(){this.consolePending.length>0&&(this.writeToConsoleNow(this.consolePending),this.consolePending.splice(0),clearTimeout(this.consoleTimeout))},imports:{flushStdout:{argType:"",returnType:""}}})},2436:(A,e,t)=>{var i=t(6560),n=t(8e3);(0,i.co)({...{exports:{allocateJsThunk:{argType:"ii",returnType:"i"},freeJsThunk:{argType:"ii",returnType:"i"}},init(){this.thunkSources=[],this.thunkMap=new Map},addJsThunkSource(){const{memoryInitial:A,memoryMax:e,tableInitial:t,multithreaded:i}=this.options,r=WebAssembly,s={},a={},o={env:s,wasi:{},wasi_snapshot_preview1:a};for(const{module:A,name:e,kind:t}of r.Module.imports(this.executable))"function"===t&&("env"===A?s[e]=n.Ie:"wasi_snapshot_preview1"===A&&(a[e]=n.Ie));s.memory=new r.Memory({initial:A,maximum:e,shared:i});const g=s.__indirect_function_table=new r.Table({initial:t,element:"anyfunc"}),{exports:I}=new r.Instance(this.executable,o),{createJsThunk:Q,destroyJsThunk:C}=I,c={thunkCount:0,createJsThunk:Q,destroyJsThunk:C,table:g};return this.thunkSources.unshift(c),c},allocateJsThunk(A,e){let t,i=0;for(t of this.thunkSources){i=t.createJsThunk(A,e);break}i||(t=this.addJsThunkSource(),i=t.createJsThunk(A,e));const n=t.table.get(i);let r=0;for(let A=this.table.length-1;A>=this.initialTableLength;A--)if(!this.table.get(A)){r=A;break}return r||(r=this.table.length,this.table.grow(8)),this.table.set(r,n),t.thunkCount++,this.thunkMap.set(n,{source:t,sourceAddress:i}),r},freeJsThunk(A,e){let t=0;const i=this.table.get(e);this.table.set(e,null);const n=this.thunkMap.get(i);if(n){const{source:e,sourceAddress:r}=n;if(t=e.destroyJsThunk(A,r),0==--e.thunkCount){const A=this.thunkSources.indexOf(e);-1!==A&&this.thunkSources.splice(A,1)}this.thunkMap.delete(i)}return t}}})},8738:(A,e,t)=>{var i=t(1388),n=t(6560),r=t(4762),s=t(4540),a=t(8e3);(0,n.co)({init(){this.viewMap=new WeakMap},extractView(A,e,t=g){const{type:n,byteSize:I,constructor:Q}=A;let C;const c=e?.[Symbol.toStringTag];if(c&&("DataView"===c?C=this.registerView(e):"ArrayBuffer"===c?C=this.obtainView(e,0,e.byteLength):(c&&c===Q[s.pM]?.name||"Uint8ClampedArray"===c&&Q[s.pM]===Uint8Array)&&(C=this.obtainView(e.buffer,e.byteOffset,e.byteLength))),!C){const t=e?.[s.Qy];if(t){const{constructor:s,instance:{members:[o]}}=A;if((0,a.pU)(e,s))return t;if(function(A){return A===i.ev.Array||A===i.ev.Vector||A===i.ev.Slice}(n)){const{byteSize:s,structure:{constructor:g}}=o,Q=(0,a.be)(e,g);if(void 0!==Q){if(n===i.ev.Slice||Q*s===I)return t;throw new r.Y8(A,null,e)}}}}return C?void 0!==I&&o(C,A):t?.(A,e),C},assignView(A,e,t,n,a){const{byteSize:g,type:I}=t,Q=g??1;if(A[s.Qy]){const n=I===i.ev.Slice?Q*A.length:Q;if(e.byteLength!==n)throw new r.t7(t,e,A);const a={[s.Qy]:e};A.constructor[s.fd]?.validateData?.(a,A.length),A[s.sF](a)}else{void 0!==g&&o(e,t);const i=e.byteLength/Q,r={[s.Qy]:e};A.constructor[s.fd]?.validateData?.(r,i),a&&(n=!0),A[s.IW](n?null:e,i,a),n&&A[s.sF](r)}},findViewAt(A,e,t){let i,n=this.viewMap.get(A);if(n)if(n instanceof DataView)if(n.byteOffset===e&&n.byteLength===t)i=n,n=null;else{const e=n,t=`${e.byteOffset}:${e.byteLength}`;n=new Map([[t,e]]),this.viewMap.set(A,n)}else i=n.get(`${e}:${t}`);return i?.[s.Dr]?.address===a.Y$&&(i=null),{existing:i,entry:n}},obtainView(A,e,t){const{existing:i,entry:n}=this.findViewAt(A,e,t);let r;return i||(r=new DataView(A,e,t),n?n.set(`${e}:${t}`,r):this.viewMap.set(A,r),A!==this.memory?.buffer&&A!==this.usizeMaxBuffer||(r[s.Dr]={address:e,len:t}),r)},registerView(A){if(!A[s.Dr]){const{buffer:e,byteOffset:t,byteLength:i}=A,{existing:n,entry:r}=this.findViewAt(e,t,i);if(n)return n;r?r.set(`${t}:${i}`,A):this.viewMap.set(e,A)}return A},allocateMemory(A,e=0,t=null){return t?.alloc?.(A,e)??this.allocateJSMemory(A,e)},...{allocateJSMemory(A,e){return this.obtainView(new ArrayBuffer(A),0,A)},restoreView(A){const e=A?.[s.Dr];return e?.len>0&&0===A.buffer.byteLength&&(A=this.obtainZigView(e.address,e.len),e.align&&(A[s.Dr].align=e.align)),A},defineRestorer(){const A=this;return{value(){const e=this[s.Qy],t=A.restoreView(e);if(e!==t){const A=this[s.KK]??this;return A[s.Qy]=t,A.constructor[s.fV]?.save?.(t,A[s.rG]??A),!0}return!1}}}}});function o(A,e){const{byteSize:t,type:n}=e;if(!(n===i.ev.Slice?A.byteLength%t==0:A.byteLength===t))throw new r.t7(e,A)}function g(A){throw new r.Zb(A)}},9499:(A,e,t)=>{var i=t(6560),n=t(4762);(0,i.co)({...{init(){this.customWASI=null},setCustomWASI(A){if(A&&this.executable)throw new Error("Cannot set WASI interface after compilation has already begun");this.customWASI=A},getWASIHandler(A){const e=this.customWASI?.wasiImport?.[A];if(e)return e;switch(A){case"fd_write":return(A,e,t,i)=>{if(1===A||2===A){const A=new DataView(this.memory.buffer);let n=0;for(let i=0,r=e;i<t;i++,r+=8){const e=A.getUint32(r,!0),t=A.getUint32(r+4,!0);if(t>0){const A=new DataView(this.memory.buffer,e,t);this.writeToConsole(A),n+=t}}return A.setUint32(i,n,!0),0}return 38};case"fd_prestat_get":return()=>8;case"proc_exit":return A=>{throw new n.Jc(A)};case"random_get":return(A,e)=>{const t=new DataView(this.memory.buffer,A,e);for(let A=0;A<e;A++)t.setUint8(A,Math.floor(256*Math.random()));return 0};default:return()=>38}}}})},1432:(A,e,t)=>{var i=t(6560),n=t(4762),r=t(4540);(0,i.co)({makeReadOnly(A){o(A)}});const s=Object.getOwnPropertyDescriptors,a=Object.defineProperty;function o(A){const e=A[r.C7];if(e)g(e,["length"]);else{const e=A[r.sO];e?(g(e),function(A){a(A,"set",{value:n.V0});const e=A.get;a(A,"get",{value:function(A){const t=e.call(this,A);return null===t?.[r.KK]&&o(t),t}})}(e)):g(A)}}function g(A,e=[]){const t=s(A.constructor.prototype);for(const[i,r]of Object.entries(t))r.set&&!e.includes(i)&&(r.set=n.V0,a(A,i,r));a(A,r.KK,{value:A})}},4773:(A,e,t)=>{t.d(e,{M:()=>n});var i=t(6560);function n(){return new((0,i.NP)())}},1454:(A,e,t)=>{var i=t(6560),n=t(4540),r=t(8e3);(0,i.co)({defineArrayEntries:()=>(0,r.vQ)(o),defineArrayIterator:()=>(0,r.vQ)(s)});function s(){const A=this[n.sO]??this,e=this.length;let t=0;return{next(){let i,n;if(t<e){const e=t++;i=A.get(e),n=!1}else n=!0;return{value:i,done:n}}}}function a(A){const e=(0,r.L9)(A),t=this[n.sO]??this,i=this.length;let s=0;return{next(){let A,n;if(s<i){const i=s++;A=[i,e((()=>t.get(i)))],n=!1}else n=!0;return{value:A,done:n}}}}function o(A){return{[Symbol.iterator]:a.bind(this,A),length:this.length}}},6402:(A,e,t)=>{var i=t(6560),n=t(4540),r=t(8e3);(0,i.co)({defineStructEntries:()=>(0,r.vQ)(s),defineStructIterator:()=>(0,r.vQ)(a)});function s(A){return{[Symbol.iterator]:o.bind(this,A),length:this[n.n5].length}}function a(A){return s.call(this,A)[Symbol.iterator]()}function o(A){const e=(0,r.L9)(A),t=this,i=this[n.n5];let s=0;return{next(){let A,n;if(s<i.length){const r=i[s++];A=[r,e((()=>t[r]))],n=!1}else n=!0;return{value:A,done:n}}}}},5940:(A,e,t)=>{var i=t(6560),n=t(4540),r=t(8e3);(0,i.co)({defineUnionEntries:()=>(0,r.vQ)(s),defineUnionIterator:()=>(0,r.vQ)(a)});function s(A){return{[Symbol.iterator]:o.bind(this,A),length:this[n.n5].length}}function a(A){return s.call(this,A)[Symbol.iterator]()}function o(A){const e=(0,r.L9)(A),t=this,i=this[n.n5],s=this[n.XS];let a=0;return{next(){let A,n;if(a<i.length){const r=i[a++];A=[r,e((()=>s[r].call(t)))],n=!1}else n=!0;return{value:A,done:n}}}}},804:(A,e,t)=>{var i=t(6560),n=t(8e3);(0,i.co)({defineVectorEntries:()=>(0,n.vQ)(a),defineVectorIterator:()=>(0,n.vQ)(r)});function r(){const A=this,e=this.length;let t=0;return{next(){let i,n;if(t<e){const e=t++;i=A[e],n=!1}else n=!0;return{value:i,done:n}}}}function s(){const A=this,e=this.length;let t=0;return{next(){let i,n;if(t<e){const e=t++;i=[e,A[e]],n=!1}else n=!0;return{value:i,done:n}}}}function a(){return{[Symbol.iterator]:s.bind(this),length:this.length}}},9098:(A,e,t)=>{t.d(e,{E:()=>n});var i=t(1388);(0,t(6560).co)({defineMember(A,e=!0){if(!A)return{};const{type:t,structure:n}=A,r=this[`defineMember${i.hQ[t]}`].call(this,A);if(e&&n){const{type:e}=n,t=this[`transformDescriptor${i.EK[e]}`];if(t)return t.call(this,r,A)}return r}});function n(A,{get:e,set:t}){return void 0!==A?{get:function(){return e.call(this,A)},set:t?function(e,i){return t.call(this,A,e,i)}:void 0}:{get:e,set:t}}},9494:(A,e,t)=>{var i=t(6560),n=t(4762),r=t(8e3);(0,i.co)({defineBase64(A){const e=this;return(0,r.NV)({get(){return(0,r.WG)(this.dataView)},set(t,i){if("string"!=typeof t)throw new n.Pd("string",t);const s=(0,r.y4)(t);e.assignView(this,s,A,!1,i)}})}})},337:(A,e,t)=>{(0,t(6560).co)({defineMemberBool(A){return this.defineMemberUsing(A,this.getAccessor)}})},3971:(A,e,t)=>{var i=t(6560),n=t(4762),r=t(8e3);(0,i.co)({defineClampedArray(A){const e=this,t=Uint8ClampedArray;return(0,r.NV)({get(){const A=this.typedArray;return new t(A.buffer,A.byteOffset,A.length)},set(i,r){if(i?.[Symbol.toStringTag]!==t.name)throw new n.Pd(t.name,i);const s=new DataView(i.buffer,i.byteOffset,i.byteLength);e.assignView(this,s,A,!0,r)}})}})},7431:(A,e,t)=>{var i=t(6560),n=t(4762),r=t(4540),s=t(8e3);(0,i.co)({defineDataView(A){const e=this;return(0,s.NV)({get(){this[r.zN]?.();return this[r.Qy]},set(t,i){if("DataView"!==t?.[Symbol.toStringTag])throw new n.Pd("DataView",t);e.assignView(this,t,A,!0,i)}})}})},7591:(A,e,t)=>{(0,t(6560).co)({defineMemberFloat(A){return this.defineMemberUsing(A,this.getAccessor)}})},6717:(A,e,t)=>{var i=t(1388),n=t(6560),r=t(4762),s=t(4540),a=t(9098);(0,n.co)({defineMemberObject:A=>(0,a.E)(A.slot,{get:A.flags&i.pK.IsString?I:A.structure.flags&i.yi.HasValue?o:g,set:A.flags&i.pK.IsReadOnly?r.V0:Q})});function o(A){return g.call(this,A).$}function g(A){return this[s._f][A]??this[s.tZ](A)}function I(A){const e=g.call(this,A).$;return e?e.string:e}function Q(A,e,t){g.call(this,A)[s.Zv](e,t)}},2164:(A,e,t)=>{var i=t(6560),n=t(4762),r=t(4540);(0,i.co)({...{defineMemberUsing(A,e){const{littleEndian:t}=this,{bitOffset:i,byteSize:s}=A,a=e.call(this,"get",A),o=e.call(this,"set",A);if(void 0!==i){const A=i>>3;return{get:function(){try{return a.call(this[r.Qy],A,t)}catch(e){if(e instanceof TypeError&&this[r.zN]?.())return a.call(this[r.Qy],A,t);throw e}},set:function(e){try{return o.call(this[r.Qy],A,e,t)}catch(i){if(i instanceof TypeError&&this[r.zN]?.())return o.call(this[r.Qy],A,e,t);throw i}}}}return{get:function(e){try{return a.call(this[r.Qy],e*s,t)}catch(i){if(i instanceof TypeError&&this[r.zN]?.())return a.call(this[r.Qy],e*s,t);throw(0,n.qx)(A,e,i)}},set:function(e,i){try{return o.call(this[r.Qy],e*s,i,t)}catch(a){if(a instanceof TypeError&&this[r.zN]?.())return o.call(this[r.Qy],e*s,i,t);throw(0,n.qx)(A,e,a)}}}}}})},5496:(A,e,t)=>{var i=t(6560),n=t(4762),r=t(4540),s=t(8e3);(0,i.co)({defineString(A){const e=this,{byteSize:t}=A.instance.members[0],i="utf-"+8*t;return(0,s.NV)({get(){let A=(0,s.g7)(this.typedArray,i);const e=this.constructor[r.fd]?.value;return void 0!==e&&A.charCodeAt(A.length-1)===e&&(A=A.slice(0,-1)),A},set(t,a){if("string"!=typeof t)throw new n.Pd("string",t);const o=this.constructor[r.fd]?.value;void 0!==o&&t.charCodeAt(t.length-1)!==o&&(t+=String.fromCharCode(o));const g=(0,s.wx)(t,i),I=new DataView(g.buffer);e.assignView(this,I,A,!1,a)}})}})},6135:(A,e,t)=>{var i=t(6560),n=t(3456);(0,i.co)({defineToJSON:()=>({value(){return(0,n.F)(this,!0)}})})},9813:(A,e,t)=>{var i=t(6560),n=t(4762),r=t(4540),s=t(9098);(0,i.co)({defineMemberType(A,e){const{slot:t}=A;return(0,s.E)(t,{get(A){const e=this[r._f][A];return e?.constructor},set:n.V0})}})},3793:(A,e,t)=>{var i=t(6560),n=t(4762),r=t(8e3);(0,i.co)({defineTypedArray(A){const e=this,t=this.getTypedArray(A);return(0,r.NV)({get(){const A=this.dataView,e=A.byteLength/t.BYTES_PER_ELEMENT;return new t(A.buffer,A.byteOffset,e)},set(i,r){if(i?.[Symbol.toStringTag]!==t.name)throw new n.Pd(t.name,i);const s=new DataView(i.buffer,i.byteOffset,i.byteLength);e.assignView(this,s,A,!0,r)}})}})},8305:(A,e,t)=>{(0,t(6560).co)({defineMemberUint(A){let e=this.getAccessor;return this.runtimeSafety&&(e=this.addRuntimeCheck(e)),e=this.addIntConversion(e),this.defineMemberUsing(A,e)}})},3456:(A,e,t)=>{t.d(e,{F:()=>g});var i=t(1388),n=t(6560),r=t(4540),s=t(8e3);(0,n.co)({defineValueOf:()=>({value(){return g(this,!1)}})});const a=BigInt(Number.MAX_SAFE_INTEGER),o=BigInt(Number.MIN_SAFE_INTEGER);function g(A,e){const t={error:e?"return":"throw"},n=(0,s.L9)(t),g=new Map,I=function(A){const s="function"==typeof A?i.ev.Struct:A?.constructor?.[r.ZE];if(void 0===s){if(e){if("bigint"==typeof A&&o<=A&&A<=a)return Number(A);if(A instanceof Error)return{error:A.message}}return A}let Q=g.get(A);if(void 0===Q){let e;switch(s){case i.ev.Struct:e=A[r.lf](t),Q=A.constructor[r.Wg]&i.sU.IsTuple?[]:{};break;case i.ev.Union:e=A[r.lf](t),Q={};break;case i.ev.Array:case i.ev.Vector:case i.ev.Slice:e=A[r.lf](),Q=[];break;case i.ev.Pointer:try{Q=A["*"]}catch(A){Q=Symbol.for("inaccessible")}break;case i.ev.Enum:Q=n((()=>String(A)));break;case i.ev.Opaque:Q={};break;default:Q=n((()=>A.$))}if(Q=I(Q),g.set(A,Q),e)for(const[A,t]of e)Q[A]=I(t)}return Q};return I(A)}},8539:(A,e,t)=>{var i=t(6560),n=t(4762);(0,i.co)({defineMemberVoid(A,e){const{bitOffset:t}=A;return{get(){},set:void 0!==t?function(e){if(void 0!==e)throw new n.UQ(A)}:function(e,t){if(void 0!==t)throw new n.UQ(A);if(e<0||e>=this.length)throw new n._l(A,e)}}}})},7679:(A,e,t)=>{var i=t(1388),n=t(6560),r=t(4762),s=t(4540),a=t(8e3);(0,n.co)({defineStructure(A){const{type:e,byteSize:t}=A,n=this[`define${i.EK[e]}`],r=[],o={},g={dataView:this.defineDataView(A),base64:this.defineBase64(A),toJSON:this.defineToJSON(),valueOf:this.defineValueOf(),[s.KK]:{value:null},[s.Bl]:(0,a.vQ)(o),[s.Rk]:(0,a.vQ)(r),[s.sF]:this.defineCopier(t),[s.zN]:this.defineRestorer()},I=A.constructor=n.call(this,A,g);for(const[A,e]of Object.entries(g)){const t=e?.set;t&&!o[A]&&"$"!==A&&(o[A]=t,r.push(A))}return(0,a.ny)(I.prototype,g),I},finalizeStructure(A){const{name:e,type:t,constructor:n,align:r,byteSize:o,flags:g,signature:I,static:{members:Q,template:C}}=A,c=[],B={name:(0,a.vQ)(e),toJSON:this.defineToJSON(),valueOf:this.defineValueOf(),[s.J2]:(0,a.vQ)(I),[s.M0]:(0,a.vQ)(this),[s.Ec]:(0,a.vQ)(r),[s.SK]:(0,a.vQ)(o),[s.ZE]:(0,a.vQ)(t),[s.Wg]:(0,a.vQ)(g),[s.n5]:(0,a.vQ)(c),[s.pM]:(0,a.vQ)(this.getTypedArray(A)),[Symbol.iterator]:this.defineStructIterator(),[s.lf]:this.defineStructEntries(),[s.n5]:(0,a.vQ)(c)},l={[Symbol.toStringTag]:(0,a.vQ)(e)};for(const A of Q){const{name:e,slot:t,flags:n}=A;if(A.structure.type===i.ev.Function){let r=C[s._f][t];n&i.pK.IsString&&(r[s.fM]=!0),B[e]=(0,a.vQ)(r),r.name||(0,a.n8)(r,"name",(0,a.vQ)(e));const[o,g]=/^(get|set)\s+([\s\S]+)/.exec(e)?.slice(1)??[],I="get"===o?0:1;if(o&&r.length===I){B[g]||={};B[g][o]=r}if(A.flags&i.pK.IsMethod){const A=function(...A){try{return r(this,...A)}catch(A){throw A[s.q6]?.(1),A}};if((0,a.ny)(A,{name:(0,a.vQ)(e),length:(0,a.vQ)(r.length-1)}),l[e]=(0,a.vQ)(A),o&&A.length===I){(l[g]||={})[o]=A}}}else B[e]=this.defineMember(A),c.push(e)}B[s._f]=c.length>0&&(0,a.vQ)(C[s._f]);const E=this[`finalize${i.EK[t]}`];!1!==E?.call(this,A,B,l)&&((0,a.ny)(n.prototype,l),(0,a.ny)(n,B))},createConstructor(A,e={}){const{type:t,byteSize:n,align:o,flags:g,instance:{members:I,template:Q}}=A,{onCastError:C}=e;let c;if(Q?.[s._f]){const A=I.filter((A=>A.flags&i.pK.IsReadOnly));A.length>0&&(c=A.map((A=>A.slot)))}const B=new a.UF,l=this,E=function(e,a={}){const{allocator:I}=a,u=this instanceof E;let f,h;if(u){if(0===arguments.length)throw new r.ci(A);if(f=this,g&i.yi.HasSlot&&(f[s._f]={}),s.IW in f)f[s.Zv](e,I),h=f[s.Qy];else{const A=t!==i.ev.Pointer?I:null;f[s.Qy]=h=l.allocateMemory(n,o,A)}}else{if(s.mL in E&&(f=E[s.mL].call(this,e,a),!1!==f))return f;if(h=l.extractView(A,e,C),f=B.find(h))return f;f=Object.create(E.prototype),s.IW in f?l.assignView(f,h,A,!1,!1):f[s.Qy]=h,g&i.yi.HasSlot&&(f[s._f]={})}if(c)for(const A of c)f[s._f][A]=Q[s._f][A];return f[s.f$]?.(),u&&(s.IW in f||f[s.Zv](e,I)),s.vm in f&&(f=f[s.vm]()),B.save(h,f)};return(0,a.n8)(E,s.fV,(0,a.vQ)(B)),Q?.[s.Qy]&&(0,a.n8)(Q,s.zN,this.defineRestorer()),E},createApplier(A){const{instance:{template:e}}=A;return function(t,i){const n=Object.keys(t),a=this[s.Rk],o=this[s.Bl];for(const e of n)if(!(e in o))throw new r.xH(A,e);let g=0,I=0,Q=0,C=0;for(const A of a){const e=o[A];e.special?A in t&&C++:(g++,A in t?I++:e.required&&Q++)}if(0!==Q&&0===C){const e=a.filter((A=>o[A].required&&!(A in t)));throw new r.SB(A,e)}if(C+I>n.length)for(const A of a)A in t&&(n.includes(A)||n.push(A));I<g&&0===C&&e&&e[s.Qy]&&this[s.sF](e);for(const A of n){o[A].call(this,t[A],i)}return n.length}},getTypedArray(A){const{type:e,instance:t}=A;if(void 0!==e&&t){const[A]=t.members;switch(e){case i.ev.Enum:case i.ev.ErrorSet:case i.ev.Primitive:{const{byteSize:e,type:t}=A,n=t===i.Z9.Float?"Float":t===i.Z9.Int?"Int":"Uint",r=e>4&&t!==i.Z9.Float?"Big":"";return globalThis[r+n+8*e+"Array"]}case i.ev.Array:case i.ev.Slice:case i.ev.Vector:return this.getTypedArray(A.structure)}}}})},2244:(A,e,t)=>{var i=t(1388),n=t(6560),r=t(4762),s=t(4540),a=t(8e3);(0,n.co)({defineArgStruct(A,e){const{flags:t,byteSize:n,align:o,length:g,instance:{members:I}}=A,Q=this,C=I.slice(1),c=function(A,e){const a=this instanceof c;let I,B;if(a?(I=this,B=Q.allocateMemory(n,o)):(I=Object.create(c.prototype),B=A),I[s.Qy]=B,t&i.yi.HasSlot&&(I[s._f]={}),!a)return I;{let n;if(t&i.e2.HasOptions&&A.length===g+1&&(n=A.pop()),A.length!==g)throw new r.nz(g,A.length);t&i.e2.IsAsync&&(I[s.vm]=null),Q.copyArguments(I,A,C,n,e)}};for(const A of I)e[A.name]=this.defineMember(A);const B=e.retval.set;return e.length=(0,a.vQ)(C.length),e[s.tZ]=t&i.yi.HasObject&&this.defineVivificatorStruct(A),e[s.g9]=t&i.yi.HasPointer&&this.defineVisitorArgStruct(I),e[s.zg]=(0,a.vQ)((function(A){B.call(this,A,this[s.Gz])})),e[Symbol.iterator]=this.defineArgIterator?.(C),e[s.sF]=this.defineRetvalCopier(I[0]),c},finalizeArgStruct(A,e){const{flags:t}=A;e[s.du]=(0,a.vQ)(!!(t&i.e2.IsThrowing))}})},9433:(A,e,t)=>{var i=t(6560),n=t(4540),r=t(8e3);(0,i.co)({defineFinalizerArray:({get:A,set:e})=>({value(){const t=new Proxy(this,s);return(0,r.ny)(this,{[n.rG]:{value:t},get:{value:A.bind(this)},set:e&&{value:e.bind(this)}}),t}}),defineVivificatorArray(A){const{instance:{members:[e]}}=A,{byteSize:t,structure:i}=e,r=this;return{value:function(A){const{constructor:e}=i;this[n.zN]?.();const s=this[n.Qy],a=s.byteOffset+t*A,o=r.obtainView(s.buffer,a,t);return this[n._f][A]=e.call(n.f7,o)}}}});const s={get(A,e){const t="symbol"==typeof e?0:0|e;return 0!==t||t==e?A.get(t):e===n.sO?A:A[e]},set(A,e,t){const i="symbol"==typeof e?0:0|e;return 0!==i||i==e?A.set(i,t):A[e]=t,!0},deleteProperty(A,e){const t="symbol"==typeof e?0:0|e;return 0===t&&t!=e&&(delete A[e],!0)},has(A,e){const t="symbol"==typeof e?0:0|e;return 0!==t||t==e?t>=0&&t<A.length:A[e]},ownKeys(A){const e=[];for(let t=0,i=A.length;t<i;t++)e.push(`${t}`);return e.push("length",n.rG),e},getOwnPropertyDescriptor(A,e){const t="symbol"==typeof e?0:0|e;return 0===t&&t!=e?Object.getOwnPropertyDescriptor(A,e):t>=0&&t<A.length?{value:A.get(t),enumerable:!0,writable:!0,configurable:!0}:void 0}}},3509:(A,e,t)=>{var i=t(1388),n=t(6560),r=t(4762),s=t(4540),a=t(8e3);(0,n.co)({defineArray(A,e){const{length:t,instance:{members:[n]},flags:o}=A,g=this.createApplier(A),I=this.defineMember(n),{set:Q}=I,C=this.createConstructor(A),c=function(e,n){if((0,a.pU)(e,C))this[s.sF](e),o&i.yi.HasPointer&&this[s.g9]("copy",i.F7.Vivificate,e);else if("string"==typeof e&&o&i.uE.IsString&&(e={string:e}),e?.[Symbol.iterator]){if((e=(0,a.FU)(e)).length!==t)throw new r.Y8(A,this,e);let i=0;for(const A of e)Q.call(this,i++,A,n)}else if(e&&"object"==typeof e){if(0===g.call(this,e))throw new r.L2(A,e)}else if(void 0!==e)throw new r.L2(A,e)};return e.$={get:a.V_,set:c},e.length=(0,a.vQ)(t),e.entries=e[s.lf]=this.defineArrayEntries(),o&i.uE.IsTypedArray&&(e.typedArray=this.defineTypedArray(A),o&i.uE.IsString&&(e.string=this.defineString(A)),o&i.uE.IsClampedArray&&(e.clampedArray=this.defineClampedArray(A))),e[Symbol.iterator]=this.defineArrayIterator(),e[s.Zv]=(0,a.vQ)(c),e[s.vm]=this.defineFinalizerArray(I),e[s.tZ]=o&i.yi.HasObject&&this.defineVivificatorArray(A),e[s.g9]=o&i.yi.HasPointer&&this.defineVisitorArray(),C},finalizeArray(A,e){const{flags:t,instance:{members:[n]}}=A;e.child=(0,a.vQ)(n.structure.constructor),e[s.fd]=t&i.uE.HasSentinel&&this.defineSentinel(A)}})},8371:(A,e,t)=>{var i=t(1388),n=t(6560),r=t(4762),s=t(4540),a=t(8e3);(0,n.co)({defineEnum(A,e){const{instance:{members:[t]}}=A,i=this.defineMember(t),{get:n,set:o}=i,{get:g}=this.defineMember(t,!1),I=this.createApplier(A),Q=["string","number","tagged union"],C=this.createConstructor(A,{onCastError(A,e){throw new r.is(A,Q,e)}});return e.$=i,e.toString=(0,a.vQ)(a.dI),e[Symbol.toPrimitive]={value(A){switch(A){case"string":case"default":return this.$[s.o_];default:return g.call(this)}}},e[s.Zv]=(0,a.vQ)((function(e){if(e&&"object"==typeof e){if(0===I.call(this,e))throw new r.is(A,Q,e)}else void 0!==e&&o.call(this,e)})),C},finalizeEnum(A,e){const{flags:t,constructor:n,instance:{members:[r]},static:{members:o,template:g}}=A,I=g[s._f],{get:Q,set:C}=this.defineMember(r,!1),c={};for(const{name:A,flags:t,slot:n}of o)if(t&i.pK.IsPartOfSet){const t=I[n];(0,a.n8)(t,s.o_,(0,a.vQ)(A));const i=Q.call(t);e[A]={value:t,writable:!1},c[i]=t}e[s.mL]={value(A){if("string"==typeof A)return n[A];if("number"==typeof A||"bigint"==typeof A){let e=c[A];if(!e&&t&i.Q6.IsOpenEnded){e=new n(void 0),C.call(e,A);const t=`${A}`;(0,a.n8)(e,s.o_,(0,a.vQ)(t)),(0,a.n8)(n,t,(0,a.vQ)(e)),c[A]=e}return e}return A instanceof n?A:A?.[s.Dk]instanceof n&&A[s.Dk]}},e[s.pM]=(0,a.vQ)(this.getTypedArray(A))},transformDescriptorEnum(A,e){const{type:t,structure:n}=e;if(t===i.Z9.Object)return A;const s=function(A){const{constructor:e}=n,t=e(A);if(!t)throw new r.iS(n,A);return t},{get:a,set:o}=A;return{get:0===a.length?function(){const A=a.call(this);return s(A)}:function(A){const e=a.call(this,A);return s(e)},set:1===o.length?function(A){A=s(A)[Symbol.toPrimitive](),o.call(this,A)}:function(A,e){const t=s(e);o.call(this,A,t[Symbol.toPrimitive]())}}}})},903:(A,e,t)=>{var i=t(1388),n=t(6560),r=t(4762),s=t(4540),a=t(8e3);(0,n.co)({init(){this.ZigError=null,this.globalItemsByIndex={},this.globalErrorSet=null},defineErrorSet(A,e){const{instance:{members:[t]},byteSize:n,flags:g}=A;if(!this.ZigError){this.ZigError=class extends o{};const A={type:i.ev.ErrorSet,flags:i.Zm.IsGlobal,byteSize:n,name:"anyerror",instance:{members:[t]},static:{members:[],template:{SLOTS:{}}}},e=this.defineStructure(A);this.finalizeStructure(A),this.globalErrorSet=e}if(this.globalErrorSet&&g&i.Zm.IsGlobal)return this.globalErrorSet;const I=this.defineMember(t),{set:Q}=I,C=["string","number"],c=this.createApplier(A),B=this.createConstructor(A,{onCastError(A,e){throw new r.is(A,C,e)}});return e.$=I,e[s.Zv]=(0,a.vQ)((function(e){if(e instanceof B[s.tp])Q.call(this,e);else if(e&&"object"==typeof e&&!(0,r.FD)(e)){if(0===c.call(this,e))throw new r.is(A,C,e)}else void 0!==e&&Q.call(this,e)})),B},finalizeErrorSet(A,e){const{constructor:t,flags:n,instance:{members:[o]},static:{members:g,template:I}}=A;if(this.globalErrorSet&&n&i.Zm.IsGlobal)return!1;const Q=I?.[s._f]??{},C=n&i.Zm.IsGlobal?this.globalItemsByIndex:{},{get:c}=this.defineMember(o,!1);for(const{name:A,slot:t}of g){const i=Q[t],n=c.call(i);let r=this.globalItemsByIndex[n];const o=!!r;r||(r=new this.ZigError(A,n));const g=(0,a.vQ)(r);e[A]=g;const I=`${r}`;e[I]=g,C[n]=r,o||((0,a.ny)(this.globalErrorSet,{[A]:g,[I]:g}),this.globalErrorSet[s.n5].push(A),this.globalItemsByIndex[n]=r)}e[s.mL]={value:A=>"number"==typeof A?C[A]:"string"==typeof A?t[A]:A instanceof t[s.tp]?C[Number(A)]:(0,r.FD)(A)?t[`Error: ${A.error}`]:A instanceof Error&&t[`${A}`]},e[s.tp]=(0,a.vQ)(this.ZigError)},transformDescriptorErrorSet(A,e){const{type:t,structure:n}=e;if(t===i.Z9.Object)return A;const s=A=>{const{constructor:e,flags:t}=n,s=e(A);if(!s){if(t&i.Zm.IsGlobal&&"number"==typeof A){const e=new this.ZigError(`Unknown error: ${A}`,A);return this.globalItemsByIndex[A]=e,(0,a.n8)(this.globalErrorSet,`${e}`,(0,a.vQ)(e)),e}throw A instanceof Error?new r.Ho(n):new r.to(n,A)}return s},{get:o,set:g}=A;return{get:0===o.length?function(){const A=o.call(this);return s(A)}:function(A){const e=o.call(this,A);return s(e)},set:1===g.length?function(A){const e=s(A);A=Number(e),g.call(this,A)}:function(A,e){const t=s(e);e=Number(t),g.call(this,A,e)}}}});class o extends Error{constructor(A,e){super((0,r.a6)(A)),this.number=e,this.stack=void 0}[Symbol.toPrimitive](A){switch(A){case"string":case"default":return Error.prototype.toString.call(this,A);default:return this.number}}toJSON(){return{error:this.message}}}},3692:(A,e,t)=>{var i=t(1388),n=t(6560),r=t(4762),s=t(4540),a=t(8e3);(0,n.co)({defineErrorUnion(A,e){const{instance:{members:[t,n]},flags:o}=A,{get:g,set:I}=this.defineMember(t),{get:Q,set:C}=this.defineMember(n),{get:c,set:B}=this.defineMember(n,!1),l=t.type===i.Z9.Void,E=n.structure.constructor,u=function(){this[s.Ut](),this[s.g9]?.("clear")},f=this.createApplier(A),h=function(A,e){if((0,a.pU)(A,d))this[s.sF](A),o&i.yi.HasPointer&&(c.call(this)||this[s.g9]("copy",0,A));else if(A instanceof E[s.tp]&&E(A))C.call(this,A),u.call(this);else if(void 0!==A||l)try{I.call(this,A,e),B.call(this,0)}catch(e){if(A instanceof Error){const e=E(A)??E.Unexpected;if(!e)throw new r.Ho(n.structure);C.call(this,e),u.call(this)}else if((0,r.FD)(A))C.call(this,A),u.call(this);else{if(!A||"object"!=typeof A)throw e;if(0===f.call(this,A))throw e}}},{bitOffset:p,byteSize:y}=t,d=this.createConstructor(A);return e.$={get:function(){if(c.call(this))throw Q.call(this);return g.call(this)},set:h},e[s.Zv]=(0,a.vQ)(h),e[s.tZ]=o&i.yi.HasObject&&this.defineVivificatorStruct(A),e[s.Ut]=this.defineResetter(p/8,y),e[s.g9]=o&i.yi.HasPointer&&this.defineVisitorErrorUnion(t,c),d}})},7382:(A,e,t)=>{var i=t(1388),n=t(6560),r=t(4762),s=t(4540),a=t(8e3);(0,n.co)({defineFunction(A,e){const{instance:{members:[t],template:n},static:{template:o}}=A,g=new a.UF,{structure:{constructor:I}}=t,Q=this,C=function(e){const t=this instanceof C;let c,B;if(t){if(0===arguments.length)throw new r.ci(A);if("function"!=typeof e)throw new r.Pd("function",e);if(I[s.ZE]===i.ev.VariadicStruct||!o)throw new r.O0;c=Q.getFunctionThunk(e,o)}else{if(this!==s.M0)throw new r.Qm;c=e}if(B=g.find(c))return B;const l=I.prototype.length,E=t?Q.createInboundCaller(e,I):Q.createOutboundCaller(n,I);return(0,a.ny)(E,{length:(0,a.vQ)(l),name:(0,a.vQ)(t?e.name:"")}),Object.setPrototypeOf(E,C.prototype),E[s.Qy]=c,g.save(c,E),E};return Object.setPrototypeOf(C.prototype,Function.prototype),e.valueOf=e.toJSON=(0,a.vQ)(a.Ng),C},finalizeFunction(A,e,t){t[Symbol.toStringTag]=void 0}})},3750:(A,e,t)=>{var i=t(1388),n=t(6560),r=t(4540),s=t(8e3);(0,n.co)({defineOptional(A,e){const{instance:{members:[t,n]},flags:a}=A,{get:o,set:g}=this.defineMember(t),{get:I,set:Q}=this.defineMember(n),C=t.type===i.Z9.Void,c=function(A,e){(0,s.pU)(A,B)?(this[r.sF](A),a&i.yi.HasPointer&&I.call(this)&&this[r.g9]("copy",i.F7.Vivificate,A)):null===A?(Q.call(this,0),this[r.Ut]?.(),this[r.g9]?.("clear")):(void 0!==A||C)&&(g.call(this,A,e),a&i.Nt.HasSelector?Q.call(this,1):a&i.yi.HasPointer&&(I.call(this)||Q.call(this,13)))},B=A.constructor=this.createConstructor(A),{bitOffset:l,byteSize:E}=t;return e.$={get:function(){return I.call(this)?o.call(this):(this[r.g9]?.("clear"),null)},set:c},e[r.Zv]=(0,s.vQ)(c),e[r.Ut]=a&i.Nt.HasSelector&&this.defineResetter(l/8,E),e[r.tZ]=a&i.yi.HasObject&&this.defineVivificatorStruct(A),e[r.g9]=a&i.yi.HasPointer&&this.defineVisitorOptional(t,I),B}})},1425:(A,e,t)=>{var i=t(1388),n=t(6560),r=t(4762),s=t(4540),a=t(8e3);(0,n.co)({definePointer(A,e){const{flags:t,byteSize:n,instance:{members:[I]}}=A,{structure:c}=I,{type:B,flags:l,byteSize:E=1}=c,u=t&i.UT.HasLength?n/2:n,{get:f,set:h}=this.defineMember({type:i.Z9.Uint,bitOffset:0,bitSize:8*u,byteSize:u,structure:{byteSize:u}}),{get:p,set:y}=t&i.UT.HasLength?this.defineMember({type:i.Z9.Uint,bitOffset:8*u,bitSize:8*u,byteSize:u,structure:{flags:i.AD.IsSize,byteSize:u}}):{},d=function(A,e=!0,n=!0){if(e||this[s.Qy][s.Dr]){if(!n)return this[s._f][0]=void 0;{const e=G.child,n=f.call(this),r=t&i.UT.HasLength?p.call(this):B===i.ev.Slice&&l&i.tv.HasSentinel?k.findSentinel(n,e[s.fd].bytes)+1:1;if(n!==this[s.c6]||r!==this[s.uL]){const a=k.findMemory(A,n,r,e[s.SK]),o=a?e.call(s.M0,a):null;return this[s._f][0]=o,this[s.c6]=n,this[s.uL]=r,t&i.UT.HasLength&&(this[s.E2]=null),o}}}return this[s._f][0]},m=function(A){h.call(this,A),this[s.c6]=A},b=l&i.tv.HasSentinel?1:0,D=t&i.UT.HasLength||l&i.tv.HasSentinel?function(A){y?.call?.(this,A-b),this[s.uL]=A}:null,S=function(){const A=this[s.C7]??this,e=!A[s._f][0],n=d.call(A,null,e);if(!n){if(t&i.UT.IsNullable)return null;throw new r.BY}return t&i.UT.IsConst?Q(n):n},w=l&i.yi.HasValue?function(){return S.call(this).$}:S,v=t&i.UT.IsConst?r.V0:function(A){return S.call(this).$=A},k=this,x=function(e,n){const I=c.constructor;if(o(e,I)){if(!(t&i.UT.IsConst)&&e.constructor.const)throw new r.G9(A,e);e=e[s._f][0]}else if(t&i.UT.IsMultiple)g(e,I,t)&&(e=I(e[s._f][0][s.Qy]));else if(B===i.ev.Slice&&l&i.tv.IsOpaque&&e)if(e.constructor[s.ZE]===i.ev.Pointer)e=e[s.Qn]?.[s.Qy];else if(e[s.Qy])e=e[s.Qy];else if(e?.buffer instanceof ArrayBuffer&&!(e instanceof Uint8Array||e instanceof DataView)){const{byteOffset:A,byteLength:t}=e;void 0!==A&&void 0!==t&&(e=new DataView(e.buffer,A,t))}if(e instanceof I){e[s.zN]?.();const n=e[s.KK];if(n){if(!(t&i.UT.IsConst))throw new r.ck(A);e=n}}else if((0,a.pU)(e,I))e=I.call(s.M0,e[s.Qy]);else if(t&i.UT.IsSingle&&t&i.UT.IsMultiple&&e instanceof I.child)e=I(e[s.Qy]);else if(function(A,e){const t=A?.[Symbol.toStringTag];if(t){const i=e[s.pM];if(i)switch(t){case i.name:case"DataView":return!0;case"ArrayBuffer":return i===Uint8Array||i===Int8Array;case"Uint8ClampedArray":return i===Uint8Array}if(e.child&&void 0!==(0,a.be)(A,e.child))return!0}return!1}(e,I)){e=I(k.extractView(c,e))}else if(null==e||e[s.Qy]){if(!(void 0===e||t&i.UT.IsNullable&&null===e))throw new r.QB(A,e)}else{if(t&i.UT.IsSingle&&t&i.UT.IsMultiple&&"object"==typeof e&&!e[Symbol.iterator]){let A=!0;const t=I.prototype[s.Bl];for(const i of Object.keys(e)){const e=t[i];if(e?.special){A=!1;break}}A&&(e=[e])}if(s.pM in I&&e?.buffer&&e[Symbol.iterator])throw new r.QB(A,e);e=new I(e,{allocator:n})}const Q=e?.[s.Qy]?.[s.Dr];if(Q?.address===a.Y$)throw new r.xp(e);this[s.Qn]=e},G=this.createConstructor(A);return e["*"]={get:w,set:v},e.$={get:a.V_,set:x},e.length={get:function(){const A=S.call(this);return A?A.length:0},set:function(A){A|=0;const e=S.call(this);if(!e){if(0!==A)throw new r._L(A,0);return}if(e.length===A)return;e[s.zN]?.();const n=e[s.Qy],a=n[s.Dr];let o;if(!a)if(t&i.UT.HasLength)this[s.E2]||=e.length,o=this[s.E2];else{o=(n.buffer.byteLength-n.byteOffset)/E|0}if(A<0||A>o)throw new r._L(A,o);const g=A*E,I=a?k.obtainZigView(a.address,g):k.obtainView(n.buffer,n.byteOffset,g),Q=c.constructor;this[s._f][0]=Q.call(s.M0,I),D?.call?.(this,A)}},e.slice=B===i.ev.Slice&&{value(A,e){const t=this[s.Qn].slice(A,e);return new G(t)}},e.subarray=B===i.ev.Slice&&{value(A,e,t){const i=this[s.Qn].subarray(A,e,t);return new G(i)}},e[Symbol.toPrimitive]=B===i.ev.Primitive&&{value(A){return this[s.Qn][Symbol.toPrimitive](A)}},e[s.Zv]=(0,a.vQ)(x),e[s.vm]={value(){const A=B!==i.ev.Pointer?C:{};let e;B===i.ev.Function?(e=function(){},e[s.Qy]=this[s.Qy],e[s._f]=this[s._f],Object.setPrototypeOf(e,G.prototype)):e=this;const t=new Proxy(e,A);return Object.defineProperty(e,s.rG,{value:t}),t}},e[s.Qn]={get:S,set:function(A){if(void 0===A)return;const e=this[s.C7]??this;if(A){const t=A[s.Qy][s.Dr];if(t){const{address:e,js:i}=t;m.call(this,e),D?.call?.(this,A.length),i&&(A[s.Qy][s.Dr]=void 0)}else if(e[s.Qy][s.Dr])throw new r.x1}else e[s.Qy][s.Dr]&&(m.call(this,0),D?.call?.(this,0));e[s._f][0]=A??null,t&i.UT.HasLength&&(e[s.E2]=null)}},e[s.q6]=(0,a.vQ)(d),e[s.BD]={set:m},e[s.pi]={set:D},e[s.g9]=this.defineVisitor(),e[s.c6]=(0,a.vQ)(0),e[s.uL]=(0,a.vQ)(0),e[s.E2]=t&i.UT.HasLength&&(0,a.vQ)(null),e.dataView=e.base64=void 0,G},finalizePointer(A,e){const{flags:t,constructor:n,instance:{members:[I]}}=A,{structure:Q}=I,{type:C,constructor:c}=Q;e.child=c?(0,a.vQ)(c):{get:()=>Q.constructor},e.const=(0,a.vQ)(!!(t&i.UT.IsConst)),e[s.mL]={value(e,a){if(this===s.M0||this===s.f7||e instanceof n)return!1;if(o(e,c))return new n(c(e["*"]),a);if(g(e,c,t))return new n(e);if(C===i.ev.Slice)return new n(c(e),a);throw new r.zy(A)}}}});function o(A,e){return(0,a.xN)(A?.constructor?.child,e)&&A["*"]}function g(A,e,t){if(t&i.UT.IsMultiple){if(A?.constructor?.child?.child===e.child&&A["*"])return!0;if(t&i.UT.IsSingle&&o(A,e.child))return!0}return!1}const I=new WeakMap;function Q(A){let e=I.get(A);if(!e){const t=A[s.C7];e=t?new Proxy(t,c):new Proxy(A,B),I.set(A,e)}return e}const C={get(A,e){if(e===s.C7)return A;if(e in A)return A[e];return A[s.Qn][e]},set(A,e,t){if(e in A)A[e]=t;else{A[s.Qn][e]=t}return!0},deleteProperty(A,e){if(e in A)delete A[e];else{delete A[s.Qn][e]}return!0},has(A,e){if(e in A)return!0;return e in A[s.Qn]},apply:(A,e,t)=>A["*"].apply(e,t)},c={...C,set(A,e,t){if(e in A)(0,r.V0)();else{A[s.Qn][e]=t}return!0}},B={get(A,e){if(e===s.KK)return A;{const t=A[e];return t?.[s.Qy]?Q(t):t}},set(A,e,t){(0,r.V0)()}}},8773:(A,e,t)=>{var i=t(6560),n=t(4762),r=t(4540),s=t(8e3);(0,i.co)({definePrimitive(A,e){const{instance:{members:[t]}}=A,i=this.createApplier(A),{get:a,set:o}=this.defineMember(t),g=function(e){if((0,s.pU)(e,I))this[r.sF](e);else if(e&&"object"==typeof e){if(0===i.call(this,e)){const i=(0,s.BF)(t);throw new n.is(A,i,e)}}else void 0!==e&&o.call(this,e)},I=this.createConstructor(A);return e.$={get:a,set:g},e[r.Zv]=(0,s.vQ)(g),e[Symbol.toPrimitive]=(0,s.vQ)(a),I},finalizePrimitive(A,e){const{instance:{members:[t]}}=A;e[r.Qt]=(0,s.vQ)(t.bitSize),e[r.uT]=(0,s.vQ)(t.type)}})},3086:(A,e,t)=>{var i=t(1388),n=t(6560),r=t(4762),s=t(4540),a=t(8e3);(0,n.co)({defineSlice(A,e){const{align:t,flags:n,byteSize:I,name:Q,instance:{members:[C]}}=A,{byteSize:c,structure:B}=C,l=this,E=function(A,e,i){A||(A=l.allocateMemory(e*c,t,i)),this[s.Qy]=A,this[s.pi]=e},u=function(e,t){if(t!==this[s.pi])throw new r.Y8(A,this,e)},f=this.defineMember(C),{set:h}=f,p=this.createApplier(A),y=function(e,t){if((0,a.pU)(e,m))this[s.Qy]?u.call(this,e,e.length):E.call(this,null,e.length,t),this[s.sF](e),n&i.yi.HasPointer&&this[s.g9]("copy",i.F7.Vivificate,e);else if("string"==typeof e&&n&i.tv.IsString)y.call(this,{string:e},t);else if(e?.[Symbol.iterator]){e=(0,a.FU)(e),this[s.Qy]?u.call(this,e,e.length):E.call(this,null,e.length,t);let A=0;for(const i of e)m[s.fd]?.validateValue(i,A,e.length),h.call(this,A++,i,t)}else if("number"==typeof e){if(!(!this[s.Qy]&&e>=0&&isFinite(e)))throw new r.L2(A,e,!this[s.Qy]);E.call(this,null,e,t)}else if(e&&"object"==typeof e){if(0===p.call(this,e,t))throw new r.L2(A,e)}else if(void 0!==e)throw new r.L2(A,e)},d=function(A,e){const t=this[s.pi],i=this[s.Qy];A=void 0===A?0:g(A,t),e=void 0===e?t:g(e,t);const n=A*c,r=e*c-n;return l.obtainView(i.buffer,i.byteOffset+n,r)},m=this.createConstructor(A);return e.$={get:a.V_,set:y},e.length={get:o},n&i.tv.IsTypedArray&&(e.typedArray=this.defineTypedArray(A),n&i.tv.IsString&&(e.string=this.defineString(A)),n&i.tv.IsClampedArray&&(e.clampedArray=this.defineClampedArray(A))),e.entries=e[s.lf]=this.defineArrayEntries(),e.subarray={value(A,e){const t=d.call(this,A,e);return m(t)}},e.slice={value(A,e,i={}){const{zig:n=!1}=i,r=d.call(this,A,e),a=l.allocateMemory(r.byteLength,t,n),o=m(a);return o[s.sF]({[s.Qy]:r}),o}},e[Symbol.iterator]=this.defineArrayIterator(),e[s.IW]=(0,a.vQ)(E),e[s.sF]=this.defineCopier(I,!0),e[s.Zv]=(0,a.vQ)(y),e[s.vm]=this.defineFinalizerArray(f),e[s.tZ]=n&i.yi.HasObject&&this.defineVivificatorArray(A),e[s.g9]=n&i.yi.HasPointer&&this.defineVisitorArray(),m},finalizeSlice(A,e){const{flags:t,instance:{members:[n]}}=A;e.child=(0,a.vQ)(n.structure.constructor),e[s.fd]=t&i.tv.HasSentinel&&this.defineSentinel(A)}});function o(){return this[s.pi]}function g(A,e){return(A|=0)<0?(A=e+A)<0&&(A=0):A>e&&(A=e),A}},8991:(A,e,t)=>{var i=t(1388),n=t(6560),r=t(4762),s=t(4540);(0,n.co)({defineVivificatorStruct(A){const{instance:{members:e}}=A,t={};for(const A of e.filter((A=>A.type===i.Z9.Object)))t[A.slot]=A;const n=this;return{value(A){const e=t[A],{bitOffset:i,byteSize:a,structure:{constructor:o}}=e;this[s.zN]?.();const g=this[s.Qy],I=g.byteOffset+(i>>3);let Q=a;if(void 0===Q){if(7&i)throw new r.Vp(e);Q=e.bitSize>>3}const C=n.obtainView(g.buffer,I,Q);return this[s._f][A]=o.call(s.f7,C)}}}})},8771:(A,e,t)=>{var i=t(1388),n=t(6560),r=t(4762),s=t(4540),a=t(8e3);(0,n.co)({defineStruct(A,e){const{flags:t,length:n,instance:{members:o}}=A,g=o.find((A=>A.flags&i.pK.IsBackingInt)),I=g&&this.defineMember(g),Q=this.createApplier(A),C=function(e,n){if((0,a.pU)(e,c))this[s.sF](e),t&i.yi.HasPointer&&this[s.g9]("copy",0,e);else if(e&&"object"==typeof e)Q.call(this,e,n);else if("number"!=typeof e&&"bigint"!=typeof e||!I){if(void 0!==e)throw new r.is(A,"object",e)}else I.set.call(this,e)},c=this.createConstructor(A),B=e[s.Bl].value,l=e[s.Rk].value,E=[];for(const A of o.filter((A=>!!A.name))){const{name:t,flags:n}=A,{set:r}=e[t]=this.defineMember(A);r&&(n&i.pK.IsRequired&&(r.required=!0),B[t]=r,l.push(t)),E.push(t)}return e.$={get:a.Ng,set:C},e.length=(0,a.vQ)(n),e.entries=t&i.sU.IsTuple&&this.defineVectorEntries(),e[Symbol.toPrimitive]=I&&{value(A){return"string"===A?Object.prototype.toString.call(this):I.get.call(this)}},e[Symbol.iterator]=t&i.sU.IsIterator?this.defineZigIterator():t&i.sU.IsTuple?this.defineVectorIterator():this.defineStructIterator(),e[s.Zv]=(0,a.vQ)(C),e[s.tZ]=t&i.yi.HasObject&&this.defineVivificatorStruct(A),e[s.g9]=t&i.yi.HasPointer&&this.defineVisitorStruct(o),e[s.lf]=t&i.sU.IsTuple?this.defineVectorEntries():this.defineStructEntries(),e[s.n5]=(0,a.vQ)(E),t&i.sU.IsAllocator&&(e.alloc=this.defineAlloc(),e.free=this.defineFree(),e.dupe=this.defineDupe()),c}})},2799:(A,e,t)=>{var i=t(1388),n=t(6560),r=t(4762),s=t(4540),a=t(8e3);(0,n.co)({defineUnion(A,e){const{flags:t,instance:{members:n}}=A,o=!!(t&i.M_.HasSelector),I=o?n.slice(0,-1):n,Q=o?n[n.length-1]:null,{get:C,set:c}=this.defineMember(Q),{get:B}=this.defineMember(Q,!1),l=t&i.M_.HasTag?function(){return C.call(this)[s.o_]}:function(){const A=C.call(this);return I[A].name},E=t&i.M_.HasTag?function(A){const{constructor:e}=Q.structure;c.call(this,e[A])}:function(A){const e=I.findIndex((e=>e.name===A));c.call(this,e)},u=this.createApplier(A),f=function(e,n){if((0,a.pU)(e,h))this[s.sF](e),t&i.yi.HasPointer&&this[s.g9]("copy",i.F7.Vivificate,e);else if(e&&"object"==typeof e){let t=0;for(const A of m)A in e&&t++;if(t>1)throw new r.Z6(A);if(0===u.call(this,e,n))throw new r.if(A,e,o)}else if(void 0!==e)throw new r.is(A,"object with a single property",e)},h=this.createConstructor(A),p={},y=e[s.Bl].value,d=e[s.Rk].value,m=[];for(const n of I){const{name:a}=n,{get:g,set:I}=this.defineMember(n),Q=o?function(){const e=l.call(this);if(a!==e){if(t&i.M_.HasTag)return null;throw new r.it(A,a,e)}return this[s.g9]?.("clear"),g.call(this)}:g,C=o&&I?function(e){const t=l.call(this);if(a!==t)throw new r.it(A,a,t);I.call(this,e)}:I,c=o&&I?function(A){E.call(this,a),I.call(this,A),this[s.g9]?.("clear")}:I;e[a]={get:Q,set:C},y[a]=c,p[a]=g,d.push(a),m.push(a)}e.$={get:function(){return this},set:f},e[Symbol.iterator]=t&i.M_.IsIterator?this.defineZigIterator():this.defineUnionIterator(),e[Symbol.toPrimitive]=t&i.M_.HasTag&&{value(A){switch(A){case"string":case"default":return l.call(this);default:return B.call(this)}}};const{comptime:b}=this;return e[s.f$]=t&i.M_.HasInaccessible&&{value(){return b||this[s.g9](g),this[s.g9]=a.Ie,this}},e[s.Zv]=(0,a.vQ)(f),e[s.Dk]=t&i.M_.HasTag&&{get:C,set:c},e[s.tZ]=t&i.yi.HasObject&&this.defineVivificatorStruct(A),e[s.g9]=t&i.yi.HasPointer&&this.defineVisitorUnion(I,t&i.M_.HasTag?B:null),e[s.lf]=this.defineUnionEntries(),e[s.n5]=t&i.M_.HasTag?{get(){return[l.call(this)]}}:(0,a.vQ)(m),e[s.XS]=(0,a.vQ)(p),h},finalizeUnion(A,e){const{flags:t,instance:{members:n}}=A;t&i.M_.HasTag&&(e.tag=(0,a.vQ)(n[n.length-1].structure.constructor))}});function o(){throw new r.b$}function g(){const A={get:o,set:o};(0,a.ny)(this[s.C7],{"*":A,$:A,[s.C7]:A,[s.Qn]:A})}},4233:(A,e,t)=>{var i=t(1388),n=t(6560),r=t(4762),s=t(4540),a=t(8e3);(0,n.co)({defineVector(A,e){const{flags:t,length:n,instance:{members:[o]}}=A,g=this.createApplier(A),I=function(e){if((0,a.pU)(e,Q))this[s.sF](e),t&i.yi.HasPointer&&this[s.g9]("copy",i.F7.Vivificate,e);else if(e?.[Symbol.iterator]){let t=e.length;if("number"!=typeof t&&(t=(e=[...e]).length),t!==n)throw new r.Y8(A,this,e);let i=0;for(const A of e)this[i++]=A}else if(e&&"object"==typeof e){if(0===g.call(this,e))throw new r.L2(A,e)}else if(void 0!==e)throw new r.L2(A,e)},Q=this.createConstructor(A,{initializer:I}),{bitSize:C}=o;for(let A=0,r=0;A<n;A++,r+=C)t&i.yi.HasPointer?e[A]=this.defineMember({...o,slot:A}):e[A]=this.defineMember({...o,bitOffset:r});return e.$={get:a.Ng,set:I},e.length=(0,a.vQ)(n),t&i.sl.IsTypedArray&&(e.typedArray=this.defineTypedArray(A),t&i.sl.IsClampedArray&&(e.clampedArray=this.defineClampedArray(A))),e.entries=e[s.lf]=this.defineVectorEntries(),e[Symbol.iterator]=this.defineVectorIterator(),e[s.Zv]=(0,a.vQ)(I),e[s.tZ]=t&i.yi.HasObject&&this.defineVivificatorArray(A),e[s.g9]=t&i.yi.HasPointer&&this.defineVisitorArray(),Q},finalizeVector(A,e){const{instance:{members:[t]}}=A;e.child=(0,a.vQ)(t.structure.constructor)}})},4540:(A,e,t)=>{t.d(e,{BD:()=>m,Bl:()=>L,C7:()=>E,Dk:()=>B,Dr:()=>g,E2:()=>y,Ec:()=>G,Gz:()=>K,IW:()=>j,J2:()=>T,KK:()=>U,M0:()=>N,Qn:()=>h,Qt:()=>x,Qy:()=>s,Rk:()=>d,SK:()=>k,Ut:()=>_,Wg:()=>C,XS:()=>R,ZE:()=>Q,Zv:()=>Z,_d:()=>O,_f:()=>a,c6:()=>D,du:()=>J,eR:()=>q,f$:()=>$,f7:()=>o,fM:()=>H,fV:()=>v,fd:()=>u,g9:()=>X,iw:()=>F,lf:()=>p,mL:()=>eA,n5:()=>l,o_:()=>I,pM:()=>z,pi:()=>b,q6:()=>Y,rG:()=>w,sF:()=>W,sO:()=>f,tZ:()=>V,tp:()=>c,uL:()=>S,uT:()=>M,vm:()=>AA,wg:()=>iA,zN:()=>P,zg:()=>tA});const i=globalThis[Symbol.for("ZIGAR")]||={};function n(A){return i[A]||=Symbol(A)}function r(A){return n(A)}const s=r("memory"),a=r("slots"),o=r("parent"),g=r("zig"),I=r("name"),Q=r("type"),C=r("flags"),c=r("class"),B=r("tag"),l=r("props"),E=r("pointer"),u=r("sentinel"),f=r("array"),h=(r("items"),r("target")),p=r("entries"),y=r("max length"),d=r("keys"),m=r("address"),b=r("length"),D=r("last address"),S=r("last length"),w=r("proxy"),v=r("cache"),k=r("size"),x=r("bit size"),G=r("align"),U=r("const target"),N=r("environment"),F=r("attributes"),M=r("primitive"),R=r("getters"),L=r("setters"),z=r("typed array"),J=r("throwing"),q=r("promise"),O=r("generator"),K=r("allocator"),T=(r("fallback"),r("signature")),H=r("string retval"),Y=r("update"),P=r("restore"),_=r("reset"),V=r("vivificate"),X=r("visit"),W=r("copy"),j=r("shape"),Z=r("initialize"),$=r("restrict"),AA=r("finalize"),eA=r("cast"),tA=r("return"),iA=r("yield")},8e3:(A,e,t)=>{t.d(e,{$k:()=>h,Au:()=>m,BF:()=>g,FU:()=>b,Fy:()=>p,Ie:()=>U,L9:()=>o,NV:()=>v,Ng:()=>k,UF:()=>N,V_:()=>x,WG:()=>C,Y$:()=>y,ZG:()=>E,be:()=>D,cv:()=>d,dI:()=>G,g7:()=>I,hJ:()=>f,n8:()=>r,ny:()=>s,on:()=>u,pU:()=>w,vQ:()=>a,wx:()=>Q,xN:()=>S,y4:()=>c});var i=t(1388),n=t(4540);function r(A,e,t){if(t){const{set:i,get:n,value:r,enumerable:s,configurable:a=!0,writable:o=!0}=t;Object.defineProperty(A,e,n||i?{get:n,set:i,configurable:a,enumerable:s}:{value:r,configurable:a,enumerable:s,writable:o})}return A}function s(A,e){for(const[t,i]of Object.entries(e))r(A,t,i);for(const t of Object.getOwnPropertySymbols(e)){r(A,t,e[t])}return A}function a(A){return void 0!==A?{value:A}:void 0}function o(A){return"return"===A?.error?A=>{try{return A()}catch(A){return A}}:A=>A()}function g({type:A,bitSize:e}){switch(A){case i.Z9.Bool:return"boolean";case i.Z9.Int:case i.Z9.Uint:if(e>32)return"bigint";case i.Z9.Float:return"number"}}function I(A,e="utf-8"){const t=B[e]||=new TextDecoder(e);let i;if(Array.isArray(A))if(1===A.length)i=A[0];else{let e=0;for(const t of A)e+=t.length;const{constructor:t}=A[0];i=new t(e);let n=0;for(const e of A)i.set(e,n),n+=e.length}else i=A;return"SharedArrayBuffer"===i.buffer[Symbol.toStringTag]&&(i=new i.constructor(i)),t.decode(i)}function Q(A,e="utf-8"){if("utf-16"===e){const{length:e}=A,t=new Uint16Array(e);for(let i=0;i<e;i++)t[i]=A.charCodeAt(i);return t}return(l[e]||=new TextEncoder).encode(A)}function C(A){const e=new Uint8Array(A.buffer,A.byteOffset,A.byteLength),t=String.fromCharCode.apply(null,e);return btoa(t)}function c(A){const e=atob(A),t=new Uint8Array(e.length);for(let A=0;A<t.byteLength;A++)t[A]=e.charCodeAt(A);return new DataView(t.buffer)}const B={},l={};function E(A,e,t){let i=0,n=A.length;if(0===n)return 0;for(;i<n;){const r=Math.floor((i+n)/2);t(A[r])<=e?i=r+1:n=r}return n}const u=function(A,e){return!!e&&!!(A&e-1)},f=function(A,e){return A+(e-1)&~(e-1)},h=0,p=4294967295,y=-1,d=function(A){return 2863311530===A||-1431655766===A},m=function(A,e){return A+e};function b(A){if("number"==typeof A.length)return A;const e=A[Symbol.iterator](),t=e.next(),i=t.value?.length;if("number"==typeof i&&"length"===Object.keys(t.value).join())return Object.assign(function*(){let A;for(;!(A=e.next()).done;)yield A.value}(),{length:i});{const A=[];let i=t;for(;!i.done;)A.push(i.value),i=e.next();return A}}function D(A,e){const{constructor:t}=A;return t===e?1:t.child===e?A.length:void 0}function S(A,e){return A===e||A?.[n.J2]===e[n.J2]&&A?.[n.M0]!==e?.[n.M0]}function w(A,e){return A instanceof e||S(A?.constructor,e)}function v({get:A,set:e}){return A.special=e.special=!0,{get:A,set:e}}function k(){return this}function x(){return this[n.rG]}function G(){return String(this)}function U(){}class N{map=new WeakMap;find(A){return this.map.get(A)}save(A,e){return this.map.set(A,e),e}}},8502:(A,e,t)=>{t.d(e,{k:()=>a});var i=t(1388),n=t(6560),r=t(4762),s=t(4540);(0,n.co)({defineVisitor:()=>({value(A,e,t){let i;i="string"==typeof A?o[A]:A,i.call(this,e,t)}})});function a(A,e,t,n){let r,a=this[s._f][A];if(!a){if(t&i.F7.IgnoreUncreated)return;a=this[s.tZ](A)}n&&(r=n[s._f][A],!r)||a[s.g9](e,t,r)}const o={copy(A,e){const t=e[s._f][0];if(this[s.Qy][s.Dr]&&t&&!t[s.Qy][s.Dr])throw new r.x1;this[s._f][0]=t},clear(A){A&i.F7.IsInactive&&(this[s._f][0]=void 0)},reset(){this[s._f][0]=void 0,this[s.c6]=void 0}}},9025:(A,e,t)=>{var i=t(1388),n=t(6560),r=t(8502);(0,n.co)({defineVisitorArgStruct(A){const e=[];let t;for(const[n,{slot:r,structure:s}]of A.entries())s.flags&i.yi.HasPointer&&(0===n?t=r:e.push(r));return{value(A,n,s){if(!(n&i.F7.IgnoreArguments)&&e.length>0)for(const t of e)r.k.call(this,t,A,n|i.F7.IsImmutable,s);n&i.F7.IgnoreRetval||void 0===t||r.k.call(this,t,A,n,s)}}}})},9426:(A,e,t)=>{var i=t(6560),n=t(8502);(0,i.co)({defineVisitorArray:()=>({value(A,e,t){for(let i=0,r=this.length;i<r;i++)n.k.call(this,i,A,e,t)}})})},2059:(A,e,t)=>{var i=t(1388),n=t(6560),r=t(8502);(0,n.co)({defineVisitorErrorUnion(A,e){const{slot:t}=A;return{value(A,n,s){e.call(this)&&(n|=i.F7.IsInactive),n&i.F7.IsInactive&&n&i.F7.IgnoreInactive||r.k.call(this,t,A,n,s)}}}})},1991:(A,e,t)=>{var i=t(1388),n=t(6560),r=t(8502);(0,n.co)({defineVisitorOptional(A,e){const{slot:t}=A;return{value(A,n,s){e.call(this)||(n|=i.F7.IsInactive),n&i.F7.IsInactive&&n&i.F7.IgnoreInactive||r.k.call(this,t,A,n,s)}}}})},5558:(A,e,t)=>{var i=t(1388),n=t(6560),r=t(8502);(0,n.co)({defineVisitorStruct(A){const e=A.filter((A=>A.structure?.flags&i.yi.HasPointer)).map((A=>A.slot));return{value(A,t,i){for(const n of e)r.k.call(this,n,A,t,i)}}}})},6584:(A,e,t)=>{var i=t(1388),n=t(6560),r=t(8502);(0,n.co)({defineVisitorUnion(A,e){const t=[];for(const[e,{slot:n,structure:r}]of A.entries())r?.flags&i.yi.HasPointer&&t.push({index:e,slot:n});return{value(A,n,s){const a=e?.call(this);for(const{index:e,slot:o}of t){let t=n;e!==a&&(t|=i.F7.IsInactive),t&i.F7.IsInactive&&t&i.F7.IgnoreInactive||r.k.call(this,o,A,t,s)}}}}})}},r={};function s(A){var e=r[A];if(void 0!==e)return e.exports;var t=r[A]={exports:{}};return n[A](t,t.exports,s),t.exports}A="function"==typeof Symbol?Symbol("webpack queues"):"__webpack_queues__",e="function"==typeof Symbol?Symbol("webpack exports"):"__webpack_exports__",t="function"==typeof Symbol?Symbol("webpack error"):"__webpack_error__",i=A=>{A&&A.d<1&&(A.d=1,A.forEach((A=>A.r--)),A.forEach((A=>A.r--?A.r++:A())))},s.a=(n,r,s)=>{var a;s&&((a=[]).d=-1);var o,g,I,Q=new Set,C=n.exports,c=new Promise(((A,e)=>{I=e,g=A}));c[e]=C,c[A]=A=>(a&&A(a),Q.forEach(A),c.catch((A=>{}))),n.exports=c,r((n=>{var r;o=(n=>n.map((n=>{if(null!==n&&"object"==typeof n){if(n[A])return n;if(n.then){var r=[];r.d=0,n.then((A=>{s[e]=A,i(r)}),(A=>{s[t]=A,i(r)}));var s={};return s[A]=A=>A(r),s}}var a={};return a[A]=A=>{},a[e]=n,a})))(n);var s=()=>o.map((A=>{if(A[t])throw A[t];return A[e]})),g=new Promise((e=>{(r=()=>e(s)).r=0;var t=A=>A!==a&&!Q.has(A)&&(Q.add(A),A&&!A.d&&(r.r++,A.push(r)));o.map((e=>e[A](t)))}));return r.r?g:s()}),(A=>(A?I(c[t]=A):g(C),i(a)))),a&&a.d<0&&(a.d=0)},s.d=(A,e)=>{for(var t in e)s.o(e,t)&&!s.o(A,t)&&Object.defineProperty(A,t,{enumerable:!0,get:e[t]})},s.o=(A,e)=>Object.prototype.hasOwnProperty.call(A,e),(()=>{var A;if("string"==typeof import.meta.url&&(A=import.meta.url),!A)throw new Error("Automatic publicPath is not supported in this browser");A=A.replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),s.p=A})();var a=s(8156),o=(a=await a).b,g=a.A;export{o as CreatorTool,g as default};
|
|
1
|
+
var A,e,t,i,n={945:(A,e,t)=>{var i,n;t.d(e,{Ay:()=>Ri}),String.prototype.codePointAt||(i=function(){try{var A={},e=Object.defineProperty,t=e(A,A,A)&&e}catch(A){}return t}(),n=function(A){if(null==this)throw TypeError();var e=String(this),t=e.length,i=A?Number(A):0;if(i!=i&&(i=0),!(i<0||i>=t)){var n,r=e.charCodeAt(i);return r>=55296&&r<=56319&&t>i+1&&(n=e.charCodeAt(i+1))>=56320&&n<=57343?1024*(r-55296)+n-56320+65536:r}},i?i(String.prototype,"codePointAt",{value:n,configurable:!0,writable:!0}):String.prototype.codePointAt=n);function r(){this.table=new Uint16Array(16),this.trans=new Uint16Array(288)}function s(A,e){this.source=A,this.sourceIndex=0,this.tag=0,this.bitcount=0,this.dest=e,this.destLen=0,this.ltree=new r,this.dtree=new r}var a=new r,o=new r,g=new Uint8Array(30),I=new Uint16Array(30),Q=new Uint8Array(30),C=new Uint16Array(30),c=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),B=new r,l=new Uint8Array(320);function u(A,e,t,i){var n,r;for(n=0;n<t;++n)A[n]=0;for(n=0;n<30-t;++n)A[n+t]=n/t|0;for(r=i,n=0;n<30;++n)e[n]=r,r+=1<<A[n]}var E=new Uint16Array(16);function f(A,e,t,i){var n,r;for(n=0;n<16;++n)A.table[n]=0;for(n=0;n<i;++n)A.table[e[t+n]]++;for(A.table[0]=0,r=0,n=0;n<16;++n)E[n]=r,r+=A.table[n];for(n=0;n<i;++n)e[t+n]&&(A.trans[E[e[t+n]]++]=n)}function h(A){A.bitcount--||(A.tag=A.source[A.sourceIndex++],A.bitcount=7);var e=1&A.tag;return A.tag>>>=1,e}function p(A,e,t){if(!e)return t;for(;A.bitcount<24;)A.tag|=A.source[A.sourceIndex++]<<A.bitcount,A.bitcount+=8;var i=A.tag&65535>>>16-e;return A.tag>>>=e,A.bitcount-=e,i+t}function y(A,e){for(;A.bitcount<24;)A.tag|=A.source[A.sourceIndex++]<<A.bitcount,A.bitcount+=8;var t=0,i=0,n=0,r=A.tag;do{i=2*i+(1&r),r>>>=1,++n,t+=e.table[n],i-=e.table[n]}while(i>=0);return A.tag=r,A.bitcount-=n,e.trans[t+i]}function d(A,e,t){var i,n,r,s,a,o;for(i=p(A,5,257),n=p(A,5,1),r=p(A,4,4),s=0;s<19;++s)l[s]=0;for(s=0;s<r;++s){var g=p(A,3,0);l[c[s]]=g}for(f(B,l,0,19),a=0;a<i+n;){var I=y(A,B);switch(I){case 16:var Q=l[a-1];for(o=p(A,2,3);o;--o)l[a++]=Q;break;case 17:for(o=p(A,3,3);o;--o)l[a++]=0;break;case 18:for(o=p(A,7,11);o;--o)l[a++]=0;break;default:l[a++]=I}}f(e,l,0,i),f(t,l,i,n)}function m(A,e,t){for(;;){var i,n,r,s,a=y(A,e);if(256===a)return 0;if(a<256)A.dest[A.destLen++]=a;else for(i=p(A,g[a-=257],I[a]),n=y(A,t),s=r=A.destLen-p(A,Q[n],C[n]);s<r+i;++s)A.dest[A.destLen++]=A.dest[s]}}function b(A){for(var e,t;A.bitcount>8;)A.sourceIndex--,A.bitcount-=8;if((e=256*(e=A.source[A.sourceIndex+1])+A.source[A.sourceIndex])!==(65535&~(256*A.source[A.sourceIndex+3]+A.source[A.sourceIndex+2])))return-3;for(A.sourceIndex+=4,t=e;t;--t)A.dest[A.destLen++]=A.source[A.sourceIndex++];return A.bitcount=0,0}!function(A,e){var t;for(t=0;t<7;++t)A.table[t]=0;for(A.table[7]=24,A.table[8]=152,A.table[9]=112,t=0;t<24;++t)A.trans[t]=256+t;for(t=0;t<144;++t)A.trans[24+t]=t;for(t=0;t<8;++t)A.trans[168+t]=280+t;for(t=0;t<112;++t)A.trans[176+t]=144+t;for(t=0;t<5;++t)e.table[t]=0;for(e.table[5]=32,t=0;t<32;++t)e.trans[t]=t}(a,o),u(g,I,4,3),u(Q,C,2,1),g[28]=0,I[28]=258;var D=function(A,e){var t,i,n=new s(A,e);do{switch(t=h(n),p(n,2,0)){case 0:i=b(n);break;case 1:i=m(n,a,o);break;case 2:d(n,n.ltree,n.dtree),i=m(n,n.ltree,n.dtree);break;default:i=-3}if(0!==i)throw new Error("Data error")}while(!t);return n.destLen<n.dest.length?"function"==typeof n.dest.slice?n.dest.slice(0,n.destLen):n.dest.subarray(0,n.destLen):n.dest};function S(A,e,t,i,n){return Math.pow(1-n,3)*A+3*Math.pow(1-n,2)*n*e+3*(1-n)*Math.pow(n,2)*t+Math.pow(n,3)*i}function w(){this.x1=Number.NaN,this.y1=Number.NaN,this.x2=Number.NaN,this.y2=Number.NaN}function v(){this.commands=[],this.fill="black",this.stroke=null,this.strokeWidth=1}function k(A){throw new Error(A)}function x(A,e){A||k(e)}w.prototype.isEmpty=function(){return isNaN(this.x1)||isNaN(this.y1)||isNaN(this.x2)||isNaN(this.y2)},w.prototype.addPoint=function(A,e){"number"==typeof A&&((isNaN(this.x1)||isNaN(this.x2))&&(this.x1=A,this.x2=A),A<this.x1&&(this.x1=A),A>this.x2&&(this.x2=A)),"number"==typeof e&&((isNaN(this.y1)||isNaN(this.y2))&&(this.y1=e,this.y2=e),e<this.y1&&(this.y1=e),e>this.y2&&(this.y2=e))},w.prototype.addX=function(A){this.addPoint(A,null)},w.prototype.addY=function(A){this.addPoint(null,A)},w.prototype.addBezier=function(A,e,t,i,n,r,s,a){var o=[A,e],g=[t,i],I=[n,r],Q=[s,a];this.addPoint(A,e),this.addPoint(s,a);for(var C=0;C<=1;C++){var c=6*o[C]-12*g[C]+6*I[C],B=-3*o[C]+9*g[C]-9*I[C]+3*Q[C],l=3*g[C]-3*o[C];if(0!==B){var u=Math.pow(c,2)-4*l*B;if(!(u<0)){var E=(-c+Math.sqrt(u))/(2*B);0<E&&E<1&&(0===C&&this.addX(S(o[C],g[C],I[C],Q[C],E)),1===C&&this.addY(S(o[C],g[C],I[C],Q[C],E)));var f=(-c-Math.sqrt(u))/(2*B);0<f&&f<1&&(0===C&&this.addX(S(o[C],g[C],I[C],Q[C],f)),1===C&&this.addY(S(o[C],g[C],I[C],Q[C],f)))}}else{if(0===c)continue;var h=-l/c;0<h&&h<1&&(0===C&&this.addX(S(o[C],g[C],I[C],Q[C],h)),1===C&&this.addY(S(o[C],g[C],I[C],Q[C],h)))}}},w.prototype.addQuad=function(A,e,t,i,n,r){var s=A+2/3*(t-A),a=e+2/3*(i-e),o=s+1/3*(n-A),g=a+1/3*(r-e);this.addBezier(A,e,s,a,o,g,n,r)},v.prototype.moveTo=function(A,e){this.commands.push({type:"M",x:A,y:e})},v.prototype.lineTo=function(A,e){this.commands.push({type:"L",x:A,y:e})},v.prototype.curveTo=v.prototype.bezierCurveTo=function(A,e,t,i,n,r){this.commands.push({type:"C",x1:A,y1:e,x2:t,y2:i,x:n,y:r})},v.prototype.quadTo=v.prototype.quadraticCurveTo=function(A,e,t,i){this.commands.push({type:"Q",x1:A,y1:e,x:t,y:i})},v.prototype.close=v.prototype.closePath=function(){this.commands.push({type:"Z"})},v.prototype.extend=function(A){if(A.commands)A=A.commands;else if(A instanceof w){var e=A;return this.moveTo(e.x1,e.y1),this.lineTo(e.x2,e.y1),this.lineTo(e.x2,e.y2),this.lineTo(e.x1,e.y2),void this.close()}Array.prototype.push.apply(this.commands,A)},v.prototype.getBoundingBox=function(){for(var A=new w,e=0,t=0,i=0,n=0,r=0;r<this.commands.length;r++){var s=this.commands[r];switch(s.type){case"M":A.addPoint(s.x,s.y),e=i=s.x,t=n=s.y;break;case"L":A.addPoint(s.x,s.y),i=s.x,n=s.y;break;case"Q":A.addQuad(i,n,s.x1,s.y1,s.x,s.y),i=s.x,n=s.y;break;case"C":A.addBezier(i,n,s.x1,s.y1,s.x2,s.y2,s.x,s.y),i=s.x,n=s.y;break;case"Z":i=e,n=t;break;default:throw new Error("Unexpected path command "+s.type)}}return A.isEmpty()&&A.addPoint(0,0),A},v.prototype.draw=function(A){A.beginPath();for(var e=0;e<this.commands.length;e+=1){var t=this.commands[e];"M"===t.type?A.moveTo(t.x,t.y):"L"===t.type?A.lineTo(t.x,t.y):"C"===t.type?A.bezierCurveTo(t.x1,t.y1,t.x2,t.y2,t.x,t.y):"Q"===t.type?A.quadraticCurveTo(t.x1,t.y1,t.x,t.y):"Z"===t.type&&A.closePath()}this.fill&&(A.fillStyle=this.fill,A.fill()),this.stroke&&(A.strokeStyle=this.stroke,A.lineWidth=this.strokeWidth,A.stroke())},v.prototype.toPathData=function(A){function e(e){return Math.round(e)===e?""+Math.round(e):e.toFixed(A)}function t(){for(var A=arguments,t="",i=0;i<arguments.length;i+=1){var n=A[i];n>=0&&i>0&&(t+=" "),t+=e(n)}return t}A=void 0!==A?A:2;for(var i="",n=0;n<this.commands.length;n+=1){var r=this.commands[n];"M"===r.type?i+="M"+t(r.x,r.y):"L"===r.type?i+="L"+t(r.x,r.y):"C"===r.type?i+="C"+t(r.x1,r.y1,r.x2,r.y2,r.x,r.y):"Q"===r.type?i+="Q"+t(r.x1,r.y1,r.x,r.y):"Z"===r.type&&(i+="Z")}return i},v.prototype.toSVG=function(A){var e='<path d="';return e+=this.toPathData(A),e+='"',this.fill&&"black"!==this.fill&&(null===this.fill?e+=' fill="none"':e+=' fill="'+this.fill+'"'),this.stroke&&(e+=' stroke="'+this.stroke+'" stroke-width="'+this.strokeWidth+'"'),e+="/>"},v.prototype.toDOMElement=function(A){var e=this.toPathData(A),t=document.createElementNS("http://www.w3.org/2000/svg","path");return t.setAttribute("d",e),t};var N={fail:k,argument:x,assert:x},U=2147483648,G={},M={},R={};function F(A){return function(){return A}}M.BYTE=function(A){return N.argument(A>=0&&A<=255,"Byte value should be between 0 and 255."),[A]},R.BYTE=F(1),M.CHAR=function(A){return[A.charCodeAt(0)]},R.CHAR=F(1),M.CHARARRAY=function(A){void 0===A&&(A="",console.warn("Undefined CHARARRAY encountered and treated as an empty string. This is probably caused by a missing glyph name."));for(var e=[],t=0;t<A.length;t+=1)e[t]=A.charCodeAt(t);return e},R.CHARARRAY=function(A){return void 0===A?0:A.length},M.USHORT=function(A){return[A>>8&255,255&A]},R.USHORT=F(2),M.SHORT=function(A){return A>=32768&&(A=-(65536-A)),[A>>8&255,255&A]},R.SHORT=F(2),M.UINT24=function(A){return[A>>16&255,A>>8&255,255&A]},R.UINT24=F(3),M.ULONG=function(A){return[A>>24&255,A>>16&255,A>>8&255,255&A]},R.ULONG=F(4),M.LONG=function(A){return A>=U&&(A=-(2*U-A)),[A>>24&255,A>>16&255,A>>8&255,255&A]},R.LONG=F(4),M.FIXED=M.ULONG,R.FIXED=R.ULONG,M.FWORD=M.SHORT,R.FWORD=R.SHORT,M.UFWORD=M.USHORT,R.UFWORD=R.USHORT,M.LONGDATETIME=function(A){return[0,0,0,0,A>>24&255,A>>16&255,A>>8&255,255&A]},R.LONGDATETIME=F(8),M.TAG=function(A){return N.argument(4===A.length,"Tag should be exactly 4 ASCII characters."),[A.charCodeAt(0),A.charCodeAt(1),A.charCodeAt(2),A.charCodeAt(3)]},R.TAG=F(4),M.Card8=M.BYTE,R.Card8=R.BYTE,M.Card16=M.USHORT,R.Card16=R.USHORT,M.OffSize=M.BYTE,R.OffSize=R.BYTE,M.SID=M.USHORT,R.SID=R.USHORT,M.NUMBER=function(A){return A>=-107&&A<=107?[A+139]:A>=108&&A<=1131?[247+((A-=108)>>8),255&A]:A>=-1131&&A<=-108?[251+((A=-A-108)>>8),255&A]:A>=-32768&&A<=32767?M.NUMBER16(A):M.NUMBER32(A)},R.NUMBER=function(A){return M.NUMBER(A).length},M.NUMBER16=function(A){return[28,A>>8&255,255&A]},R.NUMBER16=F(3),M.NUMBER32=function(A){return[29,A>>24&255,A>>16&255,A>>8&255,255&A]},R.NUMBER32=F(5),M.REAL=function(A){var e=A.toString(),t=/\.(\d*?)(?:9{5,20}|0{5,20})\d{0,2}(?:e(.+)|$)/.exec(e);if(t){var i=parseFloat("1e"+((t[2]?+t[2]:0)+t[1].length));e=(Math.round(A*i)/i).toString()}for(var n="",r=0,s=e.length;r<s;r+=1){var a=e[r];n+="e"===a?"-"===e[++r]?"c":"b":"."===a?"a":"-"===a?"e":a}for(var o=[30],g=0,I=(n+=1&n.length?"f":"ff").length;g<I;g+=2)o.push(parseInt(n.substr(g,2),16));return o},R.REAL=function(A){return M.REAL(A).length},M.NAME=M.CHARARRAY,R.NAME=R.CHARARRAY,M.STRING=M.CHARARRAY,R.STRING=R.CHARARRAY,G.UTF8=function(A,e,t){for(var i=[],n=t,r=0;r<n;r++,e+=1)i[r]=A.getUint8(e);return String.fromCharCode.apply(null,i)},G.UTF16=function(A,e,t){for(var i=[],n=t/2,r=0;r<n;r++,e+=2)i[r]=A.getUint16(e);return String.fromCharCode.apply(null,i)},M.UTF16=function(A){for(var e=[],t=0;t<A.length;t+=1){var i=A.charCodeAt(t);e[e.length]=i>>8&255,e[e.length]=255&i}return e},R.UTF16=function(A){return 2*A.length};var L={"x-mac-croatian":"ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûü†°¢£§•¶ß®Š™´¨≠ŽØ∞±≤≥∆µ∂∑∏š∫ªºΩžø¿¡¬√ƒ≈ƫȅ ÀÃÕŒœĐ—“”‘’÷◊©⁄€‹›Æ»–·‚„‰ÂćÁčÈÍÎÏÌÓÔđÒÚÛÙıˆ˜¯πË˚¸Êæˇ","x-mac-cyrillic":"АБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ†°Ґ£§•¶І®©™Ђђ≠Ѓѓ∞±≤≥іµґЈЄєЇїЉљЊњјЅ¬√ƒ≈∆«»… ЋћЌќѕ–—“”‘’÷„ЎўЏџ№Ёёяабвгдежзийклмнопрстуфхцчшщъыьэю","x-mac-gaelic":"ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûü†°¢£§•¶ß®©™´¨≠ÆØḂ±≤≥ḃĊċḊḋḞḟĠġṀæøṁṖṗɼƒſṠ«»… ÀÃÕŒœ–—“”‘’ṡẛÿŸṪ€‹›Ŷŷṫ·Ỳỳ⁊ÂÊÁËÈÍÎÏÌÓÔ♣ÒÚÛÙıÝýŴŵẄẅẀẁẂẃ","x-mac-greek":"Ĺ²É³ÖÜ΅àâä΄¨çéèê룙î‰ôö¦€ùûü†ΓΔΘΛΞΠß®©ΣΪ§≠°·Α±≤≥¥ΒΕΖΗΙΚΜΦΫΨΩάΝ¬ΟΡ≈Τ«»… ΥΧΆΈœ–―“”‘’÷ΉΊΌΎέήίόΏύαβψδεφγηιξκλμνοπώρστθωςχυζϊϋΐΰ","x-mac-icelandic":"ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûüݰ¢£§•¶ß®©™´¨≠ÆØ∞±≤≥¥µ∂∑∏π∫ªºΩæø¿¡¬√ƒ≈∆«»… ÀÃÕŒœ–—“”‘’÷◊ÿŸ⁄€ÐðÞþý·‚„‰ÂÊÁËÈÍÎÏÌÓÔÒÚÛÙıˆ˜¯˘˙˚¸˝˛ˇ","x-mac-inuit":"ᐃᐄᐅᐆᐊᐋᐱᐲᐳᐴᐸᐹᑉᑎᑏᑐᑑᑕᑖᑦᑭᑮᑯᑰᑲᑳᒃᒋᒌᒍᒎᒐᒑ°ᒡᒥᒦ•¶ᒧ®©™ᒨᒪᒫᒻᓂᓃᓄᓅᓇᓈᓐᓯᓰᓱᓲᓴᓵᔅᓕᓖᓗᓘᓚᓛᓪᔨᔩᔪᔫᔭ… ᔮᔾᕕᕖᕗ–—“”‘’ᕘᕙᕚᕝᕆᕇᕈᕉᕋᕌᕐᕿᖀᖁᖂᖃᖄᖅᖏᖐᖑᖒᖓᖔᖕᙱᙲᙳᙴᙵᙶᖖᖠᖡᖢᖣᖤᖥᖦᕼŁł","x-mac-ce":"ÄĀāÉĄÖÜáąČäčĆć鏟ĎíďĒēĖóėôöõúĚěü†°Ę£§•¶ß®©™ę¨≠ģĮįĪ≤≥īĶ∂∑łĻļĽľĹĺŅņѬ√ńŇ∆«»… ňŐÕőŌ–—“”‘’÷◊ōŔŕŘ‹›řŖŗŠ‚„šŚśÁŤťÍŽžŪÓÔūŮÚůŰűŲųÝýķŻŁżĢˇ",macintosh:"ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûü†°¢£§•¶ß®©™´¨≠ÆØ∞±≤≥¥µ∂∑∏π∫ªºΩæø¿¡¬√ƒ≈∆«»… ÀÃÕŒœ–—“”‘’÷◊ÿŸ⁄€‹›fifl‡·‚„‰ÂÊÁËÈÍÎÏÌÓÔÒÚÛÙıˆ˜¯˘˙˚¸˝˛ˇ","x-mac-romanian":"ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûü†°¢£§•¶ß®©™´¨≠ĂȘ∞±≤≥¥µ∂∑∏π∫ªºΩăș¿¡¬√ƒ≈∆«»… ÀÃÕŒœ–—“”‘’÷◊ÿŸ⁄€‹›Țț‡·‚„‰ÂÊÁËÈÍÎÏÌÓÔÒÚÛÙıˆ˜¯˘˙˚¸˝˛ˇ","x-mac-turkish":"ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûü†°¢£§•¶ß®©™´¨≠ÆØ∞±≤≥¥µ∂∑∏π∫ªºΩæø¿¡¬√ƒ≈∆«»… ÀÃÕŒœ–—“”‘’÷◊ÿŸĞğİıŞş‡·‚„‰ÂÊÁËÈÍÎÏÌÓÔÒÚÛÙˆ˜¯˘˙˚¸˝˛ˇ"};G.MACSTRING=function(A,e,t,i){var n=L[i];if(void 0!==n){for(var r="",s=0;s<t;s++){var a=A.getUint8(e+s);r+=a<=127?String.fromCharCode(a):n[127&a]}return r}};var z,q="function"==typeof WeakMap&&new WeakMap;function J(A){return A>=-128&&A<=127}function O(A,e,t){for(var i=0,n=A.length;e<n&&i<64&&0===A[e];)++e,++i;return t.push(128|i-1),e}function K(A,e,t){for(var i=0,n=A.length,r=e;r<n&&i<64;){var s=A[r];if(!J(s))break;if(0===s&&r+1<n&&0===A[r+1])break;++r,++i}t.push(i-1);for(var a=e;a<r;++a)t.push(A[a]+256&255);return r}function T(A,e,t){for(var i=0,n=A.length,r=e;r<n&&i<64;){var s=A[r];if(0===s)break;if(J(s)&&r+1<n&&J(A[r+1]))break;++r,++i}t.push(64|i-1);for(var a=e;a<r;++a){var o=A[a];t.push(o+65536>>8&255,o+256&255)}return r}M.MACSTRING=function(A,e){var t=function(A){if(!z)for(var e in z={},L)z[e]=new String(e);var t=z[A];if(void 0!==t){if(q){var i=q.get(t);if(void 0!==i)return i}var n=L[A];if(void 0!==n){for(var r={},s=0;s<n.length;s++)r[n.charCodeAt(s)]=s+128;return q&&q.set(t,r),r}}}(e);if(void 0!==t){for(var i=[],n=0;n<A.length;n++){var r=A.charCodeAt(n);if(r>=128&&void 0===(r=t[r]))return;i[n]=r}return i}},R.MACSTRING=function(A,e){var t=M.MACSTRING(A,e);return void 0!==t?t.length:0},M.VARDELTAS=function(A){for(var e=0,t=[];e<A.length;){var i=A[e];e=0===i?O(A,e,t):i>=-128&&i<=127?K(A,e,t):T(A,e,t)}return t},M.INDEX=function(A){for(var e=1,t=[e],i=[],n=0;n<A.length;n+=1){var r=M.OBJECT(A[n]);Array.prototype.push.apply(i,r),e+=r.length,t.push(e)}if(0===i.length)return[0,0];for(var s=[],a=1+Math.floor(Math.log(e)/Math.log(2))/8|0,o=[void 0,M.BYTE,M.USHORT,M.UINT24,M.ULONG][a],g=0;g<t.length;g+=1){var I=o(t[g]);Array.prototype.push.apply(s,I)}return Array.prototype.concat(M.Card16(A.length),M.OffSize(a),s,i)},R.INDEX=function(A){return M.INDEX(A).length},M.DICT=function(A){for(var e=[],t=Object.keys(A),i=t.length,n=0;n<i;n+=1){var r=parseInt(t[n],0),s=A[r];e=(e=e.concat(M.OPERAND(s.value,s.type))).concat(M.OPERATOR(r))}return e},R.DICT=function(A){return M.DICT(A).length},M.OPERATOR=function(A){return A<1200?[A]:[12,A-1200]},M.OPERAND=function(A,e){var t=[];if(Array.isArray(e))for(var i=0;i<e.length;i+=1)N.argument(A.length===e.length,"Not enough arguments given for type"+e),t=t.concat(M.OPERAND(A[i],e[i]));else if("SID"===e)t=t.concat(M.NUMBER(A));else if("offset"===e)t=t.concat(M.NUMBER32(A));else if("number"===e)t=t.concat(M.NUMBER(A));else{if("real"!==e)throw new Error("Unknown operand type "+e);t=t.concat(M.REAL(A))}return t},M.OP=M.BYTE,R.OP=R.BYTE;var H="function"==typeof WeakMap&&new WeakMap;function Y(A,e,t){if(e.length&&("coverageFormat"!==e[0].name||1===e[0].value))for(var i=0;i<e.length;i+=1){var n=e[i];this[n.name]=n.value}if(this.tableName=A,this.fields=e,t)for(var r=Object.keys(t),s=0;s<r.length;s+=1){var a=r[s],o=t[a];void 0!==this[a]&&(this[a]=o)}}function P(A,e,t){void 0===t&&(t=e.length);var i=new Array(e.length+1);i[0]={name:A+"Count",type:"USHORT",value:t};for(var n=0;n<e.length;n++)i[n+1]={name:A+n,type:"USHORT",value:e[n]};return i}function V(A,e,t){var i=e.length,n=new Array(i+1);n[0]={name:A+"Count",type:"USHORT",value:i};for(var r=0;r<i;r++)n[r+1]={name:A+r,type:"TABLE",value:t(e[r],r)};return n}function _(A,e,t){var i=e.length,n=[];n[0]={name:A+"Count",type:"USHORT",value:i};for(var r=0;r<i;r++)n=n.concat(t(e[r],r));return n}function W(A){1===A.format?Y.call(this,"coverageTable",[{name:"coverageFormat",type:"USHORT",value:1}].concat(P("glyph",A.glyphs))):2===A.format?Y.call(this,"coverageTable",[{name:"coverageFormat",type:"USHORT",value:2}].concat(_("rangeRecord",A.ranges,(function(A){return[{name:"startGlyphID",type:"USHORT",value:A.start},{name:"endGlyphID",type:"USHORT",value:A.end},{name:"startCoverageIndex",type:"USHORT",value:A.index}]})))):N.assert(!1,"Coverage format must be 1 or 2.")}function X(A){Y.call(this,"scriptListTable",_("scriptRecord",A,(function(A,e){var t=A.script,i=t.defaultLangSys;return N.assert(!!i,"Unable to write GSUB: script "+A.tag+" has no default language system."),[{name:"scriptTag"+e,type:"TAG",value:A.tag},{name:"script"+e,type:"TABLE",value:new Y("scriptTable",[{name:"defaultLangSys",type:"TABLE",value:new Y("defaultLangSys",[{name:"lookupOrder",type:"USHORT",value:0},{name:"reqFeatureIndex",type:"USHORT",value:i.reqFeatureIndex}].concat(P("featureIndex",i.featureIndexes)))}].concat(_("langSys",t.langSysRecords,(function(A,e){var t=A.langSys;return[{name:"langSysTag"+e,type:"TAG",value:A.tag},{name:"langSys"+e,type:"TABLE",value:new Y("langSys",[{name:"lookupOrder",type:"USHORT",value:0},{name:"reqFeatureIndex",type:"USHORT",value:t.reqFeatureIndex}].concat(P("featureIndex",t.featureIndexes)))}]}))))}]})))}function j(A){Y.call(this,"featureListTable",_("featureRecord",A,(function(A,e){var t=A.feature;return[{name:"featureTag"+e,type:"TAG",value:A.tag},{name:"feature"+e,type:"TABLE",value:new Y("featureTable",[{name:"featureParams",type:"USHORT",value:t.featureParams}].concat(P("lookupListIndex",t.lookupListIndexes)))}]})))}function Z(A,e){Y.call(this,"lookupListTable",V("lookup",A,(function(A){var t=e[A.lookupType];return N.assert(!!t,"Unable to write GSUB lookup type "+A.lookupType+" tables."),new Y("lookupTable",[{name:"lookupType",type:"USHORT",value:A.lookupType},{name:"lookupFlag",type:"USHORT",value:A.lookupFlag}].concat(V("subtable",A.subtables,t)))})))}M.CHARSTRING=function(A){if(H){var e=H.get(A);if(void 0!==e)return e}for(var t=[],i=A.length,n=0;n<i;n+=1){var r=A[n];t=t.concat(M[r.type](r.value))}return H&&H.set(A,t),t},R.CHARSTRING=function(A){return M.CHARSTRING(A).length},M.OBJECT=function(A){var e=M[A.type];return N.argument(void 0!==e,"No encoding function for type "+A.type),e(A.value)},R.OBJECT=function(A){var e=R[A.type];return N.argument(void 0!==e,"No sizeOf function for type "+A.type),e(A.value)},M.TABLE=function(A){for(var e=[],t=A.fields.length,i=[],n=[],r=0;r<t;r+=1){var s=A.fields[r],a=M[s.type];N.argument(void 0!==a,"No encoding function for field type "+s.type+" ("+s.name+")");var o=A[s.name];void 0===o&&(o=s.value);var g=a(o);"TABLE"===s.type?(n.push(e.length),e=e.concat([0,0]),i.push(g)):e=e.concat(g)}for(var I=0;I<i.length;I+=1){var Q=n[I],C=e.length;N.argument(C<65536,"Table "+A.tableName+" too big."),e[Q]=C>>8,e[Q+1]=255&C,e=e.concat(i[I])}return e},R.TABLE=function(A){for(var e=0,t=A.fields.length,i=0;i<t;i+=1){var n=A.fields[i],r=R[n.type];N.argument(void 0!==r,"No sizeOf function for field type "+n.type+" ("+n.name+")");var s=A[n.name];void 0===s&&(s=n.value),e+=r(s),"TABLE"===n.type&&(e+=2)}return e},M.RECORD=M.TABLE,R.RECORD=R.TABLE,M.LITERAL=function(A){return A},R.LITERAL=function(A){return A.length},Y.prototype.encode=function(){return M.TABLE(this)},Y.prototype.sizeOf=function(){return R.TABLE(this)},W.prototype=Object.create(Y.prototype),W.prototype.constructor=W,X.prototype=Object.create(Y.prototype),X.prototype.constructor=X,j.prototype=Object.create(Y.prototype),j.prototype.constructor=j,Z.prototype=Object.create(Y.prototype),Z.prototype.constructor=Z;var $={Table:Y,Record:Y,Coverage:W,ScriptList:X,FeatureList:j,LookupList:Z,ushortList:P,tableList:V,recordList:_};function AA(A,e){return A.getUint8(e)}function eA(A,e){return A.getUint16(e,!1)}function tA(A,e){return A.getUint32(e,!1)}function iA(A,e){return A.getInt16(e,!1)+A.getUint16(e+2,!1)/65535}var nA={byte:1,uShort:2,short:2,uLong:4,fixed:4,longDateTime:8,tag:4};function rA(A,e){this.data=A,this.offset=e,this.relativeOffset=0}rA.prototype.parseByte=function(){var A=this.data.getUint8(this.offset+this.relativeOffset);return this.relativeOffset+=1,A},rA.prototype.parseChar=function(){var A=this.data.getInt8(this.offset+this.relativeOffset);return this.relativeOffset+=1,A},rA.prototype.parseCard8=rA.prototype.parseByte,rA.prototype.parseUShort=function(){var A=this.data.getUint16(this.offset+this.relativeOffset);return this.relativeOffset+=2,A},rA.prototype.parseCard16=rA.prototype.parseUShort,rA.prototype.parseSID=rA.prototype.parseUShort,rA.prototype.parseOffset16=rA.prototype.parseUShort,rA.prototype.parseShort=function(){var A=this.data.getInt16(this.offset+this.relativeOffset);return this.relativeOffset+=2,A},rA.prototype.parseF2Dot14=function(){var A=this.data.getInt16(this.offset+this.relativeOffset)/16384;return this.relativeOffset+=2,A},rA.prototype.parseULong=function(){var A=tA(this.data,this.offset+this.relativeOffset);return this.relativeOffset+=4,A},rA.prototype.parseOffset32=rA.prototype.parseULong,rA.prototype.parseFixed=function(){var A=iA(this.data,this.offset+this.relativeOffset);return this.relativeOffset+=4,A},rA.prototype.parseString=function(A){var e=this.data,t=this.offset+this.relativeOffset,i="";this.relativeOffset+=A;for(var n=0;n<A;n++)i+=String.fromCharCode(e.getUint8(t+n));return i},rA.prototype.parseTag=function(){return this.parseString(4)},rA.prototype.parseLongDateTime=function(){var A=tA(this.data,this.offset+this.relativeOffset+4);return A-=2082844800,this.relativeOffset+=8,A},rA.prototype.parseVersion=function(A){var e=eA(this.data,this.offset+this.relativeOffset),t=eA(this.data,this.offset+this.relativeOffset+2);return this.relativeOffset+=4,void 0===A&&(A=4096),e+t/A/10},rA.prototype.skip=function(A,e){void 0===e&&(e=1),this.relativeOffset+=nA[A]*e},rA.prototype.parseULongList=function(A){void 0===A&&(A=this.parseULong());for(var e=new Array(A),t=this.data,i=this.offset+this.relativeOffset,n=0;n<A;n++)e[n]=t.getUint32(i),i+=4;return this.relativeOffset+=4*A,e},rA.prototype.parseOffset16List=rA.prototype.parseUShortList=function(A){void 0===A&&(A=this.parseUShort());for(var e=new Array(A),t=this.data,i=this.offset+this.relativeOffset,n=0;n<A;n++)e[n]=t.getUint16(i),i+=2;return this.relativeOffset+=2*A,e},rA.prototype.parseShortList=function(A){for(var e=new Array(A),t=this.data,i=this.offset+this.relativeOffset,n=0;n<A;n++)e[n]=t.getInt16(i),i+=2;return this.relativeOffset+=2*A,e},rA.prototype.parseByteList=function(A){for(var e=new Array(A),t=this.data,i=this.offset+this.relativeOffset,n=0;n<A;n++)e[n]=t.getUint8(i++);return this.relativeOffset+=A,e},rA.prototype.parseList=function(A,e){e||(e=A,A=this.parseUShort());for(var t=new Array(A),i=0;i<A;i++)t[i]=e.call(this);return t},rA.prototype.parseList32=function(A,e){e||(e=A,A=this.parseULong());for(var t=new Array(A),i=0;i<A;i++)t[i]=e.call(this);return t},rA.prototype.parseRecordList=function(A,e){e||(e=A,A=this.parseUShort());for(var t=new Array(A),i=Object.keys(e),n=0;n<A;n++){for(var r={},s=0;s<i.length;s++){var a=i[s],o=e[a];r[a]=o.call(this)}t[n]=r}return t},rA.prototype.parseRecordList32=function(A,e){e||(e=A,A=this.parseULong());for(var t=new Array(A),i=Object.keys(e),n=0;n<A;n++){for(var r={},s=0;s<i.length;s++){var a=i[s],o=e[a];r[a]=o.call(this)}t[n]=r}return t},rA.prototype.parseStruct=function(A){if("function"==typeof A)return A.call(this);for(var e=Object.keys(A),t={},i=0;i<e.length;i++){var n=e[i],r=A[n];t[n]=r.call(this)}return t},rA.prototype.parseValueRecord=function(A){if(void 0===A&&(A=this.parseUShort()),0!==A){var e={};return 1&A&&(e.xPlacement=this.parseShort()),2&A&&(e.yPlacement=this.parseShort()),4&A&&(e.xAdvance=this.parseShort()),8&A&&(e.yAdvance=this.parseShort()),16&A&&(e.xPlaDevice=void 0,this.parseShort()),32&A&&(e.yPlaDevice=void 0,this.parseShort()),64&A&&(e.xAdvDevice=void 0,this.parseShort()),128&A&&(e.yAdvDevice=void 0,this.parseShort()),e}},rA.prototype.parseValueRecordList=function(){for(var A=this.parseUShort(),e=this.parseUShort(),t=new Array(e),i=0;i<e;i++)t[i]=this.parseValueRecord(A);return t},rA.prototype.parsePointer=function(A){var e=this.parseOffset16();if(e>0)return new rA(this.data,this.offset+e).parseStruct(A)},rA.prototype.parsePointer32=function(A){var e=this.parseOffset32();if(e>0)return new rA(this.data,this.offset+e).parseStruct(A)},rA.prototype.parseListOfLists=function(A){for(var e=this.parseOffset16List(),t=e.length,i=this.relativeOffset,n=new Array(t),r=0;r<t;r++){var s=e[r];if(0!==s)if(this.relativeOffset=s,A){for(var a=this.parseOffset16List(),o=new Array(a.length),g=0;g<a.length;g++)this.relativeOffset=s+a[g],o[g]=A.call(this);n[r]=o}else n[r]=this.parseUShortList();else n[r]=void 0}return this.relativeOffset=i,n},rA.prototype.parseCoverage=function(){var A=this.offset+this.relativeOffset,e=this.parseUShort(),t=this.parseUShort();if(1===e)return{format:1,glyphs:this.parseUShortList(t)};if(2===e){for(var i=new Array(t),n=0;n<t;n++)i[n]={start:this.parseUShort(),end:this.parseUShort(),index:this.parseUShort()};return{format:2,ranges:i}}throw new Error("0x"+A.toString(16)+": Coverage format must be 1 or 2.")},rA.prototype.parseClassDef=function(){var A=this.offset+this.relativeOffset,e=this.parseUShort();if(1===e)return{format:1,startGlyph:this.parseUShort(),classes:this.parseUShortList()};if(2===e)return{format:2,ranges:this.parseRecordList({start:rA.uShort,end:rA.uShort,classId:rA.uShort})};throw new Error("0x"+A.toString(16)+": ClassDef format must be 1 or 2.")},rA.list=function(A,e){return function(){return this.parseList(A,e)}},rA.list32=function(A,e){return function(){return this.parseList32(A,e)}},rA.recordList=function(A,e){return function(){return this.parseRecordList(A,e)}},rA.recordList32=function(A,e){return function(){return this.parseRecordList32(A,e)}},rA.pointer=function(A){return function(){return this.parsePointer(A)}},rA.pointer32=function(A){return function(){return this.parsePointer32(A)}},rA.tag=rA.prototype.parseTag,rA.byte=rA.prototype.parseByte,rA.uShort=rA.offset16=rA.prototype.parseUShort,rA.uShortList=rA.prototype.parseUShortList,rA.uLong=rA.offset32=rA.prototype.parseULong,rA.uLongList=rA.prototype.parseULongList,rA.struct=rA.prototype.parseStruct,rA.coverage=rA.prototype.parseCoverage,rA.classDef=rA.prototype.parseClassDef;var sA={reserved:rA.uShort,reqFeatureIndex:rA.uShort,featureIndexes:rA.uShortList};rA.prototype.parseScriptList=function(){return this.parsePointer(rA.recordList({tag:rA.tag,script:rA.pointer({defaultLangSys:rA.pointer(sA),langSysRecords:rA.recordList({tag:rA.tag,langSys:rA.pointer(sA)})})}))||[]},rA.prototype.parseFeatureList=function(){return this.parsePointer(rA.recordList({tag:rA.tag,feature:rA.pointer({featureParams:rA.offset16,lookupListIndexes:rA.uShortList})}))||[]},rA.prototype.parseLookupList=function(A){return this.parsePointer(rA.list(rA.pointer((function(){var e=this.parseUShort();N.argument(1<=e&&e<=9,"GPOS/GSUB lookup type "+e+" unknown.");var t=this.parseUShort(),i=16&t;return{lookupType:e,lookupFlag:t,subtables:this.parseList(rA.pointer(A[e])),markFilteringSet:i?this.parseUShort():void 0}}))))||[]},rA.prototype.parseFeatureVariationsList=function(){return this.parsePointer32((function(){var A=this.parseUShort(),e=this.parseUShort();return N.argument(1===A&&e<1,"GPOS/GSUB feature variations table unknown."),this.parseRecordList32({conditionSetOffset:rA.offset32,featureTableSubstitutionOffset:rA.offset32})}))||[]};var aA={getByte:AA,getCard8:AA,getUShort:eA,getCard16:eA,getShort:function(A,e){return A.getInt16(e,!1)},getULong:tA,getFixed:iA,getTag:function(A,e){for(var t="",i=e;i<e+4;i+=1)t+=String.fromCharCode(A.getInt8(i));return t},getOffset:function(A,e,t){for(var i=0,n=0;n<t;n+=1)i<<=8,i+=A.getUint8(e+n);return i},getBytes:function(A,e,t){for(var i=[],n=e;n<t;n+=1)i.push(A.getUint8(n));return i},bytesToString:function(A){for(var e="",t=0;t<A.length;t+=1)e+=String.fromCharCode(A[t]);return e},Parser:rA};function oA(A,e,t){A.segments.push({end:e,start:e,delta:-(e-t),offset:0,glyphIndex:t})}var gA={parse:function(A,e){var t={};t.version=aA.getUShort(A,e),N.argument(0===t.version,"cmap table version should be 0."),t.numTables=aA.getUShort(A,e+2);for(var i=-1,n=t.numTables-1;n>=0;n-=1){var r=aA.getUShort(A,e+4+8*n),s=aA.getUShort(A,e+4+8*n+2);if(3===r&&(0===s||1===s||10===s)||0===r&&(0===s||1===s||2===s||3===s||4===s)){i=aA.getULong(A,e+4+8*n+4);break}}if(-1===i)throw new Error("No valid cmap sub-tables found.");var a=new aA.Parser(A,e+i);if(t.format=a.parseUShort(),12===t.format)!function(A,e){var t;e.parseUShort(),A.length=e.parseULong(),A.language=e.parseULong(),A.groupCount=t=e.parseULong(),A.glyphIndexMap={};for(var i=0;i<t;i+=1)for(var n=e.parseULong(),r=e.parseULong(),s=e.parseULong(),a=n;a<=r;a+=1)A.glyphIndexMap[a]=s,s++}(t,a);else{if(4!==t.format)throw new Error("Only format 4 and 12 cmap tables are supported (found format "+t.format+").");!function(A,e,t,i,n){var r;A.length=e.parseUShort(),A.language=e.parseUShort(),A.segCount=r=e.parseUShort()>>1,e.skip("uShort",3),A.glyphIndexMap={};for(var s=new aA.Parser(t,i+n+14),a=new aA.Parser(t,i+n+16+2*r),o=new aA.Parser(t,i+n+16+4*r),g=new aA.Parser(t,i+n+16+6*r),I=i+n+16+8*r,Q=0;Q<r-1;Q+=1)for(var C=void 0,c=s.parseUShort(),B=a.parseUShort(),l=o.parseShort(),u=g.parseUShort(),E=B;E<=c;E+=1)0!==u?(I=g.offset+g.relativeOffset-2,I+=u,I+=2*(E-B),0!==(C=aA.getUShort(t,I))&&(C=C+l&65535)):C=E+l&65535,A.glyphIndexMap[E]=C}(t,a,A,e,i)}return t},make:function(A){var e,t=!0;for(e=A.length-1;e>0;e-=1){if(A.get(e).unicode>65535){console.log("Adding CMAP format 12 (needed!)"),t=!1;break}}var i=[{name:"version",type:"USHORT",value:0},{name:"numTables",type:"USHORT",value:t?1:2},{name:"platformID",type:"USHORT",value:3},{name:"encodingID",type:"USHORT",value:1},{name:"offset",type:"ULONG",value:t?12:20}];t||(i=i.concat([{name:"cmap12PlatformID",type:"USHORT",value:3},{name:"cmap12EncodingID",type:"USHORT",value:10},{name:"cmap12Offset",type:"ULONG",value:0}])),i=i.concat([{name:"format",type:"USHORT",value:4},{name:"cmap4Length",type:"USHORT",value:0},{name:"language",type:"USHORT",value:0},{name:"segCountX2",type:"USHORT",value:0},{name:"searchRange",type:"USHORT",value:0},{name:"entrySelector",type:"USHORT",value:0},{name:"rangeShift",type:"USHORT",value:0}]);var n=new $.Table("cmap",i);for(n.segments=[],e=0;e<A.length;e+=1){for(var r=A.get(e),s=0;s<r.unicodes.length;s+=1)oA(n,r.unicodes[s],e);n.segments=n.segments.sort((function(A,e){return A.start-e.start}))}!function(A){A.segments.push({end:65535,start:65535,delta:1,offset:0})}(n);var a=n.segments.length,o=0,g=[],I=[],Q=[],C=[],c=[],B=[];for(e=0;e<a;e+=1){var l=n.segments[e];l.end<=65535&&l.start<=65535?(g=g.concat({name:"end_"+e,type:"USHORT",value:l.end}),I=I.concat({name:"start_"+e,type:"USHORT",value:l.start}),Q=Q.concat({name:"idDelta_"+e,type:"SHORT",value:l.delta}),C=C.concat({name:"idRangeOffset_"+e,type:"USHORT",value:l.offset}),void 0!==l.glyphId&&(c=c.concat({name:"glyph_"+e,type:"USHORT",value:l.glyphId}))):o+=1,t||void 0===l.glyphIndex||(B=(B=(B=B.concat({name:"cmap12Start_"+e,type:"ULONG",value:l.start})).concat({name:"cmap12End_"+e,type:"ULONG",value:l.end})).concat({name:"cmap12Glyph_"+e,type:"ULONG",value:l.glyphIndex}))}if(n.segCountX2=2*(a-o),n.searchRange=2*Math.pow(2,Math.floor(Math.log(a-o)/Math.log(2))),n.entrySelector=Math.log(n.searchRange/2)/Math.log(2),n.rangeShift=n.segCountX2-n.searchRange,n.fields=n.fields.concat(g),n.fields.push({name:"reservedPad",type:"USHORT",value:0}),n.fields=n.fields.concat(I),n.fields=n.fields.concat(Q),n.fields=n.fields.concat(C),n.fields=n.fields.concat(c),n.cmap4Length=14+2*g.length+2+2*I.length+2*Q.length+2*C.length+2*c.length,!t){var u=16+4*B.length;n.cmap12Offset=20+n.cmap4Length,n.fields=n.fields.concat([{name:"cmap12Format",type:"USHORT",value:12},{name:"cmap12Reserved",type:"USHORT",value:0},{name:"cmap12Length",type:"ULONG",value:u},{name:"cmap12Language",type:"ULONG",value:0},{name:"cmap12nGroups",type:"ULONG",value:B.length/3}]),n.fields=n.fields.concat(B)}return n}},IA=[".notdef","space","exclam","quotedbl","numbersign","dollar","percent","ampersand","quoteright","parenleft","parenright","asterisk","plus","comma","hyphen","period","slash","zero","one","two","three","four","five","six","seven","eight","nine","colon","semicolon","less","equal","greater","question","at","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","bracketleft","backslash","bracketright","asciicircum","underscore","quoteleft","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","braceleft","bar","braceright","asciitilde","exclamdown","cent","sterling","fraction","yen","florin","section","currency","quotesingle","quotedblleft","guillemotleft","guilsinglleft","guilsinglright","fi","fl","endash","dagger","daggerdbl","periodcentered","paragraph","bullet","quotesinglbase","quotedblbase","quotedblright","guillemotright","ellipsis","perthousand","questiondown","grave","acute","circumflex","tilde","macron","breve","dotaccent","dieresis","ring","cedilla","hungarumlaut","ogonek","caron","emdash","AE","ordfeminine","Lslash","Oslash","OE","ordmasculine","ae","dotlessi","lslash","oslash","oe","germandbls","onesuperior","logicalnot","mu","trademark","Eth","onehalf","plusminus","Thorn","onequarter","divide","brokenbar","degree","thorn","threequarters","twosuperior","registered","minus","eth","multiply","threesuperior","copyright","Aacute","Acircumflex","Adieresis","Agrave","Aring","Atilde","Ccedilla","Eacute","Ecircumflex","Edieresis","Egrave","Iacute","Icircumflex","Idieresis","Igrave","Ntilde","Oacute","Ocircumflex","Odieresis","Ograve","Otilde","Scaron","Uacute","Ucircumflex","Udieresis","Ugrave","Yacute","Ydieresis","Zcaron","aacute","acircumflex","adieresis","agrave","aring","atilde","ccedilla","eacute","ecircumflex","edieresis","egrave","iacute","icircumflex","idieresis","igrave","ntilde","oacute","ocircumflex","odieresis","ograve","otilde","scaron","uacute","ucircumflex","udieresis","ugrave","yacute","ydieresis","zcaron","exclamsmall","Hungarumlautsmall","dollaroldstyle","dollarsuperior","ampersandsmall","Acutesmall","parenleftsuperior","parenrightsuperior","266 ff","onedotenleader","zerooldstyle","oneoldstyle","twooldstyle","threeoldstyle","fouroldstyle","fiveoldstyle","sixoldstyle","sevenoldstyle","eightoldstyle","nineoldstyle","commasuperior","threequartersemdash","periodsuperior","questionsmall","asuperior","bsuperior","centsuperior","dsuperior","esuperior","isuperior","lsuperior","msuperior","nsuperior","osuperior","rsuperior","ssuperior","tsuperior","ff","ffi","ffl","parenleftinferior","parenrightinferior","Circumflexsmall","hyphensuperior","Gravesmall","Asmall","Bsmall","Csmall","Dsmall","Esmall","Fsmall","Gsmall","Hsmall","Ismall","Jsmall","Ksmall","Lsmall","Msmall","Nsmall","Osmall","Psmall","Qsmall","Rsmall","Ssmall","Tsmall","Usmall","Vsmall","Wsmall","Xsmall","Ysmall","Zsmall","colonmonetary","onefitted","rupiah","Tildesmall","exclamdownsmall","centoldstyle","Lslashsmall","Scaronsmall","Zcaronsmall","Dieresissmall","Brevesmall","Caronsmall","Dotaccentsmall","Macronsmall","figuredash","hypheninferior","Ogoneksmall","Ringsmall","Cedillasmall","questiondownsmall","oneeighth","threeeighths","fiveeighths","seveneighths","onethird","twothirds","zerosuperior","foursuperior","fivesuperior","sixsuperior","sevensuperior","eightsuperior","ninesuperior","zeroinferior","oneinferior","twoinferior","threeinferior","fourinferior","fiveinferior","sixinferior","seveninferior","eightinferior","nineinferior","centinferior","dollarinferior","periodinferior","commainferior","Agravesmall","Aacutesmall","Acircumflexsmall","Atildesmall","Adieresissmall","Aringsmall","AEsmall","Ccedillasmall","Egravesmall","Eacutesmall","Ecircumflexsmall","Edieresissmall","Igravesmall","Iacutesmall","Icircumflexsmall","Idieresissmall","Ethsmall","Ntildesmall","Ogravesmall","Oacutesmall","Ocircumflexsmall","Otildesmall","Odieresissmall","OEsmall","Oslashsmall","Ugravesmall","Uacutesmall","Ucircumflexsmall","Udieresissmall","Yacutesmall","Thornsmall","Ydieresissmall","001.000","001.001","001.002","001.003","Black","Bold","Book","Light","Medium","Regular","Roman","Semibold"],QA=["","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","space","exclam","quotedbl","numbersign","dollar","percent","ampersand","quoteright","parenleft","parenright","asterisk","plus","comma","hyphen","period","slash","zero","one","two","three","four","five","six","seven","eight","nine","colon","semicolon","less","equal","greater","question","at","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","bracketleft","backslash","bracketright","asciicircum","underscore","quoteleft","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","braceleft","bar","braceright","asciitilde","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","exclamdown","cent","sterling","fraction","yen","florin","section","currency","quotesingle","quotedblleft","guillemotleft","guilsinglleft","guilsinglright","fi","fl","","endash","dagger","daggerdbl","periodcentered","","paragraph","bullet","quotesinglbase","quotedblbase","quotedblright","guillemotright","ellipsis","perthousand","","questiondown","","grave","acute","circumflex","tilde","macron","breve","dotaccent","dieresis","","ring","cedilla","","hungarumlaut","ogonek","caron","emdash","","","","","","","","","","","","","","","","","AE","","ordfeminine","","","","","Lslash","Oslash","OE","ordmasculine","","","","","","ae","","","","dotlessi","","","lslash","oslash","oe","germandbls"],CA=["","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","space","exclamsmall","Hungarumlautsmall","","dollaroldstyle","dollarsuperior","ampersandsmall","Acutesmall","parenleftsuperior","parenrightsuperior","twodotenleader","onedotenleader","comma","hyphen","period","fraction","zerooldstyle","oneoldstyle","twooldstyle","threeoldstyle","fouroldstyle","fiveoldstyle","sixoldstyle","sevenoldstyle","eightoldstyle","nineoldstyle","colon","semicolon","commasuperior","threequartersemdash","periodsuperior","questionsmall","","asuperior","bsuperior","centsuperior","dsuperior","esuperior","","","isuperior","","","lsuperior","msuperior","nsuperior","osuperior","","","rsuperior","ssuperior","tsuperior","","ff","fi","fl","ffi","ffl","parenleftinferior","","parenrightinferior","Circumflexsmall","hyphensuperior","Gravesmall","Asmall","Bsmall","Csmall","Dsmall","Esmall","Fsmall","Gsmall","Hsmall","Ismall","Jsmall","Ksmall","Lsmall","Msmall","Nsmall","Osmall","Psmall","Qsmall","Rsmall","Ssmall","Tsmall","Usmall","Vsmall","Wsmall","Xsmall","Ysmall","Zsmall","colonmonetary","onefitted","rupiah","Tildesmall","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","exclamdownsmall","centoldstyle","Lslashsmall","","","Scaronsmall","Zcaronsmall","Dieresissmall","Brevesmall","Caronsmall","","Dotaccentsmall","","","Macronsmall","","","figuredash","hypheninferior","","","Ogoneksmall","Ringsmall","Cedillasmall","","","","onequarter","onehalf","threequarters","questiondownsmall","oneeighth","threeeighths","fiveeighths","seveneighths","onethird","twothirds","","","zerosuperior","onesuperior","twosuperior","threesuperior","foursuperior","fivesuperior","sixsuperior","sevensuperior","eightsuperior","ninesuperior","zeroinferior","oneinferior","twoinferior","threeinferior","fourinferior","fiveinferior","sixinferior","seveninferior","eightinferior","nineinferior","centinferior","dollarinferior","periodinferior","commainferior","Agravesmall","Aacutesmall","Acircumflexsmall","Atildesmall","Adieresissmall","Aringsmall","AEsmall","Ccedillasmall","Egravesmall","Eacutesmall","Ecircumflexsmall","Edieresissmall","Igravesmall","Iacutesmall","Icircumflexsmall","Idieresissmall","Ethsmall","Ntildesmall","Ogravesmall","Oacutesmall","Ocircumflexsmall","Otildesmall","Odieresissmall","OEsmall","Oslashsmall","Ugravesmall","Uacutesmall","Ucircumflexsmall","Udieresissmall","Yacutesmall","Thornsmall","Ydieresissmall"],cA=[".notdef",".null","nonmarkingreturn","space","exclam","quotedbl","numbersign","dollar","percent","ampersand","quotesingle","parenleft","parenright","asterisk","plus","comma","hyphen","period","slash","zero","one","two","three","four","five","six","seven","eight","nine","colon","semicolon","less","equal","greater","question","at","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","bracketleft","backslash","bracketright","asciicircum","underscore","grave","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","braceleft","bar","braceright","asciitilde","Adieresis","Aring","Ccedilla","Eacute","Ntilde","Odieresis","Udieresis","aacute","agrave","acircumflex","adieresis","atilde","aring","ccedilla","eacute","egrave","ecircumflex","edieresis","iacute","igrave","icircumflex","idieresis","ntilde","oacute","ograve","ocircumflex","odieresis","otilde","uacute","ugrave","ucircumflex","udieresis","dagger","degree","cent","sterling","section","bullet","paragraph","germandbls","registered","copyright","trademark","acute","dieresis","notequal","AE","Oslash","infinity","plusminus","lessequal","greaterequal","yen","mu","partialdiff","summation","product","pi","integral","ordfeminine","ordmasculine","Omega","ae","oslash","questiondown","exclamdown","logicalnot","radical","florin","approxequal","Delta","guillemotleft","guillemotright","ellipsis","nonbreakingspace","Agrave","Atilde","Otilde","OE","oe","endash","emdash","quotedblleft","quotedblright","quoteleft","quoteright","divide","lozenge","ydieresis","Ydieresis","fraction","currency","guilsinglleft","guilsinglright","fi","fl","daggerdbl","periodcentered","quotesinglbase","quotedblbase","perthousand","Acircumflex","Ecircumflex","Aacute","Edieresis","Egrave","Iacute","Icircumflex","Idieresis","Igrave","Oacute","Ocircumflex","apple","Ograve","Uacute","Ucircumflex","Ugrave","dotlessi","circumflex","tilde","macron","breve","dotaccent","ring","cedilla","hungarumlaut","ogonek","caron","Lslash","lslash","Scaron","scaron","Zcaron","zcaron","brokenbar","Eth","eth","Yacute","yacute","Thorn","thorn","minus","multiply","onesuperior","twosuperior","threesuperior","onehalf","onequarter","threequarters","franc","Gbreve","gbreve","Idotaccent","Scedilla","scedilla","Cacute","cacute","Ccaron","ccaron","dcroat"];function BA(A){this.font=A}function lA(A){this.cmap=A}function uA(A,e){this.encoding=A,this.charset=e}function EA(A){switch(A.version){case 1:this.names=cA.slice();break;case 2:this.names=new Array(A.numberOfGlyphs);for(var e=0;e<A.numberOfGlyphs;e++)A.glyphNameIndex[e]<cA.length?this.names[e]=cA[A.glyphNameIndex[e]]:this.names[e]=A.names[A.glyphNameIndex[e]-cA.length];break;case 2.5:this.names=new Array(A.numberOfGlyphs);for(var t=0;t<A.numberOfGlyphs;t++)this.names[t]=cA[t+A.glyphNameIndex[t]];break;default:this.names=[]}}function fA(A,e){e.lowMemory?function(A){A._IndexToUnicodeMap={};for(var e=A.tables.cmap.glyphIndexMap,t=Object.keys(e),i=0;i<t.length;i+=1){var n=t[i],r=e[n];void 0===A._IndexToUnicodeMap[r]?A._IndexToUnicodeMap[r]={unicodes:[parseInt(n)]}:A._IndexToUnicodeMap[r].unicodes.push(parseInt(n))}}(A):function(A){for(var e,t=A.tables.cmap.glyphIndexMap,i=Object.keys(t),n=0;n<i.length;n+=1){var r=i[n],s=t[r];(e=A.glyphs.get(s)).addUnicode(parseInt(r))}for(var a=0;a<A.glyphs.length;a+=1)e=A.glyphs.get(a),A.cffEncoding?A.isCIDFont?e.name="gid"+a:e.name=A.cffEncoding.charset[a]:A.glyphNames.names&&(e.name=A.glyphNames.glyphIndexToName(a))}(A)}BA.prototype.charToGlyphIndex=function(A){var e=A.codePointAt(0),t=this.font.glyphs;if(t)for(var i=0;i<t.length;i+=1)for(var n=t.get(i),r=0;r<n.unicodes.length;r+=1)if(n.unicodes[r]===e)return i;return null},lA.prototype.charToGlyphIndex=function(A){return this.cmap.glyphIndexMap[A.codePointAt(0)]||0},uA.prototype.charToGlyphIndex=function(A){var e=A.codePointAt(0),t=this.encoding[e];return this.charset.indexOf(t)},EA.prototype.nameToGlyphIndex=function(A){return this.names.indexOf(A)},EA.prototype.glyphIndexToName=function(A){return this.names[A]};var hA={line:function(A,e,t,i,n){A.beginPath(),A.moveTo(e,t),A.lineTo(i,n),A.stroke()}};function pA(A){this.bindConstructorValues(A)}function yA(A,e,t){Object.defineProperty(A,e,{get:function(){return A.path,A[t]},set:function(e){A[t]=e},enumerable:!0,configurable:!0})}function dA(A,e){if(this.font=A,this.glyphs={},Array.isArray(e))for(var t=0;t<e.length;t++){var i=e[t];i.path.unitsPerEm=A.unitsPerEm,this.glyphs[t]=i}this.length=e&&e.length||0}pA.prototype.bindConstructorValues=function(A){var e,t;this.index=A.index||0,this.name=A.name||null,this.unicode=A.unicode||void 0,this.unicodes=A.unicodes||void 0!==A.unicode?[A.unicode]:[],"xMin"in A&&(this.xMin=A.xMin),"yMin"in A&&(this.yMin=A.yMin),"xMax"in A&&(this.xMax=A.xMax),"yMax"in A&&(this.yMax=A.yMax),"advanceWidth"in A&&(this.advanceWidth=A.advanceWidth),Object.defineProperty(this,"path",(e=A.path,t=e||new v,{configurable:!0,get:function(){return"function"==typeof t&&(t=t()),t},set:function(A){t=A}}))},pA.prototype.addUnicode=function(A){0===this.unicodes.length&&(this.unicode=A),this.unicodes.push(A)},pA.prototype.getBoundingBox=function(){return this.path.getBoundingBox()},pA.prototype.getPath=function(A,e,t,i,n){var r,s;A=void 0!==A?A:0,e=void 0!==e?e:0,t=void 0!==t?t:72,i||(i={});var a=i.xScale,o=i.yScale;if(i.hinting&&n&&n.hinting&&(s=this.path&&n.hinting.exec(this,t)),s)r=n.hinting.getCommands(s),A=Math.round(A),e=Math.round(e),a=o=1;else{r=this.path.commands;var g=1/(this.path.unitsPerEm||1e3)*t;void 0===a&&(a=g),void 0===o&&(o=g)}for(var I=new v,Q=0;Q<r.length;Q+=1){var C=r[Q];"M"===C.type?I.moveTo(A+C.x*a,e+-C.y*o):"L"===C.type?I.lineTo(A+C.x*a,e+-C.y*o):"Q"===C.type?I.quadraticCurveTo(A+C.x1*a,e+-C.y1*o,A+C.x*a,e+-C.y*o):"C"===C.type?I.curveTo(A+C.x1*a,e+-C.y1*o,A+C.x2*a,e+-C.y2*o,A+C.x*a,e+-C.y*o):"Z"===C.type&&I.closePath()}return I},pA.prototype.getContours=function(){if(void 0===this.points)return[];for(var A=[],e=[],t=0;t<this.points.length;t+=1){var i=this.points[t];e.push(i),i.lastPointOfContour&&(A.push(e),e=[])}return N.argument(0===e.length,"There are still points left in the current contour."),A},pA.prototype.getMetrics=function(){for(var A=this.path.commands,e=[],t=[],i=0;i<A.length;i+=1){var n=A[i];"Z"!==n.type&&(e.push(n.x),t.push(n.y)),"Q"!==n.type&&"C"!==n.type||(e.push(n.x1),t.push(n.y1)),"C"===n.type&&(e.push(n.x2),t.push(n.y2))}var r={xMin:Math.min.apply(null,e),yMin:Math.min.apply(null,t),xMax:Math.max.apply(null,e),yMax:Math.max.apply(null,t),leftSideBearing:this.leftSideBearing};return isFinite(r.xMin)||(r.xMin=0),isFinite(r.xMax)||(r.xMax=this.advanceWidth),isFinite(r.yMin)||(r.yMin=0),isFinite(r.yMax)||(r.yMax=0),r.rightSideBearing=this.advanceWidth-r.leftSideBearing-(r.xMax-r.xMin),r},pA.prototype.draw=function(A,e,t,i,n){this.getPath(e,t,i,n).draw(A)},pA.prototype.drawPoints=function(A,e,t,i){function n(e,t,i,n){A.beginPath();for(var r=0;r<e.length;r+=1)A.moveTo(t+e[r].x*n,i+e[r].y*n),A.arc(t+e[r].x*n,i+e[r].y*n,2,0,2*Math.PI,!1);A.closePath(),A.fill()}e=void 0!==e?e:0,t=void 0!==t?t:0,i=void 0!==i?i:24;for(var r=1/this.path.unitsPerEm*i,s=[],a=[],o=this.path,g=0;g<o.commands.length;g+=1){var I=o.commands[g];void 0!==I.x&&s.push({x:I.x,y:-I.y}),void 0!==I.x1&&a.push({x:I.x1,y:-I.y1}),void 0!==I.x2&&a.push({x:I.x2,y:-I.y2})}A.fillStyle="blue",n(s,e,t,r),A.fillStyle="red",n(a,e,t,r)},pA.prototype.drawMetrics=function(A,e,t,i){var n;e=void 0!==e?e:0,t=void 0!==t?t:0,i=void 0!==i?i:24,n=1/this.path.unitsPerEm*i,A.lineWidth=1,A.strokeStyle="black",hA.line(A,e,-1e4,e,1e4),hA.line(A,-1e4,t,1e4,t);var r=this.xMin||0,s=this.yMin||0,a=this.xMax||0,o=this.yMax||0,g=this.advanceWidth||0;A.strokeStyle="blue",hA.line(A,e+r*n,-1e4,e+r*n,1e4),hA.line(A,e+a*n,-1e4,e+a*n,1e4),hA.line(A,-1e4,t+-s*n,1e4,t+-s*n),hA.line(A,-1e4,t+-o*n,1e4,t+-o*n),A.strokeStyle="green",hA.line(A,e+g*n,-1e4,e+g*n,1e4)},dA.prototype.get=function(A){if(void 0===this.glyphs[A]){this.font._push(A),"function"==typeof this.glyphs[A]&&(this.glyphs[A]=this.glyphs[A]());var e=this.glyphs[A],t=this.font._IndexToUnicodeMap[A];if(t)for(var i=0;i<t.unicodes.length;i++)e.addUnicode(t.unicodes[i]);this.font.cffEncoding?this.font.isCIDFont?e.name="gid"+A:e.name=this.font.cffEncoding.charset[A]:this.font.glyphNames.names&&(e.name=this.font.glyphNames.glyphIndexToName(A)),this.glyphs[A].advanceWidth=this.font._hmtxTableData[A].advanceWidth,this.glyphs[A].leftSideBearing=this.font._hmtxTableData[A].leftSideBearing}else"function"==typeof this.glyphs[A]&&(this.glyphs[A]=this.glyphs[A]());return this.glyphs[A]},dA.prototype.push=function(A,e){this.glyphs[A]=e,this.length++};var mA={GlyphSet:dA,glyphLoader:function(A,e){return new pA({index:e,font:A})},ttfGlyphLoader:function(A,e,t,i,n,r){return function(){var s=new pA({index:e,font:A});return s.path=function(){t(s,i,n);var e=r(A.glyphs,s);return e.unitsPerEm=A.unitsPerEm,e},yA(s,"xMin","_xMin"),yA(s,"xMax","_xMax"),yA(s,"yMin","_yMin"),yA(s,"yMax","_yMax"),s}},cffGlyphLoader:function(A,e,t,i){return function(){var n=new pA({index:e,font:A});return n.path=function(){var e=t(A,n,i);return e.unitsPerEm=A.unitsPerEm,e},n}}};function bA(A,e){if(A===e)return!0;if(Array.isArray(A)&&Array.isArray(e)){if(A.length!==e.length)return!1;for(var t=0;t<A.length;t+=1)if(!bA(A[t],e[t]))return!1;return!0}return!1}function DA(A){return A.length<1240?107:A.length<33900?1131:32768}function SA(A,e,t){var i,n,r=[],s=[],a=aA.getCard16(A,e);if(0!==a){var o=aA.getByte(A,e+2);i=e+(a+1)*o+2;for(var g=e+3,I=0;I<a+1;I+=1)r.push(aA.getOffset(A,g,o)),g+=o;n=i+r[a]}else n=e+2;for(var Q=0;Q<r.length-1;Q+=1){var C=aA.getBytes(A,i+r[Q],i+r[Q+1]);t&&(C=t(C)),s.push(C)}return{objects:s,startOffset:e,endOffset:n}}function wA(A,e){if(28===e)return A.parseByte()<<8|A.parseByte();if(29===e)return A.parseByte()<<24|A.parseByte()<<16|A.parseByte()<<8|A.parseByte();if(30===e)return function(A){for(var e="",t=["0","1","2","3","4","5","6","7","8","9",".","E","E-",null,"-"];;){var i=A.parseByte(),n=i>>4,r=15&i;if(15===n)break;if(e+=t[n],15===r)break;e+=t[r]}return parseFloat(e)}(A);if(e>=32&&e<=246)return e-139;if(e>=247&&e<=250)return 256*(e-247)+A.parseByte()+108;if(e>=251&&e<=254)return 256*-(e-251)-A.parseByte()-108;throw new Error("Invalid b0 "+e)}function vA(A,e,t){e=void 0!==e?e:0;var i=new aA.Parser(A,e),n=[],r=[];for(t=void 0!==t?t:A.length;i.relativeOffset<t;){var s=i.parseByte();s<=21?(12===s&&(s=1200+i.parseByte()),n.push([s,r]),r=[]):r.push(wA(i,s))}return function(A){for(var e={},t=0;t<A.length;t+=1){var i=A[t][0],n=A[t][1],r=void 0;if(r=1===n.length?n[0]:n,e.hasOwnProperty(i)&&!isNaN(e[i]))throw new Error("Object "+e+" already has key "+i);e[i]=r}return e}(n)}function kA(A,e){return e=e<=390?IA[e]:A[e-391]}function xA(A,e,t){for(var i,n={},r=0;r<e.length;r+=1){var s=e[r];if(Array.isArray(s.type)){var a=[];a.length=s.type.length;for(var o=0;o<s.type.length;o++)void 0===(i=void 0!==A[s.op]?A[s.op][o]:void 0)&&(i=void 0!==s.value&&void 0!==s.value[o]?s.value[o]:null),"SID"===s.type[o]&&(i=kA(t,i)),a[o]=i;n[s.name]=a}else void 0===(i=A[s.op])&&(i=void 0!==s.value?s.value:null),"SID"===s.type&&(i=kA(t,i)),n[s.name]=i}return n}var NA=[{name:"version",op:0,type:"SID"},{name:"notice",op:1,type:"SID"},{name:"copyright",op:1200,type:"SID"},{name:"fullName",op:2,type:"SID"},{name:"familyName",op:3,type:"SID"},{name:"weight",op:4,type:"SID"},{name:"isFixedPitch",op:1201,type:"number",value:0},{name:"italicAngle",op:1202,type:"number",value:0},{name:"underlinePosition",op:1203,type:"number",value:-100},{name:"underlineThickness",op:1204,type:"number",value:50},{name:"paintType",op:1205,type:"number",value:0},{name:"charstringType",op:1206,type:"number",value:2},{name:"fontMatrix",op:1207,type:["real","real","real","real","real","real"],value:[.001,0,0,.001,0,0]},{name:"uniqueId",op:13,type:"number"},{name:"fontBBox",op:5,type:["number","number","number","number"],value:[0,0,0,0]},{name:"strokeWidth",op:1208,type:"number",value:0},{name:"xuid",op:14,type:[],value:null},{name:"charset",op:15,type:"offset",value:0},{name:"encoding",op:16,type:"offset",value:0},{name:"charStrings",op:17,type:"offset",value:0},{name:"private",op:18,type:["number","offset"],value:[0,0]},{name:"ros",op:1230,type:["SID","SID","number"]},{name:"cidFontVersion",op:1231,type:"number",value:0},{name:"cidFontRevision",op:1232,type:"number",value:0},{name:"cidFontType",op:1233,type:"number",value:0},{name:"cidCount",op:1234,type:"number",value:8720},{name:"uidBase",op:1235,type:"number"},{name:"fdArray",op:1236,type:"offset"},{name:"fdSelect",op:1237,type:"offset"},{name:"fontName",op:1238,type:"SID"}],UA=[{name:"subrs",op:19,type:"offset",value:0},{name:"defaultWidthX",op:20,type:"number",value:0},{name:"nominalWidthX",op:21,type:"number",value:0}];function GA(A,e){return xA(vA(A,0,A.byteLength),NA,e)}function MA(A,e,t,i){return xA(vA(A,e,t),UA,i)}function RA(A,e,t,i){for(var n=[],r=0;r<t.length;r+=1){var s=GA(new DataView(new Uint8Array(t[r]).buffer),i);s._subrs=[],s._subrsBias=0,s._defaultWidthX=0,s._nominalWidthX=0;var a=s.private[0],o=s.private[1];if(0!==a&&0!==o){var g=MA(A,o+e,a,i);if(s._defaultWidthX=g.defaultWidthX,s._nominalWidthX=g.nominalWidthX,0!==g.subrs){var I=SA(A,o+g.subrs+e);s._subrs=I.objects,s._subrsBias=DA(s._subrs)}s._privateDict=g}n.push(s)}return n}function FA(A,e,t){var i,n,r,s,a,o,g,I,Q=new v,C=[],c=0,B=!1,l=!1,u=0,E=0;if(A.isCIDFont){var f=A.tables.cff.topDict._fdSelect[e.index],h=A.tables.cff.topDict._fdArray[f];a=h._subrs,o=h._subrsBias,g=h._defaultWidthX,I=h._nominalWidthX}else a=A.tables.cff.topDict._subrs,o=A.tables.cff.topDict._subrsBias,g=A.tables.cff.topDict._defaultWidthX,I=A.tables.cff.topDict._nominalWidthX;var p=g;function y(A,e){l&&Q.closePath(),Q.moveTo(A,e),l=!0}function d(){C.length%2!=0&&!B&&(p=C.shift()+I),c+=C.length>>1,C.length=0,B=!0}return function t(g){for(var f,h,m,b,D,S,w,v,k,x,N,U,G=0;G<g.length;){var M=g[G];switch(G+=1,M){case 1:case 3:case 18:case 23:d();break;case 4:C.length>1&&!B&&(p=C.shift()+I,B=!0),E+=C.pop(),y(u,E);break;case 5:for(;C.length>0;)u+=C.shift(),E+=C.shift(),Q.lineTo(u,E);break;case 6:for(;C.length>0&&(u+=C.shift(),Q.lineTo(u,E),0!==C.length);)E+=C.shift(),Q.lineTo(u,E);break;case 7:for(;C.length>0&&(E+=C.shift(),Q.lineTo(u,E),0!==C.length);)u+=C.shift(),Q.lineTo(u,E);break;case 8:for(;C.length>0;)i=u+C.shift(),n=E+C.shift(),r=i+C.shift(),s=n+C.shift(),u=r+C.shift(),E=s+C.shift(),Q.curveTo(i,n,r,s,u,E);break;case 10:D=C.pop()+o,(S=a[D])&&t(S);break;case 11:return;case 12:switch(M=g[G],G+=1,M){case 35:i=u+C.shift(),n=E+C.shift(),r=i+C.shift(),s=n+C.shift(),w=r+C.shift(),v=s+C.shift(),k=w+C.shift(),x=v+C.shift(),N=k+C.shift(),U=x+C.shift(),u=N+C.shift(),E=U+C.shift(),C.shift(),Q.curveTo(i,n,r,s,w,v),Q.curveTo(k,x,N,U,u,E);break;case 34:i=u+C.shift(),n=E,r=i+C.shift(),s=n+C.shift(),w=r+C.shift(),v=s,k=w+C.shift(),x=s,N=k+C.shift(),U=E,u=N+C.shift(),Q.curveTo(i,n,r,s,w,v),Q.curveTo(k,x,N,U,u,E);break;case 36:i=u+C.shift(),n=E+C.shift(),r=i+C.shift(),s=n+C.shift(),w=r+C.shift(),v=s,k=w+C.shift(),x=s,N=k+C.shift(),U=x+C.shift(),u=N+C.shift(),Q.curveTo(i,n,r,s,w,v),Q.curveTo(k,x,N,U,u,E);break;case 37:i=u+C.shift(),n=E+C.shift(),r=i+C.shift(),s=n+C.shift(),w=r+C.shift(),v=s+C.shift(),k=w+C.shift(),x=v+C.shift(),N=k+C.shift(),U=x+C.shift(),Math.abs(N-u)>Math.abs(U-E)?u=N+C.shift():E=U+C.shift(),Q.curveTo(i,n,r,s,w,v),Q.curveTo(k,x,N,U,u,E);break;default:console.log("Glyph "+e.index+": unknown operator 1200"+M),C.length=0}break;case 14:C.length>0&&!B&&(p=C.shift()+I,B=!0),l&&(Q.closePath(),l=!1);break;case 19:case 20:d(),G+=c+7>>3;break;case 21:C.length>2&&!B&&(p=C.shift()+I,B=!0),E+=C.pop(),y(u+=C.pop(),E);break;case 22:C.length>1&&!B&&(p=C.shift()+I,B=!0),y(u+=C.pop(),E);break;case 24:for(;C.length>2;)i=u+C.shift(),n=E+C.shift(),r=i+C.shift(),s=n+C.shift(),u=r+C.shift(),E=s+C.shift(),Q.curveTo(i,n,r,s,u,E);u+=C.shift(),E+=C.shift(),Q.lineTo(u,E);break;case 25:for(;C.length>6;)u+=C.shift(),E+=C.shift(),Q.lineTo(u,E);i=u+C.shift(),n=E+C.shift(),r=i+C.shift(),s=n+C.shift(),u=r+C.shift(),E=s+C.shift(),Q.curveTo(i,n,r,s,u,E);break;case 26:for(C.length%2&&(u+=C.shift());C.length>0;)i=u,n=E+C.shift(),r=i+C.shift(),s=n+C.shift(),u=r,E=s+C.shift(),Q.curveTo(i,n,r,s,u,E);break;case 27:for(C.length%2&&(E+=C.shift());C.length>0;)i=u+C.shift(),n=E,r=i+C.shift(),s=n+C.shift(),u=r+C.shift(),E=s,Q.curveTo(i,n,r,s,u,E);break;case 28:f=g[G],h=g[G+1],C.push((f<<24|h<<16)>>16),G+=2;break;case 29:D=C.pop()+A.gsubrsBias,(S=A.gsubrs[D])&&t(S);break;case 30:for(;C.length>0&&(i=u,n=E+C.shift(),r=i+C.shift(),s=n+C.shift(),u=r+C.shift(),E=s+(1===C.length?C.shift():0),Q.curveTo(i,n,r,s,u,E),0!==C.length);)i=u+C.shift(),n=E,r=i+C.shift(),s=n+C.shift(),E=s+C.shift(),u=r+(1===C.length?C.shift():0),Q.curveTo(i,n,r,s,u,E);break;case 31:for(;C.length>0&&(i=u+C.shift(),n=E,r=i+C.shift(),s=n+C.shift(),E=s+C.shift(),u=r+(1===C.length?C.shift():0),Q.curveTo(i,n,r,s,u,E),0!==C.length);)i=u,n=E+C.shift(),r=i+C.shift(),s=n+C.shift(),u=r+C.shift(),E=s+(1===C.length?C.shift():0),Q.curveTo(i,n,r,s,u,E);break;default:M<32?console.log("Glyph "+e.index+": unknown operator "+M):M<247?C.push(M-139):M<251?(f=g[G],G+=1,C.push(256*(M-247)+f+108)):M<255?(f=g[G],G+=1,C.push(256*-(M-251)-f-108)):(f=g[G],h=g[G+1],m=g[G+2],b=g[G+3],G+=4,C.push((f<<24|h<<16|m<<8|b)/65536))}}}(t),e.advanceWidth=p,Q}function LA(A,e){var t,i=IA.indexOf(A);return i>=0&&(t=i),(i=e.indexOf(A))>=0?t=i+IA.length:(t=IA.length+e.length,e.push(A)),t}function zA(A,e,t){for(var i={},n=0;n<A.length;n+=1){var r=A[n],s=e[r.name];void 0===s||bA(s,r.value)||("SID"===r.type&&(s=LA(s,t)),i[r.op]={name:r.name,type:r.type,value:s})}return i}function qA(A,e){var t=new $.Record("Top DICT",[{name:"dict",type:"DICT",value:{}}]);return t.dict=zA(NA,A,e),t}function JA(A){var e=new $.Record("Top DICT INDEX",[{name:"topDicts",type:"INDEX",value:[]}]);return e.topDicts=[{name:"topDict_0",type:"TABLE",value:A}],e}function OA(A){var e=[],t=A.path;e.push({name:"width",type:"NUMBER",value:A.advanceWidth});for(var i=0,n=0,r=0;r<t.commands.length;r+=1){var s=void 0,a=void 0,o=t.commands[r];if("Q"===o.type){var g=1/3,I=2/3;o={type:"C",x:o.x,y:o.y,x1:Math.round(g*i+I*o.x1),y1:Math.round(g*n+I*o.y1),x2:Math.round(g*o.x+I*o.x1),y2:Math.round(g*o.y+I*o.y1)}}if("M"===o.type)s=Math.round(o.x-i),a=Math.round(o.y-n),e.push({name:"dx",type:"NUMBER",value:s}),e.push({name:"dy",type:"NUMBER",value:a}),e.push({name:"rmoveto",type:"OP",value:21}),i=Math.round(o.x),n=Math.round(o.y);else if("L"===o.type)s=Math.round(o.x-i),a=Math.round(o.y-n),e.push({name:"dx",type:"NUMBER",value:s}),e.push({name:"dy",type:"NUMBER",value:a}),e.push({name:"rlineto",type:"OP",value:5}),i=Math.round(o.x),n=Math.round(o.y);else if("C"===o.type){var Q=Math.round(o.x1-i),C=Math.round(o.y1-n),c=Math.round(o.x2-o.x1),B=Math.round(o.y2-o.y1);s=Math.round(o.x-o.x2),a=Math.round(o.y-o.y2),e.push({name:"dx1",type:"NUMBER",value:Q}),e.push({name:"dy1",type:"NUMBER",value:C}),e.push({name:"dx2",type:"NUMBER",value:c}),e.push({name:"dy2",type:"NUMBER",value:B}),e.push({name:"dx",type:"NUMBER",value:s}),e.push({name:"dy",type:"NUMBER",value:a}),e.push({name:"rrcurveto",type:"OP",value:8}),i=Math.round(o.x),n=Math.round(o.y)}}return e.push({name:"endchar",type:"OP",value:14}),e}var KA={parse:function(A,e,t,i){t.tables.cff={};var n=function(A,e){var t={};return t.formatMajor=aA.getCard8(A,e),t.formatMinor=aA.getCard8(A,e+1),t.size=aA.getCard8(A,e+2),t.offsetSize=aA.getCard8(A,e+3),t.startOffset=e,t.endOffset=e+4,t}(A,e),r=SA(A,n.endOffset,aA.bytesToString),s=SA(A,r.endOffset),a=SA(A,s.endOffset,aA.bytesToString),o=SA(A,a.endOffset);t.gsubrs=o.objects,t.gsubrsBias=DA(t.gsubrs);var g=RA(A,e,s.objects,a.objects);if(1!==g.length)throw new Error("CFF table has too many fonts in 'FontSet' - count of fonts NameIndex.length = "+g.length);var I=g[0];if(t.tables.cff.topDict=I,I._privateDict&&(t.defaultWidthX=I._privateDict.defaultWidthX,t.nominalWidthX=I._privateDict.nominalWidthX),void 0!==I.ros[0]&&void 0!==I.ros[1]&&(t.isCIDFont=!0),t.isCIDFont){var Q=I.fdArray,C=I.fdSelect;if(0===Q||0===C)throw new Error("Font is marked as a CID font, but FDArray and/or FDSelect information is missing");var c=SA(A,Q+=e),B=RA(A,e,c.objects,a.objects);I._fdArray=B,C+=e,I._fdSelect=function(A,e,t,i){var n,r=[],s=new aA.Parser(A,e),a=s.parseCard8();if(0===a)for(var o=0;o<t;o++){if((n=s.parseCard8())>=i)throw new Error("CFF table CID Font FDSelect has bad FD index value "+n+" (FD count "+i+")");r.push(n)}else{if(3!==a)throw new Error("CFF Table CID Font FDSelect table has unsupported format "+a);var g,I=s.parseCard16(),Q=s.parseCard16();if(0!==Q)throw new Error("CFF Table CID Font FDSelect format 3 range has bad initial GID "+Q);for(var C=0;C<I;C++){if(n=s.parseCard8(),g=s.parseCard16(),n>=i)throw new Error("CFF table CID Font FDSelect has bad FD index value "+n+" (FD count "+i+")");if(g>t)throw new Error("CFF Table CID Font FDSelect format 3 range has bad GID "+g);for(;Q<g;Q++)r.push(n);Q=g}if(g!==t)throw new Error("CFF Table CID Font FDSelect format 3 range has bad final GID "+g)}return r}(A,C,t.numGlyphs,B.length)}var l,u=e+I.private[1],E=MA(A,u,I.private[0],a.objects);if(t.defaultWidthX=E.defaultWidthX,t.nominalWidthX=E.nominalWidthX,0!==E.subrs){var f=u+E.subrs,h=SA(A,f);t.subrs=h.objects,t.subrsBias=DA(t.subrs)}else t.subrs=[],t.subrsBias=0;i.lowMemory?(l=function(A,e){var t,i,n=[],r=aA.getCard16(A,e);if(0!==r){var s=aA.getByte(A,e+2);t=e+(r+1)*s+2;for(var a=e+3,o=0;o<r+1;o+=1)n.push(aA.getOffset(A,a,s)),a+=s;i=t+n[r]}else i=e+2;return{offsets:n,startOffset:e,endOffset:i}}(A,e+I.charStrings),t.nGlyphs=l.offsets.length):(l=SA(A,e+I.charStrings),t.nGlyphs=l.objects.length);var p=function(A,e,t,i){var n,r,s=new aA.Parser(A,e);t-=1;var a=[".notdef"],o=s.parseCard8();if(0===o)for(var g=0;g<t;g+=1)n=s.parseSID(),a.push(kA(i,n));else if(1===o)for(;a.length<=t;){n=s.parseSID(),r=s.parseCard8();for(var I=0;I<=r;I+=1)a.push(kA(i,n)),n+=1}else{if(2!==o)throw new Error("Unknown charset format "+o);for(;a.length<=t;){n=s.parseSID(),r=s.parseCard16();for(var Q=0;Q<=r;Q+=1)a.push(kA(i,n)),n+=1}}return a}(A,e+I.charset,t.nGlyphs,a.objects);if(0===I.encoding?t.cffEncoding=new uA(QA,p):1===I.encoding?t.cffEncoding=new uA(CA,p):t.cffEncoding=function(A,e,t){var i,n={},r=new aA.Parser(A,e),s=r.parseCard8();if(0===s)for(var a=r.parseCard8(),o=0;o<a;o+=1)n[i=r.parseCard8()]=o;else{if(1!==s)throw new Error("Unknown encoding format "+s);var g=r.parseCard8();i=1;for(var I=0;I<g;I+=1)for(var Q=r.parseCard8(),C=r.parseCard8(),c=Q;c<=Q+C;c+=1)n[c]=i,i+=1}return new uA(n,t)}(A,e+I.encoding,p),t.encoding=t.encoding||t.cffEncoding,t.glyphs=new mA.GlyphSet(t),i.lowMemory)t._push=function(i){var n=function(A,e,t,i,n){var r=aA.getCard16(t,i),s=0;0!==r&&(s=i+(r+1)*aA.getByte(t,i+2)+2);var a=aA.getBytes(t,s+e[A],s+e[A+1]);return n&&(a=n(a)),a}(i,l.offsets,A,e+I.charStrings);t.glyphs.push(i,mA.cffGlyphLoader(t,i,FA,n))};else for(var y=0;y<t.nGlyphs;y+=1){var d=l.objects[y];t.glyphs.push(y,mA.cffGlyphLoader(t,y,FA,d))}},make:function(A,e){for(var t,i=new $.Table("CFF ",[{name:"header",type:"RECORD"},{name:"nameIndex",type:"RECORD"},{name:"topDictIndex",type:"RECORD"},{name:"stringIndex",type:"RECORD"},{name:"globalSubrIndex",type:"RECORD"},{name:"charsets",type:"RECORD"},{name:"charStringsIndex",type:"RECORD"},{name:"privateDict",type:"RECORD"}]),n=1/e.unitsPerEm,r={version:e.version,fullName:e.fullName,familyName:e.familyName,weight:e.weightName,fontBBox:e.fontBBox||[0,0,0,0],fontMatrix:[n,0,0,n,0,0],charset:999,encoding:0,charStrings:999,private:[0,999]},s=[],a=1;a<A.length;a+=1)t=A.get(a),s.push(t.name);var o=[];i.header=new $.Record("Header",[{name:"major",type:"Card8",value:1},{name:"minor",type:"Card8",value:0},{name:"hdrSize",type:"Card8",value:4},{name:"major",type:"Card8",value:1}]),i.nameIndex=function(A){var e=new $.Record("Name INDEX",[{name:"names",type:"INDEX",value:[]}]);e.names=[];for(var t=0;t<A.length;t+=1)e.names.push({name:"name_"+t,type:"NAME",value:A[t]});return e}([e.postScriptName]);var g=qA(r,o);i.topDictIndex=JA(g),i.globalSubrIndex=new $.Record("Global Subr INDEX",[{name:"subrs",type:"INDEX",value:[]}]),i.charsets=function(A,e){for(var t=new $.Record("Charsets",[{name:"format",type:"Card8",value:0}]),i=0;i<A.length;i+=1){var n=LA(A[i],e);t.fields.push({name:"glyph_"+i,type:"SID",value:n})}return t}(s,o),i.charStringsIndex=function(A){for(var e=new $.Record("CharStrings INDEX",[{name:"charStrings",type:"INDEX",value:[]}]),t=0;t<A.length;t+=1){var i=A.get(t),n=OA(i);e.charStrings.push({name:i.name,type:"CHARSTRING",value:n})}return e}(A),i.privateDict=function(A,e){var t=new $.Record("Private DICT",[{name:"dict",type:"DICT",value:{}}]);return t.dict=zA(UA,A,e),t}({},o),i.stringIndex=function(A){var e=new $.Record("String INDEX",[{name:"strings",type:"INDEX",value:[]}]);e.strings=[];for(var t=0;t<A.length;t+=1)e.strings.push({name:"string_"+t,type:"STRING",value:A[t]});return e}(o);var I=i.header.sizeOf()+i.nameIndex.sizeOf()+i.topDictIndex.sizeOf()+i.stringIndex.sizeOf()+i.globalSubrIndex.sizeOf();return r.charset=I,r.encoding=0,r.charStrings=r.charset+i.charsets.sizeOf(),r.private[1]=r.charStrings+i.charStringsIndex.sizeOf(),g=qA(r,o),i.topDictIndex=JA(g),i}};var TA={parse:function(A,e){var t={},i=new aA.Parser(A,e);return t.version=i.parseVersion(),t.fontRevision=Math.round(1e3*i.parseFixed())/1e3,t.checkSumAdjustment=i.parseULong(),t.magicNumber=i.parseULong(),N.argument(1594834165===t.magicNumber,"Font header has wrong magic number."),t.flags=i.parseUShort(),t.unitsPerEm=i.parseUShort(),t.created=i.parseLongDateTime(),t.modified=i.parseLongDateTime(),t.xMin=i.parseShort(),t.yMin=i.parseShort(),t.xMax=i.parseShort(),t.yMax=i.parseShort(),t.macStyle=i.parseUShort(),t.lowestRecPPEM=i.parseUShort(),t.fontDirectionHint=i.parseShort(),t.indexToLocFormat=i.parseShort(),t.glyphDataFormat=i.parseShort(),t},make:function(A){var e=Math.round((new Date).getTime()/1e3)+2082844800,t=e;return A.createdTimestamp&&(t=A.createdTimestamp+2082844800),new $.Table("head",[{name:"version",type:"FIXED",value:65536},{name:"fontRevision",type:"FIXED",value:65536},{name:"checkSumAdjustment",type:"ULONG",value:0},{name:"magicNumber",type:"ULONG",value:1594834165},{name:"flags",type:"USHORT",value:0},{name:"unitsPerEm",type:"USHORT",value:1e3},{name:"created",type:"LONGDATETIME",value:t},{name:"modified",type:"LONGDATETIME",value:e},{name:"xMin",type:"SHORT",value:0},{name:"yMin",type:"SHORT",value:0},{name:"xMax",type:"SHORT",value:0},{name:"yMax",type:"SHORT",value:0},{name:"macStyle",type:"USHORT",value:0},{name:"lowestRecPPEM",type:"USHORT",value:0},{name:"fontDirectionHint",type:"SHORT",value:2},{name:"indexToLocFormat",type:"SHORT",value:0},{name:"glyphDataFormat",type:"SHORT",value:0}],A)}};var HA={parse:function(A,e){var t={},i=new aA.Parser(A,e);return t.version=i.parseVersion(),t.ascender=i.parseShort(),t.descender=i.parseShort(),t.lineGap=i.parseShort(),t.advanceWidthMax=i.parseUShort(),t.minLeftSideBearing=i.parseShort(),t.minRightSideBearing=i.parseShort(),t.xMaxExtent=i.parseShort(),t.caretSlopeRise=i.parseShort(),t.caretSlopeRun=i.parseShort(),t.caretOffset=i.parseShort(),i.relativeOffset+=8,t.metricDataFormat=i.parseShort(),t.numberOfHMetrics=i.parseUShort(),t},make:function(A){return new $.Table("hhea",[{name:"version",type:"FIXED",value:65536},{name:"ascender",type:"FWORD",value:0},{name:"descender",type:"FWORD",value:0},{name:"lineGap",type:"FWORD",value:0},{name:"advanceWidthMax",type:"UFWORD",value:0},{name:"minLeftSideBearing",type:"FWORD",value:0},{name:"minRightSideBearing",type:"FWORD",value:0},{name:"xMaxExtent",type:"FWORD",value:0},{name:"caretSlopeRise",type:"SHORT",value:1},{name:"caretSlopeRun",type:"SHORT",value:0},{name:"caretOffset",type:"SHORT",value:0},{name:"reserved1",type:"SHORT",value:0},{name:"reserved2",type:"SHORT",value:0},{name:"reserved3",type:"SHORT",value:0},{name:"reserved4",type:"SHORT",value:0},{name:"metricDataFormat",type:"SHORT",value:0},{name:"numberOfHMetrics",type:"USHORT",value:0}],A)}};var YA={parse:function(A,e,t,i,n,r,s){s.lowMemory?function(A,e,t,i,n){var r,s;A._hmtxTableData={};for(var a=new aA.Parser(e,t),o=0;o<n;o+=1)o<i&&(r=a.parseUShort(),s=a.parseShort()),A._hmtxTableData[o]={advanceWidth:r,leftSideBearing:s}}(A,e,t,i,n):function(A,e,t,i,n){for(var r,s,a=new aA.Parser(A,e),o=0;o<i;o+=1){o<t&&(r=a.parseUShort(),s=a.parseShort());var g=n.get(o);g.advanceWidth=r,g.leftSideBearing=s}}(e,t,i,n,r)},make:function(A){for(var e=new $.Table("hmtx",[]),t=0;t<A.length;t+=1){var i=A.get(t),n=i.advanceWidth||0,r=i.leftSideBearing||0;e.fields.push({name:"advanceWidth_"+t,type:"USHORT",value:n}),e.fields.push({name:"leftSideBearing_"+t,type:"SHORT",value:r})}return e}};var PA={make:function(A){for(var e=new $.Table("ltag",[{name:"version",type:"ULONG",value:1},{name:"flags",type:"ULONG",value:0},{name:"numTags",type:"ULONG",value:A.length}]),t="",i=12+4*A.length,n=0;n<A.length;++n){var r=t.indexOf(A[n]);r<0&&(r=t.length,t+=A[n]),e.fields.push({name:"offset "+n,type:"USHORT",value:i+r}),e.fields.push({name:"length "+n,type:"USHORT",value:A[n].length})}return e.fields.push({name:"stringPool",type:"CHARARRAY",value:t}),e},parse:function(A,e){var t=new aA.Parser(A,e),i=t.parseULong();N.argument(1===i,"Unsupported ltag table version."),t.skip("uLong",1);for(var n=t.parseULong(),r=[],s=0;s<n;s++){for(var a="",o=e+t.parseUShort(),g=t.parseUShort(),I=o;I<o+g;++I)a+=String.fromCharCode(A.getInt8(I));r.push(a)}return r}};var VA={parse:function(A,e){var t={},i=new aA.Parser(A,e);return t.version=i.parseVersion(),t.numGlyphs=i.parseUShort(),1===t.version&&(t.maxPoints=i.parseUShort(),t.maxContours=i.parseUShort(),t.maxCompositePoints=i.parseUShort(),t.maxCompositeContours=i.parseUShort(),t.maxZones=i.parseUShort(),t.maxTwilightPoints=i.parseUShort(),t.maxStorage=i.parseUShort(),t.maxFunctionDefs=i.parseUShort(),t.maxInstructionDefs=i.parseUShort(),t.maxStackElements=i.parseUShort(),t.maxSizeOfInstructions=i.parseUShort(),t.maxComponentElements=i.parseUShort(),t.maxComponentDepth=i.parseUShort()),t},make:function(A){return new $.Table("maxp",[{name:"version",type:"FIXED",value:20480},{name:"numGlyphs",type:"USHORT",value:A}])}},_A=["copyright","fontFamily","fontSubfamily","uniqueID","fullName","version","postScriptName","trademark","manufacturer","designer","description","manufacturerURL","designerURL","license","licenseURL","reserved","preferredFamily","preferredSubfamily","compatibleFullName","sampleText","postScriptFindFontName","wwsFamily","wwsSubfamily"],WA={0:"en",1:"fr",2:"de",3:"it",4:"nl",5:"sv",6:"es",7:"da",8:"pt",9:"no",10:"he",11:"ja",12:"ar",13:"fi",14:"el",15:"is",16:"mt",17:"tr",18:"hr",19:"zh-Hant",20:"ur",21:"hi",22:"th",23:"ko",24:"lt",25:"pl",26:"hu",27:"es",28:"lv",29:"se",30:"fo",31:"fa",32:"ru",33:"zh",34:"nl-BE",35:"ga",36:"sq",37:"ro",38:"cz",39:"sk",40:"si",41:"yi",42:"sr",43:"mk",44:"bg",45:"uk",46:"be",47:"uz",48:"kk",49:"az-Cyrl",50:"az-Arab",51:"hy",52:"ka",53:"mo",54:"ky",55:"tg",56:"tk",57:"mn-CN",58:"mn",59:"ps",60:"ks",61:"ku",62:"sd",63:"bo",64:"ne",65:"sa",66:"mr",67:"bn",68:"as",69:"gu",70:"pa",71:"or",72:"ml",73:"kn",74:"ta",75:"te",76:"si",77:"my",78:"km",79:"lo",80:"vi",81:"id",82:"tl",83:"ms",84:"ms-Arab",85:"am",86:"ti",87:"om",88:"so",89:"sw",90:"rw",91:"rn",92:"ny",93:"mg",94:"eo",128:"cy",129:"eu",130:"ca",131:"la",132:"qu",133:"gn",134:"ay",135:"tt",136:"ug",137:"dz",138:"jv",139:"su",140:"gl",141:"af",142:"br",143:"iu",144:"gd",145:"gv",146:"ga",147:"to",148:"el-polyton",149:"kl",150:"az",151:"nn"},XA={0:0,1:0,2:0,3:0,4:0,5:0,6:0,7:0,8:0,9:0,10:5,11:1,12:4,13:0,14:6,15:0,16:0,17:0,18:0,19:2,20:4,21:9,22:21,23:3,24:29,25:29,26:29,27:29,28:29,29:0,30:0,31:4,32:7,33:25,34:0,35:0,36:0,37:0,38:29,39:29,40:0,41:5,42:7,43:7,44:7,45:7,46:7,47:7,48:7,49:7,50:4,51:24,52:23,53:7,54:7,55:7,56:7,57:27,58:7,59:4,60:4,61:4,62:4,63:26,64:9,65:9,66:9,67:13,68:13,69:11,70:10,71:12,72:17,73:16,74:14,75:15,76:18,77:19,78:20,79:22,80:30,81:0,82:0,83:0,84:4,85:28,86:28,87:28,88:0,89:0,90:0,91:0,92:0,93:0,94:0,128:0,129:0,130:0,131:0,132:0,133:0,134:0,135:7,136:4,137:26,138:0,139:0,140:0,141:0,142:0,143:28,144:0,145:0,146:0,147:0,148:6,149:0,150:0,151:0},jA={1078:"af",1052:"sq",1156:"gsw",1118:"am",5121:"ar-DZ",15361:"ar-BH",3073:"ar",2049:"ar-IQ",11265:"ar-JO",13313:"ar-KW",12289:"ar-LB",4097:"ar-LY",6145:"ary",8193:"ar-OM",16385:"ar-QA",1025:"ar-SA",10241:"ar-SY",7169:"aeb",14337:"ar-AE",9217:"ar-YE",1067:"hy",1101:"as",2092:"az-Cyrl",1068:"az",1133:"ba",1069:"eu",1059:"be",2117:"bn",1093:"bn-IN",8218:"bs-Cyrl",5146:"bs",1150:"br",1026:"bg",1027:"ca",3076:"zh-HK",5124:"zh-MO",2052:"zh",4100:"zh-SG",1028:"zh-TW",1155:"co",1050:"hr",4122:"hr-BA",1029:"cs",1030:"da",1164:"prs",1125:"dv",2067:"nl-BE",1043:"nl",3081:"en-AU",10249:"en-BZ",4105:"en-CA",9225:"en-029",16393:"en-IN",6153:"en-IE",8201:"en-JM",17417:"en-MY",5129:"en-NZ",13321:"en-PH",18441:"en-SG",7177:"en-ZA",11273:"en-TT",2057:"en-GB",1033:"en",12297:"en-ZW",1061:"et",1080:"fo",1124:"fil",1035:"fi",2060:"fr-BE",3084:"fr-CA",1036:"fr",5132:"fr-LU",6156:"fr-MC",4108:"fr-CH",1122:"fy",1110:"gl",1079:"ka",3079:"de-AT",1031:"de",5127:"de-LI",4103:"de-LU",2055:"de-CH",1032:"el",1135:"kl",1095:"gu",1128:"ha",1037:"he",1081:"hi",1038:"hu",1039:"is",1136:"ig",1057:"id",1117:"iu",2141:"iu-Latn",2108:"ga",1076:"xh",1077:"zu",1040:"it",2064:"it-CH",1041:"ja",1099:"kn",1087:"kk",1107:"km",1158:"quc",1159:"rw",1089:"sw",1111:"kok",1042:"ko",1088:"ky",1108:"lo",1062:"lv",1063:"lt",2094:"dsb",1134:"lb",1071:"mk",2110:"ms-BN",1086:"ms",1100:"ml",1082:"mt",1153:"mi",1146:"arn",1102:"mr",1148:"moh",1104:"mn",2128:"mn-CN",1121:"ne",1044:"nb",2068:"nn",1154:"oc",1096:"or",1123:"ps",1045:"pl",1046:"pt",2070:"pt-PT",1094:"pa",1131:"qu-BO",2155:"qu-EC",3179:"qu",1048:"ro",1047:"rm",1049:"ru",9275:"smn",4155:"smj-NO",5179:"smj",3131:"se-FI",1083:"se",2107:"se-SE",8251:"sms",6203:"sma-NO",7227:"sms",1103:"sa",7194:"sr-Cyrl-BA",3098:"sr",6170:"sr-Latn-BA",2074:"sr-Latn",1132:"nso",1074:"tn",1115:"si",1051:"sk",1060:"sl",11274:"es-AR",16394:"es-BO",13322:"es-CL",9226:"es-CO",5130:"es-CR",7178:"es-DO",12298:"es-EC",17418:"es-SV",4106:"es-GT",18442:"es-HN",2058:"es-MX",19466:"es-NI",6154:"es-PA",15370:"es-PY",10250:"es-PE",20490:"es-PR",3082:"es",1034:"es",21514:"es-US",14346:"es-UY",8202:"es-VE",2077:"sv-FI",1053:"sv",1114:"syr",1064:"tg",2143:"tzm",1097:"ta",1092:"tt",1098:"te",1054:"th",1105:"bo",1055:"tr",1090:"tk",1152:"ug",1058:"uk",1070:"hsb",1056:"ur",2115:"uz-Cyrl",1091:"uz",1066:"vi",1106:"cy",1160:"wo",1157:"sah",1144:"ii",1130:"yo"};function ZA(A,e,t){switch(A){case 0:if(65535===e)return"und";if(t)return t[e];break;case 1:return WA[e];case 3:return jA[e]}}var $A="utf-16",Ae={0:"macintosh",1:"x-mac-japanese",2:"x-mac-chinesetrad",3:"x-mac-korean",6:"x-mac-greek",7:"x-mac-cyrillic",9:"x-mac-devanagai",10:"x-mac-gurmukhi",11:"x-mac-gujarati",12:"x-mac-oriya",13:"x-mac-bengali",14:"x-mac-tamil",15:"x-mac-telugu",16:"x-mac-kannada",17:"x-mac-malayalam",18:"x-mac-sinhalese",19:"x-mac-burmese",20:"x-mac-khmer",21:"x-mac-thai",22:"x-mac-lao",23:"x-mac-georgian",24:"x-mac-armenian",25:"x-mac-chinesesimp",26:"x-mac-tibetan",27:"x-mac-mongolian",28:"x-mac-ethiopic",29:"x-mac-ce",30:"x-mac-vietnamese",31:"x-mac-extarabic"},ee={15:"x-mac-icelandic",17:"x-mac-turkish",18:"x-mac-croatian",24:"x-mac-ce",25:"x-mac-ce",26:"x-mac-ce",27:"x-mac-ce",28:"x-mac-ce",30:"x-mac-icelandic",37:"x-mac-romanian",38:"x-mac-ce",39:"x-mac-ce",40:"x-mac-ce",143:"x-mac-inuit",146:"x-mac-gaelic"};function te(A,e,t){switch(A){case 0:return $A;case 1:return ee[t]||Ae[e];case 3:if(1===e||10===e)return $A}}function ie(A){var e={};for(var t in A)e[A[t]]=parseInt(t);return e}function ne(A,e,t,i,n,r){return new $.Record("NameRecord",[{name:"platformID",type:"USHORT",value:A},{name:"encodingID",type:"USHORT",value:e},{name:"languageID",type:"USHORT",value:t},{name:"nameID",type:"USHORT",value:i},{name:"length",type:"USHORT",value:n},{name:"offset",type:"USHORT",value:r}])}function re(A,e){var t=function(A,e){var t=A.length,i=e.length-t+1;A:for(var n=0;n<i;n++)for(;n<i;n++){for(var r=0;r<t;r++)if(e[n+r]!==A[r])continue A;return n}return-1}(A,e);if(t<0){t=e.length;for(var i=0,n=A.length;i<n;++i)e.push(A[i])}return t}var se={parse:function(A,e,t){for(var i={},n=new aA.Parser(A,e),r=n.parseUShort(),s=n.parseUShort(),a=n.offset+n.parseUShort(),o=0;o<s;o++){var g=n.parseUShort(),I=n.parseUShort(),Q=n.parseUShort(),C=n.parseUShort(),c=_A[C]||C,B=n.parseUShort(),l=n.parseUShort(),u=ZA(g,Q,t),E=te(g,I,Q);if(void 0!==E&&void 0!==u){var f=void 0;if(f=E===$A?G.UTF16(A,a+l,B):G.MACSTRING(A,a+l,B,E)){var h=i[c];void 0===h&&(h=i[c]={}),h[u]=f}}}return 1===r&&n.parseUShort(),i},make:function(A,e){var t,i=[],n={},r=ie(_A);for(var s in A){var a=r[s];if(void 0===a&&(a=s),t=parseInt(a),isNaN(t))throw new Error('Name table entry "'+s+'" does not exist, see nameTableNames for complete list.');n[t]=A[s],i.push(t)}for(var o=ie(WA),g=ie(jA),I=[],Q=[],C=0;C<i.length;C++){var c=n[t=i[C]];for(var B in c){var l=c[B],u=1,E=o[B],f=XA[E],h=te(u,f,E),p=M.MACSTRING(l,h);void 0===p&&(u=0,(E=e.indexOf(B))<0&&(E=e.length,e.push(B)),f=4,p=M.UTF16(l));var y=re(p,Q);I.push(ne(u,f,E,t,p.length,y));var d=g[B];if(void 0!==d){var m=M.UTF16(l),b=re(m,Q);I.push(ne(3,1,d,t,m.length,b))}}}I.sort((function(A,e){return A.platformID-e.platformID||A.encodingID-e.encodingID||A.languageID-e.languageID||A.nameID-e.nameID}));for(var D=new $.Table("name",[{name:"format",type:"USHORT",value:0},{name:"count",type:"USHORT",value:I.length},{name:"stringOffset",type:"USHORT",value:6+12*I.length}]),S=0;S<I.length;S++)D.fields.push({name:"record_"+S,type:"RECORD",value:I[S]});return D.fields.push({name:"strings",type:"LITERAL",value:Q}),D}},ae=[{begin:0,end:127},{begin:128,end:255},{begin:256,end:383},{begin:384,end:591},{begin:592,end:687},{begin:688,end:767},{begin:768,end:879},{begin:880,end:1023},{begin:11392,end:11519},{begin:1024,end:1279},{begin:1328,end:1423},{begin:1424,end:1535},{begin:42240,end:42559},{begin:1536,end:1791},{begin:1984,end:2047},{begin:2304,end:2431},{begin:2432,end:2559},{begin:2560,end:2687},{begin:2688,end:2815},{begin:2816,end:2943},{begin:2944,end:3071},{begin:3072,end:3199},{begin:3200,end:3327},{begin:3328,end:3455},{begin:3584,end:3711},{begin:3712,end:3839},{begin:4256,end:4351},{begin:6912,end:7039},{begin:4352,end:4607},{begin:7680,end:7935},{begin:7936,end:8191},{begin:8192,end:8303},{begin:8304,end:8351},{begin:8352,end:8399},{begin:8400,end:8447},{begin:8448,end:8527},{begin:8528,end:8591},{begin:8592,end:8703},{begin:8704,end:8959},{begin:8960,end:9215},{begin:9216,end:9279},{begin:9280,end:9311},{begin:9312,end:9471},{begin:9472,end:9599},{begin:9600,end:9631},{begin:9632,end:9727},{begin:9728,end:9983},{begin:9984,end:10175},{begin:12288,end:12351},{begin:12352,end:12447},{begin:12448,end:12543},{begin:12544,end:12591},{begin:12592,end:12687},{begin:43072,end:43135},{begin:12800,end:13055},{begin:13056,end:13311},{begin:44032,end:55215},{begin:55296,end:57343},{begin:67840,end:67871},{begin:19968,end:40959},{begin:57344,end:63743},{begin:12736,end:12783},{begin:64256,end:64335},{begin:64336,end:65023},{begin:65056,end:65071},{begin:65040,end:65055},{begin:65104,end:65135},{begin:65136,end:65279},{begin:65280,end:65519},{begin:65520,end:65535},{begin:3840,end:4095},{begin:1792,end:1871},{begin:1920,end:1983},{begin:3456,end:3583},{begin:4096,end:4255},{begin:4608,end:4991},{begin:5024,end:5119},{begin:5120,end:5759},{begin:5760,end:5791},{begin:5792,end:5887},{begin:6016,end:6143},{begin:6144,end:6319},{begin:10240,end:10495},{begin:40960,end:42127},{begin:5888,end:5919},{begin:66304,end:66351},{begin:66352,end:66383},{begin:66560,end:66639},{begin:118784,end:119039},{begin:119808,end:120831},{begin:1044480,end:1048573},{begin:65024,end:65039},{begin:917504,end:917631},{begin:6400,end:6479},{begin:6480,end:6527},{begin:6528,end:6623},{begin:6656,end:6687},{begin:11264,end:11359},{begin:11568,end:11647},{begin:19904,end:19967},{begin:43008,end:43055},{begin:65536,end:65663},{begin:65856,end:65935},{begin:66432,end:66463},{begin:66464,end:66527},{begin:66640,end:66687},{begin:66688,end:66735},{begin:67584,end:67647},{begin:68096,end:68191},{begin:119552,end:119647},{begin:73728,end:74751},{begin:119648,end:119679},{begin:7040,end:7103},{begin:7168,end:7247},{begin:7248,end:7295},{begin:43136,end:43231},{begin:43264,end:43311},{begin:43312,end:43359},{begin:43520,end:43615},{begin:65936,end:65999},{begin:66e3,end:66047},{begin:66208,end:66271},{begin:127024,end:127135}];var oe={parse:function(A,e){var t={},i=new aA.Parser(A,e);t.version=i.parseUShort(),t.xAvgCharWidth=i.parseShort(),t.usWeightClass=i.parseUShort(),t.usWidthClass=i.parseUShort(),t.fsType=i.parseUShort(),t.ySubscriptXSize=i.parseShort(),t.ySubscriptYSize=i.parseShort(),t.ySubscriptXOffset=i.parseShort(),t.ySubscriptYOffset=i.parseShort(),t.ySuperscriptXSize=i.parseShort(),t.ySuperscriptYSize=i.parseShort(),t.ySuperscriptXOffset=i.parseShort(),t.ySuperscriptYOffset=i.parseShort(),t.yStrikeoutSize=i.parseShort(),t.yStrikeoutPosition=i.parseShort(),t.sFamilyClass=i.parseShort(),t.panose=[];for(var n=0;n<10;n++)t.panose[n]=i.parseByte();return t.ulUnicodeRange1=i.parseULong(),t.ulUnicodeRange2=i.parseULong(),t.ulUnicodeRange3=i.parseULong(),t.ulUnicodeRange4=i.parseULong(),t.achVendID=String.fromCharCode(i.parseByte(),i.parseByte(),i.parseByte(),i.parseByte()),t.fsSelection=i.parseUShort(),t.usFirstCharIndex=i.parseUShort(),t.usLastCharIndex=i.parseUShort(),t.sTypoAscender=i.parseShort(),t.sTypoDescender=i.parseShort(),t.sTypoLineGap=i.parseShort(),t.usWinAscent=i.parseUShort(),t.usWinDescent=i.parseUShort(),t.version>=1&&(t.ulCodePageRange1=i.parseULong(),t.ulCodePageRange2=i.parseULong()),t.version>=2&&(t.sxHeight=i.parseShort(),t.sCapHeight=i.parseShort(),t.usDefaultChar=i.parseUShort(),t.usBreakChar=i.parseUShort(),t.usMaxContent=i.parseUShort()),t},make:function(A){return new $.Table("OS/2",[{name:"version",type:"USHORT",value:3},{name:"xAvgCharWidth",type:"SHORT",value:0},{name:"usWeightClass",type:"USHORT",value:0},{name:"usWidthClass",type:"USHORT",value:0},{name:"fsType",type:"USHORT",value:0},{name:"ySubscriptXSize",type:"SHORT",value:650},{name:"ySubscriptYSize",type:"SHORT",value:699},{name:"ySubscriptXOffset",type:"SHORT",value:0},{name:"ySubscriptYOffset",type:"SHORT",value:140},{name:"ySuperscriptXSize",type:"SHORT",value:650},{name:"ySuperscriptYSize",type:"SHORT",value:699},{name:"ySuperscriptXOffset",type:"SHORT",value:0},{name:"ySuperscriptYOffset",type:"SHORT",value:479},{name:"yStrikeoutSize",type:"SHORT",value:49},{name:"yStrikeoutPosition",type:"SHORT",value:258},{name:"sFamilyClass",type:"SHORT",value:0},{name:"bFamilyType",type:"BYTE",value:0},{name:"bSerifStyle",type:"BYTE",value:0},{name:"bWeight",type:"BYTE",value:0},{name:"bProportion",type:"BYTE",value:0},{name:"bContrast",type:"BYTE",value:0},{name:"bStrokeVariation",type:"BYTE",value:0},{name:"bArmStyle",type:"BYTE",value:0},{name:"bLetterform",type:"BYTE",value:0},{name:"bMidline",type:"BYTE",value:0},{name:"bXHeight",type:"BYTE",value:0},{name:"ulUnicodeRange1",type:"ULONG",value:0},{name:"ulUnicodeRange2",type:"ULONG",value:0},{name:"ulUnicodeRange3",type:"ULONG",value:0},{name:"ulUnicodeRange4",type:"ULONG",value:0},{name:"achVendID",type:"CHARARRAY",value:"XXXX"},{name:"fsSelection",type:"USHORT",value:0},{name:"usFirstCharIndex",type:"USHORT",value:0},{name:"usLastCharIndex",type:"USHORT",value:0},{name:"sTypoAscender",type:"SHORT",value:0},{name:"sTypoDescender",type:"SHORT",value:0},{name:"sTypoLineGap",type:"SHORT",value:0},{name:"usWinAscent",type:"USHORT",value:0},{name:"usWinDescent",type:"USHORT",value:0},{name:"ulCodePageRange1",type:"ULONG",value:0},{name:"ulCodePageRange2",type:"ULONG",value:0},{name:"sxHeight",type:"SHORT",value:0},{name:"sCapHeight",type:"SHORT",value:0},{name:"usDefaultChar",type:"USHORT",value:0},{name:"usBreakChar",type:"USHORT",value:0},{name:"usMaxContext",type:"USHORT",value:0}],A)},unicodeRanges:ae,getUnicodeRange:function(A){for(var e=0;e<ae.length;e+=1){var t=ae[e];if(A>=t.begin&&A<t.end)return e}return-1}};var ge={parse:function(A,e){var t={},i=new aA.Parser(A,e);switch(t.version=i.parseVersion(),t.italicAngle=i.parseFixed(),t.underlinePosition=i.parseShort(),t.underlineThickness=i.parseShort(),t.isFixedPitch=i.parseULong(),t.minMemType42=i.parseULong(),t.maxMemType42=i.parseULong(),t.minMemType1=i.parseULong(),t.maxMemType1=i.parseULong(),t.version){case 1:t.names=cA.slice();break;case 2:t.numberOfGlyphs=i.parseUShort(),t.glyphNameIndex=new Array(t.numberOfGlyphs);for(var n=0;n<t.numberOfGlyphs;n++)t.glyphNameIndex[n]=i.parseUShort();t.names=[];for(var r=0;r<t.numberOfGlyphs;r++)if(t.glyphNameIndex[r]>=cA.length){var s=i.parseChar();t.names.push(i.parseString(s))}break;case 2.5:t.numberOfGlyphs=i.parseUShort(),t.offset=new Array(t.numberOfGlyphs);for(var a=0;a<t.numberOfGlyphs;a++)t.offset[a]=i.parseChar()}return t},make:function(){return new $.Table("post",[{name:"version",type:"FIXED",value:196608},{name:"italicAngle",type:"FIXED",value:0},{name:"underlinePosition",type:"FWORD",value:0},{name:"underlineThickness",type:"FWORD",value:0},{name:"isFixedPitch",type:"ULONG",value:0},{name:"minMemType42",type:"ULONG",value:0},{name:"maxMemType42",type:"ULONG",value:0},{name:"minMemType1",type:"ULONG",value:0},{name:"maxMemType1",type:"ULONG",value:0}])}},Ie=new Array(9);Ie[1]=function(){var A=this.offset+this.relativeOffset,e=this.parseUShort();return 1===e?{substFormat:1,coverage:this.parsePointer(rA.coverage),deltaGlyphId:this.parseUShort()}:2===e?{substFormat:2,coverage:this.parsePointer(rA.coverage),substitute:this.parseOffset16List()}:void N.assert(!1,"0x"+A.toString(16)+": lookup type 1 format must be 1 or 2.")},Ie[2]=function(){var A=this.parseUShort();return N.argument(1===A,"GSUB Multiple Substitution Subtable identifier-format must be 1"),{substFormat:A,coverage:this.parsePointer(rA.coverage),sequences:this.parseListOfLists()}},Ie[3]=function(){var A=this.parseUShort();return N.argument(1===A,"GSUB Alternate Substitution Subtable identifier-format must be 1"),{substFormat:A,coverage:this.parsePointer(rA.coverage),alternateSets:this.parseListOfLists()}},Ie[4]=function(){var A=this.parseUShort();return N.argument(1===A,"GSUB ligature table identifier-format must be 1"),{substFormat:A,coverage:this.parsePointer(rA.coverage),ligatureSets:this.parseListOfLists((function(){return{ligGlyph:this.parseUShort(),components:this.parseUShortList(this.parseUShort()-1)}}))}};var Qe={sequenceIndex:rA.uShort,lookupListIndex:rA.uShort};Ie[5]=function(){var A=this.offset+this.relativeOffset,e=this.parseUShort();if(1===e)return{substFormat:e,coverage:this.parsePointer(rA.coverage),ruleSets:this.parseListOfLists((function(){var A=this.parseUShort(),e=this.parseUShort();return{input:this.parseUShortList(A-1),lookupRecords:this.parseRecordList(e,Qe)}}))};if(2===e)return{substFormat:e,coverage:this.parsePointer(rA.coverage),classDef:this.parsePointer(rA.classDef),classSets:this.parseListOfLists((function(){var A=this.parseUShort(),e=this.parseUShort();return{classes:this.parseUShortList(A-1),lookupRecords:this.parseRecordList(e,Qe)}}))};if(3===e){var t=this.parseUShort(),i=this.parseUShort();return{substFormat:e,coverages:this.parseList(t,rA.pointer(rA.coverage)),lookupRecords:this.parseRecordList(i,Qe)}}N.assert(!1,"0x"+A.toString(16)+": lookup type 5 format must be 1, 2 or 3.")},Ie[6]=function(){var A=this.offset+this.relativeOffset,e=this.parseUShort();return 1===e?{substFormat:1,coverage:this.parsePointer(rA.coverage),chainRuleSets:this.parseListOfLists((function(){return{backtrack:this.parseUShortList(),input:this.parseUShortList(this.parseShort()-1),lookahead:this.parseUShortList(),lookupRecords:this.parseRecordList(Qe)}}))}:2===e?{substFormat:2,coverage:this.parsePointer(rA.coverage),backtrackClassDef:this.parsePointer(rA.classDef),inputClassDef:this.parsePointer(rA.classDef),lookaheadClassDef:this.parsePointer(rA.classDef),chainClassSet:this.parseListOfLists((function(){return{backtrack:this.parseUShortList(),input:this.parseUShortList(this.parseShort()-1),lookahead:this.parseUShortList(),lookupRecords:this.parseRecordList(Qe)}}))}:3===e?{substFormat:3,backtrackCoverage:this.parseList(rA.pointer(rA.coverage)),inputCoverage:this.parseList(rA.pointer(rA.coverage)),lookaheadCoverage:this.parseList(rA.pointer(rA.coverage)),lookupRecords:this.parseRecordList(Qe)}:void N.assert(!1,"0x"+A.toString(16)+": lookup type 6 format must be 1, 2 or 3.")},Ie[7]=function(){var A=this.parseUShort();N.argument(1===A,"GSUB Extension Substitution subtable identifier-format must be 1");var e=this.parseUShort(),t=new rA(this.data,this.offset+this.parseULong());return{substFormat:1,lookupType:e,extension:Ie[e].call(t)}},Ie[8]=function(){var A=this.parseUShort();return N.argument(1===A,"GSUB Reverse Chaining Contextual Single Substitution Subtable identifier-format must be 1"),{substFormat:A,coverage:this.parsePointer(rA.coverage),backtrackCoverage:this.parseList(rA.pointer(rA.coverage)),lookaheadCoverage:this.parseList(rA.pointer(rA.coverage)),substitutes:this.parseUShortList()}};var Ce=new Array(9);Ce[1]=function(A){return 1===A.substFormat?new $.Table("substitutionTable",[{name:"substFormat",type:"USHORT",value:1},{name:"coverage",type:"TABLE",value:new $.Coverage(A.coverage)},{name:"deltaGlyphID",type:"USHORT",value:A.deltaGlyphId}]):new $.Table("substitutionTable",[{name:"substFormat",type:"USHORT",value:2},{name:"coverage",type:"TABLE",value:new $.Coverage(A.coverage)}].concat($.ushortList("substitute",A.substitute)))},Ce[2]=function(A){return N.assert(1===A.substFormat,"Lookup type 2 substFormat must be 1."),new $.Table("substitutionTable",[{name:"substFormat",type:"USHORT",value:1},{name:"coverage",type:"TABLE",value:new $.Coverage(A.coverage)}].concat($.tableList("seqSet",A.sequences,(function(A){return new $.Table("sequenceSetTable",$.ushortList("sequence",A))}))))},Ce[3]=function(A){return N.assert(1===A.substFormat,"Lookup type 3 substFormat must be 1."),new $.Table("substitutionTable",[{name:"substFormat",type:"USHORT",value:1},{name:"coverage",type:"TABLE",value:new $.Coverage(A.coverage)}].concat($.tableList("altSet",A.alternateSets,(function(A){return new $.Table("alternateSetTable",$.ushortList("alternate",A))}))))},Ce[4]=function(A){return N.assert(1===A.substFormat,"Lookup type 4 substFormat must be 1."),new $.Table("substitutionTable",[{name:"substFormat",type:"USHORT",value:1},{name:"coverage",type:"TABLE",value:new $.Coverage(A.coverage)}].concat($.tableList("ligSet",A.ligatureSets,(function(A){return new $.Table("ligatureSetTable",$.tableList("ligature",A,(function(A){return new $.Table("ligatureTable",[{name:"ligGlyph",type:"USHORT",value:A.ligGlyph}].concat($.ushortList("component",A.components,A.components.length+1)))})))}))))},Ce[6]=function(A){if(1===A.substFormat){var e=new $.Table("chainContextTable",[{name:"substFormat",type:"USHORT",value:A.substFormat},{name:"coverage",type:"TABLE",value:new $.Coverage(A.coverage)}].concat($.tableList("chainRuleSet",A.chainRuleSets,(function(A){return new $.Table("chainRuleSetTable",$.tableList("chainRule",A,(function(A){var e=$.ushortList("backtrackGlyph",A.backtrack,A.backtrack.length).concat($.ushortList("inputGlyph",A.input,A.input.length+1)).concat($.ushortList("lookaheadGlyph",A.lookahead,A.lookahead.length)).concat($.ushortList("substitution",[],A.lookupRecords.length));return A.lookupRecords.forEach((function(A,t){e=e.concat({name:"sequenceIndex"+t,type:"USHORT",value:A.sequenceIndex}).concat({name:"lookupListIndex"+t,type:"USHORT",value:A.lookupListIndex})})),new $.Table("chainRuleTable",e)})))}))));return e}if(2===A.substFormat)N.assert(!1,"lookup type 6 format 2 is not yet supported.");else if(3===A.substFormat){var t=[{name:"substFormat",type:"USHORT",value:A.substFormat}];return t.push({name:"backtrackGlyphCount",type:"USHORT",value:A.backtrackCoverage.length}),A.backtrackCoverage.forEach((function(A,e){t.push({name:"backtrackCoverage"+e,type:"TABLE",value:new $.Coverage(A)})})),t.push({name:"inputGlyphCount",type:"USHORT",value:A.inputCoverage.length}),A.inputCoverage.forEach((function(A,e){t.push({name:"inputCoverage"+e,type:"TABLE",value:new $.Coverage(A)})})),t.push({name:"lookaheadGlyphCount",type:"USHORT",value:A.lookaheadCoverage.length}),A.lookaheadCoverage.forEach((function(A,e){t.push({name:"lookaheadCoverage"+e,type:"TABLE",value:new $.Coverage(A)})})),t.push({name:"substitutionCount",type:"USHORT",value:A.lookupRecords.length}),A.lookupRecords.forEach((function(A,e){t=t.concat({name:"sequenceIndex"+e,type:"USHORT",value:A.sequenceIndex}).concat({name:"lookupListIndex"+e,type:"USHORT",value:A.lookupListIndex})})),new $.Table("chainContextTable",t)}N.assert(!1,"lookup type 6 format must be 1, 2 or 3.")};var ce={parse:function(A,e){var t=new rA(A,e=e||0),i=t.parseVersion(1);return N.argument(1===i||1.1===i,"Unsupported GSUB table version."),1===i?{version:i,scripts:t.parseScriptList(),features:t.parseFeatureList(),lookups:t.parseLookupList(Ie)}:{version:i,scripts:t.parseScriptList(),features:t.parseFeatureList(),lookups:t.parseLookupList(Ie),variations:t.parseFeatureVariationsList()}},make:function(A){return new $.Table("GSUB",[{name:"version",type:"ULONG",value:65536},{name:"scripts",type:"TABLE",value:new $.ScriptList(A.scripts)},{name:"features",type:"TABLE",value:new $.FeatureList(A.features)},{name:"lookups",type:"TABLE",value:new $.LookupList(A.lookups,Ce)}])}};var Be={parse:function(A,e){var t=new aA.Parser(A,e),i=t.parseULong();N.argument(1===i,"Unsupported META table version."),t.parseULong(),t.parseULong();for(var n=t.parseULong(),r={},s=0;s<n;s++){var a=t.parseTag(),o=t.parseULong(),g=t.parseULong(),I=G.UTF8(A,e+o,g);r[a]=I}return r},make:function(A){var e=Object.keys(A).length,t="",i=16+12*e,n=new $.Table("meta",[{name:"version",type:"ULONG",value:1},{name:"flags",type:"ULONG",value:0},{name:"offset",type:"ULONG",value:i},{name:"numTags",type:"ULONG",value:e}]);for(var r in A){var s=t.length;t+=A[r],n.fields.push({name:"tag "+r,type:"TAG",value:r}),n.fields.push({name:"offset "+r,type:"ULONG",value:i+s}),n.fields.push({name:"length "+r,type:"ULONG",value:A[r].length})}return n.fields.push({name:"stringPool",type:"CHARARRAY",value:t}),n}};function le(A){return Math.log(A)/Math.log(2)|0}function ue(A){for(;A.length%4!=0;)A.push(0);for(var e=0,t=0;t<A.length;t+=4)e+=(A[t]<<24)+(A[t+1]<<16)+(A[t+2]<<8)+A[t+3];return e%=Math.pow(2,32)}function Ee(A,e,t,i){return new $.Record("Table Record",[{name:"tag",type:"TAG",value:void 0!==A?A:""},{name:"checkSum",type:"ULONG",value:void 0!==e?e:0},{name:"offset",type:"ULONG",value:void 0!==t?t:0},{name:"length",type:"ULONG",value:void 0!==i?i:0}])}function fe(A){var e=new $.Table("sfnt",[{name:"version",type:"TAG",value:"OTTO"},{name:"numTables",type:"USHORT",value:0},{name:"searchRange",type:"USHORT",value:0},{name:"entrySelector",type:"USHORT",value:0},{name:"rangeShift",type:"USHORT",value:0}]);e.tables=A,e.numTables=A.length;var t=Math.pow(2,le(e.numTables));e.searchRange=16*t,e.entrySelector=le(t),e.rangeShift=16*e.numTables-e.searchRange;for(var i=[],n=[],r=e.sizeOf()+Ee().sizeOf()*e.numTables;r%4!=0;)r+=1,n.push({name:"padding",type:"BYTE",value:0});for(var s=0;s<A.length;s+=1){var a=A[s];N.argument(4===a.tableName.length,"Table name"+a.tableName+" is invalid.");var o=a.sizeOf(),g=Ee(a.tableName,ue(a.encode()),r,o);for(i.push({name:g.tag+" Table Record",type:"RECORD",value:g}),n.push({name:a.tableName+" table",type:"RECORD",value:a}),r+=o,N.argument(!isNaN(r),"Something went wrong calculating the offset.");r%4!=0;)r+=1,n.push({name:"padding",type:"BYTE",value:0})}return i.sort((function(A,e){return A.value.tag>e.value.tag?1:-1})),e.fields=e.fields.concat(i),e.fields=e.fields.concat(n),e}function he(A,e,t){for(var i=0;i<e.length;i+=1){var n=A.charToGlyphIndex(e[i]);if(n>0)return A.glyphs.get(n).getMetrics()}return t}function pe(A){for(var e=0,t=0;t<A.length;t+=1)e+=A[t];return e/A.length}var ye={make:fe,fontToTable:function(A){for(var e,t=[],i=[],n=[],r=[],s=[],a=[],o=[],g=0,I=0,Q=0,C=0,c=0,B=0;B<A.glyphs.length;B+=1){var l=A.glyphs.get(B),u=0|l.unicode;if(isNaN(l.advanceWidth))throw new Error("Glyph "+l.name+" ("+B+"): advanceWidth is not a number.");(e>u||void 0===e)&&u>0&&(e=u),g<u&&(g=u);var E=oe.getUnicodeRange(u);if(E<32)I|=1<<E;else if(E<64)Q|=1<<E-32;else if(E<96)C|=1<<E-64;else{if(!(E<123))throw new Error("Unicode ranges bits > 123 are reserved for internal usage");c|=1<<E-96}if(".notdef"!==l.name){var f=l.getMetrics();t.push(f.xMin),i.push(f.yMin),n.push(f.xMax),r.push(f.yMax),a.push(f.leftSideBearing),o.push(f.rightSideBearing),s.push(l.advanceWidth)}}var h={xMin:Math.min.apply(null,t),yMin:Math.min.apply(null,i),xMax:Math.max.apply(null,n),yMax:Math.max.apply(null,r),advanceWidthMax:Math.max.apply(null,s),advanceWidthAvg:pe(s),minLeftSideBearing:Math.min.apply(null,a),maxLeftSideBearing:Math.max.apply(null,a),minRightSideBearing:Math.min.apply(null,o)};h.ascender=A.ascender,h.descender=A.descender;var p=TA.make({flags:3,unitsPerEm:A.unitsPerEm,xMin:h.xMin,yMin:h.yMin,xMax:h.xMax,yMax:h.yMax,lowestRecPPEM:3,createdTimestamp:A.createdTimestamp}),y=HA.make({ascender:h.ascender,descender:h.descender,advanceWidthMax:h.advanceWidthMax,minLeftSideBearing:h.minLeftSideBearing,minRightSideBearing:h.minRightSideBearing,xMaxExtent:h.maxLeftSideBearing+(h.xMax-h.xMin),numberOfHMetrics:A.glyphs.length}),d=VA.make(A.glyphs.length),m=oe.make(Object.assign({xAvgCharWidth:Math.round(h.advanceWidthAvg),usFirstCharIndex:e,usLastCharIndex:g,ulUnicodeRange1:I,ulUnicodeRange2:Q,ulUnicodeRange3:C,ulUnicodeRange4:c,sTypoAscender:h.ascender,sTypoDescender:h.descender,sTypoLineGap:0,usWinAscent:h.yMax,usWinDescent:Math.abs(h.yMin),ulCodePageRange1:1,sxHeight:he(A,"xyvw",{yMax:Math.round(h.ascender/2)}).yMax,sCapHeight:he(A,"HIKLEFJMNTZBDPRAGOQSUVWXY",h).yMax,usDefaultChar:A.hasChar(" ")?32:0,usBreakChar:A.hasChar(" ")?32:0},A.tables.os2)),b=YA.make(A.glyphs),D=gA.make(A.glyphs),S=A.getEnglishName("fontFamily"),w=A.getEnglishName("fontSubfamily"),v=S+" "+w,k=A.getEnglishName("postScriptName");k||(k=S.replace(/\s/g,"")+"-"+w);var x={};for(var N in A.names)x[N]=A.names[N];x.uniqueID||(x.uniqueID={en:A.getEnglishName("manufacturer")+":"+v}),x.postScriptName||(x.postScriptName={en:k}),x.preferredFamily||(x.preferredFamily=A.names.fontFamily),x.preferredSubfamily||(x.preferredSubfamily=A.names.fontSubfamily);var U=[],G=se.make(x,U),M=U.length>0?PA.make(U):void 0,R=ge.make(),F=KA.make(A.glyphs,{version:A.getEnglishName("version"),fullName:v,familyName:S,weightName:w,postScriptName:k,unitsPerEm:A.unitsPerEm,fontBBox:[0,h.yMin,h.ascender,h.advanceWidthMax]}),L=A.metas&&Object.keys(A.metas).length>0?Be.make(A.metas):void 0,z=[p,y,d,m,G,D,R,F,b];M&&z.push(M),A.tables.gsub&&z.push(ce.make(A.tables.gsub)),L&&z.push(L);for(var q=fe(z),J=ue(q.encode()),O=q.fields,K=!1,T=0;T<O.length;T+=1)if("head table"===O[T].name){O[T].value.checkSumAdjustment=2981146554-J,K=!0;break}if(!K)throw new Error("Could not find head table with checkSum to adjust.");return q},computeCheckSum:ue};function de(A,e){for(var t=0,i=A.length-1;t<=i;){var n=t+i>>>1,r=A[n].tag;if(r===e)return n;r<e?t=n+1:i=n-1}return-t-1}function me(A,e){for(var t=0,i=A.length-1;t<=i;){var n=t+i>>>1,r=A[n];if(r===e)return n;r<e?t=n+1:i=n-1}return-t-1}function be(A,e){for(var t,i=0,n=A.length-1;i<=n;){var r=i+n>>>1,s=(t=A[r]).start;if(s===e)return t;s<e?i=r+1:n=r-1}if(i>0)return e>(t=A[i-1]).end?0:t}function De(A,e){this.font=A,this.tableName=e}function Se(A){De.call(this,A,"gpos")}function we(A){De.call(this,A,"gsub")}function ve(A,e){var t=A.length;if(t!==e.length)return!1;for(var i=0;i<t;i++)if(A[i]!==e[i])return!1;return!0}function ke(A,e,t){for(var i=A.subtables,n=0;n<i.length;n++){var r=i[n];if(r.substFormat===e)return r}if(t)return i.push(t),t}function xe(A){for(var e=new ArrayBuffer(A.length),t=new Uint8Array(e),i=0;i<A.length;++i)t[i]=A[i];return e}function Ne(A,e){if(!A)throw e}function Ue(A,e,t,i,n){var r;return(e&i)>0?(r=A.parseByte(),e&n||(r=-r),r=t+r):r=(e&n)>0?t:t+A.parseShort(),r}function Ge(A,e,t){var i,n,r=new aA.Parser(e,t);if(A.numberOfContours=r.parseShort(),A._xMin=r.parseShort(),A._yMin=r.parseShort(),A._xMax=r.parseShort(),A._yMax=r.parseShort(),A.numberOfContours>0){for(var s=A.endPointIndices=[],a=0;a<A.numberOfContours;a+=1)s.push(r.parseUShort());A.instructionLength=r.parseUShort(),A.instructions=[];for(var o=0;o<A.instructionLength;o+=1)A.instructions.push(r.parseByte());var g=s[s.length-1]+1;i=[];for(var I=0;I<g;I+=1)if(n=r.parseByte(),i.push(n),(8&n)>0)for(var Q=r.parseByte(),C=0;C<Q;C+=1)i.push(n),I+=1;if(N.argument(i.length===g,"Bad flags."),s.length>0){var c,B=[];if(g>0){for(var l=0;l<g;l+=1)n=i[l],(c={}).onCurve=!!(1&n),c.lastPointOfContour=s.indexOf(l)>=0,B.push(c);for(var u=0,E=0;E<g;E+=1)n=i[E],(c=B[E]).x=Ue(r,n,u,2,16),u=c.x;for(var f=0,h=0;h<g;h+=1)n=i[h],(c=B[h]).y=Ue(r,n,f,4,32),f=c.y}A.points=B}else A.points=[]}else if(0===A.numberOfContours)A.points=[];else{A.isComposite=!0,A.points=[],A.components=[];for(var p=!0;p;){i=r.parseUShort();var y={glyphIndex:r.parseUShort(),xScale:1,scale01:0,scale10:0,yScale:1,dx:0,dy:0};(1&i)>0?(2&i)>0?(y.dx=r.parseShort(),y.dy=r.parseShort()):y.matchedPoints=[r.parseUShort(),r.parseUShort()]:(2&i)>0?(y.dx=r.parseChar(),y.dy=r.parseChar()):y.matchedPoints=[r.parseByte(),r.parseByte()],(8&i)>0?y.xScale=y.yScale=r.parseF2Dot14():(64&i)>0?(y.xScale=r.parseF2Dot14(),y.yScale=r.parseF2Dot14()):(128&i)>0&&(y.xScale=r.parseF2Dot14(),y.scale01=r.parseF2Dot14(),y.scale10=r.parseF2Dot14(),y.yScale=r.parseF2Dot14()),A.components.push(y),p=!!(32&i)}if(256&i){A.instructionLength=r.parseUShort(),A.instructions=[];for(var d=0;d<A.instructionLength;d+=1)A.instructions.push(r.parseByte())}}}function Me(A,e){for(var t=[],i=0;i<A.length;i+=1){var n=A[i],r={x:e.xScale*n.x+e.scale01*n.y+e.dx,y:e.scale10*n.x+e.yScale*n.y+e.dy,onCurve:n.onCurve,lastPointOfContour:n.lastPointOfContour};t.push(r)}return t}function Re(A){var e=new v;if(!A)return e;for(var t=function(A){for(var e=[],t=[],i=0;i<A.length;i+=1){var n=A[i];t.push(n),n.lastPointOfContour&&(e.push(t),t=[])}return N.argument(0===t.length,"There are still points left in the current contour."),e}(A),i=0;i<t.length;++i){var n=t[i],r=null,s=n[n.length-1],a=n[0];if(s.onCurve)e.moveTo(s.x,s.y);else if(a.onCurve)e.moveTo(a.x,a.y);else{var o={x:.5*(s.x+a.x),y:.5*(s.y+a.y)};e.moveTo(o.x,o.y)}for(var g=0;g<n.length;++g)if(r=s,s=a,a=n[(g+1)%n.length],s.onCurve)e.lineTo(s.x,s.y);else{var I=a;r.onCurve||{x:.5*(s.x+r.x),y:.5*(s.y+r.y)},a.onCurve||(I={x:.5*(s.x+a.x),y:.5*(s.y+a.y)}),e.quadraticCurveTo(s.x,s.y,I.x,I.y)}e.closePath()}return e}function Fe(A,e){if(e.isComposite)for(var t=0;t<e.components.length;t+=1){var i=e.components[t],n=A.get(i.glyphIndex);if(n.getPath(),n.points){var r=void 0;if(void 0===i.matchedPoints)r=Me(n.points,i);else{if(i.matchedPoints[0]>e.points.length-1||i.matchedPoints[1]>n.points.length-1)throw Error("Matched points out of range in "+e.name);var s=e.points[i.matchedPoints[0]],a=n.points[i.matchedPoints[1]],o={xScale:i.xScale,scale01:i.scale01,scale10:i.scale10,yScale:i.yScale,dx:0,dy:0};a=Me([a],o)[0],o.dx=s.x-a.x,o.dy=s.y-a.y,r=Me(n.points,o)}e.points=e.points.concat(r)}}return Re(e.points)}De.prototype={searchTag:de,binSearch:me,getTable:function(A){var e=this.font.tables[this.tableName];return!e&&A&&(e=this.font.tables[this.tableName]=this.createDefaultTable()),e},getScriptNames:function(){var A=this.getTable();return A?A.scripts.map((function(A){return A.tag})):[]},getDefaultScriptName:function(){var A=this.getTable();if(A){for(var e=!1,t=0;t<A.scripts.length;t++){var i=A.scripts[t].tag;if("DFLT"===i)return i;"latn"===i&&(e=!0)}return e?"latn":void 0}},getScriptTable:function(A,e){var t=this.getTable(e);if(t){A=A||"DFLT";var i=t.scripts,n=de(t.scripts,A);if(n>=0)return i[n].script;if(e){var r={tag:A,script:{defaultLangSys:{reserved:0,reqFeatureIndex:65535,featureIndexes:[]},langSysRecords:[]}};return i.splice(-1-n,0,r),r.script}}},getLangSysTable:function(A,e,t){var i=this.getScriptTable(A,t);if(i){if(!e||"dflt"===e||"DFLT"===e)return i.defaultLangSys;var n=de(i.langSysRecords,e);if(n>=0)return i.langSysRecords[n].langSys;if(t){var r={tag:e,langSys:{reserved:0,reqFeatureIndex:65535,featureIndexes:[]}};return i.langSysRecords.splice(-1-n,0,r),r.langSys}}},getFeatureTable:function(A,e,t,i){var n=this.getLangSysTable(A,e,i);if(n){for(var r,s=n.featureIndexes,a=this.font.tables[this.tableName].features,o=0;o<s.length;o++)if((r=a[s[o]]).tag===t)return r.feature;if(i){var g=a.length;return N.assert(0===g||t>=a[g-1].tag,"Features must be added in alphabetical order."),r={tag:t,feature:{params:0,lookupListIndexes:[]}},a.push(r),s.push(g),r.feature}}},getLookupTables:function(A,e,t,i,n){var r=this.getFeatureTable(A,e,t,n),s=[];if(r){for(var a,o=r.lookupListIndexes,g=this.font.tables[this.tableName].lookups,I=0;I<o.length;I++)(a=g[o[I]]).lookupType===i&&s.push(a);if(0===s.length&&n){a={lookupType:i,lookupFlag:0,subtables:[],markFilteringSet:void 0};var Q=g.length;return g.push(a),o.push(Q),[a]}}return s},getGlyphClass:function(A,e){switch(A.format){case 1:return A.startGlyph<=e&&e<A.startGlyph+A.classes.length?A.classes[e-A.startGlyph]:0;case 2:var t=be(A.ranges,e);return t?t.classId:0}},getCoverageIndex:function(A,e){switch(A.format){case 1:var t=me(A.glyphs,e);return t>=0?t:-1;case 2:var i=be(A.ranges,e);return i?i.index+e-i.start:-1}},expandCoverage:function(A){if(1===A.format)return A.glyphs;for(var e=[],t=A.ranges,i=0;i<t.length;i++)for(var n=t[i],r=n.start,s=n.end,a=r;a<=s;a++)e.push(a);return e}},Se.prototype=De.prototype,Se.prototype.init=function(){var A=this.getDefaultScriptName();this.defaultKerningTables=this.getKerningTables(A)},Se.prototype.getKerningValue=function(A,e,t){for(var i=0;i<A.length;i++)for(var n=A[i].subtables,r=0;r<n.length;r++){var s=n[r],a=this.getCoverageIndex(s.coverage,e);if(!(a<0))switch(s.posFormat){case 1:for(var o=s.pairSets[a],g=0;g<o.length;g++){var I=o[g];if(I.secondGlyph===t)return I.value1&&I.value1.xAdvance||0}break;case 2:var Q=this.getGlyphClass(s.classDef1,e),C=this.getGlyphClass(s.classDef2,t),c=s.classRecords[Q][C];return c.value1&&c.value1.xAdvance||0}}return 0},Se.prototype.getKerningTables=function(A,e){if(this.font.tables.gpos)return this.getLookupTables(A,e,"kern",2)},we.prototype=De.prototype,we.prototype.createDefaultTable=function(){return{version:1,scripts:[{tag:"DFLT",script:{defaultLangSys:{reserved:0,reqFeatureIndex:65535,featureIndexes:[]},langSysRecords:[]}}],features:[],lookups:[]}},we.prototype.getSingle=function(A,e,t){for(var i=[],n=this.getLookupTables(e,t,A,1),r=0;r<n.length;r++)for(var s=n[r].subtables,a=0;a<s.length;a++){var o=s[a],g=this.expandCoverage(o.coverage),I=void 0;if(1===o.substFormat){var Q=o.deltaGlyphId;for(I=0;I<g.length;I++){var C=g[I];i.push({sub:C,by:C+Q})}}else{var c=o.substitute;for(I=0;I<g.length;I++)i.push({sub:g[I],by:c[I]})}}return i},we.prototype.getMultiple=function(A,e,t){for(var i=[],n=this.getLookupTables(e,t,A,2),r=0;r<n.length;r++)for(var s=n[r].subtables,a=0;a<s.length;a++){var o=s[a],g=this.expandCoverage(o.coverage),I=void 0;for(I=0;I<g.length;I++){var Q=g[I],C=o.sequences[I];i.push({sub:Q,by:C})}}return i},we.prototype.getAlternates=function(A,e,t){for(var i=[],n=this.getLookupTables(e,t,A,3),r=0;r<n.length;r++)for(var s=n[r].subtables,a=0;a<s.length;a++)for(var o=s[a],g=this.expandCoverage(o.coverage),I=o.alternateSets,Q=0;Q<g.length;Q++)i.push({sub:g[Q],by:I[Q]});return i},we.prototype.getLigatures=function(A,e,t){for(var i=[],n=this.getLookupTables(e,t,A,4),r=0;r<n.length;r++)for(var s=n[r].subtables,a=0;a<s.length;a++)for(var o=s[a],g=this.expandCoverage(o.coverage),I=o.ligatureSets,Q=0;Q<g.length;Q++)for(var C=g[Q],c=I[Q],B=0;B<c.length;B++){var l=c[B];i.push({sub:[C].concat(l.components),by:l.ligGlyph})}return i},we.prototype.addSingle=function(A,e,t,i){var n=ke(this.getLookupTables(t,i,A,1,!0)[0],2,{substFormat:2,coverage:{format:1,glyphs:[]},substitute:[]});N.assert(1===n.coverage.format,"Single: unable to modify coverage table format "+n.coverage.format);var r=e.sub,s=this.binSearch(n.coverage.glyphs,r);s<0&&(s=-1-s,n.coverage.glyphs.splice(s,0,r),n.substitute.splice(s,0,0)),n.substitute[s]=e.by},we.prototype.addMultiple=function(A,e,t,i){N.assert(e.by instanceof Array&&e.by.length>1,'Multiple: "by" must be an array of two or more ids');var n=ke(this.getLookupTables(t,i,A,2,!0)[0],1,{substFormat:1,coverage:{format:1,glyphs:[]},sequences:[]});N.assert(1===n.coverage.format,"Multiple: unable to modify coverage table format "+n.coverage.format);var r=e.sub,s=this.binSearch(n.coverage.glyphs,r);s<0&&(s=-1-s,n.coverage.glyphs.splice(s,0,r),n.sequences.splice(s,0,0)),n.sequences[s]=e.by},we.prototype.addAlternate=function(A,e,t,i){var n=ke(this.getLookupTables(t,i,A,3,!0)[0],1,{substFormat:1,coverage:{format:1,glyphs:[]},alternateSets:[]});N.assert(1===n.coverage.format,"Alternate: unable to modify coverage table format "+n.coverage.format);var r=e.sub,s=this.binSearch(n.coverage.glyphs,r);s<0&&(s=-1-s,n.coverage.glyphs.splice(s,0,r),n.alternateSets.splice(s,0,0)),n.alternateSets[s]=e.by},we.prototype.addLigature=function(A,e,t,i){var n=this.getLookupTables(t,i,A,4,!0)[0],r=n.subtables[0];r||(r={substFormat:1,coverage:{format:1,glyphs:[]},ligatureSets:[]},n.subtables[0]=r),N.assert(1===r.coverage.format,"Ligature: unable to modify coverage table format "+r.coverage.format);var s=e.sub[0],a=e.sub.slice(1),o={ligGlyph:e.by,components:a},g=this.binSearch(r.coverage.glyphs,s);if(g>=0){for(var I=r.ligatureSets[g],Q=0;Q<I.length;Q++)if(ve(I[Q].components,a))return;I.push(o)}else g=-1-g,r.coverage.glyphs.splice(g,0,s),r.ligatureSets.splice(g,0,[o])},we.prototype.getFeature=function(A,e,t){if(/ss\d\d/.test(A))return this.getSingle(A,e,t);switch(A){case"aalt":case"salt":return this.getSingle(A,e,t).concat(this.getAlternates(A,e,t));case"dlig":case"liga":case"rlig":return this.getLigatures(A,e,t);case"ccmp":return this.getMultiple(A,e,t).concat(this.getLigatures(A,e,t));case"stch":return this.getMultiple(A,e,t)}},we.prototype.add=function(A,e,t,i){if(/ss\d\d/.test(A))return this.addSingle(A,e,t,i);switch(A){case"aalt":case"salt":return"number"==typeof e.by?this.addSingle(A,e,t,i):this.addAlternate(A,e,t,i);case"dlig":case"liga":case"rlig":return this.addLigature(A,e,t,i);case"ccmp":return e.by instanceof Array?this.addMultiple(A,e,t,i):this.addLigature(A,e,t,i)}};var Le,ze,qe,Je,Oe={getPath:Re,parse:function(A,e,t,i,n){return n.lowMemory?function(A,e,t,i){var n=new mA.GlyphSet(i);return i._push=function(r){var s=t[r];s!==t[r+1]?n.push(r,mA.ttfGlyphLoader(i,r,Ge,A,e+s,Fe)):n.push(r,mA.glyphLoader(i,r))},n}(A,e,t,i):function(A,e,t,i){for(var n=new mA.GlyphSet(i),r=0;r<t.length-1;r+=1){var s=t[r];s!==t[r+1]?n.push(r,mA.ttfGlyphLoader(i,r,Ge,A,e+s,Fe)):n.push(r,mA.glyphLoader(i,r))}return n}(A,e,t,i)}};function Ke(A){this.font=A,this.getCommands=function(A){return Oe.getPath(A).commands},this._fpgmState=this._prepState=void 0,this._errorState=0}function Te(A){return A}function He(A){return Math.sign(A)*Math.round(Math.abs(A))}function Ye(A){return Math.sign(A)*Math.round(Math.abs(2*A))/2}function Pe(A){return Math.sign(A)*(Math.round(Math.abs(A)+.5)-.5)}function Ve(A){return Math.sign(A)*Math.ceil(Math.abs(A))}function _e(A){return Math.sign(A)*Math.floor(Math.abs(A))}var We=function(A){var e=this.srPeriod,t=this.srPhase,i=1;return A<0&&(A=-A,i=-1),A+=this.srThreshold-t,A=Math.trunc(A/e)*e,(A+=t)<0?t*i:A*i},Xe={x:1,y:0,axis:"x",distance:function(A,e,t,i){return(t?A.xo:A.x)-(i?e.xo:e.x)},interpolate:function(A,e,t,i){var n,r,s,a,o,g,I;if(!i||i===this)return n=A.xo-e.xo,r=A.xo-t.xo,o=e.x-e.xo,g=t.x-t.xo,0===(I=(s=Math.abs(n))+(a=Math.abs(r)))?void(A.x=A.xo+(o+g)/2):void(A.x=A.xo+(o*a+g*s)/I);n=i.distance(A,e,!0,!0),r=i.distance(A,t,!0,!0),o=i.distance(e,e,!1,!0),g=i.distance(t,t,!1,!0),0!==(I=(s=Math.abs(n))+(a=Math.abs(r)))?Xe.setRelative(A,A,(o*a+g*s)/I,i,!0):Xe.setRelative(A,A,(o+g)/2,i,!0)},normalSlope:Number.NEGATIVE_INFINITY,setRelative:function(A,e,t,i,n){if(i&&i!==this){var r=n?e.xo:e.x,s=n?e.yo:e.y,a=r+t*i.x,o=s+t*i.y;A.x=a+(A.y-o)/i.normalSlope}else A.x=(n?e.xo:e.x)+t},slope:0,touch:function(A){A.xTouched=!0},touched:function(A){return A.xTouched},untouch:function(A){A.xTouched=!1}},je={x:0,y:1,axis:"y",distance:function(A,e,t,i){return(t?A.yo:A.y)-(i?e.yo:e.y)},interpolate:function(A,e,t,i){var n,r,s,a,o,g,I;if(!i||i===this)return n=A.yo-e.yo,r=A.yo-t.yo,o=e.y-e.yo,g=t.y-t.yo,0===(I=(s=Math.abs(n))+(a=Math.abs(r)))?void(A.y=A.yo+(o+g)/2):void(A.y=A.yo+(o*a+g*s)/I);n=i.distance(A,e,!0,!0),r=i.distance(A,t,!0,!0),o=i.distance(e,e,!1,!0),g=i.distance(t,t,!1,!0),0!==(I=(s=Math.abs(n))+(a=Math.abs(r)))?je.setRelative(A,A,(o*a+g*s)/I,i,!0):je.setRelative(A,A,(o+g)/2,i,!0)},normalSlope:0,setRelative:function(A,e,t,i,n){if(i&&i!==this){var r=n?e.xo:e.x,s=n?e.yo:e.y,a=r+t*i.x,o=s+t*i.y;A.y=o+i.normalSlope*(A.x-a)}else A.y=(n?e.yo:e.y)+t},slope:Number.POSITIVE_INFINITY,touch:function(A){A.yTouched=!0},touched:function(A){return A.yTouched},untouch:function(A){A.yTouched=!1}};function Ze(A,e){this.x=A,this.y=e,this.axis=void 0,this.slope=e/A,this.normalSlope=-A/e,Object.freeze(this)}function $e(A,e){var t=Math.sqrt(A*A+e*e);return e/=t,1===(A/=t)&&0===e?Xe:0===A&&1===e?je:new Ze(A,e)}function At(A,e,t,i){this.x=this.xo=Math.round(64*A)/64,this.y=this.yo=Math.round(64*e)/64,this.lastPointOfContour=t,this.onCurve=i,this.prevPointOnContour=void 0,this.nextPointOnContour=void 0,this.xTouched=!1,this.yTouched=!1,Object.preventExtensions(this)}Object.freeze(Xe),Object.freeze(je),Ze.prototype.distance=function(A,e,t,i){return this.x*Xe.distance(A,e,t,i)+this.y*je.distance(A,e,t,i)},Ze.prototype.interpolate=function(A,e,t,i){var n,r,s,a,o,g,I;s=i.distance(A,e,!0,!0),a=i.distance(A,t,!0,!0),n=i.distance(e,e,!1,!0),r=i.distance(t,t,!1,!0),0!==(I=(o=Math.abs(s))+(g=Math.abs(a)))?this.setRelative(A,A,(n*g+r*o)/I,i,!0):this.setRelative(A,A,(n+r)/2,i,!0)},Ze.prototype.setRelative=function(A,e,t,i,n){i=i||this;var r=n?e.xo:e.x,s=n?e.yo:e.y,a=r+t*i.x,o=s+t*i.y,g=i.normalSlope,I=this.slope,Q=A.x,C=A.y;A.x=(I*Q-g*a+o-C)/(I-g),A.y=I*(A.x-Q)+C},Ze.prototype.touch=function(A){A.xTouched=!0,A.yTouched=!0},At.prototype.nextTouched=function(A){for(var e=this.nextPointOnContour;!A.touched(e)&&e!==this;)e=e.nextPointOnContour;return e},At.prototype.prevTouched=function(A){for(var e=this.prevPointOnContour;!A.touched(e)&&e!==this;)e=e.prevPointOnContour;return e};var et=Object.freeze(new At(0,0)),tt={cvCutIn:17/16,deltaBase:9,deltaShift:.125,loop:1,minDis:1,autoFlip:!0};function it(A,e){switch(this.env=A,this.stack=[],this.prog=e,A){case"glyf":this.zp0=this.zp1=this.zp2=1,this.rp0=this.rp1=this.rp2=0;case"prep":this.fv=this.pv=this.dpv=Xe,this.round=He}}function nt(A){for(var e=A.tZone=new Array(A.gZone.length),t=0;t<e.length;t++)e[t]=new At(0,0)}function rt(A,e){var t,i=A.prog,n=A.ip,r=1;do{if(88===(t=i[++n]))r++;else if(89===t)r--;else if(64===t)n+=i[n+1]+1;else if(65===t)n+=2*i[n+1]+1;else if(t>=176&&t<=183)n+=t-176+1;else if(t>=184&&t<=191)n+=2*(t-184+1);else if(e&&1===r&&27===t)break}while(r>0);A.ip=n}function st(A,e){exports.DEBUG&&console.log(e.step,"SVTCA["+A.axis+"]"),e.fv=e.pv=e.dpv=A}function at(A,e){exports.DEBUG&&console.log(e.step,"SPVTCA["+A.axis+"]"),e.pv=e.dpv=A}function ot(A,e){exports.DEBUG&&console.log(e.step,"SFVTCA["+A.axis+"]"),e.fv=A}function gt(A,e){var t,i,n=e.stack,r=n.pop(),s=n.pop(),a=e.z2[r],o=e.z1[s];exports.DEBUG&&console.log("SPVTL["+A+"]",r,s),A?(t=a.y-o.y,i=o.x-a.x):(t=o.x-a.x,i=o.y-a.y),e.pv=e.dpv=$e(t,i)}function It(A,e){var t,i,n=e.stack,r=n.pop(),s=n.pop(),a=e.z2[r],o=e.z1[s];exports.DEBUG&&console.log("SFVTL["+A+"]",r,s),A?(t=a.y-o.y,i=o.x-a.x):(t=o.x-a.x,i=o.y-a.y),e.fv=$e(t,i)}function Qt(A){exports.DEBUG&&console.log(A.step,"POP[]"),A.stack.pop()}function Ct(A,e){var t=e.stack.pop(),i=e.z0[t],n=e.fv,r=e.pv;exports.DEBUG&&console.log(e.step,"MDAP["+A+"]",t);var s=r.distance(i,et);A&&(s=e.round(s)),n.setRelative(i,et,s,r),n.touch(i),e.rp0=e.rp1=t}function ct(A,e){var t,i,n,r=e.z2,s=r.length-2;exports.DEBUG&&console.log(e.step,"IUP["+A.axis+"]");for(var a=0;a<s;a++)t=r[a],A.touched(t)||(i=t.prevTouched(A))!==t&&(i===(n=t.nextTouched(A))&&A.setRelative(t,t,A.distance(i,i,!1,!0),A,!0),A.interpolate(t,i,n,A))}function Bt(A,e){for(var t=e.stack,i=A?e.rp1:e.rp2,n=(A?e.z0:e.z1)[i],r=e.fv,s=e.pv,a=e.loop,o=e.z2;a--;){var g=t.pop(),I=o[g],Q=s.distance(n,n,!1,!0);r.setRelative(I,I,Q,s),r.touch(I),exports.DEBUG&&console.log(e.step,(e.loop>1?"loop "+(e.loop-a)+": ":"")+"SHP["+(A?"rp1":"rp2")+"]",g)}e.loop=1}function lt(A,e){var t=e.stack,i=A?e.rp1:e.rp2,n=(A?e.z0:e.z1)[i],r=e.fv,s=e.pv,a=t.pop(),o=e.z2[e.contours[a]],g=o;exports.DEBUG&&console.log(e.step,"SHC["+A+"]",a);var I=s.distance(n,n,!1,!0);do{g!==n&&r.setRelative(g,g,I,s),g=g.nextPointOnContour}while(g!==o)}function ut(A,e){var t,i,n=e.stack,r=A?e.rp1:e.rp2,s=(A?e.z0:e.z1)[r],a=e.fv,o=e.pv,g=n.pop();switch(exports.DEBUG&&console.log(e.step,"SHZ["+A+"]",g),g){case 0:t=e.tZone;break;case 1:t=e.gZone;break;default:throw new Error("Invalid zone")}for(var I=o.distance(s,s,!1,!0),Q=t.length-2,C=0;C<Q;C++)i=t[C],a.setRelative(i,i,I,o)}function Et(A,e){var t=e.stack,i=t.pop()/64,n=t.pop(),r=e.z1[n],s=e.z0[e.rp0],a=e.fv,o=e.pv;a.setRelative(r,s,i,o),a.touch(r),exports.DEBUG&&console.log(e.step,"MSIRP["+A+"]",i,n),e.rp1=e.rp0,e.rp2=n,A&&(e.rp0=n)}function ft(A,e){var t=e.stack,i=t.pop(),n=t.pop(),r=e.z0[n],s=e.fv,a=e.pv,o=e.cvt[i];exports.DEBUG&&console.log(e.step,"MIAP["+A+"]",i,"(",o,")",n);var g=a.distance(r,et);A&&(Math.abs(g-o)<e.cvCutIn&&(g=o),g=e.round(g)),s.setRelative(r,et,g,a),0===e.zp0&&(r.xo=r.x,r.yo=r.y),s.touch(r),e.rp0=e.rp1=n}function ht(A,e){var t=e.stack,i=t.pop(),n=e.z2[i];exports.DEBUG&&console.log(e.step,"GC["+A+"]",i),t.push(64*e.dpv.distance(n,et,A,!1))}function pt(A,e){var t=e.stack,i=t.pop(),n=t.pop(),r=e.z1[i],s=e.z0[n],a=e.dpv.distance(s,r,A,A);exports.DEBUG&&console.log(e.step,"MD["+A+"]",i,n,"->",a),e.stack.push(Math.round(64*a))}function yt(A,e){var t=e.stack,i=t.pop(),n=e.fv,r=e.pv,s=e.ppem,a=e.deltaBase+16*(A-1),o=e.deltaShift,g=e.z0;exports.DEBUG&&console.log(e.step,"DELTAP["+A+"]",i,t);for(var I=0;I<i;I++){var Q=t.pop(),C=t.pop();if(a+((240&C)>>4)===s){var c=(15&C)-8;c>=0&&c++,exports.DEBUG&&console.log(e.step,"DELTAPFIX",Q,"by",c*o);var B=g[Q];n.setRelative(B,B,c*o,r)}}}function dt(A,e){var t=e.stack,i=t.pop();exports.DEBUG&&console.log(e.step,"ROUND[]"),t.push(64*e.round(i/64))}function mt(A,e){var t=e.stack,i=t.pop(),n=e.ppem,r=e.deltaBase+16*(A-1),s=e.deltaShift;exports.DEBUG&&console.log(e.step,"DELTAC["+A+"]",i,t);for(var a=0;a<i;a++){var o=t.pop(),g=t.pop();if(r+((240&g)>>4)===n){var I=(15&g)-8;I>=0&&I++;var Q=I*s;exports.DEBUG&&console.log(e.step,"DELTACFIX",o,"by",Q),e.cvt[o]+=Q}}}function bt(A,e){var t,i,n=e.stack,r=n.pop(),s=n.pop(),a=e.z2[r],o=e.z1[s];exports.DEBUG&&console.log(e.step,"SDPVTL["+A+"]",r,s),A?(t=a.y-o.y,i=o.x-a.x):(t=o.x-a.x,i=o.y-a.y),e.dpv=$e(t,i)}function Dt(A,e){var t=e.stack,i=e.prog,n=e.ip;exports.DEBUG&&console.log(e.step,"PUSHB["+A+"]");for(var r=0;r<A;r++)t.push(i[++n]);e.ip=n}function St(A,e){var t=e.ip,i=e.prog,n=e.stack;exports.DEBUG&&console.log(e.ip,"PUSHW["+A+"]");for(var r=0;r<A;r++){var s=i[++t]<<8|i[++t];32768&s&&(s=-(1+(65535^s))),n.push(s)}e.ip=t}function wt(A,e,t,i,n,r){var s,a,o,g,I=r.stack,Q=A&&I.pop(),C=I.pop(),c=r.rp0,B=r.z0[c],l=r.z1[C],u=r.minDis,E=r.fv,f=r.dpv;o=(a=s=f.distance(l,B,!0,!0))>=0?1:-1,a=Math.abs(a),A&&(g=r.cvt[Q],i&&Math.abs(a-g)<r.cvCutIn&&(a=g)),t&&a<u&&(a=u),i&&(a=r.round(a)),E.setRelative(l,B,o*a,f),E.touch(l),exports.DEBUG&&console.log(r.step,(A?"MIRP[":"MDRP[")+(e?"M":"m")+(t?">":"_")+(i?"R":"_")+(0===n?"Gr":1===n?"Bl":2===n?"Wh":"")+"]",A?Q+"("+r.cvt[Q]+","+g+")":"",C,"(d =",s,"->",o*a,")"),r.rp1=r.rp0,r.rp2=C,e&&(r.rp0=C)}function vt(A){this.char=A,this.state={},this.activeState=null}function kt(A,e,t){this.contextName=t,this.startIndex=A,this.endOffset=e}function xt(A,e,t){this.contextName=A,this.openRange=null,this.ranges=[],this.checkStart=e,this.checkEnd=t}function Nt(A,e){this.context=A,this.index=e,this.length=A.length,this.current=A[e],this.backtrack=A.slice(0,e),this.lookahead=A.slice(e+1)}function Ut(A){this.eventId=A,this.subscribers=[]}function Gt(A){var e=this,t=["start","end","next","newToken","contextStart","contextEnd","insertToken","removeToken","removeRange","replaceToken","replaceRange","composeRUD","updateContextsRanges"];t.forEach((function(A){Object.defineProperty(e.events,A,{value:new Ut(A)})})),A&&t.forEach((function(t){var i=A[t];"function"==typeof i&&e.events[t].subscribe(i)}));["insertToken","removeToken","removeRange","replaceToken","replaceRange","composeRUD"].forEach((function(A){e.events[A].subscribe(e.updateContextsRanges)}))}function Mt(A){this.tokens=[],this.registeredContexts={},this.contextCheckers=[],this.events={},this.registeredModifiers=[],Gt.call(this,A)}function Rt(A){return/[\u0600-\u065F\u066A-\u06D2\u06FA-\u06FF]/.test(A)}function Ft(A){return/[\u0630\u0690\u0621\u0631\u0661\u0671\u0622\u0632\u0672\u0692\u06C2\u0623\u0673\u0693\u06C3\u0624\u0694\u06C4\u0625\u0675\u0695\u06C5\u06E5\u0676\u0696\u06C6\u0627\u0677\u0697\u06C7\u0648\u0688\u0698\u06C8\u0689\u0699\u06C9\u068A\u06CA\u066B\u068B\u06CB\u068C\u068D\u06CD\u06FD\u068E\u06EE\u06FE\u062F\u068F\u06CF\u06EF]/.test(A)}function Lt(A){return/[\u0600-\u0605\u060C-\u060E\u0610-\u061B\u061E\u064B-\u065F\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED]/.test(A)}function zt(A){return/[A-z]/.test(A)}function qt(A){this.font=A,this.features={}}function Jt(A){this.id=A.id,this.tag=A.tag,this.substitution=A.substitution}function Ot(A,e){if(!A)return-1;switch(e.format){case 1:return e.glyphs.indexOf(A);case 2:for(var t=e.ranges,i=0;i<t.length;i++){var n=t[i];if(A>=n.start&&A<=n.end){var r=A-n.start;return n.index+r}}break;default:return-1}return-1}function Kt(A,e){return-1===Ot(A,e.coverage)?null:A+e.deltaGlyphId}function Tt(A,e){var t=Ot(A,e.coverage);return-1===t?null:e.substitute[t]}function Ht(A,e){for(var t=[],i=0;i<A.length;i++){var n=A[i],r=e.current,s=Ot(r=Array.isArray(r)?r[0]:r,n);-1!==s&&t.push(s)}return t.length!==A.length?-1:t}function Yt(A,e){var t=e.inputCoverage.length+e.lookaheadCoverage.length+e.backtrackCoverage.length;if(A.context.length<t)return[];var i=Ht(e.inputCoverage,A);if(-1===i)return[];var n=e.inputCoverage.length-1;if(A.lookahead.length<e.lookaheadCoverage.length)return[];for(var r=A.lookahead.slice(n);r.length&&Lt(r[0].char);)r.shift();var s=new Nt(r,0),a=Ht(e.lookaheadCoverage,s),o=[].concat(A.backtrack);for(o.reverse();o.length&&Lt(o[0].char);)o.shift();if(o.length<e.backtrackCoverage.length)return[];var g=new Nt(o,0),I=Ht(e.backtrackCoverage,g),Q=[];if(i.length===e.inputCoverage.length&&a.length===e.lookaheadCoverage.length&&I.length===e.backtrackCoverage.length)for(var C=0;C<e.lookupRecords.length;C++)for(var c=e.lookupRecords[C].lookupListIndex,B=this.getLookupByIndex(c),l=0;l<B.subtables.length;l++){var u=B.subtables[l],E=this.getLookupMethod(B,u);if("12"===this.getSubstitutionType(B,u))for(var f=0;f<i.length;f++){var h=E(A.get(f));h&&Q.push(h)}}return Q}function Pt(A,e){var t,i=Ot(A.current,e.coverage);if(-1===i)return null;for(var n=e.ligatureSets[i],r=0;r<n.length;r++){t=n[r];for(var s=0;s<t.components.length;s++){if(A.lookahead[s]!==t.components[s])break;if(s===t.components.length-1)return t}}return null}function Vt(A,e){var t=Ot(A,e.coverage);return-1===t?null:e.sequences[t]}Ke.prototype.exec=function(A,e){if("number"!=typeof e)throw new Error("Point size is not a number!");if(!(this._errorState>2)){var t=this.font,i=this._prepState;if(!i||i.ppem!==e){var n=this._fpgmState;if(!n){it.prototype=tt,(n=this._fpgmState=new it("fpgm",t.tables.fpgm)).funcs=[],n.font=t,exports.DEBUG&&(console.log("---EXEC FPGM---"),n.step=-1);try{ze(n)}catch(A){return console.log("Hinting error in FPGM:"+A),void(this._errorState=3)}}it.prototype=n,(i=this._prepState=new it("prep",t.tables.prep)).ppem=e;var r=t.tables.cvt;if(r)for(var s=i.cvt=new Array(r.length),a=e/t.unitsPerEm,o=0;o<r.length;o++)s[o]=r[o]*a;else i.cvt=[];exports.DEBUG&&(console.log("---EXEC PREP---"),i.step=-1);try{ze(i)}catch(A){this._errorState<2&&console.log("Hinting error in PREP:"+A),this._errorState=2}}if(!(this._errorState>1))try{return qe(A,i)}catch(A){return this._errorState<1&&(console.log("Hinting error:"+A),console.log("Note: further hinting errors are silenced")),void(this._errorState=1)}}},qe=function(A,e){var t,i,n,r=e.ppem/e.font.unitsPerEm,s=r,a=A.components;if(it.prototype=e,a){var o=e.font;i=[],t=[];for(var g=0;g<a.length;g++){var I=a[g],Q=o.glyphs.get(I.glyphIndex);n=new it("glyf",Q.instructions),exports.DEBUG&&(console.log("---EXEC COMP "+g+"---"),n.step=-1),Je(Q,n,r,s);for(var C=Math.round(I.dx*r),c=Math.round(I.dy*s),B=n.gZone,l=n.contours,u=0;u<B.length;u++){var E=B[u];E.xTouched=E.yTouched=!1,E.xo=E.x=E.x+C,E.yo=E.y=E.y+c}var f=i.length;i.push.apply(i,B);for(var h=0;h<l.length;h++)t.push(l[h]+f)}A.instructions&&!n.inhibitGridFit&&((n=new it("glyf",A.instructions)).gZone=n.z0=n.z1=n.z2=i,n.contours=t,i.push(new At(0,0),new At(Math.round(A.advanceWidth*r),0)),exports.DEBUG&&(console.log("---EXEC COMPOSITE---"),n.step=-1),ze(n),i.length-=2)}else n=new it("glyf",A.instructions),exports.DEBUG&&(console.log("---EXEC GLYPH---"),n.step=-1),Je(A,n,r,s),i=n.gZone;return i},Je=function(A,e,t,i){for(var n,r,s,a=A.points||[],o=a.length,g=e.gZone=e.z0=e.z1=e.z2=[],I=e.contours=[],Q=0;Q<o;Q++)n=a[Q],g[Q]=new At(n.x*t,n.y*i,n.lastPointOfContour,n.onCurve);for(var C=0;C<o;C++)n=g[C],r||(r=n,I.push(C)),n.lastPointOfContour?(n.nextPointOnContour=r,r.prevPointOnContour=n,r=void 0):(s=g[C+1],n.nextPointOnContour=s,s.prevPointOnContour=n);if(!e.inhibitGridFit){if(exports.DEBUG){console.log("PROCESSING GLYPH",e.stack);for(var c=0;c<o;c++)console.log(c,g[c].x,g[c].y)}if(g.push(new At(0,0),new At(Math.round(A.advanceWidth*t),0)),ze(e),g.length-=2,exports.DEBUG){console.log("FINISHED GLYPH",e.stack);for(var B=0;B<o;B++)console.log(B,g[B].x,g[B].y)}}},ze=function(A){var e=A.prog;if(e){var t,i=e.length;for(A.ip=0;A.ip<i;A.ip++){if(exports.DEBUG&&A.step++,!(t=Le[e[A.ip]]))throw new Error("unknown instruction: 0x"+Number(e[A.ip]).toString(16));t(A)}}},Le=[st.bind(void 0,je),st.bind(void 0,Xe),at.bind(void 0,je),at.bind(void 0,Xe),ot.bind(void 0,je),ot.bind(void 0,Xe),gt.bind(void 0,0),gt.bind(void 0,1),It.bind(void 0,0),It.bind(void 0,1),function(A){var e=A.stack,t=e.pop(),i=e.pop();exports.DEBUG&&console.log(A.step,"SPVFS[]",t,i),A.pv=A.dpv=$e(i,t)},function(A){var e=A.stack,t=e.pop(),i=e.pop();exports.DEBUG&&console.log(A.step,"SPVFS[]",t,i),A.fv=$e(i,t)},function(A){var e=A.stack,t=A.pv;exports.DEBUG&&console.log(A.step,"GPV[]"),e.push(16384*t.x),e.push(16384*t.y)},function(A){var e=A.stack,t=A.fv;exports.DEBUG&&console.log(A.step,"GFV[]"),e.push(16384*t.x),e.push(16384*t.y)},function(A){A.fv=A.pv,exports.DEBUG&&console.log(A.step,"SFVTPV[]")},function(A){var e=A.stack,t=e.pop(),i=e.pop(),n=e.pop(),r=e.pop(),s=e.pop(),a=A.z0,o=A.z1,g=a[t],I=a[i],Q=o[n],C=o[r],c=A.z2[s];exports.DEBUG&&console.log("ISECT[], ",t,i,n,r,s);var B=g.x,l=g.y,u=I.x,E=I.y,f=Q.x,h=Q.y,p=C.x,y=C.y,d=(B-u)*(h-y)-(l-E)*(f-p),m=B*E-l*u,b=f*y-h*p;c.x=(m*(f-p)-b*(B-u))/d,c.y=(m*(h-y)-b*(l-E))/d},function(A){A.rp0=A.stack.pop(),exports.DEBUG&&console.log(A.step,"SRP0[]",A.rp0)},function(A){A.rp1=A.stack.pop(),exports.DEBUG&&console.log(A.step,"SRP1[]",A.rp1)},function(A){A.rp2=A.stack.pop(),exports.DEBUG&&console.log(A.step,"SRP2[]",A.rp2)},function(A){var e=A.stack.pop();switch(exports.DEBUG&&console.log(A.step,"SZP0[]",e),A.zp0=e,e){case 0:A.tZone||nt(A),A.z0=A.tZone;break;case 1:A.z0=A.gZone;break;default:throw new Error("Invalid zone pointer")}},function(A){var e=A.stack.pop();switch(exports.DEBUG&&console.log(A.step,"SZP1[]",e),A.zp1=e,e){case 0:A.tZone||nt(A),A.z1=A.tZone;break;case 1:A.z1=A.gZone;break;default:throw new Error("Invalid zone pointer")}},function(A){var e=A.stack.pop();switch(exports.DEBUG&&console.log(A.step,"SZP2[]",e),A.zp2=e,e){case 0:A.tZone||nt(A),A.z2=A.tZone;break;case 1:A.z2=A.gZone;break;default:throw new Error("Invalid zone pointer")}},function(A){var e=A.stack.pop();switch(exports.DEBUG&&console.log(A.step,"SZPS[]",e),A.zp0=A.zp1=A.zp2=e,e){case 0:A.tZone||nt(A),A.z0=A.z1=A.z2=A.tZone;break;case 1:A.z0=A.z1=A.z2=A.gZone;break;default:throw new Error("Invalid zone pointer")}},function(A){A.loop=A.stack.pop(),exports.DEBUG&&console.log(A.step,"SLOOP[]",A.loop)},function(A){exports.DEBUG&&console.log(A.step,"RTG[]"),A.round=He},function(A){exports.DEBUG&&console.log(A.step,"RTHG[]"),A.round=Pe},function(A){var e=A.stack.pop();exports.DEBUG&&console.log(A.step,"SMD[]",e),A.minDis=e/64},function(A){exports.DEBUG&&console.log(A.step,"ELSE[]"),rt(A,!1)},function(A){var e=A.stack.pop();exports.DEBUG&&console.log(A.step,"JMPR[]",e),A.ip+=e-1},function(A){var e=A.stack.pop();exports.DEBUG&&console.log(A.step,"SCVTCI[]",e),A.cvCutIn=e/64},void 0,void 0,function(A){var e=A.stack;exports.DEBUG&&console.log(A.step,"DUP[]"),e.push(e[e.length-1])},Qt,function(A){exports.DEBUG&&console.log(A.step,"CLEAR[]"),A.stack.length=0},function(A){var e=A.stack,t=e.pop(),i=e.pop();exports.DEBUG&&console.log(A.step,"SWAP[]"),e.push(t),e.push(i)},function(A){var e=A.stack;exports.DEBUG&&console.log(A.step,"DEPTH[]"),e.push(e.length)},function(A){var e=A.stack,t=e.pop();exports.DEBUG&&console.log(A.step,"CINDEX[]",t),e.push(e[e.length-t])},function(A){var e=A.stack,t=e.pop();exports.DEBUG&&console.log(A.step,"MINDEX[]",t),e.push(e.splice(e.length-t,1)[0])},void 0,void 0,void 0,function(A){var e=A.stack,t=e.pop(),i=e.pop();exports.DEBUG&&console.log(A.step,"LOOPCALL[]",t,i);var n=A.ip,r=A.prog;A.prog=A.funcs[t];for(var s=0;s<i;s++)ze(A),exports.DEBUG&&console.log(++A.step,s+1<i?"next loopcall":"done loopcall",s);A.ip=n,A.prog=r},function(A){var e=A.stack.pop();exports.DEBUG&&console.log(A.step,"CALL[]",e);var t=A.ip,i=A.prog;A.prog=A.funcs[e],ze(A),A.ip=t,A.prog=i,exports.DEBUG&&console.log(++A.step,"returning from",e)},function(A){if("fpgm"!==A.env)throw new Error("FDEF not allowed here");var e=A.stack,t=A.prog,i=A.ip,n=e.pop(),r=i;for(exports.DEBUG&&console.log(A.step,"FDEF[]",n);45!==t[++i];);A.ip=i,A.funcs[n]=t.slice(r+1,i)},void 0,Ct.bind(void 0,0),Ct.bind(void 0,1),ct.bind(void 0,je),ct.bind(void 0,Xe),Bt.bind(void 0,0),Bt.bind(void 0,1),lt.bind(void 0,0),lt.bind(void 0,1),ut.bind(void 0,0),ut.bind(void 0,1),function(A){for(var e=A.stack,t=A.loop,i=A.fv,n=e.pop()/64,r=A.z2;t--;){var s=e.pop(),a=r[s];exports.DEBUG&&console.log(A.step,(A.loop>1?"loop "+(A.loop-t)+": ":"")+"SHPIX[]",s,n),i.setRelative(a,a,n),i.touch(a)}A.loop=1},function(A){for(var e=A.stack,t=A.rp1,i=A.rp2,n=A.loop,r=A.z0[t],s=A.z1[i],a=A.fv,o=A.dpv,g=A.z2;n--;){var I=e.pop(),Q=g[I];exports.DEBUG&&console.log(A.step,(A.loop>1?"loop "+(A.loop-n)+": ":"")+"IP[]",I,t,"<->",i),a.interpolate(Q,r,s,o),a.touch(Q)}A.loop=1},Et.bind(void 0,0),Et.bind(void 0,1),function(A){for(var e=A.stack,t=A.rp0,i=A.z0[t],n=A.loop,r=A.fv,s=A.pv,a=A.z1;n--;){var o=e.pop(),g=a[o];exports.DEBUG&&console.log(A.step,(A.loop>1?"loop "+(A.loop-n)+": ":"")+"ALIGNRP[]",o),r.setRelative(g,i,0,s),r.touch(g)}A.loop=1},function(A){exports.DEBUG&&console.log(A.step,"RTDG[]"),A.round=Ye},ft.bind(void 0,0),ft.bind(void 0,1),function(A){var e=A.prog,t=A.ip,i=A.stack,n=e[++t];exports.DEBUG&&console.log(A.step,"NPUSHB[]",n);for(var r=0;r<n;r++)i.push(e[++t]);A.ip=t},function(A){var e=A.ip,t=A.prog,i=A.stack,n=t[++e];exports.DEBUG&&console.log(A.step,"NPUSHW[]",n);for(var r=0;r<n;r++){var s=t[++e]<<8|t[++e];32768&s&&(s=-(1+(65535^s))),i.push(s)}A.ip=e},function(A){var e=A.stack,t=A.store;t||(t=A.store=[]);var i=e.pop(),n=e.pop();exports.DEBUG&&console.log(A.step,"WS",i,n),t[n]=i},function(A){var e=A.stack,t=A.store,i=e.pop();exports.DEBUG&&console.log(A.step,"RS",i);var n=t&&t[i]||0;e.push(n)},function(A){var e=A.stack,t=e.pop(),i=e.pop();exports.DEBUG&&console.log(A.step,"WCVTP",t,i),A.cvt[i]=t/64},function(A){var e=A.stack,t=e.pop();exports.DEBUG&&console.log(A.step,"RCVT",t),e.push(64*A.cvt[t])},ht.bind(void 0,0),ht.bind(void 0,1),void 0,pt.bind(void 0,0),pt.bind(void 0,1),function(A){exports.DEBUG&&console.log(A.step,"MPPEM[]"),A.stack.push(A.ppem)},void 0,function(A){exports.DEBUG&&console.log(A.step,"FLIPON[]"),A.autoFlip=!0},void 0,void 0,function(A){var e=A.stack,t=e.pop(),i=e.pop();exports.DEBUG&&console.log(A.step,"LT[]",t,i),e.push(i<t?1:0)},function(A){var e=A.stack,t=e.pop(),i=e.pop();exports.DEBUG&&console.log(A.step,"LTEQ[]",t,i),e.push(i<=t?1:0)},function(A){var e=A.stack,t=e.pop(),i=e.pop();exports.DEBUG&&console.log(A.step,"GT[]",t,i),e.push(i>t?1:0)},function(A){var e=A.stack,t=e.pop(),i=e.pop();exports.DEBUG&&console.log(A.step,"GTEQ[]",t,i),e.push(i>=t?1:0)},function(A){var e=A.stack,t=e.pop(),i=e.pop();exports.DEBUG&&console.log(A.step,"EQ[]",t,i),e.push(t===i?1:0)},function(A){var e=A.stack,t=e.pop(),i=e.pop();exports.DEBUG&&console.log(A.step,"NEQ[]",t,i),e.push(t!==i?1:0)},function(A){var e=A.stack,t=e.pop();exports.DEBUG&&console.log(A.step,"ODD[]",t),e.push(Math.trunc(t)%2?1:0)},function(A){var e=A.stack,t=e.pop();exports.DEBUG&&console.log(A.step,"EVEN[]",t),e.push(Math.trunc(t)%2?0:1)},function(A){var e=A.stack.pop();exports.DEBUG&&console.log(A.step,"IF[]",e),e||(rt(A,!0),exports.DEBUG&&console.log(A.step,"EIF[]"))},function(A){exports.DEBUG&&console.log(A.step,"EIF[]")},function(A){var e=A.stack,t=e.pop(),i=e.pop();exports.DEBUG&&console.log(A.step,"AND[]",t,i),e.push(t&&i?1:0)},function(A){var e=A.stack,t=e.pop(),i=e.pop();exports.DEBUG&&console.log(A.step,"OR[]",t,i),e.push(t||i?1:0)},function(A){var e=A.stack,t=e.pop();exports.DEBUG&&console.log(A.step,"NOT[]",t),e.push(t?0:1)},yt.bind(void 0,1),function(A){var e=A.stack.pop();exports.DEBUG&&console.log(A.step,"SDB[]",e),A.deltaBase=e},function(A){var e=A.stack.pop();exports.DEBUG&&console.log(A.step,"SDS[]",e),A.deltaShift=Math.pow(.5,e)},function(A){var e=A.stack,t=e.pop(),i=e.pop();exports.DEBUG&&console.log(A.step,"ADD[]",t,i),e.push(i+t)},function(A){var e=A.stack,t=e.pop(),i=e.pop();exports.DEBUG&&console.log(A.step,"SUB[]",t,i),e.push(i-t)},function(A){var e=A.stack,t=e.pop(),i=e.pop();exports.DEBUG&&console.log(A.step,"DIV[]",t,i),e.push(64*i/t)},function(A){var e=A.stack,t=e.pop(),i=e.pop();exports.DEBUG&&console.log(A.step,"MUL[]",t,i),e.push(i*t/64)},function(A){var e=A.stack,t=e.pop();exports.DEBUG&&console.log(A.step,"ABS[]",t),e.push(Math.abs(t))},function(A){var e=A.stack,t=e.pop();exports.DEBUG&&console.log(A.step,"NEG[]",t),e.push(-t)},function(A){var e=A.stack,t=e.pop();exports.DEBUG&&console.log(A.step,"FLOOR[]",t),e.push(64*Math.floor(t/64))},function(A){var e=A.stack,t=e.pop();exports.DEBUG&&console.log(A.step,"CEILING[]",t),e.push(64*Math.ceil(t/64))},dt.bind(void 0,0),dt.bind(void 0,1),dt.bind(void 0,2),dt.bind(void 0,3),void 0,void 0,void 0,void 0,function(A){var e=A.stack,t=e.pop(),i=e.pop();exports.DEBUG&&console.log(A.step,"WCVTF[]",t,i),A.cvt[i]=t*A.ppem/A.font.unitsPerEm},yt.bind(void 0,2),yt.bind(void 0,3),mt.bind(void 0,1),mt.bind(void 0,2),mt.bind(void 0,3),function(A){var e,t=A.stack.pop();switch(exports.DEBUG&&console.log(A.step,"SROUND[]",t),A.round=We,192&t){case 0:e=.5;break;case 64:e=1;break;case 128:e=2;break;default:throw new Error("invalid SROUND value")}switch(A.srPeriod=e,48&t){case 0:A.srPhase=0;break;case 16:A.srPhase=.25*e;break;case 32:A.srPhase=.5*e;break;case 48:A.srPhase=.75*e;break;default:throw new Error("invalid SROUND value")}t&=15,A.srThreshold=0===t?0:(t/8-.5)*e},function(A){var e,t=A.stack.pop();switch(exports.DEBUG&&console.log(A.step,"S45ROUND[]",t),A.round=We,192&t){case 0:e=Math.sqrt(2)/2;break;case 64:e=Math.sqrt(2);break;case 128:e=2*Math.sqrt(2);break;default:throw new Error("invalid S45ROUND value")}switch(A.srPeriod=e,48&t){case 0:A.srPhase=0;break;case 16:A.srPhase=.25*e;break;case 32:A.srPhase=.5*e;break;case 48:A.srPhase=.75*e;break;default:throw new Error("invalid S45ROUND value")}t&=15,A.srThreshold=0===t?0:(t/8-.5)*e},void 0,void 0,function(A){exports.DEBUG&&console.log(A.step,"ROFF[]"),A.round=Te},void 0,function(A){exports.DEBUG&&console.log(A.step,"RUTG[]"),A.round=Ve},function(A){exports.DEBUG&&console.log(A.step,"RDTG[]"),A.round=_e},Qt,Qt,void 0,void 0,void 0,void 0,void 0,function(A){var e=A.stack.pop();exports.DEBUG&&console.log(A.step,"SCANCTRL[]",e)},bt.bind(void 0,0),bt.bind(void 0,1),function(A){var e=A.stack,t=e.pop(),i=0;exports.DEBUG&&console.log(A.step,"GETINFO[]",t),1&t&&(i=35),32&t&&(i|=4096),e.push(i)},void 0,function(A){var e=A.stack,t=e.pop(),i=e.pop(),n=e.pop();exports.DEBUG&&console.log(A.step,"ROLL[]"),e.push(i),e.push(t),e.push(n)},function(A){var e=A.stack,t=e.pop(),i=e.pop();exports.DEBUG&&console.log(A.step,"MAX[]",t,i),e.push(Math.max(i,t))},function(A){var e=A.stack,t=e.pop(),i=e.pop();exports.DEBUG&&console.log(A.step,"MIN[]",t,i),e.push(Math.min(i,t))},function(A){var e=A.stack.pop();exports.DEBUG&&console.log(A.step,"SCANTYPE[]",e)},function(A){var e=A.stack.pop(),t=A.stack.pop();switch(exports.DEBUG&&console.log(A.step,"INSTCTRL[]",e,t),e){case 1:return void(A.inhibitGridFit=!!t);case 2:return void(A.ignoreCvt=!!t);default:throw new Error("invalid INSTCTRL[] selector")}},void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,Dt.bind(void 0,1),Dt.bind(void 0,2),Dt.bind(void 0,3),Dt.bind(void 0,4),Dt.bind(void 0,5),Dt.bind(void 0,6),Dt.bind(void 0,7),Dt.bind(void 0,8),St.bind(void 0,1),St.bind(void 0,2),St.bind(void 0,3),St.bind(void 0,4),St.bind(void 0,5),St.bind(void 0,6),St.bind(void 0,7),St.bind(void 0,8),wt.bind(void 0,0,0,0,0,0),wt.bind(void 0,0,0,0,0,1),wt.bind(void 0,0,0,0,0,2),wt.bind(void 0,0,0,0,0,3),wt.bind(void 0,0,0,0,1,0),wt.bind(void 0,0,0,0,1,1),wt.bind(void 0,0,0,0,1,2),wt.bind(void 0,0,0,0,1,3),wt.bind(void 0,0,0,1,0,0),wt.bind(void 0,0,0,1,0,1),wt.bind(void 0,0,0,1,0,2),wt.bind(void 0,0,0,1,0,3),wt.bind(void 0,0,0,1,1,0),wt.bind(void 0,0,0,1,1,1),wt.bind(void 0,0,0,1,1,2),wt.bind(void 0,0,0,1,1,3),wt.bind(void 0,0,1,0,0,0),wt.bind(void 0,0,1,0,0,1),wt.bind(void 0,0,1,0,0,2),wt.bind(void 0,0,1,0,0,3),wt.bind(void 0,0,1,0,1,0),wt.bind(void 0,0,1,0,1,1),wt.bind(void 0,0,1,0,1,2),wt.bind(void 0,0,1,0,1,3),wt.bind(void 0,0,1,1,0,0),wt.bind(void 0,0,1,1,0,1),wt.bind(void 0,0,1,1,0,2),wt.bind(void 0,0,1,1,0,3),wt.bind(void 0,0,1,1,1,0),wt.bind(void 0,0,1,1,1,1),wt.bind(void 0,0,1,1,1,2),wt.bind(void 0,0,1,1,1,3),wt.bind(void 0,1,0,0,0,0),wt.bind(void 0,1,0,0,0,1),wt.bind(void 0,1,0,0,0,2),wt.bind(void 0,1,0,0,0,3),wt.bind(void 0,1,0,0,1,0),wt.bind(void 0,1,0,0,1,1),wt.bind(void 0,1,0,0,1,2),wt.bind(void 0,1,0,0,1,3),wt.bind(void 0,1,0,1,0,0),wt.bind(void 0,1,0,1,0,1),wt.bind(void 0,1,0,1,0,2),wt.bind(void 0,1,0,1,0,3),wt.bind(void 0,1,0,1,1,0),wt.bind(void 0,1,0,1,1,1),wt.bind(void 0,1,0,1,1,2),wt.bind(void 0,1,0,1,1,3),wt.bind(void 0,1,1,0,0,0),wt.bind(void 0,1,1,0,0,1),wt.bind(void 0,1,1,0,0,2),wt.bind(void 0,1,1,0,0,3),wt.bind(void 0,1,1,0,1,0),wt.bind(void 0,1,1,0,1,1),wt.bind(void 0,1,1,0,1,2),wt.bind(void 0,1,1,0,1,3),wt.bind(void 0,1,1,1,0,0),wt.bind(void 0,1,1,1,0,1),wt.bind(void 0,1,1,1,0,2),wt.bind(void 0,1,1,1,0,3),wt.bind(void 0,1,1,1,1,0),wt.bind(void 0,1,1,1,1,1),wt.bind(void 0,1,1,1,1,2),wt.bind(void 0,1,1,1,1,3)],vt.prototype.setState=function(A,e){return this.state[A]=e,this.activeState={key:A,value:this.state[A]},this.activeState},vt.prototype.getState=function(A){return this.state[A]||null},Mt.prototype.inboundIndex=function(A){return A>=0&&A<this.tokens.length},Mt.prototype.composeRUD=function(A){var e=this,t=A.map((function(A){return e[A[0]].apply(e,A.slice(1).concat(true))})),i=function(A){return"object"==typeof A&&A.hasOwnProperty("FAIL")};if(t.every(i))return{FAIL:"composeRUD: one or more operations hasn't completed successfully",report:t.filter(i)};this.dispatch("composeRUD",[t.filter((function(A){return!i(A)}))])},Mt.prototype.replaceRange=function(A,e,t,i){e=null!==e?e:this.tokens.length;var n=t.every((function(A){return A instanceof vt}));if(!isNaN(A)&&this.inboundIndex(A)&&n){var r=this.tokens.splice.apply(this.tokens,[A,e].concat(t));return i||this.dispatch("replaceToken",[A,e,t]),[r,t]}return{FAIL:"replaceRange: invalid tokens or startIndex."}},Mt.prototype.replaceToken=function(A,e,t){if(!isNaN(A)&&this.inboundIndex(A)&&e instanceof vt){var i=this.tokens.splice(A,1,e);return t||this.dispatch("replaceToken",[A,e]),[i[0],e]}return{FAIL:"replaceToken: invalid token or index."}},Mt.prototype.removeRange=function(A,e,t){e=isNaN(e)?this.tokens.length:e;var i=this.tokens.splice(A,e);return t||this.dispatch("removeRange",[i,A,e]),i},Mt.prototype.removeToken=function(A,e){if(!isNaN(A)&&this.inboundIndex(A)){var t=this.tokens.splice(A,1);return e||this.dispatch("removeToken",[t,A]),t}return{FAIL:"removeToken: invalid token index."}},Mt.prototype.insertToken=function(A,e,t){return A.every((function(A){return A instanceof vt}))?(this.tokens.splice.apply(this.tokens,[e,0].concat(A)),t||this.dispatch("insertToken",[A,e]),A):{FAIL:"insertToken: invalid token(s)."}},Mt.prototype.registerModifier=function(A,e,t){this.events.newToken.subscribe((function(i,n){var r=[i,n],s=[i,n];if(null===e||!0===e.apply(this,r)){var a=t.apply(this,s);i.setState(A,a)}})),this.registeredModifiers.push(A)},Ut.prototype.subscribe=function(A){return"function"==typeof A?this.subscribers.push(A)-1:{FAIL:"invalid '"+this.eventId+"' event handler"}},Ut.prototype.unsubscribe=function(A){this.subscribers.splice(A,1)},Nt.prototype.setCurrentIndex=function(A){this.index=A,this.current=this.context[A],this.backtrack=this.context.slice(0,A),this.lookahead=this.context.slice(A+1)},Nt.prototype.get=function(A){switch(!0){case 0===A:return this.current;case A<0&&Math.abs(A)<=this.backtrack.length:return this.backtrack.slice(A)[0];case A>0&&A<=this.lookahead.length:return this.lookahead[A-1];default:return null}},Mt.prototype.rangeToText=function(A){if(A instanceof kt)return this.getRangeTokens(A).map((function(A){return A.char})).join("")},Mt.prototype.getText=function(){return this.tokens.map((function(A){return A.char})).join("")},Mt.prototype.getContext=function(A){var e=this.registeredContexts[A];return e||null},Mt.prototype.on=function(A,e){var t=this.events[A];return t?t.subscribe(e):null},Mt.prototype.dispatch=function(A,e){var t=this,i=this.events[A];i instanceof Ut&&i.subscribers.forEach((function(A){A.apply(t,e||[])}))},Mt.prototype.registerContextChecker=function(A,e,t){if(this.getContext(A))return{FAIL:"context name '"+A+"' is already registered."};if("function"!=typeof e)return{FAIL:"missing context start check."};if("function"!=typeof t)return{FAIL:"missing context end check."};var i=new xt(A,e,t);return this.registeredContexts[A]=i,this.contextCheckers.push(i),i},Mt.prototype.getRangeTokens=function(A){var e=A.startIndex+A.endOffset;return[].concat(this.tokens.slice(A.startIndex,e))},Mt.prototype.getContextRanges=function(A){var e=this.getContext(A);return e?e.ranges:{FAIL:"context checker '"+A+"' is not registered."}},Mt.prototype.resetContextsRanges=function(){var A=this.registeredContexts;for(var e in A){if(A.hasOwnProperty(e))A[e].ranges=[]}},Mt.prototype.updateContextsRanges=function(){this.resetContextsRanges();for(var A=this.tokens.map((function(A){return A.char})),e=0;e<A.length;e++){var t=new Nt(A,e);this.runContextCheck(t)}this.dispatch("updateContextsRanges",[this.registeredContexts])},Mt.prototype.setEndOffset=function(A,e){var t=new kt(this.getContext(e).openRange.startIndex,A,e),i=this.getContext(e).ranges;return t.rangeId=e+"."+i.length,i.push(t),this.getContext(e).openRange=null,t},Mt.prototype.runContextCheck=function(A){var e=this,t=A.index;this.contextCheckers.forEach((function(i){var n=i.contextName,r=e.getContext(n).openRange;if(!r&&i.checkStart(A)&&(r=new kt(t,null,n),e.getContext(n).openRange=r,e.dispatch("contextStart",[n,t])),r&&i.checkEnd(A)){var s=t-r.startIndex+1,a=e.setEndOffset(s,n);e.dispatch("contextEnd",[n,a])}}))},Mt.prototype.tokenize=function(A){this.tokens=[],this.resetContextsRanges();var e=Array.from(A);this.dispatch("start");for(var t=0;t<e.length;t++){var i=e[t],n=new Nt(e,t);this.dispatch("next",[n]),this.runContextCheck(n);var r=new vt(i);this.tokens.push(r),this.dispatch("newToken",[r,n])}return this.dispatch("end",[this.tokens]),this.tokens},qt.prototype.getDefaultScriptFeaturesIndexes=function(){for(var A=this.font.tables.gsub.scripts,e=0;e<A.length;e++){var t=A[e];if("DFLT"===t.tag)return t.script.defaultLangSys.featureIndexes}return[]},qt.prototype.getScriptFeaturesIndexes=function(A){if(!this.font.tables.gsub)return[];if(!A)return this.getDefaultScriptFeaturesIndexes();for(var e=this.font.tables.gsub.scripts,t=0;t<e.length;t++){var i=e[t];if(i.tag===A&&i.script.defaultLangSys)return i.script.defaultLangSys.featureIndexes;var n=i.langSysRecords;if(n)for(var r=0;r<n.length;r++){var s=n[r];if(s.tag===A)return s.langSys.featureIndexes}}return this.getDefaultScriptFeaturesIndexes()},qt.prototype.mapTagsToFeatures=function(A,e){for(var t={},i=0;i<A.length;i++){var n=A[i].tag,r=A[i].feature;t[n]=r}this.features[e].tags=t},qt.prototype.getScriptFeatures=function(A){var e=this.features[A];if(this.features.hasOwnProperty(A))return e;var t=this.getScriptFeaturesIndexes(A);if(!t)return null;var i=this.font.tables.gsub;return e=t.map((function(A){return i.features[A]})),this.features[A]=e,this.mapTagsToFeatures(e,A),e},qt.prototype.getSubstitutionType=function(A,e){return A.lookupType.toString()+e.substFormat.toString()},qt.prototype.getLookupMethod=function(A,e){var t=this;switch(this.getSubstitutionType(A,e)){case"11":return function(A){return Kt.apply(t,[A,e])};case"12":return function(A){return Tt.apply(t,[A,e])};case"63":return function(A){return Yt.apply(t,[A,e])};case"41":return function(A){return Pt.apply(t,[A,e])};case"21":return function(A){return Vt.apply(t,[A,e])};default:throw new Error("lookupType: "+A.lookupType+" - substFormat: "+e.substFormat+" is not yet supported")}},qt.prototype.lookupFeature=function(A){var e=A.contextParams,t=e.index,i=this.getFeature({tag:A.tag,script:A.script});if(!i)return new Error("font '"+this.font.names.fullName.en+"' doesn't support feature '"+A.tag+"' for script '"+A.script+"'.");for(var n=this.getFeatureLookups(i),r=[].concat(e.context),s=0;s<n.length;s++)for(var a=n[s],o=this.getLookupSubtables(a),g=0;g<o.length;g++){var I=o[g],Q=this.getSubstitutionType(a,I),C=this.getLookupMethod(a,I),c=void 0;switch(Q){case"11":(c=C(e.current))&&r.splice(t,1,new Jt({id:11,tag:A.tag,substitution:c}));break;case"12":(c=C(e.current))&&r.splice(t,1,new Jt({id:12,tag:A.tag,substitution:c}));break;case"63":c=C(e),Array.isArray(c)&&c.length&&r.splice(t,1,new Jt({id:63,tag:A.tag,substitution:c}));break;case"41":(c=C(e))&&r.splice(t,1,new Jt({id:41,tag:A.tag,substitution:c}));break;case"21":(c=C(e.current))&&r.splice(t,1,new Jt({id:21,tag:A.tag,substitution:c}))}e=new Nt(r,t),Array.isArray(c)&&!c.length||(c=null)}return r.length?r:null},qt.prototype.supports=function(A){if(!A.script)return!1;this.getScriptFeatures(A.script);var e=this.features.hasOwnProperty(A.script);if(!A.tag)return e;var t=this.features[A.script].some((function(e){return e.tag===A.tag}));return e&&t},qt.prototype.getLookupSubtables=function(A){return A.subtables||null},qt.prototype.getLookupByIndex=function(A){return this.font.tables.gsub.lookups[A]||null},qt.prototype.getFeatureLookups=function(A){return A.lookupListIndexes.map(this.getLookupByIndex.bind(this))},qt.prototype.getFeature=function(A){if(!this.font)return{FAIL:"No font was found"};this.features.hasOwnProperty(A.script)||this.getScriptFeatures(A.script);var e=this.features[A.script];return e?e.tags[A.tag]?this.features[A.script].tags[A.tag]:null:{FAIL:"No feature for script "+A.script}};var _t={startCheck:function(A){var e=A.current,t=A.get(-1);return null===t&&Rt(e)||!Rt(t)&&Rt(e)},endCheck:function(A){var e=A.get(1);return null===e||!Rt(e)}};var Wt={startCheck:function(A){var e=A.current,t=A.get(-1);return(Rt(e)||Lt(e))&&!Rt(t)},endCheck:function(A){var e=A.get(1);switch(!0){case null===e:return!0;case!Rt(e)&&!Lt(e):var t=/\s/.test(e);if(!t)return!0;if(t){var i;if(i=A.lookahead.some((function(A){return Rt(A)||Lt(A)})),!i)return!0}break;default:return!1}}};var Xt={11:function(A,e,t){e[t].setState(A.tag,A.substitution)},12:function(A,e,t){e[t].setState(A.tag,A.substitution)},63:function(A,e,t){A.substitution.forEach((function(i,n){e[t+n].setState(A.tag,i)}))},41:function(A,e,t){var i=e[t];i.setState(A.tag,A.substitution.ligGlyph);for(var n=A.substitution.components.length,r=0;r<n;r++)(i=e[t+r+1]).setState("deleted",!0)}};function jt(A,e,t){A instanceof Jt&&Xt[A.id]&&Xt[A.id](A,e,t)}function Zt(A){var e=this,t="arab",i=this.featuresTags[t],n=this.tokenizer.getRangeTokens(A);if(1!==n.length){var r=new Nt(n.map((function(A){return A.getState("glyphIndex")})),0),s=new Nt(n.map((function(A){return A.char})),0);n.forEach((function(A,a){if(!Lt(A.char)){r.setCurrentIndex(a),s.setCurrentIndex(a);var o,g=0;switch(function(A){for(var e=[].concat(A.backtrack),t=e.length-1;t>=0;t--){var i=e[t],n=Ft(i),r=Lt(i);if(!n&&!r)return!0;if(n)return!1}return!1}(s)&&(g|=1),function(A){if(Ft(A.current))return!1;for(var e=0;e<A.lookahead.length;e++)if(!Lt(A.lookahead[e]))return!0;return!1}(s)&&(g|=2),g){case 1:o="fina";break;case 2:o="init";break;case 3:o="medi"}if(-1!==i.indexOf(o)){var I=e.query.lookupFeature({tag:o,script:t,contextParams:r});if(I instanceof Error)return console.info(I.message);I.forEach((function(A,e){A instanceof Jt&&(jt(A,n,e),r.context[e]=A.substitution)}))}}}))}}function $t(A,e){return new Nt(A.map((function(A){return A.activeState.value})),e||0)}function Ai(A){var e=this,t=this.tokenizer.getRangeTokens(A),i=$t(t);i.context.forEach((function(A,n){i.setCurrentIndex(n);var r=e.query.lookupFeature({tag:"rlig",script:"arab",contextParams:i});r.length&&(r.forEach((function(A){return jt(A,t,n)})),i=$t(t))}))}var ei={startCheck:function(A){var e=A.current,t=A.get(-1);return null===t&&zt(e)||!zt(t)&&zt(e)},endCheck:function(A){var e=A.get(1);return null===e||!zt(e)}};function ti(A,e){return new Nt(A.map((function(A){return A.activeState.value})),e||0)}function ii(A){var e=this,t=this.tokenizer.getRangeTokens(A),i=ti(t);i.context.forEach((function(A,n){i.setCurrentIndex(n);var r=e.query.lookupFeature({tag:"liga",script:"latn",contextParams:i});r.length&&(r.forEach((function(A){return jt(A,t,n)})),i=ti(t))}))}function ni(A){this.baseDir=A||"ltr",this.tokenizer=new Mt,this.featuresTags={}}function ri(A){var e=this.contextChecks[A+"Check"];return this.tokenizer.registerContextChecker(A,e.startCheck,e.endCheck)}function si(){return ri.call(this,"latinWord"),ri.call(this,"arabicWord"),ri.call(this,"arabicSentence"),this.tokenizer.tokenize(this.text)}function ai(){var A=this;this.tokenizer.getContextRanges("arabicSentence").forEach((function(e){var t=A.tokenizer.getRangeTokens(e);A.tokenizer.replaceRange(e.startIndex,e.endOffset,t.reverse())}))}function oi(){if(-1===this.tokenizer.registeredModifiers.indexOf("glyphIndex"))throw new Error("glyphIndex modifier is required to apply arabic presentation features.")}function gi(){var A=this;this.featuresTags.hasOwnProperty("arab")&&(oi.call(this),this.tokenizer.getContextRanges("arabicWord").forEach((function(e){Zt.call(A,e)})))}function Ii(){var A=this,e="arab";this.featuresTags.hasOwnProperty(e)&&(-1!==this.featuresTags[e].indexOf("rlig")&&(oi.call(this),this.tokenizer.getContextRanges("arabicWord").forEach((function(e){Ai.call(A,e)}))))}function Qi(){var A=this,e="latn";this.featuresTags.hasOwnProperty(e)&&(-1!==this.featuresTags[e].indexOf("liga")&&(oi.call(this),this.tokenizer.getContextRanges("latinWord").forEach((function(e){ii.call(A,e)}))))}function Ci(A){(A=A||{}).tables=A.tables||{},A.empty||(Ne(A.familyName,"When creating a new Font object, familyName is required."),Ne(A.styleName,"When creating a new Font object, styleName is required."),Ne(A.unitsPerEm,"When creating a new Font object, unitsPerEm is required."),Ne(A.ascender,"When creating a new Font object, ascender is required."),Ne(A.descender<=0,"When creating a new Font object, negative descender value is required."),this.names={fontFamily:{en:A.familyName||" "},fontSubfamily:{en:A.styleName||" "},fullName:{en:A.fullName||A.familyName+" "+A.styleName},postScriptName:{en:A.postScriptName||(A.familyName+A.styleName).replace(/\s/g,"")},designer:{en:A.designer||" "},designerURL:{en:A.designerURL||" "},manufacturer:{en:A.manufacturer||" "},manufacturerURL:{en:A.manufacturerURL||" "},license:{en:A.license||" "},licenseURL:{en:A.licenseURL||" "},version:{en:A.version||"Version 0.1"},description:{en:A.description||" "},copyright:{en:A.copyright||" "},trademark:{en:A.trademark||" "}},this.unitsPerEm=A.unitsPerEm||1e3,this.ascender=A.ascender,this.descender=A.descender,this.createdTimestamp=A.createdTimestamp,this.tables=Object.assign(A.tables,{os2:Object.assign({usWeightClass:A.weightClass||this.usWeightClasses.MEDIUM,usWidthClass:A.widthClass||this.usWidthClasses.MEDIUM,fsSelection:A.fsSelection||this.fsSelectionValues.REGULAR},A.tables.os2)})),this.supported=!0,this.glyphs=new mA.GlyphSet(this,A.glyphs||[]),this.encoding=new BA(this),this.position=new Se(this),this.substitution=new we(this),this.tables=this.tables||{},this._push=null,this._hmtxTableData={},Object.defineProperty(this,"hinting",{get:function(){return this._hinting?this._hinting:"truetype"===this.outlinesFormat?this._hinting=new Ke(this):void 0}})}function ci(A,e){var t=JSON.stringify(A),i=256;for(var n in e){var r=parseInt(n);if(r&&!(r<256)){if(JSON.stringify(e[n])===t)return r;i<=r&&(i=r+1)}}return e[i]=A,i}function Bi(A,e,t){var i=ci(e.name,t);return[{name:"tag_"+A,type:"TAG",value:e.tag},{name:"minValue_"+A,type:"FIXED",value:e.minValue<<16},{name:"defaultValue_"+A,type:"FIXED",value:e.defaultValue<<16},{name:"maxValue_"+A,type:"FIXED",value:e.maxValue<<16},{name:"flags_"+A,type:"USHORT",value:0},{name:"nameID_"+A,type:"USHORT",value:i}]}function li(A,e,t){var i={},n=new aA.Parser(A,e);return i.tag=n.parseTag(),i.minValue=n.parseFixed(),i.defaultValue=n.parseFixed(),i.maxValue=n.parseFixed(),n.skip("uShort",1),i.name=t[n.parseUShort()]||{},i}function ui(A,e,t,i){for(var n=[{name:"nameID_"+A,type:"USHORT",value:ci(e.name,i)},{name:"flags_"+A,type:"USHORT",value:0}],r=0;r<t.length;++r){var s=t[r].tag;n.push({name:"axis_"+A+" "+s,type:"FIXED",value:e.coordinates[s]<<16})}return n}function Ei(A,e,t,i){var n={},r=new aA.Parser(A,e);n.name=i[r.parseUShort()]||{},r.skip("uShort",1),n.coordinates={};for(var s=0;s<t.length;++s)n.coordinates[t[s].tag]=r.parseFixed();return n}ni.prototype.setText=function(A){this.text=A},ni.prototype.contextChecks={latinWordCheck:ei,arabicWordCheck:_t,arabicSentenceCheck:Wt},ni.prototype.registerFeatures=function(A,e){var t=this,i=e.filter((function(e){return t.query.supports({script:A,tag:e})}));this.featuresTags.hasOwnProperty(A)?this.featuresTags[A]=this.featuresTags[A].concat(i):this.featuresTags[A]=i},ni.prototype.applyFeatures=function(A,e){if(!A)throw new Error("No valid font was provided to apply features");this.query||(this.query=new qt(A));for(var t=0;t<e.length;t++){var i=e[t];this.query.supports({script:i.script})&&this.registerFeatures(i.script,i.tags)}},ni.prototype.registerModifier=function(A,e,t){this.tokenizer.registerModifier(A,e,t)},ni.prototype.checkContextReady=function(A){return!!this.tokenizer.getContext(A)},ni.prototype.applyFeaturesToContexts=function(){this.checkContextReady("arabicWord")&&(gi.call(this),Ii.call(this)),this.checkContextReady("latinWord")&&Qi.call(this),this.checkContextReady("arabicSentence")&&ai.call(this)},ni.prototype.processText=function(A){this.text&&this.text===A||(this.setText(A),si.call(this),this.applyFeaturesToContexts())},ni.prototype.getBidiText=function(A){return this.processText(A),this.tokenizer.getText()},ni.prototype.getTextGlyphs=function(A){this.processText(A);for(var e=[],t=0;t<this.tokenizer.tokens.length;t++){var i=this.tokenizer.tokens[t];if(!i.state.deleted){var n=i.activeState.value;e.push(Array.isArray(n)?n[0]:n)}}return e},Ci.prototype.hasChar=function(A){return null!==this.encoding.charToGlyphIndex(A)},Ci.prototype.charToGlyphIndex=function(A){return this.encoding.charToGlyphIndex(A)},Ci.prototype.charToGlyph=function(A){var e=this.charToGlyphIndex(A),t=this.glyphs.get(e);return t||(t=this.glyphs.get(0)),t},Ci.prototype.updateFeatures=function(A){return this.defaultRenderOptions.features.map((function(e){return"latn"===e.script?{script:"latn",tags:e.tags.filter((function(e){return A[e]}))}:e}))},Ci.prototype.stringToGlyphs=function(A,e){var t=this,i=new ni;i.registerModifier("glyphIndex",null,(function(A){return t.charToGlyphIndex(A.char)}));var n=e?this.updateFeatures(e.features):this.defaultRenderOptions.features;i.applyFeatures(this,n);for(var r=i.getTextGlyphs(A),s=r.length,a=new Array(s),o=this.glyphs.get(0),g=0;g<s;g+=1)a[g]=this.glyphs.get(r[g])||o;return a},Ci.prototype.nameToGlyphIndex=function(A){return this.glyphNames.nameToGlyphIndex(A)},Ci.prototype.nameToGlyph=function(A){var e=this.nameToGlyphIndex(A),t=this.glyphs.get(e);return t||(t=this.glyphs.get(0)),t},Ci.prototype.glyphIndexToName=function(A){return this.glyphNames.glyphIndexToName?this.glyphNames.glyphIndexToName(A):""},Ci.prototype.getKerningValue=function(A,e){A=A.index||A,e=e.index||e;var t=this.position.defaultKerningTables;return t?this.position.getKerningValue(t,A,e):this.kerningPairs[A+","+e]||0},Ci.prototype.defaultRenderOptions={kerning:!0,features:[{script:"arab",tags:["init","medi","fina","rlig"]},{script:"latn",tags:["liga","rlig"]}]},Ci.prototype.forEachGlyph=function(A,e,t,i,n,r){e=void 0!==e?e:0,t=void 0!==t?t:0,i=void 0!==i?i:72,n=Object.assign({},this.defaultRenderOptions,n);var s,a=1/this.unitsPerEm*i,o=this.stringToGlyphs(A,n);if(n.kerning){var g=n.script||this.position.getDefaultScriptName();s=this.position.getKerningTables(g,n.language)}for(var I=0;I<o.length;I+=1){var Q=o[I];if(r.call(this,Q,e,t,i,n),Q.advanceWidth&&(e+=Q.advanceWidth*a),n.kerning&&I<o.length-1)e+=(s?this.position.getKerningValue(s,Q.index,o[I+1].index):this.getKerningValue(Q,o[I+1]))*a;n.letterSpacing?e+=n.letterSpacing*i:n.tracking&&(e+=n.tracking/1e3*i)}return e},Ci.prototype.getPath=function(A,e,t,i,n){var r=new v;return this.forEachGlyph(A,e,t,i,n,(function(A,e,t,i){var s=A.getPath(e,t,i,n,this);r.extend(s)})),r},Ci.prototype.getPaths=function(A,e,t,i,n){var r=[];return this.forEachGlyph(A,e,t,i,n,(function(A,e,t,i){var s=A.getPath(e,t,i,n,this);r.push(s)})),r},Ci.prototype.getAdvanceWidth=function(A,e,t){return this.forEachGlyph(A,0,0,e,t,(function(){}))},Ci.prototype.draw=function(A,e,t,i,n,r){this.getPath(e,t,i,n,r).draw(A)},Ci.prototype.drawPoints=function(A,e,t,i,n,r){this.forEachGlyph(e,t,i,n,r,(function(e,t,i,n){e.drawPoints(A,t,i,n)}))},Ci.prototype.drawMetrics=function(A,e,t,i,n,r){this.forEachGlyph(e,t,i,n,r,(function(e,t,i,n){e.drawMetrics(A,t,i,n)}))},Ci.prototype.getEnglishName=function(A){var e=this.names[A];if(e)return e.en},Ci.prototype.validate=function(){var A=this;function e(e){var t=A.getEnglishName(e);t&&t.trim().length}e("fontFamily"),e("weightName"),e("manufacturer"),e("copyright"),e("version"),this.unitsPerEm},Ci.prototype.toTables=function(){return ye.fontToTable(this)},Ci.prototype.toBuffer=function(){return console.warn("Font.toBuffer is deprecated. Use Font.toArrayBuffer instead."),this.toArrayBuffer()},Ci.prototype.toArrayBuffer=function(){for(var A=this.toTables().encode(),e=new ArrayBuffer(A.length),t=new Uint8Array(e),i=0;i<A.length;i++)t[i]=A[i];return e},Ci.prototype.download=function(A){var e=this.getEnglishName("fontFamily"),i=this.getEnglishName("fontSubfamily");A=A||e.replace(/\s/g,"")+"-"+i+".otf";var n=this.toArrayBuffer();if("undefined"!=typeof window)if(window.URL=window.URL||window.webkitURL,window.URL){var r=new DataView(n),s=new Blob([r],{type:"font/opentype"}),a=document.createElement("a");a.href=window.URL.createObjectURL(s),a.download=A;var o=document.createEvent("MouseEvents");o.initEvent("click",!0,!1),a.dispatchEvent(o)}else console.warn("Font file could not be downloaded. Try using a different browser.");else{var g=t(7256),I=function(A){for(var e=new Buffer(A.byteLength),t=new Uint8Array(A),i=0;i<e.length;++i)e[i]=t[i];return e}(n);g.writeFileSync(A,I)}},Ci.prototype.fsSelectionValues={ITALIC:1,UNDERSCORE:2,NEGATIVE:4,OUTLINED:8,STRIKEOUT:16,BOLD:32,REGULAR:64,USER_TYPO_METRICS:128,WWS:256,OBLIQUE:512},Ci.prototype.usWidthClasses={ULTRA_CONDENSED:1,EXTRA_CONDENSED:2,CONDENSED:3,SEMI_CONDENSED:4,MEDIUM:5,SEMI_EXPANDED:6,EXPANDED:7,EXTRA_EXPANDED:8,ULTRA_EXPANDED:9},Ci.prototype.usWeightClasses={THIN:100,EXTRA_LIGHT:200,LIGHT:300,NORMAL:400,MEDIUM:500,SEMI_BOLD:600,BOLD:700,EXTRA_BOLD:800,BLACK:900};var fi={make:function(A,e){var t=new $.Table("fvar",[{name:"version",type:"ULONG",value:65536},{name:"offsetToData",type:"USHORT",value:0},{name:"countSizePairs",type:"USHORT",value:2},{name:"axisCount",type:"USHORT",value:A.axes.length},{name:"axisSize",type:"USHORT",value:20},{name:"instanceCount",type:"USHORT",value:A.instances.length},{name:"instanceSize",type:"USHORT",value:4+4*A.axes.length}]);t.offsetToData=t.sizeOf();for(var i=0;i<A.axes.length;i++)t.fields=t.fields.concat(Bi(i,A.axes[i],e));for(var n=0;n<A.instances.length;n++)t.fields=t.fields.concat(ui(n,A.instances[n],A.axes,e));return t},parse:function(A,e,t){var i=new aA.Parser(A,e),n=i.parseULong();N.argument(65536===n,"Unsupported fvar table version.");var r=i.parseOffset16();i.skip("uShort",1);for(var s=i.parseUShort(),a=i.parseUShort(),o=i.parseUShort(),g=i.parseUShort(),I=[],Q=0;Q<s;Q++)I.push(li(A,e+r+Q*a,t));for(var C=[],c=e+r+s*a,B=0;B<o;B++)C.push(Ei(A,c+B*g,I,t));return{axes:I,instances:C}}},hi=function(){return{coverage:this.parsePointer(rA.coverage),attachPoints:this.parseList(rA.pointer(rA.uShortList))}},pi=function(){var A=this.parseUShort();return N.argument(1===A||2===A||3===A,"Unsupported CaretValue table version."),1===A?{coordinate:this.parseShort()}:2===A?{pointindex:this.parseShort()}:3===A?{coordinate:this.parseShort()}:void 0},yi=function(){return this.parseList(rA.pointer(pi))},di=function(){return{coverage:this.parsePointer(rA.coverage),ligGlyphs:this.parseList(rA.pointer(yi))}},mi=function(){return this.parseUShort(),this.parseList(rA.pointer(rA.coverage))};var bi={parse:function(A,e){var t=new rA(A,e=e||0),i=t.parseVersion(1);N.argument(1===i||1.2===i||1.3===i,"Unsupported GDEF table version.");var n={version:i,classDef:t.parsePointer(rA.classDef),attachList:t.parsePointer(hi),ligCaretList:t.parsePointer(di),markAttachClassDef:t.parsePointer(rA.classDef)};return i>=1.2&&(n.markGlyphSets=t.parsePointer(mi)),n}},Di=new Array(10);Di[1]=function(){var A=this.offset+this.relativeOffset,e=this.parseUShort();return 1===e?{posFormat:1,coverage:this.parsePointer(rA.coverage),value:this.parseValueRecord()}:2===e?{posFormat:2,coverage:this.parsePointer(rA.coverage),values:this.parseValueRecordList()}:void N.assert(!1,"0x"+A.toString(16)+": GPOS lookup type 1 format must be 1 or 2.")},Di[2]=function(){var A=this.offset+this.relativeOffset,e=this.parseUShort();N.assert(1===e||2===e,"0x"+A.toString(16)+": GPOS lookup type 2 format must be 1 or 2.");var t=this.parsePointer(rA.coverage),i=this.parseUShort(),n=this.parseUShort();if(1===e)return{posFormat:e,coverage:t,valueFormat1:i,valueFormat2:n,pairSets:this.parseList(rA.pointer(rA.list((function(){return{secondGlyph:this.parseUShort(),value1:this.parseValueRecord(i),value2:this.parseValueRecord(n)}}))))};if(2===e){var r=this.parsePointer(rA.classDef),s=this.parsePointer(rA.classDef),a=this.parseUShort(),o=this.parseUShort();return{posFormat:e,coverage:t,valueFormat1:i,valueFormat2:n,classDef1:r,classDef2:s,class1Count:a,class2Count:o,classRecords:this.parseList(a,rA.list(o,(function(){return{value1:this.parseValueRecord(i),value2:this.parseValueRecord(n)}})))}}},Di[3]=function(){return{error:"GPOS Lookup 3 not supported"}},Di[4]=function(){return{error:"GPOS Lookup 4 not supported"}},Di[5]=function(){return{error:"GPOS Lookup 5 not supported"}},Di[6]=function(){return{error:"GPOS Lookup 6 not supported"}},Di[7]=function(){return{error:"GPOS Lookup 7 not supported"}},Di[8]=function(){return{error:"GPOS Lookup 8 not supported"}},Di[9]=function(){return{error:"GPOS Lookup 9 not supported"}};var Si=new Array(10);var wi={parse:function(A,e){var t=new rA(A,e=e||0),i=t.parseVersion(1);return N.argument(1===i||1.1===i,"Unsupported GPOS table version "+i),1===i?{version:i,scripts:t.parseScriptList(),features:t.parseFeatureList(),lookups:t.parseLookupList(Di)}:{version:i,scripts:t.parseScriptList(),features:t.parseFeatureList(),lookups:t.parseLookupList(Di),variations:t.parseFeatureVariationsList()}},make:function(A){return new $.Table("GPOS",[{name:"version",type:"ULONG",value:65536},{name:"scripts",type:"TABLE",value:new $.ScriptList(A.scripts)},{name:"features",type:"TABLE",value:new $.FeatureList(A.features)},{name:"lookups",type:"TABLE",value:new $.LookupList(A.lookups,Si)}])}};var vi={parse:function(A,e){var t=new aA.Parser(A,e),i=t.parseUShort();if(0===i)return function(A){var e={};A.skip("uShort");var t=A.parseUShort();N.argument(0===t,"Unsupported kern sub-table version."),A.skip("uShort",2);var i=A.parseUShort();A.skip("uShort",3);for(var n=0;n<i;n+=1){var r=A.parseUShort(),s=A.parseUShort(),a=A.parseShort();e[r+","+s]=a}return e}(t);if(1===i)return function(A){var e={};A.skip("uShort"),A.parseULong()>1&&console.warn("Only the first kern subtable is supported."),A.skip("uLong");var t=255&A.parseUShort();if(A.skip("uShort"),0===t){var i=A.parseUShort();A.skip("uShort",3);for(var n=0;n<i;n+=1){var r=A.parseUShort(),s=A.parseUShort(),a=A.parseShort();e[r+","+s]=a}}return e}(t);throw new Error("Unsupported kern table version ("+i+").")}};var ki={parse:function(A,e,t,i){for(var n=new aA.Parser(A,e),r=i?n.parseUShort:n.parseULong,s=[],a=0;a<t+1;a+=1){var o=r.call(n);i&&(o*=2),s.push(o)}return s}};function xi(A,e){t(7256).readFile(A,(function(A,t){if(A)return e(A.message);e(null,xe(t))}))}function Ni(A,e){var t=new XMLHttpRequest;t.open("get",A,!0),t.responseType="arraybuffer",t.onload=function(){return t.response?e(null,t.response):e("Font could not be loaded: "+t.statusText)},t.onerror=function(){e("Font could not be loaded")},t.send()}function Ui(A,e){for(var t=[],i=12,n=0;n<e;n+=1){var r=aA.getTag(A,i),s=aA.getULong(A,i+4),a=aA.getULong(A,i+8),o=aA.getULong(A,i+12);t.push({tag:r,checksum:s,offset:a,length:o,compression:!1}),i+=16}return t}function Gi(A,e){if("WOFF"===e.compression){var t=new Uint8Array(A.buffer,e.offset+2,e.compressedLength-2),i=new Uint8Array(e.length);if(D(t,i),i.byteLength!==e.length)throw new Error("Decompression error: "+e.tag+" decompressed length doesn't match recorded length");return{data:new DataView(i.buffer,0),offset:0}}return{data:A,offset:e.offset}}function Mi(A,e){var t,i;e=null==e?{}:e;var n,r,s,a,o,g,I,Q,C,c,B,l,u,E=new Ci({empty:!0}),f=new DataView(A,0),h=[],p=aA.getTag(f,0);if(p===String.fromCharCode(0,1,0,0)||"true"===p||"typ1"===p)E.outlinesFormat="truetype",h=Ui(f,n=aA.getUShort(f,4));else if("OTTO"===p)E.outlinesFormat="cff",h=Ui(f,n=aA.getUShort(f,4));else{if("wOFF"!==p)throw new Error("Unsupported OpenType signature "+p);var y=aA.getTag(f,4);if(y===String.fromCharCode(0,1,0,0))E.outlinesFormat="truetype";else{if("OTTO"!==y)throw new Error("Unsupported OpenType flavor "+p);E.outlinesFormat="cff"}h=function(A,e){for(var t=[],i=44,n=0;n<e;n+=1){var r=aA.getTag(A,i),s=aA.getULong(A,i+4),a=aA.getULong(A,i+8),o=aA.getULong(A,i+12),g=void 0;g=a<o&&"WOFF",t.push({tag:r,offset:s,compression:g,compressedLength:a,length:o}),i+=20}return t}(f,n=aA.getUShort(f,12))}for(var d=0;d<n;d+=1){var m=h[d],b=void 0;switch(m.tag){case"cmap":b=Gi(f,m),E.tables.cmap=gA.parse(b.data,b.offset),E.encoding=new lA(E.tables.cmap);break;case"cvt ":b=Gi(f,m),u=new aA.Parser(b.data,b.offset),E.tables.cvt=u.parseShortList(m.length/2);break;case"fvar":s=m;break;case"fpgm":b=Gi(f,m),u=new aA.Parser(b.data,b.offset),E.tables.fpgm=u.parseByteList(m.length);break;case"head":b=Gi(f,m),E.tables.head=TA.parse(b.data,b.offset),E.unitsPerEm=E.tables.head.unitsPerEm,t=E.tables.head.indexToLocFormat;break;case"hhea":b=Gi(f,m),E.tables.hhea=HA.parse(b.data,b.offset),E.ascender=E.tables.hhea.ascender,E.descender=E.tables.hhea.descender,E.numberOfHMetrics=E.tables.hhea.numberOfHMetrics;break;case"hmtx":Q=m;break;case"ltag":b=Gi(f,m),i=PA.parse(b.data,b.offset);break;case"maxp":b=Gi(f,m),E.tables.maxp=VA.parse(b.data,b.offset),E.numGlyphs=E.tables.maxp.numGlyphs;break;case"name":B=m;break;case"OS/2":b=Gi(f,m),E.tables.os2=oe.parse(b.data,b.offset);break;case"post":b=Gi(f,m),E.tables.post=ge.parse(b.data,b.offset),E.glyphNames=new EA(E.tables.post);break;case"prep":b=Gi(f,m),u=new aA.Parser(b.data,b.offset),E.tables.prep=u.parseByteList(m.length);break;case"glyf":a=m;break;case"loca":c=m;break;case"CFF ":r=m;break;case"kern":C=m;break;case"GDEF":o=m;break;case"GPOS":g=m;break;case"GSUB":I=m;break;case"meta":l=m}}var D=Gi(f,B);if(E.tables.name=se.parse(D.data,D.offset,i),E.names=E.tables.name,a&&c){var S=0===t,w=Gi(f,c),v=ki.parse(w.data,w.offset,E.numGlyphs,S),k=Gi(f,a);E.glyphs=Oe.parse(k.data,k.offset,v,E,e)}else{if(!r)throw new Error("Font doesn't contain TrueType or CFF outlines.");var x=Gi(f,r);KA.parse(x.data,x.offset,E,e)}var N=Gi(f,Q);if(YA.parse(E,N.data,N.offset,E.numberOfHMetrics,E.numGlyphs,E.glyphs,e),fA(E,e),C){var U=Gi(f,C);E.kerningPairs=vi.parse(U.data,U.offset)}else E.kerningPairs={};if(o){var G=Gi(f,o);E.tables.gdef=bi.parse(G.data,G.offset)}if(g){var M=Gi(f,g);E.tables.gpos=wi.parse(M.data,M.offset),E.position.init()}if(I){var R=Gi(f,I);E.tables.gsub=ce.parse(R.data,R.offset)}if(s){var F=Gi(f,s);E.tables.fvar=fi.parse(F.data,F.offset,E.names)}if(l){var L=Gi(f,l);E.tables.meta=Be.parse(L.data,L.offset),E.metas=E.tables.meta}return E}const Ri=Object.freeze({__proto__:null,Font:Ci,Glyph:pA,Path:v,BoundingBox:w,_parse:aA,parse:Mi,load:function(A,e,t){t=null==t?{}:t;var i="undefined"==typeof window&&!t.isUrl?xi:Ni;return new Promise((function(n,r){i(A,(function(A,i){if(A){if(e)return e(A);r(A)}var s;try{s=Mi(i,t)}catch(A){if(e)return e(A,null);r(A)}if(e)return e(null,s);n(s)}))}))},loadSync:function(A,e){return Mi(xe(t(7256).readFileSync(A)),e)}})},4637:(A,e,t)=>{t.d(e,{q:()=>s});var i=/[a-zA-Z0-9:_-]/,n=/[\s\t\r\n]/,r=/['"]/;function s(A){var e="",t=[],s=I,a=null,o=null;function g(e){var t=function(A,e,t){if("number"==typeof t)throw new Error("locate takes a { startIndex, offsetLine, offsetColumn } object as the third argument");return function(A,e){void 0===e&&(e={});var t=e.offsetLine||0,i=e.offsetColumn||0,n=A.split("\n"),r=0,s=n.map((function(A,e){var t=r+A.length+1,i={start:r,end:t,line:e};return r=t,i})),a=0;function o(A,e){return A.start<=e&&e<A.end}function g(A,e){return{line:t+A.line,column:i+e-A.start,character:e}}return function(e,t){"string"==typeof e&&(e=A.indexOf(e,t||0));for(var i=s[a],n=e>=i.end?1:-1;i;){if(o(i,e))return g(i,e);i=s[a+=n]}}}(A,t)(e,t&&t.startIndex)}(A,h),i=t.line,n=t.column,r=A.slice(0,h),s=/(^|\n).*$/.exec(r)[0].replace(/\t/g," "),a=A.slice(h),o=""+s+/.*(\n|$)/.exec(a)[0]+"\n"+function(A,e){for(var t="";e--;)t+=A;return t}(" ",s.length)+"^";throw new Error(e+" ("+i+":"+n+"). If this is valid SVG, it's probably a bug in svg-parser. Please raise an issue at https://github.com/Rich-Harris/svg-parser/issues – thanks!\n\n"+o)}function I(){for(;h<A.length&&"<"!==A[h]||!i.test(A[h+1]);)e+=A[h++];return Q()}function Q(){for(var e="";h<A.length&&"<"!==A[h];)e+=A[h++];return/\S/.test(e)&&a.children.push({type:"text",value:e}),"<"===A[h]?C:Q}function C(){var e=A[h];if("?"===e)return Q;if("!"===e){if("--"===A.slice(h+1,h+3))return c;if("[CDATA["===A.slice(h+1,h+8))return B;if(/doctype/i.test(A.slice(h+1,h+8)))return Q}if("/"===e)return l;var i,n={type:"element",tagName:u(),properties:{},children:[]};for(a?a.children.push(n):o=n;h<A.length&&(i=E());)n.properties[i.name]=i.value;var r=!1;return"/"===A[h]&&(h+=1,r=!0),">"!==A[h]&&g("Expected >"),r||(a=n,t.push(n)),Q}function c(){var e=A.indexOf("--\x3e",h);return~e||g("expected --\x3e"),h=e+2,Q}function B(){var e=A.indexOf("]]>",h);return~e||g("expected ]]>"),a.children.push(A.slice(h+7,e)),h=e+2,Q}function l(){var e=u();return e||g("Expected tag name"),e!==a.tagName&&g("Expected closing tag </"+e+"> to match opening tag <"+a.tagName+">"),f(),">"!==A[h]&&g("Expected >"),t.pop(),a=t[t.length-1],Q}function u(){for(var e="";h<A.length&&i.test(A[h]);)e+=A[h++];return e}function E(){if(!n.test(A[h]))return null;f();var e=u();if(!e)return null;var t=!0;return f(),"="===A[h]&&(h+=1,f(),t=r.test(A[h])?function(){for(var e=A[h++],t="",i=!1;h<A.length;){var n=A[h++];if(n===e&&!i)return t;"\\"!==n||i||(i=!0),t+=i?"\\"+n:n,i=!1}}():function(){var e="";do{var t=A[h];if(" "===t||">"===t||"/"===t)return e;e+=t,h+=1}while(h<A.length);return e}(),isNaN(t)||""===t.trim()||(t=+t)),{name:e,value:t}}function f(){for(;h<A.length&&n.test(A[h]);)h+=1}for(var h=I.length;h<A.length;)s||g("Unexpected character"),s=s(),h+=1;return s!==Q&&g("Unexpected end of input"),"svg"===o.tagName&&(o.metadata=e),{type:"root",children:[o]}}},214:(A,e,t)=>{function i(A,e,t,i){A.width=Math.max(1,Math.min(e,i.limits.maxTextureDimension2D)),A.height=Math.max(1,Math.min(t,i.limits.maxTextureDimension2D))}function n(A,e,t){const n=new ResizeObserver((A=>{var n,r,s,a;for(const o of A){i(o.target,null!==(r=null===(n=o.devicePixelContentBoxSize)||void 0===n?void 0:n[0].inlineSize)&&void 0!==r?r:o.contentBoxSize[0].inlineSize*devicePixelRatio,null!==(a=null===(s=o.devicePixelContentBoxSize)||void 0===s?void 0:s[0].blockSize)&&void 0!==a?a:o.contentBoxSize[0].blockSize*devicePixelRatio,e),t()}}));try{n.observe(A,{box:"device-pixel-content-box"})}catch(e){n.observe(A,{box:"content-box"})}i(A,A.clientWidth,A.clientHeight,e)}t.d(e,{A:()=>n})},7608:(A,e,t)=>{t.a(A,(async(A,i)=>{try{t.d(e,{A:()=>g});var n=t(1317),r=t(4109),s=t(9146),a=A([n,r,s]);[n,r,s]=a.then?(await a)():a;var o=function(A,e,t,i){return new(t||(t=Promise))((function(n,r){function s(A){try{o(i.next(A))}catch(A){r(A)}}function a(A){try{o(i.throw(A))}catch(A){r(A)}}function o(A){var e;A.done?n(A.value):(e=A.value,e instanceof t?e:new t((function(A){A(e)}))).then(s,a)}o((i=i.apply(A,e||[])).next())}))};function g(A,e,t,i,a,g,I,Q){return o(this,void 0,void 0,(function*(){const o=document.createElement("canvas");o.width=400,o.height=400;const C=o.getContext("webgpu");C.configure({device:A,format:e});const c=Object.assign({},r.UI);(0,n.A)(i,a,"fill",o),s.Ay.updateRenderScale(g);I(C,(()=>{Q(o),C.unconfigure(),r.UI.x=c.x,r.UI.y=c.y,r.UI.zoom=c.zoom,s.Ay.updateRenderScale(t.width/(t.clientWidth*r.UI.zoom))}))}))}i()}catch(I){i(I)}}))},1911:(A,e,t)=>{t.d(e,{A:()=>n});var i=function(A,e,t,i){return new(t||(t=Promise))((function(n,r){function s(A){try{o(i.next(A))}catch(A){r(A)}}function a(A){try{o(i.throw(A))}catch(A){r(A)}}function o(A){var e;A.done?n(A.value):(e=A.value,e instanceof t?e:new t((function(A){A(e)}))).then(s,a)}o((i=i.apply(A,e||[])).next())}))};function n(){return i(this,void 0,void 0,(function*(){if(!navigator.gpu)throw Error("this browser does not support WebGPU");const A=yield navigator.gpu.requestAdapter();if(!A)throw Error("this browser supports webgpu but it appears disabled");const e=A.features.has("bgra8unorm-storage"),t=yield A.requestDevice({requiredFeatures:e?["bgra8unorm-storage"]:[],label:"id: "+Date.now()});t.lost.then((A=>{console.error(`WebGPU device was lost: ${A.message}`),A.reason}));return{device:t,presentationFormat:navigator.gpu.getPreferredCanvasFormat(),storageFormat:e?navigator.gpu.getPreferredCanvasFormat():"rgba8unorm"}}))}},1549:(A,e,t)=>{t.d(e,{Be:()=>n});const i=(...A)=>{const e=Math.max(...A);return 1+Math.log2(e)|0};function n(A,e,t,n={}){const r=A.createTexture({label:"createTextureFromSource",format:e,mipLevelCount:n.mips?i(t.width,t.height):1,size:[t.width,t.height],usage:GPUTextureUsage.TEXTURE_BINDING|GPUTextureUsage.COPY_DST|GPUTextureUsage.RENDER_ATTACHMENT});return function(A,e,t,{flipY:i,depthOrArrayLayers:n}={}){A.queue.copyExternalImageToTexture({source:t,flipY:i},{texture:e},{width:t.width,height:t.height,depthOrArrayLayers:n})}(A,r,t,n),r}},2872:(A,e,t)=>{t.a(A,(async(A,i)=>{try{t.d(e,{A:()=>Q});var n=t(2842),r=t(4109),s=t(9146),a=A([r,s]);[r,s]=a.then?(await a)():a;var o=function(A,e,t,i){return new(t||(t=Promise))((function(n,r){function s(A){try{o(i.next(A))}catch(A){r(A)}}function a(A){try{o(i.throw(A))}catch(A){r(A)}}function o(A){var e;A.done?n(A.value):(e=A.value,e instanceof t?e:new t((function(A){A(e)}))).then(s,a)}o((i=i.apply(A,e||[])).next())}))};const g=1,I=16;class Q{constructor(A){this.isPreviousPickDone=!0,this.pickBuffer=A.createBuffer({label:"pick id buffer",size:g*I,usage:GPUBufferUsage.MAP_READ|GPUBufferUsage.COPY_DST}),this.pickTexture=A.createTexture({label:"picking texture color",size:[1,1],format:"rgba32uint",usage:GPUTextureUsage.COPY_SRC|GPUTextureUsage.RENDER_ATTACHMENT})}startPicking(A){const e={label:"render pick",colorAttachments:[{view:this.pickTexture.createView(),loadOp:"clear",clearValue:[0,0,0,1],storeOp:"store"}]},t=A.beginRenderPass(e);t.setViewport(0,0,1,1,0,1),t.setScissorRect(0,0,1,1);return{pass:t,end:()=>{t.end(),this.isPreviousPickDone&&A.copyTextureToBuffer({texture:this.pickTexture,origin:{x:0,y:0}},{buffer:this.pickBuffer},{width:g})}}}createMatrix(A,e){const t=-(r.Wn.x/A.width*2-1),i=r.Wn.y/A.height*2-1;return[n.A.scaling([A.width,A.height,0]),n.A.translation([t,i,0]),e].reduce(((A,e)=>n.A.multiply(A,e)),n.A.translation([-1,1,0]))}asyncPick(){return o(this,void 0,void 0,(function*(){if(this.isPreviousPickDone){this.isPreviousPickDone=!1;try{yield this.pickBuffer.mapAsync(GPUMapMode.READ,0,I*g);const[A,e,t,i]=new Uint32Array(this.pickBuffer.getMappedRange(0,I*g));s.QZ([A,e,t,i]);let n=0;for(;n<r.Wn.afterPickEventsQueue.length;){const{requireNewPick:A,cb:e}=r.Wn.afterPickEventsQueue[n];if(A&&n>0)break;e(),n++}r.Wn.afterPickEventsQueue.splice(0,n),this.pickBuffer.unmap()}catch(A){}this.isPreviousPickDone=!0}}))}}i()}catch(A){i(A)}}))},688:(A,e,t)=>{t.d(e,{IP:()=>L,ym:()=>R,RW:()=>F,bB:()=>M,DS:()=>G,Ay:()=>K,nj:()=>J,zK:()=>O,oQ:()=>D,Jl:()=>x,np:()=>N,H:()=>k,_J:()=>S,D4:()=>b,R9:()=>z,Zo:()=>U,Fh:()=>w,Q3:()=>v});const i="const PI = 3.14159265358979323846;\nconst EPSILON = 1.1920929e-7;\n\nstruct Vertex {\n @location(0) p0: vec4f, //xy -> corner position, zw -> circle position\n @location(1) p1: vec4f,\n @location(2) p2: vec4f,\n @location(3) color: vec4f,\n @location(4) radius_list: vec3f,\n};\n\nstruct Uniforms {\n worldViewProjection: mat4x4f,\n};\n\nstruct VertexOutput {\n @builtin(position) position: vec4f,\n @location(0) @interpolate(flat) p0: vec4f,\n @location(1) @interpolate(flat) p1: vec4f,\n @location(2) @interpolate(flat) p2: vec4f,\n @location(3) @interpolate(flat) color: vec4f,\n @location(4) pixel: vec2f,\n @location(5) @interpolate(flat) radius_list: vec3f,\n @location(6) @interpolate(flat) threshold_list: vec3f,\n};\n\n@group(0) @binding(0) var<uniform> u: Uniforms;\n\nfn threshold_pythagorean_leg(corner: vec4f, radius: f32) -> f32 {\n let p_circle_dist = distance(corner.xy, corner.zw);\n // Pythagorean theorem, finding one leg of a right triangle when you know the hypotenuse and the other leg.\n return sqrt(p_circle_dist * p_circle_dist - radius * radius);\n}\n\n@vertex fn vs(\n vert: Vertex,\n @builtin(vertex_index) vertex_index : u32\n) -> VertexOutput {\n var out: VertexOutput;\n\n let positions = array<vec2f, 3>(vert.p0.xy, vert.p1.xy, vert.p2.xy);\n out.position = vec4f(positions[vertex_index], 0, 1);\n\n out.pixel = vec2f(out.position.x, out.position.y);\n\n out.position = u.worldViewProjection * out.position;\n\n out.p0 = vert.p0;\n out.p1 = vert.p1;\n out.p2 = vert.p2;\n out.color = vert.color;\n\n out.radius_list = vert.radius_list;\n\n out.threshold_list = vec3f(\n threshold_pythagorean_leg(vert.p0, vert.radius_list.x),\n threshold_pythagorean_leg(vert.p1, vert.radius_list.y),\n threshold_pythagorean_leg(vert.p2, vert.radius_list.z),\n ); // behind this value is a rounded corner\n\n return out;\n}\n\n@fragment fn fs(in: VertexOutput) -> @location(0) vec4f {\n let p0_circle_dist = distance(in.p0.xy, in.pixel) - in.threshold_list.x;\n let p1_circle_dist = distance(in.p1.xy, in.pixel) - in.threshold_list.y;\n let p2_circle_dist = distance(in.p2.xy, in.pixel) - in.threshold_list.z;\n \n let min_circle_dist = min(\n p0_circle_dist,\n min(p1_circle_dist, p2_circle_dist)\n );\n\n var p: vec2f; // closest corner\n var p_circle: vec2f; // closest corner's circle position\n var radius: f32;\n var threshold: f32;\n\n if (abs(min_circle_dist - p0_circle_dist) <= EPSILON) {\n p = in.p0.xy;\n p_circle = in.p0.zw;\n radius = in.radius_list.x;\n threshold = in.threshold_list.x;\n } else if (abs(min_circle_dist - p1_circle_dist) <= EPSILON) {\n p = in.p1.xy;\n p_circle = in.p1.zw;\n radius = in.radius_list.y;\n threshold = in.threshold_list.y;\n } else {\n p = in.p2.xy;\n p_circle = in.p2.zw;\n radius = in.radius_list.z;\n threshold = in.threshold_list.z;\n }\n\n\n let circle_distance = distance(p_circle, in.pixel);\n let edge_width = fwidth(circle_distance);\n\n let circle_alpha = 1.0 - smoothstep(radius - edge_width, radius + edge_width, circle_distance);\n let dist = distance(p, in.pixel);\n let alpha = mix(circle_alpha, 1.0, step(threshold, dist)); // if threshold <= dist, use circle alpha, otherwise use 1.0\n\n return in.color * alpha;\n}\n",n=16;const r="struct Uniform {\n filterDim: i32, // x for horizontal, y for vertical\n blockDim: u32,\n sigma: f32, // standard deviation for X (when flip=0) and Y (when flip=1)\n flip: u32,\n}\n\n@group(0) @binding(0) var samp : sampler;\n@group(0) @binding(1) var<uniform> u : Uniform;\n@group(0) @binding(2) var inputTex : texture_2d<f32>;\n@group(0) @binding(3) var outputTex : texture_storage_2d<{presentationFormat}, write>;\n\n// This shader blurs the input texture in one direction, depending on whether\n// |u.flip| is 0 or 1.\n// It does so by running (128 / 4) threads per workgroup to load 128\n// texels into 4 rows of shared memory. Each thread loads a\n// 4 x 4 block of texels to take advantage of the texture sampling\n// hardware.\n// Then, each thread computes the blur result by averaging the adjacent texel values\n// in shared memory.\n// Because we're operating on a subset of the texture, we cannot compute all of the\n// results since not all of the neighbors are available in shared memory.\n// Specifically, with 128 x 128 tiles, we can only compute and write out\n// square blocks of size 128 - (filterSize - 1). We compute the number of blocks\n// needed in Javascript and dispatch that amount.\n\n// 128/4 = 32 -> number of threads per working group\n// does it in 4x4 block of texels(takes advantage of texture sampling hardware)\n// with this beign said, we don't have all the neighbours, only this block\n// That's why we can only compute & write out blocks of size 128 - (filterSize - 1)\nvar<workgroup> tile : array<array<vec4f, 128>, 4>;\n\n@compute @workgroup_size(32, 1, 1)\nfn main(\n @builtin(workgroup_id) WorkGroupID : vec3<u32>,\n @builtin(local_invocation_id) LocalInvocationID : vec3<u32>\n) {\n let filterOffset = (u.filterDim - 1) / 2;\n let dims = vec2<i32>(textureDimensions(inputTex, 0));\n let baseIndex = vec2<i32>(WorkGroupID.xy * vec2(u.blockDim, 4) + // it's just the index of the first texel in a group\n LocalInvocationID.xy * vec2(4, 1)) // <0, 128>\n - vec2(filterOffset, 0);\n // baseIndex = xy of first texel of group\n for (var r = 0; r < 4; r++) {\n for (var c = 0; c < 4; c++) {\n var loadIndex = baseIndex + vec2(c, r);\n if (u.flip != 0) {\n loadIndex = loadIndex.yx;\n }\n\n tile[r][4 * LocalInvocationID.x + u32(c)] = textureSampleLevel(\n inputTex,\n samp,\n (vec2<f32>(loadIndex) + vec2<f32>(0.5, 0.5)) / vec2<f32>(dims),\n 0.0\n ).rgba;\n }\n }\n\n workgroupBarrier();\n // helps coordinate access to read-write memory\n // so all threads(32) will wait to hit this barrer, and then start form here together\n\n for (var r = 0; r < 4; r++) {\n for (var c = 0; c < 4; c++) {\n var writeIndex = baseIndex + vec2(c, r);\n if (u.flip != 0) {\n writeIndex = writeIndex.yx;\n }\n\n let center = i32(4 * LocalInvocationID.x) + c;\n if (center >= filterOffset &&\n center < 128 - filterOffset &&\n all(writeIndex < dims)) {\n\n let denom = 2.0 * u.sigma * u.sigma;\n var acc = vec4f(0.0);\n var wsum = 0.0;\n\n for (var f = 0; f < u.filterDim; f++) {\n let rel = f - filterOffset;\n var i = center + rel;\n let w = exp(- (f32(rel * rel)) / denom);\n acc = acc + w * tile[r][i];\n wsum = wsum + w;\n }\n acc = acc / wsum;\n\n textureStore(outputTex, writeIndex, acc);\n }\n }\n }\n}\n",s=128,a=[4,4];const o="struct Vertex {\n @location(0) position: vec4f,\n};\n\nstruct Uniforms {\n cameraProjection: mat4x4f,\n};\n\nstruct VertexOutput {\n @builtin(position) position: vec4f,\n @location(0) texCoord: vec2f,\n};\n\n@group(0) @binding(0) var<uniform> u: Uniforms;\n@group(0) @binding(1) var ourSampler: sampler;\n@group(0) @binding(2) var ourTexture: texture_2d<f32>;\n\n@vertex fn vs(vert: Vertex) -> VertexOutput {\n var out: VertexOutput;\n // maybe we should pass offsets from the position instead of... position?\n out.position = u.cameraProjection * vec4f(vert.position.xy, 0, 1);\n out.texCoord = vert.position.zw;\n \n return out;\n}\n\n@fragment fn fs(in: VertexOutput) -> @location(0) vec4f {\n return textureSample(ourTexture, ourSampler, in.texCoord);\n // let color = textureSample(ourTexture, ourSampler, in.texCoord);\n // if (color.a < 0.1) {\n // return vec4f(0, 0, 1, 0.1);\n // }\n // return color;\n}\n",g=16;const I="struct Vertex {\n @location(0) position: vec4f,\n @location(1) id: vec4u,\n};\n\nstruct Uniforms {\n worldViewProjection: mat4x4f\n};\n\nstruct VertexOutput {\n @builtin(position) position: vec4f,\n @location(0) texCoord: vec2f,\n @location(1) @interpolate(flat) id: vec4u\n};\n\n@group(0) @binding(0) var<uniform> u: Uniforms;\n@group(0) @binding(1) var ourSampler: sampler;\n@group(0) @binding(2) var ourTexture: texture_2d<f32>;\n\n@vertex fn vs(vert: Vertex) -> VertexOutput {\n var out: VertexOutput;\n\n out.position = u.worldViewProjection * vec4f(vert.position.xy, 0.0, 1.0);\n out.texCoord = vert.position.zw;\n out.id = vert.id;\n\n return out;\n}\n\n\n@fragment fn fs(in: VertexOutput) -> @location(0) vec4u {\n let alpha = textureSample(ourTexture, ourSampler, in.texCoord).a;\n\n if (alpha < 0.1) {\n discard; // r32uint doesn't support blending so only skipping pixels lefts\n }\n\n return in.id;\n}\n",Q=32;const C="const PI = 3.14159265358979323846;\nconst EPSILON = 1.1920929e-7;\n\nstruct Vertex {\n @location(0) p0: vec4f, //xy -> corner position, zw -> circle position\n @location(1) p1: vec4f,\n @location(2) p2: vec4f,\n @location(3) id: vec4u,\n @location(4) radius_list: vec3f,\n};\n\nstruct Uniforms {\n worldViewProjection: mat4x4f,\n};\n\nstruct VertexOutput {\n @builtin(position) position: vec4f,\n @location(0) @interpolate(flat) p0: vec4f,\n @location(1) @interpolate(flat) p1: vec4f,\n @location(2) @interpolate(flat) p2: vec4f,\n @location(3) @interpolate(flat) id: vec4u,\n @location(4) pixel: vec2f,\n @location(5) @interpolate(flat) radius_list: vec3f,\n @location(6) @interpolate(flat) threshold_list: vec3f,\n};\n\n@group(0) @binding(0) var<uniform> u: Uniforms;\n\nfn threshold_pythagorean_leg(corner: vec4f, radius: f32) -> f32 {\n let p_circle_dist = distance(corner.xy, corner.zw);\n // Pythagorean theorem, finding one leg of a right triangle when you know the hypotenuse and the other leg.\n return sqrt(p_circle_dist * p_circle_dist - radius * radius);\n}\n\n@vertex fn vs(\n vert: Vertex,\n @builtin(vertex_index) vertex_index : u32\n) -> VertexOutput {\n var out: VertexOutput;\n\n let positions = array<vec2f, 3>(vert.p0.xy, vert.p1.xy, vert.p2.xy);\n out.position = vec4f(positions[vertex_index], 0, 1);\n\n out.pixel = vec2f(out.position.x, out.position.y);\n\n out.position = u.worldViewProjection * out.position;\n\n out.p0 = vert.p0;\n out.p1 = vert.p1;\n out.p2 = vert.p2;\n out.id = vert.id;\n\n out.radius_list = vert.radius_list;\n\n out.threshold_list = vec3f(\n threshold_pythagorean_leg(vert.p0, vert.radius_list.x),\n threshold_pythagorean_leg(vert.p1, vert.radius_list.y),\n threshold_pythagorean_leg(vert.p2, vert.radius_list.z),\n ); // behind this value is a ounded corner\n\n return out;\n}\n\n@fragment fn fs(in: VertexOutput) -> @location(0) vec4u {\n let p0_circle_dist = distance(in.p0.xy, in.pixel) - in.threshold_list.x;\n let p1_circle_dist = distance(in.p1.xy, in.pixel) - in.threshold_list.y;\n let p2_circle_dist = distance(in.p2.xy, in.pixel) - in.threshold_list.z;\n \n let min_circle_dist = min(\n p0_circle_dist,\n min(p1_circle_dist, p2_circle_dist)\n );\n\n var p: vec2f; // closest corner\n var p_circle: vec2f; // closest corner's circle position\n var radius: f32;\n var threshold: f32;\n\n if (abs(min_circle_dist - p0_circle_dist) <= EPSILON) {\n p = in.p0.xy;\n p_circle = in.p0.zw;\n radius = in.radius_list.x;\n threshold = in.threshold_list.x;\n } else if (abs(min_circle_dist - p1_circle_dist) <= EPSILON) {\n p = in.p1.xy;\n p_circle = in.p1.zw;\n radius = in.radius_list.y;\n threshold = in.threshold_list.y;\n } else {\n p = in.p2.xy;\n p_circle = in.p2.zw;\n radius = in.radius_list.z;\n threshold = in.threshold_list.z;\n }\n\n\n let circle_distance = distance(p_circle, in.pixel);\n let edge_width = fwidth(circle_distance);\n\n let circle_alpha = 1.0 - smoothstep(radius - edge_width, radius + edge_width, circle_distance);\n let dist = distance(p, in.pixel);\n let alpha = mix(circle_alpha, 1.0, step(threshold, dist)); // if threshold <= dist, use circle alpha, otherwise use 1.0\n\n if (alpha < 0.1) {\n discard; // r32uint doesn't support blending so only skipping pixels lefts\n }\n\n return in.id;\n}\n",c=19;const B="const STRAIGHT_LINE_THRESHOLD = 1e10;\nconst EPSILON = 1e-10;\nconst PI = 3.141592653589793;\n\nstruct Vertex {\n @location(0) position: vec4f,\n};\n\n@group(0) @binding(1) var texture: texture_storage_2d<rgba32float, read>;\n@group(0) @binding(2) var<uniform> camera_projection: mat4x4f;\n\nstruct VSOutput {\n @builtin(position) position: vec4f,\n @location(0) uv: vec2f,\n @location(1) norm_uv: vec2f,\n};\n\n@vertex fn vs(vert: Vertex) -> VSOutput {\n let size = textureDimensions(texture);\n return VSOutput(\n camera_projection * vec4f(vert.position.xy, 0.0, 1.0),\n vert.position.zw * vec2f(size),\n vert.position.zw,\n );\n}\n\nfn getSample(pos: vec2f) -> vec4f {\n let floor_pos = floor(pos - 0.5);\n let fract_pos = pos - 0.5 - floor_pos;\n\n let p00 = vec2u(floor_pos);\n let p10 = vec2u(floor_pos + vec2f(1.0, 0.0));\n let p01 = vec2u(floor_pos + vec2f(0.0, 1.0));\n let p11 = vec2u(floor_pos + vec2f(1.0, 1.0));\n\n let c00 = textureLoad(texture, p00);\n let c10 = textureLoad(texture, p10);\n let c01 = textureLoad(texture, p01);\n let c11 = textureLoad(texture, p11);\n\n let top = mix(c00, c10, fract_pos.x);\n let bottom = mix(c01, c11, fract_pos.x);\n\n return mix(top, bottom, fract_pos.y);\n}\n\n\n@fragment fn fs(vsOut: VSOutput) -> @location(0) vec4f {\n // let sdf = textureLoad(texture, vec2u(vsOut.uv));\n let sdf = getSample(vsOut.uv);\n\n let dist = sdf.r;\n let width = fwidth(dist) * 0.5;\n\n let inner_alpha = smoothstep(u.dist_start - width, u.dist_start + width, dist);\n let outer_alpha = smoothstep(u.dist_end - width, u.dist_end + width, dist);\n let alpha = outer_alpha - inner_alpha;\n let color = getColor(sdf, vsOut.uv, vsOut.norm_uv);\n let result = vec4f(color.rgb, color.a * alpha);\n\n return result;\n\n // let stroke_factor = select(0.5, 0.0, sdf.g > 1.0);\n // color = vec4f(0, sdf.g % 1, 0, 1.0);\n // color = vec4f(0, 0, sdf.b / (2 * PI), 1.0);\n // color = vec4f(sdf.r / 100.0, sdf.g % 1, sdf.b / (2 * PI), 1.0);\n // color = select(vec4f(0.5, 0, 0, 1), vec4f(0, 0, 0.5, 1), u32(sdf.r / 20.0) % 2 == 0);\n}\n";function l(A,e,t,i){const n=A.createShaderModule({label:"drawShape shader",code:B+t}),r=4*i,s=A.createRenderPipeline({label:"drawShape pipeline",layout:"auto",vertex:{module:n,entryPoint:"vs",buffers:[{arrayStride:16,attributes:[{shaderLocation:0,offset:0,format:"float32x4"}]}]},fragment:{module:n,entryPoint:"fs",targets:[{format:e,blend:{color:{srcFactor:"src-alpha",dstFactor:"one-minus-src-alpha"},alpha:{srcFactor:"one",dstFactor:"one-minus-src-alpha"}}}]},multisample:{count:4}});return function(e,t,i,n){const a=A.createBuffer({label:"drawShape vertex buffer",size:i.byteLength,usage:GPUBufferUsage.VERTEX|GPUBufferUsage.COPY_DST});A.queue.writeBuffer(a,0,i),J(a);const o=A.createBuffer({label:"drawShape uniforms",size:r,usage:GPUBufferUsage.UNIFORM|GPUBufferUsage.COPY_DST});A.queue.writeBuffer(o,0,n),J(o),e.setPipeline(s);const g=A.createBindGroup({label:"drawShape bind group",layout:s.getBindGroupLayout(0),entries:[{binding:0,resource:{buffer:o}},{binding:1,resource:t.createView()},{binding:2,resource:{buffer:L.buffer}}]});e.setBindGroup(0,g),e.setVertexBuffer(0,a),e.draw(6)}}const u="\nstruct Uniforms {\n dist_start: f32,\n dist_end: f32,\n padding: vec2f, // Padding for alignment\n color: vec4f,\n};\n\n@group(0) @binding(0) var<uniform> u: Uniforms;\n\nfn getColor(sdf: vec4f, uv: vec2f, norm_uv: vec2f) -> vec4f {\n return u.color;\n}",E='struct Stop {\n color: vec4f,\n offset: f32,\n}\n\nstruct Uniform {\n dist_start: f32,\n dist_end: f32,\n stops_count: u32,\n padding: u32, // Padding for alignment\n start: vec2f,\n end: vec2f,\n stops: array<Stop, 10>,\n};\n\n@group(0) @binding(0) var<uniform> u: Uniform;\n\n\nfn getColor(sdf: vec4f, world_uv: vec2f, uv: vec2f) -> vec4f {\n // Fallbacks\n if (u.stops_count == 0u) {\n return vec4f(1.0, 1.0, 1.0, 1.0);\n }\n if (u.stops_count == 1u) {\n return u.stops[0u].color;\n }\n\n // Gradient axis given by start -> end in uv space\n let dir = u.end - u.start;\n let len2_raw = dot(dir, dir);\n let len2 = max(len2_raw, 1e-8);\n\n // Project current uv to axis; get normalized parameter t in [0, 1]\n var t_uv: f32;\n if (len2_raw < 1e-7) {\n // Degenerate axis: fall back to horizontal gradient across world_uv.x\n t_uv = clamp(uv.x, 0.0, 1.0);\n } else {\n // project vector with uv positon onto gradient vector to see "how far" is the pixel along the gradient line\n // len2 to tonalize\n t_uv = clamp(dot(uv - u.start, dir) / len2, 0.0, 1.0);\n }\n\n // Find lower/upper stops around t_uv using stop offsets\n let last_index = u.stops_count - 1u;\n var lower_t = -1.0;\n var lower_color = u.stops[0u].color;\n var upper_t = 2.0;\n var upper_color = u.stops[last_index].color;\n\n for (var i: u32 = 0u; i < u.stops_count; i = i + 1u) {\n let ti = clamp(u.stops[i].offset, 0.0, 1.0);\n if (ti <= t_uv && ti > lower_t) {\n lower_t = ti;\n lower_color = u.stops[i].color;\n }\n if (ti >= t_uv && ti < upper_t) {\n upper_t = ti;\n upper_color = u.stops[i].color;\n }\n }\n\n // Boundaries: if t is before the first stop or after the last stop\n if (lower_t < 0.0) {\n return upper_color; // before first stop\n }\n if (upper_t > 1.5) {\n return lower_color; // after last stop\n }\n\n // Interpolate between the two surrounding stops\n let denom = max(upper_t - lower_t, 1e-8);\n let a = clamp((t_uv - lower_t) / denom, 0.0, 1.0);\n return mix(lower_color, upper_color, a);\n}',f="struct Stop {\n color: vec4f,\n offset: f32,\n}\n\nstruct Uniform {\n dist_start: f32,\n dist_end: f32,\n stops_count: u32,\n radius_ratio: f32, // vertical radius / horizontal radius (to create ellipse)\n center: vec2f, // Center point of radial gradient\n destination: vec2f, // because we have scale, the angle between center an destination is visible in the gradient!\n stops: array<Stop, 10>,\n};\n\n@group(0) @binding(0) var<uniform> u: Uniform;\n\nfn getColor(sdf: vec4f, world_uv: vec2f, uv: vec2f) -> vec4f {\n // Fallbacks\n if (u.stops_count == 0u) {\n return vec4f(1.0, 1.0, 1.0, 1.0);\n }\n if (u.stops_count == 1u) {\n return u.stops[0u].color;\n }\n\n // Calculate offset from center\n let offset = uv - u.center;\n \n // Vector from center to destination encodes major axis direction and length\n let dest_offset = u.destination - u.center;\n let hr = length(dest_offset);\n let inv_hr = 1.0 / max(hr, 1e-8);\n let inv_vr = inv_hr / max(u.radius_ratio, 1e-8);\n\n // Orthonormal basis aligned with gradient: u along destination, v perpendicular\n let u_dir = dest_offset * inv_hr; // normalized major axis\n let v_dir = vec2f(-u_dir.y, u_dir.x); // normalized minor axis\n\n // Project offset into this basis and normalize by radii\n let scaled_x = dot(offset, u_dir) * inv_hr; // == dot(offset, dest_offset) * inv_hr^2\n let scaled_y = dot(offset, v_dir) * inv_vr; // divide by vertical radius\n \n // Calculate normalized distance (0 at center, 1 at edge of ellipse)\n let normalized_dist = sqrt(scaled_x * scaled_x + scaled_y * scaled_y);\n let t_uv = clamp(normalized_dist, 0.0, 1.0);\n\n // Find lower/upper stops around t_uv using stop offsets\n let last_index = u.stops_count - 1u;\n var lower_t = -1.0;\n var lower_color = u.stops[0u].color;\n var upper_t = 2.0;\n var upper_color = u.stops[last_index].color;\n\n for (var i: u32 = 0u; i < u.stops_count; i = i + 1u) {\n let ti = clamp(u.stops[i].offset, 0.0, 1.0);\n if (ti <= t_uv && ti > lower_t) {\n lower_t = ti;\n lower_color = u.stops[i].color;\n }\n if (ti >= t_uv && ti < upper_t) {\n upper_t = ti;\n upper_color = u.stops[i].color;\n }\n }\n\n // Boundaries: if t is before the first stop or after the last stop\n if (lower_t < 0.0) {\n return upper_color; // before first stop\n }\n if (upper_t > 1.5) {\n return lower_color; // after last stop\n }\n\n // Interpolate between the two surrounding stops\n let denom = max(upper_t - lower_t, 1e-8);\n let a = clamp((t_uv - lower_t) / denom, 0.0, 1.0);\n return mix(lower_color, upper_color, a);\n}",h="const STRAIGHT_LINE_THRESHOLD = 1e10;\nconst EPSILON = 1e-10;\n\nstruct Vertex {\n @location(0) position: vec4f,\n @location(1) id: vec4u,\n};\n\nstruct Uniforms {\n dist_start: f32,\n dist_end: f32,\n};\n\n@group(0) @binding(0) var<uniform> camera_projection: mat4x4f;\n@group(0) @binding(1) var<uniform> u: Uniforms;\n@group(0) @binding(2) var texture: texture_storage_2d<rgba32float, read>;\n\nstruct VertexOutput {\n @builtin(position) position: vec4f,\n @location(0) uv: vec2f,\n @location(1) @interpolate(flat) id: vec4u\n};\n\n@vertex fn vs(vert: Vertex) -> VertexOutput {\n var out: VertexOutput;\n\n out.position = camera_projection * vec4f(vert.position.xy, 0.0, 1.0);\n out.id = vert.id;\n\n let size = textureDimensions(texture);\n out.uv = vert.position.zw * vec2f(size);\n\n return out;\n}\n\n@fragment fn fs(in: VertexOutput) -> @location(0) vec4u {\n let dist = textureLoad(texture, vec2u(in.uv)).r;\n\n if (dist > u.dist_start || dist < u.dist_end) {\n discard;\n }\n\n return in.id;\n}\n";const p="const STRAIGHT_LINE_THRESHOLD = 1e10;\nconst EPSILON = 1e-10;\nconst PI = 3.141592653589793;\n\nstruct CubicBezier {\n p0: vec2f,\n p1: vec2f,\n p2: vec2f,\n p3: vec2f,\n};\n\n@group(0) @binding(0) var tex: texture_storage_2d<rgba32float, write>;\n@group(0) @binding(1) var<storage, read> curves: array<vec2f>;\n\n@compute @workgroup_size(1) fn cs(\n @builtin(global_invocation_id) id : vec3u\n) {\n let pos = vec2f(id.xy) + vec2f(0.5, 0.5);\n let shape_info = evaluate_shape(pos);\n\n textureStore(tex, id.xy, vec4f(\n shape_info.signed_distance,\n shape_info.t,\n shape_info.angle,\n 1.0\n ));\n}\n\n\n// Evaluate cubic Bézier at parameter t\nfn bezier_point(curve: CubicBezier, t: f32) -> vec2f {\n let t2 = t * t;\n let t3 = t2 * t;\n let one_minus_t = 1.0 - t;\n let one_minus_t2 = one_minus_t * one_minus_t;\n let one_minus_t3 = one_minus_t2 * one_minus_t;\n \n return curve.p0 * one_minus_t3 + \n 3.0 * curve.p1 * t * one_minus_t2 + \n 3.0 * curve.p2 * t2 * one_minus_t + \n curve.p3 * t3;\n}\n\n// First derivative of cubic Bézier\nfn bezier_derivative(curve: CubicBezier, t: f32) -> vec2f {\n let one_minus_t = 1.0 - t;\n return 3.0 * one_minus_t * one_minus_t * (curve.p1 - curve.p0) +\n 6.0 * t * one_minus_t * (curve.p2 - curve.p1) +\n 3.0 * t * t * (curve.p3 - curve.p2);\n}\n\n// Second derivative of cubic Bézier\nfn bezier_second_derivative(curve: CubicBezier, t: f32) -> vec2f {\n return 6.0 * (1.0 - t) * (curve.p2 - 2.0 * curve.p1 + curve.p0) +\n 6.0 * t * (curve.p3 - 2.0 * curve.p2 + curve.p1);\n}\n\n// Find closest point on cubic Bézier curve to given point using analytical method\nfn closest_point_on_bezier(point: vec2f, curve: CubicBezier) -> f32 {\n // At the closest point, (P(t) - point) ⊥ P'(t)\n // This gives us: dot(P(t) - point, P'(t)) = 0\n // We can solve this quintic equation analytically or use Newton-Raphson\n \n // Start with a good initial guess using the control polygon\n var best_t = initial_guess_closest_point(point, curve);\n // if there is any weird artifact in the middle of the shape, then it's most likely because of initial guess!\n \n // Newton-Raphson to find exact solution\n for (var i = 0; i < 5; i++) {\n let curve_point = bezier_point(curve, best_t);\n let derivative = bezier_derivative(curve, best_t);\n let second_derivative = bezier_second_derivative(curve, best_t);\n \n let diff = curve_point - point;\n \n // f(t) = dot(P(t) - point, P'(t)) = 0\n let f = dot(diff, derivative);\n \n // f'(t) = dot(P'(t), P'(t)) + dot(P(t) - point, P''(t))\n let df = dot(derivative, derivative) + dot(diff, second_derivative);\n \n if (abs(df) < 1e-8) { break; }\n \n var new_t = best_t - f / df;\n \n // Clamp to valid range\n new_t = clamp(new_t, 0.0, 1.0);\n \n if (abs(new_t - best_t) < 1e-8) { break; }\n best_t = new_t;\n }\n \n return best_t;\n}\n\n// Get initial guess for closest point using hierarchical sampling\nfn initial_guess_closest_point(point: vec2f, curve: CubicBezier) -> f32 {\n // Stage 1: Coarse sampling to find approximate region\n var best_t = 0.0;\n var min_dist_sq = 1e10;\n \n let coarse_samples = 16; // More samples for better coverage\n for (var i = 0; i <= coarse_samples; i++) {\n let t = f32(i) / f32(coarse_samples);\n let curve_point = bezier_point(curve, t);\n let dist_sq = dot(curve_point - point, curve_point - point);\n \n if (dist_sq < min_dist_sq) {\n min_dist_sq = dist_sq;\n best_t = t;\n }\n }\n \n // Stage 2: Refine in the neighborhood of the best coarse sample\n let refine_range = 1.0 / f32(coarse_samples); // Search around ±one sample interval\n let t_min = max(0.0, best_t - refine_range);\n let t_max = min(1.0, best_t + refine_range);\n \n let fine_samples = 8;\n for (var i = 0; i <= fine_samples; i++) {\n let t = t_min + (t_max - t_min) * f32(i) / f32(fine_samples);\n let curve_point = bezier_point(curve, t);\n let dist_sq = dot(curve_point - point, curve_point - point);\n \n if (dist_sq < min_dist_sq) {\n min_dist_sq = dist_sq;\n best_t = t;\n }\n }\n \n return best_t;\n}\n\n// Project point onto line segment and return parameter [0,1]\nfn project_point_to_line_segment(point: vec2f, line_start: vec2f, line_end: vec2f) -> f32 {\n let line_vec = line_end - line_start;\n let point_vec = point - line_start;\n \n let line_length_sq = dot(line_vec, line_vec);\n \n if (line_length_sq < 1e-8) {\n return 0.0; // Degenerate line\n }\n \n let t = dot(point_vec, line_vec) / line_length_sq;\n return clamp(t, 0.0, 1.0);\n}\n\n// Calculate distance from point to line segment\nfn distance_to_line_segment(point: vec2f, line_start: vec2f, line_end: vec2f) -> f32 {\n let line_vec = line_end - line_start;\n let point_vec = point - line_start;\n \n let line_length_sq = dot(line_vec, line_vec);\n \n if (line_length_sq < 1e-8) {\n // Degenerate line - distance to start point\n return length(point_vec);\n }\n \n let t = dot(point_vec, line_vec) / line_length_sq;\n \n if (t <= 0.0) {\n // Closest point is the start of the line segment\n return length(point_vec);\n } else if (t >= 1.0) {\n // Closest point is the end of the line segment\n return length(point - line_end);\n } else {\n // Closest point is on the line segment\n let closest_point = line_start + t * line_vec;\n return length(point - closest_point);\n }\n}\n\n// Calculate winding number contribution from a line segment\nfn line_winding_contribution(point: vec2f, line_start: vec2f, line_end: vec2f) -> f32 {\n // Vector from query point to line endpoints\n let v1 = line_start - point;\n let v2 = line_end - point;\n \n // Skip if either point is very close to avoid numerical issues\n let dist1 = length(v1);\n let dist2 = length(v2);\n if (dist1 < 1e-6 || dist2 < 1e-6) {\n return 0.0;\n }\n \n // Normalize vectors\n let n1 = v1 / dist1;\n let n2 = v2 / dist2;\n \n // Calculate signed angle using atan2 for proper quadrant handling\n let cross_prod = n1.x * n2.y - n1.y * n2.x;\n let dot_prod = dot(n1, n2);\n \n // Use atan2 for proper quadrant handling\n let angle = atan2(cross_prod, dot_prod);\n \n return angle / (2.0 * 3.14159);\n}\n\n// Ray casting: count intersections of horizontal ray with curve\nfn ray_cast_curve_crossing(point: vec2f, curve: CubicBezier) -> i32 {\n // Quick Y-bounds check - if point is outside Y range, no intersection possible\n let y_min = min(min(curve.p0.y, curve.p1.y), min(curve.p2.y, curve.p3.y));\n let y_max = max(max(curve.p0.y, curve.p1.y), max(curve.p2.y, curve.p3.y));\n let x_min = max(max(curve.p0.x, curve.p1.x), max(curve.p2.x, curve.p3.x));\n \n if (point.y < y_min || point.y > y_max || point.x > x_min) {\n return 0;\n }\n \n // Sample the curve at regular intervals to find intersections\n var crossings = 0;\n let samples = 32; // Good balance between accuracy and performance\n \n for (var i = 0; i < samples; i++) {\n let t1 = f32(i) / f32(samples);\n let t2 = f32(i + 1) / f32(samples);\n \n let p1 = bezier_point(curve, t1);\n let p2 = bezier_point(curve, t2);\n \n // Check if this segment crosses the horizontal ray\n if (ray_crosses_segment(point, p1, p2)) {\n // Calculate the actual intersection X coordinate\n let intersection_x = get_ray_intersection_x(point.y, p1, p2);\n \n // Only count if intersection is to the right of the point\n if (intersection_x > point.x) {\n // Determine crossing direction for proper winding\n if (p1.y < point.y && p2.y >= point.y) {\n crossings += 1; // Upward crossing\n } else if (p1.y >= point.y && p2.y < point.y) {\n crossings -= 1; // Downward crossing\n }\n }\n }\n }\n \n return crossings;\n}\n\n// Check if horizontal ray from point crosses the line segment\nfn ray_crosses_segment(point: vec2f, p1: vec2f, p2: vec2f) -> bool {\n // Check if the segment crosses the horizontal line at point.y\n return (p1.y < point.y && p2.y >= point.y) || (p1.y >= point.y && p2.y < point.y);\n}\n\n// Calculate X coordinate where horizontal ray intersects line segment\nfn get_ray_intersection_x(ray_y: f32, p1: vec2f, p2: vec2f) -> f32 {\n if (abs(p2.y - p1.y) < 1e-8) {\n // Horizontal line - return leftmost X\n return min(p1.x, p2.x);\n }\n \n // Linear interpolation to find intersection X\n let t = (ray_y - p1.y) / (p2.y - p1.y);\n return p1.x + t * (p2.x - p1.x);\n}\n\n// Helper function: distance from point to line (for flatness test)\nfn distance_point_to_line(point: vec2f, line_start: vec2f, line_end: vec2f) -> f32 {\n let line_vec = line_end - line_start;\n let point_vec = point - line_start;\n \n let line_length_sq = dot(line_vec, line_vec);\n if (line_length_sq < 1e-8) {\n return length(point_vec);\n }\n \n let t = dot(point_vec, line_vec) / line_length_sq;\n let closest = line_start + clamp(t, 0.0, 1.0) * line_vec;\n return length(point - closest);\n}\n\nstruct ShapeInfo {\n signed_distance: f32,\n t: f32,\n angle: f32\n}\n\n// Main shape evaluation function using SDF approach with ray casting\nfn evaluate_shape(point: vec2f) -> ShapeInfo {\n var total_crossings: i32 = 0;\n var closest_curve_idx = 0u;\n var closest_t = 0.0;\n var min_distance: f32 = 1e+10;\n\n // For each curve, find closest point and count ray crossings\n let num_curves = arrayLength(&curves) / 4;\n for (var i = 0u; i < num_curves; i++) {\n let curve = CubicBezier(\n curves[i * 4 + 0],\n curves[i * 4 + 1],\n curves[i * 4 + 2],\n curves[i * 4 + 3]\n );\n\n // Check if this is a straight line,\n // we could check also p2, but at this point we should receive only\n // straight line on both handles, not a case for just one straight handle,\n // those are changed to have sibling cp value\n let is_straight_line = curve.p1.x > STRAIGHT_LINE_THRESHOLD;\n // let is_straight_line = curve.p1.x > STRAIGHT_LINE_THRESHOLD && curve.p2.x > STRAIGHT_LINE_THRESHOLD;\n\n\n if (is_straight_line) {\n // Handle as straight line from p0 to p3\n // if (u.stroke_width >= EPSILON) {\n let distance = distance_to_line_segment(point, curve.p0, curve.p3);\n // }\n if (distance < min_distance) {\n closest_curve_idx = i;\n closest_t = project_point_to_line_segment(point, curve.p0, curve.p3);\n min_distance = distance;\n }\n \n // Simple ray casting for line segment\n if (ray_crosses_segment(point, curve.p0, curve.p3)) {\n let intersection_x = get_ray_intersection_x(point.y, curve.p0, curve.p3);\n if (intersection_x > point.x) {\n if (curve.p0.y < point.y && curve.p3.y >= point.y) {\n total_crossings += 1; // Upward crossing\n } else if (curve.p0.y >= point.y && curve.p3.y < point.y) {\n total_crossings -= 1; // Downward crossing\n }\n }\n }\n } else {\n // Handle as normal cubic Bézier curve\n\n // if (u.stroke_width >= EPSILON) {\n let t = closest_point_on_bezier(point, curve);\n let closest_point = bezier_point(curve, t);\n let distance = length(point - closest_point);\n if (distance < min_distance) {\n closest_curve_idx = i;\n closest_t = t;\n min_distance = distance;\n }\n // }\n \n // Ray casting for curve\n total_crossings += ray_cast_curve_crossing(point, curve);\n }\n \n // min_distance = min(min_distance, distance);\n }\n\n var curve = CubicBezier(\n curves[closest_curve_idx * 4 + 0],\n curves[closest_curve_idx * 4 + 1],\n curves[closest_curve_idx * 4 + 2],\n curves[closest_curve_idx * 4 + 3]\n );\n\n // handling straight line case\n if (curve.p1.x > STRAIGHT_LINE_THRESHOLD) {\n curve.p1 = curve.p0;\n curve.p2 = curve.p3;\n }\n\n let closest_point = bezier_point(curve, closest_t);\n let angle = PI + atan2(point.y - closest_point.y, point.x - closest_point.x);\n \n // Determine if point is inside using odd-even rule (ray casting)\n // Count total crossings and check if odd\n let crossing_count = abs(total_crossings);\n let is_inside = (crossing_count % 2) == 1;\n let signed_dist = select(-min_distance, min_distance, is_inside);\n // let pixel_gradient = fwidth(signed_dist);\n \n // Anti-aliased fill (negative distance = inside)\n // let fill_alpha = smoothstep(pixel_gradient, -pixel_gradient, signed_dist);\n \n // Anti-aliased stroke (based on distance to curve boundary)\n // let stroke_half_width = u.stroke_width * 0.5;\n // let stroke_alpha = smoothstep(stroke_half_width + pixel_gradient, stroke_half_width - pixel_gradient, abs(signed_dist));\n return ShapeInfo(signed_dist, f32(closest_curve_idx) + closest_t, angle);\n}";const y="struct Uniform {\n placement_start: vec2f,\n placement_size: vec2f,\n};\n\n@group(0) @binding(0) var destination_tex: texture_storage_2d<rgba32float, write>;\n@group(0) @binding(1) var source_tex: texture_storage_2d<rgba32float, read>;\n@group(0) @binding(2) var depth_tex: texture_storage_2d<r32float, read_write>;\n@group(0) @binding(3) var<uniform> u: Uniform;\n\n@compute @workgroup_size(1) fn cs(\n @builtin(global_invocation_id) id : vec3u\n) {\n let texel_pos = vec2f(id.xy) + vec2f(0.5);\n\n let dest_pos = vec2i(u.placement_start + texel_pos);\n if (any(dest_pos < vec2i(0)) || any(dest_pos >= vec2i(textureDimensions(destination_tex)))) {\n return;\n }\n\n let ratio_source_tex_to_placement = vec2f(textureDimensions(source_tex)) / u.placement_size; // texture doesn't to be same size as placement_size!\n let depth = textureLoad(depth_tex, dest_pos).r;\n let source_texel = getSample(texel_pos * ratio_source_tex_to_placement);\n let scaled_dist = source_texel.r / ratio_source_tex_to_placement.x; // we assume all sizes keeps their ratio width / height, so we can use .x or .y here\n\n if (scaled_dist > depth){\n textureStore(destination_tex, dest_pos, vec4f(scaled_dist, source_texel.g, source_texel.b, source_texel.a));\n textureStore(depth_tex, dest_pos, vec4f(scaled_dist));\n }\n}\n\nfn getSample(pos: vec2f) -> vec4f {\n let floor_pos = floor(pos - 0.5);\n let fract_pos = (pos - 0.5) - floor_pos;\n\n let p00 = vec2u(floor_pos);\n let p10 = vec2u(floor_pos + vec2f(1.0, 0.0));\n let p01 = vec2u(floor_pos + vec2f(0.0, 1.0));\n let p11 = vec2u(floor_pos + vec2f(1.0, 1.0));\n\n let c00 = textureLoad(source_tex, p00);\n let c10 = textureLoad(source_tex, p10);\n let c01 = textureLoad(source_tex, p01);\n let c11 = textureLoad(source_tex, p11);\n\n let top = mix(c00, c10, fract_pos.x);\n let bottom = mix(c01, c11, fract_pos.x);\n\n return mix(top, bottom, fract_pos.y);\n}";const d="@group(0) @binding(0) var texture: texture_storage_2d<r32float, write>;\n\n@compute @workgroup_size(1)\nfn main(@builtin(global_invocation_id) id: vec3u) {\n textureStore(texture, id.xy, vec4f(-3.402823466e+38));\n}";const m="@group(0) @binding(0) var texture: texture_storage_2d<rgba32float, write>;\n\n@compute @workgroup_size(1)\nfn main(@builtin(global_invocation_id) id: vec3u) {\n textureStore(texture, id.xy, vec4f(-3.402823466e+38));\n}";let b,D,S,w,v,k,x,N,U,G,M,R,F;const L={buffer:null};let z,q=[];function J(A){q.push(A)}function O(){q.forEach((A=>A.destroy())),q=[]}function K(A,e){L.buffer=A.createBuffer({label:"uniforms",size:64,usage:GPUBufferUsage.UNIFORM|GPUBufferUsage.COPY_DST}),z=A.createBuffer({label:"uniforms",size:64,usage:GPUBufferUsage.UNIFORM|GPUBufferUsage.COPY_DST}),b=function(A,e){const t=A.createShaderModule({label:"draw triangle module",code:i}),r=A.createRenderPipeline({label:"draw triangle pipeline",layout:"auto",vertex:{module:t,entryPoint:"vs",buffers:[{arrayStride:4*n,stepMode:"instance",attributes:[{shaderLocation:0,offset:0,format:"float32x4"},{shaderLocation:1,offset:16,format:"float32x4"},{shaderLocation:2,offset:32,format:"float32x4"},{shaderLocation:3,offset:48,format:"unorm8x4"},{shaderLocation:4,offset:52,format:"float32x3"}]}]},fragment:{module:t,entryPoint:"fs",targets:[{format:e,blend:{color:{srcFactor:"one",dstFactor:"one-minus-src-alpha"},alpha:{srcFactor:"one",dstFactor:"one-minus-src-alpha"}}}]},multisample:{count:4}}),s=A.createBindGroup({layout:r.getBindGroupLayout(0),entries:[{binding:0,resource:{buffer:L.buffer}}]});return function(e,t){const i=t.byteLength/(4*n),a=A.createBuffer({label:"draw triangle - vertex buffer",size:t.byteLength,usage:GPUBufferUsage.VERTEX|GPUBufferUsage.COPY_DST});A.queue.writeBuffer(a,0,t),J(a),e.setPipeline(r),e.setVertexBuffer(0,a),e.setBindGroup(0,s),e.draw(3,i)}}(A,e),D=function(A,e){const t=A.createShaderModule({label:"blur shader module",code:r.replace("{presentationFormat}",e)}),i=A.createComputePipeline({layout:"auto",compute:{module:t,entryPoint:"main"}}),n=A.createSampler({magFilter:"linear",minFilter:"linear"});return function(e,t,r,o,g,I,Q){const C=A.createBuffer({size:16,usage:GPUBufferUsage.COPY_DST|GPUBufferUsage.UNIFORM}),c=A.createBuffer({size:16,usage:GPUBufferUsage.COPY_DST|GPUBufferUsage.UNIFORM}),B=[A.createTexture({label:"draw blur swap texture",size:{width:t.width,height:t.height},format:t.format,usage:GPUTextureUsage.STORAGE_BINDING|GPUTextureUsage.TEXTURE_BINDING}),t],l=A.createBindGroup({layout:i.getBindGroupLayout(0),entries:[{binding:0,resource:n},{binding:1,resource:{buffer:C}},{binding:2,resource:B[1].createView()},{binding:3,resource:B[0].createView()}]}),u=A.createBindGroup({layout:i.getBindGroupLayout(0),entries:[{binding:0,resource:n},{binding:1,resource:{buffer:c}},{binding:2,resource:B[0].createView()},{binding:3,resource:B[1].createView()}]}),E=Math.max(1,s-(o-1)),f=Math.max(1,s-(g-1)),h=new DataView(new ArrayBuffer(16));h.setInt32(0,o,!0),h.setUint32(4,E,!0),h.setFloat32(8,I,!0),h.setUint32(12,0,!0);const p=new DataView(new ArrayBuffer(16));p.setInt32(0,g,!0),p.setUint32(4,f,!0),p.setFloat32(8,Q,!0),p.setUint32(12,1,!0),A.queue.writeBuffer(C,0,h),A.queue.writeBuffer(c,0,p);const y=e.beginComputePass({label:"blur-pass"});y.setPipeline(i);for(let A=0;A<r;++A)y.setBindGroup(0,l),y.dispatchWorkgroups(Math.ceil(t.width/E),Math.ceil(t.height/a[1])),y.setBindGroup(0,u),y.dispatchWorkgroups(Math.ceil(t.height/f),Math.ceil(t.width/a[1]));y.end(),J(B[0]),J(C),J(c)}}(A,e),S=function(A,e){const t=A.createShaderModule({label:"draw texture module",code:o}),i=A.createSampler({minFilter:"linear",magFilter:"linear"}),n=A.createRenderPipeline({label:"draw texture pipeline",layout:"auto",vertex:{module:t,entryPoint:"vs",buffers:[{arrayStride:g,attributes:[{shaderLocation:0,offset:0,format:"float32x4"}]}]},fragment:{module:t,entryPoint:"fs",targets:[{format:e,blend:{color:{srcFactor:"one",dstFactor:"one-minus-src-alpha"},alpha:{srcFactor:"one",dstFactor:"one-minus-src-alpha"}}}]},multisample:{count:4}}),r=new WeakMap;return function(e,t,s){const a=t.byteLength/g,o=A.createBuffer({label:"draw texture - vertex buffer",size:t.byteLength,usage:GPUBufferUsage.VERTEX|GPUBufferUsage.COPY_DST});A.queue.writeBuffer(o,0,t);let I=r.get(s);I||(I=A.createBindGroup({layout:n.getBindGroupLayout(0),entries:[{binding:0,resource:{buffer:L.buffer}},{binding:1,resource:i},{binding:2,resource:s.createView()}]}),r.set(s,I)),e.setPipeline(n),e.setVertexBuffer(0,o),e.setBindGroup(0,I),e.draw(a)}}(A,e),w=function(A,e){const t=A.createShaderModule({label:"pick texture module",code:I}),i=A.createSampler({minFilter:"linear",magFilter:"linear"}),n=A.createRenderPipeline({label:"pick texture pipeline",layout:"auto",vertex:{module:t,entryPoint:"vs",buffers:[{arrayStride:Q,attributes:[{shaderLocation:0,offset:0,format:"float32x4"},{shaderLocation:1,offset:16,format:"uint32x4"}]}]},fragment:{module:t,entryPoint:"fs",targets:[{format:"rgba32uint"}]}}),r=new WeakMap;return function(t,s,a){const o=s.byteLength/Q,g=A.createBuffer({label:"pick texture - vertex buffer",size:s.byteLength,usage:GPUBufferUsage.VERTEX|GPUBufferUsage.COPY_DST});A.queue.writeBuffer(g,0,s);let I=r.get(a);I||(I=A.createBindGroup({layout:n.getBindGroupLayout(0),entries:[{binding:0,resource:{buffer:e}},{binding:1,resource:i},{binding:2,resource:a.createView()}]}),r.set(a,I)),t.setPipeline(n),t.setVertexBuffer(0,g),t.setBindGroup(0,I),t.draw(o)}}(A,z),v=function(A,e){const t=A.createShaderModule({label:"pick triangle module",code:C}),i=A.createRenderPipeline({label:"pick triangle pipeline",layout:"auto",vertex:{module:t,entryPoint:"vs",buffers:[{arrayStride:4*c,stepMode:"instance",attributes:[{shaderLocation:0,offset:0,format:"float32x4"},{shaderLocation:1,offset:16,format:"float32x4"},{shaderLocation:2,offset:32,format:"float32x4"},{shaderLocation:3,offset:48,format:"uint32x4"},{shaderLocation:4,offset:64,format:"float32x3"}]}]},fragment:{module:t,entryPoint:"fs",targets:[{format:"rgba32uint"}]}});let n=null;return function(t,r){const s=r.byteLength/(4*c),a=A.createBuffer({label:"pick triangle vertex buffer vertices",size:r.byteLength,usage:GPUBufferUsage.VERTEX|GPUBufferUsage.COPY_DST});A.queue.writeBuffer(a,0,r),n||(n=A.createBindGroup({layout:i.getBindGroupLayout(0),entries:[{binding:0,resource:{buffer:e}}]})),t.setPipeline(i),t.setVertexBuffer(0,a),t.setBindGroup(0,n),t.draw(3,s)}}(A,z),k=l(A,e,u,8),x=l(A,e,E,88),N=l(A,e,f,88),U=function(A,e){const t=A.createShaderModule({label:"pickShape shader",code:h}),i=A.createRenderPipeline({label:"pickShape pipeline",layout:"auto",vertex:{module:t,entryPoint:"vs",buffers:[{arrayStride:32,attributes:[{shaderLocation:0,offset:0,format:"float32x4"},{shaderLocation:1,offset:16,format:"uint32x4"}]}]},fragment:{module:t,entryPoint:"fs",targets:[{format:"rgba32uint"}]}});return function(t,n,r,s){const a=n.byteLength/32,o=A.createBuffer({label:"drawShape uniforms",size:r.byteLength,usage:GPUBufferUsage.UNIFORM|GPUBufferUsage.COPY_DST});A.queue.writeBuffer(o,0,r),J(o);const g=A.createBuffer({label:"pick texture - vertex buffer",size:n.byteLength,usage:GPUBufferUsage.VERTEX|GPUBufferUsage.COPY_DST});A.queue.writeBuffer(g,0,n),J(g);const I=A.createBindGroup({layout:i.getBindGroupLayout(0),entries:[{binding:0,resource:{buffer:e}},{binding:1,resource:{buffer:o}},{binding:2,resource:s.createView()}]});t.setPipeline(i),t.setVertexBuffer(0,g),t.setBindGroup(0,I),t.draw(a)}}(A,z),G=function(A){const e=A.createShaderModule({label:"computeShape shader",code:p}),t=A.createComputePipeline({label:"computeShape pipeline",layout:"auto",compute:{module:e}});return function(e,i,n){const r=A.createBuffer({label:"computeShape curves buffer",size:i.byteLength,usage:GPUBufferUsage.STORAGE|GPUBufferUsage.COPY_DST});A.queue.writeBuffer(r,0,i),J(r),e.setPipeline(t);const s=A.createBindGroup({layout:t.getBindGroupLayout(0),entries:[{binding:0,resource:n.createView()},{binding:1,resource:{buffer:r}}]});e.setBindGroup(0,s),e.dispatchWorkgroups(n.width,n.height)}}(A),M=function(A){const e=A.createShaderModule({label:"combineSdf shader",code:y}),t=A.createComputePipeline({label:"combineSdf pipeline",layout:"auto",compute:{module:e}});return function(e,i,n,r,s){const a=A.createBuffer({label:"combine sdf uniform buffer",size:s.byteLength,usage:GPUBufferUsage.UNIFORM|GPUBufferUsage.COPY_DST});A.queue.writeBuffer(a,0,s),J(a),e.setPipeline(t);const o=A.createBindGroup({layout:t.getBindGroupLayout(0),entries:[{binding:0,resource:i.createView()},{binding:1,resource:n.createView()},{binding:2,resource:r.createView()},{binding:3,resource:{buffer:a}}]});e.setBindGroup(0,o);const g=s.getFloat32(8,!0),I=s.getFloat32(12,!0);e.dispatchWorkgroups(g,I)}}(A),R=function(A){const e=A.createShaderModule({label:"fill texture with max float shader module",code:d}),t=A.createComputePipeline({layout:"auto",compute:{module:e}});return function(e,i){const n=A.createBindGroup({layout:t.getBindGroupLayout(0),entries:[{binding:0,resource:i.createView()}]});e.setPipeline(t),e.setBindGroup(0,n),e.dispatchWorkgroups(i.width,i.height)}}(A),F=function(A){const e=A.createShaderModule({label:"fill texture with max float shader module",code:m}),t=A.createComputePipeline({layout:"auto",compute:{module:e}});return function(e,i){const n=A.createBindGroup({layout:t.getBindGroupLayout(0),entries:[{binding:0,resource:i.createView()}]});e.setPipeline(t),e.setBindGroup(0,n),e.dispatchWorkgroups(i.width,i.height)}}(A)}},3438:(A,e,t)=>{t.a(A,(async(A,i)=>{try{t.d(e,{w:()=>Q,z:()=>C});var n=t(688),r=t(2842),s=t(2633),a=t(4302),o=t(238),g=A([s,a]);[s,a]=g.then?(await g)():g;let I=()=>{throw new Error("Cache not started")};function Q(){I()}function C(A,e,t,i,g,Q){const C=i.max_x-i.min_x,c=i.max_y-i.min_y,B=a.yE(t,g,Q),l={label:"texture cache pass",colorAttachments:[{view:(0,o.A)(A,g,Q,B.format).createView(),resolveTarget:B.createView(),loadOp:"clear",storeOp:"store"}]},u=e.beginRenderPass(l);(0,s.H)(u);const E=A.createBuffer({label:"texture cache - matrix buffer",size:64,usage:GPUBufferUsage.UNIFORM|GPUBufferUsage.COPY_DST}),f=r.A.ortho(i.min_x,i.min_x+C,i.min_y+c,i.min_y,1,-1);A.queue.writeBuffer(E,0,f);const h=n.IP.buffer;n.IP.buffer=E,I=()=>{u.end(),n.IP.buffer=h,(0,n.nj)(E)},a.Uw(t,B)}i()}catch(c){i(c)}}))},5270:(A,e,t)=>{t.a(A,(async(A,i)=>{try{t.d(e,{Al:()=>B,DP:()=>l,rU:()=>u});var n=t(191),r=t(945),s=t(5671),a=t(4302),o=t(9146),g=A([a,o]);[a,o]=g.then?(await g)():g;var I=function(A,e,t,i){return new(t||(t=Promise))((function(n,r){function s(A){try{o(i.next(A))}catch(A){r(A)}}function a(A){try{o(i.throw(A))}catch(A){r(A)}}function o(A){var e;A.done?n(A.value):(e=A.value,e instanceof t?e:new t((function(A){A(e)}))).then(s,a)}o((i=i.apply(A,e||[])).next())}))};const Q=250,C=10;let c;function B(){return I(this,void 0,void 0,(function*(){try{const A=fetch(n).then((A=>A.arrayBuffer()));c=r.Ay.parse(yield A)}catch(A){console.error("Failed to load font",A)}}))}function l(A,e){const t=String.fromCharCode(A),i=String.fromCharCode(e),n=c.charToGlyph(t),r=c.charToGlyph(i);return c.getKerningValue(n,r)/c.unitsPerEm}function u(A,e){var t;const i=String.fromCharCode(e),n=c.getPath(i,0,0,1),r=n.toPathData(5),g=(0,s.A)(r),I=[],{x1:B,x2:l,y1:u,y2:E}=n.getBoundingBox();g.forEach((A=>{for(let e=0;e<A.length;e+=3){const t=A.slice(e,e+4).map((A=>({x:A.x-B,y:-(A.y-E)})));I.push(...t)}I.splice(-1)}));let f=l-B;if(0===f){f=(null!==(t=c.charToGlyph(" ").advanceWidth)&&void 0!==t?t:Q)/c.unitsPerEm}e==C&&(f=0);const h=new o.V9({x:B,y:-E,width:f,height:-u- -E,sdf_texture_id:I.length>0?a.CW():null});return h.setPaths(I),h}i()}catch(E){i(E)}}))},4461:(A,e,t)=>{t.a(A,(async(A,i)=>{try{t.d(e,{A:()=>a});var n=t(2842),r=t(4109),s=A([r]);function a(A){const e=n.A.ortho(0,A.width,0,A.height,1,-1),t=n.A.translate(e,[r.UI.x,r.UI.y,0]);return n.A.scale(t,[r.UI.zoom,r.UI.zoom,1])}r=(s.then?(await s)():s)[0],i()}catch(o){i(o)}}))},9753:(A,e,t)=>{t.d(e,{A:()=>s,L:()=>r});var i=t(238);let n;function r(){null==n||n.destroy(),n=void 0}function s(A,e){const t=A.getCurrentTexture();n=(0,i.A)(e,t.width,t.height,t.format,n);return{label:"our render to canvas renderPass",colorAttachments:[{view:n.createView({label:"multisample texture view"}),resolveTarget:t.createView({label:"canvas texture view"}),clearValue:[0,0,0,1],loadOp:"clear",storeOp:"store"}]}}},238:(A,e,t)=>{function i(A,e,t,i,n){return n&&n.width===e&&n.height===t||(null==n||n.destroy(),n=A.createTexture({label:"multisample texture",format:i,usage:GPUTextureUsage.RENDER_ATTACHMENT,size:[e,t],sampleCount:4})),n}t.d(e,{A:()=>i})},8156:(A,e,t)=>{t.a(A,(async(A,i)=>{try{t.d(e,{A:()=>m,b:()=>E.b});var n=t(214),r=t(1911),s=t(688),a=t(2633),o=t(9146),g=t(4109),I=t(7846),Q=t(4302),C=t(3012),c=t(7608),B=t(9104),l=t(8513),u=t(5270),E=t(1613),f=t(9753),h=t(1317),p=A([a,o,g,Q,c,l,u,h]);[a,o,g,Q,c,l,u,h]=p.then?(await p)():p;var y=function(A,e,t,i){return new(t||(t=Promise))((function(n,r){function s(A){try{o(i.next(A))}catch(A){r(A)}}function a(A){try{o(i.throw(A))}catch(A){r(A)}}function o(A){var e;A.done?n(A.value):(e=A.value,e instanceof t?e:new t((function(A){A(e)}))).then(s,a)}o((i=i.apply(A,e||[])).next())}))};const d=0;function m(A,e,t,i,B,E,p,m,S){return y(this,void 0,void 0,(function*(){let w=0,v=!1,k={width:A,height:e,assets:[]};function x(){p(w>0||v)}let N=!1;const{device:U,presentationFormat:G,storageFormat:M}=yield(0,r.A)();o.Ws(k.width,k.height,U.limits.maxTextureDimension2D,U.limits.maxBufferSize),Q.Ts(U,G,M,(A=>{w=A,x(),q()}));const R=t.getContext("webgpu");if(!R)throw Error("WebGPU from canvas needs to be always provided");function F(){o.a3(t.width/(t.clientWidth*g.UI.zoom))}R.configure({device:U,format:G});let L=!1;(0,n.A)(t,U,(()=>{L||((0,h.A)(k.width,k.height,"fit",t,30),L=!0),F()})),(0,s.Ay)(U,G),(0,g.Ay)(t,F,(()=>{v=!0,x()}));const z=(0,C.A)((()=>{N||w>0||(0,c.A)(U,G,t,k.width,k.height,t.width/t.clientWidth,K,m)}),5e3),q=()=>{0===w&&z()};function J(A){const e=k.assets.map((A=>{var e;if("img"in A&&A.img){const e=A.img;return{id:e.id,texture_id:e.texture_id,bounds:b([...e.bounds]),url:Q.ID(e.texture_id)}}if("shape"in A&&A.shape){const e=A.shape;if(!e.bounds)throw Error("Shape bounds are missing in asset with id: "+e.id);return{id:e.id,paths:[...e.paths].map((A=>[...A].map((A=>({x:A.x,y:A.y}))))),bounds:b([...e.bounds]),props:D(e.props),sdf_texture_id:e.sdf_texture_id,cache_texture_id:e.cache_texture_id}}if("text"in A&&A.text)return{id:A.text.id,content:null!==(e=A.text.content)&&void 0!==e?e:"",bounds:b([...A.text.bounds]),font_size:A.text.font_size,props:D(A.text.props)};throw Error("Unknown asset type")}));B(Object.assign(Object.assign({},k),{assets:e}),A),A&&q()}o.qN(((A,e)=>{k={width:A.width,height:A.height,assets:[...A.assets]},J(e)})),u.Al(),o.JQ((A=>E([...A]))),o.Zr(Q.CW,Q.qD),o.el(l.sS,l.b8,l.le,l.c6,u.rU,u.DP),o.Mv(S);const{stopRAF:O,capturePreview:K}=(0,a.A)(t,R,U,(()=>{v=!1,x()}));return{addImage:A=>{const e=Q.WQ(A,(({width:t,height:n,isNewTexture:r,shapeAssets:s,error:a})=>{if(a)throw a;if(s)return void o.x7(Object.assign(Object.assign({},k),{assets:[...k.assets,...s]}),!0);const g={img:{id:d,bounds:(0,I.A)(t,n,k.width,k.height),texture_id:e}};o.x7(Object.assign(Object.assign({},k),{assets:[...k.assets,g]}),!0),r&&i(A,(A=>{Q.Kg(e,A),J(!0)}))}))},removeAsset:o.Vx,setSnapshot:(A,e)=>y(this,void 0,void 0,(function*(){const t=yield Promise.allSettled(A.assets.map((A=>new Promise(((e,t)=>{if("paths"in A)return e({shape:{id:A.id||d,paths:A.paths,props:A.props,bounds:A.bounds,sdf_texture_id:A.sdf_texture_id||Q.CW(),cache_texture_id:A.cache_texture_id||null}});if("content"in A)return e({text:{id:A.id||d,content:A.content,bounds:A.bounds,font_size:A.font_size,props:A.props}});if(A.bounds)return e({img:{id:A.id||d,bounds:A.bounds,texture_id:A.texture_id||Q.WQ(A.url)}});const n=Q.WQ(A.url,(({width:r,height:s,isNewTexture:a,shapeAssets:o,error:g})=>g?t(g):o?e(o):(a&&i(A.url,(A=>{Q.Kg(n,A),J(!0)})),e({img:{id:d,bounds:(0,I.A)(r,s,k.width,k.height),texture_id:n}}))))})))));t.filter((A=>"rejected"===A.status)).forEach((A=>{console.error(A.reason)}));const n=t.filter((A=>"fulfilled"===A.status)).flatMap((A=>Array.isArray(A.value)?[...A.value]:[A.value]));o.x7(Object.assign(Object.assign({},A),{assets:n}),e),q()})),destroy:()=>{N=!0,O(),o.ZE(),R.unconfigure(),(0,f.L)(),U.destroy()},setTool:A=>{S(A),o.tE(A)},toggleSharedTextEffects:o.$u,updateAssetProps:o.Er,updateAssetBounds:o.Hg}}))}function b(A){return A.map((A=>({x:A.x,y:A.y,u:A.u,v:A.v})))}function D(A){var e;return{sdf_effects:[...A.sdf_effects].map((A=>({dist_start:A.dist_start,dist_end:A.dist_end,fill:(0,B.A)(A.fill)}))),filter:(null===(e=A.filter)||void 0===e?void 0:e.gaussianBlur)?{gaussianBlur:{x:A.filter.gaussianBlur.x,y:A.filter.gaussianBlur.y}}:null,opacity:A.opacity}}i()}catch(S){i(S)}}))},9105:(A,e,t)=>{function i(A,e,t,i,n){const r=A.createTexture({label:"manually crafted texture",size:[i,n],format:e,usage:GPUTextureUsage.TEXTURE_BINDING|GPUTextureUsage.COPY_DST});return A.queue.writeTexture({texture:r},t,{bytesPerRow:4*i},{width:i,height:n}),r}function n(A,e){const t=[255,0,0,255],n=[255,255,0,255];return i(A,e,new Uint8Array([[0,0,255,255],t,t,t,t,t,n,n,n,t,t,n,t,t,t,t,n,n,t,t,t,n,t,t,t,t,n,t,t,t,t,t,t,t,t].flat()),5,7)}function r(A,e){const t=[0,0,0,255],n=[255,0,0,255];return i(A,e,new Uint8Array([t,t,t,t,t,t,n,t,n,t,t,n,t,n,t,t,t,n,t,t,t,n,t,n,t,t,n,t,n,t,t,t,t,t,t].flat()),5,7)}t.d(e,{o:()=>r,s:()=>n})},4109:(A,e,t)=>{t.a(A,(async(A,i)=>{try{t.d(e,{Ay:()=>B,UI:()=>C,Wn:()=>c});var n=t(9146),r=t(6253),s=t(8513),a=A([n,s]);[n,s]=a.then?(await a)():a;const g=-1;var o;!function(A){A[A.Pan=0]="Pan",A[A.Zoom=1]="Zoom",A[A.None=2]="None"}(o||(o={}));let I=o.None,Q=null;const C={x:0,y:0,zoom:1},c={x:0,y:0,afterPickEventsQueue:[]};function B(A,e,t){function i(){return[(c.x-C.x)/C.zoom,(A.height-c.y-C.y)/C.zoom]}function a(e){const t=A.getBoundingClientRect(),i=A.width/t.width;c.x=(e.clientX-t.left)*i,c.y=(e.clientY-t.top)*i}function B(t,i,n){const s=C.zoom;C.zoom=(0,r.A)(C.zoom+t,.1,20),e();const a=C.zoom/s;C.x=i-(i-C.x)*a;const o=A.height-n;C.y=o-(o-C.y)*a}function l(t){const i=C.zoom;C.zoom=(0,r.A)(C.zoom-.005*t,.1,20),e();const n=C.zoom/i;C.x=c.x-(c.x-C.x)*n;const s=A.height-c.y;C.y=s-(s-C.y)*n}c.x=g,c.y=g,A.addEventListener("mouseleave",(()=>{t(),A.style.cursor="default";const e=()=>{c.x=g,c.y=g,n.YF()};c.afterPickEventsQueue.length>0?c.afterPickEventsQueue.push({requireNewPick:!1,cb:e}):e()})),A.addEventListener("dblclick",(()=>{n.kl()})),A.addEventListener("mousemove",(A=>{if(Q)return a(A),C.x=c.x-Q.x,void(C.y=-(c.y-Q.y));t();const e=()=>{a(A),n.us(...i())};c.afterPickEventsQueue.length>0?c.afterPickEventsQueue.push({requireNewPick:!1,cb:e}):e()})),A.addEventListener("mousedown",(e=>{if(I===o.Pan)return a(e),Q={x:c.x-C.x,y:c.y+C.y},void(A.style.cursor="grabbing");Q=null,t(),a(e),c.afterPickEventsQueue.push({requireNewPick:!0,cb:n.po.bind(null,...i())})})),A.addEventListener("mouseup",(()=>{I=o.None,Q=null,A.style.cursor="default",t(),c.afterPickEventsQueue.length>0?c.afterPickEventsQueue.push({requireNewPick:!1,cb:n.cV}):n.cV()})),A.addEventListener("wheel",(A=>{if(a(A),A.preventDefault(),I===o.Zoom){l(Math.abs(A.deltaY)>Math.abs(A.deltaX)?A.deltaY:-A.deltaX)}else A.ctrlKey?l(A.deltaY*C.zoom):(C.x-=A.deltaX,C.y+=A.deltaY)})),document.body.addEventListener("keydown",(e=>{const t=e.ctrlKey||"AltLeft"===e.code||"AltRight"===e.code;if(!s.Ol()||t)switch(e.key){case" ":e.preventDefault(),I!==o.Pan&&(A.style.cursor="grab",I=o.Pan);break;case"Alt":e.preventDefault(),I=o.Zoom;break;case"Escape":e.preventDefault(),n.PT();break;case"=":if(e.ctrlKey||e.metaKey){e.preventDefault();B(.1,c.x!==g?c.x:A.width/2,c.y!==g?c.y:A.height/2)}break;case"-":if(e.ctrlKey||e.metaKey||e.shiftKey){e.preventDefault();B(-.1,c.x!==g?c.x:A.width/2,c.y!==g?c.y:A.height/2)}}})),document.body.addEventListener("keyup",(e=>{" "!==e.key&&"Alt"!==e.key||(I=o.None)," "===e.key&&null===Q&&(A.style.cursor="default")}))}i()}catch(l){i(l)}}))},2633:(A,e,t)=>{t.a(A,(async(A,i)=>{try{t.d(e,{A:()=>l,H:()=>B});var n=t(9753),r=t(688),s=t(4461),a=t(2872),o=t(9146),g=t(4109),I=t(4302),Q=t(3438),C=A([s,a,o,g,I,Q]);let c;function B(A){c=A}function l(A,e,t,i){let C,B,l;const u=new a.A(t);o.XO(I.Eb,((A,e,i,n)=>{(0,Q.z)(t,l,A,e,i,n)}),Q.w),o.wV({draw_texture:(A,e)=>{(0,r._J)(c,A.dataView,I.bS(e))},draw_triangle:A=>{const e=A["*"].dataView;(0,r.D4)(c,e)},compute_shape:(A,e,t,i)=>{const n=A["*"].dataView;I.yo(i,e,t),(0,r.DS)(B,n,I.Mc(i))},clear_sdf:(A,e,t,i)=>{I.yo(A,t,i),I.yo(e,t,i),(0,r.RW)(B,I.Mc(A)),(0,r.ym)(B,I.Mc(e))},combine_sdf:(A,e,t,i)=>{(0,r.bB)(B,I.Mc(A),I.Mc(e),I.Mc(t),i.dataView)},draw_blur:(A,e,t,i,n,s)=>{(0,r.oQ)(l,I.Mc(A),e,t,i,n,s)},draw_shape:(A,e,t)=>{let i,n;if("linear"in e&&e.linear)i=r.Jl,n=e.linear;else if("radial"in e&&e.radial)i=r.np,n=e.radial;else{if(!("solid"in e)||!e.solid)throw Error("Unsupported shape uniform type");i=r.H,n=e.solid}const s=A["*"].dataView;i(c,I.Mc(t),s,n.dataView)},pick_texture:(A,e)=>{const t=A["*"].dataView;(0,r.Fh)(C,t,I.bS(e))},pick_shape:(A,e,t)=>{(0,r.Zo)(C,A["*"].dataView,e.dataView,I.Mc(t))},pick_triangle:A=>{const e=A["*"].dataView;(0,r.Q3)(C,e)}});let E=0;const f={x:0,y:0};function h(a,I){o.io(a),l=t.createCommandEncoder({label:"draw canvas main encoder"}),B=l.beginComputePass(),o.Gl(),B.end(),o.Wp();const Q=(0,n.A)(I||e,t);c=l.beginRenderPass(Q);const p=(0,s.A)((null==I?void 0:I.canvas)||A);if(t.queue.writeBuffer(r.IP.buffer,0,p),o.LI(!!I),c.end(),I){const A=l.finish();return t.queue.submit([A]),void(0,r.zK)()}0===g.Wn.afterPickEventsQueue.length&&i();if(g.Wn.afterPickEventsQueue.length>0||f.x!==g.Wn.x||f.y!==g.Wn.y){f.x=g.Wn.x,f.y=g.Wn.y;const e=u.createMatrix(A,p);t.queue.writeBuffer(r.R9,0,e);const i=u.startPicking(l);C=i.pass,o.aO(),i.end()}const y=l.finish();t.queue.submit([y]),(0,r.zK)(),u.asyncPick(),E=requestAnimationFrame(h)}function p(){cancelAnimationFrame(E)}l=t.createCommandEncoder({label:"prerender ui elements SDF"}),B=l.beginComputePass(),o.wH(),B.end(),t.queue.submit([l.finish()]),E=requestAnimationFrame(h);return{stopRAF:p,capturePreview:(A,e)=>{p(),h(performance.now(),A),e(),E=requestAnimationFrame(h)}}}[s,a,o,g,I,Q]=C.then?(await C)():C,i()}catch(u){i(u)}}))},9104:(A,e,t)=>{function i(A){if("solid"in A&&A.solid)return{solid:[...A.solid]};if("linear"in A&&A.linear)return{linear:{start:{x:A.linear.start.x,y:A.linear.start.y},end:{x:A.linear.end.x,y:A.linear.end.y},stops:[...A.linear.stops].map((A=>({offset:A.offset,color:[...A.color]})))}};if("radial"in A&&A.radial)return{radial:{center:{x:A.radial.center.x,y:A.radial.center.y},destination:{x:A.radial.destination.x,y:A.radial.destination.y},radius_ratio:A.radial.radius_ratio,stops:[...A.radial.stops].map((A=>({offset:A.offset,color:[...A.color]})))}};throw Error("Unknown fill type")}t.d(e,{A:()=>i})},6479:(A,e,t)=>{t.a(A,(async(A,i)=>{try{t.d(e,{A:()=>o});var n=t(9146),r=t(4302),s=t(8451),a=A([n,r]);function o(A,e,t){if(!t){const e=new s.I;A.forEach((A=>{e.addBox(A.boundingBox)})),t=e.max_y}A.forEach((({paths:A})=>{const i=A.map((A=>A.map((A=>({x:A.x,y:t-A.y})))));n.Iq(e,i,r.CW())}))}[n,r]=a.then?(await a)():a,i()}catch(g){i(g)}}))},8451:(A,e,t)=>{t.d(e,{I:()=>n,U:()=>o});var i=t(8103);class n{constructor(A){this.min_x=1/0,this.min_y=1/0,this.max_x=-1/0,this.max_y=-1/0,A&&A.forEach((A=>this.addPoint(A)))}addPoint(A){this.min_x=Math.min(this.min_x,A.x),this.min_y=Math.min(this.min_y,A.y),this.max_x=Math.max(this.max_x,A.x),this.max_y=Math.max(this.max_y,A.y)}addBox(A){this.min_x=Math.min(this.min_x,A.min_x),this.min_y=Math.min(this.min_y,A.min_y),this.max_x=Math.max(this.max_x,A.max_x),this.max_y=Math.max(this.max_y,A.max_y)}}function r(A,e,t){const i=1e-10;if(Math.abs(A)<i)return Math.abs(e)<i?[]:[-t/e];const n=e*e-4*A*t;if(n<-1e-10)return[];if(Math.abs(n)<i)return[-e/(2*A)];const r=Math.sqrt(n);return[(-e+r)/(2*A),(-e-r)/(2*A)]}function s(A,e,t,i,n){const r=A*A,s=1-A,a=s*s;return e*(a*s)+3*t*A*a+3*i*r*s+n*(r*A)}function a(A,e,t,i){let a=Math.min(A.x,i.x),o=Math.max(A.x,i.x),g=Math.min(A.y,i.y),I=Math.max(A.y,i.y);r(3*(-A.x+3*e.x-3*t.x+i.x),6*(A.x-2*e.x+t.x),3*(-A.x+e.x)).forEach((n=>{if(n>0&&n<1){const r=s(n,A.x,e.x,t.x,i.x);a=Math.min(a,r),o=Math.max(o,r)}}));r(3*(-A.y+3*e.y-3*t.y+i.y),6*(A.y-2*e.y+t.y),3*(-A.y+e.y)).forEach((n=>{if(n>0&&n<1){const r=s(n,A.y,e.y,t.y,i.y);g=Math.min(g,r),I=Math.max(I,r)}}));const Q=new n;return Q.min_x=a,Q.min_y=g,Q.max_x=o,Q.max_y=I,Q}function o(A){const e=new n;return A.forEach((A=>{const t=function(A){if(A.length<4)return new n(A);const e=A.length%3==0,t=new n,r=Math.floor((A.length-1)/3);for(let e=0;e<r;e++){const n=A[3*e],r=A[3*e+3],s=a(n,(0,i.te)(A[3*e+1])?n:A[3*e+1],(0,i.te)(A[3*e+2])?r:A[3*e+2],r);t.addBox(s)}if(e&&A.length>1){const e=A[A.length-3],n=A[0],r=a(e,(0,i.te)(A[A.length-2])?e:A[A.length-2],(0,i.te)(A[A.length-1])?n:A[A.length-1],n);t.addBox(r)}return t}(A);e.addBox(t)})),e}},678:(A,e,t)=>{t.d(e,{A:()=>o});var i=t(8451),n=t(8103);var r=t(8190);function s(A,e,t){const[i,n,r,s,a,o]=t;return{x:i*A+r*e+a,y:n*A+s*e+o}}function a(A,e,t=1){if("linear-gradient"!==A.type&&"radial-gradient"!==A.type)return console.error("toRuntimeGradient receive definition which is not a gradient!"),null;if(!A.stops)return console.error("Gradient without stops!",A),null;const i=A.stops.map((A=>Object.assign(Object.assign({},A),{color:[A.color[0]*t,A.color[1]*t,A.color[2]*t,A.color[3]*t]}))),r=A.gradientTransform||n.Pb;if("linear-gradient"===A.type){const t=(0,n.fV)(A.x1),a=(0,n.fV)(A.y1),o=(0,n.fV)(A.x2),g=(0,n.fV)(A.y2),I=s(t,a,r),Q=s(o,g,r),C=e.max_x-e.min_x,c=e.max_y-e.min_y;return I.x=(I.x-e.min_x)/C,I.y=1-(I.y-e.min_y)/c,Q.x=(Q.x-e.min_x)/C,Q.y=1-(Q.y-e.min_y)/c,{linear:{stops:i,start:I,end:Q}}}if("radial-gradient"===A.type){const t=(0,n.fV)(A.cx,.5),a=(0,n.fV)(A.cy,.5),o=(0,n.fV)(A.r,.5),g=e.max_x-e.min_x,I=e.max_y-e.min_y,Q=s(t,a,r),C=s(t+o,a,r),c=s(t,a+o,r),B=A=>({x:(A.x-e.min_x)/Math.max(g,1e-8),y:1-(A.y-e.min_y)/Math.max(I,1e-8)}),l=B(Q),u=B(C),E=B(c),f={x:u.x-l.x,y:u.y-l.y},h={x:E.x-l.x,y:E.y-l.y},{destination:p,ratio:y}=function(A,e,t){const i=Math.hypot(e.x,e.y),n=Math.hypot(t.x,t.y);if(i<1e-8||n<1e-8){const t=Math.max(i,1e-8),r=i>1e-8?n/i:1;return{destination:{x:A.x+(e.x||1)*(t/(i||1)),y:A.y+(e.y||0)*(t/(i||1))},ratio:isFinite(r)?r:1}}const r=e.x*e.x+t.x*t.x,s=e.x*e.y+t.x*t.y,a=e.y*e.y+t.y*t.y,o=r+a,g=r*a-s*s,I=Math.sqrt(Math.max(0,o*o*.25-g)),Q=.5*o+I,C=.5*o-I,c=Math.sqrt(Math.max(Q,0)),B=Math.sqrt(Math.max(C,0));let l=0,u=0;Math.abs(s)>1e-8||Math.abs(Q-r)>1e-8?Math.abs(s)>Math.abs(Q-r)?(l=1,u=(Q-r)/(s||1e-12)):(l=(s||1e-12)/(Q-r||1e-12),u=1):(l=1,u=0);const E=Math.hypot(l,u)||1;return l/=E,u/=E,{destination:{x:A.x+l*c,y:A.y+u*c},ratio:c>1e-8?B/c:1}}(l,f,h);return{radial:{stops:i,center:l,destination:p,radius_ratio:y}}}return null}function o(A,e,t=n.Pb){const g=[];if(!(0,n.nS)(A))return g;let I=t;if("properties"in A&&"object"==typeof A.properties){let t=(0,r.A)(A),o=t.paths;switch(A.tagName){case"g":I=(0,n.ae)(t.transform,I);break;case"defs":return g;case"use":if(t.href){const A=t.href.slice(1);if(A){const i=e[A];if(i){if(!i.paths)return console.error("The resolved definition of <use> has no paths!"),g;o=i.paths,t=Object.assign(Object.assign({},i),t)}}}}if(o){const A=(0,i.U)(o),r={sdf_effects:[],filter:null,opacity:1};if(t.fill){const i=(0,n.fV)(t["fill-opacity"],1),s=String(t.fill),o=s.match(/^url\(#([^)]+)\)$/);let g=null;if(o){const t=e[o[1]];if(t){const e=a(t,A,i);e&&(g=e)}}else{g={solid:(0,n.H0)(s,i)}}g&&r.sdf_effects.push({dist_start:Number.MAX_SAFE_INTEGER,dist_end:0,fill:g})}if(t["stroke-width"]){const i=String(t.stroke)||"#000",s=(0,n.fV)(t["stroke-width"],1),o=i.match(/^url\(#([^)]+)\)$/);let g=null;if(o){const t=e[o[1]];if(t){const e=a(t,A);e&&(g=e)}}else{g={solid:(0,n.H0)(i)}}g&&r.sdf_effects.push({dist_start:s/2,dist_end:-s/2,fill:g})}if(t.filter){const A=String(t.filter).match(/^url\(#([^)]+)\)$/);if(A){const t=e[A[1]];(null==t?void 0:t.stdDeviation)&&(r.filter={gaussianBlur:{x:t.stdDeviation[0],y:t.stdDeviation[1]}})}}"number"==typeof t.opacity&&(r.opacity=t.opacity),"string"==typeof t.transform&&(I=(0,n.ae)(t.transform,I));const Q=o.map((A=>A.map((A=>(0,n.te)(A)?A:s(A.x,A.y,I)))));g.push({paths:Q,props:r,boundingBox:A})}}return A.children.forEach((A=>{g.push(...o(A,e,I))})),g}},2821:(A,e,t)=>{t.d(e,{t:()=>i});const i={x:1e11,y:0}},9504:(A,e,t)=>{t.d(e,{F:()=>a,W:()=>r});var i=t(8103),n=t(8190);function r(A){const e=Object.keys(A);for(const t of e){const e=s(A,A[t]);A[t]=e}}function s(A,e,t=new Set){if(!e.href)return e;const i=String(e.href).replace("#","");if(t.has(i))return e;t.add(i);const n=A[i];if(!n)return e;const r=s(A,n,t);return(e=Object.assign(Object.assign({},r),e)).href=void 0,e.id&&(A[e.id]=e),e}function a(A,e,t=!1){if(!(0,i.nS)(A))return;const r=(0,n.A)(A);switch(A.tagName){case"linearGradient":if(!r.id)return;return void(e[r.id]=Object.assign({type:"linear-gradient"},r));case"radialGradient":if(!r.id)return;return void(e[r.id]=Object.assign({type:"radial-gradient"},r));case"path":if(t){if(!r.id)return;e[r.id]=r}return;case"filter":if(!r.id)return;return void(e[r.id]=r);case"defs":t=!0}A.children.forEach((A=>{a(A,e,t)}))}},8190:(A,e,t)=>{function i(A,e,t,i){const n=.5522847498307936,r=n*t,s=n*i;return[{x:A+t,y:e},{x:A+t,y:e+s},{x:A+r,y:e+i},{x:A,y:e+i},{x:A-r,y:e+i},{x:A-t,y:e+s},{x:A-t,y:e},{x:A-t,y:e-s},{x:A-r,y:e-i},{x:A,y:e-i},{x:A+r,y:e-i},{x:A+t,y:e-s}]}t.d(e,{A:()=>o});var n=t(5671),r=t(2821);function s(A,e,t,i){const n={x:A+t,y:e+i},s={x:A+t,y:e},a={x:A,y:e};return[{x:A,y:e+i},r.t,r.t,n,r.t,r.t,s,r.t,r.t,a,r.t,r.t]}var a=t(8103);function o(A){var e;let t=A.properties;if("string"==typeof(null===(e=A.properties)||void 0===e?void 0:e.style)){const e={};A.properties.style.split(";").forEach((A=>{const[t,i]=A.split(":");t&&i&&(e[t.trim()]=i.trim())})),t=Object.assign(Object.assign({},e),A.properties)}if(!t)return{};const r=Object.assign({},t);switch(A.tagName){case"path":r.paths=(0,n.A)(t.d),delete r.d;break;case"rect":r.paths=[s((0,a.fV)(t.x),(0,a.fV)(t.y),(0,a.fV)(t.width,1),(0,a.fV)(t.height,1))],delete r.x,delete r.y,delete r.width,delete r.height;break;case"ellipse":r.paths=[i((0,a.fV)(t.cx),(0,a.fV)(t.cy),(0,a.fV)(t.rx),(0,a.fV)(t.ry))],delete r.cx,delete r.cy,delete r.rx,delete r.ry;break;case"circle":r.paths=[i((0,a.fV)(t.cx),(0,a.fV)(t.cy),(0,a.fV)(t.r),(0,a.fV)(t.r))],delete r.cx,delete r.cy,delete r.r;break;case"radialGradient":case"linearGradient":A.children.length>0&&(r.stops=A.children.map((A=>{var e,t;if(!(0,a.nS)(A))return{offset:0,color:[0,0,0,0]};const i=o(A),n=(0,a.H0)(String(null!==(e=i["stop-color"])&&void 0!==e?e:"#000"));return n[3]=(0,a.fV)(i["stop-opacity"],1),{offset:Number(null!==(t=i.offset)&&void 0!==t?t:0),color:n}})));break;case"filter":(0,a.nS)(A.children[0])&&function(A,e){var t;if("feGaussianBlur"===e.tagName){A.type="gaussian-blur";const i=null===(t=e.properties)||void 0===t?void 0:t.stdDeviation;let n=0,r=0;if("number"==typeof i)n=i,r=i;else if("string"==typeof i){const A=i.trim().split(/[ ,]+/).filter(Boolean);A.length>=2?(n=(0,a.fV)(A[0],0),r=(0,a.fV)(A[1],0)):1===A.length&&(n=(0,a.fV)(A[0],0),r=n)}A.stdDeviation=[n,r]}}(r,A.children[0])}return"gradientTransform"in t&&(r.gradientTransform=(0,a.ae)(String(t.gradientTransform))),r}},1849:(A,e,t)=>{t.a(A,(async(A,i)=>{try{t.d(e,{A:()=>o});var n=t(8451),r=t(4302),s=A([r]);r=(s.then?(await s)():s)[0];const a=[{x:0,y:1,u:0,v:1},{x:1,y:1,u:1,v:1},{x:1,y:0,u:1,v:0},{x:0,y:0,u:0,v:0}];function o(A,e){if(!e){const t=new n.I;A.forEach((A=>{t.addBox(A.boundingBox)})),e=t.max_y}return A.map((({paths:A,props:t})=>({shape:{id:0,paths:A.map((A=>A.map((A=>({x:A.x,y:e-A.y}))))),bounds:a,props:t,sdf_texture_id:r.CW(),cache_texture_id:null}})))}i()}catch(g){i(g)}}))},5671:(A,e,t)=>{function i(A,e,t,i,n,r,s,a,o){if(0===t||0===i||A===a&&e===o)return[];const g=n*Math.PI/180,I=Math.cos(g),Q=Math.sin(g),C=(A-a)/2,c=(e-o)/2,B=I*C+Q*c,l=-Q*C+I*c;let u=(t=Math.abs(t))*t,E=(i=Math.abs(i))*i;const f=B*B,h=l*l,p=f/u+h/E;if(p>1){const A=Math.sqrt(p);u=(t*=A)*t,E=(i*=A)*i}const y=r===s?-1:1,d=Math.max(0,u*E-u*h-E*f),m=u*h+E*f,b=0===m?0:y*Math.sqrt(d/m),D=b*(t*l/i),S=b*(-i*B/t),w=I*D-Q*S+(A+a)/2,v=Q*D+I*S+(e+o)/2,k=(B-D)/t,x=(l-S)/i,N=(-B-D)/t,U=(-l-S)/i,G=Math.sqrt(k*k+x*x);let M=0===G?0:Math.acos(Math.max(-1,Math.min(1,k/G)));x<0&&(M=-M);const R=k*N+x*U,F=Math.sqrt((k*k+x*x)*(N*N+U*U));let L=0===F?0:Math.acos(Math.max(-1,Math.min(1,R/F)));k*U-x*N<0&&(L=-L),0===s&&L>0?L-=2*Math.PI:1===s&&L<0&&(L+=2*Math.PI);const z=Math.max(1,Math.ceil(Math.abs(L)/(Math.PI/2))),q=L/z,J=Math.abs(q)<1e-10?0:8/3*Math.sin(q/4)*Math.sin(q/4)/Math.sin(q/2),O=[];for(let A=0;A<z;A++){const e=M+A*q,n=M+(A+1)*q,r=Math.cos(e),s=Math.sin(e),g=Math.cos(n),C=Math.sin(n),c=t*(r-J*s),B=i*(s+J*r),l=t*(g+J*C),u=i*(C-J*g),E=t*g,f=i*C,h=w+I*c-Q*B,p=v+Q*c+I*B,y=w+I*l-Q*u,d=v+Q*l+I*u,m=A===z-1?a:w+I*E-Q*f,b=A===z-1?o:v+Q*E+I*f;O.push({cp1x:h,cp1y:p,cp2x:y,cp2y:d,x:m,y:b})}return O}t.d(e,{A:()=>r});var n=t(2821);function r(A){const e=function(A){const e=[],t=/([MmLlHhVvCcSsQqTtAaZz])\s*([^MmLlHhVvCcSsQqTtAaZz]*)/g;let i;for(;null!==(i=t.exec(A));){const A=i[1],t=i[2].trim(),n=[];if(t){const A=t.match(/-?[0-9]*\.?[0-9]+(?:[eE][-+]?[0-9]+)?/g);A&&n.push(...A.map(parseFloat))}e.push({command:A,args:n})}return e}(A),t=function(A){const e=[];let t=[],r={x:0,y:0},s={x:0,y:0},a=null,o=null;const g=()=>{t.length>0&&(e.push([...t]),t=[])};for(const{command:e,args:I}of A)switch(e.toLowerCase()){case"m":{g();const A="m"===e;for(let e=0;e<I.length;e+=2){const i={x:A?r.x+I[e]:I[e],y:A?r.y+I[e+1]:I[e+1]};0===e?(t.push(i),s=Object.assign({},i)):t.push(n.t,n.t,i),r=i}a=null,o=null;break}case"l":case"h":case"v":{const A=e!==e.toUpperCase(),i="h"===e.toLowerCase(),s="v"===e.toLowerCase();let g=0;for(;g<I.length;){let e=r.x,a=r.y;i?(e=I[g]+(A?r.x:0),g+=1):s?(a=I[g]+(A?r.y:0),g+=1):(e=I[g]+(A?r.x:0),a=I[g+1]+(A?r.y:0),g+=2);const o={x:e,y:a};t.push(n.t,n.t,o),r=o}a=null,o=null;break}case"a":{const A="a"===e;for(let e=0;e<I.length;e+=7){const s=I[e],g=I[e+1],Q=I[e+2],C=I[e+3],c=I[e+4],B={x:I[e+5]+(A?r.x:0),y:I[e+6]+(A?r.y:0)},l=i(r.x,r.y,s,g,Q,C,c,B.x,B.y);if(0===l.length)B.x===r.x&&B.y===r.y||t.push(n.t,n.t,B),r=B,a=null,o=null;else{for(const A of l)t.push({x:A.cp1x,y:A.cp1y},{x:A.cp2x,y:A.cp2y},{x:A.x,y:A.y}),r={x:A.x,y:A.y};a=null,o=null}}break}case"q":{const A="q"===e;for(let e=0;e<I.length;e+=4){const i={x:I[e]+(A?r.x:0),y:I[e+1]+(A?r.y:0)},n={x:I[e+2]+(A?r.x:0),y:I[e+3]+(A?r.y:0)},s={x:r.x+2/3*(i.x-r.x),y:r.y+2/3*(i.y-r.y)},g={x:n.x+2/3*(i.x-n.x),y:n.y+2/3*(i.y-n.y)};t.push(s,g,n),r=n,o=i,a=null}break}case"t":{const A="t"===e;for(let e=0;e<I.length;e+=2){const i=o?{x:2*r.x-o.x,y:2*r.y-o.y}:Object.assign({},r),n={x:I[e]+(A?r.x:0),y:I[e+1]+(A?r.y:0)},s={x:r.x+2/3*(i.x-r.x),y:r.y+2/3*(i.y-r.y)},g={x:n.x+2/3*(i.x-n.x),y:n.y+2/3*(i.y-n.y)};t.push(s,g,n),r=n,o=i,a=null}break}case"c":{const A="c"===e;for(let e=0;e<I.length;e+=6){const i={x:I[e]+(A?r.x:0),y:I[e+1]+(A?r.y:0)},n={x:I[e+2]+(A?r.x:0),y:I[e+3]+(A?r.y:0)},s={x:I[e+4]+(A?r.x:0),y:I[e+5]+(A?r.y:0)};t.push(i,n,s),r=s,a=n,o=null}break}case"s":{const A="s"===e;for(let e=0;e<I.length;e+=4){const i=a?{x:2*r.x-a.x,y:2*r.y-a.y}:Object.assign({},r),n={x:I[e]+(A?r.x:0),y:I[e+1]+(A?r.y:0)},s={x:I[e+2]+(A?r.x:0),y:I[e+3]+(A?r.y:0)};t.push(i,n,s),r=s,a=n,o=null}break}case"z":r=s,a=null,o=null,g();break;default:console.warn(`SVG path command '${e}' not supported yet`),a=null,o=null}return g(),e}(e);return t}},8103:(A,e,t)=>{t.d(e,{H0:()=>r,Pb:()=>o,ae:()=>I,fV:()=>s,nS:()=>a,te:()=>n});const i=1e10;function n(A){return A.x>i}function r(A,e=1){const t=new OffscreenCanvas(1,1).getContext("2d");t.fillStyle=A,t.fillRect(0,0,1,1);const i=t.getImageData(0,0,1,1),[n,r,s,a]=i.data;return[n/255*e,r/255*e,s/255*e,a/255*e]}function s(A,e=0){if("number"==typeof A)return A;const t=Number(A);return isNaN(t)?e:t}function a(A){return"string"!=typeof A&&"element"===A.type}const o=[1,0,0,1,0,0];function g(A,e){const[t,i,n,r,s,a]=A,[o,g,I,Q,C,c]=e;return[t*o+n*g,i*o+r*g,t*I+n*Q,i*I+r*Q,t*C+n*c+s,i*C+r*c+a]}function I(A,e=o){if(!A)return e;const t=/(\w+)\(([^)]+)\)/g;let i,n=e;const r=[];for(;null!==(i=t.exec(A));)r.push({op:i[1],args:i[2].split(/[ ,]+/).map(Number)});for(let A=r.length-1;A>=0;A--){const{op:e,args:t}=r[A];let i=o;switch(e){case"matrix":i=t;break;case"translate":{const[A,e=0]=t;i=[1,0,0,1,A,e];break}case"scale":{const[A,e=A]=t;i=[A,0,0,e,0,0];break}case"rotate":{const[A,e=0,n=0]=t,r=A*Math.PI/180,s=Math.cos(r),a=Math.sin(r);i=g([1,0,0,1,e,n],g([s,a,-a,s,0,0],[1,0,0,1,-e,-n]));break}}n=g(i,n)}return n}},4302:(A,e,t)=>{t.a(A,(async(A,i)=>{try{t.d(e,{CW:()=>G,Eb:()=>N,ID:()=>L,Kg:()=>O,Mc:()=>v,Ts:()=>b,Uw:()=>R,WQ:()=>S,bS:()=>k,qD:()=>U,yE:()=>F,yo:()=>M});var n=t(9105),r=t(1549),s=t(4637),a=t(6479),o=t(9504),g=t(2804),I=t(678),Q=t(1849),C=A([a,Q]);[a,Q]=C.then?(await C)():C;var c=function(A,e,t,i){return new(t||(t=Promise))((function(n,r){function s(A){try{o(i.next(A))}catch(A){r(A)}}function a(A){try{o(i.throw(A))}catch(A){r(A)}}function o(A){var e;A.done?n(A.value):(e=A.value,e instanceof t?e:new t((function(A){A(e)}))).then(s,a)}o((i=i.apply(A,e||[])).next())}))};function B(A,e){const t=A.properties,i=(null==t?void 0:t.viewBox)?l(t.viewBox):null,n="number"==typeof(null==t?void 0:t.width)?null==t?void 0:t.width:void 0,r="number"==typeof(null==t?void 0:t.height)?null==t?void 0:t.height:void 0;return[n||(null==i?void 0:i[0])||(null==e?void 0:e.naturalWidth),r||(null==i?void 0:i[1])||(null==e?void 0:e.naturalHeight)]}function l(A){const e=A.split(" ").map(Number);if(4===e.length){const[A,t,i,n]=e;return[i-A,n-t]}return null}let u,E,f,h,p,y,d,m;function b(A,e,t,i){u=A,d=e,m=t,E=[],f=(0,n.s)(u,d),h=(0,n.o)(u,d),y=0,p=()=>i(y),D(0,g)}function D(A,e){const t=(0,s.q)(e).children[0],[i,n]=B(t);if(!i||!n)throw Error("SVG Icon width and height are required");const r={};o.F(t,r),o.W(r);const g=(0,I.A)(t,r);(0,a.A)(g,A,n)}function S(A,e){const t=E.find((e=>e.url===A));if(t)return null==e||e({width:t.texture.width,height:t.texture.height}),E.indexOf(t);y++,p();const i=E.length;return E.push({url:A}),w(A,i,e),i}function w(A,e,t){return c(this,void 0,void 0,(function*(){try{const[i,n]=yield Promise.all([K(A),T(A)]);let s=null;if(n){const A=n.children[0],[e,r]=B(A,i);if(!e||!r)throw Error("SVG width and height are required");const s={};o.F(A,s),o.W(s);const a=(0,I.A)(A,s);return void(null==t||t({width:e,height:r,shapeAssets:(0,Q.A)(a,r)}))}const{ctx:a}=z(i,i.naturalWidth,i.naturalHeight),g=a.getImageData(0,0,i.naturalWidth,i.naturalHeight).data,C=q(g);s=J(g,C),null!==s?E[e]=s:(E[e].texture=(0,r.Be)(u,d,i,{flipY:!0}),E[e].data=g,E[e].hash=C),null==t||t({width:i.width,height:i.height,isNewTexture:!s})}catch(A){console.error(A),E[e].texture=h,null==t||t({error:A,width:0,height:0})}finally{y--,p()}}))}function v(A){const e=x(A);if(!e)throw Error("Texture not found with id: "+A);return e}function k(A){var e;return null!==(e=x(A))&&void 0!==e?e:f}function x(A){return E[A].texture}function N(){const A=E.length;return E.push({url:"cache"}),A}function U(A,e){const t=E.length,i="combineSdf - depth texture",n=u.createTexture({label:i,size:[A,e],format:"r32float",usage:GPUTextureUsage.STORAGE_BINDING|GPUTextureUsage.TEXTURE_BINDING});return E.push({url:i,texture:n}),t}function G(){const A=E.length,e=`SDF texture ${A}`,t=u.createTexture({label:e,size:[1,1],format:"rgba32float",usage:GPUTextureUsage.STORAGE_BINDING|GPUTextureUsage.TEXTURE_BINDING});return E.push({url:e,texture:t}),A}function M(A,e,t){var i;const n=null===(i=E[A])||void 0===i?void 0:i.texture;if(!n)throw Error("Texture not found with id: "+A);if(n.width===e&&n.height===t)return;const r=u.createTexture({label:n.label,size:[e,t],format:n.format,usage:n.usage});null==n||n.destroy(),E[A].texture=r}function R(A,e){var t;E[A].texture!==e&&(null===(t=E[A].texture)||void 0===t||t.destroy()),E[A].texture=e}function F(A,e,t){const i=E[A].texture;if(!(i&&Math.abs(i.width-e)<=Number.EPSILON&&Math.abs(i.height-t)<=Number.EPSILON)){null==i||i.destroy();const n=u.createTexture({label:"texture cache",format:m,usage:GPUTextureUsage.RENDER_ATTACHMENT|GPUTextureUsage.TEXTURE_BINDING|GPUTextureUsage.STORAGE_BINDING,size:[e,t]});return E[A].texture=n,n}return i}function L(A){return E[A].url}function z(A,e,t){const i=new OffscreenCanvas(e,t),n=i.getContext("2d");return n.drawImage(A,0,0,e,t),{canvas:i,ctx:n}}function q(A){let e=5381;for(let t=0;t<A.length;t++)e=(e<<5)+e+A[t];return String(e)}function J(A,e){for(let t=0;t<E.length;t++){const i=E[t];if(i.hash===e){if(A.length!==i.data.length)return null;for(let e=0;e<A.length;e++)if(A[e]!==i.data[e])return null;return i}}return null}function O(A,e){E[A].url=e}function K(A){return new Promise(((e,t)=>{const i=new Image;i.crossOrigin="anonymous",i.src=A,i.onload=()=>e(i),i.onerror=A=>t(A)}))}function T(A){return c(this,void 0,void 0,(function*(){const e=yield fetch(A),t=yield e.text();return t.includes("<svg")?(0,s.q)(t):null}))}i()}catch(H){i(H)}}))},1613:(A,e,t)=>{var i;t.d(e,{b:()=>i}),function(A){A[A.SelectAsset=0]="SelectAsset",A[A.DrawBezierCurve=1]="DrawBezierCurve",A[A.SelectNode=2]="SelectNode",A[A.Text=3]="Text"}(i||(i={}))},8513:(A,e,t)=>{t.a(A,(async(A,i)=>{try{t.d(e,{Ol:()=>g,b8:()=>p,c6:()=>l,le:()=>B,sS:()=>h});var n=t(9146),r=A([n]);n=(r.then?(await r)():r)[0];const s="",a=/\u2060\n/g;let o=null;function g(){return null!==o}function I(A,e){return A[e-1]===s&&"\n"===A[e]}function Q(A,e){return A[e-2]===s&&"\n"===A[e-1]}const C={selectionStart:0,selectionEnd:0};function c(A,e,t){if(I(A,e[t])){const A=C[t]==e[t]-1;e[t]=A?e[t]+2:e[t]-1}Q(A,e[t])&&(e[t]=e[t]-2),C[t]=e[t]}function B(A){if(!o)throw Error("Not typing");let e=o.selectionStart,t=o.selectionEnd;o.value=A,I(A,e)&&(e+=2),I(A,t)&&(t+=2),o.selectionStart=e,o.selectionEnd=t}function l(A,e){if(!o)throw Error("Not typing");o.selectionStart=A,o.selectionEnd=e}function u(){const A=n.Ih(this.value,this.selectionStart,this.selectionEnd);this.value=A.content,l(A.selection_start,A.selection_end)}function E(){c(this.value,this,"selectionStart"),c(this.value,this,"selectionEnd"),n.vZ(this.selectionStart,this.selectionEnd)}function f(A){var e,t;const i=this.value.substring(this.selectionStart,this.selectionEnd),n=null!==(e=null==i?void 0:i.toString().replace(a,""))&&void 0!==e?e:"";null===(t=A.clipboardData)||void 0===t||t.setData("text/plain",n),A.preventDefault()}function h(A){if(!o){const A=document.createElement("textarea");A.style.position="fixed",A.style.left="-210px",A.style.height="200px",A.style.opacity="0",A.style.width="9999px",A.style.whiteSpace="pre-line",document.body.appendChild(A),A.addEventListener("input",u),A.addEventListener("selectionchange",E),A.addEventListener("copy",f),o=A}o.focus(),B(A)}function p(){o&&(document.body.removeChild(o),o=null)}i()}catch(y){i(y)}}))},6253:(A,e,t)=>{function i(A,e,t){return Math.min(t,Math.max(e,A))}t.d(e,{A:()=>i})},7846:(A,e,t)=>{function i(A,e,t,i){const n=.5*(t-A),r=.5*(i-e);return[{x:n,y:r+e,u:0,v:1},{x:n+A,y:r+e,u:1,v:1},{x:n+A,y:r,u:1,v:0},{x:n,y:r,u:0,v:0}]}t.d(e,{A:()=>i})},2842:(A,e,t)=>{t.d(e,{A:()=>r});const i={cross(A,e,t=new Float32Array(3)){const i=A[1]*e[2]-A[2]*e[1],n=A[2]*e[0]-A[0]*e[2],r=A[0]*e[1]-A[1]*e[0];return t[0]=i,t[1]=n,t[2]=r,t},subtract:(A,e,t=new Float32Array(3))=>(t[0]=A[0]-e[0],t[1]=A[1]-e[1],t[2]=A[2]-e[2],t),normalize(A,e=new Float32Array(3)){const t=Math.sqrt(A[0]*A[0]+A[1]*A[1]+A[2]*A[2]);return t>1e-5?(e[0]=A[0]/t,e[1]=A[1]/t,e[2]=A[2]/t):(e[0]=0,e[1]=0,e[2]=0),e}},n={projection:(A,e,t,i)=>n.ortho(0,A,e,0,t,-t,i),perspective(A,e,t,i,n=new Float32Array(16)){const r=Math.tan(.5*Math.PI-.5*A),s=1/(t-i);return n[0]=r/e,n[1]=0,n[2]=0,n[3]=0,n[4]=0,n[5]=r,n[6]=0,n[7]=0,n[8]=0,n[9]=0,n[10]=i*s,n[11]=-1,n[12]=0,n[13]=0,n[14]=t*i*s,n[15]=0,n},ortho:(A,e,t,i,n,r,s=new Float32Array(16))=>(s[0]=2/(e-A),s[1]=0,s[2]=0,s[3]=0,s[4]=0,s[5]=2/(i-t),s[6]=0,s[7]=0,s[8]=0,s[9]=0,s[10]=1/(n-r),s[11]=0,s[12]=(e+A)/(A-e),s[13]=(i+t)/(t-i),s[14]=n/(n-r),s[15]=1,s),identity:(A=new Float32Array(16))=>(A[0]=1,A[1]=0,A[2]=0,A[3]=0,A[4]=0,A[5]=1,A[6]=0,A[7]=0,A[8]=0,A[9]=0,A[10]=1,A[11]=0,A[12]=0,A[13]=0,A[14]=0,A[15]=1,A),multiply(A,e,t=new Float32Array(16)){const i=e[0],n=e[1],r=e[2],s=e[3],a=e[4],o=e[5],g=e[6],I=e[7],Q=e[8],C=e[9],c=e[10],B=e[11],l=e[12],u=e[13],E=e[14],f=e[15],h=A[0],p=A[1],y=A[2],d=A[3],m=A[4],b=A[5],D=A[6],S=A[7],w=A[8],v=A[9],k=A[10],x=A[11],N=A[12],U=A[13],G=A[14],M=A[15];return t[0]=i*h+n*m+r*w+s*N,t[1]=i*p+n*b+r*v+s*U,t[2]=i*y+n*D+r*k+s*G,t[3]=i*d+n*S+r*x+s*M,t[4]=a*h+o*m+g*w+I*N,t[5]=a*p+o*b+g*v+I*U,t[6]=a*y+o*D+g*k+I*G,t[7]=a*d+o*S+g*x+I*M,t[8]=Q*h+C*m+c*w+B*N,t[9]=Q*p+C*b+c*v+B*U,t[10]=Q*y+C*D+c*k+B*G,t[11]=Q*d+C*S+c*x+B*M,t[12]=l*h+u*m+E*w+f*N,t[13]=l*p+u*b+E*v+f*U,t[14]=l*y+u*D+E*k+f*G,t[15]=l*d+u*S+E*x+f*M,t},cameraAim(A,e,t,n=new Float32Array(16)){const r=i.normalize(i.subtract(A,e)),s=i.normalize(i.cross(t,r)),a=i.normalize(i.cross(r,s));return n[0]=s[0],n[1]=s[1],n[2]=s[2],n[3]=0,n[4]=a[0],n[5]=a[1],n[6]=a[2],n[7]=0,n[8]=r[0],n[9]=r[1],n[10]=r[2],n[11]=0,n[12]=A[0],n[13]=A[1],n[14]=A[2],n[15]=1,n},inverse(A,e=new Float32Array(16)){const t=A[0],i=A[1],n=A[2],r=A[3],s=A[4],a=A[5],o=A[6],g=A[7],I=A[8],Q=A[9],C=A[10],c=A[11],B=A[12],l=A[13],u=A[14],E=A[15],f=C*E,h=u*c,p=o*E,y=u*g,d=o*c,m=C*g,b=n*E,D=u*r,S=n*c,w=C*r,v=n*g,k=o*r,x=I*l,N=B*Q,U=s*l,G=B*a,M=s*Q,R=I*a,F=t*l,L=B*i,z=t*Q,q=I*i,J=t*a,O=s*i,K=f*a+y*Q+d*l-(h*a+p*Q+m*l),T=h*i+b*Q+w*l-(f*i+D*Q+S*l),H=p*i+D*a+v*l-(y*i+b*a+k*l),Y=m*i+S*a+k*Q-(d*i+w*a+v*Q),P=1/(t*K+s*T+I*H+B*Y);return e[0]=P*K,e[1]=P*T,e[2]=P*H,e[3]=P*Y,e[4]=P*(h*s+p*I+m*B-(f*s+y*I+d*B)),e[5]=P*(f*t+D*I+S*B-(h*t+b*I+w*B)),e[6]=P*(y*t+b*s+k*B-(p*t+D*s+v*B)),e[7]=P*(d*t+w*s+v*I-(m*t+S*s+k*I)),e[8]=P*(x*g+G*c+M*E-(N*g+U*c+R*E)),e[9]=P*(N*r+F*c+q*E-(x*r+L*c+z*E)),e[10]=P*(U*r+L*g+J*E-(G*r+F*g+O*E)),e[11]=P*(R*r+z*g+O*c-(M*r+q*g+J*c)),e[12]=P*(U*C+R*u+N*o-(M*u+x*o+G*C)),e[13]=P*(z*u+x*n+L*C-(F*C+q*u+N*n)),e[14]=P*(F*o+O*u+G*n-(J*u+U*n+L*o)),e[15]=P*(J*C+M*n+q*o-(z*o+O*C+R*n)),e},transpose:(A,e=new Float32Array(16))=>(e[0]=A[0],e[1]=A[4],e[2]=A[8],e[3]=A[12],e[4]=A[1],e[5]=A[5],e[6]=A[9],e[7]=A[13],e[8]=A[2],e[9]=A[6],e[10]=A[10],e[11]=A[14],e[12]=A[3],e[13]=A[7],e[14]=A[11],e[15]=A[15],e),aim(A,e,t,n=new Float32Array(16)){const r=i.normalize(i.subtract(e,A)),s=i.normalize(i.cross(t,r)),a=i.normalize(i.cross(r,s));return n[0]=s[0],n[1]=s[1],n[2]=s[2],n[3]=0,n[4]=a[0],n[5]=a[1],n[6]=a[2],n[7]=0,n[8]=r[0],n[9]=r[1],n[10]=r[2],n[11]=0,n[12]=A[0],n[13]=A[1],n[14]=A[2],n[15]=1,n},lookAt:(A,e,t,i)=>n.inverse(n.cameraAim(A,e,t,i),i),translation:([A,e,t],i=new Float32Array(16))=>(i[0]=1,i[1]=0,i[2]=0,i[3]=0,i[4]=0,i[5]=1,i[6]=0,i[7]=0,i[8]=0,i[9]=0,i[10]=1,i[11]=0,i[12]=A,i[13]=e,i[14]=t,i[15]=1,i),rotationX(A,e=new Float32Array(16)){const t=Math.cos(A),i=Math.sin(A);return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=t,e[6]=i,e[7]=0,e[8]=0,e[9]=-i,e[10]=t,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e},rotationY(A,e=new Float32Array(16)){const t=Math.cos(A),i=Math.sin(A);return e[0]=t,e[1]=0,e[2]=-i,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=i,e[9]=0,e[10]=t,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e},rotationZ(A,e=new Float32Array(16)){const t=Math.cos(A),i=Math.sin(A);return e[0]=t,e[1]=i,e[2]=0,e[3]=0,e[4]=-i,e[5]=t,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e},scaling:([A,e,t],i=new Float32Array(16))=>(i[0]=A,i[1]=0,i[2]=0,i[3]=0,i[4]=0,i[5]=e,i[6]=0,i[7]=0,i[8]=0,i[9]=0,i[10]=t,i[11]=0,i[12]=0,i[13]=0,i[14]=0,i[15]=1,i),translate:(A,e,t)=>n.multiply(A,n.translation(e),t),rotateX:(A,e,t)=>n.multiply(A,n.rotationX(e),t),rotateY:(A,e,t)=>n.multiply(A,n.rotationY(e),t),rotateZ:(A,e,t)=>n.multiply(A,n.rotationZ(e),t),scale:(A,e,t)=>n.multiply(A,n.scaling(e),t)},r=n},1317:(A,e,t)=>{t.a(A,(async(A,i)=>{try{t.d(e,{A:()=>s});var n=t(4109),r=A([n]);function s(A,e,t,i,r=0){const s=i.width-2*r,a=i.height-2*r,o="fit"===t?Math.min(s/A,a/e):Math.max(s/A,a/e);n.UI.x=(i.width-A*o)/2,n.UI.y=(i.height-e*o)/2,n.UI.zoom=o}n=(r.then?(await r)():r)[0],i()}catch(a){i(a)}}))},3012:(A,e,t)=>{t.d(e,{A:()=>n});const i=Symbol("no args");function n(A,e){let t,n=i;return function r(...s){t?n=s:(A.apply(this,s),t=!0,setTimeout((()=>{t=!1,n!==i&&(r.apply(this,n),n=i)}),e))}}},9146:(A,e,t)=>{t.a(A,(async(A,i)=>{try{t.d(e,{$u:()=>CQ,Ay:()=>kI,Er:()=>IQ,Gl:()=>$I,Hg:()=>QQ,Ih:()=>PI,Iq:()=>sQ,JQ:()=>GI,LI:()=>tQ,Mv:()=>RI,PT:()=>ZI,QZ:()=>YI,V9:()=>FI,Vx:()=>HI,Wp:()=>AQ,Ws:()=>OI,XO:()=>qI,YF:()=>jI,ZE:()=>rQ,Zr:()=>MI,a3:()=>KI,aO:()=>iQ,cV:()=>_I,el:()=>zI,io:()=>gQ,kl:()=>XI,po:()=>VI,qN:()=>UI,tE:()=>oQ,us:()=>WI,vZ:()=>eQ,wH:()=>aQ,wV:()=>NI,x7:()=>nQ});var n=t(4773);t(1285),t(9592),t(2148),t(4828),t(6973),t(2427),t(1669),t(6929),t(4936),t(8738),t(1432),t(1454),t(6402),t(5940),t(804),t(9098),t(9494),t(337),t(3971),t(7431),t(7591),t(6717),t(2164),t(5496),t(6135),t(9813),t(3793),t(8305),t(3456),t(8539),t(7679),t(2244),t(3509),t(9433),t(8371),t(903),t(3692),t(7382),t(3750),t(1425),t(8773),t(3086),t(8771),t(8991),t(2799),t(4233),t(8502),t(9025),t(9426),t(2059),t(1991),t(5558),t(6584),t(4358),t(2436),t(7409),t(9268),t(9499),t(3586),t(5239);const A={constructor:null,type:0,flags:0,signature:void 0,name:void 0,byteSize:0,align:0,instance:{members:[],template:null},static:{members:[],template:null}},r={type:0,flags:0},s={},a={},o={},g={},I={},Q={},C={},c={},B={},l={},u={},E={},f={},h={},p={},y={},d={},m={},b={},D={},S={},w={},v={},k={},x={},N={},U={},G={},M={},R={},F={},L={},z={},q={},J={},O={},K={},T={},H={},Y={},P={},V={},_={},W={},X={},j={},Z={},$={},AA={},eA={},tA={},iA={},nA={},rA={},sA={},aA={},oA={},gA={},IA={},QA={},CA={},cA={},BA={},lA={},uA={},EA={},fA={},hA={},pA={},yA={},dA={},mA={},bA={},DA={},SA={},wA={},vA={},kA={},xA={},NA={},UA={},GA={},MA={},RA={},FA={},LA={},zA={},qA={},JA={},OA={},KA={},TA={},HA={},YA={},PA={},VA={},_A={},WA={},XA={},jA={},ZA={},$A={},Ae={},ee={},te={},ie={},ne={},re={},se={},ae={},oe={},ge={},Ie={},Qe={},Ce={},ce={},Be={},le={},ue={},Ee={},fe={},he={},pe={},ye={},de={},me={},be={},De={},Se={},we={},ve={},ke={},xe={},Ne={},Ue={},Ge={},Me={},Re={},Fe={},Le={},ze={},qe={},Je={},Oe={},Ke={},Te={},He={},Ye={},Pe={},Ve={},_e={},We={},Xe={},je={},Ze={},$e={},At={},et={},tt={},it={},nt={},rt={},st={},at={},ot={},gt={},It={},Qt={},Ct={},ct={},Bt={},lt={},ut={},Et={},ft={},ht={},pt={},yt={},dt={},mt={},bt={},Dt={},St={},wt={},vt={},kt={},xt={},Nt={},Ut={},Gt={},Mt={},Rt={},Ft={},Lt={},zt={},qt={},Jt={},Ot={},Kt={},Tt={},Ht={},Yt={},Pt={},Vt={},_t={},Wt={},Xt={},jt={},Zt={},$t={},Ai={},ei={},ti={},ii={},ni={},ri={},si={},ai={},oi={},gi={},Ii={},Qi={},Ci={},ci={},Bi={},li={},ui={},Ei={},fi={},hi={},pi={},yi={},di={},mi={},bi={},Di={},Si={},wi={},vi={},ki={},xi={},Ni={},Ui={},Gi={},Mi={},Ri={},Fi={},Li={},zi={},qi={},Ji={},Oi={},Ki={},Ti={},Hi={},Yi={},Pi={},Vi={},_i={},Wi={},Xi={},ji={},Zi={},$i={},An={},en={},tn={},nn={},rn={},sn={},an={},on={},gn={},In={},Qn={},Cn={},cn={},Bn={},ln={},un={},En={},fn={},hn={},pn={},yn={},dn={},mn={},bn={},Dn={},Sn={},wn={},vn={},kn={},xn={},Nn={},Un={},Gn={},Mn={},Rn={},Fn={},Ln={},zn={},qn={},Jn={},On={},Kn={},Tn={},Hn={},Yn={},Pn={},Vn={},_n={},Wn={},Xn={},jn={},Zn={},$n={},Ar={},er={},tr={},ir={},nr={},rr={},sr={},ar={},or={},gr={},Ir={},Qr={},Cr={},cr={},Br={},lr={},ur={},Er={},fr={},hr={},pr={},yr={},dr={},mr={},br={},Dr={},Sr={},wr={},vr={},kr={},xr={},Nr={},Ur={},Gr={},Mr={},Rr={},Fr={},Lr={},zr={},qr={},Jr={},Or={},Kr={},Tr={},Hr={},Yr={},Pr={},Vr={},_r={},Wr={},Xr={},jr={},Zr={},$r={},As={},es={},ts={},is={},ns={},rs={},ss={},as={},os={},gs={},Is={},Qs={},Cs={},cs={},Bs={},ls={},us={},Es={},fs={},hs={},ps={},ys={},ds={},ms={},bs={},Ds={},Ss={},ws={},vs={},ks={},xs={},Ns={},Us={},Gs={},Ms={},Rs={},Fs={},Ls={},zs={},qs={},Js={},Os={},Ks={},Ts={},Hs={},Ys={},Ps={},Vs={},_s={},Ws={},Xs={},js={},Zs={},$s={},Aa={},ea={},ta={},ia={},na={},ra={},sa={},aa={},oa={},ga={},Ia={},Qa={},Ca={},ca={},Ba={},la={},ua={},Ea={},fa={},ha={},pa={},ya={},da={},ma={},ba={},Da={},Sa={},wa={},va={},ka={},xa={},Na={},Ua={},Ga={},Ma={},Ra={},Fa={},La={},za={},qa={},Ja={},Oa={},Ka={},Ta={},Ha={},Ya={},Pa={},Va={},_a={},Wa={},Xa={},ja={},Za={},$a={},Ao={},eo={},to={},io={},no={},ro={},so={},ao={},oo={},go={},Io={},Qo={},Co={},co={},Bo={},lo={},uo={},Eo={},fo={},ho={},po={},yo={},mo={},bo={},Do={},So={},wo={},vo={},ko={},xo={},No={},Uo={},Go={},Mo={},Ro={},Fo={},Lo={},zo={},qo={},Jo={},Oo={},Ko={},To={},Ho={},Yo={},Po={},Vo={},_o={},Wo={},Xo={},jo={},Zo={},$o={},Ag={},eg={},tg={},ig={},ng={},rg={},sg=A=>new Uint8Array(A),ag=sg(0),og=sg(8),gg=sg(16),Ig=sg(64),Qg=sg(16),Cg=sg(32),cg=sg(32),Bg=sg(352),lg=sg(352),ug=sg(1),Eg=sg([1]),fg=sg([2]),hg=sg(32),pg=sg(76),yg=sg(8),dg=sg(40),mg=sg(72),bg=sg(20),Dg=sg(24),Sg=sg(28),wg=sg(1),vg=sg(Eg),kg=sg(fg),xg=sg(40),Ng=sg(8),Ug=sg([170,170,170,170,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,63]),Gg=sg(112),Mg=sg(104),Rg=sg(1),Fg=sg(Eg),Lg=sg(fg),zg=sg(16),qg=sg([8,0]),Jg=sg([170,170,170,170,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]),Og=sg(16),Kg=sg(qg),Tg=sg(qg),Hg=sg(16),Yg=sg([2,0]),Pg=sg(qg),Vg=sg([9,0]),_g=sg([10,0]),Wg=sg(Yg),Xg=sg(qg),jg=sg(Vg),Zg=sg(_g),$g=sg(Yg),AI=sg(qg),eI=sg(Vg),tI=sg(_g),iI=sg(qg),nI=sg(qg),rI=sg(qg),sI=sg(Yg),aI=sg(qg),oI=sg(Vg),gI=sg(_g),II=sg(qg),QI=sg(qg),CI=sg(2),cI=sg([1,0]),BI=sg(Yg),lI=sg([3,0]),uI=sg(qg),EI=sg(qg),fI=sg(Yg),hI=sg(qg),pI=sg(Vg),yI=sg(_g),dI=sg([232,3,0,0]),mI=Object.assign;mI(en,{memory:{array:ag},handle:107}),mI(tn,{memory:{array:ag},handle:108}),mI(nn,{memory:{array:ag},handle:109}),mI(rn,{memory:{array:og}}),mI(sn,{slots:{0:an,2:on,3:gn,4:In}}),mI(an,{structure:g,memory:{array:ag},handle:96}),mI(on,{structure:Q,memory:{array:ag},handle:97}),mI(gn,{structure:g,memory:{array:ag},handle:98}),mI(In,{structure:c,memory:{array:ag},handle:99}),mI(Qn,{memory:{array:ag},handle:110}),mI(Cn,{memory:{array:ag},handle:111}),mI(cn,{memory:{array:ag},handle:112}),mI(Bn,{memory:{array:gg}}),mI(ln,{slots:{0:un,1:En,2:fn,3:hn}}),mI(un,{structure:u,memory:{array:ag},handle:96}),mI(En,{structure:f,memory:{array:ag},handle:100}),mI(fn,{structure:f,memory:{array:ag},handle:97}),mI(hn,{structure:p,memory:{array:ag},handle:101}),mI(pn,{memory:{array:ag},handle:37}),mI(yn,{memory:{array:ag},handle:38}),mI(dn,{memory:{array:Ig}}),mI(mn,{memory:{array:ag},handle:39}),mI(bn,{memory:{array:ag},handle:40}),mI(Dn,{memory:{array:ag},handle:41}),mI(Sn,{memory:{array:ag},handle:42}),mI(wn,{memory:{array:ag},handle:43}),mI(vn,{memory:{array:ag},handle:44}),mI(kn,{memory:{array:Qg}}),mI(xn,{memory:{array:ag},handle:45}),mI(Nn,{memory:{array:ag},handle:46}),mI(Un,{memory:{array:ag},handle:47}),mI(Gn,{memory:{array:ag},handle:48}),mI(Mn,{memory:{array:Cg}}),mI(Rn,{memory:{array:cg}}),mI(Fn,{memory:{array:Bg}}),mI(Ln,{memory:{array:lg}}),mI(zn,{slots:{0:qn,1:Jn,2:On}}),mI(qn,{structure:aA,memory:{array:ug},const:!0}),mI(Jn,{structure:aA,memory:{array:Eg},const:!0}),mI(On,{structure:aA,memory:{array:fg},const:!0}),mI(Kn,{memory:{array:ag},handle:49}),mI(Tn,{memory:{array:ag},handle:50}),mI(Hn,{memory:{array:hg}}),mI(Yn,{memory:{array:ag},handle:37}),mI(Pn,{memory:{array:ag},handle:51}),mI(Vn,{memory:{array:pg}}),mI(_n,{memory:{array:ag},handle:39}),mI(Wn,{memory:{array:ag},handle:52}),mI(Xn,{memory:{array:yg}}),mI(jn,{memory:{array:ag},handle:53}),mI(Zn,{memory:{array:ag},handle:54}),mI($n,{memory:{array:dg},handle:266620,slots:{0:Ar,1:tr,2:nr,3:sr,4:or,5:Ir,6:Cr,7:Br,8:ur,9:fr}}),mI(Ar,{structure:w,memory:{array:dg,offset:0,length:4},slots:{0:er}}),mI(er,{structure:S,memory:{array:ag}}),mI(tr,{structure:F,memory:{array:dg,offset:4,length:4},slots:{0:ir}}),mI(ir,{structure:R,memory:{array:ag}}),mI(nr,{structure:O,memory:{array:dg,offset:8,length:4},slots:{0:rr}}),mI(rr,{structure:J,memory:{array:ag}}),mI(sr,{structure:H,memory:{array:dg,offset:12,length:4},slots:{0:ar}}),mI(ar,{structure:T,memory:{array:ag}}),mI(or,{structure:_,memory:{array:dg,offset:16,length:4},slots:{0:gr}}),mI(gr,{structure:V,memory:{array:ag}}),mI(Ir,{structure:j,memory:{array:dg,offset:20,length:4},slots:{0:Qr}}),mI(Qr,{structure:X,memory:{array:ag}}),mI(Cr,{structure:QA,memory:{array:dg,offset:24,length:4},slots:{0:cr}}),mI(cr,{structure:IA,memory:{array:ag}}),mI(Br,{structure:fA,memory:{array:dg,offset:28,length:4},slots:{0:lr}}),mI(lr,{structure:EA,memory:{array:ag}}),mI(ur,{structure:bA,memory:{array:dg,offset:32,length:4},slots:{0:Er}}),mI(Er,{structure:mA,memory:{array:ag}}),mI(fr,{structure:vA,memory:{array:dg,offset:36,length:4},slots:{0:hr}}),mI(hr,{structure:wA,memory:{array:ag}}),mI(pr,{memory:{array:ag},handle:36}),mI(yr,{memory:{array:ag},handle:114}),mI(dr,{memory:{array:mg}}),mI(mr,{slots:{0:br}}),mI(br,{structure:FA,memory:{array:ag},handle:104}),mI(Dr,{memory:{array:ag},handle:118}),mI(Sr,{memory:{array:bg}}),mI(wr,{slots:{0:vr}}),mI(vr,{structure:OA,memory:{array:ag},handle:117}),mI(kr,{memory:{array:Dg},handle:268196,slots:{2:xr}}),mI(xr,{structure:HA,memory:{array:Dg,offset:16,length:8}}),mI(Nr,{memory:{array:Sg},handle:268220,slots:{3:Ur}}),mI(Ur,{structure:HA,memory:{array:Sg,offset:20,length:8}}),mI(Gr,{slots:{0:Mr,1:Rr,2:Fr}}),mI(Mr,{structure:VA,memory:{array:wg},const:!0}),mI(Rr,{structure:VA,memory:{array:vg},const:!0}),mI(Fr,{structure:VA,memory:{array:kg},const:!0}),mI(Lr,{memory:{array:ag},handle:113}),mI(zr,{slots:{0:qr}}),mI(qr,{structure:WA,memory:{array:ag},handle:102}),mI(Jr,{memory:{array:xg},handle:267176,slots:{2:Or}}),mI(Or,{structure:XA,memory:{array:xg,offset:8,length:32},slots:{0:Kr,1:Hr}}),mI(Kr,{structure:YA,memory:{array:xg,offset:8,length:24},slots:{2:Tr}}),mI(Tr,{structure:HA,memory:{array:xg,offset:24,length:8}}),mI(Hr,{structure:PA,memory:{array:xg,offset:8,length:28},slots:{3:Yr}}),mI(Yr,{structure:HA,memory:{array:xg,offset:28,length:8}}),mI(Pr,{memory:{array:Ng}}),mI(Vr,{memory:{array:ag},handle:103}),mI(_r,{memory:{array:Ug},handle:266368,slots:{0:Wr}}),mI(Wr,{structure:$A,memory:{array:Ug,offset:0,length:8},slots:{0:Xr}}),mI(Xr,{structure:ZA,memory:{array:ag}}),mI(jr,{slots:{0:Zr}}),mI(Zr,{structure:ie,memory:{array:ag},handle:84}),mI($r,{memory:{array:ag},handle:115}),mI(As,{memory:{array:Gg},handle:267944,slots:{1:es,2:ts}}),mI(es,{structure:qA,memory:{array:Gg,offset:4,length:8}}),mI(ts,{structure:ne,memory:{array:Gg,offset:12,length:24},slots:{0:is}}),mI(is,{structure:$A,memory:{array:Gg,offset:12,length:8}}),mI(ns,{slots:{0:rs}}),mI(rs,{structure:ae,memory:{array:ag},handle:105}),mI(ss,{memory:{array:ag},handle:116}),mI(as,{memory:{array:Mg},handle:268056,slots:{1:os,4:Is}}),mI(os,{structure:Ce,memory:{array:Mg,offset:4,length:8},slots:{0:gs}}),mI(gs,{structure:Ie,memory:{array:Mg,offset:4,length:8}}),mI(Is,{structure:ne,memory:{array:Mg,offset:80,length:24},slots:{0:Qs}}),mI(Qs,{structure:$A,memory:{array:Mg,offset:80,length:8}}),mI(Cs,{slots:{0:cs}}),mI(cs,{structure:Be,memory:{array:ag},handle:106}),mI(Bs,{slots:{0:ls,1:us,2:Es}}),mI(ls,{structure:ue,memory:{array:Rg},const:!0}),mI(us,{structure:ue,memory:{array:Fg},const:!0}),mI(Es,{structure:ue,memory:{array:Lg},const:!0}),mI(fs,{memory:{array:zg},handle:266392,slots:{2:hs}}),mI(hs,{structure:he,memory:{array:zg,offset:8,length:8}}),mI(ps,{memory:{array:ag},handle:55}),mI(ys,{memory:{array:ag},handle:56}),mI(ds,{memory:{array:ag},handle:57}),mI(ms,{memory:{array:ag},handle:58}),mI(bs,{memory:{array:ag},handle:59}),mI(Ds,{memory:{array:ag},handle:57}),mI(Ss,{memory:{array:ag},handle:63}),mI(ws,{memory:{array:ag},handle:64}),mI(vs,{memory:{array:ag},handle:60}),mI(ks,{memory:{array:ag},handle:61}),mI(xs,{memory:{array:ag},handle:62}),mI(Ns,{memory:{array:ag},handle:65}),mI(Us,{memory:{array:ag},handle:66}),mI(Gs,{memory:{array:ag},handle:57}),mI(Ms,{slots:{0:Rs}}),mI(Rs,{structure:Pe,memory:{array:qg},const:!0}),mI(Fs,{memory:{array:ag},handle:68}),mI(Ls,{memory:{array:Jg},handle:266008,slots:{0:zs}}),mI(zs,{structure:z,memory:{array:Jg,offset:0,length:8},slots:{0:qs}}),mI(qs,{structure:L,memory:{array:ag}}),mI(Js,{slots:{0:Os}}),mI(Os,{structure:Xe,memory:{array:ag},handle:67}),mI(Ks,{memory:{array:ag},handle:69}),mI(Ts,{memory:{array:ag},handle:70}),mI(Hs,{memory:{array:ag},handle:88}),mI(Ys,{memory:{array:ag},handle:89}),mI(Ps,{memory:{array:ag},handle:76}),mI(Vs,{memory:{array:ag},handle:77}),mI(_s,{memory:{array:ag},handle:71}),mI(Ws,{memory:{array:ag},handle:72}),mI(Xs,{memory:{array:ag},handle:73}),mI(js,{memory:{array:ag},handle:74}),mI(Zs,{memory:{array:ag},handle:75}),mI($s,{memory:{array:Og}}),mI(Aa,{memory:{array:ag},handle:78}),mI(ea,{memory:{array:ag},handle:79}),mI(ta,{memory:{array:ag},handle:80}),mI(ia,{slots:{0:na}}),mI(na,{structure:dt,memory:{array:Kg},const:!0}),mI(ra,{memory:{array:ag},handle:81}),mI(sa,{memory:{array:ag},handle:82}),mI(aa,{slots:{0:oa}}),mI(oa,{structure:xt,memory:{array:Tg},const:!0}),mI(ga,{memory:{array:ag},handle:83}),mI(Ia,{memory:{array:ag},handle:85}),mI(Qa,{memory:{array:Hg},handle:266684,slots:{0:Ca}}),mI(Ca,{structure:Ie,memory:{array:Hg,offset:0,length:8}}),mI(ca,{slots:{0:Ba,1:la,2:ua,3:Ea}}),mI(Ba,{structure:qt,memory:{array:Yg},const:!0}),mI(la,{structure:qt,memory:{array:Pg},const:!0}),mI(ua,{structure:qt,memory:{array:Vg},const:!0}),mI(Ea,{structure:qt,memory:{array:_g},const:!0}),mI(fa,{memory:{array:ag},handle:86}),mI(ha,{slots:{0:pa,1:ya,2:da,3:ma}}),mI(pa,{structure:Tt,memory:{array:Wg},const:!0}),mI(ya,{structure:Tt,memory:{array:Xg},const:!0}),mI(da,{structure:Tt,memory:{array:jg},const:!0}),mI(ma,{structure:Tt,memory:{array:Zg},const:!0}),mI(ba,{memory:{array:ag},handle:87}),mI(Da,{memory:{array:ag},handle:85}),mI(Sa,{slots:{0:wa,1:va,2:ka,3:xa}}),mI(wa,{structure:jt,memory:{array:$g},const:!0}),mI(va,{structure:jt,memory:{array:AI},const:!0}),mI(ka,{structure:jt,memory:{array:eI},const:!0}),mI(xa,{structure:jt,memory:{array:tI},const:!0}),mI(Na,{memory:{array:ag},handle:87}),mI(Ua,{memory:{array:ag},handle:85}),mI(Ga,{memory:{array:ag},handle:85}),mI(Ma,{memory:{array:ag},handle:85}),mI(Ra,{slots:{0:Fa}}),mI(Fa,{structure:ci,memory:{array:iI},const:!0}),mI(La,{memory:{array:ag},handle:85}),mI(za,{slots:{0:qa}}),mI(qa,{structure:Ei,memory:{array:nI},const:!0}),mI(Ja,{memory:{array:ag},handle:90}),mI(Oa,{slots:{0:Ka}}),mI(Ka,{structure:yi,memory:{array:rI},const:!0}),mI(Ta,{memory:{array:ag},handle:85}),mI(Ha,{slots:{0:Ya,1:Pa,2:Va,3:_a}}),mI(Ya,{structure:Di,memory:{array:sI},const:!0}),mI(Pa,{structure:Di,memory:{array:aI},const:!0}),mI(Va,{structure:Di,memory:{array:oI},const:!0}),mI(_a,{structure:Di,memory:{array:gI},const:!0}),mI(Wa,{memory:{array:ag},handle:91}),mI(Xa,{slots:{0:ja}}),mI(ja,{structure:ki,memory:{array:II},const:!0}),mI(Za,{memory:{array:ag},handle:92}),mI($a,{slots:{0:Ao}}),mI(Ao,{structure:Gi,memory:{array:QI},const:!0}),mI(eo,{memory:{array:ag},handle:85}),mI(to,{slots:{0:io,1:no,2:ro,3:so}}),mI(io,{structure:qi,memory:{array:CI},const:!0}),mI(no,{structure:qi,memory:{array:cI},const:!0}),mI(ro,{structure:qi,memory:{array:BI},const:!0}),mI(so,{structure:qi,memory:{array:lI},const:!0}),mI(ao,{memory:{array:ag},handle:93}),mI(oo,{slots:{0:go}}),mI(go,{structure:Ki,memory:{array:uI},const:!0}),mI(Io,{memory:{array:ag},handle:82}),mI(Qo,{slots:{0:Co}}),mI(Co,{structure:Pi,memory:{array:EI},const:!0}),mI(co,{memory:{array:ag},handle:94}),mI(Bo,{slots:{0:lo,1:uo,2:Eo,3:fo}}),mI(lo,{structure:Xi,memory:{array:fI},const:!0}),mI(uo,{structure:Xi,memory:{array:hI},const:!0}),mI(Eo,{structure:Xi,memory:{array:pI},const:!0}),mI(fo,{structure:Xi,memory:{array:yI},const:!0}),mI(ho,{memory:{array:ag},handle:95}),mI(po,{slots:{0:yo,1:mo,2:bo,3:Do,4:So,5:wo,6:ko,7:No,9:Uo,10:Go,11:Mo,12:Ro,13:Fo,14:Lo,15:zo,16:qo,17:Jo,18:Oo,19:Ko,20:To,21:Ho,22:Yo,23:Po,24:Vo,25:_o,26:Wo,27:Xo,28:jo,29:Zo,30:$o,31:Ag,32:eg,33:tg,34:ig,35:ng,36:rg}}),mI(yo,{structure:UA,memory:{array:ag},handle:2}),mI(mo,{structure:De,memory:{array:ag},handle:3}),mI(bo,{structure:xe,memory:{array:ag},handle:4}),mI(Do,{structure:ze,memory:{array:ag},handle:5}),mI(So,{structure:He,memory:{array:ag},handle:6}),mI(wo,{structure:Ye,memory:{array:ag},slots:{0:vo}}),mI(vo,{structure:je}),mI(ko,{structure:Ye,memory:{array:ag},slots:{0:xo}}),mI(xo,{structure:$e}),mI(No,{structure:lt,memory:{array:ag},handle:7}),mI(Uo,{structure:yt,memory:{array:ag},handle:8}),mI(Go,{structure:b,memory:{array:dI},const:!0}),mI(Mo,{structure:Dt,memory:{array:ag},handle:9}),mI(Ro,{structure:kt,memory:{array:ag},handle:10}),mI(Fo,{structure:Gt,memory:{array:ag},handle:11}),mI(Lo,{structure:Lt,memory:{array:ag},handle:12}),mI(zo,{structure:we,memory:{array:ag},handle:13}),mI(qo,{structure:Kt,memory:{array:ag},handle:14}),mI(Jo,{structure:Pt,memory:{array:ag},handle:15}),mI(Oo,{structure:Xt,memory:{array:ag},handle:16}),mI(Ko,{structure:Ai,memory:{array:ag},handle:17}),mI(To,{structure:ni,memory:{array:ag},handle:18}),mI(Ho,{structure:oi,memory:{array:ag},handle:19}),mI(Yo,{structure:Ci,memory:{array:ag},handle:20}),mI(Po,{structure:ui,memory:{array:ag},handle:21}),mI(Vo,{structure:tt,memory:{array:ag},handle:22}),mI(_o,{structure:rt,memory:{array:ag},handle:23}),mI(Wo,{structure:pi,memory:{array:ag},handle:24}),mI(Xo,{structure:bi,memory:{array:ag},handle:25}),mI(jo,{structure:vi,memory:{array:ag},handle:26}),mI(Zo,{structure:tt,memory:{array:ag},handle:27}),mI($o,{structure:Ui,memory:{array:ag},handle:28}),mI(Ag,{structure:Fi,memory:{array:ag},handle:29}),mI(eg,{structure:Oi,memory:{array:ag},handle:30}),mI(tg,{structure:Yi,memory:{array:ag},handle:31}),mI(ig,{structure:Wi,memory:{array:ag},handle:32}),mI(ng,{structure:$i,memory:{array:ag},handle:33}),mI(rg,{structure:tt,memory:{array:ag},handle:34}),mI(s,{...A,flags:1,signature:0xa310b7d01f11b8can,name:"void",align:1,instance:{members:[{...r,bitOffset:0,bitSize:0,byteSize:0,structure:s}]}}),mI(a,{...A,flags:1,signature:0x61e77abe97c52d51n,name:"f32",byteSize:4,align:4,instance:{members:[{...r,type:4,bitOffset:0,bitSize:32,byteSize:4,structure:a}]}}),mI(o,{...A,type:12,flags:10,signature:0x207e329602a86755n,name:"Arg(fn (Point, Point) Point)",length:2,byteSize:24,align:4,instance:{members:[{...r,type:5,flags:1,bitOffset:0,bitSize:64,byteSize:8,slot:0,name:"retval",structure:B},{...r,type:5,flags:1,bitOffset:64,bitSize:64,byteSize:8,slot:1,name:"0",structure:B},{...r,type:5,flags:1,bitOffset:128,bitSize:64,byteSize:8,slot:2,name:"1",structure:B}]}}),mI(g,{...A,type:14,signature:0x8e48777d39cc425en,name:"fn (Point, Point) Point",length:2,instance:{members:[{...r,type:5,bitSize:192,byteSize:24,structure:o}],template:en}}),mI(I,{...A,type:12,flags:10,signature:0x61503e2c040eea30n,name:"Arg(fn (Point, Point) f32)",length:2,byteSize:20,align:4,instance:{members:[{...r,type:4,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:0,name:"retval",structure:a},{...r,type:5,flags:1,bitOffset:32,bitSize:64,byteSize:8,slot:1,name:"0",structure:B},{...r,type:5,flags:1,bitOffset:96,bitSize:64,byteSize:8,slot:2,name:"1",structure:B}]}}),mI(Q,{...A,type:14,signature:0x18a1631fcf9c9650n,name:"fn (Point, Point) f32",length:2,instance:{members:[{...r,type:5,bitSize:160,byteSize:20,structure:I}],template:tn}}),mI(C,{...A,type:12,flags:10,signature:0x2c8b0923044d56a3n,name:"Arg(fn (Point) f32)",length:1,byteSize:12,align:4,instance:{members:[{...r,type:4,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:0,name:"retval",structure:a},{...r,type:5,flags:1,bitOffset:32,bitSize:64,byteSize:8,slot:1,name:"0",structure:B}]}}),mI(c,{...A,type:14,signature:0xd65e9ab75b9dec39n,name:"fn (Point) f32",length:1,instance:{members:[{...r,type:5,bitSize:96,byteSize:12,structure:C}],template:nn}}),mI(B,{...A,type:2,flags:16,signature:0xc6238f223c317b90n,name:"Point",byteSize:8,align:4,instance:{members:[{...r,type:4,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:0,name:"x",structure:a},{...r,type:4,flags:1,bitOffset:32,bitSize:32,byteSize:4,slot:1,name:"y",structure:a}],template:rn},static:{members:[{...r,type:5,flags:18,slot:0,name:"mid",structure:g},{...r,type:5,flags:18,slot:2,name:"distance",structure:Q},{...r,type:5,flags:18,slot:3,name:"diff",structure:g},{...r,type:5,flags:18,slot:4,name:"length",structure:c}],template:sn}}),mI(l,{...A,type:12,flags:10,signature:0x8d352bb77a26e612n,name:"Arg(fn (PointUV, PointUV) Point)",length:2,byteSize:40,align:4,instance:{members:[{...r,type:5,flags:1,bitOffset:0,bitSize:64,byteSize:8,slot:0,name:"retval",structure:B},{...r,type:5,flags:1,bitOffset:64,bitSize:128,byteSize:16,slot:1,name:"0",structure:y},{...r,type:5,flags:1,bitOffset:192,bitSize:128,byteSize:16,slot:2,name:"1",structure:y}]}}),mI(u,{...A,type:14,signature:0x0f1df05e0d01db92n,name:"fn (PointUV, PointUV) Point",length:2,instance:{members:[{...r,type:5,bitSize:320,byteSize:40,structure:l}],template:Qn}}),mI(E,{...A,type:12,flags:10,signature:0x9961a28ae296031fn,name:"Arg(fn (PointUV, PointUV) f32)",length:2,byteSize:36,align:4,instance:{members:[{...r,type:4,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:0,name:"retval",structure:a},{...r,type:5,flags:1,bitOffset:32,bitSize:128,byteSize:16,slot:1,name:"0",structure:y},{...r,type:5,flags:1,bitOffset:160,bitSize:128,byteSize:16,slot:2,name:"1",structure:y}]}}),mI(f,{...A,type:14,signature:0xb56a381f65765bdcn,name:"fn (PointUV, PointUV) f32",length:2,instance:{members:[{...r,type:5,bitSize:288,byteSize:36,structure:E}],template:Cn}}),mI(h,{...A,type:12,flags:10,signature:0xe743c73bc7c6fe7bn,name:"Arg(fn (PointUV) Point)",length:1,byteSize:24,align:4,instance:{members:[{...r,type:5,flags:1,bitOffset:0,bitSize:64,byteSize:8,slot:0,name:"retval",structure:B},{...r,type:5,flags:1,bitOffset:64,bitSize:128,byteSize:16,slot:1,name:"0",structure:y}]}}),mI(p,{...A,type:14,signature:0xb4b152a5ffc2fd66n,name:"fn (PointUV) Point",length:1,instance:{members:[{...r,type:5,bitSize:192,byteSize:24,structure:h}],template:cn}}),mI(y,{...A,type:2,flags:16,signature:0x526f11b57045ab14n,name:"PointUV",byteSize:16,align:4,instance:{members:[{...r,type:4,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:0,name:"x",structure:a},{...r,type:4,flags:1,bitOffset:32,bitSize:32,byteSize:4,slot:1,name:"y",structure:a},{...r,type:4,flags:1,bitOffset:64,bitSize:32,byteSize:4,slot:2,name:"u",structure:a},{...r,type:4,flags:1,bitOffset:96,bitSize:32,byteSize:4,slot:3,name:"v",structure:a}],template:Bn},static:{members:[{...r,type:5,flags:18,slot:0,name:"mid",structure:u},{...r,type:5,flags:18,slot:1,name:"angleTo",structure:f},{...r,type:5,flags:18,slot:2,name:"distance",structure:f},{...r,type:5,flags:18,slot:3,name:"toPoint",structure:p}],template:ln}}),mI(d,{...A,type:9,flags:10,signature:0xfecc1a9f32c06d42n,name:"[_]PointUV",byteSize:16,align:4,instance:{members:[{...r,type:5,bitSize:128,byteSize:16,structure:y}]}}),mI(m,{...A,type:8,flags:188,signature:0x2905307feb293d85n,name:"[]const PointUV",byteSize:8,align:4,instance:{members:[{...r,type:5,bitSize:64,byteSize:8,slot:0,structure:d}]}}),mI(b,{...A,flags:1,signature:0x68598db431a811a3n,name:"u32",byteSize:4,align:4,instance:{members:[{...r,type:3,bitOffset:0,bitSize:32,byteSize:4,structure:b}]}}),mI(D,{...A,type:12,flags:14,signature:0x9ddbe0c6075e76cbn,name:"Arg(fn ([]const PointUV, u32) void)",length:2,byteSize:12,align:4,instance:{members:[{...r,flags:1,bitOffset:96,bitSize:0,byteSize:0,slot:0,name:"retval",structure:s},{...r,type:5,flags:1,bitOffset:0,bitSize:64,byteSize:8,slot:1,name:"0",structure:m},{...r,type:3,flags:1,bitOffset:64,bitSize:32,byteSize:4,slot:2,name:"1",structure:b}]}}),mI(S,{...A,type:14,signature:0x6bba777479940b36n,name:"fn ([]const PointUV, u32) void",length:2,instance:{members:[{...r,type:5,bitSize:96,byteSize:12,structure:D}],template:pn},static:{members:[],template:yn}}),mI(w,{...A,type:8,flags:204,signature:0x1b2e4a00e258618fn,name:"*const fn ([]const PointUV, u32) void",byteSize:4,align:4,instance:{members:[{...r,type:5,bitSize:32,byteSize:4,slot:0,structure:S}]}}),mI(v,{...A,flags:1,signature:0x370ee22b85937307n,name:"u8",byteSize:1,align:1,instance:{members:[{...r,type:3,bitOffset:0,bitSize:8,byteSize:1,structure:v}]}}),mI(k,{...A,type:1,flags:224,signature:0x72a0d50910cc3369n,name:"[4]u8",length:4,byteSize:4,align:1,instance:{members:[{...r,type:3,bitSize:8,byteSize:1,structure:v}]}}),mI(x,{...A,type:1,flags:64,signature:0x965d25e134612060n,name:"[3]f32",length:3,byteSize:12,align:4,instance:{members:[{...r,type:4,bitSize:32,byteSize:4,structure:a}]}}),mI(N,{...A,type:2,flags:26,signature:0x192d6f39fdd42e6en,name:"DrawInstance",byteSize:64,align:4,instance:{members:[{...r,type:5,flags:1,bitOffset:0,bitSize:128,byteSize:16,slot:0,name:"p0",structure:y},{...r,type:5,flags:1,bitOffset:128,bitSize:128,byteSize:16,slot:1,name:"p1",structure:y},{...r,type:5,flags:1,bitOffset:256,bitSize:128,byteSize:16,slot:2,name:"p2",structure:y},{...r,type:5,flags:1,bitOffset:384,bitSize:32,byteSize:4,slot:3,name:"color",structure:k},{...r,type:5,flags:1,bitOffset:416,bitSize:96,byteSize:12,slot:4,name:"radius",structure:x}],template:dn}}),mI(U,{...A,type:9,flags:10,signature:0x914ee09efb47cbf7n,name:"[_]DrawInstance",byteSize:64,align:4,instance:{members:[{...r,type:5,bitSize:512,byteSize:64,structure:N}]}}),mI(G,{...A,type:8,flags:188,signature:0x39778fa380da3875n,name:"[]const DrawInstance",byteSize:8,align:4,instance:{members:[{...r,type:5,bitSize:64,byteSize:8,slot:0,structure:U}]}}),mI(M,{...A,type:12,flags:14,signature:0x93ffc88e8c95765dn,name:"Arg(fn ([]const DrawInstance) void)",length:1,byteSize:8,align:4,instance:{members:[{...r,flags:1,bitOffset:64,bitSize:0,byteSize:0,slot:0,name:"retval",structure:s},{...r,type:5,flags:1,bitOffset:0,bitSize:64,byteSize:8,slot:1,name:"0",structure:G}]}}),mI(R,{...A,type:14,signature:0xe9f243b3e4ecde6cn,name:"fn ([]const DrawInstance) void",length:1,instance:{members:[{...r,type:5,bitSize:64,byteSize:8,structure:M}],template:mn},static:{members:[],template:bn}}),mI(F,{...A,type:8,flags:204,signature:0xffb0918139c04f1an,name:"*const fn ([]const DrawInstance) void",byteSize:4,align:4,instance:{members:[{...r,type:5,bitSize:32,byteSize:4,slot:0,structure:R}]}}),mI(L,{...A,type:9,flags:10,signature:0xc2e8551856512494n,name:"[_]Point",byteSize:8,align:4,instance:{members:[{...r,type:5,bitSize:64,byteSize:8,structure:B}]}}),mI(z,{...A,type:8,flags:188,signature:0x04fa74127b6acc09n,name:"[]const Point",byteSize:8,align:4,instance:{members:[{...r,type:5,bitSize:64,byteSize:8,slot:0,structure:L}]}}),mI(q,{...A,type:12,flags:14,signature:0xbcabfdc00e2aa5efn,name:"Arg(fn ([]const Point, u32, u32, u32) void)",length:4,byteSize:20,align:4,instance:{members:[{...r,flags:1,bitOffset:160,bitSize:0,byteSize:0,slot:0,name:"retval",structure:s},{...r,type:5,flags:1,bitOffset:0,bitSize:64,byteSize:8,slot:1,name:"0",structure:z},{...r,type:3,flags:1,bitOffset:64,bitSize:32,byteSize:4,slot:2,name:"1",structure:b},{...r,type:3,flags:1,bitOffset:96,bitSize:32,byteSize:4,slot:3,name:"2",structure:b},{...r,type:3,flags:1,bitOffset:128,bitSize:32,byteSize:4,slot:4,name:"3",structure:b}]}}),mI(J,{...A,type:14,signature:0x28e16a0b4ee9f18cn,name:"fn ([]const Point, u32, u32, u32) void",length:4,instance:{members:[{...r,type:5,bitSize:160,byteSize:20,structure:q}],template:Dn},static:{members:[],template:Sn}}),mI(O,{...A,type:8,flags:204,signature:0x9ac954f1f874b3b5n,name:"*const fn ([]const Point, u32, u32, u32) void",byteSize:4,align:4,instance:{members:[{...r,type:5,bitSize:32,byteSize:4,slot:0,structure:J}]}}),mI(K,{...A,type:12,signature:0x9a708346bd652dc9n,name:"Arg(fn (u32, u32, u32, u32) void)",length:4,byteSize:16,align:4,instance:{members:[{...r,flags:1,bitOffset:128,bitSize:0,byteSize:0,slot:0,name:"retval",structure:s},{...r,type:3,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:1,name:"0",structure:b},{...r,type:3,flags:1,bitOffset:32,bitSize:32,byteSize:4,slot:2,name:"1",structure:b},{...r,type:3,flags:1,bitOffset:64,bitSize:32,byteSize:4,slot:3,name:"2",structure:b},{...r,type:3,flags:1,bitOffset:96,bitSize:32,byteSize:4,slot:4,name:"3",structure:b}]}}),mI(T,{...A,type:14,signature:0x4af89192d7f7e364n,name:"fn (u32, u32, u32, u32) void",length:4,instance:{members:[{...r,type:5,bitSize:128,byteSize:16,structure:K}],template:wn},static:{members:[],template:vn}}),mI(H,{...A,type:8,flags:204,signature:0x96ca213ec0738fa3n,name:"*const fn (u32, u32, u32, u32) void",byteSize:4,align:4,instance:{members:[{...r,type:5,bitSize:32,byteSize:4,slot:0,structure:T}]}}),mI(Y,{...A,type:2,signature:0x0253d658a7e15a7an,name:"Placement",byteSize:16,align:4,instance:{members:[{...r,type:4,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:0,name:"x",structure:a},{...r,type:4,flags:1,bitOffset:32,bitSize:32,byteSize:4,slot:1,name:"y",structure:a},{...r,type:4,flags:1,bitOffset:64,bitSize:32,byteSize:4,slot:2,name:"width",structure:a},{...r,type:4,flags:1,bitOffset:96,bitSize:32,byteSize:4,slot:3,name:"height",structure:a}],template:kn}}),mI(P,{...A,type:12,flags:10,signature:0x7ec4cbcd82d19090n,name:"Arg(fn (u32, u32, u32, Placement) void)",length:4,byteSize:28,align:4,instance:{members:[{...r,flags:1,bitOffset:224,bitSize:0,byteSize:0,slot:0,name:"retval",structure:s},{...r,type:3,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:1,name:"0",structure:b},{...r,type:3,flags:1,bitOffset:32,bitSize:32,byteSize:4,slot:2,name:"1",structure:b},{...r,type:3,flags:1,bitOffset:64,bitSize:32,byteSize:4,slot:3,name:"2",structure:b},{...r,type:5,flags:1,bitOffset:96,bitSize:128,byteSize:16,slot:4,name:"3",structure:Y}]}}),mI(V,{...A,type:14,signature:0xd690a44ec2f29c5cn,name:"fn (u32, u32, u32, Placement) void",length:4,instance:{members:[{...r,type:5,bitSize:224,byteSize:28,structure:P}],template:xn},static:{members:[],template:Nn}}),mI(_,{...A,type:8,flags:204,signature:0x4ccf7def3d1e7c54n,name:"*const fn (u32, u32, u32, Placement) void",byteSize:4,align:4,instance:{members:[{...r,type:5,bitSize:32,byteSize:4,slot:0,structure:V}]}}),mI(W,{...A,type:12,signature:0xc8f1446a55bbdcc4n,name:"Arg(fn (u32, u32, u32, u32, f32, f32) void)",length:6,byteSize:24,align:4,instance:{members:[{...r,flags:1,bitOffset:192,bitSize:0,byteSize:0,slot:0,name:"retval",structure:s},{...r,type:3,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:1,name:"0",structure:b},{...r,type:3,flags:1,bitOffset:32,bitSize:32,byteSize:4,slot:2,name:"1",structure:b},{...r,type:3,flags:1,bitOffset:64,bitSize:32,byteSize:4,slot:3,name:"2",structure:b},{...r,type:3,flags:1,bitOffset:96,bitSize:32,byteSize:4,slot:4,name:"3",structure:b},{...r,type:4,flags:1,bitOffset:128,bitSize:32,byteSize:4,slot:5,name:"4",structure:a},{...r,type:4,flags:1,bitOffset:160,bitSize:32,byteSize:4,slot:6,name:"5",structure:a}]}}),mI(X,{...A,type:14,signature:0xc990915d10e8c5e9n,name:"fn (u32, u32, u32, u32, f32, f32) void",length:6,instance:{members:[{...r,type:5,bitSize:192,byteSize:24,structure:W}],template:Un},static:{members:[],template:Gn}}),mI(j,{...A,type:8,flags:204,signature:0xfdea5d2863b67a83n,name:"*const fn (u32, u32, u32, u32, f32, f32) void",byteSize:4,align:4,instance:{members:[{...r,type:5,bitSize:32,byteSize:4,slot:0,structure:X}]}}),mI(Z,{...A,type:1,flags:64,signature:0x60772e176987374dn,name:"[2]u32",length:2,byteSize:8,align:4,instance:{members:[{...r,type:3,bitSize:32,byteSize:4,structure:b}]}}),mI($,{...A,type:10,flags:16,signature:0x54c1b3c549d13acan,name:"@Vector(4, f32)",length:4,byteSize:16,align:16,instance:{members:[{...r,type:4,bitSize:32,byteSize:4,structure:a}]}}),mI(AA,{...A,type:2,flags:26,signature:0xbd6fe708f9f8d6ffn,name:"UniformSolid",byteSize:32,align:16,instance:{members:[{...r,type:4,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:0,name:"dist_start",structure:a},{...r,type:4,flags:1,bitOffset:32,bitSize:32,byteSize:4,slot:1,name:"dist_end",structure:a},{...r,type:5,bitOffset:64,bitSize:64,byteSize:8,slot:2,name:"padding",structure:Z},{...r,type:5,flags:1,bitOffset:128,bitSize:128,byteSize:16,slot:3,name:"color",structure:$}],template:Mn}}),mI(eA,{...A,type:1,flags:64,signature:0x55b5c2c225a6545bn,name:"[4]f32",length:4,byteSize:16,align:4,instance:{members:[{...r,type:4,bitSize:32,byteSize:4,structure:a}]}}),mI(tA,{...A,type:1,flags:64,signature:0xf25f9cba158fbe10n,name:"[3]u32",length:3,byteSize:12,align:4,instance:{members:[{...r,type:3,bitSize:32,byteSize:4,structure:b}]}}),mI(iA,{...A,type:2,flags:4122,signature:0xcaf30c045081f68fn,name:"UniformGradientStop",byteSize:32,align:4,instance:{members:[{...r,type:5,bitOffset:0,bitSize:128,byteSize:16,slot:0,name:"color",structure:eA},{...r,type:4,bitOffset:128,bitSize:32,byteSize:4,slot:1,name:"offset",structure:a},{...r,type:5,bitOffset:160,bitSize:96,byteSize:12,slot:2,name:"padding",structure:tA}],template:Rn}}),mI(nA,{...A,type:1,flags:10,signature:0xb8c0b82a9715265an,name:"[10]UniformGradientStop",length:10,byteSize:320,align:4,instance:{members:[{...r,type:5,bitSize:256,byteSize:32,structure:iA}]}}),mI(rA,{...A,type:2,flags:26,signature:0xf19f5f8ee9b0ab41n,name:"UniformLinearGradient",byteSize:352,align:4,instance:{members:[{...r,type:4,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:0,name:"dist_start",structure:a},{...r,type:4,flags:1,bitOffset:32,bitSize:32,byteSize:4,slot:1,name:"dist_end",structure:a},{...r,type:3,flags:1,bitOffset:64,bitSize:32,byteSize:4,slot:2,name:"stops_count",structure:b},{...r,type:3,bitOffset:96,bitSize:32,byteSize:4,slot:3,name:"padding",structure:b},{...r,type:5,flags:1,bitOffset:128,bitSize:64,byteSize:8,slot:4,name:"start",structure:B},{...r,type:5,flags:1,bitOffset:192,bitSize:64,byteSize:8,slot:5,name:"end",structure:B},{...r,type:5,flags:1,bitOffset:256,bitSize:2560,byteSize:320,slot:6,name:"stops",structure:nA}],template:Fn}}),mI(sA,{...A,type:2,flags:26,signature:0xba6e99cdb975c14dn,name:"UniformRadialGradient",byteSize:352,align:4,instance:{members:[{...r,type:4,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:0,name:"dist_start",structure:a},{...r,type:4,flags:1,bitOffset:32,bitSize:32,byteSize:4,slot:1,name:"dist_end",structure:a},{...r,type:3,flags:1,bitOffset:64,bitSize:32,byteSize:4,slot:2,name:"stops_count",structure:b},{...r,type:4,flags:1,bitOffset:96,bitSize:32,byteSize:4,slot:3,name:"radius_ratio",structure:a},{...r,type:5,flags:1,bitOffset:128,bitSize:64,byteSize:8,slot:4,name:"center",structure:B},{...r,type:5,flags:1,bitOffset:192,bitSize:64,byteSize:8,slot:5,name:"destination",structure:B},{...r,type:5,flags:1,bitOffset:256,bitSize:2560,byteSize:320,slot:6,name:"stops",structure:nA}],template:Ln}}),mI(aA,{...A,type:6,flags:1,signature:0x6787563e1d5f78a8n,name:"EN0",byteSize:1,align:1,instance:{members:[{...r,type:3,bitOffset:0,bitSize:2,byteSize:1,structure:aA}]},static:{members:[{...r,type:5,flags:4,slot:0,name:"solid",structure:aA},{...r,type:5,flags:4,slot:1,name:"linear",structure:aA},{...r,type:5,flags:4,slot:2,name:"radial",structure:aA}],template:zn}}),mI(oA,{...A,type:3,flags:58,signature:0x20b352911ff31f6bn,name:"DrawUniform",byteSize:368,align:16,instance:{members:[{...r,type:5,bitOffset:0,bitSize:256,byteSize:32,slot:0,name:"solid",structure:AA},{...r,type:5,bitOffset:0,bitSize:2816,byteSize:352,slot:1,name:"linear",structure:rA},{...r,type:5,bitOffset:0,bitSize:2816,byteSize:352,slot:2,name:"radial",structure:sA},{...r,type:3,flags:8,bitOffset:2816,bitSize:2,byteSize:1,structure:aA}]}}),mI(gA,{...A,type:12,flags:14,signature:0x5e0099122add1a77n,name:"Arg(fn ([]const PointUV, DrawUniform, u32) void)",length:3,byteSize:384,align:16,instance:{members:[{...r,flags:1,bitOffset:3040,bitSize:0,byteSize:0,slot:0,name:"retval",structure:s},{...r,type:5,flags:1,bitOffset:2944,bitSize:64,byteSize:8,slot:1,name:"0",structure:m},{...r,type:5,flags:1,bitOffset:0,bitSize:2944,byteSize:368,slot:2,name:"1",structure:oA},{...r,type:3,flags:1,bitOffset:3008,bitSize:32,byteSize:4,slot:3,name:"2",structure:b}]}}),mI(IA,{...A,type:14,signature:0x43c5436481c75e6dn,name:"fn ([]const PointUV, DrawUniform, u32) void",length:3,instance:{members:[{...r,type:5,bitSize:3072,byteSize:384,structure:gA}],template:Kn},static:{members:[],template:Tn}}),mI(QA,{...A,type:8,flags:204,signature:0x673f1c5641823f18n,name:"*const fn ([]const PointUV, DrawUniform, u32) void",byteSize:4,align:4,instance:{members:[{...r,type:5,bitSize:32,byteSize:4,slot:0,structure:IA}]}}),mI(CA,{...A,type:1,flags:64,signature:0x6d60cb6f613019aan,name:"[4]u32",length:4,byteSize:16,align:4,instance:{members:[{...r,type:3,bitSize:32,byteSize:4,structure:b}]}}),mI(cA,{...A,type:2,flags:26,signature:0x3cad7320ede972e2n,name:"PickVertex",byteSize:32,align:4,instance:{members:[{...r,type:5,flags:1,bitOffset:0,bitSize:128,byteSize:16,slot:0,name:"point",structure:y},{...r,type:5,flags:1,bitOffset:128,bitSize:128,byteSize:16,slot:1,name:"id",structure:CA}],template:Hn}}),mI(BA,{...A,type:9,flags:10,signature:0xa6fe4858c0857d6dn,name:"[_]PickVertex",byteSize:32,align:4,instance:{members:[{...r,type:5,bitSize:256,byteSize:32,structure:cA}]}}),mI(lA,{...A,type:8,flags:188,signature:0x8b5085e14c0be0d9n,name:"[]const PickVertex",byteSize:8,align:4,instance:{members:[{...r,type:5,bitSize:64,byteSize:8,slot:0,structure:BA}]}}),mI(uA,{...A,type:12,flags:14,signature:0x97dc1de2cc30f266n,name:"Arg(fn ([]const PickVertex, u32) void)",length:2,byteSize:12,align:4,instance:{members:[{...r,flags:1,bitOffset:96,bitSize:0,byteSize:0,slot:0,name:"retval",structure:s},{...r,type:5,flags:1,bitOffset:0,bitSize:64,byteSize:8,slot:1,name:"0",structure:lA},{...r,type:3,flags:1,bitOffset:64,bitSize:32,byteSize:4,slot:2,name:"1",structure:b}]}}),mI(EA,{...A,type:14,signature:0x1abcbee37e184e77n,name:"fn ([]const PickVertex, u32) void",length:2,instance:{members:[{...r,type:5,bitSize:96,byteSize:12,structure:uA}],template:Yn},static:{members:[],template:Pn}}),mI(fA,{...A,type:8,flags:204,signature:0xcde286d73f219d41n,name:"*const fn ([]const PickVertex, u32) void",byteSize:4,align:4,instance:{members:[{...r,type:5,bitSize:32,byteSize:4,slot:0,structure:EA}]}}),mI(hA,{...A,type:2,flags:26,signature:0x1bee0546b01f3c4bn,name:"PickInstance",byteSize:76,align:4,instance:{members:[{...r,type:5,flags:1,bitOffset:0,bitSize:128,byteSize:16,slot:0,name:"p0",structure:y},{...r,type:5,flags:1,bitOffset:128,bitSize:128,byteSize:16,slot:1,name:"p1",structure:y},{...r,type:5,flags:1,bitOffset:256,bitSize:128,byteSize:16,slot:2,name:"p2",structure:y},{...r,type:5,flags:1,bitOffset:384,bitSize:128,byteSize:16,slot:3,name:"id",structure:CA},{...r,type:5,flags:1,bitOffset:512,bitSize:96,byteSize:12,slot:4,name:"radius",structure:x}],template:Vn}}),mI(pA,{...A,type:9,flags:10,signature:0x199be0bc5f322739n,name:"[_]PickInstance",byteSize:76,align:4,instance:{members:[{...r,type:5,bitSize:608,byteSize:76,structure:hA}]}}),mI(yA,{...A,type:8,flags:188,signature:0x5188567a77db91can,name:"[]const PickInstance",byteSize:8,align:4,instance:{members:[{...r,type:5,bitSize:64,byteSize:8,slot:0,structure:pA}]}}),mI(dA,{...A,type:12,flags:14,signature:0x3c18777eb99f248bn,name:"Arg(fn ([]const PickInstance) void)",length:1,byteSize:8,align:4,instance:{members:[{...r,flags:1,bitOffset:64,bitSize:0,byteSize:0,slot:0,name:"retval",structure:s},{...r,type:5,flags:1,bitOffset:0,bitSize:64,byteSize:8,slot:1,name:"0",structure:yA}]}}),mI(mA,{...A,type:14,signature:0xabc9dbbca86a3778n,name:"fn ([]const PickInstance) void",length:1,instance:{members:[{...r,type:5,bitSize:64,byteSize:8,structure:dA}],template:_n},static:{members:[],template:Wn}}),mI(bA,{...A,type:8,flags:204,signature:0x0c062d7fbc8eefacn,name:"*const fn ([]const PickInstance) void",byteSize:4,align:4,instance:{members:[{...r,type:5,bitSize:32,byteSize:4,slot:0,structure:mA}]}}),mI(DA,{...A,type:2,signature:0xcebaa9e2330cf84cn,name:"PickUniform",byteSize:8,align:4,instance:{members:[{...r,type:4,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:0,name:"dist_start",structure:a},{...r,type:4,flags:1,bitOffset:32,bitSize:32,byteSize:4,slot:1,name:"dist_end",structure:a}],template:Xn}}),mI(SA,{...A,type:12,flags:14,signature:0x1a483e4175b48f5fn,name:"Arg(fn ([]const PickVertex, PickUniform, u32) void)",length:3,byteSize:20,align:4,instance:{members:[{...r,flags:1,bitOffset:160,bitSize:0,byteSize:0,slot:0,name:"retval",structure:s},{...r,type:5,flags:1,bitOffset:0,bitSize:64,byteSize:8,slot:1,name:"0",structure:lA},{...r,type:5,flags:1,bitOffset:64,bitSize:64,byteSize:8,slot:2,name:"1",structure:DA},{...r,type:3,flags:1,bitOffset:128,bitSize:32,byteSize:4,slot:3,name:"2",structure:b}]}}),mI(wA,{...A,type:14,signature:0xd4e43741c641092an,name:"fn ([]const PickVertex, PickUniform, u32) void",length:3,instance:{members:[{...r,type:5,bitSize:160,byteSize:20,structure:SA}],template:jn},static:{members:[],template:Zn}}),mI(vA,{...A,type:8,flags:204,signature:0x8af50866e58be998n,name:"*const fn ([]const PickVertex, PickUniform, u32) void",byteSize:4,align:4,instance:{members:[{...r,type:5,bitSize:32,byteSize:4,slot:0,structure:wA}]}}),mI(kA,{...A,type:2,flags:14,signature:0x70ac94780a2323c1n,name:"WebGpuPrograms",byteSize:40,align:4,instance:{members:[{...r,type:5,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:0,name:"draw_texture",structure:w},{...r,type:5,flags:1,bitOffset:32,bitSize:32,byteSize:4,slot:1,name:"draw_triangle",structure:F},{...r,type:5,flags:1,bitOffset:64,bitSize:32,byteSize:4,slot:2,name:"compute_shape",structure:O},{...r,type:5,flags:1,bitOffset:96,bitSize:32,byteSize:4,slot:3,name:"clear_sdf",structure:H},{...r,type:5,flags:1,bitOffset:128,bitSize:32,byteSize:4,slot:4,name:"combine_sdf",structure:_},{...r,type:5,flags:1,bitOffset:160,bitSize:32,byteSize:4,slot:5,name:"draw_blur",structure:j},{...r,type:5,flags:1,bitOffset:192,bitSize:32,byteSize:4,slot:6,name:"draw_shape",structure:QA},{...r,type:5,flags:1,bitOffset:224,bitSize:32,byteSize:4,slot:7,name:"pick_texture",structure:fA},{...r,type:5,flags:1,bitOffset:256,bitSize:32,byteSize:4,slot:8,name:"pick_triangle",structure:bA},{...r,type:5,flags:1,bitOffset:288,bitSize:32,byteSize:4,slot:9,name:"pick_shape",structure:vA}],template:$n}}),mI(xA,{...A,type:8,flags:204,signature:0x4acb34c3b2746433n,name:"*const WebGpuPrograms",byteSize:4,align:4,instance:{members:[{...r,type:5,bitSize:32,byteSize:4,slot:0,structure:kA}]}}),mI(NA,{...A,type:12,flags:14,signature:0x7d3eadcf8af54d67n,name:"Arg(fn (*const WebGpuPrograms) void)",length:1,byteSize:4,align:4,instance:{members:[{...r,flags:1,bitOffset:32,bitSize:0,byteSize:0,slot:0,name:"retval",structure:s},{...r,type:5,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:1,name:"0",structure:xA}]}}),mI(UA,{...A,type:14,signature:0x876f54058f5a8a1dn,name:"fn (*const WebGpuPrograms) void",length:1,instance:{members:[{...r,type:5,bitSize:32,byteSize:4,structure:NA}],template:pr}}),mI(GA,{...A,type:1,flags:10,signature:0x009c896a0d8f3812n,name:"[4]PointUV",length:4,byteSize:64,align:4,instance:{members:[{...r,type:5,bitSize:128,byteSize:16,structure:y}]}}),mI(MA,{...A,flags:1,signature:0x6eddab4b13ff06c5n,name:"bool",byteSize:1,align:1,instance:{members:[{...r,type:1,bitOffset:0,bitSize:1,byteSize:1,structure:MA}]}}),mI(RA,{...A,type:12,flags:10,signature:0x58a13edda65f5ed0n,name:"Arg(fn (Serialized, Serialized) bool)",length:2,byteSize:148,align:4,instance:{members:[{...r,type:1,flags:1,bitOffset:1152,bitSize:1,byteSize:1,slot:0,name:"retval",structure:MA},{...r,type:5,flags:1,bitOffset:0,bitSize:576,byteSize:72,slot:1,name:"0",structure:LA},{...r,type:5,flags:1,bitOffset:576,bitSize:576,byteSize:72,slot:2,name:"1",structure:LA}]}}),mI(FA,{...A,type:14,signature:0x360330571d9497c6n,name:"fn (Serialized, Serialized) bool",length:2,instance:{members:[{...r,type:5,bitSize:1184,byteSize:148,structure:RA}],template:yr}}),mI(LA,{...A,type:2,flags:10,signature:0xb39c5f7dff3b2904n,name:"Serialized",byteSize:72,align:4,instance:{members:[{...r,type:5,flags:1,bitOffset:0,bitSize:512,byteSize:64,slot:0,name:"bounds",structure:GA},{...r,type:3,flags:1,bitOffset:512,bitSize:32,byteSize:4,slot:1,name:"texture_id",structure:b},{...r,type:3,flags:1,bitOffset:544,bitSize:32,byteSize:4,slot:2,name:"id",structure:b}],template:dr},static:{members:[{...r,type:5,flags:18,slot:0,name:"compare",structure:FA}],template:mr}}),mI(zA,{...A,type:9,flags:14,signature:0x28f4d67d0bc5a78fn,name:"[_][]const Point",byteSize:8,align:4,instance:{members:[{...r,type:5,bitSize:64,byteSize:8,structure:z}]}}),mI(qA,{...A,type:8,flags:188,signature:0x7ad3432b0313bcc4n,name:"[]const []const Point",byteSize:8,align:4,instance:{members:[{...r,type:5,bitSize:64,byteSize:8,slot:0,structure:zA}]}}),mI(JA,{...A,type:12,flags:10,signature:0x176aa807147c42f7n,name:"Arg(fn (GradientStop, GradientStop) bool)",length:2,byteSize:44,align:4,instance:{members:[{...r,type:1,flags:1,bitOffset:320,bitSize:1,byteSize:1,slot:0,name:"retval",structure:MA},{...r,type:5,flags:1,bitOffset:0,bitSize:160,byteSize:20,slot:1,name:"0",structure:KA},{...r,type:5,flags:1,bitOffset:160,bitSize:160,byteSize:20,slot:2,name:"1",structure:KA}]}}),mI(OA,{...A,type:14,signature:0x5ab6fe105d4fbdb3n,name:"fn (GradientStop, GradientStop) bool",length:2,instance:{members:[{...r,type:5,bitSize:352,byteSize:44,structure:JA}],template:Dr}}),mI(KA,{...A,type:2,flags:26,signature:0x0913e15ff917a229n,name:"GradientStop",byteSize:20,align:4,instance:{members:[{...r,type:5,flags:1,bitOffset:0,bitSize:128,byteSize:16,slot:0,name:"color",structure:eA},{...r,type:4,flags:1,bitOffset:128,bitSize:32,byteSize:4,slot:1,name:"offset",structure:a}],template:Sr},static:{members:[{...r,type:5,flags:18,slot:0,name:"compare",structure:OA}],template:wr}}),mI(TA,{...A,type:9,flags:10,signature:0x7b432d3e8877b341n,name:"[_]GradientStop",byteSize:20,align:4,instance:{members:[{...r,type:5,bitSize:160,byteSize:20,structure:KA}]}}),mI(HA,{...A,type:8,flags:60,signature:0x5e6d4f4686359ed4n,name:"[]GradientStop",byteSize:8,align:4,instance:{members:[{...r,type:5,bitSize:64,byteSize:8,slot:0,structure:TA}]}}),mI(YA,{...A,type:2,flags:14,signature:0xb8e52699e00d4cb2n,name:"SerializedLinearGradient",byteSize:24,align:4,instance:{members:[{...r,type:5,flags:1,bitOffset:0,bitSize:64,byteSize:8,slot:0,name:"start",structure:B},{...r,type:5,flags:1,bitOffset:64,bitSize:64,byteSize:8,slot:1,name:"end",structure:B},{...r,type:5,flags:1,bitOffset:128,bitSize:64,byteSize:8,slot:2,name:"stops",structure:HA}],template:kr}}),mI(PA,{...A,type:2,flags:14,signature:0xd33658d326d7d7f1n,name:"SerializedRadialGradient",byteSize:28,align:4,instance:{members:[{...r,type:4,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:0,name:"radius_ratio",structure:a},{...r,type:5,flags:1,bitOffset:32,bitSize:64,byteSize:8,slot:1,name:"center",structure:B},{...r,type:5,flags:1,bitOffset:96,bitSize:64,byteSize:8,slot:2,name:"destination",structure:B},{...r,type:5,flags:1,bitOffset:160,bitSize:64,byteSize:8,slot:3,name:"stops",structure:HA}],template:Nr}}),mI(VA,{...A,type:6,flags:1,signature:0x429513dea7837a43n,name:"EN1",byteSize:1,align:1,instance:{members:[{...r,type:3,bitOffset:0,bitSize:2,byteSize:1,structure:VA}]},static:{members:[{...r,type:5,flags:4,slot:0,name:"linear",structure:VA},{...r,type:5,flags:4,slot:1,name:"radial",structure:VA},{...r,type:5,flags:4,slot:2,name:"solid",structure:VA}],template:Gr}}),mI(_A,{...A,type:12,flags:14,signature:0xc6620c10f001ea7fn,name:"Arg(fn (SerializedFill, SerializedFill) bool)",length:2,byteSize:68,align:4,instance:{members:[{...r,type:1,flags:1,bitOffset:512,bitSize:1,byteSize:1,slot:0,name:"retval",structure:MA},{...r,type:5,flags:1,bitOffset:0,bitSize:256,byteSize:32,slot:1,name:"0",structure:XA},{...r,type:5,flags:1,bitOffset:256,bitSize:256,byteSize:32,slot:2,name:"1",structure:XA}]}}),mI(WA,{...A,type:14,signature:0xded4888babf4368fn,name:"fn (SerializedFill, SerializedFill) bool",length:2,instance:{members:[{...r,type:5,bitSize:544,byteSize:68,structure:_A}],template:Lr}}),mI(XA,{...A,type:3,flags:62,signature:0xd93e48683d9c2917n,name:"SerializedFill",byteSize:32,align:4,instance:{members:[{...r,type:5,bitOffset:0,bitSize:192,byteSize:24,slot:0,name:"linear",structure:YA},{...r,type:5,bitOffset:0,bitSize:224,byteSize:28,slot:1,name:"radial",structure:PA},{...r,type:5,bitOffset:0,bitSize:128,byteSize:16,slot:2,name:"solid",structure:eA},{...r,type:3,flags:8,bitOffset:224,bitSize:2,byteSize:1,structure:VA}]},static:{members:[{...r,type:5,flags:18,slot:0,name:"compare",structure:WA}],template:zr}}),mI(jA,{...A,type:2,flags:14,signature:0x724eb4298011305en,name:"SerializedSdfEffect",byteSize:40,align:4,instance:{members:[{...r,type:4,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:0,name:"dist_start",structure:a},{...r,type:4,flags:1,bitOffset:32,bitSize:32,byteSize:4,slot:1,name:"dist_end",structure:a},{...r,type:5,flags:1,bitOffset:64,bitSize:256,byteSize:32,slot:2,name:"fill",structure:XA}],template:Jr}}),mI(ZA,{...A,type:9,flags:14,signature:0x076e7ae5b86c0f77n,name:"[_]SerializedSdfEffect",byteSize:40,align:4,instance:{members:[{...r,type:5,bitSize:320,byteSize:40,structure:jA}]}}),mI($A,{...A,type:8,flags:188,signature:0xc6e96a13ca810a21n,name:"[]const SerializedSdfEffect",byteSize:8,align:4,instance:{members:[{...r,type:5,bitSize:64,byteSize:8,slot:0,structure:ZA}]}}),mI(Ae,{...A,type:2,flags:10,signature:0x186189c59a882b0cn,name:"Filter",byteSize:8,align:4,instance:{members:[{...r,type:5,flags:1,bitOffset:0,bitSize:64,byteSize:8,slot:0,name:"gaussianBlur",structure:B}],template:Pr}}),mI(ee,{...A,type:7,flags:27,signature:0xf6590c3c20e730a9n,name:"?Filter",byteSize:12,align:4,instance:{members:[{...r,type:5,bitOffset:0,bitSize:64,byteSize:8,slot:0,structure:Ae},{...r,type:3,flags:8,bitOffset:64,bitSize:8,byteSize:1,structure:v}]}}),mI(te,{...A,type:12,flags:14,signature:0x11a4c5a9b090d0e9n,name:"Arg(fn (SerializedProps, SerializedProps) bool)",length:2,byteSize:52,align:4,instance:{members:[{...r,type:1,flags:1,bitOffset:384,bitSize:1,byteSize:1,slot:0,name:"retval",structure:MA},{...r,type:5,flags:1,bitOffset:0,bitSize:192,byteSize:24,slot:1,name:"0",structure:ne},{...r,type:5,flags:1,bitOffset:192,bitSize:192,byteSize:24,slot:2,name:"1",structure:ne}]}}),mI(ie,{...A,type:14,signature:0xc884f2247db508d4n,name:"fn (SerializedProps, SerializedProps) bool",length:2,instance:{members:[{...r,type:5,bitSize:416,byteSize:52,structure:te}],template:Vr}}),mI(ne,{...A,type:2,flags:4110,signature:0x34250012a56f0f2an,name:"SerializedProps",byteSize:24,align:4,instance:{members:[{...r,type:5,bitOffset:0,bitSize:64,byteSize:8,slot:0,name:"sdf_effects",structure:$A},{...r,type:5,bitOffset:64,bitSize:96,byteSize:12,slot:1,name:"filter",structure:ee},{...r,type:4,bitOffset:160,bitSize:32,byteSize:4,slot:2,name:"opacity",structure:a}],template:_r},static:{members:[{...r,type:5,flags:18,slot:0,name:"compare",structure:ie}],template:jr}}),mI(re,{...A,type:7,flags:17,signature:0x6a0f688da3728775n,name:"?u32",byteSize:8,align:4,instance:{members:[{...r,type:3,bitOffset:0,bitSize:32,byteSize:4,slot:0,structure:b},{...r,type:3,flags:8,bitOffset:32,bitSize:8,byteSize:1,structure:v}]}}),mI(se,{...A,type:12,flags:14,signature:0xddb6d6caa19bbf41n,name:"Arg(fn (Serialized, Serialized) bool)",length:2,byteSize:228,align:4,instance:{members:[{...r,type:1,flags:1,bitOffset:1792,bitSize:1,byteSize:1,slot:0,name:"retval",structure:MA},{...r,type:5,flags:1,bitOffset:0,bitSize:896,byteSize:112,slot:1,name:"0",structure:oe},{...r,type:5,flags:1,bitOffset:896,bitSize:896,byteSize:112,slot:2,name:"1",structure:oe}]}}),mI(ae,{...A,type:14,signature:0x86a434d5de44aaeen,name:"fn (Serialized, Serialized) bool",length:2,instance:{members:[{...r,type:5,bitSize:1824,byteSize:228,structure:se}],template:$r}}),mI(oe,{...A,type:2,flags:14,signature:0x1fd2ad6b7b50b83cn,name:"Serialized",byteSize:112,align:4,instance:{members:[{...r,type:3,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:0,name:"id",structure:b},{...r,type:5,flags:1,bitOffset:32,bitSize:64,byteSize:8,slot:1,name:"paths",structure:qA},{...r,type:5,flags:1,bitOffset:96,bitSize:192,byteSize:24,slot:2,name:"props",structure:ne},{...r,type:5,flags:1,bitOffset:288,bitSize:512,byteSize:64,slot:3,name:"bounds",structure:GA},{...r,type:3,flags:1,bitOffset:800,bitSize:32,byteSize:4,slot:4,name:"sdf_texture_id",structure:b},{...r,type:5,flags:1,bitOffset:832,bitSize:64,byteSize:8,slot:5,name:"cache_texture_id",structure:re}],template:As},static:{members:[{...r,type:5,flags:18,slot:0,name:"compare",structure:ae}],template:ns}}),mI(ge,{...A,type:9,flags:224,signature:0x9b3f78f92307ba61n,name:"[_]u8",byteSize:1,align:1,instance:{members:[{...r,type:3,bitSize:8,byteSize:1,structure:v}]}}),mI(Ie,{...A,type:8,flags:188,signature:0x7e2f0adf211d515en,name:"[]const u8",byteSize:8,align:4,instance:{members:[{...r,type:5,bitSize:64,byteSize:8,slot:0,structure:ge}]}}),mI(Qe,{...A,flags:17,signature:0xad790f74c7d61933n,name:"usize",byteSize:4,align:4,instance:{members:[{...r,type:3,bitOffset:0,bitSize:32,byteSize:4,structure:Qe}]}}),mI(Ce,{...A,type:7,flags:15,signature:0xebf81e7a82becd63n,name:"?[]const u8",byteSize:8,align:4,instance:{members:[{...r,type:5,bitOffset:0,bitSize:64,byteSize:8,slot:0,structure:Ie},{...r,type:3,flags:8,bitOffset:0,bitSize:32,byteSize:4,structure:Qe}]}}),mI(ce,{...A,type:12,flags:14,signature:0xcc11fdc7e0265fafn,name:"Arg(fn (Serialized, Serialized) bool)",length:2,byteSize:212,align:4,instance:{members:[{...r,type:1,flags:1,bitOffset:1664,bitSize:1,byteSize:1,slot:0,name:"retval",structure:MA},{...r,type:5,flags:1,bitOffset:0,bitSize:832,byteSize:104,slot:1,name:"0",structure:le},{...r,type:5,flags:1,bitOffset:832,bitSize:832,byteSize:104,slot:2,name:"1",structure:le}]}}),mI(Be,{...A,type:14,signature:0xb932ae3bc2509a83n,name:"fn (Serialized, Serialized) bool",length:2,instance:{members:[{...r,type:5,bitSize:1696,byteSize:212,structure:ce}],template:ss}}),mI(le,{...A,type:2,flags:14,signature:0x7439e7f6d7c6382bn,name:"Serialized",byteSize:104,align:4,instance:{members:[{...r,type:3,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:0,name:"id",structure:b},{...r,type:5,flags:129,bitOffset:32,bitSize:64,byteSize:8,slot:1,name:"content",structure:Ce},{...r,type:5,flags:1,bitOffset:96,bitSize:512,byteSize:64,slot:2,name:"bounds",structure:GA},{...r,type:4,flags:1,bitOffset:608,bitSize:32,byteSize:4,slot:3,name:"font_size",structure:a},{...r,type:5,flags:1,bitOffset:640,bitSize:192,byteSize:24,slot:4,name:"props",structure:ne}],template:as},static:{members:[{...r,type:5,flags:18,slot:0,name:"compare",structure:Be}],template:Cs}}),mI(ue,{...A,type:6,flags:1,signature:0x7cf6a3de88cb8656n,name:"EN2",byteSize:1,align:1,instance:{members:[{...r,type:3,bitOffset:0,bitSize:2,byteSize:1,structure:ue}]},static:{members:[{...r,type:5,flags:4,slot:0,name:"img",structure:ue},{...r,type:5,flags:4,slot:1,name:"shape",structure:ue},{...r,type:5,flags:4,slot:2,name:"text",structure:ue}],template:Bs}}),mI(Ee,{...A,type:3,flags:62,signature:0xe208830287208ab8n,name:"AssetSerialized",byteSize:116,align:4,instance:{members:[{...r,type:5,bitOffset:0,bitSize:576,byteSize:72,slot:0,name:"img",structure:LA},{...r,type:5,bitOffset:0,bitSize:896,byteSize:112,slot:1,name:"shape",structure:oe},{...r,type:5,bitOffset:0,bitSize:832,byteSize:104,slot:2,name:"text",structure:le},{...r,type:3,flags:8,bitOffset:896,bitSize:2,byteSize:1,structure:ue}]}}),mI(fe,{...A,type:9,flags:14,signature:0x545b35b0e86f5133n,name:"[_]AssetSerialized",byteSize:116,align:4,instance:{members:[{...r,type:5,bitSize:928,byteSize:116,structure:Ee}]}}),mI(he,{...A,type:8,flags:188,signature:0xdb8c3c7eb33ba569n,name:"[]const AssetSerialized",byteSize:8,align:4,instance:{members:[{...r,type:5,bitSize:64,byteSize:8,slot:0,structure:fe}]}}),mI(pe,{...A,type:2,flags:14,signature:0x040f51ff54213f3en,name:"ProjectSnapshot",byteSize:16,align:4,instance:{members:[{...r,type:4,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:0,name:"width",structure:a},{...r,type:4,flags:1,bitOffset:32,bitSize:32,byteSize:4,slot:1,name:"height",structure:a},{...r,type:5,flags:1,bitOffset:64,bitSize:64,byteSize:8,slot:2,name:"assets",structure:he}],template:fs}}),mI(ye,{...A,type:12,flags:14,signature:0xd9001d9356e45d7en,name:"Arg(fn (ProjectSnapshot, bool) void)",length:2,byteSize:20,align:4,instance:{members:[{...r,flags:1,bitOffset:128,bitSize:0,byteSize:0,slot:0,name:"retval",structure:s},{...r,type:5,flags:1,bitOffset:0,bitSize:128,byteSize:16,slot:1,name:"0",structure:pe},{...r,type:1,flags:1,bitOffset:128,bitSize:1,byteSize:1,slot:2,name:"1",structure:MA}]}}),mI(de,{...A,type:14,signature:0xddafa6850f9027c2n,name:"fn (ProjectSnapshot, bool) void",length:2,instance:{members:[{...r,type:5,bitSize:160,byteSize:20,structure:ye}],template:ps},static:{members:[],template:ys}}),mI(me,{...A,type:8,flags:204,signature:0xd1901b5d5189151bn,name:"*const fn (ProjectSnapshot, bool) void",byteSize:4,align:4,instance:{members:[{...r,type:5,bitSize:32,byteSize:4,slot:0,structure:de}]}}),mI(be,{...A,type:12,flags:14,signature:0x6543fa9ea99d9074n,name:"Arg(fn (*const fn (ProjectSnapshot, bool) void) void)",length:1,byteSize:4,align:4,instance:{members:[{...r,flags:1,bitOffset:32,bitSize:0,byteSize:0,slot:0,name:"retval",structure:s},{...r,type:5,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:1,name:"0",structure:me}]}}),mI(De,{...A,type:14,signature:0x304d12c86d40378cn,name:"fn (*const fn (ProjectSnapshot, bool) void) void",length:1,instance:{members:[{...r,type:5,bitSize:32,byteSize:4,structure:be}],template:ds}}),mI(Se,{...A,type:12,flags:10,signature:0xeff0bc9c5c749d57n,name:"Arg(fn ([4]u32) void)",length:1,byteSize:16,align:4,instance:{members:[{...r,flags:1,bitOffset:128,bitSize:0,byteSize:0,slot:0,name:"retval",structure:s},{...r,type:5,flags:1,bitOffset:0,bitSize:128,byteSize:16,slot:1,name:"0",structure:CA}]}}),mI(we,{...A,type:14,signature:0xb1f961dbd50d7202n,name:"fn ([4]u32) void",length:1,instance:{members:[{...r,type:5,bitSize:128,byteSize:16,structure:Se}],template:ms},static:{members:[],template:bs}}),mI(ve,{...A,type:8,flags:204,signature:0x0a1ebb9b406dec77n,name:"*const fn ([4]u32) void",byteSize:4,align:4,instance:{members:[{...r,type:5,bitSize:32,byteSize:4,slot:0,structure:we}]}}),mI(ke,{...A,type:12,flags:14,signature:0xe678ce0c736f4e9cn,name:"Arg(fn (*const fn ([4]u32) void) void)",length:1,byteSize:4,align:4,instance:{members:[{...r,flags:1,bitOffset:32,bitSize:0,byteSize:0,slot:0,name:"retval",structure:s},{...r,type:5,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:1,name:"0",structure:ve}]}}),mI(xe,{...A,type:14,signature:0xe323dc0b01a1fb73n,name:"fn (*const fn ([4]u32) void) void",length:1,instance:{members:[{...r,type:5,bitSize:32,byteSize:4,structure:ke}],template:Ds}}),mI(Ne,{...A,type:12,signature:0xb8221fe5faddda90n,name:"Arg(fn () u32)",length:0,byteSize:4,align:4,instance:{members:[{...r,type:3,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:0,name:"retval",structure:b}]}}),mI(Ue,{...A,type:14,signature:0xa711f1fddc7220c8n,name:"fn () u32",length:0,instance:{members:[{...r,type:5,bitSize:32,byteSize:4,structure:Ne}],template:Ss},static:{members:[],template:ws}}),mI(Ge,{...A,type:8,flags:204,signature:0x95f80fcb924afccen,name:"*const fn () u32",byteSize:4,align:4,instance:{members:[{...r,type:5,bitSize:32,byteSize:4,slot:0,structure:Ue}]}}),mI(Me,{...A,type:12,signature:0x0566d9844dbd337dn,name:"Arg(fn (u32, u32) u32)",length:2,byteSize:12,align:4,instance:{members:[{...r,type:3,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:0,name:"retval",structure:b},{...r,type:3,flags:1,bitOffset:32,bitSize:32,byteSize:4,slot:1,name:"0",structure:b},{...r,type:3,flags:1,bitOffset:64,bitSize:32,byteSize:4,slot:2,name:"1",structure:b}]}}),mI(Re,{...A,type:14,signature:0x9f755f6b39d42191n,name:"fn (u32, u32) u32",length:2,instance:{members:[{...r,type:5,bitSize:96,byteSize:12,structure:Me}],template:vs},static:{members:[],template:ks}}),mI(Fe,{...A,type:8,flags:204,signature:0x3903f2f9a3f32669n,name:"*const fn (u32, u32) u32",byteSize:4,align:4,instance:{members:[{...r,type:5,bitSize:32,byteSize:4,slot:0,structure:Re}]}}),mI(Le,{...A,type:12,flags:14,signature:0x6374e64b8283db5fn,name:"Arg(fn (*const fn () u32, *const fn (u32, u32) u32) void)",length:2,byteSize:8,align:4,instance:{members:[{...r,flags:1,bitOffset:64,bitSize:0,byteSize:0,slot:0,name:"retval",structure:s},{...r,type:5,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:1,name:"0",structure:Ge},{...r,type:5,flags:1,bitOffset:32,bitSize:32,byteSize:4,slot:2,name:"1",structure:Fe}]}}),mI(ze,{...A,type:14,signature:0xbc13909c33e6aa17n,name:"fn (*const fn () u32, *const fn (u32, u32) u32) void",length:2,instance:{members:[{...r,type:5,bitSize:64,byteSize:8,structure:Le}],template:xs}}),mI(qe,{...A,flags:1,signature:0xe2acd8c981a459den,name:"u16",byteSize:2,align:2,instance:{members:[{...r,type:3,bitOffset:0,bitSize:16,byteSize:2,structure:qe}]}}),mI(Je,{...A,type:12,signature:0x3713837871c72c85n,name:"Arg(fn (u16) void)",length:1,byteSize:2,align:2,instance:{members:[{...r,flags:1,bitOffset:16,bitSize:0,byteSize:0,slot:0,name:"retval",structure:s},{...r,type:3,flags:1,bitOffset:0,bitSize:16,byteSize:2,slot:1,name:"0",structure:qe}]}}),mI(Oe,{...A,type:14,signature:0xebac9d6609aac3a5n,name:"fn (u16) void",length:1,instance:{members:[{...r,type:5,bitSize:16,byteSize:2,structure:Je}],template:Ns},static:{members:[],template:Us}}),mI(Ke,{...A,type:8,flags:204,signature:0x5e5302dca1272845n,name:"*const fn (u16) void",byteSize:4,align:4,instance:{members:[{...r,type:5,bitSize:32,byteSize:4,slot:0,structure:Oe}]}}),mI(Te,{...A,type:12,flags:14,signature:0xa7c561935592105dn,name:"Arg(fn (*const fn (u16) void) void)",length:1,byteSize:4,align:4,instance:{members:[{...r,flags:1,bitOffset:32,bitSize:0,byteSize:0,slot:0,name:"retval",structure:s},{...r,type:5,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:1,name:"0",structure:Ke}]}}),mI(He,{...A,type:14,signature:0x385ffb81ccffe316n,name:"fn (*const fn (u16) void) void",length:1,instance:{members:[{...r,type:5,bitSize:32,byteSize:4,structure:Te}],template:Gs}}),mI(Ye,{...A,flags:9,signature:0x406b8a99e2cc9d59n,name:"type",align:1,instance:{members:[{...r,type:6,bitOffset:0,bitSize:0,byteSize:0,slot:0,structure:Ye}]}}),mI(Pe,{...A,type:5,flags:1,signature:0x25c89e63075b428an,name:"ES0",byteSize:2,align:2,instance:{members:[{...r,type:3,bitOffset:0,bitSize:16,byteSize:2,structure:Pe}]},static:{members:[{...r,type:5,flags:4,slot:0,name:"OutOfMemory",structure:Pe}],template:Ms}}),mI(Ve,{...A,type:4,flags:1,signature:0x6b7a39b249c617e5n,name:"ES0!void",byteSize:2,align:2,instance:{members:[{...r,bitOffset:16,bitSize:0,byteSize:0,slot:0,structure:s},{...r,type:3,flags:8,bitOffset:0,bitSize:16,byteSize:2,structure:Pe}]}}),mI(_e,{...A,type:8,flags:76,signature:0x91728680875c3974n,name:"*SerializedCharDetails",byteSize:4,align:4,instance:{members:[{...r,type:5,bitSize:32,byteSize:4,slot:0,structure:je}]}}),mI(We,{...A,type:12,flags:46,signature:0xb41ed3eb5bda8946n,name:"Arg(fn (*SerializedCharDetails, []const Point) ES0!void)",length:2,byteSize:16,align:4,instance:{members:[{...r,type:5,flags:1,bitOffset:96,bitSize:16,byteSize:2,slot:0,name:"retval",structure:Ve},{...r,type:5,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:1,name:"0",structure:_e},{...r,type:5,flags:1,bitOffset:32,bitSize:64,byteSize:8,slot:2,name:"1",structure:z}]}}),mI(Xe,{...A,type:14,signature:0xf6bba025f3c374f7n,name:"fn (*SerializedCharDetails, []const Point) ES0!void",length:2,instance:{members:[{...r,type:5,bitSize:128,byteSize:16,structure:We}],template:Fs}}),mI(je,{...A,type:2,flags:14,signature:0x3ca17ac5c5c6d21fn,name:"SerializedCharDetails",byteSize:32,align:4,instance:{members:[{...r,type:5,bitOffset:0,bitSize:64,byteSize:8,slot:0,name:"points",structure:z},{...r,type:4,flags:1,bitOffset:64,bitSize:32,byteSize:4,slot:1,name:"x",structure:a},{...r,type:4,flags:1,bitOffset:96,bitSize:32,byteSize:4,slot:2,name:"y",structure:a},{...r,type:4,flags:1,bitOffset:128,bitSize:32,byteSize:4,slot:3,name:"width",structure:a},{...r,type:4,flags:1,bitOffset:160,bitSize:32,byteSize:4,slot:4,name:"height",structure:a},{...r,type:5,flags:1,bitOffset:192,bitSize:64,byteSize:8,slot:5,name:"sdf_texture_id",structure:re}],template:Ls},static:{members:[{...r,type:5,flags:18,slot:0,name:"setPaths",structure:Xe}],template:Js}}),mI(Ze,{...A,type:12,flags:14,signature:0x039639ff5924e894n,name:"Arg(fn ([]const u8) void)",length:1,byteSize:8,align:4,instance:{members:[{...r,flags:1,bitOffset:64,bitSize:0,byteSize:0,slot:0,name:"retval",structure:s},{...r,type:5,flags:129,bitOffset:0,bitSize:64,byteSize:8,slot:1,name:"0",structure:Ie}]}}),mI($e,{...A,type:14,signature:0x1eed8488c4c4587dn,name:"fn ([]const u8) void",length:1,instance:{members:[{...r,type:5,bitSize:64,byteSize:8,structure:Ze}],template:Ks},static:{members:[],template:Ts}}),mI(At,{...A,type:8,flags:204,signature:0xf85cb44f556ad1dbn,name:"*const fn ([]const u8) void",byteSize:4,align:4,instance:{members:[{...r,type:5,bitSize:32,byteSize:4,slot:0,structure:$e}]}}),mI(et,{...A,type:12,signature:0xfa22378c989ae19dn,name:"Arg(fn () void)",length:0,align:1,instance:{members:[{...r,flags:1,bitOffset:0,bitSize:0,byteSize:0,slot:0,name:"retval",structure:s}]}}),mI(tt,{...A,type:14,signature:0xe3c3b022a28cd076n,name:"fn () void",length:0,instance:{members:[{...r,type:5,bitSize:0,byteSize:0,structure:et}],template:Hs},static:{members:[],template:Ys}}),mI(it,{...A,type:8,flags:204,signature:0xd7880dadce515974n,name:"*const fn () void",byteSize:4,align:4,instance:{members:[{...r,type:5,bitSize:32,byteSize:4,slot:0,structure:tt}]}}),mI(nt,{...A,type:12,signature:0x3f075bf644453a95n,name:"Arg(fn (u32, u32) void)",length:2,byteSize:8,align:4,instance:{members:[{...r,flags:1,bitOffset:64,bitSize:0,byteSize:0,slot:0,name:"retval",structure:s},{...r,type:3,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:1,name:"0",structure:b},{...r,type:3,flags:1,bitOffset:32,bitSize:32,byteSize:4,slot:2,name:"1",structure:b}]}}),mI(rt,{...A,type:14,signature:0x4c7e047aa4ecbc8an,name:"fn (u32, u32) void",length:2,instance:{members:[{...r,type:5,bitSize:64,byteSize:8,structure:nt}],template:Ps},static:{members:[],template:Vs}}),mI(st,{...A,type:8,flags:204,signature:0xd2046085e5d32a60n,name:"*const fn (u32, u32) void",byteSize:4,align:4,instance:{members:[{...r,type:5,bitSize:32,byteSize:4,slot:0,structure:rt}]}}),mI(at,{...A,flags:1,signature:0x4769a1856fb7a822n,name:"u21",byteSize:4,align:4,instance:{members:[{...r,type:3,bitOffset:0,bitSize:21,byteSize:4,structure:at}]}}),mI(ot,{...A,type:12,flags:14,signature:0xc7036b66cafc0defn,name:"Arg(fn (u32, u21) SerializedCharDetails)",length:2,byteSize:40,align:4,instance:{members:[{...r,type:5,flags:1,bitOffset:0,bitSize:256,byteSize:32,slot:0,name:"retval",structure:je},{...r,type:3,flags:1,bitOffset:256,bitSize:32,byteSize:4,slot:1,name:"0",structure:b},{...r,type:3,flags:1,bitOffset:288,bitSize:21,byteSize:4,slot:2,name:"1",structure:at}]}}),mI(gt,{...A,type:14,signature:0xa3311a6b869c91c8n,name:"fn (u32, u21) SerializedCharDetails",length:2,instance:{members:[{...r,type:5,bitSize:320,byteSize:40,structure:ot}],template:_s},static:{members:[],template:Ws}}),mI(It,{...A,type:8,flags:204,signature:0xa714eeb57ca0b4c3n,name:"*const fn (u32, u21) SerializedCharDetails",byteSize:4,align:4,instance:{members:[{...r,type:5,bitSize:32,byteSize:4,slot:0,structure:gt}]}}),mI(Qt,{...A,type:12,signature:0xd9143d269aa36b34n,name:"Arg(fn (u21, u21) f32)",length:2,byteSize:12,align:4,instance:{members:[{...r,type:4,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:0,name:"retval",structure:a},{...r,type:3,flags:1,bitOffset:32,bitSize:21,byteSize:4,slot:1,name:"0",structure:at},{...r,type:3,flags:1,bitOffset:64,bitSize:21,byteSize:4,slot:2,name:"1",structure:at}]}}),mI(Ct,{...A,type:14,signature:0x88315a5b723b6bc2n,name:"fn (u21, u21) f32",length:2,instance:{members:[{...r,type:5,bitSize:96,byteSize:12,structure:Qt}],template:Xs},static:{members:[],template:js}}),mI(ct,{...A,type:8,flags:204,signature:0xe06b7369ba308bfen,name:"*const fn (u21, u21) f32",byteSize:4,align:4,instance:{members:[{...r,type:5,bitSize:32,byteSize:4,slot:0,structure:Ct}]}}),mI(Bt,{...A,type:12,flags:14,signature:0x7a2693af970dccb0n,name:"Arg(fn (*const fn ([]const u8) void, *const fn () void, *const fn ([]const u8) void, *const fn (u32, u32) void, *const fn (u32, u21) SerializedCharDetails, *const fn (u21, u21) f32) void)",length:6,byteSize:24,align:4,instance:{members:[{...r,flags:1,bitOffset:192,bitSize:0,byteSize:0,slot:0,name:"retval",structure:s},{...r,type:5,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:1,name:"0",structure:At},{...r,type:5,flags:1,bitOffset:32,bitSize:32,byteSize:4,slot:2,name:"1",structure:it},{...r,type:5,flags:1,bitOffset:64,bitSize:32,byteSize:4,slot:3,name:"2",structure:At},{...r,type:5,flags:1,bitOffset:96,bitSize:32,byteSize:4,slot:4,name:"3",structure:st},{...r,type:5,flags:1,bitOffset:128,bitSize:32,byteSize:4,slot:5,name:"4",structure:It},{...r,type:5,flags:1,bitOffset:160,bitSize:32,byteSize:4,slot:6,name:"5",structure:ct}]}}),mI(lt,{...A,type:14,signature:0x150db2a684296025n,name:"fn (*const fn ([]const u8) void, *const fn () void, *const fn ([]const u8) void, *const fn (u32, u32) void, *const fn (u32, u21) SerializedCharDetails, *const fn (u21, u21) f32) void",length:6,instance:{members:[{...r,type:5,bitSize:192,byteSize:24,structure:Bt}],template:Zs}}),mI(ut,{...A,type:2,flags:4096,signature:0x57847e8f0b7a3a1fn,name:"BoundingBox",byteSize:16,align:4,instance:{members:[{...r,type:4,bitOffset:0,bitSize:32,byteSize:4,slot:0,name:"min_x",structure:a},{...r,type:4,bitOffset:32,bitSize:32,byteSize:4,slot:1,name:"min_y",structure:a},{...r,type:4,bitOffset:64,bitSize:32,byteSize:4,slot:2,name:"max_x",structure:a},{...r,type:4,bitOffset:96,bitSize:32,byteSize:4,slot:3,name:"max_y",structure:a}],template:$s}}),mI(Et,{...A,type:12,flags:10,signature:0x2ac29501eb9e3e4dn,name:"Arg(fn (u32, BoundingBox, f32, f32) void)",length:4,byteSize:28,align:4,instance:{members:[{...r,flags:1,bitOffset:224,bitSize:0,byteSize:0,slot:0,name:"retval",structure:s},{...r,type:3,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:1,name:"0",structure:b},{...r,type:5,flags:1,bitOffset:32,bitSize:128,byteSize:16,slot:2,name:"1",structure:ut},{...r,type:4,flags:1,bitOffset:160,bitSize:32,byteSize:4,slot:3,name:"2",structure:a},{...r,type:4,flags:1,bitOffset:192,bitSize:32,byteSize:4,slot:4,name:"3",structure:a}]}}),mI(ft,{...A,type:14,signature:0x84892c9ede5beff4n,name:"fn (u32, BoundingBox, f32, f32) void",length:4,instance:{members:[{...r,type:5,bitSize:224,byteSize:28,structure:Et}],template:Aa},static:{members:[],template:ea}}),mI(ht,{...A,type:8,flags:204,signature:0x9d64984c3b5d53can,name:"*const fn (u32, BoundingBox, f32, f32) void",byteSize:4,align:4,instance:{members:[{...r,type:5,bitSize:32,byteSize:4,slot:0,structure:ft}]}}),mI(pt,{...A,type:12,flags:14,signature:0x1900e8aa46b19079n,name:"Arg(fn (*const fn () u32, *const fn (u32, BoundingBox, f32, f32) void, *const fn () void) void)",length:3,byteSize:12,align:4,instance:{members:[{...r,flags:1,bitOffset:96,bitSize:0,byteSize:0,slot:0,name:"retval",structure:s},{...r,type:5,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:1,name:"0",structure:Ge},{...r,type:5,flags:1,bitOffset:32,bitSize:32,byteSize:4,slot:2,name:"1",structure:ht},{...r,type:5,flags:1,bitOffset:64,bitSize:32,byteSize:4,slot:3,name:"2",structure:it}]}}),mI(yt,{...A,type:14,signature:0xc940a272a0334ff0n,name:"fn (*const fn () u32, *const fn (u32, BoundingBox, f32, f32) void, *const fn () void) void",length:3,instance:{members:[{...r,type:5,bitSize:96,byteSize:12,structure:pt}],template:ta}}),mI(dt,{...A,type:5,flags:1,signature:0x25c89e63075b428an,name:"ES1",byteSize:2,align:2,instance:{members:[{...r,type:3,bitOffset:0,bitSize:16,byteSize:2,structure:dt}]},static:{members:[{...r,type:5,flags:4,slot:0,name:"OutOfMemory",structure:dt}],template:ia}}),mI(mt,{...A,type:4,flags:1,signature:0x6b7a39b249c617e5n,name:"ES1!void",byteSize:2,align:2,instance:{members:[{...r,bitOffset:16,bitSize:0,byteSize:0,slot:0,structure:s},{...r,type:3,flags:8,bitOffset:0,bitSize:16,byteSize:2,structure:dt}]}}),mI(bt,{...A,type:12,flags:42,signature:0xbd07afc7a8b47040n,name:"Arg(fn (f32, f32, f32, f32) ES1!void)",length:4,byteSize:20,align:4,instance:{members:[{...r,type:5,flags:1,bitOffset:128,bitSize:16,byteSize:2,slot:0,name:"retval",structure:mt},{...r,type:4,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:1,name:"0",structure:a},{...r,type:4,flags:1,bitOffset:32,bitSize:32,byteSize:4,slot:2,name:"1",structure:a},{...r,type:4,flags:1,bitOffset:64,bitSize:32,byteSize:4,slot:3,name:"2",structure:a},{...r,type:4,flags:1,bitOffset:96,bitSize:32,byteSize:4,slot:4,name:"3",structure:a}]}}),mI(Dt,{...A,type:14,signature:0xaa034c726f553059n,name:"fn (f32, f32, f32, f32) ES1!void",length:4,instance:{members:[{...r,type:5,bitSize:160,byteSize:20,structure:bt}],template:ra}}),mI(St,{...A,type:5,flags:1,signature:0x3596180da264e267n,name:"ES2",byteSize:2,align:2,instance:{members:[{...r,type:3,bitOffset:0,bitSize:16,byteSize:2,structure:St}]}}),mI(wt,{...A,type:4,flags:1,signature:0x5a95f4d8316dada4n,name:"ES2!void",byteSize:2,align:2,instance:{members:[{...r,bitOffset:16,bitSize:0,byteSize:0,slot:0,structure:s},{...r,type:3,flags:8,bitOffset:0,bitSize:16,byteSize:2,structure:St}]}}),mI(vt,{...A,type:12,flags:42,signature:0xc13dfeea4a886ef9n,name:"Arg(fn (f32) ES2!void)",length:1,byteSize:8,align:4,instance:{members:[{...r,type:5,flags:1,bitOffset:32,bitSize:16,byteSize:2,slot:0,name:"retval",structure:wt},{...r,type:4,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:1,name:"0",structure:a}]}}),mI(kt,{...A,type:14,signature:0x6c203f8ee5c200a7n,name:"fn (f32) ES2!void",length:1,instance:{members:[{...r,type:5,bitSize:64,byteSize:8,structure:vt}],template:sa}}),mI(xt,{...A,type:5,flags:1,signature:0x25c89e63075b428an,name:"ES3",byteSize:2,align:2,instance:{members:[{...r,type:3,bitOffset:0,bitSize:16,byteSize:2,structure:xt}]},static:{members:[{...r,type:5,flags:4,slot:0,name:"OutOfMemory",structure:xt}],template:aa}}),mI(Nt,{...A,type:4,flags:1,signature:0x8ab4e53b2545b35cn,name:"ES3!u32",byteSize:8,align:4,instance:{members:[{...r,type:3,bitOffset:0,bitSize:32,byteSize:4,slot:0,structure:b},{...r,type:3,flags:8,bitOffset:32,bitSize:16,byteSize:2,structure:xt}]}}),mI(Ut,{...A,type:12,flags:46,signature:0xf139a9580e7f1046n,name:"Arg(fn (u32, []const []const Point, [4]PointUV, SerializedProps, u32, ?u32) ES3!u32)",length:6,byteSize:120,align:4,instance:{members:[{...r,type:5,flags:1,bitOffset:0,bitSize:64,byteSize:8,slot:0,name:"retval",structure:Nt},{...r,type:3,flags:1,bitOffset:64,bitSize:32,byteSize:4,slot:1,name:"0",structure:b},{...r,type:5,flags:1,bitOffset:96,bitSize:64,byteSize:8,slot:2,name:"1",structure:qA},{...r,type:5,flags:1,bitOffset:160,bitSize:512,byteSize:64,slot:3,name:"2",structure:GA},{...r,type:5,flags:1,bitOffset:672,bitSize:192,byteSize:24,slot:4,name:"3",structure:ne},{...r,type:3,flags:1,bitOffset:864,bitSize:32,byteSize:4,slot:5,name:"4",structure:b},{...r,type:5,flags:1,bitOffset:896,bitSize:64,byteSize:8,slot:6,name:"5",structure:re}]}}),mI(Gt,{...A,type:14,signature:0x70b4e0d3d8494b80n,name:"fn (u32, []const []const Point, [4]PointUV, SerializedProps, u32, ?u32) ES3!u32",length:6,instance:{members:[{...r,type:5,bitSize:960,byteSize:120,structure:Ut}],template:ga}}),mI(Mt,{...A,type:5,flags:1,signature:0x3596180da264e267n,name:"ES4",byteSize:2,align:2,instance:{members:[{...r,type:3,bitOffset:0,bitSize:16,byteSize:2,structure:Mt}]}}),mI(Rt,{...A,type:4,flags:1,signature:0x5a95f4d8316dada4n,name:"ES4!void",byteSize:2,align:2,instance:{members:[{...r,bitOffset:16,bitSize:0,byteSize:0,slot:0,structure:s},{...r,type:3,flags:8,bitOffset:0,bitSize:16,byteSize:2,structure:Mt}]}}),mI(Ft,{...A,type:12,flags:42,signature:0xfd5e24a97e2dd1f5n,name:"Arg(fn () ES4!void)",length:0,byteSize:2,align:2,instance:{members:[{...r,type:5,flags:1,bitOffset:0,bitSize:16,byteSize:2,slot:0,name:"retval",structure:Rt}]}}),mI(Lt,{...A,type:14,signature:0xf4f49e751fc2421an,name:"fn () ES4!void",length:0,instance:{members:[{...r,type:5,bitSize:16,byteSize:2,structure:Ft}],template:Ia}}),mI(zt,{...A,type:2,flags:14,signature:0x7067aef648c68778n,name:"ComputeTextResult",byteSize:16,align:4,instance:{members:[{...r,type:5,flags:129,bitOffset:0,bitSize:64,byteSize:8,slot:0,name:"content",structure:Ie},{...r,type:3,flags:1,bitOffset:64,bitSize:32,byteSize:4,slot:1,name:"selection_start",structure:Qe},{...r,type:3,flags:1,bitOffset:96,bitSize:32,byteSize:4,slot:2,name:"selection_end",structure:Qe}],template:Qa}}),mI(qt,{...A,type:5,flags:1,signature:0x8cd77d092cb0bccbn,name:"ES5",byteSize:2,align:2,instance:{members:[{...r,type:3,bitOffset:0,bitSize:16,byteSize:2,structure:qt}]},static:{members:[{...r,type:5,flags:4,slot:0,name:"InvalidUtf8",structure:qt},{...r,type:5,flags:4,slot:1,name:"OutOfMemory",structure:qt},{...r,type:5,flags:4,slot:2,name:"Utf8CannotEncodeSurrogateHalf",structure:qt},{...r,type:5,flags:4,slot:3,name:"CodepointTooLarge",structure:qt}],template:ca}}),mI(Jt,{...A,type:4,flags:15,signature:0xa716eccd0723a468n,name:"ES5!ComputeTextResult",byteSize:20,align:4,instance:{members:[{...r,type:5,bitOffset:0,bitSize:128,byteSize:16,slot:0,structure:zt},{...r,type:3,flags:8,bitOffset:128,bitSize:16,byteSize:2,structure:qt}]}}),mI(Ot,{...A,type:12,flags:46,signature:0x2cc05dd496d3bd1cn,name:"Arg(fn ([]const u8, usize, usize) ES5!ComputeTextResult)",length:3,byteSize:36,align:4,instance:{members:[{...r,type:5,flags:1,bitOffset:0,bitSize:160,byteSize:20,slot:0,name:"retval",structure:Jt},{...r,type:5,flags:1,bitOffset:160,bitSize:64,byteSize:8,slot:1,name:"0",structure:Ie},{...r,type:3,flags:1,bitOffset:224,bitSize:32,byteSize:4,slot:2,name:"1",structure:Qe},{...r,type:3,flags:1,bitOffset:256,bitSize:32,byteSize:4,slot:3,name:"2",structure:Qe}]}}),mI(Kt,{...A,type:14,signature:0x7b782f2ea3332570n,name:"fn ([]const u8, usize, usize) ES5!ComputeTextResult",length:3,instance:{members:[{...r,type:5,bitSize:288,byteSize:36,structure:Ot}],template:fa}}),mI(Tt,{...A,type:5,flags:1,signature:0x8cd77d092cb0bccbn,name:"ES6",byteSize:2,align:2,instance:{members:[{...r,type:3,bitOffset:0,bitSize:16,byteSize:2,structure:Tt}]},static:{members:[{...r,type:5,flags:4,slot:0,name:"InvalidUtf8",structure:Tt},{...r,type:5,flags:4,slot:1,name:"OutOfMemory",structure:Tt},{...r,type:5,flags:4,slot:2,name:"Utf8CannotEncodeSurrogateHalf",structure:Tt},{...r,type:5,flags:4,slot:3,name:"CodepointTooLarge",structure:Tt}],template:ha}}),mI(Ht,{...A,type:4,flags:1,signature:0x8895ad6894fa630en,name:"ES6!void",byteSize:2,align:2,instance:{members:[{...r,bitOffset:16,bitSize:0,byteSize:0,slot:0,structure:s},{...r,type:3,flags:8,bitOffset:0,bitSize:16,byteSize:2,structure:Tt}]}}),mI(Yt,{...A,type:12,flags:42,signature:0xbad36bdad79408a7n,name:"Arg(fn (f32, f32) ES6!void)",length:2,byteSize:12,align:4,instance:{members:[{...r,type:5,flags:1,bitOffset:64,bitSize:16,byteSize:2,slot:0,name:"retval",structure:Ht},{...r,type:4,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:1,name:"0",structure:a},{...r,type:4,flags:1,bitOffset:32,bitSize:32,byteSize:4,slot:2,name:"1",structure:a}]}}),mI(Pt,{...A,type:14,signature:0xb582869dd359d760n,name:"fn (f32, f32) ES6!void",length:2,instance:{members:[{...r,type:5,bitSize:96,byteSize:12,structure:Yt}],template:ba}}),mI(Vt,{...A,type:5,flags:1,signature:0x3596180da264e267n,name:"ES7",byteSize:2,align:2,instance:{members:[{...r,type:3,bitOffset:0,bitSize:16,byteSize:2,structure:Vt}]}}),mI(_t,{...A,type:4,flags:1,signature:0x5a95f4d8316dada4n,name:"ES7!void",byteSize:2,align:2,instance:{members:[{...r,bitOffset:16,bitSize:0,byteSize:0,slot:0,structure:s},{...r,type:3,flags:8,bitOffset:0,bitSize:16,byteSize:2,structure:Vt}]}}),mI(Wt,{...A,type:12,flags:42,signature:0xfd5e24a97e2dd1f5n,name:"Arg(fn () ES7!void)",length:0,byteSize:2,align:2,instance:{members:[{...r,type:5,flags:1,bitOffset:0,bitSize:16,byteSize:2,slot:0,name:"retval",structure:_t}]}}),mI(Xt,{...A,type:14,signature:0xf4f49e751fc2421an,name:"fn () ES7!void",length:0,instance:{members:[{...r,type:5,bitSize:16,byteSize:2,structure:Wt}],template:Da}}),mI(jt,{...A,type:5,flags:1,signature:0x8cd77d092cb0bccbn,name:"ES8",byteSize:2,align:2,instance:{members:[{...r,type:3,bitOffset:0,bitSize:16,byteSize:2,structure:jt}]},static:{members:[{...r,type:5,flags:4,slot:0,name:"InvalidUtf8",structure:jt},{...r,type:5,flags:4,slot:1,name:"OutOfMemory",structure:jt},{...r,type:5,flags:4,slot:2,name:"Utf8CannotEncodeSurrogateHalf",structure:jt},{...r,type:5,flags:4,slot:3,name:"CodepointTooLarge",structure:jt}],template:Sa}}),mI(Zt,{...A,type:4,flags:1,signature:0x8895ad6894fa630en,name:"ES8!void",byteSize:2,align:2,instance:{members:[{...r,bitOffset:16,bitSize:0,byteSize:0,slot:0,structure:s},{...r,type:3,flags:8,bitOffset:0,bitSize:16,byteSize:2,structure:jt}]}}),mI($t,{...A,type:12,flags:42,signature:0xbad36bdad79408a7n,name:"Arg(fn (f32, f32) ES8!void)",length:2,byteSize:12,align:4,instance:{members:[{...r,type:5,flags:1,bitOffset:64,bitSize:16,byteSize:2,slot:0,name:"retval",structure:Zt},{...r,type:4,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:1,name:"0",structure:a},{...r,type:4,flags:1,bitOffset:32,bitSize:32,byteSize:4,slot:2,name:"1",structure:a}]}}),mI(Ai,{...A,type:14,signature:0xb582869dd359d760n,name:"fn (f32, f32) ES8!void",length:2,instance:{members:[{...r,type:5,bitSize:96,byteSize:12,structure:$t}],template:Na}}),mI(ei,{...A,type:5,flags:1,signature:0x3596180da264e267n,name:"ES9",byteSize:2,align:2,instance:{members:[{...r,type:3,bitOffset:0,bitSize:16,byteSize:2,structure:ei}]}}),mI(ti,{...A,type:4,flags:1,signature:0x5a95f4d8316dada4n,name:"ES9!void",byteSize:2,align:2,instance:{members:[{...r,bitOffset:16,bitSize:0,byteSize:0,slot:0,structure:s},{...r,type:3,flags:8,bitOffset:0,bitSize:16,byteSize:2,structure:ei}]}}),mI(ii,{...A,type:12,flags:42,signature:0xfd5e24a97e2dd1f5n,name:"Arg(fn () ES9!void)",length:0,byteSize:2,align:2,instance:{members:[{...r,type:5,flags:1,bitOffset:0,bitSize:16,byteSize:2,slot:0,name:"retval",structure:ti}]}}),mI(ni,{...A,type:14,signature:0xf4f49e751fc2421an,name:"fn () ES9!void",length:0,instance:{members:[{...r,type:5,bitSize:16,byteSize:2,structure:ii}],template:Ua}}),mI(ri,{...A,type:5,flags:1,signature:0x3596180da264e267n,name:"ES10",byteSize:2,align:2,instance:{members:[{...r,type:3,bitOffset:0,bitSize:16,byteSize:2,structure:ri}]}}),mI(si,{...A,type:4,flags:1,signature:0x5a95f4d8316dada4n,name:"ES10!void",byteSize:2,align:2,instance:{members:[{...r,bitOffset:16,bitSize:0,byteSize:0,slot:0,structure:s},{...r,type:3,flags:8,bitOffset:0,bitSize:16,byteSize:2,structure:ri}]}}),mI(ai,{...A,type:12,flags:42,signature:0xfd5e24a97e2dd1f5n,name:"Arg(fn () ES10!void)",length:0,byteSize:2,align:2,instance:{members:[{...r,type:5,flags:1,bitOffset:0,bitSize:16,byteSize:2,slot:0,name:"retval",structure:si}]}}),mI(oi,{...A,type:14,signature:0xf4f49e751fc2421an,name:"fn () ES10!void",length:0,instance:{members:[{...r,type:5,bitSize:16,byteSize:2,structure:ai}],template:Ga}}),mI(gi,{...A,type:5,flags:1,signature:0x3596180da264e267n,name:"ES11",byteSize:2,align:2,instance:{members:[{...r,type:3,bitOffset:0,bitSize:16,byteSize:2,structure:gi}]}}),mI(Ii,{...A,type:4,flags:1,signature:0x5a95f4d8316dada4n,name:"ES11!void",byteSize:2,align:2,instance:{members:[{...r,bitOffset:16,bitSize:0,byteSize:0,slot:0,structure:s},{...r,type:3,flags:8,bitOffset:0,bitSize:16,byteSize:2,structure:gi}]}}),mI(Qi,{...A,type:12,flags:42,signature:0xfd5e24a97e2dd1f5n,name:"Arg(fn () ES11!void)",length:0,byteSize:2,align:2,instance:{members:[{...r,type:5,flags:1,bitOffset:0,bitSize:16,byteSize:2,slot:0,name:"retval",structure:Ii}]}}),mI(Ci,{...A,type:14,signature:0xf4f49e751fc2421an,name:"fn () ES11!void",length:0,instance:{members:[{...r,type:5,bitSize:16,byteSize:2,structure:Qi}],template:Ma}}),mI(ci,{...A,type:5,flags:1,signature:0x25c89e63075b428an,name:"ES12",byteSize:2,align:2,instance:{members:[{...r,type:3,bitOffset:0,bitSize:16,byteSize:2,structure:ci}]},static:{members:[{...r,type:5,flags:4,slot:0,name:"OutOfMemory",structure:ci}],template:Ra}}),mI(Bi,{...A,type:4,flags:1,signature:0x6b7a39b249c617e5n,name:"ES12!void",byteSize:2,align:2,instance:{members:[{...r,bitOffset:16,bitSize:0,byteSize:0,slot:0,structure:s},{...r,type:3,flags:8,bitOffset:0,bitSize:16,byteSize:2,structure:ci}]}}),mI(li,{...A,type:12,flags:42,signature:0xd958a5eaf8a8097an,name:"Arg(fn () ES12!void)",length:0,byteSize:2,align:2,instance:{members:[{...r,type:5,flags:1,bitOffset:0,bitSize:16,byteSize:2,slot:0,name:"retval",structure:Bi}]}}),mI(ui,{...A,type:14,signature:0x73c032fe09668bden,name:"fn () ES12!void",length:0,instance:{members:[{...r,type:5,bitSize:16,byteSize:2,structure:li}],template:La}}),mI(Ei,{...A,type:5,flags:1,signature:0x25c89e63075b428an,name:"ES13",byteSize:2,align:2,instance:{members:[{...r,type:3,bitOffset:0,bitSize:16,byteSize:2,structure:Ei}]},static:{members:[{...r,type:5,flags:4,slot:0,name:"OutOfMemory",structure:Ei}],template:za}}),mI(fi,{...A,type:4,flags:1,signature:0x6b7a39b249c617e5n,name:"ES13!void",byteSize:2,align:2,instance:{members:[{...r,bitOffset:16,bitSize:0,byteSize:0,slot:0,structure:s},{...r,type:3,flags:8,bitOffset:0,bitSize:16,byteSize:2,structure:Ei}]}}),mI(hi,{...A,type:12,flags:42,signature:0xb0a03008372ef3ddn,name:"Arg(fn (bool) ES13!void)",length:1,byteSize:4,align:2,instance:{members:[{...r,type:5,flags:1,bitOffset:0,bitSize:16,byteSize:2,slot:0,name:"retval",structure:fi},{...r,type:1,flags:1,bitOffset:16,bitSize:1,byteSize:1,slot:1,name:"0",structure:MA}]}}),mI(pi,{...A,type:14,signature:0x3ffa4c889df878a3n,name:"fn (bool) ES13!void",length:1,instance:{members:[{...r,type:5,bitSize:32,byteSize:4,structure:hi}],template:Ja}}),mI(yi,{...A,type:5,flags:1,signature:0x25c89e63075b428an,name:"ES14",byteSize:2,align:2,instance:{members:[{...r,type:3,bitOffset:0,bitSize:16,byteSize:2,structure:yi}]},static:{members:[{...r,type:5,flags:4,slot:0,name:"OutOfMemory",structure:yi}],template:Oa}}),mI(di,{...A,type:4,flags:1,signature:0x6b7a39b249c617e5n,name:"ES14!void",byteSize:2,align:2,instance:{members:[{...r,bitOffset:16,bitSize:0,byteSize:0,slot:0,structure:s},{...r,type:3,flags:8,bitOffset:0,bitSize:16,byteSize:2,structure:yi}]}}),mI(mi,{...A,type:12,flags:42,signature:0xd958a5eaf8a8097an,name:"Arg(fn () ES14!void)",length:0,byteSize:2,align:2,instance:{members:[{...r,type:5,flags:1,bitOffset:0,bitSize:16,byteSize:2,slot:0,name:"retval",structure:di}]}}),mI(bi,{...A,type:14,signature:0x73c032fe09668bden,name:"fn () ES14!void",length:0,instance:{members:[{...r,type:5,bitSize:16,byteSize:2,structure:mi}],template:Ta}}),mI(Di,{...A,type:5,flags:1,signature:0x8cd77d092cb0bccbn,name:"ES15",byteSize:2,align:2,instance:{members:[{...r,type:3,bitOffset:0,bitSize:16,byteSize:2,structure:Di}]},static:{members:[{...r,type:5,flags:4,slot:0,name:"InvalidUtf8",structure:Di},{...r,type:5,flags:4,slot:1,name:"OutOfMemory",structure:Di},{...r,type:5,flags:4,slot:2,name:"Utf8CannotEncodeSurrogateHalf",structure:Di},{...r,type:5,flags:4,slot:3,name:"CodepointTooLarge",structure:Di}],template:Ha}}),mI(Si,{...A,type:4,flags:1,signature:0x8895ad6894fa630en,name:"ES15!void",byteSize:2,align:2,instance:{members:[{...r,bitOffset:16,bitSize:0,byteSize:0,slot:0,structure:s},{...r,type:3,flags:8,bitOffset:0,bitSize:16,byteSize:2,structure:Di}]}}),mI(wi,{...A,type:12,flags:46,signature:0xbbe804fb7169dcb9n,name:"Arg(fn (ProjectSnapshot, bool) ES15!void)",length:2,byteSize:20,align:4,instance:{members:[{...r,type:5,flags:1,bitOffset:128,bitSize:16,byteSize:2,slot:0,name:"retval",structure:Si},{...r,type:5,flags:1,bitOffset:0,bitSize:128,byteSize:16,slot:1,name:"0",structure:pe},{...r,type:1,flags:1,bitOffset:144,bitSize:1,byteSize:1,slot:2,name:"1",structure:MA}]}}),mI(vi,{...A,type:14,signature:0xa92431c35de81a60n,name:"fn (ProjectSnapshot, bool) ES15!void",length:2,instance:{members:[{...r,type:5,bitSize:160,byteSize:20,structure:wi}],template:Wa}}),mI(ki,{...A,type:5,flags:1,signature:0x25c89e63075b428an,name:"ES16",byteSize:2,align:2,instance:{members:[{...r,type:3,bitOffset:0,bitSize:16,byteSize:2,structure:ki}]},static:{members:[{...r,type:5,flags:4,slot:0,name:"OutOfMemory",structure:ki}],template:Xa}}),mI(xi,{...A,type:4,flags:1,signature:0x6b7a39b249c617e5n,name:"ES16!void",byteSize:2,align:2,instance:{members:[{...r,bitOffset:16,bitSize:0,byteSize:0,slot:0,structure:s},{...r,type:3,flags:8,bitOffset:0,bitSize:16,byteSize:2,structure:ki}]}}),mI(Ni,{...A,type:12,flags:46,signature:0xbe3f066ab03562acn,name:"Arg(fn (u32, []const []const Point, u32) ES16!void)",length:3,byteSize:20,align:4,instance:{members:[{...r,type:5,flags:1,bitOffset:128,bitSize:16,byteSize:2,slot:0,name:"retval",structure:xi},{...r,type:3,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:1,name:"0",structure:b},{...r,type:5,flags:1,bitOffset:32,bitSize:64,byteSize:8,slot:2,name:"1",structure:qA},{...r,type:3,flags:1,bitOffset:96,bitSize:32,byteSize:4,slot:3,name:"2",structure:b}]}}),mI(Ui,{...A,type:14,signature:0x61ed6595fa447245n,name:"fn (u32, []const []const Point, u32) ES16!void",length:3,instance:{members:[{...r,type:5,bitSize:160,byteSize:20,structure:Ni}],template:Za}}),mI(Gi,{...A,type:5,flags:1,signature:0x25c89e63075b428an,name:"ES17",byteSize:2,align:2,instance:{members:[{...r,type:3,bitOffset:0,bitSize:16,byteSize:2,structure:Gi}]},static:{members:[{...r,type:5,flags:4,slot:0,name:"OutOfMemory",structure:Gi}],template:$a}}),mI(Mi,{...A,type:4,flags:1,signature:0x6b7a39b249c617e5n,name:"ES17!void",byteSize:2,align:2,instance:{members:[{...r,bitOffset:16,bitSize:0,byteSize:0,slot:0,structure:s},{...r,type:3,flags:8,bitOffset:0,bitSize:16,byteSize:2,structure:Gi}]}}),mI(Ri,{...A,type:12,flags:42,signature:0xd958a5eaf8a8097an,name:"Arg(fn () ES17!void)",length:0,byteSize:2,align:2,instance:{members:[{...r,type:5,flags:1,bitOffset:0,bitSize:16,byteSize:2,slot:0,name:"retval",structure:Mi}]}}),mI(Fi,{...A,type:14,signature:0x73c032fe09668bden,name:"fn () ES17!void",length:0,instance:{members:[{...r,type:5,bitSize:16,byteSize:2,structure:Ri}],template:eo}}),mI(Li,{...A,type:5,flags:1,signature:0x3596180da264e267n,name:"ES18",byteSize:2,align:2,instance:{members:[{...r,type:3,bitOffset:0,bitSize:16,byteSize:2,structure:Li}]}}),mI(zi,{...A,type:4,flags:1,signature:0x5a95f4d8316dada4n,name:"ES18!void",byteSize:2,align:2,instance:{members:[{...r,bitOffset:16,bitSize:0,byteSize:0,slot:0,structure:s},{...r,type:3,flags:8,bitOffset:0,bitSize:16,byteSize:2,structure:Li}]}}),mI(qi,{...A,type:6,flags:1,signature:0x7e11c3fd15f3ecd2n,name:"Tool",byteSize:2,align:2,instance:{members:[{...r,type:3,bitOffset:0,bitSize:16,byteSize:2,structure:qi}]},static:{members:[{...r,type:5,flags:4,slot:0,name:"None",structure:qi},{...r,type:5,flags:4,slot:1,name:"DrawShape",structure:qi},{...r,type:5,flags:4,slot:2,name:"EditShape",structure:qi},{...r,type:5,flags:4,slot:3,name:"Text",structure:qi}],template:to}}),mI(Ji,{...A,type:12,flags:42,signature:0x0d4aef6be43762bfn,name:"Arg(fn (Tool) ES18!void)",length:1,byteSize:4,align:2,instance:{members:[{...r,type:5,flags:1,bitOffset:0,bitSize:16,byteSize:2,slot:0,name:"retval",structure:zi},{...r,type:3,flags:1,bitOffset:16,bitSize:16,byteSize:2,slot:1,name:"0",structure:qi}]}}),mI(Oi,{...A,type:14,signature:0x7fe96bfd7fbe42aan,name:"fn (Tool) ES18!void",length:1,instance:{members:[{...r,type:5,bitSize:32,byteSize:4,structure:Ji}],template:ao}}),mI(Ki,{...A,type:5,flags:1,signature:0x25c89e63075b428an,name:"ES19",byteSize:2,align:2,instance:{members:[{...r,type:3,bitOffset:0,bitSize:16,byteSize:2,structure:Ki}]},static:{members:[{...r,type:5,flags:4,slot:0,name:"OutOfMemory",structure:Ki}],template:oo}}),mI(Ti,{...A,type:4,flags:1,signature:0x6b7a39b249c617e5n,name:"ES19!void",byteSize:2,align:2,instance:{members:[{...r,bitOffset:16,bitSize:0,byteSize:0,slot:0,structure:s},{...r,type:3,flags:8,bitOffset:0,bitSize:16,byteSize:2,structure:Ki}]}}),mI(Hi,{...A,type:12,flags:42,signature:0x5bb01020d75668f5n,name:"Arg(fn (f32) ES19!void)",length:1,byteSize:8,align:4,instance:{members:[{...r,type:5,flags:1,bitOffset:32,bitSize:16,byteSize:2,slot:0,name:"retval",structure:Ti},{...r,type:4,flags:1,bitOffset:0,bitSize:32,byteSize:4,slot:1,name:"0",structure:a}]}}),mI(Yi,{...A,type:14,signature:0x13f401b042d16a6cn,name:"fn (f32) ES19!void",length:1,instance:{members:[{...r,type:5,bitSize:64,byteSize:8,structure:Hi}],template:Io}}),mI(Pi,{...A,type:5,flags:1,signature:0x25c89e63075b428an,name:"ES20",byteSize:2,align:2,instance:{members:[{...r,type:3,bitOffset:0,bitSize:16,byteSize:2,structure:Pi}]},static:{members:[{...r,type:5,flags:4,slot:0,name:"OutOfMemory",structure:Pi}],template:Qo}}),mI(Vi,{...A,type:4,flags:1,signature:0x6b7a39b249c617e5n,name:"ES20!void",byteSize:2,align:2,instance:{members:[{...r,bitOffset:16,bitSize:0,byteSize:0,slot:0,structure:s},{...r,type:3,flags:8,bitOffset:0,bitSize:16,byteSize:2,structure:Pi}]}}),mI(_i,{...A,type:12,flags:46,signature:0x46d73be7760b0708n,name:"Arg(fn (SerializedProps, bool) ES20!void)",length:2,byteSize:28,align:4,instance:{members:[{...r,type:5,flags:1,bitOffset:192,bitSize:16,byteSize:2,slot:0,name:"retval",structure:Vi},{...r,type:5,flags:1,bitOffset:0,bitSize:192,byteSize:24,slot:1,name:"0",structure:ne},{...r,type:1,flags:1,bitOffset:208,bitSize:1,byteSize:1,slot:2,name:"1",structure:MA}]}}),mI(Wi,{...A,type:14,signature:0xa70a5fefcdceb35fn,name:"fn (SerializedProps, bool) ES20!void",length:2,instance:{members:[{...r,type:5,bitSize:224,byteSize:28,structure:_i}],template:co}}),mI(Xi,{...A,type:5,flags:1,signature:0x8cd77d092cb0bccbn,name:"ES21",byteSize:2,align:2,instance:{members:[{...r,type:3,bitOffset:0,bitSize:16,byteSize:2,structure:Xi}]},static:{members:[{...r,type:5,flags:4,slot:0,name:"InvalidUtf8",structure:Xi},{...r,type:5,flags:4,slot:1,name:"OutOfMemory",structure:Xi},{...r,type:5,flags:4,slot:2,name:"Utf8CannotEncodeSurrogateHalf",structure:Xi},{...r,type:5,flags:4,slot:3,name:"CodepointTooLarge",structure:Xi}],template:Bo}}),mI(ji,{...A,type:4,flags:1,signature:0x8895ad6894fa630en,name:"ES21!void",byteSize:2,align:2,instance:{members:[{...r,bitOffset:16,bitSize:0,byteSize:0,slot:0,structure:s},{...r,type:3,flags:8,bitOffset:0,bitSize:16,byteSize:2,structure:Xi}]}}),mI(Zi,{...A,type:12,flags:42,signature:0xc2139c8c2d42483fn,name:"Arg(fn ([4]PointUV, bool) ES21!void)",length:2,byteSize:68,align:4,instance:{members:[{...r,type:5,flags:1,bitOffset:512,bitSize:16,byteSize:2,slot:0,name:"retval",structure:ji},{...r,type:5,flags:1,bitOffset:0,bitSize:512,byteSize:64,slot:1,name:"0",structure:GA},{...r,type:1,flags:1,bitOffset:528,bitSize:1,byteSize:1,slot:2,name:"1",structure:MA}]}}),mI($i,{...A,type:14,signature:0x752e8ae1706612e9n,name:"fn ([4]PointUV, bool) ES21!void",length:2,instance:{members:[{...r,type:5,bitSize:544,byteSize:68,structure:Zi}],template:ho}}),mI(An,{...A,type:2,flags:4096,signature:0x239ab4f327f6ac1bn,name:"index",align:1,static:{members:[{...r,type:5,flags:2,slot:0,name:"connectWebGpuPrograms",structure:UA},{...r,type:5,flags:2,slot:1,name:"connectOnAssetUpdateCallback",structure:De},{...r,type:5,flags:2,slot:2,name:"connectOnAssetSelectionCallback",structure:xe},{...r,type:5,flags:2,slot:3,name:"connectCreateSdfTexture",structure:ze},{...r,type:5,flags:2,slot:4,name:"onUpdateToolCallback",structure:He},{...r,type:5,flags:2,slot:5,name:"SerializedCharDetails",structure:Ye},{...r,type:5,flags:2,slot:6,name:"TextCallback",structure:Ye},{...r,type:5,flags:2,slot:7,name:"connectTyping",structure:lt},{...r,type:5,flags:2,slot:9,name:"connectCacheCallbacks",structure:yt},{...r,type:5,flags:2,slot:10,name:"ASSET_ID_MIN",structure:b},{...r,type:5,flags:2,slot:11,name:"initState",structure:Dt},{...r,type:5,flags:2,slot:12,name:"updateRenderScale",structure:kt},{...r,type:5,flags:2,slot:13,name:"addShape",structure:Gt},{...r,type:5,flags:2,slot:14,name:"removeAsset",structure:Lt},{...r,type:5,flags:2,slot:15,name:"onUpdatePick",structure:we},{...r,type:5,flags:2,slot:16,name:"updateTextContent",structure:Kt},{...r,type:5,flags:2,slot:17,name:"onPointerDown",structure:Pt},{...r,type:5,flags:2,slot:18,name:"onPointerUp",structure:Xt},{...r,type:5,flags:2,slot:19,name:"onPointerMove",structure:Ai},{...r,type:5,flags:2,slot:20,name:"onPointerDoubleClick",structure:ni},{...r,type:5,flags:2,slot:21,name:"onPointerLeave",structure:oi},{...r,type:5,flags:2,slot:22,name:"commitChanges",structure:Ci},{...r,type:5,flags:2,slot:23,name:"computeSdfs",structure:ui},{...r,type:5,flags:2,slot:24,name:"updateCache",structure:tt},{...r,type:5,flags:2,slot:25,name:"setCaretPosition",structure:rt},{...r,type:5,flags:2,slot:26,name:"renderDraw",structure:pi},{...r,type:5,flags:2,slot:27,name:"renderPick",structure:bi},{...r,type:5,flags:2,slot:28,name:"setSnapshot",structure:vi},{...r,type:5,flags:2,slot:29,name:"deinitState",structure:tt},{...r,type:5,flags:2,slot:30,name:"importUiElement",structure:Ui},{...r,type:5,flags:2,slot:31,name:"generateUiElementsSdf",structure:Fi},{...r,type:5,flags:2,slot:32,name:"setTool",structure:Oi},{...r,type:5,flags:2,slot:33,name:"tick",structure:Yi},{...r,type:5,flags:2,slot:34,name:"setSelectedAssetProps",structure:Wi},{...r,type:5,flags:2,slot:35,name:"setSelectedAssetBounds",structure:$i},{...r,type:5,flags:2,slot:36,name:"toggleSharedTextEffects",structure:tt}],template:po}});const bI=[s,a,o,g,I,Q,C,c,B,l,u,E,f,h,p,y,d,m,b,D,S,w,v,k,x,N,U,G,M,R,F,L,z,q,J,O,K,T,H,Y,P,V,_,W,X,j,Z,$,AA,eA,tA,iA,nA,rA,sA,aA,oA,gA,IA,QA,CA,cA,BA,lA,uA,EA,fA,hA,pA,yA,dA,mA,bA,DA,SA,wA,vA,kA,xA,NA,UA,GA,MA,RA,FA,LA,zA,qA,JA,OA,KA,TA,HA,YA,PA,VA,_A,WA,XA,jA,ZA,$A,Ae,ee,te,ie,ne,re,se,ae,oe,ge,Ie,Qe,Ce,ce,Be,le,ue,Ee,fe,he,pe,ye,de,me,be,De,Se,we,ve,ke,xe,Ne,Ue,Ge,Me,Re,Fe,Le,ze,qe,Je,Oe,Ke,Te,He,Ye,Pe,Ve,_e,We,Xe,je,Ze,$e,At,et,tt,it,nt,rt,st,at,ot,gt,It,Qt,Ct,ct,Bt,lt,ut,Et,ft,ht,pt,yt,dt,mt,bt,Dt,St,wt,vt,kt,xt,Nt,Ut,Gt,Mt,Rt,Ft,Lt,zt,qt,Jt,Ot,Kt,Tt,Ht,Yt,Pt,Vt,_t,Wt,Xt,jt,Zt,$t,Ai,ei,ti,ii,ni,ri,si,ai,oi,gi,Ii,Qi,Ci,ci,Bi,li,ui,Ei,fi,hi,pi,yi,di,mi,bi,Di,Si,wi,vi,ki,xi,Ni,Ui,Gi,Mi,Ri,Fi,Li,zi,qi,Ji,Oi,Ki,Ti,Hi,Yi,Pi,Vi,_i,Wi,Xi,ji,Zi,$i,An],DI=An,SI={runtimeSafety:!1,littleEndian:!0,libc:!1},wI=(0,n.M)();wI.recreateStructures(bI,SI);const vI=(async()=>{const A=atob("AGFzbQEAAAAB/wI2YAZ/f39/f38Bf2AEf39/fwF/YAV/f39/fwBgAABgAX8AYAN/f38AYAJ/fwF9YAABf2ACf38AYAJ/fwF/YAR/f39/AGAEf399fQBgBn9/f399fQBgBn9/f39/fwBgBH19fX0Bf2ABfQF/YAh/f39/f39/fwBgAn19AX9gAX8Bf2ADf39/AX9gAX8BfWAEf39+fwBgA39/fQBgBX9/fX1/AGAFf319fX8AYAV9fX19fQF9YAl/f39/f39/f38AYAd/f39/f31/AGAFf319fX0AYAN/fX0AYAJ9fQF9YAR/f399AGAGf39/fX99AGAFf39/fX0AYAh/f319fX19fwBgBH9/fX8AYAF9AX1gAn1/AX9gA39/fwF9YAN+f38BfmACfn8Bf2ABfgF/YAd/f39/fX1/AGAFf39/f38Bf2AEf35+fwBgBX9+fn5+AGAGf35+fn5/AGAEfn5+fwF+YAJ9fwF9YAJ/fABgAnx/AXxgAXwBf2ABfAF9YAN8fHwBfAKmAQcDZW52Bm1lbW9yeQIABQNlbnYZX19pbmRpcmVjdF9mdW5jdGlvbl90YWJsZQFwANMDA2Vudg1fZGlzcGxheVBhbmljAAgWd2FzaV9zbmFwc2hvdF9wcmV2aWV3MQhmZF93cml0ZQABA2Vudg1faGFuZGxlSnNDYWxsAAEDZW52EF9hbGxvY2F0ZUpzVGh1bmsACQNlbnYMX2ZyZWVKc1RodW5rAAkDnwWdBQMHEwoFDhIIDwYWBAgXBggTBQUFBQkJBQoICAIFBQUTGBkFGgkEBQkSCAUIBRIQCAcHCAcEBwQNDQ0ICRMFEgoFCAUIAgUFBQIFBQkJBgUCBwobCBEIBwQRCBwdHhIHBwUHBQgeHwITAgUFICEKIggSCCMFBQEFHwULCBYiEwgCBQUHAgkDBQESBwgJAgUFCAkCBQUJCQkJCQUPCQkEBQUUJAQJCQQIBA0FAwoTJRISAxMAAAIEBQMjAQMEAwkJCgkJCgkJCgkKCQoJCgkJCgkJCQkJCQoJCQkKCQoJCQkJCQkKEgkFCQoIBQgICAgICAgICAgICAgICAQIBAQEBAQEBAQEBAQEBAQEAwQDAwMDAwMDAwMDAwMDAwMIBQgICAgICAgICAgICAgICBMJCQoJCgkKCQoJCgkKCQoKCgkKCQkJCQkJCAUICAgICAgICAgICAgICAgHEgcHBwcHBwcHBwcHBwcHBwkTCQkJCQkJCQkJCQkJCQkJBAgEBAQEBAQEBAQEBAQEBAQFCgUFBQUFBQUFBQUFBQUFBQYmBgYGBgYGBgYGBgYGBgYGCxcLCwsLCwsLCwsLCwsLCwsBJygFCikFBQoFBQUFBQUFBQUFBQUFBQUIBQgICAgICAgICAgICAgICAINAgICAgICAgICAgICAgICCgIKCgoKCgoKCgoKCgoKCgoKAgoKCgoKCgoKCgoKCgoKCgwqDAwMDAwMDAwMDAwMDAwMCgIKCgoKCgoKCgoKCgoKCgoFBQUFBQUFBQUFBQUFBQUFCAgICAgICAgICAgICAgICAoCCgoKCgoKCgoKCgoKCgoKCQkJCQkDCQQBAQAAAAACBRMrCQkEAwcBEgAAAiwsLS4vLTAxMh4zJDQ0JSskNR4kJAYIAX8BQYCAEAsHuAEKD2dldEZhY3RvcnlUaHVuawAGCmluaXRpYWxpemUA9gQVYWxsb2NhdGVTY3JhdGNoTWVtb3J5APcEEWZyZWVTY3JhdGNoTWVtb3J5AIAFCHJ1blRodW5rAIEFEHJ1blZhcmlhZGljVGh1bmsAggUNY3JlYXRlSnNUaHVuawCDBQ5kZXN0cm95SnNUaHVuawCEBQtmbHVzaFN0ZG91dACGBRNnZXRNb2R1bGVBdHRyaWJ1dGVzAIcFCAEFCZYHAQBBAQvSAwCiAacBqgGrAawBrQGuAQoNMzq6AVRZW11jZDVmvAFadYcBiQG/AYwBjgFinwGgAaEBwQGwAcIBswK0ArUCtgK3ArgCuQK6ArsCvAK9Ar4CvwLAAsECwgLDAsQCwwHEAcUB2QHaAcYBxwHIAesB7AHJAcoBB+kBywHMAc0BzgHPAdAB0QHfAeAB0gHTAdQB1QHWAdcBnAHYAdsB3AHdAd4B4QHiAeMB5AHlAeYBowETpAGlAVJ/qQGyApkBmwGdAcUCxgLHAsgCyQLKAvEE8gTzBPQEqAH1BIgFigWLBYwFercBuAG5Ae0B7wHwAfEB8gHzAfQB9QH2AfcB+AH5AfoB+wH8Af0B/gGAAoECggKDAoQChQKGAocCiAKJAooCiwKMAo0CjgKPApECkgKTApQClQKWApcCmAKZApoCmwKcAp0CngKfAqACogKjAqQCpQKmAqcCqAKpAqoCqwKsAq0C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djoAAAsgAyAGNgIAAkAgBCABEEAiA0UNACAAQQA7AQQgACADNgIADAELQZqHEEErEBEACyACQeAAaiQAC3sBAX8jAEEgayICJAAgAkEIakEIaiAAQQhqKQIANwMAIAIgACkCADcDCCACQRhqIAJBCGogARBCAkACQCACLQAcDQBBACEADAELIAIoAgggAigCECIAQQJ0akGq1arVeiAAGyACKAIYQQJ0aigCACEACyACQSBqJAAgAAuWAgMDfwF+A38jAEEgayIDJABBACEEAkAgACgCCCIFIAJPDQADQEF/IAVBAXYgBWpBEGoiBCAEIAVJGyIFIAJJDQALIAMgASkCACIGNwMAIANBDGogAyAFQQN0EOoBIAMvARQiBA0AIAMoAgwhAgJAAkAgACgCBCIBDQAgAyAGNwMYIANBGGogACgCACAAKAIIQQN0EIsBDAELIAIgACgCACIHQarVqtV6IAAoAggiCBsgAUECdCIJ/AoAACACIAVBAnRqIAcgCEECdGpBqtWq1XogCBsgCfwKAAAgAyAGNwMYIANBGGogACgCACAAKAIIQQN0EIsBIAAgATYCBAsgACAFNgIIIAAgAjYCAAsgA0EgaiQAIAQL+wQDBn8BfgF/IAEoAgAhAyABKAIIIQQCQAJAAkACQAJAAkACQCABKAIMIgVFDQAgA0Gq1arVeiAEGyEGQQAhASAFQQRqIQQgAhBDIQNBfyAFKAIAdEF/cyEHQQBBAUECIAUtAAAiBUERSRsgBUEJSRsOAwEEAwELIARFDQEgASgCBCEEQQAhASACQf///wBxIQcDQCAEIAFGDQICQCADLwEAIANBAmotAABBEHRyIAdHDQAgAEEBOgAEIAAgATYCAA8LIANBBGohAyABQQFqIQEMAAsLIAJB////AHEhCEEAIQEDQEIAIQkgBCADIAdxQQF0aiICLQAAIgVB/wFGDQQgAi0AAUH/AXEgAUH/AXFJDQQCQCAGIAVBAnRqIgIvAQAgAkECai0AAEEQdHIgCEcNAEKAgICAECEJDAYLIAFBAWohASADQQFqIQMMAAsLIABCADcCAA8LIAJB////AHEhCgNAQgAhCUEAIQgCQAJAIAQgAyABaiAHcUEDdGoiAigCACIFQX9GDQAgAigCBCABSQ0AIAYgBUECdGoiAi8BACACQQJqLQAAQRB0ciAKRw0B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IAFBEGogDCABKAKMByIlICQgAhAgAkAgASgCECIDRQ0AIAEoAhQhAgwCCyABQcQHaiAMIAIQISABLwHMByICDQkgASgCyAchAiABKALEByEDAkAgH0UNACADICUgH0EDdPwKAAALIAwgJSAkECIMAQsgASABKQKYByIZNwOgByABQQhqIAFBoAdqIAEoAowHIgMgASgClAciJCABKAKQByICECACQAJAIAEoAggiH0UNACABKAIMISEMAQsgAUHEB2ogAUGgB2ogAhAhIAEvAcwHIgINCSABKALEByEfAkAgASgCyAciIUUNACAfIAMgIUEDdPwKAAALIAEgGTcD+AcgAUH4B2ogAyAkECILIAEgBDcCrAcgAUEANgKoByABQqrVqtUKNwKgByAXQQFqIQMCQANAIANBf2oiA0UNASAYQQRqKgIAIQAgGCoCACEeIAsgGEEIakEs/AoAACABIAA4AsgHIAEgHjgCxAcgCiALEI8BIAEgADgC/AcgASAeOAL4ByAYQTRqIRggAUGgB2ogAUH4B2oQkAEiAkH//wNxRQ0ADAoLCyABQbgHaiABQaAHahCUASABLwHAByICDQggASkCuAchGSAIQQhqIAlBCGooAgA2AgAgCCAJKQIANwIAIAcgAUHIBGpBJPwKAAAgAUEBOgDcBSABIBA3AtQFIAEgIDYC0AUgASARNgLMBSABIBI2AsgFIAEgEzcCnAUgASAUNgKYBSABIBU3ApAFIAEgFjgCjAUgASAZNwL4BCABICE2AvQEIAEgHzYC8AQgASAdNgLsBCAPIQMgAUHAA2ogAUHsBGoQlQEiAkH//wNxRQ0FDAgLIAEgAzYCjAcgASACNgKUBwsgASAfQQFqNgKQByADIB9BA3RqIgIgIjYCBCACICM2AgAgIUEBaiEhDAALCyAGIAMpAgA3AgAgBkEQaiADQRBqKQIANwIAIAZBCGogA0EIaikCADcCACABQQA6AMQEIAEgHTYCmAQgASAUNgKUBCABIBU3AowEIAEgFjgCiAQgASAXNgLsAyABIBg2AugDIAEgGTcC4AMgASAaOALcAyABIBs2AtgDIAEgHDYC1AMgDyEDIAFBwANqIAFB1ANqEJUBIgJB//8DcUUNAQwECyACKgKUASEmIAIoApABIR8gAUHgBWpBEGoiISADQRBqKQIANwMAIAFB4AVqQQhqIiQgA0EIaikCADcDACABIAMpAgA3A+AFIAEgBDcC/AYgAUEANgL4BiABQqrVqtUKNwLwBiARQQFqIQMCQANAIANBf2oiA0UNASASQQRqKgIAIQAgEioCACEeIAsgEkEIakEs/AoAACABIAA4AsgHIAEgHjgCxAcgCiALEI8BIAEgADgC/AcgASAeOAL4ByASQTRqIRIgAUHwBmogAUH4B2oQkAEiAkH//wNxRQ0ADAULCyABQaAHaiABQfAGahCUASABLwGoByICDQMgDSABKQPgBTcCACANQQhqICQpAwA3AgAgDUEQaiAhKQMANwIAIAFBAjoA7AYgASAmOALgBiABIB82AtwGIAEgEDcC1AYgASABKQKgBzcCzAYgASAaOALIBiABIBM3AsAGIAEgFDYCvAYgASAVNwK0BiABIBY4ArAGIAEgFzYClAYgASAYNgKQBiABIBk3AogGIAEgGzYChAYgASAcNgKABiABIB02AvwFIA8hAyABQcADaiABQfwFahCVASICQf//A3FFDQAMAwsLQd6EEEHqABARAAsgASASNgIoIAEgAzYCJCABIAA4AiAgASAeOAIcAkACQEEALQDS1hBFDQBBACgCrNUQIQICQEEAKgKg1RBBACoC0NQQk4tDAAAANF1FDQBBACoCpNUQQQAqAtTUEJOLQwAAADRdRQ0AIBIgAkcNAEEAIQJBACgCqNUQISEgEiEfAkACQANAIB9FDQEgAUEsaiADIAJqQfQA/AoAAAJAAkACQAJAICEgAmoiGEHwAGotAABBA3EOAwABAgALIAFBoAFqIBhByAD8CgAAIAFBoAFqIAFBLGoQmQFBAXENAgwFCyABQegBaiAYQfAA/AoAACABQegBaiABQSxqEJsBQQFxRQ0EDAELIAFB2AJqIBhB6AD8CgAAIAFB2AJqIAFBLGoQnQFBAXFFDQMLIB9Bf2ohHyACQfQAaiECDAALC0HYvRAgAyASEJ4BDAMLQQAoAqzVECECC0HYvRBBACgCqNUQIAIQngFBACABQSRqKQIANwKo1RBBACABKQIcNwKg1RALAkBBAC0A0dYQRQ0AIAFBHGpBAC0A0tYQQQAoAtTWEBEIAAtBACgCqNUQIANGDQBB2L0QIAMgEhCeAQtBACECQQBCADcD2NYQQQBBADoA0dYQQQBBADoA0tYQCyABQaAI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aiECDAALCyAAIAIpAgA3AgAgBEEQaiQACxMAIAEoAgAgASgCBCAAEQgAQQALDgAgAS8BACAAEQQAQQAL2wEBAX8jAEEQayIEJAACQAJAIAINAEFAIQIDQAJAIAINAEHQrBAhAgwDCwJAIAJB+NoQaigCAA0AIAJB+NoQaiADNgIAIARBADsBBCAEIAJBzKUQaigCADYCACAEIQIMAwsgAkEEaiECDAALC0FAIQIDQAJAIAINAEHYrBAhAgwCCwJAIAJBzKUQaigCACADRw0AIAJB+NoQaiICKAIAIQMgAkEANgIAIARBADsBDCAEIAM2AgggBEEIaiECDAILIAJBBGohAgwACwsgACACKQIANwIAIARBEGokAAsTACABKAIAIAEoAgQgABEIAEEAC9sBAQF/IwBBEGsiBCQAAkACQCACDQBBQCECA0ACQCACDQBB0KwQIQIMAwsCQCACQbDXEGooAgANACACQbDXEGogAzYCACAEQQA7AQQgBCACQfieEGooAgA2AgAgBCECDAMLIAJBBGohAgwACwtBQCECA0ACQCACDQBB2KwQIQIMAgsCQCACQfieEGooAgAgA0cNACACQbDXEGoiAigCACEDIAJBADYCACAEQQA7AQwgBCADNgIIIARBCGohAgwCCyACQQRqIQIMAAsLIAAgAikCADcCACAEQRBqJAALbQEBfyMAQSBrIgIkACACIAEoAiAgAS8BJCABQSZqLQAAQRB0ciAAEQUAIAFBGGogAkEYaikCADcCACABQRBqIAJBEGopAgA3AgAgAUEIaiACQQhqKQIANwIAIAEgAikCADcCACACQSBqJABBAAvbAQEBfyMAQRBrIgQkAAJAAkAgAg0AQUAhAgNAAkAgAg0AQdCsECECDAMLAkAgAkG82xBqKAIADQAgAkG82xBqIAM2AgAgBEEAOwEEIAQgAkGMphBqKAIANgIAIAQhAgwDCyACQQRqIQIMAAsLQUAhAgNAAkAgAg0AQdisECECDAILAkAgAkGMphBqKAIAIANHDQAgAkG82xBqIgIoAgAhAyACQQA2AgAgBEEAOwEMIAQgAzYCCCAEQQhqIQIMAgsgAkEEaiECDAALCyAAIAIpAgA3AgAgBEEQaiQACzAAIAEgAS8BBCABQQZqLQAAQRB0ciABLwEIIAFBCmotAABBEHRyIAARBgA4AgBBAAvbAQEBfyMAQRBrIgQkAAJAAkAgAg0AQUAhAgNAAkAgAg0AQdCsECECDAMLAkAgAkH82xBqKAIADQAgAkH82xBqIAM2AgAgBEEAOwEEIAQgAkHMphBqKAIANgIAIAQhAgwDCyACQQRqIQIMAAsLQUAhAgNAAkAgAg0AQdisECECDAILAkAgAkHMphBqKAIAIANHDQAgAkH82xBqIgIoAgAhAyACQQA2AgAgBEEAOwEMIAQgAzYCCCAEQQhqIQIMAgsgAkEEaiECDAALCyAAIAIpAgA3AgAgBEEQaiQACycAIAEoAgAgASgCBCABKAIIIAEoAgwgASgCECABKAIUIAARDQBBAAtpAgJ/An0jAEEgayICJAAgAkEEakEMaiABQQxqKQIANwIAIAIgASgCACIDNgIEIAIgASkCBDcCCCACIAEqAhQiBDgCGCACIAEqAhgiBTgCHCADIAJBCGogBCAFIAARCwAgAkEgaiQAQQAL2wEBAX8jAEEQayIEJAACQAJAIAINAEFAIQIDQAJAIAINAEHQrBAhAgwDCwJAIAJBvNwQaigCAA0AIAJBvNwQaiADNgIAIARBADsBBCAEIAJBjKcQaigCADYCACAEIQIMAwsgAkEEaiECDAALC0FAIQIDQAJAIAINAEHYrBAhAgwCCwJAIAJBjKcQaigCACADRw0AIAJBvNwQaiICKAIAIQMgAkEANgIAIARBADsBDCAEIAM2AgggBEEIaiECDAILIAJBBGohAgwACwsgACACKQIANwIAIARBEGokAAsYACABKAIAIAEoAgQgASgCCCAAEQUAQQALIgAgASABKgIAIAEqAgQgASoCCCABKgIMIAARDgA7ARBBAAsTACABIAEqAgAgABEPADsBBEEAC8EBAQZ/IwBBgAFrIgIkACACIAEoAggiAzYCCCACIAEoAhAiBDYCECACIAEoAgwiBTYCDCACQRRqIgYgAUEUakHAAPwKAAAgAkEIakHcAGogAUHkAGopAgA3AgAgAkHcAGogAUHcAGopAgA3AgAgAiABKQJUNwJUIAIgASgCbCIHNgJsIAIgASkCcDcCcCACQfgAaiADIAUgBCAGIAJB1ABqIAcgAkHwAGogABEQACABIAIpA3g3AgAgAkGAAWokAEEACw4AIAEgABEHADsBAEEACzcBAX8jAEEQayICJAAgAkEIaiABQQhqKQIANwMAIAIgASkCADcDACACIAARBAAgAkEQaiQAQQAL2wEBAX8jAEEQayIEJAACQAJAIAINAEFAIQIDQAJAIAINAEHQrBAhAgwDCwJAIAJB8NcQaigCAA0AIAJB8NcQaiADNgIAIARBADsBBCAEIAJBuJ8QaigCADYCACAEIQIMAwsgAkEEaiECDAALC0FAIQIDQAJAIAINAEHYrBAhAgwCCwJAIAJBuJ8QaigCACADRw0AIAJB8NcQaiICKAIAIQMgAkEANgIAIARBADsBDCAEIAM2AgggBEEIaiECDAILIAJBBGohAgwACwsgACACKQIANwIAIARBEGokAAtkAQF/IwBBIGsiAiQAIAJBDGogASgCFCABKAIYIAEoAhwgASgCICAAEQIAIAFBEGogAkEMakEQaigCADYCACABQQhqIAJBDGpBCGopAgA3AgAgASACKQIMNwIAIAJBIGokAEEACxgAIAEgASoCACABKgIEIAAREQA7AQhBAAsJACAAEQMAQQAL2wEBAX8jAEEQayIEJAACQAJAIAINAEFAIQIDQAJAIAINAEHQrBAhAgwDCwJAIAJBsNgQaigCAA0AIAJBsNgQaiADNgIAIARBADsBBCAEIAJB+J8QaigCADYCACAEIQIMAwsgAkEEaiECDAALC0FAIQIDQAJAIAINAEHYrBAhAgwCCwJAIAJB+J8QaigCACADRw0AIAJBsNgQaiICKAIAIQMgAkEANgIAIARBADsBDCAEIAM2AgggBEEIaiECDAILIAJBBGohAgwACwsgACACKQIANwIAIARBEGokAAsTACABKAIAIAEoAgQgABEIAEEAC9sBAQF/IwBBEGsiBCQAAkACQCACDQBBQCECA0ACQCACDQBB0KwQIQIMAwsCQCACQfDYEGooAgANACACQfDYEGogAzYCACAEQQA7AQQgBCACQbigEGooAgA2AgAgBCECDAMLIAJBBGohAgwACwtBQCECA0ACQCACDQBB2KwQIQIMAgsCQCACQbigEGooAgAgA0cNACACQfDYEGoiAigCACEDIAJBADYCACAEQQA7AQwgBCADNgIIIARBCGohAgwCCyACQQRqIQIMAAsLIAAgAikCADcCACAEQRBqJAALEwAgASABLQACIAAREgA7AQBBAAtTAQJ/IwBBIGsiAiQAIAJBCGpBCGogAUEIaikCADcDACACIAEpAgA3AwggAiABLQASIgNBAXE6ABggASACQQhqIAMgABEJADsBECACQSBqJABBAAsiACABIAEoAgAgASgCBCABKAIIIAEoAgwgABEBADsBEEEACxMAIAEgAS8BAiAAERIAOwEAQQALXQECfyMAQSBrIgIkACACQRBqIAFBEGopAgA3AwAgAkEIaiABQQhqKQIANwMAIAIgASkCADcDACACIAEtABoiA0EBcToAGCABIAIgAyAAEQkAOwEYIAJBIGokAEEAC0YBAn8jAEHQAGsiAiQAIAJBDGogAUHAAPwKAAAgAiABLQBCIgNBAXE6AEwgASACQQxqIAMgABEJADsBQCACQdAAaiQAQQALiwICAX8BfiMAQRBrIgQkAAJAAkAgAw0AQgAhBQwBCyABKAIAIQEgBCADNgIIIAQgAjYCBAJAAkACQAJAAkACQAJAAkAgASAEQQRqQQEgBEEMahABQf//A3EiA0Ftag4EAQcHAgALAkAgA0FBag4CBgUACyADQcwARg0FAkAgA0EIRw0AQoCAgIDABSEFDAgLIANBHUYNAiADQTNGDQMgAw0GIAQ1AgwhBQwHC0KAgICAsAQhBQwGC0KAgICAwAQhBQwFC0KAgICA0AQhBQwEC0KAgICA8AAhBQwDC0KAgICAkAUhBQwCC0KAgICAgAUhBQwBC0KAgICAoAYhBQsgACAFNwIAIARBEGokAAslAEECQQNBACAAQf8BcSIAQRFJGyAAQQlJG0ECdEGgvhBqKAIACx0AIAEgASgCACABKAIEIAEoAgggABETADsBDEEAC5wBAgF/AX4jAEEwayIDJAAgAyABKQIANwMYAkACQAJAAkBBAQ0AQQghAQwBCyADQSBqIANBGGogAhAWIAMpAyAiBEIgiKciAUH//wNxRQ0BCyADIAE7AQggAyEBDAELIAMgAjYCECADIAQ+AgwgA0EAOwEUIANBDGohAQsgACABKQIANwIAIABBCGogAUEIaigCADYCACADQTBqJAALDgAgASAAEQcANgIAQQAL2wEBAX8jAEEQayIEJAACQAJAIAINAEFAIQIDQAJAIAINAEHQrBAhAgwDCwJAIAJB+NkQaigCAA0AIAJB+NkQaiADNgIAIARBADsBBCAEIAJBzKQQaigCADYCACAEIQIMAwsgAkEEaiECDAALC0FAIQIDQAJAIAINAEHYrBAhAgwCCwJAIAJBzKQQaigCACADRw0AIAJB+NkQaiICKAIAIQMgAkEANgIAIARBADsBDCAEIAM2AgggBEEIaiECDAILIAJBBGohAgwACwsgACACKQIANwIAIARBEGokAAsQACAAIAFBACgC8NYQEO4BC10BAX8jAEEQayIDJAAgAyABNgIMIAMgADYCCAJAAkACQAJAIAIgA0EIakEIELECDgQAAwECAAsgA0EQaiQADwtBwpIQQSIQEQALQaeSEEEaEBEAC0GMkhBBGhARAAsQACAAIAFBACgC9NYQEO4BCxAAIAAgAUEAKAL41hAQ7gELEAAgACABQQAoAvzWEBDuAQsQACAAIAFBACgCgNcQEO4BCxAAIAAgAUEAKAKE1xAQ7gELEAAgACABQQAoAojXEBDuAQsQACAAIAFBACgCjNcQEO4BCxAAIAAgAUEAKAKQ1xAQ7gELEAAgACABQQAoApTXEBDuAQsQACAAIAFBACgCmNcQEO4BCxAAIAAgAUEAKAKc1xAQ7gELEAAgACABQQAoAqDXEBDuAQsQACAAIAFBACgCpNcQEO4BCxAAIAAgAUEAKAKo1xAQ7gELEAAgACABQQAoAqzXEBDuAQtQAQF/IwBBIGsiASQAIAFBCGpBCGogAEEIaikCADcDACABIAApAgA3AwggAUEANgIYIAFBACgCsNcQIgA2AhwgAUEIaiAAEP8BIAFBIGokAAtmAQF/IwBBEGsiAiQAIAJBCGogAEEIaikCADcDACACIAApAgA3AwACQAJAAkACQCABIAJBEBCxAg4EAAMBAgALIAJBEGokAA8LQcKSEEEiEBEAC0GnkhBBGhARAAtBjJIQQRoQEQALUAEBfyMAQSBrIgEkACABQQhqQQhqIABBCGopAgA3AwAgASAAKQIANwMIIAFBADYCGCABQQAoArTXECIANgIcIAFBCGogABD/ASABQSBqJAALUAEBfyMAQSBrIgEkACABQQhqQQhqIABBCGopAgA3AwAgASAAKQIANwMIIAFBADYCGCABQQAoArjXECIANgIcIAFBCGogABD/ASABQSBqJAALUAEBfyMAQSBrIgEkACABQQhqQQhqIABBCGopAgA3AwAgASAAKQIANwMIIAFBADYCGCABQQAoArzXECIANgIcIAFBCGogABD/ASABQSBqJAALUAEBfyMAQSBrIgEkACABQQhqQQhqIABBCGopAgA3AwAgASAAKQIANwMIIAFBADYCGCABQQAoAsDXECIANgIcIAFBCGogABD/ASABQSBqJAALUAEBfyMAQSBrIgEkACABQQhqQQhqIABBCGopAgA3AwAgASAAKQIANwMIIAFBADYCGCABQQAoAsTXECIANgIcIAFBCGogABD/ASABQSBqJAALUAEBfyMAQSBrIgEkACABQQhqQQhqIABBCGopAgA3AwAgASAAKQIANwMIIAFBADYCGCABQQAoAsjXECIANgIcIAFBCGogABD/ASABQSBqJAALUAEBfyMAQSBrIgEkACABQQhqQQhqIABBCGopAgA3AwAgASAAKQIANwMIIAFBADYCGCABQQAoAszXECIANgIcIAFBCGogABD/ASABQSBqJAALUAEBfyMAQSBrIgEkACABQQhqQQhqIABBCGopAgA3AwAgASAAKQIANwMIIAFBADYCGCABQQAoAtDXECIANgIcIAFBCGogABD/ASABQSBqJAALUAEBfyMAQSBrIgEkACABQQhqQQhqIABBCGopAgA3AwAgASAAKQIANwMIIAFBADYCGCABQQAoAtTXECIANgIcIAFBCGogABD/ASABQSBqJAALUAEBfyMAQSBrIgEkACABQQhqQQhqIABBCGopAgA3AwAgASAAKQIANwMIIAFBADYCGCABQQAoAtjXECIANgIcIAFBCGogABD/ASABQSBqJAALUAEBfyMAQSBrIgEkACABQQhqQQhqIABBCGopAgA3AwAgASAAKQIANwMIIAFBADYCGCABQQAoAtzXECIANgIcIAFBCGogABD/ASABQSBqJAALUAEBfyMAQSBrIgEkACABQQhqQQhqIABBCGopAgA3AwAgASAAKQIANwMIIAFBADYCGCABQQAoAuDXECIANgIcIAFBCGogABD/ASABQSBqJAALUAEBfyMAQSBrIgEkACABQQhqQQhqIABBCGopAgA3AwAgASAAKQIANwMIIAFBADYCGCABQQAoAuTXECIANgIcIAFBCGogABD/ASABQSBqJAALUAEBfyMAQSBrIgEkACABQQhqQQhqIABBCGopAgA3AwAgASAAKQIANwMIIAFBADYCGCABQQAoAujXECIANgIcIAFBCGogABD/ASABQSBqJAALUAEBfyMAQSBrIgEkACABQQhqQQhqIABBCGopAgA3AwAgASAAKQIANwMIIAFBADYCGCABQQAoAuzXECIANgIcIAFBCGogABD/ASABQSBqJAALDABBACgC8NcQEJACCz4AAkACQAJAAkAgAEGq1arVekEAELECDgQAAwECAAsPC0HCkhBBIhARAAtBp5IQQRoQEQALQYySEEEaEBEACwwAQQAoAvTXEBCQAgsMAEEAKAL41xAQkAILDABBACgC/NcQEJACCwwAQQAoAoDYEBCQAgsMAEEAKAKE2BAQkAILDABBACgCiNgQEJACCwwAQQAoAozYEBCQAgsMAEEAKAKQ2BAQkAILDABBACgClNgQEJACCwwAQQAoApjYEBCQAgsMAEEAKAKc2BAQkAILDABBACgCoNgQEJACCwwAQQAoAqTYEBCQAgsMAEEAKAKo2BAQkAILDABBACgCrNgQEJACCxAAIAAgAUEAKAKw2BAQoQILXQEBfyMAQRBrIgMkACADIAE2AgwgAyAANgIIAkACQAJAAkAgAiADQQhqQQgQsQIOBAADAQIACyADQRBqJAAPC0HCkhBBIhARAAtBp5IQQRoQEQALQYySEEEaEBEACxAAIAAgAUEAKAK02BAQoQILEAAgACABQQAoArjYEBChAgsQACAAIAFBACgCvNgQEKECCxAAIAAgAUEAKALA2BAQoQILEAAgACABQQAoAsTYEBChAgsQACAAIAFBACgCyNgQEKECCxAAIAAgAUEAKALM2BAQoQILEAAgACABQQAoAtDYEBChAgsQACAAIAFBACgC1NgQEKECCxAAIAAgAUEAKALY2BAQoQILEAAgACABQQAoAtzYEBChAgsQACAAIAFBACgC4NgQEKECCxAAIAAgAUEAKALk2BAQoQILEAAgACABQQAoAujYEBChAgsQACAAIAFBACgC7NgQEKECC0oBAn8jAEEQayIDJABBACEEAkBBAC0A+NoQDQAgA0F/NgIIIAMgA0EIajYCDCADQQhqIQQLIAAgASACIAQQAiEEIANBEGokACAEC34BAX8jAEEwayICJAAgAkEQaiABQRBqKQIANwMAIAJBCGogAUEIaikCADcDACACQSBqIAFBIGopAgA3AwAgAkEoaiABQShqKQIANwMAIAIgASkCADcDACACIAEpAhg3AxggASACIAJBGGogABEJAEEBcToAMCACQTBqJABBAAsYACABKAIAIAEoAgQgASgCCCAAEQUAQQAL2wEBAX8jAEEQayIEJAACQAJAIAINAEFAIQIDQAJAIAINAEHQrBAhAgwDCwJAIAJB/NwQaigCAA0AIAJB/NwQaiADNgIAIARBADsBBCAEIAJBkKgQaigCADYCACAEIQIMAwsgAkEEaiECDAALC0FAIQIDQAJAIAINAEHYrBAhAgwCCwJAIAJBkKgQaigCACADRw0AIAJB/NwQaiICKAIAIQMgAkEANgIAIARBADsBDCAEIAM2AgggBEEIaiECDAILIAJBBGohAgwACwsgACACKQIANwIAIARBEGokAAsTACABKAIAIAEoAgQgABEIAEEAC9sBAQF/IwBBEGsiBCQAAkACQCACDQBBQCECA0ACQCACDQBB0KwQIQIMAwsCQCACQbzdEGooAgANACACQbzdEGogAzYCACAEQQA7AQQgBCACQdCoEGooAgA2AgAgBCECDAMLIAJBBGohAgwACwtBQCECA0ACQCACDQBB2KwQIQIMAgsCQCACQdCoEGooAgAgA0cNACACQbzdEGoiAigCACEDIAJBADYCACAEQQA7AQwgBCADNgIIIARBCGohAgwCCyACQQRqIQIMAAsLIAAgAikCADcCACAEQRBqJAALIgAgASgCACABKAIEIAEoAgggASgCDCABKAIQIAARAgBBAAvbAQEBfyMAQRBrIgQkAAJAAkAgAg0AQUAhAgNAAkAgAg0AQdCsECECDAMLAkAgAkH83RBqKAIADQAgAkH83RBqIAM2AgAgBEEAOwEEIAQgAkGQqRBqKAIANgIAIAQhAgwDCyACQQRqIQIMAAsLQUAhAgNAAkAgAg0AQdisECECDAILAkAgAkGQqRBqKAIAIANHDQAgAkH83RBqIgIoAgAhAyACQQA2AgAgBEEAOwEMIAQgAzYCCCAEQQhqIQIMAgsgAkEEaiECDAALCyAAIAIpAgA3AgAgBEEQaiQACx0AIAEoAgAgASgCBCABKAIIIAEoAgwgABEKAEEAC9sBAQF/IwBBEGsiBCQAAkACQCACDQBBQCECA0ACQCACDQBB0KwQIQIMAwsCQCACQbzeEGooAgANACACQbzeEGogAzYCACAEQQA7AQQgBCACQdCpEGooAgA2AgAgBCECDAMLIAJBBGohAgwACwtBQCECA0ACQCACDQBB2KwQIQIMAgsCQCACQdCpEGooAgAgA0cNACACQbzeEGoiAigCACEDIAJBADYCACAEQQA7AQwgBCADNgIIIARBCGohAgwCCyACQQRqIQIMAAsLIAAgAikCADcCACAEQRBqJAALZwEEfyMAQSBrIgIkACACQQRqQRRqIAFBFGopAgA3AgAgAiABKAIAIgM2AgQgAiABKAIEIgQ2AgggAiABKAIIIgU2AgwgAiABKQIMNwIQIAMgBCAFIAJBEGogABEKACACQSBqJABBAAvbAQEBfyMAQRBrIgQkAAJAAkAgAg0AQUAhAgNAAkAgAg0AQdCsECECDAMLAkAgAkH83hBqKAIADQAgAkH83hBqIAM2AgAgBEEAOwEEIAQgAkGQqhBqKAIANgIAIAQhAgwDCyACQQRqIQIMAAsLQUAhAgNAAkAgAg0AQdisECECDAILAkAgAkGQqhBqKAIAIANHDQAgAkH83hBqIgIoAgAhAyACQQA2AgAgBEEAOwEMIAQgAzYCCCAEQQhqIQIMAgsgAkEEaiECDAALCyAAIAIpAgA3AgAgBEEQaiQACycAIAEoAgAgASgCBCABKAIIIAEoAgwgASoCECABKgIUIAARDABBAAvbAQEBfyMAQRBrIgQkAAJAAkAgAg0AQUAhAgNAAkAgAg0AQdCsECECDAMLAkAgAkG83xBqKAIADQAgAkG83xBqIAM2AgAgBEEAOwEEIAQgAkHQqhBqKAIANgIAIAQhAgwDCyACQQRqIQIMAAsLQUAhAgNAAkAgAg0AQdisECECDAILAkAgAkHQqhBqKAIAIANHDQAgAkG83xBqIgIoAgAhAyACQQA2AgAgBEEAOwEMIAQgAzYCCCAEQQhqIQIMAgsgAkEEaiECDAALCyAAIAIpAgA3AgAgBEEQaiQAC10BBH8jAEGQA2siAiQAIAIgASgC9AIiAzYCBCACIAEoAvACIgQ2AgAgAkEQaiIFIAFB8AL8CgAAIAIgASgC+AIiATYCgAMgBCADIAUgASAAEQoAIAJBkANqJABBAAvbAQEBfyMAQRBrIgQkAAJAAkAgAg0AQUAhAgNAAkAgAg0AQdCsECECDAMLAkAgAkH83xBqKAIADQAgAkH83xBqIAM2AgAgBEEAOwEEIAQgAkGQqxBqKAIANgIAIAQhAgwDCyACQQRqIQIMAAsLQUAhAgNAAkAgAg0AQdisECECDAILAkAgAkGQqxBqKAIAIANHDQAgAkH83xBqIgIoAgAhAyACQQA2AgAgBEEAOwEMIAQgAzYCCCAEQQhqIQIMAgsgAkEEaiECDAALCyAAIAIpAgA3AgAgBEEQaiQAC9sBAQF/IwBBEGsiBCQAAkACQCACDQBBQCECA0ACQCACDQBB0KwQIQIMAwsCQCACQbzgEGooAgANACACQbzgEGogAzYCACAEQQA7AQQgBCACQdCrEGooAgA2AgAgBCECDAMLIAJBBGohAgwACwtBQCECA0ACQCACDQBB2KwQIQIMAgsCQCACQdCrEGooAgAgA0cNACACQbzgEGoiAigCACEDIAJBADYCACAEQQA7AQwgBCADNgIIIARBCGohAgwCCyACQQRqIQIMAAsLIAAgAikCADcCACAEQRBqJAAL2wEBAX8jAEEQayIEJAACQAJAIAINAEFAIQIDQAJAIAINAEHQrBAhAgwDCwJAIAJB/OAQaigCAA0AIAJB/OAQaiADNgIAIARBADsBBCAEIAJBkKwQaigCADYCACAEIQIMAwsgAkEEaiECDAALC0FAIQIDQAJAIAINAEHYrBAhAgwCCwJAIAJBkKwQaigCACADRw0AIAJB/OAQaiICKAIAIQMgAkEANgIAIARBADsBDCAEIAM2AgggBEEIaiECDAILIAJBBGohAgwACwsgACACKQIANwIAIARBEGokAAtUAQN/IwBBIGsiAiQAIAIgASgCBCIDNgIQIAIgASgCACIENgIMIAIgASkCCDcCFCACIAEoAhAiATYCHCAEIAMgAkEUaiABIAARCgAgAkEgaiQAQQAL2wEBAX8jAEEQayIEJAACQAJAIAINAEFAIQIDQAJAIAINAEHQrBAhAgwDCwJAIAJBvOEQaigCAA0AIAJBvOEQaiADNgIAIARBADsBBCAEIAJB0KwQaigCADYCACAEIQIMAwsgAkEEaiECDAALC0FAIQIDQAJAIAINAEHYrBAhAgwCCwJAIAJB0KwQaigCACADRw0AIAJBvOEQaiICKAIAIQMgAkEANgIAIARBADsBDCAEIAM2AgggBEEIaiECDAILIAJBBGohAgwACwsgACACKQIANwIAIARBEGokAAtIAQF/IwBBIGsiAiQAIAIgASkCCDcDCCACIAEpAhA3AxAgAkEYaiACQQhqIAJBEGogABEFACABIAIpAxg3AgAgAkEgaiQAQQALOwEBfyMAQRBrIgIkACACIAEpAgQ3AwAgAiABKQIMNwMIIAEgAiACQQhqIAARBgA4AgAgAkEQaiQAQQALLwEBfyMAQRBrIgIkACACIAEpAgQ3AwggASACQQhqIAARFAA4AgAgAkEQaiQAQQALawEBfyMAQTBrIgIkACACQRBqIAFBEGopAgA3AwAgAkEgaiABQSBqKQIANwMAIAIgASkCCDcDCCACIAEpAhg3AxggAkEoaiACQQhqIAJBCGpBEGogABEFACABIAIpAyg3AgAgAkEwaiQAQQALWwEBfyMAQSBrIgIkACACQQhqIAFBDGopAgA3AwAgAkEYaiABQRxqKQIANwMAIAIgASkCBDcDACACIAEpAhQ3AxAgASACIAJBEGogABEGADgCACACQSBqJABBAAtJAQF/IwBBIGsiAiQAIAJBEGogAUEQaikCADcDACACIAEpAgg3AwggAkEYaiACQQhqIAARCAAgASACKQMYNwIAIAJBIGokAEEAC1YBAX8jAEEgayICJAAgAkEIaiAAQQhqKQIANwMAIAIgACkCADcDACACIAFBAXE6ABAgAkEANgIUIAJBACgC+NgQIgA2AhggAiABIAAQzAIgAkEgaiQAC3YBAX8jAEEgayIDJAAgA0EIakEIaiAAQQhqKQIANwMAIAMgACkCADcDCCADIAFBAXE6ABgCQAJAAkACQCACIANBCGpBFBCxAg4EAAMBAgALIANBIGokAA8LQcKSEEEiEBEAC0GnkhBBGhARAAtBjJIQQRoQEQALVgEBfyMAQSBrIgIkACACQQhqIABBCGopAgA3AwAgAiAAKQIANwMAIAIgAUEBcToAECACQQA2AhQgAkEAKAL82BAiADYCGCACIAEgABDMAiACQSBqJAALVgEBfyMAQSBrIgIkACACQQhqIABBCGopAgA3AwAgAiAAKQIANwMAIAIgAUEBcToAECACQQA2AhQgAkEAKAKA2RAiADYCGCACIAEgABDMAiACQSBqJAALVgEBfyMAQSBrIgIkACACQQhqIABBCGopAgA3AwAgAiAAKQIANwMAIAIgAUEBcToAECACQQA2AhQgAkEAKAKE2RAiADYCGCACIAEgABDMAiACQSBqJAALVgEBfyMAQSBrIgIkACACQQhqIABBCGopAgA3AwAgAiAAKQIANwMAIAIgAUEBcToAECACQQA2AhQgAkEAKAKI2RAiADYCGCACIAEgABDMAiACQSBqJAALVgEBfyMAQSBrIgIkACACQQhqIABBCGopAgA3AwAgAiAAKQIANwMAIAIgAUEBcToAECACQQA2AhQgAkEAKAKM2RAiADYCGCACIAEgABDMAiACQSBqJAALVgEBfyMAQSBrIgIkACACQQhqIABBCGopAgA3AwAgAiAAKQIANwMAIAIgAUEBcToAECACQQA2AhQgAkEAKAKQ2RAiADYCGCACIAEgABDMAiACQSBqJAALVgEBfyMAQSBrIgIkACACQQhqIABBCGopAgA3AwAgAiAAKQIANwMAIAIgAUEBcToAECACQQA2AhQgAkEAKAKU2RAiADYCGCACIAEgABDMAiACQSBqJAALVgEBfyMAQSBrIgIkACACQQhqIABBCGopAgA3AwAgAiAAKQIANwMAIAIgAUEBcToAECACQQA2AhQgAkEAKAKY2RAiADYCGCACIAEgABDMAiACQSBqJAALVgEBfyMAQSBrIgIkACACQQhqIABBCGopAgA3AwAgAiAAKQIANwMAIAIgAUEBcToAECACQQA2AhQgAkEAKAKc2RAiADYCGCACIAEgABDMAiACQSBqJAALVgEBfyMAQSBrIgIkACACQQhqIABBCGopAgA3AwAgAiAAKQIANwMAIAIgAUEBcToAECACQQA2AhQgAkEAKAKg2RAiADYCGCACIAEgABDMAiACQSBqJAALVgEBfyMAQSBrIgIkACACQQhqIABBCGopAgA3AwAgAiAAKQIANwMAIAIgAUEBcToAECACQQA2AhQgAkEAKAKk2RAiADYCGCACIAEgABDMAiACQSBqJAALVgEBfyMAQSBrIgIkACACQQhqIABBCGopAgA3AwAgAiAAKQIANwMAIAIgAUEBcToAECACQQA2AhQgAkEAKAKo2RAiADYCGCACIAEgABDMAiACQSBqJAALVgEBfyMAQSBrIgIkACACQQhqIABBCGopAgA3AwAgAiAAKQIANwMAIAIgAUEBcToAECACQQA2AhQgAkEAKAKs2RAiADYCGCACIAEgABDMAiACQSBqJAALVgEBfyMAQSBrIgIkACACQQhqIABBCGopAgA3AwAgAiAAKQIANwMAIAIgAUEBcToAECACQQA2AhQgAkEAKAKw2RAiADYCGCACIAEgABDMAiACQSBqJAALVgEBfyMAQSBrIgIkACACQQhqIABBCGopAgA3AwAgAiAAKQIANwMAIAIgAUEBcToAECACQQA2AhQgAkEAKAK02RAiADYCGCACIAEgABDMAiACQSBqJAALDABBACgCuNkQEN0CC1gBAX8jAEEQayIBJAACQAJAAkACQCAAIAFBDGpBBBCxAg4EAAMBAgALIAEoAgwhACABQRBqJAAgAA8LQcKSEEEiEBEAC0GnkhBBGhARAAtBjJIQQRoQEQALDABBACgCvNkQEN0CCwwAQQAoAsDZEBDdAgsMAEEAKALE2RAQ3QILDABBACgCyNkQEN0CCwwAQQAoAszZEBDdAgsMAEEAKALQ2RAQ3QILDABBACgC1NkQEN0CCwwAQQAoAtjZEBDdAgsMAEEAKALc2RAQ3QILDABBACgC4NkQEN0CCwwAQQAoAuTZEBDdAgsMAEEAKALo2RAQ3QILDABBACgC7NkQEN0CCwwAQQAoAvDZEBDdAgsMAEEAKAL02RAQ3QILEAAgACABQQAoAvjZEBDuAgtmAQF/IwBBEGsiAyQAIAMgATYCDCADIAA2AggCQAJAAkACQCACIANBBGpBDBCxAg4EAAMBAgALIAMoAgQhASADQRBqJAAgAQ8LQcKSEEEiEBEAC0GnkhBBGhARAAtBjJIQQRoQEQALEAAgACABQQAoAvzZEBDuAgsQACAAIAFBACgCgNoQEO4CCxAAIAAgAUEAKAKE2hAQ7gILEAAgACABQQAoAojaEBDuAgsQACAAIAFBACgCjNoQEO4CCxAAIAAgAUEAKAKQ2hAQ7gILEAAgACABQQAoApTaEBDuAgsQACAAIAFBACgCmNoQEO4CCxAAIAAgAUEAKAKc2hAQ7gILEAAgACABQQAoAqDaEBDuAgsQACAAIAFBACgCpNoQEO4CCxAAIAAgAUEAKAKo2hAQ7gILEAAgACABQQAoAqzaEBDuAgsQACAAIAFBACgCsNoQEO4CCxAAIAAgAUEAKAK02hAQ7gILDgAgAEEAKAK42hAQ/wILVgEBfyMAQRBrIgIkACACIAA7AQ4CQAJAAkACQCABIAJBDmpBAhCxAg4EAAMBAgALIAJBEGokAA8LQcKSEEEiEBEAC0GnkhBBGhARAAtBjJIQQRoQEQALDgAgAEEAKAK82hAQ/wILDgAgAEEAKALA2hAQ/wILDgAgAEEAKALE2hAQ/wILDgAgAEEAKALI2hAQ/wILDgAgAEEAKALM2hAQ/wILDgAgAEEAKALQ2hAQ/wILDgAgAEEAKALU2hAQ/wILDgAgAEEAKALY2hAQ/wILDgAgAEEAKALc2hAQ/wILDgAgAEEAKALg2hAQ/wILDgAgAEEAKALk2hAQ/wILDgAgAEEAKALo2hAQ/wILDgAgAEEAKALs2hAQ/wILDgAgAEEAKALw2hAQ/wILDgAgAEEAKAL02hAQ/wILXgEBfyMAQSBrIgMkACADIAEgAkEAKAL82hAQkAMgAEEYaiADQRhqKQIANwIAIABBEGogA0EQaikCADcCACAAQQhqIANBCGopAgA3AgAgACADKQIANwIAIANBIGokAAuzAQEBfyMAQTBrIgQkACAEIAI7ASwgBEEuaiACQYCA/ABxQRB2OgAAIAQgATYCKAJAAkACQAJAIAMgBEEIakEoELECDgQAAwECAAsgACAEKQIINwIAIABBGGogBEEIakEYaikCADcCACAAQRBqIARBCGpBEGopAgA3AgAgAEEIaiAEQQhqQQhqKQIANwIAIARBMGokAA8LQcKSEEEiEBEAC0GnkhBBGhARAAtBjJIQQRoQEQALXgEBfyMAQSBrIgMkACADIAEgAkEAKAKA2xAQkAMgAEEYaiADQRhqKQIANwIAIABBEGogA0EQaikCADcCACAAQQhqIANBCGopAgA3AgAgACADKQIANwIAIANBIGokAAteAQF/IwBBIGsiAyQAIAMgASACQQAoAoTbEBCQAyAAQRhqIANBGGopAgA3AgAgAEEQaiADQRBqKQIANwIAIABBCGogA0EIaikCADcCACAAIAMpAgA3AgAgA0EgaiQAC14BAX8jAEEgayIDJAAgAyABIAJBACgCiNsQEJADIABBGGogA0EYaikCADcCACAAQRBqIANBEGopAgA3AgAgAEEIaiADQQhqKQIANwIAIAAgAykCADcCACADQSBqJAALXgEBfyMAQSBrIgMkACADIAEgAkEAKAKM2xAQkAMgAEEYaiADQRhqKQIANwIAIABBEGogA0EQaikCADcCACAAQQhqIANBCGopAgA3AgAgACADKQIANwIAIANBIGokAAteAQF/IwBBIGsiAyQAIAMgASACQQAoApDbEBCQAyAAQRhqIANBGGopAgA3AgAgAEEQaiADQRBqKQIANwIAIABBCGogA0EIaikCADcCACAAIAMpAgA3AgAgA0EgaiQAC14BAX8jAEEgayIDJAAgAyABIAJBACgClNsQEJADIABBGGogA0EYaikCADcCACAAQRBqIANBEGopAgA3AgAgAEEIaiADQQhqKQIANwIAIAAgAykCADcCACADQSBqJAALXgEBfyMAQSBrIgMkACADIAEgAkEAKAKY2xAQkAMgAEEYaiADQRhqKQIANwIAIABBEGogA0EQaikCADcCACAAQQhqIANBCGopAgA3AgAgACADKQIANwIAIANBIGokAAteAQF/IwBBIGsiAyQAIAMgASACQQAoApzbEBCQAyAAQRhqIANBGGopAgA3AgAgAEEQaiADQRBqKQIANwIAIABBCGogA0EIaikCADcCACAAIAMpAgA3AgAgA0EgaiQAC14BAX8jAEEgayIDJAAgAyABIAJBACgCoNsQEJADIABBGGogA0EYaikCADcCACAAQRBqIANBEGopAgA3AgAgAEEIaiADQQhqKQIANwIAIAAgAykCADcCACADQSBqJAALXgEBfyMAQSBrIgMkACADIAEgAkEAKAKk2xAQkAMgAEEYaiADQRhqKQIANwIAIABBEGogA0EQaikCADcCACAAQQhqIANBCGopAgA3AgAgACADKQIANwIAIANBIGokAAteAQF/IwBBIGsiAyQAIAMgASACQQAoAqjbEBCQAyAAQRhqIANBGGopAgA3AgAgAEEQaiADQRBqKQIANwIAIABBCGogA0EIaikCADcCACAAIAMpAgA3AgAgA0EgaiQAC14BAX8jAEEgayIDJAAgAyABIAJBACgCrNsQEJADIABBGGogA0EYaikCADcCACAAQRBqIANBEGopAgA3AgAgAEEIaiADQQhqKQIANwIAIAAgAykCADcCACADQSBqJAALXgEBfyMAQSBrIgMkACADIAEgAkEAKAKw2xAQkAMgAEEYaiADQRhqKQIANwIAIABBEGogA0EQaikCADcCACAAQQhqIANBCGopAgA3AgAgACADKQIANwIAIANBIGokAAteAQF/IwBBIGsiAyQAIAMgASACQQAoArTbEBCQAyAAQRhqIANBGGopAgA3AgAgAEEQaiADQRBqKQIANwIAIABBCGogA0EIaikCADcCACAAIAMpAgA3AgAgA0EgaiQAC14BAX8jAEEgayIDJAAgAyABIAJBACgCuNsQEJADIABBGGogA0EYaikCADcCACAAQRBqIANBEGopAgA3AgAgAEEIaiADQQhqKQIANwIAIAAgAykCADcCACADQSBqJAALEAAgACABQQAoArzbEBChAwuOAQIBfwF9IwBBEGsiAyQAIAMgATsBDCADQQ5qIAFBgID8AHFBEHY6AAAgAyAAOwEIIANBCmogAEGAgPwAcUEQdjoAAAJAAkACQAJAIAIgA0EEakEMELECDgQAAwECAAsgAyoCBCEEIANBEGokACAEDwtBwpIQQSIQEQALQaeSEEEaEBEAC0GMkhBBGhARAAsQACAAIAFBACgCwNsQEKEDCxAAIAAgAUEAKALE2xAQoQMLEAAgACABQQAoAsjbEBChAwsQACAAIAFBACgCzNsQEKEDCxAAIAAgAUEAKALQ2xAQoQMLEAAgACABQQAoAtTbEBChAwsQACAAIAFBACgC2NsQEKEDCxAAIAAgAUEAKALc2xAQoQMLEAAgACABQQAoAuDbEBChAwsQACAAIAFBACgC5NsQEKEDCxAAIAAgAUEAKALo2xAQoQMLEAAgACABQQAoAuzbEBChAwsQACAAIAFBACgC8NsQEKEDCxAAIAAgAUEAKAL02xAQoQMLEAAgACABQQAoAvjbEBChAwtoAQF/IwBBMGsiBCQAIARBGGogAUEIaikCADcCACAEIAM4AiQgBCACOAIgIAQgADYCDCAEIAEpAgA3AhAgBEEANgIoIARBACgC/NsQIgE2AiwgACAEQRBqIAIgAyABELIDIARBMGokAAt+AQF/IwBBIGsiBSQAIAVBEGogAUEIaikCADcCACAFIAM4AhwgBSACOAIYIAUgADYCBCAFIAEpAgA3AggCQAJAAkACQCAEIAVBBGpBHBCxAg4EAAMBAgALIAVBIGokAA8LQcKSEEEiEBEAC0GnkhBBGhARAAtBjJIQQRoQEQALaAEBfyMAQTBrIgQkACAEQRhqIAFBCGopAgA3AgAgBCADOAIkIAQgAjgCICAEIAA2AgwgBCABKQIANwIQIARBADYCKCAEQQAoAoDcECIBNgIsIAAgBEEQaiACIAMgARCyAyAEQTBqJAALaAEBfyMAQTBrIgQkACAEQRhqIAFBCGopAgA3AgAgBCADOAIkIAQgAjgCICAEIAA2AgwgBCABKQIANwIQIARBADYCKCAEQQAoAoTcECIBNgIsIAAgBEEQaiACIAMgARCyAyAEQTBqJAALaAEBfyMAQTBrIgQkACAEQRhqIAFBCGopAgA3AgAgBCADOAIkIAQgAjgCICAEIAA2AgwgBCABKQIANwIQIARBADYCKCAEQQAoAojcECIBNgIsIAAgBEEQaiACIAMgARCyAyAEQTBqJAALaAEBfyMAQTBrIgQkACAEQRhqIAFBCGopAgA3AgAgBCADOAIkIAQgAjgCICAEIAA2AgwgBCABKQIANwIQIARBADYCKCAEQQAoAozcECIBNgIsIAAgBEEQaiACIAMgARCyAyAEQTBqJAALaAEBfyMAQTBrIgQkACAEQRhqIAFBCGopAgA3AgAgBCADOAIkIAQgAjgCICAEIAA2AgwgBCABKQIANwIQIARBADYCKCAEQQAoApDcECIBNgIsIAAgBEEQaiACIAMgARCyAyAEQTBqJAALaAEBfyMAQTBrIgQkACAEQRhqIAFBCGopAgA3AgAgBCADOAIkIAQgAjgCICAEIAA2AgwgBCABKQIANwIQIARBADYCKCAEQQAoApTcECIBNgIsIAAgBEEQaiACIAMgARCyAyAEQTBqJAALaAEBfyMAQTBrIgQkACAEQRhqIAFBCGopAgA3AgAgBCADOAIkIAQgAjgCICAEIAA2AgwgBCABKQIANwIQIARBADYCKCAEQQAoApjcECIBNgIsIAAgBEEQaiACIAMgARCyAyAEQTBqJAALaAEBfyMAQTBrIgQkACAEQRhqIAFBCGopAgA3AgAgBCADOAIkIAQgAjgCICAEIAA2AgwgBCABKQIANwIQIARBADYCKCAEQQAoApzcECIBNgIsIAAgBEEQaiACIAMgARCyAyAEQTBqJAALaAEBfyMAQTBrIgQkACAEQRhqIAFBCGopAgA3AgAgBCADOAIkIAQgAjgCICAEIAA2AgwgBCABKQIANwIQIARBADYCKCAEQQAoAqDcECIBNgIsIAAgBEEQaiACIAMgARCyAyAEQTBqJAALaAEBfyMAQTBrIgQkACAEQRhqIAFBCGopAgA3AgAgBCADOAIkIAQgAjgCICAEIAA2AgwgBCABKQIANwIQIARBADYCKCAEQQAoAqTcECIBNgIsIAAg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p5IQQRoQEQALQYySEEEaEBEACxYAIAAgASACIAMgBEEAKALA3RAQ7AMLFgAgACABIAIgAyAEQQAoAsTdEBDsAwsWACAAIAEgAiADIARBACgCyN0QEOwDCxYAIAAgASACIAMgBEEAKALM3RAQ7AMLFgAgACABIAIgAyAEQQAoAtDdEBDsAwsWACAAIAEgAiADIARBACgC1N0QEOwDCxYAIAAgASACIAMgBEEAKALY3RAQ7AMLFgAgACABIAIgAyAEQQAoAtzdEBDsAwsWACAAIAEgAiADIARBACgC4N0QEOwDCxYAIAAgASACIAMgBEEAKALk3RAQ7AMLFgAgACABIAIgAyAEQQAoAujdEBDsAwsWACAAIAEgAiADIARBACgC7N0QEOwDCxYAIAAgASACIAMgBEEAKALw3RAQ7AMLFgAgACABIAIgAyAEQQAoAvTdEBDsAwsWACAAIAEgAiADIARBACgC+N0QEOwDCxQAIAAgASACIANBACgC/N0QEP0DC2gBAX8jAEEQayIFJAAgBSADNgIMIAUgAjYCCCAFIAE2AgQgBSAANgIAAkACQAJAAkAgBCAFQRAQsQIOBAADAQIACyAFQRBqJAAPC0HCkhBBIhARAAtBp5IQQRoQEQALQYySEEEaEBEACxQAIAAgASACIANBACgCgN4QEP0DCxQAIAAgASACIANBACgChN4QEP0DCxQAIAAgASACIANBACgCiN4QEP0DCxQAIAAgASACIANBACgCjN4QEP0DCxQAIAAgASACIANBACgCkN4QEP0DCxQAIAAgASACIANBACgClN4QEP0DCxQAIAAgASACIANBACgCmN4QEP0DCxQAIAAgASACIANBACgCnN4QEP0DCxQAIAAgASACIANBACgCoN4QEP0DCxQAIAAgASACIANBACgCpN4QEP0DCxQAIAAgASACIANBACgCqN4QEP0DCxQAIAAgASACIANBACgCrN4QEP0DCxQAIAAgASACIANBACgCsN4QEP0DCxQAIAAgASACIANBACgCtN4QEP0DCxQAIAAgASACIANBACgCuN4QEP0DC2gBAX8jAEEwayIEJAAgBEEgaiADQQhqKQIANwIAIAQgAjYCFCAEIAE2AhAgBCAANgIMIAQgAykCADcCGCAEQQA2AiggBEEAKAK83hAiAzYCLCAAIAEgAiAEQRhqIAMQjgQgBEEwaiQAC34BAX8jAEEgayIFJAAgBUEYaiADQQhqKQIANwIAIAUgAjYCDCAFIAE2AgggBSAANgIEIAUgAykCADcCEAJAAkACQAJAIAQgBUEEakEcELECDgQAAwECAAsgBUEgaiQADwtBwpIQQSIQEQALQaeSEEEaEBEAC0GMkhBBGhARAAtoAQF/IwBBMGsiBCQAIARBIGogA0EIaikCADcCACAEIAI2AhQgBCABNgIQIAQgADYCDCAEIAMpAgA3AhggBEEANgIoIARBACgCwN4QIgM2AiwgACABIAIgBEEYaiADEI4EIARBMGokAAtoAQF/IwBBMGsiBCQAIARBIGogA0EIaikCADcCACAEIAI2AhQgBCABNgIQIAQgADYCDCAEIAMpAgA3AhggBEEANgIoIARBACgCxN4QIgM2AiwgACABIAIgBEEYaiADEI4EIARBMGokAAtoAQF/IwBBMGsiBCQAIARBIGogA0EIaikCADcCACAEIAI2AhQgBCABNgIQIAQgADYCDCAEIAMpAgA3AhggBEEANgIoIARBACgCyN4QIgM2AiwgACABIAIgBEEYaiADEI4EIARBMGokAAtoAQF/IwBBMGsiBCQAIARBIGogA0EIaikCADcCACAEIAI2AhQgBCABNgIQIAQgADYCDCAEIAMpAgA3AhggBEEANgIoIARBACgCzN4QIgM2AiwgACABIAIgBEEYaiADEI4EIARBMGokAAtoAQF/IwBBMGsiBCQAIARBIGogA0EIaikCADcCACAEIAI2AhQgBCABNgIQIAQgADYCDCAEIAMpAgA3AhggBEEANgIoIARBACgC0N4QIgM2AiwgACABIAIgBEEYaiADEI4EIARBMGokAAtoAQF/IwBBMGsiBCQAIARBIGogA0EIaikCADcCACAEIAI2AhQgBCABNgIQIAQgADYCDCAEIAMpAgA3AhggBEEANgIoIARBACgC1N4QIgM2AiwgACABIAIgBEEYaiADEI4EIARBMGokAAtoAQF/IwBBMGsiBCQAIARBIGogA0EIaikCADcCACAEIAI2AhQgBCABNgIQIAQgADYCDCAEIAMpAgA3AhggBEEANgIoIARBACgC2N4QIgM2AiwgACABIAIgBEEYaiADEI4EIARBMGokAAtoAQF/IwBBMGsiBCQAIARBIGogA0EIaikCADcCACAEIAI2AhQgBCABNgIQIAQgADYCDCAEIAMpAgA3AhggBEEANgIoIARBACgC3N4QIgM2AiwgACABIAIgBEEYaiADEI4EIARBMGokAAtoAQF/IwBBMGsiBCQAIARBIGogA0EIaikCADcCACAEIAI2AhQgBCABNgIQIAQgADYCDCAEIAMpAgA3AhggBEEANgIoIARBACgC4N4QIgM2AiwgACABIAIgBEEYaiADEI4EIARBMGokAAtoAQF/IwBBMGsiBCQAIARBIGogA0EIaikCADcCACAEIAI2AhQgBCABNgIQIAQgADYCDCAEIAMpAgA3AhggBEEANgIoIARBACgC5N4QIgM2AiwgACABIAIgBEEYaiADEI4EIARBMGokAAtoAQF/IwBBMGsiBCQAIARBIGogA0EIaikCADcCACAEIAI2AhQgBCABNgIQIAQgADYCDCAEIAMpAgA3AhggBEEANgIoIARBACgC6N4QIgM2AiwgACABIAIgBEEYaiADEI4EIARBMGokAAtoAQF/IwBBMGsiBCQAIARBIGogA0EIaikCADcCACAEIAI2AhQgBCABNgIQIAQgADYCDCAEIAMpAgA3AhggBEEANgIoIARBACgC7N4QIgM2AiwgACABIAIgBEEYaiADEI4EIARBMGokAAtoAQF/IwBBMGsiBCQAIARBIGogA0EIaikCADcCACAEIAI2AhQgBCABNgIQIAQgADYCDCAEIAMpAgA3AhggBEEANgIoIARBACgC8N4QIgM2AiwgACABIAIgBEEYaiADEI4EIARBMGokAAtoAQF/IwBBMGsiBCQAIARBIGogA0EIaikCADcCACAEIAI2AhQgBCABNgIQIAQgADYCDCAEIAMpAgA3AhggBEEANgIoIARBACgC9N4QIgM2AiwgACABIAIgBEEYaiADEI4EIARBMGokAAtoAQF/IwBBMGsiBCQAIARBIGogA0EIaikCADcCACAEIAI2AhQgBCABNgIQIAQgADYCDCAEIAMpAgA3AhggBEEANgIoIARBACgC+N4QIgM2AiwgACABIAIgBEEYaiADEI4EIARBMGokAAsYACAAIAEgAiADIAQgBUEAKAL83hAQnwQLeQEBfyMAQSBrIgckACAHIAU4AhwgByAEOAIYIAcgAzYCFCAHIAI2AhAgByABNgIMIAcgADYCCAJAAkACQAJAIAYgB0EIakEYELECDgQAAwECAAsgB0EgaiQADwtBwpIQQSIQEQALQaeSEEEaEBEAC0GMkhBBGhARAAsYACAAIAEgAiADIAQgBUEAKAKA3xAQnwQLGAAgACABIAIgAyAEIAVBACgChN8QEJ8ECxgAIAAgASACIAMgBCAFQQAoAojfEBCfBAsYACAAIAEgAiADIAQgBUEAKAKM3xAQnwQLGAAgACABIAIgAyAEIAVBACgCkN8QEJ8ECxgAIAAgASACIAMgBCAFQQAoApTfEBCfBAsYACAAIAEgAiADIAQgBUEAKAKY3xAQnwQLGAAgACABIAIgAyAEIAVBACgCnN8QEJ8ECxgAIAAgASACIAMgBCAFQQAoAqDfEBCfBAsYACAAIAEgAiADIAQgBUEAKAKk3xAQnwQLGAAgACABIAIgAyAEIAVBACgCqN8QEJ8ECxgAIAAgASACIAMgBCAFQQAoAqzfEBCfBAsYACAAIAEgAiADIAQgBUEAKAKw3xAQnwQLGAAgACABIAIgAyAEIAVBACgCtN8QEJ8ECxgAIAAgASACIAMgBCAFQQAoArjfEBCfBAtgAQJ/IwBBkANrIgQkACAEQRBqIgUgAkHwAvwKAAAgBCADNgKAAyAEIAE2AgQgBCAANgIAIARBADYChAMgBEEAKAK83xAiAjYCiAMgACABIAUgAyACELAEIARBkANqJAALcgEBfyMAQYADayIFJAAgBSACQfAC/AoAACAFIAM2AvgCIAUgATYC9AIgBSAANgLwAgJAAkACQAJAIAQgBUGAAxCxAg4EAAMBAgALIAVBgANqJAAPC0HCkhBBIhARAAtBp5IQQRoQEQALQYySEEEaEBEAC2ABAn8jAEGQA2siBCQAIARBEGoiBSACQfAC/AoAACAEIAM2AoADIAQgATYCBCAEIAA2AgAgBEEANgKEAyAEQQAoAsDfECICNgKIAyAAIAEgBSADIAIQsAQgBEGQA2okAAtgAQJ/IwBBkANrIgQkACAEQRBqIgUgAkHwAvwKAAAgBCADNgKAAyAEIAE2AgQgBCAANgIAIARBADYChAMgBEEAKALE3xAiAjYCiAMgACABIAUgAyACELAEIARBkANqJAALYAECfyMAQZADayIEJAAgBEEQaiIFIAJB8AL8CgAAIAQgAzYCgAMgBCABNgIEIAQgADYCACAEQQA2AoQDIARBACgCyN8QIgI2AogDIAAgASAFIAMgAhCwBCAEQZADaiQAC2ABAn8jAEGQA2siBCQAIARBEGoiBSACQfAC/AoAACAEIAM2AoADIAQgATYCBCAEIAA2AgAgBEEANgKEAyAEQQAoAszfECICNgKIAyAAIAEgBSADIAIQsAQgBEGQA2okAAtgAQJ/IwBBkANrIgQkACAEQRBqIgUgAkHwAvwKAAAgBCADNgKAAyAEIAE2AgQgBCAANgIAIARBADYChAMgBEEAKALQ3xAiAjYCiAMgACABIAUgAyACELAEIARBkANqJAALYAECfyMAQZADayIEJAAgBEEQaiIFIAJB8AL8CgAAIAQgAzYCgAMgBCABNgIEIAQgADYCACAEQQA2AoQDIARBACgC1N8QIgI2AogDIAAgASAFIAMgAhCwBCAEQZADaiQAC2ABAn8jAEGQA2siBCQAIARBEGoiBSACQfAC/AoAACAEIAM2AoADIAQgATYCBCAEIAA2AgAgBEEANgKEAyAEQQAoAtjfECICNgKIAyAAIAEgBSADIAIQsAQgBEGQA2okAAtgAQJ/IwBBkANrIgQkACAEQRBqIgUgAkHwAvwKAAAgBCADNgKAAyAEIAE2AgQgBCAANgIAIARBADYChAMgBEEAKALc3xAiAjYCiAMgACABIAUgAyACELAEIARBkANqJAALYAECfyMAQZADayIEJAAgBEEQaiIFIAJB8AL8CgAAIAQgAzYCgAMgBCABNgIEIAQgADYCACAEQQA2AoQDIARBACgC4N8QIgI2AogDIAAgASAFIAMgAhCwBCAEQZADaiQAC2ABAn8jAEGQA2siBCQAIARBEGoiBSACQfAC/AoAACAEIAM2AoADIAQgATYCBCAEIAA2AgAgBEEANgKEAyAEQQAoAuTfECICNgKIAyAAIAEgBSADIAIQsAQgBEGQA2okAAtgAQJ/IwBBkANrIgQkACAEQRBqIgUgAkHwAvwKAAAgBCADNgKAAyAEIAE2AgQgBCAANgIAIARBADYChAMgBEEAKALo3xAiAjYCiAMgACABIAUgAyACELAEIARBkANqJAALYAECfyMAQZADayIEJAAgBEEQaiIFIAJB8AL8CgAAIAQgAzYCgAMgBCABNgIEIAQgADYCACAEQQA2AoQDIARBACgC7N8QIgI2AogDIAAgASAFIAMgAhCwBCAEQZADaiQAC2ABAn8jAEGQA2siBCQAIARBEGoiBSACQfAC/AoAACAEIAM2AoADIAQgATYCBCAEIAA2AgAgBEEANgKEAyAEQQAoAvDfECICNgKIAyAAIAEgBSADIAIQsAQgBEGQA2okAAtgAQJ/IwBBkANrIgQkACAEQRBqIgUgAkHwAvwKAAAgBCADNgKAAyAEIAE2AgQgBCAANgIAIARBADYChAMgBEEAKAL03xAiAjYCiAMgACABIAUgAyACELAEIARBkANqJAALYAECfyMAQZADayIEJAAgBEEQaiIFIAJB8AL8CgAAIAQgAzYCgAMgBCABNgIEIAQgADYCACAEQQA2AoQDIARBACgC+N8QIgI2AogDIAAgASAFIAMgAhCwBCAEQZADaiQACxIAIAAgASACQQAoAvzfEBDKAwsSACAAIAEgAkEAKAKA4BAQygMLEgAgACABIAJBACgChOAQEMoDCxIAIAAgASACQQAoAojgEBDKAwsSACAAIAEgAkEAKAKM4BAQygMLEgAgACABIAJBACgCkOAQEMoDCxIAIAAgASACQQAoApTgEBDKAwsSACAAIAEgAkEAKAKY4BAQygMLEgAgACABIAJBACgCnOAQEMoDCxIAIAAgASACQQAoAqDgEBDKAwsSACAAIAEgAkEAKAKk4BAQygMLEgAgACABIAJBACgCqOAQEMoDCxIAIAAgASACQQAoAqzgEBDKAwsSACAAIAEgAkEAKAKw4BAQygMLEgAgACABIAJBACgCtOAQEMoDCxIAIAAgASACQQAoArjgEBDKAwsQACAAIAFBACgCvOAQENsDCxAAIAAgAUEAKALA4BAQ2wMLEAAgACABQQAoAsTgEBDbAwsQACAAIAFBACgCyOAQENsDCxAAIAAgAUEAKALM4BAQ2wMLEAAgACABQQAoAtDgEBDbAwsQACAAIAFBACgC1OAQENsDCxAAIAAgAUEAKALY4BAQ2wMLEAAgACABQQAoAtzgEBDbAwsQACAAIAFBACgC4OAQENsDCxAAIAAgAUEAKALk4BAQ2wMLEAAgACABQQAoAujgEBDbAwsQACAAIAFBACgC7OAQENsDCxAAIAAgAUEAKALw4BAQ2wMLEAAgACABQQAoAvTgEBDbAwsQACAAIAFBACgC+OAQENsDC1gBAX8jAEEgayIEJAAgBCADNgIUIAQgATYCCCAEIAA2AgQgBCACKQIANwIMIARBADYCGCAEQQAoAvzgECICNgIcIAAgASAEQQxqIAMgAhDhBCAEQSBqJAALbgEBfyMAQSBrIgUkACAFIAM2AhwgBSABNgIQIAUgADYCDCAFIAIpAgA3AhQCQAJAAkACQCAEIAVBDGpBFBCxAg4EAAMBAgALIAVBIGokAA8LQcKSEEEiEBEAC0GnkhBBGhARAAtBjJIQQRoQEQALWAEBfyMAQSBrIgQkACAEIAM2AhQgBCABNgIIIAQgADYCBCAEIAIpAgA3AgwgBEEANgIYIARBACgCgOEQIgI2AhwgACABIARBDGogAyACEOEEIARBIGokAAtYAQF/IwBBIGsiBCQAIAQgAzYCFCAEIAE2AgggBCAANgIEIAQgAikCADcCDCAEQQA2AhggBEEAKAKE4RAiAjYCHCAAIAEgBEEMaiADIAIQ4QQgBEEgaiQAC1gBAX8jAEEgayIEJAAgBCADNgIUIAQgATYCCCAEIAA2AgQgBCACKQIANwIMIARBADYCGCAEQQAoAojhECICNgIcIAAgASAEQQxqIAMgAhDhBCAEQSBqJAALWAEBfyMAQSBrIgQkACAEIAM2AhQgBCABNgIIIAQgADYCBCAEIAIpAgA3AgwgBEEANgIYIARBACgCjOEQIgI2AhwgACABIARBDGogAyACEOEEIARBIGokAAtYAQF/IwBBIGsiBCQAIAQgAzYCFCAEIAE2AgggBCAANgIEIAQgAikCADcCDCAEQQA2AhggBEEAKAKQ4RAiAjYCHCAAIAEgBEEMaiADIAIQ4QQgBEEgaiQAC1gBAX8jAEEgayIEJAAgBCADNgIUIAQgATYCCCAEIAA2AgQgBCACKQIANwIMIARBADYCGCAEQQAoApThECICNgIcIAAgASAEQQxqIAMgAhDhBCAEQSBqJAALWAEBfyMAQSBrIgQkACAEIAM2AhQgBCABNgIIIAQgADYCBCAEIAIpAgA3AgwgBEEANgIYIARBACgCmOEQIgI2AhwgACABIARBDGogAyACEOEEIARBIGokAAtYAQF/IwBBIGsiBCQAIAQgAzYCFCAEIAE2AgggBCAANgIEIAQgAikCADcCDCAEQQA2AhggBEEAKAKc4RAiAjYCHCAAIAEgBEEMaiADIAIQ4QQgBEEgaiQAC1gBAX8jAEEgayIEJAAgBCADNgIUIAQgATYCCCAEIAA2AgQgBCACKQIANwIMIARBADYCGCAEQQAoAqDhECICNgIcIAAgASAEQQxqIAMgAhDhBCAEQSBqJAALWAEBfyMAQSBrIgQkACAEIAM2AhQgBCABNgIIIAQgADYCBCAEIAIpAgA3AgwgBEEANgIYIARBACgCpOEQIgI2AhwgACABIARBDGogAyACEOEEIARBIGokAAtYAQF/IwBBIGsiBCQAIAQgAzYCFCAEIAE2AgggBCAANgIEIAQgAikCADcCDCAEQQA2AhggBEEAKAKo4RAiAjYCHCAAIAEgBEEMaiADIAIQ4QQgBEEgaiQAC1gBAX8jAEEgayIEJAAgBCADNgIUIAQgATYCCCAEIAA2AgQgBCACKQIANwIMIARBADYCGCAEQQAoAqzhECICNgIcIAAgASAEQQxqIAMgAhDhBCAEQSBqJAALWAEBfyMAQSBrIgQkACAEIAM2AhQgBCABNgIIIAQgADYCBCAEIAIpAgA3AgwgBEEANgIYIARBACgCsOEQIgI2AhwgACABIARBDGogAyACEOEEIARBIGokAAtYAQF/IwBBIGsiBCQAIAQgAzYCFCAEIAE2AgggBCAANgIEIAQgAikCADcCDCAEQQA2AhggBEEAKAK04RAiAjYCHCAAIAEgBEEMaiADIAIQ4QQgBEEgaiQAC1gBAX8jAEEgayIEJAAgBCADNgIUIAQgATYCCCAEIAA2AgQgBCACKQIANwIMIARBADYCGCAEQQAoArjhECICNgIcIAAgASAEQQxqIAMgAhDhBCAEQSBqJAALoAEBAX8jAEHAAGsiAiQAIAJBGGogAUEYaikCADcDACACQRBqIAFBEGopAgA3AwAgAkEIaiABQQhqKQIANwMAIAJBKGogAUEoaikCADcDACACQTBqIAFBMGopAgA3AwAgAkE4aiABQThqKQIANwMAIAIgASkCADcDACACIAEpAiA3AyAgASACIAJBIGogABEJAEEBcToAQCACQcAAaiQAQQALSgECfyMAQZABayICJAAgAiABQcgA/AoAACACQcgAaiIDIAFByABqQcgA/AoAACABIAIgAyAAEQkAQQFxOgCQASACQZABaiQAQQALSgECfyMAQeABayICJAAgAiABQfAA/AoAACACQfAAaiIDIAFB8ABqQfAA/AoAACABIAIg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akF8aiECDAELQgFBICADQYOABGpBEHZBf2pna61C//8Dg4anIgJoQQJ0QdDiEGohAyABIAJBEHRqQXxqIQILIAIgAygCADYCACADIAE2AgAgBUEQaiQAC1YBAX4CQAJAIANBP0wNACABIANBP3GthiECQgAhAQwBCyADRQ0AIAIgA0E/ca0iBIYgAUEAIANrQT9xrYiEIQIgASAEhiEBCyAAIAE3AwAgACACNwMIC1YBAX4CQAJAIANBP0wNACACIANBP3GtiCEBQgAhAgwBCyADRQ0AIAJBACADa0E/ca2GIAEgA0E/ca0iBIiEIQEgAiAEiCECCyAAIAE3AwAgACACNwMIC3UBAX4gACAEIAF+IAIgA358IANCIIgiAiABQiCIIgR+fCADQv////8PgyIDIAFC/////w+DIgF+IgVCIIggAyAEfnwiA0IgiHwgA0L/////D4MgAiABfnwiAUIgiHw3AwggACABQiCGIAVC/////w+DhDcDAAvyAgICfwN+IwBBIGsiBiQAAkACQAJAAkAgAyABWCAEIAJYIAQgAlEbDQAgBUUNASAFIAE3AwAgBSACNwMIDAELAkAgBFANACAGIAMgBCAEeacgAnmnayIHQf8AcRCNBSAHQQFqQf8AcSEHIAZBCGopAwAhBEIAIQggBikDACEDAkADQCAHRQ0BIAIgBCACQn+FfCADIAFCf4V8IANUrXwiCUI/hyIKIASDfSABIAogA4MiClStfSECIANCAYggBEI/hoQhAyAIQgGGIAlCP4iEIQggASAKfSEBIAdBf2ohByAEQgGIIQQMAAsLIAVFDQIgBSABNwMAIAUgAjcDCAwCC0IAIQQgBkIANwMYAkAgAiADVA0AIAIgAiADgCIEIAN+fSECCyACIAEgAyAGQRBqEJEFIQggBUUNAiAFIAYpAxA3AwAgBSAGQRhqKQMANwMIDAILQgAhCAtCACEECyAAIAg3AwAgACAENwMIIAZBIGokAAuWAgEGfgJAIAJ5IgRCP4MiBUIAUQ0AIAAgBYYgAUIAIAR9iIQhACABIAWGIQEgAiAFhiECCyAAIAAgAkIgiCIGgCIEIAZ+fSEHIAFC/////w+DIQggAUIgiCEBIAJC/////w+DIQkCQANAAkAgBEL/////D1YNACAEIAl+IAdCIIYgAYRYDQILIARCf3whBCAHIAZ8IgdC/////w9YDQALCyAAQiCGIAGEIAQgAn59IgAgACAGgCIHIAZ+fSEBAkADQAJAIAdC/////w9WDQAgByAJfiABQiCGIAiEWA0CCyAHQn98IQcgASAGfCIBQoCAgIAQVA0ACwsgAyAAQiCGIAiEIAcgAn59IAWINwMAIAcgBEIghnwLPgEBfyMAQRBrIgUkACAFIAEgAiADIARBABCQBSAFKQMAIQQgACAFQQhqKQMANwMIIAAgBDcDACAFQRBqJAALowIBBH8CQAJAIAAgAFwNACAAvCICQf////8HcUGAgID8B08NACACQYCAgIB4cSEDQQggAkEBdCIEZ2sgBEEYdiAEQYCAgAhJGyEEAkAgAUEASA0AAkBB/gEgBGsgAU4NACADQYCAgPwHcr4PCwJAIAQgAWoiBUEASg0AIAIgAXQgA3K+DwsCQCAEQQBKDQAgAkEBIARrdEH///8DcSAFQRd0ciADcr4PCyABQRd0IAJqvg8LQQAgBGsgAUgNAQJAQWkgBGsgAUwNACADvg8LIARBAEpBF3QgAkH///8DcXJBACABayIFQQEgBCABamsiASAFIAFIG0F/aiIBdkEBakEBdiACaCABQR9xRkF/c3EgA3K+IQALIAAPCyABQRd0IAJqvgvJAQMBfwF+An9BACECAkACQAJAIAG9IgNCNIinIgRB/w9xIgVFDQAgBUH/D0cNAQwCCyADQv////////8Hg1ANASADQoCAgICAgICAgH+DQgAgAyADQgyGeaciAkEBaq2GQv////////8HgyACQT9xQTJLG4RCgICAgICAgPA/hCEDQYJ4IAJrIQIMAQsgA0L/////////h4B/g0KAgICAgICA8D+EIQMgBEH/D3FBgnhqIQILIABBADYCDCAAIAI2AgggACADNwMAC9QCAgN+An8CQAJAIAAgAGINACAAvSICQv///////////wCDQoCAgICAgID4/wBaDQAgAkKAgICAgICAgIB/gyEDQQsgAkIBhiIEeadrIARCNYinIARCgICAgICAgBBUGyEFAkAgAUEASA0AAkBB/g8gBWsgAU4NACADQoCAgICAgID4/wCEvw8LAkAgBSABaiIGQQBKDQAgAiABQT9xrYYgA4S/DwsCQCAFQQBKDQAgAkEBIAVrrYZC/////////weDIAatQjSGhCADhL8PCyABrUI0hiACfL8PC0EAIAFrIQZBACAFayABSA0BAkBBTCAFayABTA0AIAO/DwsgBUEASq1CNIYgAkL/////////B4OEIAZBASAFIAFqayIBIAYgAUgbQX9qQT9xrSIEiEIBfEIBiCACeiAEUa1Cf4WDIAOEvyEACyAADwsgAiAGrUI0hn2/CycAAkAgACAAXA0AAkAgASABWw0AIAAPCyABIAAgACABXRshAQsgAQtoAgF+AX8CQAJAIAC9Qv///////////wCDIgFCNIinIgJB/w9GDQAgAg0BAkAgAVBFDQBBgICAgHgPC0GNeCABeadrDwtBgICAgHhB/////wcgAUKAgICAgICA+P8AVhsPCyACQYF4agueAwMDfwF9AXwjAEEQayIBJAACQAJAIAC8IgJB/////wdxIgNB2p+k+gNLDQBDAACAPyEEIANBgICAzANJDQEgALsQmQUhBAwBCwJAAkACQAJAIANB0qftgwRJDQAgA0HW44iHBE8NAiADQd/bv4UETQ0BRBgtRFT7IRnARBgtRFT7IRlAIAJBf0obIAC7oBCZBSEEDAQLIAC7IQUgA0Hjl9uABEsNAgJAIAJBf0oNACAFRBgtRFT7Ifk/oBCaBSEEDAQLRBgtRFT7Ifk/IAWhEJoFIQQMAwsCQCACQX9KDQBE0iEzf3zZEsAgALuhEJoFIQQMAwsgALtE0iEzf3zZEsCgEJoFIQQMAgsCQCADQf////sHSw0AIAAgAUEIahCbBSEDIAErAwghBQJAAkACQAJAIANBA3EOBAABAgMACyAFEJkFIQQMBQsgBZoQmgUhBAwECyAFEJkFjCEEDAMLIAUQmgUhBAwCCyAAIACTIQQMAQtEGC1EVPshCcBEGC1EVPshCUAgAkF/ShsgBaAQmQWMIQQLIAFBEGokACAEC08BAXwgACAAoiIARIFeDP3//9+/okQAAAAAAADwP6AgACAAoiIBREI6BeFTVaU/oqAgACABoiAARGlQ7uBCk/k+okQnHg/oh8BWv6CioLYLSwECfCAAIACiIgEgAKIiAiABIAGioiABRKdGO4yHzcY+okR058ri+QAqv6CiIAIgAUSy+26JEBGBP6JEd6zLVFVVxb+goiAAoKC2C4IDAwN/A3wBfyMAQRBrIgIkAAJAAkAgALwiA0H/////B3EiBEHan6TuBEsNACABIAC7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QCAAvUL///////////8Ag0L/////////9/8AVg0AIAG9Qv///////////wCDQoCAgICAgID4/wBUDQELIAAgAaIgAqAhAgwBCyACvUL///////////8Ag0L/////////9/8AVg0AAkACQCAARAAAAAAAAAAAYQ0AIAFEAAAAAAAAAABiDQELIAAgAaIgAqAhAgwBCwJAIAJEAAAAAAAAAABiDQAgACABoiECDAELIAMgABCUBSADKwMAIQAgAygCCCEEIANBEGogARCUBSADKwMQIQEgAygCGCEFIANBIGogAhCUBSADKwMgIQICQAJAIAUgBGoiBCADKAIoayIFQesASA0AIAK9QoCAgICAgICAgH+DQoCAgICAgIAIhL8hBgwBCyACQQAgBWsQlQUhBgsgACAARAAAAAIAAKBBoiICIAAgAqGgIgKhIgcgASABRAAAAAIAAKBBoiIAIAEgAKGgIgChIgGiIAcgAKIgAiABoqAiASACIACiIgIgAiABoCIAoaCgIQECQCAAIAagIgJEAAAAAAAAAABiDQAgAiABIAQQlQWgIQIMAQsCQCABIAEgBiACIAChIgehIAAgAiAHoaGgIgagIgAgBqEiB6EgBiAAIAehoaAiAUQAAAAAAAAAAGENACAAvSIIp0EBcQ0AIAhCAYQgAb0gCIVCPoh9vyEACyACIACgIQECQCACEJcFIARqQYJ4Tg0AIAAgASACoSIGoSACIAYgAaGgoCICRAAAAAAAAAAAYQ0AIAG9IghCAYNQIAhCNIinQf8PcUEAIARrR0YNACAIIAK9IAiFQj6IQgKDfUIBfL8hAQsgASAEEJUFIQILIANBMGokACACCycAAkAgACAAXA0AAkAgASABWw0AIAAPCyAAIAEgACABXRshAQsgAQuCAgICfwJ9AkACQAJAIAC8IgFBgICABE4NAEMAAID/QwAAwH8gAEMAAAAAWyICGyEDIAINAiABQQBIDQIgAEMAAABMlLwhAUHofiECDAELIAAhAyABQf////sHSw0BQYF/IQJDAAAAACEDIAFBgICA/ANGDQELIAIgAUGN9qsCaiIBQRd2arIiA0OAcTE/lCABQf///wNxQfOJ1PkDar5DAACAv5IiACADQ9H3FzeUIAAgAEMAAABAkpUiAyAAIABDAAAAP5SUIgQgAyADlCIAIAAgAJQiAEPu6ZE+lEOqqio/kpQgACAAQyaeeD6UQxPOzD6SlJKSlJIgBJOSkiEDCyADC5kDAgN/AXwjAEEQayIBJAACQAJAIAC8IgJB/////wdxIgNB2p+k+gNLDQAgA0GAgIDMA0kNASAAuxCaBSEADAELAkACQAJAAkAgA0HSp+2DBEkNACADQdbjiIcETw0DIAC7IQQgA0Hg27+FBE8NASACQX9KDQIgBETSITN/fNkSQKAQmQUhAAwECyAAuyEEAkAgA0Hkl9uABEkNAEQYLURU+yEJwEQYLURU+yEJQCACQX9KGyAEoJoQmgUhAAwECwJAIAJBf0oNACAERBgtRFT7Ifk/oBCZBYwhAAwECyAERBgtRFT7Ifm/oBCZBSEADAMLRBgtRFT7IRnARBgtRFT7IRlAIAJBf0obIASgEJoFIQAMAgsgBETSITN/fNkSwKAQmQWMIQAMAQsCQCADQf////sHSw0AIAAgAUEIahCbBSEDIAErAwghBAJAAkACQAJAIANBA3EOBAABAgMACyAEEJoFIQAMBAsgBBCZBSEADAMLIASaEJoFIQAMAgsgBBCZBYwhAAwBCyAAIACTIQALIAFBEGokACAACwvcVQIAQYCAEAvQVHcAAAB4AAAAeQAAAHoAAAB7IC4uLiB9AHsAb3BhY2l0eQBPdXRPZk1lbW9yeQBtYXhfeQBtaW5feQBzaGFwZXMuYm91bmRpbmdfYm94LkJvdW5kaW5nQm94AGltYWdlcy5QaWNrVmVydGV4AGluZGV4AG1heF94AG1pbl94AHJlbmRlckRyYXcAdgB1AHRleHQAVGV4dABkaXN0X3N0YXJ0AHNlbGVjdGlvbl9zdGFydABzbG90AHNldFNuYXBzaG90AHNuYXBzaG90cy5Qcm9qZWN0U25hcHNob3QAc3RvcHNfY291bnQAU2VsZWN0ZWQgc2hhcGUgYXNzZXQgc2hvdWxkIGJlIHByZXNlbnQgYXQgdGhpcyBwb2ludAB0b1BvaW50AHR5cGVzLlBvaW50AGNvbnRlbnQAdXBkYXRlVGV4dENvbnRlbnQAaW1wb3J0VWlFbGVtZW50AGluZGV4LlBsYWNlbWVudABzZGYuc2RmLlVuaWZvcm1MaW5lYXJHcmFkaWVudABzZGYuZmlsbC5TZXJpYWxpemVkTGluZWFyR3JhZGllbnQAc2RmLmZpbGwuTGluZWFyR3JhZGllbnQAc2RmLnNkZi5Vbmlmb3JtUmFkaWFsR3JhZGllbnQAc2RmLmZpbGwuU2VyaWFsaXplZFJhZGlhbEdyYWRpZW50AHNkZi5maWxsLlJhZGlhbEdyYWRpZW50AHRleHRzLnRleHRzLkNvbXB1dGVUZXh0UmVzdWx0AGhlaWdodAByZW1vdmVBc3NldABvZmZzZXQAYml0T2Zmc2V0AGdlbmVyYXRlTmV3U25hcHNob3QgY2FsbGVkIHdpdGggd2l0aF9zbmFwc2hvdCA9PSBmYWxzZSBhbmQgY29tbWl0ID09IGZhbHNlLCBzbyB0aGlzIGZ1bmN0aW9uIGhhcyBOTyBlZmZlY3QAYXNzZXRfcHJvcHMuU2VyaWFsaXplZFNkZkVmZmVjdABzZGYuc2RmLkVmZmVjdAByYWRpdXMAcG9pbnRzAGFzc2V0cwBzZGZfZWZmZWN0cwB0b2dnbGVTaGFyZWRUZXh0RWZmZWN0cwBzdG9wcwBwcm9wcwBzZXRTZWxlY3RlZEFzc2V0UHJvcHMAYXNzZXRfcHJvcHMuU2VyaWFsaXplZFByb3BzAGNvbm5lY3RXZWJHcHVQcm9ncmFtcwBpbmRleC5XZWJHcHVQcm9ncmFtcwBGYWlsZWQgdG8gcmV0cmlldmUgc3RvcmVkIGNoYXJhY3RlciBkZXRhaWxzAHRleHRzLmZvbnRzLlNlcmlhbGl6ZWRDaGFyRGV0YWlscwBjb25uZWN0Q2FjaGVDYWxsYmFja3MAcGF0aHMAc2V0UGF0aHMAZmxhZ3MAY29tcHV0ZVNkZnMAY29tbWl0Q2hhbmdlcwBib3VuZHMAc2V0U2VsZWN0ZWRBc3NldEJvdW5kcwBkcmF3X2JsdXIAZ2F1c3NpYW5CbHVyAGNvbG9yAGNlbnRlcgBmaWx0ZXIAYXNzZXRfcHJvcHMuRmlsdGVyAGxpbmVhcgBzZGYuc2RmLlVuaWZvcm1HcmFkaWVudFN0b3AAc2RmLmZpbGwuR3JhZGllbnRTdG9wAG9uUG9pbnRlclVwAHJhZGl1c19yYXRpbwBhbmdsZVRvAG9uUG9pbnRlckRvd24Ac2V0Q2FyZXRQb3NpdGlvbgBkZXN0aW5hdGlvbgBhbGlnbgBuYW4Ac2RmLnNkZi5EcmF3VW5pZm9ybQBzaGFwZXMuc2hhcGVzLlBpY2tVbmlmb3JtAHNldFRvb2wAdHlwZXMuVG9vbABmaWxsAHNkZi5maWxsLlNlcmlhbGl6ZWRGaWxsAHNkZi5maWxsLkZpbGwAcmV0dmFsAHJhZGlhbAB0aWNrAG9uUG9pbnRlckRvdWJsZUNsaWNrAHJlbmRlclBpY2sAb25VcGRhdGVQaWNrAFRleHRDYWxsYmFjawBjb25uZWN0T25Bc3NldFNlbGVjdGlvbkNhbGxiYWNrAG9uVXBkYXRlVG9vbENhbGxiYWNrAGNvbm5lY3RPbkFzc2V0VXBkYXRlQ2FsbGJhY2sAbGVuZ3RoAHdpZHRoAGNvbm5lY3RUeXBpbmcAcGFkZGluZwBpbWcAaW5mAFV0ZjhDYW5ub3RFbmNvZGVTdXJyb2dhdGVIYWxmAGRpZmYAY2xlYXJfc2RmAGNvbWJpbmVfc2RmAGdlbmVyYXRlVWlFbGVtZW50c1NkZgBmb250X3NpemUAYml0U2l6ZQBieXRlU2l6ZQBvblBvaW50ZXJNb3ZlAG9uUG9pbnRlckxlYXZlAGRlaW5pdFN0YXRlAGRyYXdfdGV4dHVyZQBwaWNrX3RleHR1cmUAY29ubmVjdENyZWF0ZVNkZlRleHR1cmUAc3RydWN0dXJlAHNpZ25hdHVyZQBjb21wYXJlAHR5cGUAZHJhd19zaGFwZQBwaWNrX3NoYXBlAGNvbXB1dGVfc2hhcGUARHJhd1NoYXBlAEVkaXRTaGFwZQBhZGRTaGFwZQBOb25lAG5hbWUAZHJhd190cmlhbmdsZQBwaWNrX3RyaWFuZ2xlAE1hdHJpeCBub3QgaW52ZXJ0aWJsZQB1cGRhdGVSZW5kZXJTY2FsZQB1cGRhdGVDYWNoZQBDb2RlcG9pbnRUb29MYXJnZQB0cmlhbmdsZXMuRHJhd0luc3RhbmNlAHRyaWFuZ2xlcy5QaWNrSW5zdGFuY2UAZGlzdGFuY2UARm9udCBJRCBub3QgZm91bmQAZGlzdF9lbmQAc2VsZWN0aW9uX2VuZABtaWQAc29saWQAc2RmLnNkZi5Vbmlmb3JtU29saWQAc2RmX3RleHR1cmVfaWQAY2FjaGVfdGV4dHVyZV9pZAB0eXBlcy5Bc3NldFNlcmlhbGl6ZWQAdGV4dHMudGV4dHMuU2VyaWFsaXplZABzaGFwZXMuc2hhcGVz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"),e=new Uint8Array(A.length);for(let t=0;t<A.length;t++)e[t]=A.charCodeAt(t);return await new Promise((A=>setTimeout(A,0))),e.buffer})();wI.loadModule(vI,{memoryInitial:5,tableInitial:467,multithreaded:!1}),wI.linkVariables(!1);const{constructor:kI}=DI,xI=wI.getSpecialExports(),{connectWebGpuPrograms:NI,connectOnAssetUpdateCallback:UI,connectOnAssetSelectionCallback:GI,connectCreateSdfTexture:MI,onUpdateToolCallback:RI,SerializedCharDetails:FI,TextCallback:LI,connectTyping:zI,connectCacheCallbacks:qI,ASSET_ID_MIN:JI,initState:OI,updateRenderScale:KI,addShape:TI,removeAsset:HI,onUpdatePick:YI,updateTextContent:PI,onPointerDown:VI,onPointerUp:_I,onPointerMove:WI,onPointerDoubleClick:XI,onPointerLeave:jI,commitChanges:ZI,computeSdfs:$I,updateCache:AQ,setCaretPosition:eQ,renderDraw:tQ,renderPick:iQ,setSnapshot:nQ,deinitState:rQ,importUiElement:sQ,generateUiElementsSdf:aQ,setTool:oQ,tick:gQ,setSelectedAssetProps:IQ,setSelectedAssetBounds:QQ,toggleSharedTextEffects:CQ}=kI;await xI.init(),i()}catch(A){i(A)}}),1)},191:(A,e,t)=>{A.exports=t.p+"40dc20eab8f7c9f3.ttf"},2804:A=>{A.exports='<svg width="100%" height="100%" viewBox="0 0 417 417" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" xmlns:serif="http://www.serif.com/">\n <path d="M314.628,297.396C332.174,273.76 342.561,244.497 342.561,212.827C342.561,143.329 292.564,85.41 226.6,73.137C216.426,71.244 209.703,61.447 211.596,51.274C213.489,41.1 223.286,34.377 233.459,36.27C316.841,51.784 380.061,124.978 380.061,212.827C380.061,253.008 366.839,290.126 344.51,320.06L391.536,320.06C403.034,320.06 412.369,329.395 412.369,340.893C412.369,352.391 403.034,361.727 391.536,361.727L293.794,361.727C282.288,361.727 272.961,352.399 272.961,340.893L272.961,243.151C272.961,231.653 282.296,222.318 293.794,222.318C305.293,222.318 314.628,231.653 314.628,243.151L314.628,297.396ZM67.746,91.893L23.592,91.893C12.093,91.893 2.758,82.558 2.758,71.059C2.758,59.561 12.093,50.226 23.592,50.226L121.333,50.226C132.839,50.226 142.167,59.554 142.167,71.059L142.167,168.801C142.167,180.299 132.832,189.635 121.333,189.635C109.835,189.635 100.5,180.299 100.5,168.801L100.5,111.903C74.501,137.66 58.384,173.375 58.384,212.827C58.384,282.095 108.051,339.86 173.69,352.393C183.855,354.334 190.531,364.163 188.59,374.327C186.649,384.492 176.821,391.169 166.656,389.228C83.685,373.385 20.884,300.385 20.884,212.827C20.884,166.265 38.638,123.815 67.746,91.893Z"/>\n</svg>\n'},7256:()=>{},1285:(A,e,t)=>{var i=t(1388),n=t(6560),r=(t(4540),t(8e3));(0,n.co)({init(){this.accessorCache=new Map},getAccessor(A,e){const{type:t,bitSize:n,bitOffset:s,byteSize:a}=e,o=[],g=void 0===a&&(7&n||7&s);g&&o.push("Unaligned");let I=i.hQ[t];n>32&&(t===i.Z9.Int||t===i.Z9.Uint)&&(I=n<=64?`Big${I}`:`Jumbo${I}`),o.push(I,`${t===i.Z9.Bool&&a?8*a:n}`),g&&o.push(`@${s}`);const Q=A+o.join("");let C=DataView.prototype[Q];if(C)return C;if(C=this.accessorCache.get(Q),C)return C;for(;o.length>0;){const t=`getAccessor${o.join("")}`;if(C=this[t]?.(A,e))break;o.pop()}if(!C)throw new Error(`No accessor available: ${Q}`);return(0,r.n8)(C,"name",(0,r.vQ)(Q)),this.accessorCache.set(Q,C),C}})},9592:(A,e,t)=>{var i=t(1388);(0,t(6560).co)({getAccessorBool(A,e){const{byteSize:t}=e,n=8*t,r=this.getAccessor(A,{type:i.Z9.Uint,bitSize:n,byteSize:t});if("get"===A)return function(A,e){return!!r.call(this,A,e)};{const A=n<=32?0:0n,e=n<=32?1:1n;return function(t,i,n){r.call(this,t,i?e:A,n)}}}})},5239:(A,e,t)=>{var i=t(1388);(0,t(6560).co)({getAccessorInt(A,e){const{bitSize:t,byteSize:n}=e;if(n){const e=this.getAccessor(A,{type:i.Z9.Uint,bitSize:8*n,byteSize:n}),r=2**(t-1),s=r-1;return"get"===A?function(A,t){const i=e.call(this,A,t);return(i&s)-(i&r)}:function(A,t,i){const n=t<0?r|t&s:t&s;e.call(this,A,n,i)}}}})},2148:(A,e,t)=>{(0,t(6560).co)({getAccessorUint(A,e){const{bitSize:t,byteSize:i}=e;if(i){const n=this.getAccessor(A,{...e,bitSize:8*i}),r=2**t-1;return"get"===A?function(A,e){return n.call(this,A,e)&r}:function(A,e,t){const i=e&r;n.call(this,A,i,t)}}}})},1388:(A,e,t)=>{t.d(e,{AD:()=>s,EK:()=>n,F7:()=>y,M_:()=>g,Nt:()=>Q,Q6:()=>I,Q9:()=>p,UT:()=>C,Z9:()=>E,Zm:()=>B,e2:()=>u,ev:()=>i,hQ:()=>f,pK:()=>h,sU:()=>o,sl:()=>l,tv:()=>c,uE:()=>a,yi:()=>r});const i={Primitive:0,Array:1,Struct:2,Union:3,ErrorUnion:4,ErrorSet:5,Enum:6,Optional:7,Pointer:8,Slice:9,Vector:10,Opaque:11,ArgStruct:12,VariadicStruct:13,Function:14},n=Object.keys(i),r={HasValue:1,HasObject:2,HasPointer:4,HasSlot:8},s={IsSize:16},a={HasSentinel:16,IsString:32,IsTypedArray:64,IsClampedArray:128},o={IsExtern:16,IsPacked:32,IsIterator:64,IsTuple:128,IsAllocator:256,IsPromise:512,IsGenerator:1024,IsAbortSignal:2048,IsOptional:4096,IsReader:8192,IsWriter:16384},g={HasSelector:16,HasTag:32,HasInaccessible:64,IsExtern:128,IsPacked:256,IsIterator:512},I={IsOpenEnded:16,IsIterator:32},Q={HasSelector:16},C={HasLength:16,IsMultiple:32,IsSingle:64,IsConst:128,IsNullable:256},c={HasSentinel:16,IsString:32,IsTypedArray:64,IsClampedArray:128,IsOpaque:256},B={IsGlobal:16},l={IsTypedArray:16,IsClampedArray:32},u={HasOptions:16,IsThrowing:32,IsAsync:64},E={Void:0,Bool:1,Int:2,Uint:3,Float:4,Object:5,Type:6,Literal:7,Null:8,Undefined:9,Unsupported:10},f=Object.keys(E),h={IsRequired:1,IsReadOnly:2,IsPartOfSet:4,IsSelector:8,IsMethod:16,IsSentinel:32,IsBackingInt:64,IsString:128},p={OK:0,Failure:1,Deadlock:2,Disabled:3},y={IsInactive:1,IsImmutable:2,IgnoreUncreated:4,IgnoreInactive:8,IgnoreArguments:16,IgnoreRetval:32}},6560:(A,e,t)=>{t.d(e,{NP:()=>s,co:()=>r});var i=t(8e3);const n={name:"",mixins:[]};function r(A){return n.mixins.includes(A)||n.mixins.push(A),A}function s(){return function(A,e){const t=[],n=function(){for(const A of t)A.call(this)},{prototype:r}=n;(0,i.n8)(n,"name",(0,i.vQ)(A));for(const A of e)for(let[e,n]of Object.entries(A))if("init"===e)t.push(n);else{if("function"==typeof n);else{let A=r[e];if(void 0!==A)if(A?.constructor===Object)n=Object.assign({...A},n);else if(A!==n)throw new Error(`Duplicate property: ${e}`)}(0,i.n8)(r,e,(0,i.vQ)(n))}return n}(n.name,n.mixins)}},4762:(A,e,t)=>{t.d(e,{BC:()=>s,BY:()=>N,FD:()=>_,G9:()=>w,Ho:()=>c,Jc:()=>K,L2:()=>f,O0:()=>a,Pd:()=>k,QB:()=>G,Qm:()=>S,SB:()=>y,UQ:()=>F,Uv:()=>v,V0:()=>P,Vp:()=>L,Y8:()=>h,Z6:()=>B,Zb:()=>I,_L:()=>p,_l:()=>R,a6:()=>V,b$:()=>x,ci:()=>o,ck:()=>q,d_:()=>T,iS:()=>Q,if:()=>u,is:()=>E,it:()=>l,nz:()=>m,qG:()=>b,qx:()=>Y,t7:()=>g,to:()=>C,v2:()=>J,vp:()=>O,x1:()=>M,xH:()=>d,xp:()=>U,zy:()=>D});var i=t(1388),n=t(4540),r=t(8e3);Error;class s extends SyntaxError{constructor(A){super(`Cannot convert ${A} to an Int`)}}class a extends TypeError{constructor(){super("Unsupported")}}class o extends TypeError{constructor(A){const{name:e}=A;super(`An initializer must be provided to the constructor of ${e}, even when the intended value is undefined`)}}class g extends TypeError{constructor(A,e,t=null){const{name:n,type:r,byteSize:s}=A,a=e.byteLength,o=1!==s?"s":"";let g;if(r!==i.ev.Slice||t){g=`${n} has ${r===i.ev.Slice?t.length*s:s} byte${o}, received ${a}`}else g=`${n} has elements that are ${s} byte${o} in length, received ${a}`;super(g)}}class I extends TypeError{constructor(A){const{type:e,byteSize:t,typedArray:n}=A,r=1!==t?"s":"",s=["ArrayBuffer","DataView"].map(X);let a;n&&s.push(X(n.name)),a=e===i.ev.Slice?`Expecting ${Z(s)} that can accommodate items ${t} byte${r} in length`:`Expecting ${Z(s)} that is ${t} byte${r} in length`,super(a)}}class Q extends TypeError{constructor(A,e){const{name:t}=A;let i;i="number"==typeof e||"bigint"==typeof e?`Value given does not correspond to an item of enum ${t}: ${e}`:`Enum item of the type ${t} expected, received ${e}`,super(i)}}class C extends TypeError{constructor(A,e){const{name:t}=A,i=typeof e;let n;"string"===i||"number"===i||_(e)?(_(e)&&(e=`{ error: ${JSON.stringify(e.error)} }`),n=`Error ${i} does not corresponds to any error in error set ${t}: ${e}`):n=`Error of the type ${t} expected, received ${e}`,super(n)}}class c extends TypeError{constructor(A){const{name:e}=A;super(`Error given is not a part of error set ${e}`)}}TypeError;class B extends TypeError{constructor(A){const{name:e}=A;super(`Only one property of ${e} can be given a value`)}}class l extends TypeError{constructor(A,e,t){super(`Accessing property ${e} when ${t} is active`)}}class u extends TypeError{constructor(A,e,t){const{name:i,instance:{members:n}}=A;super(`${i} needs an initializer for one of its union properties: ${n.slice(0,t?-1:void 0).map((A=>A.name)).join(", ")}`)}}class E extends TypeError{constructor(A,e,t){const{name:i}=A,n=[];if(Array.isArray(e))for(const A of e)n.push(X(A));else n.push(X(e));const r=W(t);super(`${i} expects ${Z(n)} as argument, received ${r}`)}}class f extends E{constructor(A,e,t=!1){const{instance:{members:[s]},type:a,constructor:o}=A,g=[],I=(0,r.BF)(s);if(I){let A;switch(s.structure?.type){case i.ev.Enum:A="enum item";break;case i.ev.ErrorSet:A="error";break;default:A=I}g.push(`array of ${A}s`)}else g.push("array of objects");o[n.pM]&&g.push(o[n.pM].name),a===i.ev.Slice&&t&&g.push("length"),super(A,g.join(" or "),e)}}class h extends TypeError{constructor(A,e,t){const{name:i,length:n,instance:{members:[r]}}=A,{structure:{constructor:s}}=r,{length:a,constructor:o}=t,g=e?.length??n,I=1!==g?"s":"";let Q;Q=o===s?"only a single one":o.child===s?`a slice/array that has ${a}`:`${a} initializer${a>1?"s":""}`,super(`${i} has ${g} element${I}, received ${Q}`)}}class p extends TypeError{constructor(A,e){super(A<0?"Length of slice cannot be negative":`Length of slice can be ${e} or less, received ${A}`)}}class y extends TypeError{constructor(A,e){const{name:t}=A;super(`Missing initializers for ${t}: ${e.join(", ")}`)}}class d extends TypeError{constructor(A,e){const{name:t,instance:{members:i}}=A;let n;n=i.find((A=>A.name===e))?`Comptime value cannot be changed: ${e}`:`${t} does not have a property with that name: ${e}`,super(n)}}class m extends Error{constructor(A,e,t=!1){super();const i=i=>{e-=i;const n=1!==(A-=i)?"s":"",r=t?"at least ":"";this.message=`Expecting ${r}${A} argument${n}, received ${e}`,this.stack=H(this.stack,"new Arg(")};i(0),(0,r.n8)(this,n.q6,{value:i,enumerable:!1})}}class b extends Error{constructor(){super("Undefined argument")}}class D extends TypeError{constructor(){super("Non-slice pointers can only be created with the help of the new operator")}}class S extends TypeError{constructor(){super("Casting to function is not allowed")}}class w extends TypeError{constructor(A,e){const{name:t}=A,{constructor:{name:i}}=e;super(`Conversion of ${i} to ${t} requires an explicit cast`)}}TypeError;TypeError;class v extends TypeError{constructor(A,e){super(`Unable to simultaneously align memory to ${e}-byte and ${A}-byte boundary`)}}TypeError;class k extends TypeError{constructor(A,e){const t=W(e);super(`Expected ${X(A)}, received ${t}`)}}class x extends TypeError{constructor(){super("Pointers within an untagged union are not accessible")}}class N extends TypeError{constructor(){super("Null pointer")}}class U extends TypeError{constructor(A){super(`Object has been freed already: ${A.constructor.name}`)}}class G extends TypeError{constructor(A,e){const{name:t}=A;let i;if(null!=e){const A=e instanceof Object&&e.constructor!==Object?`${e.constructor.name} object`:typeof e;i=`${j(A)} ${A}`}else i=e+"";super(`${t} cannot point to ${i}`)}}class M extends TypeError{constructor(){super("Pointers in Zig memory cannot point to garbage-collected object")}}TypeError;class R extends RangeError{constructor(A,e){const{name:t}=A;super(`Index exceeds the size of ${t??"array"}: ${e}`)}}class F extends TypeError{constructor(A){const{name:e}=A;super(`${void 0!==e?`Property ${e}`:"Element"} can only be undefined`)}}class L extends TypeError{constructor(A){const{name:e,structure:{name:t}}=A;super(`Unable to create ${t} as it is not situated on a byte boundary: ${e}`)}}class z extends TypeError{constructor(){super("Unable to modify read-only object")}}class q extends TypeError{constructor(A){const{name:e}=A;super(`${e} cannot point to a read-only object`)}}TypeError;TypeError;TypeError;class J extends TypeError{constructor(){super("Unexpected async generator")}}class O extends Error{constructor(A,e=0){if(A instanceof Error)return super(A.message),A.stack=H(this.stack,e),A;super(A??"Error encountered in Zig code")}}class K extends O{constructor(A){super("Program exited"),this.code=A}}function T(A,e){const t=t=>{e-=t,A.message=`args[${e}]: ${A.message}`,A.stack=H(A.stack,"new Arg(")};return t(0),(0,r.n8)(A,n.q6,{value:t,enumerable:!1}),A}function H(A,e){if("string"==typeof A){const t=A.split("\n"),i=t.findIndex((A=>A.includes(e)));-1!==i&&(t.splice(1,i),A=t.join("\n"))}return A}function Y(A,e,t){return t instanceof RangeError&&!(t instanceof R)&&(t=new R(A,e)),t}function P(){throw new z}function V(A){let e=A.replace(/_/g," ");try{e=e.replace(/(\p{Uppercase}+)(\p{Lowercase}*)/gu,((A,e,t)=>1===e.length?` ${e.toLocaleLowerCase()}${t}`:t?A:` ${e}`)).trimStart()}catch(A){}return e.charAt(0).toLocaleUpperCase()+e.substring(1)}function _(A){return"object"==typeof A&&"string"==typeof A.error&&1===Object.keys(A).length}function W(A){const e=typeof A;let t;return t="object"===e?A?Object.prototype.toString.call(A):"null":e,X(t)}function X(A){return`${j(A)} ${A}`}function j(A){return/^\W*[aeiou]/i.test(A)?"an":"a"}function Z(A,e="or"){const t=` ${e} `;return A.length>2?A.slice(0,-1).join(", ")+t+A[A.length-1]:A.join(t)}},4358:(A,e,t)=>{var i=t(1388),n=t(6560),r=t(4540);(0,n.co)({init(){this.variables=[]},getSpecialExports(){const A=A=>{if(void 0===A)throw new Error("Not a Zig type");return A};return{init:(...A)=>this.initialize?.(...A),abandon:()=>this.abandonModule?.(),connect:A=>this.consoleObject=A,sizeOf:e=>A(e?.[r.SK]),alignOf:e=>A(e?.[r.Ec]),typeOf:e=>s[A(e?.[r.ZE])]}},recreateStructures(A,e){Object.assign(this,e);const t=(A,e)=>{for(const[t,i]of Object.entries(e))A[t]=n(i);return A},i=A=>A.length?A.buffer:new ArrayBuffer(0),n=A=>{const{memory:e,structure:n,actual:s}=A;if(e){if(s)return s;{const{array:s,offset:a,length:o}=e,g=this.obtainView(i(s),a,o),{handle:I,const:Q}=A,C=n?.constructor,c=A.actual=C.call(r.M0,g);return Q&&this.makeReadOnly(c),A.slots&&t(c[r._f],A.slots),I&&this.variables.push({handle:I,object:c}),c}}return n},s=new Map;for(const e of A){for(const A of[e.instance,e.static])if(A.template){const{slots:e,memory:t,handle:n}=A.template,a=A.template={};if(t){const{array:A,offset:e,length:s}=t;a[r.Qy]=this.obtainView(i(A),e,s),n&&this.variables.push({handle:n,object:a})}if(e){const A=a[r._f]={};s.set(A,e)}}this.defineStructure(e)}for(const[A,e]of s)t(A,e);for(const e of A)this.finalizeStructure(e)}});const s=i.EK.map((A=>A.replace(/([a-z])([A-Z])/g,"$1 $2").toLowerCase()))},4828:(A,e,t)=>{var i=t(1388),n=t(6560),r=t(4762),s=t(4540);(0,n.co)({init(){this.jsFunctionThunkMap=new Map,this.jsFunctionCallerMap=new Map,this.jsFunctionControllerMap=new Map,this.jsFunctionIdMap=new WeakMap,this.jsFunctionNextId=1},getFunctionId(A){let e=this.jsFunctionIdMap.get(A);return void 0===e&&(e=this.jsFunctionNextId++,this.jsFunctionIdMap.set(A,e)),e},getFunctionThunk(A,e){const t=this.getFunctionId(A);let i=this.jsFunctionThunkMap.get(t);if(void 0===i){const A=this.getViewAddress(e[s.Qy]),n=this.createJsThunk(A,t);if(!n)throw new Error("Unable to create function thunk");i=this.obtainZigView(n,0),this.jsFunctionThunkMap.set(t,i),this.jsFunctionControllerMap.set(t,e)}return i},createInboundCaller(A,e){const t=this.getFunctionId(A);return this.jsFunctionCallerMap.set(t,((t,n)=>{let a=i.Q9.OK,o=!1;try{const g=e(t);if(s.g9 in g){g[s.g9]("reset");const A=this.startContext();this.updatePointerTargets(A,g,!0),this.updateShadowTargets(A),this.endContext()}const I=function(A){try{if(!(e[s.du]&&A instanceof Error))throw A;g[s.zg](A)}catch(e){a=i.Q9.Failure,console.error(A)}},Q=function(A){try{g[s.zg](A)}catch(A){a=i.Q9.Failure,console.error(A)}};try{const e=A(...g),t=g.hasOwnProperty(s.zg);if("Promise"===e?.[Symbol.toStringTag])if(n||t){const A=e.then(Q,I);n&&A.then((()=>this.finalizeAsyncCall(n,a))),o=!0,a=i.Q9.OK}else a=i.Q9.Deadlock;else if(e?.[Symbol.asyncIterator]){if(!g.hasOwnProperty(s.wg))throw new r.v2;this.pipeContents(e,g),a=i.Q9.OK}else null==e&&t||Q(e)}catch(A){I(A)}}catch(A){console.error(A),a=i.Q9.Failure}return n&&!o&&this.finalizeAsyncCall(n,a),a})),function(...e){return A(...e)}},defineArgIterator(A){const e=this,t=A.filter((({structure:A})=>A.type===i.ev.Struct&&A.flags&i.sU.IsAllocator)).length;return{value(){let n,r=0,a=0,o=0;const g=[];for(const[I,{structure:Q,type:C}]of A.entries())try{let A,c,B=this[I];C===i.Z9.Object&&B?.[s.Qy]?.[s.Dr]&&(B=new B.constructor(B)),Q.type===i.ev.Struct&&(Q.flags&i.sU.IsAllocator?(A=1===t?"allocator":"allocator"+ ++r,c=this[s.Gz]=B):Q.flags&i.sU.IsPromise?(A="callback",1==++a&&(c=e.createPromiseCallback(this,B))):Q.flags&i.sU.IsGenerator?(A="callback",1==++a&&(c=e.createGeneratorCallback(this,B))):Q.flags&i.sU.IsAbortSignal&&(A="signal",1==++o&&(c=e.createInboundSignal(B)))),void 0!==A?void 0!==c&&(n||={},n[A]=c):g.push(B)}catch(A){g.push(A)}return n&&g.push(n),g[Symbol.iterator]()}}},handleJsCall(A,e,t,n=0){const r=this.obtainZigView(e,t,!1),s=this.jsFunctionCallerMap.get(A);return s?s(r,n):i.Q9.Failure},releaseFunction(A){const e=this.jsFunctionThunkMap.get(A),t=this.jsFunctionControllerMap.get(A);if(e&&t){const i=this.getViewAddress(t[s.Qy]),n=this.getViewAddress(e);this.destroyJsThunk(i,n),this.releaseZigView(e),A&&(this.jsFunctionThunkMap.delete(A),this.jsFunctionCallerMap.delete(A),this.jsFunctionControllerMap.delete(A))}},freeFunction(A){this.releaseFunction(this.getFunctionId(A))},exports:{handleJsCall:{argType:"iiii",returnType:"i"},releaseFunction:{argType:"i"}},imports:{createJsThunk:{argType:"ii",returnType:"i"},destroyJsThunk:{argType:"ii",returnType:"i"},finalizeAsyncCall:{argType:"ii"}}})},6973:(A,e,t)=>{var i=t(1388),n=t(6560),r=t(4762),s=t(4540);(0,n.co)({createOutboundCaller(A,e){const t=this,i=function(...n){if(!t.runThunk)return t.initPromise.then((()=>i(...n)));const a=new e(n,this?.[s.Gz]);try{return t.invokeThunk(A,i,a)}catch(A){if(A instanceof r.Jc&&0===A.code)return;throw A}};return i},copyArguments(A,e,t,n,a){let o=0,g=0,I=0;const Q=A[s.Bl];for(const{type:s,structure:C}of t){let t,c,B,l;if(C.type===i.ev.Struct)if(C.flags&i.sU.IsAllocator){t=(1==++I?n?.allocator??n?.allocator1:n?.[`allocator${I}`])??this.createDefaultAllocator(A,C)}else C.flags&i.sU.IsPromise?(c||=this.createPromise(C,A,n?.callback),t=c):C.flags&i.sU.IsGenerator?(B||=this.createGenerator(C,A,n?.callback),t=B):C.flags&i.sU.IsAbortSignal?(l||=this.createSignal(C,n?.signal),t=l):C.flags&i.sU.IsReader?t=this.createReader(e[g++]):C.flags&i.sU.IsWriter&&(t=this.createWriter(e[g++]));if(void 0===t&&(t=e[g++],void 0===t&&s!==i.Z9.Void))throw new r.qG;try{Q[o++].call(A,t,a)}catch(A){throw(0,r.d_)(A,o-1)}}},invokeThunk(A,e,t){const i=this.startContext(),n=t[s.iw],a=this.getViewAddress(A[s.Qy]),o=this.getViewAddress(e[s.Qy]),g=s.vm in t,I=s.g9 in t;I&&this.updatePointerAddresses(i,t);const Q=this.getShadowAddress(i,t,null,!1),C=n?this.getShadowAddress(i,n):0;this.updateShadows(i);const c=()=>{this.updateShadowTargets(i),I&&this.updatePointerTargets(i,t),this.libc&&this.flushStdout?.(),this.flushConsole?.(),this.endContext()};g&&(t[s.vm]=c);if(!(n?this.runVariadicThunk(a,o,Q,C,n.length):this.runThunk(a,o,Q)))throw c(),new r.vp;if(t[s.sF]?.(this.findShadowView(t[s.Qy])),g){let A=null;try{A=t.retval}catch(e){A=new r.vp(e,1)}return null!=A?(e[s.fM]&&A&&(A=A.string),t[s.zg](A)):e[s.fM]&&(t[s.fM]=!0),t[s.eR]??t[s._d]}c();try{const{retval:A}=t;return e[s.fM]&&A?A.string:A}catch(A){throw new r.vp(A,1)}},imports:{runThunk:{argType:"iii",returnType:"b"},runVariadicThunk:{argType:"iiiii",returnType:"b"}}})},2427:(A,e,t)=>{var i=t(1388),n=t(6560),r=t(4540),s=t(8e3);(0,n.co)({init(){const A={type:i.Z9.Int,bitSize:8,byteSize:1},e={type:i.Z9.Int,bitSize:16,byteSize:2},t={type:i.Z9.Int,bitSize:32,byteSize:4},n=this.getAccessor("get",A),r=this.getAccessor("set",A),a=this.getAccessor("get",e),o=this.getAccessor("set",e),g=this.getAccessor("get",t),I=this.getAccessor("set",t);this.copiers={0:s.Ie,1:function(A,e){r.call(A,0,n.call(e,0))},2:function(A,e){o.call(A,0,a.call(e,0,!0),!0)},4:function(A,e){I.call(A,0,g.call(e,0,!0),!0)},8:function(A,e){I.call(A,0,g.call(e,0,!0),!0),I.call(A,4,g.call(e,4,!0),!0)},16:function(A,e){I.call(A,0,g.call(e,0,!0),!0),I.call(A,4,g.call(e,4,!0),!0),I.call(A,8,g.call(e,8,!0),!0),I.call(A,12,g.call(e,12,!0),!0)},any:function(A,e){let t=0,i=A.byteLength;for(;t+4<=i;)I.call(A,t,g.call(e,t,!0),!0),t+=4;for(;t+1<=i;)r.call(A,t,n.call(e,t)),t++}},this.resetters={0:s.Ie,1:function(A,e){r.call(A,e,0)},2:function(A,e){o.call(A,e,0,!0)},4:function(A,e){I.call(A,e,0,!0)},8:function(A,e){I.call(A,e+0,0,!0),I.call(A,e+4,0,!0)},16:function(A,e){I.call(A,e+0,0,!0),I.call(A,e+4,0,!0),I.call(A,e+8,0,!0),I.call(A,e+12,0,!0)},any:function(A,e,t){let i=e;for(;i+4<=t;)I.call(A,i,0,!0),i+=4;for(;i+1<=t;)r.call(A,i,0),i++}}},defineCopier(A,e){const t=this.getCopyFunction(A,e);return{value(A){this[r.zN]?.(),A[r.zN]?.();const e=A[r.Qy],i=this[r.Qy];t(i,e)}}},defineResetter(A,e){const t=this.getResetFunction(e);return{value(){this[r.zN]?.();const i=this[r.Qy];t(i,A,e)}}},getCopyFunction(A,e=!1){return(e?void 0:this.copiers[A])??this.copiers.any},getResetFunction(A){return this.resetters[A]??this.resetters.any},...{defineRetvalCopier({byteSize:A,bitOffset:e}){if(A>0){const t=this,i=e>>3,n=this.getCopyFunction(A);return{value(e){const s=this[r.Qy],{address:a}=e[r.Dr],o=new DataView(t.memory.buffer,a+i,A),g=new DataView(s.buffer,s.byteOffset+i,A);n(g,o)}}}},copyExternBytes(A,e,t){const{memory:i}=this,n=new DataView(i.buffer,e,t);this.getCopyFunction(t)(A,n)}}})},1669:(A,e,t)=>{var i=t(1388),n=t(6560),r=t(4762);(0,n.co)({addIntConversion:A=>function(e,t){const n=A.call(this,e,t),{flags:s,bitSize:a}=t;if("set"===e)return a>32?function(A,e,t){n.call(this,A,BigInt(e),t)}:function(A,e,t){const i=Number(e);if(!isFinite(i))throw new r.BC(e);n.call(this,A,i,t)};{const{flags:A}=t.structure;if(A&i.AD.IsSize&&a>32){const A=BigInt(Number.MAX_SAFE_INTEGER),e=BigInt(Number.MIN_SAFE_INTEGER);return function(t,i){const r=n.call(this,t,i);return e<=r&&r<=A?Number(r):r}}}return n}})},6929:(A,e,t)=>{var i=t(6560),n=t(4762),r=t(4540),s=t(8e3);(0,i.co)({init(){this.isMemoryMapping=!0,this.memoryList=[],this.contextCount=0},startContext(){return++this.contextCount,{shadowList:[]}},endContext(){if(0==--this.contextCount){for(const{shadowDV:A}of this.memoryList)A&&this.freeShadowMemory(A);this.memoryList.splice(0)}},getShadowAddress(A,e,t,i){const a=e[r.Qy];if(t){if(void 0===t.address){const{start:e,end:g,targets:I}=t;let Q,C=0;for(const A of I){const e=A[r.Qy],t=e.byteOffset,i=A.constructor[r.Ec]??e[r.Ec];(void 0===C||i>C)&&(C=i,Q=t)}const c=g-e,B=this.allocateShadowMemory(c+C,1),l=this.getViewAddress(B),u=(0,s.hJ)((0,s.Au)(l,Q-e),C),E=(0,s.Au)(u,e-Q);for(const A of I){const t=A[r.Qy],i=t.byteOffset;if(i!==Q){const a=A.constructor[r.Ec]??t[r.Ec];if((0,s.on)((0,s.Au)(E,i-e),a))throw new n.Uv(a,C)}}const f=B.byteOffset+Number(E-l),h=new DataView(B.buffer,f,c);h[r.Dr]={address:E,len:c,align:1,unalignedAddress:l,type:o.Scratch};const p=new DataView(a.buffer,Number(e),c),y=this.registerMemory(E,c,1,i,p,h);A.shadowList.push(y),t.address=E}return(0,s.Au)(t.address,a.byteOffset-t.start)}{const t=e.constructor[r.Ec]??a[r.Ec],n=a.byteLength,s=this.allocateShadowMemory(n,t),o=this.getViewAddress(s),g=this.registerMemory(o,n,1,i,a,s);return A.shadowList.push(g),o}},updateShadows(A){const e=this.getCopyFunction();for(let{targetDV:t,shadowDV:i}of A.shadowList)i=this.restoreView(i),e(i,t)},updateShadowTargets(A){const e=this.getCopyFunction();for(let{targetDV:t,shadowDV:i,writable:n}of A.shadowList)n&&(i=this.restoreView(i),e(t,i))},registerMemory(A,e,t,i,n,r){const s=a(this.memoryList,A);let o=this.memoryList[s-1];return o?.address===A&&o.len===e?o.writable||=i:(o={address:A,len:e,align:t,writable:i,targetDV:n,shadowDV:r},this.memoryList.splice(s,0,o)),o},unregisterMemory(A,e){const t=a(this.memoryList,A),i=this.memoryList[t-1];if(i?.address===A&&i.len===e)return this.memoryList.splice(t-1,1),i},findMemory(A,e,t,i){let n=t*(i??0);const o=a(this.memoryList,e),g=this.memoryList[o-1];let I;if(g?.address===e&&g.len===n)I=g.targetDV;else if(g?.address<=e&&(0,s.Au)(e,n)<=(0,s.Au)(g.address,g.len)){const A=Number(e-g.address),t=void 0===i,{targetDV:s}=g;t&&(n=s.byteLength-A),I=this.obtainView(s.buffer,s.byteOffset+A,n),t&&(I[r.Ec]=g.align)}if(I){let{targetDV:e,shadowDV:t}=g;if(t&&A&&!A.shadowList.includes(g)){t=this.restoreView(t);this.getCopyFunction()(e,t)}}else I=this.obtainZigView(e,n);return I},findShadowView(A){for(const{shadowDV:e,targetDV:t}of this.memoryList)if(t===A)return e},releaseZigView(A){const e=A[r.Dr],t=e?.address;t&&t!==s.Y$&&(e.address=s.Y$)},getViewAddress(A){const e=A[r.Dr];if(e)return e.address;{const e=this.getBufferAddress(A.buffer);return(0,s.Au)(e,A.byteOffset)}},...{imports:{allocateScratchMemory:{argType:"ii",returnType:"i"},freeScratchMemory:{argType:"iii"}},exports:{getViewAddress:{argType:"v",returnType:"i"}},usizeMaxBuffer:new ArrayBuffer(0),allocateShadowMemory(A,e){const t=A?this.allocateScratchMemory(A,e):0;if(!t&&A)throw new Error("Out of memory");const i=this.obtainZigView(t,A),n=i?.[r.Dr];return n&&(n.align=e),i},freeShadowMemory(A){const{address:e,unalignedAddress:t,len:i,align:n}=A[r.Dr];i&&this.freeScratchMemory(t??e,i,n),this.releaseZigView(A)},obtainZigView(A,e,t=!0){if((0,s.cv)(A)&&(A=e>0?0:s.Fy),!A&&e)return null;let i,{buffer:n}=this.memory;return A===s.Fy&&(n=this.usizeMaxBuffer,A=s.$k,e=0),t?i=this.obtainView(n,A,e):(i=new DataView(n,A,e),i[r.Dr]={address:A,len:e}),i},getTargetAddress(A,e,t,i){const n=e[r.Qy];return n[r.Dr]?this.getViewAddress(n):0===n.byteLength?0:this.getShadowAddress(A,e,t,i)},getBufferAddress:A=>0}});function a(A,e){return(0,s.ZG)(A,e,(A=>A.address))}const o={Normal:0,Scratch:1}},4936:(A,e,t)=>{var i=t(6560),n=t(8e3);(0,i.co)({init(){this.abandoned=!1,this.destructors=[],this.nextValueIndex=1,this.valueMap=new Map,this.valueIndices=new Map,this.options=null,this.executable=null,this.memory=null,this.table=null,this.initialTableLength=0,this.exportedFunctions=null},abandonModule(){if(!this.abandoned){for(const A of this.destructors.reverse())A();this.abandoned=!0}},...{imports:{initialize:{argType:""}},exports:{displayPanic:{argType:"ii"}},async initialize(A){this.setCustomWASI?.(A),await this.initPromise},getObjectIndex(A){if(null!=A){let e=this.valueIndices.get(A);return void 0===e&&(e=this.nextValueIndex++,this.valueIndices.set(A,e),this.valueMap.set(e,A)),e}return 0},fromWebAssembly(A,e){switch(A){case"v":case"s":return this.valueMap.get(e);case"i":return e;case"b":return!!e}},toWebAssembly(A,e){switch(A){case"v":case"s":return this.getObjectIndex(e);case"i":return e;case"b":return e?1:0}},exportFunction(A,e="",t="",i){return A?(...i)=>{i=i.map(((A,t)=>this.fromWebAssembly(e.charAt(t),A)));const n=A.apply(this,i);return this.toWebAssembly(t,n)}:()=>{}},importFunction(A,e="",t=""){return(...i)=>{i=i.map(((A,t)=>this.toWebAssembly(e.charAt(t),A)));const n=A.apply(this,i);return this.fromWebAssembly(t,n)}},exportFunctions(){const A={};for(const[e,{argType:t,returnType:i,alias:n}]of Object.entries(this.exports)){const r=this[n??e];r&&(A[`_${e}`]=this.exportFunction(r,t,i,e))}return A},importFunctions(A){for(const[e,{argType:t,returnType:i}]of Object.entries(this.imports)){const s=A[e];s&&((0,n.n8)(this,e,(0,n.vQ)(this.importFunction(s,t,i))),this.destructors.push((()=>this[e]=r)))}},async instantiateWebAssembly(A,e){const{memoryInitial:t,memoryMax:i,tableInitial:r,multithreaded:s}=this.options=e,a=await A,o="Response"===a[Symbol.toStringTag]?"Streaming":"",g=WebAssembly,I=g["compile"+o],Q=this.executable=await I(a),C=this.exportFunctions(),c={},B={},l={},u=this.exportedModules={env:c,wasi:B,wasi_snapshot_preview1:l};for(const{module:A,name:e,kind:t}of g.Module.imports(Q))"function"===t&&("env"===A?c[e]=C[e]??n.Ie:"wasi_snapshot_preview1"===A?l[e]=this.getWASIHandler(e):"wasi"===A&&(B[e]=this.getThreadHandler?.(e)??n.Ie));return this.memory=c.memory=new g.Memory({initial:t,maximum:i,shared:s}),this.table=c.__indirect_function_table=new g.Table({initial:r,element:"anyfunc",shared:s}),this.initialTableLength=r,g.instantiate(Q,u)},loadModule(A,e){return this.initPromise=(async()=>{const t=await this.instantiateWebAssembly(A,e),{exports:i}=t;if(this.importFunctions(i),this.customWASI){const A={...i,memory:this.memory},e=new Proxy(t,{get:(e,t)=>"exports"===t?A:e[t]});this.customWASI.initialize?.(e)}this.initialize()})()},displayPanic(A,e){const t=new Uint8Array(this.memory.buffer,A,e),i=(0,n.g7)(t);console.error(`Zig panic: ${i}`)}}});const r=()=>{throw new Error("Module was abandoned")}},9268:(A,e,t)=>{var i=t(1388),n=t(6560),r=t(4540);(0,n.co)({linkVariables(A){if(!this.memory)return void(this.initPromise=this.initPromise.then((()=>this.linkVariables(A))));const e=this.getCopyFunction();for(const{object:t,handle:n}of this.variables){const s=t[r.Qy],a=n;let o=t[r.Qy]=this.obtainZigView(a,s.byteLength);A&&e(o,s),t.constructor[r.fV]?.save?.(o,t),this.destructors.push((()=>{o=this.restoreView(t[r.Qy]);const A=t[r.Qy]=this.allocateMemory(o.bytelength);e(A,o)}));const g=A=>{const e=A[r._f];if(e){const A=o.byteOffset;for(const t of Object.values(e))if(t){const e=t[r.Qy];if(e.buffer===s.buffer){const i=A+e.byteOffset-s.byteOffset;t[r.Qy]=this.obtainView(o.buffer,i,e.byteLength),t.constructor[r.fV]?.save?.(o,t),g(t)}}}};g(t),t[r.g9]?.((function(){this[r.q6]()}),i.F7.IgnoreInactive)}},imports:{recreateAddress:{argType:"i",returnType:"i"}}})},7409:(A,e,t)=>{var i=t(1388),n=t(6560),r=t(4540),s=t(8e3);(0,n.co)({updatePointerAddresses(A,e){const t=new Map,n=new Map,a=[],o=function(A){const e=this[r.C7];if(void 0===t.get(e)){const A=e[r._f][0];if(A){const i={target:A,writable:!e.constructor.const},g=A[r.Qy];if(g[r.Dr])t.set(e,null);else{t.set(e,A);const I=n.get(g.buffer);if(I){const A=Array.isArray(I)?I:[I],e=(0,s.ZG)(A,g.byteOffset,(A=>A.target[r.Qy].byteOffset));A.splice(e,0,i),Array.isArray(I)||(n.set(g.buffer,A),a.push(A))}else n.set(g.buffer,i);A[r.g9]?.(o,0)}}}},g=i.F7.IgnoreRetval|i.F7.IgnoreInactive;e[r.g9](o,g);const I=this.findTargetClusters(a),Q=new Map;for(const A of I)for(const e of A.targets)Q.set(e,A);for(const[e,i]of t)if(i){const t=Q.get(i),n=t?.writable??!e.constructor.const;e[r.BD]=this.getTargetAddress(A,i,t,n),r.pi in e&&(e[r.pi]=i.length)}},updatePointerTargets(A,e,t=!1){const n=new Map,s=function(e){const t=this[r.C7];if(!n.get(t)){n.set(t,!0);const a=t[r._f][0],o=a&&e&i.F7.IsImmutable?a:t[r.q6](A,!0,!(e&i.F7.IsInactive)),g=t.constructor.const?i.F7.IsImmutable:0;g&i.F7.IsImmutable||a&&!a[r.Qy][r.Dr]&&a[r.g9]?.(s,g),o!==a&&o&&!o[r.Qy][r.Dr]&&o?.[r.g9]?.(s,g)}},a=t?i.F7.IgnoreRetval:0;e[r.g9](s,a)},findTargetClusters(A){const e=[];for(const t of A){let A=null,i=0,n=0,s=null;for(const{target:a,writable:o}of t){const t=a[r.Qy],{byteOffset:g,byteLength:I}=t,Q=g+I;let C=!0;A&&(n>g?(s?s.writable||=o:(s={targets:[A],start:i,end:n,address:void 0,misaligned:void 0,writable:o},e.push(s)),s.targets.push(a),Q>n?s.end=Q:C=!1):s=null),C&&(A=a,i=g,n=Q)}}return e}})},3586:(A,e,t)=>{t(1388);var i=t(6560),n=t(8e3);(0,i.co)({init(){this.consoleObject=null,this.consolePending=[],this.consoleTimeout=0},writeToConsole(A){try{const e=new Uint8Array(A.buffer,A.byteOffset,A.byteLength).slice(),t=e.lastIndexOf(10);if(-1===t)this.consolePending.push(e);else{const A=e.subarray(0,t),i=e.subarray(t+1);this.writeToConsoleNow([...this.consolePending,A]),this.consolePending.splice(0),i.length>0&&this.consolePending.push(i)}return clearTimeout(this.consoleTimeout),this.consoleTimeout=0,this.consolePending.length>0&&(this.consoleTimeout=setTimeout((()=>{this.writeToConsoleNow(this.consolePending),this.consolePending.splice(0)}),250)),!0}catch(A){return console.error(A),!1}},writeToConsoleNow(A){const e=this.consoleObject??globalThis.console;e.log?.call?.(e,(0,n.g7)(A))},flushConsole(){this.consolePending.length>0&&(this.writeToConsoleNow(this.consolePending),this.consolePending.splice(0),clearTimeout(this.consoleTimeout))},imports:{flushStdout:{argType:"",returnType:""}}})},2436:(A,e,t)=>{var i=t(6560),n=t(8e3);(0,i.co)({...{exports:{allocateJsThunk:{argType:"ii",returnType:"i"},freeJsThunk:{argType:"ii",returnType:"i"}},init(){this.thunkSources=[],this.thunkMap=new Map},addJsThunkSource(){const{memoryInitial:A,memoryMax:e,tableInitial:t,multithreaded:i}=this.options,r=WebAssembly,s={},a={},o={env:s,wasi:{},wasi_snapshot_preview1:a};for(const{module:A,name:e,kind:t}of r.Module.imports(this.executable))"function"===t&&("env"===A?s[e]=n.Ie:"wasi_snapshot_preview1"===A&&(a[e]=n.Ie));s.memory=new r.Memory({initial:A,maximum:e,shared:i});const g=s.__indirect_function_table=new r.Table({initial:t,element:"anyfunc"}),{exports:I}=new r.Instance(this.executable,o),{createJsThunk:Q,destroyJsThunk:C}=I,c={thunkCount:0,createJsThunk:Q,destroyJsThunk:C,table:g};return this.thunkSources.unshift(c),c},allocateJsThunk(A,e){let t,i=0;for(t of this.thunkSources){i=t.createJsThunk(A,e);break}i||(t=this.addJsThunkSource(),i=t.createJsThunk(A,e));const n=t.table.get(i);let r=0;for(let A=this.table.length-1;A>=this.initialTableLength;A--)if(!this.table.get(A)){r=A;break}return r||(r=this.table.length,this.table.grow(8)),this.table.set(r,n),t.thunkCount++,this.thunkMap.set(n,{source:t,sourceAddress:i}),r},freeJsThunk(A,e){let t=0;const i=this.table.get(e);this.table.set(e,null);const n=this.thunkMap.get(i);if(n){const{source:e,sourceAddress:r}=n;if(t=e.destroyJsThunk(A,r),0==--e.thunkCount){const A=this.thunkSources.indexOf(e);-1!==A&&this.thunkSources.splice(A,1)}this.thunkMap.delete(i)}return t}}})},8738:(A,e,t)=>{var i=t(1388),n=t(6560),r=t(4762),s=t(4540),a=t(8e3);(0,n.co)({init(){this.viewMap=new WeakMap},extractView(A,e,t=g){const{type:n,byteSize:I,constructor:Q}=A;let C;const c=e?.[Symbol.toStringTag];if(c&&("DataView"===c?C=this.registerView(e):"ArrayBuffer"===c?C=this.obtainView(e,0,e.byteLength):(c&&c===Q[s.pM]?.name||"Uint8ClampedArray"===c&&Q[s.pM]===Uint8Array)&&(C=this.obtainView(e.buffer,e.byteOffset,e.byteLength))),!C){const t=e?.[s.Qy];if(t){const{constructor:s,instance:{members:[o]}}=A;if((0,a.pU)(e,s))return t;if(function(A){return A===i.ev.Array||A===i.ev.Vector||A===i.ev.Slice}(n)){const{byteSize:s,structure:{constructor:g}}=o,Q=(0,a.be)(e,g);if(void 0!==Q){if(n===i.ev.Slice||Q*s===I)return t;throw new r.Y8(A,null,e)}}}}return C?void 0!==I&&o(C,A):t?.(A,e),C},assignView(A,e,t,n,a){const{byteSize:g,type:I}=t,Q=g??1;if(A[s.Qy]){const n=I===i.ev.Slice?Q*A.length:Q;if(e.byteLength!==n)throw new r.t7(t,e,A);const a={[s.Qy]:e};A.constructor[s.fd]?.validateData?.(a,A.length),A[s.sF](a)}else{void 0!==g&&o(e,t);const i=e.byteLength/Q,r={[s.Qy]:e};A.constructor[s.fd]?.validateData?.(r,i),a&&(n=!0),A[s.IW](n?null:e,i,a),n&&A[s.sF](r)}},findViewAt(A,e,t){let i,n=this.viewMap.get(A);if(n)if(n instanceof DataView)if(n.byteOffset===e&&n.byteLength===t)i=n,n=null;else{const e=n,t=`${e.byteOffset}:${e.byteLength}`;n=new Map([[t,e]]),this.viewMap.set(A,n)}else i=n.get(`${e}:${t}`);return i?.[s.Dr]?.address===a.Y$&&(i=null),{existing:i,entry:n}},obtainView(A,e,t){const{existing:i,entry:n}=this.findViewAt(A,e,t);let r;return i||(r=new DataView(A,e,t),n?n.set(`${e}:${t}`,r):this.viewMap.set(A,r),A!==this.memory?.buffer&&A!==this.usizeMaxBuffer||(r[s.Dr]={address:e,len:t}),r)},registerView(A){if(!A[s.Dr]){const{buffer:e,byteOffset:t,byteLength:i}=A,{existing:n,entry:r}=this.findViewAt(e,t,i);if(n)return n;r?r.set(`${t}:${i}`,A):this.viewMap.set(e,A)}return A},allocateMemory(A,e=0,t=null){return t?.alloc?.(A,e)??this.allocateJSMemory(A,e)},...{allocateJSMemory(A,e){return this.obtainView(new ArrayBuffer(A),0,A)},restoreView(A){const e=A?.[s.Dr];return e?.len>0&&0===A.buffer.byteLength&&(A=this.obtainZigView(e.address,e.len),e.align&&(A[s.Dr].align=e.align)),A},defineRestorer(){const A=this;return{value(){const e=this[s.Qy],t=A.restoreView(e);if(e!==t){const A=this[s.KK]??this;return A[s.Qy]=t,A.constructor[s.fV]?.save?.(t,A[s.rG]??A),!0}return!1}}}}});function o(A,e){const{byteSize:t,type:n}=e;if(!(n===i.ev.Slice?A.byteLength%t==0:A.byteLength===t))throw new r.t7(e,A)}function g(A){throw new r.Zb(A)}},9499:(A,e,t)=>{var i=t(6560),n=t(4762);(0,i.co)({...{init(){this.customWASI=null},setCustomWASI(A){if(A&&this.executable)throw new Error("Cannot set WASI interface after compilation has already begun");this.customWASI=A},getWASIHandler(A){const e=this.customWASI?.wasiImport?.[A];if(e)return e;switch(A){case"fd_write":return(A,e,t,i)=>{if(1===A||2===A){const A=new DataView(this.memory.buffer);let n=0;for(let i=0,r=e;i<t;i++,r+=8){const e=A.getUint32(r,!0),t=A.getUint32(r+4,!0);if(t>0){const A=new DataView(this.memory.buffer,e,t);this.writeToConsole(A),n+=t}}return A.setUint32(i,n,!0),0}return 38};case"fd_prestat_get":return()=>8;case"proc_exit":return A=>{throw new n.Jc(A)};case"random_get":return(A,e)=>{const t=new DataView(this.memory.buffer,A,e);for(let A=0;A<e;A++)t.setUint8(A,Math.floor(256*Math.random()));return 0};default:return()=>38}}}})},1432:(A,e,t)=>{var i=t(6560),n=t(4762),r=t(4540);(0,i.co)({makeReadOnly(A){o(A)}});const s=Object.getOwnPropertyDescriptors,a=Object.defineProperty;function o(A){const e=A[r.C7];if(e)g(e,["length"]);else{const e=A[r.sO];e?(g(e),function(A){a(A,"set",{value:n.V0});const e=A.get;a(A,"get",{value:function(A){const t=e.call(this,A);return null===t?.[r.KK]&&o(t),t}})}(e)):g(A)}}function g(A,e=[]){const t=s(A.constructor.prototype);for(const[i,r]of Object.entries(t))r.set&&!e.includes(i)&&(r.set=n.V0,a(A,i,r));a(A,r.KK,{value:A})}},4773:(A,e,t)=>{t.d(e,{M:()=>n});var i=t(6560);function n(){return new((0,i.NP)())}},1454:(A,e,t)=>{var i=t(6560),n=t(4540),r=t(8e3);(0,i.co)({defineArrayEntries:()=>(0,r.vQ)(o),defineArrayIterator:()=>(0,r.vQ)(s)});function s(){const A=this[n.sO]??this,e=this.length;let t=0;return{next(){let i,n;if(t<e){const e=t++;i=A.get(e),n=!1}else n=!0;return{value:i,done:n}}}}function a(A){const e=(0,r.L9)(A),t=this[n.sO]??this,i=this.length;let s=0;return{next(){let A,n;if(s<i){const i=s++;A=[i,e((()=>t.get(i)))],n=!1}else n=!0;return{value:A,done:n}}}}function o(A){return{[Symbol.iterator]:a.bind(this,A),length:this.length}}},6402:(A,e,t)=>{var i=t(6560),n=t(4540),r=t(8e3);(0,i.co)({defineStructEntries:()=>(0,r.vQ)(s),defineStructIterator:()=>(0,r.vQ)(a)});function s(A){return{[Symbol.iterator]:o.bind(this,A),length:this[n.n5].length}}function a(A){return s.call(this,A)[Symbol.iterator]()}function o(A){const e=(0,r.L9)(A),t=this,i=this[n.n5];let s=0;return{next(){let A,n;if(s<i.length){const r=i[s++];A=[r,e((()=>t[r]))],n=!1}else n=!0;return{value:A,done:n}}}}},5940:(A,e,t)=>{var i=t(6560),n=t(4540),r=t(8e3);(0,i.co)({defineUnionEntries:()=>(0,r.vQ)(s),defineUnionIterator:()=>(0,r.vQ)(a)});function s(A){return{[Symbol.iterator]:o.bind(this,A),length:this[n.n5].length}}function a(A){return s.call(this,A)[Symbol.iterator]()}function o(A){const e=(0,r.L9)(A),t=this,i=this[n.n5],s=this[n.XS];let a=0;return{next(){let A,n;if(a<i.length){const r=i[a++];A=[r,e((()=>s[r].call(t)))],n=!1}else n=!0;return{value:A,done:n}}}}},804:(A,e,t)=>{var i=t(6560),n=t(8e3);(0,i.co)({defineVectorEntries:()=>(0,n.vQ)(a),defineVectorIterator:()=>(0,n.vQ)(r)});function r(){const A=this,e=this.length;let t=0;return{next(){let i,n;if(t<e){const e=t++;i=A[e],n=!1}else n=!0;return{value:i,done:n}}}}function s(){const A=this,e=this.length;let t=0;return{next(){let i,n;if(t<e){const e=t++;i=[e,A[e]],n=!1}else n=!0;return{value:i,done:n}}}}function a(){return{[Symbol.iterator]:s.bind(this),length:this.length}}},9098:(A,e,t)=>{t.d(e,{E:()=>n});var i=t(1388);(0,t(6560).co)({defineMember(A,e=!0){if(!A)return{};const{type:t,structure:n}=A,r=this[`defineMember${i.hQ[t]}`].call(this,A);if(e&&n){const{type:e}=n,t=this[`transformDescriptor${i.EK[e]}`];if(t)return t.call(this,r,A)}return r}});function n(A,{get:e,set:t}){return void 0!==A?{get:function(){return e.call(this,A)},set:t?function(e,i){return t.call(this,A,e,i)}:void 0}:{get:e,set:t}}},9494:(A,e,t)=>{var i=t(6560),n=t(4762),r=t(8e3);(0,i.co)({defineBase64(A){const e=this;return(0,r.NV)({get(){return(0,r.WG)(this.dataView)},set(t,i){if("string"!=typeof t)throw new n.Pd("string",t);const s=(0,r.y4)(t);e.assignView(this,s,A,!1,i)}})}})},337:(A,e,t)=>{(0,t(6560).co)({defineMemberBool(A){return this.defineMemberUsing(A,this.getAccessor)}})},3971:(A,e,t)=>{var i=t(6560),n=t(4762),r=t(8e3);(0,i.co)({defineClampedArray(A){const e=this,t=Uint8ClampedArray;return(0,r.NV)({get(){const A=this.typedArray;return new t(A.buffer,A.byteOffset,A.length)},set(i,r){if(i?.[Symbol.toStringTag]!==t.name)throw new n.Pd(t.name,i);const s=new DataView(i.buffer,i.byteOffset,i.byteLength);e.assignView(this,s,A,!0,r)}})}})},7431:(A,e,t)=>{var i=t(6560),n=t(4762),r=t(4540),s=t(8e3);(0,i.co)({defineDataView(A){const e=this;return(0,s.NV)({get(){this[r.zN]?.();return this[r.Qy]},set(t,i){if("DataView"!==t?.[Symbol.toStringTag])throw new n.Pd("DataView",t);e.assignView(this,t,A,!0,i)}})}})},7591:(A,e,t)=>{(0,t(6560).co)({defineMemberFloat(A){return this.defineMemberUsing(A,this.getAccessor)}})},6717:(A,e,t)=>{var i=t(1388),n=t(6560),r=t(4762),s=t(4540),a=t(9098);(0,n.co)({defineMemberObject:A=>(0,a.E)(A.slot,{get:A.flags&i.pK.IsString?I:A.structure.flags&i.yi.HasValue?o:g,set:A.flags&i.pK.IsReadOnly?r.V0:Q})});function o(A){return g.call(this,A).$}function g(A){return this[s._f][A]??this[s.tZ](A)}function I(A){const e=g.call(this,A).$;return e?e.string:e}function Q(A,e,t){g.call(this,A)[s.Zv](e,t)}},2164:(A,e,t)=>{var i=t(6560),n=t(4762),r=t(4540);(0,i.co)({...{defineMemberUsing(A,e){const{littleEndian:t}=this,{bitOffset:i,byteSize:s}=A,a=e.call(this,"get",A),o=e.call(this,"set",A);if(void 0!==i){const A=i>>3;return{get:function(){try{return a.call(this[r.Qy],A,t)}catch(e){if(e instanceof TypeError&&this[r.zN]?.())return a.call(this[r.Qy],A,t);throw e}},set:function(e){try{return o.call(this[r.Qy],A,e,t)}catch(i){if(i instanceof TypeError&&this[r.zN]?.())return o.call(this[r.Qy],A,e,t);throw i}}}}return{get:function(e){try{return a.call(this[r.Qy],e*s,t)}catch(i){if(i instanceof TypeError&&this[r.zN]?.())return a.call(this[r.Qy],e*s,t);throw(0,n.qx)(A,e,i)}},set:function(e,i){try{return o.call(this[r.Qy],e*s,i,t)}catch(a){if(a instanceof TypeError&&this[r.zN]?.())return o.call(this[r.Qy],e*s,i,t);throw(0,n.qx)(A,e,a)}}}}}})},5496:(A,e,t)=>{var i=t(6560),n=t(4762),r=t(4540),s=t(8e3);(0,i.co)({defineString(A){const e=this,{byteSize:t}=A.instance.members[0],i="utf-"+8*t;return(0,s.NV)({get(){let A=(0,s.g7)(this.typedArray,i);const e=this.constructor[r.fd]?.value;return void 0!==e&&A.charCodeAt(A.length-1)===e&&(A=A.slice(0,-1)),A},set(t,a){if("string"!=typeof t)throw new n.Pd("string",t);const o=this.constructor[r.fd]?.value;void 0!==o&&t.charCodeAt(t.length-1)!==o&&(t+=String.fromCharCode(o));const g=(0,s.wx)(t,i),I=new DataView(g.buffer);e.assignView(this,I,A,!1,a)}})}})},6135:(A,e,t)=>{var i=t(6560),n=t(3456);(0,i.co)({defineToJSON:()=>({value(){return(0,n.F)(this,!0)}})})},9813:(A,e,t)=>{var i=t(6560),n=t(4762),r=t(4540),s=t(9098);(0,i.co)({defineMemberType(A,e){const{slot:t}=A;return(0,s.E)(t,{get(A){const e=this[r._f][A];return e?.constructor},set:n.V0})}})},3793:(A,e,t)=>{var i=t(6560),n=t(4762),r=t(8e3);(0,i.co)({defineTypedArray(A){const e=this,t=this.getTypedArray(A);return(0,r.NV)({get(){const A=this.dataView,e=A.byteLength/t.BYTES_PER_ELEMENT;return new t(A.buffer,A.byteOffset,e)},set(i,r){if(i?.[Symbol.toStringTag]!==t.name)throw new n.Pd(t.name,i);const s=new DataView(i.buffer,i.byteOffset,i.byteLength);e.assignView(this,s,A,!0,r)}})}})},8305:(A,e,t)=>{(0,t(6560).co)({defineMemberUint(A){let e=this.getAccessor;return this.runtimeSafety&&(e=this.addRuntimeCheck(e)),e=this.addIntConversion(e),this.defineMemberUsing(A,e)}})},3456:(A,e,t)=>{t.d(e,{F:()=>g});var i=t(1388),n=t(6560),r=t(4540),s=t(8e3);(0,n.co)({defineValueOf:()=>({value(){return g(this,!1)}})});const a=BigInt(Number.MAX_SAFE_INTEGER),o=BigInt(Number.MIN_SAFE_INTEGER);function g(A,e){const t={error:e?"return":"throw"},n=(0,s.L9)(t),g=new Map,I=function(A){const s="function"==typeof A?i.ev.Struct:A?.constructor?.[r.ZE];if(void 0===s){if(e){if("bigint"==typeof A&&o<=A&&A<=a)return Number(A);if(A instanceof Error)return{error:A.message}}return A}let Q=g.get(A);if(void 0===Q){let e;switch(s){case i.ev.Struct:e=A[r.lf](t),Q=A.constructor[r.Wg]&i.sU.IsTuple?[]:{};break;case i.ev.Union:e=A[r.lf](t),Q={};break;case i.ev.Array:case i.ev.Vector:case i.ev.Slice:e=A[r.lf](),Q=[];break;case i.ev.Pointer:try{Q=A["*"]}catch(A){Q=Symbol.for("inaccessible")}break;case i.ev.Enum:Q=n((()=>String(A)));break;case i.ev.Opaque:Q={};break;default:Q=n((()=>A.$))}if(Q=I(Q),g.set(A,Q),e)for(const[A,t]of e)Q[A]=I(t)}return Q};return I(A)}},8539:(A,e,t)=>{var i=t(6560),n=t(4762);(0,i.co)({defineMemberVoid(A,e){const{bitOffset:t}=A;return{get(){},set:void 0!==t?function(e){if(void 0!==e)throw new n.UQ(A)}:function(e,t){if(void 0!==t)throw new n.UQ(A);if(e<0||e>=this.length)throw new n._l(A,e)}}}})},7679:(A,e,t)=>{var i=t(1388),n=t(6560),r=t(4762),s=t(4540),a=t(8e3);(0,n.co)({defineStructure(A){const{type:e,byteSize:t}=A,n=this[`define${i.EK[e]}`],r=[],o={},g={dataView:this.defineDataView(A),base64:this.defineBase64(A),toJSON:this.defineToJSON(),valueOf:this.defineValueOf(),[s.KK]:{value:null},[s.Bl]:(0,a.vQ)(o),[s.Rk]:(0,a.vQ)(r),[s.sF]:this.defineCopier(t),[s.zN]:this.defineRestorer()},I=A.constructor=n.call(this,A,g);for(const[A,e]of Object.entries(g)){const t=e?.set;t&&!o[A]&&"$"!==A&&(o[A]=t,r.push(A))}return(0,a.ny)(I.prototype,g),I},finalizeStructure(A){const{name:e,type:t,constructor:n,align:r,byteSize:o,flags:g,signature:I,static:{members:Q,template:C}}=A,c=[],B={name:(0,a.vQ)(e),toJSON:this.defineToJSON(),valueOf:this.defineValueOf(),[s.J2]:(0,a.vQ)(I),[s.M0]:(0,a.vQ)(this),[s.Ec]:(0,a.vQ)(r),[s.SK]:(0,a.vQ)(o),[s.ZE]:(0,a.vQ)(t),[s.Wg]:(0,a.vQ)(g),[s.n5]:(0,a.vQ)(c),[s.pM]:(0,a.vQ)(this.getTypedArray(A)),[Symbol.iterator]:this.defineStructIterator(),[s.lf]:this.defineStructEntries(),[s.n5]:(0,a.vQ)(c)},l={[Symbol.toStringTag]:(0,a.vQ)(e)};for(const A of Q){const{name:e,slot:t,flags:n}=A;if(A.structure.type===i.ev.Function){let r=C[s._f][t];n&i.pK.IsString&&(r[s.fM]=!0),B[e]=(0,a.vQ)(r),r.name||(0,a.n8)(r,"name",(0,a.vQ)(e));const[o,g]=/^(get|set)\s+([\s\S]+)/.exec(e)?.slice(1)??[],I="get"===o?0:1;if(o&&r.length===I){B[g]||={};B[g][o]=r}if(A.flags&i.pK.IsMethod){const A=function(...A){try{return r(this,...A)}catch(A){throw A[s.q6]?.(1),A}};if((0,a.ny)(A,{name:(0,a.vQ)(e),length:(0,a.vQ)(r.length-1)}),l[e]=(0,a.vQ)(A),o&&A.length===I){(l[g]||={})[o]=A}}}else B[e]=this.defineMember(A),c.push(e)}B[s._f]=c.length>0&&(0,a.vQ)(C[s._f]);const u=this[`finalize${i.EK[t]}`];!1!==u?.call(this,A,B,l)&&((0,a.ny)(n.prototype,l),(0,a.ny)(n,B))},createConstructor(A,e={}){const{type:t,byteSize:n,align:o,flags:g,instance:{members:I,template:Q}}=A,{onCastError:C}=e;let c;if(Q?.[s._f]){const A=I.filter((A=>A.flags&i.pK.IsReadOnly));A.length>0&&(c=A.map((A=>A.slot)))}const B=new a.UF,l=this,u=function(e,a={}){const{allocator:I}=a,E=this instanceof u;let f,h;if(E){if(0===arguments.length)throw new r.ci(A);if(f=this,g&i.yi.HasSlot&&(f[s._f]={}),s.IW in f)f[s.Zv](e,I),h=f[s.Qy];else{const A=t!==i.ev.Pointer?I:null;f[s.Qy]=h=l.allocateMemory(n,o,A)}}else{if(s.mL in u&&(f=u[s.mL].call(this,e,a),!1!==f))return f;if(h=l.extractView(A,e,C),f=B.find(h))return f;f=Object.create(u.prototype),s.IW in f?l.assignView(f,h,A,!1,!1):f[s.Qy]=h,g&i.yi.HasSlot&&(f[s._f]={})}if(c)for(const A of c)f[s._f][A]=Q[s._f][A];return f[s.f$]?.(),E&&(s.IW in f||f[s.Zv](e,I)),s.vm in f&&(f=f[s.vm]()),B.save(h,f)};return(0,a.n8)(u,s.fV,(0,a.vQ)(B)),Q?.[s.Qy]&&(0,a.n8)(Q,s.zN,this.defineRestorer()),u},createApplier(A){const{instance:{template:e}}=A;return function(t,i){const n=Object.keys(t),a=this[s.Rk],o=this[s.Bl];for(const e of n)if(!(e in o))throw new r.xH(A,e);let g=0,I=0,Q=0,C=0;for(const A of a){const e=o[A];e.special?A in t&&C++:(g++,A in t?I++:e.required&&Q++)}if(0!==Q&&0===C){const e=a.filter((A=>o[A].required&&!(A in t)));throw new r.SB(A,e)}if(C+I>n.length)for(const A of a)A in t&&(n.includes(A)||n.push(A));I<g&&0===C&&e&&e[s.Qy]&&this[s.sF](e);for(const A of n){o[A].call(this,t[A],i)}return n.length}},getTypedArray(A){const{type:e,instance:t}=A;if(void 0!==e&&t){const[A]=t.members;switch(e){case i.ev.Enum:case i.ev.ErrorSet:case i.ev.Primitive:{const{byteSize:e,type:t}=A,n=t===i.Z9.Float?"Float":t===i.Z9.Int?"Int":"Uint",r=e>4&&t!==i.Z9.Float?"Big":"";return globalThis[r+n+8*e+"Array"]}case i.ev.Array:case i.ev.Slice:case i.ev.Vector:return this.getTypedArray(A.structure)}}}})},2244:(A,e,t)=>{var i=t(1388),n=t(6560),r=t(4762),s=t(4540),a=t(8e3);(0,n.co)({defineArgStruct(A,e){const{flags:t,byteSize:n,align:o,length:g,instance:{members:I}}=A,Q=this,C=I.slice(1),c=function(A,e){const a=this instanceof c;let I,B;if(a?(I=this,B=Q.allocateMemory(n,o)):(I=Object.create(c.prototype),B=A),I[s.Qy]=B,t&i.yi.HasSlot&&(I[s._f]={}),!a)return I;{let n;if(t&i.e2.HasOptions&&A.length===g+1&&(n=A.pop()),A.length!==g)throw new r.nz(g,A.length);t&i.e2.IsAsync&&(I[s.vm]=null),Q.copyArguments(I,A,C,n,e)}};for(const A of I)e[A.name]=this.defineMember(A);const B=e.retval.set;return e.length=(0,a.vQ)(C.length),e[s.tZ]=t&i.yi.HasObject&&this.defineVivificatorStruct(A),e[s.g9]=t&i.yi.HasPointer&&this.defineVisitorArgStruct(I),e[s.zg]=(0,a.vQ)((function(A){B.call(this,A,this[s.Gz])})),e[Symbol.iterator]=this.defineArgIterator?.(C),e[s.sF]=this.defineRetvalCopier(I[0]),c},finalizeArgStruct(A,e){const{flags:t}=A;e[s.du]=(0,a.vQ)(!!(t&i.e2.IsThrowing))}})},9433:(A,e,t)=>{var i=t(6560),n=t(4540),r=t(8e3);(0,i.co)({defineFinalizerArray:({get:A,set:e})=>({value(){const t=new Proxy(this,s);return(0,r.ny)(this,{[n.rG]:{value:t},get:{value:A.bind(this)},set:e&&{value:e.bind(this)}}),t}}),defineVivificatorArray(A){const{instance:{members:[e]}}=A,{byteSize:t,structure:i}=e,r=this;return{value:function(A){const{constructor:e}=i;this[n.zN]?.();const s=this[n.Qy],a=s.byteOffset+t*A,o=r.obtainView(s.buffer,a,t);return this[n._f][A]=e.call(n.f7,o)}}}});const s={get(A,e){const t="symbol"==typeof e?0:0|e;return 0!==t||t==e?A.get(t):e===n.sO?A:A[e]},set(A,e,t){const i="symbol"==typeof e?0:0|e;return 0!==i||i==e?A.set(i,t):A[e]=t,!0},deleteProperty(A,e){const t="symbol"==typeof e?0:0|e;return 0===t&&t!=e&&(delete A[e],!0)},has(A,e){const t="symbol"==typeof e?0:0|e;return 0!==t||t==e?t>=0&&t<A.length:A[e]},ownKeys(A){const e=[];for(let t=0,i=A.length;t<i;t++)e.push(`${t}`);return e.push("length",n.rG),e},getOwnPropertyDescriptor(A,e){const t="symbol"==typeof e?0:0|e;return 0===t&&t!=e?Object.getOwnPropertyDescriptor(A,e):t>=0&&t<A.length?{value:A.get(t),enumerable:!0,writable:!0,configurable:!0}:void 0}}},3509:(A,e,t)=>{var i=t(1388),n=t(6560),r=t(4762),s=t(4540),a=t(8e3);(0,n.co)({defineArray(A,e){const{length:t,instance:{members:[n]},flags:o}=A,g=this.createApplier(A),I=this.defineMember(n),{set:Q}=I,C=this.createConstructor(A),c=function(e,n){if((0,a.pU)(e,C))this[s.sF](e),o&i.yi.HasPointer&&this[s.g9]("copy",i.F7.Vivificate,e);else if("string"==typeof e&&o&i.uE.IsString&&(e={string:e}),e?.[Symbol.iterator]){if((e=(0,a.FU)(e)).length!==t)throw new r.Y8(A,this,e);let i=0;for(const A of e)Q.call(this,i++,A,n)}else if(e&&"object"==typeof e){if(0===g.call(this,e))throw new r.L2(A,e)}else if(void 0!==e)throw new r.L2(A,e)};return e.$={get:a.V_,set:c},e.length=(0,a.vQ)(t),e.entries=e[s.lf]=this.defineArrayEntries(),o&i.uE.IsTypedArray&&(e.typedArray=this.defineTypedArray(A),o&i.uE.IsString&&(e.string=this.defineString(A)),o&i.uE.IsClampedArray&&(e.clampedArray=this.defineClampedArray(A))),e[Symbol.iterator]=this.defineArrayIterator(),e[s.Zv]=(0,a.vQ)(c),e[s.vm]=this.defineFinalizerArray(I),e[s.tZ]=o&i.yi.HasObject&&this.defineVivificatorArray(A),e[s.g9]=o&i.yi.HasPointer&&this.defineVisitorArray(),C},finalizeArray(A,e){const{flags:t,instance:{members:[n]}}=A;e.child=(0,a.vQ)(n.structure.constructor),e[s.fd]=t&i.uE.HasSentinel&&this.defineSentinel(A)}})},8371:(A,e,t)=>{var i=t(1388),n=t(6560),r=t(4762),s=t(4540),a=t(8e3);(0,n.co)({defineEnum(A,e){const{instance:{members:[t]}}=A,i=this.defineMember(t),{get:n,set:o}=i,{get:g}=this.defineMember(t,!1),I=this.createApplier(A),Q=["string","number","tagged union"],C=this.createConstructor(A,{onCastError(A,e){throw new r.is(A,Q,e)}});return e.$=i,e.toString=(0,a.vQ)(a.dI),e[Symbol.toPrimitive]={value(A){switch(A){case"string":case"default":return this.$[s.o_];default:return g.call(this)}}},e[s.Zv]=(0,a.vQ)((function(e){if(e&&"object"==typeof e){if(0===I.call(this,e))throw new r.is(A,Q,e)}else void 0!==e&&o.call(this,e)})),C},finalizeEnum(A,e){const{flags:t,constructor:n,instance:{members:[r]},static:{members:o,template:g}}=A,I=g[s._f],{get:Q,set:C}=this.defineMember(r,!1),c={};for(const{name:A,flags:t,slot:n}of o)if(t&i.pK.IsPartOfSet){const t=I[n];(0,a.n8)(t,s.o_,(0,a.vQ)(A));const i=Q.call(t);e[A]={value:t,writable:!1},c[i]=t}e[s.mL]={value(A){if("string"==typeof A)return n[A];if("number"==typeof A||"bigint"==typeof A){let e=c[A];if(!e&&t&i.Q6.IsOpenEnded){e=new n(void 0),C.call(e,A);const t=`${A}`;(0,a.n8)(e,s.o_,(0,a.vQ)(t)),(0,a.n8)(n,t,(0,a.vQ)(e)),c[A]=e}return e}return A instanceof n?A:A?.[s.Dk]instanceof n&&A[s.Dk]}},e[s.pM]=(0,a.vQ)(this.getTypedArray(A))},transformDescriptorEnum(A,e){const{type:t,structure:n}=e;if(t===i.Z9.Object)return A;const s=function(A){const{constructor:e}=n,t=e(A);if(!t)throw new r.iS(n,A);return t},{get:a,set:o}=A;return{get:0===a.length?function(){const A=a.call(this);return s(A)}:function(A){const e=a.call(this,A);return s(e)},set:1===o.length?function(A){A=s(A)[Symbol.toPrimitive](),o.call(this,A)}:function(A,e){const t=s(e);o.call(this,A,t[Symbol.toPrimitive]())}}}})},903:(A,e,t)=>{var i=t(1388),n=t(6560),r=t(4762),s=t(4540),a=t(8e3);(0,n.co)({init(){this.ZigError=null,this.globalItemsByIndex={},this.globalErrorSet=null},defineErrorSet(A,e){const{instance:{members:[t]},byteSize:n,flags:g}=A;if(!this.ZigError){this.ZigError=class extends o{};const A={type:i.ev.ErrorSet,flags:i.Zm.IsGlobal,byteSize:n,name:"anyerror",instance:{members:[t]},static:{members:[],template:{SLOTS:{}}}},e=this.defineStructure(A);this.finalizeStructure(A),this.globalErrorSet=e}if(this.globalErrorSet&&g&i.Zm.IsGlobal)return this.globalErrorSet;const I=this.defineMember(t),{set:Q}=I,C=["string","number"],c=this.createApplier(A),B=this.createConstructor(A,{onCastError(A,e){throw new r.is(A,C,e)}});return e.$=I,e[s.Zv]=(0,a.vQ)((function(e){if(e instanceof B[s.tp])Q.call(this,e);else if(e&&"object"==typeof e&&!(0,r.FD)(e)){if(0===c.call(this,e))throw new r.is(A,C,e)}else void 0!==e&&Q.call(this,e)})),B},finalizeErrorSet(A,e){const{constructor:t,flags:n,instance:{members:[o]},static:{members:g,template:I}}=A;if(this.globalErrorSet&&n&i.Zm.IsGlobal)return!1;const Q=I?.[s._f]??{},C=n&i.Zm.IsGlobal?this.globalItemsByIndex:{},{get:c}=this.defineMember(o,!1);for(const{name:A,slot:t}of g){const i=Q[t],n=c.call(i);let r=this.globalItemsByIndex[n];const o=!!r;r||(r=new this.ZigError(A,n));const g=(0,a.vQ)(r);e[A]=g;const I=`${r}`;e[I]=g,C[n]=r,o||((0,a.ny)(this.globalErrorSet,{[A]:g,[I]:g}),this.globalErrorSet[s.n5].push(A),this.globalItemsByIndex[n]=r)}e[s.mL]={value:A=>"number"==typeof A?C[A]:"string"==typeof A?t[A]:A instanceof t[s.tp]?C[Number(A)]:(0,r.FD)(A)?t[`Error: ${A.error}`]:A instanceof Error&&t[`${A}`]},e[s.tp]=(0,a.vQ)(this.ZigError)},transformDescriptorErrorSet(A,e){const{type:t,structure:n}=e;if(t===i.Z9.Object)return A;const s=A=>{const{constructor:e,flags:t}=n,s=e(A);if(!s){if(t&i.Zm.IsGlobal&&"number"==typeof A){const e=new this.ZigError(`Unknown error: ${A}`,A);return this.globalItemsByIndex[A]=e,(0,a.n8)(this.globalErrorSet,`${e}`,(0,a.vQ)(e)),e}throw A instanceof Error?new r.Ho(n):new r.to(n,A)}return s},{get:o,set:g}=A;return{get:0===o.length?function(){const A=o.call(this);return s(A)}:function(A){const e=o.call(this,A);return s(e)},set:1===g.length?function(A){const e=s(A);A=Number(e),g.call(this,A)}:function(A,e){const t=s(e);e=Number(t),g.call(this,A,e)}}}});class o extends Error{constructor(A,e){super((0,r.a6)(A)),this.number=e,this.stack=void 0}[Symbol.toPrimitive](A){switch(A){case"string":case"default":return Error.prototype.toString.call(this,A);default:return this.number}}toJSON(){return{error:this.message}}}},3692:(A,e,t)=>{var i=t(1388),n=t(6560),r=t(4762),s=t(4540),a=t(8e3);(0,n.co)({defineErrorUnion(A,e){const{instance:{members:[t,n]},flags:o}=A,{get:g,set:I}=this.defineMember(t),{get:Q,set:C}=this.defineMember(n),{get:c,set:B}=this.defineMember(n,!1),l=t.type===i.Z9.Void,u=n.structure.constructor,E=function(){this[s.Ut](),this[s.g9]?.("clear")},f=this.createApplier(A),h=function(A,e){if((0,a.pU)(A,d))this[s.sF](A),o&i.yi.HasPointer&&(c.call(this)||this[s.g9]("copy",0,A));else if(A instanceof u[s.tp]&&u(A))C.call(this,A),E.call(this);else if(void 0!==A||l)try{I.call(this,A,e),B.call(this,0)}catch(e){if(A instanceof Error){const e=u(A)??u.Unexpected;if(!e)throw new r.Ho(n.structure);C.call(this,e),E.call(this)}else if((0,r.FD)(A))C.call(this,A),E.call(this);else{if(!A||"object"!=typeof A)throw e;if(0===f.call(this,A))throw e}}},{bitOffset:p,byteSize:y}=t,d=this.createConstructor(A);return e.$={get:function(){if(c.call(this))throw Q.call(this);return g.call(this)},set:h},e[s.Zv]=(0,a.vQ)(h),e[s.tZ]=o&i.yi.HasObject&&this.defineVivificatorStruct(A),e[s.Ut]=this.defineResetter(p/8,y),e[s.g9]=o&i.yi.HasPointer&&this.defineVisitorErrorUnion(t,c),d}})},7382:(A,e,t)=>{var i=t(1388),n=t(6560),r=t(4762),s=t(4540),a=t(8e3);(0,n.co)({defineFunction(A,e){const{instance:{members:[t],template:n},static:{template:o}}=A,g=new a.UF,{structure:{constructor:I}}=t,Q=this,C=function(e){const t=this instanceof C;let c,B;if(t){if(0===arguments.length)throw new r.ci(A);if("function"!=typeof e)throw new r.Pd("function",e);if(I[s.ZE]===i.ev.VariadicStruct||!o)throw new r.O0;c=Q.getFunctionThunk(e,o)}else{if(this!==s.M0)throw new r.Qm;c=e}if(B=g.find(c))return B;const l=I.prototype.length,u=t?Q.createInboundCaller(e,I):Q.createOutboundCaller(n,I);return(0,a.ny)(u,{length:(0,a.vQ)(l),name:(0,a.vQ)(t?e.name:"")}),Object.setPrototypeOf(u,C.prototype),u[s.Qy]=c,g.save(c,u),u};return Object.setPrototypeOf(C.prototype,Function.prototype),e.valueOf=e.toJSON=(0,a.vQ)(a.Ng),C},finalizeFunction(A,e,t){t[Symbol.toStringTag]=void 0}})},3750:(A,e,t)=>{var i=t(1388),n=t(6560),r=t(4540),s=t(8e3);(0,n.co)({defineOptional(A,e){const{instance:{members:[t,n]},flags:a}=A,{get:o,set:g}=this.defineMember(t),{get:I,set:Q}=this.defineMember(n),C=t.type===i.Z9.Void,c=function(A,e){(0,s.pU)(A,B)?(this[r.sF](A),a&i.yi.HasPointer&&I.call(this)&&this[r.g9]("copy",i.F7.Vivificate,A)):null===A?(Q.call(this,0),this[r.Ut]?.(),this[r.g9]?.("clear")):(void 0!==A||C)&&(g.call(this,A,e),a&i.Nt.HasSelector?Q.call(this,1):a&i.yi.HasPointer&&(I.call(this)||Q.call(this,13)))},B=A.constructor=this.createConstructor(A),{bitOffset:l,byteSize:u}=t;return e.$={get:function(){return I.call(this)?o.call(this):(this[r.g9]?.("clear"),null)},set:c},e[r.Zv]=(0,s.vQ)(c),e[r.Ut]=a&i.Nt.HasSelector&&this.defineResetter(l/8,u),e[r.tZ]=a&i.yi.HasObject&&this.defineVivificatorStruct(A),e[r.g9]=a&i.yi.HasPointer&&this.defineVisitorOptional(t,I),B}})},1425:(A,e,t)=>{var i=t(1388),n=t(6560),r=t(4762),s=t(4540),a=t(8e3);(0,n.co)({definePointer(A,e){const{flags:t,byteSize:n,instance:{members:[I]}}=A,{structure:c}=I,{type:B,flags:l,byteSize:u=1}=c,E=t&i.UT.HasLength?n/2:n,{get:f,set:h}=this.defineMember({type:i.Z9.Uint,bitOffset:0,bitSize:8*E,byteSize:E,structure:{byteSize:E}}),{get:p,set:y}=t&i.UT.HasLength?this.defineMember({type:i.Z9.Uint,bitOffset:8*E,bitSize:8*E,byteSize:E,structure:{flags:i.AD.IsSize,byteSize:E}}):{},d=function(A,e=!0,n=!0){if(e||this[s.Qy][s.Dr]){if(!n)return this[s._f][0]=void 0;{const e=N.child,n=f.call(this),r=t&i.UT.HasLength?p.call(this):B===i.ev.Slice&&l&i.tv.HasSentinel?k.findSentinel(n,e[s.fd].bytes)+1:1;if(n!==this[s.c6]||r!==this[s.uL]){const a=k.findMemory(A,n,r,e[s.SK]),o=a?e.call(s.M0,a):null;return this[s._f][0]=o,this[s.c6]=n,this[s.uL]=r,t&i.UT.HasLength&&(this[s.E2]=null),o}}}return this[s._f][0]},m=function(A){h.call(this,A),this[s.c6]=A},b=l&i.tv.HasSentinel?1:0,D=t&i.UT.HasLength||l&i.tv.HasSentinel?function(A){y?.call?.(this,A-b),this[s.uL]=A}:null,S=function(){const A=this[s.C7]??this,e=!A[s._f][0],n=d.call(A,null,e);if(!n){if(t&i.UT.IsNullable)return null;throw new r.BY}return t&i.UT.IsConst?Q(n):n},w=l&i.yi.HasValue?function(){return S.call(this).$}:S,v=t&i.UT.IsConst?r.V0:function(A){return S.call(this).$=A},k=this,x=function(e,n){const I=c.constructor;if(o(e,I)){if(!(t&i.UT.IsConst)&&e.constructor.const)throw new r.G9(A,e);e=e[s._f][0]}else if(t&i.UT.IsMultiple)g(e,I,t)&&(e=I(e[s._f][0][s.Qy]));else if(B===i.ev.Slice&&l&i.tv.IsOpaque&&e)if(e.constructor[s.ZE]===i.ev.Pointer)e=e[s.Qn]?.[s.Qy];else if(e[s.Qy])e=e[s.Qy];else if(e?.buffer instanceof ArrayBuffer&&!(e instanceof Uint8Array||e instanceof DataView)){const{byteOffset:A,byteLength:t}=e;void 0!==A&&void 0!==t&&(e=new DataView(e.buffer,A,t))}if(e instanceof I){e[s.zN]?.();const n=e[s.KK];if(n){if(!(t&i.UT.IsConst))throw new r.ck(A);e=n}}else if((0,a.pU)(e,I))e=I.call(s.M0,e[s.Qy]);else if(t&i.UT.IsSingle&&t&i.UT.IsMultiple&&e instanceof I.child)e=I(e[s.Qy]);else if(function(A,e){const t=A?.[Symbol.toStringTag];if(t){const i=e[s.pM];if(i)switch(t){case i.name:case"DataView":return!0;case"ArrayBuffer":return i===Uint8Array||i===Int8Array;case"Uint8ClampedArray":return i===Uint8Array}if(e.child&&void 0!==(0,a.be)(A,e.child))return!0}return!1}(e,I)){e=I(k.extractView(c,e))}else if(null==e||e[s.Qy]){if(!(void 0===e||t&i.UT.IsNullable&&null===e))throw new r.QB(A,e)}else{if(t&i.UT.IsSingle&&t&i.UT.IsMultiple&&"object"==typeof e&&!e[Symbol.iterator]){let A=!0;const t=I.prototype[s.Bl];for(const i of Object.keys(e)){const e=t[i];if(e?.special){A=!1;break}}A&&(e=[e])}if(s.pM in I&&e?.buffer&&e[Symbol.iterator])throw new r.QB(A,e);e=new I(e,{allocator:n})}const Q=e?.[s.Qy]?.[s.Dr];if(Q?.address===a.Y$)throw new r.xp(e);this[s.Qn]=e},N=this.createConstructor(A);return e["*"]={get:w,set:v},e.$={get:a.V_,set:x},e.length={get:function(){const A=S.call(this);return A?A.length:0},set:function(A){A|=0;const e=S.call(this);if(!e){if(0!==A)throw new r._L(A,0);return}if(e.length===A)return;e[s.zN]?.();const n=e[s.Qy],a=n[s.Dr];let o;if(!a)if(t&i.UT.HasLength)this[s.E2]||=e.length,o=this[s.E2];else{o=(n.buffer.byteLength-n.byteOffset)/u|0}if(A<0||A>o)throw new r._L(A,o);const g=A*u,I=a?k.obtainZigView(a.address,g):k.obtainView(n.buffer,n.byteOffset,g),Q=c.constructor;this[s._f][0]=Q.call(s.M0,I),D?.call?.(this,A)}},e.slice=B===i.ev.Slice&&{value(A,e){const t=this[s.Qn].slice(A,e);return new N(t)}},e.subarray=B===i.ev.Slice&&{value(A,e,t){const i=this[s.Qn].subarray(A,e,t);return new N(i)}},e[Symbol.toPrimitive]=B===i.ev.Primitive&&{value(A){return this[s.Qn][Symbol.toPrimitive](A)}},e[s.Zv]=(0,a.vQ)(x),e[s.vm]={value(){const A=B!==i.ev.Pointer?C:{};let e;B===i.ev.Function?(e=function(){},e[s.Qy]=this[s.Qy],e[s._f]=this[s._f],Object.setPrototypeOf(e,N.prototype)):e=this;const t=new Proxy(e,A);return Object.defineProperty(e,s.rG,{value:t}),t}},e[s.Qn]={get:S,set:function(A){if(void 0===A)return;const e=this[s.C7]??this;if(A){const t=A[s.Qy][s.Dr];if(t){const{address:e,js:i}=t;m.call(this,e),D?.call?.(this,A.length),i&&(A[s.Qy][s.Dr]=void 0)}else if(e[s.Qy][s.Dr])throw new r.x1}else e[s.Qy][s.Dr]&&(m.call(this,0),D?.call?.(this,0));e[s._f][0]=A??null,t&i.UT.HasLength&&(e[s.E2]=null)}},e[s.q6]=(0,a.vQ)(d),e[s.BD]={set:m},e[s.pi]={set:D},e[s.g9]=this.defineVisitor(),e[s.c6]=(0,a.vQ)(0),e[s.uL]=(0,a.vQ)(0),e[s.E2]=t&i.UT.HasLength&&(0,a.vQ)(null),e.dataView=e.base64=void 0,N},finalizePointer(A,e){const{flags:t,constructor:n,instance:{members:[I]}}=A,{structure:Q}=I,{type:C,constructor:c}=Q;e.child=c?(0,a.vQ)(c):{get:()=>Q.constructor},e.const=(0,a.vQ)(!!(t&i.UT.IsConst)),e[s.mL]={value(e,a){if(this===s.M0||this===s.f7||e instanceof n)return!1;if(o(e,c))return new n(c(e["*"]),a);if(g(e,c,t))return new n(e);if(C===i.ev.Slice)return new n(c(e),a);throw new r.zy(A)}}}});function o(A,e){return(0,a.xN)(A?.constructor?.child,e)&&A["*"]}function g(A,e,t){if(t&i.UT.IsMultiple){if(A?.constructor?.child?.child===e.child&&A["*"])return!0;if(t&i.UT.IsSingle&&o(A,e.child))return!0}return!1}const I=new WeakMap;function Q(A){let e=I.get(A);if(!e){const t=A[s.C7];e=t?new Proxy(t,c):new Proxy(A,B),I.set(A,e)}return e}const C={get(A,e){if(e===s.C7)return A;if(e in A)return A[e];return A[s.Qn][e]},set(A,e,t){if(e in A)A[e]=t;else{A[s.Qn][e]=t}return!0},deleteProperty(A,e){if(e in A)delete A[e];else{delete A[s.Qn][e]}return!0},has(A,e){if(e in A)return!0;return e in A[s.Qn]},apply:(A,e,t)=>A["*"].apply(e,t)},c={...C,set(A,e,t){if(e in A)(0,r.V0)();else{A[s.Qn][e]=t}return!0}},B={get(A,e){if(e===s.KK)return A;{const t=A[e];return t?.[s.Qy]?Q(t):t}},set(A,e,t){(0,r.V0)()}}},8773:(A,e,t)=>{var i=t(6560),n=t(4762),r=t(4540),s=t(8e3);(0,i.co)({definePrimitive(A,e){const{instance:{members:[t]}}=A,i=this.createApplier(A),{get:a,set:o}=this.defineMember(t),g=function(e){if((0,s.pU)(e,I))this[r.sF](e);else if(e&&"object"==typeof e){if(0===i.call(this,e)){const i=(0,s.BF)(t);throw new n.is(A,i,e)}}else void 0!==e&&o.call(this,e)},I=this.createConstructor(A);return e.$={get:a,set:g},e[r.Zv]=(0,s.vQ)(g),e[Symbol.toPrimitive]=(0,s.vQ)(a),I},finalizePrimitive(A,e){const{instance:{members:[t]}}=A;e[r.Qt]=(0,s.vQ)(t.bitSize),e[r.uT]=(0,s.vQ)(t.type)}})},3086:(A,e,t)=>{var i=t(1388),n=t(6560),r=t(4762),s=t(4540),a=t(8e3);(0,n.co)({defineSlice(A,e){const{align:t,flags:n,byteSize:I,name:Q,instance:{members:[C]}}=A,{byteSize:c,structure:B}=C,l=this,u=function(A,e,i){A||(A=l.allocateMemory(e*c,t,i)),this[s.Qy]=A,this[s.pi]=e},E=function(e,t){if(t!==this[s.pi])throw new r.Y8(A,this,e)},f=this.defineMember(C),{set:h}=f,p=this.createApplier(A),y=function(e,t){if((0,a.pU)(e,m))this[s.Qy]?E.call(this,e,e.length):u.call(this,null,e.length,t),this[s.sF](e),n&i.yi.HasPointer&&this[s.g9]("copy",i.F7.Vivificate,e);else if("string"==typeof e&&n&i.tv.IsString)y.call(this,{string:e},t);else if(e?.[Symbol.iterator]){e=(0,a.FU)(e),this[s.Qy]?E.call(this,e,e.length):u.call(this,null,e.length,t);let A=0;for(const i of e)m[s.fd]?.validateValue(i,A,e.length),h.call(this,A++,i,t)}else if("number"==typeof e){if(!(!this[s.Qy]&&e>=0&&isFinite(e)))throw new r.L2(A,e,!this[s.Qy]);u.call(this,null,e,t)}else if(e&&"object"==typeof e){if(0===p.call(this,e,t))throw new r.L2(A,e)}else if(void 0!==e)throw new r.L2(A,e)},d=function(A,e){const t=this[s.pi],i=this[s.Qy];A=void 0===A?0:g(A,t),e=void 0===e?t:g(e,t);const n=A*c,r=e*c-n;return l.obtainView(i.buffer,i.byteOffset+n,r)},m=this.createConstructor(A);return e.$={get:a.V_,set:y},e.length={get:o},n&i.tv.IsTypedArray&&(e.typedArray=this.defineTypedArray(A),n&i.tv.IsString&&(e.string=this.defineString(A)),n&i.tv.IsClampedArray&&(e.clampedArray=this.defineClampedArray(A))),e.entries=e[s.lf]=this.defineArrayEntries(),e.subarray={value(A,e){const t=d.call(this,A,e);return m(t)}},e.slice={value(A,e,i={}){const{zig:n=!1}=i,r=d.call(this,A,e),a=l.allocateMemory(r.byteLength,t,n),o=m(a);return o[s.sF]({[s.Qy]:r}),o}},e[Symbol.iterator]=this.defineArrayIterator(),e[s.IW]=(0,a.vQ)(u),e[s.sF]=this.defineCopier(I,!0),e[s.Zv]=(0,a.vQ)(y),e[s.vm]=this.defineFinalizerArray(f),e[s.tZ]=n&i.yi.HasObject&&this.defineVivificatorArray(A),e[s.g9]=n&i.yi.HasPointer&&this.defineVisitorArray(),m},finalizeSlice(A,e){const{flags:t,instance:{members:[n]}}=A;e.child=(0,a.vQ)(n.structure.constructor),e[s.fd]=t&i.tv.HasSentinel&&this.defineSentinel(A)}});function o(){return this[s.pi]}function g(A,e){return(A|=0)<0?(A=e+A)<0&&(A=0):A>e&&(A=e),A}},8991:(A,e,t)=>{var i=t(1388),n=t(6560),r=t(4762),s=t(4540);(0,n.co)({defineVivificatorStruct(A){const{instance:{members:e}}=A,t={};for(const A of e.filter((A=>A.type===i.Z9.Object)))t[A.slot]=A;const n=this;return{value(A){const e=t[A],{bitOffset:i,byteSize:a,structure:{constructor:o}}=e;this[s.zN]?.();const g=this[s.Qy],I=g.byteOffset+(i>>3);let Q=a;if(void 0===Q){if(7&i)throw new r.Vp(e);Q=e.bitSize>>3}const C=n.obtainView(g.buffer,I,Q);return this[s._f][A]=o.call(s.f7,C)}}}})},8771:(A,e,t)=>{var i=t(1388),n=t(6560),r=t(4762),s=t(4540),a=t(8e3);(0,n.co)({defineStruct(A,e){const{flags:t,length:n,instance:{members:o}}=A,g=o.find((A=>A.flags&i.pK.IsBackingInt)),I=g&&this.defineMember(g),Q=this.createApplier(A),C=function(e,n){if((0,a.pU)(e,c))this[s.sF](e),t&i.yi.HasPointer&&this[s.g9]("copy",0,e);else if(e&&"object"==typeof e)Q.call(this,e,n);else if("number"!=typeof e&&"bigint"!=typeof e||!I){if(void 0!==e)throw new r.is(A,"object",e)}else I.set.call(this,e)},c=this.createConstructor(A),B=e[s.Bl].value,l=e[s.Rk].value,u=[];for(const A of o.filter((A=>!!A.name))){const{name:t,flags:n}=A,{set:r}=e[t]=this.defineMember(A);r&&(n&i.pK.IsRequired&&(r.required=!0),B[t]=r,l.push(t)),u.push(t)}return e.$={get:a.Ng,set:C},e.length=(0,a.vQ)(n),e.entries=t&i.sU.IsTuple&&this.defineVectorEntries(),e[Symbol.toPrimitive]=I&&{value(A){return"string"===A?Object.prototype.toString.call(this):I.get.call(this)}},e[Symbol.iterator]=t&i.sU.IsIterator?this.defineZigIterator():t&i.sU.IsTuple?this.defineVectorIterator():this.defineStructIterator(),e[s.Zv]=(0,a.vQ)(C),e[s.tZ]=t&i.yi.HasObject&&this.defineVivificatorStruct(A),e[s.g9]=t&i.yi.HasPointer&&this.defineVisitorStruct(o),e[s.lf]=t&i.sU.IsTuple?this.defineVectorEntries():this.defineStructEntries(),e[s.n5]=(0,a.vQ)(u),t&i.sU.IsAllocator&&(e.alloc=this.defineAlloc(),e.free=this.defineFree(),e.dupe=this.defineDupe()),c}})},2799:(A,e,t)=>{var i=t(1388),n=t(6560),r=t(4762),s=t(4540),a=t(8e3);(0,n.co)({defineUnion(A,e){const{flags:t,instance:{members:n}}=A,o=!!(t&i.M_.HasSelector),I=o?n.slice(0,-1):n,Q=o?n[n.length-1]:null,{get:C,set:c}=this.defineMember(Q),{get:B}=this.defineMember(Q,!1),l=t&i.M_.HasTag?function(){return C.call(this)[s.o_]}:function(){const A=C.call(this);return I[A].name},u=t&i.M_.HasTag?function(A){const{constructor:e}=Q.structure;c.call(this,e[A])}:function(A){const e=I.findIndex((e=>e.name===A));c.call(this,e)},E=this.createApplier(A),f=function(e,n){if((0,a.pU)(e,h))this[s.sF](e),t&i.yi.HasPointer&&this[s.g9]("copy",i.F7.Vivificate,e);else if(e&&"object"==typeof e){let t=0;for(const A of m)A in e&&t++;if(t>1)throw new r.Z6(A);if(0===E.call(this,e,n))throw new r.if(A,e,o)}else if(void 0!==e)throw new r.is(A,"object with a single property",e)},h=this.createConstructor(A),p={},y=e[s.Bl].value,d=e[s.Rk].value,m=[];for(const n of I){const{name:a}=n,{get:g,set:I}=this.defineMember(n),Q=o?function(){const e=l.call(this);if(a!==e){if(t&i.M_.HasTag)return null;throw new r.it(A,a,e)}return this[s.g9]?.("clear"),g.call(this)}:g,C=o&&I?function(e){const t=l.call(this);if(a!==t)throw new r.it(A,a,t);I.call(this,e)}:I,c=o&&I?function(A){u.call(this,a),I.call(this,A),this[s.g9]?.("clear")}:I;e[a]={get:Q,set:C},y[a]=c,p[a]=g,d.push(a),m.push(a)}e.$={get:function(){return this},set:f},e[Symbol.iterator]=t&i.M_.IsIterator?this.defineZigIterator():this.defineUnionIterator(),e[Symbol.toPrimitive]=t&i.M_.HasTag&&{value(A){switch(A){case"string":case"default":return l.call(this);default:return B.call(this)}}};const{comptime:b}=this;return e[s.f$]=t&i.M_.HasInaccessible&&{value(){return b||this[s.g9](g),this[s.g9]=a.Ie,this}},e[s.Zv]=(0,a.vQ)(f),e[s.Dk]=t&i.M_.HasTag&&{get:C,set:c},e[s.tZ]=t&i.yi.HasObject&&this.defineVivificatorStruct(A),e[s.g9]=t&i.yi.HasPointer&&this.defineVisitorUnion(I,t&i.M_.HasTag?B:null),e[s.lf]=this.defineUnionEntries(),e[s.n5]=t&i.M_.HasTag?{get(){return[l.call(this)]}}:(0,a.vQ)(m),e[s.XS]=(0,a.vQ)(p),h},finalizeUnion(A,e){const{flags:t,instance:{members:n}}=A;t&i.M_.HasTag&&(e.tag=(0,a.vQ)(n[n.length-1].structure.constructor))}});function o(){throw new r.b$}function g(){const A={get:o,set:o};(0,a.ny)(this[s.C7],{"*":A,$:A,[s.C7]:A,[s.Qn]:A})}},4233:(A,e,t)=>{var i=t(1388),n=t(6560),r=t(4762),s=t(4540),a=t(8e3);(0,n.co)({defineVector(A,e){const{flags:t,length:n,instance:{members:[o]}}=A,g=this.createApplier(A),I=function(e){if((0,a.pU)(e,Q))this[s.sF](e),t&i.yi.HasPointer&&this[s.g9]("copy",i.F7.Vivificate,e);else if(e?.[Symbol.iterator]){let t=e.length;if("number"!=typeof t&&(t=(e=[...e]).length),t!==n)throw new r.Y8(A,this,e);let i=0;for(const A of e)this[i++]=A}else if(e&&"object"==typeof e){if(0===g.call(this,e))throw new r.L2(A,e)}else if(void 0!==e)throw new r.L2(A,e)},Q=this.createConstructor(A,{initializer:I}),{bitSize:C}=o;for(let A=0,r=0;A<n;A++,r+=C)t&i.yi.HasPointer?e[A]=this.defineMember({...o,slot:A}):e[A]=this.defineMember({...o,bitOffset:r});return e.$={get:a.Ng,set:I},e.length=(0,a.vQ)(n),t&i.sl.IsTypedArray&&(e.typedArray=this.defineTypedArray(A),t&i.sl.IsClampedArray&&(e.clampedArray=this.defineClampedArray(A))),e.entries=e[s.lf]=this.defineVectorEntries(),e[Symbol.iterator]=this.defineVectorIterator(),e[s.Zv]=(0,a.vQ)(I),e[s.tZ]=t&i.yi.HasObject&&this.defineVivificatorArray(A),e[s.g9]=t&i.yi.HasPointer&&this.defineVisitorArray(),Q},finalizeVector(A,e){const{instance:{members:[t]}}=A;e.child=(0,a.vQ)(t.structure.constructor)}})},4540:(A,e,t)=>{t.d(e,{BD:()=>m,Bl:()=>L,C7:()=>u,Dk:()=>B,Dr:()=>g,E2:()=>y,Ec:()=>N,Gz:()=>K,IW:()=>j,J2:()=>T,KK:()=>U,M0:()=>G,Qn:()=>h,Qt:()=>x,Qy:()=>s,Rk:()=>d,SK:()=>k,Ut:()=>V,Wg:()=>C,XS:()=>F,ZE:()=>Q,Zv:()=>Z,_d:()=>O,_f:()=>a,c6:()=>D,du:()=>q,eR:()=>J,f$:()=>$,f7:()=>o,fM:()=>H,fV:()=>v,fd:()=>E,g9:()=>W,iw:()=>M,lf:()=>p,mL:()=>eA,n5:()=>l,o_:()=>I,pM:()=>z,pi:()=>b,q6:()=>Y,rG:()=>w,sF:()=>X,sO:()=>f,tZ:()=>_,tp:()=>c,uL:()=>S,uT:()=>R,vm:()=>AA,wg:()=>iA,zN:()=>P,zg:()=>tA});const i=globalThis[Symbol.for("ZIGAR")]||={};function n(A){return i[A]||=Symbol(A)}function r(A){return n(A)}const s=r("memory"),a=r("slots"),o=r("parent"),g=r("zig"),I=r("name"),Q=r("type"),C=r("flags"),c=r("class"),B=r("tag"),l=r("props"),u=r("pointer"),E=r("sentinel"),f=r("array"),h=(r("items"),r("target")),p=r("entries"),y=r("max length"),d=r("keys"),m=r("address"),b=r("length"),D=r("last address"),S=r("last length"),w=r("proxy"),v=r("cache"),k=r("size"),x=r("bit size"),N=r("align"),U=r("const target"),G=r("environment"),M=r("attributes"),R=r("primitive"),F=r("getters"),L=r("setters"),z=r("typed array"),q=r("throwing"),J=r("promise"),O=r("generator"),K=r("allocator"),T=(r("fallback"),r("signature")),H=r("string retval"),Y=r("update"),P=r("restore"),V=r("reset"),_=r("vivificate"),W=r("visit"),X=r("copy"),j=r("shape"),Z=r("initialize"),$=r("restrict"),AA=r("finalize"),eA=r("cast"),tA=r("return"),iA=r("yield")},8e3:(A,e,t)=>{t.d(e,{$k:()=>h,Au:()=>m,BF:()=>g,FU:()=>b,Fy:()=>p,Ie:()=>U,L9:()=>o,NV:()=>v,Ng:()=>k,UF:()=>G,V_:()=>x,WG:()=>C,Y$:()=>y,ZG:()=>u,be:()=>D,cv:()=>d,dI:()=>N,g7:()=>I,hJ:()=>f,n8:()=>r,ny:()=>s,on:()=>E,pU:()=>w,vQ:()=>a,wx:()=>Q,xN:()=>S,y4:()=>c});var i=t(1388),n=t(4540);function r(A,e,t){if(t){const{set:i,get:n,value:r,enumerable:s,configurable:a=!0,writable:o=!0}=t;Object.defineProperty(A,e,n||i?{get:n,set:i,configurable:a,enumerable:s}:{value:r,configurable:a,enumerable:s,writable:o})}return A}function s(A,e){for(const[t,i]of Object.entries(e))r(A,t,i);for(const t of Object.getOwnPropertySymbols(e)){r(A,t,e[t])}return A}function a(A){return void 0!==A?{value:A}:void 0}function o(A){return"return"===A?.error?A=>{try{return A()}catch(A){return A}}:A=>A()}function g({type:A,bitSize:e}){switch(A){case i.Z9.Bool:return"boolean";case i.Z9.Int:case i.Z9.Uint:if(e>32)return"bigint";case i.Z9.Float:return"number"}}function I(A,e="utf-8"){const t=B[e]||=new TextDecoder(e);let i;if(Array.isArray(A))if(1===A.length)i=A[0];else{let e=0;for(const t of A)e+=t.length;const{constructor:t}=A[0];i=new t(e);let n=0;for(const e of A)i.set(e,n),n+=e.length}else i=A;return"SharedArrayBuffer"===i.buffer[Symbol.toStringTag]&&(i=new i.constructor(i)),t.decode(i)}function Q(A,e="utf-8"){if("utf-16"===e){const{length:e}=A,t=new Uint16Array(e);for(let i=0;i<e;i++)t[i]=A.charCodeAt(i);return t}return(l[e]||=new TextEncoder).encode(A)}function C(A){const e=new Uint8Array(A.buffer,A.byteOffset,A.byteLength),t=String.fromCharCode.apply(null,e);return btoa(t)}function c(A){const e=atob(A),t=new Uint8Array(e.length);for(let A=0;A<t.byteLength;A++)t[A]=e.charCodeAt(A);return new DataView(t.buffer)}const B={},l={};function u(A,e,t){let i=0,n=A.length;if(0===n)return 0;for(;i<n;){const r=Math.floor((i+n)/2);t(A[r])<=e?i=r+1:n=r}return n}const E=function(A,e){return!!e&&!!(A&e-1)},f=function(A,e){return A+(e-1)&~(e-1)},h=0,p=4294967295,y=-1,d=function(A){return 2863311530===A||-1431655766===A},m=function(A,e){return A+e};function b(A){if("number"==typeof A.length)return A;const e=A[Symbol.iterator](),t=e.next(),i=t.value?.length;if("number"==typeof i&&"length"===Object.keys(t.value).join())return Object.assign(function*(){let A;for(;!(A=e.next()).done;)yield A.value}(),{length:i});{const A=[];let i=t;for(;!i.done;)A.push(i.value),i=e.next();return A}}function D(A,e){const{constructor:t}=A;return t===e?1:t.child===e?A.length:void 0}function S(A,e){return A===e||A?.[n.J2]===e[n.J2]&&A?.[n.M0]!==e?.[n.M0]}function w(A,e){return A instanceof e||S(A?.constructor,e)}function v({get:A,set:e}){return A.special=e.special=!0,{get:A,set:e}}function k(){return this}function x(){return this[n.rG]}function N(){return String(this)}function U(){}class G{map=new WeakMap;find(A){return this.map.get(A)}save(A,e){return this.map.set(A,e),e}}},8502:(A,e,t)=>{t.d(e,{k:()=>a});var i=t(1388),n=t(6560),r=t(4762),s=t(4540);(0,n.co)({defineVisitor:()=>({value(A,e,t){let i;i="string"==typeof A?o[A]:A,i.call(this,e,t)}})});function a(A,e,t,n){let r,a=this[s._f][A];if(!a){if(t&i.F7.IgnoreUncreated)return;a=this[s.tZ](A)}n&&(r=n[s._f][A],!r)||a[s.g9](e,t,r)}const o={copy(A,e){const t=e[s._f][0];if(this[s.Qy][s.Dr]&&t&&!t[s.Qy][s.Dr])throw new r.x1;this[s._f][0]=t},clear(A){A&i.F7.IsInactive&&(this[s._f][0]=void 0)},reset(){this[s._f][0]=void 0,this[s.c6]=void 0}}},9025:(A,e,t)=>{var i=t(1388),n=t(6560),r=t(8502);(0,n.co)({defineVisitorArgStruct(A){const e=[];let t;for(const[n,{slot:r,structure:s}]of A.entries())s.flags&i.yi.HasPointer&&(0===n?t=r:e.push(r));return{value(A,n,s){if(!(n&i.F7.IgnoreArguments)&&e.length>0)for(const t of e)r.k.call(this,t,A,n|i.F7.IsImmutable,s);n&i.F7.IgnoreRetval||void 0===t||r.k.call(this,t,A,n,s)}}}})},9426:(A,e,t)=>{var i=t(6560),n=t(8502);(0,i.co)({defineVisitorArray:()=>({value(A,e,t){for(let i=0,r=this.length;i<r;i++)n.k.call(this,i,A,e,t)}})})},2059:(A,e,t)=>{var i=t(1388),n=t(6560),r=t(8502);(0,n.co)({defineVisitorErrorUnion(A,e){const{slot:t}=A;return{value(A,n,s){e.call(this)&&(n|=i.F7.IsInactive),n&i.F7.IsInactive&&n&i.F7.IgnoreInactive||r.k.call(this,t,A,n,s)}}}})},1991:(A,e,t)=>{var i=t(1388),n=t(6560),r=t(8502);(0,n.co)({defineVisitorOptional(A,e){const{slot:t}=A;return{value(A,n,s){e.call(this)||(n|=i.F7.IsInactive),n&i.F7.IsInactive&&n&i.F7.IgnoreInactive||r.k.call(this,t,A,n,s)}}}})},5558:(A,e,t)=>{var i=t(1388),n=t(6560),r=t(8502);(0,n.co)({defineVisitorStruct(A){const e=A.filter((A=>A.structure?.flags&i.yi.HasPointer)).map((A=>A.slot));return{value(A,t,i){for(const n of e)r.k.call(this,n,A,t,i)}}}})},6584:(A,e,t)=>{var i=t(1388),n=t(6560),r=t(8502);(0,n.co)({defineVisitorUnion(A,e){const t=[];for(const[e,{slot:n,structure:r}]of A.entries())r?.flags&i.yi.HasPointer&&t.push({index:e,slot:n});return{value(A,n,s){const a=e?.call(this);for(const{index:e,slot:o}of t){let t=n;e!==a&&(t|=i.F7.IsInactive),t&i.F7.IsInactive&&t&i.F7.IgnoreInactive||r.k.call(this,o,A,t,s)}}}}})}},r={};function s(A){var e=r[A];if(void 0!==e)return e.exports;var t=r[A]={exports:{}};return n[A](t,t.exports,s),t.exports}A="function"==typeof Symbol?Symbol("webpack queues"):"__webpack_queues__",e="function"==typeof Symbol?Symbol("webpack exports"):"__webpack_exports__",t="function"==typeof Symbol?Symbol("webpack error"):"__webpack_error__",i=A=>{A&&A.d<1&&(A.d=1,A.forEach((A=>A.r--)),A.forEach((A=>A.r--?A.r++:A())))},s.a=(n,r,s)=>{var a;s&&((a=[]).d=-1);var o,g,I,Q=new Set,C=n.exports,c=new Promise(((A,e)=>{I=e,g=A}));c[e]=C,c[A]=A=>(a&&A(a),Q.forEach(A),c.catch((A=>{}))),n.exports=c,r((n=>{var r;o=(n=>n.map((n=>{if(null!==n&&"object"==typeof n){if(n[A])return n;if(n.then){var r=[];r.d=0,n.then((A=>{s[e]=A,i(r)}),(A=>{s[t]=A,i(r)}));var s={};return s[A]=A=>A(r),s}}var a={};return a[A]=A=>{},a[e]=n,a})))(n);var s=()=>o.map((A=>{if(A[t])throw A[t];return A[e]})),g=new Promise((e=>{(r=()=>e(s)).r=0;var t=A=>A!==a&&!Q.has(A)&&(Q.add(A),A&&!A.d&&(r.r++,A.push(r)));o.map((e=>e[A](t)))}));return r.r?g:s()}),(A=>(A?I(c[t]=A):g(C),i(a)))),a&&a.d<0&&(a.d=0)},s.d=(A,e)=>{for(var t in e)s.o(e,t)&&!s.o(A,t)&&Object.defineProperty(A,t,{enumerable:!0,get:e[t]})},s.o=(A,e)=>Object.prototype.hasOwnProperty.call(A,e),(()=>{var A;if("string"==typeof import.meta.url&&(A=import.meta.url),!A)throw new Error("Automatic publicPath is not supported in this browser");A=A.replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),s.p=A})();var a=s(8156),o=(a=await a).b,g=a.A;export{o as CreatorTool,g as default};
|
|
2
2
|
//# sourceMappingURL=index.mjs.map
|