text-shaper 0.1.0 → 0.1.2
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 +13 -1
- package/dist/index.js +10 -10
- package/dist/index.js.map +41 -29
- package/dist/perf/benchmark-runner-eksh2b26.js +0 -0
- package/dist/perf/benchmark-runner.html +517 -0
- package/dist/perf/comparison-tests.js +22676 -0
- package/dist/perf/comparison-tests.js.map +111 -0
- package/dist/perf/cpu/cpu-perf.js +21920 -0
- package/dist/perf/cpu/cpu-perf.js.map +108 -0
- package/dist/perf/gpu/webgl-perf.js +470 -0
- package/dist/perf/gpu/webgl-perf.js.map +11 -0
- package/dist/perf/gpu/webgpu-perf.js +442 -0
- package/dist/perf/gpu/webgpu-perf.js.map +11 -0
- package/dist/perf/index.html +258 -0
- package/dist/perf/module-loader.js +18 -0
- package/dist/perf/utils/perf-utils.js +170 -0
- package/dist/perf/utils/perf-utils.js.map +10 -0
- package/dist/raster/asymmetric-stroke.d.ts +57 -0
- package/dist/raster/bbox.d.ts +91 -0
- package/dist/raster/bitmap-utils.d.ts +82 -0
- package/dist/raster/blur.d.ts +27 -0
- package/dist/raster/cascade-blur.d.ts +45 -0
- package/dist/raster/gradient.d.ts +61 -0
- package/dist/raster/msdf.d.ts +125 -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 +18 -1
- package/dist/render/outline-transform.d.ts +169 -0
- package/dist/render/path.d.ts +33 -0
- package/package.json +2 -2
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 mK=Object.defineProperty;var gK=($,Q)=>{for(var Z in Q)mK($,Z,{get:Q[Z],enumerable:!0,configurable:!0,set:(J)=>Q[Z]=()=>J})};var a6=($,Q)=>()=>($&&(Q=$($=0)),Q);var e8,I6;var a0=a6(()=>{e8=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]),I6=new Uint16Array([1024,1536,1280,1536,0,256,768,512])});var r0,t0,e0;var $5=a6(()=>{r0=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]),t0=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]),e0=new Uint8Array(122784)});function k($,Q,Z){let J=new Uint8Array($.length),K=new Uint8Array(Z.length);for(let q=0;q<$.length;q++)J[q]=$.charCodeAt(q);for(let q=0;q<Z.length;q++)K[q]=Z.charCodeAt(q);return{prefix:J,transform:Q,suffix:K}}function Q5($,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 Z5($,Q,Z,J,K,q){let W=$9[K],U=W.transform,H=U<12?0:U-11,_=Q;if(H>J)H=J;for(let V=0;V<W.prefix.length;V++)$[Q++]=W.prefix[V];let N=Z+H,j=J-H;if(U<=9)j-=U;for(let V=0;V<j;V++)$[Q++]=q[N+V];let X=Q-j;if(U===10)Q5($,X);else if(U===11)while(j>0){let V=Q5($,X);X+=V,j-=V}for(let V=0;V<W.suffix.length;V++)$[Q++]=W.suffix[V];return Q-_}var $9;var J5=a6(()=>{$9=[k("",0,""),k("",0," "),k(" ",0," "),k("",12,""),k("",10," "),k("",0," the "),k(" ",0,""),k("s ",0," "),k("",0," of "),k("",10,""),k("",0," and "),k("",13,""),k("",1,""),k(", ",0," "),k("",0,", "),k(" ",10," "),k("",0," in "),k("",0," to "),k("e ",0," "),k("",0,'"'),k("",0,"."),k("",0,'">'),k("",0,`
|
|
2
|
+
`),k("",3,""),k("",0,"]"),k("",0," for "),k("",14,""),k("",2,""),k("",0," a "),k("",0," that "),k(" ",10,""),k("",0,". "),k(".",0,""),k(" ",0,", "),k("",15,""),k("",0," with "),k("",0,"'"),k("",0," from "),k("",0," by "),k("",16,""),k("",17,""),k(" the ",0,""),k("",4,""),k("",0,". The "),k("",11,""),k("",0," on "),k("",0," as "),k("",0," is "),k("",7,""),k("",1,"ing "),k("",0,`
|
|
3
|
+
`),k("",0,":"),k(" ",0,". "),k("",0,"ed "),k("",20,""),k("",18,""),k("",6,""),k("",0,"("),k("",10,", "),k("",8,""),k("",0," at "),k("",0,"ly "),k(" the ",0," of "),k("",5,""),k("",9,""),k(" ",10,", "),k("",10,'"'),k(".",0,"("),k("",11," "),k("",10,'">'),k("",0,'="'),k(" ",0,"."),k(".com/",0,""),k(" the ",0," of the "),k("",10,"'"),k("",0,". This "),k("",0,","),k(".",0," "),k("",10,"("),k("",10,"."),k("",0," not "),k(" ",0,'="'),k("",0,"er "),k(" ",11," "),k("",0,"al "),k(" ",11,""),k("",0,"='"),k("",11,'"'),k("",10,". "),k(" ",0,"("),k("",0,"ful "),k(" ",10,". "),k("",0,"ive "),k("",0,"less "),k("",11,"'"),k("",0,"est "),k(" ",10,"."),k("",11,'">'),k(" ",0,"='"),k("",10,","),k("",0,"ize "),k("",11,"."),k("Â ",0,""),k(" ",0,","),k("",10,'="'),k("",11,'="'),k("",0,"ous "),k("",11,", "),k("",10,"='"),k(" ",10,","),k(" ",11,'="'),k(" ",11,", "),k("",11,","),k("",11,"("),k("",11,". "),k(" ",11,"."),k("",11,"='"),k(" ",11,". "),k(" ",10,'="'),k(" ",11,"='"),k(" ",10,"='")]});var V5={};gK(V5,{decompress:()=>Z4});class N5{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&_5}get currentBitPos(){return this.bitPos}set currentBitPos($){this.bitPos=$}get currentVal(){return this.val}}function j5($,Q,Z,J,K){let W=new Int32Array(16),U=new Int32Array(16),H=new Int32Array(K);for(let z=0;z<K;z++)W[J[z]]++;U[1]=0;for(let z=1;z<15;z++)U[z+1]=U[z]+W[z];for(let z=0;z<K;z++)if(J[z]!==0)H[U[J[z]]++]=z;let _=Z,N=1<<_,j=N;if(U[15]===1){for(let z=0;z<j;z++)$[Q+z]={bits:0,value:H[0]&65535};return j}let X=0,V=0;for(let z=1,E=2;z<=Z;z++,E<<=1)for(;W[z]>0;W[z]--){let A={bits:z&255,value:H[V++]&65535};U5($,Q+X,E,N,A),X=W5(X,z)}let w=j-1,G=-1,Y=Q;for(let z=Z+1,E=2;z<=15;z++,E<<=1)for(;W[z]>0;W[z]--){if((X&w)!==G)Y+=N,_=rK(W,z,Z),N=1<<_,j+=N,G=X&w,$[Q+G]={bits:_+Z&255,value:Y-Q-G&65535};let A={bits:z-Z&255,value:H[V++]&65535};U5($,Y+(X>>Z),E,N,A),X=W5(X,z)}return j}function W5($,Q){let Z=1<<Q-1;while($&Z)Z>>=1;return($&Z-1)+Z}function U5($,Q,Z,J,K){do J-=Z,$[Q+J]={bits:K.bits,value:K.value};while(J>0)}function rK($,Q,Z){let J=1<<Q-Z;while(Q<15){if(J-=$[Q],J<=0)break;Q++,J<<=1}return Q-Z}function p1($,Q,Z){Z.fillBitWindow();let J=Q+(Z.currentVal>>>Z.currentBitPos&_5),K=$[J].bits-J9;if(K>0)Z.currentBitPos+=J9,J+=$[J].value,J+=Z.currentVal>>>Z.currentBitPos&(1<<K)-1;return Z.currentBitPos+=$[J].bits,$[J].value}function X5($){if($.readBits(1)){let Q=$.readBits(3);if(Q===0)return 1;return $.readBits(Q)+(1<<Q)}return 0}function tK($){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 eK($){let Q=$.readBits(1)===1;if(Q&&$.readBits(1))return{length:0,isLast:!0,isUncompressed:!1,isMetadata:!1};let Z=$.readBits(2)+4;if(Z===7){if($.readBits(1)!==0)throw Error("Invalid reserved bit");let q=$.readBits(2);if(q===0)return{length:0,isLast:Q,isUncompressed:!1,isMetadata:!0};let W=0;for(let U=0;U<q;U++){let H=$.readBits(8);if(U+1===q&&q>1&&H===0)throw Error("Invalid size byte");W|=H<<U*8}return{length:W+1,isLast:Q,isUncompressed:!1,isMetadata:!0}}let J=0;for(let q=0;q<Z;q++){let W=$.readBits(4);if(q+1===Z&&Z>4&&W===0)throw Error("Invalid size nibble");J|=W<<q*4}J++;let K=!Q?$.readBits(1)===1:!1;return{length:J,isLast:Q,isUncompressed:K,isMetadata:!1}}function $4($,Q,Z,J){let W=0,U=8,H=0,_=0,N=32768,j=[];for(let X=0;X<32;X++)j.push({bits:0,value:0});j5(j,0,5,$,Q9);while(W<Q&&N>0){J.readMoreInput(),J.fillBitWindow();let X=J.currentVal>>>J.currentBitPos&31;J.currentBitPos+=j[X].bits;let V=j[X].value&255;if(V<16){if(H=0,Z[W++]=V,V!==0)U=V,N-=32768>>V}else{let w=V-14,G=0;if(V===16)G=U;if(_!==G)H=0,_=G;let Y=H;if(H>0)H-=2,H<<=w;H+=J.readBits(w)+3;let z=H-Y;if(W+z>Q)throw Error("Symbol overflow");for(let E=0;E<z;E++)Z[W+E]=_;if(W+=z,_!==0)N-=z<<15-_}}if(N!==0)throw Error("Invalid code lengths");for(;W<Q;W++)Z[W]=0}function Z8($,Q,Z,J){let K=new Uint8Array($);J.readMoreInput();let q=J.readBits(2);if(q===1){let W=$-1,U=0;while(W)W>>=1,U++;let H=new Int32Array(4),_=J.readBits(2)+1;for(let N=0;N<_;N++)H[N]=J.readBits(U)%$,K[H[N]]=2;switch(K[H[0]]=1,_){case 2:if(H[0]===H[1])throw Error("Invalid symbols");K[H[1]]=1;break;case 4:if(J.readBits(1))K[H[2]]=3,K[H[3]]=3;else K[H[0]]=2;break}}else{let W=new Uint8Array(Q9),U=32,H=0,_=[{bits:2,value:0},{bits:2,value:4},{bits:2,value:3},{bits:3,value:2},{bits:2,value:0},{bits:2,value:4},{bits:2,value:3},{bits:4,value:1},{bits:2,value:0},{bits:2,value:4},{bits:2,value:3},{bits:3,value:2},{bits:2,value:0},{bits:2,value:4},{bits:2,value:3},{bits:4,value:5}];for(let N=q;N<Q9&&U>0;N++){let j=iK[N];J.fillBitWindow();let X=J.currentVal>>>J.currentBitPos&15;J.currentBitPos+=_[X].bits;let V=_[X].value;if(W[j]=V,V!==0)U-=32>>V,H++}if(!(H===1||U===0))throw Error("Invalid code length codes");$4(W,$,K,J)}return j5(Q,Z,J9,K,$)}class Q8{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=Z8(this.alphabetSize,this.codes,Q,$);Q+=J}}}function H5($,Q){Q.readMoreInput();let Z=X5(Q)+1,J=new Uint8Array($);if(Z<=1)return{numHTrees:Z,contextMap:J};let K=Q.readBits(1)===1,q=0;if(K)q=Q.readBits(4)+1;let W=[];for(let U=0;U<u1;U++)W.push({bits:0,value:0});Z8(Z+q,W,0,Q);for(let U=0;U<$;){Q.readMoreInput();let H=p1(W,0,Q);if(H===0)J[U++]=0;else if(H<=q){let _=1+(1<<H)+Q.readBits(H);for(let N=1;N<_&&U<$;N++)J[U++]=0}else J[U++]=H-q}if(Q.readBits(1)){let U=new Uint8Array(256);for(let H=0;H<256;H++)U[H]=H;for(let H=0;H<$;H++){let _=J[H];if(J[H]=U[_],_){let N=U[_];for(let j=_;j>0;j--)U[j]=U[j-1];U[0]=N}}}return{numHTrees:Z,contextMap:J}}function $8($,Q,Z){let J=p1($,Q,Z),K=cK[J];return K.offset+Z.readBits(K.nbits)}function Q4($,Q,Z){if($<Z9){let J=Z+pK[$]&3;return Q[J]+oK[$]}return $-Z9+1}function Z4($){let Q=new N5($),Z=tK(Q),J=(1<<Z)-16,K=1<<Z,q=K-1,W=new Uint8Array(K+578),U=0,H=0,_=[16,15,11,4],N=0,j=0,X=0,V=[];while(!0){Q.readMoreInput();let w=eK(Q);if(w.length===0&&w.isLast)break;if(w.isMetadata){Q.currentBitPos=Q.currentBitPos+7&-8;for(let n=0;n<w.length;n++)Q.readMoreInput(),Q.readBits(8);continue}let G=w.length;if(G===0)continue;if(w.isUncompressed){Q.currentBitPos=Q.currentBitPos+7&-8;for(let n=0;n<G;n++){Q.readMoreInput();let a=Q.readBits(8);if(W[U&q]=a,(U&q)===q)V.push(...W.slice(0,K));U++}continue}let Y=[1,1,1],z=[268435456,268435456,268435456],E=[0,0,0],A=[0,1,0,1,0,1],L=[0,0,0],O=[],D=[];for(let n=0;n<3*u1;n++)O.push({bits:0,value:0}),D.push({bits:0,value:0});for(let n=0;n<3;n++)if(Y[n]=X5(Q)+1,Y[n]>=2)Z8(Y[n]+2,O,n*u1,Q),Z8(dK,D,n*u1,Q),z[n]=$8(D,n*u1,Q),L[n]=1;Q.readMoreInput();let C=Q.readBits(2),P=Z9+(Q.readBits(4)<<C),T=(1<<C)-1,y=P+(48<<C),u=new Uint8Array(Y[0]);for(let n=0;n<Y[0];n++)Q.readMoreInput(),u[n]=Q.readBits(2)<<1;let I=H5(Y[0]<<6,Q),o=H5(Y[2]<<2,Q),g=[new Q8(lK,I.numHTrees),new Q8(nK,Y[1]),new Q8(y,o.numHTrees)];for(let n=0;n<3;n++)g[n].decode(Q);let x=0,M=0,b=u[E[0]],m=I6[b],d=I6[b+1],i=g[1].htrees[0];while(G>0){if(Q.readMoreInput(),z[1]===0){let G1=p1(O,u1,Q),H1;if(G1===0)H1=A[2+(L[1]&1)];else if(G1===1)H1=A[2+(L[1]-1&1)]+1;else H1=G1-2;if(H1>=Y[1])H1-=Y[1];E[1]=H1,A[2+(L[1]&1)]=H1,L[1]++,z[1]=$8(D,u1,Q),i=g[1].htrees[E[1]]}z[1]--;let n=p1(g[1].codes,i,Q),a=n>>6,v;if(a>=2)v=-1;else v=0;let c=sK[a]+(n>>3&7),S=aK[a]+(n&7),j1=K5[c].offset+Q.readBits(K5[c].nbits),h=q5[S].offset+Q.readBits(q5[S].nbits);j=W[U-1&q],X=W[U-2&q];for(let G1=0;G1<j1;G1++){if(Q.readMoreInput(),z[0]===0){let X1=p1(O,0,Q),k1;if(X1===0)k1=A[L[0]&1];else if(X1===1)k1=A[L[0]-1&1]+1;else k1=X1-2;if(k1>=Y[0])k1-=Y[0];E[0]=k1,A[L[0]&1]=k1,L[0]++,z[0]=$8(D,0,Q),x=E[0]<<6,b=u[E[0]],m=I6[b],d=I6[b+1]}let H1=e8[m+j]|e8[d+X],D1=I.contextMap[x+H1];if(z[0]--,X=j,j=p1(g[0].codes,g[0].htrees[D1],Q),W[U&q]=j,(U&q)===q)V.push(...W.slice(0,K));U++}if(G-=j1,G<=0)break;if(v<0){if(Q.readMoreInput(),z[2]===0){let D1=p1(O,2*u1,Q),X1;if(D1===0)X1=A[4+(L[2]&1)];else if(D1===1)X1=A[4+(L[2]-1&1)]+1;else X1=D1-2;if(X1>=Y[2])X1-=Y[2];E[2]=X1,A[4+(L[2]&1)]=X1,L[2]++,z[2]=$8(D,2*u1,Q),M=E[2]<<2}z[2]--;let G1=(h>4?3:h-2)&255,H1=o.contextMap[M+G1];if(v=p1(g[2].codes,g[2].htrees[H1],Q),v>=P){v-=P;let D1=v&T;v>>=C;let X1=(v>>1)+1,k1=(2+(v&1)<<X1)-4;v=P+(k1+Q.readBits(X1)<<C)+D1}}let i1=Q4(v,_,N);if(i1<0)throw Error("Invalid distance");if(U<J&&H!==J)H=U;else H=J;let e1=U&q;if(i1>H)if(h>=4&&h<=24){let G1=r0[h],H1=i1-H-1,D1=t0[h],X1=(1<<D1)-1,k1=H1&X1,n8=H1>>D1,bK=G1+k1*h;if(n8<$9.length){let d8=Z5(W,e1,bK,h,n8,e0);if(e1+=d8,U+=d8,G-=d8,e1>=K){V.push(...W.slice(0,K));for(let s6=0;s6<e1-K;s6++)W[s6]=W[K+s6]}}else throw Error("Invalid backward reference")}else throw Error("Invalid backward reference");else{if(v>0)_[N&3]=i1,N++;if(h>G)throw Error("Invalid backward reference");for(let G1=0;G1<h;G1++){if(W[U&q]=W[U-i1&q],(U&q)===q)V.push(...W.slice(0,K));U++,G--}}j=W[U-1&q],X=W[U-2&q]}if(w.isLast)break}return V.push(...W.slice(0,U&q)),new Uint8Array(V)}var u1=1080,Q9=18,lK=256,nK=704,dK=26,Z9=16,J9=8,_5=255,iK,pK,oK,cK,K5,q5,sK,aK;var w5=a6(()=>{a0();$5();J5();iK=new Uint8Array([1,2,3,4,0,5,17,6,16,7,8,9,10,11,12,13,14,15]),pK=new Uint8Array([3,2,1,0,3,3,3,3,3,3,2,2,2,2,2,2]),oK=new Int8Array([0,0,0,0,-1,1,-2,2,-3,3,-1,1,-2,2,-3,3]),cK=[{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}],K5=[{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}],q5=[{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}],sK=[0,0,8,8,0,16,8,16,16],aK=[0,8,0,8,16,0,16,8,16]});function r6($,Q){if(Q<0||Q>=$.classArray.length)return 1;return $.classArray[Q]??1}function i8($,Q){let{stateTable:Z}=$,J=0,K=0,q=0;for(let W=0;W<=Q.length;W++){let H=W>=Q.length?0:r6(Z.classTable,Q[W]?.glyphId),_=Z.stateArray[J];if(!_)break;let N=_[H];if(!N)break;let j=N.flags;if(j&32768)K=W;if(j&8192)q=W;let X=j&15;if(X!==0&&K<=q&&q<Q.length)uK(Q,K,q,X);if(!(j&16384));J=N.newState}}function uK($,Q,Z,J){if(Q>=Z||Q>=$.length||Z>=$.length)return;let K=$[Q],q=$[Q+1],W=$[Z-1],U=$[Z];if(!K||!U)return;switch(J){case 1:if(q)$[Q]=q,$[Q+1]=K;break;case 2:if(W)$[Z]=W,$[Z-1]=U;break;case 3:$[Q]=U,$[Z]=K;break;case 4:if(q&&W){let H=$.slice(Q,Q+2),[_,N]=H,j=$[Q+2];if(_&&N&&j)$[Q]=j,$[Q+1]=_,$[Q+2]=N}break;case 5:if(q&&W){let H=$.slice(Q,Q+2),[_,N]=H,j=$[Q+2];if(_&&N&&j)$[Q]=j,$[Q+1]=N,$[Q+2]=_}break;case 6:if(W&&q){let H=$.slice(Z-1,Z+1),[_,N]=H,j=$[Z-2];if(_&&N&&j)$[Z]=j,$[Z-1]=N,$[Z-2]=_}break;case 7:if(W&&q){let H=$.slice(Z-1,Z+1),[_,N]=H,j=$[Z-2];if(_&&N&&j)$[Z]=j,$[Z-1]=_,$[Z-2]=N}break;case 8:if(W){let H=K;$[Q]=W,$[Z-1]=U,$[Z]=H}break;case 9:if(W){let H=K;$[Q]=U,$[Z-1]=W,$[Z]=H}break;case 10:if(q){let H=U;$[Z]=q,$[Q+1]=K,$[Q]=H}break;case 11:if(q){let H=U;$[Z]=K,$[Q+1]=q,$[Q]=H}break;case 12:if(q&&W){let H=[K,q];$[Q]=W,$[Q+1]=U,$[Z-1]=H[0],$[Z]=H[1]}break;case 13:if(q&&W){let H=[K,q];$[Q]=W,$[Q+1]=U,$[Z-1]=H[1],$[Z]=H[0]}break;case 14:if(q&&W){let H=[K,q];$[Q]=U,$[Q+1]=W,$[Z-1]=H[0],$[Z]=H[1]}break;case 15:if(q&&W){let H=[K,q];$[Q]=U,$[Q+1]=W,$[Z-1]=H[1],$[Z]=H[0]}break}}function p8($,Q){let{stateTable:Z,substitutionTable:J}=$,K=0,q=-1;for(let W=0;W<=Q.length;W++){let U=W>=Q.length,H=U?0:r6(Z.classTable,Q[W]?.glyphId),_=Z.stateArray[K];if(!_)break;let N=_[H];if(!N)break;if(N.flags&32768)q=W;if(N.markIndex!==65535&&q>=0&&q<Q.length){let j=J[N.markIndex];if(j){let X=Q[q];if(X){let V=j.get(X.glyphId);if(V!==void 0)X.glyphId=V}}}if(!U&&N.currentIndex!==65535){let j=J[N.currentIndex];if(j){let X=Q[W];if(X){let V=j.get(X.glyphId);if(V!==void 0)X.glyphId=V}}}if(!(N.flags&16384));K=N.newState}}function o8($,Q){let{stateTable:Z,ligatureActions:J,components:K,ligatures:q}=$,W=0,U=[],H=[],_=new Set;for(let N=0;N<=Q.length;N++){let X=N>=Q.length?0:r6(Z.classTable,Q[N]?.glyphId),V=Z.stateArray[W];if(!V)break;let w=V[X];if(!w)break;if(w.flags&32768)U.push(N);if(w.flags&8192&&w.ligActionIndex<J.length){let G=w.ligActionIndex,Y=0,z=[];while(G<J.length){let E=J[G];if(E===void 0)break;let A=(E&2147483648)!==0,L=(E&1073741824)!==0,O=(E&1073741823)<<2>>2,D=U.pop();if(D!==void 0&&D<Q.length){z.push(D);let C=Q[D];if(C){let T=C.glyphId+O;if(T>=0&&T<K.length){let y=K[T];if(y!==void 0)Y=y+Y}}}if(L&&Y<q.length){let C=z[z.length-1];if(C!==void 0&&C<Q.length){let P=Q[C],T=q[Y];if(P&&T!==void 0){P.glyphId=T;for(let[y,u]of z.entries())if(y<z.length-1)_.add(u)}}Y=0}if(A)break;G++}}if(!(w.flags&16384));W=w.newState}for(let[N,j]of Q.entries())if(!_.has(N))H.push(j);return H}function c8($,Q){let{stateTable:Z,insertionGlyphs:J}=$,K=0,q=-1,W=[],U=new Map;for(let H=0;H<=Q.length;H++){let _=H>=Q.length,N=_?0:r6(Z.classTable,Q[H]?.glyphId),j=Z.stateArray[K];if(!j)break;let X=j[N];if(!X)break;if(X.flags&32768)q=H;if(X.markedInsertIndex!==65535&&q>=0){let V=X.flags>>5&31,w=(X.flags&2048)!==0,G=J.slice(X.markedInsertIndex,X.markedInsertIndex+V),Y=U.get(q);if(!Y)Y={before:[],after:[]},U.set(q,Y);if(w)Y.before.push(...G);else Y.after.push(...G)}if(!_&&X.currentInsertIndex!==65535){let V=X.flags&31,w=(X.flags&32)!==0,G=J.slice(X.currentInsertIndex,X.currentInsertIndex+V),Y=U.get(H);if(!Y)Y={before:[],after:[]},U.set(H,Y);if(w)Y.before.push(...G);else Y.after.push(...G)}if(!(X.flags&16384));K=X.newState}for(let[H,_]of Q.entries()){let N=U.get(H);if(N)for(let j of N.before)W.push({glyphId:j,cluster:_.cluster,mask:_.mask,codepoint:0});if(W.push(_),N)for(let j of N.after)W.push({glyphId:j,cluster:_.cluster,mask:_.mask,codepoint:0})}return W}var t6;((q)=>{q[q.Invalid=0]="Invalid";q[q.LTR=4]="LTR";q[q.RTL=5]="RTL";q[q.TTB=6]="TTB";q[q.BTT=7]="BTT"})(t6||={});var f0;((J)=>{J[J.MonotoneGraphemes=0]="MonotoneGraphemes";J[J.MonotoneCharacters=1]="MonotoneCharacters";J[J.Characters=2]="Characters"})(f0||={});var l0;((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"})(l0||={});var e6;((K)=>{K[K.Base=1]="Base";K[K.Ligature=2]="Ligature";K[K.Mark=3]="Mark";K[K.Component=4]="Component"})(e6||={});function R($){if($.length!==4)throw Error(`Tag must be exactly 4 characters: "${$}"`);return $.charCodeAt(0)<<24|$.charCodeAt(1)<<16|$.charCodeAt(2)<<8|$.charCodeAt(3)}function P6($){return String.fromCharCode($>>24&255,$>>16&255,$>>8&255,$&255)}var f={head:R("head"),hhea:R("hhea"),hmtx:R("hmtx"),maxp:R("maxp"),cmap:R("cmap"),loca:R("loca"),glyf:R("glyf"),name:R("name"),OS2:R("OS/2"),post:R("post"),GDEF:R("GDEF"),GSUB:R("GSUB"),GPOS:R("GPOS"),BASE:R("BASE"),JSTF:R("JSTF"),MATH:R("MATH"),CFF:R("CFF "),CFF2:R("CFF2"),fvar:R("fvar"),gvar:R("gvar"),avar:R("avar"),HVAR:R("HVAR"),VVAR:R("VVAR"),MVAR:R("MVAR"),morx:R("morx"),kerx:R("kerx"),kern:R("kern"),trak:R("trak"),feat:R("feat"),COLR:R("COLR"),CPAL:R("CPAL"),SVG:R("SVG "),sbix:R("sbix"),CBDT:R("CBDT"),CBLC:R("CBLC"),STAT:R("STAT"),vhea:R("vhea"),vmtx:R("vmtx"),VORG:R("VORG"),fpgm:R("fpgm"),prep:R("prep"),cvt:R("cvt "),gasp:R("gasp")},Ij={ccmp:R("ccmp"),locl:R("locl"),rlig:R("rlig"),liga:R("liga"),clig:R("clig"),calt:R("calt"),rclt:R("rclt"),dlig:R("dlig"),smcp:R("smcp"),c2sc:R("c2sc"),isol:R("isol"),init:R("init"),medi:R("medi"),fina:R("fina"),kern:R("kern"),mark:R("mark"),mkmk:R("mkmk"),curs:R("curs"),dist:R("dist")};class $6{direction=4;script="Zyyy";language=null;infos=[];positions=[];static withCapacity($){let Q=new $6;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 K=this.infos[J];if(K)K.cluster=Z}}reverse(){this.infos.reverse(),this.positions.reverse()}reverseRange($,Q){let Z=$,J=Q-1;while(Z<J){let K=this.infos[Z],q=this.infos[J];if(!K||!q)break;this.infos[Z]=q,this.infos[J]=K;let W=this.positions[Z],U=this.positions[J];if(!W||!U)break;this.positions[Z]=U,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 K=`${Z.glyphId}`;if(Q===0||Z.cluster!==this.infos[Q-1]?.cluster)K+=`=${Z.cluster}`;if(J.xOffset!==0||J.yOffset!==0)K+=`@${J.xOffset},${J.yOffset}`;if(J.xAdvance!==0)K+=`+${J.xAdvance}`;$.push(K)}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 n0{_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 K=J.codePointAt(0);if(K===void 0)continue;this.codepoints.push(K),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 C1{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 C1(this.data,this.start+$,Q)}sliceFrom($){return new C1(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 d0($,Q){let Z=$.uint16(),J=$.uint16();$.skip(2);let K=[];for(let q=0;q<Q;q++){let W=$.uint16(),U=[];for(let H=0;H<W;H++)U.push({fromCoordinate:$.f2dot14(),toCoordinate:$.f2dot14()});K.push({axisValueMaps:U})}return{majorVersion:Z,minorVersion:J,axisSegmentMaps:K}}function i0($,Q){let Z=$.axisValueMaps;if(Z.length===0)return Q;for(let q=0;q<Z.length-1;q++){let W=Z[q],U=Z[q+1];if(!W||!U)continue;if(Q>=W.fromCoordinate&&Q<=U.fromCoordinate){let H=(Q-W.fromCoordinate)/(U.fromCoordinate-W.fromCoordinate);return W.toCoordinate+H*(U.toCoordinate-W.toCoordinate)}}let J=Z[0],K=Z[Z.length-1];if(J&&Q<=J.fromCoordinate)return J.toCoordinate;return K?.toCoordinate??Q}function s8($,Q){let Z=[];for(let[J,K]of Q.entries()){let q=$.axisSegmentMaps[J];if(q)Z.push(i0(q,K));else Z.push(K)}return Z}function p0($){let Q=$.uint16(),Z=$.uint16(),J=$.offset16();$.skip(2);let K=$.uint16(),q=$.uint16(),W=$.uint16(),U=$.uint16(),H=[];$.seek(J);for(let j=0;j<K;j++){let X=$.offset,V=$.uint32(),w=$.fixed(),G=$.fixed(),Y=$.fixed(),z=$.uint16(),E=$.uint16();H.push({tag:V,minValue:w,defaultValue:G,maxValue:Y,flags:z,axisNameId:E}),$.seek(X+q)}let _=[],N=U>=4+K*4+2;for(let j=0;j<W;j++){let X=$.offset,V=$.uint16(),w=$.uint16(),G=[];for(let z=0;z<K;z++)G.push($.fixed());let Y={subfamilyNameId:V,flags:w,coordinates:G};if(N)Y.postScriptNameId=$.uint16();_.push(Y),$.seek(X+U)}return{majorVersion:Q,minorVersion:Z,axes:H,instances:_}}function a8($,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 o0($){let Q=$.uint16(),Z=$.uint16(),J=$.offset32(),K=$.offset32(),q=$.offset32(),W=$.offset32(),U=xK($.sliceFrom(J)),H=K!==0?r8($.sliceFrom(K)):null,_=q!==0?r8($.sliceFrom(q)):null,N=W!==0?r8($.sliceFrom(W)):null;return{majorVersion:Q,minorVersion:Z,itemVariationStore:U,advanceWidthMapping:H,lsbMapping:_,rsbMapping:N}}function xK($){let Q=$.uint16(),Z=$.offset32(),J=$.uint16(),K=[];for(let N=0;N<J;N++)K.push($.offset32());let q=$.sliceFrom(Z),W=q.uint16(),U=q.uint16(),H=[];for(let N=0;N<U;N++){let j=[];for(let X=0;X<W;X++)j.push({startCoord:q.f2dot14(),peakCoord:q.f2dot14(),endCoord:q.f2dot14()});H.push({regionAxes:j})}let _=[];for(let N of K){let j=$.sliceFrom(N),X=j.uint16(),V=j.uint16(),w=j.uint16(),G=[];for(let L=0;L<w;L++)G.push(j.uint16());let Y=(V&32768)!==0,z=V&32767,E=w-z,A=[];for(let L=0;L<X;L++){let O=[];for(let D=0;D<z;D++)if(Y)O.push(j.int32());else O.push(j.int16());for(let D=0;D<E;D++)if(Y)O.push(j.int16());else O.push(j.int8());A.push(O)}_.push({itemCount:X,regionIndexes:G,deltaSets:A})}return{format:Q,variationRegions:H,itemVariationData:_}}function r8($){let Q=$.uint8(),Z=$.uint8(),J=Q===0?$.uint16():$.uint32(),K=(Z&15)+1,q=(Z>>4&3)+1,W=[];for(let U=0;U<J;U++){let H=0;for(let j=0;j<q;j++)H=H<<8|$.uint8();let _=H&(1<<K)-1,N=H>>K;W.push({outer:N,inner:_})}return{format:Q,mapCount:J,entryFormat:Z,innerIndexBitCount:K,mapData:W}}function O6($,Q){let Z=1;for(let J=0;J<$.regionAxes.length&&J<Q.length;J++){let K=$.regionAxes[J],q=Q[J];if(K===void 0||q===void 0)continue;if(q<K.startCoord||q>K.endCoord)return 0;if(q===K.peakCoord)continue;if(q<K.peakCoord){if(K.peakCoord===K.startCoord)continue;Z*=(q-K.startCoord)/(K.peakCoord-K.startCoord)}else{if(K.peakCoord===K.endCoord)continue;Z*=(K.endCoord-q)/(K.endCoord-K.peakCoord)}}return Z}function c0($,Q,Z,J){let K,q;if(J&&Q<J.mapData.length){let _=J.mapData[Q];if(!_)K=0,q=Q;else K=_.outer,q=_.inner}else K=0,q=Q;let W=$.itemVariationStore.itemVariationData[K];if(!W||q>=W.itemCount)return 0;let U=W.deltaSets[q];if(!U)return 0;let H=0;for(let[_,N]of W.regionIndexes.entries()){let j=$.itemVariationStore.variationRegions[N];if(!j)continue;let X=O6(j,Z),V=U[_]??0;H+=X*V}return Math.round(H)}function t8($,Q,Z){return c0($,Q,Z,$.advanceWidthMapping)}function s0($,Q,Z){if(!$.lsbMapping)return 0;return c0($,Q,Z,$.lsbMapping)}class Q6{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,K]of Object.entries($)){let q=R(J.padEnd(4," "));this._variations.set(q,K)}for(let[J,K]of Q.axes.entries()){let q=this._variations.get(K.tag)??K.defaultValue;this._coords[J]=a8(K,q)}let Z=this.font.avar;if(Z)this._coords=s8(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"?R($.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((q)=>q.tag===Q)?.defaultValue??null}advanceWidth($){let Q=this.font.advanceWidth($);if(this._coords.length>0&&this.font.hvar){let Z=t8(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=s0(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 fK($,Q){return new Q6($,Q)}var J4=["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 G5($,Q){let Z=0;for(let J=0;J<5;J++){let K=$[Q.value++];if(J===0&&K===128)throw Error("Invalid UIntBase128: leading zeros");if(Z>2097151)throw Error("UIntBase128 overflow");if(Z=Z<<7|K&127,(K&128)===0)return Z}throw Error("UIntBase128 too long")}function K9($,Q){let Z=$[Q.value++];if(Z===253){let J=$[Q.value++],K=$[Q.value++];return J<<8|K}else if(Z===255)return $[Q.value++]+506;else if(Z===254)return $[Q.value++]+253;return Z}function K4($,Q,Z){let J=[];for(let K=0;K<Z;K++){let q=$[Q.value++],W=q&63,U=q>>6&3,H;if(W===63)H=String.fromCharCode($[Q.value++],$[Q.value++],$[Q.value++],$[Q.value++]);else H=J4[W];let _=G5($,Q),N=_;if(H==="glyf"||H==="loca"?U===0:U!==0)N=G5($,Q);J.push({tag:H,origLength:_,transformLength:N,transformVersion:U})}return J}async function q4($){if(typeof DecompressionStream<"u")try{let Z=new DecompressionStream("brotli"),K=new Blob([$.buffer]).stream().pipeThrough(Z),q=await new Response(K).arrayBuffer();return new Uint8Array(q)}catch{}let{decompress:Q}=await Promise.resolve().then(() => (w5(),V5));return Q($)}function T1($,Q,Z){$[Q]=Z>>8&255,$[Q+1]=Z&255}function N6($,Q,Z){$[Q]=Z>>24&255,$[Q+1]=Z>>16&255,$[Q+2]=Z>>8&255,$[Q+3]=Z&255}function o1($,Q){return $[Q]<<8|$[Q+1]}function y1($,Q){let Z=o1($,Q);return Z>=32768?Z-65536:Z}function Z6($,Q){return($[Q]<<24|$[Q+1]<<16|$[Q+2]<<8|$[Q+3])>>>0}function Y5($,Q,Z){let J=0,K=Math.ceil(Z/4);for(let q=0;q<K;q++){let W=Q+q*4;J=J+(($[W]||0)<<24|($[W+1]||0)<<16|($[W+2]||0)<<8|($[W+3]||0))>>>0}return J}function J8($){return $+3&-4}function W4($,Q,Z,J,K){let q=[],W=0,U=0;function H(_,N){return _&1?N:-N}for(let _=0;_<Z;_++){let N=$[J.value++],j=N>>7===0,X=N&127,V=0,w=0;if(X<10)V=0,w=H(N,((X&14)<<7)+Q[K.value++]);else if(X<20)V=H(N,((X-10&14)<<7)+Q[K.value++]),w=0;else if(X<84){let G=X-20,Y=Q[K.value++];V=H(N,1+(G&48)+(Y>>4)),w=H(N>>1,1+((G&12)<<2)+(Y&15))}else if(X<120){let G=X-84;V=H(N,1+(Math.floor(G/12)<<8)+Q[K.value++]),w=H(N>>1,1+(G%12>>2<<8)+Q[K.value++])}else if(X<124){let G=Q[K.value++],Y=Q[K.value++],z=Q[K.value++];V=H(N,(G<<4)+(Y>>4)),w=H(N>>1,((Y&15)<<8)+z)}else V=H(N,(Q[K.value++]<<8)+Q[K.value++]),w=H(N>>1,(Q[K.value++]<<8)+Q[K.value++]);W+=V,U+=w,q.push({x:W,y:U,onCurve:j})}return q}function U4($,Q,Z){let J=0,K=o1($,J);if(J+=2,K!==0)throw Error(`Unsupported glyf transform version: ${K}`);let q=o1($,J);J+=2;let W=o1($,J);J+=2;let U=o1($,J);J+=2;let H=Z6($,J);J+=4;let _=Z6($,J);J+=4;let N=Z6($,J);J+=4;let j=Z6($,J);J+=4;let X=Z6($,J);J+=4;let V=Z6($,J);J+=4;let w=Z6($,J);J+=4;let G=$.slice(J,J+H);J+=H;let Y=$.slice(J,J+_);J+=_;let z=$.slice(J,J+N);J+=N;let E=$.slice(J,J+j);J+=j;let A=$.slice(J,J+X);J+=X;let L=$.slice(J,J+V);J+=V;let O=$.slice(J,J+w),D={value:0},C={value:0},P={value:0},T={value:0},y={value:0},u={value:0},I={value:0},o=[0],g=[],x=0;for(let i=0;i<Q;i++){let n=y1(G,D.value);if(D.value+=2,n===0){g.push(new Uint8Array(0)),o.push(x);continue}if(n>0){let a=H4(n,Y,C,z,P,E,T,L,u,O,I,q);g.push(a),x+=J8(a.length),o.push(x)}else{let a=_4(A,y,L,u,O,I,q);g.push(a),x+=J8(a.length),o.push(x)}}let M=new Uint8Array(x),b=0;for(let i of g)M.set(i,b),b+=J8(i.length);let m=Z===0?(Q+1)*2:(Q+1)*4,d=new Uint8Array(m);for(let i=0;i<=Q;i++)if(Z===0)T1(d,i*2,o[i]/2);else N6(d,i*4,o[i]);return{glyf:M,loca:d}}function H4($,Q,Z,J,K,q,W,U,H,_,N,j){let X=[],V=0;for(let b=0;b<$;b++){let m=K9(Q,Z);V+=m,X.push(V-1)}let w=W4(J,q,V,K,W),G,Y,z,E;if((j&1)===0&&H.value+8<=U.length)G=y1(U,H.value),H.value+=2,Y=y1(U,H.value),H.value+=2,z=y1(U,H.value),H.value+=2,E=y1(U,H.value),H.value+=2;else{G=Y=32767,z=E=-32768;for(let b of w)G=Math.min(G,b.x),Y=Math.min(Y,b.y),z=Math.max(z,b.x),E=Math.max(E,b.y)}let L=K9(q,W),O=_.slice(N.value,N.value+L);N.value+=L;let D=[],C=[],P=0,T=0;for(let b of w)D.push(b.x-P),C.push(b.y-T),P=b.x,T=b.y;let y=[],u=[],I=[];for(let b=0;b<V;b++){let m=w[b].onCurve?1:0,d=D[b],i=C[b];if(d===0)m|=16;else if(d>=-255&&d<=255){if(m|=2,d>0)m|=16;u.push(Math.abs(d))}else u.push(d>>8&255,d&255);if(i===0)m|=32;else if(i>=-255&&i<=255){if(m|=4,i>0)m|=32;I.push(Math.abs(i))}else I.push(i>>8&255,i&255);y.push(m)}let g=10+$*2+2+L+y.length+u.length+I.length,x=new Uint8Array(g),M=0;T1(x,M,$),M+=2,T1(x,M,G&65535),M+=2,T1(x,M,Y&65535),M+=2,T1(x,M,z&65535),M+=2,T1(x,M,E&65535),M+=2;for(let b of X)T1(x,M,b),M+=2;T1(x,M,L),M+=2,x.set(O,M),M+=L;for(let b of y)x[M++]=b;for(let b of u)x[M++]=b;for(let b of I)x[M++]=b;return x.slice(0,M)}function _4($,Q,Z,J,K,q,W){let U=[],H=y1(Z,J.value);J.value+=2;let _=y1(Z,J.value);J.value+=2;let N=y1(Z,J.value);J.value+=2;let j=y1(Z,J.value);J.value+=2,U.push(255,255),U.push(H>>8&255,H&255),U.push(_>>8&255,_&255),U.push(N>>8&255,N&255),U.push(j>>8&255,j&255);let X=!0,V=!1;while(X){let w=o1($,Q.value);Q.value+=2;let G=o1($,Q.value);if(Q.value+=2,U.push(w>>8&255,w&255),U.push(G>>8&255,G&255),w&1)U.push($[Q.value++]),U.push($[Q.value++]),U.push($[Q.value++]),U.push($[Q.value++]);else U.push($[Q.value++]),U.push($[Q.value++]);if(w&8)U.push($[Q.value++]),U.push($[Q.value++]);else if(w&64)for(let Y=0;Y<4;Y++)U.push($[Q.value++]);else if(w&128)for(let Y=0;Y<8;Y++)U.push($[Q.value++]);if(X=(w&32)!==0,w&256)V=!0}if(V){let w=K9(K,q);U.push(w>>8&255,w&255);for(let G=0;G<w;G++)U.push(K[q.value++])}return new Uint8Array(U)}async function z5($){let Q=new Uint8Array($),Z=new DataView($);if(Z.getUint32(0,!1)!==2001684018)throw Error("Not a valid WOFF2 file");let K=Z.getUint32(4,!1),q=Z.getUint16(12,!1),W=Z.getUint32(20,!1),U={value:48},H=K4(Q,U,q),_=Q.slice(U.value,U.value+W),N=await q4(_),j=new Map,X=0;for(let I of H){let o=N.slice(X,X+I.transformLength);j.set(I.tag,o),X+=I.transformLength}let V=j.get("maxp"),w=j.get("head");if(!V||!w)throw Error("Missing required tables");let G=o1(V,4),Y=y1(w,50),z=H.find((I)=>I.tag==="glyf"),E=H.find((I)=>I.tag==="loca");if(z&&z.transformVersion===0){let I=j.get("glyf");if(!I)throw Error("Missing glyf table data for transform");let{glyf:o,loca:g}=U4(I,G,Y);if(j.set("glyf",o),j.set("loca",g),z.origLength=o.length,E)E.origLength=g.length}let A=12,L=q*16,O=A+L,D=[];for(let I of H)D.push(O),O+=J8(I.origLength);let C=new Uint8Array(O),P=2**Math.floor(Math.log2(q))*16,T=Math.floor(Math.log2(q)),y=q*16-P;N6(C,0,K),T1(C,4,q),T1(C,6,P),T1(C,8,T),T1(C,10,y);let u=-1;for(let I=0;I<H.length;I++){let o=H[I],g=j.get(o.tag);if(!g)throw Error(`Missing table data for ${o.tag}`);let x=A+I*16,M=D[I];if(o.tag==="head"&&M!==void 0)u=M;for(let m=0;m<4;m++)C[x+m]=o.tag.charCodeAt(m);let b=Y5(g,0,g.length);N6(C,x+4,b),N6(C,x+8,D[I]),N6(C,x+12,o.origLength),C.set(g.slice(0,o.origLength),D[I])}if(u>=0){let o=2981146554-Y5(C,0,C.length)>>>0;N6(C,u+8,o)}return C.buffer}function v6($){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 E5($,Q){if(Q===0)return null;let Z=$.sliceFrom(Q),J=Z.uint16(),K=Z.uint16(),q=Z.uint16(),W=null,U=null;if(J!==0){let _=$.sliceFrom(Q+J);W=v6(_).coordinate}if(K!==0){let _=$.sliceFrom(Q+K);U=v6(_).coordinate}let H=[];for(let _=0;_<q;_++){let N=Z.uint32(),j=Z.uint16(),X=Z.uint16(),V=null,w=null;if(j!==0){let G=$.sliceFrom(Q+j);V=v6(G).coordinate}if(X!==0){let G=$.sliceFrom(Q+X);w=v6(G).coordinate}H.push({featureTag:N,minCoord:V,maxCoord:w})}return{minCoord:W,maxCoord:U,featMinMaxRecords:H}}function N4($,Q,Z){if(Q===0)return null;let J=$.sliceFrom(Q),K=J.uint16(),q=J.uint16(),W=[];for(let H=0;H<q;H++)W.push(J.uint16());let U=[];for(let H of W)if(H!==0){let _=$.sliceFrom(Q+H);U.push(v6(_).coordinate)}else U.push(0);return{defaultBaselineIndex:K,baseCoords:U}}function j4($,Q,Z){let J=$.sliceFrom(Q),K=J.uint16(),q=J.uint16(),W=J.uint16(),U=new Map,H=[];for(let j=0;j<W;j++){let X=J.uint32(),V=J.uint16();H.push({tag:X,offset:V})}let _=N4($,Q+K,Z),N=E5($,Q+q);for(let{tag:j,offset:X}of H){let V=E5($,Q+X);if(V)U.set(j,V)}return{baseValues:_,defaultMinMax:N,baseLangSysRecords:U}}function A5($,Q){if(Q===0)return null;let Z=$.sliceFrom(Q),J=Z.uint16(),K=Z.uint16(),q=[];if(J!==0){let U=$.sliceFrom(Q+J),H=U.uint16();for(let _=0;_<H;_++)q.push(U.uint32())}let W=[];if(K!==0){let U=$.sliceFrom(Q+K),H=U.uint16(),_=[];for(let N=0;N<H;N++){let j=U.uint32(),X=U.uint16();_.push({tag:j,offset:X})}for(let{tag:N,offset:j}of _){let X=j4($,Q+K+j,q);W.push({scriptTag:N,...X})}}return{baseTagList:q,baseScriptList:W}}function F5($){let Q=$.uint16(),Z=$.uint16(),J=$.uint16(),K=$.uint16(),q=A5($,J),W=A5($,K);return{majorVersion:Q,minorVersion:Z,horizAxis:q,vertAxis:W}}var X4={SmallMetrics:1,SmallMetricsPng:17,BigMetrics:2,BigMetricsPng:18,CompressedPng:19};function D5($){let Q=$.offset,Z=$.uint16(),J=$.uint16(),K=$.uint32(),q=[];for(let W=0;W<K;W++){let U=$.uint32(),H=$.uint32(),_=$.uint32(),N=$.uint32(),j=L5($),X=L5($),V=$.uint16(),w=$.uint16(),G=$.uint8(),Y=$.uint8(),z=$.uint8(),E=$.int8();q.push({indexSubTableArrayOffset:U,indexTablesSize:H,numberOfIndexSubTables:_,colorRef:N,hori:j,vert:X,startGlyphIndex:V,endGlyphIndex:w,ppemX:G,ppemY:Y,bitDepth:z,flags:E,indexSubTables:[]})}for(let W of q){let U=$.sliceFrom(Q+W.indexSubTableArrayOffset),H=[];for(let _=0;_<W.numberOfIndexSubTables;_++)H.push({firstGlyphIndex:U.uint16(),lastGlyphIndex:U.uint16(),additionalOffsetToIndexSubtable:U.uint32()});for(let _ of H){let N=V4($,Q+W.indexSubTableArrayOffset+_.additionalOffsetToIndexSubtable,_.firstGlyphIndex,_.lastGlyphIndex);W.indexSubTables.push(N)}}return{majorVersion:Z,minorVersion:J,bitmapSizes:q}}function L5($){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 V4($,Q,Z,J){let K=$.sliceFrom(Q),q=K.uint16(),W=K.uint16(),U=K.uint32(),H=new Map,_=J-Z+1;switch(q){case 1:{let N=[];for(let j=0;j<=_;j++)N.push(K.uint32());for(let j=0;j<_;j++){let X=N[j],V=N[j+1];if(X===void 0||V===void 0)continue;if(V>X)H.set(Z+j,{offset:U+X,length:V-X})}break}case 2:{let N=K.uint32(),j={height:K.uint8(),width:K.uint8(),horiBearingX:K.int8(),horiBearingY:K.int8(),horiAdvance:K.uint8(),vertBearingX:K.int8(),vertBearingY:K.int8(),vertAdvance:K.uint8()};for(let X=0;X<_;X++)H.set(Z+X,{offset:U+X*N,length:N});break}case 3:{let N=[];for(let j=0;j<=_;j++)N.push(K.uint16());for(let j=0;j<_;j++){let X=N[j],V=N[j+1];if(X===void 0||V===void 0)continue;if(V>X)H.set(Z+j,{offset:U+X,length:V-X})}break}case 4:{let N=K.uint32(),j=[];for(let X=0;X<=N;X++)j.push({glyphId:K.uint16(),offset:K.uint16()});for(let X=0;X<N;X++){let V=j[X],w=j[X+1];if(V===void 0||w===void 0)continue;H.set(V.glyphId,{offset:U+V.offset,length:w.offset-V.offset})}break}case 5:{let N=K.uint32();K.skip(8);let j=K.uint32();for(let X=0;X<j;X++){let V=K.uint16();H.set(V,{offset:U+X*N,length:N})}break}}return{firstGlyphIndex:Z,lastGlyphIndex:J,indexFormat:q,imageFormat:W,imageDataOffset:U,glyphOffsets:H}}function B5($){let Q=$.uint16(),Z=$.uint16(),J=$.bytes($.remaining);return{majorVersion:Q,minorVersion:Z,data:J}}function w4($,Q,Z,J){let K=null,q=1/0;for(let W of $.bitmapSizes){if(Z<W.startGlyphIndex||Z>W.endGlyphIndex)continue;let U=Math.abs(W.ppemX-J);if(U<q)q=U,K=W}if(!K)return null;for(let W of K.indexSubTables){let U=W.glyphOffsets.get(Z);if(!U)continue;let H=Q.data.slice(U.offset-4,U.offset-4+U.length);return G4(H,W.imageFormat)}return null}function G4($,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 Y4($,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 K of J.indexSubTables)if(K.glyphOffsets.has(Q))return!0}return!1}function z4($){let Q=new Set;for(let Z of $.bitmapSizes)Q.add(Z.ppemX);return Array.from(Q).sort((Z,J)=>Z-J)}var q9=[".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 T5($){let Q=$.offset,Z=$.uint8(),J=$.uint8(),K=$.uint8(),q=$.uint8();$.seek(Q+K);let W=c1($).map((Y)=>new TextDecoder().decode(Y)),U=c1($),H=[],N=c1($).map((Y)=>new TextDecoder().decode(Y)),j=c1($);for(let Y of U)H.push(M5(new C1(Y.buffer,Y.byteOffset,Y.byteLength),N));let X=[],V=[],w=[],G=[];for(let Y of H){if(Y.charStrings!==void 0)$.seek(Q+Y.charStrings),X.push(c1($));else X.push([]);if(Y.private){let[z,E]=Y.private,A=R5($.slice(E,z),N);if(A.subrs!==void 0)$.seek(Q+E+A.subrs),V.push(c1($));else V.push([])}else V.push([]);if(Y.fdArray!==void 0){$.seek(Q+Y.fdArray);let z=c1($),E=[];for(let A of z){let L=M5(new C1(A.buffer,A.byteOffset,A.byteLength),N);if(L.private){let[O,D]=L.private,C=R5($.slice(Q+D,O),N);if(Object.assign(L,C),C.subrs!==void 0)$.seek(Q+D+C.subrs),L.localSubrs=c1($)}E.push(L)}w.push(E)}else w.push([]);if(Y.fdSelect!==void 0){$.seek(Q+Y.fdSelect);let z=X[X.length-1];G.push(F4($,z?.length??0))}else G.push({format:0,select:()=>0})}return{version:{major:Z,minor:J},names:W,topDicts:H,strings:N,globalSubrs:j,charStrings:X,localSubrs:V,fdArrays:w,fdSelects:G}}function c1($){let Q=$.uint16();if(Q===0)return[];let Z=$.uint8(),J=[];for(let q=0;q<=Q;q++)J.push(E4($,Z));let K=[];for(let q=0;q<Q;q++){let W=J[q],U=J[q+1];if(W===void 0||U===void 0)continue;let H=U-W;K.push($.bytes(H))}return K}function E4($,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 P5($){let Q=new Map,Z=[];while($.remaining>0){let J=$.uint8();if(J<=21){let K=J;if(J===12)K=3072|$.uint8();Q.set(K,[...Z]),Z.length=0}else if(J===28)Z.push($.int16());else if(J===29)Z.push($.int32());else if(J===30)Z.push(A4($));else if(J>=32&&J<=246)Z.push(J-139);else if(J>=247&&J<=250){let K=$.uint8();Z.push((J-247)*256+K+108)}else if(J>=251&&J<=254){let K=$.uint8();Z.push(-(J-251)*256-K-108)}}return Q}function A4($){let Q="",Z="0123456789.EE -",J=!1;while(!J){let K=$.uint8();for(let q=0;q<2;q++){let W=q===0?K>>4:K&15;if(W===15){J=!0;break}if(W===12)Q+="E-";else Q+=Z[W]}}return parseFloat(Q)}function M5($,Q){let Z=P5($),J={},K=(q)=>{if(q<q9.length)return q9[q]??"";return Q[q-q9.length]??""};for(let[q,W]of Z){let U=W[0],H=W[1],_=W[2];switch(q){case 0:if(U!==void 0)J.version=K(U);break;case 1:if(U!==void 0)J.notice=K(U);break;case 3072:if(U!==void 0)J.copyright=K(U);break;case 2:if(U!==void 0)J.fullName=K(U);break;case 3:if(U!==void 0)J.familyName=K(U);break;case 4:if(U!==void 0)J.weight=K(U);break;case 3073:J.isFixedPitch=U!==0;break;case 3074:J.italicAngle=U;break;case 3075:J.underlinePosition=U;break;case 3076:J.underlineThickness=U;break;case 3077:J.paintType=U;break;case 3078:J.charstringType=U;break;case 3079:J.fontMatrix=W;break;case 13:J.uniqueID=U;break;case 5:J.fontBBox=W;break;case 3080:J.strokeWidth=U;break;case 15:J.charset=U;break;case 16:J.encoding=U;break;case 17:J.charStrings=U;break;case 18:if(U!==void 0&&H!==void 0)J.private=[U,H];break;case 3092:J.syntheticBase=U;break;case 3093:if(U!==void 0)J.postScript=K(U);break;case 3094:if(U!==void 0)J.baseFontName=K(U);break;case 3095:J.baseFontBlend=W;break;case 3102:if(U!==void 0&&H!==void 0&&_!==void 0)J.ros={registry:K(U),ordering:K(H),supplement:_};break;case 3103:J.cidFontVersion=U;break;case 3104:J.cidFontRevision=U;break;case 3105:J.cidFontType=U;break;case 3106:J.cidCount=U;break;case 3107:J.uidBase=U;break;case 3108:J.fdArray=U;break;case 3109:J.fdSelect=U;break;case 3110:if(U!==void 0)J.fontName=K(U);break}}return J}function R5($,Q){let Z=P5($),J={};for(let[K,q]of Z){let W=q[0];switch(K){case 6:J.blueValues=j6(q);break;case 7:J.otherBlues=j6(q);break;case 8:J.familyBlues=j6(q);break;case 9:J.familyOtherBlues=j6(q);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=j6(q);break;case 3085:J.stemSnapV=j6(q);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 j6($){let Q=[],Z=0;for(let J of $)Z+=J,Q.push(Z);return Q}function F4($,Q){let Z=$.uint8();if(Z===0){let J=$.uint8Array(Q);return{format:Z,select:(K)=>J[K]??0}}else if(Z===3){let J=$.uint16(),K=[];for(let W=0;W<J;W++)K.push({first:$.uint16(),fd:$.uint8()});let q=$.uint16();return{format:Z,select:(W)=>{let U=0,H=K.length-1;while(U<H){let N=Math.ceil((U+H)/2),j=K[N];if(j&&j.first<=W)U=N;else H=N-1}return K[U]?.fd??0}}}return{format:Z,select:()=>0}}function W9($,Q,Z=0){let J=$.charStrings[Z];if(!J||Q>=J.length)return null;let K=J[Q];if(!K)return null;let q=$.globalSubrs,U=$.topDicts[Z]?.ros!==void 0,H=[];if(U&&$.fdSelects[Z]&&$.fdArrays[Z]){let N=$.fdSelects[Z]?.select(Q)??0;H=$.fdArrays[Z]?.[N]?.localSubrs||$.localSubrs[Z]||[]}else H=$.localSubrs[Z]||[];let _={x:0,y:0,stack:[],nStems:0,haveWidth:!1,width:0,contours:[],currentContour:[],transientArray:Array(32).fill(0),callStack:[],vsindex:0,axisCoords:null,vstore:null};if(K8(_,K,q,H),_.currentContour.length>0)_.contours.push(_.currentContour);return _.contours}function q8($,Q,Z=null){if(Q>=$.charStrings.length)return null;let J=$.charStrings[Q];if(!J)return null;let K=$.globalSubrs,q=$.fdSelect?.select(Q)??0,W=$.fdArray[q],U=W?.localSubrs||[],H={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(K8(H,J,K,U),H.currentContour.length>0)H.contours.push(H.currentContour);return H.contours}function K8($,Q,Z,J){let K=0;while(K<Q.length){let q=Q[K++];if(q===void 0)return;if(q===28){let W=Q[K++];if(W===void 0)return;let U=Q[K++];if(U===void 0)return;$.stack.push((W<<8|U)<<16>>16)}else if(q===255){let W=Q[K++];if(W===void 0)return;let U=Q[K++];if(U===void 0)return;let H=Q[K++];if(H===void 0)return;let _=Q[K++];if(_===void 0)return;let N=(W<<24|U<<16|H<<8|_)>>0;$.stack.push(N/65536)}else if(q>=32&&q<=246)$.stack.push(q-139);else if(q>=247&&q<=250){let W=Q[K++];if(W===void 0)return;$.stack.push((q-247)*256+W+108)}else if(q>=251&&q<=254){let W=Q[K++];if(W===void 0)return;$.stack.push(-(q-251)*256-W-108)}else if(q===12){let W=Q[K++];if(W===void 0)return;let U=3072|W;O5($,U,Z,J)}else if(q===19||q===20){let W=$.stack;if(W.length%2!==0&&!$.haveWidth){let _=W.shift();if(_!==void 0)$.width=_,$.haveWidth=!0}$.nStems+=W.length/2,W.length=0;let H=Math.ceil($.nStems/8);K+=H}else O5($,q,Z,J);if($.callStack.length>0){let W=$.callStack[$.callStack.length-1];if(W&&W.pos>=W.data.length)$.callStack.pop()}}}function O5($,Q,Z,J){let K=$.stack;switch(Q){case 1:case 3:case 18:case 23:{if(K.length%2!==0&&!$.haveWidth){let W=K.shift();if(W===void 0)break;$.width=W,$.haveWidth=!0}$.nStems+=K.length/2,K.length=0;break}case 19:case 20:break;case 21:{if(K.length>2&&!$.haveWidth){let U=K.shift();if(U===void 0)break;$.width=U,$.haveWidth=!0}if($.currentContour.length>0)$.contours.push($.currentContour),$.currentContour=[];let q=K.pop();if(q===void 0)break;let W=K.pop();if(W===void 0)break;$.x+=W,$.y+=q,$.currentContour.push({x:$.x,y:$.y,onCurve:!0}),K.length=0;break}case 22:{if(K.length>1&&!$.haveWidth){let W=K.shift();if(W===void 0)break;$.width=W,$.haveWidth=!0}if($.currentContour.length>0)$.contours.push($.currentContour),$.currentContour=[];let q=K.pop();if(q===void 0)break;$.x+=q,$.currentContour.push({x:$.x,y:$.y,onCurve:!0}),K.length=0;break}case 4:{if(K.length>1&&!$.haveWidth){let W=K.shift();if(W===void 0)break;$.width=W,$.haveWidth=!0}if($.currentContour.length>0)$.contours.push($.currentContour),$.currentContour=[];let q=K.pop();if(q===void 0)break;$.y+=q,$.currentContour.push({x:$.x,y:$.y,onCurve:!0}),K.length=0;break}case 5:{while(K.length>=2){let q=K.shift();if(q===void 0)break;let W=K.shift();if(W===void 0)break;$.x+=q,$.y+=W,$.currentContour.push({x:$.x,y:$.y,onCurve:!0})}break}case 6:{let q=!0;while(K.length>=1){let W=K.shift();if(W===void 0)break;if(q)$.x+=W;else $.y+=W;$.currentContour.push({x:$.x,y:$.y,onCurve:!0}),q=!q}break}case 7:{let q=!0;while(K.length>=1){let W=K.shift();if(W===void 0)break;if(q)$.y+=W;else $.x+=W;$.currentContour.push({x:$.x,y:$.y,onCurve:!0}),q=!q}break}case 8:{while(K.length>=6){let q=K.shift();if(q===void 0)break;let W=K.shift();if(W===void 0)break;let U=K.shift();if(U===void 0)break;let H=K.shift();if(H===void 0)break;let _=K.shift();if(_===void 0)break;let N=K.shift();if(N===void 0)break;_1($,q,W,U,H,_,N)}break}case 27:{let q=0;if(K.length%4===1){let W=K.shift();if(W===void 0)break;q=W}while(K.length>=4){let W=K.shift();if(W===void 0)break;let U=K.shift();if(U===void 0)break;let H=K.shift();if(H===void 0)break;let _=K.shift();if(_===void 0)break;_1($,W,q,U,H,_,0),q=0}break}case 26:{let q=0;if(K.length%4===1){let W=K.shift();if(W===void 0)break;q=W}while(K.length>=4){let W=K.shift();if(W===void 0)break;let U=K.shift();if(U===void 0)break;let H=K.shift();if(H===void 0)break;let _=K.shift();if(_===void 0)break;_1($,q,W,U,H,0,_),q=0}break}case 31:{let q=!0;while(K.length>=4){if(q){let W=K.shift();if(W===void 0)break;let U=K.shift();if(U===void 0)break;let H=K.shift();if(H===void 0)break;let _=K.shift();if(_===void 0)break;let N=K.length===1?K.shift()??0:0;_1($,W,0,U,H,N,_)}else{let W=K.shift();if(W===void 0)break;let U=K.shift();if(U===void 0)break;let H=K.shift();if(H===void 0)break;let _=K.shift();if(_===void 0)break;let N=K.length===1?K.shift()??0:0;_1($,0,W,U,H,_,N)}q=!q}break}case 30:{let q=!0;while(K.length>=4){if(q){let W=K.shift();if(W===void 0)break;let U=K.shift();if(U===void 0)break;let H=K.shift();if(H===void 0)break;let _=K.shift();if(_===void 0)break;let N=K.length===1?K.shift()??0:0;_1($,0,W,U,H,_,N)}else{let W=K.shift();if(W===void 0)break;let U=K.shift();if(U===void 0)break;let H=K.shift();if(H===void 0)break;let _=K.shift();if(_===void 0)break;let N=K.length===1?K.shift()??0:0;_1($,W,0,U,H,N,_)}q=!q}break}case 24:{while(K.length>=8){let q=K.shift();if(q===void 0)break;let W=K.shift();if(W===void 0)break;let U=K.shift();if(U===void 0)break;let H=K.shift();if(H===void 0)break;let _=K.shift();if(_===void 0)break;let N=K.shift();if(N===void 0)break;_1($,q,W,U,H,_,N)}if(K.length>=2){let q=K.shift();if(q===void 0)break;let W=K.shift();if(W===void 0)break;$.x+=q,$.y+=W,$.currentContour.push({x:$.x,y:$.y,onCurve:!0})}break}case 25:{while(K.length>=8){let q=K.shift();if(q===void 0)break;let W=K.shift();if(W===void 0)break;$.x+=q,$.y+=W,$.currentContour.push({x:$.x,y:$.y,onCurve:!0})}if(K.length>=6){let q=K.shift();if(q===void 0)break;let W=K.shift();if(W===void 0)break;let U=K.shift();if(U===void 0)break;let H=K.shift();if(H===void 0)break;let _=K.shift();if(_===void 0)break;let N=K.shift();if(N===void 0)break;_1($,q,W,U,H,_,N)}break}case 10:{let q=K.pop();if(q===void 0)break;let W=q+I5(J.length),U=J[W];if(U)K8($,U,Z,J);break}case 29:{let q=K.pop();if(q===void 0)break;let W=q+I5(Z.length),U=Z[W];if(U)K8($,U,Z,J);break}case 11:break;case 14:{if(K.length>0&&!$.haveWidth){let q=K.shift();if(q===void 0)break;$.width=q,$.haveWidth=!0}if($.currentContour.length>0)$.contours.push($.currentContour),$.currentContour=[];K.length=0;break}case 3107:{if(K.length>=13){let q=K.shift();if(q===void 0)break;let W=K.shift();if(W===void 0)break;let U=K.shift();if(U===void 0)break;let H=K.shift();if(H===void 0)break;let _=K.shift();if(_===void 0)break;let N=K.shift();if(N===void 0)break;let j=K.shift();if(j===void 0)break;let X=K.shift();if(X===void 0)break;let V=K.shift();if(V===void 0)break;let w=K.shift();if(w===void 0)break;let G=K.shift();if(G===void 0)break;let Y=K.shift();if(Y===void 0)break;K.shift(),_1($,q,W,U,H,_,N),_1($,j,X,V,w,G,Y)}break}case 3106:{if(K.length>=7){let q=K.shift();if(q===void 0)break;let W=K.shift();if(W===void 0)break;let U=K.shift();if(U===void 0)break;let H=K.shift();if(H===void 0)break;let _=K.shift();if(_===void 0)break;let N=K.shift();if(N===void 0)break;let j=K.shift();if(j===void 0)break;_1($,q,0,W,U,H,0),_1($,_,0,N,-U,j,0)}break}case 3108:{if(K.length>=9){let q=K.shift();if(q===void 0)break;let W=K.shift();if(W===void 0)break;let U=K.shift();if(U===void 0)break;let H=K.shift();if(H===void 0)break;let _=K.shift();if(_===void 0)break;let N=K.shift();if(N===void 0)break;let j=K.shift();if(j===void 0)break;let X=K.shift();if(X===void 0)break;let V=K.shift();if(V===void 0)break;_1($,q,W,U,H,_,0),_1($,N,0,j,X,V,-(W+H+X))}break}case 3109:{if(K.length>=11){let q=K.shift();if(q===void 0)break;let W=K.shift();if(W===void 0)break;let U=K.shift();if(U===void 0)break;let H=K.shift();if(H===void 0)break;let _=K.shift();if(_===void 0)break;let N=K.shift();if(N===void 0)break;let j=K.shift();if(j===void 0)break;let X=K.shift();if(X===void 0)break;let V=K.shift();if(V===void 0)break;let w=K.shift();if(w===void 0)break;let G=K.shift();if(G===void 0)break;let Y=q+U+_+j+V,z=W+H+N+X+w,E,A;if(Math.abs(Y)>Math.abs(z))E=G,A=-z;else E=-Y,A=G;_1($,q,W,U,H,_,N),_1($,j,X,V,w,E,A)}break}case 3075:{let q=K.pop();if(q===void 0)break;let W=K.pop();if(W===void 0)break;K.push(W&&q?1:0);break}case 3076:{let q=K.pop();if(q===void 0)break;let W=K.pop();if(W===void 0)break;K.push(W||q?1:0);break}case 3077:{let q=K.pop();if(q===void 0)break;K.push(q?0:1);break}case 3081:{let q=K.pop();if(q===void 0)break;K.push(Math.abs(q));break}case 3082:{let q=K.pop();if(q===void 0)break;let W=K.pop();if(W===void 0)break;K.push(W+q);break}case 3083:{let q=K.pop();if(q===void 0)break;let W=K.pop();if(W===void 0)break;K.push(W-q);break}case 3084:{let q=K.pop();if(q===void 0)break;let W=K.pop();if(W===void 0)break;K.push(W/q);break}case 3086:{let q=K.pop();if(q===void 0)break;K.push(-q);break}case 3087:{let q=K.pop();if(q===void 0)break;let W=K.pop();if(W===void 0)break;K.push(W===q?1:0);break}case 3090:{K.pop();break}case 3092:{let q=K.pop();if(q===void 0)break;let W=K.pop();if(W===void 0)break;$.transientArray[q]=W;break}case 3093:{let q=K.pop();if(q===void 0)break;K.push($.transientArray[q]??0);break}case 3094:{let q=K.pop();if(q===void 0)break;let W=K.pop();if(W===void 0)break;let U=K.pop();if(U===void 0)break;let H=K.pop();if(H===void 0)break;K.push(W<=q?H:U);break}case 3095:{K.push(Math.random());break}case 3096:{let q=K.pop();if(q===void 0)break;let W=K.pop();if(W===void 0)break;K.push(W*q);break}case 3098:{let q=K.pop();if(q===void 0)break;K.push(Math.sqrt(q));break}case 3099:{let q=K[K.length-1];if(q===void 0)break;K.push(q);break}case 3100:{let q=K.pop();if(q===void 0)break;let W=K.pop();if(W===void 0)break;K.push(q,W);break}case 3101:{let q=K.pop();if(q===void 0)break;let W=K.length-1-q;K.push(K[W]??0);break}case 3102:{let q=K.pop();if(q===void 0)break;let W=K.pop();if(W===void 0)break;if(W>0){let U=K.splice(-W),H=(q%W+W)%W;for(let _=0;_<W;_++){let N=U[(_+H)%W];if(N!==void 0)K.push(N)}}break}case 16:{if(!$.axisCoords||!$.vstore)break;let q=K.pop();if(q===void 0)break;let W=$.vstore.itemVariationData[$.vsindex]?.regionIndexCount??0,U=q*W,H=K.splice(-U),_=K.splice(-q);for(let N=0;N<q;N++){let j=_[N];if(j===void 0)continue;let X=j;for(let V=0;V<W;V++){let w=H[N*W+V];if(w===void 0)continue;let G=L4($.vstore,$.vsindex,V,$.axisCoords);X+=w*G}K.push(X)}break}case 15:{let q=K.pop();if(q===void 0)break;$.vsindex=q;break}case 3072:break}}function _1($,Q,Z,J,K,q,W){let{x:U,y:H}=$,_=U+Q,N=H+Z,j=_+J,X=N+K,V=j+q,w=X+W;$.currentContour.push({x:_,y:N,onCurve:!1,cubic:!0}),$.currentContour.push({x:j,y:X,onCurve:!1,cubic:!0}),$.currentContour.push({x:V,y:w,onCurve:!0}),$.x=V,$.y=w}function I5($){if($<1240)return 107;if($<33900)return 1131;return 32768}function L4($,Q,Z,J){let K=$.itemVariationData[Q];if(!K)return 0;let q=K.regionIndexes[Z];if(q===void 0)return 0;let W=$.variationRegionList.regions[q];if(!W)return 0;let U=1;for(let H=0;H<W.axes.length&&H<J.length;H++){let _=W.axes[H];if(!_)continue;let N=J[H];if(N===void 0)continue;if(N<_.startCoord||N>_.endCoord)return 0;if(N===_.peakCoord)continue;if(N<_.peakCoord)U*=(N-_.startCoord)/(_.peakCoord-_.startCoord);else U*=(_.endCoord-N)/(_.endCoord-_.peakCoord)}return U}function D4($,Q,Z=0){let J=$.topDicts[Z];return 0}function v5($){let Q=$.offset,Z=$.uint8(),J=$.uint8(),K=$.uint8(),q=$.uint16();$.seek(Q+K);let W=$.slice($.offset-Q,q);$.skip(q);let U=R4(W),H=W8($),_=[];if(U.charStrings!==void 0)$.seek(Q+U.charStrings),_=W8($);let N=[];if(U.fdArray!==void 0){$.seek(Q+U.fdArray);let V=W8($);for(let w of V){let G=T4(new C1(w.buffer,w.byteOffset,w.byteLength));if(G.privateOffset!==void 0&&G.privateSize!==void 0){$.seek(Q+G.privateOffset);let Y=$.slice(0,G.privateSize);if(G.private=P4(Y),G.private.subrs!==void 0)$.seek(Q+G.privateOffset+G.private.subrs),G.localSubrs=W8($)}N.push(G)}}let j=null;if(U.fdSelect!==void 0)$.seek(Q+U.fdSelect),j=O4($,_.length);let X=null;if(U.vstore!==void 0)$.seek(Q+U.vstore),X=I4($);return{version:{major:Z,minor:J},topDict:U,globalSubrs:H,charStrings:_,fdArray:N,fdSelect:j,vstore:X}}function W8($){let Q=$.uint32();if(Q===0)return[];let Z=$.uint8(),J=[];for(let q=0;q<=Q;q++)J.push(B4($,Z));let K=[];for(let q=0;q<Q;q++){let W=J[q],U=J[q+1];if(W===void 0||U===void 0)continue;let H=U-W;K.push($.bytes(H))}return K}function B4($,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 U9($){let Q=new Map,Z=[];while($.remaining>0){let J=$.uint8();if(J<=21){let K=J;if(J===12)K=3072|$.uint8();Q.set(K,[...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(M4($));else if(J>=32&&J<=246)Z.push(J-139);else if(J>=247&&J<=250){let K=$.uint8();Z.push((J-247)*256+K+108)}else if(J>=251&&J<=254){let K=$.uint8();Z.push(-(J-251)*256-K-108)}}return Q}function M4($){let Q="",Z="0123456789.EE -",J=!1;while(!J){let K=$.uint8();for(let q=0;q<2;q++){let W=q===0?K>>4:K&15;if(W===15){J=!0;break}if(W===12)Q+="E-";else{let U=Z[W];if(U!==void 0)Q+=U}}}return parseFloat(Q)}function R4($){let Q=U9($),Z={};for(let[J,K]of Q)switch(J){case 3079:Z.fontMatrix=K;break;case 17:Z.charStrings=K[0];break;case 3108:Z.fdArray=K[0];break;case 3109:Z.fdSelect=K[0];break;case 24:Z.vstore=K[0];break}return Z}function T4($){let Q=U9($),Z={},J=Q.get(18);if(J&&J.length>=2)Z.privateSize=J[0],Z.privateOffset=J[1];return Z}function P4($){let Q=U9($),Z={};for(let[J,K]of Q){let q=K[0];switch(J){case 6:Z.blueValues=X6(K);break;case 7:Z.otherBlues=X6(K);break;case 8:Z.familyBlues=X6(K);break;case 9:Z.familyOtherBlues=X6(K);break;case 3081:Z.blueScale=q;break;case 3082:Z.blueShift=q;break;case 3083:Z.blueFuzz=q;break;case 10:Z.stdHW=q;break;case 11:Z.stdVW=q;break;case 3084:Z.stemSnapH=X6(K);break;case 3085:Z.stemSnapV=X6(K);break;case 3089:Z.languageGroup=q;break;case 3090:Z.expansionFactor=q;break;case 19:Z.subrs=q;break;case 22:Z.vsindex=q;break;case 23:Z.blend=K;break}}return Z}function X6($){let Q=[],Z=0;for(let J of $)Z+=J,Q.push(Z);return Q}function O4($,Q){let Z=$.uint8();if(Z===0){let J=$.uint8Array(Q);return{format:Z,select:(K)=>J[K]??0}}else if(Z===3){let J=$.uint16(),K=[];for(let q=0;q<J;q++)K.push({first:$.uint16(),fd:$.uint8()});return $.uint16(),{format:Z,select:(q)=>{let W=0,U=K.length-1;while(W<U){let _=Math.ceil((W+U)/2),N=K[_];if(N&&N.first<=q)W=_;else U=_-1}return K[W]?.fd??0}}}else if(Z===4){let J=$.uint32(),K=[];for(let q=0;q<J;q++)K.push({first:$.uint32(),fd:$.uint16()});return $.uint32(),{format:Z,select:(q)=>{let W=0,U=K.length-1;while(W<U){let _=Math.ceil((W+U)/2),N=K[_];if(N&&N.first<=q)W=_;else U=_-1}return K[W]?.fd??0}}}return{format:Z,select:()=>0}}function I4($){let Q=$.offset,Z=$.uint16(),J=$.uint16(),K=$.uint32(),q=$.uint16(),W=[];for(let _=0;_<q;_++)W.push($.uint32());$.seek(Q+K);let U=v4($),H=[];for(let _ of W)$.seek(Q+_),H.push(k4($));return{format:J,variationRegionList:U,itemVariationData:H}}function v4($){let Q=$.uint16(),Z=$.uint16(),J=[];for(let K=0;K<Z;K++){let q=[];for(let W=0;W<Q;W++)q.push({startCoord:$.f2dot14(),peakCoord:$.f2dot14(),endCoord:$.f2dot14()});J.push({axes:q})}return{axisCount:Q,regionCount:Z,regions:J}}function k4($){let Q=$.uint16(),Z=$.uint16(),J=Z&32767,K=(Z&32768)!==0,q=[];for(let U=0;U<J;U++)q.push($.uint16());let W=[];for(let U=0;U<Q;U++){let H=[];for(let _=0;_<J;_++)if(K)H.push($.int32());else H.push($.int16());W.push(H)}return{itemCount:Q,regionIndexCount:J,regionIndexes:q,deltaSets:W}}function k5($,Q){let Z=$.offset,J=$.uint16(),K=$.uint16(),q=[];for(let N=0;N<K;N++)q.push({platformId:$.uint16(),encodingId:$.uint16(),offset:$.uint32()});let W=new Map,U=new Set;for(let N of q){if(U.has(N.offset)){let V=`${N.platformId}-${N.encodingId}`;for(let[w,G]of W){let z=w.split("@")[0];if(z&&Number.parseInt(z,10)===N.offset){W.set(V,G);break}}continue}U.add(N.offset);let j=$.slice(N.offset,Q-N.offset),X=C4(j);if(X){let V=`${N.platformId}-${N.encodingId}`;W.set(V,X)}}let H=["3-10","0-4","3-1","0-3","0-6","1-0"],_=null;for(let N of H){let j=W.get(N);if(j&&j.format!==14){_=j;break}}if(!_){for(let N of W.values())if(N.format!==14){_=N;break}}return{version:J,numTables:K,encodingRecords:q,subtables:W,bestSubtable:_}}function C4($){switch($.uint16()){case 0:return S4($);case 4:return h4($);case 12:return y4($);case 14:return b4($);default:return null}}function S4($){let Q=$.uint16(),Z=$.uint16(),J=$.uint8Array(256);return{format:0,glyphIdArray:J,lookup(K){if(K>=0&&K<256)return J[K];return}}}function h4($){let Q=$.uint16(),Z=$.uint16(),K=$.uint16()/2;$.skip(6);let q=$.uint16Array(K);$.skip(2);let W=$.uint16Array(K),U=$.int16Array(K),H=$.offset,_=$.uint16Array(K),j=$.remaining/2,X=$.uint16Array(j);return{format:4,segCount:K,endCodes:q,startCodes:W,idDeltas:U,idRangeOffsets:_,glyphIdArray:X,lookup(V){if(V>65535)return;let w=0,G=K-1;while(w<=G){let Y=w+G>>>1,z=q[Y];if(z===void 0)break;if(V>z)w=Y+1;else{let E=W[Y];if(E===void 0)break;if(V<E)G=Y-1;else{let A=_[Y],L=U[Y];if(A===void 0||L===void 0)break;if(A===0)return V+L&65535;let O=A/2-(K-Y)+(V-E),D=X[O];if(D===void 0||D===0)return 0;return D+L&65535}}}return}}}function y4($){$.skip(2);let Q=$.uint32(),Z=$.uint32(),J=$.uint32(),K=Array(J);for(let q=0;q<J;q++)K[q]={startCharCode:$.uint32(),endCharCode:$.uint32(),startGlyphId:$.uint32()};return{format:12,groups:K,lookup(q){let W=0,U=K.length-1;while(W<=U){let H=W+U>>>1,_=K[H];if(!_)break;if(q>_.endCharCode)W=H+1;else if(q<_.startCharCode)U=H-1;else return _.startGlyphId+(q-_.startCharCode)}return}}}function b4($){let Q=$.offset-2,Z=$.uint32(),J=$.uint32(),K=[];for(let W=0;W<J;W++)K.push({varSelector:$.uint24(),defaultUVSOffset:$.uint32(),nonDefaultUVSOffset:$.uint32()});let q=[];for(let W of K){let U=null,H=null;if(W.defaultUVSOffset!==0){let _=$.sliceFrom(Q+W.defaultUVSOffset),N=_.uint32();U=[];for(let j=0;j<N;j++)U.push({startUnicodeValue:_.uint24(),additionalCount:_.uint8()})}if(W.nonDefaultUVSOffset!==0){let _=$.sliceFrom(Q+W.nonDefaultUVSOffset),N=_.uint32();H=[];for(let j=0;j<N;j++)H.push({unicodeValue:_.uint24(),glyphId:_.uint16()})}q.push({varSelector:W.varSelector,defaultUVS:U,nonDefaultUVS:H})}return{format:14,varSelectorRecords:q,lookup(W){return},lookupVariation(W,U){let H=0,_=q.length-1,N=null;while(H<=_){let j=H+_>>>1,X=q[j];if(!X)break;if(U>X.varSelector)H=j+1;else if(U<X.varSelector)_=j-1;else{N=X;break}}if(!N)return;if(N.nonDefaultUVS){let j=0,X=N.nonDefaultUVS.length-1;while(j<=X){let V=j+X>>>1,w=N.nonDefaultUVS[V];if(!w)break;if(W>w.unicodeValue)j=V+1;else if(W<w.unicodeValue)X=V-1;else return w.glyphId}}if(N.defaultUVS)for(let j of N.defaultUVS){let X=j.startUnicodeValue+j.additionalCount;if(W>=j.startUnicodeValue&&W<=X)return"default"}return}}}function C5($,Q){return $.bestSubtable?.lookup(Q)??0}var S5;((M)=>{M[M.ColrLayers=1]="ColrLayers";M[M.Solid=2]="Solid";M[M.VarSolid=3]="VarSolid";M[M.LinearGradient=4]="LinearGradient";M[M.VarLinearGradient=5]="VarLinearGradient";M[M.RadialGradient=6]="RadialGradient";M[M.VarRadialGradient=7]="VarRadialGradient";M[M.SweepGradient=8]="SweepGradient";M[M.VarSweepGradient=9]="VarSweepGradient";M[M.Glyph=10]="Glyph";M[M.ColrGlyph=11]="ColrGlyph";M[M.Transform=12]="Transform";M[M.VarTransform=13]="VarTransform";M[M.Translate=14]="Translate";M[M.VarTranslate=15]="VarTranslate";M[M.Scale=16]="Scale";M[M.VarScale=17]="VarScale";M[M.ScaleAroundCenter=18]="ScaleAroundCenter";M[M.VarScaleAroundCenter=19]="VarScaleAroundCenter";M[M.ScaleUniform=20]="ScaleUniform";M[M.VarScaleUniform=21]="VarScaleUniform";M[M.ScaleUniformAroundCenter=22]="ScaleUniformAroundCenter";M[M.VarScaleUniformAroundCenter=23]="VarScaleUniformAroundCenter";M[M.Rotate=24]="Rotate";M[M.VarRotate=25]="VarRotate";M[M.RotateAroundCenter=26]="RotateAroundCenter";M[M.VarRotateAroundCenter=27]="VarRotateAroundCenter";M[M.Skew=28]="Skew";M[M.VarSkew=29]="VarSkew";M[M.SkewAroundCenter=30]="SkewAroundCenter";M[M.VarSkewAroundCenter=31]="VarSkewAroundCenter";M[M.Composite=32]="Composite"})(S5||={});var h5;((J)=>{J[J.Pad=0]="Pad";J[J.Repeat=1]="Repeat";J[J.Reflect=2]="Reflect"})(h5||={});var y5;((I)=>{I[I.Clear=0]="Clear";I[I.Src=1]="Src";I[I.Dest=2]="Dest";I[I.SrcOver=3]="SrcOver";I[I.DestOver=4]="DestOver";I[I.SrcIn=5]="SrcIn";I[I.DestIn=6]="DestIn";I[I.SrcOut=7]="SrcOut";I[I.DestOut=8]="DestOut";I[I.SrcAtop=9]="SrcAtop";I[I.DestAtop=10]="DestAtop";I[I.Xor=11]="Xor";I[I.Plus=12]="Plus";I[I.Screen=13]="Screen";I[I.Overlay=14]="Overlay";I[I.Darken=15]="Darken";I[I.Lighten=16]="Lighten";I[I.ColorDodge=17]="ColorDodge";I[I.ColorBurn=18]="ColorBurn";I[I.HardLight=19]="HardLight";I[I.SoftLight=20]="SoftLight";I[I.Difference=21]="Difference";I[I.Exclusion=22]="Exclusion";I[I.Multiply=23]="Multiply";I[I.Hue=24]="Hue";I[I.Saturation=25]="Saturation";I[I.Color=26]="Color";I[I.Luminosity=27]="Luminosity"})(y5||={});function _9($){let Q=$.offset,Z=$.uint16(),J=$.uint16(),K=$.uint32(),q=$.uint32(),W=$.uint16(),U=[];if(K!==0&&J>0){$.seek(Q+K);for(let N=0;N<J;N++)U.push({glyphId:$.uint16(),firstLayerIndex:$.uint16(),numLayers:$.uint16()})}let H=[];if(q!==0&&W>0){$.seek(Q+q);for(let N=0;N<W;N++)H.push({glyphId:$.uint16(),paletteIndex:$.uint16()})}let _={version:Z,baseGlyphRecords:U,layerRecords:H};if(Z>=1){$.seek(Q+14);let N=$.uint32(),j=$.uint32(),X=$.uint32(),V=$.uint32(),w=$.uint32();if(N!==0){$.seek(Q+N);let G=$.uint32();_.baseGlyphPaintRecords=[];for(let Y=0;Y<G;Y++){let z=$.uint16(),E=$.uint32(),A=$.offset;$.seek(Q+N+4+Y*6+2+E-4);let L=Y1($,Q);$.seek(A),_.baseGlyphPaintRecords.push({glyphId:z,paint:L})}}if(j!==0){$.seek(Q+j);let G=$.uint32(),Y=[];for(let z=0;z<G;z++)Y.push($.uint32());_.layerList=[];for(let z of Y)$.seek(Q+j+z),_.layerList.push(Y1($,Q))}if(X!==0)$.seek(Q+X),_.clipList=m4($,Q);if(V!==0)$.seek(Q+V),_.varIdxMap=u4($);if(w!==0)$.seek(Q+w),_.itemVariationStore=x4($)}return _}function Y1($,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(),K=$.fword(),q=$.fword(),W=$.fword(),U=$.fword(),H=$.fword(),_=$.fword(),N=$.offset;$.seek($.offset-18+J);let j=H9($);return $.seek(N),{format:Z,colorLine:j,x0:K,y0:q,x1:W,y1:U,x2:H,y2:_}}case 6:case 7:{let J=$.uint24(),K=$.fword(),q=$.fword(),W=$.ufword(),U=$.fword(),H=$.fword(),_=$.ufword(),N=$.offset;$.seek($.offset-18+J);let j=H9($);return $.seek(N),{format:Z,colorLine:j,x0:K,y0:q,radius0:W,x1:U,y1:H,radius1:_}}case 8:case 9:{let J=$.uint24(),K=$.fword(),q=$.fword(),W=$.f2dot14(),U=$.f2dot14(),H=$.offset;$.seek($.offset-12+J);let _=H9($);return $.seek(H),{format:Z,colorLine:_,centerX:K,centerY:q,startAngle:W,endAngle:U}}case 10:{let J=$.uint24(),K=$.uint16(),q=$.offset;$.seek($.offset-5+J);let W=Y1($,Q);return $.seek(q),{format:Z,paint:W,glyphId:K}}case 11:return{format:Z,glyphId:$.uint16()};case 12:case 13:{let J=$.uint24(),K=$.uint24(),q=$.offset-6+J,W=$.offset-3+K;$.seek(W);let U={xx:$.fixed(),yx:$.fixed(),xy:$.fixed(),yy:$.fixed(),dx:$.fixed(),dy:$.fixed()};$.seek(q);let H=Y1($,Q);return{format:Z,paint:H,transform:U}}case 14:case 15:{let J=$.uint24(),K=$.fword(),q=$.fword(),W=$.offset;$.seek($.offset-7+J);let U=Y1($,Q);return $.seek(W),{format:Z,paint:U,dx:K,dy:q}}case 16:case 17:{let J=$.uint24(),K=$.f2dot14(),q=$.f2dot14(),W=$.offset;$.seek($.offset-7+J);let U=Y1($,Q);return $.seek(W),{format:Z,paint:U,scaleX:K,scaleY:q}}case 18:case 19:{let J=$.uint24(),K=$.f2dot14(),q=$.f2dot14(),W=$.fword(),U=$.fword(),H=$.offset;$.seek($.offset-11+J);let _=Y1($,Q);return $.seek(H),{format:Z,paint:_,scaleX:K,scaleY:q,centerX:W,centerY:U}}case 20:case 21:{let J=$.uint24(),K=$.f2dot14(),q=$.offset;$.seek($.offset-5+J);let W=Y1($,Q);return $.seek(q),{format:Z,paint:W,scaleX:K,scaleY:K}}case 22:case 23:{let J=$.uint24(),K=$.f2dot14(),q=$.fword(),W=$.fword(),U=$.offset;$.seek($.offset-9+J);let H=Y1($,Q);return $.seek(U),{format:Z,paint:H,scaleX:K,scaleY:K,centerX:q,centerY:W}}case 24:case 25:{let J=$.uint24(),K=$.f2dot14(),q=$.offset;$.seek($.offset-5+J);let W=Y1($,Q);return $.seek(q),{format:Z,paint:W,angle:K}}case 26:case 27:{let J=$.uint24(),K=$.f2dot14(),q=$.fword(),W=$.fword(),U=$.offset;$.seek($.offset-9+J);let H=Y1($,Q);return $.seek(U),{format:Z,paint:H,angle:K,centerX:q,centerY:W}}case 28:case 29:{let J=$.uint24(),K=$.f2dot14(),q=$.f2dot14(),W=$.offset;$.seek($.offset-7+J);let U=Y1($,Q);return $.seek(W),{format:Z,paint:U,xSkewAngle:K,ySkewAngle:q}}case 30:case 31:{let J=$.uint24(),K=$.f2dot14(),q=$.f2dot14(),W=$.fword(),U=$.fword(),H=$.offset;$.seek($.offset-11+J);let _=Y1($,Q);return $.seek(H),{format:Z,paint:_,xSkewAngle:K,ySkewAngle:q,centerX:W,centerY:U}}case 32:{let J=$.uint24(),K=$.uint8(),q=$.uint24(),W=$.offset-7+J,U=$.offset-3+q;$.seek(W);let H=Y1($,Q);$.seek(U);let _=Y1($,Q);return{format:Z,sourcePaint:H,compositeMode:K,backdropPaint:_}}default:throw Error(`Unknown paint format: ${Z}`)}}function H9($){let Q=$.uint8(),Z=$.uint16(),J=[];for(let K=0;K<Z;K++)J.push({stopOffset:$.f2dot14(),paletteIndex:$.uint16(),alpha:$.f2dot14()});return{extend:Q,colorStops:J}}function m4($,Q){let Z=$.uint8(),J=$.uint32(),K=[];for(let q=0;q<J;q++){let W=$.uint16(),U=$.uint16(),H=$.uint24(),_=$.offset;$.seek($.offset-7+H);let N=$.uint8(),j={format:N,xMin:$.fword(),yMin:$.fword(),xMax:$.fword(),yMax:$.fword()};if(N===2)j.varIndexBase=$.uint32();$.seek(_),K.push({startGlyphId:W,endGlyphId:U,clipBox:j})}return K}function b5($,Q){let Z=$.baseGlyphRecords,J=0,K=Z.length-1;while(J<=K){let q=J+K>>>1,W=Z[q];if(!W)break;if(W.glyphId===Q){let U=[];for(let H=0;H<W.numLayers;H++){let _=$.layerRecords[W.firstLayerIndex+H];if(_)U.push(_)}return U}else if(W.glyphId<Q)J=q+1;else K=q-1}return null}function m5($,Q){if(!$.baseGlyphPaintRecords)return null;let Z=$.baseGlyphPaintRecords,J=0,K=Z.length-1;while(J<=K){let q=J+K>>>1,W=Z[q];if(!W)break;if(W.glyphId===Q)return W.paint;else if(W.glyphId<Q)J=q+1;else K=q-1}return null}function g4($,Q){return b5($,Q)!==null||m5($,Q)!==null}function u4($){let Q=$.uint8(),Z=$.uint8(),J=Q===0?$.uint16():$.uint32(),K=(Z&15)+1,q=(Z>>4&15)+1,W=Math.ceil((K+q)/8),U=[];for(let H=0;H<J;H++){let _=0;for(let V=0;V<W;V++)_=_<<8|$.uint8();let N=(1<<K)-1,j=_&N,X=_>>K;U.push(X<<16|j)}return U}function x4($){let Q=$.offset,Z=$.uint16(),J=$.uint32(),K=$.uint16(),q=[];for(let N=0;N<K;N++)q.push($.uint32());$.seek(Q+J);let W=$.uint16(),U=$.uint16(),H=[];for(let N=0;N<U;N++){let j=[];for(let X=0;X<W;X++)j.push({startCoord:$.f2dot14(),peakCoord:$.f2dot14(),endCoord:$.f2dot14()});H.push({regionAxes:j})}let _=[];for(let N of q){$.seek(Q+N);let j=$.uint16(),X=$.uint16(),V=$.uint16(),w=[];for(let E=0;E<V;E++)w.push($.uint16());let G=(X&32768)!==0,Y=X&32767,z=[];for(let E=0;E<j;E++){let A=[];for(let L=0;L<V;L++)if(L<Y)A.push(G?$.int32():$.int16());else A.push(G?$.int16():$.int8());z.push(A)}_.push({itemCount:j,wordDeltaCount:X,regionIndexCount:V,regionIndexes:w,deltaSets:z})}return{format:Z,variationRegionListOffset:J,itemVariationDataCount:K,itemVariationDataOffsets:q,variationRegions:H,itemVariationData:_}}function f4($,Q){if(!$.clipList)return null;for(let Z of $.clipList)if(Q>=Z.startGlyphId&&Q<=Z.endGlyphId)return Z.clipBox;return null}function l4($,Q,Z){if(!$.itemVariationStore||!$.varIdxMap)return 0;let J=$.varIdxMap[Q];if(J===void 0)return 0;let K=J>>16,q=J&65535,W=$.itemVariationStore,U=W.itemVariationData[K];if(!U)return 0;let H=U.deltaSets[q];if(!H)return 0;let _=0;for(let N=0;N<U.regionIndexCount;N++){let j=U.regionIndexes[N];if(j===void 0)continue;let X=W.variationRegions[j];if(!X)continue;let V=1;for(let G=0;G<X.regionAxes.length&&G<Z.length;G++){let Y=X.regionAxes[G],z=Z[G];if(Y===void 0||z===void 0)continue;if(V*=n4(z,Y.startCoord,Y.peakCoord,Y.endCoord),V===0)break}let w=H[N];if(w!==void 0)_+=w*V}return _}function n4($,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 d4($){return $.version>=1&&$.baseGlyphPaintRecords!==void 0}function i4($,Q){return $.layerList?.[Q]??null}var g5;((Z)=>{Z[Z.UsableWithLightBackground=1]="UsableWithLightBackground";Z[Z.UsableWithDarkBackground=2]="UsableWithDarkBackground"})(g5||={});function N9($){let Q=$.offset,Z=$.uint16(),J=$.uint16(),K=$.uint16(),q=$.uint16(),W=$.uint32(),U=[];for(let V=0;V<K;V++)U.push($.uint16());$.seek(Q+W);let H=[];for(let V=0;V<q;V++)H.push({blue:$.uint8(),green:$.uint8(),red:$.uint8(),alpha:$.uint8()});let _=[];for(let V=0;V<K;V++){let w=U[V];if(w===void 0)continue;let G=[];for(let Y=0;Y<J;Y++){let z=H[w+Y];if(z)G.push(z)}_.push({colors:G})}let N,j,X;if(Z>=1){$.seek(Q+12+K*2);let V=$.uint32(),w=$.uint32(),G=$.uint32();if(V!==0){$.seek(Q+V),N=[];for(let Y=0;Y<K;Y++)N.push($.uint32())}if(w!==0){$.seek(Q+w),j=[];for(let Y=0;Y<K;Y++)j.push($.uint16())}if(G!==0){$.seek(Q+G),X=[];for(let Y=0;Y<J;Y++)X.push($.uint16())}}return{version:Z,numPalettes:K,numPaletteEntries:J,palettes:_,paletteTypes:N,paletteLabels:j,paletteEntryLabels:X}}function p4($,Q,Z){let J=$.palettes[Q];if(!J)return null;return J.colors[Z]??null}function o4($){return`rgba(${$.red}, ${$.green}, ${$.blue}, ${($.alpha/255).toFixed(3)})`}function c4($){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 K=$.alpha.toString(16).padStart(2,"0");return`#${Q}${Z}${J}${K}`}var u5;((v)=>{v[v.AllTypographicFeatures=0]="AllTypographicFeatures";v[v.Ligatures=1]="Ligatures";v[v.CursiveConnection=2]="CursiveConnection";v[v.LetterCase=3]="LetterCase";v[v.VerticalSubstitution=4]="VerticalSubstitution";v[v.LinguisticRearrangement=5]="LinguisticRearrangement";v[v.NumberSpacing=6]="NumberSpacing";v[v.SmartSwashes=8]="SmartSwashes";v[v.Diacritics=9]="Diacritics";v[v.VerticalPosition=10]="VerticalPosition";v[v.Fractions=11]="Fractions";v[v.OverlappingCharacters=13]="OverlappingCharacters";v[v.TypographicExtras=14]="TypographicExtras";v[v.MathematicalExtras=15]="MathematicalExtras";v[v.OrnamentSets=16]="OrnamentSets";v[v.CharacterAlternatives=17]="CharacterAlternatives";v[v.DesignComplexity=18]="DesignComplexity";v[v.StyleOptions=19]="StyleOptions";v[v.CharacterShape=20]="CharacterShape";v[v.NumberCase=21]="NumberCase";v[v.TextSpacing=22]="TextSpacing";v[v.Transliteration=23]="Transliteration";v[v.Annotation=24]="Annotation";v[v.KanaSpacing=25]="KanaSpacing";v[v.IdeographicSpacing=26]="IdeographicSpacing";v[v.UnicodeDecomposition=27]="UnicodeDecomposition";v[v.RubyKana=28]="RubyKana";v[v.CJKSymbolAlternatives=29]="CJKSymbolAlternatives";v[v.IdeographicAlternatives=30]="IdeographicAlternatives";v[v.CJKVerticalRomanPlacement=31]="CJKVerticalRomanPlacement";v[v.ItalicCJKRoman=32]="ItalicCJKRoman";v[v.CaseSensitiveLayout=33]="CaseSensitiveLayout";v[v.AlternateKana=34]="AlternateKana";v[v.StylisticAlternatives=35]="StylisticAlternatives";v[v.ContextualAlternatives=36]="ContextualAlternatives";v[v.LowerCase=37]="LowerCase";v[v.UpperCase=38]="UpperCase";v[v.LanguageTag=39]="LanguageTag";v[v.CJKRomanSpacing=103]="CJKRomanSpacing"})(u5||={});var x5;((D)=>{D[D.RequiredLigaturesOn=0]="RequiredLigaturesOn";D[D.RequiredLigaturesOff=1]="RequiredLigaturesOff";D[D.CommonLigaturesOn=2]="CommonLigaturesOn";D[D.CommonLigaturesOff=3]="CommonLigaturesOff";D[D.RareLigaturesOn=4]="RareLigaturesOn";D[D.RareLigaturesOff=5]="RareLigaturesOff";D[D.LogosOn=6]="LogosOn";D[D.LogosOff=7]="LogosOff";D[D.RebusPicturesOn=8]="RebusPicturesOn";D[D.RebusPicturesOff=9]="RebusPicturesOff";D[D.DiphthongLigaturesOn=10]="DiphthongLigaturesOn";D[D.DiphthongLigaturesOff=11]="DiphthongLigaturesOff";D[D.SquaredLigaturesOn=12]="SquaredLigaturesOn";D[D.SquaredLigaturesOff=13]="SquaredLigaturesOff";D[D.AbbrevSquaredLigaturesOn=14]="AbbrevSquaredLigaturesOn";D[D.AbbrevSquaredLigaturesOff=15]="AbbrevSquaredLigaturesOff";D[D.SymbolLigaturesOn=16]="SymbolLigaturesOn";D[D.SymbolLigaturesOff=17]="SymbolLigaturesOff";D[D.ContextualLigaturesOn=18]="ContextualLigaturesOn";D[D.ContextualLigaturesOff=19]="ContextualLigaturesOff";D[D.HistoricalLigaturesOn=20]="HistoricalLigaturesOn";D[D.HistoricalLigaturesOff=21]="HistoricalLigaturesOff"})(x5||={});var f5;((q)=>{q[q.NormalPosition=0]="NormalPosition";q[q.Superiors=1]="Superiors";q[q.Inferiors=2]="Inferiors";q[q.Ordinals=3]="Ordinals";q[q.ScientificInferiors=4]="ScientificInferiors"})(f5||={});var l5;((Z)=>{Z[Z.LowerCaseNumbers=0]="LowerCaseNumbers";Z[Z.UpperCaseNumbers=1]="UpperCaseNumbers"})(l5||={});var n5;((K)=>{K[K.MonospacedNumbers=0]="MonospacedNumbers";K[K.ProportionalNumbers=1]="ProportionalNumbers";K[K.ThirdWidthNumbers=2]="ThirdWidthNumbers";K[K.QuarterWidthNumbers=3]="QuarterWidthNumbers"})(n5||={});var d5;((J)=>{J[J.NoFractions=0]="NoFractions";J[J.VerticalFractions=1]="VerticalFractions";J[J.DiagonalFractions=2]="DiagonalFractions"})(d5||={});var i5;((K)=>{K[K.CaseSensitiveLayoutOn=0]="CaseSensitiveLayoutOn";K[K.CaseSensitiveLayoutOff=1]="CaseSensitiveLayoutOff";K[K.CaseSensitiveSpacingOn=2]="CaseSensitiveSpacingOn";K[K.CaseSensitiveSpacingOff=3]="CaseSensitiveSpacingOff"})(i5||={});var p5;((S)=>{S[S.NoStylisticAlternates=0]="NoStylisticAlternates";S[S.StylisticAltOneOn=2]="StylisticAltOneOn";S[S.StylisticAltOneOff=3]="StylisticAltOneOff";S[S.StylisticAltTwoOn=4]="StylisticAltTwoOn";S[S.StylisticAltTwoOff=5]="StylisticAltTwoOff";S[S.StylisticAltThreeOn=6]="StylisticAltThreeOn";S[S.StylisticAltThreeOff=7]="StylisticAltThreeOff";S[S.StylisticAltFourOn=8]="StylisticAltFourOn";S[S.StylisticAltFourOff=9]="StylisticAltFourOff";S[S.StylisticAltFiveOn=10]="StylisticAltFiveOn";S[S.StylisticAltFiveOff=11]="StylisticAltFiveOff";S[S.StylisticAltSixOn=12]="StylisticAltSixOn";S[S.StylisticAltSixOff=13]="StylisticAltSixOff";S[S.StylisticAltSevenOn=14]="StylisticAltSevenOn";S[S.StylisticAltSevenOff=15]="StylisticAltSevenOff";S[S.StylisticAltEightOn=16]="StylisticAltEightOn";S[S.StylisticAltEightOff=17]="StylisticAltEightOff";S[S.StylisticAltNineOn=18]="StylisticAltNineOn";S[S.StylisticAltNineOff=19]="StylisticAltNineOff";S[S.StylisticAltTenOn=20]="StylisticAltTenOn";S[S.StylisticAltTenOff=21]="StylisticAltTenOff";S[S.StylisticAltElevenOn=22]="StylisticAltElevenOn";S[S.StylisticAltElevenOff=23]="StylisticAltElevenOff";S[S.StylisticAltTwelveOn=24]="StylisticAltTwelveOn";S[S.StylisticAltTwelveOff=25]="StylisticAltTwelveOff";S[S.StylisticAltThirteenOn=26]="StylisticAltThirteenOn";S[S.StylisticAltThirteenOff=27]="StylisticAltThirteenOff";S[S.StylisticAltFourteenOn=28]="StylisticAltFourteenOn";S[S.StylisticAltFourteenOff=29]="StylisticAltFourteenOff";S[S.StylisticAltFifteenOn=30]="StylisticAltFifteenOn";S[S.StylisticAltFifteenOff=31]="StylisticAltFifteenOff";S[S.StylisticAltSixteenOn=32]="StylisticAltSixteenOn";S[S.StylisticAltSixteenOff=33]="StylisticAltSixteenOff";S[S.StylisticAltSeventeenOn=34]="StylisticAltSeventeenOn";S[S.StylisticAltSeventeenOff=35]="StylisticAltSeventeenOff";S[S.StylisticAltEighteenOn=36]="StylisticAltEighteenOn";S[S.StylisticAltEighteenOff=37]="StylisticAltEighteenOff";S[S.StylisticAltNineteenOn=38]="StylisticAltNineteenOn";S[S.StylisticAltNineteenOff=39]="StylisticAltNineteenOff";S[S.StylisticAltTwentyOn=40]="StylisticAltTwentyOn";S[S.StylisticAltTwentyOff=41]="StylisticAltTwentyOff"})(p5||={});var o5;((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"})(o5||={});var c5;((J)=>{J[J.DefaultLowerCase=0]="DefaultLowerCase";J[J.LowerCaseSmallCaps=1]="LowerCaseSmallCaps";J[J.LowerCasePetiteCaps=2]="LowerCasePetiteCaps"})(c5||={});var s5;((J)=>{J[J.DefaultUpperCase=0]="DefaultUpperCase";J[J.UpperCaseSmallCaps=1]="UpperCaseSmallCaps";J[J.UpperCasePetiteCaps=2]="UpperCasePetiteCaps"})(s5||={});var a5;((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"})(a5||={});var r5;((J)=>{J[J.ShowDiacritics=0]="ShowDiacritics";J[J.HideDiacritics=1]="HideDiacritics";J[J.DecomposeDiacritics=2]="DecomposeDiacritics"})(r5||={});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 e5;((Z)=>{Z[Z.Exclusive=32768]="Exclusive";Z[Z.UseDefault=16384]="UseDefault"})(e5||={});function j9($){let Q=$.offset,Z=$.fixed(),J=$.uint16();$.skip(2),$.skip(4);let K=[];for(let q=0;q<J;q++){let W=$.uint16(),U=$.uint16(),H=$.offset32(),_=$.uint16(),N=_&255,j=$.uint16(),X=[],V=$.offset;$.seek(Q+H);for(let w=0;w<U;w++)X.push({settingValue:$.uint16(),nameId:$.uint16()});$.seek(V),K.push({featureType:W,nSettings:U,settingTableOffset:H,featureFlags:_,defaultSettingIndex:N,nameId:j,settings:X})}return{version:Z,features:K}}function s4($,Q){return $.features.find((Z)=>Z.featureType===Q)}function a4($){return $.features}function r4($){return($.featureFlags&32768)!==0}function t4($){return $.settings[$.defaultSettingIndex]}function e4($,Q){return $.settings.find((Z)=>Z.settingValue===Q)}function $q($,Q){return $.settings.some((Z)=>Z.settingValue===Q)}function Qq($,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 Zq($){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 $7($){let Q=$.uint16(),Z=$.uint16(),J=[];for(let K=0;K<Z;K++){let q=$.uint16(),W=$.uint16();J.push({maxPPEM:q,behavior:W})}return J.sort((K,q)=>K.maxPPEM-q.maxPPEM),{version:Q,ranges:J}}class Q7{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 Z7{ranges;constructor($){this.ranges=$}get($){let Q=0,Z=this.ranges.length-1;while(Q<=Z){let J=Q+Z>>>1,K=this.ranges[J];if(!K)continue;if($>K.endGlyphId)Q=J+1;else if($<K.startGlyphId)Z=J-1;else return K.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 J7{get($){return 0}glyphsInClass($){return[]}}var Jq=new J7;function Kq($){let Q=$.uint16();if(Q===1){let Z=$.uint16(),J=$.uint16(),K=$.uint16Array(J);return new Q7(Z,K)}if(Q===2){let Z=$.uint16(),J=Array(Z);for(let K=0;K<Z;K++)J[K]={startGlyphId:$.uint16(),endGlyphId:$.uint16(),classValue:$.uint16()};return new Z7(J)}throw Error(`Unknown ClassDef format: ${Q}`)}function V1($,Q){if(Q===0)return Jq;return Kq($.sliceFrom(Q))}function K7($){let Q=$.uint16(),Z=$.uint16(),J=$.offset16(),K=$.offset16(),q=$.offset16(),W=$.offset16(),U=0;if(Q===1&&Z>=2)U=$.offset16();let H=V1($,J),_=null;if(K!==0)_=qq($.sliceFrom(K));let N=null;if(q!==0)N=Wq($.sliceFrom(q));let j=V1($,W),X=null;if(U!==0)X=Uq($.sliceFrom(U));return{version:{major:Q,minor:Z},glyphClassDef:H,attachList:_,ligCaretList:N,markAttachClassDef:j,markGlyphSets:X}}function qq($){let Q=$.offset16(),Z=$.uint16(),J=$.uint16Array(Z),K=$.sliceFrom(Q),q=K.uint16(),W=[];if(q===1){let H=K.uint16();for(let _=0;_<H;_++)W.push(K.uint16())}else if(q===2){let H=K.uint16();for(let _=0;_<H;_++){let N=K.uint16(),j=K.uint16();K.skip(2);for(let X=N;X<=j;X++)W.push(X)}}let U=new Map;for(let[H,_]of J.entries()){let N=W[H];if(N===void 0)continue;let j=$.sliceFrom(_),X=j.uint16(),V=Array.from(j.uint16Array(X));U.set(N,{pointIndices:V})}return U}function Wq($){let Q=$.offset16(),Z=$.uint16(),J=$.uint16Array(Z),K=$.sliceFrom(Q),q=K.uint16(),W=[];if(q===1){let H=K.uint16();for(let _=0;_<H;_++)W.push(K.uint16())}else if(q===2){let H=K.uint16();for(let _=0;_<H;_++){let N=K.uint16(),j=K.uint16();K.skip(2);for(let X=N;X<=j;X++)W.push(X)}}let U=new Map;for(let[H,_]of J.entries()){let N=W[H];if(N===void 0)continue;let j=$.sliceFrom(_),X=j.uint16(),V=j.uint16Array(X),w=[];for(let G of V){let Y=$.sliceFrom(_+G),z=Y.uint16();if(z===1)w.push(Y.int16());else if(z===2)w.push(Y.uint16());else if(z===3)w.push(Y.int16())}U.set(N,{caretValues:w})}return U}function Uq($){let Q=$.uint16(),Z=$.uint16(),J=$.uint32Array(Z),K=[];for(let q of J){let W=$.sliceFrom(q),U=W.uint16(),H=new Set;if(U===1){let _=W.uint16();for(let N=0;N<_;N++)H.add(W.uint16())}else if(U===2){let _=W.uint16();for(let N=0;N<_;N++){let j=W.uint16(),X=W.uint16();W.skip(2);for(let V=j;V<=X;V++)H.add(V)}}K.push(H)}return{has(q,W){let U=K[q];return U?U.has(W):!1}}}function B1($,Q){if(!$)return 0;return $.glyphClassDef.get(Q)}function U7($,Q){let Z=$.uint16(),J=$.uint16(),K=$.uint16(),q=$.uint16(),W=$.offset32(),U=$.uint16(),H=$.uint16(),_=$.offset32(),N=H&1?4:2,j=[];for(let w=0;w<=U;w++){let G=N===4?$.uint32():$.uint16()*2;j.push(G)}let X=[];if(q>0){let w=$.sliceFrom(W);for(let G=0;G<q;G++){let Y=[];for(let z=0;z<K;z++)Y.push(w.f2dot14());X.push(Y)}}let V=[];for(let w=0;w<U;w++){let G=j[w],Y=j[w+1];if(G===void 0||Y===void 0){V.push({tupleVariationHeaders:[]});continue}let z=_+G,E=_+Y;if(z===E){V.push({tupleVariationHeaders:[]});continue}let A=$.sliceFrom(z),L=Hq(A,E-z,K,X);V.push(L)}return{majorVersion:Z,minorVersion:J,axisCount:K,sharedTupleCount:q,sharedTuples:X,glyphVariationData:V}}function Hq($,Q,Z,J){if(Q===0)return{tupleVariationHeaders:[]};let K=$.offset,q=$.uint16(),W=$.offset16(),U=q&4095,H=(q&32768)!==0,_=[];for(let V=0;V<U;V++){let w=$.uint16(),G=$.uint16(),Y=null,z=null,E=null;if(G&32768){Y=[];for(let A=0;A<Z;A++)Y.push($.f2dot14())}else{let A=G&4095;Y=J[A]||null}if(G&16384){z=[],E=[];for(let A=0;A<Z;A++)z.push($.f2dot14());for(let A=0;A<Z;A++)E.push($.f2dot14())}_.push({variationDataSize:w,tupleIndex:G,peakTuple:Y,intermediateStartTuple:z,intermediateEndTuple:E})}let N=$.sliceFrom(K+W),j=null;if(H)j=q7(N);let X=[];for(let V of _){let w=(V.tupleIndex&8192)!==0,G;if(w)G=q7(N);else G=j;let Y=G?G.length:0,z=Y>0?W7(N,Y):[],E=Y>0?W7(N,Y):[],A=[];for(let[L,O]of z.entries()){let D=E[L];A.push({x:O??0,y:D??0})}X.push({variationDataSize:V.variationDataSize,tupleIndex:V.tupleIndex,peakTuple:V.peakTuple,intermediateStartTuple:V.intermediateStartTuple,intermediateEndTuple:V.intermediateEndTuple,serializedData:new Uint8Array(0),pointNumbers:G,deltas:A})}return{tupleVariationHeaders:X}}function q7($){let Q=$.uint8(),Z=Q===0?0:Q&128?(Q&127)<<8|$.uint8():Q;if(Z===0)return[];let J=[],K=0;while(J.length<Z){let q=$.uint8(),W=(q&127)+1,U=(q&128)!==0;for(let H=0;H<W&&J.length<Z;H++){let _=U?$.uint16():$.uint8();K+=_,J.push(K)}}return J}function W7($,Q){let Z=[];while(Z.length<Q){let J=$.uint8(),K=(J&63)+1,q=(J&128)!==0,W=(J&64)!==0;for(let U=0;U<K&&Z.length<Q;U++)if(q)Z.push(0);else if(W)Z.push($.int16());else Z.push($.int8())}return Z}function U8($,Q,Z,J){let K=1;for(let[q,W]of $.entries()){let U=Q[q]??0;if(W===0||U===0){if(W!==0)K=0;continue}if(Z&&J){let H=Z[q],_=J[q];if(H===void 0||_===void 0)continue;if(U<H||U>_){K=0;break}if(U<W)K*=(U-H)/(W-H);else if(U>W)K*=(_-U)/(_-W)}else{if(W>0&&U<0||W<0&&U>0){K=0;break}if(Math.abs(U)<Math.abs(W))K*=U/W}}return K}function _q($,Q,Z,J){let K=$.glyphVariationData[Q];if(!K)return{x:0,y:0};let q=0,W=0;for(let U of K.tupleVariationHeaders){if(!U.peakTuple)continue;let H=U8(U.peakTuple,J,U.intermediateStartTuple,U.intermediateEndTuple);if(H===0)continue;if(U.pointNumbers!==null){let _=U.pointNumbers.indexOf(Z);if(_<0)continue;let N=U.deltas[_];if(N)q+=N.x*H,W+=N.y*H}else{let _=U.deltas[Z];if(_)q+=_.x*H,W+=_.y*H}}return{x:Math.round(q),y:Math.round(W)}}function H7($,Q,Z){let J=Z===0,K=[],q=Q+1;if(J)for(let W=0;W<q;W++)K.push($.uint16()*2);else for(let W=0;W<q;W++)K.push($.uint32());return{offsets:K,isShort:J}}function H8($,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 K=J-Z;if(K===0)return null;return{offset:Z,length:K}}function Nq($,Q){return H8($,Q)!==null}var s1={OnCurve:1,XShortVector:2,YShortVector:4,Repeat:8,XIsSameOrPositive:16,YIsSameOrPositive:32,OverlapSimple:64},P1={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 _7($){return{reader:$}}function J6($,Q,Z){let J=H8(Q,Z);if(!J)return{type:"empty"};let K=$.reader.slice(J.offset,J.length);return jq(K)}function jq($){let Q=$.int16(),Z=$.int16(),J=$.int16(),K=$.int16(),q=$.int16();if(Q>=0)return Xq($,Q,Z,J,K,q);else return Vq($,Q,Z,J,K,q)}function Xq($,Q,Z,J,K,q){if(Q===0)return{type:"simple",numberOfContours:Q,xMin:Z,yMin:J,xMax:K,yMax:q,contours:[],instructions:new Uint8Array(0)};let W=[];for(let E=0;E<Q;E++)W.push($.uint16());let U=W[Q-1];if(U===void 0)return{type:"simple",numberOfContours:Q,xMin:Z,yMin:J,xMax:K,yMax:q,contours:[],instructions:new Uint8Array(0)};let H=U+1,_=$.uint16(),N=$.bytes(_),j=[];while(j.length<H){let E=$.uint8();if(j.push(E),E&s1.Repeat){let A=$.uint8();for(let L=0;L<A;L++)j.push(E)}}let X=[],V=0;for(let[E,A]of j.entries()){if(A&s1.XShortVector){let L=$.uint8();V+=A&s1.XIsSameOrPositive?L:-L}else if(!(A&s1.XIsSameOrPositive))V+=$.int16();X.push(V)}let w=[],G=0;for(let[E,A]of j.entries()){if(A&s1.YShortVector){let L=$.uint8();G+=A&s1.YIsSameOrPositive?L:-L}else if(!(A&s1.YIsSameOrPositive))G+=$.int16();w.push(G)}let Y=[],z=0;for(let E of W){let A=[];while(z<=E){let L=X[z],O=w[z],D=j[z];if(L===void 0||O===void 0||D===void 0)break;A.push({x:L,y:O,onCurve:(D&s1.OnCurve)!==0}),z++}Y.push(A)}return{type:"simple",numberOfContours:Q,xMin:Z,yMin:J,xMax:K,yMax:q,contours:Y,instructions:N}}function Vq($,Q,Z,J,K,q){let W=[],U;do{U=$.uint16();let _=$.uint16(),N,j;if(U&P1.Arg1And2AreWords)if(U&P1.ArgsAreXYValues)N=$.int16(),j=$.int16();else N=$.uint16(),j=$.uint16();else if(U&P1.ArgsAreXYValues)N=$.int8(),j=$.int8();else N=$.uint8(),j=$.uint8();let X=1,V=0,w=0,G=1;if(U&P1.WeHaveAScale)X=G=$.f2dot14();else if(U&P1.WeHaveAnXAndYScale)X=$.f2dot14(),G=$.f2dot14();else if(U&P1.WeHaveATwoByTwo)X=$.f2dot14(),V=$.f2dot14(),w=$.f2dot14(),G=$.f2dot14();W.push({glyphId:_,flags:U,arg1:N,arg2:j,transform:[X,V,w,G]})}while(U&P1.MoreComponents);let H=new Uint8Array(0);if(U&P1.WeHaveInstructions){let _=$.uint16();H=$.bytes(_)}return{type:"composite",numberOfContours:Q,xMin:Z,yMin:J,xMax:K,yMax:q,components:W,instructions:H}}function N7($,Q,Z,J=0){if(J>32)return[];let K=[];for(let q of Z.components){let W=J6($,Q,q.glyphId),U;if(W.type==="simple")U=W.contours;else if(W.type==="composite")U=N7($,Q,W,J+1);else continue;let[H,_,N,j]=q.transform,X=q.flags&P1.ArgsAreXYValues?q.arg1:0,V=q.flags&P1.ArgsAreXYValues?q.arg2:0;for(let w of U){let G=w.map((Y)=>({x:Math.round(H*Y.x+N*Y.y+X),y:Math.round(_*Y.x+j*Y.y+V),onCurve:Y.onCurve}));K.push(G)}}return K}function j7($,Q,Z){let J=J6($,Q,Z);if(J.type==="empty")return[];else if(J.type==="simple")return J.contours;else return N7($,Q,J)}function X7($,Q,Z){let J=J6($,Q,Z);if(J.type==="empty")return null;return{xMin:J.xMin,yMin:J.yMin,xMax:J.xMax,yMax:J.yMax}}function V7($,Q,Z,J){let K=$.glyphVariationData[Q];if(!K)return Array(Z).fill({x:0,y:0});let q=Array(Z).fill(null).map(()=>({x:0,y:0}));for(let W of K.tupleVariationHeaders){if(!W.peakTuple)continue;let U=U8(W.peakTuple,J,W.intermediateStartTuple,W.intermediateEndTuple);if(U===0)continue;if(W.pointNumbers!==null)for(let[H,_]of W.pointNumbers.entries()){let N=q[_],j=W.deltas[H];if(_<Z&&N&&j)N.x+=j.x*U,N.y+=j.y*U}else for(let H=0;H<Math.min(W.deltas.length,Z);H++){let _=q[H],N=W.deltas[H];if(_&&N)_.x+=N.x*U,_.y+=N.y*U}}for(let W of q)W.x=Math.round(W.x),W.y=Math.round(W.y);return q}function w7($,Q){let Z=[],J=0;for(let K of $){let q=[];for(let W of K){let U=Q[J]??{x:0,y:0};q.push({x:W.x+U.x,y:W.y+U.y,onCurve:W.onCurve}),J++}Z.push(q)}return Z}function G7($,Q,Z,J,K){let q=J6($,Q,J);if(q.type==="empty")return[];let W;if(q.type==="simple")W=q.contours;else W=Y7($,Q,Z,q,K);if(Z&&K&&K.length>0){let U=0;for(let _ of W)U+=_.length;U+=4;let H=V7(Z,J,U,K);W=w7(W,H)}return W}function Y7($,Q,Z,J,K,q=0){if(q>32)return[];let W=[];for(let U of J.components){let H=J6($,Q,U.glyphId),_;if(H.type==="simple"){if(_=H.contours,Z&&K&&K.length>0){let Y=0;for(let E of _)Y+=E.length;Y+=4;let z=V7(Z,U.glyphId,Y,K);_=w7(_,z)}}else if(H.type==="composite")_=Y7($,Q,Z,H,K,q+1);else continue;let[N,j,X,V]=U.transform,w=U.flags&P1.ArgsAreXYValues?U.arg1:0,G=U.flags&P1.ArgsAreXYValues?U.arg2:0;for(let Y of _){let z=Y.map((E)=>({x:Math.round(N*E.x+X*E.y+w),y:Math.round(j*E.x+V*E.y+G),onCurve:E.onCurve}));W.push(z)}}return W}class z7{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,K=this.glyphArray[J];if(K===void 0)continue;if(K<$)Q=J+1;else if(K>$)Z=J-1;else return J}return null}covers($){return this.glyphSet.has($)}glyphs(){return Array.from(this.glyphArray)}}class E7{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,K=this.ranges[J];if(!K)continue;if($>K.endGlyphId)Q=J+1;else if($<K.startGlyphId)Z=J-1;else return K.startCoverageIndex+($-K.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 wq($){let Q=$.uint16();if(Q===1){let Z=$.uint16(),J=$.uint16Array(Z);return new z7(J)}if(Q===2){let Z=$.uint16(),J=Array(Z);for(let K=0;K<Z;K++)J[K]={startGlyphId:$.uint16(),endGlyphId:$.uint16(),startCoverageIndex:$.uint16()};return new E7(J)}throw Error(`Unknown Coverage format: ${Q}`)}function p($,Q){return wq($.sliceFrom(Q))}function A7($){return"deltaSetOuterIndex"in $}function K6($,Q){if(Q===0)return null;return Gq($.sliceFrom(Q))}function Gq($){let Q=$.uint16(),Z=$.uint16(),J=$.uint16();if(J===32768)return{deltaSetOuterIndex:Q,deltaSetInnerIndex:Z};let K=[];if(J>=1&&J<=3){let q=Z-Q+1,W=1<<J,U=16/W,H=(1<<W)-1,_=1<<W-1,N=Math.ceil(q/U),j=0;for(let X=0;X<N;X++){let V=$.uint16();for(let w=0;w<U&&j<q;w++,j++){let G=16-W*(w+1),Y=V>>G&H;if(Y&_)Y=Y-(1<<W);K.push(Y)}}}return{startSize:Q,endSize:Z,deltaFormat:J,deltaValues:K}}function F7($,Q){if(Q<$.startSize||Q>$.endSize)return 0;let Z=Q-$.startSize;return $.deltaValues[Z]??0}function Yq($,Q,Z){if(!$)return Q;if(A7($))return Q;return Q+F7($,Z)}var x1={RightToLeft:1,IgnoreBaseGlyphs:2,IgnoreLigatures:4,IgnoreMarks:8,UseMarkFilteringSet:16,MarkAttachmentTypeMask:65280};function D7($){return($&x1.MarkAttachmentTypeMask)>>8}function _8($){let Q=$.uint16(),Z=[];for(let K=0;K<Q;K++)Z.push({tag:$.tag(),offset:$.offset16()});let J=[];for(let K of Z){let q=$.sliceFrom(K.offset),W=zq(q);J.push({scriptTag:K.tag,script:W})}return{scripts:J}}function zq($){let Q=$.offset16(),Z=$.uint16(),J=[];for(let W=0;W<Z;W++)J.push({tag:$.tag(),offset:$.offset16()});let K=null;if(Q!==0)K=L7($.sliceFrom(Q));let q=[];for(let W of J){let U=L7($.sliceFrom(W.offset));q.push({langSysTag:W.tag,langSys:U})}return{defaultLangSys:K,langSysRecords:q}}function L7($){let Q=$.offset16(),Z=$.uint16(),J=$.uint16(),K=Array.from($.uint16Array(J));return{requiredFeatureIndex:Z,featureIndices:K}}function N8($){let Q=$.uint16(),Z=[];for(let K=0;K<Q;K++)Z.push({tag:$.tag(),offset:$.offset16()});let J=[];for(let K of Z){let q=$.sliceFrom(K.offset),W=Eq(q);J.push({featureTag:K.tag,feature:W})}return{features:J}}function Eq($){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 B7($,Q){if(Q===null)return $.defaultLangSys;for(let Z of $.langSysRecords)if(Z.langSysTag===Q)return Z.langSys;return $.defaultLangSys}function X9($,Q){return $.features[Q]??null}function V9($,Q){let Z=[];for(let J of Q){let K=$.sliceFrom(J);switch(K.uint16()){case 1:Z.push(Aq(K));break;case 2:Z.push(Fq(K));break;case 3:Z.push(Lq(K));break}}return Z}function Aq($){let Q=$.offset16(),Z=$.uint16(),J=$.uint16Array(Z),K=p($,Q),q=[];for(let W of J){if(W===0){q.push(null);continue}let U=$.sliceFrom(W),H=U.uint16(),_=U.uint16Array(H),N=[];for(let j of _){let X=U.sliceFrom(j),V=X.uint16(),w=X.uint16(),G=Array.from(X.uint16Array(V-1)),Y=V6(X,w);N.push({glyphCount:V,inputSequence:G,lookupRecords:Y})}q.push(N)}return{format:1,coverage:K,ruleSets:q}}function Fq($){let Q=$.offset16(),Z=$.offset16(),J=$.uint16(),K=$.uint16Array(J),q=p($,Q),W=V1($,Z),U=[];for(let H of K){if(H===0){U.push(null);continue}let _=$.sliceFrom(H),N=_.uint16(),j=_.uint16Array(N),X=[];for(let V of j){let w=_.sliceFrom(V),G=w.uint16(),Y=w.uint16(),z=Array.from(w.uint16Array(G-1)),E=V6(w,Y);X.push({glyphCount:G,inputClasses:z,lookupRecords:E})}U.push(X)}return{format:2,coverage:q,classDef:W,classRuleSets:U}}function Lq($){let Q=$.uint16(),Z=$.uint16(),J=$.uint16Array(Q),K=[];for(let W of J)K.push(p($,W));let q=V6($,Z);return{format:3,coverages:K,lookupRecords:q}}function w9($,Q){let Z=[];for(let J of Q){let K=$.sliceFrom(J);switch(K.uint16()){case 1:Z.push(Dq(K));break;case 2:Z.push(Bq(K));break;case 3:Z.push(Mq(K));break}}return Z}function Dq($){let Q=$.offset16(),Z=$.uint16(),J=$.uint16Array(Z),K=p($,Q),q=[];for(let W of J){if(W===0){q.push(null);continue}let U=$.sliceFrom(W),H=U.uint16(),_=U.uint16Array(H),N=[];for(let j of _){let X=U.sliceFrom(j),V=X.uint16(),w=Array.from(X.uint16Array(V)),G=X.uint16(),Y=Array.from(X.uint16Array(G-1)),z=X.uint16(),E=Array.from(X.uint16Array(z)),A=X.uint16(),L=V6(X,A);N.push({backtrackSequence:w,inputSequence:Y,lookaheadSequence:E,lookupRecords:L})}q.push(N)}return{format:1,coverage:K,chainRuleSets:q}}function Bq($){let Q=$.offset16(),Z=$.offset16(),J=$.offset16(),K=$.offset16(),q=$.uint16(),W=$.uint16Array(q),U=p($,Q),H=V1($,Z),_=V1($,J),N=V1($,K),j=[];for(let X of W){if(X===0){j.push(null);continue}let V=$.sliceFrom(X),w=V.uint16(),G=V.uint16Array(w),Y=[];for(let z of G){let E=V.sliceFrom(z),A=E.uint16(),L=Array.from(E.uint16Array(A)),O=E.uint16(),D=Array.from(E.uint16Array(O-1)),C=E.uint16(),P=Array.from(E.uint16Array(C)),T=E.uint16(),y=V6(E,T);Y.push({backtrackClasses:L,inputClasses:D,lookaheadClasses:P,lookupRecords:y})}j.push(Y)}return{format:2,coverage:U,backtrackClassDef:H,inputClassDef:_,lookaheadClassDef:N,chainClassRuleSets:j}}function Mq($){let Q=$.uint16(),Z=$.uint16Array(Q),J=$.uint16(),K=$.uint16Array(J),q=$.uint16(),W=$.uint16Array(q),U=$.uint16(),H=V6($,U),_=[];for(let X of Z)_.push(p($,X));let N=[];for(let X of K)N.push(p($,X));let j=[];for(let X of W)j.push(p($,X));return{format:3,backtrackCoverages:_,inputCoverages:N,lookaheadCoverages:j,lookupRecords:H}}function V6($,Q){let Z=[];for(let J=0;J<Q;J++)Z.push({sequenceIndex:$.uint16(),lookupListIndex:$.uint16()});return Z}function M7($){let Q=$.uint16(),Z=$.int16(),J=$.int16(),K={xCoordinate:Z,yCoordinate:J};if(Q===2)K.anchorPoint=$.uint16();else if(Q===3)K.xDeviceOffset=$.uint16(),K.yDeviceOffset=$.uint16();return K}function k6($,Q){if(Q===0)return null;return M7($.sliceFrom(Q))}function G9($){let Q=$.uint16(),Z=[],J=[];for(let K=0;K<Q;K++)J.push({markClass:$.uint16(),anchorOffset:$.uint16()});for(let K of J){let q=M7($.sliceFrom(K.anchorOffset));Z.push({markClass:K.markClass,markAnchor:q})}return{markRecords:Z}}function Y9($,Q){let Z=[];for(let J of Q){let K=$.sliceFrom(J);if(K.uint16()===1){let W=K.offset16(),U=K.uint16(),H=[];for(let j=0;j<U;j++)H.push({entryOffset:K.uint16(),exitOffset:K.uint16()});let _=p(K,W),N=[];for(let j of H)N.push({entryAnchor:k6(K,j.entryOffset),exitAnchor:k6(K,j.exitOffset)});Z.push({coverage:_,entryExitRecords:N})}}return Z}function z9($,Q){let Z=[];for(let J of Q){let K=$.sliceFrom(J);if(K.uint16()===1){let W=K.offset16(),U=K.offset16(),H=K.uint16(),_=K.offset16(),N=K.offset16(),j=p(K,W),X=p(K,U),V=G9(K.sliceFrom(_)),w=K.sliceFrom(N),G=w.uint16(),Y=[],z=[];for(let E=0;E<G;E++){let A=[];for(let L=0;L<H;L++)A.push(w.uint16());z.push(A)}for(let E of z){let A=[];for(let L of E)A.push(k6(w,L));Y.push({baseAnchors:A})}Z.push({markCoverage:j,baseCoverage:X,markClassCount:H,markArray:V,baseArray:Y})}}return Z}function E9($,Q){let Z=[];for(let J of Q){let K=$.sliceFrom(J);if(K.uint16()===1){let W=K.offset16(),U=K.offset16(),H=K.uint16(),_=K.offset16(),N=K.offset16(),j=p(K,W),X=p(K,U),V=G9(K.sliceFrom(_)),w=K.sliceFrom(N),G=w.uint16(),Y=w.uint16Array(G),z=[];for(let E of Y){let A=w.sliceFrom(E),L=A.uint16(),O=[],D=[];for(let C=0;C<L;C++){let P=[];for(let T=0;T<H;T++)P.push(A.uint16());D.push(P)}for(let C of D){let P=[];for(let T of C)P.push(k6(A,T));O.push({ligatureAnchors:P})}z.push({componentRecords:O})}Z.push({markCoverage:j,ligatureCoverage:X,markClassCount:H,markArray:V,ligatureArray:z})}}return Z}function A9($,Q){let Z=[];for(let J of Q){let K=$.sliceFrom(J);if(K.uint16()===1){let W=K.offset16(),U=K.offset16(),H=K.uint16(),_=K.offset16(),N=K.offset16(),j=p(K,W),X=p(K,U),V=G9(K.sliceFrom(_)),w=K.sliceFrom(N),G=w.uint16(),Y=[],z=[];for(let E=0;E<G;E++){let A=[];for(let L=0;L<H;L++)A.push(w.uint16());z.push(A)}for(let E of z){let A=[];for(let L of E)A.push(k6(w,L));Y.push({mark2Anchors:A})}Z.push({mark1Coverage:j,mark2Coverage:X,markClassCount:H,mark1Array:V,mark2Array:Y})}}return Z}var a1={XPlacement:1,YPlacement:2,XAdvance:4,YAdvance:8,XPlaDevice:16,YPlaDevice:32,XAdvDevice:64,YAdvDevice:128};function R7($){let Q=$.uint16(),Z=$.uint16(),J=$.offset16(),K=$.offset16(),q=$.offset16();if(Q===1&&Z>=1)$.offset32();let W=_8($.sliceFrom(J)),U=N8($.sliceFrom(K)),H=$.sliceFrom(q),_=H.uint16(),N=H.uint16Array(_),j=[];for(let X of N){let V=H.sliceFrom(X),w=Rq(V);if(w)j.push(w)}return{version:{major:Q,minor:Z},scriptList:W,featureList:U,lookups:j}}function Rq($){let Q=$.uint16(),Z=$.uint16(),J=$.uint16(),K=Array.from($.uint16Array(J)),q;if(Z&x1.UseMarkFilteringSet)q=$.uint16();let W={flag:Z,markFilteringSet:q};switch(Q){case 1:return{type:1,...W,subtables:T7($,K)};case 2:return{type:2,...W,subtables:P7($,K)};case 3:return{type:3,...W,subtables:Y9($,K)};case 4:return{type:4,...W,subtables:z9($,K)};case 5:return{type:5,...W,subtables:E9($,K)};case 6:return{type:6,...W,subtables:A9($,K)};case 7:return{type:7,...W,subtables:V9($,K)};case 8:return{type:8,...W,subtables:w9($,K)};case 9:return Oq($,K,W);default:return null}}function w6($,Q,Z){let J={};if(Q&a1.XPlacement)J.xPlacement=$.int16();if(Q&a1.YPlacement)J.yPlacement=$.int16();if(Q&a1.XAdvance)J.xAdvance=$.int16();if(Q&a1.YAdvance)J.yAdvance=$.int16();let K=Z??$;if(Q&a1.XPlaDevice){let q=$.uint16();if(q!==0)J.xPlaDevice=K6(K,q)??void 0}if(Q&a1.YPlaDevice){let q=$.uint16();if(q!==0)J.yPlaDevice=K6(K,q)??void 0}if(Q&a1.XAdvDevice){let q=$.uint16();if(q!==0)J.xAdvDevice=K6(K,q)??void 0}if(Q&a1.YAdvDevice){let q=$.uint16();if(q!==0)J.yAdvDevice=K6(K,q)??void 0}return J}function T7($,Q){let Z=[];for(let J of Q){let K=$.sliceFrom(J),q=$.sliceFrom(J),W=q.uint16();if(W===1){let U=q.offset16(),H=q.uint16(),_=w6(q,H,K),N=p(K,U);Z.push({format:1,coverage:N,valueFormat:H,value:_})}else if(W===2){let U=q.offset16(),H=q.uint16(),_=q.uint16(),N=[];for(let X=0;X<_;X++)N.push(w6(q,H,K));let j=p(K,U);Z.push({format:2,coverage:j,valueFormat:H,values:N})}}return Z}function P7($,Q){let Z=[];for(let J of Q){let K=$.sliceFrom(J),q=$.sliceFrom(J),W=q.uint16();if(W===1)Z.push(Tq(q,K));else if(W===2)Z.push(Pq(q,K))}return Z}function Tq($,Q){let Z=$.offset16(),J=$.uint16(),K=$.uint16(),q=$.uint16(),W=$.uint16Array(q),U=p(Q,Z),H=[];for(let _ of W){let N=Q.sliceFrom(_),j=Q.sliceFrom(_),X=j.uint16(),V=[];for(let w=0;w<X;w++){let G=j.uint16(),Y=w6(j,J,N),z=w6(j,K,N);V.push({secondGlyph:G,value1:Y,value2:z})}H.push({pairValueRecords:V})}return{format:1,coverage:U,valueFormat1:J,valueFormat2:K,pairSets:H}}function Pq($,Q){let Z=$.offset16(),J=$.uint16(),K=$.uint16(),q=$.offset16(),W=$.offset16(),U=$.uint16(),H=$.uint16(),_=p(Q,Z),N=V1(Q,q),j=V1(Q,W),X=[];for(let V=0;V<U;V++){let w=[];for(let G=0;G<H;G++){let Y=w6($,J,Q),z=w6($,K,Q);w.push({value1:Y,value2:z})}X.push({class2Records:w})}return{format:2,coverage:_,valueFormat1:J,valueFormat2:K,classDef1:N,classDef2:j,class1Count:U,class2Count:H,class1Records:X}}function Oq($,Q,Z){if(Q.length===0)return null;let J=[];for(let q of Q){let W=$.sliceFrom(q);if(W.uint16()!==1)continue;let H=W.uint16(),_=W.uint32();J.push({type:H,reader:W.sliceFrom(_)})}if(J.length===0)return null;switch(J[0]?.type){case 1:{let q=[];for(let W of J)q.push(...T7(W.reader,[0]));return{type:1,...Z,subtables:q}}case 2:{let q=[];for(let W of J)q.push(...P7(W.reader,[0]));return{type:2,...Z,subtables:q}}case 3:{let q=[];for(let W of J)q.push(...Y9(W.reader,[0]));return{type:3,...Z,subtables:q}}case 4:{let q=[];for(let W of J)q.push(...z9(W.reader,[0]));return{type:4,...Z,subtables:q}}case 5:{let q=[];for(let W of J)q.push(...E9(W.reader,[0]));return{type:5,...Z,subtables:q}}case 6:{let q=[];for(let W of J)q.push(...A9(W.reader,[0]));return{type:6,...Z,subtables:q}}case 7:{let q=[];for(let W of J)q.push(...V9(W.reader,[0]));return{type:7,...Z,subtables:q}}case 8:{let q=[];for(let W of J)q.push(...w9(W.reader,[0]));return{type:8,...Z,subtables:q}}default:return null}}function O7($,Q,Z){for(let J of $.subtables){let K=J.coverage.get(Q);if(K===null)continue;if(J.format===1){let q=J.pairSets[K];if(!q)continue;for(let W of q.pairValueRecords)if(W.secondGlyph===Z)return{xAdvance1:W.value1.xAdvance??0,xAdvance2:W.value2.xAdvance??0}}else if(J.format===2){let q=J.classDef1.get(Q),W=J.classDef2.get(Z),U=J.class1Records[q];if(!U)continue;let H=U.class2Records[W];if(!H)continue;return{xAdvance1:H.value1.xAdvance??0,xAdvance2:H.value2.xAdvance??0}}}return null}function F9($,Q){let Z=[];for(let J of Q){let K=$.sliceFrom(J);switch(K.uint16()){case 1:Z.push(Iq(K));break;case 2:Z.push(vq(K));break;case 3:Z.push(kq(K));break}}return Z}function Iq($){let Q=$.offset16(),Z=$.uint16(),J=$.uint16Array(Z),K=p($,Q),q=[];for(let W of J){if(W===0){q.push(null);continue}let U=$.sliceFrom(W),H=U.uint16(),_=U.uint16Array(H),N=[];for(let j of _){let X=U.sliceFrom(j),V=X.uint16(),w=X.uint16(),G=Array.from(X.uint16Array(V-1)),Y=G6(X,w);N.push({glyphCount:V,inputSequence:G,lookupRecords:Y})}q.push(N)}return{format:1,coverage:K,ruleSets:q}}function vq($){let Q=$.offset16(),Z=$.offset16(),J=$.uint16(),K=$.uint16Array(J),q=p($,Q),W=V1($,Z),U=[];for(let H of K){if(H===0){U.push(null);continue}let _=$.sliceFrom(H),N=_.uint16(),j=_.uint16Array(N),X=[];for(let V of j){let w=_.sliceFrom(V),G=w.uint16(),Y=w.uint16(),z=Array.from(w.uint16Array(G-1)),E=G6(w,Y);X.push({glyphCount:G,inputClasses:z,lookupRecords:E})}U.push(X)}return{format:2,coverage:q,classDef:W,classRuleSets:U}}function kq($){let Q=$.uint16(),Z=$.uint16(),J=$.uint16Array(Q),K=[];for(let W of J)K.push(p($,W));let q=G6($,Z);return{format:3,coverages:K,lookupRecords:q}}function L9($,Q){let Z=[];for(let J of Q){let K=$.sliceFrom(J);switch(K.uint16()){case 1:Z.push(Cq(K));break;case 2:Z.push(Sq(K));break;case 3:Z.push(hq(K));break}}return Z}function Cq($){let Q=$.offset16(),Z=$.uint16(),J=$.uint16Array(Z),K=p($,Q),q=[];for(let W of J){if(W===0){q.push(null);continue}let U=$.sliceFrom(W),H=U.uint16(),_=U.uint16Array(H),N=[];for(let j of _){let X=U.sliceFrom(j),V=X.uint16(),w=Array.from(X.uint16Array(V)),G=X.uint16(),Y=Array.from(X.uint16Array(G-1)),z=X.uint16(),E=Array.from(X.uint16Array(z)),A=X.uint16(),L=G6(X,A);N.push({backtrackSequence:w,inputSequence:Y,lookaheadSequence:E,lookupRecords:L})}q.push(N)}return{format:1,coverage:K,chainRuleSets:q}}function Sq($){let Q=$.offset16(),Z=$.offset16(),J=$.offset16(),K=$.offset16(),q=$.uint16(),W=$.uint16Array(q),U=p($,Q),H=V1($,Z),_=V1($,J),N=V1($,K),j=[];for(let X of W){if(X===0){j.push(null);continue}let V=$.sliceFrom(X),w=V.uint16(),G=V.uint16Array(w),Y=[];for(let z of G){let E=V.sliceFrom(z),A=E.uint16(),L=Array.from(E.uint16Array(A)),O=E.uint16(),D=Array.from(E.uint16Array(O-1)),C=E.uint16(),P=Array.from(E.uint16Array(C)),T=E.uint16(),y=G6(E,T);Y.push({backtrackClasses:L,inputClasses:D,lookaheadClasses:P,lookupRecords:y})}j.push(Y)}return{format:2,coverage:U,backtrackClassDef:H,inputClassDef:_,lookaheadClassDef:N,chainClassRuleSets:j}}function hq($){let Q=$.uint16(),Z=$.uint16Array(Q),J=$.uint16(),K=$.uint16Array(J),q=$.uint16(),W=$.uint16Array(q),U=$.uint16(),H=G6($,U),_=[];for(let X of Z)_.push(p($,X));let N=[];for(let X of K)N.push(p($,X));let j=[];for(let X of W)j.push(p($,X));return{format:3,backtrackCoverages:_,inputCoverages:N,lookaheadCoverages:j,lookupRecords:H}}function G6($,Q){let Z=[];for(let J=0;J<Q;J++)Z.push({sequenceIndex:$.uint16(),lookupListIndex:$.uint16()});return Z}function I7($){let Q=$.uint16(),Z=$.uint16(),J=$.offset16(),K=$.offset16(),q=$.offset16();if(Q===1&&Z>=1)$.offset32();let W=_8($.sliceFrom(J)),U=N8($.sliceFrom(K)),H=$.sliceFrom(q),_=H.uint16(),N=H.uint16Array(_),j=[];for(let X of N){let V=H.sliceFrom(X),w=yq(V,H,X);if(w)j.push(w)}return{version:{major:Q,minor:Z},scriptList:W,featureList:U,lookups:j}}function yq($,Q,Z){let J=$.uint16(),K=$.uint16(),q=$.uint16(),W=Array.from($.uint16Array(q)),U;if(K&x1.UseMarkFilteringSet)U=$.uint16();let H={flag:K,markFilteringSet:U};switch(J){case 1:return{type:1,...H,subtables:v7($,W)};case 2:return{type:2,...H,subtables:k7($,W)};case 3:return{type:3,...H,subtables:C7($,W)};case 4:return{type:4,...H,subtables:S7($,W)};case 5:return{type:5,...H,subtables:F9($,W)};case 6:return{type:6,...H,subtables:L9($,W)};case 7:return bq($,W,H);case 8:return{type:8,...H,subtables:h7($,W)};default:return null}}function v7($,Q){let Z=[];for(let J of Q){let K=$.sliceFrom(J),q=K.uint16();if(q===1){let W=K.offset16(),U=K.int16(),H=p(K,W);Z.push({format:1,coverage:H,deltaGlyphId:U})}else if(q===2){let W=K.offset16(),U=K.uint16(),H=Array.from(K.uint16Array(U)),_=p(K,W);Z.push({format:2,coverage:_,substituteGlyphIds:H})}}return Z}function k7($,Q){let Z=[];for(let J of Q){let K=$.sliceFrom(J);if(K.uint16()===1){let W=K.offset16(),U=K.uint16(),H=K.uint16Array(U),_=p(K,W),N=[];for(let j of H){let X=K.sliceFrom(j),V=X.uint16();N.push(Array.from(X.uint16Array(V)))}Z.push({coverage:_,sequences:N})}}return Z}function C7($,Q){let Z=[];for(let J of Q){let K=$.sliceFrom(J);if(K.uint16()===1){let W=K.offset16(),U=K.uint16(),H=K.uint16Array(U),_=p(K,W),N=[];for(let j of H){let X=K.sliceFrom(j),V=X.uint16();N.push(Array.from(X.uint16Array(V)))}Z.push({coverage:_,alternateSets:N})}}return Z}function S7($,Q){let Z=[];for(let J of Q){let K=$.sliceFrom(J);if(K.uint16()===1){let W=K.offset16(),U=K.uint16(),H=K.uint16Array(U),_=p(K,W),N=[];for(let j of H){let X=K.sliceFrom(j),V=X.uint16(),w=X.uint16Array(V),G=[];for(let Y of w){let z=X.sliceFrom(Y),E=z.uint16(),A=z.uint16(),L=Array.from(z.uint16Array(A-1));G.push({ligatureGlyph:E,componentGlyphIds:L})}N.push({ligatures:G})}Z.push({coverage:_,ligatureSets:N})}}return Z}function h7($,Q){let Z=[];for(let J of Q){let K=$.sliceFrom(J);if(K.uint16()===1){let W=K.offset16(),U=K.uint16(),H=K.uint16Array(U),_=K.uint16(),N=K.uint16Array(_),j=K.uint16(),X=Array.from(K.uint16Array(j)),V=p(K,W),w=[];for(let Y of H)w.push(p(K,Y));let G=[];for(let Y of N)G.push(p(K,Y));Z.push({coverage:V,backtrackCoverages:w,lookaheadCoverages:G,substituteGlyphIds:X})}}return Z}function bq($,Q,Z){if(Q.length===0)return null;let J=[];for(let W of Q){let U=$.sliceFrom(W);if(U.uint16()!==1)continue;let _=U.uint16(),N=U.uint32();J.push({type:_,reader:U.sliceFrom(N)})}if(J.length===0)return null;let K=J[0]?.type,q=J.map((W,U)=>0);switch(K){case 1:{let W=[];for(let U of J)W.push(...v7(U.reader,[0]));return{type:1,...Z,subtables:W}}case 2:{let W=[];for(let U of J)W.push(...k7(U.reader,[0]));return{type:2,...Z,subtables:W}}case 3:{let W=[];for(let U of J)W.push(...C7(U.reader,[0]));return{type:3,...Z,subtables:W}}case 4:{let W=[];for(let U of J)W.push(...S7(U.reader,[0]));return{type:4,...Z,subtables:W}}case 5:{let W=[];for(let U of J)W.push(...F9(U.reader,[0]));return{type:5,...Z,subtables:W}}case 6:{let W=[];for(let U of J)W.push(...L9(U.reader,[0]));return{type:6,...Z,subtables:W}}case 8:{let W=[];for(let U of J)W.push(...h7(U.reader,[0]));return{type:8,...Z,subtables:W}}default:return null}}function D9($,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 y7($,Q,Z){let J=Q[Z];if(J===void 0)return null;for(let K of $.subtables){let q=K.coverage.get(J);if(q===null)continue;let W=K.ligatureSets[q];if(!W)continue;for(let U of W.ligatures){let H=U.componentGlyphIds.length;if(Z+1+H>Q.length)continue;let _=!0;for(let N=0;N<H;N++)if(Q[Z+1+N]!==U.componentGlyphIds[N]){_=!1;break}if(_)return{ligatureGlyph:U.ligatureGlyph,consumed:1+H}}}return null}function b7($){let Q=$.uint16(),Z=$.uint16(),J=$.fixed(),K=$.uint32(),q=$.uint32();if(q!==1594834165)throw Error(`Invalid head table magic number: 0x${q.toString(16)}`);let W=$.uint16(),U=$.uint16(),H=$.longDateTime(),_=$.longDateTime(),N=$.fword(),j=$.fword(),X=$.fword(),V=$.fword(),w=$.uint16(),G=$.uint16(),Y=$.int16(),z=$.int16(),E=$.int16();return{majorVersion:Q,minorVersion:Z,fontRevision:J,checksumAdjustment:K,magicNumber:q,flags:W,unitsPerEm:U,created:H,modified:_,xMin:N,yMin:j,xMax:X,yMax:V,macStyle:w,lowestRecPPEM:G,fontDirectionHint:Y,indexToLocFormat:z,glyphDataFormat:E}}function m7($){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 g7($){return{instructions:$.bytes($.remaining)}}function u7($){return{instructions:$.bytes($.remaining)}}function x7($){let Q=Math.floor($.remaining/2),Z=new Int16Array(Q);for(let J=0;J<Q;J++)Z[J]=$.int16();return{values:Z}}function f7($,Q,Z){let J=Array(Q);for(let W=0;W<Q;W++)J[W]={advanceWidth:$.ufword(),lsb:$.fword()};let K=Z-Q,q=Array(K);for(let W=0;W<K;W++)q[W]=$.fword();return{hMetrics:J,leftSideBearings:q}}function l7($,Q){if(Q<$.hMetrics.length)return $.hMetrics[Q]?.advanceWidth;return $.hMetrics[$.hMetrics.length-1]?.advanceWidth}function n7($,Q){if(Q<$.hMetrics.length)return $.hMetrics[Q]?.lsb;let Z=Q-$.hMetrics.length;return $.leftSideBearings[Z]??0}function r1($,Q){if(Q===0)return null;let Z=$.sliceFrom(Q),J=Z.uint16(),K=[];for(let q=0;q<J;q++)K.push(Z.uint16());return{lookupIndices:K}}function d7($,Q){if(Q===0)return null;let Z=$.sliceFrom(Q),J=Z.uint16(),K=[];for(let q=0;q<J;q++)K.push(Z.uint16());return{lookupIndices:K}}function mq($,Q){let Z=$.sliceFrom(Q),J=Z.uint16(),K=Z.uint16(),q=Z.uint16(),W=Z.uint16(),U=Z.uint16(),H=Z.uint16(),_=Z.uint16(),N=Z.uint16(),j=Z.uint16(),X=Z.uint16();return{shrinkageEnableGsub:r1($,Q+J),shrinkageDisableGsub:r1($,Q+K),shrinkageEnableGpos:r1($,Q+q),shrinkageDisableGpos:r1($,Q+W),shrinkageJstfMax:d7($,Q+U),extensionEnableGsub:r1($,Q+H),extensionDisableGsub:r1($,Q+_),extensionEnableGpos:r1($,Q+N),extensionDisableGpos:r1($,Q+j),extensionJstfMax:d7($,Q+X)}}function i7($,Q){let Z=$.sliceFrom(Q),J=Z.uint16(),K=[];for(let W=0;W<J;W++)K.push(Z.uint16());let q=[];for(let W of K)q.push(mq($,Q+W));return{priorities:q}}function gq($,Q){let Z=$.sliceFrom(Q),J=Z.uint16(),K=Z.uint16(),q=Z.uint16(),W=[];for(let N=0;N<q;N++){let j=Z.uint32(),X=Z.uint16();W.push({tag:j,offset:X})}let U=[];if(J!==0){let N=$.sliceFrom(Q+J),j=N.uint16();for(let X=0;X<j;X++)U.push(N.uint16())}let H=K!==0?i7($,Q+K):null,_=new Map;for(let{tag:N,offset:j}of W)_.set(N,i7($,Q+j));return{extenderGlyphs:U,defaultLangSys:H,langSysRecords:_}}function p7($){let Q=$.uint16(),Z=$.uint16(),J=$.uint16(),K=[];for(let W=0;W<J;W++){let U=$.uint32(),H=$.uint16();K.push({tag:U,offset:H})}let q=[];for(let{tag:W,offset:U}of K){let H=gq($,U);q.push({scriptTag:W,...H})}return{majorVersion:Q,minorVersion:Z,scripts:q}}function o7($,Q){return $.scripts.find((J)=>J.scriptTag===Q)?.extenderGlyphs??[]}function c7($,Q,Z){let J=$.scripts.find((K)=>K.scriptTag===Q);if(!J)return[];if(Z!==void 0){let K=J.langSysRecords.get(Z);if(K)return K.priorities}return J.defaultLangSys?.priorities??[]}function s7($){return{enableGsub:$.shrinkageEnableGsub?.lookupIndices??[],disableGsub:$.shrinkageDisableGsub?.lookupIndices??[],enableGpos:$.shrinkageEnableGpos?.lookupIndices??[],disableGpos:$.shrinkageDisableGpos?.lookupIndices??[],maxLookups:$.shrinkageJstfMax?.lookupIndices??[]}}function a7($){return{enableGsub:$.extensionEnableGsub?.lookupIndices??[],disableGsub:$.extensionDisableGsub?.lookupIndices??[],enableGpos:$.extensionEnableGpos?.lookupIndices??[],disableGpos:$.extensionDisableGpos?.lookupIndices??[],maxLookups:$.extensionJstfMax?.lookupIndices??[]}}function r7($){let Q=$.uint16(),Z=[];if(Q===0){let J=$.uint16();for(let K=0;K<J;K++){let q=uq($);if(q)Z.push(q)}}else if(Q===1){$.skip(2);let J=$.uint32();for(let K=0;K<J;K++){let q=xq($);if(q)Z.push(q)}}return{version:Q,subtables:Z}}function uq($){let Q=$.uint16(),Z=$.uint16(),J=$.uint16(),K={horizontal:(J&1)!==0,minimum:(J&2)!==0,crossStream:(J&4)!==0,override:(J&8)!==0},q=J>>8&255;if(q===0)return t7($,K);else if(q===2)return e7($,K,Z-6);return $.skip(Z-6),null}function xq($){let Q=$.uint32(),Z=$.uint16(),J=$.uint16(),K={horizontal:(Z&32768)===0,minimum:!1,crossStream:(Z&16384)!==0,override:(Z&8192)!==0},q=Z&255;if(q===0)return t7($,K);else if(q===2)return e7($,K,Q-8);return $.skip(Q-8),null}function t7($,Q){let Z=$.uint16();$.skip(6);let J=new Map;for(let K=0;K<Z;K++){let q=$.uint16(),W=$.uint16(),U=$.int16(),H=q<<16|W;J.set(H,U)}return{format:0,coverage:Q,pairs:J}}function e7($,Q,Z){let J=$.offset,K=$.uint16(),q=$.uint16(),W=$.uint16(),U=$.uint16(),H=new Map;$.seek(J+q);let _=$.uint16(),N=$.uint16();for(let z=0;z<N;z++){let E=$.uint16();if(E!==0)H.set(_+z,E)}let j=new Map;$.seek(J+W);let X=$.uint16(),V=$.uint16();for(let z=0;z<V;z++){let E=$.uint16();if(E!==0)j.set(X+z,E)}$.seek(J+U);let w=K>0?Math.floor(Z/K):0,G=K/2,Y=[];for(let z=0;z<w;z++){let E=[];for(let A=0;A<G;A++)E.push($.int16());Y.push(E)}return{format:2,coverage:Q,rowWidth:K,leftClassTable:H,rightClassTable:j,kerningValues:Y}}function B9($,Q,Z){let J=0;for(let K of $.subtables){if(!K.coverage.horizontal)continue;if(K.format===0){let q=Q<<16|Z,W=K.pairs.get(q);if(W!==void 0)if(K.coverage.override)J=W;else J+=W}else if(K.format===2){let q=K.leftClassTable.get(Q)??0,W=K.rightClassTable.get(Z)??0;if(q>0&&W>0){let U=Math.floor(q/2),H=Math.floor(W/2),_=K.kerningValues[U];if(_){let N=_[H];if(N!==void 0)if(K.coverage.override)J=N;else J+=N}}}}return J}function Q$($){let Q=$.uint16();$.skip(2);let Z=$.uint32(),J=[];for(let K=0;K<Z;K++){let q=fq($);if(q)J.push(q)}return{version:Q,nTables:Z,subtables:J}}function fq($){let Q=$.uint32(),Z=$.uint32(),J=$.uint16();$.skip(2);let K=Z&255,q={vertical:(Z&2147483648)!==0,crossStream:(Z&1073741824)!==0,variation:(Z&536870912)!==0},W={length:Q,coverage:q,tupleCount:J},U=$.offset+Q-12,H=null;switch(K){case 0:H=lq($,W);break;case 1:H=nq($,W);break;case 2:H=dq($,W);break;case 6:H=iq($,W);break}return $.seek(U),H}function lq($,Q){let Z=$.uint32();$.skip(12);let J=[];for(let K=0;K<Z;K++)J.push({left:$.uint16(),right:$.uint16(),value:$.int16()}),$.skip(2);return{...Q,format:0,nPairs:Z,pairs:J}}function nq($,Q){let Z={nClasses:$.uint32(),classTableOffset:$.offset32(),stateArrayOffset:$.offset32(),entryTableOffset:$.offset32(),valueTableOffset:$.offset32()};return{...Q,format:1,stateHeader:Z}}function dq($,Q){let Z=$.uint16();$.skip(2);let J=$.offset32(),K=$.offset32(),q=$.offset32(),W=$$($.sliceFrom(J)),U=$$($.sliceFrom(K)),H=$.sliceFrom(q),_=W.nGlyphs>0?Math.max(...Array.from(W.classes))+1:0,N=Z/2,j=new Int16Array(_*N);for(let[X,V]of j.entries())j[X]=H.int16();return{...Q,format:2,rowWidth:Z,leftClassTable:W,rightClassTable:U,kerningArray:j}}function $$($){let Q=$.uint16(),Z=$.uint16(),J=new Uint8Array(Z);for(let K=0;K<Z;K++)J[K]=$.uint8();return{firstGlyph:Q,nGlyphs:Z,classes:J}}function iq($,Q){let Z=$.uint32(),J=$.uint16(),K=$.uint16(),q=$.offset32(),W=$.offset32(),U=$.offset32(),H=$.offset32();return{...Q,format:6,flags:Z,rowCount:J,columnCount:K,rowIndexTableOffset:q,columnIndexTableOffset:W,kerningArrayOffset:U,kerningVectorOffset:H}}function pq($,Q,Z){for(let J of $.subtables){if(J.coverage.vertical)continue;switch(J.format){case 0:{let K=J.pairs,q=0,W=K.length-1;while(q<=W){let U=q+W>>1,H=K[U];if(!H)break;let _=H.left<<16|H.right,N=Q<<16|Z;if(_===N)return H.value;else if(_<N)q=U+1;else W=U-1}break}case 2:{let{leftClassTable:K,rightClassTable:q}=J;if(Q<K.firstGlyph||Q>=K.firstGlyph+K.nGlyphs)continue;if(Z<q.firstGlyph||Z>=q.firstGlyph+q.nGlyphs)continue;let W=K.classes[Q-K.firstGlyph],U=q.classes[Z-q.firstGlyph];if(W===void 0||U===void 0)continue;let H=J.rowWidth/2,_=W*H+U;if(_<J.kerningArray.length){let N=J.kerningArray[_];if(N!==void 0&&N!==0)return N}break}}}return 0}function l($,Q){let Z=$.int16(),J=$.uint16();return{value:Z,device:K6(Q,J)}}function oq($){let Q=$,Z=$.int16(),J=$.int16(),K=$.uint16(),q=$.uint16();return{scriptPercentScaleDown:Z,scriptScriptPercentScaleDown:J,delimitedSubFormulaMinHeight:K,displayOperatorMinHeight:q,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 cq($){let Q=$.uint16(),Z=$.uint16(),J=[];for(let q=0;q<Z;q++)J.push(l($,$));return{coverage:p($,Q),values:J}}function sq($){let Q=$.uint16(),Z=$.uint16(),J=[];for(let q=0;q<Z;q++)J.push(l($,$));return{coverage:p($,Q),values:J}}function X8($,Q){let Z=$.sliceFrom(Q),J=Z.uint16(),K=[];for(let W=0;W<J;W++)K.push(l(Z,Z));let q=[];for(let W=0;W<J+1;W++)q.push(l(Z,Z));return{correctionHeights:K,kernValues:q}}function aq($){let Q=$.uint16(),Z=$.uint16(),J=[];for(let W=0;W<Z;W++)J.push({topRightOffset:$.uint16(),topLeftOffset:$.uint16(),bottomRightOffset:$.uint16(),bottomLeftOffset:$.uint16()});let K=p($,Q),q=J.map((W)=>({topRight:W.topRightOffset!==0?X8($,W.topRightOffset):null,topLeft:W.topLeftOffset!==0?X8($,W.topLeftOffset):null,bottomRight:W.bottomRightOffset!==0?X8($,W.bottomRightOffset):null,bottomLeft:W.bottomLeftOffset!==0?X8($,W.bottomLeftOffset):null}));return{coverage:K,kernInfo:q}}function rq($){let Q=$.uint16(),Z=$.uint16(),J=$.uint16(),K=$.uint16(),q=null;if(Q!==0)q=cq($.sliceFrom(Q));let W=null;if(Z!==0)W=sq($.sliceFrom(Z));let U=null;if(J!==0)U={coverage:p($,J)};let H=null;if(K!==0)H=aq($.sliceFrom(K));return{italicsCorrection:q,topAccentAttachment:W,extendedShapeCoverage:U,kernInfo:H}}function tq($){let Q=l($,$),Z=$.uint16(),J=[];for(let K=0;K<Z;K++)J.push({glyphId:$.uint16(),startConnectorLength:$.uint16(),endConnectorLength:$.uint16(),fullAdvance:$.uint16(),partFlags:$.uint16()});return{italicsCorrection:Q,parts:J}}function Z$($){let Q=$.uint16(),Z=$.uint16(),J=[];for(let q=0;q<Z;q++)J.push({variantGlyph:$.uint16(),advanceMeasurement:$.uint16()});let K=null;if(Q!==0)K=tq($.sliceFrom(Q));return{glyphAssembly:K,variants:J}}function eq($){let Q=$.uint16(),Z=$.uint16(),J=$.uint16(),K=$.uint16(),q=$.uint16(),W=[];for(let X=0;X<K;X++)W.push($.uint16());let U=[];for(let X=0;X<q;X++)U.push($.uint16());let H=Z!==0?p($,Z):null,_=J!==0?p($,J):null,N=W.map((X)=>Z$($.sliceFrom(X))),j=U.map((X)=>Z$($.sliceFrom(X)));return{minConnectorOverlap:Q,vertGlyphCoverage:H,horizGlyphCoverage:_,vertGlyphConstruction:N,horizGlyphConstruction:j}}function J$($){let Q=$.uint16(),Z=$.uint16(),J=$.uint16(),K=$.uint16(),q=$.uint16(),W=null;if(J!==0)W=oq($.sliceFrom(J));let U=null;if(K!==0)U=rq($.sliceFrom(K));let H=null;if(q!==0)H=eq($.sliceFrom(q));return{majorVersion:Q,minorVersion:Z,constants:W,glyphInfo:U,variants:H}}function K$($){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 M9;((q)=>{q[q.Rearrangement=0]="Rearrangement";q[q.Contextual=1]="Contextual";q[q.Ligature=2]="Ligature";q[q.NonContextual=4]="NonContextual";q[q.Insertion=5]="Insertion"})(M9||={});function q$($){let Q=$.uint16();if($.skip(2),Q<2)return{version:Q,chains:[]};let Z=$.uint32(),J=[];for(let K=0;K<Z;K++){let q=$W($);J.push(q)}return{version:Q,chains:J}}function $W($){let Q=$.uint32(),Z=$.uint32(),J=$.uint32(),K=$.uint32(),q=[];for(let U=0;U<J;U++)q.push({featureType:$.uint16(),featureSetting:$.uint16(),enableFlags:$.uint32(),disableFlags:$.uint32()});let W=[];for(let U=0;U<K;U++){let H=QW($);if(H)W.push(H)}return{defaultFlags:Q,features:q,subtables:W}}function QW($){let Q=$.uint32(),Z=$.uint32(),J=$.uint32(),K=Z&255,q={vertical:(Z&2147483648)!==0,descending:(Z&1073741824)!==0,logical:(Z&268435456)!==0},U=$.offset+Q-12,H=null;switch(K){case 0:H=qW($,q,J);break;case 1:H=JW($,q,J);break;case 2:H=KW($,q,J);break;case 4:H=ZW($,q,J);break;case 5:H=WW($,q,J);break}return $.seek(U),H}function ZW($,Q,Z){let J=UW($);return{type:4,coverage:Q,subFeatureFlags:Z,lookupTable:J}}function JW($,Q,Z){let J=$.offset,K=$.uint32(),q=$.offset32(),W=$.offset32(),U=$.offset32(),H=$.offset32(),_=V8($.sliceFrom(J+q));return{type:1,coverage:Q,subFeatureFlags:Z,stateTable:{nClasses:K,classTable:_,stateArray:[]},substitutionTable:[]}}function KW($,Q,Z){let J=$.offset,K=$.uint32(),q=$.offset32(),W=$.offset32(),U=$.offset32(),H=$.offset32(),_=$.offset32(),N=$.offset32(),j=V8($.sliceFrom(J+q));return{type:2,coverage:Q,subFeatureFlags:Z,stateTable:{nClasses:K,classTable:j,stateArray:[]},ligatureActions:[],components:[],ligatures:[]}}function qW($,Q,Z){let J=$.offset,K=$.uint32(),q=$.offset32(),W=$.offset32(),U=$.offset32(),H=V8($.sliceFrom(J+q)),_=$.sliceFrom(J+W),N=$.sliceFrom(J+U),j=[],X=256;for(let G=0;G<256;G++)j.push({newState:N.uint16(),flags:N.uint16()});let V=[],w=Math.min(256,Math.ceil((U-W)/(K*2)));for(let G=0;G<w;G++){let Y=[];for(let z=0;z<K;z++){let E=_.uint16();Y.push(j[E]??{newState:0,flags:0})}V.push(Y)}return{type:0,coverage:Q,subFeatureFlags:Z,stateTable:{nClasses:K,classTable:H,stateArray:V}}}function WW($,Q,Z){let J=$.offset,K=$.uint32(),q=$.offset32(),W=$.offset32(),U=$.offset32(),H=$.offset32(),_=V8($.sliceFrom(J+q)),N=$.sliceFrom(J+H),j=[],X=1024;for(let A=0;A<1024;A++)try{j.push(N.uint16())}catch{break}let V=$.sliceFrom(J+U),w=[],G=256;for(let A=0;A<G;A++)w.push({newState:V.uint16(),flags:V.uint16(),currentInsertIndex:V.uint16(),markedInsertIndex:V.uint16()});let Y=$.sliceFrom(J+W),z=[],E=Math.min(256,Math.ceil((U-W)/(K*2)));for(let A=0;A<E;A++){let L=[];for(let O=0;O<K;O++){let D=Y.uint16();L.push(w[D]??{newState:0,flags:0,currentInsertIndex:65535,markedInsertIndex:65535})}z.push(L)}return{type:5,coverage:Q,subFeatureFlags:Z,stateTable:{nClasses:K,classTable:_,stateArray:z},insertionGlyphs:j}}function UW($){let Q=$.uint16(),Z=new Map;switch(Q){case 0:break;case 2:{let J=$.uint16(),K=$.uint16();$.skip(6);for(let q=0;q<K;q++){let W=$.uint16(),U=$.uint16(),H=$.uint16();for(let _=U;_<=W;_++)Z.set(_,H)}break}case 4:{let J=$.uint16(),K=$.uint16();$.skip(6);for(let q=0;q<K;q++){let W=$.uint16(),U=$.uint16(),H=$.uint16()}break}case 6:{let J=$.uint16(),K=$.uint16();$.skip(6);for(let q=0;q<K;q++){let W=$.uint16(),U=$.uint16();Z.set(W,U)}break}case 8:{let J=$.uint16(),K=$.uint16();for(let q=0;q<K;q++){let W=$.uint16();if(W!==0)Z.set(J+q,W)}break}}return{format:Q,mapping:Z}}function V8($){let Q=$.uint16(),Z=[];if(Q===2){let J=$.uint16(),K=$.uint16();$.skip(6);let q=[];for(let U=0;U<K;U++)q.push({last:$.uint16(),first:$.uint16(),classValue:$.uint16()});let W=Math.max(...q.map((U)=>U.last),0);for(let U=0;U<=W;U++){let H=q.find((_)=>U>=_.first&&U<=_.last);Z[U]=H?.classValue??1}}return{format:Q,classArray:Z}}function R9($,Q){return $.lookupTable.mapping.get(Q)??null}var C6={hasc:R("hasc"),hdsc:R("hdsc"),hlgp:R("hlgp"),hcla:R("hcla"),hcld:R("hcld"),hcof:R("hcof"),hcrn:R("hcrn"),hcrs:R("hcrs"),vasc:R("vasc"),vdsc:R("vdsc"),vlgp:R("vlgp"),vcof:R("vcof"),vcrn:R("vcrn"),vcrs:R("vcrs"),xhgt:R("xhgt"),cpht:R("cpht"),sbxs:R("sbxs"),sbys:R("sbys"),sbxo:R("sbxo"),sbyo:R("sbyo"),spxs:R("spxs"),spys:R("spys"),spxo:R("spxo"),spyo:R("spyo"),strs:R("strs"),stro:R("stro"),undo:R("undo"),unds:R("unds"),gsp0:R("gsp0"),gsp1:R("gsp1"),gsp2:R("gsp2"),gsp3:R("gsp3")};function W$($){let Q=$.uint16(),Z=$.uint16();$.uint16();let J=$.uint16(),K=$.uint16(),q=$.offset16(),W=[];for(let H=0;H<K;H++)if(W.push({valueTag:$.tag(),deltaSetOuterIndex:$.uint16(),deltaSetInnerIndex:$.uint16()}),J>8)$.skip(J-8);let U=HW($.sliceFrom(q));return{majorVersion:Q,minorVersion:Z,itemVariationStore:U,valueRecords:W}}function HW($){let Q=$.uint16(),Z=$.offset32(),J=$.uint16(),K=[];for(let N=0;N<J;N++)K.push($.offset32());let q=$.sliceFrom(Z),W=q.uint16(),U=q.uint16(),H=[];for(let N=0;N<U;N++){let j=[];for(let X=0;X<W;X++)j.push({startCoord:q.f2dot14(),peakCoord:q.f2dot14(),endCoord:q.f2dot14()});H.push({regionAxes:j})}let _=[];for(let N of K){let j=$.sliceFrom(N),X=j.uint16(),V=j.uint16(),w=j.uint16(),G=[];for(let L=0;L<w;L++)G.push(j.uint16());let Y=(V&32768)!==0,z=V&32767,E=w-z,A=[];for(let L=0;L<X;L++){let O=[];for(let D=0;D<z;D++)if(Y)O.push(j.int32());else O.push(j.int16());for(let D=0;D<E;D++)if(Y)O.push(j.int16());else O.push(j.int8());A.push(O)}_.push({itemCount:X,regionIndexes:G,deltaSets:A})}return{format:Q,variationRegions:H,itemVariationData:_}}function S6($,Q,Z){let J=$.valueRecords.find((_)=>_.valueTag===Q);if(!J)return 0;let{deltaSetOuterIndex:K,deltaSetInnerIndex:q}=J,W=$.itemVariationStore.itemVariationData[K];if(!W||q>=W.itemCount)return 0;let U=W.deltaSets[q];if(!U)return 0;let H=0;for(let[_,N]of W.regionIndexes.entries()){let j=$.itemVariationStore.variationRegions[N];if(!j)continue;let X=O6(j,Z),V=U[_]??0;H+=X*V}return Math.round(H)}function _W($,Q){return S6($,C6.hasc,Q)}function NW($,Q){return S6($,C6.hdsc,Q)}function jW($,Q){return S6($,C6.xhgt,Q)}function XW($,Q){return S6($,C6.cpht,Q)}var T9={Unicode:0,Macintosh:1,Reserved:2,Windows:3};function U$($){let Q=$.uint16(),Z=$.uint16(),J=$.uint16(),K=[],q=[];for(let W=0;W<Z;W++)q.push({platformId:$.uint16(),encodingId:$.uint16(),languageId:$.uint16(),nameId:$.uint16(),length:$.uint16(),offset:$.uint16()});for(let W of q){let U=$.sliceFrom(J+W.offset),H=VW(U,W.length,W.platformId,W.encodingId);if(H!==null)K.push({platformId:W.platformId,encodingId:W.encodingId,languageId:W.languageId,nameId:W.nameId,value:H})}return{format:Q,records:K}}function VW($,Q,Z,J){if(Z===T9.Unicode||Z===T9.Windows&&(J===1||J===10)){let K=[];for(let q=0;q<Q;q+=2){let W=$.uint16();K.push(String.fromCharCode(W))}return K.join("")}if(Z===T9.Macintosh&&J===0){let K=[];for(let q=0;q<Q;q++)K.push($.uint8());return String.fromCharCode(...K)}return null}function H$($){let Q=$.uint16(),Z=$.int16(),J=$.uint16(),K=$.uint16(),q=$.uint16(),W=$.int16(),U=$.int16(),H=$.int16(),_=$.int16(),N=$.int16(),j=$.int16(),X=$.int16(),V=$.int16(),w=$.int16(),G=$.int16(),Y=$.int16(),z=[];for(let M=0;M<10;M++)z.push($.uint8());let E=$.uint32(),A=$.uint32(),L=$.uint32(),O=$.uint32(),D=String.fromCharCode($.uint8(),$.uint8(),$.uint8(),$.uint8()),C=$.uint16(),P=$.uint16(),T=$.uint16(),y=$.int16(),u=$.int16(),I=$.int16(),o=$.uint16(),g=$.uint16(),x={version:Q,xAvgCharWidth:Z,usWeightClass:J,usWidthClass:K,fsType:q,ySubscriptXSize:W,ySubscriptYSize:U,ySubscriptXOffset:H,ySubscriptYOffset:_,ySuperscriptXSize:N,ySuperscriptYSize:j,ySuperscriptXOffset:X,ySuperscriptYOffset:V,yStrikeoutSize:w,yStrikeoutPosition:G,sFamilyClass:Y,panose:z,ulUnicodeRange1:E,ulUnicodeRange2:A,ulUnicodeRange3:L,ulUnicodeRange4:O,achVendID:D,fsSelection:C,usFirstCharIndex:P,usLastCharIndex:T,sTypoAscender:y,sTypoDescender:u,sTypoLineGap:I,usWinAscent:o,usWinDescent:g};if(Q>=1)x.ulCodePageRange1=$.uint32(),x.ulCodePageRange2=$.uint32();if(Q>=2)x.sxHeight=$.int16(),x.sCapHeight=$.int16(),x.usDefaultChar=$.uint16(),x.usBreakChar=$.uint16(),x.usMaxContext=$.uint16();if(Q>=5)x.usLowerOpticalPointSize=$.uint16(),x.usUpperOpticalPointSize=$.uint16();return x}function _$($){let Q=$.uint16(),Z=$.uint16(),J=Q+Z/65536,K=$.fixed(),q=$.int16(),W=$.int16(),U=$.uint32(),H=$.uint32(),_=$.uint32(),N=$.uint32(),j=$.uint32(),X={version:J,italicAngle:K,underlinePosition:q,underlineThickness:W,isFixedPitch:U,minMemType42:H,maxMemType42:_,minMemType1:N,maxMemType1:j};if(J===2){let V=$.uint16(),w=[];for(let E=0;E<V;E++)w.push($.uint16());let G=[],Y=0;for(let E of w)if(E>=258&&E>Y)Y=E;let z=Y>=258?Y-257:0;for(let E=0;E<z;E++){let A=$.uint8(),L=[];for(let O=0;O<A;O++)L.push(String.fromCharCode($.uint8()));G.push(L.join(""))}X.numberOfGlyphs=V,X.glyphNameIndex=w,X.names=G}return X}var P9={PNG:"png ",JPG:"jpg ",TIFF:"tiff",PDF:"pdf ",MASK:"mask",DUPE:"dupe"};function N$($,Q){let Z=$.offset,J=$.uint16(),K=$.uint16(),q=$.uint32(),W=[];for(let H=0;H<q;H++)W.push($.uint32());let U=[];for(let H of W){let _=wW($,Z+H,Q);U.push(_)}return{version:J,flags:K,strikes:U}}function wW($,Q,Z){let J=$.sliceFrom(Q),K=J.uint16(),q=J.uint16(),W=[];for(let H=0;H<=Z;H++)W.push(J.uint32());let U=new Map;for(let H=0;H<Z;H++){let _=W[H],N=W[H+1];if(_===void 0||N===void 0)continue;let j=N-_;if(j<=8)continue;let X=$.sliceFrom(Q+_),V=X.int16(),w=X.int16(),G=X.tagString(),Y=j-8,z=X.bytes(Y);U.set(H,{originOffsetX:V,originOffsetY:w,graphicType:G,data:z})}return{ppem:K,ppi:q,glyphData:U}}function GW($,Q,Z){let J=null,K=1/0;for(let q of $.strikes){let W=Math.abs(q.ppem-Z);if(W<K)K=W,J=q}if(!J)return null;return J.glyphData.get(Q)??null}function j$($,Q){return $.strikes.find((Z)=>Z.ppem===Q)??null}function YW($){return $.strikes.map((Q)=>Q.ppem).sort((Q,Z)=>Q-Z)}function zW($,Q,Z){if(Z!==void 0)return j$($,Z)?.glyphData.has(Q)??!1;for(let J of $.strikes)if(J.glyphData.has(Q))return!0;return!1}function X$($,Q,Z){if(Z.graphicType!==P9.DUPE)return Z;if(Z.data.length<2)return null;let J=(Z.data[0]??0)<<8|(Z.data[1]??0),K=Q.glyphData.get(J);if(!K)return null;if(K.graphicType===P9.DUPE)return X$($,Q,K);return K}function V$($){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(),K=$.uint16(),q=$.uint16(),W=new Map;for(let U=0;U<Z;U++){let H=$.tag(),_=$.uint32(),N=$.uint32(),j=$.uint32();W.set(H,{tag:H,checksum:_,offset:N,length:j})}return{sfntVersion:Q,numTables:Z,searchRange:J,entrySelector:K,rangeShift:q,tables:W}}function w$($){return $.sfntVersion===65536||$.sfntVersion===1953658213}var O9={OlderSiblingFontAttribute:1,ElidableAxisValueName:2};function G$($){let Q=$.offset,Z=$.uint16(),J=$.uint16(),K=$.uint16(),q=$.uint16(),W=$.offset32(),U=$.uint16(),H=$.offset32(),_;if(Z>=1&&J>=1)_=$.uint16();let N=[];if(W!==0){let X=$.sliceFrom(Q+W);for(let V=0;V<q;V++)if(N.push({axisTag:X.tag(),axisNameID:X.uint16(),axisOrdering:X.uint16()}),K>8)X.skip(K-8)}let j=[];if(H!==0&&U>0){let X=$.sliceFrom(Q+H),V=[];for(let w=0;w<U;w++)V.push(X.uint16());for(let w of V){let G=$.sliceFrom(Q+H+w),Y=EW(G);if(Y)j.push(Y)}}return{majorVersion:Z,minorVersion:J,designAxisCount:q,designAxes:N,axisValueCount:U,axisValues:j,elidedFallbackNameID:_}}function EW($){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(),K=$.uint16(),q=[];for(let W=0;W<Z;W++)q.push({axisIndex:$.uint16(),value:$.fixed()});return{format:4,axisCount:Z,flags:J,valueNameID:K,axisValues:q}}default:return null}}function AW($,Q){return $.designAxes.find((Z)=>Z.axisTag===Q)??null}function FW($,Q){return $.designAxes.findIndex((Z)=>Z.axisTag===Q)}function LW($,Q){return $.axisValues.filter((Z)=>{if(Z.format===4)return Z.axisValues.some((J)=>J.axisIndex===Q);return Z.axisIndex===Q})}function DW($,Q){return $.axisValues.find((Z)=>Z.valueNameID===Q)??null}function BW($){return($.flags&O9.ElidableAxisValueName)!==0}function MW($){return($.flags&O9.OlderSiblingFontAttribute)!==0}function RW($){switch($.format){case 1:case 3:return $.value;case 2:return $.nominalValue;case 4:return null}}function TW($,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 Y$($){let Q=$.uint16(),Z=$.offset32();$.skip(4);let J=$.sliceFrom(Z),K=J.uint16(),q=[];for(let H=0;H<K;H++)q.push({startGlyphID:J.uint16(),endGlyphID:J.uint16(),svgDocOffset:J.offset32(),svgDocLength:J.uint32()});let W=[],U=new TextDecoder("utf-8");for(let H of q){let N=J.sliceFrom(H.svgDocOffset).bytes(H.svgDocLength),j;if(N[0]===31&&N[1]===139)try{let X=IW(N);j=U.decode(X)}catch{j=U.decode(N)}else j=U.decode(N);W.push({startGlyphID:H.startGlyphID,endGlyphID:H.endGlyphID,svgDoc:j})}return{version:Q,documentRecords:W}}function z$($,Q){for(let Z of $.documentRecords)if(Q>=Z.startGlyphID&&Q<=Z.endGlyphID)return Z.svgDoc;return null}function PW($,Q){return z$($,Q)!==null}function OW($){let Q=[];for(let Z of $.documentRecords)for(let J=Z.startGlyphID;J<=Z.endGlyphID;J++)Q.push(J);return Q}function IW($){if(typeof DecompressionStream<"u")return $;return $}function A$($){let Q=$,Z=$.uint32()/65536,J=$.uint16(),K=$.offset16(),q=$.offset16();$.skip(2);let W=null,U=null;if(K!==0)W=E$($.sliceFrom(K),Q);if(q!==0)U=E$($.sliceFrom(q),Q);return{version:Z,format:J,horizData:W,vertData:U}}function E$($,Q){let Z=$.uint16(),J=$.uint16(),K=$.offset32(),q=[];for(let H=0;H<Z;H++){let _=$.int32()/65536,N=$.uint16(),j=$.uint16();q.push({track:_,nameIndex:N,offset:j,perSizeTracking:[]})}for(let H of q){let _=Q.sliceFrom(H.offset);H.perSizeTracking=[];for(let N=0;N<J;N++)H.perSizeTracking.push(_.int16())}let W=Q.sliceFrom(K),U=[];for(let H=0;H<J;H++)U.push(W.int32()/65536);return{nTracks:Z,nSizes:J,sizeTableOffset:K,trackTable:q,sizeTable:U}}function F$($,Q,Z){let J=null;for(let K of $.trackTable)if(K.track===Q){J=K;break}if(!J){let K=null,q=null;for(let W of $.trackTable){if(W.track<=Q&&(!K||W.track>K.track))K=W;if(W.track>=Q&&(!q||W.track<q.track))q=W}if(K&&q&&K!==q){let W=(Q-K.track)/(q.track-K.track),U=I9($,K,Z),H=I9($,q,Z);return Math.round(U+W*(H-U))}else if(K)J=K;else if(q)J=q;else return 0}if(!J)return 0;return I9($,J,Z)}function I9($,Q,Z){let J=$.sizeTable,K=Q.perSizeTracking;if(J.length===0||K.length===0)return 0;let q=J[0],W=K[0];if(q===void 0||W===void 0)return 0;if(Z<=q)return W;let U=J[J.length-1],H=K[K.length-1];if(U===void 0||H===void 0)return 0;if(Z>=U)return H;for(let _=0;_<J.length-1;_++){let N=J[_],j=J[_+1],X=K[_],V=K[_+1];if(N===void 0||j===void 0||X===void 0||V===void 0)continue;if(Z>=N&&Z<=j){let w=(Z-N)/(j-N);return Math.round(X+w*(V-X))}}return 0}function vW($,Q,Z,J=0,K=!1){let q=K?$.vertData:$.horizData;if(!q)return;let W=F$(q,J,Z);if(W===0)return;for(let[U,H]of Q.entries())Q[U]=(H??0)+W}function L$($){let Q=$.uint16(),Z=$.uint16(),J=$.fword(),K=$.fword(),q=$.fword(),W=$.uint16(),U=$.fword(),H=$.fword(),_=$.fword(),N=$.int16(),j=$.int16(),X=$.int16();$.skip(8);let V=$.int16(),w=$.uint16();return{version:{major:Q,minor:Z},ascender:J,descender:K,lineGap:q,advanceHeightMax:W,minTopSideBearing:U,minBottomSideBearing:H,yMaxExtent:_,caretSlopeRise:N,caretSlopeRun:j,caretOffset:X,metricDataFormat:V,numberOfVMetrics:w}}function D$($,Q,Z){let J=[];for(let W=0;W<Q;W++)J.push({advanceHeight:$.uint16(),topSideBearing:$.int16()});let K=[],q=Z-Q;for(let W=0;W<q;W++)K.push($.int16());return{vMetrics:J,topSideBearings:K}}function kW($,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,K=Q-$.vMetrics.length,q=$.topSideBearings[K]??0;return{advanceHeight:J,topSideBearing:q}}function B$($){let Q=$.uint16(),Z=$.uint16(),J=$.int16(),K=$.uint16(),q=[];for(let W=0;W<K;W++)q.push({glyphIndex:$.uint16(),vertOriginY:$.int16()});return q.sort((W,U)=>W.glyphIndex-U.glyphIndex),{majorVersion:Q,minorVersion:Z,defaultVertOriginY:J,vertOriginYMetrics:q}}function CW($,Q){let Z=$.vertOriginYMetrics,J=0,K=Z.length-1;while(J<=K){let q=J+K>>>1,W=Z[q];if(W===void 0)break;if(W.glyphIndex===Q)return W.vertOriginY;else if(W.glyphIndex<Q)J=q+1;else K=q-1}return $.defaultVertOriginY}function SW($,Q){let Z=$.vertOriginYMetrics,J=0,K=Z.length-1;while(J<=K){let q=J+K>>>1,W=Z[q];if(W===void 0)break;if(W.glyphIndex===Q)return!0;else if(W.glyphIndex<Q)J=q+1;else K=q-1}return!1}function M$($){let Q=$.uint16(),Z=$.uint16(),J=$.offset32(),K=$.offset32(),q=$.offset32(),W=$.offset32(),U=$.offset32(),H=hW($.sliceFrom(J)),_=K!==0?w8($.sliceFrom(K)):null,N=q!==0?w8($.sliceFrom(q)):null,j=W!==0?w8($.sliceFrom(W)):null,X=U!==0?w8($.sliceFrom(U)):null;return{majorVersion:Q,minorVersion:Z,itemVariationStore:H,advanceHeightMapping:_,tsbMapping:N,bsbMapping:j,vOrgMapping:X}}function hW($){let Q=$.uint16(),Z=$.offset32(),J=$.uint16(),K=[];for(let N=0;N<J;N++)K.push($.offset32());let q=$.sliceFrom(Z),W=q.uint16(),U=q.uint16(),H=[];for(let N=0;N<U;N++){let j=[];for(let X=0;X<W;X++)j.push({startCoord:q.f2dot14(),peakCoord:q.f2dot14(),endCoord:q.f2dot14()});H.push({regionAxes:j})}let _=[];for(let N of K){let j=$.sliceFrom(N),X=j.uint16(),V=j.uint16(),w=j.uint16(),G=[];for(let L=0;L<w;L++)G.push(j.uint16());let Y=(V&32768)!==0,z=V&32767,E=w-z,A=[];for(let L=0;L<X;L++){let O=[];for(let D=0;D<z;D++)if(Y)O.push(j.int32());else O.push(j.int16());for(let D=0;D<E;D++)if(Y)O.push(j.int16());else O.push(j.int8());A.push(O)}_.push({itemCount:X,regionIndexes:G,deltaSets:A})}return{format:Q,variationRegions:H,itemVariationData:_}}function w8($){let Q=$.uint8(),Z=$.uint8(),J=Q===0?$.uint16():$.uint32(),K=(Z&15)+1,q=(Z>>4&3)+1,W=[];for(let U=0;U<J;U++){let H=0;for(let j=0;j<q;j++)H=H<<8|$.uint8();let _=H&(1<<K)-1,N=H>>K;W.push({outer:N,inner:_})}return{format:Q,mapCount:J,entryFormat:Z,innerIndexBitCount:K,mapData:W}}function yW($,Q,Z){let J=$.advanceHeightMapping,K,q;if(J&&Q<J.mapData.length){let W=J.mapData[Q];if(!W)return 0;K=W.outer,q=W.inner}else K=0,q=Q;return G8($.itemVariationStore,K,q,Z)}function bW($,Q,Z){let J=$.tsbMapping;if(!J)return 0;if(Q>=J.mapData.length)return 0;let K=J.mapData[Q];if(!K)return 0;return G8($.itemVariationStore,K.outer,K.inner,Z)}function mW($,Q,Z){let J=$.bsbMapping;if(!J)return 0;if(Q>=J.mapData.length)return 0;let K=J.mapData[Q];if(!K)return 0;return G8($.itemVariationStore,K.outer,K.inner,Z)}function gW($,Q,Z){let J=$.vOrgMapping;if(!J)return 0;if(Q>=J.mapData.length)return 0;let K=J.mapData[Q];if(!K)return 0;return G8($.itemVariationStore,K.outer,K.inner,Z)}function G8($,Q,Z,J){let K=$.itemVariationData[Q];if(!K||Z>=K.itemCount)return 0;let q=K.deltaSets[Z];if(!q)return 0;let W=0;for(let[U,H]of K.regionIndexes.entries()){let _=$.variationRegions[H];if(!_)continue;let N=O6(_,J),j=q[U]??0;W+=N*j}return Math.round(W)}var uW=2001684038,xW=2001684018;function R$($){return new DataView($).getUint32(0,!1)===xW}function T$($){return new DataView($).getUint32(0,!1)===uW}class Y6{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 C1($),this.directory=V$(this.reader)}static load($,Q){if(R$($))throw Error("WOFF2 requires async loading. Use Font.loadAsync() instead.");if(T$($))throw Error("WOFF format is not supported. Please use TTF, OTF, or WOFF2.");return new Y6($,Q)}static async loadAsync($,Q){if(R$($))$=await z5($);else if(T$($))throw Error("WOFF format is not supported. Please use TTF, OTF, or WOFF2.");return new Y6($,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 Y6.loadAsync(J,Q)}static async fromFile($,Q){let J=await Bun.file($).arrayBuffer();return Y6.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=b7($)}return this._head}get maxp(){if(!this._maxp){let $=this.getTableReader(f.maxp);if(!$)throw Error("Missing required 'maxp' table");this._maxp=K$($)}return this._maxp}get hhea(){if(!this._hhea){let $=this.getTableReader(f.hhea);if(!$)throw Error("Missing required 'hhea' table");this._hhea=m7($)}return this._hhea}get hmtx(){if(!this._hmtx){let $=this.getTableReader(f.hmtx);if(!$)throw Error("Missing required 'hmtx' table");this._hmtx=f7($,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=k5(Q,$.length)}return this._cmap}get gdef(){if(this._gdef===void 0){let $=this.getTableReader(f.GDEF);this._gdef=$?K7($):null}return this._gdef}get gsub(){if(this._gsub===void 0){let $=this.getTableReader(f.GSUB);this._gsub=$?I7($):null}return this._gsub}get gpos(){if(this._gpos===void 0){let $=this.getTableReader(f.GPOS);this._gpos=$?R7($):null}return this._gpos}get kern(){if(this._kern===void 0){let $=this.getTableReader(f.kern);this._kern=$?r7($):null}return this._kern}get fvar(){if(this._fvar===void 0){let $=this.getTableReader(f.fvar);this._fvar=$?p0($):null}return this._fvar}get hvar(){if(this._hvar===void 0){let $=this.getTableReader(f.HVAR);this._hvar=$?o0($):null}return this._hvar}get vhea(){if(this._vhea===void 0){let $=this.getTableReader(f.vhea);this._vhea=$?L$($):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?D$(Q,$.numberOfVMetrics,this.numGlyphs):null}}return this._vmtx}get morx(){if(this._morx===void 0){let $=this.getTableReader(f.morx);this._morx=$?q$($):null}return this._morx}get gvar(){if(this._gvar===void 0){let $=this.getTableReader(f.gvar);this._gvar=$?U7($,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?d0(Q,$.axes.length):null}}return this._avar}get kerx(){if(this._kerx===void 0){let $=this.getTableReader(f.kerx);this._kerx=$?Q$($):null}return this._kerx}get trak(){if(this._trak===void 0){let $=this.getTableReader(f.trak);this._trak=$?A$($):null}return this._trak}get cff(){if(this._cff===void 0){let $=this.getTableReader(f.CFF);this._cff=$?T5($):null}return this._cff}get cff2(){if(this._cff2===void 0){let $=this.getTableReader(f.CFF2);this._cff2=$?v5($):null}return this._cff2}get colr(){if(this._colr===void 0){let $=this.getTableReader(f.COLR);this._colr=$?_9($):null}return this._colr}get cpal(){if(this._cpal===void 0){let $=this.getTableReader(f.CPAL);this._cpal=$?N9($):null}return this._cpal}get vvar(){if(this._vvar===void 0){let $=this.getTableReader(f.VVAR);this._vvar=$?M$($):null}return this._vvar}get mvar(){if(this._mvar===void 0){let $=this.getTableReader(f.MVAR);this._mvar=$?W$($):null}return this._mvar}get os2(){if(this._os2===void 0){let $=this.getTableReader(f.OS2);this._os2=$?H$($):null}return this._os2}get name(){if(this._name===void 0){let $=this.getTableReader(f.name);this._name=$?U$($):null}return this._name}get post(){if(this._post===void 0){let $=this.getTableReader(f.post);this._post=$?_$($):null}return this._post}get base(){if(this._base===void 0){let $=this.getTableReader(f.BASE);this._base=$?F5($):null}return this._base}get jstf(){if(this._jstf===void 0){let $=this.getTableReader(f.JSTF);this._jstf=$?p7($):null}return this._jstf}get math(){if(this._math===void 0){let $=this.getTableReader(f.MATH);this._math=$?J$($):null}return this._math}get loca(){if(this._loca===void 0){let $=this.getTableReader(f.loca);this._loca=$?H7($,this.numGlyphs,this.head.indexToLocFormat):null}return this._loca}get glyf(){if(this._glyf===void 0){let $=this.getTableReader(f.glyf);this._glyf=$?_7($):null}return this._glyf}get svg(){if(this._svg===void 0){let $=this.getTableReader(f.SVG);this._svg=$?Y$($):null}return this._svg}get vorg(){if(this._vorg===void 0){let $=this.getTableReader(f.VORG);this._vorg=$?B$($):null}return this._vorg}get sbix(){if(this._sbix===void 0){let $=this.getTableReader(f.sbix);this._sbix=$?N$($,this.numGlyphs):null}return this._sbix}get stat(){if(this._stat===void 0){let $=this.getTableReader(f.STAT);this._stat=$?G$($):null}return this._stat}get cblc(){if(this._cblc===void 0){let $=this.getTableReader(f.CBLC);this._cblc=$?D5($):null}return this._cblc}get cbdt(){if(this._cbdt===void 0){let $=this.getTableReader(f.CBDT);this._cbdt=$?B5($):null}return this._cbdt}get feat(){if(this._feat===void 0){let $=this.getTableReader(f.feat);this._feat=$?j9($):null}return this._feat}get fpgm(){if(this._fpgm===void 0){let $=this.getTableReader(f.fpgm);this._fpgm=$?g7($):null}return this._fpgm}get prep(){if(this._prep===void 0){let $=this.getTableReader(f.prep);this._prep=$?u7($):null}return this._prep}get cvtTable(){if(this._cvt===void 0){let $=this.getTableReader(f.cvt);this._cvt=$?x7($):null}return this._cvt}get gasp(){if(this._gasp===void 0){let $=this.getTableReader(f.gasp);this._gasp=$?$7($):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 w$(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 C5(this.cmap,$)}glyphIdForChar($){let Q=$.codePointAt(0);if(Q===void 0)return 0;return this.glyphId(Q)}advanceWidth($){return l7(this.hmtx,$)}leftSideBearing($){return n7(this.hmtx,$)}listTables(){return Array.from(this.directory.tables.keys()).map(P6)}getGlyph($){if(!this.glyf||!this.loca)return null;return J6(this.glyf,this.loca,$)}getGlyphContours($){if(this.glyf&&this.loca)return j7(this.glyf,this.loca,$);if(this.cff)return W9(this.cff,$,0);if(this.cff2)return q8(this.cff2,$,null);return null}getGlyphBounds($){if(this.glyf&&this.loca)return X7(this.glyf,this.loca,$);let Q=this.getGlyphContours($);if(!Q||Q.length===0)return null;let Z=1/0,J=1/0,K=-1/0,q=-1/0;for(let W of Q)for(let U of W)Z=Math.min(Z,U.x),J=Math.min(J,U.y),K=Math.max(K,U.x),q=Math.max(q,U.y);if(Z===1/0)return null;return{xMin:Z,yMin:J,xMax:K,yMax:q}}getGlyphContoursWithVariation($,Q){if(this.glyf&&this.loca)return G7(this.glyf,this.loca,this.gvar,$,Q);if(this.cff2)return q8(this.cff2,$,Q);return this.getGlyphContours($)}}var O$;((J)=>{J.Shrink="shrink";J.Extend="extend";J.Auto="auto"})(O$||={});function Y8($){let Q=0;for(let Z of $.positions)Q+=Z.xAdvance;return Q}function I$($,Q,Z){let{targetWidth:J,script:K=R("DFLT"),language:q,mode:W="auto",maxPriority:U=10,enableKashida:H=!0,minWordSpacingFactor:_=0.8,maxWordSpacingFactor:N=1.5,enableLetterSpacing:j=!0,maxLetterSpacing:X=100}=Z,V=Y8(Q),w=J-V;if(Math.abs(w)<1)return{success:!0,finalWidth:V,delta:0,priorityLevel:0,adjustments:[]};let G;if(W==="auto")G=w>0?"extend":"shrink";else G=W;let Y=[],z=w,E=0,A=$.jstf;if(A){let D=c7(A,K,q);for(let C=0;C<Math.min(D.length,U);C++){let P=D[C],T=G==="shrink"?s7(P):a7(P);if(T.enableGsub.length>0||T.disableGsub.length>0||T.enableGpos.length>0||T.disableGpos.length>0)Y.push({type:"lookup",glyphIndices:[],value:C}),E=C}if(H&&G==="extend"){let C=o7(A,K);if(C.length>0){let P=fW(Q,C[0],z,$);z-=P.totalExtension,Y.push(...P.adjustments)}}}let L=$.glyphId(32);if(L!==0){let D=nW(Q,L,z,G==="shrink"?_:N);z-=D.totalAdjustment,Y.push(...D.adjustments)}if(j&&Math.abs(z)>1){let D=dW(Q,z,X);z-=D.totalAdjustment,Y.push(...D.adjustments)}let O=Y8(Q);return{success:Math.abs(z)<1,finalWidth:O,delta:J-O,priorityLevel:E,adjustments:Y}}function fW($,Q,Z,J){let K=[],q=0,W=[];for(let N=0;N<$.infos.length-1;N++){let j=$.infos[N];if(lW(j.codepoint))W.push(N)}if(W.length===0)return{totalExtension:0,adjustments:[]};let U=J.advanceWidth(Q);if(U<=0)return{totalExtension:0,adjustments:[]};let H=Math.ceil(Z/U/W.length),_=Math.min(H*U,Z/W.length);for(let N of W){if(q>=Z)break;$.positions[N].xAdvance+=_,q+=_,K.push({type:"kashida",glyphIndices:[N],value:_})}return{totalExtension:q,adjustments:K}}function lW($){return $>=1568&&$<=1791}function nW($,Q,Z,J){let K=[],q=0,W=[],U=0;for(let X=0;X<$.infos.length;X++)if($.infos[X]?.glyphId===Q)W.push(X),U+=$.positions[X]?.xAdvance;if(W.length===0)return{totalAdjustment:0,adjustments:[]};let H=Z/W.length,N=U/W.length*(J-1),j=Z>0?Math.min(H,N):Math.max(H,-N);for(let X of W)$.positions[X].xAdvance+=j,q+=j;if(q!==0)K.push({type:"spacing",glyphIndices:W,value:j});return{totalAdjustment:q,adjustments:K}}function dW($,Q,Z){let J=[],K=$.infos.length;if(K<=1)return{totalAdjustment:0,adjustments:[]};let q=K-1,W=Q/q,U=Q>0?Math.min(W,Z):Math.max(W,-Z),H=[],_=0;for(let N=0;N<K-1;N++)$.positions[N].xAdvance+=U,_+=U,H.push(N);if(_!==0)J.push({type:"spacing",glyphIndices:H,value:U});return{totalAdjustment:_,adjustments:J}}function iW($,Q,Z){let J=[],K=[];if($.infos.length===0)return{lines:[],breakPoints:[]};let q=0,W=0,U=-1,H=0;for(let _=0;_<$.infos.length;_++){let N=$.positions[_],j=$.infos[_];if(W+=N.xAdvance,Z!==void 0&&j.glyphId===Z)U=_,H=W;if(W>Q&&q<_){let X;if(U>q)X=U+1;else X=_;let V=P$($,q,X);J.push(V),K.push(X),q=X,W=0,U=-1;for(let w=q;w<=_;w++)W+=$.positions[w]?.xAdvance}}if(q<$.infos.length){let _=P$($,q,$.infos.length);J.push(_)}return{lines:J,breakPoints:K}}function P$($,Q,Z){let J=new $6;J.direction=$.direction,J.script=$.script,J.language=$.language;for(let K=Q;K<Z;K++)J.infos.push({...$.infos[K]}),J.positions.push({...$.positions[K]});return J}function pW($,Q,Z){let J=[];for(let K=0;K<Q.length;K++){let q=Q[K];if(K===Q.length-1)J.push({success:!0,finalWidth:Y8(q),delta:0,priorityLevel:0,adjustments:[]});else J.push(I$($,q,Z))}return J}function v$($,Q){for(let Z of $.conditions){let J=Q[Z.axisIndex]??0;if(J<Z.filterRangeMinValue||J>Z.filterRangeMaxValue)return!1}return!0}function h6($,Q){for(let Z of $.featureVariationRecords)if(v$(Z.conditionSet,Q))return Z;return null}function oW($,Q,Z,J){if(!$||!J)return Z;let K=h6($,J);if(!K)return Z;let q=K.featureTableSubstitution.substitutions.find((W)=>W.featureIndex===Q);if(q)return q.alternateFeature.lookupListIndices;return Z}function cW($,Q,Z,J){if(!$||!J)return Q;let K=h6($,J);if(!K)return Q;let q=new Map(Q);for(let W of K.featureTableSubstitution.substitutions)for(let[U,H]of Z)if(H===W.featureIndex){q.set(U,W.alternateFeature.lookupListIndices);break}return q}function sW($,Q,Z,J){let K=-Q*J,q=$*Z,W=Math.sqrt(K*K+q*q);if(W<0.0000000001)return{x:0,y:0,len:0};return{x:K/W,y:q/W,len:W}}function v9($,Q,Z,J,K){let q=Z.x-$.x,W=Z.y-$.y;if(Math.abs((Q.x-$.x)*W-(Q.y-$.y)*q)/Math.sqrt(q*q+W*W+0.0000000001)<=J){K.push(Z);return}let H={x:($.x+Q.x)/2,y:($.y+Q.y)/2},_={x:(Q.x+Z.x)/2,y:(Q.y+Z.y)/2},N={x:(H.x+_.x)/2,y:(H.y+_.y)/2};v9($,H,N,J,K),v9(N,_,Z,J,K)}function k9($,Q,Z,J,K,q){let W=J.x-$.x,U=J.y-$.y,H=W*W+U*U+0.0000000001,_=Math.abs((Q.x-$.x)*U-(Q.y-$.y)*W)/Math.sqrt(H),N=Math.abs((Z.x-$.x)*U-(Z.y-$.y)*W)/Math.sqrt(H);if(_<=K&&N<=K){q.push(J);return}let j={x:($.x+Q.x)/2,y:($.y+Q.y)/2},X={x:(Q.x+Z.x)/2,y:(Q.y+Z.y)/2},V={x:(Z.x+J.x)/2,y:(Z.y+J.y)/2},w={x:(j.x+X.x)/2,y:(j.y+X.y)/2},G={x:(X.x+V.x)/2,y:(X.y+V.y)/2},Y={x:(w.x+G.x)/2,y:(w.y+G.y)/2};k9($,j,w,Y,K,q),k9(Y,G,V,J,K,q)}function aW($,Q){let Z=[],J=[],K={x:0,y:0},q={x:0,y:0};for(let W of $.commands)switch(W.type){case"M":if(J.length>1)Z.push({points:J,closed:!1});K={x:W.x,y:W.y},q=K,J=[K];break;case"L":K={x:W.x,y:W.y},J.push(K);break;case"Q":v9(K,{x:W.x1,y:W.y1},{x:W.x,y:W.y},Q,J),K={x:W.x,y:W.y};break;case"C":k9(K,{x:W.x1,y:W.y1},{x:W.x2,y:W.y2},{x:W.x,y:W.y},Q,J),K={x:W.x,y:W.y};break;case"Z":if(J.length>1){let U=J[0],H=J[J.length-1];if(U&&H){let _=H.x-U.x,N=H.y-U.y;if(_*_+N*N>Q*Q)J.push({...U})}Z.push({points:J,closed:!0})}J=[],K=q;break}if(J.length>1)Z.push({points:J,closed:!1});return Z}function k$($,Q,Z,J,K,q,W){let U=Z.x*J.x+Z.y*J.y,H=Z.x*J.y-Z.y*J.x,_=Math.atan2(H,U),N=Math.max(2,Math.ceil(Math.abs(_)/(Math.PI/8))),j=W?1:-1,X=Math.atan2(Z.y,Z.x);for(let V=1;V<=N;V++){let w=V/N,G=X+_*w,Y=Math.cos(G),z=Math.sin(G);$.push({x:Q.x+Y*K*j,y:Q.y+z*q*j})}}function C$($,Q,Z,J,K,q,W,U){let H=U?1:-1,_=Z.x*J.x+Z.y*J.y,N=Math.sqrt((1-_)/2);if(N<0.0000000001)return!1;let j=1/N;if(j>W)return!1;let X=Z.x+J.x,V=Z.y+J.y,w=Math.sqrt(X*X+V*V);if(w<0.0000000001)return!1;let G=j*Math.sqrt(K*K+q*q)/2;return $.push({x:Q.x+X/w*G*H,y:Q.y+V/w*G*H}),!0}function rW($,Q,Z,J,K){let q=$.length;if(q<3)return{outer:[],inner:[]};let W=q-1,U=$[0],H=$[W],_=q;if(U&&H){let V=H.x-U.x,w=H.y-U.y;if(V*V+w*w<1)_=q-1}if(_<3)return{outer:[],inner:[]};let N=[];for(let V=0;V<_;V++){let w=$[V],G=$[(V+1)%_];if(!w||!G)continue;let Y=G.x-w.x,z=G.y-w.y,E=Math.sqrt(Y*Y+z*z);if(E<0.0000000001)N.push({x:0,y:0,len:0});else N.push(sW(Y/E,z/E,Q,Z))}let j=[],X=[];for(let V=0;V<_;V++){let w=$[V],G=N[(V-1+_)%_],Y=N[V];if(!w||!G||!Y)continue;if(G.len<0.0000000001||Y.len<0.0000000001){j.push({x:w.x+(Y.len>0?Y.x*Q:0),y:w.y+(Y.len>0?Y.y*Z:0)});continue}let z={x:w.x+Y.x*Q,y:w.y+Y.y*Z},E=G.x*Y.y-G.y*Y.x,A=E>0;if(Math.abs(E)<0.01)j.push(z);else if(A)switch(J){case"round":k$(j,w,G,Y,Q,Z,!0);break;case"miter":if(!C$(j,w,G,Y,Q,Z,K,!0))j.push(z);break;default:j.push(z);break}else j.push(z)}for(let V=0;V<_;V++){let w=$[V],G=N[(V-1+_)%_],Y=N[V];if(!w||!G||!Y)continue;if(G.len<0.0000000001||Y.len<0.0000000001){X.push({x:w.x-(Y.len>0?Y.x*Q:0),y:w.y-(Y.len>0?Y.y*Z:0)});continue}let z={x:w.x-Y.x*Q,y:w.y-Y.y*Z},E=G.x*Y.y-G.y*Y.x,A=E<0;if(Math.abs(E)<0.01)X.push(z);else if(A)switch(J){case"round":k$(X,w,G,Y,Q,Z,!1);break;case"miter":if(!C$(X,w,G,Y,Q,Z,K,!1))X.push(z);break;default:X.push(z);break}else X.push(z)}return{outer:j,inner:X}}function S$($,Q){if($.length===0)return[];let Z=[],J=$[0];if(!J)return[];Z.push({type:"M",x:J.x,y:J.y});for(let K=1;K<$.length;K++){let q=$[K];if(!q)continue;Z.push({type:"L",x:q.x,y:q.y})}if(Q)Z.push({type:"Z"});return Z}function C9($,Q){let{xBorder:Z,yBorder:J,eps:K=1,lineJoin:q="round",miterLimit:W=4}=Q;if(Z<=0&&J<=0)return{outer:{commands:[],bounds:null},inner:{commands:[],bounds:null}};let U=aW($,K),H=[],_=[];for(let X of U){if(!X.closed){let G=X.points[0];if(G)X.points.push(G);X.closed=!0}let{outer:V,inner:w}=rW(X.points,Z,J,q,W);H.push(...S$(V,!0)),_.push(...S$(w,!0))}let N=null,j=null;if($.bounds)N={xMin:$.bounds.xMin-Z,yMin:$.bounds.yMin-J,xMax:$.bounds.xMax+Z,yMax:$.bounds.yMax+J},j={xMin:$.bounds.xMin+Z,yMin:$.bounds.yMin+J,xMax:$.bounds.xMax-Z,yMax:$.bounds.yMax-J};return{outer:{commands:H,bounds:N,flags:$.flags},inner:{commands:_,bounds:j,flags:$.flags}}}function tW($,Q){let{outer:Z,inner:J}=C9($,Q),K=[...Z.commands,...J.commands],q=Z.bounds;return{commands:K,bounds:q,flags:$.flags}}function eW($,Q,Z){return C9($,{xBorder:Q,yBorder:Q,...Z})}function h$($){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 y$($){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 b$($){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 m$($){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 g$($){let Q=$.stack[$.stackTop-1];if(Q===void 0){$.error="ABS: stack underflow";return}$.stack[$.stackTop-1]=Q<0?-Q:Q}function u$($){let Q=$.stack[$.stackTop-1];if(Q===void 0){$.error="NEG: stack underflow";return}$.stack[$.stackTop-1]=-Q}function x$($){let Q=$.stack[$.stackTop-1];if(Q===void 0){$.error="FLOOR: stack underflow";return}$.stack[$.stackTop-1]=Q&-64}function f$($){let Q=$.stack[$.stackTop-1];if(Q===void 0){$.error="CEILING: stack underflow";return}$.stack[$.stackTop-1]=Q+63&-64}function l$($){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 n$($){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 d$($){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 i$($){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 p$($){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 o$($){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 c$($){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 s$($){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 a$($){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 r$($){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 t$($){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 e$($){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 $Q($){let Q=$.stack[$.stackTop-1];if(Q===void 0){$.error="NOT: stack underflow";return}$.stack[$.stackTop-1]=Q?0:1}function QQ($){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 ZQ($){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 JQ($){}function KQ($){let Q=$.stack[--$.stackTop];if(Q===void 0){$.error="JMPR: stack underflow",$.stackTop++;return}$.IP+=Q-1}function qQ($){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 WQ($){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 UQ($){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 HQ($){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 _Q($){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 K=$.codeRanges.get($.currentRange);if(K)$.code=K.code,$.codeSize=K.size;$.IP=Z.start}function NQ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop];if(Q===void 0||Z===void 0){$.error="LOOPCALL: stack underflow",$.stackTop+=2;return}if(Q<0||Q>=$.maxFDefs){$.error=`LOOPCALL: invalid function number ${Q}`;return}let 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 K=$.callStack[$.callStackTop++];if(!K){$.error="LOOPCALL: no call frame available",$.callStackTop--;return}K.callerIP=$.IP,K.callerRange=$.currentRange,K.def=J,K.count=Z,$.currentRange=J.range;let q=$.codeRanges.get($.currentRange);if(q)$.code=q.code,$.codeSize=q.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 $U(){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 XQ($=256,Q=64,Z=64,J=64,K=32,q=16){let W=$U();return{GS:{...W},defaultGS:W,zp0:q6(0,0),zp1:q6(0,0),zp2:q6(0,0),twilight:q6(q,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((U,H)=>({id:H,start:0,end:0,active:!1,range:0})),maxFDefs:Z,IDefs:Array(J).fill(null).map((U,H)=>({opcode:H,start:0,end:0,active:!1,range:0})),maxIDefs:J,callStack:Array(K).fill(null).map(()=>({callerIP:0,callerRange:0,def:{id:0,start:0,end:0,active:!1,range:0},count:0})),callStackTop:0,maxCallStack:K,codeRanges:new Map,ppem:12,pointSize:12,scale:1,error:null,instructionCount:0,maxInstructions:1e6}}var F={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},GV={[F.RS]:1,[F.WS]:2,[F.RCVT]:1,[F.WCVTP]:2,[F.WCVTF]:2,[F.DUP]:1,[F.POP]:1,[F.CLEAR]:0,[F.SWAP]:2,[F.DEPTH]:0,[F.CINDEX]:1,[F.MINDEX]:1,[F.ROLL]:3,[F.ADD]:2,[F.SUB]:2,[F.DIV]:2,[F.MUL]:2,[F.ABS]:1,[F.NEG]:1,[F.FLOOR]:1,[F.CEILING]:1,[F.MAX]:2,[F.MIN]:2,[F.LT]:2,[F.LTEQ]:2,[F.GT]:2,[F.GTEQ]:2,[F.EQ]:2,[F.NEQ]:2,[F.ODD]:1,[F.EVEN]:1,[F.AND]:2,[F.OR]:2,[F.NOT]:1,[F.IF]:1,[F.JMPR]:1,[F.JROT]:2,[F.JROF]:2,[F.CALL]:1,[F.LOOPCALL]:2,[F.SRP0]:1,[F.SRP1]:1,[F.SRP2]:1,[F.SZP0]:1,[F.SZP1]:1,[F.SZP2]:1,[F.SZPS]:1,[F.SLOOP]:1,[F.SMD]:1,[F.SCVTCI]:1,[F.SSWCI]:1,[F.SSW]:1,[F.SDB]:1,[F.SDS]:1,[F.SPVFS]:2,[F.SFVFS]:2,[F.SPVTL_0]:2,[F.SPVTL_1]:2,[F.SFVTL_0]:2,[F.SFVTL_1]:2,[F.SCFS]:2,[F.GC_0]:1,[F.GC_1]:1,[F.MD_0]:2,[F.MD_1]:2,[F.ISECT]:5,[F.ALIGNRP]:0,[F.IP]:0,[F.SHPIX]:1,[F.MSIRP_0]:2,[F.MSIRP_1]:2,[F.MIAP_0]:2,[F.MIAP_1]:2,[F.MDAP_0]:1,[F.MDAP_1]:1,[F.DELTAP1]:1,[F.DELTAP2]:1,[F.DELTAP3]:1,[F.DELTAC1]:1,[F.DELTAC2]:1,[F.DELTAC3]:1,[F.SROUND]:1,[F.S45ROUND]:1,[F.ROUND_0]:1,[F.ROUND_1]:1,[F.ROUND_2]:1,[F.ROUND_3]:1,[F.NROUND_0]:1,[F.NROUND_1]:1,[F.NROUND_2]:1,[F.NROUND_3]:1,[F.INSTCTRL]:2,[F.SCANCTRL]:1,[F.SCANTYPE]:1,[F.GETINFO]:1,[F.FLIPPT]:0,[F.FLIPRGON]:2,[F.FLIPRGOFF]:2};function VQ($,Q){if($>=0)return $+32+Q&-64;else return-(-$+32+Q&-64)}function ZU($,Q){if($>=0)return($+32+Q&-64)+32;else return-((-$+32+Q&-64)+32)}function JU($,Q){if($>=0)return $+16+Q&-32;else return-(-$+16+Q&-32)}function KU($,Q){if($>=0)return $+Q&-64;else return-(Q-$&-64)}function qU($,Q){if($>=0)return $+63+Q&-64;else return-(63+Q-$&-64)}function WU($,Q){return $}function UU($,Q,Z){let{period:J,phase:K,threshold:q}=Z;if($>=0)return($+q-K+Q&-J)+K;else return-((-$+q-K+Q&-J)+K)}function HU($,Q,Z){let{period:J,phase:K,threshold:q}=Z,W=Math.round(J*46/64);if($>=0)return($+q-K+Q&-W)+K;else return-((-$+q-K+Q&-W)+K)}function z6($,Q,Z){switch(Z.roundState){case 1:return VQ($,Q);case 0:return ZU($,Q);case 2:return JU($,Q);case 3:return KU($,Q);case 4:return qU($,Q);case 5:return WU($,Q);case 6:return UU($,Q,Z);case 7:return HU($,Q,Z);default:return VQ($,Q)}}function S9($,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 W6($,Q){return 0}function _U($,Q){return Q.x*$.GS.projVector.x+Q.y*$.GS.projVector.y+8192>>14}function NU($,Q){return Q.x*$.GS.dualVector.x+Q.y*$.GS.dualVector.y+8192>>14}function w1($,Q,Z,J){let K=Q.cur[Z],q=$.GS.freeVector,W=$.GS.projVector,U=q.x*W.x+q.y*W.y+8192>>14;if(U===0)return;let H=Math.round(J*q.x/U),_=Math.round(J*q.y/U);K.x+=H,K.y+=_}function K1($,Q,Z){let J=Q.cur[Z];if(!J)return 0;return _U($,J)}function M1($,Q,Z){let J=Q.org[Z];if(!J)return 0;return NU($,J)}function z1($,Q,Z){let J=$.GS.freeVector;if(J.y!==0)Q.tags[Z]|=2;if(J.x!==0)Q.tags[Z]|=1}function h9($,Q){let Z=$.stack[--$.stackTop],J=$.zp0;if(Z<0||Z>=J.nPoints){$.error=`MDAP: invalid point ${Z}`;return}let K=K1($,J,Z);if(Q){let q=W6(K,$.GS);K=z6(K,q,$.GS)-K}else K=0;w1($,J,Z,K),z1($,J,Z),$.GS.rp0=Z,$.GS.rp1=Z}function y9($,Q){let Z=$.stack[--$.stackTop],J=$.stack[--$.stackTop],K=$.zp0;if(J<0||J>=K.nPoints){$.error=`MIAP: invalid point ${J}`;return}if(Z<0||Z>=$.cvtSize){$.error=`MIAP: invalid CVT index ${Z}`;return}let q=$.cvt[Z],W=K1($,K,J);if(Q){if(Math.abs(q-W)>$.GS.controlValueCutIn)q=W;let _=W6(q,$.GS);q=z6(q,_,$.GS)}let U=q-W;w1($,K,J,U),z1($,K,J),$.GS.rp0=J,$.GS.rp1=J}function GQ($,Q){let Z=$.stack[--$.stackTop],J=(Q&16)!==0,K=(Q&8)!==0,q=(Q&4)!==0,W=$.zp0,U=$.zp1;if(Z<0||Z>=U.nPoints){$.error=`MDRP: invalid point ${Z}`;return}let H=$.GS.rp0;if(H<0||H>=W.nPoints){$.error=`MDRP: invalid rp0 ${H}`;return}let _=M1($,U,Z)-M1($,W,H);if($.GS.autoFlip&&_<0)_=-_;if(q){let X=W6(_,$.GS);_=z6(_,X,$.GS)}if(K){if(_>=0){if(_<$.GS.minimumDistance)_=$.GS.minimumDistance}else if(_>-$.GS.minimumDistance)_=-$.GS.minimumDistance}let N=K1($,U,Z)-K1($,W,H),j=_-N;if(w1($,U,Z,j),z1($,U,Z),$.GS.rp1=$.GS.rp0,$.GS.rp2=Z,J)$.GS.rp0=Z}function YQ($,Q){let Z=$.stack[--$.stackTop],J=$.stack[--$.stackTop],K=(Q&16)!==0,q=(Q&8)!==0,W=(Q&4)!==0,U=$.zp0,H=$.zp1;if(J<0||J>=H.nPoints){$.error=`MIRP: invalid point ${J}`;return}if(Z<0||Z>=$.cvtSize){$.error=`MIRP: invalid CVT index ${Z}`;return}let _=$.GS.rp0;if(_<0||_>=U.nPoints){$.error=`MIRP: invalid rp0 ${_}`;return}let N=M1($,H,J)-M1($,U,_),j=$.cvt[Z];if($.GS.autoFlip){if(N<0&&j>0||N>0&&j<0)j=-j}let X=Math.abs(N-j),V;if(X>$.GS.controlValueCutIn)V=N;else V=j;if(W){let Y=W6(V,$.GS);V=z6(V,Y,$.GS)}if(q){if(N>=0){if(V<$.GS.minimumDistance)V=$.GS.minimumDistance}else if(V>-$.GS.minimumDistance)V=-$.GS.minimumDistance}let w=K1($,H,J)-K1($,U,_),G=V-w;if(w1($,H,J,G),z1($,H,J),$.GS.rp1=$.GS.rp0,$.GS.rp2=J,K)$.GS.rp0=J}function b9($,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 K=M1($,Z,J),W=K1($,Z,J)-K,U=$.zp2,H=$.GS.loop;$.GS.loop=1;for(let _=0;_<H;_++){let N=$.stack[--$.stackTop];if(N<0||N>=U.nPoints){$.error=`SHP: invalid point ${N}`;return}w1($,U,N,W),z1($,U,N)}}function m9($,Q){let Z=$.stack[--$.stackTop],J=Q?$.zp0:$.zp1,K=Q?$.GS.rp1:$.GS.rp2;if(K<0||K>=J.nPoints){$.error=`SHC: invalid reference point ${K}`;return}let q=$.zp2;if(Z<0||Z>=q.nContours){$.error=`SHC: invalid contour ${Z}`;return}let W=M1($,J,K),H=K1($,J,K)-W,_=Z===0?0:q.contours[Z-1]+1,N=q.contours[Z];for(let j=_;j<=N;j++){if(q===J&&j===K)continue;w1($,q,j,H),z1($,q,j)}}function g9($,Q){let Z=$.stack[--$.stackTop],J=Q?$.zp0:$.zp1,K=Q?$.GS.rp1:$.GS.rp2;if(K<0||K>=J.nPoints){$.error=`SHZ: invalid reference point ${K}`;return}let q=Z===0?$.twilight:$.pts,W=M1($,J,K),H=K1($,J,K)-W;for(let _=0;_<q.nPoints;_++){if(q===J&&_===K)continue;w1($,q,_,H)}}function zQ($){let Q=$.stack[--$.stackTop],Z=$.zp2,J=$.GS.loop;$.GS.loop=1;for(let K=0;K<J;K++){let q=$.stack[--$.stackTop];if(q<0||q>=Z.nPoints){$.error=`SHPIX: invalid point ${q}`;return}w1($,Z,q,Q),z1($,Z,q)}}function EQ($){let Q=$.GS.rp1,Z=$.GS.rp2;if(Q<0||Q>=$.zp0.nPoints){$.error=`IP: invalid rp1 ${Q}`;return}if(Z<0||Z>=$.zp1.nPoints){$.error=`IP: invalid rp2 ${Z}`;return}let J=M1($,$.zp0,Q),K=M1($,$.zp1,Z),q=K1($,$.zp0,Q),W=K1($,$.zp1,Z),U=K-J,H=W-q,_=$.zp2,N=$.GS.loop;$.GS.loop=1;for(let j=0;j<N;j++){let X=$.stack[--$.stackTop];if(X<0||X>=_.nPoints){$.error=`IP: invalid point ${X}`;return}let V=M1($,_,X),w=K1($,_,X),G;if(U!==0){let Y=V-J;G=q+Math.round(Y*H/U)}else G=w+(q-J);w1($,_,X,G-w),z1($,_,X)}}function AQ($){let Q=$.GS.rp0;if(Q<0||Q>=$.zp0.nPoints){$.error=`ALIGNRP: invalid rp0 ${Q}`;return}let Z=K1($,$.zp0,Q),J=$.zp1,K=$.GS.loop;$.GS.loop=1;for(let q=0;q<K;q++){let W=$.stack[--$.stackTop];if(W<0||W>=J.nPoints){$.error=`ALIGNRP: invalid point ${W}`;return}let U=K1($,J,W),H=Z-U;w1($,J,W,H),z1($,J,W)}}function u9($,Q){let Z=$.stack[--$.stackTop],J=$.stack[--$.stackTop],K=$.zp0,q=$.zp1;if(J<0||J>=q.nPoints){$.error=`MSIRP: invalid point ${J}`;return}let W=$.GS.rp0;if(W<0||W>=K.nPoints){$.error=`MSIRP: invalid rp0 ${W}`;return}let U=K1($,q,J)-K1($,K,W),H=Z-U;if(w1($,q,J,H),z1($,q,J),$.GS.rp1=$.GS.rp0,$.GS.rp2=J,Q)$.GS.rp0=J}function FQ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop],J=$.stack[--$.stackTop],K=$.stack[--$.stackTop],q=$.stack[--$.stackTop],W=$.zp0,U=$.zp1,H=$.zp2;if(K<0||K>=W.nPoints||J<0||J>=W.nPoints){$.error="ISECT: invalid line A points";return}if(Z<0||Z>=U.nPoints||Q<0||Q>=U.nPoints){$.error="ISECT: invalid line B points";return}if(q<0||q>=H.nPoints){$.error=`ISECT: invalid point ${q}`;return}let _=W.cur[K],N=W.cur[J],j=U.cur[Z],X=U.cur[Q],V=N.x-_.x,w=N.y-_.y,G=X.x-j.x,Y=X.y-j.y,z=V*Y-w*G,E=H.cur[q];if(z===0)E.x=_.x+N.x+j.x+X.x>>2,E.y=_.y+N.y+j.y+X.y>>2;else{let A=j.x-_.x,L=j.y-_.y,O=(A*Y-L*G)/z;E.x=Math.round(_.x+O*V),E.y=Math.round(_.y+O*w)}H.tags[q]|=3}function LQ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop],J=$.zp0,K=$.zp1;if(Z<0||Z>=J.nPoints){$.error=`ALIGNPTS: invalid point ${Z}`;return}if(Q<0||Q>=K.nPoints){$.error=`ALIGNPTS: invalid point ${Q}`;return}let q=K1($,J,Z),W=K1($,K,Q),U=q+W>>1;w1($,J,Z,U-q),w1($,K,Q,U-W),z1($,J,Z),z1($,K,Q)}function x9($,Q){let Z=$.stack[--$.stackTop],J=$.zp2;if(Z<0||Z>=J.nPoints){$.error=`GC: invalid point ${Z}`,$.stack[$.stackTop++]=0;return}let K=Q?M1($,J,Z):K1($,J,Z);$.stack[$.stackTop++]=K}function DQ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop],J=$.zp2;if(Z<0||Z>=J.nPoints){$.error=`SCFS: invalid point ${Z}`;return}let K=K1($,J,Z);w1($,J,Z,Q-K),z1($,J,Z)}function f9($,Q){let Z=$.stack[--$.stackTop],J=$.stack[--$.stackTop],K=$.zp0,q=$.zp1;if(J<0||J>=K.nPoints){$.error=`MD: invalid point ${J}`,$.stack[$.stackTop++]=0;return}if(Z<0||Z>=q.nPoints){$.error=`MD: invalid point ${Z}`,$.stack[$.stackTop++]=0;return}let W;if(Q)W=M1($,q,Z)-M1($,K,J);else W=K1($,q,Z)-K1($,K,J);$.stack[$.stackTop++]=W}function BQ($){$.stack[$.stackTop++]=$.ppem}function MQ($){$.stack[$.stackTop++]=$.pointSize}function RQ($){let Q=$.pts,Z=$.GS.loop;$.GS.loop=1;for(let J=0;J<Z;J++){let K=$.stack[--$.stackTop];if(K<0||K>=Q.nPoints){$.error=`FLIPPT: invalid point ${K}`;return}Q.tags[K]^=1}}function TQ($){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 K=Z;K<=Q;K++)J.tags[K]|=1}function PQ($){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 K=Z;K<=Q;K++)J.tags[K]&=-2}function y6($,Q){let Z=$.stack[--$.stackTop],J=W6(Z,$.GS);$.stack[$.stackTop++]=z6(Z,J,$.GS)}function b6($,Q){let Z=$.stack[--$.stackTop],J=W6(Z,$.GS);$.stack[$.stackTop++]=Z+J}function OQ($){l9($,0)}function IQ($){l9($,16)}function vQ($){l9($,32)}function l9($,Q){let Z=$.stack[--$.stackTop];if(Z<0){$.error=`DELTAP: invalid count ${Z}`;return}let J=$.zp0;for(let K=0;K<Z;K++){let q=$.stack[--$.stackTop],W=$.stack[--$.stackTop];if(W<0||W>=J.nPoints){$.error=`DELTAP: invalid point ${W}`;return}let U=(q>>4&15)+$.GS.deltaBase+Q,H=q&15;if(U!==$.ppem)continue;let _;if(H<8)_=H+1<<6-$.GS.deltaShift;else _=-(H-7<<6-$.GS.deltaShift);w1($,J,W,_),z1($,J,W)}}function kQ($){n9($,0)}function CQ($){n9($,16)}function SQ($){n9($,32)}function n9($,Q){let Z=$.stack[--$.stackTop];if(Z<0){$.error=`DELTAC: invalid count ${Z}`;return}for(let J=0;J<Z;J++){let K=$.stack[--$.stackTop],q=$.stack[--$.stackTop];if(q<0||q>=$.cvtSize){$.error=`DELTAC: invalid CVT index ${q}`;return}let W=(K>>4&15)+$.GS.deltaBase+Q,U=K&15;if(W!==$.ppem)continue;let H;if(U<8)H=U+1<<6-$.GS.deltaShift;else H=-(U-7<<6-$.GS.deltaShift);$.cvt[q]+=H}}function d9($,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 i9($,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 p9($,Q){if(Q===0)$.GS.freeVector={x:0,y:16384};else $.GS.freeVector={x:16384,y:0}}function o9($,Q,Z,J,K){let q=J===0?$.twilight:$.pts,W=K===0?$.twilight:$.pts,U=q.cur[Q],H=W.cur[Z];if(!U||!H)return{x:16384,y:0};let _=H.x-U.x,N=H.y-U.y,j=Math.sqrt(_*_+N*N);if(j===0)return{x:16384,y:0};return{x:Math.round(_/j*16384),y:Math.round(N/j*16384)}}function c9($,Q){let Z=$.stack[--$.stackTop],J=$.stack[--$.stackTop],K=o9($,J,Z,$.GS.gep1,$.GS.gep2);if(Q){let q=K.x;K.x=K.y,K.y=-q}$.GS.projVector=K,$.GS.dualVector=K}function s9($,Q){let Z=$.stack[--$.stackTop],J=$.stack[--$.stackTop],K=o9($,J,Z,$.GS.gep1,$.GS.gep2);if(Q){let q=K.x;K.x=K.y,K.y=-q}$.GS.freeVector=K}function a9($,Q){let Z=$.stack[--$.stackTop],J=$.stack[--$.stackTop],K=o9($,J,Z,$.GS.gep1,$.GS.gep2);if(Q){let q=K.x;K.x=K.y,K.y=-q}$.GS.dualVector=K}function hQ($){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 yQ($){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 bQ($){$.stack[$.stackTop++]=$.GS.projVector.x,$.stack[$.stackTop++]=$.GS.projVector.y}function mQ($){$.stack[$.stackTop++]=$.GS.freeVector.x,$.stack[$.stackTop++]=$.GS.freeVector.y}function gQ($){$.GS.freeVector={...$.GS.projVector}}function uQ($){$.GS.rp0=$.stack[--$.stackTop]}function xQ($){$.GS.rp1=$.stack[--$.stackTop]}function fQ($){$.GS.rp2=$.stack[--$.stackTop]}function lQ($){let Q=$.stack[--$.stackTop];if(Q!==0&&Q!==1){$.error=`SZP0: invalid zone ${Q}`;return}$.GS.gep0=Q,$.zp0=Q===0?$.twilight:$.pts}function nQ($){let Q=$.stack[--$.stackTop];if(Q!==0&&Q!==1){$.error=`SZP1: invalid zone ${Q}`;return}$.GS.gep1=Q,$.zp1=Q===0?$.twilight:$.pts}function dQ($){let Q=$.stack[--$.stackTop];if(Q!==0&&Q!==1){$.error=`SZP2: invalid zone ${Q}`;return}$.GS.gep2=Q,$.zp2=Q===0?$.twilight:$.pts}function iQ($){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 pQ($){let Q=$.stack[--$.stackTop];if(Q<=0){$.error=`SLOOP: invalid count ${Q}`;return}$.GS.loop=Q}function oQ($){$.GS.minimumDistance=$.stack[--$.stackTop]}function cQ($){$.GS.controlValueCutIn=$.stack[--$.stackTop]}function sQ($){$.GS.singleWidthCutIn=$.stack[--$.stackTop]}function aQ($){$.GS.singleWidthValue=$.stack[--$.stackTop]}function rQ($){$.GS.deltaBase=$.stack[--$.stackTop]}function tQ($){$.GS.deltaShift=$.stack[--$.stackTop]}function eQ($){$.GS.roundState=1}function $Z($){$.GS.roundState=0}function QZ($){$.GS.roundState=2}function ZZ($){$.GS.roundState=3}function JZ($){$.GS.roundState=4}function KZ($){$.GS.roundState=5}function qZ($){let Q=$.stack[--$.stackTop];S9(Q,$.GS),$.GS.roundState=6}function WZ($){let Q=$.stack[--$.stackTop];S9(Q,$.GS),$.GS.roundState=7}function UZ($){$.GS.autoFlip=!0}function HZ($){$.GS.autoFlip=!1}function _Z($){$.GS.scanControl=$.stack[--$.stackTop]}function NZ($){$.GS.scanType=$.stack[--$.stackTop]}function jZ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop];if(Q===1||Q===2)if(Z)$.GS.instructControl|=Q;else $.GS.instructControl&=~Q}function XZ($){let Q=$.stack[--$.stackTop],Z=0;if(Q&1)Z|=35;if(Q&32)Z|=4096;$.stack[$.stackTop++]=Z}function VZ($){let Q=$.stack[--$.stackTop];if(Q<0||Q>=$.storageSize){$.error=`RS: invalid index ${Q}`,$.stack[$.stackTop++]=0;return}$.stack[$.stackTop++]=$.storage[Q]}function wZ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop];if(Z<0||Z>=$.storageSize){$.error=`WS: invalid index ${Z}`;return}$.storage[Z]=Q}function GZ($){let Q=$.stack[--$.stackTop];if(Q<0||Q>=$.cvtSize){$.error=`RCVT: invalid index ${Q}`,$.stack[$.stackTop++]=0;return}$.stack[$.stackTop++]=$.cvt[Q]}function YZ($){let Q=$.stack[--$.stackTop],Z=$.stack[--$.stackTop];if(Z<0||Z>=$.cvtSize){$.error=`WCVTP: invalid index ${Z}`;return}$.cvt[Z]=Q}function zZ($){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 EZ($){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 FZ($){DZ($,1,!0)}function LZ($){DZ($,2,!1)}function DZ($,Q,Z){let J=$.pts,K=J.nPoints,q=J.nContours;if(K===0||q===0)return;let W=0;for(let U=0;U<q;U++){let H=J.contours[U],_=-1;for(let V=W;V<=H;V++)if(J.tags[V]&Q){_=V;break}if(_<0){W=H+1;continue}let N=_,j=_+1,X=!1;while(!0){if(j>H){if(X)break;j=W,X=!0}if(j===_&&X){if(N!==_)AZ(J,N,_,W,H,Z);break}if(J.tags[j]&Q){if(N!==j)AZ(J,N,j,W,H,Z);N=j}j++}W=H+1}}function AZ($,Q,Z,J,K,q){let W=q?$.org[Q]?.x:$.org[Q]?.y,U=q?$.org[Z]?.x:$.org[Z]?.y,H=q?$.cur[Q]?.x:$.cur[Q]?.y,_=q?$.cur[Z]?.x:$.cur[Z]?.y,N,j,X,V;if(W<=U)N=W,j=U,X=H,V=_;else N=U,j=W,X=_,V=H;let w=j-N,G=V-X,Y=Q+1;if(Y>K)Y=J;while(Y!==Z){let z=q?$.org[Y]?.x:$.org[Y]?.y,E;if(z<=N)E=(q?$.cur[Y]?.x:$.cur[Y]?.y)+(X-N);else if(z>=j)E=(q?$.cur[Y]?.x:$.cur[Y]?.y)+(V-j);else if(w!==0){let A=z-N;E=X+Math.round(A*G/w)}else E=X;if(q)$.cur[Y].x=E;else $.cur[Y].y=E;if(Y++,Y>K)Y=J}}function BZ($){let Q=$.stack[$.stackTop-1];$.stack[$.stackTop++]=Q}function MZ($){$.stackTop--}function RZ($){$.stackTop=0}function TZ($){let Q=$.stack[$.stackTop-1],Z=$.stack[$.stackTop-2];$.stack[$.stackTop-1]=Z,$.stack[$.stackTop-2]=Q}function PZ($){let Q=$.stackTop;$.stack[$.stackTop++]=Q}function OZ($){let Q=$.stack[--$.stackTop];if(Q<=0||Q>$.stackTop){$.error=`CINDEX: invalid index ${Q}`;return}$.stack[$.stackTop++]=$.stack[$.stackTop-Q]}function IZ($){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 vZ($){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 r9($,Q){for(let Z=0;Z<Q;Z++)$.stack[$.stackTop++]=$.code[$.IP++]}function t9($,Q){for(let Z=0;Z<Q;Z++){let J=$.code[$.IP++],K=$.code[$.IP++],q=J<<8|K;if(q>=32768)q-=65536;$.stack[$.stackTop++]=q}}function kZ($){let Q=$.code[$.IP++];r9($,Q)}function CZ($){let Q=$.code[$.IP++];t9($,Q)}function XU($){while($.IP<$.codeSize&&$.error===null){if(++$.instructionCount>$.maxInstructions){$.error="Instruction limit exceeded (possible infinite loop)";return}let Q=$.code[$.IP++];$.opcode=Q,VU($,Q)}}function VU($,Q){if(Q>=176&&Q<=183){r9($,Q-176+1);return}if(Q>=184&&Q<=191){t9($,Q-184+1);return}if(Q>=192&&Q<=223){GQ($,Q&31);return}if(Q>=224&&Q<=255){YQ($,Q&31);return}switch(Q){case F.SVTCA_Y:d9($,0);break;case F.SVTCA_X:d9($,1);break;case F.SPVTCA_Y:i9($,0);break;case F.SPVTCA_X:i9($,1);break;case F.SFVTCA_Y:p9($,0);break;case F.SFVTCA_X:p9($,1);break;case F.SPVTL_0:c9($,!1);break;case F.SPVTL_1:c9($,!0);break;case F.SFVTL_0:s9($,!1);break;case F.SFVTL_1:s9($,!0);break;case F.SDPVTL_0:a9($,!1);break;case F.SDPVTL_1:a9($,!0);break;case F.SPVFS:hQ($);break;case F.SFVFS:yQ($);break;case F.GPV:bQ($);break;case F.GFV:mQ($);break;case F.SFVTPV:gQ($);break;case F.ISECT:FQ($);break;case F.SRP0:uQ($);break;case F.SRP1:xQ($);break;case F.SRP2:fQ($);break;case F.SZP0:lQ($);break;case F.SZP1:nQ($);break;case F.SZP2:dQ($);break;case F.SZPS:iQ($);break;case F.SLOOP:pQ($);break;case F.RTG:eQ($);break;case F.RTHG:$Z($);break;case F.SMD:oQ($);break;case F.ELSE:ZQ($);break;case F.JMPR:KQ($);break;case F.SCVTCI:cQ($);break;case F.SSWCI:sQ($);break;case F.SSW:aQ($);break;case F.DUP:BZ($);break;case F.POP:MZ($);break;case F.CLEAR:RZ($);break;case F.SWAP:TZ($);break;case F.DEPTH:PZ($);break;case F.CINDEX:OZ($);break;case F.MINDEX:IZ($);break;case F.ROLL:vZ($);break;case F.FDEF:UQ($);break;case F.ENDF:HQ($);break;case F.CALL:_Q($);break;case F.LOOPCALL:NQ($);break;case F.MDAP_0:h9($,!1);break;case F.MDAP_1:h9($,!0);break;case F.IUP_Y:LZ($);break;case F.IUP_X:FZ($);break;case F.SHP_0:b9($,!1);break;case F.SHP_1:b9($,!0);break;case F.SHC_0:m9($,!1);break;case F.SHC_1:m9($,!0);break;case F.SHZ_0:g9($,!1);break;case F.SHZ_1:g9($,!0);break;case F.SHPIX:zQ($);break;case F.IP:EQ($);break;case F.MSIRP_0:u9($,!1);break;case F.MSIRP_1:u9($,!0);break;case F.ALIGNRP:AQ($);break;case F.ALIGNPTS:LQ($);break;case F.UTP:EZ($);break;case F.RTDG:QZ($);break;case F.MIAP_0:y9($,!1);break;case F.MIAP_1:y9($,!0);break;case F.NPUSHB:kZ($);break;case F.NPUSHW:CZ($);break;case F.WS:wZ($);break;case F.RS:VZ($);break;case F.WCVTP:YZ($);break;case F.RCVT:GZ($);break;case F.GC_0:x9($,!1);break;case F.GC_1:x9($,!0);break;case F.SCFS:DQ($);break;case F.MD_0:f9($,!1);break;case F.MD_1:f9($,!0);break;case F.MPPEM:BQ($);break;case F.MPS:MQ($);break;case F.FLIPON:UZ($);break;case F.FLIPOFF:HZ($);break;case F.DEBUG:break;case F.LT:d$($);break;case F.LTEQ:i$($);break;case F.GT:p$($);break;case F.GTEQ:o$($);break;case F.EQ:c$($);break;case F.NEQ:s$($);break;case F.ODD:a$($);break;case F.EVEN:r$($);break;case F.IF:QQ($);break;case F.EIF:JQ($);break;case F.AND:t$($);break;case F.OR:e$($);break;case F.NOT:$Q($);break;case F.DELTAP1:OQ($);break;case F.SDB:rQ($);break;case F.SDS:tQ($);break;case F.ADD:h$($);break;case F.SUB:y$($);break;case F.DIV:b$($);break;case F.MUL:m$($);break;case F.ABS:g$($);break;case F.NEG:u$($);break;case F.FLOOR:x$($);break;case F.CEILING:f$($);break;case F.ROUND_0:y6($,0);break;case F.ROUND_1:y6($,1);break;case F.ROUND_2:y6($,2);break;case F.ROUND_3:y6($,3);break;case F.NROUND_0:b6($,0);break;case F.NROUND_1:b6($,1);break;case F.NROUND_2:b6($,2);break;case F.NROUND_3:b6($,3);break;case F.WCVTF:zZ($);break;case F.DELTAP2:IQ($);break;case F.DELTAP3:vQ($);break;case F.DELTAC1:kQ($);break;case F.DELTAC2:CQ($);break;case F.DELTAC3:SQ($);break;case F.SROUND:qZ($);break;case F.S45ROUND:WZ($);break;case F.JROT:qQ($);break;case F.JROF:WQ($);break;case F.ROFF:KZ($);break;case F.RUTG:JZ($);break;case F.RDTG:ZZ($);break;case F.SANGW:$.stackTop--;break;case F.AA:$.stackTop--;break;case F.FLIPPT:RQ($);break;case F.FLIPRGON:TQ($);break;case F.FLIPRGOFF:PQ($);break;case F.SCANCTRL:_Z($);break;case F.SCANTYPE:NZ($);break;case F.MAX:l$($);break;case F.MIN:n$($);break;case F.GETINFO:XZ($);break;case F.IDEF:jQ($);break;case F.INSTCTRL:jZ($);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 K=$.codeRanges.get($.currentRange);if(K)$.code=K.code,$.codeSize=K.size;$.IP=Z.start}else $.error=`Unknown opcode 0x${Q.toString(16)}`}}function z8($,Q,Z){$.codeRanges.set(Q,{code:Z,size:Z.length})}function e9($,Q){let Z=$.codeRanges.get(Q);if(!Z)return;$.currentRange=Q,$.code=Z.code,$.codeSize=Z.size,$.IP=0,$.instructionCount=0,XU($)}function SZ($){e9($,1)}function hZ($){$.GS={...$.defaultGS},e9($,2),$.defaultGS={...$.GS}}function yZ($,Q){$.GS={...$.defaultGS},$.zp0=$.pts,$.zp1=$.pts,$.zp2=$.pts,z8($,3,Q),e9($,3)}function bZ($,Q=256,Z=64,J=64,K=16,q){let W=XQ(Q,Z,J,J,32,K);if(q)W.cvt=new Int32Array(q),W.cvtSize=q.length;return{ctx:W,unitsPerEM:$,fpgmExecuted:!1,currentPpem:0}}function mZ($,Q){z8($.ctx,1,Q)}function gZ($,Q){z8($.ctx,2,Q)}function wU($){if($.fpgmExecuted)return null;return $.ctx.error=null,SZ($.ctx),$.fpgmExecuted=!0,$.ctx.error}function uZ($,Q,Z){if(!$.fpgmExecuted){let J=wU($);if(J)return J}if($.currentPpem===Q)return null;return $.ctx.scale=Q*64/$.unitsPerEM,$.ctx.ppem=Q,$.ctx.pointSize=Z,GU($.ctx),$.ctx.error=null,hZ($.ctx),$.currentPpem=Q,$.ctx.error}function GU($){for(let Q=0;Q<$.cvtSize;Q++)$.cvt[Q]=Math.round($.cvt[Q]*$.scale)}function xZ($,Q){let Z=$.ctx,J=Q.xCoords.length,K=Q.contourEnds.length,q=J+4,W=q6(q,K);W.nPoints=q,W.nContours=K;for(let w=0;w<J;w++){let G=Math.round(Q.xCoords[w]*Z.scale),Y=Math.round(Q.yCoords[w]*Z.scale);W.org[w].x=G,W.org[w].y=Y,W.cur[w].x=G,W.cur[w].y=Y,W.orus[w].x=Q.xCoords[w],W.orus[w].y=Q.yCoords[w],W.tags[w]=Q.flags[w]}let U=1/0;for(let w=0;w<J;w++)if(Q.xCoords[w]<U)U=Q.xCoords[w];if(!Number.isFinite(U))U=0;let H=Q.lsb??0,_=Q.advanceWidth??0,N=Math.round((U-H)*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=U-H,W.orus[J].y=0,W.tags[J]=0;let j=Math.round((U-H+_)*Z.scale);W.org[J+1].x=j,W.org[J+1].y=0,W.cur[J+1].x=j,W.cur[J+1].y=0,W.orus[J+1].x=U-H+_,W.orus[J+1].y=0,W.tags[J+1]=0;for(let w=J+2;w<q;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<K;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)yZ(Z,Q.instructions);let X=Array(J),V=Array(J);for(let w=0;w<J;w++)X[w]=W.cur[w]?.x,V[w]=W.cur[w]?.y;return{xCoords:X,yCoords:V,flags:Q.flags,contourEnds:Q.contourEnds,error:Z.error}}function $0($){if($.length===0)return[];let Q=[];if($.some((J)=>J.cubic))return YU($);return zU($)}function YU($){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 K=$[Z];if(!K)break;if(K.onCurve)Q.push({type:"L",x:K.x,y:K.y}),Z++;else if(K.cubic){let q=K,W=$[Z+1],U=$[Z+2];if(!W||!U){Z++;continue}Q.push({type:"C",x1:q.x,y1:q.y,x2:W.x,y2:W.y,x:U.x,y:U.y}),Z+=3}else{let q=K,W=$[Z+1];if(!W){Z++;continue}let U;if(W.onCurve)U=W,Z+=2;else U={x:(q.x+W.x)/2,y:(q.y+W.y)/2,onCurve:!0},Z++;Q.push({type:"Q",x1:q.x,y1:q.y,x:U.x,y:U.y})}}return Q.push({type:"Z"}),Q}function zU($){if($.length===0)return[];let Q=[],Z=0;for(let[_,N]of $.entries())if(N.onCurve){Z=_;break}let J=$.every((_)=>!_.onCurve),K;if(J){let _=$[0],N=$[$.length-1];if(!_||!N)return[];K={x:(_.x+N.x)/2,y:(_.y+N.y)/2,onCurve:!0},Z=0}else{let _=$[Z];if(!_)return[];K=_}Q.push({type:"M",x:K.x,y:K.y});let q=$.length,W=J?0:(Z+1)%q,U=K,H=0;while(H<q){let _=$[W];if(!_)break;if(_.onCurve)Q.push({type:"L",x:_.x,y:_.y}),U=_;else{let N=(W+1)%q,j=$[N];if(!j)break;let X;if(j.onCurve)X=j,W=N,H++;else X={x:(_.x+j.x)/2,y:(_.y+j.y)/2,onCurve:!0};Q.push({type:"Q",x1:_.x,y1:_.y,x:X.x,y:X.y}),U=X}if(W=(W+1)%q,H++,U.x===K.x&&U.y===K.y)break}return Q.push({type:"Z"}),Q}function b1($,Q){let Z=$.getGlyphContours(Q);if(!Z)return null;let J=[];for(let q of Z)J.push(...$0(q));let K=$.getGlyphBounds(Q);return{commands:J,bounds:K}}function E8($,Q){let Z=Q?.scale??1,J=Q?.flipY??!0,K=[];for(let q of $.commands)switch(q.type){case"M":K.push(`M ${q.x*Z} ${J?-q.y*Z:q.y*Z}`);break;case"L":K.push(`L ${q.x*Z} ${J?-q.y*Z:q.y*Z}`);break;case"Q":K.push(`Q ${q.x1*Z} ${J?-q.y1*Z:q.y1*Z} ${q.x*Z} ${J?-q.y*Z:q.y*Z}`);break;case"C":K.push(`C ${q.x1*Z} ${J?-q.y1*Z:q.y1*Z} ${q.x2*Z} ${J?-q.y2*Z:q.y2*Z} ${q.x*Z} ${J?-q.y*Z:q.y*Z}`);break;case"Z":K.push("Z");break}return K.join(" ")}function A8($,Q,Z){let J=Z?.scale??1,K=Z?.flipY??!0,q=Z?.offsetX??0,W=Z?.offsetY??0;for(let U of Q.commands)switch(U.type){case"M":$.moveTo(U.x*J+q,(K?-U.y:U.y)*J+W);break;case"L":$.lineTo(U.x*J+q,(K?-U.y:U.y)*J+W);break;case"Q":$.quadraticCurveTo(U.x1*J+q,(K?-U.y1:U.y1)*J+W,U.x*J+q,(K?-U.y:U.y)*J+W);break;case"C":$.bezierCurveTo(U.x1*J+q,(K?-U.y1:U.y1)*J+W,U.x2*J+q,(K?-U.y2:U.y2)*J+W,U.x*J+q,(K?-U.y:U.y)*J+W);break;case"Z":$.closePath();break}}function EU($,Q,Z){let J=b1($,Q);if(!J)return null;let K=Z?.fontSize??100,q=Z?.fill??"currentColor",W=Z?.stroke,U=Z?.strokeWidth??1,H=K/$.unitsPerEm,_=J.bounds;if(!_)return null;let N=W?U/2:0,j=Math.ceil((_.xMax-_.xMin)*H+N*2),X=Math.ceil((_.yMax-_.yMin)*H+N*2),V=`${_.xMin-N} ${-_.yMax-N} ${_.xMax-_.xMin+N*2} ${_.yMax-_.yMin+N*2}`,w=E8(J,{flipY:!0,scale:1}),G=W?` stroke="${W}" stroke-width="${U}"`:"";return`<svg xmlns="http://www.w3.org/2000/svg" width="${j}" height="${X}" viewBox="${V}">
|
|
4
|
+
<path d="${w}" fill="${q}"${G}/>
|
|
5
|
+
</svg>`}function AU($,Q,Z,J){let K=J?.fontSize??16,q=J?.x??0,W=J?.y??0,U=J?.fill??"black",H=J?.stroke,_=J?.strokeWidth??1,N=K/Q.unitsPerEm;if($.fillStyle=U,H){if($.strokeStyle=H,$.lineWidth=_*N,J?.lineCap)$.lineCap=J.lineCap;if(J?.lineJoin)$.lineJoin=J.lineJoin}let j=q,X=W;for(let V of Z){let w=b1(Q,V.glyphId);if(w){if($.beginPath(),A8($,w,{scale:N,flipY:!0,offsetX:j+V.xOffset*N,offsetY:X-V.yOffset*N}),U!=="none")$.fill();if(H)$.stroke()}j+=V.xAdvance*N,X+=V.yAdvance*N}}function FU($,Q,Z){let J=Z?.fontSize??100,K=Z?.fill??"currentColor",q=Z?.stroke,W=Z?.strokeWidth??1,U=J/$.unitsPerEm,H=[],_=0,N=0,j=1/0,X=-1/0,V=1/0,w=-1/0;for(let L of Q){let O=b1($,L.glyphId);if(O?.bounds){let D=_+L.xOffset*U,C=N-L.yOffset*U,P=O.commands.map((u)=>{switch(u.type){case"M":case"L":return{type:u.type,x:u.x*U+D,y:-u.y*U+C};case"Q":return{type:"Q",x1:u.x1*U+D,y1:-u.y1*U+C,x:u.x*U+D,y:-u.y*U+C};case"C":return{type:"C",x1:u.x1*U+D,y1:-u.y1*U+C,x2:u.x2*U+D,y2:-u.y2*U+C,x:u.x*U+D,y:-u.y*U+C};case"Z":return{type:"Z"};default:return u}}),T=E8({commands:P,bounds:null},{flipY:!1,scale:1});H.push(T);let y=O.bounds;j=Math.min(j,D+y.xMin*U),X=Math.max(X,D+y.xMax*U),V=Math.min(V,C-y.yMax*U),w=Math.max(w,C-y.yMin*U)}_+=L.xAdvance*U,N+=L.yAdvance*U}if(H.length===0)return'<svg xmlns="http://www.w3.org/2000/svg"></svg>';let G=q?W/2:0,Y=Math.ceil(X-j+G*2),z=Math.ceil(w-V+G*2),E=`${Math.floor(j-G)} ${Math.floor(V-G)} ${Y} ${z}`,A=q?` stroke="${q}" stroke-width="${W}"${Z?.lineCap?` stroke-linecap="${Z.lineCap}"`:""}${Z?.lineJoin?` stroke-linejoin="${Z.lineJoin}"`:""}`:"";return`<svg xmlns="http://www.w3.org/2000/svg" width="${Y}" height="${z}" viewBox="${E}">
|
|
6
|
+
<path d="${H.join(" ")}" fill="${K}"${A}/>
|
|
7
|
+
</svg>`}function LU($){let Q=[];for(let[Z,J]of $.infos.entries()){let K=$.positions[Z];if(!K)continue;Q.push({glyphId:J.glyphId,xOffset:K.xOffset,yOffset:K.yOffset,xAdvance:K.xAdvance,yAdvance:K.yAdvance})}return Q}function Q0($,Q,Z){let J=$.getGlyphContoursWithVariation(Q,Z);if(!J)return null;let K=[];for(let W of J)K.push(...$0(W));let q=$.getGlyphBounds(Q);return{commands:K,bounds:q}}function DU($,Q,Z,J,K){let q=K?.fontSize??16,W=K?.x??0,U=K?.y??0,H=K?.fill??"black",_=K?.stroke,N=K?.strokeWidth??1,j=q/Q.unitsPerEm;if($.fillStyle=H,_){if($.strokeStyle=_,$.lineWidth=N*j,K?.lineCap)$.lineCap=K.lineCap;if(K?.lineJoin)$.lineJoin=K.lineJoin}let X=W,V=U;for(let w of Z){let G=Q0(Q,w.glyphId,J);if(G){if($.beginPath(),A8($,G,{scale:j,flipY:!0,offsetX:X+w.xOffset*j,offsetY:V-w.yOffset*j}),H!=="none")$.fill();if(_)$.stroke()}X+=w.xAdvance*j,V+=w.yAdvance*j}}function BU($,Q,Z,J){let K=J?.fontSize??100,q=J?.fill??"currentColor",W=J?.stroke,U=J?.strokeWidth??1,H=K/$.unitsPerEm,_=[],N=0,j=0,X=1/0,V=-1/0,w=1/0,G=-1/0;for(let O of Q){let D=Q0($,O.glyphId,Z);if(D?.bounds){let C=N+O.xOffset*H,P=j-O.yOffset*H,T=D.commands.map((I)=>{switch(I.type){case"M":case"L":return{type:I.type,x:I.x*H+C,y:-I.y*H+P};case"Q":return{type:"Q",x1:I.x1*H+C,y1:-I.y1*H+P,x:I.x*H+C,y:-I.y*H+P};case"C":return{type:"C",x1:I.x1*H+C,y1:-I.y1*H+P,x2:I.x2*H+C,y2:-I.y2*H+P,x:I.x*H+C,y:-I.y*H+P};case"Z":return{type:"Z"};default:return I}}),y=E8({commands:T,bounds:null},{flipY:!1,scale:1});_.push(y);let u=D.bounds;X=Math.min(X,C+u.xMin*H),V=Math.max(V,C+u.xMax*H),w=Math.min(w,P-u.yMax*H),G=Math.max(G,P-u.yMin*H)}N+=O.xAdvance*H,j+=O.yAdvance*H}if(_.length===0)return'<svg xmlns="http://www.w3.org/2000/svg"></svg>';let Y=W?U/2:0,z=Math.ceil(V-X+Y*2),E=Math.ceil(G-w+Y*2),A=`${Math.floor(X-Y)} ${Math.floor(w-Y)} ${z} ${E}`,L=W?` stroke="${W}" stroke-width="${U}"${J?.lineCap?` stroke-linecap="${J.lineCap}"`:""}${J?.lineJoin?` stroke-linejoin="${J.lineJoin}"`:""}`:"";return`<svg xmlns="http://www.w3.org/2000/svg" width="${z}" height="${E}" viewBox="${A}">
|
|
8
|
+
<path d="${_.join(" ")}" fill="${q}"${L}/>
|
|
9
|
+
</svg>`}function MU($,Q,Z){let J=Z/Q.unitsPerEm,K=0;for(let q of $)K+=q.xAdvance;return K*J}function RU($,Q){let Z=new Path2D;return A8(Z,$,Q),Z}var W1=8,J1=256;function f1($){return $>>8}function E6($){return $&255}function l1($){return $<0?-$:$}var TU=2048,fZ=2147483647;class F8 extends Error{constructor(){super("Cell pool overflow");this.name="PoolOverflowError"}}class Z0{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($=TU){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=fZ,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=fZ,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=f1($),J=f1(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,K=this.ycells[Z];while(K!==this.nullCellIndex){let U=this.pool[K];if(U.x===$)return K;if(U.x>$)break;J=K,K=U.next}if(this.freeIndex>=this.nullCellIndex)throw new F8;let q=this.freeIndex++,W=this.pool[q];if(W.x=$,W.area=0,W.cover=0,W.next=K,J===-1)this.ycells[Z]=q;else this.pool[J].next=q;return q}ensureYCellsCapacity($){if(this.ycells.length===0){this.bandMinY=Math.min($,0),this.bandMaxY=Math.max($+1,256);let Q=this.bandMaxY-this.bandMinY;this.ycells=Array(Q);for(let Z=0;Z<Q;Z++)this.ycells[Z]=this.nullCellIndex;return}if($<this.bandMinY){let Q=this.bandMinY-$,Z=Array(this.ycells.length+Q);for(let 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 K=Array(J);for(let q=0;q<Z;q++)K[q]=this.ycells[q];for(let q=Z;q<J;q++)K[q]=this.nullCellIndex;this.ycells=K}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 O1;((q)=>{q[q.Mono=0]="Mono";q[q.Gray=1]="Gray";q[q.LCD=2]="LCD";q[q.LCD_V=3]="LCD_V";q[q.RGBA=4]="RGBA"})(O1||={});var A6;((Z)=>{Z[Z.NonZero=0]="NonZero";Z[Z.EvenOdd=1]="EvenOdd"})(A6||={});function e($,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 K=Z===0?Math.ceil($/8):$*J;return{buffer:new Uint8Array(K*Q),width:$,rows:Q,pitch:K,pixelMode:Z,numGrays:Z===0?2:256}}function lZ($){$.buffer.fill(0)}var PU=32,nZ=16;class m6{cells;x=0;y=0;minX=0;minY=0;maxX=0;maxY=0;constructor(){this.cells=new Z0}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=f1(this.y),J=f1(Q);if(Z>=this.maxY&&J>=this.maxY||Z<this.minY&&J<this.minY)return;let K=E6(this.y),q=E6(Q);if(Z===J){this.renderScanline(Z,this.x,K,$,q);return}let W=$-this.x,U=Q-this.y;if(W===0){let w=f1(this.x),G=E6(this.x)*2,Y,z;if(U>0)Y=J1,z=1;else Y=0,z=-1;let E=Y-K;this.cells.setCurrentCell(this.x,Z<<W1),this.cells.addArea(E*G,E),Z+=z,this.cells.setCurrentCell(this.x,Z<<W1),E=Y+Y-J1;while(Z!==J)this.cells.addArea(E*G,E),Z+=z,this.cells.setCurrentCell(this.x,Z<<W1);E=q-J1+Y,this.cells.addArea(E*G,E);return}let H=this.x,_,N;if(U>0)N=J1,_=1;else N=0,_=-1;let j=N-K,X=this.mulDiv(W,j,l1(U)),V=H+X;if(this.renderScanline(Z,H,K,V,N),H=V,Z+=_,this.cells.setCurrentCell(H,Z<<W1),Z!==J){let w=this.mulDiv(W,J1,l1(U));j=N+N-J1;while(Z!==J)V=H+w,this.renderScanline(Z,H,J1-N,V,N),H=V,Z+=_,this.cells.setCurrentCell(H,Z<<W1)}j=q-J1+N,this.renderScanline(Z,H,J1-N,$,q)}renderScanline($,Q,Z,J,K){let q=f1(Q),W=f1(J);if(Z===K){this.cells.setCurrentCell(J,$<<W1);return}let U=E6(Q),H=E6(J);if(q===W){let Y=K-Z;this.cells.setCurrentCell(Q,$<<W1),this.cells.addArea(Y*(U+H),Y);return}let _=J-Q,N=K-Z,j,X;if(_>0)j=J1,X=1;else j=0,X=-1;let V=this.mulDiv(N,j-U,l1(_));this.cells.setCurrentCell(Q,$<<W1),this.cells.addArea(V*(U+j),V);let w=Z+V,G=q+X;if(this.cells.setCurrentCell(G<<W1,$<<W1),G!==W){let Y=this.mulDiv(N,J1,l1(_));while(G!==W)V=Y,this.cells.addArea(V*J1,V),w+=V,G+=X,this.cells.setCurrentCell(G<<W1,$<<W1)}V=K-w,this.cells.addArea(V*(H+J1-j),V)}mulDiv($,Q,Z){if(Z===0)return 0;return Math.trunc($*Q/Z)}conicTo($,Q,Z,J){let K=this.x,q=this.y,W=$-K,U=Q-q,H=Z-$,_=J-Q,N=Math.sqrt(W*W+U*U)+Math.sqrt(H*H+_*_),j=Math.max(4,Math.ceil(N/(J1*4)));for(let X=1;X<=j;X++){let V=X/j,w=1-V,G=Math.round(w*w*K+2*w*V*$+V*V*Z),Y=Math.round(w*w*q+2*w*V*Q+V*V*J);this.renderLine(G,Y),this.x=G,this.y=Y}this.x=Z,this.y=J}cubicTo($,Q,Z,J,K,q){this.subdivCubic(this.x,this.y,$,Q,Z,J,K,q,0),this.x=K,this.y=q}subdivCubic($,Q,Z,J,K,q,W,U,H){if(H>16){this.renderLine(W,U),this.x=W,this.y=U;return}let _=$+Z>>1,N=Q+J>>1,j=Z+K>>1,X=J+q>>1,V=K+W>>1,w=q+U>>1,G=_+j>>1,Y=N+X>>1,z=j+V>>1,E=X+w>>1,A=G+z>>1,L=Y+E>>1,O=W-$,D=U-Q,C=l1((Z-W)*D-(J-U)*O),P=l1((K-W)*D-(q-U)*O);if(C+P<=(J1>>1)*(l1(O)+l1(D))){this.renderLine(W,U),this.x=W,this.y=U;return}this.subdivCubic($,Q,_,N,G,Y,A,L,H+1),this.subdivCubic(A,L,z,E,V,w,W,U,H+1)}sweep($,Q=0){let Z=$.pitch,J=Z<0?($.rows-1)*-Z:0;for(let{y:K,cells:q}of this.cells.iterateCells()){if(K<0||K>=$.rows)continue;let W=0,U=0,H=Z<0?J-K*-Z:K*Z;for(let _ of q){if(_.x>U&&W!==0){let V=this.applyFillRule(W,Q);if(V>0){let w=Math.max(0,U),G=Math.min($.width,_.x);this.fillSpan($,H,w,G,V)}}let j=W*(J1*2)-_.area,X=this.applyFillRule(j>>W1+1,Q);if(X>0&&_.x>=0&&_.x<$.width)this.setPixel($,H,_.x,X);W+=_.cover,U=_.x+1}if(U<$.width&&W!==0){let _=this.applyFillRule(W,Q);if(_>0)this.fillSpan($,H,U,$.width,_)}}}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,K){if($.pixelMode===1)for(let q=Z;q<J;q++)$.buffer[Q+q]=K;else if($.pixelMode===0){if(K>=128)for(let q=Z;q<J;q++){let W=Q+(q>>3),U=7-(q&7);$.buffer[W]|=1<<U}}else if($.pixelMode===2)for(let q=Z;q<J;q++){let W=Q+q*3;$.buffer[W]=K,$.buffer[W+1]=K,$.buffer[W+2]=K}}setPixel($,Q,Z,J){if($.pixelMode===1)$.buffer[Q+Z]=J;else if($.pixelMode===0){if(J>=128){let K=Q+(Z>>3),q=7-(Z&7);$.buffer[K]|=1<<q}}else if($.pixelMode===2){let K=Q+Z*3;$.buffer[K]=J,$.buffer[K+1]=J,$.buffer[K+2]=J}}sweepSpans($,Q=0,Z){for(let{y:J,cells:K}of this.cells.iterateCells()){let q=[],W=0,U=-1;for(let H of K){if(W!==0&&H.x>U+1){let X=this.applyFillRule(W,Q);if(X>0)q.push({x:U+1,len:H.x-U-1,coverage:X})}let N=W*(J1*2)-H.area,j=this.applyFillRule(N>>W1+1,Q);if(j>0)q.push({x:H.x,len:1,coverage:j});W+=H.cover,U=H.x}if(q.length>0)$(J,q,Z)}}sweepDirect($,Q=0,Z=0,J=1/0,K){let q=[];for(let{y:W,cells:U}of this.cells.iterateCells()){let H=0,_=Z;for(let N of U){if(H!==0&&N.x>_){let w=this.applyFillRule(H,Q);if(w>0){if(q.push({x:_,len:N.x-_,coverage:w}),q.length>=nZ)$(W,q.splice(0,q.length),K)}}let X=H*(J1*2)-N.area,V=this.applyFillRule(X>>W1+1,Q);if(V>0&&N.x>=Z&&N.x<J){if(q.push({x:N.x,len:1,coverage:V}),q.length>=nZ)$(W,q.splice(0,q.length),K)}H+=N.cover,_=N.x+1}if(H!==0&&_<J){let N=this.applyFillRule(H,Q);if(N>0)q.push({x:_,len:Math.min(J,this.maxX+1)-_,coverage:N})}if(q.length>0)$(W,q.splice(0,q.length),K)}}renderWithBands($,Q,Z,J=0){let q=Z.maxY-Z.minY,W=Math.max(1,Math.floor(256));if(q<=W)W=q;let U=Z.minX??0,H=Z.maxX??$.width,_=[];for(let j=Z.minY;j<Z.maxY;j+=W)_.push({minY:j,maxY:Math.min(j+W,Z.maxY),minX:U,maxX:H});let N=0;while(_.length>0&&N<PU){let j=_.pop();if(!j)break;if(this.renderBandWithXClip($,Q,j.minY,j.maxY,j.minX,j.maxX,J))continue;let X=j.minX+j.maxX>>1;if(X>j.minX){_.push({minY:j.minY,maxY:j.maxY,minX:X,maxX:j.maxX}),_.push({minY:j.minY,maxY:j.maxY,minX:j.minX,maxX:X}),N++;continue}let V=j.minY+j.maxY>>1;if(V>j.minY){_.push({minY:V,maxY:j.maxY,minX:j.minX,maxX:j.maxX}),_.push({minY:j.minY,maxY:V,minX:j.minX,maxX:j.maxX}),N++;continue}console.warn(`Rasterizer: band overflow at (${j.minX},${j.minY}), cannot bisect further`)}}renderBandWithXClip($,Q,Z,J,K,q,W){this.cells.setBandBounds(Z,J),this.cells.reset(),this.minY=Z,this.maxY=J;try{return Q(),this.sweepBandWithXClip($,Z,J,K,q,W),!0}catch(U){if(U instanceof F8)return!1;throw U}}sweepBandWithXClip($,Q,Z,J,K,q){let W=$.pitch,U=W<0?($.rows-1)*-W:0;for(let H=Q;H<Z;H++){if(H<0||H>=$.rows)continue;let _=0,N=J,j=W<0?U-H*-W:H*W;for(let X of this.cells.iterateRowCells(H)){if(X.x<J){_+=X.cover;continue}if(X.x>=K){if(_!==0&&N<K){let Y=this.applyFillRule(_,q);if(Y>0)this.fillSpan($,j,Math.max(0,N),Math.min($.width,K),Y)}break}if(X.x>N&&_!==0){let Y=this.applyFillRule(_,q);if(Y>0){let z=Math.max(0,N),E=Math.min($.width,X.x);this.fillSpan($,j,z,E,Y)}}let w=_*(J1*2)-X.area,G=this.applyFillRule(w>>W1+1,q);if(G>0&&X.x>=0&&X.x<$.width)this.setPixel($,j,X.x,G);_+=X.cover,N=X.x+1}if(N<K&&N<$.width&&_!==0){let X=this.applyFillRule(_,q);if(X>0)this.fillSpan($,j,N,Math.min($.width,K),X)}}}}function L8($,Q,Z,J=0,K=0,q=!0){let W=0,U=0,H=!1;for(let _ of Q.commands)switch(_.type){case"M":{if(H)$.lineTo(W,U);let N=F1(_.x,Z,J),j=q?U6(_.y,Z,K):F1(_.y,Z,K);$.moveTo(N,j),W=N,U=j,H=!0;break}case"L":{let N=F1(_.x,Z,J),j=q?U6(_.y,Z,K):F1(_.y,Z,K);$.lineTo(N,j);break}case"Q":{let N=F1(_.x1,Z,J),j=q?U6(_.y1,Z,K):F1(_.y1,Z,K),X=F1(_.x,Z,J),V=q?U6(_.y,Z,K):F1(_.y,Z,K);$.conicTo(N,j,X,V);break}case"C":{let N=F1(_.x1,Z,J),j=q?U6(_.y1,Z,K):F1(_.y1,Z,K),X=F1(_.x2,Z,J),V=q?U6(_.y2,Z,K):F1(_.y2,Z,K),w=F1(_.x,Z,J),G=q?U6(_.y,Z,K):F1(_.y,Z,K);$.cubicTo(N,j,X,V,w,G);break}case"Z":{if(H)$.lineTo(W,U),H=!1;break}}if(H)$.lineTo(W,U)}function F1($,Q,Z){return Math.round(($*Q+Z)*J1)}function U6($,Q,Z){return Math.round((-$*Q+Z)*J1)}function dZ($,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 iZ($){if(!$.commands||$.commands.length===0)return null;let Q=1/0,Z=1/0,J=-1/0,K=-1/0,q=0,W=0,U=!1,H=(_,N)=>{Q=Math.min(Q,_),Z=Math.min(Z,N),J=Math.max(J,_),K=Math.max(K,N),U=!0};for(let _ of $.commands)switch(_.type){case"M":{q=_.x,W=_.y,H(q,W);break}case"L":{q=_.x,W=_.y,H(q,W);break}case"Q":{H(_.x,_.y);let N=J0(q,_.x1,_.x);for(let V of N){let w=g6(q,_.x1,_.x,V);H(w,W)}let j=J0(W,_.y1,_.y);for(let V of j){let w=g6(W,_.y1,_.y,V);H(q,w)}let X=new Set([...N,...j]);for(let V of X){let w=g6(q,_.x1,_.x,V),G=g6(W,_.y1,_.y,V);H(w,G)}q=_.x,W=_.y;break}case"C":{H(_.x,_.y);let N=K0(q,_.x1,_.x2,_.x);for(let V of N){let w=u6(q,_.x1,_.x2,_.x,V);H(w,W)}let j=K0(W,_.y1,_.y2,_.y);for(let V of j){let w=u6(W,_.y1,_.y2,_.y,V);H(q,w)}let X=new Set([...N,...j]);for(let V of X){let w=u6(q,_.x1,_.x2,_.x,V),G=u6(W,_.y1,_.y2,_.y,V);H(w,G)}q=_.x,W=_.y;break}case"Z":break}if(!U)return null;return{xMin:Q,yMin:Z,xMax:J,yMax:K}}function J0($,Q,Z){let J=$-2*Q+Z;if(Math.abs(J)<0.0000000001)return[];let K=($-Q)/J;if(K>0&&K<1)return[K];return[]}function K0($,Q,Z,J){let K=3*(J-3*Z+3*Q-$),q=6*(Z-2*Q+$),W=3*(Q-$),U=[];if(Math.abs(K)<0.0000000001){if(Math.abs(q)<0.0000000001)return[];let X=-W/q;if(X>0&&X<1)U.push(X);return U}let H=q*q-4*K*W;if(H<0)return[];if(Math.abs(H)<0.0000000001){let X=-q/(2*K);if(X>0&&X<1)U.push(X);return U}let _=Math.sqrt(H),N=(-q+_)/(2*K),j=(-q-_)/(2*K);if(N>0&&N<1)U.push(N);if(j>0&&j<1)U.push(j);return U}function g6($,Q,Z,J){let K=1-J;return K*K*$+2*K*J*Q+J*J*Z}function u6($,Q,Z,J,K){let q=1-K,W=q*q,U=K*K;return W*q*$+3*W*K*Q+3*q*U*Z+U*K*J}function pZ($,Q,Z){if(Q===0&&Z===0)return q0($);let J=e($.width,$.rows,$.pixelMode);if($.pixelMode===1)for(let K=0;K<$.rows;K++)for(let q=0;q<$.width;q++){let W=0;for(let U=-Math.floor(Z);U<=Math.ceil(Z);U++)for(let H=-Math.floor(Q);H<=Math.ceil(Q);H++){let _=q+H,N=K+U;if(_>=0&&_<$.width&&N>=0&&N<$.rows){let j=$.buffer[N*$.pitch+_]??0;W=Math.max(W,j)}}J.buffer[K*J.pitch+q]=W}else if($.pixelMode===0)for(let K=0;K<$.rows;K++)for(let q=0;q<$.width;q++){let W=!1;for(let U=-Math.floor(Z);U<=Math.ceil(Z);U++){for(let H=-Math.floor(Q);H<=Math.ceil(Q);H++){let _=q+H,N=K+U;if(_>=0&&_<$.width&&N>=0&&N<$.rows){let j=N*$.pitch+(_>>3),X=7-(_&7);if(($.buffer[j]??0)>>X&1){W=!0;break}}}if(W)break}if(W){let U=K*J.pitch+(q>>3),H=7-(q&7);J.buffer[U]|=1<<H}}else if($.pixelMode===2||$.pixelMode===3)for(let K=0;K<$.rows;K++)for(let q=0;q<$.width;q++){let W=0,U=0,H=0;for(let N=-Math.floor(Z);N<=Math.ceil(Z);N++)for(let j=-Math.floor(Q);j<=Math.ceil(Q);j++){let X=q+j,V=K+N;if(X>=0&&X<$.width&&V>=0&&V<$.rows){let w=V*$.pitch+X*3;W=Math.max(W,$.buffer[w]??0),U=Math.max(U,$.buffer[w+1]??0),H=Math.max(H,$.buffer[w+2]??0)}}let _=K*J.pitch+q*3;J.buffer[_]=W,J.buffer[_+1]=U,J.buffer[_+2]=H}return J}function x6($,Q){if($.pixelMode===Q)return $;let Z=e($.width,$.rows,Q);if($.pixelMode===1&&Q===0){for(let J=0;J<$.rows;J++)for(let K=0;K<$.width;K++)if(($.buffer[J*$.pitch+K]??0)>=128){let W=J*Z.pitch+(K>>3),U=7-(K&7);Z.buffer[W]|=1<<U}}else if($.pixelMode===0&&Q===1)for(let J=0;J<$.rows;J++)for(let K=0;K<$.width;K++){let q=J*$.pitch+(K>>3),W=7-(K&7),U=($.buffer[q]??0)>>W&1;Z.buffer[J*Z.pitch+K]=U?255:0}else if($.pixelMode===1&&Q===2)for(let J=0;J<$.rows;J++)for(let K=0;K<$.width;K++){let q=$.buffer[J*$.pitch+K]??0,W=J*Z.pitch+K*3;Z.buffer[W]=q,Z.buffer[W+1]=q,Z.buffer[W+2]=q}else if($.pixelMode===0&&Q===2)for(let J=0;J<$.rows;J++)for(let K=0;K<$.width;K++){let q=J*$.pitch+(K>>3),W=7-(K&7),H=($.buffer[q]??0)>>W&1?255:0,_=J*Z.pitch+K*3;Z.buffer[_]=H,Z.buffer[_+1]=H,Z.buffer[_+2]=H}else if($.pixelMode===1&&Q===3)for(let J=0;J<$.rows;J++)for(let K=0;K<$.width;K++){let q=$.buffer[J*$.pitch+K]??0,W=J*Z.pitch+K*3;Z.buffer[W]=q,Z.buffer[W+1]=q,Z.buffer[W+2]=q}else if($.pixelMode===2&&Q===1)for(let J=0;J<$.rows;J++)for(let K=0;K<$.width;K++){let q=J*$.pitch+K*3,W=$.buffer[q]??0,U=$.buffer[q+1]??0,H=$.buffer[q+2]??0;Z.buffer[J*Z.pitch+K]=Math.floor((W+U+H)/3)}return Z}function oZ($,Q,Z,J,K){if($.pixelMode!==1||Q.pixelMode!==1)return;K=Math.max(0,Math.min(1,K));let q=Math.max(0,-Z),W=Math.max(0,-J),U=Math.min(Q.width,$.width-Z),H=Math.min(Q.rows,$.rows-J);for(let _=W;_<H;_++)for(let N=q;N<U;N++){let j=Z+N,X=J+_;if(j>=0&&j<$.width&&X>=0&&X<$.rows){let V=Q.buffer[_*Q.pitch+N]??0,G=($.buffer[X*$.pitch+j]??0)+V*K;$.buffer[X*$.pitch+j]=Math.min(255,Math.floor(G))}}}function q0($){return{buffer:new Uint8Array($.buffer),width:$.width,rows:$.rows,pitch:$.pitch,pixelMode:$.pixelMode,numGrays:$.numGrays}}function cZ($,Q,Z){let J=e(Q,Z,$.pixelMode),K=$.width/Q,q=$.rows/Z;if($.pixelMode===1)for(let W=0;W<Z;W++)for(let U=0;U<Q;U++){let H=Math.floor(U*K),_=Math.floor(W*q);J.buffer[W*J.pitch+U]=$.buffer[_*$.pitch+H]??0}else if($.pixelMode===0)for(let W=0;W<Z;W++)for(let U=0;U<Q;U++){let H=Math.floor(U*K),N=Math.floor(W*q)*$.pitch+(H>>3),j=7-(H&7);if(($.buffer[N]??0)>>j&1){let V=W*J.pitch+(U>>3),w=7-(U&7);J.buffer[V]|=1<<w}}else if($.pixelMode===2||$.pixelMode===3)for(let W=0;W<Z;W++)for(let U=0;U<Q;U++){let H=Math.floor(U*K),N=Math.floor(W*q)*$.pitch+H*3,j=W*J.pitch+U*3;J.buffer[j]=$.buffer[N]??0,J.buffer[j+1]=$.buffer[N+1]??0,J.buffer[j+2]=$.buffer[N+2]??0}return J}function OU($,Q,Z=0,J=0){if($.pixelMode!==1||Q.pixelMode!==1)return;let K=Math.max(0,-Z),q=Math.max(0,-J),W=Math.min(Q.width,$.width-Z),U=Math.min(Q.rows,$.rows-J);for(let H=q;H<U;H++){let _=J+H;if(_<0||_>=$.rows)continue;for(let N=K;N<W;N++){let j=Z+N;if(j<0||j>=$.width)continue;let X=Q.buffer[H*Q.pitch+N]??0,V=$.buffer[_*$.pitch+j]??0;$.buffer[_*$.pitch+j]=Math.min(255,X+V)}}}function IU($,Q,Z=0,J=0){if($.pixelMode!==1||Q.pixelMode!==1)return;let K=Math.max(0,-Z),q=Math.max(0,-J),W=Math.min(Q.width,$.width-Z),U=Math.min(Q.rows,$.rows-J);for(let H=q;H<U;H++){let _=J+H;if(_<0||_>=$.rows)continue;for(let N=K;N<W;N++){let j=Z+N;if(j<0||j>=$.width)continue;let X=Q.buffer[H*Q.pitch+N]??0,V=$.buffer[_*$.pitch+j]??0;$.buffer[_*$.pitch+j]=Math.floor((X*V+127)/255)}}}function vU($,Q,Z=0,J=0){if($.pixelMode!==1||Q.pixelMode!==1)return;let K=Math.max(0,-Z),q=Math.max(0,-J),W=Math.min(Q.width,$.width-Z),U=Math.min(Q.rows,$.rows-J);for(let H=q;H<U;H++){let _=J+H;if(_<0||_>=$.rows)continue;for(let N=K;N<W;N++){let j=Z+N;if(j<0||j>=$.width)continue;let X=Q.buffer[H*Q.pitch+N]??0,V=$.buffer[_*$.pitch+j]??0;$.buffer[_*$.pitch+j]=Math.max(0,V-X)}}}function kU($,Q,Z=0,J=0){if($.pixelMode!==1||Q.pixelMode!==1)return;let K=Math.max(0,-Z),q=Math.max(0,-J),W=Math.min(Q.width,$.width-Z),U=Math.min(Q.rows,$.rows-J);for(let H=q;H<U;H++){let _=J+H;if(_<0||_>=$.rows)continue;for(let N=K;N<W;N++){let j=Z+N;if(j<0||j>=$.width)continue;let X=Q.buffer[H*Q.pitch+N]??0,V=$.buffer[_*$.pitch+j]??0,w=X+Math.floor((V*(255-X)+127)/255);$.buffer[_*$.pitch+j]=Math.min(255,w)}}}function CU($,Q,Z){let J=e($.width,$.rows,$.pixelMode);if($.pixelMode===1)for(let K=0;K<$.rows;K++){let q=K-Z;if(q<0||q>=$.rows)continue;for(let W=0;W<$.width;W++){let U=W-Q;if(U<0||U>=$.width)continue;J.buffer[K*J.pitch+W]=$.buffer[q*$.pitch+U]??0}}else if($.pixelMode===0)for(let K=0;K<$.rows;K++){let q=K-Z;if(q<0||q>=$.rows)continue;for(let W=0;W<$.width;W++){let U=W-Q;if(U<0||U>=$.width)continue;let H=q*$.pitch+(U>>3),_=7-(U&7);if(($.buffer[H]??0)>>_&1){let j=K*J.pitch+(W>>3),X=7-(W&7);J.buffer[j]|=1<<X}}}else if($.pixelMode===2||$.pixelMode===3)for(let K=0;K<$.rows;K++){let q=K-Z;if(q<0||q>=$.rows)continue;for(let W=0;W<$.width;W++){let U=W-Q;if(U<0||U>=$.width)continue;let H=q*$.pitch+U*3,_=K*J.pitch+W*3;J.buffer[_]=$.buffer[H]??0,J.buffer[_+1]=$.buffer[H+1]??0,J.buffer[_+2]=$.buffer[H+2]??0}}return J}function SU($,Q,Z=0,J=0,K=128){if($.pixelMode!==1||Q.pixelMode!==1)return;let q=Math.max(0,-Z),W=Math.max(0,-J),U=Math.min(Q.width,$.width-Z),H=Math.min(Q.rows,$.rows-J);for(let _=W;_<H;_++){let N=J+_;if(N<0||N>=$.rows)continue;for(let j=q;j<U;j++){let X=Z+j;if(X<0||X>=$.width)continue;if((Q.buffer[_*Q.pitch+j]??0)>=K)$.buffer[N*$.pitch+X]=0}}}function hU($,Q,Z=0,J=0){if($.pixelMode!==1||Q.pixelMode!==1)return;let K=Math.max(0,-Z),q=Math.max(0,-J),W=Math.min(Q.width,$.width-Z),U=Math.min(Q.rows,$.rows-J);for(let H=q;H<U;H++){let _=J+H;if(_<0||_>=$.rows)continue;for(let N=K;N<W;N++){let j=Z+N;if(j<0||j>=$.width)continue;let X=Q.buffer[H*Q.pitch+N]??0,V=$.buffer[_*$.pitch+j]??0;$.buffer[_*$.pitch+j]=Math.max(X,V)}}}function yU($,Q,Z,J,K){let q=$.width+Q+J,W=$.rows+Z+K,U=e(q,W,$.pixelMode);if($.pixelMode===1)for(let H=0;H<$.rows;H++)for(let _=0;_<$.width;_++)U.buffer[(H+Z)*U.pitch+(_+Q)]=$.buffer[H*$.pitch+_]??0;else if($.pixelMode===2||$.pixelMode===3)for(let H=0;H<$.rows;H++)for(let _=0;_<$.width;_++){let N=H*$.pitch+_*3,j=(H+Z)*U.pitch+(_+Q)*3;U.buffer[j]=$.buffer[N]??0,U.buffer[j+1]=$.buffer[N+1]??0,U.buffer[j+2]=$.buffer[N+2]??0}return U}function bU($,Q,Z,J){let{width:W,rows:U}=$,H=Z,_=J,N=Z+Q.width,j=J+Q.rows,X=Math.min(0,H),V=Math.min(0,_),w=Math.max(W,N),G=Math.max(U,j),Y=w-X,z=G-V,E=e(Y,z,$.pixelMode),A=0-X,L=0-V,O=H-X,D=_-V;if($.pixelMode===1)for(let C=0;C<$.rows;C++)for(let P=0;P<$.width;P++)E.buffer[(C+L)*E.pitch+(P+A)]=$.buffer[C*$.pitch+P]??0;return{expanded:E,dstOffsetX:A,dstOffsetY:L,srcOffsetX:O,srcOffsetY:D}}function W0($){if($<=0)return new Float32Array([1]);let Q=$,Z=Math.ceil($*2)*2+1,J=new Float32Array(Z),K=Math.floor(Z/2),q=0;for(let W=0;W<Z;W++){let U=W-K,H=Math.exp(-(U*U)/(2*Q*Q));J[W]=H,q+=H}for(let W=0;W<Z;W++)J[W]/=q;return J}function mU($,Q,Z,J,K,q,W,U){let H=Math.floor(W.length/2);for(let _=0;_<J;_++)for(let N=0;N<Z;N++)for(let j=0;j<U;j++){let X=0;for(let w=0;w<W.length;w++){let G=N+w-H,Y=Math.max(0,Math.min(Z-1,G)),z=_*K+Y*U+j;X+=($[z]??0)*W[w]}let V=_*q+N*U+j;Q[V]=Math.min(255,Math.max(0,Math.round(X)))}}function gU($,Q,Z,J,K,q,W,U){let H=Math.floor(W.length/2);for(let _=0;_<J;_++)for(let N=0;N<Z;N++)for(let j=0;j<U;j++){let X=0;for(let w=0;w<W.length;w++){let G=_+w-H,z=Math.max(0,Math.min(J-1,G))*K+N*U+j;X+=($[z]??0)*W[w]}let V=_*q+N*U+j;Q[V]=Math.min(255,Math.max(0,Math.round(X)))}}function H6($,Q){if($.pixelMode===0){let q=x6($,1);return H6(q,Q)}if(Q<=0)return $;let Z=W0(Q),J=1;if($.pixelMode===2||$.pixelMode===3)J=3;else if($.pixelMode===4)J=4;let K=new Uint8Array($.buffer.length);return mU($.buffer,K,$.width,$.rows,$.pitch,$.pitch,Z,J),gU(K,$.buffer,$.width,$.rows,$.pitch,$.pitch,Z,J),$}function D8($,Q){if($.pixelMode===0){let W=x6($,1);return D8(W,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),K=J*2+1,q=new Uint8Array($.buffer.length);for(let W=0;W<$.rows;W++)for(let U=0;U<Z;U++){let H=0,_=0;for(let j=-J;j<=J;j++)if(j>=0&&j<$.width){let X=W*$.pitch+j*Z+U;H+=$.buffer[X]??0,_++}let N=W*$.pitch+0*Z+U;q[N]=Math.round(H/_);for(let j=1;j<$.width;j++){let X=j-J-1;if(X>=0){let G=W*$.pitch+X*Z+U;H-=$.buffer[G]??0,_--}let V=j+J;if(V<$.width){let G=W*$.pitch+V*Z+U;H+=$.buffer[G]??0,_++}let w=W*$.pitch+j*Z+U;q[w]=Math.round(H/_)}}for(let W=0;W<$.width;W++)for(let U=0;U<Z;U++){let H=0,_=0;for(let j=-J;j<=J;j++)if(j>=0&&j<$.rows){let X=j*$.pitch+W*Z+U;H+=q[X]??0,_++}let N=0*$.pitch+W*Z+U;$.buffer[N]=Math.round(H/_);for(let j=1;j<$.rows;j++){let X=j-J-1;if(X>=0){let G=X*$.pitch+W*Z+U;H-=q[G]??0,_--}let V=j+J;if(V<$.rows){let G=V*$.pitch+W*Z+U;H+=q[G]??0,_++}let w=j*$.pitch+W*Z+U;$.buffer[w]=Math.round(H/_)}}return $}function sZ($,Q,Z="gaussian"){if(Z==="box")return D8($,Q);else return H6($,Q)}function uU($,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 B8($,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 q=$.x1-$.x0,W=$.y1-$.y0,U=q*q+W*W;if(U===0)return $.stops[0].color;let H=Q-$.x0,_=Z-$.y0;J=(H*q+_*W)/U}else{let q=Q-$.cx,W=Z-$.cy,U=Math.sqrt(q*q+W*W);J=$.radius>0?U/$.radius:0}J=Math.max(0,Math.min(1,J));let K=[...$.stops].sort((q,W)=>q.offset-W.offset);if(J<=K[0].offset)return K[0].color;if(J>=K[K.length-1].offset)return K[K.length-1].color;for(let q=0;q<K.length-1;q++){let W=K[q],U=K[q+1];if(J>=W.offset&&J<=U.offset){let H=U.offset-W.offset;if(H===0)return U.color;let _=(J-W.offset)/H;return uU(W.color,U.color,_)}}return K[K.length-1].color}function aZ($,Q,Z){let J=e($,Q,4);for(let K=0;K<Q;K++)for(let q=0;q<$;q++){let W=B8(Z,q,K),U=(K*$+q)*4;J.buffer[U]=W[0],J.buffer[U+1]=W[1],J.buffer[U+2]=W[2],J.buffer[U+3]=W[3]}return J}function rZ($,Q,Z){let{width:J,height:K}=Z,q=M8($,{...Z,pixelMode:1,flipY:Z.flipY??!1}),W=e(J,K,4);for(let U=0;U<K;U++)for(let H=0;H<J;H++){let _=q.buffer[U*q.pitch+H]??0;if(_>0){let N=B8(Q,H,U),j=(U*J+H)*4,X=N[3]*_/255;W.buffer[j]=N[0],W.buffer[j+1]=N[1],W.buffer[j+2]=N[2],W.buffer[j+3]=Math.round(X)}}return W}function tZ($,Q){let{width:Z,height:J,scale:K,offsetX:q=0,offsetY:W=0,flipY:U=!1,spread:H=8}=Q,_=e(Z,J,1),N=xU($,K,q,W,U);if(N.length===0)return _.buffer.fill(0),_;for(let j=0;j<J;j++)for(let X=0;X<Z;X++){let V=X+0.5,w=j+0.5,G=1/0;for(let L of N){let O=fU(V,w,L);G=Math.min(G,O)}let E=128+(iU(V,w,N)?G:-G)/H*127,A=Math.max(0,Math.min(255,Math.round(E)));_.buffer[j*_.pitch+X]=A}return _}function xU($,Q,Z,J,K){let q=[],W=null,U=null,H=(_,N)=>({x:_*Q+Z,y:K?-(N*Q)+J:N*Q+J});for(let _ of $.commands)switch(_.type){case"M":W=H(_.x,_.y),U=W;break;case"L":if(W){let N=H(_.x,_.y);q.push({type:"line",p0:W,p1:N}),W=N}break;case"Q":if(W){let N=H(_.x1,_.y1),j=H(_.x,_.y);q.push({type:"quadratic",p0:W,p1:N,p2:j}),W=j}break;case"C":if(W){let N=H(_.x1,_.y1),j=H(_.x2,_.y2),X=H(_.x,_.y);q.push({type:"cubic",p0:W,p1:N,p2:j,p3:X}),W=X}break;case"Z":if(W&&U){if(Math.abs(W.x-U.x)>0.001||Math.abs(W.y-U.y)>0.001)q.push({type:"line",p0:W,p1:U});W=U}break}return q}function fU($,Q,Z){switch(Z.type){case"line":return lU($,Q,Z.p0,Z.p1);case"quadratic":return nU($,Q,Z.p0,Z.p1,Z.p2);case"cubic":return dU($,Q,Z.p0,Z.p1,Z.p2,Z.p3)}}function lU($,Q,Z,J){let K=J.x-Z.x,q=J.y-Z.y,W=K*K+q*q;if(W<0.0001){let X=$-Z.x,V=Q-Z.y;return Math.sqrt(X*X+V*V)}let U=(($-Z.x)*K+(Q-Z.y)*q)/W;U=Math.max(0,Math.min(1,U));let H=Z.x+U*K,_=Z.y+U*q,N=$-H,j=Q-_;return Math.sqrt(N*N+j*j)}function nU($,Q,Z,J,K){let q=1/0,W=32;for(let U=0;U<=W;U++){let H=U/W,_=1-H,N=_*_*Z.x+2*_*H*J.x+H*H*K.x,j=_*_*Z.y+2*_*H*J.y+H*H*K.y,X=$-N,V=Q-j,w=Math.sqrt(X*X+V*V);q=Math.min(q,w)}return q}function dU($,Q,Z,J,K,q){let W=1/0,U=32;for(let H=0;H<=U;H++){let _=H/U,N=1-_,j=N*N*N*Z.x+3*N*N*_*J.x+3*N*_*_*K.x+_*_*_*q.x,X=N*N*N*Z.y+3*N*N*_*J.y+3*N*_*_*K.y+_*_*_*q.y,V=$-j,w=Q-X,G=Math.sqrt(V*V+w*w);W=Math.min(W,G)}return W}function iU($,Q,Z){let J=0;for(let K of Z){let q=pU(K);for(let W=0;W<q.length-1;W++){let U=q[W],H=q[W+1];if(!U||!H)continue;if(U.y>Q!==H.y>Q){let _=(H.x-U.x)/(H.y-U.y),N=U.x+_*(Q-U.y);if($<N)J++}}}return(J&1)===1}function pU($){switch($.type){case"line":return[$.p0,$.p1];case"quadratic":{let Q=[$.p0],Z=16;for(let J=1;J<=16;J++){let K=J/16,q=1-K;Q.push({x:q*q*$.p0.x+2*q*K*$.p1.x+K*K*$.p2.x,y:q*q*$.p0.y+2*q*K*$.p1.y+K*K*$.p2.y})}return Q}case"cubic":{let Q=[$.p0],Z=16;for(let J=1;J<=16;J++){let K=J/16,q=1-K;Q.push({x:q*q*q*$.p0.x+3*q*q*K*$.p1.x+3*q*K*K*$.p2.x+K*K*K*$.p3.x,y:q*q*q*$.p0.y+3*q*q*K*$.p1.y+3*q*K*K*$.p2.y+K*K*K*$.p3.y})}return Q}}}function U0($){let Q=Math.sqrt($.x*$.x+$.y*$.y);if(Q===0)return{x:0,y:0};return{x:$.x/Q,y:$.y/Q}}function I1($){return{x:-$.y,y:$.x}}function oU($,Q){let Z=$.x*Q.x+$.y*Q.y,J=$.x*Q.y-$.y*Q.x;return Math.atan2(J,Z)}function eZ($,Q,Z,J,K){let q=I1(Z),W={x:Q.x+q.x*J*(K?1:-1),y:Q.y+q.y*J*(K?1:-1)},U={x:Q.x-q.x*J*(K?1:-1),y:Q.y-q.y*J*(K?1:-1)},H={x:Q.x+Z.x*J,y:Q.y+Z.y*J},_={x:W.x+Z.x*J*0.5523,y:W.y+Z.y*J*0.5523},N={x:U.x+Z.x*J*0.5523,y:U.y+Z.y*J*0.5523};$.push({type:"Q",x1:_.x,y1:_.y,x:H.x,y:H.y}),$.push({type:"Q",x1:N.x,y1:N.y,x:U.x,y:U.y})}function $J($,Q,Z,J){let K=I1(Z),q={x:Q.x+Z.x*J,y:Q.y+Z.y*J},W={x:q.x+K.x*J,y:q.y+K.y*J},U={x:q.x-K.x*J,y:q.y-K.y*J};$.push({type:"L",x:W.x,y:W.y}),$.push({type:"L",x:U.x,y:U.y})}function R8($,Q,Z,J,K,q,W,U){let H=oU(Z,J),_=U?H<0:H>0;if(Math.abs(H)<0.01)return;let N=I1(Z),j=I1(J),X=U?1:-1,V={x:Q.x+N.x*K*X,y:Q.y+N.y*K*X},w={x:Q.x+j.x*K*X,y:Q.y+j.y*K*X};if(!_){$.push({type:"L",x:w.x,y:w.y});return}switch(q){case"round":{let G=Math.abs(H),Y=Math.max(2,Math.ceil(G/(Math.PI/4)));for(let z=1;z<=Y;z++){let E=z/Y,A=Math.atan2(N.y,N.x)+H*E*X,L=Q.x+Math.cos(A)*K*X,O=Q.y+Math.sin(A)*K*X;$.push({type:"L",x:L,y:O})}break}case"miter":{if(1/Math.sin(Math.abs(H)/2)<=W){let Y=H/2,z=U0({x:Z.x+J.x,y:Z.y+J.y}),E=K/Math.cos(Y),A={x:Q.x+z.x*E*X,y:Q.y+z.y*E*X};$.push({type:"L",x:A.x,y:A.y}),$.push({type:"L",x:w.x,y:w.y})}else $.push({type:"L",x:w.x,y:w.y});break}default:$.push({type:"L",x:w.x,y:w.y});break}}function cU($,Q){if($.length<2)return[];let{width:Z,lineJoin:J,miterLimit:K}=Q,q=Z/2,W=[],U=$.length,H=[];for(let Y=0;Y<U;Y++){let z=$[Y],E=$[(Y+1)%U];if(!z||!E)continue;H.push(U0({x:E.x-z.x,y:E.y-z.y}))}let _=H[0],N=$[0];if(!_||!N)return[];let j=I1(_);W.push({type:"M",x:N.x+j.x*q,y:N.y+j.y*q});for(let Y=0;Y<U;Y++){let z=$[Y],E=$[(Y+1)%U],A=H[Y],L=H[(Y+1)%U];if(!z||!E||!A||!L)continue;let O=I1(A);W.push({type:"L",x:E.x+O.x*q,y:E.y+O.y*q}),R8(W,E,A,L,q,J,K,!0)}W.push({type:"Z"});let X=U-1,V=H[X],w=$[0];if(!V||!w)return W;let G=I1(_);W.push({type:"M",x:N.x-G.x*q,y:N.y-G.y*q});for(let Y=0;Y<U;Y++){let z=$[Y],E=$[(Y+1)%U],A=H[Y],L=H[(Y+1)%U];if(!z||!E||!A||!L)continue;let O=I1(A);W.push({type:"L",x:E.x-O.x*q,y:E.y-O.y*q}),R8(W,E,A,L,q,J,K,!1)}return W.push({type:"Z"}),W}function sU($,Q){if($.length<2)return[];let{width:Z,lineCap:J,lineJoin:K,miterLimit:q}=Q,W=Z/2,U=[],H=$.length,_=[];for(let z=0;z<H-1;z++){let E=$[z],A=$[z+1];if(!E||!A)continue;_.push(U0({x:A.x-E.x,y:A.y-E.y}))}let N=$[0],j=$[H-1],X=_[0],V=_[_.length-1];if(!N||!j||!X||!V)return[];let w=I1(X);U.push({type:"M",x:N.x+w.x*W,y:N.y+w.y*W});for(let z=0;z<H-1;z++){let E=$[z+1],A=_[z],L=_[z+1];if(!E||!A)continue;let O=I1(A);if(U.push({type:"L",x:E.x+O.x*W,y:E.y+O.y*W}),L)R8(U,E,A,L,W,K,q,!0)}let G={x:-V.x,y:-V.y};switch(J){case"round":eZ(U,j,V,W,!0);break;case"square":$J(U,j,V,W);break;default:{let z=I1(V);U.push({type:"L",x:j.x-z.x*W,y:j.y-z.y*W});break}}for(let z=H-2;z>=0;z--){let E=$[z],A=_[z],L=_[z-1];if(!E||!A)continue;let O=I1(A);if(U.push({type:"L",x:E.x-O.x*W,y:E.y-O.y*W}),L)R8(U,E,{x:-A.x,y:-A.y},{x:-L.x,y:-L.y},W,K,q,!0)}let Y={x:-X.x,y:-X.y};switch(J){case"round":eZ(U,N,Y,W,!0);break;case"square":$J(U,N,Y,W);break;default:break}return U.push({type:"Z"}),U}function aU($){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 K=Z[Z.length-1];if(K)for(let W=1;W<=8;W++){let U=W/8,H=1-U,_=H*H*K.x+2*H*U*J.x1+U*U*J.x,N=H*H*K.y+2*H*U*J.y1+U*U*J.y;Z.push({x:_,y:N})}break}case"C":{let K=Z[Z.length-1];if(K)for(let W=1;W<=12;W++){let U=W/12,H=1-U,_=H*H*H*K.x+3*H*H*U*J.x1+3*H*U*U*J.x2+U*U*U*J.x,N=H*H*H*K.y+3*H*H*U*J.y1+3*H*U*U*J.y2+U*U*U*J.y;Z.push({x:_,y:N})}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 QJ($,Q){let Z={width:Q.width,lineCap:Q.lineCap??"butt",lineJoin:Q.lineJoin??"miter",miterLimit:Q.miterLimit??4},J=aU($),K=[];for(let W of J){if(W.points.length<2)continue;let U=W.closed?cU(W.points,Z):sU(W.points,Z);K.push(...U)}let q=$.bounds;if(q){let W=Z.width/2;q={xMin:q.xMin-W,yMin:q.yMin-W,xMax:q.xMax+W,yMax:q.yMax+W}}return{commands:K,bounds:q}}function ZJ($,Q){let Z=[];for(let K of $.commands)switch(K.type){case"M":case"L":Z.push({type:K.type,x:K.x+K.y*Q,y:K.y});break;case"Q":Z.push({type:"Q",x1:K.x1+K.y1*Q,y1:K.y1,x:K.x+K.y*Q,y:K.y});break;case"C":Z.push({type:"C",x1:K.x1+K.y1*Q,y1:K.y1,x2:K.x2+K.y2*Q,y2:K.y2,x:K.x+K.y*Q,y:K.y});break;case"Z":Z.push({type:"Z"});break}let J=$.bounds;if(J){let K=J.xMin+J.yMin*Q,q=J.xMax+J.yMax*Q;J={xMin:Math.min(K,J.xMin+J.yMax*Q),yMin:J.yMin,xMax:Math.max(q,J.xMax+J.yMin*Q),yMax:J.yMax}}return{commands:Z,bounds:J,flags:$.flags}}function JJ($,Q){let Z=[];for(let K of $.commands)switch(K.type){case"M":case"L":Z.push({type:K.type,x:K.x*Q,y:K.y});break;case"Q":Z.push({type:"Q",x1:K.x1*Q,y1:K.y1,x:K.x*Q,y:K.y});break;case"C":Z.push({type:"C",x1:K.x1*Q,y1:K.y1,x2:K.x2*Q,y2:K.y2,x:K.x*Q,y:K.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 KJ($,Q){if(Q===0)return{...$,commands:[...$.commands]};let Z=rU($),J=[];for(let q of Z){if(q.length<3)continue;let W=tU(q,Q);if(W.length>0){J.push({type:"M",x:W[0].x,y:W[0].y});for(let U=1;U<W.length;U++)J.push({type:"L",x:W[U].x,y:W[U].y});J.push({type:"Z"})}}let K=null;if(J.length>0){let q=1/0,W=1/0,U=-1/0,H=-1/0;for(let _ of J)if(_.type==="M"||_.type==="L")q=Math.min(q,_.x),W=Math.min(W,_.y),U=Math.max(U,_.x),H=Math.max(H,_.y);if(Number.isFinite(q))K={xMin:q,yMin:W,xMax:U,yMax:H}}return{commands:J,bounds:K,flags:$.flags}}function rU($){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 K=Z[Z.length-1];if(K)for(let W=1;W<=8;W++){let U=W/8,H=1-U,_=H*H*K.x+2*H*U*J.x1+U*U*J.x,N=H*H*K.y+2*H*U*J.y1+U*U*J.y;Z.push({x:_,y:N})}break}case"C":{let K=Z[Z.length-1];if(K)for(let W=1;W<=12;W++){let U=W/12,H=1-U,_=H*H*H*K.x+3*H*H*U*J.x1+3*H*U*U*J.x2+U*U*U*J.x,N=H*H*H*K.y+3*H*H*U*J.y1+3*H*U*U*J.y2+U*U*U*J.y;Z.push({x:_,y:N})}break}case"Z":if(Z.length>0)Q.push(Z),Z=[];break}if(Z.length>0)Q.push(Z);return Q}function tU($,Q){let Z=$.length;if(Z<3)return $;let J=0;for(let U=0;U<Z;U++){let H=(U+1)%Z,_=$[U],N=$[H];if(_&&N)J+=(N.x-_.x)*(N.y+_.y)}let K=J<0?-1:1,q=Q*K,W=[];for(let U=0;U<Z;U++){let H=$[(U-1+Z)%Z],_=$[U],N=$[(U+1)%Z];if(!H||!_||!N)continue;let j={x:_.x-H.x,y:_.y-H.y},X={x:N.x-_.x,y:N.y-_.y},V=Math.sqrt(j.x*j.x+j.y*j.y),w=Math.sqrt(X.x*X.x+X.y*X.y);if(V===0||w===0){W.push(_);continue}j.x/=V,j.y/=V,X.x/=w,X.y/=w;let G={x:-j.y,y:j.x},Y={x:-X.y,y:X.x},z=(G.x+Y.x)/2,E=(G.y+Y.y)/2,A=Math.sqrt(z*z+E*E);if(A>0.001){z/=A,E/=A;let L=G.x*Y.x+G.y*Y.y,O=L>-0.999?1/Math.sqrt((1+L)/2):1,D=Math.min(O,3);W.push({x:_.x+z*q*D,y:_.y+E*q*D})}else W.push(_)}return W}var qJ=new WeakMap;function eU($){if(!$.isTrueType||!$.hasHinting)return null;let Q=qJ.get($);if(Q)return Q;let Z=$.cvtTable,J=Z?new Int32Array(Z.values):void 0,K=$.maxp;Q=bZ($.unitsPerEm,"maxStackElements"in K?K.maxStackElements:256,"maxStorage"in K?K.maxStorage:64,"maxFunctionDefs"in K?K.maxFunctionDefs:64,"maxTwilightPoints"in K?K.maxTwilightPoints:16,J);let q=$.fpgm;if(q)mZ(Q,q.instructions);let W=$.prep;if(W)gZ(Q,W.instructions);return qJ.set($,Q),Q}function $H($,Q){let Z=$.getGlyph(Q);if(!Z||Z.type==="empty")return null;let J=[],K=[],q=[],W=[],U=$.advanceWidth(Q),H=$.leftSideBearing(Q);if(Z.type==="simple"){let _=0;for(let N of Z.contours){for(let j of N)J.push(j.x),K.push(j.y),q.push(j.onCurve?1:0),_++;W.push(_-1)}return{xCoords:J,yCoords:K,flags:new Uint8Array(q),contourEnds:W,instructions:Z.instructions,lsb:H,advanceWidth:U}}else{for(let _ of Z.components){let N=$.getGlyph(_.glyphId);if(!N||N.type!=="simple")continue;let[j,X,V,w]=_.transform,G=_.arg1,Y=_.arg2,z=J.length;for(let E of N.contours){for(let A of E)J.push(A.x*j+A.y*V+G),K.push(A.x*X+A.y*w+Y),q.push(A.onCurve?1:0),z++;W.push(z-1)}}if(J.length===0)return null;return{xCoords:J,yCoords:K,flags:new Uint8Array(q),contourEnds:W,instructions:Z.instructions,lsb:H,advanceWidth:U}}}function QH($,Q,Z,J){let{xCoords:K,yCoords:q,flags:W,contourEnds:U}=Q,H=0,_=0;for(let N=0;N<K.length;N++){let j=N===U[H],X=(K[N]<<2|0)+(Z<<8),V=(-q[N]<<2|0)+(J<<8),w=(W[N]&1)!==0;if(N===_)$.moveTo(X,V);else if(w)$.lineTo(X,V);else{let G=j?_:N+1,Y=(K[G]<<2|0)+(Z<<8),z=(-q[G]<<2|0)+(J<<8);if((W[G]&1)!==0){if($.conicTo(X,V,Y,z),!j)N++}else $.conicTo(X,V,X+Y>>1,V+z>>1)}if(j){let G=(K[_]<<2|0)+(Z<<8),Y=(-q[_]<<2|0)+(J<<8);if(w&&N!==_)$.lineTo(G,Y);H++,_=N+1}}}var ZH=256;function M8($,Q){let{width:Z,height:J,scale:K,offsetX:q=0,offsetY:W=0,pixelMode:U=1,fillRule:H=0,flipY:_=!0}=Q,N=e(Z,J,U),j=new m6;if(j.setClip(0,0,Z,J),J>ZH){let X=()=>L8(j,$,K,q,W,_);j.renderWithBands(N,X,{minY:0,maxY:J},H)}else j.setBandBounds(0,J),j.reset(),L8(j,$,K,q,W,_),j.sweep(N,H);return N}function H0($,Q,Z,J){let K=J?.padding??1,q=J?.pixelMode??1;if((J?.hinting??!1)&&$.hasHinting){let G=JH($,Q,Z,K,q);if(G)return G}let U=b1($,Q);if(!U)return null;let H=Z/$.unitsPerEm,_=dZ(U,H,!0);if(!_)return{bitmap:e(1,1,q),bearingX:0,bearingY:0};let N=_.maxX-_.minX+K*2,j=_.maxY-_.minY+K*2;if(N<=0||j<=0)return{bitmap:e(1,1,q),bearingX:0,bearingY:0};let X=-_.minX+K,V=-_.minY+K;return{bitmap:M8(U,{width:N,height:j,scale:H,offsetX:X,offsetY:V,pixelMode:q,flipY:!0}),bearingX:_.minX-K,bearingY:-(_.minY-K)}}function JH($,Q,Z,J,K){let q=eU($);if(!q)return null;let W=$H($,Q);if(!W)return null;let U=Math.round(Z);if(uZ(q,U,U))return null;let _=xZ(q,W);if(_.error||_.xCoords.length===0)return null;let N=1/0,j=1/0,X=-1/0,V=-1/0;for(let P=0;P<_.xCoords.length;P++){let T=_.xCoords[P]/64,y=_.yCoords[P]/64;N=Math.min(N,T),j=Math.min(j,y),X=Math.max(X,T),V=Math.max(V,y)}if(!Number.isFinite(N))return{bitmap:e(1,1,K),bearingX:0,bearingY:0};let w=Math.floor(N),G=Math.floor(j),Y=Math.ceil(X),z=Math.ceil(V),E=Y-w+J*2,A=z-G+J*2;if(E<=0||A<=0)return{bitmap:e(1,1,K),bearingX:0,bearingY:0};let L=e(E,A,K),O=new m6;O.setClip(0,0,E,A),O.reset();let D=-w+J,C=A-1+G-J;return QH(O,_,D,C),O.sweep(L,0),{bitmap:L,bearingX:w-J,bearingY:z+J}}function KH($,Q,Z,J){let K=Z/$.unitsPerEm,q=J?.padding??2,W=J?.pixelMode??1,U=[],H=0,_=0,N=0;for(let z of Q){let E=z.codePointAt(0);if(E===void 0)continue;let A=$.glyphId(E);if(A===void 0)continue;let L=$.advanceWidth(A)*K,O=b1($,A);if(O?.bounds)_=Math.max(_,-O.bounds.yMin*K),N=Math.max(N,O.bounds.yMax*K);U.push({glyphId:A,advance:L}),H+=L}if(U.length===0)return null;let j=Math.ceil(H)+q*2,X=Math.ceil(_+N)+q*2,V=e(j,X,W),w=new m6;w.setClip(0,0,j,X);let G=q,Y=N+q;for(let{glyphId:z,advance:E}of U){let A=b1($,z);if(A)w.reset(),L8(w,A,K,G,Y,!0),w.sweep(V);G+=E}return V}function qH($){let Q=$.pixelMode===2,Z=new Uint8Array($.width*$.rows*4);for(let J=0;J<$.rows;J++)for(let K=0;K<$.width;K++){let q=(J*$.width+K)*4;if($.pixelMode===1){let W=J*$.pitch+K,U=$.buffer[W]??0;Z[q]=255-U,Z[q+1]=255-U,Z[q+2]=255-U,Z[q+3]=255}else if($.pixelMode===0){let W=J*$.pitch+(K>>3),U=7-(K&7),H=($.buffer[W]??0)>>U&1?255:0;Z[q]=255-H,Z[q+1]=255-H,Z[q+2]=255-H,Z[q+3]=255}else if(Q){let W=J*$.pitch+K*3,U=$.buffer[W]??0,H=$.buffer[W+1]??0,_=$.buffer[W+2]??0;Z[q]=255-U,Z[q+1]=255-H,Z[q+2]=255-_,Z[q+3]=255}else{let W=J*$.pitch+K,U=$.buffer[W]??0;Z[q]=255-U,Z[q+1]=255-U,Z[q+2]=255-U,Z[q+3]=255}}return Z}function WH($){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 K=Z*$.width+J;if($.pixelMode===1)Q[K]=$.buffer[Z*$.pitch+J]??0;else if($.pixelMode===0){let q=Z*$.pitch+(J>>3),W=7-(J&7);Q[K]=($.buffer[q]??0)>>W&1?255:0}}return Q}function _0($,Q,Z){let{fontSize:J,padding:K=1,maxWidth:q=2048,maxHeight:W=2048,pixelMode:U=1}=Z,H=[],_=J/$.unitsPerEm;for(let G of Q){let Y=H0($,G,J,{padding:0,pixelMode:U});if(!Y)continue;let z=$.advanceWidth(G)*_;H.push({glyphId:G,bitmap:Y.bitmap,bearingX:Y.bearingX,bearingY:Y.bearingY,advance:z})}H.sort((G,Y)=>Y.bitmap.rows-G.bitmap.rows);let{width:N,height:j,placements:X}=_H(H.map((G)=>({width:G.bitmap.width+K*2,height:G.bitmap.rows+K*2})),q,W),V=e(N,j,U),w=new Map;for(let G=0;G<H.length;G++){let Y=H[G],z=X[G];if(!z.placed)continue;NH(Y.bitmap,V,z.x+K,z.y+K),w.set(Y.glyphId,{glyphId:Y.glyphId,atlasX:z.x+K,atlasY:z.y+K,width:Y.bitmap.width,height:Y.bitmap.rows,bearingX:Y.bearingX,bearingY:Y.bearingY,advance:Y.advance})}return{bitmap:V,glyphs:w,fontSize:J}}function UH($,Q){let Z=[];for(let J=32;J<=126;J++){let K=$.glyphId(J);if(K!==void 0&&K!==0)Z.push(K)}return _0($,Z,Q)}function HH($,Q,Z){let J=new Set;for(let K of Q){let q=K.codePointAt(0);if(q===void 0)continue;let W=$.glyphId(q);if(W!==void 0&&W!==0)J.add(W)}return _0($,Array.from(J),Z)}function _H($,Q,Z){let J=[],K=[],q=0,W=0;for(let _ of $){let N=!1,j=-1,X=Z;for(let V=0;V<J.length;V++){let w=J[V];if(w.width+_.width<=Q&&_.height<=w.height){if(w.y<X)j=V,X=w.y}}if(j>=0){let V=J[j];K.push({x:V.width,y:V.y,placed:!0}),V.width+=_.width,q=Math.max(q,V.width),N=!0}else{let V=W;if(V+_.height<=Z&&_.width<=Q)J.push({y:V,height:_.height,width:_.width}),K.push({x:0,y:V,placed:!0}),W=V+_.height,q=Math.max(q,_.width),N=!0}if(!N)K.push({x:0,y:0,placed:!1})}let U=WJ(q),H=WJ(W);return{width:Math.min(U,Q),height:Math.min(H,Z),placements:K}}function NH($,Q,Z,J){let K=$.pixelMode===2?3:1;for(let q=0;q<$.rows;q++){let W=q*$.pitch,U=(J+q)*Q.pitch+Z*K;for(let H=0;H<$.width*K;H++)Q.buffer[U+H]=$.buffer[W+H]}}function WJ($){if($<=0)return 1;return $--,$|=$>>1,$|=$>>2,$|=$>>4,$|=$>>8,$|=$>>16,$+1}function jH($){let{bitmap:Q}=$,Z=new Uint8Array(Q.width*Q.rows*4);for(let J=0;J<Q.rows;J++)for(let K=0;K<Q.width;K++){let q=J*Q.pitch+K,W=(J*Q.width+K)*4,U=Q.buffer[q]??0;Z[W]=255,Z[W+1]=255,Z[W+2]=255,Z[W+3]=U}return Z}function XH($){let{bitmap:Q}=$;if(Q.pitch===Q.width)return Q.buffer;let Z=new Uint8Array(Q.width*Q.rows);for(let J=0;J<Q.rows;J++)for(let K=0;K<Q.width;K++)Z[J*Q.width+K]=Q.buffer[J*Q.pitch+K];return Z}function VH($,Q){let Z=$.glyphs.get(Q);if(!Z)return null;let{bitmap:J}=$;return{u0:Z.atlasX/J.width,v0:Z.atlasY/J.rows,u1:(Z.atlasX+Z.width)/J.width,v1:(Z.atlasY+Z.height)/J.rows}}var wH=Math.PI;function GH($,Q,Z){let J=0.5/Z,K=Math.exp(-J),q=K*K,W=Math.sqrt(J/wH);$[0]=W,W*=K,$[1]=W;for(let U=2;U<Q;U++)K*=q,W*=K,$[U]=W}function UJ($,Q,Z){let J=$[1],K=$[2],q=$[3];for(let W=0;W<Q;W++){let U=$[W]*Z[0]+(J+$[W+1])*Z[1]+(K+$[W+2])*Z[2]+(q+$[W+3])*Z[3];q=K,K=J,J=$[W],$[W]=U}}function YH($,Q,Z){for(let J=0;J<Z;J++){$[J][J]=Q[2*J+2]+3*Q[0]-4*Q[J+1];for(let K=J+1;K<Z;K++)$[J][K]=$[K][J]=Q[J+K+2]+Q[K-J]+2*(Q[0]-Q[J+1]-Q[K+1])}for(let J=0;J<Z;J++){let K=1/$[J][J];$[J][J]=1;for(let q=0;q<Z;q++){if(q===J)continue;let W=$[q][J]*K;$[q][J]=0;for(let U=0;U<Z;U++)$[q][U]-=$[J][U]*W}for(let q=0;q<Z;q++)$[J][q]*=K}}function zH($,Q,Z,J){let q=[((0.27116402116402116*J+0.09027777777777778)*J+0.20833333333333334)*J+0.43022486772486773,((-0.20337301587301587*J-0.022569444444444444)*J-0.017361111111111112)*J+0.24330357142857142,((0.08134920634920635*J-0.04513888888888889)*J-0.0763888888888889)*J+0.04017857142857143,((-0.013558201058201057*J+0.022569444444444444)*J-0.010416666666666666)*J+0.0014054232804232803],W=new Float64Array(17);W[0]=q[0],W[1]=q[1],W[2]=q[2],W[3]=q[3],UJ(W,7,q);let U=new Float64Array(12);GH(U,Q+4,Z*J),UJ(U,Q+1,q);let H=[];for(let N=0;N<8;N++)H.push(new Float64Array(8));YH(H,W,Q);let _=new Float64Array(8);for(let N=0;N<Q;N++)_[N]=W[0]-W[N+1]-U[0]+U[N+1];for(let N=0;N<Q;N++){let j=0;for(let X=0;X<Q;X++)j+=H[N][X]*_[X];$[N]=Math.max(0,j)}}function HJ($){let Q=new Float64Array(8),Z,J;if($<0.5)Z=0,J=4,Q[1]=0.085*$*$*$,Q[0]=0.5*$-4*Q[1],Q[2]=Q[3]=0;else{let q=Math.sqrt(0.11569*$+0.20591047);Z=Math.floor(Math.log2(q))+1;let W=q/2**(Z-1)-1,U=0.25**Z;J=8-Math.floor((10.1525+0.8335*U)*(1-W)),J=Math.max(J,4),J=Math.min(J,8),zH(Q,J,$,U)}let K=new Float32Array(8);for(let q=0;q<J;q++)K[q]=Q[q];return{level:Z,radius:J,coeff:K}}function EH($,Q,Z,J,K,q){let W=Math.floor((Z+5)/2);for(let U=0;U<J;U++){let H=U*K,_=U*q;for(let N=0;N<W;N++){let j=N*2,X=0;X+=(Q[H+Math.max(0,j-2)]??0)*1,X+=(Q[H+Math.max(0,j-1)]??0)*5,X+=(Q[H+Math.min(Z-1,j)]??0)*10,X+=(Q[H+Math.min(Z-1,j+1)]??0)*10,X+=(Q[H+Math.min(Z-1,j+2)]??0)*5,X+=(Q[H+Math.min(Z-1,j+3)]??0)*1,$[_+N]=X/32}}}function AH($,Q,Z,J,K,q){let W=Math.floor((J+5)/2);for(let U=0;U<Z;U++)for(let H=0;H<W;H++){let _=H*2,N=0;N+=(Q[Math.max(0,_-2)*K+U]??0)*1,N+=(Q[Math.max(0,_-1)*K+U]??0)*5,N+=(Q[Math.min(J-1,_)*K+U]??0)*10,N+=(Q[Math.min(J-1,_+1)*K+U]??0)*10,N+=(Q[Math.min(J-1,_+2)*K+U]??0)*5,N+=(Q[Math.min(J-1,_+3)*K+U]??0)*1,$[H*q+U]=N/32}}function FH($,Q,Z,J,K,q){let W=Z*2+4;for(let U=0;U<J;U++){let H=U*K,_=U*q;for(let N=0;N<W;N++){let j=Math.floor((N-2)/2),X=N-2&1,V=0;if(X===0)V+=(Q[H+Math.max(0,Math.min(Z-1,j-1))]??0)*1,V+=(Q[H+Math.max(0,Math.min(Z-1,j))]??0)*30,V+=(Q[H+Math.max(0,Math.min(Z-1,j+1))]??0)*1;else V+=(Q[H+Math.max(0,Math.min(Z-1,j))]??0)*16,V+=(Q[H+Math.max(0,Math.min(Z-1,j+1))]??0)*16;$[_+N]=V/32}}}function LH($,Q,Z,J,K,q){let W=J*2+4;for(let U=0;U<Z;U++)for(let H=0;H<W;H++){let _=Math.floor((H-2)/2),N=H-2&1,j=0;if(N===0)j+=(Q[Math.max(0,Math.min(J-1,_-1))*K+U]??0)*1,j+=(Q[Math.max(0,Math.min(J-1,_))*K+U]??0)*30,j+=(Q[Math.max(0,Math.min(J-1,_+1))*K+U]??0)*1;else j+=(Q[Math.max(0,Math.min(J-1,_))*K+U]??0)*16,j+=(Q[Math.max(0,Math.min(J-1,_+1))*K+U]??0)*16;$[H*q+U]=j/32}}function DH($,Q,Z,J,K,q,W,U){let H=Z+2*W;for(let _=0;_<J;_++){let N=_*K,j=_*q;for(let X=0;X<H;X++){let V=X-W,w=0;for(let G=0;G<W;G++){let Y=Math.max(0,Math.min(Z-1,V-G-1)),z=Math.max(0,Math.min(Z-1,V+G));w+=((Q[N+Y]??0)+(Q[N+z]??0))*U[G]}$[j+X]=w}}}function BH($,Q,Z,J,K,q,W,U){let H=J+2*W;for(let _=0;_<Z;_++)for(let N=0;N<H;N++){let j=N-W,X=0;for(let V=0;V<W;V++){let w=Math.max(0,Math.min(J-1,j-V-1)),G=Math.max(0,Math.min(J-1,j+V));X+=((Q[w*K+_]??0)+(Q[G*K+_]??0))*U[V]}$[N*q+_]=X}}function MH($,Q,Z){let J=(Q+Z)/2;return H6($,J)}function N0($,Q,Z=Q){if(Q<=0&&Z<=0)return $;if($.pixelMode===4)return MH($,Q,Z);let J=Q*Q,K=Z*Z,q=HJ(J),W=HJ(K),U=$.width,H=$.rows,_=(2*q.radius+9<<q.level)-5,N=(2*W.radius+9<<W.level)-5,j=(U+_&~((1<<q.level)-1))-4,X=(H+N&~((1<<W.level)-1))-4,V=Math.max(U*H,j*X)*2,w=new Float32Array(V),G=new Float32Array(V);for(let P=0;P<H;P++)for(let T=0;T<U;T++)w[P*U+T]=$.buffer[P*$.pitch+T]??0;let Y=w,z=G,E=U;for(let P=0;P<W.level;P++){let T=Math.floor((H+5)/2);AH(z,Y,U,H,E,U),H=T,[Y,z]=[z,Y]}for(let P=0;P<q.level;P++){let T=Math.floor((U+5)/2);EH(z,Y,U,H,E,T),U=T,E=T,[Y,z]=[z,Y]}let A=U+2*q.radius;DH(z,Y,U,H,E,A,q.radius,q.coeff),U=A,E=A,[Y,z]=[z,Y];let L=H+2*W.radius;BH(z,Y,U,H,E,E,W.radius,W.coeff),H=L,[Y,z]=[z,Y];for(let P=0;P<q.level;P++){let T=U*2+4;FH(z,Y,U,H,E,T),U=T,E=T,[Y,z]=[z,Y]}for(let P=0;P<W.level;P++){let T=H*2+4;LH(z,Y,U,H,E,E),H=T,[Y,z]=[z,Y]}let O=Math.min(U,j),D=Math.min(H,X),C=new Uint8Array(O*D);for(let P=0;P<D;P++)for(let T=0;T<O;T++){let y=Y[P*E+T]??0;C[P*O+T]=Math.max(0,Math.min(255,Math.round(y)))}return{buffer:C,width:O,rows:D,pitch:O,pixelMode:1,numGrays:256}}function RH($,Q){return N0($,Q,Q)}function TH($,Q,Z){let J=Z??Q;if(Math.max(Q,J)<=3)return H6($,(Q+J)/2);return N0($,Q,J)}function wJ($,Q,Z){return Math.max(Math.min($,Q),Math.min(Math.max($,Q),Z))}function GJ($,Q,Z,J){let K=J.x-Z.x,q=J.y-Z.y,W=K*K+q*q;if(W<0.0000000001)return{distance:Math.sqrt(($-Z.x)**2+(Q-Z.y)**2),t:0};let U=(($-Z.x)*K+(Q-Z.y)*q)/W;U=Math.max(0,Math.min(1,U));let H=Z.x+U*K,_=Z.y+U*q,N=Math.sqrt(($-H)**2+(Q-_)**2);return{distance:(K*(Q-Z.y)-q*($-Z.x)>=0?1:-1)*N,t:U}}function YJ($,Q,Z,J,K){let q=Z.x-2*J.x+K.x,W=Z.y-2*J.y+K.y,U=2*(J.x-Z.x),H=2*(J.y-Z.y),_=Z.x-$,N=Z.y-Q,j=1/0,X=0,V=1,w=Math.sqrt(_*_+N*N);if(w<j)j=w,X=0;let G=K.x-$,Y=K.y-Q,z=Math.sqrt(G*G+Y*Y);if(z<j)j=z,X=1;let E=8;for(let T=1;T<E;T++){let y=T/E;for(let x=0;x<4;x++){let M=1-y,b=M*M*Z.x+2*M*y*J.x+y*y*K.x,m=M*M*Z.y+2*M*y*J.y+y*y*K.y,d=2*(M*(J.x-Z.x)+y*(K.x-J.x)),i=2*(M*(J.y-Z.y)+y*(K.y-J.y)),n=2*q,a=2*W,v=b-$,c=m-Q,S=v*d+c*i,j1=d*d+i*i+v*n+c*a;if(Math.abs(j1)<0.0000000001)break;let h=S/j1;if(y=Math.max(0,Math.min(1,y-h)),Math.abs(h)<0.000001)break}let u=1-y,I=u*u*Z.x+2*u*y*J.x+y*y*K.x,o=u*u*Z.y+2*u*y*J.y+y*y*K.y,g=Math.sqrt((I-$)**2+(o-Q)**2);if(g<j)j=g,X=y}let A=1-X,L=2*(A*(J.x-Z.x)+X*(K.x-J.x)),O=2*(A*(J.y-Z.y)+X*(K.y-J.y)),D=A*A*Z.x+2*A*X*J.x+X*X*K.x,C=A*A*Z.y+2*A*X*J.y+X*X*K.y;return V=L*(Q-C)-O*($-D)>=0?1:-1,{distance:V*j,t:X}}function zJ($,Q,Z,J,K,q){let W=1/0,U=0,H=1,_=Math.sqrt((Z.x-$)**2+(Z.y-Q)**2);if(_<W)W=_,U=0;let N=Math.sqrt((q.x-$)**2+(q.y-Q)**2);if(N<W)W=N,U=1;let j=10;for(let D=1;D<j;D++){let C=D/j;for(let M=0;M<5;M++){let b=1-C,m=b*b,d=m*b,i=C*C,n=i*C,a=d*Z.x+3*m*C*J.x+3*b*i*K.x+n*q.x,v=d*Z.y+3*m*C*J.y+3*b*i*K.y+n*q.y,c=3*m*(J.x-Z.x)+6*b*C*(K.x-J.x)+3*i*(q.x-K.x),S=3*m*(J.y-Z.y)+6*b*C*(K.y-J.y)+3*i*(q.y-K.y),j1=6*b*(K.x-2*J.x+Z.x)+6*C*(q.x-2*K.x+J.x),h=6*b*(K.y-2*J.y+Z.y)+6*C*(q.y-2*K.y+J.y),i1=a-$,e1=v-Q,G1=i1*c+e1*S,H1=c*c+S*S+i1*j1+e1*h;if(Math.abs(H1)<0.0000000001)break;let D1=G1/H1;if(C=Math.max(0,Math.min(1,C-D1)),Math.abs(D1)<0.000001)break}let P=1-C,T=P*P,y=T*P,u=C*C,I=u*C,o=y*Z.x+3*T*C*J.x+3*P*u*K.x+I*q.x,g=y*Z.y+3*T*C*J.y+3*P*u*K.y+I*q.y,x=Math.sqrt((o-$)**2+(g-Q)**2);if(x<W)W=x,U=C}let X=1-U,V=X*X,w=U*U,G=3*V*(J.x-Z.x)+6*X*U*(K.x-J.x)+3*w*(q.x-K.x),Y=3*V*(J.y-Z.y)+6*X*U*(K.y-J.y)+3*w*(q.y-K.y),z=V*X,E=w*U,A=z*Z.x+3*V*U*J.x+3*X*w*K.x+E*q.x,L=z*Z.y+3*V*U*J.y+3*X*w*K.y+E*q.y;return H=G*(Q-L)-Y*($-A)>=0?1:-1,{distance:H*W,t:U}}function _J($){switch($.type){case"line":return{x:$.p1.x-$.p0.x,y:$.p1.y-$.p0.y};case"quadratic":return{x:2*($.p1.x-$.p0.x),y:2*($.p1.y-$.p0.y)};case"cubic":return{x:3*($.p1.x-$.p0.x),y:3*($.p1.y-$.p0.y)}}}function NJ($){switch($.type){case"line":return{x:$.p1.x-$.p0.x,y:$.p1.y-$.p0.y};case"quadratic":return{x:2*($.p2.x-$.p1.x),y:2*($.p2.y-$.p1.y)};case"cubic":return{x:3*($.p3.x-$.p2.x),y:3*($.p3.y-$.p2.y)}}}function jJ($){let Q=Math.sqrt($.x*$.x+$.y*$.y);if(Q<0.0000000001)return{x:0,y:0};return{x:$.x/Q,y:$.y/Q}}function PH($,Q){return $.x*Q.x+$.y*Q.y}function XJ($,Q,Z=Math.PI/3){let J=jJ($),K=jJ(Q),q=PH(J,K),W=Math.acos(Math.max(-1,Math.min(1,q)));return W>Z&&W<Math.PI-Z}function EJ($){let Q=Math.PI/4;for(let Z of $){if(Z.length===0)continue;if(Z.length===1){Z[0].color=0;continue}let J=0;for(let K=0;K<Z.length;K++){let q=Z[K],W=Z[(K-1+Z.length)%Z.length];if(K===0)q.color=J;else{let U=NJ(W),H=_J(q);if(XJ(U,H,Q))J=(J+1)%3;q.color=J}}if(Z.length>=2){let K=Z[Z.length-1],q=Z[0],W=NJ(K),U=_J(q);if(XJ(W,U,Q)){if(K.color===q.color){let H=Z[Z.length-2]?.color??0,_=Z[1]?.color??0;for(let N=0;N<3;N++)if(N!==q.color&&N!==H){K.color=N;break}}}}}}function OH($,Q,Z,J,K){let q=[],W=[],U=null,H=null,_=(N,j)=>({x:N*Q+Z,y:K?-(j*Q)+J:j*Q+J});for(let N of $.commands)switch(N.type){case"M":if(W.length>0)q.push(W),W=[];U=_(N.x,N.y),H=U;break;case"L":if(U){let j=_(N.x,N.y);if(Math.abs(j.x-U.x)>0.000001||Math.abs(j.y-U.y)>0.000001)W.push({type:"line",p0:U,p1:j,color:0});U=j}break;case"Q":if(U){let j=_(N.x1,N.y1),X=_(N.x,N.y);W.push({type:"quadratic",p0:U,p1:j,p2:X,color:0}),U=X}break;case"C":if(U){let j=_(N.x1,N.y1),X=_(N.x2,N.y2),V=_(N.x,N.y);W.push({type:"cubic",p0:U,p1:j,p2:X,p3:V,color:0}),U=V}break;case"Z":if(U&&H){if(Math.abs(U.x-H.x)>0.000001||Math.abs(U.y-H.y)>0.000001)W.push({type:"line",p0:U,p1:H,color:0});U=H}if(W.length>0)q.push(W),W=[];break}if(W.length>0)q.push(W);return q}function j0($,Q,Z){switch(Z.type){case"line":return GJ($,Q,Z.p0,Z.p1);case"quadratic":return YJ($,Q,Z.p0,Z.p1,Z.p2);case"cubic":return zJ($,Q,Z.p0,Z.p1,Z.p2,Z.p3)}}function IH($,Q,Z){let J=0;for(let K of Z)for(let q of K){let W=vH(q);for(let U=0;U<W.length-1;U++){let H=W[U],_=W[U+1];if(H.y>Q!==_.y>Q){let N=(_.x-H.x)/(_.y-H.y),j=H.x+N*(Q-H.y);if($<j)J++}}}return(J&1)===1}function vH($){switch($.type){case"line":return[$.p0,$.p1];case"quadratic":{let Q=[$.p0],Z=8;for(let J=1;J<=8;J++){let K=J/8,q=1-K;Q.push({x:q*q*$.p0.x+2*q*K*$.p1.x+K*K*$.p2.x,y:q*q*$.p0.y+2*q*K*$.p1.y+K*K*$.p2.y})}return Q}case"cubic":{let Q=[$.p0],Z=8;for(let J=1;J<=8;J++){let K=J/8,q=1-K,W=q*q,U=W*q,H=K*K,_=H*K;Q.push({x:U*$.p0.x+3*W*K*$.p1.x+3*q*H*$.p2.x+_*$.p3.x,y:U*$.p0.y+3*W*K*$.p1.y+3*q*H*$.p2.y+_*$.p3.y})}return Q}}}function AJ($,Q){let{width:Z,height:J,scale:K,offsetX:q=0,offsetY:W=0,flipY:U=!1,spread:H=8}=Q,_=e(Z,J,2),N=OH($,K,q,W,U);if(N.length===0||N.every((A)=>A.length===0))return _.buffer.fill(0),_;EJ(N);let j=N.flat(),X=j.filter((A)=>A.color===0),V=j.filter((A)=>A.color===1),w=j.filter((A)=>A.color===2),G=(A)=>{if(A.length>0)return A;return j},Y=G(X),z=G(V),E=G(w);for(let A=0;A<J;A++)for(let L=0;L<Z;L++){let O=L+0.5,D=A+0.5,C=1/0,P=1/0,T=1/0;for(let m of Y){let d=j0(O,D,m);if(Math.abs(d.distance)<Math.abs(C))C=d.distance}for(let m of z){let d=j0(O,D,m);if(Math.abs(d.distance)<Math.abs(P))P=d.distance}for(let m of E){let d=j0(O,D,m);if(Math.abs(d.distance)<Math.abs(T))T=d.distance}let y=wJ(C,P,T),I=IH(O,D,N)?1:-1,o=Math.abs(C)*I,g=Math.abs(P)*I,x=Math.abs(T)*I,M=(m)=>{let d=128+m/H*127;return Math.max(0,Math.min(255,Math.round(d)))},b=A*_.pitch+L*3;_.buffer[b]=M(o),_.buffer[b+1]=M(g),_.buffer[b+2]=M(x)}return _}function kH($,Q,Z){let J=[],K=[],q=0,W=0;for(let _ of $){let N=!1,j=-1,X=Z;for(let V=0;V<J.length;V++){let w=J[V];if(w.width+_.width<=Q&&_.height<=w.height){if(w.y<X)j=V,X=w.y}}if(j>=0){let V=J[j];K.push({x:V.width,y:V.y,placed:!0}),V.width+=_.width,q=Math.max(q,V.width),N=!0}else{let V=W;if(V+_.height<=Z&&_.width<=Q)J.push({y:V,height:_.height,width:_.width}),K.push({x:0,y:V,placed:!0}),W=V+_.height,q=Math.max(q,_.width),N=!0}if(!N)K.push({x:0,y:0,placed:!1})}let U=VJ(q),H=VJ(W);return{width:Math.min(U,Q),height:Math.min(H,Z),placements:K}}function VJ($){if($<=0)return 1;return $--,$|=$>>1,$|=$>>2,$|=$>>4,$|=$>>8,$|=$>>16,$+1}function CH($,Q,Z,J){for(let K=0;K<$.rows;K++){let q=K*$.pitch,W=(J+K)*Q.pitch+Z*3;for(let U=0;U<$.width*3;U++)Q.buffer[W+U]=$.buffer[q+U]}}function X0($,Q,Z){let{fontSize:J,padding:K=2,maxWidth:q=2048,maxHeight:W=2048,spread:U=4}=Z,H=J/$.unitsPerEm,_=[];for(let G of Q){let Y=b1($,G);if(!Y||!Y.bounds)continue;let z=Y.bounds,E=Math.ceil((z.xMax-z.xMin)*H)+U*2,A=Math.ceil((z.yMax-z.yMin)*H)+U*2;if(E<=0||A<=0)continue;let L=AJ(Y,{width:E,height:A,scale:H,offsetX:-z.xMin*H+U,offsetY:z.yMax*H+U,flipY:!0,spread:U}),O=$.advanceWidth(G)*H,D=z.xMin*H-U,C=z.yMax*H+U;_.push({glyphId:G,bitmap:L,bearingX:D,bearingY:C,advance:O})}_.sort((G,Y)=>Y.bitmap.rows-G.bitmap.rows);let{width:N,height:j,placements:X}=kH(_.map((G)=>({width:G.bitmap.width+K*2,height:G.bitmap.rows+K*2})),q,W),V=e(N,j,2),w=new Map;for(let G=0;G<_.length;G++){let Y=_[G],z=X[G];if(!z.placed)continue;CH(Y.bitmap,V,z.x+K,z.y+K),w.set(Y.glyphId,{glyphId:Y.glyphId,atlasX:z.x+K,atlasY:z.y+K,width:Y.bitmap.width,height:Y.bitmap.rows,bearingX:Y.bearingX,bearingY:Y.bearingY,advance:Y.advance})}return{bitmap:V,glyphs:w,fontSize:J}}function SH($,Q){let Z=[];for(let J=32;J<=126;J++){let K=$.glyphId(J);if(K!==void 0&&K!==0)Z.push(K)}return X0($,Z,Q)}function hH($,Q,Z){let J=new Set;for(let K of Q){let q=K.codePointAt(0);if(q===void 0)continue;let W=$.glyphId(q);if(W!==void 0&&W!==0)J.add(W)}return X0($,Array.from(J),Z)}function yH($){let{bitmap:Q}=$;if(Q.pitch===Q.width*3)return Q.buffer;let Z=new Uint8Array(Q.width*Q.rows*3);for(let J=0;J<Q.rows;J++)for(let K=0;K<Q.width*3;K++)Z[J*Q.width*3+K]=Q.buffer[J*Q.pitch+K];return Z}function bH($){let{bitmap:Q}=$,Z=new Uint8Array(Q.width*Q.rows*4);for(let J=0;J<Q.rows;J++)for(let K=0;K<Q.width;K++){let q=J*Q.pitch+K*3,W=(J*Q.width+K)*4;Z[W]=Q.buffer[q],Z[W+1]=Q.buffer[q+1],Z[W+2]=Q.buffer[q+2],Z[W+3]=255}return Z}function mH(){return[1,0,0,1,0,0]}function gH(){return[[1,0,0],[0,1,0],[0,0,1]]}function MJ($,Q){return[1,0,0,1,$,Q]}function RJ($,Q){return[$,0,0,Q,0,0]}function TJ($){let Q=Math.cos($),Z=Math.sin($);return[Q,Z,-Z,Q,0,0]}function PJ($,Q){return[1,Q,$,1,0,0]}function uH($,Q){return[$[0]*Q[0]+$[2]*Q[1],$[1]*Q[0]+$[3]*Q[1],$[0]*Q[2]+$[2]*Q[3],$[1]*Q[2]+$[3]*Q[3],$[0]*Q[4]+$[2]*Q[5]+$[4],$[1]*Q[4]+$[3]*Q[5]+$[5]]}function xH($,Q){let Z=[[0,0,0],[0,0,0],[0,0,0]];for(let J=0;J<3;J++)for(let K=0;K<3;K++)Z[J][K]=$[J][0]*Q[0][K]+$[J][1]*Q[1][K]+$[J][2]*Q[2][K];return Z}function S1($,Q,Z){return{x:Z[0]*$+Z[2]*Q+Z[4],y:Z[1]*$+Z[3]*Q+Z[5]}}function N1($,Q,Z){let J=Z[2][0]*$+Z[2][1]*Q+Z[2][2];if(Math.abs(J)<0.0000000001)return{x:0,y:0};return{x:(Z[0][0]*$+Z[0][1]*Q+Z[0][2])/J,y:(Z[1][0]*$+Z[1][1]*Q+Z[1][2])/J}}function fH($,Q=0,Z=0){let J=$.commands.map((q)=>{switch(q.type){case"M":case"L":return{type:q.type,x:-q.y+Q,y:q.x+Z};case"Q":return{type:"Q",x1:-q.y1+Q,y1:q.x1+Z,x:-q.y+Q,y:q.x+Z};case"C":return{type:"C",x1:-q.y1+Q,y1:q.x1+Z,x2:-q.y2+Q,y2:q.x2+Z,x:-q.y+Q,y:q.x+Z};case"Z":return{type:"Z"};default:return q}}),K=null;if($.bounds){let q=$.bounds;if(K={xMin:-q.yMax+Q,yMin:q.xMin+Z,xMax:-q.yMin+Q,yMax:q.xMax+Z},K.xMin>K.xMax)[K.xMin,K.xMax]=[K.xMax,K.xMin];if(K.yMin>K.yMax)[K.yMin,K.yMax]=[K.yMax,K.yMin]}return{commands:J,bounds:K,flags:$.flags}}function lH($,Q,Z){let J=Q>=0?1<<Q:1/(1<<-Q),K=Z>=0?1<<Z:1/(1<<-Z),q=$.commands.map((U)=>{switch(U.type){case"M":case"L":return{type:U.type,x:U.x*J,y:U.y*K};case"Q":return{type:"Q",x1:U.x1*J,y1:U.y1*K,x:U.x*J,y:U.y*K};case"C":return{type:"C",x1:U.x1*J,y1:U.y1*K,x2:U.x2*J,y2:U.y2*K,x:U.x*J,y:U.y*K};case"Z":return{type:"Z"};default:return U}}),W=null;if($.bounds)W={xMin:$.bounds.xMin*J,yMin:$.bounds.yMin*K,xMax:$.bounds.xMax*J,yMax:$.bounds.yMax*K};return{commands:q,bounds:W,flags:$.flags}}function f6($,Q){let Z=$.commands.map((K)=>{switch(K.type){case"M":case"L":{let q=S1(K.x,K.y,Q);return{type:K.type,x:q.x,y:q.y}}case"Q":{let q=S1(K.x1,K.y1,Q),W=S1(K.x,K.y,Q);return{type:"Q",x1:q.x,y1:q.y,x:W.x,y:W.y}}case"C":{let q=S1(K.x1,K.y1,Q),W=S1(K.x2,K.y2,Q),U=S1(K.x,K.y,Q);return{type:"C",x1:q.x,y1:q.y,x2:W.x,y2:W.y,x:U.x,y:U.y}}case"Z":return{type:"Z"};default:return K}}),J=null;if($.bounds){let K=$.bounds,q=[S1(K.xMin,K.yMin,Q),S1(K.xMax,K.yMin,Q),S1(K.xMin,K.yMax,Q),S1(K.xMax,K.yMax,Q)];J={xMin:Math.min(...q.map((W)=>W.x)),yMin:Math.min(...q.map((W)=>W.y)),xMax:Math.max(...q.map((W)=>W.x)),yMax:Math.max(...q.map((W)=>W.y))}}return{commands:Z,bounds:J,flags:$.flags}}function nH($,Q){let Z=$.commands.map((K)=>{switch(K.type){case"M":case"L":{let q=N1(K.x,K.y,Q);return{type:K.type,x:q.x,y:q.y}}case"Q":{let q=N1(K.x1,K.y1,Q),W=N1(K.x,K.y,Q);return{type:"Q",x1:q.x,y1:q.y,x:W.x,y:W.y}}case"C":{let q=N1(K.x1,K.y1,Q),W=N1(K.x2,K.y2,Q),U=N1(K.x,K.y,Q);return{type:"C",x1:q.x,y1:q.y,x2:W.x,y2:W.y,x:U.x,y:U.y}}case"Z":return{type:"Z"};default:return K}}),J=null;if($.bounds){let K=$.bounds,q=[N1(K.xMin,K.yMin,Q),N1(K.xMax,K.yMin,Q),N1(K.xMin,K.yMax,Q),N1(K.xMax,K.yMax,Q)];J={xMin:Math.min(...q.map((W)=>W.x)),yMin:Math.min(...q.map((W)=>W.y)),xMax:Math.max(...q.map((W)=>W.x)),yMax:Math.max(...q.map((W)=>W.y))}}return{commands:Z,bounds:J,flags:$.flags}}function dH($){let Q=1/0,Z=1/0,J=-1/0,K=-1/0;for(let q of $.commands)switch(q.type){case"M":case"L":Q=Math.min(Q,q.x),Z=Math.min(Z,q.y),J=Math.max(J,q.x),K=Math.max(K,q.y);break;case"Q":Q=Math.min(Q,q.x1,q.x),Z=Math.min(Z,q.y1,q.y),J=Math.max(J,q.x1,q.x),K=Math.max(K,q.y1,q.y);break;case"C":Q=Math.min(Q,q.x1,q.x2,q.x),Z=Math.min(Z,q.y1,q.y2,q.y),J=Math.max(J,q.x1,q.x2,q.x),K=Math.max(K,q.y1,q.y2,q.y);break}if(!Number.isFinite(Q))return{xMin:0,yMin:0,xMax:0,yMax:0};return{xMin:Q,yMin:Z,xMax:J,yMax:K}}function FJ($,Q,Z){let J=$-2*Q+Z;if(Math.abs(J)<0.0000000001)return[];let K=($-Q)/J;if(K>0&&K<1)return[K];return[]}function LJ($,Q,Z,J){let K=-$+3*Q-3*Z+J,q=2*($-2*Q+Z),W=-$+Q,U=[];if(Math.abs(K)<0.0000000001){if(Math.abs(q)>0.0000000001){let H=-W/q;if(H>0&&H<1)U.push(H)}}else{let H=q*q-4*K*W;if(H>=0){let _=Math.sqrt(H),N=(-q+_)/(2*K),j=(-q-_)/(2*K);if(N>0&&N<1)U.push(N);if(j>0&&j<1)U.push(j)}}return U}function DJ($,Q,Z,J){let K=1-J;return K*K*$+2*K*J*Q+J*J*Z}function BJ($,Q,Z,J,K){let q=1-K;return q*q*q*$+3*q*q*K*Q+3*q*K*K*Z+K*K*K*J}function iH($){let Q=1/0,Z=1/0,J=-1/0,K=-1/0,q=0,W=0;for(let U of $.commands)switch(U.type){case"M":q=U.x,W=U.y,Q=Math.min(Q,q),Z=Math.min(Z,W),J=Math.max(J,q),K=Math.max(K,W);break;case"L":q=U.x,W=U.y,Q=Math.min(Q,q),Z=Math.min(Z,W),J=Math.max(J,q),K=Math.max(K,W);break;case"Q":{Q=Math.min(Q,U.x),Z=Math.min(Z,U.y),J=Math.max(J,U.x),K=Math.max(K,U.y);for(let H of FJ(q,U.x1,U.x)){let _=DJ(q,U.x1,U.x,H);Q=Math.min(Q,_),J=Math.max(J,_)}for(let H of FJ(W,U.y1,U.y)){let _=DJ(W,U.y1,U.y,H);Z=Math.min(Z,_),K=Math.max(K,_)}q=U.x,W=U.y;break}case"C":{Q=Math.min(Q,U.x),Z=Math.min(Z,U.y),J=Math.max(J,U.x),K=Math.max(K,U.y);for(let H of LJ(q,U.x1,U.x2,U.x)){let _=BJ(q,U.x1,U.x2,U.x,H);Q=Math.min(Q,_),J=Math.max(J,_)}for(let H of LJ(W,U.y1,U.y2,U.y)){let _=BJ(W,U.y1,U.y2,U.y,H);Z=Math.min(Z,_),K=Math.max(K,_)}q=U.x,W=U.y;break}}if(!Number.isFinite(Q))return{xMin:0,yMin:0,xMax:0,yMax:0};return{xMin:Q,yMin:Z,xMax:J,yMax:K}}function pH($,Q,Z){let J=Z;for(let K of $.commands)switch(K.type){case"M":case"L":{let q=N1(K.x,K.y,Q);J=Math.min(J,q.x);break}case"Q":{let q=N1(K.x1,K.y1,Q),W=N1(K.x,K.y,Q);J=Math.min(J,q.x,W.x);break}case"C":{let q=N1(K.x1,K.y1,Q),W=N1(K.x2,K.y2,Q),U=N1(K.x,K.y,Q);J=Math.min(J,q.x,W.x,U.x);break}}return J}function oH($,Q,Z){return f6($,MJ(Q,Z))}function cH($,Q,Z=Q){return f6($,RJ(Q,Z))}function sH($,Q){return f6($,TJ(Q))}function aH($,Q){let Z=Math.tan(Q*Math.PI/180);return f6($,PJ(Z,0))}function rH($,Q,Z){return[[1,0,-$*Z],[0,1,-Q*Z],[0,0,1]]}function tH($){let Q=[],Z=1/0,J=1/0,K=-1/0,q=-1/0;for(let U of $)if(Q.push(...U.commands),U.bounds)Z=Math.min(Z,U.bounds.xMin),J=Math.min(J,U.bounds.yMin),K=Math.max(K,U.bounds.xMax),q=Math.max(q,U.bounds.yMax);let W=Number.isFinite(Z)?{xMin:Z,yMin:J,xMax:K,yMax:q}:null;return{commands:Q,bounds:W}}function eH($){return{commands:$.commands.map((Q)=>({...Q})),bounds:$.bounds?{...$.bounds}:null,flags:$.flags}}var kJ;((K)=>{K[K.None=0]="None";K[K.Decompose=1]="Decompose";K[K.Compose=2]="Compose";K[K.Auto=3]="Auto"})(kJ||={});function n1($){if($>=1425&&$<=1469)return J_($);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 K_($);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 OJ($);if($>=3761&&$<=3772)return 0;if($>=3784&&$<=3789)return OJ($);if($>=3864&&$<=3865)return 220;if($===3893)return 220;if($===3895)return 220;if($===3897)return 216;if($>=3953&&$<=3966)return IJ($);if($>=3968&&$<=3972)return IJ($);if($>=3974&&$<=3975)return 230;if($===4151)return 7;if($===4153)return 9;if($===4154)return 9;if($>=12330&&$<=12335)return $_($);if($>=12441&&$<=12442)return 8;if($>=768&&$<=879)return q_($);if($>=6832&&$<=6911)return Q_($);if($>=7616&&$<=7679)return Z_($);if($>=65056&&$<=65071)return 230;return 0}function OJ($){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 IJ($){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 $_($){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 Q_($){if($>=6832&&$<=6846)return 230;if($===6847)return 220;if($===6848)return 220;return 230}function Z_($){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 J_($){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 K_($){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 q_($){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 T8($){let Q=$.length,Z=1;while(Z<Q){let J=$[Z];if(!J){Z++;continue}let K=n1(J.codepoint);if(K===0){Z++;continue}let q=Z;while(q>0){let W=$[q-1];if(!W)break;let U=n1(W.codepoint);if(U===0)break;if(U<=K)break;$[q]=W,$[q-1]=J,q--}Z++}}var W_=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 P8($){return W_.get($)??null}var U_=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 vJ($,Q){let Z=U_.get($);if(!Z)return null;return Z.get(Q)??null}function H_($){if($.length===0)return $;let Q=[],Z=0;while(Z<$.length){let J=$[Z];if(!J){Z++;continue}if(n1(J.codepoint)===0){let q=J.codepoint,W=0,U=Z+1;while(U<$.length){let H=$[U];if(!H)break;let _=n1(H.codepoint);if(_===0)break;if(_>W||W===0){let N=vJ(q,H.codepoint);if(N!==null){q=N,U++;continue}}W=_,U++}Q.push({glyphId:J.glyphId,cluster:J.cluster,mask:J.mask,codepoint:q});for(let H=Z+1;H<U;H++){let _=$[H];if(!_)continue;let N=n1(_.codepoint);if(vJ(q,_.codepoint)===null&&N!==0)Q.push(_)}Z=U}else Q.push(J),Z++}return Q}function __($,Q){if(Q===0)return $;if(Q===1){let Z=[];for(let J of $){let K=P8(J.codepoint);if(K)for(let q of K)Z.push({glyphId:J.glyphId,cluster:J.cluster,mask:J.mask,codepoint:q});else Z.push(J)}return T8(Z),Z}if(Q===2){let Z=[];for(let J of $){let K=P8(J.codepoint);if(K)for(let q of K)Z.push({glyphId:J.glyphId,cluster:J.cluster,mask:J.mask,codepoint:q});else Z.push(J)}return T8(Z),H_(Z)}if(Q===3){let Z=[];for(let J of $){let K=P8(J.codepoint);if(K)for(let q of K)Z.push({glyphId:J.glyphId,cluster:J.cluster,mask:J.mask,codepoint:q});else Z.push(J)}return T8(Z),Z}return $}function V0($,Q,Z){for(let J=0;J<Q.length;J++){let K=Q[J],q=Z[J];if(!K||!q)continue;let W=$.gdef?B1($.gdef,K.glyphId):0,U=n1(K.codepoint);if(W!==3&&U===0)continue;let H=-1;for(let X=J-1;X>=0;X--){let V=Q[X];if(!V)continue;let w=$.gdef?B1($.gdef,V.glyphId):0,G=n1(V.codepoint);if(w===1||w===0&&G===0){H=X;break}}if(H<0)continue;let _=Q[H],N=Z[H];if(!_||!N)continue;let j=$.advanceWidth(_.glyphId);N_($,K,q,_,N,j,U),q.xAdvance=0,q.yAdvance=0}}function N_($,Q,Z,J,K,q,W){let U=$.advanceWidth(Q.glyphId),H=$.unitsPerEm,_=(q-U)/2,N=0;if(W>=200&&W<=240)N=H*0.7,_=(q-U)/2;else if(W>=202&&W<=220)N=-H*0.15,_=(q-U)/2;else if(W===1)_=(q-U)/2,N=H*0.3;else if(W>=7&&W<=9)N=-H*0.1,_=(q-U)/2;else if(W>=10&&W<=35){if(W<=22)N=-H*0.2;else N=W<30?-H*0.15:H*0.6;_=(q-U)/2}Z.xOffset=K.xOffset+_-q,Z.yOffset=K.yOffset+N}function w0($,Q,Z){if(!$.kern)return;for(let K=0;K<Q.length-1;K++){let q=Q[K],W=Q[K+1];if(!q||!W)continue;let U=Z[K];if(!U)continue;let H=$.gdef?B1($.gdef,q.glyphId):0,_=$.gdef?B1($.gdef,W.glyphId):0;if(H===3||_===3)continue;let N=j_($,q.glyphId,W.glyphId);if(N!==0)U.xAdvance+=N}}function j_($,Q,Z){let J=$.kern;if(!J)return 0;return B9(J,Q,Z)}function CJ($,Q=!0){if($<1||$>20)throw Error(`Stylistic set number must be 1-20, got ${$}`);let Z=`ss${$.toString().padStart(2,"0")}`;return{tag:R(Z),enabled:Q}}function X_($,Q=!0){return $.map((Z)=>CJ(Z,Q))}function SJ($,Q=!0){if($<1||$>99)throw Error(`Character variant number must be 1-99, got ${$}`);let Z=`cv${$.toString().padStart(2,"0")}`;return{tag:R(Z),enabled:Q}}function V_($,Q=!0){return $.map((Z)=>SJ(Z,Q))}function w_($=!0){return{tag:R("liga"),enabled:$}}function G_($=!0){return{tag:R("dlig"),enabled:$}}function Y_($=!0){return{tag:R("hlig"),enabled:$}}function z_($=!0){return{tag:R("calt"),enabled:$}}function E_($=!0){return{tag:R("salt"),enabled:$}}function A_($=!0){return{tag:R("swsh"),enabled:$}}function hJ($=!0){return{tag:R("smcp"),enabled:$}}function yJ($=!0){return{tag:R("c2sc"),enabled:$}}function F_($=!0){return{tag:R("pcap"),enabled:$}}function L_($=!0){return[hJ($),yJ($)]}function D_($=!0){return{tag:R("onum"),enabled:$}}function B_($=!0){return{tag:R("lnum"),enabled:$}}function M_($=!0){return{tag:R("pnum"),enabled:$}}function R_($=!0){return{tag:R("tnum"),enabled:$}}function T_($=!0){return{tag:R("frac"),enabled:$}}function P_($=!0){return{tag:R("ordn"),enabled:$}}function O_($=!0){return{tag:R("zero"),enabled:$}}function I_($=!0){return{tag:R("sups"),enabled:$}}function v_($=!0){return{tag:R("subs"),enabled:$}}function k_($=!0){return{tag:R("sinf"),enabled:$}}function C_($=!0){return{tag:R("case"),enabled:$}}function S_($=!0){return{tag:R("cpsp"),enabled:$}}function h_($=!0){return{tag:R("kern"),enabled:$}}function bJ($=!0){return{tag:R("vert"),enabled:$}}function mJ($=!0){return{tag:R("vrt2"),enabled:$}}function gJ($=!0){return{tag:R("vkna"),enabled:$}}function y_($=!0){return[bJ($),mJ($),gJ($)]}function b_($=!0){return{tag:R("ruby"),enabled:$}}function m_($=!0){return{tag:R("hwid"),enabled:$}}function g_($=!0){return{tag:R("fwid"),enabled:$}}function u_($=!0){return{tag:R("pwid"),enabled:$}}function x_($=!0){return{tag:R("qwid"),enabled:$}}function f_($=!0){return{tag:R("twid"),enabled:$}}function l_($=!0){return{tag:R("jp78"),enabled:$}}function n_($=!0){return{tag:R("jp83"),enabled:$}}function d_($=!0){return{tag:R("jp90"),enabled:$}}function i_($=!0){return{tag:R("jp04"),enabled:$}}function p_($=!0){return{tag:R("smpl"),enabled:$}}function o_($=!0){return{tag:R("trad"),enabled:$}}function uJ($,Q=!0){return{tag:R($),enabled:Q}}function c_($,Q=!0){return $.map((Z)=>uJ(Z,Q))}function s_(...$){let Q=[];for(let Z of $)if(Array.isArray(Z))Q.push(...Z);else Q.push(Z);return Q}var xJ=new WeakMap,a_=64,r_=["ccmp","locl","rlig","rclt","calt","liga"],t_=["kern","mark","mkmk"];function e_($,Q,Z,J,K){let q=J.map((U)=>`${P6(U.tag)}:${U.enabled?"1":"0"}`).sort().join(","),W=K?K.map((U)=>U.toFixed(4)).join(","):"";return`${$}|${Q||""}|${Z}|${q}|${W}`}function lJ($,Q,Z,J,K=[],q=null){let W=e_(Q,Z,J,K,q),U=xJ.get($);if(!U)U=new Map,xJ.set($,U);let H=U.get(W);if(H)return H;let _=$N($,Q,Z,J,K,q);if(U.size>=a_){let N=U.keys().next().value;if(N!==void 0)U.delete(N)}return U.set(W,_),_}function G0($,Q,Z,J,K=[],q=null){return lJ($,Q,Z,J,K,q)}function $N($,Q,Z,J,K=[],q=null){let W=R(Q.padEnd(4," ")),U=Z?R(Z.padEnd(4," ")):null,H=new Set;for(let j of r_)H.add(R(j));for(let j of t_)H.add(R(j));for(let j of K)if(j.enabled)H.add(j.tag);else H.delete(j.tag);let _=fJ($.gsub,W,U,H,q),N=fJ($.gpos,W,U,H,q);return{script:W,language:U,direction:J,gsubLookups:_,gposLookups:N}}function fJ($,Q,Z,J,K){if(!$)return[];let q=$,W=new Set,U=j8(q.scriptList,Q);if(!U)U=j8(q.scriptList,R("DFLT"));if(!U)U=j8(q.scriptList,R("latn"));if(!U)return[];let H=B7(U,Z);if(!H)return[];let _=q.featureVariations,N=_&&K?h6(_,K):null,j=new Map;if(N)for(let w of N.featureTableSubstitution.substitutions)j.set(w.featureIndex,w.alternateFeature.lookupListIndices);if(H.requiredFeatureIndex!==65535){let w=X9(q.featureList,H.requiredFeatureIndex);if(w){let Y=j.get(H.requiredFeatureIndex)??w.feature.lookupListIndices;for(let z of Y)W.add(z)}}for(let w of H.featureIndices){let G=X9(q.featureList,w);if(!G)continue;if(J.has(G.featureTag)){let z=j.get(w)??G.feature.lookupListIndices;for(let E of z)W.add(E)}}let X=[],V=Array.from(W).sort((w,G)=>w-G);for(let w of V){let G=q.lookups[w];if(G)X.push({index:w,lookup:G})}return X}function QN($){return $>=1536&&$<=1791||$>=1872&&$<=1919||$>=2208&&$<=2303||$>=64336&&$<=65023||$>=65136&&$<=65279}function ZN($){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(QN($))return"U";return"U"}function JN($){let Q=$.length,Z=Array(Q).fill(0),J=[];for(let K of $){let q=K.codepoint??0;J.push(ZN(q))}for(let K=0;K<Q;K++){let q=J[K];if(!q)continue;if(q==="U"||q==="T")continue;let W=null;for(let N=K-1;N>=0;N--){let j=J[N];if(j&&j!=="T"){W=j;break}}let U=null;for(let N=K+1;N<Q;N++){let j=J[N];if(j&&j!=="T"){U=j;break}}let H=W==="D"||W==="L"||W==="C",_=U==="D"||U==="R"||U==="C";if(q==="D")if(H&&_)Z[K]=3;else if(H)Z[K]=2;else if(_)Z[K]=4;else Z[K]=1;else if(q==="R")if(H)Z[K]=2;else Z[K]=1;else if(q==="L")if(_)Z[K]=4;else Z[K]=1;else if(q==="C")Z[K]=0}return Z}function Y0($){let Q=JN($);for(let[Z,J]of Q.entries()){let K=$[Z];if(!K)continue;switch(J){case 1:K.mask=K.mask&4294967280|1;break;case 2:K.mask=K.mask&4294967280|2;break;case 3:K.mask=K.mask&4294967280|4;break;case 4:K.mask=K.mask&4294967280|8;break}}}function E0($){return $>=44032&&$<=55203}function KN($){return $>=4352&&$<=4607||$>=43360&&$<=43388||$>=55216&&$<=55291}function qN($){return $>=4352&&$<4371||$>=43360&&$<=43388}function WN($){return $>=4449&&$<4470||$>=55216&&$<=55238}function UN($){return $>4519&&$<=4546||$>=55243&&$<=55291}function HN($){if(!E0($))return[$];let Q=$-44032,Z=Math.floor(Q/588),J=Math.floor(Q%588/28),K=Q%28,q=[4352+Z,4449+J];if(K>0)q.push(4519+K);return q}function nJ($,Q,Z=0){let J=$-4352,K=Q-4449,q=Z===0?0:Z-4519;if(J<0||J>=19)return null;if(K<0||K>=21)return null;if(q<0||q>=28)return null;return 44032+J*588+K*28+q}function l6($){if(qN($))return 1;if(WN($))return 2;if(UN($))return 3;if(E0($))return($-44032)%28===0?4:5;return 0}var z0={ljmo:1,vjmo:2,tjmo:4};function A0($){for(let Q of $)switch(l6(Q.codepoint)){case 1:Q.mask|=z0.ljmo;break;case 2:Q.mask|=z0.vjmo;break;case 3:Q.mask|=z0.tjmo;break;case 4:case 5:break}}function F0($){let Q=[],Z=0;while(Z<$.length){let J=$[Z];if(!J){Z++;continue}let K=l6(J.codepoint);if(K===1&&Z+1<$.length){let q=$[Z+1];if(!q){Q.push(J),Z++;continue}if(l6(q.codepoint)===2){let U=0,H=2;if(Z+2<$.length){let N=$[Z+2];if(N){if(l6(N.codepoint)===3)U=N.codepoint,H=3}}let _=nJ(J.codepoint,q.codepoint,U);if(_!==null){Q.push({glyphId:J.glyphId,cluster:J.cluster,mask:J.mask,codepoint:_}),Z+=H;continue}}}if(K===4&&Z+1<$.length){let q=$[Z+1];if(!q){Q.push(J),Z++;continue}if(l6(q.codepoint)===3){let U=HN(J.codepoint),[H,_]=U;if(U.length===2&&H!==void 0&&_!==void 0){let N=nJ(H,_,q.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 dJ($){return E0($)||KN($)||$>=12593&&$<=12686}function _N($){return $>=1424&&$<=1535||$>=64285&&$<=64335}function NN($){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(_N($))return 0;return 0}function L0($){let Q=0;for(let Z=0;Z<$.length;Z++){let J=$[Z];if(!J)continue;if(NN(J.codepoint)===1)Q=Z;J.mask=J.mask&4294901760|Q&65535}}function iJ($){return $>=2304&&$<=2431}function pJ($){return $>=2432&&$<=2559}function oJ($){return $>=2560&&$<=2687}function cJ($){return $>=2688&&$<=2815}function sJ($){return $>=2816&&$<=2943}function aJ($){return $>=2944&&$<=3071}function rJ($){return $>=3072&&$<=3199}function tJ($){return $>=3200&&$<=3327}function eJ($){return $>=3328&&$<=3455}function $K($){return iJ($)||pJ($)||oJ($)||cJ($)||sJ($)||aJ($)||rJ($)||tJ($)||eJ($)}function m1($){if($===8204)return 5;if($===8205)return 6;if($===9676)return 12;if(iJ($)){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(pJ($)){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(oJ($)||cJ($)||sJ($)||aJ($)||rJ($)||tJ($)||eJ($)){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 QK($){let Q=[],Z=$.length;if(Z===0)return Q;let J=0;while(J<Z){let K=jN($,J);Q.push(K),J=K.end}return Q}function jN($,Q){let Z=$.length,J=Q,K=-1,q=!1;if(J+1<Z){let U=$[J],H=$[J+1];if(U&&H){let _=m1(U.codepoint??0),N=m1(H.codepoint??0);if(_===15&&N===4)q=!0,J+=2}}let W=-1;while(J<Z){let U=$[J];if(!U){J++;continue}let H=U.codepoint??0,_=m1(H);if(_===1||_===15){if(W=J,J++,J<Z){let N=$[J];if(N&&m1(N.codepoint??0)===3)J++}if(J<Z){let N=$[J];if(N&&m1(N.codepoint??0)===4){if(J++,J<Z){let j=$[J];if(j){let X=m1(j.codepoint??0);if(X===6||X===5)J++}}continue}}break}else if(_===2){J++;break}else if(_===3)J++;else{if(W===-1)J++;break}}K=W>=0?W:Q;while(J<Z){let U=$[J];if(!U){J++;continue}let H=U.codepoint??0,_=m1(H);if(_===7||_===8||_===9||_===3)J++;else if(_===4){J++;break}else break}if(J===Q)J=Q+1;return{start:Q,end:J,hasReph:q,baseConsonant:K}}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 ZK($){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 D0($){let Q=QK($);for(let[Z,J]of Q.entries())for(let K=J.start;K<J.end;K++){let q=$[K];if(q){q.mask=q.mask&65535|(Z&65535)<<16;let W=m1(q.codepoint);if(W===3)q.mask|=q1.nukt;if(W===4){if(K<J.baseConsonant)q.mask|=q1.half;else if(K>J.baseConsonant)q.mask|=q1.blwf|q1.pstf}if(W===1||W===15){if(K<J.baseConsonant)q.mask|=q1.half|q1.cjct;else if(K>J.baseConsonant)q.mask|=q1.blwf|q1.pstf|q1.vatu}if(J.hasReph&&K<J.start+2)q.mask|=q1.rphf;if(W===7)switch(ZK(q.codepoint)){case 0:q.mask|=q1.pref|q1.pres;break;case 1:q.mask|=q1.abvf|q1.abvs;break;case 2:q.mask|=q1.blwf|q1.blws;break;case 3:q.mask|=q1.pstf|q1.psts;break}if(W===8)q.mask|=q1.abvs|q1.psts}}}function B0($){let Q=QK($);for(let Z of Q)XN($,Z)}function XN($,Q){let{start:Z,end:J,baseConsonant:K,hasReph:q}=Q,W=[];for(let U=K+1;U<J;U++){let H=$[U];if(!H)continue;if(m1(H.codepoint)===7){if(ZK(H.codepoint)===0)W.push({index:U,info:H})}}if(W.length>0){W.sort((U,H)=>H.index-U.index);for(let{index:U,info:H}of W){$.splice(U,1);let _=q?Z+2:Z;$.splice(_,0,H)}}if(q&&J>Z+2){let U=$[Z],H=$[Z+1];if(U&&H){let _=J-1;while(_>K){let N=$[_];if(!N)break;let j=m1(N.codepoint);if(j===8||j===9)_--;else break}if(_>Z+1){$.splice(Z,2);let N=_-2;$.splice(N+1,0,U,H)}}}}function F6($){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 t1={pref:1,blwf:2,abvf:4,pstf:8,cfar:16,pres:32,abvs:64,blws:128,psts:256,clig:512};function JK($){return $>=6016&&$<=6143||$>=6624&&$<=6655}function M0($){let Q=0;while(Q<$.length){let Z=$[Q];if(!Z){Q++;continue}let J=F6(Z.codepoint);if(J===0){Q++;continue}let K=Q,q=-1;if(J===1)q=Q;let W=Q+1;while(W<$.length){let U=$[W];if(!U){W++;continue}let H=F6(U.codepoint);if(H===0)break;if(H===1){let _=$[W-1];if(_&&F6(_.codepoint)!==4)break}if(H===4&&W+1<$.length){let _=$[W+1];if(_&&F6(_.codepoint)===1){U.mask|=t1.blwf,_.mask|=t1.blwf,W+=2;continue}}if(H===3)if(U.codepoint>=6081&&U.codepoint<=6083)U.mask|=t1.pref;else if(U.codepoint>=6071&&U.codepoint<=6074)U.mask|=t1.abvf;else if(U.codepoint===6075||U.codepoint===6076||U.codepoint===6077)U.mask|=t1.blwf;else U.mask|=t1.pstf;if(H===5)U.mask|=t1.abvs;if(H===6)U.mask|=t1.abvs;W++}Q=W}}function R0($){let Q=0;while(Q<$.length){let Z=$[Q];if(!Z){Q++;continue}if(F6(Z.codepoint)!==1){Q++;continue}let K=Q,q=Q+1;while(q<$.length){let W=$[q];if(!W)break;if(F6(W.codepoint)===4&&q+1<$.length)q+=2;else break}if(q<$.length){let W=$[q];if(W){let U=W.codepoint;if(U>=6081&&U<=6083){let H=W;for(let _=q;_>K;_--){let N=$[_-1];if(N)$[_]=N}$[K]=H}}}Q=q+1}}function L6($){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 h1={rphf:1,pref:2,blwf:4,pstf:8,pres:16,abvs:32,blws:64,psts:128};function KK($){return $>=4096&&$<=4255||$>=43616&&$<=43647||$>=43488&&$<=43519}function T0($){let Q=0;while(Q<$.length){let Z=$[Q];if(!Z){Q++;continue}let J=L6(Z.codepoint);if(J===0){Q++;continue}let K=-1,q=!1;if(J===1)K=Q;let W=Q+1;while(W<$.length){let U=$[W];if(!U){W++;continue}let H=L6(U.codepoint);if(H===0)break;if(H===5){if(q=!0,U.mask|=h1.blwf,W+1<$.length){let _=$[W+1];if(_&&L6(_.codepoint)===1){_.mask|=h1.blwf,W+=2;continue}}}if(H===4){let _=U.codepoint;if(_===4155)U.mask|=h1.pref;else if(_===4156)U.mask|=h1.pref;else if(_===4157)U.mask|=h1.blwf;else if(_===4158)U.mask|=h1.blwf}if(H===3){let _=U.codepoint;if(_===4145)U.mask|=h1.pref;else if(_===4141||_===4142||_===4146)U.mask|=h1.abvs;else if(_===4143||_===4144)U.mask|=h1.blws;else U.mask|=h1.psts}if(H===6||H===8)U.mask|=h1.abvs;if(H===1&&!q){if(W>0){let _=$[W-1];if(_){if(L6(_.codepoint)!==5)break}}}q=!1,W++}Q=W}}function P0($){let Q=0;while(Q<$.length){let Z=$[Q];if(!Z){Q++;continue}if(L6(Z.codepoint)!==1){Q++;continue}let K=Q,q=[],W=Q+1;while(W<$.length){let U=$[W];if(!U){W++;continue}let H=L6(U.codepoint);if(U.codepoint===4145){q.push(U),$.splice(W,1);continue}if(U.codepoint===4156){q.push(U),$.splice(W,1);continue}if(H===1||H===0)break;W++}if(q.length>0)$.splice(K,0,...q),Q+=q.length;Q++}}function I0($){return $>=3584&&$<=3711}function v0($){return $>=3712&&$<=3839}function O0($){if(I0($)){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(v0($)){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 O8($){let Q=0,Z=-1;for(let J=0;J<$.length;J++){let K=$[J];if(!K)continue;let q=O0(K.codepoint);if(q===1)Q++,Z=J;if(K.mask=K.mask&4294967040|q&255,K.mask=K.mask&65535|(Q&65535)<<16,q===2)K.mask|=256}}function I8($){let Q=0;while(Q<$.length){let Z=$[Q];if(!Z){Q++;continue}if(O0(Z.codepoint)===2){let K=Q+1;while(K<$.length){let q=$[K];if(!q){K++;continue}let W=O0(q.codepoint??0);if(W===1){let U=Z;$[Q]=q,$[K]=U;break}if(W!==2)break;K++}}Q++}}function qK($){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 d1($){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 Z1={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 WK($){let Q=[],Z=$.length;if(Z===0)return Q;let J=0;while(J<Z){let K=VN($,J);Q.push(K),J=K.end}return Q}function VN($,Q){let Z=$.length,J=Q,K=-1,q=!1;if(J+1<Z){let W=$[J],U=$[J+1];if(W&&U){let H=d1(W.codepoint??0),_=d1(U.codepoint??0);if(H===13&&_===8)q=!0,J+=2}}while(J<Z){let W=$[J];if(!W){J++;continue}let U=d1(W.codepoint??0);if(U===1||U===10||U===7||U===22){K=J,J++;break}if(U===26||U===30||U===39){J++;continue}if(K===-1)J++;break}if(K===-1)K=Q;while(J<Z){let W=$[J];if(!W){J++;continue}let U=d1(W.codepoint??0);if(U===8){if(J++,J<Z){let H=$[J];if(H){let _=d1(H.codepoint??0);if(_===1||_===4||_===17){J++;continue}if(_===20||_===21)J++}}continue}if(U===17||U===4){J++;continue}if(U===12||U===9){J++;continue}break}while(J<Z){let W=$[J];if(!W){J++;continue}let U=d1(W.codepoint??0);if(U===28||U===29||U===30||U===31||U===23){J++;continue}if(U===37||U===38||U===39||U===40){J++;continue}if(U===24||U===25||U===26||U===27){J++;continue}if(U===32||U===33){J++;continue}if(U===34||U===35||U===36||U===5||U===6){J++;continue}if(U===2||U===18){J++;continue}break}if(J===Q)J=Q+1;return{start:Q,end:J,base:K,hasReph:q}}function UK($){let Q=WK($);for(let[Z,J]of Q.entries())for(let K=J.start;K<J.end;K++){let q=$[K];if(!q)continue;q.mask=q.mask&65535|(Z&65535)<<16;let W=d1(q.codepoint);if(J.hasReph&&K<J.start+2)q.mask|=Z1.rphf;if(K<J.base){if(W===1||W===4||W===17)q.mask|=Z1.half|Z1.cjct}if(K>J.base){if(W===1||W===4||W===17)q.mask|=Z1.blwf|Z1.pstf|Z1.vatu}if(W===8||W===9)if(K<J.base)q.mask|=Z1.half;else q.mask|=Z1.haln;if(W===30)q.mask|=Z1.pref|Z1.pres;else if(W===28)q.mask|=Z1.abvf|Z1.abvs;else if(W===29)q.mask|=Z1.blwf|Z1.blws;else if(W===31||W===23)q.mask|=Z1.pstf|Z1.psts;if(W===37)q.mask|=Z1.abvs;else if(W===38)q.mask|=Z1.blws;else if(W===39)q.mask|=Z1.pres;else if(W===40)q.mask|=Z1.psts;if(W===32)q.mask|=Z1.abvs;else if(W===33)q.mask|=Z1.blws;if(W===34)q.mask|=Z1.abvs;else if(W===35)q.mask|=Z1.blws;else if(W===36||W===5||W===6)q.mask|=Z1.psts}}function HK($){let Q=WK($);for(let Z of Q)wN($,Z)}function wN($,Q){let{start:Z,end:J,base:K,hasReph:q}=Q,W=[];for(let U=K+1;U<J;U++){let H=$[U];if(!H)continue;let _=d1(H.codepoint);if(_===30||_===39)W.push({index:U,info:H})}if(W.length>0){W.sort((U,H)=>H.index-U.index);for(let{index:U,info:H}of W){$.splice(U,1);let _=q?Z+2:Z;$.splice(_,0,H)}}if(q&&J>Z+2){let U=$[Z],H=$[Z+1];if(U&&H){let _=J-1;while(_>K){let N=$[_];if(!N)break;let j=d1(N.codepoint);if(j===32||j===33||j===34||j===35||j===36||j===5||j===6)_--;else break}if(_>Z+1){$.splice(Z,2);let N=_-2;$.splice(N+1,0,U,H)}}}}function GN($){return $ instanceof Q6?$.font:$}function YN($){return $ instanceof Q6?$:new Q6($)}function zN($,Q,Z={}){let J=GN($),K=YN($),q=Z.script??Q.script??"latn",W=Z.language??Q.language??null,U=Z.direction??"ltr",H=Z.features??[],_=K.normalizedCoords.length>0?K.normalizedCoords:null,N=G0(J,q,W,U,H,_),j=new $6;j.direction=Q.direction,j.script=q,j.language=W;let X=[];for(let[w,G]of Q.codepoints.entries()){let Y=Q.clusters[w];if(Y===void 0)continue;let z=J.glyphId(G);X.push({glyphId:z,cluster:Y,mask:4294967295,codepoint:G})}if(j.initFromInfos(X),EN(j,q),FN(J,j,N),yN(K,j),J.gpos!==null&&N.gposLookups.length>0)bN(J,j,N);else w0(J,j.infos,j.positions),V0(J,j.infos,j.positions);if(!J.gsub&&J.morx)rN(J,j);if(U==="rtl")j.reverse();return j}function EN($,Q){if(Q==="arab"||Q==="syrc"||Q==="mand"||Q==="nko "){Y0($.infos);return}if(Q==="hebr"){L0($.infos);return}if(Q==="hang"||Q==="kore"){let Z=F0($.infos);if(Z.length!==$.infos.length)$.initFromInfos(Z);A0($.infos);return}if(Q==="deva"||Q==="beng"||Q==="guru"||Q==="gujr"||Q==="orya"||Q==="taml"||Q==="telu"||Q==="knda"||Q==="mlym"){D0($.infos),B0($.infos);return}if(Q==="thai"||Q==="lao "){O8($.infos),I8($.infos);return}if(Q==="khmr"){M0($.infos),R0($.infos);return}if(Q==="mymr"){T0($.infos),P0($.infos);return}if(qK(Q)){UK($.infos),HK($.infos);return}if(Q==="Zyyy"||Q==="Zinh"||Q==="Zzzz")AN($.infos)}function AN($){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){Y0($);return}if(J>=1424&&J<=1535){L0($);return}if(dJ(J)){let K=F0($);if(K.length!==$.length)$.length=0,$.push(...K);A0($);return}if($K(J)){D0($),B0($);return}if(I0(J)){O8($),I8($);return}if(v0(J)){O8($),I8($);return}if(JK(J)){M0($),R0($);return}if(KK(J)){T0($),P0($);return}}}function FN($,Q,Z){for(let{lookup:J}of Z.gsubLookups)LN($,Q,J,Z)}function LN($,Q,Z,J){switch(Z.type){case 1:DN($,Q,Z);break;case 2:BN($,Q,Z);break;case 3:MN($,Q,Z);break;case 4:RN($,Q,Z);break;case 5:TN($,Q,Z,J);break;case 6:PN($,Q,Z,J);break;case 8:ON($,Q,Z);break}}function DN($,Q,Z){for(let J of Q.infos){if(r($,J.glyphId,Z.flag))continue;let K=D9(Z,J.glyphId);if(K!==null)J.glyphId=K}}function BN($,Q,Z){let J=0;while(J<Q.infos.length){let K=Q.infos[J];if(!K){J++;continue}if(r($,K.glyphId,Z.flag)){J++;continue}let q=!1;for(let W of Z.subtables){let U=W.coverage.get(K.glyphId);if(U===null)continue;let H=W.sequences[U];if(!H||H.length===0)continue;let[_,...N]=H;if(_===void 0)continue;K.glyphId=_;for(let[j,X]of N.entries()){let V={glyphId:X,cluster:K.cluster,mask:K.mask,codepoint:K.codepoint},w={xAdvance:0,yAdvance:0,xOffset:0,yOffset:0};Q.insertGlyph(J+j+1,V,w)}J+=H.length,q=!0;break}if(!q)J++}}function MN($,Q,Z){for(let J of Q.infos){if(r($,J.glyphId,Z.flag))continue;for(let K of Z.subtables){let q=K.coverage.get(J.glyphId);if(q===null)continue;let W=K.alternateSets[q];if(!W||W.length===0)continue;let[U]=W;if(U===void 0)continue;J.glyphId=U;break}}}function RN($,Q,Z){let J=0;while(J<Q.infos.length){let K=Q.infos[J];if(!K){J++;continue}if(r($,K.glyphId,Z.flag)){J++;continue}let q=[J],W=[K.glyphId];for(let H=J+1;H<Q.infos.length&&W.length<16;H++){let _=Q.infos[H];if(!_)continue;if(r($,_.glyphId,Z.flag))continue;q.push(H),W.push(_.glyphId)}let U=y7(Z,W,0);if(U){K.glyphId=U.ligatureGlyph;let H=[];for(let _=1;_<U.consumed;_++){let N=q[_];if(N!==void 0){let j=Q.infos[N];if(j)K.cluster=Math.min(K.cluster,j.cluster);H.push(N)}}for(let _ of H.reverse())Q.removeRange(_,_+1)}J++}}function TN($,Q,Z,J){for(let K=0;K<Q.infos.length;K++){let q=Q.infos[K];if(!q)continue;if(r($,q.glyphId,Z.flag))continue;for(let W of Z.subtables){let U=!1,H=[];if(W.format===1){let _=IN($,Q,K,W,Z.flag);if(_)U=!0,H=_}else if(W.format===2){let _=vN($,Q,K,W,Z.flag);if(_)U=!0,H=_}else if(W.format===3){if(kN($,Q,K,W,Z.flag))U=!0,H=W.lookupRecords}if(U){_K($,Q,K,H,J);break}}}}function PN($,Q,Z,J){for(let K=0;K<Q.infos.length;K++){let q=Q.infos[K];if(!q)continue;if(r($,q.glyphId,Z.flag))continue;for(let W of Z.subtables){let U=!1,H=[];if(W.format===1){let _=CN($,Q,K,W,Z.flag);if(_)U=!0,H=_}else if(W.format===2){let _=SN($,Q,K,W,Z.flag);if(_)U=!0,H=_}else if(W.format===3){if(hN($,Q,K,W,Z.flag))U=!0,H=W.lookupRecords}if(U){_K($,Q,K,H,J);break}}}}function ON($,Q,Z){for(let J=Q.infos.length-1;J>=0;J--){let K=Q.infos[J];if(!K)continue;if(r($,K.glyphId,Z.flag))continue;for(let q of Z.subtables){let W=q.coverage.get(K.glyphId);if(W===null)continue;let U=!0,H=J+1;for(let X of q.backtrackCoverages){while(H<Q.infos.length&&r($,Q.infos[H]?.glyphId,Z.flag))H++;if(H>=Q.infos.length||X.get(Q.infos[H]?.glyphId)===null){U=!1;break}H++}if(!U)continue;let _=!0,N=J-1;for(let X of q.lookaheadCoverages){while(N>=0&&r($,Q.infos[N]?.glyphId,Z.flag))N--;if(N<0||X.get(Q.infos[N]?.glyphId)===null){_=!1;break}N--}if(!_)continue;let j=q.substituteGlyphIds[W];if(j!==void 0)K.glyphId=j;break}}}function IN($,Q,Z,J,K){let q=Q.infos[Z]?.glyphId,W=J.coverage.get(q);if(W===null)return null;let U=J.ruleSets[W];if(!U)return null;for(let H of U)if(D6($,Q,Z+1,H.inputSequence,K))return H.lookupRecords;return null}function vN($,Q,Z,J,K){let q=Q.infos[Z]?.glyphId;if(J.coverage.get(q)===null)return null;let U=J.classDef.get(q),H=J.classRuleSets[U];if(!H)return null;for(let _ of H)if(B6($,Q,Z+1,_.inputClasses,J.classDef,K))return _.lookupRecords;return null}function kN($,Q,Z,J,K){let q=Z;for(let W of J.coverages){while(q<Q.infos.length&&r($,Q.infos[q]?.glyphId,K))q++;if(q>=Q.infos.length)return!1;if(W.get(Q.infos[q]?.glyphId)===null)return!1;q++}return!0}function CN($,Q,Z,J,K){let q=Q.infos[Z]?.glyphId,W=J.coverage.get(q);if(W===null)return null;let U=J.chainRuleSets[W];if(!U)return null;for(let H of U){if(!XK($,Q,Z-1,H.backtrackSequence,K))continue;if(!D6($,Q,Z+1,H.inputSequence,K))continue;let _=Z+1;for(let N=0;N<H.inputSequence.length;N++){while(_<Q.infos.length&&r($,Q.infos[_]?.glyphId,K))_++;_++}if(!D6($,Q,_,H.lookaheadSequence,K))continue;return H.lookupRecords}return null}function SN($,Q,Z,J,K){let q=Q.infos[Z]?.glyphId;if(J.coverage.get(q)===null)return null;let U=J.inputClassDef.get(q),H=J.chainClassRuleSets[U];if(!H)return null;for(let _ of H){if(!VK($,Q,Z-1,_.backtrackClasses,J.backtrackClassDef,K))continue;if(!B6($,Q,Z+1,_.inputClasses,J.inputClassDef,K))continue;let N=Z+1;for(let j=0;j<_.inputClasses.length;j++){while(N<Q.infos.length&&r($,Q.infos[N]?.glyphId,K))N++;N++}if(!B6($,Q,N,_.lookaheadClasses,J.lookaheadClassDef,K))continue;return _.lookupRecords}return null}function hN($,Q,Z,J,K){let q=Z-1;for(let H of J.backtrackCoverages){while(q>=0&&r($,Q.infos[q]?.glyphId,K))q--;if(q<0)return!1;if(H.get(Q.infos[q]?.glyphId)===null)return!1;q--}let W=Z;for(let H of J.inputCoverages){while(W<Q.infos.length&&r($,Q.infos[W]?.glyphId,K))W++;if(W>=Q.infos.length)return!1;if(H.get(Q.infos[W]?.glyphId)===null)return!1;W++}let U=W;for(let H of J.lookaheadCoverages){while(U<Q.infos.length&&r($,Q.infos[U]?.glyphId,K))U++;if(U>=Q.infos.length)return!1;if(H.get(Q.infos[U]?.glyphId)===null)return!1;U++}return!0}function _K($,Q,Z,J,K){let q=[...J].sort((W,U)=>U.sequenceIndex-W.sequenceIndex);for(let W of q){let U=K.gsubLookups.find((N)=>N.index===W.lookupListIndex);if(!U)continue;let H=Z+W.sequenceIndex;if(H>=Q.infos.length)continue;let _=Q.infos[H];if(!_)continue;if(U.lookup.type===1){let N=D9(U.lookup,_.glyphId);if(N!==null)_.glyphId=N}}}function yN($,Q){for(let[Z,J]of Q.infos.entries()){let K=$.advanceWidth(J.glyphId);Q.setAdvance(Z,K,0)}}function bN($,Q,Z){for(let{lookup:J}of Z.gposLookups)NK($,Q,J,Z)}function NK($,Q,Z,J){switch(Z.type){case 1:mN($,Q,Z);break;case 2:gN($,Q,Z);break;case 3:uN($,Q,Z);break;case 4:xN($,Q,Z);break;case 5:fN($,Q,Z);break;case 6:lN($,Q,Z);break;case 7:nN($,Q,Z,J);break;case 8:dN($,Q,Z,J);break}}function mN($,Q,Z){for(let[J,K]of Q.infos.entries()){let q=Q.positions[J];if(!q)continue;if(r($,K.glyphId,Z.flag))continue;for(let W of Z.subtables){let U=W.coverage.get(K.glyphId);if(U===null)continue;let H=W.format===1?W.value:W.values?.[U];if(H){if(H.xPlacement)q.xOffset+=H.xPlacement;if(H.yPlacement)q.yOffset+=H.yPlacement;if(H.xAdvance)q.xAdvance+=H.xAdvance;if(H.yAdvance)q.yAdvance+=H.yAdvance}break}}}function gN($,Q,Z){for(let J=0;J<Q.infos.length-1;J++){let K=Q.infos[J];if(!K)continue;if(r($,K.glyphId,Z.flag))continue;let q=J+1;while(q<Q.infos.length){let H=Q.infos[q];if(H&&!r($,H.glyphId,Z.flag))break;q++}if(q>=Q.infos.length)break;let W=Q.infos[q];if(!W)continue;let U=O7(Z,K.glyphId,W.glyphId);if(U){let H=Q.positions[J],_=Q.positions[q];if(H)H.xAdvance+=U.xAdvance1;if(_)_.xAdvance+=U.xAdvance2}}}function uN($,Q,Z){for(let J=0;J<Q.infos.length-1;J++){let K=Q.infos[J];if(!K)continue;if(r($,K.glyphId,Z.flag))continue;let q=J+1;while(q<Q.infos.length){let U=Q.infos[q];if(U&&!r($,U.glyphId,Z.flag))break;q++}if(q>=Q.infos.length)break;let W=Q.infos[q];if(!W)continue;for(let U of Z.subtables){let H=U.coverage.get(K.glyphId),_=U.coverage.get(W.glyphId);if(H===null||_===null)continue;let N=U.entryExitRecords[H],j=U.entryExitRecords[_];if(!N?.exitAnchor||!j?.entryAnchor)continue;let X=N.exitAnchor,V=j.entryAnchor,w=Q.positions[q];if(w)w.yOffset=X.yCoordinate-V.yCoordinate;break}}}function xN($,Q,Z){for(let J=0;J<Q.infos.length;J++){let K=Q.infos[J];if(!K)continue;if(B1($.gdef,K.glyphId)!==3)continue;let q=-1;for(let U=J-1;U>=0;U--){let H=Q.infos[U];if(!H)continue;let _=B1($.gdef,H.glyphId);if(_===1||_===0){q=U;break}if(_===3)continue;if(_===2){q=U;break}}if(q<0)continue;let W=Q.infos[q];if(!W)continue;for(let U of Z.subtables){let H=U.markCoverage.get(K.glyphId),_=U.baseCoverage.get(W.glyphId);if(H===null||_===null)continue;let N=U.markArray.markRecords[H],j=U.baseArray[_];if(!N||!j)continue;let X=j.baseAnchors[N.markClass];if(!X)continue;let V=N.markAnchor,w=Q.positions[J],G=Q.positions[q];if(!w||!G)continue;w.xOffset=X.xCoordinate-V.xCoordinate+G.xOffset,w.yOffset=X.yCoordinate-V.yCoordinate+G.yOffset,w.xAdvance=0,w.yAdvance=0;break}}}function fN($,Q,Z){for(let J=0;J<Q.infos.length;J++){let K=Q.infos[J];if(!K)continue;if(B1($.gdef,K.glyphId)!==3)continue;let q=-1,W=0;for(let H=J-1;H>=0;H--){let _=Q.infos[H];if(!_)continue;let N=B1($.gdef,_.glyphId);if(N===2){q=H;break}if(N===3){W++;continue}break}if(q<0)continue;let U=Q.infos[q];if(!U)continue;for(let H of Z.subtables){let _=H.markCoverage.get(K.glyphId),N=H.ligatureCoverage.get(U.glyphId);if(_===null||N===null)continue;let j=H.markArray.markRecords[_],X=H.ligatureArray[N];if(!j||!X)continue;let V=Math.min(W,X.componentRecords.length-1),w=X.componentRecords[V];if(!w)continue;let G=w.ligatureAnchors[j.markClass];if(!G)continue;let Y=j.markAnchor,z=Q.positions[J],E=Q.positions[q];if(!z||!E)continue;z.xOffset=G.xCoordinate-Y.xCoordinate+E.xOffset,z.yOffset=G.yCoordinate-Y.yCoordinate+E.yOffset,z.xAdvance=0,z.yAdvance=0;break}}}function lN($,Q,Z){for(let J=0;J<Q.infos.length;J++){let K=Q.infos[J];if(!K)continue;if(B1($.gdef,K.glyphId)!==3)continue;let q=-1;if(J>0){let U=Q.infos[J-1];if(U){if(B1($.gdef,U.glyphId)===3)q=J-1}}if(q<0)continue;let W=Q.infos[q];if(!W)continue;for(let U of Z.subtables){let H=U.mark1Coverage.get(K.glyphId),_=U.mark2Coverage.get(W.glyphId);if(H===null||_===null)continue;let N=U.mark1Array.markRecords[H],j=U.mark2Array[_];if(!N||!j)continue;let X=j.mark2Anchors[N.markClass];if(!X)continue;let V=N.markAnchor,w=Q.positions[J],G=Q.positions[q];if(!w||!G)continue;w.xOffset=X.xCoordinate-V.xCoordinate+G.xOffset,w.yOffset=X.yCoordinate-V.yCoordinate+G.yOffset;break}}}function nN($,Q,Z,J){for(let K=0;K<Q.infos.length;K++){let q=Q.infos[K];if(!q)continue;if(r($,q.glyphId,Z.flag))continue;for(let W of Z.subtables){let U=!1,H=[];if(W.format===1){let _=iN($,Q,K,W,Z.flag);if(_)U=!0,H=_}else if(W.format===2){let _=pN($,Q,K,W,Z.flag);if(_)U=!0,H=_}else if(W.format===3){if(oN($,Q,K,W,Z.flag))U=!0,H=W.lookupRecords}if(U){jK($,Q,K,H,J);break}}}}function dN($,Q,Z,J){for(let K=0;K<Q.infos.length;K++){let q=Q.infos[K];if(!q)continue;if(r($,q.glyphId,Z.flag))continue;for(let W of Z.subtables){let U=!1,H=[];if(W.format===1){let _=cN($,Q,K,W,Z.flag);if(_)U=!0,H=_}else if(W.format===2){let _=sN($,Q,K,W,Z.flag);if(_)U=!0,H=_}else if(W.format===3){if(aN($,Q,K,W,Z.flag))U=!0,H=W.lookupRecords}if(U){jK($,Q,K,H,J);break}}}}function iN($,Q,Z,J,K){let q=Q.infos[Z]?.glyphId,W=J.coverage.get(q);if(W===null)return null;let U=J.ruleSets[W];if(!U)return null;for(let H of U)if(D6($,Q,Z+1,H.inputSequence,K))return H.lookupRecords;return null}function pN($,Q,Z,J,K){let q=Q.infos[Z]?.glyphId;if(J.coverage.get(q)===null)return null;let U=J.classDef.get(q),H=J.classRuleSets[U];if(!H)return null;for(let _ of H)if(B6($,Q,Z+1,_.inputClasses,J.classDef,K))return _.lookupRecords;return null}function oN($,Q,Z,J,K){let q=Z;for(let W of J.coverages){while(q<Q.infos.length&&r($,Q.infos[q]?.glyphId,K))q++;if(q>=Q.infos.length)return!1;if(W.get(Q.infos[q]?.glyphId)===null)return!1;q++}return!0}function cN($,Q,Z,J,K){let q=Q.infos[Z]?.glyphId,W=J.coverage.get(q);if(W===null)return null;let U=J.chainRuleSets[W];if(!U)return null;for(let H of U){if(!XK($,Q,Z-1,H.backtrackSequence,K))continue;if(!D6($,Q,Z+1,H.inputSequence,K))continue;let _=Z+1;for(let N=0;N<H.inputSequence.length;N++){while(_<Q.infos.length&&r($,Q.infos[_]?.glyphId,K))_++;_++}if(!D6($,Q,_,H.lookaheadSequence,K))continue;return H.lookupRecords}return null}function sN($,Q,Z,J,K){let q=Q.infos[Z]?.glyphId;if(J.coverage.get(q)===null)return null;let U=J.inputClassDef.get(q),H=J.chainClassRuleSets[U];if(!H)return null;for(let _ of H){if(!VK($,Q,Z-1,_.backtrackClasses,J.backtrackClassDef,K))continue;if(!B6($,Q,Z+1,_.inputClasses,J.inputClassDef,K))continue;let N=Z+1;for(let j=0;j<_.inputClasses.length;j++){while(N<Q.infos.length&&r($,Q.infos[N]?.glyphId,K))N++;N++}if(!B6($,Q,N,_.lookaheadClasses,J.lookaheadClassDef,K))continue;return _.lookupRecords}return null}function aN($,Q,Z,J,K){let q=Z-1;for(let H of J.backtrackCoverages){while(q>=0&&r($,Q.infos[q]?.glyphId,K))q--;if(q<0)return!1;if(H.get(Q.infos[q]?.glyphId)===null)return!1;q--}let W=Z;for(let H of J.inputCoverages){while(W<Q.infos.length&&r($,Q.infos[W]?.glyphId,K))W++;if(W>=Q.infos.length)return!1;if(H.get(Q.infos[W]?.glyphId)===null)return!1;W++}let U=W;for(let H of J.lookaheadCoverages){while(U<Q.infos.length&&r($,Q.infos[U]?.glyphId,K))U++;if(U>=Q.infos.length)return!1;if(H.get(Q.infos[U]?.glyphId)===null)return!1;U++}return!0}function jK($,Q,Z,J,K){let q=[...J].sort((W,U)=>U.sequenceIndex-W.sequenceIndex);for(let W of q){let U=K.gposLookups.find((_)=>_.index===W.lookupListIndex);if(!U)continue;if(Z+W.sequenceIndex>=Q.infos.length)continue;NK($,Q,U.lookup,K)}}function D6($,Q,Z,J,K){let q=Z;for(let W of J){while(q<Q.infos.length&&r($,Q.infos[q]?.glyphId,K))q++;if(q>=Q.infos.length)return!1;if(Q.infos[q]?.glyphId!==W)return!1;q++}return!0}function XK($,Q,Z,J,K){let q=Z;for(let W of J){while(q>=0&&r($,Q.infos[q]?.glyphId,K))q--;if(q<0)return!1;if(Q.infos[q]?.glyphId!==W)return!1;q--}return!0}function B6($,Q,Z,J,K,q){let W=Z;for(let U of J){while(W<Q.infos.length&&r($,Q.infos[W]?.glyphId,q))W++;if(W>=Q.infos.length)return!1;if(K.get(Q.infos[W]?.glyphId)!==U)return!1;W++}return!0}function VK($,Q,Z,J,K,q){let W=Z;for(let U of J){while(W>=0&&r($,Q.infos[W]?.glyphId,q))W--;if(W<0)return!1;if(K.get(Q.infos[W]?.glyphId)!==U)return!1;W--}return!0}function r($,Q,Z){let J=$.gdef;if(!J)return!1;let K=B1(J,Q);if(Z&x1.IgnoreBaseGlyphs&&K===1)return!0;if(Z&x1.IgnoreLigatures&&K===2)return!0;if(Z&x1.IgnoreMarks&&K===3)return!0;let q=D7(Z);if(q!==0&&K===3){if(J.markAttachClassDef.get(Q)!==q)return!0}return!1}function rN($,Q){let Z=$.morx;if(!Z)return;for(let J of Z.chains)for(let K of J.subtables){if((J.defaultFlags&K.subFeatureFlags)===0)continue;switch(K.type){case 4:for(let q of Q.infos){let W=R9(K,q.glyphId);if(W!==null)q.glyphId=W}break;case 0:i8(K,Q.infos);break;case 1:p8(K,Q.infos);break;case 2:{let q=o8(K,Q.infos);if(q.length!==Q.infos.length)Q.initFromInfos(q);break}case 5:{let q=c8(K,Q.infos);if(q.length!==Q.infos.length)Q.initFromInfos(q);break}}}}var k0={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 n6($,Q){let J=0,K=new Map,q=Q?new Map:null,W="";function U(H){if(H.indexOf("+")!==-1)for(let _=+H;_--;)U(W);else{W=H;let _=H.split(">"),N=_[0]??"",j=_[1]??"";J+=parseInt(N,36);let X=String.fromCodePoint(J);J+=parseInt(j,36);let V=String.fromCodePoint(J);if(K.set(X,V),q)q.set(V,X)}}return $.split(",").forEach(U),{map:K,reverseMap:q}}var C0=null,wK=null,GK=null;function S0(){if(!C0){let{map:$,reverseMap:Q}=n6(k0.pairs,!0);C0=$,wK=Q,GK=n6(k0.canonical,!1).map}}function v8($){return S0(),C0?.get($)||null}function k8($){return S0(),wK?.get($)||null}function C8($){return S0(),GK?.get($)||null}var d6={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={},h0={};t.L=1;h0[1]="L";Object.keys(d6).forEach(($,Q)=>{t[$]=1<<Q+1;let Z=t[$];if(Z!==void 0)h0[Z]=$});Object.freeze(t);function $1($){return t[$]??0}var g1=$1("LRI")|$1("RLI")|$1("FSI"),h8=$1("L")|$1("R")|$1("AL"),E1=$1("B")|$1("S")|$1("WS")|$1("ON")|$1("FSI")|$1("LRI")|$1("RLI")|$1("PDI"),U1=$1("BN")|$1("RLE")|$1("LRE")|$1("RLO")|$1("LRO")|$1("PDF"),i6=$1("S")|$1("WS")|$1("B")|g1|$1("PDI")|U1,S8=null;function tN(){if(!S8){S8=new Map;let $=0;for(let Q in d6)if(Object.hasOwn(d6,Q)){let Z=d6[Q],J="",K=0,q=!1,W=0;for(let U=0;U<=Z.length+1;U+=1){let H=Z[U];if(H!==","&&U!==Z.length)if(H==="+")q=!0,W=$=W+parseInt(J,36),J="";else J+=H;else{if(!q)W=$=W+parseInt(J,36),K=$;else K=$+parseInt(J,36);q=!1,J="",W=K;let _=$1(Q);for(let N=$;N<K+1;N+=1)S8.set(N,_)}}}}}function L1($){tN();let Q=$.codePointAt(0);if(Q===void 0)return $1("L");return S8?.get(Q)??$1("L")}var R1=t.L??1,v1=t.R??2,A1=t.EN??4,p6=t.ES??8,y8=t.ET??16,o6=t.AN??32,b8=t.CS??64,M6=t.B??128,eN=t.S??256,m8=t.ON??512,$j=t.BN??1024,g8=t.NSM??2048,u8=t.AL??4096,YK=t.LRO??8192,x8=t.RLO??16384,zK=t.LRE??32768,y0=t.RLE??65536,EK=t.PDF??131072,Qj=t.LRI??262144,AK=t.RLI??524288,Zj=t.FSI??1048576,R6=t.PDI??2097152;function s($,Q){return $[Q]??0}function Q1($,Q){return $[Q]??0}function T6($,Q){return $[Q]??""}function b0($,Q){let J=new Uint32Array($.length);for(let G=0;G<$.length;G++)J[G]=L1(T6($,G));let K=new Map;function q(G,Y){let z=s(J,G);if(J[G]=Y,K.set(z,(K.get(z)??0)-1),z&E1)K.set(E1,(K.get(E1)??0)-1);if(K.set(Y,(K.get(Y)??0)+1),Y&E1)K.set(E1,(K.get(E1)??0)+1)}let W=new Uint8Array($.length),U=new Map,H=[],_=null;function N(G,Y){for(let z=G;z<$.length;z++){let E=s(J,z);if(E&(v1|u8))return 1;if(E&(M6|R1)||Y&&E===R6)return 0;if(E&g1){let A=j(z);z=A===-1?$.length:A}}return 0}function j(G){let Y=1;for(let z=G+1;z<$.length;z++){let E=s(J,z);if(E&M6)break;if(E&R6){if(--Y===0)return z}else if(E&g1)Y++}return-1}for(let G=0;G<$.length;G++){if(!_)_={start:G,end:$.length-1,level:Q==="rtl"?1:Q==="ltr"?0:N(G,!1)},H.push(_);if(s(J,G)&M6)_.end=G,_=null}let X=y0|zK|x8|YK|g1|R6|EK|M6,V=(G)=>G+(G&1?1:2),w=(G)=>G+(G&1?2:1);for(let G=0;G<H.length;G++){let Y=H[G];if(!Y)continue;_=Y;let z=[{_level:_.level,_override:0,_isolate:0}],E=0,A=0,L=0;K.clear();for(let P=_.start;P<=_.end;P++){let T=s(J,P),y=z[z.length-1];if(!y)continue;if(K.set(T,(K.get(T)??0)+1),T&E1)K.set(E1,(K.get(E1)??0)+1);if(T&X){if(T&(y0|zK)){W[P]=y._level;let u=(T===y0?w:V)(y._level);if(u<=125&&!E&&!A)z.push({_level:u,_override:0,_isolate:0});else if(!E)A++}else if(T&(x8|YK)){W[P]=y._level;let u=(T===x8?w:V)(y._level);if(u<=125&&!E&&!A)z.push({_level:u,_override:T&x8?v1:R1,_isolate:0});else if(!E)A++}else if(T&g1){if(T&Zj)T=N(P+1,!0)===1?AK:Qj;if(W[P]=y._level,y._override)q(P,y._override);let u=(T===AK?w:V)(y._level);if(u<=125&&E===0&&A===0)L++,z.push({_level:u,_override:0,_isolate:1,_isolInitIndex:P});else E++}else if(T&R6){if(E>0)E--;else if(L>0){A=0;while(z.length>0){if(z[z.length-1]?._isolate)break;z.pop()}let I=z[z.length-1]?._isolInitIndex;if(I!=null)U.set(I,P),U.set(P,I);z.pop(),L--}if(y=z[z.length-1],!y)continue;if(W[P]=y._level,y._override)q(P,y._override)}else if(T&EK){if(E===0){if(A>0)A--;else if(!y._isolate&&z.length>1){if(z.pop(),y=z[z.length-1],!y)continue}}W[P]=y._level}else if(T&M6)W[P]=_.level}else if(W[P]=y._level,y._override&&T!==$j)q(P,y._override)}let O=[],D=null;for(let P=_.start;P<=_.end;P++){let T=s(J,P);if(!(T&U1)){let y=W[P]??0,u=!!(T&g1),I=T===R6;if(D&&y===D._level)D._end=P,D._endsWithIsolInit=u;else D={_start:P,_end:P,_level:y,_startsWithPDI:I,_endsWithIsolInit:u},O.push(D)}}let C=[];for(let P=0;P<O.length;P++){let T=O[P];if(!T)continue;if(!T._startsWithPDI||T._startsWithPDI&&!U.has(T._start)){D=T;let y=[T];while(D?._endsWithIsolInit){let m=U.get(D._end);if(m==null)break;let d=!1;for(let i=P+1;i<O.length;i++){let n=O[i];if(n?._start===m){D=n,y.push(n),d=!0;break}}if(!d)break}let u=[];for(let m of y)for(let d=m._start;d<=m._end;d++)u.push(d);let I=u[0]??0,o=W[I]??0,g=_.level;for(let m=I-1;m>=0;m--)if(!(s(J,m)&U1)){g=W[m]??0;break}let x=u[u.length-1]??0,M=W[x]??0,b=_.level;if(!(s(J,x)&g1)){for(let m=x+1;m<=_.end;m++)if(!(s(J,m)&U1)){b=W[m]??0;break}}C.push({_seqIndices:u,_sosType:Math.max(g,o)%2?v1:R1,_eosType:Math.max(b,M)%2?v1:R1})}}for(let P of C){let{_seqIndices:T,_sosType:y,_eosType:u}=P,I=T[0]??0,o=(W[I]??0)&1?v1:R1;if(K.get(g8))for(let g=0;g<T.length;g++){let x=Q1(T,g);if(s(J,x)&g8){let M=y;for(let b=g-1;b>=0;b--){let m=Q1(T,b);if(!(s(J,m)&U1)){M=s(J,m);break}}q(x,M&(g1|R6)?m8:M)}}if(K.get(A1))for(let g=0;g<T.length;g++){let x=Q1(T,g);if(s(J,x)&A1)for(let M=g-1;M>=-1;M--){let b=M===-1?y:s(J,Q1(T,M));if(b&h8){if(b===u8)q(x,o6);break}}}if(K.get(u8))for(let g=0;g<T.length;g++){let x=Q1(T,g);if(s(J,x)&u8)q(x,v1)}if(K.get(p6)||K.get(b8))for(let g=1;g<T.length-1;g++){let x=Q1(T,g);if(s(J,x)&(p6|b8)){let M=0,b=0;for(let m=g-1;m>=0;m--)if(M=s(J,Q1(T,m)),!(M&U1))break;for(let m=g+1;m<T.length;m++)if(b=s(J,Q1(T,m)),!(b&U1))break;if(M===b&&(s(J,x)===p6?M===A1:M&(A1|o6)))q(x,M)}}if(K.get(A1))for(let g=0;g<T.length;g++){let x=Q1(T,g);if(s(J,x)&A1){for(let M=g-1;M>=0;M--){let b=Q1(T,M);if(!(s(J,b)&(y8|U1)))break;q(b,A1)}for(g++;g<T.length;g++){let M=Q1(T,g);if(!(s(J,M)&(y8|U1|A1)))break;if(s(J,M)!==A1)q(M,A1)}}}if(K.get(y8)||K.get(p6)||K.get(b8))for(let g=0;g<T.length;g++){let x=Q1(T,g);if(s(J,x)&(y8|p6|b8)){q(x,m8);for(let M=g-1;M>=0;M--){let b=Q1(T,M);if(!(s(J,b)&U1))break;q(b,m8)}for(let M=g+1;M<T.length;M++){let b=Q1(T,M);if(!(s(J,b)&U1))break;q(b,m8)}}}if(K.get(A1)){let g=y;for(let x=0;x<T.length;x++){let M=Q1(T,x),b=s(J,M);if(b&A1){if(g===R1)q(M,R1)}else if(b&h8)g=b}}if(K.get(E1)){let g=v1|A1|o6,x=g|R1,M=[],b=[];for(let m=0;m<T.length;m++){let d=Q1(T,m);if(s(J,d)&E1){let i=T6($,d);if(v8(i)!==null)if(b.length<63)b.push({char:i,seqIndex:m});else break;else{let a=k8(i);if(a!==null)for(let v=b.length-1;v>=0;v--){let c=b[v];if(!c)continue;let S=c.char,j1=C8(i),h=C8(S);if(S===a||j1&&S===k8(j1)||h&&v8(h)===i){M.push([c.seqIndex,m]),b.length=v;break}}}}}M.sort((m,d)=>m[0]-d[0]);for(let m of M){let[d,i]=m,n=!1,a=0;for(let v=d+1;v<i;v++){let c=Q1(T,v),S=s(J,c);if(S&x){n=!0;let j1=S&g?v1:R1;if(j1===o){a=j1;break}}}if(n&&!a){a=y;for(let v=d-1;v>=0;v--){let c=Q1(T,v),S=s(J,c);if(S&x){let j1=S&g?v1:R1;a=j1!==o?j1:o;break}}}if(a){if(J[Q1(T,d)]=a,J[Q1(T,i)]=a,a!==o){for(let v=d+1;v<T.length;v++){let c=Q1(T,v);if(!(s(J,c)&U1)){if(L1(T6($,c))&g8)J[c]=a;break}}for(let v=i+1;v<T.length;v++){let c=Q1(T,v);if(!(s(J,c)&U1)){if(L1(T6($,c))&g8)J[c]=a;break}}}}}for(let m=0;m<T.length;m++){let d=Q1(T,m);if(s(J,d)&E1){let i=m,n=m,a=y;for(let c=m-1;c>=0;c--){let S=Q1(T,c);if(s(J,S)&U1)i=c;else{a=s(J,S)&g?v1:R1;break}}let v=u;for(let c=m+1;c<T.length;c++){let S=Q1(T,c);if(s(J,S)&(E1|U1))n=c;else{v=s(J,S)&g?v1:R1;break}}for(let c=i;c<=n;c++)J[Q1(T,c)]=a===v?a:o;m=n}}}}for(let P=_.start;P<=_.end;P++){let T=W[P]??0,y=s(J,P);if(T&1){if(y&(R1|A1|o6))W[P]++}else if(y&v1)W[P]++;else if(y&(o6|A1))W[P]+=2;if(y&U1)W[P]=P===0?_.level:W[P-1]??_.level;if(P===_.end||L1(T6($,P))&(eN|M6))for(let u=P;u>=0&&L1(T6($,u))&i6;u--)W[u]=_.level}}return{levels:W,paragraphs:H}}var FK="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 m0=null;function Jj(){if(!m0){let{map:$,reverseMap:Q}=n6(FK,!0);if(Q)Q.forEach((Z,J)=>{$.set(J,Z)});m0=$}}function f8($){return Jj(),m0?.get($)||null}function LK($,Q,Z,J){let K=$.length,q=Math.max(0,Z==null?0:+Z),W=Math.min(K-1,J==null?K-1:+J),U=[];for(let H of Q.paragraphs){let _=Math.max(q,H.start),N=Math.min(W,H.end);if(_<N){let j=Q.levels.slice(_,N+1);for(let w=N;w>=_;w--){let G=$[w];if(G===void 0)break;if(!(L1(G)&i6))break;j[w-_]=H.level}let X=H.level,V=1/0;for(let w=0;w<j.length;w++){let G=j[w]??0;if(G>X)X=G;if(G<V)V=G|1}for(let w=X;w>=V;w--)for(let G=0;G<j.length;G++)if((j[G]??0)>=w){let z=G;while(G+1<j.length){if((j[G+1]??0)<w)break;G++}if(G>z)U.push([z+_,G+_])}}}return U}function l8($,Q,Z,J){let K=LK($,Q,Z,J),q=[];for(let W=0;W<$.length;W++)q[W]=W;for(let[W,U]of K){let H=q.slice(W,U+1);for(let _=H.length;_--;){let N=H[_];if(N!==void 0)q[U-_]=N}}return q}function DK($,Q=4){let Z=Q===5?"rtl":Q===4?"ltr":"auto",J=b0($,Z);return{levels:J.levels,paragraphs:J.paragraphs}}function Kj($,Q,Z=0,J=$.length){return Array.from(l8($,Q,Z,J))}function BK($,Q){if($.length===0)return $;let Z="x".repeat($.length),J=l8(Z,Q,0,$.length),K=[];for(let q of J)if(q<$.length){let W=$[q];if(W)K.push(W)}return K}function MK($){let Q=String.fromCodePoint($),Z=f8(Q);return Z?Z.codePointAt(0)??$:$}function RK($,Q){for(let[Z,J]of $.entries()){let K=Q[Z];if(K===void 0)continue;if(K&1){let q=MK(J.codepoint);if(q!==J.codepoint)J.codepoint=q}}}var _6={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 qj($){return L1($)}function Wj($){let Q=String.fromCodePoint($);return(L1(Q)&(_6.R|_6.AL))!==0}function Uj($){let Q=String.fromCodePoint($);return(L1(Q)&_6.L)!==0}function Hj($){for(let Q of $){let Z=L1(Q);if(Z&_6.L)return 4;if(Z&(_6.R|_6.AL))return 5}return 4}function _j($,Q=4){if($.length===0)return{infos:$,levels:new Uint8Array(0)};let Z=$.map((q)=>String.fromCodePoint(q.codepoint)).join(""),J=DK(Z,Q);return RK($,J.levels),{infos:BK($,J),levels:J.levels}}var TK;((h)=>{h[h.BK=0]="BK";h[h.CR=1]="CR";h[h.LF=2]="LF";h[h.CM=3]="CM";h[h.NL=4]="NL";h[h.SG=5]="SG";h[h.WJ=6]="WJ";h[h.ZW=7]="ZW";h[h.GL=8]="GL";h[h.SP=9]="SP";h[h.ZWJ=10]="ZWJ";h[h.B2=11]="B2";h[h.BA=12]="BA";h[h.BB=13]="BB";h[h.HY=14]="HY";h[h.CB=15]="CB";h[h.CL=16]="CL";h[h.CP=17]="CP";h[h.EX=18]="EX";h[h.IN=19]="IN";h[h.NS=20]="NS";h[h.OP=21]="OP";h[h.QU=22]="QU";h[h.IS=23]="IS";h[h.NU=24]="NU";h[h.PO=25]="PO";h[h.PR=26]="PR";h[h.SY=27]="SY";h[h.AI=28]="AI";h[h.AL=29]="AL";h[h.CJ=30]="CJ";h[h.EB=31]="EB";h[h.EM=32]="EM";h[h.H2=33]="H2";h[h.H3=34]="H3";h[h.HL=35]="HL";h[h.ID=36]="ID";h[h.JL=37]="JL";h[h.JV=38]="JV";h[h.JT=39]="JT";h[h.RI=40]="RI";h[h.SA=41]="SA";h[h.XX=42]="XX"})(TK||={});var PK;((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"})(PK||={});var OK;((J)=>{J[J.NoBreak=0]="NoBreak";J[J.Optional=1]="Optional";J[J.Mandatory=2]="Mandatory"})(OK||={});function IK($){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 Nj($,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 jj($){let Q=[];for(let Z of $)Q.push(Z.codePointAt(0)??0);return g0(Q)}function g0($){let Q=$.length,Z=[],J=[];for(let K of $)Z.push(IK(K));J.push(0);for(let K=1;K<Q;K++){let q=Z[K-1],W=Z[K];switch(Nj(q,W)){case 5:J.push(2);break;case 0:J.push(1);break;case 1:if(q===9)J.push(1);else J.push(0);break;default:J.push(0)}}return J.push(2),{breaks:J,classes:Z}}function Xj($){let Q=$.map((Z)=>Z.codepoint);return g0(Q)}function Vj($,Q){for(let Z=Q+1;Z<$.breaks.length;Z++)if($.breaks[Z]!==0)return Z;return $.breaks.length-1}function wj($,Q){if(Q<0||Q>=$.breaks.length)return!1;return $.breaks[Q]!==0}function Gj($,Q){if(Q<0||Q>=$.breaks.length)return!1;return $.breaks[Q]===2}function Yj($){let Q=[];for(let Z=0;Z<$.breaks.length;Z++)if($.breaks[Z]!==0)Q.push(Z);return Q}var kK;((B)=>{B.Common="Zyyy";B.Inherited="Zinh";B.Unknown="Zzzz";B.Latin="Latn";B.Greek="Grek";B.Cyrillic="Cyrl";B.Armenian="Armn";B.Hebrew="Hebr";B.Arabic="Arab";B.Syriac="Syrc";B.Thaana="Thaa";B.Devanagari="Deva";B.Bengali="Beng";B.Gurmukhi="Guru";B.Gujarati="Gujr";B.Oriya="Orya";B.Tamil="Taml";B.Telugu="Telu";B.Kannada="Knda";B.Malayalam="Mlym";B.Sinhala="Sinh";B.Thai="Thai";B.Lao="Laoo";B.Tibetan="Tibt";B.Myanmar="Mymr";B.Georgian="Geor";B.Hangul="Hang";B.Ethiopic="Ethi";B.Cherokee="Cher";B.CanadianAboriginal="Cans";B.Ogham="Ogam";B.Runic="Runr";B.Khmer="Khmr";B.Mongolian="Mong";B.Hiragana="Hira";B.Katakana="Kana";B.Bopomofo="Bopo";B.Han="Hani";B.Yi="Yiii";B.OldItalic="Ital";B.Gothic="Goth";B.Deseret="Dsrt";B.Tagalog="Tglg";B.Hanunoo="Hano";B.Buhid="Buhd";B.Tagbanwa="Tagb";B.Limbu="Limb";B.TaiLe="Tale";B.LinearB="Linb";B.Ugaritic="Ugar";B.Shavian="Shaw";B.Osmanya="Osma";B.Cypriot="Cprt";B.Braille="Brai";B.Buginese="Bugi";B.Coptic="Copt";B.NewTaiLue="Talu";B.Glagolitic="Glag";B.Tifinagh="Tfng";B.SylotiNagri="Sylo";B.OldPersian="Xpeo";B.Kharoshthi="Khar";B.Balinese="Bali";B.Cuneiform="Xsux";B.Phoenician="Phnx";B.PhagsPa="Phag";B.Nko="Nkoo";B.Sundanese="Sund";B.Lepcha="Lepc";B.OlChiki="Olck";B.Vai="Vaii";B.Saurashtra="Saur";B.KayahLi="Kali";B.Rejang="Rjng";B.Lycian="Lyci";B.Carian="Cari";B.Lydian="Lydi";B.Cham="Cham";B.TaiTham="Lana";B.TaiViet="Tavt";B.Avestan="Avst";B.EgyptianHieroglyphs="Egyp";B.Samaritan="Samr";B.Lisu="Lisu";B.Bamum="Bamu";B.Javanese="Java";B.MeeteiMayek="Mtei";B.ImperialAramaic="Armi";B.OldSouthArabian="Sarb";B.InscriptionalParthian="Prti";B.InscriptionalPahlavi="Phli";B.OldTurkic="Orkh";B.Kaithi="Kthi";B.Batak="Batk";B.Brahmi="Brah";B.Mandaic="Mand";B.Chakma="Cakm";B.MeroiticCursive="Merc";B.MeroiticHieroglyphs="Mero";B.Miao="Plrd";B.Sharada="Shrd";B.SoraSompeng="Sora";B.Takri="Takr";B.CaucasianAlbanian="Aghb";B.BassaVah="Bass";B.Duployan="Dupl";B.Elbasan="Elba";B.Grantha="Gran";B.PahawhHmong="Hmng";B.Khojki="Khoj";B.LinearA="Lina";B.Mahajani="Mahj";B.Manichaean="Mani";B.MendeKikakui="Mend";B.Modi="Modi";B.Mro="Mroo";B.OldNorthArabian="Narb";B.Nabataean="Nbat";B.Palmyrene="Palm";B.PauCinHau="Pauc";B.OldPermic="Perm";B.PsalterPahlavi="Phlp";B.Siddham="Sidd";B.Khudawadi="Sind";B.Tirhuta="Tirh";B.WarangCiti="Wara";B.Ahom="Ahom";B.AnatolianHieroglyphs="Hluw";B.Hatran="Hatr";B.Multani="Mult";B.OldHungarian="Hung";B.SignWriting="Sgnw";B.Adlam="Adlm";B.Bhaiksuki="Bhks";B.Marchen="Marc";B.Newa="Newa";B.Osage="Osge";B.Tangut="Tang";B.MasaramGondi="Gonm";B.Nushu="Nshu";B.Soyombo="Soyo";B.ZanabazarSquare="Zanb";B.Dogra="Dogr";B.GunjalaGondi="Gong";B.Makasar="Maka";B.Medefaidrin="Medf";B.HanifiRohingya="Rohg";B.Sogdian="Sogd";B.OldSogdian="Sogo";B.Elymaic="Elym";B.Nandinagari="Nand";B.NyiakengPuachueHmong="Hmnp";B.Wancho="Wcho";B.Yezidi="Yezi";B.Chorasmian="Chrs";B.DivesAkuru="Diak";B.KhitanSmallScript="Kits";B.Vithkuqi="Vith";B.OldUyghur="Ougr";B.Cypro_Minoan="Cpmn";B.Tangsa="Tnsa";B.Toto="Toto";B.Kawi="Kawi";B.NagMundari="Nagm"})(kK||={});var vK=[{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 c6($){let Q=0,Z=vK.length-1;while(Q<=Z){let J=Q+Z>>>1,K=vK[J];if($<K.start)Z=J-1;else if($>K.end)Q=J+1;else return K.script}return"Zzzz"}function zj($){let Q=new Map;for(let K of $){let q=K.codePointAt(0)??0,W=c6(q);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[K,q]of Q)if(q>J)J=q,Z=K;return Z}function Ej($){let Q=new Set;for(let Z of $){let J=Z.codePointAt(0)??0,K=c6(J);Q.add(K)}return Array.from(Q)}function Aj($,Q){for(let Z of $){let J=Z.codePointAt(0)??0,K=c6(J);if(K!==Q&&K!=="Zyyy"&&K!=="Zinh")return!1}return!0}function Fj($){let Q=[];if($.length===0)return Q;let Z=null,J=0,K=0,q=[];for(let W of $)q.push(W);for(let W=0;W<q.length;W++){let H=q[W].codePointAt(0)??0,_=c6(H);if(_==="Zyyy"||_==="Zinh"){if(Z!==null)_=Z}if(Z===null)Z=_,J=W;else if(_!==Z&&_!=="Zyyy"&&_!=="Zinh")Q.push({script:Z,start:J,end:W,text:q.slice(J,W).join("")}),Z=_,J=W}if(Z!==null)Q.push({script:Z,start:J,end:q.length,text:q.slice(J).join("")});return Q}function Lj($){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 Dj($){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 Bj($){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 CK;((G)=>{G[G.Other=0]="Other";G[G.CR=1]="CR";G[G.LF=2]="LF";G[G.Control=3]="Control";G[G.Extend=4]="Extend";G[G.ZWJ=5]="ZWJ";G[G.Regional_Indicator=6]="Regional_Indicator";G[G.Prepend=7]="Prepend";G[G.SpacingMark=8]="SpacingMark";G[G.L=9]="L";G[G.V=10]="V";G[G.T=11]="T";G[G.LV=12]="LV";G[G.LVT=13]="LVT";G[G.Extended_Pictographic=14]="Extended_Pictographic"})(CK||={});var SK;((L)=>{L[L.Other=0]="Other";L[L.CR=1]="CR";L[L.LF=2]="LF";L[L.Newline=3]="Newline";L[L.Extend=4]="Extend";L[L.ZWJ=5]="ZWJ";L[L.Regional_Indicator=6]="Regional_Indicator";L[L.Format=7]="Format";L[L.Katakana=8]="Katakana";L[L.Hebrew_Letter=9]="Hebrew_Letter";L[L.ALetter=10]="ALetter";L[L.Single_Quote=11]="Single_Quote";L[L.Double_Quote=12]="Double_Quote";L[L.MidNumLet=13]="MidNumLet";L[L.MidLetter=14]="MidLetter";L[L.MidNum=15]="MidNum";L[L.Numeric=16]="Numeric";L[L.ExtendNumLet=17]="ExtendNumLet";L[L.WSegSpace=18]="WSegSpace";L[L.Extended_Pictographic=19]="Extended_Pictographic"})(SK||={});function u0($){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 hK($){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(u0($)===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 x0($){let Q=$.length,Z=[],J=[];for(let W of $)Z.push(u0(W));if(Q===0)return{boundaries:J,properties:Z};let K=0,q=!1;for(let W=1;W<Q;W++){let U=Z[W-1],H=Z[W],_=!0;if(U===1&&H===2)_=!1;else if(U===3||U===1||U===2)_=!0;else if(H===3||H===1||H===2)_=!0;else if(U===9&&(H===9||H===10||H===12||H===13))_=!1;else if((U===12||U===10)&&(H===10||H===11))_=!1;else if((U===13||U===11)&&H===11)_=!1;else if(H===4||H===5)_=!1;else if(H===8)_=!1;else if(U===7)_=!1;else if(q&&U===5&&H===14)_=!1;else if(U===6&&H===6){if(K%2===1)_=!1}if(H===14)q=!0;else if(H!==4&&H!==5)q=!1;if(H===6)K++;else K=0;if(_)J.push(W)}return J.push(Q),{boundaries:J,properties:Z}}function yK($){let Q=$.length,Z=[],J=[];for(let q of $)Z.push(hK(q));if(Q===0)return{boundaries:J,properties:Z};J.push(0);let K=0;for(let q=1;q<Q;q++){let W=Z[q-1],U=Z[q],H=!0;if(W===1&&U===2)H=!1;else if(W===3||W===1||W===2)H=!0;else if(U===3||U===1||U===2)H=!0;else if(W===5&&U===19)H=!1;else if(W===18&&U===18)H=!1;else if(U===7||U===4||U===5)H=!1;else if((W===10||W===9)&&(U===10||U===9))H=!1;else if((W===10||W===9)&&(U===14||U===13||U===11)){if(q+1<Q){let _=Z[q+1];if(_===10||_===9)H=!1}}else if(W===16&&U===16)H=!1;else if((W===10||W===9)&&U===16)H=!1;else if(W===16&&(U===10||U===9))H=!1;else if(W===16&&(U===15||U===13||U===11)){if(q+1<Q&&Z[q+1]===16)H=!1}else if(W===8&&U===8)H=!1;else if((W===10||W===9||W===16||W===8||W===17)&&U===17)H=!1;else if(W===17&&(U===10||U===9||U===16||U===8))H=!1;else if(W===6&&U===6){if(K%2===1)H=!1}if(U===6)K++;else K=0;if(H)J.push(q)}return J.push(Q),{boundaries:J,properties:Z}}function Mj($){let Q=[],Z=[];for(let W of $)Q.push(W.codePointAt(0)??0),Z.push(W);let{boundaries:J}=x0(Q),K=[],q=0;for(let W of J){if(W>q)K.push(Z.slice(q,W).join(""));q=W}return K}function Rj($){let Q=[],Z=[];for(let W of $)Q.push(W.codePointAt(0)??0),Z.push(W);let{boundaries:J,properties:K}=yK(Q),q=[];for(let W=0;W<J.length-1;W++){let U=J[W],H=J[W+1],_=!1;for(let N=U;N<H;N++){let j=K[N];if(j!==18&&j!==1&&j!==2&&j!==3){_=!0;break}}if(_)q.push(Z.slice(U,H).join(""))}return q}function Tj($){let Q=[];for(let J of $)Q.push(J.codePointAt(0)??0);let{boundaries:Z}=x0(Q);return Z.length}export{y_ as verticalLayoutFeatures,gJ as verticalKanaAlternates,bJ as verticalForms,mJ as verticalAlternatesRotation,pH as updateMinTransformedX,oH as translateOutline,MJ as translate2D,N1 as transformPoint3x3,S1 as transformPoint2D,nH as transformOutline3D,f6 as transformOutline2D,o_ as traditionalForms,f_ as thirdWidthForms,P6 as tagToString,R as tag,R_ as tabularFigures,A_ as swash,I_ as superscript,v_ as subscript,vU as subBitmaps,X_ as stylisticSets,CJ as stylisticSet,E_ as stylisticAlternates,eW as strokeUniform,QJ as strokePath,tW as strokeAsymmetricCombined,C9 as strokeAsymmetric,w_ as standardLigatures,Rj as splitWords,Mj as splitGraphemes,hJ as smallCaps,O_ as slashedZero,p_ as simplifiedForms,YJ as signedDistanceToQuadratic,GJ as signedDistanceToLine,zJ as signedDistanceToCubic,CU as shiftBitmap,PJ as shear2D,BU as shapedTextToSVGWithVariation,FU as shapedTextToSVG,zN as shape,k_ as scientificInferiors,lH as scaleOutlinePow2,cH as scaleOutline,RJ as scale2D,b_ as ruby,fH as rotateOutline90,sH as rotateOutline,TJ as rotate2D,X$ as resolveDupeGlyph,cZ as resizeBitmap,T8 as reorderMarks,BK as reorderGlyphs,DU as renderShapedTextWithVariation,AU as renderShapedText,tZ as renderSdf,AJ as renderMsdf,KH as rasterizeText,rZ as rasterizePathWithGradient,M8 as rasterizePath,H0 as rasterizeGlyph,x_ as quarterWidthForms,u_ as proportionalWidthForms,M_ as proportionalFigures,i8 as processRearrangement,o8 as processLigature,c8 as processInsertion,p8 as processContextual,_j as processBidi,F_ as petiteCaps,rH as perspectiveMatrix,E8 as pathToSVG,A8 as pathToCanvas,j9 as parseFeat,N9 as parseCpal,_9 as parseColr,yU as padBitmap,P_ as ordinals,Zq as openTypeTagToAat,D_ as oldstyleFigures,ZJ as obliquePath,a8 as normalizeAxisValue,__ as normalize,Gj as mustBreakAt,xH as multiply3x3,uH as multiply2D,IU as mulBitmaps,bH as msdfAtlasToRGBA,yH as msdfAtlasToRGB,wJ as median,hU as maxBitmaps,TW as matchAxisValue,B_ as liningFigures,h_ as kerning,pW as justifyParagraph,I$ as justify,d_ as jis90Forms,n_ as jis83Forms,l_ as jis78Forms,i_ as jis2004Forms,aH as italicizeOutline,A7 as isVariationIndexTable,Aj as isScript,Wj as isRTL,MW as isOlderSiblingFont,Uj as isLTR,r4 as isExclusiveFeature,BW as isElidableAxisValue,Dj as isComplexScript,d4 as isColrV1,B8 as interpolateGradient,gH as identity3x3,mH as identity2D,Y_ as historicalLigatures,SW as hasVertOriginY,PW as hasSvgGlyph,$q as hasSettingValue,Nq as hasGlyphOutline,zW as hasGlyphBitmap,g4 as hasColorGlyph,Y4 as hasColorBitmap,m_ as halfWidthForms,EU as glyphToSVG,LU as glyphBufferToShapedGlyphs,jW as getXHeightDelta,hK as getWordBreakProperty,gW as getVorgDelta,Kj as getVisualOrder,kW as getVerticalMetrics,CW as getVertOriginY,bW as getTsbDelta,F$ as getTrackingValue,MU as getTextWidth,OW as getSvgGlyphIds,z$ as getSvgDocument,oW as getSubstitutedLookups,j$ as getStrikeForPpem,e4 as getSettingByValue,Ej as getScripts,Lj as getScriptTag,Fj as getScriptRuns,Bj as getScriptDirection,c6 as getScript,GW as getSbixGlyphBitmap,lJ as getOrCreateShapePlan,MK as getMirror,S6 as getMetricDelta,IK as getLineBreakClass,i4 as getLayerPaint,pq as getKerxValue,B9 as getKernValue,NW as getHDescenderDelta,_W as getHAscenderDelta,u0 as getGraphemeBreakProperty,VH as getGlyphUV,Q0 as getGlyphPathWithVariation,b1 as getGlyphPath,H8 as getGlyphLocation,_q as getGlyphDelta,s4 as getFeature,iZ as getExactBounds,DK as getEmbeddings,F7 as getDeviceDelta,t4 as getDefaultSetting,n1 as getCombiningClass,l4 as getColorVariationDelta,m5 as getColorPaint,b5 as getColorLayers,z4 as getColorBitmapSizes,p4 as getColor,f4 as getClipBox,qj as getCharType,D4 as getCffGlyphWidth,XW as getCapHeightDelta,mW as getBsbDelta,w4 as getBitmapGlyph,LW as getAxisValuesForAxis,RW as getAxisValueNumber,AW as getAxisRecord,FW as getAxisIndex,YW as getAvailablePpemSizes,a4 as getAllFeatures,Yj as getAllBreakOpportunities,t8 as getAdvanceWidthDelta,yW as getAdvanceHeightDelta,H6 as gaussianBlur,g_ as fullWidthForms,T_ as fractions,SU as fixOutline,yK as findWordBoundaries,Vj as findNextBreak,h6 as findMatchingFeatureVariation,x0 as findGraphemeBoundaries,DW as findAxisValueByNameId,c_ as features,uJ as feature,RH as fastGaussianBlur,bU as expandToFit,W9 as executeCffCharString,q8 as executeCff2CharString,v$ as evaluateConditionSet,KJ as emboldenPath,pZ as emboldenBitmap,G_ as discretionaryLigatures,zj as detectScript,Hj as detectDirection,P8 as decompose,G0 as createShapePlan,RU as createPath2D,aZ as createGradientBitmap,W0 as createGaussianKernel,fK as createFace,e as createBitmap,Tj as countGraphemes,q0 as copyBitmap,x6 as convertBitmap,$0 as contourToPath,z_ as contextualAlternates,JJ as condensePath,iH as computeTightBounds,dH as computeControlBox,kU as compositeBitmaps,tH as combinePaths,s_ as combineFeatures,o4 as colorToRgba,c4 as colorToHex,eH as clonePath,lZ as clearBitmap,V_ as characterVariants,SJ as characterVariant,C_ as caseSensitiveForms,N0 as cascadeBlur,yJ as capsToSmallCaps,S_ as capitalSpacing,wj as canBreakAt,U8 as calculateTupleScalar,Y8 as calculateLineWidth,HH as buildStringAtlas,hH as buildMsdfStringAtlas,X0 as buildMsdfAtlas,SH as buildMsdfAsciiAtlas,_0 as buildAtlas,UH as buildAsciiAtlas,iW as breakIntoLines,D8 as boxBlur,sZ as blurBitmap,oZ as blendBitmap,qH as bitmapToRGBA,WH as bitmapToGray,jH as atlasToRGBA,XH as atlasToAlpha,EJ as assignEdgeColors,vW as applyTracking,R9 as applyNonContextual,RK as applyMirroring,cW as applyFeatureVariations,V0 as applyFallbackMarkPositioning,w0 as applyFallbackKerning,Yq as applyDeviceAdjustment,i0 as applyAvarMapping,s8 as applyAvar,g0 as analyzeLineBreaksFromCodepoints,Xj as analyzeLineBreaksForGlyphs,jj as analyzeLineBreaks,L_ as allSmallCaps,OU as addBitmaps,TH as adaptiveBlur,Qq as aatToOpenTypeTag,SK as WordBreakProperty,f5 as VerticalPositionSetting,s5 as UpperCaseSetting,n0 as UnicodeBuffer,f as Tags,p5 as StylisticAlternativesSetting,a5 as SmartSwashSetting,kK as Script,P9 as SbixGraphicType,C1 as Reader,O1 as PixelMode,g5 as PaletteType,S5 as PaintFormat,n5 as NumberSpacingSetting,l5 as NumberCaseSetting,kJ as NormalizationMode,C6 as MvarTags,M9 as MorxSubtableType,c5 as LowerCaseSetting,TK as LineBreakClass,x5 as LigatureSetting,O$ as JustifyMode,CK as GraphemeBreakProperty,e6 as GlyphClass,$6 as GlyphBuffer,d5 as FractionsSetting,Y6 as Font,A6 as FillRule,u5 as FeatureType,Ij as FeatureTags,e5 as FeatureFlags,Q6 as Face,h5 as Extend,t6 as Direction,r5 as DiacriticsSetting,o5 as ContextualAlternativesSetting,y5 as CompositeMode,f0 as ClusterLevel,t5 as CharacterShapeSetting,X4 as CbdtImageFormat,i5 as CaseSensitiveLayoutSetting,l0 as BufferFlags,OK as BreakOpportunity,PK as BreakAction,_6 as BidiType,O9 as AxisValueFlags};
|
|
10
10
|
|
|
11
|
-
//# debugId=
|
|
11
|
+
//# debugId=D97CC864CE69D23964756E2164756E21
|