text-shaper 0.1.0 → 0.1.1
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.d.ts +7 -0
- package/dist/index.js +10 -10
- package/dist/index.js.map +36 -29
- package/dist/raster/bbox.d.ts +91 -0
- package/dist/raster/bitmap-utils.d.ts +25 -0
- package/dist/raster/blur.d.ts +27 -0
- package/dist/raster/gradient.d.ts +61 -0
- package/dist/raster/rasterize.d.ts +7 -0
- package/dist/raster/sdf.d.ts +37 -0
- package/dist/raster/stroker.d.ts +29 -0
- package/dist/raster/synth.d.ts +50 -0
- package/dist/raster/types.d.ts +3 -1
- package/dist/render/path.d.ts +33 -0
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
var
|
|
2
|
-
`),
|
|
3
|
-
`),P("",0,":"),P(" ",0,". "),P("",0,"ed "),P("",20,""),P("",18,""),P("",6,""),P("",0,"("),P("",10,", "),P("",8,""),P("",0," at "),P("",0,"ly "),P(" the ",0," of "),P("",5,""),P("",9,""),P(" ",10,", "),P("",10,'"'),P(".",0,"("),P("",11," "),P("",10,'">'),P("",0,'="'),P(" ",0,"."),P(".com/",0,""),P(" the ",0," of the "),P("",10,"'"),P("",0,". This "),P("",0,","),P(".",0," "),P("",10,"("),P("",10,"."),P("",0," not "),P(" ",0,'="'),P("",0,"er "),P(" ",11," "),P("",0,"al "),P(" ",11,""),P("",0,"='"),P("",11,'"'),P("",10,". "),P(" ",0,"("),P("",0,"ful "),P(" ",10,". "),P("",0,"ive "),P("",0,"less "),P("",11,"'"),P("",0,"est "),P(" ",10,"."),P("",11,'">'),P(" ",0,"='"),P("",10,","),P("",0,"ize "),P("",11,"."),P("Â ",0,""),P(" ",0,","),P("",10,'="'),P("",11,'="'),P("",0,"ous "),P("",11,", "),P("",10,"='"),P(" ",10,","),P(" ",11,'="'),P(" ",11,", "),P("",11,","),P("",11,"("),P("",11,". "),P(" ",11,"."),P("",11,"='"),P(" ",11,". "),P(" ",10,'="'),P(" ",11,"='"),P(" ",10,"='")]});var l0={};IZ(l0,{decompress:()=>oZ});class x0{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}peekBits(){return this.fillBitWindow(),this.val>>>this.bitPos&g0}get currentBitPos(){return this.bitPos}set currentBitPos($){this.bitPos=$}get currentVal(){return this.val}}function u0($,Q,Z,J,q){let W=new Int32Array(16),H=new Int32Array(16),U=new Int32Array(q);for(let E=0;E<q;E++)W[J[E]]++;H[1]=0;for(let E=1;E<15;E++)H[E+1]=H[E]+W[E];for(let E=0;E<q;E++)if(J[E]!==0)U[H[J[E]]++]=E;let X=Z,N=1<<X,_=N;if(H[15]===1){for(let E=0;E<_;E++)$[Q+E]={bits:0,value:U[0]&65535};return _}let j=0,Y=0;for(let E=1,G=2;E<=Z;E++,G<<=1)for(;W[E]>0;W[E]--){let B={bits:E&255,value:U[Y++]&65535};y0($,Q+j,G,N,B),j=m0(j,E)}let w=_-1,V=-1,z=Q;for(let E=Z+1,G=2;E<=15;E++,G<<=1)for(;W[E]>0;W[E]--){if((j&w)!==V)z+=N,X=lZ(W,E,Z),N=1<<X,_+=N,V=j&w,$[Q+V]={bits:X+Z&255,value:z-Q-V&65535};let B={bits:E-Z&255,value:U[Y++]&65535};y0($,z+(j>>Z),G,N,B),j=m0(j,E)}return _}function m0($,Q){let Z=1<<Q-1;while($&Z)Z>>=1;return($&Z-1)+Z}function y0($,Q,Z,J,q){do J-=Z,$[Q+J]={bits:q.bits,value:q.value};while(J>0)}function lZ($,Q,Z){let J=1<<Q-Z;while(Q<15){if(J-=$[Q],J<=0)break;Q++,J<<=1}return Q-Z}function u1($,Q,Z){Z.fillBitWindow();let J=Q+(Z.currentVal>>>Z.currentBitPos&g0),q=$[J].bits-i8;if(q>0)Z.currentBitPos+=i8,J+=$[J].value,J+=Z.currentVal>>>Z.currentBitPos&(1<<q)-1;return Z.currentBitPos+=$[J].bits,$[J].value}function f0($){if($.readBits(1)){let Q=$.readBits(3);if(Q===0)return 1;return $.readBits(Q)+(1<<Q)}return 0}function dZ($){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 nZ($){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 K=$.readBits(2);if(K===0)return{length:0,isLast:Q,isUncompressed:!1,isMetadata:!0};let W=0;for(let H=0;H<K;H++){let U=$.readBits(8);if(H+1===K&&K>1&&U===0)throw Error("Invalid size byte");W|=U<<H*8}return{length:W+1,isLast:Q,isUncompressed:!1,isMetadata:!0}}let J=0;for(let K=0;K<Z;K++){let W=$.readBits(4);if(K+1===Z&&Z>4&&W===0)throw Error("Invalid size nibble");J|=W<<K*4}J++;let q=!Q?$.readBits(1)===1:!1;return{length:J,isLast:Q,isUncompressed:q,isMetadata:!1}}function iZ($,Q,Z,J){let W=0,H=8,U=0,X=0,N=32768,_=[];for(let j=0;j<32;j++)_.push({bits:0,value:0});u0(_,0,5,$,d8);while(W<Q&&N>0){J.readMoreInput(),J.fillBitWindow();let j=J.currentVal>>>J.currentBitPos&31;J.currentBitPos+=_[j].bits;let Y=_[j].value&255;if(Y<16){if(U=0,Z[W++]=Y,Y!==0)H=Y,N-=32768>>Y}else{let w=Y-14,V=0;if(Y===16)V=H;if(X!==V)U=0,X=V;let z=U;if(U>0)U-=2,U<<=w;U+=J.readBits(w)+3;let E=U-z;if(W+E>Q)throw Error("Symbol overflow");for(let G=0;G<E;G++)Z[W+G]=X;if(W+=E,X!==0)N-=E<<15-X}}if(N!==0)throw Error("Invalid code lengths");for(;W<Q;W++)Z[W]=0}function s6($,Q,Z,J){let q=new Uint8Array($);J.readMoreInput();let K=J.readBits(2);if(K===1){let W=$-1,H=0;while(W)W>>=1,H++;let U=new Int32Array(4),X=J.readBits(2)+1;for(let N=0;N<X;N++)U[N]=J.readBits(H)%$,q[U[N]]=2;switch(q[U[0]]=1,X){case 2:if(U[0]===U[1])throw Error("Invalid symbols");q[U[1]]=1;break;case 4:if(J.readBits(1))q[U[2]]=3,q[U[3]]=3;else q[U[0]]=2;break}}else{let W=new Uint8Array(d8),H=32,U=0,X=[{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=K;N<d8&&H>0;N++){let _=yZ[N];J.fillBitWindow();let j=J.currentVal>>>J.currentBitPos&15;J.currentBitPos+=X[j].bits;let Y=X[j].value;if(W[_]=Y,Y!==0)H-=32>>Y,U++}if(!(U===1||H===0))throw Error("Invalid code length codes");iZ(W,$,q,J)}return u0(Q,Z,i8,q,$)}class o6{alphabetSize;numHTrees;codes=[];htrees;constructor($,Q){this.alphabetSize=$;this.numHTrees=Q;this.htrees=new Uint32Array(Q);let Z=this.getMaxTableSize();for(let J=0;J<Q+Q*Z;J++)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 J=s6(this.alphabetSize,this.codes,Q,$);Q+=J}}}function b0($,Q){Q.readMoreInput();let Z=f0(Q)+1,J=new Uint8Array($);if(Z<=1)return{numHTrees:Z,contextMap:J};let q=Q.readBits(1)===1,K=0;if(q)K=Q.readBits(4)+1;let W=[];for(let H=0;H<h1;H++)W.push({bits:0,value:0});s6(Z+K,W,0,Q);for(let H=0;H<$;){Q.readMoreInput();let U=u1(W,0,Q);if(U===0)J[H++]=0;else if(U<=K){let X=1+(1<<U)+Q.readBits(U);for(let N=1;N<X&&H<$;N++)J[H++]=0}else J[H++]=U-K}if(Q.readBits(1)){let H=new Uint8Array(256);for(let U=0;U<256;U++)H[U]=U;for(let U=0;U<$;U++){let X=J[U];if(J[U]=H[X],X){let N=H[X];for(let _=X;_>0;_--)H[_]=H[_-1];H[0]=N}}}return{numHTrees:Z,contextMap:J}}function p6($,Q,Z){let J=u1($,Q,Z),q=xZ[J];return q.offset+Z.readBits(q.nbits)}function pZ($,Q,Z){if($<n8){let J=Z+bZ[$]&3;return Q[J]+gZ[$]}return $-n8+1}function oZ($){let Q=new x0($),Z=dZ(Q),J=(1<<Z)-16,q=1<<Z,K=q-1,W=new Uint8Array(q+578),H=0,U=0,X=[16,15,11,4],N=0,_=0,j=0,Y=[];while(!0){Q.readMoreInput();let w=nZ(Q);if(w.length===0&&w.isLast)break;if(w.isMetadata){Q.currentBitPos=Q.currentBitPos+7&-8;for(let l=0;l<w.length;l++)Q.readMoreInput(),Q.readBits(8);continue}let V=w.length;if(V===0)continue;if(w.isUncompressed){Q.currentBitPos=Q.currentBitPos+7&-8;for(let l=0;l<V;l++){Q.readMoreInput();let r=Q.readBits(8);if(W[H&K]=r,(H&K)===K)Y.push(...W.slice(0,q));H++}continue}let z=[1,1,1],E=[268435456,268435456,268435456],G=[0,0,0],B=[0,1,0,1,0,1],D=[0,0,0],S=[],L=[];for(let l=0;l<3*h1;l++)S.push({bits:0,value:0}),L.push({bits:0,value:0});for(let l=0;l<3;l++)if(z[l]=f0(Q)+1,z[l]>=2)s6(z[l]+2,S,l*h1,Q),s6(mZ,L,l*h1,Q),E[l]=p6(L,l*h1,Q),D[l]=1;Q.readMoreInput();let h=Q.readBits(2),I=n8+(Q.readBits(4)<<h),O=(1<<h)-1,g=I+(48<<h),n=new Uint8Array(z[0]);for(let l=0;l<z[0];l++)Q.readMoreInput(),n[l]=Q.readBits(2)<<1;let v=b0(z[0]<<6,Q),o=b0(z[2]<<2,Q),y=[new o6(SZ,v.numHTrees),new o6(hZ,z[1]),new o6(g,o.numHTrees)];for(let l=0;l<3;l++)y[l].decode(Q);let b=0,R=0,m=n[G[0]],x=F6[m],s=F6[m+1],i=y[1].htrees[0];while(V>0){if(Q.readMoreInput(),E[1]===0){let G1=u1(S,h1,Q),V1;if(G1===0)V1=B[2+(D[1]&1)];else if(G1===1)V1=B[2+(D[1]-1&1)]+1;else V1=G1-2;if(V1>=z[1])V1-=z[1];G[1]=V1,B[2+(D[1]&1)]=V1,D[1]++,E[1]=p6(L,h1,Q),i=y[1].htrees[G[1]]}E[1]--;let l=u1(y[1].codes,i,Q),r=l>>6,T;if(r>=2)T=-1;else T=0;let a=uZ[r]+(l>>3&7),k=fZ[r]+(l&7),R1=S0[a].offset+Q.readBits(S0[a].nbits),C=h0[k].offset+Q.readBits(h0[k].nbits);_=W[H-1&K],j=W[H-2&K];for(let G1=0;G1<R1;G1++){if(Q.readMoreInput(),E[0]===0){let U1=u1(S,0,Q),P1;if(U1===0)P1=B[D[0]&1];else if(U1===1)P1=B[D[0]-1&1]+1;else P1=U1-2;if(P1>=z[0])P1-=z[0];G[0]=P1,B[D[0]&1]=P1,D[0]++,E[0]=p6(L,0,Q),b=G[0]<<6,m=n[G[0]],x=F6[m],s=F6[m+1]}let V1=f8[x+_]|f8[s+j],I1=v.contextMap[b+V1];if(E[0]--,j=_,_=u1(y[0].codes,y[0].htrees[I1],Q),W[H&K]=_,(H&K)===K)Y.push(...W.slice(0,q));H++}if(V-=R1,V<=0)break;if(T<0){if(Q.readMoreInput(),E[2]===0){let I1=u1(S,2*h1,Q),U1;if(I1===0)U1=B[4+(D[2]&1)];else if(I1===1)U1=B[4+(D[2]-1&1)]+1;else U1=I1-2;if(U1>=z[2])U1-=z[2];G[2]=U1,B[4+(D[2]&1)]=U1,D[2]++,E[2]=p6(L,2*h1,Q),R=G[2]<<2}E[2]--;let G1=(C>4?3:C-2)&255,V1=o.contextMap[R+G1];if(T=u1(y[2].codes,y[2].htrees[V1],Q),T>=I){T-=I;let I1=T&O;T>>=h;let U1=(T>>1)+1,P1=(2+(T&1)<<U1)-4;T=I+(P1+Q.readBits(U1)<<h)+I1}}let B6=pZ(T,X,N);if(B6<0)throw Error("Invalid distance");if(H<J&&U!==J)U=H;else U=J;let u6=H&K;if(B6>U)if(C>=4&&C<=24){let G1=P0[C],V1=B6-U-1,I1=T0[C],U1=(1<<I1)-1,P1=V1&U1,k8=V1>>I1,TZ=G1+P1*C;if(k8<l8.length){let C8=k0(W,u6,TZ,C,k8,O0);if(u6+=C8,H+=C8,V-=C8,u6>=q){Y.push(...W.slice(0,q));for(let f6=0;f6<u6-q;f6++)W[f6]=W[q+f6]}}else throw Error("Invalid backward reference")}else throw Error("Invalid backward reference");else{if(T>0)X[N&3]=B6,N++;if(C>V)throw Error("Invalid backward reference");for(let G1=0;G1<C;G1++){if(W[H&K]=W[H-B6&K],(H&K)===K)Y.push(...W.slice(0,q));H++,V--}}_=W[H-1&K],j=W[H-2&K]}if(w.isLast)break}return Y.push(...W.slice(0,H&K)),new Uint8Array(Y)}var h1=1080,d8=18,SZ=256,hZ=704,mZ=26,n8=16,i8=8,g0=255,yZ,bZ,gZ,xZ,S0,h0,uZ,fZ;var d0=l6(()=>{R0();I0();C0();yZ=new Uint8Array([1,2,3,4,0,5,17,6,16,7,8,9,10,11,12,13,14,15]),bZ=new Uint8Array([3,2,1,0,3,3,3,3,3,3,2,2,2,2,2,2]),gZ=new Int8Array([0,0,0,0,-1,1,-2,2,-3,3,-1,1,-2,2,-3,3]),xZ=[{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}],S0=[{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}],h0=[{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}],uZ=[0,0,8,8,0,16,8,16,16],fZ=[0,8,0,8,16,0,16,8,16]});function d6($,Q){if(Q<0||Q>=$.classArray.length)return 1;return $.classArray[Q]??1}function S8($,Q){let{stateTable:Z}=$,J=0,q=0,K=0;for(let W=0;W<=Q.length;W++){let U=W>=Q.length?0:d6(Z.classTable,Q[W]?.glyphId),X=Z.stateArray[J];if(!X)break;let N=X[U];if(!N)break;let _=N.flags;if(_&32768)q=W;if(_&8192)K=W;let j=_&15;if(j!==0&&q<=K&&K<Q.length)vZ(Q,q,K,j);if(!(_&16384));J=N.newState}}function vZ($,Q,Z,J){if(Q>=Z||Q>=$.length||Z>=$.length)return;let q=$[Q],K=$[Q+1],W=$[Z-1],H=$[Z];if(!q||!H)return;switch(J){case 1:if(K)$[Q]=K,$[Q+1]=q;break;case 2:if(W)$[Z]=W,$[Z-1]=H;break;case 3:$[Q]=H,$[Z]=q;break;case 4:if(K&&W){let U=$.slice(Q,Q+2),[X,N]=U,_=$[Q+2];if(X&&N&&_)$[Q]=_,$[Q+1]=X,$[Q+2]=N}break;case 5:if(K&&W){let U=$.slice(Q,Q+2),[X,N]=U,_=$[Q+2];if(X&&N&&_)$[Q]=_,$[Q+1]=N,$[Q+2]=X}break;case 6:if(W&&K){let U=$.slice(Z-1,Z+1),[X,N]=U,_=$[Z-2];if(X&&N&&_)$[Z]=_,$[Z-1]=N,$[Z-2]=X}break;case 7:if(W&&K){let U=$.slice(Z-1,Z+1),[X,N]=U,_=$[Z-2];if(X&&N&&_)$[Z]=_,$[Z-1]=X,$[Z-2]=N}break;case 8:if(W){let U=q;$[Q]=W,$[Z-1]=H,$[Z]=U}break;case 9:if(W){let U=q;$[Q]=H,$[Z-1]=W,$[Z]=U}break;case 10:if(K){let U=H;$[Z]=K,$[Q+1]=q,$[Q]=U}break;case 11:if(K){let U=H;$[Z]=q,$[Q+1]=K,$[Q]=U}break;case 12:if(K&&W){let U=[q,K];$[Q]=W,$[Q+1]=H,$[Z-1]=U[0],$[Z]=U[1]}break;case 13:if(K&&W){let U=[q,K];$[Q]=W,$[Q+1]=H,$[Z-1]=U[1],$[Z]=U[0]}break;case 14:if(K&&W){let U=[q,K];$[Q]=H,$[Q+1]=W,$[Z-1]=U[0],$[Z]=U[1]}break;case 15:if(K&&W){let U=[q,K];$[Q]=H,$[Q+1]=W,$[Z-1]=U[1],$[Z]=U[0]}break}}function h8($,Q){let{stateTable:Z,substitutionTable:J}=$,q=0,K=-1;for(let W=0;W<=Q.length;W++){let H=W>=Q.length,U=H?0:d6(Z.classTable,Q[W]?.glyphId),X=Z.stateArray[q];if(!X)break;let N=X[U];if(!N)break;if(N.flags&32768)K=W;if(N.markIndex!==65535&&K>=0&&K<Q.length){let _=J[N.markIndex];if(_){let j=Q[K];if(j){let Y=_.get(j.glyphId);if(Y!==void 0)j.glyphId=Y}}}if(!H&&N.currentIndex!==65535){let _=J[N.currentIndex];if(_){let j=Q[W];if(j){let Y=_.get(j.glyphId);if(Y!==void 0)j.glyphId=Y}}}if(!(N.flags&16384));q=N.newState}}function m8($,Q){let{stateTable:Z,ligatureActions:J,components:q,ligatures:K}=$,W=0,H=[],U=[],X=new Set;for(let N=0;N<=Q.length;N++){let j=N>=Q.length?0:d6(Z.classTable,Q[N]?.glyphId),Y=Z.stateArray[W];if(!Y)break;let w=Y[j];if(!w)break;if(w.flags&32768)H.push(N);if(w.flags&8192&&w.ligActionIndex<J.length){let V=w.ligActionIndex,z=0,E=[];while(V<J.length){let G=J[V];if(G===void 0)break;let B=(G&2147483648)!==0,D=(G&1073741824)!==0,S=(G&1073741823)<<2>>2,L=H.pop();if(L!==void 0&&L<Q.length){E.push(L);let h=Q[L];if(h){let O=h.glyphId+S;if(O>=0&&O<q.length){let g=q[O];if(g!==void 0)z=g+z}}}if(D&&z<K.length){let h=E[E.length-1];if(h!==void 0&&h<Q.length){let I=Q[h],O=K[z];if(I&&O!==void 0){I.glyphId=O;for(let[g,n]of E.entries())if(g<E.length-1)X.add(n)}}z=0}if(B)break;V++}}if(!(w.flags&16384));W=w.newState}for(let[N,_]of Q.entries())if(!X.has(N))U.push(_);return U}function y8($,Q){let{stateTable:Z,insertionGlyphs:J}=$,q=0,K=-1,W=[],H=new Map;for(let U=0;U<=Q.length;U++){let X=U>=Q.length,N=X?0:d6(Z.classTable,Q[U]?.glyphId),_=Z.stateArray[q];if(!_)break;let j=_[N];if(!j)break;if(j.flags&32768)K=U;if(j.markedInsertIndex!==65535&&K>=0){let Y=j.flags>>5&31,w=(j.flags&2048)!==0,V=J.slice(j.markedInsertIndex,j.markedInsertIndex+Y),z=H.get(K);if(!z)z={before:[],after:[]},H.set(K,z);if(w)z.before.push(...V);else z.after.push(...V)}if(!X&&j.currentInsertIndex!==65535){let Y=j.flags&31,w=(j.flags&32)!==0,V=J.slice(j.currentInsertIndex,j.currentInsertIndex+Y),z=H.get(U);if(!z)z={before:[],after:[]},H.set(U,z);if(w)z.before.push(...V);else z.after.push(...V)}if(!(j.flags&16384));q=j.newState}for(let[U,X]of Q.entries()){let N=H.get(U);if(N)for(let _ of N.before)W.push({glyphId:_,cluster:X.cluster,mask:X.mask,codepoint:0});if(W.push(X),N)for(let _ of N.after)W.push({glyphId:_,cluster:X.cluster,mask:X.mask,codepoint:0})}return W}var n6;((K)=>{K[K.Invalid=0]="Invalid";K[K.LTR=4]="LTR";K[K.RTL=5]="RTL";K[K.TTB=6]="TTB";K[K.BTT=7]="BTT"})(n6||={});var z0;((J)=>{J[J.MonotoneGraphemes=0]="MonotoneGraphemes";J[J.MonotoneCharacters=1]="MonotoneCharacters";J[J.Characters=2]="Characters"})(z0||={});var E0;((W)=>{W[W.Default=0]="Default";W[W.BeginningOfText=1]="BeginningOfText";W[W.EndOfText=2]="EndOfText";W[W.PreserveDefaultIgnorables=4]="PreserveDefaultIgnorables";W[W.RemoveDefaultIgnorables=8]="RemoveDefaultIgnorables";W[W.DoNotInsertDottedCircle=16]="DoNotInsertDottedCircle"})(E0||={});var i6;((q)=>{q[q.Base=1]="Base";q[q.Ligature=2]="Ligature";q[q.Mark=3]="Mark";q[q.Component=4]="Component"})(i6||={});function F($){if($.length!==4)throw Error(`Tag must be exactly 4 characters: "${$}"`);return $.charCodeAt(0)<<24|$.charCodeAt(1)<<16|$.charCodeAt(2)<<8|$.charCodeAt(3)}function D6($){return String.fromCharCode($>>24&255,$>>16&255,$>>8&255,$&255)}var u={head:F("head"),hhea:F("hhea"),hmtx:F("hmtx"),maxp:F("maxp"),cmap:F("cmap"),loca:F("loca"),glyf:F("glyf"),name:F("name"),OS2:F("OS/2"),post:F("post"),GDEF:F("GDEF"),GSUB:F("GSUB"),GPOS:F("GPOS"),BASE:F("BASE"),JSTF:F("JSTF"),MATH:F("MATH"),CFF:F("CFF "),CFF2:F("CFF2"),fvar:F("fvar"),gvar:F("gvar"),avar:F("avar"),HVAR:F("HVAR"),VVAR:F("VVAR"),MVAR:F("MVAR"),morx:F("morx"),kerx:F("kerx"),kern:F("kern"),trak:F("trak"),feat:F("feat"),COLR:F("COLR"),CPAL:F("CPAL"),SVG:F("SVG "),sbix:F("sbix"),CBDT:F("CBDT"),CBLC:F("CBLC"),STAT:F("STAT"),vhea:F("vhea"),vmtx:F("vmtx"),VORG:F("VORG"),fpgm:F("fpgm"),prep:F("prep"),cvt:F("cvt "),gasp:F("gasp")},t2={ccmp:F("ccmp"),locl:F("locl"),rlig:F("rlig"),liga:F("liga"),clig:F("clig"),calt:F("calt"),rclt:F("rclt"),dlig:F("dlig"),smcp:F("smcp"),c2sc:F("c2sc"),isol:F("isol"),init:F("init"),medi:F("medi"),fina:F("fina"),kern:F("kern"),mark:F("mark"),mkmk:F("mkmk"),curs:F("curs"),dist:F("dist")};class s1{direction=4;script="Zyyy";language=null;infos=[];positions=[];static withCapacity($){let Q=new s1;return Q.infos=Array($),Q.positions=Array($),Q}get length(){return this.infos.length}initFromInfos($){this.infos=$,this.positions=$.map(()=>({xAdvance:0,yAdvance:0,xOffset:0,yOffset:0}))}setAdvance($,Q,Z=0){let J=this.positions[$];if(J)J.xAdvance=Q,J.yAdvance=Z}addOffset($,Q,Z){let J=this.positions[$];if(J)J.xOffset+=Q,J.yOffset+=Z}replaceGlyph($,Q){let Z=this.infos[$];if(Z)Z.glyphId=Q}insertGlyph($,Q,Z){this.infos.splice($,0,Q),this.positions.splice($,0,Z)}removeRange($,Q){let Z=Q-$;this.infos.splice($,Z),this.positions.splice($,Z)}mergeClusters($,Q){if($>=Q||$<0||Q>=this.infos.length)return;let Z=this.infos[$]?.cluster;for(let J=$+1;J<=Q;J++){let q=this.infos[J];if(q)q.cluster=Z}}reverse(){this.infos.reverse(),this.positions.reverse()}reverseRange($,Q){let Z=$,J=Q-1;while(Z<J){let q=this.infos[Z],K=this.infos[J];if(!q||!K)break;this.infos[Z]=K,this.infos[J]=q;let W=this.positions[Z],H=this.positions[J];if(!W||!H)break;this.positions[Z]=H,this.positions[J]=W,Z++,J--}}getTotalAdvance(){let $=0,Q=0;for(let Z of this.positions)$+=Z.xAdvance,Q+=Z.yAdvance;return{x:$,y:Q}}serialize(){let $=[];for(let[Q,Z]of this.infos.entries()){let J=this.positions[Q];if(!J)continue;let q=`${Z.glyphId}`;if(Q===0||Z.cluster!==this.infos[Q-1]?.cluster)q+=`=${Z.cluster}`;if(J.xOffset!==0||J.yOffset!==0)q+=`@${J.xOffset},${J.yOffset}`;if(J.xAdvance!==0)q+=`+${J.xAdvance}`;$.push(q)}return`[${$.join("|")}]`}glyphIds(){return this.infos.map(($)=>$.glyphId)}clusters(){return this.infos.map(($)=>$.cluster)}*[Symbol.iterator](){for(let[$,Q]of this.infos.entries()){let Z=this.positions[$];if(!Z)continue;yield{info:Q,position:Z}}}}class G0{_direction=4;_script="Zyyy";_language=null;_clusterLevel=0;_flags=0;codepoints=[];clusters=[];preContext=[];postContext=[];addStr($,Q=0){let Z=Q;for(let J of $){let q=J.codePointAt(0);if(q===void 0)continue;this.codepoints.push(q),this.clusters.push(Z),Z++}return this}addCodepoints($,Q=0){let Z=Q;for(let J of $)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=[];for(let Q of $){let Z=Q.codePointAt(0);if(Z!==void 0)this.preContext.push(Z)}return this}setPostContext($){this.postContext=[];for(let Q of $){let Z=Q.codePointAt(0);if(Z!==void 0)this.postContext.push(Z)}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:$}))}}class T1{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 T1(this.data,this.start+$,Q)}sliceFrom($){return new T1(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 J=0;J<$;J++)Z[J]=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 J=0;J<Z;J++)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 J=Q(this);return this.pos=Z,J}}function A0($,Q){let Z=$.uint16(),J=$.uint16();$.skip(2);let q=[];for(let K=0;K<Q;K++){let W=$.uint16(),H=[];for(let U=0;U<W;U++)H.push({fromCoordinate:$.f2dot14(),toCoordinate:$.f2dot14()});q.push({axisValueMaps:H})}return{majorVersion:Z,minorVersion:J,axisSegmentMaps:q}}function B0($,Q){let Z=$.axisValueMaps;if(Z.length===0)return Q;for(let K=0;K<Z.length-1;K++){let W=Z[K],H=Z[K+1];if(!W||!H)continue;if(Q>=W.fromCoordinate&&Q<=H.fromCoordinate){let U=(Q-W.fromCoordinate)/(H.fromCoordinate-W.fromCoordinate);return W.toCoordinate+U*(H.toCoordinate-W.toCoordinate)}}let J=Z[0],q=Z[Z.length-1];if(J&&Q<=J.fromCoordinate)return J.toCoordinate;return q?.toCoordinate??Q}function b8($,Q){let Z=[];for(let[J,q]of Q.entries()){let K=$.axisSegmentMaps[J];if(K)Z.push(B0(K,q));else Z.push(q)}return Z}function D0($){let Q=$.uint16(),Z=$.uint16(),J=$.offset16();$.skip(2);let q=$.uint16(),K=$.uint16(),W=$.uint16(),H=$.uint16(),U=[];$.seek(J);for(let _=0;_<q;_++){let j=$.offset,Y=$.uint32(),w=$.fixed(),V=$.fixed(),z=$.fixed(),E=$.uint16(),G=$.uint16();U.push({tag:Y,minValue:w,defaultValue:V,maxValue:z,flags:E,axisNameId:G}),$.seek(j+K)}let X=[],N=H>=4+q*4+2;for(let _=0;_<W;_++){let j=$.offset,Y=$.uint16(),w=$.uint16(),V=[];for(let E=0;E<q;E++)V.push($.fixed());let z={subfamilyNameId:Y,flags:w,coordinates:V};if(N)z.postScriptNameId=$.uint16();X.push(z),$.seek(j+H)}return{majorVersion:Q,minorVersion:Z,axes:U,instances:X}}function g8($,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 M0($){let Q=$.uint16(),Z=$.uint16(),J=$.offset32(),q=$.offset32(),K=$.offset32(),W=$.offset32(),H=kZ($.sliceFrom(J)),U=q!==0?x8($.sliceFrom(q)):null,X=K!==0?x8($.sliceFrom(K)):null,N=W!==0?x8($.sliceFrom(W)):null;return{majorVersion:Q,minorVersion:Z,itemVariationStore:H,advanceWidthMapping:U,lsbMapping:X,rsbMapping:N}}function kZ($){let Q=$.uint16(),Z=$.offset32(),J=$.uint16(),q=[];for(let N=0;N<J;N++)q.push($.offset32());let K=$.sliceFrom(Z),W=K.uint16(),H=K.uint16(),U=[];for(let N=0;N<H;N++){let _=[];for(let j=0;j<W;j++)_.push({startCoord:K.f2dot14(),peakCoord:K.f2dot14(),endCoord:K.f2dot14()});U.push({regionAxes:_})}let X=[];for(let N of q){let _=$.sliceFrom(N),j=_.uint16(),Y=_.uint16(),w=_.uint16(),V=[];for(let D=0;D<w;D++)V.push(_.uint16());let z=(Y&32768)!==0,E=Y&32767,G=w-E,B=[];for(let D=0;D<j;D++){let S=[];for(let L=0;L<E;L++)if(z)S.push(_.int32());else S.push(_.int16());for(let L=0;L<G;L++)if(z)S.push(_.int16());else S.push(_.int8());B.push(S)}X.push({itemCount:j,regionIndexes:V,deltaSets:B})}return{format:Q,variationRegions:U,itemVariationData:X}}function x8($){let Q=$.uint8(),Z=$.uint8(),J=Q===0?$.uint16():$.uint32(),q=(Z&15)+1,K=(Z>>4&3)+1,W=[];for(let H=0;H<J;H++){let U=0;for(let _=0;_<K;_++)U=U<<8|$.uint8();let X=U&(1<<q)-1,N=U>>q;W.push({outer:N,inner:X})}return{format:Q,mapCount:J,entryFormat:Z,innerIndexBitCount:q,mapData:W}}function M6($,Q){let Z=1;for(let J=0;J<$.regionAxes.length&&J<Q.length;J++){let q=$.regionAxes[J],K=Q[J];if(q===void 0||K===void 0)continue;if(K<q.startCoord||K>q.endCoord)return 0;if(K===q.peakCoord)continue;if(K<q.peakCoord){if(q.peakCoord===q.startCoord)continue;Z*=(K-q.startCoord)/(q.peakCoord-q.startCoord)}else{if(q.peakCoord===q.endCoord)continue;Z*=(q.endCoord-K)/(q.endCoord-q.peakCoord)}}return Z}function F0($,Q,Z,J){let q,K;if(J&&Q<J.mapData.length){let X=J.mapData[Q];if(!X)q=0,K=Q;else q=X.outer,K=X.inner}else q=0,K=Q;let W=$.itemVariationStore.itemVariationData[q];if(!W||K>=W.itemCount)return 0;let H=W.deltaSets[K];if(!H)return 0;let U=0;for(let[X,N]of W.regionIndexes.entries()){let _=$.itemVariationStore.variationRegions[N];if(!_)continue;let j=M6(_,Z),Y=H[X]??0;U+=j*Y}return Math.round(U)}function u8($,Q,Z){return F0($,Q,Z,$.advanceWidthMapping)}function L0($,Q,Z){if(!$.lsbMapping)return 0;return F0($,Q,Z,$.lsbMapping)}class c1{font;_coords;_variations;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(Array.isArray($))for(let J of $)this._variations.set(J.tag,J.value);else for(let[J,q]of Object.entries($)){let K=F(J.padEnd(4," "));this._variations.set(K,q)}for(let[J,q]of Q.axes.entries()){let K=this._variations.get(q.tag)??q.defaultValue;this._coords[J]=g8(q,K)}let Z=this.font.avar;if(Z)this._coords=b8(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"?F($.padEnd(4," ")):$,Z=this.font.fvar;if(!Z)return null;let J=this._variations.get(Q);if(J!==void 0)return J;return Z.axes.find((K)=>K.tag===Q)?.defaultValue??null}advanceWidth($){let Q=this.font.advanceWidth($);if(this._coords.length>0&&this.font.hvar){let Z=u8(this.font.hvar,$,this._coords);Q+=Z}return Q}leftSideBearing($){let Q=this.font.leftSideBearing($);if(this._coords.length>0&&this.font.hvar){let Z=L0(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 CZ($,Q){return new c1($,Q)}var sZ=["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 n0($,Q){let Z=0;for(let J=0;J<5;J++){let q=$[Q.value++];if(J===0&&q===128)throw Error("Invalid UIntBase128: leading zeros");if(Z>2097151)throw Error("UIntBase128 overflow");if(Z=Z<<7|q&127,(q&128)===0)return Z}throw Error("UIntBase128 too long")}function p8($,Q){let Z=$[Q.value++];if(Z===253){let J=$[Q.value++],q=$[Q.value++];return J<<8|q}else if(Z===255)return $[Q.value++]+506;else if(Z===254)return $[Q.value++]+253;return Z}function cZ($,Q,Z){let J=[];for(let q=0;q<Z;q++){let K=$[Q.value++],W=K&63,H=K>>6&3,U;if(W===63)U=String.fromCharCode($[Q.value++],$[Q.value++],$[Q.value++],$[Q.value++]);else U=sZ[W];let X=n0($,Q),N=X;if(U==="glyf"||U==="loca"?H===0:H!==0)N=n0($,Q);J.push({tag:U,origLength:X,transformLength:N,transformVersion:H})}return J}async function aZ($){if(typeof DecompressionStream<"u")try{let Z=new DecompressionStream("brotli"),q=new Blob([$.buffer]).stream().pipeThrough(Z),K=await new Response(q).arrayBuffer();return new Uint8Array(K)}catch{}let{decompress:Q}=await Promise.resolve().then(() => (d0(),l0));return Q($)}function M1($,Q,Z){$[Q]=Z>>8&255,$[Q+1]=Z&255}function J6($,Q,Z){$[Q]=Z>>24&255,$[Q+1]=Z>>16&255,$[Q+2]=Z>>8&255,$[Q+3]=Z&255}function f1($,Q){return $[Q]<<8|$[Q+1]}function v1($,Q){let Z=f1($,Q);return Z>=32768?Z-65536:Z}function a1($,Q){return($[Q]<<24|$[Q+1]<<16|$[Q+2]<<8|$[Q+3])>>>0}function i0($,Q,Z){let J=0,q=Math.ceil(Z/4);for(let K=0;K<q;K++){let W=Q+K*4;J=J+(($[W]||0)<<24|($[W+1]||0)<<16|($[W+2]||0)<<8|($[W+3]||0))>>>0}return J}function c6($){return $+3&-4}function rZ($,Q,Z,J,q){let K=[],W=0,H=0;function U(X,N){return X&1?N:-N}for(let X=0;X<Z;X++){let N=$[J.value++],_=N>>7===0,j=N&127,Y=0,w=0;if(j<10)Y=0,w=U(N,((j&14)<<7)+Q[q.value++]);else if(j<20)Y=U(N,((j-10&14)<<7)+Q[q.value++]),w=0;else if(j<84){let V=j-20,z=Q[q.value++];Y=U(N,1+(V&48)+(z>>4)),w=U(N>>1,1+((V&12)<<2)+(z&15))}else if(j<120){let V=j-84;Y=U(N,1+(Math.floor(V/12)<<8)+Q[q.value++]),w=U(N>>1,1+(V%12>>2<<8)+Q[q.value++])}else if(j<124){let V=Q[q.value++],z=Q[q.value++],E=Q[q.value++];Y=U(N,(V<<4)+(z>>4)),w=U(N>>1,((z&15)<<8)+E)}else Y=U(N,(Q[q.value++]<<8)+Q[q.value++]),w=U(N>>1,(Q[q.value++]<<8)+Q[q.value++]);W+=Y,H+=w,K.push({x:W,y:H,onCurve:_})}return K}function tZ($,Q,Z){let J=0,q=f1($,J);if(J+=2,q!==0)throw Error(`Unsupported glyf transform version: ${q}`);let K=f1($,J);J+=2;let W=f1($,J);J+=2;let H=f1($,J);J+=2;let U=a1($,J);J+=4;let X=a1($,J);J+=4;let N=a1($,J);J+=4;let _=a1($,J);J+=4;let j=a1($,J);J+=4;let Y=a1($,J);J+=4;let w=a1($,J);J+=4;let V=$.slice(J,J+U);J+=U;let z=$.slice(J,J+X);J+=X;let E=$.slice(J,J+N);J+=N;let G=$.slice(J,J+_);J+=_;let B=$.slice(J,J+j);J+=j;let D=$.slice(J,J+Y);J+=Y;let S=$.slice(J,J+w),L={value:0},h={value:0},I={value:0},O={value:0},g={value:0},n={value:0},v={value:0},o=[0],y=[],b=0;for(let i=0;i<Q;i++){let l=v1(V,L.value);if(L.value+=2,l===0){y.push(new Uint8Array(0)),o.push(b);continue}if(l>0){let r=eZ(l,z,h,E,I,G,O,D,n,S,v,K);y.push(r),b+=c6(r.length),o.push(b)}else{let r=$J(B,g,D,n,S,v,K);y.push(r),b+=c6(r.length),o.push(b)}}let R=new Uint8Array(b),m=0;for(let i of y)R.set(i,m),m+=c6(i.length);let x=Z===0?(Q+1)*2:(Q+1)*4,s=new Uint8Array(x);for(let i=0;i<=Q;i++)if(Z===0)M1(s,i*2,o[i]/2);else J6(s,i*4,o[i]);return{glyf:R,loca:s}}function eZ($,Q,Z,J,q,K,W,H,U,X,N,_){let j=[],Y=0;for(let m=0;m<$;m++){let x=p8(Q,Z);Y+=x,j.push(Y-1)}let w=rZ(J,K,Y,q,W),V,z,E,G;if((_&1)===0&&U.value+8<=H.length)V=v1(H,U.value),U.value+=2,z=v1(H,U.value),U.value+=2,E=v1(H,U.value),U.value+=2,G=v1(H,U.value),U.value+=2;else{V=z=32767,E=G=-32768;for(let m of w)V=Math.min(V,m.x),z=Math.min(z,m.y),E=Math.max(E,m.x),G=Math.max(G,m.y)}let D=p8(K,W),S=X.slice(N.value,N.value+D);N.value+=D;let L=[],h=[],I=0,O=0;for(let m of w)L.push(m.x-I),h.push(m.y-O),I=m.x,O=m.y;let g=[],n=[],v=[];for(let m=0;m<Y;m++){let x=w[m].onCurve?1:0,s=L[m],i=h[m];if(s===0)x|=16;else if(s>=-255&&s<=255){if(x|=2,s>0)x|=16;n.push(Math.abs(s))}else n.push(s>>8&255,s&255);if(i===0)x|=32;else if(i>=-255&&i<=255){if(x|=4,i>0)x|=32;v.push(Math.abs(i))}else v.push(i>>8&255,i&255);g.push(x)}let y=10+$*2+2+D+g.length+n.length+v.length,b=new Uint8Array(y),R=0;M1(b,R,$),R+=2,M1(b,R,V&65535),R+=2,M1(b,R,z&65535),R+=2,M1(b,R,E&65535),R+=2,M1(b,R,G&65535),R+=2;for(let m of j)M1(b,R,m),R+=2;M1(b,R,D),R+=2,b.set(S,R),R+=D;for(let m of g)b[R++]=m;for(let m of n)b[R++]=m;for(let m of v)b[R++]=m;return b.slice(0,R)}function $J($,Q,Z,J,q,K,W){let H=[],U=v1(Z,J.value);J.value+=2;let X=v1(Z,J.value);J.value+=2;let N=v1(Z,J.value);J.value+=2;let _=v1(Z,J.value);J.value+=2,H.push(255,255),H.push(U>>8&255,U&255),H.push(X>>8&255,X&255),H.push(N>>8&255,N&255),H.push(_>>8&255,_&255);let j=!0,Y=!1;while(j){let w=f1($,Q.value);Q.value+=2;let V=f1($,Q.value);if(Q.value+=2,H.push(w>>8&255,w&255),H.push(V>>8&255,V&255),w&1)H.push($[Q.value++]),H.push($[Q.value++]),H.push($[Q.value++]),H.push($[Q.value++]);else H.push($[Q.value++]),H.push($[Q.value++]);if(w&8)H.push($[Q.value++]),H.push($[Q.value++]);else if(w&64)for(let z=0;z<4;z++)H.push($[Q.value++]);else if(w&128)for(let z=0;z<8;z++)H.push($[Q.value++]);if(j=(w&32)!==0,w&256)Y=!0}if(Y){let w=p8(q,K);H.push(w>>8&255,w&255);for(let V=0;V<w;V++)H.push(q[K.value++])}return new Uint8Array(H)}async function p0($){let Q=new Uint8Array($),Z=new DataView($);if(Z.getUint32(0,!1)!==2001684018)throw Error("Not a valid WOFF2 file");let q=Z.getUint32(4,!1),K=Z.getUint16(12,!1),W=Z.getUint32(20,!1),H={value:48},U=cZ(Q,H,K),X=Q.slice(H.value,H.value+W),N=await aZ(X),_=new Map,j=0;for(let v of U){let o=N.slice(j,j+v.transformLength);_.set(v.tag,o),j+=v.transformLength}let Y=_.get("maxp"),w=_.get("head");if(!Y||!w)throw Error("Missing required tables");let V=f1(Y,4),z=v1(w,50),E=U.find((v)=>v.tag==="glyf"),G=U.find((v)=>v.tag==="loca");if(E&&E.transformVersion===0){let v=_.get("glyf"),{glyf:o,loca:y}=tZ(v,V,z);if(_.set("glyf",o),_.set("loca",y),E.origLength=o.length,G)G.origLength=y.length}let B=12,D=K*16,S=B+D,L=[];for(let v of U)L.push(S),S+=c6(v.origLength);let h=new Uint8Array(S),I=2**Math.floor(Math.log2(K))*16,O=Math.floor(Math.log2(K)),g=K*16-I;J6(h,0,q),M1(h,4,K),M1(h,6,I),M1(h,8,O),M1(h,10,g);let n=-1;for(let v=0;v<U.length;v++){let o=U[v],y=_.get(o.tag),b=B+v*16;if(o.tag==="head")n=L[v];for(let m=0;m<4;m++)h[b+m]=o.tag.charCodeAt(m);let R=i0(y,0,y.length);J6(h,b+4,R),J6(h,b+8,L[v]),J6(h,b+12,o.origLength),h.set(y.slice(0,o.origLength),L[v])}if(n>=0){let o=2981146554-i0(h,0,h.length)>>>0;J6(h,n+8,o)}return h.buffer}function L6($){let Q=$.uint16(),Z=$.int16(),J={format:Q,coordinate:Z};if(Q===2)J.referenceGlyph=$.uint16(),J.baseCoordPoint=$.uint16();else if(Q===3)J.deviceOffset=$.uint16();return J}function o0($,Q){if(Q===0)return null;let Z=$.sliceFrom(Q),J=Z.uint16(),q=Z.uint16(),K=Z.uint16(),W=null,H=null;if(J!==0){let X=$.sliceFrom(Q+J);W=L6(X).coordinate}if(q!==0){let X=$.sliceFrom(Q+q);H=L6(X).coordinate}let U=[];for(let X=0;X<K;X++){let N=Z.uint32(),_=Z.uint16(),j=Z.uint16(),Y=null,w=null;if(_!==0){let V=$.sliceFrom(Q+_);Y=L6(V).coordinate}if(j!==0){let V=$.sliceFrom(Q+j);w=L6(V).coordinate}U.push({featureTag:N,minCoord:Y,maxCoord:w})}return{minCoord:W,maxCoord:H,featMinMaxRecords:U}}function QJ($,Q,Z){if(Q===0)return null;let J=$.sliceFrom(Q),q=J.uint16(),K=J.uint16(),W=[];for(let U=0;U<K;U++)W.push(J.uint16());let H=[];for(let U of W)if(U!==0){let X=$.sliceFrom(Q+U);H.push(L6(X).coordinate)}else H.push(0);return{defaultBaselineIndex:q,baseCoords:H}}function ZJ($,Q,Z){let J=$.sliceFrom(Q),q=J.uint16(),K=J.uint16(),W=J.uint16(),H=new Map,U=[];for(let _=0;_<W;_++){let j=J.uint32(),Y=J.uint16();U.push({tag:j,offset:Y})}let X=QJ($,Q+q,Z),N=o0($,Q+K);for(let{tag:_,offset:j}of U){let Y=o0($,Q+j);if(Y)H.set(_,Y)}return{baseValues:X,defaultMinMax:N,baseLangSysRecords:H}}function s0($,Q){if(Q===0)return null;let Z=$.sliceFrom(Q),J=Z.uint16(),q=Z.uint16(),K=[];if(J!==0){let H=$.sliceFrom(Q+J),U=H.uint16();for(let X=0;X<U;X++)K.push(H.uint32())}let W=[];if(q!==0){let H=$.sliceFrom(Q+q),U=H.uint16(),X=[];for(let N=0;N<U;N++){let _=H.uint32(),j=H.uint16();X.push({tag:_,offset:j})}for(let{tag:N,offset:_}of X){let j=ZJ($,Q+q+_,K);W.push({scriptTag:N,...j})}}return{baseTagList:K,baseScriptList:W}}function c0($){let Q=$.uint16(),Z=$.uint16(),J=$.uint16(),q=$.uint16(),K=s0($,J),W=s0($,q);return{majorVersion:Q,minorVersion:Z,horizAxis:K,vertAxis:W}}var JJ={SmallMetrics:1,SmallMetricsPng:17,BigMetrics:2,BigMetricsPng:18,CompressedPng:19};function r0($){let Q=$.offset,Z=$.uint16(),J=$.uint16(),q=$.uint32(),K=[];for(let W=0;W<q;W++){let H=$.uint32(),U=$.uint32(),X=$.uint32(),N=$.uint32(),_=a0($),j=a0($),Y=$.uint16(),w=$.uint16(),V=$.uint8(),z=$.uint8(),E=$.uint8(),G=$.int8();K.push({indexSubTableArrayOffset:H,indexTablesSize:U,numberOfIndexSubTables:X,colorRef:N,hori:_,vert:j,startGlyphIndex:Y,endGlyphIndex:w,ppemX:V,ppemY:z,bitDepth:E,flags:G,indexSubTables:[]})}for(let W of K){let H=$.sliceFrom(Q+W.indexSubTableArrayOffset),U=[];for(let X=0;X<W.numberOfIndexSubTables;X++)U.push({firstGlyphIndex:H.uint16(),lastGlyphIndex:H.uint16(),additionalOffsetToIndexSubtable:H.uint32()});for(let X of U){let N=qJ($,Q+W.indexSubTableArrayOffset+X.additionalOffsetToIndexSubtable,X.firstGlyphIndex,X.lastGlyphIndex);W.indexSubTables.push(N)}}return{majorVersion:Z,minorVersion:J,bitmapSizes:K}}function a0($){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 qJ($,Q,Z,J){let q=$.sliceFrom(Q),K=q.uint16(),W=q.uint16(),H=q.uint32(),U=new Map,X=J-Z+1;switch(K){case 1:{let N=[];for(let _=0;_<=X;_++)N.push(q.uint32());for(let _=0;_<X;_++){let j=N[_],Y=N[_+1];if(Y>j)U.set(Z+_,{offset:H+j,length:Y-j})}break}case 2:{let N=q.uint32(),_={height:q.uint8(),width:q.uint8(),horiBearingX:q.int8(),horiBearingY:q.int8(),horiAdvance:q.uint8(),vertBearingX:q.int8(),vertBearingY:q.int8(),vertAdvance:q.uint8()};for(let j=0;j<X;j++)U.set(Z+j,{offset:H+j*N,length:N});break}case 3:{let N=[];for(let _=0;_<=X;_++)N.push(q.uint16());for(let _=0;_<X;_++){let j=N[_],Y=N[_+1];if(Y>j)U.set(Z+_,{offset:H+j,length:Y-j})}break}case 4:{let N=q.uint32(),_=[];for(let j=0;j<=N;j++)_.push({glyphId:q.uint16(),offset:q.uint16()});for(let j=0;j<N;j++){let Y=_[j],w=_[j+1];U.set(Y.glyphId,{offset:H+Y.offset,length:w.offset-Y.offset})}break}case 5:{let N=q.uint32();q.skip(8);let _=q.uint32();for(let j=0;j<_;j++){let Y=q.uint16();U.set(Y,{offset:H+j*N,length:N})}break}}return{firstGlyphIndex:Z,lastGlyphIndex:J,indexFormat:K,imageFormat:W,imageDataOffset:H,glyphOffsets:U}}function t0($){let Q=$.uint16(),Z=$.uint16(),J=$.bytes($.remaining);return{majorVersion:Q,minorVersion:Z,data:J}}function KJ($,Q,Z,J){let q=null,K=1/0;for(let W of $.bitmapSizes){if(Z<W.startGlyphIndex||Z>W.endGlyphIndex)continue;let H=Math.abs(W.ppemX-J);if(H<K)K=H,q=W}if(!q)return null;for(let W of q.indexSubTables){let H=W.glyphOffsets.get(Z);if(!H)continue;let U=Q.data.slice(H.offset-4,H.offset-4+H.length);return WJ(U,W.imageFormat)}return null}function WJ($,Q){if($.length===0)return null;let Z=0,J;switch(Q){case 1:case 2:case 17:case 18:{if(Q===1||Q===17)J={height:$[Z++],width:$[Z++],bearingX:$[Z++]<<24>>24,bearingY:$[Z++]<<24>>24,advance:$[Z++]};else J={height:$[Z++],width:$[Z++],bearingX:$[Z++]<<24>>24,bearingY:$[Z++]<<24>>24,advance:$[Z++]},Z+=3;break}case 19:{J={height:0,width:0,bearingX:0,bearingY:0,advance:0};break}default:return null}return{metrics:J,imageFormat:Q,data:$.slice(Z)}}function HJ($,Q,Z){for(let J of $.bitmapSizes){if(Z!==void 0&&J.ppemX!==Z)continue;if(Q<J.startGlyphIndex||Q>J.endGlyphIndex)continue;for(let q of J.indexSubTables)if(q.glyphOffsets.has(Q))return!0}return!1}function UJ($){let Q=new Set;for(let Z of $.bitmapSizes)Q.add(Z.ppemX);return Array.from(Q).sort((Z,J)=>Z-J)}var o8=[".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 Q5($){let Q=$.offset,Z=$.uint8(),J=$.uint8(),q=$.uint8(),K=$.uint8();$.seek(Q+q);let W=l1($).map((z)=>new TextDecoder().decode(z)),H=l1($),U=[],N=l1($).map((z)=>new TextDecoder().decode(z)),_=l1($);for(let z of H)U.push(e0(new T1(z.buffer,z.byteOffset,z.byteLength),N));let j=[],Y=[],w=[],V=[];for(let z of U){if(z.charStrings!==void 0)$.seek(Q+z.charStrings),j.push(l1($));else j.push([]);if(z.private){let[E,G]=z.private,B=$5($.slice(G,E),N);if(B.subrs!==void 0)$.seek(Q+G+B.subrs),Y.push(l1($));else Y.push([])}else Y.push([]);if(z.fdArray!==void 0){$.seek(Q+z.fdArray);let E=l1($),G=[];for(let B of E){let D=e0(new T1(B.buffer,B.byteOffset,B.byteLength),N);if(D.private){let[S,L]=D.private,h=$5($.slice(Q+L,S),N);if(Object.assign(D,h),h.subrs!==void 0)$.seek(Q+L+h.subrs),D.localSubrs=l1($)}G.push(D)}w.push(G)}else w.push([]);if(z.fdSelect!==void 0){$.seek(Q+z.fdSelect);let E=j[j.length-1];V.push(_J($,E?.length??0))}else V.push({format:0,select:()=>0})}return{version:{major:Z,minor:J},names:W,topDicts:U,strings:N,globalSubrs:_,charStrings:j,localSubrs:Y,fdArrays:w,fdSelects:V}}function l1($){let Q=$.uint16();if(Q===0)return[];let Z=$.uint8(),J=[];for(let K=0;K<=Q;K++)J.push(XJ($,Z));let q=[];for(let K=0;K<Q;K++){let W=J[K],H=J[K+1];if(W===void 0||H===void 0)continue;let U=H-W;q.push($.bytes(U))}return q}function XJ($,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 Z5($){let Q=new Map,Z=[];while($.remaining>0){let J=$.uint8();if(J<=21){let q=J;if(J===12)q=3072|$.uint8();Q.set(q,[...Z]),Z.length=0}else if(J===28)Z.push($.int16());else if(J===29)Z.push($.int32());else if(J===30)Z.push(NJ($));else if(J>=32&&J<=246)Z.push(J-139);else if(J>=247&&J<=250){let q=$.uint8();Z.push((J-247)*256+q+108)}else if(J>=251&&J<=254){let q=$.uint8();Z.push(-(J-251)*256-q-108)}}return Q}function NJ($){let Q="",Z="0123456789.EE -",J=!1;while(!J){let q=$.uint8();for(let K=0;K<2;K++){let W=K===0?q>>4:q&15;if(W===15){J=!0;break}if(W===12)Q+="E-";else Q+=Z[W]}}return parseFloat(Q)}function e0($,Q){let Z=Z5($),J={},q=(K)=>{if(K<o8.length)return o8[K]??"";return Q[K-o8.length]??""};for(let[K,W]of Z){let H=W[0],U=W[1],X=W[2];switch(K){case 0:if(H!==void 0)J.version=q(H);break;case 1:if(H!==void 0)J.notice=q(H);break;case 3072:if(H!==void 0)J.copyright=q(H);break;case 2:if(H!==void 0)J.fullName=q(H);break;case 3:if(H!==void 0)J.familyName=q(H);break;case 4:if(H!==void 0)J.weight=q(H);break;case 3073:J.isFixedPitch=H!==0;break;case 3074:J.italicAngle=H;break;case 3075:J.underlinePosition=H;break;case 3076:J.underlineThickness=H;break;case 3077:J.paintType=H;break;case 3078:J.charstringType=H;break;case 3079:J.fontMatrix=W;break;case 13:J.uniqueID=H;break;case 5:J.fontBBox=W;break;case 3080:J.strokeWidth=H;break;case 15:J.charset=H;break;case 16:J.encoding=H;break;case 17:J.charStrings=H;break;case 18:if(H!==void 0&&U!==void 0)J.private=[H,U];break;case 3092:J.syntheticBase=H;break;case 3093:if(H!==void 0)J.postScript=q(H);break;case 3094:if(H!==void 0)J.baseFontName=q(H);break;case 3095:J.baseFontBlend=W;break;case 3102:if(H!==void 0&&U!==void 0&&X!==void 0)J.ros={registry:q(H),ordering:q(U),supplement:X};break;case 3103:J.cidFontVersion=H;break;case 3104:J.cidFontRevision=H;break;case 3105:J.cidFontType=H;break;case 3106:J.cidCount=H;break;case 3107:J.uidBase=H;break;case 3108:J.fdArray=H;break;case 3109:J.fdSelect=H;break;case 3110:if(H!==void 0)J.fontName=q(H);break}}return J}function $5($,Q){let Z=Z5($),J={};for(let[q,K]of Z){let W=K[0];switch(q){case 6:J.blueValues=q6(K);break;case 7:J.otherBlues=q6(K);break;case 8:J.familyBlues=q6(K);break;case 9:J.familyOtherBlues=q6(K);break;case 3081:J.blueScale=W;break;case 3082:J.blueShift=W;break;case 3083:J.blueFuzz=W;break;case 10:J.stdHW=W;break;case 11:J.stdVW=W;break;case 3084:J.stemSnapH=q6(K);break;case 3085:J.stemSnapV=q6(K);break;case 3086:J.forceBold=W!==0;break;case 3089:J.languageGroup=W;break;case 3090:J.expansionFactor=W;break;case 3091:J.initialRandomSeed=W;break;case 19:J.subrs=W;break;case 20:J.defaultWidthX=W;break;case 21:J.nominalWidthX=W;break}}return J}function q6($){let Q=[],Z=0;for(let J of $)Z+=J,Q.push(Z);return Q}function _J($,Q){let Z=$.uint8();if(Z===0){let J=$.uint8Array(Q);return{format:Z,select:(q)=>J[q]??0}}else if(Z===3){let J=$.uint16(),q=[];for(let W=0;W<J;W++)q.push({first:$.uint16(),fd:$.uint8()});let K=$.uint16();return{format:Z,select:(W)=>{let H=0,U=q.length-1;while(H<U){let N=Math.ceil((H+U)/2),_=q[N];if(_&&_.first<=W)H=N;else U=N-1}return q[H]?.fd??0}}}return{format:Z,select:()=>0}}function s8($,Q,Z=0){let J=$.charStrings[Z];if(!J||Q>=J.length)return null;let q=J[Q];if(!q)return null;let K=$.globalSubrs,H=$.topDicts[Z]?.ros!==void 0,U=[];if(H&&$.fdSelects[Z]&&$.fdArrays[Z]){let N=$.fdSelects[Z]?.select(Q)??0;U=$.fdArrays[Z]?.[N]?.localSubrs||$.localSubrs[Z]||[]}else U=$.localSubrs[Z]||[];let X={x:0,y:0,stack:[],nStems:0,haveWidth:!1,width:0,contours:[],currentContour:[],transientArray:Array(32).fill(0),callStack:[],vsindex:0,axisCoords:null,vstore:null};if(a6(X,q,K,U),X.currentContour.length>0)X.contours.push(X.currentContour);return X.contours}function r6($,Q,Z=null){if(Q>=$.charStrings.length)return null;let J=$.charStrings[Q];if(!J)return null;let q=$.globalSubrs,K=$.fdSelect?.select(Q)??0,W=$.fdArray[K],H=W?.localSubrs||[],U={x:0,y:0,stack:[],nStems:0,haveWidth:!0,width:0,contours:[],currentContour:[],transientArray:Array(32).fill(0),callStack:[],vsindex:W?.private?.vsindex??0,axisCoords:Z,vstore:$.vstore};if(a6(U,J,q,H),U.currentContour.length>0)U.contours.push(U.currentContour);return U.contours}function a6($,Q,Z,J){let q=0;while(q<Q.length){let K=Q[q++];if(K===void 0)return;if(K===28){let W=Q[q++];if(W===void 0)return;let H=Q[q++];if(H===void 0)return;$.stack.push((W<<8|H)<<16>>16)}else if(K===255){let W=Q[q++];if(W===void 0)return;let H=Q[q++];if(H===void 0)return;let U=Q[q++];if(U===void 0)return;let X=Q[q++];if(X===void 0)return;let N=(W<<24|H<<16|U<<8|X)>>0;$.stack.push(N/65536)}else if(K>=32&&K<=246)$.stack.push(K-139);else if(K>=247&&K<=250){let W=Q[q++];if(W===void 0)return;$.stack.push((K-247)*256+W+108)}else if(K>=251&&K<=254){let W=Q[q++];if(W===void 0)return;$.stack.push(-(K-251)*256-W-108)}else if(K===12){let W=Q[q++];if(W===void 0)return;let H=3072|W;J5($,H,Z,J)}else if(K===19||K===20){let W=$.stack;if(W.length%2!==0&&!$.haveWidth){let X=W.shift();if(X!==void 0)$.width=X,$.haveWidth=!0}$.nStems+=W.length/2,W.length=0;let U=Math.ceil($.nStems/8);q+=U}else J5($,K,Z,J);if($.callStack.length>0){let W=$.callStack[$.callStack.length-1];if(W&&W.pos>=W.data.length)$.callStack.pop()}}}function J5($,Q,Z,J){let q=$.stack;switch(Q){case 1:case 3:case 18:case 23:{if(q.length%2!==0&&!$.haveWidth){let W=q.shift();if(W===void 0)break;$.width=W,$.haveWidth=!0}$.nStems+=q.length/2,q.length=0;break}case 19:case 20:break;case 21:{if(q.length>2&&!$.haveWidth){let H=q.shift();if(H===void 0)break;$.width=H,$.haveWidth=!0}if($.currentContour.length>0)$.contours.push($.currentContour),$.currentContour=[];let K=q.pop();if(K===void 0)break;let W=q.pop();if(W===void 0)break;$.x+=W,$.y+=K,$.currentContour.push({x:$.x,y:$.y,onCurve:!0}),q.length=0;break}case 22:{if(q.length>1&&!$.haveWidth){let W=q.shift();if(W===void 0)break;$.width=W,$.haveWidth=!0}if($.currentContour.length>0)$.contours.push($.currentContour),$.currentContour=[];let K=q.pop();if(K===void 0)break;$.x+=K,$.currentContour.push({x:$.x,y:$.y,onCurve:!0}),q.length=0;break}case 4:{if(q.length>1&&!$.haveWidth){let W=q.shift();if(W===void 0)break;$.width=W,$.haveWidth=!0}if($.currentContour.length>0)$.contours.push($.currentContour),$.currentContour=[];let K=q.pop();if(K===void 0)break;$.y+=K,$.currentContour.push({x:$.x,y:$.y,onCurve:!0}),q.length=0;break}case 5:{while(q.length>=2){let K=q.shift();if(K===void 0)break;let W=q.shift();if(W===void 0)break;$.x+=K,$.y+=W,$.currentContour.push({x:$.x,y:$.y,onCurve:!0})}break}case 6:{let K=!0;while(q.length>=1){let W=q.shift();if(W===void 0)break;if(K)$.x+=W;else $.y+=W;$.currentContour.push({x:$.x,y:$.y,onCurve:!0}),K=!K}break}case 7:{let K=!0;while(q.length>=1){let W=q.shift();if(W===void 0)break;if(K)$.y+=W;else $.x+=W;$.currentContour.push({x:$.x,y:$.y,onCurve:!0}),K=!K}break}case 8:{while(q.length>=6){let K=q.shift();if(K===void 0)break;let W=q.shift();if(W===void 0)break;let H=q.shift();if(H===void 0)break;let U=q.shift();if(U===void 0)break;let X=q.shift();if(X===void 0)break;let N=q.shift();if(N===void 0)break;H1($,K,W,H,U,X,N)}break}case 27:{let K=0;if(q.length%4===1){let W=q.shift();if(W===void 0)break;K=W}while(q.length>=4){let W=q.shift();if(W===void 0)break;let H=q.shift();if(H===void 0)break;let U=q.shift();if(U===void 0)break;let X=q.shift();if(X===void 0)break;H1($,W,K,H,U,X,0),K=0}break}case 26:{let K=0;if(q.length%4===1){let W=q.shift();if(W===void 0)break;K=W}while(q.length>=4){let W=q.shift();if(W===void 0)break;let H=q.shift();if(H===void 0)break;let U=q.shift();if(U===void 0)break;let X=q.shift();if(X===void 0)break;H1($,K,W,H,U,0,X),K=0}break}case 31:{let K=!0;while(q.length>=4){if(K){let W=q.shift();if(W===void 0)break;let H=q.shift();if(H===void 0)break;let U=q.shift();if(U===void 0)break;let X=q.shift();if(X===void 0)break;let N=q.length===1?q.shift()??0:0;H1($,W,0,H,U,N,X)}else{let W=q.shift();if(W===void 0)break;let H=q.shift();if(H===void 0)break;let U=q.shift();if(U===void 0)break;let X=q.shift();if(X===void 0)break;let N=q.length===1?q.shift()??0:0;H1($,0,W,H,U,X,N)}K=!K}break}case 30:{let K=!0;while(q.length>=4){if(K){let W=q.shift();if(W===void 0)break;let H=q.shift();if(H===void 0)break;let U=q.shift();if(U===void 0)break;let X=q.shift();if(X===void 0)break;let N=q.length===1?q.shift()??0:0;H1($,0,W,H,U,X,N)}else{let W=q.shift();if(W===void 0)break;let H=q.shift();if(H===void 0)break;let U=q.shift();if(U===void 0)break;let X=q.shift();if(X===void 0)break;let N=q.length===1?q.shift()??0:0;H1($,W,0,H,U,N,X)}K=!K}break}case 24:{while(q.length>=8){let K=q.shift();if(K===void 0)break;let W=q.shift();if(W===void 0)break;let H=q.shift();if(H===void 0)break;let U=q.shift();if(U===void 0)break;let X=q.shift();if(X===void 0)break;let N=q.shift();if(N===void 0)break;H1($,K,W,H,U,X,N)}if(q.length>=2){let K=q.shift();if(K===void 0)break;let W=q.shift();if(W===void 0)break;$.x+=K,$.y+=W,$.currentContour.push({x:$.x,y:$.y,onCurve:!0})}break}case 25:{while(q.length>=8){let K=q.shift();if(K===void 0)break;let W=q.shift();if(W===void 0)break;$.x+=K,$.y+=W,$.currentContour.push({x:$.x,y:$.y,onCurve:!0})}if(q.length>=6){let K=q.shift();if(K===void 0)break;let W=q.shift();if(W===void 0)break;let H=q.shift();if(H===void 0)break;let U=q.shift();if(U===void 0)break;let X=q.shift();if(X===void 0)break;let N=q.shift();if(N===void 0)break;H1($,K,W,H,U,X,N)}break}case 10:{let K=q.pop();if(K===void 0)break;let W=K+q5(J.length),H=J[W];if(H)a6($,H,Z,J);break}case 29:{let K=q.pop();if(K===void 0)break;let W=K+q5(Z.length),H=Z[W];if(H)a6($,H,Z,J);break}case 11:break;case 14:{if(q.length>0&&!$.haveWidth){let K=q.shift();if(K===void 0)break;$.width=K,$.haveWidth=!0}if($.currentContour.length>0)$.contours.push($.currentContour),$.currentContour=[];q.length=0;break}case 3107:{if(q.length>=13){let K=q.shift();if(K===void 0)break;let W=q.shift();if(W===void 0)break;let H=q.shift();if(H===void 0)break;let U=q.shift();if(U===void 0)break;let X=q.shift();if(X===void 0)break;let N=q.shift();if(N===void 0)break;let _=q.shift();if(_===void 0)break;let j=q.shift();if(j===void 0)break;let Y=q.shift();if(Y===void 0)break;let w=q.shift();if(w===void 0)break;let V=q.shift();if(V===void 0)break;let z=q.shift();if(z===void 0)break;q.shift(),H1($,K,W,H,U,X,N),H1($,_,j,Y,w,V,z)}break}case 3106:{if(q.length>=7){let K=q.shift();if(K===void 0)break;let W=q.shift();if(W===void 0)break;let H=q.shift();if(H===void 0)break;let U=q.shift();if(U===void 0)break;let X=q.shift();if(X===void 0)break;let N=q.shift();if(N===void 0)break;let _=q.shift();if(_===void 0)break;H1($,K,0,W,H,U,0),H1($,X,0,N,-H,_,0)}break}case 3108:{if(q.length>=9){let K=q.shift();if(K===void 0)break;let W=q.shift();if(W===void 0)break;let H=q.shift();if(H===void 0)break;let U=q.shift();if(U===void 0)break;let X=q.shift();if(X===void 0)break;let N=q.shift();if(N===void 0)break;let _=q.shift();if(_===void 0)break;let j=q.shift();if(j===void 0)break;let Y=q.shift();if(Y===void 0)break;H1($,K,W,H,U,X,0),H1($,N,0,_,j,Y,-(W+U+j))}break}case 3109:{if(q.length>=11){let K=q.shift();if(K===void 0)break;let W=q.shift();if(W===void 0)break;let H=q.shift();if(H===void 0)break;let U=q.shift();if(U===void 0)break;let X=q.shift();if(X===void 0)break;let N=q.shift();if(N===void 0)break;let _=q.shift();if(_===void 0)break;let j=q.shift();if(j===void 0)break;let Y=q.shift();if(Y===void 0)break;let w=q.shift();if(w===void 0)break;let V=q.shift();if(V===void 0)break;let z=K+H+X+_+Y,E=W+U+N+j+w,G,B;if(Math.abs(z)>Math.abs(E))G=V,B=-E;else G=-z,B=V;H1($,K,W,H,U,X,N),H1($,_,j,Y,w,G,B)}break}case 3075:{let K=q.pop();if(K===void 0)break;let W=q.pop();if(W===void 0)break;q.push(W&&K?1:0);break}case 3076:{let K=q.pop();if(K===void 0)break;let W=q.pop();if(W===void 0)break;q.push(W||K?1:0);break}case 3077:{let K=q.pop();if(K===void 0)break;q.push(K?0:1);break}case 3081:{let K=q.pop();if(K===void 0)break;q.push(Math.abs(K));break}case 3082:{let K=q.pop();if(K===void 0)break;let W=q.pop();if(W===void 0)break;q.push(W+K);break}case 3083:{let K=q.pop();if(K===void 0)break;let W=q.pop();if(W===void 0)break;q.push(W-K);break}case 3084:{let K=q.pop();if(K===void 0)break;let W=q.pop();if(W===void 0)break;q.push(W/K);break}case 3086:{let K=q.pop();if(K===void 0)break;q.push(-K);break}case 3087:{let K=q.pop();if(K===void 0)break;let W=q.pop();if(W===void 0)break;q.push(W===K?1:0);break}case 3090:{q.pop();break}case 3092:{let K=q.pop();if(K===void 0)break;let W=q.pop();if(W===void 0)break;$.transientArray[K]=W;break}case 3093:{let K=q.pop();if(K===void 0)break;q.push($.transientArray[K]??0);break}case 3094:{let K=q.pop();if(K===void 0)break;let W=q.pop();if(W===void 0)break;let H=q.pop();if(H===void 0)break;let U=q.pop();if(U===void 0)break;q.push(W<=K?U:H);break}case 3095:{q.push(Math.random());break}case 3096:{let K=q.pop();if(K===void 0)break;let W=q.pop();if(W===void 0)break;q.push(W*K);break}case 3098:{let K=q.pop();if(K===void 0)break;q.push(Math.sqrt(K));break}case 3099:{let K=q[q.length-1];if(K===void 0)break;q.push(K);break}case 3100:{let K=q.pop();if(K===void 0)break;let W=q.pop();if(W===void 0)break;q.push(K,W);break}case 3101:{let K=q.pop();if(K===void 0)break;let W=q.length-1-K;q.push(q[W]??0);break}case 3102:{let K=q.pop();if(K===void 0)break;let W=q.pop();if(W===void 0)break;if(W>0){let H=q.splice(-W),U=(K%W+W)%W;for(let X=0;X<W;X++){let N=H[(X+U)%W];if(N!==void 0)q.push(N)}}break}case 16:{if(!$.axisCoords||!$.vstore)break;let K=q.pop();if(K===void 0)break;let W=$.vstore.itemVariationData[$.vsindex]?.regionIndexCount??0,H=K*W,U=q.splice(-H),X=q.splice(-K);for(let N=0;N<K;N++){let _=X[N];if(_===void 0)continue;let j=_;for(let Y=0;Y<W;Y++){let w=U[N*W+Y];if(w===void 0)continue;let V=jJ($.vstore,$.vsindex,Y,$.axisCoords);j+=w*V}q.push(j)}break}case 15:{let K=q.pop();if(K===void 0)break;$.vsindex=K;break}case 3072:break}}function H1($,Q,Z,J,q,K,W){let{x:H,y:U}=$,X=H+Q,N=U+Z,_=X+J,j=N+q,Y=_+K,w=j+W;$.currentContour.push({x:X,y:N,onCurve:!1,cubic:!0}),$.currentContour.push({x:_,y:j,onCurve:!1,cubic:!0}),$.currentContour.push({x:Y,y:w,onCurve:!0}),$.x=Y,$.y=w}function q5($){if($<1240)return 107;if($<33900)return 1131;return 32768}function jJ($,Q,Z,J){let q=$.itemVariationData[Q];if(!q)return 0;let K=q.regionIndexes[Z];if(K===void 0)return 0;let W=$.variationRegionList.regions[K];if(!W)return 0;let H=1;for(let U=0;U<W.axes.length&&U<J.length;U++){let X=W.axes[U];if(!X)continue;let N=J[U];if(N===void 0)continue;if(N<X.startCoord||N>X.endCoord)return 0;if(N===X.peakCoord)continue;if(N<X.peakCoord)H*=(N-X.startCoord)/(X.peakCoord-X.startCoord);else H*=(X.endCoord-N)/(X.endCoord-X.peakCoord)}return H}function wJ($,Q,Z=0){let J=$.topDicts[Z];return 0}function K5($){let Q=$.offset,Z=$.uint8(),J=$.uint8(),q=$.uint8(),K=$.uint16();$.seek(Q+q);let W=$.slice($.offset-Q,K);$.skip(K);let H=zJ(W),U=t6($),X=[];if(H.charStrings!==void 0)$.seek(Q+H.charStrings),X=t6($);let N=[];if(H.fdArray!==void 0){$.seek(Q+H.fdArray);let Y=t6($);for(let w of Y){let V=EJ(new T1(w.buffer,w.byteOffset,w.byteLength));if(V.privateOffset!==void 0&&V.privateSize!==void 0){$.seek(Q+V.privateOffset);let z=$.slice(0,V.privateSize);if(V.private=GJ(z),V.private.subrs!==void 0)$.seek(Q+V.privateOffset+V.private.subrs),V.localSubrs=t6($)}N.push(V)}}let _=null;if(H.fdSelect!==void 0)$.seek(Q+H.fdSelect),_=AJ($,X.length);let j=null;if(H.vstore!==void 0)$.seek(Q+H.vstore),j=BJ($);return{version:{major:Z,minor:J},topDict:H,globalSubrs:U,charStrings:X,fdArray:N,fdSelect:_,vstore:j}}function t6($){let Q=$.uint32();if(Q===0)return[];let Z=$.uint8(),J=[];for(let K=0;K<=Q;K++)J.push(YJ($,Z));let q=[];for(let K=0;K<Q;K++){let W=J[K],H=J[K+1];if(W===void 0||H===void 0)continue;let U=H-W;q.push($.bytes(U))}return q}function YJ($,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 c8($){let Q=new Map,Z=[];while($.remaining>0){let J=$.uint8();if(J<=21){let q=J;if(J===12)q=3072|$.uint8();Q.set(q,[...Z]),Z.length=0}else if(J===22)Q.set(22,[...Z]),Z.length=0;else if(J===23)Q.set(23,[...Z]),Z.length=0;else if(J===24)Q.set(24,[...Z]),Z.length=0;else if(J===28)Z.push($.int16());else if(J===29)Z.push($.int32());else if(J===30)Z.push(VJ($));else if(J>=32&&J<=246)Z.push(J-139);else if(J>=247&&J<=250){let q=$.uint8();Z.push((J-247)*256+q+108)}else if(J>=251&&J<=254){let q=$.uint8();Z.push(-(J-251)*256-q-108)}}return Q}function VJ($){let Q="",Z="0123456789.EE -",J=!1;while(!J){let q=$.uint8();for(let K=0;K<2;K++){let W=K===0?q>>4:q&15;if(W===15){J=!0;break}if(W===12)Q+="E-";else{let H=Z[W];if(H!==void 0)Q+=H}}}return parseFloat(Q)}function zJ($){let Q=c8($),Z={};for(let[J,q]of Q)switch(J){case 3079:Z.fontMatrix=q;break;case 17:Z.charStrings=q[0];break;case 3108:Z.fdArray=q[0];break;case 3109:Z.fdSelect=q[0];break;case 24:Z.vstore=q[0];break}return Z}function EJ($){let Q=c8($),Z={},J=Q.get(18);if(J&&J.length>=2)Z.privateSize=J[0],Z.privateOffset=J[1];return Z}function GJ($){let Q=c8($),Z={};for(let[J,q]of Q){let K=q[0];switch(J){case 6:Z.blueValues=K6(q);break;case 7:Z.otherBlues=K6(q);break;case 8:Z.familyBlues=K6(q);break;case 9:Z.familyOtherBlues=K6(q);break;case 3081:Z.blueScale=K;break;case 3082:Z.blueShift=K;break;case 3083:Z.blueFuzz=K;break;case 10:Z.stdHW=K;break;case 11:Z.stdVW=K;break;case 3084:Z.stemSnapH=K6(q);break;case 3085:Z.stemSnapV=K6(q);break;case 3089:Z.languageGroup=K;break;case 3090:Z.expansionFactor=K;break;case 19:Z.subrs=K;break;case 22:Z.vsindex=K;break;case 23:Z.blend=q;break}}return Z}function K6($){let Q=[],Z=0;for(let J of $)Z+=J,Q.push(Z);return Q}function AJ($,Q){let Z=$.uint8();if(Z===0){let J=$.uint8Array(Q);return{format:Z,select:(q)=>J[q]??0}}else if(Z===3){let J=$.uint16(),q=[];for(let K=0;K<J;K++)q.push({first:$.uint16(),fd:$.uint8()});return $.uint16(),{format:Z,select:(K)=>{let W=0,H=q.length-1;while(W<H){let X=Math.ceil((W+H)/2),N=q[X];if(N&&N.first<=K)W=X;else H=X-1}return q[W]?.fd??0}}}else if(Z===4){let J=$.uint32(),q=[];for(let K=0;K<J;K++)q.push({first:$.uint32(),fd:$.uint16()});return $.uint32(),{format:Z,select:(K)=>{let W=0,H=q.length-1;while(W<H){let X=Math.ceil((W+H)/2),N=q[X];if(N&&N.first<=K)W=X;else H=X-1}return q[W]?.fd??0}}}return{format:Z,select:()=>0}}function BJ($){let Q=$.offset,Z=$.uint16(),J=$.uint16(),q=$.uint32(),K=$.uint16(),W=[];for(let X=0;X<K;X++)W.push($.uint32());$.seek(Q+q);let H=DJ($),U=[];for(let X of W)$.seek(Q+X),U.push(MJ($));return{format:J,variationRegionList:H,itemVariationData:U}}function DJ($){let Q=$.uint16(),Z=$.uint16(),J=[];for(let q=0;q<Z;q++){let K=[];for(let W=0;W<Q;W++)K.push({startCoord:$.f2dot14(),peakCoord:$.f2dot14(),endCoord:$.f2dot14()});J.push({axes:K})}return{axisCount:Q,regionCount:Z,regions:J}}function MJ($){let Q=$.uint16(),Z=$.uint16(),J=Z&32767,q=(Z&32768)!==0,K=[];for(let H=0;H<J;H++)K.push($.uint16());let W=[];for(let H=0;H<Q;H++){let U=[];for(let X=0;X<J;X++)if(q)U.push($.int32());else U.push($.int16());W.push(U)}return{itemCount:Q,regionIndexCount:J,regionIndexes:K,deltaSets:W}}function W5($,Q){let Z=$.offset,J=$.uint16(),q=$.uint16(),K=[];for(let N=0;N<q;N++)K.push({platformId:$.uint16(),encodingId:$.uint16(),offset:$.uint32()});let W=new Map,H=new Set;for(let N of K){if(H.has(N.offset)){let Y=`${N.platformId}-${N.encodingId}`;for(let[w,V]of W){let E=w.split("@")[0];if(E&&Number.parseInt(E,10)===N.offset){W.set(Y,V);break}}continue}H.add(N.offset);let _=$.slice(N.offset,Q-N.offset),j=FJ(_);if(j){let Y=`${N.platformId}-${N.encodingId}`;W.set(Y,j)}}let U=["3-10","0-4","3-1","0-3","0-6","1-0"],X=null;for(let N of U){let _=W.get(N);if(_&&_.format!==14){X=_;break}}if(!X){for(let N of W.values())if(N.format!==14){X=N;break}}return{version:J,numTables:q,encodingRecords:K,subtables:W,bestSubtable:X}}function FJ($){switch($.uint16()){case 0:return LJ($);case 4:return RJ($);case 12:return PJ($);case 14:return TJ($);default:return null}}function LJ($){let Q=$.uint16(),Z=$.uint16(),J=$.uint8Array(256);return{format:0,glyphIdArray:J,lookup(q){if(q>=0&&q<256)return J[q];return}}}function RJ($){let Q=$.uint16(),Z=$.uint16(),q=$.uint16()/2;$.skip(6);let K=$.uint16Array(q);$.skip(2);let W=$.uint16Array(q),H=$.int16Array(q),U=$.offset,X=$.uint16Array(q),_=$.remaining/2,j=$.uint16Array(_);return{format:4,segCount:q,endCodes:K,startCodes:W,idDeltas:H,idRangeOffsets:X,glyphIdArray:j,lookup(Y){if(Y>65535)return;let w=0,V=q-1;while(w<=V){let z=w+V>>>1,E=K[z];if(E===void 0)break;if(Y>E)w=z+1;else{let G=W[z];if(G===void 0)break;if(Y<G)V=z-1;else{let B=X[z],D=H[z];if(B===void 0||D===void 0)break;if(B===0)return Y+D&65535;let S=B/2-(q-z)+(Y-G),L=j[S];if(L===void 0||L===0)return 0;return L+D&65535}}}return}}}function PJ($){$.skip(2);let Q=$.uint32(),Z=$.uint32(),J=$.uint32(),q=Array(J);for(let K=0;K<J;K++)q[K]={startCharCode:$.uint32(),endCharCode:$.uint32(),startGlyphId:$.uint32()};return{format:12,groups:q,lookup(K){let W=0,H=q.length-1;while(W<=H){let U=W+H>>>1,X=q[U];if(!X)break;if(K>X.endCharCode)W=U+1;else if(K<X.startCharCode)H=U-1;else return X.startGlyphId+(K-X.startCharCode)}return}}}function TJ($){let Q=$.offset-2,Z=$.uint32(),J=$.uint32(),q=[];for(let W=0;W<J;W++)q.push({varSelector:$.uint24(),defaultUVSOffset:$.uint32(),nonDefaultUVSOffset:$.uint32()});let K=[];for(let W of q){let H=null,U=null;if(W.defaultUVSOffset!==0){let X=$.sliceFrom(Q+W.defaultUVSOffset),N=X.uint32();H=[];for(let _=0;_<N;_++)H.push({startUnicodeValue:X.uint24(),additionalCount:X.uint8()})}if(W.nonDefaultUVSOffset!==0){let X=$.sliceFrom(Q+W.nonDefaultUVSOffset),N=X.uint32();U=[];for(let _=0;_<N;_++)U.push({unicodeValue:X.uint24(),glyphId:X.uint16()})}K.push({varSelector:W.varSelector,defaultUVS:H,nonDefaultUVS:U})}return{format:14,varSelectorRecords:K,lookup(W){return},lookupVariation(W,H){let U=0,X=K.length-1,N=null;while(U<=X){let _=U+X>>>1,j=K[_];if(!j)break;if(H>j.varSelector)U=_+1;else if(H<j.varSelector)X=_-1;else{N=j;break}}if(!N)return;if(N.nonDefaultUVS){let _=0,j=N.nonDefaultUVS.length-1;while(_<=j){let Y=_+j>>>1,w=N.nonDefaultUVS[Y];if(!w)break;if(W>w.unicodeValue)_=Y+1;else if(W<w.unicodeValue)j=Y-1;else return w.glyphId}}if(N.defaultUVS)for(let _ of N.defaultUVS){let j=_.startUnicodeValue+_.additionalCount;if(W>=_.startUnicodeValue&&W<=j)return"default"}return}}}function H5($,Q){return $.bestSubtable?.lookup(Q)??0}var U5;((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"})(U5||={});var X5;((J)=>{J[J.Pad=0]="Pad";J[J.Repeat=1]="Repeat";J[J.Reflect=2]="Reflect"})(X5||={});var N5;((v)=>{v[v.Clear=0]="Clear";v[v.Src=1]="Src";v[v.Dest=2]="Dest";v[v.SrcOver=3]="SrcOver";v[v.DestOver=4]="DestOver";v[v.SrcIn=5]="SrcIn";v[v.DestIn=6]="DestIn";v[v.SrcOut=7]="SrcOut";v[v.DestOut=8]="DestOut";v[v.SrcAtop=9]="SrcAtop";v[v.DestAtop=10]="DestAtop";v[v.Xor=11]="Xor";v[v.Plus=12]="Plus";v[v.Screen=13]="Screen";v[v.Overlay=14]="Overlay";v[v.Darken=15]="Darken";v[v.Lighten=16]="Lighten";v[v.ColorDodge=17]="ColorDodge";v[v.ColorBurn=18]="ColorBurn";v[v.HardLight=19]="HardLight";v[v.SoftLight=20]="SoftLight";v[v.Difference=21]="Difference";v[v.Exclusion=22]="Exclusion";v[v.Multiply=23]="Multiply";v[v.Hue=24]="Hue";v[v.Saturation=25]="Saturation";v[v.Color=26]="Color";v[v.Luminosity=27]="Luminosity"})(N5||={});function r8($){let Q=$.offset,Z=$.uint16(),J=$.uint16(),q=$.uint32(),K=$.uint32(),W=$.uint16(),H=[];if(q!==0&&J>0){$.seek(Q+q);for(let N=0;N<J;N++)H.push({glyphId:$.uint16(),firstLayerIndex:$.uint16(),numLayers:$.uint16()})}let U=[];if(K!==0&&W>0){$.seek(Q+K);for(let N=0;N<W;N++)U.push({glyphId:$.uint16(),paletteIndex:$.uint16()})}let X={version:Z,baseGlyphRecords:H,layerRecords:U};if(Z>=1){$.seek(Q+14);let N=$.uint32(),_=$.uint32(),j=$.uint32(),Y=$.uint32(),w=$.uint32();if(N!==0){$.seek(Q+N);let V=$.uint32();X.baseGlyphPaintRecords=[];for(let z=0;z<V;z++){let E=$.uint16(),G=$.uint32(),B=$.offset;$.seek(Q+N+4+z*6+2+G-4);let D=_1($,Q);$.seek(B),X.baseGlyphPaintRecords.push({glyphId:E,paint:D})}}if(_!==0){$.seek(Q+_);let V=$.uint32(),z=[];for(let E=0;E<V;E++)z.push($.uint32());X.layerList=[];for(let E of z)$.seek(Q+_+E),X.layerList.push(_1($,Q))}if(j!==0)$.seek(Q+j),X.clipList=OJ($,Q);if(Y!==0)$.seek(Q+Y),X.varIdxMap=vJ($);if(w!==0)$.seek(Q+w),X.itemVariationStore=kJ($)}return X}function _1($,Q){let Z=$.uint8();switch(Z){case 1:return{format:Z,numLayers:$.uint8(),firstLayerIndex:$.uint32()};case 2:return{format:Z,paletteIndex:$.uint16(),alpha:$.f2dot14()};case 3:return{format:Z,paletteIndex:$.uint16(),alpha:$.f2dot14(),varIndexBase:$.uint32()};case 4:case 5:{let J=$.uint24(),q=$.fword(),K=$.fword(),W=$.fword(),H=$.fword(),U=$.fword(),X=$.fword(),N=$.offset;$.seek($.offset-18+J);let _=a8($);return $.seek(N),{format:Z,colorLine:_,x0:q,y0:K,x1:W,y1:H,x2:U,y2:X}}case 6:case 7:{let J=$.uint24(),q=$.fword(),K=$.fword(),W=$.ufword(),H=$.fword(),U=$.fword(),X=$.ufword(),N=$.offset;$.seek($.offset-18+J);let _=a8($);return $.seek(N),{format:Z,colorLine:_,x0:q,y0:K,radius0:W,x1:H,y1:U,radius1:X}}case 8:case 9:{let J=$.uint24(),q=$.fword(),K=$.fword(),W=$.f2dot14(),H=$.f2dot14(),U=$.offset;$.seek($.offset-12+J);let X=a8($);return $.seek(U),{format:Z,colorLine:X,centerX:q,centerY:K,startAngle:W,endAngle:H}}case 10:{let J=$.uint24(),q=$.uint16(),K=$.offset;$.seek($.offset-5+J);let W=_1($,Q);return $.seek(K),{format:Z,paint:W,glyphId:q}}case 11:return{format:Z,glyphId:$.uint16()};case 12:case 13:{let J=$.uint24(),q=$.uint24(),K=$.offset-6+J,W=$.offset-3+q;$.seek(W);let H={xx:$.fixed(),yx:$.fixed(),xy:$.fixed(),yy:$.fixed(),dx:$.fixed(),dy:$.fixed()};$.seek(K);let U=_1($,Q);return{format:Z,paint:U,transform:H}}case 14:case 15:{let J=$.uint24(),q=$.fword(),K=$.fword(),W=$.offset;$.seek($.offset-7+J);let H=_1($,Q);return $.seek(W),{format:Z,paint:H,dx:q,dy:K}}case 16:case 17:{let J=$.uint24(),q=$.f2dot14(),K=$.f2dot14(),W=$.offset;$.seek($.offset-7+J);let H=_1($,Q);return $.seek(W),{format:Z,paint:H,scaleX:q,scaleY:K}}case 18:case 19:{let J=$.uint24(),q=$.f2dot14(),K=$.f2dot14(),W=$.fword(),H=$.fword(),U=$.offset;$.seek($.offset-11+J);let X=_1($,Q);return $.seek(U),{format:Z,paint:X,scaleX:q,scaleY:K,centerX:W,centerY:H}}case 20:case 21:{let J=$.uint24(),q=$.f2dot14(),K=$.offset;$.seek($.offset-5+J);let W=_1($,Q);return $.seek(K),{format:Z,paint:W,scaleX:q,scaleY:q}}case 22:case 23:{let J=$.uint24(),q=$.f2dot14(),K=$.fword(),W=$.fword(),H=$.offset;$.seek($.offset-9+J);let U=_1($,Q);return $.seek(H),{format:Z,paint:U,scaleX:q,scaleY:q,centerX:K,centerY:W}}case 24:case 25:{let J=$.uint24(),q=$.f2dot14(),K=$.offset;$.seek($.offset-5+J);let W=_1($,Q);return $.seek(K),{format:Z,paint:W,angle:q}}case 26:case 27:{let J=$.uint24(),q=$.f2dot14(),K=$.fword(),W=$.fword(),H=$.offset;$.seek($.offset-9+J);let U=_1($,Q);return $.seek(H),{format:Z,paint:U,angle:q,centerX:K,centerY:W}}case 28:case 29:{let J=$.uint24(),q=$.f2dot14(),K=$.f2dot14(),W=$.offset;$.seek($.offset-7+J);let H=_1($,Q);return $.seek(W),{format:Z,paint:H,xSkewAngle:q,ySkewAngle:K}}case 30:case 31:{let J=$.uint24(),q=$.f2dot14(),K=$.f2dot14(),W=$.fword(),H=$.fword(),U=$.offset;$.seek($.offset-11+J);let X=_1($,Q);return $.seek(U),{format:Z,paint:X,xSkewAngle:q,ySkewAngle:K,centerX:W,centerY:H}}case 32:{let J=$.uint24(),q=$.uint8(),K=$.uint24(),W=$.offset-7+J,H=$.offset-3+K;$.seek(W);let U=_1($,Q);$.seek(H);let X=_1($,Q);return{format:Z,sourcePaint:U,compositeMode:q,backdropPaint:X}}default:throw Error(`Unknown paint format: ${Z}`)}}function a8($){let Q=$.uint8(),Z=$.uint16(),J=[];for(let q=0;q<Z;q++)J.push({stopOffset:$.f2dot14(),paletteIndex:$.uint16(),alpha:$.f2dot14()});return{extend:Q,colorStops:J}}function OJ($,Q){let Z=$.uint8(),J=$.uint32(),q=[];for(let K=0;K<J;K++){let W=$.uint16(),H=$.uint16(),U=$.uint24(),X=$.offset;$.seek($.offset-7+U);let N=$.uint8(),_={format:N,xMin:$.fword(),yMin:$.fword(),xMax:$.fword(),yMax:$.fword()};if(N===2)_.varIndexBase=$.uint32();$.seek(X),q.push({startGlyphId:W,endGlyphId:H,clipBox:_})}return q}function _5($,Q){let Z=$.baseGlyphRecords,J=0,q=Z.length-1;while(J<=q){let K=J+q>>>1,W=Z[K];if(!W)break;if(W.glyphId===Q){let H=[];for(let U=0;U<W.numLayers;U++){let X=$.layerRecords[W.firstLayerIndex+U];if(X)H.push(X)}return H}else if(W.glyphId<Q)J=K+1;else q=K-1}return null}function j5($,Q){if(!$.baseGlyphPaintRecords)return null;let Z=$.baseGlyphPaintRecords,J=0,q=Z.length-1;while(J<=q){let K=J+q>>>1,W=Z[K];if(!W)break;if(W.glyphId===Q)return W.paint;else if(W.glyphId<Q)J=K+1;else q=K-1}return null}function IJ($,Q){return _5($,Q)!==null||j5($,Q)!==null}function vJ($){let Q=$.uint8(),Z=$.uint8(),J=Q===0?$.uint16():$.uint32(),q=(Z&15)+1,K=(Z>>4&15)+1,W=Math.ceil((q+K)/8),H=[];for(let U=0;U<J;U++){let X=0;for(let Y=0;Y<W;Y++)X=X<<8|$.uint8();let N=(1<<q)-1,_=X&N,j=X>>q;H.push(j<<16|_)}return H}function kJ($){let Q=$.offset,Z=$.uint16(),J=$.uint32(),q=$.uint16(),K=[];for(let N=0;N<q;N++)K.push($.uint32());$.seek(Q+J);let W=$.uint16(),H=$.uint16(),U=[];for(let N=0;N<H;N++){let _=[];for(let j=0;j<W;j++)_.push({startCoord:$.f2dot14(),peakCoord:$.f2dot14(),endCoord:$.f2dot14()});U.push({regionAxes:_})}let X=[];for(let N of K){$.seek(Q+N);let _=$.uint16(),j=$.uint16(),Y=$.uint16(),w=[];for(let G=0;G<Y;G++)w.push($.uint16());let V=(j&32768)!==0,z=j&32767,E=[];for(let G=0;G<_;G++){let B=[];for(let D=0;D<Y;D++)if(D<z)B.push(V?$.int32():$.int16());else B.push(V?$.int16():$.int8());E.push(B)}X.push({itemCount:_,wordDeltaCount:j,regionIndexCount:Y,regionIndexes:w,deltaSets:E})}return{format:Z,variationRegionListOffset:J,itemVariationDataCount:q,itemVariationDataOffsets:K,variationRegions:U,itemVariationData:X}}function CJ($,Q){if(!$.clipList)return null;for(let Z of $.clipList)if(Q>=Z.startGlyphId&&Q<=Z.endGlyphId)return Z.clipBox;return null}function SJ($,Q,Z){if(!$.itemVariationStore||!$.varIdxMap)return 0;let J=$.varIdxMap[Q];if(J===void 0)return 0;let q=J>>16,K=J&65535,W=$.itemVariationStore,H=W.itemVariationData[q];if(!H)return 0;let U=H.deltaSets[K];if(!U)return 0;let X=0;for(let N=0;N<H.regionIndexCount;N++){let _=H.regionIndexes[N],j=W.variationRegions[_];if(!j)continue;let Y=1;for(let w=0;w<j.regionAxes.length&&w<Z.length;w++){let V=j.regionAxes[w],z=Z[w];if(Y*=hJ(z,V.startCoord,V.peakCoord,V.endCoord),Y===0)break}X+=U[N]*Y}return X}function hJ($,Q,Z,J){if(Z===0)return 1;if($===Z)return 1;if($<Q||$>J)return 0;if($<Z){if(Q===Z)return 1;return($-Q)/(Z-Q)}else{if(Z===J)return 1;return(J-$)/(J-Z)}}function mJ($){return $.version>=1&&$.baseGlyphPaintRecords!==void 0}function yJ($,Q){return $.layerList?.[Q]??null}var w5;((Z)=>{Z[Z.UsableWithLightBackground=1]="UsableWithLightBackground";Z[Z.UsableWithDarkBackground=2]="UsableWithDarkBackground"})(w5||={});function t8($){let Q=$.offset,Z=$.uint16(),J=$.uint16(),q=$.uint16(),K=$.uint16(),W=$.uint32(),H=[];for(let Y=0;Y<q;Y++)H.push($.uint16());$.seek(Q+W);let U=[];for(let Y=0;Y<K;Y++)U.push({blue:$.uint8(),green:$.uint8(),red:$.uint8(),alpha:$.uint8()});let X=[];for(let Y=0;Y<q;Y++){let w=H[Y];if(w===void 0)continue;let V=[];for(let z=0;z<J;z++){let E=U[w+z];if(E)V.push(E)}X.push({colors:V})}let N,_,j;if(Z>=1){$.seek(Q+12+q*2);let Y=$.uint32(),w=$.uint32(),V=$.uint32();if(Y!==0){$.seek(Q+Y),N=[];for(let z=0;z<q;z++)N.push($.uint32())}if(w!==0){$.seek(Q+w),_=[];for(let z=0;z<q;z++)_.push($.uint16())}if(V!==0){$.seek(Q+V),j=[];for(let z=0;z<J;z++)j.push($.uint16())}}return{version:Z,numPalettes:q,numPaletteEntries:J,palettes:X,paletteTypes:N,paletteLabels:_,paletteEntryLabels:j}}function bJ($,Q,Z){let J=$.palettes[Q];if(!J)return null;return J.colors[Z]??null}function gJ($){return`rgba(${$.red}, ${$.green}, ${$.blue}, ${($.alpha/255).toFixed(3)})`}function xJ($){let Q=$.red.toString(16).padStart(2,"0"),Z=$.green.toString(16).padStart(2,"0"),J=$.blue.toString(16).padStart(2,"0");if($.alpha===255)return`#${Q}${Z}${J}`;let q=$.alpha.toString(16).padStart(2,"0");return`#${Q}${Z}${J}${q}`}var Y5;((T)=>{T[T.AllTypographicFeatures=0]="AllTypographicFeatures";T[T.Ligatures=1]="Ligatures";T[T.CursiveConnection=2]="CursiveConnection";T[T.LetterCase=3]="LetterCase";T[T.VerticalSubstitution=4]="VerticalSubstitution";T[T.LinguisticRearrangement=5]="LinguisticRearrangement";T[T.NumberSpacing=6]="NumberSpacing";T[T.SmartSwashes=8]="SmartSwashes";T[T.Diacritics=9]="Diacritics";T[T.VerticalPosition=10]="VerticalPosition";T[T.Fractions=11]="Fractions";T[T.OverlappingCharacters=13]="OverlappingCharacters";T[T.TypographicExtras=14]="TypographicExtras";T[T.MathematicalExtras=15]="MathematicalExtras";T[T.OrnamentSets=16]="OrnamentSets";T[T.CharacterAlternatives=17]="CharacterAlternatives";T[T.DesignComplexity=18]="DesignComplexity";T[T.StyleOptions=19]="StyleOptions";T[T.CharacterShape=20]="CharacterShape";T[T.NumberCase=21]="NumberCase";T[T.TextSpacing=22]="TextSpacing";T[T.Transliteration=23]="Transliteration";T[T.Annotation=24]="Annotation";T[T.KanaSpacing=25]="KanaSpacing";T[T.IdeographicSpacing=26]="IdeographicSpacing";T[T.UnicodeDecomposition=27]="UnicodeDecomposition";T[T.RubyKana=28]="RubyKana";T[T.CJKSymbolAlternatives=29]="CJKSymbolAlternatives";T[T.IdeographicAlternatives=30]="IdeographicAlternatives";T[T.CJKVerticalRomanPlacement=31]="CJKVerticalRomanPlacement";T[T.ItalicCJKRoman=32]="ItalicCJKRoman";T[T.CaseSensitiveLayout=33]="CaseSensitiveLayout";T[T.AlternateKana=34]="AlternateKana";T[T.StylisticAlternatives=35]="StylisticAlternatives";T[T.ContextualAlternatives=36]="ContextualAlternatives";T[T.LowerCase=37]="LowerCase";T[T.UpperCase=38]="UpperCase";T[T.LanguageTag=39]="LanguageTag";T[T.CJKRomanSpacing=103]="CJKRomanSpacing"})(Y5||={});var V5;((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"})(V5||={});var z5;((K)=>{K[K.NormalPosition=0]="NormalPosition";K[K.Superiors=1]="Superiors";K[K.Inferiors=2]="Inferiors";K[K.Ordinals=3]="Ordinals";K[K.ScientificInferiors=4]="ScientificInferiors"})(z5||={});var E5;((Z)=>{Z[Z.LowerCaseNumbers=0]="LowerCaseNumbers";Z[Z.UpperCaseNumbers=1]="UpperCaseNumbers"})(E5||={});var G5;((q)=>{q[q.MonospacedNumbers=0]="MonospacedNumbers";q[q.ProportionalNumbers=1]="ProportionalNumbers";q[q.ThirdWidthNumbers=2]="ThirdWidthNumbers";q[q.QuarterWidthNumbers=3]="QuarterWidthNumbers"})(G5||={});var A5;((J)=>{J[J.NoFractions=0]="NoFractions";J[J.VerticalFractions=1]="VerticalFractions";J[J.DiagonalFractions=2]="DiagonalFractions"})(A5||={});var B5;((q)=>{q[q.CaseSensitiveLayoutOn=0]="CaseSensitiveLayoutOn";q[q.CaseSensitiveLayoutOff=1]="CaseSensitiveLayoutOff";q[q.CaseSensitiveSpacingOn=2]="CaseSensitiveSpacingOn";q[q.CaseSensitiveSpacingOff=3]="CaseSensitiveSpacingOff"})(B5||={});var D5;((k)=>{k[k.NoStylisticAlternates=0]="NoStylisticAlternates";k[k.StylisticAltOneOn=2]="StylisticAltOneOn";k[k.StylisticAltOneOff=3]="StylisticAltOneOff";k[k.StylisticAltTwoOn=4]="StylisticAltTwoOn";k[k.StylisticAltTwoOff=5]="StylisticAltTwoOff";k[k.StylisticAltThreeOn=6]="StylisticAltThreeOn";k[k.StylisticAltThreeOff=7]="StylisticAltThreeOff";k[k.StylisticAltFourOn=8]="StylisticAltFourOn";k[k.StylisticAltFourOff=9]="StylisticAltFourOff";k[k.StylisticAltFiveOn=10]="StylisticAltFiveOn";k[k.StylisticAltFiveOff=11]="StylisticAltFiveOff";k[k.StylisticAltSixOn=12]="StylisticAltSixOn";k[k.StylisticAltSixOff=13]="StylisticAltSixOff";k[k.StylisticAltSevenOn=14]="StylisticAltSevenOn";k[k.StylisticAltSevenOff=15]="StylisticAltSevenOff";k[k.StylisticAltEightOn=16]="StylisticAltEightOn";k[k.StylisticAltEightOff=17]="StylisticAltEightOff";k[k.StylisticAltNineOn=18]="StylisticAltNineOn";k[k.StylisticAltNineOff=19]="StylisticAltNineOff";k[k.StylisticAltTenOn=20]="StylisticAltTenOn";k[k.StylisticAltTenOff=21]="StylisticAltTenOff";k[k.StylisticAltElevenOn=22]="StylisticAltElevenOn";k[k.StylisticAltElevenOff=23]="StylisticAltElevenOff";k[k.StylisticAltTwelveOn=24]="StylisticAltTwelveOn";k[k.StylisticAltTwelveOff=25]="StylisticAltTwelveOff";k[k.StylisticAltThirteenOn=26]="StylisticAltThirteenOn";k[k.StylisticAltThirteenOff=27]="StylisticAltThirteenOff";k[k.StylisticAltFourteenOn=28]="StylisticAltFourteenOn";k[k.StylisticAltFourteenOff=29]="StylisticAltFourteenOff";k[k.StylisticAltFifteenOn=30]="StylisticAltFifteenOn";k[k.StylisticAltFifteenOff=31]="StylisticAltFifteenOff";k[k.StylisticAltSixteenOn=32]="StylisticAltSixteenOn";k[k.StylisticAltSixteenOff=33]="StylisticAltSixteenOff";k[k.StylisticAltSeventeenOn=34]="StylisticAltSeventeenOn";k[k.StylisticAltSeventeenOff=35]="StylisticAltSeventeenOff";k[k.StylisticAltEighteenOn=36]="StylisticAltEighteenOn";k[k.StylisticAltEighteenOff=37]="StylisticAltEighteenOff";k[k.StylisticAltNineteenOn=38]="StylisticAltNineteenOn";k[k.StylisticAltNineteenOff=39]="StylisticAltNineteenOff";k[k.StylisticAltTwentyOn=40]="StylisticAltTwentyOn";k[k.StylisticAltTwentyOff=41]="StylisticAltTwentyOff"})(D5||={});var M5;((W)=>{W[W.ContextualAlternatesOn=0]="ContextualAlternatesOn";W[W.ContextualAlternatesOff=1]="ContextualAlternatesOff";W[W.SwashAlternatesOn=2]="SwashAlternatesOn";W[W.SwashAlternatesOff=3]="SwashAlternatesOff";W[W.ContextualSwashAlternatesOn=4]="ContextualSwashAlternatesOn";W[W.ContextualSwashAlternatesOff=5]="ContextualSwashAlternatesOff"})(M5||={});var F5;((J)=>{J[J.DefaultLowerCase=0]="DefaultLowerCase";J[J.LowerCaseSmallCaps=1]="LowerCaseSmallCaps";J[J.LowerCasePetiteCaps=2]="LowerCasePetiteCaps"})(F5||={});var L5;((J)=>{J[J.DefaultUpperCase=0]="DefaultUpperCase";J[J.UpperCaseSmallCaps=1]="UpperCaseSmallCaps";J[J.UpperCasePetiteCaps=2]="UpperCasePetiteCaps"})(L5||={});var R5;((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"})(R5||={});var P5;((J)=>{J[J.ShowDiacritics=0]="ShowDiacritics";J[J.HideDiacritics=1]="HideDiacritics";J[J.DecomposeDiacritics=2]="DecomposeDiacritics"})(P5||={});var T5;((w)=>{w[w.TraditionalCharacters=0]="TraditionalCharacters";w[w.SimplifiedCharacters=1]="SimplifiedCharacters";w[w.JIS1978Characters=2]="JIS1978Characters";w[w.JIS1983Characters=3]="JIS1983Characters";w[w.JIS1990Characters=4]="JIS1990Characters";w[w.TraditionalAltOne=5]="TraditionalAltOne";w[w.TraditionalAltTwo=6]="TraditionalAltTwo";w[w.TraditionalAltThree=7]="TraditionalAltThree";w[w.TraditionalAltFour=8]="TraditionalAltFour";w[w.TraditionalAltFive=9]="TraditionalAltFive";w[w.ExpertCharacters=10]="ExpertCharacters";w[w.NLCCharacters=13]="NLCCharacters";w[w.JIS2004Characters=11]="JIS2004Characters";w[w.HojoCharacters=12]="HojoCharacters"})(T5||={});var O5;((Z)=>{Z[Z.Exclusive=32768]="Exclusive";Z[Z.UseDefault=16384]="UseDefault"})(O5||={});function e8($){let Q=$.offset,Z=$.fixed(),J=$.uint16();$.skip(2),$.skip(4);let q=[];for(let K=0;K<J;K++){let W=$.uint16(),H=$.uint16(),U=$.offset32(),X=$.uint16(),N=X&255,_=$.uint16(),j=[],Y=$.offset;$.seek(Q+U);for(let w=0;w<H;w++)j.push({settingValue:$.uint16(),nameId:$.uint16()});$.seek(Y),q.push({featureType:W,nSettings:H,settingTableOffset:U,featureFlags:X,defaultSettingIndex:N,nameId:_,settings:j})}return{version:Z,features:q}}function uJ($,Q){return $.features.find((Z)=>Z.featureType===Q)}function fJ($){return $.features}function lJ($){return($.featureFlags&32768)!==0}function dJ($){return $.settings[$.defaultSettingIndex]}function nJ($,Q){return $.settings.find((Z)=>Z.settingValue===Q)}function iJ($,Q){return $.settings.some((Z)=>Z.settingValue===Q)}function pJ($,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 oJ($){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}function I5($){let Q=$.uint16(),Z=$.uint16(),J=[];for(let q=0;q<Z;q++){let K=$.uint16(),W=$.uint16();J.push({maxPPEM:K,behavior:W})}return J.sort((q,K)=>q.maxPPEM-K.maxPPEM),{version:Q,ranges:J}}class v5{startGlyphId;classValueArray;constructor($,Q){this.startGlyphId=$,this.classValueArray=Q}get($){let Q=$-this.startGlyphId;if(Q>=0&&Q<this.classValueArray.length)return this.classValueArray[Q]??0;return 0}glyphsInClass($){let Q=[];for(let Z=0;Z<this.classValueArray.length;Z++)if(this.classValueArray[Z]===$)Q.push(this.startGlyphId+Z);return Q}}class k5{ranges;constructor($){this.ranges=$}get($){let Q=0,Z=this.ranges.length-1;while(Q<=Z){let J=Q+Z>>>1,q=this.ranges[J];if(!q)continue;if($>q.endGlyphId)Q=J+1;else if($<q.startGlyphId)Z=J-1;else return q.classValue}return 0}glyphsInClass($){let Q=[];for(let Z of this.ranges)if(Z.classValue===$)for(let J=Z.startGlyphId;J<=Z.endGlyphId;J++)Q.push(J);return Q}}class C5{get($){return 0}glyphsInClass($){return[]}}var sJ=new C5;function cJ($){let Q=$.uint16();if(Q===1){let Z=$.uint16(),J=$.uint16(),q=$.uint16Array(J);return new v5(Z,q)}if(Q===2){let Z=$.uint16(),J=Array(Z);for(let q=0;q<Z;q++)J[q]={startGlyphId:$.uint16(),endGlyphId:$.uint16(),classValue:$.uint16()};return new k5(J)}throw Error(`Unknown ClassDef format: ${Q}`)}function X1($,Q){if(Q===0)return sJ;return cJ($.sliceFrom(Q))}function S5($){let Q=$.uint16(),Z=$.uint16(),J=$.offset16(),q=$.offset16(),K=$.offset16(),W=$.offset16(),H=0;if(Q===1&&Z>=2)H=$.offset16();let U=X1($,J),X=null;if(q!==0)X=aJ($.sliceFrom(q));let N=null;if(K!==0)N=rJ($.sliceFrom(K));let _=X1($,W),j=null;if(H!==0)j=tJ($.sliceFrom(H));return{version:{major:Q,minor:Z},glyphClassDef:U,attachList:X,ligCaretList:N,markAttachClassDef:_,markGlyphSets:j}}function aJ($){let Q=$.offset16(),Z=$.uint16(),J=$.uint16Array(Z),q=$.sliceFrom(Q),K=q.uint16(),W=[];if(K===1){let U=q.uint16();for(let X=0;X<U;X++)W.push(q.uint16())}else if(K===2){let U=q.uint16();for(let X=0;X<U;X++){let N=q.uint16(),_=q.uint16();q.skip(2);for(let j=N;j<=_;j++)W.push(j)}}let H=new Map;for(let[U,X]of J.entries()){let N=W[U];if(N===void 0)continue;let _=$.sliceFrom(X),j=_.uint16(),Y=Array.from(_.uint16Array(j));H.set(N,{pointIndices:Y})}return H}function rJ($){let Q=$.offset16(),Z=$.uint16(),J=$.uint16Array(Z),q=$.sliceFrom(Q),K=q.uint16(),W=[];if(K===1){let U=q.uint16();for(let X=0;X<U;X++)W.push(q.uint16())}else if(K===2){let U=q.uint16();for(let X=0;X<U;X++){let N=q.uint16(),_=q.uint16();q.skip(2);for(let j=N;j<=_;j++)W.push(j)}}let H=new Map;for(let[U,X]of J.entries()){let N=W[U];if(N===void 0)continue;let _=$.sliceFrom(X),j=_.uint16(),Y=_.uint16Array(j),w=[];for(let V of Y){let z=$.sliceFrom(X+V),E=z.uint16();if(E===1)w.push(z.int16());else if(E===2)w.push(z.uint16());else if(E===3)w.push(z.int16())}H.set(N,{caretValues:w})}return H}function tJ($){let Q=$.uint16(),Z=$.uint16(),J=$.uint32Array(Z),q=[];for(let K of J){let W=$.sliceFrom(K),H=W.uint16(),U=new Set;if(H===1){let X=W.uint16();for(let N=0;N<X;N++)U.add(W.uint16())}else if(H===2){let X=W.uint16();for(let N=0;N<X;N++){let _=W.uint16(),j=W.uint16();W.skip(2);for(let Y=_;Y<=j;Y++)U.add(Y)}}q.push(U)}return{has(K,W){let H=q[K];return H?H.has(W):!1}}}function A1($,Q){if(!$)return 0;return $.glyphClassDef.get(Q)}function y5($,Q){let Z=$.uint16(),J=$.uint16(),q=$.uint16(),K=$.uint16(),W=$.offset32(),H=$.uint16(),U=$.uint16(),X=$.offset32(),N=U&1?4:2,_=[];for(let w=0;w<=H;w++){let V=N===4?$.uint32():$.uint16()*2;_.push(V)}let j=[];if(K>0){let w=$.sliceFrom(W);for(let V=0;V<K;V++){let z=[];for(let E=0;E<q;E++)z.push(w.f2dot14());j.push(z)}}let Y=[];for(let w=0;w<H;w++){let V=_[w],z=_[w+1];if(V===void 0||z===void 0){Y.push({tupleVariationHeaders:[]});continue}let E=X+V,G=X+z;if(E===G){Y.push({tupleVariationHeaders:[]});continue}let B=$.sliceFrom(E),D=eJ(B,G-E,q,j);Y.push(D)}return{majorVersion:Z,minorVersion:J,axisCount:q,sharedTupleCount:K,sharedTuples:j,glyphVariationData:Y}}function eJ($,Q,Z,J){if(Q===0)return{tupleVariationHeaders:[]};let q=$.offset,K=$.uint16(),W=$.offset16(),H=K&4095,U=(K&32768)!==0,X=[];for(let Y=0;Y<H;Y++){let w=$.uint16(),V=$.uint16(),z=null,E=null,G=null;if(V&32768){z=[];for(let B=0;B<Z;B++)z.push($.f2dot14())}else{let B=V&4095;z=J[B]||null}if(V&16384){E=[],G=[];for(let B=0;B<Z;B++)E.push($.f2dot14());for(let B=0;B<Z;B++)G.push($.f2dot14())}X.push({variationDataSize:w,tupleIndex:V,peakTuple:z,intermediateStartTuple:E,intermediateEndTuple:G})}let N=$.sliceFrom(q+W),_=null;if(U)_=h5(N);let j=[];for(let Y of X){let w=(Y.tupleIndex&8192)!==0,V;if(w)V=h5(N);else V=_;let z=V?V.length:0,E=z>0?m5(N,z):[],G=z>0?m5(N,z):[],B=[];for(let[D,S]of E.entries()){let L=G[D];B.push({x:S??0,y:L??0})}j.push({variationDataSize:Y.variationDataSize,tupleIndex:Y.tupleIndex,peakTuple:Y.peakTuple,intermediateStartTuple:Y.intermediateStartTuple,intermediateEndTuple:Y.intermediateEndTuple,serializedData:new Uint8Array(0),pointNumbers:V,deltas:B})}return{tupleVariationHeaders:j}}function h5($){let Q=$.uint8(),Z=Q===0?0:Q&128?(Q&127)<<8|$.uint8():Q;if(Z===0)return[];let J=[],q=0;while(J.length<Z){let K=$.uint8(),W=(K&127)+1,H=(K&128)!==0;for(let U=0;U<W&&J.length<Z;U++){let X=H?$.uint16():$.uint8();q+=X,J.push(q)}}return J}function m5($,Q){let Z=[];while(Z.length<Q){let J=$.uint8(),q=(J&63)+1,K=(J&128)!==0,W=(J&64)!==0;for(let H=0;H<q&&Z.length<Q;H++)if(K)Z.push(0);else if(W)Z.push($.int16());else Z.push($.int8())}return Z}function e6($,Q,Z,J){let q=1;for(let[K,W]of $.entries()){let H=Q[K]??0;if(W===0||H===0){if(W!==0)q=0;continue}if(Z&&J){let U=Z[K],X=J[K];if(U===void 0||X===void 0)continue;if(H<U||H>X){q=0;break}if(H<W)q*=(H-U)/(W-U);else if(H>W)q*=(X-H)/(X-W)}else{if(W>0&&H<0||W<0&&H>0){q=0;break}if(Math.abs(H)<Math.abs(W))q*=H/W}}return q}function $q($,Q,Z,J){let q=$.glyphVariationData[Q];if(!q)return{x:0,y:0};let K=0,W=0;for(let H of q.tupleVariationHeaders){if(!H.peakTuple)continue;let U=e6(H.peakTuple,J,H.intermediateStartTuple,H.intermediateEndTuple);if(U===0)continue;if(H.pointNumbers!==null){let X=H.pointNumbers.indexOf(Z);if(X<0)continue;let N=H.deltas[X];if(N)K+=N.x*U,W+=N.y*U}else{let X=H.deltas[Z];if(X)K+=X.x*U,W+=X.y*U}}return{x:Math.round(K),y:Math.round(W)}}function b5($,Q,Z){let J=Z===0,q=[],K=Q+1;if(J)for(let W=0;W<K;W++)q.push($.uint16()*2);else for(let W=0;W<K;W++)q.push($.uint32());return{offsets:q,isShort:J}}function $8($,Q){if(Q<0||Q>=$.offsets.length-1)return null;let Z=$.offsets[Q],J=$.offsets[Q+1];if(Z===void 0||J===void 0)return null;let q=J-Z;if(q===0)return null;return{offset:Z,length:q}}function Qq($,Q){return $8($,Q)!==null}var d1={OnCurve:1,XShortVector:2,YShortVector:4,Repeat:8,XIsSameOrPositive:16,YIsSameOrPositive:32,OverlapSimple:64},F1={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 g5($){return{reader:$}}function r1($,Q,Z){let J=$8(Q,Z);if(!J)return{type:"empty"};let q=$.reader.slice(J.offset,J.length);return Zq(q)}function Zq($){let Q=$.int16(),Z=$.int16(),J=$.int16(),q=$.int16(),K=$.int16();if(Q>=0)return Jq($,Q,Z,J,q,K);else return qq($,Q,Z,J,q,K)}function Jq($,Q,Z,J,q,K){if(Q===0)return{type:"simple",numberOfContours:Q,xMin:Z,yMin:J,xMax:q,yMax:K,contours:[],instructions:new Uint8Array(0)};let W=[];for(let G=0;G<Q;G++)W.push($.uint16());let H=W[Q-1];if(H===void 0)return{type:"simple",numberOfContours:Q,xMin:Z,yMin:J,xMax:q,yMax:K,contours:[],instructions:new Uint8Array(0)};let U=H+1,X=$.uint16(),N=$.bytes(X),_=[];while(_.length<U){let G=$.uint8();if(_.push(G),G&d1.Repeat){let B=$.uint8();for(let D=0;D<B;D++)_.push(G)}}let j=[],Y=0;for(let[G,B]of _.entries()){if(B&d1.XShortVector){let D=$.uint8();Y+=B&d1.XIsSameOrPositive?D:-D}else if(!(B&d1.XIsSameOrPositive))Y+=$.int16();j.push(Y)}let w=[],V=0;for(let[G,B]of _.entries()){if(B&d1.YShortVector){let D=$.uint8();V+=B&d1.YIsSameOrPositive?D:-D}else if(!(B&d1.YIsSameOrPositive))V+=$.int16();w.push(V)}let z=[],E=0;for(let G of W){let B=[];while(E<=G){let D=j[E],S=w[E],L=_[E];if(D===void 0||S===void 0||L===void 0)break;B.push({x:D,y:S,onCurve:(L&d1.OnCurve)!==0}),E++}z.push(B)}return{type:"simple",numberOfContours:Q,xMin:Z,yMin:J,xMax:q,yMax:K,contours:z,instructions:N}}function qq($,Q,Z,J,q,K){let W=[],H;do{H=$.uint16();let X=$.uint16(),N,_;if(H&F1.Arg1And2AreWords)if(H&F1.ArgsAreXYValues)N=$.int16(),_=$.int16();else N=$.uint16(),_=$.uint16();else if(H&F1.ArgsAreXYValues)N=$.int8(),_=$.int8();else N=$.uint8(),_=$.uint8();let j=1,Y=0,w=0,V=1;if(H&F1.WeHaveAScale)j=V=$.f2dot14();else if(H&F1.WeHaveAnXAndYScale)j=$.f2dot14(),V=$.f2dot14();else if(H&F1.WeHaveATwoByTwo)j=$.f2dot14(),Y=$.f2dot14(),w=$.f2dot14(),V=$.f2dot14();W.push({glyphId:X,flags:H,arg1:N,arg2:_,transform:[j,Y,w,V]})}while(H&F1.MoreComponents);let U=new Uint8Array(0);if(H&F1.WeHaveInstructions){let X=$.uint16();U=$.bytes(X)}return{type:"composite",numberOfContours:Q,xMin:Z,yMin:J,xMax:q,yMax:K,components:W,instructions:U}}function x5($,Q,Z,J=0){if(J>32)return[];let q=[];for(let K of Z.components){let W=r1($,Q,K.glyphId),H;if(W.type==="simple")H=W.contours;else if(W.type==="composite")H=x5($,Q,W,J+1);else continue;let[U,X,N,_]=K.transform,j=K.flags&F1.ArgsAreXYValues?K.arg1:0,Y=K.flags&F1.ArgsAreXYValues?K.arg2:0;for(let w of H){let V=w.map((z)=>({x:Math.round(U*z.x+N*z.y+j),y:Math.round(X*z.x+_*z.y+Y),onCurve:z.onCurve}));q.push(V)}}return q}function u5($,Q,Z){let J=r1($,Q,Z);if(J.type==="empty")return[];else if(J.type==="simple")return J.contours;else return x5($,Q,J)}function f5($,Q,Z){let J=r1($,Q,Z);if(J.type==="empty")return null;return{xMin:J.xMin,yMin:J.yMin,xMax:J.xMax,yMax:J.yMax}}function l5($,Q,Z,J){let q=$.glyphVariationData[Q];if(!q)return Array(Z).fill({x:0,y:0});let K=Array(Z).fill(null).map(()=>({x:0,y:0}));for(let W of q.tupleVariationHeaders){if(!W.peakTuple)continue;let H=e6(W.peakTuple,J,W.intermediateStartTuple,W.intermediateEndTuple);if(H===0)continue;if(W.pointNumbers!==null)for(let[U,X]of W.pointNumbers.entries()){let N=K[X],_=W.deltas[U];if(X<Z&&N&&_)N.x+=_.x*H,N.y+=_.y*H}else for(let U=0;U<Math.min(W.deltas.length,Z);U++){let X=K[U],N=W.deltas[U];if(X&&N)X.x+=N.x*H,X.y+=N.y*H}}for(let W of K)W.x=Math.round(W.x),W.y=Math.round(W.y);return K}function d5($,Q){let Z=[],J=0;for(let q of $){let K=[];for(let W of q){let H=Q[J]??{x:0,y:0};K.push({x:W.x+H.x,y:W.y+H.y,onCurve:W.onCurve}),J++}Z.push(K)}return Z}function n5($,Q,Z,J,q){let K=r1($,Q,J);if(K.type==="empty")return[];let W;if(K.type==="simple")W=K.contours;else W=i5($,Q,Z,K,q);if(Z&&q&&q.length>0){let H=0;for(let X of W)H+=X.length;H+=4;let U=l5(Z,J,H,q);W=d5(W,U)}return W}function i5($,Q,Z,J,q,K=0){if(K>32)return[];let W=[];for(let H of J.components){let U=r1($,Q,H.glyphId),X;if(U.type==="simple"){if(X=U.contours,Z&&q&&q.length>0){let z=0;for(let G of X)z+=G.length;z+=4;let E=l5(Z,H.glyphId,z,q);X=d5(X,E)}}else if(U.type==="composite")X=i5($,Q,Z,U,q,K+1);else continue;let[N,_,j,Y]=H.transform,w=H.flags&F1.ArgsAreXYValues?H.arg1:0,V=H.flags&F1.ArgsAreXYValues?H.arg2:0;for(let z of X){let E=z.map((G)=>({x:Math.round(N*G.x+j*G.y+w),y:Math.round(_*G.x+Y*G.y+V),onCurve:G.onCurve}));W.push(E)}}return W}class p5{glyphArray;glyphSet;constructor($){this.glyphArray=$,this.glyphSet=new Set($)}get size(){return this.glyphArray.length}get($){let Q=0,Z=this.glyphArray.length-1;while(Q<=Z){let J=Q+Z>>>1,q=this.glyphArray[J];if(q===void 0)continue;if(q<$)Q=J+1;else if(q>$)Z=J-1;else return J}return null}covers($){return this.glyphSet.has($)}glyphs(){return Array.from(this.glyphArray)}}class o5{ranges;_size;constructor($){if(this.ranges=$,$.length===0)this._size=0;else{let Q=$[$.length-1];if(Q)this._size=Q.startCoverageIndex+(Q.endGlyphId-Q.startGlyphId+1);else this._size=0}}get size(){return this._size}get($){let Q=0,Z=this.ranges.length-1;while(Q<=Z){let J=Q+Z>>>1,q=this.ranges[J];if(!q)continue;if($>q.endGlyphId)Q=J+1;else if($<q.startGlyphId)Z=J-1;else return q.startCoverageIndex+($-q.startGlyphId)}return null}covers($){return this.get($)!==null}glyphs(){let $=[];for(let Q of this.ranges)for(let Z=Q.startGlyphId;Z<=Q.endGlyphId;Z++)$.push(Z);return $}}function Kq($){let Q=$.uint16();if(Q===1){let Z=$.uint16(),J=$.uint16Array(Z);return new p5(J)}if(Q===2){let Z=$.uint16(),J=Array(Z);for(let q=0;q<Z;q++)J[q]={startGlyphId:$.uint16(),endGlyphId:$.uint16(),startCoverageIndex:$.uint16()};return new o5(J)}throw Error(`Unknown Coverage format: ${Q}`)}function d($,Q){return Kq($.sliceFrom(Q))}function s5($){return"deltaSetOuterIndex"in $}function t1($,Q){if(Q===0)return null;return Wq($.sliceFrom(Q))}function Wq($){let Q=$.uint16(),Z=$.uint16(),J=$.uint16();if(J===32768)return{deltaSetOuterIndex:Q,deltaSetInnerIndex:Z};let q=[];if(J>=1&&J<=3){let K=Z-Q+1,W=1<<J,H=16/W,U=(1<<W)-1,X=1<<W-1,N=Math.ceil(K/H),_=0;for(let j=0;j<N;j++){let Y=$.uint16();for(let w=0;w<H&&_<K;w++,_++){let V=16-W*(w+1),z=Y>>V&U;if(z&X)z=z-(1<<W);q.push(z)}}}return{startSize:Q,endSize:Z,deltaFormat:J,deltaValues:q}}function c5($,Q){if(Q<$.startSize||Q>$.endSize)return 0;let Z=Q-$.startSize;return $.deltaValues[Z]??0}function Hq($,Q,Z){if(!$)return Q;if(s5($))return Q;return Q+c5($,Z)}var m1={RightToLeft:1,IgnoreBaseGlyphs:2,IgnoreLigatures:4,IgnoreMarks:8,UseMarkFilteringSet:16,MarkAttachmentTypeMask:65280};function r5($){return($&m1.MarkAttachmentTypeMask)>>8}function Q8($){let Q=$.uint16(),Z=[];for(let q=0;q<Q;q++)Z.push({tag:$.tag(),offset:$.offset16()});let J=[];for(let q of Z){let K=$.sliceFrom(q.offset),W=Uq(K);J.push({scriptTag:q.tag,script:W})}return{scripts:J}}function Uq($){let Q=$.offset16(),Z=$.uint16(),J=[];for(let W=0;W<Z;W++)J.push({tag:$.tag(),offset:$.offset16()});let q=null;if(Q!==0)q=a5($.sliceFrom(Q));let K=[];for(let W of J){let H=a5($.sliceFrom(W.offset));K.push({langSysTag:W.tag,langSys:H})}return{defaultLangSys:q,langSysRecords:K}}function a5($){let Q=$.offset16(),Z=$.uint16(),J=$.uint16(),q=Array.from($.uint16Array(J));return{requiredFeatureIndex:Z,featureIndices:q}}function Z8($){let Q=$.uint16(),Z=[];for(let q=0;q<Q;q++)Z.push({tag:$.tag(),offset:$.offset16()});let J=[];for(let q of Z){let K=$.sliceFrom(q.offset),W=Xq(K);J.push({featureTag:q.tag,feature:W})}return{features:J}}function Xq($){let Q=$.offset16(),Z=$.uint16(),J=Array.from($.uint16Array(Z));return{featureParamsOffset:Q,lookupListIndices:J}}function J8($,Q){for(let Z of $.scripts)if(Z.scriptTag===Q)return Z.script;return null}function t5($,Q){if(Q===null)return $.defaultLangSys;for(let Z of $.langSysRecords)if(Z.langSysTag===Q)return Z.langSys;return $.defaultLangSys}function $9($,Q){return $.features[Q]??null}function Q9($,Q){let Z=[];for(let J of Q){let q=$.sliceFrom(J);switch(q.uint16()){case 1:Z.push(Nq(q));break;case 2:Z.push(_q(q));break;case 3:Z.push(jq(q));break}}return Z}function Nq($){let Q=$.offset16(),Z=$.uint16(),J=$.uint16Array(Z),q=d($,Q),K=[];for(let W of J){if(W===0){K.push(null);continue}let H=$.sliceFrom(W),U=H.uint16(),X=H.uint16Array(U),N=[];for(let _ of X){let j=H.sliceFrom(_),Y=j.uint16(),w=j.uint16(),V=Array.from(j.uint16Array(Y-1)),z=W6(j,w);N.push({glyphCount:Y,inputSequence:V,lookupRecords:z})}K.push(N)}return{format:1,coverage:q,ruleSets:K}}function _q($){let Q=$.offset16(),Z=$.offset16(),J=$.uint16(),q=$.uint16Array(J),K=d($,Q),W=X1($,Z),H=[];for(let U of q){if(U===0){H.push(null);continue}let X=$.sliceFrom(U),N=X.uint16(),_=X.uint16Array(N),j=[];for(let Y of _){let w=X.sliceFrom(Y),V=w.uint16(),z=w.uint16(),E=Array.from(w.uint16Array(V-1)),G=W6(w,z);j.push({glyphCount:V,inputClasses:E,lookupRecords:G})}H.push(j)}return{format:2,coverage:K,classDef:W,classRuleSets:H}}function jq($){let Q=$.uint16(),Z=$.uint16(),J=$.uint16Array(Q),q=[];for(let W of J)q.push(d($,W));let K=W6($,Z);return{format:3,coverages:q,lookupRecords:K}}function Z9($,Q){let Z=[];for(let J of Q){let q=$.sliceFrom(J);switch(q.uint16()){case 1:Z.push(wq(q));break;case 2:Z.push(Yq(q));break;case 3:Z.push(Vq(q));break}}return Z}function wq($){let Q=$.offset16(),Z=$.uint16(),J=$.uint16Array(Z),q=d($,Q),K=[];for(let W of J){if(W===0){K.push(null);continue}let H=$.sliceFrom(W),U=H.uint16(),X=H.uint16Array(U),N=[];for(let _ of X){let j=H.sliceFrom(_),Y=j.uint16(),w=Array.from(j.uint16Array(Y)),V=j.uint16(),z=Array.from(j.uint16Array(V-1)),E=j.uint16(),G=Array.from(j.uint16Array(E)),B=j.uint16(),D=W6(j,B);N.push({backtrackSequence:w,inputSequence:z,lookaheadSequence:G,lookupRecords:D})}K.push(N)}return{format:1,coverage:q,chainRuleSets:K}}function Yq($){let Q=$.offset16(),Z=$.offset16(),J=$.offset16(),q=$.offset16(),K=$.uint16(),W=$.uint16Array(K),H=d($,Q),U=X1($,Z),X=X1($,J),N=X1($,q),_=[];for(let j of W){if(j===0){_.push(null);continue}let Y=$.sliceFrom(j),w=Y.uint16(),V=Y.uint16Array(w),z=[];for(let E of V){let G=Y.sliceFrom(E),B=G.uint16(),D=Array.from(G.uint16Array(B)),S=G.uint16(),L=Array.from(G.uint16Array(S-1)),h=G.uint16(),I=Array.from(G.uint16Array(h)),O=G.uint16(),g=W6(G,O);z.push({backtrackClasses:D,inputClasses:L,lookaheadClasses:I,lookupRecords:g})}_.push(z)}return{format:2,coverage:H,backtrackClassDef:U,inputClassDef:X,lookaheadClassDef:N,chainClassRuleSets:_}}function Vq($){let Q=$.uint16(),Z=$.uint16Array(Q),J=$.uint16(),q=$.uint16Array(J),K=$.uint16(),W=$.uint16Array(K),H=$.uint16(),U=W6($,H),X=[];for(let j of Z)X.push(d($,j));let N=[];for(let j of q)N.push(d($,j));let _=[];for(let j of W)_.push(d($,j));return{format:3,backtrackCoverages:X,inputCoverages:N,lookaheadCoverages:_,lookupRecords:U}}function W6($,Q){let Z=[];for(let J=0;J<Q;J++)Z.push({sequenceIndex:$.uint16(),lookupListIndex:$.uint16()});return Z}function e5($){let Q=$.uint16(),Z=$.int16(),J=$.int16(),q={xCoordinate:Z,yCoordinate:J};if(Q===2)q.anchorPoint=$.uint16();else if(Q===3)q.xDeviceOffset=$.uint16(),q.yDeviceOffset=$.uint16();return q}function R6($,Q){if(Q===0)return null;return e5($.sliceFrom(Q))}function J9($){let Q=$.uint16(),Z=[],J=[];for(let q=0;q<Q;q++)J.push({markClass:$.uint16(),anchorOffset:$.uint16()});for(let q of J){let K=e5($.sliceFrom(q.anchorOffset));Z.push({markClass:q.markClass,markAnchor:K})}return{markRecords:Z}}function q9($,Q){let Z=[];for(let J of Q){let q=$.sliceFrom(J);if(q.uint16()===1){let W=q.offset16(),H=q.uint16(),U=[];for(let _=0;_<H;_++)U.push({entryOffset:q.uint16(),exitOffset:q.uint16()});let X=d(q,W),N=[];for(let _ of U)N.push({entryAnchor:R6(q,_.entryOffset),exitAnchor:R6(q,_.exitOffset)});Z.push({coverage:X,entryExitRecords:N})}}return Z}function K9($,Q){let Z=[];for(let J of Q){let q=$.sliceFrom(J);if(q.uint16()===1){let W=q.offset16(),H=q.offset16(),U=q.uint16(),X=q.offset16(),N=q.offset16(),_=d(q,W),j=d(q,H),Y=J9(q.sliceFrom(X)),w=q.sliceFrom(N),V=w.uint16(),z=[],E=[];for(let G=0;G<V;G++){let B=[];for(let D=0;D<U;D++)B.push(w.uint16());E.push(B)}for(let G of E){let B=[];for(let D of G)B.push(R6(w,D));z.push({baseAnchors:B})}Z.push({markCoverage:_,baseCoverage:j,markClassCount:U,markArray:Y,baseArray:z})}}return Z}function W9($,Q){let Z=[];for(let J of Q){let q=$.sliceFrom(J);if(q.uint16()===1){let W=q.offset16(),H=q.offset16(),U=q.uint16(),X=q.offset16(),N=q.offset16(),_=d(q,W),j=d(q,H),Y=J9(q.sliceFrom(X)),w=q.sliceFrom(N),V=w.uint16(),z=w.uint16Array(V),E=[];for(let G of z){let B=w.sliceFrom(G),D=B.uint16(),S=[],L=[];for(let h=0;h<D;h++){let I=[];for(let O=0;O<U;O++)I.push(B.uint16());L.push(I)}for(let h of L){let I=[];for(let O of h)I.push(R6(B,O));S.push({ligatureAnchors:I})}E.push({componentRecords:S})}Z.push({markCoverage:_,ligatureCoverage:j,markClassCount:U,markArray:Y,ligatureArray:E})}}return Z}function H9($,Q){let Z=[];for(let J of Q){let q=$.sliceFrom(J);if(q.uint16()===1){let W=q.offset16(),H=q.offset16(),U=q.uint16(),X=q.offset16(),N=q.offset16(),_=d(q,W),j=d(q,H),Y=J9(q.sliceFrom(X)),w=q.sliceFrom(N),V=w.uint16(),z=[],E=[];for(let G=0;G<V;G++){let B=[];for(let D=0;D<U;D++)B.push(w.uint16());E.push(B)}for(let G of E){let B=[];for(let D of G)B.push(R6(w,D));z.push({mark2Anchors:B})}Z.push({mark1Coverage:_,mark2Coverage:j,markClassCount:U,mark1Array:Y,mark2Array:z})}}return Z}var n1={XPlacement:1,YPlacement:2,XAdvance:4,YAdvance:8,XPlaDevice:16,YPlaDevice:32,XAdvDevice:64,YAdvDevice:128};function $7($){let Q=$.uint16(),Z=$.uint16(),J=$.offset16(),q=$.offset16(),K=$.offset16();if(Q===1&&Z>=1)$.offset32();let W=Q8($.sliceFrom(J)),H=Z8($.sliceFrom(q)),U=$.sliceFrom(K),X=U.uint16(),N=U.uint16Array(X),_=[];for(let j of N){let Y=U.sliceFrom(j),w=zq(Y);if(w)_.push(w)}return{version:{major:Q,minor:Z},scriptList:W,featureList:H,lookups:_}}function zq($){let Q=$.uint16(),Z=$.uint16(),J=$.uint16(),q=Array.from($.uint16Array(J)),K;if(Z&m1.UseMarkFilteringSet)K=$.uint16();let W={flag:Z,markFilteringSet:K};switch(Q){case 1:return{type:1,...W,subtables:Q7($,q)};case 2:return{type:2,...W,subtables:Z7($,q)};case 3:return{type:3,...W,subtables:q9($,q)};case 4:return{type:4,...W,subtables:K9($,q)};case 5:return{type:5,...W,subtables:W9($,q)};case 6:return{type:6,...W,subtables:H9($,q)};case 7:return{type:7,...W,subtables:Q9($,q)};case 8:return{type:8,...W,subtables:Z9($,q)};case 9:return Aq($,q,W);default:return null}}function H6($,Q,Z){let J={};if(Q&n1.XPlacement)J.xPlacement=$.int16();if(Q&n1.YPlacement)J.yPlacement=$.int16();if(Q&n1.XAdvance)J.xAdvance=$.int16();if(Q&n1.YAdvance)J.yAdvance=$.int16();let q=Z??$;if(Q&n1.XPlaDevice){let K=$.uint16();if(K!==0)J.xPlaDevice=t1(q,K)??void 0}if(Q&n1.YPlaDevice){let K=$.uint16();if(K!==0)J.yPlaDevice=t1(q,K)??void 0}if(Q&n1.XAdvDevice){let K=$.uint16();if(K!==0)J.xAdvDevice=t1(q,K)??void 0}if(Q&n1.YAdvDevice){let K=$.uint16();if(K!==0)J.yAdvDevice=t1(q,K)??void 0}return J}function Q7($,Q){let Z=[];for(let J of Q){let q=$.sliceFrom(J),K=$.sliceFrom(J),W=K.uint16();if(W===1){let H=K.offset16(),U=K.uint16(),X=H6(K,U,q),N=d(q,H);Z.push({format:1,coverage:N,valueFormat:U,value:X})}else if(W===2){let H=K.offset16(),U=K.uint16(),X=K.uint16(),N=[];for(let j=0;j<X;j++)N.push(H6(K,U,q));let _=d(q,H);Z.push({format:2,coverage:_,valueFormat:U,values:N})}}return Z}function Z7($,Q){let Z=[];for(let J of Q){let q=$.sliceFrom(J),K=$.sliceFrom(J),W=K.uint16();if(W===1)Z.push(Eq(K,q));else if(W===2)Z.push(Gq(K,q))}return Z}function Eq($,Q){let Z=$.offset16(),J=$.uint16(),q=$.uint16(),K=$.uint16(),W=$.uint16Array(K),H=d(Q,Z),U=[];for(let X of W){let N=Q.sliceFrom(X),_=Q.sliceFrom(X),j=_.uint16(),Y=[];for(let w=0;w<j;w++){let V=_.uint16(),z=H6(_,J,N),E=H6(_,q,N);Y.push({secondGlyph:V,value1:z,value2:E})}U.push({pairValueRecords:Y})}return{format:1,coverage:H,valueFormat1:J,valueFormat2:q,pairSets:U}}function Gq($,Q){let Z=$.offset16(),J=$.uint16(),q=$.uint16(),K=$.offset16(),W=$.offset16(),H=$.uint16(),U=$.uint16(),X=d(Q,Z),N=X1(Q,K),_=X1(Q,W),j=[];for(let Y=0;Y<H;Y++){let w=[];for(let V=0;V<U;V++){let z=H6($,J,Q),E=H6($,q,Q);w.push({value1:z,value2:E})}j.push({class2Records:w})}return{format:2,coverage:X,valueFormat1:J,valueFormat2:q,classDef1:N,classDef2:_,class1Count:H,class2Count:U,class1Records:j}}function Aq($,Q,Z){if(Q.length===0)return null;let J=[];for(let K of Q){let W=$.sliceFrom(K);if(W.uint16()!==1)continue;let U=W.uint16(),X=W.uint32();J.push({type:U,reader:W.sliceFrom(X)})}if(J.length===0)return null;switch(J[0]?.type){case 1:{let K=[];for(let W of J)K.push(...Q7(W.reader,[0]));return{type:1,...Z,subtables:K}}case 2:{let K=[];for(let W of J)K.push(...Z7(W.reader,[0]));return{type:2,...Z,subtables:K}}case 3:{let K=[];for(let W of J)K.push(...q9(W.reader,[0]));return{type:3,...Z,subtables:K}}case 4:{let K=[];for(let W of J)K.push(...K9(W.reader,[0]));return{type:4,...Z,subtables:K}}case 5:{let K=[];for(let W of J)K.push(...W9(W.reader,[0]));return{type:5,...Z,subtables:K}}case 6:{let K=[];for(let W of J)K.push(...H9(W.reader,[0]));return{type:6,...Z,subtables:K}}case 7:{let K=[];for(let W of J)K.push(...Q9(W.reader,[0]));return{type:7,...Z,subtables:K}}case 8:{let K=[];for(let W of J)K.push(...Z9(W.reader,[0]));return{type:8,...Z,subtables:K}}default:return null}}function J7($,Q,Z){for(let J of $.subtables){let q=J.coverage.get(Q);if(q===null)continue;if(J.format===1){let K=J.pairSets[q];if(!K)continue;for(let W of K.pairValueRecords)if(W.secondGlyph===Z)return{xAdvance1:W.value1.xAdvance??0,xAdvance2:W.value2.xAdvance??0}}else if(J.format===2){let K=J.classDef1.get(Q),W=J.classDef2.get(Z),H=J.class1Records[K];if(!H)continue;let U=H.class2Records[W];if(!U)continue;return{xAdvance1:U.value1.xAdvance??0,xAdvance2:U.value2.xAdvance??0}}}return null}function U9($,Q){let Z=[];for(let J of Q){let q=$.sliceFrom(J);switch(q.uint16()){case 1:Z.push(Bq(q));break;case 2:Z.push(Dq(q));break;case 3:Z.push(Mq(q));break}}return Z}function Bq($){let Q=$.offset16(),Z=$.uint16(),J=$.uint16Array(Z),q=d($,Q),K=[];for(let W of J){if(W===0){K.push(null);continue}let H=$.sliceFrom(W),U=H.uint16(),X=H.uint16Array(U),N=[];for(let _ of X){let j=H.sliceFrom(_),Y=j.uint16(),w=j.uint16(),V=Array.from(j.uint16Array(Y-1)),z=U6(j,w);N.push({glyphCount:Y,inputSequence:V,lookupRecords:z})}K.push(N)}return{format:1,coverage:q,ruleSets:K}}function Dq($){let Q=$.offset16(),Z=$.offset16(),J=$.uint16(),q=$.uint16Array(J),K=d($,Q),W=X1($,Z),H=[];for(let U of q){if(U===0){H.push(null);continue}let X=$.sliceFrom(U),N=X.uint16(),_=X.uint16Array(N),j=[];for(let Y of _){let w=X.sliceFrom(Y),V=w.uint16(),z=w.uint16(),E=Array.from(w.uint16Array(V-1)),G=U6(w,z);j.push({glyphCount:V,inputClasses:E,lookupRecords:G})}H.push(j)}return{format:2,coverage:K,classDef:W,classRuleSets:H}}function Mq($){let Q=$.uint16(),Z=$.uint16(),J=$.uint16Array(Q),q=[];for(let W of J)q.push(d($,W));let K=U6($,Z);return{format:3,coverages:q,lookupRecords:K}}function X9($,Q){let Z=[];for(let J of Q){let q=$.sliceFrom(J);switch(q.uint16()){case 1:Z.push(Fq(q));break;case 2:Z.push(Lq(q));break;case 3:Z.push(Rq(q));break}}return Z}function Fq($){let Q=$.offset16(),Z=$.uint16(),J=$.uint16Array(Z),q=d($,Q),K=[];for(let W of J){if(W===0){K.push(null);continue}let H=$.sliceFrom(W),U=H.uint16(),X=H.uint16Array(U),N=[];for(let _ of X){let j=H.sliceFrom(_),Y=j.uint16(),w=Array.from(j.uint16Array(Y)),V=j.uint16(),z=Array.from(j.uint16Array(V-1)),E=j.uint16(),G=Array.from(j.uint16Array(E)),B=j.uint16(),D=U6(j,B);N.push({backtrackSequence:w,inputSequence:z,lookaheadSequence:G,lookupRecords:D})}K.push(N)}return{format:1,coverage:q,chainRuleSets:K}}function Lq($){let Q=$.offset16(),Z=$.offset16(),J=$.offset16(),q=$.offset16(),K=$.uint16(),W=$.uint16Array(K),H=d($,Q),U=X1($,Z),X=X1($,J),N=X1($,q),_=[];for(let j of W){if(j===0){_.push(null);continue}let Y=$.sliceFrom(j),w=Y.uint16(),V=Y.uint16Array(w),z=[];for(let E of V){let G=Y.sliceFrom(E),B=G.uint16(),D=Array.from(G.uint16Array(B)),S=G.uint16(),L=Array.from(G.uint16Array(S-1)),h=G.uint16(),I=Array.from(G.uint16Array(h)),O=G.uint16(),g=U6(G,O);z.push({backtrackClasses:D,inputClasses:L,lookaheadClasses:I,lookupRecords:g})}_.push(z)}return{format:2,coverage:H,backtrackClassDef:U,inputClassDef:X,lookaheadClassDef:N,chainClassRuleSets:_}}function Rq($){let Q=$.uint16(),Z=$.uint16Array(Q),J=$.uint16(),q=$.uint16Array(J),K=$.uint16(),W=$.uint16Array(K),H=$.uint16(),U=U6($,H),X=[];for(let j of Z)X.push(d($,j));let N=[];for(let j of q)N.push(d($,j));let _=[];for(let j of W)_.push(d($,j));return{format:3,backtrackCoverages:X,inputCoverages:N,lookaheadCoverages:_,lookupRecords:U}}function U6($,Q){let Z=[];for(let J=0;J<Q;J++)Z.push({sequenceIndex:$.uint16(),lookupListIndex:$.uint16()});return Z}function q7($){let Q=$.uint16(),Z=$.uint16(),J=$.offset16(),q=$.offset16(),K=$.offset16();if(Q===1&&Z>=1)$.offset32();let W=Q8($.sliceFrom(J)),H=Z8($.sliceFrom(q)),U=$.sliceFrom(K),X=U.uint16(),N=U.uint16Array(X),_=[];for(let j of N){let Y=U.sliceFrom(j),w=Pq(Y,U,j);if(w)_.push(w)}return{version:{major:Q,minor:Z},scriptList:W,featureList:H,lookups:_}}function Pq($,Q,Z){let J=$.uint16(),q=$.uint16(),K=$.uint16(),W=Array.from($.uint16Array(K)),H;if(q&m1.UseMarkFilteringSet)H=$.uint16();let U={flag:q,markFilteringSet:H};switch(J){case 1:return{type:1,...U,subtables:K7($,W)};case 2:return{type:2,...U,subtables:W7($,W)};case 3:return{type:3,...U,subtables:H7($,W)};case 4:return{type:4,...U,subtables:U7($,W)};case 5:return{type:5,...U,subtables:U9($,W)};case 6:return{type:6,...U,subtables:X9($,W)};case 7:return Tq($,W,U);case 8:return{type:8,...U,subtables:X7($,W)};default:return null}}function K7($,Q){let Z=[];for(let J of Q){let q=$.sliceFrom(J),K=q.uint16();if(K===1){let W=q.offset16(),H=q.int16(),U=d(q,W);Z.push({format:1,coverage:U,deltaGlyphId:H})}else if(K===2){let W=q.offset16(),H=q.uint16(),U=Array.from(q.uint16Array(H)),X=d(q,W);Z.push({format:2,coverage:X,substituteGlyphIds:U})}}return Z}function W7($,Q){let Z=[];for(let J of Q){let q=$.sliceFrom(J);if(q.uint16()===1){let W=q.offset16(),H=q.uint16(),U=q.uint16Array(H),X=d(q,W),N=[];for(let _ of U){let j=q.sliceFrom(_),Y=j.uint16();N.push(Array.from(j.uint16Array(Y)))}Z.push({coverage:X,sequences:N})}}return Z}function H7($,Q){let Z=[];for(let J of Q){let q=$.sliceFrom(J);if(q.uint16()===1){let W=q.offset16(),H=q.uint16(),U=q.uint16Array(H),X=d(q,W),N=[];for(let _ of U){let j=q.sliceFrom(_),Y=j.uint16();N.push(Array.from(j.uint16Array(Y)))}Z.push({coverage:X,alternateSets:N})}}return Z}function U7($,Q){let Z=[];for(let J of Q){let q=$.sliceFrom(J);if(q.uint16()===1){let W=q.offset16(),H=q.uint16(),U=q.uint16Array(H),X=d(q,W),N=[];for(let _ of U){let j=q.sliceFrom(_),Y=j.uint16(),w=j.uint16Array(Y),V=[];for(let z of w){let E=j.sliceFrom(z),G=E.uint16(),B=E.uint16(),D=Array.from(E.uint16Array(B-1));V.push({ligatureGlyph:G,componentGlyphIds:D})}N.push({ligatures:V})}Z.push({coverage:X,ligatureSets:N})}}return Z}function X7($,Q){let Z=[];for(let J of Q){let q=$.sliceFrom(J);if(q.uint16()===1){let W=q.offset16(),H=q.uint16(),U=q.uint16Array(H),X=q.uint16(),N=q.uint16Array(X),_=q.uint16(),j=Array.from(q.uint16Array(_)),Y=d(q,W),w=[];for(let z of U)w.push(d(q,z));let V=[];for(let z of N)V.push(d(q,z));Z.push({coverage:Y,backtrackCoverages:w,lookaheadCoverages:V,substituteGlyphIds:j})}}return Z}function Tq($,Q,Z){if(Q.length===0)return null;let J=[];for(let W of Q){let H=$.sliceFrom(W);if(H.uint16()!==1)continue;let X=H.uint16(),N=H.uint32();J.push({type:X,reader:H.sliceFrom(N)})}if(J.length===0)return null;let q=J[0]?.type,K=J.map((W,H)=>0);switch(q){case 1:{let W=[];for(let H of J)W.push(...K7(H.reader,[0]));return{type:1,...Z,subtables:W}}case 2:{let W=[];for(let H of J)W.push(...W7(H.reader,[0]));return{type:2,...Z,subtables:W}}case 3:{let W=[];for(let H of J)W.push(...H7(H.reader,[0]));return{type:3,...Z,subtables:W}}case 4:{let W=[];for(let H of J)W.push(...U7(H.reader,[0]));return{type:4,...Z,subtables:W}}case 5:{let W=[];for(let H of J)W.push(...U9(H.reader,[0]));return{type:5,...Z,subtables:W}}case 6:{let W=[];for(let H of J)W.push(...X9(H.reader,[0]));return{type:6,...Z,subtables:W}}case 8:{let W=[];for(let H of J)W.push(...X7(H.reader,[0]));return{type:8,...Z,subtables:W}}default:return null}}function N9($,Q){for(let Z of $.subtables){let J=Z.coverage.get(Q);if(J===null)continue;if(Z.format===1&&Z.deltaGlyphId!==void 0)return Q+Z.deltaGlyphId&65535;if(Z.format===2&&Z.substituteGlyphIds)return Z.substituteGlyphIds[J]??null}return null}function N7($,Q,Z){let J=Q[Z];if(J===void 0)return null;for(let q of $.subtables){let K=q.coverage.get(J);if(K===null)continue;let W=q.ligatureSets[K];if(!W)continue;for(let H of W.ligatures){let U=H.componentGlyphIds.length;if(Z+1+U>Q.length)continue;let X=!0;for(let N=0;N<U;N++)if(Q[Z+1+N]!==H.componentGlyphIds[N]){X=!1;break}if(X)return{ligatureGlyph:H.ligatureGlyph,consumed:1+U}}}return null}function _7($){let Q=$.uint16(),Z=$.uint16(),J=$.fixed(),q=$.uint32(),K=$.uint32();if(K!==1594834165)throw Error(`Invalid head table magic number: 0x${K.toString(16)}`);let W=$.uint16(),H=$.uint16(),U=$.longDateTime(),X=$.longDateTime(),N=$.fword(),_=$.fword(),j=$.fword(),Y=$.fword(),w=$.uint16(),V=$.uint16(),z=$.int16(),E=$.int16(),G=$.int16();return{majorVersion:Q,minorVersion:Z,fontRevision:J,checksumAdjustment:q,magicNumber:K,flags:W,unitsPerEm:H,created:U,modified:X,xMin:N,yMin:_,xMax:j,yMax:Y,macStyle:w,lowestRecPPEM:V,fontDirectionHint:z,indexToLocFormat:E,glyphDataFormat:G}}function j7($){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 w7($){return{instructions:$.bytes($.remaining)}}function Y7($){return{instructions:$.bytes($.remaining)}}function V7($){let Q=Math.floor($.remaining/2),Z=new Int16Array(Q);for(let J=0;J<Q;J++)Z[J]=$.int16();return{values:Z}}function z7($,Q,Z){let J=Array(Q);for(let W=0;W<Q;W++)J[W]={advanceWidth:$.ufword(),lsb:$.fword()};let q=Z-Q,K=Array(q);for(let W=0;W<q;W++)K[W]=$.fword();return{hMetrics:J,leftSideBearings:K}}function E7($,Q){if(Q<$.hMetrics.length)return $.hMetrics[Q]?.advanceWidth;return $.hMetrics[$.hMetrics.length-1]?.advanceWidth}function G7($,Q){if(Q<$.hMetrics.length)return $.hMetrics[Q]?.lsb;let Z=Q-$.hMetrics.length;return $.leftSideBearings[Z]??0}function i1($,Q){if(Q===0)return null;let Z=$.sliceFrom(Q),J=Z.uint16(),q=[];for(let K=0;K<J;K++)q.push(Z.uint16());return{lookupIndices:q}}function A7($,Q){if(Q===0)return null;let Z=$.sliceFrom(Q),J=Z.uint16(),q=[];for(let K=0;K<J;K++)q.push(Z.uint16());return{lookupIndices:q}}function Oq($,Q){let Z=$.sliceFrom(Q),J=Z.uint16(),q=Z.uint16(),K=Z.uint16(),W=Z.uint16(),H=Z.uint16(),U=Z.uint16(),X=Z.uint16(),N=Z.uint16(),_=Z.uint16(),j=Z.uint16();return{shrinkageEnableGsub:i1($,Q+J),shrinkageDisableGsub:i1($,Q+q),shrinkageEnableGpos:i1($,Q+K),shrinkageDisableGpos:i1($,Q+W),shrinkageJstfMax:A7($,Q+H),extensionEnableGsub:i1($,Q+U),extensionDisableGsub:i1($,Q+X),extensionEnableGpos:i1($,Q+N),extensionDisableGpos:i1($,Q+_),extensionJstfMax:A7($,Q+j)}}function B7($,Q){let Z=$.sliceFrom(Q),J=Z.uint16(),q=[];for(let W=0;W<J;W++)q.push(Z.uint16());let K=[];for(let W of q)K.push(Oq($,Q+W));return{priorities:K}}function Iq($,Q){let Z=$.sliceFrom(Q),J=Z.uint16(),q=Z.uint16(),K=Z.uint16(),W=[];for(let N=0;N<K;N++){let _=Z.uint32(),j=Z.uint16();W.push({tag:_,offset:j})}let H=[];if(J!==0){let N=$.sliceFrom(Q+J),_=N.uint16();for(let j=0;j<_;j++)H.push(N.uint16())}let U=q!==0?B7($,Q+q):null,X=new Map;for(let{tag:N,offset:_}of W)X.set(N,B7($,Q+_));return{extenderGlyphs:H,defaultLangSys:U,langSysRecords:X}}function D7($){let Q=$.uint16(),Z=$.uint16(),J=$.uint16(),q=[];for(let W=0;W<J;W++){let H=$.uint32(),U=$.uint16();q.push({tag:H,offset:U})}let K=[];for(let{tag:W,offset:H}of q){let U=Iq($,H);K.push({scriptTag:W,...U})}return{majorVersion:Q,minorVersion:Z,scripts:K}}function M7($,Q){return $.scripts.find((J)=>J.scriptTag===Q)?.extenderGlyphs??[]}function F7($,Q,Z){let J=$.scripts.find((q)=>q.scriptTag===Q);if(!J)return[];if(Z!==void 0){let q=J.langSysRecords.get(Z);if(q)return q.priorities}return J.defaultLangSys?.priorities??[]}function L7($){return{enableGsub:$.shrinkageEnableGsub?.lookupIndices??[],disableGsub:$.shrinkageDisableGsub?.lookupIndices??[],enableGpos:$.shrinkageEnableGpos?.lookupIndices??[],disableGpos:$.shrinkageDisableGpos?.lookupIndices??[],maxLookups:$.shrinkageJstfMax?.lookupIndices??[]}}function R7($){return{enableGsub:$.extensionEnableGsub?.lookupIndices??[],disableGsub:$.extensionDisableGsub?.lookupIndices??[],enableGpos:$.extensionEnableGpos?.lookupIndices??[],disableGpos:$.extensionDisableGpos?.lookupIndices??[],maxLookups:$.extensionJstfMax?.lookupIndices??[]}}function P7($){let Q=$.uint16(),Z=[];if(Q===0){let J=$.uint16();for(let q=0;q<J;q++){let K=vq($);if(K)Z.push(K)}}else if(Q===1){$.skip(2);let J=$.uint32();for(let q=0;q<J;q++){let K=kq($);if(K)Z.push(K)}}return{version:Q,subtables:Z}}function vq($){let Q=$.uint16(),Z=$.uint16(),J=$.uint16(),q={horizontal:(J&1)!==0,minimum:(J&2)!==0,crossStream:(J&4)!==0,override:(J&8)!==0},K=J>>8&255;if(K===0)return T7($,q);else if(K===2)return O7($,q,Z-6);return $.skip(Z-6),null}function kq($){let Q=$.uint32(),Z=$.uint16(),J=$.uint16(),q={horizontal:(Z&32768)===0,minimum:!1,crossStream:(Z&16384)!==0,override:(Z&8192)!==0},K=Z&255;if(K===0)return T7($,q);else if(K===2)return O7($,q,Q-8);return $.skip(Q-8),null}function T7($,Q){let Z=$.uint16();$.skip(6);let J=new Map;for(let q=0;q<Z;q++){let K=$.uint16(),W=$.uint16(),H=$.int16(),U=K<<16|W;J.set(U,H)}return{format:0,coverage:Q,pairs:J}}function O7($,Q,Z){let J=$.offset,q=$.uint16(),K=$.uint16(),W=$.uint16(),H=$.uint16(),U=new Map;$.seek(J+K);let X=$.uint16(),N=$.uint16();for(let E=0;E<N;E++){let G=$.uint16();if(G!==0)U.set(X+E,G)}let _=new Map;$.seek(J+W);let j=$.uint16(),Y=$.uint16();for(let E=0;E<Y;E++){let G=$.uint16();if(G!==0)_.set(j+E,G)}$.seek(J+H);let w=q>0?Math.floor(Z/q):0,V=q/2,z=[];for(let E=0;E<w;E++){let G=[];for(let B=0;B<V;B++)G.push($.int16());z.push(G)}return{format:2,coverage:Q,rowWidth:q,leftClassTable:U,rightClassTable:_,kerningValues:z}}function _9($,Q,Z){let J=0;for(let q of $.subtables){if(!q.coverage.horizontal)continue;if(q.format===0){let K=Q<<16|Z,W=q.pairs.get(K);if(W!==void 0)if(q.coverage.override)J=W;else J+=W}else if(q.format===2){let K=q.leftClassTable.get(Q)??0,W=q.rightClassTable.get(Z)??0;if(K>0&&W>0){let H=Math.floor(K/2),U=Math.floor(W/2),X=q.kerningValues[H];if(X){let N=X[U];if(N!==void 0)if(q.coverage.override)J=N;else J+=N}}}}return J}function v7($){let Q=$.uint16();$.skip(2);let Z=$.uint32(),J=[];for(let q=0;q<Z;q++){let K=Cq($);if(K)J.push(K)}return{version:Q,nTables:Z,subtables:J}}function Cq($){let Q=$.uint32(),Z=$.uint32(),J=$.uint16();$.skip(2);let q=Z&255,K={vertical:(Z&2147483648)!==0,crossStream:(Z&1073741824)!==0,variation:(Z&536870912)!==0},W={length:Q,coverage:K,tupleCount:J},H=$.offset+Q-12,U=null;switch(q){case 0:U=Sq($,W);break;case 1:U=hq($,W);break;case 2:U=mq($,W);break;case 6:U=yq($,W);break}return $.seek(H),U}function Sq($,Q){let Z=$.uint32();$.skip(12);let J=[];for(let q=0;q<Z;q++)J.push({left:$.uint16(),right:$.uint16(),value:$.int16()}),$.skip(2);return{...Q,format:0,nPairs:Z,pairs:J}}function hq($,Q){let Z={nClasses:$.uint32(),classTableOffset:$.offset32(),stateArrayOffset:$.offset32(),entryTableOffset:$.offset32(),valueTableOffset:$.offset32()};return{...Q,format:1,stateHeader:Z}}function mq($,Q){let Z=$.uint16();$.skip(2);let J=$.offset32(),q=$.offset32(),K=$.offset32(),W=I7($.sliceFrom(J)),H=I7($.sliceFrom(q)),U=$.sliceFrom(K),X=W.nGlyphs>0?Math.max(...Array.from(W.classes))+1:0,N=Z/2,_=new Int16Array(X*N);for(let[j,Y]of _.entries())_[j]=U.int16();return{...Q,format:2,rowWidth:Z,leftClassTable:W,rightClassTable:H,kerningArray:_}}function I7($){let Q=$.uint16(),Z=$.uint16(),J=new Uint8Array(Z);for(let q=0;q<Z;q++)J[q]=$.uint8();return{firstGlyph:Q,nGlyphs:Z,classes:J}}function yq($,Q){let Z=$.uint32(),J=$.uint16(),q=$.uint16(),K=$.offset32(),W=$.offset32(),H=$.offset32(),U=$.offset32();return{...Q,format:6,flags:Z,rowCount:J,columnCount:q,rowIndexTableOffset:K,columnIndexTableOffset:W,kerningArrayOffset:H,kerningVectorOffset:U}}function bq($,Q,Z){for(let J of $.subtables){if(J.coverage.vertical)continue;switch(J.format){case 0:{let q=J.pairs,K=0,W=q.length-1;while(K<=W){let H=K+W>>1,U=q[H];if(!U)break;let X=U.left<<16|U.right,N=Q<<16|Z;if(X===N)return U.value;else if(X<N)K=H+1;else W=H-1}break}case 2:{let{leftClassTable:q,rightClassTable:K}=J;if(Q<q.firstGlyph||Q>=q.firstGlyph+q.nGlyphs)continue;if(Z<K.firstGlyph||Z>=K.firstGlyph+K.nGlyphs)continue;let W=q.classes[Q-q.firstGlyph],H=K.classes[Z-K.firstGlyph];if(W===void 0||H===void 0)continue;let U=J.rowWidth/2,X=W*U+H;if(X<J.kerningArray.length){let N=J.kerningArray[X];if(N!==void 0&&N!==0)return N}break}}}return 0}function f($,Q){let Z=$.int16(),J=$.uint16();return{value:Z,device:t1(Q,J)}}function gq($){let Q=$,Z=$.int16(),J=$.int16(),q=$.uint16(),K=$.uint16();return{scriptPercentScaleDown:Z,scriptScriptPercentScaleDown:J,delimitedSubFormulaMinHeight:q,displayOperatorMinHeight:K,mathLeading:f($,Q),axisHeight:f($,Q),accentBaseHeight:f($,Q),flattenedAccentBaseHeight:f($,Q),subscriptShiftDown:f($,Q),subscriptTopMax:f($,Q),subscriptBaselineDropMin:f($,Q),superscriptShiftUp:f($,Q),superscriptShiftUpCramped:f($,Q),superscriptBottomMin:f($,Q),superscriptBaselineDropMax:f($,Q),subSuperscriptGapMin:f($,Q),superscriptBottomMaxWithSubscript:f($,Q),spaceAfterScript:f($,Q),upperLimitGapMin:f($,Q),upperLimitBaselineRiseMin:f($,Q),lowerLimitGapMin:f($,Q),lowerLimitBaselineDropMin:f($,Q),stackTopShiftUp:f($,Q),stackTopDisplayStyleShiftUp:f($,Q),stackBottomShiftDown:f($,Q),stackBottomDisplayStyleShiftDown:f($,Q),stackGapMin:f($,Q),stackDisplayStyleGapMin:f($,Q),stretchStackTopShiftUp:f($,Q),stretchStackBottomShiftDown:f($,Q),stretchStackGapAboveMin:f($,Q),stretchStackGapBelowMin:f($,Q),fractionNumeratorShiftUp:f($,Q),fractionNumeratorDisplayStyleShiftUp:f($,Q),fractionDenominatorShiftDown:f($,Q),fractionDenominatorDisplayStyleShiftDown:f($,Q),fractionNumeratorGapMin:f($,Q),fractionNumDisplayStyleGapMin:f($,Q),fractionRuleThickness:f($,Q),fractionDenominatorGapMin:f($,Q),fractionDenomDisplayStyleGapMin:f($,Q),skewedFractionHorizontalGap:f($,Q),skewedFractionVerticalGap:f($,Q),overbarVerticalGap:f($,Q),overbarRuleThickness:f($,Q),overbarExtraAscender:f($,Q),underbarVerticalGap:f($,Q),underbarRuleThickness:f($,Q),underbarExtraDescender:f($,Q),radicalVerticalGap:f($,Q),radicalDisplayStyleVerticalGap:f($,Q),radicalRuleThickness:f($,Q),radicalExtraAscender:f($,Q),radicalKernBeforeDegree:f($,Q),radicalKernAfterDegree:f($,Q),radicalDegreeBottomRaisePercent:$.int16()}}function xq($){let Q=$.uint16(),Z=$.uint16(),J=[];for(let K=0;K<Z;K++)J.push(f($,$));return{coverage:d($,Q),values:J}}function uq($){let Q=$.uint16(),Z=$.uint16(),J=[];for(let K=0;K<Z;K++)J.push(f($,$));return{coverage:d($,Q),values:J}}function q8($,Q){let Z=$.sliceFrom(Q),J=Z.uint16(),q=[];for(let W=0;W<J;W++)q.push(f(Z,Z));let K=[];for(let W=0;W<J+1;W++)K.push(f(Z,Z));return{correctionHeights:q,kernValues:K}}function fq($){let Q=$.uint16(),Z=$.uint16(),J=[];for(let W=0;W<Z;W++)J.push({topRightOffset:$.uint16(),topLeftOffset:$.uint16(),bottomRightOffset:$.uint16(),bottomLeftOffset:$.uint16()});let q=d($,Q),K=J.map((W)=>({topRight:W.topRightOffset!==0?q8($,W.topRightOffset):null,topLeft:W.topLeftOffset!==0?q8($,W.topLeftOffset):null,bottomRight:W.bottomRightOffset!==0?q8($,W.bottomRightOffset):null,bottomLeft:W.bottomLeftOffset!==0?q8($,W.bottomLeftOffset):null}));return{coverage:q,kernInfo:K}}function lq($){let Q=$.uint16(),Z=$.uint16(),J=$.uint16(),q=$.uint16(),K=null;if(Q!==0)K=xq($.sliceFrom(Q));let W=null;if(Z!==0)W=uq($.sliceFrom(Z));let H=null;if(J!==0)H={coverage:d($,J)};let U=null;if(q!==0)U=fq($.sliceFrom(q));return{italicsCorrection:K,topAccentAttachment:W,extendedShapeCoverage:H,kernInfo:U}}function dq($){let Q=f($,$),Z=$.uint16(),J=[];for(let q=0;q<Z;q++)J.push({glyphId:$.uint16(),startConnectorLength:$.uint16(),endConnectorLength:$.uint16(),fullAdvance:$.uint16(),partFlags:$.uint16()});return{italicsCorrection:Q,parts:J}}function k7($){let Q=$.uint16(),Z=$.uint16(),J=[];for(let K=0;K<Z;K++)J.push({variantGlyph:$.uint16(),advanceMeasurement:$.uint16()});let q=null;if(Q!==0)q=dq($.sliceFrom(Q));return{glyphAssembly:q,variants:J}}function nq($){let Q=$.uint16(),Z=$.uint16(),J=$.uint16(),q=$.uint16(),K=$.uint16(),W=[];for(let j=0;j<q;j++)W.push($.uint16());let H=[];for(let j=0;j<K;j++)H.push($.uint16());let U=Z!==0?d($,Z):null,X=J!==0?d($,J):null,N=W.map((j)=>k7($.sliceFrom(j))),_=H.map((j)=>k7($.sliceFrom(j)));return{minConnectorOverlap:Q,vertGlyphCoverage:U,horizGlyphCoverage:X,vertGlyphConstruction:N,horizGlyphConstruction:_}}function C7($){let Q=$.uint16(),Z=$.uint16(),J=$.uint16(),q=$.uint16(),K=$.uint16(),W=null;if(J!==0)W=gq($.sliceFrom(J));let H=null;if(q!==0)H=lq($.sliceFrom(q));let U=null;if(K!==0)U=nq($.sliceFrom(K));return{majorVersion:Q,minorVersion:Z,constants:W,glyphInfo:H,variants:U}}function S7($){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 j9;((K)=>{K[K.Rearrangement=0]="Rearrangement";K[K.Contextual=1]="Contextual";K[K.Ligature=2]="Ligature";K[K.NonContextual=4]="NonContextual";K[K.Insertion=5]="Insertion"})(j9||={});function h7($){let Q=$.uint16();if($.skip(2),Q<2)return{version:Q,chains:[]};let Z=$.uint32(),J=[];for(let q=0;q<Z;q++){let K=iq($);J.push(K)}return{version:Q,chains:J}}function iq($){let Q=$.uint32(),Z=$.uint32(),J=$.uint32(),q=$.uint32(),K=[];for(let H=0;H<J;H++)K.push({featureType:$.uint16(),featureSetting:$.uint16(),enableFlags:$.uint32(),disableFlags:$.uint32()});let W=[];for(let H=0;H<q;H++){let U=pq($);if(U)W.push(U)}return{defaultFlags:Q,features:K,subtables:W}}function pq($){let Q=$.uint32(),Z=$.uint32(),J=$.uint32(),q=Z&255,K={vertical:(Z&2147483648)!==0,descending:(Z&1073741824)!==0,logical:(Z&268435456)!==0},H=$.offset+Q-12,U=null;switch(q){case 0:U=aq($,K,J);break;case 1:U=sq($,K,J);break;case 2:U=cq($,K,J);break;case 4:U=oq($,K,J);break;case 5:U=rq($,K,J);break}return $.seek(H),U}function oq($,Q,Z){let J=tq($);return{type:4,coverage:Q,subFeatureFlags:Z,lookupTable:J}}function sq($,Q,Z){let J=$.offset,q=$.uint32(),K=$.offset32(),W=$.offset32(),H=$.offset32(),U=$.offset32(),X=K8($.sliceFrom(J+K));return{type:1,coverage:Q,subFeatureFlags:Z,stateTable:{nClasses:q,classTable:X,stateArray:[]},substitutionTable:[]}}function cq($,Q,Z){let J=$.offset,q=$.uint32(),K=$.offset32(),W=$.offset32(),H=$.offset32(),U=$.offset32(),X=$.offset32(),N=$.offset32(),_=K8($.sliceFrom(J+K));return{type:2,coverage:Q,subFeatureFlags:Z,stateTable:{nClasses:q,classTable:_,stateArray:[]},ligatureActions:[],components:[],ligatures:[]}}function aq($,Q,Z){let J=$.offset,q=$.uint32(),K=$.offset32(),W=$.offset32(),H=$.offset32(),U=K8($.sliceFrom(J+K)),X=$.sliceFrom(J+W),N=$.sliceFrom(J+H),_=[],j=256;for(let V=0;V<256;V++)_.push({newState:N.uint16(),flags:N.uint16()});let Y=[],w=Math.min(256,Math.ceil((H-W)/(q*2)));for(let V=0;V<w;V++){let z=[];for(let E=0;E<q;E++){let G=X.uint16();z.push(_[G]??{newState:0,flags:0})}Y.push(z)}return{type:0,coverage:Q,subFeatureFlags:Z,stateTable:{nClasses:q,classTable:U,stateArray:Y}}}function rq($,Q,Z){let J=$.offset,q=$.uint32(),K=$.offset32(),W=$.offset32(),H=$.offset32(),U=$.offset32(),X=K8($.sliceFrom(J+K)),N=$.sliceFrom(J+U),_=[],j=1024;for(let B=0;B<1024;B++)try{_.push(N.uint16())}catch{break}let Y=$.sliceFrom(J+H),w=[],V=256;for(let B=0;B<V;B++)w.push({newState:Y.uint16(),flags:Y.uint16(),currentInsertIndex:Y.uint16(),markedInsertIndex:Y.uint16()});let z=$.sliceFrom(J+W),E=[],G=Math.min(256,Math.ceil((H-W)/(q*2)));for(let B=0;B<G;B++){let D=[];for(let S=0;S<q;S++){let L=z.uint16();D.push(w[L]??{newState:0,flags:0,currentInsertIndex:65535,markedInsertIndex:65535})}E.push(D)}return{type:5,coverage:Q,subFeatureFlags:Z,stateTable:{nClasses:q,classTable:X,stateArray:E},insertionGlyphs:_}}function tq($){let Q=$.uint16(),Z=new Map;switch(Q){case 0:break;case 2:{let J=$.uint16(),q=$.uint16();$.skip(6);for(let K=0;K<q;K++){let W=$.uint16(),H=$.uint16(),U=$.uint16();for(let X=H;X<=W;X++)Z.set(X,U)}break}case 4:{let J=$.uint16(),q=$.uint16();$.skip(6);for(let K=0;K<q;K++){let W=$.uint16(),H=$.uint16(),U=$.uint16()}break}case 6:{let J=$.uint16(),q=$.uint16();$.skip(6);for(let K=0;K<q;K++){let W=$.uint16(),H=$.uint16();Z.set(W,H)}break}case 8:{let J=$.uint16(),q=$.uint16();for(let K=0;K<q;K++){let W=$.uint16();if(W!==0)Z.set(J+K,W)}break}}return{format:Q,mapping:Z}}function K8($){let Q=$.uint16(),Z=[];if(Q===2){let J=$.uint16(),q=$.uint16();$.skip(6);let K=[];for(let H=0;H<q;H++)K.push({last:$.uint16(),first:$.uint16(),classValue:$.uint16()});let W=Math.max(...K.map((H)=>H.last),0);for(let H=0;H<=W;H++){let U=K.find((X)=>H>=X.first&&H<=X.last);Z[H]=U?.classValue??1}}return{format:Q,classArray:Z}}function w9($,Q){return $.lookupTable.mapping.get(Q)??null}var P6={hasc:F("hasc"),hdsc:F("hdsc"),hlgp:F("hlgp"),hcla:F("hcla"),hcld:F("hcld"),hcof:F("hcof"),hcrn:F("hcrn"),hcrs:F("hcrs"),vasc:F("vasc"),vdsc:F("vdsc"),vlgp:F("vlgp"),vcof:F("vcof"),vcrn:F("vcrn"),vcrs:F("vcrs"),xhgt:F("xhgt"),cpht:F("cpht"),sbxs:F("sbxs"),sbys:F("sbys"),sbxo:F("sbxo"),sbyo:F("sbyo"),spxs:F("spxs"),spys:F("spys"),spxo:F("spxo"),spyo:F("spyo"),strs:F("strs"),stro:F("stro"),undo:F("undo"),unds:F("unds"),gsp0:F("gsp0"),gsp1:F("gsp1"),gsp2:F("gsp2"),gsp3:F("gsp3")};function m7($){let Q=$.uint16(),Z=$.uint16();$.uint16();let J=$.uint16(),q=$.uint16(),K=$.offset16(),W=[];for(let U=0;U<q;U++)if(W.push({valueTag:$.tag(),deltaSetOuterIndex:$.uint16(),deltaSetInnerIndex:$.uint16()}),J>8)$.skip(J-8);let H=eq($.sliceFrom(K));return{majorVersion:Q,minorVersion:Z,itemVariationStore:H,valueRecords:W}}function eq($){let Q=$.uint16(),Z=$.offset32(),J=$.uint16(),q=[];for(let N=0;N<J;N++)q.push($.offset32());let K=$.sliceFrom(Z),W=K.uint16(),H=K.uint16(),U=[];for(let N=0;N<H;N++){let _=[];for(let j=0;j<W;j++)_.push({startCoord:K.f2dot14(),peakCoord:K.f2dot14(),endCoord:K.f2dot14()});U.push({regionAxes:_})}let X=[];for(let N of q){let _=$.sliceFrom(N),j=_.uint16(),Y=_.uint16(),w=_.uint16(),V=[];for(let D=0;D<w;D++)V.push(_.uint16());let z=(Y&32768)!==0,E=Y&32767,G=w-E,B=[];for(let D=0;D<j;D++){let S=[];for(let L=0;L<E;L++)if(z)S.push(_.int32());else S.push(_.int16());for(let L=0;L<G;L++)if(z)S.push(_.int16());else S.push(_.int8());B.push(S)}X.push({itemCount:j,regionIndexes:V,deltaSets:B})}return{format:Q,variationRegions:U,itemVariationData:X}}function T6($,Q,Z){let J=$.valueRecords.find((X)=>X.valueTag===Q);if(!J)return 0;let{deltaSetOuterIndex:q,deltaSetInnerIndex:K}=J,W=$.itemVariationStore.itemVariationData[q];if(!W||K>=W.itemCount)return 0;let H=W.deltaSets[K];if(!H)return 0;let U=0;for(let[X,N]of W.regionIndexes.entries()){let _=$.itemVariationStore.variationRegions[N];if(!_)continue;let j=M6(_,Z),Y=H[X]??0;U+=j*Y}return Math.round(U)}function $K($,Q){return T6($,P6.hasc,Q)}function QK($,Q){return T6($,P6.hdsc,Q)}function ZK($,Q){return T6($,P6.xhgt,Q)}function JK($,Q){return T6($,P6.cpht,Q)}var Y9={Unicode:0,Macintosh:1,Reserved:2,Windows:3};function y7($){let Q=$.uint16(),Z=$.uint16(),J=$.uint16(),q=[],K=[];for(let W=0;W<Z;W++)K.push({platformId:$.uint16(),encodingId:$.uint16(),languageId:$.uint16(),nameId:$.uint16(),length:$.uint16(),offset:$.uint16()});for(let W of K){let H=$.sliceFrom(J+W.offset),U=qK(H,W.length,W.platformId,W.encodingId);if(U!==null)q.push({platformId:W.platformId,encodingId:W.encodingId,languageId:W.languageId,nameId:W.nameId,value:U})}return{format:Q,records:q}}function qK($,Q,Z,J){if(Z===Y9.Unicode||Z===Y9.Windows&&(J===1||J===10)){let q=[];for(let K=0;K<Q;K+=2){let W=$.uint16();q.push(String.fromCharCode(W))}return q.join("")}if(Z===Y9.Macintosh&&J===0){let q=[];for(let K=0;K<Q;K++)q.push($.uint8());return String.fromCharCode(...q)}return null}function b7($){let Q=$.uint16(),Z=$.int16(),J=$.uint16(),q=$.uint16(),K=$.uint16(),W=$.int16(),H=$.int16(),U=$.int16(),X=$.int16(),N=$.int16(),_=$.int16(),j=$.int16(),Y=$.int16(),w=$.int16(),V=$.int16(),z=$.int16(),E=[];for(let R=0;R<10;R++)E.push($.uint8());let G=$.uint32(),B=$.uint32(),D=$.uint32(),S=$.uint32(),L=String.fromCharCode($.uint8(),$.uint8(),$.uint8(),$.uint8()),h=$.uint16(),I=$.uint16(),O=$.uint16(),g=$.int16(),n=$.int16(),v=$.int16(),o=$.uint16(),y=$.uint16(),b={version:Q,xAvgCharWidth:Z,usWeightClass:J,usWidthClass:q,fsType:K,ySubscriptXSize:W,ySubscriptYSize:H,ySubscriptXOffset:U,ySubscriptYOffset:X,ySuperscriptXSize:N,ySuperscriptYSize:_,ySuperscriptXOffset:j,ySuperscriptYOffset:Y,yStrikeoutSize:w,yStrikeoutPosition:V,sFamilyClass:z,panose:E,ulUnicodeRange1:G,ulUnicodeRange2:B,ulUnicodeRange3:D,ulUnicodeRange4:S,achVendID:L,fsSelection:h,usFirstCharIndex:I,usLastCharIndex:O,sTypoAscender:g,sTypoDescender:n,sTypoLineGap:v,usWinAscent:o,usWinDescent:y};if(Q>=1)b.ulCodePageRange1=$.uint32(),b.ulCodePageRange2=$.uint32();if(Q>=2)b.sxHeight=$.int16(),b.sCapHeight=$.int16(),b.usDefaultChar=$.uint16(),b.usBreakChar=$.uint16(),b.usMaxContext=$.uint16();if(Q>=5)b.usLowerOpticalPointSize=$.uint16(),b.usUpperOpticalPointSize=$.uint16();return b}function g7($){let Q=$.uint16(),Z=$.uint16(),J=Q+Z/65536,q=$.fixed(),K=$.int16(),W=$.int16(),H=$.uint32(),U=$.uint32(),X=$.uint32(),N=$.uint32(),_=$.uint32(),j={version:J,italicAngle:q,underlinePosition:K,underlineThickness:W,isFixedPitch:H,minMemType42:U,maxMemType42:X,minMemType1:N,maxMemType1:_};if(J===2){let Y=$.uint16(),w=[];for(let G=0;G<Y;G++)w.push($.uint16());let V=[],z=0;for(let G of w)if(G>=258&&G>z)z=G;let E=z>=258?z-257:0;for(let G=0;G<E;G++){let B=$.uint8(),D=[];for(let S=0;S<B;S++)D.push(String.fromCharCode($.uint8()));V.push(D.join(""))}j.numberOfGlyphs=Y,j.glyphNameIndex=w,j.names=V}return j}var V9={PNG:"png ",JPG:"jpg ",TIFF:"tiff",PDF:"pdf ",MASK:"mask",DUPE:"dupe"};function x7($,Q){let Z=$.offset,J=$.uint16(),q=$.uint16(),K=$.uint32(),W=[];for(let U=0;U<K;U++)W.push($.uint32());let H=[];for(let U of W){let X=KK($,Z+U,Q);H.push(X)}return{version:J,flags:q,strikes:H}}function KK($,Q,Z){let J=$.sliceFrom(Q),q=J.uint16(),K=J.uint16(),W=[];for(let U=0;U<=Z;U++)W.push(J.uint32());let H=new Map;for(let U=0;U<Z;U++){let X=W[U],_=W[U+1]-X;if(_<=8)continue;let j=$.sliceFrom(Q+X),Y=j.int16(),w=j.int16(),V=j.tagString(),z=_-8,E=j.bytes(z);H.set(U,{originOffsetX:Y,originOffsetY:w,graphicType:V,data:E})}return{ppem:q,ppi:K,glyphData:H}}function WK($,Q,Z){let J=null,q=1/0;for(let K of $.strikes){let W=Math.abs(K.ppem-Z);if(W<q)q=W,J=K}if(!J)return null;return J.glyphData.get(Q)??null}function u7($,Q){return $.strikes.find((Z)=>Z.ppem===Q)??null}function HK($){return $.strikes.map((Q)=>Q.ppem).sort((Q,Z)=>Q-Z)}function UK($,Q,Z){if(Z!==void 0)return u7($,Z)?.glyphData.has(Q)??!1;for(let J of $.strikes)if(J.glyphData.has(Q))return!0;return!1}function f7($,Q,Z){if(Z.graphicType!==V9.DUPE)return Z;if(Z.data.length<2)return null;let J=Z.data[0]<<8|Z.data[1],q=Q.glyphData.get(J);if(!q)return null;if(q.graphicType===V9.DUPE)return f7($,Q,q);return q}function l7($){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(),J=$.uint16(),q=$.uint16(),K=$.uint16(),W=new Map;for(let H=0;H<Z;H++){let U=$.tag(),X=$.uint32(),N=$.uint32(),_=$.uint32();W.set(U,{tag:U,checksum:X,offset:N,length:_})}return{sfntVersion:Q,numTables:Z,searchRange:J,entrySelector:q,rangeShift:K,tables:W}}function d7($){return $.sfntVersion===65536||$.sfntVersion===1953658213}var z9={OlderSiblingFontAttribute:1,ElidableAxisValueName:2};function n7($){let Q=$.offset,Z=$.uint16(),J=$.uint16(),q=$.uint16(),K=$.uint16(),W=$.offset32(),H=$.uint16(),U=$.offset32(),X;if(Z>=1&&J>=1)X=$.uint16();let N=[];if(W!==0){let j=$.sliceFrom(Q+W);for(let Y=0;Y<K;Y++)if(N.push({axisTag:j.tag(),axisNameID:j.uint16(),axisOrdering:j.uint16()}),q>8)j.skip(q-8)}let _=[];if(U!==0&&H>0){let j=$.sliceFrom(Q+U),Y=[];for(let w=0;w<H;w++)Y.push(j.uint16());for(let w of Y){let V=$.sliceFrom(Q+U+w),z=XK(V);if(z)_.push(z)}}return{majorVersion:Z,minorVersion:J,designAxisCount:K,designAxes:N,axisValueCount:H,axisValues:_,elidedFallbackNameID:X}}function XK($){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(),J=$.uint16(),q=$.uint16(),K=[];for(let W=0;W<Z;W++)K.push({axisIndex:$.uint16(),value:$.fixed()});return{format:4,axisCount:Z,flags:J,valueNameID:q,axisValues:K}}default:return null}}function NK($,Q){return $.designAxes.find((Z)=>Z.axisTag===Q)??null}function _K($,Q){return $.designAxes.findIndex((Z)=>Z.axisTag===Q)}function jK($,Q){return $.axisValues.filter((Z)=>{if(Z.format===4)return Z.axisValues.some((J)=>J.axisIndex===Q);return Z.axisIndex===Q})}function wK($,Q){return $.axisValues.find((Z)=>Z.valueNameID===Q)??null}function YK($){return($.flags&z9.ElidableAxisValueName)!==0}function VK($){return($.flags&z9.OlderSiblingFontAttribute)!==0}function zK($){switch($.format){case 1:case 3:return $.value;case 2:return $.nominalValue;case 4:return null}}function EK($,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 J=Q.get(Z.axisIndex);return J!==void 0&&J===Z.value})}}function i7($){let Q=$.uint16(),Z=$.offset32();$.skip(4);let J=$.sliceFrom(Z),q=J.uint16(),K=[];for(let U=0;U<q;U++)K.push({startGlyphID:J.uint16(),endGlyphID:J.uint16(),svgDocOffset:J.offset32(),svgDocLength:J.uint32()});let W=[],H=new TextDecoder("utf-8");for(let U of K){let N=J.sliceFrom(U.svgDocOffset).bytes(U.svgDocLength),_;if(N[0]===31&&N[1]===139)try{let j=BK(N);_=H.decode(j)}catch{_=H.decode(N)}else _=H.decode(N);W.push({startGlyphID:U.startGlyphID,endGlyphID:U.endGlyphID,svgDoc:_})}return{version:Q,documentRecords:W}}function p7($,Q){for(let Z of $.documentRecords)if(Q>=Z.startGlyphID&&Q<=Z.endGlyphID)return Z.svgDoc;return null}function GK($,Q){return p7($,Q)!==null}function AK($){let Q=[];for(let Z of $.documentRecords)for(let J=Z.startGlyphID;J<=Z.endGlyphID;J++)Q.push(J);return Q}function BK($){if(typeof DecompressionStream<"u")return $;return $}function s7($){let Q=$.uint32()/65536,Z=$.uint16(),J=$.offset16(),q=$.offset16();$.skip(2);let K=null,W=null;if(J!==0)K=o7($.sliceFrom(J));if(q!==0)W=o7($.sliceFrom(q));return{version:Q,format:Z,horizData:K,vertData:W}}function o7($){let Q=$.uint16(),Z=$.uint16(),J=$.offset32(),q=[];for(let H=0;H<Q;H++){let U=$.int32()/65536,X=$.uint16(),N=$.uint16();q.push({track:U,nameIndex:X,offset:N,perSizeTracking:[]})}for(let H of q){let U=$.sliceFrom(H.offset);H.perSizeTracking=[];for(let X=0;X<Z;X++)H.perSizeTracking.push(U.int16())}let K=$.sliceFrom(J),W=[];for(let H=0;H<Z;H++)W.push(K.int32()/65536);return{nTracks:Q,nSizes:Z,sizeTableOffset:J,trackTable:q,sizeTable:W}}function c7($,Q,Z){let J=null;for(let q of $.trackTable)if(q.track===Q){J=q;break}if(!J){let q=null,K=null;for(let W of $.trackTable){if(W.track<=Q&&(!q||W.track>q.track))q=W;if(W.track>=Q&&(!K||W.track<K.track))K=W}if(q&&K&&q!==K){let W=(Q-q.track)/(K.track-q.track),H=E9($,q,Z),U=E9($,K,Z);return Math.round(H+W*(U-H))}else if(q)J=q;else if(K)J=K;else return 0}if(!J)return 0;return E9($,J,Z)}function E9($,Q,Z){let J=$.sizeTable,q=Q.perSizeTracking;if(J.length===0||q.length===0)return 0;let K=J[0],W=q[0];if(K===void 0||W===void 0)return 0;if(Z<=K)return W;let H=J[J.length-1],U=q[q.length-1];if(H===void 0||U===void 0)return 0;if(Z>=H)return U;for(let X=0;X<J.length-1;X++){let N=J[X],_=J[X+1],j=q[X],Y=q[X+1];if(N===void 0||_===void 0||j===void 0||Y===void 0)continue;if(Z>=N&&Z<=_){let w=(Z-N)/(_-N);return Math.round(j+w*(Y-j))}}return 0}function DK($,Q,Z,J=0,q=!1){let K=q?$.vertData:$.horizData;if(!K)return;let W=c7(K,J,Z);if(W===0)return;for(let[H,U]of Q.entries())Q[H]=(U??0)+W}function a7($){let Q=$.uint16(),Z=$.uint16(),J=$.fword(),q=$.fword(),K=$.fword(),W=$.uint16(),H=$.fword(),U=$.fword(),X=$.fword(),N=$.int16(),_=$.int16(),j=$.int16();$.skip(8);let Y=$.int16(),w=$.uint16();return{version:{major:Q,minor:Z},ascender:J,descender:q,lineGap:K,advanceHeightMax:W,minTopSideBearing:H,minBottomSideBearing:U,yMaxExtent:X,caretSlopeRise:N,caretSlopeRun:_,caretOffset:j,metricDataFormat:Y,numberOfVMetrics:w}}function r7($,Q,Z){let J=[];for(let W=0;W<Q;W++)J.push({advanceHeight:$.uint16(),topSideBearing:$.int16()});let q=[],K=Z-Q;for(let W=0;W<K;W++)q.push($.int16());return{vMetrics:J,topSideBearings:q}}function MK($,Q){if(Q<$.vMetrics.length){let W=$.vMetrics[Q];if(W)return{advanceHeight:W.advanceHeight,topSideBearing:W.topSideBearing}}let J=$.vMetrics[$.vMetrics.length-1]?.advanceHeight??0,q=Q-$.vMetrics.length,K=$.topSideBearings[q]??0;return{advanceHeight:J,topSideBearing:K}}function t7($){let Q=$.uint16(),Z=$.uint16(),J=$.int16(),q=$.uint16(),K=[];for(let W=0;W<q;W++)K.push({glyphIndex:$.uint16(),vertOriginY:$.int16()});return K.sort((W,H)=>W.glyphIndex-H.glyphIndex),{majorVersion:Q,minorVersion:Z,defaultVertOriginY:J,vertOriginYMetrics:K}}function FK($,Q){let Z=$.vertOriginYMetrics,J=0,q=Z.length-1;while(J<=q){let K=J+q>>>1,W=Z[K];if(W.glyphIndex===Q)return W.vertOriginY;else if(W.glyphIndex<Q)J=K+1;else q=K-1}return $.defaultVertOriginY}function LK($,Q){let Z=$.vertOriginYMetrics,J=0,q=Z.length-1;while(J<=q){let K=J+q>>>1,W=Z[K];if(W.glyphIndex===Q)return!0;else if(W.glyphIndex<Q)J=K+1;else q=K-1}return!1}function e7($){let Q=$.uint16(),Z=$.uint16(),J=$.offset32(),q=$.offset32(),K=$.offset32(),W=$.offset32(),H=$.offset32(),U=RK($.sliceFrom(J)),X=q!==0?W8($.sliceFrom(q)):null,N=K!==0?W8($.sliceFrom(K)):null,_=W!==0?W8($.sliceFrom(W)):null,j=H!==0?W8($.sliceFrom(H)):null;return{majorVersion:Q,minorVersion:Z,itemVariationStore:U,advanceHeightMapping:X,tsbMapping:N,bsbMapping:_,vOrgMapping:j}}function RK($){let Q=$.uint16(),Z=$.offset32(),J=$.uint16(),q=[];for(let N=0;N<J;N++)q.push($.offset32());let K=$.sliceFrom(Z),W=K.uint16(),H=K.uint16(),U=[];for(let N=0;N<H;N++){let _=[];for(let j=0;j<W;j++)_.push({startCoord:K.f2dot14(),peakCoord:K.f2dot14(),endCoord:K.f2dot14()});U.push({regionAxes:_})}let X=[];for(let N of q){let _=$.sliceFrom(N),j=_.uint16(),Y=_.uint16(),w=_.uint16(),V=[];for(let D=0;D<w;D++)V.push(_.uint16());let z=(Y&32768)!==0,E=Y&32767,G=w-E,B=[];for(let D=0;D<j;D++){let S=[];for(let L=0;L<E;L++)if(z)S.push(_.int32());else S.push(_.int16());for(let L=0;L<G;L++)if(z)S.push(_.int16());else S.push(_.int8());B.push(S)}X.push({itemCount:j,regionIndexes:V,deltaSets:B})}return{format:Q,variationRegions:U,itemVariationData:X}}function W8($){let Q=$.uint8(),Z=$.uint8(),J=Q===0?$.uint16():$.uint32(),q=(Z&15)+1,K=(Z>>4&3)+1,W=[];for(let H=0;H<J;H++){let U=0;for(let _=0;_<K;_++)U=U<<8|$.uint8();let X=U&(1<<q)-1,N=U>>q;W.push({outer:N,inner:X})}return{format:Q,mapCount:J,entryFormat:Z,innerIndexBitCount:q,mapData:W}}function PK($,Q,Z){let J=$.advanceHeightMapping,q,K;if(J&&Q<J.mapData.length){let W=J.mapData[Q];if(!W)return 0;q=W.outer,K=W.inner}else q=0,K=Q;return H8($.itemVariationStore,q,K,Z)}function TK($,Q,Z){let J=$.tsbMapping;if(!J)return 0;if(Q>=J.mapData.length)return 0;let q=J.mapData[Q];if(!q)return 0;return H8($.itemVariationStore,q.outer,q.inner,Z)}function OK($,Q,Z){let J=$.bsbMapping;if(!J)return 0;if(Q>=J.mapData.length)return 0;let q=J.mapData[Q];if(!q)return 0;return H8($.itemVariationStore,q.outer,q.inner,Z)}function IK($,Q,Z){let J=$.vOrgMapping;if(!J)return 0;if(Q>=J.mapData.length)return 0;let q=J.mapData[Q];if(!q)return 0;return H8($.itemVariationStore,q.outer,q.inner,Z)}function H8($,Q,Z,J){let q=$.itemVariationData[Q];if(!q||Z>=q.itemCount)return 0;let K=q.deltaSets[Z];if(!K)return 0;let W=0;for(let[H,U]of q.regionIndexes.entries()){let X=$.variationRegions[U];if(!X)continue;let N=M6(X,J),_=K[H]??0;W+=N*_}return Math.round(W)}var vK=2001684038,kK=2001684018;function $$($){return new DataView($).getUint32(0,!1)===kK}function Q$($){return new DataView($).getUint32(0,!1)===vK}class X6{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 T1($),this.directory=l7(this.reader)}static load($,Q){if($$($))throw Error("WOFF2 requires async loading. Use Font.loadAsync() instead.");if(Q$($))throw Error("WOFF format is not supported. Please use TTF, OTF, or WOFF2.");return new X6($,Q)}static async loadAsync($,Q){if($$($))$=await p0($);else if(Q$($))throw Error("WOFF format is not supported. Please use TTF, OTF, or WOFF2.");return new X6($,Q)}static async fromURL($,Q){let Z=await fetch($);if(!Z.ok)throw Error(`Failed to fetch font: ${Z.status} ${Z.statusText}`);let J=await Z.arrayBuffer();return X6.loadAsync(J,Q)}static async fromFile($,Q){let J=await Bun.file($).arrayBuffer();return X6.loadAsync(J,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(u.head);if(!$)throw Error("Missing required 'head' table");this._head=_7($)}return this._head}get maxp(){if(!this._maxp){let $=this.getTableReader(u.maxp);if(!$)throw Error("Missing required 'maxp' table");this._maxp=S7($)}return this._maxp}get hhea(){if(!this._hhea){let $=this.getTableReader(u.hhea);if(!$)throw Error("Missing required 'hhea' table");this._hhea=j7($)}return this._hhea}get hmtx(){if(!this._hmtx){let $=this.getTableReader(u.hmtx);if(!$)throw Error("Missing required 'hmtx' table");this._hmtx=z7($,this.hhea.numberOfHMetrics,this.numGlyphs)}return this._hmtx}get cmap(){if(!this._cmap){let $=this.getTableRecord(u.cmap),Q=this.getTableReader(u.cmap);if(!Q||!$)throw Error("Missing required 'cmap' table");this._cmap=W5(Q,$.length)}return this._cmap}get gdef(){if(this._gdef===void 0){let $=this.getTableReader(u.GDEF);this._gdef=$?S5($):null}return this._gdef}get gsub(){if(this._gsub===void 0){let $=this.getTableReader(u.GSUB);this._gsub=$?q7($):null}return this._gsub}get gpos(){if(this._gpos===void 0){let $=this.getTableReader(u.GPOS);this._gpos=$?$7($):null}return this._gpos}get kern(){if(this._kern===void 0){let $=this.getTableReader(u.kern);this._kern=$?P7($):null}return this._kern}get fvar(){if(this._fvar===void 0){let $=this.getTableReader(u.fvar);this._fvar=$?D0($):null}return this._fvar}get hvar(){if(this._hvar===void 0){let $=this.getTableReader(u.HVAR);this._hvar=$?M0($):null}return this._hvar}get vhea(){if(this._vhea===void 0){let $=this.getTableReader(u.vhea);this._vhea=$?a7($):null}return this._vhea}get vmtx(){if(this._vmtx===void 0){let $=this.vhea;if(!$)this._vmtx=null;else{let Q=this.getTableReader(u.vmtx);this._vmtx=Q?r7(Q,$.numberOfVMetrics,this.numGlyphs):null}}return this._vmtx}get morx(){if(this._morx===void 0){let $=this.getTableReader(u.morx);this._morx=$?h7($):null}return this._morx}get gvar(){if(this._gvar===void 0){let $=this.getTableReader(u.gvar);this._gvar=$?y5($,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(u.avar);this._avar=Q?A0(Q,$.axes.length):null}}return this._avar}get kerx(){if(this._kerx===void 0){let $=this.getTableReader(u.kerx);this._kerx=$?v7($):null}return this._kerx}get trak(){if(this._trak===void 0){let $=this.getTableReader(u.trak);this._trak=$?s7($):null}return this._trak}get cff(){if(this._cff===void 0){let $=this.getTableReader(u.CFF);this._cff=$?Q5($):null}return this._cff}get cff2(){if(this._cff2===void 0){let $=this.getTableReader(u.CFF2);this._cff2=$?K5($):null}return this._cff2}get colr(){if(this._colr===void 0){let $=this.getTableReader(u.COLR);this._colr=$?r8($):null}return this._colr}get cpal(){if(this._cpal===void 0){let $=this.getTableReader(u.CPAL);this._cpal=$?t8($):null}return this._cpal}get vvar(){if(this._vvar===void 0){let $=this.getTableReader(u.VVAR);this._vvar=$?e7($):null}return this._vvar}get mvar(){if(this._mvar===void 0){let $=this.getTableReader(u.MVAR);this._mvar=$?m7($):null}return this._mvar}get os2(){if(this._os2===void 0){let $=this.getTableReader(u.OS2);this._os2=$?b7($):null}return this._os2}get name(){if(this._name===void 0){let $=this.getTableReader(u.name);this._name=$?y7($):null}return this._name}get post(){if(this._post===void 0){let $=this.getTableReader(u.post);this._post=$?g7($):null}return this._post}get base(){if(this._base===void 0){let $=this.getTableReader(u.BASE);this._base=$?c0($):null}return this._base}get jstf(){if(this._jstf===void 0){let $=this.getTableReader(u.JSTF);this._jstf=$?D7($):null}return this._jstf}get math(){if(this._math===void 0){let $=this.getTableReader(u.MATH);this._math=$?C7($):null}return this._math}get loca(){if(this._loca===void 0){let $=this.getTableReader(u.loca);this._loca=$?b5($,this.numGlyphs,this.head.indexToLocFormat):null}return this._loca}get glyf(){if(this._glyf===void 0){let $=this.getTableReader(u.glyf);this._glyf=$?g5($):null}return this._glyf}get svg(){if(this._svg===void 0){let $=this.getTableReader(u.SVG);this._svg=$?i7($):null}return this._svg}get vorg(){if(this._vorg===void 0){let $=this.getTableReader(u.VORG);this._vorg=$?t7($):null}return this._vorg}get sbix(){if(this._sbix===void 0){let $=this.getTableReader(u.sbix);this._sbix=$?x7($,this.numGlyphs):null}return this._sbix}get stat(){if(this._stat===void 0){let $=this.getTableReader(u.STAT);this._stat=$?n7($):null}return this._stat}get cblc(){if(this._cblc===void 0){let $=this.getTableReader(u.CBLC);this._cblc=$?r0($):null}return this._cblc}get cbdt(){if(this._cbdt===void 0){let $=this.getTableReader(u.CBDT);this._cbdt=$?t0($):null}return this._cbdt}get feat(){if(this._feat===void 0){let $=this.getTableReader(u.feat);this._feat=$?e8($):null}return this._feat}get fpgm(){if(this._fpgm===void 0){let $=this.getTableReader(u.fpgm);this._fpgm=$?w7($):null}return this._fpgm}get prep(){if(this._prep===void 0){let $=this.getTableReader(u.prep);this._prep=$?Y7($):null}return this._prep}get cvtTable(){if(this._cvt===void 0){let $=this.getTableReader(u.cvt);this._cvt=$?V7($):null}return this._cvt}get gasp(){if(this._gasp===void 0){let $=this.getTableReader(u.gasp);this._gasp=$?I5($):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 d7(this.directory)}get isCFF(){return this.hasTable(u.CFF)||this.hasTable(u.CFF2)}get isVariable(){return this.hasTable(u.fvar)}get hasOpenTypeLayout(){return this.hasTable(u.GSUB)||this.hasTable(u.GPOS)}get hasAATLayout(){return this.hasTable(u.morx)||this.hasTable(u.kerx)}get isColorFont(){return this.hasTable(u.COLR)||this.hasTable(u.SVG)||this.hasTable(u.sbix)||this.hasTable(u.CBDT)}get hasHinting(){return this.isTrueType&&(this.hasTable(u.fpgm)||this.hasTable(u.prep))}glyphId($){return H5(this.cmap,$)}glyphIdForChar($){let Q=$.codePointAt(0);if(Q===void 0)return 0;return this.glyphId(Q)}advanceWidth($){return E7(this.hmtx,$)}leftSideBearing($){return G7(this.hmtx,$)}listTables(){return Array.from(this.directory.tables.keys()).map(D6)}getGlyph($){if(!this.glyf||!this.loca)return null;return r1(this.glyf,this.loca,$)}getGlyphContours($){if(this.glyf&&this.loca)return u5(this.glyf,this.loca,$);if(this.cff)return s8(this.cff,$,0);if(this.cff2)return r6(this.cff2,$,null);return null}getGlyphBounds($){if(this.glyf&&this.loca)return f5(this.glyf,this.loca,$);let Q=this.getGlyphContours($);if(!Q||Q.length===0)return null;let Z=1/0,J=1/0,q=-1/0,K=-1/0;for(let W of Q)for(let H of W)Z=Math.min(Z,H.x),J=Math.min(J,H.y),q=Math.max(q,H.x),K=Math.max(K,H.y);if(Z===1/0)return null;return{xMin:Z,yMin:J,xMax:q,yMax:K}}getGlyphContoursWithVariation($,Q){if(this.glyf&&this.loca)return n5(this.glyf,this.loca,this.gvar,$,Q);if(this.cff2)return r6(this.cff2,$,Q);return this.getGlyphContours($)}}var J$;((J)=>{J.Shrink="shrink";J.Extend="extend";J.Auto="auto"})(J$||={});function U8($){let Q=0;for(let Z of $.positions)Q+=Z.xAdvance;return Q}function q$($,Q,Z){let{targetWidth:J,script:q=F("DFLT"),language:K,mode:W="auto",maxPriority:H=10,enableKashida:U=!0,minWordSpacingFactor:X=0.8,maxWordSpacingFactor:N=1.5,enableLetterSpacing:_=!0,maxLetterSpacing:j=100}=Z,Y=U8(Q),w=J-Y;if(Math.abs(w)<1)return{success:!0,finalWidth:Y,delta:0,priorityLevel:0,adjustments:[]};let V;if(W==="auto")V=w>0?"extend":"shrink";else V=W;let z=[],E=w,G=0,B=$.jstf;if(B){let L=F7(B,q,K);for(let h=0;h<Math.min(L.length,H);h++){let I=L[h],O=V==="shrink"?L7(I):R7(I);if(O.enableGsub.length>0||O.disableGsub.length>0||O.enableGpos.length>0||O.disableGpos.length>0)z.push({type:"lookup",glyphIndices:[],value:h}),G=h}if(U&&V==="extend"){let h=M7(B,q);if(h.length>0){let I=CK(Q,h[0],E,$);E-=I.totalExtension,z.push(...I.adjustments)}}}let D=$.glyphId(32);if(D!==0){let L=hK(Q,D,E,V==="shrink"?X:N);E-=L.totalAdjustment,z.push(...L.adjustments)}if(_&&Math.abs(E)>1){let L=mK(Q,E,j);E-=L.totalAdjustment,z.push(...L.adjustments)}let S=U8(Q);return{success:Math.abs(E)<1,finalWidth:S,delta:J-S,priorityLevel:G,adjustments:z}}function CK($,Q,Z,J){let q=[],K=0,W=[];for(let N=0;N<$.infos.length-1;N++){let _=$.infos[N];if(SK(_.codepoint))W.push(N)}if(W.length===0)return{totalExtension:0,adjustments:[]};let H=J.advanceWidth(Q);if(H<=0)return{totalExtension:0,adjustments:[]};let U=Math.ceil(Z/H/W.length),X=Math.min(U*H,Z/W.length);for(let N of W){if(K>=Z)break;$.positions[N].xAdvance+=X,K+=X,q.push({type:"kashida",glyphIndices:[N],value:X})}return{totalExtension:K,adjustments:q}}function SK($){return $>=1568&&$<=1791}function hK($,Q,Z,J){let q=[],K=0,W=[],H=0;for(let j=0;j<$.infos.length;j++)if($.infos[j]?.glyphId===Q)W.push(j),H+=$.positions[j]?.xAdvance;if(W.length===0)return{totalAdjustment:0,adjustments:[]};let U=Z/W.length,N=H/W.length*(J-1),_=Z>0?Math.min(U,N):Math.max(U,-N);for(let j of W)$.positions[j].xAdvance+=_,K+=_;if(K!==0)q.push({type:"spacing",glyphIndices:W,value:_});return{totalAdjustment:K,adjustments:q}}function mK($,Q,Z){let J=[],q=$.infos.length;if(q<=1)return{totalAdjustment:0,adjustments:[]};let K=q-1,W=Q/K,H=Q>0?Math.min(W,Z):Math.max(W,-Z),U=[],X=0;for(let N=0;N<q-1;N++)$.positions[N].xAdvance+=H,X+=H,U.push(N);if(X!==0)J.push({type:"spacing",glyphIndices:U,value:H});return{totalAdjustment:X,adjustments:J}}function yK($,Q,Z){let J=[],q=[];if($.infos.length===0)return{lines:[],breakPoints:[]};let K=0,W=0,H=-1,U=0;for(let X=0;X<$.infos.length;X++){let N=$.positions[X],_=$.infos[X];if(W+=N.xAdvance,Z!==void 0&&_.glyphId===Z)H=X,U=W;if(W>Q&&K<X){let j;if(H>K)j=H+1;else j=X;let Y=Z$($,K,j);J.push(Y),q.push(j),K=j,W=0,H=-1;for(let w=K;w<=X;w++)W+=$.positions[w]?.xAdvance}}if(K<$.infos.length){let X=Z$($,K,$.infos.length);J.push(X)}return{lines:J,breakPoints:q}}function Z$($,Q,Z){let J=new s1;J.direction=$.direction,J.script=$.script,J.language=$.language;for(let q=Q;q<Z;q++)J.infos.push({...$.infos[q]}),J.positions.push({...$.positions[q]});return J}function bK($,Q,Z){let J=[];for(let q=0;q<Q.length;q++){let K=Q[q];if(q===Q.length-1)J.push({success:!0,finalWidth:U8(K),delta:0,priorityLevel:0,adjustments:[]});else J.push(q$($,K,Z))}return J}function K$($,Q){for(let Z of $.conditions){let J=Q[Z.axisIndex]??0;if(J<Z.filterRangeMinValue||J>Z.filterRangeMaxValue)return!1}return!0}function O6($,Q){for(let Z of $.featureVariationRecords)if(K$(Z.conditionSet,Q))return Z;return null}function gK($,Q,Z,J){if(!$||!J)return Z;let q=O6($,J);if(!q)return Z;let K=q.featureTableSubstitution.substitutions.find((W)=>W.featureIndex===Q);if(K)return K.alternateFeature.lookupListIndices;return Z}function xK($,Q,Z,J){if(!$||!J)return Q;let q=O6($,J);if(!q)return Q;let K=new Map(Q);for(let W of q.featureTableSubstitution.substitutions)for(let[H,U]of Z)if(U===W.featureIndex){K.set(H,W.alternateFeature.lookupListIndices);break}return K}function W$($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop];$.stack[$.stackTop++]=Z+Q}function H$($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop];$.stack[$.stackTop++]=Z-Q}function U$($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop];if(Q===0){$.error="DIV: division by zero",$.stack[$.stackTop++]=0;return}$.stack[$.stackTop++]=Math.trunc(Z*64/Q)}function X$($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop];$.stack[$.stackTop++]=Math.trunc(Z*Q/64)}function N$($){let Q=$.stack[$.stackTop-1];$.stack[$.stackTop-1]=Q<0?-Q:Q}function _$($){$.stack[$.stackTop-1]=-$.stack[$.stackTop-1]}function j$($){let Q=$.stack[$.stackTop-1];$.stack[$.stackTop-1]=Q&-64}function w$($){let Q=$.stack[$.stackTop-1];$.stack[$.stackTop-1]=Q+63&-64}function Y$($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop];$.stack[$.stackTop++]=Z>Q?Z:Q}function V$($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop];$.stack[$.stackTop++]=Z<Q?Z:Q}function z$($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop];$.stack[$.stackTop++]=Z<Q?1:0}function E$($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop];$.stack[$.stackTop++]=Z<=Q?1:0}function G$($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop];$.stack[$.stackTop++]=Z>Q?1:0}function A$($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop];$.stack[$.stackTop++]=Z>=Q?1:0}function B$($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop];$.stack[$.stackTop++]=Z===Q?1:0}function D$($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop];$.stack[$.stackTop++]=Z!==Q?1:0}function M$($){let Z=$.stack[$.stackTop-1]+32&-64;$.stack[$.stackTop-1]=Z&64?1:0}function F$($){let Z=$.stack[$.stackTop-1]+32&-64;$.stack[$.stackTop-1]=Z&64?0:1}function L$($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop];$.stack[$.stackTop++]=Z&&Q?1:0}function R$($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop];$.stack[$.stackTop++]=Z||Q?1:0}function P$($){let Q=$.stack[$.stackTop-1];$.stack[$.stackTop-1]=Q?0:1}function T$($){if($.stack[--$.stackTop])return;let Z=1;while($.IP<$.codeSize){let J=$.code[$.IP++];switch(J){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];break;case 65:$.IP+=1+$.code[$.IP]*2;break;default:if(J>=176&&J<=183)$.IP+=J-176+1;else if(J>=184&&J<=191)$.IP+=(J-184+1)*2}}$.error="IF: missing EIF"}function O$($){let Q=1;while($.IP<$.codeSize){let Z=$.code[$.IP++];switch(Z){case 88:Q++;break;case 89:if(Q--,Q===0)return;break;case 64:$.IP+=1+$.code[$.IP];break;case 65:$.IP+=1+$.code[$.IP]*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 I$($){}function v$($){let Q=$.stack[--$.stackTop];$.IP+=Q-1}function k$($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop];if(Q)$.IP+=Z-1}function C$($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop];if(!Q)$.IP+=Z-1}function S$($){let Q=$.stack[--$.stackTop];if(Q<0||Q>=$.maxFDefs){$.error=`FDEF: invalid function number ${Q}`;return}let Z=$.FDefs[Q];Z.id=Q,Z.start=$.IP,Z.active=!0,Z.range=$.currentRange;while($.IP<$.codeSize){let J=$.code[$.IP++];if(J===45){Z.end=$.IP;return}if(J===64)$.IP+=1+$.code[$.IP];else if(J===65)$.IP+=1+$.code[$.IP]*2;else if(J>=176&&J<=183)$.IP+=J-176+1;else if(J>=184&&J<=191)$.IP+=(J-184+1)*2}$.error="FDEF: missing ENDF"}function h$($){if($.callStackTop<=0){$.error="ENDF: not in function call";return}let Q=$.callStack[$.callStackTop-1];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 m$($){let Q=$.stack[--$.stackTop];if(Q<0||Q>=$.maxFDefs){$.error=`CALL: invalid function number ${Q}`;return}let Z=$.FDefs[Q];if(!Z.active){$.error=`CALL: function ${Q} not defined`;return}if($.callStackTop>=$.maxCallStack){$.error="CALL: call stack overflow";return}let J=$.callStack[$.callStackTop++];J.callerIP=$.IP,J.callerRange=$.currentRange,J.def=Z,J.count=1,$.currentRange=Z.range;let q=$.codeRanges.get($.currentRange);if(q)$.code=q.code,$.codeSize=q.size;$.IP=Z.start}function y$($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop];if(Q<0||Q>=$.maxFDefs){$.error=`LOOPCALL: invalid function number ${Q}`;return}let J=$.FDefs[Q];if(!J.active){$.error=`LOOPCALL: function ${Q} not defined`;return}if(Z<=0)return;if($.callStackTop>=$.maxCallStack){$.error="LOOPCALL: call stack overflow";return}let q=$.callStack[$.callStackTop++];q.callerIP=$.IP,q.callerRange=$.currentRange,q.def=J,q.count=Z,$.currentRange=J.range;let K=$.codeRanges.get($.currentRange);if(K)$.code=K.code,$.codeSize=K.size;$.IP=J.start}function b$($){let Q=$.stack[--$.stackTop];if(Q<0||Q>=$.maxIDefs){$.error=`IDEF: invalid opcode ${Q}`;return}let Z=$.IDefs[Q];Z.opcode=Q,Z.start=$.IP,Z.active=!0,Z.range=$.currentRange;while($.IP<$.codeSize){let J=$.code[$.IP++];if(J===45){Z.end=$.IP;return}if(J===64)$.IP+=1+$.code[$.IP];else if(J===65)$.IP+=1+$.code[$.IP]*2;else if(J>=176&&J<=183)$.IP+=J-176+1;else if(J>=184&&J<=191)$.IP+=(J-184+1)*2}$.error="IDEF: missing ENDF"}function uK(){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}}function e1($,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 g$($=256,Q=64,Z=64,J=64,q=32,K=16){let W=uK();return{GS:{...W},defaultGS:W,zp0:e1(0,0),zp1:e1(0,0),zp2:e1(0,0),twilight:e1(K,1),pts:e1(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((H,U)=>({id:U,start:0,end:0,active:!1,range:0})),maxFDefs:Z,IDefs:Array(J).fill(null).map((H,U)=>({opcode:U,start:0,end:0,active:!1,range:0})),maxIDefs:J,callStack:Array(q).fill(null).map(()=>({callerIP:0,callerRange:0,def:{id:0,start:0,end:0,active:!1,range:0},count:0})),callStackTop:0,maxCallStack:q,codeRanges:new Map,ppem:12,pointSize:12,scale:1,error:null,instructionCount:0,maxInstructions:1e6}}var A={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},b3={[A.RS]:1,[A.WS]:2,[A.RCVT]:1,[A.WCVTP]:2,[A.WCVTF]:2,[A.DUP]:1,[A.POP]:1,[A.CLEAR]:0,[A.SWAP]:2,[A.DEPTH]:0,[A.CINDEX]:1,[A.MINDEX]:1,[A.ROLL]:3,[A.ADD]:2,[A.SUB]:2,[A.DIV]:2,[A.MUL]:2,[A.ABS]:1,[A.NEG]:1,[A.FLOOR]:1,[A.CEILING]:1,[A.MAX]:2,[A.MIN]:2,[A.LT]:2,[A.LTEQ]:2,[A.GT]:2,[A.GTEQ]:2,[A.EQ]:2,[A.NEQ]:2,[A.ODD]:1,[A.EVEN]:1,[A.AND]:2,[A.OR]:2,[A.NOT]:1,[A.IF]:1,[A.JMPR]:1,[A.JROT]:2,[A.JROF]:2,[A.CALL]:1,[A.LOOPCALL]:2,[A.SRP0]:1,[A.SRP1]:1,[A.SRP2]:1,[A.SZP0]:1,[A.SZP1]:1,[A.SZP2]:1,[A.SZPS]:1,[A.SLOOP]:1,[A.SMD]:1,[A.SCVTCI]:1,[A.SSWCI]:1,[A.SSW]:1,[A.SDB]:1,[A.SDS]:1,[A.SPVFS]:2,[A.SFVFS]:2,[A.SPVTL_0]:2,[A.SPVTL_1]:2,[A.SFVTL_0]:2,[A.SFVTL_1]:2,[A.SCFS]:2,[A.GC_0]:1,[A.GC_1]:1,[A.MD_0]:2,[A.MD_1]:2,[A.ISECT]:5,[A.ALIGNRP]:0,[A.IP]:0,[A.SHPIX]:1,[A.MSIRP_0]:2,[A.MSIRP_1]:2,[A.MIAP_0]:2,[A.MIAP_1]:2,[A.MDAP_0]:1,[A.MDAP_1]:1,[A.DELTAP1]:1,[A.DELTAP2]:1,[A.DELTAP3]:1,[A.DELTAC1]:1,[A.DELTAC2]:1,[A.DELTAC3]:1,[A.SROUND]:1,[A.S45ROUND]:1,[A.ROUND_0]:1,[A.ROUND_1]:1,[A.ROUND_2]:1,[A.ROUND_3]:1,[A.NROUND_0]:1,[A.NROUND_1]:1,[A.NROUND_2]:1,[A.NROUND_3]:1,[A.INSTCTRL]:2,[A.SCANCTRL]:1,[A.SCANTYPE]:1,[A.GETINFO]:1,[A.FLIPPT]:0,[A.FLIPRGON]:2,[A.FLIPRGOFF]:2};function x$($,Q){if($>=0)return $+32+Q&-64;else return-(-$+32+Q&-64)}function lK($,Q){if($>=0)return($+32+Q&-64)+32;else return-((-$+32+Q&-64)+32)}function dK($,Q){if($>=0)return $+16+Q&-32;else return-(-$+16+Q&-32)}function nK($,Q){if($>=0)return $+Q&-64;else return-(Q-$&-64)}function iK($,Q){if($>=0)return $+63+Q&-64;else return-(63+Q-$&-64)}function pK($,Q){return $}function oK($,Q,Z){let{period:J,phase:q,threshold:K}=Z;if($>=0)return($+K-q+Q&-J)+q;else return-((-$+K-q+Q&-J)+q)}function sK($,Q,Z){let{period:J,phase:q,threshold:K}=Z,W=Math.round(J*46/64);if($>=0)return($+K-q+Q&-W)+q;else return-((-$+K-q+Q&-W)+q)}function N6($,Q,Z){switch(Z.roundState){case 1:return x$($,Q);case 0:return lK($,Q);case 2:return dK($,Q);case 3:return nK($,Q);case 4:return iK($,Q);case 5:return pK($,Q);case 6:return oK($,Q,Z);case 7:return sK($,Q,Z);default:return x$($,Q)}}function G9($,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 $6($,Q){return 0}function cK($,Q){return Q.x*$.GS.projVector.x+Q.y*$.GS.projVector.y+8192>>14}function aK($,Q){return Q.x*$.GS.dualVector.x+Q.y*$.GS.dualVector.y+8192>>14}function N1($,Q,Z,J){let q=Q.cur[Z],K=$.GS.freeVector,W=$.GS.projVector,H=K.x*W.x+K.y*W.y+8192>>14;if(H===0)return;let U=Math.round(J*K.x/H),X=Math.round(J*K.y/H);q.x+=U,q.y+=X}function J1($,Q,Z){let J=Q.cur[Z];if(!J)return 0;return cK($,J)}function B1($,Q,Z){let J=Q.org[Z];if(!J)return 0;return aK($,J)}function j1($,Q,Z){let J=$.GS.freeVector;if(J.y!==0)Q.tags[Z]|=2;if(J.x!==0)Q.tags[Z]|=1}function A9($,Q){let Z=$.stack[--$.stackTop],J=$.zp0;if(Z<0||Z>=J.nPoints){$.error=`MDAP: invalid point ${Z}`;return}let q=J1($,J,Z);if(Q){let K=$6(q,$.GS);q=N6(q,K,$.GS)-q}else q=0;N1($,J,Z,q),j1($,J,Z),$.GS.rp0=Z,$.GS.rp1=Z}function B9($,Q){let Z=$.stack[--$.stackTop],J=$.stack[--$.stackTop],q=$.zp0;if(J<0||J>=q.nPoints){$.error=`MIAP: invalid point ${J}`;return}if(Z<0||Z>=$.cvtSize){$.error=`MIAP: invalid CVT index ${Z}`;return}let K=$.cvt[Z],W=J1($,q,J);if(Q){if(Math.abs(K-W)>$.GS.controlValueCutIn)K=W;let X=$6(K,$.GS);K=N6(K,X,$.GS)}let H=K-W;N1($,q,J,H),j1($,q,J),$.GS.rp0=J,$.GS.rp1=J}function f$($,Q){let Z=$.stack[--$.stackTop],J=(Q&16)!==0,q=(Q&8)!==0,K=(Q&4)!==0,W=$.zp0,H=$.zp1;if(Z<0||Z>=H.nPoints){$.error=`MDRP: invalid point ${Z}`;return}let U=$.GS.rp0;if(U<0||U>=W.nPoints){$.error=`MDRP: invalid rp0 ${U}`;return}let X=B1($,H,Z)-B1($,W,U);if($.GS.autoFlip&&X<0)X=-X;if(K){let j=$6(X,$.GS);X=N6(X,j,$.GS)}if(q){if(X>=0){if(X<$.GS.minimumDistance)X=$.GS.minimumDistance}else if(X>-$.GS.minimumDistance)X=-$.GS.minimumDistance}let N=J1($,H,Z)-J1($,W,U),_=X-N;if(N1($,H,Z,_),j1($,H,Z),$.GS.rp1=$.GS.rp0,$.GS.rp2=Z,J)$.GS.rp0=Z}function l$($,Q){let Z=$.stack[--$.stackTop],J=$.stack[--$.stackTop],q=(Q&16)!==0,K=(Q&8)!==0,W=(Q&4)!==0,H=$.zp0,U=$.zp1;if(J<0||J>=U.nPoints){$.error=`MIRP: invalid point ${J}`;return}if(Z<0||Z>=$.cvtSize){$.error=`MIRP: invalid CVT index ${Z}`;return}let X=$.GS.rp0;if(X<0||X>=H.nPoints){$.error=`MIRP: invalid rp0 ${X}`;return}let N=B1($,U,J)-B1($,H,X),_=$.cvt[Z];if($.GS.autoFlip){if(N<0&&_>0||N>0&&_<0)_=-_}let j=Math.abs(N-_),Y;if(j>$.GS.controlValueCutIn)Y=N;else Y=_;if(W){let z=$6(Y,$.GS);Y=N6(Y,z,$.GS)}if(K){if(N>=0){if(Y<$.GS.minimumDistance)Y=$.GS.minimumDistance}else if(Y>-$.GS.minimumDistance)Y=-$.GS.minimumDistance}let w=J1($,U,J)-J1($,H,X),V=Y-w;if(N1($,U,J,V),j1($,U,J),$.GS.rp1=$.GS.rp0,$.GS.rp2=J,q)$.GS.rp0=J}function D9($,Q){let Z=Q?$.zp0:$.zp1,J=Q?$.GS.rp1:$.GS.rp2;if(J<0||J>=Z.nPoints){$.error=`SHP: invalid reference point ${J}`;return}let q=B1($,Z,J),W=J1($,Z,J)-q,H=$.zp2,U=$.GS.loop;$.GS.loop=1;for(let X=0;X<U;X++){let N=$.stack[--$.stackTop];if(N<0||N>=H.nPoints){$.error=`SHP: invalid point ${N}`;return}N1($,H,N,W),j1($,H,N)}}function M9($,Q){let Z=$.stack[--$.stackTop],J=Q?$.zp0:$.zp1,q=Q?$.GS.rp1:$.GS.rp2;if(q<0||q>=J.nPoints){$.error=`SHC: invalid reference point ${q}`;return}let K=$.zp2;if(Z<0||Z>=K.nContours){$.error=`SHC: invalid contour ${Z}`;return}let W=B1($,J,q),U=J1($,J,q)-W,X=Z===0?0:K.contours[Z-1]+1,N=K.contours[Z];for(let _=X;_<=N;_++){if(K===J&&_===q)continue;N1($,K,_,U),j1($,K,_)}}function F9($,Q){let Z=$.stack[--$.stackTop],J=Q?$.zp0:$.zp1,q=Q?$.GS.rp1:$.GS.rp2;if(q<0||q>=J.nPoints){$.error=`SHZ: invalid reference point ${q}`;return}let K=Z===0?$.twilight:$.pts,W=B1($,J,q),U=J1($,J,q)-W;for(let X=0;X<K.nPoints;X++){if(K===J&&X===q)continue;N1($,K,X,U)}}function d$($){let Q=$.stack[--$.stackTop],Z=$.zp2,J=$.GS.loop;$.GS.loop=1;for(let q=0;q<J;q++){let K=$.stack[--$.stackTop];if(K<0||K>=Z.nPoints){$.error=`SHPIX: invalid point ${K}`;return}N1($,Z,K,Q),j1($,Z,K)}}function n$($){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 J=B1($,$.zp0,Q),q=B1($,$.zp1,Z),K=J1($,$.zp0,Q),W=J1($,$.zp1,Z),H=q-J,U=W-K,X=$.zp2,N=$.GS.loop;$.GS.loop=1;for(let _=0;_<N;_++){let j=$.stack[--$.stackTop];if(j<0||j>=X.nPoints){$.error=`IP: invalid point ${j}`;return}let Y=B1($,X,j),w=J1($,X,j),V;if(H!==0){let z=Y-J;V=K+Math.round(z*U/H)}else V=w+(K-J);N1($,X,j,V-w),j1($,X,j)}}function i$($){let Q=$.GS.rp0;if(Q<0||Q>=$.zp0.nPoints){$.error=`ALIGNRP: invalid rp0 ${Q}`;return}let Z=J1($,$.zp0,Q),J=$.zp1,q=$.GS.loop;$.GS.loop=1;for(let K=0;K<q;K++){let W=$.stack[--$.stackTop];if(W<0||W>=J.nPoints){$.error=`ALIGNRP: invalid point ${W}`;return}let H=J1($,J,W),U=Z-H;N1($,J,W,U),j1($,J,W)}}function L9($,Q){let Z=$.stack[--$.stackTop],J=$.stack[--$.stackTop],q=$.zp0,K=$.zp1;if(J<0||J>=K.nPoints){$.error=`MSIRP: invalid point ${J}`;return}let W=$.GS.rp0;if(W<0||W>=q.nPoints){$.error=`MSIRP: invalid rp0 ${W}`;return}let H=J1($,K,J)-J1($,q,W),U=Z-H;if(N1($,K,J,U),j1($,K,J),$.GS.rp1=$.GS.rp0,$.GS.rp2=J,Q)$.GS.rp0=J}function p$($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop],J=$.stack[--$.stackTop],q=$.stack[--$.stackTop],K=$.stack[--$.stackTop],W=$.zp0,H=$.zp1,U=$.zp2;if(q<0||q>=W.nPoints||J<0||J>=W.nPoints){$.error="ISECT: invalid line A points";return}if(Z<0||Z>=H.nPoints||Q<0||Q>=H.nPoints){$.error="ISECT: invalid line B points";return}if(K<0||K>=U.nPoints){$.error=`ISECT: invalid point ${K}`;return}let X=W.cur[q],N=W.cur[J],_=H.cur[Z],j=H.cur[Q],Y=N.x-X.x,w=N.y-X.y,V=j.x-_.x,z=j.y-_.y,E=Y*z-w*V,G=U.cur[K];if(E===0)G.x=X.x+N.x+_.x+j.x>>2,G.y=X.y+N.y+_.y+j.y>>2;else{let B=_.x-X.x,D=_.y-X.y,S=(B*z-D*V)/E;G.x=Math.round(X.x+S*Y),G.y=Math.round(X.y+S*w)}U.tags[K]|=3}function o$($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop],J=$.zp0,q=$.zp1;if(Z<0||Z>=J.nPoints){$.error=`ALIGNPTS: invalid point ${Z}`;return}if(Q<0||Q>=q.nPoints){$.error=`ALIGNPTS: invalid point ${Q}`;return}let K=J1($,J,Z),W=J1($,q,Q),H=K+W>>1;N1($,J,Z,H-K),N1($,q,Q,H-W),j1($,J,Z),j1($,q,Q)}function R9($,Q){let Z=$.stack[--$.stackTop],J=$.zp2;if(Z<0||Z>=J.nPoints){$.error=`GC: invalid point ${Z}`,$.stack[$.stackTop++]=0;return}let q=Q?B1($,J,Z):J1($,J,Z);$.stack[$.stackTop++]=q}function s$($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop],J=$.zp2;if(Z<0||Z>=J.nPoints){$.error=`SCFS: invalid point ${Z}`;return}let q=J1($,J,Z);N1($,J,Z,Q-q),j1($,J,Z)}function P9($,Q){let Z=$.stack[--$.stackTop],J=$.stack[--$.stackTop],q=$.zp0,K=$.zp1;if(J<0||J>=q.nPoints){$.error=`MD: invalid point ${J}`,$.stack[$.stackTop++]=0;return}if(Z<0||Z>=K.nPoints){$.error=`MD: invalid point ${Z}`,$.stack[$.stackTop++]=0;return}let W;if(Q)W=B1($,K,Z)-B1($,q,J);else W=J1($,K,Z)-J1($,q,J);$.stack[$.stackTop++]=W}function c$($){$.stack[$.stackTop++]=$.ppem}function a$($){$.stack[$.stackTop++]=$.pointSize}function r$($){let Q=$.pts,Z=$.GS.loop;$.GS.loop=1;for(let J=0;J<Z;J++){let q=$.stack[--$.stackTop];if(q<0||q>=Q.nPoints){$.error=`FLIPPT: invalid point ${q}`;return}Q.tags[q]^=1}}function t$($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop],J=$.pts;if(Z<0||Q>=J.nPoints||Z>Q){$.error=`FLIPRGON: invalid range ${Z}-${Q}`;return}for(let q=Z;q<=Q;q++)J.tags[q]|=1}function e$($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop],J=$.pts;if(Z<0||Q>=J.nPoints||Z>Q){$.error=`FLIPRGOFF: invalid range ${Z}-${Q}`;return}for(let q=Z;q<=Q;q++)J.tags[q]&=-2}function I6($,Q){let Z=$.stack[--$.stackTop],J=$6(Z,$.GS);$.stack[$.stackTop++]=N6(Z,J,$.GS)}function v6($,Q){let Z=$.stack[--$.stackTop],J=$6(Z,$.GS);$.stack[$.stackTop++]=Z+J}function $Q($){T9($,0)}function QQ($){T9($,16)}function ZQ($){T9($,32)}function T9($,Q){let Z=$.stack[--$.stackTop];if(Z<0){$.error=`DELTAP: invalid count ${Z}`;return}let J=$.zp0;for(let q=0;q<Z;q++){let K=$.stack[--$.stackTop],W=$.stack[--$.stackTop];if(W<0||W>=J.nPoints){$.error=`DELTAP: invalid point ${W}`;return}let H=(K>>4&15)+$.GS.deltaBase+Q,U=K&15;if(H!==$.ppem)continue;let X;if(U<8)X=U+1<<6-$.GS.deltaShift;else X=-(U-7<<6-$.GS.deltaShift);N1($,J,W,X),j1($,J,W)}}function JQ($){O9($,0)}function qQ($){O9($,16)}function KQ($){O9($,32)}function O9($,Q){let Z=$.stack[--$.stackTop];if(Z<0){$.error=`DELTAC: invalid count ${Z}`;return}for(let J=0;J<Z;J++){let q=$.stack[--$.stackTop],K=$.stack[--$.stackTop];if(K<0||K>=$.cvtSize){$.error=`DELTAC: invalid CVT index ${K}`;return}let W=(q>>4&15)+$.GS.deltaBase+Q,H=q&15;if(W!==$.ppem)continue;let U;if(H<8)U=H+1<<6-$.GS.deltaShift;else U=-(H-7<<6-$.GS.deltaShift);$.cvt[K]+=U}}function I9($,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 v9($,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 k9($,Q){if(Q===0)$.GS.freeVector={x:0,y:16384};else $.GS.freeVector={x:16384,y:0}}function C9($,Q,Z,J,q){let K=J===0?$.twilight:$.pts,W=q===0?$.twilight:$.pts,H=K.cur[Q],U=W.cur[Z];if(!H||!U)return{x:16384,y:0};let X=U.x-H.x,N=U.y-H.y,_=Math.sqrt(X*X+N*N);if(_===0)return{x:16384,y:0};return{x:Math.round(X/_*16384),y:Math.round(N/_*16384)}}function S9($,Q){let Z=$.stack[--$.stackTop],J=$.stack[--$.stackTop],q=C9($,J,Z,$.GS.gep1,$.GS.gep2);if(Q){let K=q.x;q.x=q.y,q.y=-K}$.GS.projVector=q,$.GS.dualVector=q}function h9($,Q){let Z=$.stack[--$.stackTop],J=$.stack[--$.stackTop],q=C9($,J,Z,$.GS.gep1,$.GS.gep2);if(Q){let K=q.x;q.x=q.y,q.y=-K}$.GS.freeVector=q}function m9($,Q){let Z=$.stack[--$.stackTop],J=$.stack[--$.stackTop],q=C9($,J,Z,$.GS.gep1,$.GS.gep2);if(Q){let K=q.x;q.x=q.y,q.y=-K}$.GS.dualVector=q}function WQ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop],J=Math.sqrt(Z*Z+Q*Q);if(J===0)$.GS.projVector={x:16384,y:0};else $.GS.projVector={x:Math.round(Z/J*16384),y:Math.round(Q/J*16384)};$.GS.dualVector={...$.GS.projVector}}function HQ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop],J=Math.sqrt(Z*Z+Q*Q);if(J===0)$.GS.freeVector={x:16384,y:0};else $.GS.freeVector={x:Math.round(Z/J*16384),y:Math.round(Q/J*16384)}}function UQ($){$.stack[$.stackTop++]=$.GS.projVector.x,$.stack[$.stackTop++]=$.GS.projVector.y}function XQ($){$.stack[$.stackTop++]=$.GS.freeVector.x,$.stack[$.stackTop++]=$.GS.freeVector.y}function NQ($){$.GS.freeVector={...$.GS.projVector}}function _Q($){$.GS.rp0=$.stack[--$.stackTop]}function jQ($){$.GS.rp1=$.stack[--$.stackTop]}function wQ($){$.GS.rp2=$.stack[--$.stackTop]}function YQ($){let Q=$.stack[--$.stackTop];if(Q!==0&&Q!==1){$.error=`SZP0: invalid zone ${Q}`;return}$.GS.gep0=Q,$.zp0=Q===0?$.twilight:$.pts}function VQ($){let Q=$.stack[--$.stackTop];if(Q!==0&&Q!==1){$.error=`SZP1: invalid zone ${Q}`;return}$.GS.gep1=Q,$.zp1=Q===0?$.twilight:$.pts}function zQ($){let Q=$.stack[--$.stackTop];if(Q!==0&&Q!==1){$.error=`SZP2: invalid zone ${Q}`;return}$.GS.gep2=Q,$.zp2=Q===0?$.twilight:$.pts}function EQ($){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 GQ($){let Q=$.stack[--$.stackTop];if(Q<=0){$.error=`SLOOP: invalid count ${Q}`;return}$.GS.loop=Q}function AQ($){$.GS.minimumDistance=$.stack[--$.stackTop]}function BQ($){$.GS.controlValueCutIn=$.stack[--$.stackTop]}function DQ($){$.GS.singleWidthCutIn=$.stack[--$.stackTop]}function MQ($){$.GS.singleWidthValue=$.stack[--$.stackTop]}function FQ($){$.GS.deltaBase=$.stack[--$.stackTop]}function LQ($){$.GS.deltaShift=$.stack[--$.stackTop]}function RQ($){$.GS.roundState=1}function PQ($){$.GS.roundState=0}function TQ($){$.GS.roundState=2}function OQ($){$.GS.roundState=3}function IQ($){$.GS.roundState=4}function vQ($){$.GS.roundState=5}function kQ($){let Q=$.stack[--$.stackTop];G9(Q,$.GS),$.GS.roundState=6}function CQ($){let Q=$.stack[--$.stackTop];G9(Q,$.GS),$.GS.roundState=7}function SQ($){$.GS.autoFlip=!0}function hQ($){$.GS.autoFlip=!1}function mQ($){$.GS.scanControl=$.stack[--$.stackTop]}function yQ($){$.GS.scanType=$.stack[--$.stackTop]}function bQ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop];if(Q===1||Q===2)if(Z)$.GS.instructControl|=Q;else $.GS.instructControl&=~Q}function gQ($){let Q=$.stack[--$.stackTop],Z=0;if(Q&1)Z|=35;if(Q&32)Z|=4096;$.stack[$.stackTop++]=Z}function xQ($){let Q=$.stack[--$.stackTop];if(Q<0||Q>=$.storageSize){$.error=`RS: invalid index ${Q}`,$.stack[$.stackTop++]=0;return}$.stack[$.stackTop++]=$.storage[Q]}function uQ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop];if(Z<0||Z>=$.storageSize){$.error=`WS: invalid index ${Z}`;return}$.storage[Z]=Q}function fQ($){let Q=$.stack[--$.stackTop];if(Q<0||Q>=$.cvtSize){$.error=`RCVT: invalid index ${Q}`,$.stack[$.stackTop++]=0;return}$.stack[$.stackTop++]=$.cvt[Q]}function lQ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop];if(Z<0||Z>=$.cvtSize){$.error=`WCVTP: invalid index ${Z}`;return}$.cvt[Z]=Q}function dQ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop];if(Z<0||Z>=$.cvtSize){$.error=`WCVTF: invalid index ${Z}`;return}$.cvt[Z]=Math.round(Q*$.scale)}function nQ($){let Q=$.stack[--$.stackTop],Z=$.zp0;if(Q<0||Q>=Z.nPoints){$.error=`UTP: invalid point ${Q}`;return}let J=$.GS.freeVector;if(J.y!==0)Z.tags[Q]&=~2;if(J.x!==0)Z.tags[Q]&=~1}function pQ($){sQ($,1,!0)}function oQ($){sQ($,2,!1)}function sQ($,Q,Z){let J=$.pts,q=J.nPoints,K=J.nContours;if(q===0||K===0)return;let W=0;for(let H=0;H<K;H++){let U=J.contours[H],X=-1;for(let Y=W;Y<=U;Y++)if(J.tags[Y]&Q){X=Y;break}if(X<0){W=U+1;continue}let N=X,_=X+1,j=!1;while(!0){if(_>U){if(j)break;_=W,j=!0}if(_===X&&j){if(N!==X)iQ(J,N,X,W,U,Z);break}if(J.tags[_]&Q){if(N!==_)iQ(J,N,_,W,U,Z);N=_}_++}W=U+1}}function iQ($,Q,Z,J,q,K){let W=K?$.org[Q]?.x:$.org[Q]?.y,H=K?$.org[Z]?.x:$.org[Z]?.y,U=K?$.cur[Q]?.x:$.cur[Q]?.y,X=K?$.cur[Z]?.x:$.cur[Z]?.y,N,_,j,Y;if(W<=H)N=W,_=H,j=U,Y=X;else N=H,_=W,j=X,Y=U;let w=_-N,V=Y-j,z=Q+1;if(z>q)z=J;while(z!==Z){let E=K?$.org[z]?.x:$.org[z]?.y,G;if(E<=N)G=(K?$.cur[z]?.x:$.cur[z]?.y)+(j-N);else if(E>=_)G=(K?$.cur[z]?.x:$.cur[z]?.y)+(Y-_);else if(w!==0){let B=E-N;G=j+Math.round(B*V/w)}else G=j;if(K)$.cur[z].x=G;else $.cur[z].y=G;if(z++,z>q)z=J}}function cQ($){let Q=$.stack[$.stackTop-1];$.stack[$.stackTop++]=Q}function aQ($){$.stackTop--}function rQ($){$.stackTop=0}function tQ($){let Q=$.stack[$.stackTop-1],Z=$.stack[$.stackTop-2];$.stack[$.stackTop-1]=Z,$.stack[$.stackTop-2]=Q}function eQ($){let Q=$.stackTop;$.stack[$.stackTop++]=Q}function $4($){let Q=$.stack[--$.stackTop];if(Q<=0||Q>$.stackTop){$.error=`CINDEX: invalid index ${Q}`;return}$.stack[$.stackTop++]=$.stack[$.stackTop-Q]}function Q4($){let Q=$.stack[--$.stackTop];if(Q<=0||Q>$.stackTop){$.error=`MINDEX: invalid index ${Q}`;return}let Z=$.stack[$.stackTop-Q];for(let J=$.stackTop-Q;J<$.stackTop-1;J++)$.stack[J]=$.stack[J+1];$.stack[$.stackTop-1]=Z}function Z4($){let Q=$.stack[$.stackTop-1],Z=$.stack[$.stackTop-2],J=$.stack[$.stackTop-3];$.stack[$.stackTop-1]=J,$.stack[$.stackTop-2]=Q,$.stack[$.stackTop-3]=Z}function y9($,Q){for(let Z=0;Z<Q;Z++)$.stack[$.stackTop++]=$.code[$.IP++]}function b9($,Q){for(let Z=0;Z<Q;Z++){let J=$.code[$.IP++],q=$.code[$.IP++],K=J<<8|q;if(K>=32768)K-=65536;$.stack[$.stackTop++]=K}}function J4($){let Q=$.code[$.IP++];y9($,Q)}function q4($){let Q=$.code[$.IP++];b9($,Q)}function tK($){while($.IP<$.codeSize&&$.error===null){if(++$.instructionCount>$.maxInstructions){$.error="Instruction limit exceeded (possible infinite loop)";return}let Q=$.code[$.IP++];$.opcode=Q,eK($,Q)}}function eK($,Q){if(Q>=176&&Q<=183){y9($,Q-176+1);return}if(Q>=184&&Q<=191){b9($,Q-184+1);return}if(Q>=192&&Q<=223){f$($,Q&31);return}if(Q>=224&&Q<=255){l$($,Q&31);return}switch(Q){case A.SVTCA_Y:I9($,0);break;case A.SVTCA_X:I9($,1);break;case A.SPVTCA_Y:v9($,0);break;case A.SPVTCA_X:v9($,1);break;case A.SFVTCA_Y:k9($,0);break;case A.SFVTCA_X:k9($,1);break;case A.SPVTL_0:S9($,!1);break;case A.SPVTL_1:S9($,!0);break;case A.SFVTL_0:h9($,!1);break;case A.SFVTL_1:h9($,!0);break;case A.SDPVTL_0:m9($,!1);break;case A.SDPVTL_1:m9($,!0);break;case A.SPVFS:WQ($);break;case A.SFVFS:HQ($);break;case A.GPV:UQ($);break;case A.GFV:XQ($);break;case A.SFVTPV:NQ($);break;case A.ISECT:p$($);break;case A.SRP0:_Q($);break;case A.SRP1:jQ($);break;case A.SRP2:wQ($);break;case A.SZP0:YQ($);break;case A.SZP1:VQ($);break;case A.SZP2:zQ($);break;case A.SZPS:EQ($);break;case A.SLOOP:GQ($);break;case A.RTG:RQ($);break;case A.RTHG:PQ($);break;case A.SMD:AQ($);break;case A.ELSE:O$($);break;case A.JMPR:v$($);break;case A.SCVTCI:BQ($);break;case A.SSWCI:DQ($);break;case A.SSW:MQ($);break;case A.DUP:cQ($);break;case A.POP:aQ($);break;case A.CLEAR:rQ($);break;case A.SWAP:tQ($);break;case A.DEPTH:eQ($);break;case A.CINDEX:$4($);break;case A.MINDEX:Q4($);break;case A.ROLL:Z4($);break;case A.FDEF:S$($);break;case A.ENDF:h$($);break;case A.CALL:m$($);break;case A.LOOPCALL:y$($);break;case A.MDAP_0:A9($,!1);break;case A.MDAP_1:A9($,!0);break;case A.IUP_Y:oQ($);break;case A.IUP_X:pQ($);break;case A.SHP_0:D9($,!1);break;case A.SHP_1:D9($,!0);break;case A.SHC_0:M9($,!1);break;case A.SHC_1:M9($,!0);break;case A.SHZ_0:F9($,!1);break;case A.SHZ_1:F9($,!0);break;case A.SHPIX:d$($);break;case A.IP:n$($);break;case A.MSIRP_0:L9($,!1);break;case A.MSIRP_1:L9($,!0);break;case A.ALIGNRP:i$($);break;case A.ALIGNPTS:o$($);break;case A.UTP:nQ($);break;case A.RTDG:TQ($);break;case A.MIAP_0:B9($,!1);break;case A.MIAP_1:B9($,!0);break;case A.NPUSHB:J4($);break;case A.NPUSHW:q4($);break;case A.WS:uQ($);break;case A.RS:xQ($);break;case A.WCVTP:lQ($);break;case A.RCVT:fQ($);break;case A.GC_0:R9($,!1);break;case A.GC_1:R9($,!0);break;case A.SCFS:s$($);break;case A.MD_0:P9($,!1);break;case A.MD_1:P9($,!0);break;case A.MPPEM:c$($);break;case A.MPS:a$($);break;case A.FLIPON:SQ($);break;case A.FLIPOFF:hQ($);break;case A.DEBUG:break;case A.LT:z$($);break;case A.LTEQ:E$($);break;case A.GT:G$($);break;case A.GTEQ:A$($);break;case A.EQ:B$($);break;case A.NEQ:D$($);break;case A.ODD:M$($);break;case A.EVEN:F$($);break;case A.IF:T$($);break;case A.EIF:I$($);break;case A.AND:L$($);break;case A.OR:R$($);break;case A.NOT:P$($);break;case A.DELTAP1:$Q($);break;case A.SDB:FQ($);break;case A.SDS:LQ($);break;case A.ADD:W$($);break;case A.SUB:H$($);break;case A.DIV:U$($);break;case A.MUL:X$($);break;case A.ABS:N$($);break;case A.NEG:_$($);break;case A.FLOOR:j$($);break;case A.CEILING:w$($);break;case A.ROUND_0:I6($,0);break;case A.ROUND_1:I6($,1);break;case A.ROUND_2:I6($,2);break;case A.ROUND_3:I6($,3);break;case A.NROUND_0:v6($,0);break;case A.NROUND_1:v6($,1);break;case A.NROUND_2:v6($,2);break;case A.NROUND_3:v6($,3);break;case A.WCVTF:dQ($);break;case A.DELTAP2:QQ($);break;case A.DELTAP3:ZQ($);break;case A.DELTAC1:JQ($);break;case A.DELTAC2:qQ($);break;case A.DELTAC3:KQ($);break;case A.SROUND:kQ($);break;case A.S45ROUND:CQ($);break;case A.JROT:k$($);break;case A.JROF:C$($);break;case A.ROFF:vQ($);break;case A.RUTG:IQ($);break;case A.RDTG:OQ($);break;case A.SANGW:$.stackTop--;break;case A.AA:$.stackTop--;break;case A.FLIPPT:r$($);break;case A.FLIPRGON:t$($);break;case A.FLIPRGOFF:e$($);break;case A.SCANCTRL:mQ($);break;case A.SCANTYPE:yQ($);break;case A.MAX:Y$($);break;case A.MIN:V$($);break;case A.GETINFO:gQ($);break;case A.IDEF:b$($);break;case A.INSTCTRL:bQ($);break;default:if(Q<$.maxIDefs&&$.IDefs[Q]?.active){let Z=$.IDefs[Q];if($.callStackTop>=$.maxCallStack){$.error="IDEF call: call stack overflow";return}let J=$.callStack[$.callStackTop++];J.callerIP=$.IP,J.callerRange=$.currentRange,J.def={id:Q,start:Z.start,end:Z.end,active:!0,range:Z.range},J.count=1,$.currentRange=Z.range;let q=$.codeRanges.get($.currentRange);if(q)$.code=q.code,$.codeSize=q.size;$.IP=Z.start}else $.error=`Unknown opcode 0x${Q.toString(16)}`}}function X8($,Q,Z){$.codeRanges.set(Q,{code:Z,size:Z.length})}function g9($,Q){let Z=$.codeRanges.get(Q);if(!Z)return;$.currentRange=Q,$.code=Z.code,$.codeSize=Z.size,$.IP=0,$.instructionCount=0,tK($)}function K4($){g9($,1)}function W4($){$.GS={...$.defaultGS},g9($,2),$.defaultGS={...$.GS}}function H4($,Q){$.GS={...$.defaultGS},$.zp0=$.pts,$.zp1=$.pts,$.zp2=$.pts,X8($,3,Q),g9($,3)}function U4($,Q=256,Z=64,J=64,q=16,K){let W=g$(Q,Z,J,J,32,q);if(K)W.cvt=new Int32Array(K),W.cvtSize=K.length;return{ctx:W,unitsPerEM:$,fpgmExecuted:!1,currentPpem:0}}function X4($,Q){X8($.ctx,1,Q)}function N4($,Q){X8($.ctx,2,Q)}function $W($){if($.fpgmExecuted)return null;return $.ctx.error=null,K4($.ctx),$.fpgmExecuted=!0,$.ctx.error}function _4($,Q,Z){if(!$.fpgmExecuted){let J=$W($);if(J)return J}if($.currentPpem===Q)return null;return $.ctx.scale=Q*64/$.unitsPerEM,$.ctx.ppem=Q,$.ctx.pointSize=Z,QW($.ctx),$.ctx.error=null,W4($.ctx),$.currentPpem=Q,$.ctx.error}function QW($){for(let Q=0;Q<$.cvtSize;Q++)$.cvt[Q]=Math.round($.cvt[Q]*$.scale)}function j4($,Q){let Z=$.ctx,J=Q.xCoords.length,q=Q.contourEnds.length,K=J+4,W=e1(K,q);W.nPoints=K,W.nContours=q;for(let w=0;w<J;w++){let V=Math.round(Q.xCoords[w]*Z.scale),z=Math.round(Q.yCoords[w]*Z.scale);W.org[w].x=V,W.org[w].y=z,W.cur[w].x=V,W.cur[w].y=z,W.orus[w].x=Q.xCoords[w],W.orus[w].y=Q.yCoords[w],W.tags[w]=Q.flags[w]}let H=1/0;for(let w=0;w<J;w++)if(Q.xCoords[w]<H)H=Q.xCoords[w];if(!Number.isFinite(H))H=0;let U=Q.lsb??0,X=Q.advanceWidth??0,N=Math.round((H-U)*Z.scale);W.org[J].x=N,W.org[J].y=0,W.cur[J].x=N,W.cur[J].y=0,W.orus[J].x=H-U,W.orus[J].y=0,W.tags[J]=0;let _=Math.round((H-U+X)*Z.scale);W.org[J+1].x=_,W.org[J+1].y=0,W.cur[J+1].x=_,W.cur[J+1].y=0,W.orus[J+1].x=H-U+X,W.orus[J+1].y=0,W.tags[J+1]=0;for(let w=J+2;w<K;w++)W.org[w].x=0,W.org[w].y=0,W.cur[w].x=0,W.cur[w].y=0,W.orus[w].x=0,W.orus[w].y=0,W.tags[w]=0;for(let w=0;w<q;w++)W.contours[w]=Q.contourEnds[w];Z.pts=W,Z.zp0=W,Z.zp1=W,Z.zp2=W,Z.twilight.nPoints=Z.twilight.org.length;for(let w=0;w<Z.twilight.nPoints;w++)Z.twilight.org[w].x=0,Z.twilight.org[w].y=0,Z.twilight.cur[w].x=0,Z.twilight.cur[w].y=0,Z.twilight.tags[w]=0;if(Z.error=null,Q.instructions.length>0)H4(Z,Q.instructions);let j=Array(J),Y=Array(J);for(let w=0;w<J;w++)j[w]=W.cur[w]?.x,Y[w]=W.cur[w]?.y;return{xCoords:j,yCoords:Y,flags:Q.flags,contourEnds:Q.contourEnds,error:Z.error}}function x9($){if($.length===0)return[];let Q=[];if($.some((J)=>J.cubic))return ZW($);return JW($)}function ZW($){if($.length===0)return[];let Q=[],Z=0,J=$[0];if(!J)return[];Q.push({type:"M",x:J.x,y:J.y}),Z=1;while(Z<$.length){let q=$[Z];if(!q)break;if(q.onCurve)Q.push({type:"L",x:q.x,y:q.y}),Z++;else if(q.cubic){let K=q,W=$[Z+1],H=$[Z+2];if(!W||!H){Z++;continue}Q.push({type:"C",x1:K.x,y1:K.y,x2:W.x,y2:W.y,x:H.x,y:H.y}),Z+=3}else{let K=q,W=$[Z+1];if(!W){Z++;continue}let H;if(W.onCurve)H=W,Z+=2;else H={x:(K.x+W.x)/2,y:(K.y+W.y)/2,onCurve:!0},Z++;Q.push({type:"Q",x1:K.x,y1:K.y,x:H.x,y:H.y})}}return Q.push({type:"Z"}),Q}function JW($){if($.length===0)return[];let Q=[],Z=0;for(let[X,N]of $.entries())if(N.onCurve){Z=X;break}let J=$.every((X)=>!X.onCurve),q;if(J){let X=$[0],N=$[$.length-1];if(!X||!N)return[];q={x:(X.x+N.x)/2,y:(X.y+N.y)/2,onCurve:!0},Z=0}else{let X=$[Z];if(!X)return[];q=X}Q.push({type:"M",x:q.x,y:q.y});let K=$.length,W=J?0:(Z+1)%K,H=q,U=0;while(U<K){let X=$[W];if(!X)break;if(X.onCurve)Q.push({type:"L",x:X.x,y:X.y}),H=X;else{let N=(W+1)%K,_=$[N];if(!_)break;let j;if(_.onCurve)j=_,W=N,U++;else j={x:(X.x+_.x)/2,y:(X.y+_.y)/2,onCurve:!0};Q.push({type:"Q",x1:X.x,y1:X.y,x:j.x,y:j.y}),H=j}if(W=(W+1)%K,U++,H.x===q.x&&H.y===q.y)break}return Q.push({type:"Z"}),Q}function p1($,Q){let Z=$.getGlyphContours(Q);if(!Z)return null;let J=[];for(let K of Z)J.push(...x9(K));let q=$.getGlyphBounds(Q);return{commands:J,bounds:q}}function N8($,Q){let Z=Q?.scale??1,J=Q?.flipY??!0,q=[];for(let K of $.commands)switch(K.type){case"M":q.push(`M ${K.x*Z} ${J?-K.y*Z:K.y*Z}`);break;case"L":q.push(`L ${K.x*Z} ${J?-K.y*Z:K.y*Z}`);break;case"Q":q.push(`Q ${K.x1*Z} ${J?-K.y1*Z:K.y1*Z} ${K.x*Z} ${J?-K.y*Z:K.y*Z}`);break;case"C":q.push(`C ${K.x1*Z} ${J?-K.y1*Z:K.y1*Z} ${K.x2*Z} ${J?-K.y2*Z:K.y2*Z} ${K.x*Z} ${J?-K.y*Z:K.y*Z}`);break;case"Z":q.push("Z");break}return q.join(" ")}function _8($,Q,Z){let J=Z?.scale??1,q=Z?.flipY??!0,K=Z?.offsetX??0,W=Z?.offsetY??0;for(let H of Q.commands)switch(H.type){case"M":$.moveTo(H.x*J+K,(q?-H.y:H.y)*J+W);break;case"L":$.lineTo(H.x*J+K,(q?-H.y:H.y)*J+W);break;case"Q":$.quadraticCurveTo(H.x1*J+K,(q?-H.y1:H.y1)*J+W,H.x*J+K,(q?-H.y:H.y)*J+W);break;case"C":$.bezierCurveTo(H.x1*J+K,(q?-H.y1:H.y1)*J+W,H.x2*J+K,(q?-H.y2:H.y2)*J+W,H.x*J+K,(q?-H.y:H.y)*J+W);break;case"Z":$.closePath();break}}function qW($,Q,Z){let J=p1($,Q);if(!J)return null;let q=Z?.fontSize??100,K=Z?.fill??"currentColor",W=q/$.unitsPerEm,H=J.bounds;if(!H)return null;let U=Math.ceil((H.xMax-H.xMin)*W),X=Math.ceil((H.yMax-H.yMin)*W),N=`${H.xMin} ${-H.yMax} ${H.xMax-H.xMin} ${H.yMax-H.yMin}`,_=N8(J,{flipY:!0,scale:1});return`<svg xmlns="http://www.w3.org/2000/svg" width="${U}" height="${X}" viewBox="${N}">
|
|
4
|
-
<path d="${
|
|
5
|
-
</svg>`}function
|
|
6
|
-
<path d="${
|
|
7
|
-
</svg>`}function
|
|
8
|
-
<path d="${
|
|
9
|
-
</svg>`}function NW($,Q,Z){let J=Z/Q.unitsPerEm,q=0;for(let K of $)q+=K.xAdvance;return q*J}function _W($,Q){let Z=new Path2D;return _8(Z,$,Q),Z}var K1=8,Z1=256;function y1($){return $>>8}function _6($){return $&255}function b1($){return $<0?-$:$}var jW=2048,w4=2147483647;class j8 extends Error{constructor(){super("Cell pool overflow");this.name="PoolOverflowError"}}class f9{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($=jW){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=w4,this.pool[this.nullCellIndex].next=-1,this.ycells=[],this.freeIndex=0,this.bandMinY=-1e4,this.bandMaxY=1e4}setClip($,Q,Z,J){this.clipMinX=$,this.clipMinY=Q,this.clipMaxX=Z,this.clipMaxY=J}setBandBounds($,Q){this.bandMinY=$,this.bandMaxY=Q,this.bandSet=!0;let Z=Q-$;if(this.ycells.length<Z)this.ycells=Array(Z);for(let J=0;J<Z;J++)this.ycells[J]=this.nullCellIndex;this.freeIndex=0}reset(){if(this.freeIndex=0,this.pool[this.nullCellIndex].x=w4,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=y1($),J=y1(Q);if(this.currentCellIndex>=0&&this.currentX===Z&&this.currentY===J)return;if(J<this.bandMinY||J>=this.bandMaxY||Z<this.clipMinX||Z>=this.clipMaxX){this.currentCellIndex=this.nullCellIndex,this.currentX=Z,this.currentY=J;return}this.currentX=Z,this.currentY=J,this.currentCellIndex=this.findOrCreateCell(Z,J),this.minY=Math.min(this.minY,J),this.maxY=Math.max(this.maxY,J),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 J=-1,q=this.ycells[Z];while(q!==this.nullCellIndex){let H=this.pool[q];if(H.x===$)return q;if(H.x>$)break;J=q,q=H.next}if(this.freeIndex>=this.nullCellIndex)throw new j8;let K=this.freeIndex++,W=this.pool[K];if(W.x=$,W.area=0,W.cover=0,W.next=q,J===-1)this.ycells[Z]=K;else this.pool[J].next=K;return K}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 J=0;J<Q;J++)Z[J]=this.nullCellIndex;for(let J=0;J<this.ycells.length;J++)Z[Q+J]=this.ycells[J];this.ycells=Z,this.bandMinY=$}else if($>=this.bandMaxY){let Q=$+1,Z=this.ycells.length,J=Q-this.bandMinY;if(J>Z){let q=Array(J);for(let K=0;K<Z;K++)q[K]=this.ycells[K];for(let K=Z;K<J;K++)q[K]=this.nullCellIndex;this.ycells=q}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=[],J=this.ycells[Q];while(J!==this.nullCellIndex)Z.push(this.pool[J]),J=this.pool[J]?.next;return Z}*iterateCells(){for(let $=0;$<this.ycells.length;$++){let Q=this.bandMinY+$,Z=this.ycells[$];if(Z===this.nullCellIndex)continue;let J=[];while(Z!==this.nullCellIndex)J.push(this.pool[Z]),Z=this.pool[Z]?.next;if(J.length>0)yield{y:Q,cells:J}}}*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}}var k6;((q)=>{q[q.Mono=0]="Mono";q[q.Gray=1]="Gray";q[q.LCD=2]="LCD";q[q.LCD_V=3]="LCD_V"})(k6||={});var j6;((Z)=>{Z[Z.NonZero=0]="NonZero";Z[Z.EvenOdd=1]="EvenOdd"})(j6||={});function k1($,Q,Z=1){let J;switch(Z){case 0:J=0.125;break;case 1:J=1;break;case 2:case 3:J=3;break}let q=Z===0?Math.ceil($/8):$*J;return{buffer:new Uint8Array(q*Q),width:$,rows:Q,pitch:q,pixelMode:Z,numGrays:Z===0?2:256}}function Y4($){$.buffer.fill(0)}var wW=32,V4=16;class C6{cells;x=0;y=0;minX=0;minY=0;maxX=0;maxY=0;constructor(){this.cells=new f9}setClip($,Q,Z,J){this.minX=$,this.minY=Q,this.maxX=Z,this.maxY=J,this.cells.setClip($,Q,Z,J)}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=y1(this.y),J=y1(Q);if(Z>=this.maxY&&J>=this.maxY||Z<this.minY&&J<this.minY)return;let q=_6(this.y),K=_6(Q);if(Z===J){this.renderScanline(Z,this.x,q,$,K);return}let W=$-this.x,H=Q-this.y;if(W===0){let w=y1(this.x),V=_6(this.x)*2,z,E;if(H>0)z=Z1,E=1;else z=0,E=-1;let G=z-q;this.cells.setCurrentCell(this.x,Z<<K1),this.cells.addArea(G*V,G),Z+=E,this.cells.setCurrentCell(this.x,Z<<K1),G=z+z-Z1;while(Z!==J)this.cells.addArea(G*V,G),Z+=E,this.cells.setCurrentCell(this.x,Z<<K1);G=K-Z1+z,this.cells.addArea(G*V,G);return}let U=this.x,X,N;if(H>0)N=Z1,X=1;else N=0,X=-1;let _=N-q,j=this.mulDiv(W,_,b1(H)),Y=U+j;if(this.renderScanline(Z,U,q,Y,N),U=Y,Z+=X,this.cells.setCurrentCell(U,Z<<K1),Z!==J){let w=this.mulDiv(W,Z1,b1(H));_=N+N-Z1;while(Z!==J)Y=U+w,this.renderScanline(Z,U,Z1-N,Y,N),U=Y,Z+=X,this.cells.setCurrentCell(U,Z<<K1)}_=K-Z1+N,this.renderScanline(Z,U,Z1-N,$,K)}renderScanline($,Q,Z,J,q){let K=y1(Q),W=y1(J);if(Z===q){this.cells.setCurrentCell(J,$<<K1);return}let H=_6(Q),U=_6(J);if(K===W){let z=q-Z;this.cells.setCurrentCell(Q,$<<K1),this.cells.addArea(z*(H+U),z);return}let X=J-Q,N=q-Z,_,j;if(X>0)_=Z1,j=1;else _=0,j=-1;let Y=this.mulDiv(N,_-H,b1(X));this.cells.setCurrentCell(Q,$<<K1),this.cells.addArea(Y*(H+_),Y);let w=Z+Y,V=K+j;if(this.cells.setCurrentCell(V<<K1,$<<K1),V!==W){let z=this.mulDiv(N,Z1,b1(X));while(V!==W)Y=z,this.cells.addArea(Y*Z1,Y),w+=Y,V+=j,this.cells.setCurrentCell(V<<K1,$<<K1)}Y=q-w,this.cells.addArea(Y*(U+Z1-_),Y)}mulDiv($,Q,Z){if(Z===0)return 0;return Math.trunc($*Q/Z)}conicTo($,Q,Z,J){let q=this.x,K=this.y,W=$-q,H=Q-K,U=Z-$,X=J-Q,N=Math.sqrt(W*W+H*H)+Math.sqrt(U*U+X*X),_=Math.max(4,Math.ceil(N/(Z1*4)));for(let j=1;j<=_;j++){let Y=j/_,w=1-Y,V=Math.round(w*w*q+2*w*Y*$+Y*Y*Z),z=Math.round(w*w*K+2*w*Y*Q+Y*Y*J);this.renderLine(V,z),this.x=V,this.y=z}this.x=Z,this.y=J}cubicTo($,Q,Z,J,q,K){this.subdivCubic(this.x,this.y,$,Q,Z,J,q,K,0),this.x=q,this.y=K}subdivCubic($,Q,Z,J,q,K,W,H,U){if(U>16){this.renderLine(W,H),this.x=W,this.y=H;return}let X=$+Z>>1,N=Q+J>>1,_=Z+q>>1,j=J+K>>1,Y=q+W>>1,w=K+H>>1,V=X+_>>1,z=N+j>>1,E=_+Y>>1,G=j+w>>1,B=V+E>>1,D=z+G>>1,S=W-$,L=H-Q,h=b1((Z-W)*L-(J-H)*S),I=b1((q-W)*L-(K-H)*S);if(h+I<=(Z1>>1)*(b1(S)+b1(L))){this.renderLine(W,H),this.x=W,this.y=H;return}this.subdivCubic($,Q,X,N,V,z,B,D,U+1),this.subdivCubic(B,D,E,G,Y,w,W,H,U+1)}sweep($,Q=0){let Z=$.pitch,J=Z<0?($.rows-1)*-Z:0;for(let{y:q,cells:K}of this.cells.iterateCells()){if(q<0||q>=$.rows)continue;let W=0,H=0,U=Z<0?J-q*-Z:q*Z;for(let X of K){if(X.x>H&&W!==0){let Y=this.applyFillRule(W,Q);if(Y>0){let w=Math.max(0,H),V=Math.min($.width,X.x);this.fillSpan($,U,w,V,Y)}}let _=W*(Z1*2)-X.area,j=this.applyFillRule(_>>K1+1,Q);if(j>0&&X.x>=0&&X.x<$.width)this.setPixel($,U,X.x,j);W+=X.cover,H=X.x+1}if(H<$.width&&W!==0){let X=this.applyFillRule(W,Q);if(X>0)this.fillSpan($,U,H,$.width,X)}}}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,J,q){if($.pixelMode===1)for(let K=Z;K<J;K++)$.buffer[Q+K]=q;else if($.pixelMode===0){if(q>=128)for(let K=Z;K<J;K++){let W=Q+(K>>3),H=7-(K&7);$.buffer[W]|=1<<H}}else if($.pixelMode===2)for(let K=Z;K<J;K++){let W=Q+K*3;$.buffer[W]=q,$.buffer[W+1]=q,$.buffer[W+2]=q}}setPixel($,Q,Z,J){if($.pixelMode===1)$.buffer[Q+Z]=J;else if($.pixelMode===0){if(J>=128){let q=Q+(Z>>3),K=7-(Z&7);$.buffer[q]|=1<<K}}else if($.pixelMode===2){let q=Q+Z*3;$.buffer[q]=J,$.buffer[q+1]=J,$.buffer[q+2]=J}}sweepSpans($,Q=0,Z){for(let{y:J,cells:q}of this.cells.iterateCells()){let K=[],W=0,H=-1;for(let U of q){if(W!==0&&U.x>H+1){let j=this.applyFillRule(W,Q);if(j>0)K.push({x:H+1,len:U.x-H-1,coverage:j})}let N=W*(Z1*2)-U.area,_=this.applyFillRule(N>>K1+1,Q);if(_>0)K.push({x:U.x,len:1,coverage:_});W+=U.cover,H=U.x}if(K.length>0)$(J,K,Z)}}sweepDirect($,Q=0,Z=0,J=1/0,q){let K=[];for(let{y:W,cells:H}of this.cells.iterateCells()){let U=0,X=Z;for(let N of H){if(U!==0&&N.x>X){let w=this.applyFillRule(U,Q);if(w>0){if(K.push({x:X,len:N.x-X,coverage:w}),K.length>=V4)$(W,K.splice(0,K.length),q)}}let j=U*(Z1*2)-N.area,Y=this.applyFillRule(j>>K1+1,Q);if(Y>0&&N.x>=Z&&N.x<J){if(K.push({x:N.x,len:1,coverage:Y}),K.length>=V4)$(W,K.splice(0,K.length),q)}U+=N.cover,X=N.x+1}if(U!==0&&X<J){let N=this.applyFillRule(U,Q);if(N>0)K.push({x:X,len:Math.min(J,this.maxX+1)-X,coverage:N})}if(K.length>0)$(W,K.splice(0,K.length),q)}}renderWithBands($,Q,Z,J=0){let K=Z.maxY-Z.minY,W=Math.max(1,Math.floor(256));if(K<=W)W=K;let H=Z.minX??0,U=Z.maxX??$.width,X=[];for(let _=Z.minY;_<Z.maxY;_+=W)X.push({minY:_,maxY:Math.min(_+W,Z.maxY),minX:H,maxX:U});let N=0;while(X.length>0&&N<wW){let _=X.pop();if(this.renderBandWithXClip($,Q,_.minY,_.maxY,_.minX,_.maxX,J))continue;let j=_.minX+_.maxX>>1;if(j>_.minX){X.push({minY:_.minY,maxY:_.maxY,minX:j,maxX:_.maxX}),X.push({minY:_.minY,maxY:_.maxY,minX:_.minX,maxX:j}),N++;continue}let Y=_.minY+_.maxY>>1;if(Y>_.minY){X.push({minY:Y,maxY:_.maxY,minX:_.minX,maxX:_.maxX}),X.push({minY:_.minY,maxY:Y,minX:_.minX,maxX:_.maxX}),N++;continue}console.warn(`Rasterizer: band overflow at (${_.minX},${_.minY}), cannot bisect further`)}}renderBandWithXClip($,Q,Z,J,q,K,W){this.cells.setBandBounds(Z,J),this.cells.reset(),this.minY=Z,this.maxY=J;try{return Q(),this.sweepBandWithXClip($,Z,J,q,K,W),!0}catch(H){if(H instanceof j8)return!1;throw H}}sweepBandWithXClip($,Q,Z,J,q,K){let W=$.pitch,H=W<0?($.rows-1)*-W:0;for(let U=Q;U<Z;U++){if(U<0||U>=$.rows)continue;let X=0,N=J,_=W<0?H-U*-W:U*W;for(let j of this.cells.iterateRowCells(U)){if(j.x<J){X+=j.cover;continue}if(j.x>=q){if(X!==0&&N<q){let z=this.applyFillRule(X,K);if(z>0)this.fillSpan($,_,Math.max(0,N),Math.min($.width,q),z)}break}if(j.x>N&&X!==0){let z=this.applyFillRule(X,K);if(z>0){let E=Math.max(0,N),G=Math.min($.width,j.x);this.fillSpan($,_,E,G,z)}}let w=X*(Z1*2)-j.area,V=this.applyFillRule(w>>K1+1,K);if(V>0&&j.x>=0&&j.x<$.width)this.setPixel($,_,j.x,V);X+=j.cover,N=j.x+1}if(N<q&&N<$.width&&X!==0){let j=this.applyFillRule(X,K);if(j>0)this.fillSpan($,_,N,Math.min($.width,q),j)}}}}function w8($,Q,Z,J=0,q=0,K=!0){let W=0,H=0,U=!1;for(let X of Q.commands)switch(X.type){case"M":{if(U)$.lineTo(W,H);let N=z1(X.x,Z,J),_=K?Q6(X.y,Z,q):z1(X.y,Z,q);$.moveTo(N,_),W=N,H=_,U=!0;break}case"L":{let N=z1(X.x,Z,J),_=K?Q6(X.y,Z,q):z1(X.y,Z,q);$.lineTo(N,_);break}case"Q":{let N=z1(X.x1,Z,J),_=K?Q6(X.y1,Z,q):z1(X.y1,Z,q),j=z1(X.x,Z,J),Y=K?Q6(X.y,Z,q):z1(X.y,Z,q);$.conicTo(N,_,j,Y);break}case"C":{let N=z1(X.x1,Z,J),_=K?Q6(X.y1,Z,q):z1(X.y1,Z,q),j=z1(X.x2,Z,J),Y=K?Q6(X.y2,Z,q):z1(X.y2,Z,q),w=z1(X.x,Z,J),V=K?Q6(X.y,Z,q):z1(X.y,Z,q);$.cubicTo(N,_,j,Y,w,V);break}case"Z":{if(U)$.lineTo(W,H),U=!1;break}}if(U)$.lineTo(W,H)}function z1($,Q,Z){return Math.round(($*Q+Z)*Z1)}function Q6($,Q,Z){return Math.round((-$*Q+Z)*Z1)}function z4($,Q,Z=!0){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)}}var E4=new WeakMap;function YW($){if(!$.isTrueType||!$.hasHinting)return null;let Q=E4.get($);if(Q)return Q;let Z=$.cvtTable,J=Z?new Int32Array(Z.values):void 0,q=$.maxp;Q=U4($.unitsPerEm,"maxStackElements"in q?q.maxStackElements:256,"maxStorage"in q?q.maxStorage:64,"maxFunctionDefs"in q?q.maxFunctionDefs:64,"maxTwilightPoints"in q?q.maxTwilightPoints:16,J);let K=$.fpgm;if(K)X4(Q,K.instructions);let W=$.prep;if(W)N4(Q,W.instructions);return E4.set($,Q),Q}function VW($,Q){let Z=$.getGlyph(Q);if(!Z||Z.type==="empty")return null;let J=[],q=[],K=[],W=[],H=$.advanceWidth(Q),U=$.leftSideBearing(Q);if(Z.type==="simple"){let X=0;for(let N of Z.contours){for(let _ of N)J.push(_.x),q.push(_.y),K.push(_.onCurve?1:0),X++;W.push(X-1)}return{xCoords:J,yCoords:q,flags:new Uint8Array(K),contourEnds:W,instructions:Z.instructions,lsb:U,advanceWidth:H}}else{for(let X of Z.components){let N=$.getGlyph(X.glyphId);if(!N||N.type!=="simple")continue;let[_,j,Y,w]=X.transform,V=X.arg1,z=X.arg2,E=J.length;for(let G of N.contours){for(let B of G)J.push(B.x*_+B.y*Y+V),q.push(B.x*j+B.y*w+z),K.push(B.onCurve?1:0),E++;W.push(E-1)}}if(J.length===0)return null;return{xCoords:J,yCoords:q,flags:new Uint8Array(K),contourEnds:W,instructions:Z.instructions,lsb:U,advanceWidth:H}}}function zW($,Q,Z,J){let{xCoords:q,yCoords:K,flags:W,contourEnds:H}=Q,U=0,X=0;for(let N=0;N<q.length;N++){let _=N===H[U],j=(q[N]<<2|0)+(Z<<8),Y=(-K[N]<<2|0)+(J<<8),w=(W[N]&1)!==0;if(N===X)$.moveTo(j,Y);else if(w)$.lineTo(j,Y);else{let V=_?X:N+1,z=(q[V]<<2|0)+(Z<<8),E=(-K[V]<<2|0)+(J<<8);if((W[V]&1)!==0){if($.conicTo(j,Y,z,E),!_)N++}else $.conicTo(j,Y,j+z>>1,Y+E>>1)}if(_){let V=(q[X]<<2|0)+(Z<<8),z=(-K[X]<<2|0)+(J<<8);if(w&&N!==X)$.lineTo(V,z);U++,X=N+1}}}var EW=256;function G4($,Q){let{width:Z,height:J,scale:q,offsetX:K=0,offsetY:W=0,pixelMode:H=1,fillRule:U=0,flipY:X=!0}=Q,N=k1(Z,J,H),_=new C6;if(_.setClip(0,0,Z,J),J>EW){let j=()=>w8(_,$,q,K,W,X);_.renderWithBands(N,j,{minY:0,maxY:J},U)}else _.setBandBounds(0,J),_.reset(),w8(_,$,q,K,W,X),_.sweep(N,U);return N}function GW($,Q,Z,J){let q=J?.padding??1,K=J?.pixelMode??1;if((J?.hinting??!1)&&$.hasHinting){let V=AW($,Q,Z,q,K);if(V)return V}let H=p1($,Q);if(!H)return null;let U=Z/$.unitsPerEm,X=z4(H,U,!0);if(!X)return{bitmap:k1(1,1,K),bearingX:0,bearingY:0};let N=X.maxX-X.minX+q*2,_=X.maxY-X.minY+q*2;if(N<=0||_<=0)return{bitmap:k1(1,1,K),bearingX:0,bearingY:0};let j=-X.minX+q,Y=-X.minY+q;return{bitmap:G4(H,{width:N,height:_,scale:U,offsetX:j,offsetY:Y,pixelMode:K,flipY:!0}),bearingX:X.minX-q,bearingY:-(X.minY-q)}}function AW($,Q,Z,J,q){let K=YW($);if(!K)return null;let W=VW($,Q);if(!W)return null;let H=Math.round(Z);if(_4(K,H,H))return null;let X=j4(K,W);if(X.error||X.xCoords.length===0)return null;let N=1/0,_=1/0,j=-1/0,Y=-1/0;for(let I=0;I<X.xCoords.length;I++){let O=X.xCoords[I]/64,g=X.yCoords[I]/64;N=Math.min(N,O),_=Math.min(_,g),j=Math.max(j,O),Y=Math.max(Y,g)}if(!Number.isFinite(N))return{bitmap:k1(1,1,q),bearingX:0,bearingY:0};let w=Math.floor(N),V=Math.floor(_),z=Math.ceil(j),E=Math.ceil(Y),G=z-w+J*2,B=E-V+J*2;if(G<=0||B<=0)return{bitmap:k1(1,1,q),bearingX:0,bearingY:0};let D=k1(G,B,q),S=new C6;S.setClip(0,0,G,B),S.reset();let L=-w+J,h=B-1+V-J;return zW(S,X,L,h),S.sweep(D,0),{bitmap:D,bearingX:w-J,bearingY:E+J}}function BW($,Q,Z,J){let q=Z/$.unitsPerEm,K=J?.padding??2,W=J?.pixelMode??1,H=[],U=0,X=0,N=0;for(let E of Q){let G=E.codePointAt(0);if(G===void 0)continue;let B=$.glyphId(G);if(B===void 0)continue;let D=$.advanceWidth(B)*q,S=p1($,B);if(S?.bounds)X=Math.max(X,-S.bounds.yMin*q),N=Math.max(N,S.bounds.yMax*q);H.push({glyphId:B,advance:D}),U+=D}if(H.length===0)return null;let _=Math.ceil(U)+K*2,j=Math.ceil(X+N)+K*2,Y=k1(_,j,W),w=new C6;w.setClip(0,0,_,j);let V=K,z=N+K;for(let{glyphId:E,advance:G}of H){let B=p1($,E);if(B)w.reset(),w8(w,B,q,V,z,!0),w.sweep(Y);V+=G}return Y}function DW($){let Q=$.pixelMode===2,Z=new Uint8Array($.width*$.rows*4);for(let J=0;J<$.rows;J++)for(let q=0;q<$.width;q++){let K=(J*$.width+q)*4;if($.pixelMode===1){let W=J*$.pitch+q,H=$.buffer[W]??0;Z[K]=255-H,Z[K+1]=255-H,Z[K+2]=255-H,Z[K+3]=255}else if($.pixelMode===0){let W=J*$.pitch+(q>>3),H=7-(q&7),U=($.buffer[W]??0)>>H&1?255:0;Z[K]=255-U,Z[K+1]=255-U,Z[K+2]=255-U,Z[K+3]=255}else if(Q){let W=J*$.pitch+q*3,H=$.buffer[W]??0,U=$.buffer[W+1]??0,X=$.buffer[W+2]??0;Z[K]=255-H,Z[K+1]=255-U,Z[K+2]=255-X,Z[K+3]=255}else{let W=J*$.pitch+q,H=$.buffer[W]??0;Z[K]=255-H,Z[K+1]=255-H,Z[K+2]=255-H,Z[K+3]=255}}return Z}function MW($){if($.pixelMode===1&&$.pitch===$.width)return $.buffer;let Q=new Uint8Array($.width*$.rows);for(let Z=0;Z<$.rows;Z++)for(let J=0;J<$.width;J++){let q=Z*$.width+J;if($.pixelMode===1)Q[q]=$.buffer[Z*$.pitch+J]??0;else if($.pixelMode===0){let K=Z*$.pitch+(J>>3),W=7-(J&7);Q[q]=($.buffer[K]??0)>>W&1?255:0}}return Q}var M4;((q)=>{q[q.None=0]="None";q[q.Decompose=1]="Decompose";q[q.Compose=2]="Compose";q[q.Auto=3]="Auto"})(M4||={});function g1($){if($>=1425&&$<=1469)return PW($);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 TW($);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 A4($);if($>=3761&&$<=3772)return 0;if($>=3784&&$<=3789)return A4($);if($>=3864&&$<=3865)return 220;if($===3893)return 220;if($===3895)return 220;if($===3897)return 216;if($>=3953&&$<=3966)return B4($);if($>=3968&&$<=3972)return B4($);if($>=3974&&$<=3975)return 230;if($===4151)return 7;if($===4153)return 9;if($===4154)return 9;if($>=12330&&$<=12335)return FW($);if($>=12441&&$<=12442)return 8;if($>=768&&$<=879)return OW($);if($>=6832&&$<=6911)return LW($);if($>=7616&&$<=7679)return RW($);if($>=65056&&$<=65071)return 230;return 0}function A4($){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 B4($){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;if($===3972)return 9;return 0}function FW($){if($===12330)return 218;if($===12331)return 228;if($===12332)return 232;if($===12333)return 222;if($===12334)return 224;if($===12335)return 224;return 0}function LW($){if($>=6832&&$<=6846)return 230;if($===6847)return 220;if($===6848)return 220;return 230}function RW($){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;if($>=7675&&$<=7679)return 230;return 230}function PW($){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;if($===1465)return 19}if($===1466)return 19;if($===1467)return 20;if($===1468)return 21;if($===1469)return 22;return 0}function TW($){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;if($>=1625&&$<=1631)return 230;return 0}function OW($){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 Y8($){let Q=$.length,Z=1;while(Z<Q){let J=$[Z];if(!J){Z++;continue}let q=g1(J.codepoint);if(q===0){Z++;continue}let K=Z;while(K>0){let W=$[K-1];if(!W)break;let H=g1(W.codepoint);if(H===0)break;if(H<=q)break;$[K]=W,$[K-1]=J,K--}Z++}}var IW=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 V8($){return IW.get($)??null}var vW=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 D4($,Q){let Z=vW.get($);if(!Z)return null;return Z.get(Q)??null}function kW($){if($.length===0)return $;let Q=[],Z=0;while(Z<$.length){let J=$[Z];if(!J){Z++;continue}if(g1(J.codepoint)===0){let K=J.codepoint,W=0,H=Z+1;while(H<$.length){let U=$[H];if(!U)break;let X=g1(U.codepoint);if(X===0)break;if(X>W||W===0){let N=D4(K,U.codepoint);if(N!==null){K=N,H++;continue}}W=X,H++}Q.push({glyphId:J.glyphId,cluster:J.cluster,mask:J.mask,codepoint:K});for(let U=Z+1;U<H;U++){let X=$[U];if(!X)continue;let N=g1(X.codepoint);if(D4(K,X.codepoint)===null&&N!==0)Q.push(X)}Z=H}else Q.push(J),Z++}return Q}function CW($,Q){if(Q===0)return $;if(Q===1){let Z=[];for(let J of $){let q=V8(J.codepoint);if(q)for(let K of q)Z.push({glyphId:J.glyphId,cluster:J.cluster,mask:J.mask,codepoint:K});else Z.push(J)}return Y8(Z),Z}if(Q===2){let Z=[];for(let J of $){let q=V8(J.codepoint);if(q)for(let K of q)Z.push({glyphId:J.glyphId,cluster:J.cluster,mask:J.mask,codepoint:K});else Z.push(J)}return Y8(Z),kW(Z)}if(Q===3){let Z=[];for(let J of $){let q=V8(J.codepoint);if(q)for(let K of q)Z.push({glyphId:J.glyphId,cluster:J.cluster,mask:J.mask,codepoint:K});else Z.push(J)}return Y8(Z),Z}return $}function l9($,Q,Z){for(let J=0;J<Q.length;J++){let q=Q[J],K=Z[J];if(!q||!K)continue;let W=$.gdef?A1($.gdef,q.glyphId):0,H=g1(q.codepoint);if(W!==3&&H===0)continue;let U=-1;for(let j=J-1;j>=0;j--){let Y=Q[j];if(!Y)continue;let w=$.gdef?A1($.gdef,Y.glyphId):0,V=g1(Y.codepoint);if(w===1||w===0&&V===0){U=j;break}}if(U<0)continue;let X=Q[U],N=Z[U];if(!X||!N)continue;let _=$.advanceWidth(X.glyphId);SW($,q,K,X,N,_,H),K.xAdvance=0,K.yAdvance=0}}function SW($,Q,Z,J,q,K,W){let H=$.advanceWidth(Q.glyphId),U=$.unitsPerEm,X=(K-H)/2,N=0;if(W>=200&&W<=240)N=U*0.7,X=(K-H)/2;else if(W>=202&&W<=220)N=-U*0.15,X=(K-H)/2;else if(W===1)X=(K-H)/2,N=U*0.3;else if(W>=7&&W<=9)N=-U*0.1,X=(K-H)/2;else if(W>=10&&W<=35){if(W<=22)N=-U*0.2;else N=W<30?-U*0.15:U*0.6;X=(K-H)/2}Z.xOffset=q.xOffset+X-K,Z.yOffset=q.yOffset+N}function d9($,Q,Z){if(!$.kern)return;for(let q=0;q<Q.length-1;q++){let K=Q[q],W=Q[q+1];if(!K||!W)continue;let H=Z[q];if(!H)continue;let U=$.gdef?A1($.gdef,K.glyphId):0,X=$.gdef?A1($.gdef,W.glyphId):0;if(U===3||X===3)continue;let N=hW($,K.glyphId,W.glyphId);if(N!==0)H.xAdvance+=N}}function hW($,Q,Z){let J=$.kern;if(!J)return 0;return _9(J,Q,Z)}function F4($,Q=!0){if($<1||$>20)throw Error(`Stylistic set number must be 1-20, got ${$}`);let Z=`ss${$.toString().padStart(2,"0")}`;return{tag:F(Z),enabled:Q}}function mW($,Q=!0){return $.map((Z)=>F4(Z,Q))}function L4($,Q=!0){if($<1||$>99)throw Error(`Character variant number must be 1-99, got ${$}`);let Z=`cv${$.toString().padStart(2,"0")}`;return{tag:F(Z),enabled:Q}}function yW($,Q=!0){return $.map((Z)=>L4(Z,Q))}function bW($=!0){return{tag:F("liga"),enabled:$}}function gW($=!0){return{tag:F("dlig"),enabled:$}}function xW($=!0){return{tag:F("hlig"),enabled:$}}function uW($=!0){return{tag:F("calt"),enabled:$}}function fW($=!0){return{tag:F("salt"),enabled:$}}function lW($=!0){return{tag:F("swsh"),enabled:$}}function R4($=!0){return{tag:F("smcp"),enabled:$}}function P4($=!0){return{tag:F("c2sc"),enabled:$}}function dW($=!0){return{tag:F("pcap"),enabled:$}}function nW($=!0){return[R4($),P4($)]}function iW($=!0){return{tag:F("onum"),enabled:$}}function pW($=!0){return{tag:F("lnum"),enabled:$}}function oW($=!0){return{tag:F("pnum"),enabled:$}}function sW($=!0){return{tag:F("tnum"),enabled:$}}function cW($=!0){return{tag:F("frac"),enabled:$}}function aW($=!0){return{tag:F("ordn"),enabled:$}}function rW($=!0){return{tag:F("zero"),enabled:$}}function tW($=!0){return{tag:F("sups"),enabled:$}}function eW($=!0){return{tag:F("subs"),enabled:$}}function $H($=!0){return{tag:F("sinf"),enabled:$}}function QH($=!0){return{tag:F("case"),enabled:$}}function ZH($=!0){return{tag:F("cpsp"),enabled:$}}function JH($=!0){return{tag:F("kern"),enabled:$}}function T4($=!0){return{tag:F("vert"),enabled:$}}function O4($=!0){return{tag:F("vrt2"),enabled:$}}function I4($=!0){return{tag:F("vkna"),enabled:$}}function qH($=!0){return[T4($),O4($),I4($)]}function KH($=!0){return{tag:F("ruby"),enabled:$}}function WH($=!0){return{tag:F("hwid"),enabled:$}}function HH($=!0){return{tag:F("fwid"),enabled:$}}function UH($=!0){return{tag:F("pwid"),enabled:$}}function XH($=!0){return{tag:F("qwid"),enabled:$}}function NH($=!0){return{tag:F("twid"),enabled:$}}function _H($=!0){return{tag:F("jp78"),enabled:$}}function jH($=!0){return{tag:F("jp83"),enabled:$}}function wH($=!0){return{tag:F("jp90"),enabled:$}}function YH($=!0){return{tag:F("jp04"),enabled:$}}function VH($=!0){return{tag:F("smpl"),enabled:$}}function zH($=!0){return{tag:F("trad"),enabled:$}}function v4($,Q=!0){return{tag:F($),enabled:Q}}function EH($,Q=!0){return $.map((Z)=>v4(Z,Q))}function GH(...$){let Q=[];for(let Z of $)if(Array.isArray(Z))Q.push(...Z);else Q.push(Z);return Q}var k4=new WeakMap,AH=64,BH=["ccmp","locl","rlig","rclt","calt","liga"],DH=["kern","mark","mkmk"];function MH($,Q,Z,J,q){let K=J.map((H)=>`${D6(H.tag)}:${H.enabled?"1":"0"}`).sort().join(","),W=q?q.map((H)=>H.toFixed(4)).join(","):"";return`${$}|${Q||""}|${Z}|${K}|${W}`}function S4($,Q,Z,J,q=[],K=null){let W=MH(Q,Z,J,q,K),H=k4.get($);if(!H)H=new Map,k4.set($,H);let U=H.get(W);if(U)return U;let X=FH($,Q,Z,J,q,K);if(H.size>=AH){let N=H.keys().next().value;if(N!==void 0)H.delete(N)}return H.set(W,X),X}function n9($,Q,Z,J,q=[],K=null){return S4($,Q,Z,J,q,K)}function FH($,Q,Z,J,q=[],K=null){let W=F(Q.padEnd(4," ")),H=Z?F(Z.padEnd(4," ")):null,U=new Set;for(let _ of BH)U.add(F(_));for(let _ of DH)U.add(F(_));for(let _ of q)if(_.enabled)U.add(_.tag);else U.delete(_.tag);let X=C4($.gsub,W,H,U,K),N=C4($.gpos,W,H,U,K);return{script:W,language:H,direction:J,gsubLookups:X,gposLookups:N}}function C4($,Q,Z,J,q){if(!$)return[];let K=$,W=new Set,H=J8(K.scriptList,Q);if(!H)H=J8(K.scriptList,F("DFLT"));if(!H)H=J8(K.scriptList,F("latn"));if(!H)return[];let U=t5(H,Z);if(!U)return[];let X=K.featureVariations,N=X&&q?O6(X,q):null,_=new Map;if(N)for(let w of N.featureTableSubstitution.substitutions)_.set(w.featureIndex,w.alternateFeature.lookupListIndices);if(U.requiredFeatureIndex!==65535){let w=$9(K.featureList,U.requiredFeatureIndex);if(w){let z=_.get(U.requiredFeatureIndex)??w.feature.lookupListIndices;for(let E of z)W.add(E)}}for(let w of U.featureIndices){let V=$9(K.featureList,w);if(!V)continue;if(J.has(V.featureTag)){let E=_.get(w)??V.feature.lookupListIndices;for(let G of E)W.add(G)}}let j=[],Y=Array.from(W).sort((w,V)=>w-V);for(let w of Y){let V=K.lookups[w];if(V)j.push({index:w,lookup:V})}return j}function LH($){return $>=1536&&$<=1791||$>=1872&&$<=1919||$>=2208&&$<=2303||$>=64336&&$<=65023||$>=65136&&$<=65279}function RH($){if($<1536)return"U";if($>=1536&&$<=1541)return"U";if($===1544)return"U";if($===1547)return"U";if($===1549)return"U";if($===1574)return"D";if($===1576)return"D";if($===1578)return"D";if($===1579)return"D";if($===1580)return"D";if($===1581)return"D";if($===1582)return"D";if($===1587)return"D";if($===1588)return"D";if($===1589)return"D";if($===1590)return"D";if($===1591)return"D";if($===1592)return"D";if($===1593)return"D";if($===1594)return"D";if($>=1595&&$<=1599)return"D";if($===1601)return"D";if($===1602)return"D";if($===1603)return"D";if($===1604)return"D";if($===1605)return"D";if($===1606)return"D";if($===1607)return"D";if($===1609)return"D";if($===1610)return"D";if($>=1646&&$<=1647)return"D";if($>=1656&&$<=1671)return"D";if($>=1690&&$<=1727)return"D";if($>=1729&&$<=1730)return"D";if($===1740)return"D";if($>=1742&&$<=1745)return"D";if($===1749)return"D";if($>=1786&&$<=1788)return"D";if($===1791)return"D";if($===1570)return"R";if($===1571)return"R";if($===1572)return"R";if($===1573)return"R";if($===1575)return"R";if($===1577)return"R";if($===1583)return"R";if($===1584)return"R";if($===1585)return"R";if($===1586)return"R";if($===1608)return"R";if($===1649)return"R";if($>=1650&&$<=1655)return"R";if($>=1672&&$<=1689)return"R";if($>=1728&&$<=1728)return"R";if($===1731)return"R";if($>=1732&&$<=1739)return"R";if($===1741)return"R";if($>=1746&&$<=1747)return"R";if($===1600)return"C";if($>=1611&&$<=1631)return"T";if($===1648)return"T";if($>=1750&&$<=1773)return"T";if($>=2259&&$<=2303)return"T";if(LH($))return"U";return"U"}function PH($){let Q=$.length,Z=Array(Q).fill(0),J=[];for(let q of $){let K=q.codepoint??0;J.push(RH(K))}for(let q=0;q<Q;q++){let K=J[q];if(!K)continue;if(K==="U"||K==="T")continue;let W=null;for(let N=q-1;N>=0;N--){let _=J[N];if(_&&_!=="T"){W=_;break}}let H=null;for(let N=q+1;N<Q;N++){let _=J[N];if(_&&_!=="T"){H=_;break}}let U=W==="D"||W==="L"||W==="C",X=H==="D"||H==="R"||H==="C";if(K==="D")if(U&&X)Z[q]=3;else if(U)Z[q]=2;else if(X)Z[q]=4;else Z[q]=1;else if(K==="R")if(U)Z[q]=2;else Z[q]=1;else if(K==="L")if(X)Z[q]=4;else Z[q]=1;else if(K==="C")Z[q]=0}return Z}function i9($){let Q=PH($);for(let[Z,J]of Q.entries()){let q=$[Z];if(!q)continue;switch(J){case 1:q.mask=q.mask&4294967280|1;break;case 2:q.mask=q.mask&4294967280|2;break;case 3:q.mask=q.mask&4294967280|4;break;case 4:q.mask=q.mask&4294967280|8;break}}}function o9($){return $>=44032&&$<=55203}function TH($){return $>=4352&&$<=4607||$>=43360&&$<=43388||$>=55216&&$<=55291}function OH($){return $>=4352&&$<4371||$>=43360&&$<=43388}function IH($){return $>=4449&&$<4470||$>=55216&&$<=55238}function vH($){return $>4519&&$<=4546||$>=55243&&$<=55291}function kH($){if(!o9($))return[$];let Q=$-44032,Z=Math.floor(Q/588),J=Math.floor(Q%588/28),q=Q%28,K=[4352+Z,4449+J];if(q>0)K.push(4519+q);return K}function h4($,Q,Z=0){let J=$-4352,q=Q-4449,K=Z===0?0:Z-4519;if(J<0||J>=19)return null;if(q<0||q>=21)return null;if(K<0||K>=28)return null;return 44032+J*588+q*28+K}function S6($){if(OH($))return 1;if(IH($))return 2;if(vH($))return 3;if(o9($))return($-44032)%28===0?4:5;return 0}var p9={ljmo:1,vjmo:2,tjmo:4};function s9($){for(let Q of $)switch(S6(Q.codepoint)){case 1:Q.mask|=p9.ljmo;break;case 2:Q.mask|=p9.vjmo;break;case 3:Q.mask|=p9.tjmo;break;case 4:case 5:break}}function c9($){let Q=[],Z=0;while(Z<$.length){let J=$[Z];if(!J){Z++;continue}let q=S6(J.codepoint);if(q===1&&Z+1<$.length){let K=$[Z+1];if(!K){Q.push(J),Z++;continue}if(S6(K.codepoint)===2){let H=0,U=2;if(Z+2<$.length){let N=$[Z+2];if(N){if(S6(N.codepoint)===3)H=N.codepoint,U=3}}let X=h4(J.codepoint,K.codepoint,H);if(X!==null){Q.push({glyphId:J.glyphId,cluster:J.cluster,mask:J.mask,codepoint:X}),Z+=U;continue}}}if(q===4&&Z+1<$.length){let K=$[Z+1];if(!K){Q.push(J),Z++;continue}if(S6(K.codepoint)===3){let H=kH(J.codepoint),[U,X]=H;if(H.length===2&&U!==void 0&&X!==void 0){let N=h4(U,X,K.codepoint);if(N!==null){Q.push({glyphId:J.glyphId,cluster:J.cluster,mask:J.mask,codepoint:N}),Z+=2;continue}}}}Q.push(J),Z++}return Q}function m4($){return o9($)||TH($)||$>=12593&&$<=12686}function CH($){return $>=1424&&$<=1535||$>=64285&&$<=64335}function SH($){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(CH($))return 0;return 0}function a9($){let Q=0;for(let Z=0;Z<$.length;Z++){let J=$[Z];if(!J)continue;if(SH(J.codepoint)===1)Q=Z;J.mask=J.mask&4294901760|Q&65535}}function y4($){return $>=2304&&$<=2431}function b4($){return $>=2432&&$<=2559}function g4($){return $>=2560&&$<=2687}function x4($){return $>=2688&&$<=2815}function u4($){return $>=2816&&$<=2943}function f4($){return $>=2944&&$<=3071}function l4($){return $>=3072&&$<=3199}function d4($){return $>=3200&&$<=3327}function n4($){return $>=3328&&$<=3455}function i4($){return y4($)||b4($)||g4($)||x4($)||u4($)||f4($)||l4($)||d4($)||n4($)}function C1($){if($===8204)return 5;if($===8205)return 6;if($===9676)return 12;if(y4($)){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(b4($)){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(g4($)||x4($)||u4($)||f4($)||l4($)||d4($)||n4($)){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 p4($){let Q=[],Z=$.length;if(Z===0)return Q;let J=0;while(J<Z){let q=hH($,J);Q.push(q),J=q.end}return Q}function hH($,Q){let Z=$.length,J=Q,q=-1,K=!1;if(J+1<Z){let H=$[J],U=$[J+1];if(H&&U){let X=C1(H.codepoint??0),N=C1(U.codepoint??0);if(X===15&&N===4)K=!0,J+=2}}let W=-1;while(J<Z){let H=$[J];if(!H){J++;continue}let U=H.codepoint??0,X=C1(U);if(X===1||X===15){if(W=J,J++,J<Z){let N=$[J];if(N&&C1(N.codepoint??0)===3)J++}if(J<Z){let N=$[J];if(N&&C1(N.codepoint??0)===4){if(J++,J<Z){let _=$[J];if(_){let j=C1(_.codepoint??0);if(j===6||j===5)J++}}continue}}break}else if(X===2){J++;break}else if(X===3)J++;else{if(W===-1)J++;break}}q=W>=0?W:Q;while(J<Z){let H=$[J];if(!H){J++;continue}let U=H.codepoint??0,X=C1(U);if(X===7||X===8||X===9||X===3)J++;else if(X===4){J++;break}else break}if(J===Q)J=Q+1;return{start:Q,end:J,hasReph:K,baseConsonant:q}}var q1={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 o4($){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 r9($){let Q=p4($);for(let[Z,J]of Q.entries())for(let q=J.start;q<J.end;q++){let K=$[q];if(K){K.mask=K.mask&65535|(Z&65535)<<16;let W=C1(K.codepoint);if(W===3)K.mask|=q1.nukt;if(W===4){if(q<J.baseConsonant)K.mask|=q1.half;else if(q>J.baseConsonant)K.mask|=q1.blwf|q1.pstf}if(W===1||W===15){if(q<J.baseConsonant)K.mask|=q1.half|q1.cjct;else if(q>J.baseConsonant)K.mask|=q1.blwf|q1.pstf|q1.vatu}if(J.hasReph&&q<J.start+2)K.mask|=q1.rphf;if(W===7)switch(o4(K.codepoint)){case 0:K.mask|=q1.pref|q1.pres;break;case 1:K.mask|=q1.abvf|q1.abvs;break;case 2:K.mask|=q1.blwf|q1.blws;break;case 3:K.mask|=q1.pstf|q1.psts;break}if(W===8)K.mask|=q1.abvs|q1.psts}}}function t9($){let Q=p4($);for(let Z of Q)mH($,Z)}function mH($,Q){let{start:Z,end:J,baseConsonant:q,hasReph:K}=Q,W=[];for(let H=q+1;H<J;H++){let U=$[H];if(!U)continue;if(C1(U.codepoint)===7){if(o4(U.codepoint)===0)W.push({index:H,info:U})}}if(W.length>0){W.sort((H,U)=>U.index-H.index);for(let{index:H,info:U}of W){$.splice(H,1);let X=K?Z+2:Z;$.splice(X,0,U)}}if(K&&J>Z+2){let H=$[Z],U=$[Z+1];if(H&&U){let X=J-1;while(X>q){let N=$[X];if(!N)break;let _=C1(N.codepoint);if(_===8||_===9)X--;else break}if(X>Z+1){$.splice(Z,2);let N=X-2;$.splice(N+1,0,H,U)}}}}function w6($){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 o1={pref:1,blwf:2,abvf:4,pstf:8,cfar:16,pres:32,abvs:64,blws:128,psts:256,clig:512};function s4($){return $>=6016&&$<=6143||$>=6624&&$<=6655}function e9($){let Q=0;while(Q<$.length){let Z=$[Q];if(!Z){Q++;continue}let J=w6(Z.codepoint);if(J===0){Q++;continue}let q=Q,K=-1;if(J===1)K=Q;let W=Q+1;while(W<$.length){let H=$[W];if(!H){W++;continue}let U=w6(H.codepoint);if(U===0)break;if(U===1){let X=$[W-1];if(X&&w6(X.codepoint)!==4)break}if(U===4&&W+1<$.length){let X=$[W+1];if(X&&w6(X.codepoint)===1){H.mask|=o1.blwf,X.mask|=o1.blwf,W+=2;continue}}if(U===3)if(H.codepoint>=6081&&H.codepoint<=6083)H.mask|=o1.pref;else if(H.codepoint>=6071&&H.codepoint<=6074)H.mask|=o1.abvf;else if(H.codepoint===6075||H.codepoint===6076||H.codepoint===6077)H.mask|=o1.blwf;else H.mask|=o1.pstf;if(U===5)H.mask|=o1.abvs;if(U===6)H.mask|=o1.abvs;W++}Q=W}}function $0($){let Q=0;while(Q<$.length){let Z=$[Q];if(!Z){Q++;continue}if(w6(Z.codepoint)!==1){Q++;continue}let q=Q,K=Q+1;while(K<$.length){let W=$[K];if(!W)break;if(w6(W.codepoint)===4&&K+1<$.length)K+=2;else break}if(K<$.length){let W=$[K];if(W){let H=W.codepoint;if(H>=6081&&H<=6083){let U=W;for(let X=K;X>q;X--){let N=$[X-1];if(N)$[X]=N}$[q]=U}}}Q=K+1}}function Y6($){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 O1={rphf:1,pref:2,blwf:4,pstf:8,pres:16,abvs:32,blws:64,psts:128};function c4($){return $>=4096&&$<=4255||$>=43616&&$<=43647||$>=43488&&$<=43519}function Q0($){let Q=0;while(Q<$.length){let Z=$[Q];if(!Z){Q++;continue}let J=Y6(Z.codepoint);if(J===0){Q++;continue}let q=-1,K=!1;if(J===1)q=Q;let W=Q+1;while(W<$.length){let H=$[W];if(!H){W++;continue}let U=Y6(H.codepoint);if(U===0)break;if(U===5){if(K=!0,H.mask|=O1.blwf,W+1<$.length){let X=$[W+1];if(X&&Y6(X.codepoint)===1){X.mask|=O1.blwf,W+=2;continue}}}if(U===4){let X=H.codepoint;if(X===4155)H.mask|=O1.pref;else if(X===4156)H.mask|=O1.pref;else if(X===4157)H.mask|=O1.blwf;else if(X===4158)H.mask|=O1.blwf}if(U===3){let X=H.codepoint;if(X===4145)H.mask|=O1.pref;else if(X===4141||X===4142||X===4146)H.mask|=O1.abvs;else if(X===4143||X===4144)H.mask|=O1.blws;else H.mask|=O1.psts}if(U===6||U===8)H.mask|=O1.abvs;if(U===1&&!K){if(W>0){let X=$[W-1];if(X){if(Y6(X.codepoint)!==5)break}}}K=!1,W++}Q=W}}function Z0($){let Q=0;while(Q<$.length){let Z=$[Q];if(!Z){Q++;continue}if(Y6(Z.codepoint)!==1){Q++;continue}let q=Q,K=[],W=Q+1;while(W<$.length){let H=$[W];if(!H){W++;continue}let U=Y6(H.codepoint);if(H.codepoint===4145){K.push(H),$.splice(W,1);continue}if(H.codepoint===4156){K.push(H),$.splice(W,1);continue}if(U===1||U===0)break;W++}if(K.length>0)$.splice(q,0,...K),Q+=K.length;Q++}}function q0($){return $>=3584&&$<=3711}function K0($){return $>=3712&&$<=3839}function J0($){if(q0($)){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(K0($)){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 z8($){let Q=0,Z=-1;for(let J=0;J<$.length;J++){let q=$[J];if(!q)continue;let K=J0(q.codepoint);if(K===1)Q++,Z=J;if(q.mask=q.mask&4294967040|K&255,q.mask=q.mask&65535|(Q&65535)<<16,K===2)q.mask|=256}}function E8($){let Q=0;while(Q<$.length){let Z=$[Q];if(!Z){Q++;continue}if(J0(Z.codepoint)===2){let q=Q+1;while(q<$.length){let K=$[q];if(!K){q++;continue}let W=J0(K.codepoint??0);if(W===1){let H=Z;$[Q]=K,$[q]=H;break}if(W!==2)break;q++}}Q++}}function a4($){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 x1($){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 Q1={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 r4($){let Q=[],Z=$.length;if(Z===0)return Q;let J=0;while(J<Z){let q=yH($,J);Q.push(q),J=q.end}return Q}function yH($,Q){let Z=$.length,J=Q,q=-1,K=!1;if(J+1<Z){let W=$[J],H=$[J+1];if(W&&H){let U=x1(W.codepoint??0),X=x1(H.codepoint??0);if(U===13&&X===8)K=!0,J+=2}}while(J<Z){let W=$[J];if(!W){J++;continue}let H=x1(W.codepoint??0);if(H===1||H===10||H===7||H===22){q=J,J++;break}if(H===26||H===30||H===39){J++;continue}if(q===-1)J++;break}if(q===-1)q=Q;while(J<Z){let W=$[J];if(!W){J++;continue}let H=x1(W.codepoint??0);if(H===8){if(J++,J<Z){let U=$[J];if(U){let X=x1(U.codepoint??0);if(X===1||X===4||X===17){J++;continue}if(X===20||X===21)J++}}continue}if(H===17||H===4){J++;continue}if(H===12||H===9){J++;continue}break}while(J<Z){let W=$[J];if(!W){J++;continue}let H=x1(W.codepoint??0);if(H===28||H===29||H===30||H===31||H===23){J++;continue}if(H===37||H===38||H===39||H===40){J++;continue}if(H===24||H===25||H===26||H===27){J++;continue}if(H===32||H===33){J++;continue}if(H===34||H===35||H===36||H===5||H===6){J++;continue}if(H===2||H===18){J++;continue}break}if(J===Q)J=Q+1;return{start:Q,end:J,base:q,hasReph:K}}function t4($){let Q=r4($);for(let[Z,J]of Q.entries())for(let q=J.start;q<J.end;q++){let K=$[q];if(!K)continue;K.mask=K.mask&65535|(Z&65535)<<16;let W=x1(K.codepoint);if(J.hasReph&&q<J.start+2)K.mask|=Q1.rphf;if(q<J.base){if(W===1||W===4||W===17)K.mask|=Q1.half|Q1.cjct}if(q>J.base){if(W===1||W===4||W===17)K.mask|=Q1.blwf|Q1.pstf|Q1.vatu}if(W===8||W===9)if(q<J.base)K.mask|=Q1.half;else K.mask|=Q1.haln;if(W===30)K.mask|=Q1.pref|Q1.pres;else if(W===28)K.mask|=Q1.abvf|Q1.abvs;else if(W===29)K.mask|=Q1.blwf|Q1.blws;else if(W===31||W===23)K.mask|=Q1.pstf|Q1.psts;if(W===37)K.mask|=Q1.abvs;else if(W===38)K.mask|=Q1.blws;else if(W===39)K.mask|=Q1.pres;else if(W===40)K.mask|=Q1.psts;if(W===32)K.mask|=Q1.abvs;else if(W===33)K.mask|=Q1.blws;if(W===34)K.mask|=Q1.abvs;else if(W===35)K.mask|=Q1.blws;else if(W===36||W===5||W===6)K.mask|=Q1.psts}}function e4($){let Q=r4($);for(let Z of Q)bH($,Z)}function bH($,Q){let{start:Z,end:J,base:q,hasReph:K}=Q,W=[];for(let H=q+1;H<J;H++){let U=$[H];if(!U)continue;let X=x1(U.codepoint);if(X===30||X===39)W.push({index:H,info:U})}if(W.length>0){W.sort((H,U)=>U.index-H.index);for(let{index:H,info:U}of W){$.splice(H,1);let X=K?Z+2:Z;$.splice(X,0,U)}}if(K&&J>Z+2){let H=$[Z],U=$[Z+1];if(H&&U){let X=J-1;while(X>q){let N=$[X];if(!N)break;let _=x1(N.codepoint);if(_===32||_===33||_===34||_===35||_===36||_===5||_===6)X--;else break}if(X>Z+1){$.splice(Z,2);let N=X-2;$.splice(N+1,0,H,U)}}}}function gH($){return $ instanceof c1?$.font:$}function xH($){return $ instanceof c1?$:new c1($)}function uH($,Q,Z={}){let J=gH($),q=xH($),K=Z.script??Q.script??"latn",W=Z.language??Q.language??null,H=Z.direction??"ltr",U=Z.features??[],X=q.normalizedCoords.length>0?q.normalizedCoords:null,N=n9(J,K,W,H,U,X),_=new s1;_.direction=Q.direction,_.script=K,_.language=W;let j=[];for(let[w,V]of Q.codepoints.entries()){let z=Q.clusters[w];if(z===void 0)continue;let E=J.glyphId(V);j.push({glyphId:E,cluster:z,mask:4294967295,codepoint:V})}if(_.initFromInfos(j),fH(_,K),dH(J,_,N),q2(q,_),J.gpos!==null&&N.gposLookups.length>0)K2(J,_,N);else d9(J,_.infos,_.positions),l9(J,_.infos,_.positions);if(!J.gsub&&J.morx)B2(J,_);if(H==="rtl")_.reverse();return _}function fH($,Q){if(Q==="arab"||Q==="syrc"||Q==="mand"||Q==="nko "){i9($.infos);return}if(Q==="hebr"){a9($.infos);return}if(Q==="hang"||Q==="kore"){let Z=c9($.infos);if(Z.length!==$.infos.length)$.initFromInfos(Z);s9($.infos);return}if(Q==="deva"||Q==="beng"||Q==="guru"||Q==="gujr"||Q==="orya"||Q==="taml"||Q==="telu"||Q==="knda"||Q==="mlym"){r9($.infos),t9($.infos);return}if(Q==="thai"||Q==="lao "){z8($.infos),E8($.infos);return}if(Q==="khmr"){e9($.infos),$0($.infos);return}if(Q==="mymr"){Q0($.infos),Z0($.infos);return}if(a4(Q)){t4($.infos),e4($.infos);return}if(Q==="Zyyy"||Q==="Zinh"||Q==="Zzzz")lH($.infos)}function lH($){if($.length===0)return;let Q=$.slice(0,Math.min(10,$.length));for(let Z of Q){let J=Z.codepoint;if(J>=1536&&J<=1791||J>=1872&&J<=1919||J>=2208&&J<=2303){i9($);return}if(J>=1424&&J<=1535){a9($);return}if(m4(J)){let q=c9($);if(q.length!==$.length)$.length=0,$.push(...q);s9($);return}if(i4(J)){r9($),t9($);return}if(q0(J)){z8($),E8($);return}if(K0(J)){z8($),E8($);return}if(s4(J)){e9($),$0($);return}if(c4(J)){Q0($),Z0($);return}}}function dH($,Q,Z){for(let{lookup:J}of Z.gsubLookups)nH($,Q,J,Z)}function nH($,Q,Z,J){switch(Z.type){case 1:iH($,Q,Z);break;case 2:pH($,Q,Z);break;case 3:oH($,Q,Z);break;case 4:sH($,Q,Z);break;case 5:cH($,Q,Z,J);break;case 6:aH($,Q,Z,J);break;case 8:rH($,Q,Z);break}}function iH($,Q,Z){for(let J of Q.infos){if(c($,J.glyphId,Z.flag))continue;let q=N9(Z,J.glyphId);if(q!==null)J.glyphId=q}}function pH($,Q,Z){let J=0;while(J<Q.infos.length){let q=Q.infos[J];if(!q){J++;continue}if(c($,q.glyphId,Z.flag)){J++;continue}let K=!1;for(let W of Z.subtables){let H=W.coverage.get(q.glyphId);if(H===null)continue;let U=W.sequences[H];if(!U||U.length===0)continue;let[X,...N]=U;if(X===void 0)continue;q.glyphId=X;for(let[_,j]of N.entries()){let Y={glyphId:j,cluster:q.cluster,mask:q.mask,codepoint:q.codepoint},w={xAdvance:0,yAdvance:0,xOffset:0,yOffset:0};Q.insertGlyph(J+_+1,Y,w)}J+=U.length,K=!0;break}if(!K)J++}}function oH($,Q,Z){for(let J of Q.infos){if(c($,J.glyphId,Z.flag))continue;for(let q of Z.subtables){let K=q.coverage.get(J.glyphId);if(K===null)continue;let W=q.alternateSets[K];if(!W||W.length===0)continue;let[H]=W;if(H===void 0)continue;J.glyphId=H;break}}}function sH($,Q,Z){let J=0;while(J<Q.infos.length){let q=Q.infos[J];if(!q){J++;continue}if(c($,q.glyphId,Z.flag)){J++;continue}let K=[J],W=[q.glyphId];for(let U=J+1;U<Q.infos.length&&W.length<16;U++){let X=Q.infos[U];if(!X)continue;if(c($,X.glyphId,Z.flag))continue;K.push(U),W.push(X.glyphId)}let H=N7(Z,W,0);if(H){q.glyphId=H.ligatureGlyph;let U=[];for(let X=1;X<H.consumed;X++){let N=K[X];if(N!==void 0){let _=Q.infos[N];if(_)q.cluster=Math.min(q.cluster,_.cluster);U.push(N)}}for(let X of U.reverse())Q.removeRange(X,X+1)}J++}}function cH($,Q,Z,J){for(let q=0;q<Q.infos.length;q++){let K=Q.infos[q];if(!K)continue;if(c($,K.glyphId,Z.flag))continue;for(let W of Z.subtables){let H=!1,U=[];if(W.format===1){let X=tH($,Q,q,W,Z.flag);if(X)H=!0,U=X}else if(W.format===2){let X=eH($,Q,q,W,Z.flag);if(X)H=!0,U=X}else if(W.format===3){if($2($,Q,q,W,Z.flag))H=!0,U=W.lookupRecords}if(H){$Z($,Q,q,U,J);break}}}}function aH($,Q,Z,J){for(let q=0;q<Q.infos.length;q++){let K=Q.infos[q];if(!K)continue;if(c($,K.glyphId,Z.flag))continue;for(let W of Z.subtables){let H=!1,U=[];if(W.format===1){let X=Q2($,Q,q,W,Z.flag);if(X)H=!0,U=X}else if(W.format===2){let X=Z2($,Q,q,W,Z.flag);if(X)H=!0,U=X}else if(W.format===3){if(J2($,Q,q,W,Z.flag))H=!0,U=W.lookupRecords}if(H){$Z($,Q,q,U,J);break}}}}function rH($,Q,Z){for(let J=Q.infos.length-1;J>=0;J--){let q=Q.infos[J];if(!q)continue;if(c($,q.glyphId,Z.flag))continue;for(let K of Z.subtables){let W=K.coverage.get(q.glyphId);if(W===null)continue;let H=!0,U=J+1;for(let j of K.backtrackCoverages){while(U<Q.infos.length&&c($,Q.infos[U]?.glyphId,Z.flag))U++;if(U>=Q.infos.length||j.get(Q.infos[U]?.glyphId)===null){H=!1;break}U++}if(!H)continue;let X=!0,N=J-1;for(let j of K.lookaheadCoverages){while(N>=0&&c($,Q.infos[N]?.glyphId,Z.flag))N--;if(N<0||j.get(Q.infos[N]?.glyphId)===null){X=!1;break}N--}if(!X)continue;let _=K.substituteGlyphIds[W];if(_!==void 0)q.glyphId=_;break}}}function tH($,Q,Z,J,q){let K=Q.infos[Z]?.glyphId,W=J.coverage.get(K);if(W===null)return null;let H=J.ruleSets[W];if(!H)return null;for(let U of H)if(V6($,Q,Z+1,U.inputSequence,q))return U.lookupRecords;return null}function eH($,Q,Z,J,q){let K=Q.infos[Z]?.glyphId;if(J.coverage.get(K)===null)return null;let H=J.classDef.get(K),U=J.classRuleSets[H];if(!U)return null;for(let X of U)if(z6($,Q,Z+1,X.inputClasses,J.classDef,q))return X.lookupRecords;return null}function $2($,Q,Z,J,q){let K=Z;for(let W of J.coverages){while(K<Q.infos.length&&c($,Q.infos[K]?.glyphId,q))K++;if(K>=Q.infos.length)return!1;if(W.get(Q.infos[K]?.glyphId)===null)return!1;K++}return!0}function Q2($,Q,Z,J,q){let K=Q.infos[Z]?.glyphId,W=J.coverage.get(K);if(W===null)return null;let H=J.chainRuleSets[W];if(!H)return null;for(let U of H){if(!JZ($,Q,Z-1,U.backtrackSequence,q))continue;if(!V6($,Q,Z+1,U.inputSequence,q))continue;let X=Z+1;for(let N=0;N<U.inputSequence.length;N++){while(X<Q.infos.length&&c($,Q.infos[X]?.glyphId,q))X++;X++}if(!V6($,Q,X,U.lookaheadSequence,q))continue;return U.lookupRecords}return null}function Z2($,Q,Z,J,q){let K=Q.infos[Z]?.glyphId;if(J.coverage.get(K)===null)return null;let H=J.inputClassDef.get(K),U=J.chainClassRuleSets[H];if(!U)return null;for(let X of U){if(!qZ($,Q,Z-1,X.backtrackClasses,J.backtrackClassDef,q))continue;if(!z6($,Q,Z+1,X.inputClasses,J.inputClassDef,q))continue;let N=Z+1;for(let _=0;_<X.inputClasses.length;_++){while(N<Q.infos.length&&c($,Q.infos[N]?.glyphId,q))N++;N++}if(!z6($,Q,N,X.lookaheadClasses,J.lookaheadClassDef,q))continue;return X.lookupRecords}return null}function J2($,Q,Z,J,q){let K=Z-1;for(let U of J.backtrackCoverages){while(K>=0&&c($,Q.infos[K]?.glyphId,q))K--;if(K<0)return!1;if(U.get(Q.infos[K]?.glyphId)===null)return!1;K--}let W=Z;for(let U of J.inputCoverages){while(W<Q.infos.length&&c($,Q.infos[W]?.glyphId,q))W++;if(W>=Q.infos.length)return!1;if(U.get(Q.infos[W]?.glyphId)===null)return!1;W++}let H=W;for(let U of J.lookaheadCoverages){while(H<Q.infos.length&&c($,Q.infos[H]?.glyphId,q))H++;if(H>=Q.infos.length)return!1;if(U.get(Q.infos[H]?.glyphId)===null)return!1;H++}return!0}function $Z($,Q,Z,J,q){let K=[...J].sort((W,H)=>H.sequenceIndex-W.sequenceIndex);for(let W of K){let H=q.gsubLookups.find((N)=>N.index===W.lookupListIndex);if(!H)continue;let U=Z+W.sequenceIndex;if(U>=Q.infos.length)continue;let X=Q.infos[U];if(!X)continue;if(H.lookup.type===1){let N=N9(H.lookup,X.glyphId);if(N!==null)X.glyphId=N}}}function q2($,Q){for(let[Z,J]of Q.infos.entries()){let q=$.advanceWidth(J.glyphId);Q.setAdvance(Z,q,0)}}function K2($,Q,Z){for(let{lookup:J}of Z.gposLookups)QZ($,Q,J,Z)}function QZ($,Q,Z,J){switch(Z.type){case 1:W2($,Q,Z);break;case 2:H2($,Q,Z);break;case 3:U2($,Q,Z);break;case 4:X2($,Q,Z);break;case 5:N2($,Q,Z);break;case 6:_2($,Q,Z);break;case 7:j2($,Q,Z,J);break;case 8:w2($,Q,Z,J);break}}function W2($,Q,Z){for(let[J,q]of Q.infos.entries()){let K=Q.positions[J];if(!K)continue;if(c($,q.glyphId,Z.flag))continue;for(let W of Z.subtables){let H=W.coverage.get(q.glyphId);if(H===null)continue;let U=W.format===1?W.value:W.values?.[H];if(U){if(U.xPlacement)K.xOffset+=U.xPlacement;if(U.yPlacement)K.yOffset+=U.yPlacement;if(U.xAdvance)K.xAdvance+=U.xAdvance;if(U.yAdvance)K.yAdvance+=U.yAdvance}break}}}function H2($,Q,Z){for(let J=0;J<Q.infos.length-1;J++){let q=Q.infos[J];if(!q)continue;if(c($,q.glyphId,Z.flag))continue;let K=J+1;while(K<Q.infos.length){let U=Q.infos[K];if(U&&!c($,U.glyphId,Z.flag))break;K++}if(K>=Q.infos.length)break;let W=Q.infos[K];if(!W)continue;let H=J7(Z,q.glyphId,W.glyphId);if(H){let U=Q.positions[J],X=Q.positions[K];if(U)U.xAdvance+=H.xAdvance1;if(X)X.xAdvance+=H.xAdvance2}}}function U2($,Q,Z){for(let J=0;J<Q.infos.length-1;J++){let q=Q.infos[J];if(!q)continue;if(c($,q.glyphId,Z.flag))continue;let K=J+1;while(K<Q.infos.length){let H=Q.infos[K];if(H&&!c($,H.glyphId,Z.flag))break;K++}if(K>=Q.infos.length)break;let W=Q.infos[K];if(!W)continue;for(let H of Z.subtables){let U=H.coverage.get(q.glyphId),X=H.coverage.get(W.glyphId);if(U===null||X===null)continue;let N=H.entryExitRecords[U],_=H.entryExitRecords[X];if(!N?.exitAnchor||!_?.entryAnchor)continue;let j=N.exitAnchor,Y=_.entryAnchor,w=Q.positions[K];if(w)w.yOffset=j.yCoordinate-Y.yCoordinate;break}}}function X2($,Q,Z){for(let J=0;J<Q.infos.length;J++){let q=Q.infos[J];if(!q)continue;if(A1($.gdef,q.glyphId)!==3)continue;let K=-1;for(let H=J-1;H>=0;H--){let U=Q.infos[H];if(!U)continue;let X=A1($.gdef,U.glyphId);if(X===1||X===0){K=H;break}if(X===3)continue;if(X===2){K=H;break}}if(K<0)continue;let W=Q.infos[K];if(!W)continue;for(let H of Z.subtables){let U=H.markCoverage.get(q.glyphId),X=H.baseCoverage.get(W.glyphId);if(U===null||X===null)continue;let N=H.markArray.markRecords[U],_=H.baseArray[X];if(!N||!_)continue;let j=_.baseAnchors[N.markClass];if(!j)continue;let Y=N.markAnchor,w=Q.positions[J],V=Q.positions[K];if(!w||!V)continue;w.xOffset=j.xCoordinate-Y.xCoordinate+V.xOffset,w.yOffset=j.yCoordinate-Y.yCoordinate+V.yOffset,w.xAdvance=0,w.yAdvance=0;break}}}function N2($,Q,Z){for(let J=0;J<Q.infos.length;J++){let q=Q.infos[J];if(!q)continue;if(A1($.gdef,q.glyphId)!==3)continue;let K=-1,W=0;for(let U=J-1;U>=0;U--){let X=Q.infos[U];if(!X)continue;let N=A1($.gdef,X.glyphId);if(N===2){K=U;break}if(N===3){W++;continue}break}if(K<0)continue;let H=Q.infos[K];if(!H)continue;for(let U of Z.subtables){let X=U.markCoverage.get(q.glyphId),N=U.ligatureCoverage.get(H.glyphId);if(X===null||N===null)continue;let _=U.markArray.markRecords[X],j=U.ligatureArray[N];if(!_||!j)continue;let Y=Math.min(W,j.componentRecords.length-1),w=j.componentRecords[Y];if(!w)continue;let V=w.ligatureAnchors[_.markClass];if(!V)continue;let z=_.markAnchor,E=Q.positions[J],G=Q.positions[K];if(!E||!G)continue;E.xOffset=V.xCoordinate-z.xCoordinate+G.xOffset,E.yOffset=V.yCoordinate-z.yCoordinate+G.yOffset,E.xAdvance=0,E.yAdvance=0;break}}}function _2($,Q,Z){for(let J=0;J<Q.infos.length;J++){let q=Q.infos[J];if(!q)continue;if(A1($.gdef,q.glyphId)!==3)continue;let K=-1;if(J>0){let H=Q.infos[J-1];if(H){if(A1($.gdef,H.glyphId)===3)K=J-1}}if(K<0)continue;let W=Q.infos[K];if(!W)continue;for(let H of Z.subtables){let U=H.mark1Coverage.get(q.glyphId),X=H.mark2Coverage.get(W.glyphId);if(U===null||X===null)continue;let N=H.mark1Array.markRecords[U],_=H.mark2Array[X];if(!N||!_)continue;let j=_.mark2Anchors[N.markClass];if(!j)continue;let Y=N.markAnchor,w=Q.positions[J],V=Q.positions[K];if(!w||!V)continue;w.xOffset=j.xCoordinate-Y.xCoordinate+V.xOffset,w.yOffset=j.yCoordinate-Y.yCoordinate+V.yOffset;break}}}function j2($,Q,Z,J){for(let q=0;q<Q.infos.length;q++){let K=Q.infos[q];if(!K)continue;if(c($,K.glyphId,Z.flag))continue;for(let W of Z.subtables){let H=!1,U=[];if(W.format===1){let X=Y2($,Q,q,W,Z.flag);if(X)H=!0,U=X}else if(W.format===2){let X=V2($,Q,q,W,Z.flag);if(X)H=!0,U=X}else if(W.format===3){if(z2($,Q,q,W,Z.flag))H=!0,U=W.lookupRecords}if(H){ZZ($,Q,q,U,J);break}}}}function w2($,Q,Z,J){for(let q=0;q<Q.infos.length;q++){let K=Q.infos[q];if(!K)continue;if(c($,K.glyphId,Z.flag))continue;for(let W of Z.subtables){let H=!1,U=[];if(W.format===1){let X=E2($,Q,q,W,Z.flag);if(X)H=!0,U=X}else if(W.format===2){let X=G2($,Q,q,W,Z.flag);if(X)H=!0,U=X}else if(W.format===3){if(A2($,Q,q,W,Z.flag))H=!0,U=W.lookupRecords}if(H){ZZ($,Q,q,U,J);break}}}}function Y2($,Q,Z,J,q){let K=Q.infos[Z]?.glyphId,W=J.coverage.get(K);if(W===null)return null;let H=J.ruleSets[W];if(!H)return null;for(let U of H)if(V6($,Q,Z+1,U.inputSequence,q))return U.lookupRecords;return null}function V2($,Q,Z,J,q){let K=Q.infos[Z]?.glyphId;if(J.coverage.get(K)===null)return null;let H=J.classDef.get(K),U=J.classRuleSets[H];if(!U)return null;for(let X of U)if(z6($,Q,Z+1,X.inputClasses,J.classDef,q))return X.lookupRecords;return null}function z2($,Q,Z,J,q){let K=Z;for(let W of J.coverages){while(K<Q.infos.length&&c($,Q.infos[K]?.glyphId,q))K++;if(K>=Q.infos.length)return!1;if(W.get(Q.infos[K]?.glyphId)===null)return!1;K++}return!0}function E2($,Q,Z,J,q){let K=Q.infos[Z]?.glyphId,W=J.coverage.get(K);if(W===null)return null;let H=J.chainRuleSets[W];if(!H)return null;for(let U of H){if(!JZ($,Q,Z-1,U.backtrackSequence,q))continue;if(!V6($,Q,Z+1,U.inputSequence,q))continue;let X=Z+1;for(let N=0;N<U.inputSequence.length;N++){while(X<Q.infos.length&&c($,Q.infos[X]?.glyphId,q))X++;X++}if(!V6($,Q,X,U.lookaheadSequence,q))continue;return U.lookupRecords}return null}function G2($,Q,Z,J,q){let K=Q.infos[Z]?.glyphId;if(J.coverage.get(K)===null)return null;let H=J.inputClassDef.get(K),U=J.chainClassRuleSets[H];if(!U)return null;for(let X of U){if(!qZ($,Q,Z-1,X.backtrackClasses,J.backtrackClassDef,q))continue;if(!z6($,Q,Z+1,X.inputClasses,J.inputClassDef,q))continue;let N=Z+1;for(let _=0;_<X.inputClasses.length;_++){while(N<Q.infos.length&&c($,Q.infos[N]?.glyphId,q))N++;N++}if(!z6($,Q,N,X.lookaheadClasses,J.lookaheadClassDef,q))continue;return X.lookupRecords}return null}function A2($,Q,Z,J,q){let K=Z-1;for(let U of J.backtrackCoverages){while(K>=0&&c($,Q.infos[K]?.glyphId,q))K--;if(K<0)return!1;if(U.get(Q.infos[K]?.glyphId)===null)return!1;K--}let W=Z;for(let U of J.inputCoverages){while(W<Q.infos.length&&c($,Q.infos[W]?.glyphId,q))W++;if(W>=Q.infos.length)return!1;if(U.get(Q.infos[W]?.glyphId)===null)return!1;W++}let H=W;for(let U of J.lookaheadCoverages){while(H<Q.infos.length&&c($,Q.infos[H]?.glyphId,q))H++;if(H>=Q.infos.length)return!1;if(U.get(Q.infos[H]?.glyphId)===null)return!1;H++}return!0}function ZZ($,Q,Z,J,q){let K=[...J].sort((W,H)=>H.sequenceIndex-W.sequenceIndex);for(let W of K){let H=q.gposLookups.find((X)=>X.index===W.lookupListIndex);if(!H)continue;if(Z+W.sequenceIndex>=Q.infos.length)continue;QZ($,Q,H.lookup,q)}}function V6($,Q,Z,J,q){let K=Z;for(let W of J){while(K<Q.infos.length&&c($,Q.infos[K]?.glyphId,q))K++;if(K>=Q.infos.length)return!1;if(Q.infos[K]?.glyphId!==W)return!1;K++}return!0}function JZ($,Q,Z,J,q){let K=Z;for(let W of J){while(K>=0&&c($,Q.infos[K]?.glyphId,q))K--;if(K<0)return!1;if(Q.infos[K]?.glyphId!==W)return!1;K--}return!0}function z6($,Q,Z,J,q,K){let W=Z;for(let H of J){while(W<Q.infos.length&&c($,Q.infos[W]?.glyphId,K))W++;if(W>=Q.infos.length)return!1;if(q.get(Q.infos[W]?.glyphId)!==H)return!1;W++}return!0}function qZ($,Q,Z,J,q,K){let W=Z;for(let H of J){while(W>=0&&c($,Q.infos[W]?.glyphId,K))W--;if(W<0)return!1;if(q.get(Q.infos[W]?.glyphId)!==H)return!1;W--}return!0}function c($,Q,Z){let J=$.gdef;if(!J)return!1;let q=A1(J,Q);if(Z&m1.IgnoreBaseGlyphs&&q===1)return!0;if(Z&m1.IgnoreLigatures&&q===2)return!0;if(Z&m1.IgnoreMarks&&q===3)return!0;let K=r5(Z);if(K!==0&&q===3){if(J.markAttachClassDef.get(Q)!==K)return!0}return!1}function B2($,Q){let Z=$.morx;if(!Z)return;for(let J of Z.chains)for(let q of J.subtables){if((J.defaultFlags&q.subFeatureFlags)===0)continue;switch(q.type){case 4:for(let K of Q.infos){let W=w9(q,K.glyphId);if(W!==null)K.glyphId=W}break;case 0:S8(q,Q.infos);break;case 1:h8(q,Q.infos);break;case 2:{let K=m8(q,Q.infos);if(K.length!==Q.infos.length)Q.initFromInfos(K);break}case 5:{let K=y8(q,Q.infos);if(K.length!==Q.infos.length)Q.initFromInfos(K);break}}}}var W0={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 h6($,Q){let J=0,q=new Map,K=Q?new Map:null,W="";function H(U){if(U.indexOf("+")!==-1)for(let X=+U;X--;)H(W);else{W=U;let X=U.split(">"),N=X[0]??"",_=X[1]??"";J+=parseInt(N,36);let j=String.fromCodePoint(J);J+=parseInt(_,36);let Y=String.fromCodePoint(J);if(q.set(j,Y),K)K.set(Y,j)}}return $.split(",").forEach(H),{map:q,reverseMap:K}}var H0=null,KZ=null,WZ=null;function U0(){if(!H0){let{map:$,reverseMap:Q}=h6(W0.pairs,!0);H0=$,KZ=Q,WZ=h6(W0.canonical,!1).map}}function G8($){return U0(),H0?.get($)||null}function A8($){return U0(),KZ?.get($)||null}function B8($){return U0(),WZ?.get($)||null}var m6={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 t={},X0={};t.L=1;X0[1]="L";Object.keys(m6).forEach(($,Q)=>{t[$]=1<<Q+1;let Z=t[$];if(Z!==void 0)X0[Z]=$});Object.freeze(t);function e($){return t[$]??0}var S1=e("LRI")|e("RLI")|e("FSI"),M8=e("L")|e("R")|e("AL"),w1=e("B")|e("S")|e("WS")|e("ON")|e("FSI")|e("LRI")|e("RLI")|e("PDI"),W1=e("BN")|e("RLE")|e("LRE")|e("RLO")|e("LRO")|e("PDF"),y6=e("S")|e("WS")|e("B")|S1|e("PDI")|W1,D8=null;function D2(){if(!D8){D8=new Map;let $=0;for(let Q in m6)if(Object.hasOwn(m6,Q)){let Z=m6[Q],J="",q=0,K=!1,W=0;for(let H=0;H<=Z.length+1;H+=1){let U=Z[H];if(U!==","&&H!==Z.length)if(U==="+")K=!0,W=$=W+parseInt(J,36),J="";else J+=U;else{if(!K)W=$=W+parseInt(J,36),q=$;else q=$+parseInt(J,36);K=!1,J="",W=q;let X=e(Q);for(let N=$;N<q+1;N+=1)D8.set(N,X)}}}}}function E1($){D2();let Q=$.codePointAt(0);if(Q===void 0)return e("L");return D8?.get(Q)??e("L")}var D1=t.L??1,L1=t.R??2,Y1=t.EN??4,b6=t.ES??8,F8=t.ET??16,g6=t.AN??32,L8=t.CS??64,E6=t.B??128,M2=t.S??256,R8=t.ON??512,F2=t.BN??1024,P8=t.NSM??2048,T8=t.AL??4096,HZ=t.LRO??8192,O8=t.RLO??16384,UZ=t.LRE??32768,N0=t.RLE??65536,XZ=t.PDF??131072,L2=t.LRI??262144,NZ=t.RLI??524288,R2=t.FSI??1048576,G6=t.PDI??2097152;function p($,Q){return $[Q]??0}function $1($,Q){return $[Q]??0}function A6($,Q){return $[Q]??""}function _0($,Q){let J=new Uint32Array($.length);for(let V=0;V<$.length;V++)J[V]=E1(A6($,V));let q=new Map;function K(V,z){let E=p(J,V);if(J[V]=z,q.set(E,(q.get(E)??0)-1),E&w1)q.set(w1,(q.get(w1)??0)-1);if(q.set(z,(q.get(z)??0)+1),z&w1)q.set(w1,(q.get(w1)??0)+1)}let W=new Uint8Array($.length),H=new Map,U=[],X=null;function N(V,z){for(let E=V;E<$.length;E++){let G=p(J,E);if(G&(L1|T8))return 1;if(G&(E6|D1)||z&&G===G6)return 0;if(G&S1){let B=_(E);E=B===-1?$.length:B}}return 0}function _(V){let z=1;for(let E=V+1;E<$.length;E++){let G=p(J,E);if(G&E6)break;if(G&G6){if(--z===0)return E}else if(G&S1)z++}return-1}for(let V=0;V<$.length;V++){if(!X)X={start:V,end:$.length-1,level:Q==="rtl"?1:Q==="ltr"?0:N(V,!1)},U.push(X);if(p(J,V)&E6)X.end=V,X=null}let j=N0|UZ|O8|HZ|S1|G6|XZ|E6,Y=(V)=>V+(V&1?1:2),w=(V)=>V+(V&1?2:1);for(let V=0;V<U.length;V++){let z=U[V];if(!z)continue;X=z;let E=[{_level:X.level,_override:0,_isolate:0}],G=0,B=0,D=0;q.clear();for(let I=X.start;I<=X.end;I++){let O=p(J,I),g=E[E.length-1];if(!g)continue;if(q.set(O,(q.get(O)??0)+1),O&w1)q.set(w1,(q.get(w1)??0)+1);if(O&j){if(O&(N0|UZ)){W[I]=g._level;let n=(O===N0?w:Y)(g._level);if(n<=125&&!G&&!B)E.push({_level:n,_override:0,_isolate:0});else if(!G)B++}else if(O&(O8|HZ)){W[I]=g._level;let n=(O===O8?w:Y)(g._level);if(n<=125&&!G&&!B)E.push({_level:n,_override:O&O8?L1:D1,_isolate:0});else if(!G)B++}else if(O&S1){if(O&R2)O=N(I+1,!0)===1?NZ:L2;if(W[I]=g._level,g._override)K(I,g._override);let n=(O===NZ?w:Y)(g._level);if(n<=125&&G===0&&B===0)D++,E.push({_level:n,_override:0,_isolate:1,_isolInitIndex:I});else G++}else if(O&G6){if(G>0)G--;else if(D>0){B=0;while(E.length>0){if(E[E.length-1]?._isolate)break;E.pop()}let v=E[E.length-1]?._isolInitIndex;if(v!=null)H.set(v,I),H.set(I,v);E.pop(),D--}if(g=E[E.length-1],!g)continue;if(W[I]=g._level,g._override)K(I,g._override)}else if(O&XZ){if(G===0){if(B>0)B--;else if(!g._isolate&&E.length>1){if(E.pop(),g=E[E.length-1],!g)continue}}W[I]=g._level}else if(O&E6)W[I]=X.level}else if(W[I]=g._level,g._override&&O!==F2)K(I,g._override)}let S=[],L=null;for(let I=X.start;I<=X.end;I++){let O=p(J,I);if(!(O&W1)){let g=W[I]??0,n=!!(O&S1),v=O===G6;if(L&&g===L._level)L._end=I,L._endsWithIsolInit=n;else L={_start:I,_end:I,_level:g,_startsWithPDI:v,_endsWithIsolInit:n},S.push(L)}}let h=[];for(let I=0;I<S.length;I++){let O=S[I];if(!O)continue;if(!O._startsWithPDI||O._startsWithPDI&&!H.has(O._start)){L=O;let g=[O];while(L?._endsWithIsolInit){let x=H.get(L._end);if(x==null)break;let s=!1;for(let i=I+1;i<S.length;i++){let l=S[i];if(l?._start===x){L=l,g.push(l),s=!0;break}}if(!s)break}let n=[];for(let x of g)for(let s=x._start;s<=x._end;s++)n.push(s);let v=n[0]??0,o=W[v]??0,y=X.level;for(let x=v-1;x>=0;x--)if(!(p(J,x)&W1)){y=W[x]??0;break}let b=n[n.length-1]??0,R=W[b]??0,m=X.level;if(!(p(J,b)&S1)){for(let x=b+1;x<=X.end;x++)if(!(p(J,x)&W1)){m=W[x]??0;break}}h.push({_seqIndices:n,_sosType:Math.max(y,o)%2?L1:D1,_eosType:Math.max(m,R)%2?L1:D1})}}for(let I of h){let{_seqIndices:O,_sosType:g,_eosType:n}=I,v=O[0]??0,o=(W[v]??0)&1?L1:D1;if(q.get(P8))for(let y=0;y<O.length;y++){let b=$1(O,y);if(p(J,b)&P8){let R=g;for(let m=y-1;m>=0;m--){let x=$1(O,m);if(!(p(J,x)&W1)){R=p(J,x);break}}K(b,R&(S1|G6)?R8:R)}}if(q.get(Y1))for(let y=0;y<O.length;y++){let b=$1(O,y);if(p(J,b)&Y1)for(let R=y-1;R>=-1;R--){let m=R===-1?g:p(J,$1(O,R));if(m&M8){if(m===T8)K(b,g6);break}}}if(q.get(T8))for(let y=0;y<O.length;y++){let b=$1(O,y);if(p(J,b)&T8)K(b,L1)}if(q.get(b6)||q.get(L8))for(let y=1;y<O.length-1;y++){let b=$1(O,y);if(p(J,b)&(b6|L8)){let R=0,m=0;for(let x=y-1;x>=0;x--)if(R=p(J,$1(O,x)),!(R&W1))break;for(let x=y+1;x<O.length;x++)if(m=p(J,$1(O,x)),!(m&W1))break;if(R===m&&(p(J,b)===b6?R===Y1:R&(Y1|g6)))K(b,R)}}if(q.get(Y1))for(let y=0;y<O.length;y++){let b=$1(O,y);if(p(J,b)&Y1){for(let R=y-1;R>=0;R--){let m=$1(O,R);if(!(p(J,m)&(F8|W1)))break;K(m,Y1)}for(y++;y<O.length;y++){let R=$1(O,y);if(!(p(J,R)&(F8|W1|Y1)))break;if(p(J,R)!==Y1)K(R,Y1)}}}if(q.get(F8)||q.get(b6)||q.get(L8))for(let y=0;y<O.length;y++){let b=$1(O,y);if(p(J,b)&(F8|b6|L8)){K(b,R8);for(let R=y-1;R>=0;R--){let m=$1(O,R);if(!(p(J,m)&W1))break;K(m,R8)}for(let R=y+1;R<O.length;R++){let m=$1(O,R);if(!(p(J,m)&W1))break;K(m,R8)}}}if(q.get(Y1)){let y=g;for(let b=0;b<O.length;b++){let R=$1(O,b),m=p(J,R);if(m&Y1){if(y===D1)K(R,D1)}else if(m&M8)y=m}}if(q.get(w1)){let y=L1|Y1|g6,b=y|D1,R=[],m=[];for(let x=0;x<O.length;x++){let s=$1(O,x);if(p(J,s)&w1){let i=A6($,s);if(G8(i)!==null)if(m.length<63)m.push({char:i,seqIndex:x});else break;else{let r=A8(i);if(r!==null)for(let T=m.length-1;T>=0;T--){let a=m[T];if(!a)continue;let k=a.char,R1=B8(i),C=B8(k);if(k===r||R1&&k===A8(R1)||C&&G8(C)===i){R.push([a.seqIndex,x]),m.length=T;break}}}}}R.sort((x,s)=>x[0]-s[0]);for(let x of R){let[s,i]=x,l=!1,r=0;for(let T=s+1;T<i;T++){let a=$1(O,T),k=p(J,a);if(k&b){l=!0;let R1=k&y?L1:D1;if(R1===o){r=R1;break}}}if(l&&!r){r=g;for(let T=s-1;T>=0;T--){let a=$1(O,T),k=p(J,a);if(k&b){let R1=k&y?L1:D1;r=R1!==o?R1:o;break}}}if(r){if(J[$1(O,s)]=r,J[$1(O,i)]=r,r!==o){for(let T=s+1;T<O.length;T++){let a=$1(O,T);if(!(p(J,a)&W1)){if(E1(A6($,a))&P8)J[a]=r;break}}for(let T=i+1;T<O.length;T++){let a=$1(O,T);if(!(p(J,a)&W1)){if(E1(A6($,a))&P8)J[a]=r;break}}}}}for(let x=0;x<O.length;x++){let s=$1(O,x);if(p(J,s)&w1){let i=x,l=x,r=g;for(let a=x-1;a>=0;a--){let k=$1(O,a);if(p(J,k)&W1)i=a;else{r=p(J,k)&y?L1:D1;break}}let T=n;for(let a=x+1;a<O.length;a++){let k=$1(O,a);if(p(J,k)&(w1|W1))l=a;else{T=p(J,k)&y?L1:D1;break}}for(let a=i;a<=l;a++)J[$1(O,a)]=r===T?r:o;x=l}}}}for(let I=X.start;I<=X.end;I++){let O=W[I]??0,g=p(J,I);if(O&1){if(g&(D1|Y1|g6))W[I]++}else if(g&L1)W[I]++;else if(g&(g6|Y1))W[I]+=2;if(g&W1)W[I]=I===0?X.level:W[I-1]??X.level;if(I===X.end||E1(A6($,I))&(M2|E6))for(let n=I;n>=0&&E1(A6($,n))&y6;n--)W[n]=X.level}}return{levels:W,paragraphs:U}}var _Z="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 j0=null;function P2(){if(!j0){let{map:$,reverseMap:Q}=h6(_Z,!0);if(Q)Q.forEach((Z,J)=>{$.set(J,Z)});j0=$}}function I8($){return P2(),j0?.get($)||null}function jZ($,Q,Z,J){let q=$.length,K=Math.max(0,Z==null?0:+Z),W=Math.min(q-1,J==null?q-1:+J),H=[];for(let U of Q.paragraphs){let X=Math.max(K,U.start),N=Math.min(W,U.end);if(X<N){let _=Q.levels.slice(X,N+1);for(let w=N;w>=X;w--){let V=$[w];if(V===void 0)break;if(!(E1(V)&y6))break;_[w-X]=U.level}let j=U.level,Y=1/0;for(let w=0;w<_.length;w++){let V=_[w]??0;if(V>j)j=V;if(V<Y)Y=V|1}for(let w=j;w>=Y;w--)for(let V=0;V<_.length;V++)if((_[V]??0)>=w){let E=V;while(V+1<_.length){if((_[V+1]??0)<w)break;V++}if(V>E)H.push([E+X,V+X])}}}return H}function v8($,Q,Z,J){let q=jZ($,Q,Z,J),K=[];for(let W=0;W<$.length;W++)K[W]=W;for(let[W,H]of q){let U=K.slice(W,H+1);for(let X=U.length;X--;){let N=U[X];if(N!==void 0)K[H-X]=N}}return K}function wZ($,Q=4){let Z=Q===5?"rtl":Q===4?"ltr":"auto",J=_0($,Z);return{levels:J.levels,paragraphs:J.paragraphs}}function T2($,Q,Z=0,J=$.length){return Array.from(v8($,Q,Z,J))}function YZ($,Q){if($.length===0)return $;let Z="x".repeat($.length),J=v8(Z,Q,0,$.length),q=[];for(let K of J)if(K<$.length){let W=$[K];if(W)q.push(W)}return q}function VZ($){let Q=String.fromCodePoint($),Z=I8(Q);return Z?Z.codePointAt(0)??$:$}function zZ($,Q){for(let[Z,J]of $.entries()){let q=Q[Z];if(q===void 0)continue;if(q&1){let K=VZ(J.codepoint);if(K!==J.codepoint)J.codepoint=K}}}var Z6={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 O2($){return E1($)}function I2($){let Q=String.fromCodePoint($);return(E1(Q)&(Z6.R|Z6.AL))!==0}function v2($){let Q=String.fromCodePoint($);return(E1(Q)&Z6.L)!==0}function k2($){for(let Q of $){let Z=E1(Q);if(Z&Z6.L)return 4;if(Z&(Z6.R|Z6.AL))return 5}return 4}function C2($,Q=4){if($.length===0)return{infos:$,levels:new Uint8Array(0)};let Z=$.map((K)=>String.fromCodePoint(K.codepoint)).join(""),J=wZ(Z,Q);return zZ($,J.levels),{infos:YZ($,J),levels:J.levels}}var EZ;((C)=>{C[C.BK=0]="BK";C[C.CR=1]="CR";C[C.LF=2]="LF";C[C.CM=3]="CM";C[C.NL=4]="NL";C[C.SG=5]="SG";C[C.WJ=6]="WJ";C[C.ZW=7]="ZW";C[C.GL=8]="GL";C[C.SP=9]="SP";C[C.ZWJ=10]="ZWJ";C[C.B2=11]="B2";C[C.BA=12]="BA";C[C.BB=13]="BB";C[C.HY=14]="HY";C[C.CB=15]="CB";C[C.CL=16]="CL";C[C.CP=17]="CP";C[C.EX=18]="EX";C[C.IN=19]="IN";C[C.NS=20]="NS";C[C.OP=21]="OP";C[C.QU=22]="QU";C[C.IS=23]="IS";C[C.NU=24]="NU";C[C.PO=25]="PO";C[C.PR=26]="PR";C[C.SY=27]="SY";C[C.AI=28]="AI";C[C.AL=29]="AL";C[C.CJ=30]="CJ";C[C.EB=31]="EB";C[C.EM=32]="EM";C[C.H2=33]="H2";C[C.H3=34]="H3";C[C.HL=35]="HL";C[C.ID=36]="ID";C[C.JL=37]="JL";C[C.JV=38]="JV";C[C.JT=39]="JT";C[C.RI=40]="RI";C[C.SA=41]="SA";C[C.XX=42]="XX"})(EZ||={});var GZ;((W)=>{W[W.Direct=0]="Direct";W[W.Indirect=1]="Indirect";W[W.CombiningIndirect=2]="CombiningIndirect";W[W.CombiningProhibited=3]="CombiningProhibited";W[W.Prohibited=4]="Prohibited";W[W.Explicit=5]="Explicit"})(GZ||={});var AZ;((J)=>{J[J.NoBreak=0]="NoBreak";J[J.Optional=1]="Optional";J[J.Mandatory=2]="Mandatory"})(AZ||={});function BZ($){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 S2($,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=$,J=Q;if($===3||$===10)Z=29;if(Q===3||Q===10)J=29;if($=Z,Q=J,$===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 h2($){let Q=[];for(let Z of $)Q.push(Z.codePointAt(0)??0);return w0(Q)}function w0($){let Q=$.length,Z=[],J=[];for(let q of $)Z.push(BZ(q));J.push(0);for(let q=1;q<Q;q++){let K=Z[q-1],W=Z[q];switch(S2(K,W)){case 5:J.push(2);break;case 0:J.push(1);break;case 1:if(K===9)J.push(1);else J.push(0);break;default:J.push(0)}}return J.push(2),{breaks:J,classes:Z}}function m2($){let Q=$.map((Z)=>Z.codepoint);return w0(Q)}function y2($,Q){for(let Z=Q+1;Z<$.breaks.length;Z++)if($.breaks[Z]!==0)return Z;return $.breaks.length-1}function b2($,Q){if(Q<0||Q>=$.breaks.length)return!1;return $.breaks[Q]!==0}function g2($,Q){if(Q<0||Q>=$.breaks.length)return!1;return $.breaks[Q]===2}function x2($){let Q=[];for(let Z=0;Z<$.breaks.length;Z++)if($.breaks[Z]!==0)Q.push(Z);return Q}var MZ;((M)=>{M.Common="Zyyy";M.Inherited="Zinh";M.Unknown="Zzzz";M.Latin="Latn";M.Greek="Grek";M.Cyrillic="Cyrl";M.Armenian="Armn";M.Hebrew="Hebr";M.Arabic="Arab";M.Syriac="Syrc";M.Thaana="Thaa";M.Devanagari="Deva";M.Bengali="Beng";M.Gurmukhi="Guru";M.Gujarati="Gujr";M.Oriya="Orya";M.Tamil="Taml";M.Telugu="Telu";M.Kannada="Knda";M.Malayalam="Mlym";M.Sinhala="Sinh";M.Thai="Thai";M.Lao="Laoo";M.Tibetan="Tibt";M.Myanmar="Mymr";M.Georgian="Geor";M.Hangul="Hang";M.Ethiopic="Ethi";M.Cherokee="Cher";M.CanadianAboriginal="Cans";M.Ogham="Ogam";M.Runic="Runr";M.Khmer="Khmr";M.Mongolian="Mong";M.Hiragana="Hira";M.Katakana="Kana";M.Bopomofo="Bopo";M.Han="Hani";M.Yi="Yiii";M.OldItalic="Ital";M.Gothic="Goth";M.Deseret="Dsrt";M.Tagalog="Tglg";M.Hanunoo="Hano";M.Buhid="Buhd";M.Tagbanwa="Tagb";M.Limbu="Limb";M.TaiLe="Tale";M.LinearB="Linb";M.Ugaritic="Ugar";M.Shavian="Shaw";M.Osmanya="Osma";M.Cypriot="Cprt";M.Braille="Brai";M.Buginese="Bugi";M.Coptic="Copt";M.NewTaiLue="Talu";M.Glagolitic="Glag";M.Tifinagh="Tfng";M.SylotiNagri="Sylo";M.OldPersian="Xpeo";M.Kharoshthi="Khar";M.Balinese="Bali";M.Cuneiform="Xsux";M.Phoenician="Phnx";M.PhagsPa="Phag";M.Nko="Nkoo";M.Sundanese="Sund";M.Lepcha="Lepc";M.OlChiki="Olck";M.Vai="Vaii";M.Saurashtra="Saur";M.KayahLi="Kali";M.Rejang="Rjng";M.Lycian="Lyci";M.Carian="Cari";M.Lydian="Lydi";M.Cham="Cham";M.TaiTham="Lana";M.TaiViet="Tavt";M.Avestan="Avst";M.EgyptianHieroglyphs="Egyp";M.Samaritan="Samr";M.Lisu="Lisu";M.Bamum="Bamu";M.Javanese="Java";M.MeeteiMayek="Mtei";M.ImperialAramaic="Armi";M.OldSouthArabian="Sarb";M.InscriptionalParthian="Prti";M.InscriptionalPahlavi="Phli";M.OldTurkic="Orkh";M.Kaithi="Kthi";M.Batak="Batk";M.Brahmi="Brah";M.Mandaic="Mand";M.Chakma="Cakm";M.MeroiticCursive="Merc";M.MeroiticHieroglyphs="Mero";M.Miao="Plrd";M.Sharada="Shrd";M.SoraSompeng="Sora";M.Takri="Takr";M.CaucasianAlbanian="Aghb";M.BassaVah="Bass";M.Duployan="Dupl";M.Elbasan="Elba";M.Grantha="Gran";M.PahawhHmong="Hmng";M.Khojki="Khoj";M.LinearA="Lina";M.Mahajani="Mahj";M.Manichaean="Mani";M.MendeKikakui="Mend";M.Modi="Modi";M.Mro="Mroo";M.OldNorthArabian="Narb";M.Nabataean="Nbat";M.Palmyrene="Palm";M.PauCinHau="Pauc";M.OldPermic="Perm";M.PsalterPahlavi="Phlp";M.Siddham="Sidd";M.Khudawadi="Sind";M.Tirhuta="Tirh";M.WarangCiti="Wara";M.Ahom="Ahom";M.AnatolianHieroglyphs="Hluw";M.Hatran="Hatr";M.Multani="Mult";M.OldHungarian="Hung";M.SignWriting="Sgnw";M.Adlam="Adlm";M.Bhaiksuki="Bhks";M.Marchen="Marc";M.Newa="Newa";M.Osage="Osge";M.Tangut="Tang";M.MasaramGondi="Gonm";M.Nushu="Nshu";M.Soyombo="Soyo";M.ZanabazarSquare="Zanb";M.Dogra="Dogr";M.GunjalaGondi="Gong";M.Makasar="Maka";M.Medefaidrin="Medf";M.HanifiRohingya="Rohg";M.Sogdian="Sogd";M.OldSogdian="Sogo";M.Elymaic="Elym";M.Nandinagari="Nand";M.NyiakengPuachueHmong="Hmnp";M.Wancho="Wcho";M.Yezidi="Yezi";M.Chorasmian="Chrs";M.DivesAkuru="Diak";M.KhitanSmallScript="Kits";M.Vithkuqi="Vith";M.OldUyghur="Ougr";M.Cypro_Minoan="Cpmn";M.Tangsa="Tnsa";M.Toto="Toto";M.Kawi="Kawi";M.NagMundari="Nagm"})(MZ||={});var DZ=[{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 x6($){let Q=0,Z=DZ.length-1;while(Q<=Z){let J=Q+Z>>>1,q=DZ[J];if($<q.start)Z=J-1;else if($>q.end)Q=J+1;else return q.script}return"Zzzz"}function u2($){let Q=new Map;for(let q of $){let K=q.codePointAt(0)??0,W=x6(K);if(W==="Zyyy"||W==="Zinh")continue;Q.set(W,(Q.get(W)??0)+1)}if(Q.size===0)return"Zyyy";let Z="Zyyy",J=0;for(let[q,K]of Q)if(K>J)J=K,Z=q;return Z}function f2($){let Q=new Set;for(let Z of $){let J=Z.codePointAt(0)??0,q=x6(J);Q.add(q)}return Array.from(Q)}function l2($,Q){for(let Z of $){let J=Z.codePointAt(0)??0,q=x6(J);if(q!==Q&&q!=="Zyyy"&&q!=="Zinh")return!1}return!0}function d2($){let Q=[];if($.length===0)return Q;let Z=null,J=0,q=0,K=[];for(let W of $)K.push(W);for(let W=0;W<K.length;W++){let U=K[W].codePointAt(0)??0,X=x6(U);if(X==="Zyyy"||X==="Zinh"){if(Z!==null)X=Z}if(Z===null)Z=X,J=W;else if(X!==Z&&X!=="Zyyy"&&X!=="Zinh")Q.push({script:Z,start:J,end:W,text:K.slice(J,W).join("")}),Z=X,J=W}if(Z!==null)Q.push({script:Z,start:J,end:K.length,text:K.slice(J).join("")});return Q}function n2($){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"}function i2($){return new Set(["Arab","Syrc","Hebr","Thaa","Nkoo","Deva","Beng","Guru","Gujr","Orya","Taml","Telu","Knda","Mlym","Sinh","Thai","Laoo","Tibt","Mymr","Khmr","Mong","Hang"]).has($)}function p2($){return 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"]).has($)?"rtl":"ltr"}var FZ;((V)=>{V[V.Other=0]="Other";V[V.CR=1]="CR";V[V.LF=2]="LF";V[V.Control=3]="Control";V[V.Extend=4]="Extend";V[V.ZWJ=5]="ZWJ";V[V.Regional_Indicator=6]="Regional_Indicator";V[V.Prepend=7]="Prepend";V[V.SpacingMark=8]="SpacingMark";V[V.L=9]="L";V[V.V=10]="V";V[V.T=11]="T";V[V.LV=12]="LV";V[V.LVT=13]="LVT";V[V.Extended_Pictographic=14]="Extended_Pictographic"})(FZ||={});var LZ;((D)=>{D[D.Other=0]="Other";D[D.CR=1]="CR";D[D.LF=2]="LF";D[D.Newline=3]="Newline";D[D.Extend=4]="Extend";D[D.ZWJ=5]="ZWJ";D[D.Regional_Indicator=6]="Regional_Indicator";D[D.Format=7]="Format";D[D.Katakana=8]="Katakana";D[D.Hebrew_Letter=9]="Hebrew_Letter";D[D.ALetter=10]="ALetter";D[D.Single_Quote=11]="Single_Quote";D[D.Double_Quote=12]="Double_Quote";D[D.MidNumLet=13]="MidNumLet";D[D.MidLetter=14]="MidLetter";D[D.MidNum=15]="MidNum";D[D.Numeric=16]="Numeric";D[D.ExtendNumLet=17]="ExtendNumLet";D[D.WSegSpace=18]="WSegSpace";D[D.Extended_Pictographic=19]="Extended_Pictographic"})(LZ||={});function Y0($){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 RZ($){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(Y0($)===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 V0($){let Q=$.length,Z=[],J=[];for(let W of $)Z.push(Y0(W));if(Q===0)return{boundaries:J,properties:Z};let q=0,K=!1;for(let W=1;W<Q;W++){let H=Z[W-1],U=Z[W],X=!0;if(H===1&&U===2)X=!1;else if(H===3||H===1||H===2)X=!0;else if(U===3||U===1||U===2)X=!0;else if(H===9&&(U===9||U===10||U===12||U===13))X=!1;else if((H===12||H===10)&&(U===10||U===11))X=!1;else if((H===13||H===11)&&U===11)X=!1;else if(U===4||U===5)X=!1;else if(U===8)X=!1;else if(H===7)X=!1;else if(K&&H===5&&U===14)X=!1;else if(H===6&&U===6){if(q%2===1)X=!1}if(U===14)K=!0;else if(U!==4&&U!==5)K=!1;if(U===6)q++;else q=0;if(X)J.push(W)}return J.push(Q),{boundaries:J,properties:Z}}function PZ($){let Q=$.length,Z=[],J=[];for(let K of $)Z.push(RZ(K));if(Q===0)return{boundaries:J,properties:Z};J.push(0);let q=0;for(let K=1;K<Q;K++){let W=Z[K-1],H=Z[K],U=!0;if(W===1&&H===2)U=!1;else if(W===3||W===1||W===2)U=!0;else if(H===3||H===1||H===2)U=!0;else if(W===5&&H===19)U=!1;else if(W===18&&H===18)U=!1;else if(H===7||H===4||H===5)U=!1;else if((W===10||W===9)&&(H===10||H===9))U=!1;else if((W===10||W===9)&&(H===14||H===13||H===11)){if(K+1<Q){let X=Z[K+1];if(X===10||X===9)U=!1}}else if(W===16&&H===16)U=!1;else if((W===10||W===9)&&H===16)U=!1;else if(W===16&&(H===10||H===9))U=!1;else if(W===16&&(H===15||H===13||H===11)){if(K+1<Q&&Z[K+1]===16)U=!1}else if(W===8&&H===8)U=!1;else if((W===10||W===9||W===16||W===8||W===17)&&H===17)U=!1;else if(W===17&&(H===10||H===9||H===16||H===8))U=!1;else if(W===6&&H===6){if(q%2===1)U=!1}if(H===6)q++;else q=0;if(U)J.push(K)}return J.push(Q),{boundaries:J,properties:Z}}function o2($){let Q=[],Z=[];for(let W of $)Q.push(W.codePointAt(0)??0),Z.push(W);let{boundaries:J}=V0(Q),q=[],K=0;for(let W of J){if(W>K)q.push(Z.slice(K,W).join(""));K=W}return q}function s2($){let Q=[],Z=[];for(let W of $)Q.push(W.codePointAt(0)??0),Z.push(W);let{boundaries:J,properties:q}=PZ(Q),K=[];for(let W=0;W<J.length-1;W++){let H=J[W],U=J[W+1],X=!1;for(let N=H;N<U;N++){let _=q[N];if(_!==18&&_!==1&&_!==2&&_!==3){X=!0;break}}if(X)K.push(Z.slice(H,U).join(""))}return K}function c2($){let Q=[];for(let J of $)Q.push(J.codePointAt(0)??0);let{boundaries:Z}=V0(Q);return Z.length}export{qH as verticalLayoutFeatures,I4 as verticalKanaAlternates,T4 as verticalForms,O4 as verticalAlternatesRotation,zH as traditionalForms,NH as thirdWidthForms,D6 as tagToString,F as tag,sW as tabularFigures,lW as swash,tW as superscript,eW as subscript,mW as stylisticSets,F4 as stylisticSet,fW as stylisticAlternates,bW as standardLigatures,s2 as splitWords,o2 as splitGraphemes,R4 as smallCaps,rW as slashedZero,VH as simplifiedForms,XW as shapedTextToSVGWithVariation,WW as shapedTextToSVG,uH as shape,$H as scientificInferiors,KH as ruby,f7 as resolveDupeGlyph,Y8 as reorderMarks,YZ as reorderGlyphs,UW as renderShapedTextWithVariation,KW as renderShapedText,BW as rasterizeText,G4 as rasterizePath,GW as rasterizeGlyph,XH as quarterWidthForms,UH as proportionalWidthForms,oW as proportionalFigures,S8 as processRearrangement,m8 as processLigature,y8 as processInsertion,h8 as processContextual,C2 as processBidi,dW as petiteCaps,N8 as pathToSVG,_8 as pathToCanvas,e8 as parseFeat,t8 as parseCpal,r8 as parseColr,aW as ordinals,oJ as openTypeTagToAat,iW as oldstyleFigures,g8 as normalizeAxisValue,CW as normalize,g2 as mustBreakAt,EK as matchAxisValue,pW as liningFigures,JH as kerning,bK as justifyParagraph,q$ as justify,wH as jis90Forms,jH as jis83Forms,_H as jis78Forms,YH as jis2004Forms,s5 as isVariationIndexTable,l2 as isScript,I2 as isRTL,VK as isOlderSiblingFont,v2 as isLTR,lJ as isExclusiveFeature,YK as isElidableAxisValue,i2 as isComplexScript,mJ as isColrV1,xW as historicalLigatures,LK as hasVertOriginY,GK as hasSvgGlyph,iJ as hasSettingValue,Qq as hasGlyphOutline,UK as hasGlyphBitmap,IJ as hasColorGlyph,HJ as hasColorBitmap,WH as halfWidthForms,qW as glyphToSVG,HW as glyphBufferToShapedGlyphs,ZK as getXHeightDelta,RZ as getWordBreakProperty,IK as getVorgDelta,T2 as getVisualOrder,MK as getVerticalMetrics,FK as getVertOriginY,TK as getTsbDelta,c7 as getTrackingValue,NW as getTextWidth,AK as getSvgGlyphIds,p7 as getSvgDocument,gK as getSubstitutedLookups,u7 as getStrikeForPpem,nJ as getSettingByValue,f2 as getScripts,n2 as getScriptTag,d2 as getScriptRuns,p2 as getScriptDirection,x6 as getScript,WK as getSbixGlyphBitmap,S4 as getOrCreateShapePlan,VZ as getMirror,T6 as getMetricDelta,BZ as getLineBreakClass,yJ as getLayerPaint,bq as getKerxValue,_9 as getKernValue,QK as getHDescenderDelta,$K as getHAscenderDelta,Y0 as getGraphemeBreakProperty,u9 as getGlyphPathWithVariation,p1 as getGlyphPath,$8 as getGlyphLocation,$q as getGlyphDelta,uJ as getFeature,wZ as getEmbeddings,c5 as getDeviceDelta,dJ as getDefaultSetting,g1 as getCombiningClass,SJ as getColorVariationDelta,j5 as getColorPaint,_5 as getColorLayers,UJ as getColorBitmapSizes,bJ as getColor,CJ as getClipBox,O2 as getCharType,wJ as getCffGlyphWidth,JK as getCapHeightDelta,OK as getBsbDelta,KJ as getBitmapGlyph,jK as getAxisValuesForAxis,zK as getAxisValueNumber,NK as getAxisRecord,_K as getAxisIndex,HK as getAvailablePpemSizes,fJ as getAllFeatures,x2 as getAllBreakOpportunities,u8 as getAdvanceWidthDelta,PK as getAdvanceHeightDelta,HH as fullWidthForms,cW as fractions,PZ as findWordBoundaries,y2 as findNextBreak,O6 as findMatchingFeatureVariation,V0 as findGraphemeBoundaries,wK as findAxisValueByNameId,EH as features,v4 as feature,s8 as executeCffCharString,r6 as executeCff2CharString,K$ as evaluateConditionSet,gW as discretionaryLigatures,u2 as detectScript,k2 as detectDirection,V8 as decompose,n9 as createShapePlan,_W as createPath2D,CZ as createFace,k1 as createBitmap,c2 as countGraphemes,x9 as contourToPath,uW as contextualAlternates,GH as combineFeatures,gJ as colorToRgba,xJ as colorToHex,Y4 as clearBitmap,yW as characterVariants,L4 as characterVariant,QH as caseSensitiveForms,P4 as capsToSmallCaps,ZH as capitalSpacing,b2 as canBreakAt,e6 as calculateTupleScalar,U8 as calculateLineWidth,yK as breakIntoLines,DW as bitmapToRGBA,MW as bitmapToGray,DK as applyTracking,w9 as applyNonContextual,zZ as applyMirroring,xK as applyFeatureVariations,l9 as applyFallbackMarkPositioning,d9 as applyFallbackKerning,Hq as applyDeviceAdjustment,B0 as applyAvarMapping,b8 as applyAvar,w0 as analyzeLineBreaksFromCodepoints,m2 as analyzeLineBreaksForGlyphs,h2 as analyzeLineBreaks,nW as allSmallCaps,pJ as aatToOpenTypeTag,LZ as WordBreakProperty,z5 as VerticalPositionSetting,L5 as UpperCaseSetting,G0 as UnicodeBuffer,u as Tags,D5 as StylisticAlternativesSetting,R5 as SmartSwashSetting,MZ as Script,V9 as SbixGraphicType,T1 as Reader,k6 as PixelMode,w5 as PaletteType,U5 as PaintFormat,G5 as NumberSpacingSetting,E5 as NumberCaseSetting,M4 as NormalizationMode,P6 as MvarTags,j9 as MorxSubtableType,F5 as LowerCaseSetting,EZ as LineBreakClass,V5 as LigatureSetting,J$ as JustifyMode,FZ as GraphemeBreakProperty,i6 as GlyphClass,s1 as GlyphBuffer,A5 as FractionsSetting,X6 as Font,j6 as FillRule,Y5 as FeatureType,t2 as FeatureTags,O5 as FeatureFlags,c1 as Face,X5 as Extend,n6 as Direction,P5 as DiacriticsSetting,M5 as ContextualAlternativesSetting,N5 as CompositeMode,z0 as ClusterLevel,T5 as CharacterShapeSetting,JJ as CbdtImageFormat,B5 as CaseSensitiveLayoutSetting,E0 as BufferFlags,AZ as BreakOpportunity,GZ as BreakAction,Z6 as BidiType,z9 as AxisValueFlags};
|
|
1
|
+
var QJ=Object.defineProperty;var ZJ=($,Q)=>{for(var Z in Q)QJ($,Z,{get:Q[Z],enumerable:!0,configurable:!0,set:(J)=>Q[Z]=()=>J})};var p6=($,Q)=>()=>($&&(Q=$($=0)),Q);var a8,R6;var x0=p6(()=>{a8=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]),R6=new Uint16Array([1024,1536,1280,1536,0,256,768,512])});var u0,f0,l0;var d0=p6(()=>{u0=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]),f0=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]),l0=new Uint8Array(122784)});function T($,Q,Z){let J=new Uint8Array($.length),q=new Uint8Array(Z.length);for(let W=0;W<$.length;W++)J[W]=$.charCodeAt(W);for(let W=0;W<Z.length;W++)q[W]=Z.charCodeAt(W);return{prefix:J,transform:Q,suffix:q}}function n0($,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 i0($,Q,Z,J,q,W){let K=r8[q],H=K.transform,U=H<12?0:H-11,N=Q;if(U>J)U=J;for(let w=0;w<K.prefix.length;w++)$[Q++]=K.prefix[w];let _=Z+U,X=J-U;if(H<=9)X-=H;for(let w=0;w<X;w++)$[Q++]=W[_+w];let j=Q-X;if(H===10)n0($,j);else if(H===11)while(X>0){let w=n0($,j);j+=w,X-=w}for(let w=0;w<K.suffix.length;w++)$[Q++]=K.suffix[w];return Q-N}var r8;var p0=p6(()=>{r8=[T("",0,""),T("",0," "),T(" ",0," "),T("",12,""),T("",10," "),T("",0," the "),T(" ",0,""),T("s ",0," "),T("",0," of "),T("",10,""),T("",0," and "),T("",13,""),T("",1,""),T(", ",0," "),T("",0,", "),T(" ",10," "),T("",0," in "),T("",0," to "),T("e ",0," "),T("",0,'"'),T("",0,"."),T("",0,'">'),T("",0,`
|
|
2
|
+
`),T("",3,""),T("",0,"]"),T("",0," for "),T("",14,""),T("",2,""),T("",0," a "),T("",0," that "),T(" ",10,""),T("",0,". "),T(".",0,""),T(" ",0,", "),T("",15,""),T("",0," with "),T("",0,"'"),T("",0," from "),T("",0," by "),T("",16,""),T("",17,""),T(" the ",0,""),T("",4,""),T("",0,". The "),T("",11,""),T("",0," on "),T("",0," as "),T("",0," is "),T("",7,""),T("",1,"ing "),T("",0,`
|
|
3
|
+
`),T("",0,":"),T(" ",0,". "),T("",0,"ed "),T("",20,""),T("",18,""),T("",6,""),T("",0,"("),T("",10,", "),T("",8,""),T("",0," at "),T("",0,"ly "),T(" the ",0," of "),T("",5,""),T("",9,""),T(" ",10,", "),T("",10,'"'),T(".",0,"("),T("",11," "),T("",10,'">'),T("",0,'="'),T(" ",0,"."),T(".com/",0,""),T(" the ",0," of the "),T("",10,"'"),T("",0,". This "),T("",0,","),T(".",0," "),T("",10,"("),T("",10,"."),T("",0," not "),T(" ",0,'="'),T("",0,"er "),T(" ",11," "),T("",0,"al "),T(" ",11,""),T("",0,"='"),T("",11,'"'),T("",10,". "),T(" ",0,"("),T("",0,"ful "),T(" ",10,". "),T("",0,"ive "),T("",0,"less "),T("",11,"'"),T("",0,"est "),T(" ",10,"."),T("",11,'">'),T(" ",0,"='"),T("",10,","),T("",0,"ize "),T("",11,"."),T("Â ",0,""),T(" ",0,","),T("",10,'="'),T("",11,'="'),T("",0,"ous "),T("",11,", "),T("",10,"='"),T(" ",10,","),T(" ",11,'="'),T(" ",11,", "),T("",11,","),T("",11,"("),T("",11,". "),T(" ",11,"."),T("",11,"='"),T(" ",11,". "),T(" ",10,'="'),T(" ",11,"='"),T(" ",10,"='")]});var Z5={};ZJ(Z5,{decompress:()=>BJ});class e0{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}peekBits(){return this.fillBitWindow(),this.val>>>this.bitPos&t0}get currentBitPos(){return this.bitPos}set currentBitPos($){this.bitPos=$}get currentVal(){return this.val}}function $5($,Q,Z,J,q){let K=new Int32Array(16),H=new Int32Array(16),U=new Int32Array(q);for(let G=0;G<q;G++)K[J[G]]++;H[1]=0;for(let G=1;G<15;G++)H[G+1]=H[G]+K[G];for(let G=0;G<q;G++)if(J[G]!==0)U[H[J[G]]++]=G;let N=Z,_=1<<N,X=_;if(H[15]===1){for(let G=0;G<X;G++)$[Q+G]={bits:0,value:U[0]&65535};return X}let j=0,w=0;for(let G=1,E=2;G<=Z;G++,E<<=1)for(;K[G]>0;K[G]--){let B={bits:G&255,value:U[w++]&65535};a0($,Q+j,E,_,B),j=c0(j,G)}let Y=X-1,V=-1,z=Q;for(let G=Z+1,E=2;G<=15;G++,E<<=1)for(;K[G]>0;K[G]--){if((j&Y)!==V)z+=_,N=VJ(K,G,Z),_=1<<N,X+=_,V=j&Y,$[Q+V]={bits:N+Z&255,value:z-Q-V&65535};let B={bits:G-Z&255,value:U[w++]&65535};a0($,z+(j>>Z),E,_,B),j=c0(j,G)}return X}function c0($,Q){let Z=1<<Q-1;while($&Z)Z>>=1;return($&Z-1)+Z}function a0($,Q,Z,J,q){do J-=Z,$[Q+J]={bits:q.bits,value:q.value};while(J>0)}function VJ($,Q,Z){let J=1<<Q-Z;while(Q<15){if(J-=$[Q],J<=0)break;Q++,J<<=1}return Q-Z}function l1($,Q,Z){Z.fillBitWindow();let J=Q+(Z.currentVal>>>Z.currentBitPos&t0),q=$[J].bits-$9;if(q>0)Z.currentBitPos+=$9,J+=$[J].value,J+=Z.currentVal>>>Z.currentBitPos&(1<<q)-1;return Z.currentBitPos+=$[J].bits,$[J].value}function Q5($){if($.readBits(1)){let Q=$.readBits(3);if(Q===0)return 1;return $.readBits(Q)+(1<<Q)}return 0}function zJ($){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 GJ($){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 W=$.readBits(2);if(W===0)return{length:0,isLast:Q,isUncompressed:!1,isMetadata:!0};let K=0;for(let H=0;H<W;H++){let U=$.readBits(8);if(H+1===W&&W>1&&U===0)throw Error("Invalid size byte");K|=U<<H*8}return{length:K+1,isLast:Q,isUncompressed:!1,isMetadata:!0}}let J=0;for(let W=0;W<Z;W++){let K=$.readBits(4);if(W+1===Z&&Z>4&&K===0)throw Error("Invalid size nibble");J|=K<<W*4}J++;let q=!Q?$.readBits(1)===1:!1;return{length:J,isLast:Q,isUncompressed:q,isMetadata:!1}}function EJ($,Q,Z,J){let K=0,H=8,U=0,N=0,_=32768,X=[];for(let j=0;j<32;j++)X.push({bits:0,value:0});$5(X,0,5,$,t8);while(K<Q&&_>0){J.readMoreInput(),J.fillBitWindow();let j=J.currentVal>>>J.currentBitPos&31;J.currentBitPos+=X[j].bits;let w=X[j].value&255;if(w<16){if(U=0,Z[K++]=w,w!==0)H=w,_-=32768>>w}else{let Y=w-14,V=0;if(w===16)V=H;if(N!==V)U=0,N=V;let z=U;if(U>0)U-=2,U<<=Y;U+=J.readBits(Y)+3;let G=U-z;if(K+G>Q)throw Error("Symbol overflow");for(let E=0;E<G;E++)Z[K+E]=N;if(K+=G,N!==0)_-=G<<15-N}}if(_!==0)throw Error("Invalid code lengths");for(;K<Q;K++)Z[K]=0}function t6($,Q,Z,J){let q=new Uint8Array($);J.readMoreInput();let W=J.readBits(2);if(W===1){let K=$-1,H=0;while(K)K>>=1,H++;let U=new Int32Array(4),N=J.readBits(2)+1;for(let _=0;_<N;_++)U[_]=J.readBits(H)%$,q[U[_]]=2;switch(q[U[0]]=1,N){case 2:if(U[0]===U[1])throw Error("Invalid symbols");q[U[1]]=1;break;case 4:if(J.readBits(1))q[U[2]]=3,q[U[3]]=3;else q[U[0]]=2;break}}else{let K=new Uint8Array(t8),H=32,U=0,N=[{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 _=W;_<t8&&H>0;_++){let X=NJ[_];J.fillBitWindow();let j=J.currentVal>>>J.currentBitPos&15;J.currentBitPos+=N[j].bits;let w=N[j].value;if(K[X]=w,w!==0)H-=32>>w,U++}if(!(U===1||H===0))throw Error("Invalid code length codes");EJ(K,$,q,J)}return $5(Q,Z,$9,q,$)}class r6{alphabetSize;numHTrees;codes=[];htrees;constructor($,Q){this.alphabetSize=$;this.numHTrees=Q;this.htrees=new Uint32Array(Q);let Z=this.getMaxTableSize();for(let J=0;J<Q+Q*Z;J++)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 J=t6(this.alphabetSize,this.codes,Q,$);Q+=J}}}function r0($,Q){Q.readMoreInput();let Z=Q5(Q)+1,J=new Uint8Array($);if(Z<=1)return{numHTrees:Z,contextMap:J};let q=Q.readBits(1)===1,W=0;if(q)W=Q.readBits(4)+1;let K=[];for(let H=0;H<y1;H++)K.push({bits:0,value:0});t6(Z+W,K,0,Q);for(let H=0;H<$;){Q.readMoreInput();let U=l1(K,0,Q);if(U===0)J[H++]=0;else if(U<=W){let N=1+(1<<U)+Q.readBits(U);for(let _=1;_<N&&H<$;_++)J[H++]=0}else J[H++]=U-W}if(Q.readBits(1)){let H=new Uint8Array(256);for(let U=0;U<256;U++)H[U]=U;for(let U=0;U<$;U++){let N=J[U];if(J[U]=H[N],N){let _=H[N];for(let X=N;X>0;X--)H[X]=H[X-1];H[0]=_}}}return{numHTrees:Z,contextMap:J}}function a6($,Q,Z){let J=l1($,Q,Z),q=jJ[J];return q.offset+Z.readBits(q.nbits)}function AJ($,Q,Z){if($<e8){let J=Z+_J[$]&3;return Q[J]+XJ[$]}return $-e8+1}function BJ($){let Q=new e0($),Z=zJ(Q),J=(1<<Z)-16,q=1<<Z,W=q-1,K=new Uint8Array(q+578),H=0,U=0,N=[16,15,11,4],_=0,X=0,j=0,w=[];while(!0){Q.readMoreInput();let Y=GJ(Q);if(Y.length===0&&Y.isLast)break;if(Y.isMetadata){Q.currentBitPos=Q.currentBitPos+7&-8;for(let d=0;d<Y.length;d++)Q.readMoreInput(),Q.readBits(8);continue}let V=Y.length;if(V===0)continue;if(Y.isUncompressed){Q.currentBitPos=Q.currentBitPos+7&-8;for(let d=0;d<V;d++){Q.readMoreInput();let r=Q.readBits(8);if(K[H&W]=r,(H&W)===W)w.push(...K.slice(0,q));H++}continue}let z=[1,1,1],G=[268435456,268435456,268435456],E=[0,0,0],B=[0,1,0,1,0,1],F=[0,0,0],v=[],L=[];for(let d=0;d<3*y1;d++)v.push({bits:0,value:0}),L.push({bits:0,value:0});for(let d=0;d<3;d++)if(z[d]=Q5(Q)+1,z[d]>=2)t6(z[d]+2,v,d*y1,Q),t6(UJ,L,d*y1,Q),G[d]=a6(L,d*y1,Q),F[d]=1;Q.readMoreInput();let h=Q.readBits(2),S=e8+(Q.readBits(4)<<h),I=(1<<h)-1,b=S+(48<<h),x=new Uint8Array(z[0]);for(let d=0;d<z[0];d++)Q.readMoreInput(),x[d]=Q.readBits(2)<<1;let P=r0(z[0]<<6,Q),o=r0(z[2]<<2,Q),y=[new r6(WJ,P.numHTrees),new r6(HJ,z[1]),new r6(b,o.numHTrees)];for(let d=0;d<3;d++)y[d].decode(Q);let g=0,R=0,m=x[E[0]],u=R6[m],s=R6[m+1],i=y[1].htrees[0];while(V>0){if(Q.readMoreInput(),G[1]===0){let A1=l1(v,y1,Q),z1;if(A1===0)z1=B[2+(F[1]&1)];else if(A1===1)z1=B[2+(F[1]-1&1)]+1;else z1=A1-2;if(z1>=z[1])z1-=z[1];E[1]=z1,B[2+(F[1]&1)]=z1,F[1]++,G[1]=a6(L,y1,Q),i=y[1].htrees[E[1]]}G[1]--;let d=l1(y[1].codes,i,Q),r=d>>6,O;if(r>=2)O=-1;else O=0;let a=YJ[r]+(d>>3&7),k=wJ[r]+(d&7),P1=o0[a].offset+Q.readBits(o0[a].nbits),C=s0[k].offset+Q.readBits(s0[k].nbits);X=K[H-1&W],j=K[H-2&W];for(let A1=0;A1<P1;A1++){if(Q.readMoreInput(),G[0]===0){let N1=l1(v,0,Q),O1;if(N1===0)O1=B[F[0]&1];else if(N1===1)O1=B[F[0]-1&1]+1;else O1=N1-2;if(O1>=z[0])O1-=z[0];E[0]=O1,B[F[0]&1]=O1,F[0]++,G[0]=a6(L,0,Q),g=E[0]<<6,m=x[E[0]],u=R6[m],s=R6[m+1]}let z1=a8[u+X]|a8[s+j],k1=P.contextMap[g+z1];if(G[0]--,j=X,X=l1(y[0].codes,y[0].htrees[k1],Q),K[H&W]=X,(H&W)===W)w.push(...K.slice(0,q));H++}if(V-=P1,V<=0)break;if(O<0){if(Q.readMoreInput(),G[2]===0){let k1=l1(v,2*y1,Q),N1;if(k1===0)N1=B[4+(F[2]&1)];else if(k1===1)N1=B[4+(F[2]-1&1)]+1;else N1=k1-2;if(N1>=z[2])N1-=z[2];E[2]=N1,B[4+(F[2]&1)]=N1,F[2]++,G[2]=a6(L,2*y1,Q),R=E[2]<<2}G[2]--;let A1=(C>4?3:C-2)&255,z1=o.contextMap[R+A1];if(O=l1(y[2].codes,y[2].htrees[z1],Q),O>=S){O-=S;let k1=O&I;O>>=h;let N1=(O>>1)+1,O1=(2+(O&1)<<N1)-4;O=S+(O1+Q.readBits(N1)<<h)+k1}}let D6=AJ(O,N,_);if(D6<0)throw Error("Invalid distance");if(H<J&&U!==J)U=H;else U=J;let n6=H&W;if(D6>U)if(C>=4&&C<=24){let A1=u0[C],z1=D6-U-1,k1=f0[C],N1=(1<<k1)-1,O1=z1&N1,u8=z1>>k1,$J=A1+O1*C;if(u8<r8.length){let f8=i0(K,n6,$J,C,u8,l0);if(n6+=f8,H+=f8,V-=f8,n6>=q){w.push(...K.slice(0,q));for(let i6=0;i6<n6-q;i6++)K[i6]=K[q+i6]}}else throw Error("Invalid backward reference")}else throw Error("Invalid backward reference");else{if(O>0)N[_&3]=D6,_++;if(C>V)throw Error("Invalid backward reference");for(let A1=0;A1<C;A1++){if(K[H&W]=K[H-D6&W],(H&W)===W)w.push(...K.slice(0,q));H++,V--}}X=K[H-1&W],j=K[H-2&W]}if(Y.isLast)break}return w.push(...K.slice(0,H&W)),new Uint8Array(w)}var y1=1080,t8=18,WJ=256,HJ=704,UJ=26,e8=16,$9=8,t0=255,NJ,_J,XJ,jJ,o0,s0,YJ,wJ;var J5=p6(()=>{x0();d0();p0();NJ=new Uint8Array([1,2,3,4,0,5,17,6,16,7,8,9,10,11,12,13,14,15]),_J=new Uint8Array([3,2,1,0,3,3,3,3,3,3,2,2,2,2,2,2]),XJ=new Int8Array([0,0,0,0,-1,1,-2,2,-3,3,-1,1,-2,2,-3,3]),jJ=[{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}],o0=[{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}],s0=[{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}],YJ=[0,0,8,8,0,16,8,16,16],wJ=[0,8,0,8,16,0,16,8,16]});function o6($,Q){if(Q<0||Q>=$.classArray.length)return 1;return $.classArray[Q]??1}function l8($,Q){let{stateTable:Z}=$,J=0,q=0,W=0;for(let K=0;K<=Q.length;K++){let U=K>=Q.length?0:o6(Z.classTable,Q[K]?.glyphId),N=Z.stateArray[J];if(!N)break;let _=N[U];if(!_)break;let X=_.flags;if(X&32768)q=K;if(X&8192)W=K;let j=X&15;if(j!==0&&q<=W&&W<Q.length)JJ(Q,q,W,j);if(!(X&16384));J=_.newState}}function JJ($,Q,Z,J){if(Q>=Z||Q>=$.length||Z>=$.length)return;let q=$[Q],W=$[Q+1],K=$[Z-1],H=$[Z];if(!q||!H)return;switch(J){case 1:if(W)$[Q]=W,$[Q+1]=q;break;case 2:if(K)$[Z]=K,$[Z-1]=H;break;case 3:$[Q]=H,$[Z]=q;break;case 4:if(W&&K){let U=$.slice(Q,Q+2),[N,_]=U,X=$[Q+2];if(N&&_&&X)$[Q]=X,$[Q+1]=N,$[Q+2]=_}break;case 5:if(W&&K){let U=$.slice(Q,Q+2),[N,_]=U,X=$[Q+2];if(N&&_&&X)$[Q]=X,$[Q+1]=_,$[Q+2]=N}break;case 6:if(K&&W){let U=$.slice(Z-1,Z+1),[N,_]=U,X=$[Z-2];if(N&&_&&X)$[Z]=X,$[Z-1]=_,$[Z-2]=N}break;case 7:if(K&&W){let U=$.slice(Z-1,Z+1),[N,_]=U,X=$[Z-2];if(N&&_&&X)$[Z]=X,$[Z-1]=N,$[Z-2]=_}break;case 8:if(K){let U=q;$[Q]=K,$[Z-1]=H,$[Z]=U}break;case 9:if(K){let U=q;$[Q]=H,$[Z-1]=K,$[Z]=U}break;case 10:if(W){let U=H;$[Z]=W,$[Q+1]=q,$[Q]=U}break;case 11:if(W){let U=H;$[Z]=q,$[Q+1]=W,$[Q]=U}break;case 12:if(W&&K){let U=[q,W];$[Q]=K,$[Q+1]=H,$[Z-1]=U[0],$[Z]=U[1]}break;case 13:if(W&&K){let U=[q,W];$[Q]=K,$[Q+1]=H,$[Z-1]=U[1],$[Z]=U[0]}break;case 14:if(W&&K){let U=[q,W];$[Q]=H,$[Q+1]=K,$[Z-1]=U[0],$[Z]=U[1]}break;case 15:if(W&&K){let U=[q,W];$[Q]=H,$[Q+1]=K,$[Z-1]=U[1],$[Z]=U[0]}break}}function d8($,Q){let{stateTable:Z,substitutionTable:J}=$,q=0,W=-1;for(let K=0;K<=Q.length;K++){let H=K>=Q.length,U=H?0:o6(Z.classTable,Q[K]?.glyphId),N=Z.stateArray[q];if(!N)break;let _=N[U];if(!_)break;if(_.flags&32768)W=K;if(_.markIndex!==65535&&W>=0&&W<Q.length){let X=J[_.markIndex];if(X){let j=Q[W];if(j){let w=X.get(j.glyphId);if(w!==void 0)j.glyphId=w}}}if(!H&&_.currentIndex!==65535){let X=J[_.currentIndex];if(X){let j=Q[K];if(j){let w=X.get(j.glyphId);if(w!==void 0)j.glyphId=w}}}if(!(_.flags&16384));q=_.newState}}function n8($,Q){let{stateTable:Z,ligatureActions:J,components:q,ligatures:W}=$,K=0,H=[],U=[],N=new Set;for(let _=0;_<=Q.length;_++){let j=_>=Q.length?0:o6(Z.classTable,Q[_]?.glyphId),w=Z.stateArray[K];if(!w)break;let Y=w[j];if(!Y)break;if(Y.flags&32768)H.push(_);if(Y.flags&8192&&Y.ligActionIndex<J.length){let V=Y.ligActionIndex,z=0,G=[];while(V<J.length){let E=J[V];if(E===void 0)break;let B=(E&2147483648)!==0,F=(E&1073741824)!==0,v=(E&1073741823)<<2>>2,L=H.pop();if(L!==void 0&&L<Q.length){G.push(L);let h=Q[L];if(h){let I=h.glyphId+v;if(I>=0&&I<q.length){let b=q[I];if(b!==void 0)z=b+z}}}if(F&&z<W.length){let h=G[G.length-1];if(h!==void 0&&h<Q.length){let S=Q[h],I=W[z];if(S&&I!==void 0){S.glyphId=I;for(let[b,x]of G.entries())if(b<G.length-1)N.add(x)}}z=0}if(B)break;V++}}if(!(Y.flags&16384));K=Y.newState}for(let[_,X]of Q.entries())if(!N.has(_))U.push(X);return U}function i8($,Q){let{stateTable:Z,insertionGlyphs:J}=$,q=0,W=-1,K=[],H=new Map;for(let U=0;U<=Q.length;U++){let N=U>=Q.length,_=N?0:o6(Z.classTable,Q[U]?.glyphId),X=Z.stateArray[q];if(!X)break;let j=X[_];if(!j)break;if(j.flags&32768)W=U;if(j.markedInsertIndex!==65535&&W>=0){let w=j.flags>>5&31,Y=(j.flags&2048)!==0,V=J.slice(j.markedInsertIndex,j.markedInsertIndex+w),z=H.get(W);if(!z)z={before:[],after:[]},H.set(W,z);if(Y)z.before.push(...V);else z.after.push(...V)}if(!N&&j.currentInsertIndex!==65535){let w=j.flags&31,Y=(j.flags&32)!==0,V=J.slice(j.currentInsertIndex,j.currentInsertIndex+w),z=H.get(U);if(!z)z={before:[],after:[]},H.set(U,z);if(Y)z.before.push(...V);else z.after.push(...V)}if(!(j.flags&16384));q=j.newState}for(let[U,N]of Q.entries()){let _=H.get(U);if(_)for(let X of _.before)K.push({glyphId:X,cluster:N.cluster,mask:N.mask,codepoint:0});if(K.push(N),_)for(let X of _.after)K.push({glyphId:X,cluster:N.cluster,mask:N.mask,codepoint:0})}return K}var s6;((W)=>{W[W.Invalid=0]="Invalid";W[W.LTR=4]="LTR";W[W.RTL=5]="RTL";W[W.TTB=6]="TTB";W[W.BTT=7]="BTT"})(s6||={});var v0;((J)=>{J[J.MonotoneGraphemes=0]="MonotoneGraphemes";J[J.MonotoneCharacters=1]="MonotoneCharacters";J[J.Characters=2]="Characters"})(v0||={});var k0;((K)=>{K[K.Default=0]="Default";K[K.BeginningOfText=1]="BeginningOfText";K[K.EndOfText=2]="EndOfText";K[K.PreserveDefaultIgnorables=4]="PreserveDefaultIgnorables";K[K.RemoveDefaultIgnorables=8]="RemoveDefaultIgnorables";K[K.DoNotInsertDottedCircle=16]="DoNotInsertDottedCircle"})(k0||={});var c6;((q)=>{q[q.Base=1]="Base";q[q.Ligature=2]="Ligature";q[q.Mark=3]="Mark";q[q.Component=4]="Component"})(c6||={});function M($){if($.length!==4)throw Error(`Tag must be exactly 4 characters: "${$}"`);return $.charCodeAt(0)<<24|$.charCodeAt(1)<<16|$.charCodeAt(2)<<8|$.charCodeAt(3)}function L6($){return String.fromCharCode($>>24&255,$>>16&255,$>>8&255,$&255)}var f={head:M("head"),hhea:M("hhea"),hmtx:M("hmtx"),maxp:M("maxp"),cmap:M("cmap"),loca:M("loca"),glyf:M("glyf"),name:M("name"),OS2:M("OS/2"),post:M("post"),GDEF:M("GDEF"),GSUB:M("GSUB"),GPOS:M("GPOS"),BASE:M("BASE"),JSTF:M("JSTF"),MATH:M("MATH"),CFF:M("CFF "),CFF2:M("CFF2"),fvar:M("fvar"),gvar:M("gvar"),avar:M("avar"),HVAR:M("HVAR"),VVAR:M("VVAR"),MVAR:M("MVAR"),morx:M("morx"),kerx:M("kerx"),kern:M("kern"),trak:M("trak"),feat:M("feat"),COLR:M("COLR"),CPAL:M("CPAL"),SVG:M("SVG "),sbix:M("sbix"),CBDT:M("CBDT"),CBLC:M("CBLC"),STAT:M("STAT"),vhea:M("vhea"),vmtx:M("vmtx"),VORG:M("VORG"),fpgm:M("fpgm"),prep:M("prep"),cvt:M("cvt "),gasp:M("gasp")},fN={ccmp:M("ccmp"),locl:M("locl"),rlig:M("rlig"),liga:M("liga"),clig:M("clig"),calt:M("calt"),rclt:M("rclt"),dlig:M("dlig"),smcp:M("smcp"),c2sc:M("c2sc"),isol:M("isol"),init:M("init"),medi:M("medi"),fina:M("fina"),kern:M("kern"),mark:M("mark"),mkmk:M("mkmk"),curs:M("curs"),dist:M("dist")};class a1{direction=4;script="Zyyy";language=null;infos=[];positions=[];static withCapacity($){let Q=new a1;return Q.infos=Array($),Q.positions=Array($),Q}get length(){return this.infos.length}initFromInfos($){this.infos=$,this.positions=$.map(()=>({xAdvance:0,yAdvance:0,xOffset:0,yOffset:0}))}setAdvance($,Q,Z=0){let J=this.positions[$];if(J)J.xAdvance=Q,J.yAdvance=Z}addOffset($,Q,Z){let J=this.positions[$];if(J)J.xOffset+=Q,J.yOffset+=Z}replaceGlyph($,Q){let Z=this.infos[$];if(Z)Z.glyphId=Q}insertGlyph($,Q,Z){this.infos.splice($,0,Q),this.positions.splice($,0,Z)}removeRange($,Q){let Z=Q-$;this.infos.splice($,Z),this.positions.splice($,Z)}mergeClusters($,Q){if($>=Q||$<0||Q>=this.infos.length)return;let Z=this.infos[$]?.cluster;for(let J=$+1;J<=Q;J++){let q=this.infos[J];if(q)q.cluster=Z}}reverse(){this.infos.reverse(),this.positions.reverse()}reverseRange($,Q){let Z=$,J=Q-1;while(Z<J){let q=this.infos[Z],W=this.infos[J];if(!q||!W)break;this.infos[Z]=W,this.infos[J]=q;let K=this.positions[Z],H=this.positions[J];if(!K||!H)break;this.positions[Z]=H,this.positions[J]=K,Z++,J--}}getTotalAdvance(){let $=0,Q=0;for(let Z of this.positions)$+=Z.xAdvance,Q+=Z.yAdvance;return{x:$,y:Q}}serialize(){let $=[];for(let[Q,Z]of this.infos.entries()){let J=this.positions[Q];if(!J)continue;let q=`${Z.glyphId}`;if(Q===0||Z.cluster!==this.infos[Q-1]?.cluster)q+=`=${Z.cluster}`;if(J.xOffset!==0||J.yOffset!==0)q+=`@${J.xOffset},${J.yOffset}`;if(J.xAdvance!==0)q+=`+${J.xAdvance}`;$.push(q)}return`[${$.join("|")}]`}glyphIds(){return this.infos.map(($)=>$.glyphId)}clusters(){return this.infos.map(($)=>$.cluster)}*[Symbol.iterator](){for(let[$,Q]of this.infos.entries()){let Z=this.positions[$];if(!Z)continue;yield{info:Q,position:Z}}}}class C0{_direction=4;_script="Zyyy";_language=null;_clusterLevel=0;_flags=0;codepoints=[];clusters=[];preContext=[];postContext=[];addStr($,Q=0){let Z=Q;for(let J of $){let q=J.codePointAt(0);if(q===void 0)continue;this.codepoints.push(q),this.clusters.push(Z),Z++}return this}addCodepoints($,Q=0){let Z=Q;for(let J of $)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=[];for(let Q of $){let Z=Q.codePointAt(0);if(Z!==void 0)this.preContext.push(Z)}return this}setPostContext($){this.postContext=[];for(let Q of $){let Z=Q.codePointAt(0);if(Z!==void 0)this.postContext.push(Z)}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:$}))}}class I1{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 I1(this.data,this.start+$,Q)}sliceFrom($){return new I1(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 J=0;J<$;J++)Z[J]=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 J=0;J<Z;J++)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 J=Q(this);return this.pos=Z,J}}function S0($,Q){let Z=$.uint16(),J=$.uint16();$.skip(2);let q=[];for(let W=0;W<Q;W++){let K=$.uint16(),H=[];for(let U=0;U<K;U++)H.push({fromCoordinate:$.f2dot14(),toCoordinate:$.f2dot14()});q.push({axisValueMaps:H})}return{majorVersion:Z,minorVersion:J,axisSegmentMaps:q}}function h0($,Q){let Z=$.axisValueMaps;if(Z.length===0)return Q;for(let W=0;W<Z.length-1;W++){let K=Z[W],H=Z[W+1];if(!K||!H)continue;if(Q>=K.fromCoordinate&&Q<=H.fromCoordinate){let U=(Q-K.fromCoordinate)/(H.fromCoordinate-K.fromCoordinate);return K.toCoordinate+U*(H.toCoordinate-K.toCoordinate)}}let J=Z[0],q=Z[Z.length-1];if(J&&Q<=J.fromCoordinate)return J.toCoordinate;return q?.toCoordinate??Q}function p8($,Q){let Z=[];for(let[J,q]of Q.entries()){let W=$.axisSegmentMaps[J];if(W)Z.push(h0(W,q));else Z.push(q)}return Z}function y0($){let Q=$.uint16(),Z=$.uint16(),J=$.offset16();$.skip(2);let q=$.uint16(),W=$.uint16(),K=$.uint16(),H=$.uint16(),U=[];$.seek(J);for(let X=0;X<q;X++){let j=$.offset,w=$.uint32(),Y=$.fixed(),V=$.fixed(),z=$.fixed(),G=$.uint16(),E=$.uint16();U.push({tag:w,minValue:Y,defaultValue:V,maxValue:z,flags:G,axisNameId:E}),$.seek(j+W)}let N=[],_=H>=4+q*4+2;for(let X=0;X<K;X++){let j=$.offset,w=$.uint16(),Y=$.uint16(),V=[];for(let G=0;G<q;G++)V.push($.fixed());let z={subfamilyNameId:w,flags:Y,coordinates:V};if(_)z.postScriptNameId=$.uint16();N.push(z),$.seek(j+H)}return{majorVersion:Q,minorVersion:Z,axes:U,instances:N}}function o8($,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 m0($){let Q=$.uint16(),Z=$.uint16(),J=$.offset32(),q=$.offset32(),W=$.offset32(),K=$.offset32(),H=qJ($.sliceFrom(J)),U=q!==0?s8($.sliceFrom(q)):null,N=W!==0?s8($.sliceFrom(W)):null,_=K!==0?s8($.sliceFrom(K)):null;return{majorVersion:Q,minorVersion:Z,itemVariationStore:H,advanceWidthMapping:U,lsbMapping:N,rsbMapping:_}}function qJ($){let Q=$.uint16(),Z=$.offset32(),J=$.uint16(),q=[];for(let _=0;_<J;_++)q.push($.offset32());let W=$.sliceFrom(Z),K=W.uint16(),H=W.uint16(),U=[];for(let _=0;_<H;_++){let X=[];for(let j=0;j<K;j++)X.push({startCoord:W.f2dot14(),peakCoord:W.f2dot14(),endCoord:W.f2dot14()});U.push({regionAxes:X})}let N=[];for(let _ of q){let X=$.sliceFrom(_),j=X.uint16(),w=X.uint16(),Y=X.uint16(),V=[];for(let F=0;F<Y;F++)V.push(X.uint16());let z=(w&32768)!==0,G=w&32767,E=Y-G,B=[];for(let F=0;F<j;F++){let v=[];for(let L=0;L<G;L++)if(z)v.push(X.int32());else v.push(X.int16());for(let L=0;L<E;L++)if(z)v.push(X.int16());else v.push(X.int8());B.push(v)}N.push({itemCount:j,regionIndexes:V,deltaSets:B})}return{format:Q,variationRegions:U,itemVariationData:N}}function s8($){let Q=$.uint8(),Z=$.uint8(),J=Q===0?$.uint16():$.uint32(),q=(Z&15)+1,W=(Z>>4&3)+1,K=[];for(let H=0;H<J;H++){let U=0;for(let X=0;X<W;X++)U=U<<8|$.uint8();let N=U&(1<<q)-1,_=U>>q;K.push({outer:_,inner:N})}return{format:Q,mapCount:J,entryFormat:Z,innerIndexBitCount:q,mapData:K}}function M6($,Q){let Z=1;for(let J=0;J<$.regionAxes.length&&J<Q.length;J++){let q=$.regionAxes[J],W=Q[J];if(q===void 0||W===void 0)continue;if(W<q.startCoord||W>q.endCoord)return 0;if(W===q.peakCoord)continue;if(W<q.peakCoord){if(q.peakCoord===q.startCoord)continue;Z*=(W-q.startCoord)/(q.peakCoord-q.startCoord)}else{if(q.peakCoord===q.endCoord)continue;Z*=(q.endCoord-W)/(q.endCoord-q.peakCoord)}}return Z}function b0($,Q,Z,J){let q,W;if(J&&Q<J.mapData.length){let N=J.mapData[Q];if(!N)q=0,W=Q;else q=N.outer,W=N.inner}else q=0,W=Q;let K=$.itemVariationStore.itemVariationData[q];if(!K||W>=K.itemCount)return 0;let H=K.deltaSets[W];if(!H)return 0;let U=0;for(let[N,_]of K.regionIndexes.entries()){let X=$.itemVariationStore.variationRegions[_];if(!X)continue;let j=M6(X,Z),w=H[N]??0;U+=j*w}return Math.round(U)}function c8($,Q,Z){return b0($,Q,Z,$.advanceWidthMapping)}function g0($,Q,Z){if(!$.lsbMapping)return 0;return b0($,Q,Z,$.lsbMapping)}class r1{font;_coords;_variations;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(Array.isArray($))for(let J of $)this._variations.set(J.tag,J.value);else for(let[J,q]of Object.entries($)){let W=M(J.padEnd(4," "));this._variations.set(W,q)}for(let[J,q]of Q.axes.entries()){let W=this._variations.get(q.tag)??q.defaultValue;this._coords[J]=o8(q,W)}let Z=this.font.avar;if(Z)this._coords=p8(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"?M($.padEnd(4," ")):$,Z=this.font.fvar;if(!Z)return null;let J=this._variations.get(Q);if(J!==void 0)return J;return Z.axes.find((W)=>W.tag===Q)?.defaultValue??null}advanceWidth($){let Q=this.font.advanceWidth($);if(this._coords.length>0&&this.font.hvar){let Z=c8(this.font.hvar,$,this._coords);Q+=Z}return Q}leftSideBearing($){let Q=this.font.leftSideBearing($);if(this._coords.length>0&&this.font.hvar){let Z=g0(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 KJ($,Q){return new r1($,Q)}var FJ=["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 q5($,Q){let Z=0;for(let J=0;J<5;J++){let q=$[Q.value++];if(J===0&&q===128)throw Error("Invalid UIntBase128: leading zeros");if(Z>2097151)throw Error("UIntBase128 overflow");if(Z=Z<<7|q&127,(q&128)===0)return Z}throw Error("UIntBase128 too long")}function Q9($,Q){let Z=$[Q.value++];if(Z===253){let J=$[Q.value++],q=$[Q.value++];return J<<8|q}else if(Z===255)return $[Q.value++]+506;else if(Z===254)return $[Q.value++]+253;return Z}function DJ($,Q,Z){let J=[];for(let q=0;q<Z;q++){let W=$[Q.value++],K=W&63,H=W>>6&3,U;if(K===63)U=String.fromCharCode($[Q.value++],$[Q.value++],$[Q.value++],$[Q.value++]);else U=FJ[K];let N=q5($,Q),_=N;if(U==="glyf"||U==="loca"?H===0:H!==0)_=q5($,Q);J.push({tag:U,origLength:N,transformLength:_,transformVersion:H})}return J}async function LJ($){if(typeof DecompressionStream<"u")try{let Z=new DecompressionStream("brotli"),q=new Blob([$.buffer]).stream().pipeThrough(Z),W=await new Response(q).arrayBuffer();return new Uint8Array(W)}catch{}let{decompress:Q}=await Promise.resolve().then(() => (J5(),Z5));return Q($)}function L1($,Q,Z){$[Q]=Z>>8&255,$[Q+1]=Z&255}function K6($,Q,Z){$[Q]=Z>>24&255,$[Q+1]=Z>>16&255,$[Q+2]=Z>>8&255,$[Q+3]=Z&255}function d1($,Q){return $[Q]<<8|$[Q+1]}function C1($,Q){let Z=d1($,Q);return Z>=32768?Z-65536:Z}function t1($,Q){return($[Q]<<24|$[Q+1]<<16|$[Q+2]<<8|$[Q+3])>>>0}function K5($,Q,Z){let J=0,q=Math.ceil(Z/4);for(let W=0;W<q;W++){let K=Q+W*4;J=J+(($[K]||0)<<24|($[K+1]||0)<<16|($[K+2]||0)<<8|($[K+3]||0))>>>0}return J}function e6($){return $+3&-4}function MJ($,Q,Z,J,q){let W=[],K=0,H=0;function U(N,_){return N&1?_:-_}for(let N=0;N<Z;N++){let _=$[J.value++],X=_>>7===0,j=_&127,w=0,Y=0;if(j<10)w=0,Y=U(_,((j&14)<<7)+Q[q.value++]);else if(j<20)w=U(_,((j-10&14)<<7)+Q[q.value++]),Y=0;else if(j<84){let V=j-20,z=Q[q.value++];w=U(_,1+(V&48)+(z>>4)),Y=U(_>>1,1+((V&12)<<2)+(z&15))}else if(j<120){let V=j-84;w=U(_,1+(Math.floor(V/12)<<8)+Q[q.value++]),Y=U(_>>1,1+(V%12>>2<<8)+Q[q.value++])}else if(j<124){let V=Q[q.value++],z=Q[q.value++],G=Q[q.value++];w=U(_,(V<<4)+(z>>4)),Y=U(_>>1,((z&15)<<8)+G)}else w=U(_,(Q[q.value++]<<8)+Q[q.value++]),Y=U(_>>1,(Q[q.value++]<<8)+Q[q.value++]);K+=w,H+=Y,W.push({x:K,y:H,onCurve:X})}return W}function RJ($,Q,Z){let J=0,q=d1($,J);if(J+=2,q!==0)throw Error(`Unsupported glyf transform version: ${q}`);let W=d1($,J);J+=2;let K=d1($,J);J+=2;let H=d1($,J);J+=2;let U=t1($,J);J+=4;let N=t1($,J);J+=4;let _=t1($,J);J+=4;let X=t1($,J);J+=4;let j=t1($,J);J+=4;let w=t1($,J);J+=4;let Y=t1($,J);J+=4;let V=$.slice(J,J+U);J+=U;let z=$.slice(J,J+N);J+=N;let G=$.slice(J,J+_);J+=_;let E=$.slice(J,J+X);J+=X;let B=$.slice(J,J+j);J+=j;let F=$.slice(J,J+w);J+=w;let v=$.slice(J,J+Y),L={value:0},h={value:0},S={value:0},I={value:0},b={value:0},x={value:0},P={value:0},o=[0],y=[],g=0;for(let i=0;i<Q;i++){let d=C1(V,L.value);if(L.value+=2,d===0){y.push(new Uint8Array(0)),o.push(g);continue}if(d>0){let r=TJ(d,z,h,G,S,E,I,F,x,v,P,W);y.push(r),g+=e6(r.length),o.push(g)}else{let r=PJ(B,b,F,x,v,P,W);y.push(r),g+=e6(r.length),o.push(g)}}let R=new Uint8Array(g),m=0;for(let i of y)R.set(i,m),m+=e6(i.length);let u=Z===0?(Q+1)*2:(Q+1)*4,s=new Uint8Array(u);for(let i=0;i<=Q;i++)if(Z===0)L1(s,i*2,o[i]/2);else K6(s,i*4,o[i]);return{glyf:R,loca:s}}function TJ($,Q,Z,J,q,W,K,H,U,N,_,X){let j=[],w=0;for(let m=0;m<$;m++){let u=Q9(Q,Z);w+=u,j.push(w-1)}let Y=MJ(J,W,w,q,K),V,z,G,E;if((X&1)===0&&U.value+8<=H.length)V=C1(H,U.value),U.value+=2,z=C1(H,U.value),U.value+=2,G=C1(H,U.value),U.value+=2,E=C1(H,U.value),U.value+=2;else{V=z=32767,G=E=-32768;for(let m of Y)V=Math.min(V,m.x),z=Math.min(z,m.y),G=Math.max(G,m.x),E=Math.max(E,m.y)}let F=Q9(W,K),v=N.slice(_.value,_.value+F);_.value+=F;let L=[],h=[],S=0,I=0;for(let m of Y)L.push(m.x-S),h.push(m.y-I),S=m.x,I=m.y;let b=[],x=[],P=[];for(let m=0;m<w;m++){let u=Y[m].onCurve?1:0,s=L[m],i=h[m];if(s===0)u|=16;else if(s>=-255&&s<=255){if(u|=2,s>0)u|=16;x.push(Math.abs(s))}else x.push(s>>8&255,s&255);if(i===0)u|=32;else if(i>=-255&&i<=255){if(u|=4,i>0)u|=32;P.push(Math.abs(i))}else P.push(i>>8&255,i&255);b.push(u)}let y=10+$*2+2+F+b.length+x.length+P.length,g=new Uint8Array(y),R=0;L1(g,R,$),R+=2,L1(g,R,V&65535),R+=2,L1(g,R,z&65535),R+=2,L1(g,R,G&65535),R+=2,L1(g,R,E&65535),R+=2;for(let m of j)L1(g,R,m),R+=2;L1(g,R,F),R+=2,g.set(v,R),R+=F;for(let m of b)g[R++]=m;for(let m of x)g[R++]=m;for(let m of P)g[R++]=m;return g.slice(0,R)}function PJ($,Q,Z,J,q,W,K){let H=[],U=C1(Z,J.value);J.value+=2;let N=C1(Z,J.value);J.value+=2;let _=C1(Z,J.value);J.value+=2;let X=C1(Z,J.value);J.value+=2,H.push(255,255),H.push(U>>8&255,U&255),H.push(N>>8&255,N&255),H.push(_>>8&255,_&255),H.push(X>>8&255,X&255);let j=!0,w=!1;while(j){let Y=d1($,Q.value);Q.value+=2;let V=d1($,Q.value);if(Q.value+=2,H.push(Y>>8&255,Y&255),H.push(V>>8&255,V&255),Y&1)H.push($[Q.value++]),H.push($[Q.value++]),H.push($[Q.value++]),H.push($[Q.value++]);else H.push($[Q.value++]),H.push($[Q.value++]);if(Y&8)H.push($[Q.value++]),H.push($[Q.value++]);else if(Y&64)for(let z=0;z<4;z++)H.push($[Q.value++]);else if(Y&128)for(let z=0;z<8;z++)H.push($[Q.value++]);if(j=(Y&32)!==0,Y&256)w=!0}if(w){let Y=Q9(q,W);H.push(Y>>8&255,Y&255);for(let V=0;V<Y;V++)H.push(q[W.value++])}return new Uint8Array(H)}async function W5($){let Q=new Uint8Array($),Z=new DataView($);if(Z.getUint32(0,!1)!==2001684018)throw Error("Not a valid WOFF2 file");let q=Z.getUint32(4,!1),W=Z.getUint16(12,!1),K=Z.getUint32(20,!1),H={value:48},U=DJ(Q,H,W),N=Q.slice(H.value,H.value+K),_=await LJ(N),X=new Map,j=0;for(let P of U){let o=_.slice(j,j+P.transformLength);X.set(P.tag,o),j+=P.transformLength}let w=X.get("maxp"),Y=X.get("head");if(!w||!Y)throw Error("Missing required tables");let V=d1(w,4),z=C1(Y,50),G=U.find((P)=>P.tag==="glyf"),E=U.find((P)=>P.tag==="loca");if(G&&G.transformVersion===0){let P=X.get("glyf");if(!P)throw Error("Missing glyf table data for transform");let{glyf:o,loca:y}=RJ(P,V,z);if(X.set("glyf",o),X.set("loca",y),G.origLength=o.length,E)E.origLength=y.length}let B=12,F=W*16,v=B+F,L=[];for(let P of U)L.push(v),v+=e6(P.origLength);let h=new Uint8Array(v),S=2**Math.floor(Math.log2(W))*16,I=Math.floor(Math.log2(W)),b=W*16-S;K6(h,0,q),L1(h,4,W),L1(h,6,S),L1(h,8,I),L1(h,10,b);let x=-1;for(let P=0;P<U.length;P++){let o=U[P],y=X.get(o.tag);if(!y)throw Error(`Missing table data for ${o.tag}`);let g=B+P*16,R=L[P];if(o.tag==="head"&&R!==void 0)x=R;for(let u=0;u<4;u++)h[g+u]=o.tag.charCodeAt(u);let m=K5(y,0,y.length);K6(h,g+4,m),K6(h,g+8,L[P]),K6(h,g+12,o.origLength),h.set(y.slice(0,o.origLength),L[P])}if(x>=0){let o=2981146554-K5(h,0,h.length)>>>0;K6(h,x+8,o)}return h.buffer}function T6($){let Q=$.uint16(),Z=$.int16(),J={format:Q,coordinate:Z};if(Q===2)J.referenceGlyph=$.uint16(),J.baseCoordPoint=$.uint16();else if(Q===3)J.deviceOffset=$.uint16();return J}function H5($,Q){if(Q===0)return null;let Z=$.sliceFrom(Q),J=Z.uint16(),q=Z.uint16(),W=Z.uint16(),K=null,H=null;if(J!==0){let N=$.sliceFrom(Q+J);K=T6(N).coordinate}if(q!==0){let N=$.sliceFrom(Q+q);H=T6(N).coordinate}let U=[];for(let N=0;N<W;N++){let _=Z.uint32(),X=Z.uint16(),j=Z.uint16(),w=null,Y=null;if(X!==0){let V=$.sliceFrom(Q+X);w=T6(V).coordinate}if(j!==0){let V=$.sliceFrom(Q+j);Y=T6(V).coordinate}U.push({featureTag:_,minCoord:w,maxCoord:Y})}return{minCoord:K,maxCoord:H,featMinMaxRecords:U}}function OJ($,Q,Z){if(Q===0)return null;let J=$.sliceFrom(Q),q=J.uint16(),W=J.uint16(),K=[];for(let U=0;U<W;U++)K.push(J.uint16());let H=[];for(let U of K)if(U!==0){let N=$.sliceFrom(Q+U);H.push(T6(N).coordinate)}else H.push(0);return{defaultBaselineIndex:q,baseCoords:H}}function IJ($,Q,Z){let J=$.sliceFrom(Q),q=J.uint16(),W=J.uint16(),K=J.uint16(),H=new Map,U=[];for(let X=0;X<K;X++){let j=J.uint32(),w=J.uint16();U.push({tag:j,offset:w})}let N=OJ($,Q+q,Z),_=H5($,Q+W);for(let{tag:X,offset:j}of U){let w=H5($,Q+j);if(w)H.set(X,w)}return{baseValues:N,defaultMinMax:_,baseLangSysRecords:H}}function U5($,Q){if(Q===0)return null;let Z=$.sliceFrom(Q),J=Z.uint16(),q=Z.uint16(),W=[];if(J!==0){let H=$.sliceFrom(Q+J),U=H.uint16();for(let N=0;N<U;N++)W.push(H.uint32())}let K=[];if(q!==0){let H=$.sliceFrom(Q+q),U=H.uint16(),N=[];for(let _=0;_<U;_++){let X=H.uint32(),j=H.uint16();N.push({tag:X,offset:j})}for(let{tag:_,offset:X}of N){let j=IJ($,Q+q+X,W);K.push({scriptTag:_,...j})}}return{baseTagList:W,baseScriptList:K}}function N5($){let Q=$.uint16(),Z=$.uint16(),J=$.uint16(),q=$.uint16(),W=U5($,J),K=U5($,q);return{majorVersion:Q,minorVersion:Z,horizAxis:W,vertAxis:K}}var vJ={SmallMetrics:1,SmallMetricsPng:17,BigMetrics:2,BigMetricsPng:18,CompressedPng:19};function X5($){let Q=$.offset,Z=$.uint16(),J=$.uint16(),q=$.uint32(),W=[];for(let K=0;K<q;K++){let H=$.uint32(),U=$.uint32(),N=$.uint32(),_=$.uint32(),X=_5($),j=_5($),w=$.uint16(),Y=$.uint16(),V=$.uint8(),z=$.uint8(),G=$.uint8(),E=$.int8();W.push({indexSubTableArrayOffset:H,indexTablesSize:U,numberOfIndexSubTables:N,colorRef:_,hori:X,vert:j,startGlyphIndex:w,endGlyphIndex:Y,ppemX:V,ppemY:z,bitDepth:G,flags:E,indexSubTables:[]})}for(let K of W){let H=$.sliceFrom(Q+K.indexSubTableArrayOffset),U=[];for(let N=0;N<K.numberOfIndexSubTables;N++)U.push({firstGlyphIndex:H.uint16(),lastGlyphIndex:H.uint16(),additionalOffsetToIndexSubtable:H.uint32()});for(let N of U){let _=kJ($,Q+K.indexSubTableArrayOffset+N.additionalOffsetToIndexSubtable,N.firstGlyphIndex,N.lastGlyphIndex);K.indexSubTables.push(_)}}return{majorVersion:Z,minorVersion:J,bitmapSizes:W}}function _5($){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 kJ($,Q,Z,J){let q=$.sliceFrom(Q),W=q.uint16(),K=q.uint16(),H=q.uint32(),U=new Map,N=J-Z+1;switch(W){case 1:{let _=[];for(let X=0;X<=N;X++)_.push(q.uint32());for(let X=0;X<N;X++){let j=_[X],w=_[X+1];if(j===void 0||w===void 0)continue;if(w>j)U.set(Z+X,{offset:H+j,length:w-j})}break}case 2:{let _=q.uint32(),X={height:q.uint8(),width:q.uint8(),horiBearingX:q.int8(),horiBearingY:q.int8(),horiAdvance:q.uint8(),vertBearingX:q.int8(),vertBearingY:q.int8(),vertAdvance:q.uint8()};for(let j=0;j<N;j++)U.set(Z+j,{offset:H+j*_,length:_});break}case 3:{let _=[];for(let X=0;X<=N;X++)_.push(q.uint16());for(let X=0;X<N;X++){let j=_[X],w=_[X+1];if(j===void 0||w===void 0)continue;if(w>j)U.set(Z+X,{offset:H+j,length:w-j})}break}case 4:{let _=q.uint32(),X=[];for(let j=0;j<=_;j++)X.push({glyphId:q.uint16(),offset:q.uint16()});for(let j=0;j<_;j++){let w=X[j],Y=X[j+1];if(w===void 0||Y===void 0)continue;U.set(w.glyphId,{offset:H+w.offset,length:Y.offset-w.offset})}break}case 5:{let _=q.uint32();q.skip(8);let X=q.uint32();for(let j=0;j<X;j++){let w=q.uint16();U.set(w,{offset:H+j*_,length:_})}break}}return{firstGlyphIndex:Z,lastGlyphIndex:J,indexFormat:W,imageFormat:K,imageDataOffset:H,glyphOffsets:U}}function j5($){let Q=$.uint16(),Z=$.uint16(),J=$.bytes($.remaining);return{majorVersion:Q,minorVersion:Z,data:J}}function CJ($,Q,Z,J){let q=null,W=1/0;for(let K of $.bitmapSizes){if(Z<K.startGlyphIndex||Z>K.endGlyphIndex)continue;let H=Math.abs(K.ppemX-J);if(H<W)W=H,q=K}if(!q)return null;for(let K of q.indexSubTables){let H=K.glyphOffsets.get(Z);if(!H)continue;let U=Q.data.slice(H.offset-4,H.offset-4+H.length);return SJ(U,K.imageFormat)}return null}function SJ($,Q){if($.length===0)return null;let Z=0,J;switch(Q){case 1:case 2:case 17:case 18:{if(Q===1||Q===17){if(Z+5>$.length)return null;J={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;J={height:$[Z++]??0,width:$[Z++]??0,bearingX:($[Z++]??0)<<24>>24,bearingY:($[Z++]??0)<<24>>24,advance:$[Z++]??0},Z+=3}break}case 19:{J={height:0,width:0,bearingX:0,bearingY:0,advance:0};break}default:return null}return{metrics:J,imageFormat:Q,data:$.slice(Z)}}function hJ($,Q,Z){for(let J of $.bitmapSizes){if(Z!==void 0&&J.ppemX!==Z)continue;if(Q<J.startGlyphIndex||Q>J.endGlyphIndex)continue;for(let q of J.indexSubTables)if(q.glyphOffsets.has(Q))return!0}return!1}function yJ($){let Q=new Set;for(let Z of $.bitmapSizes)Q.add(Z.ppemX);return Array.from(Q).sort((Z,J)=>Z-J)}var Z9=[".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 V5($){let Q=$.offset,Z=$.uint8(),J=$.uint8(),q=$.uint8(),W=$.uint8();$.seek(Q+q);let K=n1($).map((z)=>new TextDecoder().decode(z)),H=n1($),U=[],_=n1($).map((z)=>new TextDecoder().decode(z)),X=n1($);for(let z of H)U.push(Y5(new I1(z.buffer,z.byteOffset,z.byteLength),_));let j=[],w=[],Y=[],V=[];for(let z of U){if(z.charStrings!==void 0)$.seek(Q+z.charStrings),j.push(n1($));else j.push([]);if(z.private){let[G,E]=z.private,B=w5($.slice(E,G),_);if(B.subrs!==void 0)$.seek(Q+E+B.subrs),w.push(n1($));else w.push([])}else w.push([]);if(z.fdArray!==void 0){$.seek(Q+z.fdArray);let G=n1($),E=[];for(let B of G){let F=Y5(new I1(B.buffer,B.byteOffset,B.byteLength),_);if(F.private){let[v,L]=F.private,h=w5($.slice(Q+L,v),_);if(Object.assign(F,h),h.subrs!==void 0)$.seek(Q+L+h.subrs),F.localSubrs=n1($)}E.push(F)}Y.push(E)}else Y.push([]);if(z.fdSelect!==void 0){$.seek(Q+z.fdSelect);let G=j[j.length-1];V.push(gJ($,G?.length??0))}else V.push({format:0,select:()=>0})}return{version:{major:Z,minor:J},names:K,topDicts:U,strings:_,globalSubrs:X,charStrings:j,localSubrs:w,fdArrays:Y,fdSelects:V}}function n1($){let Q=$.uint16();if(Q===0)return[];let Z=$.uint8(),J=[];for(let W=0;W<=Q;W++)J.push(mJ($,Z));let q=[];for(let W=0;W<Q;W++){let K=J[W],H=J[W+1];if(K===void 0||H===void 0)continue;let U=H-K;q.push($.bytes(U))}return q}function mJ($,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 z5($){let Q=new Map,Z=[];while($.remaining>0){let J=$.uint8();if(J<=21){let q=J;if(J===12)q=3072|$.uint8();Q.set(q,[...Z]),Z.length=0}else if(J===28)Z.push($.int16());else if(J===29)Z.push($.int32());else if(J===30)Z.push(bJ($));else if(J>=32&&J<=246)Z.push(J-139);else if(J>=247&&J<=250){let q=$.uint8();Z.push((J-247)*256+q+108)}else if(J>=251&&J<=254){let q=$.uint8();Z.push(-(J-251)*256-q-108)}}return Q}function bJ($){let Q="",Z="0123456789.EE -",J=!1;while(!J){let q=$.uint8();for(let W=0;W<2;W++){let K=W===0?q>>4:q&15;if(K===15){J=!0;break}if(K===12)Q+="E-";else Q+=Z[K]}}return parseFloat(Q)}function Y5($,Q){let Z=z5($),J={},q=(W)=>{if(W<Z9.length)return Z9[W]??"";return Q[W-Z9.length]??""};for(let[W,K]of Z){let H=K[0],U=K[1],N=K[2];switch(W){case 0:if(H!==void 0)J.version=q(H);break;case 1:if(H!==void 0)J.notice=q(H);break;case 3072:if(H!==void 0)J.copyright=q(H);break;case 2:if(H!==void 0)J.fullName=q(H);break;case 3:if(H!==void 0)J.familyName=q(H);break;case 4:if(H!==void 0)J.weight=q(H);break;case 3073:J.isFixedPitch=H!==0;break;case 3074:J.italicAngle=H;break;case 3075:J.underlinePosition=H;break;case 3076:J.underlineThickness=H;break;case 3077:J.paintType=H;break;case 3078:J.charstringType=H;break;case 3079:J.fontMatrix=K;break;case 13:J.uniqueID=H;break;case 5:J.fontBBox=K;break;case 3080:J.strokeWidth=H;break;case 15:J.charset=H;break;case 16:J.encoding=H;break;case 17:J.charStrings=H;break;case 18:if(H!==void 0&&U!==void 0)J.private=[H,U];break;case 3092:J.syntheticBase=H;break;case 3093:if(H!==void 0)J.postScript=q(H);break;case 3094:if(H!==void 0)J.baseFontName=q(H);break;case 3095:J.baseFontBlend=K;break;case 3102:if(H!==void 0&&U!==void 0&&N!==void 0)J.ros={registry:q(H),ordering:q(U),supplement:N};break;case 3103:J.cidFontVersion=H;break;case 3104:J.cidFontRevision=H;break;case 3105:J.cidFontType=H;break;case 3106:J.cidCount=H;break;case 3107:J.uidBase=H;break;case 3108:J.fdArray=H;break;case 3109:J.fdSelect=H;break;case 3110:if(H!==void 0)J.fontName=q(H);break}}return J}function w5($,Q){let Z=z5($),J={};for(let[q,W]of Z){let K=W[0];switch(q){case 6:J.blueValues=W6(W);break;case 7:J.otherBlues=W6(W);break;case 8:J.familyBlues=W6(W);break;case 9:J.familyOtherBlues=W6(W);break;case 3081:J.blueScale=K;break;case 3082:J.blueShift=K;break;case 3083:J.blueFuzz=K;break;case 10:J.stdHW=K;break;case 11:J.stdVW=K;break;case 3084:J.stemSnapH=W6(W);break;case 3085:J.stemSnapV=W6(W);break;case 3086:J.forceBold=K!==0;break;case 3089:J.languageGroup=K;break;case 3090:J.expansionFactor=K;break;case 3091:J.initialRandomSeed=K;break;case 19:J.subrs=K;break;case 20:J.defaultWidthX=K;break;case 21:J.nominalWidthX=K;break}}return J}function W6($){let Q=[],Z=0;for(let J of $)Z+=J,Q.push(Z);return Q}function gJ($,Q){let Z=$.uint8();if(Z===0){let J=$.uint8Array(Q);return{format:Z,select:(q)=>J[q]??0}}else if(Z===3){let J=$.uint16(),q=[];for(let K=0;K<J;K++)q.push({first:$.uint16(),fd:$.uint8()});let W=$.uint16();return{format:Z,select:(K)=>{let H=0,U=q.length-1;while(H<U){let _=Math.ceil((H+U)/2),X=q[_];if(X&&X.first<=K)H=_;else U=_-1}return q[H]?.fd??0}}}return{format:Z,select:()=>0}}function J9($,Q,Z=0){let J=$.charStrings[Z];if(!J||Q>=J.length)return null;let q=J[Q];if(!q)return null;let W=$.globalSubrs,H=$.topDicts[Z]?.ros!==void 0,U=[];if(H&&$.fdSelects[Z]&&$.fdArrays[Z]){let _=$.fdSelects[Z]?.select(Q)??0;U=$.fdArrays[Z]?.[_]?.localSubrs||$.localSubrs[Z]||[]}else U=$.localSubrs[Z]||[];let N={x:0,y:0,stack:[],nStems:0,haveWidth:!1,width:0,contours:[],currentContour:[],transientArray:Array(32).fill(0),callStack:[],vsindex:0,axisCoords:null,vstore:null};if($8(N,q,W,U),N.currentContour.length>0)N.contours.push(N.currentContour);return N.contours}function Q8($,Q,Z=null){if(Q>=$.charStrings.length)return null;let J=$.charStrings[Q];if(!J)return null;let q=$.globalSubrs,W=$.fdSelect?.select(Q)??0,K=$.fdArray[W],H=K?.localSubrs||[],U={x:0,y:0,stack:[],nStems:0,haveWidth:!0,width:0,contours:[],currentContour:[],transientArray:Array(32).fill(0),callStack:[],vsindex:K?.private?.vsindex??0,axisCoords:Z,vstore:$.vstore};if($8(U,J,q,H),U.currentContour.length>0)U.contours.push(U.currentContour);return U.contours}function $8($,Q,Z,J){let q=0;while(q<Q.length){let W=Q[q++];if(W===void 0)return;if(W===28){let K=Q[q++];if(K===void 0)return;let H=Q[q++];if(H===void 0)return;$.stack.push((K<<8|H)<<16>>16)}else if(W===255){let K=Q[q++];if(K===void 0)return;let H=Q[q++];if(H===void 0)return;let U=Q[q++];if(U===void 0)return;let N=Q[q++];if(N===void 0)return;let _=(K<<24|H<<16|U<<8|N)>>0;$.stack.push(_/65536)}else if(W>=32&&W<=246)$.stack.push(W-139);else if(W>=247&&W<=250){let K=Q[q++];if(K===void 0)return;$.stack.push((W-247)*256+K+108)}else if(W>=251&&W<=254){let K=Q[q++];if(K===void 0)return;$.stack.push(-(W-251)*256-K-108)}else if(W===12){let K=Q[q++];if(K===void 0)return;let H=3072|K;G5($,H,Z,J)}else if(W===19||W===20){let K=$.stack;if(K.length%2!==0&&!$.haveWidth){let N=K.shift();if(N!==void 0)$.width=N,$.haveWidth=!0}$.nStems+=K.length/2,K.length=0;let U=Math.ceil($.nStems/8);q+=U}else G5($,W,Z,J);if($.callStack.length>0){let K=$.callStack[$.callStack.length-1];if(K&&K.pos>=K.data.length)$.callStack.pop()}}}function G5($,Q,Z,J){let q=$.stack;switch(Q){case 1:case 3:case 18:case 23:{if(q.length%2!==0&&!$.haveWidth){let K=q.shift();if(K===void 0)break;$.width=K,$.haveWidth=!0}$.nStems+=q.length/2,q.length=0;break}case 19:case 20:break;case 21:{if(q.length>2&&!$.haveWidth){let H=q.shift();if(H===void 0)break;$.width=H,$.haveWidth=!0}if($.currentContour.length>0)$.contours.push($.currentContour),$.currentContour=[];let W=q.pop();if(W===void 0)break;let K=q.pop();if(K===void 0)break;$.x+=K,$.y+=W,$.currentContour.push({x:$.x,y:$.y,onCurve:!0}),q.length=0;break}case 22:{if(q.length>1&&!$.haveWidth){let K=q.shift();if(K===void 0)break;$.width=K,$.haveWidth=!0}if($.currentContour.length>0)$.contours.push($.currentContour),$.currentContour=[];let W=q.pop();if(W===void 0)break;$.x+=W,$.currentContour.push({x:$.x,y:$.y,onCurve:!0}),q.length=0;break}case 4:{if(q.length>1&&!$.haveWidth){let K=q.shift();if(K===void 0)break;$.width=K,$.haveWidth=!0}if($.currentContour.length>0)$.contours.push($.currentContour),$.currentContour=[];let W=q.pop();if(W===void 0)break;$.y+=W,$.currentContour.push({x:$.x,y:$.y,onCurve:!0}),q.length=0;break}case 5:{while(q.length>=2){let W=q.shift();if(W===void 0)break;let K=q.shift();if(K===void 0)break;$.x+=W,$.y+=K,$.currentContour.push({x:$.x,y:$.y,onCurve:!0})}break}case 6:{let W=!0;while(q.length>=1){let K=q.shift();if(K===void 0)break;if(W)$.x+=K;else $.y+=K;$.currentContour.push({x:$.x,y:$.y,onCurve:!0}),W=!W}break}case 7:{let W=!0;while(q.length>=1){let K=q.shift();if(K===void 0)break;if(W)$.y+=K;else $.x+=K;$.currentContour.push({x:$.x,y:$.y,onCurve:!0}),W=!W}break}case 8:{while(q.length>=6){let W=q.shift();if(W===void 0)break;let K=q.shift();if(K===void 0)break;let H=q.shift();if(H===void 0)break;let U=q.shift();if(U===void 0)break;let N=q.shift();if(N===void 0)break;let _=q.shift();if(_===void 0)break;U1($,W,K,H,U,N,_)}break}case 27:{let W=0;if(q.length%4===1){let K=q.shift();if(K===void 0)break;W=K}while(q.length>=4){let K=q.shift();if(K===void 0)break;let H=q.shift();if(H===void 0)break;let U=q.shift();if(U===void 0)break;let N=q.shift();if(N===void 0)break;U1($,K,W,H,U,N,0),W=0}break}case 26:{let W=0;if(q.length%4===1){let K=q.shift();if(K===void 0)break;W=K}while(q.length>=4){let K=q.shift();if(K===void 0)break;let H=q.shift();if(H===void 0)break;let U=q.shift();if(U===void 0)break;let N=q.shift();if(N===void 0)break;U1($,W,K,H,U,0,N),W=0}break}case 31:{let W=!0;while(q.length>=4){if(W){let K=q.shift();if(K===void 0)break;let H=q.shift();if(H===void 0)break;let U=q.shift();if(U===void 0)break;let N=q.shift();if(N===void 0)break;let _=q.length===1?q.shift()??0:0;U1($,K,0,H,U,_,N)}else{let K=q.shift();if(K===void 0)break;let H=q.shift();if(H===void 0)break;let U=q.shift();if(U===void 0)break;let N=q.shift();if(N===void 0)break;let _=q.length===1?q.shift()??0:0;U1($,0,K,H,U,N,_)}W=!W}break}case 30:{let W=!0;while(q.length>=4){if(W){let K=q.shift();if(K===void 0)break;let H=q.shift();if(H===void 0)break;let U=q.shift();if(U===void 0)break;let N=q.shift();if(N===void 0)break;let _=q.length===1?q.shift()??0:0;U1($,0,K,H,U,N,_)}else{let K=q.shift();if(K===void 0)break;let H=q.shift();if(H===void 0)break;let U=q.shift();if(U===void 0)break;let N=q.shift();if(N===void 0)break;let _=q.length===1?q.shift()??0:0;U1($,K,0,H,U,_,N)}W=!W}break}case 24:{while(q.length>=8){let W=q.shift();if(W===void 0)break;let K=q.shift();if(K===void 0)break;let H=q.shift();if(H===void 0)break;let U=q.shift();if(U===void 0)break;let N=q.shift();if(N===void 0)break;let _=q.shift();if(_===void 0)break;U1($,W,K,H,U,N,_)}if(q.length>=2){let W=q.shift();if(W===void 0)break;let K=q.shift();if(K===void 0)break;$.x+=W,$.y+=K,$.currentContour.push({x:$.x,y:$.y,onCurve:!0})}break}case 25:{while(q.length>=8){let W=q.shift();if(W===void 0)break;let K=q.shift();if(K===void 0)break;$.x+=W,$.y+=K,$.currentContour.push({x:$.x,y:$.y,onCurve:!0})}if(q.length>=6){let W=q.shift();if(W===void 0)break;let K=q.shift();if(K===void 0)break;let H=q.shift();if(H===void 0)break;let U=q.shift();if(U===void 0)break;let N=q.shift();if(N===void 0)break;let _=q.shift();if(_===void 0)break;U1($,W,K,H,U,N,_)}break}case 10:{let W=q.pop();if(W===void 0)break;let K=W+E5(J.length),H=J[K];if(H)$8($,H,Z,J);break}case 29:{let W=q.pop();if(W===void 0)break;let K=W+E5(Z.length),H=Z[K];if(H)$8($,H,Z,J);break}case 11:break;case 14:{if(q.length>0&&!$.haveWidth){let W=q.shift();if(W===void 0)break;$.width=W,$.haveWidth=!0}if($.currentContour.length>0)$.contours.push($.currentContour),$.currentContour=[];q.length=0;break}case 3107:{if(q.length>=13){let W=q.shift();if(W===void 0)break;let K=q.shift();if(K===void 0)break;let H=q.shift();if(H===void 0)break;let U=q.shift();if(U===void 0)break;let N=q.shift();if(N===void 0)break;let _=q.shift();if(_===void 0)break;let X=q.shift();if(X===void 0)break;let j=q.shift();if(j===void 0)break;let w=q.shift();if(w===void 0)break;let Y=q.shift();if(Y===void 0)break;let V=q.shift();if(V===void 0)break;let z=q.shift();if(z===void 0)break;q.shift(),U1($,W,K,H,U,N,_),U1($,X,j,w,Y,V,z)}break}case 3106:{if(q.length>=7){let W=q.shift();if(W===void 0)break;let K=q.shift();if(K===void 0)break;let H=q.shift();if(H===void 0)break;let U=q.shift();if(U===void 0)break;let N=q.shift();if(N===void 0)break;let _=q.shift();if(_===void 0)break;let X=q.shift();if(X===void 0)break;U1($,W,0,K,H,U,0),U1($,N,0,_,-H,X,0)}break}case 3108:{if(q.length>=9){let W=q.shift();if(W===void 0)break;let K=q.shift();if(K===void 0)break;let H=q.shift();if(H===void 0)break;let U=q.shift();if(U===void 0)break;let N=q.shift();if(N===void 0)break;let _=q.shift();if(_===void 0)break;let X=q.shift();if(X===void 0)break;let j=q.shift();if(j===void 0)break;let w=q.shift();if(w===void 0)break;U1($,W,K,H,U,N,0),U1($,_,0,X,j,w,-(K+U+j))}break}case 3109:{if(q.length>=11){let W=q.shift();if(W===void 0)break;let K=q.shift();if(K===void 0)break;let H=q.shift();if(H===void 0)break;let U=q.shift();if(U===void 0)break;let N=q.shift();if(N===void 0)break;let _=q.shift();if(_===void 0)break;let X=q.shift();if(X===void 0)break;let j=q.shift();if(j===void 0)break;let w=q.shift();if(w===void 0)break;let Y=q.shift();if(Y===void 0)break;let V=q.shift();if(V===void 0)break;let z=W+H+N+X+w,G=K+U+_+j+Y,E,B;if(Math.abs(z)>Math.abs(G))E=V,B=-G;else E=-z,B=V;U1($,W,K,H,U,N,_),U1($,X,j,w,Y,E,B)}break}case 3075:{let W=q.pop();if(W===void 0)break;let K=q.pop();if(K===void 0)break;q.push(K&&W?1:0);break}case 3076:{let W=q.pop();if(W===void 0)break;let K=q.pop();if(K===void 0)break;q.push(K||W?1:0);break}case 3077:{let W=q.pop();if(W===void 0)break;q.push(W?0:1);break}case 3081:{let W=q.pop();if(W===void 0)break;q.push(Math.abs(W));break}case 3082:{let W=q.pop();if(W===void 0)break;let K=q.pop();if(K===void 0)break;q.push(K+W);break}case 3083:{let W=q.pop();if(W===void 0)break;let K=q.pop();if(K===void 0)break;q.push(K-W);break}case 3084:{let W=q.pop();if(W===void 0)break;let K=q.pop();if(K===void 0)break;q.push(K/W);break}case 3086:{let W=q.pop();if(W===void 0)break;q.push(-W);break}case 3087:{let W=q.pop();if(W===void 0)break;let K=q.pop();if(K===void 0)break;q.push(K===W?1:0);break}case 3090:{q.pop();break}case 3092:{let W=q.pop();if(W===void 0)break;let K=q.pop();if(K===void 0)break;$.transientArray[W]=K;break}case 3093:{let W=q.pop();if(W===void 0)break;q.push($.transientArray[W]??0);break}case 3094:{let W=q.pop();if(W===void 0)break;let K=q.pop();if(K===void 0)break;let H=q.pop();if(H===void 0)break;let U=q.pop();if(U===void 0)break;q.push(K<=W?U:H);break}case 3095:{q.push(Math.random());break}case 3096:{let W=q.pop();if(W===void 0)break;let K=q.pop();if(K===void 0)break;q.push(K*W);break}case 3098:{let W=q.pop();if(W===void 0)break;q.push(Math.sqrt(W));break}case 3099:{let W=q[q.length-1];if(W===void 0)break;q.push(W);break}case 3100:{let W=q.pop();if(W===void 0)break;let K=q.pop();if(K===void 0)break;q.push(W,K);break}case 3101:{let W=q.pop();if(W===void 0)break;let K=q.length-1-W;q.push(q[K]??0);break}case 3102:{let W=q.pop();if(W===void 0)break;let K=q.pop();if(K===void 0)break;if(K>0){let H=q.splice(-K),U=(W%K+K)%K;for(let N=0;N<K;N++){let _=H[(N+U)%K];if(_!==void 0)q.push(_)}}break}case 16:{if(!$.axisCoords||!$.vstore)break;let W=q.pop();if(W===void 0)break;let K=$.vstore.itemVariationData[$.vsindex]?.regionIndexCount??0,H=W*K,U=q.splice(-H),N=q.splice(-W);for(let _=0;_<W;_++){let X=N[_];if(X===void 0)continue;let j=X;for(let w=0;w<K;w++){let Y=U[_*K+w];if(Y===void 0)continue;let V=xJ($.vstore,$.vsindex,w,$.axisCoords);j+=Y*V}q.push(j)}break}case 15:{let W=q.pop();if(W===void 0)break;$.vsindex=W;break}case 3072:break}}function U1($,Q,Z,J,q,W,K){let{x:H,y:U}=$,N=H+Q,_=U+Z,X=N+J,j=_+q,w=X+W,Y=j+K;$.currentContour.push({x:N,y:_,onCurve:!1,cubic:!0}),$.currentContour.push({x:X,y:j,onCurve:!1,cubic:!0}),$.currentContour.push({x:w,y:Y,onCurve:!0}),$.x=w,$.y=Y}function E5($){if($<1240)return 107;if($<33900)return 1131;return 32768}function xJ($,Q,Z,J){let q=$.itemVariationData[Q];if(!q)return 0;let W=q.regionIndexes[Z];if(W===void 0)return 0;let K=$.variationRegionList.regions[W];if(!K)return 0;let H=1;for(let U=0;U<K.axes.length&&U<J.length;U++){let N=K.axes[U];if(!N)continue;let _=J[U];if(_===void 0)continue;if(_<N.startCoord||_>N.endCoord)return 0;if(_===N.peakCoord)continue;if(_<N.peakCoord)H*=(_-N.startCoord)/(N.peakCoord-N.startCoord);else H*=(N.endCoord-_)/(N.endCoord-N.peakCoord)}return H}function uJ($,Q,Z=0){let J=$.topDicts[Z];return 0}function A5($){let Q=$.offset,Z=$.uint8(),J=$.uint8(),q=$.uint8(),W=$.uint16();$.seek(Q+q);let K=$.slice($.offset-Q,W);$.skip(W);let H=dJ(K),U=Z8($),N=[];if(H.charStrings!==void 0)$.seek(Q+H.charStrings),N=Z8($);let _=[];if(H.fdArray!==void 0){$.seek(Q+H.fdArray);let w=Z8($);for(let Y of w){let V=nJ(new I1(Y.buffer,Y.byteOffset,Y.byteLength));if(V.privateOffset!==void 0&&V.privateSize!==void 0){$.seek(Q+V.privateOffset);let z=$.slice(0,V.privateSize);if(V.private=iJ(z),V.private.subrs!==void 0)$.seek(Q+V.privateOffset+V.private.subrs),V.localSubrs=Z8($)}_.push(V)}}let X=null;if(H.fdSelect!==void 0)$.seek(Q+H.fdSelect),X=pJ($,N.length);let j=null;if(H.vstore!==void 0)$.seek(Q+H.vstore),j=oJ($);return{version:{major:Z,minor:J},topDict:H,globalSubrs:U,charStrings:N,fdArray:_,fdSelect:X,vstore:j}}function Z8($){let Q=$.uint32();if(Q===0)return[];let Z=$.uint8(),J=[];for(let W=0;W<=Q;W++)J.push(fJ($,Z));let q=[];for(let W=0;W<Q;W++){let K=J[W],H=J[W+1];if(K===void 0||H===void 0)continue;let U=H-K;q.push($.bytes(U))}return q}function fJ($,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 q9($){let Q=new Map,Z=[];while($.remaining>0){let J=$.uint8();if(J<=21){let q=J;if(J===12)q=3072|$.uint8();Q.set(q,[...Z]),Z.length=0}else if(J===22)Q.set(22,[...Z]),Z.length=0;else if(J===23)Q.set(23,[...Z]),Z.length=0;else if(J===24)Q.set(24,[...Z]),Z.length=0;else if(J===28)Z.push($.int16());else if(J===29)Z.push($.int32());else if(J===30)Z.push(lJ($));else if(J>=32&&J<=246)Z.push(J-139);else if(J>=247&&J<=250){let q=$.uint8();Z.push((J-247)*256+q+108)}else if(J>=251&&J<=254){let q=$.uint8();Z.push(-(J-251)*256-q-108)}}return Q}function lJ($){let Q="",Z="0123456789.EE -",J=!1;while(!J){let q=$.uint8();for(let W=0;W<2;W++){let K=W===0?q>>4:q&15;if(K===15){J=!0;break}if(K===12)Q+="E-";else{let H=Z[K];if(H!==void 0)Q+=H}}}return parseFloat(Q)}function dJ($){let Q=q9($),Z={};for(let[J,q]of Q)switch(J){case 3079:Z.fontMatrix=q;break;case 17:Z.charStrings=q[0];break;case 3108:Z.fdArray=q[0];break;case 3109:Z.fdSelect=q[0];break;case 24:Z.vstore=q[0];break}return Z}function nJ($){let Q=q9($),Z={},J=Q.get(18);if(J&&J.length>=2)Z.privateSize=J[0],Z.privateOffset=J[1];return Z}function iJ($){let Q=q9($),Z={};for(let[J,q]of Q){let W=q[0];switch(J){case 6:Z.blueValues=H6(q);break;case 7:Z.otherBlues=H6(q);break;case 8:Z.familyBlues=H6(q);break;case 9:Z.familyOtherBlues=H6(q);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=H6(q);break;case 3085:Z.stemSnapV=H6(q);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=q;break}}return Z}function H6($){let Q=[],Z=0;for(let J of $)Z+=J,Q.push(Z);return Q}function pJ($,Q){let Z=$.uint8();if(Z===0){let J=$.uint8Array(Q);return{format:Z,select:(q)=>J[q]??0}}else if(Z===3){let J=$.uint16(),q=[];for(let W=0;W<J;W++)q.push({first:$.uint16(),fd:$.uint8()});return $.uint16(),{format:Z,select:(W)=>{let K=0,H=q.length-1;while(K<H){let N=Math.ceil((K+H)/2),_=q[N];if(_&&_.first<=W)K=N;else H=N-1}return q[K]?.fd??0}}}else if(Z===4){let J=$.uint32(),q=[];for(let W=0;W<J;W++)q.push({first:$.uint32(),fd:$.uint16()});return $.uint32(),{format:Z,select:(W)=>{let K=0,H=q.length-1;while(K<H){let N=Math.ceil((K+H)/2),_=q[N];if(_&&_.first<=W)K=N;else H=N-1}return q[K]?.fd??0}}}return{format:Z,select:()=>0}}function oJ($){let Q=$.offset,Z=$.uint16(),J=$.uint16(),q=$.uint32(),W=$.uint16(),K=[];for(let N=0;N<W;N++)K.push($.uint32());$.seek(Q+q);let H=sJ($),U=[];for(let N of K)$.seek(Q+N),U.push(cJ($));return{format:J,variationRegionList:H,itemVariationData:U}}function sJ($){let Q=$.uint16(),Z=$.uint16(),J=[];for(let q=0;q<Z;q++){let W=[];for(let K=0;K<Q;K++)W.push({startCoord:$.f2dot14(),peakCoord:$.f2dot14(),endCoord:$.f2dot14()});J.push({axes:W})}return{axisCount:Q,regionCount:Z,regions:J}}function cJ($){let Q=$.uint16(),Z=$.uint16(),J=Z&32767,q=(Z&32768)!==0,W=[];for(let H=0;H<J;H++)W.push($.uint16());let K=[];for(let H=0;H<Q;H++){let U=[];for(let N=0;N<J;N++)if(q)U.push($.int32());else U.push($.int16());K.push(U)}return{itemCount:Q,regionIndexCount:J,regionIndexes:W,deltaSets:K}}function B5($,Q){let Z=$.offset,J=$.uint16(),q=$.uint16(),W=[];for(let _=0;_<q;_++)W.push({platformId:$.uint16(),encodingId:$.uint16(),offset:$.uint32()});let K=new Map,H=new Set;for(let _ of W){if(H.has(_.offset)){let w=`${_.platformId}-${_.encodingId}`;for(let[Y,V]of K){let G=Y.split("@")[0];if(G&&Number.parseInt(G,10)===_.offset){K.set(w,V);break}}continue}H.add(_.offset);let X=$.slice(_.offset,Q-_.offset),j=aJ(X);if(j){let w=`${_.platformId}-${_.encodingId}`;K.set(w,j)}}let U=["3-10","0-4","3-1","0-3","0-6","1-0"],N=null;for(let _ of U){let X=K.get(_);if(X&&X.format!==14){N=X;break}}if(!N){for(let _ of K.values())if(_.format!==14){N=_;break}}return{version:J,numTables:q,encodingRecords:W,subtables:K,bestSubtable:N}}function aJ($){switch($.uint16()){case 0:return rJ($);case 4:return tJ($);case 12:return eJ($);case 14:return $q($);default:return null}}function rJ($){let Q=$.uint16(),Z=$.uint16(),J=$.uint8Array(256);return{format:0,glyphIdArray:J,lookup(q){if(q>=0&&q<256)return J[q];return}}}function tJ($){let Q=$.uint16(),Z=$.uint16(),q=$.uint16()/2;$.skip(6);let W=$.uint16Array(q);$.skip(2);let K=$.uint16Array(q),H=$.int16Array(q),U=$.offset,N=$.uint16Array(q),X=$.remaining/2,j=$.uint16Array(X);return{format:4,segCount:q,endCodes:W,startCodes:K,idDeltas:H,idRangeOffsets:N,glyphIdArray:j,lookup(w){if(w>65535)return;let Y=0,V=q-1;while(Y<=V){let z=Y+V>>>1,G=W[z];if(G===void 0)break;if(w>G)Y=z+1;else{let E=K[z];if(E===void 0)break;if(w<E)V=z-1;else{let B=N[z],F=H[z];if(B===void 0||F===void 0)break;if(B===0)return w+F&65535;let v=B/2-(q-z)+(w-E),L=j[v];if(L===void 0||L===0)return 0;return L+F&65535}}}return}}}function eJ($){$.skip(2);let Q=$.uint32(),Z=$.uint32(),J=$.uint32(),q=Array(J);for(let W=0;W<J;W++)q[W]={startCharCode:$.uint32(),endCharCode:$.uint32(),startGlyphId:$.uint32()};return{format:12,groups:q,lookup(W){let K=0,H=q.length-1;while(K<=H){let U=K+H>>>1,N=q[U];if(!N)break;if(W>N.endCharCode)K=U+1;else if(W<N.startCharCode)H=U-1;else return N.startGlyphId+(W-N.startCharCode)}return}}}function $q($){let Q=$.offset-2,Z=$.uint32(),J=$.uint32(),q=[];for(let K=0;K<J;K++)q.push({varSelector:$.uint24(),defaultUVSOffset:$.uint32(),nonDefaultUVSOffset:$.uint32()});let W=[];for(let K of q){let H=null,U=null;if(K.defaultUVSOffset!==0){let N=$.sliceFrom(Q+K.defaultUVSOffset),_=N.uint32();H=[];for(let X=0;X<_;X++)H.push({startUnicodeValue:N.uint24(),additionalCount:N.uint8()})}if(K.nonDefaultUVSOffset!==0){let N=$.sliceFrom(Q+K.nonDefaultUVSOffset),_=N.uint32();U=[];for(let X=0;X<_;X++)U.push({unicodeValue:N.uint24(),glyphId:N.uint16()})}W.push({varSelector:K.varSelector,defaultUVS:H,nonDefaultUVS:U})}return{format:14,varSelectorRecords:W,lookup(K){return},lookupVariation(K,H){let U=0,N=W.length-1,_=null;while(U<=N){let X=U+N>>>1,j=W[X];if(!j)break;if(H>j.varSelector)U=X+1;else if(H<j.varSelector)N=X-1;else{_=j;break}}if(!_)return;if(_.nonDefaultUVS){let X=0,j=_.nonDefaultUVS.length-1;while(X<=j){let w=X+j>>>1,Y=_.nonDefaultUVS[w];if(!Y)break;if(K>Y.unicodeValue)X=w+1;else if(K<Y.unicodeValue)j=w-1;else return Y.glyphId}}if(_.defaultUVS)for(let X of _.defaultUVS){let j=X.startUnicodeValue+X.additionalCount;if(K>=X.startUnicodeValue&&K<=j)return"default"}return}}}function F5($,Q){return $.bestSubtable?.lookup(Q)??0}var D5;((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"})(D5||={});var L5;((J)=>{J[J.Pad=0]="Pad";J[J.Repeat=1]="Repeat";J[J.Reflect=2]="Reflect"})(L5||={});var M5;((P)=>{P[P.Clear=0]="Clear";P[P.Src=1]="Src";P[P.Dest=2]="Dest";P[P.SrcOver=3]="SrcOver";P[P.DestOver=4]="DestOver";P[P.SrcIn=5]="SrcIn";P[P.DestIn=6]="DestIn";P[P.SrcOut=7]="SrcOut";P[P.DestOut=8]="DestOut";P[P.SrcAtop=9]="SrcAtop";P[P.DestAtop=10]="DestAtop";P[P.Xor=11]="Xor";P[P.Plus=12]="Plus";P[P.Screen=13]="Screen";P[P.Overlay=14]="Overlay";P[P.Darken=15]="Darken";P[P.Lighten=16]="Lighten";P[P.ColorDodge=17]="ColorDodge";P[P.ColorBurn=18]="ColorBurn";P[P.HardLight=19]="HardLight";P[P.SoftLight=20]="SoftLight";P[P.Difference=21]="Difference";P[P.Exclusion=22]="Exclusion";P[P.Multiply=23]="Multiply";P[P.Hue=24]="Hue";P[P.Saturation=25]="Saturation";P[P.Color=26]="Color";P[P.Luminosity=27]="Luminosity"})(M5||={});function W9($){let Q=$.offset,Z=$.uint16(),J=$.uint16(),q=$.uint32(),W=$.uint32(),K=$.uint16(),H=[];if(q!==0&&J>0){$.seek(Q+q);for(let _=0;_<J;_++)H.push({glyphId:$.uint16(),firstLayerIndex:$.uint16(),numLayers:$.uint16()})}let U=[];if(W!==0&&K>0){$.seek(Q+W);for(let _=0;_<K;_++)U.push({glyphId:$.uint16(),paletteIndex:$.uint16()})}let N={version:Z,baseGlyphRecords:H,layerRecords:U};if(Z>=1){$.seek(Q+14);let _=$.uint32(),X=$.uint32(),j=$.uint32(),w=$.uint32(),Y=$.uint32();if(_!==0){$.seek(Q+_);let V=$.uint32();N.baseGlyphPaintRecords=[];for(let z=0;z<V;z++){let G=$.uint16(),E=$.uint32(),B=$.offset;$.seek(Q+_+4+z*6+2+E-4);let F=j1($,Q);$.seek(B),N.baseGlyphPaintRecords.push({glyphId:G,paint:F})}}if(X!==0){$.seek(Q+X);let V=$.uint32(),z=[];for(let G=0;G<V;G++)z.push($.uint32());N.layerList=[];for(let G of z)$.seek(Q+X+G),N.layerList.push(j1($,Q))}if(j!==0)$.seek(Q+j),N.clipList=Qq($,Q);if(w!==0)$.seek(Q+w),N.varIdxMap=Jq($);if(Y!==0)$.seek(Q+Y),N.itemVariationStore=qq($)}return N}function j1($,Q){let Z=$.uint8();switch(Z){case 1:return{format:Z,numLayers:$.uint8(),firstLayerIndex:$.uint32()};case 2:return{format:Z,paletteIndex:$.uint16(),alpha:$.f2dot14()};case 3:return{format:Z,paletteIndex:$.uint16(),alpha:$.f2dot14(),varIndexBase:$.uint32()};case 4:case 5:{let J=$.uint24(),q=$.fword(),W=$.fword(),K=$.fword(),H=$.fword(),U=$.fword(),N=$.fword(),_=$.offset;$.seek($.offset-18+J);let X=K9($);return $.seek(_),{format:Z,colorLine:X,x0:q,y0:W,x1:K,y1:H,x2:U,y2:N}}case 6:case 7:{let J=$.uint24(),q=$.fword(),W=$.fword(),K=$.ufword(),H=$.fword(),U=$.fword(),N=$.ufword(),_=$.offset;$.seek($.offset-18+J);let X=K9($);return $.seek(_),{format:Z,colorLine:X,x0:q,y0:W,radius0:K,x1:H,y1:U,radius1:N}}case 8:case 9:{let J=$.uint24(),q=$.fword(),W=$.fword(),K=$.f2dot14(),H=$.f2dot14(),U=$.offset;$.seek($.offset-12+J);let N=K9($);return $.seek(U),{format:Z,colorLine:N,centerX:q,centerY:W,startAngle:K,endAngle:H}}case 10:{let J=$.uint24(),q=$.uint16(),W=$.offset;$.seek($.offset-5+J);let K=j1($,Q);return $.seek(W),{format:Z,paint:K,glyphId:q}}case 11:return{format:Z,glyphId:$.uint16()};case 12:case 13:{let J=$.uint24(),q=$.uint24(),W=$.offset-6+J,K=$.offset-3+q;$.seek(K);let H={xx:$.fixed(),yx:$.fixed(),xy:$.fixed(),yy:$.fixed(),dx:$.fixed(),dy:$.fixed()};$.seek(W);let U=j1($,Q);return{format:Z,paint:U,transform:H}}case 14:case 15:{let J=$.uint24(),q=$.fword(),W=$.fword(),K=$.offset;$.seek($.offset-7+J);let H=j1($,Q);return $.seek(K),{format:Z,paint:H,dx:q,dy:W}}case 16:case 17:{let J=$.uint24(),q=$.f2dot14(),W=$.f2dot14(),K=$.offset;$.seek($.offset-7+J);let H=j1($,Q);return $.seek(K),{format:Z,paint:H,scaleX:q,scaleY:W}}case 18:case 19:{let J=$.uint24(),q=$.f2dot14(),W=$.f2dot14(),K=$.fword(),H=$.fword(),U=$.offset;$.seek($.offset-11+J);let N=j1($,Q);return $.seek(U),{format:Z,paint:N,scaleX:q,scaleY:W,centerX:K,centerY:H}}case 20:case 21:{let J=$.uint24(),q=$.f2dot14(),W=$.offset;$.seek($.offset-5+J);let K=j1($,Q);return $.seek(W),{format:Z,paint:K,scaleX:q,scaleY:q}}case 22:case 23:{let J=$.uint24(),q=$.f2dot14(),W=$.fword(),K=$.fword(),H=$.offset;$.seek($.offset-9+J);let U=j1($,Q);return $.seek(H),{format:Z,paint:U,scaleX:q,scaleY:q,centerX:W,centerY:K}}case 24:case 25:{let J=$.uint24(),q=$.f2dot14(),W=$.offset;$.seek($.offset-5+J);let K=j1($,Q);return $.seek(W),{format:Z,paint:K,angle:q}}case 26:case 27:{let J=$.uint24(),q=$.f2dot14(),W=$.fword(),K=$.fword(),H=$.offset;$.seek($.offset-9+J);let U=j1($,Q);return $.seek(H),{format:Z,paint:U,angle:q,centerX:W,centerY:K}}case 28:case 29:{let J=$.uint24(),q=$.f2dot14(),W=$.f2dot14(),K=$.offset;$.seek($.offset-7+J);let H=j1($,Q);return $.seek(K),{format:Z,paint:H,xSkewAngle:q,ySkewAngle:W}}case 30:case 31:{let J=$.uint24(),q=$.f2dot14(),W=$.f2dot14(),K=$.fword(),H=$.fword(),U=$.offset;$.seek($.offset-11+J);let N=j1($,Q);return $.seek(U),{format:Z,paint:N,xSkewAngle:q,ySkewAngle:W,centerX:K,centerY:H}}case 32:{let J=$.uint24(),q=$.uint8(),W=$.uint24(),K=$.offset-7+J,H=$.offset-3+W;$.seek(K);let U=j1($,Q);$.seek(H);let N=j1($,Q);return{format:Z,sourcePaint:U,compositeMode:q,backdropPaint:N}}default:throw Error(`Unknown paint format: ${Z}`)}}function K9($){let Q=$.uint8(),Z=$.uint16(),J=[];for(let q=0;q<Z;q++)J.push({stopOffset:$.f2dot14(),paletteIndex:$.uint16(),alpha:$.f2dot14()});return{extend:Q,colorStops:J}}function Qq($,Q){let Z=$.uint8(),J=$.uint32(),q=[];for(let W=0;W<J;W++){let K=$.uint16(),H=$.uint16(),U=$.uint24(),N=$.offset;$.seek($.offset-7+U);let _=$.uint8(),X={format:_,xMin:$.fword(),yMin:$.fword(),xMax:$.fword(),yMax:$.fword()};if(_===2)X.varIndexBase=$.uint32();$.seek(N),q.push({startGlyphId:K,endGlyphId:H,clipBox:X})}return q}function R5($,Q){let Z=$.baseGlyphRecords,J=0,q=Z.length-1;while(J<=q){let W=J+q>>>1,K=Z[W];if(!K)break;if(K.glyphId===Q){let H=[];for(let U=0;U<K.numLayers;U++){let N=$.layerRecords[K.firstLayerIndex+U];if(N)H.push(N)}return H}else if(K.glyphId<Q)J=W+1;else q=W-1}return null}function T5($,Q){if(!$.baseGlyphPaintRecords)return null;let Z=$.baseGlyphPaintRecords,J=0,q=Z.length-1;while(J<=q){let W=J+q>>>1,K=Z[W];if(!K)break;if(K.glyphId===Q)return K.paint;else if(K.glyphId<Q)J=W+1;else q=W-1}return null}function Zq($,Q){return R5($,Q)!==null||T5($,Q)!==null}function Jq($){let Q=$.uint8(),Z=$.uint8(),J=Q===0?$.uint16():$.uint32(),q=(Z&15)+1,W=(Z>>4&15)+1,K=Math.ceil((q+W)/8),H=[];for(let U=0;U<J;U++){let N=0;for(let w=0;w<K;w++)N=N<<8|$.uint8();let _=(1<<q)-1,X=N&_,j=N>>q;H.push(j<<16|X)}return H}function qq($){let Q=$.offset,Z=$.uint16(),J=$.uint32(),q=$.uint16(),W=[];for(let _=0;_<q;_++)W.push($.uint32());$.seek(Q+J);let K=$.uint16(),H=$.uint16(),U=[];for(let _=0;_<H;_++){let X=[];for(let j=0;j<K;j++)X.push({startCoord:$.f2dot14(),peakCoord:$.f2dot14(),endCoord:$.f2dot14()});U.push({regionAxes:X})}let N=[];for(let _ of W){$.seek(Q+_);let X=$.uint16(),j=$.uint16(),w=$.uint16(),Y=[];for(let E=0;E<w;E++)Y.push($.uint16());let V=(j&32768)!==0,z=j&32767,G=[];for(let E=0;E<X;E++){let B=[];for(let F=0;F<w;F++)if(F<z)B.push(V?$.int32():$.int16());else B.push(V?$.int16():$.int8());G.push(B)}N.push({itemCount:X,wordDeltaCount:j,regionIndexCount:w,regionIndexes:Y,deltaSets:G})}return{format:Z,variationRegionListOffset:J,itemVariationDataCount:q,itemVariationDataOffsets:W,variationRegions:U,itemVariationData:N}}function Kq($,Q){if(!$.clipList)return null;for(let Z of $.clipList)if(Q>=Z.startGlyphId&&Q<=Z.endGlyphId)return Z.clipBox;return null}function Wq($,Q,Z){if(!$.itemVariationStore||!$.varIdxMap)return 0;let J=$.varIdxMap[Q];if(J===void 0)return 0;let q=J>>16,W=J&65535,K=$.itemVariationStore,H=K.itemVariationData[q];if(!H)return 0;let U=H.deltaSets[W];if(!U)return 0;let N=0;for(let _=0;_<H.regionIndexCount;_++){let X=H.regionIndexes[_];if(X===void 0)continue;let j=K.variationRegions[X];if(!j)continue;let w=1;for(let V=0;V<j.regionAxes.length&&V<Z.length;V++){let z=j.regionAxes[V],G=Z[V];if(z===void 0||G===void 0)continue;if(w*=Hq(G,z.startCoord,z.peakCoord,z.endCoord),w===0)break}let Y=U[_];if(Y!==void 0)N+=Y*w}return N}function Hq($,Q,Z,J){if(Z===0)return 1;if($===Z)return 1;if($<Q||$>J)return 0;if($<Z){if(Q===Z)return 1;return($-Q)/(Z-Q)}else{if(Z===J)return 1;return(J-$)/(J-Z)}}function Uq($){return $.version>=1&&$.baseGlyphPaintRecords!==void 0}function Nq($,Q){return $.layerList?.[Q]??null}var P5;((Z)=>{Z[Z.UsableWithLightBackground=1]="UsableWithLightBackground";Z[Z.UsableWithDarkBackground=2]="UsableWithDarkBackground"})(P5||={});function H9($){let Q=$.offset,Z=$.uint16(),J=$.uint16(),q=$.uint16(),W=$.uint16(),K=$.uint32(),H=[];for(let w=0;w<q;w++)H.push($.uint16());$.seek(Q+K);let U=[];for(let w=0;w<W;w++)U.push({blue:$.uint8(),green:$.uint8(),red:$.uint8(),alpha:$.uint8()});let N=[];for(let w=0;w<q;w++){let Y=H[w];if(Y===void 0)continue;let V=[];for(let z=0;z<J;z++){let G=U[Y+z];if(G)V.push(G)}N.push({colors:V})}let _,X,j;if(Z>=1){$.seek(Q+12+q*2);let w=$.uint32(),Y=$.uint32(),V=$.uint32();if(w!==0){$.seek(Q+w),_=[];for(let z=0;z<q;z++)_.push($.uint32())}if(Y!==0){$.seek(Q+Y),X=[];for(let z=0;z<q;z++)X.push($.uint16())}if(V!==0){$.seek(Q+V),j=[];for(let z=0;z<J;z++)j.push($.uint16())}}return{version:Z,numPalettes:q,numPaletteEntries:J,palettes:N,paletteTypes:_,paletteLabels:X,paletteEntryLabels:j}}function _q($,Q,Z){let J=$.palettes[Q];if(!J)return null;return J.colors[Z]??null}function Xq($){return`rgba(${$.red}, ${$.green}, ${$.blue}, ${($.alpha/255).toFixed(3)})`}function jq($){let Q=$.red.toString(16).padStart(2,"0"),Z=$.green.toString(16).padStart(2,"0"),J=$.blue.toString(16).padStart(2,"0");if($.alpha===255)return`#${Q}${Z}${J}`;let q=$.alpha.toString(16).padStart(2,"0");return`#${Q}${Z}${J}${q}`}var O5;((O)=>{O[O.AllTypographicFeatures=0]="AllTypographicFeatures";O[O.Ligatures=1]="Ligatures";O[O.CursiveConnection=2]="CursiveConnection";O[O.LetterCase=3]="LetterCase";O[O.VerticalSubstitution=4]="VerticalSubstitution";O[O.LinguisticRearrangement=5]="LinguisticRearrangement";O[O.NumberSpacing=6]="NumberSpacing";O[O.SmartSwashes=8]="SmartSwashes";O[O.Diacritics=9]="Diacritics";O[O.VerticalPosition=10]="VerticalPosition";O[O.Fractions=11]="Fractions";O[O.OverlappingCharacters=13]="OverlappingCharacters";O[O.TypographicExtras=14]="TypographicExtras";O[O.MathematicalExtras=15]="MathematicalExtras";O[O.OrnamentSets=16]="OrnamentSets";O[O.CharacterAlternatives=17]="CharacterAlternatives";O[O.DesignComplexity=18]="DesignComplexity";O[O.StyleOptions=19]="StyleOptions";O[O.CharacterShape=20]="CharacterShape";O[O.NumberCase=21]="NumberCase";O[O.TextSpacing=22]="TextSpacing";O[O.Transliteration=23]="Transliteration";O[O.Annotation=24]="Annotation";O[O.KanaSpacing=25]="KanaSpacing";O[O.IdeographicSpacing=26]="IdeographicSpacing";O[O.UnicodeDecomposition=27]="UnicodeDecomposition";O[O.RubyKana=28]="RubyKana";O[O.CJKSymbolAlternatives=29]="CJKSymbolAlternatives";O[O.IdeographicAlternatives=30]="IdeographicAlternatives";O[O.CJKVerticalRomanPlacement=31]="CJKVerticalRomanPlacement";O[O.ItalicCJKRoman=32]="ItalicCJKRoman";O[O.CaseSensitiveLayout=33]="CaseSensitiveLayout";O[O.AlternateKana=34]="AlternateKana";O[O.StylisticAlternatives=35]="StylisticAlternatives";O[O.ContextualAlternatives=36]="ContextualAlternatives";O[O.LowerCase=37]="LowerCase";O[O.UpperCase=38]="UpperCase";O[O.LanguageTag=39]="LanguageTag";O[O.CJKRomanSpacing=103]="CJKRomanSpacing"})(O5||={});var I5;((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"})(I5||={});var v5;((W)=>{W[W.NormalPosition=0]="NormalPosition";W[W.Superiors=1]="Superiors";W[W.Inferiors=2]="Inferiors";W[W.Ordinals=3]="Ordinals";W[W.ScientificInferiors=4]="ScientificInferiors"})(v5||={});var k5;((Z)=>{Z[Z.LowerCaseNumbers=0]="LowerCaseNumbers";Z[Z.UpperCaseNumbers=1]="UpperCaseNumbers"})(k5||={});var C5;((q)=>{q[q.MonospacedNumbers=0]="MonospacedNumbers";q[q.ProportionalNumbers=1]="ProportionalNumbers";q[q.ThirdWidthNumbers=2]="ThirdWidthNumbers";q[q.QuarterWidthNumbers=3]="QuarterWidthNumbers"})(C5||={});var S5;((J)=>{J[J.NoFractions=0]="NoFractions";J[J.VerticalFractions=1]="VerticalFractions";J[J.DiagonalFractions=2]="DiagonalFractions"})(S5||={});var h5;((q)=>{q[q.CaseSensitiveLayoutOn=0]="CaseSensitiveLayoutOn";q[q.CaseSensitiveLayoutOff=1]="CaseSensitiveLayoutOff";q[q.CaseSensitiveSpacingOn=2]="CaseSensitiveSpacingOn";q[q.CaseSensitiveSpacingOff=3]="CaseSensitiveSpacingOff"})(h5||={});var y5;((k)=>{k[k.NoStylisticAlternates=0]="NoStylisticAlternates";k[k.StylisticAltOneOn=2]="StylisticAltOneOn";k[k.StylisticAltOneOff=3]="StylisticAltOneOff";k[k.StylisticAltTwoOn=4]="StylisticAltTwoOn";k[k.StylisticAltTwoOff=5]="StylisticAltTwoOff";k[k.StylisticAltThreeOn=6]="StylisticAltThreeOn";k[k.StylisticAltThreeOff=7]="StylisticAltThreeOff";k[k.StylisticAltFourOn=8]="StylisticAltFourOn";k[k.StylisticAltFourOff=9]="StylisticAltFourOff";k[k.StylisticAltFiveOn=10]="StylisticAltFiveOn";k[k.StylisticAltFiveOff=11]="StylisticAltFiveOff";k[k.StylisticAltSixOn=12]="StylisticAltSixOn";k[k.StylisticAltSixOff=13]="StylisticAltSixOff";k[k.StylisticAltSevenOn=14]="StylisticAltSevenOn";k[k.StylisticAltSevenOff=15]="StylisticAltSevenOff";k[k.StylisticAltEightOn=16]="StylisticAltEightOn";k[k.StylisticAltEightOff=17]="StylisticAltEightOff";k[k.StylisticAltNineOn=18]="StylisticAltNineOn";k[k.StylisticAltNineOff=19]="StylisticAltNineOff";k[k.StylisticAltTenOn=20]="StylisticAltTenOn";k[k.StylisticAltTenOff=21]="StylisticAltTenOff";k[k.StylisticAltElevenOn=22]="StylisticAltElevenOn";k[k.StylisticAltElevenOff=23]="StylisticAltElevenOff";k[k.StylisticAltTwelveOn=24]="StylisticAltTwelveOn";k[k.StylisticAltTwelveOff=25]="StylisticAltTwelveOff";k[k.StylisticAltThirteenOn=26]="StylisticAltThirteenOn";k[k.StylisticAltThirteenOff=27]="StylisticAltThirteenOff";k[k.StylisticAltFourteenOn=28]="StylisticAltFourteenOn";k[k.StylisticAltFourteenOff=29]="StylisticAltFourteenOff";k[k.StylisticAltFifteenOn=30]="StylisticAltFifteenOn";k[k.StylisticAltFifteenOff=31]="StylisticAltFifteenOff";k[k.StylisticAltSixteenOn=32]="StylisticAltSixteenOn";k[k.StylisticAltSixteenOff=33]="StylisticAltSixteenOff";k[k.StylisticAltSeventeenOn=34]="StylisticAltSeventeenOn";k[k.StylisticAltSeventeenOff=35]="StylisticAltSeventeenOff";k[k.StylisticAltEighteenOn=36]="StylisticAltEighteenOn";k[k.StylisticAltEighteenOff=37]="StylisticAltEighteenOff";k[k.StylisticAltNineteenOn=38]="StylisticAltNineteenOn";k[k.StylisticAltNineteenOff=39]="StylisticAltNineteenOff";k[k.StylisticAltTwentyOn=40]="StylisticAltTwentyOn";k[k.StylisticAltTwentyOff=41]="StylisticAltTwentyOff"})(y5||={});var m5;((K)=>{K[K.ContextualAlternatesOn=0]="ContextualAlternatesOn";K[K.ContextualAlternatesOff=1]="ContextualAlternatesOff";K[K.SwashAlternatesOn=2]="SwashAlternatesOn";K[K.SwashAlternatesOff=3]="SwashAlternatesOff";K[K.ContextualSwashAlternatesOn=4]="ContextualSwashAlternatesOn";K[K.ContextualSwashAlternatesOff=5]="ContextualSwashAlternatesOff"})(m5||={});var b5;((J)=>{J[J.DefaultLowerCase=0]="DefaultLowerCase";J[J.LowerCaseSmallCaps=1]="LowerCaseSmallCaps";J[J.LowerCasePetiteCaps=2]="LowerCasePetiteCaps"})(b5||={});var g5;((J)=>{J[J.DefaultUpperCase=0]="DefaultUpperCase";J[J.UpperCaseSmallCaps=1]="UpperCaseSmallCaps";J[J.UpperCasePetiteCaps=2]="UpperCasePetiteCaps"})(g5||={});var x5;((_)=>{_[_.WordInitialSwashesOn=0]="WordInitialSwashesOn";_[_.WordInitialSwashesOff=1]="WordInitialSwashesOff";_[_.WordFinalSwashesOn=2]="WordFinalSwashesOn";_[_.WordFinalSwashesOff=3]="WordFinalSwashesOff";_[_.LineInitialSwashesOn=4]="LineInitialSwashesOn";_[_.LineInitialSwashesOff=5]="LineInitialSwashesOff";_[_.LineFinalSwashesOn=6]="LineFinalSwashesOn";_[_.LineFinalSwashesOff=7]="LineFinalSwashesOff";_[_.NonFinalSwashesOn=8]="NonFinalSwashesOn";_[_.NonFinalSwashesOff=9]="NonFinalSwashesOff"})(x5||={});var u5;((J)=>{J[J.ShowDiacritics=0]="ShowDiacritics";J[J.HideDiacritics=1]="HideDiacritics";J[J.DecomposeDiacritics=2]="DecomposeDiacritics"})(u5||={});var f5;((Y)=>{Y[Y.TraditionalCharacters=0]="TraditionalCharacters";Y[Y.SimplifiedCharacters=1]="SimplifiedCharacters";Y[Y.JIS1978Characters=2]="JIS1978Characters";Y[Y.JIS1983Characters=3]="JIS1983Characters";Y[Y.JIS1990Characters=4]="JIS1990Characters";Y[Y.TraditionalAltOne=5]="TraditionalAltOne";Y[Y.TraditionalAltTwo=6]="TraditionalAltTwo";Y[Y.TraditionalAltThree=7]="TraditionalAltThree";Y[Y.TraditionalAltFour=8]="TraditionalAltFour";Y[Y.TraditionalAltFive=9]="TraditionalAltFive";Y[Y.ExpertCharacters=10]="ExpertCharacters";Y[Y.NLCCharacters=13]="NLCCharacters";Y[Y.JIS2004Characters=11]="JIS2004Characters";Y[Y.HojoCharacters=12]="HojoCharacters"})(f5||={});var l5;((Z)=>{Z[Z.Exclusive=32768]="Exclusive";Z[Z.UseDefault=16384]="UseDefault"})(l5||={});function U9($){let Q=$.offset,Z=$.fixed(),J=$.uint16();$.skip(2),$.skip(4);let q=[];for(let W=0;W<J;W++){let K=$.uint16(),H=$.uint16(),U=$.offset32(),N=$.uint16(),_=N&255,X=$.uint16(),j=[],w=$.offset;$.seek(Q+U);for(let Y=0;Y<H;Y++)j.push({settingValue:$.uint16(),nameId:$.uint16()});$.seek(w),q.push({featureType:K,nSettings:H,settingTableOffset:U,featureFlags:N,defaultSettingIndex:_,nameId:X,settings:j})}return{version:Z,features:q}}function Yq($,Q){return $.features.find((Z)=>Z.featureType===Q)}function wq($){return $.features}function Vq($){return($.featureFlags&32768)!==0}function zq($){return $.settings[$.defaultSettingIndex]}function Gq($,Q){return $.settings.find((Z)=>Z.settingValue===Q)}function Eq($,Q){return $.settings.some((Z)=>Z.settingValue===Q)}function Aq($,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 Bq($){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}function d5($){let Q=$.uint16(),Z=$.uint16(),J=[];for(let q=0;q<Z;q++){let W=$.uint16(),K=$.uint16();J.push({maxPPEM:W,behavior:K})}return J.sort((q,W)=>q.maxPPEM-W.maxPPEM),{version:Q,ranges:J}}class n5{startGlyphId;classValueArray;constructor($,Q){this.startGlyphId=$,this.classValueArray=Q}get($){let Q=$-this.startGlyphId;if(Q>=0&&Q<this.classValueArray.length)return this.classValueArray[Q]??0;return 0}glyphsInClass($){let Q=[];for(let Z=0;Z<this.classValueArray.length;Z++)if(this.classValueArray[Z]===$)Q.push(this.startGlyphId+Z);return Q}}class i5{ranges;constructor($){this.ranges=$}get($){let Q=0,Z=this.ranges.length-1;while(Q<=Z){let J=Q+Z>>>1,q=this.ranges[J];if(!q)continue;if($>q.endGlyphId)Q=J+1;else if($<q.startGlyphId)Z=J-1;else return q.classValue}return 0}glyphsInClass($){let Q=[];for(let Z of this.ranges)if(Z.classValue===$)for(let J=Z.startGlyphId;J<=Z.endGlyphId;J++)Q.push(J);return Q}}class p5{get($){return 0}glyphsInClass($){return[]}}var Fq=new p5;function Dq($){let Q=$.uint16();if(Q===1){let Z=$.uint16(),J=$.uint16(),q=$.uint16Array(J);return new n5(Z,q)}if(Q===2){let Z=$.uint16(),J=Array(Z);for(let q=0;q<Z;q++)J[q]={startGlyphId:$.uint16(),endGlyphId:$.uint16(),classValue:$.uint16()};return new i5(J)}throw Error(`Unknown ClassDef format: ${Q}`)}function _1($,Q){if(Q===0)return Fq;return Dq($.sliceFrom(Q))}function o5($){let Q=$.uint16(),Z=$.uint16(),J=$.offset16(),q=$.offset16(),W=$.offset16(),K=$.offset16(),H=0;if(Q===1&&Z>=2)H=$.offset16();let U=_1($,J),N=null;if(q!==0)N=Lq($.sliceFrom(q));let _=null;if(W!==0)_=Mq($.sliceFrom(W));let X=_1($,K),j=null;if(H!==0)j=Rq($.sliceFrom(H));return{version:{major:Q,minor:Z},glyphClassDef:U,attachList:N,ligCaretList:_,markAttachClassDef:X,markGlyphSets:j}}function Lq($){let Q=$.offset16(),Z=$.uint16(),J=$.uint16Array(Z),q=$.sliceFrom(Q),W=q.uint16(),K=[];if(W===1){let U=q.uint16();for(let N=0;N<U;N++)K.push(q.uint16())}else if(W===2){let U=q.uint16();for(let N=0;N<U;N++){let _=q.uint16(),X=q.uint16();q.skip(2);for(let j=_;j<=X;j++)K.push(j)}}let H=new Map;for(let[U,N]of J.entries()){let _=K[U];if(_===void 0)continue;let X=$.sliceFrom(N),j=X.uint16(),w=Array.from(X.uint16Array(j));H.set(_,{pointIndices:w})}return H}function Mq($){let Q=$.offset16(),Z=$.uint16(),J=$.uint16Array(Z),q=$.sliceFrom(Q),W=q.uint16(),K=[];if(W===1){let U=q.uint16();for(let N=0;N<U;N++)K.push(q.uint16())}else if(W===2){let U=q.uint16();for(let N=0;N<U;N++){let _=q.uint16(),X=q.uint16();q.skip(2);for(let j=_;j<=X;j++)K.push(j)}}let H=new Map;for(let[U,N]of J.entries()){let _=K[U];if(_===void 0)continue;let X=$.sliceFrom(N),j=X.uint16(),w=X.uint16Array(j),Y=[];for(let V of w){let z=$.sliceFrom(N+V),G=z.uint16();if(G===1)Y.push(z.int16());else if(G===2)Y.push(z.uint16());else if(G===3)Y.push(z.int16())}H.set(_,{caretValues:Y})}return H}function Rq($){let Q=$.uint16(),Z=$.uint16(),J=$.uint32Array(Z),q=[];for(let W of J){let K=$.sliceFrom(W),H=K.uint16(),U=new Set;if(H===1){let N=K.uint16();for(let _=0;_<N;_++)U.add(K.uint16())}else if(H===2){let N=K.uint16();for(let _=0;_<N;_++){let X=K.uint16(),j=K.uint16();K.skip(2);for(let w=X;w<=j;w++)U.add(w)}}q.push(U)}return{has(W,K){let H=q[W];return H?H.has(K):!1}}}function B1($,Q){if(!$)return 0;return $.glyphClassDef.get(Q)}function a5($,Q){let Z=$.uint16(),J=$.uint16(),q=$.uint16(),W=$.uint16(),K=$.offset32(),H=$.uint16(),U=$.uint16(),N=$.offset32(),_=U&1?4:2,X=[];for(let Y=0;Y<=H;Y++){let V=_===4?$.uint32():$.uint16()*2;X.push(V)}let j=[];if(W>0){let Y=$.sliceFrom(K);for(let V=0;V<W;V++){let z=[];for(let G=0;G<q;G++)z.push(Y.f2dot14());j.push(z)}}let w=[];for(let Y=0;Y<H;Y++){let V=X[Y],z=X[Y+1];if(V===void 0||z===void 0){w.push({tupleVariationHeaders:[]});continue}let G=N+V,E=N+z;if(G===E){w.push({tupleVariationHeaders:[]});continue}let B=$.sliceFrom(G),F=Tq(B,E-G,q,j);w.push(F)}return{majorVersion:Z,minorVersion:J,axisCount:q,sharedTupleCount:W,sharedTuples:j,glyphVariationData:w}}function Tq($,Q,Z,J){if(Q===0)return{tupleVariationHeaders:[]};let q=$.offset,W=$.uint16(),K=$.offset16(),H=W&4095,U=(W&32768)!==0,N=[];for(let w=0;w<H;w++){let Y=$.uint16(),V=$.uint16(),z=null,G=null,E=null;if(V&32768){z=[];for(let B=0;B<Z;B++)z.push($.f2dot14())}else{let B=V&4095;z=J[B]||null}if(V&16384){G=[],E=[];for(let B=0;B<Z;B++)G.push($.f2dot14());for(let B=0;B<Z;B++)E.push($.f2dot14())}N.push({variationDataSize:Y,tupleIndex:V,peakTuple:z,intermediateStartTuple:G,intermediateEndTuple:E})}let _=$.sliceFrom(q+K),X=null;if(U)X=s5(_);let j=[];for(let w of N){let Y=(w.tupleIndex&8192)!==0,V;if(Y)V=s5(_);else V=X;let z=V?V.length:0,G=z>0?c5(_,z):[],E=z>0?c5(_,z):[],B=[];for(let[F,v]of G.entries()){let L=E[F];B.push({x:v??0,y:L??0})}j.push({variationDataSize:w.variationDataSize,tupleIndex:w.tupleIndex,peakTuple:w.peakTuple,intermediateStartTuple:w.intermediateStartTuple,intermediateEndTuple:w.intermediateEndTuple,serializedData:new Uint8Array(0),pointNumbers:V,deltas:B})}return{tupleVariationHeaders:j}}function s5($){let Q=$.uint8(),Z=Q===0?0:Q&128?(Q&127)<<8|$.uint8():Q;if(Z===0)return[];let J=[],q=0;while(J.length<Z){let W=$.uint8(),K=(W&127)+1,H=(W&128)!==0;for(let U=0;U<K&&J.length<Z;U++){let N=H?$.uint16():$.uint8();q+=N,J.push(q)}}return J}function c5($,Q){let Z=[];while(Z.length<Q){let J=$.uint8(),q=(J&63)+1,W=(J&128)!==0,K=(J&64)!==0;for(let H=0;H<q&&Z.length<Q;H++)if(W)Z.push(0);else if(K)Z.push($.int16());else Z.push($.int8())}return Z}function J8($,Q,Z,J){let q=1;for(let[W,K]of $.entries()){let H=Q[W]??0;if(K===0||H===0){if(K!==0)q=0;continue}if(Z&&J){let U=Z[W],N=J[W];if(U===void 0||N===void 0)continue;if(H<U||H>N){q=0;break}if(H<K)q*=(H-U)/(K-U);else if(H>K)q*=(N-H)/(N-K)}else{if(K>0&&H<0||K<0&&H>0){q=0;break}if(Math.abs(H)<Math.abs(K))q*=H/K}}return q}function Pq($,Q,Z,J){let q=$.glyphVariationData[Q];if(!q)return{x:0,y:0};let W=0,K=0;for(let H of q.tupleVariationHeaders){if(!H.peakTuple)continue;let U=J8(H.peakTuple,J,H.intermediateStartTuple,H.intermediateEndTuple);if(U===0)continue;if(H.pointNumbers!==null){let N=H.pointNumbers.indexOf(Z);if(N<0)continue;let _=H.deltas[N];if(_)W+=_.x*U,K+=_.y*U}else{let N=H.deltas[Z];if(N)W+=N.x*U,K+=N.y*U}}return{x:Math.round(W),y:Math.round(K)}}function r5($,Q,Z){let J=Z===0,q=[],W=Q+1;if(J)for(let K=0;K<W;K++)q.push($.uint16()*2);else for(let K=0;K<W;K++)q.push($.uint32());return{offsets:q,isShort:J}}function q8($,Q){if(Q<0||Q>=$.offsets.length-1)return null;let Z=$.offsets[Q],J=$.offsets[Q+1];if(Z===void 0||J===void 0)return null;let q=J-Z;if(q===0)return null;return{offset:Z,length:q}}function Oq($,Q){return q8($,Q)!==null}var i1={OnCurve:1,XShortVector:2,YShortVector:4,Repeat:8,XIsSameOrPositive:16,YIsSameOrPositive:32,OverlapSimple:64},M1={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 t5($){return{reader:$}}function e1($,Q,Z){let J=q8(Q,Z);if(!J)return{type:"empty"};let q=$.reader.slice(J.offset,J.length);return Iq(q)}function Iq($){let Q=$.int16(),Z=$.int16(),J=$.int16(),q=$.int16(),W=$.int16();if(Q>=0)return vq($,Q,Z,J,q,W);else return kq($,Q,Z,J,q,W)}function vq($,Q,Z,J,q,W){if(Q===0)return{type:"simple",numberOfContours:Q,xMin:Z,yMin:J,xMax:q,yMax:W,contours:[],instructions:new Uint8Array(0)};let K=[];for(let E=0;E<Q;E++)K.push($.uint16());let H=K[Q-1];if(H===void 0)return{type:"simple",numberOfContours:Q,xMin:Z,yMin:J,xMax:q,yMax:W,contours:[],instructions:new Uint8Array(0)};let U=H+1,N=$.uint16(),_=$.bytes(N),X=[];while(X.length<U){let E=$.uint8();if(X.push(E),E&i1.Repeat){let B=$.uint8();for(let F=0;F<B;F++)X.push(E)}}let j=[],w=0;for(let[E,B]of X.entries()){if(B&i1.XShortVector){let F=$.uint8();w+=B&i1.XIsSameOrPositive?F:-F}else if(!(B&i1.XIsSameOrPositive))w+=$.int16();j.push(w)}let Y=[],V=0;for(let[E,B]of X.entries()){if(B&i1.YShortVector){let F=$.uint8();V+=B&i1.YIsSameOrPositive?F:-F}else if(!(B&i1.YIsSameOrPositive))V+=$.int16();Y.push(V)}let z=[],G=0;for(let E of K){let B=[];while(G<=E){let F=j[G],v=Y[G],L=X[G];if(F===void 0||v===void 0||L===void 0)break;B.push({x:F,y:v,onCurve:(L&i1.OnCurve)!==0}),G++}z.push(B)}return{type:"simple",numberOfContours:Q,xMin:Z,yMin:J,xMax:q,yMax:W,contours:z,instructions:_}}function kq($,Q,Z,J,q,W){let K=[],H;do{H=$.uint16();let N=$.uint16(),_,X;if(H&M1.Arg1And2AreWords)if(H&M1.ArgsAreXYValues)_=$.int16(),X=$.int16();else _=$.uint16(),X=$.uint16();else if(H&M1.ArgsAreXYValues)_=$.int8(),X=$.int8();else _=$.uint8(),X=$.uint8();let j=1,w=0,Y=0,V=1;if(H&M1.WeHaveAScale)j=V=$.f2dot14();else if(H&M1.WeHaveAnXAndYScale)j=$.f2dot14(),V=$.f2dot14();else if(H&M1.WeHaveATwoByTwo)j=$.f2dot14(),w=$.f2dot14(),Y=$.f2dot14(),V=$.f2dot14();K.push({glyphId:N,flags:H,arg1:_,arg2:X,transform:[j,w,Y,V]})}while(H&M1.MoreComponents);let U=new Uint8Array(0);if(H&M1.WeHaveInstructions){let N=$.uint16();U=$.bytes(N)}return{type:"composite",numberOfContours:Q,xMin:Z,yMin:J,xMax:q,yMax:W,components:K,instructions:U}}function e5($,Q,Z,J=0){if(J>32)return[];let q=[];for(let W of Z.components){let K=e1($,Q,W.glyphId),H;if(K.type==="simple")H=K.contours;else if(K.type==="composite")H=e5($,Q,K,J+1);else continue;let[U,N,_,X]=W.transform,j=W.flags&M1.ArgsAreXYValues?W.arg1:0,w=W.flags&M1.ArgsAreXYValues?W.arg2:0;for(let Y of H){let V=Y.map((z)=>({x:Math.round(U*z.x+_*z.y+j),y:Math.round(N*z.x+X*z.y+w),onCurve:z.onCurve}));q.push(V)}}return q}function $7($,Q,Z){let J=e1($,Q,Z);if(J.type==="empty")return[];else if(J.type==="simple")return J.contours;else return e5($,Q,J)}function Q7($,Q,Z){let J=e1($,Q,Z);if(J.type==="empty")return null;return{xMin:J.xMin,yMin:J.yMin,xMax:J.xMax,yMax:J.yMax}}function Z7($,Q,Z,J){let q=$.glyphVariationData[Q];if(!q)return Array(Z).fill({x:0,y:0});let W=Array(Z).fill(null).map(()=>({x:0,y:0}));for(let K of q.tupleVariationHeaders){if(!K.peakTuple)continue;let H=J8(K.peakTuple,J,K.intermediateStartTuple,K.intermediateEndTuple);if(H===0)continue;if(K.pointNumbers!==null)for(let[U,N]of K.pointNumbers.entries()){let _=W[N],X=K.deltas[U];if(N<Z&&_&&X)_.x+=X.x*H,_.y+=X.y*H}else for(let U=0;U<Math.min(K.deltas.length,Z);U++){let N=W[U],_=K.deltas[U];if(N&&_)N.x+=_.x*H,N.y+=_.y*H}}for(let K of W)K.x=Math.round(K.x),K.y=Math.round(K.y);return W}function J7($,Q){let Z=[],J=0;for(let q of $){let W=[];for(let K of q){let H=Q[J]??{x:0,y:0};W.push({x:K.x+H.x,y:K.y+H.y,onCurve:K.onCurve}),J++}Z.push(W)}return Z}function q7($,Q,Z,J,q){let W=e1($,Q,J);if(W.type==="empty")return[];let K;if(W.type==="simple")K=W.contours;else K=K7($,Q,Z,W,q);if(Z&&q&&q.length>0){let H=0;for(let N of K)H+=N.length;H+=4;let U=Z7(Z,J,H,q);K=J7(K,U)}return K}function K7($,Q,Z,J,q,W=0){if(W>32)return[];let K=[];for(let H of J.components){let U=e1($,Q,H.glyphId),N;if(U.type==="simple"){if(N=U.contours,Z&&q&&q.length>0){let z=0;for(let E of N)z+=E.length;z+=4;let G=Z7(Z,H.glyphId,z,q);N=J7(N,G)}}else if(U.type==="composite")N=K7($,Q,Z,U,q,W+1);else continue;let[_,X,j,w]=H.transform,Y=H.flags&M1.ArgsAreXYValues?H.arg1:0,V=H.flags&M1.ArgsAreXYValues?H.arg2:0;for(let z of N){let G=z.map((E)=>({x:Math.round(_*E.x+j*E.y+Y),y:Math.round(X*E.x+w*E.y+V),onCurve:E.onCurve}));K.push(G)}}return K}class W7{glyphArray;glyphSet;constructor($){this.glyphArray=$,this.glyphSet=new Set($)}get size(){return this.glyphArray.length}get($){let Q=0,Z=this.glyphArray.length-1;while(Q<=Z){let J=Q+Z>>>1,q=this.glyphArray[J];if(q===void 0)continue;if(q<$)Q=J+1;else if(q>$)Z=J-1;else return J}return null}covers($){return this.glyphSet.has($)}glyphs(){return Array.from(this.glyphArray)}}class H7{ranges;_size;constructor($){if(this.ranges=$,$.length===0)this._size=0;else{let Q=$[$.length-1];if(Q)this._size=Q.startCoverageIndex+(Q.endGlyphId-Q.startGlyphId+1);else this._size=0}}get size(){return this._size}get($){let Q=0,Z=this.ranges.length-1;while(Q<=Z){let J=Q+Z>>>1,q=this.ranges[J];if(!q)continue;if($>q.endGlyphId)Q=J+1;else if($<q.startGlyphId)Z=J-1;else return q.startCoverageIndex+($-q.startGlyphId)}return null}covers($){return this.get($)!==null}glyphs(){let $=[];for(let Q of this.ranges)for(let Z=Q.startGlyphId;Z<=Q.endGlyphId;Z++)$.push(Z);return $}}function Cq($){let Q=$.uint16();if(Q===1){let Z=$.uint16(),J=$.uint16Array(Z);return new W7(J)}if(Q===2){let Z=$.uint16(),J=Array(Z);for(let q=0;q<Z;q++)J[q]={startGlyphId:$.uint16(),endGlyphId:$.uint16(),startCoverageIndex:$.uint16()};return new H7(J)}throw Error(`Unknown Coverage format: ${Q}`)}function n($,Q){return Cq($.sliceFrom(Q))}function U7($){return"deltaSetOuterIndex"in $}function $6($,Q){if(Q===0)return null;return Sq($.sliceFrom(Q))}function Sq($){let Q=$.uint16(),Z=$.uint16(),J=$.uint16();if(J===32768)return{deltaSetOuterIndex:Q,deltaSetInnerIndex:Z};let q=[];if(J>=1&&J<=3){let W=Z-Q+1,K=1<<J,H=16/K,U=(1<<K)-1,N=1<<K-1,_=Math.ceil(W/H),X=0;for(let j=0;j<_;j++){let w=$.uint16();for(let Y=0;Y<H&&X<W;Y++,X++){let V=16-K*(Y+1),z=w>>V&U;if(z&N)z=z-(1<<K);q.push(z)}}}return{startSize:Q,endSize:Z,deltaFormat:J,deltaValues:q}}function N7($,Q){if(Q<$.startSize||Q>$.endSize)return 0;let Z=Q-$.startSize;return $.deltaValues[Z]??0}function hq($,Q,Z){if(!$)return Q;if(U7($))return Q;return Q+N7($,Z)}var m1={RightToLeft:1,IgnoreBaseGlyphs:2,IgnoreLigatures:4,IgnoreMarks:8,UseMarkFilteringSet:16,MarkAttachmentTypeMask:65280};function X7($){return($&m1.MarkAttachmentTypeMask)>>8}function K8($){let Q=$.uint16(),Z=[];for(let q=0;q<Q;q++)Z.push({tag:$.tag(),offset:$.offset16()});let J=[];for(let q of Z){let W=$.sliceFrom(q.offset),K=yq(W);J.push({scriptTag:q.tag,script:K})}return{scripts:J}}function yq($){let Q=$.offset16(),Z=$.uint16(),J=[];for(let K=0;K<Z;K++)J.push({tag:$.tag(),offset:$.offset16()});let q=null;if(Q!==0)q=_7($.sliceFrom(Q));let W=[];for(let K of J){let H=_7($.sliceFrom(K.offset));W.push({langSysTag:K.tag,langSys:H})}return{defaultLangSys:q,langSysRecords:W}}function _7($){let Q=$.offset16(),Z=$.uint16(),J=$.uint16(),q=Array.from($.uint16Array(J));return{requiredFeatureIndex:Z,featureIndices:q}}function W8($){let Q=$.uint16(),Z=[];for(let q=0;q<Q;q++)Z.push({tag:$.tag(),offset:$.offset16()});let J=[];for(let q of Z){let W=$.sliceFrom(q.offset),K=mq(W);J.push({featureTag:q.tag,feature:K})}return{features:J}}function mq($){let Q=$.offset16(),Z=$.uint16(),J=Array.from($.uint16Array(Z));return{featureParamsOffset:Q,lookupListIndices:J}}function H8($,Q){for(let Z of $.scripts)if(Z.scriptTag===Q)return Z.script;return null}function j7($,Q){if(Q===null)return $.defaultLangSys;for(let Z of $.langSysRecords)if(Z.langSysTag===Q)return Z.langSys;return $.defaultLangSys}function N9($,Q){return $.features[Q]??null}function _9($,Q){let Z=[];for(let J of Q){let q=$.sliceFrom(J);switch(q.uint16()){case 1:Z.push(bq(q));break;case 2:Z.push(gq(q));break;case 3:Z.push(xq(q));break}}return Z}function bq($){let Q=$.offset16(),Z=$.uint16(),J=$.uint16Array(Z),q=n($,Q),W=[];for(let K of J){if(K===0){W.push(null);continue}let H=$.sliceFrom(K),U=H.uint16(),N=H.uint16Array(U),_=[];for(let X of N){let j=H.sliceFrom(X),w=j.uint16(),Y=j.uint16(),V=Array.from(j.uint16Array(w-1)),z=U6(j,Y);_.push({glyphCount:w,inputSequence:V,lookupRecords:z})}W.push(_)}return{format:1,coverage:q,ruleSets:W}}function gq($){let Q=$.offset16(),Z=$.offset16(),J=$.uint16(),q=$.uint16Array(J),W=n($,Q),K=_1($,Z),H=[];for(let U of q){if(U===0){H.push(null);continue}let N=$.sliceFrom(U),_=N.uint16(),X=N.uint16Array(_),j=[];for(let w of X){let Y=N.sliceFrom(w),V=Y.uint16(),z=Y.uint16(),G=Array.from(Y.uint16Array(V-1)),E=U6(Y,z);j.push({glyphCount:V,inputClasses:G,lookupRecords:E})}H.push(j)}return{format:2,coverage:W,classDef:K,classRuleSets:H}}function xq($){let Q=$.uint16(),Z=$.uint16(),J=$.uint16Array(Q),q=[];for(let K of J)q.push(n($,K));let W=U6($,Z);return{format:3,coverages:q,lookupRecords:W}}function X9($,Q){let Z=[];for(let J of Q){let q=$.sliceFrom(J);switch(q.uint16()){case 1:Z.push(uq(q));break;case 2:Z.push(fq(q));break;case 3:Z.push(lq(q));break}}return Z}function uq($){let Q=$.offset16(),Z=$.uint16(),J=$.uint16Array(Z),q=n($,Q),W=[];for(let K of J){if(K===0){W.push(null);continue}let H=$.sliceFrom(K),U=H.uint16(),N=H.uint16Array(U),_=[];for(let X of N){let j=H.sliceFrom(X),w=j.uint16(),Y=Array.from(j.uint16Array(w)),V=j.uint16(),z=Array.from(j.uint16Array(V-1)),G=j.uint16(),E=Array.from(j.uint16Array(G)),B=j.uint16(),F=U6(j,B);_.push({backtrackSequence:Y,inputSequence:z,lookaheadSequence:E,lookupRecords:F})}W.push(_)}return{format:1,coverage:q,chainRuleSets:W}}function fq($){let Q=$.offset16(),Z=$.offset16(),J=$.offset16(),q=$.offset16(),W=$.uint16(),K=$.uint16Array(W),H=n($,Q),U=_1($,Z),N=_1($,J),_=_1($,q),X=[];for(let j of K){if(j===0){X.push(null);continue}let w=$.sliceFrom(j),Y=w.uint16(),V=w.uint16Array(Y),z=[];for(let G of V){let E=w.sliceFrom(G),B=E.uint16(),F=Array.from(E.uint16Array(B)),v=E.uint16(),L=Array.from(E.uint16Array(v-1)),h=E.uint16(),S=Array.from(E.uint16Array(h)),I=E.uint16(),b=U6(E,I);z.push({backtrackClasses:F,inputClasses:L,lookaheadClasses:S,lookupRecords:b})}X.push(z)}return{format:2,coverage:H,backtrackClassDef:U,inputClassDef:N,lookaheadClassDef:_,chainClassRuleSets:X}}function lq($){let Q=$.uint16(),Z=$.uint16Array(Q),J=$.uint16(),q=$.uint16Array(J),W=$.uint16(),K=$.uint16Array(W),H=$.uint16(),U=U6($,H),N=[];for(let j of Z)N.push(n($,j));let _=[];for(let j of q)_.push(n($,j));let X=[];for(let j of K)X.push(n($,j));return{format:3,backtrackCoverages:N,inputCoverages:_,lookaheadCoverages:X,lookupRecords:U}}function U6($,Q){let Z=[];for(let J=0;J<Q;J++)Z.push({sequenceIndex:$.uint16(),lookupListIndex:$.uint16()});return Z}function Y7($){let Q=$.uint16(),Z=$.int16(),J=$.int16(),q={xCoordinate:Z,yCoordinate:J};if(Q===2)q.anchorPoint=$.uint16();else if(Q===3)q.xDeviceOffset=$.uint16(),q.yDeviceOffset=$.uint16();return q}function P6($,Q){if(Q===0)return null;return Y7($.sliceFrom(Q))}function j9($){let Q=$.uint16(),Z=[],J=[];for(let q=0;q<Q;q++)J.push({markClass:$.uint16(),anchorOffset:$.uint16()});for(let q of J){let W=Y7($.sliceFrom(q.anchorOffset));Z.push({markClass:q.markClass,markAnchor:W})}return{markRecords:Z}}function Y9($,Q){let Z=[];for(let J of Q){let q=$.sliceFrom(J);if(q.uint16()===1){let K=q.offset16(),H=q.uint16(),U=[];for(let X=0;X<H;X++)U.push({entryOffset:q.uint16(),exitOffset:q.uint16()});let N=n(q,K),_=[];for(let X of U)_.push({entryAnchor:P6(q,X.entryOffset),exitAnchor:P6(q,X.exitOffset)});Z.push({coverage:N,entryExitRecords:_})}}return Z}function w9($,Q){let Z=[];for(let J of Q){let q=$.sliceFrom(J);if(q.uint16()===1){let K=q.offset16(),H=q.offset16(),U=q.uint16(),N=q.offset16(),_=q.offset16(),X=n(q,K),j=n(q,H),w=j9(q.sliceFrom(N)),Y=q.sliceFrom(_),V=Y.uint16(),z=[],G=[];for(let E=0;E<V;E++){let B=[];for(let F=0;F<U;F++)B.push(Y.uint16());G.push(B)}for(let E of G){let B=[];for(let F of E)B.push(P6(Y,F));z.push({baseAnchors:B})}Z.push({markCoverage:X,baseCoverage:j,markClassCount:U,markArray:w,baseArray:z})}}return Z}function V9($,Q){let Z=[];for(let J of Q){let q=$.sliceFrom(J);if(q.uint16()===1){let K=q.offset16(),H=q.offset16(),U=q.uint16(),N=q.offset16(),_=q.offset16(),X=n(q,K),j=n(q,H),w=j9(q.sliceFrom(N)),Y=q.sliceFrom(_),V=Y.uint16(),z=Y.uint16Array(V),G=[];for(let E of z){let B=Y.sliceFrom(E),F=B.uint16(),v=[],L=[];for(let h=0;h<F;h++){let S=[];for(let I=0;I<U;I++)S.push(B.uint16());L.push(S)}for(let h of L){let S=[];for(let I of h)S.push(P6(B,I));v.push({ligatureAnchors:S})}G.push({componentRecords:v})}Z.push({markCoverage:X,ligatureCoverage:j,markClassCount:U,markArray:w,ligatureArray:G})}}return Z}function z9($,Q){let Z=[];for(let J of Q){let q=$.sliceFrom(J);if(q.uint16()===1){let K=q.offset16(),H=q.offset16(),U=q.uint16(),N=q.offset16(),_=q.offset16(),X=n(q,K),j=n(q,H),w=j9(q.sliceFrom(N)),Y=q.sliceFrom(_),V=Y.uint16(),z=[],G=[];for(let E=0;E<V;E++){let B=[];for(let F=0;F<U;F++)B.push(Y.uint16());G.push(B)}for(let E of G){let B=[];for(let F of E)B.push(P6(Y,F));z.push({mark2Anchors:B})}Z.push({mark1Coverage:X,mark2Coverage:j,markClassCount:U,mark1Array:w,mark2Array:z})}}return Z}var p1={XPlacement:1,YPlacement:2,XAdvance:4,YAdvance:8,XPlaDevice:16,YPlaDevice:32,XAdvDevice:64,YAdvDevice:128};function w7($){let Q=$.uint16(),Z=$.uint16(),J=$.offset16(),q=$.offset16(),W=$.offset16();if(Q===1&&Z>=1)$.offset32();let K=K8($.sliceFrom(J)),H=W8($.sliceFrom(q)),U=$.sliceFrom(W),N=U.uint16(),_=U.uint16Array(N),X=[];for(let j of _){let w=U.sliceFrom(j),Y=dq(w);if(Y)X.push(Y)}return{version:{major:Q,minor:Z},scriptList:K,featureList:H,lookups:X}}function dq($){let Q=$.uint16(),Z=$.uint16(),J=$.uint16(),q=Array.from($.uint16Array(J)),W;if(Z&m1.UseMarkFilteringSet)W=$.uint16();let K={flag:Z,markFilteringSet:W};switch(Q){case 1:return{type:1,...K,subtables:V7($,q)};case 2:return{type:2,...K,subtables:z7($,q)};case 3:return{type:3,...K,subtables:Y9($,q)};case 4:return{type:4,...K,subtables:w9($,q)};case 5:return{type:5,...K,subtables:V9($,q)};case 6:return{type:6,...K,subtables:z9($,q)};case 7:return{type:7,...K,subtables:_9($,q)};case 8:return{type:8,...K,subtables:X9($,q)};case 9:return pq($,q,K);default:return null}}function N6($,Q,Z){let J={};if(Q&p1.XPlacement)J.xPlacement=$.int16();if(Q&p1.YPlacement)J.yPlacement=$.int16();if(Q&p1.XAdvance)J.xAdvance=$.int16();if(Q&p1.YAdvance)J.yAdvance=$.int16();let q=Z??$;if(Q&p1.XPlaDevice){let W=$.uint16();if(W!==0)J.xPlaDevice=$6(q,W)??void 0}if(Q&p1.YPlaDevice){let W=$.uint16();if(W!==0)J.yPlaDevice=$6(q,W)??void 0}if(Q&p1.XAdvDevice){let W=$.uint16();if(W!==0)J.xAdvDevice=$6(q,W)??void 0}if(Q&p1.YAdvDevice){let W=$.uint16();if(W!==0)J.yAdvDevice=$6(q,W)??void 0}return J}function V7($,Q){let Z=[];for(let J of Q){let q=$.sliceFrom(J),W=$.sliceFrom(J),K=W.uint16();if(K===1){let H=W.offset16(),U=W.uint16(),N=N6(W,U,q),_=n(q,H);Z.push({format:1,coverage:_,valueFormat:U,value:N})}else if(K===2){let H=W.offset16(),U=W.uint16(),N=W.uint16(),_=[];for(let j=0;j<N;j++)_.push(N6(W,U,q));let X=n(q,H);Z.push({format:2,coverage:X,valueFormat:U,values:_})}}return Z}function z7($,Q){let Z=[];for(let J of Q){let q=$.sliceFrom(J),W=$.sliceFrom(J),K=W.uint16();if(K===1)Z.push(nq(W,q));else if(K===2)Z.push(iq(W,q))}return Z}function nq($,Q){let Z=$.offset16(),J=$.uint16(),q=$.uint16(),W=$.uint16(),K=$.uint16Array(W),H=n(Q,Z),U=[];for(let N of K){let _=Q.sliceFrom(N),X=Q.sliceFrom(N),j=X.uint16(),w=[];for(let Y=0;Y<j;Y++){let V=X.uint16(),z=N6(X,J,_),G=N6(X,q,_);w.push({secondGlyph:V,value1:z,value2:G})}U.push({pairValueRecords:w})}return{format:1,coverage:H,valueFormat1:J,valueFormat2:q,pairSets:U}}function iq($,Q){let Z=$.offset16(),J=$.uint16(),q=$.uint16(),W=$.offset16(),K=$.offset16(),H=$.uint16(),U=$.uint16(),N=n(Q,Z),_=_1(Q,W),X=_1(Q,K),j=[];for(let w=0;w<H;w++){let Y=[];for(let V=0;V<U;V++){let z=N6($,J,Q),G=N6($,q,Q);Y.push({value1:z,value2:G})}j.push({class2Records:Y})}return{format:2,coverage:N,valueFormat1:J,valueFormat2:q,classDef1:_,classDef2:X,class1Count:H,class2Count:U,class1Records:j}}function pq($,Q,Z){if(Q.length===0)return null;let J=[];for(let W of Q){let K=$.sliceFrom(W);if(K.uint16()!==1)continue;let U=K.uint16(),N=K.uint32();J.push({type:U,reader:K.sliceFrom(N)})}if(J.length===0)return null;switch(J[0]?.type){case 1:{let W=[];for(let K of J)W.push(...V7(K.reader,[0]));return{type:1,...Z,subtables:W}}case 2:{let W=[];for(let K of J)W.push(...z7(K.reader,[0]));return{type:2,...Z,subtables:W}}case 3:{let W=[];for(let K of J)W.push(...Y9(K.reader,[0]));return{type:3,...Z,subtables:W}}case 4:{let W=[];for(let K of J)W.push(...w9(K.reader,[0]));return{type:4,...Z,subtables:W}}case 5:{let W=[];for(let K of J)W.push(...V9(K.reader,[0]));return{type:5,...Z,subtables:W}}case 6:{let W=[];for(let K of J)W.push(...z9(K.reader,[0]));return{type:6,...Z,subtables:W}}case 7:{let W=[];for(let K of J)W.push(..._9(K.reader,[0]));return{type:7,...Z,subtables:W}}case 8:{let W=[];for(let K of J)W.push(...X9(K.reader,[0]));return{type:8,...Z,subtables:W}}default:return null}}function G7($,Q,Z){for(let J of $.subtables){let q=J.coverage.get(Q);if(q===null)continue;if(J.format===1){let W=J.pairSets[q];if(!W)continue;for(let K of W.pairValueRecords)if(K.secondGlyph===Z)return{xAdvance1:K.value1.xAdvance??0,xAdvance2:K.value2.xAdvance??0}}else if(J.format===2){let W=J.classDef1.get(Q),K=J.classDef2.get(Z),H=J.class1Records[W];if(!H)continue;let U=H.class2Records[K];if(!U)continue;return{xAdvance1:U.value1.xAdvance??0,xAdvance2:U.value2.xAdvance??0}}}return null}function G9($,Q){let Z=[];for(let J of Q){let q=$.sliceFrom(J);switch(q.uint16()){case 1:Z.push(oq(q));break;case 2:Z.push(sq(q));break;case 3:Z.push(cq(q));break}}return Z}function oq($){let Q=$.offset16(),Z=$.uint16(),J=$.uint16Array(Z),q=n($,Q),W=[];for(let K of J){if(K===0){W.push(null);continue}let H=$.sliceFrom(K),U=H.uint16(),N=H.uint16Array(U),_=[];for(let X of N){let j=H.sliceFrom(X),w=j.uint16(),Y=j.uint16(),V=Array.from(j.uint16Array(w-1)),z=_6(j,Y);_.push({glyphCount:w,inputSequence:V,lookupRecords:z})}W.push(_)}return{format:1,coverage:q,ruleSets:W}}function sq($){let Q=$.offset16(),Z=$.offset16(),J=$.uint16(),q=$.uint16Array(J),W=n($,Q),K=_1($,Z),H=[];for(let U of q){if(U===0){H.push(null);continue}let N=$.sliceFrom(U),_=N.uint16(),X=N.uint16Array(_),j=[];for(let w of X){let Y=N.sliceFrom(w),V=Y.uint16(),z=Y.uint16(),G=Array.from(Y.uint16Array(V-1)),E=_6(Y,z);j.push({glyphCount:V,inputClasses:G,lookupRecords:E})}H.push(j)}return{format:2,coverage:W,classDef:K,classRuleSets:H}}function cq($){let Q=$.uint16(),Z=$.uint16(),J=$.uint16Array(Q),q=[];for(let K of J)q.push(n($,K));let W=_6($,Z);return{format:3,coverages:q,lookupRecords:W}}function E9($,Q){let Z=[];for(let J of Q){let q=$.sliceFrom(J);switch(q.uint16()){case 1:Z.push(aq(q));break;case 2:Z.push(rq(q));break;case 3:Z.push(tq(q));break}}return Z}function aq($){let Q=$.offset16(),Z=$.uint16(),J=$.uint16Array(Z),q=n($,Q),W=[];for(let K of J){if(K===0){W.push(null);continue}let H=$.sliceFrom(K),U=H.uint16(),N=H.uint16Array(U),_=[];for(let X of N){let j=H.sliceFrom(X),w=j.uint16(),Y=Array.from(j.uint16Array(w)),V=j.uint16(),z=Array.from(j.uint16Array(V-1)),G=j.uint16(),E=Array.from(j.uint16Array(G)),B=j.uint16(),F=_6(j,B);_.push({backtrackSequence:Y,inputSequence:z,lookaheadSequence:E,lookupRecords:F})}W.push(_)}return{format:1,coverage:q,chainRuleSets:W}}function rq($){let Q=$.offset16(),Z=$.offset16(),J=$.offset16(),q=$.offset16(),W=$.uint16(),K=$.uint16Array(W),H=n($,Q),U=_1($,Z),N=_1($,J),_=_1($,q),X=[];for(let j of K){if(j===0){X.push(null);continue}let w=$.sliceFrom(j),Y=w.uint16(),V=w.uint16Array(Y),z=[];for(let G of V){let E=w.sliceFrom(G),B=E.uint16(),F=Array.from(E.uint16Array(B)),v=E.uint16(),L=Array.from(E.uint16Array(v-1)),h=E.uint16(),S=Array.from(E.uint16Array(h)),I=E.uint16(),b=_6(E,I);z.push({backtrackClasses:F,inputClasses:L,lookaheadClasses:S,lookupRecords:b})}X.push(z)}return{format:2,coverage:H,backtrackClassDef:U,inputClassDef:N,lookaheadClassDef:_,chainClassRuleSets:X}}function tq($){let Q=$.uint16(),Z=$.uint16Array(Q),J=$.uint16(),q=$.uint16Array(J),W=$.uint16(),K=$.uint16Array(W),H=$.uint16(),U=_6($,H),N=[];for(let j of Z)N.push(n($,j));let _=[];for(let j of q)_.push(n($,j));let X=[];for(let j of K)X.push(n($,j));return{format:3,backtrackCoverages:N,inputCoverages:_,lookaheadCoverages:X,lookupRecords:U}}function _6($,Q){let Z=[];for(let J=0;J<Q;J++)Z.push({sequenceIndex:$.uint16(),lookupListIndex:$.uint16()});return Z}function E7($){let Q=$.uint16(),Z=$.uint16(),J=$.offset16(),q=$.offset16(),W=$.offset16();if(Q===1&&Z>=1)$.offset32();let K=K8($.sliceFrom(J)),H=W8($.sliceFrom(q)),U=$.sliceFrom(W),N=U.uint16(),_=U.uint16Array(N),X=[];for(let j of _){let w=U.sliceFrom(j),Y=eq(w,U,j);if(Y)X.push(Y)}return{version:{major:Q,minor:Z},scriptList:K,featureList:H,lookups:X}}function eq($,Q,Z){let J=$.uint16(),q=$.uint16(),W=$.uint16(),K=Array.from($.uint16Array(W)),H;if(q&m1.UseMarkFilteringSet)H=$.uint16();let U={flag:q,markFilteringSet:H};switch(J){case 1:return{type:1,...U,subtables:A7($,K)};case 2:return{type:2,...U,subtables:B7($,K)};case 3:return{type:3,...U,subtables:F7($,K)};case 4:return{type:4,...U,subtables:D7($,K)};case 5:return{type:5,...U,subtables:G9($,K)};case 6:return{type:6,...U,subtables:E9($,K)};case 7:return $K($,K,U);case 8:return{type:8,...U,subtables:L7($,K)};default:return null}}function A7($,Q){let Z=[];for(let J of Q){let q=$.sliceFrom(J),W=q.uint16();if(W===1){let K=q.offset16(),H=q.int16(),U=n(q,K);Z.push({format:1,coverage:U,deltaGlyphId:H})}else if(W===2){let K=q.offset16(),H=q.uint16(),U=Array.from(q.uint16Array(H)),N=n(q,K);Z.push({format:2,coverage:N,substituteGlyphIds:U})}}return Z}function B7($,Q){let Z=[];for(let J of Q){let q=$.sliceFrom(J);if(q.uint16()===1){let K=q.offset16(),H=q.uint16(),U=q.uint16Array(H),N=n(q,K),_=[];for(let X of U){let j=q.sliceFrom(X),w=j.uint16();_.push(Array.from(j.uint16Array(w)))}Z.push({coverage:N,sequences:_})}}return Z}function F7($,Q){let Z=[];for(let J of Q){let q=$.sliceFrom(J);if(q.uint16()===1){let K=q.offset16(),H=q.uint16(),U=q.uint16Array(H),N=n(q,K),_=[];for(let X of U){let j=q.sliceFrom(X),w=j.uint16();_.push(Array.from(j.uint16Array(w)))}Z.push({coverage:N,alternateSets:_})}}return Z}function D7($,Q){let Z=[];for(let J of Q){let q=$.sliceFrom(J);if(q.uint16()===1){let K=q.offset16(),H=q.uint16(),U=q.uint16Array(H),N=n(q,K),_=[];for(let X of U){let j=q.sliceFrom(X),w=j.uint16(),Y=j.uint16Array(w),V=[];for(let z of Y){let G=j.sliceFrom(z),E=G.uint16(),B=G.uint16(),F=Array.from(G.uint16Array(B-1));V.push({ligatureGlyph:E,componentGlyphIds:F})}_.push({ligatures:V})}Z.push({coverage:N,ligatureSets:_})}}return Z}function L7($,Q){let Z=[];for(let J of Q){let q=$.sliceFrom(J);if(q.uint16()===1){let K=q.offset16(),H=q.uint16(),U=q.uint16Array(H),N=q.uint16(),_=q.uint16Array(N),X=q.uint16(),j=Array.from(q.uint16Array(X)),w=n(q,K),Y=[];for(let z of U)Y.push(n(q,z));let V=[];for(let z of _)V.push(n(q,z));Z.push({coverage:w,backtrackCoverages:Y,lookaheadCoverages:V,substituteGlyphIds:j})}}return Z}function $K($,Q,Z){if(Q.length===0)return null;let J=[];for(let K of Q){let H=$.sliceFrom(K);if(H.uint16()!==1)continue;let N=H.uint16(),_=H.uint32();J.push({type:N,reader:H.sliceFrom(_)})}if(J.length===0)return null;let q=J[0]?.type,W=J.map((K,H)=>0);switch(q){case 1:{let K=[];for(let H of J)K.push(...A7(H.reader,[0]));return{type:1,...Z,subtables:K}}case 2:{let K=[];for(let H of J)K.push(...B7(H.reader,[0]));return{type:2,...Z,subtables:K}}case 3:{let K=[];for(let H of J)K.push(...F7(H.reader,[0]));return{type:3,...Z,subtables:K}}case 4:{let K=[];for(let H of J)K.push(...D7(H.reader,[0]));return{type:4,...Z,subtables:K}}case 5:{let K=[];for(let H of J)K.push(...G9(H.reader,[0]));return{type:5,...Z,subtables:K}}case 6:{let K=[];for(let H of J)K.push(...E9(H.reader,[0]));return{type:6,...Z,subtables:K}}case 8:{let K=[];for(let H of J)K.push(...L7(H.reader,[0]));return{type:8,...Z,subtables:K}}default:return null}}function A9($,Q){for(let Z of $.subtables){let J=Z.coverage.get(Q);if(J===null)continue;if(Z.format===1&&Z.deltaGlyphId!==void 0)return Q+Z.deltaGlyphId&65535;if(Z.format===2&&Z.substituteGlyphIds)return Z.substituteGlyphIds[J]??null}return null}function M7($,Q,Z){let J=Q[Z];if(J===void 0)return null;for(let q of $.subtables){let W=q.coverage.get(J);if(W===null)continue;let K=q.ligatureSets[W];if(!K)continue;for(let H of K.ligatures){let U=H.componentGlyphIds.length;if(Z+1+U>Q.length)continue;let N=!0;for(let _=0;_<U;_++)if(Q[Z+1+_]!==H.componentGlyphIds[_]){N=!1;break}if(N)return{ligatureGlyph:H.ligatureGlyph,consumed:1+U}}}return null}function R7($){let Q=$.uint16(),Z=$.uint16(),J=$.fixed(),q=$.uint32(),W=$.uint32();if(W!==1594834165)throw Error(`Invalid head table magic number: 0x${W.toString(16)}`);let K=$.uint16(),H=$.uint16(),U=$.longDateTime(),N=$.longDateTime(),_=$.fword(),X=$.fword(),j=$.fword(),w=$.fword(),Y=$.uint16(),V=$.uint16(),z=$.int16(),G=$.int16(),E=$.int16();return{majorVersion:Q,minorVersion:Z,fontRevision:J,checksumAdjustment:q,magicNumber:W,flags:K,unitsPerEm:H,created:U,modified:N,xMin:_,yMin:X,xMax:j,yMax:w,macStyle:Y,lowestRecPPEM:V,fontDirectionHint:z,indexToLocFormat:G,glyphDataFormat:E}}function T7($){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 P7($){return{instructions:$.bytes($.remaining)}}function O7($){return{instructions:$.bytes($.remaining)}}function I7($){let Q=Math.floor($.remaining/2),Z=new Int16Array(Q);for(let J=0;J<Q;J++)Z[J]=$.int16();return{values:Z}}function v7($,Q,Z){let J=Array(Q);for(let K=0;K<Q;K++)J[K]={advanceWidth:$.ufword(),lsb:$.fword()};let q=Z-Q,W=Array(q);for(let K=0;K<q;K++)W[K]=$.fword();return{hMetrics:J,leftSideBearings:W}}function k7($,Q){if(Q<$.hMetrics.length)return $.hMetrics[Q]?.advanceWidth;return $.hMetrics[$.hMetrics.length-1]?.advanceWidth}function C7($,Q){if(Q<$.hMetrics.length)return $.hMetrics[Q]?.lsb;let Z=Q-$.hMetrics.length;return $.leftSideBearings[Z]??0}function o1($,Q){if(Q===0)return null;let Z=$.sliceFrom(Q),J=Z.uint16(),q=[];for(let W=0;W<J;W++)q.push(Z.uint16());return{lookupIndices:q}}function S7($,Q){if(Q===0)return null;let Z=$.sliceFrom(Q),J=Z.uint16(),q=[];for(let W=0;W<J;W++)q.push(Z.uint16());return{lookupIndices:q}}function QK($,Q){let Z=$.sliceFrom(Q),J=Z.uint16(),q=Z.uint16(),W=Z.uint16(),K=Z.uint16(),H=Z.uint16(),U=Z.uint16(),N=Z.uint16(),_=Z.uint16(),X=Z.uint16(),j=Z.uint16();return{shrinkageEnableGsub:o1($,Q+J),shrinkageDisableGsub:o1($,Q+q),shrinkageEnableGpos:o1($,Q+W),shrinkageDisableGpos:o1($,Q+K),shrinkageJstfMax:S7($,Q+H),extensionEnableGsub:o1($,Q+U),extensionDisableGsub:o1($,Q+N),extensionEnableGpos:o1($,Q+_),extensionDisableGpos:o1($,Q+X),extensionJstfMax:S7($,Q+j)}}function h7($,Q){let Z=$.sliceFrom(Q),J=Z.uint16(),q=[];for(let K=0;K<J;K++)q.push(Z.uint16());let W=[];for(let K of q)W.push(QK($,Q+K));return{priorities:W}}function ZK($,Q){let Z=$.sliceFrom(Q),J=Z.uint16(),q=Z.uint16(),W=Z.uint16(),K=[];for(let _=0;_<W;_++){let X=Z.uint32(),j=Z.uint16();K.push({tag:X,offset:j})}let H=[];if(J!==0){let _=$.sliceFrom(Q+J),X=_.uint16();for(let j=0;j<X;j++)H.push(_.uint16())}let U=q!==0?h7($,Q+q):null,N=new Map;for(let{tag:_,offset:X}of K)N.set(_,h7($,Q+X));return{extenderGlyphs:H,defaultLangSys:U,langSysRecords:N}}function y7($){let Q=$.uint16(),Z=$.uint16(),J=$.uint16(),q=[];for(let K=0;K<J;K++){let H=$.uint32(),U=$.uint16();q.push({tag:H,offset:U})}let W=[];for(let{tag:K,offset:H}of q){let U=ZK($,H);W.push({scriptTag:K,...U})}return{majorVersion:Q,minorVersion:Z,scripts:W}}function m7($,Q){return $.scripts.find((J)=>J.scriptTag===Q)?.extenderGlyphs??[]}function b7($,Q,Z){let J=$.scripts.find((q)=>q.scriptTag===Q);if(!J)return[];if(Z!==void 0){let q=J.langSysRecords.get(Z);if(q)return q.priorities}return J.defaultLangSys?.priorities??[]}function g7($){return{enableGsub:$.shrinkageEnableGsub?.lookupIndices??[],disableGsub:$.shrinkageDisableGsub?.lookupIndices??[],enableGpos:$.shrinkageEnableGpos?.lookupIndices??[],disableGpos:$.shrinkageDisableGpos?.lookupIndices??[],maxLookups:$.shrinkageJstfMax?.lookupIndices??[]}}function x7($){return{enableGsub:$.extensionEnableGsub?.lookupIndices??[],disableGsub:$.extensionDisableGsub?.lookupIndices??[],enableGpos:$.extensionEnableGpos?.lookupIndices??[],disableGpos:$.extensionDisableGpos?.lookupIndices??[],maxLookups:$.extensionJstfMax?.lookupIndices??[]}}function u7($){let Q=$.uint16(),Z=[];if(Q===0){let J=$.uint16();for(let q=0;q<J;q++){let W=JK($);if(W)Z.push(W)}}else if(Q===1){$.skip(2);let J=$.uint32();for(let q=0;q<J;q++){let W=qK($);if(W)Z.push(W)}}return{version:Q,subtables:Z}}function JK($){let Q=$.uint16(),Z=$.uint16(),J=$.uint16(),q={horizontal:(J&1)!==0,minimum:(J&2)!==0,crossStream:(J&4)!==0,override:(J&8)!==0},W=J>>8&255;if(W===0)return f7($,q);else if(W===2)return l7($,q,Z-6);return $.skip(Z-6),null}function qK($){let Q=$.uint32(),Z=$.uint16(),J=$.uint16(),q={horizontal:(Z&32768)===0,minimum:!1,crossStream:(Z&16384)!==0,override:(Z&8192)!==0},W=Z&255;if(W===0)return f7($,q);else if(W===2)return l7($,q,Q-8);return $.skip(Q-8),null}function f7($,Q){let Z=$.uint16();$.skip(6);let J=new Map;for(let q=0;q<Z;q++){let W=$.uint16(),K=$.uint16(),H=$.int16(),U=W<<16|K;J.set(U,H)}return{format:0,coverage:Q,pairs:J}}function l7($,Q,Z){let J=$.offset,q=$.uint16(),W=$.uint16(),K=$.uint16(),H=$.uint16(),U=new Map;$.seek(J+W);let N=$.uint16(),_=$.uint16();for(let G=0;G<_;G++){let E=$.uint16();if(E!==0)U.set(N+G,E)}let X=new Map;$.seek(J+K);let j=$.uint16(),w=$.uint16();for(let G=0;G<w;G++){let E=$.uint16();if(E!==0)X.set(j+G,E)}$.seek(J+H);let Y=q>0?Math.floor(Z/q):0,V=q/2,z=[];for(let G=0;G<Y;G++){let E=[];for(let B=0;B<V;B++)E.push($.int16());z.push(E)}return{format:2,coverage:Q,rowWidth:q,leftClassTable:U,rightClassTable:X,kerningValues:z}}function B9($,Q,Z){let J=0;for(let q of $.subtables){if(!q.coverage.horizontal)continue;if(q.format===0){let W=Q<<16|Z,K=q.pairs.get(W);if(K!==void 0)if(q.coverage.override)J=K;else J+=K}else if(q.format===2){let W=q.leftClassTable.get(Q)??0,K=q.rightClassTable.get(Z)??0;if(W>0&&K>0){let H=Math.floor(W/2),U=Math.floor(K/2),N=q.kerningValues[H];if(N){let _=N[U];if(_!==void 0)if(q.coverage.override)J=_;else J+=_}}}}return J}function n7($){let Q=$.uint16();$.skip(2);let Z=$.uint32(),J=[];for(let q=0;q<Z;q++){let W=KK($);if(W)J.push(W)}return{version:Q,nTables:Z,subtables:J}}function KK($){let Q=$.uint32(),Z=$.uint32(),J=$.uint16();$.skip(2);let q=Z&255,W={vertical:(Z&2147483648)!==0,crossStream:(Z&1073741824)!==0,variation:(Z&536870912)!==0},K={length:Q,coverage:W,tupleCount:J},H=$.offset+Q-12,U=null;switch(q){case 0:U=WK($,K);break;case 1:U=HK($,K);break;case 2:U=UK($,K);break;case 6:U=NK($,K);break}return $.seek(H),U}function WK($,Q){let Z=$.uint32();$.skip(12);let J=[];for(let q=0;q<Z;q++)J.push({left:$.uint16(),right:$.uint16(),value:$.int16()}),$.skip(2);return{...Q,format:0,nPairs:Z,pairs:J}}function HK($,Q){let Z={nClasses:$.uint32(),classTableOffset:$.offset32(),stateArrayOffset:$.offset32(),entryTableOffset:$.offset32(),valueTableOffset:$.offset32()};return{...Q,format:1,stateHeader:Z}}function UK($,Q){let Z=$.uint16();$.skip(2);let J=$.offset32(),q=$.offset32(),W=$.offset32(),K=d7($.sliceFrom(J)),H=d7($.sliceFrom(q)),U=$.sliceFrom(W),N=K.nGlyphs>0?Math.max(...Array.from(K.classes))+1:0,_=Z/2,X=new Int16Array(N*_);for(let[j,w]of X.entries())X[j]=U.int16();return{...Q,format:2,rowWidth:Z,leftClassTable:K,rightClassTable:H,kerningArray:X}}function d7($){let Q=$.uint16(),Z=$.uint16(),J=new Uint8Array(Z);for(let q=0;q<Z;q++)J[q]=$.uint8();return{firstGlyph:Q,nGlyphs:Z,classes:J}}function NK($,Q){let Z=$.uint32(),J=$.uint16(),q=$.uint16(),W=$.offset32(),K=$.offset32(),H=$.offset32(),U=$.offset32();return{...Q,format:6,flags:Z,rowCount:J,columnCount:q,rowIndexTableOffset:W,columnIndexTableOffset:K,kerningArrayOffset:H,kerningVectorOffset:U}}function _K($,Q,Z){for(let J of $.subtables){if(J.coverage.vertical)continue;switch(J.format){case 0:{let q=J.pairs,W=0,K=q.length-1;while(W<=K){let H=W+K>>1,U=q[H];if(!U)break;let N=U.left<<16|U.right,_=Q<<16|Z;if(N===_)return U.value;else if(N<_)W=H+1;else K=H-1}break}case 2:{let{leftClassTable:q,rightClassTable:W}=J;if(Q<q.firstGlyph||Q>=q.firstGlyph+q.nGlyphs)continue;if(Z<W.firstGlyph||Z>=W.firstGlyph+W.nGlyphs)continue;let K=q.classes[Q-q.firstGlyph],H=W.classes[Z-W.firstGlyph];if(K===void 0||H===void 0)continue;let U=J.rowWidth/2,N=K*U+H;if(N<J.kerningArray.length){let _=J.kerningArray[N];if(_!==void 0&&_!==0)return _}break}}}return 0}function l($,Q){let Z=$.int16(),J=$.uint16();return{value:Z,device:$6(Q,J)}}function XK($){let Q=$,Z=$.int16(),J=$.int16(),q=$.uint16(),W=$.uint16();return{scriptPercentScaleDown:Z,scriptScriptPercentScaleDown:J,delimitedSubFormulaMinHeight:q,displayOperatorMinHeight:W,mathLeading:l($,Q),axisHeight:l($,Q),accentBaseHeight:l($,Q),flattenedAccentBaseHeight:l($,Q),subscriptShiftDown:l($,Q),subscriptTopMax:l($,Q),subscriptBaselineDropMin:l($,Q),superscriptShiftUp:l($,Q),superscriptShiftUpCramped:l($,Q),superscriptBottomMin:l($,Q),superscriptBaselineDropMax:l($,Q),subSuperscriptGapMin:l($,Q),superscriptBottomMaxWithSubscript:l($,Q),spaceAfterScript:l($,Q),upperLimitGapMin:l($,Q),upperLimitBaselineRiseMin:l($,Q),lowerLimitGapMin:l($,Q),lowerLimitBaselineDropMin:l($,Q),stackTopShiftUp:l($,Q),stackTopDisplayStyleShiftUp:l($,Q),stackBottomShiftDown:l($,Q),stackBottomDisplayStyleShiftDown:l($,Q),stackGapMin:l($,Q),stackDisplayStyleGapMin:l($,Q),stretchStackTopShiftUp:l($,Q),stretchStackBottomShiftDown:l($,Q),stretchStackGapAboveMin:l($,Q),stretchStackGapBelowMin:l($,Q),fractionNumeratorShiftUp:l($,Q),fractionNumeratorDisplayStyleShiftUp:l($,Q),fractionDenominatorShiftDown:l($,Q),fractionDenominatorDisplayStyleShiftDown:l($,Q),fractionNumeratorGapMin:l($,Q),fractionNumDisplayStyleGapMin:l($,Q),fractionRuleThickness:l($,Q),fractionDenominatorGapMin:l($,Q),fractionDenomDisplayStyleGapMin:l($,Q),skewedFractionHorizontalGap:l($,Q),skewedFractionVerticalGap:l($,Q),overbarVerticalGap:l($,Q),overbarRuleThickness:l($,Q),overbarExtraAscender:l($,Q),underbarVerticalGap:l($,Q),underbarRuleThickness:l($,Q),underbarExtraDescender:l($,Q),radicalVerticalGap:l($,Q),radicalDisplayStyleVerticalGap:l($,Q),radicalRuleThickness:l($,Q),radicalExtraAscender:l($,Q),radicalKernBeforeDegree:l($,Q),radicalKernAfterDegree:l($,Q),radicalDegreeBottomRaisePercent:$.int16()}}function jK($){let Q=$.uint16(),Z=$.uint16(),J=[];for(let W=0;W<Z;W++)J.push(l($,$));return{coverage:n($,Q),values:J}}function YK($){let Q=$.uint16(),Z=$.uint16(),J=[];for(let W=0;W<Z;W++)J.push(l($,$));return{coverage:n($,Q),values:J}}function U8($,Q){let Z=$.sliceFrom(Q),J=Z.uint16(),q=[];for(let K=0;K<J;K++)q.push(l(Z,Z));let W=[];for(let K=0;K<J+1;K++)W.push(l(Z,Z));return{correctionHeights:q,kernValues:W}}function wK($){let Q=$.uint16(),Z=$.uint16(),J=[];for(let K=0;K<Z;K++)J.push({topRightOffset:$.uint16(),topLeftOffset:$.uint16(),bottomRightOffset:$.uint16(),bottomLeftOffset:$.uint16()});let q=n($,Q),W=J.map((K)=>({topRight:K.topRightOffset!==0?U8($,K.topRightOffset):null,topLeft:K.topLeftOffset!==0?U8($,K.topLeftOffset):null,bottomRight:K.bottomRightOffset!==0?U8($,K.bottomRightOffset):null,bottomLeft:K.bottomLeftOffset!==0?U8($,K.bottomLeftOffset):null}));return{coverage:q,kernInfo:W}}function VK($){let Q=$.uint16(),Z=$.uint16(),J=$.uint16(),q=$.uint16(),W=null;if(Q!==0)W=jK($.sliceFrom(Q));let K=null;if(Z!==0)K=YK($.sliceFrom(Z));let H=null;if(J!==0)H={coverage:n($,J)};let U=null;if(q!==0)U=wK($.sliceFrom(q));return{italicsCorrection:W,topAccentAttachment:K,extendedShapeCoverage:H,kernInfo:U}}function zK($){let Q=l($,$),Z=$.uint16(),J=[];for(let q=0;q<Z;q++)J.push({glyphId:$.uint16(),startConnectorLength:$.uint16(),endConnectorLength:$.uint16(),fullAdvance:$.uint16(),partFlags:$.uint16()});return{italicsCorrection:Q,parts:J}}function i7($){let Q=$.uint16(),Z=$.uint16(),J=[];for(let W=0;W<Z;W++)J.push({variantGlyph:$.uint16(),advanceMeasurement:$.uint16()});let q=null;if(Q!==0)q=zK($.sliceFrom(Q));return{glyphAssembly:q,variants:J}}function GK($){let Q=$.uint16(),Z=$.uint16(),J=$.uint16(),q=$.uint16(),W=$.uint16(),K=[];for(let j=0;j<q;j++)K.push($.uint16());let H=[];for(let j=0;j<W;j++)H.push($.uint16());let U=Z!==0?n($,Z):null,N=J!==0?n($,J):null,_=K.map((j)=>i7($.sliceFrom(j))),X=H.map((j)=>i7($.sliceFrom(j)));return{minConnectorOverlap:Q,vertGlyphCoverage:U,horizGlyphCoverage:N,vertGlyphConstruction:_,horizGlyphConstruction:X}}function p7($){let Q=$.uint16(),Z=$.uint16(),J=$.uint16(),q=$.uint16(),W=$.uint16(),K=null;if(J!==0)K=XK($.sliceFrom(J));let H=null;if(q!==0)H=VK($.sliceFrom(q));let U=null;if(W!==0)U=GK($.sliceFrom(W));return{majorVersion:Q,minorVersion:Z,constants:K,glyphInfo:H,variants:U}}function o7($){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 F9;((W)=>{W[W.Rearrangement=0]="Rearrangement";W[W.Contextual=1]="Contextual";W[W.Ligature=2]="Ligature";W[W.NonContextual=4]="NonContextual";W[W.Insertion=5]="Insertion"})(F9||={});function s7($){let Q=$.uint16();if($.skip(2),Q<2)return{version:Q,chains:[]};let Z=$.uint32(),J=[];for(let q=0;q<Z;q++){let W=EK($);J.push(W)}return{version:Q,chains:J}}function EK($){let Q=$.uint32(),Z=$.uint32(),J=$.uint32(),q=$.uint32(),W=[];for(let H=0;H<J;H++)W.push({featureType:$.uint16(),featureSetting:$.uint16(),enableFlags:$.uint32(),disableFlags:$.uint32()});let K=[];for(let H=0;H<q;H++){let U=AK($);if(U)K.push(U)}return{defaultFlags:Q,features:W,subtables:K}}function AK($){let Q=$.uint32(),Z=$.uint32(),J=$.uint32(),q=Z&255,W={vertical:(Z&2147483648)!==0,descending:(Z&1073741824)!==0,logical:(Z&268435456)!==0},H=$.offset+Q-12,U=null;switch(q){case 0:U=LK($,W,J);break;case 1:U=FK($,W,J);break;case 2:U=DK($,W,J);break;case 4:U=BK($,W,J);break;case 5:U=MK($,W,J);break}return $.seek(H),U}function BK($,Q,Z){let J=RK($);return{type:4,coverage:Q,subFeatureFlags:Z,lookupTable:J}}function FK($,Q,Z){let J=$.offset,q=$.uint32(),W=$.offset32(),K=$.offset32(),H=$.offset32(),U=$.offset32(),N=N8($.sliceFrom(J+W));return{type:1,coverage:Q,subFeatureFlags:Z,stateTable:{nClasses:q,classTable:N,stateArray:[]},substitutionTable:[]}}function DK($,Q,Z){let J=$.offset,q=$.uint32(),W=$.offset32(),K=$.offset32(),H=$.offset32(),U=$.offset32(),N=$.offset32(),_=$.offset32(),X=N8($.sliceFrom(J+W));return{type:2,coverage:Q,subFeatureFlags:Z,stateTable:{nClasses:q,classTable:X,stateArray:[]},ligatureActions:[],components:[],ligatures:[]}}function LK($,Q,Z){let J=$.offset,q=$.uint32(),W=$.offset32(),K=$.offset32(),H=$.offset32(),U=N8($.sliceFrom(J+W)),N=$.sliceFrom(J+K),_=$.sliceFrom(J+H),X=[],j=256;for(let V=0;V<256;V++)X.push({newState:_.uint16(),flags:_.uint16()});let w=[],Y=Math.min(256,Math.ceil((H-K)/(q*2)));for(let V=0;V<Y;V++){let z=[];for(let G=0;G<q;G++){let E=N.uint16();z.push(X[E]??{newState:0,flags:0})}w.push(z)}return{type:0,coverage:Q,subFeatureFlags:Z,stateTable:{nClasses:q,classTable:U,stateArray:w}}}function MK($,Q,Z){let J=$.offset,q=$.uint32(),W=$.offset32(),K=$.offset32(),H=$.offset32(),U=$.offset32(),N=N8($.sliceFrom(J+W)),_=$.sliceFrom(J+U),X=[],j=1024;for(let B=0;B<1024;B++)try{X.push(_.uint16())}catch{break}let w=$.sliceFrom(J+H),Y=[],V=256;for(let B=0;B<V;B++)Y.push({newState:w.uint16(),flags:w.uint16(),currentInsertIndex:w.uint16(),markedInsertIndex:w.uint16()});let z=$.sliceFrom(J+K),G=[],E=Math.min(256,Math.ceil((H-K)/(q*2)));for(let B=0;B<E;B++){let F=[];for(let v=0;v<q;v++){let L=z.uint16();F.push(Y[L]??{newState:0,flags:0,currentInsertIndex:65535,markedInsertIndex:65535})}G.push(F)}return{type:5,coverage:Q,subFeatureFlags:Z,stateTable:{nClasses:q,classTable:N,stateArray:G},insertionGlyphs:X}}function RK($){let Q=$.uint16(),Z=new Map;switch(Q){case 0:break;case 2:{let J=$.uint16(),q=$.uint16();$.skip(6);for(let W=0;W<q;W++){let K=$.uint16(),H=$.uint16(),U=$.uint16();for(let N=H;N<=K;N++)Z.set(N,U)}break}case 4:{let J=$.uint16(),q=$.uint16();$.skip(6);for(let W=0;W<q;W++){let K=$.uint16(),H=$.uint16(),U=$.uint16()}break}case 6:{let J=$.uint16(),q=$.uint16();$.skip(6);for(let W=0;W<q;W++){let K=$.uint16(),H=$.uint16();Z.set(K,H)}break}case 8:{let J=$.uint16(),q=$.uint16();for(let W=0;W<q;W++){let K=$.uint16();if(K!==0)Z.set(J+W,K)}break}}return{format:Q,mapping:Z}}function N8($){let Q=$.uint16(),Z=[];if(Q===2){let J=$.uint16(),q=$.uint16();$.skip(6);let W=[];for(let H=0;H<q;H++)W.push({last:$.uint16(),first:$.uint16(),classValue:$.uint16()});let K=Math.max(...W.map((H)=>H.last),0);for(let H=0;H<=K;H++){let U=W.find((N)=>H>=N.first&&H<=N.last);Z[H]=U?.classValue??1}}return{format:Q,classArray:Z}}function D9($,Q){return $.lookupTable.mapping.get(Q)??null}var O6={hasc:M("hasc"),hdsc:M("hdsc"),hlgp:M("hlgp"),hcla:M("hcla"),hcld:M("hcld"),hcof:M("hcof"),hcrn:M("hcrn"),hcrs:M("hcrs"),vasc:M("vasc"),vdsc:M("vdsc"),vlgp:M("vlgp"),vcof:M("vcof"),vcrn:M("vcrn"),vcrs:M("vcrs"),xhgt:M("xhgt"),cpht:M("cpht"),sbxs:M("sbxs"),sbys:M("sbys"),sbxo:M("sbxo"),sbyo:M("sbyo"),spxs:M("spxs"),spys:M("spys"),spxo:M("spxo"),spyo:M("spyo"),strs:M("strs"),stro:M("stro"),undo:M("undo"),unds:M("unds"),gsp0:M("gsp0"),gsp1:M("gsp1"),gsp2:M("gsp2"),gsp3:M("gsp3")};function c7($){let Q=$.uint16(),Z=$.uint16();$.uint16();let J=$.uint16(),q=$.uint16(),W=$.offset16(),K=[];for(let U=0;U<q;U++)if(K.push({valueTag:$.tag(),deltaSetOuterIndex:$.uint16(),deltaSetInnerIndex:$.uint16()}),J>8)$.skip(J-8);let H=TK($.sliceFrom(W));return{majorVersion:Q,minorVersion:Z,itemVariationStore:H,valueRecords:K}}function TK($){let Q=$.uint16(),Z=$.offset32(),J=$.uint16(),q=[];for(let _=0;_<J;_++)q.push($.offset32());let W=$.sliceFrom(Z),K=W.uint16(),H=W.uint16(),U=[];for(let _=0;_<H;_++){let X=[];for(let j=0;j<K;j++)X.push({startCoord:W.f2dot14(),peakCoord:W.f2dot14(),endCoord:W.f2dot14()});U.push({regionAxes:X})}let N=[];for(let _ of q){let X=$.sliceFrom(_),j=X.uint16(),w=X.uint16(),Y=X.uint16(),V=[];for(let F=0;F<Y;F++)V.push(X.uint16());let z=(w&32768)!==0,G=w&32767,E=Y-G,B=[];for(let F=0;F<j;F++){let v=[];for(let L=0;L<G;L++)if(z)v.push(X.int32());else v.push(X.int16());for(let L=0;L<E;L++)if(z)v.push(X.int16());else v.push(X.int8());B.push(v)}N.push({itemCount:j,regionIndexes:V,deltaSets:B})}return{format:Q,variationRegions:U,itemVariationData:N}}function I6($,Q,Z){let J=$.valueRecords.find((N)=>N.valueTag===Q);if(!J)return 0;let{deltaSetOuterIndex:q,deltaSetInnerIndex:W}=J,K=$.itemVariationStore.itemVariationData[q];if(!K||W>=K.itemCount)return 0;let H=K.deltaSets[W];if(!H)return 0;let U=0;for(let[N,_]of K.regionIndexes.entries()){let X=$.itemVariationStore.variationRegions[_];if(!X)continue;let j=M6(X,Z),w=H[N]??0;U+=j*w}return Math.round(U)}function PK($,Q){return I6($,O6.hasc,Q)}function OK($,Q){return I6($,O6.hdsc,Q)}function IK($,Q){return I6($,O6.xhgt,Q)}function vK($,Q){return I6($,O6.cpht,Q)}var L9={Unicode:0,Macintosh:1,Reserved:2,Windows:3};function a7($){let Q=$.uint16(),Z=$.uint16(),J=$.uint16(),q=[],W=[];for(let K=0;K<Z;K++)W.push({platformId:$.uint16(),encodingId:$.uint16(),languageId:$.uint16(),nameId:$.uint16(),length:$.uint16(),offset:$.uint16()});for(let K of W){let H=$.sliceFrom(J+K.offset),U=kK(H,K.length,K.platformId,K.encodingId);if(U!==null)q.push({platformId:K.platformId,encodingId:K.encodingId,languageId:K.languageId,nameId:K.nameId,value:U})}return{format:Q,records:q}}function kK($,Q,Z,J){if(Z===L9.Unicode||Z===L9.Windows&&(J===1||J===10)){let q=[];for(let W=0;W<Q;W+=2){let K=$.uint16();q.push(String.fromCharCode(K))}return q.join("")}if(Z===L9.Macintosh&&J===0){let q=[];for(let W=0;W<Q;W++)q.push($.uint8());return String.fromCharCode(...q)}return null}function r7($){let Q=$.uint16(),Z=$.int16(),J=$.uint16(),q=$.uint16(),W=$.uint16(),K=$.int16(),H=$.int16(),U=$.int16(),N=$.int16(),_=$.int16(),X=$.int16(),j=$.int16(),w=$.int16(),Y=$.int16(),V=$.int16(),z=$.int16(),G=[];for(let R=0;R<10;R++)G.push($.uint8());let E=$.uint32(),B=$.uint32(),F=$.uint32(),v=$.uint32(),L=String.fromCharCode($.uint8(),$.uint8(),$.uint8(),$.uint8()),h=$.uint16(),S=$.uint16(),I=$.uint16(),b=$.int16(),x=$.int16(),P=$.int16(),o=$.uint16(),y=$.uint16(),g={version:Q,xAvgCharWidth:Z,usWeightClass:J,usWidthClass:q,fsType:W,ySubscriptXSize:K,ySubscriptYSize:H,ySubscriptXOffset:U,ySubscriptYOffset:N,ySuperscriptXSize:_,ySuperscriptYSize:X,ySuperscriptXOffset:j,ySuperscriptYOffset:w,yStrikeoutSize:Y,yStrikeoutPosition:V,sFamilyClass:z,panose:G,ulUnicodeRange1:E,ulUnicodeRange2:B,ulUnicodeRange3:F,ulUnicodeRange4:v,achVendID:L,fsSelection:h,usFirstCharIndex:S,usLastCharIndex:I,sTypoAscender:b,sTypoDescender:x,sTypoLineGap:P,usWinAscent:o,usWinDescent:y};if(Q>=1)g.ulCodePageRange1=$.uint32(),g.ulCodePageRange2=$.uint32();if(Q>=2)g.sxHeight=$.int16(),g.sCapHeight=$.int16(),g.usDefaultChar=$.uint16(),g.usBreakChar=$.uint16(),g.usMaxContext=$.uint16();if(Q>=5)g.usLowerOpticalPointSize=$.uint16(),g.usUpperOpticalPointSize=$.uint16();return g}function t7($){let Q=$.uint16(),Z=$.uint16(),J=Q+Z/65536,q=$.fixed(),W=$.int16(),K=$.int16(),H=$.uint32(),U=$.uint32(),N=$.uint32(),_=$.uint32(),X=$.uint32(),j={version:J,italicAngle:q,underlinePosition:W,underlineThickness:K,isFixedPitch:H,minMemType42:U,maxMemType42:N,minMemType1:_,maxMemType1:X};if(J===2){let w=$.uint16(),Y=[];for(let E=0;E<w;E++)Y.push($.uint16());let V=[],z=0;for(let E of Y)if(E>=258&&E>z)z=E;let G=z>=258?z-257:0;for(let E=0;E<G;E++){let B=$.uint8(),F=[];for(let v=0;v<B;v++)F.push(String.fromCharCode($.uint8()));V.push(F.join(""))}j.numberOfGlyphs=w,j.glyphNameIndex=Y,j.names=V}return j}var M9={PNG:"png ",JPG:"jpg ",TIFF:"tiff",PDF:"pdf ",MASK:"mask",DUPE:"dupe"};function e7($,Q){let Z=$.offset,J=$.uint16(),q=$.uint16(),W=$.uint32(),K=[];for(let U=0;U<W;U++)K.push($.uint32());let H=[];for(let U of K){let N=CK($,Z+U,Q);H.push(N)}return{version:J,flags:q,strikes:H}}function CK($,Q,Z){let J=$.sliceFrom(Q),q=J.uint16(),W=J.uint16(),K=[];for(let U=0;U<=Z;U++)K.push(J.uint32());let H=new Map;for(let U=0;U<Z;U++){let N=K[U],_=K[U+1];if(N===void 0||_===void 0)continue;let X=_-N;if(X<=8)continue;let j=$.sliceFrom(Q+N),w=j.int16(),Y=j.int16(),V=j.tagString(),z=X-8,G=j.bytes(z);H.set(U,{originOffsetX:w,originOffsetY:Y,graphicType:V,data:G})}return{ppem:q,ppi:W,glyphData:H}}function SK($,Q,Z){let J=null,q=1/0;for(let W of $.strikes){let K=Math.abs(W.ppem-Z);if(K<q)q=K,J=W}if(!J)return null;return J.glyphData.get(Q)??null}function $$($,Q){return $.strikes.find((Z)=>Z.ppem===Q)??null}function hK($){return $.strikes.map((Q)=>Q.ppem).sort((Q,Z)=>Q-Z)}function yK($,Q,Z){if(Z!==void 0)return $$($,Z)?.glyphData.has(Q)??!1;for(let J of $.strikes)if(J.glyphData.has(Q))return!0;return!1}function Q$($,Q,Z){if(Z.graphicType!==M9.DUPE)return Z;if(Z.data.length<2)return null;let J=(Z.data[0]??0)<<8|(Z.data[1]??0),q=Q.glyphData.get(J);if(!q)return null;if(q.graphicType===M9.DUPE)return Q$($,Q,q);return q}function Z$($){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(),J=$.uint16(),q=$.uint16(),W=$.uint16(),K=new Map;for(let H=0;H<Z;H++){let U=$.tag(),N=$.uint32(),_=$.uint32(),X=$.uint32();K.set(U,{tag:U,checksum:N,offset:_,length:X})}return{sfntVersion:Q,numTables:Z,searchRange:J,entrySelector:q,rangeShift:W,tables:K}}function J$($){return $.sfntVersion===65536||$.sfntVersion===1953658213}var R9={OlderSiblingFontAttribute:1,ElidableAxisValueName:2};function q$($){let Q=$.offset,Z=$.uint16(),J=$.uint16(),q=$.uint16(),W=$.uint16(),K=$.offset32(),H=$.uint16(),U=$.offset32(),N;if(Z>=1&&J>=1)N=$.uint16();let _=[];if(K!==0){let j=$.sliceFrom(Q+K);for(let w=0;w<W;w++)if(_.push({axisTag:j.tag(),axisNameID:j.uint16(),axisOrdering:j.uint16()}),q>8)j.skip(q-8)}let X=[];if(U!==0&&H>0){let j=$.sliceFrom(Q+U),w=[];for(let Y=0;Y<H;Y++)w.push(j.uint16());for(let Y of w){let V=$.sliceFrom(Q+U+Y),z=mK(V);if(z)X.push(z)}}return{majorVersion:Z,minorVersion:J,designAxisCount:W,designAxes:_,axisValueCount:H,axisValues:X,elidedFallbackNameID:N}}function mK($){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(),J=$.uint16(),q=$.uint16(),W=[];for(let K=0;K<Z;K++)W.push({axisIndex:$.uint16(),value:$.fixed()});return{format:4,axisCount:Z,flags:J,valueNameID:q,axisValues:W}}default:return null}}function bK($,Q){return $.designAxes.find((Z)=>Z.axisTag===Q)??null}function gK($,Q){return $.designAxes.findIndex((Z)=>Z.axisTag===Q)}function xK($,Q){return $.axisValues.filter((Z)=>{if(Z.format===4)return Z.axisValues.some((J)=>J.axisIndex===Q);return Z.axisIndex===Q})}function uK($,Q){return $.axisValues.find((Z)=>Z.valueNameID===Q)??null}function fK($){return($.flags&R9.ElidableAxisValueName)!==0}function lK($){return($.flags&R9.OlderSiblingFontAttribute)!==0}function dK($){switch($.format){case 1:case 3:return $.value;case 2:return $.nominalValue;case 4:return null}}function nK($,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 J=Q.get(Z.axisIndex);return J!==void 0&&J===Z.value})}}function K$($){let Q=$.uint16(),Z=$.offset32();$.skip(4);let J=$.sliceFrom(Z),q=J.uint16(),W=[];for(let U=0;U<q;U++)W.push({startGlyphID:J.uint16(),endGlyphID:J.uint16(),svgDocOffset:J.offset32(),svgDocLength:J.uint32()});let K=[],H=new TextDecoder("utf-8");for(let U of W){let _=J.sliceFrom(U.svgDocOffset).bytes(U.svgDocLength),X;if(_[0]===31&&_[1]===139)try{let j=oK(_);X=H.decode(j)}catch{X=H.decode(_)}else X=H.decode(_);K.push({startGlyphID:U.startGlyphID,endGlyphID:U.endGlyphID,svgDoc:X})}return{version:Q,documentRecords:K}}function W$($,Q){for(let Z of $.documentRecords)if(Q>=Z.startGlyphID&&Q<=Z.endGlyphID)return Z.svgDoc;return null}function iK($,Q){return W$($,Q)!==null}function pK($){let Q=[];for(let Z of $.documentRecords)for(let J=Z.startGlyphID;J<=Z.endGlyphID;J++)Q.push(J);return Q}function oK($){if(typeof DecompressionStream<"u")return $;return $}function U$($){let Q=$,Z=$.uint32()/65536,J=$.uint16(),q=$.offset16(),W=$.offset16();$.skip(2);let K=null,H=null;if(q!==0)K=H$($.sliceFrom(q),Q);if(W!==0)H=H$($.sliceFrom(W),Q);return{version:Z,format:J,horizData:K,vertData:H}}function H$($,Q){let Z=$.uint16(),J=$.uint16(),q=$.offset32(),W=[];for(let U=0;U<Z;U++){let N=$.int32()/65536,_=$.uint16(),X=$.uint16();W.push({track:N,nameIndex:_,offset:X,perSizeTracking:[]})}for(let U of W){let N=Q.sliceFrom(U.offset);U.perSizeTracking=[];for(let _=0;_<J;_++)U.perSizeTracking.push(N.int16())}let K=Q.sliceFrom(q),H=[];for(let U=0;U<J;U++)H.push(K.int32()/65536);return{nTracks:Z,nSizes:J,sizeTableOffset:q,trackTable:W,sizeTable:H}}function N$($,Q,Z){let J=null;for(let q of $.trackTable)if(q.track===Q){J=q;break}if(!J){let q=null,W=null;for(let K of $.trackTable){if(K.track<=Q&&(!q||K.track>q.track))q=K;if(K.track>=Q&&(!W||K.track<W.track))W=K}if(q&&W&&q!==W){let K=(Q-q.track)/(W.track-q.track),H=T9($,q,Z),U=T9($,W,Z);return Math.round(H+K*(U-H))}else if(q)J=q;else if(W)J=W;else return 0}if(!J)return 0;return T9($,J,Z)}function T9($,Q,Z){let J=$.sizeTable,q=Q.perSizeTracking;if(J.length===0||q.length===0)return 0;let W=J[0],K=q[0];if(W===void 0||K===void 0)return 0;if(Z<=W)return K;let H=J[J.length-1],U=q[q.length-1];if(H===void 0||U===void 0)return 0;if(Z>=H)return U;for(let N=0;N<J.length-1;N++){let _=J[N],X=J[N+1],j=q[N],w=q[N+1];if(_===void 0||X===void 0||j===void 0||w===void 0)continue;if(Z>=_&&Z<=X){let Y=(Z-_)/(X-_);return Math.round(j+Y*(w-j))}}return 0}function sK($,Q,Z,J=0,q=!1){let W=q?$.vertData:$.horizData;if(!W)return;let K=N$(W,J,Z);if(K===0)return;for(let[H,U]of Q.entries())Q[H]=(U??0)+K}function _$($){let Q=$.uint16(),Z=$.uint16(),J=$.fword(),q=$.fword(),W=$.fword(),K=$.uint16(),H=$.fword(),U=$.fword(),N=$.fword(),_=$.int16(),X=$.int16(),j=$.int16();$.skip(8);let w=$.int16(),Y=$.uint16();return{version:{major:Q,minor:Z},ascender:J,descender:q,lineGap:W,advanceHeightMax:K,minTopSideBearing:H,minBottomSideBearing:U,yMaxExtent:N,caretSlopeRise:_,caretSlopeRun:X,caretOffset:j,metricDataFormat:w,numberOfVMetrics:Y}}function X$($,Q,Z){let J=[];for(let K=0;K<Q;K++)J.push({advanceHeight:$.uint16(),topSideBearing:$.int16()});let q=[],W=Z-Q;for(let K=0;K<W;K++)q.push($.int16());return{vMetrics:J,topSideBearings:q}}function cK($,Q){if(Q<$.vMetrics.length){let K=$.vMetrics[Q];if(K)return{advanceHeight:K.advanceHeight,topSideBearing:K.topSideBearing}}let J=$.vMetrics[$.vMetrics.length-1]?.advanceHeight??0,q=Q-$.vMetrics.length,W=$.topSideBearings[q]??0;return{advanceHeight:J,topSideBearing:W}}function j$($){let Q=$.uint16(),Z=$.uint16(),J=$.int16(),q=$.uint16(),W=[];for(let K=0;K<q;K++)W.push({glyphIndex:$.uint16(),vertOriginY:$.int16()});return W.sort((K,H)=>K.glyphIndex-H.glyphIndex),{majorVersion:Q,minorVersion:Z,defaultVertOriginY:J,vertOriginYMetrics:W}}function aK($,Q){let Z=$.vertOriginYMetrics,J=0,q=Z.length-1;while(J<=q){let W=J+q>>>1,K=Z[W];if(K===void 0)break;if(K.glyphIndex===Q)return K.vertOriginY;else if(K.glyphIndex<Q)J=W+1;else q=W-1}return $.defaultVertOriginY}function rK($,Q){let Z=$.vertOriginYMetrics,J=0,q=Z.length-1;while(J<=q){let W=J+q>>>1,K=Z[W];if(K===void 0)break;if(K.glyphIndex===Q)return!0;else if(K.glyphIndex<Q)J=W+1;else q=W-1}return!1}function Y$($){let Q=$.uint16(),Z=$.uint16(),J=$.offset32(),q=$.offset32(),W=$.offset32(),K=$.offset32(),H=$.offset32(),U=tK($.sliceFrom(J)),N=q!==0?_8($.sliceFrom(q)):null,_=W!==0?_8($.sliceFrom(W)):null,X=K!==0?_8($.sliceFrom(K)):null,j=H!==0?_8($.sliceFrom(H)):null;return{majorVersion:Q,minorVersion:Z,itemVariationStore:U,advanceHeightMapping:N,tsbMapping:_,bsbMapping:X,vOrgMapping:j}}function tK($){let Q=$.uint16(),Z=$.offset32(),J=$.uint16(),q=[];for(let _=0;_<J;_++)q.push($.offset32());let W=$.sliceFrom(Z),K=W.uint16(),H=W.uint16(),U=[];for(let _=0;_<H;_++){let X=[];for(let j=0;j<K;j++)X.push({startCoord:W.f2dot14(),peakCoord:W.f2dot14(),endCoord:W.f2dot14()});U.push({regionAxes:X})}let N=[];for(let _ of q){let X=$.sliceFrom(_),j=X.uint16(),w=X.uint16(),Y=X.uint16(),V=[];for(let F=0;F<Y;F++)V.push(X.uint16());let z=(w&32768)!==0,G=w&32767,E=Y-G,B=[];for(let F=0;F<j;F++){let v=[];for(let L=0;L<G;L++)if(z)v.push(X.int32());else v.push(X.int16());for(let L=0;L<E;L++)if(z)v.push(X.int16());else v.push(X.int8());B.push(v)}N.push({itemCount:j,regionIndexes:V,deltaSets:B})}return{format:Q,variationRegions:U,itemVariationData:N}}function _8($){let Q=$.uint8(),Z=$.uint8(),J=Q===0?$.uint16():$.uint32(),q=(Z&15)+1,W=(Z>>4&3)+1,K=[];for(let H=0;H<J;H++){let U=0;for(let X=0;X<W;X++)U=U<<8|$.uint8();let N=U&(1<<q)-1,_=U>>q;K.push({outer:_,inner:N})}return{format:Q,mapCount:J,entryFormat:Z,innerIndexBitCount:q,mapData:K}}function eK($,Q,Z){let J=$.advanceHeightMapping,q,W;if(J&&Q<J.mapData.length){let K=J.mapData[Q];if(!K)return 0;q=K.outer,W=K.inner}else q=0,W=Q;return X8($.itemVariationStore,q,W,Z)}function $W($,Q,Z){let J=$.tsbMapping;if(!J)return 0;if(Q>=J.mapData.length)return 0;let q=J.mapData[Q];if(!q)return 0;return X8($.itemVariationStore,q.outer,q.inner,Z)}function QW($,Q,Z){let J=$.bsbMapping;if(!J)return 0;if(Q>=J.mapData.length)return 0;let q=J.mapData[Q];if(!q)return 0;return X8($.itemVariationStore,q.outer,q.inner,Z)}function ZW($,Q,Z){let J=$.vOrgMapping;if(!J)return 0;if(Q>=J.mapData.length)return 0;let q=J.mapData[Q];if(!q)return 0;return X8($.itemVariationStore,q.outer,q.inner,Z)}function X8($,Q,Z,J){let q=$.itemVariationData[Q];if(!q||Z>=q.itemCount)return 0;let W=q.deltaSets[Z];if(!W)return 0;let K=0;for(let[H,U]of q.regionIndexes.entries()){let N=$.variationRegions[U];if(!N)continue;let _=M6(N,J),X=W[H]??0;K+=_*X}return Math.round(K)}var JW=2001684038,qW=2001684018;function w$($){return new DataView($).getUint32(0,!1)===qW}function V$($){return new DataView($).getUint32(0,!1)===JW}class X6{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 I1($),this.directory=Z$(this.reader)}static load($,Q){if(w$($))throw Error("WOFF2 requires async loading. Use Font.loadAsync() instead.");if(V$($))throw Error("WOFF format is not supported. Please use TTF, OTF, or WOFF2.");return new X6($,Q)}static async loadAsync($,Q){if(w$($))$=await W5($);else if(V$($))throw Error("WOFF format is not supported. Please use TTF, OTF, or WOFF2.");return new X6($,Q)}static async fromURL($,Q){let Z=await fetch($);if(!Z.ok)throw Error(`Failed to fetch font: ${Z.status} ${Z.statusText}`);let J=await Z.arrayBuffer();return X6.loadAsync(J,Q)}static async fromFile($,Q){let J=await Bun.file($).arrayBuffer();return X6.loadAsync(J,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(f.head);if(!$)throw Error("Missing required 'head' table");this._head=R7($)}return this._head}get maxp(){if(!this._maxp){let $=this.getTableReader(f.maxp);if(!$)throw Error("Missing required 'maxp' table");this._maxp=o7($)}return this._maxp}get hhea(){if(!this._hhea){let $=this.getTableReader(f.hhea);if(!$)throw Error("Missing required 'hhea' table");this._hhea=T7($)}return this._hhea}get hmtx(){if(!this._hmtx){let $=this.getTableReader(f.hmtx);if(!$)throw Error("Missing required 'hmtx' table");this._hmtx=v7($,this.hhea.numberOfHMetrics,this.numGlyphs)}return this._hmtx}get cmap(){if(!this._cmap){let $=this.getTableRecord(f.cmap),Q=this.getTableReader(f.cmap);if(!Q||!$)throw Error("Missing required 'cmap' table");this._cmap=B5(Q,$.length)}return this._cmap}get gdef(){if(this._gdef===void 0){let $=this.getTableReader(f.GDEF);this._gdef=$?o5($):null}return this._gdef}get gsub(){if(this._gsub===void 0){let $=this.getTableReader(f.GSUB);this._gsub=$?E7($):null}return this._gsub}get gpos(){if(this._gpos===void 0){let $=this.getTableReader(f.GPOS);this._gpos=$?w7($):null}return this._gpos}get kern(){if(this._kern===void 0){let $=this.getTableReader(f.kern);this._kern=$?u7($):null}return this._kern}get fvar(){if(this._fvar===void 0){let $=this.getTableReader(f.fvar);this._fvar=$?y0($):null}return this._fvar}get hvar(){if(this._hvar===void 0){let $=this.getTableReader(f.HVAR);this._hvar=$?m0($):null}return this._hvar}get vhea(){if(this._vhea===void 0){let $=this.getTableReader(f.vhea);this._vhea=$?_$($):null}return this._vhea}get vmtx(){if(this._vmtx===void 0){let $=this.vhea;if(!$)this._vmtx=null;else{let Q=this.getTableReader(f.vmtx);this._vmtx=Q?X$(Q,$.numberOfVMetrics,this.numGlyphs):null}}return this._vmtx}get morx(){if(this._morx===void 0){let $=this.getTableReader(f.morx);this._morx=$?s7($):null}return this._morx}get gvar(){if(this._gvar===void 0){let $=this.getTableReader(f.gvar);this._gvar=$?a5($,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(f.avar);this._avar=Q?S0(Q,$.axes.length):null}}return this._avar}get kerx(){if(this._kerx===void 0){let $=this.getTableReader(f.kerx);this._kerx=$?n7($):null}return this._kerx}get trak(){if(this._trak===void 0){let $=this.getTableReader(f.trak);this._trak=$?U$($):null}return this._trak}get cff(){if(this._cff===void 0){let $=this.getTableReader(f.CFF);this._cff=$?V5($):null}return this._cff}get cff2(){if(this._cff2===void 0){let $=this.getTableReader(f.CFF2);this._cff2=$?A5($):null}return this._cff2}get colr(){if(this._colr===void 0){let $=this.getTableReader(f.COLR);this._colr=$?W9($):null}return this._colr}get cpal(){if(this._cpal===void 0){let $=this.getTableReader(f.CPAL);this._cpal=$?H9($):null}return this._cpal}get vvar(){if(this._vvar===void 0){let $=this.getTableReader(f.VVAR);this._vvar=$?Y$($):null}return this._vvar}get mvar(){if(this._mvar===void 0){let $=this.getTableReader(f.MVAR);this._mvar=$?c7($):null}return this._mvar}get os2(){if(this._os2===void 0){let $=this.getTableReader(f.OS2);this._os2=$?r7($):null}return this._os2}get name(){if(this._name===void 0){let $=this.getTableReader(f.name);this._name=$?a7($):null}return this._name}get post(){if(this._post===void 0){let $=this.getTableReader(f.post);this._post=$?t7($):null}return this._post}get base(){if(this._base===void 0){let $=this.getTableReader(f.BASE);this._base=$?N5($):null}return this._base}get jstf(){if(this._jstf===void 0){let $=this.getTableReader(f.JSTF);this._jstf=$?y7($):null}return this._jstf}get math(){if(this._math===void 0){let $=this.getTableReader(f.MATH);this._math=$?p7($):null}return this._math}get loca(){if(this._loca===void 0){let $=this.getTableReader(f.loca);this._loca=$?r5($,this.numGlyphs,this.head.indexToLocFormat):null}return this._loca}get glyf(){if(this._glyf===void 0){let $=this.getTableReader(f.glyf);this._glyf=$?t5($):null}return this._glyf}get svg(){if(this._svg===void 0){let $=this.getTableReader(f.SVG);this._svg=$?K$($):null}return this._svg}get vorg(){if(this._vorg===void 0){let $=this.getTableReader(f.VORG);this._vorg=$?j$($):null}return this._vorg}get sbix(){if(this._sbix===void 0){let $=this.getTableReader(f.sbix);this._sbix=$?e7($,this.numGlyphs):null}return this._sbix}get stat(){if(this._stat===void 0){let $=this.getTableReader(f.STAT);this._stat=$?q$($):null}return this._stat}get cblc(){if(this._cblc===void 0){let $=this.getTableReader(f.CBLC);this._cblc=$?X5($):null}return this._cblc}get cbdt(){if(this._cbdt===void 0){let $=this.getTableReader(f.CBDT);this._cbdt=$?j5($):null}return this._cbdt}get feat(){if(this._feat===void 0){let $=this.getTableReader(f.feat);this._feat=$?U9($):null}return this._feat}get fpgm(){if(this._fpgm===void 0){let $=this.getTableReader(f.fpgm);this._fpgm=$?P7($):null}return this._fpgm}get prep(){if(this._prep===void 0){let $=this.getTableReader(f.prep);this._prep=$?O7($):null}return this._prep}get cvtTable(){if(this._cvt===void 0){let $=this.getTableReader(f.cvt);this._cvt=$?I7($):null}return this._cvt}get gasp(){if(this._gasp===void 0){let $=this.getTableReader(f.gasp);this._gasp=$?d5($):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 J$(this.directory)}get isCFF(){return this.hasTable(f.CFF)||this.hasTable(f.CFF2)}get isVariable(){return this.hasTable(f.fvar)}get hasOpenTypeLayout(){return this.hasTable(f.GSUB)||this.hasTable(f.GPOS)}get hasAATLayout(){return this.hasTable(f.morx)||this.hasTable(f.kerx)}get isColorFont(){return this.hasTable(f.COLR)||this.hasTable(f.SVG)||this.hasTable(f.sbix)||this.hasTable(f.CBDT)}get hasHinting(){return this.isTrueType&&(this.hasTable(f.fpgm)||this.hasTable(f.prep))}glyphId($){return F5(this.cmap,$)}glyphIdForChar($){let Q=$.codePointAt(0);if(Q===void 0)return 0;return this.glyphId(Q)}advanceWidth($){return k7(this.hmtx,$)}leftSideBearing($){return C7(this.hmtx,$)}listTables(){return Array.from(this.directory.tables.keys()).map(L6)}getGlyph($){if(!this.glyf||!this.loca)return null;return e1(this.glyf,this.loca,$)}getGlyphContours($){if(this.glyf&&this.loca)return $7(this.glyf,this.loca,$);if(this.cff)return J9(this.cff,$,0);if(this.cff2)return Q8(this.cff2,$,null);return null}getGlyphBounds($){if(this.glyf&&this.loca)return Q7(this.glyf,this.loca,$);let Q=this.getGlyphContours($);if(!Q||Q.length===0)return null;let Z=1/0,J=1/0,q=-1/0,W=-1/0;for(let K of Q)for(let H of K)Z=Math.min(Z,H.x),J=Math.min(J,H.y),q=Math.max(q,H.x),W=Math.max(W,H.y);if(Z===1/0)return null;return{xMin:Z,yMin:J,xMax:q,yMax:W}}getGlyphContoursWithVariation($,Q){if(this.glyf&&this.loca)return q7(this.glyf,this.loca,this.gvar,$,Q);if(this.cff2)return Q8(this.cff2,$,Q);return this.getGlyphContours($)}}var G$;((J)=>{J.Shrink="shrink";J.Extend="extend";J.Auto="auto"})(G$||={});function j8($){let Q=0;for(let Z of $.positions)Q+=Z.xAdvance;return Q}function E$($,Q,Z){let{targetWidth:J,script:q=M("DFLT"),language:W,mode:K="auto",maxPriority:H=10,enableKashida:U=!0,minWordSpacingFactor:N=0.8,maxWordSpacingFactor:_=1.5,enableLetterSpacing:X=!0,maxLetterSpacing:j=100}=Z,w=j8(Q),Y=J-w;if(Math.abs(Y)<1)return{success:!0,finalWidth:w,delta:0,priorityLevel:0,adjustments:[]};let V;if(K==="auto")V=Y>0?"extend":"shrink";else V=K;let z=[],G=Y,E=0,B=$.jstf;if(B){let L=b7(B,q,W);for(let h=0;h<Math.min(L.length,H);h++){let S=L[h],I=V==="shrink"?g7(S):x7(S);if(I.enableGsub.length>0||I.disableGsub.length>0||I.enableGpos.length>0||I.disableGpos.length>0)z.push({type:"lookup",glyphIndices:[],value:h}),E=h}if(U&&V==="extend"){let h=m7(B,q);if(h.length>0){let S=KW(Q,h[0],G,$);G-=S.totalExtension,z.push(...S.adjustments)}}}let F=$.glyphId(32);if(F!==0){let L=HW(Q,F,G,V==="shrink"?N:_);G-=L.totalAdjustment,z.push(...L.adjustments)}if(X&&Math.abs(G)>1){let L=UW(Q,G,j);G-=L.totalAdjustment,z.push(...L.adjustments)}let v=j8(Q);return{success:Math.abs(G)<1,finalWidth:v,delta:J-v,priorityLevel:E,adjustments:z}}function KW($,Q,Z,J){let q=[],W=0,K=[];for(let _=0;_<$.infos.length-1;_++){let X=$.infos[_];if(WW(X.codepoint))K.push(_)}if(K.length===0)return{totalExtension:0,adjustments:[]};let H=J.advanceWidth(Q);if(H<=0)return{totalExtension:0,adjustments:[]};let U=Math.ceil(Z/H/K.length),N=Math.min(U*H,Z/K.length);for(let _ of K){if(W>=Z)break;$.positions[_].xAdvance+=N,W+=N,q.push({type:"kashida",glyphIndices:[_],value:N})}return{totalExtension:W,adjustments:q}}function WW($){return $>=1568&&$<=1791}function HW($,Q,Z,J){let q=[],W=0,K=[],H=0;for(let j=0;j<$.infos.length;j++)if($.infos[j]?.glyphId===Q)K.push(j),H+=$.positions[j]?.xAdvance;if(K.length===0)return{totalAdjustment:0,adjustments:[]};let U=Z/K.length,_=H/K.length*(J-1),X=Z>0?Math.min(U,_):Math.max(U,-_);for(let j of K)$.positions[j].xAdvance+=X,W+=X;if(W!==0)q.push({type:"spacing",glyphIndices:K,value:X});return{totalAdjustment:W,adjustments:q}}function UW($,Q,Z){let J=[],q=$.infos.length;if(q<=1)return{totalAdjustment:0,adjustments:[]};let W=q-1,K=Q/W,H=Q>0?Math.min(K,Z):Math.max(K,-Z),U=[],N=0;for(let _=0;_<q-1;_++)$.positions[_].xAdvance+=H,N+=H,U.push(_);if(N!==0)J.push({type:"spacing",glyphIndices:U,value:H});return{totalAdjustment:N,adjustments:J}}function NW($,Q,Z){let J=[],q=[];if($.infos.length===0)return{lines:[],breakPoints:[]};let W=0,K=0,H=-1,U=0;for(let N=0;N<$.infos.length;N++){let _=$.positions[N],X=$.infos[N];if(K+=_.xAdvance,Z!==void 0&&X.glyphId===Z)H=N,U=K;if(K>Q&&W<N){let j;if(H>W)j=H+1;else j=N;let w=z$($,W,j);J.push(w),q.push(j),W=j,K=0,H=-1;for(let Y=W;Y<=N;Y++)K+=$.positions[Y]?.xAdvance}}if(W<$.infos.length){let N=z$($,W,$.infos.length);J.push(N)}return{lines:J,breakPoints:q}}function z$($,Q,Z){let J=new a1;J.direction=$.direction,J.script=$.script,J.language=$.language;for(let q=Q;q<Z;q++)J.infos.push({...$.infos[q]}),J.positions.push({...$.positions[q]});return J}function _W($,Q,Z){let J=[];for(let q=0;q<Q.length;q++){let W=Q[q];if(q===Q.length-1)J.push({success:!0,finalWidth:j8(W),delta:0,priorityLevel:0,adjustments:[]});else J.push(E$($,W,Z))}return J}function A$($,Q){for(let Z of $.conditions){let J=Q[Z.axisIndex]??0;if(J<Z.filterRangeMinValue||J>Z.filterRangeMaxValue)return!1}return!0}function v6($,Q){for(let Z of $.featureVariationRecords)if(A$(Z.conditionSet,Q))return Z;return null}function XW($,Q,Z,J){if(!$||!J)return Z;let q=v6($,J);if(!q)return Z;let W=q.featureTableSubstitution.substitutions.find((K)=>K.featureIndex===Q);if(W)return W.alternateFeature.lookupListIndices;return Z}function jW($,Q,Z,J){if(!$||!J)return Q;let q=v6($,J);if(!q)return Q;let W=new Map(Q);for(let K of q.featureTableSubstitution.substitutions)for(let[H,U]of Z)if(U===K.featureIndex){W.set(H,K.alternateFeature.lookupListIndices);break}return W}function B$($){if(!$.commands||$.commands.length===0)return null;let Q=1/0,Z=1/0,J=-1/0,q=-1/0,W=0,K=0,H=!1,U=(N,_)=>{Q=Math.min(Q,N),Z=Math.min(Z,_),J=Math.max(J,N),q=Math.max(q,_),H=!0};for(let N of $.commands)switch(N.type){case"M":{W=N.x,K=N.y,U(W,K);break}case"L":{W=N.x,K=N.y,U(W,K);break}case"Q":{U(N.x,N.y);let _=P9(W,N.x1,N.x);for(let w of _){let Y=k6(W,N.x1,N.x,w);U(Y,K)}let X=P9(K,N.y1,N.y);for(let w of X){let Y=k6(K,N.y1,N.y,w);U(W,Y)}let j=new Set([..._,...X]);for(let w of j){let Y=k6(W,N.x1,N.x,w),V=k6(K,N.y1,N.y,w);U(Y,V)}W=N.x,K=N.y;break}case"C":{U(N.x,N.y);let _=O9(W,N.x1,N.x2,N.x);for(let w of _){let Y=C6(W,N.x1,N.x2,N.x,w);U(Y,K)}let X=O9(K,N.y1,N.y2,N.y);for(let w of X){let Y=C6(K,N.y1,N.y2,N.y,w);U(W,Y)}let j=new Set([..._,...X]);for(let w of j){let Y=C6(W,N.x1,N.x2,N.x,w),V=C6(K,N.y1,N.y2,N.y,w);U(Y,V)}W=N.x,K=N.y;break}case"Z":break}if(!H)return null;return{xMin:Q,yMin:Z,xMax:J,yMax:q}}function P9($,Q,Z){let J=$-2*Q+Z;if(Math.abs(J)<0.0000000001)return[];let q=($-Q)/J;if(q>0&&q<1)return[q];return[]}function O9($,Q,Z,J){let q=3*(J-3*Z+3*Q-$),W=6*(Z-2*Q+$),K=3*(Q-$),H=[];if(Math.abs(q)<0.0000000001){if(Math.abs(W)<0.0000000001)return[];let j=-K/W;if(j>0&&j<1)H.push(j);return H}let U=W*W-4*q*K;if(U<0)return[];if(Math.abs(U)<0.0000000001){let j=-W/(2*q);if(j>0&&j<1)H.push(j);return H}let N=Math.sqrt(U),_=(-W+N)/(2*q),X=(-W-N)/(2*q);if(_>0&&_<1)H.push(_);if(X>0&&X<1)H.push(X);return H}function k6($,Q,Z,J){let q=1-J;return q*q*$+2*q*J*Q+J*J*Z}function C6($,Q,Z,J,q){let W=1-q,K=W*W,H=q*q;return K*W*$+3*K*q*Q+3*W*H*Z+H*q*J}var b1;((W)=>{W[W.Mono=0]="Mono";W[W.Gray=1]="Gray";W[W.LCD=2]="LCD";W[W.LCD_V=3]="LCD_V";W[W.RGBA=4]="RGBA"})(b1||={});var j6;((Z)=>{Z[Z.NonZero=0]="NonZero";Z[Z.EvenOdd=1]="EvenOdd"})(j6||={});function K1($,Q,Z=1){let J;switch(Z){case 0:J=0.125;break;case 1:J=1;break;case 2:case 3:J=3;break;case 4:J=4;break}let q=Z===0?Math.ceil($/8):$*J;return{buffer:new Uint8Array(q*Q),width:$,rows:Q,pitch:q,pixelMode:Z,numGrays:Z===0?2:256}}function F$($){$.buffer.fill(0)}function D$($,Q,Z){if(Q===0&&Z===0)return I9($);let J=K1($.width,$.rows,$.pixelMode);if($.pixelMode===1)for(let q=0;q<$.rows;q++)for(let W=0;W<$.width;W++){let K=0;for(let H=-Math.floor(Z);H<=Math.ceil(Z);H++)for(let U=-Math.floor(Q);U<=Math.ceil(Q);U++){let N=W+U,_=q+H;if(N>=0&&N<$.width&&_>=0&&_<$.rows){let X=$.buffer[_*$.pitch+N]??0;K=Math.max(K,X)}}J.buffer[q*J.pitch+W]=K}else if($.pixelMode===0)for(let q=0;q<$.rows;q++)for(let W=0;W<$.width;W++){let K=!1;for(let H=-Math.floor(Z);H<=Math.ceil(Z);H++){for(let U=-Math.floor(Q);U<=Math.ceil(Q);U++){let N=W+U,_=q+H;if(N>=0&&N<$.width&&_>=0&&_<$.rows){let X=_*$.pitch+(N>>3),j=7-(N&7);if(($.buffer[X]??0)>>j&1){K=!0;break}}}if(K)break}if(K){let H=q*J.pitch+(W>>3),U=7-(W&7);J.buffer[H]|=1<<U}}else if($.pixelMode===2||$.pixelMode===3)for(let q=0;q<$.rows;q++)for(let W=0;W<$.width;W++){let K=0,H=0,U=0;for(let _=-Math.floor(Z);_<=Math.ceil(Z);_++)for(let X=-Math.floor(Q);X<=Math.ceil(Q);X++){let j=W+X,w=q+_;if(j>=0&&j<$.width&&w>=0&&w<$.rows){let Y=w*$.pitch+j*3;K=Math.max(K,$.buffer[Y]??0),H=Math.max(H,$.buffer[Y+1]??0),U=Math.max(U,$.buffer[Y+2]??0)}}let N=q*J.pitch+W*3;J.buffer[N]=K,J.buffer[N+1]=H,J.buffer[N+2]=U}return J}function S6($,Q){if($.pixelMode===Q)return $;let Z=K1($.width,$.rows,Q);if($.pixelMode===1&&Q===0){for(let J=0;J<$.rows;J++)for(let q=0;q<$.width;q++)if(($.buffer[J*$.pitch+q]??0)>=128){let K=J*Z.pitch+(q>>3),H=7-(q&7);Z.buffer[K]|=1<<H}}else if($.pixelMode===0&&Q===1)for(let J=0;J<$.rows;J++)for(let q=0;q<$.width;q++){let W=J*$.pitch+(q>>3),K=7-(q&7),H=($.buffer[W]??0)>>K&1;Z.buffer[J*Z.pitch+q]=H?255:0}else if($.pixelMode===1&&Q===2)for(let J=0;J<$.rows;J++)for(let q=0;q<$.width;q++){let W=$.buffer[J*$.pitch+q]??0,K=J*Z.pitch+q*3;Z.buffer[K]=W,Z.buffer[K+1]=W,Z.buffer[K+2]=W}else if($.pixelMode===0&&Q===2)for(let J=0;J<$.rows;J++)for(let q=0;q<$.width;q++){let W=J*$.pitch+(q>>3),K=7-(q&7),U=($.buffer[W]??0)>>K&1?255:0,N=J*Z.pitch+q*3;Z.buffer[N]=U,Z.buffer[N+1]=U,Z.buffer[N+2]=U}else if($.pixelMode===1&&Q===3)for(let J=0;J<$.rows;J++)for(let q=0;q<$.width;q++){let W=$.buffer[J*$.pitch+q]??0,K=J*Z.pitch+q*3;Z.buffer[K]=W,Z.buffer[K+1]=W,Z.buffer[K+2]=W}else if($.pixelMode===2&&Q===1)for(let J=0;J<$.rows;J++)for(let q=0;q<$.width;q++){let W=J*$.pitch+q*3,K=$.buffer[W]??0,H=$.buffer[W+1]??0,U=$.buffer[W+2]??0;Z.buffer[J*Z.pitch+q]=Math.floor((K+H+U)/3)}return Z}function L$($,Q,Z,J,q){if($.pixelMode!==1||Q.pixelMode!==1)return;q=Math.max(0,Math.min(1,q));let W=Math.max(0,-Z),K=Math.max(0,-J),H=Math.min(Q.width,$.width-Z),U=Math.min(Q.rows,$.rows-J);for(let N=K;N<U;N++)for(let _=W;_<H;_++){let X=Z+_,j=J+N;if(X>=0&&X<$.width&&j>=0&&j<$.rows){let w=Q.buffer[N*Q.pitch+_]??0,V=($.buffer[j*$.pitch+X]??0)+w*q;$.buffer[j*$.pitch+X]=Math.min(255,Math.floor(V))}}}function I9($){return{buffer:new Uint8Array($.buffer),width:$.width,rows:$.rows,pitch:$.pitch,pixelMode:$.pixelMode,numGrays:$.numGrays}}function M$($,Q,Z){let J=K1(Q,Z,$.pixelMode),q=$.width/Q,W=$.rows/Z;if($.pixelMode===1)for(let K=0;K<Z;K++)for(let H=0;H<Q;H++){let U=Math.floor(H*q),N=Math.floor(K*W);J.buffer[K*J.pitch+H]=$.buffer[N*$.pitch+U]??0}else if($.pixelMode===0)for(let K=0;K<Z;K++)for(let H=0;H<Q;H++){let U=Math.floor(H*q),_=Math.floor(K*W)*$.pitch+(U>>3),X=7-(U&7);if(($.buffer[_]??0)>>X&1){let w=K*J.pitch+(H>>3),Y=7-(H&7);J.buffer[w]|=1<<Y}}else if($.pixelMode===2||$.pixelMode===3)for(let K=0;K<Z;K++)for(let H=0;H<Q;H++){let U=Math.floor(H*q),_=Math.floor(K*W)*$.pitch+U*3,X=K*J.pitch+H*3;J.buffer[X]=$.buffer[_]??0,J.buffer[X+1]=$.buffer[_+1]??0,J.buffer[X+2]=$.buffer[_+2]??0}return J}function v9($){if($<=0)return new Float32Array([1]);let Q=$,Z=Math.ceil($*2)*2+1,J=new Float32Array(Z),q=Math.floor(Z/2),W=0;for(let K=0;K<Z;K++){let H=K-q,U=Math.exp(-(H*H)/(2*Q*Q));J[K]=U,W+=U}for(let K=0;K<Z;K++)J[K]/=W;return J}function YW($,Q,Z,J,q,W,K,H){let U=Math.floor(K.length/2);for(let N=0;N<J;N++)for(let _=0;_<Z;_++)for(let X=0;X<H;X++){let j=0;for(let Y=0;Y<K.length;Y++){let V=_+Y-U,z=Math.max(0,Math.min(Z-1,V)),G=N*q+z*H+X;j+=($[G]??0)*K[Y]}let w=N*W+_*H+X;Q[w]=Math.min(255,Math.max(0,Math.round(j)))}}function wW($,Q,Z,J,q,W,K,H){let U=Math.floor(K.length/2);for(let N=0;N<J;N++)for(let _=0;_<Z;_++)for(let X=0;X<H;X++){let j=0;for(let Y=0;Y<K.length;Y++){let V=N+Y-U,G=Math.max(0,Math.min(J-1,V))*q+_*H+X;j+=($[G]??0)*K[Y]}let w=N*W+_*H+X;Q[w]=Math.min(255,Math.max(0,Math.round(j)))}}function Y8($,Q){if($.pixelMode===0){let W=S6($,1);return Y8(W,Q)}if(Q<=0)return $;let Z=v9(Q),J=1;if($.pixelMode===2||$.pixelMode===3)J=3;else if($.pixelMode===4)J=4;let q=new Uint8Array($.buffer.length);return YW($.buffer,q,$.width,$.rows,$.pitch,$.pitch,Z,J),wW(q,$.buffer,$.width,$.rows,$.pitch,$.pitch,Z,J),$}function w8($,Q){if($.pixelMode===0){let K=S6($,1);return w8(K,Q)}if(Q<=0)return $;let Z=1;if($.pixelMode===2||$.pixelMode===3)Z=3;else if($.pixelMode===4)Z=4;let J=Math.floor(Q),q=J*2+1,W=new Uint8Array($.buffer.length);for(let K=0;K<$.rows;K++)for(let H=0;H<Z;H++){let U=0,N=0;for(let X=-J;X<=J;X++)if(X>=0&&X<$.width){let j=K*$.pitch+X*Z+H;U+=$.buffer[j]??0,N++}let _=K*$.pitch+0*Z+H;W[_]=Math.round(U/N);for(let X=1;X<$.width;X++){let j=X-J-1;if(j>=0){let V=K*$.pitch+j*Z+H;U-=$.buffer[V]??0,N--}let w=X+J;if(w<$.width){let V=K*$.pitch+w*Z+H;U+=$.buffer[V]??0,N++}let Y=K*$.pitch+X*Z+H;W[Y]=Math.round(U/N)}}for(let K=0;K<$.width;K++)for(let H=0;H<Z;H++){let U=0,N=0;for(let X=-J;X<=J;X++)if(X>=0&&X<$.rows){let j=X*$.pitch+K*Z+H;U+=W[j]??0,N++}let _=0*$.pitch+K*Z+H;$.buffer[_]=Math.round(U/N);for(let X=1;X<$.rows;X++){let j=X-J-1;if(j>=0){let V=j*$.pitch+K*Z+H;U-=W[V]??0,N--}let w=X+J;if(w<$.rows){let V=w*$.pitch+K*Z+H;U+=W[V]??0,N++}let Y=X*$.pitch+K*Z+H;$.buffer[Y]=Math.round(U/N)}}return $}function R$($,Q,Z="gaussian"){if(Z==="box")return w8($,Q);else return Y8($,Q)}function T$($){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 P$($){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 O$($){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++]=Math.trunc(Z*64/Q)}function I$($){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++]=Math.trunc(Z*Q/64)}function v$($){let Q=$.stack[$.stackTop-1];if(Q===void 0){$.error="ABS: stack underflow";return}$.stack[$.stackTop-1]=Q<0?-Q:Q}function k$($){let Q=$.stack[$.stackTop-1];if(Q===void 0){$.error="NEG: stack underflow";return}$.stack[$.stackTop-1]=-Q}function C$($){let Q=$.stack[$.stackTop-1];if(Q===void 0){$.error="FLOOR: stack underflow";return}$.stack[$.stackTop-1]=Q&-64}function S$($){let Q=$.stack[$.stackTop-1];if(Q===void 0){$.error="CEILING: stack underflow";return}$.stack[$.stackTop-1]=Q+63&-64}function h$($){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 y$($){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 m$($){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 b$($){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 g$($){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 x$($){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 u$($){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 f$($){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 l$($){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 d$($){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 n$($){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 i$($){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 p$($){let Q=$.stack[$.stackTop-1];if(Q===void 0){$.error="NOT: stack underflow";return}$.stack[$.stackTop-1]=Q?0:1}function o$($){let Q=$.stack[--$.stackTop];if(Q===void 0){$.error="IF: stack underflow",$.stackTop++;return}if(Q)return;let Z=1;while($.IP<$.codeSize){let J=$.code[$.IP++];if(J===void 0)break;switch(J){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(J>=176&&J<=183)$.IP+=J-176+1;else if(J>=184&&J<=191)$.IP+=(J-184+1)*2}}$.error="IF: missing EIF"}function s$($){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 c$($){}function a$($){let Q=$.stack[--$.stackTop];if(Q===void 0){$.error="JMPR: stack underflow",$.stackTop++;return}$.IP+=Q-1}function r$($){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 t$($){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 e$($){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 J=$.code[$.IP++];if(J===void 0)break;if(J===45){Z.end=$.IP;return}if(J===64)$.IP+=1+($.code[$.IP]??0);else if(J===65)$.IP+=1+($.code[$.IP]??0)*2;else if(J>=176&&J<=183)$.IP+=J-176+1;else if(J>=184&&J<=191)$.IP+=(J-184+1)*2}$.error="FDEF: missing ENDF"}function $Q($){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 QQ($){let Q=$.stack[--$.stackTop];if(Q===void 0){$.error="CALL: stack underflow",$.stackTop++;return}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 J=$.callStack[$.callStackTop++];if(!J){$.error="CALL: no call frame available",$.callStackTop--;return}J.callerIP=$.IP,J.callerRange=$.currentRange,J.def=Z,J.count=1,$.currentRange=Z.range;let q=$.codeRanges.get($.currentRange);if(q)$.code=q.code,$.codeSize=q.size;$.IP=Z.start}function ZQ($){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 J=$.FDefs[Q];if(!J||!J.active){$.error=`LOOPCALL: function ${Q} not defined`;return}if(Z<=0)return;if($.callStackTop>=$.maxCallStack){$.error="LOOPCALL: call stack overflow";return}let q=$.callStack[$.callStackTop++];if(!q){$.error="LOOPCALL: no call frame available",$.callStackTop--;return}q.callerIP=$.IP,q.callerRange=$.currentRange,q.def=J,q.count=Z,$.currentRange=J.range;let W=$.codeRanges.get($.currentRange);if(W)$.code=W.code,$.codeSize=W.size;$.IP=J.start}function JQ($){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 J=$.code[$.IP++];if(J===void 0)break;if(J===45){Z.end=$.IP;return}if(J===64)$.IP+=1+($.code[$.IP]??0);else if(J===65)$.IP+=1+($.code[$.IP]??0)*2;else if(J>=176&&J<=183)$.IP+=J-176+1;else if(J>=184&&J<=191)$.IP+=(J-184+1)*2}$.error="IDEF: missing ENDF"}function VW(){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}}function Q6($,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 qQ($=256,Q=64,Z=64,J=64,q=32,W=16){let K=VW();return{GS:{...K},defaultGS:K,zp0:Q6(0,0),zp1:Q6(0,0),zp2:Q6(0,0),twilight:Q6(W,1),pts:Q6(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((H,U)=>({id:U,start:0,end:0,active:!1,range:0})),maxFDefs:Z,IDefs:Array(J).fill(null).map((H,U)=>({opcode:U,start:0,end:0,active:!1,range:0})),maxIDefs:J,callStack:Array(q).fill(null).map(()=>({callerIP:0,callerRange:0,def:{id:0,start:0,end:0,active:!1,range:0},count:0})),callStackTop:0,maxCallStack:q,codeRanges:new Map,ppem:12,pointSize:12,scale:1,error:null,instructionCount:0,maxInstructions:1e6}}var A={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},SX={[A.RS]:1,[A.WS]:2,[A.RCVT]:1,[A.WCVTP]:2,[A.WCVTF]:2,[A.DUP]:1,[A.POP]:1,[A.CLEAR]:0,[A.SWAP]:2,[A.DEPTH]:0,[A.CINDEX]:1,[A.MINDEX]:1,[A.ROLL]:3,[A.ADD]:2,[A.SUB]:2,[A.DIV]:2,[A.MUL]:2,[A.ABS]:1,[A.NEG]:1,[A.FLOOR]:1,[A.CEILING]:1,[A.MAX]:2,[A.MIN]:2,[A.LT]:2,[A.LTEQ]:2,[A.GT]:2,[A.GTEQ]:2,[A.EQ]:2,[A.NEQ]:2,[A.ODD]:1,[A.EVEN]:1,[A.AND]:2,[A.OR]:2,[A.NOT]:1,[A.IF]:1,[A.JMPR]:1,[A.JROT]:2,[A.JROF]:2,[A.CALL]:1,[A.LOOPCALL]:2,[A.SRP0]:1,[A.SRP1]:1,[A.SRP2]:1,[A.SZP0]:1,[A.SZP1]:1,[A.SZP2]:1,[A.SZPS]:1,[A.SLOOP]:1,[A.SMD]:1,[A.SCVTCI]:1,[A.SSWCI]:1,[A.SSW]:1,[A.SDB]:1,[A.SDS]:1,[A.SPVFS]:2,[A.SFVFS]:2,[A.SPVTL_0]:2,[A.SPVTL_1]:2,[A.SFVTL_0]:2,[A.SFVTL_1]:2,[A.SCFS]:2,[A.GC_0]:1,[A.GC_1]:1,[A.MD_0]:2,[A.MD_1]:2,[A.ISECT]:5,[A.ALIGNRP]:0,[A.IP]:0,[A.SHPIX]:1,[A.MSIRP_0]:2,[A.MSIRP_1]:2,[A.MIAP_0]:2,[A.MIAP_1]:2,[A.MDAP_0]:1,[A.MDAP_1]:1,[A.DELTAP1]:1,[A.DELTAP2]:1,[A.DELTAP3]:1,[A.DELTAC1]:1,[A.DELTAC2]:1,[A.DELTAC3]:1,[A.SROUND]:1,[A.S45ROUND]:1,[A.ROUND_0]:1,[A.ROUND_1]:1,[A.ROUND_2]:1,[A.ROUND_3]:1,[A.NROUND_0]:1,[A.NROUND_1]:1,[A.NROUND_2]:1,[A.NROUND_3]:1,[A.INSTCTRL]:2,[A.SCANCTRL]:1,[A.SCANTYPE]:1,[A.GETINFO]:1,[A.FLIPPT]:0,[A.FLIPRGON]:2,[A.FLIPRGOFF]:2};function KQ($,Q){if($>=0)return $+32+Q&-64;else return-(-$+32+Q&-64)}function GW($,Q){if($>=0)return($+32+Q&-64)+32;else return-((-$+32+Q&-64)+32)}function EW($,Q){if($>=0)return $+16+Q&-32;else return-(-$+16+Q&-32)}function AW($,Q){if($>=0)return $+Q&-64;else return-(Q-$&-64)}function BW($,Q){if($>=0)return $+63+Q&-64;else return-(63+Q-$&-64)}function FW($,Q){return $}function DW($,Q,Z){let{period:J,phase:q,threshold:W}=Z;if($>=0)return($+W-q+Q&-J)+q;else return-((-$+W-q+Q&-J)+q)}function LW($,Q,Z){let{period:J,phase:q,threshold:W}=Z,K=Math.round(J*46/64);if($>=0)return($+W-q+Q&-K)+q;else return-((-$+W-q+Q&-K)+q)}function Y6($,Q,Z){switch(Z.roundState){case 1:return KQ($,Q);case 0:return GW($,Q);case 2:return EW($,Q);case 3:return AW($,Q);case 4:return BW($,Q);case 5:return FW($,Q);case 6:return DW($,Q,Z);case 7:return LW($,Q,Z);default:return KQ($,Q)}}function k9($,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 Z6($,Q){return 0}function MW($,Q){return Q.x*$.GS.projVector.x+Q.y*$.GS.projVector.y+8192>>14}function RW($,Q){return Q.x*$.GS.dualVector.x+Q.y*$.GS.dualVector.y+8192>>14}function X1($,Q,Z,J){let q=Q.cur[Z],W=$.GS.freeVector,K=$.GS.projVector,H=W.x*K.x+W.y*K.y+8192>>14;if(H===0)return;let U=Math.round(J*W.x/H),N=Math.round(J*W.y/H);q.x+=U,q.y+=N}function J1($,Q,Z){let J=Q.cur[Z];if(!J)return 0;return MW($,J)}function F1($,Q,Z){let J=Q.org[Z];if(!J)return 0;return RW($,J)}function Y1($,Q,Z){let J=$.GS.freeVector;if(J.y!==0)Q.tags[Z]|=2;if(J.x!==0)Q.tags[Z]|=1}function C9($,Q){let Z=$.stack[--$.stackTop],J=$.zp0;if(Z<0||Z>=J.nPoints){$.error=`MDAP: invalid point ${Z}`;return}let q=J1($,J,Z);if(Q){let W=Z6(q,$.GS);q=Y6(q,W,$.GS)-q}else q=0;X1($,J,Z,q),Y1($,J,Z),$.GS.rp0=Z,$.GS.rp1=Z}function S9($,Q){let Z=$.stack[--$.stackTop],J=$.stack[--$.stackTop],q=$.zp0;if(J<0||J>=q.nPoints){$.error=`MIAP: invalid point ${J}`;return}if(Z<0||Z>=$.cvtSize){$.error=`MIAP: invalid CVT index ${Z}`;return}let W=$.cvt[Z],K=J1($,q,J);if(Q){if(Math.abs(W-K)>$.GS.controlValueCutIn)W=K;let N=Z6(W,$.GS);W=Y6(W,N,$.GS)}let H=W-K;X1($,q,J,H),Y1($,q,J),$.GS.rp0=J,$.GS.rp1=J}function HQ($,Q){let Z=$.stack[--$.stackTop],J=(Q&16)!==0,q=(Q&8)!==0,W=(Q&4)!==0,K=$.zp0,H=$.zp1;if(Z<0||Z>=H.nPoints){$.error=`MDRP: invalid point ${Z}`;return}let U=$.GS.rp0;if(U<0||U>=K.nPoints){$.error=`MDRP: invalid rp0 ${U}`;return}let N=F1($,H,Z)-F1($,K,U);if($.GS.autoFlip&&N<0)N=-N;if(W){let j=Z6(N,$.GS);N=Y6(N,j,$.GS)}if(q){if(N>=0){if(N<$.GS.minimumDistance)N=$.GS.minimumDistance}else if(N>-$.GS.minimumDistance)N=-$.GS.minimumDistance}let _=J1($,H,Z)-J1($,K,U),X=N-_;if(X1($,H,Z,X),Y1($,H,Z),$.GS.rp1=$.GS.rp0,$.GS.rp2=Z,J)$.GS.rp0=Z}function UQ($,Q){let Z=$.stack[--$.stackTop],J=$.stack[--$.stackTop],q=(Q&16)!==0,W=(Q&8)!==0,K=(Q&4)!==0,H=$.zp0,U=$.zp1;if(J<0||J>=U.nPoints){$.error=`MIRP: invalid point ${J}`;return}if(Z<0||Z>=$.cvtSize){$.error=`MIRP: invalid CVT index ${Z}`;return}let N=$.GS.rp0;if(N<0||N>=H.nPoints){$.error=`MIRP: invalid rp0 ${N}`;return}let _=F1($,U,J)-F1($,H,N),X=$.cvt[Z];if($.GS.autoFlip){if(_<0&&X>0||_>0&&X<0)X=-X}let j=Math.abs(_-X),w;if(j>$.GS.controlValueCutIn)w=_;else w=X;if(K){let z=Z6(w,$.GS);w=Y6(w,z,$.GS)}if(W){if(_>=0){if(w<$.GS.minimumDistance)w=$.GS.minimumDistance}else if(w>-$.GS.minimumDistance)w=-$.GS.minimumDistance}let Y=J1($,U,J)-J1($,H,N),V=w-Y;if(X1($,U,J,V),Y1($,U,J),$.GS.rp1=$.GS.rp0,$.GS.rp2=J,q)$.GS.rp0=J}function h9($,Q){let Z=Q?$.zp0:$.zp1,J=Q?$.GS.rp1:$.GS.rp2;if(J<0||J>=Z.nPoints){$.error=`SHP: invalid reference point ${J}`;return}let q=F1($,Z,J),K=J1($,Z,J)-q,H=$.zp2,U=$.GS.loop;$.GS.loop=1;for(let N=0;N<U;N++){let _=$.stack[--$.stackTop];if(_<0||_>=H.nPoints){$.error=`SHP: invalid point ${_}`;return}X1($,H,_,K),Y1($,H,_)}}function y9($,Q){let Z=$.stack[--$.stackTop],J=Q?$.zp0:$.zp1,q=Q?$.GS.rp1:$.GS.rp2;if(q<0||q>=J.nPoints){$.error=`SHC: invalid reference point ${q}`;return}let W=$.zp2;if(Z<0||Z>=W.nContours){$.error=`SHC: invalid contour ${Z}`;return}let K=F1($,J,q),U=J1($,J,q)-K,N=Z===0?0:W.contours[Z-1]+1,_=W.contours[Z];for(let X=N;X<=_;X++){if(W===J&&X===q)continue;X1($,W,X,U),Y1($,W,X)}}function m9($,Q){let Z=$.stack[--$.stackTop],J=Q?$.zp0:$.zp1,q=Q?$.GS.rp1:$.GS.rp2;if(q<0||q>=J.nPoints){$.error=`SHZ: invalid reference point ${q}`;return}let W=Z===0?$.twilight:$.pts,K=F1($,J,q),U=J1($,J,q)-K;for(let N=0;N<W.nPoints;N++){if(W===J&&N===q)continue;X1($,W,N,U)}}function NQ($){let Q=$.stack[--$.stackTop],Z=$.zp2,J=$.GS.loop;$.GS.loop=1;for(let q=0;q<J;q++){let W=$.stack[--$.stackTop];if(W<0||W>=Z.nPoints){$.error=`SHPIX: invalid point ${W}`;return}X1($,Z,W,Q),Y1($,Z,W)}}function _Q($){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 J=F1($,$.zp0,Q),q=F1($,$.zp1,Z),W=J1($,$.zp0,Q),K=J1($,$.zp1,Z),H=q-J,U=K-W,N=$.zp2,_=$.GS.loop;$.GS.loop=1;for(let X=0;X<_;X++){let j=$.stack[--$.stackTop];if(j<0||j>=N.nPoints){$.error=`IP: invalid point ${j}`;return}let w=F1($,N,j),Y=J1($,N,j),V;if(H!==0){let z=w-J;V=W+Math.round(z*U/H)}else V=Y+(W-J);X1($,N,j,V-Y),Y1($,N,j)}}function XQ($){let Q=$.GS.rp0;if(Q<0||Q>=$.zp0.nPoints){$.error=`ALIGNRP: invalid rp0 ${Q}`;return}let Z=J1($,$.zp0,Q),J=$.zp1,q=$.GS.loop;$.GS.loop=1;for(let W=0;W<q;W++){let K=$.stack[--$.stackTop];if(K<0||K>=J.nPoints){$.error=`ALIGNRP: invalid point ${K}`;return}let H=J1($,J,K),U=Z-H;X1($,J,K,U),Y1($,J,K)}}function b9($,Q){let Z=$.stack[--$.stackTop],J=$.stack[--$.stackTop],q=$.zp0,W=$.zp1;if(J<0||J>=W.nPoints){$.error=`MSIRP: invalid point ${J}`;return}let K=$.GS.rp0;if(K<0||K>=q.nPoints){$.error=`MSIRP: invalid rp0 ${K}`;return}let H=J1($,W,J)-J1($,q,K),U=Z-H;if(X1($,W,J,U),Y1($,W,J),$.GS.rp1=$.GS.rp0,$.GS.rp2=J,Q)$.GS.rp0=J}function jQ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop],J=$.stack[--$.stackTop],q=$.stack[--$.stackTop],W=$.stack[--$.stackTop],K=$.zp0,H=$.zp1,U=$.zp2;if(q<0||q>=K.nPoints||J<0||J>=K.nPoints){$.error="ISECT: invalid line A points";return}if(Z<0||Z>=H.nPoints||Q<0||Q>=H.nPoints){$.error="ISECT: invalid line B points";return}if(W<0||W>=U.nPoints){$.error=`ISECT: invalid point ${W}`;return}let N=K.cur[q],_=K.cur[J],X=H.cur[Z],j=H.cur[Q],w=_.x-N.x,Y=_.y-N.y,V=j.x-X.x,z=j.y-X.y,G=w*z-Y*V,E=U.cur[W];if(G===0)E.x=N.x+_.x+X.x+j.x>>2,E.y=N.y+_.y+X.y+j.y>>2;else{let B=X.x-N.x,F=X.y-N.y,v=(B*z-F*V)/G;E.x=Math.round(N.x+v*w),E.y=Math.round(N.y+v*Y)}U.tags[W]|=3}function YQ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop],J=$.zp0,q=$.zp1;if(Z<0||Z>=J.nPoints){$.error=`ALIGNPTS: invalid point ${Z}`;return}if(Q<0||Q>=q.nPoints){$.error=`ALIGNPTS: invalid point ${Q}`;return}let W=J1($,J,Z),K=J1($,q,Q),H=W+K>>1;X1($,J,Z,H-W),X1($,q,Q,H-K),Y1($,J,Z),Y1($,q,Q)}function g9($,Q){let Z=$.stack[--$.stackTop],J=$.zp2;if(Z<0||Z>=J.nPoints){$.error=`GC: invalid point ${Z}`,$.stack[$.stackTop++]=0;return}let q=Q?F1($,J,Z):J1($,J,Z);$.stack[$.stackTop++]=q}function wQ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop],J=$.zp2;if(Z<0||Z>=J.nPoints){$.error=`SCFS: invalid point ${Z}`;return}let q=J1($,J,Z);X1($,J,Z,Q-q),Y1($,J,Z)}function x9($,Q){let Z=$.stack[--$.stackTop],J=$.stack[--$.stackTop],q=$.zp0,W=$.zp1;if(J<0||J>=q.nPoints){$.error=`MD: invalid point ${J}`,$.stack[$.stackTop++]=0;return}if(Z<0||Z>=W.nPoints){$.error=`MD: invalid point ${Z}`,$.stack[$.stackTop++]=0;return}let K;if(Q)K=F1($,W,Z)-F1($,q,J);else K=J1($,W,Z)-J1($,q,J);$.stack[$.stackTop++]=K}function VQ($){$.stack[$.stackTop++]=$.ppem}function zQ($){$.stack[$.stackTop++]=$.pointSize}function GQ($){let Q=$.pts,Z=$.GS.loop;$.GS.loop=1;for(let J=0;J<Z;J++){let q=$.stack[--$.stackTop];if(q<0||q>=Q.nPoints){$.error=`FLIPPT: invalid point ${q}`;return}Q.tags[q]^=1}}function EQ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop],J=$.pts;if(Z<0||Q>=J.nPoints||Z>Q){$.error=`FLIPRGON: invalid range ${Z}-${Q}`;return}for(let q=Z;q<=Q;q++)J.tags[q]|=1}function AQ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop],J=$.pts;if(Z<0||Q>=J.nPoints||Z>Q){$.error=`FLIPRGOFF: invalid range ${Z}-${Q}`;return}for(let q=Z;q<=Q;q++)J.tags[q]&=-2}function h6($,Q){let Z=$.stack[--$.stackTop],J=Z6(Z,$.GS);$.stack[$.stackTop++]=Y6(Z,J,$.GS)}function y6($,Q){let Z=$.stack[--$.stackTop],J=Z6(Z,$.GS);$.stack[$.stackTop++]=Z+J}function BQ($){u9($,0)}function FQ($){u9($,16)}function DQ($){u9($,32)}function u9($,Q){let Z=$.stack[--$.stackTop];if(Z<0){$.error=`DELTAP: invalid count ${Z}`;return}let J=$.zp0;for(let q=0;q<Z;q++){let W=$.stack[--$.stackTop],K=$.stack[--$.stackTop];if(K<0||K>=J.nPoints){$.error=`DELTAP: invalid point ${K}`;return}let H=(W>>4&15)+$.GS.deltaBase+Q,U=W&15;if(H!==$.ppem)continue;let N;if(U<8)N=U+1<<6-$.GS.deltaShift;else N=-(U-7<<6-$.GS.deltaShift);X1($,J,K,N),Y1($,J,K)}}function LQ($){f9($,0)}function MQ($){f9($,16)}function RQ($){f9($,32)}function f9($,Q){let Z=$.stack[--$.stackTop];if(Z<0){$.error=`DELTAC: invalid count ${Z}`;return}for(let J=0;J<Z;J++){let q=$.stack[--$.stackTop],W=$.stack[--$.stackTop];if(W<0||W>=$.cvtSize){$.error=`DELTAC: invalid CVT index ${W}`;return}let K=(q>>4&15)+$.GS.deltaBase+Q,H=q&15;if(K!==$.ppem)continue;let U;if(H<8)U=H+1<<6-$.GS.deltaShift;else U=-(H-7<<6-$.GS.deltaShift);$.cvt[W]+=U}}function l9($,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 d9($,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 n9($,Q){if(Q===0)$.GS.freeVector={x:0,y:16384};else $.GS.freeVector={x:16384,y:0}}function i9($,Q,Z,J,q){let W=J===0?$.twilight:$.pts,K=q===0?$.twilight:$.pts,H=W.cur[Q],U=K.cur[Z];if(!H||!U)return{x:16384,y:0};let N=U.x-H.x,_=U.y-H.y,X=Math.sqrt(N*N+_*_);if(X===0)return{x:16384,y:0};return{x:Math.round(N/X*16384),y:Math.round(_/X*16384)}}function p9($,Q){let Z=$.stack[--$.stackTop],J=$.stack[--$.stackTop],q=i9($,J,Z,$.GS.gep1,$.GS.gep2);if(Q){let W=q.x;q.x=q.y,q.y=-W}$.GS.projVector=q,$.GS.dualVector=q}function o9($,Q){let Z=$.stack[--$.stackTop],J=$.stack[--$.stackTop],q=i9($,J,Z,$.GS.gep1,$.GS.gep2);if(Q){let W=q.x;q.x=q.y,q.y=-W}$.GS.freeVector=q}function s9($,Q){let Z=$.stack[--$.stackTop],J=$.stack[--$.stackTop],q=i9($,J,Z,$.GS.gep1,$.GS.gep2);if(Q){let W=q.x;q.x=q.y,q.y=-W}$.GS.dualVector=q}function TQ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop],J=Math.sqrt(Z*Z+Q*Q);if(J===0)$.GS.projVector={x:16384,y:0};else $.GS.projVector={x:Math.round(Z/J*16384),y:Math.round(Q/J*16384)};$.GS.dualVector={...$.GS.projVector}}function PQ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop],J=Math.sqrt(Z*Z+Q*Q);if(J===0)$.GS.freeVector={x:16384,y:0};else $.GS.freeVector={x:Math.round(Z/J*16384),y:Math.round(Q/J*16384)}}function OQ($){$.stack[$.stackTop++]=$.GS.projVector.x,$.stack[$.stackTop++]=$.GS.projVector.y}function IQ($){$.stack[$.stackTop++]=$.GS.freeVector.x,$.stack[$.stackTop++]=$.GS.freeVector.y}function vQ($){$.GS.freeVector={...$.GS.projVector}}function kQ($){$.GS.rp0=$.stack[--$.stackTop]}function CQ($){$.GS.rp1=$.stack[--$.stackTop]}function SQ($){$.GS.rp2=$.stack[--$.stackTop]}function hQ($){let Q=$.stack[--$.stackTop];if(Q!==0&&Q!==1){$.error=`SZP0: invalid zone ${Q}`;return}$.GS.gep0=Q,$.zp0=Q===0?$.twilight:$.pts}function yQ($){let Q=$.stack[--$.stackTop];if(Q!==0&&Q!==1){$.error=`SZP1: invalid zone ${Q}`;return}$.GS.gep1=Q,$.zp1=Q===0?$.twilight:$.pts}function mQ($){let Q=$.stack[--$.stackTop];if(Q!==0&&Q!==1){$.error=`SZP2: invalid zone ${Q}`;return}$.GS.gep2=Q,$.zp2=Q===0?$.twilight:$.pts}function bQ($){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 gQ($){let Q=$.stack[--$.stackTop];if(Q<=0){$.error=`SLOOP: invalid count ${Q}`;return}$.GS.loop=Q}function xQ($){$.GS.minimumDistance=$.stack[--$.stackTop]}function uQ($){$.GS.controlValueCutIn=$.stack[--$.stackTop]}function fQ($){$.GS.singleWidthCutIn=$.stack[--$.stackTop]}function lQ($){$.GS.singleWidthValue=$.stack[--$.stackTop]}function dQ($){$.GS.deltaBase=$.stack[--$.stackTop]}function nQ($){$.GS.deltaShift=$.stack[--$.stackTop]}function iQ($){$.GS.roundState=1}function pQ($){$.GS.roundState=0}function oQ($){$.GS.roundState=2}function sQ($){$.GS.roundState=3}function cQ($){$.GS.roundState=4}function aQ($){$.GS.roundState=5}function rQ($){let Q=$.stack[--$.stackTop];k9(Q,$.GS),$.GS.roundState=6}function tQ($){let Q=$.stack[--$.stackTop];k9(Q,$.GS),$.GS.roundState=7}function eQ($){$.GS.autoFlip=!0}function $4($){$.GS.autoFlip=!1}function Q4($){$.GS.scanControl=$.stack[--$.stackTop]}function Z4($){$.GS.scanType=$.stack[--$.stackTop]}function J4($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop];if(Q===1||Q===2)if(Z)$.GS.instructControl|=Q;else $.GS.instructControl&=~Q}function q4($){let Q=$.stack[--$.stackTop],Z=0;if(Q&1)Z|=35;if(Q&32)Z|=4096;$.stack[$.stackTop++]=Z}function K4($){let Q=$.stack[--$.stackTop];if(Q<0||Q>=$.storageSize){$.error=`RS: invalid index ${Q}`,$.stack[$.stackTop++]=0;return}$.stack[$.stackTop++]=$.storage[Q]}function W4($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop];if(Z<0||Z>=$.storageSize){$.error=`WS: invalid index ${Z}`;return}$.storage[Z]=Q}function H4($){let Q=$.stack[--$.stackTop];if(Q<0||Q>=$.cvtSize){$.error=`RCVT: invalid index ${Q}`,$.stack[$.stackTop++]=0;return}$.stack[$.stackTop++]=$.cvt[Q]}function U4($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop];if(Z<0||Z>=$.cvtSize){$.error=`WCVTP: invalid index ${Z}`;return}$.cvt[Z]=Q}function N4($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop];if(Z<0||Z>=$.cvtSize){$.error=`WCVTF: invalid index ${Z}`;return}$.cvt[Z]=Math.round(Q*$.scale)}function _4($){let Q=$.stack[--$.stackTop],Z=$.zp0;if(Q<0||Q>=Z.nPoints){$.error=`UTP: invalid point ${Q}`;return}let J=$.GS.freeVector;if(J.y!==0)Z.tags[Q]&=~2;if(J.x!==0)Z.tags[Q]&=~1}function j4($){w4($,1,!0)}function Y4($){w4($,2,!1)}function w4($,Q,Z){let J=$.pts,q=J.nPoints,W=J.nContours;if(q===0||W===0)return;let K=0;for(let H=0;H<W;H++){let U=J.contours[H],N=-1;for(let w=K;w<=U;w++)if(J.tags[w]&Q){N=w;break}if(N<0){K=U+1;continue}let _=N,X=N+1,j=!1;while(!0){if(X>U){if(j)break;X=K,j=!0}if(X===N&&j){if(_!==N)X4(J,_,N,K,U,Z);break}if(J.tags[X]&Q){if(_!==X)X4(J,_,X,K,U,Z);_=X}X++}K=U+1}}function X4($,Q,Z,J,q,W){let K=W?$.org[Q]?.x:$.org[Q]?.y,H=W?$.org[Z]?.x:$.org[Z]?.y,U=W?$.cur[Q]?.x:$.cur[Q]?.y,N=W?$.cur[Z]?.x:$.cur[Z]?.y,_,X,j,w;if(K<=H)_=K,X=H,j=U,w=N;else _=H,X=K,j=N,w=U;let Y=X-_,V=w-j,z=Q+1;if(z>q)z=J;while(z!==Z){let G=W?$.org[z]?.x:$.org[z]?.y,E;if(G<=_)E=(W?$.cur[z]?.x:$.cur[z]?.y)+(j-_);else if(G>=X)E=(W?$.cur[z]?.x:$.cur[z]?.y)+(w-X);else if(Y!==0){let B=G-_;E=j+Math.round(B*V/Y)}else E=j;if(W)$.cur[z].x=E;else $.cur[z].y=E;if(z++,z>q)z=J}}function V4($){let Q=$.stack[$.stackTop-1];$.stack[$.stackTop++]=Q}function z4($){$.stackTop--}function G4($){$.stackTop=0}function E4($){let Q=$.stack[$.stackTop-1],Z=$.stack[$.stackTop-2];$.stack[$.stackTop-1]=Z,$.stack[$.stackTop-2]=Q}function A4($){let Q=$.stackTop;$.stack[$.stackTop++]=Q}function B4($){let Q=$.stack[--$.stackTop];if(Q<=0||Q>$.stackTop){$.error=`CINDEX: invalid index ${Q}`;return}$.stack[$.stackTop++]=$.stack[$.stackTop-Q]}function F4($){let Q=$.stack[--$.stackTop];if(Q<=0||Q>$.stackTop){$.error=`MINDEX: invalid index ${Q}`;return}let Z=$.stack[$.stackTop-Q];for(let J=$.stackTop-Q;J<$.stackTop-1;J++)$.stack[J]=$.stack[J+1];$.stack[$.stackTop-1]=Z}function D4($){let Q=$.stack[$.stackTop-1],Z=$.stack[$.stackTop-2],J=$.stack[$.stackTop-3];$.stack[$.stackTop-1]=J,$.stack[$.stackTop-2]=Q,$.stack[$.stackTop-3]=Z}function c9($,Q){for(let Z=0;Z<Q;Z++)$.stack[$.stackTop++]=$.code[$.IP++]}function a9($,Q){for(let Z=0;Z<Q;Z++){let J=$.code[$.IP++],q=$.code[$.IP++],W=J<<8|q;if(W>=32768)W-=65536;$.stack[$.stackTop++]=W}}function L4($){let Q=$.code[$.IP++];c9($,Q)}function M4($){let Q=$.code[$.IP++];a9($,Q)}function PW($){while($.IP<$.codeSize&&$.error===null){if(++$.instructionCount>$.maxInstructions){$.error="Instruction limit exceeded (possible infinite loop)";return}let Q=$.code[$.IP++];$.opcode=Q,OW($,Q)}}function OW($,Q){if(Q>=176&&Q<=183){c9($,Q-176+1);return}if(Q>=184&&Q<=191){a9($,Q-184+1);return}if(Q>=192&&Q<=223){HQ($,Q&31);return}if(Q>=224&&Q<=255){UQ($,Q&31);return}switch(Q){case A.SVTCA_Y:l9($,0);break;case A.SVTCA_X:l9($,1);break;case A.SPVTCA_Y:d9($,0);break;case A.SPVTCA_X:d9($,1);break;case A.SFVTCA_Y:n9($,0);break;case A.SFVTCA_X:n9($,1);break;case A.SPVTL_0:p9($,!1);break;case A.SPVTL_1:p9($,!0);break;case A.SFVTL_0:o9($,!1);break;case A.SFVTL_1:o9($,!0);break;case A.SDPVTL_0:s9($,!1);break;case A.SDPVTL_1:s9($,!0);break;case A.SPVFS:TQ($);break;case A.SFVFS:PQ($);break;case A.GPV:OQ($);break;case A.GFV:IQ($);break;case A.SFVTPV:vQ($);break;case A.ISECT:jQ($);break;case A.SRP0:kQ($);break;case A.SRP1:CQ($);break;case A.SRP2:SQ($);break;case A.SZP0:hQ($);break;case A.SZP1:yQ($);break;case A.SZP2:mQ($);break;case A.SZPS:bQ($);break;case A.SLOOP:gQ($);break;case A.RTG:iQ($);break;case A.RTHG:pQ($);break;case A.SMD:xQ($);break;case A.ELSE:s$($);break;case A.JMPR:a$($);break;case A.SCVTCI:uQ($);break;case A.SSWCI:fQ($);break;case A.SSW:lQ($);break;case A.DUP:V4($);break;case A.POP:z4($);break;case A.CLEAR:G4($);break;case A.SWAP:E4($);break;case A.DEPTH:A4($);break;case A.CINDEX:B4($);break;case A.MINDEX:F4($);break;case A.ROLL:D4($);break;case A.FDEF:e$($);break;case A.ENDF:$Q($);break;case A.CALL:QQ($);break;case A.LOOPCALL:ZQ($);break;case A.MDAP_0:C9($,!1);break;case A.MDAP_1:C9($,!0);break;case A.IUP_Y:Y4($);break;case A.IUP_X:j4($);break;case A.SHP_0:h9($,!1);break;case A.SHP_1:h9($,!0);break;case A.SHC_0:y9($,!1);break;case A.SHC_1:y9($,!0);break;case A.SHZ_0:m9($,!1);break;case A.SHZ_1:m9($,!0);break;case A.SHPIX:NQ($);break;case A.IP:_Q($);break;case A.MSIRP_0:b9($,!1);break;case A.MSIRP_1:b9($,!0);break;case A.ALIGNRP:XQ($);break;case A.ALIGNPTS:YQ($);break;case A.UTP:_4($);break;case A.RTDG:oQ($);break;case A.MIAP_0:S9($,!1);break;case A.MIAP_1:S9($,!0);break;case A.NPUSHB:L4($);break;case A.NPUSHW:M4($);break;case A.WS:W4($);break;case A.RS:K4($);break;case A.WCVTP:U4($);break;case A.RCVT:H4($);break;case A.GC_0:g9($,!1);break;case A.GC_1:g9($,!0);break;case A.SCFS:wQ($);break;case A.MD_0:x9($,!1);break;case A.MD_1:x9($,!0);break;case A.MPPEM:VQ($);break;case A.MPS:zQ($);break;case A.FLIPON:eQ($);break;case A.FLIPOFF:$4($);break;case A.DEBUG:break;case A.LT:m$($);break;case A.LTEQ:b$($);break;case A.GT:g$($);break;case A.GTEQ:x$($);break;case A.EQ:u$($);break;case A.NEQ:f$($);break;case A.ODD:l$($);break;case A.EVEN:d$($);break;case A.IF:o$($);break;case A.EIF:c$($);break;case A.AND:n$($);break;case A.OR:i$($);break;case A.NOT:p$($);break;case A.DELTAP1:BQ($);break;case A.SDB:dQ($);break;case A.SDS:nQ($);break;case A.ADD:T$($);break;case A.SUB:P$($);break;case A.DIV:O$($);break;case A.MUL:I$($);break;case A.ABS:v$($);break;case A.NEG:k$($);break;case A.FLOOR:C$($);break;case A.CEILING:S$($);break;case A.ROUND_0:h6($,0);break;case A.ROUND_1:h6($,1);break;case A.ROUND_2:h6($,2);break;case A.ROUND_3:h6($,3);break;case A.NROUND_0:y6($,0);break;case A.NROUND_1:y6($,1);break;case A.NROUND_2:y6($,2);break;case A.NROUND_3:y6($,3);break;case A.WCVTF:N4($);break;case A.DELTAP2:FQ($);break;case A.DELTAP3:DQ($);break;case A.DELTAC1:LQ($);break;case A.DELTAC2:MQ($);break;case A.DELTAC3:RQ($);break;case A.SROUND:rQ($);break;case A.S45ROUND:tQ($);break;case A.JROT:r$($);break;case A.JROF:t$($);break;case A.ROFF:aQ($);break;case A.RUTG:cQ($);break;case A.RDTG:sQ($);break;case A.SANGW:$.stackTop--;break;case A.AA:$.stackTop--;break;case A.FLIPPT:GQ($);break;case A.FLIPRGON:EQ($);break;case A.FLIPRGOFF:AQ($);break;case A.SCANCTRL:Q4($);break;case A.SCANTYPE:Z4($);break;case A.MAX:h$($);break;case A.MIN:y$($);break;case A.GETINFO:q4($);break;case A.IDEF:JQ($);break;case A.INSTCTRL:J4($);break;default:if(Q<$.maxIDefs&&$.IDefs[Q]?.active){let Z=$.IDefs[Q];if($.callStackTop>=$.maxCallStack){$.error="IDEF call: call stack overflow";return}let J=$.callStack[$.callStackTop++];J.callerIP=$.IP,J.callerRange=$.currentRange,J.def={id:Q,start:Z.start,end:Z.end,active:!0,range:Z.range},J.count=1,$.currentRange=Z.range;let q=$.codeRanges.get($.currentRange);if(q)$.code=q.code,$.codeSize=q.size;$.IP=Z.start}else $.error=`Unknown opcode 0x${Q.toString(16)}`}}function V8($,Q,Z){$.codeRanges.set(Q,{code:Z,size:Z.length})}function r9($,Q){let Z=$.codeRanges.get(Q);if(!Z)return;$.currentRange=Q,$.code=Z.code,$.codeSize=Z.size,$.IP=0,$.instructionCount=0,PW($)}function R4($){r9($,1)}function T4($){$.GS={...$.defaultGS},r9($,2),$.defaultGS={...$.GS}}function P4($,Q){$.GS={...$.defaultGS},$.zp0=$.pts,$.zp1=$.pts,$.zp2=$.pts,V8($,3,Q),r9($,3)}function O4($,Q=256,Z=64,J=64,q=16,W){let K=qQ(Q,Z,J,J,32,q);if(W)K.cvt=new Int32Array(W),K.cvtSize=W.length;return{ctx:K,unitsPerEM:$,fpgmExecuted:!1,currentPpem:0}}function I4($,Q){V8($.ctx,1,Q)}function v4($,Q){V8($.ctx,2,Q)}function IW($){if($.fpgmExecuted)return null;return $.ctx.error=null,R4($.ctx),$.fpgmExecuted=!0,$.ctx.error}function k4($,Q,Z){if(!$.fpgmExecuted){let J=IW($);if(J)return J}if($.currentPpem===Q)return null;return $.ctx.scale=Q*64/$.unitsPerEM,$.ctx.ppem=Q,$.ctx.pointSize=Z,vW($.ctx),$.ctx.error=null,T4($.ctx),$.currentPpem=Q,$.ctx.error}function vW($){for(let Q=0;Q<$.cvtSize;Q++)$.cvt[Q]=Math.round($.cvt[Q]*$.scale)}function C4($,Q){let Z=$.ctx,J=Q.xCoords.length,q=Q.contourEnds.length,W=J+4,K=Q6(W,q);K.nPoints=W,K.nContours=q;for(let Y=0;Y<J;Y++){let V=Math.round(Q.xCoords[Y]*Z.scale),z=Math.round(Q.yCoords[Y]*Z.scale);K.org[Y].x=V,K.org[Y].y=z,K.cur[Y].x=V,K.cur[Y].y=z,K.orus[Y].x=Q.xCoords[Y],K.orus[Y].y=Q.yCoords[Y],K.tags[Y]=Q.flags[Y]}let H=1/0;for(let Y=0;Y<J;Y++)if(Q.xCoords[Y]<H)H=Q.xCoords[Y];if(!Number.isFinite(H))H=0;let U=Q.lsb??0,N=Q.advanceWidth??0,_=Math.round((H-U)*Z.scale);K.org[J].x=_,K.org[J].y=0,K.cur[J].x=_,K.cur[J].y=0,K.orus[J].x=H-U,K.orus[J].y=0,K.tags[J]=0;let X=Math.round((H-U+N)*Z.scale);K.org[J+1].x=X,K.org[J+1].y=0,K.cur[J+1].x=X,K.cur[J+1].y=0,K.orus[J+1].x=H-U+N,K.orus[J+1].y=0,K.tags[J+1]=0;for(let Y=J+2;Y<W;Y++)K.org[Y].x=0,K.org[Y].y=0,K.cur[Y].x=0,K.cur[Y].y=0,K.orus[Y].x=0,K.orus[Y].y=0,K.tags[Y]=0;for(let Y=0;Y<q;Y++)K.contours[Y]=Q.contourEnds[Y];Z.pts=K,Z.zp0=K,Z.zp1=K,Z.zp2=K,Z.twilight.nPoints=Z.twilight.org.length;for(let Y=0;Y<Z.twilight.nPoints;Y++)Z.twilight.org[Y].x=0,Z.twilight.org[Y].y=0,Z.twilight.cur[Y].x=0,Z.twilight.cur[Y].y=0,Z.twilight.tags[Y]=0;if(Z.error=null,Q.instructions.length>0)P4(Z,Q.instructions);let j=Array(J),w=Array(J);for(let Y=0;Y<J;Y++)j[Y]=K.cur[Y]?.x,w[Y]=K.cur[Y]?.y;return{xCoords:j,yCoords:w,flags:Q.flags,contourEnds:Q.contourEnds,error:Z.error}}function t9($){if($.length===0)return[];let Q=[];if($.some((J)=>J.cubic))return kW($);return CW($)}function kW($){if($.length===0)return[];let Q=[],Z=0,J=$[0];if(!J)return[];Q.push({type:"M",x:J.x,y:J.y}),Z=1;while(Z<$.length){let q=$[Z];if(!q)break;if(q.onCurve)Q.push({type:"L",x:q.x,y:q.y}),Z++;else if(q.cubic){let W=q,K=$[Z+1],H=$[Z+2];if(!K||!H){Z++;continue}Q.push({type:"C",x1:W.x,y1:W.y,x2:K.x,y2:K.y,x:H.x,y:H.y}),Z+=3}else{let W=q,K=$[Z+1];if(!K){Z++;continue}let H;if(K.onCurve)H=K,Z+=2;else H={x:(W.x+K.x)/2,y:(W.y+K.y)/2,onCurve:!0},Z++;Q.push({type:"Q",x1:W.x,y1:W.y,x:H.x,y:H.y})}}return Q.push({type:"Z"}),Q}function CW($){if($.length===0)return[];let Q=[],Z=0;for(let[N,_]of $.entries())if(_.onCurve){Z=N;break}let J=$.every((N)=>!N.onCurve),q;if(J){let N=$[0],_=$[$.length-1];if(!N||!_)return[];q={x:(N.x+_.x)/2,y:(N.y+_.y)/2,onCurve:!0},Z=0}else{let N=$[Z];if(!N)return[];q=N}Q.push({type:"M",x:q.x,y:q.y});let W=$.length,K=J?0:(Z+1)%W,H=q,U=0;while(U<W){let N=$[K];if(!N)break;if(N.onCurve)Q.push({type:"L",x:N.x,y:N.y}),H=N;else{let _=(K+1)%W,X=$[_];if(!X)break;let j;if(X.onCurve)j=X,K=_,U++;else j={x:(N.x+X.x)/2,y:(N.y+X.y)/2,onCurve:!0};Q.push({type:"Q",x1:N.x,y1:N.y,x:j.x,y:j.y}),H=j}if(K=(K+1)%W,U++,H.x===q.x&&H.y===q.y)break}return Q.push({type:"Z"}),Q}function s1($,Q){let Z=$.getGlyphContours(Q);if(!Z)return null;let J=[];for(let W of Z)J.push(...t9(W));let q=$.getGlyphBounds(Q);return{commands:J,bounds:q}}function z8($,Q){let Z=Q?.scale??1,J=Q?.flipY??!0,q=[];for(let W of $.commands)switch(W.type){case"M":q.push(`M ${W.x*Z} ${J?-W.y*Z:W.y*Z}`);break;case"L":q.push(`L ${W.x*Z} ${J?-W.y*Z:W.y*Z}`);break;case"Q":q.push(`Q ${W.x1*Z} ${J?-W.y1*Z:W.y1*Z} ${W.x*Z} ${J?-W.y*Z:W.y*Z}`);break;case"C":q.push(`C ${W.x1*Z} ${J?-W.y1*Z:W.y1*Z} ${W.x2*Z} ${J?-W.y2*Z:W.y2*Z} ${W.x*Z} ${J?-W.y*Z:W.y*Z}`);break;case"Z":q.push("Z");break}return q.join(" ")}function G8($,Q,Z){let J=Z?.scale??1,q=Z?.flipY??!0,W=Z?.offsetX??0,K=Z?.offsetY??0;for(let H of Q.commands)switch(H.type){case"M":$.moveTo(H.x*J+W,(q?-H.y:H.y)*J+K);break;case"L":$.lineTo(H.x*J+W,(q?-H.y:H.y)*J+K);break;case"Q":$.quadraticCurveTo(H.x1*J+W,(q?-H.y1:H.y1)*J+K,H.x*J+W,(q?-H.y:H.y)*J+K);break;case"C":$.bezierCurveTo(H.x1*J+W,(q?-H.y1:H.y1)*J+K,H.x2*J+W,(q?-H.y2:H.y2)*J+K,H.x*J+W,(q?-H.y:H.y)*J+K);break;case"Z":$.closePath();break}}function SW($,Q,Z){let J=s1($,Q);if(!J)return null;let q=Z?.fontSize??100,W=Z?.fill??"currentColor",K=Z?.stroke,H=Z?.strokeWidth??1,U=q/$.unitsPerEm,N=J.bounds;if(!N)return null;let _=K?H/2:0,X=Math.ceil((N.xMax-N.xMin)*U+_*2),j=Math.ceil((N.yMax-N.yMin)*U+_*2),w=`${N.xMin-_} ${-N.yMax-_} ${N.xMax-N.xMin+_*2} ${N.yMax-N.yMin+_*2}`,Y=z8(J,{flipY:!0,scale:1}),V=K?` stroke="${K}" stroke-width="${H}"`:"";return`<svg xmlns="http://www.w3.org/2000/svg" width="${X}" height="${j}" viewBox="${w}">
|
|
4
|
+
<path d="${Y}" fill="${W}"${V}/>
|
|
5
|
+
</svg>`}function hW($,Q,Z,J){let q=J?.fontSize??16,W=J?.x??0,K=J?.y??0,H=J?.fill??"black",U=J?.stroke,N=J?.strokeWidth??1,_=q/Q.unitsPerEm;if($.fillStyle=H,U){if($.strokeStyle=U,$.lineWidth=N*_,J?.lineCap)$.lineCap=J.lineCap;if(J?.lineJoin)$.lineJoin=J.lineJoin}let X=W,j=K;for(let w of Z){let Y=s1(Q,w.glyphId);if(Y){if($.beginPath(),G8($,Y,{scale:_,flipY:!0,offsetX:X+w.xOffset*_,offsetY:j-w.yOffset*_}),H!=="none")$.fill();if(U)$.stroke()}X+=w.xAdvance*_,j+=w.yAdvance*_}}function yW($,Q,Z){let J=Z?.fontSize??100,q=Z?.fill??"currentColor",W=Z?.stroke,K=Z?.strokeWidth??1,H=J/$.unitsPerEm,U=[],N=0,_=0,X=1/0,j=-1/0,w=1/0,Y=-1/0;for(let F of Q){let v=s1($,F.glyphId);if(v?.bounds){let L=N+F.xOffset*H,h=_-F.yOffset*H,S=v.commands.map((x)=>{switch(x.type){case"M":case"L":return{type:x.type,x:x.x*H+L,y:-x.y*H+h};case"Q":return{type:"Q",x1:x.x1*H+L,y1:-x.y1*H+h,x:x.x*H+L,y:-x.y*H+h};case"C":return{type:"C",x1:x.x1*H+L,y1:-x.y1*H+h,x2:x.x2*H+L,y2:-x.y2*H+h,x:x.x*H+L,y:-x.y*H+h};case"Z":return{type:"Z"};default:return x}}),I=z8({commands:S,bounds:null},{flipY:!1,scale:1});U.push(I);let b=v.bounds;X=Math.min(X,L+b.xMin*H),j=Math.max(j,L+b.xMax*H),w=Math.min(w,h-b.yMax*H),Y=Math.max(Y,h-b.yMin*H)}N+=F.xAdvance*H,_+=F.yAdvance*H}if(U.length===0)return'<svg xmlns="http://www.w3.org/2000/svg"></svg>';let V=W?K/2:0,z=Math.ceil(j-X+V*2),G=Math.ceil(Y-w+V*2),E=`${Math.floor(X-V)} ${Math.floor(w-V)} ${z} ${G}`,B=W?` stroke="${W}" stroke-width="${K}"${Z?.lineCap?` stroke-linecap="${Z.lineCap}"`:""}${Z?.lineJoin?` stroke-linejoin="${Z.lineJoin}"`:""}`:"";return`<svg xmlns="http://www.w3.org/2000/svg" width="${z}" height="${G}" viewBox="${E}">
|
|
6
|
+
<path d="${U.join(" ")}" fill="${q}"${B}/>
|
|
7
|
+
</svg>`}function mW($){let Q=[];for(let[Z,J]of $.infos.entries()){let q=$.positions[Z];if(!q)continue;Q.push({glyphId:J.glyphId,xOffset:q.xOffset,yOffset:q.yOffset,xAdvance:q.xAdvance,yAdvance:q.yAdvance})}return Q}function e9($,Q,Z){let J=$.getGlyphContoursWithVariation(Q,Z);if(!J)return null;let q=[];for(let K of J)q.push(...t9(K));let W=$.getGlyphBounds(Q);return{commands:q,bounds:W}}function bW($,Q,Z,J,q){let W=q?.fontSize??16,K=q?.x??0,H=q?.y??0,U=q?.fill??"black",N=q?.stroke,_=q?.strokeWidth??1,X=W/Q.unitsPerEm;if($.fillStyle=U,N){if($.strokeStyle=N,$.lineWidth=_*X,q?.lineCap)$.lineCap=q.lineCap;if(q?.lineJoin)$.lineJoin=q.lineJoin}let j=K,w=H;for(let Y of Z){let V=e9(Q,Y.glyphId,J);if(V){if($.beginPath(),G8($,V,{scale:X,flipY:!0,offsetX:j+Y.xOffset*X,offsetY:w-Y.yOffset*X}),U!=="none")$.fill();if(N)$.stroke()}j+=Y.xAdvance*X,w+=Y.yAdvance*X}}function gW($,Q,Z,J){let q=J?.fontSize??100,W=J?.fill??"currentColor",K=J?.stroke,H=J?.strokeWidth??1,U=q/$.unitsPerEm,N=[],_=0,X=0,j=1/0,w=-1/0,Y=1/0,V=-1/0;for(let v of Q){let L=e9($,v.glyphId,Z);if(L?.bounds){let h=_+v.xOffset*U,S=X-v.yOffset*U,I=L.commands.map((P)=>{switch(P.type){case"M":case"L":return{type:P.type,x:P.x*U+h,y:-P.y*U+S};case"Q":return{type:"Q",x1:P.x1*U+h,y1:-P.y1*U+S,x:P.x*U+h,y:-P.y*U+S};case"C":return{type:"C",x1:P.x1*U+h,y1:-P.y1*U+S,x2:P.x2*U+h,y2:-P.y2*U+S,x:P.x*U+h,y:-P.y*U+S};case"Z":return{type:"Z"};default:return P}}),b=z8({commands:I,bounds:null},{flipY:!1,scale:1});N.push(b);let x=L.bounds;j=Math.min(j,h+x.xMin*U),w=Math.max(w,h+x.xMax*U),Y=Math.min(Y,S-x.yMax*U),V=Math.max(V,S-x.yMin*U)}_+=v.xAdvance*U,X+=v.yAdvance*U}if(N.length===0)return'<svg xmlns="http://www.w3.org/2000/svg"></svg>';let z=K?H/2:0,G=Math.ceil(w-j+z*2),E=Math.ceil(V-Y+z*2),B=`${Math.floor(j-z)} ${Math.floor(Y-z)} ${G} ${E}`,F=K?` stroke="${K}" stroke-width="${H}"${J?.lineCap?` stroke-linecap="${J.lineCap}"`:""}${J?.lineJoin?` stroke-linejoin="${J.lineJoin}"`:""}`:"";return`<svg xmlns="http://www.w3.org/2000/svg" width="${G}" height="${E}" viewBox="${B}">
|
|
8
|
+
<path d="${N.join(" ")}" fill="${W}"${F}/>
|
|
9
|
+
</svg>`}function xW($,Q,Z){let J=Z/Q.unitsPerEm,q=0;for(let W of $)q+=W.xAdvance;return q*J}function uW($,Q){let Z=new Path2D;return G8(Z,$,Q),Z}var W1=8,Z1=256;function g1($){return $>>8}function w6($){return $&255}function x1($){return $<0?-$:$}var fW=2048,S4=2147483647;class E8 extends Error{constructor(){super("Cell pool overflow");this.name="PoolOverflowError"}}class $0{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($=fW){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=S4,this.pool[this.nullCellIndex].next=-1,this.ycells=[],this.freeIndex=0,this.bandMinY=-1e4,this.bandMaxY=1e4}setClip($,Q,Z,J){this.clipMinX=$,this.clipMinY=Q,this.clipMaxX=Z,this.clipMaxY=J}setBandBounds($,Q){this.bandMinY=$,this.bandMaxY=Q,this.bandSet=!0;let Z=Q-$;if(this.ycells.length<Z)this.ycells=Array(Z);for(let J=0;J<Z;J++)this.ycells[J]=this.nullCellIndex;this.freeIndex=0}reset(){if(this.freeIndex=0,this.pool[this.nullCellIndex].x=S4,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=g1($),J=g1(Q);if(this.currentCellIndex>=0&&this.currentX===Z&&this.currentY===J)return;if(J<this.bandMinY||J>=this.bandMaxY||J<this.clipMinY||J>=this.clipMaxY||Z<this.clipMinX||Z>=this.clipMaxX){this.currentCellIndex=this.nullCellIndex,this.currentX=Z,this.currentY=J;return}this.currentX=Z,this.currentY=J,this.currentCellIndex=this.findOrCreateCell(Z,J),this.minY=Math.min(this.minY,J),this.maxY=Math.max(this.maxY,J),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 J=-1,q=this.ycells[Z];while(q!==this.nullCellIndex){let H=this.pool[q];if(H.x===$)return q;if(H.x>$)break;J=q,q=H.next}if(this.freeIndex>=this.nullCellIndex)throw new E8;let W=this.freeIndex++,K=this.pool[W];if(K.x=$,K.area=0,K.cover=0,K.next=q,J===-1)this.ycells[Z]=W;else this.pool[J].next=W;return W}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 J=0;J<Q;J++)Z[J]=this.nullCellIndex;for(let J=0;J<this.ycells.length;J++)Z[Q+J]=this.ycells[J];this.ycells=Z,this.bandMinY=$}else if($>=this.bandMaxY){let Q=$+1,Z=this.ycells.length,J=Q-this.bandMinY;if(J>Z){let q=Array(J);for(let W=0;W<Z;W++)q[W]=this.ycells[W];for(let W=Z;W<J;W++)q[W]=this.nullCellIndex;this.ycells=q}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=[],J=this.ycells[Q];while(J!==this.nullCellIndex)Z.push(this.pool[J]),J=this.pool[J]?.next;return Z}*iterateCells(){for(let $=0;$<this.ycells.length;$++){let Q=this.bandMinY+$,Z=this.ycells[$];if(Z===this.nullCellIndex)continue;let J=[];while(Z!==this.nullCellIndex)J.push(this.pool[Z]),Z=this.pool[Z]?.next;if(J.length>0)yield{y:Q,cells:J}}}*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}}var lW=32,h4=16;class m6{cells;x=0;y=0;minX=0;minY=0;maxX=0;maxY=0;constructor(){this.cells=new $0}setClip($,Q,Z,J){this.minX=$,this.minY=Q,this.maxX=Z,this.maxY=J,this.cells.setClip($,Q,Z,J)}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=g1(this.y),J=g1(Q);if(Z>=this.maxY&&J>=this.maxY||Z<this.minY&&J<this.minY)return;let q=w6(this.y),W=w6(Q);if(Z===J){this.renderScanline(Z,this.x,q,$,W);return}let K=$-this.x,H=Q-this.y;if(K===0){let Y=g1(this.x),V=w6(this.x)*2,z,G;if(H>0)z=Z1,G=1;else z=0,G=-1;let E=z-q;this.cells.setCurrentCell(this.x,Z<<W1),this.cells.addArea(E*V,E),Z+=G,this.cells.setCurrentCell(this.x,Z<<W1),E=z+z-Z1;while(Z!==J)this.cells.addArea(E*V,E),Z+=G,this.cells.setCurrentCell(this.x,Z<<W1);E=W-Z1+z,this.cells.addArea(E*V,E);return}let U=this.x,N,_;if(H>0)_=Z1,N=1;else _=0,N=-1;let X=_-q,j=this.mulDiv(K,X,x1(H)),w=U+j;if(this.renderScanline(Z,U,q,w,_),U=w,Z+=N,this.cells.setCurrentCell(U,Z<<W1),Z!==J){let Y=this.mulDiv(K,Z1,x1(H));X=_+_-Z1;while(Z!==J)w=U+Y,this.renderScanline(Z,U,Z1-_,w,_),U=w,Z+=N,this.cells.setCurrentCell(U,Z<<W1)}X=W-Z1+_,this.renderScanline(Z,U,Z1-_,$,W)}renderScanline($,Q,Z,J,q){let W=g1(Q),K=g1(J);if(Z===q){this.cells.setCurrentCell(J,$<<W1);return}let H=w6(Q),U=w6(J);if(W===K){let z=q-Z;this.cells.setCurrentCell(Q,$<<W1),this.cells.addArea(z*(H+U),z);return}let N=J-Q,_=q-Z,X,j;if(N>0)X=Z1,j=1;else X=0,j=-1;let w=this.mulDiv(_,X-H,x1(N));this.cells.setCurrentCell(Q,$<<W1),this.cells.addArea(w*(H+X),w);let Y=Z+w,V=W+j;if(this.cells.setCurrentCell(V<<W1,$<<W1),V!==K){let z=this.mulDiv(_,Z1,x1(N));while(V!==K)w=z,this.cells.addArea(w*Z1,w),Y+=w,V+=j,this.cells.setCurrentCell(V<<W1,$<<W1)}w=q-Y,this.cells.addArea(w*(U+Z1-X),w)}mulDiv($,Q,Z){if(Z===0)return 0;return Math.trunc($*Q/Z)}conicTo($,Q,Z,J){let q=this.x,W=this.y,K=$-q,H=Q-W,U=Z-$,N=J-Q,_=Math.sqrt(K*K+H*H)+Math.sqrt(U*U+N*N),X=Math.max(4,Math.ceil(_/(Z1*4)));for(let j=1;j<=X;j++){let w=j/X,Y=1-w,V=Math.round(Y*Y*q+2*Y*w*$+w*w*Z),z=Math.round(Y*Y*W+2*Y*w*Q+w*w*J);this.renderLine(V,z),this.x=V,this.y=z}this.x=Z,this.y=J}cubicTo($,Q,Z,J,q,W){this.subdivCubic(this.x,this.y,$,Q,Z,J,q,W,0),this.x=q,this.y=W}subdivCubic($,Q,Z,J,q,W,K,H,U){if(U>16){this.renderLine(K,H),this.x=K,this.y=H;return}let N=$+Z>>1,_=Q+J>>1,X=Z+q>>1,j=J+W>>1,w=q+K>>1,Y=W+H>>1,V=N+X>>1,z=_+j>>1,G=X+w>>1,E=j+Y>>1,B=V+G>>1,F=z+E>>1,v=K-$,L=H-Q,h=x1((Z-K)*L-(J-H)*v),S=x1((q-K)*L-(W-H)*v);if(h+S<=(Z1>>1)*(x1(v)+x1(L))){this.renderLine(K,H),this.x=K,this.y=H;return}this.subdivCubic($,Q,N,_,V,z,B,F,U+1),this.subdivCubic(B,F,G,E,w,Y,K,H,U+1)}sweep($,Q=0){let Z=$.pitch,J=Z<0?($.rows-1)*-Z:0;for(let{y:q,cells:W}of this.cells.iterateCells()){if(q<0||q>=$.rows)continue;let K=0,H=0,U=Z<0?J-q*-Z:q*Z;for(let N of W){if(N.x>H&&K!==0){let w=this.applyFillRule(K,Q);if(w>0){let Y=Math.max(0,H),V=Math.min($.width,N.x);this.fillSpan($,U,Y,V,w)}}let X=K*(Z1*2)-N.area,j=this.applyFillRule(X>>W1+1,Q);if(j>0&&N.x>=0&&N.x<$.width)this.setPixel($,U,N.x,j);K+=N.cover,H=N.x+1}if(H<$.width&&K!==0){let N=this.applyFillRule(K,Q);if(N>0)this.fillSpan($,U,H,$.width,N)}}}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,J,q){if($.pixelMode===1)for(let W=Z;W<J;W++)$.buffer[Q+W]=q;else if($.pixelMode===0){if(q>=128)for(let W=Z;W<J;W++){let K=Q+(W>>3),H=7-(W&7);$.buffer[K]|=1<<H}}else if($.pixelMode===2)for(let W=Z;W<J;W++){let K=Q+W*3;$.buffer[K]=q,$.buffer[K+1]=q,$.buffer[K+2]=q}}setPixel($,Q,Z,J){if($.pixelMode===1)$.buffer[Q+Z]=J;else if($.pixelMode===0){if(J>=128){let q=Q+(Z>>3),W=7-(Z&7);$.buffer[q]|=1<<W}}else if($.pixelMode===2){let q=Q+Z*3;$.buffer[q]=J,$.buffer[q+1]=J,$.buffer[q+2]=J}}sweepSpans($,Q=0,Z){for(let{y:J,cells:q}of this.cells.iterateCells()){let W=[],K=0,H=-1;for(let U of q){if(K!==0&&U.x>H+1){let j=this.applyFillRule(K,Q);if(j>0)W.push({x:H+1,len:U.x-H-1,coverage:j})}let _=K*(Z1*2)-U.area,X=this.applyFillRule(_>>W1+1,Q);if(X>0)W.push({x:U.x,len:1,coverage:X});K+=U.cover,H=U.x}if(W.length>0)$(J,W,Z)}}sweepDirect($,Q=0,Z=0,J=1/0,q){let W=[];for(let{y:K,cells:H}of this.cells.iterateCells()){let U=0,N=Z;for(let _ of H){if(U!==0&&_.x>N){let Y=this.applyFillRule(U,Q);if(Y>0){if(W.push({x:N,len:_.x-N,coverage:Y}),W.length>=h4)$(K,W.splice(0,W.length),q)}}let j=U*(Z1*2)-_.area,w=this.applyFillRule(j>>W1+1,Q);if(w>0&&_.x>=Z&&_.x<J){if(W.push({x:_.x,len:1,coverage:w}),W.length>=h4)$(K,W.splice(0,W.length),q)}U+=_.cover,N=_.x+1}if(U!==0&&N<J){let _=this.applyFillRule(U,Q);if(_>0)W.push({x:N,len:Math.min(J,this.maxX+1)-N,coverage:_})}if(W.length>0)$(K,W.splice(0,W.length),q)}}renderWithBands($,Q,Z,J=0){let W=Z.maxY-Z.minY,K=Math.max(1,Math.floor(256));if(W<=K)K=W;let H=Z.minX??0,U=Z.maxX??$.width,N=[];for(let X=Z.minY;X<Z.maxY;X+=K)N.push({minY:X,maxY:Math.min(X+K,Z.maxY),minX:H,maxX:U});let _=0;while(N.length>0&&_<lW){let X=N.pop();if(!X)break;if(this.renderBandWithXClip($,Q,X.minY,X.maxY,X.minX,X.maxX,J))continue;let j=X.minX+X.maxX>>1;if(j>X.minX){N.push({minY:X.minY,maxY:X.maxY,minX:j,maxX:X.maxX}),N.push({minY:X.minY,maxY:X.maxY,minX:X.minX,maxX:j}),_++;continue}let w=X.minY+X.maxY>>1;if(w>X.minY){N.push({minY:w,maxY:X.maxY,minX:X.minX,maxX:X.maxX}),N.push({minY:X.minY,maxY:w,minX:X.minX,maxX:X.maxX}),_++;continue}console.warn(`Rasterizer: band overflow at (${X.minX},${X.minY}), cannot bisect further`)}}renderBandWithXClip($,Q,Z,J,q,W,K){this.cells.setBandBounds(Z,J),this.cells.reset(),this.minY=Z,this.maxY=J;try{return Q(),this.sweepBandWithXClip($,Z,J,q,W,K),!0}catch(H){if(H instanceof E8)return!1;throw H}}sweepBandWithXClip($,Q,Z,J,q,W){let K=$.pitch,H=K<0?($.rows-1)*-K:0;for(let U=Q;U<Z;U++){if(U<0||U>=$.rows)continue;let N=0,_=J,X=K<0?H-U*-K:U*K;for(let j of this.cells.iterateRowCells(U)){if(j.x<J){N+=j.cover;continue}if(j.x>=q){if(N!==0&&_<q){let z=this.applyFillRule(N,W);if(z>0)this.fillSpan($,X,Math.max(0,_),Math.min($.width,q),z)}break}if(j.x>_&&N!==0){let z=this.applyFillRule(N,W);if(z>0){let G=Math.max(0,_),E=Math.min($.width,j.x);this.fillSpan($,X,G,E,z)}}let Y=N*(Z1*2)-j.area,V=this.applyFillRule(Y>>W1+1,W);if(V>0&&j.x>=0&&j.x<$.width)this.setPixel($,X,j.x,V);N+=j.cover,_=j.x+1}if(_<q&&_<$.width&&N!==0){let j=this.applyFillRule(N,W);if(j>0)this.fillSpan($,X,_,Math.min($.width,q),j)}}}}function A8($,Q,Z,J=0,q=0,W=!0){let K=0,H=0,U=!1;for(let N of Q.commands)switch(N.type){case"M":{if(U)$.lineTo(K,H);let _=G1(N.x,Z,J),X=W?J6(N.y,Z,q):G1(N.y,Z,q);$.moveTo(_,X),K=_,H=X,U=!0;break}case"L":{let _=G1(N.x,Z,J),X=W?J6(N.y,Z,q):G1(N.y,Z,q);$.lineTo(_,X);break}case"Q":{let _=G1(N.x1,Z,J),X=W?J6(N.y1,Z,q):G1(N.y1,Z,q),j=G1(N.x,Z,J),w=W?J6(N.y,Z,q):G1(N.y,Z,q);$.conicTo(_,X,j,w);break}case"C":{let _=G1(N.x1,Z,J),X=W?J6(N.y1,Z,q):G1(N.y1,Z,q),j=G1(N.x2,Z,J),w=W?J6(N.y2,Z,q):G1(N.y2,Z,q),Y=G1(N.x,Z,J),V=W?J6(N.y,Z,q):G1(N.y,Z,q);$.cubicTo(_,X,j,w,Y,V);break}case"Z":{if(U)$.lineTo(K,H),U=!1;break}}if(U)$.lineTo(K,H)}function G1($,Q,Z){return Math.round(($*Q+Z)*Z1)}function J6($,Q,Z){return Math.round((-$*Q+Z)*Z1)}function y4($,Q,Z=!0){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 m4($,Q){let{width:Z,height:J,scale:q,offsetX:W=0,offsetY:K=0,flipY:H=!1,spread:U=8}=Q,N=K1(Z,J,1),_=dW($,q,W,K,H);if(_.length===0)return N.buffer.fill(0),N;for(let X=0;X<J;X++)for(let j=0;j<Z;j++){let w=j+0.5,Y=X+0.5,V=1/0;for(let F of _){let v=nW(w,Y,F);V=Math.min(V,v)}let E=128+(sW(w,Y,_)?V:-V)/U*127,B=Math.max(0,Math.min(255,Math.round(E)));N.buffer[X*N.pitch+j]=B}return N}function dW($,Q,Z,J,q){let W=[],K=null,H=null,U=(N,_)=>({x:N*Q+Z,y:q?-(_*Q)+J:_*Q+J});for(let N of $.commands)switch(N.type){case"M":K=U(N.x,N.y),H=K;break;case"L":if(K){let _=U(N.x,N.y);W.push({type:"line",p0:K,p1:_}),K=_}break;case"Q":if(K){let _=U(N.x1,N.y1),X=U(N.x,N.y);W.push({type:"quadratic",p0:K,p1:_,p2:X}),K=X}break;case"C":if(K){let _=U(N.x1,N.y1),X=U(N.x2,N.y2),j=U(N.x,N.y);W.push({type:"cubic",p0:K,p1:_,p2:X,p3:j}),K=j}break;case"Z":if(K&&H){if(Math.abs(K.x-H.x)>0.001||Math.abs(K.y-H.y)>0.001)W.push({type:"line",p0:K,p1:H});K=H}break}return W}function nW($,Q,Z){switch(Z.type){case"line":return iW($,Q,Z.p0,Z.p1);case"quadratic":return pW($,Q,Z.p0,Z.p1,Z.p2);case"cubic":return oW($,Q,Z.p0,Z.p1,Z.p2,Z.p3)}}function iW($,Q,Z,J){let q=J.x-Z.x,W=J.y-Z.y,K=q*q+W*W;if(K<0.0001){let j=$-Z.x,w=Q-Z.y;return Math.sqrt(j*j+w*w)}let H=(($-Z.x)*q+(Q-Z.y)*W)/K;H=Math.max(0,Math.min(1,H));let U=Z.x+H*q,N=Z.y+H*W,_=$-U,X=Q-N;return Math.sqrt(_*_+X*X)}function pW($,Q,Z,J,q){let W=1/0,K=32;for(let H=0;H<=K;H++){let U=H/K,N=1-U,_=N*N*Z.x+2*N*U*J.x+U*U*q.x,X=N*N*Z.y+2*N*U*J.y+U*U*q.y,j=$-_,w=Q-X,Y=Math.sqrt(j*j+w*w);W=Math.min(W,Y)}return W}function oW($,Q,Z,J,q,W){let K=1/0,H=32;for(let U=0;U<=H;U++){let N=U/H,_=1-N,X=_*_*_*Z.x+3*_*_*N*J.x+3*_*N*N*q.x+N*N*N*W.x,j=_*_*_*Z.y+3*_*_*N*J.y+3*_*N*N*q.y+N*N*N*W.y,w=$-X,Y=Q-j,V=Math.sqrt(w*w+Y*Y);K=Math.min(K,V)}return K}function sW($,Q,Z){let J=0;for(let q of Z){let W=cW(q);for(let K=0;K<W.length-1;K++){let H=W[K],U=W[K+1];if(!H||!U)continue;if(H.y>Q!==U.y>Q){let N=(U.x-H.x)/(U.y-H.y),_=H.x+N*(Q-H.y);if($<_)J++}}}return(J&1)===1}function cW($){switch($.type){case"line":return[$.p0,$.p1];case"quadratic":{let Q=[$.p0],Z=16;for(let J=1;J<=16;J++){let q=J/16,W=1-q;Q.push({x:W*W*$.p0.x+2*W*q*$.p1.x+q*q*$.p2.x,y:W*W*$.p0.y+2*W*q*$.p1.y+q*q*$.p2.y})}return Q}case"cubic":{let Q=[$.p0],Z=16;for(let J=1;J<=16;J++){let q=J/16,W=1-q;Q.push({x:W*W*W*$.p0.x+3*W*W*q*$.p1.x+3*W*q*q*$.p2.x+q*q*q*$.p3.x,y:W*W*W*$.p0.y+3*W*W*q*$.p1.y+3*W*q*q*$.p2.y+q*q*q*$.p3.y})}return Q}}}function Q0($){let Q=Math.sqrt($.x*$.x+$.y*$.y);if(Q===0)return{x:0,y:0};return{x:$.x/Q,y:$.y/Q}}function R1($){return{x:-$.y,y:$.x}}function aW($,Q){let Z=$.x*Q.x+$.y*Q.y,J=$.x*Q.y-$.y*Q.x;return Math.atan2(J,Z)}function b4($,Q,Z,J,q){let W=R1(Z),K={x:Q.x+W.x*J*(q?1:-1),y:Q.y+W.y*J*(q?1:-1)},H={x:Q.x-W.x*J*(q?1:-1),y:Q.y-W.y*J*(q?1:-1)},U={x:Q.x+Z.x*J,y:Q.y+Z.y*J},N={x:K.x+Z.x*J*0.5523,y:K.y+Z.y*J*0.5523},_={x:H.x+Z.x*J*0.5523,y:H.y+Z.y*J*0.5523};$.push({type:"Q",x1:N.x,y1:N.y,x:U.x,y:U.y}),$.push({type:"Q",x1:_.x,y1:_.y,x:H.x,y:H.y})}function g4($,Q,Z,J){let q=R1(Z),W={x:Q.x+Z.x*J,y:Q.y+Z.y*J},K={x:W.x+q.x*J,y:W.y+q.y*J},H={x:W.x-q.x*J,y:W.y-q.y*J};$.push({type:"L",x:K.x,y:K.y}),$.push({type:"L",x:H.x,y:H.y})}function B8($,Q,Z,J,q,W,K,H){let U=aW(Z,J),N=H?U<0:U>0;if(Math.abs(U)<0.01)return;let _=R1(Z),X=R1(J),j=H?1:-1,w={x:Q.x+_.x*q*j,y:Q.y+_.y*q*j},Y={x:Q.x+X.x*q*j,y:Q.y+X.y*q*j};if(!N){$.push({type:"L",x:Y.x,y:Y.y});return}switch(W){case"round":{let V=Math.abs(U),z=Math.max(2,Math.ceil(V/(Math.PI/4)));for(let G=1;G<=z;G++){let E=G/z,B=Math.atan2(_.y,_.x)+U*E*j,F=Q.x+Math.cos(B)*q*j,v=Q.y+Math.sin(B)*q*j;$.push({type:"L",x:F,y:v})}break}case"miter":{if(1/Math.sin(Math.abs(U)/2)<=K){let z=U/2,G=Q0({x:Z.x+J.x,y:Z.y+J.y}),E=q/Math.cos(z),B={x:Q.x+G.x*E*j,y:Q.y+G.y*E*j};$.push({type:"L",x:B.x,y:B.y}),$.push({type:"L",x:Y.x,y:Y.y})}else $.push({type:"L",x:Y.x,y:Y.y});break}default:$.push({type:"L",x:Y.x,y:Y.y});break}}function rW($,Q){if($.length<2)return[];let{width:Z,lineJoin:J,miterLimit:q}=Q,W=Z/2,K=[],H=$.length,U=[];for(let z=0;z<H;z++){let G=$[z],E=$[(z+1)%H];if(!G||!E)continue;U.push(Q0({x:E.x-G.x,y:E.y-G.y}))}let N=U[0],_=$[0];if(!N||!_)return[];let X=R1(N);K.push({type:"M",x:_.x+X.x*W,y:_.y+X.y*W});for(let z=0;z<H;z++){let G=$[z],E=$[(z+1)%H],B=U[z],F=U[(z+1)%H];if(!G||!E||!B||!F)continue;let v=R1(B);K.push({type:"L",x:E.x+v.x*W,y:E.y+v.y*W}),B8(K,E,B,F,W,J,q,!0)}K.push({type:"Z"});let j=H-1,w=U[j],Y=$[0];if(!w||!Y)return K;let V=R1(N);K.push({type:"M",x:_.x-V.x*W,y:_.y-V.y*W});for(let z=0;z<H;z++){let G=$[z],E=$[(z+1)%H],B=U[z],F=U[(z+1)%H];if(!G||!E||!B||!F)continue;let v=R1(B);K.push({type:"L",x:E.x-v.x*W,y:E.y-v.y*W}),B8(K,E,B,F,W,J,q,!1)}return K.push({type:"Z"}),K}function tW($,Q){if($.length<2)return[];let{width:Z,lineCap:J,lineJoin:q,miterLimit:W}=Q,K=Z/2,H=[],U=$.length,N=[];for(let G=0;G<U-1;G++){let E=$[G],B=$[G+1];if(!E||!B)continue;N.push(Q0({x:B.x-E.x,y:B.y-E.y}))}let _=$[0],X=$[U-1],j=N[0],w=N[N.length-1];if(!_||!X||!j||!w)return[];let Y=R1(j);H.push({type:"M",x:_.x+Y.x*K,y:_.y+Y.y*K});for(let G=0;G<U-1;G++){let E=$[G+1],B=N[G],F=N[G+1];if(!E||!B)continue;let v=R1(B);if(H.push({type:"L",x:E.x+v.x*K,y:E.y+v.y*K}),F)B8(H,E,B,F,K,q,W,!0)}let V={x:-w.x,y:-w.y};switch(J){case"round":b4(H,X,w,K,!0);break;case"square":g4(H,X,w,K);break;default:{let G=R1(w);H.push({type:"L",x:X.x-G.x*K,y:X.y-G.y*K});break}}for(let G=U-2;G>=0;G--){let E=$[G],B=N[G],F=N[G-1];if(!E||!B)continue;let v=R1(B);if(H.push({type:"L",x:E.x-v.x*K,y:E.y-v.y*K}),F)B8(H,E,{x:-B.x,y:-B.y},{x:-F.x,y:-F.y},K,q,W,!0)}let z={x:-j.x,y:-j.y};switch(J){case"round":b4(H,_,z,K,!0);break;case"square":g4(H,_,z,K);break;default:break}return H.push({type:"Z"}),H}function eW($){let Q=[],Z=[];for(let J of $.commands)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 K=1;K<=8;K++){let H=K/8,U=1-H,N=U*U*q.x+2*U*H*J.x1+H*H*J.x,_=U*U*q.y+2*U*H*J.y1+H*H*J.y;Z.push({x:N,y:_})}break}case"C":{let q=Z[Z.length-1];if(q)for(let K=1;K<=12;K++){let H=K/12,U=1-H,N=U*U*U*q.x+3*U*U*H*J.x1+3*U*H*H*J.x2+H*H*H*J.x,_=U*U*U*q.y+3*U*U*H*J.y1+3*U*H*H*J.y2+H*H*H*J.y;Z.push({x:N,y:_})}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 x4($,Q){let Z={width:Q.width,lineCap:Q.lineCap??"butt",lineJoin:Q.lineJoin??"miter",miterLimit:Q.miterLimit??4},J=eW($),q=[];for(let K of J){if(K.points.length<2)continue;let H=K.closed?rW(K.points,Z):tW(K.points,Z);q.push(...H)}let W=$.bounds;if(W){let K=Z.width/2;W={xMin:W.xMin-K,yMin:W.yMin-K,xMax:W.xMax+K,yMax:W.yMax+K}}return{commands:q,bounds:W}}function u4($,Q){let Z=[];for(let q of $.commands)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 J=$.bounds;if(J){let q=J.xMin+J.yMin*Q,W=J.xMax+J.yMax*Q;J={xMin:Math.min(q,J.xMin+J.yMax*Q),yMin:J.yMin,xMax:Math.max(W,J.xMax+J.yMin*Q),yMax:J.yMax}}return{commands:Z,bounds:J,flags:$.flags}}function f4($,Q){let Z=[];for(let q of $.commands)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 J=$.bounds;if(J)J={xMin:J.xMin*Q,yMin:J.yMin,xMax:J.xMax*Q,yMax:J.yMax};return{commands:Z,bounds:J,flags:$.flags}}function l4($,Q){if(Q===0)return{...$,commands:[...$.commands]};let Z=$H($),J=[];for(let W of Z){if(W.length<3)continue;let K=QH(W,Q);if(K.length>0){J.push({type:"M",x:K[0].x,y:K[0].y});for(let H=1;H<K.length;H++)J.push({type:"L",x:K[H].x,y:K[H].y});J.push({type:"Z"})}}let q=null;if(J.length>0){let W=1/0,K=1/0,H=-1/0,U=-1/0;for(let N of J)if(N.type==="M"||N.type==="L")W=Math.min(W,N.x),K=Math.min(K,N.y),H=Math.max(H,N.x),U=Math.max(U,N.y);if(Number.isFinite(W))q={xMin:W,yMin:K,xMax:H,yMax:U}}return{commands:J,bounds:q,flags:$.flags}}function $H($){let Q=[],Z=[];for(let J of $.commands)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 K=1;K<=8;K++){let H=K/8,U=1-H,N=U*U*q.x+2*U*H*J.x1+H*H*J.x,_=U*U*q.y+2*U*H*J.y1+H*H*J.y;Z.push({x:N,y:_})}break}case"C":{let q=Z[Z.length-1];if(q)for(let K=1;K<=12;K++){let H=K/12,U=1-H,N=U*U*U*q.x+3*U*U*H*J.x1+3*U*H*H*J.x2+H*H*H*J.x,_=U*U*U*q.y+3*U*U*H*J.y1+3*U*H*H*J.y2+H*H*H*J.y;Z.push({x:N,y:_})}break}case"Z":if(Z.length>0)Q.push(Z),Z=[];break}if(Z.length>0)Q.push(Z);return Q}function QH($,Q){let Z=$.length;if(Z<3)return $;let J=0;for(let H=0;H<Z;H++){let U=(H+1)%Z,N=$[H],_=$[U];if(N&&_)J+=(_.x-N.x)*(_.y+N.y)}let q=J<0?-1:1,W=Q*q,K=[];for(let H=0;H<Z;H++){let U=$[(H-1+Z)%Z],N=$[H],_=$[(H+1)%Z];if(!U||!N||!_)continue;let X={x:N.x-U.x,y:N.y-U.y},j={x:_.x-N.x,y:_.y-N.y},w=Math.sqrt(X.x*X.x+X.y*X.y),Y=Math.sqrt(j.x*j.x+j.y*j.y);if(w===0||Y===0){K.push(N);continue}X.x/=w,X.y/=w,j.x/=Y,j.y/=Y;let V={x:-X.y,y:X.x},z={x:-j.y,y:j.x},G=(V.x+z.x)/2,E=(V.y+z.y)/2,B=Math.sqrt(G*G+E*E);if(B>0.001){G/=B,E/=B;let F=V.x*z.x+V.y*z.y,v=F>-0.999?1/Math.sqrt((1+F)/2):1,L=Math.min(v,3);K.push({x:N.x+G*W*L,y:N.y+E*W*L})}else K.push(N)}return K}var d4=new WeakMap;function ZH($){if(!$.isTrueType||!$.hasHinting)return null;let Q=d4.get($);if(Q)return Q;let Z=$.cvtTable,J=Z?new Int32Array(Z.values):void 0,q=$.maxp;Q=O4($.unitsPerEm,"maxStackElements"in q?q.maxStackElements:256,"maxStorage"in q?q.maxStorage:64,"maxFunctionDefs"in q?q.maxFunctionDefs:64,"maxTwilightPoints"in q?q.maxTwilightPoints:16,J);let W=$.fpgm;if(W)I4(Q,W.instructions);let K=$.prep;if(K)v4(Q,K.instructions);return d4.set($,Q),Q}function JH($,Q){let Z=$.getGlyph(Q);if(!Z||Z.type==="empty")return null;let J=[],q=[],W=[],K=[],H=$.advanceWidth(Q),U=$.leftSideBearing(Q);if(Z.type==="simple"){let N=0;for(let _ of Z.contours){for(let X of _)J.push(X.x),q.push(X.y),W.push(X.onCurve?1:0),N++;K.push(N-1)}return{xCoords:J,yCoords:q,flags:new Uint8Array(W),contourEnds:K,instructions:Z.instructions,lsb:U,advanceWidth:H}}else{for(let N of Z.components){let _=$.getGlyph(N.glyphId);if(!_||_.type!=="simple")continue;let[X,j,w,Y]=N.transform,V=N.arg1,z=N.arg2,G=J.length;for(let E of _.contours){for(let B of E)J.push(B.x*X+B.y*w+V),q.push(B.x*j+B.y*Y+z),W.push(B.onCurve?1:0),G++;K.push(G-1)}}if(J.length===0)return null;return{xCoords:J,yCoords:q,flags:new Uint8Array(W),contourEnds:K,instructions:Z.instructions,lsb:U,advanceWidth:H}}}function qH($,Q,Z,J){let{xCoords:q,yCoords:W,flags:K,contourEnds:H}=Q,U=0,N=0;for(let _=0;_<q.length;_++){let X=_===H[U],j=(q[_]<<2|0)+(Z<<8),w=(-W[_]<<2|0)+(J<<8),Y=(K[_]&1)!==0;if(_===N)$.moveTo(j,w);else if(Y)$.lineTo(j,w);else{let V=X?N:_+1,z=(q[V]<<2|0)+(Z<<8),G=(-W[V]<<2|0)+(J<<8);if((K[V]&1)!==0){if($.conicTo(j,w,z,G),!X)_++}else $.conicTo(j,w,j+z>>1,w+G>>1)}if(X){let V=(q[N]<<2|0)+(Z<<8),z=(-W[N]<<2|0)+(J<<8);if(Y&&_!==N)$.lineTo(V,z);U++,N=_+1}}}var KH=256;function F8($,Q){let{width:Z,height:J,scale:q,offsetX:W=0,offsetY:K=0,pixelMode:H=1,fillRule:U=0,flipY:N=!0}=Q,_=K1(Z,J,H),X=new m6;if(X.setClip(0,0,Z,J),J>KH){let j=()=>A8(X,$,q,W,K,N);X.renderWithBands(_,j,{minY:0,maxY:J},U)}else X.setBandBounds(0,J),X.reset(),A8(X,$,q,W,K,N),X.sweep(_,U);return _}function WH($,Q,Z,J){let q=J?.padding??1,W=J?.pixelMode??1;if((J?.hinting??!1)&&$.hasHinting){let V=HH($,Q,Z,q,W);if(V)return V}let H=s1($,Q);if(!H)return null;let U=Z/$.unitsPerEm,N=y4(H,U,!0);if(!N)return{bitmap:K1(1,1,W),bearingX:0,bearingY:0};let _=N.maxX-N.minX+q*2,X=N.maxY-N.minY+q*2;if(_<=0||X<=0)return{bitmap:K1(1,1,W),bearingX:0,bearingY:0};let j=-N.minX+q,w=-N.minY+q;return{bitmap:F8(H,{width:_,height:X,scale:U,offsetX:j,offsetY:w,pixelMode:W,flipY:!0}),bearingX:N.minX-q,bearingY:-(N.minY-q)}}function HH($,Q,Z,J,q){let W=ZH($);if(!W)return null;let K=JH($,Q);if(!K)return null;let H=Math.round(Z);if(k4(W,H,H))return null;let N=C4(W,K);if(N.error||N.xCoords.length===0)return null;let _=1/0,X=1/0,j=-1/0,w=-1/0;for(let S=0;S<N.xCoords.length;S++){let I=N.xCoords[S]/64,b=N.yCoords[S]/64;_=Math.min(_,I),X=Math.min(X,b),j=Math.max(j,I),w=Math.max(w,b)}if(!Number.isFinite(_))return{bitmap:K1(1,1,q),bearingX:0,bearingY:0};let Y=Math.floor(_),V=Math.floor(X),z=Math.ceil(j),G=Math.ceil(w),E=z-Y+J*2,B=G-V+J*2;if(E<=0||B<=0)return{bitmap:K1(1,1,q),bearingX:0,bearingY:0};let F=K1(E,B,q),v=new m6;v.setClip(0,0,E,B),v.reset();let L=-Y+J,h=B-1+V-J;return qH(v,N,L,h),v.sweep(F,0),{bitmap:F,bearingX:Y-J,bearingY:G+J}}function UH($,Q,Z,J){let q=Z/$.unitsPerEm,W=J?.padding??2,K=J?.pixelMode??1,H=[],U=0,N=0,_=0;for(let G of Q){let E=G.codePointAt(0);if(E===void 0)continue;let B=$.glyphId(E);if(B===void 0)continue;let F=$.advanceWidth(B)*q,v=s1($,B);if(v?.bounds)N=Math.max(N,-v.bounds.yMin*q),_=Math.max(_,v.bounds.yMax*q);H.push({glyphId:B,advance:F}),U+=F}if(H.length===0)return null;let X=Math.ceil(U)+W*2,j=Math.ceil(N+_)+W*2,w=K1(X,j,K),Y=new m6;Y.setClip(0,0,X,j);let V=W,z=_+W;for(let{glyphId:G,advance:E}of H){let B=s1($,G);if(B)Y.reset(),A8(Y,B,q,V,z,!0),Y.sweep(w);V+=E}return w}function NH($){let Q=$.pixelMode===2,Z=new Uint8Array($.width*$.rows*4);for(let J=0;J<$.rows;J++)for(let q=0;q<$.width;q++){let W=(J*$.width+q)*4;if($.pixelMode===1){let K=J*$.pitch+q,H=$.buffer[K]??0;Z[W]=255-H,Z[W+1]=255-H,Z[W+2]=255-H,Z[W+3]=255}else if($.pixelMode===0){let K=J*$.pitch+(q>>3),H=7-(q&7),U=($.buffer[K]??0)>>H&1?255:0;Z[W]=255-U,Z[W+1]=255-U,Z[W+2]=255-U,Z[W+3]=255}else if(Q){let K=J*$.pitch+q*3,H=$.buffer[K]??0,U=$.buffer[K+1]??0,N=$.buffer[K+2]??0;Z[W]=255-H,Z[W+1]=255-U,Z[W+2]=255-N,Z[W+3]=255}else{let K=J*$.pitch+q,H=$.buffer[K]??0;Z[W]=255-H,Z[W+1]=255-H,Z[W+2]=255-H,Z[W+3]=255}}return Z}function _H($){if($.pixelMode===1&&$.pitch===$.width)return $.buffer;let Q=new Uint8Array($.width*$.rows);for(let Z=0;Z<$.rows;Z++)for(let J=0;J<$.width;J++){let q=Z*$.width+J;if($.pixelMode===1)Q[q]=$.buffer[Z*$.pitch+J]??0;else if($.pixelMode===0){let W=Z*$.pitch+(J>>3),K=7-(J&7);Q[q]=($.buffer[W]??0)>>K&1?255:0}}return Q}function XH($,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 D8($,Q,Z){if($.stops.length===0)return[0,0,0,0];if($.stops.length===1)return $.stops[0].color;let J;if($.type==="linear"){let W=$.x1-$.x0,K=$.y1-$.y0,H=W*W+K*K;if(H===0)return $.stops[0].color;let U=Q-$.x0,N=Z-$.y0;J=(U*W+N*K)/H}else{let W=Q-$.cx,K=Z-$.cy,H=Math.sqrt(W*W+K*K);J=$.radius>0?H/$.radius:0}J=Math.max(0,Math.min(1,J));let q=[...$.stops].sort((W,K)=>W.offset-K.offset);if(J<=q[0].offset)return q[0].color;if(J>=q[q.length-1].offset)return q[q.length-1].color;for(let W=0;W<q.length-1;W++){let K=q[W],H=q[W+1];if(J>=K.offset&&J<=H.offset){let U=H.offset-K.offset;if(U===0)return H.color;let N=(J-K.offset)/U;return XH(K.color,H.color,N)}}return q[q.length-1].color}function n4($,Q,Z){let J=K1($,Q,4);for(let q=0;q<Q;q++)for(let W=0;W<$;W++){let K=D8(Z,W,q),H=(q*$+W)*4;J.buffer[H]=K[0],J.buffer[H+1]=K[1],J.buffer[H+2]=K[2],J.buffer[H+3]=K[3]}return J}function i4($,Q,Z){let{width:J,height:q}=Z,W=F8($,{...Z,pixelMode:1,flipY:Z.flipY??!1}),K=K1(J,q,4);for(let H=0;H<q;H++)for(let U=0;U<J;U++){let N=W.buffer[H*W.pitch+U]??0;if(N>0){let _=D8(Q,U,H),X=(H*J+U)*4,j=_[3]*N/255;K.buffer[X]=_[0],K.buffer[X+1]=_[1],K.buffer[X+2]=_[2],K.buffer[X+3]=Math.round(j)}}return K}var c4;((q)=>{q[q.None=0]="None";q[q.Decompose=1]="Decompose";q[q.Compose=2]="Compose";q[q.Auto=3]="Auto"})(c4||={});function u1($){if($>=1425&&$<=1469)return VH($);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 zH($);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 p4($);if($>=3761&&$<=3772)return 0;if($>=3784&&$<=3789)return p4($);if($>=3864&&$<=3865)return 220;if($===3893)return 220;if($===3895)return 220;if($===3897)return 216;if($>=3953&&$<=3966)return o4($);if($>=3968&&$<=3972)return o4($);if($>=3974&&$<=3975)return 230;if($===4151)return 7;if($===4153)return 9;if($===4154)return 9;if($>=12330&&$<=12335)return jH($);if($>=12441&&$<=12442)return 8;if($>=768&&$<=879)return GH($);if($>=6832&&$<=6911)return YH($);if($>=7616&&$<=7679)return wH($);if($>=65056&&$<=65071)return 230;return 0}function p4($){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 o4($){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;if($===3972)return 9;return 0}function jH($){if($===12330)return 218;if($===12331)return 228;if($===12332)return 232;if($===12333)return 222;if($===12334)return 224;if($===12335)return 224;return 0}function YH($){if($>=6832&&$<=6846)return 230;if($===6847)return 220;if($===6848)return 220;return 230}function wH($){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;if($>=7675&&$<=7679)return 230;return 230}function VH($){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;if($===1465)return 19}if($===1466)return 19;if($===1467)return 20;if($===1468)return 21;if($===1469)return 22;return 0}function zH($){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;if($>=1625&&$<=1631)return 230;return 0}function GH($){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 L8($){let Q=$.length,Z=1;while(Z<Q){let J=$[Z];if(!J){Z++;continue}let q=u1(J.codepoint);if(q===0){Z++;continue}let W=Z;while(W>0){let K=$[W-1];if(!K)break;let H=u1(K.codepoint);if(H===0)break;if(H<=q)break;$[W]=K,$[W-1]=J,W--}Z++}}var EH=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 M8($){return EH.get($)??null}var AH=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 s4($,Q){let Z=AH.get($);if(!Z)return null;return Z.get(Q)??null}function BH($){if($.length===0)return $;let Q=[],Z=0;while(Z<$.length){let J=$[Z];if(!J){Z++;continue}if(u1(J.codepoint)===0){let W=J.codepoint,K=0,H=Z+1;while(H<$.length){let U=$[H];if(!U)break;let N=u1(U.codepoint);if(N===0)break;if(N>K||K===0){let _=s4(W,U.codepoint);if(_!==null){W=_,H++;continue}}K=N,H++}Q.push({glyphId:J.glyphId,cluster:J.cluster,mask:J.mask,codepoint:W});for(let U=Z+1;U<H;U++){let N=$[U];if(!N)continue;let _=u1(N.codepoint);if(s4(W,N.codepoint)===null&&_!==0)Q.push(N)}Z=H}else Q.push(J),Z++}return Q}function FH($,Q){if(Q===0)return $;if(Q===1){let Z=[];for(let J of $){let q=M8(J.codepoint);if(q)for(let W of q)Z.push({glyphId:J.glyphId,cluster:J.cluster,mask:J.mask,codepoint:W});else Z.push(J)}return L8(Z),Z}if(Q===2){let Z=[];for(let J of $){let q=M8(J.codepoint);if(q)for(let W of q)Z.push({glyphId:J.glyphId,cluster:J.cluster,mask:J.mask,codepoint:W});else Z.push(J)}return L8(Z),BH(Z)}if(Q===3){let Z=[];for(let J of $){let q=M8(J.codepoint);if(q)for(let W of q)Z.push({glyphId:J.glyphId,cluster:J.cluster,mask:J.mask,codepoint:W});else Z.push(J)}return L8(Z),Z}return $}function Z0($,Q,Z){for(let J=0;J<Q.length;J++){let q=Q[J],W=Z[J];if(!q||!W)continue;let K=$.gdef?B1($.gdef,q.glyphId):0,H=u1(q.codepoint);if(K!==3&&H===0)continue;let U=-1;for(let j=J-1;j>=0;j--){let w=Q[j];if(!w)continue;let Y=$.gdef?B1($.gdef,w.glyphId):0,V=u1(w.codepoint);if(Y===1||Y===0&&V===0){U=j;break}}if(U<0)continue;let N=Q[U],_=Z[U];if(!N||!_)continue;let X=$.advanceWidth(N.glyphId);DH($,q,W,N,_,X,H),W.xAdvance=0,W.yAdvance=0}}function DH($,Q,Z,J,q,W,K){let H=$.advanceWidth(Q.glyphId),U=$.unitsPerEm,N=(W-H)/2,_=0;if(K>=200&&K<=240)_=U*0.7,N=(W-H)/2;else if(K>=202&&K<=220)_=-U*0.15,N=(W-H)/2;else if(K===1)N=(W-H)/2,_=U*0.3;else if(K>=7&&K<=9)_=-U*0.1,N=(W-H)/2;else if(K>=10&&K<=35){if(K<=22)_=-U*0.2;else _=K<30?-U*0.15:U*0.6;N=(W-H)/2}Z.xOffset=q.xOffset+N-W,Z.yOffset=q.yOffset+_}function J0($,Q,Z){if(!$.kern)return;for(let q=0;q<Q.length-1;q++){let W=Q[q],K=Q[q+1];if(!W||!K)continue;let H=Z[q];if(!H)continue;let U=$.gdef?B1($.gdef,W.glyphId):0,N=$.gdef?B1($.gdef,K.glyphId):0;if(U===3||N===3)continue;let _=LH($,W.glyphId,K.glyphId);if(_!==0)H.xAdvance+=_}}function LH($,Q,Z){let J=$.kern;if(!J)return 0;return B9(J,Q,Z)}function a4($,Q=!0){if($<1||$>20)throw Error(`Stylistic set number must be 1-20, got ${$}`);let Z=`ss${$.toString().padStart(2,"0")}`;return{tag:M(Z),enabled:Q}}function MH($,Q=!0){return $.map((Z)=>a4(Z,Q))}function r4($,Q=!0){if($<1||$>99)throw Error(`Character variant number must be 1-99, got ${$}`);let Z=`cv${$.toString().padStart(2,"0")}`;return{tag:M(Z),enabled:Q}}function RH($,Q=!0){return $.map((Z)=>r4(Z,Q))}function TH($=!0){return{tag:M("liga"),enabled:$}}function PH($=!0){return{tag:M("dlig"),enabled:$}}function OH($=!0){return{tag:M("hlig"),enabled:$}}function IH($=!0){return{tag:M("calt"),enabled:$}}function vH($=!0){return{tag:M("salt"),enabled:$}}function kH($=!0){return{tag:M("swsh"),enabled:$}}function t4($=!0){return{tag:M("smcp"),enabled:$}}function e4($=!0){return{tag:M("c2sc"),enabled:$}}function CH($=!0){return{tag:M("pcap"),enabled:$}}function SH($=!0){return[t4($),e4($)]}function hH($=!0){return{tag:M("onum"),enabled:$}}function yH($=!0){return{tag:M("lnum"),enabled:$}}function mH($=!0){return{tag:M("pnum"),enabled:$}}function bH($=!0){return{tag:M("tnum"),enabled:$}}function gH($=!0){return{tag:M("frac"),enabled:$}}function xH($=!0){return{tag:M("ordn"),enabled:$}}function uH($=!0){return{tag:M("zero"),enabled:$}}function fH($=!0){return{tag:M("sups"),enabled:$}}function lH($=!0){return{tag:M("subs"),enabled:$}}function dH($=!0){return{tag:M("sinf"),enabled:$}}function nH($=!0){return{tag:M("case"),enabled:$}}function iH($=!0){return{tag:M("cpsp"),enabled:$}}function pH($=!0){return{tag:M("kern"),enabled:$}}function $Z($=!0){return{tag:M("vert"),enabled:$}}function QZ($=!0){return{tag:M("vrt2"),enabled:$}}function ZZ($=!0){return{tag:M("vkna"),enabled:$}}function oH($=!0){return[$Z($),QZ($),ZZ($)]}function sH($=!0){return{tag:M("ruby"),enabled:$}}function cH($=!0){return{tag:M("hwid"),enabled:$}}function aH($=!0){return{tag:M("fwid"),enabled:$}}function rH($=!0){return{tag:M("pwid"),enabled:$}}function tH($=!0){return{tag:M("qwid"),enabled:$}}function eH($=!0){return{tag:M("twid"),enabled:$}}function $U($=!0){return{tag:M("jp78"),enabled:$}}function QU($=!0){return{tag:M("jp83"),enabled:$}}function ZU($=!0){return{tag:M("jp90"),enabled:$}}function JU($=!0){return{tag:M("jp04"),enabled:$}}function qU($=!0){return{tag:M("smpl"),enabled:$}}function KU($=!0){return{tag:M("trad"),enabled:$}}function JZ($,Q=!0){return{tag:M($),enabled:Q}}function WU($,Q=!0){return $.map((Z)=>JZ(Z,Q))}function HU(...$){let Q=[];for(let Z of $)if(Array.isArray(Z))Q.push(...Z);else Q.push(Z);return Q}var qZ=new WeakMap,UU=64,NU=["ccmp","locl","rlig","rclt","calt","liga"],_U=["kern","mark","mkmk"];function XU($,Q,Z,J,q){let W=J.map((H)=>`${L6(H.tag)}:${H.enabled?"1":"0"}`).sort().join(","),K=q?q.map((H)=>H.toFixed(4)).join(","):"";return`${$}|${Q||""}|${Z}|${W}|${K}`}function WZ($,Q,Z,J,q=[],W=null){let K=XU(Q,Z,J,q,W),H=qZ.get($);if(!H)H=new Map,qZ.set($,H);let U=H.get(K);if(U)return U;let N=jU($,Q,Z,J,q,W);if(H.size>=UU){let _=H.keys().next().value;if(_!==void 0)H.delete(_)}return H.set(K,N),N}function q0($,Q,Z,J,q=[],W=null){return WZ($,Q,Z,J,q,W)}function jU($,Q,Z,J,q=[],W=null){let K=M(Q.padEnd(4," ")),H=Z?M(Z.padEnd(4," ")):null,U=new Set;for(let X of NU)U.add(M(X));for(let X of _U)U.add(M(X));for(let X of q)if(X.enabled)U.add(X.tag);else U.delete(X.tag);let N=KZ($.gsub,K,H,U,W),_=KZ($.gpos,K,H,U,W);return{script:K,language:H,direction:J,gsubLookups:N,gposLookups:_}}function KZ($,Q,Z,J,q){if(!$)return[];let W=$,K=new Set,H=H8(W.scriptList,Q);if(!H)H=H8(W.scriptList,M("DFLT"));if(!H)H=H8(W.scriptList,M("latn"));if(!H)return[];let U=j7(H,Z);if(!U)return[];let N=W.featureVariations,_=N&&q?v6(N,q):null,X=new Map;if(_)for(let Y of _.featureTableSubstitution.substitutions)X.set(Y.featureIndex,Y.alternateFeature.lookupListIndices);if(U.requiredFeatureIndex!==65535){let Y=N9(W.featureList,U.requiredFeatureIndex);if(Y){let z=X.get(U.requiredFeatureIndex)??Y.feature.lookupListIndices;for(let G of z)K.add(G)}}for(let Y of U.featureIndices){let V=N9(W.featureList,Y);if(!V)continue;if(J.has(V.featureTag)){let G=X.get(Y)??V.feature.lookupListIndices;for(let E of G)K.add(E)}}let j=[],w=Array.from(K).sort((Y,V)=>Y-V);for(let Y of w){let V=W.lookups[Y];if(V)j.push({index:Y,lookup:V})}return j}function YU($){return $>=1536&&$<=1791||$>=1872&&$<=1919||$>=2208&&$<=2303||$>=64336&&$<=65023||$>=65136&&$<=65279}function wU($){if($<1536)return"U";if($>=1536&&$<=1541)return"U";if($===1544)return"U";if($===1547)return"U";if($===1549)return"U";if($===1574)return"D";if($===1576)return"D";if($===1578)return"D";if($===1579)return"D";if($===1580)return"D";if($===1581)return"D";if($===1582)return"D";if($===1587)return"D";if($===1588)return"D";if($===1589)return"D";if($===1590)return"D";if($===1591)return"D";if($===1592)return"D";if($===1593)return"D";if($===1594)return"D";if($>=1595&&$<=1599)return"D";if($===1601)return"D";if($===1602)return"D";if($===1603)return"D";if($===1604)return"D";if($===1605)return"D";if($===1606)return"D";if($===1607)return"D";if($===1609)return"D";if($===1610)return"D";if($>=1646&&$<=1647)return"D";if($>=1656&&$<=1671)return"D";if($>=1690&&$<=1727)return"D";if($>=1729&&$<=1730)return"D";if($===1740)return"D";if($>=1742&&$<=1745)return"D";if($===1749)return"D";if($>=1786&&$<=1788)return"D";if($===1791)return"D";if($===1570)return"R";if($===1571)return"R";if($===1572)return"R";if($===1573)return"R";if($===1575)return"R";if($===1577)return"R";if($===1583)return"R";if($===1584)return"R";if($===1585)return"R";if($===1586)return"R";if($===1608)return"R";if($===1649)return"R";if($>=1650&&$<=1655)return"R";if($>=1672&&$<=1689)return"R";if($>=1728&&$<=1728)return"R";if($===1731)return"R";if($>=1732&&$<=1739)return"R";if($===1741)return"R";if($>=1746&&$<=1747)return"R";if($===1600)return"C";if($>=1611&&$<=1631)return"T";if($===1648)return"T";if($>=1750&&$<=1773)return"T";if($>=2259&&$<=2303)return"T";if(YU($))return"U";return"U"}function VU($){let Q=$.length,Z=Array(Q).fill(0),J=[];for(let q of $){let W=q.codepoint??0;J.push(wU(W))}for(let q=0;q<Q;q++){let W=J[q];if(!W)continue;if(W==="U"||W==="T")continue;let K=null;for(let _=q-1;_>=0;_--){let X=J[_];if(X&&X!=="T"){K=X;break}}let H=null;for(let _=q+1;_<Q;_++){let X=J[_];if(X&&X!=="T"){H=X;break}}let U=K==="D"||K==="L"||K==="C",N=H==="D"||H==="R"||H==="C";if(W==="D")if(U&&N)Z[q]=3;else if(U)Z[q]=2;else if(N)Z[q]=4;else Z[q]=1;else if(W==="R")if(U)Z[q]=2;else Z[q]=1;else if(W==="L")if(N)Z[q]=4;else Z[q]=1;else if(W==="C")Z[q]=0}return Z}function K0($){let Q=VU($);for(let[Z,J]of Q.entries()){let q=$[Z];if(!q)continue;switch(J){case 1:q.mask=q.mask&4294967280|1;break;case 2:q.mask=q.mask&4294967280|2;break;case 3:q.mask=q.mask&4294967280|4;break;case 4:q.mask=q.mask&4294967280|8;break}}}function H0($){return $>=44032&&$<=55203}function zU($){return $>=4352&&$<=4607||$>=43360&&$<=43388||$>=55216&&$<=55291}function GU($){return $>=4352&&$<4371||$>=43360&&$<=43388}function EU($){return $>=4449&&$<4470||$>=55216&&$<=55238}function AU($){return $>4519&&$<=4546||$>=55243&&$<=55291}function BU($){if(!H0($))return[$];let Q=$-44032,Z=Math.floor(Q/588),J=Math.floor(Q%588/28),q=Q%28,W=[4352+Z,4449+J];if(q>0)W.push(4519+q);return W}function HZ($,Q,Z=0){let J=$-4352,q=Q-4449,W=Z===0?0:Z-4519;if(J<0||J>=19)return null;if(q<0||q>=21)return null;if(W<0||W>=28)return null;return 44032+J*588+q*28+W}function b6($){if(GU($))return 1;if(EU($))return 2;if(AU($))return 3;if(H0($))return($-44032)%28===0?4:5;return 0}var W0={ljmo:1,vjmo:2,tjmo:4};function U0($){for(let Q of $)switch(b6(Q.codepoint)){case 1:Q.mask|=W0.ljmo;break;case 2:Q.mask|=W0.vjmo;break;case 3:Q.mask|=W0.tjmo;break;case 4:case 5:break}}function N0($){let Q=[],Z=0;while(Z<$.length){let J=$[Z];if(!J){Z++;continue}let q=b6(J.codepoint);if(q===1&&Z+1<$.length){let W=$[Z+1];if(!W){Q.push(J),Z++;continue}if(b6(W.codepoint)===2){let H=0,U=2;if(Z+2<$.length){let _=$[Z+2];if(_){if(b6(_.codepoint)===3)H=_.codepoint,U=3}}let N=HZ(J.codepoint,W.codepoint,H);if(N!==null){Q.push({glyphId:J.glyphId,cluster:J.cluster,mask:J.mask,codepoint:N}),Z+=U;continue}}}if(q===4&&Z+1<$.length){let W=$[Z+1];if(!W){Q.push(J),Z++;continue}if(b6(W.codepoint)===3){let H=BU(J.codepoint),[U,N]=H;if(H.length===2&&U!==void 0&&N!==void 0){let _=HZ(U,N,W.codepoint);if(_!==null){Q.push({glyphId:J.glyphId,cluster:J.cluster,mask:J.mask,codepoint:_}),Z+=2;continue}}}}Q.push(J),Z++}return Q}function UZ($){return H0($)||zU($)||$>=12593&&$<=12686}function FU($){return $>=1424&&$<=1535||$>=64285&&$<=64335}function DU($){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(FU($))return 0;return 0}function _0($){let Q=0;for(let Z=0;Z<$.length;Z++){let J=$[Z];if(!J)continue;if(DU(J.codepoint)===1)Q=Z;J.mask=J.mask&4294901760|Q&65535}}function NZ($){return $>=2304&&$<=2431}function _Z($){return $>=2432&&$<=2559}function XZ($){return $>=2560&&$<=2687}function jZ($){return $>=2688&&$<=2815}function YZ($){return $>=2816&&$<=2943}function wZ($){return $>=2944&&$<=3071}function VZ($){return $>=3072&&$<=3199}function zZ($){return $>=3200&&$<=3327}function GZ($){return $>=3328&&$<=3455}function EZ($){return NZ($)||_Z($)||XZ($)||jZ($)||YZ($)||wZ($)||VZ($)||zZ($)||GZ($)}function S1($){if($===8204)return 5;if($===8205)return 6;if($===9676)return 12;if(NZ($)){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(_Z($)){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(XZ($)||jZ($)||YZ($)||wZ($)||VZ($)||zZ($)||GZ($)){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 AZ($){let Q=[],Z=$.length;if(Z===0)return Q;let J=0;while(J<Z){let q=LU($,J);Q.push(q),J=q.end}return Q}function LU($,Q){let Z=$.length,J=Q,q=-1,W=!1;if(J+1<Z){let H=$[J],U=$[J+1];if(H&&U){let N=S1(H.codepoint??0),_=S1(U.codepoint??0);if(N===15&&_===4)W=!0,J+=2}}let K=-1;while(J<Z){let H=$[J];if(!H){J++;continue}let U=H.codepoint??0,N=S1(U);if(N===1||N===15){if(K=J,J++,J<Z){let _=$[J];if(_&&S1(_.codepoint??0)===3)J++}if(J<Z){let _=$[J];if(_&&S1(_.codepoint??0)===4){if(J++,J<Z){let X=$[J];if(X){let j=S1(X.codepoint??0);if(j===6||j===5)J++}}continue}}break}else if(N===2){J++;break}else if(N===3)J++;else{if(K===-1)J++;break}}q=K>=0?K:Q;while(J<Z){let H=$[J];if(!H){J++;continue}let U=H.codepoint??0,N=S1(U);if(N===7||N===8||N===9||N===3)J++;else if(N===4){J++;break}else break}if(J===Q)J=Q+1;return{start:Q,end:J,hasReph:W,baseConsonant:q}}var q1={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 BZ($){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 X0($){let Q=AZ($);for(let[Z,J]of Q.entries())for(let q=J.start;q<J.end;q++){let W=$[q];if(W){W.mask=W.mask&65535|(Z&65535)<<16;let K=S1(W.codepoint);if(K===3)W.mask|=q1.nukt;if(K===4){if(q<J.baseConsonant)W.mask|=q1.half;else if(q>J.baseConsonant)W.mask|=q1.blwf|q1.pstf}if(K===1||K===15){if(q<J.baseConsonant)W.mask|=q1.half|q1.cjct;else if(q>J.baseConsonant)W.mask|=q1.blwf|q1.pstf|q1.vatu}if(J.hasReph&&q<J.start+2)W.mask|=q1.rphf;if(K===7)switch(BZ(W.codepoint)){case 0:W.mask|=q1.pref|q1.pres;break;case 1:W.mask|=q1.abvf|q1.abvs;break;case 2:W.mask|=q1.blwf|q1.blws;break;case 3:W.mask|=q1.pstf|q1.psts;break}if(K===8)W.mask|=q1.abvs|q1.psts}}}function j0($){let Q=AZ($);for(let Z of Q)MU($,Z)}function MU($,Q){let{start:Z,end:J,baseConsonant:q,hasReph:W}=Q,K=[];for(let H=q+1;H<J;H++){let U=$[H];if(!U)continue;if(S1(U.codepoint)===7){if(BZ(U.codepoint)===0)K.push({index:H,info:U})}}if(K.length>0){K.sort((H,U)=>U.index-H.index);for(let{index:H,info:U}of K){$.splice(H,1);let N=W?Z+2:Z;$.splice(N,0,U)}}if(W&&J>Z+2){let H=$[Z],U=$[Z+1];if(H&&U){let N=J-1;while(N>q){let _=$[N];if(!_)break;let X=S1(_.codepoint);if(X===8||X===9)N--;else break}if(N>Z+1){$.splice(Z,2);let _=N-2;$.splice(_+1,0,H,U)}}}}function V6($){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 c1={pref:1,blwf:2,abvf:4,pstf:8,cfar:16,pres:32,abvs:64,blws:128,psts:256,clig:512};function FZ($){return $>=6016&&$<=6143||$>=6624&&$<=6655}function Y0($){let Q=0;while(Q<$.length){let Z=$[Q];if(!Z){Q++;continue}let J=V6(Z.codepoint);if(J===0){Q++;continue}let q=Q,W=-1;if(J===1)W=Q;let K=Q+1;while(K<$.length){let H=$[K];if(!H){K++;continue}let U=V6(H.codepoint);if(U===0)break;if(U===1){let N=$[K-1];if(N&&V6(N.codepoint)!==4)break}if(U===4&&K+1<$.length){let N=$[K+1];if(N&&V6(N.codepoint)===1){H.mask|=c1.blwf,N.mask|=c1.blwf,K+=2;continue}}if(U===3)if(H.codepoint>=6081&&H.codepoint<=6083)H.mask|=c1.pref;else if(H.codepoint>=6071&&H.codepoint<=6074)H.mask|=c1.abvf;else if(H.codepoint===6075||H.codepoint===6076||H.codepoint===6077)H.mask|=c1.blwf;else H.mask|=c1.pstf;if(U===5)H.mask|=c1.abvs;if(U===6)H.mask|=c1.abvs;K++}Q=K}}function w0($){let Q=0;while(Q<$.length){let Z=$[Q];if(!Z){Q++;continue}if(V6(Z.codepoint)!==1){Q++;continue}let q=Q,W=Q+1;while(W<$.length){let K=$[W];if(!K)break;if(V6(K.codepoint)===4&&W+1<$.length)W+=2;else break}if(W<$.length){let K=$[W];if(K){let H=K.codepoint;if(H>=6081&&H<=6083){let U=K;for(let N=W;N>q;N--){let _=$[N-1];if(_)$[N]=_}$[q]=U}}}Q=W+1}}function z6($){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 v1={rphf:1,pref:2,blwf:4,pstf:8,pres:16,abvs:32,blws:64,psts:128};function DZ($){return $>=4096&&$<=4255||$>=43616&&$<=43647||$>=43488&&$<=43519}function V0($){let Q=0;while(Q<$.length){let Z=$[Q];if(!Z){Q++;continue}let J=z6(Z.codepoint);if(J===0){Q++;continue}let q=-1,W=!1;if(J===1)q=Q;let K=Q+1;while(K<$.length){let H=$[K];if(!H){K++;continue}let U=z6(H.codepoint);if(U===0)break;if(U===5){if(W=!0,H.mask|=v1.blwf,K+1<$.length){let N=$[K+1];if(N&&z6(N.codepoint)===1){N.mask|=v1.blwf,K+=2;continue}}}if(U===4){let N=H.codepoint;if(N===4155)H.mask|=v1.pref;else if(N===4156)H.mask|=v1.pref;else if(N===4157)H.mask|=v1.blwf;else if(N===4158)H.mask|=v1.blwf}if(U===3){let N=H.codepoint;if(N===4145)H.mask|=v1.pref;else if(N===4141||N===4142||N===4146)H.mask|=v1.abvs;else if(N===4143||N===4144)H.mask|=v1.blws;else H.mask|=v1.psts}if(U===6||U===8)H.mask|=v1.abvs;if(U===1&&!W){if(K>0){let N=$[K-1];if(N){if(z6(N.codepoint)!==5)break}}}W=!1,K++}Q=K}}function z0($){let Q=0;while(Q<$.length){let Z=$[Q];if(!Z){Q++;continue}if(z6(Z.codepoint)!==1){Q++;continue}let q=Q,W=[],K=Q+1;while(K<$.length){let H=$[K];if(!H){K++;continue}let U=z6(H.codepoint);if(H.codepoint===4145){W.push(H),$.splice(K,1);continue}if(H.codepoint===4156){W.push(H),$.splice(K,1);continue}if(U===1||U===0)break;K++}if(W.length>0)$.splice(q,0,...W),Q+=W.length;Q++}}function E0($){return $>=3584&&$<=3711}function A0($){return $>=3712&&$<=3839}function G0($){if(E0($)){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(A0($)){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 R8($){let Q=0,Z=-1;for(let J=0;J<$.length;J++){let q=$[J];if(!q)continue;let W=G0(q.codepoint);if(W===1)Q++,Z=J;if(q.mask=q.mask&4294967040|W&255,q.mask=q.mask&65535|(Q&65535)<<16,W===2)q.mask|=256}}function T8($){let Q=0;while(Q<$.length){let Z=$[Q];if(!Z){Q++;continue}if(G0(Z.codepoint)===2){let q=Q+1;while(q<$.length){let W=$[q];if(!W){q++;continue}let K=G0(W.codepoint??0);if(K===1){let H=Z;$[Q]=W,$[q]=H;break}if(K!==2)break;q++}}Q++}}function LZ($){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 f1($){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 Q1={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 MZ($){let Q=[],Z=$.length;if(Z===0)return Q;let J=0;while(J<Z){let q=RU($,J);Q.push(q),J=q.end}return Q}function RU($,Q){let Z=$.length,J=Q,q=-1,W=!1;if(J+1<Z){let K=$[J],H=$[J+1];if(K&&H){let U=f1(K.codepoint??0),N=f1(H.codepoint??0);if(U===13&&N===8)W=!0,J+=2}}while(J<Z){let K=$[J];if(!K){J++;continue}let H=f1(K.codepoint??0);if(H===1||H===10||H===7||H===22){q=J,J++;break}if(H===26||H===30||H===39){J++;continue}if(q===-1)J++;break}if(q===-1)q=Q;while(J<Z){let K=$[J];if(!K){J++;continue}let H=f1(K.codepoint??0);if(H===8){if(J++,J<Z){let U=$[J];if(U){let N=f1(U.codepoint??0);if(N===1||N===4||N===17){J++;continue}if(N===20||N===21)J++}}continue}if(H===17||H===4){J++;continue}if(H===12||H===9){J++;continue}break}while(J<Z){let K=$[J];if(!K){J++;continue}let H=f1(K.codepoint??0);if(H===28||H===29||H===30||H===31||H===23){J++;continue}if(H===37||H===38||H===39||H===40){J++;continue}if(H===24||H===25||H===26||H===27){J++;continue}if(H===32||H===33){J++;continue}if(H===34||H===35||H===36||H===5||H===6){J++;continue}if(H===2||H===18){J++;continue}break}if(J===Q)J=Q+1;return{start:Q,end:J,base:q,hasReph:W}}function RZ($){let Q=MZ($);for(let[Z,J]of Q.entries())for(let q=J.start;q<J.end;q++){let W=$[q];if(!W)continue;W.mask=W.mask&65535|(Z&65535)<<16;let K=f1(W.codepoint);if(J.hasReph&&q<J.start+2)W.mask|=Q1.rphf;if(q<J.base){if(K===1||K===4||K===17)W.mask|=Q1.half|Q1.cjct}if(q>J.base){if(K===1||K===4||K===17)W.mask|=Q1.blwf|Q1.pstf|Q1.vatu}if(K===8||K===9)if(q<J.base)W.mask|=Q1.half;else W.mask|=Q1.haln;if(K===30)W.mask|=Q1.pref|Q1.pres;else if(K===28)W.mask|=Q1.abvf|Q1.abvs;else if(K===29)W.mask|=Q1.blwf|Q1.blws;else if(K===31||K===23)W.mask|=Q1.pstf|Q1.psts;if(K===37)W.mask|=Q1.abvs;else if(K===38)W.mask|=Q1.blws;else if(K===39)W.mask|=Q1.pres;else if(K===40)W.mask|=Q1.psts;if(K===32)W.mask|=Q1.abvs;else if(K===33)W.mask|=Q1.blws;if(K===34)W.mask|=Q1.abvs;else if(K===35)W.mask|=Q1.blws;else if(K===36||K===5||K===6)W.mask|=Q1.psts}}function TZ($){let Q=MZ($);for(let Z of Q)TU($,Z)}function TU($,Q){let{start:Z,end:J,base:q,hasReph:W}=Q,K=[];for(let H=q+1;H<J;H++){let U=$[H];if(!U)continue;let N=f1(U.codepoint);if(N===30||N===39)K.push({index:H,info:U})}if(K.length>0){K.sort((H,U)=>U.index-H.index);for(let{index:H,info:U}of K){$.splice(H,1);let N=W?Z+2:Z;$.splice(N,0,U)}}if(W&&J>Z+2){let H=$[Z],U=$[Z+1];if(H&&U){let N=J-1;while(N>q){let _=$[N];if(!_)break;let X=f1(_.codepoint);if(X===32||X===33||X===34||X===35||X===36||X===5||X===6)N--;else break}if(N>Z+1){$.splice(Z,2);let _=N-2;$.splice(_+1,0,H,U)}}}}function PU($){return $ instanceof r1?$.font:$}function OU($){return $ instanceof r1?$:new r1($)}function IU($,Q,Z={}){let J=PU($),q=OU($),W=Z.script??Q.script??"latn",K=Z.language??Q.language??null,H=Z.direction??"ltr",U=Z.features??[],N=q.normalizedCoords.length>0?q.normalizedCoords:null,_=q0(J,W,K,H,U,N),X=new a1;X.direction=Q.direction,X.script=W,X.language=K;let j=[];for(let[Y,V]of Q.codepoints.entries()){let z=Q.clusters[Y];if(z===void 0)continue;let G=J.glyphId(V);j.push({glyphId:G,cluster:z,mask:4294967295,codepoint:V})}if(X.initFromInfos(j),vU(X,W),CU(J,X,_),oU(q,X),J.gpos!==null&&_.gposLookups.length>0)sU(J,X,_);else J0(J,X.infos,X.positions),Z0(J,X.infos,X.positions);if(!J.gsub&&J.morx)NN(J,X);if(H==="rtl")X.reverse();return X}function vU($,Q){if(Q==="arab"||Q==="syrc"||Q==="mand"||Q==="nko "){K0($.infos);return}if(Q==="hebr"){_0($.infos);return}if(Q==="hang"||Q==="kore"){let Z=N0($.infos);if(Z.length!==$.infos.length)$.initFromInfos(Z);U0($.infos);return}if(Q==="deva"||Q==="beng"||Q==="guru"||Q==="gujr"||Q==="orya"||Q==="taml"||Q==="telu"||Q==="knda"||Q==="mlym"){X0($.infos),j0($.infos);return}if(Q==="thai"||Q==="lao "){R8($.infos),T8($.infos);return}if(Q==="khmr"){Y0($.infos),w0($.infos);return}if(Q==="mymr"){V0($.infos),z0($.infos);return}if(LZ(Q)){RZ($.infos),TZ($.infos);return}if(Q==="Zyyy"||Q==="Zinh"||Q==="Zzzz")kU($.infos)}function kU($){if($.length===0)return;let Q=$.slice(0,Math.min(10,$.length));for(let Z of Q){let J=Z.codepoint;if(J>=1536&&J<=1791||J>=1872&&J<=1919||J>=2208&&J<=2303){K0($);return}if(J>=1424&&J<=1535){_0($);return}if(UZ(J)){let q=N0($);if(q.length!==$.length)$.length=0,$.push(...q);U0($);return}if(EZ(J)){X0($),j0($);return}if(E0(J)){R8($),T8($);return}if(A0(J)){R8($),T8($);return}if(FZ(J)){Y0($),w0($);return}if(DZ(J)){V0($),z0($);return}}}function CU($,Q,Z){for(let{lookup:J}of Z.gsubLookups)SU($,Q,J,Z)}function SU($,Q,Z,J){switch(Z.type){case 1:hU($,Q,Z);break;case 2:yU($,Q,Z);break;case 3:mU($,Q,Z);break;case 4:bU($,Q,Z);break;case 5:gU($,Q,Z,J);break;case 6:xU($,Q,Z,J);break;case 8:uU($,Q,Z);break}}function hU($,Q,Z){for(let J of Q.infos){if(c($,J.glyphId,Z.flag))continue;let q=A9(Z,J.glyphId);if(q!==null)J.glyphId=q}}function yU($,Q,Z){let J=0;while(J<Q.infos.length){let q=Q.infos[J];if(!q){J++;continue}if(c($,q.glyphId,Z.flag)){J++;continue}let W=!1;for(let K of Z.subtables){let H=K.coverage.get(q.glyphId);if(H===null)continue;let U=K.sequences[H];if(!U||U.length===0)continue;let[N,..._]=U;if(N===void 0)continue;q.glyphId=N;for(let[X,j]of _.entries()){let w={glyphId:j,cluster:q.cluster,mask:q.mask,codepoint:q.codepoint},Y={xAdvance:0,yAdvance:0,xOffset:0,yOffset:0};Q.insertGlyph(J+X+1,w,Y)}J+=U.length,W=!0;break}if(!W)J++}}function mU($,Q,Z){for(let J of Q.infos){if(c($,J.glyphId,Z.flag))continue;for(let q of Z.subtables){let W=q.coverage.get(J.glyphId);if(W===null)continue;let K=q.alternateSets[W];if(!K||K.length===0)continue;let[H]=K;if(H===void 0)continue;J.glyphId=H;break}}}function bU($,Q,Z){let J=0;while(J<Q.infos.length){let q=Q.infos[J];if(!q){J++;continue}if(c($,q.glyphId,Z.flag)){J++;continue}let W=[J],K=[q.glyphId];for(let U=J+1;U<Q.infos.length&&K.length<16;U++){let N=Q.infos[U];if(!N)continue;if(c($,N.glyphId,Z.flag))continue;W.push(U),K.push(N.glyphId)}let H=M7(Z,K,0);if(H){q.glyphId=H.ligatureGlyph;let U=[];for(let N=1;N<H.consumed;N++){let _=W[N];if(_!==void 0){let X=Q.infos[_];if(X)q.cluster=Math.min(q.cluster,X.cluster);U.push(_)}}for(let N of U.reverse())Q.removeRange(N,N+1)}J++}}function gU($,Q,Z,J){for(let q=0;q<Q.infos.length;q++){let W=Q.infos[q];if(!W)continue;if(c($,W.glyphId,Z.flag))continue;for(let K of Z.subtables){let H=!1,U=[];if(K.format===1){let N=fU($,Q,q,K,Z.flag);if(N)H=!0,U=N}else if(K.format===2){let N=lU($,Q,q,K,Z.flag);if(N)H=!0,U=N}else if(K.format===3){if(dU($,Q,q,K,Z.flag))H=!0,U=K.lookupRecords}if(H){PZ($,Q,q,U,J);break}}}}function xU($,Q,Z,J){for(let q=0;q<Q.infos.length;q++){let W=Q.infos[q];if(!W)continue;if(c($,W.glyphId,Z.flag))continue;for(let K of Z.subtables){let H=!1,U=[];if(K.format===1){let N=nU($,Q,q,K,Z.flag);if(N)H=!0,U=N}else if(K.format===2){let N=iU($,Q,q,K,Z.flag);if(N)H=!0,U=N}else if(K.format===3){if(pU($,Q,q,K,Z.flag))H=!0,U=K.lookupRecords}if(H){PZ($,Q,q,U,J);break}}}}function uU($,Q,Z){for(let J=Q.infos.length-1;J>=0;J--){let q=Q.infos[J];if(!q)continue;if(c($,q.glyphId,Z.flag))continue;for(let W of Z.subtables){let K=W.coverage.get(q.glyphId);if(K===null)continue;let H=!0,U=J+1;for(let j of W.backtrackCoverages){while(U<Q.infos.length&&c($,Q.infos[U]?.glyphId,Z.flag))U++;if(U>=Q.infos.length||j.get(Q.infos[U]?.glyphId)===null){H=!1;break}U++}if(!H)continue;let N=!0,_=J-1;for(let j of W.lookaheadCoverages){while(_>=0&&c($,Q.infos[_]?.glyphId,Z.flag))_--;if(_<0||j.get(Q.infos[_]?.glyphId)===null){N=!1;break}_--}if(!N)continue;let X=W.substituteGlyphIds[K];if(X!==void 0)q.glyphId=X;break}}}function fU($,Q,Z,J,q){let W=Q.infos[Z]?.glyphId,K=J.coverage.get(W);if(K===null)return null;let H=J.ruleSets[K];if(!H)return null;for(let U of H)if(G6($,Q,Z+1,U.inputSequence,q))return U.lookupRecords;return null}function lU($,Q,Z,J,q){let W=Q.infos[Z]?.glyphId;if(J.coverage.get(W)===null)return null;let H=J.classDef.get(W),U=J.classRuleSets[H];if(!U)return null;for(let N of U)if(E6($,Q,Z+1,N.inputClasses,J.classDef,q))return N.lookupRecords;return null}function dU($,Q,Z,J,q){let W=Z;for(let K of J.coverages){while(W<Q.infos.length&&c($,Q.infos[W]?.glyphId,q))W++;if(W>=Q.infos.length)return!1;if(K.get(Q.infos[W]?.glyphId)===null)return!1;W++}return!0}function nU($,Q,Z,J,q){let W=Q.infos[Z]?.glyphId,K=J.coverage.get(W);if(K===null)return null;let H=J.chainRuleSets[K];if(!H)return null;for(let U of H){if(!vZ($,Q,Z-1,U.backtrackSequence,q))continue;if(!G6($,Q,Z+1,U.inputSequence,q))continue;let N=Z+1;for(let _=0;_<U.inputSequence.length;_++){while(N<Q.infos.length&&c($,Q.infos[N]?.glyphId,q))N++;N++}if(!G6($,Q,N,U.lookaheadSequence,q))continue;return U.lookupRecords}return null}function iU($,Q,Z,J,q){let W=Q.infos[Z]?.glyphId;if(J.coverage.get(W)===null)return null;let H=J.inputClassDef.get(W),U=J.chainClassRuleSets[H];if(!U)return null;for(let N of U){if(!kZ($,Q,Z-1,N.backtrackClasses,J.backtrackClassDef,q))continue;if(!E6($,Q,Z+1,N.inputClasses,J.inputClassDef,q))continue;let _=Z+1;for(let X=0;X<N.inputClasses.length;X++){while(_<Q.infos.length&&c($,Q.infos[_]?.glyphId,q))_++;_++}if(!E6($,Q,_,N.lookaheadClasses,J.lookaheadClassDef,q))continue;return N.lookupRecords}return null}function pU($,Q,Z,J,q){let W=Z-1;for(let U of J.backtrackCoverages){while(W>=0&&c($,Q.infos[W]?.glyphId,q))W--;if(W<0)return!1;if(U.get(Q.infos[W]?.glyphId)===null)return!1;W--}let K=Z;for(let U of J.inputCoverages){while(K<Q.infos.length&&c($,Q.infos[K]?.glyphId,q))K++;if(K>=Q.infos.length)return!1;if(U.get(Q.infos[K]?.glyphId)===null)return!1;K++}let H=K;for(let U of J.lookaheadCoverages){while(H<Q.infos.length&&c($,Q.infos[H]?.glyphId,q))H++;if(H>=Q.infos.length)return!1;if(U.get(Q.infos[H]?.glyphId)===null)return!1;H++}return!0}function PZ($,Q,Z,J,q){let W=[...J].sort((K,H)=>H.sequenceIndex-K.sequenceIndex);for(let K of W){let H=q.gsubLookups.find((_)=>_.index===K.lookupListIndex);if(!H)continue;let U=Z+K.sequenceIndex;if(U>=Q.infos.length)continue;let N=Q.infos[U];if(!N)continue;if(H.lookup.type===1){let _=A9(H.lookup,N.glyphId);if(_!==null)N.glyphId=_}}}function oU($,Q){for(let[Z,J]of Q.infos.entries()){let q=$.advanceWidth(J.glyphId);Q.setAdvance(Z,q,0)}}function sU($,Q,Z){for(let{lookup:J}of Z.gposLookups)OZ($,Q,J,Z)}function OZ($,Q,Z,J){switch(Z.type){case 1:cU($,Q,Z);break;case 2:aU($,Q,Z);break;case 3:rU($,Q,Z);break;case 4:tU($,Q,Z);break;case 5:eU($,Q,Z);break;case 6:$N($,Q,Z);break;case 7:QN($,Q,Z,J);break;case 8:ZN($,Q,Z,J);break}}function cU($,Q,Z){for(let[J,q]of Q.infos.entries()){let W=Q.positions[J];if(!W)continue;if(c($,q.glyphId,Z.flag))continue;for(let K of Z.subtables){let H=K.coverage.get(q.glyphId);if(H===null)continue;let U=K.format===1?K.value:K.values?.[H];if(U){if(U.xPlacement)W.xOffset+=U.xPlacement;if(U.yPlacement)W.yOffset+=U.yPlacement;if(U.xAdvance)W.xAdvance+=U.xAdvance;if(U.yAdvance)W.yAdvance+=U.yAdvance}break}}}function aU($,Q,Z){for(let J=0;J<Q.infos.length-1;J++){let q=Q.infos[J];if(!q)continue;if(c($,q.glyphId,Z.flag))continue;let W=J+1;while(W<Q.infos.length){let U=Q.infos[W];if(U&&!c($,U.glyphId,Z.flag))break;W++}if(W>=Q.infos.length)break;let K=Q.infos[W];if(!K)continue;let H=G7(Z,q.glyphId,K.glyphId);if(H){let U=Q.positions[J],N=Q.positions[W];if(U)U.xAdvance+=H.xAdvance1;if(N)N.xAdvance+=H.xAdvance2}}}function rU($,Q,Z){for(let J=0;J<Q.infos.length-1;J++){let q=Q.infos[J];if(!q)continue;if(c($,q.glyphId,Z.flag))continue;let W=J+1;while(W<Q.infos.length){let H=Q.infos[W];if(H&&!c($,H.glyphId,Z.flag))break;W++}if(W>=Q.infos.length)break;let K=Q.infos[W];if(!K)continue;for(let H of Z.subtables){let U=H.coverage.get(q.glyphId),N=H.coverage.get(K.glyphId);if(U===null||N===null)continue;let _=H.entryExitRecords[U],X=H.entryExitRecords[N];if(!_?.exitAnchor||!X?.entryAnchor)continue;let j=_.exitAnchor,w=X.entryAnchor,Y=Q.positions[W];if(Y)Y.yOffset=j.yCoordinate-w.yCoordinate;break}}}function tU($,Q,Z){for(let J=0;J<Q.infos.length;J++){let q=Q.infos[J];if(!q)continue;if(B1($.gdef,q.glyphId)!==3)continue;let W=-1;for(let H=J-1;H>=0;H--){let U=Q.infos[H];if(!U)continue;let N=B1($.gdef,U.glyphId);if(N===1||N===0){W=H;break}if(N===3)continue;if(N===2){W=H;break}}if(W<0)continue;let K=Q.infos[W];if(!K)continue;for(let H of Z.subtables){let U=H.markCoverage.get(q.glyphId),N=H.baseCoverage.get(K.glyphId);if(U===null||N===null)continue;let _=H.markArray.markRecords[U],X=H.baseArray[N];if(!_||!X)continue;let j=X.baseAnchors[_.markClass];if(!j)continue;let w=_.markAnchor,Y=Q.positions[J],V=Q.positions[W];if(!Y||!V)continue;Y.xOffset=j.xCoordinate-w.xCoordinate+V.xOffset,Y.yOffset=j.yCoordinate-w.yCoordinate+V.yOffset,Y.xAdvance=0,Y.yAdvance=0;break}}}function eU($,Q,Z){for(let J=0;J<Q.infos.length;J++){let q=Q.infos[J];if(!q)continue;if(B1($.gdef,q.glyphId)!==3)continue;let W=-1,K=0;for(let U=J-1;U>=0;U--){let N=Q.infos[U];if(!N)continue;let _=B1($.gdef,N.glyphId);if(_===2){W=U;break}if(_===3){K++;continue}break}if(W<0)continue;let H=Q.infos[W];if(!H)continue;for(let U of Z.subtables){let N=U.markCoverage.get(q.glyphId),_=U.ligatureCoverage.get(H.glyphId);if(N===null||_===null)continue;let X=U.markArray.markRecords[N],j=U.ligatureArray[_];if(!X||!j)continue;let w=Math.min(K,j.componentRecords.length-1),Y=j.componentRecords[w];if(!Y)continue;let V=Y.ligatureAnchors[X.markClass];if(!V)continue;let z=X.markAnchor,G=Q.positions[J],E=Q.positions[W];if(!G||!E)continue;G.xOffset=V.xCoordinate-z.xCoordinate+E.xOffset,G.yOffset=V.yCoordinate-z.yCoordinate+E.yOffset,G.xAdvance=0,G.yAdvance=0;break}}}function $N($,Q,Z){for(let J=0;J<Q.infos.length;J++){let q=Q.infos[J];if(!q)continue;if(B1($.gdef,q.glyphId)!==3)continue;let W=-1;if(J>0){let H=Q.infos[J-1];if(H){if(B1($.gdef,H.glyphId)===3)W=J-1}}if(W<0)continue;let K=Q.infos[W];if(!K)continue;for(let H of Z.subtables){let U=H.mark1Coverage.get(q.glyphId),N=H.mark2Coverage.get(K.glyphId);if(U===null||N===null)continue;let _=H.mark1Array.markRecords[U],X=H.mark2Array[N];if(!_||!X)continue;let j=X.mark2Anchors[_.markClass];if(!j)continue;let w=_.markAnchor,Y=Q.positions[J],V=Q.positions[W];if(!Y||!V)continue;Y.xOffset=j.xCoordinate-w.xCoordinate+V.xOffset,Y.yOffset=j.yCoordinate-w.yCoordinate+V.yOffset;break}}}function QN($,Q,Z,J){for(let q=0;q<Q.infos.length;q++){let W=Q.infos[q];if(!W)continue;if(c($,W.glyphId,Z.flag))continue;for(let K of Z.subtables){let H=!1,U=[];if(K.format===1){let N=JN($,Q,q,K,Z.flag);if(N)H=!0,U=N}else if(K.format===2){let N=qN($,Q,q,K,Z.flag);if(N)H=!0,U=N}else if(K.format===3){if(KN($,Q,q,K,Z.flag))H=!0,U=K.lookupRecords}if(H){IZ($,Q,q,U,J);break}}}}function ZN($,Q,Z,J){for(let q=0;q<Q.infos.length;q++){let W=Q.infos[q];if(!W)continue;if(c($,W.glyphId,Z.flag))continue;for(let K of Z.subtables){let H=!1,U=[];if(K.format===1){let N=WN($,Q,q,K,Z.flag);if(N)H=!0,U=N}else if(K.format===2){let N=HN($,Q,q,K,Z.flag);if(N)H=!0,U=N}else if(K.format===3){if(UN($,Q,q,K,Z.flag))H=!0,U=K.lookupRecords}if(H){IZ($,Q,q,U,J);break}}}}function JN($,Q,Z,J,q){let W=Q.infos[Z]?.glyphId,K=J.coverage.get(W);if(K===null)return null;let H=J.ruleSets[K];if(!H)return null;for(let U of H)if(G6($,Q,Z+1,U.inputSequence,q))return U.lookupRecords;return null}function qN($,Q,Z,J,q){let W=Q.infos[Z]?.glyphId;if(J.coverage.get(W)===null)return null;let H=J.classDef.get(W),U=J.classRuleSets[H];if(!U)return null;for(let N of U)if(E6($,Q,Z+1,N.inputClasses,J.classDef,q))return N.lookupRecords;return null}function KN($,Q,Z,J,q){let W=Z;for(let K of J.coverages){while(W<Q.infos.length&&c($,Q.infos[W]?.glyphId,q))W++;if(W>=Q.infos.length)return!1;if(K.get(Q.infos[W]?.glyphId)===null)return!1;W++}return!0}function WN($,Q,Z,J,q){let W=Q.infos[Z]?.glyphId,K=J.coverage.get(W);if(K===null)return null;let H=J.chainRuleSets[K];if(!H)return null;for(let U of H){if(!vZ($,Q,Z-1,U.backtrackSequence,q))continue;if(!G6($,Q,Z+1,U.inputSequence,q))continue;let N=Z+1;for(let _=0;_<U.inputSequence.length;_++){while(N<Q.infos.length&&c($,Q.infos[N]?.glyphId,q))N++;N++}if(!G6($,Q,N,U.lookaheadSequence,q))continue;return U.lookupRecords}return null}function HN($,Q,Z,J,q){let W=Q.infos[Z]?.glyphId;if(J.coverage.get(W)===null)return null;let H=J.inputClassDef.get(W),U=J.chainClassRuleSets[H];if(!U)return null;for(let N of U){if(!kZ($,Q,Z-1,N.backtrackClasses,J.backtrackClassDef,q))continue;if(!E6($,Q,Z+1,N.inputClasses,J.inputClassDef,q))continue;let _=Z+1;for(let X=0;X<N.inputClasses.length;X++){while(_<Q.infos.length&&c($,Q.infos[_]?.glyphId,q))_++;_++}if(!E6($,Q,_,N.lookaheadClasses,J.lookaheadClassDef,q))continue;return N.lookupRecords}return null}function UN($,Q,Z,J,q){let W=Z-1;for(let U of J.backtrackCoverages){while(W>=0&&c($,Q.infos[W]?.glyphId,q))W--;if(W<0)return!1;if(U.get(Q.infos[W]?.glyphId)===null)return!1;W--}let K=Z;for(let U of J.inputCoverages){while(K<Q.infos.length&&c($,Q.infos[K]?.glyphId,q))K++;if(K>=Q.infos.length)return!1;if(U.get(Q.infos[K]?.glyphId)===null)return!1;K++}let H=K;for(let U of J.lookaheadCoverages){while(H<Q.infos.length&&c($,Q.infos[H]?.glyphId,q))H++;if(H>=Q.infos.length)return!1;if(U.get(Q.infos[H]?.glyphId)===null)return!1;H++}return!0}function IZ($,Q,Z,J,q){let W=[...J].sort((K,H)=>H.sequenceIndex-K.sequenceIndex);for(let K of W){let H=q.gposLookups.find((N)=>N.index===K.lookupListIndex);if(!H)continue;if(Z+K.sequenceIndex>=Q.infos.length)continue;OZ($,Q,H.lookup,q)}}function G6($,Q,Z,J,q){let W=Z;for(let K of J){while(W<Q.infos.length&&c($,Q.infos[W]?.glyphId,q))W++;if(W>=Q.infos.length)return!1;if(Q.infos[W]?.glyphId!==K)return!1;W++}return!0}function vZ($,Q,Z,J,q){let W=Z;for(let K of J){while(W>=0&&c($,Q.infos[W]?.glyphId,q))W--;if(W<0)return!1;if(Q.infos[W]?.glyphId!==K)return!1;W--}return!0}function E6($,Q,Z,J,q,W){let K=Z;for(let H of J){while(K<Q.infos.length&&c($,Q.infos[K]?.glyphId,W))K++;if(K>=Q.infos.length)return!1;if(q.get(Q.infos[K]?.glyphId)!==H)return!1;K++}return!0}function kZ($,Q,Z,J,q,W){let K=Z;for(let H of J){while(K>=0&&c($,Q.infos[K]?.glyphId,W))K--;if(K<0)return!1;if(q.get(Q.infos[K]?.glyphId)!==H)return!1;K--}return!0}function c($,Q,Z){let J=$.gdef;if(!J)return!1;let q=B1(J,Q);if(Z&m1.IgnoreBaseGlyphs&&q===1)return!0;if(Z&m1.IgnoreLigatures&&q===2)return!0;if(Z&m1.IgnoreMarks&&q===3)return!0;let W=X7(Z);if(W!==0&&q===3){if(J.markAttachClassDef.get(Q)!==W)return!0}return!1}function NN($,Q){let Z=$.morx;if(!Z)return;for(let J of Z.chains)for(let q of J.subtables){if((J.defaultFlags&q.subFeatureFlags)===0)continue;switch(q.type){case 4:for(let W of Q.infos){let K=D9(q,W.glyphId);if(K!==null)W.glyphId=K}break;case 0:l8(q,Q.infos);break;case 1:d8(q,Q.infos);break;case 2:{let W=n8(q,Q.infos);if(W.length!==Q.infos.length)Q.initFromInfos(W);break}case 5:{let W=i8(q,Q.infos);if(W.length!==Q.infos.length)Q.initFromInfos(W);break}}}}var B0={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 g6($,Q){let J=0,q=new Map,W=Q?new Map:null,K="";function H(U){if(U.indexOf("+")!==-1)for(let N=+U;N--;)H(K);else{K=U;let N=U.split(">"),_=N[0]??"",X=N[1]??"";J+=parseInt(_,36);let j=String.fromCodePoint(J);J+=parseInt(X,36);let w=String.fromCodePoint(J);if(q.set(j,w),W)W.set(w,j)}}return $.split(",").forEach(H),{map:q,reverseMap:W}}var F0=null,CZ=null,SZ=null;function D0(){if(!F0){let{map:$,reverseMap:Q}=g6(B0.pairs,!0);F0=$,CZ=Q,SZ=g6(B0.canonical,!1).map}}function P8($){return D0(),F0?.get($)||null}function O8($){return D0(),CZ?.get($)||null}function I8($){return D0(),SZ?.get($)||null}var x6={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 t={},L0={};t.L=1;L0[1]="L";Object.keys(x6).forEach(($,Q)=>{t[$]=1<<Q+1;let Z=t[$];if(Z!==void 0)L0[Z]=$});Object.freeze(t);function e($){return t[$]??0}var h1=e("LRI")|e("RLI")|e("FSI"),k8=e("L")|e("R")|e("AL"),w1=e("B")|e("S")|e("WS")|e("ON")|e("FSI")|e("LRI")|e("RLI")|e("PDI"),H1=e("BN")|e("RLE")|e("LRE")|e("RLO")|e("LRO")|e("PDF"),u6=e("S")|e("WS")|e("B")|h1|e("PDI")|H1,v8=null;function _N(){if(!v8){v8=new Map;let $=0;for(let Q in x6)if(Object.hasOwn(x6,Q)){let Z=x6[Q],J="",q=0,W=!1,K=0;for(let H=0;H<=Z.length+1;H+=1){let U=Z[H];if(U!==","&&H!==Z.length)if(U==="+")W=!0,K=$=K+parseInt(J,36),J="";else J+=U;else{if(!W)K=$=K+parseInt(J,36),q=$;else q=$+parseInt(J,36);W=!1,J="",K=q;let N=e(Q);for(let _=$;_<q+1;_+=1)v8.set(_,N)}}}}}function E1($){_N();let Q=$.codePointAt(0);if(Q===void 0)return e("L");return v8?.get(Q)??e("L")}var D1=t.L??1,T1=t.R??2,V1=t.EN??4,f6=t.ES??8,C8=t.ET??16,l6=t.AN??32,S8=t.CS??64,A6=t.B??128,XN=t.S??256,h8=t.ON??512,jN=t.BN??1024,y8=t.NSM??2048,m8=t.AL??4096,hZ=t.LRO??8192,b8=t.RLO??16384,yZ=t.LRE??32768,M0=t.RLE??65536,mZ=t.PDF??131072,YN=t.LRI??262144,bZ=t.RLI??524288,wN=t.FSI??1048576,B6=t.PDI??2097152;function p($,Q){return $[Q]??0}function $1($,Q){return $[Q]??0}function F6($,Q){return $[Q]??""}function R0($,Q){let J=new Uint32Array($.length);for(let V=0;V<$.length;V++)J[V]=E1(F6($,V));let q=new Map;function W(V,z){let G=p(J,V);if(J[V]=z,q.set(G,(q.get(G)??0)-1),G&w1)q.set(w1,(q.get(w1)??0)-1);if(q.set(z,(q.get(z)??0)+1),z&w1)q.set(w1,(q.get(w1)??0)+1)}let K=new Uint8Array($.length),H=new Map,U=[],N=null;function _(V,z){for(let G=V;G<$.length;G++){let E=p(J,G);if(E&(T1|m8))return 1;if(E&(A6|D1)||z&&E===B6)return 0;if(E&h1){let B=X(G);G=B===-1?$.length:B}}return 0}function X(V){let z=1;for(let G=V+1;G<$.length;G++){let E=p(J,G);if(E&A6)break;if(E&B6){if(--z===0)return G}else if(E&h1)z++}return-1}for(let V=0;V<$.length;V++){if(!N)N={start:V,end:$.length-1,level:Q==="rtl"?1:Q==="ltr"?0:_(V,!1)},U.push(N);if(p(J,V)&A6)N.end=V,N=null}let j=M0|yZ|b8|hZ|h1|B6|mZ|A6,w=(V)=>V+(V&1?1:2),Y=(V)=>V+(V&1?2:1);for(let V=0;V<U.length;V++){let z=U[V];if(!z)continue;N=z;let G=[{_level:N.level,_override:0,_isolate:0}],E=0,B=0,F=0;q.clear();for(let S=N.start;S<=N.end;S++){let I=p(J,S),b=G[G.length-1];if(!b)continue;if(q.set(I,(q.get(I)??0)+1),I&w1)q.set(w1,(q.get(w1)??0)+1);if(I&j){if(I&(M0|yZ)){K[S]=b._level;let x=(I===M0?Y:w)(b._level);if(x<=125&&!E&&!B)G.push({_level:x,_override:0,_isolate:0});else if(!E)B++}else if(I&(b8|hZ)){K[S]=b._level;let x=(I===b8?Y:w)(b._level);if(x<=125&&!E&&!B)G.push({_level:x,_override:I&b8?T1:D1,_isolate:0});else if(!E)B++}else if(I&h1){if(I&wN)I=_(S+1,!0)===1?bZ:YN;if(K[S]=b._level,b._override)W(S,b._override);let x=(I===bZ?Y:w)(b._level);if(x<=125&&E===0&&B===0)F++,G.push({_level:x,_override:0,_isolate:1,_isolInitIndex:S});else E++}else if(I&B6){if(E>0)E--;else if(F>0){B=0;while(G.length>0){if(G[G.length-1]?._isolate)break;G.pop()}let P=G[G.length-1]?._isolInitIndex;if(P!=null)H.set(P,S),H.set(S,P);G.pop(),F--}if(b=G[G.length-1],!b)continue;if(K[S]=b._level,b._override)W(S,b._override)}else if(I&mZ){if(E===0){if(B>0)B--;else if(!b._isolate&&G.length>1){if(G.pop(),b=G[G.length-1],!b)continue}}K[S]=b._level}else if(I&A6)K[S]=N.level}else if(K[S]=b._level,b._override&&I!==jN)W(S,b._override)}let v=[],L=null;for(let S=N.start;S<=N.end;S++){let I=p(J,S);if(!(I&H1)){let b=K[S]??0,x=!!(I&h1),P=I===B6;if(L&&b===L._level)L._end=S,L._endsWithIsolInit=x;else L={_start:S,_end:S,_level:b,_startsWithPDI:P,_endsWithIsolInit:x},v.push(L)}}let h=[];for(let S=0;S<v.length;S++){let I=v[S];if(!I)continue;if(!I._startsWithPDI||I._startsWithPDI&&!H.has(I._start)){L=I;let b=[I];while(L?._endsWithIsolInit){let u=H.get(L._end);if(u==null)break;let s=!1;for(let i=S+1;i<v.length;i++){let d=v[i];if(d?._start===u){L=d,b.push(d),s=!0;break}}if(!s)break}let x=[];for(let u of b)for(let s=u._start;s<=u._end;s++)x.push(s);let P=x[0]??0,o=K[P]??0,y=N.level;for(let u=P-1;u>=0;u--)if(!(p(J,u)&H1)){y=K[u]??0;break}let g=x[x.length-1]??0,R=K[g]??0,m=N.level;if(!(p(J,g)&h1)){for(let u=g+1;u<=N.end;u++)if(!(p(J,u)&H1)){m=K[u]??0;break}}h.push({_seqIndices:x,_sosType:Math.max(y,o)%2?T1:D1,_eosType:Math.max(m,R)%2?T1:D1})}}for(let S of h){let{_seqIndices:I,_sosType:b,_eosType:x}=S,P=I[0]??0,o=(K[P]??0)&1?T1:D1;if(q.get(y8))for(let y=0;y<I.length;y++){let g=$1(I,y);if(p(J,g)&y8){let R=b;for(let m=y-1;m>=0;m--){let u=$1(I,m);if(!(p(J,u)&H1)){R=p(J,u);break}}W(g,R&(h1|B6)?h8:R)}}if(q.get(V1))for(let y=0;y<I.length;y++){let g=$1(I,y);if(p(J,g)&V1)for(let R=y-1;R>=-1;R--){let m=R===-1?b:p(J,$1(I,R));if(m&k8){if(m===m8)W(g,l6);break}}}if(q.get(m8))for(let y=0;y<I.length;y++){let g=$1(I,y);if(p(J,g)&m8)W(g,T1)}if(q.get(f6)||q.get(S8))for(let y=1;y<I.length-1;y++){let g=$1(I,y);if(p(J,g)&(f6|S8)){let R=0,m=0;for(let u=y-1;u>=0;u--)if(R=p(J,$1(I,u)),!(R&H1))break;for(let u=y+1;u<I.length;u++)if(m=p(J,$1(I,u)),!(m&H1))break;if(R===m&&(p(J,g)===f6?R===V1:R&(V1|l6)))W(g,R)}}if(q.get(V1))for(let y=0;y<I.length;y++){let g=$1(I,y);if(p(J,g)&V1){for(let R=y-1;R>=0;R--){let m=$1(I,R);if(!(p(J,m)&(C8|H1)))break;W(m,V1)}for(y++;y<I.length;y++){let R=$1(I,y);if(!(p(J,R)&(C8|H1|V1)))break;if(p(J,R)!==V1)W(R,V1)}}}if(q.get(C8)||q.get(f6)||q.get(S8))for(let y=0;y<I.length;y++){let g=$1(I,y);if(p(J,g)&(C8|f6|S8)){W(g,h8);for(let R=y-1;R>=0;R--){let m=$1(I,R);if(!(p(J,m)&H1))break;W(m,h8)}for(let R=y+1;R<I.length;R++){let m=$1(I,R);if(!(p(J,m)&H1))break;W(m,h8)}}}if(q.get(V1)){let y=b;for(let g=0;g<I.length;g++){let R=$1(I,g),m=p(J,R);if(m&V1){if(y===D1)W(R,D1)}else if(m&k8)y=m}}if(q.get(w1)){let y=T1|V1|l6,g=y|D1,R=[],m=[];for(let u=0;u<I.length;u++){let s=$1(I,u);if(p(J,s)&w1){let i=F6($,s);if(P8(i)!==null)if(m.length<63)m.push({char:i,seqIndex:u});else break;else{let r=O8(i);if(r!==null)for(let O=m.length-1;O>=0;O--){let a=m[O];if(!a)continue;let k=a.char,P1=I8(i),C=I8(k);if(k===r||P1&&k===O8(P1)||C&&P8(C)===i){R.push([a.seqIndex,u]),m.length=O;break}}}}}R.sort((u,s)=>u[0]-s[0]);for(let u of R){let[s,i]=u,d=!1,r=0;for(let O=s+1;O<i;O++){let a=$1(I,O),k=p(J,a);if(k&g){d=!0;let P1=k&y?T1:D1;if(P1===o){r=P1;break}}}if(d&&!r){r=b;for(let O=s-1;O>=0;O--){let a=$1(I,O),k=p(J,a);if(k&g){let P1=k&y?T1:D1;r=P1!==o?P1:o;break}}}if(r){if(J[$1(I,s)]=r,J[$1(I,i)]=r,r!==o){for(let O=s+1;O<I.length;O++){let a=$1(I,O);if(!(p(J,a)&H1)){if(E1(F6($,a))&y8)J[a]=r;break}}for(let O=i+1;O<I.length;O++){let a=$1(I,O);if(!(p(J,a)&H1)){if(E1(F6($,a))&y8)J[a]=r;break}}}}}for(let u=0;u<I.length;u++){let s=$1(I,u);if(p(J,s)&w1){let i=u,d=u,r=b;for(let a=u-1;a>=0;a--){let k=$1(I,a);if(p(J,k)&H1)i=a;else{r=p(J,k)&y?T1:D1;break}}let O=x;for(let a=u+1;a<I.length;a++){let k=$1(I,a);if(p(J,k)&(w1|H1))d=a;else{O=p(J,k)&y?T1:D1;break}}for(let a=i;a<=d;a++)J[$1(I,a)]=r===O?r:o;u=d}}}}for(let S=N.start;S<=N.end;S++){let I=K[S]??0,b=p(J,S);if(I&1){if(b&(D1|V1|l6))K[S]++}else if(b&T1)K[S]++;else if(b&(l6|V1))K[S]+=2;if(b&H1)K[S]=S===0?N.level:K[S-1]??N.level;if(S===N.end||E1(F6($,S))&(XN|A6))for(let x=S;x>=0&&E1(F6($,x))&u6;x--)K[x]=N.level}}return{levels:K,paragraphs:U}}var gZ="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 T0=null;function VN(){if(!T0){let{map:$,reverseMap:Q}=g6(gZ,!0);if(Q)Q.forEach((Z,J)=>{$.set(J,Z)});T0=$}}function g8($){return VN(),T0?.get($)||null}function xZ($,Q,Z,J){let q=$.length,W=Math.max(0,Z==null?0:+Z),K=Math.min(q-1,J==null?q-1:+J),H=[];for(let U of Q.paragraphs){let N=Math.max(W,U.start),_=Math.min(K,U.end);if(N<_){let X=Q.levels.slice(N,_+1);for(let Y=_;Y>=N;Y--){let V=$[Y];if(V===void 0)break;if(!(E1(V)&u6))break;X[Y-N]=U.level}let j=U.level,w=1/0;for(let Y=0;Y<X.length;Y++){let V=X[Y]??0;if(V>j)j=V;if(V<w)w=V|1}for(let Y=j;Y>=w;Y--)for(let V=0;V<X.length;V++)if((X[V]??0)>=Y){let G=V;while(V+1<X.length){if((X[V+1]??0)<Y)break;V++}if(V>G)H.push([G+N,V+N])}}}return H}function x8($,Q,Z,J){let q=xZ($,Q,Z,J),W=[];for(let K=0;K<$.length;K++)W[K]=K;for(let[K,H]of q){let U=W.slice(K,H+1);for(let N=U.length;N--;){let _=U[N];if(_!==void 0)W[H-N]=_}}return W}function uZ($,Q=4){let Z=Q===5?"rtl":Q===4?"ltr":"auto",J=R0($,Z);return{levels:J.levels,paragraphs:J.paragraphs}}function zN($,Q,Z=0,J=$.length){return Array.from(x8($,Q,Z,J))}function fZ($,Q){if($.length===0)return $;let Z="x".repeat($.length),J=x8(Z,Q,0,$.length),q=[];for(let W of J)if(W<$.length){let K=$[W];if(K)q.push(K)}return q}function lZ($){let Q=String.fromCodePoint($),Z=g8(Q);return Z?Z.codePointAt(0)??$:$}function dZ($,Q){for(let[Z,J]of $.entries()){let q=Q[Z];if(q===void 0)continue;if(q&1){let W=lZ(J.codepoint);if(W!==J.codepoint)J.codepoint=W}}}var q6={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 GN($){return E1($)}function EN($){let Q=String.fromCodePoint($);return(E1(Q)&(q6.R|q6.AL))!==0}function AN($){let Q=String.fromCodePoint($);return(E1(Q)&q6.L)!==0}function BN($){for(let Q of $){let Z=E1(Q);if(Z&q6.L)return 4;if(Z&(q6.R|q6.AL))return 5}return 4}function FN($,Q=4){if($.length===0)return{infos:$,levels:new Uint8Array(0)};let Z=$.map((W)=>String.fromCodePoint(W.codepoint)).join(""),J=uZ(Z,Q);return dZ($,J.levels),{infos:fZ($,J),levels:J.levels}}var nZ;((C)=>{C[C.BK=0]="BK";C[C.CR=1]="CR";C[C.LF=2]="LF";C[C.CM=3]="CM";C[C.NL=4]="NL";C[C.SG=5]="SG";C[C.WJ=6]="WJ";C[C.ZW=7]="ZW";C[C.GL=8]="GL";C[C.SP=9]="SP";C[C.ZWJ=10]="ZWJ";C[C.B2=11]="B2";C[C.BA=12]="BA";C[C.BB=13]="BB";C[C.HY=14]="HY";C[C.CB=15]="CB";C[C.CL=16]="CL";C[C.CP=17]="CP";C[C.EX=18]="EX";C[C.IN=19]="IN";C[C.NS=20]="NS";C[C.OP=21]="OP";C[C.QU=22]="QU";C[C.IS=23]="IS";C[C.NU=24]="NU";C[C.PO=25]="PO";C[C.PR=26]="PR";C[C.SY=27]="SY";C[C.AI=28]="AI";C[C.AL=29]="AL";C[C.CJ=30]="CJ";C[C.EB=31]="EB";C[C.EM=32]="EM";C[C.H2=33]="H2";C[C.H3=34]="H3";C[C.HL=35]="HL";C[C.ID=36]="ID";C[C.JL=37]="JL";C[C.JV=38]="JV";C[C.JT=39]="JT";C[C.RI=40]="RI";C[C.SA=41]="SA";C[C.XX=42]="XX"})(nZ||={});var iZ;((K)=>{K[K.Direct=0]="Direct";K[K.Indirect=1]="Indirect";K[K.CombiningIndirect=2]="CombiningIndirect";K[K.CombiningProhibited=3]="CombiningProhibited";K[K.Prohibited=4]="Prohibited";K[K.Explicit=5]="Explicit"})(iZ||={});var pZ;((J)=>{J[J.NoBreak=0]="NoBreak";J[J.Optional=1]="Optional";J[J.Mandatory=2]="Mandatory"})(pZ||={});function oZ($){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 DN($,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=$,J=Q;if($===3||$===10)Z=29;if(Q===3||Q===10)J=29;if($=Z,Q=J,$===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 LN($){let Q=[];for(let Z of $)Q.push(Z.codePointAt(0)??0);return P0(Q)}function P0($){let Q=$.length,Z=[],J=[];for(let q of $)Z.push(oZ(q));J.push(0);for(let q=1;q<Q;q++){let W=Z[q-1],K=Z[q];switch(DN(W,K)){case 5:J.push(2);break;case 0:J.push(1);break;case 1:if(W===9)J.push(1);else J.push(0);break;default:J.push(0)}}return J.push(2),{breaks:J,classes:Z}}function MN($){let Q=$.map((Z)=>Z.codepoint);return P0(Q)}function RN($,Q){for(let Z=Q+1;Z<$.breaks.length;Z++)if($.breaks[Z]!==0)return Z;return $.breaks.length-1}function TN($,Q){if(Q<0||Q>=$.breaks.length)return!1;return $.breaks[Q]!==0}function PN($,Q){if(Q<0||Q>=$.breaks.length)return!1;return $.breaks[Q]===2}function ON($){let Q=[];for(let Z=0;Z<$.breaks.length;Z++)if($.breaks[Z]!==0)Q.push(Z);return Q}var cZ;((D)=>{D.Common="Zyyy";D.Inherited="Zinh";D.Unknown="Zzzz";D.Latin="Latn";D.Greek="Grek";D.Cyrillic="Cyrl";D.Armenian="Armn";D.Hebrew="Hebr";D.Arabic="Arab";D.Syriac="Syrc";D.Thaana="Thaa";D.Devanagari="Deva";D.Bengali="Beng";D.Gurmukhi="Guru";D.Gujarati="Gujr";D.Oriya="Orya";D.Tamil="Taml";D.Telugu="Telu";D.Kannada="Knda";D.Malayalam="Mlym";D.Sinhala="Sinh";D.Thai="Thai";D.Lao="Laoo";D.Tibetan="Tibt";D.Myanmar="Mymr";D.Georgian="Geor";D.Hangul="Hang";D.Ethiopic="Ethi";D.Cherokee="Cher";D.CanadianAboriginal="Cans";D.Ogham="Ogam";D.Runic="Runr";D.Khmer="Khmr";D.Mongolian="Mong";D.Hiragana="Hira";D.Katakana="Kana";D.Bopomofo="Bopo";D.Han="Hani";D.Yi="Yiii";D.OldItalic="Ital";D.Gothic="Goth";D.Deseret="Dsrt";D.Tagalog="Tglg";D.Hanunoo="Hano";D.Buhid="Buhd";D.Tagbanwa="Tagb";D.Limbu="Limb";D.TaiLe="Tale";D.LinearB="Linb";D.Ugaritic="Ugar";D.Shavian="Shaw";D.Osmanya="Osma";D.Cypriot="Cprt";D.Braille="Brai";D.Buginese="Bugi";D.Coptic="Copt";D.NewTaiLue="Talu";D.Glagolitic="Glag";D.Tifinagh="Tfng";D.SylotiNagri="Sylo";D.OldPersian="Xpeo";D.Kharoshthi="Khar";D.Balinese="Bali";D.Cuneiform="Xsux";D.Phoenician="Phnx";D.PhagsPa="Phag";D.Nko="Nkoo";D.Sundanese="Sund";D.Lepcha="Lepc";D.OlChiki="Olck";D.Vai="Vaii";D.Saurashtra="Saur";D.KayahLi="Kali";D.Rejang="Rjng";D.Lycian="Lyci";D.Carian="Cari";D.Lydian="Lydi";D.Cham="Cham";D.TaiTham="Lana";D.TaiViet="Tavt";D.Avestan="Avst";D.EgyptianHieroglyphs="Egyp";D.Samaritan="Samr";D.Lisu="Lisu";D.Bamum="Bamu";D.Javanese="Java";D.MeeteiMayek="Mtei";D.ImperialAramaic="Armi";D.OldSouthArabian="Sarb";D.InscriptionalParthian="Prti";D.InscriptionalPahlavi="Phli";D.OldTurkic="Orkh";D.Kaithi="Kthi";D.Batak="Batk";D.Brahmi="Brah";D.Mandaic="Mand";D.Chakma="Cakm";D.MeroiticCursive="Merc";D.MeroiticHieroglyphs="Mero";D.Miao="Plrd";D.Sharada="Shrd";D.SoraSompeng="Sora";D.Takri="Takr";D.CaucasianAlbanian="Aghb";D.BassaVah="Bass";D.Duployan="Dupl";D.Elbasan="Elba";D.Grantha="Gran";D.PahawhHmong="Hmng";D.Khojki="Khoj";D.LinearA="Lina";D.Mahajani="Mahj";D.Manichaean="Mani";D.MendeKikakui="Mend";D.Modi="Modi";D.Mro="Mroo";D.OldNorthArabian="Narb";D.Nabataean="Nbat";D.Palmyrene="Palm";D.PauCinHau="Pauc";D.OldPermic="Perm";D.PsalterPahlavi="Phlp";D.Siddham="Sidd";D.Khudawadi="Sind";D.Tirhuta="Tirh";D.WarangCiti="Wara";D.Ahom="Ahom";D.AnatolianHieroglyphs="Hluw";D.Hatran="Hatr";D.Multani="Mult";D.OldHungarian="Hung";D.SignWriting="Sgnw";D.Adlam="Adlm";D.Bhaiksuki="Bhks";D.Marchen="Marc";D.Newa="Newa";D.Osage="Osge";D.Tangut="Tang";D.MasaramGondi="Gonm";D.Nushu="Nshu";D.Soyombo="Soyo";D.ZanabazarSquare="Zanb";D.Dogra="Dogr";D.GunjalaGondi="Gong";D.Makasar="Maka";D.Medefaidrin="Medf";D.HanifiRohingya="Rohg";D.Sogdian="Sogd";D.OldSogdian="Sogo";D.Elymaic="Elym";D.Nandinagari="Nand";D.NyiakengPuachueHmong="Hmnp";D.Wancho="Wcho";D.Yezidi="Yezi";D.Chorasmian="Chrs";D.DivesAkuru="Diak";D.KhitanSmallScript="Kits";D.Vithkuqi="Vith";D.OldUyghur="Ougr";D.Cypro_Minoan="Cpmn";D.Tangsa="Tnsa";D.Toto="Toto";D.Kawi="Kawi";D.NagMundari="Nagm"})(cZ||={});var sZ=[{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 d6($){let Q=0,Z=sZ.length-1;while(Q<=Z){let J=Q+Z>>>1,q=sZ[J];if($<q.start)Z=J-1;else if($>q.end)Q=J+1;else return q.script}return"Zzzz"}function IN($){let Q=new Map;for(let q of $){let W=q.codePointAt(0)??0,K=d6(W);if(K==="Zyyy"||K==="Zinh")continue;Q.set(K,(Q.get(K)??0)+1)}if(Q.size===0)return"Zyyy";let Z="Zyyy",J=0;for(let[q,W]of Q)if(W>J)J=W,Z=q;return Z}function vN($){let Q=new Set;for(let Z of $){let J=Z.codePointAt(0)??0,q=d6(J);Q.add(q)}return Array.from(Q)}function kN($,Q){for(let Z of $){let J=Z.codePointAt(0)??0,q=d6(J);if(q!==Q&&q!=="Zyyy"&&q!=="Zinh")return!1}return!0}function CN($){let Q=[];if($.length===0)return Q;let Z=null,J=0,q=0,W=[];for(let K of $)W.push(K);for(let K=0;K<W.length;K++){let U=W[K].codePointAt(0)??0,N=d6(U);if(N==="Zyyy"||N==="Zinh"){if(Z!==null)N=Z}if(Z===null)Z=N,J=K;else if(N!==Z&&N!=="Zyyy"&&N!=="Zinh")Q.push({script:Z,start:J,end:K,text:W.slice(J,K).join("")}),Z=N,J=K}if(Z!==null)Q.push({script:Z,start:J,end:W.length,text:W.slice(J).join("")});return Q}function SN($){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"}function hN($){return new Set(["Arab","Syrc","Hebr","Thaa","Nkoo","Deva","Beng","Guru","Gujr","Orya","Taml","Telu","Knda","Mlym","Sinh","Thai","Laoo","Tibt","Mymr","Khmr","Mong","Hang"]).has($)}function yN($){return 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"]).has($)?"rtl":"ltr"}var aZ;((V)=>{V[V.Other=0]="Other";V[V.CR=1]="CR";V[V.LF=2]="LF";V[V.Control=3]="Control";V[V.Extend=4]="Extend";V[V.ZWJ=5]="ZWJ";V[V.Regional_Indicator=6]="Regional_Indicator";V[V.Prepend=7]="Prepend";V[V.SpacingMark=8]="SpacingMark";V[V.L=9]="L";V[V.V=10]="V";V[V.T=11]="T";V[V.LV=12]="LV";V[V.LVT=13]="LVT";V[V.Extended_Pictographic=14]="Extended_Pictographic"})(aZ||={});var rZ;((F)=>{F[F.Other=0]="Other";F[F.CR=1]="CR";F[F.LF=2]="LF";F[F.Newline=3]="Newline";F[F.Extend=4]="Extend";F[F.ZWJ=5]="ZWJ";F[F.Regional_Indicator=6]="Regional_Indicator";F[F.Format=7]="Format";F[F.Katakana=8]="Katakana";F[F.Hebrew_Letter=9]="Hebrew_Letter";F[F.ALetter=10]="ALetter";F[F.Single_Quote=11]="Single_Quote";F[F.Double_Quote=12]="Double_Quote";F[F.MidNumLet=13]="MidNumLet";F[F.MidLetter=14]="MidLetter";F[F.MidNum=15]="MidNum";F[F.Numeric=16]="Numeric";F[F.ExtendNumLet=17]="ExtendNumLet";F[F.WSegSpace=18]="WSegSpace";F[F.Extended_Pictographic=19]="Extended_Pictographic"})(rZ||={});function O0($){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 tZ($){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(O0($)===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 I0($){let Q=$.length,Z=[],J=[];for(let K of $)Z.push(O0(K));if(Q===0)return{boundaries:J,properties:Z};let q=0,W=!1;for(let K=1;K<Q;K++){let H=Z[K-1],U=Z[K],N=!0;if(H===1&&U===2)N=!1;else if(H===3||H===1||H===2)N=!0;else if(U===3||U===1||U===2)N=!0;else if(H===9&&(U===9||U===10||U===12||U===13))N=!1;else if((H===12||H===10)&&(U===10||U===11))N=!1;else if((H===13||H===11)&&U===11)N=!1;else if(U===4||U===5)N=!1;else if(U===8)N=!1;else if(H===7)N=!1;else if(W&&H===5&&U===14)N=!1;else if(H===6&&U===6){if(q%2===1)N=!1}if(U===14)W=!0;else if(U!==4&&U!==5)W=!1;if(U===6)q++;else q=0;if(N)J.push(K)}return J.push(Q),{boundaries:J,properties:Z}}function eZ($){let Q=$.length,Z=[],J=[];for(let W of $)Z.push(tZ(W));if(Q===0)return{boundaries:J,properties:Z};J.push(0);let q=0;for(let W=1;W<Q;W++){let K=Z[W-1],H=Z[W],U=!0;if(K===1&&H===2)U=!1;else if(K===3||K===1||K===2)U=!0;else if(H===3||H===1||H===2)U=!0;else if(K===5&&H===19)U=!1;else if(K===18&&H===18)U=!1;else if(H===7||H===4||H===5)U=!1;else if((K===10||K===9)&&(H===10||H===9))U=!1;else if((K===10||K===9)&&(H===14||H===13||H===11)){if(W+1<Q){let N=Z[W+1];if(N===10||N===9)U=!1}}else if(K===16&&H===16)U=!1;else if((K===10||K===9)&&H===16)U=!1;else if(K===16&&(H===10||H===9))U=!1;else if(K===16&&(H===15||H===13||H===11)){if(W+1<Q&&Z[W+1]===16)U=!1}else if(K===8&&H===8)U=!1;else if((K===10||K===9||K===16||K===8||K===17)&&H===17)U=!1;else if(K===17&&(H===10||H===9||H===16||H===8))U=!1;else if(K===6&&H===6){if(q%2===1)U=!1}if(H===6)q++;else q=0;if(U)J.push(W)}return J.push(Q),{boundaries:J,properties:Z}}function mN($){let Q=[],Z=[];for(let K of $)Q.push(K.codePointAt(0)??0),Z.push(K);let{boundaries:J}=I0(Q),q=[],W=0;for(let K of J){if(K>W)q.push(Z.slice(W,K).join(""));W=K}return q}function bN($){let Q=[],Z=[];for(let K of $)Q.push(K.codePointAt(0)??0),Z.push(K);let{boundaries:J,properties:q}=eZ(Q),W=[];for(let K=0;K<J.length-1;K++){let H=J[K],U=J[K+1],N=!1;for(let _=H;_<U;_++){let X=q[_];if(X!==18&&X!==1&&X!==2&&X!==3){N=!0;break}}if(N)W.push(Z.slice(H,U).join(""))}return W}function gN($){let Q=[];for(let J of $)Q.push(J.codePointAt(0)??0);let{boundaries:Z}=I0(Q);return Z.length}export{oH as verticalLayoutFeatures,ZZ as verticalKanaAlternates,$Z as verticalForms,QZ as verticalAlternatesRotation,KU as traditionalForms,eH as thirdWidthForms,L6 as tagToString,M as tag,bH as tabularFigures,kH as swash,fH as superscript,lH as subscript,MH as stylisticSets,a4 as stylisticSet,vH as stylisticAlternates,x4 as strokePath,TH as standardLigatures,bN as splitWords,mN as splitGraphemes,t4 as smallCaps,uH as slashedZero,qU as simplifiedForms,gW as shapedTextToSVGWithVariation,yW as shapedTextToSVG,IU as shape,dH as scientificInferiors,sH as ruby,Q$ as resolveDupeGlyph,M$ as resizeBitmap,L8 as reorderMarks,fZ as reorderGlyphs,bW as renderShapedTextWithVariation,hW as renderShapedText,m4 as renderSdf,UH as rasterizeText,i4 as rasterizePathWithGradient,F8 as rasterizePath,WH as rasterizeGlyph,tH as quarterWidthForms,rH as proportionalWidthForms,mH as proportionalFigures,l8 as processRearrangement,n8 as processLigature,i8 as processInsertion,d8 as processContextual,FN as processBidi,CH as petiteCaps,z8 as pathToSVG,G8 as pathToCanvas,U9 as parseFeat,H9 as parseCpal,W9 as parseColr,xH as ordinals,Bq as openTypeTagToAat,hH as oldstyleFigures,u4 as obliquePath,o8 as normalizeAxisValue,FH as normalize,PN as mustBreakAt,nK as matchAxisValue,yH as liningFigures,pH as kerning,_W as justifyParagraph,E$ as justify,ZU as jis90Forms,QU as jis83Forms,$U as jis78Forms,JU as jis2004Forms,U7 as isVariationIndexTable,kN as isScript,EN as isRTL,lK as isOlderSiblingFont,AN as isLTR,Vq as isExclusiveFeature,fK as isElidableAxisValue,hN as isComplexScript,Uq as isColrV1,D8 as interpolateGradient,OH as historicalLigatures,rK as hasVertOriginY,iK as hasSvgGlyph,Eq as hasSettingValue,Oq as hasGlyphOutline,yK as hasGlyphBitmap,Zq as hasColorGlyph,hJ as hasColorBitmap,cH as halfWidthForms,SW as glyphToSVG,mW as glyphBufferToShapedGlyphs,IK as getXHeightDelta,tZ as getWordBreakProperty,ZW as getVorgDelta,zN as getVisualOrder,cK as getVerticalMetrics,aK as getVertOriginY,$W as getTsbDelta,N$ as getTrackingValue,xW as getTextWidth,pK as getSvgGlyphIds,W$ as getSvgDocument,XW as getSubstitutedLookups,$$ as getStrikeForPpem,Gq as getSettingByValue,vN as getScripts,SN as getScriptTag,CN as getScriptRuns,yN as getScriptDirection,d6 as getScript,SK as getSbixGlyphBitmap,WZ as getOrCreateShapePlan,lZ as getMirror,I6 as getMetricDelta,oZ as getLineBreakClass,Nq as getLayerPaint,_K as getKerxValue,B9 as getKernValue,OK as getHDescenderDelta,PK as getHAscenderDelta,O0 as getGraphemeBreakProperty,e9 as getGlyphPathWithVariation,s1 as getGlyphPath,q8 as getGlyphLocation,Pq as getGlyphDelta,Yq as getFeature,B$ as getExactBounds,uZ as getEmbeddings,N7 as getDeviceDelta,zq as getDefaultSetting,u1 as getCombiningClass,Wq as getColorVariationDelta,T5 as getColorPaint,R5 as getColorLayers,yJ as getColorBitmapSizes,_q as getColor,Kq as getClipBox,GN as getCharType,uJ as getCffGlyphWidth,vK as getCapHeightDelta,QW as getBsbDelta,CJ as getBitmapGlyph,xK as getAxisValuesForAxis,dK as getAxisValueNumber,bK as getAxisRecord,gK as getAxisIndex,hK as getAvailablePpemSizes,wq as getAllFeatures,ON as getAllBreakOpportunities,c8 as getAdvanceWidthDelta,eK as getAdvanceHeightDelta,Y8 as gaussianBlur,aH as fullWidthForms,gH as fractions,eZ as findWordBoundaries,RN as findNextBreak,v6 as findMatchingFeatureVariation,I0 as findGraphemeBoundaries,uK as findAxisValueByNameId,WU as features,JZ as feature,J9 as executeCffCharString,Q8 as executeCff2CharString,A$ as evaluateConditionSet,l4 as emboldenPath,D$ as emboldenBitmap,PH as discretionaryLigatures,IN as detectScript,BN as detectDirection,M8 as decompose,q0 as createShapePlan,uW as createPath2D,n4 as createGradientBitmap,v9 as createGaussianKernel,KJ as createFace,K1 as createBitmap,gN as countGraphemes,I9 as copyBitmap,S6 as convertBitmap,t9 as contourToPath,IH as contextualAlternates,f4 as condensePath,HU as combineFeatures,Xq as colorToRgba,jq as colorToHex,F$ as clearBitmap,RH as characterVariants,r4 as characterVariant,nH as caseSensitiveForms,e4 as capsToSmallCaps,iH as capitalSpacing,TN as canBreakAt,J8 as calculateTupleScalar,j8 as calculateLineWidth,NW as breakIntoLines,w8 as boxBlur,R$ as blurBitmap,L$ as blendBitmap,NH as bitmapToRGBA,_H as bitmapToGray,sK as applyTracking,D9 as applyNonContextual,dZ as applyMirroring,jW as applyFeatureVariations,Z0 as applyFallbackMarkPositioning,J0 as applyFallbackKerning,hq as applyDeviceAdjustment,h0 as applyAvarMapping,p8 as applyAvar,P0 as analyzeLineBreaksFromCodepoints,MN as analyzeLineBreaksForGlyphs,LN as analyzeLineBreaks,SH as allSmallCaps,Aq as aatToOpenTypeTag,rZ as WordBreakProperty,v5 as VerticalPositionSetting,g5 as UpperCaseSetting,C0 as UnicodeBuffer,f as Tags,y5 as StylisticAlternativesSetting,x5 as SmartSwashSetting,cZ as Script,M9 as SbixGraphicType,I1 as Reader,b1 as PixelMode,P5 as PaletteType,D5 as PaintFormat,C5 as NumberSpacingSetting,k5 as NumberCaseSetting,c4 as NormalizationMode,O6 as MvarTags,F9 as MorxSubtableType,b5 as LowerCaseSetting,nZ as LineBreakClass,I5 as LigatureSetting,G$ as JustifyMode,aZ as GraphemeBreakProperty,c6 as GlyphClass,a1 as GlyphBuffer,S5 as FractionsSetting,X6 as Font,j6 as FillRule,O5 as FeatureType,fN as FeatureTags,l5 as FeatureFlags,r1 as Face,L5 as Extend,s6 as Direction,u5 as DiacriticsSetting,m5 as ContextualAlternativesSetting,M5 as CompositeMode,v0 as ClusterLevel,f5 as CharacterShapeSetting,vJ as CbdtImageFormat,h5 as CaseSensitiveLayoutSetting,k0 as BufferFlags,pZ as BreakOpportunity,iZ as BreakAction,q6 as BidiType,R9 as AxisValueFlags};
|
|
10
10
|
|
|
11
|
-
//# debugId=
|
|
11
|
+
//# debugId=087113C8599BDEF364756E2164756E21
|