text-shaper 0.1.11 → 0.1.12
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/dist/index.js +6 -6
- package/dist/raster/gray-raster.d.ts +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
var{defineProperty:R1,getOwnPropertyNames:mW,getOwnPropertyDescriptor:gW}=Object,uW=Object.prototype.hasOwnProperty;var VQ=new WeakMap,j0=($)=>{var Q=VQ.get($),Z;if(Q)return Q;if(Q=R1({},"__esModule",{value:!0}),$&&typeof $==="object"||typeof $==="function")mW($).map((K)=>!uW.call(Q,K)&&R1(Q,K,{get:()=>$[K],enumerable:!(Z=gW($,K))||Z.enumerable}));return VQ.set($,Q),Q};var XQ=($,Q)=>{for(var Z in Q)R1($,Z,{get:Q[Z],enumerable:!0,configurable:!0,set:(K)=>Q[Z]=()=>K})};var D9=($,Q)=>()=>($&&(Q=$($=0)),Q);var S9={};XQ(S9,{createBottomUpBitmap:()=>a7,createBitmap:()=>a,clearBitmap:()=>Y5,PixelMode:()=>D6,FillRule:()=>J8});function a($,Q,Z=1){let K;switch(Z){case 0:K=0.125;break;case 1:K=1;break;case 2:case 3:K=3;break;case 4:K=4;break}let J=Z===0?Math.ceil($/8):$*K;return{buffer:new Uint8Array(J*Q),width:$,rows:Q,pitch:J,pixelMode:Z,numGrays:Z===0?2:256}}function Y5($){$.buffer.fill(0)}function a7($,Q,Z=1){let K=a($,Q,Z);return K.pitch=-K.pitch,K}var D6,J8;var
|
|
1
|
+
var{defineProperty:R1,getOwnPropertyNames:mW,getOwnPropertyDescriptor:gW}=Object,uW=Object.prototype.hasOwnProperty;var VQ=new WeakMap,j0=($)=>{var Q=VQ.get($),Z;if(Q)return Q;if(Q=R1({},"__esModule",{value:!0}),$&&typeof $==="object"||typeof $==="function")mW($).map((K)=>!uW.call(Q,K)&&R1(Q,K,{get:()=>$[K],enumerable:!(Z=gW($,K))||Z.enumerable}));return VQ.set($,Q),Q};var XQ=($,Q)=>{for(var Z in Q)R1($,Z,{get:Q[Z],enumerable:!0,configurable:!0,set:(K)=>Q[Z]=()=>K})};var D9=($,Q)=>()=>($&&(Q=$($=0)),Q);var S9={};XQ(S9,{createBottomUpBitmap:()=>a7,createBitmap:()=>a,clearBitmap:()=>Y5,PixelMode:()=>D6,FillRule:()=>J8});function a($,Q,Z=1){let K;switch(Z){case 0:K=0.125;break;case 1:K=1;break;case 2:case 3:K=3;break;case 4:K=4;break}let J=Z===0?Math.ceil($/8):$*K;return{buffer:new Uint8Array(J*Q),width:$,rows:Q,pitch:J,pixelMode:Z,numGrays:Z===0?2:256}}function Y5($){$.buffer.fill(0)}function a7($,Q,Z=1){let K=a($,Q,Z);return K.pitch=-K.pitch,K}var D6,J8;var G6=D9(()=>{((q)=>{q[q.Mono=0]="Mono";q[q.Gray=1]="Gray";q[q.LCD=2]="LCD";q[q.LCD_V=3]="LCD_V";q[q.RGBA=4]="RGBA"})(D6||={});((Z)=>{Z[Z.NonZero=0]="NonZero";Z[Z.EvenOdd=1]="EvenOdd"})(J8||={})});var h5,p9;var BJ=D9(()=>{h5=new Uint8Array([0,0,0,0,0,0,0,0,0,4,4,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,12,16,12,12,20,12,16,24,28,12,12,32,12,36,12,44,44,44,44,44,44,44,44,44,44,32,32,24,40,28,12,12,48,52,52,52,48,52,52,52,48,52,52,52,52,52,48,52,52,52,52,52,48,52,52,52,52,52,24,12,28,12,12,12,56,60,60,60,56,60,60,60,56,60,60,60,60,60,56,60,60,60,60,60,56,60,60,60,60,60,24,12,28,12,0,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,2,3,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,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,1,1,1,1,1,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,1,1,1,1,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,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,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,0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,7,0,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,56,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,6,6,6,6,7,7,7,7,8,8,8,8,9,9,9,9,10,10,10,10,11,11,11,11,12,12,12,12,13,13,13,13,14,14,14,14,15,15,15,15,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,22,22,22,22,23,23,23,23,24,24,24,24,25,25,25,25,26,26,26,26,27,27,27,27,28,28,28,28,29,29,29,29,30,30,30,30,31,31,31,31,32,32,32,32,33,33,33,33,34,34,34,34,35,35,35,35,36,36,36,36,37,37,37,37,38,38,38,38,39,39,39,39,40,40,40,40,41,41,41,41,42,42,42,42,43,43,43,43,44,44,44,44,45,45,45,45,46,46,46,46,47,47,47,47,48,48,48,48,49,49,49,49,50,50,50,50,51,51,51,51,52,52,52,52,53,53,53,53,54,54,54,54,55,55,55,55,56,56,56,56,57,57,57,57,58,58,58,58,59,59,59,59,60,60,60,60,61,61,61,61,62,62,62,62,63,63,63,63,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,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,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,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,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,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,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,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,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,0,0,0,0]),p9=new Uint16Array([1024,1536,1280,1536,0,256,768,512])});var MJ,RJ,TJ;var OJ=D9(()=>{MJ=new Uint32Array([0,0,0,0,0,4096,9216,21504,35840,44032,53248,63488,74752,87040,93696,100864,104704,106752,108928,113536,115968,118528,119872,121280,122016]),RJ=new Uint8Array([0,0,0,0,10,10,11,11,10,10,10,10,10,9,9,8,7,7,8,7,7,6,6,5,5]),TJ=new Uint8Array(122784)});function h($,Q,Z){let K=new Uint8Array($.length),J=new Uint8Array(Z.length);for(let q=0;q<$.length;q++)K[q]=$.charCodeAt(q);for(let q=0;q<Z.length;q++)J[q]=Z.charCodeAt(q);return{prefix:K,transform:Q,suffix:J}}function PJ($,Q){if($[Q]<192){if($[Q]>=97&&$[Q]<=122)$[Q]^=32;return 1}if($[Q]<224)return $[Q+1]^=32,2;return $[Q+2]^=5,3}function vJ($,Q,Z,K,J,q){let U=y5[J],W=U.transform,H=W<12?0:W-11,_=Q;if(H>K)H=K;for(let j=0;j<U.prefix.length;j++)$[Q++]=U.prefix[j];let N=Z+H,V=K-H;if(W<=9)V-=W;for(let j=0;j<V;j++)$[Q++]=q[N+j];let X=Q-V;if(W===10)PJ($,X);else if(W===11)while(V>0){let j=PJ($,X);X+=j,V-=j}for(let j=0;j<U.suffix.length;j++)$[Q++]=U.suffix[j];return Q-_}var y5;var IJ=D9(()=>{y5=[h("",0,""),h("",0," "),h(" ",0," "),h("",12,""),h("",10," "),h("",0," the "),h(" ",0,""),h("s ",0," "),h("",0," of "),h("",10,""),h("",0," and "),h("",13,""),h("",1,""),h(", ",0," "),h("",0,", "),h(" ",10," "),h("",0," in "),h("",0," to "),h("e ",0," "),h("",0,'"'),h("",0,"."),h("",0,'">'),h("",0,`
|
|
2
2
|
`),h("",3,""),h("",0,"]"),h("",0," for "),h("",14,""),h("",2,""),h("",0," a "),h("",0," that "),h(" ",10,""),h("",0,". "),h(".",0,""),h(" ",0,", "),h("",15,""),h("",0," with "),h("",0,"'"),h("",0," from "),h("",0," by "),h("",16,""),h("",17,""),h(" the ",0,""),h("",4,""),h("",0,". The "),h("",11,""),h("",0," on "),h("",0," as "),h("",0," is "),h("",7,""),h("",1,"ing "),h("",0,`
|
|
3
|
-
`),h("",0,":"),h(" ",0,". "),h("",0,"ed "),h("",20,""),h("",18,""),h("",6,""),h("",0,"("),h("",10,", "),h("",8,""),h("",0," at "),h("",0,"ly "),h(" the ",0," of "),h("",5,""),h("",9,""),h(" ",10,", "),h("",10,'"'),h(".",0,"("),h("",11," "),h("",10,'">'),h("",0,'="'),h(" ",0,"."),h(".com/",0,""),h(" the ",0," of the "),h("",10,"'"),h("",0,". This "),h("",0,","),h(".",0," "),h("",10,"("),h("",10,"."),h("",0," not "),h(" ",0,'="'),h("",0,"er "),h(" ",11," "),h("",0,"al "),h(" ",11,""),h("",0,"='"),h("",11,'"'),h("",10,". "),h(" ",0,"("),h("",0,"ful "),h(" ",10,". "),h("",0,"ive "),h("",0,"less "),h("",11,"'"),h("",0,"est "),h(" ",10,"."),h("",11,'">'),h(" ",0,"='"),h("",10,","),h("",0,"ize "),h("",11,"."),h("Â ",0,""),h(" ",0,","),h("",10,'="'),h("",11,'="'),h("",0,"ous "),h("",11,", "),h("",10,"='"),h(" ",10,","),h(" ",11,'="'),h(" ",11,", "),h("",11,","),h("",11,"("),h("",11,". "),h(" ",11,"."),h("",11,"='"),h(" ",11,". "),h(" ",10,'="'),h(" ",11,"='"),h(" ",10,"='")]});var mJ={};XQ(mJ,{decompress:()=>q_,__testing:()=>U_});class x5{data;buf;pos=0;val=0;bitPos=0;bitEndPos=0;eos=!1;constructor($){this.data=$;this.buf=new Uint8Array(8224),this.fillBuffer();for(let Q=0;Q<4;Q++)this.val|=this.buf[this.pos]<<8*Q,this.pos++}fillBuffer(){if(this.bitEndPos>256)return;if(this.eos){if(this.bitPos>this.bitEndPos)throw Error("Unexpected end of input");return}let $=this.data.length-this.pos,Q=Math.min(4096,$);if(Q>0)this.buf.set(this.data.subarray(this.pos,this.pos+Q),0),this.pos=0;if(Q<4096){this.eos=!0;for(let Z=0;Z<32;Z++)this.buf[Q+Z]=0}this.bitEndPos+=Q<<3}readMoreInput(){if(this.bitEndPos>256)return;if(this.eos){if(this.bitPos>this.bitEndPos)throw Error("Unexpected end of input");return}let $=this.pos&4095,Q=Math.min(4096,this.data.length-(this.pos&-4096));if(Q>0){let Z=this.pos&-4096;this.buf.set(this.data.subarray(Z,Z+Q),$===0?0:4096)}if(Q<4096){this.eos=!0;for(let Z=0;Z<32;Z++)this.buf[$+Q+Z]=0}this.bitEndPos+=Q<<3}fillBitWindow(){while(this.bitPos>=8)this.val>>>=8,this.val|=this.buf[this.pos&8191]<<24,this.pos++,this.bitPos-=8,this.bitEndPos-=8}readBits($){if(32-this.bitPos<$)this.fillBitWindow();let Q=this.val>>>this.bitPos&(1<<$)-1;return this.bitPos+=$,Q}get currentBitPos(){return this.bitPos}set currentBitPos($){this.bitPos=$}get currentVal(){return this.val}}function f5($,Q,Z,K,J){let U=new Int32Array(16),W=new Int32Array(16),H=new Int32Array(J);for(let E=0;E<J;E++)U[K[E]]++;W[1]=0;for(let E=1;E<15;E++)W[E+1]=W[E]+U[E];for(let E=0;E<J;E++)if(K[E]!==0)H[W[K[E]]++]=E;let _=Z,N=1<<_,V=N;if(W[15]===1){for(let E=0;E<V;E++)$[Q+E]={bits:0,value:H[0]&65535};return V}let X=0,j=0;for(let E=1,w=2;E<=Z;E++,w<<=1)for(;U[E]>0;U[E]--){let F={bits:E&255,value:H[j++]&65535};u5($,Q+X,w,N,F),X=g5(X,E)}let z=V-1,G=-1,Y=Q;for(let E=Z+1,w=2;E<=15;E++,w<<=1)for(;U[E]>0;U[E]--){if((X&z)!==G)Y+=N,_=hJ(U,E,Z),N=1<<_,V+=N,G=X&z,$[Q+G]={bits:_+Z&255,value:Y-Q-G&65535};let F={bits:E-Z&255,value:H[j++]&65535};u5($,Y+(X>>Z),w,N,F),X=g5(X,E)}return V}function g5($,Q){let Z=1<<Q-1;while($&Z)Z>>=1;return($&Z-1)+Z}function u5($,Q,Z,K,J){do K-=Z,$[Q+K]={bits:J.bits,value:J.value};while(K>0)}function hJ($,Q,Z){let K=1<<Q-Z;while(Q<15){if(K-=$[Q],K<=0)break;Q++,K<<=1}return Q-Z}function w8($,Q,Z){Z.fillBitWindow();let K=Q+(Z.currentVal>>>Z.currentBitPos&s4),J=$[K].bits-m5;if(J>0)Z.currentBitPos+=m5,K+=$[K].value,K+=Z.currentVal>>>Z.currentBitPos&(1<<J)-1;return Z.currentBitPos+=$[K].bits,$[K].value}function yJ($){if($.readBits(1)){let Q=$.readBits(3);if(Q===0)return 1;return $.readBits(Q)+(1<<Q)}return 0}function Z_($){if($.readBits(1)===0)return 16;let Q=$.readBits(3);if(Q>0)return 17+Q;if(Q=$.readBits(3),Q>0)return 8+Q;return 17}function K_($){let Q=$.readBits(1)===1;if(Q&&$.readBits(1))return{length:0,isLast:!0,isUncompressed:!1,isMetadata:!1};let Z=$.readBits(2)+4;if(Z===7){if($.readBits(1)!==0)throw Error("Invalid reserved bit");let q=$.readBits(2);if(q===0)return{length:0,isLast:Q,isUncompressed:!1,isMetadata:!0};let U=0;for(let W=0;W<q;W++){let H=$.readBits(8);if(W+1===q&&q>1&&H===0)throw Error("Invalid size byte");U|=H<<W*8}return{length:U+1,isLast:Q,isUncompressed:!1,isMetadata:!0}}let K=0;for(let q=0;q<Z;q++){let U=$.readBits(4);if(q+1===Z&&Z>4&&U===0)throw Error("Invalid size nibble");K|=U<<q*4}K++;let J=!Q?$.readBits(1)===1:!1;return{length:K,isLast:Q,isUncompressed:J,isMetadata:!1}}function bJ($,Q,Z,K){let U=0,W=8,H=0,_=0,N=32768,V=[];for(let X=0;X<32;X++)V.push({bits:0,value:0});f5(V,0,5,$,d0);while(U<Q&&N>0){K.readMoreInput(),K.fillBitWindow();let X=K.currentVal>>>K.currentBitPos&31;K.currentBitPos+=V[X].bits;let j=V[X].value&255;if(j<16){if(H=0,Z[U++]=j,j!==0)W=j,N-=32768>>j}else{let z=j-14,G=0;if(j===16)G=W;if(_!==G)H=0,_=G;let Y=H;if(H>0)H-=2,H<<=z;H+=K.readBits(z)+3;let E=H-Y;if(U+E>Q)throw Error("Symbol overflow");for(let w=0;w<E;w++)Z[U+w]=_;if(U+=E,_!==0)N-=E<<15-_}}if(N!==0)throw Error("Invalid code lengths");for(;U<Q;U++)Z[U]=0}function n0($,Q,Z,K){let J=new Uint8Array($);K.readMoreInput();let q=K.readBits(2);if(q===1){let U=$-1,W=0;while(U)U>>=1,W++;let H=new Int32Array(4),_=K.readBits(2)+1;for(let N=0;N<_;N++)H[N]=K.readBits(W)%$,J[H[N]]=2;switch(J[H[0]]=1,_){case 2:if(H[0]===H[1])throw Error("Invalid symbols");J[H[1]]=1;break;case 4:if(K.readBits(1))J[H[2]]=3,J[H[3]]=3;else J[H[0]]=2;break}}else{let U=new Uint8Array(d0),W=32,H=0,_=[{bits:2,value:0},{bits:2,value:4},{bits:2,value:3},{bits:3,value:2},{bits:2,value:0},{bits:2,value:4},{bits:2,value:3},{bits:4,value:1},{bits:2,value:0},{bits:2,value:4},{bits:2,value:3},{bits:3,value:2},{bits:2,value:0},{bits:2,value:4},{bits:2,value:3},{bits:4,value:5}];for(let N=q;N<d0&&W>0;N++){let V=a4[N];K.fillBitWindow();let X=K.currentVal>>>K.currentBitPos&15;K.currentBitPos+=_[X].bits;let j=_[X].value;if(U[V]=j,j!==0)W-=32>>j,H++}if(!(H===1||W===0))throw Error("Invalid code length codes");bJ(U,$,J,K)}return f5(Q,Z,m5,J,$)}class l0{alphabetSize;numHTrees;codes=[];htrees;constructor($,Q){this.alphabetSize=$;this.numHTrees=Q;this.htrees=new Uint32Array(Q);let Z=this.getMaxTableSize();for(let K=0;K<Q+Q*Z;K++)this.codes.push({bits:0,value:0})}getMaxTableSize(){let $=[256,402,436,468,500,534,566,598,630,662,694,726,758,790,822,854,886,920,952,984,1016,1048,1080],Q=this.alphabetSize+31>>>5;return $[Math.min(Q,$.length-1)]}decode($){let Q=0;for(let Z=0;Z<this.numHTrees;Z++){this.htrees[Z]=Q;let K=n0(this.alphabetSize,this.codes,Q,$);Q+=K}}}function SJ($,Q){Q.readMoreInput();let Z=yJ(Q)+1,K=new Uint8Array($);if(Z<=1)return{numHTrees:Z,contextMap:K};let J=Q.readBits(1)===1,q=0;if(J)q=Q.readBits(4)+1;let U=[];for(let W=0;W<W8;W++)U.push({bits:0,value:0});n0(Z+q,U,0,Q);for(let W=0;W<$;){Q.readMoreInput();let H=w8(U,0,Q);if(H===0)K[W++]=0;else if(H<=q){let _=1+(1<<H)+Q.readBits(H);for(let N=1;N<_&&W<$;N++)K[W++]=0}else K[W++]=H-q}if(Q.readBits(1)){let W=new Uint8Array(256);for(let H=0;H<256;H++)W[H]=H;for(let H=0;H<$;H++){let _=K[H];if(K[H]=W[_],_){let N=W[_];for(let V=_;V>0;V--)W[V]=W[V-1];W[0]=N}}}return{numHTrees:Z,contextMap:K}}function o9($,Q,Z){let K=w8($,Q,Z),J=e4[K];return J.offset+Z.readBits(J.nbits)}function J_($,Q,Z){if($<b5){let K=Z+r4[$]&3;return Q[K]+t4[$]}return $-b5+1}function q_($){let Q=new x5($),Z=Z_(Q),K=(1<<Z)-16,J=1<<Z,q=J-1,U=new Uint8Array(J+578),W=0,H=0,_=[16,15,11,4],N=0,V=0,X=0,j=[];while(!0){Q.readMoreInput();let z=K_(Q);if(z.length===0&&z.isLast)break;if(z.isMetadata){Q.currentBitPos=Q.currentBitPos+7&-8;for(let n=0;n<z.length;n++)Q.readMoreInput(),Q.readBits(8);continue}let G=z.length;if(G===0)continue;if(z.isUncompressed){Q.currentBitPos=Q.currentBitPos+7&-8;for(let n=0;n<G;n++){Q.readMoreInput();let e=Q.readBits(8);if(U[W&q]=e,(W&q)===q)j.push(...U.slice(0,J));W++}continue}let Y=[1,1,1],E=[268435456,268435456,268435456],w=[0,0,0],F=[0,1,0,1,0,1],A=[0,0,0],B=[],L=[];for(let n=0;n<3*W8;n++)B.push({bits:0,value:0}),L.push({bits:0,value:0});for(let n=0;n<3;n++)if(Y[n]=yJ(Q)+1,Y[n]>=2)n0(Y[n]+2,B,n*W8,Q),n0(i4,L,n*W8,Q),E[n]=o9(L,n*W8,Q),A[n]=1;Q.readMoreInput();let O=Q.readBits(2),M=b5+(Q.readBits(4)<<O),P=(1<<O)-1,T=M+(48<<O),x=new Uint8Array(Y[0]);for(let n=0;n<Y[0];n++)Q.readMoreInput(),x[n]=Q.readBits(2)<<1;let I=SJ(Y[0]<<6,Q),f=SJ(Y[2]<<2,Q),l=[new l0(o4,I.numHTrees),new l0(c4,Y[1]),new l0(T,f.numHTrees)];for(let n=0;n<3;n++)l[n].decode(Q);let C=0,R=0,y=x[w[0]],u=p9[y],d=p9[y+1],c=l[1].htrees[0];while(G>0){if(Q.readMoreInput(),E[1]===0){let g6=w8(B,W8,Q),h6;if(g6===0)h6=F[2+(A[1]&1)];else if(g6===1)h6=F[2+(A[1]-1&1)]+1;else h6=g6-2;if(h6>=Y[1])h6-=Y[1];w[1]=h6,F[2+(A[1]&1)]=h6,A[1]++,E[1]=o9(L,W8,Q),c=l[1].htrees[w[1]]}E[1]--;let n=w8(l[1].codes,c,Q),e=n>>6,g;if(e>=2)g=-1;else g=0;let X6=$_[e]+(n>>3&7),S=Q_[e]+(n&7),q6=kJ[X6].offset+Q.readBits(kJ[X6].nbits),b=CJ[S].offset+Q.readBits(CJ[S].nbits);V=U[W-1&q],X=U[W-2&q];for(let g6=0;g6<q6;g6++){if(Q.readMoreInput(),E[0]===0){let R6=w8(B,0,Q),p6;if(R6===0)p6=F[A[0]&1];else if(R6===1)p6=F[A[0]-1&1]+1;else p6=R6-2;if(p6>=Y[0])p6-=Y[0];w[0]=p6,F[A[0]&1]=p6,A[0]++,E[0]=o9(L,0,Q),C=w[0]<<6,y=x[w[0]],u=p9[y],d=p9[y+1]}let h6=h5[u+V]|h5[d+X],s6=I.contextMap[C+h6];if(E[0]--,X=V,V=w8(l[0].codes,l[0].htrees[s6],Q),U[W&q]=V,(W&q)===q)j.push(...U.slice(0,J));W++}if(G-=q6,G<=0)break;if(g<0){if(Q.readMoreInput(),E[2]===0){let s6=w8(B,2*W8,Q),R6;if(s6===0)R6=F[4+(A[2]&1)];else if(s6===1)R6=F[4+(A[2]-1&1)]+1;else R6=s6-2;if(R6>=Y[2])R6-=Y[2];w[2]=R6,F[4+(A[2]&1)]=R6,A[2]++,E[2]=o9(L,2*W8,Q),R=w[2]<<2}E[2]--;let g6=(b>4?3:b-2)&255,h6=f.contextMap[R+g6];if(g=w8(l[2].codes,l[2].htrees[h6],Q),g>=M){g-=M;let s6=g&P;g>>=O;let R6=(g>>1)+1,p6=(2+(g&1)<<R6)-4;g=M+(p6+Q.readBits(R6)<<O)+s6}}let L6=J_(g,_,N);if(L6<0)throw Error("Invalid distance");if(W<K&&H!==K)H=W;else H=K;let V0=W&q;if(L6>H)if(b>=4&&b<=24){let g6=MJ[b],h6=L6-H-1,s6=RJ[b],R6=(1<<s6)-1,p6=h6&R6,B1=h6>>s6,bW=g6+p6*b;if(B1<y5.length){let M1=vJ(U,V0,bW,b,B1,TJ);if(V0+=M1,W+=M1,G-=M1,V0>=J){j.push(...U.slice(0,J));for(let X0=0;X0<V0-J;X0++)U[X0]=U[J+X0]}}else throw Error("Invalid backward reference")}else throw Error("Invalid backward reference");else{if(g>0)_[N&3]=L6,N++;if(b>G)throw Error("Invalid backward reference");for(let g6=0;g6<b;g6++){if(U[W&q]=U[W-L6&q],(W&q)===q)j.push(...U.slice(0,J));W++,G--}}V=U[W-1&q],X=U[W-2&q]}if(z.isLast)break}return j.push(...U.slice(0,W&q)),new Uint8Array(j)}var W8=1080,d0=18,o4=256,c4=704,i4=26,b5=16,m5=8,s4=255,a4,r4,t4,e4,kJ,CJ,$_,Q_,U_;var gJ=D9(()=>{BJ();OJ();IJ();a4=new Uint8Array([1,2,3,4,0,5,17,6,16,7,8,9,10,11,12,13,14,15]),r4=new Uint8Array([3,2,1,0,3,3,3,3,3,3,2,2,2,2,2,2]),t4=new Int8Array([0,0,0,0,-1,1,-2,2,-3,3,-1,1,-2,2,-3,3]),e4=[{offset:1,nbits:2},{offset:5,nbits:2},{offset:9,nbits:2},{offset:13,nbits:2},{offset:17,nbits:3},{offset:25,nbits:3},{offset:33,nbits:3},{offset:41,nbits:3},{offset:49,nbits:4},{offset:65,nbits:4},{offset:81,nbits:4},{offset:97,nbits:4},{offset:113,nbits:5},{offset:145,nbits:5},{offset:177,nbits:5},{offset:209,nbits:5},{offset:241,nbits:6},{offset:305,nbits:6},{offset:369,nbits:7},{offset:497,nbits:8},{offset:753,nbits:9},{offset:1265,nbits:10},{offset:2289,nbits:11},{offset:4337,nbits:12},{offset:8433,nbits:13},{offset:16625,nbits:24}],kJ=[{offset:0,nbits:0},{offset:1,nbits:0},{offset:2,nbits:0},{offset:3,nbits:0},{offset:4,nbits:0},{offset:5,nbits:0},{offset:6,nbits:1},{offset:8,nbits:1},{offset:10,nbits:2},{offset:14,nbits:2},{offset:18,nbits:3},{offset:26,nbits:3},{offset:34,nbits:4},{offset:50,nbits:4},{offset:66,nbits:5},{offset:98,nbits:5},{offset:130,nbits:6},{offset:194,nbits:7},{offset:322,nbits:8},{offset:578,nbits:9},{offset:1090,nbits:10},{offset:2114,nbits:12},{offset:6210,nbits:14},{offset:22594,nbits:24}],CJ=[{offset:2,nbits:0},{offset:3,nbits:0},{offset:4,nbits:0},{offset:5,nbits:0},{offset:6,nbits:0},{offset:7,nbits:0},{offset:8,nbits:0},{offset:9,nbits:0},{offset:10,nbits:1},{offset:12,nbits:1},{offset:14,nbits:2},{offset:18,nbits:2},{offset:22,nbits:3},{offset:30,nbits:3},{offset:38,nbits:4},{offset:54,nbits:4},{offset:70,nbits:5},{offset:102,nbits:5},{offset:134,nbits:6},{offset:198,nbits:7},{offset:326,nbits:8},{offset:582,nbits:9},{offset:1094,nbits:10},{offset:2118,nbits:24}],$_=[0,0,8,8,0,16,8,16,16],Q_=[0,8,0,8,16,0,16,8,16];U_={getNextKey:g5,replicateValue:u5,nextTableBitSize:hJ,buildHuffmanTable:f5,readBlockLength:o9,readHuffmanCodeLengths:bJ,BitReader:x5,HuffmanCode:{},CODE_LENGTH_CODES:d0}});function z0($,Q){if(Q<0||Q>=$.classArray.length)return 1;return $.classArray[Q]??1}function T1($,Q){let{stateTable:Z}=$,K=0,J=0,q=0;for(let U=0;U<=Q.length;U++){let H=U>=Q.length?0:z0(Z.classTable,Q[U]?.glyphId),_=Z.stateArray[K];if(!_)break;let N=_[H];if(!N)break;let V=N.flags;if(V&32768)J=U;if(V&8192)q=U;let X=V&15;if(X!==0&&J<=q&&q<Q.length)xW(Q,J,q,X);if(!(V&16384));K=N.newState}}function xW($,Q,Z,K){if(Q>=Z||Q>=$.length||Z>=$.length)return;let J=$[Q],q=$[Q+1],U=$[Z-1],W=$[Z];if(!J||!W)return;switch(K){case 1:if(q)$[Q]=q,$[Q+1]=J;break;case 2:if(U)$[Z]=U,$[Z-1]=W;break;case 3:$[Q]=W,$[Z]=J;break;case 4:if(q&&U){let H=$.slice(Q,Q+2),[_,N]=H,V=$[Q+2];if(_&&N&&V)$[Q]=V,$[Q+1]=_,$[Q+2]=N}break;case 5:if(q&&U){let H=$.slice(Q,Q+2),[_,N]=H,V=$[Q+2];if(_&&N&&V)$[Q]=V,$[Q+1]=N,$[Q+2]=_}break;case 6:if(U&&q){let H=$.slice(Z-1,Z+1),[_,N]=H,V=$[Z-2];if(_&&N&&V)$[Z]=V,$[Z-1]=N,$[Z-2]=_}break;case 7:if(U&&q){let H=$.slice(Z-1,Z+1),[_,N]=H,V=$[Z-2];if(_&&N&&V)$[Z]=V,$[Z-1]=_,$[Z-2]=N}break;case 8:if(U){let H=J;$[Q]=U,$[Z-1]=W,$[Z]=H}break;case 9:if(U){let H=J;$[Q]=W,$[Z-1]=U,$[Z]=H}break;case 10:if(q&&U){let H=J,_=q,N=U;$[Q]=W,$[Q+1]=N,$[Z-1]=H,$[Z]=_}break;case 11:if(q&&U){let H=J,_=q,N=U;$[Q]=W,$[Q+1]=N,$[Z-1]=_,$[Z]=H}break;case 12:if(q&&U){let H=[J,q];$[Q]=U,$[Q+1]=W,$[Z-1]=H[0],$[Z]=H[1]}break;case 13:if(q&&U){let H=[J,q];$[Q]=U,$[Q+1]=W,$[Z-1]=H[1],$[Z]=H[0]}break;case 14:if(q&&U){let H=[J,q];$[Q]=W,$[Q+1]=U,$[Z-1]=H[0],$[Z]=H[1]}break;case 15:if(q&&U){let H=[J,q];$[Q]=W,$[Q+1]=U,$[Z-1]=H[1],$[Z]=H[0]}break}}function O1($,Q){let{stateTable:Z,substitutionTable:K}=$,J=0,q=-1;for(let U=0;U<=Q.length;U++){let W=U>=Q.length,H=W?0:z0(Z.classTable,Q[U]?.glyphId),_=Z.stateArray[J];if(!_)break;let N=_[H];if(!N)break;if(N.flags&32768)q=U;if(N.markIndex!==65535&&q>=0&&q<Q.length){let V=K[N.markIndex];if(V){let X=Q[q];if(X){let j=V.get(X.glyphId);if(j!==void 0)X.glyphId=j}}}if(!W&&N.currentIndex!==65535){let V=K[N.currentIndex];if(V){let X=Q[U];if(X){let j=V.get(X.glyphId);if(j!==void 0)X.glyphId=j}}}if(!(N.flags&16384));J=N.newState}}function P1($,Q){let{stateTable:Z,ligatureActions:K,components:J,ligatures:q}=$,U=0,W=[],H=[],_=new Set;for(let N=0;N<=Q.length;N++){let X=N>=Q.length?0:z0(Z.classTable,Q[N]?.glyphId),j=Z.stateArray[U];if(!j)break;let z=j[X];if(!z)break;if(z.flags&32768)W.push(N);if(z.flags&8192&&z.ligActionIndex<K.length){let G=z.ligActionIndex,Y=0,E=[];while(G<K.length){let w=K[G];if(w===void 0)break;let F=(w&2147483648)!==0,A=(w&1073741824)!==0,B=(w&1073741823)<<2>>2,L=W.pop();if(L!==void 0&&L<Q.length){if(E.push(L),Q[L]){let M=B;if(M>=0&&M<J.length){let P=J[M];if(P!==void 0)Y=Y+P}}}if(A&&Y<q.length){let O=E[E.length-1];if(O!==void 0&&O<Q.length){let M=Q[O],P=q[Y];if(M&&P!==void 0){M.glyphId=P;for(let T=0;T<E.length;T++)if(T<E.length-1){let x=E[T];_.add(x)}}}Y=0}if(F)break;G++}}if(!(z.flags&16384));U=z.newState}for(let N=0;N<Q.length;N++)if(!_.has(N)){let V=Q[N];H.push(V)}return H}function v1($,Q){let{stateTable:Z,insertionGlyphs:K}=$,J=0,q=-1,U=[],W=new Map;for(let H=0;H<=Q.length;H++){let _=H>=Q.length,N=_?0:z0(Z.classTable,Q[H]?.glyphId),V=Z.stateArray[J];if(!V)break;let X=V[N];if(!X)break;if(X.flags&32768)q=H;if(X.markedInsertIndex!==65535&&q>=0){let j=X.flags>>5&31,z=(X.flags&2048)!==0,G=K.slice(X.markedInsertIndex,X.markedInsertIndex+j),Y=W.get(q);if(!Y)Y={before:[],after:[]},W.set(q,Y);if(z)Y.before.push(...G);else Y.after.push(...G)}if(!_&&X.currentInsertIndex!==65535){let j=X.flags&31,z=(X.flags&32)!==0,G=K.slice(X.currentInsertIndex,X.currentInsertIndex+j),Y=W.get(H);if(!Y)Y={before:[],after:[]},W.set(H,Y);if(z)Y.before.push(...G);else Y.after.push(...G)}if(!(X.flags&16384));J=X.newState}for(let H=0;H<Q.length;H++){let _=Q[H],N=W.get(H);if(N)for(let V=0;V<N.before.length;V++){let X=N.before[V];U.push({glyphId:X,cluster:_.cluster,mask:_.mask,codepoint:0})}if(U.push(_),N)for(let V=0;V<N.after.length;V++){let X=N.after[V];U.push({glyphId:X,cluster:_.cluster,mask:_.mask,codepoint:0})}}return U}function jQ($,Q,Z){if(Z===0)return($^Q)<0?-2147483647:2147483647;let K=1;if($<0)$=-$,K=-K;if(Q<0)Q=-Q,K=-K;if(Z<0)Z=-Z,K=-K;let J=Math.floor(($*Q+(Z>>1))/Z);return K<0?-J:J}function zQ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop];if(Z===void 0||Q===void 0){$.error="ADD: stack underflow",$.stackTop+=2,$.stack[$.stackTop++]=0;return}$.stack[$.stackTop++]=Z+Q}function GQ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop];if(Z===void 0||Q===void 0){$.error="SUB: stack underflow",$.stackTop+=2,$.stack[$.stackTop++]=0;return}$.stack[$.stackTop++]=Z-Q}function YQ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop];if(Z===void 0||Q===void 0){$.error="DIV: stack underflow",$.stackTop+=2,$.stack[$.stackTop++]=0;return}if(Q===0){$.error="DIV: division by zero",$.stack[$.stackTop++]=0;return}$.stack[$.stackTop++]=jQ(Z,64,Q)}function EQ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop];if(Z===void 0||Q===void 0){$.error="MUL: stack underflow",$.stackTop+=2,$.stack[$.stackTop++]=0;return}$.stack[$.stackTop++]=jQ(Z,Q,64)}function wQ($){let Q=$.stack[$.stackTop-1];if(Q===void 0){$.error="ABS: stack underflow";return}$.stack[$.stackTop-1]=Q<0?-Q:Q}function AQ($){let Q=$.stack[$.stackTop-1];if(Q===void 0){$.error="NEG: stack underflow";return}$.stack[$.stackTop-1]=-Q}function FQ($){let Q=$.stack[$.stackTop-1];if(Q===void 0){$.error="FLOOR: stack underflow";return}$.stack[$.stackTop-1]=Q&-64}function LQ($){let Q=$.stack[$.stackTop-1];if(Q===void 0){$.error="CEILING: stack underflow";return}$.stack[$.stackTop-1]=Q+63&-64}function DQ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop];if(Z===void 0||Q===void 0){$.error="MAX: stack underflow",$.stackTop+=2,$.stack[$.stackTop++]=0;return}$.stack[$.stackTop++]=Z>Q?Z:Q}function BQ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop];if(Z===void 0||Q===void 0){$.error="MIN: stack underflow",$.stackTop+=2,$.stack[$.stackTop++]=0;return}$.stack[$.stackTop++]=Z<Q?Z:Q}function MQ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop];if(Z===void 0||Q===void 0){$.error="LT: stack underflow",$.stackTop+=2,$.stack[$.stackTop++]=0;return}$.stack[$.stackTop++]=Z<Q?1:0}function RQ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop];if(Z===void 0||Q===void 0){$.error="LTEQ: stack underflow",$.stackTop+=2,$.stack[$.stackTop++]=0;return}$.stack[$.stackTop++]=Z<=Q?1:0}function TQ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop];if(Z===void 0||Q===void 0){$.error="GT: stack underflow",$.stackTop+=2,$.stack[$.stackTop++]=0;return}$.stack[$.stackTop++]=Z>Q?1:0}function OQ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop];if(Z===void 0||Q===void 0){$.error="GTEQ: stack underflow",$.stackTop+=2,$.stack[$.stackTop++]=0;return}$.stack[$.stackTop++]=Z>=Q?1:0}function PQ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop];if(Z===void 0||Q===void 0){$.error="EQ: stack underflow",$.stackTop+=2,$.stack[$.stackTop++]=0;return}$.stack[$.stackTop++]=Z===Q?1:0}function vQ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop];if(Z===void 0||Q===void 0){$.error="NEQ: stack underflow",$.stackTop+=2,$.stack[$.stackTop++]=0;return}$.stack[$.stackTop++]=Z!==Q?1:0}function IQ($){let Q=$.stack[$.stackTop-1];if(Q===void 0){$.error="ODD: stack underflow";return}let Z=Q+32&-64;$.stack[$.stackTop-1]=Z&64?1:0}function kQ($){let Q=$.stack[$.stackTop-1];if(Q===void 0){$.error="EVEN: stack underflow";return}let Z=Q+32&-64;$.stack[$.stackTop-1]=Z&64?0:1}function CQ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop];if(Z===void 0||Q===void 0){$.error="AND: stack underflow",$.stackTop+=2,$.stack[$.stackTop++]=0;return}$.stack[$.stackTop++]=Z&&Q?1:0}function SQ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop];if(Z===void 0||Q===void 0){$.error="OR: stack underflow",$.stackTop+=2,$.stack[$.stackTop++]=0;return}$.stack[$.stackTop++]=Z||Q?1:0}function hQ($){let Q=$.stack[$.stackTop-1];if(Q===void 0){$.error="NOT: stack underflow";return}$.stack[$.stackTop-1]=Q?0:1}var j6=typeof process<"u"&&process?.env?process.env:void 0;function yQ($){let Q=$.stack[--$.stackTop];if(Q===void 0){$.error="IF: stack underflow",$.stackTop++;return}if(Q)return;let Z=1;while($.IP<$.codeSize){let K=$.code[$.IP++];if(K===void 0)break;switch(K){case 88:Z++;break;case 27:if(Z===1)return;break;case 89:if(Z--,Z===0)return;break;case 64:$.IP+=1+($.code[$.IP]??0);break;case 65:$.IP+=1+($.code[$.IP]??0)*2;break;default:if(K>=176&&K<=183)$.IP+=K-176+1;else if(K>=184&&K<=191)$.IP+=(K-184+1)*2}}$.error="IF: missing EIF"}function bQ($){let Q=1;while($.IP<$.codeSize){let Z=$.code[$.IP++];if(Z===void 0)break;switch(Z){case 88:Q++;break;case 89:if(Q--,Q===0)return;break;case 64:$.IP+=1+($.code[$.IP]??0);break;case 65:$.IP+=1+($.code[$.IP]??0)*2;break;default:if(Z>=176&&Z<=183)$.IP+=Z-176+1;else if(Z>=184&&Z<=191)$.IP+=(Z-184+1)*2}}$.error="ELSE: missing EIF"}function mQ($){}function gQ($){let Q=$.stack[--$.stackTop];if(Q===void 0){$.error="JMPR: stack underflow",$.stackTop++;return}$.IP+=Q-1}function uQ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop];if(Q===void 0||Z===void 0){$.error="JROT: stack underflow",$.stackTop+=2;return}if(Q)$.IP+=Z-1}function xQ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop];if(Q===void 0||Z===void 0){$.error="JROF: stack underflow",$.stackTop+=2;return}if(!Q)$.IP+=Z-1}function fQ($){let Q=$.stack[--$.stackTop];if(Q===void 0){$.error="FDEF: stack underflow",$.stackTop++;return}if(Q<0||Q>=$.maxFDefs){$.error=`FDEF: invalid function number ${Q}`;return}let Z=$.FDefs[Q];if(!Z){$.error=`FDEF: no slot for function ${Q}`;return}Z.id=Q,Z.start=$.IP,Z.active=!0,Z.range=$.currentRange;while($.IP<$.codeSize){let K=$.code[$.IP++];if(K===void 0)break;if(K===45){Z.end=$.IP;return}if(K===64)$.IP+=1+($.code[$.IP]??0);else if(K===65)$.IP+=1+($.code[$.IP]??0)*2;else if(K>=176&&K<=183)$.IP+=K-176+1;else if(K>=184&&K<=191)$.IP+=(K-184+1)*2}$.error="FDEF: missing ENDF"}function lQ($){if($.callStackTop<=0){$.error="ENDF: not in function call";return}let Q=$.callStack[$.callStackTop-1];if(!Q){$.error="ENDF: missing call frame";return}if(Q.count--,Q.count>0)$.IP=Q.def.start;else{$.callStackTop--,$.IP=Q.callerIP,$.currentRange=Q.callerRange;let Z=$.codeRanges.get($.currentRange);if(Z)$.code=Z.code,$.codeSize=Z.size}}function dQ($){let Q=$.stack[--$.stackTop];if(Q===void 0){$.error="CALL: stack underflow",$.stackTop++;return}if(j6?.HINT_TRACE_CALLS==="1")console.log("trace CALL",{funcNum:Q,range:$.currentRange,ip:$.IP,stackTop:$.stackTop});if(Q<0||Q>=$.maxFDefs){$.error=`CALL: invalid function number ${Q}`;return}let Z=$.FDefs[Q];if(!Z||!Z.active){$.error=`CALL: function ${Q} not defined`;return}if($.callStackTop>=$.maxCallStack){$.error="CALL: call stack overflow";return}let K=$.callStack[$.callStackTop++];if(!K){$.error="CALL: no call frame available",$.callStackTop--;return}K.callerIP=$.IP,K.callerRange=$.currentRange,K.def=Z,K.count=1,$.currentRange=Z.range;let J=$.codeRanges.get($.currentRange);if(J)$.code=J.code,$.codeSize=J.size;$.IP=Z.start}function nQ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop];if(Q===void 0||Z===void 0){$.error="LOOPCALL: stack underflow",$.stackTop+=2;return}if(Q<0||Q>=$.maxFDefs){$.error=`LOOPCALL: invalid function number ${Q}`;return}let K=$.FDefs[Q];if(!K||!K.active){$.error=`LOOPCALL: function ${Q} not defined`;return}if(Z<=0)return;if($.callStackTop>=$.maxCallStack){$.error="LOOPCALL: call stack overflow";return}let J=$.callStack[$.callStackTop++];if(!J){$.error="LOOPCALL: no call frame available",$.callStackTop--;return}J.callerIP=$.IP,J.callerRange=$.currentRange,J.def=K,J.count=Z,$.currentRange=K.range;let q=$.codeRanges.get($.currentRange);if(q)$.code=q.code,$.codeSize=q.size;$.IP=K.start}function pQ($){let Q=$.stack[--$.stackTop];if(Q===void 0){$.error="IDEF: stack underflow",$.stackTop++;return}if(Q<0||Q>=$.maxIDefs){$.error=`IDEF: invalid opcode ${Q}`;return}let Z=$.IDefs[Q];if(!Z){$.error=`IDEF: no slot for opcode ${Q}`;return}Z.opcode=Q,Z.start=$.IP,Z.active=!0,Z.range=$.currentRange;while($.IP<$.codeSize){let K=$.code[$.IP++];if(K===void 0)break;if(K===45){Z.end=$.IP;return}if(K===64)$.IP+=1+($.code[$.IP]??0);else if(K===65)$.IP+=1+($.code[$.IP]??0)*2;else if(K>=176&&K<=183)$.IP+=K-176+1;else if(K>=184&&K<=191)$.IP+=(K-184+1)*2}$.error="IDEF: missing ENDF"}var n8;((H)=>{H[H.ToHalfGrid=0]="ToHalfGrid";H[H.ToGrid=1]="ToGrid";H[H.ToDoubleGrid=2]="ToDoubleGrid";H[H.DownToGrid=3]="DownToGrid";H[H.UpToGrid=4]="UpToGrid";H[H.Off=5]="Off";H[H.Super=6]="Super";H[H.Super45=7]="Super45"})(n8||={});var p8;((K)=>{K[K.X=16]="X";K[K.Y=32]="Y";K[K.Both=48]="Both"})(p8||={});function I1(){return{rp0:0,rp1:0,rp2:0,dualVector:{x:16384,y:0},projVector:{x:16384,y:0},freeVector:{x:16384,y:0},loop:1,minimumDistance:64,roundState:1,autoFlip:!0,controlValueCutIn:68,singleWidthCutIn:0,singleWidthValue:0,deltaBase:9,deltaShift:3,instructControl:0,scanControl:0,scanType:0,gep0:1,gep1:1,gep2:1,period:64,phase:0,threshold:32}}var B9;((J)=>{J[J.None=0]="None";J[J.Font=1]="Font";J[J.CVT=2]="CVT";J[J.Glyph=3]="Glyph"})(B9||={});function Q8($,Q){return{nPoints:0,nContours:0,org:Array($).fill(null).map(()=>({x:0,y:0})),cur:Array($).fill(null).map(()=>({x:0,y:0})),orus:Array($).fill(null).map(()=>({x:0,y:0})),tags:new Uint8Array($),contours:new Uint16Array(Q)}}function G0($=256,Q=64,Z=64,K=64,J=32,q=16){let U=I1();return{GS:{...U},defaultGS:U,zp0:Q8(0,0),zp1:Q8(0,0),zp2:Q8(0,0),twilight:Q8(q,1),pts:Q8(0,0),stack:new Int32Array($),stackTop:0,IP:0,code:new Uint8Array(0),codeSize:0,currentRange:0,opcode:0,numArgs:0,cvt:new Int32Array(0),cvtSize:0,storage:new Int32Array(Q),storageSize:Q,FDefs:Array(Z).fill(null).map((W,H)=>({id:H,start:0,end:0,active:!1,range:0})),maxFDefs:Z,IDefs:Array(K).fill(null).map((W,H)=>({opcode:H,start:0,end:0,active:!1,range:0})),maxIDefs:K,callStack:Array(J).fill(null).map(()=>({callerIP:0,callerRange:0,def:{id:0,start:0,end:0,active:!1,range:0},count:0})),callStackTop:0,maxCallStack:J,codeRanges:new Map,ppem:12,pointSize:12,scale:1,scaleFix:65536,lightMode:!1,error:null,instructionCount:0,maxInstructions:1e6}}var D={NPUSHB:64,NPUSHW:65,PUSHB_0:176,PUSHB_1:177,PUSHB_2:178,PUSHB_3:179,PUSHB_4:180,PUSHB_5:181,PUSHB_6:182,PUSHB_7:183,PUSHW_0:184,PUSHW_1:185,PUSHW_2:186,PUSHW_3:187,PUSHW_4:188,PUSHW_5:189,PUSHW_6:190,PUSHW_7:191,RS:67,WS:66,RCVT:69,WCVTP:68,WCVTF:112,DUP:32,POP:33,CLEAR:34,SWAP:35,DEPTH:36,CINDEX:37,MINDEX:38,ROLL:138,ADD:96,SUB:97,DIV:98,MUL:99,ABS:100,NEG:101,FLOOR:102,CEILING:103,MAX:139,MIN:140,LT:80,LTEQ:81,GT:82,GTEQ:83,EQ:84,NEQ:85,ODD:86,EVEN:87,AND:90,OR:91,NOT:92,IF:88,ELSE:27,EIF:89,JMPR:28,JROT:120,JROF:121,FDEF:44,ENDF:45,CALL:43,LOOPCALL:42,IDEF:137,SVTCA_Y:0,SVTCA_X:1,SPVTCA_Y:2,SPVTCA_X:3,SFVTCA_Y:4,SFVTCA_X:5,SPVTL_0:6,SPVTL_1:7,SFVTL_0:8,SFVTL_1:9,SDPVTL_0:134,SDPVTL_1:135,SPVFS:10,SFVFS:11,GPV:12,GFV:13,SFVTPV:14,ISECT:15,SRP0:16,SRP1:17,SRP2:18,SZP0:19,SZP1:20,SZP2:21,SZPS:22,SLOOP:23,RTG:24,RTHG:25,SMD:26,RDTG:125,RUTG:124,ROFF:122,SROUND:118,S45ROUND:119,SCVTCI:29,SSWCI:30,SSW:31,FLIPON:77,FLIPOFF:78,SANGW:126,SDB:94,SDS:95,GC_0:70,GC_1:71,SCFS:72,MD_0:73,MD_1:74,MPPEM:75,MPS:76,FLIPPT:128,FLIPRGON:129,FLIPRGOFF:130,SHP_0:50,SHP_1:51,SHC_0:52,SHC_1:53,SHZ_0:54,SHZ_1:55,SHPIX:56,IP:57,MSIRP_0:58,MSIRP_1:59,ALIGNRP:60,RTDG:61,MIAP_0:62,MIAP_1:63,ALIGNPTS:39,UTP:41,MDAP_0:46,MDAP_1:47,IUP_Y:48,IUP_X:49,DELTAP1:93,DELTAP2:113,DELTAP3:114,DELTAC1:115,DELTAC2:116,DELTAC3:117,ROUND_0:104,ROUND_1:105,ROUND_2:106,ROUND_3:107,NROUND_0:108,NROUND_1:109,NROUND_2:110,NROUND_3:111,GETINFO:136,INSTCTRL:142,SCANCTRL:133,SCANTYPE:141,AA:127,DEBUG:79,MDRP_BASE:192,MIRP_BASE:224},Y2={[D.RS]:1,[D.WS]:2,[D.RCVT]:1,[D.WCVTP]:2,[D.WCVTF]:2,[D.DUP]:1,[D.POP]:1,[D.CLEAR]:0,[D.SWAP]:2,[D.DEPTH]:0,[D.CINDEX]:1,[D.MINDEX]:1,[D.ROLL]:3,[D.ADD]:2,[D.SUB]:2,[D.DIV]:2,[D.MUL]:2,[D.ABS]:1,[D.NEG]:1,[D.FLOOR]:1,[D.CEILING]:1,[D.MAX]:2,[D.MIN]:2,[D.LT]:2,[D.LTEQ]:2,[D.GT]:2,[D.GTEQ]:2,[D.EQ]:2,[D.NEQ]:2,[D.ODD]:1,[D.EVEN]:1,[D.AND]:2,[D.OR]:2,[D.NOT]:1,[D.IF]:1,[D.JMPR]:1,[D.JROT]:2,[D.JROF]:2,[D.CALL]:1,[D.LOOPCALL]:2,[D.SRP0]:1,[D.SRP1]:1,[D.SRP2]:1,[D.SZP0]:1,[D.SZP1]:1,[D.SZP2]:1,[D.SZPS]:1,[D.SLOOP]:1,[D.SMD]:1,[D.SCVTCI]:1,[D.SSWCI]:1,[D.SSW]:1,[D.SDB]:1,[D.SDS]:1,[D.SPVFS]:2,[D.SFVFS]:2,[D.SPVTL_0]:2,[D.SPVTL_1]:2,[D.SFVTL_0]:2,[D.SFVTL_1]:2,[D.SCFS]:2,[D.GC_0]:1,[D.GC_1]:1,[D.MD_0]:2,[D.MD_1]:2,[D.ISECT]:5,[D.ALIGNRP]:0,[D.IP]:0,[D.SHPIX]:1,[D.MSIRP_0]:2,[D.MSIRP_1]:2,[D.MIAP_0]:2,[D.MIAP_1]:2,[D.MDAP_0]:1,[D.MDAP_1]:1,[D.DELTAP1]:1,[D.DELTAP2]:1,[D.DELTAP3]:1,[D.DELTAC1]:1,[D.DELTAC2]:1,[D.DELTAC3]:1,[D.SROUND]:1,[D.S45ROUND]:1,[D.ROUND_0]:1,[D.ROUND_1]:1,[D.ROUND_2]:1,[D.ROUND_3]:1,[D.NROUND_0]:1,[D.NROUND_1]:1,[D.NROUND_2]:1,[D.NROUND_3]:1,[D.INSTCTRL]:2,[D.SCANCTRL]:1,[D.SCANTYPE]:1,[D.GETINFO]:1,[D.FLIPPT]:0,[D.FLIPRGON]:2,[D.FLIPRGOFF]:2};function Z8($,Q){if($>=0)return $+Q+32&-64;else return-(-$+Q+32&-64)}function k1($,Q){if($>=0)return($+Q+32&-64)+32;else return-((-$+Q+32&-64)+32)}function C1($,Q){if($>=0)return $+16+Q&-32;else return-(-$+16+Q&-32)}function S1($,Q){if($>=0)return $+Q&-64;else return-(-$+Q&-64)}function h1($,Q){if($>=0)return $+Q+63&-64;else return-(-$+Q+63&-64)}function y1($,Q){return $}function b1($,Q,Z){let{period:K,phase:J,threshold:q}=Z;if($>=0)return($+q-J+Q&-K)+J;else return-((-$+q-J+Q&-K)+J)}function m1($,Q,Z){let{period:K,phase:J,threshold:q}=Z,U=Math.round(K*46/64);if($>=0)return($+q-J+Q&-U)+J;else return-((-$+q-J+Q&-U)+J)}function X8($,Q,Z){switch(Z.roundState){case 1:return Z8($,Q);case 0:return k1($,Q);case 2:return C1($,Q);case 3:return S1($,Q);case 4:return h1($,Q);case 5:return y1($,Q);case 6:return b1($,Q,Z);case 7:return m1($,Q,Z);default:return Z8($,Q)}}function M9($,Q){switch($>>6&3){case 0:Q.period=32;break;case 1:Q.period=64;break;case 2:Q.period=128;break;default:Q.period=64}switch($>>4&3){case 0:Q.phase=0;break;case 1:Q.phase=Q.period>>2;break;case 2:Q.phase=Q.period>>1;break;case 3:Q.phase=Q.period*3>>2;break}let Z=$&15;if(Z===0)Q.threshold=Q.period-1;else Q.threshold=(Z-4)*Q.period>>3}function K8($,Q){return 0}function g1($,Q){if($===0||Q===0)return 0;let Z=1,K=$,J=Q;if(K<0)K=-K,Z=-Z;if(J<0)J=-J,Z=-Z;let q=Math.floor((K*J+32768)/65536);return Z<0?-q:q}function oQ($,Q){if(Q===0)return $<0?-2147483647:2147483647;let Z=1,K=$,J=Q;if(K<0)K=-K,Z=-Z;if(J<0)J=-J,Z=-Z;let q=Math.floor((K*65536+(J>>1))/J);return Z<0?-q:q}function u6($,Q){return g1($,Q)}function iQ($,Q,Z,K){let J=$*Z+Q*K,q=J+8192+(J<0?-1:0);return Math.floor(q/16384)}function cQ($,Q){let Z=$*Q,K=Z+8192+(Z<0?-1:0);return Math.floor(K/16384)}function fW($,Q,Z,K){let J=$*Z+Q*K,q=J+8192+(J<0?-1:0);return Math.floor(q/16384)}function u1($,Q,Z){if(Z===0)return($^Q)<0?-2147483647:2147483647;let K=1;if($<0)$=-$,K=-K;if(Q<0)Q=-Q,K=-K;if(Z<0)Z=-Z,K=-K;let J=Math.floor(($*Q+(Z>>1))/Z);return K<0?-J:J}function Y0($,Q){return iQ(Q.x,Q.y,$.GS.projVector.x,$.GS.projVector.y)}function sQ($,Q){return iQ(Q.x,Q.y,$.GS.dualVector.x,$.GS.dualVector.y)}function T6($,Q,Z,K){let J=Q.cur[Z],q=$.GS.freeVector,U=$.GS.projVector;if($.lightMode&&(U.x!==0||q.x!==0))return;let W=fW(q.x,q.y,U.x,U.y);if(W===0)return;let H=u1(K,q.x,W),_=u1(K,q.y,W),N=j6?.HINT_TRACE_POINTS;if(N){if(N.split(",").map((X)=>Number.parseInt(X.trim(),10)).includes(Z))console.log("trace movePoint",{pointIndex:Z,opcode:$.opcode,ip:$.IP,range:$.currentRange,distance:K,dx:H,dy:_,proj:$.GS.projVector,free:$.GS.freeVector,dual:$.GS.dualVector,rp0:$.GS.rp0,rp1:$.GS.rp1,rp2:$.GS.rp2})}if(J.x+=H,J.y+=_,Q===$.twilight){let V=Q.org[Z];V.x+=H,V.y+=_}}function V6($,Q,Z){let K=Q.cur[Z];if(!K)return 0;return Y0($,K)}function f6($,Q,Z){let K=Q.org[Z];if(!K)return 0;return sQ($,K)}function P6($,Q,Z){let K=$.GS.freeVector;if(K.y!==0)Q.tags[Z]|=32;if(K.x!==0)Q.tags[Z]|=16}function x1($,Q){let Z=$.stack[--$.stackTop],K=$.zp0;if(Z<0||Z>=K.nPoints){$.error=`MDAP: invalid point ${Z}`;return}let J=V6($,K,Z);if(Q){let q=K8(J,$.GS);J=X8(J,q,$.GS)-J}else J=0;if(T6($,K,Z,J),P6($,K,Z),$.GS.rp0=Z,$.GS.rp1=Z,j6?.HINT_TRACE_RP0==="1")console.log("trace rp0",{ip:$.IP,range:$.currentRange,opcode:$.opcode,rp0:$.GS.rp0})}function f1($,Q){let Z=$.stack[--$.stackTop],K=$.stack[--$.stackTop],J=$.zp0;if(K<0||K>=J.nPoints){$.error=`MIAP: invalid point ${K}`;return}if(Z<0||Z>=$.cvtSize){$.error=`MIAP: invalid CVT index ${Z}`;return}let q=$.cvt[Z],U=V6($,J,K);if(Q){if(Math.abs(q-U)>$.GS.controlValueCutIn)q=U;let _=K8(q,$.GS);q=X8(q,_,$.GS)}let W=q-U;if(T6($,J,K,W),P6($,J,K),$.GS.rp0=K,$.GS.rp1=K,j6?.HINT_TRACE_RP0==="1")console.log("trace rp0",{ip:$.IP,range:$.currentRange,opcode:$.opcode,rp0:$.GS.rp0})}function aQ($,Q){let Z=$.stack[--$.stackTop],K=(Q&16)!==0,J=(Q&8)!==0,q=(Q&4)!==0,U=Q&3,W=$.GS.roundState;if(U===1)W=1;else if(U===2)W=0;else if(U===3)W=2;let{zp0:H,zp1:_}=$;if(Z<0||Z>=_.nPoints){$.error=`MDRP: invalid point ${Z}`;return}let N=$.GS.rp0;if(N<0||N>=H.nPoints){$.error=`MDRP: invalid rp0 ${N}`;return}let V=f6($,_,Z)-f6($,H,N);if($.GS.singleWidthCutIn>0&&Math.abs(V-$.GS.singleWidthValue)<$.GS.singleWidthCutIn)V=V>=0?$.GS.singleWidthValue:-$.GS.singleWidthValue;let X=K8(V,$.GS),j;if(q){let Y=$.GS.roundState;$.GS.roundState=W,j=X8(V,X,$.GS),$.GS.roundState=Y}else j=V+X;if(J){if(V>=0){if(j<$.GS.minimumDistance)j=$.GS.minimumDistance}else if(j>-$.GS.minimumDistance)j=-$.GS.minimumDistance}let z=V6($,_,Z)-V6($,H,N),G=j-z;if(T6($,_,Z,G),P6($,_,Z),$.GS.rp1=$.GS.rp0,$.GS.rp2=Z,K){if($.GS.rp0=Z,j6?.HINT_TRACE_RP0==="1")console.log("trace rp0",{ip:$.IP,range:$.currentRange,opcode:$.opcode,rp0:$.GS.rp0})}}function rQ($,Q){let Z=$.stack[--$.stackTop],K=$.stack[--$.stackTop],J=(Q&16)!==0,q=(Q&8)!==0,U=(Q&4)!==0,W=Q&3,H=$.GS.roundState;if(W===1)H=1;else if(W===2)H=0;else if(W===3)H=2;let{zp0:_,zp1:N}=$;if(K<0||K>=N.nPoints){$.error=`MIRP: invalid point ${K}`;return}if(Z<-1||Z>=$.cvtSize){$.error=`MIRP: invalid CVT index ${Z}`;return}let V=$.GS.rp0;if(V<0||V>=_.nPoints){$.error=`MIRP: invalid rp0 ${V}`;return}let X=f6($,N,K)-f6($,_,V),j=Z===-1?0:$.cvt[Z];if($.GS.singleWidthCutIn>0&&Math.abs(j-$.GS.singleWidthValue)<$.GS.singleWidthCutIn)j=j>=0?$.GS.singleWidthValue:-$.GS.singleWidthValue;if($.GS.gep1===0){let F=$.zp0.org[V],A=cQ(j,$.GS.freeVector.x),B=cQ(j,$.GS.freeVector.y);$.zp1.org[K].x=F.x+A,$.zp1.org[K].y=F.y+B,$.zp1.cur[K].x=$.zp1.org[K].x,$.zp1.cur[K].y=$.zp1.org[K].y}if($.GS.autoFlip){if((X^j)<0)j=-j}let z=j,G=K8(j,$.GS);if(U){if($.GS.gep0===$.GS.gep1){if(Math.abs(j-X)>$.GS.controlValueCutIn)z=X}let F=$.GS.roundState;$.GS.roundState=H,z=X8(z,G,$.GS),$.GS.roundState=F}else z=z+G;if(q){if(X>=0){if(z<$.GS.minimumDistance)z=$.GS.minimumDistance}else if(z>-$.GS.minimumDistance)z=-$.GS.minimumDistance}let Y=V6($,N,K)-V6($,_,V),E=z-Y,w=j6?.HINT_TRACE_MIRP;if(w){let F=w.split(",").map((A)=>Number.parseInt(A.trim(),10)).filter((A)=>Number.isFinite(A));if(F.length===0||F.includes(K))console.log("trace MIRP",{pointIndex:K,cvtIndex:Z,orgDist:X,cvtDist:j,currentDist:Y,distance:z,move:E,flags:Q,rp0:V,roundState:$.GS.roundState})}if(T6($,N,K,E),P6($,N,K),$.GS.rp1=$.GS.rp0,$.GS.rp2=K,J){if($.GS.rp0=K,j6?.HINT_TRACE_RP0==="1")console.log("trace rp0",{ip:$.IP,range:$.currentRange,opcode:$.opcode,rp0:$.GS.rp0})}}function l1($,Q){let Z=Q?$.zp0:$.zp1,K=Q?$.GS.rp1:$.GS.rp2;if(K<0||K>=Z.nPoints){$.error=`SHP: invalid reference point ${K}`;return}let J=Y0($,Z.org[K]),q=V6($,Z,K),U=q-J;if(j6?.HINT_TRACE_SHP==="1")console.log("trace SHP",{refPoint:K,orgRef:J,curRef:q,shift:U,useRp1:Q,gep0:$.GS.gep0,gep1:$.GS.gep1,gep2:$.GS.gep2,ip:$.IP,range:$.currentRange});let W=$.zp2,H=$.GS.loop;$.GS.loop=1;for(let _=0;_<H;_++){let N=$.stack[--$.stackTop];if(N<0||N>=W.nPoints){$.error=`SHP: invalid point ${N}`;return}T6($,W,N,U),P6($,W,N)}}function d1($,Q){let Z=$.stack[--$.stackTop],K=Q?$.zp0:$.zp1,J=Q?$.GS.rp1:$.GS.rp2;if(J<0||J>=K.nPoints){$.error=`SHC: invalid reference point ${J}`;return}let q=$.zp2;if(Z<0||Z>=q.nContours){$.error=`SHC: invalid contour ${Z}`;return}let U=Y0($,K.org[J]),H=V6($,K,J)-U,_=Z===0?0:q.contours[Z-1]+1,N=q.contours[Z];for(let V=_;V<=N;V++){if(q===K&&V===J)continue;T6($,q,V,H),P6($,q,V)}}function n1($,Q){let Z=$.stack[--$.stackTop],K=Q?$.zp0:$.zp1,J=Q?$.GS.rp1:$.GS.rp2;if(J<0||J>=K.nPoints){$.error=`SHZ: invalid reference point ${J}`;return}let q=Z===0?$.twilight:$.pts,U=Y0($,K.org[J]),H=V6($,K,J)-U;for(let _=0;_<q.nPoints;_++){if(q===K&&_===J)continue;T6($,q,_,H)}}function tQ($){let Q=$.stack[--$.stackTop],Z=$.zp2,K=$.GS.loop;$.GS.loop=1;for(let J=0;J<K;J++){let q=$.stack[--$.stackTop];if(q<0||q>=Z.nPoints){$.error=`SHPIX: invalid point ${q}`;return}T6($,Z,q,Q),P6($,Z,q)}}function eQ($){let Q=$.GS.rp1,Z=$.GS.rp2;if(Q<0||Q>=$.zp0.nPoints){$.error=`IP: invalid rp1 ${Q}`;return}if(Z<0||Z>=$.zp1.nPoints){$.error=`IP: invalid rp2 ${Z}`;return}let K=f6($,$.zp1,Z)-f6($,$.zp0,Q),J=V6($,$.zp1,Z)-V6($,$.zp0,Q),q=f6($,$.zp0,Q),U=V6($,$.zp0,Q),W=$.zp2,H=$.GS.loop;$.GS.loop=1;for(let _=0;_<H;_++){let N=$.stack[--$.stackTop];if(N<0||N>=W.nPoints){$.error=`IP: invalid point ${N}`;return}let V=f6($,W,N)-q,X=V6($,W,N)-U,j;if(V!==0)if(K!==0)j=u1(V,J,K);else j=V;else j=0;T6($,W,N,j-X),P6($,W,N)}}function $Z($){let Q=$.GS.rp0;if(Q<0||Q>=$.zp0.nPoints){$.error=`ALIGNRP: invalid rp0 ${Q}`;return}let Z=$.GS.gep0===0?f6($,$.zp0,Q):V6($,$.zp0,Q),K=$.zp1,J=$.GS.loop;$.GS.loop=1;for(let q=0;q<J;q++){let U=$.stack[--$.stackTop];if(U<0||U>=K.nPoints){$.error=`ALIGNRP: invalid point ${U}`;return}let W=V6($,K,U),H=Z-W,_=j6?.HINT_TRACE_POINTS;if(_){if(_.split(",").map((V)=>Number.parseInt(V.trim(),10)).includes(U)){let V=f6($,$.zp0,Q),X=V6($,$.zp0,Q);console.log("trace ALIGNRP",{pointIndex:U,refPos:Z,refOrg:V,refCur:X,curPos:W,distance:H,gep0:$.GS.gep0,gep1:$.GS.gep1,gep2:$.GS.gep2})}}T6($,K,U,H),P6($,K,U)}}function p1($,Q){let Z=$.stack[--$.stackTop],K=$.stack[--$.stackTop],J=$.zp0,q=$.zp1;if(K<0||K>=q.nPoints){$.error=`MSIRP: invalid point ${K}`;return}let U=$.GS.rp0;if(U<0||U>=J.nPoints){$.error=`MSIRP: invalid rp0 ${U}`;return}let W=V6($,q,K)-V6($,J,U),H=Z-W;if(T6($,q,K,H),P6($,q,K),$.GS.rp1=$.GS.rp0,$.GS.rp2=K,Q){if($.GS.rp0=K,j6?.HINT_TRACE_RP0==="1")console.log("trace rp0",{ip:$.IP,range:$.currentRange,opcode:$.opcode,rp0:$.GS.rp0})}}function QZ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop],K=$.stack[--$.stackTop],J=$.stack[--$.stackTop],q=$.stack[--$.stackTop],U=$.zp0,W=$.zp1,H=$.zp2;if(J<0||J>=U.nPoints||K<0||K>=U.nPoints){$.error="ISECT: invalid line A points";return}if(Z<0||Z>=W.nPoints||Q<0||Q>=W.nPoints){$.error="ISECT: invalid line B points";return}if(q<0||q>=H.nPoints){$.error=`ISECT: invalid point ${q}`;return}let _=U.cur[J],N=U.cur[K],V=W.cur[Z],X=W.cur[Q],j=N.x-_.x,z=N.y-_.y,G=X.x-V.x,Y=X.y-V.y,E=j*Y-z*G,w=H.cur[q];if(E===0)w.x=_.x+N.x+V.x+X.x>>2,w.y=_.y+N.y+V.y+X.y>>2;else{let F=V.x-_.x,A=V.y-_.y,B=(F*Y-A*G)/E;w.x=Math.round(_.x+B*j),w.y=Math.round(_.y+B*z)}H.tags[q]|=48}function ZZ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop],K=$.zp0,J=$.zp1;if(Z<0||Z>=K.nPoints){$.error=`ALIGNPTS: invalid point ${Z}`;return}if(Q<0||Q>=J.nPoints){$.error=`ALIGNPTS: invalid point ${Q}`;return}let q=V6($,K,Z),U=V6($,J,Q),W=q+U>>1;T6($,K,Z,W-q),T6($,J,Q,W-U),P6($,K,Z),P6($,J,Q)}function o1($,Q){let Z=$.stack[--$.stackTop],K=$.zp2;if(Z<0||Z>=K.nPoints){$.error=`GC: invalid point ${Z}`,$.stack[$.stackTop++]=0;return}let J=Q?sQ($,K.org[Z]):V6($,K,Z);$.stack[$.stackTop++]=J}function KZ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop],K=$.zp2;if(Z<0||Z>=K.nPoints){$.error=`SCFS: invalid point ${Z}`;return}let J=V6($,K,Z);T6($,K,Z,Q-J),P6($,K,Z)}function c1($,Q){let Z=$.stack[--$.stackTop],K=$.stack[--$.stackTop],J=$.zp0,q=$.zp1;if(K<0||K>=J.nPoints){$.error=`MD: invalid point ${K}`,$.stack[$.stackTop++]=0;return}if(Z<0||Z>=q.nPoints){$.error=`MD: invalid point ${Z}`,$.stack[$.stackTop++]=0;return}let U;if(Q)U=f6($,q,Z)-f6($,J,K);else U=V6($,q,Z)-V6($,J,K);$.stack[$.stackTop++]=U}function JZ($){$.stack[$.stackTop++]=$.ppem}function qZ($){$.stack[$.stackTop++]=$.pointSize}function UZ($){let Q=$.pts,Z=$.GS.loop;$.GS.loop=1;for(let K=0;K<Z;K++){let J=$.stack[--$.stackTop];if(J<0||J>=Q.nPoints){$.error=`FLIPPT: invalid point ${J}`;return}Q.tags[J]^=1}}function WZ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop],K=$.pts;if(Z<0||Q>=K.nPoints||Z>Q){$.error=`FLIPRGON: invalid range ${Z}-${Q}`;return}for(let J=Z;J<=Q;J++)K.tags[J]|=1}function HZ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop],K=$.pts;if(Z<0||Q>=K.nPoints||Z>Q){$.error=`FLIPRGOFF: invalid range ${Z}-${Q}`;return}for(let J=Z;J<=Q;J++)K.tags[J]&=-2}function R9($,Q){let Z=$.stack[--$.stackTop],K=K8(Z,$.GS);$.stack[$.stackTop++]=X8(Z,K,$.GS)}function T9($,Q){let Z=$.stack[--$.stackTop],K=K8(Z,$.GS);$.stack[$.stackTop++]=Z+K}function _Z($){i1($,0)}function NZ($){i1($,16)}function VZ($){i1($,32)}function i1($,Q){let Z=$.stack[--$.stackTop];if(Z<0){$.error=`DELTAP: invalid count ${Z}`;return}let K=$.zp0;for(let J=0;J<Z;J++){let q=$.stack[--$.stackTop],U=$.stack[--$.stackTop];if(q<0||q>=K.nPoints){$.error=`DELTAP: invalid point ${q}`;return}let W=(U>>4&15)+$.GS.deltaBase+Q,H=U&15;if(W!==$.ppem)continue;let _=1<<6-$.GS.deltaShift,N=H-8;if(N>=0)N+=1;let V=N*_;T6($,K,q,V),P6($,K,q)}}function XZ($){s1($,0)}function jZ($){s1($,16)}function zZ($){s1($,32)}function s1($,Q){let Z=$.stack[--$.stackTop];if(Z<0){$.error=`DELTAC: invalid count ${Z}`;return}for(let K=0;K<Z;K++){let J=$.stack[--$.stackTop],q=$.stack[--$.stackTop];if(J<0||J>=$.cvtSize){$.error=`DELTAC: invalid CVT index ${J}`;return}let U=(q>>4&15)+$.GS.deltaBase+Q,W=q&15;if(U!==$.ppem)continue;let H=1<<6-$.GS.deltaShift,_=W-8;if(_>=0)_+=1;let N=_*H;$.cvt[J]+=N}}function a1($,Q){if(Q===0)$.GS.projVector={x:0,y:16384},$.GS.freeVector={x:0,y:16384},$.GS.dualVector={x:0,y:16384};else $.GS.projVector={x:16384,y:0},$.GS.freeVector={x:16384,y:0},$.GS.dualVector={x:16384,y:0}}function r1($,Q){if(Q===0)$.GS.projVector={x:0,y:16384},$.GS.dualVector={x:0,y:16384};else $.GS.projVector={x:16384,y:0},$.GS.dualVector={x:16384,y:0}}function t1($,Q){if(Q===0)$.GS.freeVector={x:0,y:16384};else $.GS.freeVector={x:16384,y:0}}function e1($,Q,Z,K,J,q){let U=K===0?$.twilight:$.pts,W=J===0?$.twilight:$.pts,H=q?U.org[Q]:U.cur[Q],_=q?W.org[Z]:W.cur[Z];if(!H||!_)return{x:16384,y:0};let N=H.x-_.x,V=H.y-_.y,X=Math.sqrt(N*N+V*V);if(X===0)return{x:16384,y:0};return{x:Math.round(N/X*16384),y:Math.round(V/X*16384)}}function $5($,Q){let Z=$.stack[--$.stackTop],K=$.stack[--$.stackTop],J=e1($,Z,K,$.GS.gep1,$.GS.gep2,!1);if(Q){let q=J.x;J.x=J.y,J.y=-q}$.GS.projVector=J,$.GS.dualVector={...J}}function Q5($,Q){let Z=$.stack[--$.stackTop],K=$.stack[--$.stackTop],J=e1($,Z,K,$.GS.gep1,$.GS.gep2,!1);if(Q){let q=J.x;J.x=J.y,J.y=-q}$.GS.freeVector=J}function Z5($,Q){let Z=$.stack[--$.stackTop],K=$.stack[--$.stackTop],J=e1($,Z,K,$.GS.gep1,$.GS.gep2,!0);if(Q){let q=J.x;J.x=J.y,J.y=-q}$.GS.dualVector=J}function GZ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop],K=Math.sqrt(Z*Z+Q*Q);if(K===0)$.GS.projVector={x:16384,y:0};else $.GS.projVector={x:Math.round(Z/K*16384),y:Math.round(Q/K*16384)};$.GS.dualVector={...$.GS.projVector}}function YZ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop],K=Math.sqrt(Z*Z+Q*Q);if(K===0)$.GS.freeVector={x:16384,y:0};else $.GS.freeVector={x:Math.round(Z/K*16384),y:Math.round(Q/K*16384)}}function EZ($){$.stack[$.stackTop++]=$.GS.projVector.x,$.stack[$.stackTop++]=$.GS.projVector.y}function wZ($){$.stack[$.stackTop++]=$.GS.freeVector.x,$.stack[$.stackTop++]=$.GS.freeVector.y}function AZ($){$.GS.freeVector={...$.GS.projVector}}function FZ($){$.GS.rp0=$.stack[--$.stackTop]}function LZ($){$.GS.rp1=$.stack[--$.stackTop]}function DZ($){$.GS.rp2=$.stack[--$.stackTop]}function BZ($){let Q=$.stack[--$.stackTop];if(Q!==0&&Q!==1){$.error=`SZP0: invalid zone ${Q}`;return}$.GS.gep0=Q,$.zp0=Q===0?$.twilight:$.pts}function MZ($){let Q=$.stack[--$.stackTop];if(Q!==0&&Q!==1){$.error=`SZP1: invalid zone ${Q}`;return}$.GS.gep1=Q,$.zp1=Q===0?$.twilight:$.pts}function RZ($){let Q=$.stack[--$.stackTop];if(Q!==0&&Q!==1){$.error=`SZP2: invalid zone ${Q}`;return}$.GS.gep2=Q,$.zp2=Q===0?$.twilight:$.pts}function TZ($){let Q=$.stack[--$.stackTop];if(Q!==0&&Q!==1){$.error=`SZPS: invalid zone ${Q}`;return}$.GS.gep0=Q,$.GS.gep1=Q,$.GS.gep2=Q;let Z=Q===0?$.twilight:$.pts;$.zp0=Z,$.zp1=Z,$.zp2=Z}function OZ($){let Q=$.stack[--$.stackTop];if(Q<=0){$.GS.loop=0;return}$.GS.loop=Q}function PZ($){$.GS.minimumDistance=$.stack[--$.stackTop]}function vZ($){if($.GS.controlValueCutIn=$.stack[--$.stackTop],j6?.HINT_TRACE_SCVTCI==="1")console.log("trace SCVTCI",{ip:$.IP,range:$.currentRange,value:$.GS.controlValueCutIn,ppem:$.ppem})}function IZ($){$.GS.singleWidthCutIn=$.stack[--$.stackTop]}function kZ($){$.GS.singleWidthValue=$.stack[--$.stackTop]}function CZ($){$.GS.deltaBase=$.stack[--$.stackTop]}function SZ($){$.GS.deltaShift=$.stack[--$.stackTop]}function hZ($){$.GS.roundState=1}function yZ($){$.GS.roundState=0}function bZ($){$.GS.roundState=2}function mZ($){$.GS.roundState=3}function gZ($){$.GS.roundState=4}function uZ($){$.GS.roundState=5}function xZ($){let Q=$.stack[--$.stackTop];M9(Q,$.GS),$.GS.roundState=6}function fZ($){let Q=$.stack[--$.stackTop];M9(Q,$.GS),$.GS.roundState=7}function lZ($){$.GS.autoFlip=!0}function dZ($){$.GS.autoFlip=!1}function nZ($){$.GS.scanControl=$.stack[--$.stackTop]}function pZ($){$.GS.scanType=$.stack[--$.stackTop]}function oZ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop];if(Q===1||Q===2)if(Z)$.GS.instructControl|=Q;else $.GS.instructControl&=~Q}function cZ($){let Q=$.stack[--$.stackTop],Z=0;if(Q&1)Z|=40;if(Q&32)Z|=4096;$.stack[$.stackTop++]=Z}function iZ($){let Q=$.stack[--$.stackTop];if(Q<0||Q>=$.storageSize){$.error=`RS: invalid index ${Q}`,$.stack[$.stackTop++]=0;return}let Z=j6?.HINT_TRACE_STORAGE;if(Z){if(Z.split(",").map((J)=>Number.parseInt(J.trim(),10)).includes(Q))console.log("trace RS",{ip:$.IP,range:$.currentRange,index:Q,value:$.storage[Q]})}$.stack[$.stackTop++]=$.storage[Q]}function sZ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop];if(Z<0||Z>=$.storageSize){$.error=`WS: invalid index ${Z}`;return}$.storage[Z]=Q;let K=j6?.HINT_TRACE_STORAGE;if(K){if(K.split(",").map((q)=>Number.parseInt(q.trim(),10)).includes(Z))console.log("trace WS",{ip:$.IP,range:$.currentRange,index:Z,value:Q})}}function aZ($){let Q=$.stack[--$.stackTop];if(Q<0||Q>=$.cvtSize){$.error=`RCVT: invalid index ${Q}`,$.stack[$.stackTop++]=0;return}$.stack[$.stackTop++]=$.cvt[Q]}function rZ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop];if(Z<0||Z>=$.cvtSize){$.error=`WCVTP: invalid index ${Z}`;return}if($.cvt[Z]=Q,j6?.HINT_TRACE_CVT0==="1"&&Z===0)console.log("trace WCVTP",{ip:$.IP,range:$.currentRange,index:Z,value:Q,ppem:$.ppem});let K=j6?.HINT_TRACE_CVT;if(K){let J=K.split(",").map((q)=>Number.parseInt(q.trim(),10)).filter((q)=>Number.isFinite(q));if(J.length===0||J.includes(Z))console.log("trace WCVTP",{ip:$.IP,range:$.currentRange,index:Z,value:Q,ppem:$.ppem})}}function tZ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop];if(Z<0||Z>=$.cvtSize){$.error=`WCVTF: invalid index ${Z}`;return}if($.cvt[Z]=u6(Q,$.scaleFix),j6?.HINT_TRACE_CVT0==="1"&&Z===0)console.log("trace WCVTF",{ip:$.IP,range:$.currentRange,index:Z,value:Q,ppem:$.ppem})}function eZ($){let Q=$.stack[--$.stackTop],Z=$.zp0;if(Q<0||Q>=Z.nPoints){$.error=`UTP: invalid point ${Q}`;return}let K=$.GS.freeVector;if(K.y!==0)Z.tags[Q]&=~32;if(K.x!==0)Z.tags[Q]&=~16}function Q7($){K7($,16,!0)}function Z7($){K7($,32,!1)}function K7($,Q,Z){let K=$.pts,J=K.nPoints,q=K.nContours;if(J===0||q===0)return;let U=0;for(let W=0;W<q;W++){let H=K.contours[W],_=-1;for(let j=U;j<=H;j++)if(K.tags[j]&Q){_=j;break}if(_<0){U=H+1;continue}let N=_,V=_+1,X=!1;while(!0){if(V>H){if(X)break;V=U,X=!0}if(V===_&&X){if(N!==_)$7(K,N,_,U,H,Z);else lW(K,U,H,_,Z);break}if(K.tags[V]&Q){if(N!==V)$7(K,N,V,U,H,Z);N=V}V++}U=H+1}}function lW($,Q,Z,K,J){let q=J?$.org[K]?.x:$.org[K]?.y,W=(J?$.cur[K]?.x:$.cur[K]?.y)-q;if(W===0)return;for(let H=Q;H<=Z;H++){if(H===K)continue;if(J)$.cur[H].x+=W;else $.cur[H].y+=W}}function $7($,Q,Z,K,J,q){let U=Q,W=Z,H=q?$.orus[U]?.x:$.orus[U]?.y,_=q?$.orus[W]?.x:$.orus[W]?.y;if(H>_){let F=H;H=_,_=F;let A=U;U=W,W=A}let N=q?$.org[U]?.x:$.org[U]?.y,V=q?$.org[W]?.x:$.org[W]?.y,X=q?$.cur[U]?.x:$.cur[U]?.y,j=q?$.cur[W]?.x:$.cur[W]?.y,z=X-N,G=j-V,Y=X===j||H===_,E=Y?0:oQ(j-X,_-H),w=Q+1;if(w>J)w=K;while(w!==Z){let F=q?$.org[w]?.x:$.org[w]?.y,A;if(F<=N)A=F+z;else if(F>=V)A=F+G;else if(Y)A=X;else{let B=q?$.orus[w]?.x:$.orus[w]?.y;A=X+g1(B-H,E)}if(q)$.cur[w].x=A;else $.cur[w].y=A;if(w++,w>J)w=K}}function J7($){let Q=$.stack[$.stackTop-1];$.stack[$.stackTop++]=Q}function q7($){$.stackTop--}function U7($){$.stackTop=0}function W7($){let Q=$.stack[$.stackTop-1],Z=$.stack[$.stackTop-2];$.stack[$.stackTop-1]=Z,$.stack[$.stackTop-2]=Q}function H7($){let Q=$.stackTop;$.stack[$.stackTop++]=Q}function _7($){let Q=$.stack[--$.stackTop];if(Q<=0||Q>$.stackTop){$.error=`CINDEX: invalid index ${Q}`;return}let Z=$.stack[$.stackTop-Q];$.stack[$.stackTop++]=Z}function N7($){let Q=$.stack[--$.stackTop];if(Q<=0||Q>$.stackTop){$.error=`MINDEX: invalid index ${Q}`;return}let Z=$.stack[$.stackTop-Q];for(let K=$.stackTop-Q;K<$.stackTop-1;K++)$.stack[K]=$.stack[K+1];$.stack[$.stackTop-1]=Z}function V7($){let Q=$.stack[$.stackTop-1],Z=$.stack[$.stackTop-2],K=$.stack[$.stackTop-3];$.stack[$.stackTop-3]=Z,$.stack[$.stackTop-2]=Q,$.stack[$.stackTop-1]=K}function K5($,Q){for(let Z=0;Z<Q;Z++)$.stack[$.stackTop++]=$.code[$.IP++]}function J5($,Q){for(let Z=0;Z<Q;Z++){let K=$.code[$.IP++],J=$.code[$.IP++],q=K<<8|J;if(q>=32768)q-=65536;$.stack[$.stackTop++]=q}}function X7($){let Q=$.code[$.IP++];K5($,Q)}function j7($){let Q=$.code[$.IP++];J5($,Q)}function q5($){while($.IP<$.codeSize&&$.error===null){if(++$.instructionCount>$.maxInstructions){$.error="Instruction limit exceeded (possible infinite loop)";return}let Q=$.code[$.IP++];$.opcode=Q,dW($,Q)}}function dW($,Q){if(j6?.HINT_TRACE_FUNC48==="1"&&$.currentRange===1&&$.IP-1>=1527&&$.IP-1<1582)console.log("trace func48",{ip:$.IP-1,opcode:Q,stackTop:$.stackTop,stackTail:Array.from($.stack.slice(Math.max(0,$.stackTop-6),$.stackTop))});if(Q>=176&&Q<=183){K5($,Q-176+1);return}if(Q>=184&&Q<=191){J5($,Q-184+1);return}if(Q>=192&&Q<=223){aQ($,Q&31);return}if(Q>=224&&Q<=255){rQ($,Q&31);return}switch(Q){case D.SVTCA_Y:a1($,0);break;case D.SVTCA_X:a1($,1);break;case D.SPVTCA_Y:r1($,0);break;case D.SPVTCA_X:r1($,1);break;case D.SFVTCA_Y:t1($,0);break;case D.SFVTCA_X:t1($,1);break;case D.SPVTL_0:$5($,!1);break;case D.SPVTL_1:$5($,!0);break;case D.SFVTL_0:Q5($,!1);break;case D.SFVTL_1:Q5($,!0);break;case D.SDPVTL_0:Z5($,!1);break;case D.SDPVTL_1:Z5($,!0);break;case D.SPVFS:GZ($);break;case D.SFVFS:YZ($);break;case D.GPV:EZ($);break;case D.GFV:wZ($);break;case D.SFVTPV:AZ($);break;case D.ISECT:QZ($);break;case D.SRP0:FZ($);break;case D.SRP1:LZ($);break;case D.SRP2:DZ($);break;case D.SZP0:BZ($);break;case D.SZP1:MZ($);break;case D.SZP2:RZ($);break;case D.SZPS:TZ($);break;case D.SLOOP:OZ($);break;case D.RTG:hZ($);break;case D.RTHG:yZ($);break;case D.SMD:PZ($);break;case D.ELSE:bQ($);break;case D.JMPR:gQ($);break;case D.SCVTCI:vZ($);break;case D.SSWCI:IZ($);break;case D.SSW:kZ($);break;case D.DUP:J7($);break;case D.POP:q7($);break;case D.CLEAR:U7($);break;case D.SWAP:W7($);break;case D.DEPTH:H7($);break;case D.CINDEX:_7($);break;case D.MINDEX:N7($);break;case D.ROLL:V7($);break;case D.FDEF:fQ($);break;case D.ENDF:lQ($);break;case D.CALL:dQ($);break;case D.LOOPCALL:nQ($);break;case D.MDAP_0:x1($,!1);break;case D.MDAP_1:x1($,!0);break;case D.IUP_Y:Z7($);break;case D.IUP_X:Q7($);break;case D.SHP_0:l1($,!1);break;case D.SHP_1:l1($,!0);break;case D.SHC_0:d1($,!1);break;case D.SHC_1:d1($,!0);break;case D.SHZ_0:n1($,!1);break;case D.SHZ_1:n1($,!0);break;case D.SHPIX:tQ($);break;case D.IP:eQ($);break;case D.MSIRP_0:p1($,!1);break;case D.MSIRP_1:p1($,!0);break;case D.ALIGNRP:$Z($);break;case D.ALIGNPTS:ZZ($);break;case D.UTP:eZ($);break;case D.RTDG:bZ($);break;case D.MIAP_0:f1($,!1);break;case D.MIAP_1:f1($,!0);break;case D.NPUSHB:X7($);break;case D.NPUSHW:j7($);break;case D.WS:sZ($);break;case D.RS:iZ($);break;case D.WCVTP:rZ($);break;case D.RCVT:aZ($);break;case D.GC_0:o1($,!1);break;case D.GC_1:o1($,!0);break;case D.SCFS:KZ($);break;case D.MD_0:c1($,!0);break;case D.MD_1:c1($,!1);break;case D.MPPEM:JZ($);break;case D.MPS:qZ($);break;case D.FLIPON:lZ($);break;case D.FLIPOFF:dZ($);break;case D.DEBUG:break;case D.LT:MQ($);break;case D.LTEQ:RQ($);break;case D.GT:TQ($);break;case D.GTEQ:OQ($);break;case D.EQ:PQ($);break;case D.NEQ:vQ($);break;case D.ODD:IQ($);break;case D.EVEN:kQ($);break;case D.IF:yQ($);break;case D.EIF:mQ($);break;case D.AND:CQ($);break;case D.OR:SQ($);break;case D.NOT:hQ($);break;case D.DELTAP1:_Z($);break;case D.SDB:CZ($);break;case D.SDS:SZ($);break;case D.ADD:zQ($);break;case D.SUB:GQ($);break;case D.DIV:YQ($);break;case D.MUL:EQ($);break;case D.ABS:wQ($);break;case D.NEG:AQ($);break;case D.FLOOR:FQ($);break;case D.CEILING:LQ($);break;case D.ROUND_0:R9($,0);break;case D.ROUND_1:R9($,1);break;case D.ROUND_2:R9($,2);break;case D.ROUND_3:R9($,3);break;case D.NROUND_0:T9($,0);break;case D.NROUND_1:T9($,1);break;case D.NROUND_2:T9($,2);break;case D.NROUND_3:T9($,3);break;case D.WCVTF:tZ($);break;case D.DELTAP2:NZ($);break;case D.DELTAP3:VZ($);break;case D.DELTAC1:XZ($);break;case D.DELTAC2:jZ($);break;case D.DELTAC3:zZ($);break;case D.SROUND:xZ($);break;case D.S45ROUND:fZ($);break;case D.JROT:uQ($);break;case D.JROF:xQ($);break;case D.ROFF:uZ($);break;case D.RUTG:gZ($);break;case D.RDTG:mZ($);break;case D.SANGW:$.stackTop--;break;case D.AA:$.stackTop--;break;case D.FLIPPT:UZ($);break;case D.FLIPRGON:WZ($);break;case D.FLIPRGOFF:HZ($);break;case D.SCANCTRL:nZ($);break;case D.SCANTYPE:pZ($);break;case D.MAX:DQ($);break;case D.MIN:BQ($);break;case D.GETINFO:cZ($);break;case D.IDEF:pQ($);break;case D.INSTCTRL:oZ($);break;default:if(Q<$.maxIDefs&&$.IDefs[Q]?.active){let Z=$.IDefs[Q];if($.callStackTop>=$.maxCallStack){$.error="IDEF call: call stack overflow";return}let K=$.callStack[$.callStackTop++];K.callerIP=$.IP,K.callerRange=$.currentRange,K.def={id:Q,start:Z.start,end:Z.end,active:!0,range:Z.range},K.count=1,$.currentRange=Z.range;let J=$.codeRanges.get($.currentRange);if(J)$.code=J.code,$.codeSize=J.size;$.IP=Z.start}else $.error=`Unknown opcode 0x${Q.toString(16)}`}}function o8($,Q,Z){$.codeRanges.set(Q,{code:Z,size:Z.length})}function O9($,Q){let Z=$.codeRanges.get(Q);if(!Z)return;$.stackTop=0,$.callStackTop=0,$.currentRange=Q,$.code=Z.code,$.codeSize=Z.size,$.IP=0,$.instructionCount=0,q5($)}function E0($){$.twilight.nPoints=$.twilight.org.length;for(let Q=0;Q<$.twilight.nPoints;Q++)$.twilight.org[Q].x=0,$.twilight.org[Q].y=0,$.twilight.cur[Q].x=0,$.twilight.cur[Q].y=0,$.twilight.tags[Q]=0;$.zp0=$.twilight,$.zp1=$.twilight,$.zp2=$.twilight,$.GS.gep0=0,$.GS.gep1=0,$.GS.gep2=0,O9($,1)}function w0($){$.GS={...$.defaultGS},$.twilight.nPoints=$.twilight.org.length;for(let Q=0;Q<$.twilight.nPoints;Q++)$.twilight.org[Q].x=0,$.twilight.org[Q].y=0,$.twilight.cur[Q].x=0,$.twilight.cur[Q].y=0,$.twilight.tags[Q]=0;$.zp0=$.twilight,$.zp1=$.twilight,$.zp2=$.twilight,$.GS.gep0=0,$.GS.gep1=0,$.GS.gep2=0,O9($,2),$.defaultGS={...$.GS},$.defaultGS.projVector={x:16384,y:0},$.defaultGS.freeVector={x:16384,y:0},$.defaultGS.dualVector={x:16384,y:0},$.defaultGS.rp0=0,$.defaultGS.rp1=0,$.defaultGS.rp2=0,$.defaultGS.loop=1,$.defaultGS.gep0=1,$.defaultGS.gep1=1,$.defaultGS.gep2=1}function A0($,Q){$.GS={...$.defaultGS},$.GS.rp0=0,$.GS.rp1=0,$.GS.rp2=0,$.GS.loop=1,$.zp0=$.pts,$.zp1=$.pts,$.zp2=$.pts,$.GS.gep0=1,$.GS.gep1=1,$.GS.gep2=1,o8($,3,Q),O9($,3)}function F0($,Q=256,Z=64,K=64,J=16,q){let U=G0(Q,Z,K,K,32,J),W;if(q)W=new Int32Array(q),U.cvt=new Int32Array(q),U.cvtSize=q.length;return U.twilight.nPoints=J,U.zp0=U.twilight,U.zp1=U.twilight,U.zp2=U.twilight,{ctx:U,unitsPerEM:$,cvtOriginal:W,fpgmExecuted:!1,currentPpem:0}}function L0($,Q){o8($.ctx,1,Q)}function D0($,Q){o8($.ctx,2,Q)}function U5($){if($.fpgmExecuted)return null;return $.ctx.error=null,E0($.ctx),$.fpgmExecuted=!0,$.ctx.error}function B0($,Q,Z){if(!$.fpgmExecuted){let K=U5($);if(K)return K}if($.currentPpem===Q)return null;return $.ctx.scale=Q*64/$.unitsPerEM,$.ctx.scaleFix=Math.round($.ctx.scale*65536),$.ctx.ppem=Q,$.ctx.pointSize=Z*64,nW($.ctx,$.cvtOriginal),$.ctx.error=null,w0($.ctx),$.currentPpem=Q,$.cvtBase=new Int32Array($.ctx.cvt),$.ctx.error}function nW($,Q){if(!Q){for(let Z=0;Z<$.cvtSize;Z++)$.cvt[Z]=u6($.cvt[Z],$.scaleFix);return}for(let Z=0;Z<$.cvtSize;Z++)$.cvt[Z]=u6(Q[Z],$.scaleFix)}function M0($,Q){let Z=$.ctx,K=Q.xCoords.length,J=Q.contourEnds.length,q=K+4,U=Q8(q,J);U.nPoints=q,U.nContours=J;for(let z=0;z<K;z++){let G=u6(Q.xCoords[z],Z.scaleFix),Y=u6(Q.yCoords[z],Z.scaleFix);U.org[z].x=G,U.org[z].y=Y,U.cur[z].x=G,U.cur[z].y=Y,U.orus[z].x=Q.xCoords[z],U.orus[z].y=Q.yCoords[z],U.tags[z]=Q.flags[z]}let W=1/0;for(let z=0;z<K;z++)if(Q.xCoords[z]<W)W=Q.xCoords[z];if(!Number.isFinite(W))W=0;let H=Q.lsb??0,_=Q.advanceWidth??0,N=u6(W-H,Z.scaleFix);U.org[K].x=N,U.org[K].y=0,U.cur[K].x=N,U.cur[K].y=0,U.orus[K].x=W-H,U.orus[K].y=0,U.tags[K]=0;let V=u6(W-H+_,Z.scaleFix);U.org[K+1].x=V,U.org[K+1].y=0,U.cur[K+1].x=V,U.cur[K+1].y=0,U.orus[K+1].x=W-H+_,U.orus[K+1].y=0,U.tags[K+1]=0;for(let z=K+2;z<q;z++)U.org[z].x=0,U.org[z].y=0,U.cur[z].x=0,U.cur[z].y=0,U.orus[z].x=0,U.orus[z].y=0,U.tags[z]=0;U.cur[K].x=Z8(U.cur[K].x,0),U.cur[K+1].x=Z8(U.cur[K+1].x,0),U.cur[K+2].y=Z8(U.cur[K+2].y,0),U.cur[K+3].y=Z8(U.cur[K+3].y,0);for(let z=0;z<J;z++)U.contours[z]=Q.contourEnds[z];Z.pts=U,Z.zp0=U,Z.zp1=U,Z.zp2=U,Z.twilight.nPoints=Z.twilight.org.length;for(let z=0;z<Z.twilight.nPoints;z++)Z.twilight.org[z].x=0,Z.twilight.org[z].y=0,Z.twilight.cur[z].x=0,Z.twilight.cur[z].y=0,Z.twilight.tags[z]=0;if(Z.storage.fill(0),$.cvtBase)Z.cvt.set($.cvtBase);if(Z.error=null,(Z.GS.instructControl&1)!==0);else if(Q.instructions.length>0)A0(Z,Q.instructions);let X=Array(K),j=Array(K);for(let z=0;z<K;z++)X[z]=U.cur[z]?.x,j[z]=U.cur[z]?.y;return{xCoords:X,yCoords:j,flags:Q.flags,contourEnds:Q.contourEnds,error:Z.error}}function z7($){return $.map((Q)=>Q/64)}var R0;((q)=>{q[q.Invalid=0]="Invalid";q[q.LTR=4]="LTR";q[q.RTL=5]="RTL";q[q.TTB=6]="TTB";q[q.BTT=7]="BTT"})(R0||={});var G7;((K)=>{K[K.MonotoneGraphemes=0]="MonotoneGraphemes";K[K.MonotoneCharacters=1]="MonotoneCharacters";K[K.Characters=2]="Characters"})(G7||={});var Y7;((U)=>{U[U.Default=0]="Default";U[U.BeginningOfText=1]="BeginningOfText";U[U.EndOfText=2]="EndOfText";U[U.PreserveDefaultIgnorables=4]="PreserveDefaultIgnorables";U[U.RemoveDefaultIgnorables=8]="RemoveDefaultIgnorables";U[U.DoNotInsertDottedCircle=16]="DoNotInsertDottedCircle"})(Y7||={});var T0;((J)=>{J[J.Base=1]="Base";J[J.Ligature=2]="Ligature";J[J.Mark=3]="Mark";J[J.Component=4]="Component"})(T0||={});function k($){if($.length!==4)throw Error(`Tag must be exactly 4 characters: "${$}"`);return $.charCodeAt(0)<<24|$.charCodeAt(1)<<16|$.charCodeAt(2)<<8|$.charCodeAt(3)}function P9($){return String.fromCharCode($>>24&255,$>>16&255,$>>8&255,$&255)}var p={head:k("head"),hhea:k("hhea"),hmtx:k("hmtx"),maxp:k("maxp"),cmap:k("cmap"),loca:k("loca"),glyf:k("glyf"),name:k("name"),OS2:k("OS/2"),post:k("post"),GDEF:k("GDEF"),GSUB:k("GSUB"),GPOS:k("GPOS"),BASE:k("BASE"),JSTF:k("JSTF"),MATH:k("MATH"),CFF:k("CFF "),CFF2:k("CFF2"),fvar:k("fvar"),gvar:k("gvar"),avar:k("avar"),HVAR:k("HVAR"),VVAR:k("VVAR"),MVAR:k("MVAR"),morx:k("morx"),kerx:k("kerx"),kern:k("kern"),trak:k("trak"),feat:k("feat"),COLR:k("COLR"),CPAL:k("CPAL"),SVG:k("SVG "),sbix:k("sbix"),CBDT:k("CBDT"),CBLC:k("CBLC"),STAT:k("STAT"),vhea:k("vhea"),vmtx:k("vmtx"),VORG:k("VORG"),fpgm:k("fpgm"),prep:k("prep"),cvt:k("cvt "),gasp:k("gasp")},qG={ccmp:k("ccmp"),locl:k("locl"),rlig:k("rlig"),liga:k("liga"),clig:k("clig"),calt:k("calt"),rclt:k("rclt"),dlig:k("dlig"),smcp:k("smcp"),c2sc:k("c2sc"),isol:k("isol"),init:k("init"),medi:k("medi"),fina:k("fina"),kern:k("kern"),mark:k("mark"),mkmk:k("mkmk"),curs:k("curs"),dist:k("dist")};class O8{direction=4;script="Zyyy";language=null;infos=[];positions=[];_deleted=null;_deletedCount=0;_infoPool=[];_posPool=[];_capacity=0;static withCapacity($){let Q=new O8;return Q._capacity=$,Q}get length(){return this.infos.length}reset(){this.infos.length=0,this.positions.length=0,this._deleted=null,this._deletedCount=0}initFromCodepoints($,Q,Z){let K=$.length,J=this._infoPool.length;if(J<K){let q=K-J;for(let U=0;U<q;U++)this._infoPool.push({glyphId:0,cluster:0,mask:0,codepoint:0}),this._posPool.push({xAdvance:0,yAdvance:0,xOffset:0,yOffset:0})}this.infos.length=K,this.positions.length=K;for(let q=0;q<K;q++){let U=$[q],W=this._infoPool[q];W.glyphId=Z(U),W.cluster=Q[q],W.mask=4294967295,W.codepoint=U,this.infos[q]=W;let H=this._posPool[q];H.xAdvance=0,H.yAdvance=0,H.xOffset=0,H.yOffset=0,this.positions[q]=H}this._deleted=null,this._deletedCount=0}initFromCodepointsWithFont($,Q,Z){let K=$.length,J=this._infoPool.length;if(J<K){let q=K-J;for(let U=0;U<q;U++)this._infoPool.push({glyphId:0,cluster:0,mask:0,codepoint:0}),this._posPool.push({xAdvance:0,yAdvance:0,xOffset:0,yOffset:0})}this.infos.length=K,this.positions.length=K;for(let q=0;q<K;q++){let U=$[q],W=this._infoPool[q];W.glyphId=Z.glyphId(U),W.cluster=Q[q],W.mask=4294967295,W.codepoint=U,this.infos[q]=W;let H=this._posPool[q];H.xAdvance=0,H.yAdvance=0,H.xOffset=0,H.yOffset=0,this.positions[q]=H}this._deleted=null,this._deletedCount=0}initFromInfos($){this.infos=$;let Q=$.length,Z=Array(Q);for(let K=0;K<Q;K++)Z[K]={xAdvance:0,yAdvance:0,xOffset:0,yOffset:0};this.positions=Z}setAdvance($,Q,Z=0){let K=this.positions[$];if(K)K.xAdvance=Q,K.yAdvance=Z}addOffset($,Q,Z){let K=this.positions[$];if(K)K.xOffset+=Q,K.yOffset+=Z}replaceGlyph($,Q){let Z=this.infos[$];if(Z)Z.glyphId=Q}insertGlyph($,Q,Z){if(this.infos.splice($,0,Q),this.positions.splice($,0,Z),this._deleted){let K=new Uint8Array(this.infos.length);for(let J=0;J<$;J++)K[J]=this._deleted[J];K[$]=0;for(let J=$;J<this._deleted.length;J++)K[J+1]=this._deleted[J];this._deleted=K}}removeRange($,Q){let Z=Q-$;if(this.infos.splice($,Z),this.positions.splice($,Z),this._deleted&&this._deleted.length>this.infos.length)this._deleted=this._deleted.slice(0,this.infos.length)}markDeleted($){if(!this._deleted)this._deleted=new Uint8Array(this.infos.length);if(!this._deleted[$])this._deleted[$]=1,this._deletedCount++}isDeleted($){return this._deleted?this._deleted[$]===1:!1}hasPendingDeletions(){return this._deletedCount>0}compact(){if(this._deletedCount===0||!this._deleted)return;let $=0;for(let Q=0;Q<this.infos.length;Q++)if(!this._deleted[Q]){if($!==Q)this.infos[$]=this.infos[Q],this.positions[$]=this.positions[Q];$++}this.infos.length=$,this.positions.length=$,this._deleted=null,this._deletedCount=0}mergeClusters($,Q){if($>=Q||$<0||Q>=this.infos.length)return;let Z=this.infos[$]?.cluster;for(let K=$+1;K<=Q;K++){let J=this.infos[K];if(J)J.cluster=Z}}reverse(){this.infos.reverse(),this.positions.reverse()}reverseRange($,Q){let Z=$,K=Q-1;while(Z<K){let J=this.infos[Z],q=this.infos[K];if(!J||!q)break;this.infos[Z]=q,this.infos[K]=J;let U=this.positions[Z],W=this.positions[K];if(!U||!W)break;this.positions[Z]=W,this.positions[K]=U,Z++,K--}}getTotalAdvance(){let $=0,Q=0,Z=this.positions;for(let K=0;K<Z.length;K++){let J=Z[K];$+=J.xAdvance,Q+=J.yAdvance}return{x:$,y:Q}}serialize(){let $=[],Q=this.infos,Z=this.positions;for(let K=0;K<Q.length;K++){let J=Q[K],q=Z[K];if(!q)continue;let U=`${J.glyphId}`;if(K===0||J.cluster!==Q[K-1]?.cluster)U+=`=${J.cluster}`;if(q.xOffset!==0||q.yOffset!==0)U+=`@${q.xOffset},${q.yOffset}`;if(q.xAdvance!==0)U+=`+${q.xAdvance}`;$.push(U)}return`[${$.join("|")}]`}glyphIds(){return this.infos.map(($)=>$.glyphId)}clusters(){return this.infos.map(($)=>$.cluster)}*[Symbol.iterator](){let $=this.infos,Q=this.positions;for(let Z=0;Z<$.length;Z++){let K=$[Z],J=Q[Z];if(!J)continue;yield{info:K,position:J}}}}class E7{_direction=4;_script="Zyyy";_language=null;_clusterLevel=0;_flags=0;codepoints=[];clusters=[];preContext=[];postContext=[];addStr($,Q=0){let Z=$.length;if(Z===0)return this;if(this.codepoints.length>0)return this._addStrAppend($,Q);let J=Array(Z),q=Array(Z),U=Q,W=0;for(let H=0;H<Z;H++){let _=$.charCodeAt(H);if(_>=55296&&_<=56319&&H+1<Z){let N=$.charCodeAt(H+1);if(N>=56320&&N<=57343){J[W]=(_-55296<<10)+(N-56320)+65536,q[W]=U,W++,U++,H++;continue}}J[W]=_,q[W]=U,W++,U++}if(W<Z)J.length=W,q.length=W;return this.codepoints=J,this.clusters=q,this}_addStrAppend($,Q){let Z=Q,K=$.length;for(let J=0;J<K;J++){let q=$.charCodeAt(J);if(q>=55296&&q<=56319&&J+1<K){let U=$.charCodeAt(J+1);if(U>=56320&&U<=57343){this.codepoints.push((q-55296<<10)+(U-56320)+65536),this.clusters.push(Z),Z++,J++;continue}}this.codepoints.push(q),this.clusters.push(Z),Z++}return this}addCodepoints($,Q=0){let Z=Q;for(let K=0;K<$.length;K++){let J=$[K];this.codepoints.push(J),this.clusters.push(Z),Z++}return this}addCodepoint($,Q){return this.codepoints.push($),this.clusters.push(Q??this.codepoints.length-1),this}setDirection($){return this._direction=$,this}setScript($){return this._script=$,this}setLanguage($){return this._language=$,this}setClusterLevel($){return this._clusterLevel=$,this}setFlags($){return this._flags=$,this}setPreContext($){this.preContext=[];let Q=$.length;for(let Z=0;Z<Q;Z++){let K=$.charCodeAt(Z);if(K>=55296&&K<=56319&&Z+1<Q){let J=$.charCodeAt(Z+1);if(J>=56320&&J<=57343){this.preContext.push((K-55296<<10)+(J-56320)+65536),Z++;continue}}this.preContext.push(K)}return this}setPostContext($){this.postContext=[];let Q=$.length;for(let Z=0;Z<Q;Z++){let K=$.charCodeAt(Z);if(K>=55296&&K<=56319&&Z+1<Q){let J=$.charCodeAt(Z+1);if(J>=56320&&J<=57343){this.postContext.push((K-55296<<10)+(J-56320)+65536),Z++;continue}}this.postContext.push(K)}return this}clear(){return this.codepoints.length=0,this.clusters.length=0,this.preContext.length=0,this.postContext.length=0,this}get length(){return this.codepoints.length}get direction(){return this._direction}get script(){return this._script}get language(){return this._language}get clusterLevel(){return this._clusterLevel}get flags(){return this._flags}toGlyphInfos(){return this.codepoints.map(($,Q)=>({glyphId:0,cluster:this.clusters[Q]??0,mask:0,codepoint:$}))}}function F7($,Q){let Z=$.uint16(),K=$.uint16(),J=$.uint16(),q=$.uint16(),U=$.offset32(),W=$.uint16(),H=$.uint16(),_=$.offset32(),N=H&1?4:2,V=[];for(let z=0;z<=W;z++){let G=N===4?$.uint32():$.uint16()*2;V.push(G)}let X=[];if(q>0){let z=$.sliceFrom(U);for(let G=0;G<q;G++){let Y=[];for(let E=0;E<J;E++)Y.push(z.f2dot14());X.push(Y)}}let j=[];for(let z=0;z<W;z++){let G=V[z],Y=V[z+1];if(G===void 0||Y===void 0){j.push({tupleVariationHeaders:[]});continue}let E=_+G,w=_+Y;if(E===w){j.push({tupleVariationHeaders:[]});continue}let F=$.sliceFrom(E),A=pW(F,w-E,J,X);j.push(A)}return{majorVersion:Z,minorVersion:K,axisCount:J,sharedTupleCount:q,sharedTuples:X,glyphVariationData:j}}function pW($,Q,Z,K){if(Q===0)return{tupleVariationHeaders:[]};let J=$.offset,q=$.uint16(),U=$.offset16(),W=q&4095,H=(q&32768)!==0,_=[];for(let j=0;j<W;j++){let z=$.uint16(),G=$.uint16(),Y=null,E=null,w=null;if(G&32768){Y=[];for(let F=0;F<Z;F++)Y.push($.f2dot14())}else{let F=G&4095;Y=K[F]||null}if(G&16384){E=[],w=[];for(let F=0;F<Z;F++)E.push($.f2dot14());for(let F=0;F<Z;F++)w.push($.f2dot14())}_.push({variationDataSize:z,tupleIndex:G,peakTuple:Y,intermediateStartTuple:E,intermediateEndTuple:w})}let N=$.sliceFrom(J+U),V=null;if(H)V=w7(N);let X=[];for(let j=0;j<_.length;j++){let z=_[j],G=(z.tupleIndex&8192)!==0,Y;if(G)Y=w7(N);else Y=V;let E=Y?Y.length:0,w=E>0?A7(N,E):[],F=E>0?A7(N,E):[],A=[];for(let B=0;B<w.length;B++){let L=w[B],O=F[B];A.push({x:L??0,y:O??0})}X.push({variationDataSize:z.variationDataSize,tupleIndex:z.tupleIndex,peakTuple:z.peakTuple,intermediateStartTuple:z.intermediateStartTuple,intermediateEndTuple:z.intermediateEndTuple,serializedData:new Uint8Array(0),pointNumbers:Y,deltas:A})}return{tupleVariationHeaders:X}}function w7($){let Q=$.uint8(),Z=Q===0?0:Q&128?(Q&127)<<8|$.uint8():Q;if(Z===0)return[];let K=[],J=0;while(K.length<Z){let q=$.uint8(),U=(q&127)+1,W=(q&128)!==0;for(let H=0;H<U&&K.length<Z;H++){let _=W?$.uint16():$.uint8();J+=_,K.push(J)}}return K}function A7($,Q){let Z=[];while(Z.length<Q){let K=$.uint8(),J=(K&63)+1,q=(K&128)!==0,U=(K&64)!==0;for(let W=0;W<J&&Z.length<Q;W++)if(q)Z.push(0);else if(U)Z.push($.int16());else Z.push($.int8())}return Z}function O0($,Q,Z,K){let J=1;for(let q=0;q<$.length;q++){let U=$[q],W=Q[q]??0;if(U===0||W===0){if(U!==0)J=0;continue}if(Z&&K){let H=Z[q],_=K[q];if(H===void 0||_===void 0)continue;if(W<H||W>_){J=0;break}if(W<U)J*=(W-H)/(U-H);else if(W>U)J*=(_-W)/(_-U)}else{if(U>0&&W<0||U<0&&W>0){J=0;break}if(Math.abs(W)<Math.abs(U))J*=W/U}}return J}function oW($,Q,Z,K){let J=$.glyphVariationData[Q];if(!J)return{x:0,y:0};let q=0,U=0;for(let W=0;W<J.tupleVariationHeaders.length;W++){let H=J.tupleVariationHeaders[W];if(!H.peakTuple)continue;let _=O0(H.peakTuple,K,H.intermediateStartTuple,H.intermediateEndTuple);if(_===0)continue;if(H.pointNumbers!==null){let N=H.pointNumbers.indexOf(Z);if(N<0)continue;let V=H.deltas[N];if(V)q+=V.x*_,U+=V.y*_}else{let N=H.deltas[Z];if(N)q+=N.x*_,U+=N.y*_}}return{x:Math.round(q),y:Math.round(U)}}function L7($,Q,Z){let K=Z===0,J=[],q=Q+1;if(K)for(let U=0;U<q;U++)J.push($.uint16()*2);else for(let U=0;U<q;U++)J.push($.uint32());return{offsets:J,isShort:K}}function P0($,Q){if(Q<0||Q>=$.offsets.length-1)return null;let Z=$.offsets[Q],K=$.offsets[Q+1];if(Z===void 0||K===void 0)return null;let J=K-Z;if(J===0)return null;return{offset:Z,length:J}}function cW($,Q){return P0($,Q)!==null}var j8={OnCurve:1,XShortVector:2,YShortVector:4,Repeat:8,XIsSameOrPositive:16,YIsSameOrPositive:32,OverlapSimple:64},w6={Arg1And2AreWords:1,ArgsAreXYValues:2,RoundXYToGrid:4,WeHaveAScale:8,MoreComponents:32,WeHaveAnXAndYScale:64,WeHaveATwoByTwo:128,WeHaveInstructions:256,UseMyMetrics:512,OverlapCompound:1024,ScaledComponentOffset:2048,UnscaledComponentOffset:4096};function B7($){return{reader:$}}function z8($,Q,Z){let K=P0(Q,Z);if(!K)return{type:"empty"};let J=$.reader.slice(K.offset,K.length);return iW(J)}function iW($){let Q=$.int16(),Z=$.int16(),K=$.int16(),J=$.int16(),q=$.int16();if(Q>=0)return sW($,Q,Z,K,J,q);else return aW($,Q,Z,K,J,q)}function sW($,Q,Z,K,J,q){if(Q===0)return{type:"simple",numberOfContours:Q,xMin:Z,yMin:K,xMax:J,yMax:q,contours:[],instructions:new Uint8Array(0)};let U=[];for(let w=0;w<Q;w++)U.push($.uint16());let W=U[Q-1];if(W===void 0)return{type:"simple",numberOfContours:Q,xMin:Z,yMin:K,xMax:J,yMax:q,contours:[],instructions:new Uint8Array(0)};let H=W+1,_=$.uint16(),N=$.bytes(_),V=[];while(V.length<H){let w=$.uint8();if(V.push(w),w&j8.Repeat){let F=$.uint8();for(let A=0;A<F;A++)V.push(w)}}let X=[],j=0;for(let w=0;w<V.length;w++){let F=V[w];if(F&j8.XShortVector){let A=$.uint8();j+=F&j8.XIsSameOrPositive?A:-A}else if(!(F&j8.XIsSameOrPositive))j+=$.int16();X.push(j)}let z=[],G=0;for(let w=0;w<V.length;w++){let F=V[w];if(F&j8.YShortVector){let A=$.uint8();G+=F&j8.YIsSameOrPositive?A:-A}else if(!(F&j8.YIsSameOrPositive))G+=$.int16();z.push(G)}let Y=[],E=0;for(let w=0;w<U.length;w++){let F=U[w],A=[];while(E<=F){let B=X[E],L=z[E],O=V[E];if(B===void 0||L===void 0||O===void 0)break;A.push({x:B,y:L,onCurve:(O&j8.OnCurve)!==0}),E++}Y.push(A)}return{type:"simple",numberOfContours:Q,xMin:Z,yMin:K,xMax:J,yMax:q,contours:Y,instructions:N}}function aW($,Q,Z,K,J,q){let U=[],W;do{W=$.uint16();let _=$.uint16(),N,V;if(W&w6.Arg1And2AreWords)if(W&w6.ArgsAreXYValues)N=$.int16(),V=$.int16();else N=$.uint16(),V=$.uint16();else if(W&w6.ArgsAreXYValues)N=$.int8(),V=$.int8();else N=$.uint8(),V=$.uint8();let X=1,j=0,z=0,G=1;if(W&w6.WeHaveAScale)X=G=$.f2dot14();else if(W&w6.WeHaveAnXAndYScale)X=$.f2dot14(),G=$.f2dot14();else if(W&w6.WeHaveATwoByTwo)X=$.f2dot14(),j=$.f2dot14(),z=$.f2dot14(),G=$.f2dot14();U.push({glyphId:_,flags:W,arg1:N,arg2:V,transform:[X,j,z,G]})}while(W&w6.MoreComponents);let H=new Uint8Array(0);if(W&w6.WeHaveInstructions){let _=$.uint16();H=$.bytes(_)}return{type:"composite",numberOfContours:Q,xMin:Z,yMin:K,xMax:J,yMax:q,components:U,instructions:H}}function rW($,Q,Z,K,J){if($&w6.UnscaledComponentOffset)return!1;if($&w6.ScaledComponentOffset)return!0;return Q!==1||Z!==0||K!==0||J!==1}function tW($){let Q=[];for(let Z=0;Z<$.length;Z++){let K=$[Z];for(let J=0;J<K.length;J++)Q.push(K[J])}return Q}function eW($,Q,Z,K,J,q,U){let W=Array($.length);for(let H=0;H<$.length;H++){let _=$[H],N=Math.round(Q*_.x+K*_.y+q),V=Math.round(Z*_.x+J*_.y+U),X={x:N,y:V,onCurve:_.onCurve};if(_.cubic)X.cubic=!0;W[H]=X}return W}function M7($,Q,Z,K){let[J,q,U,W]=Z.transform,H=(Z.flags&w6.ArgsAreXYValues)!==0,_=tW(K),N=0,V=0;if(H){if(N=Z.arg1,V=Z.arg2,rW(Z.flags,J,q,U,W)){let X=J*N+U*V,j=q*N+W*V;N=X,V=j}if(Z.flags&w6.RoundXYToGrid)N=Math.round(N),V=Math.round(V)}else{let{arg1:X,arg2:j}=Z;if(X>=0&&X<Q.length&&j>=0&&j<_.length){let z=Q[X],G=_[j],Y=J*G.x+U*G.y,E=q*G.x+W*G.y;N=z.x-Y,V=z.y-E}}for(let X=0;X<K.length;X++){let j=K[X],z=eW(j,J,q,U,W,N,V);$.push(z);for(let G=0;G<z.length;G++)Q.push(z[G])}}function W5($,Q,Z,K=0){if(K>32)return[];let J=[],q=[];for(let U=0;U<Z.components.length;U++){let W=Z.components[U],H=z8($,Q,W.glyphId),_;if(H.type==="simple")_=H.contours;else if(H.type==="composite")_=W5($,Q,H,K+1);else continue;M7(J,q,W,_)}return J}var D7=new WeakMap,R7=256;function T7($){let Q=D7.get($);if(!Q)Q=new Map,D7.set($,Q);return Q}function O7($,Q,Z){let K=z8($,Q,Z);if(K.type==="empty")return[];else if(K.type==="simple")return K.contours;else{let J=T7($),q=J.get(Z);if(q)return q;let U=W5($,Q,K);if(J.size>=R7){let W=J.keys().next().value;if(W!==void 0)J.delete(W)}return J.set(Z,U),U}}function P7($,Q,Z){let K=z8($,Q,Z);if(K.type==="empty")return{contours:[],bounds:null};let J={xMin:K.xMin,yMin:K.yMin,xMax:K.xMax,yMax:K.yMax};if(K.type==="simple")return{contours:K.contours,bounds:J};let q=T7($),U=q.get(Z);if(!U){if(U=W5($,Q,K),q.size>=R7){let X=q.keys().next().value;if(X!==void 0)q.delete(X)}q.set(Z,U)}if(U.length===0)return{contours:U,bounds:null};let W=1/0,H=1/0,_=-1/0,N=-1/0;for(let X=0;X<U.length;X++){let j=U[X];for(let z=0;z<j.length;z++){let G=j[z];W=Math.min(W,G.x),H=Math.min(H,G.y),_=Math.max(_,G.x),N=Math.max(N,G.y)}}return{contours:U,bounds:W===1/0?null:{xMin:W,yMin:H,xMax:_,yMax:N}}}function v7($,Q,Z){let K=z8($,Q,Z);if(K.type==="empty")return null;return{xMin:K.xMin,yMin:K.yMin,xMax:K.xMax,yMax:K.yMax}}function I7($,Q,Z,K){let J=$.glyphVariationData[Q];if(!J)return Array(Z).fill({x:0,y:0});let q=Array(Z).fill(null).map(()=>({x:0,y:0}));for(let U=0;U<J.tupleVariationHeaders.length;U++){let W=J.tupleVariationHeaders[U];if(!W.peakTuple)continue;let H=O0(W.peakTuple,K,W.intermediateStartTuple,W.intermediateEndTuple);if(H===0)continue;if(W.pointNumbers!==null)for(let _=0;_<W.pointNumbers.length;_++){let N=W.pointNumbers[_],V=q[N],X=W.deltas[_];if(N<Z&&V&&X)V.x+=X.x*H,V.y+=X.y*H}else for(let _=0;_<Math.min(W.deltas.length,Z);_++){let N=q[_],V=W.deltas[_];if(N&&V)N.x+=V.x*H,N.y+=V.y*H}}for(let U=0;U<q.length;U++){let W=q[U];W.x=Math.round(W.x),W.y=Math.round(W.y)}return q}function k7($,Q){let Z=[],K=0;for(let J=0;J<$.length;J++){let q=$[J],U=[];for(let W=0;W<q.length;W++){let H=q[W],_=Q[K]??{x:0,y:0};U.push({x:H.x+_.x,y:H.y+_.y,onCurve:H.onCurve}),K++}Z.push(U)}return Z}function C7($,Q,Z,K,J){let q=z8($,Q,K);if(q.type==="empty")return[];let U;if(q.type==="simple")U=q.contours;else U=S7($,Q,Z,q,J);if(Z&&J&&J.length>0){let W=0;for(let _=0;_<U.length;_++){let N=U[_];W+=N.length}W+=4;let H=I7(Z,K,W,J);U=k7(U,H)}return U}function S7($,Q,Z,K,J,q=0){if(q>32)return[];let U=[],W=[];for(let H=0;H<K.components.length;H++){let _=K.components[H],N=z8($,Q,_.glyphId),V;if(N.type==="simple"){if(V=N.contours,Z&&J&&J.length>0){let X=0;for(let z=0;z<V.length;z++){let G=V[z];X+=G.length}X+=4;let j=I7(Z,_.glyphId,X,J);V=k7(V,j)}}else if(N.type==="composite")V=S7($,Q,Z,N,J,q+1);else continue;M7(U,W,_,V)}return U}function v6(){return[1,0,0,1,0,0]}function H5(){return[[1,0,0],[0,1,0],[0,0,1]]}function c8($,Q){return[1,0,0,1,$,Q]}function P8($,Q){return[$,0,0,Q,0,0]}function v8($){let Q=Math.cos($),Z=Math.sin($);return[Q,Z,-Z,Q,0,0]}function I8($,Q){return[1,Q,$,1,0,0]}function k8($,Q){return[$[0]*Q[0]+$[2]*Q[1],$[1]*Q[0]+$[3]*Q[1],$[0]*Q[2]+$[2]*Q[3],$[1]*Q[2]+$[3]*Q[3],$[0]*Q[4]+$[2]*Q[5]+$[4],$[1]*Q[4]+$[3]*Q[5]+$[5]]}function v9($,Q){let Z=[[0,0,0],[0,0,0],[0,0,0]];for(let K=0;K<3;K++)for(let J=0;J<3;J++)Z[K][J]=$[K][0]*Q[0][J]+$[K][1]*Q[1][J]+$[K][2]*Q[2][J];return Z}function $6($,Q,Z){return{x:Z[0]*$+Z[2]*Q+Z[4],y:Z[1]*$+Z[3]*Q+Z[5]}}function t($,Q,Z){let K=Z[2][0]*$+Z[2][1]*Q+Z[2][2],J=0.01;if(K<0.01)return{x:(Z[0][0]*$+Z[0][1]*Q+Z[0][2])/0.01,y:(Z[1][0]*$+Z[1][1]*Q+Z[1][2])/0.01};return{x:(Z[0][0]*$+Z[0][1]*Q+Z[0][2])/K,y:(Z[1][0]*$+Z[1][1]*Q+Z[1][2])/K}}function $H($,Q=0,Z=0){let K=$.commands.map((q)=>{switch(q.type){case"M":case"L":return{type:q.type,x:-q.y+Q,y:q.x+Z};case"Q":return{type:"Q",x1:-q.y1+Q,y1:q.x1+Z,x:-q.y+Q,y:q.x+Z};case"C":return{type:"C",x1:-q.y1+Q,y1:q.x1+Z,x2:-q.y2+Q,y2:q.x2+Z,x:-q.y+Q,y:q.x+Z};case"Z":return{type:"Z"};default:return q}}),J=null;if($.bounds){let q=$.bounds;if(J={xMin:-q.yMax+Q,yMin:q.xMin+Z,xMax:-q.yMin+Q,yMax:q.xMax+Z},J.xMin>J.xMax)[J.xMin,J.xMax]=[J.xMax,J.xMin];if(J.yMin>J.yMax)[J.yMin,J.yMax]=[J.yMax,J.yMin]}return{commands:K,bounds:J,flags:$.flags}}function QH($,Q,Z){let K=Q>=0?1<<Q:1/(1<<-Q),J=Z>=0?1<<Z:1/(1<<-Z),q=$.commands.map((W)=>{switch(W.type){case"M":case"L":return{type:W.type,x:W.x*K,y:W.y*J};case"Q":return{type:"Q",x1:W.x1*K,y1:W.y1*J,x:W.x*K,y:W.y*J};case"C":return{type:"C",x1:W.x1*K,y1:W.y1*J,x2:W.x2*K,y2:W.y2*J,x:W.x*K,y:W.y*J};case"Z":return{type:"Z"};default:return W}}),U=null;if($.bounds)U={xMin:$.bounds.xMin*K,yMin:$.bounds.yMin*J,xMax:$.bounds.xMax*K,yMax:$.bounds.yMax*J};return{commands:q,bounds:U,flags:$.flags}}function O6($,Q){let Z=$.commands.map((J)=>{switch(J.type){case"M":case"L":{let q=$6(J.x,J.y,Q);return{type:J.type,x:q.x,y:q.y}}case"Q":{let q=$6(J.x1,J.y1,Q),U=$6(J.x,J.y,Q);return{type:"Q",x1:q.x,y1:q.y,x:U.x,y:U.y}}case"C":{let q=$6(J.x1,J.y1,Q),U=$6(J.x2,J.y2,Q),W=$6(J.x,J.y,Q);return{type:"C",x1:q.x,y1:q.y,x2:U.x,y2:U.y,x:W.x,y:W.y}}case"Z":return{type:"Z"};default:return J}}),K=null;if($.bounds){let J=$.bounds,q=[$6(J.xMin,J.yMin,Q),$6(J.xMax,J.yMin,Q),$6(J.xMin,J.yMax,Q),$6(J.xMax,J.yMax,Q)];K={xMin:Math.min(...q.map((U)=>U.x)),yMin:Math.min(...q.map((U)=>U.y)),xMax:Math.max(...q.map((U)=>U.x)),yMax:Math.max(...q.map((U)=>U.y))}}return{commands:Z,bounds:K,flags:$.flags}}function I9($,Q){let Z=$.commands.map((J)=>{switch(J.type){case"M":case"L":{let q=t(J.x,J.y,Q);return{type:J.type,x:q.x,y:q.y}}case"Q":{let q=t(J.x1,J.y1,Q),U=t(J.x,J.y,Q);return{type:"Q",x1:q.x,y1:q.y,x:U.x,y:U.y}}case"C":{let q=t(J.x1,J.y1,Q),U=t(J.x2,J.y2,Q),W=t(J.x,J.y,Q);return{type:"C",x1:q.x,y1:q.y,x2:U.x,y2:U.y,x:W.x,y:W.y}}case"Z":return{type:"Z"};default:return J}}),K=null;if($.bounds){let J=$.bounds,q=[t(J.xMin,J.yMin,Q),t(J.xMax,J.yMin,Q),t(J.xMin,J.yMax,Q),t(J.xMax,J.yMax,Q)];K={xMin:Math.min(...q.map((U)=>U.x)),yMin:Math.min(...q.map((U)=>U.y)),xMax:Math.max(...q.map((U)=>U.x)),yMax:Math.max(...q.map((U)=>U.y))}}return{commands:Z,bounds:K,flags:$.flags}}function _5($){let Q=1/0,Z=1/0,K=-1/0,J=-1/0;for(let q=0;q<$.commands.length;q++){let U=$.commands[q];switch(U.type){case"M":case"L":Q=Math.min(Q,U.x),Z=Math.min(Z,U.y),K=Math.max(K,U.x),J=Math.max(J,U.y);break;case"Q":Q=Math.min(Q,U.x1,U.x),Z=Math.min(Z,U.y1,U.y),K=Math.max(K,U.x1,U.x),J=Math.max(J,U.y1,U.y);break;case"C":Q=Math.min(Q,U.x1,U.x2,U.x),Z=Math.min(Z,U.y1,U.y2,U.y),K=Math.max(K,U.x1,U.x2,U.x),J=Math.max(J,U.y1,U.y2,U.y);break}}if(!Number.isFinite(Q))return{xMin:0,yMin:0,xMax:0,yMax:0};return{xMin:Q,yMin:Z,xMax:K,yMax:J}}function h7($,Q,Z){let K=$-2*Q+Z;if(Math.abs(K)<0.0000000001)return[];let J=($-Q)/K;if(J>0&&J<1)return[J];return[]}function y7($,Q,Z,K){let J=-$+3*Q-3*Z+K,q=2*($-2*Q+Z),U=-$+Q,W=[];if(Math.abs(J)<0.0000000001){if(Math.abs(q)>0.0000000001){let H=-U/q;if(H>0&&H<1)W.push(H)}}else{let H=q*q-4*J*U;if(H>=0){let _=Math.sqrt(H),N=(-q+_)/(2*J),V=(-q-_)/(2*J);if(N>0&&N<1)W.push(N);if(V>0&&V<1)W.push(V)}}return W}function b7($,Q,Z,K){let J=1-K;return J*J*$+2*J*K*Q+K*K*Z}function m7($,Q,Z,K,J){let q=1-J;return q*q*q*$+3*q*q*J*Q+3*q*J*J*Z+J*J*J*K}function v0($){let Q=1/0,Z=1/0,K=-1/0,J=-1/0,q=0,U=0;for(let W=0;W<$.commands.length;W++){let H=$.commands[W];switch(H.type){case"M":q=H.x,U=H.y,Q=Math.min(Q,q),Z=Math.min(Z,U),K=Math.max(K,q),J=Math.max(J,U);break;case"L":q=H.x,U=H.y,Q=Math.min(Q,q),Z=Math.min(Z,U),K=Math.max(K,q),J=Math.max(J,U);break;case"Q":{Q=Math.min(Q,H.x),Z=Math.min(Z,H.y),K=Math.max(K,H.x),J=Math.max(J,H.y);let _=h7(q,H.x1,H.x);for(let V=0;V<_.length;V++){let X=_[V],j=b7(q,H.x1,H.x,X);Q=Math.min(Q,j),K=Math.max(K,j)}let N=h7(U,H.y1,H.y);for(let V=0;V<N.length;V++){let X=N[V],j=b7(U,H.y1,H.y,X);Z=Math.min(Z,j),J=Math.max(J,j)}q=H.x,U=H.y;break}case"C":{Q=Math.min(Q,H.x),Z=Math.min(Z,H.y),K=Math.max(K,H.x),J=Math.max(J,H.y);let _=y7(q,H.x1,H.x2,H.x);for(let V=0;V<_.length;V++){let X=_[V],j=m7(q,H.x1,H.x2,H.x,X);Q=Math.min(Q,j),K=Math.max(K,j)}let N=y7(U,H.y1,H.y2,H.y);for(let V=0;V<N.length;V++){let X=N[V],j=m7(U,H.y1,H.y2,H.y,X);Z=Math.min(Z,j),J=Math.max(J,j)}q=H.x,U=H.y;break}}}if(!Number.isFinite(Q))return{xMin:0,yMin:0,xMax:0,yMax:0};return{xMin:Q,yMin:Z,xMax:K,yMax:J}}function ZH($,Q,Z){let K=Z;for(let J=0;J<$.commands.length;J++){let q=$.commands[J];switch(q.type){case"M":case"L":{let U=t(q.x,q.y,Q);K=Math.min(K,U.x);break}case"Q":{let U=t(q.x1,q.y1,Q),W=t(q.x,q.y,Q);K=Math.min(K,U.x,W.x);break}case"C":{let U=t(q.x1,q.y1,Q),W=t(q.x2,q.y2,Q),H=t(q.x,q.y,Q);K=Math.min(K,U.x,W.x,H.x);break}}}return K}function KH($,Q,Z){return O6($,c8(Q,Z))}function JH($,Q,Z=Q){return O6($,P8(Q,Z))}function qH($,Q){return O6($,v8(Q))}function UH($,Q){let Z=Math.tan(Q*Math.PI/180);return O6($,I8(Z,0))}function N5($,Q,Z){return[[1,0,-$*Z],[0,1,-Q*Z],[0,0,1]]}function k9($){let Q=[],Z=1/0,K=1/0,J=-1/0,q=-1/0;for(let W=0;W<$.length;W++){let H=$[W];if(Q.push(...H.commands),H.bounds)Z=Math.min(Z,H.bounds.xMin),K=Math.min(K,H.bounds.yMin),J=Math.max(J,H.bounds.xMax),q=Math.max(q,H.bounds.yMax)}let U=Number.isFinite(Z)?{xMin:Z,yMin:K,xMax:J,yMax:q}:null;return{commands:Q,bounds:U}}function i8($){return{commands:$.commands.map((Q)=>({...Q})),bounds:$.bounds?{...$.bounds}:null,flags:$.flags}}function X5($){if($.length===0)return[];for(let Q=0;Q<$.length;Q++){let Z=$[Q];if(!Z.onCurve)return Z.cubic?WH($):g7($)}return g7($)}function WH($){if($.length===0)return[];let Q=[],Z=0,K=$[0];if(!K)return[];Q.push({type:"M",x:K.x,y:K.y}),Z=1;while(Z<$.length){let J=$[Z];if(!J)break;if(J.onCurve)Q.push({type:"L",x:J.x,y:J.y}),Z++;else if(J.cubic){let q=J,U=$[Z+1],W=$[Z+2];if(!U||!W){Z++;continue}Q.push({type:"C",x1:q.x,y1:q.y,x2:U.x,y2:U.y,x:W.x,y:W.y}),Z+=3}else{let q=J,U=$[Z+1];if(!U){Z++;continue}let W;if(U.onCurve)W=U,Z+=2;else W={x:(q.x+U.x)/2,y:(q.y+U.y)/2,onCurve:!0},Z++;Q.push({type:"Q",x1:q.x,y1:q.y,x:W.x,y:W.y})}}return Q.push({type:"Z"}),Q}function g7($){if($.length===0)return[];let Q=[],Z=0;for(let _=0;_<$.length;_++)if($[_].onCurve){Z=_;break}let K=$.every((_)=>!_.onCurve),J;if(K){let _=$[0],N=$[$.length-1];if(!_||!N)return[];J={x:(_.x+N.x)/2,y:(_.y+N.y)/2,onCurve:!0},Z=0}else{let _=$[Z];if(!_)return[];J=_}Q.push({type:"M",x:J.x,y:J.y});let q=$.length,U=K?0:Z+1;if(U>=q)U=0;let W=J,H=0;while(H<q){let _=$[U];if(!_)break;if(_.onCurve)Q.push({type:"L",x:_.x,y:_.y}),W=_;else{let N=U+1<q?U+1:0,V=$[N];if(!V)break;let X;if(V.onCurve)X=V,U=N,H++;else X={x:(_.x+V.x)/2,y:(_.y+V.y)/2,onCurve:!0};Q.push({type:"Q",x1:_.x,y1:_.y,x:X.x,y:X.y}),W=X}if(U++,U>=q)U=0;if(H++,W.x===J.x&&W.y===J.y)break}return Q.push({type:"Z"}),Q}var V5=new WeakMap;function y6($,Q){let Z=V5.get($);if(Z){let U=Z.get(Q);if(U!==void 0)return U}let K=$.getGlyphContoursAndBounds(Q);if(!K){if(!Z)Z=new Map,V5.set($,Z);return Z.set(Q,null),null}let J=[];for(let U=0;U<K.contours.length;U++){let W=K.contours[U];J.push(...X5(W))}let q={commands:J,bounds:K.bounds};if(!Z)Z=new Map,V5.set($,Z);return Z.set(Q,q),q}var Y6=10,u7=new WeakMap;function G8($,Q){let Z=Q?.scale??1,K=Q?.flipY??!0;if(Z===1&&K){let W=u7.get($);if(W)return W}let J=Z*Y6,q=K?-J:J,U="";for(let W=0;W<$.commands.length;W++){let H=$.commands[W];if(W>0)U+=" ";switch(H.type){case"M":U+="M "+Math.round(H.x*J)+" "+Math.round(H.y*q);break;case"L":U+="L "+Math.round(H.x*J)+" "+Math.round(H.y*q);break;case"Q":U+="Q "+Math.round(H.x1*J)+" "+Math.round(H.y1*q)+" "+Math.round(H.x*J)+" "+Math.round(H.y*q);break;case"C":U+="C "+Math.round(H.x1*J)+" "+Math.round(H.y1*q)+" "+Math.round(H.x2*J)+" "+Math.round(H.y2*q)+" "+Math.round(H.x*J)+" "+Math.round(H.y*q);break;case"Z":U+="Z";break}}if(Z===1&&K)u7.set($,U);return U}function s8($,Q,Z){let K=Z?.scale??1,J=Z?.flipY??!0,q=Z?.offsetX??0,U=Z?.offsetY??0;for(let W=0;W<Q.commands.length;W++){let H=Q.commands[W];switch(H.type){case"M":$.moveTo(H.x*K+q,(J?-H.y:H.y)*K+U);break;case"L":$.lineTo(H.x*K+q,(J?-H.y:H.y)*K+U);break;case"Q":$.quadraticCurveTo(H.x1*K+q,(J?-H.y1:H.y1)*K+U,H.x*K+q,(J?-H.y:H.y)*K+U);break;case"C":$.bezierCurveTo(H.x1*K+q,(J?-H.y1:H.y1)*K+U,H.x2*K+q,(J?-H.y2:H.y2)*K+U,H.x*K+q,(J?-H.y:H.y)*K+U);break;case"Z":$.closePath();break}}}function HH($,Q,Z){let K=y6($,Q);if(!K)return null;let J=Z?.fontSize??100,q=Z?.fill??"currentColor",U=Z?.stroke,W=Z?.strokeWidth??1,H=J/$.unitsPerEm,_=K.bounds;if(!_)return null;let N=U?W/2:0,V=Math.ceil((_.xMax-_.xMin)*H+N*2),X=Math.ceil((_.yMax-_.yMin)*H+N*2),j=Math.round((_.xMin-N)*Y6),z=Math.round((-_.yMax-N)*Y6),G=Math.round((_.xMax-_.xMin+N*2)*Y6),Y=Math.round((_.yMax-_.yMin+N*2)*Y6),E=`${j} ${z} ${G} ${Y}`,w=G8(K,{flipY:!0,scale:1}),F=U?` stroke="${U}" stroke-width="${W*Y6}"`:"";return`<svg xmlns="http://www.w3.org/2000/svg" width="${V}" height="${X}" viewBox="${E}">
|
|
3
|
+
`),h("",0,":"),h(" ",0,". "),h("",0,"ed "),h("",20,""),h("",18,""),h("",6,""),h("",0,"("),h("",10,", "),h("",8,""),h("",0," at "),h("",0,"ly "),h(" the ",0," of "),h("",5,""),h("",9,""),h(" ",10,", "),h("",10,'"'),h(".",0,"("),h("",11," "),h("",10,'">'),h("",0,'="'),h(" ",0,"."),h(".com/",0,""),h(" the ",0," of the "),h("",10,"'"),h("",0,". This "),h("",0,","),h(".",0," "),h("",10,"("),h("",10,"."),h("",0," not "),h(" ",0,'="'),h("",0,"er "),h(" ",11," "),h("",0,"al "),h(" ",11,""),h("",0,"='"),h("",11,'"'),h("",10,". "),h(" ",0,"("),h("",0,"ful "),h(" ",10,". "),h("",0,"ive "),h("",0,"less "),h("",11,"'"),h("",0,"est "),h(" ",10,"."),h("",11,'">'),h(" ",0,"='"),h("",10,","),h("",0,"ize "),h("",11,"."),h("Â ",0,""),h(" ",0,","),h("",10,'="'),h("",11,'="'),h("",0,"ous "),h("",11,", "),h("",10,"='"),h(" ",10,","),h(" ",11,'="'),h(" ",11,", "),h("",11,","),h("",11,"("),h("",11,". "),h(" ",11,"."),h("",11,"='"),h(" ",11,". "),h(" ",10,'="'),h(" ",11,"='"),h(" ",10,"='")]});var mJ={};XQ(mJ,{decompress:()=>q_,__testing:()=>U_});class x5{data;buf;pos=0;val=0;bitPos=0;bitEndPos=0;eos=!1;constructor($){this.data=$;this.buf=new Uint8Array(8224),this.fillBuffer();for(let Q=0;Q<4;Q++)this.val|=this.buf[this.pos]<<8*Q,this.pos++}fillBuffer(){if(this.bitEndPos>256)return;if(this.eos){if(this.bitPos>this.bitEndPos)throw Error("Unexpected end of input");return}let $=this.data.length-this.pos,Q=Math.min(4096,$);if(Q>0)this.buf.set(this.data.subarray(this.pos,this.pos+Q),0),this.pos=0;if(Q<4096){this.eos=!0;for(let Z=0;Z<32;Z++)this.buf[Q+Z]=0}this.bitEndPos+=Q<<3}readMoreInput(){if(this.bitEndPos>256)return;if(this.eos){if(this.bitPos>this.bitEndPos)throw Error("Unexpected end of input");return}let $=this.pos&4095,Q=Math.min(4096,this.data.length-(this.pos&-4096));if(Q>0){let Z=this.pos&-4096;this.buf.set(this.data.subarray(Z,Z+Q),$===0?0:4096)}if(Q<4096){this.eos=!0;for(let Z=0;Z<32;Z++)this.buf[$+Q+Z]=0}this.bitEndPos+=Q<<3}fillBitWindow(){while(this.bitPos>=8)this.val>>>=8,this.val|=this.buf[this.pos&8191]<<24,this.pos++,this.bitPos-=8,this.bitEndPos-=8}readBits($){if(32-this.bitPos<$)this.fillBitWindow();let Q=this.val>>>this.bitPos&(1<<$)-1;return this.bitPos+=$,Q}get currentBitPos(){return this.bitPos}set currentBitPos($){this.bitPos=$}get currentVal(){return this.val}}function f5($,Q,Z,K,J){let U=new Int32Array(16),W=new Int32Array(16),H=new Int32Array(J);for(let E=0;E<J;E++)U[K[E]]++;W[1]=0;for(let E=1;E<15;E++)W[E+1]=W[E]+U[E];for(let E=0;E<J;E++)if(K[E]!==0)H[W[K[E]]++]=E;let _=Z,N=1<<_,V=N;if(W[15]===1){for(let E=0;E<V;E++)$[Q+E]={bits:0,value:H[0]&65535};return V}let X=0,j=0;for(let E=1,w=2;E<=Z;E++,w<<=1)for(;U[E]>0;U[E]--){let F={bits:E&255,value:H[j++]&65535};u5($,Q+X,w,N,F),X=g5(X,E)}let z=V-1,G=-1,Y=Q;for(let E=Z+1,w=2;E<=15;E++,w<<=1)for(;U[E]>0;U[E]--){if((X&z)!==G)Y+=N,_=hJ(U,E,Z),N=1<<_,V+=N,G=X&z,$[Q+G]={bits:_+Z&255,value:Y-Q-G&65535};let F={bits:E-Z&255,value:H[j++]&65535};u5($,Y+(X>>Z),w,N,F),X=g5(X,E)}return V}function g5($,Q){let Z=1<<Q-1;while($&Z)Z>>=1;return($&Z-1)+Z}function u5($,Q,Z,K,J){do K-=Z,$[Q+K]={bits:J.bits,value:J.value};while(K>0)}function hJ($,Q,Z){let K=1<<Q-Z;while(Q<15){if(K-=$[Q],K<=0)break;Q++,K<<=1}return Q-Z}function w8($,Q,Z){Z.fillBitWindow();let K=Q+(Z.currentVal>>>Z.currentBitPos&s4),J=$[K].bits-m5;if(J>0)Z.currentBitPos+=m5,K+=$[K].value,K+=Z.currentVal>>>Z.currentBitPos&(1<<J)-1;return Z.currentBitPos+=$[K].bits,$[K].value}function yJ($){if($.readBits(1)){let Q=$.readBits(3);if(Q===0)return 1;return $.readBits(Q)+(1<<Q)}return 0}function Z_($){if($.readBits(1)===0)return 16;let Q=$.readBits(3);if(Q>0)return 17+Q;if(Q=$.readBits(3),Q>0)return 8+Q;return 17}function K_($){let Q=$.readBits(1)===1;if(Q&&$.readBits(1))return{length:0,isLast:!0,isUncompressed:!1,isMetadata:!1};let Z=$.readBits(2)+4;if(Z===7){if($.readBits(1)!==0)throw Error("Invalid reserved bit");let q=$.readBits(2);if(q===0)return{length:0,isLast:Q,isUncompressed:!1,isMetadata:!0};let U=0;for(let W=0;W<q;W++){let H=$.readBits(8);if(W+1===q&&q>1&&H===0)throw Error("Invalid size byte");U|=H<<W*8}return{length:U+1,isLast:Q,isUncompressed:!1,isMetadata:!0}}let K=0;for(let q=0;q<Z;q++){let U=$.readBits(4);if(q+1===Z&&Z>4&&U===0)throw Error("Invalid size nibble");K|=U<<q*4}K++;let J=!Q?$.readBits(1)===1:!1;return{length:K,isLast:Q,isUncompressed:J,isMetadata:!1}}function bJ($,Q,Z,K){let U=0,W=8,H=0,_=0,N=32768,V=[];for(let X=0;X<32;X++)V.push({bits:0,value:0});f5(V,0,5,$,d0);while(U<Q&&N>0){K.readMoreInput(),K.fillBitWindow();let X=K.currentVal>>>K.currentBitPos&31;K.currentBitPos+=V[X].bits;let j=V[X].value&255;if(j<16){if(H=0,Z[U++]=j,j!==0)W=j,N-=32768>>j}else{let z=j-14,G=0;if(j===16)G=W;if(_!==G)H=0,_=G;let Y=H;if(H>0)H-=2,H<<=z;H+=K.readBits(z)+3;let E=H-Y;if(U+E>Q)throw Error("Symbol overflow");for(let w=0;w<E;w++)Z[U+w]=_;if(U+=E,_!==0)N-=E<<15-_}}if(N!==0)throw Error("Invalid code lengths");for(;U<Q;U++)Z[U]=0}function n0($,Q,Z,K){let J=new Uint8Array($);K.readMoreInput();let q=K.readBits(2);if(q===1){let U=$-1,W=0;while(U)U>>=1,W++;let H=new Int32Array(4),_=K.readBits(2)+1;for(let N=0;N<_;N++)H[N]=K.readBits(W)%$,J[H[N]]=2;switch(J[H[0]]=1,_){case 2:if(H[0]===H[1])throw Error("Invalid symbols");J[H[1]]=1;break;case 4:if(K.readBits(1))J[H[2]]=3,J[H[3]]=3;else J[H[0]]=2;break}}else{let U=new Uint8Array(d0),W=32,H=0,_=[{bits:2,value:0},{bits:2,value:4},{bits:2,value:3},{bits:3,value:2},{bits:2,value:0},{bits:2,value:4},{bits:2,value:3},{bits:4,value:1},{bits:2,value:0},{bits:2,value:4},{bits:2,value:3},{bits:3,value:2},{bits:2,value:0},{bits:2,value:4},{bits:2,value:3},{bits:4,value:5}];for(let N=q;N<d0&&W>0;N++){let V=a4[N];K.fillBitWindow();let X=K.currentVal>>>K.currentBitPos&15;K.currentBitPos+=_[X].bits;let j=_[X].value;if(U[V]=j,j!==0)W-=32>>j,H++}if(!(H===1||W===0))throw Error("Invalid code length codes");bJ(U,$,J,K)}return f5(Q,Z,m5,J,$)}class l0{alphabetSize;numHTrees;codes=[];htrees;constructor($,Q){this.alphabetSize=$;this.numHTrees=Q;this.htrees=new Uint32Array(Q);let Z=this.getMaxTableSize();for(let K=0;K<Q+Q*Z;K++)this.codes.push({bits:0,value:0})}getMaxTableSize(){let $=[256,402,436,468,500,534,566,598,630,662,694,726,758,790,822,854,886,920,952,984,1016,1048,1080],Q=this.alphabetSize+31>>>5;return $[Math.min(Q,$.length-1)]}decode($){let Q=0;for(let Z=0;Z<this.numHTrees;Z++){this.htrees[Z]=Q;let K=n0(this.alphabetSize,this.codes,Q,$);Q+=K}}}function SJ($,Q){Q.readMoreInput();let Z=yJ(Q)+1,K=new Uint8Array($);if(Z<=1)return{numHTrees:Z,contextMap:K};let J=Q.readBits(1)===1,q=0;if(J)q=Q.readBits(4)+1;let U=[];for(let W=0;W<W8;W++)U.push({bits:0,value:0});n0(Z+q,U,0,Q);for(let W=0;W<$;){Q.readMoreInput();let H=w8(U,0,Q);if(H===0)K[W++]=0;else if(H<=q){let _=1+(1<<H)+Q.readBits(H);for(let N=1;N<_&&W<$;N++)K[W++]=0}else K[W++]=H-q}if(Q.readBits(1)){let W=new Uint8Array(256);for(let H=0;H<256;H++)W[H]=H;for(let H=0;H<$;H++){let _=K[H];if(K[H]=W[_],_){let N=W[_];for(let V=_;V>0;V--)W[V]=W[V-1];W[0]=N}}}return{numHTrees:Z,contextMap:K}}function o9($,Q,Z){let K=w8($,Q,Z),J=e4[K];return J.offset+Z.readBits(J.nbits)}function J_($,Q,Z){if($<b5){let K=Z+r4[$]&3;return Q[K]+t4[$]}return $-b5+1}function q_($){let Q=new x5($),Z=Z_(Q),K=(1<<Z)-16,J=1<<Z,q=J-1,U=new Uint8Array(J+578),W=0,H=0,_=[16,15,11,4],N=0,V=0,X=0,j=[];while(!0){Q.readMoreInput();let z=K_(Q);if(z.length===0&&z.isLast)break;if(z.isMetadata){Q.currentBitPos=Q.currentBitPos+7&-8;for(let n=0;n<z.length;n++)Q.readMoreInput(),Q.readBits(8);continue}let G=z.length;if(G===0)continue;if(z.isUncompressed){Q.currentBitPos=Q.currentBitPos+7&-8;for(let n=0;n<G;n++){Q.readMoreInput();let e=Q.readBits(8);if(U[W&q]=e,(W&q)===q)j.push(...U.slice(0,J));W++}continue}let Y=[1,1,1],E=[268435456,268435456,268435456],w=[0,0,0],F=[0,1,0,1,0,1],A=[0,0,0],B=[],L=[];for(let n=0;n<3*W8;n++)B.push({bits:0,value:0}),L.push({bits:0,value:0});for(let n=0;n<3;n++)if(Y[n]=yJ(Q)+1,Y[n]>=2)n0(Y[n]+2,B,n*W8,Q),n0(i4,L,n*W8,Q),E[n]=o9(L,n*W8,Q),A[n]=1;Q.readMoreInput();let O=Q.readBits(2),M=b5+(Q.readBits(4)<<O),P=(1<<O)-1,T=M+(48<<O),x=new Uint8Array(Y[0]);for(let n=0;n<Y[0];n++)Q.readMoreInput(),x[n]=Q.readBits(2)<<1;let I=SJ(Y[0]<<6,Q),f=SJ(Y[2]<<2,Q),l=[new l0(o4,I.numHTrees),new l0(c4,Y[1]),new l0(T,f.numHTrees)];for(let n=0;n<3;n++)l[n].decode(Q);let C=0,R=0,y=x[w[0]],u=p9[y],d=p9[y+1],c=l[1].htrees[0];while(G>0){if(Q.readMoreInput(),E[1]===0){let m6=w8(B,W8,Q),S6;if(m6===0)S6=F[2+(A[1]&1)];else if(m6===1)S6=F[2+(A[1]-1&1)]+1;else S6=m6-2;if(S6>=Y[1])S6-=Y[1];w[1]=S6,F[2+(A[1]&1)]=S6,A[1]++,E[1]=o9(L,W8,Q),c=l[1].htrees[w[1]]}E[1]--;let n=w8(l[1].codes,c,Q),e=n>>6,g;if(e>=2)g=-1;else g=0;let j6=$_[e]+(n>>3&7),S=Q_[e]+(n&7),U6=kJ[j6].offset+Q.readBits(kJ[j6].nbits),b=CJ[S].offset+Q.readBits(CJ[S].nbits);V=U[W-1&q],X=U[W-2&q];for(let m6=0;m6<U6;m6++){if(Q.readMoreInput(),E[0]===0){let R6=w8(B,0,Q),p6;if(R6===0)p6=F[A[0]&1];else if(R6===1)p6=F[A[0]-1&1]+1;else p6=R6-2;if(p6>=Y[0])p6-=Y[0];w[0]=p6,F[A[0]&1]=p6,A[0]++,E[0]=o9(L,0,Q),C=w[0]<<6,y=x[w[0]],u=p9[y],d=p9[y+1]}let S6=h5[u+V]|h5[d+X],s6=I.contextMap[C+S6];if(E[0]--,X=V,V=w8(l[0].codes,l[0].htrees[s6],Q),U[W&q]=V,(W&q)===q)j.push(...U.slice(0,J));W++}if(G-=U6,G<=0)break;if(g<0){if(Q.readMoreInput(),E[2]===0){let s6=w8(B,2*W8,Q),R6;if(s6===0)R6=F[4+(A[2]&1)];else if(s6===1)R6=F[4+(A[2]-1&1)]+1;else R6=s6-2;if(R6>=Y[2])R6-=Y[2];w[2]=R6,F[4+(A[2]&1)]=R6,A[2]++,E[2]=o9(L,2*W8,Q),R=w[2]<<2}E[2]--;let m6=(b>4?3:b-2)&255,S6=f.contextMap[R+m6];if(g=w8(l[2].codes,l[2].htrees[S6],Q),g>=M){g-=M;let s6=g&P;g>>=O;let R6=(g>>1)+1,p6=(2+(g&1)<<R6)-4;g=M+(p6+Q.readBits(R6)<<O)+s6}}let L6=J_(g,_,N);if(L6<0)throw Error("Invalid distance");if(W<K&&H!==K)H=W;else H=K;let V0=W&q;if(L6>H)if(b>=4&&b<=24){let m6=MJ[b],S6=L6-H-1,s6=RJ[b],R6=(1<<s6)-1,p6=S6&R6,B1=S6>>s6,bW=m6+p6*b;if(B1<y5.length){let M1=vJ(U,V0,bW,b,B1,TJ);if(V0+=M1,W+=M1,G-=M1,V0>=J){j.push(...U.slice(0,J));for(let X0=0;X0<V0-J;X0++)U[X0]=U[J+X0]}}else throw Error("Invalid backward reference")}else throw Error("Invalid backward reference");else{if(g>0)_[N&3]=L6,N++;if(b>G)throw Error("Invalid backward reference");for(let m6=0;m6<b;m6++){if(U[W&q]=U[W-L6&q],(W&q)===q)j.push(...U.slice(0,J));W++,G--}}V=U[W-1&q],X=U[W-2&q]}if(z.isLast)break}return j.push(...U.slice(0,W&q)),new Uint8Array(j)}var W8=1080,d0=18,o4=256,c4=704,i4=26,b5=16,m5=8,s4=255,a4,r4,t4,e4,kJ,CJ,$_,Q_,U_;var gJ=D9(()=>{BJ();OJ();IJ();a4=new Uint8Array([1,2,3,4,0,5,17,6,16,7,8,9,10,11,12,13,14,15]),r4=new Uint8Array([3,2,1,0,3,3,3,3,3,3,2,2,2,2,2,2]),t4=new Int8Array([0,0,0,0,-1,1,-2,2,-3,3,-1,1,-2,2,-3,3]),e4=[{offset:1,nbits:2},{offset:5,nbits:2},{offset:9,nbits:2},{offset:13,nbits:2},{offset:17,nbits:3},{offset:25,nbits:3},{offset:33,nbits:3},{offset:41,nbits:3},{offset:49,nbits:4},{offset:65,nbits:4},{offset:81,nbits:4},{offset:97,nbits:4},{offset:113,nbits:5},{offset:145,nbits:5},{offset:177,nbits:5},{offset:209,nbits:5},{offset:241,nbits:6},{offset:305,nbits:6},{offset:369,nbits:7},{offset:497,nbits:8},{offset:753,nbits:9},{offset:1265,nbits:10},{offset:2289,nbits:11},{offset:4337,nbits:12},{offset:8433,nbits:13},{offset:16625,nbits:24}],kJ=[{offset:0,nbits:0},{offset:1,nbits:0},{offset:2,nbits:0},{offset:3,nbits:0},{offset:4,nbits:0},{offset:5,nbits:0},{offset:6,nbits:1},{offset:8,nbits:1},{offset:10,nbits:2},{offset:14,nbits:2},{offset:18,nbits:3},{offset:26,nbits:3},{offset:34,nbits:4},{offset:50,nbits:4},{offset:66,nbits:5},{offset:98,nbits:5},{offset:130,nbits:6},{offset:194,nbits:7},{offset:322,nbits:8},{offset:578,nbits:9},{offset:1090,nbits:10},{offset:2114,nbits:12},{offset:6210,nbits:14},{offset:22594,nbits:24}],CJ=[{offset:2,nbits:0},{offset:3,nbits:0},{offset:4,nbits:0},{offset:5,nbits:0},{offset:6,nbits:0},{offset:7,nbits:0},{offset:8,nbits:0},{offset:9,nbits:0},{offset:10,nbits:1},{offset:12,nbits:1},{offset:14,nbits:2},{offset:18,nbits:2},{offset:22,nbits:3},{offset:30,nbits:3},{offset:38,nbits:4},{offset:54,nbits:4},{offset:70,nbits:5},{offset:102,nbits:5},{offset:134,nbits:6},{offset:198,nbits:7},{offset:326,nbits:8},{offset:582,nbits:9},{offset:1094,nbits:10},{offset:2118,nbits:24}],$_=[0,0,8,8,0,16,8,16,16],Q_=[0,8,0,8,16,0,16,8,16];U_={getNextKey:g5,replicateValue:u5,nextTableBitSize:hJ,buildHuffmanTable:f5,readBlockLength:o9,readHuffmanCodeLengths:bJ,BitReader:x5,HuffmanCode:{},CODE_LENGTH_CODES:d0}});function z0($,Q){if(Q<0||Q>=$.classArray.length)return 1;return $.classArray[Q]??1}function T1($,Q){let{stateTable:Z}=$,K=0,J=0,q=0;for(let U=0;U<=Q.length;U++){let H=U>=Q.length?0:z0(Z.classTable,Q[U]?.glyphId),_=Z.stateArray[K];if(!_)break;let N=_[H];if(!N)break;let V=N.flags;if(V&32768)J=U;if(V&8192)q=U;let X=V&15;if(X!==0&&J<=q&&q<Q.length)xW(Q,J,q,X);if(!(V&16384));K=N.newState}}function xW($,Q,Z,K){if(Q>=Z||Q>=$.length||Z>=$.length)return;let J=$[Q],q=$[Q+1],U=$[Z-1],W=$[Z];if(!J||!W)return;switch(K){case 1:if(q)$[Q]=q,$[Q+1]=J;break;case 2:if(U)$[Z]=U,$[Z-1]=W;break;case 3:$[Q]=W,$[Z]=J;break;case 4:if(q&&U){let H=$.slice(Q,Q+2),[_,N]=H,V=$[Q+2];if(_&&N&&V)$[Q]=V,$[Q+1]=_,$[Q+2]=N}break;case 5:if(q&&U){let H=$.slice(Q,Q+2),[_,N]=H,V=$[Q+2];if(_&&N&&V)$[Q]=V,$[Q+1]=N,$[Q+2]=_}break;case 6:if(U&&q){let H=$.slice(Z-1,Z+1),[_,N]=H,V=$[Z-2];if(_&&N&&V)$[Z]=V,$[Z-1]=N,$[Z-2]=_}break;case 7:if(U&&q){let H=$.slice(Z-1,Z+1),[_,N]=H,V=$[Z-2];if(_&&N&&V)$[Z]=V,$[Z-1]=_,$[Z-2]=N}break;case 8:if(U){let H=J;$[Q]=U,$[Z-1]=W,$[Z]=H}break;case 9:if(U){let H=J;$[Q]=W,$[Z-1]=U,$[Z]=H}break;case 10:if(q&&U){let H=J,_=q,N=U;$[Q]=W,$[Q+1]=N,$[Z-1]=H,$[Z]=_}break;case 11:if(q&&U){let H=J,_=q,N=U;$[Q]=W,$[Q+1]=N,$[Z-1]=_,$[Z]=H}break;case 12:if(q&&U){let H=[J,q];$[Q]=U,$[Q+1]=W,$[Z-1]=H[0],$[Z]=H[1]}break;case 13:if(q&&U){let H=[J,q];$[Q]=U,$[Q+1]=W,$[Z-1]=H[1],$[Z]=H[0]}break;case 14:if(q&&U){let H=[J,q];$[Q]=W,$[Q+1]=U,$[Z-1]=H[0],$[Z]=H[1]}break;case 15:if(q&&U){let H=[J,q];$[Q]=W,$[Q+1]=U,$[Z-1]=H[1],$[Z]=H[0]}break}}function O1($,Q){let{stateTable:Z,substitutionTable:K}=$,J=0,q=-1;for(let U=0;U<=Q.length;U++){let W=U>=Q.length,H=W?0:z0(Z.classTable,Q[U]?.glyphId),_=Z.stateArray[J];if(!_)break;let N=_[H];if(!N)break;if(N.flags&32768)q=U;if(N.markIndex!==65535&&q>=0&&q<Q.length){let V=K[N.markIndex];if(V){let X=Q[q];if(X){let j=V.get(X.glyphId);if(j!==void 0)X.glyphId=j}}}if(!W&&N.currentIndex!==65535){let V=K[N.currentIndex];if(V){let X=Q[U];if(X){let j=V.get(X.glyphId);if(j!==void 0)X.glyphId=j}}}if(!(N.flags&16384));J=N.newState}}function P1($,Q){let{stateTable:Z,ligatureActions:K,components:J,ligatures:q}=$,U=0,W=[],H=[],_=new Set;for(let N=0;N<=Q.length;N++){let X=N>=Q.length?0:z0(Z.classTable,Q[N]?.glyphId),j=Z.stateArray[U];if(!j)break;let z=j[X];if(!z)break;if(z.flags&32768)W.push(N);if(z.flags&8192&&z.ligActionIndex<K.length){let G=z.ligActionIndex,Y=0,E=[];while(G<K.length){let w=K[G];if(w===void 0)break;let F=(w&2147483648)!==0,A=(w&1073741824)!==0,B=(w&1073741823)<<2>>2,L=W.pop();if(L!==void 0&&L<Q.length){if(E.push(L),Q[L]){let M=B;if(M>=0&&M<J.length){let P=J[M];if(P!==void 0)Y=Y+P}}}if(A&&Y<q.length){let O=E[E.length-1];if(O!==void 0&&O<Q.length){let M=Q[O],P=q[Y];if(M&&P!==void 0){M.glyphId=P;for(let T=0;T<E.length;T++)if(T<E.length-1){let x=E[T];_.add(x)}}}Y=0}if(F)break;G++}}if(!(z.flags&16384));U=z.newState}for(let N=0;N<Q.length;N++)if(!_.has(N)){let V=Q[N];H.push(V)}return H}function v1($,Q){let{stateTable:Z,insertionGlyphs:K}=$,J=0,q=-1,U=[],W=new Map;for(let H=0;H<=Q.length;H++){let _=H>=Q.length,N=_?0:z0(Z.classTable,Q[H]?.glyphId),V=Z.stateArray[J];if(!V)break;let X=V[N];if(!X)break;if(X.flags&32768)q=H;if(X.markedInsertIndex!==65535&&q>=0){let j=X.flags>>5&31,z=(X.flags&2048)!==0,G=K.slice(X.markedInsertIndex,X.markedInsertIndex+j),Y=W.get(q);if(!Y)Y={before:[],after:[]},W.set(q,Y);if(z)Y.before.push(...G);else Y.after.push(...G)}if(!_&&X.currentInsertIndex!==65535){let j=X.flags&31,z=(X.flags&32)!==0,G=K.slice(X.currentInsertIndex,X.currentInsertIndex+j),Y=W.get(H);if(!Y)Y={before:[],after:[]},W.set(H,Y);if(z)Y.before.push(...G);else Y.after.push(...G)}if(!(X.flags&16384));J=X.newState}for(let H=0;H<Q.length;H++){let _=Q[H],N=W.get(H);if(N)for(let V=0;V<N.before.length;V++){let X=N.before[V];U.push({glyphId:X,cluster:_.cluster,mask:_.mask,codepoint:0})}if(U.push(_),N)for(let V=0;V<N.after.length;V++){let X=N.after[V];U.push({glyphId:X,cluster:_.cluster,mask:_.mask,codepoint:0})}}return U}function jQ($,Q,Z){if(Z===0)return($^Q)<0?-2147483647:2147483647;let K=1;if($<0)$=-$,K=-K;if(Q<0)Q=-Q,K=-K;if(Z<0)Z=-Z,K=-K;let J=Math.floor(($*Q+(Z>>1))/Z);return K<0?-J:J}function zQ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop];if(Z===void 0||Q===void 0){$.error="ADD: stack underflow",$.stackTop+=2,$.stack[$.stackTop++]=0;return}$.stack[$.stackTop++]=Z+Q}function GQ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop];if(Z===void 0||Q===void 0){$.error="SUB: stack underflow",$.stackTop+=2,$.stack[$.stackTop++]=0;return}$.stack[$.stackTop++]=Z-Q}function YQ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop];if(Z===void 0||Q===void 0){$.error="DIV: stack underflow",$.stackTop+=2,$.stack[$.stackTop++]=0;return}if(Q===0){$.error="DIV: division by zero",$.stack[$.stackTop++]=0;return}$.stack[$.stackTop++]=jQ(Z,64,Q)}function EQ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop];if(Z===void 0||Q===void 0){$.error="MUL: stack underflow",$.stackTop+=2,$.stack[$.stackTop++]=0;return}$.stack[$.stackTop++]=jQ(Z,Q,64)}function wQ($){let Q=$.stack[$.stackTop-1];if(Q===void 0){$.error="ABS: stack underflow";return}$.stack[$.stackTop-1]=Q<0?-Q:Q}function AQ($){let Q=$.stack[$.stackTop-1];if(Q===void 0){$.error="NEG: stack underflow";return}$.stack[$.stackTop-1]=-Q}function FQ($){let Q=$.stack[$.stackTop-1];if(Q===void 0){$.error="FLOOR: stack underflow";return}$.stack[$.stackTop-1]=Q&-64}function LQ($){let Q=$.stack[$.stackTop-1];if(Q===void 0){$.error="CEILING: stack underflow";return}$.stack[$.stackTop-1]=Q+63&-64}function DQ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop];if(Z===void 0||Q===void 0){$.error="MAX: stack underflow",$.stackTop+=2,$.stack[$.stackTop++]=0;return}$.stack[$.stackTop++]=Z>Q?Z:Q}function BQ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop];if(Z===void 0||Q===void 0){$.error="MIN: stack underflow",$.stackTop+=2,$.stack[$.stackTop++]=0;return}$.stack[$.stackTop++]=Z<Q?Z:Q}function MQ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop];if(Z===void 0||Q===void 0){$.error="LT: stack underflow",$.stackTop+=2,$.stack[$.stackTop++]=0;return}$.stack[$.stackTop++]=Z<Q?1:0}function RQ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop];if(Z===void 0||Q===void 0){$.error="LTEQ: stack underflow",$.stackTop+=2,$.stack[$.stackTop++]=0;return}$.stack[$.stackTop++]=Z<=Q?1:0}function TQ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop];if(Z===void 0||Q===void 0){$.error="GT: stack underflow",$.stackTop+=2,$.stack[$.stackTop++]=0;return}$.stack[$.stackTop++]=Z>Q?1:0}function OQ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop];if(Z===void 0||Q===void 0){$.error="GTEQ: stack underflow",$.stackTop+=2,$.stack[$.stackTop++]=0;return}$.stack[$.stackTop++]=Z>=Q?1:0}function PQ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop];if(Z===void 0||Q===void 0){$.error="EQ: stack underflow",$.stackTop+=2,$.stack[$.stackTop++]=0;return}$.stack[$.stackTop++]=Z===Q?1:0}function vQ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop];if(Z===void 0||Q===void 0){$.error="NEQ: stack underflow",$.stackTop+=2,$.stack[$.stackTop++]=0;return}$.stack[$.stackTop++]=Z!==Q?1:0}function IQ($){let Q=$.stack[$.stackTop-1];if(Q===void 0){$.error="ODD: stack underflow";return}let Z=Q+32&-64;$.stack[$.stackTop-1]=Z&64?1:0}function kQ($){let Q=$.stack[$.stackTop-1];if(Q===void 0){$.error="EVEN: stack underflow";return}let Z=Q+32&-64;$.stack[$.stackTop-1]=Z&64?0:1}function CQ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop];if(Z===void 0||Q===void 0){$.error="AND: stack underflow",$.stackTop+=2,$.stack[$.stackTop++]=0;return}$.stack[$.stackTop++]=Z&&Q?1:0}function SQ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop];if(Z===void 0||Q===void 0){$.error="OR: stack underflow",$.stackTop+=2,$.stack[$.stackTop++]=0;return}$.stack[$.stackTop++]=Z||Q?1:0}function hQ($){let Q=$.stack[$.stackTop-1];if(Q===void 0){$.error="NOT: stack underflow";return}$.stack[$.stackTop-1]=Q?0:1}var z6=typeof process<"u"&&process?.env?process.env:void 0;function yQ($){let Q=$.stack[--$.stackTop];if(Q===void 0){$.error="IF: stack underflow",$.stackTop++;return}if(Q)return;let Z=1;while($.IP<$.codeSize){let K=$.code[$.IP++];if(K===void 0)break;switch(K){case 88:Z++;break;case 27:if(Z===1)return;break;case 89:if(Z--,Z===0)return;break;case 64:$.IP+=1+($.code[$.IP]??0);break;case 65:$.IP+=1+($.code[$.IP]??0)*2;break;default:if(K>=176&&K<=183)$.IP+=K-176+1;else if(K>=184&&K<=191)$.IP+=(K-184+1)*2}}$.error="IF: missing EIF"}function bQ($){let Q=1;while($.IP<$.codeSize){let Z=$.code[$.IP++];if(Z===void 0)break;switch(Z){case 88:Q++;break;case 89:if(Q--,Q===0)return;break;case 64:$.IP+=1+($.code[$.IP]??0);break;case 65:$.IP+=1+($.code[$.IP]??0)*2;break;default:if(Z>=176&&Z<=183)$.IP+=Z-176+1;else if(Z>=184&&Z<=191)$.IP+=(Z-184+1)*2}}$.error="ELSE: missing EIF"}function mQ($){}function gQ($){let Q=$.stack[--$.stackTop];if(Q===void 0){$.error="JMPR: stack underflow",$.stackTop++;return}$.IP+=Q-1}function uQ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop];if(Q===void 0||Z===void 0){$.error="JROT: stack underflow",$.stackTop+=2;return}if(Q)$.IP+=Z-1}function xQ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop];if(Q===void 0||Z===void 0){$.error="JROF: stack underflow",$.stackTop+=2;return}if(!Q)$.IP+=Z-1}function fQ($){let Q=$.stack[--$.stackTop];if(Q===void 0){$.error="FDEF: stack underflow",$.stackTop++;return}if(Q<0||Q>=$.maxFDefs){$.error=`FDEF: invalid function number ${Q}`;return}let Z=$.FDefs[Q];if(!Z){$.error=`FDEF: no slot for function ${Q}`;return}Z.id=Q,Z.start=$.IP,Z.active=!0,Z.range=$.currentRange;while($.IP<$.codeSize){let K=$.code[$.IP++];if(K===void 0)break;if(K===45){Z.end=$.IP;return}if(K===64)$.IP+=1+($.code[$.IP]??0);else if(K===65)$.IP+=1+($.code[$.IP]??0)*2;else if(K>=176&&K<=183)$.IP+=K-176+1;else if(K>=184&&K<=191)$.IP+=(K-184+1)*2}$.error="FDEF: missing ENDF"}function lQ($){if($.callStackTop<=0){$.error="ENDF: not in function call";return}let Q=$.callStack[$.callStackTop-1];if(!Q){$.error="ENDF: missing call frame";return}if(Q.count--,Q.count>0)$.IP=Q.def.start;else{$.callStackTop--,$.IP=Q.callerIP,$.currentRange=Q.callerRange;let Z=$.codeRanges.get($.currentRange);if(Z)$.code=Z.code,$.codeSize=Z.size}}function dQ($){let Q=$.stack[--$.stackTop];if(Q===void 0){$.error="CALL: stack underflow",$.stackTop++;return}if(z6?.HINT_TRACE_CALLS==="1")console.log("trace CALL",{funcNum:Q,range:$.currentRange,ip:$.IP,stackTop:$.stackTop});if(Q<0||Q>=$.maxFDefs){$.error=`CALL: invalid function number ${Q}`;return}let Z=$.FDefs[Q];if(!Z||!Z.active){$.error=`CALL: function ${Q} not defined`;return}if($.callStackTop>=$.maxCallStack){$.error="CALL: call stack overflow";return}let K=$.callStack[$.callStackTop++];if(!K){$.error="CALL: no call frame available",$.callStackTop--;return}K.callerIP=$.IP,K.callerRange=$.currentRange,K.def=Z,K.count=1,$.currentRange=Z.range;let J=$.codeRanges.get($.currentRange);if(J)$.code=J.code,$.codeSize=J.size;$.IP=Z.start}function nQ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop];if(Q===void 0||Z===void 0){$.error="LOOPCALL: stack underflow",$.stackTop+=2;return}if(Q<0||Q>=$.maxFDefs){$.error=`LOOPCALL: invalid function number ${Q}`;return}let K=$.FDefs[Q];if(!K||!K.active){$.error=`LOOPCALL: function ${Q} not defined`;return}if(Z<=0)return;if($.callStackTop>=$.maxCallStack){$.error="LOOPCALL: call stack overflow";return}let J=$.callStack[$.callStackTop++];if(!J){$.error="LOOPCALL: no call frame available",$.callStackTop--;return}J.callerIP=$.IP,J.callerRange=$.currentRange,J.def=K,J.count=Z,$.currentRange=K.range;let q=$.codeRanges.get($.currentRange);if(q)$.code=q.code,$.codeSize=q.size;$.IP=K.start}function pQ($){let Q=$.stack[--$.stackTop];if(Q===void 0){$.error="IDEF: stack underflow",$.stackTop++;return}if(Q<0||Q>=$.maxIDefs){$.error=`IDEF: invalid opcode ${Q}`;return}let Z=$.IDefs[Q];if(!Z){$.error=`IDEF: no slot for opcode ${Q}`;return}Z.opcode=Q,Z.start=$.IP,Z.active=!0,Z.range=$.currentRange;while($.IP<$.codeSize){let K=$.code[$.IP++];if(K===void 0)break;if(K===45){Z.end=$.IP;return}if(K===64)$.IP+=1+($.code[$.IP]??0);else if(K===65)$.IP+=1+($.code[$.IP]??0)*2;else if(K>=176&&K<=183)$.IP+=K-176+1;else if(K>=184&&K<=191)$.IP+=(K-184+1)*2}$.error="IDEF: missing ENDF"}var n8;((H)=>{H[H.ToHalfGrid=0]="ToHalfGrid";H[H.ToGrid=1]="ToGrid";H[H.ToDoubleGrid=2]="ToDoubleGrid";H[H.DownToGrid=3]="DownToGrid";H[H.UpToGrid=4]="UpToGrid";H[H.Off=5]="Off";H[H.Super=6]="Super";H[H.Super45=7]="Super45"})(n8||={});var p8;((K)=>{K[K.X=16]="X";K[K.Y=32]="Y";K[K.Both=48]="Both"})(p8||={});function I1(){return{rp0:0,rp1:0,rp2:0,dualVector:{x:16384,y:0},projVector:{x:16384,y:0},freeVector:{x:16384,y:0},loop:1,minimumDistance:64,roundState:1,autoFlip:!0,controlValueCutIn:68,singleWidthCutIn:0,singleWidthValue:0,deltaBase:9,deltaShift:3,instructControl:0,scanControl:0,scanType:0,gep0:1,gep1:1,gep2:1,period:64,phase:0,threshold:32}}var B9;((J)=>{J[J.None=0]="None";J[J.Font=1]="Font";J[J.CVT=2]="CVT";J[J.Glyph=3]="Glyph"})(B9||={});function Q8($,Q){return{nPoints:0,nContours:0,org:Array($).fill(null).map(()=>({x:0,y:0})),cur:Array($).fill(null).map(()=>({x:0,y:0})),orus:Array($).fill(null).map(()=>({x:0,y:0})),tags:new Uint8Array($),contours:new Uint16Array(Q)}}function G0($=256,Q=64,Z=64,K=64,J=32,q=16){let U=I1();return{GS:{...U},defaultGS:U,zp0:Q8(0,0),zp1:Q8(0,0),zp2:Q8(0,0),twilight:Q8(q,1),pts:Q8(0,0),stack:new Int32Array($),stackTop:0,IP:0,code:new Uint8Array(0),codeSize:0,currentRange:0,opcode:0,numArgs:0,cvt:new Int32Array(0),cvtSize:0,storage:new Int32Array(Q),storageSize:Q,FDefs:Array(Z).fill(null).map((W,H)=>({id:H,start:0,end:0,active:!1,range:0})),maxFDefs:Z,IDefs:Array(K).fill(null).map((W,H)=>({opcode:H,start:0,end:0,active:!1,range:0})),maxIDefs:K,callStack:Array(J).fill(null).map(()=>({callerIP:0,callerRange:0,def:{id:0,start:0,end:0,active:!1,range:0},count:0})),callStackTop:0,maxCallStack:J,codeRanges:new Map,ppem:12,pointSize:12,scale:1,scaleFix:65536,lightMode:!1,error:null,instructionCount:0,maxInstructions:1e6}}var D={NPUSHB:64,NPUSHW:65,PUSHB_0:176,PUSHB_1:177,PUSHB_2:178,PUSHB_3:179,PUSHB_4:180,PUSHB_5:181,PUSHB_6:182,PUSHB_7:183,PUSHW_0:184,PUSHW_1:185,PUSHW_2:186,PUSHW_3:187,PUSHW_4:188,PUSHW_5:189,PUSHW_6:190,PUSHW_7:191,RS:67,WS:66,RCVT:69,WCVTP:68,WCVTF:112,DUP:32,POP:33,CLEAR:34,SWAP:35,DEPTH:36,CINDEX:37,MINDEX:38,ROLL:138,ADD:96,SUB:97,DIV:98,MUL:99,ABS:100,NEG:101,FLOOR:102,CEILING:103,MAX:139,MIN:140,LT:80,LTEQ:81,GT:82,GTEQ:83,EQ:84,NEQ:85,ODD:86,EVEN:87,AND:90,OR:91,NOT:92,IF:88,ELSE:27,EIF:89,JMPR:28,JROT:120,JROF:121,FDEF:44,ENDF:45,CALL:43,LOOPCALL:42,IDEF:137,SVTCA_Y:0,SVTCA_X:1,SPVTCA_Y:2,SPVTCA_X:3,SFVTCA_Y:4,SFVTCA_X:5,SPVTL_0:6,SPVTL_1:7,SFVTL_0:8,SFVTL_1:9,SDPVTL_0:134,SDPVTL_1:135,SPVFS:10,SFVFS:11,GPV:12,GFV:13,SFVTPV:14,ISECT:15,SRP0:16,SRP1:17,SRP2:18,SZP0:19,SZP1:20,SZP2:21,SZPS:22,SLOOP:23,RTG:24,RTHG:25,SMD:26,RDTG:125,RUTG:124,ROFF:122,SROUND:118,S45ROUND:119,SCVTCI:29,SSWCI:30,SSW:31,FLIPON:77,FLIPOFF:78,SANGW:126,SDB:94,SDS:95,GC_0:70,GC_1:71,SCFS:72,MD_0:73,MD_1:74,MPPEM:75,MPS:76,FLIPPT:128,FLIPRGON:129,FLIPRGOFF:130,SHP_0:50,SHP_1:51,SHC_0:52,SHC_1:53,SHZ_0:54,SHZ_1:55,SHPIX:56,IP:57,MSIRP_0:58,MSIRP_1:59,ALIGNRP:60,RTDG:61,MIAP_0:62,MIAP_1:63,ALIGNPTS:39,UTP:41,MDAP_0:46,MDAP_1:47,IUP_Y:48,IUP_X:49,DELTAP1:93,DELTAP2:113,DELTAP3:114,DELTAC1:115,DELTAC2:116,DELTAC3:117,ROUND_0:104,ROUND_1:105,ROUND_2:106,ROUND_3:107,NROUND_0:108,NROUND_1:109,NROUND_2:110,NROUND_3:111,GETINFO:136,INSTCTRL:142,SCANCTRL:133,SCANTYPE:141,AA:127,DEBUG:79,MDRP_BASE:192,MIRP_BASE:224},Y2={[D.RS]:1,[D.WS]:2,[D.RCVT]:1,[D.WCVTP]:2,[D.WCVTF]:2,[D.DUP]:1,[D.POP]:1,[D.CLEAR]:0,[D.SWAP]:2,[D.DEPTH]:0,[D.CINDEX]:1,[D.MINDEX]:1,[D.ROLL]:3,[D.ADD]:2,[D.SUB]:2,[D.DIV]:2,[D.MUL]:2,[D.ABS]:1,[D.NEG]:1,[D.FLOOR]:1,[D.CEILING]:1,[D.MAX]:2,[D.MIN]:2,[D.LT]:2,[D.LTEQ]:2,[D.GT]:2,[D.GTEQ]:2,[D.EQ]:2,[D.NEQ]:2,[D.ODD]:1,[D.EVEN]:1,[D.AND]:2,[D.OR]:2,[D.NOT]:1,[D.IF]:1,[D.JMPR]:1,[D.JROT]:2,[D.JROF]:2,[D.CALL]:1,[D.LOOPCALL]:2,[D.SRP0]:1,[D.SRP1]:1,[D.SRP2]:1,[D.SZP0]:1,[D.SZP1]:1,[D.SZP2]:1,[D.SZPS]:1,[D.SLOOP]:1,[D.SMD]:1,[D.SCVTCI]:1,[D.SSWCI]:1,[D.SSW]:1,[D.SDB]:1,[D.SDS]:1,[D.SPVFS]:2,[D.SFVFS]:2,[D.SPVTL_0]:2,[D.SPVTL_1]:2,[D.SFVTL_0]:2,[D.SFVTL_1]:2,[D.SCFS]:2,[D.GC_0]:1,[D.GC_1]:1,[D.MD_0]:2,[D.MD_1]:2,[D.ISECT]:5,[D.ALIGNRP]:0,[D.IP]:0,[D.SHPIX]:1,[D.MSIRP_0]:2,[D.MSIRP_1]:2,[D.MIAP_0]:2,[D.MIAP_1]:2,[D.MDAP_0]:1,[D.MDAP_1]:1,[D.DELTAP1]:1,[D.DELTAP2]:1,[D.DELTAP3]:1,[D.DELTAC1]:1,[D.DELTAC2]:1,[D.DELTAC3]:1,[D.SROUND]:1,[D.S45ROUND]:1,[D.ROUND_0]:1,[D.ROUND_1]:1,[D.ROUND_2]:1,[D.ROUND_3]:1,[D.NROUND_0]:1,[D.NROUND_1]:1,[D.NROUND_2]:1,[D.NROUND_3]:1,[D.INSTCTRL]:2,[D.SCANCTRL]:1,[D.SCANTYPE]:1,[D.GETINFO]:1,[D.FLIPPT]:0,[D.FLIPRGON]:2,[D.FLIPRGOFF]:2};function Z8($,Q){if($>=0)return $+Q+32&-64;else return-(-$+Q+32&-64)}function k1($,Q){if($>=0)return($+Q+32&-64)+32;else return-((-$+Q+32&-64)+32)}function C1($,Q){if($>=0)return $+16+Q&-32;else return-(-$+16+Q&-32)}function S1($,Q){if($>=0)return $+Q&-64;else return-(-$+Q&-64)}function h1($,Q){if($>=0)return $+Q+63&-64;else return-(-$+Q+63&-64)}function y1($,Q){return $}function b1($,Q,Z){let{period:K,phase:J,threshold:q}=Z;if($>=0)return($+q-J+Q&-K)+J;else return-((-$+q-J+Q&-K)+J)}function m1($,Q,Z){let{period:K,phase:J,threshold:q}=Z,U=Math.round(K*46/64);if($>=0)return($+q-J+Q&-U)+J;else return-((-$+q-J+Q&-U)+J)}function X8($,Q,Z){switch(Z.roundState){case 1:return Z8($,Q);case 0:return k1($,Q);case 2:return C1($,Q);case 3:return S1($,Q);case 4:return h1($,Q);case 5:return y1($,Q);case 6:return b1($,Q,Z);case 7:return m1($,Q,Z);default:return Z8($,Q)}}function M9($,Q){switch($>>6&3){case 0:Q.period=32;break;case 1:Q.period=64;break;case 2:Q.period=128;break;default:Q.period=64}switch($>>4&3){case 0:Q.phase=0;break;case 1:Q.phase=Q.period>>2;break;case 2:Q.phase=Q.period>>1;break;case 3:Q.phase=Q.period*3>>2;break}let Z=$&15;if(Z===0)Q.threshold=Q.period-1;else Q.threshold=(Z-4)*Q.period>>3}function K8($,Q){return 0}function g1($,Q){if($===0||Q===0)return 0;let Z=1,K=$,J=Q;if(K<0)K=-K,Z=-Z;if(J<0)J=-J,Z=-Z;let q=Math.floor((K*J+32768)/65536);return Z<0?-q:q}function oQ($,Q){if(Q===0)return $<0?-2147483647:2147483647;let Z=1,K=$,J=Q;if(K<0)K=-K,Z=-Z;if(J<0)J=-J,Z=-Z;let q=Math.floor((K*65536+(J>>1))/J);return Z<0?-q:q}function g6($,Q){return g1($,Q)}function iQ($,Q,Z,K){let J=$*Z+Q*K,q=J+8192+(J<0?-1:0);return Math.floor(q/16384)}function cQ($,Q){let Z=$*Q,K=Z+8192+(Z<0?-1:0);return Math.floor(K/16384)}function fW($,Q,Z,K){let J=$*Z+Q*K,q=J+8192+(J<0?-1:0);return Math.floor(q/16384)}function u1($,Q,Z){if(Z===0)return($^Q)<0?-2147483647:2147483647;let K=1;if($<0)$=-$,K=-K;if(Q<0)Q=-Q,K=-K;if(Z<0)Z=-Z,K=-K;let J=Math.floor(($*Q+(Z>>1))/Z);return K<0?-J:J}function Y0($,Q){return iQ(Q.x,Q.y,$.GS.projVector.x,$.GS.projVector.y)}function sQ($,Q){return iQ(Q.x,Q.y,$.GS.dualVector.x,$.GS.dualVector.y)}function T6($,Q,Z,K){let J=Q.cur[Z],q=$.GS.freeVector,U=$.GS.projVector;if($.lightMode&&(U.x!==0||q.x!==0))return;let W=fW(q.x,q.y,U.x,U.y);if(W===0)return;let H=u1(K,q.x,W),_=u1(K,q.y,W),N=z6?.HINT_TRACE_POINTS;if(N){if(N.split(",").map((X)=>Number.parseInt(X.trim(),10)).includes(Z))console.log("trace movePoint",{pointIndex:Z,opcode:$.opcode,ip:$.IP,range:$.currentRange,distance:K,dx:H,dy:_,proj:$.GS.projVector,free:$.GS.freeVector,dual:$.GS.dualVector,rp0:$.GS.rp0,rp1:$.GS.rp1,rp2:$.GS.rp2})}if(J.x+=H,J.y+=_,Q===$.twilight){let V=Q.org[Z];V.x+=H,V.y+=_}}function X6($,Q,Z){let K=Q.cur[Z];if(!K)return 0;return Y0($,K)}function x6($,Q,Z){let K=Q.org[Z];if(!K)return 0;return sQ($,K)}function P6($,Q,Z){let K=$.GS.freeVector;if(K.y!==0)Q.tags[Z]|=32;if(K.x!==0)Q.tags[Z]|=16}function x1($,Q){let Z=$.stack[--$.stackTop],K=$.zp0;if(Z<0||Z>=K.nPoints){$.error=`MDAP: invalid point ${Z}`;return}let J=X6($,K,Z);if(Q){let q=K8(J,$.GS);J=X8(J,q,$.GS)-J}else J=0;if(T6($,K,Z,J),P6($,K,Z),$.GS.rp0=Z,$.GS.rp1=Z,z6?.HINT_TRACE_RP0==="1")console.log("trace rp0",{ip:$.IP,range:$.currentRange,opcode:$.opcode,rp0:$.GS.rp0})}function f1($,Q){let Z=$.stack[--$.stackTop],K=$.stack[--$.stackTop],J=$.zp0;if(K<0||K>=J.nPoints){$.error=`MIAP: invalid point ${K}`;return}if(Z<0||Z>=$.cvtSize){$.error=`MIAP: invalid CVT index ${Z}`;return}let q=$.cvt[Z],U=X6($,J,K);if(Q){if(Math.abs(q-U)>$.GS.controlValueCutIn)q=U;let _=K8(q,$.GS);q=X8(q,_,$.GS)}let W=q-U;if(T6($,J,K,W),P6($,J,K),$.GS.rp0=K,$.GS.rp1=K,z6?.HINT_TRACE_RP0==="1")console.log("trace rp0",{ip:$.IP,range:$.currentRange,opcode:$.opcode,rp0:$.GS.rp0})}function aQ($,Q){let Z=$.stack[--$.stackTop],K=(Q&16)!==0,J=(Q&8)!==0,q=(Q&4)!==0,U=Q&3,W=$.GS.roundState;if(U===1)W=1;else if(U===2)W=0;else if(U===3)W=2;let{zp0:H,zp1:_}=$;if(Z<0||Z>=_.nPoints){$.error=`MDRP: invalid point ${Z}`;return}let N=$.GS.rp0;if(N<0||N>=H.nPoints){$.error=`MDRP: invalid rp0 ${N}`;return}let V=x6($,_,Z)-x6($,H,N);if($.GS.singleWidthCutIn>0&&Math.abs(V-$.GS.singleWidthValue)<$.GS.singleWidthCutIn)V=V>=0?$.GS.singleWidthValue:-$.GS.singleWidthValue;let X=K8(V,$.GS),j;if(q){let Y=$.GS.roundState;$.GS.roundState=W,j=X8(V,X,$.GS),$.GS.roundState=Y}else j=V+X;if(J){if(V>=0){if(j<$.GS.minimumDistance)j=$.GS.minimumDistance}else if(j>-$.GS.minimumDistance)j=-$.GS.minimumDistance}let z=X6($,_,Z)-X6($,H,N),G=j-z;if(T6($,_,Z,G),P6($,_,Z),$.GS.rp1=$.GS.rp0,$.GS.rp2=Z,K){if($.GS.rp0=Z,z6?.HINT_TRACE_RP0==="1")console.log("trace rp0",{ip:$.IP,range:$.currentRange,opcode:$.opcode,rp0:$.GS.rp0})}}function rQ($,Q){let Z=$.stack[--$.stackTop],K=$.stack[--$.stackTop],J=(Q&16)!==0,q=(Q&8)!==0,U=(Q&4)!==0,W=Q&3,H=$.GS.roundState;if(W===1)H=1;else if(W===2)H=0;else if(W===3)H=2;let{zp0:_,zp1:N}=$;if(K<0||K>=N.nPoints){$.error=`MIRP: invalid point ${K}`;return}if(Z<-1||Z>=$.cvtSize){$.error=`MIRP: invalid CVT index ${Z}`;return}let V=$.GS.rp0;if(V<0||V>=_.nPoints){$.error=`MIRP: invalid rp0 ${V}`;return}let X=x6($,N,K)-x6($,_,V),j=Z===-1?0:$.cvt[Z];if($.GS.singleWidthCutIn>0&&Math.abs(j-$.GS.singleWidthValue)<$.GS.singleWidthCutIn)j=j>=0?$.GS.singleWidthValue:-$.GS.singleWidthValue;if($.GS.gep1===0){let F=$.zp0.org[V],A=cQ(j,$.GS.freeVector.x),B=cQ(j,$.GS.freeVector.y);$.zp1.org[K].x=F.x+A,$.zp1.org[K].y=F.y+B,$.zp1.cur[K].x=$.zp1.org[K].x,$.zp1.cur[K].y=$.zp1.org[K].y}if($.GS.autoFlip){if((X^j)<0)j=-j}let z=j,G=K8(j,$.GS);if(U){if($.GS.gep0===$.GS.gep1){if(Math.abs(j-X)>$.GS.controlValueCutIn)z=X}let F=$.GS.roundState;$.GS.roundState=H,z=X8(z,G,$.GS),$.GS.roundState=F}else z=z+G;if(q){if(X>=0){if(z<$.GS.minimumDistance)z=$.GS.minimumDistance}else if(z>-$.GS.minimumDistance)z=-$.GS.minimumDistance}let Y=X6($,N,K)-X6($,_,V),E=z-Y,w=z6?.HINT_TRACE_MIRP;if(w){let F=w.split(",").map((A)=>Number.parseInt(A.trim(),10)).filter((A)=>Number.isFinite(A));if(F.length===0||F.includes(K))console.log("trace MIRP",{pointIndex:K,cvtIndex:Z,orgDist:X,cvtDist:j,currentDist:Y,distance:z,move:E,flags:Q,rp0:V,roundState:$.GS.roundState})}if(T6($,N,K,E),P6($,N,K),$.GS.rp1=$.GS.rp0,$.GS.rp2=K,J){if($.GS.rp0=K,z6?.HINT_TRACE_RP0==="1")console.log("trace rp0",{ip:$.IP,range:$.currentRange,opcode:$.opcode,rp0:$.GS.rp0})}}function l1($,Q){let Z=Q?$.zp0:$.zp1,K=Q?$.GS.rp1:$.GS.rp2;if(K<0||K>=Z.nPoints){$.error=`SHP: invalid reference point ${K}`;return}let J=Y0($,Z.org[K]),q=X6($,Z,K),U=q-J;if(z6?.HINT_TRACE_SHP==="1")console.log("trace SHP",{refPoint:K,orgRef:J,curRef:q,shift:U,useRp1:Q,gep0:$.GS.gep0,gep1:$.GS.gep1,gep2:$.GS.gep2,ip:$.IP,range:$.currentRange});let W=$.zp2,H=$.GS.loop;$.GS.loop=1;for(let _=0;_<H;_++){let N=$.stack[--$.stackTop];if(N<0||N>=W.nPoints){$.error=`SHP: invalid point ${N}`;return}T6($,W,N,U),P6($,W,N)}}function d1($,Q){let Z=$.stack[--$.stackTop],K=Q?$.zp0:$.zp1,J=Q?$.GS.rp1:$.GS.rp2;if(J<0||J>=K.nPoints){$.error=`SHC: invalid reference point ${J}`;return}let q=$.zp2;if(Z<0||Z>=q.nContours){$.error=`SHC: invalid contour ${Z}`;return}let U=Y0($,K.org[J]),H=X6($,K,J)-U,_=Z===0?0:q.contours[Z-1]+1,N=q.contours[Z];for(let V=_;V<=N;V++){if(q===K&&V===J)continue;T6($,q,V,H),P6($,q,V)}}function n1($,Q){let Z=$.stack[--$.stackTop],K=Q?$.zp0:$.zp1,J=Q?$.GS.rp1:$.GS.rp2;if(J<0||J>=K.nPoints){$.error=`SHZ: invalid reference point ${J}`;return}let q=Z===0?$.twilight:$.pts,U=Y0($,K.org[J]),H=X6($,K,J)-U;for(let _=0;_<q.nPoints;_++){if(q===K&&_===J)continue;T6($,q,_,H)}}function tQ($){let Q=$.stack[--$.stackTop],Z=$.zp2,K=$.GS.loop;$.GS.loop=1;for(let J=0;J<K;J++){let q=$.stack[--$.stackTop];if(q<0||q>=Z.nPoints){$.error=`SHPIX: invalid point ${q}`;return}T6($,Z,q,Q),P6($,Z,q)}}function eQ($){let Q=$.GS.rp1,Z=$.GS.rp2;if(Q<0||Q>=$.zp0.nPoints){$.error=`IP: invalid rp1 ${Q}`;return}if(Z<0||Z>=$.zp1.nPoints){$.error=`IP: invalid rp2 ${Z}`;return}let K=x6($,$.zp1,Z)-x6($,$.zp0,Q),J=X6($,$.zp1,Z)-X6($,$.zp0,Q),q=x6($,$.zp0,Q),U=X6($,$.zp0,Q),W=$.zp2,H=$.GS.loop;$.GS.loop=1;for(let _=0;_<H;_++){let N=$.stack[--$.stackTop];if(N<0||N>=W.nPoints){$.error=`IP: invalid point ${N}`;return}let V=x6($,W,N)-q,X=X6($,W,N)-U,j;if(V!==0)if(K!==0)j=u1(V,J,K);else j=V;else j=0;T6($,W,N,j-X),P6($,W,N)}}function $Z($){let Q=$.GS.rp0;if(Q<0||Q>=$.zp0.nPoints){$.error=`ALIGNRP: invalid rp0 ${Q}`;return}let Z=$.GS.gep0===0?x6($,$.zp0,Q):X6($,$.zp0,Q),K=$.zp1,J=$.GS.loop;$.GS.loop=1;for(let q=0;q<J;q++){let U=$.stack[--$.stackTop];if(U<0||U>=K.nPoints){$.error=`ALIGNRP: invalid point ${U}`;return}let W=X6($,K,U),H=Z-W,_=z6?.HINT_TRACE_POINTS;if(_){if(_.split(",").map((V)=>Number.parseInt(V.trim(),10)).includes(U)){let V=x6($,$.zp0,Q),X=X6($,$.zp0,Q);console.log("trace ALIGNRP",{pointIndex:U,refPos:Z,refOrg:V,refCur:X,curPos:W,distance:H,gep0:$.GS.gep0,gep1:$.GS.gep1,gep2:$.GS.gep2})}}T6($,K,U,H),P6($,K,U)}}function p1($,Q){let Z=$.stack[--$.stackTop],K=$.stack[--$.stackTop],J=$.zp0,q=$.zp1;if(K<0||K>=q.nPoints){$.error=`MSIRP: invalid point ${K}`;return}let U=$.GS.rp0;if(U<0||U>=J.nPoints){$.error=`MSIRP: invalid rp0 ${U}`;return}let W=X6($,q,K)-X6($,J,U),H=Z-W;if(T6($,q,K,H),P6($,q,K),$.GS.rp1=$.GS.rp0,$.GS.rp2=K,Q){if($.GS.rp0=K,z6?.HINT_TRACE_RP0==="1")console.log("trace rp0",{ip:$.IP,range:$.currentRange,opcode:$.opcode,rp0:$.GS.rp0})}}function QZ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop],K=$.stack[--$.stackTop],J=$.stack[--$.stackTop],q=$.stack[--$.stackTop],U=$.zp0,W=$.zp1,H=$.zp2;if(J<0||J>=U.nPoints||K<0||K>=U.nPoints){$.error="ISECT: invalid line A points";return}if(Z<0||Z>=W.nPoints||Q<0||Q>=W.nPoints){$.error="ISECT: invalid line B points";return}if(q<0||q>=H.nPoints){$.error=`ISECT: invalid point ${q}`;return}let _=U.cur[J],N=U.cur[K],V=W.cur[Z],X=W.cur[Q],j=N.x-_.x,z=N.y-_.y,G=X.x-V.x,Y=X.y-V.y,E=j*Y-z*G,w=H.cur[q];if(E===0)w.x=_.x+N.x+V.x+X.x>>2,w.y=_.y+N.y+V.y+X.y>>2;else{let F=V.x-_.x,A=V.y-_.y,B=(F*Y-A*G)/E;w.x=Math.round(_.x+B*j),w.y=Math.round(_.y+B*z)}H.tags[q]|=48}function ZZ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop],K=$.zp0,J=$.zp1;if(Z<0||Z>=K.nPoints){$.error=`ALIGNPTS: invalid point ${Z}`;return}if(Q<0||Q>=J.nPoints){$.error=`ALIGNPTS: invalid point ${Q}`;return}let q=X6($,K,Z),U=X6($,J,Q),W=q+U>>1;T6($,K,Z,W-q),T6($,J,Q,W-U),P6($,K,Z),P6($,J,Q)}function o1($,Q){let Z=$.stack[--$.stackTop],K=$.zp2;if(Z<0||Z>=K.nPoints){$.error=`GC: invalid point ${Z}`,$.stack[$.stackTop++]=0;return}let J=Q?sQ($,K.org[Z]):X6($,K,Z);$.stack[$.stackTop++]=J}function KZ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop],K=$.zp2;if(Z<0||Z>=K.nPoints){$.error=`SCFS: invalid point ${Z}`;return}let J=X6($,K,Z);T6($,K,Z,Q-J),P6($,K,Z)}function c1($,Q){let Z=$.stack[--$.stackTop],K=$.stack[--$.stackTop],J=$.zp0,q=$.zp1;if(K<0||K>=J.nPoints){$.error=`MD: invalid point ${K}`,$.stack[$.stackTop++]=0;return}if(Z<0||Z>=q.nPoints){$.error=`MD: invalid point ${Z}`,$.stack[$.stackTop++]=0;return}let U;if(Q)U=x6($,q,Z)-x6($,J,K);else U=X6($,q,Z)-X6($,J,K);$.stack[$.stackTop++]=U}function JZ($){$.stack[$.stackTop++]=$.ppem}function qZ($){$.stack[$.stackTop++]=$.pointSize}function UZ($){let Q=$.pts,Z=$.GS.loop;$.GS.loop=1;for(let K=0;K<Z;K++){let J=$.stack[--$.stackTop];if(J<0||J>=Q.nPoints){$.error=`FLIPPT: invalid point ${J}`;return}Q.tags[J]^=1}}function WZ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop],K=$.pts;if(Z<0||Q>=K.nPoints||Z>Q){$.error=`FLIPRGON: invalid range ${Z}-${Q}`;return}for(let J=Z;J<=Q;J++)K.tags[J]|=1}function HZ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop],K=$.pts;if(Z<0||Q>=K.nPoints||Z>Q){$.error=`FLIPRGOFF: invalid range ${Z}-${Q}`;return}for(let J=Z;J<=Q;J++)K.tags[J]&=-2}function R9($,Q){let Z=$.stack[--$.stackTop],K=K8(Z,$.GS);$.stack[$.stackTop++]=X8(Z,K,$.GS)}function T9($,Q){let Z=$.stack[--$.stackTop],K=K8(Z,$.GS);$.stack[$.stackTop++]=Z+K}function _Z($){i1($,0)}function NZ($){i1($,16)}function VZ($){i1($,32)}function i1($,Q){let Z=$.stack[--$.stackTop];if(Z<0){$.error=`DELTAP: invalid count ${Z}`;return}let K=$.zp0;for(let J=0;J<Z;J++){let q=$.stack[--$.stackTop],U=$.stack[--$.stackTop];if(q<0||q>=K.nPoints){$.error=`DELTAP: invalid point ${q}`;return}let W=(U>>4&15)+$.GS.deltaBase+Q,H=U&15;if(W!==$.ppem)continue;let _=1<<6-$.GS.deltaShift,N=H-8;if(N>=0)N+=1;let V=N*_;T6($,K,q,V),P6($,K,q)}}function XZ($){s1($,0)}function jZ($){s1($,16)}function zZ($){s1($,32)}function s1($,Q){let Z=$.stack[--$.stackTop];if(Z<0){$.error=`DELTAC: invalid count ${Z}`;return}for(let K=0;K<Z;K++){let J=$.stack[--$.stackTop],q=$.stack[--$.stackTop];if(J<0||J>=$.cvtSize){$.error=`DELTAC: invalid CVT index ${J}`;return}let U=(q>>4&15)+$.GS.deltaBase+Q,W=q&15;if(U!==$.ppem)continue;let H=1<<6-$.GS.deltaShift,_=W-8;if(_>=0)_+=1;let N=_*H;$.cvt[J]+=N}}function a1($,Q){if(Q===0)$.GS.projVector={x:0,y:16384},$.GS.freeVector={x:0,y:16384},$.GS.dualVector={x:0,y:16384};else $.GS.projVector={x:16384,y:0},$.GS.freeVector={x:16384,y:0},$.GS.dualVector={x:16384,y:0}}function r1($,Q){if(Q===0)$.GS.projVector={x:0,y:16384},$.GS.dualVector={x:0,y:16384};else $.GS.projVector={x:16384,y:0},$.GS.dualVector={x:16384,y:0}}function t1($,Q){if(Q===0)$.GS.freeVector={x:0,y:16384};else $.GS.freeVector={x:16384,y:0}}function e1($,Q,Z,K,J,q){let U=K===0?$.twilight:$.pts,W=J===0?$.twilight:$.pts,H=q?U.org[Q]:U.cur[Q],_=q?W.org[Z]:W.cur[Z];if(!H||!_)return{x:16384,y:0};let N=H.x-_.x,V=H.y-_.y,X=Math.sqrt(N*N+V*V);if(X===0)return{x:16384,y:0};return{x:Math.round(N/X*16384),y:Math.round(V/X*16384)}}function $5($,Q){let Z=$.stack[--$.stackTop],K=$.stack[--$.stackTop],J=e1($,Z,K,$.GS.gep1,$.GS.gep2,!1);if(Q){let q=J.x;J.x=J.y,J.y=-q}$.GS.projVector=J,$.GS.dualVector={...J}}function Q5($,Q){let Z=$.stack[--$.stackTop],K=$.stack[--$.stackTop],J=e1($,Z,K,$.GS.gep1,$.GS.gep2,!1);if(Q){let q=J.x;J.x=J.y,J.y=-q}$.GS.freeVector=J}function Z5($,Q){let Z=$.stack[--$.stackTop],K=$.stack[--$.stackTop],J=e1($,Z,K,$.GS.gep1,$.GS.gep2,!0);if(Q){let q=J.x;J.x=J.y,J.y=-q}$.GS.dualVector=J}function GZ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop],K=Math.sqrt(Z*Z+Q*Q);if(K===0)$.GS.projVector={x:16384,y:0};else $.GS.projVector={x:Math.round(Z/K*16384),y:Math.round(Q/K*16384)};$.GS.dualVector={...$.GS.projVector}}function YZ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop],K=Math.sqrt(Z*Z+Q*Q);if(K===0)$.GS.freeVector={x:16384,y:0};else $.GS.freeVector={x:Math.round(Z/K*16384),y:Math.round(Q/K*16384)}}function EZ($){$.stack[$.stackTop++]=$.GS.projVector.x,$.stack[$.stackTop++]=$.GS.projVector.y}function wZ($){$.stack[$.stackTop++]=$.GS.freeVector.x,$.stack[$.stackTop++]=$.GS.freeVector.y}function AZ($){$.GS.freeVector={...$.GS.projVector}}function FZ($){$.GS.rp0=$.stack[--$.stackTop]}function LZ($){$.GS.rp1=$.stack[--$.stackTop]}function DZ($){$.GS.rp2=$.stack[--$.stackTop]}function BZ($){let Q=$.stack[--$.stackTop];if(Q!==0&&Q!==1){$.error=`SZP0: invalid zone ${Q}`;return}$.GS.gep0=Q,$.zp0=Q===0?$.twilight:$.pts}function MZ($){let Q=$.stack[--$.stackTop];if(Q!==0&&Q!==1){$.error=`SZP1: invalid zone ${Q}`;return}$.GS.gep1=Q,$.zp1=Q===0?$.twilight:$.pts}function RZ($){let Q=$.stack[--$.stackTop];if(Q!==0&&Q!==1){$.error=`SZP2: invalid zone ${Q}`;return}$.GS.gep2=Q,$.zp2=Q===0?$.twilight:$.pts}function TZ($){let Q=$.stack[--$.stackTop];if(Q!==0&&Q!==1){$.error=`SZPS: invalid zone ${Q}`;return}$.GS.gep0=Q,$.GS.gep1=Q,$.GS.gep2=Q;let Z=Q===0?$.twilight:$.pts;$.zp0=Z,$.zp1=Z,$.zp2=Z}function OZ($){let Q=$.stack[--$.stackTop];if(Q<=0){$.GS.loop=0;return}$.GS.loop=Q}function PZ($){$.GS.minimumDistance=$.stack[--$.stackTop]}function vZ($){if($.GS.controlValueCutIn=$.stack[--$.stackTop],z6?.HINT_TRACE_SCVTCI==="1")console.log("trace SCVTCI",{ip:$.IP,range:$.currentRange,value:$.GS.controlValueCutIn,ppem:$.ppem})}function IZ($){$.GS.singleWidthCutIn=$.stack[--$.stackTop]}function kZ($){$.GS.singleWidthValue=$.stack[--$.stackTop]}function CZ($){$.GS.deltaBase=$.stack[--$.stackTop]}function SZ($){$.GS.deltaShift=$.stack[--$.stackTop]}function hZ($){$.GS.roundState=1}function yZ($){$.GS.roundState=0}function bZ($){$.GS.roundState=2}function mZ($){$.GS.roundState=3}function gZ($){$.GS.roundState=4}function uZ($){$.GS.roundState=5}function xZ($){let Q=$.stack[--$.stackTop];M9(Q,$.GS),$.GS.roundState=6}function fZ($){let Q=$.stack[--$.stackTop];M9(Q,$.GS),$.GS.roundState=7}function lZ($){$.GS.autoFlip=!0}function dZ($){$.GS.autoFlip=!1}function nZ($){$.GS.scanControl=$.stack[--$.stackTop]}function pZ($){$.GS.scanType=$.stack[--$.stackTop]}function oZ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop];if(Q===1||Q===2)if(Z)$.GS.instructControl|=Q;else $.GS.instructControl&=~Q}function cZ($){let Q=$.stack[--$.stackTop],Z=0;if(Q&1)Z|=40;if(Q&32)Z|=4096;$.stack[$.stackTop++]=Z}function iZ($){let Q=$.stack[--$.stackTop];if(Q<0||Q>=$.storageSize){$.error=`RS: invalid index ${Q}`,$.stack[$.stackTop++]=0;return}let Z=z6?.HINT_TRACE_STORAGE;if(Z){if(Z.split(",").map((J)=>Number.parseInt(J.trim(),10)).includes(Q))console.log("trace RS",{ip:$.IP,range:$.currentRange,index:Q,value:$.storage[Q]})}$.stack[$.stackTop++]=$.storage[Q]}function sZ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop];if(Z<0||Z>=$.storageSize){$.error=`WS: invalid index ${Z}`;return}$.storage[Z]=Q;let K=z6?.HINT_TRACE_STORAGE;if(K){if(K.split(",").map((q)=>Number.parseInt(q.trim(),10)).includes(Z))console.log("trace WS",{ip:$.IP,range:$.currentRange,index:Z,value:Q})}}function aZ($){let Q=$.stack[--$.stackTop];if(Q<0||Q>=$.cvtSize){$.error=`RCVT: invalid index ${Q}`,$.stack[$.stackTop++]=0;return}$.stack[$.stackTop++]=$.cvt[Q]}function rZ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop];if(Z<0||Z>=$.cvtSize){$.error=`WCVTP: invalid index ${Z}`;return}if($.cvt[Z]=Q,z6?.HINT_TRACE_CVT0==="1"&&Z===0)console.log("trace WCVTP",{ip:$.IP,range:$.currentRange,index:Z,value:Q,ppem:$.ppem});let K=z6?.HINT_TRACE_CVT;if(K){let J=K.split(",").map((q)=>Number.parseInt(q.trim(),10)).filter((q)=>Number.isFinite(q));if(J.length===0||J.includes(Z))console.log("trace WCVTP",{ip:$.IP,range:$.currentRange,index:Z,value:Q,ppem:$.ppem})}}function tZ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop];if(Z<0||Z>=$.cvtSize){$.error=`WCVTF: invalid index ${Z}`;return}if($.cvt[Z]=g6(Q,$.scaleFix),z6?.HINT_TRACE_CVT0==="1"&&Z===0)console.log("trace WCVTF",{ip:$.IP,range:$.currentRange,index:Z,value:Q,ppem:$.ppem})}function eZ($){let Q=$.stack[--$.stackTop],Z=$.zp0;if(Q<0||Q>=Z.nPoints){$.error=`UTP: invalid point ${Q}`;return}let K=$.GS.freeVector;if(K.y!==0)Z.tags[Q]&=~32;if(K.x!==0)Z.tags[Q]&=~16}function Q7($){K7($,16,!0)}function Z7($){K7($,32,!1)}function K7($,Q,Z){let K=$.pts,J=K.nPoints,q=K.nContours;if(J===0||q===0)return;let U=0;for(let W=0;W<q;W++){let H=K.contours[W],_=-1;for(let j=U;j<=H;j++)if(K.tags[j]&Q){_=j;break}if(_<0){U=H+1;continue}let N=_,V=_+1,X=!1;while(!0){if(V>H){if(X)break;V=U,X=!0}if(V===_&&X){if(N!==_)$7(K,N,_,U,H,Z);else lW(K,U,H,_,Z);break}if(K.tags[V]&Q){if(N!==V)$7(K,N,V,U,H,Z);N=V}V++}U=H+1}}function lW($,Q,Z,K,J){let q=J?$.org[K]?.x:$.org[K]?.y,W=(J?$.cur[K]?.x:$.cur[K]?.y)-q;if(W===0)return;for(let H=Q;H<=Z;H++){if(H===K)continue;if(J)$.cur[H].x+=W;else $.cur[H].y+=W}}function $7($,Q,Z,K,J,q){let U=Q,W=Z,H=q?$.orus[U]?.x:$.orus[U]?.y,_=q?$.orus[W]?.x:$.orus[W]?.y;if(H>_){let F=H;H=_,_=F;let A=U;U=W,W=A}let N=q?$.org[U]?.x:$.org[U]?.y,V=q?$.org[W]?.x:$.org[W]?.y,X=q?$.cur[U]?.x:$.cur[U]?.y,j=q?$.cur[W]?.x:$.cur[W]?.y,z=X-N,G=j-V,Y=X===j||H===_,E=Y?0:oQ(j-X,_-H),w=Q+1;if(w>J)w=K;while(w!==Z){let F=q?$.org[w]?.x:$.org[w]?.y,A;if(F<=N)A=F+z;else if(F>=V)A=F+G;else if(Y)A=X;else{let B=q?$.orus[w]?.x:$.orus[w]?.y;A=X+g1(B-H,E)}if(q)$.cur[w].x=A;else $.cur[w].y=A;if(w++,w>J)w=K}}function J7($){let Q=$.stack[$.stackTop-1];$.stack[$.stackTop++]=Q}function q7($){$.stackTop--}function U7($){$.stackTop=0}function W7($){let Q=$.stack[$.stackTop-1],Z=$.stack[$.stackTop-2];$.stack[$.stackTop-1]=Z,$.stack[$.stackTop-2]=Q}function H7($){let Q=$.stackTop;$.stack[$.stackTop++]=Q}function _7($){let Q=$.stack[--$.stackTop];if(Q<=0||Q>$.stackTop){$.error=`CINDEX: invalid index ${Q}`;return}let Z=$.stack[$.stackTop-Q];$.stack[$.stackTop++]=Z}function N7($){let Q=$.stack[--$.stackTop];if(Q<=0||Q>$.stackTop){$.error=`MINDEX: invalid index ${Q}`;return}let Z=$.stack[$.stackTop-Q];for(let K=$.stackTop-Q;K<$.stackTop-1;K++)$.stack[K]=$.stack[K+1];$.stack[$.stackTop-1]=Z}function V7($){let Q=$.stack[$.stackTop-1],Z=$.stack[$.stackTop-2],K=$.stack[$.stackTop-3];$.stack[$.stackTop-3]=Z,$.stack[$.stackTop-2]=Q,$.stack[$.stackTop-1]=K}function K5($,Q){for(let Z=0;Z<Q;Z++)$.stack[$.stackTop++]=$.code[$.IP++]}function J5($,Q){for(let Z=0;Z<Q;Z++){let K=$.code[$.IP++],J=$.code[$.IP++],q=K<<8|J;if(q>=32768)q-=65536;$.stack[$.stackTop++]=q}}function X7($){let Q=$.code[$.IP++];K5($,Q)}function j7($){let Q=$.code[$.IP++];J5($,Q)}function q5($){while($.IP<$.codeSize&&$.error===null){if(++$.instructionCount>$.maxInstructions){$.error="Instruction limit exceeded (possible infinite loop)";return}let Q=$.code[$.IP++];$.opcode=Q,dW($,Q)}}function dW($,Q){if(z6?.HINT_TRACE_FUNC48==="1"&&$.currentRange===1&&$.IP-1>=1527&&$.IP-1<1582)console.log("trace func48",{ip:$.IP-1,opcode:Q,stackTop:$.stackTop,stackTail:Array.from($.stack.slice(Math.max(0,$.stackTop-6),$.stackTop))});if(Q>=176&&Q<=183){K5($,Q-176+1);return}if(Q>=184&&Q<=191){J5($,Q-184+1);return}if(Q>=192&&Q<=223){aQ($,Q&31);return}if(Q>=224&&Q<=255){rQ($,Q&31);return}switch(Q){case D.SVTCA_Y:a1($,0);break;case D.SVTCA_X:a1($,1);break;case D.SPVTCA_Y:r1($,0);break;case D.SPVTCA_X:r1($,1);break;case D.SFVTCA_Y:t1($,0);break;case D.SFVTCA_X:t1($,1);break;case D.SPVTL_0:$5($,!1);break;case D.SPVTL_1:$5($,!0);break;case D.SFVTL_0:Q5($,!1);break;case D.SFVTL_1:Q5($,!0);break;case D.SDPVTL_0:Z5($,!1);break;case D.SDPVTL_1:Z5($,!0);break;case D.SPVFS:GZ($);break;case D.SFVFS:YZ($);break;case D.GPV:EZ($);break;case D.GFV:wZ($);break;case D.SFVTPV:AZ($);break;case D.ISECT:QZ($);break;case D.SRP0:FZ($);break;case D.SRP1:LZ($);break;case D.SRP2:DZ($);break;case D.SZP0:BZ($);break;case D.SZP1:MZ($);break;case D.SZP2:RZ($);break;case D.SZPS:TZ($);break;case D.SLOOP:OZ($);break;case D.RTG:hZ($);break;case D.RTHG:yZ($);break;case D.SMD:PZ($);break;case D.ELSE:bQ($);break;case D.JMPR:gQ($);break;case D.SCVTCI:vZ($);break;case D.SSWCI:IZ($);break;case D.SSW:kZ($);break;case D.DUP:J7($);break;case D.POP:q7($);break;case D.CLEAR:U7($);break;case D.SWAP:W7($);break;case D.DEPTH:H7($);break;case D.CINDEX:_7($);break;case D.MINDEX:N7($);break;case D.ROLL:V7($);break;case D.FDEF:fQ($);break;case D.ENDF:lQ($);break;case D.CALL:dQ($);break;case D.LOOPCALL:nQ($);break;case D.MDAP_0:x1($,!1);break;case D.MDAP_1:x1($,!0);break;case D.IUP_Y:Z7($);break;case D.IUP_X:Q7($);break;case D.SHP_0:l1($,!1);break;case D.SHP_1:l1($,!0);break;case D.SHC_0:d1($,!1);break;case D.SHC_1:d1($,!0);break;case D.SHZ_0:n1($,!1);break;case D.SHZ_1:n1($,!0);break;case D.SHPIX:tQ($);break;case D.IP:eQ($);break;case D.MSIRP_0:p1($,!1);break;case D.MSIRP_1:p1($,!0);break;case D.ALIGNRP:$Z($);break;case D.ALIGNPTS:ZZ($);break;case D.UTP:eZ($);break;case D.RTDG:bZ($);break;case D.MIAP_0:f1($,!1);break;case D.MIAP_1:f1($,!0);break;case D.NPUSHB:X7($);break;case D.NPUSHW:j7($);break;case D.WS:sZ($);break;case D.RS:iZ($);break;case D.WCVTP:rZ($);break;case D.RCVT:aZ($);break;case D.GC_0:o1($,!1);break;case D.GC_1:o1($,!0);break;case D.SCFS:KZ($);break;case D.MD_0:c1($,!0);break;case D.MD_1:c1($,!1);break;case D.MPPEM:JZ($);break;case D.MPS:qZ($);break;case D.FLIPON:lZ($);break;case D.FLIPOFF:dZ($);break;case D.DEBUG:break;case D.LT:MQ($);break;case D.LTEQ:RQ($);break;case D.GT:TQ($);break;case D.GTEQ:OQ($);break;case D.EQ:PQ($);break;case D.NEQ:vQ($);break;case D.ODD:IQ($);break;case D.EVEN:kQ($);break;case D.IF:yQ($);break;case D.EIF:mQ($);break;case D.AND:CQ($);break;case D.OR:SQ($);break;case D.NOT:hQ($);break;case D.DELTAP1:_Z($);break;case D.SDB:CZ($);break;case D.SDS:SZ($);break;case D.ADD:zQ($);break;case D.SUB:GQ($);break;case D.DIV:YQ($);break;case D.MUL:EQ($);break;case D.ABS:wQ($);break;case D.NEG:AQ($);break;case D.FLOOR:FQ($);break;case D.CEILING:LQ($);break;case D.ROUND_0:R9($,0);break;case D.ROUND_1:R9($,1);break;case D.ROUND_2:R9($,2);break;case D.ROUND_3:R9($,3);break;case D.NROUND_0:T9($,0);break;case D.NROUND_1:T9($,1);break;case D.NROUND_2:T9($,2);break;case D.NROUND_3:T9($,3);break;case D.WCVTF:tZ($);break;case D.DELTAP2:NZ($);break;case D.DELTAP3:VZ($);break;case D.DELTAC1:XZ($);break;case D.DELTAC2:jZ($);break;case D.DELTAC3:zZ($);break;case D.SROUND:xZ($);break;case D.S45ROUND:fZ($);break;case D.JROT:uQ($);break;case D.JROF:xQ($);break;case D.ROFF:uZ($);break;case D.RUTG:gZ($);break;case D.RDTG:mZ($);break;case D.SANGW:$.stackTop--;break;case D.AA:$.stackTop--;break;case D.FLIPPT:UZ($);break;case D.FLIPRGON:WZ($);break;case D.FLIPRGOFF:HZ($);break;case D.SCANCTRL:nZ($);break;case D.SCANTYPE:pZ($);break;case D.MAX:DQ($);break;case D.MIN:BQ($);break;case D.GETINFO:cZ($);break;case D.IDEF:pQ($);break;case D.INSTCTRL:oZ($);break;default:if(Q<$.maxIDefs&&$.IDefs[Q]?.active){let Z=$.IDefs[Q];if($.callStackTop>=$.maxCallStack){$.error="IDEF call: call stack overflow";return}let K=$.callStack[$.callStackTop++];K.callerIP=$.IP,K.callerRange=$.currentRange,K.def={id:Q,start:Z.start,end:Z.end,active:!0,range:Z.range},K.count=1,$.currentRange=Z.range;let J=$.codeRanges.get($.currentRange);if(J)$.code=J.code,$.codeSize=J.size;$.IP=Z.start}else $.error=`Unknown opcode 0x${Q.toString(16)}`}}function o8($,Q,Z){$.codeRanges.set(Q,{code:Z,size:Z.length})}function O9($,Q){let Z=$.codeRanges.get(Q);if(!Z)return;$.stackTop=0,$.callStackTop=0,$.currentRange=Q,$.code=Z.code,$.codeSize=Z.size,$.IP=0,$.instructionCount=0,q5($)}function E0($){$.twilight.nPoints=$.twilight.org.length;for(let Q=0;Q<$.twilight.nPoints;Q++)$.twilight.org[Q].x=0,$.twilight.org[Q].y=0,$.twilight.cur[Q].x=0,$.twilight.cur[Q].y=0,$.twilight.tags[Q]=0;$.zp0=$.twilight,$.zp1=$.twilight,$.zp2=$.twilight,$.GS.gep0=0,$.GS.gep1=0,$.GS.gep2=0,O9($,1)}function w0($){$.GS={...$.defaultGS},$.twilight.nPoints=$.twilight.org.length;for(let Q=0;Q<$.twilight.nPoints;Q++)$.twilight.org[Q].x=0,$.twilight.org[Q].y=0,$.twilight.cur[Q].x=0,$.twilight.cur[Q].y=0,$.twilight.tags[Q]=0;$.zp0=$.twilight,$.zp1=$.twilight,$.zp2=$.twilight,$.GS.gep0=0,$.GS.gep1=0,$.GS.gep2=0,O9($,2),$.defaultGS={...$.GS},$.defaultGS.projVector={x:16384,y:0},$.defaultGS.freeVector={x:16384,y:0},$.defaultGS.dualVector={x:16384,y:0},$.defaultGS.rp0=0,$.defaultGS.rp1=0,$.defaultGS.rp2=0,$.defaultGS.loop=1,$.defaultGS.gep0=1,$.defaultGS.gep1=1,$.defaultGS.gep2=1}function A0($,Q){$.GS={...$.defaultGS},$.GS.rp0=0,$.GS.rp1=0,$.GS.rp2=0,$.GS.loop=1,$.zp0=$.pts,$.zp1=$.pts,$.zp2=$.pts,$.GS.gep0=1,$.GS.gep1=1,$.GS.gep2=1,o8($,3,Q),O9($,3)}function F0($,Q=256,Z=64,K=64,J=16,q){let U=G0(Q,Z,K,K,32,J),W;if(q)W=new Int32Array(q),U.cvt=new Int32Array(q),U.cvtSize=q.length;return U.twilight.nPoints=J,U.zp0=U.twilight,U.zp1=U.twilight,U.zp2=U.twilight,{ctx:U,unitsPerEM:$,cvtOriginal:W,fpgmExecuted:!1,currentPpem:0}}function L0($,Q){o8($.ctx,1,Q)}function D0($,Q){o8($.ctx,2,Q)}function U5($){if($.fpgmExecuted)return null;return $.ctx.error=null,E0($.ctx),$.fpgmExecuted=!0,$.ctx.error}function B0($,Q,Z){if(!$.fpgmExecuted){let K=U5($);if(K)return K}if($.currentPpem===Q)return null;return $.ctx.scale=Q*64/$.unitsPerEM,$.ctx.scaleFix=Math.round($.ctx.scale*65536),$.ctx.ppem=Q,$.ctx.pointSize=Z*64,nW($.ctx,$.cvtOriginal),$.ctx.error=null,w0($.ctx),$.currentPpem=Q,$.cvtBase=new Int32Array($.ctx.cvt),$.ctx.error}function nW($,Q){if(!Q){for(let Z=0;Z<$.cvtSize;Z++)$.cvt[Z]=g6($.cvt[Z],$.scaleFix);return}for(let Z=0;Z<$.cvtSize;Z++)$.cvt[Z]=g6(Q[Z],$.scaleFix)}function M0($,Q){let Z=$.ctx,K=Q.xCoords.length,J=Q.contourEnds.length,q=K+4,U=Q8(q,J);U.nPoints=q,U.nContours=J;for(let z=0;z<K;z++){let G=g6(Q.xCoords[z],Z.scaleFix),Y=g6(Q.yCoords[z],Z.scaleFix);U.org[z].x=G,U.org[z].y=Y,U.cur[z].x=G,U.cur[z].y=Y,U.orus[z].x=Q.xCoords[z],U.orus[z].y=Q.yCoords[z],U.tags[z]=Q.flags[z]}let W=1/0;for(let z=0;z<K;z++)if(Q.xCoords[z]<W)W=Q.xCoords[z];if(!Number.isFinite(W))W=0;let H=Q.lsb??0,_=Q.advanceWidth??0,N=g6(W-H,Z.scaleFix);U.org[K].x=N,U.org[K].y=0,U.cur[K].x=N,U.cur[K].y=0,U.orus[K].x=W-H,U.orus[K].y=0,U.tags[K]=0;let V=g6(W-H+_,Z.scaleFix);U.org[K+1].x=V,U.org[K+1].y=0,U.cur[K+1].x=V,U.cur[K+1].y=0,U.orus[K+1].x=W-H+_,U.orus[K+1].y=0,U.tags[K+1]=0;for(let z=K+2;z<q;z++)U.org[z].x=0,U.org[z].y=0,U.cur[z].x=0,U.cur[z].y=0,U.orus[z].x=0,U.orus[z].y=0,U.tags[z]=0;U.cur[K].x=Z8(U.cur[K].x,0),U.cur[K+1].x=Z8(U.cur[K+1].x,0),U.cur[K+2].y=Z8(U.cur[K+2].y,0),U.cur[K+3].y=Z8(U.cur[K+3].y,0);for(let z=0;z<J;z++)U.contours[z]=Q.contourEnds[z];Z.pts=U,Z.zp0=U,Z.zp1=U,Z.zp2=U,Z.twilight.nPoints=Z.twilight.org.length;for(let z=0;z<Z.twilight.nPoints;z++)Z.twilight.org[z].x=0,Z.twilight.org[z].y=0,Z.twilight.cur[z].x=0,Z.twilight.cur[z].y=0,Z.twilight.tags[z]=0;if(Z.storage.fill(0),$.cvtBase)Z.cvt.set($.cvtBase);if(Z.error=null,(Z.GS.instructControl&1)!==0);else if(Q.instructions.length>0)A0(Z,Q.instructions);let X=Array(K),j=Array(K);for(let z=0;z<K;z++)X[z]=U.cur[z]?.x,j[z]=U.cur[z]?.y;return{xCoords:X,yCoords:j,flags:Q.flags,contourEnds:Q.contourEnds,error:Z.error}}function z7($){return $.map((Q)=>Q/64)}var R0;((q)=>{q[q.Invalid=0]="Invalid";q[q.LTR=4]="LTR";q[q.RTL=5]="RTL";q[q.TTB=6]="TTB";q[q.BTT=7]="BTT"})(R0||={});var G7;((K)=>{K[K.MonotoneGraphemes=0]="MonotoneGraphemes";K[K.MonotoneCharacters=1]="MonotoneCharacters";K[K.Characters=2]="Characters"})(G7||={});var Y7;((U)=>{U[U.Default=0]="Default";U[U.BeginningOfText=1]="BeginningOfText";U[U.EndOfText=2]="EndOfText";U[U.PreserveDefaultIgnorables=4]="PreserveDefaultIgnorables";U[U.RemoveDefaultIgnorables=8]="RemoveDefaultIgnorables";U[U.DoNotInsertDottedCircle=16]="DoNotInsertDottedCircle"})(Y7||={});var T0;((J)=>{J[J.Base=1]="Base";J[J.Ligature=2]="Ligature";J[J.Mark=3]="Mark";J[J.Component=4]="Component"})(T0||={});function k($){if($.length!==4)throw Error(`Tag must be exactly 4 characters: "${$}"`);return $.charCodeAt(0)<<24|$.charCodeAt(1)<<16|$.charCodeAt(2)<<8|$.charCodeAt(3)}function P9($){return String.fromCharCode($>>24&255,$>>16&255,$>>8&255,$&255)}var p={head:k("head"),hhea:k("hhea"),hmtx:k("hmtx"),maxp:k("maxp"),cmap:k("cmap"),loca:k("loca"),glyf:k("glyf"),name:k("name"),OS2:k("OS/2"),post:k("post"),GDEF:k("GDEF"),GSUB:k("GSUB"),GPOS:k("GPOS"),BASE:k("BASE"),JSTF:k("JSTF"),MATH:k("MATH"),CFF:k("CFF "),CFF2:k("CFF2"),fvar:k("fvar"),gvar:k("gvar"),avar:k("avar"),HVAR:k("HVAR"),VVAR:k("VVAR"),MVAR:k("MVAR"),morx:k("morx"),kerx:k("kerx"),kern:k("kern"),trak:k("trak"),feat:k("feat"),COLR:k("COLR"),CPAL:k("CPAL"),SVG:k("SVG "),sbix:k("sbix"),CBDT:k("CBDT"),CBLC:k("CBLC"),STAT:k("STAT"),vhea:k("vhea"),vmtx:k("vmtx"),VORG:k("VORG"),fpgm:k("fpgm"),prep:k("prep"),cvt:k("cvt "),gasp:k("gasp")},qG={ccmp:k("ccmp"),locl:k("locl"),rlig:k("rlig"),liga:k("liga"),clig:k("clig"),calt:k("calt"),rclt:k("rclt"),dlig:k("dlig"),smcp:k("smcp"),c2sc:k("c2sc"),isol:k("isol"),init:k("init"),medi:k("medi"),fina:k("fina"),kern:k("kern"),mark:k("mark"),mkmk:k("mkmk"),curs:k("curs"),dist:k("dist")};class O8{direction=4;script="Zyyy";language=null;infos=[];positions=[];_deleted=null;_deletedCount=0;_infoPool=[];_posPool=[];_capacity=0;static withCapacity($){let Q=new O8;return Q._capacity=$,Q}get length(){return this.infos.length}reset(){this.infos.length=0,this.positions.length=0,this._deleted=null,this._deletedCount=0}initFromCodepoints($,Q,Z){let K=$.length,J=this._infoPool.length;if(J<K){let q=K-J;for(let U=0;U<q;U++)this._infoPool.push({glyphId:0,cluster:0,mask:0,codepoint:0}),this._posPool.push({xAdvance:0,yAdvance:0,xOffset:0,yOffset:0})}this.infos.length=K,this.positions.length=K;for(let q=0;q<K;q++){let U=$[q],W=this._infoPool[q];W.glyphId=Z(U),W.cluster=Q[q],W.mask=4294967295,W.codepoint=U,this.infos[q]=W;let H=this._posPool[q];H.xAdvance=0,H.yAdvance=0,H.xOffset=0,H.yOffset=0,this.positions[q]=H}this._deleted=null,this._deletedCount=0}initFromCodepointsWithFont($,Q,Z){let K=$.length,J=this._infoPool.length;if(J<K){let q=K-J;for(let U=0;U<q;U++)this._infoPool.push({glyphId:0,cluster:0,mask:0,codepoint:0}),this._posPool.push({xAdvance:0,yAdvance:0,xOffset:0,yOffset:0})}this.infos.length=K,this.positions.length=K;for(let q=0;q<K;q++){let U=$[q],W=this._infoPool[q];W.glyphId=Z.glyphId(U),W.cluster=Q[q],W.mask=4294967295,W.codepoint=U,this.infos[q]=W;let H=this._posPool[q];H.xAdvance=0,H.yAdvance=0,H.xOffset=0,H.yOffset=0,this.positions[q]=H}this._deleted=null,this._deletedCount=0}initFromInfos($){this.infos=$;let Q=$.length,Z=Array(Q);for(let K=0;K<Q;K++)Z[K]={xAdvance:0,yAdvance:0,xOffset:0,yOffset:0};this.positions=Z}setAdvance($,Q,Z=0){let K=this.positions[$];if(K)K.xAdvance=Q,K.yAdvance=Z}addOffset($,Q,Z){let K=this.positions[$];if(K)K.xOffset+=Q,K.yOffset+=Z}replaceGlyph($,Q){let Z=this.infos[$];if(Z)Z.glyphId=Q}insertGlyph($,Q,Z){if(this.infos.splice($,0,Q),this.positions.splice($,0,Z),this._deleted){let K=new Uint8Array(this.infos.length);for(let J=0;J<$;J++)K[J]=this._deleted[J];K[$]=0;for(let J=$;J<this._deleted.length;J++)K[J+1]=this._deleted[J];this._deleted=K}}removeRange($,Q){let Z=Q-$;if(this.infos.splice($,Z),this.positions.splice($,Z),this._deleted&&this._deleted.length>this.infos.length)this._deleted=this._deleted.slice(0,this.infos.length)}markDeleted($){if(!this._deleted)this._deleted=new Uint8Array(this.infos.length);if(!this._deleted[$])this._deleted[$]=1,this._deletedCount++}isDeleted($){return this._deleted?this._deleted[$]===1:!1}hasPendingDeletions(){return this._deletedCount>0}compact(){if(this._deletedCount===0||!this._deleted)return;let $=0;for(let Q=0;Q<this.infos.length;Q++)if(!this._deleted[Q]){if($!==Q)this.infos[$]=this.infos[Q],this.positions[$]=this.positions[Q];$++}this.infos.length=$,this.positions.length=$,this._deleted=null,this._deletedCount=0}mergeClusters($,Q){if($>=Q||$<0||Q>=this.infos.length)return;let Z=this.infos[$]?.cluster;for(let K=$+1;K<=Q;K++){let J=this.infos[K];if(J)J.cluster=Z}}reverse(){this.infos.reverse(),this.positions.reverse()}reverseRange($,Q){let Z=$,K=Q-1;while(Z<K){let J=this.infos[Z],q=this.infos[K];if(!J||!q)break;this.infos[Z]=q,this.infos[K]=J;let U=this.positions[Z],W=this.positions[K];if(!U||!W)break;this.positions[Z]=W,this.positions[K]=U,Z++,K--}}getTotalAdvance(){let $=0,Q=0,Z=this.positions;for(let K=0;K<Z.length;K++){let J=Z[K];$+=J.xAdvance,Q+=J.yAdvance}return{x:$,y:Q}}serialize(){let $=[],Q=this.infos,Z=this.positions;for(let K=0;K<Q.length;K++){let J=Q[K],q=Z[K];if(!q)continue;let U=`${J.glyphId}`;if(K===0||J.cluster!==Q[K-1]?.cluster)U+=`=${J.cluster}`;if(q.xOffset!==0||q.yOffset!==0)U+=`@${q.xOffset},${q.yOffset}`;if(q.xAdvance!==0)U+=`+${q.xAdvance}`;$.push(U)}return`[${$.join("|")}]`}glyphIds(){return this.infos.map(($)=>$.glyphId)}clusters(){return this.infos.map(($)=>$.cluster)}*[Symbol.iterator](){let $=this.infos,Q=this.positions;for(let Z=0;Z<$.length;Z++){let K=$[Z],J=Q[Z];if(!J)continue;yield{info:K,position:J}}}}class E7{_direction=4;_script="Zyyy";_language=null;_clusterLevel=0;_flags=0;codepoints=[];clusters=[];preContext=[];postContext=[];addStr($,Q=0){let Z=$.length;if(Z===0)return this;if(this.codepoints.length>0)return this._addStrAppend($,Q);let J=Array(Z),q=Array(Z),U=Q,W=0;for(let H=0;H<Z;H++){let _=$.charCodeAt(H);if(_>=55296&&_<=56319&&H+1<Z){let N=$.charCodeAt(H+1);if(N>=56320&&N<=57343){J[W]=(_-55296<<10)+(N-56320)+65536,q[W]=U,W++,U++,H++;continue}}J[W]=_,q[W]=U,W++,U++}if(W<Z)J.length=W,q.length=W;return this.codepoints=J,this.clusters=q,this}_addStrAppend($,Q){let Z=Q,K=$.length;for(let J=0;J<K;J++){let q=$.charCodeAt(J);if(q>=55296&&q<=56319&&J+1<K){let U=$.charCodeAt(J+1);if(U>=56320&&U<=57343){this.codepoints.push((q-55296<<10)+(U-56320)+65536),this.clusters.push(Z),Z++,J++;continue}}this.codepoints.push(q),this.clusters.push(Z),Z++}return this}addCodepoints($,Q=0){let Z=Q;for(let K=0;K<$.length;K++){let J=$[K];this.codepoints.push(J),this.clusters.push(Z),Z++}return this}addCodepoint($,Q){return this.codepoints.push($),this.clusters.push(Q??this.codepoints.length-1),this}setDirection($){return this._direction=$,this}setScript($){return this._script=$,this}setLanguage($){return this._language=$,this}setClusterLevel($){return this._clusterLevel=$,this}setFlags($){return this._flags=$,this}setPreContext($){this.preContext=[];let Q=$.length;for(let Z=0;Z<Q;Z++){let K=$.charCodeAt(Z);if(K>=55296&&K<=56319&&Z+1<Q){let J=$.charCodeAt(Z+1);if(J>=56320&&J<=57343){this.preContext.push((K-55296<<10)+(J-56320)+65536),Z++;continue}}this.preContext.push(K)}return this}setPostContext($){this.postContext=[];let Q=$.length;for(let Z=0;Z<Q;Z++){let K=$.charCodeAt(Z);if(K>=55296&&K<=56319&&Z+1<Q){let J=$.charCodeAt(Z+1);if(J>=56320&&J<=57343){this.postContext.push((K-55296<<10)+(J-56320)+65536),Z++;continue}}this.postContext.push(K)}return this}clear(){return this.codepoints.length=0,this.clusters.length=0,this.preContext.length=0,this.postContext.length=0,this}get length(){return this.codepoints.length}get direction(){return this._direction}get script(){return this._script}get language(){return this._language}get clusterLevel(){return this._clusterLevel}get flags(){return this._flags}toGlyphInfos(){return this.codepoints.map(($,Q)=>({glyphId:0,cluster:this.clusters[Q]??0,mask:0,codepoint:$}))}}function F7($,Q){let Z=$.uint16(),K=$.uint16(),J=$.uint16(),q=$.uint16(),U=$.offset32(),W=$.uint16(),H=$.uint16(),_=$.offset32(),N=H&1?4:2,V=[];for(let z=0;z<=W;z++){let G=N===4?$.uint32():$.uint16()*2;V.push(G)}let X=[];if(q>0){let z=$.sliceFrom(U);for(let G=0;G<q;G++){let Y=[];for(let E=0;E<J;E++)Y.push(z.f2dot14());X.push(Y)}}let j=[];for(let z=0;z<W;z++){let G=V[z],Y=V[z+1];if(G===void 0||Y===void 0){j.push({tupleVariationHeaders:[]});continue}let E=_+G,w=_+Y;if(E===w){j.push({tupleVariationHeaders:[]});continue}let F=$.sliceFrom(E),A=pW(F,w-E,J,X);j.push(A)}return{majorVersion:Z,minorVersion:K,axisCount:J,sharedTupleCount:q,sharedTuples:X,glyphVariationData:j}}function pW($,Q,Z,K){if(Q===0)return{tupleVariationHeaders:[]};let J=$.offset,q=$.uint16(),U=$.offset16(),W=q&4095,H=(q&32768)!==0,_=[];for(let j=0;j<W;j++){let z=$.uint16(),G=$.uint16(),Y=null,E=null,w=null;if(G&32768){Y=[];for(let F=0;F<Z;F++)Y.push($.f2dot14())}else{let F=G&4095;Y=K[F]||null}if(G&16384){E=[],w=[];for(let F=0;F<Z;F++)E.push($.f2dot14());for(let F=0;F<Z;F++)w.push($.f2dot14())}_.push({variationDataSize:z,tupleIndex:G,peakTuple:Y,intermediateStartTuple:E,intermediateEndTuple:w})}let N=$.sliceFrom(J+U),V=null;if(H)V=w7(N);let X=[];for(let j=0;j<_.length;j++){let z=_[j],G=(z.tupleIndex&8192)!==0,Y;if(G)Y=w7(N);else Y=V;let E=Y?Y.length:0,w=E>0?A7(N,E):[],F=E>0?A7(N,E):[],A=[];for(let B=0;B<w.length;B++){let L=w[B],O=F[B];A.push({x:L??0,y:O??0})}X.push({variationDataSize:z.variationDataSize,tupleIndex:z.tupleIndex,peakTuple:z.peakTuple,intermediateStartTuple:z.intermediateStartTuple,intermediateEndTuple:z.intermediateEndTuple,serializedData:new Uint8Array(0),pointNumbers:Y,deltas:A})}return{tupleVariationHeaders:X}}function w7($){let Q=$.uint8(),Z=Q===0?0:Q&128?(Q&127)<<8|$.uint8():Q;if(Z===0)return[];let K=[],J=0;while(K.length<Z){let q=$.uint8(),U=(q&127)+1,W=(q&128)!==0;for(let H=0;H<U&&K.length<Z;H++){let _=W?$.uint16():$.uint8();J+=_,K.push(J)}}return K}function A7($,Q){let Z=[];while(Z.length<Q){let K=$.uint8(),J=(K&63)+1,q=(K&128)!==0,U=(K&64)!==0;for(let W=0;W<J&&Z.length<Q;W++)if(q)Z.push(0);else if(U)Z.push($.int16());else Z.push($.int8())}return Z}function O0($,Q,Z,K){let J=1;for(let q=0;q<$.length;q++){let U=$[q],W=Q[q]??0;if(U===0||W===0){if(U!==0)J=0;continue}if(Z&&K){let H=Z[q],_=K[q];if(H===void 0||_===void 0)continue;if(W<H||W>_){J=0;break}if(W<U)J*=(W-H)/(U-H);else if(W>U)J*=(_-W)/(_-U)}else{if(U>0&&W<0||U<0&&W>0){J=0;break}if(Math.abs(W)<Math.abs(U))J*=W/U}}return J}function oW($,Q,Z,K){let J=$.glyphVariationData[Q];if(!J)return{x:0,y:0};let q=0,U=0;for(let W=0;W<J.tupleVariationHeaders.length;W++){let H=J.tupleVariationHeaders[W];if(!H.peakTuple)continue;let _=O0(H.peakTuple,K,H.intermediateStartTuple,H.intermediateEndTuple);if(_===0)continue;if(H.pointNumbers!==null){let N=H.pointNumbers.indexOf(Z);if(N<0)continue;let V=H.deltas[N];if(V)q+=V.x*_,U+=V.y*_}else{let N=H.deltas[Z];if(N)q+=N.x*_,U+=N.y*_}}return{x:Math.round(q),y:Math.round(U)}}function L7($,Q,Z){let K=Z===0,J=[],q=Q+1;if(K)for(let U=0;U<q;U++)J.push($.uint16()*2);else for(let U=0;U<q;U++)J.push($.uint32());return{offsets:J,isShort:K}}function P0($,Q){if(Q<0||Q>=$.offsets.length-1)return null;let Z=$.offsets[Q],K=$.offsets[Q+1];if(Z===void 0||K===void 0)return null;let J=K-Z;if(J===0)return null;return{offset:Z,length:J}}function cW($,Q){return P0($,Q)!==null}var j8={OnCurve:1,XShortVector:2,YShortVector:4,Repeat:8,XIsSameOrPositive:16,YIsSameOrPositive:32,OverlapSimple:64},A6={Arg1And2AreWords:1,ArgsAreXYValues:2,RoundXYToGrid:4,WeHaveAScale:8,MoreComponents:32,WeHaveAnXAndYScale:64,WeHaveATwoByTwo:128,WeHaveInstructions:256,UseMyMetrics:512,OverlapCompound:1024,ScaledComponentOffset:2048,UnscaledComponentOffset:4096};function B7($){return{reader:$}}function z8($,Q,Z){let K=P0(Q,Z);if(!K)return{type:"empty"};let J=$.reader.slice(K.offset,K.length);return iW(J)}function iW($){let Q=$.int16(),Z=$.int16(),K=$.int16(),J=$.int16(),q=$.int16();if(Q>=0)return sW($,Q,Z,K,J,q);else return aW($,Q,Z,K,J,q)}function sW($,Q,Z,K,J,q){if(Q===0)return{type:"simple",numberOfContours:Q,xMin:Z,yMin:K,xMax:J,yMax:q,contours:[],instructions:new Uint8Array(0)};let U=[];for(let w=0;w<Q;w++)U.push($.uint16());let W=U[Q-1];if(W===void 0)return{type:"simple",numberOfContours:Q,xMin:Z,yMin:K,xMax:J,yMax:q,contours:[],instructions:new Uint8Array(0)};let H=W+1,_=$.uint16(),N=$.bytes(_),V=[];while(V.length<H){let w=$.uint8();if(V.push(w),w&j8.Repeat){let F=$.uint8();for(let A=0;A<F;A++)V.push(w)}}let X=[],j=0;for(let w=0;w<V.length;w++){let F=V[w];if(F&j8.XShortVector){let A=$.uint8();j+=F&j8.XIsSameOrPositive?A:-A}else if(!(F&j8.XIsSameOrPositive))j+=$.int16();X.push(j)}let z=[],G=0;for(let w=0;w<V.length;w++){let F=V[w];if(F&j8.YShortVector){let A=$.uint8();G+=F&j8.YIsSameOrPositive?A:-A}else if(!(F&j8.YIsSameOrPositive))G+=$.int16();z.push(G)}let Y=[],E=0;for(let w=0;w<U.length;w++){let F=U[w],A=[];while(E<=F){let B=X[E],L=z[E],O=V[E];if(B===void 0||L===void 0||O===void 0)break;A.push({x:B,y:L,onCurve:(O&j8.OnCurve)!==0}),E++}Y.push(A)}return{type:"simple",numberOfContours:Q,xMin:Z,yMin:K,xMax:J,yMax:q,contours:Y,instructions:N}}function aW($,Q,Z,K,J,q){let U=[],W;do{W=$.uint16();let _=$.uint16(),N,V;if(W&A6.Arg1And2AreWords)if(W&A6.ArgsAreXYValues)N=$.int16(),V=$.int16();else N=$.uint16(),V=$.uint16();else if(W&A6.ArgsAreXYValues)N=$.int8(),V=$.int8();else N=$.uint8(),V=$.uint8();let X=1,j=0,z=0,G=1;if(W&A6.WeHaveAScale)X=G=$.f2dot14();else if(W&A6.WeHaveAnXAndYScale)X=$.f2dot14(),G=$.f2dot14();else if(W&A6.WeHaveATwoByTwo)X=$.f2dot14(),j=$.f2dot14(),z=$.f2dot14(),G=$.f2dot14();U.push({glyphId:_,flags:W,arg1:N,arg2:V,transform:[X,j,z,G]})}while(W&A6.MoreComponents);let H=new Uint8Array(0);if(W&A6.WeHaveInstructions){let _=$.uint16();H=$.bytes(_)}return{type:"composite",numberOfContours:Q,xMin:Z,yMin:K,xMax:J,yMax:q,components:U,instructions:H}}function rW($,Q,Z,K,J){if($&A6.UnscaledComponentOffset)return!1;if($&A6.ScaledComponentOffset)return!0;return Q!==1||Z!==0||K!==0||J!==1}function tW($){let Q=[];for(let Z=0;Z<$.length;Z++){let K=$[Z];for(let J=0;J<K.length;J++)Q.push(K[J])}return Q}function eW($,Q,Z,K,J,q,U){let W=Array($.length);for(let H=0;H<$.length;H++){let _=$[H],N=Math.round(Q*_.x+K*_.y+q),V=Math.round(Z*_.x+J*_.y+U),X={x:N,y:V,onCurve:_.onCurve};if(_.cubic)X.cubic=!0;W[H]=X}return W}function M7($,Q,Z,K){let[J,q,U,W]=Z.transform,H=(Z.flags&A6.ArgsAreXYValues)!==0,_=tW(K),N=0,V=0;if(H){if(N=Z.arg1,V=Z.arg2,rW(Z.flags,J,q,U,W)){let X=J*N+U*V,j=q*N+W*V;N=X,V=j}if(Z.flags&A6.RoundXYToGrid)N=Math.round(N),V=Math.round(V)}else{let{arg1:X,arg2:j}=Z;if(X>=0&&X<Q.length&&j>=0&&j<_.length){let z=Q[X],G=_[j],Y=J*G.x+U*G.y,E=q*G.x+W*G.y;N=z.x-Y,V=z.y-E}}for(let X=0;X<K.length;X++){let j=K[X],z=eW(j,J,q,U,W,N,V);$.push(z);for(let G=0;G<z.length;G++)Q.push(z[G])}}function W5($,Q,Z,K=0){if(K>32)return[];let J=[],q=[];for(let U=0;U<Z.components.length;U++){let W=Z.components[U],H=z8($,Q,W.glyphId),_;if(H.type==="simple")_=H.contours;else if(H.type==="composite")_=W5($,Q,H,K+1);else continue;M7(J,q,W,_)}return J}var D7=new WeakMap,R7=256;function T7($){let Q=D7.get($);if(!Q)Q=new Map,D7.set($,Q);return Q}function O7($,Q,Z){let K=z8($,Q,Z);if(K.type==="empty")return[];else if(K.type==="simple")return K.contours;else{let J=T7($),q=J.get(Z);if(q)return q;let U=W5($,Q,K);if(J.size>=R7){let W=J.keys().next().value;if(W!==void 0)J.delete(W)}return J.set(Z,U),U}}function P7($,Q,Z){let K=z8($,Q,Z);if(K.type==="empty")return{contours:[],bounds:null};let J={xMin:K.xMin,yMin:K.yMin,xMax:K.xMax,yMax:K.yMax};if(K.type==="simple")return{contours:K.contours,bounds:J};let q=T7($),U=q.get(Z);if(!U){if(U=W5($,Q,K),q.size>=R7){let X=q.keys().next().value;if(X!==void 0)q.delete(X)}q.set(Z,U)}if(U.length===0)return{contours:U,bounds:null};let W=1/0,H=1/0,_=-1/0,N=-1/0;for(let X=0;X<U.length;X++){let j=U[X];for(let z=0;z<j.length;z++){let G=j[z];W=Math.min(W,G.x),H=Math.min(H,G.y),_=Math.max(_,G.x),N=Math.max(N,G.y)}}return{contours:U,bounds:W===1/0?null:{xMin:W,yMin:H,xMax:_,yMax:N}}}function v7($,Q,Z){let K=z8($,Q,Z);if(K.type==="empty")return null;return{xMin:K.xMin,yMin:K.yMin,xMax:K.xMax,yMax:K.yMax}}function I7($,Q,Z,K){let J=$.glyphVariationData[Q];if(!J)return Array(Z).fill({x:0,y:0});let q=Array(Z).fill(null).map(()=>({x:0,y:0}));for(let U=0;U<J.tupleVariationHeaders.length;U++){let W=J.tupleVariationHeaders[U];if(!W.peakTuple)continue;let H=O0(W.peakTuple,K,W.intermediateStartTuple,W.intermediateEndTuple);if(H===0)continue;if(W.pointNumbers!==null)for(let _=0;_<W.pointNumbers.length;_++){let N=W.pointNumbers[_],V=q[N],X=W.deltas[_];if(N<Z&&V&&X)V.x+=X.x*H,V.y+=X.y*H}else for(let _=0;_<Math.min(W.deltas.length,Z);_++){let N=q[_],V=W.deltas[_];if(N&&V)N.x+=V.x*H,N.y+=V.y*H}}for(let U=0;U<q.length;U++){let W=q[U];W.x=Math.round(W.x),W.y=Math.round(W.y)}return q}function k7($,Q){let Z=[],K=0;for(let J=0;J<$.length;J++){let q=$[J],U=[];for(let W=0;W<q.length;W++){let H=q[W],_=Q[K]??{x:0,y:0};U.push({x:H.x+_.x,y:H.y+_.y,onCurve:H.onCurve}),K++}Z.push(U)}return Z}function C7($,Q,Z,K,J){let q=z8($,Q,K);if(q.type==="empty")return[];let U;if(q.type==="simple")U=q.contours;else U=S7($,Q,Z,q,J);if(Z&&J&&J.length>0){let W=0;for(let _=0;_<U.length;_++){let N=U[_];W+=N.length}W+=4;let H=I7(Z,K,W,J);U=k7(U,H)}return U}function S7($,Q,Z,K,J,q=0){if(q>32)return[];let U=[],W=[];for(let H=0;H<K.components.length;H++){let _=K.components[H],N=z8($,Q,_.glyphId),V;if(N.type==="simple"){if(V=N.contours,Z&&J&&J.length>0){let X=0;for(let z=0;z<V.length;z++){let G=V[z];X+=G.length}X+=4;let j=I7(Z,_.glyphId,X,J);V=k7(V,j)}}else if(N.type==="composite")V=S7($,Q,Z,N,J,q+1);else continue;M7(U,W,_,V)}return U}function v6(){return[1,0,0,1,0,0]}function H5(){return[[1,0,0],[0,1,0],[0,0,1]]}function c8($,Q){return[1,0,0,1,$,Q]}function P8($,Q){return[$,0,0,Q,0,0]}function v8($){let Q=Math.cos($),Z=Math.sin($);return[Q,Z,-Z,Q,0,0]}function I8($,Q){return[1,Q,$,1,0,0]}function k8($,Q){return[$[0]*Q[0]+$[2]*Q[1],$[1]*Q[0]+$[3]*Q[1],$[0]*Q[2]+$[2]*Q[3],$[1]*Q[2]+$[3]*Q[3],$[0]*Q[4]+$[2]*Q[5]+$[4],$[1]*Q[4]+$[3]*Q[5]+$[5]]}function v9($,Q){let Z=[[0,0,0],[0,0,0],[0,0,0]];for(let K=0;K<3;K++)for(let J=0;J<3;J++)Z[K][J]=$[K][0]*Q[0][J]+$[K][1]*Q[1][J]+$[K][2]*Q[2][J];return Z}function $6($,Q,Z){return{x:Z[0]*$+Z[2]*Q+Z[4],y:Z[1]*$+Z[3]*Q+Z[5]}}function t($,Q,Z){let K=Z[2][0]*$+Z[2][1]*Q+Z[2][2],J=0.01;if(K<0.01)return{x:(Z[0][0]*$+Z[0][1]*Q+Z[0][2])/0.01,y:(Z[1][0]*$+Z[1][1]*Q+Z[1][2])/0.01};return{x:(Z[0][0]*$+Z[0][1]*Q+Z[0][2])/K,y:(Z[1][0]*$+Z[1][1]*Q+Z[1][2])/K}}function $H($,Q=0,Z=0){let K=$.commands.map((q)=>{switch(q.type){case"M":case"L":return{type:q.type,x:-q.y+Q,y:q.x+Z};case"Q":return{type:"Q",x1:-q.y1+Q,y1:q.x1+Z,x:-q.y+Q,y:q.x+Z};case"C":return{type:"C",x1:-q.y1+Q,y1:q.x1+Z,x2:-q.y2+Q,y2:q.x2+Z,x:-q.y+Q,y:q.x+Z};case"Z":return{type:"Z"};default:return q}}),J=null;if($.bounds){let q=$.bounds;if(J={xMin:-q.yMax+Q,yMin:q.xMin+Z,xMax:-q.yMin+Q,yMax:q.xMax+Z},J.xMin>J.xMax)[J.xMin,J.xMax]=[J.xMax,J.xMin];if(J.yMin>J.yMax)[J.yMin,J.yMax]=[J.yMax,J.yMin]}return{commands:K,bounds:J,flags:$.flags}}function QH($,Q,Z){let K=Q>=0?1<<Q:1/(1<<-Q),J=Z>=0?1<<Z:1/(1<<-Z),q=$.commands.map((W)=>{switch(W.type){case"M":case"L":return{type:W.type,x:W.x*K,y:W.y*J};case"Q":return{type:"Q",x1:W.x1*K,y1:W.y1*J,x:W.x*K,y:W.y*J};case"C":return{type:"C",x1:W.x1*K,y1:W.y1*J,x2:W.x2*K,y2:W.y2*J,x:W.x*K,y:W.y*J};case"Z":return{type:"Z"};default:return W}}),U=null;if($.bounds)U={xMin:$.bounds.xMin*K,yMin:$.bounds.yMin*J,xMax:$.bounds.xMax*K,yMax:$.bounds.yMax*J};return{commands:q,bounds:U,flags:$.flags}}function O6($,Q){let Z=$.commands.map((J)=>{switch(J.type){case"M":case"L":{let q=$6(J.x,J.y,Q);return{type:J.type,x:q.x,y:q.y}}case"Q":{let q=$6(J.x1,J.y1,Q),U=$6(J.x,J.y,Q);return{type:"Q",x1:q.x,y1:q.y,x:U.x,y:U.y}}case"C":{let q=$6(J.x1,J.y1,Q),U=$6(J.x2,J.y2,Q),W=$6(J.x,J.y,Q);return{type:"C",x1:q.x,y1:q.y,x2:U.x,y2:U.y,x:W.x,y:W.y}}case"Z":return{type:"Z"};default:return J}}),K=null;if($.bounds){let J=$.bounds,q=[$6(J.xMin,J.yMin,Q),$6(J.xMax,J.yMin,Q),$6(J.xMin,J.yMax,Q),$6(J.xMax,J.yMax,Q)];K={xMin:Math.min(...q.map((U)=>U.x)),yMin:Math.min(...q.map((U)=>U.y)),xMax:Math.max(...q.map((U)=>U.x)),yMax:Math.max(...q.map((U)=>U.y))}}return{commands:Z,bounds:K,flags:$.flags}}function I9($,Q){let Z=$.commands.map((J)=>{switch(J.type){case"M":case"L":{let q=t(J.x,J.y,Q);return{type:J.type,x:q.x,y:q.y}}case"Q":{let q=t(J.x1,J.y1,Q),U=t(J.x,J.y,Q);return{type:"Q",x1:q.x,y1:q.y,x:U.x,y:U.y}}case"C":{let q=t(J.x1,J.y1,Q),U=t(J.x2,J.y2,Q),W=t(J.x,J.y,Q);return{type:"C",x1:q.x,y1:q.y,x2:U.x,y2:U.y,x:W.x,y:W.y}}case"Z":return{type:"Z"};default:return J}}),K=null;if($.bounds){let J=$.bounds,q=[t(J.xMin,J.yMin,Q),t(J.xMax,J.yMin,Q),t(J.xMin,J.yMax,Q),t(J.xMax,J.yMax,Q)];K={xMin:Math.min(...q.map((U)=>U.x)),yMin:Math.min(...q.map((U)=>U.y)),xMax:Math.max(...q.map((U)=>U.x)),yMax:Math.max(...q.map((U)=>U.y))}}return{commands:Z,bounds:K,flags:$.flags}}function _5($){let Q=1/0,Z=1/0,K=-1/0,J=-1/0;for(let q=0;q<$.commands.length;q++){let U=$.commands[q];switch(U.type){case"M":case"L":Q=Math.min(Q,U.x),Z=Math.min(Z,U.y),K=Math.max(K,U.x),J=Math.max(J,U.y);break;case"Q":Q=Math.min(Q,U.x1,U.x),Z=Math.min(Z,U.y1,U.y),K=Math.max(K,U.x1,U.x),J=Math.max(J,U.y1,U.y);break;case"C":Q=Math.min(Q,U.x1,U.x2,U.x),Z=Math.min(Z,U.y1,U.y2,U.y),K=Math.max(K,U.x1,U.x2,U.x),J=Math.max(J,U.y1,U.y2,U.y);break}}if(!Number.isFinite(Q))return{xMin:0,yMin:0,xMax:0,yMax:0};return{xMin:Q,yMin:Z,xMax:K,yMax:J}}function h7($,Q,Z){let K=$-2*Q+Z;if(Math.abs(K)<0.0000000001)return[];let J=($-Q)/K;if(J>0&&J<1)return[J];return[]}function y7($,Q,Z,K){let J=-$+3*Q-3*Z+K,q=2*($-2*Q+Z),U=-$+Q,W=[];if(Math.abs(J)<0.0000000001){if(Math.abs(q)>0.0000000001){let H=-U/q;if(H>0&&H<1)W.push(H)}}else{let H=q*q-4*J*U;if(H>=0){let _=Math.sqrt(H),N=(-q+_)/(2*J),V=(-q-_)/(2*J);if(N>0&&N<1)W.push(N);if(V>0&&V<1)W.push(V)}}return W}function b7($,Q,Z,K){let J=1-K;return J*J*$+2*J*K*Q+K*K*Z}function m7($,Q,Z,K,J){let q=1-J;return q*q*q*$+3*q*q*J*Q+3*q*J*J*Z+J*J*J*K}function v0($){let Q=1/0,Z=1/0,K=-1/0,J=-1/0,q=0,U=0;for(let W=0;W<$.commands.length;W++){let H=$.commands[W];switch(H.type){case"M":q=H.x,U=H.y,Q=Math.min(Q,q),Z=Math.min(Z,U),K=Math.max(K,q),J=Math.max(J,U);break;case"L":q=H.x,U=H.y,Q=Math.min(Q,q),Z=Math.min(Z,U),K=Math.max(K,q),J=Math.max(J,U);break;case"Q":{Q=Math.min(Q,H.x),Z=Math.min(Z,H.y),K=Math.max(K,H.x),J=Math.max(J,H.y);let _=h7(q,H.x1,H.x);for(let V=0;V<_.length;V++){let X=_[V],j=b7(q,H.x1,H.x,X);Q=Math.min(Q,j),K=Math.max(K,j)}let N=h7(U,H.y1,H.y);for(let V=0;V<N.length;V++){let X=N[V],j=b7(U,H.y1,H.y,X);Z=Math.min(Z,j),J=Math.max(J,j)}q=H.x,U=H.y;break}case"C":{Q=Math.min(Q,H.x),Z=Math.min(Z,H.y),K=Math.max(K,H.x),J=Math.max(J,H.y);let _=y7(q,H.x1,H.x2,H.x);for(let V=0;V<_.length;V++){let X=_[V],j=m7(q,H.x1,H.x2,H.x,X);Q=Math.min(Q,j),K=Math.max(K,j)}let N=y7(U,H.y1,H.y2,H.y);for(let V=0;V<N.length;V++){let X=N[V],j=m7(U,H.y1,H.y2,H.y,X);Z=Math.min(Z,j),J=Math.max(J,j)}q=H.x,U=H.y;break}}}if(!Number.isFinite(Q))return{xMin:0,yMin:0,xMax:0,yMax:0};return{xMin:Q,yMin:Z,xMax:K,yMax:J}}function ZH($,Q,Z){let K=Z;for(let J=0;J<$.commands.length;J++){let q=$.commands[J];switch(q.type){case"M":case"L":{let U=t(q.x,q.y,Q);K=Math.min(K,U.x);break}case"Q":{let U=t(q.x1,q.y1,Q),W=t(q.x,q.y,Q);K=Math.min(K,U.x,W.x);break}case"C":{let U=t(q.x1,q.y1,Q),W=t(q.x2,q.y2,Q),H=t(q.x,q.y,Q);K=Math.min(K,U.x,W.x,H.x);break}}}return K}function KH($,Q,Z){return O6($,c8(Q,Z))}function JH($,Q,Z=Q){return O6($,P8(Q,Z))}function qH($,Q){return O6($,v8(Q))}function UH($,Q){let Z=Math.tan(Q*Math.PI/180);return O6($,I8(Z,0))}function N5($,Q,Z){return[[1,0,-$*Z],[0,1,-Q*Z],[0,0,1]]}function k9($){let Q=[],Z=1/0,K=1/0,J=-1/0,q=-1/0;for(let W=0;W<$.length;W++){let H=$[W];if(Q.push(...H.commands),H.bounds)Z=Math.min(Z,H.bounds.xMin),K=Math.min(K,H.bounds.yMin),J=Math.max(J,H.bounds.xMax),q=Math.max(q,H.bounds.yMax)}let U=Number.isFinite(Z)?{xMin:Z,yMin:K,xMax:J,yMax:q}:null;return{commands:Q,bounds:U}}function i8($){return{commands:$.commands.map((Q)=>({...Q})),bounds:$.bounds?{...$.bounds}:null,flags:$.flags}}function X5($){if($.length===0)return[];for(let Q=0;Q<$.length;Q++){let Z=$[Q];if(!Z.onCurve)return Z.cubic?WH($):g7($)}return g7($)}function WH($){if($.length===0)return[];let Q=[],Z=0,K=$[0];if(!K)return[];Q.push({type:"M",x:K.x,y:K.y}),Z=1;while(Z<$.length){let J=$[Z];if(!J)break;if(J.onCurve)Q.push({type:"L",x:J.x,y:J.y}),Z++;else if(J.cubic){let q=J,U=$[Z+1],W=$[Z+2];if(!U||!W){Z++;continue}Q.push({type:"C",x1:q.x,y1:q.y,x2:U.x,y2:U.y,x:W.x,y:W.y}),Z+=3}else{let q=J,U=$[Z+1];if(!U){Z++;continue}let W;if(U.onCurve)W=U,Z+=2;else W={x:(q.x+U.x)/2,y:(q.y+U.y)/2,onCurve:!0},Z++;Q.push({type:"Q",x1:q.x,y1:q.y,x:W.x,y:W.y})}}return Q.push({type:"Z"}),Q}function g7($){if($.length===0)return[];let Q=[],Z=0;for(let _=0;_<$.length;_++)if($[_].onCurve){Z=_;break}let K=$.every((_)=>!_.onCurve),J;if(K){let _=$[0],N=$[$.length-1];if(!_||!N)return[];J={x:(_.x+N.x)/2,y:(_.y+N.y)/2,onCurve:!0},Z=0}else{let _=$[Z];if(!_)return[];J=_}Q.push({type:"M",x:J.x,y:J.y});let q=$.length,U=K?0:Z+1;if(U>=q)U=0;let W=J,H=0;while(H<q){let _=$[U];if(!_)break;if(_.onCurve)Q.push({type:"L",x:_.x,y:_.y}),W=_;else{let N=U+1<q?U+1:0,V=$[N];if(!V)break;let X;if(V.onCurve)X=V,U=N,H++;else X={x:(_.x+V.x)/2,y:(_.y+V.y)/2,onCurve:!0};Q.push({type:"Q",x1:_.x,y1:_.y,x:X.x,y:X.y}),W=X}if(U++,U>=q)U=0;if(H++,W.x===J.x&&W.y===J.y)break}return Q.push({type:"Z"}),Q}var V5=new WeakMap;function h6($,Q){let Z=V5.get($);if(Z){let U=Z.get(Q);if(U!==void 0)return U}let K=$.getGlyphContoursAndBounds(Q);if(!K){if(!Z)Z=new Map,V5.set($,Z);return Z.set(Q,null),null}let J=[];for(let U=0;U<K.contours.length;U++){let W=K.contours[U];J.push(...X5(W))}let q={commands:J,bounds:K.bounds};if(!Z)Z=new Map,V5.set($,Z);return Z.set(Q,q),q}var E6=10,u7=new WeakMap;function G8($,Q){let Z=Q?.scale??1,K=Q?.flipY??!0;if(Z===1&&K){let W=u7.get($);if(W)return W}let J=Z*E6,q=K?-J:J,U="";for(let W=0;W<$.commands.length;W++){let H=$.commands[W];if(W>0)U+=" ";switch(H.type){case"M":U+="M "+Math.round(H.x*J)+" "+Math.round(H.y*q);break;case"L":U+="L "+Math.round(H.x*J)+" "+Math.round(H.y*q);break;case"Q":U+="Q "+Math.round(H.x1*J)+" "+Math.round(H.y1*q)+" "+Math.round(H.x*J)+" "+Math.round(H.y*q);break;case"C":U+="C "+Math.round(H.x1*J)+" "+Math.round(H.y1*q)+" "+Math.round(H.x2*J)+" "+Math.round(H.y2*q)+" "+Math.round(H.x*J)+" "+Math.round(H.y*q);break;case"Z":U+="Z";break}}if(Z===1&&K)u7.set($,U);return U}function s8($,Q,Z){let K=Z?.scale??1,J=Z?.flipY??!0,q=Z?.offsetX??0,U=Z?.offsetY??0;for(let W=0;W<Q.commands.length;W++){let H=Q.commands[W];switch(H.type){case"M":$.moveTo(H.x*K+q,(J?-H.y:H.y)*K+U);break;case"L":$.lineTo(H.x*K+q,(J?-H.y:H.y)*K+U);break;case"Q":$.quadraticCurveTo(H.x1*K+q,(J?-H.y1:H.y1)*K+U,H.x*K+q,(J?-H.y:H.y)*K+U);break;case"C":$.bezierCurveTo(H.x1*K+q,(J?-H.y1:H.y1)*K+U,H.x2*K+q,(J?-H.y2:H.y2)*K+U,H.x*K+q,(J?-H.y:H.y)*K+U);break;case"Z":$.closePath();break}}}function HH($,Q,Z){let K=h6($,Q);if(!K)return null;let J=Z?.fontSize??100,q=Z?.fill??"currentColor",U=Z?.stroke,W=Z?.strokeWidth??1,H=J/$.unitsPerEm,_=K.bounds;if(!_)return null;let N=U?W/2:0,V=Math.ceil((_.xMax-_.xMin)*H+N*2),X=Math.ceil((_.yMax-_.yMin)*H+N*2),j=Math.round((_.xMin-N)*E6),z=Math.round((-_.yMax-N)*E6),G=Math.round((_.xMax-_.xMin+N*2)*E6),Y=Math.round((_.yMax-_.yMin+N*2)*E6),E=`${j} ${z} ${G} ${Y}`,w=G8(K,{flipY:!0,scale:1}),F=U?` stroke="${U}" stroke-width="${W*E6}"`:"";return`<svg xmlns="http://www.w3.org/2000/svg" width="${V}" height="${X}" viewBox="${E}">
|
|
4
4
|
<path d="${w}" fill="${q}"${F}/>
|
|
5
|
-
</svg>`}function x7($,Q,Z,K){let J=K?.fontSize??16,q=K?.x??0,U=K?.y??0,W=K?.fill??"black",H=K?.stroke,_=K?.strokeWidth??1,N=K?.matrix,V=K?.matrix3D,X=J/Q.unitsPerEm;if($.fillStyle=W,H){if($.strokeStyle=H,$.lineWidth=_*X,K?.lineCap)$.lineCap=K.lineCap;if(K?.lineJoin)$.lineJoin=K.lineJoin}let j=q,z=U;for(let G=0;G<Z.length;G++){let Y=Z[G],E=
|
|
5
|
+
</svg>`}function x7($,Q,Z,K){let J=K?.fontSize??16,q=K?.x??0,U=K?.y??0,W=K?.fill??"black",H=K?.stroke,_=K?.strokeWidth??1,N=K?.matrix,V=K?.matrix3D,X=J/Q.unitsPerEm;if($.fillStyle=W,H){if($.strokeStyle=H,$.lineWidth=_*X,K?.lineCap)$.lineCap=K.lineCap;if(K?.lineJoin)$.lineJoin=K.lineJoin}let j=q,z=U;for(let G=0;G<Z.length;G++){let Y=Z[G],E=h6(Q,Y.glyphId);if(E){if($.beginPath(),V){let w=j+Y.xOffset*X,F=z-Y.yOffset*X,A=[[V[0][0]*X,V[0][1]*X,V[0][0]*w+V[0][1]*F+V[0][2]],[V[1][0]*X,V[1][1]*X,V[1][0]*w+V[1][1]*F+V[1][2]],[V[2][0]*X,V[2][1]*X,V[2][0]*w+V[2][1]*F+V[2][2]]];k0($,E,A)}else if(N){let w=j+Y.xOffset*X,F=z-Y.yOffset*X,A=[N[0]*X,N[1]*X,N[2]*X,N[3]*X,N[0]*w+N[2]*F+N[4],N[1]*w+N[3]*F+N[5]];I0($,E,A)}else s8($,E,{scale:X,flipY:!0,offsetX:j+Y.xOffset*X,offsetY:z-Y.yOffset*X});if(W!=="none")$.fill();if(H)$.stroke()}j+=Y.xAdvance*X,z+=Y.yAdvance*X}}function f7($,Q,Z){let K=Z?.fontSize??100,J=Z?.fill??"currentColor",q=Z?.stroke,U=Z?.strokeWidth??1,W=Z?.matrix,H=Z?.matrix3D,_=Z?.useNativeTransform??!1,N=K/$.unitsPerEm,V="",X=0,j=0,z=1/0,G=-1/0,Y=1/0,E=-1/0;for(let I=0;I<Q.length;I++){let f=Q[I],l=h6($,f.glyphId);if(l?.bounds){let C=X+f.xOffset*N,R=j-f.yOffset*N,y;if(H&&!_){let u=[[H[0][0]*N,H[0][1]*N,H[0][0]*C+H[0][1]*R+H[0][2]],[H[1][0]*N,H[1][1]*N,H[1][0]*C+H[1][1]*R+H[1][2]],[H[2][0]*N,H[2][1]*N,H[2][0]*C+H[2][1]*R+H[2][2]]];y=p7(l,u);let d=l.bounds,c=[t(d.xMin*N+C,-d.yMax*N+R,H),t(d.xMax*N+C,-d.yMax*N+R,H),t(d.xMin*N+C,-d.yMin*N+R,H),t(d.xMax*N+C,-d.yMin*N+R,H)];for(let n=0;n<c.length;n++){let e=c[n];z=Math.min(z,e.x),G=Math.max(G,e.x),Y=Math.min(Y,e.y),E=Math.max(E,e.y)}}else if(W&&!_){let u=[W[0]*N,W[1]*N,W[2]*N,W[3]*N,W[0]*C+W[2]*R+W[4],W[1]*C+W[3]*R+W[5]];y=n7(l,u);let d=l.bounds,c=[$6(d.xMin*N+C,-d.yMax*N+R,W),$6(d.xMax*N+C,-d.yMax*N+R,W),$6(d.xMin*N+C,-d.yMin*N+R,W),$6(d.xMax*N+C,-d.yMin*N+R,W)];for(let n=0;n<c.length;n++){let e=c[n];z=Math.min(z,e.x),G=Math.max(G,e.x),Y=Math.min(Y,e.y),E=Math.max(E,e.y)}}else{y=c7(l,N,C,R);let u=l.bounds;z=Math.min(z,C+u.xMin*N),G=Math.max(G,C+u.xMax*N),Y=Math.min(Y,R-u.yMax*N),E=Math.max(E,R-u.yMin*N)}if(V)V+=" ";V+=y}X+=f.xAdvance*N,j+=f.yAdvance*N}if(!V)return'<svg xmlns="http://www.w3.org/2000/svg"></svg>';let w=q?U/2:0,F=Math.ceil(G-z+w*2),A=Math.ceil(E-Y+w*2),B=Math.floor((z-w)*E6),L=Math.floor((Y-w)*E6),O=Math.ceil(F*E6),M=Math.ceil(A*E6),P=`${B} ${L} ${O} ${M}`,T=q?` stroke="${q}" stroke-width="${U*E6}"${Z?.lineCap?` stroke-linecap="${Z.lineCap}"`:""}${Z?.lineJoin?` stroke-linejoin="${Z.lineJoin}"`:""}`:"",x=_&&W?` transform="${o7(W)}"`:"";return`<svg xmlns="http://www.w3.org/2000/svg" width="${F}" height="${A}" viewBox="${P}">
|
|
6
6
|
<path d="${V}" fill="${J}"${T}${x}/>
|
|
7
|
-
</svg>`}function _H($){let Q=[];for(let Z=0;Z<$.infos.length;Z++){let K=$.infos[Z],J=$.positions[Z];if(!J)continue;Q.push({glyphId:K.glyphId,xOffset:J.xOffset,yOffset:J.yOffset,xAdvance:J.xAdvance,yAdvance:J.yAdvance})}return Q}function C9($,Q,Z){let K=$.getGlyphContoursWithVariation(Q,Z);if(!K)return null;let J=[];for(let U=0;U<K.length;U++){let W=K[U];J.push(...X5(W))}let q=$.getGlyphBounds(Q);return{commands:J,bounds:q}}function l7($,Q,Z,K,J){let q=J?.fontSize??16,U=J?.x??0,W=J?.y??0,H=J?.fill??"black",_=J?.stroke,N=J?.strokeWidth??1,V=q/Q.unitsPerEm;if($.fillStyle=H,_){if($.strokeStyle=_,$.lineWidth=N*V,J?.lineCap)$.lineCap=J.lineCap;if(J?.lineJoin)$.lineJoin=J.lineJoin}let X=U,j=W;for(let z=0;z<Z.length;z++){let G=Z[z],Y=C9(Q,G.glyphId,K);if(Y){if($.beginPath(),s8($,Y,{scale:V,flipY:!0,offsetX:X+G.xOffset*V,offsetY:j-G.yOffset*V}),H!=="none")$.fill();if(_)$.stroke()}X+=G.xAdvance*V,j+=G.yAdvance*V}}function d7($,Q,Z,K){let J=K?.fontSize??100,q=K?.fill??"currentColor",U=K?.stroke,W=K?.strokeWidth??1,H=J/$.unitsPerEm,_="",N=0,V=0,X=1/0,j=-1/0,z=1/0,G=-1/0;for(let P=0;P<Q.length;P++){let T=Q[P],x=C9($,T.glyphId,Z);if(x?.bounds){let I=N+T.xOffset*H,f=V-T.yOffset*H,l=c7(x,H,I,f);if(_)_+=" ";_+=l;let C=x.bounds;X=Math.min(X,I+C.xMin*H),j=Math.max(j,I+C.xMax*H),z=Math.min(z,f-C.yMax*H),G=Math.max(G,f-C.yMin*H)}N+=T.xAdvance*H,V+=T.yAdvance*H}if(!_)return'<svg xmlns="http://www.w3.org/2000/svg"></svg>';let Y=U?W/2:0,E=Math.ceil(j-X+Y*2),w=Math.ceil(G-z+Y*2),F=Math.floor((X-Y)*
|
|
7
|
+
</svg>`}function _H($){let Q=[];for(let Z=0;Z<$.infos.length;Z++){let K=$.infos[Z],J=$.positions[Z];if(!J)continue;Q.push({glyphId:K.glyphId,xOffset:J.xOffset,yOffset:J.yOffset,xAdvance:J.xAdvance,yAdvance:J.yAdvance})}return Q}function C9($,Q,Z){let K=$.getGlyphContoursWithVariation(Q,Z);if(!K)return null;let J=[];for(let U=0;U<K.length;U++){let W=K[U];J.push(...X5(W))}let q=$.getGlyphBounds(Q);return{commands:J,bounds:q}}function l7($,Q,Z,K,J){let q=J?.fontSize??16,U=J?.x??0,W=J?.y??0,H=J?.fill??"black",_=J?.stroke,N=J?.strokeWidth??1,V=q/Q.unitsPerEm;if($.fillStyle=H,_){if($.strokeStyle=_,$.lineWidth=N*V,J?.lineCap)$.lineCap=J.lineCap;if(J?.lineJoin)$.lineJoin=J.lineJoin}let X=U,j=W;for(let z=0;z<Z.length;z++){let G=Z[z],Y=C9(Q,G.glyphId,K);if(Y){if($.beginPath(),s8($,Y,{scale:V,flipY:!0,offsetX:X+G.xOffset*V,offsetY:j-G.yOffset*V}),H!=="none")$.fill();if(_)$.stroke()}X+=G.xAdvance*V,j+=G.yAdvance*V}}function d7($,Q,Z,K){let J=K?.fontSize??100,q=K?.fill??"currentColor",U=K?.stroke,W=K?.strokeWidth??1,H=J/$.unitsPerEm,_="",N=0,V=0,X=1/0,j=-1/0,z=1/0,G=-1/0;for(let P=0;P<Q.length;P++){let T=Q[P],x=C9($,T.glyphId,Z);if(x?.bounds){let I=N+T.xOffset*H,f=V-T.yOffset*H,l=c7(x,H,I,f);if(_)_+=" ";_+=l;let C=x.bounds;X=Math.min(X,I+C.xMin*H),j=Math.max(j,I+C.xMax*H),z=Math.min(z,f-C.yMax*H),G=Math.max(G,f-C.yMin*H)}N+=T.xAdvance*H,V+=T.yAdvance*H}if(!_)return'<svg xmlns="http://www.w3.org/2000/svg"></svg>';let Y=U?W/2:0,E=Math.ceil(j-X+Y*2),w=Math.ceil(G-z+Y*2),F=Math.floor((X-Y)*E6),A=Math.floor((z-Y)*E6),B=Math.ceil(E*E6),L=Math.ceil(w*E6),O=`${F} ${A} ${B} ${L}`,M=U?` stroke="${U}" stroke-width="${W*E6}"${K?.lineCap?` stroke-linecap="${K.lineCap}"`:""}${K?.lineJoin?` stroke-linejoin="${K.lineJoin}"`:""}`:"";return`<svg xmlns="http://www.w3.org/2000/svg" width="${E}" height="${w}" viewBox="${O}">
|
|
8
8
|
<path d="${_}" fill="${q}"${M}/>
|
|
9
|
-
</svg>`}function NH($,Q,Z){let K=Z/Q.unitsPerEm,J=0;for(let q=0;q<$.length;q++){let U=$[q];J+=U.xAdvance}return J*K}function j5($,Q){let Z=new Path2D;return s8(Z,$,Q),Z}function I0($,Q,Z,K){let q=K?.flipY??!0?-1:1;for(let U=0;U<Q.commands.length;U++){let W=Q.commands[U];switch(W.type){case"M":{let H=$6(W.x,W.y*q,Z);$.moveTo(H.x,H.y);break}case"L":{let H=$6(W.x,W.y*q,Z);$.lineTo(H.x,H.y);break}case"Q":{let H=$6(W.x1,W.y1*q,Z),_=$6(W.x,W.y*q,Z);$.quadraticCurveTo(H.x,H.y,_.x,_.y);break}case"C":{let H=$6(W.x1,W.y1*q,Z),_=$6(W.x2,W.y2*q,Z),N=$6(W.x,W.y*q,Z);$.bezierCurveTo(H.x,H.y,_.x,_.y,N.x,N.y);break}case"Z":$.closePath();break}}}function n7($,Q,Z){let J=Z?.flipY??!0?-1:1,q="";for(let U=0;U<$.commands.length;U++){let W=$.commands[U];if(U>0)q+=" ";switch(W.type){case"M":{let H=$6(W.x,W.y*J,Q);q+="M "+H.x+" "+H.y;break}case"L":{let H=$6(W.x,W.y*J,Q);q+="L "+H.x+" "+H.y;break}case"Q":{let H=$6(W.x1,W.y1*J,Q),_=$6(W.x,W.y*J,Q);q+="Q "+H.x+" "+H.y+" "+_.x+" "+_.y;break}case"C":{let H=$6(W.x1,W.y1*J,Q),_=$6(W.x2,W.y2*J,Q),N=$6(W.x,W.y*J,Q);q+="C "+H.x+" "+H.y+" "+_.x+" "+_.y+" "+N.x+" "+N.y;break}case"Z":q+="Z";break}}return q}function k0($,Q,Z,K){let q=K?.flipY??!0?-1:1;for(let U=0;U<Q.commands.length;U++){let W=Q.commands[U];switch(W.type){case"M":{let H=t(W.x,W.y*q,Z);$.moveTo(H.x,H.y);break}case"L":{let H=t(W.x,W.y*q,Z);$.lineTo(H.x,H.y);break}case"Q":{let H=t(W.x1,W.y1*q,Z),_=t(W.x,W.y*q,Z);$.quadraticCurveTo(H.x,H.y,_.x,_.y);break}case"C":{let H=t(W.x1,W.y1*q,Z),_=t(W.x2,W.y2*q,Z),N=t(W.x,W.y*q,Z);$.bezierCurveTo(H.x,H.y,_.x,_.y,N.x,N.y);break}case"Z":$.closePath();break}}}function p7($,Q,Z){let J=Z?.flipY??!0?-1:1,q="";for(let U=0;U<$.commands.length;U++){let W=$.commands[U];if(U>0)q+=" ";switch(W.type){case"M":{let H=t(W.x,W.y*J,Q);q+="M "+H.x+" "+H.y;break}case"L":{let H=t(W.x,W.y*J,Q);q+="L "+H.x+" "+H.y;break}case"Q":{let H=t(W.x1,W.y1*J,Q),_=t(W.x,W.y*J,Q);q+="Q "+H.x+" "+H.y+" "+_.x+" "+_.y;break}case"C":{let H=t(W.x1,W.y1*J,Q),_=t(W.x2,W.y2*J,Q),N=t(W.x,W.y*J,Q);q+="C "+H.x+" "+H.y+" "+_.x+" "+_.y+" "+N.x+" "+N.y;break}case"Z":q+="Z";break}}return q}function VH($,Q){$.transform(Q[0],Q[1],Q[2],Q[3],Q[4],Q[5])}function o7($){return`matrix(${$[0]} ${$[1]} ${$[2]} ${$[3]} ${$[4]} ${$[5]})`}function c7($,Q,Z,K){let J="",q=Q*Y6,U=-Q*Y6,W=Z*Y6,H=K*Y6;for(let _=0;_<$.commands.length;_++){let N=$.commands[_];if(_>0)J+=" ";switch(N.type){case"M":J+="M "+Math.round(N.x*q+W)+" "+Math.round(N.y*U+H);break;case"L":J+="L "+Math.round(N.x*q+W)+" "+Math.round(N.y*U+H);break;case"Q":J+="Q "+Math.round(N.x1*q+W)+" "+Math.round(N.y1*U+H)+" "+Math.round(N.x*q+W)+" "+Math.round(N.y*U+H);break;case"C":J+="C "+Math.round(N.x1*q+W)+" "+Math.round(N.y1*U+H)+" "+Math.round(N.x2*q+W)+" "+Math.round(N.y2*U+H)+" "+Math.round(N.x*q+W)+" "+Math.round(N.y*U+H);break;case"Z":J+="Z";break}}return J}var A6=8,W6=256,XH=255,jH=6,zH=64,GH=16,YH=65536;function EH($){return Math.round($*64)}function wH($){return $/64}function AH($,Q){return Math.round($*Q*256)}function a6($){return $>>8}function C8($){return $&255}function FH($){return $+128>>8}function LH($){return $&-256}function DH($){return $+255&-256}function BH($){return $<<2}function MH($){return $>>2}function z5($,Q,Z){if(Z===0)return 0;let K=$<0?-$:$,J=Q<0?-Q:Q;if(K<8388607&&J<8388607)return Math.trunc($*Q/Z);return Number(BigInt($)*BigInt(Q)/BigInt(Z))}function RH($,Q){return z5($,Q,65536)}function TH($,Q){if(Q===0)return 0;return z5($,65536,Q)}function i7($,Q){return $=I6($),Q=I6(Q),$>Q?$+(3*Q>>3):Q+(3*$>>3)}function OH($,Q){return i7($,Q)}function PH($,Q){let Z=Math.sqrt($*$+Q*Q);if(Z===0)return{x:65536,y:0};return{x:Math.round($/Z*65536),y:Math.round(Q/Z*65536)}}function vH($,Q,Z){return $<Q?Q:$>Z?Z:$}function I6($){return $<0?-$:$}function IH($){return $<0?-1:$>0?1:0}var kH=16384,s7=2147483647;class S8 extends Error{constructor(){super("Cell pool overflow");this.name="PoolOverflowError"}}class G5{pool;poolSize;freeIndex;ycells;bandMinY=0;bandMaxY=0;minY=1/0;maxY=-1/0;minX=1/0;maxX=-1/0;currentX=0;currentY=0;currentCellIndex=-1;clipMinX=-1/0;clipMinY=-1/0;clipMaxX=1/0;clipMaxY=1/0;nullCellIndex;bandSet=!1;constructor($=kH){this.poolSize=$,this.nullCellIndex=$-1,this.pool=Array($);for(let Q=0;Q<$;Q++)this.pool[Q]={x:0,area:0,cover:0,next:-1};this.pool[this.nullCellIndex].x=s7,this.pool[this.nullCellIndex].next=-1,this.ycells=[],this.freeIndex=0,this.bandMinY=-1e4,this.bandMaxY=1e4}setClip($,Q,Z,K){this.clipMinX=$,this.clipMinY=Q,this.clipMaxX=Z,this.clipMaxY=K}setBandBounds($,Q){this.bandMinY=$,this.bandMaxY=Q,this.bandSet=!0;let Z=Q-$;if(this.ycells.length<Z)this.ycells=Array(Z);for(let K=0;K<Z;K++)this.ycells[K]=this.nullCellIndex;this.freeIndex=0}reset(){if(this.freeIndex=0,this.pool[this.nullCellIndex].x=s7,this.pool[this.nullCellIndex].area=0,this.pool[this.nullCellIndex].cover=0,this.pool[this.nullCellIndex].next=-1,this.bandSet)for(let $=0;$<this.ycells.length;$++)this.ycells[$]=this.nullCellIndex;else this.ycells=[],this.bandMinY=-1e5,this.bandMaxY=1e5;this.minY=1/0,this.maxY=-1/0,this.minX=1/0,this.maxX=-1/0,this.currentCellIndex=-1}setCurrentCell($,Q){let Z=a6($),K=a6(Q);if(this.currentCellIndex>=0&&this.currentX===Z&&this.currentY===K)return;if(K<this.bandMinY||K>=this.bandMaxY||K<this.clipMinY||K>=this.clipMaxY||Z<this.clipMinX||Z>=this.clipMaxX){this.currentCellIndex=this.nullCellIndex,this.currentX=Z,this.currentY=K;return}this.currentX=Z,this.currentY=K,this.currentCellIndex=this.findOrCreateCell(Z,K),this.minY=Math.min(this.minY,K),this.maxY=Math.max(this.maxY,K),this.minX=Math.min(this.minX,Z),this.maxX=Math.max(this.maxX,Z)}findOrCreateCell($,Q){if(!this.bandSet)this.ensureYCellsCapacity(Q);let Z=Q-this.bandMinY;if(Z<0||Z>=this.ycells.length)return this.nullCellIndex;let K=-1,J=this.ycells[Z];while(J!==this.nullCellIndex){let W=this.pool[J];if(W.x===$)return J;if(W.x>$)break;K=J,J=W.next}if(this.freeIndex>=this.nullCellIndex)throw new S8;let q=this.freeIndex++,U=this.pool[q];if(U.x=$,U.area=0,U.cover=0,U.next=J,K===-1)this.ycells[Z]=q;else this.pool[K].next=q;return q}ensureYCellsCapacity($){if(this.ycells.length===0){this.bandMinY=Math.min($,0),this.bandMaxY=Math.max($+1,256);let Q=this.bandMaxY-this.bandMinY;this.ycells=Array(Q);for(let Z=0;Z<Q;Z++)this.ycells[Z]=this.nullCellIndex;return}if($<this.bandMinY){let Q=this.bandMinY-$,Z=Array(this.ycells.length+Q);for(let K=0;K<Q;K++)Z[K]=this.nullCellIndex;for(let K=0;K<this.ycells.length;K++)Z[Q+K]=this.ycells[K];this.ycells=Z,this.bandMinY=$}else if($>=this.bandMaxY){let Q=$+1,Z=this.ycells.length,K=Q-this.bandMinY;if(K>Z){let J=Array(K);for(let q=0;q<Z;q++)J[q]=this.ycells[q];for(let q=Z;q<K;q++)J[q]=this.nullCellIndex;this.ycells=J}this.bandMaxY=Q}}addArea($,Q){if(this.currentCellIndex>=0){let Z=this.pool[this.currentCellIndex];Z.area+=$,Z.cover+=Q}}getArea(){if(this.currentCellIndex>=0)return this.pool[this.currentCellIndex]?.area;return 0}getCover(){if(this.currentCellIndex>=0)return this.pool[this.currentCellIndex]?.cover;return 0}getCellsForRow($){let Q=$-this.bandMinY;if(Q<0||Q>=this.ycells.length)return[];let Z=[],K=this.ycells[Q];while(K!==this.nullCellIndex)Z.push(this.pool[K]),K=this.pool[K].next;return Z}*iterateCells(){for(let $=0;$<this.ycells.length;$++){let Q=this.bandMinY+$,Z=this.ycells[$];if(Z===this.nullCellIndex)continue;let K=[];while(Z!==this.nullCellIndex)K.push(this.pool[Z]),Z=this.pool[Z].next;if(K.length>0)yield{y:Q,cells:K}}}*iterateScanlines(){for(let $=0;$<this.ycells.length;$++){let Q=this.ycells[$];if(Q!==this.nullCellIndex)yield{y:this.bandMinY+$,firstCellIndex:Q}}}getPool(){return this.pool}getNullIndex(){return this.nullCellIndex}getYCells(){return this.ycells}getBandMinY(){return this.bandMinY}*iterateRowCells($){let Q=$-this.bandMinY;if(Q<0||Q>=this.ycells.length)return;let Z=this.ycells[Q];while(Z!==this.nullCellIndex)yield this.pool[Z],Z=this.pool[Z].next}getCellCount(){return this.freeIndex}isNearCapacity(){return this.freeIndex>this.poolSize*0.9}}z6();var CH=32,r7=16;class a8{cells;x=0;y=0;minX=0;minY=0;maxX=0;maxY=0;constructor(){this.cells=new G5}setClip($,Q,Z,K){this.minX=$,this.minY=Q,this.maxX=Z,this.maxY=K,this.cells.setClip($,Q,Z,K)}setBandBounds($,Q){this.cells.setBandBounds($,Q)}reset(){this.cells.reset(),this.x=0,this.y=0}moveTo($,Q){this.x=$,this.y=Q,this.cells.setCurrentCell($,Q)}lineTo($,Q){this.renderLine($,Q),this.x=$,this.y=Q}renderLine($,Q){let Z=a6(this.y),K=a6(Q);if(Z>=this.maxY&&K>=this.maxY||Z<this.minY&&K<this.minY)return;let J=C8(this.y),q=C8(Q);if(Z===K){this.renderScanline(Z,this.x,J,$,q);return}let U=$-this.x,W=Q-this.y;if(U===0){let z=a6(this.x),G=C8(this.x)*2,Y,E;if(W>0)Y=W6,E=1;else Y=0,E=-1;let w=Y-J;this.cells.setCurrentCell(this.x,Z<<A6),this.cells.addArea(w*G,w),Z+=E,this.cells.setCurrentCell(this.x,Z<<A6),w=Y+Y-W6;while(Z!==K)this.cells.addArea(w*G,w),Z+=E,this.cells.setCurrentCell(this.x,Z<<A6);w=q-W6+Y,this.cells.addArea(w*G,w);return}let H=this.x,_,N;if(W>0)N=W6,_=1;else N=0,_=-1;let V=N-J,X=this.mulDiv(U,V,I6(W)),j=H+X;if(this.renderScanline(Z,H,J,j,N),H=j,Z+=_,this.cells.setCurrentCell(H,Z<<A6),Z!==K){let z=this.mulDiv(U,W6,I6(W));V=N+N-W6;while(Z!==K)j=H+z,this.renderScanline(Z,H,W6-N,j,N),H=j,Z+=_,this.cells.setCurrentCell(H,Z<<A6)}V=q-W6+N,this.renderScanline(Z,H,W6-N,$,q)}renderScanline($,Q,Z,K,J){let q=a6(Q),U=a6(K);if(Z===J){this.cells.setCurrentCell(K,$<<A6);return}let W=C8(Q),H=C8(K);if(q===U){let Y=J-Z;this.cells.setCurrentCell(Q,$<<A6),this.cells.addArea(Y*(W+H),Y);return}let _=K-Q,N=J-Z,V,X;if(_>0)V=W6,X=1;else V=0,X=-1;let j=this.mulDiv(N,V-W,I6(_));this.cells.setCurrentCell(Q,$<<A6),this.cells.addArea(j*(W+V),j);let z=Z+j,G=q+X;if(this.cells.setCurrentCell(G<<A6,$<<A6),G!==U){let Y=this.mulDiv(N,W6,I6(_));while(G!==U)j=Y,this.cells.addArea(j*W6,j),z+=j,G+=X,this.cells.setCurrentCell(G<<A6,$<<A6)}j=J-z,this.cells.addArea(j*(H+W6-V),j)}mulDiv($,Q,Z){if(Z===0)return 0;return Math.trunc($*Q/Z)}conicTo($,Q,Z,K){this.subdivConic(this.x,this.y,$,Q,Z,K,0),this.x=Z,this.y=K}subdivConic($,Q,Z,K,J,q,U){if(U>16){this.renderLine(J,q),this.x=J,this.y=q;return}let W=J-$,H=q-Q,_=I6((Z-$)*H-(K-Q)*W),N=I6(W)+I6(H),V=Math.max(W6>>2,N>>4);if(_<=V*N){this.renderLine(J,q),this.x=J,this.y=q;return}let X=$+Z>>1,j=Q+K>>1,z=Z+J>>1,G=K+q>>1,Y=X+z>>1,E=j+G>>1;this.subdivConic($,Q,X,j,Y,E,U+1),this.subdivConic(Y,E,z,G,J,q,U+1)}cubicTo($,Q,Z,K,J,q){this.subdivCubic(this.x,this.y,$,Q,Z,K,J,q,0),this.x=J,this.y=q}subdivCubic($,Q,Z,K,J,q,U,W,H){if(H>16){this.renderLine(U,W),this.x=U,this.y=W;return}let _=$+Z>>1,N=Q+K>>1,V=Z+J>>1,X=K+q>>1,j=J+U>>1,z=q+W>>1,G=_+V>>1,Y=N+X>>1,E=V+j>>1,w=X+z>>1,F=G+E>>1,A=Y+w>>1,B=U-$,L=W-Q,O=I6((Z-U)*L-(K-W)*B),M=I6((J-U)*L-(q-W)*B),P=I6(B)+I6(L),T=Math.max(W6>>2,P>>4);if(O+M<=T*P){this.renderLine(U,W),this.x=U,this.y=W;return}this.subdivCubic($,Q,_,N,G,Y,F,A,H+1),this.subdivCubic(F,A,E,w,j,z,U,W,H+1)}sweep($,Q=0){let Z=$.pitch,K=Z<0?($.rows-1)*-Z:0,J=$.width,q=$.rows,U=this.cells.getPool(),W=this.cells.getNullIndex(),H=this.cells.getYCells(),_=this.cells.getBandMinY(),N=H.length;for(let V=0;V<N;V++){let X=H[V];if(X===W)continue;let j=_+V;if(j<0||j>=q)continue;let z=0,G=0,Y=Z<0?K-j*-Z:j*Z,E=X;while(E!==W){let w=U[E];if(w.x>G&&z!==0){let L=this.applyFillRule(z,Q);if(L>0){let O=G<0?0:G,M=w.x>J?J:w.x;this.fillSpan($,Y,O,M,L)}}let A=z*(W6*2)-w.area,B=this.applyFillRule(A>>A6+1,Q);if(B>0&&w.x>=0&&w.x<J)this.setPixel($,Y,w.x,B);z+=w.cover,G=w.x+1,E=w.next}if(G<J&&z!==0){let w=this.applyFillRule(z,Q);if(w>0)this.fillSpan($,Y,G,J,w)}}}applyFillRule($,Q){let Z=$;if(Z<0)Z=-Z;if(Q===1){if(Z&=511,Z>256)Z=512-Z}return Z>255?255:Z}fillSpan($,Q,Z,K,J){if($.pixelMode===1)$.buffer.fill(J,Q+Z,Q+K);else if($.pixelMode===0){if(J>=128)for(let q=Z;q<K;q++){let U=Q+(q>>3),W=7-(q&7);$.buffer[U]|=1<<W}}else if($.pixelMode===2||$.pixelMode===3)for(let q=Z;q<K;q++){let U=Q+q*3;$.buffer[U]=J,$.buffer[U+1]=J,$.buffer[U+2]=J}else if($.pixelMode===4)for(let q=Z;q<K;q++){let U=Q+q*4;$.buffer[U]=0,$.buffer[U+1]=0,$.buffer[U+2]=0,$.buffer[U+3]=J}}setPixel($,Q,Z,K){if($.pixelMode===1)$.buffer[Q+Z]=K;else if($.pixelMode===0){if(K>=128){let J=Q+(Z>>3),q=7-(Z&7);$.buffer[J]|=1<<q}}else if($.pixelMode===2||$.pixelMode===3){let J=Q+Z*3;$.buffer[J]=K,$.buffer[J+1]=K,$.buffer[J+2]=K}else if($.pixelMode===4){let J=Q+Z*4;$.buffer[J]=0,$.buffer[J+1]=0,$.buffer[J+2]=0,$.buffer[J+3]=K}}sweepSpans($,Q=0,Z){let K=this.cells.getYCells(),J=this.cells.getPool(),q=this.cells.getNullIndex(),U=this.cells.getBandMinY();for(let W=0;W<K.length;W++){let H=K[W];if(H===q)continue;let _=U+W,N=[],V=0,X=-1;while(H!==q){let j=J[H];if(V!==0&&j.x>X+1){let E=this.applyFillRule(V,Q);if(E>0)N.push({x:X+1,len:j.x-X-1,coverage:E})}let G=V*(W6*2)-j.area,Y=this.applyFillRule(G>>A6+1,Q);if(Y>0)N.push({x:j.x,len:1,coverage:Y});V+=j.cover,X=j.x,H=j.next}if(N.length>0)$(_,N,Z)}}sweepDirect($,Q=0,Z=0,K=1/0,J){let q=[],U=this.cells.getYCells(),W=this.cells.getPool(),H=this.cells.getNullIndex(),_=this.cells.getBandMinY();for(let N=0;N<U.length;N++){let V=U[N];if(V===H)continue;let X=_+N,j=0,z=Z;while(V!==H){let G=W[V];if(j!==0&&G.x>z){let F=this.applyFillRule(j,Q);if(F>0){if(q.push({x:z,len:G.x-z,coverage:F}),q.length>=r7)$(X,q.splice(0,q.length),J)}}let E=j*(W6*2)-G.area,w=this.applyFillRule(E>>A6+1,Q);if(w>0&&G.x>=Z&&G.x<K){if(q.push({x:G.x,len:1,coverage:w}),q.length>=r7)$(X,q.splice(0,q.length),J)}j+=G.cover,z=G.x+1,V=G.next}if(j!==0&&z<K){let G=this.applyFillRule(j,Q);if(G>0)q.push({x:z,len:Math.min(K,this.maxX+1)-z,coverage:G})}if(q.length>0)$(X,q.splice(0,q.length),J)}}renderWithBands($,Q,Z,K=0){let q=Z.maxY-Z.minY,U=Math.max(1,Math.floor(256));if(q<=U)U=q;let W=Z.minX??0,H=Z.maxX??$.width,_=[];for(let N=Z.minY;N<Z.maxY;N+=U)_.push({minY:N,maxY:Math.min(N+U,Z.maxY),minX:W,maxX:H,depth:0});while(_.length>0){let N=_.pop();if(!N)break;if(this.renderBandWithXClip($,Q,N.minY,N.maxY,N.minX,N.maxX,K))continue;let V=N.depth;if(V>=CH){console.warn(`Rasterizer: band overflow at (${N.minX},${N.minY}), depth limit reached`);continue}let X=V+1,j=N.minX+N.maxX>>1;if(j>N.minX){_.push({minY:N.minY,maxY:N.maxY,minX:j,maxX:N.maxX,depth:X}),_.push({minY:N.minY,maxY:N.maxY,minX:N.minX,maxX:j,depth:X});continue}let z=N.minY+N.maxY>>1;if(z>N.minY){_.push({minY:z,maxY:N.maxY,minX:N.minX,maxX:N.maxX,depth:X}),_.push({minY:N.minY,maxY:z,minX:N.minX,maxX:N.maxX,depth:X});continue}console.warn(`Rasterizer: band overflow at (${N.minX},${N.minY}), cannot bisect further`)}}renderBandWithXClip($,Q,Z,K,J,q,U){this.setClip(J,Z,q,K),this.cells.setBandBounds(Z,K),this.cells.reset(),this.minY=Z,this.maxY=K;try{return Q(),this.sweepBandWithXClip($,Z,K,J,q,U),!0}catch(W){if(W instanceof S8)return!1;throw W}}sweepBandWithXClip($,Q,Z,K,J,q){let U=$.pitch,W=U<0?($.rows-1)*-U:0,H=this.cells.getYCells(),_=this.cells.getPool(),N=this.cells.getNullIndex(),V=this.cells.getBandMinY();for(let X=Q;X<Z;X++){if(X<0||X>=$.rows)continue;let j=X-V;if(j<0||j>=H.length)continue;let z=H[j];if(z===N)continue;let G=0,Y=K,E=U<0?W-X*-U:X*U;while(z!==N){let w=_[z];if(w.x<K){G+=w.cover,z=w.next;continue}if(w.x>=J){if(G!==0&&Y<J){let L=this.applyFillRule(G,q);if(L>0)this.fillSpan($,E,Math.max(0,Y),Math.min($.width,J),L)}break}if(w.x>Y&&G!==0){let L=this.applyFillRule(G,q);if(L>0){let O=Math.max(0,Y),M=Math.min($.width,w.x);this.fillSpan($,E,O,M,L)}}let A=G*(W6*2)-w.area,B=this.applyFillRule(A>>A6+1,q);if(B>0&&w.x>=0&&w.x<$.width)this.setPixel($,E,w.x,B);G+=w.cover,Y=w.x+1,z=w.next}if(Y<J&&Y<$.width&&G!==0){let w=this.applyFillRule(G,q);if(w>0)this.fillSpan($,E,Y,Math.min($.width,J),w)}}}}z6();var e7;((J)=>{J[J.Ok=0]="Ok";J[J.InvalidOutline=1]="InvalidOutline";J[J.InvalidArgument=2]="InvalidArgument";J[J.EmptyOutline=3]="EmptyOutline"})(e7||={});function SH($,Q=!0){if(!$)return{error:1,message:"Path is null or undefined"};if(!$.commands)return{error:1,message:"Path commands array is missing"};if($.commands.length===0){if(Q)return{error:3};return{error:1,message:"Path is empty"}}let Z=!1,K=!1,J=0;for(let q=0;q<$.commands.length;q++){let U=$.commands[q];switch(U.type){case"M":if(Z=!0,K=!0,J++,!Number.isFinite(U.x)||!Number.isFinite(U.y))return{error:1,message:`Invalid coordinates at command ${q}: (${U.x}, ${U.y})`};break;case"L":if(!Z)return{error:1,message:`Line command at ${q} without preceding moveTo`};if(!Number.isFinite(U.x)||!Number.isFinite(U.y))return{error:1,message:`Invalid coordinates at command ${q}`};break;case"Q":if(!Z)return{error:1,message:`Quadratic curve at ${q} without preceding moveTo`};if(!Number.isFinite(U.x1)||!Number.isFinite(U.y1)||!Number.isFinite(U.x)||!Number.isFinite(U.y))return{error:1,message:`Invalid coordinates at command ${q}`};break;case"C":if(!Z)return{error:1,message:`Cubic curve at ${q} without preceding moveTo`};if(!Number.isFinite(U.x1)||!Number.isFinite(U.y1)||!Number.isFinite(U.x2)||!Number.isFinite(U.y2)||!Number.isFinite(U.x)||!Number.isFinite(U.y))return{error:1,message:`Invalid coordinates at command ${q}`};break;case"Z":K=!1;break;default:return{error:1,message:`Unknown command type at ${q}: ${U.type}`}}}if(J===0&&!Q)return{error:3,message:"No contours in path"};return{error:0}}function Y8($,Q,Z,K=0,J=0,q=!0){let U=0,W=0,H=!1,_=Z*W6,N=(q?-Z:Z)*W6,V=K*W6,X=J*W6;for(let j=0;j<Q.commands.length;j++){let z=Q.commands[j];switch(z.type){case"M":{if(H)$.lineTo(U,W);let G=Math.round(z.x*_+V),Y=Math.round(z.y*N+X);$.moveTo(G,Y),U=G,W=Y,H=!0;break}case"L":{let G=Math.round(z.x*_+V),Y=Math.round(z.y*N+X);$.lineTo(G,Y);break}case"Q":{let G=Math.round(z.x1*_+V),Y=Math.round(z.y1*N+X),E=Math.round(z.x*_+V),w=Math.round(z.y*N+X);$.conicTo(G,Y,E,w);break}case"C":{let G=Math.round(z.x1*_+V),Y=Math.round(z.y1*N+X),E=Math.round(z.x2*_+V),w=Math.round(z.y2*N+X),F=Math.round(z.x*_+V),A=Math.round(z.y*N+X);$.cubicTo(G,Y,E,w,F,A);break}case"Z":{if(H)$.lineTo(U,W),H=!1;break}}}if(H)$.lineTo(U,W)}function t7($,Q){if($===0||Q===0)return 0;let Z=1,K=$,J=Q;if(K<0)K=-K,Z=-Z;if(J<0)J=-J,Z=-Z;let q=Math.floor((K*J+32768)/65536);return Z<0?-q:q}function q8($,Q,Z=!0,K=!1){if(K){let q=Math.round(Q*64*65536),U=1/0,W=1/0,H=-1/0,_=-1/0,N=(V,X)=>{let j=t7(V,q),z=t7(X,q);if(j<U)U=j;if(j>H)H=j;if(z<W)W=z;if(z>_)_=z};for(let V of $.commands)switch(V.type){case"M":case"L":N(V.x,V.y);break;case"Q":N(V.x1,V.y1),N(V.x,V.y);break;case"C":N(V.x1,V.y1),N(V.x2,V.y2),N(V.x,V.y);break;default:break}if(!Number.isFinite(U)||!Number.isFinite(W))return null;if(Z){let V=-_,X=-W;return{minX:Math.floor(U/64),minY:Math.floor(V/64),maxX:Math.floor((H+63)/64),maxY:Math.floor((X+63)/64)}}return{minX:Math.floor(U/64),minY:Math.floor(W/64),maxX:Math.floor((H+63)/64),maxY:Math.floor((_+63)/64)}}if(!$.bounds)return null;let J=$.bounds;if(Z)return{minX:Math.floor(J.xMin*Q),minY:Math.floor(-J.yMax*Q),maxX:Math.ceil(J.xMax*Q),maxY:Math.ceil(-J.yMin*Q)};else return{minX:Math.floor(J.xMin*Q),minY:Math.floor(J.yMin*Q),maxX:Math.ceil(J.xMax*Q),maxY:Math.ceil(J.yMax*Q)}}function hH($,Q=0){if(!$?.flags)return Q;return($.flags&1)!==0?1:0}z6();function $K($){if(!$.commands||$.commands.length===0)return null;let Q=1/0,Z=1/0,K=-1/0,J=-1/0,q=0,U=0,W=!1,H=(_,N)=>{Q=Math.min(Q,_),Z=Math.min(Z,N),K=Math.max(K,_),J=Math.max(J,N),W=!0};for(let _=0;_<$.commands.length;_++){let N=$.commands[_];switch(N.type){case"M":{q=N.x,U=N.y,H(q,U);break}case"L":{q=N.x,U=N.y,H(q,U);break}case"Q":{H(N.x,N.y);let V=E5(q,N.x1,N.x);for(let G=0;G<V.length;G++){let Y=V[G],E=h9(q,N.x1,N.x,Y);H(E,U)}let X=E5(U,N.y1,N.y);for(let G=0;G<X.length;G++){let Y=X[G],E=h9(U,N.y1,N.y,Y);H(q,E)}let z=[...new Set([...V,...X])];for(let G=0;G<z.length;G++){let Y=z[G],E=h9(q,N.x1,N.x,Y),w=h9(U,N.y1,N.y,Y);H(E,w)}q=N.x,U=N.y;break}case"C":{H(N.x,N.y);let V=w5(q,N.x1,N.x2,N.x);for(let G=0;G<V.length;G++){let Y=V[G],E=y9(q,N.x1,N.x2,N.x,Y);H(E,U)}let X=w5(U,N.y1,N.y2,N.y);for(let G=0;G<X.length;G++){let Y=X[G],E=y9(U,N.y1,N.y2,N.y,Y);H(q,E)}let z=[...new Set([...V,...X])];for(let G=0;G<z.length;G++){let Y=z[G],E=y9(q,N.x1,N.x2,N.x,Y),w=y9(U,N.y1,N.y2,N.y,Y);H(E,w)}q=N.x,U=N.y;break}case"Z":break}}if(!W)return null;return{xMin:Q,yMin:Z,xMax:K,yMax:J}}function E5($,Q,Z){let K=$-2*Q+Z;if(Math.abs(K)<0.0000000001)return[];let J=($-Q)/K;if(J>0&&J<1)return[J];return[]}function w5($,Q,Z,K){let J=3*(K-3*Z+3*Q-$),q=6*(Z-2*Q+$),U=3*(Q-$),W=[];if(Math.abs(J)<0.0000000001){if(Math.abs(q)<0.0000000001)return[];let X=-U/q;if(X>0&&X<1)W.push(X);return W}let H=q*q-4*J*U;if(H<0)return[];if(Math.abs(H)<0.0000000001){let X=-q/(2*J);if(X>0&&X<1)W.push(X);return W}let _=Math.sqrt(H),N=(-q+_)/(2*J),V=(-q-_)/(2*J);if(N>0&&N<1)W.push(N);if(V>0&&V<1)W.push(V);return W}function h9($,Q,Z,K){let J=1-K;return J*J*$+2*J*K*Q+K*K*Z}function y9($,Q,Z,K,J){let q=1-J,U=q*q,W=J*J;return U*q*$+3*U*J*Q+3*q*W*Z+W*J*K}z6();function r8($,Q,Z){if(Q===0&&Z===0)return J6($);let K=a($.width,$.rows,$.pixelMode);if($.pixelMode===1)for(let J=0;J<$.rows;J++)for(let q=0;q<$.width;q++){let U=0;for(let W=-Math.floor(Z);W<=Math.ceil(Z);W++)for(let H=-Math.floor(Q);H<=Math.ceil(Q);H++){let _=q+H,N=J+W;if(_>=0&&_<$.width&&N>=0&&N<$.rows){let V=$.buffer[N*$.pitch+_]??0;U=Math.max(U,V)}}K.buffer[J*K.pitch+q]=U}else if($.pixelMode===0)for(let J=0;J<$.rows;J++)for(let q=0;q<$.width;q++){let U=!1;for(let W=-Math.floor(Z);W<=Math.ceil(Z);W++){for(let H=-Math.floor(Q);H<=Math.ceil(Q);H++){let _=q+H,N=J+W;if(_>=0&&_<$.width&&N>=0&&N<$.rows){let V=N*$.pitch+(_>>3),X=7-(_&7);if(($.buffer[V]??0)>>X&1){U=!0;break}}}if(U)break}if(U){let W=J*K.pitch+(q>>3),H=7-(q&7);K.buffer[W]|=1<<H}}else if($.pixelMode===2||$.pixelMode===3)for(let J=0;J<$.rows;J++)for(let q=0;q<$.width;q++){let U=0,W=0,H=0;for(let N=-Math.floor(Z);N<=Math.ceil(Z);N++)for(let V=-Math.floor(Q);V<=Math.ceil(Q);V++){let X=q+V,j=J+N;if(X>=0&&X<$.width&&j>=0&&j<$.rows){let z=j*$.pitch+X*3;U=Math.max(U,$.buffer[z]??0),W=Math.max(W,$.buffer[z+1]??0),H=Math.max(H,$.buffer[z+2]??0)}}let _=J*K.pitch+q*3;K.buffer[_]=U,K.buffer[_+1]=W,K.buffer[_+2]=H}return K}function U8($,Q){if($.pixelMode===Q)return $;let Z=a($.width,$.rows,Q);if($.pixelMode===1&&Q===0){for(let K=0;K<$.rows;K++)for(let J=0;J<$.width;J++)if(($.buffer[K*$.pitch+J]??0)>=128){let U=K*Z.pitch+(J>>3),W=7-(J&7);Z.buffer[U]|=1<<W}}else if($.pixelMode===0&&Q===1)for(let K=0;K<$.rows;K++)for(let J=0;J<$.width;J++){let q=K*$.pitch+(J>>3),U=7-(J&7),W=($.buffer[q]??0)>>U&1;Z.buffer[K*Z.pitch+J]=W?255:0}else if($.pixelMode===1&&Q===2)for(let K=0;K<$.rows;K++)for(let J=0;J<$.width;J++){let q=$.buffer[K*$.pitch+J]??0,U=K*Z.pitch+J*3;Z.buffer[U]=q,Z.buffer[U+1]=q,Z.buffer[U+2]=q}else if($.pixelMode===0&&Q===2)for(let K=0;K<$.rows;K++)for(let J=0;J<$.width;J++){let q=K*$.pitch+(J>>3),U=7-(J&7),H=($.buffer[q]??0)>>U&1?255:0,_=K*Z.pitch+J*3;Z.buffer[_]=H,Z.buffer[_+1]=H,Z.buffer[_+2]=H}else if($.pixelMode===1&&Q===3)for(let K=0;K<$.rows;K++)for(let J=0;J<$.width;J++){let q=$.buffer[K*$.pitch+J]??0,U=K*Z.pitch+J*3;Z.buffer[U]=q,Z.buffer[U+1]=q,Z.buffer[U+2]=q}else if($.pixelMode===2&&Q===1)for(let K=0;K<$.rows;K++)for(let J=0;J<$.width;J++){let q=K*$.pitch+J*3,U=$.buffer[q]??0,W=$.buffer[q+1]??0,H=$.buffer[q+2]??0;Z.buffer[K*Z.pitch+J]=Math.floor((U+W+H)/3)}return Z}function C0($,Q,Z,K,J){if($.pixelMode!==1||Q.pixelMode!==1)return;J=Math.max(0,Math.min(1,J));let q=Math.max(0,-Z),U=Math.max(0,-K),W=Math.min(Q.width,$.width-Z),H=Math.min(Q.rows,$.rows-K);for(let _=U;_<H;_++)for(let N=q;N<W;N++){let V=Z+N,X=K+_;if(V>=0&&V<$.width&&X>=0&&X<$.rows){let j=Q.buffer[_*Q.pitch+N]??0,G=($.buffer[X*$.pitch+V]??0)+j*J;$.buffer[X*$.pitch+V]=Math.min(255,Math.floor(G))}}}function J6($){return{buffer:new Uint8Array($.buffer),width:$.width,rows:$.rows,pitch:$.pitch,pixelMode:$.pixelMode,numGrays:$.numGrays}}function h8($,Q,Z){let K=a(Q,Z,$.pixelMode),J=$.width/Q,q=$.rows/Z;if($.pixelMode===1)for(let U=0;U<Z;U++)for(let W=0;W<Q;W++){let H=Math.floor(W*J),_=Math.floor(U*q);K.buffer[U*K.pitch+W]=$.buffer[_*$.pitch+H]??0}else if($.pixelMode===0)for(let U=0;U<Z;U++)for(let W=0;W<Q;W++){let H=Math.floor(W*J),N=Math.floor(U*q)*$.pitch+(H>>3),V=7-(H&7);if(($.buffer[N]??0)>>V&1){let j=U*K.pitch+(W>>3),z=7-(W&7);K.buffer[j]|=1<<z}}else if($.pixelMode===2||$.pixelMode===3)for(let U=0;U<Z;U++)for(let W=0;W<Q;W++){let H=Math.floor(W*J),N=Math.floor(U*q)*$.pitch+H*3,V=U*K.pitch+W*3;K.buffer[V]=$.buffer[N]??0,K.buffer[V+1]=$.buffer[N+1]??0,K.buffer[V+2]=$.buffer[N+2]??0}return K}function t8($,Q,Z){let K=a(Q,Z,$.pixelMode),J=($.width-1)/Math.max(1,Q-1),q=($.rows-1)/Math.max(1,Z-1);if($.pixelMode===1)for(let U=0;U<Z;U++){let W=U*q,H=Math.floor(W),_=Math.min(H+1,$.rows-1),N=W-H;for(let V=0;V<Q;V++){let X=V*J,j=Math.floor(X),z=Math.min(j+1,$.width-1),G=X-j,Y=$.buffer[H*$.pitch+j]??0,E=$.buffer[H*$.pitch+z]??0,w=$.buffer[_*$.pitch+j]??0,F=$.buffer[_*$.pitch+z]??0,A=Y+(E-Y)*G,B=w+(F-w)*G,L=A+(B-A)*N;K.buffer[U*K.pitch+V]=Math.round(L)}}else if($.pixelMode===0)return h8($,Q,Z);else if($.pixelMode===2||$.pixelMode===3)for(let U=0;U<Z;U++){let W=U*q,H=Math.floor(W),_=Math.min(H+1,$.rows-1),N=W-H;for(let V=0;V<Q;V++){let X=V*J,j=Math.floor(X),z=Math.min(j+1,$.width-1),G=X-j,Y=H*$.pitch+j*3,E=H*$.pitch+z*3,w=_*$.pitch+j*3,F=_*$.pitch+z*3;for(let A=0;A<3;A++){let B=$.buffer[Y+A]??0,L=$.buffer[E+A]??0,O=$.buffer[w+A]??0,M=$.buffer[F+A]??0,P=B+(L-B)*G,T=O+(M-O)*G,x=P+(T-P)*N;K.buffer[U*K.pitch+V*3+A]=Math.round(x)}}}return K}function A5($,Q,Z=0,K=0){if($.pixelMode!==1||Q.pixelMode!==1)return;let J=Math.max(0,-Z),q=Math.max(0,-K),U=Math.min(Q.width,$.width-Z),W=Math.min(Q.rows,$.rows-K);for(let H=q;H<W;H++){let _=K+H;if(_<0||_>=$.rows)continue;for(let N=J;N<U;N++){let V=Z+N;if(V<0||V>=$.width)continue;let X=Q.buffer[H*Q.pitch+N]??0,j=$.buffer[_*$.pitch+V]??0;$.buffer[_*$.pitch+V]=Math.min(255,X+j)}}}function F5($,Q,Z=0,K=0){if($.pixelMode!==1||Q.pixelMode!==1)return;let J=Math.max(0,-Z),q=Math.max(0,-K),U=Math.min(Q.width,$.width-Z),W=Math.min(Q.rows,$.rows-K);for(let H=q;H<W;H++){let _=K+H;if(_<0||_>=$.rows)continue;for(let N=J;N<U;N++){let V=Z+N;if(V<0||V>=$.width)continue;let X=Q.buffer[H*Q.pitch+N]??0,j=$.buffer[_*$.pitch+V]??0;$.buffer[_*$.pitch+V]=Math.floor((X*j+127)/255)}}}function L5($,Q,Z=0,K=0){if($.pixelMode!==1||Q.pixelMode!==1)return;let J=Math.max(0,-Z),q=Math.max(0,-K),U=Math.min(Q.width,$.width-Z),W=Math.min(Q.rows,$.rows-K);for(let H=q;H<W;H++){let _=K+H;if(_<0||_>=$.rows)continue;for(let N=J;N<U;N++){let V=Z+N;if(V<0||V>=$.width)continue;let X=Q.buffer[H*Q.pitch+N]??0,j=$.buffer[_*$.pitch+V]??0;$.buffer[_*$.pitch+V]=Math.max(0,j-X)}}}function D5($,Q,Z=0,K=0){if($.pixelMode!==1||Q.pixelMode!==1)return;let J=Math.max(0,-Z),q=Math.max(0,-K),U=Math.min(Q.width,$.width-Z),W=Math.min(Q.rows,$.rows-K);for(let H=q;H<W;H++){let _=K+H;if(_<0||_>=$.rows)continue;for(let N=J;N<U;N++){let V=Z+N;if(V<0||V>=$.width)continue;let X=Q.buffer[H*Q.pitch+N]??0,j=$.buffer[_*$.pitch+V]??0,z=X+Math.floor((j*(255-X)+127)/255);$.buffer[_*$.pitch+V]=Math.min(255,z)}}}function b9($,Q,Z){let K=a($.width,$.rows,$.pixelMode);if($.pixelMode===1)for(let J=0;J<$.rows;J++){let q=J-Z;if(q<0||q>=$.rows)continue;for(let U=0;U<$.width;U++){let W=U-Q;if(W<0||W>=$.width)continue;K.buffer[J*K.pitch+U]=$.buffer[q*$.pitch+W]??0}}else if($.pixelMode===0)for(let J=0;J<$.rows;J++){let q=J-Z;if(q<0||q>=$.rows)continue;for(let U=0;U<$.width;U++){let W=U-Q;if(W<0||W>=$.width)continue;let H=q*$.pitch+(W>>3),_=7-(W&7);if(($.buffer[H]??0)>>_&1){let V=J*K.pitch+(U>>3),X=7-(U&7);K.buffer[V]|=1<<X}}}else if($.pixelMode===2||$.pixelMode===3)for(let J=0;J<$.rows;J++){let q=J-Z;if(q<0||q>=$.rows)continue;for(let U=0;U<$.width;U++){let W=U-Q;if(W<0||W>=$.width)continue;let H=q*$.pitch+W*3,_=J*K.pitch+U*3;K.buffer[_]=$.buffer[H]??0,K.buffer[_+1]=$.buffer[H+1]??0,K.buffer[_+2]=$.buffer[H+2]??0}}return K}function yH($,Q,Z=0,K=0,J=128){if($.pixelMode!==1||Q.pixelMode!==1)return;let q=Math.max(0,-Z),U=Math.max(0,-K),W=Math.min(Q.width,$.width-Z),H=Math.min(Q.rows,$.rows-K);for(let _=U;_<H;_++){let N=K+_;if(N<0||N>=$.rows)continue;for(let V=q;V<W;V++){let X=Z+V;if(X<0||X>=$.width)continue;if((Q.buffer[_*Q.pitch+V]??0)>=J)$.buffer[N*$.pitch+X]=0}}}function B5($,Q,Z=0,K=0){if($.pixelMode!==1||Q.pixelMode!==1)return;let J=Math.max(0,-Z),q=Math.max(0,-K),U=Math.min(Q.width,$.width-Z),W=Math.min(Q.rows,$.rows-K);for(let H=q;H<W;H++){let _=K+H;if(_<0||_>=$.rows)continue;for(let N=J;N<U;N++){let V=Z+N;if(V<0||V>=$.width)continue;let X=Q.buffer[H*Q.pitch+N]??0,j=$.buffer[_*$.pitch+V]??0;$.buffer[_*$.pitch+V]=Math.max(X,j)}}}function m9($,Q,Z,K,J){let q=$.width+Q+K,U=$.rows+Z+J,W=a(q,U,$.pixelMode);if($.pixelMode===1)for(let H=0;H<$.rows;H++)for(let _=0;_<$.width;_++)W.buffer[(H+Z)*W.pitch+(_+Q)]=$.buffer[H*$.pitch+_]??0;else if($.pixelMode===2||$.pixelMode===3)for(let H=0;H<$.rows;H++)for(let _=0;_<$.width;_++){let N=H*$.pitch+_*3,V=(H+Z)*W.pitch+(_+Q)*3;W.buffer[V]=$.buffer[N]??0,W.buffer[V+1]=$.buffer[N+1]??0,W.buffer[V+2]=$.buffer[N+2]??0}return W}function bH($,Q,Z,K){let{width:U,rows:W}=$,H=Z,_=K,N=Z+Q.width,V=K+Q.rows,X=Math.min(0,H),j=Math.min(0,_),z=Math.max(U,N),G=Math.max(W,V),Y=z-X,E=G-j,w=a(Y,E,$.pixelMode),F=0-X,A=0-j,B=H-X,L=_-j;if($.pixelMode===1)for(let O=0;O<$.rows;O++)for(let M=0;M<$.width;M++)w.buffer[(O+A)*w.pitch+(M+F)]=$.buffer[O*$.pitch+M]??0;return{expanded:w,dstOffsetX:F,dstOffsetY:A,srcOffsetX:B,srcOffsetY:L}}z6();function M5($){if($<=0)return new Float32Array([1]);let Q=$,Z=Math.ceil($*2)*2+1,K=new Float32Array(Z),J=Math.floor(Z/2),q=0;for(let U=0;U<Z;U++){let W=U-J,H=Math.exp(-(W*W)/(2*Q*Q));K[U]=H,q+=H}for(let U=0;U<Z;U++)K[U]/=q;return K}function mH($,Q,Z,K,J,q,U,W){let H=Math.floor(U.length/2);for(let _=0;_<K;_++)for(let N=0;N<Z;N++)for(let V=0;V<W;V++){let X=0;for(let z=0;z<U.length;z++){let G=N+z-H,Y=Math.max(0,Math.min(Z-1,G)),E=_*J+Y*W+V;X+=($[E]??0)*U[z]}let j=_*q+N*W+V;Q[j]=Math.min(255,Math.max(0,Math.round(X)))}}function gH($,Q,Z,K,J,q,U,W){let H=Math.floor(U.length/2);for(let _=0;_<K;_++)for(let N=0;N<Z;N++)for(let V=0;V<W;V++){let X=0;for(let z=0;z<U.length;z++){let G=_+z-H,E=Math.max(0,Math.min(K-1,G))*J+N*W+V;X+=($[E]??0)*U[z]}let j=_*q+N*W+V;Q[j]=Math.min(255,Math.max(0,Math.round(X)))}}function o6($,Q){if($.pixelMode===0){let q=U8($,1);return o6(q,Q)}if(Q<=0)return $;let Z=M5(Q),K=1;if($.pixelMode===2||$.pixelMode===3)K=3;else if($.pixelMode===4)K=4;let J=new Uint8Array($.buffer.length);return mH($.buffer,J,$.width,$.rows,$.pitch,$.pitch,Z,K),gH(J,$.buffer,$.width,$.rows,$.pitch,$.pitch,Z,K),$}function E8($,Q){if($.pixelMode===0){let U=U8($,1);return E8(U,Q)}if(Q<=0)return $;let Z=1;if($.pixelMode===2||$.pixelMode===3)Z=3;else if($.pixelMode===4)Z=4;let K=Math.floor(Q),J=K*2+1,q=new Uint8Array($.buffer.length);for(let U=0;U<$.rows;U++)for(let W=0;W<Z;W++){let H=0,_=0;for(let V=-K;V<=K;V++)if(V>=0&&V<$.width){let X=U*$.pitch+V*Z+W;H+=$.buffer[X]??0,_++}let N=U*$.pitch+0*Z+W;q[N]=Math.round(H/_);for(let V=1;V<$.width;V++){let X=V-K-1;if(X>=0){let G=U*$.pitch+X*Z+W;H-=$.buffer[G]??0,_--}let j=V+K;if(j<$.width){let G=U*$.pitch+j*Z+W;H+=$.buffer[G]??0,_++}let z=U*$.pitch+V*Z+W;q[z]=Math.round(H/_)}}for(let U=0;U<$.width;U++)for(let W=0;W<Z;W++){let H=0,_=0;for(let V=-K;V<=K;V++)if(V>=0&&V<$.rows){let X=V*$.pitch+U*Z+W;H+=q[X]??0,_++}let N=0*$.pitch+U*Z+W;$.buffer[N]=Math.round(H/_);for(let V=1;V<$.rows;V++){let X=V-K-1;if(X>=0){let G=X*$.pitch+U*Z+W;H-=q[G]??0,_--}let j=V+K;if(j<$.rows){let G=j*$.pitch+U*Z+W;H+=q[G]??0,_++}let z=V*$.pitch+U*Z+W;$.buffer[z]=Math.round(H/_)}}return $}function QK($,Q,Z="gaussian"){if(Z==="box")return E8($,Q);else return o6($,Q)}z6();function uH($,Q,Z){return[Math.round($[0]+(Q[0]-$[0])*Z),Math.round($[1]+(Q[1]-$[1])*Z),Math.round($[2]+(Q[2]-$[2])*Z),Math.round($[3]+(Q[3]-$[3])*Z)]}function S0($,Q,Z){if($.stops.length===0)return[0,0,0,0];if($.stops.length===1)return $.stops[0].color;let K;if($.type==="linear"){let q=$.x1-$.x0,U=$.y1-$.y0,W=q*q+U*U;if(W===0)return $.stops[0].color;let H=Q-$.x0,_=Z-$.y0;K=(H*q+_*U)/W}else{let q=Q-$.cx,U=Z-$.cy,W=Math.sqrt(q*q+U*U);K=$.radius>0?W/$.radius:0}K=Math.max(0,Math.min(1,K));let J=[...$.stops].sort((q,U)=>q.offset-U.offset);if(K<=J[0].offset)return J[0].color;if(K>=J[J.length-1].offset)return J[J.length-1].color;for(let q=0;q<J.length-1;q++){let U=J[q],W=J[q+1];if(K>=U.offset&&K<=W.offset){let H=W.offset-U.offset;if(H===0)return W.color;let _=(K-U.offset)/H;return uH(U.color,W.color,_)}}return J[J.length-1].color}function h0($,Q,Z){let K=a($,Q,4);for(let J=0;J<Q;J++)for(let q=0;q<$;q++){let U=S0(Z,q,J),W=(J*$+q)*4;K.buffer[W]=U[0],K.buffer[W+1]=U[1],K.buffer[W+2]=U[2],K.buffer[W+3]=U[3]}return K}function e8($,Q,Z){let{width:K,height:J}=Z,q=r6($,{...Z,pixelMode:1,flipY:Z.flipY??!1}),U=a(K,J,4);for(let W=0;W<J;W++)for(let H=0;H<K;H++){let _=q.buffer[W*q.pitch+H]??0;if(_>0){let N=S0(Q,H,W),V=(W*K+H)*4,X=N[3]*_/255;U.buffer[V]=N[0],U.buffer[V+1]=N[1],U.buffer[V+2]=N[2],U.buffer[V+3]=Math.round(X)}}return U}z6();function y8($,Q){let{width:Z,height:K,scale:J,offsetX:q=0,offsetY:U=0,flipY:W=!1,spread:H=8}=Q,_=a(Z,K,1),N=xH($,J,q,U,W);if(N.length===0)return _.buffer.fill(0),_;for(let V=0;V<K;V++)for(let X=0;X<Z;X++){let j=X+0.5,z=V+0.5,G=1/0;for(let A=0;A<N.length;A++){let B=N[A],L=fH(j,z,B);G=Math.min(G,L)}let w=128+(pH(j,z,N)?G:-G)/H*127,F=Math.max(0,Math.min(255,Math.round(w)));_.buffer[V*_.pitch+X]=F}return _}function xH($,Q,Z,K,J){let q=[],U=null,W=null,H=(_,N)=>({x:_*Q+Z,y:J?-(N*Q)+K:N*Q+K});for(let _=0;_<$.commands.length;_++){let N=$.commands[_];switch(N.type){case"M":U=H(N.x,N.y),W=U;break;case"L":if(U){let V=H(N.x,N.y);q.push({type:"line",p0:U,p1:V}),U=V}break;case"Q":if(U){let V=H(N.x1,N.y1),X=H(N.x,N.y);q.push({type:"quadratic",p0:U,p1:V,p2:X}),U=X}break;case"C":if(U){let V=H(N.x1,N.y1),X=H(N.x2,N.y2),j=H(N.x,N.y);q.push({type:"cubic",p0:U,p1:V,p2:X,p3:j}),U=j}break;case"Z":if(U&&W){if(Math.abs(U.x-W.x)>0.001||Math.abs(U.y-W.y)>0.001)q.push({type:"line",p0:U,p1:W});U=W}break}}return q}function fH($,Q,Z){switch(Z.type){case"line":return lH($,Q,Z.p0,Z.p1);case"quadratic":return dH($,Q,Z.p0,Z.p1,Z.p2);case"cubic":return nH($,Q,Z.p0,Z.p1,Z.p2,Z.p3)}}function lH($,Q,Z,K){let J=K.x-Z.x,q=K.y-Z.y,U=J*J+q*q;if(U<0.0001){let X=$-Z.x,j=Q-Z.y;return Math.sqrt(X*X+j*j)}let W=(($-Z.x)*J+(Q-Z.y)*q)/U;W=Math.max(0,Math.min(1,W));let H=Z.x+W*J,_=Z.y+W*q,N=$-H,V=Q-_;return Math.sqrt(N*N+V*V)}function dH($,Q,Z,K,J){let q=1/0,U=32;for(let W=0;W<=U;W++){let H=W/U,_=1-H,N=_*_*Z.x+2*_*H*K.x+H*H*J.x,V=_*_*Z.y+2*_*H*K.y+H*H*J.y,X=$-N,j=Q-V,z=Math.sqrt(X*X+j*j);q=Math.min(q,z)}return q}function nH($,Q,Z,K,J,q){let U=1/0,W=32;for(let H=0;H<=W;H++){let _=H/W,N=1-_,V=N*N*N*Z.x+3*N*N*_*K.x+3*N*_*_*J.x+_*_*_*q.x,X=N*N*N*Z.y+3*N*N*_*K.y+3*N*_*_*J.y+_*_*_*q.y,j=$-V,z=Q-X,G=Math.sqrt(j*j+z*z);U=Math.min(U,G)}return U}function pH($,Q,Z){let K=0;for(let J=0;J<Z.length;J++){let q=Z[J],U=oH(q);for(let W=0;W<U.length-1;W++){let H=U[W],_=U[W+1];if(!H||!_)continue;if(H.y>Q!==_.y>Q){let N=(_.x-H.x)/(_.y-H.y),V=H.x+N*(Q-H.y);if($<V)K++}}}return(K&1)===1}function oH($){switch($.type){case"line":return[$.p0,$.p1];case"quadratic":{let Q=[$.p0],Z=16;for(let K=1;K<=16;K++){let J=K/16,q=1-J;Q.push({x:q*q*$.p0.x+2*q*J*$.p1.x+J*J*$.p2.x,y:q*q*$.p0.y+2*q*J*$.p1.y+J*J*$.p2.y})}return Q}case"cubic":{let Q=[$.p0],Z=16;for(let K=1;K<=16;K++){let J=K/16,q=1-J;Q.push({x:q*q*q*$.p0.x+3*q*q*J*$.p1.x+3*q*J*J*$.p2.x+J*J*J*$.p3.x,y:q*q*q*$.p0.y+3*q*q*J*$.p1.y+3*q*J*J*$.p2.y+J*J*J*$.p3.y})}return Q}}}function R5($){let Q=Math.sqrt($.x*$.x+$.y*$.y);if(Q===0)return{x:0,y:0};return{x:$.x/Q,y:$.y/Q}}function l6($){return{x:-$.y,y:$.x}}function cH($,Q){let Z=$.x*Q.x+$.y*Q.y,K=$.x*Q.y-$.y*Q.x;return Math.atan2(K,Z)}function ZK($,Q,Z,K,J){let q=l6(Z),U={x:Q.x+q.x*K*(J?1:-1),y:Q.y+q.y*K*(J?1:-1)},W={x:Q.x-q.x*K*(J?1:-1),y:Q.y-q.y*K*(J?1:-1)},H={x:Q.x+Z.x*K,y:Q.y+Z.y*K},_={x:U.x+Z.x*K*0.5523,y:U.y+Z.y*K*0.5523},N={x:W.x+Z.x*K*0.5523,y:W.y+Z.y*K*0.5523};$.push({type:"Q",x1:_.x,y1:_.y,x:H.x,y:H.y}),$.push({type:"Q",x1:N.x,y1:N.y,x:W.x,y:W.y})}function KK($,Q,Z,K){let J=l6(Z),q={x:Q.x+Z.x*K,y:Q.y+Z.y*K},U={x:q.x+J.x*K,y:q.y+J.y*K},W={x:q.x-J.x*K,y:q.y-J.y*K};$.push({type:"L",x:U.x,y:U.y}),$.push({type:"L",x:W.x,y:W.y})}function y0($,Q,Z,K,J,q,U,W){let H=cH(Z,K),_=W?H<0:H>0;if(Math.abs(H)<0.01)return;let N=l6(Z),V=l6(K),X=W?1:-1,j={x:Q.x+N.x*J*X,y:Q.y+N.y*J*X},z={x:Q.x+V.x*J*X,y:Q.y+V.y*J*X};if(!_){$.push({type:"L",x:z.x,y:z.y});return}switch(q){case"round":{let G=Math.abs(H),Y=Math.max(2,Math.ceil(G/(Math.PI/4)));for(let E=1;E<=Y;E++){let w=E/Y,F=Math.atan2(N.y,N.x)+H*w*X,A=Q.x+Math.cos(F)*J*X,B=Q.y+Math.sin(F)*J*X;$.push({type:"L",x:A,y:B})}break}case"miter":{if(1/Math.sin(Math.abs(H)/2)<=U){let Y=H/2,E=R5({x:Z.x+K.x,y:Z.y+K.y}),w=J/Math.cos(Y),F={x:Q.x+E.x*w*X,y:Q.y+E.y*w*X};$.push({type:"L",x:F.x,y:F.y}),$.push({type:"L",x:z.x,y:z.y})}else $.push({type:"L",x:z.x,y:z.y});break}default:$.push({type:"L",x:z.x,y:z.y});break}}function iH($,Q){if($.length<2)return[];let{width:Z,lineJoin:K,miterLimit:J}=Q,q=Z/2,U=[],W=$.length,H=[];for(let Y=0;Y<W;Y++){let E=$[Y],w=$[(Y+1)%W];if(!E||!w)continue;H.push(R5({x:w.x-E.x,y:w.y-E.y}))}let _=H[0],N=$[0];if(!_||!N)return[];let V=l6(_);U.push({type:"M",x:N.x+V.x*q,y:N.y+V.y*q});for(let Y=0;Y<W;Y++){let E=$[Y],w=$[(Y+1)%W],F=H[Y],A=H[(Y+1)%W];if(!E||!w||!F||!A)continue;let B=l6(F);U.push({type:"L",x:w.x+B.x*q,y:w.y+B.y*q}),y0(U,w,F,A,q,K,J,!0)}U.push({type:"Z"});let X=W-1,j=H[X],z=$[0];if(!j||!z)return U;let G=l6(_);U.push({type:"M",x:N.x-G.x*q,y:N.y-G.y*q});for(let Y=0;Y<W;Y++){let E=$[Y],w=$[(Y+1)%W],F=H[Y],A=H[(Y+1)%W];if(!E||!w||!F||!A)continue;let B=l6(F);U.push({type:"L",x:w.x-B.x*q,y:w.y-B.y*q}),y0(U,w,F,A,q,K,J,!1)}return U.push({type:"Z"}),U}function sH($,Q){if($.length<2)return[];let{width:Z,lineCap:K,lineJoin:J,miterLimit:q}=Q,U=Z/2,W=[],H=$.length,_=[];for(let E=0;E<H-1;E++){let w=$[E],F=$[E+1];if(!w||!F)continue;_.push(R5({x:F.x-w.x,y:F.y-w.y}))}let N=$[0],V=$[H-1],X=_[0],j=_[_.length-1];if(!N||!V||!X||!j)return[];let z=l6(X);W.push({type:"M",x:N.x+z.x*U,y:N.y+z.y*U});for(let E=0;E<H-1;E++){let w=$[E+1],F=_[E],A=_[E+1];if(!w||!F)continue;let B=l6(F);if(W.push({type:"L",x:w.x+B.x*U,y:w.y+B.y*U}),A)y0(W,w,F,A,U,J,q,!0)}let G={x:-j.x,y:-j.y};switch(K){case"round":ZK(W,V,j,U,!0);break;case"square":KK(W,V,j,U);break;default:{let E=l6(j);W.push({type:"L",x:V.x-E.x*U,y:V.y-E.y*U});break}}for(let E=H-2;E>=0;E--){let w=$[E],F=_[E],A=_[E-1];if(!w||!F)continue;let B=l6(F);if(W.push({type:"L",x:w.x-B.x*U,y:w.y-B.y*U}),A)y0(W,w,{x:-F.x,y:-F.y},{x:-A.x,y:-A.y},U,J,q,!0)}let Y={x:-X.x,y:-X.y};switch(K){case"round":ZK(W,N,Y,U,!0);break;case"square":KK(W,N,Y,U);break;default:break}return W.push({type:"Z"}),W}function aH($){let Q=[],Z=[];for(let K=0;K<$.commands.length;K++){let J=$.commands[K];switch(J.type){case"M":if(Z.length>0)Q.push({points:Z,closed:!1});Z=[{x:J.x,y:J.y}];break;case"L":Z.push({x:J.x,y:J.y});break;case"Q":{let q=Z[Z.length-1];if(q)for(let W=1;W<=8;W++){let H=W/8,_=1-H,N=_*_*q.x+2*_*H*J.x1+H*H*J.x,V=_*_*q.y+2*_*H*J.y1+H*H*J.y;Z.push({x:N,y:V})}break}case"C":{let q=Z[Z.length-1];if(q)for(let W=1;W<=12;W++){let H=W/12,_=1-H,N=_*_*_*q.x+3*_*_*H*J.x1+3*_*H*H*J.x2+H*H*H*J.x,V=_*_*_*q.y+3*_*_*H*J.y1+3*_*H*H*J.y2+H*H*H*J.y;Z.push({x:N,y:V})}break}case"Z":if(Z.length>0)Q.push({points:Z,closed:!0}),Z=[];break}}if(Z.length>0)Q.push({points:Z,closed:!1});return Q}function $9($,Q){let Z={width:Q.width,lineCap:Q.lineCap??"butt",lineJoin:Q.lineJoin??"miter",miterLimit:Q.miterLimit??4},K=aH($),J=[];for(let U=0;U<K.length;U++){let W=K[U];if(W.points.length<2)continue;let H=W.closed?iH(W.points,Z):sH(W.points,Z);J.push(...H)}let q=$.bounds;if(q){let U=Z.width/2;q={xMin:q.xMin-U,yMin:q.yMin-U,xMax:q.xMax+U,yMax:q.yMax+U}}return{commands:J,bounds:q}}function rH($){let Q=1/0,Z=1/0,K=-1/0,J=-1/0;for(let q=0;q<$.length;q++){let U=$[q];switch(U.type){case"M":case"L":Q=Math.min(Q,U.x),K=Math.max(K,U.x),Z=Math.min(Z,U.y),J=Math.max(J,U.y);break;case"Q":Q=Math.min(Q,U.x,U.x1),K=Math.max(K,U.x,U.x1),Z=Math.min(Z,U.y,U.y1),J=Math.max(J,U.y,U.y1);break;case"C":Q=Math.min(Q,U.x,U.x1,U.x2),K=Math.max(K,U.x,U.x1,U.x2),Z=Math.min(Z,U.y,U.y1,U.y2),J=Math.max(J,U.y,U.y1,U.y2);break;case"Z":break}}if(!Number.isFinite(Q))return null;return{xMin:Q,yMin:Z,xMax:K,yMax:J}}function Q9($,Q){let Z=[];for(let J=0;J<$.commands.length;J++){let q=$.commands[J];switch(q.type){case"M":case"L":Z.push({type:q.type,x:q.x+q.y*Q,y:q.y});break;case"Q":Z.push({type:"Q",x1:q.x1+q.y1*Q,y1:q.y1,x:q.x+q.y*Q,y:q.y});break;case"C":Z.push({type:"C",x1:q.x1+q.y1*Q,y1:q.y1,x2:q.x2+q.y2*Q,y2:q.y2,x:q.x+q.y*Q,y:q.y});break;case"Z":Z.push({type:"Z"});break}}let K=rH(Z);return{commands:Z,bounds:K,flags:$.flags}}function Z9($,Q){let Z=[];for(let J=0;J<$.commands.length;J++){let q=$.commands[J];switch(q.type){case"M":case"L":Z.push({type:q.type,x:q.x*Q,y:q.y});break;case"Q":Z.push({type:"Q",x1:q.x1*Q,y1:q.y1,x:q.x*Q,y:q.y});break;case"C":Z.push({type:"C",x1:q.x1*Q,y1:q.y1,x2:q.x2*Q,y2:q.y2,x:q.x*Q,y:q.y});break;case"Z":Z.push({type:"Z"});break}}let K=$.bounds;if(K)K={xMin:K.xMin*Q,yMin:K.yMin,xMax:K.xMax*Q,yMax:K.yMax};return{commands:Z,bounds:K,flags:$.flags}}function K9($,Q){if(Q===0)return{...$,commands:[...$.commands]};let Z=tH($),K=[];for(let q=0;q<Z.length;q++){let U=Z[q];if(U.length<3)continue;let W=eH(U,Q);if(W.length>0){K.push({type:"M",x:W[0].x,y:W[0].y});for(let H=1;H<W.length;H++)K.push({type:"L",x:W[H].x,y:W[H].y});K.push({type:"Z"})}}let J=null;if(K.length>0){let q=1/0,U=1/0,W=-1/0,H=-1/0;for(let _=0;_<K.length;_++){let N=K[_];if(N.type==="M"||N.type==="L")q=Math.min(q,N.x),U=Math.min(U,N.y),W=Math.max(W,N.x),H=Math.max(H,N.y)}if(Number.isFinite(q))J={xMin:q,yMin:U,xMax:W,yMax:H}}return{commands:K,bounds:J,flags:$.flags}}function tH($){let Q=[],Z=[];for(let K=0;K<$.commands.length;K++){let J=$.commands[K];switch(J.type){case"M":if(Z.length>0)Q.push(Z);Z=[{x:J.x,y:J.y}];break;case"L":Z.push({x:J.x,y:J.y});break;case"Q":{let q=Z[Z.length-1];if(q)for(let W=1;W<=8;W++){let H=W/8,_=1-H,N=_*_*q.x+2*_*H*J.x1+H*H*J.x,V=_*_*q.y+2*_*H*J.y1+H*H*J.y;Z.push({x:N,y:V})}break}case"C":{let q=Z[Z.length-1];if(q)for(let W=1;W<=12;W++){let H=W/12,_=1-H,N=_*_*_*q.x+3*_*_*H*J.x1+3*_*H*H*J.x2+H*H*H*J.x,V=_*_*_*q.y+3*_*_*H*J.y1+3*_*H*H*J.y2+H*H*H*J.y;Z.push({x:N,y:V})}break}case"Z":if(Z.length>0)Q.push(Z),Z=[];break}}if(Z.length>0)Q.push(Z);return Q}function eH($,Q){let Z=$.length;if(Z<3)return $;let K=0;for(let W=0;W<Z;W++){let H=(W+1)%Z,_=$[W],N=$[H];if(_&&N)K+=(N.x-_.x)*(N.y+_.y)}let J=K<0?-1:1,q=Q*J,U=[];for(let W=0;W<Z;W++){let H=$[(W-1+Z)%Z],_=$[W],N=$[(W+1)%Z];if(!H||!_||!N)continue;let V={x:_.x-H.x,y:_.y-H.y},X={x:N.x-_.x,y:N.y-_.y},j=Math.sqrt(V.x*V.x+V.y*V.y),z=Math.sqrt(X.x*X.x+X.y*X.y);if(j===0||z===0){U.push(_);continue}V.x/=j,V.y/=j,X.x/=z,X.y/=z;let G={x:-V.y,y:V.x},Y={x:-X.y,y:X.x},E=(G.x+Y.x)/2,w=(G.y+Y.y)/2,F=Math.sqrt(E*E+w*w);if(F>0.001){E/=F,w/=F;let A=G.x*Y.x+G.y*Y.y,B=A>-0.999?1/Math.sqrt((1+A)/2):1,L=Math.min(B,3);U.push({x:_.x+E*q*L,y:_.y+w*q*L})}else U.push(_)}return U}z6();var JK=new WeakMap,T5=null;function m0(){if(!T5)T5=new a8;return T5}var g9=null,qK=0;function $4($){if($<=qK&&g9)return g9.fill(0,0,$),g9;let Q=Math.max($,4096);return g9=new Uint8Array(Q),qK=Q,g9}function WK($,Q,Z){let K=Z===4?4:Z===2||Z===3?3:Z===0?0.125:1,J=Z===0?Math.ceil($/8):Math.ceil($*K),q=J*Q,U=$4(q);return{width:$,rows:Q,pitch:J,buffer:U.subarray(0,q),pixelMode:Z,numGrays:Z===0?2:256}}var UK=new WeakMap;function HK($){if($&w6.UnscaledComponentOffset)return!1;if($&w6.ScaledComponentOffset)return!0;return!1}function b0($){return Math.round($/64)*64}function g0($,Q,Z,K=0,J){if(K>32)return null;let q=$.getGlyph(Q);if(!q||q.type==="empty")return null;let U=J?.roundCompositeOffsets??!0;if(q.type==="simple"){let j=[],z=[],G=[],Y=[],E=0;for(let w of q.contours){for(let F of w)j.push(Math.round(F.x*Z)),z.push(Math.round(F.y*Z)),G.push(F.onCurve?1:0),E++;Y.push(E-1)}return{xCoords:j,yCoords:z,flags:new Uint8Array(G),contourEnds:Y}}let W=[],H=[],_=[],N=[],V=[],X=0;for(let j of q.components){let z=g0($,j.glyphId,Z,K+1,{roundCompositeOffsets:U});if(!z||z.xCoords.length===0)continue;let[G,Y,E,w]=j.transform,F=(j.flags&w6.ArgsAreXYValues)!==0,A=Array(z.xCoords.length),B=Array(z.yCoords.length);for(let M=0;M<z.xCoords.length;M++){let P=z.xCoords[M],T=z.yCoords[M];A[M]=Math.round(G*P+E*T),B[M]=Math.round(Y*P+w*T)}let L=0,O=0;if(F){let{arg1:M,arg2:P}=j;if(HK(j.flags)){let T=Math.round(M*Z),x=Math.round(P*Z);L=Math.round(G*T+E*x),O=Math.round(Y*T+w*x)}else L=Math.round(M*Z),O=Math.round(P*Z);if(U&&j.flags&w6.RoundXYToGrid)L=b0(L),O=b0(O)}else{let{arg1:M,arg2:P}=j;if(M>=0&&M<V.length&&P>=0&&P<A.length){let T=V[M];L=T.x-A[P],O=T.y-B[P]}}for(let M=0;M<A.length;M++){let P=A[M]+L,T=B[M]+O;W.push(P),H.push(T),_.push(z.flags[M]??0),V.push({x:P,y:T})}for(let M=0;M<z.contourEnds.length;M++)N.push(X+z.contourEnds[M]);X+=A.length}if(W.length===0)return null;return{xCoords:W,yCoords:H,flags:new Uint8Array(_),contourEnds:N}}function Q4($,Q,Z,K,J){if(Z.type!=="composite")return null;if(J>16)return null;let q=[],U=[],W=[],H=[],_=[],N=0;for(let V=0;V<Z.components.length;V++){let X=Z.components[V],j=_K($,Q,X.glyphId,K,J+1);if(!j||j.xCoords.length===0)continue;let[z,G,Y,E]=X.transform,w=(X.flags&w6.ArgsAreXYValues)!==0,F=0,A=0;if(w){let{arg1:B,arg2:L}=X;if(HK(X.flags)){let O=z*B+Y*L,M=G*B+E*L;B=O,L=M}if(F=u6(B,$.ctx.scaleFix),A=u6(L,$.ctx.scaleFix),X.flags&w6.RoundXYToGrid)F=b0(F),A=b0(A)}else{let{arg1:B,arg2:L}=X;if(B>=0&&B<_.length&&L>=0&&L<j.xCoords.length){let O=_[B],M=z*j.xCoords[L]+Y*j.yCoords[L],P=G*j.xCoords[L]+E*j.yCoords[L];F=Math.round(O.x-M),A=Math.round(O.y-P)}}for(let B=0;B<j.xCoords.length;B++){let L=j.xCoords[B],O=j.yCoords[B],M=Math.round(z*L+Y*O+F),P=Math.round(G*L+E*O+A);q.push(M),U.push(P),W.push(j.flags[B]??0),_.push({x:M,y:P})}for(let B=0;B<j.contourEnds.length;B++)H.push(N+j.contourEnds[B]);N+=j.xCoords.length}if(q.length===0)return null;return{xCoords:q,yCoords:U,flags:new Uint8Array(W),contourEnds:H,error:null}}function _K($,Q,Z,K,J=0){let q=`${Z}:${K}:${$.ctx.lightMode?"light":"full"}`,U=UK.get(Q);if(!U)U=new Map,UK.set(Q,U);let W=U.get(q);if(W!==void 0)return W;let H=Q.getGlyph(Z);if(!H||H.type==="empty")return U.set(q,null),null;if(B0($,K,K))return U.set(q,null),null;if(H.type==="composite"&&H.instructions.length===0){let X=Q4($,Q,H,K,J);if(X&&X.xCoords.length>0)return U.set(q,X),X}let N=K4(Q,Z,$.ctx.scale);if(!N)return U.set(q,null),null;let V=M0($,N);if(V.error||V.xCoords.length===0)return U.set(q,null),null;return U.set(q,V),V}function Z4($){if(!$.isTrueType||!$.hasHinting)return null;let Q=JK.get($);if(Q)return Q;let Z=$.cvtTable,K=Z?new Int32Array(Z.values):void 0,J=$.maxp;Q=F0($.unitsPerEm,"maxStackElements"in J?J.maxStackElements:256,"maxStorage"in J?J.maxStorage:64,"maxFunctionDefs"in J?J.maxFunctionDefs:64,"maxTwilightPoints"in J?J.maxTwilightPoints:16,K);let q=$.fpgm;if(q)L0(Q,q.instructions);let U=$.prep;if(U)D0(Q,U.instructions);return JK.set($,Q),Q}function K4($,Q,Z){let K=$.getGlyph(Q);if(!K||K.type==="empty")return null;let J=[],q=[],U=[],W=[],H=$.advanceWidth(Q),_=$.leftSideBearing(Q);if(K.type==="composite"&&K.instructions.length>0&&Z){let N=g0($,Q,Z);if(!N||N.xCoords.length===0)return null;let V=1/Z;for(let X=0;X<N.xCoords.length;X++)J.push(N.xCoords[X]*V),q.push(N.yCoords[X]*V),U.push(N.flags[X]??0);for(let X=0;X<N.contourEnds.length;X++)W.push(N.contourEnds[X])}else{let N=K.type==="simple"?K.contours:$.getGlyphContours(Q);if(!N||N.length===0)return null;let V=0;for(let X=0;X<N.length;X++){let j=N[X];for(let z=0;z<j.length;z++){let G=j[z];J.push(G.x),q.push(G.y),U.push(G.onCurve?1:0),V++}W.push(V-1)}}return{xCoords:J,yCoords:q,flags:new Uint8Array(U),contourEnds:W,instructions:K.instructions,lsb:_,advanceWidth:H}}function NK($,Q,Z,K){let{xCoords:J,yCoords:q,flags:U,contourEnds:W}=Q,H=0,_=0;for(let N=0;N<J.length;N++){let V=N===W[H],X=(J[N]<<2|0)+(Z<<8),j=(-q[N]<<2|0)+(K<<8),z=(U[N]&1)!==0;if(N===_)$.moveTo(X,j);else if(z)$.lineTo(X,j);else{let G=V?_:N+1,Y=(J[G]<<2|0)+(Z<<8),E=(-q[G]<<2|0)+(K<<8);if((U[G]&1)!==0){if($.conicTo(X,j,Y,E),!V)N++}else $.conicTo(X,j,X+Y>>1,j+E>>1)}if(V){let G=(J[_]<<2|0)+(Z<<8),Y=(-q[_]<<2|0)+(K<<8);if(z&&N!==_)$.lineTo(G,Y);H++,_=N+1}}}var J4=256;function r6($,Q){let{width:Z,height:K,scale:J,offsetX:q=0,offsetY:U=0,pixelMode:W=1,fillRule:H=0,flipY:_=!0}=Q,N=a(Z,K,W),V=m0();if(V.setClip(0,0,Z,K),K>J4){let X=()=>Y8(V,$,J,q,U,_);V.renderWithBands(N,X,{minY:0,maxY:K},H)}else V.setBandBounds(0,K),V.reset(),Y8(V,$,J,q,U,_),V.sweep(N,H);return N}function u0($,Q,Z,K){let J=K?.padding??1,q=K?.pixelMode??1;if((K?.hinting??!1)&&$.hasHinting){let G=q4($,Q,Z,J,q);if(G)return G}if($.isTrueType){let G=Z*64/$.unitsPerEm,Y=g0($,Q,G,0,{roundCompositeOffsets:!1});if(Y){let E=U4(Y,J,q);if(E)return E}}let W=y6($,Q);if(!W)return null;let H=Z/$.unitsPerEm,_=q8(W,H,!0,!0);if(!_)return{bitmap:a(1,1,q),bearingX:0,bearingY:0};let N=_.maxX-_.minX+J*2,V=_.maxY-_.minY+J*2;if(N<=0||V<=0)return{bitmap:a(1,1,q),bearingX:0,bearingY:0};let X=-_.minX+J,j=-_.minY+J;return{bitmap:r6(W,{width:N,height:V,scale:H,offsetX:X,offsetY:j,pixelMode:q,flipY:!0}),bearingX:_.minX-J,bearingY:-(_.minY-J)}}function q4($,Q,Z,K,J){let q=Z4($);if(!q)return null;let U=Math.round(Z);q.ctx.lightMode=J===1;let W=_K(q,$,Q,U);if(!W)return null;let H=W;if(J===1){let I=U*64/$.unitsPerEm,f=g0($,Q,I,0,{roundCompositeOffsets:!1});if(f&&f.xCoords.length===W.xCoords.length)H={...W,xCoords:f.xCoords}}let{xCoords:_,yCoords:N}=H,V=_[0],X=N[0],j=_[0],z=N[0];for(let I=1;I<_.length;I++){let f=_[I],l=N[I];if(f<V)V=f;if(f>j)j=f;if(l<X)X=l;if(l>z)z=l}if(!Number.isFinite(V))return{bitmap:a(1,1,J),bearingX:0,bearingY:0};let G=$.getGlyphBounds(Q);if(G){let I=Z/$.unitsPerEm,f=(G.xMax-G.xMin)*I,l=(G.yMax-G.yMin)*I,C=Math.max(f*8,Z*8,f+64),R=Math.max(l*8,Z*8,l+64),y=(j-V)/64,u=(z-X)/64;if(y>C||u>R)return null}let Y=Math.floor(V/64),E=Math.floor(X/64),w=Math.floor((j+63)/64),F=Math.floor((z+63)/64),A=w-Y+K*2,B=F-E+K*2;if(j6?.HINT_TRACE_GLYPH===String(Q))console.log("trace hinted bounds",{glyphId:Q,minX26:V,maxX26:j,minY26:X,maxY26:z,bMinX:Y,bMaxX:w,bMinY:E,bMaxY:F,width:A,height:B});if(A<=0||B<=0)return{bitmap:a(1,1,J),bearingX:0,bearingY:0};let L=WK(A,B,J),O=m0();O.setClip(0,0,A,B),O.reset();let M=-Y+K,P=F+K,T=()=>NK(O,H,M,P);try{T(),O.sweep(L,0)}catch(I){if(I instanceof S8)O.reset(),O.renderWithBands(L,T,{minY:0,maxY:B,minX:0,maxX:A},0);else throw I}let x=a(A,B,J);return x.buffer.set(L.buffer),{bitmap:x,bearingX:Y-K,bearingY:F+K}}function U4($,Q,Z){let{xCoords:K,yCoords:J}=$;if(K.length===0)return null;let q=K[0],U=J[0],W=K[0],H=J[0];for(let L=1;L<K.length;L++){let O=K[L],M=J[L];if(O<q)q=O;if(O>W)W=O;if(M<U)U=M;if(M>H)H=M}if(!Number.isFinite(q))return{bitmap:a(1,1,Z),bearingX:0,bearingY:0};let _=Math.floor(q/64),N=Math.floor(U/64),V=Math.floor((W+63)/64),X=Math.floor((H+63)/64),j=V-_+Q*2,z=X-N+Q*2;if(j<=0||z<=0)return{bitmap:a(1,1,Z),bearingX:0,bearingY:0};let G=WK(j,z,Z),Y=m0();Y.setClip(0,0,j,z),Y.reset();let E=-_+Q,w=X+Q,F={xCoords:$.xCoords,yCoords:$.yCoords,flags:$.flags,contourEnds:$.contourEnds,error:null},A=()=>NK(Y,F,E,w);try{A(),Y.sweep(G,0)}catch(L){if(L instanceof S8)Y.reset(),Y.renderWithBands(G,A,{minY:0,maxY:z,minX:0,maxX:j},0);else throw L}let B=a(j,z,Z);return B.buffer.set(G.buffer),{bitmap:B,bearingX:_-Q,bearingY:X+Q}}function VK($,Q,Z,K){let J=Z/$.unitsPerEm,q=K?.padding??2,U=K?.pixelMode??1,W=[],H=0,_=0,N=0,V=[...Q];for(let w=0;w<V.length;w++){let A=V[w].codePointAt(0);if(A===void 0)continue;let B=$.glyphId(A);if(B===void 0)continue;let L=$.advanceWidth(B)*J,O=y6($,B);if(O?.bounds)_=Math.max(_,-O.bounds.yMin*J),N=Math.max(N,O.bounds.yMax*J);W.push({glyphId:B,advance:L}),H+=L}if(W.length===0)return null;let X=Math.ceil(H)+q*2,j=Math.ceil(_+N)+q*2,z=a(X,j,U),G=m0();G.setClip(0,0,X,j);let Y=q,E=N+q;for(let w=0;w<W.length;w++){let F=W[w],A=y6($,F.glyphId);if(A)G.reset(),Y8(G,A,J,Y,E,!0),G.sweep(z);Y+=F.advance}return z}function u9($){let Q=$.pixelMode===2,Z=$.pixelMode===3,K=new Uint8Array($.width*$.rows*4),J=$.pitch,q=Math.abs(J),U=J<0?($.rows-1)*q:0;for(let W=0;W<$.rows;W++){let H=U+W*J;for(let _=0;_<$.width;_++){let N=(W*$.width+_)*4;if($.pixelMode===1){let V=H+_,X=$.buffer[V]??0;K[N]=255-X,K[N+1]=255-X,K[N+2]=255-X,K[N+3]=255}else if($.pixelMode===0){let V=H+(_>>3),X=7-(_&7),j=($.buffer[V]??0)>>X&1?255:0;K[N]=255-j,K[N+1]=255-j,K[N+2]=255-j,K[N+3]=255}else if(Q||Z){let V=H+_*3,X=$.buffer[V]??0,j=$.buffer[V+1]??0,z=$.buffer[V+2]??0;K[N]=255-X,K[N+1]=255-j,K[N+2]=255-z,K[N+3]=255}else if($.pixelMode===4){let V=H+_*4;K[N]=$.buffer[V]??0,K[N+1]=$.buffer[V+1]??0,K[N+2]=$.buffer[V+2]??0,K[N+3]=$.buffer[V+3]??0}else{let V=H+_,X=$.buffer[V]??0;K[N]=255-X,K[N+1]=255-X,K[N+2]=255-X,K[N+3]=255}}}return K}function x9($){if($.pixelMode===1&&$.pitch===$.width)return $.buffer;let Q=new Uint8Array($.width*$.rows),Z=$.pitch,K=Math.abs(Z),J=Z<0?($.rows-1)*K:0;for(let q=0;q<$.rows;q++){let U=J+q*Z;for(let W=0;W<$.width;W++){let H=q*$.width+W;if($.pixelMode===1)Q[H]=$.buffer[U+W]??0;else if($.pixelMode===0){let _=U+(W>>3),N=7-(W&7);Q[H]=($.buffer[_]??0)>>N&1?255:0}else if($.pixelMode===2||$.pixelMode===3){let _=U+W*3,N=$.buffer[_]??0,V=$.buffer[_+1]??0,X=$.buffer[_+2]??0;Q[H]=Math.round((N+V+X)/3)}else if($.pixelMode===4){let _=U+W*4;Q[H]=$.buffer[_+3]??0}}}return Q}z6();function x0($,Q,Z){let{fontSize:K,padding:J=1,maxWidth:q=2048,maxHeight:U=2048,pixelMode:W=1}=Z,H=[],_=K/$.unitsPerEm;for(let G=0;G<Q.length;G++){let Y=Q[G],E=u0($,Y,K,{padding:0,pixelMode:W});if(!E)continue;let w=$.advanceWidth(Y)*_;H.push({glyphId:Y,bitmap:E.bitmap,bearingX:E.bearingX,bearingY:E.bearingY,advance:w})}H.sort((G,Y)=>Y.bitmap.rows-G.bitmap.rows);let{width:N,height:V,placements:X}=W4(H.map((G)=>({width:G.bitmap.width+J*2,height:G.bitmap.rows+J*2})),q,U),j=a(N,V,W),z=new Map;for(let G=0;G<H.length;G++){let Y=H[G],E=X[G];if(!E.placed)continue;H4(Y.bitmap,j,E.x+J,E.y+J),z.set(Y.glyphId,{glyphId:Y.glyphId,atlasX:E.x+J,atlasY:E.y+J,width:Y.bitmap.width,height:Y.bitmap.rows,bearingX:Y.bearingX,bearingY:Y.bearingY,advance:Y.advance})}return{bitmap:j,glyphs:z,fontSize:K}}function jK($,Q){let Z=[];for(let K=32;K<=126;K++){let J=$.glyphId(K);if(J!==void 0&&J!==0)Z.push(J)}return x0($,Z,Q)}function zK($,Q,Z){let K=new Set,J=[...Q];for(let q=0;q<J.length;q++){let W=J[q].codePointAt(0);if(W===void 0)continue;let H=$.glyphId(W);if(H!==void 0&&H!==0)K.add(H)}return x0($,[...K],Z)}function W4($,Q,Z){let K=[],J=[],q=0,U=0;for(let _=0;_<$.length;_++){let N=$[_],V=!1,X=-1,j=Z;for(let z=0;z<K.length;z++){let G=K[z];if(G.width+N.width<=Q&&N.height<=G.height){if(G.y<j)X=z,j=G.y}}if(X>=0){let z=K[X];J.push({x:z.width,y:z.y,placed:!0}),z.width+=N.width,q=Math.max(q,z.width),V=!0}else{let z=U;if(z+N.height<=Z&&N.width<=Q)K.push({y:z,height:N.height,width:N.width}),J.push({x:0,y:z,placed:!0}),U=z+N.height,q=Math.max(q,N.width),V=!0}if(!V)J.push({x:0,y:0,placed:!1})}let W=XK(q),H=XK(U);return{width:Math.min(W,Q),height:Math.min(H,Z),placements:J}}function H4($,Q,Z,K){let J=$.pixelMode===2?3:1;for(let q=0;q<$.rows;q++){let U=q*$.pitch,W=(K+q)*Q.pitch+Z*J;for(let H=0;H<$.width*J;H++)Q.buffer[W+H]=$.buffer[U+H]}}function XK($){if($<=0)return 1;return $--,$|=$>>1,$|=$>>2,$|=$>>4,$|=$>>8,$|=$>>16,$+1}function GK($){let{bitmap:Q}=$,Z=new Uint8Array(Q.width*Q.rows*4);for(let K=0;K<Q.rows;K++)for(let J=0;J<Q.width;J++){let q=K*Q.pitch+J,U=(K*Q.width+J)*4,W=Q.buffer[q]??0;Z[U]=255,Z[U+1]=255,Z[U+2]=255,Z[U+3]=W}return Z}function YK($){let{bitmap:Q}=$;if(Q.pitch===Q.width)return Q.buffer;let Z=new Uint8Array(Q.width*Q.rows);for(let K=0;K<Q.rows;K++)for(let J=0;J<Q.width;J++)Z[K*Q.width+J]=Q.buffer[K*Q.pitch+J];return Z}function EK($,Q){let Z=$.glyphs.get(Q);if(!Z)return null;let{bitmap:K}=$;return{u0:Z.atlasX/K.width,v0:Z.atlasY/K.rows,u1:(Z.atlasX+Z.width)/K.width,v1:(Z.atlasY+Z.height)/K.rows}}z6();function _4($,Q,Z){return Math.max(Math.min($,Q),Math.min(Math.max($,Q),Z))}function N4($,Q,Z,K){let J=K.x-Z.x,q=K.y-Z.y,U=J*J+q*q;if(U<0.0000000001)return{distance:Math.sqrt(($-Z.x)**2+(Q-Z.y)**2),t:0};let W=(($-Z.x)*J+(Q-Z.y)*q)/U;W=Math.max(0,Math.min(1,W));let H=Math.sqrt(($-Z.x-W*J)**2+(Q-Z.y-W*q)**2);return{distance:(J*(Q-Z.y)-q*($-Z.x)>=0?1:-1)*H,t:W}}function V4($,Q,Z,K){let J=K.x-Z.x,q=K.y-Z.y,U=J*J+q*q;if(U<0.0000000001)return Math.sqrt(($-Z.x)**2+(Q-Z.y)**2);let W=(($-Z.x)*J+(Q-Z.y)*q)/U;return W=Math.max(0,Math.min(1,W)),Math.sqrt(($-Z.x-W*J)**2+(Q-Z.y-W*q)**2)}function X4($,Q,Z,K,J){let q=Z.x-2*K.x+J.x,U=Z.y-2*K.y+J.y,W=Math.min(Math.sqrt((Z.x-$)**2+(Z.y-Q)**2),Math.sqrt((J.x-$)**2+(J.y-Q)**2)),H=W===Math.sqrt((Z.x-$)**2+(Z.y-Q)**2)?0:1;for(let Y=1;Y<6;Y++){let E=Y/6;for(let L=0;L<3;L++){let O=1-E,M=O*O*Z.x+2*O*E*K.x+E*E*J.x,P=O*O*Z.y+2*O*E*K.y+E*E*J.y,T=2*(O*(K.x-Z.x)+E*(J.x-K.x)),x=2*(O*(K.y-Z.y)+E*(J.y-K.y)),I=M-$,f=P-Q,l=I*T+f*x,C=T*T+x*x+I*2*q+f*2*U;if(Math.abs(C)<0.0000000001)break;E=Math.max(0,Math.min(1,E-l/C))}let w=1-E,F=w*w*Z.x+2*w*E*K.x+E*E*J.x,A=w*w*Z.y+2*w*E*K.y+E*E*J.y,B=Math.sqrt((F-$)**2+(A-Q)**2);if(B<W)W=B,H=E}let _=1-H,N=2*(_*(K.x-Z.x)+H*(J.x-K.x)),V=2*(_*(K.y-Z.y)+H*(J.y-K.y)),X=_*_*Z.x+2*_*H*K.x+H*H*J.x,j=_*_*Z.y+2*_*H*K.y+H*H*J.y;return{distance:(N*(Q-j)-V*($-X)>=0?1:-1)*W,t:H}}function j4($,Q,Z,K,J){let q=Z.x-2*K.x+J.x,U=Z.y-2*K.y+J.y,W=Math.min(Math.sqrt((Z.x-$)**2+(Z.y-Q)**2),Math.sqrt((J.x-$)**2+(J.y-Q)**2));for(let H=1;H<6;H++){let _=H/6;for(let X=0;X<3;X++){let j=1-_,z=j*j*Z.x+2*j*_*K.x+_*_*J.x,G=j*j*Z.y+2*j*_*K.y+_*_*J.y,Y=2*(j*(K.x-Z.x)+_*(J.x-K.x)),E=2*(j*(K.y-Z.y)+_*(J.y-K.y)),w=z-$,F=G-Q,A=Y*Y+E*E+w*2*q+F*2*U;if(Math.abs(A)<0.0000000001)break;_=Math.max(0,Math.min(1,_-(w*Y+F*E)/A))}let N=1-_,V=Math.sqrt((N*N*Z.x+2*N*_*K.x+_*_*J.x-$)**2+(N*N*Z.y+2*N*_*K.y+_*_*J.y-Q)**2);if(V<W)W=V}return W}function z4($,Q,Z,K,J,q){let U=Math.min(Math.sqrt((Z.x-$)**2+(Z.y-Q)**2),Math.sqrt((q.x-$)**2+(q.y-Q)**2)),W=U===Math.sqrt((Z.x-$)**2+(Z.y-Q)**2)?0:1;for(let F=1;F<6;F++){let A=F/6;for(let f=0;f<3;f++){let l=1-A,C=l*l,R=C*l,y=A*A,u=y*A,d=R*Z.x+3*C*A*K.x+3*l*y*J.x+u*q.x,c=R*Z.y+3*C*A*K.y+3*l*y*J.y+u*q.y,n=3*C*(K.x-Z.x)+6*l*A*(J.x-K.x)+3*y*(q.x-J.x),e=3*C*(K.y-Z.y)+6*l*A*(J.y-K.y)+3*y*(q.y-J.y),g=6*l*(J.x-2*K.x+Z.x)+6*A*(q.x-2*J.x+K.x),X6=6*l*(J.y-2*K.y+Z.y)+6*A*(q.y-2*J.y+K.y),S=d-$,q6=c-Q,b=S*n+q6*e,L6=n*n+e*e+S*g+q6*X6;if(Math.abs(L6)<0.0000000001)break;A=Math.max(0,Math.min(1,A-b/L6))}let B=1-A,L=B*B,O=L*B,M=A*A,P=M*A,T=O*Z.x+3*L*A*K.x+3*B*M*J.x+P*q.x,x=O*Z.y+3*L*A*K.y+3*B*M*J.y+P*q.y,I=Math.sqrt((T-$)**2+(x-Q)**2);if(I<U)U=I,W=A}let H=1-W,_=H*H,N=W*W,V=3*_*(K.x-Z.x)+6*H*W*(J.x-K.x)+3*N*(q.x-J.x),X=3*_*(K.y-Z.y)+6*H*W*(J.y-K.y)+3*N*(q.y-J.y),j=_*H,z=N*W,G=j*Z.x+3*_*W*K.x+3*H*N*J.x+z*q.x,Y=j*Z.y+3*_*W*K.y+3*H*N*J.y+z*q.y;return{distance:(V*(Q-Y)-X*($-G)>=0?1:-1)*U,t:W}}function G4($,Q,Z,K,J,q){let U=Math.min(Math.sqrt((Z.x-$)**2+(Z.y-Q)**2),Math.sqrt((q.x-$)**2+(q.y-Q)**2));for(let W=1;W<6;W++){let H=W/6;for(let G=0;G<3;G++){let Y=1-H,E=Y*Y,w=E*Y,F=H*H,A=F*H,B=w*Z.x+3*E*H*K.x+3*Y*F*J.x+A*q.x,L=w*Z.y+3*E*H*K.y+3*Y*F*J.y+A*q.y,O=3*E*(K.x-Z.x)+6*Y*H*(J.x-K.x)+3*F*(q.x-J.x),M=3*E*(K.y-Z.y)+6*Y*H*(J.y-K.y)+3*F*(q.y-J.y),P=6*Y*(J.x-2*K.x+Z.x)+6*H*(q.x-2*J.x+K.x),T=6*Y*(J.y-2*K.y+Z.y)+6*H*(q.y-2*J.y+K.y),x=B-$,I=L-Q,f=O*O+M*M+x*P+I*T;if(Math.abs(f)<0.0000000001)break;H=Math.max(0,Math.min(1,H-(x*O+I*M)/f))}let _=1-H,N=_*_,V=N*_,X=H*H,j=X*H,z=Math.sqrt((V*Z.x+3*N*H*K.x+3*_*X*J.x+j*q.x-$)**2+(V*Z.y+3*N*H*K.y+3*_*X*J.y+j*q.y-Q)**2);if(z<U)U=z}return U}function wK($){switch($.type){case"line":return{x:$.p1.x-$.p0.x,y:$.p1.y-$.p0.y};case"quadratic":return{x:2*($.p1.x-$.p0.x),y:2*($.p1.y-$.p0.y)};case"cubic":return{x:3*($.p1.x-$.p0.x),y:3*($.p1.y-$.p0.y)}}}function AK($){switch($.type){case"line":return{x:$.p1.x-$.p0.x,y:$.p1.y-$.p0.y};case"quadratic":return{x:2*($.p2.x-$.p1.x),y:2*($.p2.y-$.p1.y)};case"cubic":return{x:3*($.p3.x-$.p2.x),y:3*($.p3.y-$.p2.y)}}}function FK($){let Q=Math.sqrt($.x*$.x+$.y*$.y);if(Q<0.0000000001)return{x:0,y:0};return{x:$.x/Q,y:$.y/Q}}function Y4($,Q){return $.x*Q.x+$.y*Q.y}function LK($,Q,Z=Math.PI/3){let K=FK($),J=FK(Q),q=Y4(K,J),U=Math.acos(Math.max(-1,Math.min(1,q)));return U>Z&&U<Math.PI-Z}function BK($){let Q=Math.PI/4;for(let Z=0;Z<$.length;Z++){let K=$[Z];if(K.length===0)continue;if(K.length===1){K[0].color=0;continue}let J=0;for(let q=0;q<K.length;q++){let U=K[q],W=K[(q-1+K.length)%K.length];if(q===0)U.color=J;else{let H=AK(W),_=wK(U);if(LK(H,_,Q))J=(J+1)%3;U.color=J}}if(K.length>=2){let q=K[K.length-1],U=K[0],W=AK(q),H=wK(U);if(LK(W,H,Q)){if(q.color===U.color){let _=K[K.length-2]?.color??0,N=K[1]?.color??0;for(let V=0;V<3;V++)if(V!==U.color&&V!==_){q.color=V;break}}}}}}function E4($,Q,Z,K,J){let q=[],U=[],W=null,H=null,_=(N,V)=>({x:N*Q+Z,y:J?-(V*Q)+K:V*Q+K});for(let N=0;N<$.commands.length;N++){let V=$.commands[N];switch(V.type){case"M":if(U.length>0)q.push(U),U=[];W=_(V.x,V.y),H=W;break;case"L":if(W){let X=_(V.x,V.y);if(Math.abs(X.x-W.x)>0.000001||Math.abs(X.y-W.y)>0.000001)U.push({type:"line",p0:W,p1:X,color:0,minX:Math.min(W.x,X.x),maxX:Math.max(W.x,X.x),minY:Math.min(W.y,X.y),maxY:Math.max(W.y,X.y)});W=X}break;case"Q":if(W){let X=_(V.x1,V.y1),j=_(V.x,V.y);U.push({type:"quadratic",p0:W,p1:X,p2:j,color:0,minX:Math.min(W.x,X.x,j.x),maxX:Math.max(W.x,X.x,j.x),minY:Math.min(W.y,X.y,j.y),maxY:Math.max(W.y,X.y,j.y)}),W=j}break;case"C":if(W){let X=_(V.x1,V.y1),j=_(V.x2,V.y2),z=_(V.x,V.y);U.push({type:"cubic",p0:W,p1:X,p2:j,p3:z,color:0,minX:Math.min(W.x,X.x,j.x,z.x),maxX:Math.max(W.x,X.x,j.x,z.x),minY:Math.min(W.y,X.y,j.y,z.y),maxY:Math.max(W.y,X.y,j.y,z.y)}),W=z}break;case"Z":if(W&&H){if(Math.abs(W.x-H.x)>0.000001||Math.abs(W.y-H.y)>0.000001)U.push({type:"line",p0:W,p1:H,color:0,minX:Math.min(W.x,H.x),maxX:Math.max(W.x,H.x),minY:Math.min(W.y,H.y),maxY:Math.max(W.y,H.y)});W=H}if(U.length>0)q.push(U),U=[];break}}if(U.length>0)q.push(U);return q}function w4($,Q,Z){switch(Z.type){case"line":return V4($,Q,Z.p0,Z.p1);case"quadratic":return j4($,Q,Z.p0,Z.p1,Z.p2);case"cubic":return G4($,Q,Z.p0,Z.p1,Z.p2,Z.p3)}}function A4($){let Q=[];for(let Z=0;Z<$.length;Z++){let K=$[Z],J=[];for(let q=0;q<K.length;q++){let U=K[q];if(U.type==="line")J.push([U.p0,U.p1]);else if(U.type==="quadratic"){let W=U.p0;for(let H=1;H<=4;H++){let _=H/4,N=1-_,V={x:N*N*U.p0.x+2*N*_*U.p1.x+_*_*U.p2.x,y:N*N*U.p0.y+2*N*_*U.p1.y+_*_*U.p2.y};J.push([W,V]),W=V}}else{let W=U.p0;for(let H=1;H<=4;H++){let _=H/4,N=1-_,V=N*N,X=V*N,j=_*_,z=j*_,G={x:X*U.p0.x+3*V*_*U.p1.x+3*N*j*U.p2.x+z*U.p3.x,y:X*U.p0.y+3*V*_*U.p1.y+3*N*j*U.p2.y+z*U.p3.y};J.push([W,G]),W=G}}}Q.push(J)}return Q}function F4($,Q,Z){let K=0;for(let J=0;J<Z.length;J++){let q=Z[J];for(let U=0;U<q.length;U++){let[W,H]=q[U];if(W.y>Q!==H.y>Q){let _=W.x+(H.x-W.x)*(Q-W.y)/(H.y-W.y);if($<_)K++}}}return(K&1)===1}function O5($,Q,Z){let K=1/0;for(let J=0;J<Z.length;J++){let q=Z[J],U=$<q.minX?q.minX-$:$>q.maxX?$-q.maxX:0,W=Q<q.minY?q.minY-Q:Q>q.maxY?Q-q.maxY:0;if(U*U+W*W>=K*K)continue;let H=w4($,Q,q);if(H<K){if(K=H,H<0.5)break}}return K}function b8($,Q){let{width:Z,height:K,scale:J,offsetX:q=0,offsetY:U=0,flipY:W=!1,spread:H=8}=Q,_=a(Z,K,2),N=E4($,J,q,U,W);if(N.length===0||N.every((F)=>F.length===0))return _.buffer.fill(0),_;BK(N);let V=A4(N),X=N.flat(),j=X.filter((F)=>F.color===0),z=X.filter((F)=>F.color===1),G=X.filter((F)=>F.color===2),Y=j.length>0?j:X,E=z.length>0?z:X,w=G.length>0?G:X;for(let F=0;F<K;F++)for(let A=0;A<Z;A++){let B=A+0.5,L=F+0.5,O=O5(B,L,Y),M=O5(B,L,E),P=O5(B,L,w),x=F4(B,L,V)?1:-1,I=O*x,f=M*x,l=P*x,C=(y)=>{let u=128+y/H*127;return Math.max(0,Math.min(255,Math.round(u)))},R=F*_.pitch+A*3;_.buffer[R]=C(I),_.buffer[R+1]=C(f),_.buffer[R+2]=C(l)}return _}function L4($,Q,Z){let K=[],J=[],q=0,U=0;for(let _=0;_<$.length;_++){let N=$[_],V=!1,X=-1,j=Z;for(let z=0;z<K.length;z++){let G=K[z];if(G.width+N.width<=Q&&N.height<=G.height){if(G.y<j)X=z,j=G.y}}if(X>=0){let z=K[X];J.push({x:z.width,y:z.y,placed:!0}),z.width+=N.width,q=Math.max(q,z.width),V=!0}else{let z=U;if(z+N.height<=Z&&N.width<=Q)K.push({y:z,height:N.height,width:N.width}),J.push({x:0,y:z,placed:!0}),U=z+N.height,q=Math.max(q,N.width),V=!0}if(!V)J.push({x:0,y:0,placed:!1})}let W=DK(q),H=DK(U);return{width:Math.min(W,Q),height:Math.min(H,Z),placements:J}}function DK($){if($<=0)return 1;return $--,$|=$>>1,$|=$>>2,$|=$>>4,$|=$>>8,$|=$>>16,$+1}function D4($,Q,Z,K){for(let J=0;J<$.rows;J++){let q=J*$.pitch,U=(K+J)*Q.pitch+Z*3;for(let W=0;W<$.width*3;W++)Q.buffer[U+W]=$.buffer[q+W]}}function f0($,Q,Z){let{fontSize:K,padding:J=2,maxWidth:q=2048,maxHeight:U=2048,spread:W=4}=Z,H=K/$.unitsPerEm,_=[];for(let G=0;G<Q.length;G++){let Y=Q[G],E=y6($,Y);if(!E||!E.bounds)continue;let w=E.bounds,F=Math.ceil((w.xMax-w.xMin)*H)+W*2,A=Math.ceil((w.yMax-w.yMin)*H)+W*2;if(F<=0||A<=0)continue;let B=b8(E,{width:F,height:A,scale:H,offsetX:-w.xMin*H+W,offsetY:w.yMax*H+W,flipY:!0,spread:W}),L=$.advanceWidth(Y)*H,O=w.xMin*H-W,M=w.yMax*H+W;_.push({glyphId:Y,bitmap:B,bearingX:O,bearingY:M,advance:L})}_.sort((G,Y)=>Y.bitmap.rows-G.bitmap.rows);let{width:N,height:V,placements:X}=L4(_.map((G)=>({width:G.bitmap.width+J*2,height:G.bitmap.rows+J*2})),q,U),j=a(N,V,2),z=new Map;for(let G=0;G<_.length;G++){let Y=_[G],E=X[G];if(!E.placed)continue;D4(Y.bitmap,j,E.x+J,E.y+J),z.set(Y.glyphId,{glyphId:Y.glyphId,atlasX:E.x+J,atlasY:E.y+J,width:Y.bitmap.width,height:Y.bitmap.rows,bearingX:Y.bearingX,bearingY:Y.bearingY,advance:Y.advance})}return{bitmap:j,glyphs:z,fontSize:K}}function MK($,Q){let Z=[];for(let K=32;K<=126;K++){let J=$.glyphId(K);if(J!==void 0&&J!==0)Z.push(J)}return f0($,Z,Q)}function RK($,Q,Z){let K=new Set,J=Array.from(Q);for(let q=0;q<J.length;q++){let W=J[q].codePointAt(0);if(W===void 0)continue;let H=$.glyphId(W);if(H!==void 0&&H!==0)K.add(H)}return f0($,[...K],Z)}function TK($){let{bitmap:Q}=$;if(Q.pitch===Q.width*3)return Q.buffer;let Z=new Uint8Array(Q.width*Q.rows*3);for(let K=0;K<Q.rows;K++)for(let J=0;J<Q.width*3;J++)Z[K*Q.width*3+J]=Q.buffer[K*Q.pitch+J];return Z}function OK($){let{bitmap:Q}=$,Z=new Uint8Array(Q.width*Q.rows*4);for(let K=0;K<Q.rows;K++)for(let J=0;J<Q.width;J++){let q=K*Q.pitch+J*3,U=(K*Q.width+J)*4;Z[U]=Q.buffer[q],Z[U+1]=Q.buffer[q+1],Z[U+2]=Q.buffer[q+2],Z[U+3]=255}return Z}z6();var B4=Math.PI;function M4($,Q,Z){let K=0.5/Z,J=Math.exp(-K),q=J*J,U=Math.sqrt(K/B4);$[0]=U,U*=J,$[1]=U;for(let W=2;W<Q;W++)J*=q,U*=J,$[W]=U}function PK($,Q,Z){let K=$[1],J=$[2],q=$[3];for(let U=0;U<Q;U++){let W=$[U]*Z[0]+(K+$[U+1])*Z[1]+(J+$[U+2])*Z[2]+(q+$[U+3])*Z[3];q=J,J=K,K=$[U],$[U]=W}}function R4($,Q,Z){for(let K=0;K<Z;K++){$[K][K]=Q[2*K+2]+3*Q[0]-4*Q[K+1];for(let J=K+1;J<Z;J++)$[K][J]=$[J][K]=Q[K+J+2]+Q[J-K]+2*(Q[0]-Q[K+1]-Q[J+1])}for(let K=0;K<Z;K++){let J=1/$[K][K];$[K][K]=1;for(let q=0;q<Z;q++){if(q===K)continue;let U=$[q][K]*J;$[q][K]=0;for(let W=0;W<Z;W++)$[q][W]-=$[K][W]*U}for(let q=0;q<Z;q++)$[K][q]*=J}}function T4($,Q,Z,K){let q=[((0.27116402116402116*K+0.09027777777777778)*K+0.20833333333333334)*K+0.43022486772486773,((-0.20337301587301587*K-0.022569444444444444)*K-0.017361111111111112)*K+0.24330357142857142,((0.08134920634920635*K-0.04513888888888889)*K-0.0763888888888889)*K+0.04017857142857143,((-0.013558201058201057*K+0.022569444444444444)*K-0.010416666666666666)*K+0.0014054232804232803],U=new Float64Array(17);U[0]=q[0],U[1]=q[1],U[2]=q[2],U[3]=q[3],PK(U,7,q);let W=new Float64Array(12);M4(W,Q+4,Z*K),PK(W,Q+1,q);let H=[];for(let N=0;N<8;N++)H.push(new Float64Array(8));R4(H,U,Q);let _=new Float64Array(8);for(let N=0;N<Q;N++)_[N]=U[0]-U[N+1]-W[0]+W[N+1];for(let N=0;N<Q;N++){let V=0;for(let X=0;X<Q;X++)V+=H[N][X]*_[X];$[N]=Math.max(0,V)}}function vK($){let Q=new Float64Array(8),Z,K;if($<0.5)Z=0,K=4,Q[1]=0.085*$*$*$,Q[0]=0.5*$-4*Q[1],Q[2]=Q[3]=0;else{let q=Math.sqrt(0.11569*$+0.20591047);Z=Math.floor(Math.log2(q))+1;let U=q/2**(Z-1)-1,W=0.25**Z;K=8-Math.floor((10.1525+0.8335*W)*(1-U)),K=Math.max(K,4),K=Math.min(K,8),T4(Q,K,$,W)}let J=new Float32Array(8);for(let q=0;q<K;q++)J[q]=Q[q];return{level:Z,radius:K,coeff:J}}function O4($,Q,Z,K,J,q){let U=Math.floor((Z+5)/2);for(let W=0;W<K;W++){let H=W*J,_=W*q;for(let N=0;N<U;N++){let V=N*2,X=0;X+=(Q[H+Math.max(0,V-2)]??0)*1,X+=(Q[H+Math.max(0,V-1)]??0)*5,X+=(Q[H+Math.min(Z-1,V)]??0)*10,X+=(Q[H+Math.min(Z-1,V+1)]??0)*10,X+=(Q[H+Math.min(Z-1,V+2)]??0)*5,X+=(Q[H+Math.min(Z-1,V+3)]??0)*1,$[_+N]=X/32}}}function P4($,Q,Z,K,J,q){let U=Math.floor((K+5)/2);for(let W=0;W<Z;W++)for(let H=0;H<U;H++){let _=H*2,N=0;N+=(Q[Math.max(0,_-2)*J+W]??0)*1,N+=(Q[Math.max(0,_-1)*J+W]??0)*5,N+=(Q[Math.min(K-1,_)*J+W]??0)*10,N+=(Q[Math.min(K-1,_+1)*J+W]??0)*10,N+=(Q[Math.min(K-1,_+2)*J+W]??0)*5,N+=(Q[Math.min(K-1,_+3)*J+W]??0)*1,$[H*q+W]=N/32}}function v4($,Q,Z,K,J,q){let U=Z*2+4;for(let W=0;W<K;W++){let H=W*J,_=W*q;for(let N=0;N<U;N++){let V=Math.floor((N-2)/2),X=N-2&1,j=0;if(X===0)j+=(Q[H+Math.max(0,Math.min(Z-1,V-1))]??0)*1,j+=(Q[H+Math.max(0,Math.min(Z-1,V))]??0)*30,j+=(Q[H+Math.max(0,Math.min(Z-1,V+1))]??0)*1;else j+=(Q[H+Math.max(0,Math.min(Z-1,V))]??0)*16,j+=(Q[H+Math.max(0,Math.min(Z-1,V+1))]??0)*16;$[_+N]=j/32}}}function I4($,Q,Z,K,J,q){let U=K*2+4;for(let W=0;W<Z;W++)for(let H=0;H<U;H++){let _=Math.floor((H-2)/2),N=H-2&1,V=0;if(N===0)V+=(Q[Math.max(0,Math.min(K-1,_-1))*J+W]??0)*1,V+=(Q[Math.max(0,Math.min(K-1,_))*J+W]??0)*30,V+=(Q[Math.max(0,Math.min(K-1,_+1))*J+W]??0)*1;else V+=(Q[Math.max(0,Math.min(K-1,_))*J+W]??0)*16,V+=(Q[Math.max(0,Math.min(K-1,_+1))*J+W]??0)*16;$[H*q+W]=V/32}}function k4($,Q,Z,K,J,q,U,W){let H=Z+2*U;for(let _=0;_<K;_++){let N=_*J,V=_*q;for(let X=0;X<H;X++){let j=X-U,z=0;for(let G=0;G<U;G++){let Y=Math.max(0,Math.min(Z-1,j-G-1)),E=Math.max(0,Math.min(Z-1,j+G));z+=((Q[N+Y]??0)+(Q[N+E]??0))*W[G]}$[V+X]=z}}}function C4($,Q,Z,K,J,q,U,W){let H=K+2*U;for(let _=0;_<Z;_++)for(let N=0;N<H;N++){let V=N-U,X=0;for(let j=0;j<U;j++){let z=Math.max(0,Math.min(K-1,V-j-1)),G=Math.max(0,Math.min(K-1,V+j));X+=((Q[z*J+_]??0)+(Q[G*J+_]??0))*W[j]}$[N*q+_]=X}}function S4($,Q,Z){let K=(Q+Z)/2;return o6($,K)}function m8($,Q,Z=Q){if(Q<=0&&Z<=0)return $;if($.pixelMode===4)return S4($,Q,Z);let K=Q*Q,J=Z*Z,q=vK(K),U=vK(J),W=$.width,H=$.rows,_=(2*q.radius+9<<q.level)-5,N=(2*U.radius+9<<U.level)-5,V=(W+_&~((1<<q.level)-1))-4,X=(H+N&~((1<<U.level)-1))-4,j=Math.max(W*H,V*X)*2,z=new Float32Array(j),G=new Float32Array(j);for(let M=0;M<H;M++)for(let P=0;P<W;P++)z[M*W+P]=$.buffer[M*$.pitch+P]??0;let Y=z,E=G,w=W;for(let M=0;M<U.level;M++){let P=Math.floor((H+5)/2);P4(E,Y,W,H,w,W),H=P,[Y,E]=[E,Y]}for(let M=0;M<q.level;M++){let P=Math.floor((W+5)/2);O4(E,Y,W,H,w,P),W=P,w=P,[Y,E]=[E,Y]}let F=W+2*q.radius;k4(E,Y,W,H,w,F,q.radius,q.coeff),W=F,w=F,[Y,E]=[E,Y];let A=H+2*U.radius;C4(E,Y,W,H,w,w,U.radius,U.coeff),H=A,[Y,E]=[E,Y];for(let M=0;M<q.level;M++){let P=W*2+4;v4(E,Y,W,H,w,P),W=P,w=P,[Y,E]=[E,Y]}for(let M=0;M<U.level;M++){let P=H*2+4;I4(E,Y,W,H,w,w),H=P,[Y,E]=[E,Y]}let B=Math.min(W,V),L=Math.min(H,X),O=new Uint8Array(B*L);for(let M=0;M<L;M++)for(let P=0;P<B;P++){let T=Y[M*w+P]??0;O[M*B+P]=Math.max(0,Math.min(255,Math.round(T)))}return{buffer:O,width:B,rows:L,pitch:B,pixelMode:1,numGrays:256}}function f9($,Q){return m8($,Q,Q)}function l9($,Q,Z){let K=Z??Q;if(Math.max(Q,K)<=3)return o6($,(Q+K)/2);return m8($,Q,K)}z6();class s{_bitmap;_bearingX;_bearingY;constructor($,Q=0,Z=0){this._bitmap=$;this._bearingX=Q;this._bearingY=Z}static fromBitmap($){return new s(J6($))}static fromBitmapWithBearing($,Q,Z){return new s(J6($),Q,Z)}static fromRasterizedGlyph($){return new s(J6($.bitmap),$.bearingX,$.bearingY)}static create($,Q,Z=1){return new s(a($,Q,Z))}static fromGradient($,Q,Z){return new s(h0($,Q,Z))}blur($){let Q=o6(J6(this._bitmap),$);return new s(Q,this._bearingX,this._bearingY)}boxBlur($){let Q=E8(J6(this._bitmap),$);return new s(Q,this._bearingX,this._bearingY)}cascadeBlur($,Q){let Z=m8(J6(this._bitmap),$,Q??$);return new s(Z,this._bearingX,this._bearingY)}adaptiveBlur($,Q){let Z=l9(J6(this._bitmap),$,Q??$);return new s(Z,this._bearingX,this._bearingY)}fastBlur($){let Q=f9(J6(this._bitmap),$);return new s(Q,this._bearingX,this._bearingY)}embolden($,Q){let Z=r8(this._bitmap,$,Q??$);return new s(Z,this._bearingX,this._bearingY)}shift($,Q){let Z=b9(this._bitmap,$,Q);return new s(Z,this._bearingX+$,this._bearingY-Q)}resize($,Q){let Z=h8(this._bitmap,$,Q);return new s(Z,this._bearingX,this._bearingY)}resizeBilinear($,Q){let Z=t8(this._bitmap,$,Q);return new s(Z,this._bearingX,this._bearingY)}pad($,Q,Z,K){let J=$,q=Q??$,U=Z??$,W=K??$,H=m9(this._bitmap,J,q,U,W);return new s(H,this._bearingX-J,this._bearingY+q)}blend($,Q,Z,K=1){let J=$ instanceof s?$._bitmap:$,q=J6(this._bitmap);return C0(q,J,Q,Z,K),new s(q,this._bearingX,this._bearingY)}composite($,Q=0,Z=0){let K=$ instanceof s?$._bitmap:$,J=J6(this._bitmap);return D5(J,K,Q,Z),new s(J,this._bearingX,this._bearingY)}add($,Q=0,Z=0){let K=$ instanceof s?$._bitmap:$,J=J6(this._bitmap);return A5(J,K,Q,Z),new s(J,this._bearingX,this._bearingY)}subtract($,Q=0,Z=0){let K=$ instanceof s?$._bitmap:$,J=J6(this._bitmap);return L5(J,K,Q,Z),new s(J,this._bearingX,this._bearingY)}multiply($,Q=0,Z=0){let K=$ instanceof s?$._bitmap:$,J=J6(this._bitmap);return F5(J,K,Q,Z),new s(J,this._bearingX,this._bearingY)}max($,Q=0,Z=0){let K=$ instanceof s?$._bitmap:$,J=J6(this._bitmap);return B5(J,K,Q,Z),new s(J,this._bearingX,this._bearingY)}convert($){let Q=U8(this._bitmap,$);return new s(Q,this._bearingX,this._bearingY)}toRGBA(){return u9(this._bitmap)}toGray(){return x9(this._bitmap)}toBitmap(){return J6(this._bitmap)}toRasterizedGlyph(){return{bitmap:J6(this._bitmap),bearingX:this._bearingX,bearingY:this._bearingY}}clone(){return new s(J6(this._bitmap),this._bearingX,this._bearingY)}get width(){return this._bitmap.width}get height(){return this._bitmap.rows}get pixelMode(){return this._bitmap.pixelMode}get bearingX(){return this._bearingX}get bearingY(){return this._bearingY}}function h4($,Q,Z,K){let J=-Q*K,q=$*Z,U=Math.sqrt(J*J+q*q);if(U<0.0000000001)return{x:0,y:0,len:0};return{x:J/U,y:q/U,len:U}}function P5($,Q,Z,K,J){let q=Z.x-$.x,U=Z.y-$.y;if(Math.abs((Q.x-$.x)*U-(Q.y-$.y)*q)/Math.sqrt(q*q+U*U+0.0000000001)<=K){J.push(Z);return}let H={x:($.x+Q.x)/2,y:($.y+Q.y)/2},_={x:(Q.x+Z.x)/2,y:(Q.y+Z.y)/2},N={x:(H.x+_.x)/2,y:(H.y+_.y)/2};P5($,H,N,K,J),P5(N,_,Z,K,J)}function v5($,Q,Z,K,J,q){let U=K.x-$.x,W=K.y-$.y,H=U*U+W*W+0.0000000001,_=Math.abs((Q.x-$.x)*W-(Q.y-$.y)*U)/Math.sqrt(H),N=Math.abs((Z.x-$.x)*W-(Z.y-$.y)*U)/Math.sqrt(H);if(_<=J&&N<=J){q.push(K);return}let V={x:($.x+Q.x)/2,y:($.y+Q.y)/2},X={x:(Q.x+Z.x)/2,y:(Q.y+Z.y)/2},j={x:(Z.x+K.x)/2,y:(Z.y+K.y)/2},z={x:(V.x+X.x)/2,y:(V.y+X.y)/2},G={x:(X.x+j.x)/2,y:(X.y+j.y)/2},Y={x:(z.x+G.x)/2,y:(z.y+G.y)/2};v5($,V,z,Y,J,q),v5(Y,G,j,K,J,q)}function y4($,Q){let Z=[],K=[],J={x:0,y:0},q={x:0,y:0};for(let U=0;U<$.commands.length;U++){let W=$.commands[U];switch(W.type){case"M":if(K.length>1)Z.push({points:K,closed:!1});J={x:W.x,y:W.y},q=J,K=[J];break;case"L":J={x:W.x,y:W.y},K.push(J);break;case"Q":P5(J,{x:W.x1,y:W.y1},{x:W.x,y:W.y},Q,K),J={x:W.x,y:W.y};break;case"C":v5(J,{x:W.x1,y:W.y1},{x:W.x2,y:W.y2},{x:W.x,y:W.y},Q,K),J={x:W.x,y:W.y};break;case"Z":if(K.length>1){let H=K[0],_=K[K.length-1];if(H&&_){let N=_.x-H.x,V=_.y-H.y;if(N*N+V*V>Q*Q)K.push({...H})}Z.push({points:K,closed:!0})}K=[],J=q;break}}if(K.length>1)Z.push({points:K,closed:!1});return Z}function IK($,Q,Z,K,J,q,U){let W=Z.x*K.x+Z.y*K.y,H=Z.x*K.y-Z.y*K.x,_=Math.atan2(H,W),N=Math.max(2,Math.ceil(Math.abs(_)/(Math.PI/8))),V=U?1:-1,X=Math.atan2(Z.y,Z.x);for(let j=1;j<=N;j++){let z=j/N,G=X+_*z,Y=Math.cos(G),E=Math.sin(G);$.push({x:Q.x+Y*J*V,y:Q.y+E*q*V})}}function kK($,Q,Z,K,J,q,U,W){let H=W?1:-1,_=Z.x*K.x+Z.y*K.y,N=Math.sqrt((1-_)/2);if(N<0.0000000001)return!1;let V=1/N;if(V>U)return!1;let X=Z.x+K.x,j=Z.y+K.y,z=Math.sqrt(X*X+j*j);if(z<0.0000000001)return!1;let G=V*Math.sqrt(J*J+q*q)/2;return $.push({x:Q.x+X/z*G*H,y:Q.y+j/z*G*H}),!0}function b4($,Q,Z,K,J){let q=$.length;if(q<3)return{outer:[],inner:[]};let U=q-1,W=$[0],H=$[U],_=q;if(W&&H){let j=H.x-W.x,z=H.y-W.y;if(j*j+z*z<1)_=q-1}if(_<3)return{outer:[],inner:[]};let N=[];for(let j=0;j<_;j++){let z=$[j],G=$[(j+1)%_];if(!z||!G)continue;let Y=G.x-z.x,E=G.y-z.y,w=Math.sqrt(Y*Y+E*E);if(w<0.0000000001)N.push({x:0,y:0,len:0});else N.push(h4(Y/w,E/w,Q,Z))}let V=[],X=[];for(let j=0;j<_;j++){let z=$[j],G=N[(j-1+_)%_],Y=N[j];if(!z||!G||!Y)continue;if(G.len<0.0000000001||Y.len<0.0000000001){V.push({x:z.x+(Y.len>0?Y.x*Q:0),y:z.y+(Y.len>0?Y.y*Z:0)});continue}let E={x:z.x+Y.x*Q,y:z.y+Y.y*Z},w=G.x*Y.y-G.y*Y.x,F=w>0;if(Math.abs(w)<0.01)V.push(E);else if(F)switch(K){case"round":IK(V,z,G,Y,Q,Z,!0);break;case"miter":if(!kK(V,z,G,Y,Q,Z,J,!0))V.push(E);break;default:V.push(E);break}else V.push(E)}for(let j=0;j<_;j++){let z=$[j],G=N[(j-1+_)%_],Y=N[j];if(!z||!G||!Y)continue;if(G.len<0.0000000001||Y.len<0.0000000001){X.push({x:z.x-(Y.len>0?Y.x*Q:0),y:z.y-(Y.len>0?Y.y*Z:0)});continue}let E={x:z.x-Y.x*Q,y:z.y-Y.y*Z},w=G.x*Y.y-G.y*Y.x,F=w<0;if(Math.abs(w)<0.01)X.push(E);else if(F)switch(K){case"round":IK(X,z,G,Y,Q,Z,!1);break;case"miter":if(!kK(X,z,G,Y,Q,Z,J,!1))X.push(E);break;default:X.push(E);break}else X.push(E)}return{outer:V,inner:X}}function CK($,Q){if($.length===0)return[];let Z=[],K=$[0];if(!K)return[];Z.push({type:"M",x:K.x,y:K.y});for(let J=1;J<$.length;J++){let q=$[J];if(!q)continue;Z.push({type:"L",x:q.x,y:q.y})}if(Q)Z.push({type:"Z"});return Z}function g8($,Q){let{xBorder:Z,yBorder:K,eps:J=1,lineJoin:q="round",miterLimit:U=4}=Q;if(Z<=0&&K<=0)return{outer:{commands:[],bounds:null},inner:{commands:[],bounds:null}};let W=y4($,J),H=[],_=[];for(let X=0;X<W.length;X++){let j=W[X];if(!j.closed){let Y=j.points[0];if(Y)j.points.push(Y);j.closed=!0}let{outer:z,inner:G}=b4(j.points,Z,K,q,U);H.push(...CK(z,!0)),_.push(...CK(G,!0))}let N=null,V=null;if($.bounds)N={xMin:$.bounds.xMin-Z,yMin:$.bounds.yMin-K,xMax:$.bounds.xMax+Z,yMax:$.bounds.yMax+K},V={xMin:$.bounds.xMin+Z,yMin:$.bounds.yMin+K,xMax:$.bounds.xMax-Z,yMax:$.bounds.yMax-K};return{outer:{commands:H,bounds:N,flags:$.flags},inner:{commands:_,bounds:V,flags:$.flags}}}function d9($,Q){let{outer:Z,inner:K}=g8($,Q),J=[...Z.commands,...K.commands],q=Z.bounds;return{commands:J,bounds:q,flags:$.flags}}function m4($,Q,Z){return g8($,{xBorder:Q,yBorder:Q,...Z})}z6();class Z6{_path;_transform;_font;constructor($,Q,Z){this._path=$;this._transform=Q;this._font=Z}static fromGlyph($,Q){let Z=y6($,Q);if(!Z)return null;return new Z6(Z,{matrix2D:v6(),matrix3D:null},$)}static fromGlyphWithVariation($,Q,Z){let K=C9($,Q,Z);if(!K)return null;return new Z6(K,{matrix2D:v6(),matrix3D:null},$)}static fromPath($){return new Z6(i8($),{matrix2D:v6(),matrix3D:null},null)}static combine(...$){let Q=$.map((K)=>K.toPath()),Z=k9(Q);return new Z6(Z,{matrix2D:v6(),matrix3D:null},null)}scale($,Q=$){let Z=k8(this._transform.matrix2D,P8($,Q));return new Z6(this._path,{...this._transform,matrix2D:Z},this._font)}translate($,Q){let Z=k8(this._transform.matrix2D,c8($,Q));return new Z6(this._path,{...this._transform,matrix2D:Z},this._font)}rotate($){let Q=k8(this._transform.matrix2D,v8($));return new Z6(this._path,{...this._transform,matrix2D:Q},this._font)}rotateDeg($){return this.rotate($*Math.PI/180)}shear($,Q){let Z=k8(this._transform.matrix2D,I8($,Q));return new Z6(this._path,{...this._transform,matrix2D:Z},this._font)}italic($){let Q=Math.tan($*Math.PI/180);return this.shear(Q,0)}matrix($){let Q=k8(this._transform.matrix2D,$);return new Z6(this._path,{...this._transform,matrix2D:Q},this._font)}resetTransform(){return new Z6(this._path,{matrix2D:v6(),matrix3D:null},this._font)}perspective($){let Q=this._transform.matrix3D?v9(this._transform.matrix3D,$):$;return new Z6(this._path,{...this._transform,matrix3D:Q},this._font)}perspectiveVanish($,Q,Z){let K=N5($,Q,Z);return this.perspective(K)}apply(){let $=this.applyTransformToPath();return new Z6($,{matrix2D:v6(),matrix3D:null},this._font)}embolden($){let Q=this.applyTransformToPath(),Z=K9(Q,$);return new Z6(Z,{matrix2D:v6(),matrix3D:null},this._font)}condense($){let Q=this.applyTransformToPath(),Z=Z9(Q,$);return new Z6(Z,{matrix2D:v6(),matrix3D:null},this._font)}oblique($){let Q=this.applyTransformToPath(),Z=Q9(Q,$);return new Z6(Z,{matrix2D:v6(),matrix3D:null},this._font)}stroke($,Q,Z){let K=this.applyTransformToPath(),q=$9(K,typeof $==="number"?{width:$,lineCap:Q,lineJoin:Z}:$);return new Z6(q,{matrix2D:v6(),matrix3D:null},this._font)}strokeAsymmetric($){let Q=this.applyTransformToPath(),{outer:Z,inner:K}=g8(Q,$);return{outer:new Z6(Z,{matrix2D:v6(),matrix3D:null},this._font),inner:new Z6(K,{matrix2D:v6(),matrix3D:null},this._font)}}strokeAsymmetricCombined($){let Q=this.applyTransformToPath(),Z=d9(Q,$);return new Z6(Z,{matrix2D:v6(),matrix3D:null},this._font)}controlBox(){let $=this.applyTransformToPath();return _5($)}tightBounds(){let $=this.applyTransformToPath();return v0($)}getTransformMatrix(){return[...this._transform.matrix2D]}getTransformMatrix3D(){if(!this._transform.matrix3D)return null;return this._transform.matrix3D.map(($)=>[...$])}rasterize($){let Q=this.applyTransformToPath(),{width:Z=100,height:K=100,scale:J=1,offsetX:q=0,offsetY:U=0,pixelMode:W=1,fillRule:H=0,flipY:_=!0}=$,N=r6(Q,{width:Z,height:K,scale:J,offsetX:q,offsetY:U,pixelMode:W,fillRule:H,flipY:_});return s.fromBitmap(N)}rasterizeAuto($){let Q=this.applyTransformToPath(),{padding:Z=1,scale:K=1,pixelMode:J=1,fillRule:q=0,flipY:U=!0}=$??{},W=q8(Q,K,U);if(!W){let{createBitmap:j}=(z6(),j0(S9));return s.fromBitmap(j(1,1,J))}let H=W.maxX-W.minX+Z*2,_=W.maxY-W.minY+Z*2,N=-W.minX+Z,V=-W.minY+Z,X=r6(Q,{width:H,height:_,scale:K,offsetX:N,offsetY:V,pixelMode:J,fillRule:q,flipY:U});return s.fromBitmapWithBearing(X,W.minX-Z,-(W.minY-Z))}rasterizeWithGradient($,Q){let Z=this.applyTransformToPath(),{width:K=100,height:J=100,scale:q=1,offsetX:U=0,offsetY:W=0,pixelMode:H=1,fillRule:_=0,flipY:N=!0}=Q,V=e8(Z,$,{width:K,height:J,scale:q,offsetX:U,offsetY:W,pixelMode:H,fillRule:_,flipY:N});return s.fromBitmap(V)}toSdf($){let Q=this.applyTransformToPath(),Z=y8(Q,$);return s.fromBitmap(Z)}toSdfAuto($){let Q=this.applyTransformToPath(),{padding:Z=1,scale:K=1,spread:J=8,flipY:q=!0}=$??{},U=q8(Q,K,q);if(!U){let{createBitmap:X}=(z6(),j0(S9));return s.fromBitmap(X(1,1,1))}let W=U.maxX-U.minX+Z*2+J*2,H=U.maxY-U.minY+Z*2+J*2,_=-U.minX+Z+J,N=q?U.maxY+Z+J:-U.minY+Z+J,V=y8(Q,{width:W,height:H,scale:K,offsetX:_,offsetY:N,flipY:q,spread:J});return s.fromBitmapWithBearing(V,U.minX-Z-J,-(U.minY-Z-J))}toMsdf($){let Q=this.applyTransformToPath(),Z=b8(Q,$);return s.fromBitmap(Z)}toMsdfAuto($){let Q=this.applyTransformToPath(),{padding:Z=1,scale:K=1,spread:J=8,flipY:q=!0}=$??{},U=q8(Q,K,q);if(!U){let{createBitmap:X}=(z6(),j0(S9));return s.fromBitmap(X(1,1,2))}let W=U.maxX-U.minX+Z*2+J*2,H=U.maxY-U.minY+Z*2+J*2,_=-U.minX+Z+J,N=q?U.maxY+Z+J:-U.minY+Z+J,V=b8(Q,{width:W,height:H,scale:K,offsetX:_,offsetY:N,flipY:q,spread:J});return s.fromBitmapWithBearing(V,U.minX-Z-J,-(U.minY-Z-J))}toSVG($){let{flipY:Q=!0,scale:Z=1}=$??{};if(this.hasTransform()){let K=this.applyTransformToPath();return G8(K,{flipY:Q,scale:Z})}return G8(this._path,{flipY:Q,scale:Z})}toSVGElement($){let{fontSize:Q=100,fill:Z="currentColor",stroke:K,strokeWidth:J=1}=$??{},q=this.applyTransformToPath(),U=v0(q),W=this._font?Q/this._font.unitsPerEm:1,H=W!==1?O6(q,P8(W,W)):q,_=W!==1?{xMin:U.xMin*W,yMin:U.yMin*W,xMax:U.xMax*W,yMax:U.yMax*W}:U,N=K?J/2:0,V=Math.ceil(_.xMax-_.xMin+N*2),X=Math.ceil(_.yMax-_.yMin+N*2),j=`${_.xMin-N} ${-_.yMax-N} ${_.xMax-_.xMin+N*2} ${_.yMax-_.yMin+N*2}`,z=G8(H,{flipY:!0,scale:1}),G=K?` stroke="${K}" stroke-width="${J}"`:"";return`<svg xmlns="http://www.w3.org/2000/svg" width="${V}" height="${X}" viewBox="${j}">
|
|
9
|
+
</svg>`}function NH($,Q,Z){let K=Z/Q.unitsPerEm,J=0;for(let q=0;q<$.length;q++){let U=$[q];J+=U.xAdvance}return J*K}function j5($,Q){let Z=new Path2D;return s8(Z,$,Q),Z}function I0($,Q,Z,K){let q=K?.flipY??!0?-1:1;for(let U=0;U<Q.commands.length;U++){let W=Q.commands[U];switch(W.type){case"M":{let H=$6(W.x,W.y*q,Z);$.moveTo(H.x,H.y);break}case"L":{let H=$6(W.x,W.y*q,Z);$.lineTo(H.x,H.y);break}case"Q":{let H=$6(W.x1,W.y1*q,Z),_=$6(W.x,W.y*q,Z);$.quadraticCurveTo(H.x,H.y,_.x,_.y);break}case"C":{let H=$6(W.x1,W.y1*q,Z),_=$6(W.x2,W.y2*q,Z),N=$6(W.x,W.y*q,Z);$.bezierCurveTo(H.x,H.y,_.x,_.y,N.x,N.y);break}case"Z":$.closePath();break}}}function n7($,Q,Z){let J=Z?.flipY??!0?-1:1,q="";for(let U=0;U<$.commands.length;U++){let W=$.commands[U];if(U>0)q+=" ";switch(W.type){case"M":{let H=$6(W.x,W.y*J,Q);q+="M "+H.x+" "+H.y;break}case"L":{let H=$6(W.x,W.y*J,Q);q+="L "+H.x+" "+H.y;break}case"Q":{let H=$6(W.x1,W.y1*J,Q),_=$6(W.x,W.y*J,Q);q+="Q "+H.x+" "+H.y+" "+_.x+" "+_.y;break}case"C":{let H=$6(W.x1,W.y1*J,Q),_=$6(W.x2,W.y2*J,Q),N=$6(W.x,W.y*J,Q);q+="C "+H.x+" "+H.y+" "+_.x+" "+_.y+" "+N.x+" "+N.y;break}case"Z":q+="Z";break}}return q}function k0($,Q,Z,K){let q=K?.flipY??!0?-1:1;for(let U=0;U<Q.commands.length;U++){let W=Q.commands[U];switch(W.type){case"M":{let H=t(W.x,W.y*q,Z);$.moveTo(H.x,H.y);break}case"L":{let H=t(W.x,W.y*q,Z);$.lineTo(H.x,H.y);break}case"Q":{let H=t(W.x1,W.y1*q,Z),_=t(W.x,W.y*q,Z);$.quadraticCurveTo(H.x,H.y,_.x,_.y);break}case"C":{let H=t(W.x1,W.y1*q,Z),_=t(W.x2,W.y2*q,Z),N=t(W.x,W.y*q,Z);$.bezierCurveTo(H.x,H.y,_.x,_.y,N.x,N.y);break}case"Z":$.closePath();break}}}function p7($,Q,Z){let J=Z?.flipY??!0?-1:1,q="";for(let U=0;U<$.commands.length;U++){let W=$.commands[U];if(U>0)q+=" ";switch(W.type){case"M":{let H=t(W.x,W.y*J,Q);q+="M "+H.x+" "+H.y;break}case"L":{let H=t(W.x,W.y*J,Q);q+="L "+H.x+" "+H.y;break}case"Q":{let H=t(W.x1,W.y1*J,Q),_=t(W.x,W.y*J,Q);q+="Q "+H.x+" "+H.y+" "+_.x+" "+_.y;break}case"C":{let H=t(W.x1,W.y1*J,Q),_=t(W.x2,W.y2*J,Q),N=t(W.x,W.y*J,Q);q+="C "+H.x+" "+H.y+" "+_.x+" "+_.y+" "+N.x+" "+N.y;break}case"Z":q+="Z";break}}return q}function VH($,Q){$.transform(Q[0],Q[1],Q[2],Q[3],Q[4],Q[5])}function o7($){return`matrix(${$[0]} ${$[1]} ${$[2]} ${$[3]} ${$[4]} ${$[5]})`}function c7($,Q,Z,K){let J="",q=Q*E6,U=-Q*E6,W=Z*E6,H=K*E6;for(let _=0;_<$.commands.length;_++){let N=$.commands[_];if(_>0)J+=" ";switch(N.type){case"M":J+="M "+Math.round(N.x*q+W)+" "+Math.round(N.y*U+H);break;case"L":J+="L "+Math.round(N.x*q+W)+" "+Math.round(N.y*U+H);break;case"Q":J+="Q "+Math.round(N.x1*q+W)+" "+Math.round(N.y1*U+H)+" "+Math.round(N.x*q+W)+" "+Math.round(N.y*U+H);break;case"C":J+="C "+Math.round(N.x1*q+W)+" "+Math.round(N.y1*U+H)+" "+Math.round(N.x2*q+W)+" "+Math.round(N.y2*U+H)+" "+Math.round(N.x*q+W)+" "+Math.round(N.y*U+H);break;case"Z":J+="Z";break}}return J}var W6=8,Q6=256,XH=255,jH=6,zH=64,GH=16,YH=65536;function EH($){return Math.round($*64)}function wH($){return $/64}function AH($,Q){return Math.round($*Q*256)}function a6($){return $>>8}function C8($){return $&255}function FH($){return $+128>>8}function LH($){return $&-256}function DH($){return $+255&-256}function BH($){return $<<2}function MH($){return $>>2}function z5($,Q,Z){if(Z===0)return 0;let K=$<0?-$:$,J=Q<0?-Q:Q;if(K<8388607&&J<8388607)return Math.trunc($*Q/Z);return Number(BigInt($)*BigInt(Q)/BigInt(Z))}function RH($,Q){return z5($,Q,65536)}function TH($,Q){if(Q===0)return 0;return z5($,65536,Q)}function i7($,Q){return $=f6($),Q=f6(Q),$>Q?$+(3*Q>>3):Q+(3*$>>3)}function OH($,Q){return i7($,Q)}function PH($,Q){let Z=Math.sqrt($*$+Q*Q);if(Z===0)return{x:65536,y:0};return{x:Math.round($/Z*65536),y:Math.round(Q/Z*65536)}}function vH($,Q,Z){return $<Q?Q:$>Z?Z:$}function f6($){return $<0?-$:$}function IH($){return $<0?-1:$>0?1:0}var kH=16384,s7=2147483647;class S8 extends Error{constructor(){super("Cell pool overflow");this.name="PoolOverflowError"}}class G5{pool;poolSize;freeIndex;ycells;bandMinY=0;bandMaxY=0;minY=1/0;maxY=-1/0;minX=1/0;maxX=-1/0;currentX=0;currentY=0;currentCellIndex=-1;clipMinX=-1/0;clipMinY=-1/0;clipMaxX=1/0;clipMaxY=1/0;nullCellIndex;bandSet=!1;constructor($=kH){this.poolSize=$,this.nullCellIndex=$-1,this.pool=Array($);for(let Q=0;Q<$;Q++)this.pool[Q]={x:0,area:0,cover:0,next:-1};this.pool[this.nullCellIndex].x=s7,this.pool[this.nullCellIndex].next=-1,this.ycells=[],this.freeIndex=0,this.bandMinY=-1e4,this.bandMaxY=1e4}setClip($,Q,Z,K){this.clipMinX=$,this.clipMinY=Q,this.clipMaxX=Z,this.clipMaxY=K}setBandBounds($,Q){this.bandMinY=$,this.bandMaxY=Q,this.bandSet=!0;let Z=Q-$;if(this.ycells.length<Z)this.ycells=Array(Z);for(let K=0;K<Z;K++)this.ycells[K]=this.nullCellIndex;this.freeIndex=0}reset(){if(this.freeIndex=0,this.pool[this.nullCellIndex].x=s7,this.pool[this.nullCellIndex].area=0,this.pool[this.nullCellIndex].cover=0,this.pool[this.nullCellIndex].next=-1,this.bandSet)for(let $=0;$<this.ycells.length;$++)this.ycells[$]=this.nullCellIndex;else this.ycells=[],this.bandMinY=-1e5,this.bandMaxY=1e5;this.minY=1/0,this.maxY=-1/0,this.minX=1/0,this.maxX=-1/0,this.currentCellIndex=-1}setCurrentCell($,Q){let Z=a6($),K=a6(Q);if(this.currentCellIndex>=0&&this.currentX===Z&&this.currentY===K)return;if(K<this.bandMinY||K>=this.bandMaxY||K<this.clipMinY||K>=this.clipMaxY||Z<this.clipMinX||Z>=this.clipMaxX){this.currentCellIndex=this.nullCellIndex,this.currentX=Z,this.currentY=K;return}this.currentX=Z,this.currentY=K,this.currentCellIndex=this.findOrCreateCell(Z,K),this.minY=Math.min(this.minY,K),this.maxY=Math.max(this.maxY,K),this.minX=Math.min(this.minX,Z),this.maxX=Math.max(this.maxX,Z)}findOrCreateCell($,Q){if(!this.bandSet)this.ensureYCellsCapacity(Q);let Z=Q-this.bandMinY;if(Z<0||Z>=this.ycells.length)return this.nullCellIndex;let K=-1,J=this.ycells[Z];while(J!==this.nullCellIndex){let W=this.pool[J];if(W.x===$)return J;if(W.x>$)break;K=J,J=W.next}if(this.freeIndex>=this.nullCellIndex)throw new S8;let q=this.freeIndex++,U=this.pool[q];if(U.x=$,U.area=0,U.cover=0,U.next=J,K===-1)this.ycells[Z]=q;else this.pool[K].next=q;return q}ensureYCellsCapacity($){if(this.ycells.length===0){this.bandMinY=Math.min($,0),this.bandMaxY=Math.max($+1,256);let Q=this.bandMaxY-this.bandMinY;this.ycells=Array(Q);for(let Z=0;Z<Q;Z++)this.ycells[Z]=this.nullCellIndex;return}if($<this.bandMinY){let Q=this.bandMinY-$,Z=Array(this.ycells.length+Q);for(let K=0;K<Q;K++)Z[K]=this.nullCellIndex;for(let K=0;K<this.ycells.length;K++)Z[Q+K]=this.ycells[K];this.ycells=Z,this.bandMinY=$}else if($>=this.bandMaxY){let Q=$+1,Z=this.ycells.length,K=Q-this.bandMinY;if(K>Z){let J=Array(K);for(let q=0;q<Z;q++)J[q]=this.ycells[q];for(let q=Z;q<K;q++)J[q]=this.nullCellIndex;this.ycells=J}this.bandMaxY=Q}}addArea($,Q){if(this.currentCellIndex>=0){let Z=this.pool[this.currentCellIndex];Z.area+=$,Z.cover+=Q}}getArea(){if(this.currentCellIndex>=0)return this.pool[this.currentCellIndex]?.area;return 0}getCover(){if(this.currentCellIndex>=0)return this.pool[this.currentCellIndex]?.cover;return 0}getCellsForRow($){let Q=$-this.bandMinY;if(Q<0||Q>=this.ycells.length)return[];let Z=[],K=this.ycells[Q];while(K!==this.nullCellIndex)Z.push(this.pool[K]),K=this.pool[K].next;return Z}*iterateCells(){for(let $=0;$<this.ycells.length;$++){let Q=this.bandMinY+$,Z=this.ycells[$];if(Z===this.nullCellIndex)continue;let K=[];while(Z!==this.nullCellIndex)K.push(this.pool[Z]),Z=this.pool[Z].next;if(K.length>0)yield{y:Q,cells:K}}}*iterateScanlines(){for(let $=0;$<this.ycells.length;$++){let Q=this.ycells[$];if(Q!==this.nullCellIndex)yield{y:this.bandMinY+$,firstCellIndex:Q}}}getPool(){return this.pool}getNullIndex(){return this.nullCellIndex}getYCells(){return this.ycells}getBandMinY(){return this.bandMinY}*iterateRowCells($){let Q=$-this.bandMinY;if(Q<0||Q>=this.ycells.length)return;let Z=this.ycells[Q];while(Z!==this.nullCellIndex)yield this.pool[Z],Z=this.pool[Z].next}getCellCount(){return this.freeIndex}isNearCapacity(){return this.freeIndex>this.poolSize*0.9}}G6();var CH=32,r7=16;class a8{cells;x=0;y=0;minX=0;minY=0;maxX=0;maxY=0;constructor(){this.cells=new G5}setClip($,Q,Z,K){this.minX=$,this.minY=Q,this.maxX=Z,this.maxY=K,this.cells.setClip($,Q,Z,K)}setBandBounds($,Q){this.cells.setBandBounds($,Q)}reset(){this.cells.reset(),this.x=0,this.y=0}moveTo($,Q){this.x=$,this.y=Q,this.cells.setCurrentCell($,Q)}lineTo($,Q){this.renderLine($,Q),this.x=$,this.y=Q}renderLine($,Q){let Z=a6(this.y),K=a6(Q);if(Z>=this.maxY&&K>=this.maxY||Z<this.minY&&K<this.minY)return;let J=C8(this.y),q=C8(Q);if(Z===K){this.renderScanline(Z,this.x,J,$,q);return}let U=$-this.x,W=Q-this.y;if(U===0){let Y=a6(this.x),E=C8(this.x)*2,w,F;if(W>0)w=Q6,F=1;else w=0,F=-1;let A=w-J;this.cells.setCurrentCell(this.x,Z<<W6),this.cells.addArea(A*E,A),Z+=F,this.cells.setCurrentCell(this.x,Z<<W6),A=w+w-Q6;while(Z!==K)this.cells.addArea(A*E,A),Z+=F,this.cells.setCurrentCell(this.x,Z<<W6);A=q-Q6+w,this.cells.addArea(A*E,A);return}let H=this.x,_,N,V,X=f6(W);if(W>0)N=Q6,_=1,V=(Q6-J)*U;else N=0,_=-1,V=J*U;let j=Math.trunc(V/X),z=V%X;if(z<0)j--,z+=X;let G=H+j;if(this.renderScanline(Z,H,J,G,N),H=G,Z+=_,this.cells.setCurrentCell(H,Z<<W6),Z!==K){V=Q6*U;let Y=Math.trunc(V/X),E=V%X;while(Z!==K){if(j=Y,z+=E,z>=X)z-=X,j++;G=H+j,this.renderScanline(Z,H,Q6-N,G,N),H=G,Z+=_,this.cells.setCurrentCell(H,Z<<W6)}}this.renderScanline(Z,H,Q6-N,$,q)}renderScanline($,Q,Z,K,J){let q=a6(Q),U=a6(K);if(Z===J){this.cells.setCurrentCell(K,$<<W6);return}let W=C8(Q),H=C8(K);if(q===U){let F=J-Z;this.cells.setCurrentCell(Q,$<<W6),this.cells.addArea(F*(W+H),F);return}let _=K-Q,N=J-Z,V=f6(_),X,j,z;if(_>0)X=Q6,j=1,z=(Q6-W)*N;else X=0,j=-1,z=W*N;let G=Math.trunc(z/V),Y=z%V;if(Y<0)G--,Y+=V;this.cells.setCurrentCell(Q,$<<W6),this.cells.addArea(G*(W+X),G);let E=Z+G,w=q+j;if(this.cells.setCurrentCell(w<<W6,$<<W6),w!==U){z=Q6*N;let F=Math.trunc(z/V),A=z%V;while(w!==U){if(G=F,Y+=A,Y>=V)Y-=V,G++;this.cells.addArea(G*Q6,G),E+=G,w+=j,this.cells.setCurrentCell(w<<W6,$<<W6)}}G=J-E,this.cells.addArea(G*(H+Q6-X),G)}mulDiv($,Q,Z){if(Z===0)return 0;return Math.trunc($*Q/Z)}conicTo($,Q,Z,K){this.subdivConic(this.x,this.y,$,Q,Z,K,0),this.x=Z,this.y=K}subdivConic($,Q,Z,K,J,q,U){if(U>16){this.renderLine(J,q),this.x=J,this.y=q;return}let W=f6($+J-2*Z),H=f6(Q+q-2*K);if(W<H)W=H;if(W<=Q6>>2){this.renderLine(J,q),this.x=J,this.y=q;return}let _=$+Z>>1,N=Q+K>>1,V=Z+J>>1,X=K+q>>1,j=_+V>>1,z=N+X>>1;this.subdivConic($,Q,_,N,j,z,U+1),this.subdivConic(j,z,V,X,J,q,U+1)}cubicTo($,Q,Z,K,J,q){this.subdivCubic(this.x,this.y,$,Q,Z,K,J,q,0),this.x=J,this.y=q}subdivCubic($,Q,Z,K,J,q,U,W,H){if(H>16){this.renderLine(U,W),this.x=U,this.y=W;return}if(f6(2*U-3*J+$)>Q6>>1||f6(2*W-3*q+Q)>Q6>>1||f6(U-3*Z+2*$)>Q6>>1||f6(W-3*K+2*Q)>Q6>>1){let _=$+Z>>1,N=Q+K>>1,V=Z+J>>1,X=K+q>>1,j=J+U>>1,z=q+W>>1,G=_+V>>1,Y=N+X>>1,E=V+j>>1,w=X+z>>1,F=G+E>>1,A=Y+w>>1;this.subdivCubic($,Q,_,N,G,Y,F,A,H+1),this.subdivCubic(F,A,E,w,j,z,U,W,H+1);return}this.renderLine(U,W),this.x=U,this.y=W}sweep($,Q=0){let Z=$.pitch,K=Z<0?($.rows-1)*-Z:0,J=$.width,q=$.rows,U=this.cells.getPool(),W=this.cells.getNullIndex(),H=this.cells.getYCells(),_=this.cells.getBandMinY(),N=H.length;for(let V=0;V<N;V++){let X=H[V];if(X===W)continue;let j=_+V;if(j<0||j>=q)continue;let z=0,G=0,Y=Z<0?K-j*-Z:j*Z,E=X;while(E!==W){let w=U[E];if(w.x>G&&z!==0){let B=this.applyFillRule(z>>W6+1,Q);if(B>0){let L=G<0?0:G,O=w.x>J?J:w.x;this.fillSpan($,Y,L,O,B)}}z+=w.cover*(Q6*2);let F=z-w.area,A=this.applyFillRule(F>>W6+1,Q);if(A>0&&w.x>=0&&w.x<J)this.setPixel($,Y,w.x,A);G=w.x+1,E=w.next}if(G<J&&z!==0){let w=this.applyFillRule(z>>W6+1,Q);if(w>0)this.fillSpan($,Y,G,J,w)}}}applyFillRule($,Q){let Z=$;if(Z<0)Z=-Z;if(Q===1){if(Z&=511,Z>256)Z=512-Z}return Z>255?255:Z}fillSpan($,Q,Z,K,J){if($.pixelMode===1)$.buffer.fill(J,Q+Z,Q+K);else if($.pixelMode===0){if(J>=128)for(let q=Z;q<K;q++){let U=Q+(q>>3),W=7-(q&7);$.buffer[U]|=1<<W}}else if($.pixelMode===2||$.pixelMode===3)for(let q=Z;q<K;q++){let U=Q+q*3;$.buffer[U]=J,$.buffer[U+1]=J,$.buffer[U+2]=J}else if($.pixelMode===4)for(let q=Z;q<K;q++){let U=Q+q*4;$.buffer[U]=0,$.buffer[U+1]=0,$.buffer[U+2]=0,$.buffer[U+3]=J}}setPixel($,Q,Z,K){if($.pixelMode===1)$.buffer[Q+Z]=K;else if($.pixelMode===0){if(K>=128){let J=Q+(Z>>3),q=7-(Z&7);$.buffer[J]|=1<<q}}else if($.pixelMode===2||$.pixelMode===3){let J=Q+Z*3;$.buffer[J]=K,$.buffer[J+1]=K,$.buffer[J+2]=K}else if($.pixelMode===4){let J=Q+Z*4;$.buffer[J]=0,$.buffer[J+1]=0,$.buffer[J+2]=0,$.buffer[J+3]=K}}sweepSpans($,Q=0,Z){let K=this.cells.getYCells(),J=this.cells.getPool(),q=this.cells.getNullIndex(),U=this.cells.getBandMinY();for(let W=0;W<K.length;W++){let H=K[W];if(H===q)continue;let _=U+W,N=[],V=0,X=-1;while(H!==q){let j=J[H];if(V!==0&&j.x>X+1){let Y=this.applyFillRule(V>>W6+1,Q);if(Y>0)N.push({x:X+1,len:j.x-X-1,coverage:Y})}V+=j.cover*(Q6*2);let z=V-j.area,G=this.applyFillRule(z>>W6+1,Q);if(G>0)N.push({x:j.x,len:1,coverage:G});X=j.x,H=j.next}if(N.length>0)$(_,N,Z)}}sweepDirect($,Q=0,Z=0,K=1/0,J){let q=[],U=this.cells.getYCells(),W=this.cells.getPool(),H=this.cells.getNullIndex(),_=this.cells.getBandMinY();for(let N=0;N<U.length;N++){let V=U[N];if(V===H)continue;let X=_+N,j=0,z=Z;while(V!==H){let G=W[V];if(j!==0&&G.x>z){let w=this.applyFillRule(j>>W6+1,Q);if(w>0){if(q.push({x:z,len:G.x-z,coverage:w}),q.length>=r7)$(X,q.splice(0,q.length),J)}}j+=G.cover*(Q6*2);let Y=j-G.area,E=this.applyFillRule(Y>>W6+1,Q);if(E>0&&G.x>=Z&&G.x<K){if(q.push({x:G.x,len:1,coverage:E}),q.length>=r7)$(X,q.splice(0,q.length),J)}z=G.x+1,V=G.next}if(j!==0&&z<K){let G=this.applyFillRule(j>>W6+1,Q);if(G>0)q.push({x:z,len:Math.min(K,this.maxX+1)-z,coverage:G})}if(q.length>0)$(X,q.splice(0,q.length),J)}}renderWithBands($,Q,Z,K=0){let q=Z.maxY-Z.minY,U=Math.max(1,Math.floor(256));if(q<=U)U=q;let W=Z.minX??0,H=Z.maxX??$.width,_=[];for(let N=Z.minY;N<Z.maxY;N+=U)_.push({minY:N,maxY:Math.min(N+U,Z.maxY),minX:W,maxX:H,depth:0});while(_.length>0){let N=_.pop();if(!N)break;if(this.renderBandWithXClip($,Q,N.minY,N.maxY,N.minX,N.maxX,K))continue;let V=N.depth;if(V>=CH){console.warn(`Rasterizer: band overflow at (${N.minX},${N.minY}), depth limit reached`);continue}let X=V+1,j=N.minX+N.maxX>>1;if(j>N.minX){_.push({minY:N.minY,maxY:N.maxY,minX:j,maxX:N.maxX,depth:X}),_.push({minY:N.minY,maxY:N.maxY,minX:N.minX,maxX:j,depth:X});continue}let z=N.minY+N.maxY>>1;if(z>N.minY){_.push({minY:z,maxY:N.maxY,minX:N.minX,maxX:N.maxX,depth:X}),_.push({minY:N.minY,maxY:z,minX:N.minX,maxX:N.maxX,depth:X});continue}console.warn(`Rasterizer: band overflow at (${N.minX},${N.minY}), cannot bisect further`)}}renderBandWithXClip($,Q,Z,K,J,q,U){this.setClip(J,Z,q,K),this.cells.setBandBounds(Z,K),this.cells.reset(),this.minY=Z,this.maxY=K;try{return Q(),this.sweepBandWithXClip($,Z,K,J,q,U),!0}catch(W){if(W instanceof S8)return!1;throw W}}sweepBandWithXClip($,Q,Z,K,J,q){let U=$.pitch,W=U<0?($.rows-1)*-U:0,H=this.cells.getYCells(),_=this.cells.getPool(),N=this.cells.getNullIndex(),V=this.cells.getBandMinY();for(let X=Q;X<Z;X++){if(X<0||X>=$.rows)continue;let j=X-V;if(j<0||j>=H.length)continue;let z=H[j];if(z===N)continue;let G=0,Y=K,E=U<0?W-X*-U:X*U;while(z!==N){let w=_[z];if(w.x<K){G+=w.cover*(Q6*2),z=w.next;continue}if(w.x>=J){if(G!==0&&Y<J){let B=this.applyFillRule(G>>W6+1,q);if(B>0)this.fillSpan($,E,Math.max(0,Y),Math.min($.width,J),B)}break}if(w.x>Y&&G!==0){let B=this.applyFillRule(G>>W6+1,q);if(B>0){let L=Math.max(0,Y),O=Math.min($.width,w.x);this.fillSpan($,E,L,O,B)}}G+=w.cover*(Q6*2);let F=G-w.area,A=this.applyFillRule(F>>W6+1,q);if(A>0&&w.x>=0&&w.x<$.width)this.setPixel($,E,w.x,A);Y=w.x+1,z=w.next}if(Y<J&&Y<$.width&&G!==0){let w=this.applyFillRule(G>>W6+1,q);if(w>0)this.fillSpan($,E,Y,Math.min($.width,J),w)}}}}G6();var e7;((J)=>{J[J.Ok=0]="Ok";J[J.InvalidOutline=1]="InvalidOutline";J[J.InvalidArgument=2]="InvalidArgument";J[J.EmptyOutline=3]="EmptyOutline"})(e7||={});function SH($,Q=!0){if(!$)return{error:1,message:"Path is null or undefined"};if(!$.commands)return{error:1,message:"Path commands array is missing"};if($.commands.length===0){if(Q)return{error:3};return{error:1,message:"Path is empty"}}let Z=!1,K=!1,J=0;for(let q=0;q<$.commands.length;q++){let U=$.commands[q];switch(U.type){case"M":if(Z=!0,K=!0,J++,!Number.isFinite(U.x)||!Number.isFinite(U.y))return{error:1,message:`Invalid coordinates at command ${q}: (${U.x}, ${U.y})`};break;case"L":if(!Z)return{error:1,message:`Line command at ${q} without preceding moveTo`};if(!Number.isFinite(U.x)||!Number.isFinite(U.y))return{error:1,message:`Invalid coordinates at command ${q}`};break;case"Q":if(!Z)return{error:1,message:`Quadratic curve at ${q} without preceding moveTo`};if(!Number.isFinite(U.x1)||!Number.isFinite(U.y1)||!Number.isFinite(U.x)||!Number.isFinite(U.y))return{error:1,message:`Invalid coordinates at command ${q}`};break;case"C":if(!Z)return{error:1,message:`Cubic curve at ${q} without preceding moveTo`};if(!Number.isFinite(U.x1)||!Number.isFinite(U.y1)||!Number.isFinite(U.x2)||!Number.isFinite(U.y2)||!Number.isFinite(U.x)||!Number.isFinite(U.y))return{error:1,message:`Invalid coordinates at command ${q}`};break;case"Z":K=!1;break;default:return{error:1,message:`Unknown command type at ${q}: ${U.type}`}}}if(J===0&&!Q)return{error:3,message:"No contours in path"};return{error:0}}function Y8($,Q,Z,K=0,J=0,q=!0){let U=0,W=0,H=!1,_=Z*Q6,N=(q?-Z:Z)*Q6,V=K*Q6,X=J*Q6;for(let j=0;j<Q.commands.length;j++){let z=Q.commands[j];switch(z.type){case"M":{if(H)$.lineTo(U,W);let G=Math.round(z.x*_+V),Y=Math.round(z.y*N+X);$.moveTo(G,Y),U=G,W=Y,H=!0;break}case"L":{let G=Math.round(z.x*_+V),Y=Math.round(z.y*N+X);$.lineTo(G,Y);break}case"Q":{let G=Math.round(z.x1*_+V),Y=Math.round(z.y1*N+X),E=Math.round(z.x*_+V),w=Math.round(z.y*N+X);$.conicTo(G,Y,E,w);break}case"C":{let G=Math.round(z.x1*_+V),Y=Math.round(z.y1*N+X),E=Math.round(z.x2*_+V),w=Math.round(z.y2*N+X),F=Math.round(z.x*_+V),A=Math.round(z.y*N+X);$.cubicTo(G,Y,E,w,F,A);break}case"Z":{if(H)$.lineTo(U,W),H=!1;break}}}if(H)$.lineTo(U,W)}function t7($,Q){if($===0||Q===0)return 0;let Z=1,K=$,J=Q;if(K<0)K=-K,Z=-Z;if(J<0)J=-J,Z=-Z;let q=Math.floor((K*J+32768)/65536);return Z<0?-q:q}function q8($,Q,Z=!0,K=!1){if(K){let q=Math.round(Q*64*65536),U=1/0,W=1/0,H=-1/0,_=-1/0,N=(V,X)=>{let j=t7(V,q),z=t7(X,q);if(j<U)U=j;if(j>H)H=j;if(z<W)W=z;if(z>_)_=z};for(let V of $.commands)switch(V.type){case"M":case"L":N(V.x,V.y);break;case"Q":N(V.x1,V.y1),N(V.x,V.y);break;case"C":N(V.x1,V.y1),N(V.x2,V.y2),N(V.x,V.y);break;default:break}if(!Number.isFinite(U)||!Number.isFinite(W))return null;if(Z){let V=-_,X=-W;return{minX:Math.floor(U/64),minY:Math.floor(V/64),maxX:Math.floor((H+63)/64),maxY:Math.floor((X+63)/64)}}return{minX:Math.floor(U/64),minY:Math.floor(W/64),maxX:Math.floor((H+63)/64),maxY:Math.floor((_+63)/64)}}if(!$.bounds)return null;let J=$.bounds;if(Z)return{minX:Math.floor(J.xMin*Q),minY:Math.floor(-J.yMax*Q),maxX:Math.ceil(J.xMax*Q),maxY:Math.ceil(-J.yMin*Q)};else return{minX:Math.floor(J.xMin*Q),minY:Math.floor(J.yMin*Q),maxX:Math.ceil(J.xMax*Q),maxY:Math.ceil(J.yMax*Q)}}function hH($,Q=0){if(!$?.flags)return Q;return($.flags&1)!==0?1:0}G6();function $K($){if(!$.commands||$.commands.length===0)return null;let Q=1/0,Z=1/0,K=-1/0,J=-1/0,q=0,U=0,W=!1,H=(_,N)=>{Q=Math.min(Q,_),Z=Math.min(Z,N),K=Math.max(K,_),J=Math.max(J,N),W=!0};for(let _=0;_<$.commands.length;_++){let N=$.commands[_];switch(N.type){case"M":{q=N.x,U=N.y,H(q,U);break}case"L":{q=N.x,U=N.y,H(q,U);break}case"Q":{H(N.x,N.y);let V=E5(q,N.x1,N.x);for(let G=0;G<V.length;G++){let Y=V[G],E=h9(q,N.x1,N.x,Y);H(E,U)}let X=E5(U,N.y1,N.y);for(let G=0;G<X.length;G++){let Y=X[G],E=h9(U,N.y1,N.y,Y);H(q,E)}let z=[...new Set([...V,...X])];for(let G=0;G<z.length;G++){let Y=z[G],E=h9(q,N.x1,N.x,Y),w=h9(U,N.y1,N.y,Y);H(E,w)}q=N.x,U=N.y;break}case"C":{H(N.x,N.y);let V=w5(q,N.x1,N.x2,N.x);for(let G=0;G<V.length;G++){let Y=V[G],E=y9(q,N.x1,N.x2,N.x,Y);H(E,U)}let X=w5(U,N.y1,N.y2,N.y);for(let G=0;G<X.length;G++){let Y=X[G],E=y9(U,N.y1,N.y2,N.y,Y);H(q,E)}let z=[...new Set([...V,...X])];for(let G=0;G<z.length;G++){let Y=z[G],E=y9(q,N.x1,N.x2,N.x,Y),w=y9(U,N.y1,N.y2,N.y,Y);H(E,w)}q=N.x,U=N.y;break}case"Z":break}}if(!W)return null;return{xMin:Q,yMin:Z,xMax:K,yMax:J}}function E5($,Q,Z){let K=$-2*Q+Z;if(Math.abs(K)<0.0000000001)return[];let J=($-Q)/K;if(J>0&&J<1)return[J];return[]}function w5($,Q,Z,K){let J=3*(K-3*Z+3*Q-$),q=6*(Z-2*Q+$),U=3*(Q-$),W=[];if(Math.abs(J)<0.0000000001){if(Math.abs(q)<0.0000000001)return[];let X=-U/q;if(X>0&&X<1)W.push(X);return W}let H=q*q-4*J*U;if(H<0)return[];if(Math.abs(H)<0.0000000001){let X=-q/(2*J);if(X>0&&X<1)W.push(X);return W}let _=Math.sqrt(H),N=(-q+_)/(2*J),V=(-q-_)/(2*J);if(N>0&&N<1)W.push(N);if(V>0&&V<1)W.push(V);return W}function h9($,Q,Z,K){let J=1-K;return J*J*$+2*J*K*Q+K*K*Z}function y9($,Q,Z,K,J){let q=1-J,U=q*q,W=J*J;return U*q*$+3*U*J*Q+3*q*W*Z+W*J*K}G6();function r8($,Q,Z){if(Q===0&&Z===0)return q6($);let K=a($.width,$.rows,$.pixelMode);if($.pixelMode===1)for(let J=0;J<$.rows;J++)for(let q=0;q<$.width;q++){let U=0;for(let W=-Math.floor(Z);W<=Math.ceil(Z);W++)for(let H=-Math.floor(Q);H<=Math.ceil(Q);H++){let _=q+H,N=J+W;if(_>=0&&_<$.width&&N>=0&&N<$.rows){let V=$.buffer[N*$.pitch+_]??0;U=Math.max(U,V)}}K.buffer[J*K.pitch+q]=U}else if($.pixelMode===0)for(let J=0;J<$.rows;J++)for(let q=0;q<$.width;q++){let U=!1;for(let W=-Math.floor(Z);W<=Math.ceil(Z);W++){for(let H=-Math.floor(Q);H<=Math.ceil(Q);H++){let _=q+H,N=J+W;if(_>=0&&_<$.width&&N>=0&&N<$.rows){let V=N*$.pitch+(_>>3),X=7-(_&7);if(($.buffer[V]??0)>>X&1){U=!0;break}}}if(U)break}if(U){let W=J*K.pitch+(q>>3),H=7-(q&7);K.buffer[W]|=1<<H}}else if($.pixelMode===2||$.pixelMode===3)for(let J=0;J<$.rows;J++)for(let q=0;q<$.width;q++){let U=0,W=0,H=0;for(let N=-Math.floor(Z);N<=Math.ceil(Z);N++)for(let V=-Math.floor(Q);V<=Math.ceil(Q);V++){let X=q+V,j=J+N;if(X>=0&&X<$.width&&j>=0&&j<$.rows){let z=j*$.pitch+X*3;U=Math.max(U,$.buffer[z]??0),W=Math.max(W,$.buffer[z+1]??0),H=Math.max(H,$.buffer[z+2]??0)}}let _=J*K.pitch+q*3;K.buffer[_]=U,K.buffer[_+1]=W,K.buffer[_+2]=H}return K}function U8($,Q){if($.pixelMode===Q)return $;let Z=a($.width,$.rows,Q);if($.pixelMode===1&&Q===0){for(let K=0;K<$.rows;K++)for(let J=0;J<$.width;J++)if(($.buffer[K*$.pitch+J]??0)>=128){let U=K*Z.pitch+(J>>3),W=7-(J&7);Z.buffer[U]|=1<<W}}else if($.pixelMode===0&&Q===1)for(let K=0;K<$.rows;K++)for(let J=0;J<$.width;J++){let q=K*$.pitch+(J>>3),U=7-(J&7),W=($.buffer[q]??0)>>U&1;Z.buffer[K*Z.pitch+J]=W?255:0}else if($.pixelMode===1&&Q===2)for(let K=0;K<$.rows;K++)for(let J=0;J<$.width;J++){let q=$.buffer[K*$.pitch+J]??0,U=K*Z.pitch+J*3;Z.buffer[U]=q,Z.buffer[U+1]=q,Z.buffer[U+2]=q}else if($.pixelMode===0&&Q===2)for(let K=0;K<$.rows;K++)for(let J=0;J<$.width;J++){let q=K*$.pitch+(J>>3),U=7-(J&7),H=($.buffer[q]??0)>>U&1?255:0,_=K*Z.pitch+J*3;Z.buffer[_]=H,Z.buffer[_+1]=H,Z.buffer[_+2]=H}else if($.pixelMode===1&&Q===3)for(let K=0;K<$.rows;K++)for(let J=0;J<$.width;J++){let q=$.buffer[K*$.pitch+J]??0,U=K*Z.pitch+J*3;Z.buffer[U]=q,Z.buffer[U+1]=q,Z.buffer[U+2]=q}else if($.pixelMode===2&&Q===1)for(let K=0;K<$.rows;K++)for(let J=0;J<$.width;J++){let q=K*$.pitch+J*3,U=$.buffer[q]??0,W=$.buffer[q+1]??0,H=$.buffer[q+2]??0;Z.buffer[K*Z.pitch+J]=Math.floor((U+W+H)/3)}return Z}function C0($,Q,Z,K,J){if($.pixelMode!==1||Q.pixelMode!==1)return;J=Math.max(0,Math.min(1,J));let q=Math.max(0,-Z),U=Math.max(0,-K),W=Math.min(Q.width,$.width-Z),H=Math.min(Q.rows,$.rows-K);for(let _=U;_<H;_++)for(let N=q;N<W;N++){let V=Z+N,X=K+_;if(V>=0&&V<$.width&&X>=0&&X<$.rows){let j=Q.buffer[_*Q.pitch+N]??0,G=($.buffer[X*$.pitch+V]??0)+j*J;$.buffer[X*$.pitch+V]=Math.min(255,Math.floor(G))}}}function q6($){return{buffer:new Uint8Array($.buffer),width:$.width,rows:$.rows,pitch:$.pitch,pixelMode:$.pixelMode,numGrays:$.numGrays}}function h8($,Q,Z){let K=a(Q,Z,$.pixelMode),J=$.width/Q,q=$.rows/Z;if($.pixelMode===1)for(let U=0;U<Z;U++)for(let W=0;W<Q;W++){let H=Math.floor(W*J),_=Math.floor(U*q);K.buffer[U*K.pitch+W]=$.buffer[_*$.pitch+H]??0}else if($.pixelMode===0)for(let U=0;U<Z;U++)for(let W=0;W<Q;W++){let H=Math.floor(W*J),N=Math.floor(U*q)*$.pitch+(H>>3),V=7-(H&7);if(($.buffer[N]??0)>>V&1){let j=U*K.pitch+(W>>3),z=7-(W&7);K.buffer[j]|=1<<z}}else if($.pixelMode===2||$.pixelMode===3)for(let U=0;U<Z;U++)for(let W=0;W<Q;W++){let H=Math.floor(W*J),N=Math.floor(U*q)*$.pitch+H*3,V=U*K.pitch+W*3;K.buffer[V]=$.buffer[N]??0,K.buffer[V+1]=$.buffer[N+1]??0,K.buffer[V+2]=$.buffer[N+2]??0}return K}function t8($,Q,Z){let K=a(Q,Z,$.pixelMode),J=($.width-1)/Math.max(1,Q-1),q=($.rows-1)/Math.max(1,Z-1);if($.pixelMode===1)for(let U=0;U<Z;U++){let W=U*q,H=Math.floor(W),_=Math.min(H+1,$.rows-1),N=W-H;for(let V=0;V<Q;V++){let X=V*J,j=Math.floor(X),z=Math.min(j+1,$.width-1),G=X-j,Y=$.buffer[H*$.pitch+j]??0,E=$.buffer[H*$.pitch+z]??0,w=$.buffer[_*$.pitch+j]??0,F=$.buffer[_*$.pitch+z]??0,A=Y+(E-Y)*G,B=w+(F-w)*G,L=A+(B-A)*N;K.buffer[U*K.pitch+V]=Math.round(L)}}else if($.pixelMode===0)return h8($,Q,Z);else if($.pixelMode===2||$.pixelMode===3)for(let U=0;U<Z;U++){let W=U*q,H=Math.floor(W),_=Math.min(H+1,$.rows-1),N=W-H;for(let V=0;V<Q;V++){let X=V*J,j=Math.floor(X),z=Math.min(j+1,$.width-1),G=X-j,Y=H*$.pitch+j*3,E=H*$.pitch+z*3,w=_*$.pitch+j*3,F=_*$.pitch+z*3;for(let A=0;A<3;A++){let B=$.buffer[Y+A]??0,L=$.buffer[E+A]??0,O=$.buffer[w+A]??0,M=$.buffer[F+A]??0,P=B+(L-B)*G,T=O+(M-O)*G,x=P+(T-P)*N;K.buffer[U*K.pitch+V*3+A]=Math.round(x)}}}return K}function A5($,Q,Z=0,K=0){if($.pixelMode!==1||Q.pixelMode!==1)return;let J=Math.max(0,-Z),q=Math.max(0,-K),U=Math.min(Q.width,$.width-Z),W=Math.min(Q.rows,$.rows-K);for(let H=q;H<W;H++){let _=K+H;if(_<0||_>=$.rows)continue;for(let N=J;N<U;N++){let V=Z+N;if(V<0||V>=$.width)continue;let X=Q.buffer[H*Q.pitch+N]??0,j=$.buffer[_*$.pitch+V]??0;$.buffer[_*$.pitch+V]=Math.min(255,X+j)}}}function F5($,Q,Z=0,K=0){if($.pixelMode!==1||Q.pixelMode!==1)return;let J=Math.max(0,-Z),q=Math.max(0,-K),U=Math.min(Q.width,$.width-Z),W=Math.min(Q.rows,$.rows-K);for(let H=q;H<W;H++){let _=K+H;if(_<0||_>=$.rows)continue;for(let N=J;N<U;N++){let V=Z+N;if(V<0||V>=$.width)continue;let X=Q.buffer[H*Q.pitch+N]??0,j=$.buffer[_*$.pitch+V]??0;$.buffer[_*$.pitch+V]=Math.floor((X*j+127)/255)}}}function L5($,Q,Z=0,K=0){if($.pixelMode!==1||Q.pixelMode!==1)return;let J=Math.max(0,-Z),q=Math.max(0,-K),U=Math.min(Q.width,$.width-Z),W=Math.min(Q.rows,$.rows-K);for(let H=q;H<W;H++){let _=K+H;if(_<0||_>=$.rows)continue;for(let N=J;N<U;N++){let V=Z+N;if(V<0||V>=$.width)continue;let X=Q.buffer[H*Q.pitch+N]??0,j=$.buffer[_*$.pitch+V]??0;$.buffer[_*$.pitch+V]=Math.max(0,j-X)}}}function D5($,Q,Z=0,K=0){if($.pixelMode!==1||Q.pixelMode!==1)return;let J=Math.max(0,-Z),q=Math.max(0,-K),U=Math.min(Q.width,$.width-Z),W=Math.min(Q.rows,$.rows-K);for(let H=q;H<W;H++){let _=K+H;if(_<0||_>=$.rows)continue;for(let N=J;N<U;N++){let V=Z+N;if(V<0||V>=$.width)continue;let X=Q.buffer[H*Q.pitch+N]??0,j=$.buffer[_*$.pitch+V]??0,z=X+Math.floor((j*(255-X)+127)/255);$.buffer[_*$.pitch+V]=Math.min(255,z)}}}function b9($,Q,Z){let K=a($.width,$.rows,$.pixelMode);if($.pixelMode===1)for(let J=0;J<$.rows;J++){let q=J-Z;if(q<0||q>=$.rows)continue;for(let U=0;U<$.width;U++){let W=U-Q;if(W<0||W>=$.width)continue;K.buffer[J*K.pitch+U]=$.buffer[q*$.pitch+W]??0}}else if($.pixelMode===0)for(let J=0;J<$.rows;J++){let q=J-Z;if(q<0||q>=$.rows)continue;for(let U=0;U<$.width;U++){let W=U-Q;if(W<0||W>=$.width)continue;let H=q*$.pitch+(W>>3),_=7-(W&7);if(($.buffer[H]??0)>>_&1){let V=J*K.pitch+(U>>3),X=7-(U&7);K.buffer[V]|=1<<X}}}else if($.pixelMode===2||$.pixelMode===3)for(let J=0;J<$.rows;J++){let q=J-Z;if(q<0||q>=$.rows)continue;for(let U=0;U<$.width;U++){let W=U-Q;if(W<0||W>=$.width)continue;let H=q*$.pitch+W*3,_=J*K.pitch+U*3;K.buffer[_]=$.buffer[H]??0,K.buffer[_+1]=$.buffer[H+1]??0,K.buffer[_+2]=$.buffer[H+2]??0}}return K}function yH($,Q,Z=0,K=0,J=128){if($.pixelMode!==1||Q.pixelMode!==1)return;let q=Math.max(0,-Z),U=Math.max(0,-K),W=Math.min(Q.width,$.width-Z),H=Math.min(Q.rows,$.rows-K);for(let _=U;_<H;_++){let N=K+_;if(N<0||N>=$.rows)continue;for(let V=q;V<W;V++){let X=Z+V;if(X<0||X>=$.width)continue;if((Q.buffer[_*Q.pitch+V]??0)>=J)$.buffer[N*$.pitch+X]=0}}}function B5($,Q,Z=0,K=0){if($.pixelMode!==1||Q.pixelMode!==1)return;let J=Math.max(0,-Z),q=Math.max(0,-K),U=Math.min(Q.width,$.width-Z),W=Math.min(Q.rows,$.rows-K);for(let H=q;H<W;H++){let _=K+H;if(_<0||_>=$.rows)continue;for(let N=J;N<U;N++){let V=Z+N;if(V<0||V>=$.width)continue;let X=Q.buffer[H*Q.pitch+N]??0,j=$.buffer[_*$.pitch+V]??0;$.buffer[_*$.pitch+V]=Math.max(X,j)}}}function m9($,Q,Z,K,J){let q=$.width+Q+K,U=$.rows+Z+J,W=a(q,U,$.pixelMode);if($.pixelMode===1)for(let H=0;H<$.rows;H++)for(let _=0;_<$.width;_++)W.buffer[(H+Z)*W.pitch+(_+Q)]=$.buffer[H*$.pitch+_]??0;else if($.pixelMode===2||$.pixelMode===3)for(let H=0;H<$.rows;H++)for(let _=0;_<$.width;_++){let N=H*$.pitch+_*3,V=(H+Z)*W.pitch+(_+Q)*3;W.buffer[V]=$.buffer[N]??0,W.buffer[V+1]=$.buffer[N+1]??0,W.buffer[V+2]=$.buffer[N+2]??0}return W}function bH($,Q,Z,K){let{width:U,rows:W}=$,H=Z,_=K,N=Z+Q.width,V=K+Q.rows,X=Math.min(0,H),j=Math.min(0,_),z=Math.max(U,N),G=Math.max(W,V),Y=z-X,E=G-j,w=a(Y,E,$.pixelMode),F=0-X,A=0-j,B=H-X,L=_-j;if($.pixelMode===1)for(let O=0;O<$.rows;O++)for(let M=0;M<$.width;M++)w.buffer[(O+A)*w.pitch+(M+F)]=$.buffer[O*$.pitch+M]??0;return{expanded:w,dstOffsetX:F,dstOffsetY:A,srcOffsetX:B,srcOffsetY:L}}G6();function M5($){if($<=0)return new Float32Array([1]);let Q=$,Z=Math.ceil($*2)*2+1,K=new Float32Array(Z),J=Math.floor(Z/2),q=0;for(let U=0;U<Z;U++){let W=U-J,H=Math.exp(-(W*W)/(2*Q*Q));K[U]=H,q+=H}for(let U=0;U<Z;U++)K[U]/=q;return K}function mH($,Q,Z,K,J,q,U,W){let H=Math.floor(U.length/2);for(let _=0;_<K;_++)for(let N=0;N<Z;N++)for(let V=0;V<W;V++){let X=0;for(let z=0;z<U.length;z++){let G=N+z-H,Y=Math.max(0,Math.min(Z-1,G)),E=_*J+Y*W+V;X+=($[E]??0)*U[z]}let j=_*q+N*W+V;Q[j]=Math.min(255,Math.max(0,Math.round(X)))}}function gH($,Q,Z,K,J,q,U,W){let H=Math.floor(U.length/2);for(let _=0;_<K;_++)for(let N=0;N<Z;N++)for(let V=0;V<W;V++){let X=0;for(let z=0;z<U.length;z++){let G=_+z-H,E=Math.max(0,Math.min(K-1,G))*J+N*W+V;X+=($[E]??0)*U[z]}let j=_*q+N*W+V;Q[j]=Math.min(255,Math.max(0,Math.round(X)))}}function o6($,Q){if($.pixelMode===0){let q=U8($,1);return o6(q,Q)}if(Q<=0)return $;let Z=M5(Q),K=1;if($.pixelMode===2||$.pixelMode===3)K=3;else if($.pixelMode===4)K=4;let J=new Uint8Array($.buffer.length);return mH($.buffer,J,$.width,$.rows,$.pitch,$.pitch,Z,K),gH(J,$.buffer,$.width,$.rows,$.pitch,$.pitch,Z,K),$}function E8($,Q){if($.pixelMode===0){let U=U8($,1);return E8(U,Q)}if(Q<=0)return $;let Z=1;if($.pixelMode===2||$.pixelMode===3)Z=3;else if($.pixelMode===4)Z=4;let K=Math.floor(Q),J=K*2+1,q=new Uint8Array($.buffer.length);for(let U=0;U<$.rows;U++)for(let W=0;W<Z;W++){let H=0,_=0;for(let V=-K;V<=K;V++)if(V>=0&&V<$.width){let X=U*$.pitch+V*Z+W;H+=$.buffer[X]??0,_++}let N=U*$.pitch+0*Z+W;q[N]=Math.round(H/_);for(let V=1;V<$.width;V++){let X=V-K-1;if(X>=0){let G=U*$.pitch+X*Z+W;H-=$.buffer[G]??0,_--}let j=V+K;if(j<$.width){let G=U*$.pitch+j*Z+W;H+=$.buffer[G]??0,_++}let z=U*$.pitch+V*Z+W;q[z]=Math.round(H/_)}}for(let U=0;U<$.width;U++)for(let W=0;W<Z;W++){let H=0,_=0;for(let V=-K;V<=K;V++)if(V>=0&&V<$.rows){let X=V*$.pitch+U*Z+W;H+=q[X]??0,_++}let N=0*$.pitch+U*Z+W;$.buffer[N]=Math.round(H/_);for(let V=1;V<$.rows;V++){let X=V-K-1;if(X>=0){let G=X*$.pitch+U*Z+W;H-=q[G]??0,_--}let j=V+K;if(j<$.rows){let G=j*$.pitch+U*Z+W;H+=q[G]??0,_++}let z=V*$.pitch+U*Z+W;$.buffer[z]=Math.round(H/_)}}return $}function QK($,Q,Z="gaussian"){if(Z==="box")return E8($,Q);else return o6($,Q)}G6();function uH($,Q,Z){return[Math.round($[0]+(Q[0]-$[0])*Z),Math.round($[1]+(Q[1]-$[1])*Z),Math.round($[2]+(Q[2]-$[2])*Z),Math.round($[3]+(Q[3]-$[3])*Z)]}function S0($,Q,Z){if($.stops.length===0)return[0,0,0,0];if($.stops.length===1)return $.stops[0].color;let K;if($.type==="linear"){let q=$.x1-$.x0,U=$.y1-$.y0,W=q*q+U*U;if(W===0)return $.stops[0].color;let H=Q-$.x0,_=Z-$.y0;K=(H*q+_*U)/W}else{let q=Q-$.cx,U=Z-$.cy,W=Math.sqrt(q*q+U*U);K=$.radius>0?W/$.radius:0}K=Math.max(0,Math.min(1,K));let J=[...$.stops].sort((q,U)=>q.offset-U.offset);if(K<=J[0].offset)return J[0].color;if(K>=J[J.length-1].offset)return J[J.length-1].color;for(let q=0;q<J.length-1;q++){let U=J[q],W=J[q+1];if(K>=U.offset&&K<=W.offset){let H=W.offset-U.offset;if(H===0)return W.color;let _=(K-U.offset)/H;return uH(U.color,W.color,_)}}return J[J.length-1].color}function h0($,Q,Z){let K=a($,Q,4);for(let J=0;J<Q;J++)for(let q=0;q<$;q++){let U=S0(Z,q,J),W=(J*$+q)*4;K.buffer[W]=U[0],K.buffer[W+1]=U[1],K.buffer[W+2]=U[2],K.buffer[W+3]=U[3]}return K}function e8($,Q,Z){let{width:K,height:J}=Z,q=r6($,{...Z,pixelMode:1,flipY:Z.flipY??!1}),U=a(K,J,4);for(let W=0;W<J;W++)for(let H=0;H<K;H++){let _=q.buffer[W*q.pitch+H]??0;if(_>0){let N=S0(Q,H,W),V=(W*K+H)*4,X=N[3]*_/255;U.buffer[V]=N[0],U.buffer[V+1]=N[1],U.buffer[V+2]=N[2],U.buffer[V+3]=Math.round(X)}}return U}G6();function y8($,Q){let{width:Z,height:K,scale:J,offsetX:q=0,offsetY:U=0,flipY:W=!1,spread:H=8}=Q,_=a(Z,K,1),N=xH($,J,q,U,W);if(N.length===0)return _.buffer.fill(0),_;for(let V=0;V<K;V++)for(let X=0;X<Z;X++){let j=X+0.5,z=V+0.5,G=1/0;for(let A=0;A<N.length;A++){let B=N[A],L=fH(j,z,B);G=Math.min(G,L)}let w=128+(pH(j,z,N)?G:-G)/H*127,F=Math.max(0,Math.min(255,Math.round(w)));_.buffer[V*_.pitch+X]=F}return _}function xH($,Q,Z,K,J){let q=[],U=null,W=null,H=(_,N)=>({x:_*Q+Z,y:J?-(N*Q)+K:N*Q+K});for(let _=0;_<$.commands.length;_++){let N=$.commands[_];switch(N.type){case"M":U=H(N.x,N.y),W=U;break;case"L":if(U){let V=H(N.x,N.y);q.push({type:"line",p0:U,p1:V}),U=V}break;case"Q":if(U){let V=H(N.x1,N.y1),X=H(N.x,N.y);q.push({type:"quadratic",p0:U,p1:V,p2:X}),U=X}break;case"C":if(U){let V=H(N.x1,N.y1),X=H(N.x2,N.y2),j=H(N.x,N.y);q.push({type:"cubic",p0:U,p1:V,p2:X,p3:j}),U=j}break;case"Z":if(U&&W){if(Math.abs(U.x-W.x)>0.001||Math.abs(U.y-W.y)>0.001)q.push({type:"line",p0:U,p1:W});U=W}break}}return q}function fH($,Q,Z){switch(Z.type){case"line":return lH($,Q,Z.p0,Z.p1);case"quadratic":return dH($,Q,Z.p0,Z.p1,Z.p2);case"cubic":return nH($,Q,Z.p0,Z.p1,Z.p2,Z.p3)}}function lH($,Q,Z,K){let J=K.x-Z.x,q=K.y-Z.y,U=J*J+q*q;if(U<0.0001){let X=$-Z.x,j=Q-Z.y;return Math.sqrt(X*X+j*j)}let W=(($-Z.x)*J+(Q-Z.y)*q)/U;W=Math.max(0,Math.min(1,W));let H=Z.x+W*J,_=Z.y+W*q,N=$-H,V=Q-_;return Math.sqrt(N*N+V*V)}function dH($,Q,Z,K,J){let q=1/0,U=32;for(let W=0;W<=U;W++){let H=W/U,_=1-H,N=_*_*Z.x+2*_*H*K.x+H*H*J.x,V=_*_*Z.y+2*_*H*K.y+H*H*J.y,X=$-N,j=Q-V,z=Math.sqrt(X*X+j*j);q=Math.min(q,z)}return q}function nH($,Q,Z,K,J,q){let U=1/0,W=32;for(let H=0;H<=W;H++){let _=H/W,N=1-_,V=N*N*N*Z.x+3*N*N*_*K.x+3*N*_*_*J.x+_*_*_*q.x,X=N*N*N*Z.y+3*N*N*_*K.y+3*N*_*_*J.y+_*_*_*q.y,j=$-V,z=Q-X,G=Math.sqrt(j*j+z*z);U=Math.min(U,G)}return U}function pH($,Q,Z){let K=0;for(let J=0;J<Z.length;J++){let q=Z[J],U=oH(q);for(let W=0;W<U.length-1;W++){let H=U[W],_=U[W+1];if(!H||!_)continue;if(H.y>Q!==_.y>Q){let N=(_.x-H.x)/(_.y-H.y),V=H.x+N*(Q-H.y);if($<V)K++}}}return(K&1)===1}function oH($){switch($.type){case"line":return[$.p0,$.p1];case"quadratic":{let Q=[$.p0],Z=16;for(let K=1;K<=16;K++){let J=K/16,q=1-J;Q.push({x:q*q*$.p0.x+2*q*J*$.p1.x+J*J*$.p2.x,y:q*q*$.p0.y+2*q*J*$.p1.y+J*J*$.p2.y})}return Q}case"cubic":{let Q=[$.p0],Z=16;for(let K=1;K<=16;K++){let J=K/16,q=1-J;Q.push({x:q*q*q*$.p0.x+3*q*q*J*$.p1.x+3*q*J*J*$.p2.x+J*J*J*$.p3.x,y:q*q*q*$.p0.y+3*q*q*J*$.p1.y+3*q*J*J*$.p2.y+J*J*J*$.p3.y})}return Q}}}function R5($){let Q=Math.sqrt($.x*$.x+$.y*$.y);if(Q===0)return{x:0,y:0};return{x:$.x/Q,y:$.y/Q}}function l6($){return{x:-$.y,y:$.x}}function cH($,Q){let Z=$.x*Q.x+$.y*Q.y,K=$.x*Q.y-$.y*Q.x;return Math.atan2(K,Z)}function ZK($,Q,Z,K,J){let q=l6(Z),U={x:Q.x+q.x*K*(J?1:-1),y:Q.y+q.y*K*(J?1:-1)},W={x:Q.x-q.x*K*(J?1:-1),y:Q.y-q.y*K*(J?1:-1)},H={x:Q.x+Z.x*K,y:Q.y+Z.y*K},_={x:U.x+Z.x*K*0.5523,y:U.y+Z.y*K*0.5523},N={x:W.x+Z.x*K*0.5523,y:W.y+Z.y*K*0.5523};$.push({type:"Q",x1:_.x,y1:_.y,x:H.x,y:H.y}),$.push({type:"Q",x1:N.x,y1:N.y,x:W.x,y:W.y})}function KK($,Q,Z,K){let J=l6(Z),q={x:Q.x+Z.x*K,y:Q.y+Z.y*K},U={x:q.x+J.x*K,y:q.y+J.y*K},W={x:q.x-J.x*K,y:q.y-J.y*K};$.push({type:"L",x:U.x,y:U.y}),$.push({type:"L",x:W.x,y:W.y})}function y0($,Q,Z,K,J,q,U,W){let H=cH(Z,K),_=W?H<0:H>0;if(Math.abs(H)<0.01)return;let N=l6(Z),V=l6(K),X=W?1:-1,j={x:Q.x+N.x*J*X,y:Q.y+N.y*J*X},z={x:Q.x+V.x*J*X,y:Q.y+V.y*J*X};if(!_){$.push({type:"L",x:z.x,y:z.y});return}switch(q){case"round":{let G=Math.abs(H),Y=Math.max(2,Math.ceil(G/(Math.PI/4)));for(let E=1;E<=Y;E++){let w=E/Y,F=Math.atan2(N.y,N.x)+H*w*X,A=Q.x+Math.cos(F)*J*X,B=Q.y+Math.sin(F)*J*X;$.push({type:"L",x:A,y:B})}break}case"miter":{if(1/Math.sin(Math.abs(H)/2)<=U){let Y=H/2,E=R5({x:Z.x+K.x,y:Z.y+K.y}),w=J/Math.cos(Y),F={x:Q.x+E.x*w*X,y:Q.y+E.y*w*X};$.push({type:"L",x:F.x,y:F.y}),$.push({type:"L",x:z.x,y:z.y})}else $.push({type:"L",x:z.x,y:z.y});break}default:$.push({type:"L",x:z.x,y:z.y});break}}function iH($,Q){if($.length<2)return[];let{width:Z,lineJoin:K,miterLimit:J}=Q,q=Z/2,U=[],W=$.length,H=[];for(let Y=0;Y<W;Y++){let E=$[Y],w=$[(Y+1)%W];if(!E||!w)continue;H.push(R5({x:w.x-E.x,y:w.y-E.y}))}let _=H[0],N=$[0];if(!_||!N)return[];let V=l6(_);U.push({type:"M",x:N.x+V.x*q,y:N.y+V.y*q});for(let Y=0;Y<W;Y++){let E=$[Y],w=$[(Y+1)%W],F=H[Y],A=H[(Y+1)%W];if(!E||!w||!F||!A)continue;let B=l6(F);U.push({type:"L",x:w.x+B.x*q,y:w.y+B.y*q}),y0(U,w,F,A,q,K,J,!0)}U.push({type:"Z"});let X=W-1,j=H[X],z=$[0];if(!j||!z)return U;let G=l6(_);U.push({type:"M",x:N.x-G.x*q,y:N.y-G.y*q});for(let Y=0;Y<W;Y++){let E=$[Y],w=$[(Y+1)%W],F=H[Y],A=H[(Y+1)%W];if(!E||!w||!F||!A)continue;let B=l6(F);U.push({type:"L",x:w.x-B.x*q,y:w.y-B.y*q}),y0(U,w,F,A,q,K,J,!1)}return U.push({type:"Z"}),U}function sH($,Q){if($.length<2)return[];let{width:Z,lineCap:K,lineJoin:J,miterLimit:q}=Q,U=Z/2,W=[],H=$.length,_=[];for(let E=0;E<H-1;E++){let w=$[E],F=$[E+1];if(!w||!F)continue;_.push(R5({x:F.x-w.x,y:F.y-w.y}))}let N=$[0],V=$[H-1],X=_[0],j=_[_.length-1];if(!N||!V||!X||!j)return[];let z=l6(X);W.push({type:"M",x:N.x+z.x*U,y:N.y+z.y*U});for(let E=0;E<H-1;E++){let w=$[E+1],F=_[E],A=_[E+1];if(!w||!F)continue;let B=l6(F);if(W.push({type:"L",x:w.x+B.x*U,y:w.y+B.y*U}),A)y0(W,w,F,A,U,J,q,!0)}let G={x:-j.x,y:-j.y};switch(K){case"round":ZK(W,V,j,U,!0);break;case"square":KK(W,V,j,U);break;default:{let E=l6(j);W.push({type:"L",x:V.x-E.x*U,y:V.y-E.y*U});break}}for(let E=H-2;E>=0;E--){let w=$[E],F=_[E],A=_[E-1];if(!w||!F)continue;let B=l6(F);if(W.push({type:"L",x:w.x-B.x*U,y:w.y-B.y*U}),A)y0(W,w,{x:-F.x,y:-F.y},{x:-A.x,y:-A.y},U,J,q,!0)}let Y={x:-X.x,y:-X.y};switch(K){case"round":ZK(W,N,Y,U,!0);break;case"square":KK(W,N,Y,U);break;default:break}return W.push({type:"Z"}),W}function aH($){let Q=[],Z=[];for(let K=0;K<$.commands.length;K++){let J=$.commands[K];switch(J.type){case"M":if(Z.length>0)Q.push({points:Z,closed:!1});Z=[{x:J.x,y:J.y}];break;case"L":Z.push({x:J.x,y:J.y});break;case"Q":{let q=Z[Z.length-1];if(q)for(let W=1;W<=8;W++){let H=W/8,_=1-H,N=_*_*q.x+2*_*H*J.x1+H*H*J.x,V=_*_*q.y+2*_*H*J.y1+H*H*J.y;Z.push({x:N,y:V})}break}case"C":{let q=Z[Z.length-1];if(q)for(let W=1;W<=12;W++){let H=W/12,_=1-H,N=_*_*_*q.x+3*_*_*H*J.x1+3*_*H*H*J.x2+H*H*H*J.x,V=_*_*_*q.y+3*_*_*H*J.y1+3*_*H*H*J.y2+H*H*H*J.y;Z.push({x:N,y:V})}break}case"Z":if(Z.length>0)Q.push({points:Z,closed:!0}),Z=[];break}}if(Z.length>0)Q.push({points:Z,closed:!1});return Q}function $9($,Q){let Z={width:Q.width,lineCap:Q.lineCap??"butt",lineJoin:Q.lineJoin??"miter",miterLimit:Q.miterLimit??4},K=aH($),J=[];for(let U=0;U<K.length;U++){let W=K[U];if(W.points.length<2)continue;let H=W.closed?iH(W.points,Z):sH(W.points,Z);J.push(...H)}let q=$.bounds;if(q){let U=Z.width/2;q={xMin:q.xMin-U,yMin:q.yMin-U,xMax:q.xMax+U,yMax:q.yMax+U}}return{commands:J,bounds:q}}function rH($){let Q=1/0,Z=1/0,K=-1/0,J=-1/0;for(let q=0;q<$.length;q++){let U=$[q];switch(U.type){case"M":case"L":Q=Math.min(Q,U.x),K=Math.max(K,U.x),Z=Math.min(Z,U.y),J=Math.max(J,U.y);break;case"Q":Q=Math.min(Q,U.x,U.x1),K=Math.max(K,U.x,U.x1),Z=Math.min(Z,U.y,U.y1),J=Math.max(J,U.y,U.y1);break;case"C":Q=Math.min(Q,U.x,U.x1,U.x2),K=Math.max(K,U.x,U.x1,U.x2),Z=Math.min(Z,U.y,U.y1,U.y2),J=Math.max(J,U.y,U.y1,U.y2);break;case"Z":break}}if(!Number.isFinite(Q))return null;return{xMin:Q,yMin:Z,xMax:K,yMax:J}}function Q9($,Q){let Z=[];for(let J=0;J<$.commands.length;J++){let q=$.commands[J];switch(q.type){case"M":case"L":Z.push({type:q.type,x:q.x+q.y*Q,y:q.y});break;case"Q":Z.push({type:"Q",x1:q.x1+q.y1*Q,y1:q.y1,x:q.x+q.y*Q,y:q.y});break;case"C":Z.push({type:"C",x1:q.x1+q.y1*Q,y1:q.y1,x2:q.x2+q.y2*Q,y2:q.y2,x:q.x+q.y*Q,y:q.y});break;case"Z":Z.push({type:"Z"});break}}let K=rH(Z);return{commands:Z,bounds:K,flags:$.flags}}function Z9($,Q){let Z=[];for(let J=0;J<$.commands.length;J++){let q=$.commands[J];switch(q.type){case"M":case"L":Z.push({type:q.type,x:q.x*Q,y:q.y});break;case"Q":Z.push({type:"Q",x1:q.x1*Q,y1:q.y1,x:q.x*Q,y:q.y});break;case"C":Z.push({type:"C",x1:q.x1*Q,y1:q.y1,x2:q.x2*Q,y2:q.y2,x:q.x*Q,y:q.y});break;case"Z":Z.push({type:"Z"});break}}let K=$.bounds;if(K)K={xMin:K.xMin*Q,yMin:K.yMin,xMax:K.xMax*Q,yMax:K.yMax};return{commands:Z,bounds:K,flags:$.flags}}function K9($,Q){if(Q===0)return{...$,commands:[...$.commands]};let Z=tH($),K=[];for(let q=0;q<Z.length;q++){let U=Z[q];if(U.length<3)continue;let W=eH(U,Q);if(W.length>0){K.push({type:"M",x:W[0].x,y:W[0].y});for(let H=1;H<W.length;H++)K.push({type:"L",x:W[H].x,y:W[H].y});K.push({type:"Z"})}}let J=null;if(K.length>0){let q=1/0,U=1/0,W=-1/0,H=-1/0;for(let _=0;_<K.length;_++){let N=K[_];if(N.type==="M"||N.type==="L")q=Math.min(q,N.x),U=Math.min(U,N.y),W=Math.max(W,N.x),H=Math.max(H,N.y)}if(Number.isFinite(q))J={xMin:q,yMin:U,xMax:W,yMax:H}}return{commands:K,bounds:J,flags:$.flags}}function tH($){let Q=[],Z=[];for(let K=0;K<$.commands.length;K++){let J=$.commands[K];switch(J.type){case"M":if(Z.length>0)Q.push(Z);Z=[{x:J.x,y:J.y}];break;case"L":Z.push({x:J.x,y:J.y});break;case"Q":{let q=Z[Z.length-1];if(q)for(let W=1;W<=8;W++){let H=W/8,_=1-H,N=_*_*q.x+2*_*H*J.x1+H*H*J.x,V=_*_*q.y+2*_*H*J.y1+H*H*J.y;Z.push({x:N,y:V})}break}case"C":{let q=Z[Z.length-1];if(q)for(let W=1;W<=12;W++){let H=W/12,_=1-H,N=_*_*_*q.x+3*_*_*H*J.x1+3*_*H*H*J.x2+H*H*H*J.x,V=_*_*_*q.y+3*_*_*H*J.y1+3*_*H*H*J.y2+H*H*H*J.y;Z.push({x:N,y:V})}break}case"Z":if(Z.length>0)Q.push(Z),Z=[];break}}if(Z.length>0)Q.push(Z);return Q}function eH($,Q){let Z=$.length;if(Z<3)return $;let K=0;for(let W=0;W<Z;W++){let H=(W+1)%Z,_=$[W],N=$[H];if(_&&N)K+=(N.x-_.x)*(N.y+_.y)}let J=K<0?-1:1,q=Q*J,U=[];for(let W=0;W<Z;W++){let H=$[(W-1+Z)%Z],_=$[W],N=$[(W+1)%Z];if(!H||!_||!N)continue;let V={x:_.x-H.x,y:_.y-H.y},X={x:N.x-_.x,y:N.y-_.y},j=Math.sqrt(V.x*V.x+V.y*V.y),z=Math.sqrt(X.x*X.x+X.y*X.y);if(j===0||z===0){U.push(_);continue}V.x/=j,V.y/=j,X.x/=z,X.y/=z;let G={x:-V.y,y:V.x},Y={x:-X.y,y:X.x},E=(G.x+Y.x)/2,w=(G.y+Y.y)/2,F=Math.sqrt(E*E+w*w);if(F>0.001){E/=F,w/=F;let A=G.x*Y.x+G.y*Y.y,B=A>-0.999?1/Math.sqrt((1+A)/2):1,L=Math.min(B,3);U.push({x:_.x+E*q*L,y:_.y+w*q*L})}else U.push(_)}return U}G6();var JK=new WeakMap,T5=null;function m0(){if(!T5)T5=new a8;return T5}var g9=null,qK=0;function $4($){if($<=qK&&g9)return g9.fill(0,0,$),g9;let Q=Math.max($,4096);return g9=new Uint8Array(Q),qK=Q,g9}function WK($,Q,Z){let K=Z===4?4:Z===2||Z===3?3:Z===0?0.125:1,J=Z===0?Math.ceil($/8):Math.ceil($*K),q=J*Q,U=$4(q);return{width:$,rows:Q,pitch:J,buffer:U.subarray(0,q),pixelMode:Z,numGrays:Z===0?2:256}}var UK=new WeakMap;function HK($){if($&A6.UnscaledComponentOffset)return!1;if($&A6.ScaledComponentOffset)return!0;return!1}function b0($){return Math.round($/64)*64}function g0($,Q,Z,K=0,J){if(K>32)return null;let q=$.getGlyph(Q);if(!q||q.type==="empty")return null;let U=J?.roundCompositeOffsets??!0;if(q.type==="simple"){let j=[],z=[],G=[],Y=[],E=0;for(let w of q.contours){for(let F of w)j.push(Math.round(F.x*Z)),z.push(Math.round(F.y*Z)),G.push(F.onCurve?1:0),E++;Y.push(E-1)}return{xCoords:j,yCoords:z,flags:new Uint8Array(G),contourEnds:Y}}let W=[],H=[],_=[],N=[],V=[],X=0;for(let j of q.components){let z=g0($,j.glyphId,Z,K+1,{roundCompositeOffsets:U});if(!z||z.xCoords.length===0)continue;let[G,Y,E,w]=j.transform,F=(j.flags&A6.ArgsAreXYValues)!==0,A=Array(z.xCoords.length),B=Array(z.yCoords.length);for(let M=0;M<z.xCoords.length;M++){let P=z.xCoords[M],T=z.yCoords[M];A[M]=Math.round(G*P+E*T),B[M]=Math.round(Y*P+w*T)}let L=0,O=0;if(F){let{arg1:M,arg2:P}=j;if(HK(j.flags)){let T=Math.round(M*Z),x=Math.round(P*Z);L=Math.round(G*T+E*x),O=Math.round(Y*T+w*x)}else L=Math.round(M*Z),O=Math.round(P*Z);if(U&&j.flags&A6.RoundXYToGrid)L=b0(L),O=b0(O)}else{let{arg1:M,arg2:P}=j;if(M>=0&&M<V.length&&P>=0&&P<A.length){let T=V[M];L=T.x-A[P],O=T.y-B[P]}}for(let M=0;M<A.length;M++){let P=A[M]+L,T=B[M]+O;W.push(P),H.push(T),_.push(z.flags[M]??0),V.push({x:P,y:T})}for(let M=0;M<z.contourEnds.length;M++)N.push(X+z.contourEnds[M]);X+=A.length}if(W.length===0)return null;return{xCoords:W,yCoords:H,flags:new Uint8Array(_),contourEnds:N}}function Q4($,Q,Z,K,J){if(Z.type!=="composite")return null;if(J>16)return null;let q=[],U=[],W=[],H=[],_=[],N=0;for(let V=0;V<Z.components.length;V++){let X=Z.components[V],j=_K($,Q,X.glyphId,K,J+1);if(!j||j.xCoords.length===0)continue;let[z,G,Y,E]=X.transform,w=(X.flags&A6.ArgsAreXYValues)!==0,F=0,A=0;if(w){let{arg1:B,arg2:L}=X;if(HK(X.flags)){let O=z*B+Y*L,M=G*B+E*L;B=O,L=M}if(F=g6(B,$.ctx.scaleFix),A=g6(L,$.ctx.scaleFix),X.flags&A6.RoundXYToGrid)F=b0(F),A=b0(A)}else{let{arg1:B,arg2:L}=X;if(B>=0&&B<_.length&&L>=0&&L<j.xCoords.length){let O=_[B],M=z*j.xCoords[L]+Y*j.yCoords[L],P=G*j.xCoords[L]+E*j.yCoords[L];F=Math.round(O.x-M),A=Math.round(O.y-P)}}for(let B=0;B<j.xCoords.length;B++){let L=j.xCoords[B],O=j.yCoords[B],M=Math.round(z*L+Y*O+F),P=Math.round(G*L+E*O+A);q.push(M),U.push(P),W.push(j.flags[B]??0),_.push({x:M,y:P})}for(let B=0;B<j.contourEnds.length;B++)H.push(N+j.contourEnds[B]);N+=j.xCoords.length}if(q.length===0)return null;return{xCoords:q,yCoords:U,flags:new Uint8Array(W),contourEnds:H,error:null}}function _K($,Q,Z,K,J=0){let q=`${Z}:${K}:${$.ctx.lightMode?"light":"full"}`,U=UK.get(Q);if(!U)U=new Map,UK.set(Q,U);let W=U.get(q);if(W!==void 0)return W;let H=Q.getGlyph(Z);if(!H||H.type==="empty")return U.set(q,null),null;if(B0($,K,K))return U.set(q,null),null;if(H.type==="composite"&&H.instructions.length===0){let X=Q4($,Q,H,K,J);if(X&&X.xCoords.length>0)return U.set(q,X),X}let N=K4(Q,Z,$.ctx.scale);if(!N)return U.set(q,null),null;let V=M0($,N);if(V.error||V.xCoords.length===0)return U.set(q,null),null;return U.set(q,V),V}function Z4($){if(!$.isTrueType||!$.hasHinting)return null;let Q=JK.get($);if(Q)return Q;let Z=$.cvtTable,K=Z?new Int32Array(Z.values):void 0,J=$.maxp;Q=F0($.unitsPerEm,"maxStackElements"in J?J.maxStackElements:256,"maxStorage"in J?J.maxStorage:64,"maxFunctionDefs"in J?J.maxFunctionDefs:64,"maxTwilightPoints"in J?J.maxTwilightPoints:16,K);let q=$.fpgm;if(q)L0(Q,q.instructions);let U=$.prep;if(U)D0(Q,U.instructions);return JK.set($,Q),Q}function K4($,Q,Z){let K=$.getGlyph(Q);if(!K||K.type==="empty")return null;let J=[],q=[],U=[],W=[],H=$.advanceWidth(Q),_=$.leftSideBearing(Q);if(K.type==="composite"&&K.instructions.length>0&&Z){let N=g0($,Q,Z);if(!N||N.xCoords.length===0)return null;let V=1/Z;for(let X=0;X<N.xCoords.length;X++)J.push(N.xCoords[X]*V),q.push(N.yCoords[X]*V),U.push(N.flags[X]??0);for(let X=0;X<N.contourEnds.length;X++)W.push(N.contourEnds[X])}else{let N=K.type==="simple"?K.contours:$.getGlyphContours(Q);if(!N||N.length===0)return null;let V=0;for(let X=0;X<N.length;X++){let j=N[X];for(let z=0;z<j.length;z++){let G=j[z];J.push(G.x),q.push(G.y),U.push(G.onCurve?1:0),V++}W.push(V-1)}}return{xCoords:J,yCoords:q,flags:new Uint8Array(U),contourEnds:W,instructions:K.instructions,lsb:_,advanceWidth:H}}function NK($,Q,Z,K){let{xCoords:J,yCoords:q,flags:U,contourEnds:W}=Q,H=0,_=0;for(let N=0;N<J.length;N++){let V=W[H],X=N===V,j=(J[N]<<2|0)+(Z<<8),z=(-q[N]<<2|0)+(K<<8),G=(U[N]&1)!==0;if(N===_)$.moveTo(j,z);else if(G)$.lineTo(j,z);else{let Y=X?_:N+1,E=(J[Y]<<2|0)+(Z<<8),w=(-q[Y]<<2|0)+(K<<8);if((U[Y]&1)!==0){if($.conicTo(j,z,E,w),!X){if(N++,N===V){let A=(J[_]<<2|0)+(Z<<8),B=(-q[_]<<2|0)+(K<<8);$.lineTo(A,B),H++,_=N+1}}}else $.conicTo(j,z,j+E>>1,z+w>>1)}if(X&&N===V){let Y=(J[_]<<2|0)+(Z<<8),E=(-q[_]<<2|0)+(K<<8);if(G&&N!==_)$.lineTo(Y,E);else if(!G){let w=(U[_]&1)!==0}H++,_=N+1}}}var J4=256;function r6($,Q){let{width:Z,height:K,scale:J,offsetX:q=0,offsetY:U=0,pixelMode:W=1,fillRule:H=0,flipY:_=!0}=Q,N=a(Z,K,W),V=m0();if(V.setClip(0,0,Z,K),K>J4){let X=()=>Y8(V,$,J,q,U,_);V.renderWithBands(N,X,{minY:0,maxY:K},H)}else V.setBandBounds(0,K),V.reset(),Y8(V,$,J,q,U,_),V.sweep(N,H);return N}function u0($,Q,Z,K){let J=K?.padding??1,q=K?.pixelMode??1;if((K?.hinting??!1)&&$.hasHinting){let G=q4($,Q,Z,J,q);if(G)return G}if($.isTrueType){let G=Z*64/$.unitsPerEm,Y=g0($,Q,G,0,{roundCompositeOffsets:!1});if(Y){let E=U4(Y,J,q);if(E)return E}}let W=h6($,Q);if(!W)return null;let H=Z/$.unitsPerEm,_=q8(W,H,!0,!0);if(!_)return{bitmap:a(1,1,q),bearingX:0,bearingY:0};let N=_.maxX-_.minX+J*2,V=_.maxY-_.minY+J*2;if(N<=0||V<=0)return{bitmap:a(1,1,q),bearingX:0,bearingY:0};let X=-_.minX+J,j=-_.minY+J;return{bitmap:r6(W,{width:N,height:V,scale:H,offsetX:X,offsetY:j,pixelMode:q,flipY:!0}),bearingX:_.minX-J,bearingY:-(_.minY-J)}}function q4($,Q,Z,K,J){let q=Z4($);if(!q)return null;let U=Math.round(Z);q.ctx.lightMode=J===1;let W=_K(q,$,Q,U);if(!W)return null;let H=W;if(J===1){let I=U*64/$.unitsPerEm,f=g0($,Q,I,0,{roundCompositeOffsets:!1});if(f&&f.xCoords.length===W.xCoords.length)H={...W,xCoords:f.xCoords}}let{xCoords:_,yCoords:N}=H,V=_[0],X=N[0],j=_[0],z=N[0];for(let I=1;I<_.length;I++){let f=_[I],l=N[I];if(f<V)V=f;if(f>j)j=f;if(l<X)X=l;if(l>z)z=l}if(!Number.isFinite(V))return{bitmap:a(1,1,J),bearingX:0,bearingY:0};let G=$.getGlyphBounds(Q);if(G){let I=Z/$.unitsPerEm,f=(G.xMax-G.xMin)*I,l=(G.yMax-G.yMin)*I,C=Math.max(f*8,Z*8,f+64),R=Math.max(l*8,Z*8,l+64),y=(j-V)/64,u=(z-X)/64;if(y>C||u>R)return null}let Y=Math.floor(V/64),E=Math.floor(X/64),w=Math.floor((j+63)/64),F=Math.floor((z+63)/64),A=w-Y+K*2,B=F-E+K*2;if(z6?.HINT_TRACE_GLYPH===String(Q))console.log("trace hinted bounds",{glyphId:Q,minX26:V,maxX26:j,minY26:X,maxY26:z,bMinX:Y,bMaxX:w,bMinY:E,bMaxY:F,width:A,height:B});if(A<=0||B<=0)return{bitmap:a(1,1,J),bearingX:0,bearingY:0};let L=WK(A,B,J),O=m0();O.setClip(0,0,A,B),O.reset();let M=-Y+K,P=F+K,T=()=>NK(O,H,M,P);try{T(),O.sweep(L,0)}catch(I){if(I instanceof S8)O.reset(),O.renderWithBands(L,T,{minY:0,maxY:B,minX:0,maxX:A},0);else throw I}let x=a(A,B,J);return x.buffer.set(L.buffer),{bitmap:x,bearingX:Y-K,bearingY:F+K}}function U4($,Q,Z){let{xCoords:K,yCoords:J}=$;if(K.length===0)return null;let q=K[0],U=J[0],W=K[0],H=J[0];for(let L=1;L<K.length;L++){let O=K[L],M=J[L];if(O<q)q=O;if(O>W)W=O;if(M<U)U=M;if(M>H)H=M}if(!Number.isFinite(q))return{bitmap:a(1,1,Z),bearingX:0,bearingY:0};let _=Math.floor(q/64),N=Math.floor(U/64),V=Math.floor((W+63)/64),X=Math.floor((H+63)/64),j=V-_+Q*2,z=X-N+Q*2;if(j<=0||z<=0)return{bitmap:a(1,1,Z),bearingX:0,bearingY:0};let G=WK(j,z,Z),Y=m0();Y.setClip(0,0,j,z),Y.reset();let E=-_+Q,w=X+Q,F={xCoords:$.xCoords,yCoords:$.yCoords,flags:$.flags,contourEnds:$.contourEnds,error:null},A=()=>NK(Y,F,E,w);try{A(),Y.sweep(G,0)}catch(L){if(L instanceof S8)Y.reset(),Y.renderWithBands(G,A,{minY:0,maxY:z,minX:0,maxX:j},0);else throw L}let B=a(j,z,Z);return B.buffer.set(G.buffer),{bitmap:B,bearingX:_-Q,bearingY:X+Q}}function VK($,Q,Z,K){let J=Z/$.unitsPerEm,q=K?.padding??2,U=K?.pixelMode??1,W=[],H=0,_=0,N=0,V=[...Q];for(let w=0;w<V.length;w++){let A=V[w].codePointAt(0);if(A===void 0)continue;let B=$.glyphId(A);if(B===void 0)continue;let L=$.advanceWidth(B)*J,O=h6($,B);if(O?.bounds)_=Math.max(_,-O.bounds.yMin*J),N=Math.max(N,O.bounds.yMax*J);W.push({glyphId:B,advance:L}),H+=L}if(W.length===0)return null;let X=Math.ceil(H)+q*2,j=Math.ceil(_+N)+q*2,z=a(X,j,U),G=m0();G.setClip(0,0,X,j);let Y=q,E=N+q;for(let w=0;w<W.length;w++){let F=W[w],A=h6($,F.glyphId);if(A)G.reset(),Y8(G,A,J,Y,E,!0),G.sweep(z);Y+=F.advance}return z}function u9($){let Q=$.pixelMode===2,Z=$.pixelMode===3,K=new Uint8Array($.width*$.rows*4),J=$.pitch,q=Math.abs(J),U=J<0?($.rows-1)*q:0;for(let W=0;W<$.rows;W++){let H=U+W*J;for(let _=0;_<$.width;_++){let N=(W*$.width+_)*4;if($.pixelMode===1){let V=H+_,X=$.buffer[V]??0;K[N]=255-X,K[N+1]=255-X,K[N+2]=255-X,K[N+3]=255}else if($.pixelMode===0){let V=H+(_>>3),X=7-(_&7),j=($.buffer[V]??0)>>X&1?255:0;K[N]=255-j,K[N+1]=255-j,K[N+2]=255-j,K[N+3]=255}else if(Q||Z){let V=H+_*3,X=$.buffer[V]??0,j=$.buffer[V+1]??0,z=$.buffer[V+2]??0;K[N]=255-X,K[N+1]=255-j,K[N+2]=255-z,K[N+3]=255}else if($.pixelMode===4){let V=H+_*4;K[N]=$.buffer[V]??0,K[N+1]=$.buffer[V+1]??0,K[N+2]=$.buffer[V+2]??0,K[N+3]=$.buffer[V+3]??0}else{let V=H+_,X=$.buffer[V]??0;K[N]=255-X,K[N+1]=255-X,K[N+2]=255-X,K[N+3]=255}}}return K}function x9($){if($.pixelMode===1&&$.pitch===$.width)return $.buffer;let Q=new Uint8Array($.width*$.rows),Z=$.pitch,K=Math.abs(Z),J=Z<0?($.rows-1)*K:0;for(let q=0;q<$.rows;q++){let U=J+q*Z;for(let W=0;W<$.width;W++){let H=q*$.width+W;if($.pixelMode===1)Q[H]=$.buffer[U+W]??0;else if($.pixelMode===0){let _=U+(W>>3),N=7-(W&7);Q[H]=($.buffer[_]??0)>>N&1?255:0}else if($.pixelMode===2||$.pixelMode===3){let _=U+W*3,N=$.buffer[_]??0,V=$.buffer[_+1]??0,X=$.buffer[_+2]??0;Q[H]=Math.round((N+V+X)/3)}else if($.pixelMode===4){let _=U+W*4;Q[H]=$.buffer[_+3]??0}}}return Q}G6();function x0($,Q,Z){let{fontSize:K,padding:J=1,maxWidth:q=2048,maxHeight:U=2048,pixelMode:W=1}=Z,H=[],_=K/$.unitsPerEm;for(let G=0;G<Q.length;G++){let Y=Q[G],E=u0($,Y,K,{padding:0,pixelMode:W});if(!E)continue;let w=$.advanceWidth(Y)*_;H.push({glyphId:Y,bitmap:E.bitmap,bearingX:E.bearingX,bearingY:E.bearingY,advance:w})}H.sort((G,Y)=>Y.bitmap.rows-G.bitmap.rows);let{width:N,height:V,placements:X}=W4(H.map((G)=>({width:G.bitmap.width+J*2,height:G.bitmap.rows+J*2})),q,U),j=a(N,V,W),z=new Map;for(let G=0;G<H.length;G++){let Y=H[G],E=X[G];if(!E.placed)continue;H4(Y.bitmap,j,E.x+J,E.y+J),z.set(Y.glyphId,{glyphId:Y.glyphId,atlasX:E.x+J,atlasY:E.y+J,width:Y.bitmap.width,height:Y.bitmap.rows,bearingX:Y.bearingX,bearingY:Y.bearingY,advance:Y.advance})}return{bitmap:j,glyphs:z,fontSize:K}}function jK($,Q){let Z=[];for(let K=32;K<=126;K++){let J=$.glyphId(K);if(J!==void 0&&J!==0)Z.push(J)}return x0($,Z,Q)}function zK($,Q,Z){let K=new Set,J=[...Q];for(let q=0;q<J.length;q++){let W=J[q].codePointAt(0);if(W===void 0)continue;let H=$.glyphId(W);if(H!==void 0&&H!==0)K.add(H)}return x0($,[...K],Z)}function W4($,Q,Z){let K=[],J=[],q=0,U=0;for(let _=0;_<$.length;_++){let N=$[_],V=!1,X=-1,j=Z;for(let z=0;z<K.length;z++){let G=K[z];if(G.width+N.width<=Q&&N.height<=G.height){if(G.y<j)X=z,j=G.y}}if(X>=0){let z=K[X];J.push({x:z.width,y:z.y,placed:!0}),z.width+=N.width,q=Math.max(q,z.width),V=!0}else{let z=U;if(z+N.height<=Z&&N.width<=Q)K.push({y:z,height:N.height,width:N.width}),J.push({x:0,y:z,placed:!0}),U=z+N.height,q=Math.max(q,N.width),V=!0}if(!V)J.push({x:0,y:0,placed:!1})}let W=XK(q),H=XK(U);return{width:Math.min(W,Q),height:Math.min(H,Z),placements:J}}function H4($,Q,Z,K){let J=$.pixelMode===2?3:1;for(let q=0;q<$.rows;q++){let U=q*$.pitch,W=(K+q)*Q.pitch+Z*J;for(let H=0;H<$.width*J;H++)Q.buffer[W+H]=$.buffer[U+H]}}function XK($){if($<=0)return 1;return $--,$|=$>>1,$|=$>>2,$|=$>>4,$|=$>>8,$|=$>>16,$+1}function GK($){let{bitmap:Q}=$,Z=new Uint8Array(Q.width*Q.rows*4);for(let K=0;K<Q.rows;K++)for(let J=0;J<Q.width;J++){let q=K*Q.pitch+J,U=(K*Q.width+J)*4,W=Q.buffer[q]??0;Z[U]=255,Z[U+1]=255,Z[U+2]=255,Z[U+3]=W}return Z}function YK($){let{bitmap:Q}=$;if(Q.pitch===Q.width)return Q.buffer;let Z=new Uint8Array(Q.width*Q.rows);for(let K=0;K<Q.rows;K++)for(let J=0;J<Q.width;J++)Z[K*Q.width+J]=Q.buffer[K*Q.pitch+J];return Z}function EK($,Q){let Z=$.glyphs.get(Q);if(!Z)return null;let{bitmap:K}=$;return{u0:Z.atlasX/K.width,v0:Z.atlasY/K.rows,u1:(Z.atlasX+Z.width)/K.width,v1:(Z.atlasY+Z.height)/K.rows}}G6();function _4($,Q,Z){return Math.max(Math.min($,Q),Math.min(Math.max($,Q),Z))}function N4($,Q,Z,K){let J=K.x-Z.x,q=K.y-Z.y,U=J*J+q*q;if(U<0.0000000001)return{distance:Math.sqrt(($-Z.x)**2+(Q-Z.y)**2),t:0};let W=(($-Z.x)*J+(Q-Z.y)*q)/U;W=Math.max(0,Math.min(1,W));let H=Math.sqrt(($-Z.x-W*J)**2+(Q-Z.y-W*q)**2);return{distance:(J*(Q-Z.y)-q*($-Z.x)>=0?1:-1)*H,t:W}}function V4($,Q,Z,K){let J=K.x-Z.x,q=K.y-Z.y,U=J*J+q*q;if(U<0.0000000001)return Math.sqrt(($-Z.x)**2+(Q-Z.y)**2);let W=(($-Z.x)*J+(Q-Z.y)*q)/U;return W=Math.max(0,Math.min(1,W)),Math.sqrt(($-Z.x-W*J)**2+(Q-Z.y-W*q)**2)}function X4($,Q,Z,K,J){let q=Z.x-2*K.x+J.x,U=Z.y-2*K.y+J.y,W=Math.min(Math.sqrt((Z.x-$)**2+(Z.y-Q)**2),Math.sqrt((J.x-$)**2+(J.y-Q)**2)),H=W===Math.sqrt((Z.x-$)**2+(Z.y-Q)**2)?0:1;for(let Y=1;Y<6;Y++){let E=Y/6;for(let L=0;L<3;L++){let O=1-E,M=O*O*Z.x+2*O*E*K.x+E*E*J.x,P=O*O*Z.y+2*O*E*K.y+E*E*J.y,T=2*(O*(K.x-Z.x)+E*(J.x-K.x)),x=2*(O*(K.y-Z.y)+E*(J.y-K.y)),I=M-$,f=P-Q,l=I*T+f*x,C=T*T+x*x+I*2*q+f*2*U;if(Math.abs(C)<0.0000000001)break;E=Math.max(0,Math.min(1,E-l/C))}let w=1-E,F=w*w*Z.x+2*w*E*K.x+E*E*J.x,A=w*w*Z.y+2*w*E*K.y+E*E*J.y,B=Math.sqrt((F-$)**2+(A-Q)**2);if(B<W)W=B,H=E}let _=1-H,N=2*(_*(K.x-Z.x)+H*(J.x-K.x)),V=2*(_*(K.y-Z.y)+H*(J.y-K.y)),X=_*_*Z.x+2*_*H*K.x+H*H*J.x,j=_*_*Z.y+2*_*H*K.y+H*H*J.y;return{distance:(N*(Q-j)-V*($-X)>=0?1:-1)*W,t:H}}function j4($,Q,Z,K,J){let q=Z.x-2*K.x+J.x,U=Z.y-2*K.y+J.y,W=Math.min(Math.sqrt((Z.x-$)**2+(Z.y-Q)**2),Math.sqrt((J.x-$)**2+(J.y-Q)**2));for(let H=1;H<6;H++){let _=H/6;for(let X=0;X<3;X++){let j=1-_,z=j*j*Z.x+2*j*_*K.x+_*_*J.x,G=j*j*Z.y+2*j*_*K.y+_*_*J.y,Y=2*(j*(K.x-Z.x)+_*(J.x-K.x)),E=2*(j*(K.y-Z.y)+_*(J.y-K.y)),w=z-$,F=G-Q,A=Y*Y+E*E+w*2*q+F*2*U;if(Math.abs(A)<0.0000000001)break;_=Math.max(0,Math.min(1,_-(w*Y+F*E)/A))}let N=1-_,V=Math.sqrt((N*N*Z.x+2*N*_*K.x+_*_*J.x-$)**2+(N*N*Z.y+2*N*_*K.y+_*_*J.y-Q)**2);if(V<W)W=V}return W}function z4($,Q,Z,K,J,q){let U=Math.min(Math.sqrt((Z.x-$)**2+(Z.y-Q)**2),Math.sqrt((q.x-$)**2+(q.y-Q)**2)),W=U===Math.sqrt((Z.x-$)**2+(Z.y-Q)**2)?0:1;for(let F=1;F<6;F++){let A=F/6;for(let f=0;f<3;f++){let l=1-A,C=l*l,R=C*l,y=A*A,u=y*A,d=R*Z.x+3*C*A*K.x+3*l*y*J.x+u*q.x,c=R*Z.y+3*C*A*K.y+3*l*y*J.y+u*q.y,n=3*C*(K.x-Z.x)+6*l*A*(J.x-K.x)+3*y*(q.x-J.x),e=3*C*(K.y-Z.y)+6*l*A*(J.y-K.y)+3*y*(q.y-J.y),g=6*l*(J.x-2*K.x+Z.x)+6*A*(q.x-2*J.x+K.x),j6=6*l*(J.y-2*K.y+Z.y)+6*A*(q.y-2*J.y+K.y),S=d-$,U6=c-Q,b=S*n+U6*e,L6=n*n+e*e+S*g+U6*j6;if(Math.abs(L6)<0.0000000001)break;A=Math.max(0,Math.min(1,A-b/L6))}let B=1-A,L=B*B,O=L*B,M=A*A,P=M*A,T=O*Z.x+3*L*A*K.x+3*B*M*J.x+P*q.x,x=O*Z.y+3*L*A*K.y+3*B*M*J.y+P*q.y,I=Math.sqrt((T-$)**2+(x-Q)**2);if(I<U)U=I,W=A}let H=1-W,_=H*H,N=W*W,V=3*_*(K.x-Z.x)+6*H*W*(J.x-K.x)+3*N*(q.x-J.x),X=3*_*(K.y-Z.y)+6*H*W*(J.y-K.y)+3*N*(q.y-J.y),j=_*H,z=N*W,G=j*Z.x+3*_*W*K.x+3*H*N*J.x+z*q.x,Y=j*Z.y+3*_*W*K.y+3*H*N*J.y+z*q.y;return{distance:(V*(Q-Y)-X*($-G)>=0?1:-1)*U,t:W}}function G4($,Q,Z,K,J,q){let U=Math.min(Math.sqrt((Z.x-$)**2+(Z.y-Q)**2),Math.sqrt((q.x-$)**2+(q.y-Q)**2));for(let W=1;W<6;W++){let H=W/6;for(let G=0;G<3;G++){let Y=1-H,E=Y*Y,w=E*Y,F=H*H,A=F*H,B=w*Z.x+3*E*H*K.x+3*Y*F*J.x+A*q.x,L=w*Z.y+3*E*H*K.y+3*Y*F*J.y+A*q.y,O=3*E*(K.x-Z.x)+6*Y*H*(J.x-K.x)+3*F*(q.x-J.x),M=3*E*(K.y-Z.y)+6*Y*H*(J.y-K.y)+3*F*(q.y-J.y),P=6*Y*(J.x-2*K.x+Z.x)+6*H*(q.x-2*J.x+K.x),T=6*Y*(J.y-2*K.y+Z.y)+6*H*(q.y-2*J.y+K.y),x=B-$,I=L-Q,f=O*O+M*M+x*P+I*T;if(Math.abs(f)<0.0000000001)break;H=Math.max(0,Math.min(1,H-(x*O+I*M)/f))}let _=1-H,N=_*_,V=N*_,X=H*H,j=X*H,z=Math.sqrt((V*Z.x+3*N*H*K.x+3*_*X*J.x+j*q.x-$)**2+(V*Z.y+3*N*H*K.y+3*_*X*J.y+j*q.y-Q)**2);if(z<U)U=z}return U}function wK($){switch($.type){case"line":return{x:$.p1.x-$.p0.x,y:$.p1.y-$.p0.y};case"quadratic":return{x:2*($.p1.x-$.p0.x),y:2*($.p1.y-$.p0.y)};case"cubic":return{x:3*($.p1.x-$.p0.x),y:3*($.p1.y-$.p0.y)}}}function AK($){switch($.type){case"line":return{x:$.p1.x-$.p0.x,y:$.p1.y-$.p0.y};case"quadratic":return{x:2*($.p2.x-$.p1.x),y:2*($.p2.y-$.p1.y)};case"cubic":return{x:3*($.p3.x-$.p2.x),y:3*($.p3.y-$.p2.y)}}}function FK($){let Q=Math.sqrt($.x*$.x+$.y*$.y);if(Q<0.0000000001)return{x:0,y:0};return{x:$.x/Q,y:$.y/Q}}function Y4($,Q){return $.x*Q.x+$.y*Q.y}function LK($,Q,Z=Math.PI/3){let K=FK($),J=FK(Q),q=Y4(K,J),U=Math.acos(Math.max(-1,Math.min(1,q)));return U>Z&&U<Math.PI-Z}function BK($){let Q=Math.PI/4;for(let Z=0;Z<$.length;Z++){let K=$[Z];if(K.length===0)continue;if(K.length===1){K[0].color=0;continue}let J=0;for(let q=0;q<K.length;q++){let U=K[q],W=K[(q-1+K.length)%K.length];if(q===0)U.color=J;else{let H=AK(W),_=wK(U);if(LK(H,_,Q))J=(J+1)%3;U.color=J}}if(K.length>=2){let q=K[K.length-1],U=K[0],W=AK(q),H=wK(U);if(LK(W,H,Q)){if(q.color===U.color){let _=K[K.length-2]?.color??0,N=K[1]?.color??0;for(let V=0;V<3;V++)if(V!==U.color&&V!==_){q.color=V;break}}}}}}function E4($,Q,Z,K,J){let q=[],U=[],W=null,H=null,_=(N,V)=>({x:N*Q+Z,y:J?-(V*Q)+K:V*Q+K});for(let N=0;N<$.commands.length;N++){let V=$.commands[N];switch(V.type){case"M":if(U.length>0)q.push(U),U=[];W=_(V.x,V.y),H=W;break;case"L":if(W){let X=_(V.x,V.y);if(Math.abs(X.x-W.x)>0.000001||Math.abs(X.y-W.y)>0.000001)U.push({type:"line",p0:W,p1:X,color:0,minX:Math.min(W.x,X.x),maxX:Math.max(W.x,X.x),minY:Math.min(W.y,X.y),maxY:Math.max(W.y,X.y)});W=X}break;case"Q":if(W){let X=_(V.x1,V.y1),j=_(V.x,V.y);U.push({type:"quadratic",p0:W,p1:X,p2:j,color:0,minX:Math.min(W.x,X.x,j.x),maxX:Math.max(W.x,X.x,j.x),minY:Math.min(W.y,X.y,j.y),maxY:Math.max(W.y,X.y,j.y)}),W=j}break;case"C":if(W){let X=_(V.x1,V.y1),j=_(V.x2,V.y2),z=_(V.x,V.y);U.push({type:"cubic",p0:W,p1:X,p2:j,p3:z,color:0,minX:Math.min(W.x,X.x,j.x,z.x),maxX:Math.max(W.x,X.x,j.x,z.x),minY:Math.min(W.y,X.y,j.y,z.y),maxY:Math.max(W.y,X.y,j.y,z.y)}),W=z}break;case"Z":if(W&&H){if(Math.abs(W.x-H.x)>0.000001||Math.abs(W.y-H.y)>0.000001)U.push({type:"line",p0:W,p1:H,color:0,minX:Math.min(W.x,H.x),maxX:Math.max(W.x,H.x),minY:Math.min(W.y,H.y),maxY:Math.max(W.y,H.y)});W=H}if(U.length>0)q.push(U),U=[];break}}if(U.length>0)q.push(U);return q}function w4($,Q,Z){switch(Z.type){case"line":return V4($,Q,Z.p0,Z.p1);case"quadratic":return j4($,Q,Z.p0,Z.p1,Z.p2);case"cubic":return G4($,Q,Z.p0,Z.p1,Z.p2,Z.p3)}}function A4($){let Q=[];for(let Z=0;Z<$.length;Z++){let K=$[Z],J=[];for(let q=0;q<K.length;q++){let U=K[q];if(U.type==="line")J.push([U.p0,U.p1]);else if(U.type==="quadratic"){let W=U.p0;for(let H=1;H<=4;H++){let _=H/4,N=1-_,V={x:N*N*U.p0.x+2*N*_*U.p1.x+_*_*U.p2.x,y:N*N*U.p0.y+2*N*_*U.p1.y+_*_*U.p2.y};J.push([W,V]),W=V}}else{let W=U.p0;for(let H=1;H<=4;H++){let _=H/4,N=1-_,V=N*N,X=V*N,j=_*_,z=j*_,G={x:X*U.p0.x+3*V*_*U.p1.x+3*N*j*U.p2.x+z*U.p3.x,y:X*U.p0.y+3*V*_*U.p1.y+3*N*j*U.p2.y+z*U.p3.y};J.push([W,G]),W=G}}}Q.push(J)}return Q}function F4($,Q,Z){let K=0;for(let J=0;J<Z.length;J++){let q=Z[J];for(let U=0;U<q.length;U++){let[W,H]=q[U];if(W.y>Q!==H.y>Q){let _=W.x+(H.x-W.x)*(Q-W.y)/(H.y-W.y);if($<_)K++}}}return(K&1)===1}function O5($,Q,Z){let K=1/0;for(let J=0;J<Z.length;J++){let q=Z[J],U=$<q.minX?q.minX-$:$>q.maxX?$-q.maxX:0,W=Q<q.minY?q.minY-Q:Q>q.maxY?Q-q.maxY:0;if(U*U+W*W>=K*K)continue;let H=w4($,Q,q);if(H<K){if(K=H,H<0.5)break}}return K}function b8($,Q){let{width:Z,height:K,scale:J,offsetX:q=0,offsetY:U=0,flipY:W=!1,spread:H=8}=Q,_=a(Z,K,2),N=E4($,J,q,U,W);if(N.length===0||N.every((F)=>F.length===0))return _.buffer.fill(0),_;BK(N);let V=A4(N),X=N.flat(),j=X.filter((F)=>F.color===0),z=X.filter((F)=>F.color===1),G=X.filter((F)=>F.color===2),Y=j.length>0?j:X,E=z.length>0?z:X,w=G.length>0?G:X;for(let F=0;F<K;F++)for(let A=0;A<Z;A++){let B=A+0.5,L=F+0.5,O=O5(B,L,Y),M=O5(B,L,E),P=O5(B,L,w),x=F4(B,L,V)?1:-1,I=O*x,f=M*x,l=P*x,C=(y)=>{let u=128+y/H*127;return Math.max(0,Math.min(255,Math.round(u)))},R=F*_.pitch+A*3;_.buffer[R]=C(I),_.buffer[R+1]=C(f),_.buffer[R+2]=C(l)}return _}function L4($,Q,Z){let K=[],J=[],q=0,U=0;for(let _=0;_<$.length;_++){let N=$[_],V=!1,X=-1,j=Z;for(let z=0;z<K.length;z++){let G=K[z];if(G.width+N.width<=Q&&N.height<=G.height){if(G.y<j)X=z,j=G.y}}if(X>=0){let z=K[X];J.push({x:z.width,y:z.y,placed:!0}),z.width+=N.width,q=Math.max(q,z.width),V=!0}else{let z=U;if(z+N.height<=Z&&N.width<=Q)K.push({y:z,height:N.height,width:N.width}),J.push({x:0,y:z,placed:!0}),U=z+N.height,q=Math.max(q,N.width),V=!0}if(!V)J.push({x:0,y:0,placed:!1})}let W=DK(q),H=DK(U);return{width:Math.min(W,Q),height:Math.min(H,Z),placements:J}}function DK($){if($<=0)return 1;return $--,$|=$>>1,$|=$>>2,$|=$>>4,$|=$>>8,$|=$>>16,$+1}function D4($,Q,Z,K){for(let J=0;J<$.rows;J++){let q=J*$.pitch,U=(K+J)*Q.pitch+Z*3;for(let W=0;W<$.width*3;W++)Q.buffer[U+W]=$.buffer[q+W]}}function f0($,Q,Z){let{fontSize:K,padding:J=2,maxWidth:q=2048,maxHeight:U=2048,spread:W=4}=Z,H=K/$.unitsPerEm,_=[];for(let G=0;G<Q.length;G++){let Y=Q[G],E=h6($,Y);if(!E||!E.bounds)continue;let w=E.bounds,F=Math.ceil((w.xMax-w.xMin)*H)+W*2,A=Math.ceil((w.yMax-w.yMin)*H)+W*2;if(F<=0||A<=0)continue;let B=b8(E,{width:F,height:A,scale:H,offsetX:-w.xMin*H+W,offsetY:w.yMax*H+W,flipY:!0,spread:W}),L=$.advanceWidth(Y)*H,O=w.xMin*H-W,M=w.yMax*H+W;_.push({glyphId:Y,bitmap:B,bearingX:O,bearingY:M,advance:L})}_.sort((G,Y)=>Y.bitmap.rows-G.bitmap.rows);let{width:N,height:V,placements:X}=L4(_.map((G)=>({width:G.bitmap.width+J*2,height:G.bitmap.rows+J*2})),q,U),j=a(N,V,2),z=new Map;for(let G=0;G<_.length;G++){let Y=_[G],E=X[G];if(!E.placed)continue;D4(Y.bitmap,j,E.x+J,E.y+J),z.set(Y.glyphId,{glyphId:Y.glyphId,atlasX:E.x+J,atlasY:E.y+J,width:Y.bitmap.width,height:Y.bitmap.rows,bearingX:Y.bearingX,bearingY:Y.bearingY,advance:Y.advance})}return{bitmap:j,glyphs:z,fontSize:K}}function MK($,Q){let Z=[];for(let K=32;K<=126;K++){let J=$.glyphId(K);if(J!==void 0&&J!==0)Z.push(J)}return f0($,Z,Q)}function RK($,Q,Z){let K=new Set,J=Array.from(Q);for(let q=0;q<J.length;q++){let W=J[q].codePointAt(0);if(W===void 0)continue;let H=$.glyphId(W);if(H!==void 0&&H!==0)K.add(H)}return f0($,[...K],Z)}function TK($){let{bitmap:Q}=$;if(Q.pitch===Q.width*3)return Q.buffer;let Z=new Uint8Array(Q.width*Q.rows*3);for(let K=0;K<Q.rows;K++)for(let J=0;J<Q.width*3;J++)Z[K*Q.width*3+J]=Q.buffer[K*Q.pitch+J];return Z}function OK($){let{bitmap:Q}=$,Z=new Uint8Array(Q.width*Q.rows*4);for(let K=0;K<Q.rows;K++)for(let J=0;J<Q.width;J++){let q=K*Q.pitch+J*3,U=(K*Q.width+J)*4;Z[U]=Q.buffer[q],Z[U+1]=Q.buffer[q+1],Z[U+2]=Q.buffer[q+2],Z[U+3]=255}return Z}G6();var B4=Math.PI;function M4($,Q,Z){let K=0.5/Z,J=Math.exp(-K),q=J*J,U=Math.sqrt(K/B4);$[0]=U,U*=J,$[1]=U;for(let W=2;W<Q;W++)J*=q,U*=J,$[W]=U}function PK($,Q,Z){let K=$[1],J=$[2],q=$[3];for(let U=0;U<Q;U++){let W=$[U]*Z[0]+(K+$[U+1])*Z[1]+(J+$[U+2])*Z[2]+(q+$[U+3])*Z[3];q=J,J=K,K=$[U],$[U]=W}}function R4($,Q,Z){for(let K=0;K<Z;K++){$[K][K]=Q[2*K+2]+3*Q[0]-4*Q[K+1];for(let J=K+1;J<Z;J++)$[K][J]=$[J][K]=Q[K+J+2]+Q[J-K]+2*(Q[0]-Q[K+1]-Q[J+1])}for(let K=0;K<Z;K++){let J=1/$[K][K];$[K][K]=1;for(let q=0;q<Z;q++){if(q===K)continue;let U=$[q][K]*J;$[q][K]=0;for(let W=0;W<Z;W++)$[q][W]-=$[K][W]*U}for(let q=0;q<Z;q++)$[K][q]*=J}}function T4($,Q,Z,K){let q=[((0.27116402116402116*K+0.09027777777777778)*K+0.20833333333333334)*K+0.43022486772486773,((-0.20337301587301587*K-0.022569444444444444)*K-0.017361111111111112)*K+0.24330357142857142,((0.08134920634920635*K-0.04513888888888889)*K-0.0763888888888889)*K+0.04017857142857143,((-0.013558201058201057*K+0.022569444444444444)*K-0.010416666666666666)*K+0.0014054232804232803],U=new Float64Array(17);U[0]=q[0],U[1]=q[1],U[2]=q[2],U[3]=q[3],PK(U,7,q);let W=new Float64Array(12);M4(W,Q+4,Z*K),PK(W,Q+1,q);let H=[];for(let N=0;N<8;N++)H.push(new Float64Array(8));R4(H,U,Q);let _=new Float64Array(8);for(let N=0;N<Q;N++)_[N]=U[0]-U[N+1]-W[0]+W[N+1];for(let N=0;N<Q;N++){let V=0;for(let X=0;X<Q;X++)V+=H[N][X]*_[X];$[N]=Math.max(0,V)}}function vK($){let Q=new Float64Array(8),Z,K;if($<0.5)Z=0,K=4,Q[1]=0.085*$*$*$,Q[0]=0.5*$-4*Q[1],Q[2]=Q[3]=0;else{let q=Math.sqrt(0.11569*$+0.20591047);Z=Math.floor(Math.log2(q))+1;let U=q/2**(Z-1)-1,W=0.25**Z;K=8-Math.floor((10.1525+0.8335*W)*(1-U)),K=Math.max(K,4),K=Math.min(K,8),T4(Q,K,$,W)}let J=new Float32Array(8);for(let q=0;q<K;q++)J[q]=Q[q];return{level:Z,radius:K,coeff:J}}function O4($,Q,Z,K,J,q){let U=Math.floor((Z+5)/2);for(let W=0;W<K;W++){let H=W*J,_=W*q;for(let N=0;N<U;N++){let V=N*2,X=0;X+=(Q[H+Math.max(0,V-2)]??0)*1,X+=(Q[H+Math.max(0,V-1)]??0)*5,X+=(Q[H+Math.min(Z-1,V)]??0)*10,X+=(Q[H+Math.min(Z-1,V+1)]??0)*10,X+=(Q[H+Math.min(Z-1,V+2)]??0)*5,X+=(Q[H+Math.min(Z-1,V+3)]??0)*1,$[_+N]=X/32}}}function P4($,Q,Z,K,J,q){let U=Math.floor((K+5)/2);for(let W=0;W<Z;W++)for(let H=0;H<U;H++){let _=H*2,N=0;N+=(Q[Math.max(0,_-2)*J+W]??0)*1,N+=(Q[Math.max(0,_-1)*J+W]??0)*5,N+=(Q[Math.min(K-1,_)*J+W]??0)*10,N+=(Q[Math.min(K-1,_+1)*J+W]??0)*10,N+=(Q[Math.min(K-1,_+2)*J+W]??0)*5,N+=(Q[Math.min(K-1,_+3)*J+W]??0)*1,$[H*q+W]=N/32}}function v4($,Q,Z,K,J,q){let U=Z*2+4;for(let W=0;W<K;W++){let H=W*J,_=W*q;for(let N=0;N<U;N++){let V=Math.floor((N-2)/2),X=N-2&1,j=0;if(X===0)j+=(Q[H+Math.max(0,Math.min(Z-1,V-1))]??0)*1,j+=(Q[H+Math.max(0,Math.min(Z-1,V))]??0)*30,j+=(Q[H+Math.max(0,Math.min(Z-1,V+1))]??0)*1;else j+=(Q[H+Math.max(0,Math.min(Z-1,V))]??0)*16,j+=(Q[H+Math.max(0,Math.min(Z-1,V+1))]??0)*16;$[_+N]=j/32}}}function I4($,Q,Z,K,J,q){let U=K*2+4;for(let W=0;W<Z;W++)for(let H=0;H<U;H++){let _=Math.floor((H-2)/2),N=H-2&1,V=0;if(N===0)V+=(Q[Math.max(0,Math.min(K-1,_-1))*J+W]??0)*1,V+=(Q[Math.max(0,Math.min(K-1,_))*J+W]??0)*30,V+=(Q[Math.max(0,Math.min(K-1,_+1))*J+W]??0)*1;else V+=(Q[Math.max(0,Math.min(K-1,_))*J+W]??0)*16,V+=(Q[Math.max(0,Math.min(K-1,_+1))*J+W]??0)*16;$[H*q+W]=V/32}}function k4($,Q,Z,K,J,q,U,W){let H=Z+2*U;for(let _=0;_<K;_++){let N=_*J,V=_*q;for(let X=0;X<H;X++){let j=X-U,z=0;for(let G=0;G<U;G++){let Y=Math.max(0,Math.min(Z-1,j-G-1)),E=Math.max(0,Math.min(Z-1,j+G));z+=((Q[N+Y]??0)+(Q[N+E]??0))*W[G]}$[V+X]=z}}}function C4($,Q,Z,K,J,q,U,W){let H=K+2*U;for(let _=0;_<Z;_++)for(let N=0;N<H;N++){let V=N-U,X=0;for(let j=0;j<U;j++){let z=Math.max(0,Math.min(K-1,V-j-1)),G=Math.max(0,Math.min(K-1,V+j));X+=((Q[z*J+_]??0)+(Q[G*J+_]??0))*W[j]}$[N*q+_]=X}}function S4($,Q,Z){let K=(Q+Z)/2;return o6($,K)}function m8($,Q,Z=Q){if(Q<=0&&Z<=0)return $;if($.pixelMode===4)return S4($,Q,Z);let K=Q*Q,J=Z*Z,q=vK(K),U=vK(J),W=$.width,H=$.rows,_=(2*q.radius+9<<q.level)-5,N=(2*U.radius+9<<U.level)-5,V=(W+_&~((1<<q.level)-1))-4,X=(H+N&~((1<<U.level)-1))-4,j=Math.max(W*H,V*X)*2,z=new Float32Array(j),G=new Float32Array(j);for(let M=0;M<H;M++)for(let P=0;P<W;P++)z[M*W+P]=$.buffer[M*$.pitch+P]??0;let Y=z,E=G,w=W;for(let M=0;M<U.level;M++){let P=Math.floor((H+5)/2);P4(E,Y,W,H,w,W),H=P,[Y,E]=[E,Y]}for(let M=0;M<q.level;M++){let P=Math.floor((W+5)/2);O4(E,Y,W,H,w,P),W=P,w=P,[Y,E]=[E,Y]}let F=W+2*q.radius;k4(E,Y,W,H,w,F,q.radius,q.coeff),W=F,w=F,[Y,E]=[E,Y];let A=H+2*U.radius;C4(E,Y,W,H,w,w,U.radius,U.coeff),H=A,[Y,E]=[E,Y];for(let M=0;M<q.level;M++){let P=W*2+4;v4(E,Y,W,H,w,P),W=P,w=P,[Y,E]=[E,Y]}for(let M=0;M<U.level;M++){let P=H*2+4;I4(E,Y,W,H,w,w),H=P,[Y,E]=[E,Y]}let B=Math.min(W,V),L=Math.min(H,X),O=new Uint8Array(B*L);for(let M=0;M<L;M++)for(let P=0;P<B;P++){let T=Y[M*w+P]??0;O[M*B+P]=Math.max(0,Math.min(255,Math.round(T)))}return{buffer:O,width:B,rows:L,pitch:B,pixelMode:1,numGrays:256}}function f9($,Q){return m8($,Q,Q)}function l9($,Q,Z){let K=Z??Q;if(Math.max(Q,K)<=3)return o6($,(Q+K)/2);return m8($,Q,K)}G6();class s{_bitmap;_bearingX;_bearingY;constructor($,Q=0,Z=0){this._bitmap=$;this._bearingX=Q;this._bearingY=Z}static fromBitmap($){return new s(q6($))}static fromBitmapWithBearing($,Q,Z){return new s(q6($),Q,Z)}static fromRasterizedGlyph($){return new s(q6($.bitmap),$.bearingX,$.bearingY)}static create($,Q,Z=1){return new s(a($,Q,Z))}static fromGradient($,Q,Z){return new s(h0($,Q,Z))}blur($){let Q=o6(q6(this._bitmap),$);return new s(Q,this._bearingX,this._bearingY)}boxBlur($){let Q=E8(q6(this._bitmap),$);return new s(Q,this._bearingX,this._bearingY)}cascadeBlur($,Q){let Z=m8(q6(this._bitmap),$,Q??$);return new s(Z,this._bearingX,this._bearingY)}adaptiveBlur($,Q){let Z=l9(q6(this._bitmap),$,Q??$);return new s(Z,this._bearingX,this._bearingY)}fastBlur($){let Q=f9(q6(this._bitmap),$);return new s(Q,this._bearingX,this._bearingY)}embolden($,Q){let Z=r8(this._bitmap,$,Q??$);return new s(Z,this._bearingX,this._bearingY)}shift($,Q){let Z=b9(this._bitmap,$,Q);return new s(Z,this._bearingX+$,this._bearingY-Q)}resize($,Q){let Z=h8(this._bitmap,$,Q);return new s(Z,this._bearingX,this._bearingY)}resizeBilinear($,Q){let Z=t8(this._bitmap,$,Q);return new s(Z,this._bearingX,this._bearingY)}pad($,Q,Z,K){let J=$,q=Q??$,U=Z??$,W=K??$,H=m9(this._bitmap,J,q,U,W);return new s(H,this._bearingX-J,this._bearingY+q)}blend($,Q,Z,K=1){let J=$ instanceof s?$._bitmap:$,q=q6(this._bitmap);return C0(q,J,Q,Z,K),new s(q,this._bearingX,this._bearingY)}composite($,Q=0,Z=0){let K=$ instanceof s?$._bitmap:$,J=q6(this._bitmap);return D5(J,K,Q,Z),new s(J,this._bearingX,this._bearingY)}add($,Q=0,Z=0){let K=$ instanceof s?$._bitmap:$,J=q6(this._bitmap);return A5(J,K,Q,Z),new s(J,this._bearingX,this._bearingY)}subtract($,Q=0,Z=0){let K=$ instanceof s?$._bitmap:$,J=q6(this._bitmap);return L5(J,K,Q,Z),new s(J,this._bearingX,this._bearingY)}multiply($,Q=0,Z=0){let K=$ instanceof s?$._bitmap:$,J=q6(this._bitmap);return F5(J,K,Q,Z),new s(J,this._bearingX,this._bearingY)}max($,Q=0,Z=0){let K=$ instanceof s?$._bitmap:$,J=q6(this._bitmap);return B5(J,K,Q,Z),new s(J,this._bearingX,this._bearingY)}convert($){let Q=U8(this._bitmap,$);return new s(Q,this._bearingX,this._bearingY)}toRGBA(){return u9(this._bitmap)}toGray(){return x9(this._bitmap)}toBitmap(){return q6(this._bitmap)}toRasterizedGlyph(){return{bitmap:q6(this._bitmap),bearingX:this._bearingX,bearingY:this._bearingY}}clone(){return new s(q6(this._bitmap),this._bearingX,this._bearingY)}get width(){return this._bitmap.width}get height(){return this._bitmap.rows}get pixelMode(){return this._bitmap.pixelMode}get bearingX(){return this._bearingX}get bearingY(){return this._bearingY}}function h4($,Q,Z,K){let J=-Q*K,q=$*Z,U=Math.sqrt(J*J+q*q);if(U<0.0000000001)return{x:0,y:0,len:0};return{x:J/U,y:q/U,len:U}}function P5($,Q,Z,K,J){let q=Z.x-$.x,U=Z.y-$.y;if(Math.abs((Q.x-$.x)*U-(Q.y-$.y)*q)/Math.sqrt(q*q+U*U+0.0000000001)<=K){J.push(Z);return}let H={x:($.x+Q.x)/2,y:($.y+Q.y)/2},_={x:(Q.x+Z.x)/2,y:(Q.y+Z.y)/2},N={x:(H.x+_.x)/2,y:(H.y+_.y)/2};P5($,H,N,K,J),P5(N,_,Z,K,J)}function v5($,Q,Z,K,J,q){let U=K.x-$.x,W=K.y-$.y,H=U*U+W*W+0.0000000001,_=Math.abs((Q.x-$.x)*W-(Q.y-$.y)*U)/Math.sqrt(H),N=Math.abs((Z.x-$.x)*W-(Z.y-$.y)*U)/Math.sqrt(H);if(_<=J&&N<=J){q.push(K);return}let V={x:($.x+Q.x)/2,y:($.y+Q.y)/2},X={x:(Q.x+Z.x)/2,y:(Q.y+Z.y)/2},j={x:(Z.x+K.x)/2,y:(Z.y+K.y)/2},z={x:(V.x+X.x)/2,y:(V.y+X.y)/2},G={x:(X.x+j.x)/2,y:(X.y+j.y)/2},Y={x:(z.x+G.x)/2,y:(z.y+G.y)/2};v5($,V,z,Y,J,q),v5(Y,G,j,K,J,q)}function y4($,Q){let Z=[],K=[],J={x:0,y:0},q={x:0,y:0};for(let U=0;U<$.commands.length;U++){let W=$.commands[U];switch(W.type){case"M":if(K.length>1)Z.push({points:K,closed:!1});J={x:W.x,y:W.y},q=J,K=[J];break;case"L":J={x:W.x,y:W.y},K.push(J);break;case"Q":P5(J,{x:W.x1,y:W.y1},{x:W.x,y:W.y},Q,K),J={x:W.x,y:W.y};break;case"C":v5(J,{x:W.x1,y:W.y1},{x:W.x2,y:W.y2},{x:W.x,y:W.y},Q,K),J={x:W.x,y:W.y};break;case"Z":if(K.length>1){let H=K[0],_=K[K.length-1];if(H&&_){let N=_.x-H.x,V=_.y-H.y;if(N*N+V*V>Q*Q)K.push({...H})}Z.push({points:K,closed:!0})}K=[],J=q;break}}if(K.length>1)Z.push({points:K,closed:!1});return Z}function IK($,Q,Z,K,J,q,U){let W=Z.x*K.x+Z.y*K.y,H=Z.x*K.y-Z.y*K.x,_=Math.atan2(H,W),N=Math.max(2,Math.ceil(Math.abs(_)/(Math.PI/8))),V=U?1:-1,X=Math.atan2(Z.y,Z.x);for(let j=1;j<=N;j++){let z=j/N,G=X+_*z,Y=Math.cos(G),E=Math.sin(G);$.push({x:Q.x+Y*J*V,y:Q.y+E*q*V})}}function kK($,Q,Z,K,J,q,U,W){let H=W?1:-1,_=Z.x*K.x+Z.y*K.y,N=Math.sqrt((1-_)/2);if(N<0.0000000001)return!1;let V=1/N;if(V>U)return!1;let X=Z.x+K.x,j=Z.y+K.y,z=Math.sqrt(X*X+j*j);if(z<0.0000000001)return!1;let G=V*Math.sqrt(J*J+q*q)/2;return $.push({x:Q.x+X/z*G*H,y:Q.y+j/z*G*H}),!0}function b4($,Q,Z,K,J){let q=$.length;if(q<3)return{outer:[],inner:[]};let U=q-1,W=$[0],H=$[U],_=q;if(W&&H){let j=H.x-W.x,z=H.y-W.y;if(j*j+z*z<1)_=q-1}if(_<3)return{outer:[],inner:[]};let N=[];for(let j=0;j<_;j++){let z=$[j],G=$[(j+1)%_];if(!z||!G)continue;let Y=G.x-z.x,E=G.y-z.y,w=Math.sqrt(Y*Y+E*E);if(w<0.0000000001)N.push({x:0,y:0,len:0});else N.push(h4(Y/w,E/w,Q,Z))}let V=[],X=[];for(let j=0;j<_;j++){let z=$[j],G=N[(j-1+_)%_],Y=N[j];if(!z||!G||!Y)continue;if(G.len<0.0000000001||Y.len<0.0000000001){V.push({x:z.x+(Y.len>0?Y.x*Q:0),y:z.y+(Y.len>0?Y.y*Z:0)});continue}let E={x:z.x+Y.x*Q,y:z.y+Y.y*Z},w=G.x*Y.y-G.y*Y.x,F=w>0;if(Math.abs(w)<0.01)V.push(E);else if(F)switch(K){case"round":IK(V,z,G,Y,Q,Z,!0);break;case"miter":if(!kK(V,z,G,Y,Q,Z,J,!0))V.push(E);break;default:V.push(E);break}else V.push(E)}for(let j=0;j<_;j++){let z=$[j],G=N[(j-1+_)%_],Y=N[j];if(!z||!G||!Y)continue;if(G.len<0.0000000001||Y.len<0.0000000001){X.push({x:z.x-(Y.len>0?Y.x*Q:0),y:z.y-(Y.len>0?Y.y*Z:0)});continue}let E={x:z.x-Y.x*Q,y:z.y-Y.y*Z},w=G.x*Y.y-G.y*Y.x,F=w<0;if(Math.abs(w)<0.01)X.push(E);else if(F)switch(K){case"round":IK(X,z,G,Y,Q,Z,!1);break;case"miter":if(!kK(X,z,G,Y,Q,Z,J,!1))X.push(E);break;default:X.push(E);break}else X.push(E)}return{outer:V,inner:X}}function CK($,Q){if($.length===0)return[];let Z=[],K=$[0];if(!K)return[];Z.push({type:"M",x:K.x,y:K.y});for(let J=1;J<$.length;J++){let q=$[J];if(!q)continue;Z.push({type:"L",x:q.x,y:q.y})}if(Q)Z.push({type:"Z"});return Z}function g8($,Q){let{xBorder:Z,yBorder:K,eps:J=1,lineJoin:q="round",miterLimit:U=4}=Q;if(Z<=0&&K<=0)return{outer:{commands:[],bounds:null},inner:{commands:[],bounds:null}};let W=y4($,J),H=[],_=[];for(let X=0;X<W.length;X++){let j=W[X];if(!j.closed){let Y=j.points[0];if(Y)j.points.push(Y);j.closed=!0}let{outer:z,inner:G}=b4(j.points,Z,K,q,U);H.push(...CK(z,!0)),_.push(...CK(G,!0))}let N=null,V=null;if($.bounds)N={xMin:$.bounds.xMin-Z,yMin:$.bounds.yMin-K,xMax:$.bounds.xMax+Z,yMax:$.bounds.yMax+K},V={xMin:$.bounds.xMin+Z,yMin:$.bounds.yMin+K,xMax:$.bounds.xMax-Z,yMax:$.bounds.yMax-K};return{outer:{commands:H,bounds:N,flags:$.flags},inner:{commands:_,bounds:V,flags:$.flags}}}function d9($,Q){let{outer:Z,inner:K}=g8($,Q),J=[...Z.commands,...K.commands],q=Z.bounds;return{commands:J,bounds:q,flags:$.flags}}function m4($,Q,Z){return g8($,{xBorder:Q,yBorder:Q,...Z})}G6();class K6{_path;_transform;_font;constructor($,Q,Z){this._path=$;this._transform=Q;this._font=Z}static fromGlyph($,Q){let Z=h6($,Q);if(!Z)return null;return new K6(Z,{matrix2D:v6(),matrix3D:null},$)}static fromGlyphWithVariation($,Q,Z){let K=C9($,Q,Z);if(!K)return null;return new K6(K,{matrix2D:v6(),matrix3D:null},$)}static fromPath($){return new K6(i8($),{matrix2D:v6(),matrix3D:null},null)}static combine(...$){let Q=$.map((K)=>K.toPath()),Z=k9(Q);return new K6(Z,{matrix2D:v6(),matrix3D:null},null)}scale($,Q=$){let Z=k8(this._transform.matrix2D,P8($,Q));return new K6(this._path,{...this._transform,matrix2D:Z},this._font)}translate($,Q){let Z=k8(this._transform.matrix2D,c8($,Q));return new K6(this._path,{...this._transform,matrix2D:Z},this._font)}rotate($){let Q=k8(this._transform.matrix2D,v8($));return new K6(this._path,{...this._transform,matrix2D:Q},this._font)}rotateDeg($){return this.rotate($*Math.PI/180)}shear($,Q){let Z=k8(this._transform.matrix2D,I8($,Q));return new K6(this._path,{...this._transform,matrix2D:Z},this._font)}italic($){let Q=Math.tan($*Math.PI/180);return this.shear(Q,0)}matrix($){let Q=k8(this._transform.matrix2D,$);return new K6(this._path,{...this._transform,matrix2D:Q},this._font)}resetTransform(){return new K6(this._path,{matrix2D:v6(),matrix3D:null},this._font)}perspective($){let Q=this._transform.matrix3D?v9(this._transform.matrix3D,$):$;return new K6(this._path,{...this._transform,matrix3D:Q},this._font)}perspectiveVanish($,Q,Z){let K=N5($,Q,Z);return this.perspective(K)}apply(){let $=this.applyTransformToPath();return new K6($,{matrix2D:v6(),matrix3D:null},this._font)}embolden($){let Q=this.applyTransformToPath(),Z=K9(Q,$);return new K6(Z,{matrix2D:v6(),matrix3D:null},this._font)}condense($){let Q=this.applyTransformToPath(),Z=Z9(Q,$);return new K6(Z,{matrix2D:v6(),matrix3D:null},this._font)}oblique($){let Q=this.applyTransformToPath(),Z=Q9(Q,$);return new K6(Z,{matrix2D:v6(),matrix3D:null},this._font)}stroke($,Q,Z){let K=this.applyTransformToPath(),q=$9(K,typeof $==="number"?{width:$,lineCap:Q,lineJoin:Z}:$);return new K6(q,{matrix2D:v6(),matrix3D:null},this._font)}strokeAsymmetric($){let Q=this.applyTransformToPath(),{outer:Z,inner:K}=g8(Q,$);return{outer:new K6(Z,{matrix2D:v6(),matrix3D:null},this._font),inner:new K6(K,{matrix2D:v6(),matrix3D:null},this._font)}}strokeAsymmetricCombined($){let Q=this.applyTransformToPath(),Z=d9(Q,$);return new K6(Z,{matrix2D:v6(),matrix3D:null},this._font)}controlBox(){let $=this.applyTransformToPath();return _5($)}tightBounds(){let $=this.applyTransformToPath();return v0($)}getTransformMatrix(){return[...this._transform.matrix2D]}getTransformMatrix3D(){if(!this._transform.matrix3D)return null;return this._transform.matrix3D.map(($)=>[...$])}rasterize($){let Q=this.applyTransformToPath(),{width:Z=100,height:K=100,scale:J=1,offsetX:q=0,offsetY:U=0,pixelMode:W=1,fillRule:H=0,flipY:_=!0}=$,N=r6(Q,{width:Z,height:K,scale:J,offsetX:q,offsetY:U,pixelMode:W,fillRule:H,flipY:_});return s.fromBitmap(N)}rasterizeAuto($){let Q=this.applyTransformToPath(),{padding:Z=1,scale:K=1,pixelMode:J=1,fillRule:q=0,flipY:U=!0}=$??{},W=q8(Q,K,U);if(!W){let{createBitmap:j}=(G6(),j0(S9));return s.fromBitmap(j(1,1,J))}let H=W.maxX-W.minX+Z*2,_=W.maxY-W.minY+Z*2,N=-W.minX+Z,V=-W.minY+Z,X=r6(Q,{width:H,height:_,scale:K,offsetX:N,offsetY:V,pixelMode:J,fillRule:q,flipY:U});return s.fromBitmapWithBearing(X,W.minX-Z,-(W.minY-Z))}rasterizeWithGradient($,Q){let Z=this.applyTransformToPath(),{width:K=100,height:J=100,scale:q=1,offsetX:U=0,offsetY:W=0,pixelMode:H=1,fillRule:_=0,flipY:N=!0}=Q,V=e8(Z,$,{width:K,height:J,scale:q,offsetX:U,offsetY:W,pixelMode:H,fillRule:_,flipY:N});return s.fromBitmap(V)}toSdf($){let Q=this.applyTransformToPath(),Z=y8(Q,$);return s.fromBitmap(Z)}toSdfAuto($){let Q=this.applyTransformToPath(),{padding:Z=1,scale:K=1,spread:J=8,flipY:q=!0}=$??{},U=q8(Q,K,q);if(!U){let{createBitmap:X}=(G6(),j0(S9));return s.fromBitmap(X(1,1,1))}let W=U.maxX-U.minX+Z*2+J*2,H=U.maxY-U.minY+Z*2+J*2,_=-U.minX+Z+J,N=q?U.maxY+Z+J:-U.minY+Z+J,V=y8(Q,{width:W,height:H,scale:K,offsetX:_,offsetY:N,flipY:q,spread:J});return s.fromBitmapWithBearing(V,U.minX-Z-J,-(U.minY-Z-J))}toMsdf($){let Q=this.applyTransformToPath(),Z=b8(Q,$);return s.fromBitmap(Z)}toMsdfAuto($){let Q=this.applyTransformToPath(),{padding:Z=1,scale:K=1,spread:J=8,flipY:q=!0}=$??{},U=q8(Q,K,q);if(!U){let{createBitmap:X}=(G6(),j0(S9));return s.fromBitmap(X(1,1,2))}let W=U.maxX-U.minX+Z*2+J*2,H=U.maxY-U.minY+Z*2+J*2,_=-U.minX+Z+J,N=q?U.maxY+Z+J:-U.minY+Z+J,V=b8(Q,{width:W,height:H,scale:K,offsetX:_,offsetY:N,flipY:q,spread:J});return s.fromBitmapWithBearing(V,U.minX-Z-J,-(U.minY-Z-J))}toSVG($){let{flipY:Q=!0,scale:Z=1}=$??{};if(this.hasTransform()){let K=this.applyTransformToPath();return G8(K,{flipY:Q,scale:Z})}return G8(this._path,{flipY:Q,scale:Z})}toSVGElement($){let{fontSize:Q=100,fill:Z="currentColor",stroke:K,strokeWidth:J=1}=$??{},q=this.applyTransformToPath(),U=v0(q),W=this._font?Q/this._font.unitsPerEm:1,H=W!==1?O6(q,P8(W,W)):q,_=W!==1?{xMin:U.xMin*W,yMin:U.yMin*W,xMax:U.xMax*W,yMax:U.yMax*W}:U,N=K?J/2:0,V=Math.ceil(_.xMax-_.xMin+N*2),X=Math.ceil(_.yMax-_.yMin+N*2),j=`${_.xMin-N} ${-_.yMax-N} ${_.xMax-_.xMin+N*2} ${_.yMax-_.yMin+N*2}`,z=G8(H,{flipY:!0,scale:1}),G=K?` stroke="${K}" stroke-width="${J}"`:"";return`<svg xmlns="http://www.w3.org/2000/svg" width="${V}" height="${X}" viewBox="${j}">
|
|
10
10
|
<path d="${z}" fill="${Z}"${G}/>
|
|
11
|
-
</svg>`}toCanvas($,Q){let{flipY:Z=!0,scale:K=1,offsetX:J=0,offsetY:q=0,fill:U="black",stroke:W,strokeWidth:H=1}=Q??{};if($.beginPath(),this._transform.matrix3D){let _=this.combinedMatrix3D(K,J,q);k0($,this._path,_,{flipY:Z})}else if(this.hasTransform2D()){let _=this.combinedMatrix2D(K,J,q);I0($,this._path,_,{flipY:Z})}else s8($,this._path,{flipY:Z,scale:K,offsetX:J,offsetY:q});if(U!=="none")$.fillStyle=U,$.fill();if(W)$.strokeStyle=W,$.lineWidth=H,$.stroke()}toPath2D($){let Q=this.applyTransformToPath();return j5(Q,$)}toPath(){return this.applyTransformToPath()}clone(){return new Z6(i8(this._path),{matrix2D:[...this._transform.matrix2D],matrix3D:this._transform.matrix3D?this._transform.matrix3D.map(($)=>[...$]):null},this._font)}applyTransformToPath(){if(this._transform.matrix3D){let $=this._transform.matrix2D,Q=[[$[0],$[2],$[4]],[$[1],$[3],$[5]],[0,0,1]],Z=v9(this._transform.matrix3D,Q);return I9(this._path,Z)}return O6(this._path,this._transform.matrix2D)}hasTransform(){return this.hasTransform2D()||this._transform.matrix3D!==null}hasTransform2D(){let $=this._transform.matrix2D;return $[0]!==1||$[1]!==0||$[2]!==0||$[3]!==1||$[4]!==0||$[5]!==0}combinedMatrix2D($,Q,Z){let K=this._transform.matrix2D;return[K[0]*$,K[1]*$,K[2]*$,K[3]*$,K[0]*Q+K[2]*Z+K[4]*$,K[1]*Q+K[3]*Z+K[5]*$]}combinedMatrix3D($,Q,Z){let K=this._transform.matrix2D,J=this._transform.matrix3D??H5(),q=[[K[0]*$,K[2]*$,K[4]*$+Q],[K[1]*$,K[3]*$,K[5]*$+Z],[0,0,1]];return v9(J,q)}}z6();function SK($,...Q){return Q.reduce((Z,K)=>K(Z),$)}function hK($,Q){return y6($,Q)}function yK($,Q){return(Z)=>O6(Z,P8($,Q??$))}function bK($,Q){return(Z)=>O6(Z,c8($,Q))}function mK($){return(Q)=>O6(Q,v8($))}function gK($){return(Q)=>O6(Q,v8($*Math.PI/180))}function uK($,Q){return(Z)=>O6(Z,I8($,Q))}function xK($){let Q=Math.tan($*Math.PI/180);return(Z)=>O6(Z,I8(Q,0))}function fK($){return(Q)=>O6(Q,$)}function lK($){return(Q)=>I9(Q,$)}function dK($){return(Q)=>K9(Q,$)}function nK($){return(Q)=>Z9(Q,$)}function pK($){return(Q)=>Q9(Q,$)}function oK($,Q,Z){let K=typeof $==="number"?{width:$,lineCap:Q,lineJoin:Z}:$;return(J)=>$9(J,K)}function cK(){return($)=>i8($)}function iK($){return k9($)}function sK($){return(Q)=>g8(Q,$)}function aK($){return(Q)=>d9(Q,$)}function rK($){return(Q)=>r6(Q,{width:$.width??100,height:$.height??100,scale:$.scale??1,offsetX:$.offsetX??0,offsetY:$.offsetY??0,pixelMode:$.pixelMode??1,fillRule:$.fillRule??0,flipY:$.flipY??!0})}function tK($){let{padding:Q=1,scale:Z=1,pixelMode:K=1}=$??{};return(J)=>{let q=q8(J,Z,!0);if(!q){let{createBitmap:N}=(z6(),j0(S9));return N(1,1,K)}let U=q.maxX-q.minX+Q*2,W=q.maxY-q.minY+Q*2,H=-q.minX+Q,_=-q.minY+Q;return r6(J,{width:U,height:W,scale:Z,offsetX:H,offsetY:_,pixelMode:K,fillRule:0,flipY:!0})}}function eK($,Q){return(Z)=>e8(Z,$,{width:Q.width??100,height:Q.height??100,scale:Q.scale??1,offsetX:Q.offsetX??0,offsetY:Q.offsetY??0,pixelMode:Q.pixelMode??1,fillRule:Q.fillRule??0,flipY:Q.flipY??!0})}function $J($){return(Q)=>y8(Q,$)}function QJ($){return(Q)=>b8(Q,$)}function ZJ($){return(Q)=>o6(J6(Q),$)}function KJ($){return(Q)=>E8(J6(Q),$)}function JJ($,Q){return(Z)=>m8(J6(Z),$,Q??$)}function qJ($,Q){return(Z)=>l9(J6(Z),$,Q??$)}function UJ($){return(Q)=>f9(J6(Q),$)}function WJ($,Q){return(Z)=>r8(Z,$,Q??$)}function HJ($,Q){return(Z)=>b9(Z,$,Q)}function _J($,Q){return(Z)=>h8(Z,$,Q)}function NJ($,Q){return(Z)=>t8(Z,$,Q)}function VJ($,Q,Z,K){let J=$,q=Q??$,U=Z??$,W=K??$;return(H)=>m9(H,J,q,U,W)}function XJ($){return(Q)=>U8(Q,$)}function jJ($){return u9($)}function zJ($){return x9($)}function GJ($){return(Q)=>G8(Q,$)}function YJ($){return J6($)}function g4($,Q){return Z6.fromGlyph($,Q)}function u4($,Q){let Z=Q.codePointAt(0);if(Z===void 0)return null;let K=$.glyphId(Z);if(K===void 0)return null;return Z6.fromGlyph($,K)}function x4($,Q,Z){return Z6.fromGlyphWithVariation($,Q,Z)}function f4($){return Z6.fromPath($)}function l4($){return s.fromBitmap($)}function d4(...$){return Z6.combine(...$)}class c6{data;start;end;pos;constructor($,Q=0,Z){if($ instanceof ArrayBuffer)this.data=new DataView($),this.start=Q,this.end=Z!==void 0?Q+Z:$.byteLength;else this.data=$,this.start=$.byteOffset+Q,this.end=Z!==void 0?this.start+Z:$.byteOffset+$.byteLength;this.pos=this.start}get offset(){return this.pos-this.start}get remaining(){return this.end-this.pos}get length(){return this.end-this.start}seek($){this.pos=this.start+$}skip($){this.pos+=$}slice($,Q){return new c6(this.data,this.start+$,Q)}sliceFrom($){return new c6(this.data,this.start+$,this.end-this.start-$)}peek($){let Q=this.pos,Z=$();return this.pos=Q,Z}uint8(){let $=this.data.getUint8(this.pos);return this.pos+=1,$}int8(){let $=this.data.getInt8(this.pos);return this.pos+=1,$}uint16(){let $=this.data.getUint16(this.pos,!1);return this.pos+=2,$}int16(){let $=this.data.getInt16(this.pos,!1);return this.pos+=2,$}uint32(){let $=this.data.getUint32(this.pos,!1);return this.pos+=4,$}int32(){let $=this.data.getInt32(this.pos,!1);return this.pos+=4,$}fixed(){return this.int32()/65536}f2dot14(){return this.int16()/16384}fword(){return this.int16()}ufword(){return this.uint16()}longDateTime(){let $=this.uint32(),Q=this.uint32();return BigInt($)<<32n|BigInt(Q)}tag(){return this.uint32()}tagString(){let $=this.uint32();return String.fromCharCode($>>24&255,$>>16&255,$>>8&255,$&255)}offset16(){return this.uint16()}offset32(){return this.uint32()}uint24(){let $=this.data.getUint8(this.pos),Q=this.data.getUint8(this.pos+1),Z=this.data.getUint8(this.pos+2);return this.pos+=3,$<<16|Q<<8|Z}uint8Array($){let Q=new Uint8Array($);for(let Z=0;Z<$;Z++)Q[Z]=this.uint8();return Q}uint16Array($){let Q=new Uint16Array($);for(let Z=0;Z<$;Z++)Q[Z]=this.uint16();return Q}int16Array($){let Q=new Int16Array($);for(let Z=0;Z<$;Z++)Q[Z]=this.int16();return Q}uint32Array($){let Q=new Uint32Array($);for(let Z=0;Z<$;Z++)Q[Z]=this.uint32();return Q}array($,Q){let Z=Array($);for(let K=0;K<$;K++)Z[K]=Q(this);return Z}ascii($){let Q="";for(let Z=0;Z<$;Z++)Q+=String.fromCharCode(this.uint8());return Q}utf16be($){let Q=[],Z=$/2;for(let K=0;K<Z;K++)Q.push(this.uint16());return String.fromCharCode(...Q)}hasRemaining($){return this.remaining>=$}ensureRemaining($){if(this.remaining<$)throw Error(`Unexpected end of data: need ${$} bytes, have ${this.remaining}`)}bytes($){let Q=new Uint8Array(this.data.buffer,this.data.byteOffset+this.pos,$);return this.pos+=$,Q}readAt($,Q){let Z=this.pos;this.pos=this.start+$;let K=Q(this);return this.pos=Z,K}}function EJ($,Q){let Z=$.uint16(),K=$.uint16();$.skip(2);let J=[];for(let q=0;q<Q;q++){let U=$.uint16(),W=[];for(let H=0;H<U;H++)W.push({fromCoordinate:$.f2dot14(),toCoordinate:$.f2dot14()});J.push({axisValueMaps:W})}return{majorVersion:Z,minorVersion:K,axisSegmentMaps:J}}function wJ($,Q){let Z=$.axisValueMaps;if(Z.length===0)return Q;for(let q=0;q<Z.length-1;q++){let U=Z[q],W=Z[q+1];if(!U||!W)continue;if(Q>=U.fromCoordinate&&Q<=W.fromCoordinate){let H=(Q-U.fromCoordinate)/(W.fromCoordinate-U.fromCoordinate);return U.toCoordinate+H*(W.toCoordinate-U.toCoordinate)}}let K=Z[0],J=Z[Z.length-1];if(K&&Q<=K.fromCoordinate)return K.toCoordinate;return J?.toCoordinate??Q}function I5($,Q){let Z=[];for(let K=0;K<Q.length;K++){let J=Q[K],q=$.axisSegmentMaps[K];if(q)Z.push(wJ(q,J));else Z.push(J)}return Z}function AJ($){let Q=$.uint16(),Z=$.uint16(),K=$.offset16();$.skip(2);let J=$.uint16(),q=$.uint16(),U=$.uint16(),W=$.uint16(),H=[];$.seek(K);for(let V=0;V<J;V++){let X=$.offset,j=$.uint32(),z=$.fixed(),G=$.fixed(),Y=$.fixed(),E=$.uint16(),w=$.uint16();H.push({tag:j,minValue:z,defaultValue:G,maxValue:Y,flags:E,axisNameId:w}),$.seek(X+q)}let _=[],N=W>=4+J*4+2;for(let V=0;V<U;V++){let X=$.offset,j=$.uint16(),z=$.uint16(),G=[];for(let E=0;E<J;E++)G.push($.fixed());let Y={subfamilyNameId:j,flags:z,coordinates:G};if(N)Y.postScriptNameId=$.uint16();_.push(Y),$.seek(X+W)}return{majorVersion:Q,minorVersion:Z,axes:H,instances:_}}function k5($,Q){if(Q<$.defaultValue){if(Q<$.minValue)Q=$.minValue;if($.defaultValue===$.minValue)return 0;return(Q-$.defaultValue)/($.defaultValue-$.minValue)}else if(Q>$.defaultValue){if(Q>$.maxValue)Q=$.maxValue;if($.defaultValue===$.maxValue)return 0;return(Q-$.defaultValue)/($.maxValue-$.defaultValue)}return 0}function FJ($){let Q=$.uint16(),Z=$.uint16(),K=$.offset32(),J=$.offset32(),q=$.offset32(),U=$.offset32(),W=n4($.sliceFrom(K)),H=J!==0?C5($.sliceFrom(J)):null,_=q!==0?C5($.sliceFrom(q)):null,N=U!==0?C5($.sliceFrom(U)):null;return{majorVersion:Q,minorVersion:Z,itemVariationStore:W,advanceWidthMapping:H,lsbMapping:_,rsbMapping:N}}function n4($){let Q=$.uint16(),Z=$.offset32(),K=$.uint16(),J=[];for(let N=0;N<K;N++)J.push($.offset32());let q=$.sliceFrom(Z),U=q.uint16(),W=q.uint16(),H=[];for(let N=0;N<W;N++){let V=[];for(let X=0;X<U;X++)V.push({startCoord:q.f2dot14(),peakCoord:q.f2dot14(),endCoord:q.f2dot14()});H.push({regionAxes:V})}let _=[];for(let N=0;N<J.length;N++){let V=J[N],X=$.sliceFrom(V),j=X.uint16(),z=X.uint16(),G=X.uint16(),Y=[];for(let B=0;B<G;B++)Y.push(X.uint16());let E=(z&32768)!==0,w=z&32767,F=G-w,A=[];for(let B=0;B<j;B++){let L=[];for(let O=0;O<w;O++)if(E)L.push(X.int32());else L.push(X.int16());for(let O=0;O<F;O++)if(E)L.push(X.int16());else L.push(X.int8());A.push(L)}_.push({itemCount:j,regionIndexes:Y,deltaSets:A})}return{format:Q,variationRegions:H,itemVariationData:_}}function C5($){let Q=$.uint8(),Z=$.uint8(),K=Q===0?$.uint16():$.uint32(),J=(Z&15)+1,q=(Z>>4&3)+1,U=[];for(let W=0;W<K;W++){let H=0;for(let V=0;V<q;V++)H=H<<8|$.uint8();let _=H&(1<<J)-1,N=H>>J;U.push({outer:N,inner:_})}return{format:Q,mapCount:K,entryFormat:Z,innerIndexBitCount:J,mapData:U}}function n9($,Q){let Z=1;for(let K=0;K<$.regionAxes.length&&K<Q.length;K++){let J=$.regionAxes[K],q=Q[K];if(J===void 0||q===void 0)continue;if(q<J.startCoord||q>J.endCoord)return 0;if(q===J.peakCoord)continue;if(q<J.peakCoord){if(J.peakCoord===J.startCoord)continue;Z*=(q-J.startCoord)/(J.peakCoord-J.startCoord)}else{if(J.peakCoord===J.endCoord)continue;Z*=(J.endCoord-q)/(J.endCoord-J.peakCoord)}}return Z}function LJ($,Q,Z,K){let J,q;if(K&&Q<K.mapData.length){let _=K.mapData[Q];if(!_)J=0,q=Q;else J=_.outer,q=_.inner}else J=0,q=Q;let U=$.itemVariationStore.itemVariationData[J];if(!U||q>=U.itemCount)return 0;let W=U.deltaSets[q];if(!W)return 0;let H=0;for(let _=0;_<U.regionIndexes.length;_++){let N=U.regionIndexes[_],V=$.itemVariationStore.variationRegions[N];if(!V)continue;let X=n9(V,Z),j=W[_]??0;H+=X*j}return Math.round(H)}function S5($,Q,Z){return LJ($,Q,Z,$.advanceWidthMapping)}function DJ($,Q,Z){if(!$.lsbMapping)return 0;return LJ($,Q,Z,$.lsbMapping)}class u8{font;_coords;_variations;_advanceDeltas=null;constructor($,Q){this.font=$,this._coords=[],this._variations=new Map;let Z=$.fvar;if(Z){if(this._coords=Array(Z.axes.length).fill(0),Q)this.setVariations(Q)}}setVariations($){let Q=this.font.fvar;if(!Q)return;if(this._advanceDeltas=null,Array.isArray($))for(let K=0;K<$.length;K++){let J=$[K];this._variations.set(J.tag,J.value)}else{let K=Object.entries($);for(let J=0;J<K.length;J++){let[q,U]=K[J],W=k(q.padEnd(4," "));this._variations.set(W,U)}}for(let K=0;K<Q.axes.length;K++){let J=Q.axes[K],q=this._variations.get(J.tag)??J.defaultValue;this._coords[K]=k5(J,q)}let Z=this.font.avar;if(Z)this._coords=I5(Z,this._coords)}get normalizedCoords(){return this._coords}get isVariable(){return this.font.isVariable}get axes(){return this.font.fvar?.axes??[]}getAxisValue($){let Q=typeof $==="string"?k($.padEnd(4," ")):$,Z=this.font.fvar;if(!Z)return null;let K=this._variations.get(Q);if(K!==void 0)return K;return Z.axes.find((q)=>q.tag===Q)?.defaultValue??null}advanceWidth($){let Q=this.font.advanceWidth($);if(this._coords.length>0&&this.font.hvar){if(this._advanceDeltas){let K=this._advanceDeltas.get($);if(K!==void 0)return Q+K}else this._advanceDeltas=new Map;let Z=S5(this.font.hvar,$,this._coords);return this._advanceDeltas.set($,Z),Q+Z}return Q}leftSideBearing($){let Q=this.font.leftSideBearing($);if(this._coords.length>0&&this.font.hvar){let Z=DJ(this.font.hvar,$,this._coords);Q+=Z}return Q}get numGlyphs(){return this.font.numGlyphs}get unitsPerEm(){return this.font.unitsPerEm}get ascender(){return this.font.ascender}get descender(){return this.font.descender}get lineGap(){return this.font.lineGap}glyphId($){return this.font.glyphId($)}glyphIdForChar($){return this.font.glyphIdForChar($)}hasTable($){return this.font.hasTable($)}get gdef(){return this.font.gdef}get gsub(){return this.font.gsub}get gpos(){return this.font.gpos}get kern(){return this.font.kern}get morx(){return this.font.morx}get cmap(){return this.font.cmap}get hmtx(){return this.font.hmtx}get hhea(){return this.font.hhea}}function p4($,Q){return new u8($,Q)}var W_=["cmap","head","hhea","hmtx","maxp","name","OS/2","post","cvt ","fpgm","glyf","loca","prep","CFF ","VORG","EBDT","EBLC","gasp","hdmx","kern","LTSH","PCLT","VDMX","vhea","vmtx","BASE","GDEF","GPOS","GSUB","EBSC","JSTF","MATH","CBDT","CBLC","COLR","CPAL","SVG ","sbix","acnt","avar","bdat","bloc","bsln","cvar","fdsc","feat","fmtx","fvar","gvar","hsty","just","lcar","mort","morx","opbd","prop","trak","Zapf","Silf","Glat","Gloc","Feat","Sill"];function uJ($,Q){let Z=0;for(let K=0;K<5;K++){let J=$[Q.value++];if(K===0&&J===128)throw Error("Invalid UIntBase128: leading zeros");if(Z>2097151)throw Error("UIntBase128 overflow");if(Z=Z<<7|J&127,(J&128)===0)return Z}throw Error("UIntBase128 too long")}function l5($,Q){let Z=$[Q.value++];if(Z===253){let K=$[Q.value++],J=$[Q.value++];return K<<8|J}else if(Z===255)return $[Q.value++]+506;else if(Z===254)return $[Q.value++]+253;return Z}function H_($,Q,Z){let K=[];for(let J=0;J<Z;J++){let q=$[Q.value++],U=q&63,W=q>>6&3,H;if(U===63)H=String.fromCharCode($[Q.value++],$[Q.value++],$[Q.value++],$[Q.value++]);else H=W_[U];let _=uJ($,Q),N=_;if(H==="glyf"||H==="loca"?W===0:W!==0)N=uJ($,Q);K.push({tag:H,origLength:_,transformLength:N,transformVersion:W})}return K}async function __($){if(typeof DecompressionStream<"u")try{let Z=new DecompressionStream("brotli"),J=new Blob([$.buffer]).stream().pipeThrough(Z),q=await new Response(J).arrayBuffer();return new Uint8Array(q)}catch{}let{decompress:Q}=await Promise.resolve().then(() => (gJ(),mJ));return Q($)}function d6($,Q,Z){$[Q]=Z>>8&255,$[Q+1]=Z&255}function J9($,Q,Z){$[Q]=Z>>24&255,$[Q+1]=Z>>16&255,$[Q+2]=Z>>8&255,$[Q+3]=Z&255}function A8($,Q){return $[Q]<<8|$[Q+1]}function t6($,Q){let Z=A8($,Q);return Z>=32768?Z-65536:Z}function x8($,Q){return($[Q]<<24|$[Q+1]<<16|$[Q+2]<<8|$[Q+3])>>>0}function xJ($,Q,Z){let K=0,J=Math.ceil(Z/4);for(let q=0;q<J;q++){let U=Q+q*4;K=K+(($[U]||0)<<24|($[U+1]||0)<<16|($[U+2]||0)<<8|($[U+3]||0))>>>0}return K}function p0($){return $+3&-4}function N_($,Q,Z,K,J){let q=[],U=0,W=0;function H(_,N){return _&1?N:-N}for(let _=0;_<Z;_++){let N=$[K.value++],V=N>>7===0,X=N&127,j=0,z=0;if(X<10)j=0,z=H(N,((X&14)<<7)+Q[J.value++]);else if(X<20)j=H(N,((X-10&14)<<7)+Q[J.value++]),z=0;else if(X<84){let G=X-20,Y=Q[J.value++];j=H(N,1+(G&48)+(Y>>4)),z=H(N>>1,1+((G&12)<<2)+(Y&15))}else if(X<120){let G=X-84;j=H(N,1+(Math.floor(G/12)<<8)+Q[J.value++]),z=H(N>>1,1+(G%12>>2<<8)+Q[J.value++])}else if(X<124){let G=Q[J.value++],Y=Q[J.value++],E=Q[J.value++];j=H(N,(G<<4)+(Y>>4)),z=H(N>>1,((Y&15)<<8)+E)}else j=H(N,(Q[J.value++]<<8)+Q[J.value++]),z=H(N>>1,(Q[J.value++]<<8)+Q[J.value++]);U+=j,W+=z,q.push({x:U,y:W,onCurve:V})}return q}function V_($,Q,Z){let K=0,J=A8($,K);if(K+=2,J!==0)throw Error(`Unsupported glyf transform version: ${J}`);let q=A8($,K);K+=2;let U=A8($,K);K+=2;let W=A8($,K);K+=2;let H=x8($,K);K+=4;let _=x8($,K);K+=4;let N=x8($,K);K+=4;let V=x8($,K);K+=4;let X=x8($,K);K+=4;let j=x8($,K);K+=4;let z=x8($,K);K+=4;let G=$.slice(K,K+H);K+=H;let Y=$.slice(K,K+_);K+=_;let E=$.slice(K,K+N);K+=N;let w=$.slice(K,K+V);K+=V;let F=$.slice(K,K+X);K+=X;let A=$.slice(K,K+j);K+=j;let B=$.slice(K,K+z),L={value:0},O={value:0},M={value:0},P={value:0},T={value:0},x={value:0},I={value:0},f=[0],l=[],C=0;for(let c=0;c<Q;c++){let n=t6(G,L.value);if(L.value+=2,n===0){l.push(new Uint8Array(0)),f.push(C);continue}if(n>0){let e=X_(n,Y,O,E,M,w,P,A,x,B,I,q);l.push(e),C+=p0(e.length),f.push(C)}else{let e=j_(F,T,A,x,B,I,q);l.push(e),C+=p0(e.length),f.push(C)}}let R=new Uint8Array(C),y=0;for(let c=0;c<l.length;c++){let n=l[c];R.set(n,y),y+=p0(n.length)}let u=Z===0?(Q+1)*2:(Q+1)*4,d=new Uint8Array(u);for(let c=0;c<=Q;c++)if(Z===0)d6(d,c*2,f[c]/2);else J9(d,c*4,f[c]);return{glyf:R,loca:d}}function X_($,Q,Z,K,J,q,U,W,H,_,N,V){let X=[],j=0;for(let y=0;y<$;y++){let u=l5(Q,Z);j+=u,X.push(j-1)}let z=N_(K,q,j,J,U),G,Y,E,w;if((V&1)===0&&H.value+8<=W.length)G=t6(W,H.value),H.value+=2,Y=t6(W,H.value),H.value+=2,E=t6(W,H.value),H.value+=2,w=t6(W,H.value),H.value+=2;else{G=Y=32767,E=w=-32768;for(let y=0;y<z.length;y++){let u=z[y];G=Math.min(G,u.x),Y=Math.min(Y,u.y),E=Math.max(E,u.x),w=Math.max(w,u.y)}}let A=l5(q,U),B=_.slice(N.value,N.value+A);N.value+=A;let L=[],O=[],M=0,P=0;for(let y=0;y<z.length;y++){let u=z[y];L.push(u.x-M),O.push(u.y-P),M=u.x,P=u.y}let T=[],x=[],I=[];for(let y=0;y<j;y++){let u=z[y].onCurve?1:0,d=L[y],c=O[y];if(d===0)u|=16;else if(d>=-255&&d<=255){if(u|=2,d>0)u|=16;x.push(Math.abs(d))}else x.push(d>>8&255,d&255);if(c===0)u|=32;else if(c>=-255&&c<=255){if(u|=4,c>0)u|=32;I.push(Math.abs(c))}else I.push(c>>8&255,c&255);T.push(u)}let l=10+$*2+2+A+T.length+x.length+I.length,C=new Uint8Array(l),R=0;d6(C,R,$),R+=2,d6(C,R,G&65535),R+=2,d6(C,R,Y&65535),R+=2,d6(C,R,E&65535),R+=2,d6(C,R,w&65535),R+=2;for(let y=0;y<X.length;y++){let u=X[y];d6(C,R,u),R+=2}d6(C,R,A),R+=2,C.set(B,R),R+=A;for(let y=0;y<T.length;y++){let u=T[y];C[R++]=u}for(let y=0;y<x.length;y++){let u=x[y];C[R++]=u}for(let y=0;y<I.length;y++){let u=I[y];C[R++]=u}return C.slice(0,R)}function j_($,Q,Z,K,J,q,U){let W=[],H=t6(Z,K.value);K.value+=2;let _=t6(Z,K.value);K.value+=2;let N=t6(Z,K.value);K.value+=2;let V=t6(Z,K.value);K.value+=2,W.push(255,255),W.push(H>>8&255,H&255),W.push(_>>8&255,_&255),W.push(N>>8&255,N&255),W.push(V>>8&255,V&255);let X=!0,j=!1;while(X){let z=A8($,Q.value);Q.value+=2;let G=A8($,Q.value);if(Q.value+=2,W.push(z>>8&255,z&255),W.push(G>>8&255,G&255),z&1)W.push($[Q.value++]),W.push($[Q.value++]),W.push($[Q.value++]),W.push($[Q.value++]);else W.push($[Q.value++]),W.push($[Q.value++]);if(z&8)W.push($[Q.value++]),W.push($[Q.value++]);else if(z&64)for(let Y=0;Y<4;Y++)W.push($[Q.value++]);else if(z&128)for(let Y=0;Y<8;Y++)W.push($[Q.value++]);if(X=(z&32)!==0,z&256)j=!0}if(j){let z=l5(J,q);W.push(z>>8&255,z&255);for(let G=0;G<z;G++)W.push(J[q.value++])}return new Uint8Array(W)}async function fJ($){let Q=new Uint8Array($),Z=new DataView($);if(Z.getUint32(0,!1)!==2001684018)throw Error("Not a valid WOFF2 file");let J=Z.getUint32(4,!1),q=Z.getUint16(12,!1),U=Z.getUint32(20,!1),W={value:48},H=H_(Q,W,q),_=Q.slice(W.value,W.value+U),N=await __(_),V=new Map,X=0;for(let I=0;I<H.length;I++){let f=H[I],l=N.slice(X,X+f.transformLength);V.set(f.tag,l),X+=f.transformLength}let j=V.get("maxp"),z=V.get("head");if(!j||!z)throw Error("Missing required tables");let G=A8(j,4),Y=t6(z,50),E=H.find((I)=>I.tag==="glyf"),w=H.find((I)=>I.tag==="loca");if(E&&E.transformVersion===0){let I=V.get("glyf");if(!I)throw Error("Missing glyf table data for transform");let{glyf:f,loca:l}=V_(I,G,Y);if(V.set("glyf",f),V.set("loca",l),E.origLength=f.length,w)w.origLength=l.length}let F=12,A=q*16,B=F+A,L=[];for(let I=0;I<H.length;I++){let f=H[I];L.push(B),B+=p0(f.origLength)}let O=new Uint8Array(B),M=2**Math.floor(Math.log2(q))*16,P=Math.floor(Math.log2(q)),T=q*16-M;J9(O,0,J),d6(O,4,q),d6(O,6,M),d6(O,8,P),d6(O,10,T);let x=-1;for(let I=0;I<H.length;I++){let f=H[I],l=V.get(f.tag);if(!l)throw Error(`Missing table data for ${f.tag}`);let C=F+I*16,R=L[I];if(f.tag==="head"&&R!==void 0)x=R;for(let u=0;u<4;u++)O[C+u]=f.tag.charCodeAt(u);let y=xJ(l,0,l.length);J9(O,C+4,y),J9(O,C+8,L[I]),J9(O,C+12,f.origLength),O.set(l.slice(0,f.origLength),L[I])}if(x>=0){let f=2981146554-xJ(O,0,O.length)>>>0;J9(O,x+8,f)}return O.buffer}var z_={hang:1751215719,icfb:1768121954,icft:1768121972,ideo:1768187247,idtp:1768191088,math:1835103336,romn:1919905134};function c9($){let Q=$.uint16(),Z=$.int16(),K={format:Q,coordinate:Z};if(Q===2)K.referenceGlyph=$.uint16(),K.baseCoordPoint=$.uint16();else if(Q===3)K.deviceOffset=$.uint16();return K}function lJ($,Q){if(Q===0)return null;let Z=$.sliceFrom(Q),K=Z.uint16(),J=Z.uint16(),q=Z.uint16(),U=null,W=null;if(K!==0){let _=$.sliceFrom(Q+K);U=c9(_).coordinate}if(J!==0){let _=$.sliceFrom(Q+J);W=c9(_).coordinate}let H=[];for(let _=0;_<q;_++){let N=Z.uint32(),V=Z.uint16(),X=Z.uint16(),j=null,z=null;if(V!==0){let G=$.sliceFrom(Q+V);j=c9(G).coordinate}if(X!==0){let G=$.sliceFrom(Q+X);z=c9(G).coordinate}H.push({featureTag:N,minCoord:j,maxCoord:z})}return{minCoord:U,maxCoord:W,featMinMaxRecords:H}}function G_($,Q,Z){if(Q===0)return null;let K=$.sliceFrom(Q),J=K.uint16(),q=K.uint16(),U=[];for(let H=0;H<q;H++)U.push(K.uint16());let W=[];for(let H=0;H<U.length;H++){let _=U[H];if(_!==0){let N=$.sliceFrom(Q+_);W.push(c9(N).coordinate)}else W.push(0)}return{defaultBaselineIndex:J,baseCoords:W}}function Y_($,Q,Z){let K=$.sliceFrom(Q),J=K.uint16(),q=K.uint16(),U=K.uint16(),W=new Map,H=[];for(let V=0;V<U;V++){let X=K.uint32(),j=K.uint16();H.push({tag:X,offset:j})}let _=G_($,Q+J,Z),N=lJ($,Q+q);for(let V=0;V<H.length;V++){let X=H[V],j=lJ($,Q+X.offset);if(j)W.set(X.tag,j)}return{baseValues:_,defaultMinMax:N,baseLangSysRecords:W}}function dJ($,Q){if(Q===0)return null;let Z=$.sliceFrom(Q),K=Z.uint16(),J=Z.uint16(),q=[];if(K!==0){let W=$.sliceFrom(Q+K),H=W.uint16();for(let _=0;_<H;_++)q.push(W.uint32())}let U=[];if(J!==0){let W=$.sliceFrom(Q+J),H=W.uint16(),_=[];for(let N=0;N<H;N++){let V=W.uint32(),X=W.uint16();_.push({tag:V,offset:X})}for(let N=0;N<_.length;N++){let V=_[N],X=Y_($,Q+J+V.offset,q);U.push({scriptTag:V.tag,...X})}}return{baseTagList:q,baseScriptList:U}}function d5($){let Q=$.uint16(),Z=$.uint16(),K=$.uint16(),J=$.uint16(),q=dJ($,K),U=dJ($,J);return{majorVersion:Q,minorVersion:Z,horizAxis:q,vertAxis:U}}function E_($,Q,Z,K=!0){let J=K?$.horizAxis:$.vertAxis;if(!J)return null;let q=J.baseScriptList.find((W)=>W.scriptTag===Q);if(!q?.baseValues)return null;let U=J.baseTagList.indexOf(Z);if(U===-1)return null;return q.baseValues.baseCoords[U]??null}function w_($,Q,Z=!0){let K=Z?$.horizAxis:$.vertAxis;if(!K)return null;let J=K.baseScriptList.find((H)=>H.scriptTag===Q);if(!J?.baseValues)return null;let q=J.baseValues.defaultBaselineIndex,U=K.baseTagList[q],W=J.baseValues.baseCoords[q];if(U===void 0||W===void 0)return null;return{tag:U,coordinate:W}}function A_($,Q,Z,K=!0){let J=K?$.horizAxis:$.vertAxis;if(!J)return null;let q=J.baseScriptList.find((U)=>U.scriptTag===Q);if(!q)return null;if(Z!==void 0){let U=q.baseLangSysRecords.get(Z);if(U)return{minCoord:U.minCoord,maxCoord:U.maxCoord}}if(q.defaultMinMax)return{minCoord:q.defaultMinMax.minCoord,maxCoord:q.defaultMinMax.maxCoord};return null}var F_={SmallMetrics:1,SmallMetricsPng:17,BigMetrics:2,BigMetricsPng:18,CompressedPng:19};function pJ($){let Q=$.offset,Z=$.uint16(),K=$.uint16(),J=$.uint32(),q=[];for(let U=0;U<J;U++){let W=$.uint32(),H=$.uint32(),_=$.uint32(),N=$.uint32(),V=nJ($),X=nJ($),j=$.uint16(),z=$.uint16(),G=$.uint8(),Y=$.uint8(),E=$.uint8(),w=$.int8();q.push({indexSubTableArrayOffset:W,indexTablesSize:H,numberOfIndexSubTables:_,colorRef:N,hori:V,vert:X,startGlyphIndex:j,endGlyphIndex:z,ppemX:G,ppemY:Y,bitDepth:E,flags:w,indexSubTables:[]})}for(let U=0;U<q.length;U++){let W=q[U],H=$.sliceFrom(Q+W.indexSubTableArrayOffset),_=[];for(let N=0;N<W.numberOfIndexSubTables;N++)_.push({firstGlyphIndex:H.uint16(),lastGlyphIndex:H.uint16(),additionalOffsetToIndexSubtable:H.uint32()});for(let N=0;N<_.length;N++){let V=_[N],X=L_($,Q+W.indexSubTableArrayOffset+V.additionalOffsetToIndexSubtable,V.firstGlyphIndex,V.lastGlyphIndex);W.indexSubTables.push(X)}}return{majorVersion:Z,minorVersion:K,bitmapSizes:q}}function nJ($){return{ascender:$.int8(),descender:$.int8(),widthMax:$.uint8(),caretSlopeNumerator:$.int8(),caretSlopeDenominator:$.int8(),caretOffset:$.int8(),minOriginSB:$.int8(),minAdvanceSB:$.int8(),maxBeforeBL:$.int8(),minAfterBL:$.int8(),pad1:$.int8(),pad2:$.int8()}}function L_($,Q,Z,K){let J=$.sliceFrom(Q),q=J.uint16(),U=J.uint16(),W=J.uint32(),H=new Map,_=K-Z+1;switch(q){case 1:{let N=[];for(let V=0;V<=_;V++)N.push(J.uint32());for(let V=0;V<_;V++){let X=N[V],j=N[V+1];if(X===void 0||j===void 0)continue;if(j>X)H.set(Z+V,{offset:W+X,length:j-X})}break}case 2:{let N=J.uint32(),V={height:J.uint8(),width:J.uint8(),horiBearingX:J.int8(),horiBearingY:J.int8(),horiAdvance:J.uint8(),vertBearingX:J.int8(),vertBearingY:J.int8(),vertAdvance:J.uint8()};for(let X=0;X<_;X++)H.set(Z+X,{offset:W+X*N,length:N});break}case 3:{let N=[];for(let V=0;V<=_;V++)N.push(J.uint16());for(let V=0;V<_;V++){let X=N[V],j=N[V+1];if(X===void 0||j===void 0)continue;if(j>X)H.set(Z+V,{offset:W+X,length:j-X})}break}case 4:{let N=J.uint32(),V=[];for(let X=0;X<=N;X++)V.push({glyphId:J.uint16(),offset:J.uint16()});for(let X=0;X<N;X++){let j=V[X],z=V[X+1];if(j===void 0||z===void 0)continue;H.set(j.glyphId,{offset:W+j.offset,length:z.offset-j.offset})}break}case 5:{let N=J.uint32();J.skip(8);let V=J.uint32();for(let X=0;X<V;X++){let j=J.uint16();H.set(j,{offset:W+X*N,length:N})}break}}return{firstGlyphIndex:Z,lastGlyphIndex:K,indexFormat:q,imageFormat:U,imageDataOffset:W,glyphOffsets:H}}function oJ($){let Q=$.uint16(),Z=$.uint16(),K=$.bytes($.remaining);return{majorVersion:Q,minorVersion:Z,data:K}}function D_($,Q,Z,K){let J=null,q=1/0;for(let U=0;U<$.bitmapSizes.length;U++){let W=$.bitmapSizes[U];if(Z<W.startGlyphIndex||Z>W.endGlyphIndex)continue;let H=Math.abs(W.ppemX-K);if(H<q)q=H,J=W}if(!J)return null;for(let U=0;U<J.indexSubTables.length;U++){let W=J.indexSubTables[U],H=W.glyphOffsets.get(Z);if(!H)continue;let _=Q.data.slice(H.offset-4,H.offset-4+H.length);return B_(_,W.imageFormat)}return null}function B_($,Q){if($.length===0)return null;let Z=0,K;switch(Q){case 1:case 2:case 17:case 18:{if(Q===1||Q===17){if(Z+5>$.length)return null;K={height:$[Z++]??0,width:$[Z++]??0,bearingX:($[Z++]??0)<<24>>24,bearingY:($[Z++]??0)<<24>>24,advance:$[Z++]??0}}else{if(Z+8>$.length)return null;K={height:$[Z++]??0,width:$[Z++]??0,bearingX:($[Z++]??0)<<24>>24,bearingY:($[Z++]??0)<<24>>24,advance:$[Z++]??0},Z+=3}break}case 19:{K={height:0,width:0,bearingX:0,bearingY:0,advance:0};break}default:return null}return{metrics:K,imageFormat:Q,data:$.slice(Z)}}function M_($,Q,Z){for(let K=0;K<$.bitmapSizes.length;K++){let J=$.bitmapSizes[K];if(Z!==void 0&&J.ppemX!==Z)continue;if(Q<J.startGlyphIndex||Q>J.endGlyphIndex)continue;for(let q=0;q<J.indexSubTables.length;q++)if(J.indexSubTables[q].glyphOffsets.has(Q))return!0}return!1}function R_($){let Q=new Set;for(let Z=0;Z<$.bitmapSizes.length;Z++){let K=$.bitmapSizes[Z];Q.add(K.ppemX)}return[...Q].sort((Z,K)=>Z-K)}var U9=[".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","twodotenleader","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"];function n5($){let Q=$.offset,Z=$.uint8(),K=$.uint8(),J=$.uint8(),q=$.uint8();$.seek(Q+J);let U=F8($).map((Y)=>new TextDecoder().decode(Y)),W=F8($),H=[],N=F8($).map((Y)=>new TextDecoder().decode(Y)),V=F8($);for(let Y=0;Y<W.length;Y++){let E=W[Y];H.push(cJ(new c6(E.buffer,E.byteOffset,E.byteLength),N))}let X=[],j=[],z=[],G=[];for(let Y=0;Y<H.length;Y++){let E=H[Y];if(E.charStrings!==void 0)$.seek(Q+E.charStrings),X.push(F8($));else X.push([]);if(E.private){let[w,F]=E.private,A=iJ($.slice(F,w),N);if(A.subrs!==void 0)$.seek(Q+F+A.subrs),j.push(F8($));else j.push([])}else j.push([]);if(E.fdArray!==void 0){$.seek(Q+E.fdArray);let w=F8($),F=[];for(let A=0;A<w.length;A++){let B=w[A],L=cJ(new c6(B.buffer,B.byteOffset,B.byteLength),N);if(L.private){let[O,M]=L.private,P=iJ($.slice(Q+M,O),N);if(Object.assign(L,P),P.subrs!==void 0)$.seek(Q+M+P.subrs),L.localSubrs=F8($)}F.push(L)}z.push(F)}else z.push([]);if(E.fdSelect!==void 0){$.seek(Q+E.fdSelect);let w=X[X.length-1];G.push(P_($,w?.length??0))}else G.push({format:0,select:()=>0})}return{version:{major:Z,minor:K},names:U,topDicts:H,strings:N,globalSubrs:V,charStrings:X,localSubrs:j,fdArrays:z,fdSelects:G}}function F8($){let Q=$.uint16();if(Q===0)return[];let Z=$.uint8(),K=[];for(let q=0;q<=Q;q++)K.push(T_($,Z));let J=[];for(let q=0;q<Q;q++){let U=K[q],W=K[q+1];if(U===void 0||W===void 0)continue;let H=W-U;J.push($.bytes(H))}return J}function T_($,Q){switch(Q){case 1:return $.uint8();case 2:return $.uint16();case 3:return $.uint24();case 4:return $.uint32();default:throw Error(`Invalid offset size: ${Q}`)}}function sJ($){let Q=new Map,Z=[];while($.remaining>0){let K=$.uint8();if(K<=21){let J=K;if(K===12)J=3072|$.uint8();Q.set(J,[...Z]),Z.length=0}else if(K===28)Z.push($.int16());else if(K===29)Z.push($.int32());else if(K===30)Z.push(O_($));else if(K>=32&&K<=246)Z.push(K-139);else if(K>=247&&K<=250){let J=$.uint8();Z.push((K-247)*256+J+108)}else if(K>=251&&K<=254){let J=$.uint8();Z.push(-(K-251)*256-J-108)}}return Q}function O_($){let Q="",Z="0123456789.EE -",K=!1;while(!K){let J=$.uint8();for(let q=0;q<2;q++){let U=q===0?J>>4:J&15;if(U===15){K=!0;break}if(U===12)Q+="E-";else Q+=Z[U]}}return parseFloat(Q)}function cJ($,Q){let Z=sJ($),K={},J=(U)=>{if(U<U9.length)return U9[U]??"";return Q[U-U9.length]??""},q=[...Z];for(let U=0;U<q.length;U++){let[W,H]=q[U],_=H[0],N=H[1],V=H[2];switch(W){case 0:if(_!==void 0)K.version=J(_);break;case 1:if(_!==void 0)K.notice=J(_);break;case 3072:if(_!==void 0)K.copyright=J(_);break;case 2:if(_!==void 0)K.fullName=J(_);break;case 3:if(_!==void 0)K.familyName=J(_);break;case 4:if(_!==void 0)K.weight=J(_);break;case 3073:K.isFixedPitch=_!==0;break;case 3074:K.italicAngle=_;break;case 3075:K.underlinePosition=_;break;case 3076:K.underlineThickness=_;break;case 3077:K.paintType=_;break;case 3078:K.charstringType=_;break;case 3079:K.fontMatrix=H;break;case 13:K.uniqueID=_;break;case 5:K.fontBBox=H;break;case 3080:K.strokeWidth=_;break;case 15:K.charset=_;break;case 16:K.encoding=_;break;case 17:K.charStrings=_;break;case 18:if(_!==void 0&&N!==void 0)K.private=[_,N];break;case 3092:K.syntheticBase=_;break;case 3093:if(_!==void 0)K.postScript=J(_);break;case 3094:if(_!==void 0)K.baseFontName=J(_);break;case 3095:K.baseFontBlend=H;break;case 3102:if(_!==void 0&&N!==void 0&&V!==void 0)K.ros={registry:J(_),ordering:J(N),supplement:V};break;case 3103:K.cidFontVersion=_;break;case 3104:K.cidFontRevision=_;break;case 3105:K.cidFontType=_;break;case 3106:K.cidCount=_;break;case 3107:K.uidBase=_;break;case 3108:K.fdArray=_;break;case 3109:K.fdSelect=_;break;case 3110:if(_!==void 0)K.fontName=J(_);break}}return K}function iJ($,Q){let Z=sJ($),K={},J=[...Z];for(let q=0;q<J.length;q++){let[U,W]=J[q],H=W[0];switch(U){case 6:K.blueValues=q9(W);break;case 7:K.otherBlues=q9(W);break;case 8:K.familyBlues=q9(W);break;case 9:K.familyOtherBlues=q9(W);break;case 3081:K.blueScale=H;break;case 3082:K.blueShift=H;break;case 3083:K.blueFuzz=H;break;case 10:K.stdHW=H;break;case 11:K.stdVW=H;break;case 3084:K.stemSnapH=q9(W);break;case 3085:K.stemSnapV=q9(W);break;case 3086:K.forceBold=H!==0;break;case 3089:K.languageGroup=H;break;case 3090:K.expansionFactor=H;break;case 3091:K.initialRandomSeed=H;break;case 19:K.subrs=H;break;case 20:K.defaultWidthX=H;break;case 21:K.nominalWidthX=H;break}}return K}function q9($){let Q=[],Z=0;for(let K=0;K<$.length;K++){let J=$[K];Z+=J,Q.push(Z)}return Q}function P_($,Q){let Z=$.uint8();if(Z===0){let K=$.uint8Array(Q);return{format:Z,select:(J)=>K[J]??0}}else if(Z===3){let K=$.uint16(),J=[];for(let U=0;U<K;U++)J.push({first:$.uint16(),fd:$.uint8()});let q=$.uint16();return{format:Z,select:(U)=>{let W=0,H=J.length-1;while(W<H){let N=Math.ceil((W+H)/2),V=J[N];if(V&&V.first<=U)W=N;else H=N-1}return J[W]?.fd??0}}}return{format:Z,select:()=>0}}function v_($,Q){if(Q<U9.length)return U9[Q]??"";return $.strings[Q-U9.length]??""}function Q6($){return $.stack.length-$.stackPos}function m($){if($.stackPos>=$.stack.length)return;return $.stack[$.stackPos++]}function W9($){$.stack.length=0,$.stackPos=0}function p5($,Q,Z=0){let K=$.charStrings[Z];if(!K||Q>=K.length)return null;let J=K[Q];if(!J)return null;let q=$.globalSubrs,W=$.topDicts[Z]?.ros!==void 0,H=[];if(W&&$.fdSelects[Z]&&$.fdArrays[Z]){let N=$.fdSelects[Z]?.select(Q)??0;H=$.fdArrays[Z]?.[N]?.localSubrs||$.localSubrs[Z]||[]}else H=$.localSubrs[Z]||[];let _={x:0,y:0,stack:[],stackPos:0,nStems:0,haveWidth:!1,width:0,contours:[],currentContour:[],transientArray:Array(32).fill(0),callStack:[],vsindex:0,axisCoords:null,vstore:null};if(o0(_,J,q,H),_.currentContour.length>0)_.contours.push(_.currentContour);return _.contours}function c0($,Q,Z=null){if(Q>=$.charStrings.length)return null;let K=$.charStrings[Q];if(!K)return null;let J=$.globalSubrs,q=$.fdSelect?.select(Q)??0,U=$.fdArray[q],W=U?.localSubrs||[],H={x:0,y:0,stack:[],stackPos:0,nStems:0,haveWidth:!0,width:0,contours:[],currentContour:[],transientArray:Array(32).fill(0),callStack:[],vsindex:U?.private?.vsindex??0,axisCoords:Z,vstore:$.vstore};if(o0(H,K,J,W),H.currentContour.length>0)H.contours.push(H.currentContour);return H.contours}function o0($,Q,Z,K){let J=0;while(J<Q.length){let q=Q[J++];if(q===void 0)return;if(q===28){let U=Q[J++];if(U===void 0)return;let W=Q[J++];if(W===void 0)return;$.stack.push((U<<8|W)<<16>>16)}else if(q===255){let U=Q[J++];if(U===void 0)return;let W=Q[J++];if(W===void 0)return;let H=Q[J++];if(H===void 0)return;let _=Q[J++];if(_===void 0)return;let N=(U<<24|W<<16|H<<8|_)>>0;$.stack.push(N/65536)}else if(q>=32&&q<=246)$.stack.push(q-139);else if(q>=247&&q<=250){let U=Q[J++];if(U===void 0)return;$.stack.push((q-247)*256+U+108)}else if(q>=251&&q<=254){let U=Q[J++];if(U===void 0)return;$.stack.push(-(q-251)*256-U-108)}else if(q===12){let U=Q[J++];if(U===void 0)return;let W=3072|U;aJ($,W,Z,K)}else if(q===19||q===20){if(Q6($)%2!==0&&!$.haveWidth){let _=m($);if(_!==void 0)$.width=_,$.haveWidth=!0}$.nStems+=Q6($)/2,W9($);let H=Math.ceil($.nStems/8);J+=H}else aJ($,q,Z,K);if($.callStack.length>0){let U=$.callStack[$.callStack.length-1];if(U&&U.pos>=U.data.length)$.callStack.pop()}}}function aJ($,Q,Z,K){let J=$.stack;switch(Q){case 1:case 3:case 18:case 23:{if(Q6($)%2!==0&&!$.haveWidth){let W=m($);if(W===void 0)break;$.width=W,$.haveWidth=!0}$.nStems+=Q6($)/2,W9($);break}case 19:case 20:break;case 21:{if(Q6($)>2&&!$.haveWidth){let W=m($);if(W===void 0)break;$.width=W,$.haveWidth=!0}if($.currentContour.length>0)$.contours.push($.currentContour),$.currentContour=[];let q=m($);if(q===void 0)break;let U=m($);if(U===void 0)break;$.x+=q,$.y+=U,$.currentContour.push({x:$.x,y:$.y,onCurve:!0}),W9($);break}case 22:{if(Q6($)>1&&!$.haveWidth){let U=m($);if(U===void 0)break;$.width=U,$.haveWidth=!0}if($.currentContour.length>0)$.contours.push($.currentContour),$.currentContour=[];let q=m($);if(q===void 0)break;$.x+=q,$.currentContour.push({x:$.x,y:$.y,onCurve:!0}),W9($);break}case 4:{if(Q6($)>1&&!$.haveWidth){let U=m($);if(U===void 0)break;$.width=U,$.haveWidth=!0}if($.currentContour.length>0)$.contours.push($.currentContour),$.currentContour=[];let q=m($);if(q===void 0)break;$.y+=q,$.currentContour.push({x:$.x,y:$.y,onCurve:!0}),W9($);break}case 5:{while(Q6($)>=2){let q=m($);if(q===void 0)break;let U=m($);if(U===void 0)break;$.x+=q,$.y+=U,$.currentContour.push({x:$.x,y:$.y,onCurve:!0})}break}case 6:{let q=!0;while(Q6($)>=1){let U=m($);if(U===void 0)break;if(q)$.x+=U;else $.y+=U;$.currentContour.push({x:$.x,y:$.y,onCurve:!0}),q=!q}break}case 7:{let q=!0;while(Q6($)>=1){let U=m($);if(U===void 0)break;if(q)$.y+=U;else $.x+=U;$.currentContour.push({x:$.x,y:$.y,onCurve:!0}),q=!q}break}case 8:{while(Q6($)>=6){let q=m($);if(q===void 0)break;let U=m($);if(U===void 0)break;let W=m($);if(W===void 0)break;let H=m($);if(H===void 0)break;let _=m($);if(_===void 0)break;let N=m($);if(N===void 0)break;B6($,q,U,W,H,_,N)}break}case 27:{let q=0;if(Q6($)%4===1){let U=m($);if(U===void 0)break;q=U}while(Q6($)>=4){let U=m($);if(U===void 0)break;let W=m($);if(W===void 0)break;let H=m($);if(H===void 0)break;let _=m($);if(_===void 0)break;B6($,U,q,W,H,_,0),q=0}break}case 26:{let q=0;if(Q6($)%4===1){let U=m($);if(U===void 0)break;q=U}while(Q6($)>=4){let U=m($);if(U===void 0)break;let W=m($);if(W===void 0)break;let H=m($);if(H===void 0)break;let _=m($);if(_===void 0)break;B6($,q,U,W,H,0,_),q=0}break}case 31:{let q=!0;while(Q6($)>=4){if(q){let U=m($);if(U===void 0)break;let W=m($);if(W===void 0)break;let H=m($);if(H===void 0)break;let _=m($);if(_===void 0)break;let N=Q6($)===1?m($)??0:0;B6($,U,0,W,H,N,_)}else{let U=m($);if(U===void 0)break;let W=m($);if(W===void 0)break;let H=m($);if(H===void 0)break;let _=m($);if(_===void 0)break;let N=Q6($)===1?m($)??0:0;B6($,0,U,W,H,_,N)}q=!q}break}case 30:{let q=!0;while(Q6($)>=4){if(q){let U=m($);if(U===void 0)break;let W=m($);if(W===void 0)break;let H=m($);if(H===void 0)break;let _=m($);if(_===void 0)break;let N=Q6($)===1?m($)??0:0;B6($,0,U,W,H,_,N)}else{let U=m($);if(U===void 0)break;let W=m($);if(W===void 0)break;let H=m($);if(H===void 0)break;let _=m($);if(_===void 0)break;let N=Q6($)===1?m($)??0:0;B6($,U,0,W,H,N,_)}q=!q}break}case 24:{while(Q6($)>=8){let q=m($);if(q===void 0)break;let U=m($);if(U===void 0)break;let W=m($);if(W===void 0)break;let H=m($);if(H===void 0)break;let _=m($);if(_===void 0)break;let N=m($);if(N===void 0)break;B6($,q,U,W,H,_,N)}if(Q6($)>=2){let q=m($);if(q===void 0)break;let U=m($);if(U===void 0)break;$.x+=q,$.y+=U,$.currentContour.push({x:$.x,y:$.y,onCurve:!0})}break}case 25:{while(Q6($)>=8){let q=m($);if(q===void 0)break;let U=m($);if(U===void 0)break;$.x+=q,$.y+=U,$.currentContour.push({x:$.x,y:$.y,onCurve:!0})}if(Q6($)>=6){let q=m($);if(q===void 0)break;let U=m($);if(U===void 0)break;let W=m($);if(W===void 0)break;let H=m($);if(H===void 0)break;let _=m($);if(_===void 0)break;let N=m($);if(N===void 0)break;B6($,q,U,W,H,_,N)}break}case 10:{let q=J.pop();if(q===void 0)break;let U=q+rJ(K.length),W=K[U];if(W)o0($,W,Z,K);break}case 29:{let q=J.pop();if(q===void 0)break;let U=q+rJ(Z.length),W=Z[U];if(W)o0($,W,Z,K);break}case 11:break;case 14:{if(Q6($)>0&&!$.haveWidth){let q=m($);if(q===void 0)break;$.width=q,$.haveWidth=!0}if($.currentContour.length>0)$.contours.push($.currentContour),$.currentContour=[];W9($);break}case 3107:{if(Q6($)>=13){let q=m($);if(q===void 0)break;let U=m($);if(U===void 0)break;let W=m($);if(W===void 0)break;let H=m($);if(H===void 0)break;let _=m($);if(_===void 0)break;let N=m($);if(N===void 0)break;let V=m($);if(V===void 0)break;let X=m($);if(X===void 0)break;let j=m($);if(j===void 0)break;let z=m($);if(z===void 0)break;let G=m($);if(G===void 0)break;let Y=m($);if(Y===void 0)break;m($),B6($,q,U,W,H,_,N),B6($,V,X,j,z,G,Y)}break}case 3106:{if(Q6($)>=7){let q=m($);if(q===void 0)break;let U=m($);if(U===void 0)break;let W=m($);if(W===void 0)break;let H=m($);if(H===void 0)break;let _=m($);if(_===void 0)break;let N=m($);if(N===void 0)break;let V=m($);if(V===void 0)break;B6($,q,0,U,W,H,0),B6($,_,0,N,-W,V,0)}break}case 3108:{if(Q6($)>=9){let q=m($);if(q===void 0)break;let U=m($);if(U===void 0)break;let W=m($);if(W===void 0)break;let H=m($);if(H===void 0)break;let _=m($);if(_===void 0)break;let N=m($);if(N===void 0)break;let V=m($);if(V===void 0)break;let X=m($);if(X===void 0)break;let j=m($);if(j===void 0)break;B6($,q,U,W,H,_,0),B6($,N,0,V,X,j,-(U+H+X))}break}case 3109:{if(Q6($)>=11){let q=m($);if(q===void 0)break;let U=m($);if(U===void 0)break;let W=m($);if(W===void 0)break;let H=m($);if(H===void 0)break;let _=m($);if(_===void 0)break;let N=m($);if(N===void 0)break;let V=m($);if(V===void 0)break;let X=m($);if(X===void 0)break;let j=m($);if(j===void 0)break;let z=m($);if(z===void 0)break;let G=m($);if(G===void 0)break;let Y=q+W+_+V+j,E=U+H+N+X+z,w,F;if(Math.abs(Y)>Math.abs(E))w=G,F=-E;else w=-Y,F=G;B6($,q,U,W,H,_,N),B6($,V,X,j,z,w,F)}break}case 3075:{let q=J.pop();if(q===void 0)break;let U=J.pop();if(U===void 0)break;J.push(U&&q?1:0);break}case 3076:{let q=J.pop();if(q===void 0)break;let U=J.pop();if(U===void 0)break;J.push(U||q?1:0);break}case 3077:{let q=J.pop();if(q===void 0)break;J.push(q?0:1);break}case 3081:{let q=J.pop();if(q===void 0)break;J.push(Math.abs(q));break}case 3082:{let q=J.pop();if(q===void 0)break;let U=J.pop();if(U===void 0)break;J.push(U+q);break}case 3083:{let q=J.pop();if(q===void 0)break;let U=J.pop();if(U===void 0)break;J.push(U-q);break}case 3084:{let q=J.pop();if(q===void 0)break;let U=J.pop();if(U===void 0)break;J.push(U/q);break}case 3086:{let q=J.pop();if(q===void 0)break;J.push(-q);break}case 3087:{let q=J.pop();if(q===void 0)break;let U=J.pop();if(U===void 0)break;J.push(U===q?1:0);break}case 3090:{J.pop();break}case 3092:{let q=J.pop();if(q===void 0)break;let U=J.pop();if(U===void 0)break;$.transientArray[q]=U;break}case 3093:{let q=J.pop();if(q===void 0)break;J.push($.transientArray[q]??0);break}case 3094:{let q=J.pop();if(q===void 0)break;let U=J.pop();if(U===void 0)break;let W=J.pop();if(W===void 0)break;let H=J.pop();if(H===void 0)break;J.push(U<=q?H:W);break}case 3095:{J.push(Math.random());break}case 3096:{let q=J.pop();if(q===void 0)break;let U=J.pop();if(U===void 0)break;J.push(U*q);break}case 3098:{let q=J.pop();if(q===void 0)break;J.push(Math.sqrt(q));break}case 3099:{let q=J[J.length-1];if(q===void 0)break;J.push(q);break}case 3100:{let q=J.pop();if(q===void 0)break;let U=J.pop();if(U===void 0)break;J.push(q,U);break}case 3101:{let q=J.pop();if(q===void 0)break;let U=J.length-1-q;J.push(J[U]??0);break}case 3102:{let q=J.pop();if(q===void 0)break;let U=J.pop();if(U===void 0)break;if(U>0){let W=J.splice(-U),H=(q%U+U)%U;for(let _=0;_<U;_++){let N=W[(_+H)%U];if(N!==void 0)J.push(N)}}break}case 16:{if(!$.axisCoords||!$.vstore)break;let q=J.pop();if(q===void 0)break;let U=$.vstore.itemVariationData[$.vsindex]?.regionIndexCount??0,W=q*U,H=J.splice(-W),_=J.splice(-q);for(let N=0;N<q;N++){let V=_[N];if(V===void 0)continue;let X=V;for(let j=0;j<U;j++){let z=H[N*U+j];if(z===void 0)continue;let G=I_($.vstore,$.vsindex,j,$.axisCoords);X+=z*G}J.push(X)}break}case 15:{let q=J.pop();if(q===void 0)break;$.vsindex=q;break}case 3072:break}}function B6($,Q,Z,K,J,q,U){let{x:W,y:H}=$,_=W+Q,N=H+Z,V=_+K,X=N+J,j=V+q,z=X+U;$.currentContour.push({x:_,y:N,onCurve:!1,cubic:!0}),$.currentContour.push({x:V,y:X,onCurve:!1,cubic:!0}),$.currentContour.push({x:j,y:z,onCurve:!0}),$.x=j,$.y=z}function rJ($){if($<1240)return 107;if($<33900)return 1131;return 32768}function I_($,Q,Z,K){let J=$.itemVariationData[Q];if(!J)return 0;let q=J.regionIndexes[Z];if(q===void 0)return 0;let U=$.variationRegionList.regions[q];if(!U)return 0;let W=1;for(let H=0;H<U.axes.length&&H<K.length;H++){let _=U.axes[H];if(!_)continue;let N=K[H];if(N===void 0)continue;if(N<_.startCoord||N>_.endCoord)return 0;if(N===_.peakCoord)continue;if(N<_.peakCoord)W*=(N-_.startCoord)/(_.peakCoord-_.startCoord);else W*=(_.endCoord-N)/(_.endCoord-_.peakCoord)}return W}function k_($,Q,Z=0){let K=$.topDicts[Z];return 0}function o5($){let Q=$.offset,Z=$.uint8(),K=$.uint8(),J=$.uint8(),q=$.uint16();$.seek(Q+J);let U=$.slice($.offset-Q,q);$.skip(q);let W=h_(U),H=i0($),_=[];if(W.charStrings!==void 0)$.seek(Q+W.charStrings),_=i0($);let N=[];if(W.fdArray!==void 0){$.seek(Q+W.fdArray);let j=i0($);for(let z=0;z<j.length;z++){let G=j[z],Y=y_(new c6(G.buffer,G.byteOffset,G.byteLength));if(Y.privateOffset!==void 0&&Y.privateSize!==void 0){$.seek(Q+Y.privateOffset);let E=$.slice(0,Y.privateSize);if(Y.private=b_(E),Y.private.subrs!==void 0)$.seek(Q+Y.privateOffset+Y.private.subrs),Y.localSubrs=i0($)}N.push(Y)}}let V=null;if(W.fdSelect!==void 0)$.seek(Q+W.fdSelect),V=m_($,_.length);let X=null;if(W.vstore!==void 0)$.seek(Q+W.vstore),X=g_($);return{version:{major:Z,minor:K},topDict:W,globalSubrs:H,charStrings:_,fdArray:N,fdSelect:V,vstore:X}}function i0($){let Q=$.uint32();if(Q===0)return[];let Z=$.uint8(),K=[];for(let q=0;q<=Q;q++)K.push(C_($,Z));let J=[];for(let q=0;q<Q;q++){let U=K[q],W=K[q+1];if(U===void 0||W===void 0)continue;let H=W-U;J.push($.bytes(H))}return J}function C_($,Q){switch(Q){case 1:return $.uint8();case 2:return $.uint16();case 3:return $.uint24();case 4:return $.uint32();default:throw Error(`Invalid offset size: ${Q}`)}}function c5($){let Q=new Map,Z=[];while($.remaining>0){let K=$.uint8();if(K<=21){let J=K;if(K===12)J=3072|$.uint8();Q.set(J,[...Z]),Z.length=0}else if(K===22)Q.set(22,[...Z]),Z.length=0;else if(K===23)Q.set(23,[...Z]),Z.length=0;else if(K===24)Q.set(24,[...Z]),Z.length=0;else if(K===28)Z.push($.int16());else if(K===29)Z.push($.int32());else if(K===30)Z.push(S_($));else if(K>=32&&K<=246)Z.push(K-139);else if(K>=247&&K<=250){let J=$.uint8();Z.push((K-247)*256+J+108)}else if(K>=251&&K<=254){let J=$.uint8();Z.push(-(K-251)*256-J-108)}}return Q}function S_($){let Q="",Z="0123456789.EE -",K=!1;while(!K){let J=$.uint8();for(let q=0;q<2;q++){let U=q===0?J>>4:J&15;if(U===15){K=!0;break}if(U===12)Q+="E-";else{let W=Z[U];if(W!==void 0)Q+=W}}}return parseFloat(Q)}function h_($){let Q=c5($),Z={},K=[...Q];for(let J=0;J<K.length;J++){let[q,U]=K[J];switch(q){case 3079:Z.fontMatrix=U;break;case 17:Z.charStrings=U[0];break;case 3108:Z.fdArray=U[0];break;case 3109:Z.fdSelect=U[0];break;case 24:Z.vstore=U[0];break}}return Z}function y_($){let Q=c5($),Z={},K=Q.get(18);if(K&&K.length>=2)Z.privateSize=K[0],Z.privateOffset=K[1];return Z}function b_($){let Q=c5($),Z={},K=[...Q];for(let J=0;J<K.length;J++){let[q,U]=K[J],W=U[0];switch(q){case 6:Z.blueValues=H9(U);break;case 7:Z.otherBlues=H9(U);break;case 8:Z.familyBlues=H9(U);break;case 9:Z.familyOtherBlues=H9(U);break;case 3081:Z.blueScale=W;break;case 3082:Z.blueShift=W;break;case 3083:Z.blueFuzz=W;break;case 10:Z.stdHW=W;break;case 11:Z.stdVW=W;break;case 3084:Z.stemSnapH=H9(U);break;case 3085:Z.stemSnapV=H9(U);break;case 3089:Z.languageGroup=W;break;case 3090:Z.expansionFactor=W;break;case 19:Z.subrs=W;break;case 22:Z.vsindex=W;break;case 23:Z.blend=U;break}}return Z}function H9($){let Q=[],Z=0;for(let K=0;K<$.length;K++){let J=$[K];Z+=J,Q.push(Z)}return Q}function m_($,Q){let Z=$.uint8();if(Z===0){let K=$.uint8Array(Q);return{format:Z,select:(J)=>K[J]??0}}else if(Z===3){let K=$.uint16(),J=[];for(let q=0;q<K;q++)J.push({first:$.uint16(),fd:$.uint8()});return $.uint16(),{format:Z,select:(q)=>{let U=0,W=J.length-1;while(U<W){let _=Math.ceil((U+W)/2),N=J[_];if(N&&N.first<=q)U=_;else W=_-1}return J[U]?.fd??0}}}else if(Z===4){let K=$.uint32(),J=[];for(let q=0;q<K;q++)J.push({first:$.uint32(),fd:$.uint16()});return $.uint32(),{format:Z,select:(q)=>{let U=0,W=J.length-1;while(U<W){let _=Math.ceil((U+W)/2),N=J[_];if(N&&N.first<=q)U=_;else W=_-1}return J[U]?.fd??0}}}return{format:Z,select:()=>0}}function g_($){let Q=$.offset,Z=$.uint16(),K=$.uint16(),J=$.uint32(),q=$.uint16(),U=[];for(let _=0;_<q;_++)U.push($.uint32());$.seek(Q+J);let W=u_($),H=[];for(let _=0;_<U.length;_++){let N=U[_];$.seek(Q+N),H.push(x_($))}return{format:K,variationRegionList:W,itemVariationData:H}}function u_($){let Q=$.uint16(),Z=$.uint16(),K=[];for(let J=0;J<Z;J++){let q=[];for(let U=0;U<Q;U++)q.push({startCoord:$.f2dot14(),peakCoord:$.f2dot14(),endCoord:$.f2dot14()});K.push({axes:q})}return{axisCount:Q,regionCount:Z,regions:K}}function x_($){let Q=$.uint16(),Z=$.uint16(),K=Z&32767,J=(Z&32768)!==0,q=[];for(let W=0;W<K;W++)q.push($.uint16());let U=[];for(let W=0;W<Q;W++){let H=[];for(let _=0;_<K;_++)if(J)H.push($.int32());else H.push($.int16());U.push(H)}return{itemCount:Q,regionIndexCount:K,regionIndexes:q,deltaSets:U}}function f_($,Q,Z,K){let J=$.itemVariationData[Q];if(!J)return 0;let q=J.deltaSets[Z];if(!q)return 0;let U=0;for(let W=0;W<J.regionIndexCount;W++){let H=J.regionIndexes[W];if(H===void 0)continue;let _=$.variationRegionList.regions[H];if(!_)continue;let N=1;for(let V=0;V<_.axes.length;V++){let X=_.axes[V],j=K[V]??0;if(X.peakCoord===0)continue;if(j<X.startCoord||j>X.endCoord){N=0;break}if(j===X.peakCoord)continue;if(j<X.peakCoord)N*=(j-X.startCoord)/(X.peakCoord-X.startCoord);else N*=(X.endCoord-j)/(X.endCoord-X.peakCoord)}U+=N*(q[W]??0)}return Math.round(U)}function tJ($,Q){let Z=$.offset,K=$.uint16(),J=$.uint16(),q=[];for(let N=0;N<J;N++)q.push({platformId:$.uint16(),encodingId:$.uint16(),offset:$.uint32()});let U=new Map,W=new Set;for(let N=0;N<q.length;N++){let V=q[N];if(W.has(V.offset)){let z=`${V.platformId}-${V.encodingId}`,G=[...U.entries()];for(let Y=0;Y<G.length;Y++){let[E,w]=G[Y],A=E.split("@")[0];if(A&&Number.parseInt(A,10)===V.offset){U.set(z,w);break}}continue}W.add(V.offset);let X=$.slice(V.offset,Q-V.offset),j=l_(X);if(j){let z=`${V.platformId}-${V.encodingId}`;U.set(z,j)}}let H=["3-10","0-4","3-1","0-3","0-6","1-0"],_=null;for(let N=0;N<H.length;N++){let V=H[N],X=U.get(V);if(X&&X.format!==14){_=X;break}}if(!_){let N=[...U.values()];for(let V=0;V<N.length;V++){let X=N[V];if(X.format!==14){_=X;break}}}return{version:K,numTables:J,encodingRecords:q,subtables:U,bestSubtable:_}}function l_($){switch($.uint16()){case 0:return d_($);case 4:return n_($);case 12:return p_($);case 14:return o_($);default:return null}}function d_($){let Q=$.uint16(),Z=$.uint16(),K=$.uint8Array(256);return{format:0,glyphIdArray:K,lookup(J){if(J>=0&&J<256)return K[J];return}}}function n_($){let Q=$.uint16(),Z=$.uint16(),J=$.uint16()/2;$.skip(6);let q=$.uint16Array(J);$.skip(2);let U=$.uint16Array(J),W=$.int16Array(J),H=$.offset,_=$.uint16Array(J),V=$.remaining/2,X=$.uint16Array(V),j=(G)=>{let Y=0,E=J-1;while(Y<=E){let w=Y+E>>>1,F=q[w];if(G>F)Y=w+1;else{let A=U[w];if(G<A)E=w-1;else{let B=_[w],L=W[w];if(B===0)return G+L&65535;let O=B/2-(J-w)+(G-A),M=X[O];if(M===void 0||M===0)return 0;return M+L&65535}}}return},z=new Uint16Array(256);for(let G=0;G<256;G++){let Y=j(G);z[G]=Y!==void 0?Y+1:0}return{format:4,segCount:J,endCodes:q,startCodes:U,idDeltas:W,idRangeOffsets:_,glyphIdArray:X,lookup(G){if(G<256){let Y=z[G];return Y===0?void 0:Y-1}if(G>65535)return;return j(G)}}}function p_($){$.skip(2);let Q=$.uint32(),Z=$.uint32(),K=$.uint32(),J=Array(K);for(let W=0;W<K;W++)J[W]={startCharCode:$.uint32(),endCharCode:$.uint32(),startGlyphId:$.uint32()};let q=(W)=>{let H=0,_=J.length-1;while(H<=_){let N=H+_>>>1,V=J[N];if(!V)break;if(W>V.endCharCode)H=N+1;else if(W<V.startCharCode)_=N-1;else return V.startGlyphId+(W-V.startCharCode)}return},U=new Uint16Array(128);for(let W=0;W<128;W++){let H=q(W);U[W]=H!==void 0?H+1:0}return{format:12,groups:J,lookup(W){if(W<128){let H=U[W];return H===0?void 0:H-1}return q(W)}}}function o_($){let Q=$.offset-2,Z=$.uint32(),K=$.uint32(),J=[];for(let U=0;U<K;U++)J.push({varSelector:$.uint24(),defaultUVSOffset:$.uint32(),nonDefaultUVSOffset:$.uint32()});let q=[];for(let U=0;U<J.length;U++){let W=J[U],H=null,_=null;if(W.defaultUVSOffset!==0){let N=$.sliceFrom(Q+W.defaultUVSOffset),V=N.uint32();H=[];for(let X=0;X<V;X++)H.push({startUnicodeValue:N.uint24(),additionalCount:N.uint8()})}if(W.nonDefaultUVSOffset!==0){let N=$.sliceFrom(Q+W.nonDefaultUVSOffset),V=N.uint32();_=[];for(let X=0;X<V;X++)_.push({unicodeValue:N.uint24(),glyphId:N.uint16()})}q.push({varSelector:W.varSelector,defaultUVS:H,nonDefaultUVS:_})}return{format:14,varSelectorRecords:q,lookup(U){return},lookupVariation(U,W){let H=0,_=q.length-1,N=null;while(H<=_){let V=H+_>>>1,X=q[V];if(!X)break;if(W>X.varSelector)H=V+1;else if(W<X.varSelector)_=V-1;else{N=X;break}}if(!N)return;if(N.nonDefaultUVS){let V=0,X=N.nonDefaultUVS.length-1;while(V<=X){let j=V+X>>>1,z=N.nonDefaultUVS[j];if(!z)break;if(U>z.unicodeValue)V=j+1;else if(U<z.unicodeValue)X=j-1;else return z.glyphId}}if(N.defaultUVS)for(let V=0;V<N.defaultUVS.length;V++){let X=N.defaultUVS[V],j=X.startUnicodeValue+X.additionalCount;if(U>=X.startUnicodeValue&&U<=j)return"default"}return}}}function eJ($,Q){return $.bestSubtable?.lookup(Q)??0}var $q;((R)=>{R[R.ColrLayers=1]="ColrLayers";R[R.Solid=2]="Solid";R[R.VarSolid=3]="VarSolid";R[R.LinearGradient=4]="LinearGradient";R[R.VarLinearGradient=5]="VarLinearGradient";R[R.RadialGradient=6]="RadialGradient";R[R.VarRadialGradient=7]="VarRadialGradient";R[R.SweepGradient=8]="SweepGradient";R[R.VarSweepGradient=9]="VarSweepGradient";R[R.Glyph=10]="Glyph";R[R.ColrGlyph=11]="ColrGlyph";R[R.Transform=12]="Transform";R[R.VarTransform=13]="VarTransform";R[R.Translate=14]="Translate";R[R.VarTranslate=15]="VarTranslate";R[R.Scale=16]="Scale";R[R.VarScale=17]="VarScale";R[R.ScaleAroundCenter=18]="ScaleAroundCenter";R[R.VarScaleAroundCenter=19]="VarScaleAroundCenter";R[R.ScaleUniform=20]="ScaleUniform";R[R.VarScaleUniform=21]="VarScaleUniform";R[R.ScaleUniformAroundCenter=22]="ScaleUniformAroundCenter";R[R.VarScaleUniformAroundCenter=23]="VarScaleUniformAroundCenter";R[R.Rotate=24]="Rotate";R[R.VarRotate=25]="VarRotate";R[R.RotateAroundCenter=26]="RotateAroundCenter";R[R.VarRotateAroundCenter=27]="VarRotateAroundCenter";R[R.Skew=28]="Skew";R[R.VarSkew=29]="VarSkew";R[R.SkewAroundCenter=30]="SkewAroundCenter";R[R.VarSkewAroundCenter=31]="VarSkewAroundCenter";R[R.Composite=32]="Composite"})($q||={});var Qq;((K)=>{K[K.Pad=0]="Pad";K[K.Repeat=1]="Repeat";K[K.Reflect=2]="Reflect"})(Qq||={});var Zq;((I)=>{I[I.Clear=0]="Clear";I[I.Src=1]="Src";I[I.Dest=2]="Dest";I[I.SrcOver=3]="SrcOver";I[I.DestOver=4]="DestOver";I[I.SrcIn=5]="SrcIn";I[I.DestIn=6]="DestIn";I[I.SrcOut=7]="SrcOut";I[I.DestOut=8]="DestOut";I[I.SrcAtop=9]="SrcAtop";I[I.DestAtop=10]="DestAtop";I[I.Xor=11]="Xor";I[I.Plus=12]="Plus";I[I.Screen=13]="Screen";I[I.Overlay=14]="Overlay";I[I.Darken=15]="Darken";I[I.Lighten=16]="Lighten";I[I.ColorDodge=17]="ColorDodge";I[I.ColorBurn=18]="ColorBurn";I[I.HardLight=19]="HardLight";I[I.SoftLight=20]="SoftLight";I[I.Difference=21]="Difference";I[I.Exclusion=22]="Exclusion";I[I.Multiply=23]="Multiply";I[I.Hue=24]="Hue";I[I.Saturation=25]="Saturation";I[I.Color=26]="Color";I[I.Luminosity=27]="Luminosity"})(Zq||={});function s5($){let Q=$.offset,Z=$.uint16(),K=$.uint16(),J=$.uint32(),q=$.uint32(),U=$.uint16(),W=[];if(J!==0&&K>0){$.seek(Q+J);for(let N=0;N<K;N++)W.push({glyphId:$.uint16(),firstLayerIndex:$.uint16(),numLayers:$.uint16()})}let H=[];if(q!==0&&U>0){$.seek(Q+q);for(let N=0;N<U;N++)H.push({glyphId:$.uint16(),paletteIndex:$.uint16()})}let _={version:Z,baseGlyphRecords:W,layerRecords:H};if(Z>=1){$.seek(Q+14);let N=$.uint32(),V=$.uint32(),X=$.uint32(),j=$.uint32(),z=$.uint32();if(N!==0){let G=Q+N;$.seek(G);let Y=$.uint32();_.baseGlyphPaintRecords=[];for(let E=0;E<Y;E++){let w=$.uint16(),F=$.uint32(),A=$.offset;$.seek(G+F);let B=k6($,Q);$.seek(A),_.baseGlyphPaintRecords.push({glyphId:w,paint:B})}}if(V!==0){$.seek(Q+V);let G=$.uint32(),Y=[];for(let E=0;E<G;E++)Y.push($.uint32());_.layerList=[];for(let E=0;E<Y.length;E++){let w=Y[E];$.seek(Q+V+w),_.layerList.push(k6($,Q))}}if(X!==0)$.seek(Q+X),_.clipList=c_($,Q);if(j!==0)$.seek(Q+j),_.varIdxMap=s_($);if(z!==0)$.seek(Q+z),_.itemVariationStore=a_($)}return _}function k6($,Q){let Z=$.offset,K=$.uint8();switch(K){case 1:return{format:K,numLayers:$.uint8(),firstLayerIndex:$.uint32()};case 2:return{format:K,paletteIndex:$.uint16(),alpha:$.f2dot14()};case 3:return{format:K,paletteIndex:$.uint16(),alpha:$.f2dot14(),varIndexBase:$.uint32()};case 4:case 5:{let J=$.uint24(),q=$.fword(),U=$.fword(),W=$.fword(),H=$.fword(),_=$.fword(),N=$.fword(),V=$.offset;$.seek(Z+J);let X=i5($);return $.seek(V),{format:K,colorLine:X,x0:q,y0:U,x1:W,y1:H,x2:_,y2:N}}case 6:case 7:{let J=$.uint24(),q=$.fword(),U=$.fword(),W=$.ufword(),H=$.fword(),_=$.fword(),N=$.ufword(),V=$.offset;$.seek(Z+J);let X=i5($);return $.seek(V),{format:K,colorLine:X,x0:q,y0:U,radius0:W,x1:H,y1:_,radius1:N}}case 8:case 9:{let J=$.uint24(),q=$.fword(),U=$.fword(),W=$.f2dot14(),H=$.f2dot14(),_=$.offset;$.seek(Z+J);let N=i5($);return $.seek(_),{format:K,colorLine:N,centerX:q,centerY:U,startAngle:W,endAngle:H}}case 10:{let J=$.uint24(),q=$.uint16(),U=$.offset;$.seek(Z+J);let W=k6($,Q);return $.seek(U),{format:K,paint:W,glyphId:q}}case 11:return{format:K,glyphId:$.uint16()};case 12:case 13:{let J=$.uint24(),q=$.uint24();$.seek(Z+q);let U={xx:$.fixed(),yx:$.fixed(),xy:$.fixed(),yy:$.fixed(),dx:$.fixed(),dy:$.fixed()};$.seek(Z+J);let W=k6($,Q);return{format:K,paint:W,transform:U}}case 14:case 15:{let J=$.uint24(),q=$.fword(),U=$.fword();$.seek(Z+J);let W=k6($,Q);return{format:K,paint:W,dx:q,dy:U}}case 16:case 17:{let J=$.uint24(),q=$.f2dot14(),U=$.f2dot14();$.seek(Z+J);let W=k6($,Q);return{format:K,paint:W,scaleX:q,scaleY:U}}case 18:case 19:{let J=$.uint24(),q=$.f2dot14(),U=$.f2dot14(),W=$.fword(),H=$.fword();$.seek(Z+J);let _=k6($,Q);return{format:K,paint:_,scaleX:q,scaleY:U,centerX:W,centerY:H}}case 20:case 21:{let J=$.uint24(),q=$.f2dot14();$.seek(Z+J);let U=k6($,Q);return{format:K,paint:U,scaleX:q,scaleY:q}}case 22:case 23:{let J=$.uint24(),q=$.f2dot14(),U=$.fword(),W=$.fword();$.seek(Z+J);let H=k6($,Q);return{format:K,paint:H,scaleX:q,scaleY:q,centerX:U,centerY:W}}case 24:case 25:{let J=$.uint24(),q=$.f2dot14();$.seek(Z+J);let U=k6($,Q);return{format:K,paint:U,angle:q}}case 26:case 27:{let J=$.uint24(),q=$.f2dot14(),U=$.fword(),W=$.fword();$.seek(Z+J);let H=k6($,Q);return{format:K,paint:H,angle:q,centerX:U,centerY:W}}case 28:case 29:{let J=$.uint24(),q=$.f2dot14(),U=$.f2dot14();$.seek(Z+J);let W=k6($,Q);return{format:K,paint:W,xSkewAngle:q,ySkewAngle:U}}case 30:case 31:{let J=$.uint24(),q=$.f2dot14(),U=$.f2dot14(),W=$.fword(),H=$.fword();$.seek(Z+J);let _=k6($,Q);return{format:K,paint:_,xSkewAngle:q,ySkewAngle:U,centerX:W,centerY:H}}case 32:{let J=$.uint24(),q=$.uint8(),U=$.uint24();$.seek(Z+J);let W=k6($,Q);$.seek(Z+U);let H=k6($,Q);return{format:K,sourcePaint:W,compositeMode:q,backdropPaint:H}}default:throw Error(`Unknown paint format: ${K}`)}}function i5($){let Q=$.uint8(),Z=$.uint16(),K=[];for(let J=0;J<Z;J++)K.push({stopOffset:$.f2dot14(),paletteIndex:$.uint16(),alpha:$.f2dot14()});return{extend:Q,colorStops:K}}function c_($,Q){let Z=$.offset,K=$.uint8(),J=$.uint32(),q=[];for(let U=0;U<J;U++){let W=$.uint16(),H=$.uint16(),_=$.uint24(),N=$.offset;$.seek(Z+_);let V=$.uint8(),X={format:V,xMin:$.fword(),yMin:$.fword(),xMax:$.fword(),yMax:$.fword()};if(V===2)X.varIndexBase=$.uint32();$.seek(N),q.push({startGlyphId:W,endGlyphId:H,clipBox:X})}return q}function Kq($,Q){let Z=$.baseGlyphRecords,K=0,J=Z.length-1;while(K<=J){let q=K+J>>>1,U=Z[q];if(!U)break;if(U.glyphId===Q){let W=[];for(let H=0;H<U.numLayers;H++){let _=$.layerRecords[U.firstLayerIndex+H];if(_)W.push(_)}return W}else if(U.glyphId<Q)K=q+1;else J=q-1}return null}function Jq($,Q){if(!$.baseGlyphPaintRecords)return null;let Z=$.baseGlyphPaintRecords,K=0,J=Z.length-1;while(K<=J){let q=K+J>>>1,U=Z[q];if(!U)break;if(U.glyphId===Q)return U.paint;else if(U.glyphId<Q)K=q+1;else J=q-1}return null}function i_($,Q){return Kq($,Q)!==null||Jq($,Q)!==null}function s_($){let Q=$.uint8(),Z=$.uint8(),K=Q===0?$.uint16():$.uint32(),J=(Z&15)+1,q=(Z>>4&15)+1,U=Math.ceil((J+q)/8),W=[];for(let H=0;H<K;H++){let _=0;for(let j=0;j<U;j++)_=_<<8|$.uint8();let N=(1<<J)-1,V=_&N,X=_>>J;W.push(X<<16|V)}return W}function a_($){let Q=$.offset,Z=$.uint16(),K=$.uint32(),J=$.uint16(),q=[];for(let N=0;N<J;N++)q.push($.uint32());$.seek(Q+K);let U=$.uint16(),W=$.uint16(),H=[];for(let N=0;N<W;N++){let V=[];for(let X=0;X<U;X++)V.push({startCoord:$.f2dot14(),peakCoord:$.f2dot14(),endCoord:$.f2dot14()});H.push({regionAxes:V})}let _=[];for(let N=0;N<q.length;N++){let V=q[N];$.seek(Q+V);let X=$.uint16(),j=$.uint16(),z=$.uint16(),G=[];for(let F=0;F<z;F++)G.push($.uint16());let Y=(j&32768)!==0,E=j&32767,w=[];for(let F=0;F<X;F++){let A=[];for(let B=0;B<z;B++)if(B<E)A.push(Y?$.int32():$.int16());else A.push(Y?$.int16():$.int8());w.push(A)}_.push({itemCount:X,wordDeltaCount:j,regionIndexCount:z,regionIndexes:G,deltaSets:w})}return{format:Z,variationRegionListOffset:K,itemVariationDataCount:J,itemVariationDataOffsets:q,variationRegions:H,itemVariationData:_}}function r_($,Q){if(!$.clipList)return null;for(let Z=0;Z<$.clipList.length;Z++){let K=$.clipList[Z];if(Q>=K.startGlyphId&&Q<=K.endGlyphId)return K.clipBox}return null}function t_($,Q,Z){if(!$.itemVariationStore||!$.varIdxMap)return 0;let K=$.varIdxMap[Q];if(K===void 0)return 0;let J=K>>16,q=K&65535,U=$.itemVariationStore,W=U.itemVariationData[J];if(!W)return 0;let H=W.deltaSets[q];if(!H)return 0;let _=0;for(let N=0;N<W.regionIndexCount;N++){let V=W.regionIndexes[N];if(V===void 0)continue;let X=U.variationRegions[V];if(!X)continue;let j=1;for(let G=0;G<X.regionAxes.length&&G<Z.length;G++){let Y=X.regionAxes[G],E=Z[G];if(Y===void 0||E===void 0)continue;if(j*=e_(E,Y.startCoord,Y.peakCoord,Y.endCoord),j===0)break}let z=H[N];if(z!==void 0)_+=z*j}return _}function e_($,Q,Z,K){if(Q===0&&Z===0&&K===0)return 1;if($===Z)return 1;if($<Q||$>K)return 0;if($<Z){if(Q===Z)return 1;return($-Q)/(Z-Q)}else{if(Z===K)return 1;return(K-$)/(K-Z)}}function $N($){return $.version>=1&&$.baseGlyphPaintRecords!==void 0}function QN($,Q){return $.layerList?.[Q]??null}var qq;((Z)=>{Z[Z.UsableWithLightBackground=1]="UsableWithLightBackground";Z[Z.UsableWithDarkBackground=2]="UsableWithDarkBackground"})(qq||={});function a5($){let Q=$.offset,Z=$.uint16(),K=$.uint16(),J=$.uint16(),q=$.uint16(),U=$.uint32(),W=[];for(let j=0;j<J;j++)W.push($.uint16());$.seek(Q+U);let H=[];for(let j=0;j<q;j++)H.push({blue:$.uint8(),green:$.uint8(),red:$.uint8(),alpha:$.uint8()});let _=[];for(let j=0;j<J;j++){let z=W[j];if(z===void 0)continue;let G=[];for(let Y=0;Y<K;Y++){let E=H[z+Y];if(E)G.push(E)}_.push({colors:G})}let N,V,X;if(Z>=1){$.seek(Q+12+J*2);let j=$.uint32(),z=$.uint32(),G=$.uint32();if(j!==0){$.seek(Q+j),N=[];for(let Y=0;Y<J;Y++)N.push($.uint32())}if(z!==0){$.seek(Q+z),V=[];for(let Y=0;Y<J;Y++)V.push($.uint16())}if(G!==0){$.seek(Q+G),X=[];for(let Y=0;Y<K;Y++)X.push($.uint16())}}return{version:Z,numPalettes:J,numPaletteEntries:K,palettes:_,paletteTypes:N,paletteLabels:V,paletteEntryLabels:X}}function ZN($,Q,Z){let K=$.palettes[Q];if(!K)return null;return K.colors[Z]??null}function KN($){return`rgba(${$.red}, ${$.green}, ${$.blue}, ${($.alpha/255).toFixed(3)})`}function JN($){let Q=$.red.toString(16).padStart(2,"0"),Z=$.green.toString(16).padStart(2,"0"),K=$.blue.toString(16).padStart(2,"0");if($.alpha===255)return`#${Q}${Z}${K}`;let J=$.alpha.toString(16).padStart(2,"0");return`#${Q}${Z}${K}${J}`}var Uq;((g)=>{g[g.AllTypographicFeatures=0]="AllTypographicFeatures";g[g.Ligatures=1]="Ligatures";g[g.CursiveConnection=2]="CursiveConnection";g[g.LetterCase=3]="LetterCase";g[g.VerticalSubstitution=4]="VerticalSubstitution";g[g.LinguisticRearrangement=5]="LinguisticRearrangement";g[g.NumberSpacing=6]="NumberSpacing";g[g.SmartSwashes=8]="SmartSwashes";g[g.Diacritics=9]="Diacritics";g[g.VerticalPosition=10]="VerticalPosition";g[g.Fractions=11]="Fractions";g[g.OverlappingCharacters=13]="OverlappingCharacters";g[g.TypographicExtras=14]="TypographicExtras";g[g.MathematicalExtras=15]="MathematicalExtras";g[g.OrnamentSets=16]="OrnamentSets";g[g.CharacterAlternatives=17]="CharacterAlternatives";g[g.DesignComplexity=18]="DesignComplexity";g[g.StyleOptions=19]="StyleOptions";g[g.CharacterShape=20]="CharacterShape";g[g.NumberCase=21]="NumberCase";g[g.TextSpacing=22]="TextSpacing";g[g.Transliteration=23]="Transliteration";g[g.Annotation=24]="Annotation";g[g.KanaSpacing=25]="KanaSpacing";g[g.IdeographicSpacing=26]="IdeographicSpacing";g[g.UnicodeDecomposition=27]="UnicodeDecomposition";g[g.RubyKana=28]="RubyKana";g[g.CJKSymbolAlternatives=29]="CJKSymbolAlternatives";g[g.IdeographicAlternatives=30]="IdeographicAlternatives";g[g.CJKVerticalRomanPlacement=31]="CJKVerticalRomanPlacement";g[g.ItalicCJKRoman=32]="ItalicCJKRoman";g[g.CaseSensitiveLayout=33]="CaseSensitiveLayout";g[g.AlternateKana=34]="AlternateKana";g[g.StylisticAlternatives=35]="StylisticAlternatives";g[g.ContextualAlternatives=36]="ContextualAlternatives";g[g.LowerCase=37]="LowerCase";g[g.UpperCase=38]="UpperCase";g[g.LanguageTag=39]="LanguageTag";g[g.CJKRomanSpacing=103]="CJKRomanSpacing"})(Uq||={});var Wq;((L)=>{L[L.RequiredLigaturesOn=0]="RequiredLigaturesOn";L[L.RequiredLigaturesOff=1]="RequiredLigaturesOff";L[L.CommonLigaturesOn=2]="CommonLigaturesOn";L[L.CommonLigaturesOff=3]="CommonLigaturesOff";L[L.RareLigaturesOn=4]="RareLigaturesOn";L[L.RareLigaturesOff=5]="RareLigaturesOff";L[L.LogosOn=6]="LogosOn";L[L.LogosOff=7]="LogosOff";L[L.RebusPicturesOn=8]="RebusPicturesOn";L[L.RebusPicturesOff=9]="RebusPicturesOff";L[L.DiphthongLigaturesOn=10]="DiphthongLigaturesOn";L[L.DiphthongLigaturesOff=11]="DiphthongLigaturesOff";L[L.SquaredLigaturesOn=12]="SquaredLigaturesOn";L[L.SquaredLigaturesOff=13]="SquaredLigaturesOff";L[L.AbbrevSquaredLigaturesOn=14]="AbbrevSquaredLigaturesOn";L[L.AbbrevSquaredLigaturesOff=15]="AbbrevSquaredLigaturesOff";L[L.SymbolLigaturesOn=16]="SymbolLigaturesOn";L[L.SymbolLigaturesOff=17]="SymbolLigaturesOff";L[L.ContextualLigaturesOn=18]="ContextualLigaturesOn";L[L.ContextualLigaturesOff=19]="ContextualLigaturesOff";L[L.HistoricalLigaturesOn=20]="HistoricalLigaturesOn";L[L.HistoricalLigaturesOff=21]="HistoricalLigaturesOff"})(Wq||={});var Hq;((q)=>{q[q.NormalPosition=0]="NormalPosition";q[q.Superiors=1]="Superiors";q[q.Inferiors=2]="Inferiors";q[q.Ordinals=3]="Ordinals";q[q.ScientificInferiors=4]="ScientificInferiors"})(Hq||={});var _q;((Z)=>{Z[Z.LowerCaseNumbers=0]="LowerCaseNumbers";Z[Z.UpperCaseNumbers=1]="UpperCaseNumbers"})(_q||={});var Nq;((J)=>{J[J.MonospacedNumbers=0]="MonospacedNumbers";J[J.ProportionalNumbers=1]="ProportionalNumbers";J[J.ThirdWidthNumbers=2]="ThirdWidthNumbers";J[J.QuarterWidthNumbers=3]="QuarterWidthNumbers"})(Nq||={});var Vq;((K)=>{K[K.NoFractions=0]="NoFractions";K[K.VerticalFractions=1]="VerticalFractions";K[K.DiagonalFractions=2]="DiagonalFractions"})(Vq||={});var Xq;((J)=>{J[J.CaseSensitiveLayoutOn=0]="CaseSensitiveLayoutOn";J[J.CaseSensitiveLayoutOff=1]="CaseSensitiveLayoutOff";J[J.CaseSensitiveSpacingOn=2]="CaseSensitiveSpacingOn";J[J.CaseSensitiveSpacingOff=3]="CaseSensitiveSpacingOff"})(Xq||={});var jq;((S)=>{S[S.NoStylisticAlternates=0]="NoStylisticAlternates";S[S.StylisticAltOneOn=2]="StylisticAltOneOn";S[S.StylisticAltOneOff=3]="StylisticAltOneOff";S[S.StylisticAltTwoOn=4]="StylisticAltTwoOn";S[S.StylisticAltTwoOff=5]="StylisticAltTwoOff";S[S.StylisticAltThreeOn=6]="StylisticAltThreeOn";S[S.StylisticAltThreeOff=7]="StylisticAltThreeOff";S[S.StylisticAltFourOn=8]="StylisticAltFourOn";S[S.StylisticAltFourOff=9]="StylisticAltFourOff";S[S.StylisticAltFiveOn=10]="StylisticAltFiveOn";S[S.StylisticAltFiveOff=11]="StylisticAltFiveOff";S[S.StylisticAltSixOn=12]="StylisticAltSixOn";S[S.StylisticAltSixOff=13]="StylisticAltSixOff";S[S.StylisticAltSevenOn=14]="StylisticAltSevenOn";S[S.StylisticAltSevenOff=15]="StylisticAltSevenOff";S[S.StylisticAltEightOn=16]="StylisticAltEightOn";S[S.StylisticAltEightOff=17]="StylisticAltEightOff";S[S.StylisticAltNineOn=18]="StylisticAltNineOn";S[S.StylisticAltNineOff=19]="StylisticAltNineOff";S[S.StylisticAltTenOn=20]="StylisticAltTenOn";S[S.StylisticAltTenOff=21]="StylisticAltTenOff";S[S.StylisticAltElevenOn=22]="StylisticAltElevenOn";S[S.StylisticAltElevenOff=23]="StylisticAltElevenOff";S[S.StylisticAltTwelveOn=24]="StylisticAltTwelveOn";S[S.StylisticAltTwelveOff=25]="StylisticAltTwelveOff";S[S.StylisticAltThirteenOn=26]="StylisticAltThirteenOn";S[S.StylisticAltThirteenOff=27]="StylisticAltThirteenOff";S[S.StylisticAltFourteenOn=28]="StylisticAltFourteenOn";S[S.StylisticAltFourteenOff=29]="StylisticAltFourteenOff";S[S.StylisticAltFifteenOn=30]="StylisticAltFifteenOn";S[S.StylisticAltFifteenOff=31]="StylisticAltFifteenOff";S[S.StylisticAltSixteenOn=32]="StylisticAltSixteenOn";S[S.StylisticAltSixteenOff=33]="StylisticAltSixteenOff";S[S.StylisticAltSeventeenOn=34]="StylisticAltSeventeenOn";S[S.StylisticAltSeventeenOff=35]="StylisticAltSeventeenOff";S[S.StylisticAltEighteenOn=36]="StylisticAltEighteenOn";S[S.StylisticAltEighteenOff=37]="StylisticAltEighteenOff";S[S.StylisticAltNineteenOn=38]="StylisticAltNineteenOn";S[S.StylisticAltNineteenOff=39]="StylisticAltNineteenOff";S[S.StylisticAltTwentyOn=40]="StylisticAltTwentyOn";S[S.StylisticAltTwentyOff=41]="StylisticAltTwentyOff"})(jq||={});var zq;((U)=>{U[U.ContextualAlternatesOn=0]="ContextualAlternatesOn";U[U.ContextualAlternatesOff=1]="ContextualAlternatesOff";U[U.SwashAlternatesOn=2]="SwashAlternatesOn";U[U.SwashAlternatesOff=3]="SwashAlternatesOff";U[U.ContextualSwashAlternatesOn=4]="ContextualSwashAlternatesOn";U[U.ContextualSwashAlternatesOff=5]="ContextualSwashAlternatesOff"})(zq||={});var Gq;((K)=>{K[K.DefaultLowerCase=0]="DefaultLowerCase";K[K.LowerCaseSmallCaps=1]="LowerCaseSmallCaps";K[K.LowerCasePetiteCaps=2]="LowerCasePetiteCaps"})(Gq||={});var Yq;((K)=>{K[K.DefaultUpperCase=0]="DefaultUpperCase";K[K.UpperCaseSmallCaps=1]="UpperCaseSmallCaps";K[K.UpperCasePetiteCaps=2]="UpperCasePetiteCaps"})(Yq||={});var Eq;((N)=>{N[N.WordInitialSwashesOn=0]="WordInitialSwashesOn";N[N.WordInitialSwashesOff=1]="WordInitialSwashesOff";N[N.WordFinalSwashesOn=2]="WordFinalSwashesOn";N[N.WordFinalSwashesOff=3]="WordFinalSwashesOff";N[N.LineInitialSwashesOn=4]="LineInitialSwashesOn";N[N.LineInitialSwashesOff=5]="LineInitialSwashesOff";N[N.LineFinalSwashesOn=6]="LineFinalSwashesOn";N[N.LineFinalSwashesOff=7]="LineFinalSwashesOff";N[N.NonFinalSwashesOn=8]="NonFinalSwashesOn";N[N.NonFinalSwashesOff=9]="NonFinalSwashesOff"})(Eq||={});var wq;((K)=>{K[K.ShowDiacritics=0]="ShowDiacritics";K[K.HideDiacritics=1]="HideDiacritics";K[K.DecomposeDiacritics=2]="DecomposeDiacritics"})(wq||={});var Aq;((z)=>{z[z.TraditionalCharacters=0]="TraditionalCharacters";z[z.SimplifiedCharacters=1]="SimplifiedCharacters";z[z.JIS1978Characters=2]="JIS1978Characters";z[z.JIS1983Characters=3]="JIS1983Characters";z[z.JIS1990Characters=4]="JIS1990Characters";z[z.TraditionalAltOne=5]="TraditionalAltOne";z[z.TraditionalAltTwo=6]="TraditionalAltTwo";z[z.TraditionalAltThree=7]="TraditionalAltThree";z[z.TraditionalAltFour=8]="TraditionalAltFour";z[z.TraditionalAltFive=9]="TraditionalAltFive";z[z.ExpertCharacters=10]="ExpertCharacters";z[z.NLCCharacters=13]="NLCCharacters";z[z.JIS2004Characters=11]="JIS2004Characters";z[z.HojoCharacters=12]="HojoCharacters"})(Aq||={});var Fq;((Z)=>{Z[Z.Exclusive=32768]="Exclusive";Z[Z.UseDefault=16384]="UseDefault"})(Fq||={});function r5($){let Q=$.offset,Z=$.fixed(),K=$.uint16();$.skip(2),$.skip(4);let J=[];for(let q=0;q<K;q++){let U=$.uint16(),W=$.uint16(),H=$.offset32(),_=$.uint16(),N=_&255,V=$.uint16(),X=[],j=$.offset;$.seek(Q+H);for(let z=0;z<W;z++)X.push({settingValue:$.uint16(),nameId:$.uint16()});$.seek(j),J.push({featureType:U,nSettings:W,settingTableOffset:H,featureFlags:_,defaultSettingIndex:N,nameId:V,settings:X})}return{version:Z,features:J}}function qN($,Q){return $.features.find((Z)=>Z.featureType===Q)}function UN($){return $.features}function WN($){return($.featureFlags&32768)!==0}function HN($){return $.settings[$.defaultSettingIndex]}function _N($,Q){return $.settings.find((Z)=>Z.settingValue===Q)}function NN($,Q){return $.settings.some((Z)=>Z.settingValue===Q)}function VN($,Q){switch($){case 1:switch(Q){case 2:return"liga";case 4:return"dlig";case 20:return"hlig";case 18:return"clig";case 0:return"rlig"}break;case 10:switch(Q){case 1:return"sups";case 2:return"subs";case 3:return"ordn";case 4:return"sinf"}break;case 11:if(Q===1||Q===2)return"frac";break;case 21:switch(Q){case 0:return"onum";case 1:return"lnum"}break;case 6:switch(Q){case 0:return"tnum";case 1:return"pnum"}break;case 33:if(Q===0)return"case";break;case 37:switch(Q){case 1:return"smcp";case 2:return"pcap"}break;case 38:switch(Q){case 1:return"c2sc";case 2:return"c2pc"}break;case 8:if(Q===0||Q===2)return"swsh";break;case 36:switch(Q){case 0:return"calt";case 2:return"swsh"}break;case 35:if(Q>=2&&Q<=41){let Z=Math.floor((Q-2)/2)+1;if(Z<=20)return`ss${Z.toString().padStart(2,"0")}`}break;case 20:switch(Q){case 0:return"trad";case 1:return"smpl";case 2:return"jp78";case 3:return"jp83";case 4:return"jp90";case 11:return"jp04";case 13:return"nlck";case 10:return"expt";case 12:return"hojo"}break;case 4:return"vert";case 24:return"nalt";case 28:return"ruby"}return null}function XN($){switch($){case"liga":return{featureType:1,settingValue:2};case"dlig":return{featureType:1,settingValue:4};case"hlig":return{featureType:1,settingValue:20};case"clig":return{featureType:1,settingValue:18};case"rlig":return{featureType:1,settingValue:0};case"sups":return{featureType:10,settingValue:1};case"subs":return{featureType:10,settingValue:2};case"ordn":return{featureType:10,settingValue:3};case"sinf":return{featureType:10,settingValue:4};case"frac":return{featureType:11,settingValue:2};case"onum":return{featureType:21,settingValue:0};case"lnum":return{featureType:21,settingValue:1};case"tnum":return{featureType:6,settingValue:0};case"pnum":return{featureType:6,settingValue:1};case"case":return{featureType:33,settingValue:0};case"smcp":return{featureType:37,settingValue:1};case"pcap":return{featureType:37,settingValue:2};case"c2sc":return{featureType:38,settingValue:1};case"c2pc":return{featureType:38,settingValue:2};case"swsh":return{featureType:8,settingValue:0};case"calt":return{featureType:36,settingValue:0};case"trad":return{featureType:20,settingValue:0};case"smpl":return{featureType:20,settingValue:1};case"jp78":return{featureType:20,settingValue:2};case"jp83":return{featureType:20,settingValue:3};case"jp90":return{featureType:20,settingValue:4};case"jp04":return{featureType:20,settingValue:11};case"nlck":return{featureType:20,settingValue:13};case"expt":return{featureType:20,settingValue:10};case"hojo":return{featureType:20,settingValue:12};case"vert":return{featureType:4,settingValue:0};case"nalt":return{featureType:24,settingValue:0};case"ruby":return{featureType:28,settingValue:0}}if($.startsWith("ss")&&$.length===4){let Q=parseInt($.slice(2),10);if(Q>=1&&Q<=20)return{featureType:35,settingValue:(Q-1)*2+2}}return null}var i9={GridFit:1,DoGray:2,SymmetricGridFit:4,SymmetricSmoothing:8};function t5($){let Q=$.uint16(),Z=$.uint16(),K=[];for(let J=0;J<Z;J++){let q=$.uint16(),U=$.uint16();K.push({maxPPEM:q,behavior:U})}return K.sort((J,q)=>J.maxPPEM-q.maxPPEM),{version:Q,ranges:K}}function e5($,Q){for(let Z=0;Z<$.ranges.length;Z++){let K=$.ranges[Z];if(Q<=K.maxPPEM)return K.behavior}if($.ranges.length>0)return $.ranges[$.ranges.length-1]?.behavior;return i9.GridFit|i9.DoGray}function jN($,Q){return(e5($,Q)&i9.GridFit)!==0}function zN($,Q){return(e5($,Q)&i9.DoGray)!==0}class L8{startGlyphId;classValueArray;ranges;glyphMap;isEmpty;constructor($,Q,Z,K,J){this.startGlyphId=$,this.classValueArray=Q,this.ranges=Z,this.glyphMap=K,this.isEmpty=J}static empty(){return new L8(0,null,null,null,!0)}static format1($,Q){return new L8($,Q,null,null,!1)}static format2($){let Q=0;for(let K=0;K<$.length;K++){let J=$[K];Q+=J.endGlyphId-J.startGlyphId+1}let Z=null;if(Q<1e4){Z=new Map;for(let K=0;K<$.length;K++){let J=$[K];for(let q=J.startGlyphId;q<=J.endGlyphId;q++)Z.set(q,J.classValue)}}return new L8(0,null,$,Z,!1)}get($){if(this.isEmpty)return 0;if(this.classValueArray){let J=$-this.startGlyphId;return J>=0&&J<this.classValueArray.length?this.classValueArray[J]:0}if(this.glyphMap)return this.glyphMap.get($)??0;let Q=this.ranges,Z=0,K=Q.length-1;while(Z<=K){let J=Z+K>>>1,q=Q[J];if($>q.endGlyphId)Z=J+1;else if($<q.startGlyphId)K=J-1;else return q.classValue}return 0}glyphsInClass($){if(this.isEmpty)return[];if(this.classValueArray){let K=[];for(let J=0;J<this.classValueArray.length;J++)if(this.classValueArray[J]===$)K.push(this.startGlyphId+J);return K}let Q=[],Z=this.ranges;for(let K=0;K<Z.length;K++){let J=Z[K];if(J.classValue===$)for(let q=J.startGlyphId;q<=J.endGlyphId;q++)Q.push(q)}return Q}}var Lq=L8.empty();function Dq($){let Q=$.uint16();if(Q===1){let Z=$.uint16(),K=$.uint16(),J=$.uint16Array(K);return L8.format1(Z,J)}if(Q===2){let Z=$.uint16(),K=Array(Z);for(let J=0;J<Z;J++)K[J]={startGlyphId:$.uint16(),endGlyphId:$.uint16(),classValue:$.uint16()};return L8.format2(K)}throw Error(`Unknown ClassDef format: ${Q}`)}function M6($,Q){if(Q===0)return Lq;return Dq($.sliceFrom(Q))}function Bq($){let Q=$.uint16(),Z=$.uint16(),K=$.offset16(),J=$.offset16(),q=$.offset16(),U=$.offset16(),W=0;if(Q===1&&Z>=2)W=$.offset16();let H=M6($,K),_=null;if(J!==0)_=GN($.sliceFrom(J));let N=null;if(q!==0)N=YN($.sliceFrom(q));let V=M6($,U),X=null;if(W!==0)X=EN($.sliceFrom(W));return{version:{major:Q,minor:Z},glyphClassDef:H,attachList:_,ligCaretList:N,markAttachClassDef:V,markGlyphSets:X}}function GN($){let Q=$.offset16(),Z=$.uint16(),K=$.uint16Array(Z),J=$.sliceFrom(Q),q=J.uint16(),U=[];if(q===1){let H=J.uint16();for(let _=0;_<H;_++)U.push(J.uint16())}else if(q===2){let H=J.uint16();for(let _=0;_<H;_++){let N=J.uint16(),V=J.uint16();J.skip(2);for(let X=N;X<=V;X++)U.push(X)}}let W=new Map;for(let H=0;H<K.length;H++){let _=K[H],N=U[H];if(N===void 0)continue;let V=$.sliceFrom(_),X=V.uint16(),j=V.uint16Array(X),z=Array(j.length);for(let G=0;G<j.length;G++)z[G]=j[G];W.set(N,{pointIndices:z})}return W}function YN($){let Q=$.offset16(),Z=$.uint16(),K=$.uint16Array(Z),J=$.sliceFrom(Q),q=J.uint16(),U=[];if(q===1){let H=J.uint16();for(let _=0;_<H;_++)U.push(J.uint16())}else if(q===2){let H=J.uint16();for(let _=0;_<H;_++){let N=J.uint16(),V=J.uint16();J.skip(2);for(let X=N;X<=V;X++)U.push(X)}}let W=new Map;for(let H=0;H<K.length;H++){let _=K[H],N=U[H];if(N===void 0)continue;let V=$.sliceFrom(_),X=V.uint16(),j=V.uint16Array(X),z=[];for(let G=0;G<j.length;G++){let Y=j[G],E=$.sliceFrom(_+Y),w=E.uint16();if(w===1)z.push(E.int16());else if(w===2)z.push(E.uint16());else if(w===3)z.push(E.int16())}W.set(N,{caretValues:z})}return W}function EN($){let Q=$.uint16(),Z=$.uint16(),K=$.uint32Array(Z),J=[];for(let q=0;q<K.length;q++){let U=K[q],W=$.sliceFrom(U),H=W.uint16(),_=new Set;if(H===1){let N=W.uint16();for(let V=0;V<N;V++)_.add(W.uint16())}else if(H===2){let N=W.uint16();for(let V=0;V<N;V++){let X=W.uint16(),j=W.uint16();W.skip(2);for(let z=X;z<=j;z++)_.add(z)}}J.push(_)}return{has(q,U){let W=J[q];return W?W.has(U):!1}}}function H8($,Q){if(!$)return 0;return $.glyphClassDef.get(Q)}class _9{glyphMap;ranges;glyphArray;size;constructor($,Q,Z,K){this.glyphMap=$,this.ranges=Q,this.glyphArray=Z,this.size=K}static format1($){let Q=new Map;for(let Z=0;Z<$.length;Z++)Q.set($[Z],Z);return new _9(Q,null,$,$.length)}static format2($){let Q=0;if($.length>0){let Z=$[$.length-1];if(Z)Q=Z.startCoverageIndex+(Z.endGlyphId-Z.startGlyphId+1)}return new _9(null,$,null,Q)}get($){if(this.glyphMap)return this.glyphMap.get($)??null;let Q=this.ranges,Z=0,K=Q.length-1;while(Z<=K){let J=Z+K>>>1,q=Q[J];if($>q.endGlyphId)Z=J+1;else if($<q.startGlyphId)K=J-1;else return q.startCoverageIndex+($-q.startGlyphId)}return null}covers($){return this.get($)!==null}glyphs(){if(this.glyphArray){let Z=this.glyphArray,K=Array(Z.length);for(let J=0;J<Z.length;J++)K[J]=Z[J];return K}let $=[],Q=this.ranges;for(let Z=0;Z<Q.length;Z++){let K=Q[Z];for(let J=K.startGlyphId;J<=K.endGlyphId;J++)$.push(J)}return $}}function Mq($){let Q=$.uint16();if(Q===1){let Z=$.uint16(),K=$.uint16Array(Z);return _9.format1(K)}if(Q===2){let Z=$.uint16(),K=Array(Z);for(let J=0;J<Z;J++)K[J]={startGlyphId:$.uint16(),endGlyphId:$.uint16(),startCoverageIndex:$.uint16()};return _9.format2(K)}throw Error(`Unknown Coverage format: ${Q}`)}function i($,Q){return Mq($.sliceFrom(Q))}function Rq($){return"deltaSetOuterIndex"in $}function f8($,Q){if(Q===0)return null;return wN($.sliceFrom(Q))}function wN($){let Q=$.uint16(),Z=$.uint16(),K=$.uint16();if(K===32768)return{deltaSetOuterIndex:Q,deltaSetInnerIndex:Z};let J=[];if(K>=1&&K<=3){let q=Z-Q+1,U=1<<K,W=16/U,H=(1<<U)-1,_=1<<U-1,N=Math.ceil(q/W),V=0;for(let X=0;X<N;X++){let j=$.uint16();for(let z=0;z<W&&V<q;z++,V++){let G=16-U*(z+1),Y=j>>G&H;if(Y&_)Y=Y-(1<<U);J.push(Y)}}}return{startSize:Q,endSize:Z,deltaFormat:K,deltaValues:J}}function Tq($,Q){if(Q<$.startSize||Q>$.endSize)return 0;let Z=Q-$.startSize;return $.deltaValues[Z]??0}function AN($,Q,Z){if(!$)return Q;if(Rq($))return Q;return Q+Tq($,Z)}var b6={RightToLeft:1,IgnoreBaseGlyphs:2,IgnoreLigatures:4,IgnoreMarks:8,UseMarkFilteringSet:16,MarkAttachmentTypeMask:65280};function s0($){return($&b6.MarkAttachmentTypeMask)>>8}function s9($){let Q=$.uint16(),Z=[];for(let J=0;J<Q;J++)Z.push({tag:$.tag(),offset:$.offset16()});let K=[];for(let J=0;J<Z.length;J++){let q=Z[J],U=$.sliceFrom(q.offset),W=FN(U);K.push({scriptTag:q.tag,script:W})}return{scripts:K}}function FN($){let Q=$.offset16(),Z=$.uint16(),K=[];for(let U=0;U<Z;U++)K.push({tag:$.tag(),offset:$.offset16()});let J=null;if(Q!==0)J=Oq($.sliceFrom(Q));let q=[];for(let U=0;U<K.length;U++){let W=K[U],H=Oq($.sliceFrom(W.offset));q.push({langSysTag:W.tag,langSys:H})}return{defaultLangSys:J,langSysRecords:q}}function Oq($){let Q=$.offset16(),Z=$.uint16(),K=$.uint16(),J=$.uint16Array(K),q=Array(K);for(let U=0;U<K;U++)q[U]=J[U];return{requiredFeatureIndex:Z,featureIndices:q}}function a9($){let Q=$.uint16(),Z=[];for(let J=0;J<Q;J++)Z.push({tag:$.tag(),offset:$.offset16()});let K=[];for(let J=0;J<Z.length;J++){let q=Z[J],U=$.sliceFrom(q.offset),W=LN(U);K.push({featureTag:q.tag,feature:W})}return{features:K}}function LN($){let Q=$.offset16(),Z=$.uint16(),K=$.uint16Array(Z),J=Array(Z);for(let q=0;q<Z;q++)J[q]=K[q];return{featureParamsOffset:Q,lookupListIndices:J}}function DN($){let Q=$.uint16(),Z=$.uint16Array(Q),K=[];for(let J=0;J<Z.length;J++){let q=Z[J],U=$.sliceFrom(q);K.push(BN(U))}return K}function BN($){let Q=$.uint16(),Z=$.uint16(),K=$.uint16(),J=$.uint16Array(K),q=Array(K);for(let W=0;W<K;W++)q[W]=J[W];let U;if(Z&b6.UseMarkFilteringSet)U=$.uint16();return{lookupType:Q,lookupFlag:Z,subtableOffsets:q,markFilteringSet:U}}function r9($,Q){for(let Z=0;Z<$.scripts.length;Z++){let K=$.scripts[Z];if(K.scriptTag===Q)return K.script}return null}function $$($,Q){if(Q===null)return $.defaultLangSys;for(let Z=0;Z<$.langSysRecords.length;Z++){let K=$.langSysRecords[Z];if(K.langSysTag===Q)return K.langSys}return $.defaultLangSys}function a0($,Q){return $.features[Q]??null}class _6{mask0=0;mask1=0;mask2=0;add($){this.mask0|=1<<($&31),this.mask1|=1<<($>>4&31),this.mask2|=1<<($>>9&31)}addRange($,Q){if(Q-$<32)for(let Z=$;Z<=Q;Z++)this.add(Z);else this.mask0=4294967295,this.mask1=4294967295,this.mask2=4294967295}mayHave($){return(this.mask0&1<<($&31))!==0&&(this.mask1&1<<($>>4&31))!==0&&(this.mask2&1<<($>>9&31))!==0}addCoverage($){let Q=$.glyphs();for(let Z=0;Z<Q.length;Z++){let K=Q[Z];this.add(K)}}mayIntersect($){return(this.mask0&$.mask0)!==0&&(this.mask1&$.mask1)!==0&&(this.mask2&$.mask2)!==0}getMasks(){return{mask0:this.mask0,mask1:this.mask1,mask2:this.mask2}}}function MN($){let Q=new _6;for(let Z=0;Z<$.length;Z++){let K=$[Z];Q.addCoverage(K)}return Q}function Q$($,Q){let Z=[];for(let K=0;K<Q.length;K++){let J=Q[K],q=$.sliceFrom(J);switch(q.uint16()){case 1:Z.push(RN(q));break;case 2:Z.push(TN(q));break;case 3:Z.push(ON(q));break}}return Z}function RN($){let Q=$.offset16(),Z=$.uint16(),K=$.uint16Array(Z),J=i($,Q),q=[];for(let U=0;U<K.length;U++){let W=K[U];if(W===0){q.push(null);continue}let H=$.sliceFrom(W),_=H.uint16(),N=H.uint16Array(_),V=[];for(let X=0;X<N.length;X++){let j=N[X],z=H.sliceFrom(j),G=z.uint16(),Y=z.uint16(),E=z.uint16Array(G-1),w=Array(E.length);for(let A=0;A<E.length;A++)w[A]=E[A];let F=N9(z,Y);V.push({glyphCount:G,inputSequence:w,lookupRecords:F})}q.push(V)}return{format:1,coverage:J,ruleSets:q}}function TN($){let Q=$.offset16(),Z=$.offset16(),K=$.uint16(),J=$.uint16Array(K),q=i($,Q),U=M6($,Z),W=[];for(let H=0;H<J.length;H++){let _=J[H];if(_===0){W.push(null);continue}let N=$.sliceFrom(_),V=N.uint16(),X=N.uint16Array(V),j=[];for(let z=0;z<X.length;z++){let G=X[z],Y=N.sliceFrom(G),E=Y.uint16(),w=Y.uint16(),F=Y.uint16Array(E-1),A=Array(F.length);for(let L=0;L<F.length;L++)A[L]=F[L];let B=N9(Y,w);j.push({glyphCount:E,inputClasses:A,lookupRecords:B})}W.push(j)}return{format:2,coverage:q,classDef:U,classRuleSets:W}}function ON($){let Q=$.uint16(),Z=$.uint16(),K=$.uint16Array(Q),J=[];for(let U=0;U<K.length;U++){let W=K[U];J.push(i($,W))}let q=N9($,Z);return{format:3,coverages:J,lookupRecords:q}}function Z$($,Q){let Z=[];for(let K=0;K<Q.length;K++){let J=Q[K],q=$.sliceFrom(J);switch(q.uint16()){case 1:Z.push(PN(q));break;case 2:Z.push(vN(q));break;case 3:Z.push(IN(q));break}}return Z}function PN($){let Q=$.offset16(),Z=$.uint16(),K=$.uint16Array(Z),J=i($,Q),q=[];for(let U=0;U<K.length;U++){let W=K[U];if(W===0){q.push(null);continue}let H=$.sliceFrom(W),_=H.uint16(),N=H.uint16Array(_),V=[];for(let X=0;X<N.length;X++){let j=N[X],z=H.sliceFrom(j),G=z.uint16(),Y=z.uint16Array(G),E=Array(Y.length);for(let T=0;T<Y.length;T++)E[T]=Y[T];let w=z.uint16(),F=z.uint16Array(w-1),A=Array(F.length);for(let T=0;T<F.length;T++)A[T]=F[T];let B=z.uint16(),L=z.uint16Array(B),O=Array(L.length);for(let T=0;T<L.length;T++)O[T]=L[T];let M=z.uint16(),P=N9(z,M);V.push({backtrackSequence:E,inputSequence:A,lookaheadSequence:O,lookupRecords:P})}q.push(V)}return{format:1,coverage:J,chainRuleSets:q}}function vN($){let Q=$.offset16(),Z=$.offset16(),K=$.offset16(),J=$.offset16(),q=$.uint16(),U=$.uint16Array(q),W=i($,Q),H=M6($,Z),_=M6($,K),N=M6($,J),V=[];for(let X=0;X<U.length;X++){let j=U[X];if(j===0){V.push(null);continue}let z=$.sliceFrom(j),G=z.uint16(),Y=z.uint16Array(G),E=[];for(let w=0;w<Y.length;w++){let F=Y[w],A=z.sliceFrom(F),B=A.uint16(),L=A.uint16Array(B),O=Array(L.length);for(let R=0;R<L.length;R++)O[R]=L[R];let M=A.uint16(),P=A.uint16Array(M-1),T=Array(P.length);for(let R=0;R<P.length;R++)T[R]=P[R];let x=A.uint16(),I=A.uint16Array(x),f=Array(I.length);for(let R=0;R<I.length;R++)f[R]=I[R];let l=A.uint16(),C=N9(A,l);E.push({backtrackClasses:O,inputClasses:T,lookaheadClasses:f,lookupRecords:C})}V.push(E)}return{format:2,coverage:W,backtrackClassDef:H,inputClassDef:_,lookaheadClassDef:N,chainClassRuleSets:V}}function IN($){let Q=$.uint16(),Z=$.uint16Array(Q),K=$.uint16(),J=$.uint16Array(K),q=$.uint16(),U=$.uint16Array(q),W=$.uint16(),H=N9($,W),_=[];for(let X=0;X<Z.length;X++){let j=Z[X];_.push(i($,j))}let N=[];for(let X=0;X<J.length;X++){let j=J[X];N.push(i($,j))}let V=[];for(let X=0;X<U.length;X++){let j=U[X];V.push(i($,j))}return{format:3,backtrackCoverages:_,inputCoverages:N,lookaheadCoverages:V,lookupRecords:H}}function N9($,Q){let Z=[];for(let K=0;K<Q;K++)Z.push({sequenceIndex:$.uint16(),lookupListIndex:$.uint16()});return Z}function Pq($){let Q=$.uint16(),Z=$.int16(),K=$.int16(),J={xCoordinate:Z,yCoordinate:K};if(Q===2)J.anchorPoint=$.uint16();else if(Q===3)J.xDeviceOffset=$.uint16(),J.yDeviceOffset=$.uint16();return J}function t9($,Q){if(Q===0)return null;return Pq($.sliceFrom(Q))}function K$($){let Q=$.uint16(),Z=[],K=[];for(let J=0;J<Q;J++)K.push({markClass:$.uint16(),anchorOffset:$.uint16()});for(let J=0;J<K.length;J++){let q=K[J],U=Pq($.sliceFrom(q.anchorOffset));Z.push({markClass:q.markClass,markAnchor:U})}return{markRecords:Z}}function J$($,Q){let Z=[];for(let K=0;K<Q.length;K++){let J=Q[K],q=$.sliceFrom(J);if(q.uint16()===1){let W=q.offset16(),H=q.uint16(),_=[];for(let X=0;X<H;X++)_.push({entryOffset:q.uint16(),exitOffset:q.uint16()});let N=i(q,W),V=[];for(let X=0;X<_.length;X++){let j=_[X];V.push({entryAnchor:t9(q,j.entryOffset),exitAnchor:t9(q,j.exitOffset)})}Z.push({coverage:N,entryExitRecords:V})}}return Z}function q$($,Q){let Z=[];for(let K=0;K<Q.length;K++){let J=Q[K],q=$.sliceFrom(J);if(q.uint16()===1){let W=q.offset16(),H=q.offset16(),_=q.uint16(),N=q.offset16(),V=q.offset16(),X=i(q,W),j=i(q,H),z=K$(q.sliceFrom(N)),G=q.sliceFrom(V),Y=G.uint16(),E=[],w=[];for(let F=0;F<Y;F++){let A=[];for(let B=0;B<_;B++)A.push(G.uint16());w.push(A)}for(let F=0;F<w.length;F++){let A=w[F],B=[];for(let L=0;L<A.length;L++){let O=A[L];B.push(t9(G,O))}E.push({baseAnchors:B})}Z.push({markCoverage:X,baseCoverage:j,markClassCount:_,markArray:z,baseArray:E})}}return Z}function U$($,Q){let Z=[];for(let K=0;K<Q.length;K++){let J=Q[K],q=$.sliceFrom(J);if(q.uint16()===1){let W=q.offset16(),H=q.offset16(),_=q.uint16(),N=q.offset16(),V=q.offset16(),X=i(q,W),j=i(q,H),z=K$(q.sliceFrom(N)),G=q.sliceFrom(V),Y=G.uint16(),E=G.uint16Array(Y),w=[];for(let F=0;F<E.length;F++){let A=E[F],B=G.sliceFrom(A),L=B.uint16(),O=[],M=[];for(let P=0;P<L;P++){let T=[];for(let x=0;x<_;x++)T.push(B.uint16());M.push(T)}for(let P=0;P<M.length;P++){let T=M[P],x=[];for(let I=0;I<T.length;I++){let f=T[I];x.push(t9(B,f))}O.push({ligatureAnchors:x})}w.push({componentRecords:O})}Z.push({markCoverage:X,ligatureCoverage:j,markClassCount:_,markArray:z,ligatureArray:w})}}return Z}function W$($,Q){let Z=[];for(let K=0;K<Q.length;K++){let J=Q[K],q=$.sliceFrom(J);if(q.uint16()===1){let W=q.offset16(),H=q.offset16(),_=q.uint16(),N=q.offset16(),V=q.offset16(),X=i(q,W),j=i(q,H),z=K$(q.sliceFrom(N)),G=q.sliceFrom(V),Y=G.uint16(),E=[],w=[];for(let F=0;F<Y;F++){let A=[];for(let B=0;B<_;B++)A.push(G.uint16());w.push(A)}for(let F=0;F<w.length;F++){let A=w[F],B=[];for(let L=0;L<A.length;L++){let O=A[L];B.push(t9(G,O))}E.push({mark2Anchors:B})}Z.push({mark1Coverage:X,mark2Coverage:j,markClassCount:_,mark1Array:z,mark2Array:E})}}return Z}var D8={XPlacement:1,YPlacement:2,XAdvance:4,YAdvance:8,XPlaDevice:16,YPlaDevice:32,XAdvDevice:64,YAdvDevice:128};function vq($){let Q=$.uint16(),Z=$.uint16(),K=$.offset16(),J=$.offset16(),q=$.offset16();if(Q===1&&Z>=1)$.offset32();let U=s9($.sliceFrom(K)),W=a9($.sliceFrom(J)),H=$.sliceFrom(q),_=H.uint16(),N=H.uint16Array(_),V=[];for(let X=0;X<N.length;X++){let j=N[X],z=H.sliceFrom(j),G=kN(z);if(G)V.push(G)}return{version:{major:Q,minor:Z},scriptList:U,featureList:W,lookups:V}}function kN($){let Q=$.uint16(),Z=$.uint16(),K=$.uint16(),J=$.uint16Array(K),q=Array(J.length);for(let N=0;N<J.length;N++)q[N]=J[N];let U;if(Z&b6.UseMarkFilteringSet)U=$.uint16();let W={flag:Z,markFilteringSet:U},H=(N)=>{let V=new _6;for(let X=0;X<N.length;X++){let j=N[X];V.addCoverage(j.coverage)}return V},_=(N)=>{let V=new _6;for(let X=0;X<N.length;X++){let j=N[X];V.addCoverage(j.markCoverage)}return V};switch(Q){case 1:{let N=Iq($,q);return{type:1,...W,subtables:N,digest:H(N)}}case 2:{let N=kq($,q);return{type:2,...W,subtables:N,digest:H(N)}}case 3:{let N=J$($,q);return{type:3,...W,subtables:N,digest:H(N)}}case 4:{let N=q$($,q);return{type:4,...W,subtables:N,digest:_(N)}}case 5:{let N=U$($,q);return{type:5,...W,subtables:N,digest:_(N)}}case 6:{let N=W$($,q),V=new _6;for(let X=0;X<N.length;X++){let j=N[X];V.addCoverage(j.mark1Coverage)}return{type:6,...W,subtables:N,digest:V}}case 7:{let N=Q$($,q),V=new _6;for(let X=0;X<N.length;X++){let j=N[X];if("coverage"in j&&j.coverage)V.addCoverage(j.coverage)}return{type:7,...W,subtables:N,digest:V}}case 8:{let N=Z$($,q),V=new _6;for(let X=0;X<N.length;X++){let j=N[X];if("coverage"in j&&j.coverage)V.addCoverage(j.coverage);else if("inputCoverages"in j&&j.inputCoverages?.[0])V.addCoverage(j.inputCoverages[0])}return{type:8,...W,subtables:N,digest:V}}case 9:return hN($,q,W);default:return null}}function V9($,Q,Z){let K={};if(Q&D8.XPlacement)K.xPlacement=$.int16();if(Q&D8.YPlacement)K.yPlacement=$.int16();if(Q&D8.XAdvance)K.xAdvance=$.int16();if(Q&D8.YAdvance)K.yAdvance=$.int16();let J=Z??$;if(Q&D8.XPlaDevice){let q=$.uint16();if(q!==0)K.xPlaDevice=f8(J,q)??void 0}if(Q&D8.YPlaDevice){let q=$.uint16();if(q!==0)K.yPlaDevice=f8(J,q)??void 0}if(Q&D8.XAdvDevice){let q=$.uint16();if(q!==0)K.xAdvDevice=f8(J,q)??void 0}if(Q&D8.YAdvDevice){let q=$.uint16();if(q!==0)K.yAdvDevice=f8(J,q)??void 0}return K}function Iq($,Q){let Z=[];for(let K=0;K<Q.length;K++){let J=Q[K],q=$.sliceFrom(J),U=$.sliceFrom(J),W=U.uint16();if(W===1){let H=U.offset16(),_=U.uint16(),N=V9(U,_,q),V=i(q,H);Z.push({format:1,coverage:V,valueFormat:_,value:N})}else if(W===2){let H=U.offset16(),_=U.uint16(),N=U.uint16(),V=[];for(let j=0;j<N;j++)V.push(V9(U,_,q));let X=i(q,H);Z.push({format:2,coverage:X,valueFormat:_,values:V})}}return Z}function kq($,Q){let Z=[];for(let K=0;K<Q.length;K++){let J=Q[K],q=$.sliceFrom(J),U=$.sliceFrom(J),W=U.uint16();if(W===1)Z.push(CN(U,q));else if(W===2)Z.push(SN(U,q))}return Z}function CN($,Q){let Z=$.offset16(),K=$.uint16(),J=$.uint16(),q=$.uint16(),U=$.uint16Array(q),W=i(Q,Z),H=[];for(let _=0;_<U.length;_++){let N=U[_],V=Q.sliceFrom(N),X=Q.sliceFrom(N),j=X.uint16(),z=[];for(let G=0;G<j;G++){let Y=X.uint16(),E=V9(X,K,V),w=V9(X,J,V);z.push({secondGlyph:Y,value1:E,value2:w})}H.push({pairValueRecords:z})}return{format:1,coverage:W,valueFormat1:K,valueFormat2:J,pairSets:H}}function SN($,Q){let Z=$.offset16(),K=$.uint16(),J=$.uint16(),q=$.offset16(),U=$.offset16(),W=$.uint16(),H=$.uint16(),_=i(Q,Z),N=M6(Q,q),V=M6(Q,U),X=[];for(let j=0;j<W;j++){let z=[];for(let G=0;G<H;G++){let Y=V9($,K,Q),E=V9($,J,Q);z.push({value1:Y,value2:E})}X.push({class2Records:z})}return{format:2,coverage:_,valueFormat1:K,valueFormat2:J,classDef1:N,classDef2:V,class1Count:W,class2Count:H,class1Records:X}}function hN($,Q,Z){if(Q.length===0)return null;let K=[];for(let W=0;W<Q.length;W++){let H=Q[W],_=$.sliceFrom(H);if(_.uint16()!==1)continue;let V=_.uint16(),X=_.uint32();K.push({type:V,reader:_.sliceFrom(X)})}if(K.length===0)return null;let J=K[0]?.type,q=(W)=>{let H=new _6;for(let _=0;_<W.length;_++){let N=W[_];H.addCoverage(N.coverage)}return H},U=(W)=>{let H=new _6;for(let _=0;_<W.length;_++){let N=W[_];H.addCoverage(N.markCoverage)}return H};switch(J){case 1:{let W=[];for(let H=0;H<K.length;H++){let _=K[H];W.push(...Iq(_.reader,[0]))}return{type:1,...Z,subtables:W,digest:q(W)}}case 2:{let W=[];for(let H=0;H<K.length;H++){let _=K[H];W.push(...kq(_.reader,[0]))}return{type:2,...Z,subtables:W,digest:q(W)}}case 3:{let W=[];for(let H=0;H<K.length;H++){let _=K[H];W.push(...J$(_.reader,[0]))}return{type:3,...Z,subtables:W,digest:q(W)}}case 4:{let W=[];for(let H=0;H<K.length;H++){let _=K[H];W.push(...q$(_.reader,[0]))}return{type:4,...Z,subtables:W,digest:U(W)}}case 5:{let W=[];for(let H=0;H<K.length;H++){let _=K[H];W.push(...U$(_.reader,[0]))}return{type:5,...Z,subtables:W,digest:U(W)}}case 6:{let W=[];for(let _=0;_<K.length;_++){let N=K[_];W.push(...W$(N.reader,[0]))}let H=new _6;for(let _=0;_<W.length;_++){let N=W[_];H.addCoverage(N.mark1Coverage)}return{type:6,...Z,subtables:W,digest:H}}case 7:{let W=[];for(let _=0;_<K.length;_++){let N=K[_];W.push(...Q$(N.reader,[0]))}let H=new _6;for(let _=0;_<W.length;_++){let N=W[_];if("coverage"in N&&N.coverage)H.addCoverage(N.coverage)}return{type:7,...Z,subtables:W,digest:H}}case 8:{let W=[];for(let _=0;_<K.length;_++){let N=K[_];W.push(...Z$(N.reader,[0]))}let H=new _6;for(let _=0;_<W.length;_++){let N=W[_];if("coverage"in N&&N.coverage)H.addCoverage(N.coverage);else if("inputCoverages"in N&&N.inputCoverages?.[0])H.addCoverage(N.inputCoverages[0])}return{type:8,...Z,subtables:W,digest:H}}default:return null}}function yN($,Q){let Z=0,K=$.length-1;while(Z<=K){let J=Z+K>>>1,q=$[J],U=q.secondGlyph;if(U<Q)Z=J+1;else if(U>Q)K=J-1;else return q}return null}function H$($,Q,Z,K,J){for(let q=0;q<$.subtables.length;q++){let U=$.subtables[q],W=U.coverage.get(Q);if(W===null)continue;if(U.format===1){let H=U.pairSets[W];if(!H)continue;let _=yN(H.pairValueRecords,Z);if(_){let N=_.value1.xAdvance,V=_.value2.xAdvance;if(N)K.xAdvance+=N;if(V)J.xAdvance+=V;return!0}}else if(U.format===2){let H=U.classDef1.get(Q),_=U.class1Records;if(H>=_.length)continue;let N=_[H],V=U.classDef2.get(Z),X=N.class2Records;if(V>=X.length)continue;let j=X[V],z=j.value1.xAdvance,G=j.value2.xAdvance;if(z)K.xAdvance+=z;if(G)J.xAdvance+=G;return!0}}return!1}function _$($,Q){let Z=[];for(let K=0;K<Q.length;K++){let J=Q[K],q=$.sliceFrom(J);switch(q.uint16()){case 1:Z.push(bN(q));break;case 2:Z.push(mN(q));break;case 3:Z.push(gN(q));break}}return Z}function bN($){let Q=$.offset16(),Z=$.uint16(),K=$.uint16Array(Z),J=i($,Q),q=[];for(let U=0;U<K.length;U++){let W=K[U];if(W===0){q.push(null);continue}let H=$.sliceFrom(W),_=H.uint16(),N=H.uint16Array(_),V=[];for(let X=0;X<N.length;X++){let j=N[X],z=H.sliceFrom(j),G=z.uint16(),Y=z.uint16(),E=z.uint16Array(G-1),w=Array(E.length);for(let A=0;A<E.length;A++)w[A]=E[A];let F=X9(z,Y);V.push({glyphCount:G,inputSequence:w,lookupRecords:F})}q.push(V)}return{format:1,coverage:J,ruleSets:q}}function mN($){let Q=$.offset16(),Z=$.offset16(),K=$.uint16(),J=$.uint16Array(K),q=i($,Q),U=M6($,Z),W=[];for(let H=0;H<J.length;H++){let _=J[H];if(_===0){W.push(null);continue}let N=$.sliceFrom(_),V=N.uint16(),X=N.uint16Array(V),j=[];for(let z=0;z<X.length;z++){let G=X[z],Y=N.sliceFrom(G),E=Y.uint16(),w=Y.uint16(),F=Y.uint16Array(E-1),A=Array(F.length);for(let L=0;L<F.length;L++)A[L]=F[L];let B=X9(Y,w);j.push({glyphCount:E,inputClasses:A,lookupRecords:B})}W.push(j)}return{format:2,coverage:q,classDef:U,classRuleSets:W}}function gN($){let Q=$.uint16(),Z=$.uint16(),K=$.uint16Array(Q),J=[];for(let U=0;U<K.length;U++){let W=K[U];J.push(i($,W))}let q=X9($,Z);return{format:3,coverages:J,lookupRecords:q}}function N$($,Q){let Z=[];for(let K=0;K<Q.length;K++){let J=Q[K],q=$.sliceFrom(J);switch(q.uint16()){case 1:Z.push(uN(q));break;case 2:Z.push(xN(q));break;case 3:Z.push(fN(q));break}}return Z}function uN($){let Q=$.offset16(),Z=$.uint16(),K=$.uint16Array(Z),J=i($,Q),q=[];for(let U=0;U<K.length;U++){let W=K[U];if(W===0){q.push(null);continue}let H=$.sliceFrom(W),_=H.uint16(),N=H.uint16Array(_),V=[];for(let X=0;X<N.length;X++){let j=N[X],z=H.sliceFrom(j),G=z.uint16(),Y=z.uint16Array(G),E=Array(Y.length);for(let T=0;T<Y.length;T++)E[T]=Y[T];let w=z.uint16(),F=z.uint16Array(w-1),A=Array(F.length);for(let T=0;T<F.length;T++)A[T]=F[T];let B=z.uint16(),L=z.uint16Array(B),O=Array(L.length);for(let T=0;T<L.length;T++)O[T]=L[T];let M=z.uint16(),P=X9(z,M);V.push({backtrackSequence:E,inputSequence:A,lookaheadSequence:O,lookupRecords:P})}q.push(V)}return{format:1,coverage:J,chainRuleSets:q}}function xN($){let Q=$.offset16(),Z=$.offset16(),K=$.offset16(),J=$.offset16(),q=$.uint16(),U=$.uint16Array(q),W=i($,Q),H=M6($,Z),_=M6($,K),N=M6($,J),V=[];for(let X=0;X<U.length;X++){let j=U[X];if(j===0){V.push(null);continue}let z=$.sliceFrom(j),G=z.uint16(),Y=z.uint16Array(G),E=[];for(let w=0;w<Y.length;w++){let F=Y[w],A=z.sliceFrom(F),B=A.uint16(),L=A.uint16Array(B),O=Array(L.length);for(let R=0;R<L.length;R++)O[R]=L[R];let M=A.uint16(),P=A.uint16Array(M-1),T=Array(P.length);for(let R=0;R<P.length;R++)T[R]=P[R];let x=A.uint16(),I=A.uint16Array(x),f=Array(I.length);for(let R=0;R<I.length;R++)f[R]=I[R];let l=A.uint16(),C=X9(A,l);E.push({backtrackClasses:O,inputClasses:T,lookaheadClasses:f,lookupRecords:C})}V.push(E)}return{format:2,coverage:W,backtrackClassDef:H,inputClassDef:_,lookaheadClassDef:N,chainClassRuleSets:V}}function fN($){let Q=$.uint16(),Z=$.uint16Array(Q),K=$.uint16(),J=$.uint16Array(K),q=$.uint16(),U=$.uint16Array(q),W=$.uint16(),H=X9($,W),_=[];for(let X=0;X<Z.length;X++){let j=Z[X];_.push(i($,j))}let N=[];for(let X=0;X<J.length;X++){let j=J[X];N.push(i($,j))}let V=[];for(let X=0;X<U.length;X++){let j=U[X];V.push(i($,j))}return{format:3,backtrackCoverages:_,inputCoverages:N,lookaheadCoverages:V,lookupRecords:H}}function X9($,Q){let Z=[];for(let K=0;K<Q;K++)Z.push({sequenceIndex:$.uint16(),lookupListIndex:$.uint16()});return Z}function Cq($){let Q=$.uint16(),Z=$.uint16(),K=$.offset16(),J=$.offset16(),q=$.offset16();if(Q===1&&Z>=1)$.offset32();let U=s9($.sliceFrom(K)),W=a9($.sliceFrom(J)),H=$.sliceFrom(q),_=H.uint16(),N=H.uint16Array(_),V=[];for(let X=0;X<N.length;X++){let j=N[X],z=H.sliceFrom(j),G=lN(z,H,j);if(G)V.push(G)}return{version:{major:Q,minor:Z},scriptList:U,featureList:W,lookups:V}}function lN($,Q,Z){let K=$.uint16(),J=$.uint16(),q=$.uint16(),U=$.uint16Array(q),W=Array(U.length);for(let V=0;V<U.length;V++)W[V]=U[V];let H;if(J&b6.UseMarkFilteringSet)H=$.uint16();let _={flag:J,markFilteringSet:H},N=(V)=>{let X=new _6;for(let j=0;j<V.length;j++){let z=V[j];X.addCoverage(z.coverage)}return X};switch(K){case 1:{let V=Sq($,W);return{type:1,..._,subtables:V,digest:N(V)}}case 2:{let V=hq($,W);return{type:2,..._,subtables:V,digest:N(V)}}case 3:{let V=yq($,W);return{type:3,..._,subtables:V,digest:N(V)}}case 4:{let V=bq($,W);return{type:4,..._,subtables:V,digest:N(V)}}case 5:{let V=_$($,W),X=new _6;for(let j=0;j<V.length;j++){let z=V[j];if("coverage"in z&&z.coverage)X.addCoverage(z.coverage)}return{type:5,..._,subtables:V,digest:X}}case 6:{let V=N$($,W),X=new _6;for(let j=0;j<V.length;j++){let z=V[j];if("coverage"in z&&z.coverage)X.addCoverage(z.coverage);else if("inputCoverages"in z&&z.inputCoverages?.[0])X.addCoverage(z.inputCoverages[0])}return{type:6,..._,subtables:V,digest:X}}case 7:return dN($,W,_);case 8:{let V=mq($,W);return{type:8,..._,subtables:V,digest:N(V)}}default:return null}}function Sq($,Q){let Z=[];for(let K=0;K<Q.length;K++){let J=Q[K],q=$.sliceFrom(J),U=q.uint16();if(U===1){let W=q.offset16(),H=q.int16(),_=i(q,W);Z.push({format:1,coverage:_,deltaGlyphId:H})}else if(U===2){let W=q.offset16(),H=q.uint16(),_=q.uint16Array(H),N=Array(_.length);for(let X=0;X<_.length;X++)N[X]=_[X];let V=i(q,W);Z.push({format:2,coverage:V,substituteGlyphIds:N})}}return Z}function hq($,Q){let Z=[];for(let K=0;K<Q.length;K++){let J=Q[K],q=$.sliceFrom(J);if(q.uint16()===1){let W=q.offset16(),H=q.uint16(),_=q.uint16Array(H),N=i(q,W),V=[];for(let X=0;X<_.length;X++){let j=_[X],z=q.sliceFrom(j),G=z.uint16(),Y=z.uint16Array(G),E=Array(Y.length);for(let w=0;w<Y.length;w++)E[w]=Y[w];V.push(E)}Z.push({coverage:N,sequences:V})}}return Z}function yq($,Q){let Z=[];for(let K=0;K<Q.length;K++){let J=Q[K],q=$.sliceFrom(J);if(q.uint16()===1){let W=q.offset16(),H=q.uint16(),_=q.uint16Array(H),N=i(q,W),V=[];for(let X=0;X<_.length;X++){let j=_[X],z=q.sliceFrom(j),G=z.uint16(),Y=z.uint16Array(G),E=Array(Y.length);for(let w=0;w<Y.length;w++)E[w]=Y[w];V.push(E)}Z.push({coverage:N,alternateSets:V})}}return Z}function bq($,Q){let Z=[];for(let K=0;K<Q.length;K++){let J=Q[K],q=$.sliceFrom(J);if(q.uint16()===1){let W=q.offset16(),H=q.uint16(),_=q.uint16Array(H),N=i(q,W),V=[];for(let X=0;X<_.length;X++){let j=_[X],z=q.sliceFrom(j),G=z.uint16(),Y=z.uint16Array(G),E=[];for(let w=0;w<Y.length;w++){let F=Y[w],A=z.sliceFrom(F),B=A.uint16(),L=A.uint16(),O=A.uint16Array(L-1),M=Array(O.length);for(let P=0;P<O.length;P++)M[P]=O[P];E.push({ligatureGlyph:B,componentGlyphIds:M})}V.push({ligatures:E})}Z.push({coverage:N,ligatureSets:V})}}return Z}function mq($,Q){let Z=[];for(let K=0;K<Q.length;K++){let J=Q[K],q=$.sliceFrom(J);if(q.uint16()===1){let W=q.offset16(),H=q.uint16(),_=q.uint16Array(H),N=q.uint16(),V=q.uint16Array(N),X=q.uint16(),j=q.uint16Array(X),z=Array(j.length);for(let w=0;w<j.length;w++)z[w]=j[w];let G=i(q,W),Y=[];for(let w=0;w<_.length;w++){let F=_[w];Y.push(i(q,F))}let E=[];for(let w=0;w<V.length;w++){let F=V[w];E.push(i(q,F))}Z.push({coverage:G,backtrackCoverages:Y,lookaheadCoverages:E,substituteGlyphIds:z})}}return Z}function dN($,Q,Z){if(Q.length===0)return null;let K=[];for(let W=0;W<Q.length;W++){let H=Q[W],_=$.sliceFrom(H);if(_.uint16()!==1)continue;let V=_.uint16(),X=_.uint32();K.push({type:V,reader:_.sliceFrom(X)})}if(K.length===0)return null;let J=K[0]?.type,q=K.map((W,H)=>0),U=(W)=>{let H=new _6;for(let _=0;_<W.length;_++){let N=W[_];H.addCoverage(N.coverage)}return H};switch(J){case 1:{let W=[];for(let H=0;H<K.length;H++){let _=K[H];W.push(...Sq(_.reader,[0]))}return{type:1,...Z,subtables:W,digest:U(W)}}case 2:{let W=[];for(let H=0;H<K.length;H++){let _=K[H];W.push(...hq(_.reader,[0]))}return{type:2,...Z,subtables:W,digest:U(W)}}case 3:{let W=[];for(let H=0;H<K.length;H++){let _=K[H];W.push(...yq(_.reader,[0]))}return{type:3,...Z,subtables:W,digest:U(W)}}case 4:{let W=[];for(let H=0;H<K.length;H++){let _=K[H];W.push(...bq(_.reader,[0]))}return{type:4,...Z,subtables:W,digest:U(W)}}case 5:{let W=[];for(let _=0;_<K.length;_++){let N=K[_];W.push(..._$(N.reader,[0]))}let H=new _6;for(let _=0;_<W.length;_++){let N=W[_];if("coverage"in N&&N.coverage)H.addCoverage(N.coverage)}return{type:5,...Z,subtables:W,digest:H}}case 6:{let W=[];for(let _=0;_<K.length;_++){let N=K[_];W.push(...N$(N.reader,[0]))}let H=new _6;for(let _=0;_<W.length;_++){let N=W[_];if("coverage"in N&&N.coverage)H.addCoverage(N.coverage);else if("inputCoverages"in N&&N.inputCoverages?.[0])H.addCoverage(N.inputCoverages[0])}return{type:6,...Z,subtables:W,digest:H}}case 8:{let W=[];for(let H=0;H<K.length;H++){let _=K[H];W.push(...mq(_.reader,[0]))}return{type:8,...Z,subtables:W,digest:U(W)}}default:return null}}function e9($,Q){for(let Z=0;Z<$.subtables.length;Z++){let K=$.subtables[Z],J=K.coverage.get(Q);if(J===null)continue;if(K.format===1&&K.deltaGlyphId!==void 0)return Q+K.deltaGlyphId&65535;if(K.format===2&&K.substituteGlyphIds)return K.substituteGlyphIds[J]??null}return null}function gq($,Q,Z,K){let J=Q[K];if(J===void 0)return null;for(let q=0;q<$.subtables.length;q++){let U=$.subtables[q],W=U.coverage.get(J);if(W===null)continue;let H=U.ligatureSets[W];if(!H)continue;for(let _=0;_<H.ligatures.length;_++){let N=H.ligatures[_],V=N.componentGlyphIds.length;if(K+1+V>Z)continue;let X=!0;for(let j=0;j<V;j++)if(Q[K+1+j]!==N.componentGlyphIds[j]){X=!1;break}if(X)return{ligatureGlyph:N.ligatureGlyph,consumed:1+V}}}return null}function uq($){let Q=$.uint16(),Z=$.uint16(),K=$.fixed(),J=$.uint32(),q=$.uint32();if(q!==1594834165)throw Error(`Invalid head table magic number: 0x${q.toString(16)}`);let U=$.uint16(),W=$.uint16(),H=$.longDateTime(),_=$.longDateTime(),N=$.fword(),V=$.fword(),X=$.fword(),j=$.fword(),z=$.uint16(),G=$.uint16(),Y=$.int16(),E=$.int16(),w=$.int16();return{majorVersion:Q,minorVersion:Z,fontRevision:K,checksumAdjustment:J,magicNumber:q,flags:U,unitsPerEm:W,created:H,modified:_,xMin:N,yMin:V,xMax:X,yMax:j,macStyle:z,lowestRecPPEM:G,fontDirectionHint:Y,indexToLocFormat:E,glyphDataFormat:w}}function xq($){return{majorVersion:$.uint16(),minorVersion:$.uint16(),ascender:$.fword(),descender:$.fword(),lineGap:$.fword(),advanceWidthMax:$.ufword(),minLeftSideBearing:$.fword(),minRightSideBearing:$.fword(),xMaxExtent:$.fword(),caretSlopeRise:$.int16(),caretSlopeRun:$.int16(),caretOffset:$.int16(),reserved1:$.int16(),reserved2:$.int16(),reserved3:$.int16(),reserved4:$.int16(),metricDataFormat:$.int16(),numberOfHMetrics:$.uint16()}}function V$($){return{instructions:$.bytes($.remaining)}}function X$($){return{instructions:$.bytes($.remaining)}}function j$($){let Q=Math.floor($.remaining/2),Z=new Int16Array(Q);for(let K=0;K<Q;K++)Z[K]=$.int16();return{values:Z}}function fq($,Q,Z){let K=Array(Q);for(let U=0;U<Q;U++)K[U]={advanceWidth:$.ufword(),lsb:$.fword()};let J=Z-Q,q=Array(J);for(let U=0;U<J;U++)q[U]=$.fword();return{hMetrics:K,leftSideBearings:q}}function lq($,Q){if(Q<$.hMetrics.length)return $.hMetrics[Q]?.advanceWidth;return $.hMetrics[$.hMetrics.length-1]?.advanceWidth}function dq($,Q){if(Q<$.hMetrics.length)return $.hMetrics[Q]?.lsb;let Z=Q-$.hMetrics.length;return $.leftSideBearings[Z]??0}var nN={ShrinkGpos:0,DisableGpos:1,ShrinkGsub:2,DisableGsub:3,EnableGpos:4,EnableGsub:5,MaxExtendGpos:6,MaxExtendGsub:7};function B8($,Q){if(Q===0)return null;let Z=$.sliceFrom(Q),K=Z.uint16(),J=[];for(let q=0;q<K;q++)J.push(Z.uint16());return{lookupIndices:J}}function nq($,Q){if(Q===0)return null;let Z=$.sliceFrom(Q),K=Z.uint16(),J=[];for(let q=0;q<K;q++)J.push(Z.uint16());return{lookupIndices:J}}function pN($,Q){let Z=$.sliceFrom(Q),K=Z.uint16(),J=Z.uint16(),q=Z.uint16(),U=Z.uint16(),W=Z.uint16(),H=Z.uint16(),_=Z.uint16(),N=Z.uint16(),V=Z.uint16(),X=Z.uint16();return{shrinkageEnableGsub:B8($,Q+K),shrinkageDisableGsub:B8($,Q+J),shrinkageEnableGpos:B8($,Q+q),shrinkageDisableGpos:B8($,Q+U),shrinkageJstfMax:nq($,Q+W),extensionEnableGsub:B8($,Q+H),extensionDisableGsub:B8($,Q+_),extensionEnableGpos:B8($,Q+N),extensionDisableGpos:B8($,Q+V),extensionJstfMax:nq($,Q+X)}}function pq($,Q){let Z=$.sliceFrom(Q),K=Z.uint16(),J=[];for(let U=0;U<K;U++)J.push(Z.uint16());let q=[];for(let U=0;U<J.length;U++){let W=J[U];q.push(pN($,Q+W))}return{priorities:q}}function oN($,Q){let Z=$.sliceFrom(Q),K=Z.uint16(),J=Z.uint16(),q=Z.uint16(),U=[];for(let N=0;N<q;N++){let V=Z.uint32(),X=Z.uint16();U.push({tag:V,offset:X})}let W=[];if(K!==0){let N=$.sliceFrom(Q+K),V=N.uint16();for(let X=0;X<V;X++)W.push(N.uint16())}let H=J!==0?pq($,Q+J):null,_=new Map;for(let N=0;N<U.length;N++){let{tag:V,offset:X}=U[N];_.set(V,pq($,Q+X))}return{extenderGlyphs:W,defaultLangSys:H,langSysRecords:_}}function z$($){let Q=$.uint16(),Z=$.uint16(),K=$.uint16(),J=[];for(let U=0;U<K;U++){let W=$.uint32(),H=$.uint16();J.push({tag:W,offset:H})}let q=[];for(let U=0;U<J.length;U++){let{tag:W,offset:H}=J[U],_=oN($,H);q.push({scriptTag:W,..._})}return{majorVersion:Q,minorVersion:Z,scripts:q}}function G$($,Q){return $.scripts.find((K)=>K.scriptTag===Q)?.extenderGlyphs??[]}function Y$($,Q,Z){let K=$.scripts.find((J)=>J.scriptTag===Q);if(!K)return[];if(Z!==void 0){let J=K.langSysRecords.get(Z);if(J)return J.priorities}return K.defaultLangSys?.priorities??[]}function E$($){return{enableGsub:$.shrinkageEnableGsub?.lookupIndices??[],disableGsub:$.shrinkageDisableGsub?.lookupIndices??[],enableGpos:$.shrinkageEnableGpos?.lookupIndices??[],disableGpos:$.shrinkageDisableGpos?.lookupIndices??[],maxLookups:$.shrinkageJstfMax?.lookupIndices??[]}}function w$($){return{enableGsub:$.extensionEnableGsub?.lookupIndices??[],disableGsub:$.extensionDisableGsub?.lookupIndices??[],enableGpos:$.extensionEnableGpos?.lookupIndices??[],disableGpos:$.extensionDisableGpos?.lookupIndices??[],maxLookups:$.extensionJstfMax?.lookupIndices??[]}}function oq($){let Q=$.uint16(),Z=[];if(Q===0){let K=$.uint16();for(let J=0;J<K;J++){let q=cN($);if(q)Z.push(q)}}else if(Q===1){$.skip(2);let K=$.uint32();for(let J=0;J<K;J++){let q=iN($);if(q)Z.push(q)}}return{version:Q,subtables:Z}}function cN($){let Q=$.uint16(),Z=$.uint16(),K=$.uint16(),J={horizontal:(K&1)!==0,minimum:(K&2)!==0,crossStream:(K&4)!==0,override:(K&8)!==0},q=K>>8&255;if(q===0)return cq($,J);else if(q===2)return iq($,J,Z-6);return $.skip(Z-6),null}function iN($){let Q=$.uint32(),Z=$.uint16(),K=$.uint16(),J={horizontal:(Z&32768)===0,minimum:!1,crossStream:(Z&16384)!==0,override:(Z&8192)!==0},q=Z&255;if(q===0)return cq($,J);else if(q===2)return iq($,J,Q-8);return $.skip(Q-8),null}function cq($,Q){let Z=$.uint16();$.skip(6);let K=new Map;for(let J=0;J<Z;J++){let q=$.uint16(),U=$.uint16(),W=$.int16(),H=q<<16|U;K.set(H,W)}return{format:0,coverage:Q,pairs:K}}function iq($,Q,Z){let K=$.offset,J=$.uint16(),q=$.uint16(),U=$.uint16(),W=$.uint16(),H=new Map;$.seek(K+q);let _=$.uint16(),N=$.uint16();for(let E=0;E<N;E++){let w=$.uint16();if(w!==0)H.set(_+E,w)}let V=new Map;$.seek(K+U);let X=$.uint16(),j=$.uint16();for(let E=0;E<j;E++){let w=$.uint16();if(w!==0)V.set(X+E,w)}$.seek(K+W);let z=J>0?Math.floor(Z/J):0,G=J/2,Y=[];for(let E=0;E<z;E++){let w=[];for(let F=0;F<G;F++)w.push($.int16());Y.push(w)}return{format:2,coverage:Q,rowWidth:J,leftClassTable:H,rightClassTable:V,kerningValues:Y}}function A$($,Q,Z){let K=0;for(let J=0;J<$.subtables.length;J++){let q=$.subtables[J];if(!q.coverage.horizontal)continue;if(q.format===0){let U=Q<<16|Z,W=q.pairs.get(U);if(W!==void 0)if(q.coverage.override)K=W;else K+=W}else if(q.format===2){let U=q.leftClassTable.get(Q)??0,W=q.rightClassTable.get(Z)??0;if(U>0&&W>0){let H=Math.floor(U/2),_=Math.floor(W/2),N=q.kerningValues[H];if(N){let V=N[_];if(V!==void 0)if(q.coverage.override)K=V;else K+=V}}}}return K}function aq($){let Q=$.uint16();$.skip(2);let Z=$.uint32(),K=[];for(let J=0;J<Z;J++){let q=sN($);if(q)K.push(q)}return{version:Q,nTables:Z,subtables:K}}function sN($){let Q=$.uint32(),Z=$.uint32(),K=$.uint16();$.skip(2);let J=Z&255,q={vertical:(Z&2147483648)!==0,crossStream:(Z&1073741824)!==0,variation:(Z&536870912)!==0},U={length:Q,coverage:q,tupleCount:K},W=$.offset+Q-12,H=null;switch(J){case 0:H=aN($,U);break;case 1:H=rN($,U);break;case 2:H=tN($,U);break;case 6:H=eN($,U);break}return $.seek(W),H}function aN($,Q){let Z=$.uint32();$.skip(12);let K=[];for(let J=0;J<Z;J++)K.push({left:$.uint16(),right:$.uint16(),value:$.int16()}),$.skip(2);return{...Q,format:0,nPairs:Z,pairs:K}}function rN($,Q){let Z={nClasses:$.uint32(),classTableOffset:$.offset32(),stateArrayOffset:$.offset32(),entryTableOffset:$.offset32(),valueTableOffset:$.offset32()};return{...Q,format:1,stateHeader:Z}}function tN($,Q){let Z=$.uint16();$.skip(2);let K=$.offset32(),J=$.offset32(),q=$.offset32(),U=sq($.sliceFrom(K)),W=sq($.sliceFrom(J)),H=$.sliceFrom(q),_=U.nGlyphs>0?Math.max(...[...U.classes])+1:0,N=Z/2,V=new Int16Array(_*N);for(let X=0;X<V.length;X++)V[X]=H.int16();return{...Q,format:2,rowWidth:Z,leftClassTable:U,rightClassTable:W,kerningArray:V}}function sq($){let Q=$.uint16(),Z=$.uint16(),K=new Uint8Array(Z);for(let J=0;J<Z;J++)K[J]=$.uint8();return{firstGlyph:Q,nGlyphs:Z,classes:K}}function eN($,Q){let Z=$.uint32(),K=$.uint16(),J=$.uint16(),q=$.offset32(),U=$.offset32(),W=$.offset32(),H=$.offset32();return{...Q,format:6,flags:Z,rowCount:K,columnCount:J,rowIndexTableOffset:q,columnIndexTableOffset:U,kerningArrayOffset:W,kerningVectorOffset:H}}function $V($,Q,Z){for(let K=0;K<$.subtables.length;K++){let J=$.subtables[K];if(J.coverage.vertical)continue;switch(J.format){case 0:{let q=J.pairs,U=0,W=q.length-1;while(U<=W){let H=U+W>>1,_=q[H];if(!_)break;let N=_.left<<16|_.right,V=Q<<16|Z;if(N===V)return _.value;else if(N<V)U=H+1;else W=H-1}break}case 2:{let{leftClassTable:q,rightClassTable:U}=J;if(Q<q.firstGlyph||Q>=q.firstGlyph+q.nGlyphs)continue;if(Z<U.firstGlyph||Z>=U.firstGlyph+U.nGlyphs)continue;let W=q.classes[Q-q.firstGlyph],H=U.classes[Z-U.firstGlyph];if(W===void 0||H===void 0)continue;let _=J.rowWidth/2,N=W*_+H;if(N<J.kerningArray.length){let V=J.kerningArray[N];if(V!==void 0&&V!==0)return V}break}}}return 0}function o($,Q){let Z=$.int16(),K=$.uint16();return{value:Z,device:f8(Q,K)}}function QV($){let Q=$,Z=$.int16(),K=$.int16(),J=$.uint16(),q=$.uint16();return{scriptPercentScaleDown:Z,scriptScriptPercentScaleDown:K,delimitedSubFormulaMinHeight:J,displayOperatorMinHeight:q,mathLeading:o($,Q),axisHeight:o($,Q),accentBaseHeight:o($,Q),flattenedAccentBaseHeight:o($,Q),subscriptShiftDown:o($,Q),subscriptTopMax:o($,Q),subscriptBaselineDropMin:o($,Q),superscriptShiftUp:o($,Q),superscriptShiftUpCramped:o($,Q),superscriptBottomMin:o($,Q),superscriptBaselineDropMax:o($,Q),subSuperscriptGapMin:o($,Q),superscriptBottomMaxWithSubscript:o($,Q),spaceAfterScript:o($,Q),upperLimitGapMin:o($,Q),upperLimitBaselineRiseMin:o($,Q),lowerLimitGapMin:o($,Q),lowerLimitBaselineDropMin:o($,Q),stackTopShiftUp:o($,Q),stackTopDisplayStyleShiftUp:o($,Q),stackBottomShiftDown:o($,Q),stackBottomDisplayStyleShiftDown:o($,Q),stackGapMin:o($,Q),stackDisplayStyleGapMin:o($,Q),stretchStackTopShiftUp:o($,Q),stretchStackBottomShiftDown:o($,Q),stretchStackGapAboveMin:o($,Q),stretchStackGapBelowMin:o($,Q),fractionNumeratorShiftUp:o($,Q),fractionNumeratorDisplayStyleShiftUp:o($,Q),fractionDenominatorShiftDown:o($,Q),fractionDenominatorDisplayStyleShiftDown:o($,Q),fractionNumeratorGapMin:o($,Q),fractionNumDisplayStyleGapMin:o($,Q),fractionRuleThickness:o($,Q),fractionDenominatorGapMin:o($,Q),fractionDenomDisplayStyleGapMin:o($,Q),skewedFractionHorizontalGap:o($,Q),skewedFractionVerticalGap:o($,Q),overbarVerticalGap:o($,Q),overbarRuleThickness:o($,Q),overbarExtraAscender:o($,Q),underbarVerticalGap:o($,Q),underbarRuleThickness:o($,Q),underbarExtraDescender:o($,Q),radicalVerticalGap:o($,Q),radicalDisplayStyleVerticalGap:o($,Q),radicalRuleThickness:o($,Q),radicalExtraAscender:o($,Q),radicalKernBeforeDegree:o($,Q),radicalKernAfterDegree:o($,Q),radicalDegreeBottomRaisePercent:$.int16()}}function ZV($){let Q=$.uint16(),Z=$.uint16(),K=[];for(let q=0;q<Z;q++)K.push(o($,$));return{coverage:i($,Q),values:K}}function KV($){let Q=$.uint16(),Z=$.uint16(),K=[];for(let q=0;q<Z;q++)K.push(o($,$));return{coverage:i($,Q),values:K}}function r0($,Q){let Z=$.sliceFrom(Q),K=Z.uint16(),J=[];for(let U=0;U<K;U++)J.push(o(Z,Z));let q=[];for(let U=0;U<K+1;U++)q.push(o(Z,Z));return{correctionHeights:J,kernValues:q}}function JV($){let Q=$.uint16(),Z=$.uint16(),K=[];for(let U=0;U<Z;U++)K.push({topRightOffset:$.uint16(),topLeftOffset:$.uint16(),bottomRightOffset:$.uint16(),bottomLeftOffset:$.uint16()});let J=i($,Q),q=K.map((U)=>({topRight:U.topRightOffset!==0?r0($,U.topRightOffset):null,topLeft:U.topLeftOffset!==0?r0($,U.topLeftOffset):null,bottomRight:U.bottomRightOffset!==0?r0($,U.bottomRightOffset):null,bottomLeft:U.bottomLeftOffset!==0?r0($,U.bottomLeftOffset):null}));return{coverage:J,kernInfo:q}}function qV($){let Q=$.uint16(),Z=$.uint16(),K=$.uint16(),J=$.uint16(),q=null;if(Q!==0)q=ZV($.sliceFrom(Q));let U=null;if(Z!==0)U=KV($.sliceFrom(Z));let W=null;if(K!==0)W={coverage:i($,K)};let H=null;if(J!==0)H=JV($.sliceFrom(J));return{italicsCorrection:q,topAccentAttachment:U,extendedShapeCoverage:W,kernInfo:H}}function UV($){let Q=o($,$),Z=$.uint16(),K=[];for(let J=0;J<Z;J++)K.push({glyphId:$.uint16(),startConnectorLength:$.uint16(),endConnectorLength:$.uint16(),fullAdvance:$.uint16(),partFlags:$.uint16()});return{italicsCorrection:Q,parts:K}}function rq($){let Q=$.uint16(),Z=$.uint16(),K=[];for(let q=0;q<Z;q++)K.push({variantGlyph:$.uint16(),advanceMeasurement:$.uint16()});let J=null;if(Q!==0)J=UV($.sliceFrom(Q));return{glyphAssembly:J,variants:K}}function WV($){let Q=$.uint16(),Z=$.uint16(),K=$.uint16(),J=$.uint16(),q=$.uint16(),U=[];for(let X=0;X<J;X++)U.push($.uint16());let W=[];for(let X=0;X<q;X++)W.push($.uint16());let H=Z!==0?i($,Z):null,_=K!==0?i($,K):null,N=U.map((X)=>rq($.sliceFrom(X))),V=W.map((X)=>rq($.sliceFrom(X)));return{minConnectorOverlap:Q,vertGlyphCoverage:H,horizGlyphCoverage:_,vertGlyphConstruction:N,horizGlyphConstruction:V}}function F$($){let Q=$.uint16(),Z=$.uint16(),K=$.uint16(),J=$.uint16(),q=$.uint16(),U=null;if(K!==0)U=QV($.sliceFrom(K));let W=null;if(J!==0)W=qV($.sliceFrom(J));let H=null;if(q!==0)H=WV($.sliceFrom(q));return{majorVersion:Q,minorVersion:Z,constants:U,glyphInfo:W,variants:H}}function HV($,Q){let Z=$.glyphInfo?.italicsCorrection;if(!Z)return null;let K=Z.coverage.get(Q);if(K===null)return null;return Z.values[K]??null}function _V($,Q){let Z=$.glyphInfo?.topAccentAttachment;if(!Z)return null;let K=Z.coverage.get(Q);if(K===null)return null;return Z.values[K]??null}function NV($,Q){let Z=$.glyphInfo?.extendedShapeCoverage;if(!Z)return!1;return Z.coverage.get(Q)!==null}function VV($,Q){let Z=$.variants;if(!Z?.vertGlyphCoverage)return null;let K=Z.vertGlyphCoverage.get(Q);if(K===null)return null;return Z.vertGlyphConstruction[K]?.variants??null}function XV($,Q){let Z=$.variants;if(!Z?.horizGlyphCoverage)return null;let K=Z.horizGlyphCoverage.get(Q);if(K===null)return null;return Z.horizGlyphConstruction[K]?.variants??null}function jV($,Q){let Z=$.variants;if(!Z?.vertGlyphCoverage)return null;let K=Z.vertGlyphCoverage.get(Q);if(K===null)return null;return Z.vertGlyphConstruction[K]?.glyphAssembly??null}function zV($,Q){let Z=$.variants;if(!Z?.horizGlyphCoverage)return null;let K=Z.horizGlyphCoverage.get(Q);if(K===null)return null;return Z.horizGlyphConstruction[K]?.glyphAssembly??null}function tq($){let Q=$.uint32(),Z=$.uint16();if(Q===20480)return{version:Q,numGlyphs:Z};if(Q===65536)return{version:Q,numGlyphs:Z,maxPoints:$.uint16(),maxContours:$.uint16(),maxCompositePoints:$.uint16(),maxCompositeContours:$.uint16(),maxZones:$.uint16(),maxTwilightPoints:$.uint16(),maxStorage:$.uint16(),maxFunctionDefs:$.uint16(),maxInstructionDefs:$.uint16(),maxStackElements:$.uint16(),maxSizeOfInstructions:$.uint16(),maxComponentElements:$.uint16(),maxComponentDepth:$.uint16()};throw Error(`Unknown maxp version: 0x${Q.toString(16)}`)}var L$;((q)=>{q[q.Rearrangement=0]="Rearrangement";q[q.Contextual=1]="Contextual";q[q.Ligature=2]="Ligature";q[q.NonContextual=4]="NonContextual";q[q.Insertion=5]="Insertion"})(L$||={});function eq($){let Q=$.uint16();if($.skip(2),Q<2)return{version:Q,chains:[]};let Z=$.uint32(),K=[];for(let J=0;J<Z;J++){let q=GV($);K.push(q)}return{version:Q,chains:K}}function GV($){let Q=$.uint32(),Z=$.uint32(),K=$.uint32(),J=$.uint32(),q=[];for(let W=0;W<K;W++)q.push({featureType:$.uint16(),featureSetting:$.uint16(),enableFlags:$.uint32(),disableFlags:$.uint32()});let U=[];for(let W=0;W<J;W++){let H=YV($);if(H)U.push(H)}return{defaultFlags:Q,features:q,subtables:U}}function YV($){let Q=$.uint32(),Z=$.uint32(),K=$.uint32(),J=Z&255,q={vertical:(Z&2147483648)!==0,descending:(Z&1073741824)!==0,logical:(Z&268435456)!==0},W=$.offset+Q-12,H=null;switch(J){case 0:H=FV($,q,K);break;case 1:H=wV($,q,K);break;case 2:H=AV($,q,K);break;case 4:H=EV($,q,K);break;case 5:H=LV($,q,K);break}return $.seek(W),H}function EV($,Q,Z){let K=DV($);return{type:4,coverage:Q,subFeatureFlags:Z,lookupTable:K}}function wV($,Q,Z){let K=$.offset,J=$.uint32(),q=$.offset32(),U=$.offset32(),W=$.offset32(),H=$.offset32(),_=t0($.sliceFrom(K+q));return{type:1,coverage:Q,subFeatureFlags:Z,stateTable:{nClasses:J,classTable:_,stateArray:[]},substitutionTable:[]}}function AV($,Q,Z){let K=$.offset,J=$.uint32(),q=$.offset32(),U=$.offset32(),W=$.offset32(),H=$.offset32(),_=$.offset32(),N=$.offset32(),V=t0($.sliceFrom(K+q));return{type:2,coverage:Q,subFeatureFlags:Z,stateTable:{nClasses:J,classTable:V,stateArray:[]},ligatureActions:[],components:[],ligatures:[]}}function FV($,Q,Z){let K=$.offset,J=$.uint32(),q=$.offset32(),U=$.offset32(),W=$.offset32(),H=t0($.sliceFrom(K+q)),_=$.sliceFrom(K+U),N=$.sliceFrom(K+W),V=[],X=256;for(let G=0;G<256;G++)V.push({newState:N.uint16(),flags:N.uint16()});let j=[],z=Math.min(256,Math.ceil((W-U)/(J*2)));for(let G=0;G<z;G++){let Y=[];for(let E=0;E<J;E++){let w=_.uint16();Y.push(V[w]??{newState:0,flags:0})}j.push(Y)}return{type:0,coverage:Q,subFeatureFlags:Z,stateTable:{nClasses:J,classTable:H,stateArray:j}}}function LV($,Q,Z){let K=$.offset,J=$.uint32(),q=$.offset32(),U=$.offset32(),W=$.offset32(),H=$.offset32(),_=t0($.sliceFrom(K+q)),N=$.sliceFrom(K+H),V=[],X=1024;for(let F=0;F<1024;F++)try{V.push(N.uint16())}catch{break}let j=$.sliceFrom(K+W),z=[],G=256;for(let F=0;F<G;F++)z.push({newState:j.uint16(),flags:j.uint16(),currentInsertIndex:j.uint16(),markedInsertIndex:j.uint16()});let Y=$.sliceFrom(K+U),E=[],w=Math.min(256,Math.ceil((W-U)/(J*2)));for(let F=0;F<w;F++){let A=[];for(let B=0;B<J;B++){let L=Y.uint16();A.push(z[L]??{newState:0,flags:0,currentInsertIndex:65535,markedInsertIndex:65535})}E.push(A)}return{type:5,coverage:Q,subFeatureFlags:Z,stateTable:{nClasses:J,classTable:_,stateArray:E},insertionGlyphs:V}}function DV($){let Q=$.uint16(),Z=new Map;switch(Q){case 0:break;case 2:{let K=$.uint16(),J=$.uint16();$.skip(6);for(let q=0;q<J;q++){let U=$.uint16(),W=$.uint16(),H=$.uint16();for(let _=W;_<=U;_++)Z.set(_,H)}break}case 4:{let K=$.uint16(),J=$.uint16();$.skip(6);for(let q=0;q<J;q++){let U=$.uint16(),W=$.uint16(),H=$.uint16()}break}case 6:{let K=$.uint16(),J=$.uint16();$.skip(6);for(let q=0;q<J;q++){let U=$.uint16(),W=$.uint16();Z.set(U,W)}break}case 8:{let K=$.uint16(),J=$.uint16();for(let q=0;q<J;q++){let U=$.uint16();if(U!==0)Z.set(K+q,U)}break}}return{format:Q,mapping:Z}}function t0($){let Q=$.uint16(),Z=[];if(Q===2){let K=$.uint16(),J=$.uint16();$.skip(6);let q=[];for(let W=0;W<J;W++)q.push({last:$.uint16(),first:$.uint16(),classValue:$.uint16()});let U=Math.max(...q.map((W)=>W.last),0);for(let W=0;W<=U;W++){let H=q.find((_)=>W>=_.first&&W<=_.last);Z[W]=H?.classValue??1}}return{format:Q,classArray:Z}}function D$($,Q){return $.lookupTable.mapping.get(Q)??null}var $0={hasc:k("hasc"),hdsc:k("hdsc"),hlgp:k("hlgp"),hcla:k("hcla"),hcld:k("hcld"),hcof:k("hcof"),hcrn:k("hcrn"),hcrs:k("hcrs"),vasc:k("vasc"),vdsc:k("vdsc"),vlgp:k("vlgp"),vcof:k("vcof"),vcrn:k("vcrn"),vcrs:k("vcrs"),xhgt:k("xhgt"),cpht:k("cpht"),sbxs:k("sbxs"),sbys:k("sbys"),sbxo:k("sbxo"),sbyo:k("sbyo"),spxs:k("spxs"),spys:k("spys"),spxo:k("spxo"),spyo:k("spyo"),strs:k("strs"),stro:k("stro"),undo:k("undo"),unds:k("unds"),gsp0:k("gsp0"),gsp1:k("gsp1"),gsp2:k("gsp2"),gsp3:k("gsp3")};function $U($){let Q=$.uint16(),Z=$.uint16();$.uint16();let K=$.uint16(),J=$.uint16(),q=$.offset16(),U=[];for(let H=0;H<J;H++)if(U.push({valueTag:$.tag(),deltaSetOuterIndex:$.uint16(),deltaSetInnerIndex:$.uint16()}),K>8)$.skip(K-8);let W=BV($.sliceFrom(q));return{majorVersion:Q,minorVersion:Z,itemVariationStore:W,valueRecords:U}}function BV($){let Q=$.uint16(),Z=$.offset32(),K=$.uint16(),J=[];for(let N=0;N<K;N++)J.push($.offset32());let q=$.sliceFrom(Z),U=q.uint16(),W=q.uint16(),H=[];for(let N=0;N<W;N++){let V=[];for(let X=0;X<U;X++)V.push({startCoord:q.f2dot14(),peakCoord:q.f2dot14(),endCoord:q.f2dot14()});H.push({regionAxes:V})}let _=[];for(let N=0;N<J.length;N++){let V=J[N],X=$.sliceFrom(V),j=X.uint16(),z=X.uint16(),G=X.uint16(),Y=[];for(let B=0;B<G;B++)Y.push(X.uint16());let E=(z&32768)!==0,w=z&32767,F=G-w,A=[];for(let B=0;B<j;B++){let L=[];for(let O=0;O<w;O++)if(E)L.push(X.int32());else L.push(X.int16());for(let O=0;O<F;O++)if(E)L.push(X.int16());else L.push(X.int8());A.push(L)}_.push({itemCount:j,regionIndexes:Y,deltaSets:A})}return{format:Q,variationRegions:H,itemVariationData:_}}function Q0($,Q,Z){let K=$.valueRecords.find((_)=>_.valueTag===Q);if(!K)return 0;let{deltaSetOuterIndex:J,deltaSetInnerIndex:q}=K,U=$.itemVariationStore.itemVariationData[J];if(!U||q>=U.itemCount)return 0;let W=U.deltaSets[q];if(!W)return 0;let H=0;for(let _=0;_<U.regionIndexes.length;_++){let N=U.regionIndexes[_],V=$.itemVariationStore.variationRegions[N];if(!V)continue;let X=n9(V,Z),j=W[_]??0;H+=X*j}return Math.round(H)}function MV($,Q){return Q0($,$0.hasc,Q)}function RV($,Q){return Q0($,$0.hdsc,Q)}function TV($,Q){return Q0($,$0.xhgt,Q)}function OV($,Q){return Q0($,$0.cpht,Q)}var M8={Copyright:0,FontFamily:1,FontSubfamily:2,UniqueID:3,FullName:4,Version:5,PostScriptName:6,Trademark:7,Manufacturer:8,Designer:9,Description:10,ManufacturerURL:11,DesignerURL:12,License:13,LicenseURL:14,Reserved:15,TypographicFamily:16,TypographicSubfamily:17,CompatibleFullName:18,SampleText:19,PostScriptCIDFindfontName:20,WWSFamily:21,WWSSubfamily:22,LightBackgroundPalette:23,DarkBackgroundPalette:24,VariationsPostScriptNamePrefix:25},j9={Unicode:0,Macintosh:1,Reserved:2,Windows:3},PV={Symbol:0,UnicodeBMP:1,ShiftJIS:2,PRC:3,Big5:4,Wansung:5,Johab:6,UnicodeFullRepertoire:10};function B$($){let Q=$.uint16(),Z=$.uint16(),K=$.uint16(),J=[],q=[];for(let U=0;U<Z;U++)q.push({platformId:$.uint16(),encodingId:$.uint16(),languageId:$.uint16(),nameId:$.uint16(),length:$.uint16(),offset:$.uint16()});for(let U=0;U<q.length;U++){let W=q[U],H=$.sliceFrom(K+W.offset),_=vV(H,W.length,W.platformId,W.encodingId);if(_!==null)J.push({platformId:W.platformId,encodingId:W.encodingId,languageId:W.languageId,nameId:W.nameId,value:_})}return{format:Q,records:J}}function vV($,Q,Z,K){if(Z===j9.Unicode||Z===j9.Windows&&(K===1||K===10)){let J=[];for(let q=0;q<Q;q+=2){let U=$.uint16();J.push(String.fromCharCode(U))}return J.join("")}if(Z===j9.Macintosh&&K===0){let J=[];for(let q=0;q<Q;q++)J.push($.uint8());return String.fromCharCode(...J)}return null}function R8($,Q,Z){for(let K=0;K<$.records.length;K++){let J=$.records[K];if(J.nameId!==Q)continue;if(J.platformId===j9.Windows&&J.encodingId===1){if(Z===void 0||J.languageId===Z)return J.value}}for(let K=0;K<$.records.length;K++){let J=$.records[K];if(J.nameId!==Q)continue;if(J.platformId===j9.Unicode){if(Z===void 0||J.languageId===Z)return J.value}}for(let K=0;K<$.records.length;K++){let J=$.records[K];if(J.nameId!==Q)continue;if(Z===void 0||J.languageId===Z)return J.value}return null}function IV($){return R8($,M8.TypographicFamily)??R8($,M8.FontFamily)}function kV($){return R8($,M8.TypographicSubfamily)??R8($,M8.FontSubfamily)}function CV($){return R8($,M8.FullName)}function SV($){return R8($,M8.PostScriptName)}function hV($){return R8($,M8.Version)}var yV={Thin:100,ExtraLight:200,Light:300,Normal:400,Medium:500,SemiBold:600,Bold:700,ExtraBold:800,Black:900},bV={UltraCondensed:1,ExtraCondensed:2,Condensed:3,SemiCondensed:4,Normal:5,SemiExpanded:6,Expanded:7,ExtraExpanded:8,UltraExpanded:9},$1={Italic:1,Underscore:2,Negative:4,Outlined:8,Strikeout:16,Bold:32,Regular:64,UseTypoMetrics:128,WWS:256,Oblique:512},e0={InstallableEmbedding:0,RestrictedLicense:2,PreviewAndPrint:4,Editable:8,NoSubsetting:256,BitmapOnly:512};function M$($){let Q=$.uint16(),Z=$.int16(),K=$.uint16(),J=$.uint16(),q=$.uint16(),U=$.int16(),W=$.int16(),H=$.int16(),_=$.int16(),N=$.int16(),V=$.int16(),X=$.int16(),j=$.int16(),z=$.int16(),G=$.int16(),Y=$.int16(),E=[];for(let R=0;R<10;R++)E.push($.uint8());let w=$.uint32(),F=$.uint32(),A=$.uint32(),B=$.uint32(),L=String.fromCharCode($.uint8(),$.uint8(),$.uint8(),$.uint8()),O=$.uint16(),M=$.uint16(),P=$.uint16(),T=$.int16(),x=$.int16(),I=$.int16(),f=$.uint16(),l=$.uint16(),C={version:Q,xAvgCharWidth:Z,usWeightClass:K,usWidthClass:J,fsType:q,ySubscriptXSize:U,ySubscriptYSize:W,ySubscriptXOffset:H,ySubscriptYOffset:_,ySuperscriptXSize:N,ySuperscriptYSize:V,ySuperscriptXOffset:X,ySuperscriptYOffset:j,yStrikeoutSize:z,yStrikeoutPosition:G,sFamilyClass:Y,panose:E,ulUnicodeRange1:w,ulUnicodeRange2:F,ulUnicodeRange3:A,ulUnicodeRange4:B,achVendID:L,fsSelection:O,usFirstCharIndex:M,usLastCharIndex:P,sTypoAscender:T,sTypoDescender:x,sTypoLineGap:I,usWinAscent:f,usWinDescent:l};if(Q>=1)C.ulCodePageRange1=$.uint32(),C.ulCodePageRange2=$.uint32();if(Q>=2)C.sxHeight=$.int16(),C.sCapHeight=$.int16(),C.usDefaultChar=$.uint16(),C.usBreakChar=$.uint16(),C.usMaxContext=$.uint16();if(Q>=5)C.usLowerOpticalPointSize=$.uint16(),C.usUpperOpticalPointSize=$.uint16();return C}function mV($){return($.fsSelection&$1.Italic)!==0}function gV($){return($.fsSelection&$1.Bold)!==0}function uV($){return($.fsSelection&$1.UseTypoMetrics)!==0}function xV($){let Q=$.fsType;if((Q&e0.RestrictedLicense)!==0)return"restricted";if((Q&e0.PreviewAndPrint)!==0)return"preview";if((Q&e0.Editable)!==0)return"editable";return"installable"}var QU=[".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 R$($){let Q=$.uint16(),Z=$.uint16(),K=Q+Z/65536,J=$.fixed(),q=$.int16(),U=$.int16(),W=$.uint32(),H=$.uint32(),_=$.uint32(),N=$.uint32(),V=$.uint32(),X={version:K,italicAngle:J,underlinePosition:q,underlineThickness:U,isFixedPitch:W,minMemType42:H,maxMemType42:_,minMemType1:N,maxMemType1:V};if(K===2){let j=$.uint16(),z=[];for(let w=0;w<j;w++)z.push($.uint16());let G=[],Y=0;for(let w=0;w<z.length;w++){let F=z[w];if(F>=258&&F>Y)Y=F}let E=Y>=258?Y-257:0;for(let w=0;w<E;w++){let F=$.uint8(),A=[];for(let B=0;B<F;B++)A.push(String.fromCharCode($.uint8()));G.push(A.join(""))}X.numberOfGlyphs=j,X.glyphNameIndex=z,X.names=G}return X}function fV($,Q){if($.version===1){let Z=QU[Q];return Z!==void 0?Z:null}if($.version===2&&$.glyphNameIndex){let Z=$.glyphNameIndex[Q];if(Z===void 0)return null;if(Z<258)return QU[Z]??null;let K=Z-258;return $.names?.[K]??null}return null}function lV($){return $.isFixedPitch!==0}var T$={PNG:"png ",JPG:"jpg ",TIFF:"tiff",PDF:"pdf ",MASK:"mask",DUPE:"dupe"};function ZU($,Q){let Z=$.offset,K=$.uint16(),J=$.uint16(),q=$.uint32(),U=[];for(let H=0;H<q;H++)U.push($.uint32());let W=[];for(let H=0;H<U.length;H++){let _=U[H],N=dV($,Z+_,Q);W.push(N)}return{version:K,flags:J,strikes:W}}function dV($,Q,Z){let K=$.sliceFrom(Q),J=K.uint16(),q=K.uint16(),U=[];for(let H=0;H<=Z;H++)U.push(K.uint32());let W=new Map;for(let H=0;H<Z;H++){let _=U[H],N=U[H+1];if(_===void 0||N===void 0)continue;let V=N-_;if(V<=8)continue;let X=$.sliceFrom(Q+_),j=X.int16(),z=X.int16(),G=X.tagString(),Y=V-8,E=X.bytes(Y);W.set(H,{originOffsetX:j,originOffsetY:z,graphicType:G,data:E})}return{ppem:J,ppi:q,glyphData:W}}function nV($,Q,Z){let K=null,J=1/0;for(let q=0;q<$.strikes.length;q++){let U=$.strikes[q],W=Math.abs(U.ppem-Z);if(W<J)J=W,K=U}if(!K)return null;return K.glyphData.get(Q)??null}function KU($,Q){return $.strikes.find((Z)=>Z.ppem===Q)??null}function pV($){return $.strikes.map((Q)=>Q.ppem).sort((Q,Z)=>Q-Z)}function oV($,Q,Z){if(Z!==void 0)return KU($,Z)?.glyphData.has(Q)??!1;for(let K=0;K<$.strikes.length;K++)if($.strikes[K].glyphData.has(Q))return!0;return!1}function JU($,Q,Z){if(Z.graphicType!==T$.DUPE)return Z;if(Z.data.length<2)return null;let K=(Z.data[0]??0)<<8|(Z.data[1]??0),J=Q.glyphData.get(K);if(!J)return null;if(J.graphicType===T$.DUPE)return JU($,Q,J);return J}function O$($){let Q=$.uint32();if(Q!==65536&&Q!==1330926671&&Q!==1953658213)throw Error(`Invalid sfnt version: 0x${Q.toString(16).padStart(8,"0")}`);let Z=$.uint16(),K=$.uint16(),J=$.uint16(),q=$.uint16(),U=new Map;for(let W=0;W<Z;W++){let H=$.tag(),_=$.uint32(),N=$.uint32(),V=$.uint32();U.set(H,{tag:H,checksum:_,offset:N,length:V})}return{sfntVersion:Q,numTables:Z,searchRange:K,entrySelector:J,rangeShift:q,tables:U}}function P$($){return $.sfntVersion===65536||$.sfntVersion===1953658213}function cV($){return $.sfntVersion===1330926671}var v$={OlderSiblingFontAttribute:1,ElidableAxisValueName:2};function qU($){let Q=$.offset,Z=$.uint16(),K=$.uint16(),J=$.uint16(),q=$.uint16(),U=$.offset32(),W=$.uint16(),H=$.offset32(),_;if(Z>=1&&K>=1)_=$.uint16();let N=[];if(U!==0){let X=$.sliceFrom(Q+U);for(let j=0;j<q;j++)if(N.push({axisTag:X.tag(),axisNameID:X.uint16(),axisOrdering:X.uint16()}),J>8)X.skip(J-8)}let V=[];if(H!==0&&W>0){let X=$.sliceFrom(Q+H),j=[];for(let z=0;z<W;z++)j.push(X.uint16());for(let z=0;z<j.length;z++){let G=j[z],Y=$.sliceFrom(Q+H+G),E=iV(Y);if(E)V.push(E)}}return{majorVersion:Z,minorVersion:K,designAxisCount:q,designAxes:N,axisValueCount:W,axisValues:V,elidedFallbackNameID:_}}function iV($){switch($.uint16()){case 1:return{format:1,axisIndex:$.uint16(),flags:$.uint16(),valueNameID:$.uint16(),value:$.fixed()};case 2:return{format:2,axisIndex:$.uint16(),flags:$.uint16(),valueNameID:$.uint16(),nominalValue:$.fixed(),rangeMinValue:$.fixed(),rangeMaxValue:$.fixed()};case 3:return{format:3,axisIndex:$.uint16(),flags:$.uint16(),valueNameID:$.uint16(),value:$.fixed(),linkedValue:$.fixed()};case 4:{let Z=$.uint16(),K=$.uint16(),J=$.uint16(),q=[];for(let U=0;U<Z;U++)q.push({axisIndex:$.uint16(),value:$.fixed()});return{format:4,axisCount:Z,flags:K,valueNameID:J,axisValues:q}}default:return null}}function sV($,Q){return $.designAxes.find((Z)=>Z.axisTag===Q)??null}function aV($,Q){return $.designAxes.findIndex((Z)=>Z.axisTag===Q)}function rV($,Q){return $.axisValues.filter((Z)=>{if(Z.format===4)return Z.axisValues.some((K)=>K.axisIndex===Q);return Z.axisIndex===Q})}function tV($,Q){return $.axisValues.find((Z)=>Z.valueNameID===Q)??null}function eV($){return($.flags&v$.ElidableAxisValueName)!==0}function $X($){return($.flags&v$.OlderSiblingFontAttribute)!==0}function QX($){switch($.format){case 1:case 3:return $.value;case 2:return $.nominalValue;case 4:return null}}function ZX($,Q){switch($.format){case 1:case 3:{let Z=Q.get($.axisIndex);return Z!==void 0&&Z===$.value}case 2:{let Z=Q.get($.axisIndex);return Z!==void 0&&Z>=$.rangeMinValue&&Z<=$.rangeMaxValue}case 4:return $.axisValues.every((Z)=>{let K=Q.get(Z.axisIndex);return K!==void 0&&K===Z.value})}}function UU($){let Q=$.uint16(),Z=$.offset32();$.skip(4);let K=$.sliceFrom(Z),J=K.uint16();if(J===0)return{version:Q,documentRecords:[]};let q=[];for(let H=0;H<J;H++)q.push({startGlyphID:K.uint16(),endGlyphID:K.uint16(),svgDocOffset:K.offset32(),svgDocLength:K.uint32()});let U=[],W=new TextDecoder("utf-8");for(let H=0;H<q.length;H++){let _=q[H],V=K.sliceFrom(_.svgDocOffset).bytes(_.svgDocLength),X;if(V[0]===31&&V[1]===139)try{let j=qX(V);X=W.decode(j)}catch{X=W.decode(V)}else X=W.decode(V);U.push({startGlyphID:_.startGlyphID,endGlyphID:_.endGlyphID,svgDoc:X})}return{version:Q,documentRecords:U}}function WU($,Q){for(let Z=0;Z<$.documentRecords.length;Z++){let K=$.documentRecords[Z];if(Q>=K.startGlyphID&&Q<=K.endGlyphID)return K.svgDoc}return null}function KX($,Q){return WU($,Q)!==null}function JX($){let Q=[];for(let Z=0;Z<$.documentRecords.length;Z++){let K=$.documentRecords[Z];for(let J=K.startGlyphID;J<=K.endGlyphID;J++)Q.push(J)}return Q}function qX($){if(typeof DecompressionStream<"u")return $;return $}function _U($){let Q=$,Z=$.uint32()/65536,K=$.uint16(),J=$.offset16(),q=$.offset16();$.skip(2);let U=null,W=null;if(J!==0)U=HU($.sliceFrom(J),Q);if(q!==0)W=HU($.sliceFrom(q),Q);return{version:Z,format:K,horizData:U,vertData:W}}function HU($,Q){let Z=$.uint16(),K=$.uint16(),J=$.offset32(),q=[];for(let H=0;H<Z;H++){let _=$.int32()/65536,N=$.uint16(),V=$.uint16();q.push({track:_,nameIndex:N,offset:V,perSizeTracking:[]})}for(let H=0;H<q.length;H++){let _=q[H],N=Q.sliceFrom(_.offset);_.perSizeTracking=[];for(let V=0;V<K;V++)_.perSizeTracking.push(N.int16())}let U=Q.sliceFrom(J),W=[];for(let H=0;H<K;H++)W.push(U.int32()/65536);return{nTracks:Z,nSizes:K,sizeTableOffset:J,trackTable:q,sizeTable:W}}function NU($,Q,Z){let K=null;for(let J=0;J<$.trackTable.length;J++){let q=$.trackTable[J];if(q.track===Q){K=q;break}}if(!K){let J=null,q=null;for(let U=0;U<$.trackTable.length;U++){let W=$.trackTable[U];if(W.track<=Q&&(!J||W.track>J.track))J=W;if(W.track>=Q&&(!q||W.track<q.track))q=W}if(J&&q&&J!==q){let U=(Q-J.track)/(q.track-J.track),W=I$($,J,Z),H=I$($,q,Z);return Math.round(W+U*(H-W))}else if(J)K=J;else if(q)K=q;else return 0}if(!K)return 0;return I$($,K,Z)}function I$($,Q,Z){let K=$.sizeTable,J=Q.perSizeTracking;if(K.length===0||J.length===0)return 0;let q=K[0],U=J[0];if(q===void 0||U===void 0)return 0;if(Z<=q)return U;let W=K[K.length-1],H=J[J.length-1];if(W===void 0||H===void 0)return 0;if(Z>=W)return H;for(let _=0;_<K.length-1;_++){let N=K[_],V=K[_+1],X=J[_],j=J[_+1];if(N===void 0||V===void 0||X===void 0||j===void 0)continue;if(Z>=N&&Z<=V){let z=(Z-N)/(V-N);return Math.round(X+z*(j-X))}}return 0}function UX($,Q,Z,K=0,J=!1){let q=J?$.vertData:$.horizData;if(!q)return;let U=NU(q,K,Z);if(U===0)return;for(let W=0;W<Q.length;W++){let H=Q[W];Q[W]=(H??0)+U}}function VU($){let Q=$.uint16(),Z=$.uint16(),K=$.fword(),J=$.fword(),q=$.fword(),U=$.uint16(),W=$.fword(),H=$.fword(),_=$.fword(),N=$.int16(),V=$.int16(),X=$.int16();$.skip(8);let j=$.int16(),z=$.uint16();return{version:{major:Q,minor:Z},ascender:K,descender:J,lineGap:q,advanceHeightMax:U,minTopSideBearing:W,minBottomSideBearing:H,yMaxExtent:_,caretSlopeRise:N,caretSlopeRun:V,caretOffset:X,metricDataFormat:j,numberOfVMetrics:z}}function XU($,Q,Z){let K=[];for(let U=0;U<Q;U++)K.push({advanceHeight:$.uint16(),topSideBearing:$.int16()});let J=[],q=Z-Q;for(let U=0;U<q;U++)J.push($.int16());return{vMetrics:K,topSideBearings:J}}function WX($,Q){if(Q<$.vMetrics.length){let U=$.vMetrics[Q];if(U)return{advanceHeight:U.advanceHeight,topSideBearing:U.topSideBearing}}let K=$.vMetrics[$.vMetrics.length-1]?.advanceHeight??0,J=Q-$.vMetrics.length,q=$.topSideBearings[J]??0;return{advanceHeight:K,topSideBearing:q}}function jU($){let Q=$.uint16(),Z=$.uint16(),K=$.int16(),J=$.uint16(),q=[];for(let U=0;U<J;U++)q.push({glyphIndex:$.uint16(),vertOriginY:$.int16()});return q.sort((U,W)=>U.glyphIndex-W.glyphIndex),{majorVersion:Q,minorVersion:Z,defaultVertOriginY:K,vertOriginYMetrics:q}}function HX($,Q){let Z=$.vertOriginYMetrics,K=0,J=Z.length-1;while(K<=J){let q=K+J>>>1,U=Z[q];if(U===void 0)break;if(U.glyphIndex===Q)return U.vertOriginY;else if(U.glyphIndex<Q)K=q+1;else J=q-1}return $.defaultVertOriginY}function _X($,Q){let Z=$.vertOriginYMetrics,K=0,J=Z.length-1;while(K<=J){let q=K+J>>>1,U=Z[q];if(U===void 0)break;if(U.glyphIndex===Q)return!0;else if(U.glyphIndex<Q)K=q+1;else J=q-1}return!1}function zU($){let Q=$.uint16(),Z=$.uint16(),K=$.offset32(),J=$.offset32(),q=$.offset32(),U=$.offset32(),W=$.offset32(),H=NX($.sliceFrom(K)),_=J!==0?Q1($.sliceFrom(J)):null,N=q!==0?Q1($.sliceFrom(q)):null,V=U!==0?Q1($.sliceFrom(U)):null,X=W!==0?Q1($.sliceFrom(W)):null;return{majorVersion:Q,minorVersion:Z,itemVariationStore:H,advanceHeightMapping:_,tsbMapping:N,bsbMapping:V,vOrgMapping:X}}function NX($){let Q=$.uint16(),Z=$.offset32(),K=$.uint16(),J=[];for(let N=0;N<K;N++)J.push($.offset32());let q=$.sliceFrom(Z),U=q.uint16(),W=q.uint16(),H=[];for(let N=0;N<W;N++){let V=[];for(let X=0;X<U;X++)V.push({startCoord:q.f2dot14(),peakCoord:q.f2dot14(),endCoord:q.f2dot14()});H.push({regionAxes:V})}let _=[];for(let N=0;N<J.length;N++){let V=J[N],X=$.sliceFrom(V),j=X.uint16(),z=X.uint16(),G=X.uint16(),Y=[];for(let B=0;B<G;B++)Y.push(X.uint16());let E=(z&32768)!==0,w=z&32767,F=G-w,A=[];for(let B=0;B<j;B++){let L=[];for(let O=0;O<w;O++)if(E)L.push(X.int32());else L.push(X.int16());for(let O=0;O<F;O++)if(E)L.push(X.int16());else L.push(X.int8());A.push(L)}_.push({itemCount:j,regionIndexes:Y,deltaSets:A})}return{format:Q,variationRegions:H,itemVariationData:_}}function Q1($){let Q=$.uint8(),Z=$.uint8(),K=Q===0?$.uint16():$.uint32(),J=(Z&15)+1,q=(Z>>4&3)+1,U=[];for(let W=0;W<K;W++){let H=0;for(let V=0;V<q;V++)H=H<<8|$.uint8();let _=H&(1<<J)-1,N=H>>J;U.push({outer:N,inner:_})}return{format:Q,mapCount:K,entryFormat:Z,innerIndexBitCount:J,mapData:U}}function VX($,Q,Z){let K=$.advanceHeightMapping,J,q;if(K&&Q<K.mapData.length){let U=K.mapData[Q];if(!U)return 0;J=U.outer,q=U.inner}else J=0,q=Q;return Z1($.itemVariationStore,J,q,Z)}function XX($,Q,Z){let K=$.tsbMapping;if(!K)return 0;if(Q>=K.mapData.length)return 0;let J=K.mapData[Q];if(!J)return 0;return Z1($.itemVariationStore,J.outer,J.inner,Z)}function jX($,Q,Z){let K=$.bsbMapping;if(!K)return 0;if(Q>=K.mapData.length)return 0;let J=K.mapData[Q];if(!J)return 0;return Z1($.itemVariationStore,J.outer,J.inner,Z)}function zX($,Q,Z){let K=$.vOrgMapping;if(!K)return 0;if(Q>=K.mapData.length)return 0;let J=K.mapData[Q];if(!J)return 0;return Z1($.itemVariationStore,J.outer,J.inner,Z)}function Z1($,Q,Z,K){let J=$.itemVariationData[Q];if(!J||Z>=J.itemCount)return 0;let q=J.deltaSets[Z];if(!q)return 0;let U=0;for(let W=0;W<J.regionIndexes.length;W++){let H=J.regionIndexes[W],_=$.variationRegions[H];if(!_)continue;let N=n9(_,K),V=q[W]??0;U+=N*V}return Math.round(U)}var GX=2001684038,YX=2001684018;function GU($){return new DataView($).getUint32(0,!1)===YX}function YU($){return new DataView($).getUint32(0,!1)===GX}class z9{reader;directory;_head=null;_maxp=null;_hhea=null;_hmtx=null;_cmap=null;_gdef=void 0;_gsub=void 0;_gpos=void 0;_kern=void 0;_fvar=void 0;_hvar=void 0;_vhea=void 0;_vmtx=void 0;_morx=void 0;_gvar=void 0;_avar=void 0;_kerx=void 0;_trak=void 0;_cff=void 0;_cff2=void 0;_colr=void 0;_cpal=void 0;_vvar=void 0;_mvar=void 0;_os2=void 0;_name=void 0;_post=void 0;_base=void 0;_jstf=void 0;_math=void 0;_loca=void 0;_glyf=void 0;_svg=void 0;_vorg=void 0;_sbix=void 0;_stat=void 0;_cbdt=void 0;_cblc=void 0;_feat=void 0;_fpgm=void 0;_prep=void 0;_cvt=void 0;_gasp=void 0;constructor($,Q={}){this.reader=new c6($),this.directory=O$(this.reader)}static load($,Q){if(GU($))throw Error("WOFF2 requires async loading. Use Font.loadAsync() instead.");if(YU($))throw Error("WOFF format is not supported. Please use TTF, OTF, or WOFF2.");return new z9($,Q)}static async loadAsync($,Q){if(GU($))$=await fJ($);else if(YU($))throw Error("WOFF format is not supported. Please use TTF, OTF, or WOFF2.");return new z9($,Q)}static async fromURL($,Q){let Z=await fetch($);if(!Z.ok)throw Error(`Failed to fetch font: ${Z.status} ${Z.statusText}`);let K=await Z.arrayBuffer();return z9.loadAsync(K,Q)}static async fromFile($,Q){let K=await Bun.file($).arrayBuffer();return z9.loadAsync(K,Q)}hasTable($){return this.directory.tables.has($)}getTableRecord($){return this.directory.tables.get($)}getTableReader($){let Q=this.directory.tables.get($);if(!Q)return null;return this.reader.slice(Q.offset,Q.length)}get head(){if(!this._head){let $=this.getTableReader(p.head);if(!$)throw Error("Missing required 'head' table");this._head=uq($)}return this._head}get maxp(){if(!this._maxp){let $=this.getTableReader(p.maxp);if(!$)throw Error("Missing required 'maxp' table");this._maxp=tq($)}return this._maxp}get hhea(){if(!this._hhea){let $=this.getTableReader(p.hhea);if(!$)throw Error("Missing required 'hhea' table");this._hhea=xq($)}return this._hhea}get hmtx(){if(!this._hmtx){let $=this.getTableReader(p.hmtx);if(!$)throw Error("Missing required 'hmtx' table");this._hmtx=fq($,this.hhea.numberOfHMetrics,this.numGlyphs)}return this._hmtx}get cmap(){if(!this._cmap){let $=this.getTableRecord(p.cmap),Q=this.getTableReader(p.cmap);if(!Q||!$)throw Error("Missing required 'cmap' table");this._cmap=tJ(Q,$.length)}return this._cmap}get gdef(){if(this._gdef===void 0){let $=this.getTableReader(p.GDEF);this._gdef=$?Bq($):null}return this._gdef}get gsub(){if(this._gsub===void 0){let $=this.getTableReader(p.GSUB);this._gsub=$?Cq($):null}return this._gsub}get gpos(){if(this._gpos===void 0){let $=this.getTableReader(p.GPOS);this._gpos=$?vq($):null}return this._gpos}get kern(){if(this._kern===void 0){let $=this.getTableReader(p.kern);this._kern=$?oq($):null}return this._kern}get fvar(){if(this._fvar===void 0){let $=this.getTableReader(p.fvar);this._fvar=$?AJ($):null}return this._fvar}get hvar(){if(this._hvar===void 0){let $=this.getTableReader(p.HVAR);this._hvar=$?FJ($):null}return this._hvar}get vhea(){if(this._vhea===void 0){let $=this.getTableReader(p.vhea);this._vhea=$?VU($):null}return this._vhea}get vmtx(){if(this._vmtx===void 0){let $=this.vhea;if(!$)this._vmtx=null;else{let Q=this.getTableReader(p.vmtx);this._vmtx=Q?XU(Q,$.numberOfVMetrics,this.numGlyphs):null}}return this._vmtx}get morx(){if(this._morx===void 0){let $=this.getTableReader(p.morx);this._morx=$?eq($):null}return this._morx}get gvar(){if(this._gvar===void 0){let $=this.getTableReader(p.gvar);this._gvar=$?F7($,this.numGlyphs):null}return this._gvar}get avar(){if(this._avar===void 0){let $=this.fvar;if(!$)this._avar=null;else{let Q=this.getTableReader(p.avar);this._avar=Q?EJ(Q,$.axes.length):null}}return this._avar}get kerx(){if(this._kerx===void 0){let $=this.getTableReader(p.kerx);this._kerx=$?aq($):null}return this._kerx}get trak(){if(this._trak===void 0){let $=this.getTableReader(p.trak);this._trak=$?_U($):null}return this._trak}get cff(){if(this._cff===void 0){let $=this.getTableReader(p.CFF);this._cff=$?n5($):null}return this._cff}get cff2(){if(this._cff2===void 0){let $=this.getTableReader(p.CFF2);this._cff2=$?o5($):null}return this._cff2}get colr(){if(this._colr===void 0){let $=this.getTableReader(p.COLR);this._colr=$?s5($):null}return this._colr}get cpal(){if(this._cpal===void 0){let $=this.getTableReader(p.CPAL);this._cpal=$?a5($):null}return this._cpal}get vvar(){if(this._vvar===void 0){let $=this.getTableReader(p.VVAR);this._vvar=$?zU($):null}return this._vvar}get mvar(){if(this._mvar===void 0){let $=this.getTableReader(p.MVAR);this._mvar=$?$U($):null}return this._mvar}get os2(){if(this._os2===void 0){let $=this.getTableReader(p.OS2);this._os2=$?M$($):null}return this._os2}get name(){if(this._name===void 0){let $=this.getTableReader(p.name);this._name=$?B$($):null}return this._name}get post(){if(this._post===void 0){let $=this.getTableReader(p.post);this._post=$?R$($):null}return this._post}get base(){if(this._base===void 0){let $=this.getTableReader(p.BASE);this._base=$?d5($):null}return this._base}get jstf(){if(this._jstf===void 0){let $=this.getTableReader(p.JSTF);this._jstf=$?z$($):null}return this._jstf}get math(){if(this._math===void 0){let $=this.getTableReader(p.MATH);this._math=$?F$($):null}return this._math}get loca(){if(this._loca===void 0){let $=this.getTableReader(p.loca);this._loca=$?L7($,this.numGlyphs,this.head.indexToLocFormat):null}return this._loca}get glyf(){if(this._glyf===void 0){let $=this.getTableReader(p.glyf);this._glyf=$?B7($):null}return this._glyf}get svg(){if(this._svg===void 0){let $=this.getTableReader(p.SVG);this._svg=$?UU($):null}return this._svg}get vorg(){if(this._vorg===void 0){let $=this.getTableReader(p.VORG);this._vorg=$?jU($):null}return this._vorg}get sbix(){if(this._sbix===void 0){let $=this.getTableReader(p.sbix);this._sbix=$?ZU($,this.numGlyphs):null}return this._sbix}get stat(){if(this._stat===void 0){let $=this.getTableReader(p.STAT);this._stat=$?qU($):null}return this._stat}get cblc(){if(this._cblc===void 0){let $=this.getTableReader(p.CBLC);this._cblc=$?pJ($):null}return this._cblc}get cbdt(){if(this._cbdt===void 0){let $=this.getTableReader(p.CBDT);this._cbdt=$?oJ($):null}return this._cbdt}get feat(){if(this._feat===void 0){let $=this.getTableReader(p.feat);this._feat=$?r5($):null}return this._feat}get fpgm(){if(this._fpgm===void 0){let $=this.getTableReader(p.fpgm);this._fpgm=$?V$($):null}return this._fpgm}get prep(){if(this._prep===void 0){let $=this.getTableReader(p.prep);this._prep=$?X$($):null}return this._prep}get cvtTable(){if(this._cvt===void 0){let $=this.getTableReader(p.cvt);this._cvt=$?j$($):null}return this._cvt}get gasp(){if(this._gasp===void 0){let $=this.getTableReader(p.gasp);this._gasp=$?t5($):null}return this._gasp}get numGlyphs(){return this.maxp.numGlyphs}get unitsPerEm(){return this.head.unitsPerEm}get ascender(){return this.hhea.ascender}get descender(){return this.hhea.descender}get lineGap(){return this.hhea.lineGap}get isTrueType(){return P$(this.directory)}get isCFF(){return this.hasTable(p.CFF)||this.hasTable(p.CFF2)}get isVariable(){return this.hasTable(p.fvar)}get hasOpenTypeLayout(){return this.hasTable(p.GSUB)||this.hasTable(p.GPOS)}get hasAATLayout(){return this.hasTable(p.morx)||this.hasTable(p.kerx)}get isColorFont(){return this.hasTable(p.COLR)||this.hasTable(p.SVG)||this.hasTable(p.sbix)||this.hasTable(p.CBDT)}get hasHinting(){return this.isTrueType&&(this.hasTable(p.fpgm)||this.hasTable(p.prep))}glyphId($){return eJ(this.cmap,$)}glyphIdForChar($){let Q=$.codePointAt(0);if(Q===void 0)return 0;return this.glyphId(Q)}advanceWidth($){return lq(this.hmtx,$)}leftSideBearing($){return dq(this.hmtx,$)}listTables(){return[...this.directory.tables.keys()].map(P9)}getGlyph($){if(!this.glyf||!this.loca)return null;return z8(this.glyf,this.loca,$)}getGlyphContours($){if(this.glyf&&this.loca)return O7(this.glyf,this.loca,$);if(this.cff)return p5(this.cff,$,0);if(this.cff2)return c0(this.cff2,$,null);return null}getGlyphBounds($){if(this.glyf&&this.loca)return v7(this.glyf,this.loca,$);let Q=this.getGlyphContours($);if(!Q||Q.length===0)return null;let Z=1/0,K=1/0,J=-1/0,q=-1/0;for(let U=0;U<Q.length;U++){let W=Q[U];for(let H=0;H<W.length;H++){let _=W[H];Z=Math.min(Z,_.x),K=Math.min(K,_.y),J=Math.max(J,_.x),q=Math.max(q,_.y)}}if(Z===1/0)return null;return{xMin:Z,yMin:K,xMax:J,yMax:q}}getGlyphContoursAndBounds($){if(this.glyf&&this.loca)return P7(this.glyf,this.loca,$);let Q=this.getGlyphContours($);if(!Q)return null;if(Q.length===0)return{contours:Q,bounds:null};let Z=1/0,K=1/0,J=-1/0,q=-1/0;for(let W=0;W<Q.length;W++){let H=Q[W];for(let _=0;_<H.length;_++){let N=H[_];Z=Math.min(Z,N.x),K=Math.min(K,N.y),J=Math.max(J,N.x),q=Math.max(q,N.y)}}return{contours:Q,bounds:Z===1/0?null:{xMin:Z,yMin:K,xMax:J,yMax:q}}}getGlyphContoursWithVariation($,Q){if(this.glyf&&this.loca)return C7(this.glyf,this.loca,this.gvar,$,Q);if(this.cff2)return c0(this.cff2,$,Q);return this.getGlyphContours($)}}var wU;((K)=>{K.Shrink="shrink";K.Extend="extend";K.Auto="auto"})(wU||={});function K1($){let Q=0;for(let Z=0;Z<$.positions.length;Z++){let K=$.positions[Z];Q+=K.xAdvance}return Q}function AU($,Q,Z){let{targetWidth:K,script:J=k("DFLT"),language:q,mode:U="auto",maxPriority:W=10,enableKashida:H=!0,minWordSpacingFactor:_=0.8,maxWordSpacingFactor:N=1.5,enableLetterSpacing:V=!0,maxLetterSpacing:X=100}=Z,j=K1(Q),z=K-j;if(Math.abs(z)<1)return{success:!0,finalWidth:j,delta:0,priorityLevel:0,adjustments:[]};let G;if(U==="auto")G=z>0?"extend":"shrink";else G=U;let Y=[],E=z,w=0,F=$.jstf;if(F){let L=Y$(F,J,q);for(let O=0;O<Math.min(L.length,W);O++){let M=L[O],P=G==="shrink"?E$(M):w$(M);if(P.enableGsub.length>0||P.disableGsub.length>0||P.enableGpos.length>0||P.disableGpos.length>0)Y.push({type:"lookup",glyphIndices:[],value:O}),w=O}if(H&&G==="extend"){let O=G$(F,J);if(O.length>0){let M=EX(Q,O[0],E,$);E-=M.totalExtension,Y.push(...M.adjustments)}}}let A=$.glyphId(32);if(A!==0){let L=AX(Q,A,E,G==="shrink"?_:N);E-=L.totalAdjustment,Y.push(...L.adjustments)}if(V&&Math.abs(E)>1){let L=FX(Q,E,X);E-=L.totalAdjustment,Y.push(...L.adjustments)}let B=K1(Q);return{success:Math.abs(E)<1,finalWidth:B,delta:K-B,priorityLevel:w,adjustments:Y}}function EX($,Q,Z,K){let J=[],q=0,U=[];for(let N=0;N<$.infos.length-1;N++){let V=$.infos[N];if(wX(V.codepoint))U.push(N)}if(U.length===0)return{totalExtension:0,adjustments:[]};let W=K.advanceWidth(Q);if(W<=0)return{totalExtension:0,adjustments:[]};let H=Math.ceil(Z/W/U.length),_=Math.min(H*W,Z/U.length);for(let N=0;N<U.length;N++){if(q>=Z)break;let V=U[N];$.positions[V].xAdvance+=_,q+=_,J.push({type:"kashida",glyphIndices:[V],value:_})}return{totalExtension:q,adjustments:J}}function wX($){return $>=1568&&$<=1791}function AX($,Q,Z,K){let J=[],q=0,U=[],W=0;for(let X=0;X<$.infos.length;X++)if($.infos[X]?.glyphId===Q)U.push(X),W+=$.positions[X]?.xAdvance;if(U.length===0)return{totalAdjustment:0,adjustments:[]};let H=Z/U.length,N=W/U.length*(K-1),V=Z>0?Math.min(H,N):Math.max(H,-N);for(let X=0;X<U.length;X++){let j=U[X];$.positions[j].xAdvance+=V,q+=V}if(q!==0)J.push({type:"spacing",glyphIndices:U,value:V});return{totalAdjustment:q,adjustments:J}}function FX($,Q,Z){let K=[],J=$.infos.length;if(J<=1)return{totalAdjustment:0,adjustments:[]};let q=J-1,U=Q/q,W=Q>0?Math.min(U,Z):Math.max(U,-Z),H=[],_=0;for(let N=0;N<J-1;N++)$.positions[N].xAdvance+=W,_+=W,H.push(N);if(_!==0)K.push({type:"spacing",glyphIndices:H,value:W});return{totalAdjustment:_,adjustments:K}}function LX($,Q,Z){let K=[],J=[];if($.infos.length===0)return{lines:[],breakPoints:[]};let q=0,U=0,W=-1,H=0;for(let _=0;_<$.infos.length;_++){let N=$.positions[_],V=$.infos[_];if(U+=N.xAdvance,Z!==void 0&&V.glyphId===Z)W=_,H=U;if(U>Q&&q<_){let X;if(W>q)X=W+1;else X=_;let j=EU($,q,X);K.push(j),J.push(X),q=X,U=0,W=-1;for(let z=q;z<=_;z++)U+=$.positions[z]?.xAdvance}}if(q<$.infos.length){let _=EU($,q,$.infos.length);K.push(_)}return{lines:K,breakPoints:J}}function EU($,Q,Z){let K=new O8;K.direction=$.direction,K.script=$.script,K.language=$.language;for(let J=Q;J<Z;J++)K.infos.push({...$.infos[J]}),K.positions.push({...$.positions[J]});return K}function DX($,Q,Z){let K=[];for(let J=0;J<Q.length;J++){let q=Q[J];if(J===Q.length-1)K.push({success:!0,finalWidth:K1(q),delta:0,priorityLevel:0,adjustments:[]});else K.push(AU($,q,Z))}return K}function FU($,Q){for(let Z=0;Z<$.conditions.length;Z++){let K=$.conditions[Z],J=Q[K.axisIndex]??0;if(J<K.filterRangeMinValue||J>K.filterRangeMaxValue)return!1}return!0}function Z0($,Q){for(let Z=0;Z<$.featureVariationRecords.length;Z++){let K=$.featureVariationRecords[Z];if(FU(K.conditionSet,Q))return K}return null}function BX($,Q,Z,K){if(!$||!K)return Z;let J=Z0($,K);if(!J)return Z;let q=J.featureTableSubstitution.substitutions.find((U)=>U.featureIndex===Q);if(q)return q.alternateFeature.lookupListIndices;return Z}function MX($,Q,Z,K){if(!$||!K)return Q;let J=Z0($,K);if(!J)return Q;let q=new Map(Q),U=J.featureTableSubstitution.substitutions;for(let W=0;W<U.length;W++){let H=U[W],_=[...Z.entries()];for(let N=0;N<_.length;N++){let[V,X]=_[N];if(X===H.featureIndex){q.set(V,H.alternateFeature.lookupListIndices);break}}}return q}z6();var RX=[0,85,86,85,0],LU=[8,77,86,77,8],TX=[0,64,128,64,0],DU;((J)=>{J[J.RGB=0]="RGB";J[J.BGR=1]="BGR";J[J.RGB_V=2]="RGB_V";J[J.BGR_V=3]="BGR_V"})(DU||={});function OX($,Q,Z,K,J,q,U=0,W=LU){if(U===2||U===3)return PX($,Q,Z,K,J,q,U,W);let _=Q*3,N=a(_,Z,1),V=new a8;V.setClip(0,0,_,Z),V.reset(),Y8(V,$,K*3,J*3,q,!0),V.sweep(N);let X=a(Q,Z,2);return vX(N,X,W,U===1),X}function PX($,Q,Z,K,J,q,U,W){let H=Z*3,_=a(Q,H,1),N=new a8;N.setClip(0,0,Q,H),N.reset(),Y8(N,$,K,J,q*3,!0),N.sweep(_);let V=a(Q,Z,3);return IX(_,V,W,U===3),V}function vX($,Q,Z,K){let[J,q,U,W,H]=Z,_=J+q+U+W+H;for(let N=0;N<Q.rows;N++){let V=N*$.pitch,X=N*Q.pitch;for(let j=0;j<Q.width;j++){let z=j*3,G=z-2>=0?$.buffer[V+z-2]:0,Y=z-1>=0?$.buffer[V+z-1]:0,E=$.buffer[V+z],w=z+1<$.width?$.buffer[V+z+1]:0,F=z+2<$.width?$.buffer[V+z+2]:0,A=Math.min(255,Math.round((G*J+Y*q+E*U+w*W+F*H)/_)),B=z-1>=0?$.buffer[V+z-1]:0,L=$.buffer[V+z],O=z+1<$.width?$.buffer[V+z+1]:0,M=z+2<$.width?$.buffer[V+z+2]:0,P=z+3<$.width?$.buffer[V+z+3]:0,T=Math.min(255,Math.round((B*J+L*q+O*U+M*W+P*H)/_)),x=$.buffer[V+z],I=z+1<$.width?$.buffer[V+z+1]:0,f=z+2<$.width?$.buffer[V+z+2]:0,l=z+3<$.width?$.buffer[V+z+3]:0,C=z+4<$.width?$.buffer[V+z+4]:0,R=Math.min(255,Math.round((x*J+I*q+f*U+l*W+C*H)/_)),y=X+j*3;if(K)Q.buffer[y]=R,Q.buffer[y+1]=T,Q.buffer[y+2]=A;else Q.buffer[y]=A,Q.buffer[y+1]=T,Q.buffer[y+2]=R}}}function IX($,Q,Z,K){let[J,q,U,W,H]=Z,_=J+q+U+W+H;for(let N=0;N<Q.rows;N++){let V=N*3,X=N*Q.pitch;for(let j=0;j<Q.width;j++){let z=V-2>=0?$.buffer[(V-2)*$.pitch+j]:0,G=V-1>=0?$.buffer[(V-1)*$.pitch+j]:0,Y=$.buffer[V*$.pitch+j],E=V+1<$.rows?$.buffer[(V+1)*$.pitch+j]:0,w=V+2<$.rows?$.buffer[(V+2)*$.pitch+j]:0,F=Math.min(255,Math.round((z*J+G*q+Y*U+E*W+w*H)/_)),A=V-1>=0?$.buffer[(V-1)*$.pitch+j]:0,B=$.buffer[V*$.pitch+j],L=V+1<$.rows?$.buffer[(V+1)*$.pitch+j]:0,O=V+2<$.rows?$.buffer[(V+2)*$.pitch+j]:0,M=V+3<$.rows?$.buffer[(V+3)*$.pitch+j]:0,P=Math.min(255,Math.round((A*J+B*q+L*U+O*W+M*H)/_)),T=$.buffer[V*$.pitch+j],x=V+1<$.rows?$.buffer[(V+1)*$.pitch+j]:0,I=V+2<$.rows?$.buffer[(V+2)*$.pitch+j]:0,f=V+3<$.rows?$.buffer[(V+3)*$.pitch+j]:0,l=V+4<$.rows?$.buffer[(V+4)*$.pitch+j]:0,C=Math.min(255,Math.round((T*J+x*q+I*U+f*W+l*H)/_)),R=X+j*3;if(K)Q.buffer[R]=C,Q.buffer[R+1]=P,Q.buffer[R+2]=F;else Q.buffer[R]=F,Q.buffer[R+1]=P,Q.buffer[R+2]=C}}}function kX($,Q=[255,255,255],Z=[0,0,0]){let K=new Uint8Array($.width*$.rows*4),[J,q,U]=Q,[W,H,_]=Z;for(let N=0;N<$.rows;N++){let V=N*$.pitch,X=N*$.width*4;for(let j=0;j<$.width;j++){let z=V+j*3,G=X+j*4,Y=$.buffer[z],E=$.buffer[z+1],w=$.buffer[z+2];K[G]=k$(J,W,Y),K[G+1]=k$(q,H,E),K[G+2]=k$(U,_,w),K[G+3]=255}}return K}function k$($,Q,Z){return Math.round($+(Q-$)*Z/255)}z6();var TU;((J)=>{J[J.None=0]="None";J[J.Decompose=1]="Decompose";J[J.Compose=2]="Compose";J[J.Auto=3]="Auto"})(TU||={});function _8($){if($<768)return 0;if($>=880&&$<1328)return 0;if($>=12288){if($>=44032&&$<=55215)return 0;if($>=19968&&$<=40959)return 0;if($>=13312&&$<=19903)return 0;if($>=12352&&$<12441)return 0;if($>=12443&&$<=12543)return 0;if($>=12544&&$<=12591)return 0;if($>=12800&&$<=13055)return 0}if($>=768&&$<=879)return mX($);if($>=1425&&$<=1469)return yX($);if($===1471)return 23;if($===1473)return 24;if($===1474)return 25;if($===1476)return 230;if($===1477)return 220;if($===1479)return 18;if($>=1611&&$<=1631)return bX($);if($===1648)return 35;if($>=1552&&$<=1562)return 230;if($>=1750&&$<=1756)return 230;if($>=1759&&$<=1764)return 230;if($>=1767&&$<=1768)return 230;if($>=1770&&$<=1773)return 220;if($===2260)return 230;if($>=2275&&$<=2303)return 220;if($===2364)return 7;if($===2381)return 9;if($>=2385&&$<=2388)return 230;if($===2389)return 0;if($>=2390&&$<=2391)return 0;if($===2492)return 7;if($===2509)return 9;if($===2558)return 230;if($===2620)return 7;if($===2637)return 9;if($===2748)return 7;if($===2765)return 9;if($===2876)return 7;if($===2893)return 9;if($===3021)return 9;if($===3149)return 9;if($===3157)return 84;if($===3158)return 91;if($===3260)return 7;if($===3277)return 9;if($===3405)return 9;if($===3530)return 9;if($>=3633&&$<=3642)return 0;if($>=3655&&$<=3662)return BU($);if($>=3761&&$<=3772)return 0;if($>=3784&&$<=3789)return BU($);if($>=3864&&$<=3865)return 220;if($===3893)return 220;if($===3895)return 220;if($===3897)return 216;if($>=3953&&$<=3966)return MU($);if($>=3968&&$<=3972)return MU($);if($>=3974&&$<=3975)return 230;if($===4151)return 7;if($===4153)return 9;if($===4154)return 9;if($>=12330&&$<=12335)return CX($);if($>=12441&&$<=12442)return 8;if($>=6832&&$<=6911)return SX($);if($>=7616&&$<=7679)return hX($);if($>=65056&&$<=65071)return 230;return 0}function BU($){if($>=3656&&$<=3659)return 107;if($===3660)return 0;if($===3661)return 0;if($===3662)return 0;if($>=3784&&$<=3787)return 122;return 0}function MU($){if($===3953)return 129;if($===3954)return 130;if($===3955)return 0;if($===3956)return 132;if($===3957)return 0;if($===3958)return 0;if($===3959)return 0;if($===3960)return 0;if($===3961)return 0;if($===3962)return 130;if($===3963)return 130;if($===3964)return 130;if($===3965)return 130;if($===3966)return 0;if($===3968)return 130;if($===3969)return 0;if($===3970)return 230;if($===3971)return 230;return 9}function CX($){if($===12330)return 218;if($===12331)return 228;if($===12332)return 232;if($===12333)return 222;if($===12334)return 224;return 224}function SX($){if($>=6832&&$<=6846)return 230;if($===6847)return 220;if($===6848)return 220;return 230}function hX($){if($>=7616&&$<=7617)return 230;if($===7618)return 220;if($>=7619&&$<=7626)return 230;if($===7627)return 230;if($===7628)return 230;if($===7629)return 234;if($===7630)return 214;if($===7631)return 220;if($===7632)return 202;if($>=7633&&$<=7669)return 230;if($>=7670&&$<=7672)return 232;if($===7673)return 220;if($===7674)return 218;return 230}function yX($){if($>=1425&&$<=1441)return 220;if($>=1442&&$<=1455)return 230;if($>=1456&&$<=1465){if($===1456)return 10;if($===1457)return 11;if($===1458)return 12;if($===1459)return 13;if($===1460)return 14;if($===1461)return 15;if($===1462)return 16;if($===1463)return 17;if($===1464)return 18;return 19}if($===1466)return 19;if($===1467)return 20;if($===1468)return 21;return 22}function bX($){if($===1611)return 27;if($===1612)return 28;if($===1613)return 29;if($===1614)return 30;if($===1615)return 31;if($===1616)return 32;if($===1617)return 33;if($===1618)return 34;if($>=1619&&$<=1621)return 230;if($===1622)return 220;if($===1623)return 230;if($===1624)return 230;return 230}function mX($){if($>=768&&$<=788)return 230;if($>=789&&$<=789)return 232;if($>=790&&$<=793)return 220;if($>=794&&$<=794)return 232;if($>=795&&$<=795)return 216;if($>=796&&$<=800)return 220;if($>=801&&$<=802)return 202;if($>=803&&$<=806)return 220;if($>=807&&$<=808)return 202;if($>=809&&$<=819)return 220;if($>=820&&$<=824)return 1;if($>=825&&$<=828)return 220;if($>=829&&$<=836)return 230;if($===837)return 240;if($>=838&&$<=846)return 230;if($===847)return 0;if($>=848&&$<=850)return 230;if($>=851&&$<=854)return 220;if($>=855&&$<=856)return 230;if($>=857&&$<=858)return 220;if($>=859&&$<=859)return 230;if($>=860&&$<=860)return 233;if($>=861&&$<=862)return 234;if($>=863&&$<=863)return 233;if($>=864&&$<=865)return 234;if($>=866&&$<=866)return 233;if($>=867&&$<=879)return 230;return 0}function J1($){let Q=$.length,Z=1;while(Z<Q){let K=$[Z];if(!K){Z++;continue}let J=_8(K.codepoint);if(J===0){Z++;continue}let q=Z;while(q>0){let U=$[q-1];if(!U)break;let W=_8(U.codepoint);if(W===0)break;if(W<=J)break;$[q]=U,$[q-1]=K,q--}Z++}}var gX=new Map([[192,[65,768]],[193,[65,769]],[194,[65,770]],[195,[65,771]],[196,[65,776]],[197,[65,778]],[199,[67,807]],[200,[69,768]],[201,[69,769]],[202,[69,770]],[203,[69,776]],[204,[73,768]],[205,[73,769]],[206,[73,770]],[207,[73,776]],[209,[78,771]],[210,[79,768]],[211,[79,769]],[212,[79,770]],[213,[79,771]],[214,[79,776]],[217,[85,768]],[218,[85,769]],[219,[85,770]],[220,[85,776]],[221,[89,769]],[224,[97,768]],[225,[97,769]],[226,[97,770]],[227,[97,771]],[228,[97,776]],[229,[97,778]],[231,[99,807]],[232,[101,768]],[233,[101,769]],[234,[101,770]],[235,[101,776]],[236,[105,768]],[237,[105,769]],[238,[105,770]],[239,[105,776]],[241,[110,771]],[242,[111,768]],[243,[111,769]],[244,[111,770]],[245,[111,771]],[246,[111,776]],[249,[117,768]],[250,[117,769]],[251,[117,770]],[252,[117,776]],[253,[121,769]],[255,[121,776]],[256,[65,772]],[257,[97,772]],[258,[65,774]],[259,[97,774]],[260,[65,808]],[261,[97,808]],[262,[67,769]],[263,[99,769]],[264,[67,770]],[265,[99,770]],[266,[67,775]],[267,[99,775]],[268,[67,780]],[269,[99,780]],[270,[68,780]],[271,[100,780]],[274,[69,772]],[275,[101,772]],[276,[69,774]],[277,[101,774]],[278,[69,775]],[279,[101,775]],[280,[69,808]],[281,[101,808]],[282,[69,780]],[283,[101,780]],[284,[71,770]],[285,[103,770]],[286,[71,774]],[287,[103,774]],[288,[71,775]],[289,[103,775]],[290,[71,807]],[291,[103,807]],[292,[72,770]],[293,[104,770]],[296,[73,771]],[297,[105,771]],[298,[73,772]],[299,[105,772]],[300,[73,774]],[301,[105,774]],[302,[73,808]],[303,[105,808]],[304,[73,775]],[308,[74,770]],[309,[106,770]],[310,[75,807]],[311,[107,807]],[313,[76,769]],[314,[108,769]],[315,[76,807]],[316,[108,807]],[317,[76,780]],[318,[108,780]],[323,[78,769]],[324,[110,769]],[325,[78,807]],[326,[110,807]],[327,[78,780]],[328,[110,780]],[332,[79,772]],[333,[111,772]],[334,[79,774]],[335,[111,774]],[336,[79,779]],[337,[111,779]],[340,[82,769]],[341,[114,769]],[342,[82,807]],[343,[114,807]],[344,[82,780]],[345,[114,780]],[346,[83,769]],[347,[115,769]],[348,[83,770]],[349,[115,770]],[350,[83,807]],[351,[115,807]],[352,[83,780]],[353,[115,780]],[354,[84,807]],[355,[116,807]],[356,[84,780]],[357,[116,780]],[360,[85,771]],[361,[117,771]],[362,[85,772]],[363,[117,772]],[364,[85,774]],[365,[117,774]],[366,[85,778]],[367,[117,778]],[368,[85,779]],[369,[117,779]],[370,[85,808]],[371,[117,808]],[372,[87,770]],[373,[119,770]],[374,[89,770]],[375,[121,770]],[376,[89,776]],[377,[90,769]],[378,[122,769]],[379,[90,775]],[380,[122,775]],[381,[90,780]],[382,[122,780]],[7840,[65,803]],[7841,[97,803]],[7842,[65,777]],[7843,[97,777]],[7864,[69,803]],[7865,[101,803]],[7866,[69,777]],[7867,[101,777]],[7868,[69,771]],[7869,[101,771]],[7880,[73,777]],[7881,[105,777]],[7882,[73,803]],[7883,[105,803]],[7884,[79,803]],[7885,[111,803]],[7886,[79,777]],[7887,[111,777]],[7908,[85,803]],[7909,[117,803]],[7910,[85,777]],[7911,[117,777]],[7922,[89,768]],[7923,[121,768]],[7924,[89,803]],[7925,[121,803]],[7926,[89,777]],[7927,[121,777]],[7928,[89,771]],[7929,[121,771]],[7936,[945,787]],[7937,[945,788]],[7944,[913,787]],[7945,[913,788]],[1081,[1080,774]],[1049,[1048,774]],[1105,[1077,776]],[1025,[1045,776]]]);function q1($){return gX.get($)??null}var uX=new Map([[65,new Map([[768,192],[769,193],[770,194],[771,195],[776,196],[778,197],[808,260],[780,461],[772,256],[774,258]])],[67,new Map([[807,199],[769,262],[770,264],[780,268],[775,266]])],[69,new Map([[768,200],[769,201],[770,202],[776,203],[808,280],[780,282],[772,274],[774,276],[775,278]])],[73,new Map([[768,204],[769,205],[770,206],[776,207],[771,296],[772,298],[774,300],[808,302],[775,304]])],[78,new Map([[771,209],[769,323],[807,325],[780,327]])],[79,new Map([[768,210],[769,211],[770,212],[771,213],[776,214],[772,332],[774,334],[779,336],[808,490]])],[85,new Map([[768,217],[769,218],[770,219],[776,220],[771,360],[772,362],[774,364],[778,366],[779,368],[808,370],[780,467]])],[89,new Map([[769,221],[770,374],[776,376]])],[97,new Map([[768,224],[769,225],[770,226],[771,227],[776,228],[778,229],[808,261],[780,462],[772,257],[774,259]])],[99,new Map([[807,231],[769,263],[770,265],[780,269],[775,267]])],[101,new Map([[768,232],[769,233],[770,234],[776,235],[808,281],[780,283],[772,275],[774,277],[775,279]])],[105,new Map([[768,236],[769,237],[770,238],[776,239],[771,297],[772,299],[774,301],[808,303]])],[110,new Map([[771,241],[769,324],[807,326],[780,328]])],[111,new Map([[768,242],[769,243],[770,244],[771,245],[776,246],[772,333],[774,335],[779,337],[808,491]])],[117,new Map([[768,249],[769,250],[770,251],[776,252],[771,361],[772,363],[774,365],[778,367],[779,369],[808,371],[780,468]])],[121,new Map([[769,253],[776,255],[770,375]])],[83,new Map([[769,346],[770,348],[807,350],[780,352]])],[115,new Map([[769,347],[770,349],[807,351],[780,353]])],[90,new Map([[769,377],[775,379],[780,381]])],[122,new Map([[769,378],[775,380],[780,382]])]]);function RU($,Q){let Z=uX.get($);if(!Z)return null;return Z.get(Q)??null}function xX($){if($.length===0)return $;let Q=[],Z=0;while(Z<$.length){let K=$[Z];if(_8(K.codepoint)===0){let q=K.codepoint,U=0,W=Z+1;while(W<$.length){let H=$[W],_=_8(H.codepoint);if(_===0)break;if(_>U||U===0){let N=RU(q,H.codepoint);if(N!==null){q=N,W++;continue}}U=_,W++}Q.push({glyphId:K.glyphId,cluster:K.cluster,mask:K.mask,codepoint:q});for(let H=Z+1;H<W;H++){let _=$[H];if(!_)continue;let N=_8(_.codepoint);if(RU(q,_.codepoint)===null&&N!==0)Q.push(_)}Z=W}else Q.push(K),Z++}return Q}function fX($,Q){if(Q===0)return $;if(Q===1){let Z=[];for(let K=0;K<$.length;K++){let J=$[K],q=q1(J.codepoint);if(q)for(let U=0;U<q.length;U++){let W=q[U];Z.push({glyphId:J.glyphId,cluster:J.cluster,mask:J.mask,codepoint:W})}else Z.push(J)}return J1(Z),Z}if(Q===2){let Z=[];for(let K=0;K<$.length;K++){let J=$[K],q=q1(J.codepoint);if(q)for(let U=0;U<q.length;U++){let W=q[U];Z.push({glyphId:J.glyphId,cluster:J.cluster,mask:J.mask,codepoint:W})}else Z.push(J)}return J1(Z),xX(Z)}if(Q===3){let Z=[];for(let K=0;K<$.length;K++){let J=$[K],q=q1(J.codepoint);if(q)for(let U=0;U<q.length;U++){let W=q[U];Z.push({glyphId:J.glyphId,cluster:J.cluster,mask:J.mask,codepoint:W})}else Z.push(J)}return J1(Z),Z}return $}function lX($){for(let Q=0;Q<$.length;Q++){let Z=$[Q];if(!Z)continue;let K=Z.codepoint;if(K>=768&&K<880)return!0;if(K>=1425&&K<1480)return!0;if(K>=1552&&K<2304)return!0;if(K>=2364&&K<2416)return!0;if(K>=2492&&K<2559)return!0;if(K>=2620&&K<2677)return!0;if(K>=2748&&K<2815)return!0;if(K>=2876&&K<2928)return!0;if(K>=3021&&K<3032)return!0;if(K>=3149&&K<3184)return!0;if(K>=3260&&K<3327)return!0;if(K>=3405&&K<3440)return!0;if(K>=3530&&K<3573)return!0;if(K>=3633&&K<3664)return!0;if(K>=3761&&K<3792)return!0;if(K>=3864&&K<3976)return!0;if(K>=4151&&K<4155)return!0;if(K>=6832&&K<6912)return!0;if(K>=7616&&K<7680)return!0;if(K>=12330&&K<12336)return!0;if(K>=12441&&K<12443)return!0;if(K>=65056&&K<65072)return!0}return!1}function C$($,Q,Z){if(!lX(Q))return;let K=new Map,J=(q)=>{let U=K.get(q);if(U===void 0)U=$.gdef?H8($.gdef,q):0,K.set(q,U);return U};for(let q=0;q<Q.length;q++){let U=Q[q],W=Z[q],H=J(U.glyphId),_=_8(U.codepoint);if(H!==3&&_===0)continue;let N=-1;for(let z=q-1;z>=0;z--){let G=Q[z],Y=J(G.glyphId),E=_8(G.codepoint);if(Y===1||Y===0&&E===0){N=z;break}}if(N<0)continue;let V=Q[N],X=Z[N],j=$.advanceWidth(V.glyphId);dX($,U,W,V,X,j,_),W.xAdvance=0,W.yAdvance=0}}function dX($,Q,Z,K,J,q,U){let W=$.advanceWidth(Q.glyphId),H=$.unitsPerEm,_=(q-W)/2,N=0;if(U>=200&&U<=240)N=H*0.7,_=(q-W)/2;else if(U>=202&&U<=220)N=-H*0.15,_=(q-W)/2;else if(U===1)_=(q-W)/2,N=H*0.3;else if(U>=7&&U<=9)N=-H*0.1,_=(q-W)/2;else if(U>=10&&U<=35){if(U<=22)N=-H*0.2;else N=U<30?-H*0.15:H*0.6;_=(q-W)/2}Z.xOffset=J.xOffset+_-q,Z.yOffset=J.yOffset+N}function S$($,Q,Z){if(!$.kern)return;for(let J=0;J<Q.length-1;J++){let q=Q[J],U=Q[J+1];if(!q||!U)continue;let W=Z[J];if(!W)continue;let H=$.gdef?H8($.gdef,q.glyphId):0,_=$.gdef?H8($.gdef,U.glyphId):0;if(H===3||_===3)continue;let N=nX($,q.glyphId,U.glyphId);if(N!==0)W.xAdvance+=N}}function nX($,Q,Z){let K=$.kern;if(!K)return 0;return A$(K,Q,Z)}function OU($,Q=!0){if($<1||$>20)throw Error(`Stylistic set number must be 1-20, got ${$}`);let Z=`ss${$.toString().padStart(2,"0")}`;return{tag:k(Z),enabled:Q}}function pX($,Q=!0){return $.map((Z)=>OU(Z,Q))}function PU($,Q=!0){if($<1||$>99)throw Error(`Character variant number must be 1-99, got ${$}`);let Z=`cv${$.toString().padStart(2,"0")}`;return{tag:k(Z),enabled:Q}}function oX($,Q=!0){return $.map((Z)=>PU(Z,Q))}function cX($=!0){return{tag:k("liga"),enabled:$}}function iX($=!0){return{tag:k("dlig"),enabled:$}}function sX($=!0){return{tag:k("hlig"),enabled:$}}function aX($=!0){return{tag:k("calt"),enabled:$}}function rX($=!0){return{tag:k("salt"),enabled:$}}function tX($=!0){return{tag:k("swsh"),enabled:$}}function vU($=!0){return{tag:k("smcp"),enabled:$}}function IU($=!0){return{tag:k("c2sc"),enabled:$}}function eX($=!0){return{tag:k("pcap"),enabled:$}}function $j($=!0){return[vU($),IU($)]}function Qj($=!0){return{tag:k("onum"),enabled:$}}function Zj($=!0){return{tag:k("lnum"),enabled:$}}function Kj($=!0){return{tag:k("pnum"),enabled:$}}function Jj($=!0){return{tag:k("tnum"),enabled:$}}function qj($=!0){return{tag:k("frac"),enabled:$}}function Uj($=!0){return{tag:k("ordn"),enabled:$}}function Wj($=!0){return{tag:k("zero"),enabled:$}}function Hj($=!0){return{tag:k("sups"),enabled:$}}function _j($=!0){return{tag:k("subs"),enabled:$}}function Nj($=!0){return{tag:k("sinf"),enabled:$}}function Vj($=!0){return{tag:k("case"),enabled:$}}function Xj($=!0){return{tag:k("cpsp"),enabled:$}}function jj($=!0){return{tag:k("kern"),enabled:$}}function kU($=!0){return{tag:k("vert"),enabled:$}}function CU($=!0){return{tag:k("vrt2"),enabled:$}}function SU($=!0){return{tag:k("vkna"),enabled:$}}function zj($=!0){return[kU($),CU($),SU($)]}function Gj($=!0){return{tag:k("ruby"),enabled:$}}function Yj($=!0){return{tag:k("hwid"),enabled:$}}function Ej($=!0){return{tag:k("fwid"),enabled:$}}function wj($=!0){return{tag:k("pwid"),enabled:$}}function Aj($=!0){return{tag:k("qwid"),enabled:$}}function Fj($=!0){return{tag:k("twid"),enabled:$}}function Lj($=!0){return{tag:k("jp78"),enabled:$}}function Dj($=!0){return{tag:k("jp83"),enabled:$}}function Bj($=!0){return{tag:k("jp90"),enabled:$}}function Mj($=!0){return{tag:k("jp04"),enabled:$}}function Rj($=!0){return{tag:k("smpl"),enabled:$}}function Tj($=!0){return{tag:k("trad"),enabled:$}}function hU($,Q=!0){return{tag:k($),enabled:Q}}function Oj($,Q=!0){return $.map((Z)=>hU(Z,Q))}function Pj(...$){let Q=[];for(let Z=0;Z<$.length;Z++){let K=$[Z];if(Array.isArray(K))Q.push(...K);else Q.push(K)}return Q}var yU=new WeakMap,vj=64,bU=["ccmp","locl","rlig","rclt","calt","liga"],mU=["kern","mark","mkmk"];function Ij($,Q,Z,K,J){if(K.length===0&&J===null)return Q===null?`${$}||${Z}||`:`${$}|${Q}|${Z}||`;let q=K.map((W)=>`${P9(W.tag)}:${W.enabled?"1":"0"}`).sort().join(","),U=J?J.map((W)=>W.toFixed(4)).join(","):"";return`${$}|${Q||""}|${Z}|${q}|${U}`}function U1($,Q,Z,K,J=[],q=null){let U=Ij(Q,Z,K,J,q),W=yU.get($);if(!W)W=new Map,yU.set($,W);let H=W.get(U);if(H)return H;let _=Cj($,Q,Z,K,J,q);if(W.size>=vj){let N=W.keys().next().value;if(N!==void 0)W.delete(N)}return W.set(U,_),_}function kj($,Q,Z,K,J=[],q=null){return U1($,Q,Z,K,J,q)}function Cj($,Q,Z,K,J=[],q=null){let U=k(Q.padEnd(4," ")),W=Z?k(Z.padEnd(4," ")):null,H=new Set;for(let j=0;j<bU.length;j++)H.add(k(bU[j]));for(let j=0;j<mU.length;j++)H.add(k(mU[j]));for(let j=0;j<J.length;j++){let z=J[j];if(z.enabled)H.add(z.tag);else H.delete(z.tag)}let _=gU($.gsub,U,W,H,q),N=gU($.gpos,U,W,H,q),V=new Map;for(let j=0;j<_.length;j++){let z=_[j];V.set(z.index,z)}let X=new Map;for(let j=0;j<N.length;j++){let z=N[j];X.set(z.index,z)}return{script:U,language:W,direction:K,gsubLookups:_,gposLookups:N,gsubLookupMap:V,gposLookupMap:X}}function gU($,Q,Z,K,J){if(!$)return[];let q=$,U=new Set,W=r9(q.scriptList,Q);if(!W)W=r9(q.scriptList,k("DFLT"));if(!W)W=r9(q.scriptList,k("latn"));if(!W)return[];let H=$$(W,Z);if(!H)return[];let _=q.featureVariations,N=_&&J?Z0(_,J):null,V=new Map;if(N){let G=N.featureTableSubstitution.substitutions;for(let Y=0;Y<G.length;Y++){let E=G[Y];V.set(E.featureIndex,E.alternateFeature.lookupListIndices)}}if(H.requiredFeatureIndex!==65535){let G=a0(q.featureList,H.requiredFeatureIndex);if(G){let E=V.get(H.requiredFeatureIndex)??G.feature.lookupListIndices;for(let w=0;w<E.length;w++)U.add(E[w])}}let X=H.featureIndices;for(let G=0;G<X.length;G++){let Y=X[G],E=a0(q.featureList,Y);if(!E)continue;if(K.has(E.featureTag)){let F=V.get(Y)??E.feature.lookupListIndices;for(let A=0;A<F.length;A++)U.add(F[A])}}let j=[],z=[...U].sort((G,Y)=>G-Y);for(let G=0;G<z.length;G++){let Y=z[G],E=q.lookups[Y];if(E)j.push({index:Y,lookup:E})}return j}var Sj=new Uint8Array([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,0,0,0,0,0,0,1,1,1,1,2,1,2,1,2,2,2,2,2,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,3,2,2,2,2,2,2,2,1,2,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,5,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,2,2,1,1,1,1,1,1,1,1,1,2,1,2,2,2,2,1,1,0,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,0,0,0,0,0,0,0,0,0,0,0,0,2,2,2,0,0,2]);var K0=0,uU=1,h$=2,xU=3,b$=4,W1=5;function y$($){if($>=1536&&$<=1791)return Sj[$-1536];if($<1536)return K0;if($>=1808&&$<=1810)return b$;if($>=2259&&$<=2303)return W1;return K0}function m$($){let Q=$.length;for(let Z=0;Z<Q;Z++){let K=$[Z],J=K.codepoint??0,q=y$(J);if(q===K0||q===W1)continue;let U=K0;for(let V=Z-1;V>=0;V--){let j=$[V].codepoint??0,z=y$(j);if(z!==W1){U=z;break}}let W=K0;for(let V=Z+1;V<Q;V++){let j=$[V].codepoint??0,z=y$(j);if(z!==W1){W=z;break}}let H=U===h$||U===b$||U===xU,_=W===h$||W===uU||W===xU,N=0;if(q===h$)if(H&&_)N=4;else if(H)N=2;else if(_)N=8;else N=1;else if(q===uU)if(H)N=2;else N=1;else if(q===b$)if(_)N=8;else N=1;if(N!==0)K.mask=K.mask&4294967280|N}}function u$($){return $>=44032&&$<=55203}function hj($){return $>=4352&&$<=4607||$>=43360&&$<=43388||$>=55216&&$<=55291}function yj($){return $>=4352&&$<4371||$>=43360&&$<=43388}function bj($){return $>=4449&&$<4470||$>=55216&&$<=55238}function mj($){return $>4519&&$<=4546||$>=55243&&$<=55291}function gj($){if(!u$($))return[$];let Q=$-44032,Z=Math.floor(Q/588),K=Math.floor(Q%588/28),J=Q%28,q=[4352+Z,4449+K];if(J>0)q.push(4519+J);return q}function fU($,Q,Z=0){let K=$-4352,J=Q-4449,q=Z===0?0:Z-4519;if(K<0||K>=19)return null;if(J<0||J>=21)return null;if(q<0||q>=28)return null;return 44032+K*588+J*28+q}function J0($){if(yj($))return 1;if(bj($))return 2;if(mj($))return 3;if(u$($))return($-44032)%28===0?4:5;return 0}var g$={ljmo:1,vjmo:2,tjmo:4};function x$($){for(let Q=0;Q<$.length;Q++){let Z=$[Q];switch(J0(Z.codepoint)){case 1:Z.mask|=g$.ljmo;break;case 2:Z.mask|=g$.vjmo;break;case 3:Z.mask|=g$.tjmo;break;case 4:case 5:break}}}function f$($){let Q=[],Z=0;while(Z<$.length){let K=$[Z];if(!K){Z++;continue}let J=J0(K.codepoint);if(J===1&&Z+1<$.length){let q=$[Z+1];if(!q){Q.push(K),Z++;continue}if(J0(q.codepoint)===2){let W=0,H=2;if(Z+2<$.length){let N=$[Z+2];if(N){if(J0(N.codepoint)===3)W=N.codepoint,H=3}}let _=fU(K.codepoint,q.codepoint,W);if(_!==null){Q.push({glyphId:K.glyphId,cluster:K.cluster,mask:K.mask,codepoint:_}),Z+=H;continue}}}if(J===4&&Z+1<$.length){let q=$[Z+1];if(!q){Q.push(K),Z++;continue}if(J0(q.codepoint)===3){let W=gj(K.codepoint),[H,_]=W;if(W.length===2&&H!==void 0&&_!==void 0){let N=fU(H,_,q.codepoint);if(N!==null){Q.push({glyphId:K.glyphId,cluster:K.cluster,mask:K.mask,codepoint:N}),Z+=2;continue}}}}Q.push(K),Z++}return Q}function lU($){return u$($)||hj($)||$>=12593&&$<=12686}function uj($){return $>=1424&&$<=1535||$>=64285&&$<=64335}function xj($){if($>=1425&&$<=1455)return 6;if($>=1456&&$<=1469)return 2;if($===1470)return 7;if($===1471)return 5;if($===1472||$===1475)return 8;if($===1473||$===1474)return 4;if($===1468)return 3;if($===1469)return 2;if($>=1488&&$<=1514)return 1;if($>=1520&&$<=1524)return 1;if($>=64285&&$<=64335)return 1;if(uj($))return 0;return 0}function l$($){let Q=0;for(let Z=0;Z<$.length;Z++){let K=$[Z];if(!K)continue;if(xj(K.codepoint)===1)Q=Z;K.mask=K.mask&4294901760|Q&65535}}function dU($){return $>=2304&&$<=2431}function nU($){return $>=2432&&$<=2559}function pU($){return $>=2560&&$<=2687}function oU($){return $>=2688&&$<=2815}function cU($){return $>=2816&&$<=2943}function iU($){return $>=2944&&$<=3071}function sU($){return $>=3072&&$<=3199}function aU($){return $>=3200&&$<=3327}function rU($){return $>=3328&&$<=3455}function tU($){return dU($)||nU($)||pU($)||oU($)||cU($)||iU($)||sU($)||aU($)||rU($)}function e6($){if($===8204)return 5;if($===8205)return 6;if($===9676)return 12;if(dU($)){if($>=2362&&$<=2363||$>=2366&&$<=2380||$>=2382&&$<=2383||$>=2389&&$<=2391)return 7;if($===2381)return 4;if($===2364)return 3;if($>=2305&&$<=2307)return 8;if($>=2385&&$<=2388)return 9;if($>=2308&&$<=2324||$===2400||$===2401||$===2418||$>=2422&&$<=2423)return 2;if($>=2325&&$<=2361||$>=2392&&$<=2399||$===2424||$===2425||$===2426||$>=2427&&$<=2428||$>=2430&&$<=2431){if($===2352)return 15;return 1}if($>=2406&&$<=2415)return 17;return 0}if(nU($)){if($>=2494&&$<=2500||$>=2503&&$<=2504||$>=2507&&$<=2508||$===2519)return 7;if($===2509)return 4;if($===2492)return 3;if($>=2433&&$<=2435)return 8;if($>=2437&&$<=2444||$>=2447&&$<=2448||$>=2451&&$<=2452||$===2528||$===2529)return 2;if($>=2453&&$<=2472||$>=2474&&$<=2480||$===2482||$>=2486&&$<=2489||$>=2524&&$<=2525||$>=2527&&$<=2529){if($===2480)return 15;return 1}return 0}if(pU($)||oU($)||cU($)||iU($)||sU($)||aU($)||rU($)){let Q=$&127;if(Q>=1&&Q<=3)return 8;if(Q>=5&&Q<=20)return 2;if(Q>=21&&Q<=57)return 1;if(Q===60)return 3;if(Q>=62&&Q<=76)return 7;if(Q===77)return 4;return 0}return 0}function eU($){let Q=[],Z=$.length;if(Z===0)return Q;let K=0;while(K<Z){let J=fj($,K);Q.push(J),K=J.end}return Q}function fj($,Q){let Z=$.length,K=Q,J=-1,q=!1;if(K+1<Z){let W=$[K],H=$[K+1];if(W&&H){let _=e6(W.codepoint??0),N=e6(H.codepoint??0);if(_===15&&N===4)q=!0,K+=2}}let U=-1;while(K<Z){let W=$[K];if(!W){K++;continue}let H=W.codepoint??0,_=e6(H);if(_===1||_===15){if(U=K,K++,K<Z){let N=$[K];if(N&&e6(N.codepoint??0)===3)K++}if(K<Z){let N=$[K];if(N&&e6(N.codepoint??0)===4){if(K++,K<Z){let V=$[K];if(V){let X=e6(V.codepoint??0);if(X===6||X===5)K++}}continue}}break}else if(_===2){K++;break}else if(_===3)K++;else{if(U===-1)K++;break}}J=U>=0?U:Q;while(K<Z){let W=$[K];if(!W){K++;continue}let H=W.codepoint??0,_=e6(H);if(_===7||_===8||_===9||_===3)K++;else if(_===4){K++;break}else break}if(K===Q)K=Q+1;return{start:Q,end:K,hasReph:q,baseConsonant:J}}var E6={nukt:1,akhn:2,rphf:4,rkrf:8,pref:16,blwf:32,abvf:64,half:128,pstf:256,vatu:512,cjct:1024,init:2048,pres:4096,abvs:8192,blws:16384,psts:32768};function $W($){if($>=2304&&$<=2431){if($===2367)return 0;if($>=2373&&$<=2376)return 1;if($>=2369&&$<=2372)return 2;return 3}if($>=2432&&$<=2559){if($===2495)return 0;if($===2503||$===2504)return 0;if($>=2497&&$<=2500)return 2;return 3}if($>=2944&&$<=3071){if($>=3014&&$<=3016)return 0;if($===3009||$===3010)return 2;return 3}if($>=3072&&$<=3199){if($>=3134&&$<=3136||$>=3142&&$<=3144)return 1;if($>=3137&&$<=3140)return 2;return 3}if($>=3200&&$<=3327){if($>=3262&&$<=3264||$>=3270&&$<=3272)return 1;if($>=3265&&$<=3268)return 2;return 3}if($>=3328&&$<=3455){if($>=3398&&$<=3400)return 0;if($>=3393&&$<=3395)return 2;return 3}if($>=2560&&$<=2687){if($===2623)return 0;if($===2625||$===2626)return 2;return 3}if($>=2688&&$<=2815){if($===2751)return 0;if($>=2753&&$<=2756)return 2;return 3}if($>=2816&&$<=2943){if($===2879)return 0;if($>=2881&&$<=2883)return 2;return 3}return 3}function d$($){let Q=eU($);for(let Z=0;Z<Q.length;Z++){let K=Q[Z];for(let J=K.start;J<K.end;J++){let q=$[J];if(q){q.mask=q.mask&65535|(Z&65535)<<16;let U=e6(q.codepoint);if(U===3)q.mask|=E6.nukt;if(U===4){if(J<K.baseConsonant)q.mask|=E6.half;else if(J>K.baseConsonant)q.mask|=E6.blwf|E6.pstf}if(U===1||U===15){if(J<K.baseConsonant)q.mask|=E6.half|E6.cjct;else if(J>K.baseConsonant)q.mask|=E6.blwf|E6.pstf|E6.vatu}if(K.hasReph&&J<K.start+2)q.mask|=E6.rphf;if(U===7)switch($W(q.codepoint)){case 0:q.mask|=E6.pref|E6.pres;break;case 1:q.mask|=E6.abvf|E6.abvs;break;case 2:q.mask|=E6.blwf|E6.blws;break;case 3:q.mask|=E6.pstf|E6.psts;break}if(U===8)q.mask|=E6.abvs|E6.psts}}}}function n$($){let Q=eU($);for(let Z=0;Z<Q.length;Z++){let K=Q[Z];lj($,K)}}function lj($,Q){let{start:Z,end:K,baseConsonant:J,hasReph:q}=Q,U=[];for(let W=J+1;W<K;W++){let H=$[W];if(!H)continue;if(e6(H.codepoint)===7){if($W(H.codepoint)===0)U.push({index:W,info:H})}}if(U.length>0){U.sort((W,H)=>H.index-W.index);for(let W=0;W<U.length;W++){let{index:H,info:_}=U[W];$.splice(H,1);let N=q?Z+2:Z;$.splice(N,0,_)}}if(q&&K>Z+2){let W=$[Z],H=$[Z+1];if(W&&H){let _=K-1;while(_>J){let N=$[_];if(!N)break;let V=e6(N.codepoint);if(V===8||V===9)_--;else break}if(_>Z+1){$.splice(Z,2);let N=_-2;$.splice(N+1,0,W,H)}}}}function G9($){if($<6016||$>6143)return 0;if($>=6016&&$<=6050)return 1;if($===6051||$===6052)return 2;if($>=6053&&$<=6067)return 2;if($>=6070&&$<=6085)return 3;if($===6086)return 8;if($===6087)return 9;if($===6088)return 7;if($===6089||$===6090)return 5;if($===6098)return 4;if($===6092)return 6;if($>=6091&&$<=6097)return 7;if($>=6099&&$<=6109)return 7;return 0}var T8={pref:1,blwf:2,abvf:4,pstf:8,cfar:16,pres:32,abvs:64,blws:128,psts:256,clig:512};function QW($){return $>=6016&&$<=6143||$>=6624&&$<=6655}function p$($){let Q=0;while(Q<$.length){let Z=$[Q];if(!Z){Q++;continue}let K=G9(Z.codepoint);if(K===0){Q++;continue}let J=Q,q=-1;if(K===1)q=Q;let U=Q+1;while(U<$.length){let W=$[U];if(!W){U++;continue}let H=G9(W.codepoint);if(H===0)break;if(H===1){let _=$[U-1];if(_&&G9(_.codepoint)!==4)break}if(H===4&&U+1<$.length){let _=$[U+1];if(_&&G9(_.codepoint)===1){W.mask|=T8.blwf,_.mask|=T8.blwf,U+=2;continue}}if(H===3)if(W.codepoint>=6081&&W.codepoint<=6083)W.mask|=T8.pref;else if(W.codepoint>=6071&&W.codepoint<=6074)W.mask|=T8.abvf;else if(W.codepoint===6075||W.codepoint===6076||W.codepoint===6077)W.mask|=T8.blwf;else W.mask|=T8.pstf;if(H===5)W.mask|=T8.abvs;if(H===6)W.mask|=T8.abvs;U++}Q=U}}function o$($){let Q=0;while(Q<$.length){let Z=$[Q];if(!Z){Q++;continue}if(G9(Z.codepoint)!==1){Q++;continue}let J=Q,q=Q+1;while(q<$.length){let U=$[q];if(!U)break;if(G9(U.codepoint)===4&&q+1<$.length)q+=2;else break}if(q<$.length){let U=$[q];if(U){let W=U.codepoint;if(W>=6081&&W<=6083){let H=U;for(let _=q;_>J;_--){let N=$[_-1];if(N)$[_]=N}$[J]=H}}}Q=q+1}}function Y9($){if($>=4096&&$<=4255){if($>=4096&&$<=4129)return 1;if($>=4131&&$<=4135)return 2;if($>=4137&&$<=4138)return 2;if($>=4139&&$<=4149)return 3;if($===4150)return 6;if($===4151)return 8;if($===4152)return 7;if($===4153)return 5;if($===4154)return 5;if($>=4155&&$<=4158)return 4;if($>=4159&&$<=4169){if($===4159)return 1;return 9}if($>=4170&&$<=4175)return 8;if($>=4176&&$<=4185)return 1;if($>=4186&&$<=4189)return 1;if($>=4192&&$<=4193)return 1;if($>=4194&&$<=4196)return 3;if($>=4197&&$<=4198)return 1;if($>=4199&&$<=4205)return 3;if($>=4206&&$<=4208)return 1;if($>=4209&&$<=4212)return 3;if($>=4213&&$<=4225)return 1;if($>=4226&&$<=4226)return 4;if($>=4227&&$<=4236)return 3;if($===4237)return 8;if($===4238)return 1;if($===4239)return 8;if($>=4240&&$<=4249)return 9}if($>=43616&&$<=43647){if($>=43616&&$<=43638)return 1;if($>=43639&&$<=43641)return 8;if($===43642)return 1;if($===43643)return 8;if($===43644)return 8;if($===43645)return 8;if($>=43646&&$<=43647)return 1}if($>=43488&&$<=43519){if($>=43488&&$<=43492)return 1;if($===43493)return 3;if($>=43494&&$<=43503)return 1;if($>=43504&&$<=43513)return 9;if($>=43514&&$<=43518)return 1}return 0}var i6={rphf:1,pref:2,blwf:4,pstf:8,pres:16,abvs:32,blws:64,psts:128};function ZW($){return $>=4096&&$<=4255||$>=43616&&$<=43647||$>=43488&&$<=43519}function c$($){let Q=0;while(Q<$.length){let Z=$[Q];if(!Z){Q++;continue}let K=Y9(Z.codepoint);if(K===0){Q++;continue}let J=-1,q=!1;if(K===1)J=Q;let U=Q+1;while(U<$.length){let W=$[U];if(!W){U++;continue}let H=Y9(W.codepoint);if(H===0)break;if(H===5){if(q=!0,W.mask|=i6.blwf,U+1<$.length){let _=$[U+1];if(_&&Y9(_.codepoint)===1){_.mask|=i6.blwf,U+=2;continue}}}if(H===4){let _=W.codepoint;if(_===4155)W.mask|=i6.pref;else if(_===4156)W.mask|=i6.pref;else if(_===4157)W.mask|=i6.blwf;else if(_===4158)W.mask|=i6.blwf}if(H===3){let _=W.codepoint;if(_===4145)W.mask|=i6.pref;else if(_===4141||_===4142||_===4146)W.mask|=i6.abvs;else if(_===4143||_===4144)W.mask|=i6.blws;else W.mask|=i6.psts}if(H===6||H===8)W.mask|=i6.abvs;if(H===1&&!q){if(U>0){let _=$[U-1];if(_){if(Y9(_.codepoint)!==5)break}}}q=!1,U++}Q=U}}function i$($){let Q=0;while(Q<$.length){let Z=$[Q];if(!Z){Q++;continue}if(Y9(Z.codepoint)!==1){Q++;continue}let J=Q,q=[],U=Q+1;while(U<$.length){let W=$[U];if(!W){U++;continue}let H=Y9(W.codepoint);if(W.codepoint===4145){q.push(W),$.splice(U,1);continue}if(W.codepoint===4156){q.push(W),$.splice(U,1);continue}if(H===1||H===0)break;U++}if(q.length>0)$.splice(J,0,...q),Q+=q.length;Q++}}function a$($){return $>=3584&&$<=3711}function r$($){return $>=3712&&$<=3839}function s$($){if(a$($)){if($>=3585&&$<=3630)return 1;if($===3631)return 1;if($>=3648&&$<=3652)return 2;if($===3633)return 3;if($>=3636&&$<=3639)return 3;if($===3655)return 3;if($>=3640&&$<=3642)return 4;if($===3632)return 5;if($===3634||$===3635)return 5;if($===3653)return 5;if($===3635)return 8;if($>=3656&&$<=3659)return 6;if($===3660)return 6;if($===3661)return 7;if($===3662)return 7;if($>=3664&&$<=3675)return 9;return 0}if(r$($)){if($>=3713&&$<=3758)return 1;if($>=3776&&$<=3780)return 2;if($===3761)return 3;if($>=3764&&$<=3767)return 3;if($===3771)return 3;if($>=3768&&$<=3769)return 4;if($===3772)return 4;if($===3760)return 5;if($===3762||$===3763)return 5;if($>=3784&&$<=3789)return 6;if($>=3792&&$<=3801)return 9;return 0}return 0}function H1($){let Q=0,Z=-1;for(let K=0;K<$.length;K++){let J=$[K];if(!J)continue;let q=s$(J.codepoint);if(q===1)Q++,Z=K;if(J.mask=J.mask&4294967040|q&255,J.mask=J.mask&65535|(Q&65535)<<16,q===2)J.mask|=256}}function _1($){let Q=0;while(Q<$.length){let Z=$[Q];if(!Z){Q++;continue}if(s$(Z.codepoint)===2){let J=Q+1;while(J<$.length){let q=$[J];if(!q){J++;continue}let U=s$(q.codepoint??0);if(U===1){let W=Z;$[Q]=q,$[J]=W;break}if(U!==2)break;J++}}Q++}}function KW($){return["bali","batk","brah","bugi","buhd","cakm","cham","dupl","egyp","gran","hano","java","kthi","khar","khmr","khoj","lana","lepc","limb","mahj","modi","mtei","mymr","newa","phlp","rjng","saur","shrd","sidd","sind","sinh","sund","sylo","tagb","takr","tale","talu","tavt","tibt","tirh"].includes($)}function N8($){if($===8204)return 21;if($===8205)return 20;if($===847)return 2;if($===8288)return 19;if($>=65024&&$<=65039)return 18;if($>=917760&&$<=917999)return 18;if($>=4096&&$<=4255){if($>=4096&&$<=4128)return 1;if($>=4129&&$<=4138)return 10;if($>=4139&&$<=4146)return 31;if($>=4150&&$<=4151)return 32;if($===4153)return 8;if($===4154)return 8;if($>=4155&&$<=4158)return 38;if($>=4160&&$<=4169)return 7;return 0}if($>=6016&&$<=6143){if($>=6016&&$<=6050)return 1;if($>=6051&&$<=6067)return 10;if($>=6070&&$<=6085)return 31;if($===6098)return 8;if($>=6086&&$<=6088)return 32;return 0}if($>=3840&&$<=4095){if($>=3840&&$<=3863)return 14;if($>=3953&&$<=3965)return 28;if($>=3984&&$<=4028)return 17;if($>=3904&&$<=3948)return 1;return 0}if($>=3584&&$<=3711){if($>=3585&&$<=3630)return 1;if($>=3632&&$<=3642)return 31;if($>=3648&&$<=3652)return 30;if($>=3656&&$<=3659)return 32;return 0}if($>=3712&&$<=3839){if($>=3713&&$<=3747)return 1;if($>=3760&&$<=3772)return 31;if($>=3776&&$<=3780)return 30;if($>=3784&&$<=3789)return 32;return 0}if($>=57344&&$<=57599){if($===57344)return 13;if($===57345)return 24;if($===57346)return 25;if($===57347)return 26;if($===57348)return 27;if($===57349)return 4;if($===57350)return 12;if($===57351)return 9;if($===57352)return 23;if($===57353)return 29;if($===57354)return 37;if($===57355)return 39;if($===57356)return 40;if($===57357)return 33;if($===57358)return 34;if($===57359)return 35;if($===57360)return 36;if($===57361)return 5;if($===57362)return 6}return 0}var N6={rphf:1,pref:2,blwf:4,abvf:8,pstf:16,half:32,cjct:64,vatu:128,pres:256,abvs:512,blws:1024,psts:2048,haln:4096};function JW($){let Q=[],Z=$.length;if(Z===0)return Q;let K=0;while(K<Z){let J=dj($,K);Q.push(J),K=J.end}return Q}function dj($,Q){let Z=$.length,K=Q,J=-1,q=!1;if(K+1<Z){let U=$[K],W=$[K+1];if(U&&W){let H=N8(U.codepoint??0),_=N8(W.codepoint??0);if(H===13&&_===8)q=!0,K+=2}}while(K<Z){let U=$[K];if(!U){K++;continue}let W=N8(U.codepoint??0);if(W===1||W===10||W===7||W===22){J=K,K++;break}if(W===26||W===30||W===39){K++;continue}if(J===-1)K++;break}if(J===-1)J=Q;while(K<Z){let U=$[K];if(!U){K++;continue}let W=N8(U.codepoint??0);if(W===8){if(K++,K<Z){let H=$[K];if(H){let _=N8(H.codepoint??0);if(_===1||_===4||_===17){K++;continue}if(_===20||_===21)K++}}continue}if(W===17||W===4){K++;continue}if(W===12||W===9){K++;continue}break}while(K<Z){let U=$[K];if(!U){K++;continue}let W=N8(U.codepoint??0);if(W===28||W===29||W===30||W===31||W===23){K++;continue}if(W===37||W===38||W===39||W===40){K++;continue}if(W===24||W===25||W===26||W===27){K++;continue}if(W===32||W===33){K++;continue}if(W===34||W===35||W===36||W===5||W===6){K++;continue}if(W===2||W===18){K++;continue}break}if(K===Q)K=Q+1;return{start:Q,end:K,base:J,hasReph:q}}function qW($){let Q=JW($);for(let Z=0;Z<Q.length;Z++){let K=Q[Z];for(let J=K.start;J<K.end;J++){let q=$[J];if(!q)continue;q.mask=q.mask&65535|(Z&65535)<<16;let U=N8(q.codepoint);if(K.hasReph&&J<K.start+2)q.mask|=N6.rphf;if(J<K.base){if(U===1||U===4||U===17)q.mask|=N6.half|N6.cjct}if(J>K.base){if(U===1||U===4||U===17)q.mask|=N6.blwf|N6.pstf|N6.vatu}if(U===8||U===9)if(J<K.base)q.mask|=N6.half;else q.mask|=N6.haln;if(U===30)q.mask|=N6.pref|N6.pres;else if(U===28)q.mask|=N6.abvf|N6.abvs;else if(U===29)q.mask|=N6.blwf|N6.blws;else if(U===31||U===23)q.mask|=N6.pstf|N6.psts;if(U===37)q.mask|=N6.abvs;else if(U===38)q.mask|=N6.blws;else if(U===39)q.mask|=N6.pres;else if(U===40)q.mask|=N6.psts;if(U===32)q.mask|=N6.abvs;else if(U===33)q.mask|=N6.blws;if(U===34)q.mask|=N6.abvs;else if(U===35)q.mask|=N6.blws;else if(U===36||U===5||U===6)q.mask|=N6.psts}}}function UW($){let Q=JW($);for(let Z=0;Z<Q.length;Z++){let K=Q[Z];nj($,K)}}function nj($,Q){let{start:Z,end:K,base:J,hasReph:q}=Q,U=[];for(let W=J+1;W<K;W++){let H=$[W];if(!H)continue;let _=N8(H.codepoint);if(_===30||_===39)U.push({index:W,info:H})}if(U.length>0){U.sort((W,H)=>H.index-W.index);for(let W=0;W<U.length;W++){let{index:H,info:_}=U[W];$.splice(H,1);let N=q?Z+2:Z;$.splice(N,0,_)}}if(q&&K>Z+2){let W=$[Z],H=$[Z+1];if(W&&H){let _=K-1;while(_>J){let N=$[_];if(!N)break;let V=N8(N.codepoint);if(V===32||V===33||V===34||V===35||V===36||V===5||V===6)_--;else break}if(_>Z+1){$.splice(Z,2);let N=_-2;$.splice(N+1,0,W,H)}}}}var t$=new Uint16Array(16),e$=new Uint16Array(16);function pj($){return $ instanceof u8?$.font:$}var WW=new WeakMap;function oj($){if($ instanceof u8)return $;let Q=WW.get($);if(!Q)Q=new u8($),WW.set($,Q);return Q}function V8($,Q,Z){let K=new Uint8Array(Q.infos.length),J=$.gdef;if(!J||Z===0)return K;let q=Z&b6.IgnoreBaseGlyphs,U=Z&b6.IgnoreLigatures,W=Z&b6.IgnoreMarks,H=s0(Z);for(let _=0;_<Q.infos.length;_++){let N=Q.infos[_];if(!N)continue;let V=H8(J,N.glyphId);if(q&&V===1)K[_]=1;else if(U&&V===2)K[_]=1;else if(W&&V===3)K[_]=1;else if(H!==0&&V===3){if(J.markAttachClassDef.get(N.glyphId)!==H)K[_]=1}}return K}function HW($,Q){let Z=new Int16Array(Q),K=-1;for(let J=Q-1;J>=0;J--)if(Z[J]=K,!$[J])K=J;return Z}function cj($,Q){if(!Q.gdef)return!1;let{infos:Z,length:K}=$;for(let J=0;J<K;J++){let q=Z[J];if(!q)continue;if(H8(Q.gdef,q.glyphId)===3)return!0}return!1}function ij($,Q,Z){let K=new Int16Array($.infos.length);K.fill(-1);let J=-1;for(let q=0;q<$.infos.length;q++){let U=$.infos[q];if(!U)continue;let W=l8(Z,U.glyphId,Q);if(W===1||W===0||W===2)J=q;else if(W===3)K[q]=J}return K}var sj=[];function aj($,Q,Z={}){let K=sj.pop();if(!K)K=O8.withCapacity(64);return _W($,Q,K,Z),K}function _W($,Q,Z,K={}){let J=pj($),q=oj($),U=K.script??Q.script??"latn",W=K.language??Q.language??null,H=K.direction??"ltr",_=K.features??[],N=q.normalizedCoords.length>0?q.normalizedCoords:null,V=U1(J,U,W,H,_,N);if(Z.reset(),Z.direction=Q.direction,Z.script=U,Z.language=W,Z.initFromCodepointsWithFont(Q.codepoints,Q.clusters,J),rj(Z,U),ej(J,Z,V),zz(q,Z),J.gpos!==null&&V.gposLookups.length>0)Gz(J,Z,V);else S$(J,Z.infos,Z.positions),C$(J,Z.infos,Z.positions);if(!J.gsub&&J.morx)Cz(J,Z);if(H==="rtl")Z.reverse()}function rj($,Q){if(Q==="arab"||Q==="syrc"||Q==="mand"||Q==="nko "){m$($.infos);return}if(Q==="hebr"){l$($.infos);return}if(Q==="hang"||Q==="kore"){let Z=f$($.infos);if(Z.length!==$.infos.length)$.initFromInfos(Z);x$($.infos);return}if(Q==="deva"||Q==="beng"||Q==="guru"||Q==="gujr"||Q==="orya"||Q==="taml"||Q==="telu"||Q==="knda"||Q==="mlym"){d$($.infos),n$($.infos);return}if(Q==="thai"||Q==="lao "){H1($.infos),_1($.infos);return}if(Q==="khmr"){p$($.infos),o$($.infos);return}if(Q==="mymr"){c$($.infos),i$($.infos);return}if(KW(Q)){qW($.infos),UW($.infos);return}if(Q==="Zyyy"||Q==="Zinh"||Q==="Zzzz")tj($.infos)}function tj($){if($.length===0)return;let Q=Math.min(10,$.length);for(let Z=0;Z<Q;Z++){let J=$[Z].codepoint;if(J>=1536&&J<=1791||J>=1872&&J<=1919||J>=2208&&J<=2303){m$($);return}if(J>=1424&&J<=1535){l$($);return}if(lU(J)){let q=f$($);if(q.length!==$.length)$.length=0,$.push(...q);x$($);return}if(tU(J)){d$($),n$($);return}if(a$(J)){H1($),_1($);return}if(r$(J)){H1($),_1($);return}if(QW(J)){p$($),o$($);return}if(ZW(J)){c$($),i$($);return}}}function ej($,Q,Z){let K=Z.gsubLookups,J=new _6,q=Q.infos;for(let U=0;U<Q.length;U++)J.add(q[U].glyphId);for(let U=0;U<K.length;U++){let W=K[U];if(!J.mayIntersect(W.lookup.digest))continue;let H=Q.length;if($z($,Q,W.lookup,Z),Q.length!==H){J=new _6;for(let _=0;_<Q.length;_++)J.add(q[_].glyphId)}}Q.compact()}function $z($,Q,Z,K){switch(Z.type){case 1:Qz($,Q,Z);break;case 2:Zz($,Q,Z);break;case 3:Kz($,Q,Z);break;case 4:Jz($,Q,Z);break;case 5:qz($,Q,Z,K);break;case 6:Uz($,Q,Z,K);break;case 8:Wz($,Q,Z);break}}function Qz($,Q,Z){let K=Q.infos,J=K.length,q=Z.digest;if(Z.flag===0||!$.gdef){if(Z.subtables.length===1){let W=Z.subtables[0];if(W.format===1&&W.deltaGlyphId!==void 0){let H=W.deltaGlyphId;for(let _=0;_<J;_++){let N=K[_];if(!q.mayHave(N.glyphId))continue;if(W.coverage.get(N.glyphId)!==null)N.glyphId=N.glyphId+H&65535}}else if(W.format===2&&W.substituteGlyphIds){let H=W.substituteGlyphIds;for(let _=0;_<J;_++){let N=K[_];if(!q.mayHave(N.glyphId))continue;let V=W.coverage.get(N.glyphId);if(V!==null){let X=H[V];if(X!==void 0)N.glyphId=X}}}return}for(let W=0;W<J;W++){let H=K[W];if(!q.mayHave(H.glyphId))continue;let _=e9(Z,H.glyphId);if(_!==null)H.glyphId=_}return}let U=V8($,Q,Z.flag);for(let W=0;W<J;W++){if(U[W])continue;let H=K[W];if(!q.mayHave(H.glyphId))continue;let _=e9(Z,H.glyphId);if(_!==null)H.glyphId=_}}function Zz($,Q,Z){let K=Z.digest,J=0;while(J<Q.infos.length){let q=Q.infos[J];if(!q){J++;continue}if(G6($,q.glyphId,Z.flag)){J++;continue}if(!K.mayHave(q.glyphId)){J++;continue}let U=!1,W=Z.subtables;for(let H=0;H<W.length;H++){let _=W[H],N=_.coverage.get(q.glyphId);if(N===null)continue;let V=_.sequences[N];if(!V||V.length===0)continue;let X=V[0];if(X===void 0)continue;q.glyphId=X;for(let j=1;j<V.length;j++){let G={glyphId:V[j],cluster:q.cluster,mask:q.mask,codepoint:q.codepoint},Y={xAdvance:0,yAdvance:0,xOffset:0,yOffset:0};Q.insertGlyph(J+j,G,Y)}J+=V.length,U=!0;break}if(!U)J++}}function Kz($,Q,Z){let K=Q.infos,J=Z.subtables,q=Z.digest;for(let U=0;U<K.length;U++){let W=K[U];if(G6($,W.glyphId,Z.flag))continue;if(!q.mayHave(W.glyphId))continue;for(let H=0;H<J.length;H++){let _=J[H],N=_.coverage.get(W.glyphId);if(N===null)continue;let V=_.alternateSets[N];if(!V||V.length===0)continue;let X=V[0];if(X===void 0)continue;W.glyphId=X;break}}}function Jz($,Q,Z){let K=Q.infos,J=K.length,q=Z.flag!==0&&$.gdef!==null,U=Z.digest,W=null;if(q)W=V8($,Q,Z.flag);let H=0;while(H<J){if(Q.isDeleted(H)){H++;continue}let _=K[H];if(!_){H++;continue}if(W?.[H]){H++;continue}if(!U.mayHave(_.glyphId)){H++;continue}let N=1;t$[0]=H,e$[0]=_.glyphId;for(let X=H+1;X<J&&N<16;X++){if(Q.isDeleted(X))continue;let j=K[X];if(!j)continue;if(W?.[X])continue;t$[N]=X,e$[N]=j.glyphId,N++}let V=gq(Z,e$,N,0);if(V){_.glyphId=V.ligatureGlyph;for(let X=1;X<V.consumed;X++){let j=t$[X];if(j!==void 0){let z=K[j];if(z)_.cluster=Math.min(_.cluster,z.cluster);Q.markDeleted(j)}}}H++}}function qz($,Q,Z,K){let J=Q.infos,q=J.length,U=Z.digest,W=null;if(Z.flag!==0&&$.gdef!==null)W=V8($,Q,Z.flag);let H=Z.subtables;for(let _=0;_<q;_++){let N=J[_];if(!N)continue;if(W?.[_])continue;if(!U.mayHave(N.glyphId))continue;for(let V=0;V<H.length;V++){let X=H[V],j=!1,z=[];if(X.format===1){let G=Hz($,Q,_,X,Z.flag);if(G)j=!0,z=G}else if(X.format===2){let G=_z($,Q,_,X,Z.flag);if(G)j=!0,z=G}else if(X.format===3){if(Nz($,Q,_,X,Z.flag))j=!0,z=X.lookupRecords}if(j){NW($,Q,_,z,K);break}}}}function Uz($,Q,Z,K){let J=Q.infos,q=J.length,U=Z.digest,W=null;if(Z.flag!==0&&$.gdef!==null)W=V8($,Q,Z.flag);let H=Z.subtables;for(let _=0;_<q;_++){let N=J[_];if(!N)continue;if(W?.[_])continue;if(!U.mayHave(N.glyphId))continue;for(let V=0;V<H.length;V++){let X=H[V],j=!1,z=[];if(X.format===1){let G=Vz($,Q,_,X,Z.flag);if(G)j=!0,z=G}else if(X.format===2){let G=Xz($,Q,_,X,Z.flag);if(G)j=!0,z=G}else if(X.format===3){if(jz($,Q,_,X,Z.flag))j=!0,z=X.lookupRecords}if(j){NW($,Q,_,z,K);break}}}}function Wz($,Q,Z){let K=Q.infos,J=Z.subtables,q=Z.digest;for(let U=K.length-1;U>=0;U--){let W=K[U];if(!W)continue;if(G6($,W.glyphId,Z.flag))continue;if(!q.mayHave(W.glyphId))continue;for(let H=0;H<J.length;H++){let _=J[H],N=_.coverage.get(W.glyphId);if(N===null)continue;let V=!0,X=U+1,j=_.backtrackCoverages;for(let w=0;w<j.length;w++){let F=j[w];while(X<K.length&&G6($,K[X]?.glyphId,Z.flag))X++;if(X>=K.length||F.get(K[X]?.glyphId)===null){V=!1;break}X++}if(!V)continue;let z=!0,G=U-1,Y=_.lookaheadCoverages;for(let w=0;w<Y.length;w++){let F=Y[w];while(G>=0&&G6($,K[G]?.glyphId,Z.flag))G--;if(G<0||F.get(K[G]?.glyphId)===null){z=!1;break}G--}if(!z)continue;let E=_.substituteGlyphIds[N];if(E!==void 0)W.glyphId=E;break}}}function Hz($,Q,Z,K,J){let q=Q.infos[Z]?.glyphId,U=K.coverage.get(q);if(U===null)return null;let W=K.ruleSets[U];if(!W)return null;for(let H=0;H<W.length;H++){let _=W[H];if(E9($,Q,Z+1,_.inputSequence,J))return _.lookupRecords}return null}function _z($,Q,Z,K,J){let q=Q.infos[Z]?.glyphId;if(K.coverage.get(q)===null)return null;let W=K.classDef.get(q),H=K.classRuleSets[W];if(!H)return null;for(let _=0;_<H.length;_++){let N=H[_];if(w9($,Q,Z+1,N.inputClasses,K.classDef,J))return N.lookupRecords}return null}function Nz($,Q,Z,K,J){let q=Q.infos,U=K.coverages,W=Z;for(let H=0;H<U.length;H++){let _=U[H];while(W<q.length&&G6($,q[W]?.glyphId,J))W++;if(W>=q.length)return!1;if(_.get(q[W]?.glyphId)===null)return!1;W++}return!0}function Vz($,Q,Z,K,J){let q=Q.infos[Z]?.glyphId,U=K.coverage.get(q);if(U===null)return null;let W=K.chainRuleSets[U];if(!W)return null;for(let H=0;H<W.length;H++){let _=W[H];if(!XW($,Q,Z-1,_.backtrackSequence,J))continue;if(!E9($,Q,Z+1,_.inputSequence,J))continue;let N=Z+1;for(let V=0;V<_.inputSequence.length;V++){while(N<Q.infos.length&&G6($,Q.infos[N]?.glyphId,J))N++;N++}if(!E9($,Q,N,_.lookaheadSequence,J))continue;return _.lookupRecords}return null}function Xz($,Q,Z,K,J){let q=Q.infos[Z]?.glyphId;if(K.coverage.get(q)===null)return null;let W=K.inputClassDef.get(q),H=K.chainClassRuleSets[W];if(!H)return null;for(let _=0;_<H.length;_++){let N=H[_];if(!jW($,Q,Z-1,N.backtrackClasses,K.backtrackClassDef,J))continue;if(!w9($,Q,Z+1,N.inputClasses,K.inputClassDef,J))continue;let V=Q.infos,X=Z+1;for(let j=0;j<N.inputClasses.length;j++){while(X<V.length&&G6($,V[X]?.glyphId,J))X++;X++}if(!w9($,Q,X,N.lookaheadClasses,K.lookaheadClassDef,J))continue;return N.lookupRecords}return null}function jz($,Q,Z,K,J){let q=Q.infos,U=Z-1,W=K.backtrackCoverages;for(let X=0;X<W.length;X++){let j=W[X];while(U>=0&&G6($,q[U]?.glyphId,J))U--;if(U<0)return!1;if(j.get(q[U]?.glyphId)===null)return!1;U--}let H=Z,_=K.inputCoverages;for(let X=0;X<_.length;X++){let j=_[X];while(H<q.length&&G6($,q[H]?.glyphId,J))H++;if(H>=q.length)return!1;if(j.get(q[H]?.glyphId)===null)return!1;H++}let N=H,V=K.lookaheadCoverages;for(let X=0;X<V.length;X++){let j=V[X];while(N<q.length&&G6($,q[N]?.glyphId,J))N++;if(N>=q.length)return!1;if(j.get(q[N]?.glyphId)===null)return!1;N++}return!0}function NW($,Q,Z,K,J){let q=K.length;if(q===0)return;if(q===1){let W=K[0],H=J.gsubLookupMap.get(W.lookupListIndex);if(!H)return;let _=Z+W.sequenceIndex;if(_>=Q.infos.length)return;let N=Q.infos[_];if(!N)return;if(H.lookup.type===1){let V=e9(H.lookup,N.glyphId);if(V!==null)N.glyphId=V}return}let U=new Uint8Array(q);for(let W=0;W<q;W++){let H=-1,_=-1;for(let z=0;z<q;z++){if(U[z])continue;let G=K[z]?.sequenceIndex;if(G>_)_=G,H=z}if(H<0)break;U[H]=1;let N=K[H],V=J.gsubLookupMap.get(N.lookupListIndex);if(!V)continue;let X=Z+N.sequenceIndex;if(X>=Q.infos.length)continue;let j=Q.infos[X];if(!j)continue;if(V.lookup.type===1){let z=e9(V.lookup,j.glyphId);if(z!==null)j.glyphId=z}}}function zz($,Q){let{infos:Z,positions:K}=Q,J=Z.length,U=$.font.hmtx.hMetrics,W=U.length,H=U[W-1]?.advanceWidth??0;if(!($.normalizedCoords.length>0)){for(let N=0;N<J;N++){let V=Z[N].glyphId;K[N].xAdvance=V<W?U[V]?.advanceWidth??0:H}return}for(let N=0;N<J;N++){let V=Z[N];K[N].xAdvance=$.advanceWidth(V.glyphId)}}function l8($,Q,Z){let K=Z.get(Q);if(K===void 0)K=H8($.gdef,Q),Z.set(Q,K);return K}function Gz($,Q,Z){let K=new _6,J=Q.infos,q=Q.length;for(let N=0;N<q;N++)K.add(J[N].glyphId);let U=cj(Q,$),W,H;if(U)H=new Map,W=ij(Q,H,$);else W=Yz,H=Ez;let _=Z.gposLookups;for(let N=0;N<_.length;N++){let V=_[N];if(!K.mayIntersect(V.lookup.digest))continue;$Q($,Q,V.lookup,Z,H,W,U)}}var Yz=new Int16Array(0),Ez=new Map;function $Q($,Q,Z,K,J,q,U){switch(Z.type){case 1:wz($,Q,Z,U);break;case 2:Az($,Q,Z,U);break;case 3:Fz($,Q,Z,U);break;case 4:if(!U)break;Lz($,Q,Z,J,q);break;case 5:if(!U)break;Dz($,Q,Z,J,q);break;case 6:if(!U)break;Bz($,Q,Z,J);break;case 7:Mz($,Q,Z,K,J,q,U);break;case 8:Rz($,Q,Z,K,J,q,U);break}}function wz($,Q,Z,K){let{infos:J,positions:q}=Q,U=J.length,W=Z.digest,H=Z.subtables,_=K&&Z.flag!==0&&$.gdef!==null;if(H.length===1&&!_){let X=H[0];if(X.format===1&&X.value){let j=X.value,z=j.xPlacement!==void 0&&j.xPlacement!==0,G=j.yPlacement!==void 0&&j.yPlacement!==0,Y=j.xAdvance!==void 0&&j.xAdvance!==0,E=j.yAdvance!==void 0&&j.yAdvance!==0;if(!z&&!G&&!Y&&!E)return;for(let w=0;w<U;w++){let F=J[w];if(!W.mayHave(F.glyphId))continue;if(X.coverage.get(F.glyphId)===null)continue;let A=q[w];if(z)A.xOffset+=j.xPlacement;if(G)A.yOffset+=j.yPlacement;if(Y)A.xAdvance+=j.xAdvance;if(E)A.yAdvance+=j.yAdvance}return}}let N=(X)=>{let j=J[X];if(!W.mayHave(j.glyphId))return;let z=q[X];if(!z)return;for(let G=0;G<H.length;G++){let Y=H[G],E=Y.coverage.get(j.glyphId);if(E===null)continue;let w=Y.format===1?Y.value:Y.values?.[E];if(w){if(w.xPlacement)z.xOffset+=w.xPlacement;if(w.yPlacement)z.yOffset+=w.yPlacement;if(w.xAdvance)z.xAdvance+=w.xAdvance;if(w.yAdvance)z.yAdvance+=w.yAdvance}break}};if(!_){for(let X=0;X<U;X++)N(X);return}let V=V8($,Q,Z.flag);for(let X=0;X<U;X++){if(V[X])continue;N(X)}}function Az($,Q,Z,K){let{infos:J,positions:q}=Q,U=J.length,W=Z.digest,H=Z.subtables,_=H.length;if(!(K&&Z.flag!==0&&$.gdef!==null)){if(_===1){let j=H[0],z=j.coverage;if(j.format===1){let G=j.pairSets;for(let Y=0;Y<U-1;Y++){let E=J[Y].glyphId;if(!W.mayHave(E))continue;let w=z.get(E);if(w===null)continue;let F=G[w];if(!F)continue;let A=J[Y+1].glyphId,B=F.pairValueRecords,L=0,O=B.length-1;while(L<=O){let M=L+O>>>1,P=B[M],T=P.secondGlyph;if(T<A)L=M+1;else if(T>A)O=M-1;else{let x=P.value1.xAdvance;if(x)q[Y].xAdvance+=x;break}}}}else{let{classDef1:G,classDef2:Y,class1Records:E}=j,w=E.length;for(let F=0;F<U-1;F++){let A=J[F].glyphId;if(!W.mayHave(A))continue;if(z.get(A)===null)continue;let B=G.get(A);if(B>=w)continue;let L=E[B],O=J[F+1].glyphId,M=Y.get(O),P=L.class2Records;if(M>=P.length)continue;let T=P[M].value1.xAdvance;if(T)q[F].xAdvance+=T}}return}if(_===2){let j=H[0],z=H[1];if(j.format===1&&z.format===2){let{coverage:G,pairSets:Y}=j,E=z.coverage,w=z.classDef1,F=z.classDef2,A=z.class1Records,B=A.length;for(let L=0;L<U-1;L++){let O=J[L].glyphId;if(!W.mayHave(O))continue;let M=J[L+1].glyphId,P=G.get(O);if(P!==null){let T=Y[P];if(T){let x=T.pairValueRecords,I=0,f=x.length-1,l=!1;while(I<=f){let C=I+f>>>1,R=x[C],y=R.secondGlyph;if(y<M)I=C+1;else if(y>M)f=C-1;else{let u=R.value1.xAdvance;if(u)q[L].xAdvance+=u;l=!0;break}}if(l)continue}}if(E.get(O)!==null){let T=w.get(O);if(T<B){let x=A[T],I=F.get(M),f=x.class2Records;if(I<f.length){let l=f[I].value1.xAdvance;if(l)q[L].xAdvance+=l}}}}return}}for(let j=0;j<U-1;j++){let z=J[j];if(!W.mayHave(z.glyphId))continue;let G=J[j+1],Y=q[j],E=q[j+1];H$(Z,z.glyphId,G.glyphId,Y,E)}return}let V=V8($,Q,Z.flag),X=HW(V,U);for(let j=0;j<U-1;j++){if(V[j])continue;let z=X[j];if(z<0)break;let G=J[j];if(!W.mayHave(G.glyphId))continue;let Y=J[z],E=q[j],w=q[z];H$(Z,G.glyphId,Y.glyphId,E,w)}}function Fz($,Q,Z,K){let{infos:J,positions:q}=Q,U=J.length,W=Z.digest,H=Z.subtables,_=(j,z)=>{let G=J[j],Y=J[z];if(!W.mayHave(G.glyphId)&&!W.mayHave(Y.glyphId))return;for(let E=0;E<H.length;E++){let w=H[E],F=w.coverage.get(G.glyphId),A=w.coverage.get(Y.glyphId);if(F===null||A===null)continue;let B=w.entryExitRecords[F],L=w.entryExitRecords[A];if(!B?.exitAnchor||!L?.entryAnchor)continue;let O=B.exitAnchor,M=L.entryAnchor,P=q[z];if(P)P.yOffset=O.yCoordinate-M.yCoordinate;break}};if(!(K&&Z.flag!==0&&$.gdef!==null)){for(let j=0;j<U-1;j++)_(j,j+1);return}let V=V8($,Q,Z.flag),X=HW(V,U);for(let j=0;j<U-1;j++){if(V[j])continue;let z=X[j];if(z<0)break;_(j,z)}}function Lz($,Q,Z,K,J){let q=Z.digest,U=Q.infos,W=Q.positions,H=Z.subtables;for(let _=0;_<U.length;_++){let N=U[_];if(!N)continue;if(!q.mayHave(N.glyphId))continue;if(l8($,N.glyphId,K)!==3)continue;let V=J[_];if(V<0)continue;let X=U[V];if(!X)continue;for(let j=0;j<H.length;j++){let z=H[j],G=z.markCoverage.get(N.glyphId),Y=z.baseCoverage.get(X.glyphId);if(G===null||Y===null)continue;let E=z.markArray.markRecords[G],w=z.baseArray[Y];if(!E||!w)continue;let F=w.baseAnchors[E.markClass];if(!F)continue;let A=E.markAnchor,B=W[_],L=W[V];if(!B||!L)continue;B.xOffset=F.xCoordinate-A.xCoordinate+L.xOffset,B.yOffset=F.yCoordinate-A.yCoordinate+L.yOffset,B.xAdvance=0,B.yAdvance=0;break}}}function Dz($,Q,Z,K,J){let q=Z.digest,U=Q.infos,W=Q.positions,H=Z.subtables;for(let _=0;_<U.length;_++){let N=U[_];if(!N)continue;if(!q.mayHave(N.glyphId))continue;if(l8($,N.glyphId,K)!==3)continue;let V=J[_];if(V<0)continue;let X=U[V];if(!X)continue;if(l8($,X.glyphId,K)!==2)continue;let j=0;for(let z=V+1;z<_;z++){let G=U[z];if(G&&l8($,G.glyphId,K)===3)j++}for(let z=0;z<H.length;z++){let G=H[z],Y=G.markCoverage.get(N.glyphId),E=G.ligatureCoverage.get(X.glyphId);if(Y===null||E===null)continue;let w=G.markArray.markRecords[Y],F=G.ligatureArray[E];if(!w||!F)continue;let A=Math.min(j,F.componentRecords.length-1),B=F.componentRecords[A];if(!B)continue;let L=B.ligatureAnchors[w.markClass];if(!L)continue;let O=w.markAnchor,M=W[_],P=W[V];if(!M||!P)continue;M.xOffset=L.xCoordinate-O.xCoordinate+P.xOffset,M.yOffset=L.yCoordinate-O.yCoordinate+P.yOffset,M.xAdvance=0,M.yAdvance=0;break}}}function Bz($,Q,Z,K){let J=Z.digest,q=Q.infos,U=Q.positions,W=Z.subtables;for(let H=0;H<q.length;H++){let _=q[H];if(!_)continue;if(!J.mayHave(_.glyphId))continue;if(l8($,_.glyphId,K)!==3)continue;let N=-1;if(H>0){let X=q[H-1];if(X){if(l8($,X.glyphId,K)===3)N=H-1}}if(N<0)continue;let V=q[N];if(!V)continue;for(let X=0;X<W.length;X++){let j=W[X],z=j.mark1Coverage.get(_.glyphId),G=j.mark2Coverage.get(V.glyphId);if(z===null||G===null)continue;let Y=j.mark1Array.markRecords[z],E=j.mark2Array[G];if(!Y||!E)continue;let w=E.mark2Anchors[Y.markClass];if(!w)continue;let F=Y.markAnchor,A=U[H],B=U[N];if(!A||!B)continue;A.xOffset=w.xCoordinate-F.xCoordinate+B.xOffset,A.yOffset=w.yCoordinate-F.yCoordinate+B.yOffset;break}}}function Mz($,Q,Z,K,J,q,U){let W=Q.infos,H=W.length,_=Z.digest,N=Z.subtables,V=null;if(Z.flag!==0&&$.gdef!==null)V=V8($,Q,Z.flag);for(let X=0;X<H;X++){let j=W[X];if(!j)continue;if(V?.[X])continue;if(!_.mayHave(j.glyphId))continue;for(let z=0;z<N.length;z++){let G=N[z],Y=!1,E=[];if(G.format===1){let w=Tz($,Q,X,G,Z.flag);if(w)Y=!0,E=w}else if(G.format===2){let w=Oz($,Q,X,G,Z.flag);if(w)Y=!0,E=w}else if(G.format===3){if(Pz($,Q,X,G,Z.flag))Y=!0,E=G.lookupRecords}if(Y){VW($,Q,X,E,K,J,q,U);break}}}}function Rz($,Q,Z,K,J,q,U){let W=Q.infos,H=W.length,_=Z.digest,N=Z.subtables,V=null;if(Z.flag!==0&&$.gdef!==null)V=V8($,Q,Z.flag);for(let X=0;X<H;X++){let j=W[X];if(!j)continue;if(V?.[X])continue;if(!_.mayHave(j.glyphId))continue;for(let z=0;z<N.length;z++){let G=N[z],Y=!1,E=[];if(G.format===1){let w=vz($,Q,X,G,Z.flag);if(w)Y=!0,E=w}else if(G.format===2){let w=Iz($,Q,X,G,Z.flag);if(w)Y=!0,E=w}else if(G.format===3){if(kz($,Q,X,G,Z.flag))Y=!0,E=G.lookupRecords}if(Y){VW($,Q,X,E,K,J,q,U);break}}}}function Tz($,Q,Z,K,J){let q=Q.infos[Z]?.glyphId,U=K.coverage.get(q);if(U===null)return null;let W=K.ruleSets[U];if(!W)return null;for(let H=0;H<W.length;H++){let _=W[H];if(E9($,Q,Z+1,_.inputSequence,J))return _.lookupRecords}return null}function Oz($,Q,Z,K,J){let q=Q.infos[Z]?.glyphId;if(K.coverage.get(q)===null)return null;let W=K.classDef.get(q),H=K.classRuleSets[W];if(!H)return null;for(let _=0;_<H.length;_++){let N=H[_];if(w9($,Q,Z+1,N.inputClasses,K.classDef,J))return N.lookupRecords}return null}function Pz($,Q,Z,K,J){let q=Q.infos,U=K.coverages,W=Z;for(let H=0;H<U.length;H++){let _=U[H];while(W<q.length&&G6($,q[W]?.glyphId,J))W++;if(W>=q.length)return!1;if(_.get(q[W]?.glyphId)===null)return!1;W++}return!0}function vz($,Q,Z,K,J){let q=Q.infos[Z]?.glyphId,U=K.coverage.get(q);if(U===null)return null;let W=K.chainRuleSets[U];if(!W)return null;for(let H=0;H<W.length;H++){let _=W[H];if(!XW($,Q,Z-1,_.backtrackSequence,J))continue;if(!E9($,Q,Z+1,_.inputSequence,J))continue;let N=Z+1;for(let V=0;V<_.inputSequence.length;V++){while(N<Q.infos.length&&G6($,Q.infos[N]?.glyphId,J))N++;N++}if(!E9($,Q,N,_.lookaheadSequence,J))continue;return _.lookupRecords}return null}function Iz($,Q,Z,K,J){let q=Q.infos[Z]?.glyphId;if(K.coverage.get(q)===null)return null;let W=K.inputClassDef.get(q),H=K.chainClassRuleSets[W];if(!H)return null;for(let _=0;_<H.length;_++){let N=H[_];if(!jW($,Q,Z-1,N.backtrackClasses,K.backtrackClassDef,J))continue;if(!w9($,Q,Z+1,N.inputClasses,K.inputClassDef,J))continue;let V=Q.infos,X=Z+1;for(let j=0;j<N.inputClasses.length;j++){while(X<V.length&&G6($,V[X]?.glyphId,J))X++;X++}if(!w9($,Q,X,N.lookaheadClasses,K.lookaheadClassDef,J))continue;return N.lookupRecords}return null}function kz($,Q,Z,K,J){let q=Q.infos,U=Z-1,W=K.backtrackCoverages;for(let X=0;X<W.length;X++){let j=W[X];while(U>=0&&G6($,q[U]?.glyphId,J))U--;if(U<0)return!1;if(j.get(q[U]?.glyphId)===null)return!1;U--}let H=Z,_=K.inputCoverages;for(let X=0;X<_.length;X++){let j=_[X];while(H<q.length&&G6($,q[H]?.glyphId,J))H++;if(H>=q.length)return!1;if(j.get(q[H]?.glyphId)===null)return!1;H++}let N=H,V=K.lookaheadCoverages;for(let X=0;X<V.length;X++){let j=V[X];while(N<q.length&&G6($,q[N]?.glyphId,J))N++;if(N>=q.length)return!1;if(j.get(q[N]?.glyphId)===null)return!1;N++}return!0}function VW($,Q,Z,K,J,q,U,W){let H=K.length;if(H===0)return;if(H===1){let N=K[0],V=J.gposLookupMap.get(N.lookupListIndex);if(!V)return;if(Z+N.sequenceIndex>=Q.infos.length)return;$Q($,Q,V.lookup,J,q,U,W);return}let _=new Uint8Array(H);for(let N=0;N<H;N++){let V=-1,X=-1;for(let Y=0;Y<H;Y++){if(_[Y])continue;let E=K[Y].sequenceIndex;if(E>X)X=E,V=Y}if(V<0)break;_[V]=1;let j=K[V],z=J.gposLookupMap.get(j.lookupListIndex);if(!z)continue;if(Z+j.sequenceIndex>=Q.infos.length)continue;$Q($,Q,z.lookup,J,q,U,W)}}function E9($,Q,Z,K,J){let q=Z;for(let U=0;U<K.length;U++){let W=K[U];while(q<Q.infos.length&&G6($,Q.infos[q]?.glyphId,J))q++;if(q>=Q.infos.length)return!1;if(Q.infos[q]?.glyphId!==W)return!1;q++}return!0}function XW($,Q,Z,K,J){let q=Q.infos,U=Z;for(let W=0;W<K.length;W++){let H=K[W];while(U>=0&&G6($,q[U]?.glyphId,J))U--;if(U<0)return!1;if(q[U]?.glyphId!==H)return!1;U--}return!0}function w9($,Q,Z,K,J,q){let U=Q.infos,W=Z;for(let H=0;H<K.length;H++){let _=K[H];while(W<U.length&&G6($,U[W]?.glyphId,q))W++;if(W>=U.length)return!1;if(J.get(U[W]?.glyphId)!==_)return!1;W++}return!0}function jW($,Q,Z,K,J,q){let U=Q.infos,W=Z;for(let H=0;H<K.length;H++){let _=K[H];while(W>=0&&G6($,U[W]?.glyphId,q))W--;if(W<0)return!1;if(J.get(U[W]?.glyphId)!==_)return!1;W--}return!0}function G6($,Q,Z){if((Z&14)===0&&(Z&65280)===0)return!1;let K=$.gdef;if(!K)return!1;let J=H8(K,Q);if(Z&b6.IgnoreBaseGlyphs&&J===1)return!0;if(Z&b6.IgnoreLigatures&&J===2)return!0;if(Z&b6.IgnoreMarks&&J===3)return!0;let q=s0(Z);if(q!==0&&J===3){if(K.markAttachClassDef.get(Q)!==q)return!0}return!1}function Cz($,Q){let Z=$.morx;if(!Z)return;let K=Z.chains;for(let J=0;J<K.length;J++){let q=K[J],U=q.subtables;for(let W=0;W<U.length;W++){let H=U[W];if((q.defaultFlags&H.subFeatureFlags)===0)continue;switch(H.type){case 4:{let _=Q.infos;for(let N=0;N<_.length;N++){let V=_[N],X=D$(H,V.glyphId);if(X!==null)V.glyphId=X}break}case 0:T1(H,Q.infos);break;case 1:O1(H,Q.infos);break;case 2:{let _=P1(H,Q.infos);if(_.length!==Q.infos.length)Q.initFromInfos(_);break}case 5:{let _=v1(H,Q.infos);if(_.length!==Q.infos.length)Q.initFromInfos(_);break}}}}}var QQ={pairs:"14>1,1e>2,u>2,2wt>1,1>1,1ge>1,1wp>1,1j>1,f>1,hm>1,1>1,u>1,u6>1,1>1,+5,28>1,w>1,1>1,+3,b8>1,1>1,+3,1>3,-1>-1,3>1,1>1,+2,1s>1,1>1,x>1,th>1,1>1,+2,db>1,1>1,+3,3>1,1>1,+2,14qm>1,1>1,+1,4q>1,1e>2,u>2,2>1,+1",canonical:"6f1>-6dx,6dy>-6dx,6ec>-6ed,6ee>-6ed,6ww>2jj,-2ji>2jj,14r4>-1e7l,1e7m>-1e7l,1e7m>-1e5c,1e5d>-1e5b,1e5c>-14qx,14qy>-14qx,14vn>-1ecg,1ech>-1ecg,1edu>-1ecg,1eci>-1ecg,1eda>-1ecg,1eci>-1ecg,1eci>-168q,168r>-168q,168s>-14ye,14yf>-14ye"};function q0($,Q){let K=0,J=new Map,q=Q?new Map:null,U="";function W(H){if(H.indexOf("+")!==-1)for(let _=+H;_--;)W(U);else{U=H;let _=H.split(">"),N=_[0]??"",V=_[1]??"";K+=parseInt(N,36);let X=String.fromCodePoint(K);K+=parseInt(V,36);let j=String.fromCodePoint(K);if(J.set(X,j),q)q.set(j,X)}}return $.split(",").forEach(W),{map:J,reverseMap:q}}var ZQ=null,zW=null,GW=null;function KQ(){if(!ZQ){let{map:$,reverseMap:Q}=q0(QQ.pairs,!0);ZQ=$,zW=Q,GW=q0(QQ.canonical,!1).map}}function N1($){return KQ(),ZQ?.get($)||null}function V1($){return KQ(),zW?.get($)||null}function X1($){return KQ(),GW?.get($)||null}var U0={R:"13k,1a,2,3,3,2+1j,ch+16,a+1,5+2,2+n,5,a,4,6+16,4+3,h+1b,4mo,179q,2+9,2+11,2i9+7y,2+68,4,3+4,5+13,4+3,2+4k,3+29,8+cf,1t+7z,w+17,3+3m,1t+3z,16o1+5r,8+30,8+mc,29+1r,29+4v,75+73",EN:"1c+9,3d+1,6,187+9,513,4+5,7+9,sf+j,175h+9,qw+q,161f+1d,4xt+a,25i+9",ES:"17,2,6dp+1,f+1,av,16vr,mx+1,4o,2",ET:"z+2,3h+3,b+1,ym,3e+1,2o,p4+1,8,6u,7c,g6,1wc,1n9+4,30+1b,2n,6d,qhx+1,h0m,a+1,49+2,63+1,4+1,6bb+3,12jj",AN:"16o+5,2j+9,2+1,35,ed,1ff2+9,87+u",CS:"18,2+1,b,2u,12k,55v,l,17v0,2,3,53,2+1,b",B:"a,3,f+2,2v,690",S:"9,2,k",WS:"c,k,4f4,1vk+a,u,1j,335",ON:"x+1,4+4,h+5,r+5,r+3,z,5+3,2+1,2+1,5,2+2,3+4,o,w,ci+1,8+d,3+d,6+8,2+g,39+1,9,6+1,2,33,b8,3+1,3c+1,7+1,5r,b,7h+3,sa+5,2,3i+6,jg+3,ur+9,2v,ij+1,9g+9,7+a,8m,4+1,49+x,14u,2+2,c+2,e+2,e+2,e+1,i+n,e+e,2+p,u+2,e+2,36+1,2+3,2+1,b,2+2,6+5,2,2,2,h+1,5+4,6+3,3+f,16+2,5+3l,3+81,1y+p,2+40,q+a,m+13,2r+ch,2+9e,75+hf,3+v,2+2w,6e+5,f+6,75+2a,1a+p,2+2g,d+5x,r+b,6+3,4+o,g,6+1,6+2,2k+1,4,2j,5h+z,1m+1,1e+f,t+2,1f+e,d+3,4o+3,2s+1,w,535+1r,h3l+1i,93+2,2s,b+1,3l+x,2v,4g+3,21+3,kz+1,g5v+1,5a,j+9,n+v,2,3,2+8,2+1,3+2,2,3,46+1,4+4,h+5,r+5,r+a,3h+2,4+6,b+4,78,1r+24,4+c,4,1hb,ey+6,103+j,16j+c,1ux+7,5+g,fsh,jdq+1t,4,57+2e,p1,1m,1m,1m,1m,4kt+1,7j+17,5+2r,d+e,3+e,2+e,2+10,m+4,w,1n+5,1q,4z+5,4b+rb,9+c,4+c,4+37,d+2g,8+b,l+b,5+1j,9+9,7+13,9+t,3+1,27+3c,2+29,2+3q,d+d,3+4,4+2,6+6,a+o,8+6,a+2,e+6,16+42,2+1i",BN:"0+8,6+d,2s+5,2+p,e,4m9,1kt+2,2b+5,5+5,17q9+v,7k,6p+8,6+1,119d+3,440+7,96s+1,1ekf+1,1ekf+1,1ekf+1,1ekf+1,1ekf+1,1ekf+1,1ekf+1,1ekf+1,1ekf+1,1ekf+1,1ekf+1,1ekf+75,6p+2rz,1ben+1,1ekf+1,1ekf+1",NSM:"lc+33,7o+6,7c+18,2,2+1,2+1,2,21+a,1d+k,h,2u+6,3+5,3+1,2+3,10,v+q,2k+a,1n+8,a,p+3,2+8,2+2,2+4,18+2,3c+e,2+v,1k,2,5+7,5,4+6,b+1,u,1n,5+3,9,l+1,r,3+1,1m,5+1,5+1,3+2,4,v+1,4,c+1,1m,5+4,2+1,5,l+1,n+5,2,1n,3,2+3,9,8+1,c+1,v,1q,d,1f,4,1m+2,6+2,2+3,8+1,c+1,u,1n,g+1,l+1,t+1,1m+1,5+3,9,l+1,u,21,8+2,2,2j,3+6,d+7,2r,3+8,c+5,23+1,s,2,2,1k+d,2+4,2+1,6+a,2+z,a,2v+3,2+5,2+1,3+1,q+1,5+2,h+3,e,3+1,7,g,jk+2,qb+2,u+2,u+1,v+1,1t+1,2+6,9,3+a,a,1a+2,3c+1,z,3b+2,5+1,a,7+2,64+1,3,1n,2+6,2,2,3+7,7+9,3,1d+g,1s+3,1d,2+4,2,6,15+8,d+1,x+3,3+1,2+2,1l,2+1,4,2+2,1n+7,3+1,49+2,2+c,2+6,5,7,4+1,5j+1l,2+4,k1+w,2db+2,3y,2p+v,ff+3,30+1,n9x+3,2+9,x+1,29+1,7l,4,5,q+1,6,48+1,r+h,e,13+7,q+a,1b+2,1d,3+3,3+1,14,1w+5,3+1,3+1,d,9,1c,1g,2+2,3+1,6+1,2,17+1,9,6n,3,5,fn5,ki+f,h+f,r2,6b,46+4,1af+2,2+1,6+3,15+2,5,4m+1,fy+3,as+1,4a+a,4x,1j+e,1l+2,1e+3,3+1,1y+2,11+4,2+7,1r,d+1,1h+8,b+3,3,2o+2,3,2+1,7,4h,4+7,m+1,1m+1,4,12+6,4+4,5g+7,3+2,2,o,2d+5,2,5+1,2+1,6n+3,7+1,2+1,s+1,2e+7,3,2+1,2z,2,3+5,2,2u+2,3+3,2+4,78+8,2+1,75+1,2,5,41+3,3+1,5,x+5,3+1,15+5,3+3,9,a+5,3+2,1b+c,2+1,bb+6,2+5,2d+l,3+6,2+1,2+1,3f+5,4,2+1,2+6,2,21+1,4,2,9o+1,f0c+4,1o+6,t5,1s+3,2a,f5l+1,43t+2,i+7,3+6,v+3,45+2,1j0+1i,5+1d,9,f,n+4,2+e,11t+6,2+g,3+6,2+1,2+4,7a+6,c6+3,15t+6,32+6,gzhy+6n",AL:"16w,3,2,e+1b,z+2,2+2s,g+1,8+1,b+m,2+t,s+2i,c+e,4h+f,1d+1e,1bwe+dp,3+3z,x+c,2+1,35+3y,2rm+z,5+7,b+5,dt+l,c+u,17nl+27,1t+27,4x+6n,3+d",LRO:"6ct",RLO:"6cu",LRE:"6cq",RLE:"6cr",PDF:"6cs",LRI:"6ee",RLI:"6ef",FSI:"6eg",PDI:"6eh"};var K6={},JQ={};K6.L=1;JQ[1]="L";Object.keys(U0).forEach(($,Q)=>{K6[$]=1<<Q+1;let Z=K6[$];if(Z!==void 0)JQ[Z]=$});Object.freeze(K6);function U6($){return K6[$]??0}var $8=U6("LRI")|U6("RLI")|U6("FSI"),z1=U6("L")|U6("R")|U6("AL"),C6=U6("B")|U6("S")|U6("WS")|U6("ON")|U6("FSI")|U6("LRI")|U6("RLI")|U6("PDI"),F6=U6("BN")|U6("RLE")|U6("LRE")|U6("RLO")|U6("LRO")|U6("PDF"),W0=U6("S")|U6("WS")|U6("B")|$8|U6("PDI")|F6,j1=null;function Sz(){if(!j1){j1=new Map;let $=0;for(let Q in U0)if(Object.hasOwn(U0,Q)){let Z=U0[Q],K="",J=0,q=!1,U=0;for(let W=0;W<=Z.length+1;W+=1){let H=Z[W];if(H!==","&&W!==Z.length)if(H==="+")q=!0,U=$=U+parseInt(K,36),K="";else K+=H;else{if(!q)U=$=U+parseInt(K,36),J=$;else J=$+parseInt(K,36);q=!1,K="",U=J;let _=U6(Q);for(let N=$;N<J+1;N+=1)j1.set(N,_)}}}}}function m6($){Sz();let Q=$.codePointAt(0);if(Q===void 0)return U6("L");return j1?.get(Q)??U6("L")}var x6=K6.L??1,n6=K6.R??2,S6=K6.EN??4,H0=K6.ES??8,G1=K6.ET??16,_0=K6.AN??32,Y1=K6.CS??64,A9=K6.B??128,hz=K6.S??256,E1=K6.ON??512,yz=K6.BN??1024,w1=K6.NSM??2048,A1=K6.AL??4096,YW=K6.LRO??8192,F1=K6.RLO??16384,EW=K6.LRE??32768,qQ=K6.RLE??65536,wW=K6.PDF??131072,bz=K6.LRI??262144,AW=K6.RLI??524288,mz=K6.FSI??1048576,F9=K6.PDI??2097152;function r($,Q){return $[Q]??0}function H6($,Q){return $[Q]??0}function L9($,Q){return $[Q]??""}function UQ($,Q){let K=new Uint32Array($.length);for(let G=0;G<$.length;G++)K[G]=m6(L9($,G));let J=new Map;function q(G,Y){let E=r(K,G);if(K[G]=Y,J.set(E,(J.get(E)??0)-1),E&C6)J.set(C6,(J.get(C6)??0)-1);if(J.set(Y,(J.get(Y)??0)+1),Y&C6)J.set(C6,(J.get(C6)??0)+1)}let U=new Uint8Array($.length),W=new Map,H=[],_=null;function N(G,Y){for(let E=G;E<$.length;E++){let w=r(K,E);if(w&(n6|A1))return 1;if(w&(A9|x6)||Y&&w===F9)return 0;if(w&$8){let F=V(E);E=F===-1?$.length:F}}return 0}function V(G){let Y=1;for(let E=G+1;E<$.length;E++){let w=r(K,E);if(w&A9)break;if(w&F9){if(--Y===0)return E}else if(w&$8)Y++}return-1}for(let G=0;G<$.length;G++){if(!_)_={start:G,end:$.length-1,level:Q==="rtl"?1:Q==="ltr"?0:N(G,!1)},H.push(_);if(r(K,G)&A9)_.end=G,_=null}let X=qQ|EW|F1|YW|$8|F9|wW|A9,j=(G)=>G+(G&1?1:2),z=(G)=>G+(G&1?2:1);for(let G=0;G<H.length;G++){let Y=H[G];if(!Y)continue;_=Y;let E=[{_level:_.level,_override:0,_isolate:0}],w=0,F=0,A=0;J.clear();for(let M=_.start;M<=_.end;M++){let P=r(K,M),T=E[E.length-1];if(!T)continue;if(J.set(P,(J.get(P)??0)+1),P&C6)J.set(C6,(J.get(C6)??0)+1);if(P&X){if(P&(qQ|EW)){U[M]=T._level;let x=(P===qQ?z:j)(T._level);if(x<=125&&!w&&!F)E.push({_level:x,_override:0,_isolate:0});else if(!w)F++}else if(P&(F1|YW)){U[M]=T._level;let x=(P===F1?z:j)(T._level);if(x<=125&&!w&&!F)E.push({_level:x,_override:P&F1?n6:x6,_isolate:0});else if(!w)F++}else if(P&$8){if(P&mz)P=N(M+1,!0)===1?AW:bz;if(U[M]=T._level,T._override)q(M,T._override);let x=(P===AW?z:j)(T._level);if(x<=125&&w===0&&F===0)A++,E.push({_level:x,_override:0,_isolate:1,_isolInitIndex:M});else w++}else if(P&F9){if(w>0)w--;else if(A>0){F=0;while(E.length>0){if(E[E.length-1]?._isolate)break;E.pop()}let I=E[E.length-1]?._isolInitIndex;if(I!=null)W.set(I,M),W.set(M,I);E.pop(),A--}if(T=E[E.length-1],!T)continue;if(U[M]=T._level,T._override)q(M,T._override)}else if(P&wW){if(w===0){if(F>0)F--;else if(!T._isolate&&E.length>1){if(E.pop(),T=E[E.length-1],!T)continue}}U[M]=T._level}else if(P&A9)U[M]=_.level}else if(U[M]=T._level,T._override&&P!==yz)q(M,T._override)}let B=[],L=null;for(let M=_.start;M<=_.end;M++){let P=r(K,M);if(!(P&F6)){let T=U[M]??0,x=!!(P&$8),I=P===F9;if(L&&T===L._level)L._end=M,L._endsWithIsolInit=x;else L={_start:M,_end:M,_level:T,_startsWithPDI:I,_endsWithIsolInit:x},B.push(L)}}let O=[];for(let M=0;M<B.length;M++){let P=B[M];if(!P)continue;if(!P._startsWithPDI||P._startsWithPDI&&!W.has(P._start)){L=P;let T=[P];while(L?._endsWithIsolInit){let u=W.get(L._end);if(u==null)break;let d=!1;for(let c=M+1;c<B.length;c++){let n=B[c];if(n?._start===u){L=n,T.push(n),d=!0;break}}if(!d)break}let x=[];for(let u=0;u<T.length;u++){let d=T[u];for(let c=d._start;c<=d._end;c++)x.push(c)}let I=x[0]??0,f=U[I]??0,l=_.level;for(let u=I-1;u>=0;u--)if(!(r(K,u)&F6)){l=U[u]??0;break}let C=x[x.length-1]??0,R=U[C]??0,y=_.level;if(!(r(K,C)&$8)){for(let u=C+1;u<=_.end;u++)if(!(r(K,u)&F6)){y=U[u]??0;break}}O.push({_seqIndices:x,_sosType:Math.max(l,f)%2?n6:x6,_eosType:Math.max(y,R)%2?n6:x6})}}for(let M=0;M<O.length;M++){let P=O[M],{_seqIndices:T,_sosType:x,_eosType:I}=P,f=T[0]??0,l=(U[f]??0)&1?n6:x6;if(J.get(w1))for(let C=0;C<T.length;C++){let R=H6(T,C);if(r(K,R)&w1){let y=x;for(let u=C-1;u>=0;u--){let d=H6(T,u);if(!(r(K,d)&F6)){y=r(K,d);break}}q(R,y&($8|F9)?E1:y)}}if(J.get(S6))for(let C=0;C<T.length;C++){let R=H6(T,C);if(r(K,R)&S6)for(let y=C-1;y>=-1;y--){let u=y===-1?x:r(K,H6(T,y));if(u&z1){if(u===A1)q(R,_0);break}}}if(J.get(A1))for(let C=0;C<T.length;C++){let R=H6(T,C);if(r(K,R)&A1)q(R,n6)}if(J.get(H0)||J.get(Y1))for(let C=1;C<T.length-1;C++){let R=H6(T,C);if(r(K,R)&(H0|Y1)){let y=0,u=0;for(let d=C-1;d>=0;d--)if(y=r(K,H6(T,d)),!(y&F6))break;for(let d=C+1;d<T.length;d++)if(u=r(K,H6(T,d)),!(u&F6))break;if(y===u&&(r(K,R)===H0?y===S6:y&(S6|_0)))q(R,y)}}if(J.get(S6))for(let C=0;C<T.length;C++){let R=H6(T,C);if(r(K,R)&S6){for(let y=C-1;y>=0;y--){let u=H6(T,y);if(!(r(K,u)&(G1|F6)))break;q(u,S6)}for(C++;C<T.length;C++){let y=H6(T,C);if(!(r(K,y)&(G1|F6|S6)))break;if(r(K,y)!==S6)q(y,S6)}}}if(J.get(G1)||J.get(H0)||J.get(Y1))for(let C=0;C<T.length;C++){let R=H6(T,C);if(r(K,R)&(G1|H0|Y1)){q(R,E1);for(let y=C-1;y>=0;y--){let u=H6(T,y);if(!(r(K,u)&F6))break;q(u,E1)}for(let y=C+1;y<T.length;y++){let u=H6(T,y);if(!(r(K,u)&F6))break;q(u,E1)}}}if(J.get(S6)){let C=x;for(let R=0;R<T.length;R++){let y=H6(T,R),u=r(K,y);if(u&S6){if(C===x6)q(y,x6)}else if(u&z1)C=u}}if(J.get(C6)){let C=n6|S6|_0,R=C|x6,y=[],u=[];for(let d=0;d<T.length;d++){let c=H6(T,d);if(r(K,c)&C6){let n=L9($,c);if(N1(n)!==null)if(u.length<63)u.push({char:n,seqIndex:d});else break;else{let g=V1(n);if(g!==null)for(let X6=u.length-1;X6>=0;X6--){let S=u[X6];if(!S)continue;let q6=S.char,b=X1(n),L6=X1(q6);if(q6===g||b&&q6===V1(b)||L6&&N1(L6)===n){y.push([S.seqIndex,d]),u.length=X6;break}}}}}y.sort((d,c)=>d[0]-c[0]);for(let d=0;d<y.length;d++){let c=y[d],[n,e]=c,g=!1,X6=0;for(let S=n+1;S<e;S++){let q6=H6(T,S),b=r(K,q6);if(b&R){g=!0;let L6=b&C?n6:x6;if(L6===l){X6=L6;break}}}if(g&&!X6){X6=x;for(let S=n-1;S>=0;S--){let q6=H6(T,S),b=r(K,q6);if(b&R){let L6=b&C?n6:x6;X6=L6!==l?L6:l;break}}}if(X6){if(K[H6(T,n)]=X6,K[H6(T,e)]=X6,X6!==l){for(let S=n+1;S<T.length;S++){let q6=H6(T,S);if(!(r(K,q6)&F6)){if(m6(L9($,q6))&w1)K[q6]=X6;break}}for(let S=e+1;S<T.length;S++){let q6=H6(T,S);if(!(r(K,q6)&F6)){if(m6(L9($,q6))&w1)K[q6]=X6;break}}}}}for(let d=0;d<T.length;d++){let c=H6(T,d);if(r(K,c)&C6){let n=d,e=d,g=x;for(let S=d-1;S>=0;S--){let q6=H6(T,S);if(r(K,q6)&F6)n=S;else{g=r(K,q6)&C?n6:x6;break}}let X6=I;for(let S=d+1;S<T.length;S++){let q6=H6(T,S);if(r(K,q6)&(C6|F6))e=S;else{X6=r(K,q6)&C?n6:x6;break}}for(let S=n;S<=e;S++)K[H6(T,S)]=g===X6?g:l;d=e}}}}for(let M=_.start;M<=_.end;M++){let P=U[M]??0,T=r(K,M);if(P&1){if(T&(x6|S6|_0))U[M]++}else if(T&n6)U[M]++;else if(T&(_0|S6))U[M]+=2;if(T&F6)U[M]=M===0?_.level:U[M-1]??_.level;if(M===_.end||m6(L9($,M))&(hz|A9))for(let x=M;x>=0&&m6(L9($,x))&W0;x--)U[x]=_.level}}return{levels:U,paragraphs:H}}var FW="14>1,j>2,t>2,u>2,1a>g,2v3>1,1>1,1ge>1,1wd>1,b>1,1j>1,f>1,ai>3,-2>3,+1,8>1k0,-1jq>1y7,-1y6>1hf,-1he>1h6,-1h5>1ha,-1h8>1qi,-1pu>1,6>3u,-3s>7,6>1,1>1,f>1,1>1,+2,3>1,1>1,+13,4>1,1>1,6>1eo,-1ee>1,3>1mg,-1me>1mk,-1mj>1mi,-1mg>1mi,-1md>1,1>1,+2,1>10k,-103>1,1>1,4>1,5>1,1>1,+10,3>1,1>8,-7>8,+1,-6>7,+1,a>1,1>1,u>1,u6>1,1>1,+5,26>1,1>1,2>1,2>2,8>1,7>1,4>1,1>1,+5,b8>1,1>1,+3,1>3,-2>1,2>1,1>1,+2,c>1,3>1,1>1,+2,h>1,3>1,a>1,1>1,2>1,3>1,1>1,d>1,f>1,3>1,1a>1,1>1,6>1,7>1,13>1,k>1,1>1,+19,4>1,1>1,+2,2>1,1>1,+18,m>1,a>1,1>1,lk>1,1>1,4>1,2>1,f>1,3>1,1>1,+3,db>1,1>1,+3,3>1,1>1,+2,14qm>1,1>1,+1,6>1,4j>1,j>2,t>2,u>2,2>1,+1";var WQ=null;function gz(){if(!WQ){let{map:$,reverseMap:Q}=q0(FW,!0);if(Q)Q.forEach((Z,K)=>{$.set(K,Z)});WQ=$}}function L1($){return gz(),WQ?.get($)||null}function LW($,Q,Z,K){let J=$.length,q=Math.max(0,Z==null?0:+Z),U=Math.min(J-1,K==null?J-1:+K),W=[];for(let H=0;H<Q.paragraphs.length;H++){let _=Q.paragraphs[H],N=Math.max(q,_.start),V=Math.min(U,_.end);if(N<V){let X=Q.levels.slice(N,V+1);for(let G=V;G>=N;G--){let Y=$[G];if(Y===void 0)break;if(!(m6(Y)&W0))break;X[G-N]=_.level}let j=_.level,z=1/0;for(let G=0;G<X.length;G++){let Y=X[G]??0;if(Y>j)j=Y;if(Y<z)z=Y|1}for(let G=j;G>=z;G--)for(let Y=0;Y<X.length;Y++)if((X[Y]??0)>=G){let w=Y;while(Y+1<X.length){if((X[Y+1]??0)<G)break;Y++}if(Y>w)W.push([w+N,Y+N])}}}return W}function D1($,Q,Z,K){let J=LW($,Q,Z,K),q=[];for(let U=0;U<$.length;U++)q[U]=U;for(let U=0;U<J.length;U++){let W=J[U],H=W[0],_=W[1],N=q.slice(H,_+1);for(let V=N.length;V--;){let X=N[V];if(X!==void 0)q[_-V]=X}}return q}function DW($,Q=4){let Z=Q===5?"rtl":Q===4?"ltr":"auto",K=UQ($,Z);return{levels:K.levels,paragraphs:K.paragraphs}}function uz($,Q,Z=0,K=$.length){return[...D1($,Q,Z,K)]}function BW($,Q){if($.length===0)return $;let Z="x".repeat($.length),K=D1(Z,Q,0,$.length),J=[];for(let q=0;q<K.length;q++){let U=K[q];if(U<$.length){let W=$[U];if(W)J.push(W)}}return J}function MW($){let Q=String.fromCodePoint($),Z=L1(Q);return Z?Z.codePointAt(0)??$:$}function RW($,Q){for(let Z=0;Z<$.length;Z++){let K=$[Z],J=Q[Z];if(J===void 0)continue;if(J&1){let q=MW(K.codepoint);if(q!==K.codepoint)K.codepoint=q}}}var d8={L:1,R:2,EN:4,ES:8,ET:16,AN:32,CS:64,B:128,S:256,WS:512,ON:1024,BN:2048,NSM:4096,AL:8192,LRO:16384,RLO:32768,LRE:65536,RLE:131072,PDF:262144,LRI:524288,RLI:1048576,FSI:2097152,PDI:4194304};function xz($){return m6($)}function fz($){let Q=String.fromCodePoint($);return(m6(Q)&(d8.R|d8.AL))!==0}function lz($){let Q=String.fromCodePoint($);return(m6(Q)&d8.L)!==0}function dz($){let Q=[...$];for(let Z=0;Z<Q.length;Z++){let K=Q[Z],J=m6(K);if(J&d8.L)return 4;if(J&(d8.R|d8.AL))return 5}return 4}function nz($,Q=4){if($.length===0)return{infos:$,levels:new Uint8Array(0)};let Z=$.map((q)=>String.fromCodePoint(q.codepoint)).join(""),K=DW(Z,Q);return RW($,K.levels),{infos:BW($,K),levels:K.levels}}var TW;((b)=>{b[b.BK=0]="BK";b[b.CR=1]="CR";b[b.LF=2]="LF";b[b.CM=3]="CM";b[b.NL=4]="NL";b[b.SG=5]="SG";b[b.WJ=6]="WJ";b[b.ZW=7]="ZW";b[b.GL=8]="GL";b[b.SP=9]="SP";b[b.ZWJ=10]="ZWJ";b[b.B2=11]="B2";b[b.BA=12]="BA";b[b.BB=13]="BB";b[b.HY=14]="HY";b[b.CB=15]="CB";b[b.CL=16]="CL";b[b.CP=17]="CP";b[b.EX=18]="EX";b[b.IN=19]="IN";b[b.NS=20]="NS";b[b.OP=21]="OP";b[b.QU=22]="QU";b[b.IS=23]="IS";b[b.NU=24]="NU";b[b.PO=25]="PO";b[b.PR=26]="PR";b[b.SY=27]="SY";b[b.AI=28]="AI";b[b.AL=29]="AL";b[b.CJ=30]="CJ";b[b.EB=31]="EB";b[b.EM=32]="EM";b[b.H2=33]="H2";b[b.H3=34]="H3";b[b.HL=35]="HL";b[b.ID=36]="ID";b[b.JL=37]="JL";b[b.JV=38]="JV";b[b.JT=39]="JT";b[b.RI=40]="RI";b[b.SA=41]="SA";b[b.XX=42]="XX"})(TW||={});var OW;((U)=>{U[U.Direct=0]="Direct";U[U.Indirect=1]="Indirect";U[U.CombiningIndirect=2]="CombiningIndirect";U[U.CombiningProhibited=3]="CombiningProhibited";U[U.Prohibited=4]="Prohibited";U[U.Explicit=5]="Explicit"})(OW||={});var PW;((K)=>{K[K.NoBreak=0]="NoBreak";K[K.Optional=1]="Optional";K[K.Mandatory=2]="Mandatory"})(PW||={});function vW($){if($===10)return 2;if($===13)return 1;if($===133)return 4;if($===11||$===12)return 0;if($===8232)return 0;if($===8233)return 0;if($===8203)return 7;if($===8205)return 10;if($===8288)return 6;if($===65279)return 6;if($===32)return 9;if($===160)return 8;if($===8239)return 8;if($===8199)return 8;if($===8209)return 8;if($===9)return 12;if($>=8192&&$<=8202)return 12;if($>=768&&$<=879)return 3;if($>=1155&&$<=1161)return 3;if($>=1425&&$<=1469)return 3;if($>=1471&&$<=1479)return 3;if($>=1552&&$<=1562)return 3;if($>=1611&&$<=1631)return 3;if($>=1648&&$<=1648)return 3;if($>=1750&&$<=1773)return 3;if($>=1809&&$<=1809)return 3;if($>=1840&&$<=1866)return 3;if($>=1958&&$<=1968)return 3;if($>=2070&&$<=2083)return 3;if($>=2085&&$<=2093)return 3;if($>=2137&&$<=2139)return 3;if($>=2259&&$<=2273)return 3;if($>=2275&&$<=2307)return 3;if($>=2362&&$<=2364)return 3;if($>=2366&&$<=2383)return 3;if($>=2385&&$<=2391)return 3;if($>=2402&&$<=2403)return 3;if($>=2433&&$<=2435)return 3;if($===2492)return 3;if($>=2494&&$<=2509)return 3;if($>=2519&&$<=2519)return 3;if($>=2530&&$<=2531)return 3;if($>=2558&&$<=2558)return 3;if($>=2561&&$<=2563)return 3;if($>=2620&&$<=2641)return 3;if($>=2672&&$<=2673)return 3;if($>=2677&&$<=2677)return 3;if($>=2689&&$<=2691)return 3;if($>=2748&&$<=2765)return 3;if($>=2786&&$<=2787)return 3;if($>=2810&&$<=2815)return 3;if($>=2817&&$<=2819)return 3;if($>=2876&&$<=2903)return 3;if($>=2914&&$<=2915)return 3;if($>=2946&&$<=2946)return 3;if($>=3006&&$<=3021)return 3;if($>=3031&&$<=3031)return 3;if($>=3072&&$<=3076)return 3;if($>=3134&&$<=3158)return 3;if($>=3170&&$<=3171)return 3;if($>=3201&&$<=3203)return 3;if($>=3260&&$<=3286)return 3;if($>=3298&&$<=3299)return 3;if($>=3328&&$<=3331)return 3;if($>=3387&&$<=3405)return 3;if($>=3415&&$<=3415)return 3;if($>=3426&&$<=3427)return 3;if($>=3457&&$<=3459)return 3;if($>=3530&&$<=3571)return 3;if($>=3864&&$<=3865)return 3;if($>=3893&&$<=3897)return 3;if($>=3902&&$<=3903)return 3;if($>=3953&&$<=3972)return 3;if($>=3974&&$<=3975)return 3;if($>=3981&&$<=4028)return 3;if($===4038)return 3;if($>=5906&&$<=5908)return 3;if($>=5938&&$<=5940)return 3;if($>=5970&&$<=5971)return 3;if($>=6002&&$<=6003)return 3;if($>=6068&&$<=6099)return 3;if($===6109)return 3;if($>=6155&&$<=6157)return 3;if($===6159)return 3;if($>=6277&&$<=6278)return 3;if($===6313)return 3;if($>=6432&&$<=6459)return 3;if($>=6679&&$<=6683)return 3;if($>=6741&&$<=6783)return 3;if($>=6832&&$<=6862)return 3;if($>=6912&&$<=6916)return 3;if($>=6964&&$<=6980)return 3;if($>=7019&&$<=7027)return 3;if($>=7040&&$<=7042)return 3;if($>=7073&&$<=7085)return 3;if($>=7142&&$<=7155)return 3;if($>=7204&&$<=7223)return 3;if($>=7376&&$<=7417)return 3;if($>=7616&&$<=7679)return 3;if($>=8400&&$<=8432)return 3;if($>=11503&&$<=11505)return 3;if($===11647)return 3;if($>=11744&&$<=11775)return 3;if($>=12330&&$<=12335)return 3;if($>=12441&&$<=12442)return 3;if($>=42607&&$<=42610)return 3;if($>=42612&&$<=42621)return 3;if($>=42654&&$<=42655)return 3;if($>=42736&&$<=42737)return 3;if($>=43010&&$<=43047)return 3;if($>=43052&&$<=43052)return 3;if($>=43136&&$<=43137)return 3;if($>=43188&&$<=43205)return 3;if($>=43232&&$<=43249)return 3;if($===43263)return 3;if($>=43302&&$<=43309)return 3;if($>=43335&&$<=43347)return 3;if($>=43392&&$<=43395)return 3;if($>=43443&&$<=43469)return 3;if($===43493)return 3;if($>=43561&&$<=43574)return 3;if($>=43587&&$<=43587)return 3;if($>=43596&&$<=43597)return 3;if($>=43643&&$<=43645)return 3;if($>=43696&&$<=43714)return 3;if($>=43755&&$<=43759)return 3;if($>=43765&&$<=43766)return 3;if($>=44003&&$<=44010)return 3;if($>=44012&&$<=44013)return 3;if($===64286)return 3;if($>=65024&&$<=65039)return 3;if($>=65056&&$<=65071)return 3;if($>=66045&&$<=66045)return 3;if($>=66272&&$<=66272)return 3;if($>=66422&&$<=66426)return 3;if($>=68097&&$<=68111)return 3;if($>=68152&&$<=68159)return 3;if($>=68325&&$<=68326)return 3;if($>=68900&&$<=68903)return 3;if($>=69291&&$<=69292)return 3;if($>=69446&&$<=69456)return 3;if($>=69506&&$<=69509)return 3;if($>=69632&&$<=69634)return 3;if($>=69688&&$<=69702)return 3;if($>=69744&&$<=69744)return 3;if($>=69747&&$<=69748)return 3;if($>=69759&&$<=69762)return 3;if($>=69808&&$<=69826)return 3;if($>=69888&&$<=69890)return 3;if($>=69927&&$<=69940)return 3;if($===69957)return 3;if($===69958)return 3;if($>=70003&&$<=70003)return 3;if($>=70016&&$<=70018)return 3;if($>=70067&&$<=70080)return 3;if($>=70089&&$<=70092)return 3;if($===70094)return 3;if($===70095)return 3;if($>=70188&&$<=70199)return 3;if($===70206)return 3;if($>=70367&&$<=70378)return 3;if($>=70400&&$<=70403)return 3;if($>=70459&&$<=70460)return 3;if($>=70462&&$<=70477)return 3;if($>=70487&&$<=70487)return 3;if($>=70498&&$<=70516)return 3;if($>=70709&&$<=70726)return 3;if($===70750)return 3;if($>=70832&&$<=70851)return 3;if($>=71087&&$<=71104)return 3;if($>=71132&&$<=71133)return 3;if($>=71216&&$<=71232)return 3;if($>=71339&&$<=71351)return 3;if($>=71453&&$<=71467)return 3;if($>=71724&&$<=71738)return 3;if($>=71984&&$<=71989)return 3;if($>=71991&&$<=71992)return 3;if($>=71995&&$<=71998)return 3;if($===72000)return 3;if($>=72002&&$<=72003)return 3;if($>=72145&&$<=72151)return 3;if($>=72154&&$<=72160)return 3;if($===72164)return 3;if($>=72193&&$<=72202)return 3;if($>=72243&&$<=72249)return 3;if($>=72251&&$<=72254)return 3;if($===72263)return 3;if($>=72273&&$<=72283)return 3;if($>=72330&&$<=72345)return 3;if($>=72751&&$<=72758)return 3;if($>=72760&&$<=72767)return 3;if($>=72850&&$<=72871)return 3;if($>=72873&&$<=72886)return 3;if($>=73009&&$<=73029)return 3;if($===73031)return 3;if($>=73098&&$<=73111)return 3;if($>=73459&&$<=73462)return 3;if($>=92912&&$<=92916)return 3;if($>=92976&&$<=92982)return 3;if($===94031)return 3;if($>=94033&&$<=94087)return 3;if($>=94095&&$<=94098)return 3;if($>=94180&&$<=94180)return 3;if($>=94192&&$<=94193)return 3;if($>=113821&&$<=113822)return 3;if($>=118528&&$<=118598)return 3;if($>=119141&&$<=119145)return 3;if($>=119149&&$<=119154)return 3;if($>=119163&&$<=119170)return 3;if($>=119173&&$<=119179)return 3;if($>=119210&&$<=119213)return 3;if($>=119362&&$<=119364)return 3;if($>=121344&&$<=121398)return 3;if($>=121403&&$<=121452)return 3;if($===121461)return 3;if($===121476)return 3;if($>=121499&&$<=121519)return 3;if($>=122880&&$<=122922)return 3;if($>=123184&&$<=123190)return 3;if($>=123566&&$<=123566)return 3;if($>=123628&&$<=123631)return 3;if($>=125136&&$<=125142)return 3;if($>=125252&&$<=125258)return 3;if($>=917760&&$<=917999)return 3;if($===33)return 18;if($===63)return 18;if($===34)return 22;if($===39)return 22;if($===40)return 21;if($===41)return 17;if($===91)return 21;if($===93)return 17;if($===123)return 21;if($===125)return 16;if($===44)return 23;if($===46)return 23;if($===58)return 23;if($===59)return 23;if($===45)return 14;if($===8208)return 12;if($===8211)return 12;if($===8212)return 11;if($===8216||$===8217)return 22;if($===8220||$===8221)return 22;if($===8230)return 19;if($===12289||$===12290)return 16;if($===12296)return 21;if($===12297)return 16;if($===12298)return 21;if($===12299)return 16;if($===12300)return 21;if($===12301)return 16;if($===12302)return 21;if($===12303)return 16;if($===12304)return 21;if($===12305)return 16;if($===12308)return 21;if($===12309)return 16;if($===12310)return 21;if($===12311)return 16;if($>=12312&&$<=12315)return $%2===0?21:16;if($===65288)return 21;if($===65289)return 16;if($===65292)return 16;if($===65294)return 16;if($===65306)return 20;if($===65307)return 20;if($===65311)return 18;if($===65281)return 18;if($>=12353&&$<=12438){if($===12353||$===12355||$===12357||$===12359||$===12361||$===12387||$===12419||$===12421||$===12423||$===12430||$===12437||$===12438)return 30;return 36}if($>=12449&&$<=12538){if($===12449||$===12451||$===12453||$===12455||$===12457||$===12483||$===12515||$===12517||$===12519||$===12526||$===12533||$===12534)return 30;return 36}if($===12540)return 30;if($>=4352&&$<=4447)return 37;if($>=43360&&$<=43388)return 37;if($>=4448&&$<=4519)return 38;if($>=55216&&$<=55238)return 38;if($>=4520&&$<=4607)return 39;if($>=55243&&$<=55291)return 39;if($>=44032&&$<=55203){if(($-44032)%28===0)return 33;return 34}if($>=48&&$<=57)return 24;if($>=1632&&$<=1641)return 24;if($>=1776&&$<=1785)return 24;if($>=2406&&$<=2415)return 24;if($>=65296&&$<=65305)return 24;if($===36)return 26;if($===163)return 26;if($===165)return 26;if($===8364)return 26;if($===37)return 25;if($>=1488&&$<=1514)return 35;if($>=64285&&$<=64335)return 35;if($>=19968&&$<=40959)return 36;if($>=13312&&$<=19903)return 36;if($>=131072&&$<=173791)return 36;if($>=173824&&$<=177983)return 36;if($>=177984&&$<=178207)return 36;if($>=178208&&$<=183983)return 36;if($>=183984&&$<=191471)return 36;if($>=196608&&$<=201551)return 36;if($>=63744&&$<=64255)return 36;if($>=194560&&$<=195103)return 36;if($>=127744&&$<=129535)return 36;if($>=129536&&$<=129791)return 36;if($>=9728&&$<=9983)return 36;if($>=9984&&$<=10175)return 36;if($>=127456&&$<=127487)return 40;if($>=127995&&$<=127999)return 32;if($>=3584&&$<=3711)return 41;if($>=3712&&$<=3839)return 41;if($>=4096&&$<=4255)return 41;if($>=43488&&$<=43519)return 41;if($>=43616&&$<=43647)return 41;if($>=6016&&$<=6143)return 41;if($>=6624&&$<=6655)return 41;if($>=65&&$<=90)return 29;if($>=97&&$<=122)return 29;if($>=192&&$<=591)return 29;if($>=1536&&$<=1791)return 29;if($>=1872&&$<=1919)return 29;if($>=2208&&$<=2303)return 29;if($>=2304&&$<=2431)return 29;if($>=2432&&$<=2559)return 29;if($>=2560&&$<=2687)return 29;if($>=2688&&$<=2815)return 29;if($>=2816&&$<=2943)return 29;if($>=2944&&$<=3071)return 29;if($>=3072&&$<=3199)return 29;if($>=3200&&$<=3327)return 29;if($>=3328&&$<=3455)return 29;if($>=1024&&$<=1279)return 29;if($>=1280&&$<=1327)return 29;if($>=880&&$<=1023)return 29;return 42}function pz($,Q){if($===28)$=29;if($===41)$=29;if($===5)$=29;if($===42)$=29;if($===30)$=20;if(Q===28)Q=29;if(Q===41)Q=29;if(Q===5)Q=29;if(Q===42)Q=29;if(Q===30)Q=20;if($===0)return 5;if($===1&&Q===2)return 4;if($===1||$===2||$===4)return 5;if(Q===0||Q===1||Q===2||Q===4)return 4;if(Q===9||Q===7)return 4;if($===7)return 0;if($===10)return 4;if(Q===3||Q===10){if($!==9)return 4}let Z=$,K=Q;if($===3||$===10)Z=29;if(Q===3||Q===10)K=29;if($=Z,Q=K,$===6||Q===6)return 4;if($===8)return 4;if(Q===8){if($!==9&&$!==12&&$!==14)return 4}if(Q===16||Q===17||Q===18||Q===23||Q===27)return 4;if($===21)return 4;if($===22&&Q===21)return 4;if(($===16||$===17)&&Q===20)return 4;if($===11&&Q===11)return 4;if($===9)return 0;if($===22||Q===22)return 4;if($===15||Q===15)return 0;if(Q===12||Q===14||Q===20)return 4;if($===13)return 4;if($===27&&Q===35)return 4;if(Q===19)return 4;if(($===29||$===35)&&Q===24)return 4;if($===24&&(Q===29||Q===35))return 4;if($===26&&Q===36)return 4;if($===36&&Q===25)return 4;if(($===26||$===25)&&(Q===29||Q===35))return 4;if(($===29||$===35)&&(Q===26||Q===25))return 4;if(($===16||$===17)&&Q===24)return 4;if($===24&&(Q===25||Q===26))return 4;if(($===25||$===26||$===14||$===23||$===24||$===27)&&Q===24)return 4;if($===37){if(Q===37||Q===38||Q===33||Q===34)return 4}if($===38||$===33){if(Q===38||Q===39)return 4}if($===39||$===34){if(Q===39)return 4}if($===37||$===38||$===39||$===33||$===34){if(Q===25)return 4}if(Q===37||Q===38||Q===39||Q===33||Q===34){if($===26)return 4}if(($===29||$===35)&&(Q===29||Q===35))return 4;if($===23&&(Q===29||Q===35))return 4;if(($===29||$===35||$===24)&&Q===21)return 4;if($===17&&(Q===29||Q===35||Q===24))return 4;if($===40&&Q===40)return 4;if($===31&&Q===32)return 4;return 0}function oz($){let Q=[],Z=[...$];for(let K=0;K<Z.length;K++){let J=Z[K];Q.push(J.codePointAt(0)??0)}return HQ(Q)}function HQ($){let Q=$.length,Z=[],K=[];for(let J=0;J<$.length;J++){let q=$[J];Z.push(vW(q))}K.push(0);for(let J=1;J<Q;J++){let q=Z[J-1],U=Z[J];switch(pz(q,U)){case 5:K.push(2);break;case 0:K.push(1);break;default:K.push(0)}}return K.push(2),{breaks:K,classes:Z}}function cz($){let Q=$.map((Z)=>Z.codepoint);return HQ(Q)}function iz($,Q){for(let Z=Q+1;Z<$.breaks.length;Z++)if($.breaks[Z]!==0)return Z;return $.breaks.length-1}function sz($,Q){if(Q<0||Q>=$.breaks.length)return!1;return $.breaks[Q]!==0}function az($,Q){if(Q<0||Q>=$.breaks.length)return!1;return $.breaks[Q]===2}function rz($){let Q=[];for(let Z=0;Z<$.breaks.length;Z++)if($.breaks[Z]!==0)Q.push(Z);return Q}var kW;((v)=>{v.Common="Zyyy";v.Inherited="Zinh";v.Unknown="Zzzz";v.Latin="Latn";v.Greek="Grek";v.Cyrillic="Cyrl";v.Armenian="Armn";v.Hebrew="Hebr";v.Arabic="Arab";v.Syriac="Syrc";v.Thaana="Thaa";v.Devanagari="Deva";v.Bengali="Beng";v.Gurmukhi="Guru";v.Gujarati="Gujr";v.Oriya="Orya";v.Tamil="Taml";v.Telugu="Telu";v.Kannada="Knda";v.Malayalam="Mlym";v.Sinhala="Sinh";v.Thai="Thai";v.Lao="Laoo";v.Tibetan="Tibt";v.Myanmar="Mymr";v.Georgian="Geor";v.Hangul="Hang";v.Ethiopic="Ethi";v.Cherokee="Cher";v.CanadianAboriginal="Cans";v.Ogham="Ogam";v.Runic="Runr";v.Khmer="Khmr";v.Mongolian="Mong";v.Hiragana="Hira";v.Katakana="Kana";v.Bopomofo="Bopo";v.Han="Hani";v.Yi="Yiii";v.OldItalic="Ital";v.Gothic="Goth";v.Deseret="Dsrt";v.Tagalog="Tglg";v.Hanunoo="Hano";v.Buhid="Buhd";v.Tagbanwa="Tagb";v.Limbu="Limb";v.TaiLe="Tale";v.LinearB="Linb";v.Ugaritic="Ugar";v.Shavian="Shaw";v.Osmanya="Osma";v.Cypriot="Cprt";v.Braille="Brai";v.Buginese="Bugi";v.Coptic="Copt";v.NewTaiLue="Talu";v.Glagolitic="Glag";v.Tifinagh="Tfng";v.SylotiNagri="Sylo";v.OldPersian="Xpeo";v.Kharoshthi="Khar";v.Balinese="Bali";v.Cuneiform="Xsux";v.Phoenician="Phnx";v.PhagsPa="Phag";v.Nko="Nkoo";v.Sundanese="Sund";v.Lepcha="Lepc";v.OlChiki="Olck";v.Vai="Vaii";v.Saurashtra="Saur";v.KayahLi="Kali";v.Rejang="Rjng";v.Lycian="Lyci";v.Carian="Cari";v.Lydian="Lydi";v.Cham="Cham";v.TaiTham="Lana";v.TaiViet="Tavt";v.Avestan="Avst";v.EgyptianHieroglyphs="Egyp";v.Samaritan="Samr";v.Lisu="Lisu";v.Bamum="Bamu";v.Javanese="Java";v.MeeteiMayek="Mtei";v.ImperialAramaic="Armi";v.OldSouthArabian="Sarb";v.InscriptionalParthian="Prti";v.InscriptionalPahlavi="Phli";v.OldTurkic="Orkh";v.Kaithi="Kthi";v.Batak="Batk";v.Brahmi="Brah";v.Mandaic="Mand";v.Chakma="Cakm";v.MeroiticCursive="Merc";v.MeroiticHieroglyphs="Mero";v.Miao="Plrd";v.Sharada="Shrd";v.SoraSompeng="Sora";v.Takri="Takr";v.CaucasianAlbanian="Aghb";v.BassaVah="Bass";v.Duployan="Dupl";v.Elbasan="Elba";v.Grantha="Gran";v.PahawhHmong="Hmng";v.Khojki="Khoj";v.LinearA="Lina";v.Mahajani="Mahj";v.Manichaean="Mani";v.MendeKikakui="Mend";v.Modi="Modi";v.Mro="Mroo";v.OldNorthArabian="Narb";v.Nabataean="Nbat";v.Palmyrene="Palm";v.PauCinHau="Pauc";v.OldPermic="Perm";v.PsalterPahlavi="Phlp";v.Siddham="Sidd";v.Khudawadi="Sind";v.Tirhuta="Tirh";v.WarangCiti="Wara";v.Ahom="Ahom";v.AnatolianHieroglyphs="Hluw";v.Hatran="Hatr";v.Multani="Mult";v.OldHungarian="Hung";v.SignWriting="Sgnw";v.Adlam="Adlm";v.Bhaiksuki="Bhks";v.Marchen="Marc";v.Newa="Newa";v.Osage="Osge";v.Tangut="Tang";v.MasaramGondi="Gonm";v.Nushu="Nshu";v.Soyombo="Soyo";v.ZanabazarSquare="Zanb";v.Dogra="Dogr";v.GunjalaGondi="Gong";v.Makasar="Maka";v.Medefaidrin="Medf";v.HanifiRohingya="Rohg";v.Sogdian="Sogd";v.OldSogdian="Sogo";v.Elymaic="Elym";v.Nandinagari="Nand";v.NyiakengPuachueHmong="Hmnp";v.Wancho="Wcho";v.Yezidi="Yezi";v.Chorasmian="Chrs";v.DivesAkuru="Diak";v.KhitanSmallScript="Kits";v.Vithkuqi="Vith";v.OldUyghur="Ougr";v.Cypro_Minoan="Cpmn";v.Tangsa="Tnsa";v.Toto="Toto";v.Kawi="Kawi";v.NagMundari="Nagm"})(kW||={});var IW=[{start:0,end:127,script:"Zyyy"},{start:128,end:255,script:"Latn"},{start:256,end:383,script:"Latn"},{start:384,end:591,script:"Latn"},{start:592,end:687,script:"Latn"},{start:688,end:767,script:"Zyyy"},{start:768,end:879,script:"Zinh"},{start:880,end:1023,script:"Grek"},{start:1024,end:1279,script:"Cyrl"},{start:1280,end:1327,script:"Cyrl"},{start:1328,end:1423,script:"Armn"},{start:1424,end:1535,script:"Hebr"},{start:1536,end:1791,script:"Arab"},{start:1792,end:1871,script:"Syrc"},{start:1872,end:1919,script:"Arab"},{start:1920,end:1983,script:"Thaa"},{start:1984,end:2047,script:"Nkoo"},{start:2048,end:2111,script:"Samr"},{start:2112,end:2143,script:"Mand"},{start:2144,end:2159,script:"Syrc"},{start:2160,end:2207,script:"Arab"},{start:2208,end:2303,script:"Arab"},{start:2304,end:2431,script:"Deva"},{start:2432,end:2559,script:"Beng"},{start:2560,end:2687,script:"Guru"},{start:2688,end:2815,script:"Gujr"},{start:2816,end:2943,script:"Orya"},{start:2944,end:3071,script:"Taml"},{start:3072,end:3199,script:"Telu"},{start:3200,end:3327,script:"Knda"},{start:3328,end:3455,script:"Mlym"},{start:3456,end:3583,script:"Sinh"},{start:3584,end:3711,script:"Thai"},{start:3712,end:3839,script:"Laoo"},{start:3840,end:4095,script:"Tibt"},{start:4096,end:4255,script:"Mymr"},{start:4256,end:4351,script:"Geor"},{start:4352,end:4607,script:"Hang"},{start:4608,end:4991,script:"Ethi"},{start:4992,end:5023,script:"Ethi"},{start:5024,end:5119,script:"Cher"},{start:5120,end:5759,script:"Cans"},{start:5760,end:5791,script:"Ogam"},{start:5792,end:5887,script:"Runr"},{start:5888,end:5919,script:"Tglg"},{start:5920,end:5951,script:"Hano"},{start:5952,end:5983,script:"Buhd"},{start:5984,end:6015,script:"Tagb"},{start:6016,end:6143,script:"Khmr"},{start:6144,end:6319,script:"Mong"},{start:6320,end:6399,script:"Cans"},{start:6400,end:6479,script:"Limb"},{start:6480,end:6527,script:"Tale"},{start:6528,end:6623,script:"Talu"},{start:6624,end:6655,script:"Khmr"},{start:6656,end:6687,script:"Bugi"},{start:6688,end:6831,script:"Lana"},{start:6832,end:6911,script:"Zinh"},{start:6912,end:7039,script:"Bali"},{start:7040,end:7103,script:"Sund"},{start:7104,end:7167,script:"Batk"},{start:7168,end:7247,script:"Lepc"},{start:7248,end:7295,script:"Olck"},{start:7296,end:7311,script:"Cyrl"},{start:7312,end:7359,script:"Geor"},{start:7360,end:7375,script:"Sund"},{start:7376,end:7423,script:"Zinh"},{start:7424,end:7551,script:"Latn"},{start:7552,end:7615,script:"Latn"},{start:7616,end:7679,script:"Zinh"},{start:7680,end:7935,script:"Latn"},{start:7936,end:8191,script:"Grek"},{start:8192,end:8303,script:"Zyyy"},{start:8304,end:8351,script:"Zyyy"},{start:8352,end:8399,script:"Zyyy"},{start:8400,end:8447,script:"Zinh"},{start:8448,end:8527,script:"Zyyy"},{start:8528,end:8591,script:"Zyyy"},{start:8592,end:8703,script:"Zyyy"},{start:8704,end:8959,script:"Zyyy"},{start:8960,end:9215,script:"Zyyy"},{start:9216,end:9279,script:"Zyyy"},{start:9280,end:9311,script:"Zyyy"},{start:9312,end:9471,script:"Zyyy"},{start:9472,end:9599,script:"Zyyy"},{start:9600,end:9631,script:"Zyyy"},{start:9632,end:9727,script:"Zyyy"},{start:9728,end:9983,script:"Zyyy"},{start:9984,end:10175,script:"Zyyy"},{start:10176,end:10223,script:"Zyyy"},{start:10224,end:10239,script:"Zyyy"},{start:10240,end:10495,script:"Brai"},{start:10496,end:10623,script:"Zyyy"},{start:10624,end:10751,script:"Zyyy"},{start:10752,end:11007,script:"Zyyy"},{start:11008,end:11263,script:"Zyyy"},{start:11264,end:11359,script:"Glag"},{start:11360,end:11391,script:"Latn"},{start:11392,end:11519,script:"Copt"},{start:11520,end:11567,script:"Geor"},{start:11568,end:11647,script:"Tfng"},{start:11648,end:11743,script:"Ethi"},{start:11744,end:11775,script:"Cyrl"},{start:11776,end:11903,script:"Zyyy"},{start:11904,end:12031,script:"Hani"},{start:12032,end:12255,script:"Hani"},{start:12272,end:12287,script:"Zyyy"},{start:12288,end:12351,script:"Zyyy"},{start:12352,end:12447,script:"Hira"},{start:12448,end:12543,script:"Kana"},{start:12544,end:12591,script:"Bopo"},{start:12592,end:12687,script:"Hang"},{start:12688,end:12703,script:"Zyyy"},{start:12704,end:12735,script:"Bopo"},{start:12736,end:12783,script:"Zyyy"},{start:12784,end:12799,script:"Kana"},{start:12800,end:13055,script:"Zyyy"},{start:13056,end:13311,script:"Zyyy"},{start:13312,end:19903,script:"Hani"},{start:19904,end:19967,script:"Zyyy"},{start:19968,end:40959,script:"Hani"},{start:40960,end:42127,script:"Yiii"},{start:42128,end:42191,script:"Yiii"},{start:42192,end:42239,script:"Lisu"},{start:42240,end:42559,script:"Vaii"},{start:42560,end:42655,script:"Cyrl"},{start:42656,end:42751,script:"Bamu"},{start:42752,end:42783,script:"Zyyy"},{start:42784,end:43007,script:"Latn"},{start:43008,end:43055,script:"Sylo"},{start:43056,end:43071,script:"Zyyy"},{start:43072,end:43135,script:"Phag"},{start:43136,end:43231,script:"Saur"},{start:43232,end:43263,script:"Deva"},{start:43264,end:43311,script:"Kali"},{start:43312,end:43359,script:"Rjng"},{start:43360,end:43391,script:"Hang"},{start:43392,end:43487,script:"Java"},{start:43488,end:43519,script:"Mymr"},{start:43520,end:43615,script:"Cham"},{start:43616,end:43647,script:"Mymr"},{start:43648,end:43743,script:"Tavt"},{start:43744,end:43775,script:"Mtei"},{start:43776,end:43823,script:"Ethi"},{start:43824,end:43887,script:"Latn"},{start:43888,end:43967,script:"Cher"},{start:43968,end:44031,script:"Mtei"},{start:44032,end:55215,script:"Hang"},{start:55216,end:55295,script:"Hang"},{start:55296,end:57343,script:"Zzzz"},{start:57344,end:63743,script:"Zzzz"},{start:63744,end:64255,script:"Hani"},{start:64256,end:64335,script:"Latn"},{start:64336,end:65023,script:"Arab"},{start:65024,end:65039,script:"Zinh"},{start:65040,end:65055,script:"Zyyy"},{start:65056,end:65071,script:"Zinh"},{start:65072,end:65103,script:"Zyyy"},{start:65104,end:65135,script:"Zyyy"},{start:65136,end:65279,script:"Arab"},{start:65280,end:65519,script:"Zyyy"},{start:65520,end:65535,script:"Zyyy"},{start:65536,end:65663,script:"Linb"},{start:65664,end:65791,script:"Linb"},{start:65792,end:65855,script:"Zyyy"},{start:65856,end:65935,script:"Grek"},{start:65936,end:65999,script:"Zyyy"},{start:66000,end:66047,script:"Zyyy"},{start:66176,end:66207,script:"Lyci"},{start:66208,end:66271,script:"Cari"},{start:66272,end:66303,script:"Zinh"},{start:66304,end:66351,script:"Ital"},{start:66352,end:66383,script:"Goth"},{start:66384,end:66431,script:"Perm"},{start:66432,end:66463,script:"Ugar"},{start:66464,end:66527,script:"Xpeo"},{start:66560,end:66639,script:"Dsrt"},{start:66640,end:66687,script:"Shaw"},{start:66688,end:66735,script:"Osma"},{start:66736,end:66815,script:"Osge"},{start:66816,end:66863,script:"Elba"},{start:66864,end:66927,script:"Aghb"},{start:66928,end:67007,script:"Vith"},{start:67072,end:67455,script:"Lina"},{start:67456,end:67519,script:"Latn"},{start:67584,end:67647,script:"Cprt"},{start:67648,end:67679,script:"Armi"},{start:67680,end:67711,script:"Palm"},{start:67712,end:67759,script:"Nbat"},{start:67808,end:67839,script:"Hatr"},{start:67840,end:67871,script:"Phnx"},{start:67872,end:67903,script:"Lydi"},{start:67968,end:67999,script:"Mero"},{start:68000,end:68095,script:"Merc"},{start:68096,end:68191,script:"Khar"},{start:68192,end:68223,script:"Sarb"},{start:68224,end:68255,script:"Narb"},{start:68288,end:68351,script:"Mani"},{start:68352,end:68415,script:"Avst"},{start:68416,end:68447,script:"Prti"},{start:68448,end:68479,script:"Phli"},{start:68480,end:68527,script:"Phlp"},{start:68608,end:68687,script:"Orkh"},{start:68736,end:68863,script:"Hung"},{start:68864,end:68927,script:"Rohg"},{start:69248,end:69311,script:"Yezi"},{start:69376,end:69423,script:"Sogo"},{start:69424,end:69487,script:"Sogd"},{start:69488,end:69551,script:"Ougr"},{start:69552,end:69599,script:"Chrs"},{start:69600,end:69631,script:"Elym"},{start:69632,end:69759,script:"Brah"},{start:69760,end:69839,script:"Kthi"},{start:69840,end:69887,script:"Sora"},{start:69888,end:69967,script:"Cakm"},{start:69968,end:70015,script:"Mahj"},{start:70016,end:70111,script:"Shrd"},{start:70112,end:70143,script:"Sinh"},{start:70144,end:70223,script:"Khoj"},{start:70272,end:70319,script:"Mult"},{start:70320,end:70399,script:"Sind"},{start:70400,end:70527,script:"Gran"},{start:70656,end:70783,script:"Newa"},{start:70784,end:70879,script:"Tirh"},{start:71040,end:71167,script:"Sidd"},{start:71168,end:71263,script:"Modi"},{start:71264,end:71295,script:"Mong"},{start:71296,end:71375,script:"Takr"},{start:71424,end:71503,script:"Ahom"},{start:71680,end:71759,script:"Dogr"},{start:71840,end:71935,script:"Wara"},{start:71936,end:72031,script:"Diak"},{start:72096,end:72191,script:"Nand"},{start:72192,end:72271,script:"Zanb"},{start:72272,end:72367,script:"Soyo"},{start:72368,end:72383,script:"Cans"},{start:72384,end:72447,script:"Pauc"},{start:72704,end:72815,script:"Bhks"},{start:72816,end:72895,script:"Marc"},{start:72960,end:73055,script:"Gonm"},{start:73056,end:73135,script:"Gong"},{start:73440,end:73471,script:"Maka"},{start:73472,end:73567,script:"Kawi"},{start:73728,end:74751,script:"Xsux"},{start:74752,end:74879,script:"Xsux"},{start:74880,end:75087,script:"Xsux"},{start:77712,end:77823,script:"Cpmn"},{start:77824,end:78895,script:"Egyp"},{start:78896,end:78943,script:"Egyp"},{start:82944,end:83583,script:"Hluw"},{start:92160,end:92735,script:"Bamu"},{start:92736,end:92783,script:"Mroo"},{start:92784,end:92879,script:"Tnsa"},{start:92880,end:92927,script:"Bass"},{start:92928,end:93071,script:"Hmng"},{start:93760,end:93855,script:"Medf"},{start:93952,end:94111,script:"Plrd"},{start:94176,end:94207,script:"Zyyy"},{start:94208,end:100351,script:"Tang"},{start:100352,end:101119,script:"Tang"},{start:101120,end:101631,script:"Kits"},{start:101632,end:101759,script:"Tang"},{start:110576,end:110591,script:"Kana"},{start:110592,end:110847,script:"Hira"},{start:110848,end:110895,script:"Hira"},{start:110896,end:110959,script:"Kana"},{start:110960,end:111359,script:"Nshu"},{start:113664,end:113823,script:"Dupl"},{start:113824,end:113839,script:"Zyyy"},{start:118528,end:118735,script:"Zyyy"},{start:118784,end:119039,script:"Zyyy"},{start:119040,end:119295,script:"Zyyy"},{start:119296,end:119375,script:"Grek"},{start:119488,end:119519,script:"Zyyy"},{start:119520,end:119551,script:"Zyyy"},{start:119552,end:119647,script:"Zyyy"},{start:119648,end:119679,script:"Zyyy"},{start:119808,end:120831,script:"Zyyy"},{start:120832,end:121519,script:"Sgnw"},{start:122624,end:122879,script:"Latn"},{start:122880,end:122927,script:"Glag"},{start:122928,end:123023,script:"Cyrl"},{start:123136,end:123215,script:"Hmnp"},{start:123536,end:123583,script:"Toto"},{start:123584,end:123647,script:"Wcho"},{start:124112,end:124159,script:"Nagm"},{start:124896,end:124927,script:"Ethi"},{start:124928,end:125151,script:"Mend"},{start:125184,end:125279,script:"Adlm"},{start:126064,end:126143,script:"Zyyy"},{start:126208,end:126287,script:"Zyyy"},{start:126464,end:126719,script:"Arab"},{start:126976,end:127023,script:"Zyyy"},{start:127024,end:127135,script:"Zyyy"},{start:127136,end:127231,script:"Zyyy"},{start:127232,end:127487,script:"Zyyy"},{start:127488,end:127743,script:"Zyyy"},{start:127744,end:128511,script:"Zyyy"},{start:128512,end:128591,script:"Zyyy"},{start:128592,end:128639,script:"Zyyy"},{start:128640,end:128767,script:"Zyyy"},{start:128768,end:128895,script:"Zyyy"},{start:128896,end:129023,script:"Zyyy"},{start:129024,end:129279,script:"Zyyy"},{start:129280,end:129535,script:"Zyyy"},{start:129536,end:129647,script:"Zyyy"},{start:129648,end:129791,script:"Zyyy"},{start:129792,end:130047,script:"Zyyy"},{start:131072,end:173791,script:"Hani"},{start:173824,end:177983,script:"Hani"},{start:177984,end:178207,script:"Hani"},{start:178208,end:183983,script:"Hani"},{start:183984,end:191471,script:"Hani"},{start:194560,end:195103,script:"Hani"},{start:196608,end:201551,script:"Hani"},{start:201552,end:205743,script:"Hani"},{start:917504,end:917631,script:"Zyyy"},{start:917760,end:917999,script:"Zinh"},{start:983040,end:1048575,script:"Zzzz"},{start:1048576,end:1114111,script:"Zzzz"}];function N0($){let Q=0,Z=IW.length-1;while(Q<=Z){let K=Q+Z>>>1,J=IW[K];if($<J.start)Z=K-1;else if($>J.end)Q=K+1;else return J.script}return"Zzzz"}function tz($){let Q=new Map,Z=[...$];for(let U=0;U<Z.length;U++){let H=Z[U].codePointAt(0)??0,_=N0(H);if(_==="Zyyy"||_==="Zinh")continue;Q.set(_,(Q.get(_)??0)+1)}if(Q.size===0)return"Zyyy";let K="Zyyy",J=0,q=[...Q];for(let U=0;U<q.length;U++){let[W,H]=q[U];if(H>J)J=H,K=W}return K}function ez($){let Q=new Set,Z=[...$];for(let K=0;K<Z.length;K++){let q=Z[K].codePointAt(0)??0,U=N0(q);Q.add(U)}return[...Q]}function $2($,Q){let Z=[...$];for(let K=0;K<Z.length;K++){let q=Z[K].codePointAt(0)??0,U=N0(q);if(U!==Q&&U!=="Zyyy"&&U!=="Zinh")return!1}return!0}function Q2($){let Q=[];if($.length===0)return Q;let Z=null,K=0,J=0,q=[...$];for(let U=0;U<q.length;U++){let H=q[U].codePointAt(0)??0,_=N0(H);if(_==="Zyyy"||_==="Zinh"){if(Z!==null)_=Z}if(Z===null)Z=_,K=U;else if(_!==Z&&_!=="Zyyy"&&_!=="Zinh")Q.push({script:Z,start:K,end:U,text:q.slice(K,U).join("")}),Z=_,K=U}if(Z!==null)Q.push({script:Z,start:K,end:q.length,text:q.slice(K).join("")});return Q}function Z2($){return{["Zyyy"]:"DFLT",["Zinh"]:"DFLT",["Zzzz"]:"DFLT",["Latn"]:"latn",["Grek"]:"grek",["Cyrl"]:"cyrl",["Armn"]:"armn",["Hebr"]:"hebr",["Arab"]:"arab",["Syrc"]:"syrc",["Thaa"]:"thaa",["Deva"]:"deva",["Beng"]:"beng",["Guru"]:"guru",["Gujr"]:"gujr",["Orya"]:"orya",["Taml"]:"taml",["Telu"]:"telu",["Knda"]:"knda",["Mlym"]:"mlym",["Sinh"]:"sinh",["Thai"]:"thai",["Laoo"]:"lao ",["Tibt"]:"tibt",["Mymr"]:"mymr",["Geor"]:"geor",["Hang"]:"hang",["Ethi"]:"ethi",["Cher"]:"cher",["Cans"]:"cans",["Ogam"]:"ogam",["Runr"]:"runr",["Khmr"]:"khmr",["Mong"]:"mong",["Hira"]:"kana",["Kana"]:"kana",["Bopo"]:"bopo",["Hani"]:"hani",["Yiii"]:"yi ",["Ital"]:"ital",["Goth"]:"goth",["Dsrt"]:"dsrt",["Tglg"]:"tglg",["Hano"]:"hano",["Buhd"]:"buhd",["Tagb"]:"tagb",["Limb"]:"limb",["Tale"]:"tale",["Linb"]:"linb",["Ugar"]:"ugar",["Shaw"]:"shaw",["Osma"]:"osma",["Cprt"]:"cprt",["Brai"]:"brai",["Bugi"]:"bugi",["Copt"]:"copt",["Talu"]:"talu",["Glag"]:"glag",["Tfng"]:"tfng",["Sylo"]:"sylo",["Xpeo"]:"xpeo",["Khar"]:"khar",["Bali"]:"bali",["Xsux"]:"xsux",["Phnx"]:"phnx",["Phag"]:"phag",["Nkoo"]:"nko ",["Sund"]:"sund",["Lepc"]:"lepc",["Olck"]:"olck",["Vaii"]:"vai ",["Saur"]:"saur",["Kali"]:"kali",["Rjng"]:"rjng",["Lyci"]:"lyci",["Cari"]:"cari",["Lydi"]:"lydi",["Cham"]:"cham",["Lana"]:"lana",["Tavt"]:"tavt",["Avst"]:"avst",["Egyp"]:"egyp",["Samr"]:"samr",["Lisu"]:"lisu",["Bamu"]:"bamu",["Java"]:"java",["Mtei"]:"mtei",["Armi"]:"armi",["Sarb"]:"sarb",["Prti"]:"prti",["Phli"]:"phli",["Orkh"]:"orkh",["Kthi"]:"kthi",["Batk"]:"batk",["Brah"]:"brah",["Mand"]:"mand",["Cakm"]:"cakm",["Merc"]:"merc",["Mero"]:"mero",["Plrd"]:"plrd",["Shrd"]:"shrd",["Sora"]:"sora",["Takr"]:"takr",["Aghb"]:"aghb",["Bass"]:"bass",["Dupl"]:"dupl",["Elba"]:"elba",["Gran"]:"gran",["Hmng"]:"hmng",["Khoj"]:"khoj",["Lina"]:"lina",["Mahj"]:"mahj",["Mani"]:"mani",["Mend"]:"mend",["Modi"]:"modi",["Mroo"]:"mroo",["Narb"]:"narb",["Nbat"]:"nbat",["Palm"]:"palm",["Pauc"]:"pauc",["Perm"]:"perm",["Phlp"]:"phlp",["Sidd"]:"sidd",["Sind"]:"sind",["Tirh"]:"tirh",["Wara"]:"wara",["Ahom"]:"ahom",["Hluw"]:"hluw",["Hatr"]:"hatr",["Mult"]:"mult",["Hung"]:"hung",["Sgnw"]:"sgnw",["Adlm"]:"adlm",["Bhks"]:"bhks",["Marc"]:"marc",["Newa"]:"newa",["Osge"]:"osge",["Tang"]:"tang",["Gonm"]:"gonm",["Nshu"]:"nshu",["Soyo"]:"soyo",["Zanb"]:"zanb",["Dogr"]:"dogr",["Gong"]:"gong",["Maka"]:"maka",["Medf"]:"medf",["Rohg"]:"rohg",["Sogd"]:"sogd",["Sogo"]:"sogo",["Elym"]:"elym",["Nand"]:"nand",["Hmnp"]:"hmnp",["Wcho"]:"wcho",["Yezi"]:"yezi",["Chrs"]:"chrs",["Diak"]:"diak",["Kits"]:"kits",["Vith"]:"vith",["Ougr"]:"ougr",["Cpmn"]:"cpmn",["Tnsa"]:"tnsa",["Toto"]:"toto",["Kawi"]:"kawi",["Nagm"]:"nagm"}[$]??"DFLT"}var K2=new Set(["Arab","Syrc","Hebr","Thaa","Nkoo","Deva","Beng","Guru","Gujr","Orya","Taml","Telu","Knda","Mlym","Sinh","Thai","Laoo","Tibt","Mymr","Khmr","Mong","Hang"]),J2=new Set(["Arab","Hebr","Syrc","Thaa","Nkoo","Samr","Mand","Armi","Phnx","Sarb","Narb","Avst","Prti","Phli","Phlp","Hatr","Lydi","Nbat","Palm","Mani","Mend","Rohg","Yezi","Sogo","Sogd","Elym","Chrs","Ougr","Adlm"]);function q2($){return K2.has($)}function U2($){return J2.has($)?"rtl":"ltr"}var CW;((G)=>{G[G.Other=0]="Other";G[G.CR=1]="CR";G[G.LF=2]="LF";G[G.Control=3]="Control";G[G.Extend=4]="Extend";G[G.ZWJ=5]="ZWJ";G[G.Regional_Indicator=6]="Regional_Indicator";G[G.Prepend=7]="Prepend";G[G.SpacingMark=8]="SpacingMark";G[G.L=9]="L";G[G.V=10]="V";G[G.T=11]="T";G[G.LV=12]="LV";G[G.LVT=13]="LVT";G[G.Extended_Pictographic=14]="Extended_Pictographic"})(CW||={});var SW;((A)=>{A[A.Other=0]="Other";A[A.CR=1]="CR";A[A.LF=2]="LF";A[A.Newline=3]="Newline";A[A.Extend=4]="Extend";A[A.ZWJ=5]="ZWJ";A[A.Regional_Indicator=6]="Regional_Indicator";A[A.Format=7]="Format";A[A.Katakana=8]="Katakana";A[A.Hebrew_Letter=9]="Hebrew_Letter";A[A.ALetter=10]="ALetter";A[A.Single_Quote=11]="Single_Quote";A[A.Double_Quote=12]="Double_Quote";A[A.MidNumLet=13]="MidNumLet";A[A.MidLetter=14]="MidLetter";A[A.MidNum=15]="MidNum";A[A.Numeric=16]="Numeric";A[A.ExtendNumLet=17]="ExtendNumLet";A[A.WSegSpace=18]="WSegSpace";A[A.Extended_Pictographic=19]="Extended_Pictographic"})(SW||={});function _Q($){if($===13)return 1;if($===10)return 2;if($>=0&&$<=31&&$!==10&&$!==13)return 3;if($>=127&&$<=159)return 3;if($===173)return 3;if($===1564)return 3;if($===6158)return 3;if($===8203)return 3;if($>=8206&&$<=8207)return 3;if($>=8232&&$<=8238)return 3;if($>=8288&&$<=8303)return 3;if($===65279)return 3;if($>=65520&&$<=65531)return 3;if($===8205)return 5;if($>=127456&&$<=127487)return 6;if($===1536||$===1537||$===1538||$===1539||$===1540||$===1541||$===1757||$===1807||$===2192||$===2193||$===2274||$===69821||$===69837)return 7;if($>=4352&&$<=4447)return 9;if($>=43360&&$<=43388)return 9;if($>=4448&&$<=4519)return 10;if($>=55216&&$<=55238)return 10;if($>=4520&&$<=4607)return 11;if($>=55243&&$<=55291)return 11;if($>=44032&&$<=55203){if(($-44032)%28===0)return 12;return 13}if($>=127744&&$<=129535)return 14;if($>=129536&&$<=129791)return 14;if($>=9728&&$<=9983)return 14;if($>=9984&&$<=10175)return 14;if($===169||$===174)return 14;if($>=8960&&$<=9215)return 14;if($>=126976&&$<=127023)return 14;if($>=127136&&$<=127231)return 14;if($>=127232&&$<=127487)return 14;if($>=127488&&$<=127743)return 14;if($>=2307&&$<=2307)return 8;if($>=2363&&$<=2363)return 8;if($>=2366&&$<=2368)return 8;if($>=2377&&$<=2380)return 8;if($>=2382&&$<=2383)return 8;if($>=2434&&$<=2435)return 8;if($>=2494&&$<=2496)return 8;if($>=2503&&$<=2508)return 8;if($===2519)return 8;if($>=2563&&$<=2563)return 8;if($>=2622&&$<=2624)return 8;if($>=2691&&$<=2691)return 8;if($>=2750&&$<=2752)return 8;if($===2761)return 8;if($>=2763&&$<=2764)return 8;if($>=2818&&$<=2819)return 8;if($===2878)return 8;if($===2880)return 8;if($>=2887&&$<=2892)return 8;if($===2903)return 8;if($>=3006&&$<=3007)return 8;if($>=3009&&$<=3020)return 8;if($===3031)return 8;if($>=3073&&$<=3075)return 8;if($>=3137&&$<=3140)return 8;if($>=3202&&$<=3203)return 8;if($===3262)return 8;if($>=3264&&$<=3268)return 8;if($>=3271&&$<=3275)return 8;if($>=3285&&$<=3286)return 8;if($>=3330&&$<=3331)return 8;if($>=3390&&$<=3392)return 8;if($>=3398&&$<=3404)return 8;if($===3415)return 8;if($>=3458&&$<=3459)return 8;if($>=3535&&$<=3537)return 8;if($>=3544&&$<=3551)return 8;if($>=3570&&$<=3571)return 8;if($===3902||$===3903)return 8;if($===3967)return 8;if($>=4139&&$<=4140)return 8;if($===4145)return 8;if($===4152)return 8;if($>=4155&&$<=4156)return 8;if($>=4182&&$<=4183)return 8;if($===4194)return 8;if($>=4199&&$<=4200)return 8;if($>=4227&&$<=4228)return 8;if($>=4231&&$<=4236)return 8;if($===4239)return 8;if($>=4250&&$<=4252)return 8;if($>=6070&&$<=6070)return 8;if($>=6078&&$<=6085)return 8;if($>=6087&&$<=6088)return 8;if($>=6435&&$<=6438)return 8;if($>=6441&&$<=6443)return 8;if($>=6448&&$<=6449)return 8;if($>=6451&&$<=6456)return 8;if($>=768&&$<=879)return 4;if($>=1155&&$<=1161)return 4;if($>=1425&&$<=1469)return 4;if($===1471)return 4;if($>=1473&&$<=1474)return 4;if($>=1476&&$<=1477)return 4;if($===1479)return 4;if($>=1552&&$<=1562)return 4;if($>=1611&&$<=1631)return 4;if($===1648)return 4;if($>=1750&&$<=1756)return 4;if($>=1759&&$<=1764)return 4;if($>=1767&&$<=1768)return 4;if($>=1770&&$<=1773)return 4;if($===1809)return 4;if($>=1840&&$<=1866)return 4;if($>=1958&&$<=1968)return 4;if($>=2027&&$<=2035)return 4;if($===2045)return 4;if($>=2070&&$<=2073)return 4;if($>=2075&&$<=2083)return 4;if($>=2085&&$<=2087)return 4;if($>=2089&&$<=2093)return 4;if($>=2137&&$<=2139)return 4;if($>=2259&&$<=2273)return 4;if($>=2275&&$<=2306)return 4;if($===2362)return 4;if($===2364)return 4;if($>=2369&&$<=2376)return 4;if($===2381)return 4;if($>=2385&&$<=2391)return 4;if($>=2402&&$<=2403)return 4;if($===2433)return 4;if($===2492)return 4;if($>=2497&&$<=2500)return 4;if($===2509)return 4;if($>=2530&&$<=2531)return 4;if($===2558)return 4;if($>=2561&&$<=2562)return 4;if($===2620)return 4;if($>=2625&&$<=2626)return 4;if($>=2631&&$<=2632)return 4;if($>=2635&&$<=2637)return 4;if($===2641)return 4;if($>=2672&&$<=2673)return 4;if($===2677)return 4;if($>=2689&&$<=2690)return 4;if($===2748)return 4;if($>=2753&&$<=2757)return 4;if($>=2759&&$<=2760)return 4;if($===2765)return 4;if($>=2786&&$<=2787)return 4;if($>=2810&&$<=2815)return 4;if($===2817)return 4;if($===2876)return 4;if($===2879)return 4;if($>=2881&&$<=2884)return 4;if($===2893)return 4;if($>=2901&&$<=2902)return 4;if($>=2914&&$<=2915)return 4;if($===2946)return 4;if($===3008)return 4;if($===3021)return 4;if($===3072)return 4;if($===3076)return 4;if($>=3134&&$<=3136)return 4;if($>=3142&&$<=3144)return 4;if($>=3146&&$<=3149)return 4;if($>=3157&&$<=3158)return 4;if($>=3170&&$<=3171)return 4;if($===3201)return 4;if($===3260)return 4;if($===3263)return 4;if($===3270)return 4;if($>=3276&&$<=3277)return 4;if($>=3298&&$<=3299)return 4;if($>=3328&&$<=3329)return 4;if($>=3387&&$<=3388)return 4;if($>=3393&&$<=3396)return 4;if($===3405)return 4;if($>=3426&&$<=3427)return 4;if($===3457)return 4;if($===3530)return 4;if($>=3538&&$<=3540)return 4;if($===3542)return 4;if($===3633)return 4;if($>=3636&&$<=3642)return 4;if($>=3655&&$<=3662)return 4;if($===3761)return 4;if($>=3764&&$<=3772)return 4;if($>=3784&&$<=3789)return 4;if($>=3864&&$<=3865)return 4;if($===3893)return 4;if($===3895)return 4;if($===3897)return 4;if($>=3953&&$<=3966)return 4;if($>=3968&&$<=3972)return 4;if($>=3974&&$<=3975)return 4;if($>=3981&&$<=3991)return 4;if($>=3993&&$<=4028)return 4;if($===4038)return 4;if($>=4141&&$<=4144)return 4;if($>=4146&&$<=4151)return 4;if($>=4153&&$<=4154)return 4;if($>=4157&&$<=4158)return 4;if($>=4184&&$<=4185)return 4;if($>=4190&&$<=4192)return 4;if($>=4209&&$<=4212)return 4;if($===4226)return 4;if($>=4229&&$<=4230)return 4;if($===4237)return 4;if($===4253)return 4;if($>=4957&&$<=4959)return 4;if($>=5906&&$<=5908)return 4;if($>=5938&&$<=5940)return 4;if($>=5970&&$<=5971)return 4;if($>=6002&&$<=6003)return 4;if($>=6068&&$<=6069)return 4;if($>=6071&&$<=6077)return 4;if($===6086)return 4;if($>=6089&&$<=6099)return 4;if($===6109)return 4;if($>=6155&&$<=6157)return 4;if($===6159)return 4;if($>=6277&&$<=6278)return 4;if($===6313)return 4;if($>=6432&&$<=6434)return 4;if($>=6439&&$<=6440)return 4;if($===6450)return 4;if($>=6457&&$<=6459)return 4;if($>=6679&&$<=6680)return 4;if($===6683)return 4;if($===6742)return 4;if($>=6744&&$<=6750)return 4;if($===6752)return 4;if($===6754)return 4;if($>=6757&&$<=6764)return 4;if($>=6771&&$<=6780)return 4;if($===6783)return 4;if($>=6832&&$<=6862)return 4;if($>=6912&&$<=6915)return 4;if($===6964)return 4;if($>=6966&&$<=6970)return 4;if($===6972)return 4;if($===6978)return 4;if($>=7019&&$<=7027)return 4;if($>=7040&&$<=7041)return 4;if($>=7074&&$<=7077)return 4;if($>=7080&&$<=7081)return 4;if($>=7083&&$<=7085)return 4;if($===7142)return 4;if($>=7144&&$<=7145)return 4;if($===7149)return 4;if($>=7151&&$<=7153)return 4;if($>=7212&&$<=7219)return 4;if($>=7222&&$<=7223)return 4;if($>=7376&&$<=7378)return 4;if($>=7380&&$<=7392)return 4;if($>=7394&&$<=7400)return 4;if($===7405)return 4;if($===7412)return 4;if($>=7416&&$<=7417)return 4;if($>=7616&&$<=7679)return 4;if($>=8400&&$<=8432)return 4;if($>=11503&&$<=11505)return 4;if($===11647)return 4;if($>=11744&&$<=11775)return 4;if($>=12330&&$<=12335)return 4;if($>=12441&&$<=12442)return 4;if($>=42607&&$<=42610)return 4;if($>=42612&&$<=42621)return 4;if($>=42654&&$<=42655)return 4;if($>=42736&&$<=42737)return 4;if($===43010)return 4;if($===43014)return 4;if($===43019)return 4;if($>=43045&&$<=43046)return 4;if($===43052)return 4;if($>=43204&&$<=43205)return 4;if($>=43232&&$<=43249)return 4;if($===43263)return 4;if($>=43302&&$<=43309)return 4;if($>=43335&&$<=43345)return 4;if($>=43392&&$<=43394)return 4;if($===43443)return 4;if($>=43446&&$<=43449)return 4;if($>=43452&&$<=43453)return 4;if($===43493)return 4;if($>=43561&&$<=43566)return 4;if($>=43569&&$<=43570)return 4;if($>=43573&&$<=43574)return 4;if($===43587)return 4;if($===43596)return 4;if($===43644)return 4;if($===43696)return 4;if($>=43698&&$<=43700)return 4;if($>=43703&&$<=43704)return 4;if($>=43710&&$<=43711)return 4;if($===43713)return 4;if($>=43756&&$<=43757)return 4;if($===43766)return 4;if($===44005)return 4;if($===44008)return 4;if($===44013)return 4;if($===64286)return 4;if($>=65024&&$<=65039)return 4;if($>=65056&&$<=65071)return 4;if($>=127995&&$<=127999)return 4;if($>=917760&&$<=917999)return 4;return 0}function hW($){if($===13)return 1;if($===10)return 2;if($===11||$===12||$===133||$===8232||$===8233)return 3;if($===8205)return 5;if($===173)return 7;if($===1564)return 7;if($===8203)return 7;if($>=8206&&$<=8207)return 7;if($>=8288&&$<=8303)return 7;if($===65279)return 7;if($>=127456&&$<=127487)return 6;if($>=127744&&$<=129535)return 19;if($>=129536&&$<=129791)return 19;if($>=9728&&$<=9983)return 19;if($>=9984&&$<=10175)return 19;if($>=1488&&$<=1514)return 9;if($>=64285&&$<=64335)return 9;if($>=12448&&$<=12543)return 8;if($===12337||$===12338||$===12339||$===12340||$===12341)return 8;if($===12443||$===12444)return 8;if($>=12784&&$<=12799)return 8;if($>=13008&&$<=13054)return 8;if($>=13056&&$<=13143)return 8;if($>=65382&&$<=65437)return 8;if($===39)return 11;if($===34)return 12;if($===46)return 13;if($===8216||$===8217)return 13;if($===8228)return 13;if($===65106)return 13;if($===65287)return 13;if($===65294)return 13;if($===58)return 14;if($===183)return 14;if($===903)return 14;if($===1524)return 14;if($===8231)return 14;if($===65043)return 14;if($===65109)return 14;if($===65306)return 14;if($===44)return 15;if($===59)return 15;if($===894)return 15;if($===1417)return 15;if($===1548||$===1549)return 15;if($===1644)return 15;if($===2040)return 15;if($===8260)return 15;if($===65040)return 15;if($===65044)return 15;if($===65104)return 15;if($===65108)return 15;if($===65292)return 15;if($===65307)return 15;if($>=48&&$<=57)return 16;if($>=1632&&$<=1641)return 16;if($>=1776&&$<=1785)return 16;if($>=1984&&$<=1993)return 16;if($>=2406&&$<=2415)return 16;if($>=2534&&$<=2543)return 16;if($>=2662&&$<=2671)return 16;if($>=2790&&$<=2799)return 16;if($>=2918&&$<=2927)return 16;if($>=3046&&$<=3055)return 16;if($>=3174&&$<=3183)return 16;if($>=3302&&$<=3311)return 16;if($>=3430&&$<=3439)return 16;if($>=3558&&$<=3567)return 16;if($>=3664&&$<=3673)return 16;if($>=3792&&$<=3801)return 16;if($>=3872&&$<=3881)return 16;if($>=4160&&$<=4169)return 16;if($>=4240&&$<=4249)return 16;if($>=6112&&$<=6121)return 16;if($>=6160&&$<=6169)return 16;if($>=6470&&$<=6479)return 16;if($>=6608&&$<=6617)return 16;if($>=6784&&$<=6793)return 16;if($>=6800&&$<=6809)return 16;if($>=6992&&$<=7001)return 16;if($>=7088&&$<=7097)return 16;if($>=7232&&$<=7241)return 16;if($>=7248&&$<=7257)return 16;if($>=42528&&$<=42537)return 16;if($>=43216&&$<=43225)return 16;if($>=43264&&$<=43273)return 16;if($>=43472&&$<=43481)return 16;if($>=43504&&$<=43513)return 16;if($>=43600&&$<=43609)return 16;if($>=44016&&$<=44025)return 16;if($>=65296&&$<=65305)return 16;if($===95)return 17;if($===8239)return 17;if($===8256)return 17;if($===8276)return 17;if($===65075||$===65076)return 17;if($>=65101&&$<=65103)return 17;if($===65343)return 17;if($===32)return 18;if($===5760)return 18;if($>=8192&&$<=8202&&$!==8199)return 18;if($===8287)return 18;if($===12288)return 18;if(_Q($)===4)return 4;if($>=65&&$<=90)return 10;if($>=97&&$<=122)return 10;if($>=192&&$<=214)return 10;if($>=216&&$<=246)return 10;if($>=248&&$<=591)return 10;if($>=592&&$<=687)return 10;if($>=880&&$<=1023)return 10;if($>=1024&&$<=1279)return 10;if($>=1280&&$<=1327)return 10;if($>=1329&&$<=1366)return 10;if($>=1376&&$<=1416)return 10;if($>=1536&&$<=1791)return 10;if($>=2304&&$<=2431)return 10;if($>=2432&&$<=2559)return 10;if($>=2560&&$<=2687)return 10;if($>=2688&&$<=2815)return 10;if($>=2816&&$<=2943)return 10;if($>=2944&&$<=3071)return 10;if($>=3072&&$<=3199)return 10;if($>=3200&&$<=3327)return 10;if($>=3328&&$<=3455)return 10;if($>=3584&&$<=3711)return 10;if($>=3712&&$<=3839)return 10;if($>=4096&&$<=4255)return 10;if($>=4256&&$<=4351)return 10;if($>=4352&&$<=4607)return 10;if($>=6016&&$<=6143)return 10;if($>=12352&&$<=12447)return 10;if($>=7936&&$<=8191)return 10;if($>=11264&&$<=11359)return 10;if($>=40960&&$<=42127)return 10;if($>=42192&&$<=42239)return 10;if($>=42240&&$<=42559)return 10;if($>=42560&&$<=42655)return 10;if($>=42784&&$<=43007)return 10;if($>=43776&&$<=43887)return 10;if($>=44032&&$<=55215)return 10;if($>=64256&&$<=64262)return 10;if($>=65313&&$<=65338)return 10;if($>=65345&&$<=65370)return 10;return 0}function NQ($){let Q=$.length,Z=[],K=[];for(let U=0;U<$.length;U++){let W=$[U];Z.push(_Q(W))}if(Q===0)return{boundaries:K,properties:Z};let J=0,q=!1;for(let U=1;U<Q;U++){let W=Z[U-1],H=Z[U],_=!0;if(W===1&&H===2)_=!1;else if(W===3||W===1||W===2)_=!0;else if(H===3||H===1||H===2)_=!0;else if(W===9&&(H===9||H===10||H===12||H===13))_=!1;else if((W===12||W===10)&&(H===10||H===11))_=!1;else if((W===13||W===11)&&H===11)_=!1;else if(H===4||H===5)_=!1;else if(H===8)_=!1;else if(W===7)_=!1;else if(q&&W===5&&H===14)_=!1;else if(W===6&&H===6){if(J%2===1)_=!1}if(H===14)q=!0;else if(H!==4&&H!==5)q=!1;if(H===6)J++;else J=0;if(_)K.push(U)}return K.push(Q),{boundaries:K,properties:Z}}function yW($){let Q=$.length,Z=[],K=[];for(let q=0;q<$.length;q++){let U=$[q];Z.push(hW(U))}if(Q===0)return{boundaries:K,properties:Z};K.push(0);let J=0;for(let q=1;q<Q;q++){let U=Z[q-1],W=Z[q],H=!0;if(U===1&&W===2)H=!1;else if(U===3||U===1||U===2)H=!0;else if(W===3||W===1||W===2)H=!0;else if(U===5&&W===19)H=!1;else if(U===18&&W===18)H=!1;else if(W===7||W===4||W===5)H=!1;else if((U===10||U===9)&&(W===10||W===9))H=!1;else if((U===10||U===9)&&(W===14||W===13||W===11)){if(q+1<Q){let _=Z[q+1];if(_===10||_===9)H=!1}}else if(U===16&&W===16)H=!1;else if((U===10||U===9)&&W===16)H=!1;else if(U===16&&(W===10||W===9))H=!1;else if(U===16&&(W===15||W===13||W===11)){if(q+1<Q&&Z[q+1]===16)H=!1}else if(U===8&&W===8)H=!1;else if((U===10||U===9||U===16||U===8||U===17)&&W===17)H=!1;else if(U===17&&(W===10||W===9||W===16||W===8))H=!1;else if(U===6&&W===6){if(J%2===1)H=!1}if(W===6)J++;else J=0;if(H)K.push(q)}return K.push(Q),{boundaries:K,properties:Z}}function W2($){let Q=[],Z=[...$];for(let U=0;U<Z.length;U++){let W=Z[U];Q.push(W.codePointAt(0)??0)}let{boundaries:K}=NQ(Q),J=[],q=0;for(let U=0;U<K.length;U++){let W=K[U];if(W>q)J.push(Z.slice(q,W).join(""));q=W}return J}function H2($){let Q=[],Z=[...$];for(let U=0;U<Z.length;U++){let W=Z[U];Q.push(W.codePointAt(0)??0)}let{boundaries:K,properties:J}=yW(Q),q=[];for(let U=0;U<K.length-1;U++){let W=K[U],H=K[U+1],_=!1;for(let N=W;N<H;N++){let V=J[N];if(V!==18&&V!==1&&V!==2&&V!==3){_=!0;break}}if(_)q.push(Z.slice(W,H).join(""))}return q}function _2($){let Q=[],Z=[...$];for(let J=0;J<Z.length;J++){let q=Z[J];Q.push(q.codePointAt(0)??0)}let{boundaries:K}=NQ(Q);return K.length}export{zj as verticalLayoutFeatures,SU as verticalKanaAlternates,kU as verticalForms,CU as verticalAlternatesRotation,OH as vectorLength,SH as validateOutline,uV as useTypoMetrics,BH as upscale,ZH as updateMinTransformedX,a6 as truncPixel,KH as translateOutline,c8 as translate2D,t as transformPoint3x3,$6 as transformPoint2D,I9 as transformOutline3D,O6 as transformOutline2D,Tj as traditionalForms,Fj as thirdWidthForms,P9 as tagToString,k as tag,Jj as tabularFigures,tX as swash,Hj as superscript,_j as subscript,L5 as subBitmaps,pX as stylisticSets,OU as stylisticSet,rX as stylisticAlternates,m4 as strokeUniform,$9 as strokePath,d9 as strokeAsymmetricCombined,g8 as strokeAsymmetric,cX as standardLigatures,H2 as splitWords,W2 as splitGraphemes,vU as smallCaps,Wj as slashedZero,Rj as simplifiedForms,X4 as signedDistanceToQuadratic,N4 as signedDistanceToLine,z4 as signedDistanceToCubic,IH as sign,jN as shouldGridFit,zN as shouldDoGray,b9 as shiftBitmap,I8 as shear2D,d7 as shapedTextToSVGWithVariation,f7 as shapedTextToSVG,_W as shapeInto,aj as shape,B0 as setSize,o8 as setCodeRange,Nj as scientificInferiors,QH as scaleOutlinePow2,JH as scaleOutline,P8 as scale2D,O9 as runProgram,A0 as runGlyphProgram,E0 as runFontProgram,w0 as runCVTProgram,Gj as ruby,h1 as roundUpToGrid,k1 as roundToHalfGrid,Z8 as roundToGrid,C1 as roundToDoubleGrid,m1 as roundSuper45,b1 as roundSuper,FH as roundPixel,y1 as roundOff,S1 as roundDownToGrid,X8 as round,$H as rotateOutline90,qH as rotateOutline,v8 as rotate2D,JU as resolveDupeGlyph,t8 as resizeBitmapBilinear,h8 as resizeBitmap,J1 as reorderMarks,BW as reorderGlyphs,l7 as renderShapedTextWithVariation,x7 as renderShapedText,y8 as renderSdf,b8 as renderMsdf,VK as rasterizeText,e8 as rasterizePathWithGradient,r6 as rasterizePath,OX as rasterizeLcd,u0 as rasterizeGlyph,Aj as quarterWidthForms,wj as proportionalWidthForms,Kj as proportionalFigures,T1 as processRearrangement,P1 as processLigature,v1 as processInsertion,O1 as processContextual,nz as processBidi,SK as pipe,eX as petiteCaps,N5 as perspectiveMatrix,p7 as pathToSVGWithMatrix3D,n7 as pathToSVGWithMatrix,G8 as pathToSVG,k0 as pathToCanvasWithMatrix3D,I0 as pathToCanvasWithMatrix,s8 as pathToCanvas,f4 as path,M9 as parseSuperRound,s9 as parseScriptList,X$ as parsePrep,R$ as parsePost,M$ as parseOs2,B$ as parseName,F$ as parseMath,DN as parseLookupHeaders,z$ as parseJstf,t5 as parseGasp,V$ as parseFpgm,O$ as parseFontDirectory,a9 as parseFeatureList,r5 as parseFeat,j$ as parseCvt,a5 as parseCpal,i as parseCoverageAt,Mq as parseCoverage,s5 as parseColr,M6 as parseClassDefAt,Dq as parseClassDef,o5 as parseCff2,n5 as parseCff,d5 as parseBase,m9 as padBitmap,Uj as ordinals,XN as openTypeTagToAat,Qj as oldstyleFigures,Q9 as obliquePath,PH as normalizeVector,k5 as normalizeAxisValue,fX as normalize,az as mustBreakAt,v9 as multiply3x3,k8 as multiply2D,RH as mulFix,z5 as mulDiv,F5 as mulBitmaps,OK as msdfAtlasToRGBA,TK as msdfAtlasToRGB,_4 as median,B5 as maxBitmaps,o7 as matrixToSVGTransform,ZX as matchAxisValue,L0 as loadFontProgram,D0 as loadCVTProgram,Zj as liningFigures,kX as lcdToRGBA,jj as kerning,DX as justifyParagraph,AU as justify,Bj as jis90Forms,Dj as jis83Forms,Lj as jis78Forms,Mj as jis2004Forms,UH as italicizeOutline,Rq as isVariationIndexTable,P$ as isTrueType,$2 as isScript,fz as isRTL,$X as isOlderSiblingFont,lV as isMonospaced,lz as isLTR,mV as isItalic,NV as isExtendedShape,WN as isExclusiveFeature,eV as isElidableAxisValue,q2 as isComplexScript,$N as isColrV1,cV as isCFF,gV as isBold,S0 as interpolateGradient,H5 as identity3x3,v6 as identity2D,i7 as hypot,sX as historicalLigatures,z7 as hintedToPixels,M0 as hintGlyph,_X as hasVertOriginY,KX as hasSvgGlyph,NN as hasSettingValue,cW as hasGlyphOutline,oV as hasGlyphBitmap,i_ as hasColorGlyph,M_ as hasColorBitmap,Yj as halfWidthForms,x4 as glyphVar,HH as glyphToSVG,_H as glyphBufferToShapedGlyphs,g4 as glyph,TV as getXHeightDelta,hW as getWordBreakProperty,zX as getVorgDelta,uz as getVisualOrder,VV as getVerticalVariants,WX as getVerticalMetrics,jV as getVerticalAssembly,HX as getVertOriginY,hV as getVersion,XX as getTsbDelta,NU as getTrackingValue,_V as getTopAccentAttachment,NH as getTextWidth,JX as getSvgGlyphIds,WU as getSvgDocument,BX as getSubstitutedLookups,KU as getStrikeForPpem,E$ as getShrinkageMods,_N as getSettingByValue,ez as getScripts,Z2 as getScriptTag,Q2 as getScriptRuns,U2 as getScriptDirection,N0 as getScript,nV as getSbixGlyphBitmap,SV as getPostScriptName,q8 as getPathBounds,U1 as getOrCreateShapePlan,R8 as getNameById,MW as getMirror,A_ as getMinMaxExtent,Q0 as getMetricDelta,s0 as getMarkAttachmentType,vW as getLineBreakClass,QN as getLayerPaint,$V as getKerxValue,A$ as getKernValue,Y$ as getJstfPriorities,HV as getItalicsCorrection,XV as getHorizontalVariants,zV as getHorizontalAssembly,RV as getHDescenderDelta,MV as getHAscenderDelta,_Q as getGraphemeBreakProperty,EK as getGlyphUV,C9 as getGlyphPathWithVariation,y6 as getGlyphPath,fV as getGlyphName,P0 as getGlyphLocation,oW as getGlyphDelta,e5 as getGaspBehavior,CV as getFullName,kV as getFontSubfamily,IV as getFontFamily,hH as getFillRuleFromFlags,a0 as getFeature,w$ as getExtensionMods,G$ as getExtenderGlyphs,$K as getExactBounds,DW as getEmbeddings,xV as getEmbeddingPermission,Tq as getDeviceDelta,HN as getDefaultSetting,w_ as getDefaultBaseline,_8 as getCombiningClass,t_ as getColorVariationDelta,Jq as getColorPaint,Kq as getColorLayers,R_ as getColorBitmapSizes,ZN as getColor,r_ as getClipBox,xz as getCharType,v_ as getCffString,k_ as getCffGlyphWidth,OV as getCapHeightDelta,jX as getBsbDelta,D_ as getBitmapGlyph,E_ as getBaselineForScript,rV as getAxisValuesForAxis,QX as getAxisValueNumber,sV as getAxisRecord,aV as getAxisIndex,pV as getAvailablePpemSizes,UN as getAllFeatures,rz as getAllBreakOpportunities,S5 as getAdvanceWidthDelta,VX as getAdvanceHeightDelta,qN as getAatFeature,o6 as gaussianBlur,Ej as fullWidthForms,qj as fractions,C8 as fracPixel,LH as floorPixel,AH as floatToPixel,EH as floatToF26Dot6,yH as fixOutline,yW as findWordBoundaries,r9 as findScript,iz as findNextBreak,Z0 as findMatchingFeatureVariation,$$ as findLangSys,NQ as findGraphemeBoundaries,tV as findAxisValueByNameId,Oj as features,hU as feature,f9 as fastGaussianBlur,wH as f26Dot6ToFloat,bH as expandToFit,U5 as executeFontProgram,p5 as executeCffCharString,c0 as executeCff2CharString,q5 as execute,FU as evaluateConditionSet,K9 as emboldenPath,r8 as emboldenBitmap,MH as downscale,TH as divFix,iX as discretionaryLigatures,tz as detectScript,dz as detectDirection,Y8 as decomposePath,q1 as decompose,kj as createShapePlan,j5 as createPath2D,MN as createLookupDigest,F0 as createHintingEngine,h0 as createGradientBitmap,Q8 as createGlyphZone,M5 as createGaussianKernel,p4 as createFace,G0 as createExecContext,I1 as createDefaultGraphicsState,a as createBitmap,_2 as countGraphemes,J6 as copyBitmap,U8 as convertBitmap,X5 as contourToPath,aX as contextualAlternates,Z9 as condensePath,v0 as computeTightBounds,_5 as computeControlBox,D5 as compositeBitmaps,K8 as compensate,k9 as combinePaths,Pj as combineFeatures,d4 as combine,KN as colorToRgba,JN as colorToHex,i8 as clonePath,Y5 as clearBitmap,vH as clamp,oX as characterVariants,PU as characterVariant,u4 as char,DH as ceilPixel,Vj as caseSensitiveForms,m8 as cascadeBlur,IU as capsToSmallCaps,Xj as capitalSpacing,sz as canBreakAt,f_ as calculateVariationDelta,O0 as calculateTupleScalar,K1 as calculateLineWidth,zK as buildStringAtlas,RK as buildMsdfStringAtlas,f0 as buildMsdfAtlas,MK as buildMsdfAsciiAtlas,x0 as buildAtlas,jK as buildAsciiAtlas,LX as breakIntoLines,E8 as boxBlur,QK as blurBitmap,C0 as blendBitmap,u9 as bitmapToRGBA,x9 as bitmapToGray,l4 as bitmap,GK as atlasToRGBA,YK as atlasToAlpha,BK as assignEdgeColors,UX as applyTracking,D$ as applyNonContextual,RW as applyMirroring,VH as applyMatrixToContext,MX as applyFeatureVariations,C$ as applyFallbackMarkPositioning,S$ as applyFallbackKerning,AN as applyDeviceAdjustment,wJ as applyAvarMapping,I5 as applyAvar,HQ as analyzeLineBreaksFromCodepoints,cz as analyzeLineBreaksForGlyphs,oz as analyzeLineBreaks,$j as allSmallCaps,A5 as addBitmaps,l9 as adaptiveBlur,I6 as abs,VN as aatToOpenTypeTag,SW as WordBreakProperty,PV as WindowsEncodingId,bV as WidthClass,yV as WeightClass,Hq as VerticalPositionSetting,Yq as UpperCaseSetting,E7 as UnicodeBuffer,p8 as TouchFlag,p as Tags,jq as StylisticAlternativesSetting,Eq as SmartSwashSetting,_6 as SetDigest,kW as Script,T$ as SbixGraphicType,n8 as RoundMode,c6 as Reader,j9 as PlatformId,D6 as PixelMode,Z6 as PathBuilder,qq as PaletteType,$q as PaintFormat,XH as PIXEL_MASK,A6 as PIXEL_BITS,e7 as OutlineError,D as Opcode,W6 as ONE_PIXEL,Nq as NumberSpacingSetting,_q as NumberCaseSetting,TU as NormalizationMode,M8 as NameId,$0 as MvarTags,L$ as MorxSubtableType,Gq as LowerCaseSetting,b6 as LookupFlag,TW as LineBreakClass,Wq as LigatureSetting,DU as LcdMode,RX as LCD_FILTER_LIGHT,TX as LCD_FILTER_LEGACY,LU as LCD_FILTER_DEFAULT,wU as JustifyMode,nN as JstfPriority,CW as GraphemeBreakProperty,T0 as GlyphClass,O8 as GlyphBuffer,i9 as GaspFlag,e0 as FsType,$1 as FsSelection,Vq as FractionsSetting,z9 as Font,J8 as FillRule,Uq as FeatureType,qG as FeatureTags,Fq as FeatureFlags,u8 as Face,jH as F26DOT6_SHIFT,zH as F26DOT6_ONE,GH as F16DOT16_SHIFT,YH as F16DOT16_ONE,Qq as Extend,Lq as EMPTY_CLASS_DEF,R0 as Direction,wq as DiacriticsSetting,_9 as Coverage,zq as ContextualAlternativesSetting,Zq as CompositeMode,B9 as CodeRange,G7 as ClusterLevel,L8 as ClassDef,Aq as CharacterShapeSetting,F_ as CbdtImageFormat,Xq as CaseSensitiveLayoutSetting,Y7 as BufferFlags,PW as BreakOpportunity,OW as BreakAction,s as BitmapBuilder,d8 as BidiType,z_ as BaselineTag,v$ as AxisValueFlags,bK as $translate,GJ as $toSVG,jJ as $toRGBA,zJ as $toGray,oK as $strokePath,aK as $strokeAsymmetricCombined,sK as $strokeAsymmetric,HJ as $shift,uK as $shear,yK as $scale,gK as $rotateDeg,mK as $rotate,NJ as $resizeBilinear,_J as $resize,$J as $renderSdf,QJ as $renderMsdf,eK as $rasterizeWithGradient,tK as $rasterizeAuto,rK as $rasterize,lK as $perspective,VJ as $pad,pK as $obliquePath,fK as $matrix,xK as $italic,hK as $fromGlyph,UJ as $fastBlur,dK as $emboldenPath,WJ as $embolden,YJ as $copy,XJ as $convert,nK as $condensePath,iK as $combinePaths,cK as $clone,JJ as $cascadeBlur,KJ as $boxBlur,ZJ as $blur,qJ as $adaptiveBlur};
|
|
11
|
+
</svg>`}toCanvas($,Q){let{flipY:Z=!0,scale:K=1,offsetX:J=0,offsetY:q=0,fill:U="black",stroke:W,strokeWidth:H=1}=Q??{};if($.beginPath(),this._transform.matrix3D){let _=this.combinedMatrix3D(K,J,q);k0($,this._path,_,{flipY:Z})}else if(this.hasTransform2D()){let _=this.combinedMatrix2D(K,J,q);I0($,this._path,_,{flipY:Z})}else s8($,this._path,{flipY:Z,scale:K,offsetX:J,offsetY:q});if(U!=="none")$.fillStyle=U,$.fill();if(W)$.strokeStyle=W,$.lineWidth=H,$.stroke()}toPath2D($){let Q=this.applyTransformToPath();return j5(Q,$)}toPath(){return this.applyTransformToPath()}clone(){return new K6(i8(this._path),{matrix2D:[...this._transform.matrix2D],matrix3D:this._transform.matrix3D?this._transform.matrix3D.map(($)=>[...$]):null},this._font)}applyTransformToPath(){if(this._transform.matrix3D){let $=this._transform.matrix2D,Q=[[$[0],$[2],$[4]],[$[1],$[3],$[5]],[0,0,1]],Z=v9(this._transform.matrix3D,Q);return I9(this._path,Z)}return O6(this._path,this._transform.matrix2D)}hasTransform(){return this.hasTransform2D()||this._transform.matrix3D!==null}hasTransform2D(){let $=this._transform.matrix2D;return $[0]!==1||$[1]!==0||$[2]!==0||$[3]!==1||$[4]!==0||$[5]!==0}combinedMatrix2D($,Q,Z){let K=this._transform.matrix2D;return[K[0]*$,K[1]*$,K[2]*$,K[3]*$,K[0]*Q+K[2]*Z+K[4]*$,K[1]*Q+K[3]*Z+K[5]*$]}combinedMatrix3D($,Q,Z){let K=this._transform.matrix2D,J=this._transform.matrix3D??H5(),q=[[K[0]*$,K[2]*$,K[4]*$+Q],[K[1]*$,K[3]*$,K[5]*$+Z],[0,0,1]];return v9(J,q)}}G6();function SK($,...Q){return Q.reduce((Z,K)=>K(Z),$)}function hK($,Q){return h6($,Q)}function yK($,Q){return(Z)=>O6(Z,P8($,Q??$))}function bK($,Q){return(Z)=>O6(Z,c8($,Q))}function mK($){return(Q)=>O6(Q,v8($))}function gK($){return(Q)=>O6(Q,v8($*Math.PI/180))}function uK($,Q){return(Z)=>O6(Z,I8($,Q))}function xK($){let Q=Math.tan($*Math.PI/180);return(Z)=>O6(Z,I8(Q,0))}function fK($){return(Q)=>O6(Q,$)}function lK($){return(Q)=>I9(Q,$)}function dK($){return(Q)=>K9(Q,$)}function nK($){return(Q)=>Z9(Q,$)}function pK($){return(Q)=>Q9(Q,$)}function oK($,Q,Z){let K=typeof $==="number"?{width:$,lineCap:Q,lineJoin:Z}:$;return(J)=>$9(J,K)}function cK(){return($)=>i8($)}function iK($){return k9($)}function sK($){return(Q)=>g8(Q,$)}function aK($){return(Q)=>d9(Q,$)}function rK($){return(Q)=>r6(Q,{width:$.width??100,height:$.height??100,scale:$.scale??1,offsetX:$.offsetX??0,offsetY:$.offsetY??0,pixelMode:$.pixelMode??1,fillRule:$.fillRule??0,flipY:$.flipY??!0})}function tK($){let{padding:Q=1,scale:Z=1,pixelMode:K=1}=$??{};return(J)=>{let q=q8(J,Z,!0);if(!q){let{createBitmap:N}=(G6(),j0(S9));return N(1,1,K)}let U=q.maxX-q.minX+Q*2,W=q.maxY-q.minY+Q*2,H=-q.minX+Q,_=-q.minY+Q;return r6(J,{width:U,height:W,scale:Z,offsetX:H,offsetY:_,pixelMode:K,fillRule:0,flipY:!0})}}function eK($,Q){return(Z)=>e8(Z,$,{width:Q.width??100,height:Q.height??100,scale:Q.scale??1,offsetX:Q.offsetX??0,offsetY:Q.offsetY??0,pixelMode:Q.pixelMode??1,fillRule:Q.fillRule??0,flipY:Q.flipY??!0})}function $J($){return(Q)=>y8(Q,$)}function QJ($){return(Q)=>b8(Q,$)}function ZJ($){return(Q)=>o6(q6(Q),$)}function KJ($){return(Q)=>E8(q6(Q),$)}function JJ($,Q){return(Z)=>m8(q6(Z),$,Q??$)}function qJ($,Q){return(Z)=>l9(q6(Z),$,Q??$)}function UJ($){return(Q)=>f9(q6(Q),$)}function WJ($,Q){return(Z)=>r8(Z,$,Q??$)}function HJ($,Q){return(Z)=>b9(Z,$,Q)}function _J($,Q){return(Z)=>h8(Z,$,Q)}function NJ($,Q){return(Z)=>t8(Z,$,Q)}function VJ($,Q,Z,K){let J=$,q=Q??$,U=Z??$,W=K??$;return(H)=>m9(H,J,q,U,W)}function XJ($){return(Q)=>U8(Q,$)}function jJ($){return u9($)}function zJ($){return x9($)}function GJ($){return(Q)=>G8(Q,$)}function YJ($){return q6($)}function g4($,Q){return K6.fromGlyph($,Q)}function u4($,Q){let Z=Q.codePointAt(0);if(Z===void 0)return null;let K=$.glyphId(Z);if(K===void 0)return null;return K6.fromGlyph($,K)}function x4($,Q,Z){return K6.fromGlyphWithVariation($,Q,Z)}function f4($){return K6.fromPath($)}function l4($){return s.fromBitmap($)}function d4(...$){return K6.combine(...$)}class c6{data;start;end;pos;constructor($,Q=0,Z){if($ instanceof ArrayBuffer)this.data=new DataView($),this.start=Q,this.end=Z!==void 0?Q+Z:$.byteLength;else this.data=$,this.start=$.byteOffset+Q,this.end=Z!==void 0?this.start+Z:$.byteOffset+$.byteLength;this.pos=this.start}get offset(){return this.pos-this.start}get remaining(){return this.end-this.pos}get length(){return this.end-this.start}seek($){this.pos=this.start+$}skip($){this.pos+=$}slice($,Q){return new c6(this.data,this.start+$,Q)}sliceFrom($){return new c6(this.data,this.start+$,this.end-this.start-$)}peek($){let Q=this.pos,Z=$();return this.pos=Q,Z}uint8(){let $=this.data.getUint8(this.pos);return this.pos+=1,$}int8(){let $=this.data.getInt8(this.pos);return this.pos+=1,$}uint16(){let $=this.data.getUint16(this.pos,!1);return this.pos+=2,$}int16(){let $=this.data.getInt16(this.pos,!1);return this.pos+=2,$}uint32(){let $=this.data.getUint32(this.pos,!1);return this.pos+=4,$}int32(){let $=this.data.getInt32(this.pos,!1);return this.pos+=4,$}fixed(){return this.int32()/65536}f2dot14(){return this.int16()/16384}fword(){return this.int16()}ufword(){return this.uint16()}longDateTime(){let $=this.uint32(),Q=this.uint32();return BigInt($)<<32n|BigInt(Q)}tag(){return this.uint32()}tagString(){let $=this.uint32();return String.fromCharCode($>>24&255,$>>16&255,$>>8&255,$&255)}offset16(){return this.uint16()}offset32(){return this.uint32()}uint24(){let $=this.data.getUint8(this.pos),Q=this.data.getUint8(this.pos+1),Z=this.data.getUint8(this.pos+2);return this.pos+=3,$<<16|Q<<8|Z}uint8Array($){let Q=new Uint8Array($);for(let Z=0;Z<$;Z++)Q[Z]=this.uint8();return Q}uint16Array($){let Q=new Uint16Array($);for(let Z=0;Z<$;Z++)Q[Z]=this.uint16();return Q}int16Array($){let Q=new Int16Array($);for(let Z=0;Z<$;Z++)Q[Z]=this.int16();return Q}uint32Array($){let Q=new Uint32Array($);for(let Z=0;Z<$;Z++)Q[Z]=this.uint32();return Q}array($,Q){let Z=Array($);for(let K=0;K<$;K++)Z[K]=Q(this);return Z}ascii($){let Q="";for(let Z=0;Z<$;Z++)Q+=String.fromCharCode(this.uint8());return Q}utf16be($){let Q=[],Z=$/2;for(let K=0;K<Z;K++)Q.push(this.uint16());return String.fromCharCode(...Q)}hasRemaining($){return this.remaining>=$}ensureRemaining($){if(this.remaining<$)throw Error(`Unexpected end of data: need ${$} bytes, have ${this.remaining}`)}bytes($){let Q=new Uint8Array(this.data.buffer,this.data.byteOffset+this.pos,$);return this.pos+=$,Q}readAt($,Q){let Z=this.pos;this.pos=this.start+$;let K=Q(this);return this.pos=Z,K}}function EJ($,Q){let Z=$.uint16(),K=$.uint16();$.skip(2);let J=[];for(let q=0;q<Q;q++){let U=$.uint16(),W=[];for(let H=0;H<U;H++)W.push({fromCoordinate:$.f2dot14(),toCoordinate:$.f2dot14()});J.push({axisValueMaps:W})}return{majorVersion:Z,minorVersion:K,axisSegmentMaps:J}}function wJ($,Q){let Z=$.axisValueMaps;if(Z.length===0)return Q;for(let q=0;q<Z.length-1;q++){let U=Z[q],W=Z[q+1];if(!U||!W)continue;if(Q>=U.fromCoordinate&&Q<=W.fromCoordinate){let H=(Q-U.fromCoordinate)/(W.fromCoordinate-U.fromCoordinate);return U.toCoordinate+H*(W.toCoordinate-U.toCoordinate)}}let K=Z[0],J=Z[Z.length-1];if(K&&Q<=K.fromCoordinate)return K.toCoordinate;return J?.toCoordinate??Q}function I5($,Q){let Z=[];for(let K=0;K<Q.length;K++){let J=Q[K],q=$.axisSegmentMaps[K];if(q)Z.push(wJ(q,J));else Z.push(J)}return Z}function AJ($){let Q=$.uint16(),Z=$.uint16(),K=$.offset16();$.skip(2);let J=$.uint16(),q=$.uint16(),U=$.uint16(),W=$.uint16(),H=[];$.seek(K);for(let V=0;V<J;V++){let X=$.offset,j=$.uint32(),z=$.fixed(),G=$.fixed(),Y=$.fixed(),E=$.uint16(),w=$.uint16();H.push({tag:j,minValue:z,defaultValue:G,maxValue:Y,flags:E,axisNameId:w}),$.seek(X+q)}let _=[],N=W>=4+J*4+2;for(let V=0;V<U;V++){let X=$.offset,j=$.uint16(),z=$.uint16(),G=[];for(let E=0;E<J;E++)G.push($.fixed());let Y={subfamilyNameId:j,flags:z,coordinates:G};if(N)Y.postScriptNameId=$.uint16();_.push(Y),$.seek(X+W)}return{majorVersion:Q,minorVersion:Z,axes:H,instances:_}}function k5($,Q){if(Q<$.defaultValue){if(Q<$.minValue)Q=$.minValue;if($.defaultValue===$.minValue)return 0;return(Q-$.defaultValue)/($.defaultValue-$.minValue)}else if(Q>$.defaultValue){if(Q>$.maxValue)Q=$.maxValue;if($.defaultValue===$.maxValue)return 0;return(Q-$.defaultValue)/($.maxValue-$.defaultValue)}return 0}function FJ($){let Q=$.uint16(),Z=$.uint16(),K=$.offset32(),J=$.offset32(),q=$.offset32(),U=$.offset32(),W=n4($.sliceFrom(K)),H=J!==0?C5($.sliceFrom(J)):null,_=q!==0?C5($.sliceFrom(q)):null,N=U!==0?C5($.sliceFrom(U)):null;return{majorVersion:Q,minorVersion:Z,itemVariationStore:W,advanceWidthMapping:H,lsbMapping:_,rsbMapping:N}}function n4($){let Q=$.uint16(),Z=$.offset32(),K=$.uint16(),J=[];for(let N=0;N<K;N++)J.push($.offset32());let q=$.sliceFrom(Z),U=q.uint16(),W=q.uint16(),H=[];for(let N=0;N<W;N++){let V=[];for(let X=0;X<U;X++)V.push({startCoord:q.f2dot14(),peakCoord:q.f2dot14(),endCoord:q.f2dot14()});H.push({regionAxes:V})}let _=[];for(let N=0;N<J.length;N++){let V=J[N],X=$.sliceFrom(V),j=X.uint16(),z=X.uint16(),G=X.uint16(),Y=[];for(let B=0;B<G;B++)Y.push(X.uint16());let E=(z&32768)!==0,w=z&32767,F=G-w,A=[];for(let B=0;B<j;B++){let L=[];for(let O=0;O<w;O++)if(E)L.push(X.int32());else L.push(X.int16());for(let O=0;O<F;O++)if(E)L.push(X.int16());else L.push(X.int8());A.push(L)}_.push({itemCount:j,regionIndexes:Y,deltaSets:A})}return{format:Q,variationRegions:H,itemVariationData:_}}function C5($){let Q=$.uint8(),Z=$.uint8(),K=Q===0?$.uint16():$.uint32(),J=(Z&15)+1,q=(Z>>4&3)+1,U=[];for(let W=0;W<K;W++){let H=0;for(let V=0;V<q;V++)H=H<<8|$.uint8();let _=H&(1<<J)-1,N=H>>J;U.push({outer:N,inner:_})}return{format:Q,mapCount:K,entryFormat:Z,innerIndexBitCount:J,mapData:U}}function n9($,Q){let Z=1;for(let K=0;K<$.regionAxes.length&&K<Q.length;K++){let J=$.regionAxes[K],q=Q[K];if(J===void 0||q===void 0)continue;if(q<J.startCoord||q>J.endCoord)return 0;if(q===J.peakCoord)continue;if(q<J.peakCoord){if(J.peakCoord===J.startCoord)continue;Z*=(q-J.startCoord)/(J.peakCoord-J.startCoord)}else{if(J.peakCoord===J.endCoord)continue;Z*=(J.endCoord-q)/(J.endCoord-J.peakCoord)}}return Z}function LJ($,Q,Z,K){let J,q;if(K&&Q<K.mapData.length){let _=K.mapData[Q];if(!_)J=0,q=Q;else J=_.outer,q=_.inner}else J=0,q=Q;let U=$.itemVariationStore.itemVariationData[J];if(!U||q>=U.itemCount)return 0;let W=U.deltaSets[q];if(!W)return 0;let H=0;for(let _=0;_<U.regionIndexes.length;_++){let N=U.regionIndexes[_],V=$.itemVariationStore.variationRegions[N];if(!V)continue;let X=n9(V,Z),j=W[_]??0;H+=X*j}return Math.round(H)}function S5($,Q,Z){return LJ($,Q,Z,$.advanceWidthMapping)}function DJ($,Q,Z){if(!$.lsbMapping)return 0;return LJ($,Q,Z,$.lsbMapping)}class u8{font;_coords;_variations;_advanceDeltas=null;constructor($,Q){this.font=$,this._coords=[],this._variations=new Map;let Z=$.fvar;if(Z){if(this._coords=Array(Z.axes.length).fill(0),Q)this.setVariations(Q)}}setVariations($){let Q=this.font.fvar;if(!Q)return;if(this._advanceDeltas=null,Array.isArray($))for(let K=0;K<$.length;K++){let J=$[K];this._variations.set(J.tag,J.value)}else{let K=Object.entries($);for(let J=0;J<K.length;J++){let[q,U]=K[J],W=k(q.padEnd(4," "));this._variations.set(W,U)}}for(let K=0;K<Q.axes.length;K++){let J=Q.axes[K],q=this._variations.get(J.tag)??J.defaultValue;this._coords[K]=k5(J,q)}let Z=this.font.avar;if(Z)this._coords=I5(Z,this._coords)}get normalizedCoords(){return this._coords}get isVariable(){return this.font.isVariable}get axes(){return this.font.fvar?.axes??[]}getAxisValue($){let Q=typeof $==="string"?k($.padEnd(4," ")):$,Z=this.font.fvar;if(!Z)return null;let K=this._variations.get(Q);if(K!==void 0)return K;return Z.axes.find((q)=>q.tag===Q)?.defaultValue??null}advanceWidth($){let Q=this.font.advanceWidth($);if(this._coords.length>0&&this.font.hvar){if(this._advanceDeltas){let K=this._advanceDeltas.get($);if(K!==void 0)return Q+K}else this._advanceDeltas=new Map;let Z=S5(this.font.hvar,$,this._coords);return this._advanceDeltas.set($,Z),Q+Z}return Q}leftSideBearing($){let Q=this.font.leftSideBearing($);if(this._coords.length>0&&this.font.hvar){let Z=DJ(this.font.hvar,$,this._coords);Q+=Z}return Q}get numGlyphs(){return this.font.numGlyphs}get unitsPerEm(){return this.font.unitsPerEm}get ascender(){return this.font.ascender}get descender(){return this.font.descender}get lineGap(){return this.font.lineGap}glyphId($){return this.font.glyphId($)}glyphIdForChar($){return this.font.glyphIdForChar($)}hasTable($){return this.font.hasTable($)}get gdef(){return this.font.gdef}get gsub(){return this.font.gsub}get gpos(){return this.font.gpos}get kern(){return this.font.kern}get morx(){return this.font.morx}get cmap(){return this.font.cmap}get hmtx(){return this.font.hmtx}get hhea(){return this.font.hhea}}function p4($,Q){return new u8($,Q)}var W_=["cmap","head","hhea","hmtx","maxp","name","OS/2","post","cvt ","fpgm","glyf","loca","prep","CFF ","VORG","EBDT","EBLC","gasp","hdmx","kern","LTSH","PCLT","VDMX","vhea","vmtx","BASE","GDEF","GPOS","GSUB","EBSC","JSTF","MATH","CBDT","CBLC","COLR","CPAL","SVG ","sbix","acnt","avar","bdat","bloc","bsln","cvar","fdsc","feat","fmtx","fvar","gvar","hsty","just","lcar","mort","morx","opbd","prop","trak","Zapf","Silf","Glat","Gloc","Feat","Sill"];function uJ($,Q){let Z=0;for(let K=0;K<5;K++){let J=$[Q.value++];if(K===0&&J===128)throw Error("Invalid UIntBase128: leading zeros");if(Z>2097151)throw Error("UIntBase128 overflow");if(Z=Z<<7|J&127,(J&128)===0)return Z}throw Error("UIntBase128 too long")}function l5($,Q){let Z=$[Q.value++];if(Z===253){let K=$[Q.value++],J=$[Q.value++];return K<<8|J}else if(Z===255)return $[Q.value++]+506;else if(Z===254)return $[Q.value++]+253;return Z}function H_($,Q,Z){let K=[];for(let J=0;J<Z;J++){let q=$[Q.value++],U=q&63,W=q>>6&3,H;if(U===63)H=String.fromCharCode($[Q.value++],$[Q.value++],$[Q.value++],$[Q.value++]);else H=W_[U];let _=uJ($,Q),N=_;if(H==="glyf"||H==="loca"?W===0:W!==0)N=uJ($,Q);K.push({tag:H,origLength:_,transformLength:N,transformVersion:W})}return K}async function __($){if(typeof DecompressionStream<"u")try{let Z=new DecompressionStream("brotli"),J=new Blob([$.buffer]).stream().pipeThrough(Z),q=await new Response(J).arrayBuffer();return new Uint8Array(q)}catch{}let{decompress:Q}=await Promise.resolve().then(() => (gJ(),mJ));return Q($)}function d6($,Q,Z){$[Q]=Z>>8&255,$[Q+1]=Z&255}function J9($,Q,Z){$[Q]=Z>>24&255,$[Q+1]=Z>>16&255,$[Q+2]=Z>>8&255,$[Q+3]=Z&255}function A8($,Q){return $[Q]<<8|$[Q+1]}function t6($,Q){let Z=A8($,Q);return Z>=32768?Z-65536:Z}function x8($,Q){return($[Q]<<24|$[Q+1]<<16|$[Q+2]<<8|$[Q+3])>>>0}function xJ($,Q,Z){let K=0,J=Math.ceil(Z/4);for(let q=0;q<J;q++){let U=Q+q*4;K=K+(($[U]||0)<<24|($[U+1]||0)<<16|($[U+2]||0)<<8|($[U+3]||0))>>>0}return K}function p0($){return $+3&-4}function N_($,Q,Z,K,J){let q=[],U=0,W=0;function H(_,N){return _&1?N:-N}for(let _=0;_<Z;_++){let N=$[K.value++],V=N>>7===0,X=N&127,j=0,z=0;if(X<10)j=0,z=H(N,((X&14)<<7)+Q[J.value++]);else if(X<20)j=H(N,((X-10&14)<<7)+Q[J.value++]),z=0;else if(X<84){let G=X-20,Y=Q[J.value++];j=H(N,1+(G&48)+(Y>>4)),z=H(N>>1,1+((G&12)<<2)+(Y&15))}else if(X<120){let G=X-84;j=H(N,1+(Math.floor(G/12)<<8)+Q[J.value++]),z=H(N>>1,1+(G%12>>2<<8)+Q[J.value++])}else if(X<124){let G=Q[J.value++],Y=Q[J.value++],E=Q[J.value++];j=H(N,(G<<4)+(Y>>4)),z=H(N>>1,((Y&15)<<8)+E)}else j=H(N,(Q[J.value++]<<8)+Q[J.value++]),z=H(N>>1,(Q[J.value++]<<8)+Q[J.value++]);U+=j,W+=z,q.push({x:U,y:W,onCurve:V})}return q}function V_($,Q,Z){let K=0,J=A8($,K);if(K+=2,J!==0)throw Error(`Unsupported glyf transform version: ${J}`);let q=A8($,K);K+=2;let U=A8($,K);K+=2;let W=A8($,K);K+=2;let H=x8($,K);K+=4;let _=x8($,K);K+=4;let N=x8($,K);K+=4;let V=x8($,K);K+=4;let X=x8($,K);K+=4;let j=x8($,K);K+=4;let z=x8($,K);K+=4;let G=$.slice(K,K+H);K+=H;let Y=$.slice(K,K+_);K+=_;let E=$.slice(K,K+N);K+=N;let w=$.slice(K,K+V);K+=V;let F=$.slice(K,K+X);K+=X;let A=$.slice(K,K+j);K+=j;let B=$.slice(K,K+z),L={value:0},O={value:0},M={value:0},P={value:0},T={value:0},x={value:0},I={value:0},f=[0],l=[],C=0;for(let c=0;c<Q;c++){let n=t6(G,L.value);if(L.value+=2,n===0){l.push(new Uint8Array(0)),f.push(C);continue}if(n>0){let e=X_(n,Y,O,E,M,w,P,A,x,B,I,q);l.push(e),C+=p0(e.length),f.push(C)}else{let e=j_(F,T,A,x,B,I,q);l.push(e),C+=p0(e.length),f.push(C)}}let R=new Uint8Array(C),y=0;for(let c=0;c<l.length;c++){let n=l[c];R.set(n,y),y+=p0(n.length)}let u=Z===0?(Q+1)*2:(Q+1)*4,d=new Uint8Array(u);for(let c=0;c<=Q;c++)if(Z===0)d6(d,c*2,f[c]/2);else J9(d,c*4,f[c]);return{glyf:R,loca:d}}function X_($,Q,Z,K,J,q,U,W,H,_,N,V){let X=[],j=0;for(let y=0;y<$;y++){let u=l5(Q,Z);j+=u,X.push(j-1)}let z=N_(K,q,j,J,U),G,Y,E,w;if((V&1)===0&&H.value+8<=W.length)G=t6(W,H.value),H.value+=2,Y=t6(W,H.value),H.value+=2,E=t6(W,H.value),H.value+=2,w=t6(W,H.value),H.value+=2;else{G=Y=32767,E=w=-32768;for(let y=0;y<z.length;y++){let u=z[y];G=Math.min(G,u.x),Y=Math.min(Y,u.y),E=Math.max(E,u.x),w=Math.max(w,u.y)}}let A=l5(q,U),B=_.slice(N.value,N.value+A);N.value+=A;let L=[],O=[],M=0,P=0;for(let y=0;y<z.length;y++){let u=z[y];L.push(u.x-M),O.push(u.y-P),M=u.x,P=u.y}let T=[],x=[],I=[];for(let y=0;y<j;y++){let u=z[y].onCurve?1:0,d=L[y],c=O[y];if(d===0)u|=16;else if(d>=-255&&d<=255){if(u|=2,d>0)u|=16;x.push(Math.abs(d))}else x.push(d>>8&255,d&255);if(c===0)u|=32;else if(c>=-255&&c<=255){if(u|=4,c>0)u|=32;I.push(Math.abs(c))}else I.push(c>>8&255,c&255);T.push(u)}let l=10+$*2+2+A+T.length+x.length+I.length,C=new Uint8Array(l),R=0;d6(C,R,$),R+=2,d6(C,R,G&65535),R+=2,d6(C,R,Y&65535),R+=2,d6(C,R,E&65535),R+=2,d6(C,R,w&65535),R+=2;for(let y=0;y<X.length;y++){let u=X[y];d6(C,R,u),R+=2}d6(C,R,A),R+=2,C.set(B,R),R+=A;for(let y=0;y<T.length;y++){let u=T[y];C[R++]=u}for(let y=0;y<x.length;y++){let u=x[y];C[R++]=u}for(let y=0;y<I.length;y++){let u=I[y];C[R++]=u}return C.slice(0,R)}function j_($,Q,Z,K,J,q,U){let W=[],H=t6(Z,K.value);K.value+=2;let _=t6(Z,K.value);K.value+=2;let N=t6(Z,K.value);K.value+=2;let V=t6(Z,K.value);K.value+=2,W.push(255,255),W.push(H>>8&255,H&255),W.push(_>>8&255,_&255),W.push(N>>8&255,N&255),W.push(V>>8&255,V&255);let X=!0,j=!1;while(X){let z=A8($,Q.value);Q.value+=2;let G=A8($,Q.value);if(Q.value+=2,W.push(z>>8&255,z&255),W.push(G>>8&255,G&255),z&1)W.push($[Q.value++]),W.push($[Q.value++]),W.push($[Q.value++]),W.push($[Q.value++]);else W.push($[Q.value++]),W.push($[Q.value++]);if(z&8)W.push($[Q.value++]),W.push($[Q.value++]);else if(z&64)for(let Y=0;Y<4;Y++)W.push($[Q.value++]);else if(z&128)for(let Y=0;Y<8;Y++)W.push($[Q.value++]);if(X=(z&32)!==0,z&256)j=!0}if(j){let z=l5(J,q);W.push(z>>8&255,z&255);for(let G=0;G<z;G++)W.push(J[q.value++])}return new Uint8Array(W)}async function fJ($){let Q=new Uint8Array($),Z=new DataView($);if(Z.getUint32(0,!1)!==2001684018)throw Error("Not a valid WOFF2 file");let J=Z.getUint32(4,!1),q=Z.getUint16(12,!1),U=Z.getUint32(20,!1),W={value:48},H=H_(Q,W,q),_=Q.slice(W.value,W.value+U),N=await __(_),V=new Map,X=0;for(let I=0;I<H.length;I++){let f=H[I],l=N.slice(X,X+f.transformLength);V.set(f.tag,l),X+=f.transformLength}let j=V.get("maxp"),z=V.get("head");if(!j||!z)throw Error("Missing required tables");let G=A8(j,4),Y=t6(z,50),E=H.find((I)=>I.tag==="glyf"),w=H.find((I)=>I.tag==="loca");if(E&&E.transformVersion===0){let I=V.get("glyf");if(!I)throw Error("Missing glyf table data for transform");let{glyf:f,loca:l}=V_(I,G,Y);if(V.set("glyf",f),V.set("loca",l),E.origLength=f.length,w)w.origLength=l.length}let F=12,A=q*16,B=F+A,L=[];for(let I=0;I<H.length;I++){let f=H[I];L.push(B),B+=p0(f.origLength)}let O=new Uint8Array(B),M=2**Math.floor(Math.log2(q))*16,P=Math.floor(Math.log2(q)),T=q*16-M;J9(O,0,J),d6(O,4,q),d6(O,6,M),d6(O,8,P),d6(O,10,T);let x=-1;for(let I=0;I<H.length;I++){let f=H[I],l=V.get(f.tag);if(!l)throw Error(`Missing table data for ${f.tag}`);let C=F+I*16,R=L[I];if(f.tag==="head"&&R!==void 0)x=R;for(let u=0;u<4;u++)O[C+u]=f.tag.charCodeAt(u);let y=xJ(l,0,l.length);J9(O,C+4,y),J9(O,C+8,L[I]),J9(O,C+12,f.origLength),O.set(l.slice(0,f.origLength),L[I])}if(x>=0){let f=2981146554-xJ(O,0,O.length)>>>0;J9(O,x+8,f)}return O.buffer}var z_={hang:1751215719,icfb:1768121954,icft:1768121972,ideo:1768187247,idtp:1768191088,math:1835103336,romn:1919905134};function c9($){let Q=$.uint16(),Z=$.int16(),K={format:Q,coordinate:Z};if(Q===2)K.referenceGlyph=$.uint16(),K.baseCoordPoint=$.uint16();else if(Q===3)K.deviceOffset=$.uint16();return K}function lJ($,Q){if(Q===0)return null;let Z=$.sliceFrom(Q),K=Z.uint16(),J=Z.uint16(),q=Z.uint16(),U=null,W=null;if(K!==0){let _=$.sliceFrom(Q+K);U=c9(_).coordinate}if(J!==0){let _=$.sliceFrom(Q+J);W=c9(_).coordinate}let H=[];for(let _=0;_<q;_++){let N=Z.uint32(),V=Z.uint16(),X=Z.uint16(),j=null,z=null;if(V!==0){let G=$.sliceFrom(Q+V);j=c9(G).coordinate}if(X!==0){let G=$.sliceFrom(Q+X);z=c9(G).coordinate}H.push({featureTag:N,minCoord:j,maxCoord:z})}return{minCoord:U,maxCoord:W,featMinMaxRecords:H}}function G_($,Q,Z){if(Q===0)return null;let K=$.sliceFrom(Q),J=K.uint16(),q=K.uint16(),U=[];for(let H=0;H<q;H++)U.push(K.uint16());let W=[];for(let H=0;H<U.length;H++){let _=U[H];if(_!==0){let N=$.sliceFrom(Q+_);W.push(c9(N).coordinate)}else W.push(0)}return{defaultBaselineIndex:J,baseCoords:W}}function Y_($,Q,Z){let K=$.sliceFrom(Q),J=K.uint16(),q=K.uint16(),U=K.uint16(),W=new Map,H=[];for(let V=0;V<U;V++){let X=K.uint32(),j=K.uint16();H.push({tag:X,offset:j})}let _=G_($,Q+J,Z),N=lJ($,Q+q);for(let V=0;V<H.length;V++){let X=H[V],j=lJ($,Q+X.offset);if(j)W.set(X.tag,j)}return{baseValues:_,defaultMinMax:N,baseLangSysRecords:W}}function dJ($,Q){if(Q===0)return null;let Z=$.sliceFrom(Q),K=Z.uint16(),J=Z.uint16(),q=[];if(K!==0){let W=$.sliceFrom(Q+K),H=W.uint16();for(let _=0;_<H;_++)q.push(W.uint32())}let U=[];if(J!==0){let W=$.sliceFrom(Q+J),H=W.uint16(),_=[];for(let N=0;N<H;N++){let V=W.uint32(),X=W.uint16();_.push({tag:V,offset:X})}for(let N=0;N<_.length;N++){let V=_[N],X=Y_($,Q+J+V.offset,q);U.push({scriptTag:V.tag,...X})}}return{baseTagList:q,baseScriptList:U}}function d5($){let Q=$.uint16(),Z=$.uint16(),K=$.uint16(),J=$.uint16(),q=dJ($,K),U=dJ($,J);return{majorVersion:Q,minorVersion:Z,horizAxis:q,vertAxis:U}}function E_($,Q,Z,K=!0){let J=K?$.horizAxis:$.vertAxis;if(!J)return null;let q=J.baseScriptList.find((W)=>W.scriptTag===Q);if(!q?.baseValues)return null;let U=J.baseTagList.indexOf(Z);if(U===-1)return null;return q.baseValues.baseCoords[U]??null}function w_($,Q,Z=!0){let K=Z?$.horizAxis:$.vertAxis;if(!K)return null;let J=K.baseScriptList.find((H)=>H.scriptTag===Q);if(!J?.baseValues)return null;let q=J.baseValues.defaultBaselineIndex,U=K.baseTagList[q],W=J.baseValues.baseCoords[q];if(U===void 0||W===void 0)return null;return{tag:U,coordinate:W}}function A_($,Q,Z,K=!0){let J=K?$.horizAxis:$.vertAxis;if(!J)return null;let q=J.baseScriptList.find((U)=>U.scriptTag===Q);if(!q)return null;if(Z!==void 0){let U=q.baseLangSysRecords.get(Z);if(U)return{minCoord:U.minCoord,maxCoord:U.maxCoord}}if(q.defaultMinMax)return{minCoord:q.defaultMinMax.minCoord,maxCoord:q.defaultMinMax.maxCoord};return null}var F_={SmallMetrics:1,SmallMetricsPng:17,BigMetrics:2,BigMetricsPng:18,CompressedPng:19};function pJ($){let Q=$.offset,Z=$.uint16(),K=$.uint16(),J=$.uint32(),q=[];for(let U=0;U<J;U++){let W=$.uint32(),H=$.uint32(),_=$.uint32(),N=$.uint32(),V=nJ($),X=nJ($),j=$.uint16(),z=$.uint16(),G=$.uint8(),Y=$.uint8(),E=$.uint8(),w=$.int8();q.push({indexSubTableArrayOffset:W,indexTablesSize:H,numberOfIndexSubTables:_,colorRef:N,hori:V,vert:X,startGlyphIndex:j,endGlyphIndex:z,ppemX:G,ppemY:Y,bitDepth:E,flags:w,indexSubTables:[]})}for(let U=0;U<q.length;U++){let W=q[U],H=$.sliceFrom(Q+W.indexSubTableArrayOffset),_=[];for(let N=0;N<W.numberOfIndexSubTables;N++)_.push({firstGlyphIndex:H.uint16(),lastGlyphIndex:H.uint16(),additionalOffsetToIndexSubtable:H.uint32()});for(let N=0;N<_.length;N++){let V=_[N],X=L_($,Q+W.indexSubTableArrayOffset+V.additionalOffsetToIndexSubtable,V.firstGlyphIndex,V.lastGlyphIndex);W.indexSubTables.push(X)}}return{majorVersion:Z,minorVersion:K,bitmapSizes:q}}function nJ($){return{ascender:$.int8(),descender:$.int8(),widthMax:$.uint8(),caretSlopeNumerator:$.int8(),caretSlopeDenominator:$.int8(),caretOffset:$.int8(),minOriginSB:$.int8(),minAdvanceSB:$.int8(),maxBeforeBL:$.int8(),minAfterBL:$.int8(),pad1:$.int8(),pad2:$.int8()}}function L_($,Q,Z,K){let J=$.sliceFrom(Q),q=J.uint16(),U=J.uint16(),W=J.uint32(),H=new Map,_=K-Z+1;switch(q){case 1:{let N=[];for(let V=0;V<=_;V++)N.push(J.uint32());for(let V=0;V<_;V++){let X=N[V],j=N[V+1];if(X===void 0||j===void 0)continue;if(j>X)H.set(Z+V,{offset:W+X,length:j-X})}break}case 2:{let N=J.uint32(),V={height:J.uint8(),width:J.uint8(),horiBearingX:J.int8(),horiBearingY:J.int8(),horiAdvance:J.uint8(),vertBearingX:J.int8(),vertBearingY:J.int8(),vertAdvance:J.uint8()};for(let X=0;X<_;X++)H.set(Z+X,{offset:W+X*N,length:N});break}case 3:{let N=[];for(let V=0;V<=_;V++)N.push(J.uint16());for(let V=0;V<_;V++){let X=N[V],j=N[V+1];if(X===void 0||j===void 0)continue;if(j>X)H.set(Z+V,{offset:W+X,length:j-X})}break}case 4:{let N=J.uint32(),V=[];for(let X=0;X<=N;X++)V.push({glyphId:J.uint16(),offset:J.uint16()});for(let X=0;X<N;X++){let j=V[X],z=V[X+1];if(j===void 0||z===void 0)continue;H.set(j.glyphId,{offset:W+j.offset,length:z.offset-j.offset})}break}case 5:{let N=J.uint32();J.skip(8);let V=J.uint32();for(let X=0;X<V;X++){let j=J.uint16();H.set(j,{offset:W+X*N,length:N})}break}}return{firstGlyphIndex:Z,lastGlyphIndex:K,indexFormat:q,imageFormat:U,imageDataOffset:W,glyphOffsets:H}}function oJ($){let Q=$.uint16(),Z=$.uint16(),K=$.bytes($.remaining);return{majorVersion:Q,minorVersion:Z,data:K}}function D_($,Q,Z,K){let J=null,q=1/0;for(let U=0;U<$.bitmapSizes.length;U++){let W=$.bitmapSizes[U];if(Z<W.startGlyphIndex||Z>W.endGlyphIndex)continue;let H=Math.abs(W.ppemX-K);if(H<q)q=H,J=W}if(!J)return null;for(let U=0;U<J.indexSubTables.length;U++){let W=J.indexSubTables[U],H=W.glyphOffsets.get(Z);if(!H)continue;let _=Q.data.slice(H.offset-4,H.offset-4+H.length);return B_(_,W.imageFormat)}return null}function B_($,Q){if($.length===0)return null;let Z=0,K;switch(Q){case 1:case 2:case 17:case 18:{if(Q===1||Q===17){if(Z+5>$.length)return null;K={height:$[Z++]??0,width:$[Z++]??0,bearingX:($[Z++]??0)<<24>>24,bearingY:($[Z++]??0)<<24>>24,advance:$[Z++]??0}}else{if(Z+8>$.length)return null;K={height:$[Z++]??0,width:$[Z++]??0,bearingX:($[Z++]??0)<<24>>24,bearingY:($[Z++]??0)<<24>>24,advance:$[Z++]??0},Z+=3}break}case 19:{K={height:0,width:0,bearingX:0,bearingY:0,advance:0};break}default:return null}return{metrics:K,imageFormat:Q,data:$.slice(Z)}}function M_($,Q,Z){for(let K=0;K<$.bitmapSizes.length;K++){let J=$.bitmapSizes[K];if(Z!==void 0&&J.ppemX!==Z)continue;if(Q<J.startGlyphIndex||Q>J.endGlyphIndex)continue;for(let q=0;q<J.indexSubTables.length;q++)if(J.indexSubTables[q].glyphOffsets.has(Q))return!0}return!1}function R_($){let Q=new Set;for(let Z=0;Z<$.bitmapSizes.length;Z++){let K=$.bitmapSizes[Z];Q.add(K.ppemX)}return[...Q].sort((Z,K)=>Z-K)}var U9=[".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","twodotenleader","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"];function n5($){let Q=$.offset,Z=$.uint8(),K=$.uint8(),J=$.uint8(),q=$.uint8();$.seek(Q+J);let U=F8($).map((Y)=>new TextDecoder().decode(Y)),W=F8($),H=[],N=F8($).map((Y)=>new TextDecoder().decode(Y)),V=F8($);for(let Y=0;Y<W.length;Y++){let E=W[Y];H.push(cJ(new c6(E.buffer,E.byteOffset,E.byteLength),N))}let X=[],j=[],z=[],G=[];for(let Y=0;Y<H.length;Y++){let E=H[Y];if(E.charStrings!==void 0)$.seek(Q+E.charStrings),X.push(F8($));else X.push([]);if(E.private){let[w,F]=E.private,A=iJ($.slice(F,w),N);if(A.subrs!==void 0)$.seek(Q+F+A.subrs),j.push(F8($));else j.push([])}else j.push([]);if(E.fdArray!==void 0){$.seek(Q+E.fdArray);let w=F8($),F=[];for(let A=0;A<w.length;A++){let B=w[A],L=cJ(new c6(B.buffer,B.byteOffset,B.byteLength),N);if(L.private){let[O,M]=L.private,P=iJ($.slice(Q+M,O),N);if(Object.assign(L,P),P.subrs!==void 0)$.seek(Q+M+P.subrs),L.localSubrs=F8($)}F.push(L)}z.push(F)}else z.push([]);if(E.fdSelect!==void 0){$.seek(Q+E.fdSelect);let w=X[X.length-1];G.push(P_($,w?.length??0))}else G.push({format:0,select:()=>0})}return{version:{major:Z,minor:K},names:U,topDicts:H,strings:N,globalSubrs:V,charStrings:X,localSubrs:j,fdArrays:z,fdSelects:G}}function F8($){let Q=$.uint16();if(Q===0)return[];let Z=$.uint8(),K=[];for(let q=0;q<=Q;q++)K.push(T_($,Z));let J=[];for(let q=0;q<Q;q++){let U=K[q],W=K[q+1];if(U===void 0||W===void 0)continue;let H=W-U;J.push($.bytes(H))}return J}function T_($,Q){switch(Q){case 1:return $.uint8();case 2:return $.uint16();case 3:return $.uint24();case 4:return $.uint32();default:throw Error(`Invalid offset size: ${Q}`)}}function sJ($){let Q=new Map,Z=[];while($.remaining>0){let K=$.uint8();if(K<=21){let J=K;if(K===12)J=3072|$.uint8();Q.set(J,[...Z]),Z.length=0}else if(K===28)Z.push($.int16());else if(K===29)Z.push($.int32());else if(K===30)Z.push(O_($));else if(K>=32&&K<=246)Z.push(K-139);else if(K>=247&&K<=250){let J=$.uint8();Z.push((K-247)*256+J+108)}else if(K>=251&&K<=254){let J=$.uint8();Z.push(-(K-251)*256-J-108)}}return Q}function O_($){let Q="",Z="0123456789.EE -",K=!1;while(!K){let J=$.uint8();for(let q=0;q<2;q++){let U=q===0?J>>4:J&15;if(U===15){K=!0;break}if(U===12)Q+="E-";else Q+=Z[U]}}return parseFloat(Q)}function cJ($,Q){let Z=sJ($),K={},J=(U)=>{if(U<U9.length)return U9[U]??"";return Q[U-U9.length]??""},q=[...Z];for(let U=0;U<q.length;U++){let[W,H]=q[U],_=H[0],N=H[1],V=H[2];switch(W){case 0:if(_!==void 0)K.version=J(_);break;case 1:if(_!==void 0)K.notice=J(_);break;case 3072:if(_!==void 0)K.copyright=J(_);break;case 2:if(_!==void 0)K.fullName=J(_);break;case 3:if(_!==void 0)K.familyName=J(_);break;case 4:if(_!==void 0)K.weight=J(_);break;case 3073:K.isFixedPitch=_!==0;break;case 3074:K.italicAngle=_;break;case 3075:K.underlinePosition=_;break;case 3076:K.underlineThickness=_;break;case 3077:K.paintType=_;break;case 3078:K.charstringType=_;break;case 3079:K.fontMatrix=H;break;case 13:K.uniqueID=_;break;case 5:K.fontBBox=H;break;case 3080:K.strokeWidth=_;break;case 15:K.charset=_;break;case 16:K.encoding=_;break;case 17:K.charStrings=_;break;case 18:if(_!==void 0&&N!==void 0)K.private=[_,N];break;case 3092:K.syntheticBase=_;break;case 3093:if(_!==void 0)K.postScript=J(_);break;case 3094:if(_!==void 0)K.baseFontName=J(_);break;case 3095:K.baseFontBlend=H;break;case 3102:if(_!==void 0&&N!==void 0&&V!==void 0)K.ros={registry:J(_),ordering:J(N),supplement:V};break;case 3103:K.cidFontVersion=_;break;case 3104:K.cidFontRevision=_;break;case 3105:K.cidFontType=_;break;case 3106:K.cidCount=_;break;case 3107:K.uidBase=_;break;case 3108:K.fdArray=_;break;case 3109:K.fdSelect=_;break;case 3110:if(_!==void 0)K.fontName=J(_);break}}return K}function iJ($,Q){let Z=sJ($),K={},J=[...Z];for(let q=0;q<J.length;q++){let[U,W]=J[q],H=W[0];switch(U){case 6:K.blueValues=q9(W);break;case 7:K.otherBlues=q9(W);break;case 8:K.familyBlues=q9(W);break;case 9:K.familyOtherBlues=q9(W);break;case 3081:K.blueScale=H;break;case 3082:K.blueShift=H;break;case 3083:K.blueFuzz=H;break;case 10:K.stdHW=H;break;case 11:K.stdVW=H;break;case 3084:K.stemSnapH=q9(W);break;case 3085:K.stemSnapV=q9(W);break;case 3086:K.forceBold=H!==0;break;case 3089:K.languageGroup=H;break;case 3090:K.expansionFactor=H;break;case 3091:K.initialRandomSeed=H;break;case 19:K.subrs=H;break;case 20:K.defaultWidthX=H;break;case 21:K.nominalWidthX=H;break}}return K}function q9($){let Q=[],Z=0;for(let K=0;K<$.length;K++){let J=$[K];Z+=J,Q.push(Z)}return Q}function P_($,Q){let Z=$.uint8();if(Z===0){let K=$.uint8Array(Q);return{format:Z,select:(J)=>K[J]??0}}else if(Z===3){let K=$.uint16(),J=[];for(let U=0;U<K;U++)J.push({first:$.uint16(),fd:$.uint8()});let q=$.uint16();return{format:Z,select:(U)=>{let W=0,H=J.length-1;while(W<H){let N=Math.ceil((W+H)/2),V=J[N];if(V&&V.first<=U)W=N;else H=N-1}return J[W]?.fd??0}}}return{format:Z,select:()=>0}}function v_($,Q){if(Q<U9.length)return U9[Q]??"";return $.strings[Q-U9.length]??""}function Z6($){return $.stack.length-$.stackPos}function m($){if($.stackPos>=$.stack.length)return;return $.stack[$.stackPos++]}function W9($){$.stack.length=0,$.stackPos=0}function p5($,Q,Z=0){let K=$.charStrings[Z];if(!K||Q>=K.length)return null;let J=K[Q];if(!J)return null;let q=$.globalSubrs,W=$.topDicts[Z]?.ros!==void 0,H=[];if(W&&$.fdSelects[Z]&&$.fdArrays[Z]){let N=$.fdSelects[Z]?.select(Q)??0;H=$.fdArrays[Z]?.[N]?.localSubrs||$.localSubrs[Z]||[]}else H=$.localSubrs[Z]||[];let _={x:0,y:0,stack:[],stackPos:0,nStems:0,haveWidth:!1,width:0,contours:[],currentContour:[],transientArray:Array(32).fill(0),callStack:[],vsindex:0,axisCoords:null,vstore:null};if(o0(_,J,q,H),_.currentContour.length>0)_.contours.push(_.currentContour);return _.contours}function c0($,Q,Z=null){if(Q>=$.charStrings.length)return null;let K=$.charStrings[Q];if(!K)return null;let J=$.globalSubrs,q=$.fdSelect?.select(Q)??0,U=$.fdArray[q],W=U?.localSubrs||[],H={x:0,y:0,stack:[],stackPos:0,nStems:0,haveWidth:!0,width:0,contours:[],currentContour:[],transientArray:Array(32).fill(0),callStack:[],vsindex:U?.private?.vsindex??0,axisCoords:Z,vstore:$.vstore};if(o0(H,K,J,W),H.currentContour.length>0)H.contours.push(H.currentContour);return H.contours}function o0($,Q,Z,K){let J=0;while(J<Q.length){let q=Q[J++];if(q===void 0)return;if(q===28){let U=Q[J++];if(U===void 0)return;let W=Q[J++];if(W===void 0)return;$.stack.push((U<<8|W)<<16>>16)}else if(q===255){let U=Q[J++];if(U===void 0)return;let W=Q[J++];if(W===void 0)return;let H=Q[J++];if(H===void 0)return;let _=Q[J++];if(_===void 0)return;let N=(U<<24|W<<16|H<<8|_)>>0;$.stack.push(N/65536)}else if(q>=32&&q<=246)$.stack.push(q-139);else if(q>=247&&q<=250){let U=Q[J++];if(U===void 0)return;$.stack.push((q-247)*256+U+108)}else if(q>=251&&q<=254){let U=Q[J++];if(U===void 0)return;$.stack.push(-(q-251)*256-U-108)}else if(q===12){let U=Q[J++];if(U===void 0)return;let W=3072|U;aJ($,W,Z,K)}else if(q===19||q===20){if(Z6($)%2!==0&&!$.haveWidth){let _=m($);if(_!==void 0)$.width=_,$.haveWidth=!0}$.nStems+=Z6($)/2,W9($);let H=Math.ceil($.nStems/8);J+=H}else aJ($,q,Z,K);if($.callStack.length>0){let U=$.callStack[$.callStack.length-1];if(U&&U.pos>=U.data.length)$.callStack.pop()}}}function aJ($,Q,Z,K){let J=$.stack;switch(Q){case 1:case 3:case 18:case 23:{if(Z6($)%2!==0&&!$.haveWidth){let W=m($);if(W===void 0)break;$.width=W,$.haveWidth=!0}$.nStems+=Z6($)/2,W9($);break}case 19:case 20:break;case 21:{if(Z6($)>2&&!$.haveWidth){let W=m($);if(W===void 0)break;$.width=W,$.haveWidth=!0}if($.currentContour.length>0)$.contours.push($.currentContour),$.currentContour=[];let q=m($);if(q===void 0)break;let U=m($);if(U===void 0)break;$.x+=q,$.y+=U,$.currentContour.push({x:$.x,y:$.y,onCurve:!0}),W9($);break}case 22:{if(Z6($)>1&&!$.haveWidth){let U=m($);if(U===void 0)break;$.width=U,$.haveWidth=!0}if($.currentContour.length>0)$.contours.push($.currentContour),$.currentContour=[];let q=m($);if(q===void 0)break;$.x+=q,$.currentContour.push({x:$.x,y:$.y,onCurve:!0}),W9($);break}case 4:{if(Z6($)>1&&!$.haveWidth){let U=m($);if(U===void 0)break;$.width=U,$.haveWidth=!0}if($.currentContour.length>0)$.contours.push($.currentContour),$.currentContour=[];let q=m($);if(q===void 0)break;$.y+=q,$.currentContour.push({x:$.x,y:$.y,onCurve:!0}),W9($);break}case 5:{while(Z6($)>=2){let q=m($);if(q===void 0)break;let U=m($);if(U===void 0)break;$.x+=q,$.y+=U,$.currentContour.push({x:$.x,y:$.y,onCurve:!0})}break}case 6:{let q=!0;while(Z6($)>=1){let U=m($);if(U===void 0)break;if(q)$.x+=U;else $.y+=U;$.currentContour.push({x:$.x,y:$.y,onCurve:!0}),q=!q}break}case 7:{let q=!0;while(Z6($)>=1){let U=m($);if(U===void 0)break;if(q)$.y+=U;else $.x+=U;$.currentContour.push({x:$.x,y:$.y,onCurve:!0}),q=!q}break}case 8:{while(Z6($)>=6){let q=m($);if(q===void 0)break;let U=m($);if(U===void 0)break;let W=m($);if(W===void 0)break;let H=m($);if(H===void 0)break;let _=m($);if(_===void 0)break;let N=m($);if(N===void 0)break;B6($,q,U,W,H,_,N)}break}case 27:{let q=0;if(Z6($)%4===1){let U=m($);if(U===void 0)break;q=U}while(Z6($)>=4){let U=m($);if(U===void 0)break;let W=m($);if(W===void 0)break;let H=m($);if(H===void 0)break;let _=m($);if(_===void 0)break;B6($,U,q,W,H,_,0),q=0}break}case 26:{let q=0;if(Z6($)%4===1){let U=m($);if(U===void 0)break;q=U}while(Z6($)>=4){let U=m($);if(U===void 0)break;let W=m($);if(W===void 0)break;let H=m($);if(H===void 0)break;let _=m($);if(_===void 0)break;B6($,q,U,W,H,0,_),q=0}break}case 31:{let q=!0;while(Z6($)>=4){if(q){let U=m($);if(U===void 0)break;let W=m($);if(W===void 0)break;let H=m($);if(H===void 0)break;let _=m($);if(_===void 0)break;let N=Z6($)===1?m($)??0:0;B6($,U,0,W,H,N,_)}else{let U=m($);if(U===void 0)break;let W=m($);if(W===void 0)break;let H=m($);if(H===void 0)break;let _=m($);if(_===void 0)break;let N=Z6($)===1?m($)??0:0;B6($,0,U,W,H,_,N)}q=!q}break}case 30:{let q=!0;while(Z6($)>=4){if(q){let U=m($);if(U===void 0)break;let W=m($);if(W===void 0)break;let H=m($);if(H===void 0)break;let _=m($);if(_===void 0)break;let N=Z6($)===1?m($)??0:0;B6($,0,U,W,H,_,N)}else{let U=m($);if(U===void 0)break;let W=m($);if(W===void 0)break;let H=m($);if(H===void 0)break;let _=m($);if(_===void 0)break;let N=Z6($)===1?m($)??0:0;B6($,U,0,W,H,N,_)}q=!q}break}case 24:{while(Z6($)>=8){let q=m($);if(q===void 0)break;let U=m($);if(U===void 0)break;let W=m($);if(W===void 0)break;let H=m($);if(H===void 0)break;let _=m($);if(_===void 0)break;let N=m($);if(N===void 0)break;B6($,q,U,W,H,_,N)}if(Z6($)>=2){let q=m($);if(q===void 0)break;let U=m($);if(U===void 0)break;$.x+=q,$.y+=U,$.currentContour.push({x:$.x,y:$.y,onCurve:!0})}break}case 25:{while(Z6($)>=8){let q=m($);if(q===void 0)break;let U=m($);if(U===void 0)break;$.x+=q,$.y+=U,$.currentContour.push({x:$.x,y:$.y,onCurve:!0})}if(Z6($)>=6){let q=m($);if(q===void 0)break;let U=m($);if(U===void 0)break;let W=m($);if(W===void 0)break;let H=m($);if(H===void 0)break;let _=m($);if(_===void 0)break;let N=m($);if(N===void 0)break;B6($,q,U,W,H,_,N)}break}case 10:{let q=J.pop();if(q===void 0)break;let U=q+rJ(K.length),W=K[U];if(W)o0($,W,Z,K);break}case 29:{let q=J.pop();if(q===void 0)break;let U=q+rJ(Z.length),W=Z[U];if(W)o0($,W,Z,K);break}case 11:break;case 14:{if(Z6($)>0&&!$.haveWidth){let q=m($);if(q===void 0)break;$.width=q,$.haveWidth=!0}if($.currentContour.length>0)$.contours.push($.currentContour),$.currentContour=[];W9($);break}case 3107:{if(Z6($)>=13){let q=m($);if(q===void 0)break;let U=m($);if(U===void 0)break;let W=m($);if(W===void 0)break;let H=m($);if(H===void 0)break;let _=m($);if(_===void 0)break;let N=m($);if(N===void 0)break;let V=m($);if(V===void 0)break;let X=m($);if(X===void 0)break;let j=m($);if(j===void 0)break;let z=m($);if(z===void 0)break;let G=m($);if(G===void 0)break;let Y=m($);if(Y===void 0)break;m($),B6($,q,U,W,H,_,N),B6($,V,X,j,z,G,Y)}break}case 3106:{if(Z6($)>=7){let q=m($);if(q===void 0)break;let U=m($);if(U===void 0)break;let W=m($);if(W===void 0)break;let H=m($);if(H===void 0)break;let _=m($);if(_===void 0)break;let N=m($);if(N===void 0)break;let V=m($);if(V===void 0)break;B6($,q,0,U,W,H,0),B6($,_,0,N,-W,V,0)}break}case 3108:{if(Z6($)>=9){let q=m($);if(q===void 0)break;let U=m($);if(U===void 0)break;let W=m($);if(W===void 0)break;let H=m($);if(H===void 0)break;let _=m($);if(_===void 0)break;let N=m($);if(N===void 0)break;let V=m($);if(V===void 0)break;let X=m($);if(X===void 0)break;let j=m($);if(j===void 0)break;B6($,q,U,W,H,_,0),B6($,N,0,V,X,j,-(U+H+X))}break}case 3109:{if(Z6($)>=11){let q=m($);if(q===void 0)break;let U=m($);if(U===void 0)break;let W=m($);if(W===void 0)break;let H=m($);if(H===void 0)break;let _=m($);if(_===void 0)break;let N=m($);if(N===void 0)break;let V=m($);if(V===void 0)break;let X=m($);if(X===void 0)break;let j=m($);if(j===void 0)break;let z=m($);if(z===void 0)break;let G=m($);if(G===void 0)break;let Y=q+W+_+V+j,E=U+H+N+X+z,w,F;if(Math.abs(Y)>Math.abs(E))w=G,F=-E;else w=-Y,F=G;B6($,q,U,W,H,_,N),B6($,V,X,j,z,w,F)}break}case 3075:{let q=J.pop();if(q===void 0)break;let U=J.pop();if(U===void 0)break;J.push(U&&q?1:0);break}case 3076:{let q=J.pop();if(q===void 0)break;let U=J.pop();if(U===void 0)break;J.push(U||q?1:0);break}case 3077:{let q=J.pop();if(q===void 0)break;J.push(q?0:1);break}case 3081:{let q=J.pop();if(q===void 0)break;J.push(Math.abs(q));break}case 3082:{let q=J.pop();if(q===void 0)break;let U=J.pop();if(U===void 0)break;J.push(U+q);break}case 3083:{let q=J.pop();if(q===void 0)break;let U=J.pop();if(U===void 0)break;J.push(U-q);break}case 3084:{let q=J.pop();if(q===void 0)break;let U=J.pop();if(U===void 0)break;J.push(U/q);break}case 3086:{let q=J.pop();if(q===void 0)break;J.push(-q);break}case 3087:{let q=J.pop();if(q===void 0)break;let U=J.pop();if(U===void 0)break;J.push(U===q?1:0);break}case 3090:{J.pop();break}case 3092:{let q=J.pop();if(q===void 0)break;let U=J.pop();if(U===void 0)break;$.transientArray[q]=U;break}case 3093:{let q=J.pop();if(q===void 0)break;J.push($.transientArray[q]??0);break}case 3094:{let q=J.pop();if(q===void 0)break;let U=J.pop();if(U===void 0)break;let W=J.pop();if(W===void 0)break;let H=J.pop();if(H===void 0)break;J.push(U<=q?H:W);break}case 3095:{J.push(Math.random());break}case 3096:{let q=J.pop();if(q===void 0)break;let U=J.pop();if(U===void 0)break;J.push(U*q);break}case 3098:{let q=J.pop();if(q===void 0)break;J.push(Math.sqrt(q));break}case 3099:{let q=J[J.length-1];if(q===void 0)break;J.push(q);break}case 3100:{let q=J.pop();if(q===void 0)break;let U=J.pop();if(U===void 0)break;J.push(q,U);break}case 3101:{let q=J.pop();if(q===void 0)break;let U=J.length-1-q;J.push(J[U]??0);break}case 3102:{let q=J.pop();if(q===void 0)break;let U=J.pop();if(U===void 0)break;if(U>0){let W=J.splice(-U),H=(q%U+U)%U;for(let _=0;_<U;_++){let N=W[(_+H)%U];if(N!==void 0)J.push(N)}}break}case 16:{if(!$.axisCoords||!$.vstore)break;let q=J.pop();if(q===void 0)break;let U=$.vstore.itemVariationData[$.vsindex]?.regionIndexCount??0,W=q*U,H=J.splice(-W),_=J.splice(-q);for(let N=0;N<q;N++){let V=_[N];if(V===void 0)continue;let X=V;for(let j=0;j<U;j++){let z=H[N*U+j];if(z===void 0)continue;let G=I_($.vstore,$.vsindex,j,$.axisCoords);X+=z*G}J.push(X)}break}case 15:{let q=J.pop();if(q===void 0)break;$.vsindex=q;break}case 3072:break}}function B6($,Q,Z,K,J,q,U){let{x:W,y:H}=$,_=W+Q,N=H+Z,V=_+K,X=N+J,j=V+q,z=X+U;$.currentContour.push({x:_,y:N,onCurve:!1,cubic:!0}),$.currentContour.push({x:V,y:X,onCurve:!1,cubic:!0}),$.currentContour.push({x:j,y:z,onCurve:!0}),$.x=j,$.y=z}function rJ($){if($<1240)return 107;if($<33900)return 1131;return 32768}function I_($,Q,Z,K){let J=$.itemVariationData[Q];if(!J)return 0;let q=J.regionIndexes[Z];if(q===void 0)return 0;let U=$.variationRegionList.regions[q];if(!U)return 0;let W=1;for(let H=0;H<U.axes.length&&H<K.length;H++){let _=U.axes[H];if(!_)continue;let N=K[H];if(N===void 0)continue;if(N<_.startCoord||N>_.endCoord)return 0;if(N===_.peakCoord)continue;if(N<_.peakCoord)W*=(N-_.startCoord)/(_.peakCoord-_.startCoord);else W*=(_.endCoord-N)/(_.endCoord-_.peakCoord)}return W}function k_($,Q,Z=0){let K=$.topDicts[Z];return 0}function o5($){let Q=$.offset,Z=$.uint8(),K=$.uint8(),J=$.uint8(),q=$.uint16();$.seek(Q+J);let U=$.slice($.offset-Q,q);$.skip(q);let W=h_(U),H=i0($),_=[];if(W.charStrings!==void 0)$.seek(Q+W.charStrings),_=i0($);let N=[];if(W.fdArray!==void 0){$.seek(Q+W.fdArray);let j=i0($);for(let z=0;z<j.length;z++){let G=j[z],Y=y_(new c6(G.buffer,G.byteOffset,G.byteLength));if(Y.privateOffset!==void 0&&Y.privateSize!==void 0){$.seek(Q+Y.privateOffset);let E=$.slice(0,Y.privateSize);if(Y.private=b_(E),Y.private.subrs!==void 0)$.seek(Q+Y.privateOffset+Y.private.subrs),Y.localSubrs=i0($)}N.push(Y)}}let V=null;if(W.fdSelect!==void 0)$.seek(Q+W.fdSelect),V=m_($,_.length);let X=null;if(W.vstore!==void 0)$.seek(Q+W.vstore),X=g_($);return{version:{major:Z,minor:K},topDict:W,globalSubrs:H,charStrings:_,fdArray:N,fdSelect:V,vstore:X}}function i0($){let Q=$.uint32();if(Q===0)return[];let Z=$.uint8(),K=[];for(let q=0;q<=Q;q++)K.push(C_($,Z));let J=[];for(let q=0;q<Q;q++){let U=K[q],W=K[q+1];if(U===void 0||W===void 0)continue;let H=W-U;J.push($.bytes(H))}return J}function C_($,Q){switch(Q){case 1:return $.uint8();case 2:return $.uint16();case 3:return $.uint24();case 4:return $.uint32();default:throw Error(`Invalid offset size: ${Q}`)}}function c5($){let Q=new Map,Z=[];while($.remaining>0){let K=$.uint8();if(K<=21){let J=K;if(K===12)J=3072|$.uint8();Q.set(J,[...Z]),Z.length=0}else if(K===22)Q.set(22,[...Z]),Z.length=0;else if(K===23)Q.set(23,[...Z]),Z.length=0;else if(K===24)Q.set(24,[...Z]),Z.length=0;else if(K===28)Z.push($.int16());else if(K===29)Z.push($.int32());else if(K===30)Z.push(S_($));else if(K>=32&&K<=246)Z.push(K-139);else if(K>=247&&K<=250){let J=$.uint8();Z.push((K-247)*256+J+108)}else if(K>=251&&K<=254){let J=$.uint8();Z.push(-(K-251)*256-J-108)}}return Q}function S_($){let Q="",Z="0123456789.EE -",K=!1;while(!K){let J=$.uint8();for(let q=0;q<2;q++){let U=q===0?J>>4:J&15;if(U===15){K=!0;break}if(U===12)Q+="E-";else{let W=Z[U];if(W!==void 0)Q+=W}}}return parseFloat(Q)}function h_($){let Q=c5($),Z={},K=[...Q];for(let J=0;J<K.length;J++){let[q,U]=K[J];switch(q){case 3079:Z.fontMatrix=U;break;case 17:Z.charStrings=U[0];break;case 3108:Z.fdArray=U[0];break;case 3109:Z.fdSelect=U[0];break;case 24:Z.vstore=U[0];break}}return Z}function y_($){let Q=c5($),Z={},K=Q.get(18);if(K&&K.length>=2)Z.privateSize=K[0],Z.privateOffset=K[1];return Z}function b_($){let Q=c5($),Z={},K=[...Q];for(let J=0;J<K.length;J++){let[q,U]=K[J],W=U[0];switch(q){case 6:Z.blueValues=H9(U);break;case 7:Z.otherBlues=H9(U);break;case 8:Z.familyBlues=H9(U);break;case 9:Z.familyOtherBlues=H9(U);break;case 3081:Z.blueScale=W;break;case 3082:Z.blueShift=W;break;case 3083:Z.blueFuzz=W;break;case 10:Z.stdHW=W;break;case 11:Z.stdVW=W;break;case 3084:Z.stemSnapH=H9(U);break;case 3085:Z.stemSnapV=H9(U);break;case 3089:Z.languageGroup=W;break;case 3090:Z.expansionFactor=W;break;case 19:Z.subrs=W;break;case 22:Z.vsindex=W;break;case 23:Z.blend=U;break}}return Z}function H9($){let Q=[],Z=0;for(let K=0;K<$.length;K++){let J=$[K];Z+=J,Q.push(Z)}return Q}function m_($,Q){let Z=$.uint8();if(Z===0){let K=$.uint8Array(Q);return{format:Z,select:(J)=>K[J]??0}}else if(Z===3){let K=$.uint16(),J=[];for(let q=0;q<K;q++)J.push({first:$.uint16(),fd:$.uint8()});return $.uint16(),{format:Z,select:(q)=>{let U=0,W=J.length-1;while(U<W){let _=Math.ceil((U+W)/2),N=J[_];if(N&&N.first<=q)U=_;else W=_-1}return J[U]?.fd??0}}}else if(Z===4){let K=$.uint32(),J=[];for(let q=0;q<K;q++)J.push({first:$.uint32(),fd:$.uint16()});return $.uint32(),{format:Z,select:(q)=>{let U=0,W=J.length-1;while(U<W){let _=Math.ceil((U+W)/2),N=J[_];if(N&&N.first<=q)U=_;else W=_-1}return J[U]?.fd??0}}}return{format:Z,select:()=>0}}function g_($){let Q=$.offset,Z=$.uint16(),K=$.uint16(),J=$.uint32(),q=$.uint16(),U=[];for(let _=0;_<q;_++)U.push($.uint32());$.seek(Q+J);let W=u_($),H=[];for(let _=0;_<U.length;_++){let N=U[_];$.seek(Q+N),H.push(x_($))}return{format:K,variationRegionList:W,itemVariationData:H}}function u_($){let Q=$.uint16(),Z=$.uint16(),K=[];for(let J=0;J<Z;J++){let q=[];for(let U=0;U<Q;U++)q.push({startCoord:$.f2dot14(),peakCoord:$.f2dot14(),endCoord:$.f2dot14()});K.push({axes:q})}return{axisCount:Q,regionCount:Z,regions:K}}function x_($){let Q=$.uint16(),Z=$.uint16(),K=Z&32767,J=(Z&32768)!==0,q=[];for(let W=0;W<K;W++)q.push($.uint16());let U=[];for(let W=0;W<Q;W++){let H=[];for(let _=0;_<K;_++)if(J)H.push($.int32());else H.push($.int16());U.push(H)}return{itemCount:Q,regionIndexCount:K,regionIndexes:q,deltaSets:U}}function f_($,Q,Z,K){let J=$.itemVariationData[Q];if(!J)return 0;let q=J.deltaSets[Z];if(!q)return 0;let U=0;for(let W=0;W<J.regionIndexCount;W++){let H=J.regionIndexes[W];if(H===void 0)continue;let _=$.variationRegionList.regions[H];if(!_)continue;let N=1;for(let V=0;V<_.axes.length;V++){let X=_.axes[V],j=K[V]??0;if(X.peakCoord===0)continue;if(j<X.startCoord||j>X.endCoord){N=0;break}if(j===X.peakCoord)continue;if(j<X.peakCoord)N*=(j-X.startCoord)/(X.peakCoord-X.startCoord);else N*=(X.endCoord-j)/(X.endCoord-X.peakCoord)}U+=N*(q[W]??0)}return Math.round(U)}function tJ($,Q){let Z=$.offset,K=$.uint16(),J=$.uint16(),q=[];for(let N=0;N<J;N++)q.push({platformId:$.uint16(),encodingId:$.uint16(),offset:$.uint32()});let U=new Map,W=new Set;for(let N=0;N<q.length;N++){let V=q[N];if(W.has(V.offset)){let z=`${V.platformId}-${V.encodingId}`,G=[...U.entries()];for(let Y=0;Y<G.length;Y++){let[E,w]=G[Y],A=E.split("@")[0];if(A&&Number.parseInt(A,10)===V.offset){U.set(z,w);break}}continue}W.add(V.offset);let X=$.slice(V.offset,Q-V.offset),j=l_(X);if(j){let z=`${V.platformId}-${V.encodingId}`;U.set(z,j)}}let H=["3-10","0-4","3-1","0-3","0-6","1-0"],_=null;for(let N=0;N<H.length;N++){let V=H[N],X=U.get(V);if(X&&X.format!==14){_=X;break}}if(!_){let N=[...U.values()];for(let V=0;V<N.length;V++){let X=N[V];if(X.format!==14){_=X;break}}}return{version:K,numTables:J,encodingRecords:q,subtables:U,bestSubtable:_}}function l_($){switch($.uint16()){case 0:return d_($);case 4:return n_($);case 12:return p_($);case 14:return o_($);default:return null}}function d_($){let Q=$.uint16(),Z=$.uint16(),K=$.uint8Array(256);return{format:0,glyphIdArray:K,lookup(J){if(J>=0&&J<256)return K[J];return}}}function n_($){let Q=$.uint16(),Z=$.uint16(),J=$.uint16()/2;$.skip(6);let q=$.uint16Array(J);$.skip(2);let U=$.uint16Array(J),W=$.int16Array(J),H=$.offset,_=$.uint16Array(J),V=$.remaining/2,X=$.uint16Array(V),j=(G)=>{let Y=0,E=J-1;while(Y<=E){let w=Y+E>>>1,F=q[w];if(G>F)Y=w+1;else{let A=U[w];if(G<A)E=w-1;else{let B=_[w],L=W[w];if(B===0)return G+L&65535;let O=B/2-(J-w)+(G-A),M=X[O];if(M===void 0||M===0)return 0;return M+L&65535}}}return},z=new Uint16Array(256);for(let G=0;G<256;G++){let Y=j(G);z[G]=Y!==void 0?Y+1:0}return{format:4,segCount:J,endCodes:q,startCodes:U,idDeltas:W,idRangeOffsets:_,glyphIdArray:X,lookup(G){if(G<256){let Y=z[G];return Y===0?void 0:Y-1}if(G>65535)return;return j(G)}}}function p_($){$.skip(2);let Q=$.uint32(),Z=$.uint32(),K=$.uint32(),J=Array(K);for(let W=0;W<K;W++)J[W]={startCharCode:$.uint32(),endCharCode:$.uint32(),startGlyphId:$.uint32()};let q=(W)=>{let H=0,_=J.length-1;while(H<=_){let N=H+_>>>1,V=J[N];if(!V)break;if(W>V.endCharCode)H=N+1;else if(W<V.startCharCode)_=N-1;else return V.startGlyphId+(W-V.startCharCode)}return},U=new Uint16Array(128);for(let W=0;W<128;W++){let H=q(W);U[W]=H!==void 0?H+1:0}return{format:12,groups:J,lookup(W){if(W<128){let H=U[W];return H===0?void 0:H-1}return q(W)}}}function o_($){let Q=$.offset-2,Z=$.uint32(),K=$.uint32(),J=[];for(let U=0;U<K;U++)J.push({varSelector:$.uint24(),defaultUVSOffset:$.uint32(),nonDefaultUVSOffset:$.uint32()});let q=[];for(let U=0;U<J.length;U++){let W=J[U],H=null,_=null;if(W.defaultUVSOffset!==0){let N=$.sliceFrom(Q+W.defaultUVSOffset),V=N.uint32();H=[];for(let X=0;X<V;X++)H.push({startUnicodeValue:N.uint24(),additionalCount:N.uint8()})}if(W.nonDefaultUVSOffset!==0){let N=$.sliceFrom(Q+W.nonDefaultUVSOffset),V=N.uint32();_=[];for(let X=0;X<V;X++)_.push({unicodeValue:N.uint24(),glyphId:N.uint16()})}q.push({varSelector:W.varSelector,defaultUVS:H,nonDefaultUVS:_})}return{format:14,varSelectorRecords:q,lookup(U){return},lookupVariation(U,W){let H=0,_=q.length-1,N=null;while(H<=_){let V=H+_>>>1,X=q[V];if(!X)break;if(W>X.varSelector)H=V+1;else if(W<X.varSelector)_=V-1;else{N=X;break}}if(!N)return;if(N.nonDefaultUVS){let V=0,X=N.nonDefaultUVS.length-1;while(V<=X){let j=V+X>>>1,z=N.nonDefaultUVS[j];if(!z)break;if(U>z.unicodeValue)V=j+1;else if(U<z.unicodeValue)X=j-1;else return z.glyphId}}if(N.defaultUVS)for(let V=0;V<N.defaultUVS.length;V++){let X=N.defaultUVS[V],j=X.startUnicodeValue+X.additionalCount;if(U>=X.startUnicodeValue&&U<=j)return"default"}return}}}function eJ($,Q){return $.bestSubtable?.lookup(Q)??0}var $q;((R)=>{R[R.ColrLayers=1]="ColrLayers";R[R.Solid=2]="Solid";R[R.VarSolid=3]="VarSolid";R[R.LinearGradient=4]="LinearGradient";R[R.VarLinearGradient=5]="VarLinearGradient";R[R.RadialGradient=6]="RadialGradient";R[R.VarRadialGradient=7]="VarRadialGradient";R[R.SweepGradient=8]="SweepGradient";R[R.VarSweepGradient=9]="VarSweepGradient";R[R.Glyph=10]="Glyph";R[R.ColrGlyph=11]="ColrGlyph";R[R.Transform=12]="Transform";R[R.VarTransform=13]="VarTransform";R[R.Translate=14]="Translate";R[R.VarTranslate=15]="VarTranslate";R[R.Scale=16]="Scale";R[R.VarScale=17]="VarScale";R[R.ScaleAroundCenter=18]="ScaleAroundCenter";R[R.VarScaleAroundCenter=19]="VarScaleAroundCenter";R[R.ScaleUniform=20]="ScaleUniform";R[R.VarScaleUniform=21]="VarScaleUniform";R[R.ScaleUniformAroundCenter=22]="ScaleUniformAroundCenter";R[R.VarScaleUniformAroundCenter=23]="VarScaleUniformAroundCenter";R[R.Rotate=24]="Rotate";R[R.VarRotate=25]="VarRotate";R[R.RotateAroundCenter=26]="RotateAroundCenter";R[R.VarRotateAroundCenter=27]="VarRotateAroundCenter";R[R.Skew=28]="Skew";R[R.VarSkew=29]="VarSkew";R[R.SkewAroundCenter=30]="SkewAroundCenter";R[R.VarSkewAroundCenter=31]="VarSkewAroundCenter";R[R.Composite=32]="Composite"})($q||={});var Qq;((K)=>{K[K.Pad=0]="Pad";K[K.Repeat=1]="Repeat";K[K.Reflect=2]="Reflect"})(Qq||={});var Zq;((I)=>{I[I.Clear=0]="Clear";I[I.Src=1]="Src";I[I.Dest=2]="Dest";I[I.SrcOver=3]="SrcOver";I[I.DestOver=4]="DestOver";I[I.SrcIn=5]="SrcIn";I[I.DestIn=6]="DestIn";I[I.SrcOut=7]="SrcOut";I[I.DestOut=8]="DestOut";I[I.SrcAtop=9]="SrcAtop";I[I.DestAtop=10]="DestAtop";I[I.Xor=11]="Xor";I[I.Plus=12]="Plus";I[I.Screen=13]="Screen";I[I.Overlay=14]="Overlay";I[I.Darken=15]="Darken";I[I.Lighten=16]="Lighten";I[I.ColorDodge=17]="ColorDodge";I[I.ColorBurn=18]="ColorBurn";I[I.HardLight=19]="HardLight";I[I.SoftLight=20]="SoftLight";I[I.Difference=21]="Difference";I[I.Exclusion=22]="Exclusion";I[I.Multiply=23]="Multiply";I[I.Hue=24]="Hue";I[I.Saturation=25]="Saturation";I[I.Color=26]="Color";I[I.Luminosity=27]="Luminosity"})(Zq||={});function s5($){let Q=$.offset,Z=$.uint16(),K=$.uint16(),J=$.uint32(),q=$.uint32(),U=$.uint16(),W=[];if(J!==0&&K>0){$.seek(Q+J);for(let N=0;N<K;N++)W.push({glyphId:$.uint16(),firstLayerIndex:$.uint16(),numLayers:$.uint16()})}let H=[];if(q!==0&&U>0){$.seek(Q+q);for(let N=0;N<U;N++)H.push({glyphId:$.uint16(),paletteIndex:$.uint16()})}let _={version:Z,baseGlyphRecords:W,layerRecords:H};if(Z>=1){$.seek(Q+14);let N=$.uint32(),V=$.uint32(),X=$.uint32(),j=$.uint32(),z=$.uint32();if(N!==0){let G=Q+N;$.seek(G);let Y=$.uint32();_.baseGlyphPaintRecords=[];for(let E=0;E<Y;E++){let w=$.uint16(),F=$.uint32(),A=$.offset;$.seek(G+F);let B=I6($,Q);$.seek(A),_.baseGlyphPaintRecords.push({glyphId:w,paint:B})}}if(V!==0){$.seek(Q+V);let G=$.uint32(),Y=[];for(let E=0;E<G;E++)Y.push($.uint32());_.layerList=[];for(let E=0;E<Y.length;E++){let w=Y[E];$.seek(Q+V+w),_.layerList.push(I6($,Q))}}if(X!==0)$.seek(Q+X),_.clipList=c_($,Q);if(j!==0)$.seek(Q+j),_.varIdxMap=s_($);if(z!==0)$.seek(Q+z),_.itemVariationStore=a_($)}return _}function I6($,Q){let Z=$.offset,K=$.uint8();switch(K){case 1:return{format:K,numLayers:$.uint8(),firstLayerIndex:$.uint32()};case 2:return{format:K,paletteIndex:$.uint16(),alpha:$.f2dot14()};case 3:return{format:K,paletteIndex:$.uint16(),alpha:$.f2dot14(),varIndexBase:$.uint32()};case 4:case 5:{let J=$.uint24(),q=$.fword(),U=$.fword(),W=$.fword(),H=$.fword(),_=$.fword(),N=$.fword(),V=$.offset;$.seek(Z+J);let X=i5($);return $.seek(V),{format:K,colorLine:X,x0:q,y0:U,x1:W,y1:H,x2:_,y2:N}}case 6:case 7:{let J=$.uint24(),q=$.fword(),U=$.fword(),W=$.ufword(),H=$.fword(),_=$.fword(),N=$.ufword(),V=$.offset;$.seek(Z+J);let X=i5($);return $.seek(V),{format:K,colorLine:X,x0:q,y0:U,radius0:W,x1:H,y1:_,radius1:N}}case 8:case 9:{let J=$.uint24(),q=$.fword(),U=$.fword(),W=$.f2dot14(),H=$.f2dot14(),_=$.offset;$.seek(Z+J);let N=i5($);return $.seek(_),{format:K,colorLine:N,centerX:q,centerY:U,startAngle:W,endAngle:H}}case 10:{let J=$.uint24(),q=$.uint16(),U=$.offset;$.seek(Z+J);let W=I6($,Q);return $.seek(U),{format:K,paint:W,glyphId:q}}case 11:return{format:K,glyphId:$.uint16()};case 12:case 13:{let J=$.uint24(),q=$.uint24();$.seek(Z+q);let U={xx:$.fixed(),yx:$.fixed(),xy:$.fixed(),yy:$.fixed(),dx:$.fixed(),dy:$.fixed()};$.seek(Z+J);let W=I6($,Q);return{format:K,paint:W,transform:U}}case 14:case 15:{let J=$.uint24(),q=$.fword(),U=$.fword();$.seek(Z+J);let W=I6($,Q);return{format:K,paint:W,dx:q,dy:U}}case 16:case 17:{let J=$.uint24(),q=$.f2dot14(),U=$.f2dot14();$.seek(Z+J);let W=I6($,Q);return{format:K,paint:W,scaleX:q,scaleY:U}}case 18:case 19:{let J=$.uint24(),q=$.f2dot14(),U=$.f2dot14(),W=$.fword(),H=$.fword();$.seek(Z+J);let _=I6($,Q);return{format:K,paint:_,scaleX:q,scaleY:U,centerX:W,centerY:H}}case 20:case 21:{let J=$.uint24(),q=$.f2dot14();$.seek(Z+J);let U=I6($,Q);return{format:K,paint:U,scaleX:q,scaleY:q}}case 22:case 23:{let J=$.uint24(),q=$.f2dot14(),U=$.fword(),W=$.fword();$.seek(Z+J);let H=I6($,Q);return{format:K,paint:H,scaleX:q,scaleY:q,centerX:U,centerY:W}}case 24:case 25:{let J=$.uint24(),q=$.f2dot14();$.seek(Z+J);let U=I6($,Q);return{format:K,paint:U,angle:q}}case 26:case 27:{let J=$.uint24(),q=$.f2dot14(),U=$.fword(),W=$.fword();$.seek(Z+J);let H=I6($,Q);return{format:K,paint:H,angle:q,centerX:U,centerY:W}}case 28:case 29:{let J=$.uint24(),q=$.f2dot14(),U=$.f2dot14();$.seek(Z+J);let W=I6($,Q);return{format:K,paint:W,xSkewAngle:q,ySkewAngle:U}}case 30:case 31:{let J=$.uint24(),q=$.f2dot14(),U=$.f2dot14(),W=$.fword(),H=$.fword();$.seek(Z+J);let _=I6($,Q);return{format:K,paint:_,xSkewAngle:q,ySkewAngle:U,centerX:W,centerY:H}}case 32:{let J=$.uint24(),q=$.uint8(),U=$.uint24();$.seek(Z+J);let W=I6($,Q);$.seek(Z+U);let H=I6($,Q);return{format:K,sourcePaint:W,compositeMode:q,backdropPaint:H}}default:throw Error(`Unknown paint format: ${K}`)}}function i5($){let Q=$.uint8(),Z=$.uint16(),K=[];for(let J=0;J<Z;J++)K.push({stopOffset:$.f2dot14(),paletteIndex:$.uint16(),alpha:$.f2dot14()});return{extend:Q,colorStops:K}}function c_($,Q){let Z=$.offset,K=$.uint8(),J=$.uint32(),q=[];for(let U=0;U<J;U++){let W=$.uint16(),H=$.uint16(),_=$.uint24(),N=$.offset;$.seek(Z+_);let V=$.uint8(),X={format:V,xMin:$.fword(),yMin:$.fword(),xMax:$.fword(),yMax:$.fword()};if(V===2)X.varIndexBase=$.uint32();$.seek(N),q.push({startGlyphId:W,endGlyphId:H,clipBox:X})}return q}function Kq($,Q){let Z=$.baseGlyphRecords,K=0,J=Z.length-1;while(K<=J){let q=K+J>>>1,U=Z[q];if(!U)break;if(U.glyphId===Q){let W=[];for(let H=0;H<U.numLayers;H++){let _=$.layerRecords[U.firstLayerIndex+H];if(_)W.push(_)}return W}else if(U.glyphId<Q)K=q+1;else J=q-1}return null}function Jq($,Q){if(!$.baseGlyphPaintRecords)return null;let Z=$.baseGlyphPaintRecords,K=0,J=Z.length-1;while(K<=J){let q=K+J>>>1,U=Z[q];if(!U)break;if(U.glyphId===Q)return U.paint;else if(U.glyphId<Q)K=q+1;else J=q-1}return null}function i_($,Q){return Kq($,Q)!==null||Jq($,Q)!==null}function s_($){let Q=$.uint8(),Z=$.uint8(),K=Q===0?$.uint16():$.uint32(),J=(Z&15)+1,q=(Z>>4&15)+1,U=Math.ceil((J+q)/8),W=[];for(let H=0;H<K;H++){let _=0;for(let j=0;j<U;j++)_=_<<8|$.uint8();let N=(1<<J)-1,V=_&N,X=_>>J;W.push(X<<16|V)}return W}function a_($){let Q=$.offset,Z=$.uint16(),K=$.uint32(),J=$.uint16(),q=[];for(let N=0;N<J;N++)q.push($.uint32());$.seek(Q+K);let U=$.uint16(),W=$.uint16(),H=[];for(let N=0;N<W;N++){let V=[];for(let X=0;X<U;X++)V.push({startCoord:$.f2dot14(),peakCoord:$.f2dot14(),endCoord:$.f2dot14()});H.push({regionAxes:V})}let _=[];for(let N=0;N<q.length;N++){let V=q[N];$.seek(Q+V);let X=$.uint16(),j=$.uint16(),z=$.uint16(),G=[];for(let F=0;F<z;F++)G.push($.uint16());let Y=(j&32768)!==0,E=j&32767,w=[];for(let F=0;F<X;F++){let A=[];for(let B=0;B<z;B++)if(B<E)A.push(Y?$.int32():$.int16());else A.push(Y?$.int16():$.int8());w.push(A)}_.push({itemCount:X,wordDeltaCount:j,regionIndexCount:z,regionIndexes:G,deltaSets:w})}return{format:Z,variationRegionListOffset:K,itemVariationDataCount:J,itemVariationDataOffsets:q,variationRegions:H,itemVariationData:_}}function r_($,Q){if(!$.clipList)return null;for(let Z=0;Z<$.clipList.length;Z++){let K=$.clipList[Z];if(Q>=K.startGlyphId&&Q<=K.endGlyphId)return K.clipBox}return null}function t_($,Q,Z){if(!$.itemVariationStore||!$.varIdxMap)return 0;let K=$.varIdxMap[Q];if(K===void 0)return 0;let J=K>>16,q=K&65535,U=$.itemVariationStore,W=U.itemVariationData[J];if(!W)return 0;let H=W.deltaSets[q];if(!H)return 0;let _=0;for(let N=0;N<W.regionIndexCount;N++){let V=W.regionIndexes[N];if(V===void 0)continue;let X=U.variationRegions[V];if(!X)continue;let j=1;for(let G=0;G<X.regionAxes.length&&G<Z.length;G++){let Y=X.regionAxes[G],E=Z[G];if(Y===void 0||E===void 0)continue;if(j*=e_(E,Y.startCoord,Y.peakCoord,Y.endCoord),j===0)break}let z=H[N];if(z!==void 0)_+=z*j}return _}function e_($,Q,Z,K){if(Q===0&&Z===0&&K===0)return 1;if($===Z)return 1;if($<Q||$>K)return 0;if($<Z){if(Q===Z)return 1;return($-Q)/(Z-Q)}else{if(Z===K)return 1;return(K-$)/(K-Z)}}function $N($){return $.version>=1&&$.baseGlyphPaintRecords!==void 0}function QN($,Q){return $.layerList?.[Q]??null}var qq;((Z)=>{Z[Z.UsableWithLightBackground=1]="UsableWithLightBackground";Z[Z.UsableWithDarkBackground=2]="UsableWithDarkBackground"})(qq||={});function a5($){let Q=$.offset,Z=$.uint16(),K=$.uint16(),J=$.uint16(),q=$.uint16(),U=$.uint32(),W=[];for(let j=0;j<J;j++)W.push($.uint16());$.seek(Q+U);let H=[];for(let j=0;j<q;j++)H.push({blue:$.uint8(),green:$.uint8(),red:$.uint8(),alpha:$.uint8()});let _=[];for(let j=0;j<J;j++){let z=W[j];if(z===void 0)continue;let G=[];for(let Y=0;Y<K;Y++){let E=H[z+Y];if(E)G.push(E)}_.push({colors:G})}let N,V,X;if(Z>=1){$.seek(Q+12+J*2);let j=$.uint32(),z=$.uint32(),G=$.uint32();if(j!==0){$.seek(Q+j),N=[];for(let Y=0;Y<J;Y++)N.push($.uint32())}if(z!==0){$.seek(Q+z),V=[];for(let Y=0;Y<J;Y++)V.push($.uint16())}if(G!==0){$.seek(Q+G),X=[];for(let Y=0;Y<K;Y++)X.push($.uint16())}}return{version:Z,numPalettes:J,numPaletteEntries:K,palettes:_,paletteTypes:N,paletteLabels:V,paletteEntryLabels:X}}function ZN($,Q,Z){let K=$.palettes[Q];if(!K)return null;return K.colors[Z]??null}function KN($){return`rgba(${$.red}, ${$.green}, ${$.blue}, ${($.alpha/255).toFixed(3)})`}function JN($){let Q=$.red.toString(16).padStart(2,"0"),Z=$.green.toString(16).padStart(2,"0"),K=$.blue.toString(16).padStart(2,"0");if($.alpha===255)return`#${Q}${Z}${K}`;let J=$.alpha.toString(16).padStart(2,"0");return`#${Q}${Z}${K}${J}`}var Uq;((g)=>{g[g.AllTypographicFeatures=0]="AllTypographicFeatures";g[g.Ligatures=1]="Ligatures";g[g.CursiveConnection=2]="CursiveConnection";g[g.LetterCase=3]="LetterCase";g[g.VerticalSubstitution=4]="VerticalSubstitution";g[g.LinguisticRearrangement=5]="LinguisticRearrangement";g[g.NumberSpacing=6]="NumberSpacing";g[g.SmartSwashes=8]="SmartSwashes";g[g.Diacritics=9]="Diacritics";g[g.VerticalPosition=10]="VerticalPosition";g[g.Fractions=11]="Fractions";g[g.OverlappingCharacters=13]="OverlappingCharacters";g[g.TypographicExtras=14]="TypographicExtras";g[g.MathematicalExtras=15]="MathematicalExtras";g[g.OrnamentSets=16]="OrnamentSets";g[g.CharacterAlternatives=17]="CharacterAlternatives";g[g.DesignComplexity=18]="DesignComplexity";g[g.StyleOptions=19]="StyleOptions";g[g.CharacterShape=20]="CharacterShape";g[g.NumberCase=21]="NumberCase";g[g.TextSpacing=22]="TextSpacing";g[g.Transliteration=23]="Transliteration";g[g.Annotation=24]="Annotation";g[g.KanaSpacing=25]="KanaSpacing";g[g.IdeographicSpacing=26]="IdeographicSpacing";g[g.UnicodeDecomposition=27]="UnicodeDecomposition";g[g.RubyKana=28]="RubyKana";g[g.CJKSymbolAlternatives=29]="CJKSymbolAlternatives";g[g.IdeographicAlternatives=30]="IdeographicAlternatives";g[g.CJKVerticalRomanPlacement=31]="CJKVerticalRomanPlacement";g[g.ItalicCJKRoman=32]="ItalicCJKRoman";g[g.CaseSensitiveLayout=33]="CaseSensitiveLayout";g[g.AlternateKana=34]="AlternateKana";g[g.StylisticAlternatives=35]="StylisticAlternatives";g[g.ContextualAlternatives=36]="ContextualAlternatives";g[g.LowerCase=37]="LowerCase";g[g.UpperCase=38]="UpperCase";g[g.LanguageTag=39]="LanguageTag";g[g.CJKRomanSpacing=103]="CJKRomanSpacing"})(Uq||={});var Wq;((L)=>{L[L.RequiredLigaturesOn=0]="RequiredLigaturesOn";L[L.RequiredLigaturesOff=1]="RequiredLigaturesOff";L[L.CommonLigaturesOn=2]="CommonLigaturesOn";L[L.CommonLigaturesOff=3]="CommonLigaturesOff";L[L.RareLigaturesOn=4]="RareLigaturesOn";L[L.RareLigaturesOff=5]="RareLigaturesOff";L[L.LogosOn=6]="LogosOn";L[L.LogosOff=7]="LogosOff";L[L.RebusPicturesOn=8]="RebusPicturesOn";L[L.RebusPicturesOff=9]="RebusPicturesOff";L[L.DiphthongLigaturesOn=10]="DiphthongLigaturesOn";L[L.DiphthongLigaturesOff=11]="DiphthongLigaturesOff";L[L.SquaredLigaturesOn=12]="SquaredLigaturesOn";L[L.SquaredLigaturesOff=13]="SquaredLigaturesOff";L[L.AbbrevSquaredLigaturesOn=14]="AbbrevSquaredLigaturesOn";L[L.AbbrevSquaredLigaturesOff=15]="AbbrevSquaredLigaturesOff";L[L.SymbolLigaturesOn=16]="SymbolLigaturesOn";L[L.SymbolLigaturesOff=17]="SymbolLigaturesOff";L[L.ContextualLigaturesOn=18]="ContextualLigaturesOn";L[L.ContextualLigaturesOff=19]="ContextualLigaturesOff";L[L.HistoricalLigaturesOn=20]="HistoricalLigaturesOn";L[L.HistoricalLigaturesOff=21]="HistoricalLigaturesOff"})(Wq||={});var Hq;((q)=>{q[q.NormalPosition=0]="NormalPosition";q[q.Superiors=1]="Superiors";q[q.Inferiors=2]="Inferiors";q[q.Ordinals=3]="Ordinals";q[q.ScientificInferiors=4]="ScientificInferiors"})(Hq||={});var _q;((Z)=>{Z[Z.LowerCaseNumbers=0]="LowerCaseNumbers";Z[Z.UpperCaseNumbers=1]="UpperCaseNumbers"})(_q||={});var Nq;((J)=>{J[J.MonospacedNumbers=0]="MonospacedNumbers";J[J.ProportionalNumbers=1]="ProportionalNumbers";J[J.ThirdWidthNumbers=2]="ThirdWidthNumbers";J[J.QuarterWidthNumbers=3]="QuarterWidthNumbers"})(Nq||={});var Vq;((K)=>{K[K.NoFractions=0]="NoFractions";K[K.VerticalFractions=1]="VerticalFractions";K[K.DiagonalFractions=2]="DiagonalFractions"})(Vq||={});var Xq;((J)=>{J[J.CaseSensitiveLayoutOn=0]="CaseSensitiveLayoutOn";J[J.CaseSensitiveLayoutOff=1]="CaseSensitiveLayoutOff";J[J.CaseSensitiveSpacingOn=2]="CaseSensitiveSpacingOn";J[J.CaseSensitiveSpacingOff=3]="CaseSensitiveSpacingOff"})(Xq||={});var jq;((S)=>{S[S.NoStylisticAlternates=0]="NoStylisticAlternates";S[S.StylisticAltOneOn=2]="StylisticAltOneOn";S[S.StylisticAltOneOff=3]="StylisticAltOneOff";S[S.StylisticAltTwoOn=4]="StylisticAltTwoOn";S[S.StylisticAltTwoOff=5]="StylisticAltTwoOff";S[S.StylisticAltThreeOn=6]="StylisticAltThreeOn";S[S.StylisticAltThreeOff=7]="StylisticAltThreeOff";S[S.StylisticAltFourOn=8]="StylisticAltFourOn";S[S.StylisticAltFourOff=9]="StylisticAltFourOff";S[S.StylisticAltFiveOn=10]="StylisticAltFiveOn";S[S.StylisticAltFiveOff=11]="StylisticAltFiveOff";S[S.StylisticAltSixOn=12]="StylisticAltSixOn";S[S.StylisticAltSixOff=13]="StylisticAltSixOff";S[S.StylisticAltSevenOn=14]="StylisticAltSevenOn";S[S.StylisticAltSevenOff=15]="StylisticAltSevenOff";S[S.StylisticAltEightOn=16]="StylisticAltEightOn";S[S.StylisticAltEightOff=17]="StylisticAltEightOff";S[S.StylisticAltNineOn=18]="StylisticAltNineOn";S[S.StylisticAltNineOff=19]="StylisticAltNineOff";S[S.StylisticAltTenOn=20]="StylisticAltTenOn";S[S.StylisticAltTenOff=21]="StylisticAltTenOff";S[S.StylisticAltElevenOn=22]="StylisticAltElevenOn";S[S.StylisticAltElevenOff=23]="StylisticAltElevenOff";S[S.StylisticAltTwelveOn=24]="StylisticAltTwelveOn";S[S.StylisticAltTwelveOff=25]="StylisticAltTwelveOff";S[S.StylisticAltThirteenOn=26]="StylisticAltThirteenOn";S[S.StylisticAltThirteenOff=27]="StylisticAltThirteenOff";S[S.StylisticAltFourteenOn=28]="StylisticAltFourteenOn";S[S.StylisticAltFourteenOff=29]="StylisticAltFourteenOff";S[S.StylisticAltFifteenOn=30]="StylisticAltFifteenOn";S[S.StylisticAltFifteenOff=31]="StylisticAltFifteenOff";S[S.StylisticAltSixteenOn=32]="StylisticAltSixteenOn";S[S.StylisticAltSixteenOff=33]="StylisticAltSixteenOff";S[S.StylisticAltSeventeenOn=34]="StylisticAltSeventeenOn";S[S.StylisticAltSeventeenOff=35]="StylisticAltSeventeenOff";S[S.StylisticAltEighteenOn=36]="StylisticAltEighteenOn";S[S.StylisticAltEighteenOff=37]="StylisticAltEighteenOff";S[S.StylisticAltNineteenOn=38]="StylisticAltNineteenOn";S[S.StylisticAltNineteenOff=39]="StylisticAltNineteenOff";S[S.StylisticAltTwentyOn=40]="StylisticAltTwentyOn";S[S.StylisticAltTwentyOff=41]="StylisticAltTwentyOff"})(jq||={});var zq;((U)=>{U[U.ContextualAlternatesOn=0]="ContextualAlternatesOn";U[U.ContextualAlternatesOff=1]="ContextualAlternatesOff";U[U.SwashAlternatesOn=2]="SwashAlternatesOn";U[U.SwashAlternatesOff=3]="SwashAlternatesOff";U[U.ContextualSwashAlternatesOn=4]="ContextualSwashAlternatesOn";U[U.ContextualSwashAlternatesOff=5]="ContextualSwashAlternatesOff"})(zq||={});var Gq;((K)=>{K[K.DefaultLowerCase=0]="DefaultLowerCase";K[K.LowerCaseSmallCaps=1]="LowerCaseSmallCaps";K[K.LowerCasePetiteCaps=2]="LowerCasePetiteCaps"})(Gq||={});var Yq;((K)=>{K[K.DefaultUpperCase=0]="DefaultUpperCase";K[K.UpperCaseSmallCaps=1]="UpperCaseSmallCaps";K[K.UpperCasePetiteCaps=2]="UpperCasePetiteCaps"})(Yq||={});var Eq;((N)=>{N[N.WordInitialSwashesOn=0]="WordInitialSwashesOn";N[N.WordInitialSwashesOff=1]="WordInitialSwashesOff";N[N.WordFinalSwashesOn=2]="WordFinalSwashesOn";N[N.WordFinalSwashesOff=3]="WordFinalSwashesOff";N[N.LineInitialSwashesOn=4]="LineInitialSwashesOn";N[N.LineInitialSwashesOff=5]="LineInitialSwashesOff";N[N.LineFinalSwashesOn=6]="LineFinalSwashesOn";N[N.LineFinalSwashesOff=7]="LineFinalSwashesOff";N[N.NonFinalSwashesOn=8]="NonFinalSwashesOn";N[N.NonFinalSwashesOff=9]="NonFinalSwashesOff"})(Eq||={});var wq;((K)=>{K[K.ShowDiacritics=0]="ShowDiacritics";K[K.HideDiacritics=1]="HideDiacritics";K[K.DecomposeDiacritics=2]="DecomposeDiacritics"})(wq||={});var Aq;((z)=>{z[z.TraditionalCharacters=0]="TraditionalCharacters";z[z.SimplifiedCharacters=1]="SimplifiedCharacters";z[z.JIS1978Characters=2]="JIS1978Characters";z[z.JIS1983Characters=3]="JIS1983Characters";z[z.JIS1990Characters=4]="JIS1990Characters";z[z.TraditionalAltOne=5]="TraditionalAltOne";z[z.TraditionalAltTwo=6]="TraditionalAltTwo";z[z.TraditionalAltThree=7]="TraditionalAltThree";z[z.TraditionalAltFour=8]="TraditionalAltFour";z[z.TraditionalAltFive=9]="TraditionalAltFive";z[z.ExpertCharacters=10]="ExpertCharacters";z[z.NLCCharacters=13]="NLCCharacters";z[z.JIS2004Characters=11]="JIS2004Characters";z[z.HojoCharacters=12]="HojoCharacters"})(Aq||={});var Fq;((Z)=>{Z[Z.Exclusive=32768]="Exclusive";Z[Z.UseDefault=16384]="UseDefault"})(Fq||={});function r5($){let Q=$.offset,Z=$.fixed(),K=$.uint16();$.skip(2),$.skip(4);let J=[];for(let q=0;q<K;q++){let U=$.uint16(),W=$.uint16(),H=$.offset32(),_=$.uint16(),N=_&255,V=$.uint16(),X=[],j=$.offset;$.seek(Q+H);for(let z=0;z<W;z++)X.push({settingValue:$.uint16(),nameId:$.uint16()});$.seek(j),J.push({featureType:U,nSettings:W,settingTableOffset:H,featureFlags:_,defaultSettingIndex:N,nameId:V,settings:X})}return{version:Z,features:J}}function qN($,Q){return $.features.find((Z)=>Z.featureType===Q)}function UN($){return $.features}function WN($){return($.featureFlags&32768)!==0}function HN($){return $.settings[$.defaultSettingIndex]}function _N($,Q){return $.settings.find((Z)=>Z.settingValue===Q)}function NN($,Q){return $.settings.some((Z)=>Z.settingValue===Q)}function VN($,Q){switch($){case 1:switch(Q){case 2:return"liga";case 4:return"dlig";case 20:return"hlig";case 18:return"clig";case 0:return"rlig"}break;case 10:switch(Q){case 1:return"sups";case 2:return"subs";case 3:return"ordn";case 4:return"sinf"}break;case 11:if(Q===1||Q===2)return"frac";break;case 21:switch(Q){case 0:return"onum";case 1:return"lnum"}break;case 6:switch(Q){case 0:return"tnum";case 1:return"pnum"}break;case 33:if(Q===0)return"case";break;case 37:switch(Q){case 1:return"smcp";case 2:return"pcap"}break;case 38:switch(Q){case 1:return"c2sc";case 2:return"c2pc"}break;case 8:if(Q===0||Q===2)return"swsh";break;case 36:switch(Q){case 0:return"calt";case 2:return"swsh"}break;case 35:if(Q>=2&&Q<=41){let Z=Math.floor((Q-2)/2)+1;if(Z<=20)return`ss${Z.toString().padStart(2,"0")}`}break;case 20:switch(Q){case 0:return"trad";case 1:return"smpl";case 2:return"jp78";case 3:return"jp83";case 4:return"jp90";case 11:return"jp04";case 13:return"nlck";case 10:return"expt";case 12:return"hojo"}break;case 4:return"vert";case 24:return"nalt";case 28:return"ruby"}return null}function XN($){switch($){case"liga":return{featureType:1,settingValue:2};case"dlig":return{featureType:1,settingValue:4};case"hlig":return{featureType:1,settingValue:20};case"clig":return{featureType:1,settingValue:18};case"rlig":return{featureType:1,settingValue:0};case"sups":return{featureType:10,settingValue:1};case"subs":return{featureType:10,settingValue:2};case"ordn":return{featureType:10,settingValue:3};case"sinf":return{featureType:10,settingValue:4};case"frac":return{featureType:11,settingValue:2};case"onum":return{featureType:21,settingValue:0};case"lnum":return{featureType:21,settingValue:1};case"tnum":return{featureType:6,settingValue:0};case"pnum":return{featureType:6,settingValue:1};case"case":return{featureType:33,settingValue:0};case"smcp":return{featureType:37,settingValue:1};case"pcap":return{featureType:37,settingValue:2};case"c2sc":return{featureType:38,settingValue:1};case"c2pc":return{featureType:38,settingValue:2};case"swsh":return{featureType:8,settingValue:0};case"calt":return{featureType:36,settingValue:0};case"trad":return{featureType:20,settingValue:0};case"smpl":return{featureType:20,settingValue:1};case"jp78":return{featureType:20,settingValue:2};case"jp83":return{featureType:20,settingValue:3};case"jp90":return{featureType:20,settingValue:4};case"jp04":return{featureType:20,settingValue:11};case"nlck":return{featureType:20,settingValue:13};case"expt":return{featureType:20,settingValue:10};case"hojo":return{featureType:20,settingValue:12};case"vert":return{featureType:4,settingValue:0};case"nalt":return{featureType:24,settingValue:0};case"ruby":return{featureType:28,settingValue:0}}if($.startsWith("ss")&&$.length===4){let Q=parseInt($.slice(2),10);if(Q>=1&&Q<=20)return{featureType:35,settingValue:(Q-1)*2+2}}return null}var i9={GridFit:1,DoGray:2,SymmetricGridFit:4,SymmetricSmoothing:8};function t5($){let Q=$.uint16(),Z=$.uint16(),K=[];for(let J=0;J<Z;J++){let q=$.uint16(),U=$.uint16();K.push({maxPPEM:q,behavior:U})}return K.sort((J,q)=>J.maxPPEM-q.maxPPEM),{version:Q,ranges:K}}function e5($,Q){for(let Z=0;Z<$.ranges.length;Z++){let K=$.ranges[Z];if(Q<=K.maxPPEM)return K.behavior}if($.ranges.length>0)return $.ranges[$.ranges.length-1]?.behavior;return i9.GridFit|i9.DoGray}function jN($,Q){return(e5($,Q)&i9.GridFit)!==0}function zN($,Q){return(e5($,Q)&i9.DoGray)!==0}class L8{startGlyphId;classValueArray;ranges;glyphMap;isEmpty;constructor($,Q,Z,K,J){this.startGlyphId=$,this.classValueArray=Q,this.ranges=Z,this.glyphMap=K,this.isEmpty=J}static empty(){return new L8(0,null,null,null,!0)}static format1($,Q){return new L8($,Q,null,null,!1)}static format2($){let Q=0;for(let K=0;K<$.length;K++){let J=$[K];Q+=J.endGlyphId-J.startGlyphId+1}let Z=null;if(Q<1e4){Z=new Map;for(let K=0;K<$.length;K++){let J=$[K];for(let q=J.startGlyphId;q<=J.endGlyphId;q++)Z.set(q,J.classValue)}}return new L8(0,null,$,Z,!1)}get($){if(this.isEmpty)return 0;if(this.classValueArray){let J=$-this.startGlyphId;return J>=0&&J<this.classValueArray.length?this.classValueArray[J]:0}if(this.glyphMap)return this.glyphMap.get($)??0;let Q=this.ranges,Z=0,K=Q.length-1;while(Z<=K){let J=Z+K>>>1,q=Q[J];if($>q.endGlyphId)Z=J+1;else if($<q.startGlyphId)K=J-1;else return q.classValue}return 0}glyphsInClass($){if(this.isEmpty)return[];if(this.classValueArray){let K=[];for(let J=0;J<this.classValueArray.length;J++)if(this.classValueArray[J]===$)K.push(this.startGlyphId+J);return K}let Q=[],Z=this.ranges;for(let K=0;K<Z.length;K++){let J=Z[K];if(J.classValue===$)for(let q=J.startGlyphId;q<=J.endGlyphId;q++)Q.push(q)}return Q}}var Lq=L8.empty();function Dq($){let Q=$.uint16();if(Q===1){let Z=$.uint16(),K=$.uint16(),J=$.uint16Array(K);return L8.format1(Z,J)}if(Q===2){let Z=$.uint16(),K=Array(Z);for(let J=0;J<Z;J++)K[J]={startGlyphId:$.uint16(),endGlyphId:$.uint16(),classValue:$.uint16()};return L8.format2(K)}throw Error(`Unknown ClassDef format: ${Q}`)}function M6($,Q){if(Q===0)return Lq;return Dq($.sliceFrom(Q))}function Bq($){let Q=$.uint16(),Z=$.uint16(),K=$.offset16(),J=$.offset16(),q=$.offset16(),U=$.offset16(),W=0;if(Q===1&&Z>=2)W=$.offset16();let H=M6($,K),_=null;if(J!==0)_=GN($.sliceFrom(J));let N=null;if(q!==0)N=YN($.sliceFrom(q));let V=M6($,U),X=null;if(W!==0)X=EN($.sliceFrom(W));return{version:{major:Q,minor:Z},glyphClassDef:H,attachList:_,ligCaretList:N,markAttachClassDef:V,markGlyphSets:X}}function GN($){let Q=$.offset16(),Z=$.uint16(),K=$.uint16Array(Z),J=$.sliceFrom(Q),q=J.uint16(),U=[];if(q===1){let H=J.uint16();for(let _=0;_<H;_++)U.push(J.uint16())}else if(q===2){let H=J.uint16();for(let _=0;_<H;_++){let N=J.uint16(),V=J.uint16();J.skip(2);for(let X=N;X<=V;X++)U.push(X)}}let W=new Map;for(let H=0;H<K.length;H++){let _=K[H],N=U[H];if(N===void 0)continue;let V=$.sliceFrom(_),X=V.uint16(),j=V.uint16Array(X),z=Array(j.length);for(let G=0;G<j.length;G++)z[G]=j[G];W.set(N,{pointIndices:z})}return W}function YN($){let Q=$.offset16(),Z=$.uint16(),K=$.uint16Array(Z),J=$.sliceFrom(Q),q=J.uint16(),U=[];if(q===1){let H=J.uint16();for(let _=0;_<H;_++)U.push(J.uint16())}else if(q===2){let H=J.uint16();for(let _=0;_<H;_++){let N=J.uint16(),V=J.uint16();J.skip(2);for(let X=N;X<=V;X++)U.push(X)}}let W=new Map;for(let H=0;H<K.length;H++){let _=K[H],N=U[H];if(N===void 0)continue;let V=$.sliceFrom(_),X=V.uint16(),j=V.uint16Array(X),z=[];for(let G=0;G<j.length;G++){let Y=j[G],E=$.sliceFrom(_+Y),w=E.uint16();if(w===1)z.push(E.int16());else if(w===2)z.push(E.uint16());else if(w===3)z.push(E.int16())}W.set(N,{caretValues:z})}return W}function EN($){let Q=$.uint16(),Z=$.uint16(),K=$.uint32Array(Z),J=[];for(let q=0;q<K.length;q++){let U=K[q],W=$.sliceFrom(U),H=W.uint16(),_=new Set;if(H===1){let N=W.uint16();for(let V=0;V<N;V++)_.add(W.uint16())}else if(H===2){let N=W.uint16();for(let V=0;V<N;V++){let X=W.uint16(),j=W.uint16();W.skip(2);for(let z=X;z<=j;z++)_.add(z)}}J.push(_)}return{has(q,U){let W=J[q];return W?W.has(U):!1}}}function H8($,Q){if(!$)return 0;return $.glyphClassDef.get(Q)}class _9{glyphMap;ranges;glyphArray;size;constructor($,Q,Z,K){this.glyphMap=$,this.ranges=Q,this.glyphArray=Z,this.size=K}static format1($){let Q=new Map;for(let Z=0;Z<$.length;Z++)Q.set($[Z],Z);return new _9(Q,null,$,$.length)}static format2($){let Q=0;if($.length>0){let Z=$[$.length-1];if(Z)Q=Z.startCoverageIndex+(Z.endGlyphId-Z.startGlyphId+1)}return new _9(null,$,null,Q)}get($){if(this.glyphMap)return this.glyphMap.get($)??null;let Q=this.ranges,Z=0,K=Q.length-1;while(Z<=K){let J=Z+K>>>1,q=Q[J];if($>q.endGlyphId)Z=J+1;else if($<q.startGlyphId)K=J-1;else return q.startCoverageIndex+($-q.startGlyphId)}return null}covers($){return this.get($)!==null}glyphs(){if(this.glyphArray){let Z=this.glyphArray,K=Array(Z.length);for(let J=0;J<Z.length;J++)K[J]=Z[J];return K}let $=[],Q=this.ranges;for(let Z=0;Z<Q.length;Z++){let K=Q[Z];for(let J=K.startGlyphId;J<=K.endGlyphId;J++)$.push(J)}return $}}function Mq($){let Q=$.uint16();if(Q===1){let Z=$.uint16(),K=$.uint16Array(Z);return _9.format1(K)}if(Q===2){let Z=$.uint16(),K=Array(Z);for(let J=0;J<Z;J++)K[J]={startGlyphId:$.uint16(),endGlyphId:$.uint16(),startCoverageIndex:$.uint16()};return _9.format2(K)}throw Error(`Unknown Coverage format: ${Q}`)}function i($,Q){return Mq($.sliceFrom(Q))}function Rq($){return"deltaSetOuterIndex"in $}function f8($,Q){if(Q===0)return null;return wN($.sliceFrom(Q))}function wN($){let Q=$.uint16(),Z=$.uint16(),K=$.uint16();if(K===32768)return{deltaSetOuterIndex:Q,deltaSetInnerIndex:Z};let J=[];if(K>=1&&K<=3){let q=Z-Q+1,U=1<<K,W=16/U,H=(1<<U)-1,_=1<<U-1,N=Math.ceil(q/W),V=0;for(let X=0;X<N;X++){let j=$.uint16();for(let z=0;z<W&&V<q;z++,V++){let G=16-U*(z+1),Y=j>>G&H;if(Y&_)Y=Y-(1<<U);J.push(Y)}}}return{startSize:Q,endSize:Z,deltaFormat:K,deltaValues:J}}function Tq($,Q){if(Q<$.startSize||Q>$.endSize)return 0;let Z=Q-$.startSize;return $.deltaValues[Z]??0}function AN($,Q,Z){if(!$)return Q;if(Rq($))return Q;return Q+Tq($,Z)}var y6={RightToLeft:1,IgnoreBaseGlyphs:2,IgnoreLigatures:4,IgnoreMarks:8,UseMarkFilteringSet:16,MarkAttachmentTypeMask:65280};function s0($){return($&y6.MarkAttachmentTypeMask)>>8}function s9($){let Q=$.uint16(),Z=[];for(let J=0;J<Q;J++)Z.push({tag:$.tag(),offset:$.offset16()});let K=[];for(let J=0;J<Z.length;J++){let q=Z[J],U=$.sliceFrom(q.offset),W=FN(U);K.push({scriptTag:q.tag,script:W})}return{scripts:K}}function FN($){let Q=$.offset16(),Z=$.uint16(),K=[];for(let U=0;U<Z;U++)K.push({tag:$.tag(),offset:$.offset16()});let J=null;if(Q!==0)J=Oq($.sliceFrom(Q));let q=[];for(let U=0;U<K.length;U++){let W=K[U],H=Oq($.sliceFrom(W.offset));q.push({langSysTag:W.tag,langSys:H})}return{defaultLangSys:J,langSysRecords:q}}function Oq($){let Q=$.offset16(),Z=$.uint16(),K=$.uint16(),J=$.uint16Array(K),q=Array(K);for(let U=0;U<K;U++)q[U]=J[U];return{requiredFeatureIndex:Z,featureIndices:q}}function a9($){let Q=$.uint16(),Z=[];for(let J=0;J<Q;J++)Z.push({tag:$.tag(),offset:$.offset16()});let K=[];for(let J=0;J<Z.length;J++){let q=Z[J],U=$.sliceFrom(q.offset),W=LN(U);K.push({featureTag:q.tag,feature:W})}return{features:K}}function LN($){let Q=$.offset16(),Z=$.uint16(),K=$.uint16Array(Z),J=Array(Z);for(let q=0;q<Z;q++)J[q]=K[q];return{featureParamsOffset:Q,lookupListIndices:J}}function DN($){let Q=$.uint16(),Z=$.uint16Array(Q),K=[];for(let J=0;J<Z.length;J++){let q=Z[J],U=$.sliceFrom(q);K.push(BN(U))}return K}function BN($){let Q=$.uint16(),Z=$.uint16(),K=$.uint16(),J=$.uint16Array(K),q=Array(K);for(let W=0;W<K;W++)q[W]=J[W];let U;if(Z&y6.UseMarkFilteringSet)U=$.uint16();return{lookupType:Q,lookupFlag:Z,subtableOffsets:q,markFilteringSet:U}}function r9($,Q){for(let Z=0;Z<$.scripts.length;Z++){let K=$.scripts[Z];if(K.scriptTag===Q)return K.script}return null}function $$($,Q){if(Q===null)return $.defaultLangSys;for(let Z=0;Z<$.langSysRecords.length;Z++){let K=$.langSysRecords[Z];if(K.langSysTag===Q)return K.langSys}return $.defaultLangSys}function a0($,Q){return $.features[Q]??null}class N6{mask0=0;mask1=0;mask2=0;add($){this.mask0|=1<<($&31),this.mask1|=1<<($>>4&31),this.mask2|=1<<($>>9&31)}addRange($,Q){if(Q-$<32)for(let Z=$;Z<=Q;Z++)this.add(Z);else this.mask0=4294967295,this.mask1=4294967295,this.mask2=4294967295}mayHave($){return(this.mask0&1<<($&31))!==0&&(this.mask1&1<<($>>4&31))!==0&&(this.mask2&1<<($>>9&31))!==0}addCoverage($){let Q=$.glyphs();for(let Z=0;Z<Q.length;Z++){let K=Q[Z];this.add(K)}}mayIntersect($){return(this.mask0&$.mask0)!==0&&(this.mask1&$.mask1)!==0&&(this.mask2&$.mask2)!==0}getMasks(){return{mask0:this.mask0,mask1:this.mask1,mask2:this.mask2}}}function MN($){let Q=new N6;for(let Z=0;Z<$.length;Z++){let K=$[Z];Q.addCoverage(K)}return Q}function Q$($,Q){let Z=[];for(let K=0;K<Q.length;K++){let J=Q[K],q=$.sliceFrom(J);switch(q.uint16()){case 1:Z.push(RN(q));break;case 2:Z.push(TN(q));break;case 3:Z.push(ON(q));break}}return Z}function RN($){let Q=$.offset16(),Z=$.uint16(),K=$.uint16Array(Z),J=i($,Q),q=[];for(let U=0;U<K.length;U++){let W=K[U];if(W===0){q.push(null);continue}let H=$.sliceFrom(W),_=H.uint16(),N=H.uint16Array(_),V=[];for(let X=0;X<N.length;X++){let j=N[X],z=H.sliceFrom(j),G=z.uint16(),Y=z.uint16(),E=z.uint16Array(G-1),w=Array(E.length);for(let A=0;A<E.length;A++)w[A]=E[A];let F=N9(z,Y);V.push({glyphCount:G,inputSequence:w,lookupRecords:F})}q.push(V)}return{format:1,coverage:J,ruleSets:q}}function TN($){let Q=$.offset16(),Z=$.offset16(),K=$.uint16(),J=$.uint16Array(K),q=i($,Q),U=M6($,Z),W=[];for(let H=0;H<J.length;H++){let _=J[H];if(_===0){W.push(null);continue}let N=$.sliceFrom(_),V=N.uint16(),X=N.uint16Array(V),j=[];for(let z=0;z<X.length;z++){let G=X[z],Y=N.sliceFrom(G),E=Y.uint16(),w=Y.uint16(),F=Y.uint16Array(E-1),A=Array(F.length);for(let L=0;L<F.length;L++)A[L]=F[L];let B=N9(Y,w);j.push({glyphCount:E,inputClasses:A,lookupRecords:B})}W.push(j)}return{format:2,coverage:q,classDef:U,classRuleSets:W}}function ON($){let Q=$.uint16(),Z=$.uint16(),K=$.uint16Array(Q),J=[];for(let U=0;U<K.length;U++){let W=K[U];J.push(i($,W))}let q=N9($,Z);return{format:3,coverages:J,lookupRecords:q}}function Z$($,Q){let Z=[];for(let K=0;K<Q.length;K++){let J=Q[K],q=$.sliceFrom(J);switch(q.uint16()){case 1:Z.push(PN(q));break;case 2:Z.push(vN(q));break;case 3:Z.push(IN(q));break}}return Z}function PN($){let Q=$.offset16(),Z=$.uint16(),K=$.uint16Array(Z),J=i($,Q),q=[];for(let U=0;U<K.length;U++){let W=K[U];if(W===0){q.push(null);continue}let H=$.sliceFrom(W),_=H.uint16(),N=H.uint16Array(_),V=[];for(let X=0;X<N.length;X++){let j=N[X],z=H.sliceFrom(j),G=z.uint16(),Y=z.uint16Array(G),E=Array(Y.length);for(let T=0;T<Y.length;T++)E[T]=Y[T];let w=z.uint16(),F=z.uint16Array(w-1),A=Array(F.length);for(let T=0;T<F.length;T++)A[T]=F[T];let B=z.uint16(),L=z.uint16Array(B),O=Array(L.length);for(let T=0;T<L.length;T++)O[T]=L[T];let M=z.uint16(),P=N9(z,M);V.push({backtrackSequence:E,inputSequence:A,lookaheadSequence:O,lookupRecords:P})}q.push(V)}return{format:1,coverage:J,chainRuleSets:q}}function vN($){let Q=$.offset16(),Z=$.offset16(),K=$.offset16(),J=$.offset16(),q=$.uint16(),U=$.uint16Array(q),W=i($,Q),H=M6($,Z),_=M6($,K),N=M6($,J),V=[];for(let X=0;X<U.length;X++){let j=U[X];if(j===0){V.push(null);continue}let z=$.sliceFrom(j),G=z.uint16(),Y=z.uint16Array(G),E=[];for(let w=0;w<Y.length;w++){let F=Y[w],A=z.sliceFrom(F),B=A.uint16(),L=A.uint16Array(B),O=Array(L.length);for(let R=0;R<L.length;R++)O[R]=L[R];let M=A.uint16(),P=A.uint16Array(M-1),T=Array(P.length);for(let R=0;R<P.length;R++)T[R]=P[R];let x=A.uint16(),I=A.uint16Array(x),f=Array(I.length);for(let R=0;R<I.length;R++)f[R]=I[R];let l=A.uint16(),C=N9(A,l);E.push({backtrackClasses:O,inputClasses:T,lookaheadClasses:f,lookupRecords:C})}V.push(E)}return{format:2,coverage:W,backtrackClassDef:H,inputClassDef:_,lookaheadClassDef:N,chainClassRuleSets:V}}function IN($){let Q=$.uint16(),Z=$.uint16Array(Q),K=$.uint16(),J=$.uint16Array(K),q=$.uint16(),U=$.uint16Array(q),W=$.uint16(),H=N9($,W),_=[];for(let X=0;X<Z.length;X++){let j=Z[X];_.push(i($,j))}let N=[];for(let X=0;X<J.length;X++){let j=J[X];N.push(i($,j))}let V=[];for(let X=0;X<U.length;X++){let j=U[X];V.push(i($,j))}return{format:3,backtrackCoverages:_,inputCoverages:N,lookaheadCoverages:V,lookupRecords:H}}function N9($,Q){let Z=[];for(let K=0;K<Q;K++)Z.push({sequenceIndex:$.uint16(),lookupListIndex:$.uint16()});return Z}function Pq($){let Q=$.uint16(),Z=$.int16(),K=$.int16(),J={xCoordinate:Z,yCoordinate:K};if(Q===2)J.anchorPoint=$.uint16();else if(Q===3)J.xDeviceOffset=$.uint16(),J.yDeviceOffset=$.uint16();return J}function t9($,Q){if(Q===0)return null;return Pq($.sliceFrom(Q))}function K$($){let Q=$.uint16(),Z=[],K=[];for(let J=0;J<Q;J++)K.push({markClass:$.uint16(),anchorOffset:$.uint16()});for(let J=0;J<K.length;J++){let q=K[J],U=Pq($.sliceFrom(q.anchorOffset));Z.push({markClass:q.markClass,markAnchor:U})}return{markRecords:Z}}function J$($,Q){let Z=[];for(let K=0;K<Q.length;K++){let J=Q[K],q=$.sliceFrom(J);if(q.uint16()===1){let W=q.offset16(),H=q.uint16(),_=[];for(let X=0;X<H;X++)_.push({entryOffset:q.uint16(),exitOffset:q.uint16()});let N=i(q,W),V=[];for(let X=0;X<_.length;X++){let j=_[X];V.push({entryAnchor:t9(q,j.entryOffset),exitAnchor:t9(q,j.exitOffset)})}Z.push({coverage:N,entryExitRecords:V})}}return Z}function q$($,Q){let Z=[];for(let K=0;K<Q.length;K++){let J=Q[K],q=$.sliceFrom(J);if(q.uint16()===1){let W=q.offset16(),H=q.offset16(),_=q.uint16(),N=q.offset16(),V=q.offset16(),X=i(q,W),j=i(q,H),z=K$(q.sliceFrom(N)),G=q.sliceFrom(V),Y=G.uint16(),E=[],w=[];for(let F=0;F<Y;F++){let A=[];for(let B=0;B<_;B++)A.push(G.uint16());w.push(A)}for(let F=0;F<w.length;F++){let A=w[F],B=[];for(let L=0;L<A.length;L++){let O=A[L];B.push(t9(G,O))}E.push({baseAnchors:B})}Z.push({markCoverage:X,baseCoverage:j,markClassCount:_,markArray:z,baseArray:E})}}return Z}function U$($,Q){let Z=[];for(let K=0;K<Q.length;K++){let J=Q[K],q=$.sliceFrom(J);if(q.uint16()===1){let W=q.offset16(),H=q.offset16(),_=q.uint16(),N=q.offset16(),V=q.offset16(),X=i(q,W),j=i(q,H),z=K$(q.sliceFrom(N)),G=q.sliceFrom(V),Y=G.uint16(),E=G.uint16Array(Y),w=[];for(let F=0;F<E.length;F++){let A=E[F],B=G.sliceFrom(A),L=B.uint16(),O=[],M=[];for(let P=0;P<L;P++){let T=[];for(let x=0;x<_;x++)T.push(B.uint16());M.push(T)}for(let P=0;P<M.length;P++){let T=M[P],x=[];for(let I=0;I<T.length;I++){let f=T[I];x.push(t9(B,f))}O.push({ligatureAnchors:x})}w.push({componentRecords:O})}Z.push({markCoverage:X,ligatureCoverage:j,markClassCount:_,markArray:z,ligatureArray:w})}}return Z}function W$($,Q){let Z=[];for(let K=0;K<Q.length;K++){let J=Q[K],q=$.sliceFrom(J);if(q.uint16()===1){let W=q.offset16(),H=q.offset16(),_=q.uint16(),N=q.offset16(),V=q.offset16(),X=i(q,W),j=i(q,H),z=K$(q.sliceFrom(N)),G=q.sliceFrom(V),Y=G.uint16(),E=[],w=[];for(let F=0;F<Y;F++){let A=[];for(let B=0;B<_;B++)A.push(G.uint16());w.push(A)}for(let F=0;F<w.length;F++){let A=w[F],B=[];for(let L=0;L<A.length;L++){let O=A[L];B.push(t9(G,O))}E.push({mark2Anchors:B})}Z.push({mark1Coverage:X,mark2Coverage:j,markClassCount:_,mark1Array:z,mark2Array:E})}}return Z}var D8={XPlacement:1,YPlacement:2,XAdvance:4,YAdvance:8,XPlaDevice:16,YPlaDevice:32,XAdvDevice:64,YAdvDevice:128};function vq($){let Q=$.uint16(),Z=$.uint16(),K=$.offset16(),J=$.offset16(),q=$.offset16();if(Q===1&&Z>=1)$.offset32();let U=s9($.sliceFrom(K)),W=a9($.sliceFrom(J)),H=$.sliceFrom(q),_=H.uint16(),N=H.uint16Array(_),V=[];for(let X=0;X<N.length;X++){let j=N[X],z=H.sliceFrom(j),G=kN(z);if(G)V.push(G)}return{version:{major:Q,minor:Z},scriptList:U,featureList:W,lookups:V}}function kN($){let Q=$.uint16(),Z=$.uint16(),K=$.uint16(),J=$.uint16Array(K),q=Array(J.length);for(let N=0;N<J.length;N++)q[N]=J[N];let U;if(Z&y6.UseMarkFilteringSet)U=$.uint16();let W={flag:Z,markFilteringSet:U},H=(N)=>{let V=new N6;for(let X=0;X<N.length;X++){let j=N[X];V.addCoverage(j.coverage)}return V},_=(N)=>{let V=new N6;for(let X=0;X<N.length;X++){let j=N[X];V.addCoverage(j.markCoverage)}return V};switch(Q){case 1:{let N=Iq($,q);return{type:1,...W,subtables:N,digest:H(N)}}case 2:{let N=kq($,q);return{type:2,...W,subtables:N,digest:H(N)}}case 3:{let N=J$($,q);return{type:3,...W,subtables:N,digest:H(N)}}case 4:{let N=q$($,q);return{type:4,...W,subtables:N,digest:_(N)}}case 5:{let N=U$($,q);return{type:5,...W,subtables:N,digest:_(N)}}case 6:{let N=W$($,q),V=new N6;for(let X=0;X<N.length;X++){let j=N[X];V.addCoverage(j.mark1Coverage)}return{type:6,...W,subtables:N,digest:V}}case 7:{let N=Q$($,q),V=new N6;for(let X=0;X<N.length;X++){let j=N[X];if("coverage"in j&&j.coverage)V.addCoverage(j.coverage)}return{type:7,...W,subtables:N,digest:V}}case 8:{let N=Z$($,q),V=new N6;for(let X=0;X<N.length;X++){let j=N[X];if("coverage"in j&&j.coverage)V.addCoverage(j.coverage);else if("inputCoverages"in j&&j.inputCoverages?.[0])V.addCoverage(j.inputCoverages[0])}return{type:8,...W,subtables:N,digest:V}}case 9:return hN($,q,W);default:return null}}function V9($,Q,Z){let K={};if(Q&D8.XPlacement)K.xPlacement=$.int16();if(Q&D8.YPlacement)K.yPlacement=$.int16();if(Q&D8.XAdvance)K.xAdvance=$.int16();if(Q&D8.YAdvance)K.yAdvance=$.int16();let J=Z??$;if(Q&D8.XPlaDevice){let q=$.uint16();if(q!==0)K.xPlaDevice=f8(J,q)??void 0}if(Q&D8.YPlaDevice){let q=$.uint16();if(q!==0)K.yPlaDevice=f8(J,q)??void 0}if(Q&D8.XAdvDevice){let q=$.uint16();if(q!==0)K.xAdvDevice=f8(J,q)??void 0}if(Q&D8.YAdvDevice){let q=$.uint16();if(q!==0)K.yAdvDevice=f8(J,q)??void 0}return K}function Iq($,Q){let Z=[];for(let K=0;K<Q.length;K++){let J=Q[K],q=$.sliceFrom(J),U=$.sliceFrom(J),W=U.uint16();if(W===1){let H=U.offset16(),_=U.uint16(),N=V9(U,_,q),V=i(q,H);Z.push({format:1,coverage:V,valueFormat:_,value:N})}else if(W===2){let H=U.offset16(),_=U.uint16(),N=U.uint16(),V=[];for(let j=0;j<N;j++)V.push(V9(U,_,q));let X=i(q,H);Z.push({format:2,coverage:X,valueFormat:_,values:V})}}return Z}function kq($,Q){let Z=[];for(let K=0;K<Q.length;K++){let J=Q[K],q=$.sliceFrom(J),U=$.sliceFrom(J),W=U.uint16();if(W===1)Z.push(CN(U,q));else if(W===2)Z.push(SN(U,q))}return Z}function CN($,Q){let Z=$.offset16(),K=$.uint16(),J=$.uint16(),q=$.uint16(),U=$.uint16Array(q),W=i(Q,Z),H=[];for(let _=0;_<U.length;_++){let N=U[_],V=Q.sliceFrom(N),X=Q.sliceFrom(N),j=X.uint16(),z=[];for(let G=0;G<j;G++){let Y=X.uint16(),E=V9(X,K,V),w=V9(X,J,V);z.push({secondGlyph:Y,value1:E,value2:w})}H.push({pairValueRecords:z})}return{format:1,coverage:W,valueFormat1:K,valueFormat2:J,pairSets:H}}function SN($,Q){let Z=$.offset16(),K=$.uint16(),J=$.uint16(),q=$.offset16(),U=$.offset16(),W=$.uint16(),H=$.uint16(),_=i(Q,Z),N=M6(Q,q),V=M6(Q,U),X=[];for(let j=0;j<W;j++){let z=[];for(let G=0;G<H;G++){let Y=V9($,K,Q),E=V9($,J,Q);z.push({value1:Y,value2:E})}X.push({class2Records:z})}return{format:2,coverage:_,valueFormat1:K,valueFormat2:J,classDef1:N,classDef2:V,class1Count:W,class2Count:H,class1Records:X}}function hN($,Q,Z){if(Q.length===0)return null;let K=[];for(let W=0;W<Q.length;W++){let H=Q[W],_=$.sliceFrom(H);if(_.uint16()!==1)continue;let V=_.uint16(),X=_.uint32();K.push({type:V,reader:_.sliceFrom(X)})}if(K.length===0)return null;let J=K[0]?.type,q=(W)=>{let H=new N6;for(let _=0;_<W.length;_++){let N=W[_];H.addCoverage(N.coverage)}return H},U=(W)=>{let H=new N6;for(let _=0;_<W.length;_++){let N=W[_];H.addCoverage(N.markCoverage)}return H};switch(J){case 1:{let W=[];for(let H=0;H<K.length;H++){let _=K[H];W.push(...Iq(_.reader,[0]))}return{type:1,...Z,subtables:W,digest:q(W)}}case 2:{let W=[];for(let H=0;H<K.length;H++){let _=K[H];W.push(...kq(_.reader,[0]))}return{type:2,...Z,subtables:W,digest:q(W)}}case 3:{let W=[];for(let H=0;H<K.length;H++){let _=K[H];W.push(...J$(_.reader,[0]))}return{type:3,...Z,subtables:W,digest:q(W)}}case 4:{let W=[];for(let H=0;H<K.length;H++){let _=K[H];W.push(...q$(_.reader,[0]))}return{type:4,...Z,subtables:W,digest:U(W)}}case 5:{let W=[];for(let H=0;H<K.length;H++){let _=K[H];W.push(...U$(_.reader,[0]))}return{type:5,...Z,subtables:W,digest:U(W)}}case 6:{let W=[];for(let _=0;_<K.length;_++){let N=K[_];W.push(...W$(N.reader,[0]))}let H=new N6;for(let _=0;_<W.length;_++){let N=W[_];H.addCoverage(N.mark1Coverage)}return{type:6,...Z,subtables:W,digest:H}}case 7:{let W=[];for(let _=0;_<K.length;_++){let N=K[_];W.push(...Q$(N.reader,[0]))}let H=new N6;for(let _=0;_<W.length;_++){let N=W[_];if("coverage"in N&&N.coverage)H.addCoverage(N.coverage)}return{type:7,...Z,subtables:W,digest:H}}case 8:{let W=[];for(let _=0;_<K.length;_++){let N=K[_];W.push(...Z$(N.reader,[0]))}let H=new N6;for(let _=0;_<W.length;_++){let N=W[_];if("coverage"in N&&N.coverage)H.addCoverage(N.coverage);else if("inputCoverages"in N&&N.inputCoverages?.[0])H.addCoverage(N.inputCoverages[0])}return{type:8,...Z,subtables:W,digest:H}}default:return null}}function yN($,Q){let Z=0,K=$.length-1;while(Z<=K){let J=Z+K>>>1,q=$[J],U=q.secondGlyph;if(U<Q)Z=J+1;else if(U>Q)K=J-1;else return q}return null}function H$($,Q,Z,K,J){for(let q=0;q<$.subtables.length;q++){let U=$.subtables[q],W=U.coverage.get(Q);if(W===null)continue;if(U.format===1){let H=U.pairSets[W];if(!H)continue;let _=yN(H.pairValueRecords,Z);if(_){let N=_.value1.xAdvance,V=_.value2.xAdvance;if(N)K.xAdvance+=N;if(V)J.xAdvance+=V;return!0}}else if(U.format===2){let H=U.classDef1.get(Q),_=U.class1Records;if(H>=_.length)continue;let N=_[H],V=U.classDef2.get(Z),X=N.class2Records;if(V>=X.length)continue;let j=X[V],z=j.value1.xAdvance,G=j.value2.xAdvance;if(z)K.xAdvance+=z;if(G)J.xAdvance+=G;return!0}}return!1}function _$($,Q){let Z=[];for(let K=0;K<Q.length;K++){let J=Q[K],q=$.sliceFrom(J);switch(q.uint16()){case 1:Z.push(bN(q));break;case 2:Z.push(mN(q));break;case 3:Z.push(gN(q));break}}return Z}function bN($){let Q=$.offset16(),Z=$.uint16(),K=$.uint16Array(Z),J=i($,Q),q=[];for(let U=0;U<K.length;U++){let W=K[U];if(W===0){q.push(null);continue}let H=$.sliceFrom(W),_=H.uint16(),N=H.uint16Array(_),V=[];for(let X=0;X<N.length;X++){let j=N[X],z=H.sliceFrom(j),G=z.uint16(),Y=z.uint16(),E=z.uint16Array(G-1),w=Array(E.length);for(let A=0;A<E.length;A++)w[A]=E[A];let F=X9(z,Y);V.push({glyphCount:G,inputSequence:w,lookupRecords:F})}q.push(V)}return{format:1,coverage:J,ruleSets:q}}function mN($){let Q=$.offset16(),Z=$.offset16(),K=$.uint16(),J=$.uint16Array(K),q=i($,Q),U=M6($,Z),W=[];for(let H=0;H<J.length;H++){let _=J[H];if(_===0){W.push(null);continue}let N=$.sliceFrom(_),V=N.uint16(),X=N.uint16Array(V),j=[];for(let z=0;z<X.length;z++){let G=X[z],Y=N.sliceFrom(G),E=Y.uint16(),w=Y.uint16(),F=Y.uint16Array(E-1),A=Array(F.length);for(let L=0;L<F.length;L++)A[L]=F[L];let B=X9(Y,w);j.push({glyphCount:E,inputClasses:A,lookupRecords:B})}W.push(j)}return{format:2,coverage:q,classDef:U,classRuleSets:W}}function gN($){let Q=$.uint16(),Z=$.uint16(),K=$.uint16Array(Q),J=[];for(let U=0;U<K.length;U++){let W=K[U];J.push(i($,W))}let q=X9($,Z);return{format:3,coverages:J,lookupRecords:q}}function N$($,Q){let Z=[];for(let K=0;K<Q.length;K++){let J=Q[K],q=$.sliceFrom(J);switch(q.uint16()){case 1:Z.push(uN(q));break;case 2:Z.push(xN(q));break;case 3:Z.push(fN(q));break}}return Z}function uN($){let Q=$.offset16(),Z=$.uint16(),K=$.uint16Array(Z),J=i($,Q),q=[];for(let U=0;U<K.length;U++){let W=K[U];if(W===0){q.push(null);continue}let H=$.sliceFrom(W),_=H.uint16(),N=H.uint16Array(_),V=[];for(let X=0;X<N.length;X++){let j=N[X],z=H.sliceFrom(j),G=z.uint16(),Y=z.uint16Array(G),E=Array(Y.length);for(let T=0;T<Y.length;T++)E[T]=Y[T];let w=z.uint16(),F=z.uint16Array(w-1),A=Array(F.length);for(let T=0;T<F.length;T++)A[T]=F[T];let B=z.uint16(),L=z.uint16Array(B),O=Array(L.length);for(let T=0;T<L.length;T++)O[T]=L[T];let M=z.uint16(),P=X9(z,M);V.push({backtrackSequence:E,inputSequence:A,lookaheadSequence:O,lookupRecords:P})}q.push(V)}return{format:1,coverage:J,chainRuleSets:q}}function xN($){let Q=$.offset16(),Z=$.offset16(),K=$.offset16(),J=$.offset16(),q=$.uint16(),U=$.uint16Array(q),W=i($,Q),H=M6($,Z),_=M6($,K),N=M6($,J),V=[];for(let X=0;X<U.length;X++){let j=U[X];if(j===0){V.push(null);continue}let z=$.sliceFrom(j),G=z.uint16(),Y=z.uint16Array(G),E=[];for(let w=0;w<Y.length;w++){let F=Y[w],A=z.sliceFrom(F),B=A.uint16(),L=A.uint16Array(B),O=Array(L.length);for(let R=0;R<L.length;R++)O[R]=L[R];let M=A.uint16(),P=A.uint16Array(M-1),T=Array(P.length);for(let R=0;R<P.length;R++)T[R]=P[R];let x=A.uint16(),I=A.uint16Array(x),f=Array(I.length);for(let R=0;R<I.length;R++)f[R]=I[R];let l=A.uint16(),C=X9(A,l);E.push({backtrackClasses:O,inputClasses:T,lookaheadClasses:f,lookupRecords:C})}V.push(E)}return{format:2,coverage:W,backtrackClassDef:H,inputClassDef:_,lookaheadClassDef:N,chainClassRuleSets:V}}function fN($){let Q=$.uint16(),Z=$.uint16Array(Q),K=$.uint16(),J=$.uint16Array(K),q=$.uint16(),U=$.uint16Array(q),W=$.uint16(),H=X9($,W),_=[];for(let X=0;X<Z.length;X++){let j=Z[X];_.push(i($,j))}let N=[];for(let X=0;X<J.length;X++){let j=J[X];N.push(i($,j))}let V=[];for(let X=0;X<U.length;X++){let j=U[X];V.push(i($,j))}return{format:3,backtrackCoverages:_,inputCoverages:N,lookaheadCoverages:V,lookupRecords:H}}function X9($,Q){let Z=[];for(let K=0;K<Q;K++)Z.push({sequenceIndex:$.uint16(),lookupListIndex:$.uint16()});return Z}function Cq($){let Q=$.uint16(),Z=$.uint16(),K=$.offset16(),J=$.offset16(),q=$.offset16();if(Q===1&&Z>=1)$.offset32();let U=s9($.sliceFrom(K)),W=a9($.sliceFrom(J)),H=$.sliceFrom(q),_=H.uint16(),N=H.uint16Array(_),V=[];for(let X=0;X<N.length;X++){let j=N[X],z=H.sliceFrom(j),G=lN(z,H,j);if(G)V.push(G)}return{version:{major:Q,minor:Z},scriptList:U,featureList:W,lookups:V}}function lN($,Q,Z){let K=$.uint16(),J=$.uint16(),q=$.uint16(),U=$.uint16Array(q),W=Array(U.length);for(let V=0;V<U.length;V++)W[V]=U[V];let H;if(J&y6.UseMarkFilteringSet)H=$.uint16();let _={flag:J,markFilteringSet:H},N=(V)=>{let X=new N6;for(let j=0;j<V.length;j++){let z=V[j];X.addCoverage(z.coverage)}return X};switch(K){case 1:{let V=Sq($,W);return{type:1,..._,subtables:V,digest:N(V)}}case 2:{let V=hq($,W);return{type:2,..._,subtables:V,digest:N(V)}}case 3:{let V=yq($,W);return{type:3,..._,subtables:V,digest:N(V)}}case 4:{let V=bq($,W);return{type:4,..._,subtables:V,digest:N(V)}}case 5:{let V=_$($,W),X=new N6;for(let j=0;j<V.length;j++){let z=V[j];if("coverage"in z&&z.coverage)X.addCoverage(z.coverage)}return{type:5,..._,subtables:V,digest:X}}case 6:{let V=N$($,W),X=new N6;for(let j=0;j<V.length;j++){let z=V[j];if("coverage"in z&&z.coverage)X.addCoverage(z.coverage);else if("inputCoverages"in z&&z.inputCoverages?.[0])X.addCoverage(z.inputCoverages[0])}return{type:6,..._,subtables:V,digest:X}}case 7:return dN($,W,_);case 8:{let V=mq($,W);return{type:8,..._,subtables:V,digest:N(V)}}default:return null}}function Sq($,Q){let Z=[];for(let K=0;K<Q.length;K++){let J=Q[K],q=$.sliceFrom(J),U=q.uint16();if(U===1){let W=q.offset16(),H=q.int16(),_=i(q,W);Z.push({format:1,coverage:_,deltaGlyphId:H})}else if(U===2){let W=q.offset16(),H=q.uint16(),_=q.uint16Array(H),N=Array(_.length);for(let X=0;X<_.length;X++)N[X]=_[X];let V=i(q,W);Z.push({format:2,coverage:V,substituteGlyphIds:N})}}return Z}function hq($,Q){let Z=[];for(let K=0;K<Q.length;K++){let J=Q[K],q=$.sliceFrom(J);if(q.uint16()===1){let W=q.offset16(),H=q.uint16(),_=q.uint16Array(H),N=i(q,W),V=[];for(let X=0;X<_.length;X++){let j=_[X],z=q.sliceFrom(j),G=z.uint16(),Y=z.uint16Array(G),E=Array(Y.length);for(let w=0;w<Y.length;w++)E[w]=Y[w];V.push(E)}Z.push({coverage:N,sequences:V})}}return Z}function yq($,Q){let Z=[];for(let K=0;K<Q.length;K++){let J=Q[K],q=$.sliceFrom(J);if(q.uint16()===1){let W=q.offset16(),H=q.uint16(),_=q.uint16Array(H),N=i(q,W),V=[];for(let X=0;X<_.length;X++){let j=_[X],z=q.sliceFrom(j),G=z.uint16(),Y=z.uint16Array(G),E=Array(Y.length);for(let w=0;w<Y.length;w++)E[w]=Y[w];V.push(E)}Z.push({coverage:N,alternateSets:V})}}return Z}function bq($,Q){let Z=[];for(let K=0;K<Q.length;K++){let J=Q[K],q=$.sliceFrom(J);if(q.uint16()===1){let W=q.offset16(),H=q.uint16(),_=q.uint16Array(H),N=i(q,W),V=[];for(let X=0;X<_.length;X++){let j=_[X],z=q.sliceFrom(j),G=z.uint16(),Y=z.uint16Array(G),E=[];for(let w=0;w<Y.length;w++){let F=Y[w],A=z.sliceFrom(F),B=A.uint16(),L=A.uint16(),O=A.uint16Array(L-1),M=Array(O.length);for(let P=0;P<O.length;P++)M[P]=O[P];E.push({ligatureGlyph:B,componentGlyphIds:M})}V.push({ligatures:E})}Z.push({coverage:N,ligatureSets:V})}}return Z}function mq($,Q){let Z=[];for(let K=0;K<Q.length;K++){let J=Q[K],q=$.sliceFrom(J);if(q.uint16()===1){let W=q.offset16(),H=q.uint16(),_=q.uint16Array(H),N=q.uint16(),V=q.uint16Array(N),X=q.uint16(),j=q.uint16Array(X),z=Array(j.length);for(let w=0;w<j.length;w++)z[w]=j[w];let G=i(q,W),Y=[];for(let w=0;w<_.length;w++){let F=_[w];Y.push(i(q,F))}let E=[];for(let w=0;w<V.length;w++){let F=V[w];E.push(i(q,F))}Z.push({coverage:G,backtrackCoverages:Y,lookaheadCoverages:E,substituteGlyphIds:z})}}return Z}function dN($,Q,Z){if(Q.length===0)return null;let K=[];for(let W=0;W<Q.length;W++){let H=Q[W],_=$.sliceFrom(H);if(_.uint16()!==1)continue;let V=_.uint16(),X=_.uint32();K.push({type:V,reader:_.sliceFrom(X)})}if(K.length===0)return null;let J=K[0]?.type,q=K.map((W,H)=>0),U=(W)=>{let H=new N6;for(let _=0;_<W.length;_++){let N=W[_];H.addCoverage(N.coverage)}return H};switch(J){case 1:{let W=[];for(let H=0;H<K.length;H++){let _=K[H];W.push(...Sq(_.reader,[0]))}return{type:1,...Z,subtables:W,digest:U(W)}}case 2:{let W=[];for(let H=0;H<K.length;H++){let _=K[H];W.push(...hq(_.reader,[0]))}return{type:2,...Z,subtables:W,digest:U(W)}}case 3:{let W=[];for(let H=0;H<K.length;H++){let _=K[H];W.push(...yq(_.reader,[0]))}return{type:3,...Z,subtables:W,digest:U(W)}}case 4:{let W=[];for(let H=0;H<K.length;H++){let _=K[H];W.push(...bq(_.reader,[0]))}return{type:4,...Z,subtables:W,digest:U(W)}}case 5:{let W=[];for(let _=0;_<K.length;_++){let N=K[_];W.push(..._$(N.reader,[0]))}let H=new N6;for(let _=0;_<W.length;_++){let N=W[_];if("coverage"in N&&N.coverage)H.addCoverage(N.coverage)}return{type:5,...Z,subtables:W,digest:H}}case 6:{let W=[];for(let _=0;_<K.length;_++){let N=K[_];W.push(...N$(N.reader,[0]))}let H=new N6;for(let _=0;_<W.length;_++){let N=W[_];if("coverage"in N&&N.coverage)H.addCoverage(N.coverage);else if("inputCoverages"in N&&N.inputCoverages?.[0])H.addCoverage(N.inputCoverages[0])}return{type:6,...Z,subtables:W,digest:H}}case 8:{let W=[];for(let H=0;H<K.length;H++){let _=K[H];W.push(...mq(_.reader,[0]))}return{type:8,...Z,subtables:W,digest:U(W)}}default:return null}}function e9($,Q){for(let Z=0;Z<$.subtables.length;Z++){let K=$.subtables[Z],J=K.coverage.get(Q);if(J===null)continue;if(K.format===1&&K.deltaGlyphId!==void 0)return Q+K.deltaGlyphId&65535;if(K.format===2&&K.substituteGlyphIds)return K.substituteGlyphIds[J]??null}return null}function gq($,Q,Z,K){let J=Q[K];if(J===void 0)return null;for(let q=0;q<$.subtables.length;q++){let U=$.subtables[q],W=U.coverage.get(J);if(W===null)continue;let H=U.ligatureSets[W];if(!H)continue;for(let _=0;_<H.ligatures.length;_++){let N=H.ligatures[_],V=N.componentGlyphIds.length;if(K+1+V>Z)continue;let X=!0;for(let j=0;j<V;j++)if(Q[K+1+j]!==N.componentGlyphIds[j]){X=!1;break}if(X)return{ligatureGlyph:N.ligatureGlyph,consumed:1+V}}}return null}function uq($){let Q=$.uint16(),Z=$.uint16(),K=$.fixed(),J=$.uint32(),q=$.uint32();if(q!==1594834165)throw Error(`Invalid head table magic number: 0x${q.toString(16)}`);let U=$.uint16(),W=$.uint16(),H=$.longDateTime(),_=$.longDateTime(),N=$.fword(),V=$.fword(),X=$.fword(),j=$.fword(),z=$.uint16(),G=$.uint16(),Y=$.int16(),E=$.int16(),w=$.int16();return{majorVersion:Q,minorVersion:Z,fontRevision:K,checksumAdjustment:J,magicNumber:q,flags:U,unitsPerEm:W,created:H,modified:_,xMin:N,yMin:V,xMax:X,yMax:j,macStyle:z,lowestRecPPEM:G,fontDirectionHint:Y,indexToLocFormat:E,glyphDataFormat:w}}function xq($){return{majorVersion:$.uint16(),minorVersion:$.uint16(),ascender:$.fword(),descender:$.fword(),lineGap:$.fword(),advanceWidthMax:$.ufword(),minLeftSideBearing:$.fword(),minRightSideBearing:$.fword(),xMaxExtent:$.fword(),caretSlopeRise:$.int16(),caretSlopeRun:$.int16(),caretOffset:$.int16(),reserved1:$.int16(),reserved2:$.int16(),reserved3:$.int16(),reserved4:$.int16(),metricDataFormat:$.int16(),numberOfHMetrics:$.uint16()}}function V$($){return{instructions:$.bytes($.remaining)}}function X$($){return{instructions:$.bytes($.remaining)}}function j$($){let Q=Math.floor($.remaining/2),Z=new Int16Array(Q);for(let K=0;K<Q;K++)Z[K]=$.int16();return{values:Z}}function fq($,Q,Z){let K=Array(Q);for(let U=0;U<Q;U++)K[U]={advanceWidth:$.ufword(),lsb:$.fword()};let J=Z-Q,q=Array(J);for(let U=0;U<J;U++)q[U]=$.fword();return{hMetrics:K,leftSideBearings:q}}function lq($,Q){if(Q<$.hMetrics.length)return $.hMetrics[Q]?.advanceWidth;return $.hMetrics[$.hMetrics.length-1]?.advanceWidth}function dq($,Q){if(Q<$.hMetrics.length)return $.hMetrics[Q]?.lsb;let Z=Q-$.hMetrics.length;return $.leftSideBearings[Z]??0}var nN={ShrinkGpos:0,DisableGpos:1,ShrinkGsub:2,DisableGsub:3,EnableGpos:4,EnableGsub:5,MaxExtendGpos:6,MaxExtendGsub:7};function B8($,Q){if(Q===0)return null;let Z=$.sliceFrom(Q),K=Z.uint16(),J=[];for(let q=0;q<K;q++)J.push(Z.uint16());return{lookupIndices:J}}function nq($,Q){if(Q===0)return null;let Z=$.sliceFrom(Q),K=Z.uint16(),J=[];for(let q=0;q<K;q++)J.push(Z.uint16());return{lookupIndices:J}}function pN($,Q){let Z=$.sliceFrom(Q),K=Z.uint16(),J=Z.uint16(),q=Z.uint16(),U=Z.uint16(),W=Z.uint16(),H=Z.uint16(),_=Z.uint16(),N=Z.uint16(),V=Z.uint16(),X=Z.uint16();return{shrinkageEnableGsub:B8($,Q+K),shrinkageDisableGsub:B8($,Q+J),shrinkageEnableGpos:B8($,Q+q),shrinkageDisableGpos:B8($,Q+U),shrinkageJstfMax:nq($,Q+W),extensionEnableGsub:B8($,Q+H),extensionDisableGsub:B8($,Q+_),extensionEnableGpos:B8($,Q+N),extensionDisableGpos:B8($,Q+V),extensionJstfMax:nq($,Q+X)}}function pq($,Q){let Z=$.sliceFrom(Q),K=Z.uint16(),J=[];for(let U=0;U<K;U++)J.push(Z.uint16());let q=[];for(let U=0;U<J.length;U++){let W=J[U];q.push(pN($,Q+W))}return{priorities:q}}function oN($,Q){let Z=$.sliceFrom(Q),K=Z.uint16(),J=Z.uint16(),q=Z.uint16(),U=[];for(let N=0;N<q;N++){let V=Z.uint32(),X=Z.uint16();U.push({tag:V,offset:X})}let W=[];if(K!==0){let N=$.sliceFrom(Q+K),V=N.uint16();for(let X=0;X<V;X++)W.push(N.uint16())}let H=J!==0?pq($,Q+J):null,_=new Map;for(let N=0;N<U.length;N++){let{tag:V,offset:X}=U[N];_.set(V,pq($,Q+X))}return{extenderGlyphs:W,defaultLangSys:H,langSysRecords:_}}function z$($){let Q=$.uint16(),Z=$.uint16(),K=$.uint16(),J=[];for(let U=0;U<K;U++){let W=$.uint32(),H=$.uint16();J.push({tag:W,offset:H})}let q=[];for(let U=0;U<J.length;U++){let{tag:W,offset:H}=J[U],_=oN($,H);q.push({scriptTag:W,..._})}return{majorVersion:Q,minorVersion:Z,scripts:q}}function G$($,Q){return $.scripts.find((K)=>K.scriptTag===Q)?.extenderGlyphs??[]}function Y$($,Q,Z){let K=$.scripts.find((J)=>J.scriptTag===Q);if(!K)return[];if(Z!==void 0){let J=K.langSysRecords.get(Z);if(J)return J.priorities}return K.defaultLangSys?.priorities??[]}function E$($){return{enableGsub:$.shrinkageEnableGsub?.lookupIndices??[],disableGsub:$.shrinkageDisableGsub?.lookupIndices??[],enableGpos:$.shrinkageEnableGpos?.lookupIndices??[],disableGpos:$.shrinkageDisableGpos?.lookupIndices??[],maxLookups:$.shrinkageJstfMax?.lookupIndices??[]}}function w$($){return{enableGsub:$.extensionEnableGsub?.lookupIndices??[],disableGsub:$.extensionDisableGsub?.lookupIndices??[],enableGpos:$.extensionEnableGpos?.lookupIndices??[],disableGpos:$.extensionDisableGpos?.lookupIndices??[],maxLookups:$.extensionJstfMax?.lookupIndices??[]}}function oq($){let Q=$.uint16(),Z=[];if(Q===0){let K=$.uint16();for(let J=0;J<K;J++){let q=cN($);if(q)Z.push(q)}}else if(Q===1){$.skip(2);let K=$.uint32();for(let J=0;J<K;J++){let q=iN($);if(q)Z.push(q)}}return{version:Q,subtables:Z}}function cN($){let Q=$.uint16(),Z=$.uint16(),K=$.uint16(),J={horizontal:(K&1)!==0,minimum:(K&2)!==0,crossStream:(K&4)!==0,override:(K&8)!==0},q=K>>8&255;if(q===0)return cq($,J);else if(q===2)return iq($,J,Z-6);return $.skip(Z-6),null}function iN($){let Q=$.uint32(),Z=$.uint16(),K=$.uint16(),J={horizontal:(Z&32768)===0,minimum:!1,crossStream:(Z&16384)!==0,override:(Z&8192)!==0},q=Z&255;if(q===0)return cq($,J);else if(q===2)return iq($,J,Q-8);return $.skip(Q-8),null}function cq($,Q){let Z=$.uint16();$.skip(6);let K=new Map;for(let J=0;J<Z;J++){let q=$.uint16(),U=$.uint16(),W=$.int16(),H=q<<16|U;K.set(H,W)}return{format:0,coverage:Q,pairs:K}}function iq($,Q,Z){let K=$.offset,J=$.uint16(),q=$.uint16(),U=$.uint16(),W=$.uint16(),H=new Map;$.seek(K+q);let _=$.uint16(),N=$.uint16();for(let E=0;E<N;E++){let w=$.uint16();if(w!==0)H.set(_+E,w)}let V=new Map;$.seek(K+U);let X=$.uint16(),j=$.uint16();for(let E=0;E<j;E++){let w=$.uint16();if(w!==0)V.set(X+E,w)}$.seek(K+W);let z=J>0?Math.floor(Z/J):0,G=J/2,Y=[];for(let E=0;E<z;E++){let w=[];for(let F=0;F<G;F++)w.push($.int16());Y.push(w)}return{format:2,coverage:Q,rowWidth:J,leftClassTable:H,rightClassTable:V,kerningValues:Y}}function A$($,Q,Z){let K=0;for(let J=0;J<$.subtables.length;J++){let q=$.subtables[J];if(!q.coverage.horizontal)continue;if(q.format===0){let U=Q<<16|Z,W=q.pairs.get(U);if(W!==void 0)if(q.coverage.override)K=W;else K+=W}else if(q.format===2){let U=q.leftClassTable.get(Q)??0,W=q.rightClassTable.get(Z)??0;if(U>0&&W>0){let H=Math.floor(U/2),_=Math.floor(W/2),N=q.kerningValues[H];if(N){let V=N[_];if(V!==void 0)if(q.coverage.override)K=V;else K+=V}}}}return K}function aq($){let Q=$.uint16();$.skip(2);let Z=$.uint32(),K=[];for(let J=0;J<Z;J++){let q=sN($);if(q)K.push(q)}return{version:Q,nTables:Z,subtables:K}}function sN($){let Q=$.uint32(),Z=$.uint32(),K=$.uint16();$.skip(2);let J=Z&255,q={vertical:(Z&2147483648)!==0,crossStream:(Z&1073741824)!==0,variation:(Z&536870912)!==0},U={length:Q,coverage:q,tupleCount:K},W=$.offset+Q-12,H=null;switch(J){case 0:H=aN($,U);break;case 1:H=rN($,U);break;case 2:H=tN($,U);break;case 6:H=eN($,U);break}return $.seek(W),H}function aN($,Q){let Z=$.uint32();$.skip(12);let K=[];for(let J=0;J<Z;J++)K.push({left:$.uint16(),right:$.uint16(),value:$.int16()}),$.skip(2);return{...Q,format:0,nPairs:Z,pairs:K}}function rN($,Q){let Z={nClasses:$.uint32(),classTableOffset:$.offset32(),stateArrayOffset:$.offset32(),entryTableOffset:$.offset32(),valueTableOffset:$.offset32()};return{...Q,format:1,stateHeader:Z}}function tN($,Q){let Z=$.uint16();$.skip(2);let K=$.offset32(),J=$.offset32(),q=$.offset32(),U=sq($.sliceFrom(K)),W=sq($.sliceFrom(J)),H=$.sliceFrom(q),_=U.nGlyphs>0?Math.max(...[...U.classes])+1:0,N=Z/2,V=new Int16Array(_*N);for(let X=0;X<V.length;X++)V[X]=H.int16();return{...Q,format:2,rowWidth:Z,leftClassTable:U,rightClassTable:W,kerningArray:V}}function sq($){let Q=$.uint16(),Z=$.uint16(),K=new Uint8Array(Z);for(let J=0;J<Z;J++)K[J]=$.uint8();return{firstGlyph:Q,nGlyphs:Z,classes:K}}function eN($,Q){let Z=$.uint32(),K=$.uint16(),J=$.uint16(),q=$.offset32(),U=$.offset32(),W=$.offset32(),H=$.offset32();return{...Q,format:6,flags:Z,rowCount:K,columnCount:J,rowIndexTableOffset:q,columnIndexTableOffset:U,kerningArrayOffset:W,kerningVectorOffset:H}}function $V($,Q,Z){for(let K=0;K<$.subtables.length;K++){let J=$.subtables[K];if(J.coverage.vertical)continue;switch(J.format){case 0:{let q=J.pairs,U=0,W=q.length-1;while(U<=W){let H=U+W>>1,_=q[H];if(!_)break;let N=_.left<<16|_.right,V=Q<<16|Z;if(N===V)return _.value;else if(N<V)U=H+1;else W=H-1}break}case 2:{let{leftClassTable:q,rightClassTable:U}=J;if(Q<q.firstGlyph||Q>=q.firstGlyph+q.nGlyphs)continue;if(Z<U.firstGlyph||Z>=U.firstGlyph+U.nGlyphs)continue;let W=q.classes[Q-q.firstGlyph],H=U.classes[Z-U.firstGlyph];if(W===void 0||H===void 0)continue;let _=J.rowWidth/2,N=W*_+H;if(N<J.kerningArray.length){let V=J.kerningArray[N];if(V!==void 0&&V!==0)return V}break}}}return 0}function o($,Q){let Z=$.int16(),K=$.uint16();return{value:Z,device:f8(Q,K)}}function QV($){let Q=$,Z=$.int16(),K=$.int16(),J=$.uint16(),q=$.uint16();return{scriptPercentScaleDown:Z,scriptScriptPercentScaleDown:K,delimitedSubFormulaMinHeight:J,displayOperatorMinHeight:q,mathLeading:o($,Q),axisHeight:o($,Q),accentBaseHeight:o($,Q),flattenedAccentBaseHeight:o($,Q),subscriptShiftDown:o($,Q),subscriptTopMax:o($,Q),subscriptBaselineDropMin:o($,Q),superscriptShiftUp:o($,Q),superscriptShiftUpCramped:o($,Q),superscriptBottomMin:o($,Q),superscriptBaselineDropMax:o($,Q),subSuperscriptGapMin:o($,Q),superscriptBottomMaxWithSubscript:o($,Q),spaceAfterScript:o($,Q),upperLimitGapMin:o($,Q),upperLimitBaselineRiseMin:o($,Q),lowerLimitGapMin:o($,Q),lowerLimitBaselineDropMin:o($,Q),stackTopShiftUp:o($,Q),stackTopDisplayStyleShiftUp:o($,Q),stackBottomShiftDown:o($,Q),stackBottomDisplayStyleShiftDown:o($,Q),stackGapMin:o($,Q),stackDisplayStyleGapMin:o($,Q),stretchStackTopShiftUp:o($,Q),stretchStackBottomShiftDown:o($,Q),stretchStackGapAboveMin:o($,Q),stretchStackGapBelowMin:o($,Q),fractionNumeratorShiftUp:o($,Q),fractionNumeratorDisplayStyleShiftUp:o($,Q),fractionDenominatorShiftDown:o($,Q),fractionDenominatorDisplayStyleShiftDown:o($,Q),fractionNumeratorGapMin:o($,Q),fractionNumDisplayStyleGapMin:o($,Q),fractionRuleThickness:o($,Q),fractionDenominatorGapMin:o($,Q),fractionDenomDisplayStyleGapMin:o($,Q),skewedFractionHorizontalGap:o($,Q),skewedFractionVerticalGap:o($,Q),overbarVerticalGap:o($,Q),overbarRuleThickness:o($,Q),overbarExtraAscender:o($,Q),underbarVerticalGap:o($,Q),underbarRuleThickness:o($,Q),underbarExtraDescender:o($,Q),radicalVerticalGap:o($,Q),radicalDisplayStyleVerticalGap:o($,Q),radicalRuleThickness:o($,Q),radicalExtraAscender:o($,Q),radicalKernBeforeDegree:o($,Q),radicalKernAfterDegree:o($,Q),radicalDegreeBottomRaisePercent:$.int16()}}function ZV($){let Q=$.uint16(),Z=$.uint16(),K=[];for(let q=0;q<Z;q++)K.push(o($,$));return{coverage:i($,Q),values:K}}function KV($){let Q=$.uint16(),Z=$.uint16(),K=[];for(let q=0;q<Z;q++)K.push(o($,$));return{coverage:i($,Q),values:K}}function r0($,Q){let Z=$.sliceFrom(Q),K=Z.uint16(),J=[];for(let U=0;U<K;U++)J.push(o(Z,Z));let q=[];for(let U=0;U<K+1;U++)q.push(o(Z,Z));return{correctionHeights:J,kernValues:q}}function JV($){let Q=$.uint16(),Z=$.uint16(),K=[];for(let U=0;U<Z;U++)K.push({topRightOffset:$.uint16(),topLeftOffset:$.uint16(),bottomRightOffset:$.uint16(),bottomLeftOffset:$.uint16()});let J=i($,Q),q=K.map((U)=>({topRight:U.topRightOffset!==0?r0($,U.topRightOffset):null,topLeft:U.topLeftOffset!==0?r0($,U.topLeftOffset):null,bottomRight:U.bottomRightOffset!==0?r0($,U.bottomRightOffset):null,bottomLeft:U.bottomLeftOffset!==0?r0($,U.bottomLeftOffset):null}));return{coverage:J,kernInfo:q}}function qV($){let Q=$.uint16(),Z=$.uint16(),K=$.uint16(),J=$.uint16(),q=null;if(Q!==0)q=ZV($.sliceFrom(Q));let U=null;if(Z!==0)U=KV($.sliceFrom(Z));let W=null;if(K!==0)W={coverage:i($,K)};let H=null;if(J!==0)H=JV($.sliceFrom(J));return{italicsCorrection:q,topAccentAttachment:U,extendedShapeCoverage:W,kernInfo:H}}function UV($){let Q=o($,$),Z=$.uint16(),K=[];for(let J=0;J<Z;J++)K.push({glyphId:$.uint16(),startConnectorLength:$.uint16(),endConnectorLength:$.uint16(),fullAdvance:$.uint16(),partFlags:$.uint16()});return{italicsCorrection:Q,parts:K}}function rq($){let Q=$.uint16(),Z=$.uint16(),K=[];for(let q=0;q<Z;q++)K.push({variantGlyph:$.uint16(),advanceMeasurement:$.uint16()});let J=null;if(Q!==0)J=UV($.sliceFrom(Q));return{glyphAssembly:J,variants:K}}function WV($){let Q=$.uint16(),Z=$.uint16(),K=$.uint16(),J=$.uint16(),q=$.uint16(),U=[];for(let X=0;X<J;X++)U.push($.uint16());let W=[];for(let X=0;X<q;X++)W.push($.uint16());let H=Z!==0?i($,Z):null,_=K!==0?i($,K):null,N=U.map((X)=>rq($.sliceFrom(X))),V=W.map((X)=>rq($.sliceFrom(X)));return{minConnectorOverlap:Q,vertGlyphCoverage:H,horizGlyphCoverage:_,vertGlyphConstruction:N,horizGlyphConstruction:V}}function F$($){let Q=$.uint16(),Z=$.uint16(),K=$.uint16(),J=$.uint16(),q=$.uint16(),U=null;if(K!==0)U=QV($.sliceFrom(K));let W=null;if(J!==0)W=qV($.sliceFrom(J));let H=null;if(q!==0)H=WV($.sliceFrom(q));return{majorVersion:Q,minorVersion:Z,constants:U,glyphInfo:W,variants:H}}function HV($,Q){let Z=$.glyphInfo?.italicsCorrection;if(!Z)return null;let K=Z.coverage.get(Q);if(K===null)return null;return Z.values[K]??null}function _V($,Q){let Z=$.glyphInfo?.topAccentAttachment;if(!Z)return null;let K=Z.coverage.get(Q);if(K===null)return null;return Z.values[K]??null}function NV($,Q){let Z=$.glyphInfo?.extendedShapeCoverage;if(!Z)return!1;return Z.coverage.get(Q)!==null}function VV($,Q){let Z=$.variants;if(!Z?.vertGlyphCoverage)return null;let K=Z.vertGlyphCoverage.get(Q);if(K===null)return null;return Z.vertGlyphConstruction[K]?.variants??null}function XV($,Q){let Z=$.variants;if(!Z?.horizGlyphCoverage)return null;let K=Z.horizGlyphCoverage.get(Q);if(K===null)return null;return Z.horizGlyphConstruction[K]?.variants??null}function jV($,Q){let Z=$.variants;if(!Z?.vertGlyphCoverage)return null;let K=Z.vertGlyphCoverage.get(Q);if(K===null)return null;return Z.vertGlyphConstruction[K]?.glyphAssembly??null}function zV($,Q){let Z=$.variants;if(!Z?.horizGlyphCoverage)return null;let K=Z.horizGlyphCoverage.get(Q);if(K===null)return null;return Z.horizGlyphConstruction[K]?.glyphAssembly??null}function tq($){let Q=$.uint32(),Z=$.uint16();if(Q===20480)return{version:Q,numGlyphs:Z};if(Q===65536)return{version:Q,numGlyphs:Z,maxPoints:$.uint16(),maxContours:$.uint16(),maxCompositePoints:$.uint16(),maxCompositeContours:$.uint16(),maxZones:$.uint16(),maxTwilightPoints:$.uint16(),maxStorage:$.uint16(),maxFunctionDefs:$.uint16(),maxInstructionDefs:$.uint16(),maxStackElements:$.uint16(),maxSizeOfInstructions:$.uint16(),maxComponentElements:$.uint16(),maxComponentDepth:$.uint16()};throw Error(`Unknown maxp version: 0x${Q.toString(16)}`)}var L$;((q)=>{q[q.Rearrangement=0]="Rearrangement";q[q.Contextual=1]="Contextual";q[q.Ligature=2]="Ligature";q[q.NonContextual=4]="NonContextual";q[q.Insertion=5]="Insertion"})(L$||={});function eq($){let Q=$.uint16();if($.skip(2),Q<2)return{version:Q,chains:[]};let Z=$.uint32(),K=[];for(let J=0;J<Z;J++){let q=GV($);K.push(q)}return{version:Q,chains:K}}function GV($){let Q=$.uint32(),Z=$.uint32(),K=$.uint32(),J=$.uint32(),q=[];for(let W=0;W<K;W++)q.push({featureType:$.uint16(),featureSetting:$.uint16(),enableFlags:$.uint32(),disableFlags:$.uint32()});let U=[];for(let W=0;W<J;W++){let H=YV($);if(H)U.push(H)}return{defaultFlags:Q,features:q,subtables:U}}function YV($){let Q=$.uint32(),Z=$.uint32(),K=$.uint32(),J=Z&255,q={vertical:(Z&2147483648)!==0,descending:(Z&1073741824)!==0,logical:(Z&268435456)!==0},W=$.offset+Q-12,H=null;switch(J){case 0:H=FV($,q,K);break;case 1:H=wV($,q,K);break;case 2:H=AV($,q,K);break;case 4:H=EV($,q,K);break;case 5:H=LV($,q,K);break}return $.seek(W),H}function EV($,Q,Z){let K=DV($);return{type:4,coverage:Q,subFeatureFlags:Z,lookupTable:K}}function wV($,Q,Z){let K=$.offset,J=$.uint32(),q=$.offset32(),U=$.offset32(),W=$.offset32(),H=$.offset32(),_=t0($.sliceFrom(K+q));return{type:1,coverage:Q,subFeatureFlags:Z,stateTable:{nClasses:J,classTable:_,stateArray:[]},substitutionTable:[]}}function AV($,Q,Z){let K=$.offset,J=$.uint32(),q=$.offset32(),U=$.offset32(),W=$.offset32(),H=$.offset32(),_=$.offset32(),N=$.offset32(),V=t0($.sliceFrom(K+q));return{type:2,coverage:Q,subFeatureFlags:Z,stateTable:{nClasses:J,classTable:V,stateArray:[]},ligatureActions:[],components:[],ligatures:[]}}function FV($,Q,Z){let K=$.offset,J=$.uint32(),q=$.offset32(),U=$.offset32(),W=$.offset32(),H=t0($.sliceFrom(K+q)),_=$.sliceFrom(K+U),N=$.sliceFrom(K+W),V=[],X=256;for(let G=0;G<256;G++)V.push({newState:N.uint16(),flags:N.uint16()});let j=[],z=Math.min(256,Math.ceil((W-U)/(J*2)));for(let G=0;G<z;G++){let Y=[];for(let E=0;E<J;E++){let w=_.uint16();Y.push(V[w]??{newState:0,flags:0})}j.push(Y)}return{type:0,coverage:Q,subFeatureFlags:Z,stateTable:{nClasses:J,classTable:H,stateArray:j}}}function LV($,Q,Z){let K=$.offset,J=$.uint32(),q=$.offset32(),U=$.offset32(),W=$.offset32(),H=$.offset32(),_=t0($.sliceFrom(K+q)),N=$.sliceFrom(K+H),V=[],X=1024;for(let F=0;F<1024;F++)try{V.push(N.uint16())}catch{break}let j=$.sliceFrom(K+W),z=[],G=256;for(let F=0;F<G;F++)z.push({newState:j.uint16(),flags:j.uint16(),currentInsertIndex:j.uint16(),markedInsertIndex:j.uint16()});let Y=$.sliceFrom(K+U),E=[],w=Math.min(256,Math.ceil((W-U)/(J*2)));for(let F=0;F<w;F++){let A=[];for(let B=0;B<J;B++){let L=Y.uint16();A.push(z[L]??{newState:0,flags:0,currentInsertIndex:65535,markedInsertIndex:65535})}E.push(A)}return{type:5,coverage:Q,subFeatureFlags:Z,stateTable:{nClasses:J,classTable:_,stateArray:E},insertionGlyphs:V}}function DV($){let Q=$.uint16(),Z=new Map;switch(Q){case 0:break;case 2:{let K=$.uint16(),J=$.uint16();$.skip(6);for(let q=0;q<J;q++){let U=$.uint16(),W=$.uint16(),H=$.uint16();for(let _=W;_<=U;_++)Z.set(_,H)}break}case 4:{let K=$.uint16(),J=$.uint16();$.skip(6);for(let q=0;q<J;q++){let U=$.uint16(),W=$.uint16(),H=$.uint16()}break}case 6:{let K=$.uint16(),J=$.uint16();$.skip(6);for(let q=0;q<J;q++){let U=$.uint16(),W=$.uint16();Z.set(U,W)}break}case 8:{let K=$.uint16(),J=$.uint16();for(let q=0;q<J;q++){let U=$.uint16();if(U!==0)Z.set(K+q,U)}break}}return{format:Q,mapping:Z}}function t0($){let Q=$.uint16(),Z=[];if(Q===2){let K=$.uint16(),J=$.uint16();$.skip(6);let q=[];for(let W=0;W<J;W++)q.push({last:$.uint16(),first:$.uint16(),classValue:$.uint16()});let U=Math.max(...q.map((W)=>W.last),0);for(let W=0;W<=U;W++){let H=q.find((_)=>W>=_.first&&W<=_.last);Z[W]=H?.classValue??1}}return{format:Q,classArray:Z}}function D$($,Q){return $.lookupTable.mapping.get(Q)??null}var $0={hasc:k("hasc"),hdsc:k("hdsc"),hlgp:k("hlgp"),hcla:k("hcla"),hcld:k("hcld"),hcof:k("hcof"),hcrn:k("hcrn"),hcrs:k("hcrs"),vasc:k("vasc"),vdsc:k("vdsc"),vlgp:k("vlgp"),vcof:k("vcof"),vcrn:k("vcrn"),vcrs:k("vcrs"),xhgt:k("xhgt"),cpht:k("cpht"),sbxs:k("sbxs"),sbys:k("sbys"),sbxo:k("sbxo"),sbyo:k("sbyo"),spxs:k("spxs"),spys:k("spys"),spxo:k("spxo"),spyo:k("spyo"),strs:k("strs"),stro:k("stro"),undo:k("undo"),unds:k("unds"),gsp0:k("gsp0"),gsp1:k("gsp1"),gsp2:k("gsp2"),gsp3:k("gsp3")};function $U($){let Q=$.uint16(),Z=$.uint16();$.uint16();let K=$.uint16(),J=$.uint16(),q=$.offset16(),U=[];for(let H=0;H<J;H++)if(U.push({valueTag:$.tag(),deltaSetOuterIndex:$.uint16(),deltaSetInnerIndex:$.uint16()}),K>8)$.skip(K-8);let W=BV($.sliceFrom(q));return{majorVersion:Q,minorVersion:Z,itemVariationStore:W,valueRecords:U}}function BV($){let Q=$.uint16(),Z=$.offset32(),K=$.uint16(),J=[];for(let N=0;N<K;N++)J.push($.offset32());let q=$.sliceFrom(Z),U=q.uint16(),W=q.uint16(),H=[];for(let N=0;N<W;N++){let V=[];for(let X=0;X<U;X++)V.push({startCoord:q.f2dot14(),peakCoord:q.f2dot14(),endCoord:q.f2dot14()});H.push({regionAxes:V})}let _=[];for(let N=0;N<J.length;N++){let V=J[N],X=$.sliceFrom(V),j=X.uint16(),z=X.uint16(),G=X.uint16(),Y=[];for(let B=0;B<G;B++)Y.push(X.uint16());let E=(z&32768)!==0,w=z&32767,F=G-w,A=[];for(let B=0;B<j;B++){let L=[];for(let O=0;O<w;O++)if(E)L.push(X.int32());else L.push(X.int16());for(let O=0;O<F;O++)if(E)L.push(X.int16());else L.push(X.int8());A.push(L)}_.push({itemCount:j,regionIndexes:Y,deltaSets:A})}return{format:Q,variationRegions:H,itemVariationData:_}}function Q0($,Q,Z){let K=$.valueRecords.find((_)=>_.valueTag===Q);if(!K)return 0;let{deltaSetOuterIndex:J,deltaSetInnerIndex:q}=K,U=$.itemVariationStore.itemVariationData[J];if(!U||q>=U.itemCount)return 0;let W=U.deltaSets[q];if(!W)return 0;let H=0;for(let _=0;_<U.regionIndexes.length;_++){let N=U.regionIndexes[_],V=$.itemVariationStore.variationRegions[N];if(!V)continue;let X=n9(V,Z),j=W[_]??0;H+=X*j}return Math.round(H)}function MV($,Q){return Q0($,$0.hasc,Q)}function RV($,Q){return Q0($,$0.hdsc,Q)}function TV($,Q){return Q0($,$0.xhgt,Q)}function OV($,Q){return Q0($,$0.cpht,Q)}var M8={Copyright:0,FontFamily:1,FontSubfamily:2,UniqueID:3,FullName:4,Version:5,PostScriptName:6,Trademark:7,Manufacturer:8,Designer:9,Description:10,ManufacturerURL:11,DesignerURL:12,License:13,LicenseURL:14,Reserved:15,TypographicFamily:16,TypographicSubfamily:17,CompatibleFullName:18,SampleText:19,PostScriptCIDFindfontName:20,WWSFamily:21,WWSSubfamily:22,LightBackgroundPalette:23,DarkBackgroundPalette:24,VariationsPostScriptNamePrefix:25},j9={Unicode:0,Macintosh:1,Reserved:2,Windows:3},PV={Symbol:0,UnicodeBMP:1,ShiftJIS:2,PRC:3,Big5:4,Wansung:5,Johab:6,UnicodeFullRepertoire:10};function B$($){let Q=$.uint16(),Z=$.uint16(),K=$.uint16(),J=[],q=[];for(let U=0;U<Z;U++)q.push({platformId:$.uint16(),encodingId:$.uint16(),languageId:$.uint16(),nameId:$.uint16(),length:$.uint16(),offset:$.uint16()});for(let U=0;U<q.length;U++){let W=q[U],H=$.sliceFrom(K+W.offset),_=vV(H,W.length,W.platformId,W.encodingId);if(_!==null)J.push({platformId:W.platformId,encodingId:W.encodingId,languageId:W.languageId,nameId:W.nameId,value:_})}return{format:Q,records:J}}function vV($,Q,Z,K){if(Z===j9.Unicode||Z===j9.Windows&&(K===1||K===10)){let J=[];for(let q=0;q<Q;q+=2){let U=$.uint16();J.push(String.fromCharCode(U))}return J.join("")}if(Z===j9.Macintosh&&K===0){let J=[];for(let q=0;q<Q;q++)J.push($.uint8());return String.fromCharCode(...J)}return null}function R8($,Q,Z){for(let K=0;K<$.records.length;K++){let J=$.records[K];if(J.nameId!==Q)continue;if(J.platformId===j9.Windows&&J.encodingId===1){if(Z===void 0||J.languageId===Z)return J.value}}for(let K=0;K<$.records.length;K++){let J=$.records[K];if(J.nameId!==Q)continue;if(J.platformId===j9.Unicode){if(Z===void 0||J.languageId===Z)return J.value}}for(let K=0;K<$.records.length;K++){let J=$.records[K];if(J.nameId!==Q)continue;if(Z===void 0||J.languageId===Z)return J.value}return null}function IV($){return R8($,M8.TypographicFamily)??R8($,M8.FontFamily)}function kV($){return R8($,M8.TypographicSubfamily)??R8($,M8.FontSubfamily)}function CV($){return R8($,M8.FullName)}function SV($){return R8($,M8.PostScriptName)}function hV($){return R8($,M8.Version)}var yV={Thin:100,ExtraLight:200,Light:300,Normal:400,Medium:500,SemiBold:600,Bold:700,ExtraBold:800,Black:900},bV={UltraCondensed:1,ExtraCondensed:2,Condensed:3,SemiCondensed:4,Normal:5,SemiExpanded:6,Expanded:7,ExtraExpanded:8,UltraExpanded:9},$1={Italic:1,Underscore:2,Negative:4,Outlined:8,Strikeout:16,Bold:32,Regular:64,UseTypoMetrics:128,WWS:256,Oblique:512},e0={InstallableEmbedding:0,RestrictedLicense:2,PreviewAndPrint:4,Editable:8,NoSubsetting:256,BitmapOnly:512};function M$($){let Q=$.uint16(),Z=$.int16(),K=$.uint16(),J=$.uint16(),q=$.uint16(),U=$.int16(),W=$.int16(),H=$.int16(),_=$.int16(),N=$.int16(),V=$.int16(),X=$.int16(),j=$.int16(),z=$.int16(),G=$.int16(),Y=$.int16(),E=[];for(let R=0;R<10;R++)E.push($.uint8());let w=$.uint32(),F=$.uint32(),A=$.uint32(),B=$.uint32(),L=String.fromCharCode($.uint8(),$.uint8(),$.uint8(),$.uint8()),O=$.uint16(),M=$.uint16(),P=$.uint16(),T=$.int16(),x=$.int16(),I=$.int16(),f=$.uint16(),l=$.uint16(),C={version:Q,xAvgCharWidth:Z,usWeightClass:K,usWidthClass:J,fsType:q,ySubscriptXSize:U,ySubscriptYSize:W,ySubscriptXOffset:H,ySubscriptYOffset:_,ySuperscriptXSize:N,ySuperscriptYSize:V,ySuperscriptXOffset:X,ySuperscriptYOffset:j,yStrikeoutSize:z,yStrikeoutPosition:G,sFamilyClass:Y,panose:E,ulUnicodeRange1:w,ulUnicodeRange2:F,ulUnicodeRange3:A,ulUnicodeRange4:B,achVendID:L,fsSelection:O,usFirstCharIndex:M,usLastCharIndex:P,sTypoAscender:T,sTypoDescender:x,sTypoLineGap:I,usWinAscent:f,usWinDescent:l};if(Q>=1)C.ulCodePageRange1=$.uint32(),C.ulCodePageRange2=$.uint32();if(Q>=2)C.sxHeight=$.int16(),C.sCapHeight=$.int16(),C.usDefaultChar=$.uint16(),C.usBreakChar=$.uint16(),C.usMaxContext=$.uint16();if(Q>=5)C.usLowerOpticalPointSize=$.uint16(),C.usUpperOpticalPointSize=$.uint16();return C}function mV($){return($.fsSelection&$1.Italic)!==0}function gV($){return($.fsSelection&$1.Bold)!==0}function uV($){return($.fsSelection&$1.UseTypoMetrics)!==0}function xV($){let Q=$.fsType;if((Q&e0.RestrictedLicense)!==0)return"restricted";if((Q&e0.PreviewAndPrint)!==0)return"preview";if((Q&e0.Editable)!==0)return"editable";return"installable"}var QU=[".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 R$($){let Q=$.uint16(),Z=$.uint16(),K=Q+Z/65536,J=$.fixed(),q=$.int16(),U=$.int16(),W=$.uint32(),H=$.uint32(),_=$.uint32(),N=$.uint32(),V=$.uint32(),X={version:K,italicAngle:J,underlinePosition:q,underlineThickness:U,isFixedPitch:W,minMemType42:H,maxMemType42:_,minMemType1:N,maxMemType1:V};if(K===2){let j=$.uint16(),z=[];for(let w=0;w<j;w++)z.push($.uint16());let G=[],Y=0;for(let w=0;w<z.length;w++){let F=z[w];if(F>=258&&F>Y)Y=F}let E=Y>=258?Y-257:0;for(let w=0;w<E;w++){let F=$.uint8(),A=[];for(let B=0;B<F;B++)A.push(String.fromCharCode($.uint8()));G.push(A.join(""))}X.numberOfGlyphs=j,X.glyphNameIndex=z,X.names=G}return X}function fV($,Q){if($.version===1){let Z=QU[Q];return Z!==void 0?Z:null}if($.version===2&&$.glyphNameIndex){let Z=$.glyphNameIndex[Q];if(Z===void 0)return null;if(Z<258)return QU[Z]??null;let K=Z-258;return $.names?.[K]??null}return null}function lV($){return $.isFixedPitch!==0}var T$={PNG:"png ",JPG:"jpg ",TIFF:"tiff",PDF:"pdf ",MASK:"mask",DUPE:"dupe"};function ZU($,Q){let Z=$.offset,K=$.uint16(),J=$.uint16(),q=$.uint32(),U=[];for(let H=0;H<q;H++)U.push($.uint32());let W=[];for(let H=0;H<U.length;H++){let _=U[H],N=dV($,Z+_,Q);W.push(N)}return{version:K,flags:J,strikes:W}}function dV($,Q,Z){let K=$.sliceFrom(Q),J=K.uint16(),q=K.uint16(),U=[];for(let H=0;H<=Z;H++)U.push(K.uint32());let W=new Map;for(let H=0;H<Z;H++){let _=U[H],N=U[H+1];if(_===void 0||N===void 0)continue;let V=N-_;if(V<=8)continue;let X=$.sliceFrom(Q+_),j=X.int16(),z=X.int16(),G=X.tagString(),Y=V-8,E=X.bytes(Y);W.set(H,{originOffsetX:j,originOffsetY:z,graphicType:G,data:E})}return{ppem:J,ppi:q,glyphData:W}}function nV($,Q,Z){let K=null,J=1/0;for(let q=0;q<$.strikes.length;q++){let U=$.strikes[q],W=Math.abs(U.ppem-Z);if(W<J)J=W,K=U}if(!K)return null;return K.glyphData.get(Q)??null}function KU($,Q){return $.strikes.find((Z)=>Z.ppem===Q)??null}function pV($){return $.strikes.map((Q)=>Q.ppem).sort((Q,Z)=>Q-Z)}function oV($,Q,Z){if(Z!==void 0)return KU($,Z)?.glyphData.has(Q)??!1;for(let K=0;K<$.strikes.length;K++)if($.strikes[K].glyphData.has(Q))return!0;return!1}function JU($,Q,Z){if(Z.graphicType!==T$.DUPE)return Z;if(Z.data.length<2)return null;let K=(Z.data[0]??0)<<8|(Z.data[1]??0),J=Q.glyphData.get(K);if(!J)return null;if(J.graphicType===T$.DUPE)return JU($,Q,J);return J}function O$($){let Q=$.uint32();if(Q!==65536&&Q!==1330926671&&Q!==1953658213)throw Error(`Invalid sfnt version: 0x${Q.toString(16).padStart(8,"0")}`);let Z=$.uint16(),K=$.uint16(),J=$.uint16(),q=$.uint16(),U=new Map;for(let W=0;W<Z;W++){let H=$.tag(),_=$.uint32(),N=$.uint32(),V=$.uint32();U.set(H,{tag:H,checksum:_,offset:N,length:V})}return{sfntVersion:Q,numTables:Z,searchRange:K,entrySelector:J,rangeShift:q,tables:U}}function P$($){return $.sfntVersion===65536||$.sfntVersion===1953658213}function cV($){return $.sfntVersion===1330926671}var v$={OlderSiblingFontAttribute:1,ElidableAxisValueName:2};function qU($){let Q=$.offset,Z=$.uint16(),K=$.uint16(),J=$.uint16(),q=$.uint16(),U=$.offset32(),W=$.uint16(),H=$.offset32(),_;if(Z>=1&&K>=1)_=$.uint16();let N=[];if(U!==0){let X=$.sliceFrom(Q+U);for(let j=0;j<q;j++)if(N.push({axisTag:X.tag(),axisNameID:X.uint16(),axisOrdering:X.uint16()}),J>8)X.skip(J-8)}let V=[];if(H!==0&&W>0){let X=$.sliceFrom(Q+H),j=[];for(let z=0;z<W;z++)j.push(X.uint16());for(let z=0;z<j.length;z++){let G=j[z],Y=$.sliceFrom(Q+H+G),E=iV(Y);if(E)V.push(E)}}return{majorVersion:Z,minorVersion:K,designAxisCount:q,designAxes:N,axisValueCount:W,axisValues:V,elidedFallbackNameID:_}}function iV($){switch($.uint16()){case 1:return{format:1,axisIndex:$.uint16(),flags:$.uint16(),valueNameID:$.uint16(),value:$.fixed()};case 2:return{format:2,axisIndex:$.uint16(),flags:$.uint16(),valueNameID:$.uint16(),nominalValue:$.fixed(),rangeMinValue:$.fixed(),rangeMaxValue:$.fixed()};case 3:return{format:3,axisIndex:$.uint16(),flags:$.uint16(),valueNameID:$.uint16(),value:$.fixed(),linkedValue:$.fixed()};case 4:{let Z=$.uint16(),K=$.uint16(),J=$.uint16(),q=[];for(let U=0;U<Z;U++)q.push({axisIndex:$.uint16(),value:$.fixed()});return{format:4,axisCount:Z,flags:K,valueNameID:J,axisValues:q}}default:return null}}function sV($,Q){return $.designAxes.find((Z)=>Z.axisTag===Q)??null}function aV($,Q){return $.designAxes.findIndex((Z)=>Z.axisTag===Q)}function rV($,Q){return $.axisValues.filter((Z)=>{if(Z.format===4)return Z.axisValues.some((K)=>K.axisIndex===Q);return Z.axisIndex===Q})}function tV($,Q){return $.axisValues.find((Z)=>Z.valueNameID===Q)??null}function eV($){return($.flags&v$.ElidableAxisValueName)!==0}function $X($){return($.flags&v$.OlderSiblingFontAttribute)!==0}function QX($){switch($.format){case 1:case 3:return $.value;case 2:return $.nominalValue;case 4:return null}}function ZX($,Q){switch($.format){case 1:case 3:{let Z=Q.get($.axisIndex);return Z!==void 0&&Z===$.value}case 2:{let Z=Q.get($.axisIndex);return Z!==void 0&&Z>=$.rangeMinValue&&Z<=$.rangeMaxValue}case 4:return $.axisValues.every((Z)=>{let K=Q.get(Z.axisIndex);return K!==void 0&&K===Z.value})}}function UU($){let Q=$.uint16(),Z=$.offset32();$.skip(4);let K=$.sliceFrom(Z),J=K.uint16();if(J===0)return{version:Q,documentRecords:[]};let q=[];for(let H=0;H<J;H++)q.push({startGlyphID:K.uint16(),endGlyphID:K.uint16(),svgDocOffset:K.offset32(),svgDocLength:K.uint32()});let U=[],W=new TextDecoder("utf-8");for(let H=0;H<q.length;H++){let _=q[H],V=K.sliceFrom(_.svgDocOffset).bytes(_.svgDocLength),X;if(V[0]===31&&V[1]===139)try{let j=qX(V);X=W.decode(j)}catch{X=W.decode(V)}else X=W.decode(V);U.push({startGlyphID:_.startGlyphID,endGlyphID:_.endGlyphID,svgDoc:X})}return{version:Q,documentRecords:U}}function WU($,Q){for(let Z=0;Z<$.documentRecords.length;Z++){let K=$.documentRecords[Z];if(Q>=K.startGlyphID&&Q<=K.endGlyphID)return K.svgDoc}return null}function KX($,Q){return WU($,Q)!==null}function JX($){let Q=[];for(let Z=0;Z<$.documentRecords.length;Z++){let K=$.documentRecords[Z];for(let J=K.startGlyphID;J<=K.endGlyphID;J++)Q.push(J)}return Q}function qX($){if(typeof DecompressionStream<"u")return $;return $}function _U($){let Q=$,Z=$.uint32()/65536,K=$.uint16(),J=$.offset16(),q=$.offset16();$.skip(2);let U=null,W=null;if(J!==0)U=HU($.sliceFrom(J),Q);if(q!==0)W=HU($.sliceFrom(q),Q);return{version:Z,format:K,horizData:U,vertData:W}}function HU($,Q){let Z=$.uint16(),K=$.uint16(),J=$.offset32(),q=[];for(let H=0;H<Z;H++){let _=$.int32()/65536,N=$.uint16(),V=$.uint16();q.push({track:_,nameIndex:N,offset:V,perSizeTracking:[]})}for(let H=0;H<q.length;H++){let _=q[H],N=Q.sliceFrom(_.offset);_.perSizeTracking=[];for(let V=0;V<K;V++)_.perSizeTracking.push(N.int16())}let U=Q.sliceFrom(J),W=[];for(let H=0;H<K;H++)W.push(U.int32()/65536);return{nTracks:Z,nSizes:K,sizeTableOffset:J,trackTable:q,sizeTable:W}}function NU($,Q,Z){let K=null;for(let J=0;J<$.trackTable.length;J++){let q=$.trackTable[J];if(q.track===Q){K=q;break}}if(!K){let J=null,q=null;for(let U=0;U<$.trackTable.length;U++){let W=$.trackTable[U];if(W.track<=Q&&(!J||W.track>J.track))J=W;if(W.track>=Q&&(!q||W.track<q.track))q=W}if(J&&q&&J!==q){let U=(Q-J.track)/(q.track-J.track),W=I$($,J,Z),H=I$($,q,Z);return Math.round(W+U*(H-W))}else if(J)K=J;else if(q)K=q;else return 0}if(!K)return 0;return I$($,K,Z)}function I$($,Q,Z){let K=$.sizeTable,J=Q.perSizeTracking;if(K.length===0||J.length===0)return 0;let q=K[0],U=J[0];if(q===void 0||U===void 0)return 0;if(Z<=q)return U;let W=K[K.length-1],H=J[J.length-1];if(W===void 0||H===void 0)return 0;if(Z>=W)return H;for(let _=0;_<K.length-1;_++){let N=K[_],V=K[_+1],X=J[_],j=J[_+1];if(N===void 0||V===void 0||X===void 0||j===void 0)continue;if(Z>=N&&Z<=V){let z=(Z-N)/(V-N);return Math.round(X+z*(j-X))}}return 0}function UX($,Q,Z,K=0,J=!1){let q=J?$.vertData:$.horizData;if(!q)return;let U=NU(q,K,Z);if(U===0)return;for(let W=0;W<Q.length;W++){let H=Q[W];Q[W]=(H??0)+U}}function VU($){let Q=$.uint16(),Z=$.uint16(),K=$.fword(),J=$.fword(),q=$.fword(),U=$.uint16(),W=$.fword(),H=$.fword(),_=$.fword(),N=$.int16(),V=$.int16(),X=$.int16();$.skip(8);let j=$.int16(),z=$.uint16();return{version:{major:Q,minor:Z},ascender:K,descender:J,lineGap:q,advanceHeightMax:U,minTopSideBearing:W,minBottomSideBearing:H,yMaxExtent:_,caretSlopeRise:N,caretSlopeRun:V,caretOffset:X,metricDataFormat:j,numberOfVMetrics:z}}function XU($,Q,Z){let K=[];for(let U=0;U<Q;U++)K.push({advanceHeight:$.uint16(),topSideBearing:$.int16()});let J=[],q=Z-Q;for(let U=0;U<q;U++)J.push($.int16());return{vMetrics:K,topSideBearings:J}}function WX($,Q){if(Q<$.vMetrics.length){let U=$.vMetrics[Q];if(U)return{advanceHeight:U.advanceHeight,topSideBearing:U.topSideBearing}}let K=$.vMetrics[$.vMetrics.length-1]?.advanceHeight??0,J=Q-$.vMetrics.length,q=$.topSideBearings[J]??0;return{advanceHeight:K,topSideBearing:q}}function jU($){let Q=$.uint16(),Z=$.uint16(),K=$.int16(),J=$.uint16(),q=[];for(let U=0;U<J;U++)q.push({glyphIndex:$.uint16(),vertOriginY:$.int16()});return q.sort((U,W)=>U.glyphIndex-W.glyphIndex),{majorVersion:Q,minorVersion:Z,defaultVertOriginY:K,vertOriginYMetrics:q}}function HX($,Q){let Z=$.vertOriginYMetrics,K=0,J=Z.length-1;while(K<=J){let q=K+J>>>1,U=Z[q];if(U===void 0)break;if(U.glyphIndex===Q)return U.vertOriginY;else if(U.glyphIndex<Q)K=q+1;else J=q-1}return $.defaultVertOriginY}function _X($,Q){let Z=$.vertOriginYMetrics,K=0,J=Z.length-1;while(K<=J){let q=K+J>>>1,U=Z[q];if(U===void 0)break;if(U.glyphIndex===Q)return!0;else if(U.glyphIndex<Q)K=q+1;else J=q-1}return!1}function zU($){let Q=$.uint16(),Z=$.uint16(),K=$.offset32(),J=$.offset32(),q=$.offset32(),U=$.offset32(),W=$.offset32(),H=NX($.sliceFrom(K)),_=J!==0?Q1($.sliceFrom(J)):null,N=q!==0?Q1($.sliceFrom(q)):null,V=U!==0?Q1($.sliceFrom(U)):null,X=W!==0?Q1($.sliceFrom(W)):null;return{majorVersion:Q,minorVersion:Z,itemVariationStore:H,advanceHeightMapping:_,tsbMapping:N,bsbMapping:V,vOrgMapping:X}}function NX($){let Q=$.uint16(),Z=$.offset32(),K=$.uint16(),J=[];for(let N=0;N<K;N++)J.push($.offset32());let q=$.sliceFrom(Z),U=q.uint16(),W=q.uint16(),H=[];for(let N=0;N<W;N++){let V=[];for(let X=0;X<U;X++)V.push({startCoord:q.f2dot14(),peakCoord:q.f2dot14(),endCoord:q.f2dot14()});H.push({regionAxes:V})}let _=[];for(let N=0;N<J.length;N++){let V=J[N],X=$.sliceFrom(V),j=X.uint16(),z=X.uint16(),G=X.uint16(),Y=[];for(let B=0;B<G;B++)Y.push(X.uint16());let E=(z&32768)!==0,w=z&32767,F=G-w,A=[];for(let B=0;B<j;B++){let L=[];for(let O=0;O<w;O++)if(E)L.push(X.int32());else L.push(X.int16());for(let O=0;O<F;O++)if(E)L.push(X.int16());else L.push(X.int8());A.push(L)}_.push({itemCount:j,regionIndexes:Y,deltaSets:A})}return{format:Q,variationRegions:H,itemVariationData:_}}function Q1($){let Q=$.uint8(),Z=$.uint8(),K=Q===0?$.uint16():$.uint32(),J=(Z&15)+1,q=(Z>>4&3)+1,U=[];for(let W=0;W<K;W++){let H=0;for(let V=0;V<q;V++)H=H<<8|$.uint8();let _=H&(1<<J)-1,N=H>>J;U.push({outer:N,inner:_})}return{format:Q,mapCount:K,entryFormat:Z,innerIndexBitCount:J,mapData:U}}function VX($,Q,Z){let K=$.advanceHeightMapping,J,q;if(K&&Q<K.mapData.length){let U=K.mapData[Q];if(!U)return 0;J=U.outer,q=U.inner}else J=0,q=Q;return Z1($.itemVariationStore,J,q,Z)}function XX($,Q,Z){let K=$.tsbMapping;if(!K)return 0;if(Q>=K.mapData.length)return 0;let J=K.mapData[Q];if(!J)return 0;return Z1($.itemVariationStore,J.outer,J.inner,Z)}function jX($,Q,Z){let K=$.bsbMapping;if(!K)return 0;if(Q>=K.mapData.length)return 0;let J=K.mapData[Q];if(!J)return 0;return Z1($.itemVariationStore,J.outer,J.inner,Z)}function zX($,Q,Z){let K=$.vOrgMapping;if(!K)return 0;if(Q>=K.mapData.length)return 0;let J=K.mapData[Q];if(!J)return 0;return Z1($.itemVariationStore,J.outer,J.inner,Z)}function Z1($,Q,Z,K){let J=$.itemVariationData[Q];if(!J||Z>=J.itemCount)return 0;let q=J.deltaSets[Z];if(!q)return 0;let U=0;for(let W=0;W<J.regionIndexes.length;W++){let H=J.regionIndexes[W],_=$.variationRegions[H];if(!_)continue;let N=n9(_,K),V=q[W]??0;U+=N*V}return Math.round(U)}var GX=2001684038,YX=2001684018;function GU($){return new DataView($).getUint32(0,!1)===YX}function YU($){return new DataView($).getUint32(0,!1)===GX}class z9{reader;directory;_head=null;_maxp=null;_hhea=null;_hmtx=null;_cmap=null;_gdef=void 0;_gsub=void 0;_gpos=void 0;_kern=void 0;_fvar=void 0;_hvar=void 0;_vhea=void 0;_vmtx=void 0;_morx=void 0;_gvar=void 0;_avar=void 0;_kerx=void 0;_trak=void 0;_cff=void 0;_cff2=void 0;_colr=void 0;_cpal=void 0;_vvar=void 0;_mvar=void 0;_os2=void 0;_name=void 0;_post=void 0;_base=void 0;_jstf=void 0;_math=void 0;_loca=void 0;_glyf=void 0;_svg=void 0;_vorg=void 0;_sbix=void 0;_stat=void 0;_cbdt=void 0;_cblc=void 0;_feat=void 0;_fpgm=void 0;_prep=void 0;_cvt=void 0;_gasp=void 0;constructor($,Q={}){this.reader=new c6($),this.directory=O$(this.reader)}static load($,Q){if(GU($))throw Error("WOFF2 requires async loading. Use Font.loadAsync() instead.");if(YU($))throw Error("WOFF format is not supported. Please use TTF, OTF, or WOFF2.");return new z9($,Q)}static async loadAsync($,Q){if(GU($))$=await fJ($);else if(YU($))throw Error("WOFF format is not supported. Please use TTF, OTF, or WOFF2.");return new z9($,Q)}static async fromURL($,Q){let Z=await fetch($);if(!Z.ok)throw Error(`Failed to fetch font: ${Z.status} ${Z.statusText}`);let K=await Z.arrayBuffer();return z9.loadAsync(K,Q)}static async fromFile($,Q){let K=await Bun.file($).arrayBuffer();return z9.loadAsync(K,Q)}hasTable($){return this.directory.tables.has($)}getTableRecord($){return this.directory.tables.get($)}getTableReader($){let Q=this.directory.tables.get($);if(!Q)return null;return this.reader.slice(Q.offset,Q.length)}get head(){if(!this._head){let $=this.getTableReader(p.head);if(!$)throw Error("Missing required 'head' table");this._head=uq($)}return this._head}get maxp(){if(!this._maxp){let $=this.getTableReader(p.maxp);if(!$)throw Error("Missing required 'maxp' table");this._maxp=tq($)}return this._maxp}get hhea(){if(!this._hhea){let $=this.getTableReader(p.hhea);if(!$)throw Error("Missing required 'hhea' table");this._hhea=xq($)}return this._hhea}get hmtx(){if(!this._hmtx){let $=this.getTableReader(p.hmtx);if(!$)throw Error("Missing required 'hmtx' table");this._hmtx=fq($,this.hhea.numberOfHMetrics,this.numGlyphs)}return this._hmtx}get cmap(){if(!this._cmap){let $=this.getTableRecord(p.cmap),Q=this.getTableReader(p.cmap);if(!Q||!$)throw Error("Missing required 'cmap' table");this._cmap=tJ(Q,$.length)}return this._cmap}get gdef(){if(this._gdef===void 0){let $=this.getTableReader(p.GDEF);this._gdef=$?Bq($):null}return this._gdef}get gsub(){if(this._gsub===void 0){let $=this.getTableReader(p.GSUB);this._gsub=$?Cq($):null}return this._gsub}get gpos(){if(this._gpos===void 0){let $=this.getTableReader(p.GPOS);this._gpos=$?vq($):null}return this._gpos}get kern(){if(this._kern===void 0){let $=this.getTableReader(p.kern);this._kern=$?oq($):null}return this._kern}get fvar(){if(this._fvar===void 0){let $=this.getTableReader(p.fvar);this._fvar=$?AJ($):null}return this._fvar}get hvar(){if(this._hvar===void 0){let $=this.getTableReader(p.HVAR);this._hvar=$?FJ($):null}return this._hvar}get vhea(){if(this._vhea===void 0){let $=this.getTableReader(p.vhea);this._vhea=$?VU($):null}return this._vhea}get vmtx(){if(this._vmtx===void 0){let $=this.vhea;if(!$)this._vmtx=null;else{let Q=this.getTableReader(p.vmtx);this._vmtx=Q?XU(Q,$.numberOfVMetrics,this.numGlyphs):null}}return this._vmtx}get morx(){if(this._morx===void 0){let $=this.getTableReader(p.morx);this._morx=$?eq($):null}return this._morx}get gvar(){if(this._gvar===void 0){let $=this.getTableReader(p.gvar);this._gvar=$?F7($,this.numGlyphs):null}return this._gvar}get avar(){if(this._avar===void 0){let $=this.fvar;if(!$)this._avar=null;else{let Q=this.getTableReader(p.avar);this._avar=Q?EJ(Q,$.axes.length):null}}return this._avar}get kerx(){if(this._kerx===void 0){let $=this.getTableReader(p.kerx);this._kerx=$?aq($):null}return this._kerx}get trak(){if(this._trak===void 0){let $=this.getTableReader(p.trak);this._trak=$?_U($):null}return this._trak}get cff(){if(this._cff===void 0){let $=this.getTableReader(p.CFF);this._cff=$?n5($):null}return this._cff}get cff2(){if(this._cff2===void 0){let $=this.getTableReader(p.CFF2);this._cff2=$?o5($):null}return this._cff2}get colr(){if(this._colr===void 0){let $=this.getTableReader(p.COLR);this._colr=$?s5($):null}return this._colr}get cpal(){if(this._cpal===void 0){let $=this.getTableReader(p.CPAL);this._cpal=$?a5($):null}return this._cpal}get vvar(){if(this._vvar===void 0){let $=this.getTableReader(p.VVAR);this._vvar=$?zU($):null}return this._vvar}get mvar(){if(this._mvar===void 0){let $=this.getTableReader(p.MVAR);this._mvar=$?$U($):null}return this._mvar}get os2(){if(this._os2===void 0){let $=this.getTableReader(p.OS2);this._os2=$?M$($):null}return this._os2}get name(){if(this._name===void 0){let $=this.getTableReader(p.name);this._name=$?B$($):null}return this._name}get post(){if(this._post===void 0){let $=this.getTableReader(p.post);this._post=$?R$($):null}return this._post}get base(){if(this._base===void 0){let $=this.getTableReader(p.BASE);this._base=$?d5($):null}return this._base}get jstf(){if(this._jstf===void 0){let $=this.getTableReader(p.JSTF);this._jstf=$?z$($):null}return this._jstf}get math(){if(this._math===void 0){let $=this.getTableReader(p.MATH);this._math=$?F$($):null}return this._math}get loca(){if(this._loca===void 0){let $=this.getTableReader(p.loca);this._loca=$?L7($,this.numGlyphs,this.head.indexToLocFormat):null}return this._loca}get glyf(){if(this._glyf===void 0){let $=this.getTableReader(p.glyf);this._glyf=$?B7($):null}return this._glyf}get svg(){if(this._svg===void 0){let $=this.getTableReader(p.SVG);this._svg=$?UU($):null}return this._svg}get vorg(){if(this._vorg===void 0){let $=this.getTableReader(p.VORG);this._vorg=$?jU($):null}return this._vorg}get sbix(){if(this._sbix===void 0){let $=this.getTableReader(p.sbix);this._sbix=$?ZU($,this.numGlyphs):null}return this._sbix}get stat(){if(this._stat===void 0){let $=this.getTableReader(p.STAT);this._stat=$?qU($):null}return this._stat}get cblc(){if(this._cblc===void 0){let $=this.getTableReader(p.CBLC);this._cblc=$?pJ($):null}return this._cblc}get cbdt(){if(this._cbdt===void 0){let $=this.getTableReader(p.CBDT);this._cbdt=$?oJ($):null}return this._cbdt}get feat(){if(this._feat===void 0){let $=this.getTableReader(p.feat);this._feat=$?r5($):null}return this._feat}get fpgm(){if(this._fpgm===void 0){let $=this.getTableReader(p.fpgm);this._fpgm=$?V$($):null}return this._fpgm}get prep(){if(this._prep===void 0){let $=this.getTableReader(p.prep);this._prep=$?X$($):null}return this._prep}get cvtTable(){if(this._cvt===void 0){let $=this.getTableReader(p.cvt);this._cvt=$?j$($):null}return this._cvt}get gasp(){if(this._gasp===void 0){let $=this.getTableReader(p.gasp);this._gasp=$?t5($):null}return this._gasp}get numGlyphs(){return this.maxp.numGlyphs}get unitsPerEm(){return this.head.unitsPerEm}get ascender(){return this.hhea.ascender}get descender(){return this.hhea.descender}get lineGap(){return this.hhea.lineGap}get isTrueType(){return P$(this.directory)}get isCFF(){return this.hasTable(p.CFF)||this.hasTable(p.CFF2)}get isVariable(){return this.hasTable(p.fvar)}get hasOpenTypeLayout(){return this.hasTable(p.GSUB)||this.hasTable(p.GPOS)}get hasAATLayout(){return this.hasTable(p.morx)||this.hasTable(p.kerx)}get isColorFont(){return this.hasTable(p.COLR)||this.hasTable(p.SVG)||this.hasTable(p.sbix)||this.hasTable(p.CBDT)}get hasHinting(){return this.isTrueType&&(this.hasTable(p.fpgm)||this.hasTable(p.prep))}glyphId($){return eJ(this.cmap,$)}glyphIdForChar($){let Q=$.codePointAt(0);if(Q===void 0)return 0;return this.glyphId(Q)}advanceWidth($){return lq(this.hmtx,$)}leftSideBearing($){return dq(this.hmtx,$)}listTables(){return[...this.directory.tables.keys()].map(P9)}getGlyph($){if(!this.glyf||!this.loca)return null;return z8(this.glyf,this.loca,$)}getGlyphContours($){if(this.glyf&&this.loca)return O7(this.glyf,this.loca,$);if(this.cff)return p5(this.cff,$,0);if(this.cff2)return c0(this.cff2,$,null);return null}getGlyphBounds($){if(this.glyf&&this.loca)return v7(this.glyf,this.loca,$);let Q=this.getGlyphContours($);if(!Q||Q.length===0)return null;let Z=1/0,K=1/0,J=-1/0,q=-1/0;for(let U=0;U<Q.length;U++){let W=Q[U];for(let H=0;H<W.length;H++){let _=W[H];Z=Math.min(Z,_.x),K=Math.min(K,_.y),J=Math.max(J,_.x),q=Math.max(q,_.y)}}if(Z===1/0)return null;return{xMin:Z,yMin:K,xMax:J,yMax:q}}getGlyphContoursAndBounds($){if(this.glyf&&this.loca)return P7(this.glyf,this.loca,$);let Q=this.getGlyphContours($);if(!Q)return null;if(Q.length===0)return{contours:Q,bounds:null};let Z=1/0,K=1/0,J=-1/0,q=-1/0;for(let W=0;W<Q.length;W++){let H=Q[W];for(let _=0;_<H.length;_++){let N=H[_];Z=Math.min(Z,N.x),K=Math.min(K,N.y),J=Math.max(J,N.x),q=Math.max(q,N.y)}}return{contours:Q,bounds:Z===1/0?null:{xMin:Z,yMin:K,xMax:J,yMax:q}}}getGlyphContoursWithVariation($,Q){if(this.glyf&&this.loca)return C7(this.glyf,this.loca,this.gvar,$,Q);if(this.cff2)return c0(this.cff2,$,Q);return this.getGlyphContours($)}}var wU;((K)=>{K.Shrink="shrink";K.Extend="extend";K.Auto="auto"})(wU||={});function K1($){let Q=0;for(let Z=0;Z<$.positions.length;Z++){let K=$.positions[Z];Q+=K.xAdvance}return Q}function AU($,Q,Z){let{targetWidth:K,script:J=k("DFLT"),language:q,mode:U="auto",maxPriority:W=10,enableKashida:H=!0,minWordSpacingFactor:_=0.8,maxWordSpacingFactor:N=1.5,enableLetterSpacing:V=!0,maxLetterSpacing:X=100}=Z,j=K1(Q),z=K-j;if(Math.abs(z)<1)return{success:!0,finalWidth:j,delta:0,priorityLevel:0,adjustments:[]};let G;if(U==="auto")G=z>0?"extend":"shrink";else G=U;let Y=[],E=z,w=0,F=$.jstf;if(F){let L=Y$(F,J,q);for(let O=0;O<Math.min(L.length,W);O++){let M=L[O],P=G==="shrink"?E$(M):w$(M);if(P.enableGsub.length>0||P.disableGsub.length>0||P.enableGpos.length>0||P.disableGpos.length>0)Y.push({type:"lookup",glyphIndices:[],value:O}),w=O}if(H&&G==="extend"){let O=G$(F,J);if(O.length>0){let M=EX(Q,O[0],E,$);E-=M.totalExtension,Y.push(...M.adjustments)}}}let A=$.glyphId(32);if(A!==0){let L=AX(Q,A,E,G==="shrink"?_:N);E-=L.totalAdjustment,Y.push(...L.adjustments)}if(V&&Math.abs(E)>1){let L=FX(Q,E,X);E-=L.totalAdjustment,Y.push(...L.adjustments)}let B=K1(Q);return{success:Math.abs(E)<1,finalWidth:B,delta:K-B,priorityLevel:w,adjustments:Y}}function EX($,Q,Z,K){let J=[],q=0,U=[];for(let N=0;N<$.infos.length-1;N++){let V=$.infos[N];if(wX(V.codepoint))U.push(N)}if(U.length===0)return{totalExtension:0,adjustments:[]};let W=K.advanceWidth(Q);if(W<=0)return{totalExtension:0,adjustments:[]};let H=Math.ceil(Z/W/U.length),_=Math.min(H*W,Z/U.length);for(let N=0;N<U.length;N++){if(q>=Z)break;let V=U[N];$.positions[V].xAdvance+=_,q+=_,J.push({type:"kashida",glyphIndices:[V],value:_})}return{totalExtension:q,adjustments:J}}function wX($){return $>=1568&&$<=1791}function AX($,Q,Z,K){let J=[],q=0,U=[],W=0;for(let X=0;X<$.infos.length;X++)if($.infos[X]?.glyphId===Q)U.push(X),W+=$.positions[X]?.xAdvance;if(U.length===0)return{totalAdjustment:0,adjustments:[]};let H=Z/U.length,N=W/U.length*(K-1),V=Z>0?Math.min(H,N):Math.max(H,-N);for(let X=0;X<U.length;X++){let j=U[X];$.positions[j].xAdvance+=V,q+=V}if(q!==0)J.push({type:"spacing",glyphIndices:U,value:V});return{totalAdjustment:q,adjustments:J}}function FX($,Q,Z){let K=[],J=$.infos.length;if(J<=1)return{totalAdjustment:0,adjustments:[]};let q=J-1,U=Q/q,W=Q>0?Math.min(U,Z):Math.max(U,-Z),H=[],_=0;for(let N=0;N<J-1;N++)$.positions[N].xAdvance+=W,_+=W,H.push(N);if(_!==0)K.push({type:"spacing",glyphIndices:H,value:W});return{totalAdjustment:_,adjustments:K}}function LX($,Q,Z){let K=[],J=[];if($.infos.length===0)return{lines:[],breakPoints:[]};let q=0,U=0,W=-1,H=0;for(let _=0;_<$.infos.length;_++){let N=$.positions[_],V=$.infos[_];if(U+=N.xAdvance,Z!==void 0&&V.glyphId===Z)W=_,H=U;if(U>Q&&q<_){let X;if(W>q)X=W+1;else X=_;let j=EU($,q,X);K.push(j),J.push(X),q=X,U=0,W=-1;for(let z=q;z<=_;z++)U+=$.positions[z]?.xAdvance}}if(q<$.infos.length){let _=EU($,q,$.infos.length);K.push(_)}return{lines:K,breakPoints:J}}function EU($,Q,Z){let K=new O8;K.direction=$.direction,K.script=$.script,K.language=$.language;for(let J=Q;J<Z;J++)K.infos.push({...$.infos[J]}),K.positions.push({...$.positions[J]});return K}function DX($,Q,Z){let K=[];for(let J=0;J<Q.length;J++){let q=Q[J];if(J===Q.length-1)K.push({success:!0,finalWidth:K1(q),delta:0,priorityLevel:0,adjustments:[]});else K.push(AU($,q,Z))}return K}function FU($,Q){for(let Z=0;Z<$.conditions.length;Z++){let K=$.conditions[Z],J=Q[K.axisIndex]??0;if(J<K.filterRangeMinValue||J>K.filterRangeMaxValue)return!1}return!0}function Z0($,Q){for(let Z=0;Z<$.featureVariationRecords.length;Z++){let K=$.featureVariationRecords[Z];if(FU(K.conditionSet,Q))return K}return null}function BX($,Q,Z,K){if(!$||!K)return Z;let J=Z0($,K);if(!J)return Z;let q=J.featureTableSubstitution.substitutions.find((U)=>U.featureIndex===Q);if(q)return q.alternateFeature.lookupListIndices;return Z}function MX($,Q,Z,K){if(!$||!K)return Q;let J=Z0($,K);if(!J)return Q;let q=new Map(Q),U=J.featureTableSubstitution.substitutions;for(let W=0;W<U.length;W++){let H=U[W],_=[...Z.entries()];for(let N=0;N<_.length;N++){let[V,X]=_[N];if(X===H.featureIndex){q.set(V,H.alternateFeature.lookupListIndices);break}}}return q}G6();var RX=[0,85,86,85,0],LU=[8,77,86,77,8],TX=[0,64,128,64,0],DU;((J)=>{J[J.RGB=0]="RGB";J[J.BGR=1]="BGR";J[J.RGB_V=2]="RGB_V";J[J.BGR_V=3]="BGR_V"})(DU||={});function OX($,Q,Z,K,J,q,U=0,W=LU){if(U===2||U===3)return PX($,Q,Z,K,J,q,U,W);let _=Q*3,N=a(_,Z,1),V=new a8;V.setClip(0,0,_,Z),V.reset(),Y8(V,$,K*3,J*3,q,!0),V.sweep(N);let X=a(Q,Z,2);return vX(N,X,W,U===1),X}function PX($,Q,Z,K,J,q,U,W){let H=Z*3,_=a(Q,H,1),N=new a8;N.setClip(0,0,Q,H),N.reset(),Y8(N,$,K,J,q*3,!0),N.sweep(_);let V=a(Q,Z,3);return IX(_,V,W,U===3),V}function vX($,Q,Z,K){let[J,q,U,W,H]=Z,_=J+q+U+W+H;for(let N=0;N<Q.rows;N++){let V=N*$.pitch,X=N*Q.pitch;for(let j=0;j<Q.width;j++){let z=j*3,G=z-2>=0?$.buffer[V+z-2]:0,Y=z-1>=0?$.buffer[V+z-1]:0,E=$.buffer[V+z],w=z+1<$.width?$.buffer[V+z+1]:0,F=z+2<$.width?$.buffer[V+z+2]:0,A=Math.min(255,Math.round((G*J+Y*q+E*U+w*W+F*H)/_)),B=z-1>=0?$.buffer[V+z-1]:0,L=$.buffer[V+z],O=z+1<$.width?$.buffer[V+z+1]:0,M=z+2<$.width?$.buffer[V+z+2]:0,P=z+3<$.width?$.buffer[V+z+3]:0,T=Math.min(255,Math.round((B*J+L*q+O*U+M*W+P*H)/_)),x=$.buffer[V+z],I=z+1<$.width?$.buffer[V+z+1]:0,f=z+2<$.width?$.buffer[V+z+2]:0,l=z+3<$.width?$.buffer[V+z+3]:0,C=z+4<$.width?$.buffer[V+z+4]:0,R=Math.min(255,Math.round((x*J+I*q+f*U+l*W+C*H)/_)),y=X+j*3;if(K)Q.buffer[y]=R,Q.buffer[y+1]=T,Q.buffer[y+2]=A;else Q.buffer[y]=A,Q.buffer[y+1]=T,Q.buffer[y+2]=R}}}function IX($,Q,Z,K){let[J,q,U,W,H]=Z,_=J+q+U+W+H;for(let N=0;N<Q.rows;N++){let V=N*3,X=N*Q.pitch;for(let j=0;j<Q.width;j++){let z=V-2>=0?$.buffer[(V-2)*$.pitch+j]:0,G=V-1>=0?$.buffer[(V-1)*$.pitch+j]:0,Y=$.buffer[V*$.pitch+j],E=V+1<$.rows?$.buffer[(V+1)*$.pitch+j]:0,w=V+2<$.rows?$.buffer[(V+2)*$.pitch+j]:0,F=Math.min(255,Math.round((z*J+G*q+Y*U+E*W+w*H)/_)),A=V-1>=0?$.buffer[(V-1)*$.pitch+j]:0,B=$.buffer[V*$.pitch+j],L=V+1<$.rows?$.buffer[(V+1)*$.pitch+j]:0,O=V+2<$.rows?$.buffer[(V+2)*$.pitch+j]:0,M=V+3<$.rows?$.buffer[(V+3)*$.pitch+j]:0,P=Math.min(255,Math.round((A*J+B*q+L*U+O*W+M*H)/_)),T=$.buffer[V*$.pitch+j],x=V+1<$.rows?$.buffer[(V+1)*$.pitch+j]:0,I=V+2<$.rows?$.buffer[(V+2)*$.pitch+j]:0,f=V+3<$.rows?$.buffer[(V+3)*$.pitch+j]:0,l=V+4<$.rows?$.buffer[(V+4)*$.pitch+j]:0,C=Math.min(255,Math.round((T*J+x*q+I*U+f*W+l*H)/_)),R=X+j*3;if(K)Q.buffer[R]=C,Q.buffer[R+1]=P,Q.buffer[R+2]=F;else Q.buffer[R]=F,Q.buffer[R+1]=P,Q.buffer[R+2]=C}}}function kX($,Q=[255,255,255],Z=[0,0,0]){let K=new Uint8Array($.width*$.rows*4),[J,q,U]=Q,[W,H,_]=Z;for(let N=0;N<$.rows;N++){let V=N*$.pitch,X=N*$.width*4;for(let j=0;j<$.width;j++){let z=V+j*3,G=X+j*4,Y=$.buffer[z],E=$.buffer[z+1],w=$.buffer[z+2];K[G]=k$(J,W,Y),K[G+1]=k$(q,H,E),K[G+2]=k$(U,_,w),K[G+3]=255}}return K}function k$($,Q,Z){return Math.round($+(Q-$)*Z/255)}G6();var TU;((J)=>{J[J.None=0]="None";J[J.Decompose=1]="Decompose";J[J.Compose=2]="Compose";J[J.Auto=3]="Auto"})(TU||={});function _8($){if($<768)return 0;if($>=880&&$<1328)return 0;if($>=12288){if($>=44032&&$<=55215)return 0;if($>=19968&&$<=40959)return 0;if($>=13312&&$<=19903)return 0;if($>=12352&&$<12441)return 0;if($>=12443&&$<=12543)return 0;if($>=12544&&$<=12591)return 0;if($>=12800&&$<=13055)return 0}if($>=768&&$<=879)return mX($);if($>=1425&&$<=1469)return yX($);if($===1471)return 23;if($===1473)return 24;if($===1474)return 25;if($===1476)return 230;if($===1477)return 220;if($===1479)return 18;if($>=1611&&$<=1631)return bX($);if($===1648)return 35;if($>=1552&&$<=1562)return 230;if($>=1750&&$<=1756)return 230;if($>=1759&&$<=1764)return 230;if($>=1767&&$<=1768)return 230;if($>=1770&&$<=1773)return 220;if($===2260)return 230;if($>=2275&&$<=2303)return 220;if($===2364)return 7;if($===2381)return 9;if($>=2385&&$<=2388)return 230;if($===2389)return 0;if($>=2390&&$<=2391)return 0;if($===2492)return 7;if($===2509)return 9;if($===2558)return 230;if($===2620)return 7;if($===2637)return 9;if($===2748)return 7;if($===2765)return 9;if($===2876)return 7;if($===2893)return 9;if($===3021)return 9;if($===3149)return 9;if($===3157)return 84;if($===3158)return 91;if($===3260)return 7;if($===3277)return 9;if($===3405)return 9;if($===3530)return 9;if($>=3633&&$<=3642)return 0;if($>=3655&&$<=3662)return BU($);if($>=3761&&$<=3772)return 0;if($>=3784&&$<=3789)return BU($);if($>=3864&&$<=3865)return 220;if($===3893)return 220;if($===3895)return 220;if($===3897)return 216;if($>=3953&&$<=3966)return MU($);if($>=3968&&$<=3972)return MU($);if($>=3974&&$<=3975)return 230;if($===4151)return 7;if($===4153)return 9;if($===4154)return 9;if($>=12330&&$<=12335)return CX($);if($>=12441&&$<=12442)return 8;if($>=6832&&$<=6911)return SX($);if($>=7616&&$<=7679)return hX($);if($>=65056&&$<=65071)return 230;return 0}function BU($){if($>=3656&&$<=3659)return 107;if($===3660)return 0;if($===3661)return 0;if($===3662)return 0;if($>=3784&&$<=3787)return 122;return 0}function MU($){if($===3953)return 129;if($===3954)return 130;if($===3955)return 0;if($===3956)return 132;if($===3957)return 0;if($===3958)return 0;if($===3959)return 0;if($===3960)return 0;if($===3961)return 0;if($===3962)return 130;if($===3963)return 130;if($===3964)return 130;if($===3965)return 130;if($===3966)return 0;if($===3968)return 130;if($===3969)return 0;if($===3970)return 230;if($===3971)return 230;return 9}function CX($){if($===12330)return 218;if($===12331)return 228;if($===12332)return 232;if($===12333)return 222;if($===12334)return 224;return 224}function SX($){if($>=6832&&$<=6846)return 230;if($===6847)return 220;if($===6848)return 220;return 230}function hX($){if($>=7616&&$<=7617)return 230;if($===7618)return 220;if($>=7619&&$<=7626)return 230;if($===7627)return 230;if($===7628)return 230;if($===7629)return 234;if($===7630)return 214;if($===7631)return 220;if($===7632)return 202;if($>=7633&&$<=7669)return 230;if($>=7670&&$<=7672)return 232;if($===7673)return 220;if($===7674)return 218;return 230}function yX($){if($>=1425&&$<=1441)return 220;if($>=1442&&$<=1455)return 230;if($>=1456&&$<=1465){if($===1456)return 10;if($===1457)return 11;if($===1458)return 12;if($===1459)return 13;if($===1460)return 14;if($===1461)return 15;if($===1462)return 16;if($===1463)return 17;if($===1464)return 18;return 19}if($===1466)return 19;if($===1467)return 20;if($===1468)return 21;return 22}function bX($){if($===1611)return 27;if($===1612)return 28;if($===1613)return 29;if($===1614)return 30;if($===1615)return 31;if($===1616)return 32;if($===1617)return 33;if($===1618)return 34;if($>=1619&&$<=1621)return 230;if($===1622)return 220;if($===1623)return 230;if($===1624)return 230;return 230}function mX($){if($>=768&&$<=788)return 230;if($>=789&&$<=789)return 232;if($>=790&&$<=793)return 220;if($>=794&&$<=794)return 232;if($>=795&&$<=795)return 216;if($>=796&&$<=800)return 220;if($>=801&&$<=802)return 202;if($>=803&&$<=806)return 220;if($>=807&&$<=808)return 202;if($>=809&&$<=819)return 220;if($>=820&&$<=824)return 1;if($>=825&&$<=828)return 220;if($>=829&&$<=836)return 230;if($===837)return 240;if($>=838&&$<=846)return 230;if($===847)return 0;if($>=848&&$<=850)return 230;if($>=851&&$<=854)return 220;if($>=855&&$<=856)return 230;if($>=857&&$<=858)return 220;if($>=859&&$<=859)return 230;if($>=860&&$<=860)return 233;if($>=861&&$<=862)return 234;if($>=863&&$<=863)return 233;if($>=864&&$<=865)return 234;if($>=866&&$<=866)return 233;if($>=867&&$<=879)return 230;return 0}function J1($){let Q=$.length,Z=1;while(Z<Q){let K=$[Z];if(!K){Z++;continue}let J=_8(K.codepoint);if(J===0){Z++;continue}let q=Z;while(q>0){let U=$[q-1];if(!U)break;let W=_8(U.codepoint);if(W===0)break;if(W<=J)break;$[q]=U,$[q-1]=K,q--}Z++}}var gX=new Map([[192,[65,768]],[193,[65,769]],[194,[65,770]],[195,[65,771]],[196,[65,776]],[197,[65,778]],[199,[67,807]],[200,[69,768]],[201,[69,769]],[202,[69,770]],[203,[69,776]],[204,[73,768]],[205,[73,769]],[206,[73,770]],[207,[73,776]],[209,[78,771]],[210,[79,768]],[211,[79,769]],[212,[79,770]],[213,[79,771]],[214,[79,776]],[217,[85,768]],[218,[85,769]],[219,[85,770]],[220,[85,776]],[221,[89,769]],[224,[97,768]],[225,[97,769]],[226,[97,770]],[227,[97,771]],[228,[97,776]],[229,[97,778]],[231,[99,807]],[232,[101,768]],[233,[101,769]],[234,[101,770]],[235,[101,776]],[236,[105,768]],[237,[105,769]],[238,[105,770]],[239,[105,776]],[241,[110,771]],[242,[111,768]],[243,[111,769]],[244,[111,770]],[245,[111,771]],[246,[111,776]],[249,[117,768]],[250,[117,769]],[251,[117,770]],[252,[117,776]],[253,[121,769]],[255,[121,776]],[256,[65,772]],[257,[97,772]],[258,[65,774]],[259,[97,774]],[260,[65,808]],[261,[97,808]],[262,[67,769]],[263,[99,769]],[264,[67,770]],[265,[99,770]],[266,[67,775]],[267,[99,775]],[268,[67,780]],[269,[99,780]],[270,[68,780]],[271,[100,780]],[274,[69,772]],[275,[101,772]],[276,[69,774]],[277,[101,774]],[278,[69,775]],[279,[101,775]],[280,[69,808]],[281,[101,808]],[282,[69,780]],[283,[101,780]],[284,[71,770]],[285,[103,770]],[286,[71,774]],[287,[103,774]],[288,[71,775]],[289,[103,775]],[290,[71,807]],[291,[103,807]],[292,[72,770]],[293,[104,770]],[296,[73,771]],[297,[105,771]],[298,[73,772]],[299,[105,772]],[300,[73,774]],[301,[105,774]],[302,[73,808]],[303,[105,808]],[304,[73,775]],[308,[74,770]],[309,[106,770]],[310,[75,807]],[311,[107,807]],[313,[76,769]],[314,[108,769]],[315,[76,807]],[316,[108,807]],[317,[76,780]],[318,[108,780]],[323,[78,769]],[324,[110,769]],[325,[78,807]],[326,[110,807]],[327,[78,780]],[328,[110,780]],[332,[79,772]],[333,[111,772]],[334,[79,774]],[335,[111,774]],[336,[79,779]],[337,[111,779]],[340,[82,769]],[341,[114,769]],[342,[82,807]],[343,[114,807]],[344,[82,780]],[345,[114,780]],[346,[83,769]],[347,[115,769]],[348,[83,770]],[349,[115,770]],[350,[83,807]],[351,[115,807]],[352,[83,780]],[353,[115,780]],[354,[84,807]],[355,[116,807]],[356,[84,780]],[357,[116,780]],[360,[85,771]],[361,[117,771]],[362,[85,772]],[363,[117,772]],[364,[85,774]],[365,[117,774]],[366,[85,778]],[367,[117,778]],[368,[85,779]],[369,[117,779]],[370,[85,808]],[371,[117,808]],[372,[87,770]],[373,[119,770]],[374,[89,770]],[375,[121,770]],[376,[89,776]],[377,[90,769]],[378,[122,769]],[379,[90,775]],[380,[122,775]],[381,[90,780]],[382,[122,780]],[7840,[65,803]],[7841,[97,803]],[7842,[65,777]],[7843,[97,777]],[7864,[69,803]],[7865,[101,803]],[7866,[69,777]],[7867,[101,777]],[7868,[69,771]],[7869,[101,771]],[7880,[73,777]],[7881,[105,777]],[7882,[73,803]],[7883,[105,803]],[7884,[79,803]],[7885,[111,803]],[7886,[79,777]],[7887,[111,777]],[7908,[85,803]],[7909,[117,803]],[7910,[85,777]],[7911,[117,777]],[7922,[89,768]],[7923,[121,768]],[7924,[89,803]],[7925,[121,803]],[7926,[89,777]],[7927,[121,777]],[7928,[89,771]],[7929,[121,771]],[7936,[945,787]],[7937,[945,788]],[7944,[913,787]],[7945,[913,788]],[1081,[1080,774]],[1049,[1048,774]],[1105,[1077,776]],[1025,[1045,776]]]);function q1($){return gX.get($)??null}var uX=new Map([[65,new Map([[768,192],[769,193],[770,194],[771,195],[776,196],[778,197],[808,260],[780,461],[772,256],[774,258]])],[67,new Map([[807,199],[769,262],[770,264],[780,268],[775,266]])],[69,new Map([[768,200],[769,201],[770,202],[776,203],[808,280],[780,282],[772,274],[774,276],[775,278]])],[73,new Map([[768,204],[769,205],[770,206],[776,207],[771,296],[772,298],[774,300],[808,302],[775,304]])],[78,new Map([[771,209],[769,323],[807,325],[780,327]])],[79,new Map([[768,210],[769,211],[770,212],[771,213],[776,214],[772,332],[774,334],[779,336],[808,490]])],[85,new Map([[768,217],[769,218],[770,219],[776,220],[771,360],[772,362],[774,364],[778,366],[779,368],[808,370],[780,467]])],[89,new Map([[769,221],[770,374],[776,376]])],[97,new Map([[768,224],[769,225],[770,226],[771,227],[776,228],[778,229],[808,261],[780,462],[772,257],[774,259]])],[99,new Map([[807,231],[769,263],[770,265],[780,269],[775,267]])],[101,new Map([[768,232],[769,233],[770,234],[776,235],[808,281],[780,283],[772,275],[774,277],[775,279]])],[105,new Map([[768,236],[769,237],[770,238],[776,239],[771,297],[772,299],[774,301],[808,303]])],[110,new Map([[771,241],[769,324],[807,326],[780,328]])],[111,new Map([[768,242],[769,243],[770,244],[771,245],[776,246],[772,333],[774,335],[779,337],[808,491]])],[117,new Map([[768,249],[769,250],[770,251],[776,252],[771,361],[772,363],[774,365],[778,367],[779,369],[808,371],[780,468]])],[121,new Map([[769,253],[776,255],[770,375]])],[83,new Map([[769,346],[770,348],[807,350],[780,352]])],[115,new Map([[769,347],[770,349],[807,351],[780,353]])],[90,new Map([[769,377],[775,379],[780,381]])],[122,new Map([[769,378],[775,380],[780,382]])]]);function RU($,Q){let Z=uX.get($);if(!Z)return null;return Z.get(Q)??null}function xX($){if($.length===0)return $;let Q=[],Z=0;while(Z<$.length){let K=$[Z];if(_8(K.codepoint)===0){let q=K.codepoint,U=0,W=Z+1;while(W<$.length){let H=$[W],_=_8(H.codepoint);if(_===0)break;if(_>U||U===0){let N=RU(q,H.codepoint);if(N!==null){q=N,W++;continue}}U=_,W++}Q.push({glyphId:K.glyphId,cluster:K.cluster,mask:K.mask,codepoint:q});for(let H=Z+1;H<W;H++){let _=$[H];if(!_)continue;let N=_8(_.codepoint);if(RU(q,_.codepoint)===null&&N!==0)Q.push(_)}Z=W}else Q.push(K),Z++}return Q}function fX($,Q){if(Q===0)return $;if(Q===1){let Z=[];for(let K=0;K<$.length;K++){let J=$[K],q=q1(J.codepoint);if(q)for(let U=0;U<q.length;U++){let W=q[U];Z.push({glyphId:J.glyphId,cluster:J.cluster,mask:J.mask,codepoint:W})}else Z.push(J)}return J1(Z),Z}if(Q===2){let Z=[];for(let K=0;K<$.length;K++){let J=$[K],q=q1(J.codepoint);if(q)for(let U=0;U<q.length;U++){let W=q[U];Z.push({glyphId:J.glyphId,cluster:J.cluster,mask:J.mask,codepoint:W})}else Z.push(J)}return J1(Z),xX(Z)}if(Q===3){let Z=[];for(let K=0;K<$.length;K++){let J=$[K],q=q1(J.codepoint);if(q)for(let U=0;U<q.length;U++){let W=q[U];Z.push({glyphId:J.glyphId,cluster:J.cluster,mask:J.mask,codepoint:W})}else Z.push(J)}return J1(Z),Z}return $}function lX($){for(let Q=0;Q<$.length;Q++){let Z=$[Q];if(!Z)continue;let K=Z.codepoint;if(K>=768&&K<880)return!0;if(K>=1425&&K<1480)return!0;if(K>=1552&&K<2304)return!0;if(K>=2364&&K<2416)return!0;if(K>=2492&&K<2559)return!0;if(K>=2620&&K<2677)return!0;if(K>=2748&&K<2815)return!0;if(K>=2876&&K<2928)return!0;if(K>=3021&&K<3032)return!0;if(K>=3149&&K<3184)return!0;if(K>=3260&&K<3327)return!0;if(K>=3405&&K<3440)return!0;if(K>=3530&&K<3573)return!0;if(K>=3633&&K<3664)return!0;if(K>=3761&&K<3792)return!0;if(K>=3864&&K<3976)return!0;if(K>=4151&&K<4155)return!0;if(K>=6832&&K<6912)return!0;if(K>=7616&&K<7680)return!0;if(K>=12330&&K<12336)return!0;if(K>=12441&&K<12443)return!0;if(K>=65056&&K<65072)return!0}return!1}function C$($,Q,Z){if(!lX(Q))return;let K=new Map,J=(q)=>{let U=K.get(q);if(U===void 0)U=$.gdef?H8($.gdef,q):0,K.set(q,U);return U};for(let q=0;q<Q.length;q++){let U=Q[q],W=Z[q],H=J(U.glyphId),_=_8(U.codepoint);if(H!==3&&_===0)continue;let N=-1;for(let z=q-1;z>=0;z--){let G=Q[z],Y=J(G.glyphId),E=_8(G.codepoint);if(Y===1||Y===0&&E===0){N=z;break}}if(N<0)continue;let V=Q[N],X=Z[N],j=$.advanceWidth(V.glyphId);dX($,U,W,V,X,j,_),W.xAdvance=0,W.yAdvance=0}}function dX($,Q,Z,K,J,q,U){let W=$.advanceWidth(Q.glyphId),H=$.unitsPerEm,_=(q-W)/2,N=0;if(U>=200&&U<=240)N=H*0.7,_=(q-W)/2;else if(U>=202&&U<=220)N=-H*0.15,_=(q-W)/2;else if(U===1)_=(q-W)/2,N=H*0.3;else if(U>=7&&U<=9)N=-H*0.1,_=(q-W)/2;else if(U>=10&&U<=35){if(U<=22)N=-H*0.2;else N=U<30?-H*0.15:H*0.6;_=(q-W)/2}Z.xOffset=J.xOffset+_-q,Z.yOffset=J.yOffset+N}function S$($,Q,Z){if(!$.kern)return;for(let J=0;J<Q.length-1;J++){let q=Q[J],U=Q[J+1];if(!q||!U)continue;let W=Z[J];if(!W)continue;let H=$.gdef?H8($.gdef,q.glyphId):0,_=$.gdef?H8($.gdef,U.glyphId):0;if(H===3||_===3)continue;let N=nX($,q.glyphId,U.glyphId);if(N!==0)W.xAdvance+=N}}function nX($,Q,Z){let K=$.kern;if(!K)return 0;return A$(K,Q,Z)}function OU($,Q=!0){if($<1||$>20)throw Error(`Stylistic set number must be 1-20, got ${$}`);let Z=`ss${$.toString().padStart(2,"0")}`;return{tag:k(Z),enabled:Q}}function pX($,Q=!0){return $.map((Z)=>OU(Z,Q))}function PU($,Q=!0){if($<1||$>99)throw Error(`Character variant number must be 1-99, got ${$}`);let Z=`cv${$.toString().padStart(2,"0")}`;return{tag:k(Z),enabled:Q}}function oX($,Q=!0){return $.map((Z)=>PU(Z,Q))}function cX($=!0){return{tag:k("liga"),enabled:$}}function iX($=!0){return{tag:k("dlig"),enabled:$}}function sX($=!0){return{tag:k("hlig"),enabled:$}}function aX($=!0){return{tag:k("calt"),enabled:$}}function rX($=!0){return{tag:k("salt"),enabled:$}}function tX($=!0){return{tag:k("swsh"),enabled:$}}function vU($=!0){return{tag:k("smcp"),enabled:$}}function IU($=!0){return{tag:k("c2sc"),enabled:$}}function eX($=!0){return{tag:k("pcap"),enabled:$}}function $j($=!0){return[vU($),IU($)]}function Qj($=!0){return{tag:k("onum"),enabled:$}}function Zj($=!0){return{tag:k("lnum"),enabled:$}}function Kj($=!0){return{tag:k("pnum"),enabled:$}}function Jj($=!0){return{tag:k("tnum"),enabled:$}}function qj($=!0){return{tag:k("frac"),enabled:$}}function Uj($=!0){return{tag:k("ordn"),enabled:$}}function Wj($=!0){return{tag:k("zero"),enabled:$}}function Hj($=!0){return{tag:k("sups"),enabled:$}}function _j($=!0){return{tag:k("subs"),enabled:$}}function Nj($=!0){return{tag:k("sinf"),enabled:$}}function Vj($=!0){return{tag:k("case"),enabled:$}}function Xj($=!0){return{tag:k("cpsp"),enabled:$}}function jj($=!0){return{tag:k("kern"),enabled:$}}function kU($=!0){return{tag:k("vert"),enabled:$}}function CU($=!0){return{tag:k("vrt2"),enabled:$}}function SU($=!0){return{tag:k("vkna"),enabled:$}}function zj($=!0){return[kU($),CU($),SU($)]}function Gj($=!0){return{tag:k("ruby"),enabled:$}}function Yj($=!0){return{tag:k("hwid"),enabled:$}}function Ej($=!0){return{tag:k("fwid"),enabled:$}}function wj($=!0){return{tag:k("pwid"),enabled:$}}function Aj($=!0){return{tag:k("qwid"),enabled:$}}function Fj($=!0){return{tag:k("twid"),enabled:$}}function Lj($=!0){return{tag:k("jp78"),enabled:$}}function Dj($=!0){return{tag:k("jp83"),enabled:$}}function Bj($=!0){return{tag:k("jp90"),enabled:$}}function Mj($=!0){return{tag:k("jp04"),enabled:$}}function Rj($=!0){return{tag:k("smpl"),enabled:$}}function Tj($=!0){return{tag:k("trad"),enabled:$}}function hU($,Q=!0){return{tag:k($),enabled:Q}}function Oj($,Q=!0){return $.map((Z)=>hU(Z,Q))}function Pj(...$){let Q=[];for(let Z=0;Z<$.length;Z++){let K=$[Z];if(Array.isArray(K))Q.push(...K);else Q.push(K)}return Q}var yU=new WeakMap,vj=64,bU=["ccmp","locl","rlig","rclt","calt","liga"],mU=["kern","mark","mkmk"];function Ij($,Q,Z,K,J){if(K.length===0&&J===null)return Q===null?`${$}||${Z}||`:`${$}|${Q}|${Z}||`;let q=K.map((W)=>`${P9(W.tag)}:${W.enabled?"1":"0"}`).sort().join(","),U=J?J.map((W)=>W.toFixed(4)).join(","):"";return`${$}|${Q||""}|${Z}|${q}|${U}`}function U1($,Q,Z,K,J=[],q=null){let U=Ij(Q,Z,K,J,q),W=yU.get($);if(!W)W=new Map,yU.set($,W);let H=W.get(U);if(H)return H;let _=Cj($,Q,Z,K,J,q);if(W.size>=vj){let N=W.keys().next().value;if(N!==void 0)W.delete(N)}return W.set(U,_),_}function kj($,Q,Z,K,J=[],q=null){return U1($,Q,Z,K,J,q)}function Cj($,Q,Z,K,J=[],q=null){let U=k(Q.padEnd(4," ")),W=Z?k(Z.padEnd(4," ")):null,H=new Set;for(let j=0;j<bU.length;j++)H.add(k(bU[j]));for(let j=0;j<mU.length;j++)H.add(k(mU[j]));for(let j=0;j<J.length;j++){let z=J[j];if(z.enabled)H.add(z.tag);else H.delete(z.tag)}let _=gU($.gsub,U,W,H,q),N=gU($.gpos,U,W,H,q),V=new Map;for(let j=0;j<_.length;j++){let z=_[j];V.set(z.index,z)}let X=new Map;for(let j=0;j<N.length;j++){let z=N[j];X.set(z.index,z)}return{script:U,language:W,direction:K,gsubLookups:_,gposLookups:N,gsubLookupMap:V,gposLookupMap:X}}function gU($,Q,Z,K,J){if(!$)return[];let q=$,U=new Set,W=r9(q.scriptList,Q);if(!W)W=r9(q.scriptList,k("DFLT"));if(!W)W=r9(q.scriptList,k("latn"));if(!W)return[];let H=$$(W,Z);if(!H)return[];let _=q.featureVariations,N=_&&J?Z0(_,J):null,V=new Map;if(N){let G=N.featureTableSubstitution.substitutions;for(let Y=0;Y<G.length;Y++){let E=G[Y];V.set(E.featureIndex,E.alternateFeature.lookupListIndices)}}if(H.requiredFeatureIndex!==65535){let G=a0(q.featureList,H.requiredFeatureIndex);if(G){let E=V.get(H.requiredFeatureIndex)??G.feature.lookupListIndices;for(let w=0;w<E.length;w++)U.add(E[w])}}let X=H.featureIndices;for(let G=0;G<X.length;G++){let Y=X[G],E=a0(q.featureList,Y);if(!E)continue;if(K.has(E.featureTag)){let F=V.get(Y)??E.feature.lookupListIndices;for(let A=0;A<F.length;A++)U.add(F[A])}}let j=[],z=[...U].sort((G,Y)=>G-Y);for(let G=0;G<z.length;G++){let Y=z[G],E=q.lookups[Y];if(E)j.push({index:Y,lookup:E})}return j}var Sj=new Uint8Array([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,0,0,0,0,0,0,1,1,1,1,2,1,2,1,2,2,2,2,2,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,3,2,2,2,2,2,2,2,1,2,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,5,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,2,2,1,1,1,1,1,1,1,1,1,2,1,2,2,2,2,1,1,0,2,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,0,0,0,0,0,0,0,0,0,0,0,0,2,2,2,0,0,2]);var K0=0,uU=1,h$=2,xU=3,b$=4,W1=5;function y$($){if($>=1536&&$<=1791)return Sj[$-1536];if($<1536)return K0;if($>=1808&&$<=1810)return b$;if($>=2259&&$<=2303)return W1;return K0}function m$($){let Q=$.length;for(let Z=0;Z<Q;Z++){let K=$[Z],J=K.codepoint??0,q=y$(J);if(q===K0||q===W1)continue;let U=K0;for(let V=Z-1;V>=0;V--){let j=$[V].codepoint??0,z=y$(j);if(z!==W1){U=z;break}}let W=K0;for(let V=Z+1;V<Q;V++){let j=$[V].codepoint??0,z=y$(j);if(z!==W1){W=z;break}}let H=U===h$||U===b$||U===xU,_=W===h$||W===uU||W===xU,N=0;if(q===h$)if(H&&_)N=4;else if(H)N=2;else if(_)N=8;else N=1;else if(q===uU)if(H)N=2;else N=1;else if(q===b$)if(_)N=8;else N=1;if(N!==0)K.mask=K.mask&4294967280|N}}function u$($){return $>=44032&&$<=55203}function hj($){return $>=4352&&$<=4607||$>=43360&&$<=43388||$>=55216&&$<=55291}function yj($){return $>=4352&&$<4371||$>=43360&&$<=43388}function bj($){return $>=4449&&$<4470||$>=55216&&$<=55238}function mj($){return $>4519&&$<=4546||$>=55243&&$<=55291}function gj($){if(!u$($))return[$];let Q=$-44032,Z=Math.floor(Q/588),K=Math.floor(Q%588/28),J=Q%28,q=[4352+Z,4449+K];if(J>0)q.push(4519+J);return q}function fU($,Q,Z=0){let K=$-4352,J=Q-4449,q=Z===0?0:Z-4519;if(K<0||K>=19)return null;if(J<0||J>=21)return null;if(q<0||q>=28)return null;return 44032+K*588+J*28+q}function J0($){if(yj($))return 1;if(bj($))return 2;if(mj($))return 3;if(u$($))return($-44032)%28===0?4:5;return 0}var g$={ljmo:1,vjmo:2,tjmo:4};function x$($){for(let Q=0;Q<$.length;Q++){let Z=$[Q];switch(J0(Z.codepoint)){case 1:Z.mask|=g$.ljmo;break;case 2:Z.mask|=g$.vjmo;break;case 3:Z.mask|=g$.tjmo;break;case 4:case 5:break}}}function f$($){let Q=[],Z=0;while(Z<$.length){let K=$[Z];if(!K){Z++;continue}let J=J0(K.codepoint);if(J===1&&Z+1<$.length){let q=$[Z+1];if(!q){Q.push(K),Z++;continue}if(J0(q.codepoint)===2){let W=0,H=2;if(Z+2<$.length){let N=$[Z+2];if(N){if(J0(N.codepoint)===3)W=N.codepoint,H=3}}let _=fU(K.codepoint,q.codepoint,W);if(_!==null){Q.push({glyphId:K.glyphId,cluster:K.cluster,mask:K.mask,codepoint:_}),Z+=H;continue}}}if(J===4&&Z+1<$.length){let q=$[Z+1];if(!q){Q.push(K),Z++;continue}if(J0(q.codepoint)===3){let W=gj(K.codepoint),[H,_]=W;if(W.length===2&&H!==void 0&&_!==void 0){let N=fU(H,_,q.codepoint);if(N!==null){Q.push({glyphId:K.glyphId,cluster:K.cluster,mask:K.mask,codepoint:N}),Z+=2;continue}}}}Q.push(K),Z++}return Q}function lU($){return u$($)||hj($)||$>=12593&&$<=12686}function uj($){return $>=1424&&$<=1535||$>=64285&&$<=64335}function xj($){if($>=1425&&$<=1455)return 6;if($>=1456&&$<=1469)return 2;if($===1470)return 7;if($===1471)return 5;if($===1472||$===1475)return 8;if($===1473||$===1474)return 4;if($===1468)return 3;if($===1469)return 2;if($>=1488&&$<=1514)return 1;if($>=1520&&$<=1524)return 1;if($>=64285&&$<=64335)return 1;if(uj($))return 0;return 0}function l$($){let Q=0;for(let Z=0;Z<$.length;Z++){let K=$[Z];if(!K)continue;if(xj(K.codepoint)===1)Q=Z;K.mask=K.mask&4294901760|Q&65535}}function dU($){return $>=2304&&$<=2431}function nU($){return $>=2432&&$<=2559}function pU($){return $>=2560&&$<=2687}function oU($){return $>=2688&&$<=2815}function cU($){return $>=2816&&$<=2943}function iU($){return $>=2944&&$<=3071}function sU($){return $>=3072&&$<=3199}function aU($){return $>=3200&&$<=3327}function rU($){return $>=3328&&$<=3455}function tU($){return dU($)||nU($)||pU($)||oU($)||cU($)||iU($)||sU($)||aU($)||rU($)}function e6($){if($===8204)return 5;if($===8205)return 6;if($===9676)return 12;if(dU($)){if($>=2362&&$<=2363||$>=2366&&$<=2380||$>=2382&&$<=2383||$>=2389&&$<=2391)return 7;if($===2381)return 4;if($===2364)return 3;if($>=2305&&$<=2307)return 8;if($>=2385&&$<=2388)return 9;if($>=2308&&$<=2324||$===2400||$===2401||$===2418||$>=2422&&$<=2423)return 2;if($>=2325&&$<=2361||$>=2392&&$<=2399||$===2424||$===2425||$===2426||$>=2427&&$<=2428||$>=2430&&$<=2431){if($===2352)return 15;return 1}if($>=2406&&$<=2415)return 17;return 0}if(nU($)){if($>=2494&&$<=2500||$>=2503&&$<=2504||$>=2507&&$<=2508||$===2519)return 7;if($===2509)return 4;if($===2492)return 3;if($>=2433&&$<=2435)return 8;if($>=2437&&$<=2444||$>=2447&&$<=2448||$>=2451&&$<=2452||$===2528||$===2529)return 2;if($>=2453&&$<=2472||$>=2474&&$<=2480||$===2482||$>=2486&&$<=2489||$>=2524&&$<=2525||$>=2527&&$<=2529){if($===2480)return 15;return 1}return 0}if(pU($)||oU($)||cU($)||iU($)||sU($)||aU($)||rU($)){let Q=$&127;if(Q>=1&&Q<=3)return 8;if(Q>=5&&Q<=20)return 2;if(Q>=21&&Q<=57)return 1;if(Q===60)return 3;if(Q>=62&&Q<=76)return 7;if(Q===77)return 4;return 0}return 0}function eU($){let Q=[],Z=$.length;if(Z===0)return Q;let K=0;while(K<Z){let J=fj($,K);Q.push(J),K=J.end}return Q}function fj($,Q){let Z=$.length,K=Q,J=-1,q=!1;if(K+1<Z){let W=$[K],H=$[K+1];if(W&&H){let _=e6(W.codepoint??0),N=e6(H.codepoint??0);if(_===15&&N===4)q=!0,K+=2}}let U=-1;while(K<Z){let W=$[K];if(!W){K++;continue}let H=W.codepoint??0,_=e6(H);if(_===1||_===15){if(U=K,K++,K<Z){let N=$[K];if(N&&e6(N.codepoint??0)===3)K++}if(K<Z){let N=$[K];if(N&&e6(N.codepoint??0)===4){if(K++,K<Z){let V=$[K];if(V){let X=e6(V.codepoint??0);if(X===6||X===5)K++}}continue}}break}else if(_===2){K++;break}else if(_===3)K++;else{if(U===-1)K++;break}}J=U>=0?U:Q;while(K<Z){let W=$[K];if(!W){K++;continue}let H=W.codepoint??0,_=e6(H);if(_===7||_===8||_===9||_===3)K++;else if(_===4){K++;break}else break}if(K===Q)K=Q+1;return{start:Q,end:K,hasReph:q,baseConsonant:J}}var w6={nukt:1,akhn:2,rphf:4,rkrf:8,pref:16,blwf:32,abvf:64,half:128,pstf:256,vatu:512,cjct:1024,init:2048,pres:4096,abvs:8192,blws:16384,psts:32768};function $W($){if($>=2304&&$<=2431){if($===2367)return 0;if($>=2373&&$<=2376)return 1;if($>=2369&&$<=2372)return 2;return 3}if($>=2432&&$<=2559){if($===2495)return 0;if($===2503||$===2504)return 0;if($>=2497&&$<=2500)return 2;return 3}if($>=2944&&$<=3071){if($>=3014&&$<=3016)return 0;if($===3009||$===3010)return 2;return 3}if($>=3072&&$<=3199){if($>=3134&&$<=3136||$>=3142&&$<=3144)return 1;if($>=3137&&$<=3140)return 2;return 3}if($>=3200&&$<=3327){if($>=3262&&$<=3264||$>=3270&&$<=3272)return 1;if($>=3265&&$<=3268)return 2;return 3}if($>=3328&&$<=3455){if($>=3398&&$<=3400)return 0;if($>=3393&&$<=3395)return 2;return 3}if($>=2560&&$<=2687){if($===2623)return 0;if($===2625||$===2626)return 2;return 3}if($>=2688&&$<=2815){if($===2751)return 0;if($>=2753&&$<=2756)return 2;return 3}if($>=2816&&$<=2943){if($===2879)return 0;if($>=2881&&$<=2883)return 2;return 3}return 3}function d$($){let Q=eU($);for(let Z=0;Z<Q.length;Z++){let K=Q[Z];for(let J=K.start;J<K.end;J++){let q=$[J];if(q){q.mask=q.mask&65535|(Z&65535)<<16;let U=e6(q.codepoint);if(U===3)q.mask|=w6.nukt;if(U===4){if(J<K.baseConsonant)q.mask|=w6.half;else if(J>K.baseConsonant)q.mask|=w6.blwf|w6.pstf}if(U===1||U===15){if(J<K.baseConsonant)q.mask|=w6.half|w6.cjct;else if(J>K.baseConsonant)q.mask|=w6.blwf|w6.pstf|w6.vatu}if(K.hasReph&&J<K.start+2)q.mask|=w6.rphf;if(U===7)switch($W(q.codepoint)){case 0:q.mask|=w6.pref|w6.pres;break;case 1:q.mask|=w6.abvf|w6.abvs;break;case 2:q.mask|=w6.blwf|w6.blws;break;case 3:q.mask|=w6.pstf|w6.psts;break}if(U===8)q.mask|=w6.abvs|w6.psts}}}}function n$($){let Q=eU($);for(let Z=0;Z<Q.length;Z++){let K=Q[Z];lj($,K)}}function lj($,Q){let{start:Z,end:K,baseConsonant:J,hasReph:q}=Q,U=[];for(let W=J+1;W<K;W++){let H=$[W];if(!H)continue;if(e6(H.codepoint)===7){if($W(H.codepoint)===0)U.push({index:W,info:H})}}if(U.length>0){U.sort((W,H)=>H.index-W.index);for(let W=0;W<U.length;W++){let{index:H,info:_}=U[W];$.splice(H,1);let N=q?Z+2:Z;$.splice(N,0,_)}}if(q&&K>Z+2){let W=$[Z],H=$[Z+1];if(W&&H){let _=K-1;while(_>J){let N=$[_];if(!N)break;let V=e6(N.codepoint);if(V===8||V===9)_--;else break}if(_>Z+1){$.splice(Z,2);let N=_-2;$.splice(N+1,0,W,H)}}}}function G9($){if($<6016||$>6143)return 0;if($>=6016&&$<=6050)return 1;if($===6051||$===6052)return 2;if($>=6053&&$<=6067)return 2;if($>=6070&&$<=6085)return 3;if($===6086)return 8;if($===6087)return 9;if($===6088)return 7;if($===6089||$===6090)return 5;if($===6098)return 4;if($===6092)return 6;if($>=6091&&$<=6097)return 7;if($>=6099&&$<=6109)return 7;return 0}var T8={pref:1,blwf:2,abvf:4,pstf:8,cfar:16,pres:32,abvs:64,blws:128,psts:256,clig:512};function QW($){return $>=6016&&$<=6143||$>=6624&&$<=6655}function p$($){let Q=0;while(Q<$.length){let Z=$[Q];if(!Z){Q++;continue}let K=G9(Z.codepoint);if(K===0){Q++;continue}let J=Q,q=-1;if(K===1)q=Q;let U=Q+1;while(U<$.length){let W=$[U];if(!W){U++;continue}let H=G9(W.codepoint);if(H===0)break;if(H===1){let _=$[U-1];if(_&&G9(_.codepoint)!==4)break}if(H===4&&U+1<$.length){let _=$[U+1];if(_&&G9(_.codepoint)===1){W.mask|=T8.blwf,_.mask|=T8.blwf,U+=2;continue}}if(H===3)if(W.codepoint>=6081&&W.codepoint<=6083)W.mask|=T8.pref;else if(W.codepoint>=6071&&W.codepoint<=6074)W.mask|=T8.abvf;else if(W.codepoint===6075||W.codepoint===6076||W.codepoint===6077)W.mask|=T8.blwf;else W.mask|=T8.pstf;if(H===5)W.mask|=T8.abvs;if(H===6)W.mask|=T8.abvs;U++}Q=U}}function o$($){let Q=0;while(Q<$.length){let Z=$[Q];if(!Z){Q++;continue}if(G9(Z.codepoint)!==1){Q++;continue}let J=Q,q=Q+1;while(q<$.length){let U=$[q];if(!U)break;if(G9(U.codepoint)===4&&q+1<$.length)q+=2;else break}if(q<$.length){let U=$[q];if(U){let W=U.codepoint;if(W>=6081&&W<=6083){let H=U;for(let _=q;_>J;_--){let N=$[_-1];if(N)$[_]=N}$[J]=H}}}Q=q+1}}function Y9($){if($>=4096&&$<=4255){if($>=4096&&$<=4129)return 1;if($>=4131&&$<=4135)return 2;if($>=4137&&$<=4138)return 2;if($>=4139&&$<=4149)return 3;if($===4150)return 6;if($===4151)return 8;if($===4152)return 7;if($===4153)return 5;if($===4154)return 5;if($>=4155&&$<=4158)return 4;if($>=4159&&$<=4169){if($===4159)return 1;return 9}if($>=4170&&$<=4175)return 8;if($>=4176&&$<=4185)return 1;if($>=4186&&$<=4189)return 1;if($>=4192&&$<=4193)return 1;if($>=4194&&$<=4196)return 3;if($>=4197&&$<=4198)return 1;if($>=4199&&$<=4205)return 3;if($>=4206&&$<=4208)return 1;if($>=4209&&$<=4212)return 3;if($>=4213&&$<=4225)return 1;if($>=4226&&$<=4226)return 4;if($>=4227&&$<=4236)return 3;if($===4237)return 8;if($===4238)return 1;if($===4239)return 8;if($>=4240&&$<=4249)return 9}if($>=43616&&$<=43647){if($>=43616&&$<=43638)return 1;if($>=43639&&$<=43641)return 8;if($===43642)return 1;if($===43643)return 8;if($===43644)return 8;if($===43645)return 8;if($>=43646&&$<=43647)return 1}if($>=43488&&$<=43519){if($>=43488&&$<=43492)return 1;if($===43493)return 3;if($>=43494&&$<=43503)return 1;if($>=43504&&$<=43513)return 9;if($>=43514&&$<=43518)return 1}return 0}var i6={rphf:1,pref:2,blwf:4,pstf:8,pres:16,abvs:32,blws:64,psts:128};function ZW($){return $>=4096&&$<=4255||$>=43616&&$<=43647||$>=43488&&$<=43519}function c$($){let Q=0;while(Q<$.length){let Z=$[Q];if(!Z){Q++;continue}let K=Y9(Z.codepoint);if(K===0){Q++;continue}let J=-1,q=!1;if(K===1)J=Q;let U=Q+1;while(U<$.length){let W=$[U];if(!W){U++;continue}let H=Y9(W.codepoint);if(H===0)break;if(H===5){if(q=!0,W.mask|=i6.blwf,U+1<$.length){let _=$[U+1];if(_&&Y9(_.codepoint)===1){_.mask|=i6.blwf,U+=2;continue}}}if(H===4){let _=W.codepoint;if(_===4155)W.mask|=i6.pref;else if(_===4156)W.mask|=i6.pref;else if(_===4157)W.mask|=i6.blwf;else if(_===4158)W.mask|=i6.blwf}if(H===3){let _=W.codepoint;if(_===4145)W.mask|=i6.pref;else if(_===4141||_===4142||_===4146)W.mask|=i6.abvs;else if(_===4143||_===4144)W.mask|=i6.blws;else W.mask|=i6.psts}if(H===6||H===8)W.mask|=i6.abvs;if(H===1&&!q){if(U>0){let _=$[U-1];if(_){if(Y9(_.codepoint)!==5)break}}}q=!1,U++}Q=U}}function i$($){let Q=0;while(Q<$.length){let Z=$[Q];if(!Z){Q++;continue}if(Y9(Z.codepoint)!==1){Q++;continue}let J=Q,q=[],U=Q+1;while(U<$.length){let W=$[U];if(!W){U++;continue}let H=Y9(W.codepoint);if(W.codepoint===4145){q.push(W),$.splice(U,1);continue}if(W.codepoint===4156){q.push(W),$.splice(U,1);continue}if(H===1||H===0)break;U++}if(q.length>0)$.splice(J,0,...q),Q+=q.length;Q++}}function a$($){return $>=3584&&$<=3711}function r$($){return $>=3712&&$<=3839}function s$($){if(a$($)){if($>=3585&&$<=3630)return 1;if($===3631)return 1;if($>=3648&&$<=3652)return 2;if($===3633)return 3;if($>=3636&&$<=3639)return 3;if($===3655)return 3;if($>=3640&&$<=3642)return 4;if($===3632)return 5;if($===3634||$===3635)return 5;if($===3653)return 5;if($===3635)return 8;if($>=3656&&$<=3659)return 6;if($===3660)return 6;if($===3661)return 7;if($===3662)return 7;if($>=3664&&$<=3675)return 9;return 0}if(r$($)){if($>=3713&&$<=3758)return 1;if($>=3776&&$<=3780)return 2;if($===3761)return 3;if($>=3764&&$<=3767)return 3;if($===3771)return 3;if($>=3768&&$<=3769)return 4;if($===3772)return 4;if($===3760)return 5;if($===3762||$===3763)return 5;if($>=3784&&$<=3789)return 6;if($>=3792&&$<=3801)return 9;return 0}return 0}function H1($){let Q=0,Z=-1;for(let K=0;K<$.length;K++){let J=$[K];if(!J)continue;let q=s$(J.codepoint);if(q===1)Q++,Z=K;if(J.mask=J.mask&4294967040|q&255,J.mask=J.mask&65535|(Q&65535)<<16,q===2)J.mask|=256}}function _1($){let Q=0;while(Q<$.length){let Z=$[Q];if(!Z){Q++;continue}if(s$(Z.codepoint)===2){let J=Q+1;while(J<$.length){let q=$[J];if(!q){J++;continue}let U=s$(q.codepoint??0);if(U===1){let W=Z;$[Q]=q,$[J]=W;break}if(U!==2)break;J++}}Q++}}function KW($){return["bali","batk","brah","bugi","buhd","cakm","cham","dupl","egyp","gran","hano","java","kthi","khar","khmr","khoj","lana","lepc","limb","mahj","modi","mtei","mymr","newa","phlp","rjng","saur","shrd","sidd","sind","sinh","sund","sylo","tagb","takr","tale","talu","tavt","tibt","tirh"].includes($)}function N8($){if($===8204)return 21;if($===8205)return 20;if($===847)return 2;if($===8288)return 19;if($>=65024&&$<=65039)return 18;if($>=917760&&$<=917999)return 18;if($>=4096&&$<=4255){if($>=4096&&$<=4128)return 1;if($>=4129&&$<=4138)return 10;if($>=4139&&$<=4146)return 31;if($>=4150&&$<=4151)return 32;if($===4153)return 8;if($===4154)return 8;if($>=4155&&$<=4158)return 38;if($>=4160&&$<=4169)return 7;return 0}if($>=6016&&$<=6143){if($>=6016&&$<=6050)return 1;if($>=6051&&$<=6067)return 10;if($>=6070&&$<=6085)return 31;if($===6098)return 8;if($>=6086&&$<=6088)return 32;return 0}if($>=3840&&$<=4095){if($>=3840&&$<=3863)return 14;if($>=3953&&$<=3965)return 28;if($>=3984&&$<=4028)return 17;if($>=3904&&$<=3948)return 1;return 0}if($>=3584&&$<=3711){if($>=3585&&$<=3630)return 1;if($>=3632&&$<=3642)return 31;if($>=3648&&$<=3652)return 30;if($>=3656&&$<=3659)return 32;return 0}if($>=3712&&$<=3839){if($>=3713&&$<=3747)return 1;if($>=3760&&$<=3772)return 31;if($>=3776&&$<=3780)return 30;if($>=3784&&$<=3789)return 32;return 0}if($>=57344&&$<=57599){if($===57344)return 13;if($===57345)return 24;if($===57346)return 25;if($===57347)return 26;if($===57348)return 27;if($===57349)return 4;if($===57350)return 12;if($===57351)return 9;if($===57352)return 23;if($===57353)return 29;if($===57354)return 37;if($===57355)return 39;if($===57356)return 40;if($===57357)return 33;if($===57358)return 34;if($===57359)return 35;if($===57360)return 36;if($===57361)return 5;if($===57362)return 6}return 0}var V6={rphf:1,pref:2,blwf:4,abvf:8,pstf:16,half:32,cjct:64,vatu:128,pres:256,abvs:512,blws:1024,psts:2048,haln:4096};function JW($){let Q=[],Z=$.length;if(Z===0)return Q;let K=0;while(K<Z){let J=dj($,K);Q.push(J),K=J.end}return Q}function dj($,Q){let Z=$.length,K=Q,J=-1,q=!1;if(K+1<Z){let U=$[K],W=$[K+1];if(U&&W){let H=N8(U.codepoint??0),_=N8(W.codepoint??0);if(H===13&&_===8)q=!0,K+=2}}while(K<Z){let U=$[K];if(!U){K++;continue}let W=N8(U.codepoint??0);if(W===1||W===10||W===7||W===22){J=K,K++;break}if(W===26||W===30||W===39){K++;continue}if(J===-1)K++;break}if(J===-1)J=Q;while(K<Z){let U=$[K];if(!U){K++;continue}let W=N8(U.codepoint??0);if(W===8){if(K++,K<Z){let H=$[K];if(H){let _=N8(H.codepoint??0);if(_===1||_===4||_===17){K++;continue}if(_===20||_===21)K++}}continue}if(W===17||W===4){K++;continue}if(W===12||W===9){K++;continue}break}while(K<Z){let U=$[K];if(!U){K++;continue}let W=N8(U.codepoint??0);if(W===28||W===29||W===30||W===31||W===23){K++;continue}if(W===37||W===38||W===39||W===40){K++;continue}if(W===24||W===25||W===26||W===27){K++;continue}if(W===32||W===33){K++;continue}if(W===34||W===35||W===36||W===5||W===6){K++;continue}if(W===2||W===18){K++;continue}break}if(K===Q)K=Q+1;return{start:Q,end:K,base:J,hasReph:q}}function qW($){let Q=JW($);for(let Z=0;Z<Q.length;Z++){let K=Q[Z];for(let J=K.start;J<K.end;J++){let q=$[J];if(!q)continue;q.mask=q.mask&65535|(Z&65535)<<16;let U=N8(q.codepoint);if(K.hasReph&&J<K.start+2)q.mask|=V6.rphf;if(J<K.base){if(U===1||U===4||U===17)q.mask|=V6.half|V6.cjct}if(J>K.base){if(U===1||U===4||U===17)q.mask|=V6.blwf|V6.pstf|V6.vatu}if(U===8||U===9)if(J<K.base)q.mask|=V6.half;else q.mask|=V6.haln;if(U===30)q.mask|=V6.pref|V6.pres;else if(U===28)q.mask|=V6.abvf|V6.abvs;else if(U===29)q.mask|=V6.blwf|V6.blws;else if(U===31||U===23)q.mask|=V6.pstf|V6.psts;if(U===37)q.mask|=V6.abvs;else if(U===38)q.mask|=V6.blws;else if(U===39)q.mask|=V6.pres;else if(U===40)q.mask|=V6.psts;if(U===32)q.mask|=V6.abvs;else if(U===33)q.mask|=V6.blws;if(U===34)q.mask|=V6.abvs;else if(U===35)q.mask|=V6.blws;else if(U===36||U===5||U===6)q.mask|=V6.psts}}}function UW($){let Q=JW($);for(let Z=0;Z<Q.length;Z++){let K=Q[Z];nj($,K)}}function nj($,Q){let{start:Z,end:K,base:J,hasReph:q}=Q,U=[];for(let W=J+1;W<K;W++){let H=$[W];if(!H)continue;let _=N8(H.codepoint);if(_===30||_===39)U.push({index:W,info:H})}if(U.length>0){U.sort((W,H)=>H.index-W.index);for(let W=0;W<U.length;W++){let{index:H,info:_}=U[W];$.splice(H,1);let N=q?Z+2:Z;$.splice(N,0,_)}}if(q&&K>Z+2){let W=$[Z],H=$[Z+1];if(W&&H){let _=K-1;while(_>J){let N=$[_];if(!N)break;let V=N8(N.codepoint);if(V===32||V===33||V===34||V===35||V===36||V===5||V===6)_--;else break}if(_>Z+1){$.splice(Z,2);let N=_-2;$.splice(N+1,0,W,H)}}}}var t$=new Uint16Array(16),e$=new Uint16Array(16);function pj($){return $ instanceof u8?$.font:$}var WW=new WeakMap;function oj($){if($ instanceof u8)return $;let Q=WW.get($);if(!Q)Q=new u8($),WW.set($,Q);return Q}function V8($,Q,Z){let K=new Uint8Array(Q.infos.length),J=$.gdef;if(!J||Z===0)return K;let q=Z&y6.IgnoreBaseGlyphs,U=Z&y6.IgnoreLigatures,W=Z&y6.IgnoreMarks,H=s0(Z);for(let _=0;_<Q.infos.length;_++){let N=Q.infos[_];if(!N)continue;let V=H8(J,N.glyphId);if(q&&V===1)K[_]=1;else if(U&&V===2)K[_]=1;else if(W&&V===3)K[_]=1;else if(H!==0&&V===3){if(J.markAttachClassDef.get(N.glyphId)!==H)K[_]=1}}return K}function HW($,Q){let Z=new Int16Array(Q),K=-1;for(let J=Q-1;J>=0;J--)if(Z[J]=K,!$[J])K=J;return Z}function cj($,Q){if(!Q.gdef)return!1;let{infos:Z,length:K}=$;for(let J=0;J<K;J++){let q=Z[J];if(!q)continue;if(H8(Q.gdef,q.glyphId)===3)return!0}return!1}function ij($,Q,Z){let K=new Int16Array($.infos.length);K.fill(-1);let J=-1;for(let q=0;q<$.infos.length;q++){let U=$.infos[q];if(!U)continue;let W=l8(Z,U.glyphId,Q);if(W===1||W===0||W===2)J=q;else if(W===3)K[q]=J}return K}var sj=[];function aj($,Q,Z={}){let K=sj.pop();if(!K)K=O8.withCapacity(64);return _W($,Q,K,Z),K}function _W($,Q,Z,K={}){let J=pj($),q=oj($),U=K.script??Q.script??"latn",W=K.language??Q.language??null,H=K.direction??"ltr",_=K.features??[],N=q.normalizedCoords.length>0?q.normalizedCoords:null,V=U1(J,U,W,H,_,N);if(Z.reset(),Z.direction=Q.direction,Z.script=U,Z.language=W,Z.initFromCodepointsWithFont(Q.codepoints,Q.clusters,J),rj(Z,U),ej(J,Z,V),zz(q,Z),J.gpos!==null&&V.gposLookups.length>0)Gz(J,Z,V);else S$(J,Z.infos,Z.positions),C$(J,Z.infos,Z.positions);if(!J.gsub&&J.morx)Cz(J,Z);if(H==="rtl")Z.reverse()}function rj($,Q){if(Q==="arab"||Q==="syrc"||Q==="mand"||Q==="nko "){m$($.infos);return}if(Q==="hebr"){l$($.infos);return}if(Q==="hang"||Q==="kore"){let Z=f$($.infos);if(Z.length!==$.infos.length)$.initFromInfos(Z);x$($.infos);return}if(Q==="deva"||Q==="beng"||Q==="guru"||Q==="gujr"||Q==="orya"||Q==="taml"||Q==="telu"||Q==="knda"||Q==="mlym"){d$($.infos),n$($.infos);return}if(Q==="thai"||Q==="lao "){H1($.infos),_1($.infos);return}if(Q==="khmr"){p$($.infos),o$($.infos);return}if(Q==="mymr"){c$($.infos),i$($.infos);return}if(KW(Q)){qW($.infos),UW($.infos);return}if(Q==="Zyyy"||Q==="Zinh"||Q==="Zzzz")tj($.infos)}function tj($){if($.length===0)return;let Q=Math.min(10,$.length);for(let Z=0;Z<Q;Z++){let J=$[Z].codepoint;if(J>=1536&&J<=1791||J>=1872&&J<=1919||J>=2208&&J<=2303){m$($);return}if(J>=1424&&J<=1535){l$($);return}if(lU(J)){let q=f$($);if(q.length!==$.length)$.length=0,$.push(...q);x$($);return}if(tU(J)){d$($),n$($);return}if(a$(J)){H1($),_1($);return}if(r$(J)){H1($),_1($);return}if(QW(J)){p$($),o$($);return}if(ZW(J)){c$($),i$($);return}}}function ej($,Q,Z){let K=Z.gsubLookups,J=new N6,q=Q.infos;for(let U=0;U<Q.length;U++)J.add(q[U].glyphId);for(let U=0;U<K.length;U++){let W=K[U];if(!J.mayIntersect(W.lookup.digest))continue;let H=Q.length;if($z($,Q,W.lookup,Z),Q.length!==H){J=new N6;for(let _=0;_<Q.length;_++)J.add(q[_].glyphId)}}Q.compact()}function $z($,Q,Z,K){switch(Z.type){case 1:Qz($,Q,Z);break;case 2:Zz($,Q,Z);break;case 3:Kz($,Q,Z);break;case 4:Jz($,Q,Z);break;case 5:qz($,Q,Z,K);break;case 6:Uz($,Q,Z,K);break;case 8:Wz($,Q,Z);break}}function Qz($,Q,Z){let K=Q.infos,J=K.length,q=Z.digest;if(Z.flag===0||!$.gdef){if(Z.subtables.length===1){let W=Z.subtables[0];if(W.format===1&&W.deltaGlyphId!==void 0){let H=W.deltaGlyphId;for(let _=0;_<J;_++){let N=K[_];if(!q.mayHave(N.glyphId))continue;if(W.coverage.get(N.glyphId)!==null)N.glyphId=N.glyphId+H&65535}}else if(W.format===2&&W.substituteGlyphIds){let H=W.substituteGlyphIds;for(let _=0;_<J;_++){let N=K[_];if(!q.mayHave(N.glyphId))continue;let V=W.coverage.get(N.glyphId);if(V!==null){let X=H[V];if(X!==void 0)N.glyphId=X}}}return}for(let W=0;W<J;W++){let H=K[W];if(!q.mayHave(H.glyphId))continue;let _=e9(Z,H.glyphId);if(_!==null)H.glyphId=_}return}let U=V8($,Q,Z.flag);for(let W=0;W<J;W++){if(U[W])continue;let H=K[W];if(!q.mayHave(H.glyphId))continue;let _=e9(Z,H.glyphId);if(_!==null)H.glyphId=_}}function Zz($,Q,Z){let K=Z.digest,J=0;while(J<Q.infos.length){let q=Q.infos[J];if(!q){J++;continue}if(Y6($,q.glyphId,Z.flag)){J++;continue}if(!K.mayHave(q.glyphId)){J++;continue}let U=!1,W=Z.subtables;for(let H=0;H<W.length;H++){let _=W[H],N=_.coverage.get(q.glyphId);if(N===null)continue;let V=_.sequences[N];if(!V||V.length===0)continue;let X=V[0];if(X===void 0)continue;q.glyphId=X;for(let j=1;j<V.length;j++){let G={glyphId:V[j],cluster:q.cluster,mask:q.mask,codepoint:q.codepoint},Y={xAdvance:0,yAdvance:0,xOffset:0,yOffset:0};Q.insertGlyph(J+j,G,Y)}J+=V.length,U=!0;break}if(!U)J++}}function Kz($,Q,Z){let K=Q.infos,J=Z.subtables,q=Z.digest;for(let U=0;U<K.length;U++){let W=K[U];if(Y6($,W.glyphId,Z.flag))continue;if(!q.mayHave(W.glyphId))continue;for(let H=0;H<J.length;H++){let _=J[H],N=_.coverage.get(W.glyphId);if(N===null)continue;let V=_.alternateSets[N];if(!V||V.length===0)continue;let X=V[0];if(X===void 0)continue;W.glyphId=X;break}}}function Jz($,Q,Z){let K=Q.infos,J=K.length,q=Z.flag!==0&&$.gdef!==null,U=Z.digest,W=null;if(q)W=V8($,Q,Z.flag);let H=0;while(H<J){if(Q.isDeleted(H)){H++;continue}let _=K[H];if(!_){H++;continue}if(W?.[H]){H++;continue}if(!U.mayHave(_.glyphId)){H++;continue}let N=1;t$[0]=H,e$[0]=_.glyphId;for(let X=H+1;X<J&&N<16;X++){if(Q.isDeleted(X))continue;let j=K[X];if(!j)continue;if(W?.[X])continue;t$[N]=X,e$[N]=j.glyphId,N++}let V=gq(Z,e$,N,0);if(V){_.glyphId=V.ligatureGlyph;for(let X=1;X<V.consumed;X++){let j=t$[X];if(j!==void 0){let z=K[j];if(z)_.cluster=Math.min(_.cluster,z.cluster);Q.markDeleted(j)}}}H++}}function qz($,Q,Z,K){let J=Q.infos,q=J.length,U=Z.digest,W=null;if(Z.flag!==0&&$.gdef!==null)W=V8($,Q,Z.flag);let H=Z.subtables;for(let _=0;_<q;_++){let N=J[_];if(!N)continue;if(W?.[_])continue;if(!U.mayHave(N.glyphId))continue;for(let V=0;V<H.length;V++){let X=H[V],j=!1,z=[];if(X.format===1){let G=Hz($,Q,_,X,Z.flag);if(G)j=!0,z=G}else if(X.format===2){let G=_z($,Q,_,X,Z.flag);if(G)j=!0,z=G}else if(X.format===3){if(Nz($,Q,_,X,Z.flag))j=!0,z=X.lookupRecords}if(j){NW($,Q,_,z,K);break}}}}function Uz($,Q,Z,K){let J=Q.infos,q=J.length,U=Z.digest,W=null;if(Z.flag!==0&&$.gdef!==null)W=V8($,Q,Z.flag);let H=Z.subtables;for(let _=0;_<q;_++){let N=J[_];if(!N)continue;if(W?.[_])continue;if(!U.mayHave(N.glyphId))continue;for(let V=0;V<H.length;V++){let X=H[V],j=!1,z=[];if(X.format===1){let G=Vz($,Q,_,X,Z.flag);if(G)j=!0,z=G}else if(X.format===2){let G=Xz($,Q,_,X,Z.flag);if(G)j=!0,z=G}else if(X.format===3){if(jz($,Q,_,X,Z.flag))j=!0,z=X.lookupRecords}if(j){NW($,Q,_,z,K);break}}}}function Wz($,Q,Z){let K=Q.infos,J=Z.subtables,q=Z.digest;for(let U=K.length-1;U>=0;U--){let W=K[U];if(!W)continue;if(Y6($,W.glyphId,Z.flag))continue;if(!q.mayHave(W.glyphId))continue;for(let H=0;H<J.length;H++){let _=J[H],N=_.coverage.get(W.glyphId);if(N===null)continue;let V=!0,X=U+1,j=_.backtrackCoverages;for(let w=0;w<j.length;w++){let F=j[w];while(X<K.length&&Y6($,K[X]?.glyphId,Z.flag))X++;if(X>=K.length||F.get(K[X]?.glyphId)===null){V=!1;break}X++}if(!V)continue;let z=!0,G=U-1,Y=_.lookaheadCoverages;for(let w=0;w<Y.length;w++){let F=Y[w];while(G>=0&&Y6($,K[G]?.glyphId,Z.flag))G--;if(G<0||F.get(K[G]?.glyphId)===null){z=!1;break}G--}if(!z)continue;let E=_.substituteGlyphIds[N];if(E!==void 0)W.glyphId=E;break}}}function Hz($,Q,Z,K,J){let q=Q.infos[Z]?.glyphId,U=K.coverage.get(q);if(U===null)return null;let W=K.ruleSets[U];if(!W)return null;for(let H=0;H<W.length;H++){let _=W[H];if(E9($,Q,Z+1,_.inputSequence,J))return _.lookupRecords}return null}function _z($,Q,Z,K,J){let q=Q.infos[Z]?.glyphId;if(K.coverage.get(q)===null)return null;let W=K.classDef.get(q),H=K.classRuleSets[W];if(!H)return null;for(let _=0;_<H.length;_++){let N=H[_];if(w9($,Q,Z+1,N.inputClasses,K.classDef,J))return N.lookupRecords}return null}function Nz($,Q,Z,K,J){let q=Q.infos,U=K.coverages,W=Z;for(let H=0;H<U.length;H++){let _=U[H];while(W<q.length&&Y6($,q[W]?.glyphId,J))W++;if(W>=q.length)return!1;if(_.get(q[W]?.glyphId)===null)return!1;W++}return!0}function Vz($,Q,Z,K,J){let q=Q.infos[Z]?.glyphId,U=K.coverage.get(q);if(U===null)return null;let W=K.chainRuleSets[U];if(!W)return null;for(let H=0;H<W.length;H++){let _=W[H];if(!XW($,Q,Z-1,_.backtrackSequence,J))continue;if(!E9($,Q,Z+1,_.inputSequence,J))continue;let N=Z+1;for(let V=0;V<_.inputSequence.length;V++){while(N<Q.infos.length&&Y6($,Q.infos[N]?.glyphId,J))N++;N++}if(!E9($,Q,N,_.lookaheadSequence,J))continue;return _.lookupRecords}return null}function Xz($,Q,Z,K,J){let q=Q.infos[Z]?.glyphId;if(K.coverage.get(q)===null)return null;let W=K.inputClassDef.get(q),H=K.chainClassRuleSets[W];if(!H)return null;for(let _=0;_<H.length;_++){let N=H[_];if(!jW($,Q,Z-1,N.backtrackClasses,K.backtrackClassDef,J))continue;if(!w9($,Q,Z+1,N.inputClasses,K.inputClassDef,J))continue;let V=Q.infos,X=Z+1;for(let j=0;j<N.inputClasses.length;j++){while(X<V.length&&Y6($,V[X]?.glyphId,J))X++;X++}if(!w9($,Q,X,N.lookaheadClasses,K.lookaheadClassDef,J))continue;return N.lookupRecords}return null}function jz($,Q,Z,K,J){let q=Q.infos,U=Z-1,W=K.backtrackCoverages;for(let X=0;X<W.length;X++){let j=W[X];while(U>=0&&Y6($,q[U]?.glyphId,J))U--;if(U<0)return!1;if(j.get(q[U]?.glyphId)===null)return!1;U--}let H=Z,_=K.inputCoverages;for(let X=0;X<_.length;X++){let j=_[X];while(H<q.length&&Y6($,q[H]?.glyphId,J))H++;if(H>=q.length)return!1;if(j.get(q[H]?.glyphId)===null)return!1;H++}let N=H,V=K.lookaheadCoverages;for(let X=0;X<V.length;X++){let j=V[X];while(N<q.length&&Y6($,q[N]?.glyphId,J))N++;if(N>=q.length)return!1;if(j.get(q[N]?.glyphId)===null)return!1;N++}return!0}function NW($,Q,Z,K,J){let q=K.length;if(q===0)return;if(q===1){let W=K[0],H=J.gsubLookupMap.get(W.lookupListIndex);if(!H)return;let _=Z+W.sequenceIndex;if(_>=Q.infos.length)return;let N=Q.infos[_];if(!N)return;if(H.lookup.type===1){let V=e9(H.lookup,N.glyphId);if(V!==null)N.glyphId=V}return}let U=new Uint8Array(q);for(let W=0;W<q;W++){let H=-1,_=-1;for(let z=0;z<q;z++){if(U[z])continue;let G=K[z]?.sequenceIndex;if(G>_)_=G,H=z}if(H<0)break;U[H]=1;let N=K[H],V=J.gsubLookupMap.get(N.lookupListIndex);if(!V)continue;let X=Z+N.sequenceIndex;if(X>=Q.infos.length)continue;let j=Q.infos[X];if(!j)continue;if(V.lookup.type===1){let z=e9(V.lookup,j.glyphId);if(z!==null)j.glyphId=z}}}function zz($,Q){let{infos:Z,positions:K}=Q,J=Z.length,U=$.font.hmtx.hMetrics,W=U.length,H=U[W-1]?.advanceWidth??0;if(!($.normalizedCoords.length>0)){for(let N=0;N<J;N++){let V=Z[N].glyphId;K[N].xAdvance=V<W?U[V]?.advanceWidth??0:H}return}for(let N=0;N<J;N++){let V=Z[N];K[N].xAdvance=$.advanceWidth(V.glyphId)}}function l8($,Q,Z){let K=Z.get(Q);if(K===void 0)K=H8($.gdef,Q),Z.set(Q,K);return K}function Gz($,Q,Z){let K=new N6,J=Q.infos,q=Q.length;for(let N=0;N<q;N++)K.add(J[N].glyphId);let U=cj(Q,$),W,H;if(U)H=new Map,W=ij(Q,H,$);else W=Yz,H=Ez;let _=Z.gposLookups;for(let N=0;N<_.length;N++){let V=_[N];if(!K.mayIntersect(V.lookup.digest))continue;$Q($,Q,V.lookup,Z,H,W,U)}}var Yz=new Int16Array(0),Ez=new Map;function $Q($,Q,Z,K,J,q,U){switch(Z.type){case 1:wz($,Q,Z,U);break;case 2:Az($,Q,Z,U);break;case 3:Fz($,Q,Z,U);break;case 4:if(!U)break;Lz($,Q,Z,J,q);break;case 5:if(!U)break;Dz($,Q,Z,J,q);break;case 6:if(!U)break;Bz($,Q,Z,J);break;case 7:Mz($,Q,Z,K,J,q,U);break;case 8:Rz($,Q,Z,K,J,q,U);break}}function wz($,Q,Z,K){let{infos:J,positions:q}=Q,U=J.length,W=Z.digest,H=Z.subtables,_=K&&Z.flag!==0&&$.gdef!==null;if(H.length===1&&!_){let X=H[0];if(X.format===1&&X.value){let j=X.value,z=j.xPlacement!==void 0&&j.xPlacement!==0,G=j.yPlacement!==void 0&&j.yPlacement!==0,Y=j.xAdvance!==void 0&&j.xAdvance!==0,E=j.yAdvance!==void 0&&j.yAdvance!==0;if(!z&&!G&&!Y&&!E)return;for(let w=0;w<U;w++){let F=J[w];if(!W.mayHave(F.glyphId))continue;if(X.coverage.get(F.glyphId)===null)continue;let A=q[w];if(z)A.xOffset+=j.xPlacement;if(G)A.yOffset+=j.yPlacement;if(Y)A.xAdvance+=j.xAdvance;if(E)A.yAdvance+=j.yAdvance}return}}let N=(X)=>{let j=J[X];if(!W.mayHave(j.glyphId))return;let z=q[X];if(!z)return;for(let G=0;G<H.length;G++){let Y=H[G],E=Y.coverage.get(j.glyphId);if(E===null)continue;let w=Y.format===1?Y.value:Y.values?.[E];if(w){if(w.xPlacement)z.xOffset+=w.xPlacement;if(w.yPlacement)z.yOffset+=w.yPlacement;if(w.xAdvance)z.xAdvance+=w.xAdvance;if(w.yAdvance)z.yAdvance+=w.yAdvance}break}};if(!_){for(let X=0;X<U;X++)N(X);return}let V=V8($,Q,Z.flag);for(let X=0;X<U;X++){if(V[X])continue;N(X)}}function Az($,Q,Z,K){let{infos:J,positions:q}=Q,U=J.length,W=Z.digest,H=Z.subtables,_=H.length;if(!(K&&Z.flag!==0&&$.gdef!==null)){if(_===1){let j=H[0],z=j.coverage;if(j.format===1){let G=j.pairSets;for(let Y=0;Y<U-1;Y++){let E=J[Y].glyphId;if(!W.mayHave(E))continue;let w=z.get(E);if(w===null)continue;let F=G[w];if(!F)continue;let A=J[Y+1].glyphId,B=F.pairValueRecords,L=0,O=B.length-1;while(L<=O){let M=L+O>>>1,P=B[M],T=P.secondGlyph;if(T<A)L=M+1;else if(T>A)O=M-1;else{let x=P.value1.xAdvance;if(x)q[Y].xAdvance+=x;break}}}}else{let{classDef1:G,classDef2:Y,class1Records:E}=j,w=E.length;for(let F=0;F<U-1;F++){let A=J[F].glyphId;if(!W.mayHave(A))continue;if(z.get(A)===null)continue;let B=G.get(A);if(B>=w)continue;let L=E[B],O=J[F+1].glyphId,M=Y.get(O),P=L.class2Records;if(M>=P.length)continue;let T=P[M].value1.xAdvance;if(T)q[F].xAdvance+=T}}return}if(_===2){let j=H[0],z=H[1];if(j.format===1&&z.format===2){let{coverage:G,pairSets:Y}=j,E=z.coverage,w=z.classDef1,F=z.classDef2,A=z.class1Records,B=A.length;for(let L=0;L<U-1;L++){let O=J[L].glyphId;if(!W.mayHave(O))continue;let M=J[L+1].glyphId,P=G.get(O);if(P!==null){let T=Y[P];if(T){let x=T.pairValueRecords,I=0,f=x.length-1,l=!1;while(I<=f){let C=I+f>>>1,R=x[C],y=R.secondGlyph;if(y<M)I=C+1;else if(y>M)f=C-1;else{let u=R.value1.xAdvance;if(u)q[L].xAdvance+=u;l=!0;break}}if(l)continue}}if(E.get(O)!==null){let T=w.get(O);if(T<B){let x=A[T],I=F.get(M),f=x.class2Records;if(I<f.length){let l=f[I].value1.xAdvance;if(l)q[L].xAdvance+=l}}}}return}}for(let j=0;j<U-1;j++){let z=J[j];if(!W.mayHave(z.glyphId))continue;let G=J[j+1],Y=q[j],E=q[j+1];H$(Z,z.glyphId,G.glyphId,Y,E)}return}let V=V8($,Q,Z.flag),X=HW(V,U);for(let j=0;j<U-1;j++){if(V[j])continue;let z=X[j];if(z<0)break;let G=J[j];if(!W.mayHave(G.glyphId))continue;let Y=J[z],E=q[j],w=q[z];H$(Z,G.glyphId,Y.glyphId,E,w)}}function Fz($,Q,Z,K){let{infos:J,positions:q}=Q,U=J.length,W=Z.digest,H=Z.subtables,_=(j,z)=>{let G=J[j],Y=J[z];if(!W.mayHave(G.glyphId)&&!W.mayHave(Y.glyphId))return;for(let E=0;E<H.length;E++){let w=H[E],F=w.coverage.get(G.glyphId),A=w.coverage.get(Y.glyphId);if(F===null||A===null)continue;let B=w.entryExitRecords[F],L=w.entryExitRecords[A];if(!B?.exitAnchor||!L?.entryAnchor)continue;let O=B.exitAnchor,M=L.entryAnchor,P=q[z];if(P)P.yOffset=O.yCoordinate-M.yCoordinate;break}};if(!(K&&Z.flag!==0&&$.gdef!==null)){for(let j=0;j<U-1;j++)_(j,j+1);return}let V=V8($,Q,Z.flag),X=HW(V,U);for(let j=0;j<U-1;j++){if(V[j])continue;let z=X[j];if(z<0)break;_(j,z)}}function Lz($,Q,Z,K,J){let q=Z.digest,U=Q.infos,W=Q.positions,H=Z.subtables;for(let _=0;_<U.length;_++){let N=U[_];if(!N)continue;if(!q.mayHave(N.glyphId))continue;if(l8($,N.glyphId,K)!==3)continue;let V=J[_];if(V<0)continue;let X=U[V];if(!X)continue;for(let j=0;j<H.length;j++){let z=H[j],G=z.markCoverage.get(N.glyphId),Y=z.baseCoverage.get(X.glyphId);if(G===null||Y===null)continue;let E=z.markArray.markRecords[G],w=z.baseArray[Y];if(!E||!w)continue;let F=w.baseAnchors[E.markClass];if(!F)continue;let A=E.markAnchor,B=W[_],L=W[V];if(!B||!L)continue;B.xOffset=F.xCoordinate-A.xCoordinate+L.xOffset,B.yOffset=F.yCoordinate-A.yCoordinate+L.yOffset,B.xAdvance=0,B.yAdvance=0;break}}}function Dz($,Q,Z,K,J){let q=Z.digest,U=Q.infos,W=Q.positions,H=Z.subtables;for(let _=0;_<U.length;_++){let N=U[_];if(!N)continue;if(!q.mayHave(N.glyphId))continue;if(l8($,N.glyphId,K)!==3)continue;let V=J[_];if(V<0)continue;let X=U[V];if(!X)continue;if(l8($,X.glyphId,K)!==2)continue;let j=0;for(let z=V+1;z<_;z++){let G=U[z];if(G&&l8($,G.glyphId,K)===3)j++}for(let z=0;z<H.length;z++){let G=H[z],Y=G.markCoverage.get(N.glyphId),E=G.ligatureCoverage.get(X.glyphId);if(Y===null||E===null)continue;let w=G.markArray.markRecords[Y],F=G.ligatureArray[E];if(!w||!F)continue;let A=Math.min(j,F.componentRecords.length-1),B=F.componentRecords[A];if(!B)continue;let L=B.ligatureAnchors[w.markClass];if(!L)continue;let O=w.markAnchor,M=W[_],P=W[V];if(!M||!P)continue;M.xOffset=L.xCoordinate-O.xCoordinate+P.xOffset,M.yOffset=L.yCoordinate-O.yCoordinate+P.yOffset,M.xAdvance=0,M.yAdvance=0;break}}}function Bz($,Q,Z,K){let J=Z.digest,q=Q.infos,U=Q.positions,W=Z.subtables;for(let H=0;H<q.length;H++){let _=q[H];if(!_)continue;if(!J.mayHave(_.glyphId))continue;if(l8($,_.glyphId,K)!==3)continue;let N=-1;if(H>0){let X=q[H-1];if(X){if(l8($,X.glyphId,K)===3)N=H-1}}if(N<0)continue;let V=q[N];if(!V)continue;for(let X=0;X<W.length;X++){let j=W[X],z=j.mark1Coverage.get(_.glyphId),G=j.mark2Coverage.get(V.glyphId);if(z===null||G===null)continue;let Y=j.mark1Array.markRecords[z],E=j.mark2Array[G];if(!Y||!E)continue;let w=E.mark2Anchors[Y.markClass];if(!w)continue;let F=Y.markAnchor,A=U[H],B=U[N];if(!A||!B)continue;A.xOffset=w.xCoordinate-F.xCoordinate+B.xOffset,A.yOffset=w.yCoordinate-F.yCoordinate+B.yOffset;break}}}function Mz($,Q,Z,K,J,q,U){let W=Q.infos,H=W.length,_=Z.digest,N=Z.subtables,V=null;if(Z.flag!==0&&$.gdef!==null)V=V8($,Q,Z.flag);for(let X=0;X<H;X++){let j=W[X];if(!j)continue;if(V?.[X])continue;if(!_.mayHave(j.glyphId))continue;for(let z=0;z<N.length;z++){let G=N[z],Y=!1,E=[];if(G.format===1){let w=Tz($,Q,X,G,Z.flag);if(w)Y=!0,E=w}else if(G.format===2){let w=Oz($,Q,X,G,Z.flag);if(w)Y=!0,E=w}else if(G.format===3){if(Pz($,Q,X,G,Z.flag))Y=!0,E=G.lookupRecords}if(Y){VW($,Q,X,E,K,J,q,U);break}}}}function Rz($,Q,Z,K,J,q,U){let W=Q.infos,H=W.length,_=Z.digest,N=Z.subtables,V=null;if(Z.flag!==0&&$.gdef!==null)V=V8($,Q,Z.flag);for(let X=0;X<H;X++){let j=W[X];if(!j)continue;if(V?.[X])continue;if(!_.mayHave(j.glyphId))continue;for(let z=0;z<N.length;z++){let G=N[z],Y=!1,E=[];if(G.format===1){let w=vz($,Q,X,G,Z.flag);if(w)Y=!0,E=w}else if(G.format===2){let w=Iz($,Q,X,G,Z.flag);if(w)Y=!0,E=w}else if(G.format===3){if(kz($,Q,X,G,Z.flag))Y=!0,E=G.lookupRecords}if(Y){VW($,Q,X,E,K,J,q,U);break}}}}function Tz($,Q,Z,K,J){let q=Q.infos[Z]?.glyphId,U=K.coverage.get(q);if(U===null)return null;let W=K.ruleSets[U];if(!W)return null;for(let H=0;H<W.length;H++){let _=W[H];if(E9($,Q,Z+1,_.inputSequence,J))return _.lookupRecords}return null}function Oz($,Q,Z,K,J){let q=Q.infos[Z]?.glyphId;if(K.coverage.get(q)===null)return null;let W=K.classDef.get(q),H=K.classRuleSets[W];if(!H)return null;for(let _=0;_<H.length;_++){let N=H[_];if(w9($,Q,Z+1,N.inputClasses,K.classDef,J))return N.lookupRecords}return null}function Pz($,Q,Z,K,J){let q=Q.infos,U=K.coverages,W=Z;for(let H=0;H<U.length;H++){let _=U[H];while(W<q.length&&Y6($,q[W]?.glyphId,J))W++;if(W>=q.length)return!1;if(_.get(q[W]?.glyphId)===null)return!1;W++}return!0}function vz($,Q,Z,K,J){let q=Q.infos[Z]?.glyphId,U=K.coverage.get(q);if(U===null)return null;let W=K.chainRuleSets[U];if(!W)return null;for(let H=0;H<W.length;H++){let _=W[H];if(!XW($,Q,Z-1,_.backtrackSequence,J))continue;if(!E9($,Q,Z+1,_.inputSequence,J))continue;let N=Z+1;for(let V=0;V<_.inputSequence.length;V++){while(N<Q.infos.length&&Y6($,Q.infos[N]?.glyphId,J))N++;N++}if(!E9($,Q,N,_.lookaheadSequence,J))continue;return _.lookupRecords}return null}function Iz($,Q,Z,K,J){let q=Q.infos[Z]?.glyphId;if(K.coverage.get(q)===null)return null;let W=K.inputClassDef.get(q),H=K.chainClassRuleSets[W];if(!H)return null;for(let _=0;_<H.length;_++){let N=H[_];if(!jW($,Q,Z-1,N.backtrackClasses,K.backtrackClassDef,J))continue;if(!w9($,Q,Z+1,N.inputClasses,K.inputClassDef,J))continue;let V=Q.infos,X=Z+1;for(let j=0;j<N.inputClasses.length;j++){while(X<V.length&&Y6($,V[X]?.glyphId,J))X++;X++}if(!w9($,Q,X,N.lookaheadClasses,K.lookaheadClassDef,J))continue;return N.lookupRecords}return null}function kz($,Q,Z,K,J){let q=Q.infos,U=Z-1,W=K.backtrackCoverages;for(let X=0;X<W.length;X++){let j=W[X];while(U>=0&&Y6($,q[U]?.glyphId,J))U--;if(U<0)return!1;if(j.get(q[U]?.glyphId)===null)return!1;U--}let H=Z,_=K.inputCoverages;for(let X=0;X<_.length;X++){let j=_[X];while(H<q.length&&Y6($,q[H]?.glyphId,J))H++;if(H>=q.length)return!1;if(j.get(q[H]?.glyphId)===null)return!1;H++}let N=H,V=K.lookaheadCoverages;for(let X=0;X<V.length;X++){let j=V[X];while(N<q.length&&Y6($,q[N]?.glyphId,J))N++;if(N>=q.length)return!1;if(j.get(q[N]?.glyphId)===null)return!1;N++}return!0}function VW($,Q,Z,K,J,q,U,W){let H=K.length;if(H===0)return;if(H===1){let N=K[0],V=J.gposLookupMap.get(N.lookupListIndex);if(!V)return;if(Z+N.sequenceIndex>=Q.infos.length)return;$Q($,Q,V.lookup,J,q,U,W);return}let _=new Uint8Array(H);for(let N=0;N<H;N++){let V=-1,X=-1;for(let Y=0;Y<H;Y++){if(_[Y])continue;let E=K[Y].sequenceIndex;if(E>X)X=E,V=Y}if(V<0)break;_[V]=1;let j=K[V],z=J.gposLookupMap.get(j.lookupListIndex);if(!z)continue;if(Z+j.sequenceIndex>=Q.infos.length)continue;$Q($,Q,z.lookup,J,q,U,W)}}function E9($,Q,Z,K,J){let q=Z;for(let U=0;U<K.length;U++){let W=K[U];while(q<Q.infos.length&&Y6($,Q.infos[q]?.glyphId,J))q++;if(q>=Q.infos.length)return!1;if(Q.infos[q]?.glyphId!==W)return!1;q++}return!0}function XW($,Q,Z,K,J){let q=Q.infos,U=Z;for(let W=0;W<K.length;W++){let H=K[W];while(U>=0&&Y6($,q[U]?.glyphId,J))U--;if(U<0)return!1;if(q[U]?.glyphId!==H)return!1;U--}return!0}function w9($,Q,Z,K,J,q){let U=Q.infos,W=Z;for(let H=0;H<K.length;H++){let _=K[H];while(W<U.length&&Y6($,U[W]?.glyphId,q))W++;if(W>=U.length)return!1;if(J.get(U[W]?.glyphId)!==_)return!1;W++}return!0}function jW($,Q,Z,K,J,q){let U=Q.infos,W=Z;for(let H=0;H<K.length;H++){let _=K[H];while(W>=0&&Y6($,U[W]?.glyphId,q))W--;if(W<0)return!1;if(J.get(U[W]?.glyphId)!==_)return!1;W--}return!0}function Y6($,Q,Z){if((Z&14)===0&&(Z&65280)===0)return!1;let K=$.gdef;if(!K)return!1;let J=H8(K,Q);if(Z&y6.IgnoreBaseGlyphs&&J===1)return!0;if(Z&y6.IgnoreLigatures&&J===2)return!0;if(Z&y6.IgnoreMarks&&J===3)return!0;let q=s0(Z);if(q!==0&&J===3){if(K.markAttachClassDef.get(Q)!==q)return!0}return!1}function Cz($,Q){let Z=$.morx;if(!Z)return;let K=Z.chains;for(let J=0;J<K.length;J++){let q=K[J],U=q.subtables;for(let W=0;W<U.length;W++){let H=U[W];if((q.defaultFlags&H.subFeatureFlags)===0)continue;switch(H.type){case 4:{let _=Q.infos;for(let N=0;N<_.length;N++){let V=_[N],X=D$(H,V.glyphId);if(X!==null)V.glyphId=X}break}case 0:T1(H,Q.infos);break;case 1:O1(H,Q.infos);break;case 2:{let _=P1(H,Q.infos);if(_.length!==Q.infos.length)Q.initFromInfos(_);break}case 5:{let _=v1(H,Q.infos);if(_.length!==Q.infos.length)Q.initFromInfos(_);break}}}}}var QQ={pairs:"14>1,1e>2,u>2,2wt>1,1>1,1ge>1,1wp>1,1j>1,f>1,hm>1,1>1,u>1,u6>1,1>1,+5,28>1,w>1,1>1,+3,b8>1,1>1,+3,1>3,-1>-1,3>1,1>1,+2,1s>1,1>1,x>1,th>1,1>1,+2,db>1,1>1,+3,3>1,1>1,+2,14qm>1,1>1,+1,4q>1,1e>2,u>2,2>1,+1",canonical:"6f1>-6dx,6dy>-6dx,6ec>-6ed,6ee>-6ed,6ww>2jj,-2ji>2jj,14r4>-1e7l,1e7m>-1e7l,1e7m>-1e5c,1e5d>-1e5b,1e5c>-14qx,14qy>-14qx,14vn>-1ecg,1ech>-1ecg,1edu>-1ecg,1eci>-1ecg,1eda>-1ecg,1eci>-1ecg,1eci>-168q,168r>-168q,168s>-14ye,14yf>-14ye"};function q0($,Q){let K=0,J=new Map,q=Q?new Map:null,U="";function W(H){if(H.indexOf("+")!==-1)for(let _=+H;_--;)W(U);else{U=H;let _=H.split(">"),N=_[0]??"",V=_[1]??"";K+=parseInt(N,36);let X=String.fromCodePoint(K);K+=parseInt(V,36);let j=String.fromCodePoint(K);if(J.set(X,j),q)q.set(j,X)}}return $.split(",").forEach(W),{map:J,reverseMap:q}}var ZQ=null,zW=null,GW=null;function KQ(){if(!ZQ){let{map:$,reverseMap:Q}=q0(QQ.pairs,!0);ZQ=$,zW=Q,GW=q0(QQ.canonical,!1).map}}function N1($){return KQ(),ZQ?.get($)||null}function V1($){return KQ(),zW?.get($)||null}function X1($){return KQ(),GW?.get($)||null}var U0={R:"13k,1a,2,3,3,2+1j,ch+16,a+1,5+2,2+n,5,a,4,6+16,4+3,h+1b,4mo,179q,2+9,2+11,2i9+7y,2+68,4,3+4,5+13,4+3,2+4k,3+29,8+cf,1t+7z,w+17,3+3m,1t+3z,16o1+5r,8+30,8+mc,29+1r,29+4v,75+73",EN:"1c+9,3d+1,6,187+9,513,4+5,7+9,sf+j,175h+9,qw+q,161f+1d,4xt+a,25i+9",ES:"17,2,6dp+1,f+1,av,16vr,mx+1,4o,2",ET:"z+2,3h+3,b+1,ym,3e+1,2o,p4+1,8,6u,7c,g6,1wc,1n9+4,30+1b,2n,6d,qhx+1,h0m,a+1,49+2,63+1,4+1,6bb+3,12jj",AN:"16o+5,2j+9,2+1,35,ed,1ff2+9,87+u",CS:"18,2+1,b,2u,12k,55v,l,17v0,2,3,53,2+1,b",B:"a,3,f+2,2v,690",S:"9,2,k",WS:"c,k,4f4,1vk+a,u,1j,335",ON:"x+1,4+4,h+5,r+5,r+3,z,5+3,2+1,2+1,5,2+2,3+4,o,w,ci+1,8+d,3+d,6+8,2+g,39+1,9,6+1,2,33,b8,3+1,3c+1,7+1,5r,b,7h+3,sa+5,2,3i+6,jg+3,ur+9,2v,ij+1,9g+9,7+a,8m,4+1,49+x,14u,2+2,c+2,e+2,e+2,e+1,i+n,e+e,2+p,u+2,e+2,36+1,2+3,2+1,b,2+2,6+5,2,2,2,h+1,5+4,6+3,3+f,16+2,5+3l,3+81,1y+p,2+40,q+a,m+13,2r+ch,2+9e,75+hf,3+v,2+2w,6e+5,f+6,75+2a,1a+p,2+2g,d+5x,r+b,6+3,4+o,g,6+1,6+2,2k+1,4,2j,5h+z,1m+1,1e+f,t+2,1f+e,d+3,4o+3,2s+1,w,535+1r,h3l+1i,93+2,2s,b+1,3l+x,2v,4g+3,21+3,kz+1,g5v+1,5a,j+9,n+v,2,3,2+8,2+1,3+2,2,3,46+1,4+4,h+5,r+5,r+a,3h+2,4+6,b+4,78,1r+24,4+c,4,1hb,ey+6,103+j,16j+c,1ux+7,5+g,fsh,jdq+1t,4,57+2e,p1,1m,1m,1m,1m,4kt+1,7j+17,5+2r,d+e,3+e,2+e,2+10,m+4,w,1n+5,1q,4z+5,4b+rb,9+c,4+c,4+37,d+2g,8+b,l+b,5+1j,9+9,7+13,9+t,3+1,27+3c,2+29,2+3q,d+d,3+4,4+2,6+6,a+o,8+6,a+2,e+6,16+42,2+1i",BN:"0+8,6+d,2s+5,2+p,e,4m9,1kt+2,2b+5,5+5,17q9+v,7k,6p+8,6+1,119d+3,440+7,96s+1,1ekf+1,1ekf+1,1ekf+1,1ekf+1,1ekf+1,1ekf+1,1ekf+1,1ekf+1,1ekf+1,1ekf+1,1ekf+1,1ekf+75,6p+2rz,1ben+1,1ekf+1,1ekf+1",NSM:"lc+33,7o+6,7c+18,2,2+1,2+1,2,21+a,1d+k,h,2u+6,3+5,3+1,2+3,10,v+q,2k+a,1n+8,a,p+3,2+8,2+2,2+4,18+2,3c+e,2+v,1k,2,5+7,5,4+6,b+1,u,1n,5+3,9,l+1,r,3+1,1m,5+1,5+1,3+2,4,v+1,4,c+1,1m,5+4,2+1,5,l+1,n+5,2,1n,3,2+3,9,8+1,c+1,v,1q,d,1f,4,1m+2,6+2,2+3,8+1,c+1,u,1n,g+1,l+1,t+1,1m+1,5+3,9,l+1,u,21,8+2,2,2j,3+6,d+7,2r,3+8,c+5,23+1,s,2,2,1k+d,2+4,2+1,6+a,2+z,a,2v+3,2+5,2+1,3+1,q+1,5+2,h+3,e,3+1,7,g,jk+2,qb+2,u+2,u+1,v+1,1t+1,2+6,9,3+a,a,1a+2,3c+1,z,3b+2,5+1,a,7+2,64+1,3,1n,2+6,2,2,3+7,7+9,3,1d+g,1s+3,1d,2+4,2,6,15+8,d+1,x+3,3+1,2+2,1l,2+1,4,2+2,1n+7,3+1,49+2,2+c,2+6,5,7,4+1,5j+1l,2+4,k1+w,2db+2,3y,2p+v,ff+3,30+1,n9x+3,2+9,x+1,29+1,7l,4,5,q+1,6,48+1,r+h,e,13+7,q+a,1b+2,1d,3+3,3+1,14,1w+5,3+1,3+1,d,9,1c,1g,2+2,3+1,6+1,2,17+1,9,6n,3,5,fn5,ki+f,h+f,r2,6b,46+4,1af+2,2+1,6+3,15+2,5,4m+1,fy+3,as+1,4a+a,4x,1j+e,1l+2,1e+3,3+1,1y+2,11+4,2+7,1r,d+1,1h+8,b+3,3,2o+2,3,2+1,7,4h,4+7,m+1,1m+1,4,12+6,4+4,5g+7,3+2,2,o,2d+5,2,5+1,2+1,6n+3,7+1,2+1,s+1,2e+7,3,2+1,2z,2,3+5,2,2u+2,3+3,2+4,78+8,2+1,75+1,2,5,41+3,3+1,5,x+5,3+1,15+5,3+3,9,a+5,3+2,1b+c,2+1,bb+6,2+5,2d+l,3+6,2+1,2+1,3f+5,4,2+1,2+6,2,21+1,4,2,9o+1,f0c+4,1o+6,t5,1s+3,2a,f5l+1,43t+2,i+7,3+6,v+3,45+2,1j0+1i,5+1d,9,f,n+4,2+e,11t+6,2+g,3+6,2+1,2+4,7a+6,c6+3,15t+6,32+6,gzhy+6n",AL:"16w,3,2,e+1b,z+2,2+2s,g+1,8+1,b+m,2+t,s+2i,c+e,4h+f,1d+1e,1bwe+dp,3+3z,x+c,2+1,35+3y,2rm+z,5+7,b+5,dt+l,c+u,17nl+27,1t+27,4x+6n,3+d",LRO:"6ct",RLO:"6cu",LRE:"6cq",RLE:"6cr",PDF:"6cs",LRI:"6ee",RLI:"6ef",FSI:"6eg",PDI:"6eh"};var J6={},JQ={};J6.L=1;JQ[1]="L";Object.keys(U0).forEach(($,Q)=>{J6[$]=1<<Q+1;let Z=J6[$];if(Z!==void 0)JQ[Z]=$});Object.freeze(J6);function H6($){return J6[$]??0}var $8=H6("LRI")|H6("RLI")|H6("FSI"),z1=H6("L")|H6("R")|H6("AL"),k6=H6("B")|H6("S")|H6("WS")|H6("ON")|H6("FSI")|H6("LRI")|H6("RLI")|H6("PDI"),F6=H6("BN")|H6("RLE")|H6("LRE")|H6("RLO")|H6("LRO")|H6("PDF"),W0=H6("S")|H6("WS")|H6("B")|$8|H6("PDI")|F6,j1=null;function Sz(){if(!j1){j1=new Map;let $=0;for(let Q in U0)if(Object.hasOwn(U0,Q)){let Z=U0[Q],K="",J=0,q=!1,U=0;for(let W=0;W<=Z.length+1;W+=1){let H=Z[W];if(H!==","&&W!==Z.length)if(H==="+")q=!0,U=$=U+parseInt(K,36),K="";else K+=H;else{if(!q)U=$=U+parseInt(K,36),J=$;else J=$+parseInt(K,36);q=!1,K="",U=J;let _=H6(Q);for(let N=$;N<J+1;N+=1)j1.set(N,_)}}}}}function b6($){Sz();let Q=$.codePointAt(0);if(Q===void 0)return H6("L");return j1?.get(Q)??H6("L")}var u6=J6.L??1,n6=J6.R??2,C6=J6.EN??4,H0=J6.ES??8,G1=J6.ET??16,_0=J6.AN??32,Y1=J6.CS??64,A9=J6.B??128,hz=J6.S??256,E1=J6.ON??512,yz=J6.BN??1024,w1=J6.NSM??2048,A1=J6.AL??4096,YW=J6.LRO??8192,F1=J6.RLO??16384,EW=J6.LRE??32768,qQ=J6.RLE??65536,wW=J6.PDF??131072,bz=J6.LRI??262144,AW=J6.RLI??524288,mz=J6.FSI??1048576,F9=J6.PDI??2097152;function r($,Q){return $[Q]??0}function _6($,Q){return $[Q]??0}function L9($,Q){return $[Q]??""}function UQ($,Q){let K=new Uint32Array($.length);for(let G=0;G<$.length;G++)K[G]=b6(L9($,G));let J=new Map;function q(G,Y){let E=r(K,G);if(K[G]=Y,J.set(E,(J.get(E)??0)-1),E&k6)J.set(k6,(J.get(k6)??0)-1);if(J.set(Y,(J.get(Y)??0)+1),Y&k6)J.set(k6,(J.get(k6)??0)+1)}let U=new Uint8Array($.length),W=new Map,H=[],_=null;function N(G,Y){for(let E=G;E<$.length;E++){let w=r(K,E);if(w&(n6|A1))return 1;if(w&(A9|u6)||Y&&w===F9)return 0;if(w&$8){let F=V(E);E=F===-1?$.length:F}}return 0}function V(G){let Y=1;for(let E=G+1;E<$.length;E++){let w=r(K,E);if(w&A9)break;if(w&F9){if(--Y===0)return E}else if(w&$8)Y++}return-1}for(let G=0;G<$.length;G++){if(!_)_={start:G,end:$.length-1,level:Q==="rtl"?1:Q==="ltr"?0:N(G,!1)},H.push(_);if(r(K,G)&A9)_.end=G,_=null}let X=qQ|EW|F1|YW|$8|F9|wW|A9,j=(G)=>G+(G&1?1:2),z=(G)=>G+(G&1?2:1);for(let G=0;G<H.length;G++){let Y=H[G];if(!Y)continue;_=Y;let E=[{_level:_.level,_override:0,_isolate:0}],w=0,F=0,A=0;J.clear();for(let M=_.start;M<=_.end;M++){let P=r(K,M),T=E[E.length-1];if(!T)continue;if(J.set(P,(J.get(P)??0)+1),P&k6)J.set(k6,(J.get(k6)??0)+1);if(P&X){if(P&(qQ|EW)){U[M]=T._level;let x=(P===qQ?z:j)(T._level);if(x<=125&&!w&&!F)E.push({_level:x,_override:0,_isolate:0});else if(!w)F++}else if(P&(F1|YW)){U[M]=T._level;let x=(P===F1?z:j)(T._level);if(x<=125&&!w&&!F)E.push({_level:x,_override:P&F1?n6:u6,_isolate:0});else if(!w)F++}else if(P&$8){if(P&mz)P=N(M+1,!0)===1?AW:bz;if(U[M]=T._level,T._override)q(M,T._override);let x=(P===AW?z:j)(T._level);if(x<=125&&w===0&&F===0)A++,E.push({_level:x,_override:0,_isolate:1,_isolInitIndex:M});else w++}else if(P&F9){if(w>0)w--;else if(A>0){F=0;while(E.length>0){if(E[E.length-1]?._isolate)break;E.pop()}let I=E[E.length-1]?._isolInitIndex;if(I!=null)W.set(I,M),W.set(M,I);E.pop(),A--}if(T=E[E.length-1],!T)continue;if(U[M]=T._level,T._override)q(M,T._override)}else if(P&wW){if(w===0){if(F>0)F--;else if(!T._isolate&&E.length>1){if(E.pop(),T=E[E.length-1],!T)continue}}U[M]=T._level}else if(P&A9)U[M]=_.level}else if(U[M]=T._level,T._override&&P!==yz)q(M,T._override)}let B=[],L=null;for(let M=_.start;M<=_.end;M++){let P=r(K,M);if(!(P&F6)){let T=U[M]??0,x=!!(P&$8),I=P===F9;if(L&&T===L._level)L._end=M,L._endsWithIsolInit=x;else L={_start:M,_end:M,_level:T,_startsWithPDI:I,_endsWithIsolInit:x},B.push(L)}}let O=[];for(let M=0;M<B.length;M++){let P=B[M];if(!P)continue;if(!P._startsWithPDI||P._startsWithPDI&&!W.has(P._start)){L=P;let T=[P];while(L?._endsWithIsolInit){let u=W.get(L._end);if(u==null)break;let d=!1;for(let c=M+1;c<B.length;c++){let n=B[c];if(n?._start===u){L=n,T.push(n),d=!0;break}}if(!d)break}let x=[];for(let u=0;u<T.length;u++){let d=T[u];for(let c=d._start;c<=d._end;c++)x.push(c)}let I=x[0]??0,f=U[I]??0,l=_.level;for(let u=I-1;u>=0;u--)if(!(r(K,u)&F6)){l=U[u]??0;break}let C=x[x.length-1]??0,R=U[C]??0,y=_.level;if(!(r(K,C)&$8)){for(let u=C+1;u<=_.end;u++)if(!(r(K,u)&F6)){y=U[u]??0;break}}O.push({_seqIndices:x,_sosType:Math.max(l,f)%2?n6:u6,_eosType:Math.max(y,R)%2?n6:u6})}}for(let M=0;M<O.length;M++){let P=O[M],{_seqIndices:T,_sosType:x,_eosType:I}=P,f=T[0]??0,l=(U[f]??0)&1?n6:u6;if(J.get(w1))for(let C=0;C<T.length;C++){let R=_6(T,C);if(r(K,R)&w1){let y=x;for(let u=C-1;u>=0;u--){let d=_6(T,u);if(!(r(K,d)&F6)){y=r(K,d);break}}q(R,y&($8|F9)?E1:y)}}if(J.get(C6))for(let C=0;C<T.length;C++){let R=_6(T,C);if(r(K,R)&C6)for(let y=C-1;y>=-1;y--){let u=y===-1?x:r(K,_6(T,y));if(u&z1){if(u===A1)q(R,_0);break}}}if(J.get(A1))for(let C=0;C<T.length;C++){let R=_6(T,C);if(r(K,R)&A1)q(R,n6)}if(J.get(H0)||J.get(Y1))for(let C=1;C<T.length-1;C++){let R=_6(T,C);if(r(K,R)&(H0|Y1)){let y=0,u=0;for(let d=C-1;d>=0;d--)if(y=r(K,_6(T,d)),!(y&F6))break;for(let d=C+1;d<T.length;d++)if(u=r(K,_6(T,d)),!(u&F6))break;if(y===u&&(r(K,R)===H0?y===C6:y&(C6|_0)))q(R,y)}}if(J.get(C6))for(let C=0;C<T.length;C++){let R=_6(T,C);if(r(K,R)&C6){for(let y=C-1;y>=0;y--){let u=_6(T,y);if(!(r(K,u)&(G1|F6)))break;q(u,C6)}for(C++;C<T.length;C++){let y=_6(T,C);if(!(r(K,y)&(G1|F6|C6)))break;if(r(K,y)!==C6)q(y,C6)}}}if(J.get(G1)||J.get(H0)||J.get(Y1))for(let C=0;C<T.length;C++){let R=_6(T,C);if(r(K,R)&(G1|H0|Y1)){q(R,E1);for(let y=C-1;y>=0;y--){let u=_6(T,y);if(!(r(K,u)&F6))break;q(u,E1)}for(let y=C+1;y<T.length;y++){let u=_6(T,y);if(!(r(K,u)&F6))break;q(u,E1)}}}if(J.get(C6)){let C=x;for(let R=0;R<T.length;R++){let y=_6(T,R),u=r(K,y);if(u&C6){if(C===u6)q(y,u6)}else if(u&z1)C=u}}if(J.get(k6)){let C=n6|C6|_0,R=C|u6,y=[],u=[];for(let d=0;d<T.length;d++){let c=_6(T,d);if(r(K,c)&k6){let n=L9($,c);if(N1(n)!==null)if(u.length<63)u.push({char:n,seqIndex:d});else break;else{let g=V1(n);if(g!==null)for(let j6=u.length-1;j6>=0;j6--){let S=u[j6];if(!S)continue;let U6=S.char,b=X1(n),L6=X1(U6);if(U6===g||b&&U6===V1(b)||L6&&N1(L6)===n){y.push([S.seqIndex,d]),u.length=j6;break}}}}}y.sort((d,c)=>d[0]-c[0]);for(let d=0;d<y.length;d++){let c=y[d],[n,e]=c,g=!1,j6=0;for(let S=n+1;S<e;S++){let U6=_6(T,S),b=r(K,U6);if(b&R){g=!0;let L6=b&C?n6:u6;if(L6===l){j6=L6;break}}}if(g&&!j6){j6=x;for(let S=n-1;S>=0;S--){let U6=_6(T,S),b=r(K,U6);if(b&R){let L6=b&C?n6:u6;j6=L6!==l?L6:l;break}}}if(j6){if(K[_6(T,n)]=j6,K[_6(T,e)]=j6,j6!==l){for(let S=n+1;S<T.length;S++){let U6=_6(T,S);if(!(r(K,U6)&F6)){if(b6(L9($,U6))&w1)K[U6]=j6;break}}for(let S=e+1;S<T.length;S++){let U6=_6(T,S);if(!(r(K,U6)&F6)){if(b6(L9($,U6))&w1)K[U6]=j6;break}}}}}for(let d=0;d<T.length;d++){let c=_6(T,d);if(r(K,c)&k6){let n=d,e=d,g=x;for(let S=d-1;S>=0;S--){let U6=_6(T,S);if(r(K,U6)&F6)n=S;else{g=r(K,U6)&C?n6:u6;break}}let j6=I;for(let S=d+1;S<T.length;S++){let U6=_6(T,S);if(r(K,U6)&(k6|F6))e=S;else{j6=r(K,U6)&C?n6:u6;break}}for(let S=n;S<=e;S++)K[_6(T,S)]=g===j6?g:l;d=e}}}}for(let M=_.start;M<=_.end;M++){let P=U[M]??0,T=r(K,M);if(P&1){if(T&(u6|C6|_0))U[M]++}else if(T&n6)U[M]++;else if(T&(_0|C6))U[M]+=2;if(T&F6)U[M]=M===0?_.level:U[M-1]??_.level;if(M===_.end||b6(L9($,M))&(hz|A9))for(let x=M;x>=0&&b6(L9($,x))&W0;x--)U[x]=_.level}}return{levels:U,paragraphs:H}}var FW="14>1,j>2,t>2,u>2,1a>g,2v3>1,1>1,1ge>1,1wd>1,b>1,1j>1,f>1,ai>3,-2>3,+1,8>1k0,-1jq>1y7,-1y6>1hf,-1he>1h6,-1h5>1ha,-1h8>1qi,-1pu>1,6>3u,-3s>7,6>1,1>1,f>1,1>1,+2,3>1,1>1,+13,4>1,1>1,6>1eo,-1ee>1,3>1mg,-1me>1mk,-1mj>1mi,-1mg>1mi,-1md>1,1>1,+2,1>10k,-103>1,1>1,4>1,5>1,1>1,+10,3>1,1>8,-7>8,+1,-6>7,+1,a>1,1>1,u>1,u6>1,1>1,+5,26>1,1>1,2>1,2>2,8>1,7>1,4>1,1>1,+5,b8>1,1>1,+3,1>3,-2>1,2>1,1>1,+2,c>1,3>1,1>1,+2,h>1,3>1,a>1,1>1,2>1,3>1,1>1,d>1,f>1,3>1,1a>1,1>1,6>1,7>1,13>1,k>1,1>1,+19,4>1,1>1,+2,2>1,1>1,+18,m>1,a>1,1>1,lk>1,1>1,4>1,2>1,f>1,3>1,1>1,+3,db>1,1>1,+3,3>1,1>1,+2,14qm>1,1>1,+1,6>1,4j>1,j>2,t>2,u>2,2>1,+1";var WQ=null;function gz(){if(!WQ){let{map:$,reverseMap:Q}=q0(FW,!0);if(Q)Q.forEach((Z,K)=>{$.set(K,Z)});WQ=$}}function L1($){return gz(),WQ?.get($)||null}function LW($,Q,Z,K){let J=$.length,q=Math.max(0,Z==null?0:+Z),U=Math.min(J-1,K==null?J-1:+K),W=[];for(let H=0;H<Q.paragraphs.length;H++){let _=Q.paragraphs[H],N=Math.max(q,_.start),V=Math.min(U,_.end);if(N<V){let X=Q.levels.slice(N,V+1);for(let G=V;G>=N;G--){let Y=$[G];if(Y===void 0)break;if(!(b6(Y)&W0))break;X[G-N]=_.level}let j=_.level,z=1/0;for(let G=0;G<X.length;G++){let Y=X[G]??0;if(Y>j)j=Y;if(Y<z)z=Y|1}for(let G=j;G>=z;G--)for(let Y=0;Y<X.length;Y++)if((X[Y]??0)>=G){let w=Y;while(Y+1<X.length){if((X[Y+1]??0)<G)break;Y++}if(Y>w)W.push([w+N,Y+N])}}}return W}function D1($,Q,Z,K){let J=LW($,Q,Z,K),q=[];for(let U=0;U<$.length;U++)q[U]=U;for(let U=0;U<J.length;U++){let W=J[U],H=W[0],_=W[1],N=q.slice(H,_+1);for(let V=N.length;V--;){let X=N[V];if(X!==void 0)q[_-V]=X}}return q}function DW($,Q=4){let Z=Q===5?"rtl":Q===4?"ltr":"auto",K=UQ($,Z);return{levels:K.levels,paragraphs:K.paragraphs}}function uz($,Q,Z=0,K=$.length){return[...D1($,Q,Z,K)]}function BW($,Q){if($.length===0)return $;let Z="x".repeat($.length),K=D1(Z,Q,0,$.length),J=[];for(let q=0;q<K.length;q++){let U=K[q];if(U<$.length){let W=$[U];if(W)J.push(W)}}return J}function MW($){let Q=String.fromCodePoint($),Z=L1(Q);return Z?Z.codePointAt(0)??$:$}function RW($,Q){for(let Z=0;Z<$.length;Z++){let K=$[Z],J=Q[Z];if(J===void 0)continue;if(J&1){let q=MW(K.codepoint);if(q!==K.codepoint)K.codepoint=q}}}var d8={L:1,R:2,EN:4,ES:8,ET:16,AN:32,CS:64,B:128,S:256,WS:512,ON:1024,BN:2048,NSM:4096,AL:8192,LRO:16384,RLO:32768,LRE:65536,RLE:131072,PDF:262144,LRI:524288,RLI:1048576,FSI:2097152,PDI:4194304};function xz($){return b6($)}function fz($){let Q=String.fromCodePoint($);return(b6(Q)&(d8.R|d8.AL))!==0}function lz($){let Q=String.fromCodePoint($);return(b6(Q)&d8.L)!==0}function dz($){let Q=[...$];for(let Z=0;Z<Q.length;Z++){let K=Q[Z],J=b6(K);if(J&d8.L)return 4;if(J&(d8.R|d8.AL))return 5}return 4}function nz($,Q=4){if($.length===0)return{infos:$,levels:new Uint8Array(0)};let Z=$.map((q)=>String.fromCodePoint(q.codepoint)).join(""),K=DW(Z,Q);return RW($,K.levels),{infos:BW($,K),levels:K.levels}}var TW;((b)=>{b[b.BK=0]="BK";b[b.CR=1]="CR";b[b.LF=2]="LF";b[b.CM=3]="CM";b[b.NL=4]="NL";b[b.SG=5]="SG";b[b.WJ=6]="WJ";b[b.ZW=7]="ZW";b[b.GL=8]="GL";b[b.SP=9]="SP";b[b.ZWJ=10]="ZWJ";b[b.B2=11]="B2";b[b.BA=12]="BA";b[b.BB=13]="BB";b[b.HY=14]="HY";b[b.CB=15]="CB";b[b.CL=16]="CL";b[b.CP=17]="CP";b[b.EX=18]="EX";b[b.IN=19]="IN";b[b.NS=20]="NS";b[b.OP=21]="OP";b[b.QU=22]="QU";b[b.IS=23]="IS";b[b.NU=24]="NU";b[b.PO=25]="PO";b[b.PR=26]="PR";b[b.SY=27]="SY";b[b.AI=28]="AI";b[b.AL=29]="AL";b[b.CJ=30]="CJ";b[b.EB=31]="EB";b[b.EM=32]="EM";b[b.H2=33]="H2";b[b.H3=34]="H3";b[b.HL=35]="HL";b[b.ID=36]="ID";b[b.JL=37]="JL";b[b.JV=38]="JV";b[b.JT=39]="JT";b[b.RI=40]="RI";b[b.SA=41]="SA";b[b.XX=42]="XX"})(TW||={});var OW;((U)=>{U[U.Direct=0]="Direct";U[U.Indirect=1]="Indirect";U[U.CombiningIndirect=2]="CombiningIndirect";U[U.CombiningProhibited=3]="CombiningProhibited";U[U.Prohibited=4]="Prohibited";U[U.Explicit=5]="Explicit"})(OW||={});var PW;((K)=>{K[K.NoBreak=0]="NoBreak";K[K.Optional=1]="Optional";K[K.Mandatory=2]="Mandatory"})(PW||={});function vW($){if($===10)return 2;if($===13)return 1;if($===133)return 4;if($===11||$===12)return 0;if($===8232)return 0;if($===8233)return 0;if($===8203)return 7;if($===8205)return 10;if($===8288)return 6;if($===65279)return 6;if($===32)return 9;if($===160)return 8;if($===8239)return 8;if($===8199)return 8;if($===8209)return 8;if($===9)return 12;if($>=8192&&$<=8202)return 12;if($>=768&&$<=879)return 3;if($>=1155&&$<=1161)return 3;if($>=1425&&$<=1469)return 3;if($>=1471&&$<=1479)return 3;if($>=1552&&$<=1562)return 3;if($>=1611&&$<=1631)return 3;if($>=1648&&$<=1648)return 3;if($>=1750&&$<=1773)return 3;if($>=1809&&$<=1809)return 3;if($>=1840&&$<=1866)return 3;if($>=1958&&$<=1968)return 3;if($>=2070&&$<=2083)return 3;if($>=2085&&$<=2093)return 3;if($>=2137&&$<=2139)return 3;if($>=2259&&$<=2273)return 3;if($>=2275&&$<=2307)return 3;if($>=2362&&$<=2364)return 3;if($>=2366&&$<=2383)return 3;if($>=2385&&$<=2391)return 3;if($>=2402&&$<=2403)return 3;if($>=2433&&$<=2435)return 3;if($===2492)return 3;if($>=2494&&$<=2509)return 3;if($>=2519&&$<=2519)return 3;if($>=2530&&$<=2531)return 3;if($>=2558&&$<=2558)return 3;if($>=2561&&$<=2563)return 3;if($>=2620&&$<=2641)return 3;if($>=2672&&$<=2673)return 3;if($>=2677&&$<=2677)return 3;if($>=2689&&$<=2691)return 3;if($>=2748&&$<=2765)return 3;if($>=2786&&$<=2787)return 3;if($>=2810&&$<=2815)return 3;if($>=2817&&$<=2819)return 3;if($>=2876&&$<=2903)return 3;if($>=2914&&$<=2915)return 3;if($>=2946&&$<=2946)return 3;if($>=3006&&$<=3021)return 3;if($>=3031&&$<=3031)return 3;if($>=3072&&$<=3076)return 3;if($>=3134&&$<=3158)return 3;if($>=3170&&$<=3171)return 3;if($>=3201&&$<=3203)return 3;if($>=3260&&$<=3286)return 3;if($>=3298&&$<=3299)return 3;if($>=3328&&$<=3331)return 3;if($>=3387&&$<=3405)return 3;if($>=3415&&$<=3415)return 3;if($>=3426&&$<=3427)return 3;if($>=3457&&$<=3459)return 3;if($>=3530&&$<=3571)return 3;if($>=3864&&$<=3865)return 3;if($>=3893&&$<=3897)return 3;if($>=3902&&$<=3903)return 3;if($>=3953&&$<=3972)return 3;if($>=3974&&$<=3975)return 3;if($>=3981&&$<=4028)return 3;if($===4038)return 3;if($>=5906&&$<=5908)return 3;if($>=5938&&$<=5940)return 3;if($>=5970&&$<=5971)return 3;if($>=6002&&$<=6003)return 3;if($>=6068&&$<=6099)return 3;if($===6109)return 3;if($>=6155&&$<=6157)return 3;if($===6159)return 3;if($>=6277&&$<=6278)return 3;if($===6313)return 3;if($>=6432&&$<=6459)return 3;if($>=6679&&$<=6683)return 3;if($>=6741&&$<=6783)return 3;if($>=6832&&$<=6862)return 3;if($>=6912&&$<=6916)return 3;if($>=6964&&$<=6980)return 3;if($>=7019&&$<=7027)return 3;if($>=7040&&$<=7042)return 3;if($>=7073&&$<=7085)return 3;if($>=7142&&$<=7155)return 3;if($>=7204&&$<=7223)return 3;if($>=7376&&$<=7417)return 3;if($>=7616&&$<=7679)return 3;if($>=8400&&$<=8432)return 3;if($>=11503&&$<=11505)return 3;if($===11647)return 3;if($>=11744&&$<=11775)return 3;if($>=12330&&$<=12335)return 3;if($>=12441&&$<=12442)return 3;if($>=42607&&$<=42610)return 3;if($>=42612&&$<=42621)return 3;if($>=42654&&$<=42655)return 3;if($>=42736&&$<=42737)return 3;if($>=43010&&$<=43047)return 3;if($>=43052&&$<=43052)return 3;if($>=43136&&$<=43137)return 3;if($>=43188&&$<=43205)return 3;if($>=43232&&$<=43249)return 3;if($===43263)return 3;if($>=43302&&$<=43309)return 3;if($>=43335&&$<=43347)return 3;if($>=43392&&$<=43395)return 3;if($>=43443&&$<=43469)return 3;if($===43493)return 3;if($>=43561&&$<=43574)return 3;if($>=43587&&$<=43587)return 3;if($>=43596&&$<=43597)return 3;if($>=43643&&$<=43645)return 3;if($>=43696&&$<=43714)return 3;if($>=43755&&$<=43759)return 3;if($>=43765&&$<=43766)return 3;if($>=44003&&$<=44010)return 3;if($>=44012&&$<=44013)return 3;if($===64286)return 3;if($>=65024&&$<=65039)return 3;if($>=65056&&$<=65071)return 3;if($>=66045&&$<=66045)return 3;if($>=66272&&$<=66272)return 3;if($>=66422&&$<=66426)return 3;if($>=68097&&$<=68111)return 3;if($>=68152&&$<=68159)return 3;if($>=68325&&$<=68326)return 3;if($>=68900&&$<=68903)return 3;if($>=69291&&$<=69292)return 3;if($>=69446&&$<=69456)return 3;if($>=69506&&$<=69509)return 3;if($>=69632&&$<=69634)return 3;if($>=69688&&$<=69702)return 3;if($>=69744&&$<=69744)return 3;if($>=69747&&$<=69748)return 3;if($>=69759&&$<=69762)return 3;if($>=69808&&$<=69826)return 3;if($>=69888&&$<=69890)return 3;if($>=69927&&$<=69940)return 3;if($===69957)return 3;if($===69958)return 3;if($>=70003&&$<=70003)return 3;if($>=70016&&$<=70018)return 3;if($>=70067&&$<=70080)return 3;if($>=70089&&$<=70092)return 3;if($===70094)return 3;if($===70095)return 3;if($>=70188&&$<=70199)return 3;if($===70206)return 3;if($>=70367&&$<=70378)return 3;if($>=70400&&$<=70403)return 3;if($>=70459&&$<=70460)return 3;if($>=70462&&$<=70477)return 3;if($>=70487&&$<=70487)return 3;if($>=70498&&$<=70516)return 3;if($>=70709&&$<=70726)return 3;if($===70750)return 3;if($>=70832&&$<=70851)return 3;if($>=71087&&$<=71104)return 3;if($>=71132&&$<=71133)return 3;if($>=71216&&$<=71232)return 3;if($>=71339&&$<=71351)return 3;if($>=71453&&$<=71467)return 3;if($>=71724&&$<=71738)return 3;if($>=71984&&$<=71989)return 3;if($>=71991&&$<=71992)return 3;if($>=71995&&$<=71998)return 3;if($===72000)return 3;if($>=72002&&$<=72003)return 3;if($>=72145&&$<=72151)return 3;if($>=72154&&$<=72160)return 3;if($===72164)return 3;if($>=72193&&$<=72202)return 3;if($>=72243&&$<=72249)return 3;if($>=72251&&$<=72254)return 3;if($===72263)return 3;if($>=72273&&$<=72283)return 3;if($>=72330&&$<=72345)return 3;if($>=72751&&$<=72758)return 3;if($>=72760&&$<=72767)return 3;if($>=72850&&$<=72871)return 3;if($>=72873&&$<=72886)return 3;if($>=73009&&$<=73029)return 3;if($===73031)return 3;if($>=73098&&$<=73111)return 3;if($>=73459&&$<=73462)return 3;if($>=92912&&$<=92916)return 3;if($>=92976&&$<=92982)return 3;if($===94031)return 3;if($>=94033&&$<=94087)return 3;if($>=94095&&$<=94098)return 3;if($>=94180&&$<=94180)return 3;if($>=94192&&$<=94193)return 3;if($>=113821&&$<=113822)return 3;if($>=118528&&$<=118598)return 3;if($>=119141&&$<=119145)return 3;if($>=119149&&$<=119154)return 3;if($>=119163&&$<=119170)return 3;if($>=119173&&$<=119179)return 3;if($>=119210&&$<=119213)return 3;if($>=119362&&$<=119364)return 3;if($>=121344&&$<=121398)return 3;if($>=121403&&$<=121452)return 3;if($===121461)return 3;if($===121476)return 3;if($>=121499&&$<=121519)return 3;if($>=122880&&$<=122922)return 3;if($>=123184&&$<=123190)return 3;if($>=123566&&$<=123566)return 3;if($>=123628&&$<=123631)return 3;if($>=125136&&$<=125142)return 3;if($>=125252&&$<=125258)return 3;if($>=917760&&$<=917999)return 3;if($===33)return 18;if($===63)return 18;if($===34)return 22;if($===39)return 22;if($===40)return 21;if($===41)return 17;if($===91)return 21;if($===93)return 17;if($===123)return 21;if($===125)return 16;if($===44)return 23;if($===46)return 23;if($===58)return 23;if($===59)return 23;if($===45)return 14;if($===8208)return 12;if($===8211)return 12;if($===8212)return 11;if($===8216||$===8217)return 22;if($===8220||$===8221)return 22;if($===8230)return 19;if($===12289||$===12290)return 16;if($===12296)return 21;if($===12297)return 16;if($===12298)return 21;if($===12299)return 16;if($===12300)return 21;if($===12301)return 16;if($===12302)return 21;if($===12303)return 16;if($===12304)return 21;if($===12305)return 16;if($===12308)return 21;if($===12309)return 16;if($===12310)return 21;if($===12311)return 16;if($>=12312&&$<=12315)return $%2===0?21:16;if($===65288)return 21;if($===65289)return 16;if($===65292)return 16;if($===65294)return 16;if($===65306)return 20;if($===65307)return 20;if($===65311)return 18;if($===65281)return 18;if($>=12353&&$<=12438){if($===12353||$===12355||$===12357||$===12359||$===12361||$===12387||$===12419||$===12421||$===12423||$===12430||$===12437||$===12438)return 30;return 36}if($>=12449&&$<=12538){if($===12449||$===12451||$===12453||$===12455||$===12457||$===12483||$===12515||$===12517||$===12519||$===12526||$===12533||$===12534)return 30;return 36}if($===12540)return 30;if($>=4352&&$<=4447)return 37;if($>=43360&&$<=43388)return 37;if($>=4448&&$<=4519)return 38;if($>=55216&&$<=55238)return 38;if($>=4520&&$<=4607)return 39;if($>=55243&&$<=55291)return 39;if($>=44032&&$<=55203){if(($-44032)%28===0)return 33;return 34}if($>=48&&$<=57)return 24;if($>=1632&&$<=1641)return 24;if($>=1776&&$<=1785)return 24;if($>=2406&&$<=2415)return 24;if($>=65296&&$<=65305)return 24;if($===36)return 26;if($===163)return 26;if($===165)return 26;if($===8364)return 26;if($===37)return 25;if($>=1488&&$<=1514)return 35;if($>=64285&&$<=64335)return 35;if($>=19968&&$<=40959)return 36;if($>=13312&&$<=19903)return 36;if($>=131072&&$<=173791)return 36;if($>=173824&&$<=177983)return 36;if($>=177984&&$<=178207)return 36;if($>=178208&&$<=183983)return 36;if($>=183984&&$<=191471)return 36;if($>=196608&&$<=201551)return 36;if($>=63744&&$<=64255)return 36;if($>=194560&&$<=195103)return 36;if($>=127744&&$<=129535)return 36;if($>=129536&&$<=129791)return 36;if($>=9728&&$<=9983)return 36;if($>=9984&&$<=10175)return 36;if($>=127456&&$<=127487)return 40;if($>=127995&&$<=127999)return 32;if($>=3584&&$<=3711)return 41;if($>=3712&&$<=3839)return 41;if($>=4096&&$<=4255)return 41;if($>=43488&&$<=43519)return 41;if($>=43616&&$<=43647)return 41;if($>=6016&&$<=6143)return 41;if($>=6624&&$<=6655)return 41;if($>=65&&$<=90)return 29;if($>=97&&$<=122)return 29;if($>=192&&$<=591)return 29;if($>=1536&&$<=1791)return 29;if($>=1872&&$<=1919)return 29;if($>=2208&&$<=2303)return 29;if($>=2304&&$<=2431)return 29;if($>=2432&&$<=2559)return 29;if($>=2560&&$<=2687)return 29;if($>=2688&&$<=2815)return 29;if($>=2816&&$<=2943)return 29;if($>=2944&&$<=3071)return 29;if($>=3072&&$<=3199)return 29;if($>=3200&&$<=3327)return 29;if($>=3328&&$<=3455)return 29;if($>=1024&&$<=1279)return 29;if($>=1280&&$<=1327)return 29;if($>=880&&$<=1023)return 29;return 42}function pz($,Q){if($===28)$=29;if($===41)$=29;if($===5)$=29;if($===42)$=29;if($===30)$=20;if(Q===28)Q=29;if(Q===41)Q=29;if(Q===5)Q=29;if(Q===42)Q=29;if(Q===30)Q=20;if($===0)return 5;if($===1&&Q===2)return 4;if($===1||$===2||$===4)return 5;if(Q===0||Q===1||Q===2||Q===4)return 4;if(Q===9||Q===7)return 4;if($===7)return 0;if($===10)return 4;if(Q===3||Q===10){if($!==9)return 4}let Z=$,K=Q;if($===3||$===10)Z=29;if(Q===3||Q===10)K=29;if($=Z,Q=K,$===6||Q===6)return 4;if($===8)return 4;if(Q===8){if($!==9&&$!==12&&$!==14)return 4}if(Q===16||Q===17||Q===18||Q===23||Q===27)return 4;if($===21)return 4;if($===22&&Q===21)return 4;if(($===16||$===17)&&Q===20)return 4;if($===11&&Q===11)return 4;if($===9)return 0;if($===22||Q===22)return 4;if($===15||Q===15)return 0;if(Q===12||Q===14||Q===20)return 4;if($===13)return 4;if($===27&&Q===35)return 4;if(Q===19)return 4;if(($===29||$===35)&&Q===24)return 4;if($===24&&(Q===29||Q===35))return 4;if($===26&&Q===36)return 4;if($===36&&Q===25)return 4;if(($===26||$===25)&&(Q===29||Q===35))return 4;if(($===29||$===35)&&(Q===26||Q===25))return 4;if(($===16||$===17)&&Q===24)return 4;if($===24&&(Q===25||Q===26))return 4;if(($===25||$===26||$===14||$===23||$===24||$===27)&&Q===24)return 4;if($===37){if(Q===37||Q===38||Q===33||Q===34)return 4}if($===38||$===33){if(Q===38||Q===39)return 4}if($===39||$===34){if(Q===39)return 4}if($===37||$===38||$===39||$===33||$===34){if(Q===25)return 4}if(Q===37||Q===38||Q===39||Q===33||Q===34){if($===26)return 4}if(($===29||$===35)&&(Q===29||Q===35))return 4;if($===23&&(Q===29||Q===35))return 4;if(($===29||$===35||$===24)&&Q===21)return 4;if($===17&&(Q===29||Q===35||Q===24))return 4;if($===40&&Q===40)return 4;if($===31&&Q===32)return 4;return 0}function oz($){let Q=[],Z=[...$];for(let K=0;K<Z.length;K++){let J=Z[K];Q.push(J.codePointAt(0)??0)}return HQ(Q)}function HQ($){let Q=$.length,Z=[],K=[];for(let J=0;J<$.length;J++){let q=$[J];Z.push(vW(q))}K.push(0);for(let J=1;J<Q;J++){let q=Z[J-1],U=Z[J];switch(pz(q,U)){case 5:K.push(2);break;case 0:K.push(1);break;default:K.push(0)}}return K.push(2),{breaks:K,classes:Z}}function cz($){let Q=$.map((Z)=>Z.codepoint);return HQ(Q)}function iz($,Q){for(let Z=Q+1;Z<$.breaks.length;Z++)if($.breaks[Z]!==0)return Z;return $.breaks.length-1}function sz($,Q){if(Q<0||Q>=$.breaks.length)return!1;return $.breaks[Q]!==0}function az($,Q){if(Q<0||Q>=$.breaks.length)return!1;return $.breaks[Q]===2}function rz($){let Q=[];for(let Z=0;Z<$.breaks.length;Z++)if($.breaks[Z]!==0)Q.push(Z);return Q}var kW;((v)=>{v.Common="Zyyy";v.Inherited="Zinh";v.Unknown="Zzzz";v.Latin="Latn";v.Greek="Grek";v.Cyrillic="Cyrl";v.Armenian="Armn";v.Hebrew="Hebr";v.Arabic="Arab";v.Syriac="Syrc";v.Thaana="Thaa";v.Devanagari="Deva";v.Bengali="Beng";v.Gurmukhi="Guru";v.Gujarati="Gujr";v.Oriya="Orya";v.Tamil="Taml";v.Telugu="Telu";v.Kannada="Knda";v.Malayalam="Mlym";v.Sinhala="Sinh";v.Thai="Thai";v.Lao="Laoo";v.Tibetan="Tibt";v.Myanmar="Mymr";v.Georgian="Geor";v.Hangul="Hang";v.Ethiopic="Ethi";v.Cherokee="Cher";v.CanadianAboriginal="Cans";v.Ogham="Ogam";v.Runic="Runr";v.Khmer="Khmr";v.Mongolian="Mong";v.Hiragana="Hira";v.Katakana="Kana";v.Bopomofo="Bopo";v.Han="Hani";v.Yi="Yiii";v.OldItalic="Ital";v.Gothic="Goth";v.Deseret="Dsrt";v.Tagalog="Tglg";v.Hanunoo="Hano";v.Buhid="Buhd";v.Tagbanwa="Tagb";v.Limbu="Limb";v.TaiLe="Tale";v.LinearB="Linb";v.Ugaritic="Ugar";v.Shavian="Shaw";v.Osmanya="Osma";v.Cypriot="Cprt";v.Braille="Brai";v.Buginese="Bugi";v.Coptic="Copt";v.NewTaiLue="Talu";v.Glagolitic="Glag";v.Tifinagh="Tfng";v.SylotiNagri="Sylo";v.OldPersian="Xpeo";v.Kharoshthi="Khar";v.Balinese="Bali";v.Cuneiform="Xsux";v.Phoenician="Phnx";v.PhagsPa="Phag";v.Nko="Nkoo";v.Sundanese="Sund";v.Lepcha="Lepc";v.OlChiki="Olck";v.Vai="Vaii";v.Saurashtra="Saur";v.KayahLi="Kali";v.Rejang="Rjng";v.Lycian="Lyci";v.Carian="Cari";v.Lydian="Lydi";v.Cham="Cham";v.TaiTham="Lana";v.TaiViet="Tavt";v.Avestan="Avst";v.EgyptianHieroglyphs="Egyp";v.Samaritan="Samr";v.Lisu="Lisu";v.Bamum="Bamu";v.Javanese="Java";v.MeeteiMayek="Mtei";v.ImperialAramaic="Armi";v.OldSouthArabian="Sarb";v.InscriptionalParthian="Prti";v.InscriptionalPahlavi="Phli";v.OldTurkic="Orkh";v.Kaithi="Kthi";v.Batak="Batk";v.Brahmi="Brah";v.Mandaic="Mand";v.Chakma="Cakm";v.MeroiticCursive="Merc";v.MeroiticHieroglyphs="Mero";v.Miao="Plrd";v.Sharada="Shrd";v.SoraSompeng="Sora";v.Takri="Takr";v.CaucasianAlbanian="Aghb";v.BassaVah="Bass";v.Duployan="Dupl";v.Elbasan="Elba";v.Grantha="Gran";v.PahawhHmong="Hmng";v.Khojki="Khoj";v.LinearA="Lina";v.Mahajani="Mahj";v.Manichaean="Mani";v.MendeKikakui="Mend";v.Modi="Modi";v.Mro="Mroo";v.OldNorthArabian="Narb";v.Nabataean="Nbat";v.Palmyrene="Palm";v.PauCinHau="Pauc";v.OldPermic="Perm";v.PsalterPahlavi="Phlp";v.Siddham="Sidd";v.Khudawadi="Sind";v.Tirhuta="Tirh";v.WarangCiti="Wara";v.Ahom="Ahom";v.AnatolianHieroglyphs="Hluw";v.Hatran="Hatr";v.Multani="Mult";v.OldHungarian="Hung";v.SignWriting="Sgnw";v.Adlam="Adlm";v.Bhaiksuki="Bhks";v.Marchen="Marc";v.Newa="Newa";v.Osage="Osge";v.Tangut="Tang";v.MasaramGondi="Gonm";v.Nushu="Nshu";v.Soyombo="Soyo";v.ZanabazarSquare="Zanb";v.Dogra="Dogr";v.GunjalaGondi="Gong";v.Makasar="Maka";v.Medefaidrin="Medf";v.HanifiRohingya="Rohg";v.Sogdian="Sogd";v.OldSogdian="Sogo";v.Elymaic="Elym";v.Nandinagari="Nand";v.NyiakengPuachueHmong="Hmnp";v.Wancho="Wcho";v.Yezidi="Yezi";v.Chorasmian="Chrs";v.DivesAkuru="Diak";v.KhitanSmallScript="Kits";v.Vithkuqi="Vith";v.OldUyghur="Ougr";v.Cypro_Minoan="Cpmn";v.Tangsa="Tnsa";v.Toto="Toto";v.Kawi="Kawi";v.NagMundari="Nagm"})(kW||={});var IW=[{start:0,end:127,script:"Zyyy"},{start:128,end:255,script:"Latn"},{start:256,end:383,script:"Latn"},{start:384,end:591,script:"Latn"},{start:592,end:687,script:"Latn"},{start:688,end:767,script:"Zyyy"},{start:768,end:879,script:"Zinh"},{start:880,end:1023,script:"Grek"},{start:1024,end:1279,script:"Cyrl"},{start:1280,end:1327,script:"Cyrl"},{start:1328,end:1423,script:"Armn"},{start:1424,end:1535,script:"Hebr"},{start:1536,end:1791,script:"Arab"},{start:1792,end:1871,script:"Syrc"},{start:1872,end:1919,script:"Arab"},{start:1920,end:1983,script:"Thaa"},{start:1984,end:2047,script:"Nkoo"},{start:2048,end:2111,script:"Samr"},{start:2112,end:2143,script:"Mand"},{start:2144,end:2159,script:"Syrc"},{start:2160,end:2207,script:"Arab"},{start:2208,end:2303,script:"Arab"},{start:2304,end:2431,script:"Deva"},{start:2432,end:2559,script:"Beng"},{start:2560,end:2687,script:"Guru"},{start:2688,end:2815,script:"Gujr"},{start:2816,end:2943,script:"Orya"},{start:2944,end:3071,script:"Taml"},{start:3072,end:3199,script:"Telu"},{start:3200,end:3327,script:"Knda"},{start:3328,end:3455,script:"Mlym"},{start:3456,end:3583,script:"Sinh"},{start:3584,end:3711,script:"Thai"},{start:3712,end:3839,script:"Laoo"},{start:3840,end:4095,script:"Tibt"},{start:4096,end:4255,script:"Mymr"},{start:4256,end:4351,script:"Geor"},{start:4352,end:4607,script:"Hang"},{start:4608,end:4991,script:"Ethi"},{start:4992,end:5023,script:"Ethi"},{start:5024,end:5119,script:"Cher"},{start:5120,end:5759,script:"Cans"},{start:5760,end:5791,script:"Ogam"},{start:5792,end:5887,script:"Runr"},{start:5888,end:5919,script:"Tglg"},{start:5920,end:5951,script:"Hano"},{start:5952,end:5983,script:"Buhd"},{start:5984,end:6015,script:"Tagb"},{start:6016,end:6143,script:"Khmr"},{start:6144,end:6319,script:"Mong"},{start:6320,end:6399,script:"Cans"},{start:6400,end:6479,script:"Limb"},{start:6480,end:6527,script:"Tale"},{start:6528,end:6623,script:"Talu"},{start:6624,end:6655,script:"Khmr"},{start:6656,end:6687,script:"Bugi"},{start:6688,end:6831,script:"Lana"},{start:6832,end:6911,script:"Zinh"},{start:6912,end:7039,script:"Bali"},{start:7040,end:7103,script:"Sund"},{start:7104,end:7167,script:"Batk"},{start:7168,end:7247,script:"Lepc"},{start:7248,end:7295,script:"Olck"},{start:7296,end:7311,script:"Cyrl"},{start:7312,end:7359,script:"Geor"},{start:7360,end:7375,script:"Sund"},{start:7376,end:7423,script:"Zinh"},{start:7424,end:7551,script:"Latn"},{start:7552,end:7615,script:"Latn"},{start:7616,end:7679,script:"Zinh"},{start:7680,end:7935,script:"Latn"},{start:7936,end:8191,script:"Grek"},{start:8192,end:8303,script:"Zyyy"},{start:8304,end:8351,script:"Zyyy"},{start:8352,end:8399,script:"Zyyy"},{start:8400,end:8447,script:"Zinh"},{start:8448,end:8527,script:"Zyyy"},{start:8528,end:8591,script:"Zyyy"},{start:8592,end:8703,script:"Zyyy"},{start:8704,end:8959,script:"Zyyy"},{start:8960,end:9215,script:"Zyyy"},{start:9216,end:9279,script:"Zyyy"},{start:9280,end:9311,script:"Zyyy"},{start:9312,end:9471,script:"Zyyy"},{start:9472,end:9599,script:"Zyyy"},{start:9600,end:9631,script:"Zyyy"},{start:9632,end:9727,script:"Zyyy"},{start:9728,end:9983,script:"Zyyy"},{start:9984,end:10175,script:"Zyyy"},{start:10176,end:10223,script:"Zyyy"},{start:10224,end:10239,script:"Zyyy"},{start:10240,end:10495,script:"Brai"},{start:10496,end:10623,script:"Zyyy"},{start:10624,end:10751,script:"Zyyy"},{start:10752,end:11007,script:"Zyyy"},{start:11008,end:11263,script:"Zyyy"},{start:11264,end:11359,script:"Glag"},{start:11360,end:11391,script:"Latn"},{start:11392,end:11519,script:"Copt"},{start:11520,end:11567,script:"Geor"},{start:11568,end:11647,script:"Tfng"},{start:11648,end:11743,script:"Ethi"},{start:11744,end:11775,script:"Cyrl"},{start:11776,end:11903,script:"Zyyy"},{start:11904,end:12031,script:"Hani"},{start:12032,end:12255,script:"Hani"},{start:12272,end:12287,script:"Zyyy"},{start:12288,end:12351,script:"Zyyy"},{start:12352,end:12447,script:"Hira"},{start:12448,end:12543,script:"Kana"},{start:12544,end:12591,script:"Bopo"},{start:12592,end:12687,script:"Hang"},{start:12688,end:12703,script:"Zyyy"},{start:12704,end:12735,script:"Bopo"},{start:12736,end:12783,script:"Zyyy"},{start:12784,end:12799,script:"Kana"},{start:12800,end:13055,script:"Zyyy"},{start:13056,end:13311,script:"Zyyy"},{start:13312,end:19903,script:"Hani"},{start:19904,end:19967,script:"Zyyy"},{start:19968,end:40959,script:"Hani"},{start:40960,end:42127,script:"Yiii"},{start:42128,end:42191,script:"Yiii"},{start:42192,end:42239,script:"Lisu"},{start:42240,end:42559,script:"Vaii"},{start:42560,end:42655,script:"Cyrl"},{start:42656,end:42751,script:"Bamu"},{start:42752,end:42783,script:"Zyyy"},{start:42784,end:43007,script:"Latn"},{start:43008,end:43055,script:"Sylo"},{start:43056,end:43071,script:"Zyyy"},{start:43072,end:43135,script:"Phag"},{start:43136,end:43231,script:"Saur"},{start:43232,end:43263,script:"Deva"},{start:43264,end:43311,script:"Kali"},{start:43312,end:43359,script:"Rjng"},{start:43360,end:43391,script:"Hang"},{start:43392,end:43487,script:"Java"},{start:43488,end:43519,script:"Mymr"},{start:43520,end:43615,script:"Cham"},{start:43616,end:43647,script:"Mymr"},{start:43648,end:43743,script:"Tavt"},{start:43744,end:43775,script:"Mtei"},{start:43776,end:43823,script:"Ethi"},{start:43824,end:43887,script:"Latn"},{start:43888,end:43967,script:"Cher"},{start:43968,end:44031,script:"Mtei"},{start:44032,end:55215,script:"Hang"},{start:55216,end:55295,script:"Hang"},{start:55296,end:57343,script:"Zzzz"},{start:57344,end:63743,script:"Zzzz"},{start:63744,end:64255,script:"Hani"},{start:64256,end:64335,script:"Latn"},{start:64336,end:65023,script:"Arab"},{start:65024,end:65039,script:"Zinh"},{start:65040,end:65055,script:"Zyyy"},{start:65056,end:65071,script:"Zinh"},{start:65072,end:65103,script:"Zyyy"},{start:65104,end:65135,script:"Zyyy"},{start:65136,end:65279,script:"Arab"},{start:65280,end:65519,script:"Zyyy"},{start:65520,end:65535,script:"Zyyy"},{start:65536,end:65663,script:"Linb"},{start:65664,end:65791,script:"Linb"},{start:65792,end:65855,script:"Zyyy"},{start:65856,end:65935,script:"Grek"},{start:65936,end:65999,script:"Zyyy"},{start:66000,end:66047,script:"Zyyy"},{start:66176,end:66207,script:"Lyci"},{start:66208,end:66271,script:"Cari"},{start:66272,end:66303,script:"Zinh"},{start:66304,end:66351,script:"Ital"},{start:66352,end:66383,script:"Goth"},{start:66384,end:66431,script:"Perm"},{start:66432,end:66463,script:"Ugar"},{start:66464,end:66527,script:"Xpeo"},{start:66560,end:66639,script:"Dsrt"},{start:66640,end:66687,script:"Shaw"},{start:66688,end:66735,script:"Osma"},{start:66736,end:66815,script:"Osge"},{start:66816,end:66863,script:"Elba"},{start:66864,end:66927,script:"Aghb"},{start:66928,end:67007,script:"Vith"},{start:67072,end:67455,script:"Lina"},{start:67456,end:67519,script:"Latn"},{start:67584,end:67647,script:"Cprt"},{start:67648,end:67679,script:"Armi"},{start:67680,end:67711,script:"Palm"},{start:67712,end:67759,script:"Nbat"},{start:67808,end:67839,script:"Hatr"},{start:67840,end:67871,script:"Phnx"},{start:67872,end:67903,script:"Lydi"},{start:67968,end:67999,script:"Mero"},{start:68000,end:68095,script:"Merc"},{start:68096,end:68191,script:"Khar"},{start:68192,end:68223,script:"Sarb"},{start:68224,end:68255,script:"Narb"},{start:68288,end:68351,script:"Mani"},{start:68352,end:68415,script:"Avst"},{start:68416,end:68447,script:"Prti"},{start:68448,end:68479,script:"Phli"},{start:68480,end:68527,script:"Phlp"},{start:68608,end:68687,script:"Orkh"},{start:68736,end:68863,script:"Hung"},{start:68864,end:68927,script:"Rohg"},{start:69248,end:69311,script:"Yezi"},{start:69376,end:69423,script:"Sogo"},{start:69424,end:69487,script:"Sogd"},{start:69488,end:69551,script:"Ougr"},{start:69552,end:69599,script:"Chrs"},{start:69600,end:69631,script:"Elym"},{start:69632,end:69759,script:"Brah"},{start:69760,end:69839,script:"Kthi"},{start:69840,end:69887,script:"Sora"},{start:69888,end:69967,script:"Cakm"},{start:69968,end:70015,script:"Mahj"},{start:70016,end:70111,script:"Shrd"},{start:70112,end:70143,script:"Sinh"},{start:70144,end:70223,script:"Khoj"},{start:70272,end:70319,script:"Mult"},{start:70320,end:70399,script:"Sind"},{start:70400,end:70527,script:"Gran"},{start:70656,end:70783,script:"Newa"},{start:70784,end:70879,script:"Tirh"},{start:71040,end:71167,script:"Sidd"},{start:71168,end:71263,script:"Modi"},{start:71264,end:71295,script:"Mong"},{start:71296,end:71375,script:"Takr"},{start:71424,end:71503,script:"Ahom"},{start:71680,end:71759,script:"Dogr"},{start:71840,end:71935,script:"Wara"},{start:71936,end:72031,script:"Diak"},{start:72096,end:72191,script:"Nand"},{start:72192,end:72271,script:"Zanb"},{start:72272,end:72367,script:"Soyo"},{start:72368,end:72383,script:"Cans"},{start:72384,end:72447,script:"Pauc"},{start:72704,end:72815,script:"Bhks"},{start:72816,end:72895,script:"Marc"},{start:72960,end:73055,script:"Gonm"},{start:73056,end:73135,script:"Gong"},{start:73440,end:73471,script:"Maka"},{start:73472,end:73567,script:"Kawi"},{start:73728,end:74751,script:"Xsux"},{start:74752,end:74879,script:"Xsux"},{start:74880,end:75087,script:"Xsux"},{start:77712,end:77823,script:"Cpmn"},{start:77824,end:78895,script:"Egyp"},{start:78896,end:78943,script:"Egyp"},{start:82944,end:83583,script:"Hluw"},{start:92160,end:92735,script:"Bamu"},{start:92736,end:92783,script:"Mroo"},{start:92784,end:92879,script:"Tnsa"},{start:92880,end:92927,script:"Bass"},{start:92928,end:93071,script:"Hmng"},{start:93760,end:93855,script:"Medf"},{start:93952,end:94111,script:"Plrd"},{start:94176,end:94207,script:"Zyyy"},{start:94208,end:100351,script:"Tang"},{start:100352,end:101119,script:"Tang"},{start:101120,end:101631,script:"Kits"},{start:101632,end:101759,script:"Tang"},{start:110576,end:110591,script:"Kana"},{start:110592,end:110847,script:"Hira"},{start:110848,end:110895,script:"Hira"},{start:110896,end:110959,script:"Kana"},{start:110960,end:111359,script:"Nshu"},{start:113664,end:113823,script:"Dupl"},{start:113824,end:113839,script:"Zyyy"},{start:118528,end:118735,script:"Zyyy"},{start:118784,end:119039,script:"Zyyy"},{start:119040,end:119295,script:"Zyyy"},{start:119296,end:119375,script:"Grek"},{start:119488,end:119519,script:"Zyyy"},{start:119520,end:119551,script:"Zyyy"},{start:119552,end:119647,script:"Zyyy"},{start:119648,end:119679,script:"Zyyy"},{start:119808,end:120831,script:"Zyyy"},{start:120832,end:121519,script:"Sgnw"},{start:122624,end:122879,script:"Latn"},{start:122880,end:122927,script:"Glag"},{start:122928,end:123023,script:"Cyrl"},{start:123136,end:123215,script:"Hmnp"},{start:123536,end:123583,script:"Toto"},{start:123584,end:123647,script:"Wcho"},{start:124112,end:124159,script:"Nagm"},{start:124896,end:124927,script:"Ethi"},{start:124928,end:125151,script:"Mend"},{start:125184,end:125279,script:"Adlm"},{start:126064,end:126143,script:"Zyyy"},{start:126208,end:126287,script:"Zyyy"},{start:126464,end:126719,script:"Arab"},{start:126976,end:127023,script:"Zyyy"},{start:127024,end:127135,script:"Zyyy"},{start:127136,end:127231,script:"Zyyy"},{start:127232,end:127487,script:"Zyyy"},{start:127488,end:127743,script:"Zyyy"},{start:127744,end:128511,script:"Zyyy"},{start:128512,end:128591,script:"Zyyy"},{start:128592,end:128639,script:"Zyyy"},{start:128640,end:128767,script:"Zyyy"},{start:128768,end:128895,script:"Zyyy"},{start:128896,end:129023,script:"Zyyy"},{start:129024,end:129279,script:"Zyyy"},{start:129280,end:129535,script:"Zyyy"},{start:129536,end:129647,script:"Zyyy"},{start:129648,end:129791,script:"Zyyy"},{start:129792,end:130047,script:"Zyyy"},{start:131072,end:173791,script:"Hani"},{start:173824,end:177983,script:"Hani"},{start:177984,end:178207,script:"Hani"},{start:178208,end:183983,script:"Hani"},{start:183984,end:191471,script:"Hani"},{start:194560,end:195103,script:"Hani"},{start:196608,end:201551,script:"Hani"},{start:201552,end:205743,script:"Hani"},{start:917504,end:917631,script:"Zyyy"},{start:917760,end:917999,script:"Zinh"},{start:983040,end:1048575,script:"Zzzz"},{start:1048576,end:1114111,script:"Zzzz"}];function N0($){let Q=0,Z=IW.length-1;while(Q<=Z){let K=Q+Z>>>1,J=IW[K];if($<J.start)Z=K-1;else if($>J.end)Q=K+1;else return J.script}return"Zzzz"}function tz($){let Q=new Map,Z=[...$];for(let U=0;U<Z.length;U++){let H=Z[U].codePointAt(0)??0,_=N0(H);if(_==="Zyyy"||_==="Zinh")continue;Q.set(_,(Q.get(_)??0)+1)}if(Q.size===0)return"Zyyy";let K="Zyyy",J=0,q=[...Q];for(let U=0;U<q.length;U++){let[W,H]=q[U];if(H>J)J=H,K=W}return K}function ez($){let Q=new Set,Z=[...$];for(let K=0;K<Z.length;K++){let q=Z[K].codePointAt(0)??0,U=N0(q);Q.add(U)}return[...Q]}function $2($,Q){let Z=[...$];for(let K=0;K<Z.length;K++){let q=Z[K].codePointAt(0)??0,U=N0(q);if(U!==Q&&U!=="Zyyy"&&U!=="Zinh")return!1}return!0}function Q2($){let Q=[];if($.length===0)return Q;let Z=null,K=0,J=0,q=[...$];for(let U=0;U<q.length;U++){let H=q[U].codePointAt(0)??0,_=N0(H);if(_==="Zyyy"||_==="Zinh"){if(Z!==null)_=Z}if(Z===null)Z=_,K=U;else if(_!==Z&&_!=="Zyyy"&&_!=="Zinh")Q.push({script:Z,start:K,end:U,text:q.slice(K,U).join("")}),Z=_,K=U}if(Z!==null)Q.push({script:Z,start:K,end:q.length,text:q.slice(K).join("")});return Q}function Z2($){return{["Zyyy"]:"DFLT",["Zinh"]:"DFLT",["Zzzz"]:"DFLT",["Latn"]:"latn",["Grek"]:"grek",["Cyrl"]:"cyrl",["Armn"]:"armn",["Hebr"]:"hebr",["Arab"]:"arab",["Syrc"]:"syrc",["Thaa"]:"thaa",["Deva"]:"deva",["Beng"]:"beng",["Guru"]:"guru",["Gujr"]:"gujr",["Orya"]:"orya",["Taml"]:"taml",["Telu"]:"telu",["Knda"]:"knda",["Mlym"]:"mlym",["Sinh"]:"sinh",["Thai"]:"thai",["Laoo"]:"lao ",["Tibt"]:"tibt",["Mymr"]:"mymr",["Geor"]:"geor",["Hang"]:"hang",["Ethi"]:"ethi",["Cher"]:"cher",["Cans"]:"cans",["Ogam"]:"ogam",["Runr"]:"runr",["Khmr"]:"khmr",["Mong"]:"mong",["Hira"]:"kana",["Kana"]:"kana",["Bopo"]:"bopo",["Hani"]:"hani",["Yiii"]:"yi ",["Ital"]:"ital",["Goth"]:"goth",["Dsrt"]:"dsrt",["Tglg"]:"tglg",["Hano"]:"hano",["Buhd"]:"buhd",["Tagb"]:"tagb",["Limb"]:"limb",["Tale"]:"tale",["Linb"]:"linb",["Ugar"]:"ugar",["Shaw"]:"shaw",["Osma"]:"osma",["Cprt"]:"cprt",["Brai"]:"brai",["Bugi"]:"bugi",["Copt"]:"copt",["Talu"]:"talu",["Glag"]:"glag",["Tfng"]:"tfng",["Sylo"]:"sylo",["Xpeo"]:"xpeo",["Khar"]:"khar",["Bali"]:"bali",["Xsux"]:"xsux",["Phnx"]:"phnx",["Phag"]:"phag",["Nkoo"]:"nko ",["Sund"]:"sund",["Lepc"]:"lepc",["Olck"]:"olck",["Vaii"]:"vai ",["Saur"]:"saur",["Kali"]:"kali",["Rjng"]:"rjng",["Lyci"]:"lyci",["Cari"]:"cari",["Lydi"]:"lydi",["Cham"]:"cham",["Lana"]:"lana",["Tavt"]:"tavt",["Avst"]:"avst",["Egyp"]:"egyp",["Samr"]:"samr",["Lisu"]:"lisu",["Bamu"]:"bamu",["Java"]:"java",["Mtei"]:"mtei",["Armi"]:"armi",["Sarb"]:"sarb",["Prti"]:"prti",["Phli"]:"phli",["Orkh"]:"orkh",["Kthi"]:"kthi",["Batk"]:"batk",["Brah"]:"brah",["Mand"]:"mand",["Cakm"]:"cakm",["Merc"]:"merc",["Mero"]:"mero",["Plrd"]:"plrd",["Shrd"]:"shrd",["Sora"]:"sora",["Takr"]:"takr",["Aghb"]:"aghb",["Bass"]:"bass",["Dupl"]:"dupl",["Elba"]:"elba",["Gran"]:"gran",["Hmng"]:"hmng",["Khoj"]:"khoj",["Lina"]:"lina",["Mahj"]:"mahj",["Mani"]:"mani",["Mend"]:"mend",["Modi"]:"modi",["Mroo"]:"mroo",["Narb"]:"narb",["Nbat"]:"nbat",["Palm"]:"palm",["Pauc"]:"pauc",["Perm"]:"perm",["Phlp"]:"phlp",["Sidd"]:"sidd",["Sind"]:"sind",["Tirh"]:"tirh",["Wara"]:"wara",["Ahom"]:"ahom",["Hluw"]:"hluw",["Hatr"]:"hatr",["Mult"]:"mult",["Hung"]:"hung",["Sgnw"]:"sgnw",["Adlm"]:"adlm",["Bhks"]:"bhks",["Marc"]:"marc",["Newa"]:"newa",["Osge"]:"osge",["Tang"]:"tang",["Gonm"]:"gonm",["Nshu"]:"nshu",["Soyo"]:"soyo",["Zanb"]:"zanb",["Dogr"]:"dogr",["Gong"]:"gong",["Maka"]:"maka",["Medf"]:"medf",["Rohg"]:"rohg",["Sogd"]:"sogd",["Sogo"]:"sogo",["Elym"]:"elym",["Nand"]:"nand",["Hmnp"]:"hmnp",["Wcho"]:"wcho",["Yezi"]:"yezi",["Chrs"]:"chrs",["Diak"]:"diak",["Kits"]:"kits",["Vith"]:"vith",["Ougr"]:"ougr",["Cpmn"]:"cpmn",["Tnsa"]:"tnsa",["Toto"]:"toto",["Kawi"]:"kawi",["Nagm"]:"nagm"}[$]??"DFLT"}var K2=new Set(["Arab","Syrc","Hebr","Thaa","Nkoo","Deva","Beng","Guru","Gujr","Orya","Taml","Telu","Knda","Mlym","Sinh","Thai","Laoo","Tibt","Mymr","Khmr","Mong","Hang"]),J2=new Set(["Arab","Hebr","Syrc","Thaa","Nkoo","Samr","Mand","Armi","Phnx","Sarb","Narb","Avst","Prti","Phli","Phlp","Hatr","Lydi","Nbat","Palm","Mani","Mend","Rohg","Yezi","Sogo","Sogd","Elym","Chrs","Ougr","Adlm"]);function q2($){return K2.has($)}function U2($){return J2.has($)?"rtl":"ltr"}var CW;((G)=>{G[G.Other=0]="Other";G[G.CR=1]="CR";G[G.LF=2]="LF";G[G.Control=3]="Control";G[G.Extend=4]="Extend";G[G.ZWJ=5]="ZWJ";G[G.Regional_Indicator=6]="Regional_Indicator";G[G.Prepend=7]="Prepend";G[G.SpacingMark=8]="SpacingMark";G[G.L=9]="L";G[G.V=10]="V";G[G.T=11]="T";G[G.LV=12]="LV";G[G.LVT=13]="LVT";G[G.Extended_Pictographic=14]="Extended_Pictographic"})(CW||={});var SW;((A)=>{A[A.Other=0]="Other";A[A.CR=1]="CR";A[A.LF=2]="LF";A[A.Newline=3]="Newline";A[A.Extend=4]="Extend";A[A.ZWJ=5]="ZWJ";A[A.Regional_Indicator=6]="Regional_Indicator";A[A.Format=7]="Format";A[A.Katakana=8]="Katakana";A[A.Hebrew_Letter=9]="Hebrew_Letter";A[A.ALetter=10]="ALetter";A[A.Single_Quote=11]="Single_Quote";A[A.Double_Quote=12]="Double_Quote";A[A.MidNumLet=13]="MidNumLet";A[A.MidLetter=14]="MidLetter";A[A.MidNum=15]="MidNum";A[A.Numeric=16]="Numeric";A[A.ExtendNumLet=17]="ExtendNumLet";A[A.WSegSpace=18]="WSegSpace";A[A.Extended_Pictographic=19]="Extended_Pictographic"})(SW||={});function _Q($){if($===13)return 1;if($===10)return 2;if($>=0&&$<=31&&$!==10&&$!==13)return 3;if($>=127&&$<=159)return 3;if($===173)return 3;if($===1564)return 3;if($===6158)return 3;if($===8203)return 3;if($>=8206&&$<=8207)return 3;if($>=8232&&$<=8238)return 3;if($>=8288&&$<=8303)return 3;if($===65279)return 3;if($>=65520&&$<=65531)return 3;if($===8205)return 5;if($>=127456&&$<=127487)return 6;if($===1536||$===1537||$===1538||$===1539||$===1540||$===1541||$===1757||$===1807||$===2192||$===2193||$===2274||$===69821||$===69837)return 7;if($>=4352&&$<=4447)return 9;if($>=43360&&$<=43388)return 9;if($>=4448&&$<=4519)return 10;if($>=55216&&$<=55238)return 10;if($>=4520&&$<=4607)return 11;if($>=55243&&$<=55291)return 11;if($>=44032&&$<=55203){if(($-44032)%28===0)return 12;return 13}if($>=127744&&$<=129535)return 14;if($>=129536&&$<=129791)return 14;if($>=9728&&$<=9983)return 14;if($>=9984&&$<=10175)return 14;if($===169||$===174)return 14;if($>=8960&&$<=9215)return 14;if($>=126976&&$<=127023)return 14;if($>=127136&&$<=127231)return 14;if($>=127232&&$<=127487)return 14;if($>=127488&&$<=127743)return 14;if($>=2307&&$<=2307)return 8;if($>=2363&&$<=2363)return 8;if($>=2366&&$<=2368)return 8;if($>=2377&&$<=2380)return 8;if($>=2382&&$<=2383)return 8;if($>=2434&&$<=2435)return 8;if($>=2494&&$<=2496)return 8;if($>=2503&&$<=2508)return 8;if($===2519)return 8;if($>=2563&&$<=2563)return 8;if($>=2622&&$<=2624)return 8;if($>=2691&&$<=2691)return 8;if($>=2750&&$<=2752)return 8;if($===2761)return 8;if($>=2763&&$<=2764)return 8;if($>=2818&&$<=2819)return 8;if($===2878)return 8;if($===2880)return 8;if($>=2887&&$<=2892)return 8;if($===2903)return 8;if($>=3006&&$<=3007)return 8;if($>=3009&&$<=3020)return 8;if($===3031)return 8;if($>=3073&&$<=3075)return 8;if($>=3137&&$<=3140)return 8;if($>=3202&&$<=3203)return 8;if($===3262)return 8;if($>=3264&&$<=3268)return 8;if($>=3271&&$<=3275)return 8;if($>=3285&&$<=3286)return 8;if($>=3330&&$<=3331)return 8;if($>=3390&&$<=3392)return 8;if($>=3398&&$<=3404)return 8;if($===3415)return 8;if($>=3458&&$<=3459)return 8;if($>=3535&&$<=3537)return 8;if($>=3544&&$<=3551)return 8;if($>=3570&&$<=3571)return 8;if($===3902||$===3903)return 8;if($===3967)return 8;if($>=4139&&$<=4140)return 8;if($===4145)return 8;if($===4152)return 8;if($>=4155&&$<=4156)return 8;if($>=4182&&$<=4183)return 8;if($===4194)return 8;if($>=4199&&$<=4200)return 8;if($>=4227&&$<=4228)return 8;if($>=4231&&$<=4236)return 8;if($===4239)return 8;if($>=4250&&$<=4252)return 8;if($>=6070&&$<=6070)return 8;if($>=6078&&$<=6085)return 8;if($>=6087&&$<=6088)return 8;if($>=6435&&$<=6438)return 8;if($>=6441&&$<=6443)return 8;if($>=6448&&$<=6449)return 8;if($>=6451&&$<=6456)return 8;if($>=768&&$<=879)return 4;if($>=1155&&$<=1161)return 4;if($>=1425&&$<=1469)return 4;if($===1471)return 4;if($>=1473&&$<=1474)return 4;if($>=1476&&$<=1477)return 4;if($===1479)return 4;if($>=1552&&$<=1562)return 4;if($>=1611&&$<=1631)return 4;if($===1648)return 4;if($>=1750&&$<=1756)return 4;if($>=1759&&$<=1764)return 4;if($>=1767&&$<=1768)return 4;if($>=1770&&$<=1773)return 4;if($===1809)return 4;if($>=1840&&$<=1866)return 4;if($>=1958&&$<=1968)return 4;if($>=2027&&$<=2035)return 4;if($===2045)return 4;if($>=2070&&$<=2073)return 4;if($>=2075&&$<=2083)return 4;if($>=2085&&$<=2087)return 4;if($>=2089&&$<=2093)return 4;if($>=2137&&$<=2139)return 4;if($>=2259&&$<=2273)return 4;if($>=2275&&$<=2306)return 4;if($===2362)return 4;if($===2364)return 4;if($>=2369&&$<=2376)return 4;if($===2381)return 4;if($>=2385&&$<=2391)return 4;if($>=2402&&$<=2403)return 4;if($===2433)return 4;if($===2492)return 4;if($>=2497&&$<=2500)return 4;if($===2509)return 4;if($>=2530&&$<=2531)return 4;if($===2558)return 4;if($>=2561&&$<=2562)return 4;if($===2620)return 4;if($>=2625&&$<=2626)return 4;if($>=2631&&$<=2632)return 4;if($>=2635&&$<=2637)return 4;if($===2641)return 4;if($>=2672&&$<=2673)return 4;if($===2677)return 4;if($>=2689&&$<=2690)return 4;if($===2748)return 4;if($>=2753&&$<=2757)return 4;if($>=2759&&$<=2760)return 4;if($===2765)return 4;if($>=2786&&$<=2787)return 4;if($>=2810&&$<=2815)return 4;if($===2817)return 4;if($===2876)return 4;if($===2879)return 4;if($>=2881&&$<=2884)return 4;if($===2893)return 4;if($>=2901&&$<=2902)return 4;if($>=2914&&$<=2915)return 4;if($===2946)return 4;if($===3008)return 4;if($===3021)return 4;if($===3072)return 4;if($===3076)return 4;if($>=3134&&$<=3136)return 4;if($>=3142&&$<=3144)return 4;if($>=3146&&$<=3149)return 4;if($>=3157&&$<=3158)return 4;if($>=3170&&$<=3171)return 4;if($===3201)return 4;if($===3260)return 4;if($===3263)return 4;if($===3270)return 4;if($>=3276&&$<=3277)return 4;if($>=3298&&$<=3299)return 4;if($>=3328&&$<=3329)return 4;if($>=3387&&$<=3388)return 4;if($>=3393&&$<=3396)return 4;if($===3405)return 4;if($>=3426&&$<=3427)return 4;if($===3457)return 4;if($===3530)return 4;if($>=3538&&$<=3540)return 4;if($===3542)return 4;if($===3633)return 4;if($>=3636&&$<=3642)return 4;if($>=3655&&$<=3662)return 4;if($===3761)return 4;if($>=3764&&$<=3772)return 4;if($>=3784&&$<=3789)return 4;if($>=3864&&$<=3865)return 4;if($===3893)return 4;if($===3895)return 4;if($===3897)return 4;if($>=3953&&$<=3966)return 4;if($>=3968&&$<=3972)return 4;if($>=3974&&$<=3975)return 4;if($>=3981&&$<=3991)return 4;if($>=3993&&$<=4028)return 4;if($===4038)return 4;if($>=4141&&$<=4144)return 4;if($>=4146&&$<=4151)return 4;if($>=4153&&$<=4154)return 4;if($>=4157&&$<=4158)return 4;if($>=4184&&$<=4185)return 4;if($>=4190&&$<=4192)return 4;if($>=4209&&$<=4212)return 4;if($===4226)return 4;if($>=4229&&$<=4230)return 4;if($===4237)return 4;if($===4253)return 4;if($>=4957&&$<=4959)return 4;if($>=5906&&$<=5908)return 4;if($>=5938&&$<=5940)return 4;if($>=5970&&$<=5971)return 4;if($>=6002&&$<=6003)return 4;if($>=6068&&$<=6069)return 4;if($>=6071&&$<=6077)return 4;if($===6086)return 4;if($>=6089&&$<=6099)return 4;if($===6109)return 4;if($>=6155&&$<=6157)return 4;if($===6159)return 4;if($>=6277&&$<=6278)return 4;if($===6313)return 4;if($>=6432&&$<=6434)return 4;if($>=6439&&$<=6440)return 4;if($===6450)return 4;if($>=6457&&$<=6459)return 4;if($>=6679&&$<=6680)return 4;if($===6683)return 4;if($===6742)return 4;if($>=6744&&$<=6750)return 4;if($===6752)return 4;if($===6754)return 4;if($>=6757&&$<=6764)return 4;if($>=6771&&$<=6780)return 4;if($===6783)return 4;if($>=6832&&$<=6862)return 4;if($>=6912&&$<=6915)return 4;if($===6964)return 4;if($>=6966&&$<=6970)return 4;if($===6972)return 4;if($===6978)return 4;if($>=7019&&$<=7027)return 4;if($>=7040&&$<=7041)return 4;if($>=7074&&$<=7077)return 4;if($>=7080&&$<=7081)return 4;if($>=7083&&$<=7085)return 4;if($===7142)return 4;if($>=7144&&$<=7145)return 4;if($===7149)return 4;if($>=7151&&$<=7153)return 4;if($>=7212&&$<=7219)return 4;if($>=7222&&$<=7223)return 4;if($>=7376&&$<=7378)return 4;if($>=7380&&$<=7392)return 4;if($>=7394&&$<=7400)return 4;if($===7405)return 4;if($===7412)return 4;if($>=7416&&$<=7417)return 4;if($>=7616&&$<=7679)return 4;if($>=8400&&$<=8432)return 4;if($>=11503&&$<=11505)return 4;if($===11647)return 4;if($>=11744&&$<=11775)return 4;if($>=12330&&$<=12335)return 4;if($>=12441&&$<=12442)return 4;if($>=42607&&$<=42610)return 4;if($>=42612&&$<=42621)return 4;if($>=42654&&$<=42655)return 4;if($>=42736&&$<=42737)return 4;if($===43010)return 4;if($===43014)return 4;if($===43019)return 4;if($>=43045&&$<=43046)return 4;if($===43052)return 4;if($>=43204&&$<=43205)return 4;if($>=43232&&$<=43249)return 4;if($===43263)return 4;if($>=43302&&$<=43309)return 4;if($>=43335&&$<=43345)return 4;if($>=43392&&$<=43394)return 4;if($===43443)return 4;if($>=43446&&$<=43449)return 4;if($>=43452&&$<=43453)return 4;if($===43493)return 4;if($>=43561&&$<=43566)return 4;if($>=43569&&$<=43570)return 4;if($>=43573&&$<=43574)return 4;if($===43587)return 4;if($===43596)return 4;if($===43644)return 4;if($===43696)return 4;if($>=43698&&$<=43700)return 4;if($>=43703&&$<=43704)return 4;if($>=43710&&$<=43711)return 4;if($===43713)return 4;if($>=43756&&$<=43757)return 4;if($===43766)return 4;if($===44005)return 4;if($===44008)return 4;if($===44013)return 4;if($===64286)return 4;if($>=65024&&$<=65039)return 4;if($>=65056&&$<=65071)return 4;if($>=127995&&$<=127999)return 4;if($>=917760&&$<=917999)return 4;return 0}function hW($){if($===13)return 1;if($===10)return 2;if($===11||$===12||$===133||$===8232||$===8233)return 3;if($===8205)return 5;if($===173)return 7;if($===1564)return 7;if($===8203)return 7;if($>=8206&&$<=8207)return 7;if($>=8288&&$<=8303)return 7;if($===65279)return 7;if($>=127456&&$<=127487)return 6;if($>=127744&&$<=129535)return 19;if($>=129536&&$<=129791)return 19;if($>=9728&&$<=9983)return 19;if($>=9984&&$<=10175)return 19;if($>=1488&&$<=1514)return 9;if($>=64285&&$<=64335)return 9;if($>=12448&&$<=12543)return 8;if($===12337||$===12338||$===12339||$===12340||$===12341)return 8;if($===12443||$===12444)return 8;if($>=12784&&$<=12799)return 8;if($>=13008&&$<=13054)return 8;if($>=13056&&$<=13143)return 8;if($>=65382&&$<=65437)return 8;if($===39)return 11;if($===34)return 12;if($===46)return 13;if($===8216||$===8217)return 13;if($===8228)return 13;if($===65106)return 13;if($===65287)return 13;if($===65294)return 13;if($===58)return 14;if($===183)return 14;if($===903)return 14;if($===1524)return 14;if($===8231)return 14;if($===65043)return 14;if($===65109)return 14;if($===65306)return 14;if($===44)return 15;if($===59)return 15;if($===894)return 15;if($===1417)return 15;if($===1548||$===1549)return 15;if($===1644)return 15;if($===2040)return 15;if($===8260)return 15;if($===65040)return 15;if($===65044)return 15;if($===65104)return 15;if($===65108)return 15;if($===65292)return 15;if($===65307)return 15;if($>=48&&$<=57)return 16;if($>=1632&&$<=1641)return 16;if($>=1776&&$<=1785)return 16;if($>=1984&&$<=1993)return 16;if($>=2406&&$<=2415)return 16;if($>=2534&&$<=2543)return 16;if($>=2662&&$<=2671)return 16;if($>=2790&&$<=2799)return 16;if($>=2918&&$<=2927)return 16;if($>=3046&&$<=3055)return 16;if($>=3174&&$<=3183)return 16;if($>=3302&&$<=3311)return 16;if($>=3430&&$<=3439)return 16;if($>=3558&&$<=3567)return 16;if($>=3664&&$<=3673)return 16;if($>=3792&&$<=3801)return 16;if($>=3872&&$<=3881)return 16;if($>=4160&&$<=4169)return 16;if($>=4240&&$<=4249)return 16;if($>=6112&&$<=6121)return 16;if($>=6160&&$<=6169)return 16;if($>=6470&&$<=6479)return 16;if($>=6608&&$<=6617)return 16;if($>=6784&&$<=6793)return 16;if($>=6800&&$<=6809)return 16;if($>=6992&&$<=7001)return 16;if($>=7088&&$<=7097)return 16;if($>=7232&&$<=7241)return 16;if($>=7248&&$<=7257)return 16;if($>=42528&&$<=42537)return 16;if($>=43216&&$<=43225)return 16;if($>=43264&&$<=43273)return 16;if($>=43472&&$<=43481)return 16;if($>=43504&&$<=43513)return 16;if($>=43600&&$<=43609)return 16;if($>=44016&&$<=44025)return 16;if($>=65296&&$<=65305)return 16;if($===95)return 17;if($===8239)return 17;if($===8256)return 17;if($===8276)return 17;if($===65075||$===65076)return 17;if($>=65101&&$<=65103)return 17;if($===65343)return 17;if($===32)return 18;if($===5760)return 18;if($>=8192&&$<=8202&&$!==8199)return 18;if($===8287)return 18;if($===12288)return 18;if(_Q($)===4)return 4;if($>=65&&$<=90)return 10;if($>=97&&$<=122)return 10;if($>=192&&$<=214)return 10;if($>=216&&$<=246)return 10;if($>=248&&$<=591)return 10;if($>=592&&$<=687)return 10;if($>=880&&$<=1023)return 10;if($>=1024&&$<=1279)return 10;if($>=1280&&$<=1327)return 10;if($>=1329&&$<=1366)return 10;if($>=1376&&$<=1416)return 10;if($>=1536&&$<=1791)return 10;if($>=2304&&$<=2431)return 10;if($>=2432&&$<=2559)return 10;if($>=2560&&$<=2687)return 10;if($>=2688&&$<=2815)return 10;if($>=2816&&$<=2943)return 10;if($>=2944&&$<=3071)return 10;if($>=3072&&$<=3199)return 10;if($>=3200&&$<=3327)return 10;if($>=3328&&$<=3455)return 10;if($>=3584&&$<=3711)return 10;if($>=3712&&$<=3839)return 10;if($>=4096&&$<=4255)return 10;if($>=4256&&$<=4351)return 10;if($>=4352&&$<=4607)return 10;if($>=6016&&$<=6143)return 10;if($>=12352&&$<=12447)return 10;if($>=7936&&$<=8191)return 10;if($>=11264&&$<=11359)return 10;if($>=40960&&$<=42127)return 10;if($>=42192&&$<=42239)return 10;if($>=42240&&$<=42559)return 10;if($>=42560&&$<=42655)return 10;if($>=42784&&$<=43007)return 10;if($>=43776&&$<=43887)return 10;if($>=44032&&$<=55215)return 10;if($>=64256&&$<=64262)return 10;if($>=65313&&$<=65338)return 10;if($>=65345&&$<=65370)return 10;return 0}function NQ($){let Q=$.length,Z=[],K=[];for(let U=0;U<$.length;U++){let W=$[U];Z.push(_Q(W))}if(Q===0)return{boundaries:K,properties:Z};let J=0,q=!1;for(let U=1;U<Q;U++){let W=Z[U-1],H=Z[U],_=!0;if(W===1&&H===2)_=!1;else if(W===3||W===1||W===2)_=!0;else if(H===3||H===1||H===2)_=!0;else if(W===9&&(H===9||H===10||H===12||H===13))_=!1;else if((W===12||W===10)&&(H===10||H===11))_=!1;else if((W===13||W===11)&&H===11)_=!1;else if(H===4||H===5)_=!1;else if(H===8)_=!1;else if(W===7)_=!1;else if(q&&W===5&&H===14)_=!1;else if(W===6&&H===6){if(J%2===1)_=!1}if(H===14)q=!0;else if(H!==4&&H!==5)q=!1;if(H===6)J++;else J=0;if(_)K.push(U)}return K.push(Q),{boundaries:K,properties:Z}}function yW($){let Q=$.length,Z=[],K=[];for(let q=0;q<$.length;q++){let U=$[q];Z.push(hW(U))}if(Q===0)return{boundaries:K,properties:Z};K.push(0);let J=0;for(let q=1;q<Q;q++){let U=Z[q-1],W=Z[q],H=!0;if(U===1&&W===2)H=!1;else if(U===3||U===1||U===2)H=!0;else if(W===3||W===1||W===2)H=!0;else if(U===5&&W===19)H=!1;else if(U===18&&W===18)H=!1;else if(W===7||W===4||W===5)H=!1;else if((U===10||U===9)&&(W===10||W===9))H=!1;else if((U===10||U===9)&&(W===14||W===13||W===11)){if(q+1<Q){let _=Z[q+1];if(_===10||_===9)H=!1}}else if(U===16&&W===16)H=!1;else if((U===10||U===9)&&W===16)H=!1;else if(U===16&&(W===10||W===9))H=!1;else if(U===16&&(W===15||W===13||W===11)){if(q+1<Q&&Z[q+1]===16)H=!1}else if(U===8&&W===8)H=!1;else if((U===10||U===9||U===16||U===8||U===17)&&W===17)H=!1;else if(U===17&&(W===10||W===9||W===16||W===8))H=!1;else if(U===6&&W===6){if(J%2===1)H=!1}if(W===6)J++;else J=0;if(H)K.push(q)}return K.push(Q),{boundaries:K,properties:Z}}function W2($){let Q=[],Z=[...$];for(let U=0;U<Z.length;U++){let W=Z[U];Q.push(W.codePointAt(0)??0)}let{boundaries:K}=NQ(Q),J=[],q=0;for(let U=0;U<K.length;U++){let W=K[U];if(W>q)J.push(Z.slice(q,W).join(""));q=W}return J}function H2($){let Q=[],Z=[...$];for(let U=0;U<Z.length;U++){let W=Z[U];Q.push(W.codePointAt(0)??0)}let{boundaries:K,properties:J}=yW(Q),q=[];for(let U=0;U<K.length-1;U++){let W=K[U],H=K[U+1],_=!1;for(let N=W;N<H;N++){let V=J[N];if(V!==18&&V!==1&&V!==2&&V!==3){_=!0;break}}if(_)q.push(Z.slice(W,H).join(""))}return q}function _2($){let Q=[],Z=[...$];for(let J=0;J<Z.length;J++){let q=Z[J];Q.push(q.codePointAt(0)??0)}let{boundaries:K}=NQ(Q);return K.length}export{zj as verticalLayoutFeatures,SU as verticalKanaAlternates,kU as verticalForms,CU as verticalAlternatesRotation,OH as vectorLength,SH as validateOutline,uV as useTypoMetrics,BH as upscale,ZH as updateMinTransformedX,a6 as truncPixel,KH as translateOutline,c8 as translate2D,t as transformPoint3x3,$6 as transformPoint2D,I9 as transformOutline3D,O6 as transformOutline2D,Tj as traditionalForms,Fj as thirdWidthForms,P9 as tagToString,k as tag,Jj as tabularFigures,tX as swash,Hj as superscript,_j as subscript,L5 as subBitmaps,pX as stylisticSets,OU as stylisticSet,rX as stylisticAlternates,m4 as strokeUniform,$9 as strokePath,d9 as strokeAsymmetricCombined,g8 as strokeAsymmetric,cX as standardLigatures,H2 as splitWords,W2 as splitGraphemes,vU as smallCaps,Wj as slashedZero,Rj as simplifiedForms,X4 as signedDistanceToQuadratic,N4 as signedDistanceToLine,z4 as signedDistanceToCubic,IH as sign,jN as shouldGridFit,zN as shouldDoGray,b9 as shiftBitmap,I8 as shear2D,d7 as shapedTextToSVGWithVariation,f7 as shapedTextToSVG,_W as shapeInto,aj as shape,B0 as setSize,o8 as setCodeRange,Nj as scientificInferiors,QH as scaleOutlinePow2,JH as scaleOutline,P8 as scale2D,O9 as runProgram,A0 as runGlyphProgram,E0 as runFontProgram,w0 as runCVTProgram,Gj as ruby,h1 as roundUpToGrid,k1 as roundToHalfGrid,Z8 as roundToGrid,C1 as roundToDoubleGrid,m1 as roundSuper45,b1 as roundSuper,FH as roundPixel,y1 as roundOff,S1 as roundDownToGrid,X8 as round,$H as rotateOutline90,qH as rotateOutline,v8 as rotate2D,JU as resolveDupeGlyph,t8 as resizeBitmapBilinear,h8 as resizeBitmap,J1 as reorderMarks,BW as reorderGlyphs,l7 as renderShapedTextWithVariation,x7 as renderShapedText,y8 as renderSdf,b8 as renderMsdf,VK as rasterizeText,e8 as rasterizePathWithGradient,r6 as rasterizePath,OX as rasterizeLcd,u0 as rasterizeGlyph,Aj as quarterWidthForms,wj as proportionalWidthForms,Kj as proportionalFigures,T1 as processRearrangement,P1 as processLigature,v1 as processInsertion,O1 as processContextual,nz as processBidi,SK as pipe,eX as petiteCaps,N5 as perspectiveMatrix,p7 as pathToSVGWithMatrix3D,n7 as pathToSVGWithMatrix,G8 as pathToSVG,k0 as pathToCanvasWithMatrix3D,I0 as pathToCanvasWithMatrix,s8 as pathToCanvas,f4 as path,M9 as parseSuperRound,s9 as parseScriptList,X$ as parsePrep,R$ as parsePost,M$ as parseOs2,B$ as parseName,F$ as parseMath,DN as parseLookupHeaders,z$ as parseJstf,t5 as parseGasp,V$ as parseFpgm,O$ as parseFontDirectory,a9 as parseFeatureList,r5 as parseFeat,j$ as parseCvt,a5 as parseCpal,i as parseCoverageAt,Mq as parseCoverage,s5 as parseColr,M6 as parseClassDefAt,Dq as parseClassDef,o5 as parseCff2,n5 as parseCff,d5 as parseBase,m9 as padBitmap,Uj as ordinals,XN as openTypeTagToAat,Qj as oldstyleFigures,Q9 as obliquePath,PH as normalizeVector,k5 as normalizeAxisValue,fX as normalize,az as mustBreakAt,v9 as multiply3x3,k8 as multiply2D,RH as mulFix,z5 as mulDiv,F5 as mulBitmaps,OK as msdfAtlasToRGBA,TK as msdfAtlasToRGB,_4 as median,B5 as maxBitmaps,o7 as matrixToSVGTransform,ZX as matchAxisValue,L0 as loadFontProgram,D0 as loadCVTProgram,Zj as liningFigures,kX as lcdToRGBA,jj as kerning,DX as justifyParagraph,AU as justify,Bj as jis90Forms,Dj as jis83Forms,Lj as jis78Forms,Mj as jis2004Forms,UH as italicizeOutline,Rq as isVariationIndexTable,P$ as isTrueType,$2 as isScript,fz as isRTL,$X as isOlderSiblingFont,lV as isMonospaced,lz as isLTR,mV as isItalic,NV as isExtendedShape,WN as isExclusiveFeature,eV as isElidableAxisValue,q2 as isComplexScript,$N as isColrV1,cV as isCFF,gV as isBold,S0 as interpolateGradient,H5 as identity3x3,v6 as identity2D,i7 as hypot,sX as historicalLigatures,z7 as hintedToPixels,M0 as hintGlyph,_X as hasVertOriginY,KX as hasSvgGlyph,NN as hasSettingValue,cW as hasGlyphOutline,oV as hasGlyphBitmap,i_ as hasColorGlyph,M_ as hasColorBitmap,Yj as halfWidthForms,x4 as glyphVar,HH as glyphToSVG,_H as glyphBufferToShapedGlyphs,g4 as glyph,TV as getXHeightDelta,hW as getWordBreakProperty,zX as getVorgDelta,uz as getVisualOrder,VV as getVerticalVariants,WX as getVerticalMetrics,jV as getVerticalAssembly,HX as getVertOriginY,hV as getVersion,XX as getTsbDelta,NU as getTrackingValue,_V as getTopAccentAttachment,NH as getTextWidth,JX as getSvgGlyphIds,WU as getSvgDocument,BX as getSubstitutedLookups,KU as getStrikeForPpem,E$ as getShrinkageMods,_N as getSettingByValue,ez as getScripts,Z2 as getScriptTag,Q2 as getScriptRuns,U2 as getScriptDirection,N0 as getScript,nV as getSbixGlyphBitmap,SV as getPostScriptName,q8 as getPathBounds,U1 as getOrCreateShapePlan,R8 as getNameById,MW as getMirror,A_ as getMinMaxExtent,Q0 as getMetricDelta,s0 as getMarkAttachmentType,vW as getLineBreakClass,QN as getLayerPaint,$V as getKerxValue,A$ as getKernValue,Y$ as getJstfPriorities,HV as getItalicsCorrection,XV as getHorizontalVariants,zV as getHorizontalAssembly,RV as getHDescenderDelta,MV as getHAscenderDelta,_Q as getGraphemeBreakProperty,EK as getGlyphUV,C9 as getGlyphPathWithVariation,h6 as getGlyphPath,fV as getGlyphName,P0 as getGlyphLocation,oW as getGlyphDelta,e5 as getGaspBehavior,CV as getFullName,kV as getFontSubfamily,IV as getFontFamily,hH as getFillRuleFromFlags,a0 as getFeature,w$ as getExtensionMods,G$ as getExtenderGlyphs,$K as getExactBounds,DW as getEmbeddings,xV as getEmbeddingPermission,Tq as getDeviceDelta,HN as getDefaultSetting,w_ as getDefaultBaseline,_8 as getCombiningClass,t_ as getColorVariationDelta,Jq as getColorPaint,Kq as getColorLayers,R_ as getColorBitmapSizes,ZN as getColor,r_ as getClipBox,xz as getCharType,v_ as getCffString,k_ as getCffGlyphWidth,OV as getCapHeightDelta,jX as getBsbDelta,D_ as getBitmapGlyph,E_ as getBaselineForScript,rV as getAxisValuesForAxis,QX as getAxisValueNumber,sV as getAxisRecord,aV as getAxisIndex,pV as getAvailablePpemSizes,UN as getAllFeatures,rz as getAllBreakOpportunities,S5 as getAdvanceWidthDelta,VX as getAdvanceHeightDelta,qN as getAatFeature,o6 as gaussianBlur,Ej as fullWidthForms,qj as fractions,C8 as fracPixel,LH as floorPixel,AH as floatToPixel,EH as floatToF26Dot6,yH as fixOutline,yW as findWordBoundaries,r9 as findScript,iz as findNextBreak,Z0 as findMatchingFeatureVariation,$$ as findLangSys,NQ as findGraphemeBoundaries,tV as findAxisValueByNameId,Oj as features,hU as feature,f9 as fastGaussianBlur,wH as f26Dot6ToFloat,bH as expandToFit,U5 as executeFontProgram,p5 as executeCffCharString,c0 as executeCff2CharString,q5 as execute,FU as evaluateConditionSet,K9 as emboldenPath,r8 as emboldenBitmap,MH as downscale,TH as divFix,iX as discretionaryLigatures,tz as detectScript,dz as detectDirection,Y8 as decomposePath,q1 as decompose,kj as createShapePlan,j5 as createPath2D,MN as createLookupDigest,F0 as createHintingEngine,h0 as createGradientBitmap,Q8 as createGlyphZone,M5 as createGaussianKernel,p4 as createFace,G0 as createExecContext,I1 as createDefaultGraphicsState,a as createBitmap,_2 as countGraphemes,q6 as copyBitmap,U8 as convertBitmap,X5 as contourToPath,aX as contextualAlternates,Z9 as condensePath,v0 as computeTightBounds,_5 as computeControlBox,D5 as compositeBitmaps,K8 as compensate,k9 as combinePaths,Pj as combineFeatures,d4 as combine,KN as colorToRgba,JN as colorToHex,i8 as clonePath,Y5 as clearBitmap,vH as clamp,oX as characterVariants,PU as characterVariant,u4 as char,DH as ceilPixel,Vj as caseSensitiveForms,m8 as cascadeBlur,IU as capsToSmallCaps,Xj as capitalSpacing,sz as canBreakAt,f_ as calculateVariationDelta,O0 as calculateTupleScalar,K1 as calculateLineWidth,zK as buildStringAtlas,RK as buildMsdfStringAtlas,f0 as buildMsdfAtlas,MK as buildMsdfAsciiAtlas,x0 as buildAtlas,jK as buildAsciiAtlas,LX as breakIntoLines,E8 as boxBlur,QK as blurBitmap,C0 as blendBitmap,u9 as bitmapToRGBA,x9 as bitmapToGray,l4 as bitmap,GK as atlasToRGBA,YK as atlasToAlpha,BK as assignEdgeColors,UX as applyTracking,D$ as applyNonContextual,RW as applyMirroring,VH as applyMatrixToContext,MX as applyFeatureVariations,C$ as applyFallbackMarkPositioning,S$ as applyFallbackKerning,AN as applyDeviceAdjustment,wJ as applyAvarMapping,I5 as applyAvar,HQ as analyzeLineBreaksFromCodepoints,cz as analyzeLineBreaksForGlyphs,oz as analyzeLineBreaks,$j as allSmallCaps,A5 as addBitmaps,l9 as adaptiveBlur,f6 as abs,VN as aatToOpenTypeTag,SW as WordBreakProperty,PV as WindowsEncodingId,bV as WidthClass,yV as WeightClass,Hq as VerticalPositionSetting,Yq as UpperCaseSetting,E7 as UnicodeBuffer,p8 as TouchFlag,p as Tags,jq as StylisticAlternativesSetting,Eq as SmartSwashSetting,N6 as SetDigest,kW as Script,T$ as SbixGraphicType,n8 as RoundMode,c6 as Reader,j9 as PlatformId,D6 as PixelMode,K6 as PathBuilder,qq as PaletteType,$q as PaintFormat,XH as PIXEL_MASK,W6 as PIXEL_BITS,e7 as OutlineError,D as Opcode,Q6 as ONE_PIXEL,Nq as NumberSpacingSetting,_q as NumberCaseSetting,TU as NormalizationMode,M8 as NameId,$0 as MvarTags,L$ as MorxSubtableType,Gq as LowerCaseSetting,y6 as LookupFlag,TW as LineBreakClass,Wq as LigatureSetting,DU as LcdMode,RX as LCD_FILTER_LIGHT,TX as LCD_FILTER_LEGACY,LU as LCD_FILTER_DEFAULT,wU as JustifyMode,nN as JstfPriority,CW as GraphemeBreakProperty,T0 as GlyphClass,O8 as GlyphBuffer,i9 as GaspFlag,e0 as FsType,$1 as FsSelection,Vq as FractionsSetting,z9 as Font,J8 as FillRule,Uq as FeatureType,qG as FeatureTags,Fq as FeatureFlags,u8 as Face,jH as F26DOT6_SHIFT,zH as F26DOT6_ONE,GH as F16DOT16_SHIFT,YH as F16DOT16_ONE,Qq as Extend,Lq as EMPTY_CLASS_DEF,R0 as Direction,wq as DiacriticsSetting,_9 as Coverage,zq as ContextualAlternativesSetting,Zq as CompositeMode,B9 as CodeRange,G7 as ClusterLevel,L8 as ClassDef,Aq as CharacterShapeSetting,F_ as CbdtImageFormat,Xq as CaseSensitiveLayoutSetting,Y7 as BufferFlags,PW as BreakOpportunity,OW as BreakAction,s as BitmapBuilder,d8 as BidiType,z_ as BaselineTag,v$ as AxisValueFlags,bK as $translate,GJ as $toSVG,jJ as $toRGBA,zJ as $toGray,oK as $strokePath,aK as $strokeAsymmetricCombined,sK as $strokeAsymmetric,HJ as $shift,uK as $shear,yK as $scale,gK as $rotateDeg,mK as $rotate,NJ as $resizeBilinear,_J as $resize,$J as $renderSdf,QJ as $renderMsdf,eK as $rasterizeWithGradient,tK as $rasterizeAuto,rK as $rasterize,lK as $perspective,VJ as $pad,pK as $obliquePath,fK as $matrix,xK as $italic,hK as $fromGlyph,UJ as $fastBlur,dK as $emboldenPath,WJ as $embolden,YJ as $copy,XJ as $convert,nK as $condensePath,iK as $combinePaths,cK as $clone,JJ as $cascadeBlur,KJ as $boxBlur,ZJ as $blur,qJ as $adaptiveBlur};
|