text-shaper 0.1.4 → 0.1.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +9 -11
- package/dist/render/path.d.ts +9 -2
- package/package.json +8 -2
- package/dist/index.js.map +0 -134
- package/dist/index.test.d.ts +0 -1
- package/dist/perf/benchmark-runner-eksh2b26.js +0 -0
- package/dist/perf/benchmark-runner.html +0 -517
- package/dist/perf/comparison-tests.js +0 -22676
- package/dist/perf/comparison-tests.js.map +0 -111
- package/dist/perf/cpu/cpu-perf.js +0 -21920
- package/dist/perf/cpu/cpu-perf.js.map +0 -108
- package/dist/perf/gpu/webgl-perf.js +0 -470
- package/dist/perf/gpu/webgl-perf.js.map +0 -11
- package/dist/perf/gpu/webgpu-perf.js +0 -442
- package/dist/perf/gpu/webgpu-perf.js.map +0 -11
- package/dist/perf/index.html +0 -258
- package/dist/perf/module-loader.js +0 -18
- package/dist/perf/utils/perf-utils.js +0 -170
- package/dist/perf/utils/perf-utils.js.map +0 -10
- package/dist/typeshaper.js +0 -7
- package/dist/unicode/bidi/brackets.data.d.ts +0 -5
- package/dist/unicode/bidi/char-types.data.d.ts +0 -25
- package/dist/unicode/bidi/mirroring.data.d.ts +0 -2
package/dist/typeshaper.js
DELETED
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
function X6($,Z){if(Z<0||Z>=$.classArray.length)return 1;return $.classArray[Z]??1}function b6($,Z){let{stateTable:J}=$,X=0,Q=0,K=0;for(let H=0;H<=Z.length;H++){let W=H>=Z.length?0:X6(J.classTable,Z[H]?.glyphId),U=J.stateArray[X];if(!U)break;let z=U[W];if(!z)break;let N=z.flags;if(N&32768)Q=H;if(N&8192)K=H;let w=N&15;if(w!==0&&Q<=K&&K<Z.length)G8(Z,Q,K,w);if(!(N&16384));X=z.newState}}function G8($,Z,J,X){if(Z>=J||Z>=$.length||J>=$.length)return;let Q=$[Z],K=$[Z+1],H=$[J-1],q=$[J];if(!Q||!q)return;switch(X){case 1:if(K)$[Z]=K,$[Z+1]=Q;break;case 2:if(H)$[J]=H,$[J-1]=q;break;case 3:$[Z]=q,$[J]=Q;break;case 4:if(K&&H){let W=$.slice(Z,Z+2),[U,z]=W,N=$[Z+2];if(U&&z&&N)$[Z]=N,$[Z+1]=U,$[Z+2]=z}break;case 5:if(K&&H){let W=$.slice(Z,Z+2),[U,z]=W,N=$[Z+2];if(U&&z&&N)$[Z]=N,$[Z+1]=z,$[Z+2]=U}break;case 6:if(H&&K){let W=$.slice(J-1,J+1),[U,z]=W,N=$[J-2];if(U&&z&&N)$[J]=N,$[J-1]=z,$[J-2]=U}break;case 7:if(H&&K){let W=$.slice(J-1,J+1),[U,z]=W,N=$[J-2];if(U&&z&&N)$[J]=N,$[J-1]=U,$[J-2]=z}break;case 8:if(H){let W=Q;$[Z]=H,$[J-1]=q,$[J]=W}break;case 9:if(H){let W=Q;$[Z]=q,$[J-1]=H,$[J]=W}break;case 10:if(K){let W=q;$[J]=K,$[Z+1]=Q,$[Z]=W}break;case 11:if(K){let W=q;$[J]=Q,$[Z+1]=K,$[Z]=W}break;case 12:if(K&&H){let W=[Q,K];$[Z]=H,$[Z+1]=q,$[J-1]=W[0],$[J]=W[1]}break;case 13:if(K&&H){let W=[Q,K];$[Z]=H,$[Z+1]=q,$[J-1]=W[1],$[J]=W[0]}break;case 14:if(K&&H){let W=[Q,K];$[Z]=q,$[Z+1]=H,$[J-1]=W[0],$[J]=W[1]}break;case 15:if(K&&H){let W=[Q,K];$[Z]=q,$[Z+1]=H,$[J-1]=W[1],$[J]=W[0]}break}}function g6($,Z){let{stateTable:J,substitutionTable:X}=$,Q=0,K=-1;for(let H=0;H<=Z.length;H++){let q=H>=Z.length,W=q?0:X6(J.classTable,Z[H]?.glyphId),U=J.stateArray[Q];if(!U)break;let z=U[W];if(!z)break;if(z.flags&32768)K=H;if(z.markIndex!==65535&&K>=0&&K<Z.length){let N=X[z.markIndex];if(N){let w=Z[K];if(w){let j=N.get(w.glyphId);if(j!==void 0)w.glyphId=j}}}if(!q&&z.currentIndex!==65535){let N=X[z.currentIndex];if(N){let w=Z[H];if(w){let j=N.get(w.glyphId);if(j!==void 0)w.glyphId=j}}}if(!(z.flags&16384));Q=z.newState}}function u6($,Z){let{stateTable:J,ligatureActions:X,components:Q,ligatures:K}=$,H=0,q=[],W=[],U=new Set;for(let z=0;z<=Z.length;z++){let w=z>=Z.length?0:X6(J.classTable,Z[z]?.glyphId),j=J.stateArray[H];if(!j)break;let _=j[w];if(!_)break;if(_.flags&32768)q.push(z);if(_.flags&8192&&_.ligActionIndex<X.length){let Y=_.ligActionIndex,G=0,E=[];while(Y<X.length){let V=X[Y];if(V===void 0)break;let D=(V&2147483648)!==0,A=(V&1073741824)!==0,k=(V&1073741823)<<2>>2,L=q.pop();if(L!==void 0&&L<Z.length){E.push(L);let S=Z[L];if(S){let P=S.glyphId+k;if(P>=0&&P<Q.length){let C=Q[P];if(C!==void 0)G=C+G}}}if(A&&G<K.length){let S=E[E.length-1];if(S!==void 0&&S<Z.length){let I=Z[S],P=K[G];if(I&&P!==void 0){I.glyphId=P;for(let[C,n]of E.entries())if(C<E.length-1)U.add(n)}}G=0}if(D)break;Y++}}if(!(_.flags&16384));H=_.newState}for(let[z,N]of Z.entries())if(!U.has(z))W.push(N);return W}function f6($,Z){let{stateTable:J,insertionGlyphs:X}=$,Q=0,K=-1,H=[],q=new Map;for(let W=0;W<=Z.length;W++){let U=W>=Z.length,z=U?0:X6(J.classTable,Z[W]?.glyphId),N=J.stateArray[Q];if(!N)break;let w=N[z];if(!w)break;if(w.flags&32768)K=W;if(w.markedInsertIndex!==65535&&K>=0){let j=w.flags>>5&31,_=(w.flags&2048)!==0,Y=X.slice(w.markedInsertIndex,w.markedInsertIndex+j),G=q.get(K);if(!G)G={before:[],after:[]},q.set(K,G);if(_)G.before.push(...Y);else G.after.push(...Y)}if(!U&&w.currentInsertIndex!==65535){let j=w.flags&31,_=(w.flags&32)!==0,Y=X.slice(w.currentInsertIndex,w.currentInsertIndex+j),G=q.get(W);if(!G)G={before:[],after:[]},q.set(W,G);if(_)G.before.push(...Y);else G.after.push(...Y)}if(!(w.flags&16384));Q=w.newState}for(let[W,U]of Z.entries()){let z=q.get(W);if(z)for(let N of z.before)H.push({glyphId:N,cluster:U.cluster,mask:U.mask,codepoint:0});if(H.push(U),z)for(let N of z.after)H.push({glyphId:N,cluster:U.cluster,mask:U.mask,codepoint:0})}return H}var J6;((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"})(J6||={});var c5;((X)=>{X[X.MonotoneGraphemes=0]="MonotoneGraphemes";X[X.MonotoneCharacters=1]="MonotoneCharacters";X[X.Characters=2]="Characters"})(c5||={});var p5;((H)=>{H[H.Default=0]="Default";H[H.BeginningOfText=1]="BeginningOfText";H[H.EndOfText=2]="EndOfText";H[H.PreserveDefaultIgnorables=4]="PreserveDefaultIgnorables";H[H.RemoveDefaultIgnorables=8]="RemoveDefaultIgnorables";H[H.DoNotInsertDottedCircle=16]="DoNotInsertDottedCircle"})(p5||={});var H6;((Q)=>{Q[Q.Base=1]="Base";Q[Q.Ligature=2]="Ligature";Q[Q.Mark=3]="Mark";Q[Q.Component=4]="Component"})(H6||={});function M($){if($.length!==4)throw Error(`Tag must be exactly 4 characters: "${$}"`);return $.charCodeAt(0)<<24|$.charCodeAt(1)<<16|$.charCodeAt(2)<<8|$.charCodeAt(3)}function l1($){return String.fromCharCode($>>24&255,$>>16&255,$>>8&255,$&255)}var m={head:M("head"),hhea:M("hhea"),hmtx:M("hmtx"),maxp:M("maxp"),cmap:M("cmap"),loca:M("loca"),glyf:M("glyf"),name:M("name"),OS2:M("OS/2"),post:M("post"),GDEF:M("GDEF"),GSUB:M("GSUB"),GPOS:M("GPOS"),BASE:M("BASE"),JSTF:M("JSTF"),MATH:M("MATH"),CFF:M("CFF "),CFF2:M("CFF2"),fvar:M("fvar"),gvar:M("gvar"),avar:M("avar"),HVAR:M("HVAR"),VVAR:M("VVAR"),MVAR:M("MVAR"),morx:M("morx"),kerx:M("kerx"),kern:M("kern"),trak:M("trak"),feat:M("feat"),COLR:M("COLR"),CPAL:M("CPAL"),SVG:M("SVG "),sbix:M("sbix"),CBDT:M("CBDT"),CBLC:M("CBLC"),STAT:M("STAT"),vhea:M("vhea"),vmtx:M("vmtx"),VORG:M("VORG")},fQ={ccmp:M("ccmp"),locl:M("locl"),rlig:M("rlig"),liga:M("liga"),clig:M("clig"),calt:M("calt"),rclt:M("rclt"),dlig:M("dlig"),smcp:M("smcp"),c2sc:M("c2sc"),isol:M("isol"),init:M("init"),medi:M("medi"),fina:M("fina"),kern:M("kern"),mark:M("mark"),mkmk:M("mkmk"),curs:M("curs"),dist:M("dist")};class F1{direction=4;script="Zyyy";language=null;infos=[];positions=[];static withCapacity($){let Z=new F1;return Z.infos=Array($),Z.positions=Array($),Z}get length(){return this.infos.length}initFromInfos($){this.infos=$,this.positions=$.map(()=>({xAdvance:0,yAdvance:0,xOffset:0,yOffset:0}))}setAdvance($,Z,J=0){let X=this.positions[$];if(X)X.xAdvance=Z,X.yAdvance=J}addOffset($,Z,J){let X=this.positions[$];if(X)X.xOffset+=Z,X.yOffset+=J}replaceGlyph($,Z){let J=this.infos[$];if(J)J.glyphId=Z}insertGlyph($,Z,J){this.infos.splice($,0,Z),this.positions.splice($,0,J)}removeRange($,Z){let J=Z-$;this.infos.splice($,J),this.positions.splice($,J)}mergeClusters($,Z){if($>=Z||$<0||Z>=this.infos.length)return;let J=this.infos[$]?.cluster;for(let X=$+1;X<=Z;X++){let Q=this.infos[X];if(Q)Q.cluster=J}}reverse(){this.infos.reverse(),this.positions.reverse()}reverseRange($,Z){let J=$,X=Z-1;while(J<X){let Q=this.infos[J],K=this.infos[X];if(!Q||!K)break;this.infos[J]=K,this.infos[X]=Q;let H=this.positions[J],q=this.positions[X];if(!H||!q)break;this.positions[J]=q,this.positions[X]=H,J++,X--}}getTotalAdvance(){let $=0,Z=0;for(let J of this.positions)$+=J.xAdvance,Z+=J.yAdvance;return{x:$,y:Z}}serialize(){let $=[];for(let[Z,J]of this.infos.entries()){let X=this.positions[Z];if(!X)continue;let Q=`${J.glyphId}`;if(Z===0||J.cluster!==this.infos[Z-1]?.cluster)Q+=`=${J.cluster}`;if(X.xOffset!==0||X.yOffset!==0)Q+=`@${X.xOffset},${X.yOffset}`;if(X.xAdvance!==0)Q+=`+${X.xAdvance}`;$.push(Q)}return`[${$.join("|")}]`}glyphIds(){return this.infos.map(($)=>$.glyphId)}clusters(){return this.infos.map(($)=>$.cluster)}*[Symbol.iterator](){for(let[$,Z]of this.infos.entries()){let J=this.positions[$];if(!J)continue;yield{info:Z,position:J}}}}class s5{_direction=4;_script="Zyyy";_language=null;_clusterLevel=0;_flags=0;codepoints=[];clusters=[];preContext=[];postContext=[];addStr($,Z=0){let J=Z;for(let X of $){let Q=X.codePointAt(0);if(Q===void 0)continue;this.codepoints.push(Q),this.clusters.push(J),J++}return this}addCodepoints($,Z=0){let J=Z;for(let X of $)this.codepoints.push(X),this.clusters.push(J),J++;return this}addCodepoint($,Z){return this.codepoints.push($),this.clusters.push(Z??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 Z of $){let J=Z.codePointAt(0);if(J!==void 0)this.preContext.push(J)}return this}setPostContext($){this.postContext=[];for(let Z of $){let J=Z.codePointAt(0);if(J!==void 0)this.postContext.push(J)}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(($,Z)=>({glyphId:0,cluster:this.clusters[Z]??0,mask:0,codepoint:$}))}}class N1{data;start;end;pos;constructor($,Z=0,J){if($ instanceof ArrayBuffer)this.data=new DataView($),this.start=Z,this.end=J!==void 0?Z+J:$.byteLength;else this.data=$,this.start=$.byteOffset+Z,this.end=J!==void 0?this.start+J:$.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($,Z){return new N1(this.data,this.start+$,Z)}sliceFrom($){return new N1(this.data,this.start+$,this.end-this.start-$)}peek($){let Z=this.pos,J=$();return this.pos=Z,J}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(),Z=this.uint32();return BigInt($)<<32n|BigInt(Z)}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),Z=this.data.getUint8(this.pos+1),J=this.data.getUint8(this.pos+2);return this.pos+=3,$<<16|Z<<8|J}uint8Array($){let Z=new Uint8Array($);for(let J=0;J<$;J++)Z[J]=this.uint8();return Z}uint16Array($){let Z=new Uint16Array($);for(let J=0;J<$;J++)Z[J]=this.uint16();return Z}int16Array($){let Z=new Int16Array($);for(let J=0;J<$;J++)Z[J]=this.int16();return Z}uint32Array($){let Z=new Uint32Array($);for(let J=0;J<$;J++)Z[J]=this.uint32();return Z}array($,Z){let J=Array($);for(let X=0;X<$;X++)J[X]=Z(this);return J}ascii($){let Z="";for(let J=0;J<$;J++)Z+=String.fromCharCode(this.uint8());return Z}utf16be($){let Z=[],J=$/2;for(let X=0;X<J;X++)Z.push(this.uint16());return String.fromCharCode(...Z)}hasRemaining($){return this.remaining>=$}ensureRemaining($){if(this.remaining<$)throw Error(`Unexpected end of data: need ${$} bytes, have ${this.remaining}`)}bytes($){let Z=new Uint8Array(this.data.buffer,this.data.byteOffset+this.pos,$);return this.pos+=$,Z}readAt($,Z){let J=this.pos;this.pos=this.start+$;let X=Z(this);return this.pos=J,X}}function t5($,Z){let J=$.uint16(),X=$.uint16();$.skip(2);let Q=[];for(let K=0;K<Z;K++){let H=$.uint16(),q=[];for(let W=0;W<H;W++)q.push({fromCoordinate:$.f2dot14(),toCoordinate:$.f2dot14()});Q.push({axisValueMaps:q})}return{majorVersion:J,minorVersion:X,axisSegmentMaps:Q}}function a5($,Z){let J=$.axisValueMaps;if(J.length===0)return Z;for(let K=0;K<J.length-1;K++){let H=J[K],q=J[K+1];if(!H||!q)continue;if(Z>=H.fromCoordinate&&Z<=q.fromCoordinate){let W=(Z-H.fromCoordinate)/(q.fromCoordinate-H.fromCoordinate);return H.toCoordinate+W*(q.toCoordinate-H.toCoordinate)}}let X=J[0],Q=J[J.length-1];if(X&&Z<=X.fromCoordinate)return X.toCoordinate;return Q?.toCoordinate??Z}function l6($,Z){let J=[];for(let[X,Q]of Z.entries()){let K=$.axisSegmentMaps[X];if(K)J.push(a5(K,Q));else J.push(Q)}return J}function r5($){let Z=$.uint16(),J=$.uint16(),X=$.offset16();$.skip(2);let Q=$.uint16(),K=$.uint16(),H=$.uint16(),q=$.uint16(),W=[];$.seek(X);for(let N=0;N<Q;N++){let w=$.offset,j=$.uint32(),_=$.fixed(),Y=$.fixed(),G=$.fixed(),E=$.uint16(),V=$.uint16();W.push({tag:j,minValue:_,defaultValue:Y,maxValue:G,flags:E,axisNameId:V}),$.seek(w+K)}let U=[],z=q>=4+Q*4+2;for(let N=0;N<H;N++){let w=$.offset,j=$.uint16(),_=$.uint16(),Y=[];for(let E=0;E<Q;E++)Y.push($.fixed());let G={subfamilyNameId:j,flags:_,coordinates:Y};if(z)G.postScriptNameId=$.uint16();U.push(G),$.seek(w+q)}return{majorVersion:Z,minorVersion:J,axes:W,instances:U}}function n6($,Z){if(Z<$.defaultValue){if(Z<$.minValue)Z=$.minValue;if($.defaultValue===$.minValue)return 0;return(Z-$.defaultValue)/($.defaultValue-$.minValue)}else if(Z>$.defaultValue){if(Z>$.maxValue)Z=$.maxValue;if($.defaultValue===$.maxValue)return 0;return(Z-$.defaultValue)/($.maxValue-$.defaultValue)}return 0}function e5($){let Z=$.uint16(),J=$.uint16(),X=$.offset32(),Q=$.offset32(),K=$.offset32(),H=$.offset32(),q=E8($.sliceFrom(X)),W=Q!==0?d6($.sliceFrom(Q)):null,U=K!==0?d6($.sliceFrom(K)):null,z=H!==0?d6($.sliceFrom(H)):null;return{majorVersion:Z,minorVersion:J,itemVariationStore:q,advanceWidthMapping:W,lsbMapping:U,rsbMapping:z}}function E8($){let Z=$.uint16(),J=$.offset32(),X=$.uint16(),Q=[];for(let z=0;z<X;z++)Q.push($.offset32());let K=$.sliceFrom(J),H=K.uint16(),q=K.uint16(),W=[];for(let z=0;z<q;z++){let N=[];for(let w=0;w<H;w++)N.push({startCoord:K.f2dot14(),peakCoord:K.f2dot14(),endCoord:K.f2dot14()});W.push({regionAxes:N})}let U=[];for(let z of Q){let N=$.sliceFrom(z),w=N.uint16(),j=N.uint16(),_=N.uint16(),Y=[];for(let A=0;A<_;A++)Y.push(N.uint16());let G=(j&32768)!==0,E=j&32767,V=_-E,D=[];for(let A=0;A<w;A++){let k=[];for(let L=0;L<E;L++)if(G)k.push(N.int32());else k.push(N.int16());for(let L=0;L<V;L++)if(G)k.push(N.int16());else k.push(N.int8());D.push(k)}U.push({itemCount:w,regionIndexes:Y,deltaSets:D})}return{format:Z,variationRegions:W,itemVariationData:U}}function d6($){let Z=$.uint8(),J=$.uint8(),X=Z===0?$.uint16():$.uint32(),Q=(J&15)+1,K=(J>>4&3)+1,H=[];for(let q=0;q<X;q++){let W=0;for(let N=0;N<K;N++)W=W<<8|$.uint8();let U=W&(1<<Q)-1,z=W>>Q;H.push({outer:z,inner:U})}return{format:Z,mapCount:X,entryFormat:J,innerIndexBitCount:Q,mapData:H}}function n1($,Z){let J=1;for(let X=0;X<$.regionAxes.length&&X<Z.length;X++){let Q=$.regionAxes[X],K=Z[X];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;J*=(K-Q.startCoord)/(Q.peakCoord-Q.startCoord)}else{if(Q.peakCoord===Q.endCoord)continue;J*=(Q.endCoord-K)/(Q.endCoord-Q.peakCoord)}}return J}function $2($,Z,J,X){let Q,K;if(X&&Z<X.mapData.length){let U=X.mapData[Z];if(!U)Q=0,K=Z;else Q=U.outer,K=U.inner}else Q=0,K=Z;let H=$.itemVariationStore.itemVariationData[Q];if(!H||K>=H.itemCount)return 0;let q=H.deltaSets[K];if(!q)return 0;let W=0;for(let[U,z]of H.regionIndexes.entries()){let N=$.itemVariationStore.variationRegions[z];if(!N)continue;let w=n1(N,J),j=q[U]??0;W+=w*j}return Math.round(W)}function i6($,Z,J){return $2($,Z,J,$.advanceWidthMapping)}function Z2($,Z,J){if(!$.lsbMapping)return 0;return $2($,Z,J,$.lsbMapping)}class R1{font;_coords;_variations;constructor($,Z){this.font=$,this._coords=[],this._variations=new Map;let J=$.fvar;if(J){if(this._coords=Array(J.axes.length).fill(0),Z)this.setVariations(Z)}}setVariations($){let Z=this.font.fvar;if(!Z)return;if(Array.isArray($))for(let X of $)this._variations.set(X.tag,X.value);else for(let[X,Q]of Object.entries($)){let K=M(X.padEnd(4," "));this._variations.set(K,Q)}for(let[X,Q]of Z.axes.entries()){let K=this._variations.get(Q.tag)??Q.defaultValue;this._coords[X]=n6(Q,K)}let J=this.font.avar;if(J)this._coords=l6(J,this._coords)}get normalizedCoords(){return this._coords}get isVariable(){return this.font.isVariable}get axes(){return this.font.fvar?.axes??[]}getAxisValue($){let Z=typeof $==="string"?M($.padEnd(4," ")):$,J=this.font.fvar;if(!J)return null;let X=this._variations.get(Z);if(X!==void 0)return X;return J.axes.find((K)=>K.tag===Z)?.defaultValue??null}advanceWidth($){let Z=this.font.advanceWidth($);if(this._coords.length>0&&this.font.hvar){let J=i6(this.font.hvar,$,this._coords);Z+=J}return Z}leftSideBearing($){let Z=this.font.leftSideBearing($);if(this._coords.length>0&&this.font.hvar){let J=Z2(this.font.hvar,$,this._coords);Z+=J}return Z}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 V8($,Z){return new R1($,Z)}function d1($){let Z=$.uint16(),J=$.int16(),X={format:Z,coordinate:J};if(Z===2)X.referenceGlyph=$.uint16(),X.baseCoordPoint=$.uint16();else if(Z===3)X.deviceOffset=$.uint16();return X}function Q2($,Z){if(Z===0)return null;let J=$.sliceFrom(Z),X=J.uint16(),Q=J.uint16(),K=J.uint16(),H=null,q=null;if(X!==0){let U=$.sliceFrom(Z+X);H=d1(U).coordinate}if(Q!==0){let U=$.sliceFrom(Z+Q);q=d1(U).coordinate}let W=[];for(let U=0;U<K;U++){let z=J.uint32(),N=J.uint16(),w=J.uint16(),j=null,_=null;if(N!==0){let Y=$.sliceFrom(Z+N);j=d1(Y).coordinate}if(w!==0){let Y=$.sliceFrom(Z+w);_=d1(Y).coordinate}W.push({featureTag:z,minCoord:j,maxCoord:_})}return{minCoord:H,maxCoord:q,featMinMaxRecords:W}}function B8($,Z,J){if(Z===0)return null;let X=$.sliceFrom(Z),Q=X.uint16(),K=X.uint16(),H=[];for(let W=0;W<K;W++)H.push(X.uint16());let q=[];for(let W of H)if(W!==0){let U=$.sliceFrom(Z+W);q.push(d1(U).coordinate)}else q.push(0);return{defaultBaselineIndex:Q,baseCoords:q}}function M8($,Z,J){let X=$.sliceFrom(Z),Q=X.uint16(),K=X.uint16(),H=X.uint16(),q=new Map,W=[];for(let N=0;N<H;N++){let w=X.uint32(),j=X.uint16();W.push({tag:w,offset:j})}let U=B8($,Z+Q,J),z=Q2($,Z+K);for(let{tag:N,offset:w}of W){let j=Q2($,Z+w);if(j)q.set(N,j)}return{baseValues:U,defaultMinMax:z,baseLangSysRecords:q}}function X2($,Z){if(Z===0)return null;let J=$.sliceFrom(Z),X=J.uint16(),Q=J.uint16(),K=[];if(X!==0){let q=$.sliceFrom(Z+X),W=q.uint16();for(let U=0;U<W;U++)K.push(q.uint32())}let H=[];if(Q!==0){let q=$.sliceFrom(Z+Q),W=q.uint16(),U=[];for(let z=0;z<W;z++){let N=q.uint32(),w=q.uint16();U.push({tag:N,offset:w})}for(let{tag:z,offset:N}of U){let w=M8($,Z+Q+N,K);H.push({scriptTag:z,...w})}}return{baseTagList:K,baseScriptList:H}}function J2($){let Z=$.uint16(),J=$.uint16(),X=$.uint16(),Q=$.uint16(),K=X2($,X),H=X2($,Q);return{majorVersion:Z,minorVersion:J,horizAxis:K,vertAxis:H}}var D8={SmallMetrics:1,SmallMetricsPng:17,BigMetrics:2,BigMetricsPng:18,CompressedPng:19};function K2($){let Z=$.offset,J=$.uint16(),X=$.uint16(),Q=$.uint32(),K=[];for(let H=0;H<Q;H++){let q=$.uint32(),W=$.uint32(),U=$.uint32(),z=$.uint32(),N=H2($),w=H2($),j=$.uint16(),_=$.uint16(),Y=$.uint8(),G=$.uint8(),E=$.uint8(),V=$.int8();K.push({indexSubTableArrayOffset:q,indexTablesSize:W,numberOfIndexSubTables:U,colorRef:z,hori:N,vert:w,startGlyphIndex:j,endGlyphIndex:_,ppemX:Y,ppemY:G,bitDepth:E,flags:V,indexSubTables:[]})}for(let H of K){let q=$.sliceFrom(Z+H.indexSubTableArrayOffset),W=[];for(let U=0;U<H.numberOfIndexSubTables;U++)W.push({firstGlyphIndex:q.uint16(),lastGlyphIndex:q.uint16(),additionalOffsetToIndexSubtable:q.uint32()});for(let U of W){let z=A8($,Z+H.indexSubTableArrayOffset+U.additionalOffsetToIndexSubtable,U.firstGlyphIndex,U.lastGlyphIndex);H.indexSubTables.push(z)}}return{majorVersion:J,minorVersion:X,bitmapSizes:K}}function H2($){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 A8($,Z,J,X){let Q=$.sliceFrom(Z),K=Q.uint16(),H=Q.uint16(),q=Q.uint32(),W=new Map,U=X-J+1;switch(K){case 1:{let z=[];for(let N=0;N<=U;N++)z.push(Q.uint32());for(let N=0;N<U;N++){let w=z[N],j=z[N+1];if(j>w)W.set(J+N,{offset:q+w,length:j-w})}break}case 2:{let z=Q.uint32(),N={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 w=0;w<U;w++)W.set(J+w,{offset:q+w*z,length:z});break}case 3:{let z=[];for(let N=0;N<=U;N++)z.push(Q.uint16());for(let N=0;N<U;N++){let w=z[N],j=z[N+1];if(j>w)W.set(J+N,{offset:q+w,length:j-w})}break}case 4:{let z=Q.uint32(),N=[];for(let w=0;w<=z;w++)N.push({glyphId:Q.uint16(),offset:Q.uint16()});for(let w=0;w<z;w++){let j=N[w],_=N[w+1];W.set(j.glyphId,{offset:q+j.offset,length:_.offset-j.offset})}break}case 5:{let z=Q.uint32();Q.skip(8);let N=Q.uint32();for(let w=0;w<N;w++){let j=Q.uint16();W.set(j,{offset:q+w*z,length:z})}break}}return{firstGlyphIndex:J,lastGlyphIndex:X,indexFormat:K,imageFormat:H,imageDataOffset:q,glyphOffsets:W}}function q2($){let Z=$.uint16(),J=$.uint16(),X=$.bytes($.remaining);return{majorVersion:Z,minorVersion:J,data:X}}function L8($,Z,J,X){let Q=null,K=1/0;for(let H of $.bitmapSizes){if(J<H.startGlyphIndex||J>H.endGlyphIndex)continue;let q=Math.abs(H.ppemX-X);if(q<K)K=q,Q=H}if(!Q)return null;for(let H of Q.indexSubTables){let q=H.glyphOffsets.get(J);if(!q)continue;let W=Z.data.slice(q.offset-4,q.offset-4+q.length);return F8(W,H.imageFormat)}return null}function F8($,Z){if($.length===0)return null;let J=0,X;switch(Z){case 1:case 2:case 17:case 18:{if(Z===1||Z===17)X={height:$[J++],width:$[J++],bearingX:$[J++]<<24>>24,bearingY:$[J++]<<24>>24,advance:$[J++]};else X={height:$[J++],width:$[J++],bearingX:$[J++]<<24>>24,bearingY:$[J++]<<24>>24,advance:$[J++]},J+=3;break}case 19:{X={height:0,width:0,bearingX:0,bearingY:0,advance:0};break}default:return null}return{metrics:X,imageFormat:Z,data:$.slice(J)}}function R8($,Z,J){for(let X of $.bitmapSizes){if(J!==void 0&&X.ppemX!==J)continue;if(Z<X.startGlyphIndex||Z>X.endGlyphIndex)continue;for(let Q of X.indexSubTables)if(Q.glyphOffsets.has(Z))return!0}return!1}function P8($){let Z=new Set;for(let J of $.bitmapSizes)Z.add(J.ppemX);return Array.from(Z).sort((J,X)=>J-X)}var o6=[".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 U2($){let Z=$.offset,J=$.uint8(),X=$.uint8(),Q=$.uint8(),K=$.uint8();$.seek(Z+Q);let H=P1($).map((G)=>new TextDecoder().decode(G)),q=P1($),W=[],z=P1($).map((G)=>new TextDecoder().decode(G)),N=P1($);for(let G of q)W.push(W2(new N1(G.buffer,G.byteOffset,G.byteLength),z));let w=[],j=[],_=[],Y=[];for(let G of W){if(G.charStrings!==void 0)$.seek(Z+G.charStrings),w.push(P1($));else w.push([]);if(G.private){let[E,V]=G.private;$.seek(Z+V);let D=I8($.slice(0,E),z);if(D.subrs!==void 0)$.seek(Z+V+D.subrs),j.push(P1($));else j.push([])}else j.push([]);if(G.fdArray!==void 0){$.seek(Z+G.fdArray);let E=P1($),V=[];for(let D of E){let A=W2(new N1(D.buffer,D.byteOffset,D.byteLength),z);V.push(A)}_.push(V)}else _.push([]);if(G.fdSelect!==void 0){$.seek(Z+G.fdSelect);let E=w[w.length-1];Y.push(v8($,E?.length??0))}else Y.push({format:0,select:()=>0})}return{version:{major:J,minor:X},names:H,topDicts:W,strings:z,globalSubrs:N,charStrings:w,localSubrs:j,fdArrays:_,fdSelects:Y}}function P1($){let Z=$.uint16();if(Z===0)return[];let J=$.uint8(),X=[];for(let K=0;K<=Z;K++)X.push(O8($,J));let Q=[];for(let K=0;K<Z;K++){let H=X[K],q=X[K+1];if(H===void 0||q===void 0)continue;let W=q-H;Q.push($.bytes(W))}return Q}function O8($,Z){switch(Z){case 1:return $.uint8();case 2:return $.uint16();case 3:return $.uint24();case 4:return $.uint32();default:throw Error(`Invalid offset size: ${Z}`)}}function z2($){let Z=new Map,J=[];while($.remaining>0){let X=$.uint8();if(X<=21){let Q=X;if(X===12)Q=3072|$.uint8();Z.set(Q,[...J]),J.length=0}else if(X===28)J.push($.int16());else if(X===29)J.push($.int32());else if(X===30)J.push(T8($));else if(X>=32&&X<=246)J.push(X-139);else if(X>=247&&X<=250){let Q=$.uint8();J.push((X-247)*256+Q+108)}else if(X>=251&&X<=254){let Q=$.uint8();J.push(-(X-251)*256-Q-108)}}return Z}function T8($){let Z="",J="0123456789.EE -",X=!1;while(!X){let Q=$.uint8();for(let K=0;K<2;K++){let H=K===0?Q>>4:Q&15;if(H===15){X=!0;break}if(H===12)Z+="E-";else Z+=J[H]}}return parseFloat(Z)}function W2($,Z){let J=z2($),X={},Q=(K)=>{if(K<o6.length)return o6[K]??"";return Z[K-o6.length]??""};for(let[K,H]of J){let q=H[0],W=H[1],U=H[2];switch(K){case 0:if(q!==void 0)X.version=Q(q);break;case 1:if(q!==void 0)X.notice=Q(q);break;case 3072:if(q!==void 0)X.copyright=Q(q);break;case 2:if(q!==void 0)X.fullName=Q(q);break;case 3:if(q!==void 0)X.familyName=Q(q);break;case 4:if(q!==void 0)X.weight=Q(q);break;case 3073:X.isFixedPitch=q!==0;break;case 3074:X.italicAngle=q;break;case 3075:X.underlinePosition=q;break;case 3076:X.underlineThickness=q;break;case 3077:X.paintType=q;break;case 3078:X.charstringType=q;break;case 3079:X.fontMatrix=H;break;case 13:X.uniqueID=q;break;case 5:X.fontBBox=H;break;case 3080:X.strokeWidth=q;break;case 15:X.charset=q;break;case 16:X.encoding=q;break;case 17:X.charStrings=q;break;case 18:if(q!==void 0&&W!==void 0)X.private=[q,W];break;case 3092:X.syntheticBase=q;break;case 3093:if(q!==void 0)X.postScript=Q(q);break;case 3094:if(q!==void 0)X.baseFontName=Q(q);break;case 3095:X.baseFontBlend=H;break;case 3102:if(q!==void 0&&W!==void 0&&U!==void 0)X.ros={registry:Q(q),ordering:Q(W),supplement:U};break;case 3103:X.cidFontVersion=q;break;case 3104:X.cidFontRevision=q;break;case 3105:X.cidFontType=q;break;case 3106:X.cidCount=q;break;case 3107:X.uidBase=q;break;case 3108:X.fdArray=q;break;case 3109:X.fdSelect=q;break;case 3110:if(q!==void 0)X.fontName=Q(q);break}}return X}function I8($,Z){let J=z2($),X={};for(let[Q,K]of J){let H=K[0];switch(Q){case 6:X.blueValues=v1(K);break;case 7:X.otherBlues=v1(K);break;case 8:X.familyBlues=v1(K);break;case 9:X.familyOtherBlues=v1(K);break;case 3081:X.blueScale=H;break;case 3082:X.blueShift=H;break;case 3083:X.blueFuzz=H;break;case 10:X.stdHW=H;break;case 11:X.stdVW=H;break;case 3084:X.stemSnapH=v1(K);break;case 3085:X.stemSnapV=v1(K);break;case 3086:X.forceBold=H!==0;break;case 3089:X.languageGroup=H;break;case 3090:X.expansionFactor=H;break;case 3091:X.initialRandomSeed=H;break;case 19:X.subrs=H;break;case 20:X.defaultWidthX=H;break;case 21:X.nominalWidthX=H;break}}return X}function v1($){let Z=[],J=0;for(let X of $)J+=X,Z.push(J);return Z}function v8($,Z){let J=$.uint8();if(J===0){let X=$.uint8Array(Z);return{format:J,select:(Q)=>X[Q]??0}}else if(J===3){let X=$.uint16(),Q=[];for(let H=0;H<X;H++)Q.push({first:$.uint16(),fd:$.uint8()});let K=$.uint16();return{format:J,select:(H)=>{let q=0,W=Q.length-1;while(q<W){let z=Math.ceil((q+W)/2),N=Q[z];if(N&&N.first<=H)q=z;else W=z-1}return Q[q]?.fd??0}}}return{format:J,select:()=>0}}function N2($){let Z=$.offset,J=$.uint8(),X=$.uint8(),Q=$.uint8(),K=$.uint16();$.seek(Z+Q);let H=$.slice($.offset-Z,K);$.skip(K);let q=S8(H),W=K6($),U=[];if(q.charStrings!==void 0)$.seek(Z+q.charStrings),U=K6($);let z=[];if(q.fdArray!==void 0){$.seek(Z+q.fdArray);let j=K6($);for(let _ of j){let Y=C8(new N1(_.buffer,_.byteOffset,_.byteLength));if(Y.privateOffset!==void 0&&Y.privateSize!==void 0){$.seek(Z+Y.privateOffset);let G=$.slice(0,Y.privateSize);if(Y.private=m8(G),Y.private.subrs!==void 0)$.seek(Z+Y.privateOffset+Y.private.subrs),Y.localSubrs=K6($)}z.push(Y)}}let N=null;if(q.fdSelect!==void 0)$.seek(Z+q.fdSelect),N=h8($,U.length);let w=null;if(q.vstore!==void 0)$.seek(Z+q.vstore),w=y8($);return{version:{major:J,minor:X},topDict:q,globalSubrs:W,charStrings:U,fdArray:z,fdSelect:N,vstore:w}}function K6($){let Z=$.uint32();if(Z===0)return[];let J=$.uint8(),X=[];for(let K=0;K<=Z;K++)X.push(k8($,J));let Q=[];for(let K=0;K<Z;K++){let H=X[K],q=X[K+1];if(H===void 0||q===void 0)continue;let W=q-H;Q.push($.bytes(W))}return Q}function k8($,Z){switch(Z){case 1:return $.uint8();case 2:return $.uint16();case 3:return $.uint24();case 4:return $.uint32();default:throw Error(`Invalid offset size: ${Z}`)}}function c6($){let Z=new Map,J=[];while($.remaining>0){let X=$.uint8();if(X<=21){let Q=X;if(X===12)Q=3072|$.uint8();Z.set(Q,[...J]),J.length=0}else if(X===22)Z.set(22,[...J]),J.length=0;else if(X===23)Z.set(23,[...J]),J.length=0;else if(X===24)Z.set(24,[...J]),J.length=0;else if(X===28)J.push($.int16());else if(X===29)J.push($.int32());else if(X===30)J.push(x8($));else if(X>=32&&X<=246)J.push(X-139);else if(X>=247&&X<=250){let Q=$.uint8();J.push((X-247)*256+Q+108)}else if(X>=251&&X<=254){let Q=$.uint8();J.push(-(X-251)*256-Q-108)}}return Z}function x8($){let Z="",J="0123456789.EE -",X=!1;while(!X){let Q=$.uint8();for(let K=0;K<2;K++){let H=K===0?Q>>4:Q&15;if(H===15){X=!0;break}if(H===12)Z+="E-";else{let q=J[H];if(q!==void 0)Z+=q}}}return parseFloat(Z)}function S8($){let Z=c6($),J={};for(let[X,Q]of Z)switch(X){case 3079:J.fontMatrix=Q;break;case 17:J.charStrings=Q[0];break;case 3108:J.fdArray=Q[0];break;case 3109:J.fdSelect=Q[0];break;case 24:J.vstore=Q[0];break}return J}function C8($){let Z=c6($),J={},X=Z.get(18);if(X&&X.length>=2)J.privateSize=X[0],J.privateOffset=X[1];return J}function m8($){let Z=c6($),J={};for(let[X,Q]of Z){let K=Q[0];switch(X){case 6:J.blueValues=k1(Q);break;case 7:J.otherBlues=k1(Q);break;case 8:J.familyBlues=k1(Q);break;case 9:J.familyOtherBlues=k1(Q);break;case 3081:J.blueScale=K;break;case 3082:J.blueShift=K;break;case 3083:J.blueFuzz=K;break;case 10:J.stdHW=K;break;case 11:J.stdVW=K;break;case 3084:J.stemSnapH=k1(Q);break;case 3085:J.stemSnapV=k1(Q);break;case 3089:J.languageGroup=K;break;case 3090:J.expansionFactor=K;break;case 19:J.subrs=K;break;case 22:J.vsindex=K;break;case 23:J.blend=Q;break}}return J}function k1($){let Z=[],J=0;for(let X of $)J+=X,Z.push(J);return Z}function h8($,Z){let J=$.uint8();if(J===0){let X=$.uint8Array(Z);return{format:J,select:(Q)=>X[Q]??0}}else if(J===3){let X=$.uint16(),Q=[];for(let K=0;K<X;K++)Q.push({first:$.uint16(),fd:$.uint8()});return $.uint16(),{format:J,select:(K)=>{let H=0,q=Q.length-1;while(H<q){let U=Math.ceil((H+q)/2),z=Q[U];if(z&&z.first<=K)H=U;else q=U-1}return Q[H]?.fd??0}}}else if(J===4){let X=$.uint32(),Q=[];for(let K=0;K<X;K++)Q.push({first:$.uint32(),fd:$.uint16()});return $.uint32(),{format:J,select:(K)=>{let H=0,q=Q.length-1;while(H<q){let U=Math.ceil((H+q)/2),z=Q[U];if(z&&z.first<=K)H=U;else q=U-1}return Q[H]?.fd??0}}}return{format:J,select:()=>0}}function y8($){let Z=$.offset,J=$.uint16(),X=$.uint16(),Q=$.uint32(),K=$.uint16(),H=[];for(let U=0;U<K;U++)H.push($.uint32());$.seek(Z+Q);let q=b8($),W=[];for(let U of H)$.seek(Z+U),W.push(g8($));return{format:X,variationRegionList:q,itemVariationData:W}}function b8($){let Z=$.uint16(),J=$.uint16(),X=[];for(let Q=0;Q<J;Q++){let K=[];for(let H=0;H<Z;H++)K.push({startCoord:$.f2dot14(),peakCoord:$.f2dot14(),endCoord:$.f2dot14()});X.push({axes:K})}return{axisCount:Z,regionCount:J,regions:X}}function g8($){let Z=$.uint16(),J=$.uint16(),X=J&32767,Q=(J&32768)!==0,K=[];for(let q=0;q<X;q++)K.push($.uint16());let H=[];for(let q=0;q<Z;q++){let W=[];for(let U=0;U<X;U++)if(Q)W.push($.int32());else W.push($.int16());H.push(W)}return{itemCount:Z,regionIndexCount:X,regionIndexes:K,deltaSets:H}}function w2($,Z){let J=$.offset,X=$.uint16(),Q=$.uint16(),K=[];for(let z=0;z<Q;z++)K.push({platformId:$.uint16(),encodingId:$.uint16(),offset:$.uint32()});let H=new Map,q=new Set;for(let z of K){if(q.has(z.offset)){let j=`${z.platformId}-${z.encodingId}`;for(let[_,Y]of H){let E=_.split("@")[0];if(E&&Number.parseInt(E,10)===z.offset){H.set(j,Y);break}}continue}q.add(z.offset);let N=$.slice(z.offset,Z-z.offset),w=u8(N);if(w){let j=`${z.platformId}-${z.encodingId}`;H.set(j,w)}}let W=["3-10","0-4","3-1","0-3","0-6","1-0"],U=null;for(let z of W){let N=H.get(z);if(N&&N.format!==14){U=N;break}}if(!U){for(let z of H.values())if(z.format!==14){U=z;break}}return{version:X,numTables:Q,encodingRecords:K,subtables:H,bestSubtable:U}}function u8($){switch($.uint16()){case 0:return f8($);case 4:return l8($);case 12:return n8($);case 14:return d8($);default:return null}}function f8($){let Z=$.uint16(),J=$.uint16(),X=$.uint8Array(256);return{format:0,glyphIdArray:X,lookup(Q){if(Q>=0&&Q<256)return X[Q];return}}}function l8($){let Z=$.uint16(),J=$.uint16(),Q=$.uint16()/2;$.skip(6);let K=$.uint16Array(Q);$.skip(2);let H=$.uint16Array(Q),q=$.int16Array(Q),W=$.offset,U=$.uint16Array(Q),N=$.remaining/2,w=$.uint16Array(N);return{format:4,segCount:Q,endCodes:K,startCodes:H,idDeltas:q,idRangeOffsets:U,glyphIdArray:w,lookup(j){if(j>65535)return;let _=0,Y=Q-1;while(_<=Y){let G=_+Y>>>1,E=K[G];if(E===void 0)break;if(j>E)_=G+1;else{let V=H[G];if(V===void 0)break;if(j<V)Y=G-1;else{let D=U[G],A=q[G];if(D===void 0||A===void 0)break;if(D===0)return j+A&65535;let k=D/2-(Q-G)+(j-V),L=w[k];if(L===void 0||L===0)return 0;return L+A&65535}}}return}}}function n8($){$.skip(2);let Z=$.uint32(),J=$.uint32(),X=$.uint32(),Q=Array(X);for(let K=0;K<X;K++)Q[K]={startCharCode:$.uint32(),endCharCode:$.uint32(),startGlyphId:$.uint32()};return{format:12,groups:Q,lookup(K){let H=0,q=Q.length-1;while(H<=q){let W=H+q>>>1,U=Q[W];if(!U)break;if(K>U.endCharCode)H=W+1;else if(K<U.startCharCode)q=W-1;else return U.startGlyphId+(K-U.startCharCode)}return}}}function d8($){let Z=$.offset-2,J=$.uint32(),X=$.uint32(),Q=[];for(let H=0;H<X;H++)Q.push({varSelector:$.uint24(),defaultUVSOffset:$.uint32(),nonDefaultUVSOffset:$.uint32()});let K=[];for(let H of Q){let q=null,W=null;if(H.defaultUVSOffset!==0){let U=$.sliceFrom(Z+H.defaultUVSOffset),z=U.uint32();q=[];for(let N=0;N<z;N++)q.push({startUnicodeValue:U.uint24(),additionalCount:U.uint8()})}if(H.nonDefaultUVSOffset!==0){let U=$.sliceFrom(Z+H.nonDefaultUVSOffset),z=U.uint32();W=[];for(let N=0;N<z;N++)W.push({unicodeValue:U.uint24(),glyphId:U.uint16()})}K.push({varSelector:H.varSelector,defaultUVS:q,nonDefaultUVS:W})}return{format:14,varSelectorRecords:K,lookup(H){return},lookupVariation(H,q){let W=0,U=K.length-1,z=null;while(W<=U){let N=W+U>>>1,w=K[N];if(!w)break;if(q>w.varSelector)W=N+1;else if(q<w.varSelector)U=N-1;else{z=w;break}}if(!z)return;if(z.nonDefaultUVS){let N=0,w=z.nonDefaultUVS.length-1;while(N<=w){let j=N+w>>>1,_=z.nonDefaultUVS[j];if(!_)break;if(H>_.unicodeValue)N=j+1;else if(H<_.unicodeValue)w=j-1;else return _.glyphId}}if(z.defaultUVS)for(let N of z.defaultUVS){let w=N.startUnicodeValue+N.additionalCount;if(H>=N.startUnicodeValue&&H<=w)return"default"}return}}}function _2($,Z){return $.bestSubtable?.lookup(Z)??0}var Y2;((F)=>{F[F.ColrLayers=1]="ColrLayers";F[F.Solid=2]="Solid";F[F.VarSolid=3]="VarSolid";F[F.LinearGradient=4]="LinearGradient";F[F.VarLinearGradient=5]="VarLinearGradient";F[F.RadialGradient=6]="RadialGradient";F[F.VarRadialGradient=7]="VarRadialGradient";F[F.SweepGradient=8]="SweepGradient";F[F.VarSweepGradient=9]="VarSweepGradient";F[F.Glyph=10]="Glyph";F[F.ColrGlyph=11]="ColrGlyph";F[F.Transform=12]="Transform";F[F.VarTransform=13]="VarTransform";F[F.Translate=14]="Translate";F[F.VarTranslate=15]="VarTranslate";F[F.Scale=16]="Scale";F[F.VarScale=17]="VarScale";F[F.ScaleAroundCenter=18]="ScaleAroundCenter";F[F.VarScaleAroundCenter=19]="VarScaleAroundCenter";F[F.ScaleUniform=20]="ScaleUniform";F[F.VarScaleUniform=21]="VarScaleUniform";F[F.ScaleUniformAroundCenter=22]="ScaleUniformAroundCenter";F[F.VarScaleUniformAroundCenter=23]="VarScaleUniformAroundCenter";F[F.Rotate=24]="Rotate";F[F.VarRotate=25]="VarRotate";F[F.RotateAroundCenter=26]="RotateAroundCenter";F[F.VarRotateAroundCenter=27]="VarRotateAroundCenter";F[F.Skew=28]="Skew";F[F.VarSkew=29]="VarSkew";F[F.SkewAroundCenter=30]="SkewAroundCenter";F[F.VarSkewAroundCenter=31]="VarSkewAroundCenter";F[F.Composite=32]="Composite"})(Y2||={});var j2;((X)=>{X[X.Pad=0]="Pad";X[X.Repeat=1]="Repeat";X[X.Reflect=2]="Reflect"})(j2||={});var G2;((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"})(G2||={});function s6($){let Z=$.offset,J=$.uint16(),X=$.uint16(),Q=$.uint32(),K=$.uint32(),H=$.uint16(),q=[];if(Q!==0&&X>0){$.seek(Z+Q);for(let z=0;z<X;z++)q.push({glyphId:$.uint16(),firstLayerIndex:$.uint16(),numLayers:$.uint16()})}let W=[];if(K!==0&&H>0){$.seek(Z+K);for(let z=0;z<H;z++)W.push({glyphId:$.uint16(),paletteIndex:$.uint16()})}let U={version:J,baseGlyphRecords:q,layerRecords:W};if(J>=1){$.seek(Z+14);let z=$.uint32(),N=$.uint32(),w=$.uint32(),j=$.uint32(),_=$.uint32();if(z!==0){$.seek(Z+z);let Y=$.uint32();U.baseGlyphPaintRecords=[];for(let G=0;G<Y;G++){let E=$.uint16(),V=$.uint32(),D=$.offset;$.seek(Z+z+4+G*6+2+V-4);let A=Q1($,Z);$.seek(D),U.baseGlyphPaintRecords.push({glyphId:E,paint:A})}}if(N!==0){$.seek(Z+N);let Y=$.uint32(),G=[];for(let E=0;E<Y;E++)G.push($.uint32());U.layerList=[];for(let E of G)$.seek(Z+N+E),U.layerList.push(Q1($,Z))}if(w!==0)$.seek(Z+w),U.clipList=i8($,Z);if(j!==0)$.seek(Z+j),U.varIdxMap=c8($);if(_!==0)$.seek(Z+_),U.itemVariationStore=p8($)}return U}function Q1($,Z){let J=$.uint8();switch(J){case 1:return{format:J,numLayers:$.uint8(),firstLayerIndex:$.uint32()};case 2:return{format:J,paletteIndex:$.uint16(),alpha:$.f2dot14()};case 3:return{format:J,paletteIndex:$.uint16(),alpha:$.f2dot14(),varIndexBase:$.uint32()};case 4:case 5:{let X=$.uint24(),Q=$.fword(),K=$.fword(),H=$.fword(),q=$.fword(),W=$.fword(),U=$.fword(),z=$.offset;$.seek($.offset-18+X);let N=p6($);return $.seek(z),{format:J,colorLine:N,x0:Q,y0:K,x1:H,y1:q,x2:W,y2:U}}case 6:case 7:{let X=$.uint24(),Q=$.fword(),K=$.fword(),H=$.ufword(),q=$.fword(),W=$.fword(),U=$.ufword(),z=$.offset;$.seek($.offset-18+X);let N=p6($);return $.seek(z),{format:J,colorLine:N,x0:Q,y0:K,radius0:H,x1:q,y1:W,radius1:U}}case 8:case 9:{let X=$.uint24(),Q=$.fword(),K=$.fword(),H=$.f2dot14(),q=$.f2dot14(),W=$.offset;$.seek($.offset-12+X);let U=p6($);return $.seek(W),{format:J,colorLine:U,centerX:Q,centerY:K,startAngle:H,endAngle:q}}case 10:{let X=$.uint24(),Q=$.uint16(),K=$.offset;$.seek($.offset-5+X);let H=Q1($,Z);return $.seek(K),{format:J,paint:H,glyphId:Q}}case 11:return{format:J,glyphId:$.uint16()};case 12:case 13:{let X=$.uint24(),Q=$.uint24(),K=$.offset-6+X,H=$.offset-3+Q;$.seek(H);let q={xx:$.fixed(),yx:$.fixed(),xy:$.fixed(),yy:$.fixed(),dx:$.fixed(),dy:$.fixed()};$.seek(K);let W=Q1($,Z);return{format:J,paint:W,transform:q}}case 14:case 15:{let X=$.uint24(),Q=$.fword(),K=$.fword(),H=$.offset;$.seek($.offset-7+X);let q=Q1($,Z);return $.seek(H),{format:J,paint:q,dx:Q,dy:K}}case 16:case 17:{let X=$.uint24(),Q=$.f2dot14(),K=$.f2dot14(),H=$.offset;$.seek($.offset-7+X);let q=Q1($,Z);return $.seek(H),{format:J,paint:q,scaleX:Q,scaleY:K}}case 18:case 19:{let X=$.uint24(),Q=$.f2dot14(),K=$.f2dot14(),H=$.fword(),q=$.fword(),W=$.offset;$.seek($.offset-11+X);let U=Q1($,Z);return $.seek(W),{format:J,paint:U,scaleX:Q,scaleY:K,centerX:H,centerY:q}}case 20:case 21:{let X=$.uint24(),Q=$.f2dot14(),K=$.offset;$.seek($.offset-5+X);let H=Q1($,Z);return $.seek(K),{format:J,paint:H,scaleX:Q,scaleY:Q}}case 22:case 23:{let X=$.uint24(),Q=$.f2dot14(),K=$.fword(),H=$.fword(),q=$.offset;$.seek($.offset-9+X);let W=Q1($,Z);return $.seek(q),{format:J,paint:W,scaleX:Q,scaleY:Q,centerX:K,centerY:H}}case 24:case 25:{let X=$.uint24(),Q=$.f2dot14(),K=$.offset;$.seek($.offset-5+X);let H=Q1($,Z);return $.seek(K),{format:J,paint:H,angle:Q}}case 26:case 27:{let X=$.uint24(),Q=$.f2dot14(),K=$.fword(),H=$.fword(),q=$.offset;$.seek($.offset-9+X);let W=Q1($,Z);return $.seek(q),{format:J,paint:W,angle:Q,centerX:K,centerY:H}}case 28:case 29:{let X=$.uint24(),Q=$.f2dot14(),K=$.f2dot14(),H=$.offset;$.seek($.offset-7+X);let q=Q1($,Z);return $.seek(H),{format:J,paint:q,xSkewAngle:Q,ySkewAngle:K}}case 30:case 31:{let X=$.uint24(),Q=$.f2dot14(),K=$.f2dot14(),H=$.fword(),q=$.fword(),W=$.offset;$.seek($.offset-11+X);let U=Q1($,Z);return $.seek(W),{format:J,paint:U,xSkewAngle:Q,ySkewAngle:K,centerX:H,centerY:q}}case 32:{let X=$.uint24(),Q=$.uint8(),K=$.uint24(),H=$.offset-7+X,q=$.offset-3+K;$.seek(H);let W=Q1($,Z);$.seek(q);let U=Q1($,Z);return{format:J,sourcePaint:W,compositeMode:Q,backdropPaint:U}}default:throw Error(`Unknown paint format: ${J}`)}}function p6($){let Z=$.uint8(),J=$.uint16(),X=[];for(let Q=0;Q<J;Q++)X.push({stopOffset:$.f2dot14(),paletteIndex:$.uint16(),alpha:$.f2dot14()});return{extend:Z,colorStops:X}}function i8($,Z){let J=$.uint8(),X=$.uint32(),Q=[];for(let K=0;K<X;K++){let H=$.uint16(),q=$.uint16(),W=$.uint24(),U=$.offset;$.seek($.offset-7+W);let z=$.uint8(),N={format:z,xMin:$.fword(),yMin:$.fword(),xMax:$.fword(),yMax:$.fword()};if(z===2)N.varIndexBase=$.uint32();$.seek(U),Q.push({startGlyphId:H,endGlyphId:q,clipBox:N})}return Q}function E2($,Z){let J=$.baseGlyphRecords,X=0,Q=J.length-1;while(X<=Q){let K=X+Q>>>1,H=J[K];if(!H)break;if(H.glyphId===Z){let q=[];for(let W=0;W<H.numLayers;W++){let U=$.layerRecords[H.firstLayerIndex+W];if(U)q.push(U)}return q}else if(H.glyphId<Z)X=K+1;else Q=K-1}return null}function V2($,Z){if(!$.baseGlyphPaintRecords)return null;let J=$.baseGlyphPaintRecords,X=0,Q=J.length-1;while(X<=Q){let K=X+Q>>>1,H=J[K];if(!H)break;if(H.glyphId===Z)return H.paint;else if(H.glyphId<Z)X=K+1;else Q=K-1}return null}function o8($,Z){return E2($,Z)!==null||V2($,Z)!==null}function c8($){let Z=$.uint8(),J=$.uint8(),X=Z===0?$.uint16():$.uint32(),Q=(J&15)+1,K=(J>>4&15)+1,H=Math.ceil((Q+K)/8),q=[];for(let W=0;W<X;W++){let U=0;for(let j=0;j<H;j++)U=U<<8|$.uint8();let z=(1<<Q)-1,N=U&z,w=U>>Q;q.push(w<<16|N)}return q}function p8($){let Z=$.offset,J=$.uint16(),X=$.uint32(),Q=$.uint16(),K=[];for(let z=0;z<Q;z++)K.push($.uint32());$.seek(Z+X);let H=$.uint16(),q=$.uint16(),W=[];for(let z=0;z<q;z++){let N=[];for(let w=0;w<H;w++)N.push({startCoord:$.f2dot14(),peakCoord:$.f2dot14(),endCoord:$.f2dot14()});W.push({regionAxes:N})}let U=[];for(let z of K){$.seek(Z+z);let N=$.uint16(),w=$.uint16(),j=$.uint16(),_=[];for(let V=0;V<j;V++)_.push($.uint16());let Y=(w&32768)!==0,G=w&32767,E=[];for(let V=0;V<N;V++){let D=[];for(let A=0;A<j;A++)if(A<G)D.push(Y?$.int32():$.int16());else D.push(Y?$.int16():$.int8());E.push(D)}U.push({itemCount:N,wordDeltaCount:w,regionIndexCount:j,regionIndexes:_,deltaSets:E})}return{format:J,variationRegionListOffset:X,itemVariationDataCount:Q,itemVariationDataOffsets:K,variationRegions:W,itemVariationData:U}}function s8($,Z){if(!$.clipList)return null;for(let J of $.clipList)if(Z>=J.startGlyphId&&Z<=J.endGlyphId)return J.clipBox;return null}function t8($,Z,J){if(!$.itemVariationStore||!$.varIdxMap)return 0;let X=$.varIdxMap[Z];if(X===void 0)return 0;let Q=X>>16,K=X&65535,H=$.itemVariationStore,q=H.itemVariationData[Q];if(!q)return 0;let W=q.deltaSets[K];if(!W)return 0;let U=0;for(let z=0;z<q.regionIndexCount;z++){let N=q.regionIndexes[z],w=H.variationRegions[N];if(!w)continue;let j=1;for(let _=0;_<w.regionAxes.length&&_<J.length;_++){let Y=w.regionAxes[_],G=J[_];if(j*=a8(G,Y.startCoord,Y.peakCoord,Y.endCoord),j===0)break}U+=W[z]*j}return U}function a8($,Z,J,X){if(J===0)return 1;if($===J)return 1;if($<Z||$>X)return 0;if($<J){if(Z===J)return 1;return($-Z)/(J-Z)}else{if(J===X)return 1;return(X-$)/(X-J)}}function r8($){return $.version>=1&&$.baseGlyphPaintRecords!==void 0}function e8($,Z){return $.layerList?.[Z]??null}var B2;((J)=>{J[J.UsableWithLightBackground=1]="UsableWithLightBackground";J[J.UsableWithDarkBackground=2]="UsableWithDarkBackground"})(B2||={});function t6($){let Z=$.offset,J=$.uint16(),X=$.uint16(),Q=$.uint16(),K=$.uint16(),H=$.uint32(),q=[];for(let j=0;j<Q;j++)q.push($.uint16());$.seek(Z+H);let W=[];for(let j=0;j<K;j++)W.push({blue:$.uint8(),green:$.uint8(),red:$.uint8(),alpha:$.uint8()});let U=[];for(let j=0;j<Q;j++){let _=q[j];if(_===void 0)continue;let Y=[];for(let G=0;G<X;G++){let E=W[_+G];if(E)Y.push(E)}U.push({colors:Y})}let z,N,w;if(J>=1){$.seek(Z+12+Q*2);let j=$.uint32(),_=$.uint32(),Y=$.uint32();if(j!==0){$.seek(Z+j),z=[];for(let G=0;G<Q;G++)z.push($.uint32())}if(_!==0){$.seek(Z+_),N=[];for(let G=0;G<Q;G++)N.push($.uint16())}if(Y!==0){$.seek(Z+Y),w=[];for(let G=0;G<X;G++)w.push($.uint16())}}return{version:J,numPalettes:Q,numPaletteEntries:X,palettes:U,paletteTypes:z,paletteLabels:N,paletteEntryLabels:w}}function $4($,Z,J){let X=$.palettes[Z];if(!X)return null;return X.colors[J]??null}function Z4($){return`rgba(${$.red}, ${$.green}, ${$.blue}, ${($.alpha/255).toFixed(3)})`}function Q4($){let Z=$.red.toString(16).padStart(2,"0"),J=$.green.toString(16).padStart(2,"0"),X=$.blue.toString(16).padStart(2,"0");if($.alpha===255)return`#${Z}${J}${X}`;let Q=$.alpha.toString(16).padStart(2,"0");return`#${Z}${J}${X}${Q}`}class M2{startGlyphId;classValueArray;constructor($,Z){this.startGlyphId=$,this.classValueArray=Z}get($){let Z=$-this.startGlyphId;if(Z>=0&&Z<this.classValueArray.length)return this.classValueArray[Z]??0;return 0}glyphsInClass($){let Z=[];for(let J=0;J<this.classValueArray.length;J++)if(this.classValueArray[J]===$)Z.push(this.startGlyphId+J);return Z}}class D2{ranges;constructor($){this.ranges=$}get($){let Z=0,J=this.ranges.length-1;while(Z<=J){let X=Z+J>>>1,Q=this.ranges[X];if(!Q)continue;if($>Q.endGlyphId)Z=X+1;else if($<Q.startGlyphId)J=X-1;else return Q.classValue}return 0}glyphsInClass($){let Z=[];for(let J of this.ranges)if(J.classValue===$)for(let X=J.startGlyphId;X<=J.endGlyphId;X++)Z.push(X);return Z}}class A2{get($){return 0}glyphsInClass($){return[]}}var X4=new A2;function J4($){let Z=$.uint16();if(Z===1){let J=$.uint16(),X=$.uint16(),Q=$.uint16Array(X);return new M2(J,Q)}if(Z===2){let J=$.uint16(),X=Array(J);for(let Q=0;Q<J;Q++)X[Q]={startGlyphId:$.uint16(),endGlyphId:$.uint16(),classValue:$.uint16()};return new D2(X)}throw Error(`Unknown ClassDef format: ${Z}`)}function Z1($,Z){if(Z===0)return X4;return J4($.sliceFrom(Z))}function L2($){let Z=$.uint16(),J=$.uint16(),X=$.offset16(),Q=$.offset16(),K=$.offset16(),H=$.offset16(),q=0;if(Z===1&&J>=2)q=$.offset16();let W=Z1($,X),U=null;if(Q!==0)U=H4($.sliceFrom(Q));let z=null;if(K!==0)z=K4($.sliceFrom(K));let N=Z1($,H),w=null;if(q!==0)w=q4($.sliceFrom(q));return{version:{major:Z,minor:J},glyphClassDef:W,attachList:U,ligCaretList:z,markAttachClassDef:N,markGlyphSets:w}}function H4($){let Z=$.offset16(),J=$.uint16(),X=$.uint16Array(J),Q=$.sliceFrom(Z),K=Q.uint16(),H=[];if(K===1){let W=Q.uint16();for(let U=0;U<W;U++)H.push(Q.uint16())}else if(K===2){let W=Q.uint16();for(let U=0;U<W;U++){let z=Q.uint16(),N=Q.uint16();Q.skip(2);for(let w=z;w<=N;w++)H.push(w)}}let q=new Map;for(let[W,U]of X.entries()){let z=H[W];if(z===void 0)continue;let N=$.sliceFrom(U),w=N.uint16(),j=Array.from(N.uint16Array(w));q.set(z,{pointIndices:j})}return q}function K4($){let Z=$.offset16(),J=$.uint16(),X=$.uint16Array(J),Q=$.sliceFrom(Z),K=Q.uint16(),H=[];if(K===1){let W=Q.uint16();for(let U=0;U<W;U++)H.push(Q.uint16())}else if(K===2){let W=Q.uint16();for(let U=0;U<W;U++){let z=Q.uint16(),N=Q.uint16();Q.skip(2);for(let w=z;w<=N;w++)H.push(w)}}let q=new Map;for(let[W,U]of X.entries()){let z=H[W];if(z===void 0)continue;let N=$.sliceFrom(U),w=N.uint16(),j=N.uint16Array(w),_=[];for(let Y of j){let G=$.sliceFrom(U+Y),E=G.uint16();if(E===1)_.push(G.int16());else if(E===2)_.push(G.uint16());else if(E===3)_.push(G.int16())}q.set(z,{caretValues:_})}return q}function q4($){let Z=$.uint16(),J=$.uint16(),X=$.uint32Array(J),Q=[];for(let K of X){let H=$.sliceFrom(K),q=H.uint16(),W=new Set;if(q===1){let U=H.uint16();for(let z=0;z<U;z++)W.add(H.uint16())}else if(q===2){let U=H.uint16();for(let z=0;z<U;z++){let N=H.uint16(),w=H.uint16();H.skip(2);for(let j=N;j<=w;j++)W.add(j)}}Q.push(W)}return{has(K,H){let q=Q[K];return q?q.has(H):!1}}}function K1($,Z){if(!$)return 0;return $.glyphClassDef.get(Z)}function P2($,Z){let J=$.uint16(),X=$.uint16(),Q=$.uint16(),K=$.uint16(),H=$.offset32(),q=$.uint16(),W=$.uint16(),U=$.offset32(),z=W&1?4:2,N=[];for(let _=0;_<=q;_++){let Y=z===4?$.uint32():$.uint16()*2;N.push(Y)}let w=[];if(K>0){let _=$.sliceFrom(H);for(let Y=0;Y<K;Y++){let G=[];for(let E=0;E<Q;E++)G.push(_.f2dot14());w.push(G)}}let j=[];for(let _=0;_<q;_++){let Y=N[_],G=N[_+1];if(Y===void 0||G===void 0){j.push({tupleVariationHeaders:[]});continue}let E=U+Y,V=U+G;if(E===V){j.push({tupleVariationHeaders:[]});continue}let D=$.sliceFrom(E),A=W4(D,V-E,Q,w);j.push(A)}return{majorVersion:J,minorVersion:X,axisCount:Q,sharedTupleCount:K,sharedTuples:w,glyphVariationData:j}}function W4($,Z,J,X){if(Z===0)return{tupleVariationHeaders:[]};let Q=$.offset,K=$.uint16(),H=$.offset16(),q=K&4095,W=(K&32768)!==0,U=[];for(let j=0;j<q;j++){let _=$.uint16(),Y=$.uint16(),G=null,E=null,V=null;if(Y&32768){G=[];for(let D=0;D<J;D++)G.push($.f2dot14())}else{let D=Y&4095;G=X[D]||null}if(Y&16384){E=[],V=[];for(let D=0;D<J;D++)E.push($.f2dot14());for(let D=0;D<J;D++)V.push($.f2dot14())}U.push({variationDataSize:_,tupleIndex:Y,peakTuple:G,intermediateStartTuple:E,intermediateEndTuple:V})}let z=$.sliceFrom(Q+H),N=null;if(W)N=F2(z);let w=[];for(let j of U){let _=(j.tupleIndex&8192)!==0,Y;if(_)Y=F2(z);else Y=N;let G=Y?Y.length:0,E=G>0?R2(z,G):[],V=G>0?R2(z,G):[],D=[];for(let[A,k]of E.entries()){let L=V[A];D.push({x:k??0,y:L??0})}w.push({variationDataSize:j.variationDataSize,tupleIndex:j.tupleIndex,peakTuple:j.peakTuple,intermediateStartTuple:j.intermediateStartTuple,intermediateEndTuple:j.intermediateEndTuple,serializedData:new Uint8Array(0),pointNumbers:Y,deltas:D})}return{tupleVariationHeaders:w}}function F2($){let Z=$.uint8(),J=Z===0?0:Z&128?(Z&127)<<8|$.uint8():Z;if(J===0)return[];let X=[],Q=0;while(X.length<J){let K=$.uint8(),H=(K&127)+1,q=(K&128)!==0;for(let W=0;W<H&&X.length<J;W++){let U=q?$.uint16():$.uint8();Q+=U,X.push(Q)}}return X}function R2($,Z){let J=[];while(J.length<Z){let X=$.uint8(),Q=(X&63)+1,K=(X&128)!==0,H=(X&64)!==0;for(let q=0;q<Q&&J.length<Z;q++)if(K)J.push(0);else if(H)J.push($.int16());else J.push($.int8())}return J}function q6($,Z,J,X){let Q=1;for(let[K,H]of $.entries()){let q=Z[K]??0;if(H===0||q===0){if(H!==0)Q=0;continue}if(J&&X){let W=J[K],U=X[K];if(W===void 0||U===void 0)continue;if(q<W||q>U){Q=0;break}if(q<H)Q*=(q-W)/(H-W);else if(q>H)Q*=(U-q)/(U-H)}else{if(H>0&&q<0||H<0&&q>0){Q=0;break}if(Math.abs(q)<Math.abs(H))Q*=q/H}}return Q}function U4($,Z,J,X){let Q=$.glyphVariationData[Z];if(!Q)return{x:0,y:0};let K=0,H=0;for(let q of Q.tupleVariationHeaders){if(!q.peakTuple)continue;let W=q6(q.peakTuple,X,q.intermediateStartTuple,q.intermediateEndTuple);if(W===0)continue;if(q.pointNumbers!==null){let U=q.pointNumbers.indexOf(J);if(U<0)continue;let z=q.deltas[U];if(z)K+=z.x*W,H+=z.y*W}else{let U=q.deltas[J];if(U)K+=U.x*W,H+=U.y*W}}return{x:Math.round(K),y:Math.round(H)}}function O2($,Z,J){let X=J===0,Q=[],K=Z+1;if(X)for(let H=0;H<K;H++)Q.push($.uint16()*2);else for(let H=0;H<K;H++)Q.push($.uint32());return{offsets:Q,isShort:X}}function W6($,Z){if(Z<0||Z>=$.offsets.length-1)return null;let J=$.offsets[Z],X=$.offsets[Z+1];if(J===void 0||X===void 0)return null;let Q=X-J;if(Q===0)return null;return{offset:J,length:Q}}function z4($,Z){return W6($,Z)!==null}var M1={OnCurve:1,XShortVector:2,YShortVector:4,Repeat:8,XIsSameOrPositive:16,YIsSameOrPositive:32,OverlapSimple:64},W1={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 T2($){return{reader:$}}function O1($,Z,J){let X=W6(Z,J);if(!X)return{type:"empty"};let Q=$.reader.slice(X.offset,X.length);return N4(Q)}function N4($){let Z=$.int16(),J=$.int16(),X=$.int16(),Q=$.int16(),K=$.int16();if(Z>=0)return w4($,Z,J,X,Q,K);else return _4($,Z,J,X,Q,K)}function w4($,Z,J,X,Q,K){if(Z===0)return{type:"simple",numberOfContours:Z,xMin:J,yMin:X,xMax:Q,yMax:K,contours:[],instructions:new Uint8Array(0)};let H=[];for(let V=0;V<Z;V++)H.push($.uint16());let q=H[Z-1];if(q===void 0)return{type:"simple",numberOfContours:Z,xMin:J,yMin:X,xMax:Q,yMax:K,contours:[],instructions:new Uint8Array(0)};let W=q+1,U=$.uint16(),z=$.bytes(U),N=[];while(N.length<W){let V=$.uint8();if(N.push(V),V&M1.Repeat){let D=$.uint8();for(let A=0;A<D;A++)N.push(V)}}let w=[],j=0;for(let[V,D]of N.entries()){if(D&M1.XShortVector){let A=$.uint8();j+=D&M1.XIsSameOrPositive?A:-A}else if(!(D&M1.XIsSameOrPositive))j+=$.int16();w.push(j)}let _=[],Y=0;for(let[V,D]of N.entries()){if(D&M1.YShortVector){let A=$.uint8();Y+=D&M1.YIsSameOrPositive?A:-A}else if(!(D&M1.YIsSameOrPositive))Y+=$.int16();_.push(Y)}let G=[],E=0;for(let V of H){let D=[];while(E<=V){let A=w[E],k=_[E],L=N[E];if(A===void 0||k===void 0||L===void 0)break;D.push({x:A,y:k,onCurve:(L&M1.OnCurve)!==0}),E++}G.push(D)}return{type:"simple",numberOfContours:Z,xMin:J,yMin:X,xMax:Q,yMax:K,contours:G,instructions:z}}function _4($,Z,J,X,Q,K){let H=[],q;do{q=$.uint16();let U=$.uint16(),z,N;if(q&W1.Arg1And2AreWords)if(q&W1.ArgsAreXYValues)z=$.int16(),N=$.int16();else z=$.uint16(),N=$.uint16();else if(q&W1.ArgsAreXYValues)z=$.int8(),N=$.int8();else z=$.uint8(),N=$.uint8();let w=1,j=0,_=0,Y=1;if(q&W1.WeHaveAScale)w=Y=$.f2dot14();else if(q&W1.WeHaveAnXAndYScale)w=$.f2dot14(),Y=$.f2dot14();else if(q&W1.WeHaveATwoByTwo)w=$.f2dot14(),j=$.f2dot14(),_=$.f2dot14(),Y=$.f2dot14();H.push({glyphId:U,flags:q,arg1:z,arg2:N,transform:[w,j,_,Y]})}while(q&W1.MoreComponents);let W=new Uint8Array(0);if(q&W1.WeHaveInstructions){let U=$.uint16();W=$.bytes(U)}return{type:"composite",numberOfContours:Z,xMin:J,yMin:X,xMax:Q,yMax:K,components:H,instructions:W}}function I2($,Z,J,X=0){if(X>32)return[];let Q=[];for(let K of J.components){let H=O1($,Z,K.glyphId),q;if(H.type==="simple")q=H.contours;else if(H.type==="composite")q=I2($,Z,H,X+1);else continue;let[W,U,z,N]=K.transform,w=K.flags&W1.ArgsAreXYValues?K.arg1:0,j=K.flags&W1.ArgsAreXYValues?K.arg2:0;for(let _ of q){let Y=_.map((G)=>({x:Math.round(W*G.x+z*G.y+w),y:Math.round(U*G.x+N*G.y+j),onCurve:G.onCurve}));Q.push(Y)}}return Q}function v2($,Z,J){let X=O1($,Z,J);if(X.type==="empty")return[];else if(X.type==="simple")return X.contours;else return I2($,Z,X)}function k2($,Z,J){let X=O1($,Z,J);if(X.type==="empty")return null;return{xMin:X.xMin,yMin:X.yMin,xMax:X.xMax,yMax:X.yMax}}function x2($,Z,J,X){let Q=$.glyphVariationData[Z];if(!Q)return Array(J).fill({x:0,y:0});let K=Array(J).fill(null).map(()=>({x:0,y:0}));for(let H of Q.tupleVariationHeaders){if(!H.peakTuple)continue;let q=q6(H.peakTuple,X,H.intermediateStartTuple,H.intermediateEndTuple);if(q===0)continue;if(H.pointNumbers!==null)for(let[W,U]of H.pointNumbers.entries()){let z=K[U],N=H.deltas[W];if(U<J&&z&&N)z.x+=N.x*q,z.y+=N.y*q}else for(let W=0;W<Math.min(H.deltas.length,J);W++){let U=K[W],z=H.deltas[W];if(U&&z)U.x+=z.x*q,U.y+=z.y*q}}for(let H of K)H.x=Math.round(H.x),H.y=Math.round(H.y);return K}function S2($,Z){let J=[],X=0;for(let Q of $){let K=[];for(let H of Q){let q=Z[X]??{x:0,y:0};K.push({x:H.x+q.x,y:H.y+q.y,onCurve:H.onCurve}),X++}J.push(K)}return J}function C2($,Z,J,X,Q){let K=O1($,Z,X);if(K.type==="empty")return[];let H;if(K.type==="simple")H=K.contours;else H=m2($,Z,J,K,Q);if(J&&Q&&Q.length>0){let q=0;for(let U of H)q+=U.length;q+=4;let W=x2(J,X,q,Q);H=S2(H,W)}return H}function m2($,Z,J,X,Q,K=0){if(K>32)return[];let H=[];for(let q of X.components){let W=O1($,Z,q.glyphId),U;if(W.type==="simple"){if(U=W.contours,J&&Q&&Q.length>0){let G=0;for(let V of U)G+=V.length;G+=4;let E=x2(J,q.glyphId,G,Q);U=S2(U,E)}}else if(W.type==="composite")U=m2($,Z,J,W,Q,K+1);else continue;let[z,N,w,j]=q.transform,_=q.flags&W1.ArgsAreXYValues?q.arg1:0,Y=q.flags&W1.ArgsAreXYValues?q.arg2:0;for(let G of U){let E=G.map((V)=>({x:Math.round(z*V.x+w*V.y+_),y:Math.round(N*V.x+j*V.y+Y),onCurve:V.onCurve}));H.push(E)}}return H}class h2{glyphArray;glyphSet;constructor($){this.glyphArray=$,this.glyphSet=new Set($)}get size(){return this.glyphArray.length}get($){let Z=0,J=this.glyphArray.length-1;while(Z<=J){let X=Z+J>>>1,Q=this.glyphArray[X];if(Q===void 0)continue;if(Q<$)Z=X+1;else if(Q>$)J=X-1;else return X}return null}covers($){return this.glyphSet.has($)}glyphs(){return Array.from(this.glyphArray)}}class y2{ranges;_size;constructor($){if(this.ranges=$,$.length===0)this._size=0;else{let Z=$[$.length-1];if(Z)this._size=Z.startCoverageIndex+(Z.endGlyphId-Z.startGlyphId+1);else this._size=0}}get size(){return this._size}get($){let Z=0,J=this.ranges.length-1;while(Z<=J){let X=Z+J>>>1,Q=this.ranges[X];if(!Q)continue;if($>Q.endGlyphId)Z=X+1;else if($<Q.startGlyphId)J=X-1;else return Q.startCoverageIndex+($-Q.startGlyphId)}return null}covers($){return this.get($)!==null}glyphs(){let $=[];for(let Z of this.ranges)for(let J=Z.startGlyphId;J<=Z.endGlyphId;J++)$.push(J);return $}}function Y4($){let Z=$.uint16();if(Z===1){let J=$.uint16(),X=$.uint16Array(J);return new h2(X)}if(Z===2){let J=$.uint16(),X=Array(J);for(let Q=0;Q<J;Q++)X[Q]={startGlyphId:$.uint16(),endGlyphId:$.uint16(),startCoverageIndex:$.uint16()};return new y2(X)}throw Error(`Unknown Coverage format: ${Z}`)}function y($,Z){return Y4($.sliceFrom(Z))}function b2($){return"deltaSetOuterIndex"in $}function T1($,Z){if(Z===0)return null;return j4($.sliceFrom(Z))}function j4($){let Z=$.uint16(),J=$.uint16(),X=$.uint16();if(X===32768)return{deltaSetOuterIndex:Z,deltaSetInnerIndex:J};let Q=[];if(X>=1&&X<=3){let K=J-Z+1,H=1<<X,q=16/H,W=(1<<H)-1,U=1<<H-1,z=Math.ceil(K/q),N=0;for(let w=0;w<z;w++){let j=$.uint16();for(let _=0;_<q&&N<K;_++,N++){let Y=16-H*(_+1),G=j>>Y&W;if(G&U)G=G-(1<<H);Q.push(G)}}}return{startSize:Z,endSize:J,deltaFormat:X,deltaValues:Q}}function g2($,Z){if(Z<$.startSize||Z>$.endSize)return 0;let J=Z-$.startSize;return $.deltaValues[J]??0}function G4($,Z,J){if(!$)return Z;if(b2($))return Z;return Z+g2($,J)}var G1={RightToLeft:1,IgnoreBaseGlyphs:2,IgnoreLigatures:4,IgnoreMarks:8,UseMarkFilteringSet:16,MarkAttachmentTypeMask:65280};function f2($){return($&G1.MarkAttachmentTypeMask)>>8}function U6($){let Z=$.uint16(),J=[];for(let Q=0;Q<Z;Q++)J.push({tag:$.tag(),offset:$.offset16()});let X=[];for(let Q of J){let K=$.sliceFrom(Q.offset),H=E4(K);X.push({scriptTag:Q.tag,script:H})}return{scripts:X}}function E4($){let Z=$.offset16(),J=$.uint16(),X=[];for(let H=0;H<J;H++)X.push({tag:$.tag(),offset:$.offset16()});let Q=null;if(Z!==0)Q=u2($.sliceFrom(Z));let K=[];for(let H of X){let q=u2($.sliceFrom(H.offset));K.push({langSysTag:H.tag,langSys:q})}return{defaultLangSys:Q,langSysRecords:K}}function u2($){let Z=$.offset16(),J=$.uint16(),X=$.uint16(),Q=Array.from($.uint16Array(X));return{requiredFeatureIndex:J,featureIndices:Q}}function z6($){let Z=$.uint16(),J=[];for(let Q=0;Q<Z;Q++)J.push({tag:$.tag(),offset:$.offset16()});let X=[];for(let Q of J){let K=$.sliceFrom(Q.offset),H=V4(K);X.push({featureTag:Q.tag,feature:H})}return{features:X}}function V4($){let Z=$.offset16(),J=$.uint16(),X=Array.from($.uint16Array(J));return{featureParamsOffset:Z,lookupListIndices:X}}function N6($,Z){for(let J of $.scripts)if(J.scriptTag===Z)return J.script;return null}function l2($,Z){if(Z===null)return $.defaultLangSys;for(let J of $.langSysRecords)if(J.langSysTag===Z)return J.langSys;return $.defaultLangSys}function a6($,Z){return $.features[Z]??null}function r6($,Z){let J=[];for(let X of Z){let Q=$.sliceFrom(X);switch(Q.uint16()){case 1:J.push(B4(Q));break;case 2:J.push(M4(Q));break;case 3:J.push(D4(Q));break}}return J}function B4($){let Z=$.offset16(),J=$.uint16(),X=$.uint16Array(J),Q=y($,Z),K=[];for(let H of X){if(H===0){K.push(null);continue}let q=$.sliceFrom(H),W=q.uint16(),U=q.uint16Array(W),z=[];for(let N of U){let w=q.sliceFrom(N),j=w.uint16(),_=w.uint16(),Y=Array.from(w.uint16Array(j-1)),G=x1(w,_);z.push({glyphCount:j,inputSequence:Y,lookupRecords:G})}K.push(z)}return{format:1,coverage:Q,ruleSets:K}}function M4($){let Z=$.offset16(),J=$.offset16(),X=$.uint16(),Q=$.uint16Array(X),K=y($,Z),H=Z1($,J),q=[];for(let W of Q){if(W===0){q.push(null);continue}let U=$.sliceFrom(W),z=U.uint16(),N=U.uint16Array(z),w=[];for(let j of N){let _=U.sliceFrom(j),Y=_.uint16(),G=_.uint16(),E=Array.from(_.uint16Array(Y-1)),V=x1(_,G);w.push({glyphCount:Y,inputClasses:E,lookupRecords:V})}q.push(w)}return{format:2,coverage:K,classDef:H,classRuleSets:q}}function D4($){let Z=$.uint16(),J=$.uint16(),X=$.uint16Array(Z),Q=[];for(let H of X)Q.push(y($,H));let K=x1($,J);return{format:3,coverages:Q,lookupRecords:K}}function e6($,Z){let J=[];for(let X of Z){let Q=$.sliceFrom(X);switch(Q.uint16()){case 1:J.push(A4(Q));break;case 2:J.push(L4(Q));break;case 3:J.push(F4(Q));break}}return J}function A4($){let Z=$.offset16(),J=$.uint16(),X=$.uint16Array(J),Q=y($,Z),K=[];for(let H of X){if(H===0){K.push(null);continue}let q=$.sliceFrom(H),W=q.uint16(),U=q.uint16Array(W),z=[];for(let N of U){let w=q.sliceFrom(N),j=w.uint16(),_=Array.from(w.uint16Array(j)),Y=w.uint16(),G=Array.from(w.uint16Array(Y-1)),E=w.uint16(),V=Array.from(w.uint16Array(E)),D=w.uint16(),A=x1(w,D);z.push({backtrackSequence:_,inputSequence:G,lookaheadSequence:V,lookupRecords:A})}K.push(z)}return{format:1,coverage:Q,chainRuleSets:K}}function L4($){let Z=$.offset16(),J=$.offset16(),X=$.offset16(),Q=$.offset16(),K=$.uint16(),H=$.uint16Array(K),q=y($,Z),W=Z1($,J),U=Z1($,X),z=Z1($,Q),N=[];for(let w of H){if(w===0){N.push(null);continue}let j=$.sliceFrom(w),_=j.uint16(),Y=j.uint16Array(_),G=[];for(let E of Y){let V=j.sliceFrom(E),D=V.uint16(),A=Array.from(V.uint16Array(D)),k=V.uint16(),L=Array.from(V.uint16Array(k-1)),S=V.uint16(),I=Array.from(V.uint16Array(S)),P=V.uint16(),C=x1(V,P);G.push({backtrackClasses:A,inputClasses:L,lookaheadClasses:I,lookupRecords:C})}N.push(G)}return{format:2,coverage:q,backtrackClassDef:W,inputClassDef:U,lookaheadClassDef:z,chainClassRuleSets:N}}function F4($){let Z=$.uint16(),J=$.uint16Array(Z),X=$.uint16(),Q=$.uint16Array(X),K=$.uint16(),H=$.uint16Array(K),q=$.uint16(),W=x1($,q),U=[];for(let w of J)U.push(y($,w));let z=[];for(let w of Q)z.push(y($,w));let N=[];for(let w of H)N.push(y($,w));return{format:3,backtrackCoverages:U,inputCoverages:z,lookaheadCoverages:N,lookupRecords:W}}function x1($,Z){let J=[];for(let X=0;X<Z;X++)J.push({sequenceIndex:$.uint16(),lookupListIndex:$.uint16()});return J}function n2($){let Z=$.uint16(),J=$.int16(),X=$.int16(),Q={xCoordinate:J,yCoordinate:X};if(Z===2)Q.anchorPoint=$.uint16();else if(Z===3)Q.xDeviceOffset=$.uint16(),Q.yDeviceOffset=$.uint16();return Q}function i1($,Z){if(Z===0)return null;return n2($.sliceFrom(Z))}function $5($){let Z=$.uint16(),J=[],X=[];for(let Q=0;Q<Z;Q++)X.push({markClass:$.uint16(),anchorOffset:$.uint16()});for(let Q of X){let K=n2($.sliceFrom(Q.anchorOffset));J.push({markClass:Q.markClass,markAnchor:K})}return{markRecords:J}}function Z5($,Z){let J=[];for(let X of Z){let Q=$.sliceFrom(X);if(Q.uint16()===1){let H=Q.offset16(),q=Q.uint16(),W=[];for(let N=0;N<q;N++)W.push({entryOffset:Q.uint16(),exitOffset:Q.uint16()});let U=y(Q,H),z=[];for(let N of W)z.push({entryAnchor:i1(Q,N.entryOffset),exitAnchor:i1(Q,N.exitOffset)});J.push({coverage:U,entryExitRecords:z})}}return J}function Q5($,Z){let J=[];for(let X of Z){let Q=$.sliceFrom(X);if(Q.uint16()===1){let H=Q.offset16(),q=Q.offset16(),W=Q.uint16(),U=Q.offset16(),z=Q.offset16(),N=y(Q,H),w=y(Q,q),j=$5(Q.sliceFrom(U)),_=Q.sliceFrom(z),Y=_.uint16(),G=[],E=[];for(let V=0;V<Y;V++){let D=[];for(let A=0;A<W;A++)D.push(_.uint16());E.push(D)}for(let V of E){let D=[];for(let A of V)D.push(i1(_,A));G.push({baseAnchors:D})}J.push({markCoverage:N,baseCoverage:w,markClassCount:W,markArray:j,baseArray:G})}}return J}function X5($,Z){let J=[];for(let X of Z){let Q=$.sliceFrom(X);if(Q.uint16()===1){let H=Q.offset16(),q=Q.offset16(),W=Q.uint16(),U=Q.offset16(),z=Q.offset16(),N=y(Q,H),w=y(Q,q),j=$5(Q.sliceFrom(U)),_=Q.sliceFrom(z),Y=_.uint16(),G=_.uint16Array(Y),E=[];for(let V of G){let D=_.sliceFrom(V),A=D.uint16(),k=[],L=[];for(let S=0;S<A;S++){let I=[];for(let P=0;P<W;P++)I.push(D.uint16());L.push(I)}for(let S of L){let I=[];for(let P of S)I.push(i1(D,P));k.push({ligatureAnchors:I})}E.push({componentRecords:k})}J.push({markCoverage:N,ligatureCoverage:w,markClassCount:W,markArray:j,ligatureArray:E})}}return J}function J5($,Z){let J=[];for(let X of Z){let Q=$.sliceFrom(X);if(Q.uint16()===1){let H=Q.offset16(),q=Q.offset16(),W=Q.uint16(),U=Q.offset16(),z=Q.offset16(),N=y(Q,H),w=y(Q,q),j=$5(Q.sliceFrom(U)),_=Q.sliceFrom(z),Y=_.uint16(),G=[],E=[];for(let V=0;V<Y;V++){let D=[];for(let A=0;A<W;A++)D.push(_.uint16());E.push(D)}for(let V of E){let D=[];for(let A of V)D.push(i1(_,A));G.push({mark2Anchors:D})}J.push({mark1Coverage:N,mark2Coverage:w,markClassCount:W,mark1Array:j,mark2Array:G})}}return J}var D1={XPlacement:1,YPlacement:2,XAdvance:4,YAdvance:8,XPlaDevice:16,YPlaDevice:32,XAdvDevice:64,YAdvDevice:128};function d2($){let Z=$.uint16(),J=$.uint16(),X=$.offset16(),Q=$.offset16(),K=$.offset16();if(Z===1&&J>=1)$.offset32();let H=U6($.sliceFrom(X)),q=z6($.sliceFrom(Q)),W=$.sliceFrom(K),U=W.uint16(),z=W.uint16Array(U),N=[];for(let w of z){let j=W.sliceFrom(w),_=R4(j);if(_)N.push(_)}return{version:{major:Z,minor:J},scriptList:H,featureList:q,lookups:N}}function R4($){let Z=$.uint16(),J=$.uint16(),X=$.uint16(),Q=Array.from($.uint16Array(X)),K;if(J&G1.UseMarkFilteringSet)K=$.uint16();let H={flag:J,markFilteringSet:K};switch(Z){case 1:return{type:1,...H,subtables:i2($,Q)};case 2:return{type:2,...H,subtables:o2($,Q)};case 3:return{type:3,...H,subtables:Z5($,Q)};case 4:return{type:4,...H,subtables:Q5($,Q)};case 5:return{type:5,...H,subtables:X5($,Q)};case 6:return{type:6,...H,subtables:J5($,Q)};case 7:return{type:7,...H,subtables:r6($,Q)};case 8:return{type:8,...H,subtables:e6($,Q)};case 9:return T4($,Q,H);default:return null}}function S1($,Z,J){let X={};if(Z&D1.XPlacement)X.xPlacement=$.int16();if(Z&D1.YPlacement)X.yPlacement=$.int16();if(Z&D1.XAdvance)X.xAdvance=$.int16();if(Z&D1.YAdvance)X.yAdvance=$.int16();let Q=J??$;if(Z&D1.XPlaDevice){let K=$.uint16();if(K!==0)X.xPlaDevice=T1(Q,K)??void 0}if(Z&D1.YPlaDevice){let K=$.uint16();if(K!==0)X.yPlaDevice=T1(Q,K)??void 0}if(Z&D1.XAdvDevice){let K=$.uint16();if(K!==0)X.xAdvDevice=T1(Q,K)??void 0}if(Z&D1.YAdvDevice){let K=$.uint16();if(K!==0)X.yAdvDevice=T1(Q,K)??void 0}return X}function i2($,Z){let J=[];for(let X of Z){let Q=$.sliceFrom(X),K=$.sliceFrom(X),H=K.uint16();if(H===1){let q=K.offset16(),W=K.uint16(),U=S1(K,W,Q),z=y(Q,q);J.push({format:1,coverage:z,valueFormat:W,value:U})}else if(H===2){let q=K.offset16(),W=K.uint16(),U=K.uint16(),z=[];for(let w=0;w<U;w++)z.push(S1(K,W,Q));let N=y(Q,q);J.push({format:2,coverage:N,valueFormat:W,values:z})}}return J}function o2($,Z){let J=[];for(let X of Z){let Q=$.sliceFrom(X),K=$.sliceFrom(X),H=K.uint16();if(H===1)J.push(P4(K,Q));else if(H===2)J.push(O4(K,Q))}return J}function P4($,Z){let J=$.offset16(),X=$.uint16(),Q=$.uint16(),K=$.uint16(),H=$.uint16Array(K),q=y(Z,J),W=[];for(let U of H){let z=Z.sliceFrom(U),N=Z.sliceFrom(U),w=N.uint16(),j=[];for(let _=0;_<w;_++){let Y=N.uint16(),G=S1(N,X,z),E=S1(N,Q,z);j.push({secondGlyph:Y,value1:G,value2:E})}W.push({pairValueRecords:j})}return{format:1,coverage:q,valueFormat1:X,valueFormat2:Q,pairSets:W}}function O4($,Z){let J=$.offset16(),X=$.uint16(),Q=$.uint16(),K=$.offset16(),H=$.offset16(),q=$.uint16(),W=$.uint16(),U=y(Z,J),z=Z1(Z,K),N=Z1(Z,H),w=[];for(let j=0;j<q;j++){let _=[];for(let Y=0;Y<W;Y++){let G=S1($,X,Z),E=S1($,Q,Z);_.push({value1:G,value2:E})}w.push({class2Records:_})}return{format:2,coverage:U,valueFormat1:X,valueFormat2:Q,classDef1:z,classDef2:N,class1Count:q,class2Count:W,class1Records:w}}function T4($,Z,J){if(Z.length===0)return null;let X=[];for(let K of Z){let H=$.sliceFrom(K);if(H.uint16()!==1)continue;let W=H.uint16(),U=H.uint32();X.push({type:W,reader:H.sliceFrom(U-8)})}if(X.length===0)return null;switch(X[0]?.type){case 1:{let K=[];for(let H of X)K.push(...i2(H.reader,[0]));return{type:1,...J,subtables:K}}case 2:{let K=[];for(let H of X)K.push(...o2(H.reader,[0]));return{type:2,...J,subtables:K}}case 3:{let K=[];for(let H of X)K.push(...Z5(H.reader,[0]));return{type:3,...J,subtables:K}}case 4:{let K=[];for(let H of X)K.push(...Q5(H.reader,[0]));return{type:4,...J,subtables:K}}case 5:{let K=[];for(let H of X)K.push(...X5(H.reader,[0]));return{type:5,...J,subtables:K}}case 6:{let K=[];for(let H of X)K.push(...J5(H.reader,[0]));return{type:6,...J,subtables:K}}case 7:{let K=[];for(let H of X)K.push(...r6(H.reader,[0]));return{type:7,...J,subtables:K}}case 8:{let K=[];for(let H of X)K.push(...e6(H.reader,[0]));return{type:8,...J,subtables:K}}default:return null}}function c2($,Z,J){for(let X of $.subtables){let Q=X.coverage.get(Z);if(Q===null)continue;if(X.format===1){let K=X.pairSets[Q];if(!K)continue;for(let H of K.pairValueRecords)if(H.secondGlyph===J)return{xAdvance1:H.value1.xAdvance??0,xAdvance2:H.value2.xAdvance??0}}else if(X.format===2){let K=X.classDef1.get(Z),H=X.classDef2.get(J),q=X.class1Records[K];if(!q)continue;let W=q.class2Records[H];if(!W)continue;return{xAdvance1:W.value1.xAdvance??0,xAdvance2:W.value2.xAdvance??0}}}return null}function H5($,Z){let J=[];for(let X of Z){let Q=$.sliceFrom(X);switch(Q.uint16()){case 1:J.push(I4(Q));break;case 2:J.push(v4(Q));break;case 3:J.push(k4(Q));break}}return J}function I4($){let Z=$.offset16(),J=$.uint16(),X=$.uint16Array(J),Q=y($,Z),K=[];for(let H of X){if(H===0){K.push(null);continue}let q=$.sliceFrom(H),W=q.uint16(),U=q.uint16Array(W),z=[];for(let N of U){let w=q.sliceFrom(N),j=w.uint16(),_=w.uint16(),Y=Array.from(w.uint16Array(j-1)),G=C1(w,_);z.push({glyphCount:j,inputSequence:Y,lookupRecords:G})}K.push(z)}return{format:1,coverage:Q,ruleSets:K}}function v4($){let Z=$.offset16(),J=$.offset16(),X=$.uint16(),Q=$.uint16Array(X),K=y($,Z),H=Z1($,J),q=[];for(let W of Q){if(W===0){q.push(null);continue}let U=$.sliceFrom(W),z=U.uint16(),N=U.uint16Array(z),w=[];for(let j of N){let _=U.sliceFrom(j),Y=_.uint16(),G=_.uint16(),E=Array.from(_.uint16Array(Y-1)),V=C1(_,G);w.push({glyphCount:Y,inputClasses:E,lookupRecords:V})}q.push(w)}return{format:2,coverage:K,classDef:H,classRuleSets:q}}function k4($){let Z=$.uint16(),J=$.uint16(),X=$.uint16Array(Z),Q=[];for(let H of X)Q.push(y($,H));let K=C1($,J);return{format:3,coverages:Q,lookupRecords:K}}function K5($,Z){let J=[];for(let X of Z){let Q=$.sliceFrom(X);switch(Q.uint16()){case 1:J.push(x4(Q));break;case 2:J.push(S4(Q));break;case 3:J.push(C4(Q));break}}return J}function x4($){let Z=$.offset16(),J=$.uint16(),X=$.uint16Array(J),Q=y($,Z),K=[];for(let H of X){if(H===0){K.push(null);continue}let q=$.sliceFrom(H),W=q.uint16(),U=q.uint16Array(W),z=[];for(let N of U){let w=q.sliceFrom(N),j=w.uint16(),_=Array.from(w.uint16Array(j)),Y=w.uint16(),G=Array.from(w.uint16Array(Y-1)),E=w.uint16(),V=Array.from(w.uint16Array(E)),D=w.uint16(),A=C1(w,D);z.push({backtrackSequence:_,inputSequence:G,lookaheadSequence:V,lookupRecords:A})}K.push(z)}return{format:1,coverage:Q,chainRuleSets:K}}function S4($){let Z=$.offset16(),J=$.offset16(),X=$.offset16(),Q=$.offset16(),K=$.uint16(),H=$.uint16Array(K),q=y($,Z),W=Z1($,J),U=Z1($,X),z=Z1($,Q),N=[];for(let w of H){if(w===0){N.push(null);continue}let j=$.sliceFrom(w),_=j.uint16(),Y=j.uint16Array(_),G=[];for(let E of Y){let V=j.sliceFrom(E),D=V.uint16(),A=Array.from(V.uint16Array(D)),k=V.uint16(),L=Array.from(V.uint16Array(k-1)),S=V.uint16(),I=Array.from(V.uint16Array(S)),P=V.uint16(),C=C1(V,P);G.push({backtrackClasses:A,inputClasses:L,lookaheadClasses:I,lookupRecords:C})}N.push(G)}return{format:2,coverage:q,backtrackClassDef:W,inputClassDef:U,lookaheadClassDef:z,chainClassRuleSets:N}}function C4($){let Z=$.uint16(),J=$.uint16Array(Z),X=$.uint16(),Q=$.uint16Array(X),K=$.uint16(),H=$.uint16Array(K),q=$.uint16(),W=C1($,q),U=[];for(let w of J)U.push(y($,w));let z=[];for(let w of Q)z.push(y($,w));let N=[];for(let w of H)N.push(y($,w));return{format:3,backtrackCoverages:U,inputCoverages:z,lookaheadCoverages:N,lookupRecords:W}}function C1($,Z){let J=[];for(let X=0;X<Z;X++)J.push({sequenceIndex:$.uint16(),lookupListIndex:$.uint16()});return J}function p2($){let Z=$.uint16(),J=$.uint16(),X=$.offset16(),Q=$.offset16(),K=$.offset16();if(Z===1&&J>=1)$.offset32();let H=U6($.sliceFrom(X)),q=z6($.sliceFrom(Q)),W=$.sliceFrom(K),U=W.uint16(),z=W.uint16Array(U),N=[];for(let w of z){let j=W.sliceFrom(w),_=m4(j,W,w);if(_)N.push(_)}return{version:{major:Z,minor:J},scriptList:H,featureList:q,lookups:N}}function m4($,Z,J){let X=$.uint16(),Q=$.uint16(),K=$.uint16(),H=Array.from($.uint16Array(K)),q;if(Q&G1.UseMarkFilteringSet)q=$.uint16();let W={flag:Q,markFilteringSet:q};switch(X){case 1:return{type:1,...W,subtables:s2($,H)};case 2:return{type:2,...W,subtables:t2($,H)};case 3:return{type:3,...W,subtables:a2($,H)};case 4:return{type:4,...W,subtables:r2($,H)};case 5:return{type:5,...W,subtables:H5($,H)};case 6:return{type:6,...W,subtables:K5($,H)};case 7:return h4($,H,W);case 8:return{type:8,...W,subtables:e2($,H)};default:return null}}function s2($,Z){let J=[];for(let X of Z){let Q=$.sliceFrom(X),K=Q.uint16();if(K===1){let H=Q.offset16(),q=Q.int16(),W=y(Q,H);J.push({format:1,coverage:W,deltaGlyphId:q})}else if(K===2){let H=Q.offset16(),q=Q.uint16(),W=Array.from(Q.uint16Array(q)),U=y(Q,H);J.push({format:2,coverage:U,substituteGlyphIds:W})}}return J}function t2($,Z){let J=[];for(let X of Z){let Q=$.sliceFrom(X);if(Q.uint16()===1){let H=Q.offset16(),q=Q.uint16(),W=Q.uint16Array(q),U=y(Q,H),z=[];for(let N of W){let w=Q.sliceFrom(N),j=w.uint16();z.push(Array.from(w.uint16Array(j)))}J.push({coverage:U,sequences:z})}}return J}function a2($,Z){let J=[];for(let X of Z){let Q=$.sliceFrom(X);if(Q.uint16()===1){let H=Q.offset16(),q=Q.uint16(),W=Q.uint16Array(q),U=y(Q,H),z=[];for(let N of W){let w=Q.sliceFrom(N),j=w.uint16();z.push(Array.from(w.uint16Array(j)))}J.push({coverage:U,alternateSets:z})}}return J}function r2($,Z){let J=[];for(let X of Z){let Q=$.sliceFrom(X);if(Q.uint16()===1){let H=Q.offset16(),q=Q.uint16(),W=Q.uint16Array(q),U=y(Q,H),z=[];for(let N of W){let w=Q.sliceFrom(N),j=w.uint16(),_=w.uint16Array(j),Y=[];for(let G of _){let E=w.sliceFrom(G),V=E.uint16(),D=E.uint16(),A=Array.from(E.uint16Array(D-1));Y.push({ligatureGlyph:V,componentGlyphIds:A})}z.push({ligatures:Y})}J.push({coverage:U,ligatureSets:z})}}return J}function e2($,Z){let J=[];for(let X of Z){let Q=$.sliceFrom(X);if(Q.uint16()===1){let H=Q.offset16(),q=Q.uint16(),W=Q.uint16Array(q),U=Q.uint16(),z=Q.uint16Array(U),N=Q.uint16(),w=Array.from(Q.uint16Array(N)),j=y(Q,H),_=[];for(let G of W)_.push(y(Q,G));let Y=[];for(let G of z)Y.push(y(Q,G));J.push({coverage:j,backtrackCoverages:_,lookaheadCoverages:Y,substituteGlyphIds:w})}}return J}function h4($,Z,J){if(Z.length===0)return null;let X=[];for(let H of Z){let q=$.sliceFrom(H);if(q.uint16()!==1)continue;let U=q.uint16(),z=q.uint32();X.push({type:U,reader:q.sliceFrom(z-8)})}if(X.length===0)return null;let Q=X[0]?.type,K=X.map((H,q)=>0);switch(Q){case 1:{let H=[];for(let q of X)H.push(...s2(q.reader,[0]));return{type:1,...J,subtables:H}}case 2:{let H=[];for(let q of X)H.push(...t2(q.reader,[0]));return{type:2,...J,subtables:H}}case 3:{let H=[];for(let q of X)H.push(...a2(q.reader,[0]));return{type:3,...J,subtables:H}}case 4:{let H=[];for(let q of X)H.push(...r2(q.reader,[0]));return{type:4,...J,subtables:H}}case 5:{let H=[];for(let q of X)H.push(...H5(q.reader,[0]));return{type:5,...J,subtables:H}}case 6:{let H=[];for(let q of X)H.push(...K5(q.reader,[0]));return{type:6,...J,subtables:H}}case 8:{let H=[];for(let q of X)H.push(...e2(q.reader,[0]));return{type:8,...J,subtables:H}}default:return null}}function q5($,Z){for(let J of $.subtables){let X=J.coverage.get(Z);if(X===null)continue;if(J.format===1&&J.deltaGlyphId!==void 0)return Z+J.deltaGlyphId&65535;if(J.format===2&&J.substituteGlyphIds)return J.substituteGlyphIds[X]??null}return null}function $9($,Z,J){let X=Z[J];if(X===void 0)return null;for(let Q of $.subtables){let K=Q.coverage.get(X);if(K===null)continue;let H=Q.ligatureSets[K];if(!H)continue;for(let q of H.ligatures){let W=q.componentGlyphIds.length;if(J+1+W>Z.length)continue;let U=!0;for(let z=0;z<W;z++)if(Z[J+1+z]!==q.componentGlyphIds[z]){U=!1;break}if(U)return{ligatureGlyph:q.ligatureGlyph,consumed:1+W}}}return null}function Z9($){let Z=$.uint16(),J=$.uint16(),X=$.fixed(),Q=$.uint32(),K=$.uint32();if(K!==1594834165)throw Error(`Invalid head table magic number: 0x${K.toString(16)}`);let H=$.uint16(),q=$.uint16(),W=$.longDateTime(),U=$.longDateTime(),z=$.fword(),N=$.fword(),w=$.fword(),j=$.fword(),_=$.uint16(),Y=$.uint16(),G=$.int16(),E=$.int16(),V=$.int16();return{majorVersion:Z,minorVersion:J,fontRevision:X,checksumAdjustment:Q,magicNumber:K,flags:H,unitsPerEm:q,created:W,modified:U,xMin:z,yMin:N,xMax:w,yMax:j,macStyle:_,lowestRecPPEM:Y,fontDirectionHint:G,indexToLocFormat:E,glyphDataFormat:V}}function Q9($){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 X9($,Z,J){let X=Array(Z);for(let H=0;H<Z;H++)X[H]={advanceWidth:$.ufword(),lsb:$.fword()};let Q=J-Z,K=Array(Q);for(let H=0;H<Q;H++)K[H]=$.fword();return{hMetrics:X,leftSideBearings:K}}function J9($,Z){if(Z<$.hMetrics.length)return $.hMetrics[Z]?.advanceWidth;return $.hMetrics[$.hMetrics.length-1]?.advanceWidth}function H9($,Z){if(Z<$.hMetrics.length)return $.hMetrics[Z]?.lsb;let J=Z-$.hMetrics.length;return $.leftSideBearings[J]??0}function A1($,Z){if(Z===0)return null;let J=$.sliceFrom(Z),X=J.uint16(),Q=[];for(let K=0;K<X;K++)Q.push(J.uint16());return{lookupIndices:Q}}function K9($,Z){if(Z===0)return null;let J=$.sliceFrom(Z),X=J.uint16(),Q=[];for(let K=0;K<X;K++)Q.push(J.uint16());return{lookupIndices:Q}}function y4($,Z){let J=$.sliceFrom(Z),X=J.uint16(),Q=J.uint16(),K=J.uint16(),H=J.uint16(),q=J.uint16(),W=J.uint16(),U=J.uint16(),z=J.uint16(),N=J.uint16(),w=J.uint16();return{shrinkageEnableGsub:A1($,Z+X),shrinkageDisableGsub:A1($,Z+Q),shrinkageEnableGpos:A1($,Z+K),shrinkageDisableGpos:A1($,Z+H),shrinkageJstfMax:K9($,Z+q),extensionEnableGsub:A1($,Z+W),extensionDisableGsub:A1($,Z+U),extensionEnableGpos:A1($,Z+z),extensionDisableGpos:A1($,Z+N),extensionJstfMax:K9($,Z+w)}}function q9($,Z){let J=$.sliceFrom(Z),X=J.uint16(),Q=[];for(let H=0;H<X;H++)Q.push(J.uint16());let K=[];for(let H of Q)K.push(y4($,Z+H));return{priorities:K}}function b4($,Z){let J=$.sliceFrom(Z),X=J.uint16(),Q=J.uint16(),K=J.uint16(),H=[];for(let z=0;z<K;z++){let N=J.uint32(),w=J.uint16();H.push({tag:N,offset:w})}let q=[];if(X!==0){let z=$.sliceFrom(Z+X),N=z.uint16();for(let w=0;w<N;w++)q.push(z.uint16())}let W=Q!==0?q9($,Z+Q):null,U=new Map;for(let{tag:z,offset:N}of H)U.set(z,q9($,Z+N));return{extenderGlyphs:q,defaultLangSys:W,langSysRecords:U}}function W9($){let Z=$.uint16(),J=$.uint16(),X=$.uint16(),Q=[];for(let H=0;H<X;H++){let q=$.uint32(),W=$.uint16();Q.push({tag:q,offset:W})}let K=[];for(let{tag:H,offset:q}of Q){let W=b4($,q);K.push({scriptTag:H,...W})}return{majorVersion:Z,minorVersion:J,scripts:K}}function U9($,Z){return $.scripts.find((X)=>X.scriptTag===Z)?.extenderGlyphs??[]}function z9($,Z,J){let X=$.scripts.find((Q)=>Q.scriptTag===Z);if(!X)return[];if(J!==void 0){let Q=X.langSysRecords.get(J);if(Q)return Q.priorities}return X.defaultLangSys?.priorities??[]}function N9($){return{enableGsub:$.shrinkageEnableGsub?.lookupIndices??[],disableGsub:$.shrinkageDisableGsub?.lookupIndices??[],enableGpos:$.shrinkageEnableGpos?.lookupIndices??[],disableGpos:$.shrinkageDisableGpos?.lookupIndices??[],maxLookups:$.shrinkageJstfMax?.lookupIndices??[]}}function w9($){return{enableGsub:$.extensionEnableGsub?.lookupIndices??[],disableGsub:$.extensionDisableGsub?.lookupIndices??[],enableGpos:$.extensionEnableGpos?.lookupIndices??[],disableGpos:$.extensionDisableGpos?.lookupIndices??[],maxLookups:$.extensionJstfMax?.lookupIndices??[]}}function _9($){let Z=$.uint16(),J=[];if(Z===0){let X=$.uint16();for(let Q=0;Q<X;Q++){let K=g4($);if(K)J.push(K)}}else if(Z===1){$.skip(2);let X=$.uint32();for(let Q=0;Q<X;Q++){let K=u4($);if(K)J.push(K)}}return{version:Z,subtables:J}}function g4($){let Z=$.uint16(),J=$.uint16(),X=$.uint16(),Q={horizontal:(X&1)!==0,minimum:(X&2)!==0,crossStream:(X&4)!==0,override:(X&8)!==0},K=X>>8&255;if(K===0)return Y9($,Q);else if(K===2)return j9($,Q,J-6);return $.skip(J-6),null}function u4($){let Z=$.uint32(),J=$.uint16(),X=$.uint16(),Q={horizontal:(J&32768)===0,minimum:!1,crossStream:(J&16384)!==0,override:(J&8192)!==0},K=J&255;if(K===0)return Y9($,Q);else if(K===2)return j9($,Q,Z-8);return $.skip(Z-8),null}function Y9($,Z){let J=$.uint16();$.skip(6);let X=new Map;for(let Q=0;Q<J;Q++){let K=$.uint16(),H=$.uint16(),q=$.int16(),W=K<<16|H;X.set(W,q)}return{format:0,coverage:Z,pairs:X}}function j9($,Z,J){let X=$.offset,Q=$.uint16(),K=$.uint16(),H=$.uint16(),q=$.uint16(),W=new Map;$.seek(X+K);let U=$.uint16(),z=$.uint16();for(let E=0;E<z;E++){let V=$.uint16();if(V!==0)W.set(U+E,V)}let N=new Map;$.seek(X+H);let w=$.uint16(),j=$.uint16();for(let E=0;E<j;E++){let V=$.uint16();if(V!==0)N.set(w+E,V)}$.seek(X+q);let _=Q>0?Math.floor(J/Q):0,Y=Q/2,G=[];for(let E=0;E<_;E++){let V=[];for(let D=0;D<Y;D++)V.push($.int16());G.push(V)}return{format:2,coverage:Z,rowWidth:Q,leftClassTable:W,rightClassTable:N,kerningValues:G}}function W5($,Z,J){let X=0;for(let Q of $.subtables){if(!Q.coverage.horizontal)continue;if(Q.format===0){let K=Z<<16|J,H=Q.pairs.get(K);if(H!==void 0)if(Q.coverage.override)X=H;else X+=H}else if(Q.format===2){let K=Q.leftClassTable.get(Z)??0,H=Q.rightClassTable.get(J)??0;if(K>0&&H>0){let q=Math.floor(K/2),W=Math.floor(H/2),U=Q.kerningValues[q];if(U){let z=U[W];if(z!==void 0)if(Q.coverage.override)X=z;else X+=z}}}}return X}function E9($){let Z=$.uint16();$.skip(2);let J=$.uint32(),X=[];for(let Q=0;Q<J;Q++){let K=f4($);if(K)X.push(K)}return{version:Z,nTables:J,subtables:X}}function f4($){let Z=$.uint32(),J=$.uint32(),X=$.uint16();$.skip(2);let Q=J&255,K={vertical:(J&2147483648)!==0,crossStream:(J&1073741824)!==0,variation:(J&536870912)!==0},H={length:Z,coverage:K,tupleCount:X},q=$.offset+Z-12,W=null;switch(Q){case 0:W=l4($,H);break;case 1:W=n4($,H);break;case 2:W=d4($,H);break;case 6:W=i4($,H);break}return $.seek(q),W}function l4($,Z){let J=$.uint32();$.skip(12);let X=[];for(let Q=0;Q<J;Q++)X.push({left:$.uint16(),right:$.uint16(),value:$.int16()}),$.skip(2);return{...Z,format:0,nPairs:J,pairs:X}}function n4($,Z){let J={nClasses:$.uint32(),classTableOffset:$.offset32(),stateArrayOffset:$.offset32(),entryTableOffset:$.offset32(),valueTableOffset:$.offset32()};return{...Z,format:1,stateHeader:J}}function d4($,Z){let J=$.uint16();$.skip(2);let X=$.offset32(),Q=$.offset32(),K=$.offset32(),H=G9($.sliceFrom(X)),q=G9($.sliceFrom(Q)),W=$.sliceFrom(K),U=H.nGlyphs>0?Math.max(...Array.from(H.classes))+1:0,z=J/2,N=new Int16Array(U*z);for(let[w,j]of N.entries())N[w]=W.int16();return{...Z,format:2,rowWidth:J,leftClassTable:H,rightClassTable:q,kerningArray:N}}function G9($){let Z=$.uint16(),J=$.uint16(),X=new Uint8Array(J);for(let Q=0;Q<J;Q++)X[Q]=$.uint8();return{firstGlyph:Z,nGlyphs:J,classes:X}}function i4($,Z){let J=$.uint32(),X=$.uint16(),Q=$.uint16(),K=$.offset32(),H=$.offset32(),q=$.offset32(),W=$.offset32();return{...Z,format:6,flags:J,rowCount:X,columnCount:Q,rowIndexTableOffset:K,columnIndexTableOffset:H,kerningArrayOffset:q,kerningVectorOffset:W}}function o4($,Z,J){for(let X of $.subtables){if(X.coverage.vertical)continue;switch(X.format){case 0:{let Q=X.pairs,K=0,H=Q.length-1;while(K<=H){let q=K+H>>1,W=Q[q];if(!W)break;let U=W.left<<16|W.right,z=Z<<16|J;if(U===z)return W.value;else if(U<z)K=q+1;else H=q-1}break}case 2:{let{leftClassTable:Q,rightClassTable:K}=X;if(Z<Q.firstGlyph||Z>=Q.firstGlyph+Q.nGlyphs)continue;if(J<K.firstGlyph||J>=K.firstGlyph+K.nGlyphs)continue;let H=Q.classes[Z-Q.firstGlyph],q=K.classes[J-K.firstGlyph];if(H===void 0||q===void 0)continue;let W=X.rowWidth/2,U=H*W+q;if(U<X.kerningArray.length){let z=X.kerningArray[U];if(z!==void 0&&z!==0)return z}break}}}return 0}function x($,Z){let J=$.int16(),X=$.uint16();return{value:J,device:T1(Z,X)}}function c4($){let Z=$,J=$.int16(),X=$.int16(),Q=$.uint16(),K=$.uint16();return{scriptPercentScaleDown:J,scriptScriptPercentScaleDown:X,delimitedSubFormulaMinHeight:Q,displayOperatorMinHeight:K,mathLeading:x($,Z),axisHeight:x($,Z),accentBaseHeight:x($,Z),flattenedAccentBaseHeight:x($,Z),subscriptShiftDown:x($,Z),subscriptTopMax:x($,Z),subscriptBaselineDropMin:x($,Z),superscriptShiftUp:x($,Z),superscriptShiftUpCramped:x($,Z),superscriptBottomMin:x($,Z),superscriptBaselineDropMax:x($,Z),subSuperscriptGapMin:x($,Z),superscriptBottomMaxWithSubscript:x($,Z),spaceAfterScript:x($,Z),upperLimitGapMin:x($,Z),upperLimitBaselineRiseMin:x($,Z),lowerLimitGapMin:x($,Z),lowerLimitBaselineDropMin:x($,Z),stackTopShiftUp:x($,Z),stackTopDisplayStyleShiftUp:x($,Z),stackBottomShiftDown:x($,Z),stackBottomDisplayStyleShiftDown:x($,Z),stackGapMin:x($,Z),stackDisplayStyleGapMin:x($,Z),stretchStackTopShiftUp:x($,Z),stretchStackBottomShiftDown:x($,Z),stretchStackGapAboveMin:x($,Z),stretchStackGapBelowMin:x($,Z),fractionNumeratorShiftUp:x($,Z),fractionNumeratorDisplayStyleShiftUp:x($,Z),fractionDenominatorShiftDown:x($,Z),fractionDenominatorDisplayStyleShiftDown:x($,Z),fractionNumeratorGapMin:x($,Z),fractionNumDisplayStyleGapMin:x($,Z),fractionRuleThickness:x($,Z),fractionDenominatorGapMin:x($,Z),fractionDenomDisplayStyleGapMin:x($,Z),skewedFractionHorizontalGap:x($,Z),skewedFractionVerticalGap:x($,Z),overbarVerticalGap:x($,Z),overbarRuleThickness:x($,Z),overbarExtraAscender:x($,Z),underbarVerticalGap:x($,Z),underbarRuleThickness:x($,Z),underbarExtraDescender:x($,Z),radicalVerticalGap:x($,Z),radicalDisplayStyleVerticalGap:x($,Z),radicalRuleThickness:x($,Z),radicalExtraAscender:x($,Z),radicalKernBeforeDegree:x($,Z),radicalKernAfterDegree:x($,Z),radicalDegreeBottomRaisePercent:$.int16()}}function p4($){let Z=$.uint16(),J=$.uint16(),X=[];for(let K=0;K<J;K++)X.push(x($,$));return{coverage:y($,Z),values:X}}function s4($){let Z=$.uint16(),J=$.uint16(),X=[];for(let K=0;K<J;K++)X.push(x($,$));return{coverage:y($,Z),values:X}}function w6($,Z){let J=$.sliceFrom(Z),X=J.uint16(),Q=[];for(let H=0;H<X;H++)Q.push(x(J,J));let K=[];for(let H=0;H<X+1;H++)K.push(x(J,J));return{correctionHeights:Q,kernValues:K}}function t4($){let Z=$.uint16(),J=$.uint16(),X=[];for(let H=0;H<J;H++)X.push({topRightOffset:$.uint16(),topLeftOffset:$.uint16(),bottomRightOffset:$.uint16(),bottomLeftOffset:$.uint16()});let Q=y($,Z),K=X.map((H)=>({topRight:H.topRightOffset!==0?w6($,H.topRightOffset):null,topLeft:H.topLeftOffset!==0?w6($,H.topLeftOffset):null,bottomRight:H.bottomRightOffset!==0?w6($,H.bottomRightOffset):null,bottomLeft:H.bottomLeftOffset!==0?w6($,H.bottomLeftOffset):null}));return{coverage:Q,kernInfo:K}}function a4($){let Z=$.uint16(),J=$.uint16(),X=$.uint16(),Q=$.uint16(),K=null;if(Z!==0)K=p4($.sliceFrom(Z));let H=null;if(J!==0)H=s4($.sliceFrom(J));let q=null;if(X!==0)q={coverage:y($,X)};let W=null;if(Q!==0)W=t4($.sliceFrom(Q));return{italicsCorrection:K,topAccentAttachment:H,extendedShapeCoverage:q,kernInfo:W}}function r4($){let Z=x($,$),J=$.uint16(),X=[];for(let Q=0;Q<J;Q++)X.push({glyphId:$.uint16(),startConnectorLength:$.uint16(),endConnectorLength:$.uint16(),fullAdvance:$.uint16(),partFlags:$.uint16()});return{italicsCorrection:Z,parts:X}}function V9($){let Z=$.uint16(),J=$.uint16(),X=[];for(let K=0;K<J;K++)X.push({variantGlyph:$.uint16(),advanceMeasurement:$.uint16()});let Q=null;if(Z!==0)Q=r4($.sliceFrom(Z));return{glyphAssembly:Q,variants:X}}function e4($){let Z=$.uint16(),J=$.uint16(),X=$.uint16(),Q=$.uint16(),K=$.uint16(),H=[];for(let w=0;w<Q;w++)H.push($.uint16());let q=[];for(let w=0;w<K;w++)q.push($.uint16());let W=J!==0?y($,J):null,U=X!==0?y($,X):null,z=H.map((w)=>V9($.sliceFrom(w))),N=q.map((w)=>V9($.sliceFrom(w)));return{minConnectorOverlap:Z,vertGlyphCoverage:W,horizGlyphCoverage:U,vertGlyphConstruction:z,horizGlyphConstruction:N}}function B9($){let Z=$.uint16(),J=$.uint16(),X=$.uint16(),Q=$.uint16(),K=$.uint16(),H=null;if(X!==0)H=c4($.sliceFrom(X));let q=null;if(Q!==0)q=a4($.sliceFrom(Q));let W=null;if(K!==0)W=e4($.sliceFrom(K));return{majorVersion:Z,minorVersion:J,constants:H,glyphInfo:q,variants:W}}function M9($){let Z=$.uint32(),J=$.uint16();if(Z===20480)return{version:Z,numGlyphs:J};if(Z===65536)return{version:Z,numGlyphs:J,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${Z.toString(16)}`)}var U5;((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"})(U5||={});function D9($){let Z=$.uint16();if($.skip(2),Z<2)return{version:Z,chains:[]};let J=$.uint32(),X=[];for(let Q=0;Q<J;Q++){let K=$0($);X.push(K)}return{version:Z,chains:X}}function $0($){let Z=$.uint32(),J=$.uint32(),X=$.uint32(),Q=$.uint32(),K=[];for(let q=0;q<X;q++)K.push({featureType:$.uint16(),featureSetting:$.uint16(),enableFlags:$.uint32(),disableFlags:$.uint32()});let H=[];for(let q=0;q<Q;q++){let W=Z0($);if(W)H.push(W)}return{defaultFlags:Z,features:K,subtables:H}}function Z0($){let Z=$.uint32(),J=$.uint32(),X=$.uint32(),Q=J&255,K={vertical:(J&2147483648)!==0,descending:(J&1073741824)!==0,logical:(J&268435456)!==0},q=$.offset+Z-12,W=null;switch(Q){case 0:W=H0($,K,X);break;case 1:W=X0($,K,X);break;case 2:W=J0($,K,X);break;case 4:W=Q0($,K,X);break;case 5:W=K0($,K,X);break}return $.seek(q),W}function Q0($,Z,J){let X=q0($);return{type:4,coverage:Z,subFeatureFlags:J,lookupTable:X}}function X0($,Z,J){let X=$.offset,Q=$.uint32(),K=$.offset32(),H=$.offset32(),q=$.offset32(),W=$.offset32(),U=_6($.sliceFrom(X+K));return{type:1,coverage:Z,subFeatureFlags:J,stateTable:{nClasses:Q,classTable:U,stateArray:[]},substitutionTable:[]}}function J0($,Z,J){let X=$.offset,Q=$.uint32(),K=$.offset32(),H=$.offset32(),q=$.offset32(),W=$.offset32(),U=$.offset32(),z=$.offset32(),N=_6($.sliceFrom(X+K));return{type:2,coverage:Z,subFeatureFlags:J,stateTable:{nClasses:Q,classTable:N,stateArray:[]},ligatureActions:[],components:[],ligatures:[]}}function H0($,Z,J){let X=$.offset,Q=$.uint32(),K=$.offset32(),H=$.offset32(),q=$.offset32(),W=_6($.sliceFrom(X+K)),U=$.sliceFrom(X+H),z=$.sliceFrom(X+q),N=[],w=256;for(let Y=0;Y<256;Y++)N.push({newState:z.uint16(),flags:z.uint16()});let j=[],_=Math.min(256,Math.ceil((q-H)/(Q*2)));for(let Y=0;Y<_;Y++){let G=[];for(let E=0;E<Q;E++){let V=U.uint16();G.push(N[V]??{newState:0,flags:0})}j.push(G)}return{type:0,coverage:Z,subFeatureFlags:J,stateTable:{nClasses:Q,classTable:W,stateArray:j}}}function K0($,Z,J){let X=$.offset,Q=$.uint32(),K=$.offset32(),H=$.offset32(),q=$.offset32(),W=$.offset32(),U=_6($.sliceFrom(X+K)),z=$.sliceFrom(X+W),N=[],w=1024;for(let D=0;D<1024;D++)try{N.push(z.uint16())}catch{break}let j=$.sliceFrom(X+q),_=[],Y=256;for(let D=0;D<Y;D++)_.push({newState:j.uint16(),flags:j.uint16(),currentInsertIndex:j.uint16(),markedInsertIndex:j.uint16()});let G=$.sliceFrom(X+H),E=[],V=Math.min(256,Math.ceil((q-H)/(Q*2)));for(let D=0;D<V;D++){let A=[];for(let k=0;k<Q;k++){let L=G.uint16();A.push(_[L]??{newState:0,flags:0,currentInsertIndex:65535,markedInsertIndex:65535})}E.push(A)}return{type:5,coverage:Z,subFeatureFlags:J,stateTable:{nClasses:Q,classTable:U,stateArray:E},insertionGlyphs:N}}function q0($){let Z=$.uint16(),J=new Map;switch(Z){case 0:break;case 2:{let X=$.uint16(),Q=$.uint16();$.skip(6);for(let K=0;K<Q;K++){let H=$.uint16(),q=$.uint16(),W=$.uint16();for(let U=q;U<=H;U++)J.set(U,W)}break}case 4:{let X=$.uint16(),Q=$.uint16();$.skip(6);for(let K=0;K<Q;K++){let H=$.uint16(),q=$.uint16(),W=$.uint16()}break}case 6:{let X=$.uint16(),Q=$.uint16();$.skip(6);for(let K=0;K<Q;K++){let H=$.uint16(),q=$.uint16();J.set(H,q)}break}case 8:{let X=$.uint16(),Q=$.uint16();for(let K=0;K<Q;K++){let H=$.uint16();if(H!==0)J.set(X+K,H)}break}}return{format:Z,mapping:J}}function _6($){let Z=$.uint16(),J=[];if(Z===2){let X=$.uint16(),Q=$.uint16();$.skip(6);let K=[];for(let q=0;q<Q;q++)K.push({last:$.uint16(),first:$.uint16(),classValue:$.uint16()});let H=Math.max(...K.map((q)=>q.last),0);for(let q=0;q<=H;q++){let W=K.find((U)=>q>=U.first&&q<=U.last);J[q]=W?.classValue??1}}return{format:Z,classArray:J}}function z5($,Z){return $.lookupTable.mapping.get(Z)??null}var o1={hasc:M("hasc"),hdsc:M("hdsc"),hlgp:M("hlgp"),hcla:M("hcla"),hcld:M("hcld"),hcof:M("hcof"),hcrn:M("hcrn"),hcrs:M("hcrs"),vasc:M("vasc"),vdsc:M("vdsc"),vlgp:M("vlgp"),vcof:M("vcof"),vcrn:M("vcrn"),vcrs:M("vcrs"),xhgt:M("xhgt"),cpht:M("cpht"),sbxs:M("sbxs"),sbys:M("sbys"),sbxo:M("sbxo"),sbyo:M("sbyo"),spxs:M("spxs"),spys:M("spys"),spxo:M("spxo"),spyo:M("spyo"),strs:M("strs"),stro:M("stro"),undo:M("undo"),unds:M("unds"),gsp0:M("gsp0"),gsp1:M("gsp1"),gsp2:M("gsp2"),gsp3:M("gsp3")};function A9($){let Z=$.uint16(),J=$.uint16();$.uint16();let X=$.uint16(),Q=$.uint16(),K=$.offset16(),H=[];for(let W=0;W<Q;W++)if(H.push({valueTag:$.tag(),deltaSetOuterIndex:$.uint16(),deltaSetInnerIndex:$.uint16()}),X>8)$.skip(X-8);let q=W0($.sliceFrom(K));return{majorVersion:Z,minorVersion:J,itemVariationStore:q,valueRecords:H}}function W0($){let Z=$.uint16(),J=$.offset32(),X=$.uint16(),Q=[];for(let z=0;z<X;z++)Q.push($.offset32());let K=$.sliceFrom(J),H=K.uint16(),q=K.uint16(),W=[];for(let z=0;z<q;z++){let N=[];for(let w=0;w<H;w++)N.push({startCoord:K.f2dot14(),peakCoord:K.f2dot14(),endCoord:K.f2dot14()});W.push({regionAxes:N})}let U=[];for(let z of Q){let N=$.sliceFrom(z),w=N.uint16(),j=N.uint16(),_=N.uint16(),Y=[];for(let A=0;A<_;A++)Y.push(N.uint16());let G=(j&32768)!==0,E=j&32767,V=_-E,D=[];for(let A=0;A<w;A++){let k=[];for(let L=0;L<E;L++)if(G)k.push(N.int32());else k.push(N.int16());for(let L=0;L<V;L++)if(G)k.push(N.int16());else k.push(N.int8());D.push(k)}U.push({itemCount:w,regionIndexes:Y,deltaSets:D})}return{format:Z,variationRegions:W,itemVariationData:U}}function c1($,Z,J){let X=$.valueRecords.find((U)=>U.valueTag===Z);if(!X)return 0;let{deltaSetOuterIndex:Q,deltaSetInnerIndex:K}=X,H=$.itemVariationStore.itemVariationData[Q];if(!H||K>=H.itemCount)return 0;let q=H.deltaSets[K];if(!q)return 0;let W=0;for(let[U,z]of H.regionIndexes.entries()){let N=$.itemVariationStore.variationRegions[z];if(!N)continue;let w=n1(N,J),j=q[U]??0;W+=w*j}return Math.round(W)}function U0($,Z){return c1($,o1.hasc,Z)}function z0($,Z){return c1($,o1.hdsc,Z)}function N0($,Z){return c1($,o1.xhgt,Z)}function w0($,Z){return c1($,o1.cpht,Z)}var N5={Unicode:0,Macintosh:1,Reserved:2,Windows:3};function L9($){let Z=$.uint16(),J=$.uint16(),X=$.uint16(),Q=[],K=[];for(let H=0;H<J;H++)K.push({platformId:$.uint16(),encodingId:$.uint16(),languageId:$.uint16(),nameId:$.uint16(),length:$.uint16(),offset:$.uint16()});for(let H of K){let q=$.sliceFrom(X+H.offset),W=_0(q,H.length,H.platformId,H.encodingId);if(W!==null)Q.push({platformId:H.platformId,encodingId:H.encodingId,languageId:H.languageId,nameId:H.nameId,value:W})}return{format:Z,records:Q}}function _0($,Z,J,X){if(J===N5.Unicode||J===N5.Windows&&(X===1||X===10)){let Q=[];for(let K=0;K<Z;K+=2){let H=$.uint16();Q.push(String.fromCharCode(H))}return Q.join("")}if(J===N5.Macintosh&&X===0){let Q=[];for(let K=0;K<Z;K++)Q.push($.uint8());return String.fromCharCode(...Q)}return null}function F9($){let Z=$.uint16(),J=$.int16(),X=$.uint16(),Q=$.uint16(),K=$.uint16(),H=$.int16(),q=$.int16(),W=$.int16(),U=$.int16(),z=$.int16(),N=$.int16(),w=$.int16(),j=$.int16(),_=$.int16(),Y=$.int16(),G=$.int16(),E=[];for(let F=0;F<10;F++)E.push($.uint8());let V=$.uint32(),D=$.uint32(),A=$.uint32(),k=$.uint32(),L=String.fromCharCode($.uint8(),$.uint8(),$.uint8(),$.uint8()),S=$.uint16(),I=$.uint16(),P=$.uint16(),C=$.int16(),n=$.int16(),v=$.int16(),_1=$.uint16(),h=$.uint16(),g={version:Z,xAvgCharWidth:J,usWeightClass:X,usWidthClass:Q,fsType:K,ySubscriptXSize:H,ySubscriptYSize:q,ySubscriptXOffset:W,ySubscriptYOffset:U,ySuperscriptXSize:z,ySuperscriptYSize:N,ySuperscriptXOffset:w,ySuperscriptYOffset:j,yStrikeoutSize:_,yStrikeoutPosition:Y,sFamilyClass:G,panose:E,ulUnicodeRange1:V,ulUnicodeRange2:D,ulUnicodeRange3:A,ulUnicodeRange4:k,achVendID:L,fsSelection:S,usFirstCharIndex:I,usLastCharIndex:P,sTypoAscender:C,sTypoDescender:n,sTypoLineGap:v,usWinAscent:_1,usWinDescent:h};if(Z>=1)g.ulCodePageRange1=$.uint32(),g.ulCodePageRange2=$.uint32();if(Z>=2)g.sxHeight=$.int16(),g.sCapHeight=$.int16(),g.usDefaultChar=$.uint16(),g.usBreakChar=$.uint16(),g.usMaxContext=$.uint16();if(Z>=5)g.usLowerOpticalPointSize=$.uint16(),g.usUpperOpticalPointSize=$.uint16();return g}function R9($){let Z=$.uint16(),J=$.uint16(),X=Z+J/65536,Q=$.fixed(),K=$.int16(),H=$.int16(),q=$.uint32(),W=$.uint32(),U=$.uint32(),z=$.uint32(),N=$.uint32(),w={version:X,italicAngle:Q,underlinePosition:K,underlineThickness:H,isFixedPitch:q,minMemType42:W,maxMemType42:U,minMemType1:z,maxMemType1:N};if(X===2){let j=$.uint16(),_=[];for(let V=0;V<j;V++)_.push($.uint16());let Y=[],G=0;for(let V of _)if(V>=258&&V>G)G=V;let E=G>=258?G-257:0;for(let V=0;V<E;V++){let D=$.uint8(),A=[];for(let k=0;k<D;k++)A.push(String.fromCharCode($.uint8()));Y.push(A.join(""))}w.numberOfGlyphs=j,w.glyphNameIndex=_,w.names=Y}return w}var w5={PNG:"png ",JPG:"jpg ",TIFF:"tiff",PDF:"pdf ",MASK:"mask",DUPE:"dupe"};function P9($,Z){let J=$.offset,X=$.uint16(),Q=$.uint16(),K=$.uint32(),H=[];for(let W=0;W<K;W++)H.push($.uint32());let q=[];for(let W of H){let U=Y0($,J+W,Z);q.push(U)}return{version:X,flags:Q,strikes:q}}function Y0($,Z,J){let X=$.sliceFrom(Z),Q=X.uint16(),K=X.uint16(),H=[];for(let W=0;W<=J;W++)H.push(X.uint32());let q=new Map;for(let W=0;W<J;W++){let U=H[W],N=H[W+1]-U;if(N<=8)continue;let w=$.sliceFrom(Z+U),j=w.int16(),_=w.int16(),Y=w.tagString(),G=N-8,E=w.bytes(G);q.set(W,{originOffsetX:j,originOffsetY:_,graphicType:Y,data:E})}return{ppem:Q,ppi:K,glyphData:q}}function j0($,Z,J){let X=null,Q=1/0;for(let K of $.strikes){let H=Math.abs(K.ppem-J);if(H<Q)Q=H,X=K}if(!X)return null;return X.glyphData.get(Z)??null}function O9($,Z){return $.strikes.find((J)=>J.ppem===Z)??null}function G0($){return $.strikes.map((Z)=>Z.ppem).sort((Z,J)=>Z-J)}function E0($,Z,J){if(J!==void 0)return O9($,J)?.glyphData.has(Z)??!1;for(let X of $.strikes)if(X.glyphData.has(Z))return!0;return!1}function T9($,Z,J){if(J.graphicType!==w5.DUPE)return J;if(J.data.length<2)return null;let X=J.data[0]<<8|J.data[1],Q=Z.glyphData.get(X);if(!Q)return null;if(Q.graphicType===w5.DUPE)return T9($,Z,Q);return Q}function I9($){let Z=$.uint32();if(Z!==65536&&Z!==1330926671&&Z!==1953658213)throw Error(`Invalid sfnt version: 0x${Z.toString(16).padStart(8,"0")}`);let J=$.uint16(),X=$.uint16(),Q=$.uint16(),K=$.uint16(),H=new Map;for(let q=0;q<J;q++){let W=$.tag(),U=$.uint32(),z=$.uint32(),N=$.uint32();H.set(W,{tag:W,checksum:U,offset:z,length:N})}return{sfntVersion:Z,numTables:J,searchRange:X,entrySelector:Q,rangeShift:K,tables:H}}function v9($){return $.sfntVersion===65536||$.sfntVersion===1953658213}var k9;((R)=>{R[R.AllTypographicFeatures=0]="AllTypographicFeatures";R[R.Ligatures=1]="Ligatures";R[R.CursiveConnection=2]="CursiveConnection";R[R.LetterCase=3]="LetterCase";R[R.VerticalSubstitution=4]="VerticalSubstitution";R[R.LinguisticRearrangement=5]="LinguisticRearrangement";R[R.NumberSpacing=6]="NumberSpacing";R[R.SmartSwashes=8]="SmartSwashes";R[R.Diacritics=9]="Diacritics";R[R.VerticalPosition=10]="VerticalPosition";R[R.Fractions=11]="Fractions";R[R.OverlappingCharacters=13]="OverlappingCharacters";R[R.TypographicExtras=14]="TypographicExtras";R[R.MathematicalExtras=15]="MathematicalExtras";R[R.OrnamentSets=16]="OrnamentSets";R[R.CharacterAlternatives=17]="CharacterAlternatives";R[R.DesignComplexity=18]="DesignComplexity";R[R.StyleOptions=19]="StyleOptions";R[R.CharacterShape=20]="CharacterShape";R[R.NumberCase=21]="NumberCase";R[R.TextSpacing=22]="TextSpacing";R[R.Transliteration=23]="Transliteration";R[R.Annotation=24]="Annotation";R[R.KanaSpacing=25]="KanaSpacing";R[R.IdeographicSpacing=26]="IdeographicSpacing";R[R.UnicodeDecomposition=27]="UnicodeDecomposition";R[R.RubyKana=28]="RubyKana";R[R.CJKSymbolAlternatives=29]="CJKSymbolAlternatives";R[R.IdeographicAlternatives=30]="IdeographicAlternatives";R[R.CJKVerticalRomanPlacement=31]="CJKVerticalRomanPlacement";R[R.ItalicCJKRoman=32]="ItalicCJKRoman";R[R.CaseSensitiveLayout=33]="CaseSensitiveLayout";R[R.AlternateKana=34]="AlternateKana";R[R.StylisticAlternatives=35]="StylisticAlternatives";R[R.ContextualAlternatives=36]="ContextualAlternatives";R[R.LowerCase=37]="LowerCase";R[R.UpperCase=38]="UpperCase";R[R.LanguageTag=39]="LanguageTag";R[R.CJKRomanSpacing=103]="CJKRomanSpacing"})(k9||={});var x9;((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"})(x9||={});var S9;((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"})(S9||={});var C9;((J)=>{J[J.LowerCaseNumbers=0]="LowerCaseNumbers";J[J.UpperCaseNumbers=1]="UpperCaseNumbers"})(C9||={});var m9;((Q)=>{Q[Q.MonospacedNumbers=0]="MonospacedNumbers";Q[Q.ProportionalNumbers=1]="ProportionalNumbers";Q[Q.ThirdWidthNumbers=2]="ThirdWidthNumbers";Q[Q.QuarterWidthNumbers=3]="QuarterWidthNumbers"})(m9||={});var h9;((X)=>{X[X.NoFractions=0]="NoFractions";X[X.VerticalFractions=1]="VerticalFractions";X[X.DiagonalFractions=2]="DiagonalFractions"})(h9||={});var y9;((Q)=>{Q[Q.CaseSensitiveLayoutOn=0]="CaseSensitiveLayoutOn";Q[Q.CaseSensitiveLayoutOff=1]="CaseSensitiveLayoutOff";Q[Q.CaseSensitiveSpacingOn=2]="CaseSensitiveSpacingOn";Q[Q.CaseSensitiveSpacingOff=3]="CaseSensitiveSpacingOff"})(y9||={});var b9;((O)=>{O[O.NoStylisticAlternates=0]="NoStylisticAlternates";O[O.StylisticAltOneOn=2]="StylisticAltOneOn";O[O.StylisticAltOneOff=3]="StylisticAltOneOff";O[O.StylisticAltTwoOn=4]="StylisticAltTwoOn";O[O.StylisticAltTwoOff=5]="StylisticAltTwoOff";O[O.StylisticAltThreeOn=6]="StylisticAltThreeOn";O[O.StylisticAltThreeOff=7]="StylisticAltThreeOff";O[O.StylisticAltFourOn=8]="StylisticAltFourOn";O[O.StylisticAltFourOff=9]="StylisticAltFourOff";O[O.StylisticAltFiveOn=10]="StylisticAltFiveOn";O[O.StylisticAltFiveOff=11]="StylisticAltFiveOff";O[O.StylisticAltSixOn=12]="StylisticAltSixOn";O[O.StylisticAltSixOff=13]="StylisticAltSixOff";O[O.StylisticAltSevenOn=14]="StylisticAltSevenOn";O[O.StylisticAltSevenOff=15]="StylisticAltSevenOff";O[O.StylisticAltEightOn=16]="StylisticAltEightOn";O[O.StylisticAltEightOff=17]="StylisticAltEightOff";O[O.StylisticAltNineOn=18]="StylisticAltNineOn";O[O.StylisticAltNineOff=19]="StylisticAltNineOff";O[O.StylisticAltTenOn=20]="StylisticAltTenOn";O[O.StylisticAltTenOff=21]="StylisticAltTenOff";O[O.StylisticAltElevenOn=22]="StylisticAltElevenOn";O[O.StylisticAltElevenOff=23]="StylisticAltElevenOff";O[O.StylisticAltTwelveOn=24]="StylisticAltTwelveOn";O[O.StylisticAltTwelveOff=25]="StylisticAltTwelveOff";O[O.StylisticAltThirteenOn=26]="StylisticAltThirteenOn";O[O.StylisticAltThirteenOff=27]="StylisticAltThirteenOff";O[O.StylisticAltFourteenOn=28]="StylisticAltFourteenOn";O[O.StylisticAltFourteenOff=29]="StylisticAltFourteenOff";O[O.StylisticAltFifteenOn=30]="StylisticAltFifteenOn";O[O.StylisticAltFifteenOff=31]="StylisticAltFifteenOff";O[O.StylisticAltSixteenOn=32]="StylisticAltSixteenOn";O[O.StylisticAltSixteenOff=33]="StylisticAltSixteenOff";O[O.StylisticAltSeventeenOn=34]="StylisticAltSeventeenOn";O[O.StylisticAltSeventeenOff=35]="StylisticAltSeventeenOff";O[O.StylisticAltEighteenOn=36]="StylisticAltEighteenOn";O[O.StylisticAltEighteenOff=37]="StylisticAltEighteenOff";O[O.StylisticAltNineteenOn=38]="StylisticAltNineteenOn";O[O.StylisticAltNineteenOff=39]="StylisticAltNineteenOff";O[O.StylisticAltTwentyOn=40]="StylisticAltTwentyOn";O[O.StylisticAltTwentyOff=41]="StylisticAltTwentyOff"})(b9||={});var g9;((H)=>{H[H.ContextualAlternatesOn=0]="ContextualAlternatesOn";H[H.ContextualAlternatesOff=1]="ContextualAlternatesOff";H[H.SwashAlternatesOn=2]="SwashAlternatesOn";H[H.SwashAlternatesOff=3]="SwashAlternatesOff";H[H.ContextualSwashAlternatesOn=4]="ContextualSwashAlternatesOn";H[H.ContextualSwashAlternatesOff=5]="ContextualSwashAlternatesOff"})(g9||={});var u9;((X)=>{X[X.DefaultLowerCase=0]="DefaultLowerCase";X[X.LowerCaseSmallCaps=1]="LowerCaseSmallCaps";X[X.LowerCasePetiteCaps=2]="LowerCasePetiteCaps"})(u9||={});var f9;((X)=>{X[X.DefaultUpperCase=0]="DefaultUpperCase";X[X.UpperCaseSmallCaps=1]="UpperCaseSmallCaps";X[X.UpperCasePetiteCaps=2]="UpperCasePetiteCaps"})(f9||={});var l9;((z)=>{z[z.WordInitialSwashesOn=0]="WordInitialSwashesOn";z[z.WordInitialSwashesOff=1]="WordInitialSwashesOff";z[z.WordFinalSwashesOn=2]="WordFinalSwashesOn";z[z.WordFinalSwashesOff=3]="WordFinalSwashesOff";z[z.LineInitialSwashesOn=4]="LineInitialSwashesOn";z[z.LineInitialSwashesOff=5]="LineInitialSwashesOff";z[z.LineFinalSwashesOn=6]="LineFinalSwashesOn";z[z.LineFinalSwashesOff=7]="LineFinalSwashesOff";z[z.NonFinalSwashesOn=8]="NonFinalSwashesOn";z[z.NonFinalSwashesOff=9]="NonFinalSwashesOff"})(l9||={});var n9;((X)=>{X[X.ShowDiacritics=0]="ShowDiacritics";X[X.HideDiacritics=1]="HideDiacritics";X[X.DecomposeDiacritics=2]="DecomposeDiacritics"})(n9||={});var d9;((_)=>{_[_.TraditionalCharacters=0]="TraditionalCharacters";_[_.SimplifiedCharacters=1]="SimplifiedCharacters";_[_.JIS1978Characters=2]="JIS1978Characters";_[_.JIS1983Characters=3]="JIS1983Characters";_[_.JIS1990Characters=4]="JIS1990Characters";_[_.TraditionalAltOne=5]="TraditionalAltOne";_[_.TraditionalAltTwo=6]="TraditionalAltTwo";_[_.TraditionalAltThree=7]="TraditionalAltThree";_[_.TraditionalAltFour=8]="TraditionalAltFour";_[_.TraditionalAltFive=9]="TraditionalAltFive";_[_.ExpertCharacters=10]="ExpertCharacters";_[_.NLCCharacters=13]="NLCCharacters";_[_.JIS2004Characters=11]="JIS2004Characters";_[_.HojoCharacters=12]="HojoCharacters"})(d9||={});var i9;((J)=>{J[J.Exclusive=32768]="Exclusive";J[J.UseDefault=16384]="UseDefault"})(i9||={});function _5($){let Z=$.offset,J=$.fixed(),X=$.uint16();$.skip(2),$.skip(4);let Q=[];for(let K=0;K<X;K++){let H=$.uint16(),q=$.uint16(),W=$.offset32(),U=$.uint16(),z=U&255,N=$.uint16(),w=[],j=$.offset;$.seek(Z+W);for(let _=0;_<q;_++)w.push({settingValue:$.uint16(),nameId:$.uint16()});$.seek(j),Q.push({featureType:H,nSettings:q,settingTableOffset:W,featureFlags:U,defaultSettingIndex:z,nameId:N,settings:w})}return{version:J,features:Q}}function V0($,Z){return $.features.find((J)=>J.featureType===Z)}function B0($){return $.features}function M0($){return($.featureFlags&32768)!==0}function D0($){return $.settings[$.defaultSettingIndex]}function A0($,Z){return $.settings.find((J)=>J.settingValue===Z)}function L0($,Z){return $.settings.some((J)=>J.settingValue===Z)}function F0($,Z){switch($){case 1:switch(Z){case 2:return"liga";case 4:return"dlig";case 20:return"hlig";case 18:return"clig";case 0:return"rlig"}break;case 10:switch(Z){case 1:return"sups";case 2:return"subs";case 3:return"ordn";case 4:return"sinf"}break;case 11:if(Z===1||Z===2)return"frac";break;case 21:switch(Z){case 0:return"onum";case 1:return"lnum"}break;case 6:switch(Z){case 0:return"tnum";case 1:return"pnum"}break;case 33:if(Z===0)return"case";break;case 37:switch(Z){case 1:return"smcp";case 2:return"pcap"}break;case 38:switch(Z){case 1:return"c2sc";case 2:return"c2pc"}break;case 8:if(Z===0||Z===2)return"swsh";break;case 36:switch(Z){case 0:return"calt";case 2:return"swsh"}break;case 35:if(Z>=2&&Z<=41){let J=Math.floor((Z-2)/2)+1;if(J<=20)return`ss${J.toString().padStart(2,"0")}`}break;case 20:switch(Z){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 R0($){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 Z=parseInt($.slice(2),10);if(Z>=1&&Z<=20)return{featureType:35,settingValue:(Z-1)*2+2}}return null}var Y5={OlderSiblingFontAttribute:1,ElidableAxisValueName:2};function o9($){let Z=$.offset,J=$.uint16(),X=$.uint16(),Q=$.uint16(),K=$.uint16(),H=$.offset32(),q=$.uint16(),W=$.offset32(),U;if(J>=1&&X>=1)U=$.uint16();let z=[];if(H!==0){let w=$.sliceFrom(Z+H);for(let j=0;j<K;j++)if(z.push({axisTag:w.tag(),axisNameID:w.uint16(),axisOrdering:w.uint16()}),Q>8)w.skip(Q-8)}let N=[];if(W!==0&&q>0){let w=$.sliceFrom(Z+W),j=[];for(let _=0;_<q;_++)j.push(w.uint16());for(let _ of j){let Y=$.sliceFrom(Z+W+_),G=P0(Y);if(G)N.push(G)}}return{majorVersion:J,minorVersion:X,designAxisCount:K,designAxes:z,axisValueCount:q,axisValues:N,elidedFallbackNameID:U}}function P0($){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 J=$.uint16(),X=$.uint16(),Q=$.uint16(),K=[];for(let H=0;H<J;H++)K.push({axisIndex:$.uint16(),value:$.fixed()});return{format:4,axisCount:J,flags:X,valueNameID:Q,axisValues:K}}default:return null}}function O0($,Z){return $.designAxes.find((J)=>J.axisTag===Z)??null}function T0($,Z){return $.designAxes.findIndex((J)=>J.axisTag===Z)}function I0($,Z){return $.axisValues.filter((J)=>{if(J.format===4)return J.axisValues.some((X)=>X.axisIndex===Z);return J.axisIndex===Z})}function v0($,Z){return $.axisValues.find((J)=>J.valueNameID===Z)??null}function k0($){return($.flags&Y5.ElidableAxisValueName)!==0}function x0($){return($.flags&Y5.OlderSiblingFontAttribute)!==0}function S0($){switch($.format){case 1:case 3:return $.value;case 2:return $.nominalValue;case 4:return null}}function C0($,Z){switch($.format){case 1:case 3:{let J=Z.get($.axisIndex);return J!==void 0&&J===$.value}case 2:{let J=Z.get($.axisIndex);return J!==void 0&&J>=$.rangeMinValue&&J<=$.rangeMaxValue}case 4:return $.axisValues.every((J)=>{let X=Z.get(J.axisIndex);return X!==void 0&&X===J.value})}}function c9($){let Z=$.uint16(),J=$.offset32();$.skip(4);let X=$.sliceFrom(J),Q=X.uint16(),K=[];for(let W=0;W<Q;W++)K.push({startGlyphID:X.uint16(),endGlyphID:X.uint16(),svgDocOffset:X.offset32(),svgDocLength:X.uint32()});let H=[],q=new TextDecoder("utf-8");for(let W of K){let z=X.sliceFrom(W.svgDocOffset).bytes(W.svgDocLength),N;if(z[0]===31&&z[1]===139)try{let w=y0(z);N=q.decode(w)}catch{N=q.decode(z)}else N=q.decode(z);H.push({startGlyphID:W.startGlyphID,endGlyphID:W.endGlyphID,svgDoc:N})}return{version:Z,documentRecords:H}}function p9($,Z){for(let J of $.documentRecords)if(Z>=J.startGlyphID&&Z<=J.endGlyphID)return J.svgDoc;return null}function m0($,Z){return p9($,Z)!==null}function h0($){let Z=[];for(let J of $.documentRecords)for(let X=J.startGlyphID;X<=J.endGlyphID;X++)Z.push(X);return Z}function y0($){if(typeof DecompressionStream<"u")return $;return $}function t9($){let Z=$.uint32()/65536,J=$.uint16(),X=$.offset16(),Q=$.offset16();$.skip(2);let K=null,H=null;if(X!==0)K=s9($.sliceFrom(X));if(Q!==0)H=s9($.sliceFrom(Q));return{version:Z,format:J,horizData:K,vertData:H}}function s9($){let Z=$.uint16(),J=$.uint16(),X=$.offset32(),Q=[];for(let q=0;q<Z;q++){let W=$.int32()/65536,U=$.uint16(),z=$.uint16();Q.push({track:W,nameIndex:U,offset:z,perSizeTracking:[]})}for(let q of Q){let W=$.sliceFrom(q.offset);q.perSizeTracking=[];for(let U=0;U<J;U++)q.perSizeTracking.push(W.int16())}let K=$.sliceFrom(X),H=[];for(let q=0;q<J;q++)H.push(K.int32()/65536);return{nTracks:Z,nSizes:J,sizeTableOffset:X,trackTable:Q,sizeTable:H}}function a9($,Z,J){let X=null;for(let Q of $.trackTable)if(Q.track===Z){X=Q;break}if(!X){let Q=null,K=null;for(let H of $.trackTable){if(H.track<=Z&&(!Q||H.track>Q.track))Q=H;if(H.track>=Z&&(!K||H.track<K.track))K=H}if(Q&&K&&Q!==K){let H=(Z-Q.track)/(K.track-Q.track),q=j5($,Q,J),W=j5($,K,J);return Math.round(q+H*(W-q))}else if(Q)X=Q;else if(K)X=K;else return 0}if(!X)return 0;return j5($,X,J)}function j5($,Z,J){let X=$.sizeTable,Q=Z.perSizeTracking;if(X.length===0||Q.length===0)return 0;let K=X[0],H=Q[0];if(K===void 0||H===void 0)return 0;if(J<=K)return H;let q=X[X.length-1],W=Q[Q.length-1];if(q===void 0||W===void 0)return 0;if(J>=q)return W;for(let U=0;U<X.length-1;U++){let z=X[U],N=X[U+1],w=Q[U],j=Q[U+1];if(z===void 0||N===void 0||w===void 0||j===void 0)continue;if(J>=z&&J<=N){let _=(J-z)/(N-z);return Math.round(w+_*(j-w))}}return 0}function b0($,Z,J,X=0,Q=!1){let K=Q?$.vertData:$.horizData;if(!K)return;let H=a9(K,X,J);if(H===0)return;for(let[q,W]of Z.entries())Z[q]=(W??0)+H}function r9($){let Z=$.uint16(),J=$.uint16(),X=$.fword(),Q=$.fword(),K=$.fword(),H=$.uint16(),q=$.fword(),W=$.fword(),U=$.fword(),z=$.int16(),N=$.int16(),w=$.int16();$.skip(8);let j=$.int16(),_=$.uint16();return{version:{major:Z,minor:J},ascender:X,descender:Q,lineGap:K,advanceHeightMax:H,minTopSideBearing:q,minBottomSideBearing:W,yMaxExtent:U,caretSlopeRise:z,caretSlopeRun:N,caretOffset:w,metricDataFormat:j,numberOfVMetrics:_}}function e9($,Z,J){let X=[];for(let H=0;H<Z;H++)X.push({advanceHeight:$.uint16(),topSideBearing:$.int16()});let Q=[],K=J-Z;for(let H=0;H<K;H++)Q.push($.int16());return{vMetrics:X,topSideBearings:Q}}function g0($,Z){if(Z<$.vMetrics.length){let H=$.vMetrics[Z];if(H)return{advanceHeight:H.advanceHeight,topSideBearing:H.topSideBearing}}let X=$.vMetrics[$.vMetrics.length-1]?.advanceHeight??0,Q=Z-$.vMetrics.length,K=$.topSideBearings[Q]??0;return{advanceHeight:X,topSideBearing:K}}function $7($){let Z=$.uint16(),J=$.uint16(),X=$.int16(),Q=$.uint16(),K=[];for(let H=0;H<Q;H++)K.push({glyphIndex:$.uint16(),vertOriginY:$.int16()});return K.sort((H,q)=>H.glyphIndex-q.glyphIndex),{majorVersion:Z,minorVersion:J,defaultVertOriginY:X,vertOriginYMetrics:K}}function u0($,Z){let J=$.vertOriginYMetrics,X=0,Q=J.length-1;while(X<=Q){let K=X+Q>>>1,H=J[K];if(H.glyphIndex===Z)return H.vertOriginY;else if(H.glyphIndex<Z)X=K+1;else Q=K-1}return $.defaultVertOriginY}function f0($,Z){let J=$.vertOriginYMetrics,X=0,Q=J.length-1;while(X<=Q){let K=X+Q>>>1,H=J[K];if(H.glyphIndex===Z)return!0;else if(H.glyphIndex<Z)X=K+1;else Q=K-1}return!1}function Z7($){let Z=$.uint16(),J=$.uint16(),X=$.offset32(),Q=$.offset32(),K=$.offset32(),H=$.offset32(),q=$.offset32(),W=l0($.sliceFrom(X)),U=Q!==0?Y6($.sliceFrom(Q)):null,z=K!==0?Y6($.sliceFrom(K)):null,N=H!==0?Y6($.sliceFrom(H)):null,w=q!==0?Y6($.sliceFrom(q)):null;return{majorVersion:Z,minorVersion:J,itemVariationStore:W,advanceHeightMapping:U,tsbMapping:z,bsbMapping:N,vOrgMapping:w}}function l0($){let Z=$.uint16(),J=$.offset32(),X=$.uint16(),Q=[];for(let z=0;z<X;z++)Q.push($.offset32());let K=$.sliceFrom(J),H=K.uint16(),q=K.uint16(),W=[];for(let z=0;z<q;z++){let N=[];for(let w=0;w<H;w++)N.push({startCoord:K.f2dot14(),peakCoord:K.f2dot14(),endCoord:K.f2dot14()});W.push({regionAxes:N})}let U=[];for(let z of Q){let N=$.sliceFrom(z),w=N.uint16(),j=N.uint16(),_=N.uint16(),Y=[];for(let A=0;A<_;A++)Y.push(N.uint16());let G=(j&32768)!==0,E=j&32767,V=_-E,D=[];for(let A=0;A<w;A++){let k=[];for(let L=0;L<E;L++)if(G)k.push(N.int32());else k.push(N.int16());for(let L=0;L<V;L++)if(G)k.push(N.int16());else k.push(N.int8());D.push(k)}U.push({itemCount:w,regionIndexes:Y,deltaSets:D})}return{format:Z,variationRegions:W,itemVariationData:U}}function Y6($){let Z=$.uint8(),J=$.uint8(),X=Z===0?$.uint16():$.uint32(),Q=(J&15)+1,K=(J>>4&3)+1,H=[];for(let q=0;q<X;q++){let W=0;for(let N=0;N<K;N++)W=W<<8|$.uint8();let U=W&(1<<Q)-1,z=W>>Q;H.push({outer:z,inner:U})}return{format:Z,mapCount:X,entryFormat:J,innerIndexBitCount:Q,mapData:H}}function n0($,Z,J){let X=$.advanceHeightMapping,Q,K;if(X&&Z<X.mapData.length){let H=X.mapData[Z];if(!H)return 0;Q=H.outer,K=H.inner}else Q=0,K=Z;return j6($.itemVariationStore,Q,K,J)}function d0($,Z,J){let X=$.tsbMapping;if(!X)return 0;if(Z>=X.mapData.length)return 0;let Q=X.mapData[Z];if(!Q)return 0;return j6($.itemVariationStore,Q.outer,Q.inner,J)}function i0($,Z,J){let X=$.bsbMapping;if(!X)return 0;if(Z>=X.mapData.length)return 0;let Q=X.mapData[Z];if(!Q)return 0;return j6($.itemVariationStore,Q.outer,Q.inner,J)}function o0($,Z,J){let X=$.vOrgMapping;if(!X)return 0;if(Z>=X.mapData.length)return 0;let Q=X.mapData[Z];if(!Q)return 0;return j6($.itemVariationStore,Q.outer,Q.inner,J)}function j6($,Z,J,X){let Q=$.itemVariationData[Z];if(!Q||J>=Q.itemCount)return 0;let K=Q.deltaSets[J];if(!K)return 0;let H=0;for(let[q,W]of Q.regionIndexes.entries()){let U=$.variationRegions[W];if(!U)continue;let z=n1(U,X),N=K[q]??0;H+=z*N}return Math.round(H)}class p1{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;constructor($,Z={}){this.reader=new N1($),this.directory=I9(this.reader)}static load($,Z){return new p1($,Z)}static async fromURL($,Z){let J=await fetch($);if(!J.ok)throw Error(`Failed to fetch font: ${J.status} ${J.statusText}`);let X=await J.arrayBuffer();return p1.load(X,Z)}static async fromFile($,Z){let X=await Bun.file($).arrayBuffer();return p1.load(X,Z)}hasTable($){return this.directory.tables.has($)}getTableRecord($){return this.directory.tables.get($)}getTableReader($){let Z=this.directory.tables.get($);if(!Z)return null;return this.reader.slice(Z.offset,Z.length)}get head(){if(!this._head){let $=this.getTableReader(m.head);if(!$)throw Error("Missing required 'head' table");this._head=Z9($)}return this._head}get maxp(){if(!this._maxp){let $=this.getTableReader(m.maxp);if(!$)throw Error("Missing required 'maxp' table");this._maxp=M9($)}return this._maxp}get hhea(){if(!this._hhea){let $=this.getTableReader(m.hhea);if(!$)throw Error("Missing required 'hhea' table");this._hhea=Q9($)}return this._hhea}get hmtx(){if(!this._hmtx){let $=this.getTableReader(m.hmtx);if(!$)throw Error("Missing required 'hmtx' table");this._hmtx=X9($,this.hhea.numberOfHMetrics,this.numGlyphs)}return this._hmtx}get cmap(){if(!this._cmap){let $=this.getTableRecord(m.cmap),Z=this.getTableReader(m.cmap);if(!Z||!$)throw Error("Missing required 'cmap' table");this._cmap=w2(Z,$.length)}return this._cmap}get gdef(){if(this._gdef===void 0){let $=this.getTableReader(m.GDEF);this._gdef=$?L2($):null}return this._gdef}get gsub(){if(this._gsub===void 0){let $=this.getTableReader(m.GSUB);this._gsub=$?p2($):null}return this._gsub}get gpos(){if(this._gpos===void 0){let $=this.getTableReader(m.GPOS);this._gpos=$?d2($):null}return this._gpos}get kern(){if(this._kern===void 0){let $=this.getTableReader(m.kern);this._kern=$?_9($):null}return this._kern}get fvar(){if(this._fvar===void 0){let $=this.getTableReader(m.fvar);this._fvar=$?r5($):null}return this._fvar}get hvar(){if(this._hvar===void 0){let $=this.getTableReader(m.HVAR);this._hvar=$?e5($):null}return this._hvar}get vhea(){if(this._vhea===void 0){let $=this.getTableReader(m.vhea);this._vhea=$?r9($):null}return this._vhea}get vmtx(){if(this._vmtx===void 0){let $=this.vhea;if(!$)this._vmtx=null;else{let Z=this.getTableReader(m.vmtx);this._vmtx=Z?e9(Z,$.numberOfVMetrics,this.numGlyphs):null}}return this._vmtx}get morx(){if(this._morx===void 0){let $=this.getTableReader(m.morx);this._morx=$?D9($):null}return this._morx}get gvar(){if(this._gvar===void 0){let $=this.getTableReader(m.gvar);this._gvar=$?P2($,this.numGlyphs):null}return this._gvar}get avar(){if(this._avar===void 0){let $=this.fvar;if(!$)this._avar=null;else{let Z=this.getTableReader(m.avar);this._avar=Z?t5(Z,$.axes.length):null}}return this._avar}get kerx(){if(this._kerx===void 0){let $=this.getTableReader(m.kerx);this._kerx=$?E9($):null}return this._kerx}get trak(){if(this._trak===void 0){let $=this.getTableReader(m.trak);this._trak=$?t9($):null}return this._trak}get cff(){if(this._cff===void 0){let $=this.getTableReader(m.CFF);this._cff=$?U2($):null}return this._cff}get cff2(){if(this._cff2===void 0){let $=this.getTableReader(m.CFF2);this._cff2=$?N2($):null}return this._cff2}get colr(){if(this._colr===void 0){let $=this.getTableReader(m.COLR);this._colr=$?s6($):null}return this._colr}get cpal(){if(this._cpal===void 0){let $=this.getTableReader(m.CPAL);this._cpal=$?t6($):null}return this._cpal}get vvar(){if(this._vvar===void 0){let $=this.getTableReader(m.VVAR);this._vvar=$?Z7($):null}return this._vvar}get mvar(){if(this._mvar===void 0){let $=this.getTableReader(m.MVAR);this._mvar=$?A9($):null}return this._mvar}get os2(){if(this._os2===void 0){let $=this.getTableReader(m.OS2);this._os2=$?F9($):null}return this._os2}get name(){if(this._name===void 0){let $=this.getTableReader(m.name);this._name=$?L9($):null}return this._name}get post(){if(this._post===void 0){let $=this.getTableReader(m.post);this._post=$?R9($):null}return this._post}get base(){if(this._base===void 0){let $=this.getTableReader(m.BASE);this._base=$?J2($):null}return this._base}get jstf(){if(this._jstf===void 0){let $=this.getTableReader(m.JSTF);this._jstf=$?W9($):null}return this._jstf}get math(){if(this._math===void 0){let $=this.getTableReader(m.MATH);this._math=$?B9($):null}return this._math}get loca(){if(this._loca===void 0){let $=this.getTableReader(m.loca);this._loca=$?O2($,this.numGlyphs,this.head.indexToLocFormat):null}return this._loca}get glyf(){if(this._glyf===void 0){let $=this.getTableReader(m.glyf);this._glyf=$?T2($):null}return this._glyf}get svg(){if(this._svg===void 0){let $=this.getTableReader(m.SVG);this._svg=$?c9($):null}return this._svg}get vorg(){if(this._vorg===void 0){let $=this.getTableReader(m.VORG);this._vorg=$?$7($):null}return this._vorg}get sbix(){if(this._sbix===void 0){let $=this.getTableReader(m.sbix);this._sbix=$?P9($,this.numGlyphs):null}return this._sbix}get stat(){if(this._stat===void 0){let $=this.getTableReader(m.STAT);this._stat=$?o9($):null}return this._stat}get cblc(){if(this._cblc===void 0){let $=this.getTableReader(m.CBLC);this._cblc=$?K2($):null}return this._cblc}get cbdt(){if(this._cbdt===void 0){let $=this.getTableReader(m.CBDT);this._cbdt=$?q2($):null}return this._cbdt}get feat(){if(this._feat===void 0){let $=this.getTableReader(m.feat);this._feat=$?_5($):null}return this._feat}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 v9(this.directory)}get isCFF(){return this.hasTable(m.CFF)||this.hasTable(m.CFF2)}get isVariable(){return this.hasTable(m.fvar)}get hasOpenTypeLayout(){return this.hasTable(m.GSUB)||this.hasTable(m.GPOS)}get hasAATLayout(){return this.hasTable(m.morx)||this.hasTable(m.kerx)}get isColorFont(){return this.hasTable(m.COLR)||this.hasTable(m.SVG)||this.hasTable(m.sbix)||this.hasTable(m.CBDT)}glyphId($){return _2(this.cmap,$)}glyphIdForChar($){let Z=$.codePointAt(0);if(Z===void 0)return 0;return this.glyphId(Z)}advanceWidth($){return J9(this.hmtx,$)}leftSideBearing($){return H9(this.hmtx,$)}listTables(){return Array.from(this.directory.tables.keys()).map(l1)}getGlyph($){if(!this.glyf||!this.loca)return null;return O1(this.glyf,this.loca,$)}getGlyphContours($){if(!this.glyf||!this.loca)return null;return v2(this.glyf,this.loca,$)}getGlyphBounds($){if(!this.glyf||!this.loca)return null;return k2(this.glyf,this.loca,$)}getGlyphContoursWithVariation($,Z){if(!this.glyf||!this.loca)return null;return C2(this.glyf,this.loca,this.gvar,$,Z)}}function c0($,Z,J=0){let X=$.charStrings[J];if(!X||Z>=X.length)return null;let Q=X[Z];if(!Q)return null;let K=$.globalSubrs,H=$.localSubrs[J]||[],q=$.topDicts[J],U={x:0,y:0,stack:[],nStems:0,haveWidth:!1,width:{}.defaultWidthX??0,contours:[],currentContour:[],transientArray:Array(32).fill(0),callStack:[],vsindex:0,axisCoords:null,vstore:null};if(G6(U,Q,K,H),U.currentContour.length>0)U.contours.push(U.currentContour);return U.contours}function p0($,Z,J=null){if(Z>=$.charStrings.length)return null;let X=$.charStrings[Z];if(!X)return null;let Q=$.globalSubrs,K=$.fdSelect?.select(Z)??0,H=$.fdArray[K],q=H?.localSubrs||[],W={x:0,y:0,stack:[],nStems:0,haveWidth:!0,width:0,contours:[],currentContour:[],transientArray:Array(32).fill(0),callStack:[],vsindex:H?.private?.vsindex??0,axisCoords:J,vstore:$.vstore};if(G6(W,X,Q,q),W.currentContour.length>0)W.contours.push(W.currentContour);return W.contours}function G6($,Z,J,X){let Q=0;while(Q<Z.length){let K=Z[Q++];if(K===void 0)return;if(K===28){let H=Z[Q++];if(H===void 0)return;let q=Z[Q++];if(q===void 0)return;$.stack.push((H<<8|q)<<16>>16)}else if(K===255){let H=Z[Q++];if(H===void 0)return;let q=Z[Q++];if(q===void 0)return;let W=Z[Q++];if(W===void 0)return;let U=Z[Q++];if(U===void 0)return;let z=(H<<24|q<<16|W<<8|U)>>0;$.stack.push(z/65536)}else if(K>=32&&K<=246)$.stack.push(K-139);else if(K>=247&&K<=250){let H=Z[Q++];if(H===void 0)return;$.stack.push((K-247)*256+H+108)}else if(K>=251&&K<=254){let H=Z[Q++];if(H===void 0)return;$.stack.push(-(K-251)*256-H-108)}else if(K===12){let H=Z[Q++];if(H===void 0)return;let q=3072|H;Q7($,q,J,X)}else Q7($,K,J,X);if($.callStack.length>0){let H=$.callStack[$.callStack.length-1];if(H&&H.pos>=H.data.length)$.callStack.pop()}}}function Q7($,Z,J,X){let Q=$.stack;switch(Z){case 1:case 3:case 18:case 23:{if(Q.length%2!==0&&!$.haveWidth){let H=Q.shift();if(H===void 0)break;$.width=H,$.haveWidth=!0}$.nStems+=Q.length/2,Q.length=0;break}case 19:case 20:{if(Q.length%2!==0&&!$.haveWidth){let H=Q.shift();if(H===void 0)break;$.width=H,$.haveWidth=!0}$.nStems+=Q.length/2,Q.length=0;break}case 21:{if(Q.length>2&&!$.haveWidth){let q=Q.shift();if(q===void 0)break;$.width=q,$.haveWidth=!0}if($.currentContour.length>0)$.contours.push($.currentContour),$.currentContour=[];let K=Q.pop();if(K===void 0)break;let H=Q.pop();if(H===void 0)break;$.x+=H,$.y+=K,$.currentContour.push({x:$.x,y:$.y,onCurve:!0}),Q.length=0;break}case 22:{if(Q.length>1&&!$.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;$.x+=K,$.currentContour.push({x:$.x,y:$.y,onCurve:!0}),Q.length=0;break}case 4:{if(Q.length>1&&!$.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;$.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 H=Q.shift();if(H===void 0)break;$.x+=K,$.y+=H,$.currentContour.push({x:$.x,y:$.y,onCurve:!0})}break}case 6:{let K=!0;while(Q.length>=1){let H=Q.shift();if(H===void 0)break;if(K)$.x+=H;else $.y+=H;$.currentContour.push({x:$.x,y:$.y,onCurve:!0}),K=!K}break}case 7:{let K=!0;while(Q.length>=1){let H=Q.shift();if(H===void 0)break;if(K)$.y+=H;else $.x+=H;$.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 H=Q.shift();if(H===void 0)break;let q=Q.shift();if(q===void 0)break;let W=Q.shift();if(W===void 0)break;let U=Q.shift();if(U===void 0)break;let z=Q.shift();if(z===void 0)break;e($,K,H,q,W,U,z)}break}case 27:{let K=0;if(Q.length%4===1){let H=Q.shift();if(H===void 0)break;K=H}while(Q.length>=4){let H=Q.shift();if(H===void 0)break;let q=Q.shift();if(q===void 0)break;let W=Q.shift();if(W===void 0)break;let U=Q.shift();if(U===void 0)break;e($,H,K,q,W,U,0),K=0}break}case 26:{let K=0;if(Q.length%4===1){let H=Q.shift();if(H===void 0)break;K=H}while(Q.length>=4){let H=Q.shift();if(H===void 0)break;let q=Q.shift();if(q===void 0)break;let W=Q.shift();if(W===void 0)break;let U=Q.shift();if(U===void 0)break;e($,K,H,q,W,0,U),K=0}break}case 31:{let K=!0;while(Q.length>=4){if(K){let H=Q.shift();if(H===void 0)break;let q=Q.shift();if(q===void 0)break;let W=Q.shift();if(W===void 0)break;let U=Q.shift();if(U===void 0)break;let z=Q.length===1?Q.shift()??0:0;e($,H,0,q,W,z,U)}else{let H=Q.shift();if(H===void 0)break;let q=Q.shift();if(q===void 0)break;let W=Q.shift();if(W===void 0)break;let U=Q.shift();if(U===void 0)break;let z=Q.length===1?Q.shift()??0:0;e($,0,H,q,W,U,z)}K=!K}break}case 30:{let K=!0;while(Q.length>=4){if(K){let H=Q.shift();if(H===void 0)break;let q=Q.shift();if(q===void 0)break;let W=Q.shift();if(W===void 0)break;let U=Q.shift();if(U===void 0)break;let z=Q.length===1?Q.shift()??0:0;e($,0,H,q,W,U,z)}else{let H=Q.shift();if(H===void 0)break;let q=Q.shift();if(q===void 0)break;let W=Q.shift();if(W===void 0)break;let U=Q.shift();if(U===void 0)break;let z=Q.length===1?Q.shift()??0:0;e($,H,0,q,W,z,U)}K=!K}break}case 24:{while(Q.length>=8){let K=Q.shift();if(K===void 0)break;let H=Q.shift();if(H===void 0)break;let q=Q.shift();if(q===void 0)break;let W=Q.shift();if(W===void 0)break;let U=Q.shift();if(U===void 0)break;let z=Q.shift();if(z===void 0)break;e($,K,H,q,W,U,z)}if(Q.length>=2){let K=Q.shift();if(K===void 0)break;let H=Q.shift();if(H===void 0)break;$.x+=K,$.y+=H,$.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 H=Q.shift();if(H===void 0)break;$.x+=K,$.y+=H,$.currentContour.push({x:$.x,y:$.y,onCurve:!0})}if(Q.length>=6){let K=Q.shift();if(K===void 0)break;let H=Q.shift();if(H===void 0)break;let q=Q.shift();if(q===void 0)break;let W=Q.shift();if(W===void 0)break;let U=Q.shift();if(U===void 0)break;let z=Q.shift();if(z===void 0)break;e($,K,H,q,W,U,z)}break}case 10:{let K=Q.pop();if(K===void 0)break;let H=K+X7(X.length),q=X[H];if(q)G6($,q,J,X);break}case 29:{let K=Q.pop();if(K===void 0)break;let H=K+X7(J.length),q=J[H];if(q)G6($,q,J,X);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 H=Q.shift();if(H===void 0)break;let q=Q.shift();if(q===void 0)break;let W=Q.shift();if(W===void 0)break;let U=Q.shift();if(U===void 0)break;let z=Q.shift();if(z===void 0)break;let N=Q.shift();if(N===void 0)break;let w=Q.shift();if(w===void 0)break;let j=Q.shift();if(j===void 0)break;let _=Q.shift();if(_===void 0)break;let Y=Q.shift();if(Y===void 0)break;let G=Q.shift();if(G===void 0)break;Q.shift(),e($,K,H,q,W,U,z),e($,N,w,j,_,Y,G)}break}case 3106:{if(Q.length>=7){let K=Q.shift();if(K===void 0)break;let H=Q.shift();if(H===void 0)break;let q=Q.shift();if(q===void 0)break;let W=Q.shift();if(W===void 0)break;let U=Q.shift();if(U===void 0)break;let z=Q.shift();if(z===void 0)break;let N=Q.shift();if(N===void 0)break;e($,K,0,H,q,W,0),e($,U,0,z,-q,N,0)}break}case 3108:{if(Q.length>=9){let K=Q.shift();if(K===void 0)break;let H=Q.shift();if(H===void 0)break;let q=Q.shift();if(q===void 0)break;let W=Q.shift();if(W===void 0)break;let U=Q.shift();if(U===void 0)break;let z=Q.shift();if(z===void 0)break;let N=Q.shift();if(N===void 0)break;let w=Q.shift();if(w===void 0)break;let j=Q.shift();if(j===void 0)break;e($,K,H,q,W,U,0),e($,z,0,N,w,j,-(H+W+w))}break}case 3109:{if(Q.length>=11){let K=Q.shift();if(K===void 0)break;let H=Q.shift();if(H===void 0)break;let q=Q.shift();if(q===void 0)break;let W=Q.shift();if(W===void 0)break;let U=Q.shift();if(U===void 0)break;let z=Q.shift();if(z===void 0)break;let N=Q.shift();if(N===void 0)break;let w=Q.shift();if(w===void 0)break;let j=Q.shift();if(j===void 0)break;let _=Q.shift();if(_===void 0)break;let Y=Q.shift();if(Y===void 0)break;let G=K+q+U+N+j,E=H+W+z+w+_,V,D;if(Math.abs(G)>Math.abs(E))V=Y,D=-E;else V=-G,D=Y;e($,K,H,q,W,U,z),e($,N,w,j,_,V,D)}break}case 3075:{let K=Q.pop();if(K===void 0)break;let H=Q.pop();if(H===void 0)break;Q.push(H&&K?1:0);break}case 3076:{let K=Q.pop();if(K===void 0)break;let H=Q.pop();if(H===void 0)break;Q.push(H||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 H=Q.pop();if(H===void 0)break;Q.push(H+K);break}case 3083:{let K=Q.pop();if(K===void 0)break;let H=Q.pop();if(H===void 0)break;Q.push(H-K);break}case 3084:{let K=Q.pop();if(K===void 0)break;let H=Q.pop();if(H===void 0)break;Q.push(H/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 H=Q.pop();if(H===void 0)break;Q.push(H===K?1:0);break}case 3090:{Q.pop();break}case 3092:{let K=Q.pop();if(K===void 0)break;let H=Q.pop();if(H===void 0)break;$.transientArray[K]=H;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 H=Q.pop();if(H===void 0)break;let q=Q.pop();if(q===void 0)break;let W=Q.pop();if(W===void 0)break;Q.push(H<=K?W:q);break}case 3095:{Q.push(Math.random());break}case 3096:{let K=Q.pop();if(K===void 0)break;let H=Q.pop();if(H===void 0)break;Q.push(H*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 H=Q.pop();if(H===void 0)break;Q.push(K,H);break}case 3101:{let K=Q.pop();if(K===void 0)break;let H=Q.length-1-K;Q.push(Q[H]??0);break}case 3102:{let K=Q.pop();if(K===void 0)break;let H=Q.pop();if(H===void 0)break;if(H>0){let q=Q.splice(-H),W=(K%H+H)%H;for(let U=0;U<H;U++){let z=q[(U+W)%H];if(z!==void 0)Q.push(z)}}break}case 16:{if(!$.axisCoords||!$.vstore)break;let K=Q.pop();if(K===void 0)break;let H=$.vstore.itemVariationData[$.vsindex]?.regionIndexCount??0,q=K*H,W=Q.splice(-q),U=Q.splice(-K);for(let z=0;z<K;z++){let N=U[z];if(N===void 0)continue;let w=N;for(let j=0;j<H;j++){let _=W[z*H+j];if(_===void 0)continue;let Y=s0($.vstore,$.vsindex,j,$.axisCoords);w+=_*Y}Q.push(w)}break}case 15:{let K=Q.pop();if(K===void 0)break;$.vsindex=K;break}case 3072:break}}function e($,Z,J,X,Q,K,H){let{x:q,y:W}=$,U=q+Z,z=W+J,N=U+X,w=z+Q,j=N+K,_=w+H;G5($,q,W,U,z,N,w,j,_,0),$.x=j,$.y=_}function G5($,Z,J,X,Q,K,H,q,W,U){if(U>4){let Y=(3*(X+K)-(Z+q))/4,G=(3*(Q+H)-(J+W))/4;$.currentContour.push({x:Y,y:G,onCurve:!1}),$.currentContour.push({x:q,y:W,onCurve:!0});return}let z=0.5,N=(3*(X+K)-(Z+q))/4,w=(3*(Q+H)-(J+W))/4,j=Math.abs(X-(Z+2*N)/3-Z/3)+Math.abs(Q-(J+2*w)/3-J/3),_=Math.abs(K-(2*N+q)/3-q/3)+Math.abs(H-(2*w+W)/3-W/3);if(j+_<z)$.currentContour.push({x:N,y:w,onCurve:!1}),$.currentContour.push({x:q,y:W,onCurve:!0});else{let Y=(Z+X)/2,G=(J+Q)/2,E=(X+K)/2,V=(Q+H)/2,D=(K+q)/2,A=(H+W)/2,k=(Y+E)/2,L=(G+V)/2,S=(E+D)/2,I=(V+A)/2,P=(k+S)/2,C=(L+I)/2;G5($,Z,J,Y,G,k,L,P,C,U+1),G5($,P,C,S,I,D,A,q,W,U+1)}}function X7($){if($<1240)return 107;if($<33900)return 1131;return 32768}function s0($,Z,J,X){let Q=$.itemVariationData[Z];if(!Q)return 0;let K=Q.regionIndexes[J];if(K===void 0)return 0;let H=$.variationRegionList.regions[K];if(!H)return 0;let q=1;for(let W=0;W<H.axes.length&&W<X.length;W++){let U=H.axes[W];if(!U)continue;let z=X[W];if(z===void 0)continue;if(z<U.startCoord||z>U.endCoord)return 0;if(z===U.peakCoord)continue;if(z<U.peakCoord)q*=(z-U.startCoord)/(U.peakCoord-U.startCoord);else q*=(U.endCoord-z)/(U.endCoord-U.peakCoord)}return q}function t0($,Z,J=0){let X=$.topDicts[J];return 0}var H7;((X)=>{X.Shrink="shrink";X.Extend="extend";X.Auto="auto"})(H7||={});function E6($){let Z=0;for(let J of $.positions)Z+=J.xAdvance;return Z}function K7($,Z,J){let{targetWidth:X,script:Q=M("DFLT"),language:K,mode:H="auto",maxPriority:q=10,enableKashida:W=!0,minWordSpacingFactor:U=0.8,maxWordSpacingFactor:z=1.5,enableLetterSpacing:N=!0,maxLetterSpacing:w=100}=J,j=E6(Z),_=X-j;if(Math.abs(_)<1)return{success:!0,finalWidth:j,delta:0,priorityLevel:0,adjustments:[]};let Y;if(H==="auto")Y=_>0?"extend":"shrink";else Y=H;let G=[],E=_,V=0,D=$.jstf;if(D){let L=z9(D,Q,K);for(let S=0;S<Math.min(L.length,q);S++){let I=L[S],P=Y==="shrink"?N9(I):w9(I);if(P.enableGsub.length>0||P.disableGsub.length>0||P.enableGpos.length>0||P.disableGpos.length>0)G.push({type:"lookup",glyphIndices:[],value:S}),V=S}if(W&&Y==="extend"){let S=U9(D,Q);if(S.length>0){let I=a0(Z,S[0],E,$);E-=I.totalExtension,G.push(...I.adjustments)}}}let A=$.glyphId(32);if(A!==0){let L=e0(Z,A,E,Y==="shrink"?U:z);E-=L.totalAdjustment,G.push(...L.adjustments)}if(N&&Math.abs(E)>1){let L=$$(Z,E,w);E-=L.totalAdjustment,G.push(...L.adjustments)}let k=E6(Z);return{success:Math.abs(E)<1,finalWidth:k,delta:X-k,priorityLevel:V,adjustments:G}}function a0($,Z,J,X){let Q=[],K=0,H=[];for(let z=0;z<$.infos.length-1;z++){let N=$.infos[z];if(r0(N.codepoint))H.push(z)}if(H.length===0)return{totalExtension:0,adjustments:[]};let q=X.advanceWidth(Z);if(q<=0)return{totalExtension:0,adjustments:[]};let W=Math.ceil(J/q/H.length),U=Math.min(W*q,J/H.length);for(let z of H){if(K>=J)break;$.positions[z].xAdvance+=U,K+=U,Q.push({type:"kashida",glyphIndices:[z],value:U})}return{totalExtension:K,adjustments:Q}}function r0($){return $>=1568&&$<=1791}function e0($,Z,J,X){let Q=[],K=0,H=[],q=0;for(let w=0;w<$.infos.length;w++)if($.infos[w]?.glyphId===Z)H.push(w),q+=$.positions[w]?.xAdvance;if(H.length===0)return{totalAdjustment:0,adjustments:[]};let W=J/H.length,z=q/H.length*(X-1),N=J>0?Math.min(W,z):Math.max(W,-z);for(let w of H)$.positions[w].xAdvance+=N,K+=N;if(K!==0)Q.push({type:"spacing",glyphIndices:H,value:N});return{totalAdjustment:K,adjustments:Q}}function $$($,Z,J){let X=[],Q=$.infos.length;if(Q<=1)return{totalAdjustment:0,adjustments:[]};let K=Q-1,H=Z/K,q=Z>0?Math.min(H,J):Math.max(H,-J),W=[],U=0;for(let z=0;z<Q-1;z++)$.positions[z].xAdvance+=q,U+=q,W.push(z);if(U!==0)X.push({type:"spacing",glyphIndices:W,value:q});return{totalAdjustment:U,adjustments:X}}function Z$($,Z,J){let X=[],Q=[];if($.infos.length===0)return{lines:[],breakPoints:[]};let K=0,H=0,q=-1,W=0;for(let U=0;U<$.infos.length;U++){let z=$.positions[U],N=$.infos[U];if(H+=z.xAdvance,J!==void 0&&N.glyphId===J)q=U,W=H;if(H>Z&&K<U){let w;if(q>K)w=q+1;else w=U;let j=J7($,K,w);X.push(j),Q.push(w),K=w,H=0,q=-1;for(let _=K;_<=U;_++)H+=$.positions[_]?.xAdvance}}if(K<$.infos.length){let U=J7($,K,$.infos.length);X.push(U)}return{lines:X,breakPoints:Q}}function J7($,Z,J){let X=new F1;X.direction=$.direction,X.script=$.script,X.language=$.language;for(let Q=Z;Q<J;Q++)X.infos.push({...$.infos[Q]}),X.positions.push({...$.positions[Q]});return X}function Q$($,Z,J){let X=[];for(let Q=0;Q<Z.length;Q++){let K=Z[Q];if(Q===Z.length-1)X.push({success:!0,finalWidth:E6(K),delta:0,priorityLevel:0,adjustments:[]});else X.push(K7($,K,J))}return X}function q7($,Z){for(let J of $.conditions){let X=Z[J.axisIndex]??0;if(X<J.filterRangeMinValue||X>J.filterRangeMaxValue)return!1}return!0}function s1($,Z){for(let J of $.featureVariationRecords)if(q7(J.conditionSet,Z))return J;return null}function X$($,Z,J,X){if(!$||!X)return J;let Q=s1($,X);if(!Q)return J;let K=Q.featureTableSubstitution.substitutions.find((H)=>H.featureIndex===Z);if(K)return K.alternateFeature.lookupListIndices;return J}function J$($,Z,J,X){if(!$||!X)return Z;let Q=s1($,X);if(!Q)return Z;let K=new Map(Z);for(let H of Q.featureTableSubstitution.substitutions)for(let[q,W]of J)if(W===H.featureIndex){K.set(q,H.alternateFeature.lookupListIndices);break}return K}function E5($){if($.length===0)return[];let Z=[],J=0;for(let[U,z]of $.entries())if(z.onCurve){J=U;break}let X=$.every((U)=>!U.onCurve),Q;if(X){let U=$[0],z=$[$.length-1];if(!U||!z)return[];Q={x:(U.x+z.x)/2,y:(U.y+z.y)/2,onCurve:!0},J=0}else{let U=$[J];if(!U)return[];Q=U}Z.push({type:"M",x:Q.x,y:Q.y});let K=$.length,H=X?0:(J+1)%K,q=Q,W=0;while(W<K){let U=$[H];if(!U)break;if(U.onCurve)Z.push({type:"L",x:U.x,y:U.y}),q=U;else{let z=(H+1)%K,N=$[z];if(!N)break;let w;if(N.onCurve)w=N,H=z,W++;else w={x:(U.x+N.x)/2,y:(U.y+N.y)/2,onCurve:!0};Z.push({type:"Q",x1:U.x,y1:U.y,x:w.x,y:w.y}),q=w}if(H=(H+1)%K,W++,q.x===Q.x&&q.y===Q.y)break}return Z.push({type:"Z"}),Z}function V6($,Z){let J=$.getGlyphContours(Z);if(!J)return null;let X=[];for(let K of J)X.push(...E5(K));let Q=$.getGlyphBounds(Z);return{commands:X,bounds:Q}}function B6($,Z){let J=Z?.scale??1,X=Z?.flipY??!0,Q=[];for(let K of $.commands)switch(K.type){case"M":Q.push(`M ${K.x*J} ${X?-K.y*J:K.y*J}`);break;case"L":Q.push(`L ${K.x*J} ${X?-K.y*J:K.y*J}`);break;case"Q":Q.push(`Q ${K.x1*J} ${X?-K.y1*J:K.y1*J} ${K.x*J} ${X?-K.y*J:K.y*J}`);break;case"C":Q.push(`C ${K.x1*J} ${X?-K.y1*J:K.y1*J} ${K.x2*J} ${X?-K.y2*J:K.y2*J} ${K.x*J} ${X?-K.y*J:K.y*J}`);break;case"Z":Q.push("Z");break}return Q.join(" ")}function M6($,Z,J){let X=J?.scale??1,Q=J?.flipY??!0,K=J?.offsetX??0,H=J?.offsetY??0;for(let q of Z.commands)switch(q.type){case"M":$.moveTo(q.x*X+K,(Q?-q.y:q.y)*X+H);break;case"L":$.lineTo(q.x*X+K,(Q?-q.y:q.y)*X+H);break;case"Q":$.quadraticCurveTo(q.x1*X+K,(Q?-q.y1:q.y1)*X+H,q.x*X+K,(Q?-q.y:q.y)*X+H);break;case"C":$.bezierCurveTo(q.x1*X+K,(Q?-q.y1:q.y1)*X+H,q.x2*X+K,(Q?-q.y2:q.y2)*X+H,q.x*X+K,(Q?-q.y:q.y)*X+H);break;case"Z":$.closePath();break}}function H$($,Z,J){let X=V6($,Z);if(!X)return null;let Q=J?.fontSize??100,K=J?.fill??"currentColor",H=Q/$.unitsPerEm,q=X.bounds;if(!q)return null;let W=Math.ceil((q.xMax-q.xMin)*H),U=Math.ceil((q.yMax-q.yMin)*H),z=`${q.xMin} ${-q.yMax} ${q.xMax-q.xMin} ${q.yMax-q.yMin}`,N=B6(X,{flipY:!0,scale:1});return`<svg xmlns="http://www.w3.org/2000/svg" width="${W}" height="${U}" viewBox="${z}">
|
|
2
|
-
<path d="${N}" fill="${K}"/>
|
|
3
|
-
</svg>`}function K$($,Z,J,X){let Q=X?.fontSize??16,K=X?.x??0,H=X?.y??0,q=X?.fill??"black",W=Q/Z.unitsPerEm;$.fillStyle=q;let U=K,z=H;for(let N of J){let w=V6(Z,N.glyphId);if(w)$.beginPath(),M6($,w,{scale:W,flipY:!0,offsetX:U+N.xOffset*W,offsetY:z-N.yOffset*W}),$.fill();U+=N.xAdvance*W,z+=N.yAdvance*W}}function q$($,Z,J){let X=J?.fontSize??100,Q=J?.fill??"currentColor",K=X/$.unitsPerEm,H=[],q=0,W=0,U=1/0,z=-1/0,N=1/0,w=-1/0;for(let G of Z){let E=V6($,G.glyphId);if(E?.bounds){let V=q+G.xOffset*K,D=W-G.yOffset*K,A=E.commands.map((S)=>{switch(S.type){case"M":case"L":return{type:S.type,x:S.x*K+V,y:-S.y*K+D};case"Q":return{type:"Q",x1:S.x1*K+V,y1:-S.y1*K+D,x:S.x*K+V,y:-S.y*K+D};case"C":return{type:"C",x1:S.x1*K+V,y1:-S.y1*K+D,x2:S.x2*K+V,y2:-S.y2*K+D,x:S.x*K+V,y:-S.y*K+D};case"Z":return{type:"Z"};default:return S}}),k=B6({commands:A,bounds:null},{flipY:!1,scale:1});H.push(k);let L=E.bounds;U=Math.min(U,V+L.xMin*K),z=Math.max(z,V+L.xMax*K),N=Math.min(N,D-L.yMax*K),w=Math.max(w,D-L.yMin*K)}q+=G.xAdvance*K,W+=G.yAdvance*K}if(H.length===0)return'<svg xmlns="http://www.w3.org/2000/svg"></svg>';let j=Math.ceil(z-U),_=Math.ceil(w-N),Y=`${Math.floor(U)} ${Math.floor(N)} ${j} ${_}`;return`<svg xmlns="http://www.w3.org/2000/svg" width="${j}" height="${_}" viewBox="${Y}">
|
|
4
|
-
<path d="${H.join(" ")}" fill="${Q}"/>
|
|
5
|
-
</svg>`}function W$($){let Z=[];for(let[J,X]of $.infos.entries()){let Q=$.positions[J];if(!Q)continue;Z.push({glyphId:X.glyphId,xOffset:Q.xOffset,yOffset:Q.yOffset,xAdvance:Q.xAdvance,yAdvance:Q.yAdvance})}return Z}function V5($,Z,J){let X=$.getGlyphContoursWithVariation(Z,J);if(!X)return null;let Q=[];for(let H of X)Q.push(...E5(H));let K=$.getGlyphBounds(Z);return{commands:Q,bounds:K}}function U$($,Z,J,X,Q){let K=Q?.fontSize??16,H=Q?.x??0,q=Q?.y??0,W=Q?.fill??"black",U=K/Z.unitsPerEm;$.fillStyle=W;let z=H,N=q;for(let w of J){let j=V5(Z,w.glyphId,X);if(j)$.beginPath(),M6($,j,{scale:U,flipY:!0,offsetX:z+w.xOffset*U,offsetY:N-w.yOffset*U}),$.fill();z+=w.xAdvance*U,N+=w.yAdvance*U}}function z$($,Z,J,X){let Q=X?.fontSize??100,K=X?.fill??"currentColor",H=Q/$.unitsPerEm,q=[],W=0,U=0,z=1/0,N=-1/0,w=1/0,j=-1/0;for(let E of Z){let V=V5($,E.glyphId,J);if(V?.bounds){let D=W+E.xOffset*H,A=U-E.yOffset*H,k=V.commands.map((I)=>{switch(I.type){case"M":case"L":return{type:I.type,x:I.x*H+D,y:-I.y*H+A};case"Q":return{type:"Q",x1:I.x1*H+D,y1:-I.y1*H+A,x:I.x*H+D,y:-I.y*H+A};case"C":return{type:"C",x1:I.x1*H+D,y1:-I.y1*H+A,x2:I.x2*H+D,y2:-I.y2*H+A,x:I.x*H+D,y:-I.y*H+A};case"Z":return{type:"Z"};default:return I}}),L=B6({commands:k,bounds:null},{flipY:!1,scale:1});q.push(L);let S=V.bounds;z=Math.min(z,D+S.xMin*H),N=Math.max(N,D+S.xMax*H),w=Math.min(w,A-S.yMax*H),j=Math.max(j,A-S.yMin*H)}W+=E.xAdvance*H,U+=E.yAdvance*H}if(q.length===0)return'<svg xmlns="http://www.w3.org/2000/svg"></svg>';let _=Math.ceil(N-z),Y=Math.ceil(j-w),G=`${Math.floor(z)} ${Math.floor(w)} ${_} ${Y}`;return`<svg xmlns="http://www.w3.org/2000/svg" width="${_}" height="${Y}" viewBox="${G}">
|
|
6
|
-
<path d="${q.join(" ")}" fill="${K}"/>
|
|
7
|
-
</svg>`}function N$($,Z,J){let X=J/Z.unitsPerEm,Q=0;for(let K of $)Q+=K.xAdvance;return Q*X}function w$($,Z){let J=new Path2D;return M6(J,$,Z),J}var N7;((Q)=>{Q[Q.None=0]="None";Q[Q.Decompose=1]="Decompose";Q[Q.Compose=2]="Compose";Q[Q.Auto=3]="Auto"})(N7||={});function E1($){if($>=1425&&$<=1469)return G$($);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 E$($);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 W7($);if($>=3761&&$<=3772)return 0;if($>=3784&&$<=3789)return W7($);if($>=3864&&$<=3865)return 220;if($===3893)return 220;if($===3895)return 220;if($===3897)return 216;if($>=3953&&$<=3966)return U7($);if($>=3968&&$<=3972)return U7($);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 V$($);if($>=6832&&$<=6911)return Y$($);if($>=7616&&$<=7679)return j$($);if($>=65056&&$<=65071)return 230;return 0}function W7($){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 U7($){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 Y$($){if($>=6832&&$<=6846)return 230;if($===6847)return 220;if($===6848)return 220;return 230}function j$($){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 G$($){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 E$($){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 V$($){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 D6($){let Z=$.length,J=1;while(J<Z){let X=$[J];if(!X){J++;continue}let Q=E1(X.codepoint);if(Q===0){J++;continue}let K=J;while(K>0){let H=$[K-1];if(!H)break;let q=E1(H.codepoint);if(q===0)break;if(q<=Q)break;$[K]=H,$[K-1]=X,K--}J++}}var B$=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 A6($){return B$.get($)??null}var M$=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 z7($,Z){let J=M$.get($);if(!J)return null;return J.get(Z)??null}function D$($){if($.length===0)return $;let Z=[],J=0;while(J<$.length){let X=$[J];if(!X){J++;continue}if(E1(X.codepoint)===0){let K=X.codepoint,H=0,q=J+1;while(q<$.length){let W=$[q];if(!W)break;let U=E1(W.codepoint);if(U===0)break;if(U>H||H===0){let z=z7(K,W.codepoint);if(z!==null){K=z,q++;continue}}H=U,q++}Z.push({glyphId:X.glyphId,cluster:X.cluster,mask:X.mask,codepoint:K});for(let W=J+1;W<q;W++){let U=$[W];if(!U)continue;let z=E1(U.codepoint);if(z7(K,U.codepoint)===null&&z!==0)Z.push(U)}J=q}else Z.push(X),J++}return Z}function A$($,Z){if(Z===0)return $;if(Z===1){let J=[];for(let X of $){let Q=A6(X.codepoint);if(Q)for(let K of Q)J.push({glyphId:X.glyphId,cluster:X.cluster,mask:X.mask,codepoint:K});else J.push(X)}return D6(J),J}if(Z===2){let J=[];for(let X of $){let Q=A6(X.codepoint);if(Q)for(let K of Q)J.push({glyphId:X.glyphId,cluster:X.cluster,mask:X.mask,codepoint:K});else J.push(X)}return D6(J),D$(J)}if(Z===3){let J=[];for(let X of $){let Q=A6(X.codepoint);if(Q)for(let K of Q)J.push({glyphId:X.glyphId,cluster:X.cluster,mask:X.mask,codepoint:K});else J.push(X)}return D6(J),J}return $}function B5($,Z,J){for(let X=0;X<Z.length;X++){let Q=Z[X],K=J[X];if(!Q||!K)continue;let H=$.gdef?K1($.gdef,Q.glyphId):0,q=E1(Q.codepoint);if(H!==3&&q===0)continue;let W=-1;for(let w=X-1;w>=0;w--){let j=Z[w];if(!j)continue;let _=$.gdef?K1($.gdef,j.glyphId):0,Y=E1(j.codepoint);if(_===1||_===0&&Y===0){W=w;break}}if(W<0)continue;let U=Z[W],z=J[W];if(!U||!z)continue;let N=$.advanceWidth(U.glyphId);L$($,Q,K,U,z,N,q),K.xAdvance=0,K.yAdvance=0}}function L$($,Z,J,X,Q,K,H){let q=$.advanceWidth(Z.glyphId),W=$.unitsPerEm,U=(K-q)/2,z=0;if(H>=200&&H<=240)z=W*0.7,U=(K-q)/2;else if(H>=202&&H<=220)z=-W*0.15,U=(K-q)/2;else if(H===1)U=(K-q)/2,z=W*0.3;else if(H>=7&&H<=9)z=-W*0.1,U=(K-q)/2;else if(H>=10&&H<=35){if(H<=22)z=-W*0.2;else z=H<30?-W*0.15:W*0.6;U=(K-q)/2}J.xOffset=Q.xOffset+U-K,J.yOffset=Q.yOffset+z}function M5($,Z,J){if(!$.kern)return;for(let Q=0;Q<Z.length-1;Q++){let K=Z[Q],H=Z[Q+1];if(!K||!H)continue;let q=J[Q];if(!q)continue;let W=$.gdef?K1($.gdef,K.glyphId):0,U=$.gdef?K1($.gdef,H.glyphId):0;if(W===3||U===3)continue;let z=F$($,K.glyphId,H.glyphId);if(z!==0)q.xAdvance+=z}}function F$($,Z,J){let X=$.kern;if(!X)return 0;return W5(X,Z,J)}function w7($,Z=!0){if($<1||$>20)throw Error(`Stylistic set number must be 1-20, got ${$}`);let J=`ss${$.toString().padStart(2,"0")}`;return{tag:M(J),enabled:Z}}function R$($,Z=!0){return $.map((J)=>w7(J,Z))}function _7($,Z=!0){if($<1||$>99)throw Error(`Character variant number must be 1-99, got ${$}`);let J=`cv${$.toString().padStart(2,"0")}`;return{tag:M(J),enabled:Z}}function P$($,Z=!0){return $.map((J)=>_7(J,Z))}function O$($=!0){return{tag:M("liga"),enabled:$}}function T$($=!0){return{tag:M("dlig"),enabled:$}}function I$($=!0){return{tag:M("hlig"),enabled:$}}function v$($=!0){return{tag:M("calt"),enabled:$}}function k$($=!0){return{tag:M("salt"),enabled:$}}function x$($=!0){return{tag:M("swsh"),enabled:$}}function Y7($=!0){return{tag:M("smcp"),enabled:$}}function j7($=!0){return{tag:M("c2sc"),enabled:$}}function S$($=!0){return{tag:M("pcap"),enabled:$}}function C$($=!0){return[Y7($),j7($)]}function m$($=!0){return{tag:M("onum"),enabled:$}}function h$($=!0){return{tag:M("lnum"),enabled:$}}function y$($=!0){return{tag:M("pnum"),enabled:$}}function b$($=!0){return{tag:M("tnum"),enabled:$}}function g$($=!0){return{tag:M("frac"),enabled:$}}function u$($=!0){return{tag:M("ordn"),enabled:$}}function f$($=!0){return{tag:M("zero"),enabled:$}}function l$($=!0){return{tag:M("sups"),enabled:$}}function n$($=!0){return{tag:M("subs"),enabled:$}}function d$($=!0){return{tag:M("sinf"),enabled:$}}function i$($=!0){return{tag:M("case"),enabled:$}}function o$($=!0){return{tag:M("cpsp"),enabled:$}}function c$($=!0){return{tag:M("kern"),enabled:$}}function G7($=!0){return{tag:M("vert"),enabled:$}}function E7($=!0){return{tag:M("vrt2"),enabled:$}}function V7($=!0){return{tag:M("vkna"),enabled:$}}function p$($=!0){return[G7($),E7($),V7($)]}function s$($=!0){return{tag:M("ruby"),enabled:$}}function t$($=!0){return{tag:M("hwid"),enabled:$}}function a$($=!0){return{tag:M("fwid"),enabled:$}}function r$($=!0){return{tag:M("pwid"),enabled:$}}function e$($=!0){return{tag:M("qwid"),enabled:$}}function $Z($=!0){return{tag:M("twid"),enabled:$}}function ZZ($=!0){return{tag:M("jp78"),enabled:$}}function QZ($=!0){return{tag:M("jp83"),enabled:$}}function XZ($=!0){return{tag:M("jp90"),enabled:$}}function JZ($=!0){return{tag:M("jp04"),enabled:$}}function HZ($=!0){return{tag:M("smpl"),enabled:$}}function KZ($=!0){return{tag:M("trad"),enabled:$}}function B7($,Z=!0){return{tag:M($),enabled:Z}}function qZ($,Z=!0){return $.map((J)=>B7(J,Z))}function WZ(...$){let Z=[];for(let J of $)if(Array.isArray(J))Z.push(...J);else Z.push(J);return Z}var M7=new WeakMap,UZ=64,zZ=["ccmp","locl","rlig","rclt","calt","liga"],NZ=["kern","mark","mkmk"];function wZ($,Z,J,X,Q){let K=X.map((q)=>`${l1(q.tag)}:${q.enabled?"1":"0"}`).sort().join(","),H=Q?Q.map((q)=>q.toFixed(4)).join(","):"";return`${$}|${Z||""}|${J}|${K}|${H}`}function A7($,Z,J,X,Q=[],K=null){let H=wZ(Z,J,X,Q,K),q=M7.get($);if(!q)q=new Map,M7.set($,q);let W=q.get(H);if(W)return W;let U=_Z($,Z,J,X,Q,K);if(q.size>=UZ){let z=q.keys().next().value;if(z!==void 0)q.delete(z)}return q.set(H,U),U}function D5($,Z,J,X,Q=[],K=null){return A7($,Z,J,X,Q,K)}function _Z($,Z,J,X,Q=[],K=null){let H=M(Z.padEnd(4," ")),q=J?M(J.padEnd(4," ")):null,W=new Set;for(let N of zZ)W.add(M(N));for(let N of NZ)W.add(M(N));for(let N of Q)if(N.enabled)W.add(N.tag);else W.delete(N.tag);let U=D7($.gsub,H,q,W,K),z=D7($.gpos,H,q,W,K);return{script:H,language:q,direction:X,gsubLookups:U,gposLookups:z}}function D7($,Z,J,X,Q){if(!$)return[];let K=$,H=new Set,q=N6(K.scriptList,Z);if(!q)q=N6(K.scriptList,M("DFLT"));if(!q)q=N6(K.scriptList,M("latn"));if(!q)return[];let W=l2(q,J);if(!W)return[];let U=K.featureVariations,z=U&&Q?s1(U,Q):null,N=new Map;if(z)for(let _ of z.featureTableSubstitution.substitutions)N.set(_.featureIndex,_.alternateFeature.lookupListIndices);if(W.requiredFeatureIndex!==65535){let _=a6(K.featureList,W.requiredFeatureIndex);if(_){let G=N.get(W.requiredFeatureIndex)??_.feature.lookupListIndices;for(let E of G)H.add(E)}}for(let _ of W.featureIndices){let Y=a6(K.featureList,_);if(!Y)continue;if(X.has(Y.featureTag)){let E=N.get(_)??Y.feature.lookupListIndices;for(let V of E)H.add(V)}}let w=[],j=Array.from(H).sort((_,Y)=>_-Y);for(let _ of j){let Y=K.lookups[_];if(Y)w.push({index:_,lookup:Y})}return w}function YZ($){return $>=1536&&$<=1791||$>=1872&&$<=1919||$>=2208&&$<=2303||$>=64336&&$<=65023||$>=65136&&$<=65279}function jZ($){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(YZ($))return"U";return"U"}function GZ($){let Z=$.length,J=Array(Z).fill(0),X=[];for(let Q of $){let K=Q.codepoint??0;X.push(jZ(K))}for(let Q=0;Q<Z;Q++){let K=X[Q];if(!K)continue;if(K==="U"||K==="T")continue;let H=null;for(let z=Q-1;z>=0;z--){let N=X[z];if(N&&N!=="T"){H=N;break}}let q=null;for(let z=Q+1;z<Z;z++){let N=X[z];if(N&&N!=="T"){q=N;break}}let W=H==="D"||H==="L"||H==="C",U=q==="D"||q==="R"||q==="C";if(K==="D")if(W&&U)J[Q]=3;else if(W)J[Q]=2;else if(U)J[Q]=4;else J[Q]=1;else if(K==="R")if(W)J[Q]=2;else J[Q]=1;else if(K==="L")if(U)J[Q]=4;else J[Q]=1;else if(K==="C")J[Q]=0}return J}function A5($){let Z=GZ($);for(let[J,X]of Z.entries()){let Q=$[J];if(!Q)continue;switch(X){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 F5($){return $>=44032&&$<=55203}function EZ($){return $>=4352&&$<=4607||$>=43360&&$<=43388||$>=55216&&$<=55291}function VZ($){return $>=4352&&$<4371||$>=43360&&$<=43388}function BZ($){return $>=4449&&$<4470||$>=55216&&$<=55238}function MZ($){return $>4519&&$<=4546||$>=55243&&$<=55291}function DZ($){if(!F5($))return[$];let Z=$-44032,J=Math.floor(Z/588),X=Math.floor(Z%588/28),Q=Z%28,K=[4352+J,4449+X];if(Q>0)K.push(4519+Q);return K}function L7($,Z,J=0){let X=$-4352,Q=Z-4449,K=J===0?0:J-4519;if(X<0||X>=19)return null;if(Q<0||Q>=21)return null;if(K<0||K>=28)return null;return 44032+X*588+Q*28+K}function t1($){if(VZ($))return 1;if(BZ($))return 2;if(MZ($))return 3;if(F5($))return($-44032)%28===0?4:5;return 0}var L5={ljmo:1,vjmo:2,tjmo:4};function R5($){for(let Z of $)switch(t1(Z.codepoint)){case 1:Z.mask|=L5.ljmo;break;case 2:Z.mask|=L5.vjmo;break;case 3:Z.mask|=L5.tjmo;break;case 4:case 5:break}}function P5($){let Z=[],J=0;while(J<$.length){let X=$[J];if(!X){J++;continue}let Q=t1(X.codepoint);if(Q===1&&J+1<$.length){let K=$[J+1];if(!K){Z.push(X),J++;continue}if(t1(K.codepoint)===2){let q=0,W=2;if(J+2<$.length){let z=$[J+2];if(z){if(t1(z.codepoint)===3)q=z.codepoint,W=3}}let U=L7(X.codepoint,K.codepoint,q);if(U!==null){Z.push({glyphId:X.glyphId,cluster:X.cluster,mask:X.mask,codepoint:U}),J+=W;continue}}}if(Q===4&&J+1<$.length){let K=$[J+1];if(!K){Z.push(X),J++;continue}if(t1(K.codepoint)===3){let q=DZ(X.codepoint),[W,U]=q;if(q.length===2&&W!==void 0&&U!==void 0){let z=L7(W,U,K.codepoint);if(z!==null){Z.push({glyphId:X.glyphId,cluster:X.cluster,mask:X.mask,codepoint:z}),J+=2;continue}}}}Z.push(X),J++}return Z}function F7($){return F5($)||EZ($)||$>=12593&&$<=12686}function AZ($){return $>=1424&&$<=1535||$>=64285&&$<=64335}function LZ($){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(AZ($))return 0;return 0}function O5($){let Z=0;for(let J=0;J<$.length;J++){let X=$[J];if(!X)continue;if(LZ(X.codepoint)===1)Z=J;X.mask=X.mask&4294901760|Z&65535}}function R7($){return $>=2304&&$<=2431}function P7($){return $>=2432&&$<=2559}function O7($){return $>=2560&&$<=2687}function T7($){return $>=2688&&$<=2815}function I7($){return $>=2816&&$<=2943}function v7($){return $>=2944&&$<=3071}function k7($){return $>=3072&&$<=3199}function x7($){return $>=3200&&$<=3327}function S7($){return $>=3328&&$<=3455}function C7($){return R7($)||P7($)||O7($)||T7($)||I7($)||v7($)||k7($)||x7($)||S7($)}function Y1($){if($===8204)return 5;if($===8205)return 6;if($===9676)return 12;if(R7($)){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(P7($)){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(O7($)||T7($)||I7($)||v7($)||k7($)||x7($)||S7($)){let Z=$&127;if(Z>=1&&Z<=3)return 8;if(Z>=5&&Z<=20)return 2;if(Z>=21&&Z<=57)return 1;if(Z===60)return 3;if(Z>=62&&Z<=76)return 7;if(Z===77)return 4;return 0}return 0}function m7($){let Z=[],J=$.length;if(J===0)return Z;let X=0;while(X<J){let Q=FZ($,X);Z.push(Q),X=Q.end}return Z}function FZ($,Z){let J=$.length,X=Z,Q=-1,K=!1;if(X+1<J){let q=$[X],W=$[X+1];if(q&&W){let U=Y1(q.codepoint??0),z=Y1(W.codepoint??0);if(U===15&&z===4)K=!0,X+=2}}let H=-1;while(X<J){let q=$[X];if(!q){X++;continue}let W=q.codepoint??0,U=Y1(W);if(U===1||U===15){if(H=X,X++,X<J){let z=$[X];if(z&&Y1(z.codepoint??0)===3)X++}if(X<J){let z=$[X];if(z&&Y1(z.codepoint??0)===4){if(X++,X<J){let N=$[X];if(N){let w=Y1(N.codepoint??0);if(w===6||w===5)X++}}continue}}break}else if(U===2){X++;break}else if(U===3)X++;else{if(H===-1)X++;break}}Q=H>=0?H:Z;while(X<J){let q=$[X];if(!q){X++;continue}let W=q.codepoint??0,U=Y1(W);if(U===7||U===8||U===9||U===3)X++;else if(U===4){X++;break}else break}if(X===Z)X=Z+1;return{start:Z,end:X,hasReph:K,baseConsonant:Q}}var s={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 h7($){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 T5($){let Z=m7($);for(let[J,X]of Z.entries())for(let Q=X.start;Q<X.end;Q++){let K=$[Q];if(K){K.mask=K.mask&65535|(J&65535)<<16;let H=Y1(K.codepoint);if(H===3)K.mask|=s.nukt;if(H===4){if(Q<X.baseConsonant)K.mask|=s.half;else if(Q>X.baseConsonant)K.mask|=s.blwf|s.pstf}if(H===1||H===15){if(Q<X.baseConsonant)K.mask|=s.half|s.cjct;else if(Q>X.baseConsonant)K.mask|=s.blwf|s.pstf|s.vatu}if(X.hasReph&&Q<X.start+2)K.mask|=s.rphf;if(H===7)switch(h7(K.codepoint)){case 0:K.mask|=s.pref|s.pres;break;case 1:K.mask|=s.abvf|s.abvs;break;case 2:K.mask|=s.blwf|s.blws;break;case 3:K.mask|=s.pstf|s.psts;break}if(H===8)K.mask|=s.abvs|s.psts}}}function I5($){let Z=m7($);for(let J of Z)RZ($,J)}function RZ($,Z){let{start:J,end:X,baseConsonant:Q,hasReph:K}=Z,H=[];for(let q=Q+1;q<X;q++){let W=$[q];if(!W)continue;if(Y1(W.codepoint)===7){if(h7(W.codepoint)===0)H.push({index:q,info:W})}}if(H.length>0){H.sort((q,W)=>W.index-q.index);for(let{index:q,info:W}of H){$.splice(q,1);let U=K?J+2:J;$.splice(U,0,W)}}if(K&&X>J+2){let q=$[J],W=$[J+1];if(q&&W){let U=X-1;while(U>Q){let z=$[U];if(!z)break;let N=Y1(z.codepoint);if(N===8||N===9)U--;else break}if(U>J+1){$.splice(J,2);let z=U-2;$.splice(z+1,0,q,W)}}}}function m1($){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 L1={pref:1,blwf:2,abvf:4,pstf:8,cfar:16,pres:32,abvs:64,blws:128,psts:256,clig:512};function y7($){return $>=6016&&$<=6143||$>=6624&&$<=6655}function v5($){let Z=0;while(Z<$.length){let J=$[Z];if(!J){Z++;continue}let X=m1(J.codepoint);if(X===0){Z++;continue}let Q=Z,K=-1;if(X===1)K=Z;let H=Z+1;while(H<$.length){let q=$[H];if(!q){H++;continue}let W=m1(q.codepoint);if(W===0)break;if(W===1){let U=$[H-1];if(U&&m1(U.codepoint)!==4)break}if(W===4&&H+1<$.length){let U=$[H+1];if(U&&m1(U.codepoint)===1){q.mask|=L1.blwf,U.mask|=L1.blwf,H+=2;continue}}if(W===3)if(q.codepoint>=6081&&q.codepoint<=6083)q.mask|=L1.pref;else if(q.codepoint>=6071&&q.codepoint<=6074)q.mask|=L1.abvf;else if(q.codepoint===6075||q.codepoint===6076||q.codepoint===6077)q.mask|=L1.blwf;else q.mask|=L1.pstf;if(W===5)q.mask|=L1.abvs;if(W===6)q.mask|=L1.abvs;H++}Z=H}}function k5($){let Z=0;while(Z<$.length){let J=$[Z];if(!J){Z++;continue}if(m1(J.codepoint)!==1){Z++;continue}let Q=Z,K=Z+1;while(K<$.length){let H=$[K];if(!H)break;if(m1(H.codepoint)===4&&K+1<$.length)K+=2;else break}if(K<$.length){let H=$[K];if(H){let q=H.codepoint;if(q>=6081&&q<=6083){let W=H;for(let U=K;U>Q;U--){let z=$[U-1];if(z)$[U]=z}$[Q]=W}}}Z=K+1}}function h1($){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 w1={rphf:1,pref:2,blwf:4,pstf:8,pres:16,abvs:32,blws:64,psts:128};function b7($){return $>=4096&&$<=4255||$>=43616&&$<=43647||$>=43488&&$<=43519}function x5($){let Z=0;while(Z<$.length){let J=$[Z];if(!J){Z++;continue}let X=h1(J.codepoint);if(X===0){Z++;continue}let Q=-1,K=!1;if(X===1)Q=Z;let H=Z+1;while(H<$.length){let q=$[H];if(!q){H++;continue}let W=h1(q.codepoint);if(W===0)break;if(W===5){if(K=!0,q.mask|=w1.blwf,H+1<$.length){let U=$[H+1];if(U&&h1(U.codepoint)===1){U.mask|=w1.blwf,H+=2;continue}}}if(W===4){let U=q.codepoint;if(U===4155)q.mask|=w1.pref;else if(U===4156)q.mask|=w1.pref;else if(U===4157)q.mask|=w1.blwf;else if(U===4158)q.mask|=w1.blwf}if(W===3){let U=q.codepoint;if(U===4145)q.mask|=w1.pref;else if(U===4141||U===4142||U===4146)q.mask|=w1.abvs;else if(U===4143||U===4144)q.mask|=w1.blws;else q.mask|=w1.psts}if(W===6||W===8)q.mask|=w1.abvs;if(W===1&&!K){if(H>0){let U=$[H-1];if(U){if(h1(U.codepoint)!==5)break}}}K=!1,H++}Z=H}}function S5($){let Z=0;while(Z<$.length){let J=$[Z];if(!J){Z++;continue}if(h1(J.codepoint)!==1){Z++;continue}let Q=Z,K=[],H=Z+1;while(H<$.length){let q=$[H];if(!q){H++;continue}let W=h1(q.codepoint);if(q.codepoint===4145){K.push(q),$.splice(H,1);continue}if(q.codepoint===4156){K.push(q),$.splice(H,1);continue}if(W===1||W===0)break;H++}if(K.length>0)$.splice(Q,0,...K),Z+=K.length;Z++}}function m5($){return $>=3584&&$<=3711}function h5($){return $>=3712&&$<=3839}function C5($){if(m5($)){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(h5($)){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 L6($){let Z=0,J=-1;for(let X=0;X<$.length;X++){let Q=$[X];if(!Q)continue;let K=C5(Q.codepoint);if(K===1)Z++,J=X;if(Q.mask=Q.mask&4294967040|K&255,Q.mask=Q.mask&65535|(Z&65535)<<16,K===2)Q.mask|=256}}function F6($){let Z=0;while(Z<$.length){let J=$[Z];if(!J){Z++;continue}if(C5(J.codepoint)===2){let Q=Z+1;while(Q<$.length){let K=$[Q];if(!K){Q++;continue}let H=C5(K.codepoint??0);if(H===1){let q=J;$[Z]=K,$[Q]=q;break}if(H!==2)break;Q++}}Z++}}function g7($){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 V1($){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}return 0}var p={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 u7($){let Z=[],J=$.length;if(J===0)return Z;let X=0;while(X<J){let Q=PZ($,X);Z.push(Q),X=Q.end}return Z}function PZ($,Z){let J=$.length,X=Z,Q=-1,K=!1;if(X+1<J){let H=$[X],q=$[X+1];if(H&&q){let W=V1(H.codepoint??0),U=V1(q.codepoint??0);if(W===13&&U===8)K=!0,X+=2}}while(X<J){let H=$[X];if(!H){X++;continue}let q=V1(H.codepoint??0);if(q===1||q===10||q===7||q===22){Q=X,X++;break}if(q===26||q===30||q===39){X++;continue}if(Q===-1)X++;break}if(Q===-1)Q=Z;while(X<J){let H=$[X];if(!H){X++;continue}let q=V1(H.codepoint??0);if(q===8){if(X++,X<J){let W=$[X];if(W){let U=V1(W.codepoint??0);if(U===1||U===4||U===17){X++;continue}if(U===20||U===21)X++}}continue}if(q===17||q===4){X++;continue}if(q===12||q===9){X++;continue}break}while(X<J){let H=$[X];if(!H){X++;continue}let q=V1(H.codepoint??0);if(q===28||q===29||q===30||q===31||q===23){X++;continue}if(q===37||q===38||q===39||q===40){X++;continue}if(q===24||q===25||q===26||q===27){X++;continue}if(q===32||q===33){X++;continue}if(q===34||q===35||q===36||q===5||q===6){X++;continue}if(q===2||q===18){X++;continue}break}if(X===Z)X=Z+1;return{start:Z,end:X,base:Q,hasReph:K}}function f7($){let Z=u7($);for(let[J,X]of Z.entries())for(let Q=X.start;Q<X.end;Q++){let K=$[Q];if(!K)continue;K.mask=K.mask&65535|(J&65535)<<16;let H=V1(K.codepoint);if(X.hasReph&&Q<X.start+2)K.mask|=p.rphf;if(Q<X.base){if(H===1||H===4||H===17)K.mask|=p.half|p.cjct}if(Q>X.base){if(H===1||H===4||H===17)K.mask|=p.blwf|p.pstf|p.vatu}if(H===8||H===9)if(Q<X.base)K.mask|=p.half;else K.mask|=p.haln;if(H===30)K.mask|=p.pref|p.pres;else if(H===28)K.mask|=p.abvf|p.abvs;else if(H===29)K.mask|=p.blwf|p.blws;else if(H===31||H===23)K.mask|=p.pstf|p.psts;if(H===37)K.mask|=p.abvs;else if(H===38)K.mask|=p.blws;else if(H===39)K.mask|=p.pres;else if(H===40)K.mask|=p.psts;if(H===32)K.mask|=p.abvs;else if(H===33)K.mask|=p.blws;if(H===34)K.mask|=p.abvs;else if(H===35)K.mask|=p.blws;else if(H===36||H===5||H===6)K.mask|=p.psts}}function l7($){let Z=u7($);for(let J of Z)OZ($,J)}function OZ($,Z){let{start:J,end:X,base:Q,hasReph:K}=Z,H=[];for(let q=Q+1;q<X;q++){let W=$[q];if(!W)continue;let U=V1(W.codepoint);if(U===30||U===39)H.push({index:q,info:W})}if(H.length>0){H.sort((q,W)=>W.index-q.index);for(let{index:q,info:W}of H){$.splice(q,1);let U=K?J+2:J;$.splice(U,0,W)}}if(K&&X>J+2){let q=$[J],W=$[J+1];if(q&&W){let U=X-1;while(U>Q){let z=$[U];if(!z)break;let N=V1(z.codepoint);if(N===32||N===33||N===34||N===35||N===36||N===5||N===6)U--;else break}if(U>J+1){$.splice(J,2);let z=U-2;$.splice(z+1,0,q,W)}}}}function TZ($){return $ instanceof R1?$.font:$}function IZ($){return $ instanceof R1?$:new R1($)}function vZ($,Z,J={}){let X=TZ($),Q=IZ($),K=J.script??Z.script??"latn",H=J.language??Z.language??null,q=J.direction??"ltr",W=J.features??[],U=Q.normalizedCoords.length>0?Q.normalizedCoords:null,z=D5(X,K,H,q,W,U),N=new F1;N.direction=Z.direction,N.script=K,N.language=H;let w=[];for(let[_,Y]of Z.codepoints.entries()){let G=Z.clusters[_];if(G===void 0)continue;let E=X.glyphId(Y);w.push({glyphId:E,cluster:G,mask:4294967295,codepoint:Y})}if(N.initFromInfos(w),kZ(N,K),SZ(X,N,z),pZ(Q,N),X.gpos!==null&&z.gposLookups.length>0)sZ(X,N,z);else M5(X,N.infos,N.positions),B5(X,N.infos,N.positions);if(!X.gsub&&X.morx)zQ(X,N);if(q==="rtl")N.reverse();return N}function kZ($,Z){if(Z==="arab"||Z==="syrc"||Z==="mand"||Z==="nko "){A5($.infos);return}if(Z==="hebr"){O5($.infos);return}if(Z==="hang"||Z==="kore"){let J=P5($.infos);if(J.length!==$.infos.length)$.initFromInfos(J);R5($.infos);return}if(Z==="deva"||Z==="beng"||Z==="guru"||Z==="gujr"||Z==="orya"||Z==="taml"||Z==="telu"||Z==="knda"||Z==="mlym"){T5($.infos),I5($.infos);return}if(Z==="thai"||Z==="lao "){L6($.infos),F6($.infos);return}if(Z==="khmr"){v5($.infos),k5($.infos);return}if(Z==="mymr"){x5($.infos),S5($.infos);return}if(g7(Z)){f7($.infos),l7($.infos);return}if(Z==="Zyyy"||Z==="Zinh"||Z==="Zzzz")xZ($.infos)}function xZ($){if($.length===0)return;let Z=$.slice(0,Math.min(10,$.length));for(let J of Z){let X=J.codepoint;if(X>=1536&&X<=1791||X>=1872&&X<=1919||X>=2208&&X<=2303){A5($);return}if(X>=1424&&X<=1535){O5($);return}if(F7(X)){let Q=P5($);if(Q.length!==$.length)$.length=0,$.push(...Q);R5($);return}if(C7(X)){T5($),I5($);return}if(m5(X)){L6($),F6($);return}if(h5(X)){L6($),F6($);return}if(y7(X)){v5($),k5($);return}if(b7(X)){x5($),S5($);return}}}function SZ($,Z,J){for(let{lookup:X}of J.gsubLookups)CZ($,Z,X,J)}function CZ($,Z,J,X){switch(J.type){case 1:mZ($,Z,J);break;case 2:hZ($,Z,J);break;case 3:yZ($,Z,J);break;case 4:bZ($,Z,J);break;case 5:gZ($,Z,J,X);break;case 6:uZ($,Z,J,X);break;case 8:fZ($,Z,J);break}}function mZ($,Z,J){for(let X of Z.infos){if(f($,X.glyphId,J.flag))continue;let Q=q5(J,X.glyphId);if(Q!==null)X.glyphId=Q}}function hZ($,Z,J){let X=0;while(X<Z.infos.length){let Q=Z.infos[X];if(!Q){X++;continue}if(f($,Q.glyphId,J.flag)){X++;continue}let K=!1;for(let H of J.subtables){let q=H.coverage.get(Q.glyphId);if(q===null)continue;let W=H.sequences[q];if(!W||W.length===0)continue;let[U,...z]=W;if(U===void 0)continue;Q.glyphId=U;for(let[N,w]of z.entries()){let j={glyphId:w,cluster:Q.cluster,mask:Q.mask,codepoint:Q.codepoint},_={xAdvance:0,yAdvance:0,xOffset:0,yOffset:0};Z.insertGlyph(X+N+1,j,_)}X+=W.length,K=!0;break}if(!K)X++}}function yZ($,Z,J){for(let X of Z.infos){if(f($,X.glyphId,J.flag))continue;for(let Q of J.subtables){let K=Q.coverage.get(X.glyphId);if(K===null)continue;let H=Q.alternateSets[K];if(!H||H.length===0)continue;let[q]=H;if(q===void 0)continue;X.glyphId=q;break}}}function bZ($,Z,J){let X=0;while(X<Z.infos.length){let Q=Z.infos[X];if(!Q){X++;continue}if(f($,Q.glyphId,J.flag)){X++;continue}let K=[X],H=[Q.glyphId];for(let W=X+1;W<Z.infos.length&&H.length<16;W++){let U=Z.infos[W];if(!U)continue;if(f($,U.glyphId,J.flag))continue;K.push(W),H.push(U.glyphId)}let q=$9(J,H,0);if(q){Q.glyphId=q.ligatureGlyph;let W=[];for(let U=1;U<q.consumed;U++){let z=K[U];if(z!==void 0){let N=Z.infos[z];if(N)Q.cluster=Math.min(Q.cluster,N.cluster);W.push(z)}}for(let U of W.reverse())Z.removeRange(U,U+1)}X++}}function gZ($,Z,J,X){for(let Q=0;Q<Z.infos.length;Q++){let K=Z.infos[Q];if(!K)continue;if(f($,K.glyphId,J.flag))continue;for(let H of J.subtables){let q=!1,W=[];if(H.format===1){let U=lZ($,Z,Q,H,J.flag);if(U)q=!0,W=U}else if(H.format===2){let U=nZ($,Z,Q,H,J.flag);if(U)q=!0,W=U}else if(H.format===3){if(dZ($,Z,Q,H,J.flag))q=!0,W=H.lookupRecords}if(q){n7($,Z,Q,W,X);break}}}}function uZ($,Z,J,X){for(let Q=0;Q<Z.infos.length;Q++){let K=Z.infos[Q];if(!K)continue;if(f($,K.glyphId,J.flag))continue;for(let H of J.subtables){let q=!1,W=[];if(H.format===1){let U=iZ($,Z,Q,H,J.flag);if(U)q=!0,W=U}else if(H.format===2){let U=oZ($,Z,Q,H,J.flag);if(U)q=!0,W=U}else if(H.format===3){if(cZ($,Z,Q,H,J.flag))q=!0,W=H.lookupRecords}if(q){n7($,Z,Q,W,X);break}}}}function fZ($,Z,J){for(let X=Z.infos.length-1;X>=0;X--){let Q=Z.infos[X];if(!Q)continue;if(f($,Q.glyphId,J.flag))continue;for(let K of J.subtables){let H=K.coverage.get(Q.glyphId);if(H===null)continue;let q=!0,W=X+1;for(let w of K.backtrackCoverages){while(W<Z.infos.length&&f($,Z.infos[W]?.glyphId,J.flag))W++;if(W>=Z.infos.length||w.get(Z.infos[W]?.glyphId)===null){q=!1;break}W++}if(!q)continue;let U=!0,z=X-1;for(let w of K.lookaheadCoverages){while(z>=0&&f($,Z.infos[z]?.glyphId,J.flag))z--;if(z<0||w.get(Z.infos[z]?.glyphId)===null){U=!1;break}z--}if(!U)continue;let N=K.substituteGlyphIds[H];if(N!==void 0)Q.glyphId=N;break}}}function lZ($,Z,J,X,Q){let K=Z.infos[J]?.glyphId,H=X.coverage.get(K);if(H===null)return null;let q=X.ruleSets[H];if(!q)return null;for(let W of q)if(y1($,Z,J+1,W.inputSequence,Q))return W.lookupRecords;return null}function nZ($,Z,J,X,Q){let K=Z.infos[J]?.glyphId;if(X.coverage.get(K)===null)return null;let q=X.classDef.get(K),W=X.classRuleSets[q];if(!W)return null;for(let U of W)if(b1($,Z,J+1,U.inputClasses,X.classDef,Q))return U.lookupRecords;return null}function dZ($,Z,J,X,Q){let K=J;for(let H of X.coverages){while(K<Z.infos.length&&f($,Z.infos[K]?.glyphId,Q))K++;if(K>=Z.infos.length)return!1;if(H.get(Z.infos[K]?.glyphId)===null)return!1;K++}return!0}function iZ($,Z,J,X,Q){let K=Z.infos[J]?.glyphId,H=X.coverage.get(K);if(H===null)return null;let q=X.chainRuleSets[H];if(!q)return null;for(let W of q){if(!o7($,Z,J-1,W.backtrackSequence,Q))continue;if(!y1($,Z,J+1,W.inputSequence,Q))continue;let U=J+1;for(let z=0;z<W.inputSequence.length;z++){while(U<Z.infos.length&&f($,Z.infos[U]?.glyphId,Q))U++;U++}if(!y1($,Z,U,W.lookaheadSequence,Q))continue;return W.lookupRecords}return null}function oZ($,Z,J,X,Q){let K=Z.infos[J]?.glyphId;if(X.coverage.get(K)===null)return null;let q=X.inputClassDef.get(K),W=X.chainClassRuleSets[q];if(!W)return null;for(let U of W){if(!c7($,Z,J-1,U.backtrackClasses,X.backtrackClassDef,Q))continue;if(!b1($,Z,J+1,U.inputClasses,X.inputClassDef,Q))continue;let z=J+1;for(let N=0;N<U.inputClasses.length;N++){while(z<Z.infos.length&&f($,Z.infos[z]?.glyphId,Q))z++;z++}if(!b1($,Z,z,U.lookaheadClasses,X.lookaheadClassDef,Q))continue;return U.lookupRecords}return null}function cZ($,Z,J,X,Q){let K=J-1;for(let W of X.backtrackCoverages){while(K>=0&&f($,Z.infos[K]?.glyphId,Q))K--;if(K<0)return!1;if(W.get(Z.infos[K]?.glyphId)===null)return!1;K--}let H=J;for(let W of X.inputCoverages){while(H<Z.infos.length&&f($,Z.infos[H]?.glyphId,Q))H++;if(H>=Z.infos.length)return!1;if(W.get(Z.infos[H]?.glyphId)===null)return!1;H++}let q=H;for(let W of X.lookaheadCoverages){while(q<Z.infos.length&&f($,Z.infos[q]?.glyphId,Q))q++;if(q>=Z.infos.length)return!1;if(W.get(Z.infos[q]?.glyphId)===null)return!1;q++}return!0}function n7($,Z,J,X,Q){let K=[...X].sort((H,q)=>q.sequenceIndex-H.sequenceIndex);for(let H of K){let q=Q.gsubLookups.find((z)=>z.index===H.lookupListIndex);if(!q)continue;let W=J+H.sequenceIndex;if(W>=Z.infos.length)continue;let U=Z.infos[W];if(!U)continue;if(q.lookup.type===1){let z=q5(q.lookup,U.glyphId);if(z!==null)U.glyphId=z}}}function pZ($,Z){for(let[J,X]of Z.infos.entries()){let Q=$.advanceWidth(X.glyphId);Z.setAdvance(J,Q,0)}}function sZ($,Z,J){for(let{lookup:X}of J.gposLookups)d7($,Z,X,J)}function d7($,Z,J,X){switch(J.type){case 1:tZ($,Z,J);break;case 2:aZ($,Z,J);break;case 3:rZ($,Z,J);break;case 4:eZ($,Z,J);break;case 5:$Q($,Z,J);break;case 6:ZQ($,Z,J);break;case 7:QQ($,Z,J,X);break;case 8:XQ($,Z,J,X);break}}function tZ($,Z,J){for(let[X,Q]of Z.infos.entries()){let K=Z.positions[X];if(!K)continue;if(f($,Q.glyphId,J.flag))continue;for(let H of J.subtables){let q=H.coverage.get(Q.glyphId);if(q===null)continue;let W=H.format===1?H.value:H.values?.[q];if(W){if(W.xPlacement)K.xOffset+=W.xPlacement;if(W.yPlacement)K.yOffset+=W.yPlacement;if(W.xAdvance)K.xAdvance+=W.xAdvance;if(W.yAdvance)K.yAdvance+=W.yAdvance}break}}}function aZ($,Z,J){for(let X=0;X<Z.infos.length-1;X++){let Q=Z.infos[X];if(!Q)continue;if(f($,Q.glyphId,J.flag))continue;let K=X+1;while(K<Z.infos.length){let W=Z.infos[K];if(W&&!f($,W.glyphId,J.flag))break;K++}if(K>=Z.infos.length)break;let H=Z.infos[K];if(!H)continue;let q=c2(J,Q.glyphId,H.glyphId);if(q){let W=Z.positions[X],U=Z.positions[K];if(W)W.xAdvance+=q.xAdvance1;if(U)U.xAdvance+=q.xAdvance2}}}function rZ($,Z,J){for(let X=0;X<Z.infos.length-1;X++){let Q=Z.infos[X];if(!Q)continue;if(f($,Q.glyphId,J.flag))continue;let K=X+1;while(K<Z.infos.length){let q=Z.infos[K];if(q&&!f($,q.glyphId,J.flag))break;K++}if(K>=Z.infos.length)break;let H=Z.infos[K];if(!H)continue;for(let q of J.subtables){let W=q.coverage.get(Q.glyphId),U=q.coverage.get(H.glyphId);if(W===null||U===null)continue;let z=q.entryExitRecords[W],N=q.entryExitRecords[U];if(!z?.exitAnchor||!N?.entryAnchor)continue;let w=z.exitAnchor,j=N.entryAnchor,_=Z.positions[K];if(_)_.yOffset=w.yCoordinate-j.yCoordinate;break}}}function eZ($,Z,J){for(let X=0;X<Z.infos.length;X++){let Q=Z.infos[X];if(!Q)continue;if(K1($.gdef,Q.glyphId)!==3)continue;let K=-1;for(let q=X-1;q>=0;q--){let W=Z.infos[q];if(!W)continue;let U=K1($.gdef,W.glyphId);if(U===1||U===0){K=q;break}if(U===3)continue;if(U===2){K=q;break}}if(K<0)continue;let H=Z.infos[K];if(!H)continue;for(let q of J.subtables){let W=q.markCoverage.get(Q.glyphId),U=q.baseCoverage.get(H.glyphId);if(W===null||U===null)continue;let z=q.markArray.markRecords[W],N=q.baseArray[U];if(!z||!N)continue;let w=N.baseAnchors[z.markClass];if(!w)continue;let j=z.markAnchor,_=Z.positions[X],Y=Z.positions[K];if(!_||!Y)continue;_.xOffset=w.xCoordinate-j.xCoordinate+Y.xOffset,_.yOffset=w.yCoordinate-j.yCoordinate+Y.yOffset,_.xAdvance=0,_.yAdvance=0;break}}}function $Q($,Z,J){for(let X=0;X<Z.infos.length;X++){let Q=Z.infos[X];if(!Q)continue;if(K1($.gdef,Q.glyphId)!==3)continue;let K=-1,H=0;for(let W=X-1;W>=0;W--){let U=Z.infos[W];if(!U)continue;let z=K1($.gdef,U.glyphId);if(z===2){K=W;break}if(z===3){H++;continue}break}if(K<0)continue;let q=Z.infos[K];if(!q)continue;for(let W of J.subtables){let U=W.markCoverage.get(Q.glyphId),z=W.ligatureCoverage.get(q.glyphId);if(U===null||z===null)continue;let N=W.markArray.markRecords[U],w=W.ligatureArray[z];if(!N||!w)continue;let j=Math.min(H,w.componentRecords.length-1),_=w.componentRecords[j];if(!_)continue;let Y=_.ligatureAnchors[N.markClass];if(!Y)continue;let G=N.markAnchor,E=Z.positions[X],V=Z.positions[K];if(!E||!V)continue;E.xOffset=Y.xCoordinate-G.xCoordinate+V.xOffset,E.yOffset=Y.yCoordinate-G.yCoordinate+V.yOffset,E.xAdvance=0,E.yAdvance=0;break}}}function ZQ($,Z,J){for(let X=0;X<Z.infos.length;X++){let Q=Z.infos[X];if(!Q)continue;if(K1($.gdef,Q.glyphId)!==3)continue;let K=-1;if(X>0){let q=Z.infos[X-1];if(q){if(K1($.gdef,q.glyphId)===3)K=X-1}}if(K<0)continue;let H=Z.infos[K];if(!H)continue;for(let q of J.subtables){let W=q.mark1Coverage.get(Q.glyphId),U=q.mark2Coverage.get(H.glyphId);if(W===null||U===null)continue;let z=q.mark1Array.markRecords[W],N=q.mark2Array[U];if(!z||!N)continue;let w=N.mark2Anchors[z.markClass];if(!w)continue;let j=z.markAnchor,_=Z.positions[X],Y=Z.positions[K];if(!_||!Y)continue;_.xOffset=w.xCoordinate-j.xCoordinate+Y.xOffset,_.yOffset=w.yCoordinate-j.yCoordinate+Y.yOffset;break}}}function QQ($,Z,J,X){for(let Q=0;Q<Z.infos.length;Q++){let K=Z.infos[Q];if(!K)continue;if(f($,K.glyphId,J.flag))continue;for(let H of J.subtables){let q=!1,W=[];if(H.format===1){let U=JQ($,Z,Q,H,J.flag);if(U)q=!0,W=U}else if(H.format===2){let U=HQ($,Z,Q,H,J.flag);if(U)q=!0,W=U}else if(H.format===3){if(KQ($,Z,Q,H,J.flag))q=!0,W=H.lookupRecords}if(q){i7($,Z,Q,W,X);break}}}}function XQ($,Z,J,X){for(let Q=0;Q<Z.infos.length;Q++){let K=Z.infos[Q];if(!K)continue;if(f($,K.glyphId,J.flag))continue;for(let H of J.subtables){let q=!1,W=[];if(H.format===1){let U=qQ($,Z,Q,H,J.flag);if(U)q=!0,W=U}else if(H.format===2){let U=WQ($,Z,Q,H,J.flag);if(U)q=!0,W=U}else if(H.format===3){if(UQ($,Z,Q,H,J.flag))q=!0,W=H.lookupRecords}if(q){i7($,Z,Q,W,X);break}}}}function JQ($,Z,J,X,Q){let K=Z.infos[J]?.glyphId,H=X.coverage.get(K);if(H===null)return null;let q=X.ruleSets[H];if(!q)return null;for(let W of q)if(y1($,Z,J+1,W.inputSequence,Q))return W.lookupRecords;return null}function HQ($,Z,J,X,Q){let K=Z.infos[J]?.glyphId;if(X.coverage.get(K)===null)return null;let q=X.classDef.get(K),W=X.classRuleSets[q];if(!W)return null;for(let U of W)if(b1($,Z,J+1,U.inputClasses,X.classDef,Q))return U.lookupRecords;return null}function KQ($,Z,J,X,Q){let K=J;for(let H of X.coverages){while(K<Z.infos.length&&f($,Z.infos[K]?.glyphId,Q))K++;if(K>=Z.infos.length)return!1;if(H.get(Z.infos[K]?.glyphId)===null)return!1;K++}return!0}function qQ($,Z,J,X,Q){let K=Z.infos[J]?.glyphId,H=X.coverage.get(K);if(H===null)return null;let q=X.chainRuleSets[H];if(!q)return null;for(let W of q){if(!o7($,Z,J-1,W.backtrackSequence,Q))continue;if(!y1($,Z,J+1,W.inputSequence,Q))continue;let U=J+1;for(let z=0;z<W.inputSequence.length;z++){while(U<Z.infos.length&&f($,Z.infos[U]?.glyphId,Q))U++;U++}if(!y1($,Z,U,W.lookaheadSequence,Q))continue;return W.lookupRecords}return null}function WQ($,Z,J,X,Q){let K=Z.infos[J]?.glyphId;if(X.coverage.get(K)===null)return null;let q=X.inputClassDef.get(K),W=X.chainClassRuleSets[q];if(!W)return null;for(let U of W){if(!c7($,Z,J-1,U.backtrackClasses,X.backtrackClassDef,Q))continue;if(!b1($,Z,J+1,U.inputClasses,X.inputClassDef,Q))continue;let z=J+1;for(let N=0;N<U.inputClasses.length;N++){while(z<Z.infos.length&&f($,Z.infos[z]?.glyphId,Q))z++;z++}if(!b1($,Z,z,U.lookaheadClasses,X.lookaheadClassDef,Q))continue;return U.lookupRecords}return null}function UQ($,Z,J,X,Q){let K=J-1;for(let W of X.backtrackCoverages){while(K>=0&&f($,Z.infos[K]?.glyphId,Q))K--;if(K<0)return!1;if(W.get(Z.infos[K]?.glyphId)===null)return!1;K--}let H=J;for(let W of X.inputCoverages){while(H<Z.infos.length&&f($,Z.infos[H]?.glyphId,Q))H++;if(H>=Z.infos.length)return!1;if(W.get(Z.infos[H]?.glyphId)===null)return!1;H++}let q=H;for(let W of X.lookaheadCoverages){while(q<Z.infos.length&&f($,Z.infos[q]?.glyphId,Q))q++;if(q>=Z.infos.length)return!1;if(W.get(Z.infos[q]?.glyphId)===null)return!1;q++}return!0}function i7($,Z,J,X,Q){let K=[...X].sort((H,q)=>q.sequenceIndex-H.sequenceIndex);for(let H of K){let q=Q.gposLookups.find((U)=>U.index===H.lookupListIndex);if(!q)continue;if(J+H.sequenceIndex>=Z.infos.length)continue;d7($,Z,q.lookup,Q)}}function y1($,Z,J,X,Q){let K=J;for(let H of X){while(K<Z.infos.length&&f($,Z.infos[K]?.glyphId,Q))K++;if(K>=Z.infos.length)return!1;if(Z.infos[K]?.glyphId!==H)return!1;K++}return!0}function o7($,Z,J,X,Q){let K=J;for(let H of X){while(K>=0&&f($,Z.infos[K]?.glyphId,Q))K--;if(K<0)return!1;if(Z.infos[K]?.glyphId!==H)return!1;K--}return!0}function b1($,Z,J,X,Q,K){let H=J;for(let q of X){while(H<Z.infos.length&&f($,Z.infos[H]?.glyphId,K))H++;if(H>=Z.infos.length)return!1;if(Q.get(Z.infos[H]?.glyphId)!==q)return!1;H++}return!0}function c7($,Z,J,X,Q,K){let H=J;for(let q of X){while(H>=0&&f($,Z.infos[H]?.glyphId,K))H--;if(H<0)return!1;if(Q.get(Z.infos[H]?.glyphId)!==q)return!1;H--}return!0}function f($,Z,J){let X=$.gdef;if(!X)return!1;let Q=K1(X,Z);if(J&G1.IgnoreBaseGlyphs&&Q===1)return!0;if(J&G1.IgnoreLigatures&&Q===2)return!0;if(J&G1.IgnoreMarks&&Q===3)return!0;let K=f2(J);if(K!==0&&Q===3){if(X.markAttachClassDef.get(Z)!==K)return!0}return!1}function zQ($,Z){let J=$.morx;if(!J)return;for(let X of J.chains)for(let Q of X.subtables){if((X.defaultFlags&Q.subFeatureFlags)===0)continue;switch(Q.type){case 4:for(let K of Z.infos){let H=z5(Q,K.glyphId);if(H!==null)K.glyphId=H}break;case 0:b6(Q,Z.infos);break;case 1:g6(Q,Z.infos);break;case 2:{let K=u6(Q,Z.infos);if(K.length!==Z.infos.length)Z.initFromInfos(K);break}case 5:{let K=f6(Q,Z.infos);if(K.length!==Z.infos.length)Z.initFromInfos(K);break}}}}var y5={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 a1($,Z){let X=0,Q=new Map,K=Z?new Map:null,H="";function q(W){if(W.indexOf("+")!==-1)for(let U=+W;U--;)q(H);else{H=W;let U=W.split(">"),z=U[0]??"",N=U[1]??"";X+=parseInt(z,36);let w=String.fromCodePoint(X);X+=parseInt(N,36);let j=String.fromCodePoint(X);if(Q.set(w,j),K)K.set(j,w)}}return $.split(",").forEach(q),{map:Q,reverseMap:K}}var b5=null,p7=null,s7=null;function g5(){if(!b5){let{map:$,reverseMap:Z}=a1(y5.pairs,!0);b5=$,p7=Z,s7=a1(y5.canonical,!1).map}}function R6($){return g5(),b5?.get($)||null}function P6($){return g5(),p7?.get($)||null}function O6($){return g5(),s7?.get($)||null}var r1={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 i={},u5={};i.L=1;u5[1]="L";Object.keys(r1).forEach(($,Z)=>{i[$]=1<<Z+1;let J=i[$];if(J!==void 0)u5[J]=$});Object.freeze(i);function o($){return i[$]??0}var j1=o("LRI")|o("RLI")|o("FSI"),I6=o("L")|o("R")|o("AL"),X1=o("B")|o("S")|o("WS")|o("ON")|o("FSI")|o("LRI")|o("RLI")|o("PDI"),a=o("BN")|o("RLE")|o("LRE")|o("RLO")|o("LRO")|o("PDF"),e1=o("S")|o("WS")|o("B")|j1|o("PDI")|a,T6=null;function NQ(){if(!T6){T6=new Map;let $=0;for(let Z in r1)if(Object.hasOwn(r1,Z)){let J=r1[Z],X="",Q=0,K=0,H=!1;for(let q=0;q<=J.length+1;q+=1){let W=J[q];if(W!==","&&q!==J.length)if(W==="+")H=!0,$=Q=$+parseInt(X,36),X="";else X+=W;else{if(!H)$=Q=$+parseInt(X,36),K=Q;else K=Q+parseInt(X,36);H=!1,X="",$=K;let U=o(Z);for(let z=Q;z<K+1;z+=1)T6.set(z,U)}}}}}function H1($){NQ();let Z=$.codePointAt(0);if(Z===void 0)return o("L");return T6?.get(Z)??o("L")}var q1=i.L??1,U1=i.R??2,J1=i.EN??4,$6=i.ES??8,v6=i.ET??16,Z6=i.AN??32,k6=i.CS??64,g1=i.B??128,wQ=i.S??256,x6=i.ON??512,_Q=i.BN??1024,S6=i.NSM??2048,C6=i.AL??4096,t7=i.LRO??8192,m6=i.RLO??16384,a7=i.LRE??32768,f5=i.RLE??65536,r7=i.PDF??131072,YQ=i.LRI??262144,e7=i.RLI??524288,jQ=i.FSI??1048576,u1=i.PDI??2097152;function u($,Z){return $[Z]??0}function c($,Z){return $[Z]??0}function f1($,Z){return $[Z]??""}function l5($,Z){let X=new Uint32Array($.length);for(let Y=0;Y<$.length;Y++)X[Y]=H1(f1($,Y));let Q=new Map;function K(Y,G){let E=u(X,Y);if(X[Y]=G,Q.set(E,(Q.get(E)??0)-1),E&X1)Q.set(X1,(Q.get(X1)??0)-1);if(Q.set(G,(Q.get(G)??0)+1),G&X1)Q.set(X1,(Q.get(X1)??0)+1)}let H=new Uint8Array($.length),q=new Map,W=[],U=null;function z(Y,G){for(let E=Y;E<$.length;E++){let V=u(X,E);if(V&(U1|C6))return 1;if(V&(g1|q1)||G&&V===u1)return 0;if(V&j1){let D=N(E);E=D===-1?$.length:D}}return 0}function N(Y){let G=1;for(let E=Y+1;E<$.length;E++){let V=u(X,E);if(V&g1)break;if(V&u1){if(--G===0)return E}else if(V&j1)G++}return-1}for(let Y=0;Y<$.length;Y++){if(!U)U={start:Y,end:$.length-1,level:Z==="rtl"?1:Z==="ltr"?0:z(Y,!1)},W.push(U);if(u(X,Y)&g1)U.end=Y,U=null}let w=f5|a7|m6|t7|j1|u1|r7|g1,j=(Y)=>Y+(Y&1?1:2),_=(Y)=>Y+(Y&1?2:1);for(let Y=0;Y<W.length;Y++){let G=W[Y];if(!G)continue;U=G;let E=[{_level:U.level,_override:0,_isolate:0}],V=0,D=0,A=0;Q.clear();for(let I=U.start;I<=U.end;I++){let P=u(X,I),C=E[E.length-1];if(!C)continue;if(Q.set(P,(Q.get(P)??0)+1),P&X1)Q.set(X1,(Q.get(X1)??0)+1);if(P&w){if(P&(f5|a7)){H[I]=C._level;let n=(P===f5?_:j)(C._level);if(n<=125&&!V&&!D)E.push({_level:n,_override:0,_isolate:0});else if(!V)D++}else if(P&(m6|t7)){H[I]=C._level;let n=(P===m6?_:j)(C._level);if(n<=125&&!V&&!D)E.push({_level:n,_override:P&m6?U1:q1,_isolate:0});else if(!V)D++}else if(P&j1){if(P&jQ)P=z(I+1,!0)===1?e7:YQ;if(H[I]=C._level,C._override)K(I,C._override);let n=(P===e7?_:j)(C._level);if(n<=125&&V===0&&D===0)A++,E.push({_level:n,_override:0,_isolate:1,_isolInitIndex:I});else V++}else if(P&u1){if(V>0)V--;else if(A>0){D=0;while(E.length>0){if(E[E.length-1]?._isolate)break;E.pop()}let v=E[E.length-1]?._isolInitIndex;if(v!=null)q.set(v,I),q.set(I,v);E.pop(),A--}if(C=E[E.length-1],!C)continue;if(H[I]=C._level,C._override)K(I,C._override)}else if(P&r7){if(V===0){if(D>0)D--;else if(!C._isolate&&E.length>1){if(E.pop(),C=E[E.length-1],!C)continue}}H[I]=C._level}else if(P&g1)H[I]=U.level}else if(H[I]=C._level,C._override&&P!==_Q)K(I,C._override)}let k=[],L=null;for(let I=U.start;I<=U.end;I++){let P=u(X,I);if(!(P&a)){let C=H[I]??0,n=!!(P&j1),v=P===u1;if(L&&C===L._level)L._end=I,L._endsWithIsolInit=n;else L={_start:I,_end:I,_level:C,_startsWithPDI:v,_endsWithIsolInit:n},k.push(L)}}let S=[];for(let I=0;I<k.length;I++){let P=k[I];if(!P)continue;if(!P._startsWithPDI||P._startsWithPDI&&!q.has(P._start)){L=P;let C=[P];while(L?._endsWithIsolInit){let b=q.get(L._end);if(b==null)break;let t=!1;for(let $1=I+1;$1<k.length;$1++){let z1=k[$1];if(z1?._start===b){L=z1,C.push(z1),t=!0;break}}if(!t)break}let n=[];for(let b of C)for(let t=b._start;t<=b._end;t++)n.push(t);let v=n[0]??0,_1=H[v]??0,h=U.level;for(let b=v-1;b>=0;b--)if(!(u(X,b)&a)){h=H[b]??0;break}let g=n[n.length-1]??0,F=H[g]??0,l=U.level;if(!(u(X,g)&j1)){for(let b=g+1;b<=U.end;b++)if(!(u(X,b)&a)){l=H[b]??0;break}}S.push({_seqIndices:n,_sosType:Math.max(h,_1)%2?U1:q1,_eosType:Math.max(l,F)%2?U1:q1})}}for(let I of S){let{_seqIndices:P,_sosType:C,_eosType:n}=I,v=P[0]??0,_1=(H[v]??0)&1?U1:q1;if(Q.get(S6))for(let h=0;h<P.length;h++){let g=c(P,h);if(u(X,g)&S6){let F=C;for(let l=h-1;l>=0;l--){let b=c(P,l);if(!(u(X,b)&a)){F=u(X,b);break}}K(g,F&(j1|u1)?x6:F)}}if(Q.get(J1))for(let h=0;h<P.length;h++){let g=c(P,h);if(u(X,g)&J1)for(let F=h-1;F>=-1;F--){let l=F===-1?C:u(X,c(P,F));if(l&I6){if(l===C6)K(g,Z6);break}}}if(Q.get(C6))for(let h=0;h<P.length;h++){let g=c(P,h);if(u(X,g)&C6)K(g,U1)}if(Q.get($6)||Q.get(k6))for(let h=1;h<P.length-1;h++){let g=c(P,h);if(u(X,g)&($6|k6)){let F=0,l=0;for(let b=h-1;b>=0;b--)if(F=u(X,c(P,b)),!(F&a))break;for(let b=h+1;b<P.length;b++)if(l=u(X,c(P,b)),!(l&a))break;if(F===l&&(u(X,g)===$6?F===J1:F&(J1|Z6)))K(g,F)}}if(Q.get(J1))for(let h=0;h<P.length;h++){let g=c(P,h);if(u(X,g)&J1){for(let F=h-1;F>=0;F--){let l=c(P,F);if(!(u(X,l)&(v6|a)))break;K(l,J1)}for(h++;h<P.length;h++){let F=c(P,h);if(!(u(X,F)&(v6|a|J1)))break;if(u(X,F)!==J1)K(F,J1)}}}if(Q.get(v6)||Q.get($6)||Q.get(k6))for(let h=0;h<P.length;h++){let g=c(P,h);if(u(X,g)&(v6|$6|k6)){K(g,x6);for(let F=h-1;F>=0;F--){let l=c(P,F);if(!(u(X,l)&a))break;K(l,x6)}for(let F=h+1;F<P.length;F++){let l=c(P,F);if(!(u(X,l)&a))break;K(l,x6)}}}if(Q.get(J1)){let h=C;for(let g=0;g<P.length;g++){let F=c(P,g),l=u(X,F);if(l&J1){if(h===q1)K(F,q1)}else if(l&I6)h=l}}if(Q.get(X1)){let h=U1|J1|Z6,g=h|q1,F=[],l=[];for(let b=0;b<P.length;b++){let t=c(P,b);if(u(X,t)&X1){let $1=f1($,t);if(R6($1)!==null)if(l.length<63)l.push({char:$1,seqIndex:b});else break;else{let r=P6($1);if(r!==null)for(let R=l.length-1;R>=0;R--){let d=l[R];if(!d)continue;let O=d.char,B1=O6($1),T=O6(O);if(O===r||B1&&O===P6(B1)||T&&R6(T)===$1){F.push([d.seqIndex,b]),l.length=R;break}}}}}F.sort((b,t)=>b[0]-t[0]);for(let b of F){let[t,$1]=b,z1=!1,r=0;for(let R=t+1;R<$1;R++){let d=c(P,R),O=u(X,d);if(O&g){z1=!0;let B1=O&h?U1:q1;if(B1===_1){r=B1;break}}}if(z1&&!r){r=C;for(let R=t-1;R>=0;R--){let d=c(P,R),O=u(X,d);if(O&g){let B1=O&h?U1:q1;r=B1!==_1?B1:_1;break}}}if(r){if(X[c(P,t)]=r,X[c(P,$1)]=r,r!==_1){for(let R=t+1;R<P.length;R++){let d=c(P,R);if(!(u(X,d)&a)){if(H1(f1($,d))&S6)X[d]=r;break}}for(let R=$1+1;R<P.length;R++){let d=c(P,R);if(!(u(X,d)&a)){if(H1(f1($,d))&S6)X[d]=r;break}}}}}for(let b=0;b<P.length;b++){let t=c(P,b);if(u(X,t)&X1){let $1=b,z1=b,r=C;for(let d=b-1;d>=0;d--){let O=c(P,d);if(u(X,O)&a)$1=d;else{r=u(X,O)&h?U1:q1;break}}let R=n;for(let d=b+1;d<P.length;d++){let O=c(P,d);if(u(X,O)&(X1|a))z1=d;else{R=u(X,O)&h?U1:q1;break}}for(let d=$1;d<=z1;d++)X[c(P,d)]=r===R?r:_1;b=z1}}}}for(let I=U.start;I<=U.end;I++){let P=H[I]??0,C=u(X,I);if(P&1){if(C&(q1|J1|Z6))H[I]++}else if(C&U1)H[I]++;else if(C&(Z6|J1))H[I]+=2;if(C&a)H[I]=I===0?U.level:H[I-1]??U.level;if(I===U.end||H1(f1($,I))&(wQ|g1))for(let n=I;n>=0&&H1(f1($,n))&e1;n--)H[n]=U.level}}return{levels:H,paragraphs:W}}var $8="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 n5=null;function GQ(){if(!n5){let{map:$,reverseMap:Z}=a1($8,!0);if(Z)Z.forEach((J,X)=>{$.set(X,J)});n5=$}}function h6($){return GQ(),n5?.get($)||null}function Z8($,Z,J,X){let Q=$.length,K=Math.max(0,J==null?0:+J),H=Math.min(Q-1,X==null?Q-1:+X),q=[];for(let W of Z.paragraphs){let U=Math.max(K,W.start),z=Math.min(H,W.end);if(U<z){let N=Z.levels.slice(U,z+1);for(let _=z;_>=U;_--){let Y=$[_];if(Y===void 0)break;if(!(H1(Y)&e1))break;N[_-U]=W.level}let w=W.level,j=1/0;for(let _=0;_<N.length;_++){let Y=N[_]??0;if(Y>w)w=Y;if(Y<j)j=Y|1}for(let _=w;_>=j;_--)for(let Y=0;Y<N.length;Y++)if((N[Y]??0)>=_){let E=Y;while(Y+1<N.length){if((N[Y+1]??0)<_)break;Y++}if(Y>E)q.push([E+U,Y+U])}}}return q}function y6($,Z,J,X){let Q=Z8($,Z,J,X),K=[];for(let H=0;H<$.length;H++)K[H]=H;for(let[H,q]of Q){let W=K.slice(H,q+1);for(let U=W.length;U--;){let z=W[U];if(z!==void 0)K[q-U]=z}}return K}function Q8($,Z=4){let J=Z===5?"rtl":Z===4?"ltr":"auto",X=l5($,J);return{levels:X.levels,paragraphs:X.paragraphs}}function EQ($,Z,J=0,X=$.length){return Array.from(y6($,Z,J,X))}function X8($,Z){if($.length===0)return $;let J="x".repeat($.length),X=y6(J,Z,0,$.length),Q=[];for(let K of X)if(K<$.length){let H=$[K];if(H)Q.push(H)}return Q}function J8($){let Z=String.fromCodePoint($),J=h6(Z);return J?J.codePointAt(0)??$:$}function H8($,Z){for(let[J,X]of $.entries()){let Q=Z[J];if(Q===void 0)continue;if(Q&1){let K=J8(X.codepoint);if(K!==X.codepoint)X.codepoint=K}}}var I1={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 VQ($){return H1($)}function BQ($){let Z=String.fromCodePoint($);return(H1(Z)&(I1.R|I1.AL))!==0}function MQ($){let Z=String.fromCodePoint($);return(H1(Z)&I1.L)!==0}function DQ($){for(let Z of $){let J=H1(Z);if(J&I1.L)return 4;if(J&(I1.R|I1.AL))return 5}return 4}function AQ($,Z=4){if($.length===0)return{infos:$,levels:new Uint8Array(0)};let J=$.map((K)=>String.fromCodePoint(K.codepoint)).join(""),X=Q8(J,Z);return H8($,X.levels),{infos:X8($,X),levels:X.levels}}var K8;((T)=>{T[T.BK=0]="BK";T[T.CR=1]="CR";T[T.LF=2]="LF";T[T.CM=3]="CM";T[T.NL=4]="NL";T[T.SG=5]="SG";T[T.WJ=6]="WJ";T[T.ZW=7]="ZW";T[T.GL=8]="GL";T[T.SP=9]="SP";T[T.ZWJ=10]="ZWJ";T[T.B2=11]="B2";T[T.BA=12]="BA";T[T.BB=13]="BB";T[T.HY=14]="HY";T[T.CB=15]="CB";T[T.CL=16]="CL";T[T.CP=17]="CP";T[T.EX=18]="EX";T[T.IN=19]="IN";T[T.NS=20]="NS";T[T.OP=21]="OP";T[T.QU=22]="QU";T[T.IS=23]="IS";T[T.NU=24]="NU";T[T.PO=25]="PO";T[T.PR=26]="PR";T[T.SY=27]="SY";T[T.AI=28]="AI";T[T.AL=29]="AL";T[T.CJ=30]="CJ";T[T.EB=31]="EB";T[T.EM=32]="EM";T[T.H2=33]="H2";T[T.H3=34]="H3";T[T.HL=35]="HL";T[T.ID=36]="ID";T[T.JL=37]="JL";T[T.JV=38]="JV";T[T.JT=39]="JT";T[T.RI=40]="RI";T[T.SA=41]="SA";T[T.XX=42]="XX"})(K8||={});var q8;((H)=>{H[H.Direct=0]="Direct";H[H.Indirect=1]="Indirect";H[H.CombiningIndirect=2]="CombiningIndirect";H[H.CombiningProhibited=3]="CombiningProhibited";H[H.Prohibited=4]="Prohibited";H[H.Explicit=5]="Explicit"})(q8||={});var W8;((X)=>{X[X.NoBreak=0]="NoBreak";X[X.Optional=1]="Optional";X[X.Mandatory=2]="Mandatory"})(W8||={});function U8($){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 LQ($,Z){if($===28)$=29;if($===41)$=29;if($===5)$=29;if($===42)$=29;if($===30)$=20;if(Z===28)Z=29;if(Z===41)Z=29;if(Z===5)Z=29;if(Z===42)Z=29;if(Z===30)Z=20;if($===0)return 5;if($===1&&Z===2)return 4;if($===1||$===2||$===4)return 5;if(Z===0||Z===1||Z===2||Z===4)return 4;if(Z===9||Z===7)return 4;if($===7)return 0;if($===10)return 4;if(Z===3||Z===10){if($!==9)return 4}let J=$,X=Z;if($===3||$===10)J=29;if(Z===3||Z===10)X=29;if($=J,Z=X,$===6||Z===6)return 4;if($===8)return 4;if(Z===8){if($!==9&&$!==12&&$!==14)return 4}if(Z===16||Z===17||Z===18||Z===23||Z===27)return 4;if($===21)return 4;if($===22&&Z===21)return 4;if(($===16||$===17)&&Z===20)return 4;if($===11&&Z===11)return 4;if($===9)return 0;if($===22||Z===22)return 4;if($===15||Z===15)return 0;if(Z===12||Z===14||Z===20)return 4;if($===13)return 4;if($===27&&Z===35)return 4;if(Z===19)return 4;if(($===29||$===35)&&Z===24)return 4;if($===24&&(Z===29||Z===35))return 4;if($===26&&Z===36)return 4;if($===36&&Z===25)return 4;if(($===26||$===25)&&(Z===29||Z===35))return 4;if(($===29||$===35)&&(Z===26||Z===25))return 4;if(($===16||$===17)&&Z===24)return 4;if($===24&&(Z===25||Z===26))return 4;if(($===25||$===26||$===14||$===23||$===24||$===27)&&Z===24)return 4;if($===37){if(Z===37||Z===38||Z===33||Z===34)return 4}if($===38||$===33){if(Z===38||Z===39)return 4}if($===39||$===34){if(Z===39)return 4}if($===37||$===38||$===39||$===33||$===34){if(Z===25)return 4}if(Z===37||Z===38||Z===39||Z===33||Z===34){if($===26)return 4}if(($===29||$===35)&&(Z===29||Z===35))return 4;if($===23&&(Z===29||Z===35))return 4;if(($===29||$===35||$===24)&&Z===21)return 4;if($===17&&(Z===29||Z===35||Z===24))return 4;if($===40&&Z===40)return 4;if($===31&&Z===32)return 4;return 0}function FQ($){let Z=[];for(let J of $)Z.push(J.codePointAt(0)??0);return d5(Z)}function d5($){let Z=$.length,J=[],X=[];for(let Q of $)J.push(U8(Q));X.push(0);for(let Q=1;Q<Z;Q++){let K=J[Q-1],H=J[Q];switch(LQ(K,H)){case 5:X.push(2);break;case 0:X.push(1);break;case 1:if(K===9)X.push(1);else X.push(0);break;default:X.push(0)}}return X.push(2),{breaks:X,classes:J}}function RQ($){let Z=$.map((J)=>J.codepoint);return d5(Z)}function PQ($,Z){for(let J=Z+1;J<$.breaks.length;J++)if($.breaks[J]!==0)return J;return $.breaks.length-1}function OQ($,Z){if(Z<0||Z>=$.breaks.length)return!1;return $.breaks[Z]!==0}function TQ($,Z){if(Z<0||Z>=$.breaks.length)return!1;return $.breaks[Z]===2}function IQ($){let Z=[];for(let J=0;J<$.breaks.length;J++)if($.breaks[J]!==0)Z.push(J);return Z}var z8;((Y)=>{Y[Y.Other=0]="Other";Y[Y.CR=1]="CR";Y[Y.LF=2]="LF";Y[Y.Control=3]="Control";Y[Y.Extend=4]="Extend";Y[Y.ZWJ=5]="ZWJ";Y[Y.Regional_Indicator=6]="Regional_Indicator";Y[Y.Prepend=7]="Prepend";Y[Y.SpacingMark=8]="SpacingMark";Y[Y.L=9]="L";Y[Y.V=10]="V";Y[Y.T=11]="T";Y[Y.LV=12]="LV";Y[Y.LVT=13]="LVT";Y[Y.Extended_Pictographic=14]="Extended_Pictographic"})(z8||={});var N8;((A)=>{A[A.Other=0]="Other";A[A.CR=1]="CR";A[A.LF=2]="LF";A[A.Newline=3]="Newline";A[A.Extend=4]="Extend";A[A.ZWJ=5]="ZWJ";A[A.Regional_Indicator=6]="Regional_Indicator";A[A.Format=7]="Format";A[A.Katakana=8]="Katakana";A[A.Hebrew_Letter=9]="Hebrew_Letter";A[A.ALetter=10]="ALetter";A[A.Single_Quote=11]="Single_Quote";A[A.Double_Quote=12]="Double_Quote";A[A.MidNumLet=13]="MidNumLet";A[A.MidLetter=14]="MidLetter";A[A.MidNum=15]="MidNum";A[A.Numeric=16]="Numeric";A[A.ExtendNumLet=17]="ExtendNumLet";A[A.WSegSpace=18]="WSegSpace";A[A.Extended_Pictographic=19]="Extended_Pictographic"})(N8||={});function i5($){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 w8($){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(i5($)===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 o5($){let Z=$.length,J=[],X=[];for(let H of $)J.push(i5(H));if(Z===0)return{boundaries:X,properties:J};let Q=0,K=!1;for(let H=1;H<Z;H++){let q=J[H-1],W=J[H],U=!0;if(q===1&&W===2)U=!1;else if(q===3||q===1||q===2)U=!0;else if(W===3||W===1||W===2)U=!0;else if(q===9&&(W===9||W===10||W===12||W===13))U=!1;else if((q===12||q===10)&&(W===10||W===11))U=!1;else if((q===13||q===11)&&W===11)U=!1;else if(W===4||W===5)U=!1;else if(W===8)U=!1;else if(q===7)U=!1;else if(K&&q===5&&W===14)U=!1;else if(q===6&&W===6){if(Q%2===1)U=!1}if(W===14)K=!0;else if(W!==4&&W!==5)K=!1;if(W===6)Q++;else Q=0;if(U)X.push(H)}return X.push(Z),{boundaries:X,properties:J}}function _8($){let Z=$.length,J=[],X=[];for(let K of $)J.push(w8(K));if(Z===0)return{boundaries:X,properties:J};X.push(0);let Q=0;for(let K=1;K<Z;K++){let H=J[K-1],q=J[K],W=!0;if(H===1&&q===2)W=!1;else if(H===3||H===1||H===2)W=!0;else if(q===3||q===1||q===2)W=!0;else if(H===5&&q===19)W=!1;else if(H===18&&q===18)W=!1;else if(q===7||q===4||q===5)W=!1;else if((H===10||H===9)&&(q===10||q===9))W=!1;else if((H===10||H===9)&&(q===14||q===13||q===11)){if(K+1<Z){let U=J[K+1];if(U===10||U===9)W=!1}}else if(H===16&&q===16)W=!1;else if((H===10||H===9)&&q===16)W=!1;else if(H===16&&(q===10||q===9))W=!1;else if(H===16&&(q===15||q===13||q===11)){if(K+1<Z&&J[K+1]===16)W=!1}else if(H===8&&q===8)W=!1;else if((H===10||H===9||H===16||H===8||H===17)&&q===17)W=!1;else if(H===17&&(q===10||q===9||q===16||q===8))W=!1;else if(H===6&&q===6){if(Q%2===1)W=!1}if(q===6)Q++;else Q=0;if(W)X.push(K)}return X.push(Z),{boundaries:X,properties:J}}function vQ($){let Z=[],J=[];for(let H of $)Z.push(H.codePointAt(0)??0),J.push(H);let{boundaries:X}=o5(Z),Q=[],K=0;for(let H of X){if(H>K)Q.push(J.slice(K,H).join(""));K=H}return Q}function kQ($){let Z=[],J=[];for(let H of $)Z.push(H.codePointAt(0)??0),J.push(H);let{boundaries:X,properties:Q}=_8(Z),K=[];for(let H=0;H<X.length-1;H++){let q=X[H],W=X[H+1],U=!1;for(let z=q;z<W;z++){let N=Q[z];if(N!==18&&N!==1&&N!==2&&N!==3){U=!0;break}}if(U)K.push(J.slice(q,W).join(""))}return K}function xQ($){let Z=[];for(let X of $)Z.push(X.codePointAt(0)??0);let{boundaries:J}=o5(Z);return J.length}var j8;((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"})(j8||={});var Y8=[{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 Q6($){let Z=0,J=Y8.length-1;while(Z<=J){let X=Z+J>>>1,Q=Y8[X];if($<Q.start)J=X-1;else if($>Q.end)Z=X+1;else return Q.script}return"Zzzz"}function SQ($){let Z=new Map;for(let Q of $){let K=Q.codePointAt(0)??0,H=Q6(K);if(H==="Zyyy"||H==="Zinh")continue;Z.set(H,(Z.get(H)??0)+1)}if(Z.size===0)return"Zyyy";let J="Zyyy",X=0;for(let[Q,K]of Z)if(K>X)X=K,J=Q;return J}function CQ($){let Z=new Set;for(let J of $){let X=J.codePointAt(0)??0,Q=Q6(X);Z.add(Q)}return Array.from(Z)}function mQ($,Z){for(let J of $){let X=J.codePointAt(0)??0,Q=Q6(X);if(Q!==Z&&Q!=="Zyyy"&&Q!=="Zinh")return!1}return!0}function hQ($){let Z=[];if($.length===0)return Z;let J=null,X=0,Q=0,K=[];for(let H of $)K.push(H);for(let H=0;H<K.length;H++){let W=K[H].codePointAt(0)??0,U=Q6(W);if(U==="Zyyy"||U==="Zinh"){if(J!==null)U=J}if(J===null)J=U,X=H;else if(U!==J&&U!=="Zyyy"&&U!=="Zinh")Z.push({script:J,start:X,end:H,text:K.slice(X,H).join("")}),J=U,X=H}if(J!==null)Z.push({script:J,start:X,end:K.length,text:K.slice(X).join("")});return Z}function yQ($){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 bQ($){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 gQ($){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"}export{p$ as verticalLayoutFeatures,V7 as verticalKanaAlternates,G7 as verticalForms,E7 as verticalAlternatesRotation,KZ as traditionalForms,$Z as thirdWidthForms,l1 as tagToString,M as tag,b$ as tabularFigures,x$ as swash,l$ as superscript,n$ as subscript,R$ as stylisticSets,w7 as stylisticSet,k$ as stylisticAlternates,O$ as standardLigatures,kQ as splitWords,vQ as splitGraphemes,Y7 as smallCaps,f$ as slashedZero,HZ as simplifiedForms,z$ as shapedTextToSVGWithVariation,q$ as shapedTextToSVG,vZ as shape,d$ as scientificInferiors,s$ as ruby,T9 as resolveDupeGlyph,D6 as reorderMarks,X8 as reorderGlyphs,U$ as renderShapedTextWithVariation,K$ as renderShapedText,e$ as quarterWidthForms,r$ as proportionalWidthForms,y$ as proportionalFigures,b6 as processRearrangement,u6 as processLigature,f6 as processInsertion,g6 as processContextual,AQ as processBidi,S$ as petiteCaps,B6 as pathToSVG,M6 as pathToCanvas,_5 as parseFeat,t6 as parseCpal,s6 as parseColr,u$ as ordinals,R0 as openTypeTagToAat,m$ as oldstyleFigures,n6 as normalizeAxisValue,A$ as normalize,TQ as mustBreakAt,C0 as matchAxisValue,h$ as liningFigures,c$ as kerning,Q$ as justifyParagraph,K7 as justify,XZ as jis90Forms,QZ as jis83Forms,ZZ as jis78Forms,JZ as jis2004Forms,b2 as isVariationIndexTable,mQ as isScript,BQ as isRTL,x0 as isOlderSiblingFont,MQ as isLTR,M0 as isExclusiveFeature,k0 as isElidableAxisValue,bQ as isComplexScript,r8 as isColrV1,I$ as historicalLigatures,f0 as hasVertOriginY,m0 as hasSvgGlyph,L0 as hasSettingValue,z4 as hasGlyphOutline,E0 as hasGlyphBitmap,o8 as hasColorGlyph,R8 as hasColorBitmap,t$ as halfWidthForms,H$ as glyphToSVG,W$ as glyphBufferToShapedGlyphs,N0 as getXHeightDelta,w8 as getWordBreakProperty,o0 as getVorgDelta,EQ as getVisualOrder,g0 as getVerticalMetrics,u0 as getVertOriginY,d0 as getTsbDelta,a9 as getTrackingValue,N$ as getTextWidth,h0 as getSvgGlyphIds,p9 as getSvgDocument,X$ as getSubstitutedLookups,O9 as getStrikeForPpem,A0 as getSettingByValue,CQ as getScripts,yQ as getScriptTag,hQ as getScriptRuns,gQ as getScriptDirection,Q6 as getScript,j0 as getSbixGlyphBitmap,A7 as getOrCreateShapePlan,J8 as getMirror,c1 as getMetricDelta,U8 as getLineBreakClass,e8 as getLayerPaint,o4 as getKerxValue,W5 as getKernValue,z0 as getHDescenderDelta,U0 as getHAscenderDelta,i5 as getGraphemeBreakProperty,V5 as getGlyphPathWithVariation,V6 as getGlyphPath,W6 as getGlyphLocation,U4 as getGlyphDelta,V0 as getFeature,Q8 as getEmbeddings,g2 as getDeviceDelta,D0 as getDefaultSetting,E1 as getCombiningClass,t8 as getColorVariationDelta,V2 as getColorPaint,E2 as getColorLayers,P8 as getColorBitmapSizes,$4 as getColor,s8 as getClipBox,VQ as getCharType,t0 as getCffGlyphWidth,w0 as getCapHeightDelta,i0 as getBsbDelta,L8 as getBitmapGlyph,I0 as getAxisValuesForAxis,S0 as getAxisValueNumber,O0 as getAxisRecord,T0 as getAxisIndex,G0 as getAvailablePpemSizes,B0 as getAllFeatures,IQ as getAllBreakOpportunities,i6 as getAdvanceWidthDelta,n0 as getAdvanceHeightDelta,a$ as fullWidthForms,g$ as fractions,_8 as findWordBoundaries,PQ as findNextBreak,s1 as findMatchingFeatureVariation,o5 as findGraphemeBoundaries,v0 as findAxisValueByNameId,qZ as features,B7 as feature,c0 as executeCffCharString,p0 as executeCff2CharString,q7 as evaluateConditionSet,T$ as discretionaryLigatures,SQ as detectScript,DQ as detectDirection,A6 as decompose,D5 as createShapePlan,w$ as createPath2D,V8 as createFace,xQ as countGraphemes,E5 as contourToPath,v$ as contextualAlternates,WZ as combineFeatures,Z4 as colorToRgba,Q4 as colorToHex,P$ as characterVariants,_7 as characterVariant,i$ as caseSensitiveForms,j7 as capsToSmallCaps,o$ as capitalSpacing,OQ as canBreakAt,q6 as calculateTupleScalar,E6 as calculateLineWidth,Z$ as breakIntoLines,b0 as applyTracking,z5 as applyNonContextual,H8 as applyMirroring,J$ as applyFeatureVariations,B5 as applyFallbackMarkPositioning,M5 as applyFallbackKerning,G4 as applyDeviceAdjustment,a5 as applyAvarMapping,l6 as applyAvar,d5 as analyzeLineBreaksFromCodepoints,RQ as analyzeLineBreaksForGlyphs,FQ as analyzeLineBreaks,C$ as allSmallCaps,F0 as aatToOpenTypeTag,N8 as WordBreakProperty,S9 as VerticalPositionSetting,f9 as UpperCaseSetting,s5 as UnicodeBuffer,m as Tags,b9 as StylisticAlternativesSetting,l9 as SmartSwashSetting,j8 as Script,w5 as SbixGraphicType,N1 as Reader,B2 as PaletteType,Y2 as PaintFormat,m9 as NumberSpacingSetting,C9 as NumberCaseSetting,N7 as NormalizationMode,o1 as MvarTags,U5 as MorxSubtableType,u9 as LowerCaseSetting,K8 as LineBreakClass,x9 as LigatureSetting,H7 as JustifyMode,z8 as GraphemeBreakProperty,H6 as GlyphClass,F1 as GlyphBuffer,h9 as FractionsSetting,p1 as Font,k9 as FeatureType,fQ as FeatureTags,i9 as FeatureFlags,R1 as Face,j2 as Extend,J6 as Direction,n9 as DiacriticsSetting,g9 as ContextualAlternativesSetting,G2 as CompositeMode,c5 as ClusterLevel,d9 as CharacterShapeSetting,D8 as CbdtImageFormat,y9 as CaseSensitiveLayoutSetting,p5 as BufferFlags,W8 as BreakOpportunity,q8 as BreakAction,I1 as BidiType,Y5 as AxisValueFlags};
|