@univerjs/engine-render 0.1.8 → 0.1.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/cjs/index.js +2 -2
- package/lib/es/index.js +6938 -6543
- package/lib/types/base-object.d.ts +3 -2
- package/lib/types/basics/i-document-skeleton-cached.d.ts +1 -0
- package/lib/types/basics/interfaces.d.ts +1 -0
- package/lib/types/components/component.d.ts +1 -0
- package/lib/types/components/docs/doc-background.d.ts +13 -0
- package/lib/types/components/docs/doc-component.d.ts +12 -2
- package/lib/types/components/docs/document.d.ts +3 -13
- package/lib/types/components/docs/layout/block/paragraph/layout-ruler.d.ts +2 -1
- package/lib/types/components/docs/layout/block/paragraph/layout.d.ts +3 -2
- package/lib/types/components/docs/layout/block/paragraph/linebreaking.d.ts +3 -3
- package/lib/types/components/docs/layout/block/section.d.ts +4 -2
- package/lib/types/components/docs/layout/doc-skeleton.d.ts +3 -3
- package/lib/types/components/docs/layout/model/glyph.d.ts +1 -0
- package/lib/types/components/docs/layout/model/line.d.ts +2 -1
- package/lib/types/components/docs/layout/model/page.d.ts +2 -1
- package/lib/types/components/docs/layout/tools.d.ts +31 -5
- package/lib/types/components/extension.d.ts +1 -0
- package/lib/types/components/sheets/sheet-component.d.ts +4 -0
- package/lib/types/components/sheets/sheet-skeleton.d.ts +4 -0
- package/lib/types/components/sheets/spreadsheet.d.ts +4 -3
- package/lib/types/components/skeleton.d.ts +1 -0
- package/lib/types/engine.d.ts +0 -1
- package/lib/types/group.d.ts +1 -0
- package/lib/types/index.d.ts +1 -0
- package/lib/types/layer.d.ts +2 -0
- package/lib/types/scene-viewer.d.ts +1 -1
- package/lib/types/scene.input-manager.d.ts +4 -0
- package/lib/types/shape/index.d.ts +0 -1
- package/lib/umd/index.js +2 -2
- package/package.json +4 -4
- package/lib/types/components/docs/layout/block/paragraph/inline-drawing.d.ts +0 -5
- package/lib/types/shape/selection.d.ts +0 -17
package/lib/umd/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
(function(y,g){typeof exports=="object"&&typeof module<"u"?g(exports,require("@univerjs/core"),require("@wendellhu/redi"),require("rxjs")):typeof define=="function"&&define.amd?define(["exports","@univerjs/core","@wendellhu/redi","rxjs"],g):(y=typeof globalThis<"u"?globalThis:y||self,g(y.UniverEngineRender={},y.UniverCore,y["@wendellhu/redi"],y.rxjs))})(this,function(y,g,E1,u1){"use strict";var iu=Object.defineProperty;var au=(y,g,E1)=>g in y?iu(y,g,{enumerable:!0,configurable:!0,writable:!0,value:E1}):y[g]=E1;var d=(y,g,E1)=>(au(y,typeof g!="symbol"?g+"":g,E1),E1);var u0;var Tt=(r=>(r.RECT="rect",r.CIRCLE="circle",r.PATH="path",r))(Tt||{}),X1=(r=>(r.PointerMove="PointerMove",r.PointerDown="PointerDown",r.PointerUp="PointerUp",r.PointerOut="PointerOut",r.PointerLeave="PointerLeave",r.PointerOver="PointerOver",r.PointerEnter="PointerEnter",r.wheel="MouseWheel",r.KeyDown="KeyDown",r.KeyUp="KeyUp",r))(X1||{}),h0=(r=>(r[r.XY=0]="XY",r[r.X=1]="X",r[r.Y=2]="Y",r))(h0||{});const xt=1,i2='"Helvetica Neue", Helvetica, Arial, "PingFang SC", "Hiragino Sans GB", "Heiti SC", "Microsoft YaHei", "WenQuanYi Micro Hei", sans-serif',f0={lines:[],drawings:new Map,height:0,st:0,ed:0,marginLeft:0},a3={...f0,marginTop:20},o3={...f0,marginBottom:20},Bt=1,d0=14;var d1=(r=>(r.DEFAULT="default",r.AUTO="auto",r.CROSSHAIR="crosshair",r.POINTER="pointer",r.MOVE="move",r.EAST_RESIZE="e-resize",r.NORTH_EAST_RESIZE="ne-resize",r.NORTH_WEST_RESIZE="nw-resize",r.NORTH_RESIZE="n-resize",r.SOUTH_EAST_RESIZE="se-resize",r.SOUTH_WEST_RESIZE="sw-resize",r.SOUTH_RESIZE="s-resize",r.WEST_RESIZE="w-resize",r.TEXT="text",r.WAIT="wait",r.HELP="help",r.CELL="cell",r.NONE="none",r.VERTICAL_TEXT="vertical-text",r.NO_DROP="no-drop",r.GRAB="grab",r.GRABBING="grabbing",r.ALL_SCROLL="all-scroll",r.COLUMN_RESIZE="col-resize",r.ROW_RESIZE="row-resize",r.PROGRESS="progress",r.NOT_ALLOWED="not-allowed",r.ZOOM_IN="zoom-in",r.ZOOM_OUT="zoom-out",r))(d1||{}),_0=(r=>(r[r.noClip=0]="noClip",r[r.DOC_SIZE=1]="DOC_SIZE",r[r.CONTENT_SIZE_LEFT=2]="CONTENT_SIZE_LEFT",r[r.CONTENT_SIZE_CENTER=3]="CONTENT_SIZE_CENTER",r[r.CONTENT_SIZE_Right=4]="CONTENT_SIZE_Right",r))(_0||{});const he="rgb(0,0,0)";var q=(r=>(r.TOP="t",r.BOTTOM="b",r.LEFT="l",r.RIGHT="r",r.TL_BR="tl_br",r.TL_BC="tl_bc",r.TL_MR="tl_mr",r.BL_TR="bl_tr",r.ML_TR="ml_tr",r.BC_TR="bc_tr",r))(q||{}),a2=(r=>(r[r.UP=0]="UP",r[r.DOWN=1]="DOWN",r))(a2||{}),K=(r=>(r.ENGINE="Engine",r.SCENE="Scene",r.BASE_OBJECT="BaseObject",r.SCENE_VIEWER="SceneViewer",r.CANVAS="Canvas",r.VIEWPORT="Viewport",r.LAYER="Layer",r.GROUP="Group",r))(K||{});const u3=1e3,g0=2e3,g1=.5;var h1=(r=>(r[r.translate=0]="translate",r[r.resize=1]="resize",r[r.scale=2]="scale",r[r.skew=3]="skew",r[r.flip=4]="flip",r[r.all=5]="all",r))(h1||{});class l3{isEmpty(){return this._isEmpty()}toString(t){if(this.isEmpty())throw new Error("Output is empty.");return this._toString(t)}toRegExp(t){return new RegExp(this.toString(t),t)}}class W1 extends l3{constructor(...t){super(),this.data=[];for(const e of t)e instanceof W1?this.data.push(...e.data):this.data.push(h3(e));this._unique()}union(...t){return new W1(this,...t)}subtract(...t){const e=this.data.slice(),n=[];let s=0;const{data:i}=new W1(...t);for(;e.length!==0;){const a=e.shift(),[o,u]=a;let l;do{l=!0;const c=i[s];if(c===void 0){n.push(a);break}const[h,f]=c;f<o?(l=!1,s++):u<h?n.push(a):h<=o&&f<u?(s++,e.unshift([f+1,u])):o<h&&f<u?(s++,n.push([o,h-1]),e.unshift([f+1,u])):o<h&&u<=f&&n.push([o,h-1])}while(!l)}return new W1(...n)}intersect(...t){return this.subtract(this.subtract(...t))}_isEmpty(){return this.data.length===0}_toString(t){return d3(this.data,t)}_unique(){this.data.sort(f3);const t=[];let e=null;for(const n of this.data)e===null||e[1]+1<n[0]?(t.push(n),e=n):(t.splice(-1,1,[Math.min(n[0],e[0]),Math.max(n[1],e[1])]),e=t[t.length-1]);this.data=t}}const U2=(...r)=>new W1(...r);function c3(r){if(r.length!==1){const t=`${r.length} (${JSON.stringify(r)})`;throw new Error(`Expected length = 1, but received ${t}.`)}return r.charCodeAt(0)}function h3(r){if(typeof r=="number"&&(r<0||r>1114111))throw new Error(`Invalid unicode code point detected: ${r<0?r:`0x${r.toString(16)}`}`);const[t]=[r].map(e=>typeof e!="object"?[e,e]:e).map(e=>e.map(n=>typeof n=="string"?c3(n):n));return t}function f3(r,t){return r[0]-t[0]}function d3(r,t=""){if(t.includes("u"))return D0(r,!0);const{normal:e,surrogate:n}=g3(r),s=[];return e.length!==0&&s.push(D0(e,!1)),s.push(..._3(n)),s.join("|")}function D0(r,t){return`[${r.map(([n,s])=>n===s?o2(n,t):`${o2(n,t)}-${o2(s,t)}`).join("")}]`}function _3(r){const t=[];if(r.entire.data.length!==0){const e=r.entire.toString(),n=`[${[56320,57343].map(s=>o2(s,!1)).join("-")}]`;t.push(`${e}${n}`)}for(const{h:e,l:n}of r.partial){const s=o2(e,!1),i=n.toString();t.push(`${s}${i}`)}return t}function g3(r){const t=[],e=[];for(let n=0;n<r.length;n++){const s=r[n],[i,a]=s;if(i>=65536){e.push(...r.slice(n));break}if(a>=65536){t.push([i,65535]),e.push([65536,a],...r.slice(n+1));break}t.push(s)}return{normal:t,surrogate:D3(e)}}function D3(r){const t=[],e=[];for(const[i,a]of r){const o=p0(i),u=p0(a);if(o.h===u.h){s(o.h,o.l,u.l);continue}o.l===56320?n(o.h):s(o.h,o.l,57343);for(let l=o.h+1;l<u.h;l++)n(l);u.l===57343?n(u.h):s(u.h,56320,u.l)}return{entire:new W1(...t),partial:e.map(({h:i,l:a})=>({h:i,l:new W1(...a)}))};function n(i){t.push(i)}function s(i,a,o){const u=e[e.length-1];u!==void 0&&u.h===i?u.l.push([a,o]):e.push({h:i,l:[[a,o]]})}}function p0(r){return{h:Math.floor((r-65536)/1024)+55296,l:(r-65536)%1024+56320}}function o2(r,t){const e=r.toString(16);return t?`\\u{${e}}`:`\\u${"0".repeat(4-e.length)}${e}`}const p3=Object.freeze(Object.defineProperty({__proto__:null,Bidi_Class:Object.freeze(Object.defineProperty({__proto__:null,Arabic_Letter:[1544,1547,1549,[1563,1610],[1645,1647],[1649,1749],[1765,1766],[1774,1775],[1786,1805],[1807,1808],[1810,1839],[1869,1957],1969,[2144,2154],[2160,2190],[2208,2249],[64336,64450],[64467,64829],[64848,64911],[64914,64967],[65008,65020],[65136,65140],[65142,65276],[68864,68899],[69424,69445],[69457,69465],[126065,126132],[126209,126269],[126464,126467],[126469,126495],[126497,126498],126500,126503,[126505,126514],[126516,126519],126521,126523,126530,126535,126537,126539,[126541,126543],[126545,126546],126548,126551,126553,126555,126557,126559,[126561,126562],126564,[126567,126570],[126572,126578],[126580,126583],[126585,126588],126590,[126592,126601],[126603,126619],[126625,126627],[126629,126633],[126635,126651]],Arabic_Number:[[1536,1541],[1632,1641],[1643,1644],1757,[2192,2193],2274,[68912,68921],[69216,69246]],Boundary_Neutral:[[0,8],[14,27],[127,132],[134,159],173,6158,[8203,8205],[8288,8292],[8298,8303],65279,[113824,113827],[119155,119162],917505,[917536,917631]],Common_Separator:[44,[46,47],58,160,1548,8239,8260,65104,65106,65109,65292,[65294,65295],65306],European_Number:[[48,57],[178,179],185,[1776,1785],8304,[8308,8313],[8320,8329],[9352,9371],[65296,65305],[66273,66299],[120782,120831],[127232,127242],[130032,130041]],European_Separator:[43,45,[8314,8315],[8330,8331],8722,64297,[65122,65123],65291,65293],European_Terminator:[[35,37],[162,165],[176,177],1423,[1545,1546],1642,[2546,2547],2555,2801,3065,3647,6107,[8240,8244],[8352,8384],8494,8723,[43064,43065],65119,[65129,65130],[65283,65285],[65504,65505],[65509,65510],[73693,73696],123647],First_Strong_Isolate:[8296],Left_To_Right:[[65,90],[97,122],170,181,186,[192,214],[216,246],[248,696],[699,705],[720,721],[736,740],750,[880,883],[886,887],[890,893],895,902,[904,906],908,[910,929],[931,1013],[1015,1154],[1162,1327],[1329,1366],[1369,1417],[2307,2361],2363,[2365,2368],[2377,2380],[2382,2384],[2392,2401],[2404,2432],[2434,2435],[2437,2444],[2447,2448],[2451,2472],[2474,2480],2482,[2486,2489],[2493,2496],[2503,2504],[2507,2508],2510,2519,[2524,2525],[2527,2529],[2534,2545],[2548,2554],[2556,2557],2563,[2565,2570],[2575,2576],[2579,2600],[2602,2608],[2610,2611],[2613,2614],[2616,2617],[2622,2624],[2649,2652],2654,[2662,2671],[2674,2676],2678,2691,[2693,2701],[2703,2705],[2707,2728],[2730,2736],[2738,2739],[2741,2745],[2749,2752],2761,[2763,2764],2768,[2784,2785],[2790,2800],2809,[2818,2819],[2821,2828],[2831,2832],[2835,2856],[2858,2864],[2866,2867],[2869,2873],[2877,2878],2880,[2887,2888],[2891,2892],2903,[2908,2909],[2911,2913],[2918,2935],2947,[2949,2954],[2958,2960],[2962,2965],[2969,2970],2972,[2974,2975],[2979,2980],[2984,2986],[2990,3001],[3006,3007],[3009,3010],[3014,3016],[3018,3020],3024,3031,[3046,3058],[3073,3075],[3077,3084],[3086,3088],[3090,3112],[3114,3129],3133,[3137,3140],[3160,3162],3165,[3168,3169],[3174,3183],3191,[3199,3200],[3202,3212],[3214,3216],[3218,3240],[3242,3251],[3253,3257],[3261,3268],[3270,3272],[3274,3275],[3285,3286],[3293,3294],[3296,3297],[3302,3311],[3313,3315],[3330,3340],[3342,3344],[3346,3386],[3389,3392],[3398,3400],[3402,3404],[3406,3407],[3412,3425],[3430,3455],[3458,3459],[3461,3478],[3482,3505],[3507,3515],3517,[3520,3526],[3535,3537],[3544,3551],[3558,3567],[3570,3572],[3585,3632],[3634,3635],[3648,3654],[3663,3675],[3713,3714],3716,[3718,3722],[3724,3747],3749,[3751,3760],[3762,3763],3773,[3776,3780],3782,[3792,3801],[3804,3807],[3840,3863],[3866,3892],3894,3896,[3902,3911],[3913,3948],3967,3973,[3976,3980],[4030,4037],[4039,4044],[4046,4058],[4096,4140],4145,4152,[4155,4156],[4159,4183],[4186,4189],[4193,4208],[4213,4225],[4227,4228],[4231,4236],[4238,4252],[4254,4293],4295,4301,[4304,4680],[4682,4685],[4688,4694],4696,[4698,4701],[4704,4744],[4746,4749],[4752,4784],[4786,4789],[4792,4798],4800,[4802,4805],[4808,4822],[4824,4880],[4882,4885],[4888,4954],[4960,4988],[4992,5007],[5024,5109],[5112,5117],[5121,5759],[5761,5786],[5792,5880],[5888,5905],5909,[5919,5937],[5940,5942],[5952,5969],[5984,5996],[5998,6e3],[6016,6067],6070,[6078,6085],[6087,6088],[6100,6106],6108,[6112,6121],[6160,6169],[6176,6264],[6272,6276],[6279,6312],6314,[6320,6389],[6400,6430],[6435,6438],[6441,6443],[6448,6449],[6451,6456],[6470,6509],[6512,6516],[6528,6571],[6576,6601],[6608,6618],[6656,6678],[6681,6682],[6686,6741],6743,6753,[6755,6756],[6765,6770],[6784,6793],[6800,6809],[6816,6829],[6916,6963],6965,6971,[6973,6977],[6979,6988],[6992,7018],[7028,7038],[7042,7073],[7078,7079],7082,[7086,7141],7143,[7146,7148],7150,[7154,7155],[7164,7211],[7220,7221],[7227,7241],[7245,7304],[7312,7354],[7357,7367],7379,7393,[7401,7404],[7406,7411],[7413,7415],7418,[7424,7615],[7680,7957],[7960,7965],[7968,8005],[8008,8013],[8016,8023],8025,8027,8029,[8031,8061],[8064,8116],[8118,8124],8126,[8130,8132],[8134,8140],[8144,8147],[8150,8155],[8160,8172],[8178,8180],[8182,8188],8206,8305,8319,[8336,8348],8450,8455,[8458,8467],8469,[8473,8477],8484,8486,8488,[8490,8493],[8495,8505],[8508,8511],[8517,8521],[8526,8527],[8544,8584],[9014,9082],9109,[9372,9449],9900,[10240,10495],[11264,11492],[11499,11502],[11506,11507],[11520,11557],11559,11565,[11568,11623],[11631,11632],[11648,11670],[11680,11686],[11688,11694],[11696,11702],[11704,11710],[11712,11718],[11720,11726],[11728,11734],[11736,11742],[12293,12295],[12321,12329],[12334,12335],[12337,12341],[12344,12348],[12353,12438],[12445,12447],[12449,12538],[12540,12543],[12549,12591],[12593,12686],[12688,12735],[12784,12828],[12832,12879],[12896,12923],[12927,12976],[12992,13003],[13008,13174],[13179,13277],[13280,13310],[13312,19903],[19968,42124],[42192,42508],[42512,42539],[42560,42606],[42624,42653],[42656,42735],[42738,42743],[42786,42887],[42889,42954],[42960,42961],42963,[42965,42969],[42994,43009],[43011,43013],[43015,43018],[43020,43044],43047,[43056,43063],[43072,43123],[43136,43203],[43214,43225],[43250,43262],[43264,43301],[43310,43334],[43346,43347],[43359,43388],[43395,43442],[43444,43445],[43450,43451],[43454,43469],[43471,43481],[43486,43492],[43494,43518],[43520,43560],[43567,43568],[43571,43572],[43584,43586],[43588,43595],43597,[43600,43609],[43612,43643],[43645,43695],43697,[43701,43702],[43705,43709],43712,43714,[43739,43755],[43758,43765],[43777,43782],[43785,43790],[43793,43798],[43808,43814],[43816,43822],[43824,43881],[43888,44004],[44006,44007],[44009,44012],[44016,44025],[44032,55203],[55216,55238],[55243,55291],[55296,64109],[64112,64217],[64256,64262],[64275,64279],[65313,65338],[65345,65370],[65382,65470],[65474,65479],[65482,65487],[65490,65495],[65498,65500],[65536,65547],[65549,65574],[65576,65594],[65596,65597],[65599,65613],[65616,65629],[65664,65786],65792,65794,[65799,65843],[65847,65855],[65933,65934],[66e3,66044],[66176,66204],[66208,66256],[66304,66339],[66349,66378],[66384,66421],[66432,66461],[66463,66499],[66504,66517],[66560,66717],[66720,66729],[66736,66771],[66776,66811],[66816,66855],[66864,66915],[66927,66938],[66940,66954],[66956,66962],[66964,66965],[66967,66977],[66979,66993],[66995,67001],[67003,67004],[67072,67382],[67392,67413],[67424,67431],[67456,67461],[67463,67504],[67506,67514],69632,[69634,69687],[69703,69709],[69734,69743],[69745,69746],69749,[69762,69810],[69815,69816],[69819,69825],69837,[69840,69864],[69872,69881],[69891,69926],69932,[69942,69959],[69968,70002],[70004,70006],[70018,70069],[70079,70088],[70093,70094],[70096,70111],[70113,70132],[70144,70161],[70163,70190],[70194,70195],70197,[70200,70205],[70207,70208],[70272,70278],70280,[70282,70285],[70287,70301],[70303,70313],[70320,70366],[70368,70370],[70384,70393],[70402,70403],[70405,70412],[70415,70416],[70419,70440],[70442,70448],[70450,70451],[70453,70457],[70461,70463],[70465,70468],[70471,70472],[70475,70477],70480,70487,[70493,70499],[70656,70711],[70720,70721],70725,[70727,70747],70749,[70751,70753],[70784,70834],70841,[70843,70846],70849,[70852,70855],[70864,70873],[71040,71089],[71096,71099],71102,[71105,71131],[71168,71218],[71227,71228],71230,[71233,71236],[71248,71257],[71296,71338],71340,[71342,71343],71350,[71352,71353],[71360,71369],[71424,71450],[71456,71457],71462,[71472,71494],[71680,71726],71736,71739,[71840,71922],[71935,71942],71945,[71948,71955],[71957,71958],[71960,71989],[71991,71992],71997,[71999,72002],[72004,72006],[72016,72025],[72096,72103],[72106,72147],[72156,72159],[72161,72164],72192,[72199,72200],[72203,72242],[72249,72250],[72255,72262],72272,[72279,72280],[72284,72329],72343,[72346,72354],[72368,72440],[72448,72457],[72704,72712],[72714,72751],[72766,72773],[72784,72812],[72816,72847],72873,72881,72884,[72960,72966],[72968,72969],[72971,73008],73030,[73040,73049],[73056,73061],[73063,73064],[73066,73102],[73107,73108],73110,73112,[73120,73129],[73440,73458],[73461,73464],[73474,73488],[73490,73525],[73534,73535],73537,[73539,73561],73648,[73664,73684],[73727,74649],[74752,74862],[74864,74868],[74880,75075],[77712,77810],[77824,78911],[78913,78918],[82944,83526],[92160,92728],[92736,92766],[92768,92777],[92782,92862],[92864,92873],[92880,92909],92917,[92928,92975],[92983,92997],[93008,93017],[93019,93025],[93027,93047],[93053,93071],[93760,93850],[93952,94026],[94032,94087],[94099,94111],[94176,94177],94179,[94192,94193],[94208,100343],[100352,101589],[101632,101640],[110576,110579],[110581,110587],[110589,110590],[110592,110882],110898,[110928,110930],110933,[110948,110951],[110960,111355],[113664,113770],[113776,113788],[113792,113800],[113808,113817],113820,113823,[118608,118723],[118784,119029],[119040,119078],[119081,119142],[119146,119154],[119171,119172],[119180,119209],[119214,119272],[119488,119507],[119520,119539],[119648,119672],[119808,119892],[119894,119964],[119966,119967],119970,[119973,119974],[119977,119980],[119982,119993],119995,[119997,120003],[120005,120069],[120071,120074],[120077,120084],[120086,120092],[120094,120121],[120123,120126],[120128,120132],120134,[120138,120144],[120146,120485],[120488,120538],[120540,120596],[120598,120654],[120656,120712],[120714,120770],[120772,120779],[120832,121343],[121399,121402],[121453,121460],[121462,121475],[121477,121483],[122624,122654],[122661,122666],[122928,122989],[123136,123180],[123191,123197],[123200,123209],[123214,123215],[123536,123565],[123584,123627],[123632,123641],[124112,124139],[124144,124153],[124896,124902],[124904,124907],[124909,124910],[124912,124926],[127248,127278],[127280,127337],[127344,127404],[127462,127490],[127504,127547],[127552,127560],[127568,127569],[131072,173791],[173824,177977],[177984,178205],[178208,183969],[183984,191456],[194560,195101],[196608,201546],[201552,205743],[983040,1048573],[1048576,1114109]],Left_To_Right_Embedding:[8234],Left_To_Right_Isolate:[8294],Left_To_Right_Override:[8237],Nonspacing_Mark:[[768,879],[1155,1161],[1425,1469],1471,[1473,1474],[1476,1477],1479,[1552,1562],[1611,1631],1648,[1750,1756],[1759,1764],[1767,1768],[1770,1773],1809,[1840,1866],[1958,1968],[2027,2035],2045,[2070,2073],[2075,2083],[2085,2087],[2089,2093],[2137,2139],[2200,2207],[2250,2273],[2275,2306],2362,2364,[2369,2376],2381,[2385,2391],[2402,2403],2433,2492,[2497,2500],2509,[2530,2531],2558,[2561,2562],2620,[2625,2626],[2631,2632],[2635,2637],2641,[2672,2673],2677,[2689,2690],2748,[2753,2757],[2759,2760],2765,[2786,2787],[2810,2815],2817,2876,2879,[2881,2884],2893,[2901,2902],[2914,2915],2946,3008,3021,3072,3076,3132,[3134,3136],[3142,3144],[3146,3149],[3157,3158],[3170,3171],3201,3260,[3276,3277],[3298,3299],[3328,3329],[3387,3388],[3393,3396],3405,[3426,3427],3457,3530,[3538,3540],3542,3633,[3636,3642],[3655,3662],3761,[3764,3772],[3784,3790],[3864,3865],3893,3895,3897,[3953,3966],[3968,3972],[3974,3975],[3981,3991],[3993,4028],4038,[4141,4144],[4146,4151],[4153,4154],[4157,4158],[4184,4185],[4190,4192],[4209,4212],4226,[4229,4230],4237,4253,[4957,4959],[5906,5908],[5938,5939],[5970,5971],[6002,6003],[6068,6069],[6071,6077],6086,[6089,6099],6109,[6155,6157],6159,[6277,6278],6313,[6432,6434],[6439,6440],6450,[6457,6459],[6679,6680],6683,6742,[6744,6750],6752,6754,[6757,6764],[6771,6780],6783,[6832,6862],[6912,6915],6964,[6966,6970],6972,6978,[7019,7027],[7040,7041],[7074,7077],[7080,7081],[7083,7085],7142,[7144,7145],7149,[7151,7153],[7212,7219],[7222,7223],[7376,7378],[7380,7392],[7394,7400],7405,7412,[7416,7417],[7616,7679],[8400,8432],[11503,11505],11647,[11744,11775],[12330,12333],[12441,12442],[42607,42610],[42612,42621],[42654,42655],[42736,42737],43010,43014,43019,[43045,43046],43052,[43204,43205],[43232,43249],43263,[43302,43309],[43335,43345],[43392,43394],43443,[43446,43449],[43452,43453],43493,[43561,43566],[43569,43570],[43573,43574],43587,43596,43644,43696,[43698,43700],[43703,43704],[43710,43711],43713,[43756,43757],43766,44005,44008,44013,64286,[65024,65039],[65056,65071],66045,66272,[66422,66426],[68097,68099],[68101,68102],[68108,68111],[68152,68154],68159,[68325,68326],[68900,68903],[69291,69292],[69373,69375],[69446,69456],[69506,69509],69633,[69688,69702],69744,[69747,69748],[69759,69761],[69811,69814],[69817,69818],69826,[69888,69890],[69927,69931],[69933,69940],70003,[70016,70017],[70070,70078],[70089,70092],70095,[70191,70193],70196,[70198,70199],70206,70209,70367,[70371,70378],[70400,70401],[70459,70460],70464,[70502,70508],[70512,70516],[70712,70719],[70722,70724],70726,70750,[70835,70840],70842,[70847,70848],[70850,70851],[71090,71093],[71100,71101],[71103,71104],[71132,71133],[71219,71226],71229,[71231,71232],71339,71341,[71344,71349],71351,[71453,71455],[71458,71461],[71463,71467],[71727,71735],[71737,71738],[71995,71996],71998,72003,[72148,72151],[72154,72155],72160,[72193,72198],[72201,72202],[72243,72248],[72251,72254],72263,[72273,72278],[72281,72283],[72330,72342],[72344,72345],[72752,72758],[72760,72765],[72850,72871],[72874,72880],[72882,72883],[72885,72886],[73009,73014],73018,[73020,73021],[73023,73029],73031,[73104,73105],73109,73111,[73459,73460],[73472,73473],[73526,73530],73536,73538,78912,[78919,78933],[92912,92916],[92976,92982],94031,[94095,94098],94180,[113821,113822],[118528,118573],[118576,118598],[119143,119145],[119163,119170],[119173,119179],[119210,119213],[119362,119364],[121344,121398],[121403,121452],121461,121476,[121499,121503],[121505,121519],[122880,122886],[122888,122904],[122907,122913],[122915,122916],[122918,122922],123023,[123184,123190],123566,[123628,123631],[124140,124143],[125136,125142],[125252,125258],[917760,917999]],Other_Neutral:[[33,34],[38,42],[59,64],[91,96],[123,126],161,[166,169],[171,172],[174,175],180,[182,184],[187,191],215,247,[697,698],[706,719],[722,735],[741,749],[751,767],[884,885],894,[900,901],903,1014,1418,[1421,1422],[1542,1543],[1550,1551],1758,1769,[2038,2041],[3059,3064],3066,[3192,3198],[3898,3901],[5008,5017],5120,[5787,5788],[6128,6137],[6144,6154],6464,[6468,6469],[6622,6655],8125,[8127,8129],[8141,8143],[8157,8159],[8173,8175],[8189,8190],[8208,8231],[8245,8259],[8261,8286],[8316,8318],[8332,8334],[8448,8449],[8451,8454],[8456,8457],8468,[8470,8472],[8478,8483],8485,8487,8489,[8506,8507],[8512,8516],[8522,8525],[8528,8543],[8585,8587],[8592,8721],[8724,9013],[9083,9108],[9110,9254],[9280,9290],[9312,9351],[9450,9899],[9901,10239],[10496,11123],[11126,11157],[11159,11263],[11493,11498],[11513,11519],[11776,11869],[11904,11929],[11931,12019],[12032,12245],[12272,12283],[12289,12292],[12296,12320],12336,[12342,12343],[12349,12351],[12443,12444],12448,12539,[12736,12771],[12829,12830],[12880,12895],[12924,12926],[12977,12991],[13004,13007],[13175,13178],[13278,13279],13311,[19904,19967],[42128,42182],[42509,42511],42611,[42622,42623],[42752,42785],42888,[43048,43051],[43124,43127],[43882,43883],[64830,64847],64975,[65021,65023],[65040,65049],[65072,65103],65105,65108,[65110,65118],[65120,65121],[65124,65126],65128,65131,[65281,65282],[65286,65290],[65307,65312],[65339,65344],[65371,65381],[65506,65508],[65512,65518],[65529,65533],65793,[65856,65932],[65936,65948],65952,67871,[68409,68415],[69714,69733],[71264,71276],[73685,73692],[73697,73713],94178,[119273,119274],[119296,119361],119365,[119552,119638],120539,120597,120655,120713,120771,[126704,126705],[126976,127019],[127024,127123],[127136,127150],[127153,127167],[127169,127183],[127185,127221],[127243,127247],127279,[127338,127343],127405,[127584,127589],[127744,128727],[128732,128748],[128752,128764],[128768,128886],[128891,128985],[128992,129003],129008,[129024,129035],[129040,129095],[129104,129113],[129120,129159],[129168,129197],[129200,129201],[129280,129619],[129632,129645],[129648,129660],[129664,129672],[129680,129725],[129727,129733],[129742,129755],[129760,129768],[129776,129784],[129792,129938],[129940,129994]],Paragraph_Separator:[10,13,[28,30],133,8233],Pop_Directional_Format:[8236],Pop_Directional_Isolate:[8297],Right_To_Left:[1470,1472,1475,1478,[1488,1514],[1519,1524],[1984,2026],[2036,2037],2042,[2046,2069],2074,2084,2088,[2096,2110],[2112,2136],2142,8207,64285,[64287,64296],[64298,64310],[64312,64316],64318,[64320,64321],[64323,64324],[64326,64335],[67584,67589],67592,[67594,67637],[67639,67640],67644,[67647,67669],[67671,67742],[67751,67759],[67808,67826],[67828,67829],[67835,67867],[67872,67897],67903,[67968,68023],[68028,68047],[68050,68096],[68112,68115],[68117,68119],[68121,68149],[68160,68168],[68176,68184],[68192,68255],[68288,68324],[68331,68342],[68352,68405],[68416,68437],[68440,68466],[68472,68497],[68505,68508],[68521,68527],[68608,68680],[68736,68786],[68800,68850],[68858,68863],[69248,69289],69293,[69296,69297],[69376,69415],[69488,69505],[69510,69513],[69552,69579],[69600,69622],[124928,125124],[125127,125135],[125184,125251],125259,[125264,125273],[125278,125279]],Right_To_Left_Embedding:[8235],Right_To_Left_Isolate:[8295],Right_To_Left_Override:[8238],Segment_Separator:[9,11,31],White_Space:[12,32,5760,[8192,8202],8232,8287,12288]},Symbol.toStringTag,{value:"Module"})),Bidi_Mirroring_Glyph:Object.freeze(Object.defineProperty({__proto__:null},Symbol.toStringTag,{value:"Module"})),Bidi_Paired_Bracket_Type:Object.freeze(Object.defineProperty({__proto__:null,Close:[41,93,125,3899,3901,5788,8262,8318,8334,8969,8971,9002,10089,10091,10093,10095,10097,10099,10101,10182,10215,10217,10219,10221,10223,10628,10630,10632,10634,10636,10638,10640,10642,10644,10646,10648,10713,10715,10749,11811,11813,11815,11817,11862,11864,11866,11868,12297,12299,12301,12303,12305,12309,12311,12313,12315,65114,65116,65118,65289,65341,65373,65376,65379],None:[[0,39],[42,90],92,[94,122],124,[126,3897],[3902,5786],[5789,8260],[8263,8316],[8319,8332],[8335,8967],[8972,9e3],[9003,10087],[10102,10180],[10183,10213],[10224,10626],[10649,10711],[10716,10747],[10750,11809],[11818,11860],[11869,12295],[12306,12307],[12316,65112],[65119,65287],[65290,65338],65340,[65342,65370],65372,65374,65377,[65380,1114111]],Open:[40,91,123,3898,3900,5787,8261,8317,8333,8968,8970,9001,10088,10090,10092,10094,10096,10098,10100,10181,10214,10216,10218,10220,10222,10627,10629,10631,10633,10635,10637,10639,10641,10643,10645,10647,10712,10714,10748,11810,11812,11814,11816,11861,11863,11865,11867,12296,12298,12300,12302,12304,12308,12310,12312,12314,65113,65115,65117,65288,65339,65371,65375,65378]},Symbol.toStringTag,{value:"Module"})),Binary_Property:Object.freeze(Object.defineProperty({__proto__:null,ASCII:[[0,127]],ASCII_Hex_Digit:[[48,57],[65,70],[97,102]],Alphabetic:[[65,90],[97,122],170,181,186,[192,214],[216,246],[248,705],[710,721],[736,740],748,750,837,[880,884],[886,887],[890,893],895,902,[904,906],908,[910,929],[931,1013],[1015,1153],[1162,1327],[1329,1366],1369,[1376,1416],[1456,1469],1471,[1473,1474],[1476,1477],1479,[1488,1514],[1519,1522],[1552,1562],[1568,1623],[1625,1631],[1646,1747],[1749,1756],[1761,1768],[1773,1775],[1786,1788],1791,[1808,1855],[1869,1969],[1994,2026],[2036,2037],2042,[2048,2071],[2074,2092],[2112,2136],[2144,2154],[2160,2183],[2185,2190],[2208,2249],[2260,2271],[2275,2281],[2288,2363],[2365,2380],[2382,2384],[2389,2403],[2417,2435],[2437,2444],[2447,2448],[2451,2472],[2474,2480],2482,[2486,2489],[2493,2500],[2503,2504],[2507,2508],2510,2519,[2524,2525],[2527,2531],[2544,2545],2556,[2561,2563],[2565,2570],[2575,2576],[2579,2600],[2602,2608],[2610,2611],[2613,2614],[2616,2617],[2622,2626],[2631,2632],[2635,2636],2641,[2649,2652],2654,[2672,2677],[2689,2691],[2693,2701],[2703,2705],[2707,2728],[2730,2736],[2738,2739],[2741,2745],[2749,2757],[2759,2761],[2763,2764],2768,[2784,2787],[2809,2812],[2817,2819],[2821,2828],[2831,2832],[2835,2856],[2858,2864],[2866,2867],[2869,2873],[2877,2884],[2887,2888],[2891,2892],[2902,2903],[2908,2909],[2911,2915],2929,[2946,2947],[2949,2954],[2958,2960],[2962,2965],[2969,2970],2972,[2974,2975],[2979,2980],[2984,2986],[2990,3001],[3006,3010],[3014,3016],[3018,3020],3024,3031,[3072,3084],[3086,3088],[3090,3112],[3114,3129],[3133,3140],[3142,3144],[3146,3148],[3157,3158],[3160,3162],3165,[3168,3171],[3200,3203],[3205,3212],[3214,3216],[3218,3240],[3242,3251],[3253,3257],[3261,3268],[3270,3272],[3274,3276],[3285,3286],[3293,3294],[3296,3299],[3313,3315],[3328,3340],[3342,3344],[3346,3386],[3389,3396],[3398,3400],[3402,3404],3406,[3412,3415],[3423,3427],[3450,3455],[3457,3459],[3461,3478],[3482,3505],[3507,3515],3517,[3520,3526],[3535,3540],3542,[3544,3551],[3570,3571],[3585,3642],[3648,3654],3661,[3713,3714],3716,[3718,3722],[3724,3747],3749,[3751,3769],[3771,3773],[3776,3780],3782,3789,[3804,3807],3840,[3904,3911],[3913,3948],[3953,3971],[3976,3991],[3993,4028],[4096,4150],4152,[4155,4159],[4176,4239],[4250,4253],[4256,4293],4295,4301,[4304,4346],[4348,4680],[4682,4685],[4688,4694],4696,[4698,4701],[4704,4744],[4746,4749],[4752,4784],[4786,4789],[4792,4798],4800,[4802,4805],[4808,4822],[4824,4880],[4882,4885],[4888,4954],[4992,5007],[5024,5109],[5112,5117],[5121,5740],[5743,5759],[5761,5786],[5792,5866],[5870,5880],[5888,5907],[5919,5939],[5952,5971],[5984,5996],[5998,6e3],[6002,6003],[6016,6067],[6070,6088],6103,6108,[6176,6264],[6272,6314],[6320,6389],[6400,6430],[6432,6443],[6448,6456],[6480,6509],[6512,6516],[6528,6571],[6576,6601],[6656,6683],[6688,6750],[6753,6772],6823,[6847,6848],[6860,6862],[6912,6963],[6965,6979],[6981,6988],[7040,7081],[7084,7087],[7098,7141],[7143,7153],[7168,7222],[7245,7247],[7258,7293],[7296,7304],[7312,7354],[7357,7359],[7401,7404],[7406,7411],[7413,7414],7418,[7424,7615],[7655,7668],[7680,7957],[7960,7965],[7968,8005],[8008,8013],[8016,8023],8025,8027,8029,[8031,8061],[8064,8116],[8118,8124],8126,[8130,8132],[8134,8140],[8144,8147],[8150,8155],[8160,8172],[8178,8180],[8182,8188],8305,8319,[8336,8348],8450,8455,[8458,8467],8469,[8473,8477],8484,8486,8488,[8490,8493],[8495,8505],[8508,8511],[8517,8521],8526,[8544,8584],[9398,9449],[11264,11492],[11499,11502],[11506,11507],[11520,11557],11559,11565,[11568,11623],11631,[11648,11670],[11680,11686],[11688,11694],[11696,11702],[11704,11710],[11712,11718],[11720,11726],[11728,11734],[11736,11742],[11744,11775],11823,[12293,12295],[12321,12329],[12337,12341],[12344,12348],[12353,12438],[12445,12447],[12449,12538],[12540,12543],[12549,12591],[12593,12686],[12704,12735],[12784,12799],[13312,19903],[19968,42124],[42192,42237],[42240,42508],[42512,42527],[42538,42539],[42560,42606],[42612,42619],[42623,42735],[42775,42783],[42786,42888],[42891,42954],[42960,42961],42963,[42965,42969],[42994,43013],[43015,43047],[43072,43123],[43136,43203],43205,[43250,43255],43259,[43261,43263],[43274,43306],[43312,43346],[43360,43388],[43392,43442],[43444,43455],43471,[43488,43503],[43514,43518],[43520,43574],[43584,43597],[43616,43638],[43642,43710],43712,43714,[43739,43741],[43744,43759],[43762,43765],[43777,43782],[43785,43790],[43793,43798],[43808,43814],[43816,43822],[43824,43866],[43868,43881],[43888,44010],[44032,55203],[55216,55238],[55243,55291],[63744,64109],[64112,64217],[64256,64262],[64275,64279],[64285,64296],[64298,64310],[64312,64316],64318,[64320,64321],[64323,64324],[64326,64433],[64467,64829],[64848,64911],[64914,64967],[65008,65019],[65136,65140],[65142,65276],[65313,65338],[65345,65370],[65382,65470],[65474,65479],[65482,65487],[65490,65495],[65498,65500],[65536,65547],[65549,65574],[65576,65594],[65596,65597],[65599,65613],[65616,65629],[65664,65786],[65856,65908],[66176,66204],[66208,66256],[66304,66335],[66349,66378],[66384,66426],[66432,66461],[66464,66499],[66504,66511],[66513,66517],[66560,66717],[66736,66771],[66776,66811],[66816,66855],[66864,66915],[66928,66938],[66940,66954],[66956,66962],[66964,66965],[66967,66977],[66979,66993],[66995,67001],[67003,67004],[67072,67382],[67392,67413],[67424,67431],[67456,67461],[67463,67504],[67506,67514],[67584,67589],67592,[67594,67637],[67639,67640],67644,[67647,67669],[67680,67702],[67712,67742],[67808,67826],[67828,67829],[67840,67861],[67872,67897],[67968,68023],[68030,68031],[68096,68099],[68101,68102],[68108,68115],[68117,68119],[68121,68149],[68192,68220],[68224,68252],[68288,68295],[68297,68324],[68352,68405],[68416,68437],[68448,68466],[68480,68497],[68608,68680],[68736,68786],[68800,68850],[68864,68903],[69248,69289],[69291,69292],[69296,69297],[69376,69404],69415,[69424,69445],[69488,69505],[69552,69572],[69600,69622],[69632,69701],[69745,69749],[69760,69816],69826,[69840,69864],[69888,69938],[69956,69959],[69968,70002],70006,[70016,70079],[70081,70084],[70094,70095],70106,70108,[70144,70161],[70163,70196],70199,[70206,70209],[70272,70278],70280,[70282,70285],[70287,70301],[70303,70312],[70320,70376],[70400,70403],[70405,70412],[70415,70416],[70419,70440],[70442,70448],[70450,70451],[70453,70457],[70461,70468],[70471,70472],[70475,70476],70480,70487,[70493,70499],[70656,70721],[70723,70725],[70727,70730],[70751,70753],[70784,70849],[70852,70853],70855,[71040,71093],[71096,71102],[71128,71133],[71168,71230],71232,71236,[71296,71349],71352,[71424,71450],[71453,71466],[71488,71494],[71680,71736],[71840,71903],[71935,71942],71945,[71948,71955],[71957,71958],[71960,71989],[71991,71992],[71995,71996],[71999,72002],[72096,72103],[72106,72151],[72154,72159],72161,[72163,72164],[72192,72242],[72245,72254],[72272,72343],72349,[72368,72440],[72704,72712],[72714,72758],[72760,72766],72768,[72818,72847],[72850,72871],[72873,72886],[72960,72966],[72968,72969],[72971,73014],73018,[73020,73021],[73023,73025],73027,[73030,73031],[73056,73061],[73063,73064],[73066,73102],[73104,73105],[73107,73110],73112,[73440,73462],[73472,73488],[73490,73530],[73534,73536],73648,[73728,74649],[74752,74862],[74880,75075],[77712,77808],[77824,78895],[78913,78918],[82944,83526],[92160,92728],[92736,92766],[92784,92862],[92880,92909],[92928,92975],[92992,92995],[93027,93047],[93053,93071],[93760,93823],[93952,94026],[94031,94087],[94095,94111],[94176,94177],94179,[94192,94193],[94208,100343],[100352,101589],[101632,101640],[110576,110579],[110581,110587],[110589,110590],[110592,110882],110898,[110928,110930],110933,[110948,110951],[110960,111355],[113664,113770],[113776,113788],[113792,113800],[113808,113817],113822,[119808,119892],[119894,119964],[119966,119967],119970,[119973,119974],[119977,119980],[119982,119993],119995,[119997,120003],[120005,120069],[120071,120074],[120077,120084],[120086,120092],[120094,120121],[120123,120126],[120128,120132],120134,[120138,120144],[120146,120485],[120488,120512],[120514,120538],[120540,120570],[120572,120596],[120598,120628],[120630,120654],[120656,120686],[120688,120712],[120714,120744],[120746,120770],[120772,120779],[122624,122654],[122661,122666],[122880,122886],[122888,122904],[122907,122913],[122915,122916],[122918,122922],[122928,122989],123023,[123136,123180],[123191,123197],123214,[123536,123565],[123584,123627],[124112,124139],[124896,124902],[124904,124907],[124909,124910],[124912,124926],[124928,125124],[125184,125251],125255,125259,[126464,126467],[126469,126495],[126497,126498],126500,126503,[126505,126514],[126516,126519],126521,126523,126530,126535,126537,126539,[126541,126543],[126545,126546],126548,126551,126553,126555,126557,126559,[126561,126562],126564,[126567,126570],[126572,126578],[126580,126583],[126585,126588],126590,[126592,126601],[126603,126619],[126625,126627],[126629,126633],[126635,126651],[127280,127305],[127312,127337],[127344,127369],[131072,173791],[173824,177977],[177984,178205],[178208,183969],[183984,191456],[194560,195101],[196608,201546],[201552,205743]],Any:[[0,1114111]],Assigned:[[0,887],[890,895],[900,906],908,[910,929],[931,1327],[1329,1366],[1369,1418],[1421,1423],[1425,1479],[1488,1514],[1519,1524],[1536,1805],[1807,1866],[1869,1969],[1984,2042],[2045,2093],[2096,2110],[2112,2139],2142,[2144,2154],[2160,2190],[2192,2193],[2200,2435],[2437,2444],[2447,2448],[2451,2472],[2474,2480],2482,[2486,2489],[2492,2500],[2503,2504],[2507,2510],2519,[2524,2525],[2527,2531],[2534,2558],[2561,2563],[2565,2570],[2575,2576],[2579,2600],[2602,2608],[2610,2611],[2613,2614],[2616,2617],2620,[2622,2626],[2631,2632],[2635,2637],2641,[2649,2652],2654,[2662,2678],[2689,2691],[2693,2701],[2703,2705],[2707,2728],[2730,2736],[2738,2739],[2741,2745],[2748,2757],[2759,2761],[2763,2765],2768,[2784,2787],[2790,2801],[2809,2815],[2817,2819],[2821,2828],[2831,2832],[2835,2856],[2858,2864],[2866,2867],[2869,2873],[2876,2884],[2887,2888],[2891,2893],[2901,2903],[2908,2909],[2911,2915],[2918,2935],[2946,2947],[2949,2954],[2958,2960],[2962,2965],[2969,2970],2972,[2974,2975],[2979,2980],[2984,2986],[2990,3001],[3006,3010],[3014,3016],[3018,3021],3024,3031,[3046,3066],[3072,3084],[3086,3088],[3090,3112],[3114,3129],[3132,3140],[3142,3144],[3146,3149],[3157,3158],[3160,3162],3165,[3168,3171],[3174,3183],[3191,3212],[3214,3216],[3218,3240],[3242,3251],[3253,3257],[3260,3268],[3270,3272],[3274,3277],[3285,3286],[3293,3294],[3296,3299],[3302,3311],[3313,3315],[3328,3340],[3342,3344],[3346,3396],[3398,3400],[3402,3407],[3412,3427],[3430,3455],[3457,3459],[3461,3478],[3482,3505],[3507,3515],3517,[3520,3526],3530,[3535,3540],3542,[3544,3551],[3558,3567],[3570,3572],[3585,3642],[3647,3675],[3713,3714],3716,[3718,3722],[3724,3747],3749,[3751,3773],[3776,3780],3782,[3784,3790],[3792,3801],[3804,3807],[3840,3911],[3913,3948],[3953,3991],[3993,4028],[4030,4044],[4046,4058],[4096,4293],4295,4301,[4304,4680],[4682,4685],[4688,4694],4696,[4698,4701],[4704,4744],[4746,4749],[4752,4784],[4786,4789],[4792,4798],4800,[4802,4805],[4808,4822],[4824,4880],[4882,4885],[4888,4954],[4957,4988],[4992,5017],[5024,5109],[5112,5117],[5120,5788],[5792,5880],[5888,5909],[5919,5942],[5952,5971],[5984,5996],[5998,6e3],[6002,6003],[6016,6109],[6112,6121],[6128,6137],[6144,6169],[6176,6264],[6272,6314],[6320,6389],[6400,6430],[6432,6443],[6448,6459],6464,[6468,6509],[6512,6516],[6528,6571],[6576,6601],[6608,6618],[6622,6683],[6686,6750],[6752,6780],[6783,6793],[6800,6809],[6816,6829],[6832,6862],[6912,6988],[6992,7038],[7040,7155],[7164,7223],[7227,7241],[7245,7304],[7312,7354],[7357,7367],[7376,7418],[7424,7957],[7960,7965],[7968,8005],[8008,8013],[8016,8023],8025,8027,8029,[8031,8061],[8064,8116],[8118,8132],[8134,8147],[8150,8155],[8157,8175],[8178,8180],[8182,8190],[8192,8292],[8294,8305],[8308,8334],[8336,8348],[8352,8384],[8400,8432],[8448,8587],[8592,9254],[9280,9290],[9312,11123],[11126,11157],[11159,11507],[11513,11557],11559,11565,[11568,11623],[11631,11632],[11647,11670],[11680,11686],[11688,11694],[11696,11702],[11704,11710],[11712,11718],[11720,11726],[11728,11734],[11736,11742],[11744,11869],[11904,11929],[11931,12019],[12032,12245],[12272,12283],[12288,12351],[12353,12438],[12441,12543],[12549,12591],[12593,12686],[12688,12771],[12784,12830],[12832,42124],[42128,42182],[42192,42539],[42560,42743],[42752,42954],[42960,42961],42963,[42965,42969],[42994,43052],[43056,43065],[43072,43127],[43136,43205],[43214,43225],[43232,43347],[43359,43388],[43392,43469],[43471,43481],[43486,43518],[43520,43574],[43584,43597],[43600,43609],[43612,43714],[43739,43766],[43777,43782],[43785,43790],[43793,43798],[43808,43814],[43816,43822],[43824,43883],[43888,44013],[44016,44025],[44032,55203],[55216,55238],[55243,55291],[55296,64109],[64112,64217],[64256,64262],[64275,64279],[64285,64310],[64312,64316],64318,[64320,64321],[64323,64324],[64326,64450],[64467,64911],[64914,64967],64975,[65008,65049],[65056,65106],[65108,65126],[65128,65131],[65136,65140],[65142,65276],65279,[65281,65470],[65474,65479],[65482,65487],[65490,65495],[65498,65500],[65504,65510],[65512,65518],[65529,65533],[65536,65547],[65549,65574],[65576,65594],[65596,65597],[65599,65613],[65616,65629],[65664,65786],[65792,65794],[65799,65843],[65847,65934],[65936,65948],65952,[66e3,66045],[66176,66204],[66208,66256],[66272,66299],[66304,66339],[66349,66378],[66384,66426],[66432,66461],[66463,66499],[66504,66517],[66560,66717],[66720,66729],[66736,66771],[66776,66811],[66816,66855],[66864,66915],[66927,66938],[66940,66954],[66956,66962],[66964,66965],[66967,66977],[66979,66993],[66995,67001],[67003,67004],[67072,67382],[67392,67413],[67424,67431],[67456,67461],[67463,67504],[67506,67514],[67584,67589],67592,[67594,67637],[67639,67640],67644,[67647,67669],[67671,67742],[67751,67759],[67808,67826],[67828,67829],[67835,67867],[67871,67897],67903,[67968,68023],[68028,68047],[68050,68099],[68101,68102],[68108,68115],[68117,68119],[68121,68149],[68152,68154],[68159,68168],[68176,68184],[68192,68255],[68288,68326],[68331,68342],[68352,68405],[68409,68437],[68440,68466],[68472,68497],[68505,68508],[68521,68527],[68608,68680],[68736,68786],[68800,68850],[68858,68903],[68912,68921],[69216,69246],[69248,69289],[69291,69293],[69296,69297],[69373,69415],[69424,69465],[69488,69513],[69552,69579],[69600,69622],[69632,69709],[69714,69749],[69759,69826],69837,[69840,69864],[69872,69881],[69888,69940],[69942,69959],[69968,70006],[70016,70111],[70113,70132],[70144,70161],[70163,70209],[70272,70278],70280,[70282,70285],[70287,70301],[70303,70313],[70320,70378],[70384,70393],[70400,70403],[70405,70412],[70415,70416],[70419,70440],[70442,70448],[70450,70451],[70453,70457],[70459,70468],[70471,70472],[70475,70477],70480,70487,[70493,70499],[70502,70508],[70512,70516],[70656,70747],[70749,70753],[70784,70855],[70864,70873],[71040,71093],[71096,71133],[71168,71236],[71248,71257],[71264,71276],[71296,71353],[71360,71369],[71424,71450],[71453,71467],[71472,71494],[71680,71739],[71840,71922],[71935,71942],71945,[71948,71955],[71957,71958],[71960,71989],[71991,71992],[71995,72006],[72016,72025],[72096,72103],[72106,72151],[72154,72164],[72192,72263],[72272,72354],[72368,72440],[72448,72457],[72704,72712],[72714,72758],[72760,72773],[72784,72812],[72816,72847],[72850,72871],[72873,72886],[72960,72966],[72968,72969],[72971,73014],73018,[73020,73021],[73023,73031],[73040,73049],[73056,73061],[73063,73064],[73066,73102],[73104,73105],[73107,73112],[73120,73129],[73440,73464],[73472,73488],[73490,73530],[73534,73561],73648,[73664,73713],[73727,74649],[74752,74862],[74864,74868],[74880,75075],[77712,77810],[77824,78933],[82944,83526],[92160,92728],[92736,92766],[92768,92777],[92782,92862],[92864,92873],[92880,92909],[92912,92917],[92928,92997],[93008,93017],[93019,93025],[93027,93047],[93053,93071],[93760,93850],[93952,94026],[94031,94087],[94095,94111],[94176,94180],[94192,94193],[94208,100343],[100352,101589],[101632,101640],[110576,110579],[110581,110587],[110589,110590],[110592,110882],110898,[110928,110930],110933,[110948,110951],[110960,111355],[113664,113770],[113776,113788],[113792,113800],[113808,113817],[113820,113827],[118528,118573],[118576,118598],[118608,118723],[118784,119029],[119040,119078],[119081,119274],[119296,119365],[119488,119507],[119520,119539],[119552,119638],[119648,119672],[119808,119892],[119894,119964],[119966,119967],119970,[119973,119974],[119977,119980],[119982,119993],119995,[119997,120003],[120005,120069],[120071,120074],[120077,120084],[120086,120092],[120094,120121],[120123,120126],[120128,120132],120134,[120138,120144],[120146,120485],[120488,120779],[120782,121483],[121499,121503],[121505,121519],[122624,122654],[122661,122666],[122880,122886],[122888,122904],[122907,122913],[122915,122916],[122918,122922],[122928,122989],123023,[123136,123180],[123184,123197],[123200,123209],[123214,123215],[123536,123566],[123584,123641],123647,[124112,124153],[124896,124902],[124904,124907],[124909,124910],[124912,124926],[124928,125124],[125127,125142],[125184,125259],[125264,125273],[125278,125279],[126065,126132],[126209,126269],[126464,126467],[126469,126495],[126497,126498],126500,126503,[126505,126514],[126516,126519],126521,126523,126530,126535,126537,126539,[126541,126543],[126545,126546],126548,126551,126553,126555,126557,126559,[126561,126562],126564,[126567,126570],[126572,126578],[126580,126583],[126585,126588],126590,[126592,126601],[126603,126619],[126625,126627],[126629,126633],[126635,126651],[126704,126705],[126976,127019],[127024,127123],[127136,127150],[127153,127167],[127169,127183],[127185,127221],[127232,127405],[127462,127490],[127504,127547],[127552,127560],[127568,127569],[127584,127589],[127744,128727],[128732,128748],[128752,128764],[128768,128886],[128891,128985],[128992,129003],129008,[129024,129035],[129040,129095],[129104,129113],[129120,129159],[129168,129197],[129200,129201],[129280,129619],[129632,129645],[129648,129660],[129664,129672],[129680,129725],[129727,129733],[129742,129755],[129760,129768],[129776,129784],[129792,129938],[129940,129994],[130032,130041],[131072,173791],[173824,177977],[177984,178205],[178208,183969],[183984,191456],[194560,195101],[196608,201546],[201552,205743],917505,[917536,917631],[917760,917999],[983040,1048573],[1048576,1114109]],Bidi_Control:[1564,[8206,8207],[8234,8238],[8294,8297]],Bidi_Mirrored:[[40,41],60,62,91,93,123,125,171,187,[3898,3901],[5787,5788],[8249,8250],[8261,8262],[8317,8318],[8333,8334],8512,[8705,8708],[8712,8717],8721,[8725,8726],[8730,8733],[8735,8738],8740,8742,[8747,8755],8761,[8763,8780],[8786,8789],[8799,8800],8802,[8804,8811],[8814,8844],[8847,8850],8856,[8866,8867],[8870,8888],[8894,8895],[8905,8909],[8912,8913],[8918,8941],[8944,8959],[8968,8971],[8992,8993],[9001,9002],[10088,10101],10176,[10179,10182],[10184,10185],[10187,10189],[10195,10198],[10204,10206],[10210,10223],[10627,10648],[10651,10656],[10658,10671],10680,[10688,10693],10697,[10702,10706],[10708,10709],[10712,10716],10721,[10723,10725],[10728,10729],[10740,10745],[10748,10749],[10762,10780],[10782,10785],10788,10790,10793,[10795,10798],[10804,10805],[10812,10814],[10839,10840],[10852,10853],[10858,10861],[10863,10864],[10867,10868],[10873,10915],[10918,10925],[10927,10966],10972,10974,[10978,10982],[10988,10990],10995,[10999,11003],11005,11262,[11778,11781],[11785,11786],[11788,11789],[11804,11805],[11808,11817],[11861,11868],[12296,12305],[12308,12315],[65113,65118],[65124,65125],[65288,65289],65308,65310,65339,65341,65371,65373,[65375,65376],[65378,65379],120539,120597,120655,120713,120771],Case_Ignorable:[39,46,58,94,96,168,173,175,180,[183,184],[688,879],[884,885],890,[900,901],903,[1155,1161],1369,1375,[1425,1469],1471,[1473,1474],[1476,1477],1479,1524,[1536,1541],[1552,1562],1564,1600,[1611,1631],1648,[1750,1757],[1759,1768],[1770,1773],1807,1809,[1840,1866],[1958,1968],[2027,2037],2042,2045,[2070,2093],[2137,2139],2184,[2192,2193],[2200,2207],[2249,2306],2362,2364,[2369,2376],2381,[2385,2391],[2402,2403],2417,2433,2492,[2497,2500],2509,[2530,2531],2558,[2561,2562],2620,[2625,2626],[2631,2632],[2635,2637],2641,[2672,2673],2677,[2689,2690],2748,[2753,2757],[2759,2760],2765,[2786,2787],[2810,2815],2817,2876,2879,[2881,2884],2893,[2901,2902],[2914,2915],2946,3008,3021,3072,3076,3132,[3134,3136],[3142,3144],[3146,3149],[3157,3158],[3170,3171],3201,3260,3263,3270,[3276,3277],[3298,3299],[3328,3329],[3387,3388],[3393,3396],3405,[3426,3427],3457,3530,[3538,3540],3542,3633,[3636,3642],[3654,3662],3761,[3764,3772],3782,[3784,3790],[3864,3865],3893,3895,3897,[3953,3966],[3968,3972],[3974,3975],[3981,3991],[3993,4028],4038,[4141,4144],[4146,4151],[4153,4154],[4157,4158],[4184,4185],[4190,4192],[4209,4212],4226,[4229,4230],4237,4253,4348,[4957,4959],[5906,5908],[5938,5939],[5970,5971],[6002,6003],[6068,6069],[6071,6077],6086,[6089,6099],6103,6109,[6155,6159],6211,[6277,6278],6313,[6432,6434],[6439,6440],6450,[6457,6459],[6679,6680],6683,6742,[6744,6750],6752,6754,[6757,6764],[6771,6780],6783,6823,[6832,6862],[6912,6915],6964,[6966,6970],6972,6978,[7019,7027],[7040,7041],[7074,7077],[7080,7081],[7083,7085],7142,[7144,7145],7149,[7151,7153],[7212,7219],[7222,7223],[7288,7293],[7376,7378],[7380,7392],[7394,7400],7405,7412,[7416,7417],[7468,7530],7544,[7579,7679],8125,[8127,8129],[8141,8143],[8157,8159],[8173,8175],[8189,8190],[8203,8207],[8216,8217],8228,8231,[8234,8238],[8288,8292],[8294,8303],8305,8319,[8336,8348],[8400,8432],[11388,11389],[11503,11505],11631,11647,[11744,11775],11823,12293,[12330,12333],[12337,12341],12347,[12441,12446],[12540,12542],40981,[42232,42237],42508,[42607,42610],[42612,42621],42623,[42652,42655],[42736,42737],[42752,42785],42864,[42888,42890],[42994,42996],[43e3,43001],43010,43014,43019,[43045,43046],43052,[43204,43205],[43232,43249],43263,[43302,43309],[43335,43345],[43392,43394],43443,[43446,43449],[43452,43453],43471,[43493,43494],[43561,43566],[43569,43570],[43573,43574],43587,43596,43632,43644,43696,[43698,43700],[43703,43704],[43710,43711],43713,43741,[43756,43757],[43763,43764],43766,[43867,43871],[43881,43883],44005,44008,44013,64286,[64434,64450],[65024,65039],65043,[65056,65071],65106,65109,65279,65287,65294,65306,65342,65344,65392,[65438,65439],65507,[65529,65531],66045,66272,[66422,66426],[67456,67461],[67463,67504],[67506,67514],[68097,68099],[68101,68102],[68108,68111],[68152,68154],68159,[68325,68326],[68900,68903],[69291,69292],[69373,69375],[69446,69456],[69506,69509],69633,[69688,69702],69744,[69747,69748],[69759,69761],[69811,69814],[69817,69818],69821,69826,69837,[69888,69890],[69927,69931],[69933,69940],70003,[70016,70017],[70070,70078],[70089,70092],70095,[70191,70193],70196,[70198,70199],70206,70209,70367,[70371,70378],[70400,70401],[70459,70460],70464,[70502,70508],[70512,70516],[70712,70719],[70722,70724],70726,70750,[70835,70840],70842,[70847,70848],[70850,70851],[71090,71093],[71100,71101],[71103,71104],[71132,71133],[71219,71226],71229,[71231,71232],71339,71341,[71344,71349],71351,[71453,71455],[71458,71461],[71463,71467],[71727,71735],[71737,71738],[71995,71996],71998,72003,[72148,72151],[72154,72155],72160,[72193,72202],[72243,72248],[72251,72254],72263,[72273,72278],[72281,72283],[72330,72342],[72344,72345],[72752,72758],[72760,72765],72767,[72850,72871],[72874,72880],[72882,72883],[72885,72886],[73009,73014],73018,[73020,73021],[73023,73029],73031,[73104,73105],73109,73111,[73459,73460],[73472,73473],[73526,73530],73536,73538,[78896,78912],[78919,78933],[92912,92916],[92976,92982],[92992,92995],94031,[94095,94111],[94176,94177],[94179,94180],[110576,110579],[110581,110587],[110589,110590],[113821,113822],[113824,113827],[118528,118573],[118576,118598],[119143,119145],[119155,119170],[119173,119179],[119210,119213],[119362,119364],[121344,121398],[121403,121452],121461,121476,[121499,121503],[121505,121519],[122880,122886],[122888,122904],[122907,122913],[122915,122916],[122918,122922],[122928,122989],123023,[123184,123197],123566,[123628,123631],[124139,124143],[125136,125142],[125252,125259],[127995,127999],917505,[917536,917631],[917760,917999]],Cased:[[65,90],[97,122],170,181,186,[192,214],[216,246],[248,442],[444,447],[452,659],[661,696],[704,705],[736,740],837,[880,883],[886,887],[890,893],895,902,[904,906],908,[910,929],[931,1013],[1015,1153],[1162,1327],[1329,1366],[1376,1416],[4256,4293],4295,4301,[4304,4346],[4348,4351],[5024,5109],[5112,5117],[7296,7304],[7312,7354],[7357,7359],[7424,7615],[7680,7957],[7960,7965],[7968,8005],[8008,8013],[8016,8023],8025,8027,8029,[8031,8061],[8064,8116],[8118,8124],8126,[8130,8132],[8134,8140],[8144,8147],[8150,8155],[8160,8172],[8178,8180],[8182,8188],8305,8319,[8336,8348],8450,8455,[8458,8467],8469,[8473,8477],8484,8486,8488,[8490,8493],[8495,8500],8505,[8508,8511],[8517,8521],8526,[8544,8575],[8579,8580],[9398,9449],[11264,11492],[11499,11502],[11506,11507],[11520,11557],11559,11565,[42560,42605],[42624,42653],[42786,42887],[42891,42894],[42896,42954],[42960,42961],42963,[42965,42969],[42994,42998],[43e3,43002],[43824,43866],[43868,43881],[43888,43967],[64256,64262],[64275,64279],[65313,65338],[65345,65370],[66560,66639],[66736,66771],[66776,66811],[66928,66938],[66940,66954],[66956,66962],[66964,66965],[66967,66977],[66979,66993],[66995,67001],[67003,67004],67456,[67459,67461],[67463,67504],[67506,67514],[68736,68786],[68800,68850],[71840,71903],[93760,93823],[119808,119892],[119894,119964],[119966,119967],119970,[119973,119974],[119977,119980],[119982,119993],119995,[119997,120003],[120005,120069],[120071,120074],[120077,120084],[120086,120092],[120094,120121],[120123,120126],[120128,120132],120134,[120138,120144],[120146,120485],[120488,120512],[120514,120538],[120540,120570],[120572,120596],[120598,120628],[120630,120654],[120656,120686],[120688,120712],[120714,120744],[120746,120770],[120772,120779],[122624,122633],[122635,122654],[122661,122666],[122928,122989],[125184,125251],[127280,127305],[127312,127337],[127344,127369]],Changes_When_Casefolded:[[65,90],181,[192,214],[216,223],256,258,260,262,264,266,268,270,272,274,276,278,280,282,284,286,288,290,292,294,296,298,300,302,304,306,308,310,313,315,317,319,321,323,325,327,[329,330],332,334,336,338,340,342,344,346,348,350,352,354,356,358,360,362,364,366,368,370,372,374,[376,377],379,381,383,[385,386],388,[390,391],[393,395],[398,401],[403,404],[406,408],[412,413],[415,416],418,420,[422,423],425,428,[430,431],[433,435],437,[439,440],444,[452,453],[455,456],[458,459],461,463,465,467,469,471,473,475,478,480,482,484,486,488,490,492,494,[497,498],500,[502,504],506,508,510,512,514,516,518,520,522,524,526,528,530,532,534,536,538,540,542,544,546,548,550,552,554,556,558,560,562,[570,571],[573,574],577,[579,582],584,586,588,590,837,880,882,886,895,902,[904,906],908,[910,911],[913,929],[931,939],962,[975,977],[981,982],984,986,988,990,992,994,996,998,1e3,1002,1004,1006,[1008,1009],[1012,1013],1015,[1017,1018],[1021,1071],1120,1122,1124,1126,1128,1130,1132,1134,1136,1138,1140,1142,1144,1146,1148,1150,1152,1162,1164,1166,1168,1170,1172,1174,1176,1178,1180,1182,1184,1186,1188,1190,1192,1194,1196,1198,1200,1202,1204,1206,1208,1210,1212,1214,[1216,1217],1219,1221,1223,1225,1227,1229,1232,1234,1236,1238,1240,1242,1244,1246,1248,1250,1252,1254,1256,1258,1260,1262,1264,1266,1268,1270,1272,1274,1276,1278,1280,1282,1284,1286,1288,1290,1292,1294,1296,1298,1300,1302,1304,1306,1308,1310,1312,1314,1316,1318,1320,1322,1324,1326,[1329,1366],1415,[4256,4293],4295,4301,[5112,5117],[7296,7304],[7312,7354],[7357,7359],7680,7682,7684,7686,7688,7690,7692,7694,7696,7698,7700,7702,7704,7706,7708,7710,7712,7714,7716,7718,7720,7722,7724,7726,7728,7730,7732,7734,7736,7738,7740,7742,7744,7746,7748,7750,7752,7754,7756,7758,7760,7762,7764,7766,7768,7770,7772,7774,7776,7778,7780,7782,7784,7786,7788,7790,7792,7794,7796,7798,7800,7802,7804,7806,7808,7810,7812,7814,7816,7818,7820,7822,7824,7826,7828,[7834,7835],7838,7840,7842,7844,7846,7848,7850,7852,7854,7856,7858,7860,7862,7864,7866,7868,7870,7872,7874,7876,7878,7880,7882,7884,7886,7888,7890,7892,7894,7896,7898,7900,7902,7904,7906,7908,7910,7912,7914,7916,7918,7920,7922,7924,7926,7928,7930,7932,7934,[7944,7951],[7960,7965],[7976,7983],[7992,7999],[8008,8013],8025,8027,8029,8031,[8040,8047],[8064,8111],[8114,8116],[8119,8124],[8130,8132],[8135,8140],[8152,8155],[8168,8172],[8178,8180],[8183,8188],8486,[8490,8491],8498,[8544,8559],8579,[9398,9423],[11264,11311],11360,[11362,11364],11367,11369,11371,[11373,11376],11378,11381,[11390,11392],11394,11396,11398,11400,11402,11404,11406,11408,11410,11412,11414,11416,11418,11420,11422,11424,11426,11428,11430,11432,11434,11436,11438,11440,11442,11444,11446,11448,11450,11452,11454,11456,11458,11460,11462,11464,11466,11468,11470,11472,11474,11476,11478,11480,11482,11484,11486,11488,11490,11499,11501,11506,42560,42562,42564,42566,42568,42570,42572,42574,42576,42578,42580,42582,42584,42586,42588,42590,42592,42594,42596,42598,42600,42602,42604,42624,42626,42628,42630,42632,42634,42636,42638,42640,42642,42644,42646,42648,42650,42786,42788,42790,42792,42794,42796,42798,42802,42804,42806,42808,42810,42812,42814,42816,42818,42820,42822,42824,42826,42828,42830,42832,42834,42836,42838,42840,42842,42844,42846,42848,42850,42852,42854,42856,42858,42860,42862,42873,42875,[42877,42878],42880,42882,42884,42886,42891,42893,42896,42898,42902,42904,42906,42908,42910,42912,42914,42916,42918,42920,[42922,42926],[42928,42932],42934,42936,42938,42940,42942,42944,42946,[42948,42951],42953,42960,42966,42968,42997,[43888,43967],[64256,64262],[64275,64279],[65313,65338],[66560,66599],[66736,66771],[66928,66938],[66940,66954],[66956,66962],[66964,66965],[68736,68786],[71840,71871],[93760,93791],[125184,125217]],Changes_When_Casemapped:[[65,90],[97,122],181,[192,214],[216,246],[248,311],[313,396],[398,410],[412,425],[428,441],[444,445],447,[452,544],[546,563],[570,596],[598,599],601,[603,604],[608,609],611,[613,614],[616,620],623,[625,626],629,637,640,[642,643],[647,652],658,[669,670],837,[880,883],[886,887],[891,893],895,902,[904,906],908,[910,929],[931,977],[981,1013],[1015,1019],[1021,1153],[1162,1327],[1329,1366],[1377,1415],[4256,4293],4295,4301,[4304,4346],[4349,4351],[5024,5109],[5112,5117],[7296,7304],[7312,7354],[7357,7359],7545,7549,7566,[7680,7835],7838,[7840,7957],[7960,7965],[7968,8005],[8008,8013],[8016,8023],8025,8027,8029,[8031,8061],[8064,8116],[8118,8124],8126,[8130,8132],[8134,8140],[8144,8147],[8150,8155],[8160,8172],[8178,8180],[8182,8188],8486,[8490,8491],8498,8526,[8544,8575],[8579,8580],[9398,9449],[11264,11376],[11378,11379],[11381,11382],[11390,11491],[11499,11502],[11506,11507],[11520,11557],11559,11565,[42560,42605],[42624,42651],[42786,42799],[42802,42863],[42873,42887],[42891,42893],[42896,42900],[42902,42926],[42928,42954],[42960,42961],[42966,42969],[42997,42998],43859,[43888,43967],[64256,64262],[64275,64279],[65313,65338],[65345,65370],[66560,66639],[66736,66771],[66776,66811],[66928,66938],[66940,66954],[66956,66962],[66964,66965],[66967,66977],[66979,66993],[66995,67001],[67003,67004],[68736,68786],[68800,68850],[71840,71903],[93760,93823],[125184,125251]],Changes_When_Lowercased:[[65,90],[192,214],[216,222],256,258,260,262,264,266,268,270,272,274,276,278,280,282,284,286,288,290,292,294,296,298,300,302,304,306,308,310,313,315,317,319,321,323,325,327,330,332,334,336,338,340,342,344,346,348,350,352,354,356,358,360,362,364,366,368,370,372,374,[376,377],379,381,[385,386],388,[390,391],[393,395],[398,401],[403,404],[406,408],[412,413],[415,416],418,420,[422,423],425,428,[430,431],[433,435],437,[439,440],444,[452,453],[455,456],[458,459],461,463,465,467,469,471,473,475,478,480,482,484,486,488,490,492,494,[497,498],500,[502,504],506,508,510,512,514,516,518,520,522,524,526,528,530,532,534,536,538,540,542,544,546,548,550,552,554,556,558,560,562,[570,571],[573,574],577,[579,582],584,586,588,590,880,882,886,895,902,[904,906],908,[910,911],[913,929],[931,939],975,984,986,988,990,992,994,996,998,1e3,1002,1004,1006,1012,1015,[1017,1018],[1021,1071],1120,1122,1124,1126,1128,1130,1132,1134,1136,1138,1140,1142,1144,1146,1148,1150,1152,1162,1164,1166,1168,1170,1172,1174,1176,1178,1180,1182,1184,1186,1188,1190,1192,1194,1196,1198,1200,1202,1204,1206,1208,1210,1212,1214,[1216,1217],1219,1221,1223,1225,1227,1229,1232,1234,1236,1238,1240,1242,1244,1246,1248,1250,1252,1254,1256,1258,1260,1262,1264,1266,1268,1270,1272,1274,1276,1278,1280,1282,1284,1286,1288,1290,1292,1294,1296,1298,1300,1302,1304,1306,1308,1310,1312,1314,1316,1318,1320,1322,1324,1326,[1329,1366],[4256,4293],4295,4301,[5024,5109],[7312,7354],[7357,7359],7680,7682,7684,7686,7688,7690,7692,7694,7696,7698,7700,7702,7704,7706,7708,7710,7712,7714,7716,7718,7720,7722,7724,7726,7728,7730,7732,7734,7736,7738,7740,7742,7744,7746,7748,7750,7752,7754,7756,7758,7760,7762,7764,7766,7768,7770,7772,7774,7776,7778,7780,7782,7784,7786,7788,7790,7792,7794,7796,7798,7800,7802,7804,7806,7808,7810,7812,7814,7816,7818,7820,7822,7824,7826,7828,7838,7840,7842,7844,7846,7848,7850,7852,7854,7856,7858,7860,7862,7864,7866,7868,7870,7872,7874,7876,7878,7880,7882,7884,7886,7888,7890,7892,7894,7896,7898,7900,7902,7904,7906,7908,7910,7912,7914,7916,7918,7920,7922,7924,7926,7928,7930,7932,7934,[7944,7951],[7960,7965],[7976,7983],[7992,7999],[8008,8013],8025,8027,8029,8031,[8040,8047],[8072,8079],[8088,8095],[8104,8111],[8120,8124],[8136,8140],[8152,8155],[8168,8172],[8184,8188],8486,[8490,8491],8498,[8544,8559],8579,[9398,9423],[11264,11311],11360,[11362,11364],11367,11369,11371,[11373,11376],11378,11381,[11390,11392],11394,11396,11398,11400,11402,11404,11406,11408,11410,11412,11414,11416,11418,11420,11422,11424,11426,11428,11430,11432,11434,11436,11438,11440,11442,11444,11446,11448,11450,11452,11454,11456,11458,11460,11462,11464,11466,11468,11470,11472,11474,11476,11478,11480,11482,11484,11486,11488,11490,11499,11501,11506,42560,42562,42564,42566,42568,42570,42572,42574,42576,42578,42580,42582,42584,42586,42588,42590,42592,42594,42596,42598,42600,42602,42604,42624,42626,42628,42630,42632,42634,42636,42638,42640,42642,42644,42646,42648,42650,42786,42788,42790,42792,42794,42796,42798,42802,42804,42806,42808,42810,42812,42814,42816,42818,42820,42822,42824,42826,42828,42830,42832,42834,42836,42838,42840,42842,42844,42846,42848,42850,42852,42854,42856,42858,42860,42862,42873,42875,[42877,42878],42880,42882,42884,42886,42891,42893,42896,42898,42902,42904,42906,42908,42910,42912,42914,42916,42918,42920,[42922,42926],[42928,42932],42934,42936,42938,42940,42942,42944,42946,[42948,42951],42953,42960,42966,42968,42997,[65313,65338],[66560,66599],[66736,66771],[66928,66938],[66940,66954],[66956,66962],[66964,66965],[68736,68786],[71840,71871],[93760,93791],[125184,125217]],Changes_When_NFKC_Casefolded:[[65,90],160,168,170,173,175,[178,181],[184,186],[188,190],[192,214],[216,223],256,258,260,262,264,266,268,270,272,274,276,278,280,282,284,286,288,290,292,294,296,298,300,302,304,[306,308],310,313,315,317,[319,321],323,325,327,[329,330],332,334,336,338,340,342,344,346,348,350,352,354,356,358,360,362,364,366,368,370,372,374,[376,377],379,381,383,[385,386],388,[390,391],[393,395],[398,401],[403,404],[406,408],[412,413],[415,416],418,420,[422,423],425,428,[430,431],[433,435],437,[439,440],444,[452,461],463,465,467,469,471,473,475,478,480,482,484,486,488,490,492,494,[497,500],[502,504],506,508,510,512,514,516,518,520,522,524,526,528,530,532,534,536,538,540,542,544,546,548,550,552,554,556,558,560,562,[570,571],[573,574],577,[579,582],584,586,588,590,[688,696],[728,733],[736,740],[832,833],[835,837],847,880,882,884,886,890,[894,895],[900,906],908,[910,911],[913,929],[931,939],962,[975,982],984,986,988,990,992,994,996,998,1e3,1002,1004,1006,[1008,1010],[1012,1013],1015,[1017,1018],[1021,1071],1120,1122,1124,1126,1128,1130,1132,1134,1136,1138,1140,1142,1144,1146,1148,1150,1152,1162,1164,1166,1168,1170,1172,1174,1176,1178,1180,1182,1184,1186,1188,1190,1192,1194,1196,1198,1200,1202,1204,1206,1208,1210,1212,1214,[1216,1217],1219,1221,1223,1225,1227,1229,1232,1234,1236,1238,1240,1242,1244,1246,1248,1250,1252,1254,1256,1258,1260,1262,1264,1266,1268,1270,1272,1274,1276,1278,1280,1282,1284,1286,1288,1290,1292,1294,1296,1298,1300,1302,1304,1306,1308,1310,1312,1314,1316,1318,1320,1322,1324,1326,[1329,1366],1415,1564,[1653,1656],[2392,2399],[2524,2525],2527,2611,2614,[2649,2651],2654,[2908,2909],3635,3763,[3804,3805],3852,3907,3917,3922,3927,3932,3945,3955,[3957,3961],3969,3987,3997,4002,4007,4012,4025,[4256,4293],4295,4301,4348,[4447,4448],[5112,5117],[6068,6069],[6155,6159],[7296,7304],[7312,7354],[7357,7359],[7468,7470],[7472,7482],[7484,7501],[7503,7530],7544,[7579,7615],7680,7682,7684,7686,7688,7690,7692,7694,7696,7698,7700,7702,7704,7706,7708,7710,7712,7714,7716,7718,7720,7722,7724,7726,7728,7730,7732,7734,7736,7738,7740,7742,7744,7746,7748,7750,7752,7754,7756,7758,7760,7762,7764,7766,7768,7770,7772,7774,7776,7778,7780,7782,7784,7786,7788,7790,7792,7794,7796,7798,7800,7802,7804,7806,7808,7810,7812,7814,7816,7818,7820,7822,7824,7826,7828,[7834,7835],7838,7840,7842,7844,7846,7848,7850,7852,7854,7856,7858,7860,7862,7864,7866,7868,7870,7872,7874,7876,7878,7880,7882,7884,7886,7888,7890,7892,7894,7896,7898,7900,7902,7904,7906,7908,7910,7912,7914,7916,7918,7920,7922,7924,7926,7928,7930,7932,7934,[7944,7951],[7960,7965],[7976,7983],[7992,7999],[8008,8013],8025,8027,8029,8031,[8040,8047],8049,8051,8053,8055,8057,8059,8061,[8064,8111],[8114,8116],[8119,8132],[8135,8143],8147,[8152,8155],[8157,8159],8163,[8168,8175],[8178,8180],[8183,8190],[8192,8207],8209,8215,[8228,8230],[8234,8239],[8243,8244],[8246,8247],8252,8254,[8263,8265],8279,[8287,8305],[8308,8334],[8336,8348],8360,[8448,8451],[8453,8455],[8457,8467],[8469,8470],[8473,8477],[8480,8482],8484,8486,8488,[8490,8493],[8495,8505],[8507,8512],[8517,8521],[8528,8575],8579,8585,[8748,8749],[8751,8752],[9001,9002],[9312,9450],10764,[10868,10870],10972,[11264,11311],11360,[11362,11364],11367,11369,11371,[11373,11376],11378,11381,[11388,11392],11394,11396,11398,11400,11402,11404,11406,11408,11410,11412,11414,11416,11418,11420,11422,11424,11426,11428,11430,11432,11434,11436,11438,11440,11442,11444,11446,11448,11450,11452,11454,11456,11458,11460,11462,11464,11466,11468,11470,11472,11474,11476,11478,11480,11482,11484,11486,11488,11490,11499,11501,11506,11631,11935,12019,[12032,12245],12288,12342,[12344,12346],[12443,12444],12447,12543,[12593,12686],[12690,12703],[12800,12830],[12832,12871],[12880,12926],[12928,13311],42560,42562,42564,42566,42568,42570,42572,42574,42576,42578,42580,42582,42584,42586,42588,42590,42592,42594,42596,42598,42600,42602,42604,42624,42626,42628,42630,42632,42634,42636,42638,42640,42642,42644,42646,42648,42650,[42652,42653],42786,42788,42790,42792,42794,42796,42798,42802,42804,42806,42808,42810,42812,42814,42816,42818,42820,42822,42824,42826,42828,42830,42832,42834,42836,42838,42840,42842,42844,42846,42848,42850,42852,42854,42856,42858,42860,42862,42864,42873,42875,[42877,42878],42880,42882,42884,42886,42891,42893,42896,42898,42902,42904,42906,42908,42910,42912,42914,42916,42918,42920,[42922,42926],[42928,42932],42934,42936,42938,42940,42942,42944,42946,[42948,42951],42953,42960,42966,42968,[42994,42997],[43e3,43001],[43868,43871],43881,[43888,43967],[63744,64013],64016,64018,[64021,64030],64032,64034,[64037,64038],[64042,64109],[64112,64217],[64256,64262],[64275,64279],64285,[64287,64310],[64312,64316],64318,[64320,64321],[64323,64324],[64326,64433],[64467,64829],[64848,64911],[64914,64967],[65008,65020],[65024,65049],[65072,65092],[65095,65106],[65108,65126],[65128,65131],[65136,65138],65140,[65142,65276],65279,[65281,65470],[65474,65479],[65482,65487],[65490,65495],[65498,65500],[65504,65510],[65512,65518],[65520,65528],[66560,66599],[66736,66771],[66928,66938],[66940,66954],[66956,66962],[66964,66965],[67457,67461],[67463,67504],[67506,67514],[68736,68786],[71840,71871],[93760,93791],[113824,113827],[119134,119140],[119155,119162],[119227,119232],[119808,119892],[119894,119964],[119966,119967],119970,[119973,119974],[119977,119980],[119982,119993],119995,[119997,120003],[120005,120069],[120071,120074],[120077,120084],[120086,120092],[120094,120121],[120123,120126],[120128,120132],120134,[120138,120144],[120146,120485],[120488,120779],[120782,120831],[122928,122989],[125184,125217],[126464,126467],[126469,126495],[126497,126498],126500,126503,[126505,126514],[126516,126519],126521,126523,126530,126535,126537,126539,[126541,126543],[126545,126546],126548,126551,126553,126555,126557,126559,[126561,126562],126564,[126567,126570],[126572,126578],[126580,126583],[126585,126588],126590,[126592,126601],[126603,126619],[126625,126627],[126629,126633],[126635,126651],[127232,127242],[127248,127278],[127280,127311],[127338,127340],127376,[127488,127490],[127504,127547],[127552,127560],[127568,127569],[130032,130041],[194560,195101],[917504,921599]],Changes_When_Titlecased:[[97,122],181,[223,246],[248,255],257,259,261,263,265,267,269,271,273,275,277,279,281,283,285,287,289,291,293,295,297,299,301,303,305,307,309,311,314,316,318,320,322,324,326,[328,329],331,333,335,337,339,341,343,345,347,349,351,353,355,357,359,361,363,365,367,369,371,373,375,378,380,[382,384],387,389,392,396,402,405,[409,410],414,417,419,421,424,429,432,436,438,441,445,447,452,[454,455],[457,458],460,462,464,466,468,470,472,474,[476,477],479,481,483,485,487,489,491,493,[495,497],499,501,505,507,509,511,513,515,517,519,521,523,525,527,529,531,533,535,537,539,541,543,547,549,551,553,555,557,559,561,563,572,[575,576],578,583,585,587,589,[591,596],[598,599],601,[603,604],[608,609],611,[613,614],[616,620],623,[625,626],629,637,640,[642,643],[647,652],658,[669,670],837,881,883,887,[891,893],912,[940,974],[976,977],[981,983],985,987,989,991,993,995,997,999,1001,1003,1005,[1007,1011],1013,1016,1019,[1072,1119],1121,1123,1125,1127,1129,1131,1133,1135,1137,1139,1141,1143,1145,1147,1149,1151,1153,1163,1165,1167,1169,1171,1173,1175,1177,1179,1181,1183,1185,1187,1189,1191,1193,1195,1197,1199,1201,1203,1205,1207,1209,1211,1213,1215,1218,1220,1222,1224,1226,1228,[1230,1231],1233,1235,1237,1239,1241,1243,1245,1247,1249,1251,1253,1255,1257,1259,1261,1263,1265,1267,1269,1271,1273,1275,1277,1279,1281,1283,1285,1287,1289,1291,1293,1295,1297,1299,1301,1303,1305,1307,1309,1311,1313,1315,1317,1319,1321,1323,1325,1327,[1377,1415],[5112,5117],[7296,7304],7545,7549,7566,7681,7683,7685,7687,7689,7691,7693,7695,7697,7699,7701,7703,7705,7707,7709,7711,7713,7715,7717,7719,7721,7723,7725,7727,7729,7731,7733,7735,7737,7739,7741,7743,7745,7747,7749,7751,7753,7755,7757,7759,7761,7763,7765,7767,7769,7771,7773,7775,7777,7779,7781,7783,7785,7787,7789,7791,7793,7795,7797,7799,7801,7803,7805,7807,7809,7811,7813,7815,7817,7819,7821,7823,7825,7827,[7829,7835],7841,7843,7845,7847,7849,7851,7853,7855,7857,7859,7861,7863,7865,7867,7869,7871,7873,7875,7877,7879,7881,7883,7885,7887,7889,7891,7893,7895,7897,7899,7901,7903,7905,7907,7909,7911,7913,7915,7917,7919,7921,7923,7925,7927,7929,7931,7933,[7935,7943],[7952,7957],[7968,7975],[7984,7991],[8e3,8005],[8016,8023],[8032,8039],[8048,8061],[8064,8071],[8080,8087],[8096,8103],[8112,8116],[8118,8119],8126,[8130,8132],[8134,8135],[8144,8147],[8150,8151],[8160,8167],[8178,8180],[8182,8183],8526,[8560,8575],8580,[9424,9449],[11312,11359],11361,[11365,11366],11368,11370,11372,11379,11382,11393,11395,11397,11399,11401,11403,11405,11407,11409,11411,11413,11415,11417,11419,11421,11423,11425,11427,11429,11431,11433,11435,11437,11439,11441,11443,11445,11447,11449,11451,11453,11455,11457,11459,11461,11463,11465,11467,11469,11471,11473,11475,11477,11479,11481,11483,11485,11487,11489,11491,11500,11502,11507,[11520,11557],11559,11565,42561,42563,42565,42567,42569,42571,42573,42575,42577,42579,42581,42583,42585,42587,42589,42591,42593,42595,42597,42599,42601,42603,42605,42625,42627,42629,42631,42633,42635,42637,42639,42641,42643,42645,42647,42649,42651,42787,42789,42791,42793,42795,42797,42799,42803,42805,42807,42809,42811,42813,42815,42817,42819,42821,42823,42825,42827,42829,42831,42833,42835,42837,42839,42841,42843,42845,42847,42849,42851,42853,42855,42857,42859,42861,42863,42874,42876,42879,42881,42883,42885,42887,42892,42897,[42899,42900],42903,42905,42907,42909,42911,42913,42915,42917,42919,42921,42933,42935,42937,42939,42941,42943,42945,42947,42952,42954,42961,42967,42969,42998,43859,[43888,43967],[64256,64262],[64275,64279],[65345,65370],[66600,66639],[66776,66811],[66967,66977],[66979,66993],[66995,67001],[67003,67004],[68800,68850],[71872,71903],[93792,93823],[125218,125251]],Changes_When_Uppercased:[[97,122],181,[223,246],[248,255],257,259,261,263,265,267,269,271,273,275,277,279,281,283,285,287,289,291,293,295,297,299,301,303,305,307,309,311,314,316,318,320,322,324,326,[328,329],331,333,335,337,339,341,343,345,347,349,351,353,355,357,359,361,363,365,367,369,371,373,375,378,380,[382,384],387,389,392,396,402,405,[409,410],414,417,419,421,424,429,432,436,438,441,445,447,[453,454],[456,457],[459,460],462,464,466,468,470,472,474,[476,477],479,481,483,485,487,489,491,493,[495,496],[498,499],501,505,507,509,511,513,515,517,519,521,523,525,527,529,531,533,535,537,539,541,543,547,549,551,553,555,557,559,561,563,572,[575,576],578,583,585,587,589,[591,596],[598,599],601,[603,604],[608,609],611,[613,614],[616,620],623,[625,626],629,637,640,[642,643],[647,652],658,[669,670],837,881,883,887,[891,893],912,[940,974],[976,977],[981,983],985,987,989,991,993,995,997,999,1001,1003,1005,[1007,1011],1013,1016,1019,[1072,1119],1121,1123,1125,1127,1129,1131,1133,1135,1137,1139,1141,1143,1145,1147,1149,1151,1153,1163,1165,1167,1169,1171,1173,1175,1177,1179,1181,1183,1185,1187,1189,1191,1193,1195,1197,1199,1201,1203,1205,1207,1209,1211,1213,1215,1218,1220,1222,1224,1226,1228,[1230,1231],1233,1235,1237,1239,1241,1243,1245,1247,1249,1251,1253,1255,1257,1259,1261,1263,1265,1267,1269,1271,1273,1275,1277,1279,1281,1283,1285,1287,1289,1291,1293,1295,1297,1299,1301,1303,1305,1307,1309,1311,1313,1315,1317,1319,1321,1323,1325,1327,[1377,1415],[4304,4346],[4349,4351],[5112,5117],[7296,7304],7545,7549,7566,7681,7683,7685,7687,7689,7691,7693,7695,7697,7699,7701,7703,7705,7707,7709,7711,7713,7715,7717,7719,7721,7723,7725,7727,7729,7731,7733,7735,7737,7739,7741,7743,7745,7747,7749,7751,7753,7755,7757,7759,7761,7763,7765,7767,7769,7771,7773,7775,7777,7779,7781,7783,7785,7787,7789,7791,7793,7795,7797,7799,7801,7803,7805,7807,7809,7811,7813,7815,7817,7819,7821,7823,7825,7827,[7829,7835],7841,7843,7845,7847,7849,7851,7853,7855,7857,7859,7861,7863,7865,7867,7869,7871,7873,7875,7877,7879,7881,7883,7885,7887,7889,7891,7893,7895,7897,7899,7901,7903,7905,7907,7909,7911,7913,7915,7917,7919,7921,7923,7925,7927,7929,7931,7933,[7935,7943],[7952,7957],[7968,7975],[7984,7991],[8e3,8005],[8016,8023],[8032,8039],[8048,8061],[8064,8116],[8118,8119],8124,8126,[8130,8132],[8134,8135],8140,[8144,8147],[8150,8151],[8160,8167],[8178,8180],[8182,8183],8188,8526,[8560,8575],8580,[9424,9449],[11312,11359],11361,[11365,11366],11368,11370,11372,11379,11382,11393,11395,11397,11399,11401,11403,11405,11407,11409,11411,11413,11415,11417,11419,11421,11423,11425,11427,11429,11431,11433,11435,11437,11439,11441,11443,11445,11447,11449,11451,11453,11455,11457,11459,11461,11463,11465,11467,11469,11471,11473,11475,11477,11479,11481,11483,11485,11487,11489,11491,11500,11502,11507,[11520,11557],11559,11565,42561,42563,42565,42567,42569,42571,42573,42575,42577,42579,42581,42583,42585,42587,42589,42591,42593,42595,42597,42599,42601,42603,42605,42625,42627,42629,42631,42633,42635,42637,42639,42641,42643,42645,42647,42649,42651,42787,42789,42791,42793,42795,42797,42799,42803,42805,42807,42809,42811,42813,42815,42817,42819,42821,42823,42825,42827,42829,42831,42833,42835,42837,42839,42841,42843,42845,42847,42849,42851,42853,42855,42857,42859,42861,42863,42874,42876,42879,42881,42883,42885,42887,42892,42897,[42899,42900],42903,42905,42907,42909,42911,42913,42915,42917,42919,42921,42933,42935,42937,42939,42941,42943,42945,42947,42952,42954,42961,42967,42969,42998,43859,[43888,43967],[64256,64262],[64275,64279],[65345,65370],[66600,66639],[66776,66811],[66967,66977],[66979,66993],[66995,67001],[67003,67004],[68800,68850],[71872,71903],[93792,93823],[125218,125251]],Composition_Exclusion:[[2392,2399],[2524,2525],2527,2611,2614,[2649,2651],2654,[2908,2909],3907,3917,3922,3927,3932,3945,3958,3960,3987,3997,4002,4007,4012,4025,10972,64285,64287,[64298,64310],[64312,64316],64318,[64320,64321],[64323,64324],[64326,64334],[119134,119140],[119227,119232]],Dash:[45,1418,1470,5120,6150,[8208,8213],8275,8315,8331,8722,11799,11802,[11834,11835],11840,11869,12316,12336,12448,[65073,65074],65112,65123,65293,69293],Default_Ignorable_Code_Point:[173,847,1564,[4447,4448],[6068,6069],[6155,6159],[8203,8207],[8234,8238],[8288,8303],12644,[65024,65039],65279,65440,[65520,65528],[113824,113827],[119155,119162],[917504,921599]],Deprecated:[329,1651,3959,3961,[6051,6052],[8298,8303],[9001,9002],917505],Diacritic:[94,96,168,175,180,[183,184],[688,846],[848,855],[861,866],[884,885],890,[900,901],[1155,1159],1369,[1425,1441],[1443,1469],1471,[1473,1474],1476,[1611,1618],[1623,1624],[1759,1760],[1765,1766],[1770,1772],[1840,1866],[1958,1968],[2027,2037],[2072,2073],[2200,2207],[2249,2258],[2275,2302],2364,2381,[2385,2388],2417,2492,2509,2620,2637,2748,2765,[2813,2815],2876,2893,2901,3021,3132,3149,3260,3277,[3387,3388],3405,3530,[3655,3660],3662,3770,[3784,3788],[3864,3865],3893,3895,3897,[3902,3903],[3970,3972],[3974,3975],4038,4151,[4153,4154],[4195,4196],[4201,4205],[4231,4237],4239,[4250,4251],[4957,4959],[5908,5909],[6089,6099],6109,[6457,6459],[6773,6780],6783,[6832,6846],[6849,6859],6964,6980,[7019,7027],[7082,7083],[7222,7223],[7288,7293],[7376,7400],7405,7412,[7415,7417],[7468,7530],[7620,7631],[7669,7679],8125,[8127,8129],[8141,8143],[8157,8159],[8173,8175],[8189,8190],[11503,11505],11823,[12330,12335],[12441,12444],12540,42607,[42620,42621],42623,[42652,42653],[42736,42737],[42752,42785],[42888,42890],[43e3,43001],43204,[43232,43249],[43307,43310],43347,43443,43456,43493,[43643,43645],[43711,43714],43766,[43867,43871],[43881,43883],[44012,44013],64286,[65056,65071],65342,65344,65392,[65438,65439],65507,66272,[67456,67461],[67463,67504],[67506,67514],[68325,68326],[68898,68903],[69373,69375],[69446,69456],[69506,69509],69702,69744,[69817,69818],[69939,69940],70003,70080,[70090,70092],[70197,70198],[70377,70378],70460,70477,[70502,70508],[70512,70516],70722,70726,[70850,70851],[71103,71104],71231,[71350,71351],71467,[71737,71738],[71997,71998],72003,72160,72244,72263,72345,72767,73026,[73028,73029],73111,[78919,78933],[92912,92916],[92976,92982],[94095,94111],[94192,94193],[110576,110579],[110581,110587],[110589,110590],[118528,118573],[118576,118598],[119143,119145],[119149,119154],[119163,119170],[119173,119179],[119210,119213],[122928,122989],[123184,123190],123566,[123628,123631],[125136,125142],[125252,125254],[125256,125258]],Emoji:[35,42,[48,57],169,174,8252,8265,8482,8505,[8596,8601],[8617,8618],[8986,8987],9e3,9167,[9193,9203],[9208,9210],9410,[9642,9643],9654,9664,[9723,9726],[9728,9732],9742,9745,[9748,9749],9752,9757,9760,[9762,9763],9766,9770,[9774,9775],[9784,9786],9792,9794,[9800,9811],[9823,9824],9827,[9829,9830],9832,9851,[9854,9855],[9874,9879],9881,[9883,9884],[9888,9889],9895,[9898,9899],[9904,9905],[9917,9918],[9924,9925],9928,[9934,9935],9937,[9939,9940],[9961,9962],[9968,9973],[9975,9978],9981,9986,9989,[9992,9997],9999,10002,10004,10006,10013,10017,10024,[10035,10036],10052,10055,10060,10062,[10067,10069],10071,[10083,10084],[10133,10135],10145,10160,10175,[10548,10549],[11013,11015],[11035,11036],11088,11093,12336,12349,12951,12953,126980,127183,[127344,127345],[127358,127359],127374,[127377,127386],[127462,127487],[127489,127490],127514,127535,[127538,127546],[127568,127569],[127744,127777],[127780,127891],[127894,127895],[127897,127899],[127902,127984],[127987,127989],[127991,128253],[128255,128317],[128329,128334],[128336,128359],[128367,128368],[128371,128378],128391,[128394,128397],128400,[128405,128406],[128420,128421],128424,[128433,128434],128444,[128450,128452],[128465,128467],[128476,128478],128481,128483,128488,128495,128499,[128506,128591],[128640,128709],[128715,128722],[128725,128727],[128732,128741],128745,[128747,128748],128752,[128755,128764],[128992,129003],129008,[129292,129338],[129340,129349],[129351,129535],[129648,129660],[129664,129672],[129680,129725],[129727,129733],[129742,129755],[129760,129768],[129776,129784]],Emoji_Component:[35,42,[48,57],8205,8419,65039,[127462,127487],[127995,127999],[129456,129459],[917536,917631]],Emoji_Modifier:[[127995,127999]],Emoji_Modifier_Base:[9757,9977,[9994,9997],127877,[127938,127940],127943,[127946,127948],[128066,128067],[128070,128080],[128102,128120],128124,[128129,128131],[128133,128135],128143,128145,128170,[128372,128373],128378,128400,[128405,128406],[128581,128583],[128587,128591],128675,[128692,128694],128704,128716,129292,129295,[129304,129311],129318,[129328,129337],[129340,129342],129399,[129461,129462],[129464,129465],129467,[129485,129487],[129489,129501],[129731,129733],[129776,129784]],Emoji_Presentation:[[8986,8987],[9193,9196],9200,9203,[9725,9726],[9748,9749],[9800,9811],9855,9875,9889,[9898,9899],[9917,9918],[9924,9925],9934,9940,9962,[9970,9971],9973,9978,9981,9989,[9994,9995],10024,10060,10062,[10067,10069],10071,[10133,10135],10160,10175,[11035,11036],11088,11093,126980,127183,127374,[127377,127386],[127462,127487],127489,127514,127535,[127538,127542],[127544,127546],[127568,127569],[127744,127776],[127789,127797],[127799,127868],[127870,127891],[127904,127946],[127951,127955],[127968,127984],127988,[127992,128062],128064,[128066,128252],[128255,128317],[128331,128334],[128336,128359],128378,[128405,128406],128420,[128507,128591],[128640,128709],128716,[128720,128722],[128725,128727],[128732,128735],[128747,128748],[128756,128764],[128992,129003],129008,[129292,129338],[129340,129349],[129351,129535],[129648,129660],[129664,129672],[129680,129725],[129727,129733],[129742,129755],[129760,129768],[129776,129784]],Expands_On_NFC:[836,[2392,2399],[2524,2525],2527,2611,2614,[2649,2651],2654,[2908,2909],3907,3917,3922,3927,3932,3945,3955,[3957,3958],3960,3969,3987,3997,4002,4007,4012,4025,10972,64285,64287,[64298,64310],[64312,64316],64318,[64320,64321],[64323,64324],[64326,64334],[119134,119140],[119227,119232]],Expands_On_NFD:[[192,197],[199,207],[209,214],[217,221],[224,229],[231,239],[241,246],[249,253],[255,271],[274,293],[296,304],[308,311],[313,318],[323,328],[332,337],[340,357],[360,382],[416,417],[431,432],[461,476],[478,483],[486,496],[500,501],[504,539],[542,543],[550,563],836,[901,902],[904,906],908,[910,912],[938,944],[970,974],[979,980],[1024,1025],1027,1031,[1036,1038],1049,1081,[1104,1105],1107,1111,[1116,1118],[1142,1143],[1217,1218],[1232,1235],[1238,1239],[1242,1247],[1250,1255],[1258,1269],[1272,1273],[1570,1574],1728,1730,1747,2345,2353,2356,[2392,2399],[2507,2508],[2524,2525],2527,2611,2614,[2649,2651],2654,2888,[2891,2892],[2908,2909],2964,[3018,3020],3144,3264,[3271,3272],[3274,3275],[3402,3404],3546,[3548,3550],3907,3917,3922,3927,3932,3945,3955,[3957,3958],3960,3969,3987,3997,4002,4007,4012,4025,4134,6918,6920,6922,6924,6926,6930,6971,6973,[6976,6977],6979,[7680,7833],7835,[7840,7929],[7936,7957],[7960,7965],[7968,8005],[8008,8013],[8016,8023],8025,8027,8029,[8031,8061],[8064,8116],[8118,8124],[8129,8132],[8134,8147],[8150,8155],[8157,8174],[8178,8180],[8182,8188],8491,[8602,8603],8622,[8653,8655],8708,8713,8716,8740,8742,8769,8772,8775,8777,8800,8802,[8813,8817],[8820,8821],[8824,8825],[8832,8833],[8836,8837],[8840,8841],[8876,8879],[8928,8931],[8938,8941],10972,12364,12366,12368,12370,12372,12374,12376,12378,12380,12382,12384,12386,12389,12391,12393,[12400,12401],[12403,12404],[12406,12407],[12409,12410],[12412,12413],12436,12446,12460,12462,12464,12466,12468,12470,12472,12474,12476,12478,12480,12482,12485,12487,12489,[12496,12497],[12499,12500],[12502,12503],[12505,12506],[12508,12509],12532,[12535,12538],12542,[44032,55203],64285,64287,[64298,64310],[64312,64316],64318,[64320,64321],[64323,64324],[64326,64334],69786,69788,69803,[69934,69935],[70475,70476],[70843,70844],70846,[71098,71099],71992,[119134,119140],[119227,119232]],Expands_On_NFKC:[168,175,180,184,[188,190],[306,307],[319,320],329,[452,460],[497,499],[728,733],836,890,[900,901],1415,[1653,1656],[2392,2399],[2524,2525],2527,2611,2614,[2649,2651],2654,[2908,2909],3635,3763,[3804,3805],3907,3917,3922,3927,3932,3945,3955,[3957,3961],3969,3987,3997,4002,4007,4012,4025,7834,8125,[8127,8129],[8141,8143],[8157,8159],[8173,8174],[8189,8190],8215,[8229,8230],[8243,8244],[8246,8247],8252,8254,[8263,8265],8279,8360,[8448,8449],8451,[8453,8454],8457,8470,[8480,8482],8507,[8528,8543],[8545,8547],[8549,8552],[8554,8555],[8561,8563],[8565,8568],[8570,8571],8585,[8748,8749],[8751,8752],[9321,9397],10764,[10868,10870],10972,[12443,12444],12447,12543,[12800,12830],[12832,12867],[12880,12895],[12924,12925],[12977,13007],[13055,13311],[64256,64262],[64275,64279],64285,64287,[64298,64310],[64312,64316],64318,[64320,64321],[64323,64324],[64326,64335],64477,[64490,64507],[64512,64829],[64848,64911],[64914,64967],[65008,65020],65049,65072,[65097,65100],[65136,65138],65140,[65142,65151],[65269,65276],65507,[119134,119140],[119227,119232],[127232,127242],[127248,127274],[127277,127278],[127306,127311],[127338,127340],127376,[127488,127489],[127552,127560]],Expands_On_NFKD:[168,175,180,184,[188,190],[192,197],[199,207],[209,214],[217,221],[224,229],[231,239],[241,246],[249,253],[255,271],[274,293],[296,304],[306,311],[313,320],[323,329],[332,337],[340,357],[360,382],[416,417],[431,432],[452,476],[478,483],[486,501],[504,539],[542,543],[550,563],[728,733],836,890,[900,902],[904,906],908,[910,912],[938,944],[970,974],[979,980],[1024,1025],1027,1031,[1036,1038],1049,1081,[1104,1105],1107,1111,[1116,1118],[1142,1143],[1217,1218],[1232,1235],[1238,1239],[1242,1247],[1250,1255],[1258,1269],[1272,1273],1415,[1570,1574],[1653,1656],1728,1730,1747,2345,2353,2356,[2392,2399],[2507,2508],[2524,2525],2527,2611,2614,[2649,2651],2654,2888,[2891,2892],[2908,2909],2964,[3018,3020],3144,3264,[3271,3272],[3274,3275],[3402,3404],3546,[3548,3550],3635,3763,[3804,3805],3907,3917,3922,3927,3932,3945,3955,[3957,3961],3969,3987,3997,4002,4007,4012,4025,4134,6918,6920,6922,6924,6926,6930,6971,6973,[6976,6977],6979,[7680,7835],[7840,7929],[7936,7957],[7960,7965],[7968,8005],[8008,8013],[8016,8023],8025,8027,8029,[8031,8061],[8064,8116],[8118,8125],[8127,8132],[8134,8147],[8150,8155],[8157,8174],[8178,8180],[8182,8190],8215,[8229,8230],[8243,8244],[8246,8247],8252,8254,[8263,8265],8279,8360,[8448,8449],8451,[8453,8454],8457,8470,[8480,8482],8491,8507,[8528,8543],[8545,8547],[8549,8552],[8554,8555],[8561,8563],[8565,8568],[8570,8571],8585,[8602,8603],8622,[8653,8655],8708,8713,8716,8740,8742,[8748,8749],[8751,8752],8769,8772,8775,8777,8800,8802,[8813,8817],[8820,8821],[8824,8825],[8832,8833],[8836,8837],[8840,8841],[8876,8879],[8928,8931],[8938,8941],[9321,9397],10764,[10868,10870],10972,12364,12366,12368,12370,12372,12374,12376,12378,12380,12382,12384,12386,12389,12391,12393,[12400,12401],[12403,12404],[12406,12407],[12409,12410],[12412,12413],12436,[12443,12444],[12446,12447],12460,12462,12464,12466,12468,12470,12472,12474,12476,12478,12480,12482,12485,12487,12489,[12496,12497],[12499,12500],[12502,12503],[12505,12506],[12508,12509],12532,[12535,12538],[12542,12543],[12800,12830],[12832,12867],[12880,12895],[12910,12926],[12977,13007],[13055,13311],[44032,55203],[64256,64262],[64275,64279],64285,64287,[64298,64310],[64312,64316],64318,[64320,64321],[64323,64324],[64326,64335],[64420,64421],[64432,64433],64477,[64490,64507],[64512,64829],[64848,64911],[64914,64967],[65008,65020],65049,65072,[65097,65100],[65136,65138],65140,[65142,65151],[65153,65164],[65269,65276],65507,69786,69788,69803,[69934,69935],[70475,70476],[70843,70844],70846,[71098,71099],71992,[119134,119140],[119227,119232],[127232,127242],[127248,127274],[127277,127278],[127306,127311],[127338,127340],127376,[127488,127489],127507,[127552,127560]],Extended_Pictographic:[169,174,8252,8265,8482,8505,[8596,8601],[8617,8618],[8986,8987],9e3,9096,9167,[9193,9203],[9208,9210],9410,[9642,9643],9654,9664,[9723,9726],[9728,9733],[9735,9746],[9748,9861],[9872,9989],[9992,10002],10004,10006,10013,10017,10024,[10035,10036],10052,10055,10060,10062,[10067,10069],10071,[10083,10087],[10133,10135],10145,10160,10175,[10548,10549],[11013,11015],[11035,11036],11088,11093,12336,12349,12951,12953,[126976,127231],[127245,127247],127279,[127340,127345],[127358,127359],127374,[127377,127386],[127405,127461],[127489,127503],127514,127535,[127538,127546],[127548,127551],[127561,127994],[128e3,128317],[128326,128591],[128640,128767],[128884,128895],[128981,129023],[129036,129039],[129096,129103],[129114,129119],[129160,129167],[129198,129279],[129292,129338],[129340,129349],[129351,129791],[130048,131069]],Extender:[183,[720,721],1600,2042,2901,3654,3782,6154,6211,6823,7222,7291,12293,[12337,12341],[12445,12446],[12540,12542],40981,42508,43471,43494,43632,43741,[43763,43764],65392,[67457,67458],70493,[71110,71112],72344,[92994,92995],[94176,94177],94179,[123196,123197],[125252,125254]],Full_Composition_Exclusion:[[832,833],[835,836],884,894,903,[2392,2399],[2524,2525],2527,2611,2614,[2649,2651],2654,[2908,2909],3907,3917,3922,3927,3932,3945,3955,[3957,3958],3960,3969,3987,3997,4002,4007,4012,4025,8049,8051,8053,8055,8057,8059,8061,8123,8126,8137,8139,8147,8155,8163,8171,[8174,8175],8185,8187,8189,[8192,8193],8486,[8490,8491],[9001,9002],10972,[63744,64013],64016,64018,[64021,64030],64032,64034,[64037,64038],[64042,64109],[64112,64217],64285,64287,[64298,64310],[64312,64316],64318,[64320,64321],[64323,64324],[64326,64334],[119134,119140],[119227,119232],[194560,195101]],Grapheme_Base:[[32,126],[160,172],[174,767],[880,887],[890,895],[900,906],908,[910,929],[931,1154],[1162,1327],[1329,1366],[1369,1418],[1421,1423],1470,1472,1475,1478,[1488,1514],[1519,1524],[1542,1551],1563,[1565,1610],[1632,1647],[1649,1749],1758,[1765,1766],1769,[1774,1805],1808,[1810,1839],[1869,1957],1969,[1984,2026],[2036,2042],[2046,2069],2074,2084,2088,[2096,2110],[2112,2136],2142,[2144,2154],[2160,2190],[2208,2249],[2307,2361],2363,[2365,2368],[2377,2380],[2382,2384],[2392,2401],[2404,2432],[2434,2435],[2437,2444],[2447,2448],[2451,2472],[2474,2480],2482,[2486,2489],2493,[2495,2496],[2503,2504],[2507,2508],2510,[2524,2525],[2527,2529],[2534,2557],2563,[2565,2570],[2575,2576],[2579,2600],[2602,2608],[2610,2611],[2613,2614],[2616,2617],[2622,2624],[2649,2652],2654,[2662,2671],[2674,2676],2678,2691,[2693,2701],[2703,2705],[2707,2728],[2730,2736],[2738,2739],[2741,2745],[2749,2752],2761,[2763,2764],2768,[2784,2785],[2790,2801],2809,[2818,2819],[2821,2828],[2831,2832],[2835,2856],[2858,2864],[2866,2867],[2869,2873],2877,2880,[2887,2888],[2891,2892],[2908,2909],[2911,2913],[2918,2935],2947,[2949,2954],[2958,2960],[2962,2965],[2969,2970],2972,[2974,2975],[2979,2980],[2984,2986],[2990,3001],3007,[3009,3010],[3014,3016],[3018,3020],3024,[3046,3066],[3073,3075],[3077,3084],[3086,3088],[3090,3112],[3114,3129],3133,[3137,3140],[3160,3162],3165,[3168,3169],[3174,3183],[3191,3200],[3202,3212],[3214,3216],[3218,3240],[3242,3251],[3253,3257],[3261,3262],[3264,3265],[3267,3268],[3271,3272],[3274,3275],[3293,3294],[3296,3297],[3302,3311],[3313,3315],[3330,3340],[3342,3344],[3346,3386],3389,[3391,3392],[3398,3400],[3402,3404],[3406,3407],[3412,3414],[3416,3425],[3430,3455],[3458,3459],[3461,3478],[3482,3505],[3507,3515],3517,[3520,3526],[3536,3537],[3544,3550],[3558,3567],[3570,3572],[3585,3632],[3634,3635],[3647,3654],[3663,3675],[3713,3714],3716,[3718,3722],[3724,3747],3749,[3751,3760],[3762,3763],3773,[3776,3780],3782,[3792,3801],[3804,3807],[3840,3863],[3866,3892],3894,3896,[3898,3911],[3913,3948],3967,3973,[3976,3980],[4030,4037],[4039,4044],[4046,4058],[4096,4140],4145,4152,[4155,4156],[4159,4183],[4186,4189],[4193,4208],[4213,4225],[4227,4228],[4231,4236],[4238,4252],[4254,4293],4295,4301,[4304,4680],[4682,4685],[4688,4694],4696,[4698,4701],[4704,4744],[4746,4749],[4752,4784],[4786,4789],[4792,4798],4800,[4802,4805],[4808,4822],[4824,4880],[4882,4885],[4888,4954],[4960,4988],[4992,5017],[5024,5109],[5112,5117],[5120,5788],[5792,5880],[5888,5905],5909,[5919,5937],[5940,5942],[5952,5969],[5984,5996],[5998,6e3],[6016,6067],6070,[6078,6085],[6087,6088],[6100,6108],[6112,6121],[6128,6137],[6144,6154],[6160,6169],[6176,6264],[6272,6276],[6279,6312],6314,[6320,6389],[6400,6430],[6435,6438],[6441,6443],[6448,6449],[6451,6456],6464,[6468,6509],[6512,6516],[6528,6571],[6576,6601],[6608,6618],[6622,6678],[6681,6682],[6686,6741],6743,6753,[6755,6756],[6765,6770],[6784,6793],[6800,6809],[6816,6829],[6916,6963],6971,[6973,6977],[6979,6988],[6992,7018],[7028,7038],[7042,7073],[7078,7079],7082,[7086,7141],7143,[7146,7148],7150,[7154,7155],[7164,7211],[7220,7221],[7227,7241],[7245,7304],[7312,7354],[7357,7367],7379,7393,[7401,7404],[7406,7411],[7413,7415],7418,[7424,7615],[7680,7957],[7960,7965],[7968,8005],[8008,8013],[8016,8023],8025,8027,8029,[8031,8061],[8064,8116],[8118,8132],[8134,8147],[8150,8155],[8157,8175],[8178,8180],[8182,8190],[8192,8202],[8208,8231],[8239,8287],[8304,8305],[8308,8334],[8336,8348],[8352,8384],[8448,8587],[8592,9254],[9280,9290],[9312,11123],[11126,11157],[11159,11502],[11506,11507],[11513,11557],11559,11565,[11568,11623],[11631,11632],[11648,11670],[11680,11686],[11688,11694],[11696,11702],[11704,11710],[11712,11718],[11720,11726],[11728,11734],[11736,11742],[11776,11869],[11904,11929],[11931,12019],[12032,12245],[12272,12283],[12288,12329],[12336,12351],[12353,12438],[12443,12543],[12549,12591],[12593,12686],[12688,12771],[12784,12830],[12832,42124],[42128,42182],[42192,42539],[42560,42606],42611,[42622,42653],[42656,42735],[42738,42743],[42752,42954],[42960,42961],42963,[42965,42969],[42994,43009],[43011,43013],[43015,43018],[43020,43044],[43047,43051],[43056,43065],[43072,43127],[43136,43203],[43214,43225],[43250,43262],[43264,43301],[43310,43334],[43346,43347],[43359,43388],[43395,43442],[43444,43445],[43450,43451],[43454,43469],[43471,43481],[43486,43492],[43494,43518],[43520,43560],[43567,43568],[43571,43572],[43584,43586],[43588,43595],43597,[43600,43609],[43612,43643],[43645,43695],43697,[43701,43702],[43705,43709],43712,43714,[43739,43755],[43758,43765],[43777,43782],[43785,43790],[43793,43798],[43808,43814],[43816,43822],[43824,43883],[43888,44004],[44006,44007],[44009,44012],[44016,44025],[44032,55203],[55216,55238],[55243,55291],[63744,64109],[64112,64217],[64256,64262],[64275,64279],64285,[64287,64310],[64312,64316],64318,[64320,64321],[64323,64324],[64326,64450],[64467,64911],[64914,64967],64975,[65008,65023],[65040,65049],[65072,65106],[65108,65126],[65128,65131],[65136,65140],[65142,65276],[65281,65437],[65440,65470],[65474,65479],[65482,65487],[65490,65495],[65498,65500],[65504,65510],[65512,65518],[65532,65533],[65536,65547],[65549,65574],[65576,65594],[65596,65597],[65599,65613],[65616,65629],[65664,65786],[65792,65794],[65799,65843],[65847,65934],[65936,65948],65952,[66e3,66044],[66176,66204],[66208,66256],[66273,66299],[66304,66339],[66349,66378],[66384,66421],[66432,66461],[66463,66499],[66504,66517],[66560,66717],[66720,66729],[66736,66771],[66776,66811],[66816,66855],[66864,66915],[66927,66938],[66940,66954],[66956,66962],[66964,66965],[66967,66977],[66979,66993],[66995,67001],[67003,67004],[67072,67382],[67392,67413],[67424,67431],[67456,67461],[67463,67504],[67506,67514],[67584,67589],67592,[67594,67637],[67639,67640],67644,[67647,67669],[67671,67742],[67751,67759],[67808,67826],[67828,67829],[67835,67867],[67871,67897],67903,[67968,68023],[68028,68047],[68050,68096],[68112,68115],[68117,68119],[68121,68149],[68160,68168],[68176,68184],[68192,68255],[68288,68324],[68331,68342],[68352,68405],[68409,68437],[68440,68466],[68472,68497],[68505,68508],[68521,68527],[68608,68680],[68736,68786],[68800,68850],[68858,68899],[68912,68921],[69216,69246],[69248,69289],69293,[69296,69297],[69376,69415],[69424,69445],[69457,69465],[69488,69505],[69510,69513],[69552,69579],[69600,69622],69632,[69634,69687],[69703,69709],[69714,69743],[69745,69746],69749,[69762,69810],[69815,69816],[69819,69820],[69822,69825],[69840,69864],[69872,69881],[69891,69926],69932,[69942,69959],[69968,70002],[70004,70006],[70018,70069],[70079,70088],[70093,70094],[70096,70111],[70113,70132],[70144,70161],[70163,70190],[70194,70195],70197,[70200,70205],[70207,70208],[70272,70278],70280,[70282,70285],[70287,70301],[70303,70313],[70320,70366],[70368,70370],[70384,70393],[70402,70403],[70405,70412],[70415,70416],[70419,70440],[70442,70448],[70450,70451],[70453,70457],70461,70463,[70465,70468],[70471,70472],[70475,70477],70480,[70493,70499],[70656,70711],[70720,70721],70725,[70727,70747],70749,[70751,70753],[70784,70831],[70833,70834],70841,[70843,70844],70846,70849,[70852,70855],[70864,70873],[71040,71086],[71088,71089],[71096,71099],71102,[71105,71131],[71168,71218],[71227,71228],71230,[71233,71236],[71248,71257],[71264,71276],[71296,71338],71340,[71342,71343],71350,[71352,71353],[71360,71369],[71424,71450],[71456,71457],71462,[71472,71494],[71680,71726],71736,71739,[71840,71922],[71935,71942],71945,[71948,71955],[71957,71958],[71960,71983],[71985,71989],[71991,71992],71997,[71999,72002],[72004,72006],[72016,72025],[72096,72103],[72106,72147],[72156,72159],[72161,72164],72192,[72203,72242],[72249,72250],[72255,72262],72272,[72279,72280],[72284,72329],72343,[72346,72354],[72368,72440],[72448,72457],[72704,72712],[72714,72751],72766,[72768,72773],[72784,72812],[72816,72847],72873,72881,72884,[72960,72966],[72968,72969],[72971,73008],73030,[73040,73049],[73056,73061],[73063,73064],[73066,73102],[73107,73108],73110,73112,[73120,73129],[73440,73458],[73461,73464],[73474,73488],[73490,73525],[73534,73535],73537,[73539,73561],73648,[73664,73713],[73727,74649],[74752,74862],[74864,74868],[74880,75075],[77712,77810],[77824,78895],[78913,78918],[82944,83526],[92160,92728],[92736,92766],[92768,92777],[92782,92862],[92864,92873],[92880,92909],92917,[92928,92975],[92983,92997],[93008,93017],[93019,93025],[93027,93047],[93053,93071],[93760,93850],[93952,94026],[94032,94087],[94099,94111],[94176,94179],[94192,94193],[94208,100343],[100352,101589],[101632,101640],[110576,110579],[110581,110587],[110589,110590],[110592,110882],110898,[110928,110930],110933,[110948,110951],[110960,111355],[113664,113770],[113776,113788],[113792,113800],[113808,113817],113820,113823,[118608,118723],[118784,119029],[119040,119078],[119081,119140],119142,[119146,119149],[119171,119172],[119180,119209],[119214,119274],[119296,119361],119365,[119488,119507],[119520,119539],[119552,119638],[119648,119672],[119808,119892],[119894,119964],[119966,119967],119970,[119973,119974],[119977,119980],[119982,119993],119995,[119997,120003],[120005,120069],[120071,120074],[120077,120084],[120086,120092],[120094,120121],[120123,120126],[120128,120132],120134,[120138,120144],[120146,120485],[120488,120779],[120782,121343],[121399,121402],[121453,121460],[121462,121475],[121477,121483],[122624,122654],[122661,122666],[122928,122989],[123136,123180],[123191,123197],[123200,123209],[123214,123215],[123536,123565],[123584,123627],[123632,123641],123647,[124112,124139],[124144,124153],[124896,124902],[124904,124907],[124909,124910],[124912,124926],[124928,125124],[125127,125135],[125184,125251],125259,[125264,125273],[125278,125279],[126065,126132],[126209,126269],[126464,126467],[126469,126495],[126497,126498],126500,126503,[126505,126514],[126516,126519],126521,126523,126530,126535,126537,126539,[126541,126543],[126545,126546],126548,126551,126553,126555,126557,126559,[126561,126562],126564,[126567,126570],[126572,126578],[126580,126583],[126585,126588],126590,[126592,126601],[126603,126619],[126625,126627],[126629,126633],[126635,126651],[126704,126705],[126976,127019],[127024,127123],[127136,127150],[127153,127167],[127169,127183],[127185,127221],[127232,127405],[127462,127490],[127504,127547],[127552,127560],[127568,127569],[127584,127589],[127744,128727],[128732,128748],[128752,128764],[128768,128886],[128891,128985],[128992,129003],129008,[129024,129035],[129040,129095],[129104,129113],[129120,129159],[129168,129197],[129200,129201],[129280,129619],[129632,129645],[129648,129660],[129664,129672],[129680,129725],[129727,129733],[129742,129755],[129760,129768],[129776,129784],[129792,129938],[129940,129994],[130032,130041],[131072,173791],[173824,177977],[177984,178205],[178208,183969],[183984,191456],[194560,195101],[196608,201546],[201552,205743]],Grapheme_Extend:[[768,879],[1155,1161],[1425,1469],1471,[1473,1474],[1476,1477],1479,[1552,1562],[1611,1631],1648,[1750,1756],[1759,1764],[1767,1768],[1770,1773],1809,[1840,1866],[1958,1968],[2027,2035],2045,[2070,2073],[2075,2083],[2085,2087],[2089,2093],[2137,2139],[2200,2207],[2250,2273],[2275,2306],2362,2364,[2369,2376],2381,[2385,2391],[2402,2403],2433,2492,2494,[2497,2500],2509,2519,[2530,2531],2558,[2561,2562],2620,[2625,2626],[2631,2632],[2635,2637],2641,[2672,2673],2677,[2689,2690],2748,[2753,2757],[2759,2760],2765,[2786,2787],[2810,2815],2817,2876,[2878,2879],[2881,2884],2893,[2901,2903],[2914,2915],2946,3006,3008,3021,3031,3072,3076,3132,[3134,3136],[3142,3144],[3146,3149],[3157,3158],[3170,3171],3201,3260,3263,3266,3270,[3276,3277],[3285,3286],[3298,3299],[3328,3329],[3387,3388],3390,[3393,3396],3405,3415,[3426,3427],3457,3530,3535,[3538,3540],3542,3551,3633,[3636,3642],[3655,3662],3761,[3764,3772],[3784,3790],[3864,3865],3893,3895,3897,[3953,3966],[3968,3972],[3974,3975],[3981,3991],[3993,4028],4038,[4141,4144],[4146,4151],[4153,4154],[4157,4158],[4184,4185],[4190,4192],[4209,4212],4226,[4229,4230],4237,4253,[4957,4959],[5906,5908],[5938,5939],[5970,5971],[6002,6003],[6068,6069],[6071,6077],6086,[6089,6099],6109,[6155,6157],6159,[6277,6278],6313,[6432,6434],[6439,6440],6450,[6457,6459],[6679,6680],6683,6742,[6744,6750],6752,6754,[6757,6764],[6771,6780],6783,[6832,6862],[6912,6915],[6964,6970],6972,6978,[7019,7027],[7040,7041],[7074,7077],[7080,7081],[7083,7085],7142,[7144,7145],7149,[7151,7153],[7212,7219],[7222,7223],[7376,7378],[7380,7392],[7394,7400],7405,7412,[7416,7417],[7616,7679],8204,[8400,8432],[11503,11505],11647,[11744,11775],[12330,12335],[12441,12442],[42607,42610],[42612,42621],[42654,42655],[42736,42737],43010,43014,43019,[43045,43046],43052,[43204,43205],[43232,43249],43263,[43302,43309],[43335,43345],[43392,43394],43443,[43446,43449],[43452,43453],43493,[43561,43566],[43569,43570],[43573,43574],43587,43596,43644,43696,[43698,43700],[43703,43704],[43710,43711],43713,[43756,43757],43766,44005,44008,44013,64286,[65024,65039],[65056,65071],[65438,65439],66045,66272,[66422,66426],[68097,68099],[68101,68102],[68108,68111],[68152,68154],68159,[68325,68326],[68900,68903],[69291,69292],[69373,69375],[69446,69456],[69506,69509],69633,[69688,69702],69744,[69747,69748],[69759,69761],[69811,69814],[69817,69818],69826,[69888,69890],[69927,69931],[69933,69940],70003,[70016,70017],[70070,70078],[70089,70092],70095,[70191,70193],70196,[70198,70199],70206,70209,70367,[70371,70378],[70400,70401],[70459,70460],70462,70464,70487,[70502,70508],[70512,70516],[70712,70719],[70722,70724],70726,70750,70832,[70835,70840],70842,70845,[70847,70848],[70850,70851],71087,[71090,71093],[71100,71101],[71103,71104],[71132,71133],[71219,71226],71229,[71231,71232],71339,71341,[71344,71349],71351,[71453,71455],[71458,71461],[71463,71467],[71727,71735],[71737,71738],71984,[71995,71996],71998,72003,[72148,72151],[72154,72155],72160,[72193,72202],[72243,72248],[72251,72254],72263,[72273,72278],[72281,72283],[72330,72342],[72344,72345],[72752,72758],[72760,72765],72767,[72850,72871],[72874,72880],[72882,72883],[72885,72886],[73009,73014],73018,[73020,73021],[73023,73029],73031,[73104,73105],73109,73111,[73459,73460],[73472,73473],[73526,73530],73536,73538,78912,[78919,78933],[92912,92916],[92976,92982],94031,[94095,94098],94180,[113821,113822],[118528,118573],[118576,118598],119141,[119143,119145],[119150,119154],[119163,119170],[119173,119179],[119210,119213],[119362,119364],[121344,121398],[121403,121452],121461,121476,[121499,121503],[121505,121519],[122880,122886],[122888,122904],[122907,122913],[122915,122916],[122918,122922],123023,[123184,123190],123566,[123628,123631],[124140,124143],[125136,125142],[125252,125258],[917536,917631],[917760,917999]],Grapheme_Link:[2381,2509,2637,2765,2893,3021,3149,3277,[3387,3388],3405,3530,3642,3770,3972,[4153,4154],[5908,5909],5940,6098,6752,6980,[7082,7083],[7154,7155],11647,43014,43052,43204,43347,43456,43766,44013,68159,69702,69744,69759,69817,[69939,69940],70080,70197,70378,70477,70722,70850,71103,71231,71350,71467,71737,[71997,71998],72160,72244,72263,72345,72767,[73028,73029],73111,[73537,73538]],Hex_Digit:[[48,57],[65,70],[97,102],[65296,65305],[65313,65318],[65345,65350]],Hyphen:[45,173,1418,6150,[8208,8209],11799,12539,65123,65293,65381],IDS_Binary_Operator:[[12272,12273],[12276,12283]],IDS_Trinary_Operator:[[12274,12275]],ID_Continue:[[48,57],[65,90],95,[97,122],170,181,183,186,[192,214],[216,246],[248,705],[710,721],[736,740],748,750,[768,884],[886,887],[890,893],895,[902,906],908,[910,929],[931,1013],[1015,1153],[1155,1159],[1162,1327],[1329,1366],1369,[1376,1416],[1425,1469],1471,[1473,1474],[1476,1477],1479,[1488,1514],[1519,1522],[1552,1562],[1568,1641],[1646,1747],[1749,1756],[1759,1768],[1770,1788],1791,[1808,1866],[1869,1969],[1984,2037],2042,2045,[2048,2093],[2112,2139],[2144,2154],[2160,2183],[2185,2190],[2200,2273],[2275,2403],[2406,2415],[2417,2435],[2437,2444],[2447,2448],[2451,2472],[2474,2480],2482,[2486,2489],[2492,2500],[2503,2504],[2507,2510],2519,[2524,2525],[2527,2531],[2534,2545],2556,2558,[2561,2563],[2565,2570],[2575,2576],[2579,2600],[2602,2608],[2610,2611],[2613,2614],[2616,2617],2620,[2622,2626],[2631,2632],[2635,2637],2641,[2649,2652],2654,[2662,2677],[2689,2691],[2693,2701],[2703,2705],[2707,2728],[2730,2736],[2738,2739],[2741,2745],[2748,2757],[2759,2761],[2763,2765],2768,[2784,2787],[2790,2799],[2809,2815],[2817,2819],[2821,2828],[2831,2832],[2835,2856],[2858,2864],[2866,2867],[2869,2873],[2876,2884],[2887,2888],[2891,2893],[2901,2903],[2908,2909],[2911,2915],[2918,2927],2929,[2946,2947],[2949,2954],[2958,2960],[2962,2965],[2969,2970],2972,[2974,2975],[2979,2980],[2984,2986],[2990,3001],[3006,3010],[3014,3016],[3018,3021],3024,3031,[3046,3055],[3072,3084],[3086,3088],[3090,3112],[3114,3129],[3132,3140],[3142,3144],[3146,3149],[3157,3158],[3160,3162],3165,[3168,3171],[3174,3183],[3200,3203],[3205,3212],[3214,3216],[3218,3240],[3242,3251],[3253,3257],[3260,3268],[3270,3272],[3274,3277],[3285,3286],[3293,3294],[3296,3299],[3302,3311],[3313,3315],[3328,3340],[3342,3344],[3346,3396],[3398,3400],[3402,3406],[3412,3415],[3423,3427],[3430,3439],[3450,3455],[3457,3459],[3461,3478],[3482,3505],[3507,3515],3517,[3520,3526],3530,[3535,3540],3542,[3544,3551],[3558,3567],[3570,3571],[3585,3642],[3648,3662],[3664,3673],[3713,3714],3716,[3718,3722],[3724,3747],3749,[3751,3773],[3776,3780],3782,[3784,3790],[3792,3801],[3804,3807],3840,[3864,3865],[3872,3881],3893,3895,3897,[3902,3911],[3913,3948],[3953,3972],[3974,3991],[3993,4028],4038,[4096,4169],[4176,4253],[4256,4293],4295,4301,[4304,4346],[4348,4680],[4682,4685],[4688,4694],4696,[4698,4701],[4704,4744],[4746,4749],[4752,4784],[4786,4789],[4792,4798],4800,[4802,4805],[4808,4822],[4824,4880],[4882,4885],[4888,4954],[4957,4959],[4969,4977],[4992,5007],[5024,5109],[5112,5117],[5121,5740],[5743,5759],[5761,5786],[5792,5866],[5870,5880],[5888,5909],[5919,5940],[5952,5971],[5984,5996],[5998,6e3],[6002,6003],[6016,6099],6103,[6108,6109],[6112,6121],[6155,6157],[6159,6169],[6176,6264],[6272,6314],[6320,6389],[6400,6430],[6432,6443],[6448,6459],[6470,6509],[6512,6516],[6528,6571],[6576,6601],[6608,6618],[6656,6683],[6688,6750],[6752,6780],[6783,6793],[6800,6809],6823,[6832,6845],[6847,6862],[6912,6988],[6992,7001],[7019,7027],[7040,7155],[7168,7223],[7232,7241],[7245,7293],[7296,7304],[7312,7354],[7357,7359],[7376,7378],[7380,7418],[7424,7957],[7960,7965],[7968,8005],[8008,8013],[8016,8023],8025,8027,8029,[8031,8061],[8064,8116],[8118,8124],8126,[8130,8132],[8134,8140],[8144,8147],[8150,8155],[8160,8172],[8178,8180],[8182,8188],[8255,8256],8276,8305,8319,[8336,8348],[8400,8412],8417,[8421,8432],8450,8455,[8458,8467],8469,[8472,8477],8484,8486,8488,[8490,8505],[8508,8511],[8517,8521],8526,[8544,8584],[11264,11492],[11499,11507],[11520,11557],11559,11565,[11568,11623],11631,[11647,11670],[11680,11686],[11688,11694],[11696,11702],[11704,11710],[11712,11718],[11720,11726],[11728,11734],[11736,11742],[11744,11775],[12293,12295],[12321,12335],[12337,12341],[12344,12348],[12353,12438],[12441,12447],[12449,12538],[12540,12543],[12549,12591],[12593,12686],[12704,12735],[12784,12799],[13312,19903],[19968,42124],[42192,42237],[42240,42508],[42512,42539],[42560,42607],[42612,42621],[42623,42737],[42775,42783],[42786,42888],[42891,42954],[42960,42961],42963,[42965,42969],[42994,43047],43052,[43072,43123],[43136,43205],[43216,43225],[43232,43255],43259,[43261,43309],[43312,43347],[43360,43388],[43392,43456],[43471,43481],[43488,43518],[43520,43574],[43584,43597],[43600,43609],[43616,43638],[43642,43714],[43739,43741],[43744,43759],[43762,43766],[43777,43782],[43785,43790],[43793,43798],[43808,43814],[43816,43822],[43824,43866],[43868,43881],[43888,44010],[44012,44013],[44016,44025],[44032,55203],[55216,55238],[55243,55291],[63744,64109],[64112,64217],[64256,64262],[64275,64279],[64285,64296],[64298,64310],[64312,64316],64318,[64320,64321],[64323,64324],[64326,64433],[64467,64829],[64848,64911],[64914,64967],[65008,65019],[65024,65039],[65056,65071],[65075,65076],[65101,65103],[65136,65140],[65142,65276],[65296,65305],[65313,65338],65343,[65345,65370],[65382,65470],[65474,65479],[65482,65487],[65490,65495],[65498,65500],[65536,65547],[65549,65574],[65576,65594],[65596,65597],[65599,65613],[65616,65629],[65664,65786],[65856,65908],66045,[66176,66204],[66208,66256],66272,[66304,66335],[66349,66378],[66384,66426],[66432,66461],[66464,66499],[66504,66511],[66513,66517],[66560,66717],[66720,66729],[66736,66771],[66776,66811],[66816,66855],[66864,66915],[66928,66938],[66940,66954],[66956,66962],[66964,66965],[66967,66977],[66979,66993],[66995,67001],[67003,67004],[67072,67382],[67392,67413],[67424,67431],[67456,67461],[67463,67504],[67506,67514],[67584,67589],67592,[67594,67637],[67639,67640],67644,[67647,67669],[67680,67702],[67712,67742],[67808,67826],[67828,67829],[67840,67861],[67872,67897],[67968,68023],[68030,68031],[68096,68099],[68101,68102],[68108,68115],[68117,68119],[68121,68149],[68152,68154],68159,[68192,68220],[68224,68252],[68288,68295],[68297,68326],[68352,68405],[68416,68437],[68448,68466],[68480,68497],[68608,68680],[68736,68786],[68800,68850],[68864,68903],[68912,68921],[69248,69289],[69291,69292],[69296,69297],[69373,69404],69415,[69424,69456],[69488,69509],[69552,69572],[69600,69622],[69632,69702],[69734,69749],[69759,69818],69826,[69840,69864],[69872,69881],[69888,69940],[69942,69951],[69956,69959],[69968,70003],70006,[70016,70084],[70089,70092],[70094,70106],70108,[70144,70161],[70163,70199],[70206,70209],[70272,70278],70280,[70282,70285],[70287,70301],[70303,70312],[70320,70378],[70384,70393],[70400,70403],[70405,70412],[70415,70416],[70419,70440],[70442,70448],[70450,70451],[70453,70457],[70459,70468],[70471,70472],[70475,70477],70480,70487,[70493,70499],[70502,70508],[70512,70516],[70656,70730],[70736,70745],[70750,70753],[70784,70853],70855,[70864,70873],[71040,71093],[71096,71104],[71128,71133],[71168,71232],71236,[71248,71257],[71296,71352],[71360,71369],[71424,71450],[71453,71467],[71472,71481],[71488,71494],[71680,71738],[71840,71913],[71935,71942],71945,[71948,71955],[71957,71958],[71960,71989],[71991,71992],[71995,72003],[72016,72025],[72096,72103],[72106,72151],[72154,72161],[72163,72164],[72192,72254],72263,[72272,72345],72349,[72368,72440],[72704,72712],[72714,72758],[72760,72768],[72784,72793],[72818,72847],[72850,72871],[72873,72886],[72960,72966],[72968,72969],[72971,73014],73018,[73020,73021],[73023,73031],[73040,73049],[73056,73061],[73063,73064],[73066,73102],[73104,73105],[73107,73112],[73120,73129],[73440,73462],[73472,73488],[73490,73530],[73534,73538],[73552,73561],73648,[73728,74649],[74752,74862],[74880,75075],[77712,77808],[77824,78895],[78912,78933],[82944,83526],[92160,92728],[92736,92766],[92768,92777],[92784,92862],[92864,92873],[92880,92909],[92912,92916],[92928,92982],[92992,92995],[93008,93017],[93027,93047],[93053,93071],[93760,93823],[93952,94026],[94031,94087],[94095,94111],[94176,94177],[94179,94180],[94192,94193],[94208,100343],[100352,101589],[101632,101640],[110576,110579],[110581,110587],[110589,110590],[110592,110882],110898,[110928,110930],110933,[110948,110951],[110960,111355],[113664,113770],[113776,113788],[113792,113800],[113808,113817],[113821,113822],[118528,118573],[118576,118598],[119141,119145],[119149,119154],[119163,119170],[119173,119179],[119210,119213],[119362,119364],[119808,119892],[119894,119964],[119966,119967],119970,[119973,119974],[119977,119980],[119982,119993],119995,[119997,120003],[120005,120069],[120071,120074],[120077,120084],[120086,120092],[120094,120121],[120123,120126],[120128,120132],120134,[120138,120144],[120146,120485],[120488,120512],[120514,120538],[120540,120570],[120572,120596],[120598,120628],[120630,120654],[120656,120686],[120688,120712],[120714,120744],[120746,120770],[120772,120779],[120782,120831],[121344,121398],[121403,121452],121461,121476,[121499,121503],[121505,121519],[122624,122654],[122661,122666],[122880,122886],[122888,122904],[122907,122913],[122915,122916],[122918,122922],[122928,122989],123023,[123136,123180],[123184,123197],[123200,123209],123214,[123536,123566],[123584,123641],[124112,124153],[124896,124902],[124904,124907],[124909,124910],[124912,124926],[124928,125124],[125136,125142],[125184,125259],[125264,125273],[126464,126467],[126469,126495],[126497,126498],126500,126503,[126505,126514],[126516,126519],126521,126523,126530,126535,126537,126539,[126541,126543],[126545,126546],126548,126551,126553,126555,126557,126559,[126561,126562],126564,[126567,126570],[126572,126578],[126580,126583],[126585,126588],126590,[126592,126601],[126603,126619],[126625,126627],[126629,126633],[126635,126651],[130032,130041],[131072,173791],[173824,177977],[177984,178205],[178208,183969],[183984,191456],[194560,195101],[196608,201546],[201552,205743],[917760,917999]],ID_Start:[[65,90],[97,122],170,181,186,[192,214],[216,246],[248,705],[710,721],[736,740],748,750,[880,884],[886,887],[890,893],895,902,[904,906],908,[910,929],[931,1013],[1015,1153],[1162,1327],[1329,1366],1369,[1376,1416],[1488,1514],[1519,1522],[1568,1610],[1646,1647],[1649,1747],1749,[1765,1766],[1774,1775],[1786,1788],1791,1808,[1810,1839],[1869,1957],1969,[1994,2026],[2036,2037],2042,[2048,2069],2074,2084,2088,[2112,2136],[2144,2154],[2160,2183],[2185,2190],[2208,2249],[2308,2361],2365,2384,[2392,2401],[2417,2432],[2437,2444],[2447,2448],[2451,2472],[2474,2480],2482,[2486,2489],2493,2510,[2524,2525],[2527,2529],[2544,2545],2556,[2565,2570],[2575,2576],[2579,2600],[2602,2608],[2610,2611],[2613,2614],[2616,2617],[2649,2652],2654,[2674,2676],[2693,2701],[2703,2705],[2707,2728],[2730,2736],[2738,2739],[2741,2745],2749,2768,[2784,2785],2809,[2821,2828],[2831,2832],[2835,2856],[2858,2864],[2866,2867],[2869,2873],2877,[2908,2909],[2911,2913],2929,2947,[2949,2954],[2958,2960],[2962,2965],[2969,2970],2972,[2974,2975],[2979,2980],[2984,2986],[2990,3001],3024,[3077,3084],[3086,3088],[3090,3112],[3114,3129],3133,[3160,3162],3165,[3168,3169],3200,[3205,3212],[3214,3216],[3218,3240],[3242,3251],[3253,3257],3261,[3293,3294],[3296,3297],[3313,3314],[3332,3340],[3342,3344],[3346,3386],3389,3406,[3412,3414],[3423,3425],[3450,3455],[3461,3478],[3482,3505],[3507,3515],3517,[3520,3526],[3585,3632],[3634,3635],[3648,3654],[3713,3714],3716,[3718,3722],[3724,3747],3749,[3751,3760],[3762,3763],3773,[3776,3780],3782,[3804,3807],3840,[3904,3911],[3913,3948],[3976,3980],[4096,4138],4159,[4176,4181],[4186,4189],4193,[4197,4198],[4206,4208],[4213,4225],4238,[4256,4293],4295,4301,[4304,4346],[4348,4680],[4682,4685],[4688,4694],4696,[4698,4701],[4704,4744],[4746,4749],[4752,4784],[4786,4789],[4792,4798],4800,[4802,4805],[4808,4822],[4824,4880],[4882,4885],[4888,4954],[4992,5007],[5024,5109],[5112,5117],[5121,5740],[5743,5759],[5761,5786],[5792,5866],[5870,5880],[5888,5905],[5919,5937],[5952,5969],[5984,5996],[5998,6e3],[6016,6067],6103,6108,[6176,6264],[6272,6312],6314,[6320,6389],[6400,6430],[6480,6509],[6512,6516],[6528,6571],[6576,6601],[6656,6678],[6688,6740],6823,[6917,6963],[6981,6988],[7043,7072],[7086,7087],[7098,7141],[7168,7203],[7245,7247],[7258,7293],[7296,7304],[7312,7354],[7357,7359],[7401,7404],[7406,7411],[7413,7414],7418,[7424,7615],[7680,7957],[7960,7965],[7968,8005],[8008,8013],[8016,8023],8025,8027,8029,[8031,8061],[8064,8116],[8118,8124],8126,[8130,8132],[8134,8140],[8144,8147],[8150,8155],[8160,8172],[8178,8180],[8182,8188],8305,8319,[8336,8348],8450,8455,[8458,8467],8469,[8472,8477],8484,8486,8488,[8490,8505],[8508,8511],[8517,8521],8526,[8544,8584],[11264,11492],[11499,11502],[11506,11507],[11520,11557],11559,11565,[11568,11623],11631,[11648,11670],[11680,11686],[11688,11694],[11696,11702],[11704,11710],[11712,11718],[11720,11726],[11728,11734],[11736,11742],[12293,12295],[12321,12329],[12337,12341],[12344,12348],[12353,12438],[12443,12447],[12449,12538],[12540,12543],[12549,12591],[12593,12686],[12704,12735],[12784,12799],[13312,19903],[19968,42124],[42192,42237],[42240,42508],[42512,42527],[42538,42539],[42560,42606],[42623,42653],[42656,42735],[42775,42783],[42786,42888],[42891,42954],[42960,42961],42963,[42965,42969],[42994,43009],[43011,43013],[43015,43018],[43020,43042],[43072,43123],[43138,43187],[43250,43255],43259,[43261,43262],[43274,43301],[43312,43334],[43360,43388],[43396,43442],43471,[43488,43492],[43494,43503],[43514,43518],[43520,43560],[43584,43586],[43588,43595],[43616,43638],43642,[43646,43695],43697,[43701,43702],[43705,43709],43712,43714,[43739,43741],[43744,43754],[43762,43764],[43777,43782],[43785,43790],[43793,43798],[43808,43814],[43816,43822],[43824,43866],[43868,43881],[43888,44002],[44032,55203],[55216,55238],[55243,55291],[63744,64109],[64112,64217],[64256,64262],[64275,64279],64285,[64287,64296],[64298,64310],[64312,64316],64318,[64320,64321],[64323,64324],[64326,64433],[64467,64829],[64848,64911],[64914,64967],[65008,65019],[65136,65140],[65142,65276],[65313,65338],[65345,65370],[65382,65470],[65474,65479],[65482,65487],[65490,65495],[65498,65500],[65536,65547],[65549,65574],[65576,65594],[65596,65597],[65599,65613],[65616,65629],[65664,65786],[65856,65908],[66176,66204],[66208,66256],[66304,66335],[66349,66378],[66384,66421],[66432,66461],[66464,66499],[66504,66511],[66513,66517],[66560,66717],[66736,66771],[66776,66811],[66816,66855],[66864,66915],[66928,66938],[66940,66954],[66956,66962],[66964,66965],[66967,66977],[66979,66993],[66995,67001],[67003,67004],[67072,67382],[67392,67413],[67424,67431],[67456,67461],[67463,67504],[67506,67514],[67584,67589],67592,[67594,67637],[67639,67640],67644,[67647,67669],[67680,67702],[67712,67742],[67808,67826],[67828,67829],[67840,67861],[67872,67897],[67968,68023],[68030,68031],68096,[68112,68115],[68117,68119],[68121,68149],[68192,68220],[68224,68252],[68288,68295],[68297,68324],[68352,68405],[68416,68437],[68448,68466],[68480,68497],[68608,68680],[68736,68786],[68800,68850],[68864,68899],[69248,69289],[69296,69297],[69376,69404],69415,[69424,69445],[69488,69505],[69552,69572],[69600,69622],[69635,69687],[69745,69746],69749,[69763,69807],[69840,69864],[69891,69926],69956,69959,[69968,70002],70006,[70019,70066],[70081,70084],70106,70108,[70144,70161],[70163,70187],[70207,70208],[70272,70278],70280,[70282,70285],[70287,70301],[70303,70312],[70320,70366],[70405,70412],[70415,70416],[70419,70440],[70442,70448],[70450,70451],[70453,70457],70461,70480,[70493,70497],[70656,70708],[70727,70730],[70751,70753],[70784,70831],[70852,70853],70855,[71040,71086],[71128,71131],[71168,71215],71236,[71296,71338],71352,[71424,71450],[71488,71494],[71680,71723],[71840,71903],[71935,71942],71945,[71948,71955],[71957,71958],[71960,71983],71999,72001,[72096,72103],[72106,72144],72161,72163,72192,[72203,72242],72250,72272,[72284,72329],72349,[72368,72440],[72704,72712],[72714,72750],72768,[72818,72847],[72960,72966],[72968,72969],[72971,73008],73030,[73056,73061],[73063,73064],[73066,73097],73112,[73440,73458],73474,[73476,73488],[73490,73523],73648,[73728,74649],[74752,74862],[74880,75075],[77712,77808],[77824,78895],[78913,78918],[82944,83526],[92160,92728],[92736,92766],[92784,92862],[92880,92909],[92928,92975],[92992,92995],[93027,93047],[93053,93071],[93760,93823],[93952,94026],94032,[94099,94111],[94176,94177],94179,[94208,100343],[100352,101589],[101632,101640],[110576,110579],[110581,110587],[110589,110590],[110592,110882],110898,[110928,110930],110933,[110948,110951],[110960,111355],[113664,113770],[113776,113788],[113792,113800],[113808,113817],[119808,119892],[119894,119964],[119966,119967],119970,[119973,119974],[119977,119980],[119982,119993],119995,[119997,120003],[120005,120069],[120071,120074],[120077,120084],[120086,120092],[120094,120121],[120123,120126],[120128,120132],120134,[120138,120144],[120146,120485],[120488,120512],[120514,120538],[120540,120570],[120572,120596],[120598,120628],[120630,120654],[120656,120686],[120688,120712],[120714,120744],[120746,120770],[120772,120779],[122624,122654],[122661,122666],[122928,122989],[123136,123180],[123191,123197],123214,[123536,123565],[123584,123627],[124112,124139],[124896,124902],[124904,124907],[124909,124910],[124912,124926],[124928,125124],[125184,125251],125259,[126464,126467],[126469,126495],[126497,126498],126500,126503,[126505,126514],[126516,126519],126521,126523,126530,126535,126537,126539,[126541,126543],[126545,126546],126548,126551,126553,126555,126557,126559,[126561,126562],126564,[126567,126570],[126572,126578],[126580,126583],[126585,126588],126590,[126592,126601],[126603,126619],[126625,126627],[126629,126633],[126635,126651],[131072,173791],[173824,177977],[177984,178205],[178208,183969],[183984,191456],[194560,195101],[196608,201546],[201552,205743]],Ideographic:[[12294,12295],[12321,12329],[12344,12346],[13312,19903],[19968,40959],[63744,64109],[64112,64217],94180,[94208,100343],[100352,101589],[101632,101640],[110960,111355],[131072,173791],[173824,177977],[177984,178205],[178208,183969],[183984,191456],[194560,195101],[196608,201546],[201552,205743]],Join_Control:[[8204,8205]],Logical_Order_Exception:[[3648,3652],[3776,3780],[6581,6583],6586,[43701,43702],43705,[43707,43708]],Lowercase:[[97,122],170,181,186,[223,246],[248,255],257,259,261,263,265,267,269,271,273,275,277,279,281,283,285,287,289,291,293,295,297,299,301,303,305,307,309,[311,312],314,316,318,320,322,324,326,[328,329],331,333,335,337,339,341,343,345,347,349,351,353,355,357,359,361,363,365,367,369,371,373,375,378,380,[382,384],387,389,392,[396,397],402,405,[409,411],414,417,419,421,424,[426,427],429,432,436,438,[441,442],[445,447],454,457,460,462,464,466,468,470,472,474,[476,477],479,481,483,485,487,489,491,493,[495,496],499,501,505,507,509,511,513,515,517,519,521,523,525,527,529,531,533,535,537,539,541,543,545,547,549,551,553,555,557,559,561,[563,569],572,[575,576],578,583,585,587,589,[591,659],[661,696],[704,705],[736,740],837,881,883,887,[890,893],912,[940,974],[976,977],[981,983],985,987,989,991,993,995,997,999,1001,1003,1005,[1007,1011],1013,1016,[1019,1020],[1072,1119],1121,1123,1125,1127,1129,1131,1133,1135,1137,1139,1141,1143,1145,1147,1149,1151,1153,1163,1165,1167,1169,1171,1173,1175,1177,1179,1181,1183,1185,1187,1189,1191,1193,1195,1197,1199,1201,1203,1205,1207,1209,1211,1213,1215,1218,1220,1222,1224,1226,1228,[1230,1231],1233,1235,1237,1239,1241,1243,1245,1247,1249,1251,1253,1255,1257,1259,1261,1263,1265,1267,1269,1271,1273,1275,1277,1279,1281,1283,1285,1287,1289,1291,1293,1295,1297,1299,1301,1303,1305,1307,1309,1311,1313,1315,1317,1319,1321,1323,1325,1327,[1376,1416],[4304,4346],[4348,4351],[5112,5117],[7296,7304],[7424,7615],7681,7683,7685,7687,7689,7691,7693,7695,7697,7699,7701,7703,7705,7707,7709,7711,7713,7715,7717,7719,7721,7723,7725,7727,7729,7731,7733,7735,7737,7739,7741,7743,7745,7747,7749,7751,7753,7755,7757,7759,7761,7763,7765,7767,7769,7771,7773,7775,7777,7779,7781,7783,7785,7787,7789,7791,7793,7795,7797,7799,7801,7803,7805,7807,7809,7811,7813,7815,7817,7819,7821,7823,7825,7827,[7829,7837],7839,7841,7843,7845,7847,7849,7851,7853,7855,7857,7859,7861,7863,7865,7867,7869,7871,7873,7875,7877,7879,7881,7883,7885,7887,7889,7891,7893,7895,7897,7899,7901,7903,7905,7907,7909,7911,7913,7915,7917,7919,7921,7923,7925,7927,7929,7931,7933,[7935,7943],[7952,7957],[7968,7975],[7984,7991],[8e3,8005],[8016,8023],[8032,8039],[8048,8061],[8064,8071],[8080,8087],[8096,8103],[8112,8116],[8118,8119],8126,[8130,8132],[8134,8135],[8144,8147],[8150,8151],[8160,8167],[8178,8180],[8182,8183],8305,8319,[8336,8348],8458,[8462,8463],8467,8495,8500,8505,[8508,8509],[8518,8521],8526,[8560,8575],8580,[9424,9449],[11312,11359],11361,[11365,11366],11368,11370,11372,11377,[11379,11380],[11382,11389],11393,11395,11397,11399,11401,11403,11405,11407,11409,11411,11413,11415,11417,11419,11421,11423,11425,11427,11429,11431,11433,11435,11437,11439,11441,11443,11445,11447,11449,11451,11453,11455,11457,11459,11461,11463,11465,11467,11469,11471,11473,11475,11477,11479,11481,11483,11485,11487,11489,[11491,11492],11500,11502,11507,[11520,11557],11559,11565,42561,42563,42565,42567,42569,42571,42573,42575,42577,42579,42581,42583,42585,42587,42589,42591,42593,42595,42597,42599,42601,42603,42605,42625,42627,42629,42631,42633,42635,42637,42639,42641,42643,42645,42647,42649,[42651,42653],42787,42789,42791,42793,42795,42797,[42799,42801],42803,42805,42807,42809,42811,42813,42815,42817,42819,42821,42823,42825,42827,42829,42831,42833,42835,42837,42839,42841,42843,42845,42847,42849,42851,42853,42855,42857,42859,42861,[42863,42872],42874,42876,42879,42881,42883,42885,42887,42892,42894,42897,[42899,42901],42903,42905,42907,42909,42911,42913,42915,42917,42919,42921,42927,42933,42935,42937,42939,42941,42943,42945,42947,42952,42954,42961,42963,42965,42967,42969,[42994,42996],42998,[43e3,43002],[43824,43866],[43868,43881],[43888,43967],[64256,64262],[64275,64279],[65345,65370],[66600,66639],[66776,66811],[66967,66977],[66979,66993],[66995,67001],[67003,67004],67456,[67459,67461],[67463,67504],[67506,67514],[68800,68850],[71872,71903],[93792,93823],[119834,119859],[119886,119892],[119894,119911],[119938,119963],[119990,119993],119995,[119997,120003],[120005,120015],[120042,120067],[120094,120119],[120146,120171],[120198,120223],[120250,120275],[120302,120327],[120354,120379],[120406,120431],[120458,120485],[120514,120538],[120540,120545],[120572,120596],[120598,120603],[120630,120654],[120656,120661],[120688,120712],[120714,120719],[120746,120770],[120772,120777],120779,[122624,122633],[122635,122654],[122661,122666],[122928,122989],[125218,125251]],Math:[43,[60,62],94,124,126,172,177,215,247,[976,978],981,[1008,1009],[1012,1014],[1542,1544],8214,[8242,8244],8256,8260,8274,[8289,8292],[8314,8318],[8330,8334],[8400,8412],8417,[8421,8422],[8427,8431],8450,8455,[8458,8467],8469,[8472,8477],8484,[8488,8489],[8492,8493],[8495,8497],[8499,8504],[8508,8521],8523,[8592,8615],[8617,8622],[8624,8625],[8630,8631],[8636,8667],8669,[8676,8677],[8692,8959],[8968,8971],[8992,8993],9084,[9115,9141],9143,9168,[9180,9186],[9632,9633],[9646,9655],[9660,9665],[9670,9671],[9674,9675],[9679,9683],9698,9700,[9703,9708],[9720,9727],[9733,9734],9792,9794,[9824,9827],[9837,9839],[10176,10239],[10496,11007],[11056,11076],[11079,11084],64297,[65121,65126],65128,65291,[65308,65310],65340,65342,65372,65374,65506,[65513,65516],[119808,119892],[119894,119964],[119966,119967],119970,[119973,119974],[119977,119980],[119982,119993],119995,[119997,120003],[120005,120069],[120071,120074],[120077,120084],[120086,120092],[120094,120121],[120123,120126],[120128,120132],120134,[120138,120144],[120146,120485],[120488,120779],[120782,120831],[126464,126467],[126469,126495],[126497,126498],126500,126503,[126505,126514],[126516,126519],126521,126523,126530,126535,126537,126539,[126541,126543],[126545,126546],126548,126551,126553,126555,126557,126559,[126561,126562],126564,[126567,126570],[126572,126578],[126580,126583],[126585,126588],126590,[126592,126601],[126603,126619],[126625,126627],[126629,126633],[126635,126651],[126704,126705]],Noncharacter_Code_Point:[[64976,65007],[65534,65535],[131070,131071],[196606,196607],[262142,262143],[327678,327679],[393214,393215],[458750,458751],[524286,524287],[589822,589823],[655358,655359],[720894,720895],[786430,786431],[851966,851967],[917502,917503],[983038,983039],[1048574,1048575],[1114110,1114111]],Other_Alphabetic:[837,[1456,1469],1471,[1473,1474],[1476,1477],1479,[1552,1562],[1611,1623],[1625,1631],1648,[1750,1756],[1761,1764],[1767,1768],1773,1809,[1840,1855],[1958,1968],[2070,2071],[2075,2083],[2085,2087],[2089,2092],[2260,2271],[2275,2281],[2288,2307],[2362,2363],[2366,2380],[2382,2383],[2389,2391],[2402,2403],[2433,2435],[2494,2500],[2503,2504],[2507,2508],2519,[2530,2531],[2561,2563],[2622,2626],[2631,2632],[2635,2636],2641,[2672,2673],2677,[2689,2691],[2750,2757],[2759,2761],[2763,2764],[2786,2787],[2810,2812],[2817,2819],[2878,2884],[2887,2888],[2891,2892],[2902,2903],[2914,2915],2946,[3006,3010],[3014,3016],[3018,3020],3031,[3072,3076],[3134,3140],[3142,3144],[3146,3148],[3157,3158],[3170,3171],[3201,3203],[3262,3268],[3270,3272],[3274,3276],[3285,3286],[3298,3299],3315,[3328,3331],[3390,3396],[3398,3400],[3402,3404],3415,[3426,3427],[3457,3459],[3535,3540],3542,[3544,3551],[3570,3571],3633,[3636,3642],3661,3761,[3764,3769],[3771,3772],3789,[3953,3971],[3981,3991],[3993,4028],[4139,4150],4152,[4155,4158],[4182,4185],[4190,4192],[4194,4196],[4199,4205],[4209,4212],[4226,4237],4239,[4250,4253],[5906,5907],[5938,5939],[5970,5971],[6002,6003],[6070,6088],[6277,6278],6313,[6432,6443],[6448,6456],[6679,6683],[6741,6750],[6753,6772],[6847,6848],[6860,6862],[6912,6916],[6965,6979],[7040,7042],[7073,7081],[7084,7085],[7143,7153],[7204,7222],[7655,7668],[9398,9449],[11744,11775],[42612,42619],[42654,42655],43010,43019,[43043,43047],[43136,43137],[43188,43203],43205,43263,[43302,43306],[43335,43346],[43392,43395],[43444,43455],43493,[43561,43574],43587,[43596,43597],[43643,43645],43696,[43698,43700],[43703,43704],43710,[43755,43759],43765,[44003,44010],64286,[66422,66426],[68097,68099],[68101,68102],[68108,68111],[68900,68903],[69291,69292],[69632,69634],[69688,69701],[69747,69748],[69760,69762],[69808,69816],69826,[69888,69890],[69927,69938],[69957,69958],[70016,70018],[70067,70079],[70094,70095],[70188,70196],70199,70206,70209,[70367,70376],[70400,70403],[70462,70468],[70471,70472],[70475,70476],70487,[70498,70499],[70709,70721],[70723,70725],[70832,70849],[71087,71093],[71096,71102],[71132,71133],[71216,71230],71232,[71339,71349],[71453,71466],[71724,71736],[71984,71989],[71991,71992],[71995,71996],72e3,72002,[72145,72151],[72154,72159],72164,[72193,72202],[72245,72249],[72251,72254],[72273,72283],[72330,72343],[72751,72758],[72760,72766],[72850,72871],[72873,72886],[73009,73014],73018,[73020,73021],[73023,73025],73027,73031,[73098,73102],[73104,73105],[73107,73110],[73459,73462],[73472,73473],73475,[73524,73530],[73534,73536],94031,[94033,94087],[94095,94098],[94192,94193],113822,[122880,122886],[122888,122904],[122907,122913],[122915,122916],[122918,122922],123023,125255,[127280,127305],[127312,127337],[127344,127369]],Other_Default_Ignorable_Code_Point:[847,[4447,4448],[6068,6069],8293,12644,65440,[65520,65528],917504,[917506,917535],[917632,917759],[918e3,921599]],Other_Grapheme_Extend:[2494,2519,2878,2903,3006,3031,3266,[3285,3286],3390,3415,3535,3551,6965,8204,[12334,12335],[65438,65439],70462,70487,70832,70845,71087,71984,119141,[119150,119154],[917536,917631]],Other_ID_Continue:[183,903,[4969,4977],6618],Other_ID_Start:[[6277,6278],8472,8494,[12443,12444]],Other_Lowercase:[170,186,[688,696],[704,705],[736,740],837,890,4348,[7468,7530],7544,[7579,7615],8305,8319,[8336,8348],[8560,8575],[9424,9449],[11388,11389],[42652,42653],42864,[42994,42996],[43e3,43001],[43868,43871],43881,67456,[67459,67461],[67463,67504],[67506,67514],[122928,122989]],Other_Math:[94,[976,978],981,[1008,1009],[1012,1013],8214,[8242,8244],8256,[8289,8292],[8317,8318],[8333,8334],[8400,8412],8417,[8421,8422],[8427,8431],8450,8455,[8458,8467],8469,[8473,8477],8484,[8488,8489],[8492,8493],[8495,8497],[8499,8504],[8508,8511],[8517,8521],[8597,8601],[8604,8607],[8609,8610],[8612,8613],8615,[8617,8621],[8624,8625],[8630,8631],[8636,8653],[8656,8657],8659,[8661,8667],8669,[8676,8677],[8968,8971],[9140,9141],9143,9168,9186,[9632,9633],[9646,9654],[9660,9664],[9670,9671],[9674,9675],[9679,9683],9698,9700,[9703,9708],[9733,9734],9792,9794,[9824,9827],[9837,9838],[10181,10182],[10214,10223],[10627,10648],[10712,10715],[10748,10749],65121,65123,65128,65340,65342,[119808,119892],[119894,119964],[119966,119967],119970,[119973,119974],[119977,119980],[119982,119993],119995,[119997,120003],[120005,120069],[120071,120074],[120077,120084],[120086,120092],[120094,120121],[120123,120126],[120128,120132],120134,[120138,120144],[120146,120485],[120488,120512],[120514,120538],[120540,120570],[120572,120596],[120598,120628],[120630,120654],[120656,120686],[120688,120712],[120714,120744],[120746,120770],[120772,120779],[120782,120831],[126464,126467],[126469,126495],[126497,126498],126500,126503,[126505,126514],[126516,126519],126521,126523,126530,126535,126537,126539,[126541,126543],[126545,126546],126548,126551,126553,126555,126557,126559,[126561,126562],126564,[126567,126570],[126572,126578],[126580,126583],[126585,126588],126590,[126592,126601],[126603,126619],[126625,126627],[126629,126633],[126635,126651]],Other_Uppercase:[[8544,8559],[9398,9423],[127280,127305],[127312,127337],[127344,127369]],Pattern_Syntax:[[33,47],[58,64],[91,94],96,[123,126],[161,167],169,[171,172],174,[176,177],182,187,191,215,247,[8208,8231],[8240,8254],[8257,8275],[8277,8286],[8592,9311],[9472,10101],[10132,11263],[11776,11903],[12289,12291],[12296,12320],12336,[64830,64831],[65093,65094]],Pattern_White_Space:[[9,13],32,133,[8206,8207],[8232,8233]],Prepended_Concatenation_Mark:[[1536,1541],1757,1807,[2192,2193],2274,69821,69837],Quotation_Mark:[34,39,171,187,[8216,8223],[8249,8250],11842,[12300,12303],[12317,12319],[65089,65092],65282,65287,[65378,65379]],Radical:[[11904,11929],[11931,12019],[12032,12245]],Regional_Indicator:[[127462,127487]],Sentence_Terminal:[33,46,63,1417,[1565,1567],1748,[1792,1794],2041,2103,2105,[2109,2110],[2404,2405],[4170,4171],4962,[4967,4968],5742,[5941,5942],6147,6153,[6468,6469],[6824,6827],[7002,7003],[7006,7007],[7037,7038],[7227,7228],[7294,7295],[8252,8253],[8263,8265],11822,11836,[11859,11860],12290,42239,[42510,42511],42739,42743,[43126,43127],[43214,43215],43311,[43464,43465],[43613,43615],[43760,43761],44011,65106,[65110,65111],65281,65294,65311,65377,[68182,68183],[69461,69465],[69510,69513],[69703,69704],[69822,69825],[69953,69955],[70085,70086],70093,[70110,70111],[70200,70201],[70203,70204],70313,[70731,70732],[71106,71107],[71113,71127],[71233,71234],[71484,71486],72004,72006,[72258,72259],[72347,72348],[72769,72770],[73463,73464],[73539,73540],[92782,92783],92917,[92983,92984],92996,93848,113823,121480],Soft_Dotted:[[105,106],303,585,616,669,690,1011,1110,1112,7522,7574,7588,7592,7725,7883,8305,[8520,8521],11388,[119842,119843],[119894,119895],[119946,119947],[119998,119999],[120050,120051],[120102,120103],[120154,120155],[120206,120207],[120258,120259],[120310,120311],[120362,120363],[120414,120415],[120466,120467],122650,[122956,122957],122984],Terminal_Punctuation:[33,44,46,[58,59],63,894,903,1417,1475,1548,1563,[1565,1567],1748,[1792,1802],1804,[2040,2041],[2096,2110],2142,[2404,2405],[3674,3675],3848,[3853,3858],[4170,4171],[4961,4968],5742,[5867,5869],[5941,5942],[6100,6102],6106,[6146,6149],[6152,6153],[6468,6469],[6824,6827],[7002,7003],[7005,7007],[7037,7038],[7227,7231],[7294,7295],[8252,8253],[8263,8265],11822,11836,11841,11852,[11854,11855],[11859,11860],[12289,12290],[42238,42239],[42509,42511],[42739,42743],[43126,43127],[43214,43215],43311,[43463,43465],[43613,43615],43743,[43760,43761],44011,[65104,65106],[65108,65111],65281,65292,65294,[65306,65307],65311,65377,65380,66463,66512,67671,67871,[68182,68183],[68336,68341],[68410,68415],[68505,68508],[69461,69465],[69510,69513],[69703,69709],[69822,69825],[69953,69955],[70085,70086],70093,[70110,70111],[70200,70204],70313,[70731,70733],[70746,70747],[71106,71109],[71113,71127],[71233,71234],[71484,71486],72004,72006,[72258,72259],[72347,72348],[72353,72354],[72769,72771],72817,[73463,73464],[73539,73540],[74864,74868],[92782,92783],92917,[92983,92985],92996,[93847,93848],113823,[121479,121482]],Unified_Ideograph:[[13312,19903],[19968,40959],[64014,64015],64017,[64019,64020],64031,64033,[64035,64036],[64039,64041],[131072,173791],[173824,177977],[177984,178205],[178208,183969],[183984,191456],[196608,201546],[201552,205743]],Uppercase:[[65,90],[192,214],[216,222],256,258,260,262,264,266,268,270,272,274,276,278,280,282,284,286,288,290,292,294,296,298,300,302,304,306,308,310,313,315,317,319,321,323,325,327,330,332,334,336,338,340,342,344,346,348,350,352,354,356,358,360,362,364,366,368,370,372,374,[376,377],379,381,[385,386],388,[390,391],[393,395],[398,401],[403,404],[406,408],[412,413],[415,416],418,420,[422,423],425,428,[430,431],[433,435],437,[439,440],444,452,455,458,461,463,465,467,469,471,473,475,478,480,482,484,486,488,490,492,494,497,500,[502,504],506,508,510,512,514,516,518,520,522,524,526,528,530,532,534,536,538,540,542,544,546,548,550,552,554,556,558,560,562,[570,571],[573,574],577,[579,582],584,586,588,590,880,882,886,895,902,[904,906],908,[910,911],[913,929],[931,939],975,[978,980],984,986,988,990,992,994,996,998,1e3,1002,1004,1006,1012,1015,[1017,1018],[1021,1071],1120,1122,1124,1126,1128,1130,1132,1134,1136,1138,1140,1142,1144,1146,1148,1150,1152,1162,1164,1166,1168,1170,1172,1174,1176,1178,1180,1182,1184,1186,1188,1190,1192,1194,1196,1198,1200,1202,1204,1206,1208,1210,1212,1214,[1216,1217],1219,1221,1223,1225,1227,1229,1232,1234,1236,1238,1240,1242,1244,1246,1248,1250,1252,1254,1256,1258,1260,1262,1264,1266,1268,1270,1272,1274,1276,1278,1280,1282,1284,1286,1288,1290,1292,1294,1296,1298,1300,1302,1304,1306,1308,1310,1312,1314,1316,1318,1320,1322,1324,1326,[1329,1366],[4256,4293],4295,4301,[5024,5109],[7312,7354],[7357,7359],7680,7682,7684,7686,7688,7690,7692,7694,7696,7698,7700,7702,7704,7706,7708,7710,7712,7714,7716,7718,7720,7722,7724,7726,7728,7730,7732,7734,7736,7738,7740,7742,7744,7746,7748,7750,7752,7754,7756,7758,7760,7762,7764,7766,7768,7770,7772,7774,7776,7778,7780,7782,7784,7786,7788,7790,7792,7794,7796,7798,7800,7802,7804,7806,7808,7810,7812,7814,7816,7818,7820,7822,7824,7826,7828,7838,7840,7842,7844,7846,7848,7850,7852,7854,7856,7858,7860,7862,7864,7866,7868,7870,7872,7874,7876,7878,7880,7882,7884,7886,7888,7890,7892,7894,7896,7898,7900,7902,7904,7906,7908,7910,7912,7914,7916,7918,7920,7922,7924,7926,7928,7930,7932,7934,[7944,7951],[7960,7965],[7976,7983],[7992,7999],[8008,8013],8025,8027,8029,8031,[8040,8047],[8120,8123],[8136,8139],[8152,8155],[8168,8172],[8184,8187],8450,8455,[8459,8461],[8464,8466],8469,[8473,8477],8484,8486,8488,[8490,8493],[8496,8499],[8510,8511],8517,[8544,8559],8579,[9398,9423],[11264,11311],11360,[11362,11364],11367,11369,11371,[11373,11376],11378,11381,[11390,11392],11394,11396,11398,11400,11402,11404,11406,11408,11410,11412,11414,11416,11418,11420,11422,11424,11426,11428,11430,11432,11434,11436,11438,11440,11442,11444,11446,11448,11450,11452,11454,11456,11458,11460,11462,11464,11466,11468,11470,11472,11474,11476,11478,11480,11482,11484,11486,11488,11490,11499,11501,11506,42560,42562,42564,42566,42568,42570,42572,42574,42576,42578,42580,42582,42584,42586,42588,42590,42592,42594,42596,42598,42600,42602,42604,42624,42626,42628,42630,42632,42634,42636,42638,42640,42642,42644,42646,42648,42650,42786,42788,42790,42792,42794,42796,42798,42802,42804,42806,42808,42810,42812,42814,42816,42818,42820,42822,42824,42826,42828,42830,42832,42834,42836,42838,42840,42842,42844,42846,42848,42850,42852,42854,42856,42858,42860,42862,42873,42875,[42877,42878],42880,42882,42884,42886,42891,42893,42896,42898,42902,42904,42906,42908,42910,42912,42914,42916,42918,42920,[42922,42926],[42928,42932],42934,42936,42938,42940,42942,42944,42946,[42948,42951],42953,42960,42966,42968,42997,[65313,65338],[66560,66599],[66736,66771],[66928,66938],[66940,66954],[66956,66962],[66964,66965],[68736,68786],[71840,71871],[93760,93791],[119808,119833],[119860,119885],[119912,119937],119964,[119966,119967],119970,[119973,119974],[119977,119980],[119982,119989],[120016,120041],[120068,120069],[120071,120074],[120077,120084],[120086,120092],[120120,120121],[120123,120126],[120128,120132],120134,[120138,120144],[120172,120197],[120224,120249],[120276,120301],[120328,120353],[120380,120405],[120432,120457],[120488,120512],[120546,120570],[120604,120628],[120662,120686],[120720,120744],120778,[125184,125217],[127280,127305],[127312,127337],[127344,127369]],Variation_Selector:[[6155,6157],6159,[65024,65039],[917760,917999]],White_Space:[[9,13],32,133,160,5760,[8192,8202],[8232,8233],8239,8287,12288],XID_Continue:[[48,57],[65,90],95,[97,122],170,181,183,186,[192,214],[216,246],[248,705],[710,721],[736,740],748,750,[768,884],[886,887],[891,893],895,[902,906],908,[910,929],[931,1013],[1015,1153],[1155,1159],[1162,1327],[1329,1366],1369,[1376,1416],[1425,1469],1471,[1473,1474],[1476,1477],1479,[1488,1514],[1519,1522],[1552,1562],[1568,1641],[1646,1747],[1749,1756],[1759,1768],[1770,1788],1791,[1808,1866],[1869,1969],[1984,2037],2042,2045,[2048,2093],[2112,2139],[2144,2154],[2160,2183],[2185,2190],[2200,2273],[2275,2403],[2406,2415],[2417,2435],[2437,2444],[2447,2448],[2451,2472],[2474,2480],2482,[2486,2489],[2492,2500],[2503,2504],[2507,2510],2519,[2524,2525],[2527,2531],[2534,2545],2556,2558,[2561,2563],[2565,2570],[2575,2576],[2579,2600],[2602,2608],[2610,2611],[2613,2614],[2616,2617],2620,[2622,2626],[2631,2632],[2635,2637],2641,[2649,2652],2654,[2662,2677],[2689,2691],[2693,2701],[2703,2705],[2707,2728],[2730,2736],[2738,2739],[2741,2745],[2748,2757],[2759,2761],[2763,2765],2768,[2784,2787],[2790,2799],[2809,2815],[2817,2819],[2821,2828],[2831,2832],[2835,2856],[2858,2864],[2866,2867],[2869,2873],[2876,2884],[2887,2888],[2891,2893],[2901,2903],[2908,2909],[2911,2915],[2918,2927],2929,[2946,2947],[2949,2954],[2958,2960],[2962,2965],[2969,2970],2972,[2974,2975],[2979,2980],[2984,2986],[2990,3001],[3006,3010],[3014,3016],[3018,3021],3024,3031,[3046,3055],[3072,3084],[3086,3088],[3090,3112],[3114,3129],[3132,3140],[3142,3144],[3146,3149],[3157,3158],[3160,3162],3165,[3168,3171],[3174,3183],[3200,3203],[3205,3212],[3214,3216],[3218,3240],[3242,3251],[3253,3257],[3260,3268],[3270,3272],[3274,3277],[3285,3286],[3293,3294],[3296,3299],[3302,3311],[3313,3315],[3328,3340],[3342,3344],[3346,3396],[3398,3400],[3402,3406],[3412,3415],[3423,3427],[3430,3439],[3450,3455],[3457,3459],[3461,3478],[3482,3505],[3507,3515],3517,[3520,3526],3530,[3535,3540],3542,[3544,3551],[3558,3567],[3570,3571],[3585,3642],[3648,3662],[3664,3673],[3713,3714],3716,[3718,3722],[3724,3747],3749,[3751,3773],[3776,3780],3782,[3784,3790],[3792,3801],[3804,3807],3840,[3864,3865],[3872,3881],3893,3895,3897,[3902,3911],[3913,3948],[3953,3972],[3974,3991],[3993,4028],4038,[4096,4169],[4176,4253],[4256,4293],4295,4301,[4304,4346],[4348,4680],[4682,4685],[4688,4694],4696,[4698,4701],[4704,4744],[4746,4749],[4752,4784],[4786,4789],[4792,4798],4800,[4802,4805],[4808,4822],[4824,4880],[4882,4885],[4888,4954],[4957,4959],[4969,4977],[4992,5007],[5024,5109],[5112,5117],[5121,5740],[5743,5759],[5761,5786],[5792,5866],[5870,5880],[5888,5909],[5919,5940],[5952,5971],[5984,5996],[5998,6e3],[6002,6003],[6016,6099],6103,[6108,6109],[6112,6121],[6155,6157],[6159,6169],[6176,6264],[6272,6314],[6320,6389],[6400,6430],[6432,6443],[6448,6459],[6470,6509],[6512,6516],[6528,6571],[6576,6601],[6608,6618],[6656,6683],[6688,6750],[6752,6780],[6783,6793],[6800,6809],6823,[6832,6845],[6847,6862],[6912,6988],[6992,7001],[7019,7027],[7040,7155],[7168,7223],[7232,7241],[7245,7293],[7296,7304],[7312,7354],[7357,7359],[7376,7378],[7380,7418],[7424,7957],[7960,7965],[7968,8005],[8008,8013],[8016,8023],8025,8027,8029,[8031,8061],[8064,8116],[8118,8124],8126,[8130,8132],[8134,8140],[8144,8147],[8150,8155],[8160,8172],[8178,8180],[8182,8188],[8255,8256],8276,8305,8319,[8336,8348],[8400,8412],8417,[8421,8432],8450,8455,[8458,8467],8469,[8472,8477],8484,8486,8488,[8490,8505],[8508,8511],[8517,8521],8526,[8544,8584],[11264,11492],[11499,11507],[11520,11557],11559,11565,[11568,11623],11631,[11647,11670],[11680,11686],[11688,11694],[11696,11702],[11704,11710],[11712,11718],[11720,11726],[11728,11734],[11736,11742],[11744,11775],[12293,12295],[12321,12335],[12337,12341],[12344,12348],[12353,12438],[12441,12442],[12445,12447],[12449,12538],[12540,12543],[12549,12591],[12593,12686],[12704,12735],[12784,12799],[13312,19903],[19968,42124],[42192,42237],[42240,42508],[42512,42539],[42560,42607],[42612,42621],[42623,42737],[42775,42783],[42786,42888],[42891,42954],[42960,42961],42963,[42965,42969],[42994,43047],43052,[43072,43123],[43136,43205],[43216,43225],[43232,43255],43259,[43261,43309],[43312,43347],[43360,43388],[43392,43456],[43471,43481],[43488,43518],[43520,43574],[43584,43597],[43600,43609],[43616,43638],[43642,43714],[43739,43741],[43744,43759],[43762,43766],[43777,43782],[43785,43790],[43793,43798],[43808,43814],[43816,43822],[43824,43866],[43868,43881],[43888,44010],[44012,44013],[44016,44025],[44032,55203],[55216,55238],[55243,55291],[63744,64109],[64112,64217],[64256,64262],[64275,64279],[64285,64296],[64298,64310],[64312,64316],64318,[64320,64321],[64323,64324],[64326,64433],[64467,64605],[64612,64829],[64848,64911],[64914,64967],[65008,65017],[65024,65039],[65056,65071],[65075,65076],[65101,65103],65137,65139,65143,65145,65147,65149,[65151,65276],[65296,65305],[65313,65338],65343,[65345,65370],[65382,65470],[65474,65479],[65482,65487],[65490,65495],[65498,65500],[65536,65547],[65549,65574],[65576,65594],[65596,65597],[65599,65613],[65616,65629],[65664,65786],[65856,65908],66045,[66176,66204],[66208,66256],66272,[66304,66335],[66349,66378],[66384,66426],[66432,66461],[66464,66499],[66504,66511],[66513,66517],[66560,66717],[66720,66729],[66736,66771],[66776,66811],[66816,66855],[66864,66915],[66928,66938],[66940,66954],[66956,66962],[66964,66965],[66967,66977],[66979,66993],[66995,67001],[67003,67004],[67072,67382],[67392,67413],[67424,67431],[67456,67461],[67463,67504],[67506,67514],[67584,67589],67592,[67594,67637],[67639,67640],67644,[67647,67669],[67680,67702],[67712,67742],[67808,67826],[67828,67829],[67840,67861],[67872,67897],[67968,68023],[68030,68031],[68096,68099],[68101,68102],[68108,68115],[68117,68119],[68121,68149],[68152,68154],68159,[68192,68220],[68224,68252],[68288,68295],[68297,68326],[68352,68405],[68416,68437],[68448,68466],[68480,68497],[68608,68680],[68736,68786],[68800,68850],[68864,68903],[68912,68921],[69248,69289],[69291,69292],[69296,69297],[69373,69404],69415,[69424,69456],[69488,69509],[69552,69572],[69600,69622],[69632,69702],[69734,69749],[69759,69818],69826,[69840,69864],[69872,69881],[69888,69940],[69942,69951],[69956,69959],[69968,70003],70006,[70016,70084],[70089,70092],[70094,70106],70108,[70144,70161],[70163,70199],[70206,70209],[70272,70278],70280,[70282,70285],[70287,70301],[70303,70312],[70320,70378],[70384,70393],[70400,70403],[70405,70412],[70415,70416],[70419,70440],[70442,70448],[70450,70451],[70453,70457],[70459,70468],[70471,70472],[70475,70477],70480,70487,[70493,70499],[70502,70508],[70512,70516],[70656,70730],[70736,70745],[70750,70753],[70784,70853],70855,[70864,70873],[71040,71093],[71096,71104],[71128,71133],[71168,71232],71236,[71248,71257],[71296,71352],[71360,71369],[71424,71450],[71453,71467],[71472,71481],[71488,71494],[71680,71738],[71840,71913],[71935,71942],71945,[71948,71955],[71957,71958],[71960,71989],[71991,71992],[71995,72003],[72016,72025],[72096,72103],[72106,72151],[72154,72161],[72163,72164],[72192,72254],72263,[72272,72345],72349,[72368,72440],[72704,72712],[72714,72758],[72760,72768],[72784,72793],[72818,72847],[72850,72871],[72873,72886],[72960,72966],[72968,72969],[72971,73014],73018,[73020,73021],[73023,73031],[73040,73049],[73056,73061],[73063,73064],[73066,73102],[73104,73105],[73107,73112],[73120,73129],[73440,73462],[73472,73488],[73490,73530],[73534,73538],[73552,73561],73648,[73728,74649],[74752,74862],[74880,75075],[77712,77808],[77824,78895],[78912,78933],[82944,83526],[92160,92728],[92736,92766],[92768,92777],[92784,92862],[92864,92873],[92880,92909],[92912,92916],[92928,92982],[92992,92995],[93008,93017],[93027,93047],[93053,93071],[93760,93823],[93952,94026],[94031,94087],[94095,94111],[94176,94177],[94179,94180],[94192,94193],[94208,100343],[100352,101589],[101632,101640],[110576,110579],[110581,110587],[110589,110590],[110592,110882],110898,[110928,110930],110933,[110948,110951],[110960,111355],[113664,113770],[113776,113788],[113792,113800],[113808,113817],[113821,113822],[118528,118573],[118576,118598],[119141,119145],[119149,119154],[119163,119170],[119173,119179],[119210,119213],[119362,119364],[119808,119892],[119894,119964],[119966,119967],119970,[119973,119974],[119977,119980],[119982,119993],119995,[119997,120003],[120005,120069],[120071,120074],[120077,120084],[120086,120092],[120094,120121],[120123,120126],[120128,120132],120134,[120138,120144],[120146,120485],[120488,120512],[120514,120538],[120540,120570],[120572,120596],[120598,120628],[120630,120654],[120656,120686],[120688,120712],[120714,120744],[120746,120770],[120772,120779],[120782,120831],[121344,121398],[121403,121452],121461,121476,[121499,121503],[121505,121519],[122624,122654],[122661,122666],[122880,122886],[122888,122904],[122907,122913],[122915,122916],[122918,122922],[122928,122989],123023,[123136,123180],[123184,123197],[123200,123209],123214,[123536,123566],[123584,123641],[124112,124153],[124896,124902],[124904,124907],[124909,124910],[124912,124926],[124928,125124],[125136,125142],[125184,125259],[125264,125273],[126464,126467],[126469,126495],[126497,126498],126500,126503,[126505,126514],[126516,126519],126521,126523,126530,126535,126537,126539,[126541,126543],[126545,126546],126548,126551,126553,126555,126557,126559,[126561,126562],126564,[126567,126570],[126572,126578],[126580,126583],[126585,126588],126590,[126592,126601],[126603,126619],[126625,126627],[126629,126633],[126635,126651],[130032,130041],[131072,173791],[173824,177977],[177984,178205],[178208,183969],[183984,191456],[194560,195101],[196608,201546],[201552,205743],[917760,917999]],XID_Start:[[65,90],[97,122],170,181,186,[192,214],[216,246],[248,705],[710,721],[736,740],748,750,[880,884],[886,887],[891,893],895,902,[904,906],908,[910,929],[931,1013],[1015,1153],[1162,1327],[1329,1366],1369,[1376,1416],[1488,1514],[1519,1522],[1568,1610],[1646,1647],[1649,1747],1749,[1765,1766],[1774,1775],[1786,1788],1791,1808,[1810,1839],[1869,1957],1969,[1994,2026],[2036,2037],2042,[2048,2069],2074,2084,2088,[2112,2136],[2144,2154],[2160,2183],[2185,2190],[2208,2249],[2308,2361],2365,2384,[2392,2401],[2417,2432],[2437,2444],[2447,2448],[2451,2472],[2474,2480],2482,[2486,2489],2493,2510,[2524,2525],[2527,2529],[2544,2545],2556,[2565,2570],[2575,2576],[2579,2600],[2602,2608],[2610,2611],[2613,2614],[2616,2617],[2649,2652],2654,[2674,2676],[2693,2701],[2703,2705],[2707,2728],[2730,2736],[2738,2739],[2741,2745],2749,2768,[2784,2785],2809,[2821,2828],[2831,2832],[2835,2856],[2858,2864],[2866,2867],[2869,2873],2877,[2908,2909],[2911,2913],2929,2947,[2949,2954],[2958,2960],[2962,2965],[2969,2970],2972,[2974,2975],[2979,2980],[2984,2986],[2990,3001],3024,[3077,3084],[3086,3088],[3090,3112],[3114,3129],3133,[3160,3162],3165,[3168,3169],3200,[3205,3212],[3214,3216],[3218,3240],[3242,3251],[3253,3257],3261,[3293,3294],[3296,3297],[3313,3314],[3332,3340],[3342,3344],[3346,3386],3389,3406,[3412,3414],[3423,3425],[3450,3455],[3461,3478],[3482,3505],[3507,3515],3517,[3520,3526],[3585,3632],3634,[3648,3654],[3713,3714],3716,[3718,3722],[3724,3747],3749,[3751,3760],3762,3773,[3776,3780],3782,[3804,3807],3840,[3904,3911],[3913,3948],[3976,3980],[4096,4138],4159,[4176,4181],[4186,4189],4193,[4197,4198],[4206,4208],[4213,4225],4238,[4256,4293],4295,4301,[4304,4346],[4348,4680],[4682,4685],[4688,4694],4696,[4698,4701],[4704,4744],[4746,4749],[4752,4784],[4786,4789],[4792,4798],4800,[4802,4805],[4808,4822],[4824,4880],[4882,4885],[4888,4954],[4992,5007],[5024,5109],[5112,5117],[5121,5740],[5743,5759],[5761,5786],[5792,5866],[5870,5880],[5888,5905],[5919,5937],[5952,5969],[5984,5996],[5998,6e3],[6016,6067],6103,6108,[6176,6264],[6272,6312],6314,[6320,6389],[6400,6430],[6480,6509],[6512,6516],[6528,6571],[6576,6601],[6656,6678],[6688,6740],6823,[6917,6963],[6981,6988],[7043,7072],[7086,7087],[7098,7141],[7168,7203],[7245,7247],[7258,7293],[7296,7304],[7312,7354],[7357,7359],[7401,7404],[7406,7411],[7413,7414],7418,[7424,7615],[7680,7957],[7960,7965],[7968,8005],[8008,8013],[8016,8023],8025,8027,8029,[8031,8061],[8064,8116],[8118,8124],8126,[8130,8132],[8134,8140],[8144,8147],[8150,8155],[8160,8172],[8178,8180],[8182,8188],8305,8319,[8336,8348],8450,8455,[8458,8467],8469,[8472,8477],8484,8486,8488,[8490,8505],[8508,8511],[8517,8521],8526,[8544,8584],[11264,11492],[11499,11502],[11506,11507],[11520,11557],11559,11565,[11568,11623],11631,[11648,11670],[11680,11686],[11688,11694],[11696,11702],[11704,11710],[11712,11718],[11720,11726],[11728,11734],[11736,11742],[12293,12295],[12321,12329],[12337,12341],[12344,12348],[12353,12438],[12445,12447],[12449,12538],[12540,12543],[12549,12591],[12593,12686],[12704,12735],[12784,12799],[13312,19903],[19968,42124],[42192,42237],[42240,42508],[42512,42527],[42538,42539],[42560,42606],[42623,42653],[42656,42735],[42775,42783],[42786,42888],[42891,42954],[42960,42961],42963,[42965,42969],[42994,43009],[43011,43013],[43015,43018],[43020,43042],[43072,43123],[43138,43187],[43250,43255],43259,[43261,43262],[43274,43301],[43312,43334],[43360,43388],[43396,43442],43471,[43488,43492],[43494,43503],[43514,43518],[43520,43560],[43584,43586],[43588,43595],[43616,43638],43642,[43646,43695],43697,[43701,43702],[43705,43709],43712,43714,[43739,43741],[43744,43754],[43762,43764],[43777,43782],[43785,43790],[43793,43798],[43808,43814],[43816,43822],[43824,43866],[43868,43881],[43888,44002],[44032,55203],[55216,55238],[55243,55291],[63744,64109],[64112,64217],[64256,64262],[64275,64279],64285,[64287,64296],[64298,64310],[64312,64316],64318,[64320,64321],[64323,64324],[64326,64433],[64467,64605],[64612,64829],[64848,64911],[64914,64967],[65008,65017],65137,65139,65143,65145,65147,65149,[65151,65276],[65313,65338],[65345,65370],[65382,65437],[65440,65470],[65474,65479],[65482,65487],[65490,65495],[65498,65500],[65536,65547],[65549,65574],[65576,65594],[65596,65597],[65599,65613],[65616,65629],[65664,65786],[65856,65908],[66176,66204],[66208,66256],[66304,66335],[66349,66378],[66384,66421],[66432,66461],[66464,66499],[66504,66511],[66513,66517],[66560,66717],[66736,66771],[66776,66811],[66816,66855],[66864,66915],[66928,66938],[66940,66954],[66956,66962],[66964,66965],[66967,66977],[66979,66993],[66995,67001],[67003,67004],[67072,67382],[67392,67413],[67424,67431],[67456,67461],[67463,67504],[67506,67514],[67584,67589],67592,[67594,67637],[67639,67640],67644,[67647,67669],[67680,67702],[67712,67742],[67808,67826],[67828,67829],[67840,67861],[67872,67897],[67968,68023],[68030,68031],68096,[68112,68115],[68117,68119],[68121,68149],[68192,68220],[68224,68252],[68288,68295],[68297,68324],[68352,68405],[68416,68437],[68448,68466],[68480,68497],[68608,68680],[68736,68786],[68800,68850],[68864,68899],[69248,69289],[69296,69297],[69376,69404],69415,[69424,69445],[69488,69505],[69552,69572],[69600,69622],[69635,69687],[69745,69746],69749,[69763,69807],[69840,69864],[69891,69926],69956,69959,[69968,70002],70006,[70019,70066],[70081,70084],70106,70108,[70144,70161],[70163,70187],[70207,70208],[70272,70278],70280,[70282,70285],[70287,70301],[70303,70312],[70320,70366],[70405,70412],[70415,70416],[70419,70440],[70442,70448],[70450,70451],[70453,70457],70461,70480,[70493,70497],[70656,70708],[70727,70730],[70751,70753],[70784,70831],[70852,70853],70855,[71040,71086],[71128,71131],[71168,71215],71236,[71296,71338],71352,[71424,71450],[71488,71494],[71680,71723],[71840,71903],[71935,71942],71945,[71948,71955],[71957,71958],[71960,71983],71999,72001,[72096,72103],[72106,72144],72161,72163,72192,[72203,72242],72250,72272,[72284,72329],72349,[72368,72440],[72704,72712],[72714,72750],72768,[72818,72847],[72960,72966],[72968,72969],[72971,73008],73030,[73056,73061],[73063,73064],[73066,73097],73112,[73440,73458],73474,[73476,73488],[73490,73523],73648,[73728,74649],[74752,74862],[74880,75075],[77712,77808],[77824,78895],[78913,78918],[82944,83526],[92160,92728],[92736,92766],[92784,92862],[92880,92909],[92928,92975],[92992,92995],[93027,93047],[93053,93071],[93760,93823],[93952,94026],94032,[94099,94111],[94176,94177],94179,[94208,100343],[100352,101589],[101632,101640],[110576,110579],[110581,110587],[110589,110590],[110592,110882],110898,[110928,110930],110933,[110948,110951],[110960,111355],[113664,113770],[113776,113788],[113792,113800],[113808,113817],[119808,119892],[119894,119964],[119966,119967],119970,[119973,119974],[119977,119980],[119982,119993],119995,[119997,120003],[120005,120069],[120071,120074],[120077,120084],[120086,120092],[120094,120121],[120123,120126],[120128,120132],120134,[120138,120144],[120146,120485],[120488,120512],[120514,120538],[120540,120570],[120572,120596],[120598,120628],[120630,120654],[120656,120686],[120688,120712],[120714,120744],[120746,120770],[120772,120779],[122624,122654],[122661,122666],[122928,122989],[123136,123180],[123191,123197],123214,[123536,123565],[123584,123627],[124112,124139],[124896,124902],[124904,124907],[124909,124910],[124912,124926],[124928,125124],[125184,125251],125259,[126464,126467],[126469,126495],[126497,126498],126500,126503,[126505,126514],[126516,126519],126521,126523,126530,126535,126537,126539,[126541,126543],[126545,126546],126548,126551,126553,126555,126557,126559,[126561,126562],126564,[126567,126570],[126572,126578],[126580,126583],[126585,126588],126590,[126592,126601],[126603,126619],[126625,126627],[126629,126633],[126635,126651],[131072,173791],[173824,177977],[177984,178205],[178208,183969],[183984,191456],[194560,195101],[196608,201546],[201552,205743]]},Symbol.toStringTag,{value:"Module"})),Block:Object.freeze(Object.defineProperty({__proto__:null,Adlam:[[125184,125279]],Aegean_Numbers:[[65792,65855]],Ahom:[[71424,71503]],Alchemical_Symbols:[[128768,128895]],Alphabetic_Presentation_Forms:[[64256,64335]],Anatolian_Hieroglyphs:[[82944,83583]],Ancient_Greek_Musical_Notation:[[119296,119375]],Ancient_Greek_Numbers:[[65856,65935]],Ancient_Symbols:[[65936,65999]],Arabic:[[1536,1791]],Arabic_Extended_A:[[2208,2303]],Arabic_Mathematical_Alphabetic_Symbols:[[126464,126719]],Arabic_Presentation_Forms_A:[[64336,65023]],Arabic_Presentation_Forms_B:[[65136,65279]],Arabic_Supplement:[[1872,1919]],Armenian:[[1328,1423]],Arrows:[[8592,8703]],Avestan:[[68352,68415]],Balinese:[[6912,7039]],Bamum:[[42656,42751]],Bamum_Supplement:[[92160,92735]],Basic_Latin:[[0,127]],Bassa_Vah:[[92880,92927]],Batak:[[7104,7167]],Bengali:[[2432,2559]],Bhaiksuki:[[72704,72815]],Block_Elements:[[9600,9631]],Bopomofo:[[12544,12591]],Bopomofo_Extended:[[12704,12735]],Box_Drawing:[[9472,9599]],Brahmi:[[69632,69759]],Braille_Patterns:[[10240,10495]],Buginese:[[6656,6687]],Buhid:[[5952,5983]],Byzantine_Musical_Symbols:[[118784,119039]],CJK_Compatibility:[[13056,13311]],CJK_Compatibility_Forms:[[65072,65103]],CJK_Compatibility_Ideographs:[[63744,64255]],CJK_Compatibility_Ideographs_Supplement:[[194560,195103]],CJK_Radicals_Supplement:[[11904,12031]],CJK_Strokes:[[12736,12783]],CJK_Symbols_And_Punctuation:[[12288,12351]],CJK_Unified_Ideographs:[[19968,40959]],CJK_Unified_Ideographs_Extension_A:[[13312,19903]],CJK_Unified_Ideographs_Extension_B:[[131072,173791]],CJK_Unified_Ideographs_Extension_C:[[173824,177983]],CJK_Unified_Ideographs_Extension_D:[[177984,178207]],CJK_Unified_Ideographs_Extension_E:[[178208,183983]],CJK_Unified_Ideographs_Extension_F:[[183984,191471]],Carian:[[66208,66271]],Caucasian_Albanian:[[66864,66927]],Chakma:[[69888,69967]],Cham:[[43520,43615]],Cherokee:[[5024,5119]],Cherokee_Supplement:[[43888,43967]],Chess_Symbols:[[129536,129647]],Combining_Diacritical_Marks:[[768,879]],Combining_Diacritical_Marks_Extended:[[6832,6911]],Combining_Diacritical_Marks_For_Symbols:[[8400,8447]],Combining_Diacritical_Marks_Supplement:[[7616,7679]],Combining_Half_Marks:[[65056,65071]],Common_Indic_Number_Forms:[[43056,43071]],Control_Pictures:[[9216,9279]],Coptic:[[11392,11519]],Coptic_Epact_Numbers:[[66272,66303]],Counting_Rod_Numerals:[[119648,119679]],Cuneiform:[[73728,74751]],Cuneiform_Numbers_And_Punctuation:[[74752,74879]],Currency_Symbols:[[8352,8399]],Cypriot_Syllabary:[[67584,67647]],Cyrillic:[[1024,1279]],Cyrillic_Extended_A:[[11744,11775]],Cyrillic_Extended_B:[[42560,42655]],Cyrillic_Extended_C:[[7296,7311]],Cyrillic_Supplement:[[1280,1327]],Deseret:[[66560,66639]],Devanagari:[[2304,2431]],Devanagari_Extended:[[43232,43263]],Dingbats:[[9984,10175]],Dogra:[[71680,71759]],Domino_Tiles:[[127024,127135]],Duployan:[[113664,113823]],Early_Dynastic_Cuneiform:[[74880,75087]],Egyptian_Hieroglyphs:[[77824,78895]],Elbasan:[[66816,66863]],Emoticons:[[128512,128591]],Enclosed_Alphanumeric_Supplement:[[127232,127487]],Enclosed_Alphanumerics:[[9312,9471]],Enclosed_CJK_Letters_And_Months:[[12800,13055]],Enclosed_Ideographic_Supplement:[[127488,127743]],Ethiopic:[[4608,4991]],Ethiopic_Extended:[[11648,11743]],Ethiopic_Extended_A:[[43776,43823]],Ethiopic_Supplement:[[4992,5023]],General_Punctuation:[[8192,8303]],Geometric_Shapes:[[9632,9727]],Geometric_Shapes_Extended:[[128896,129023]],Georgian:[[4256,4351]],Georgian_Extended:[[7312,7359]],Georgian_Supplement:[[11520,11567]],Glagolitic:[[11264,11359]],Glagolitic_Supplement:[[122880,122927]],Gothic:[[66352,66383]],Grantha:[[70400,70527]],Greek_And_Coptic:[[880,1023]],Greek_Extended:[[7936,8191]],Gujarati:[[2688,2815]],Gunjala_Gondi:[[73056,73135]],Gurmukhi:[[2560,2687]],Halfwidth_And_Fullwidth_Forms:[[65280,65519]],Hangul_Compatibility_Jamo:[[12592,12687]],Hangul_Jamo:[[4352,4607]],Hangul_Jamo_Extended_A:[[43360,43391]],Hangul_Jamo_Extended_B:[[55216,55295]],Hangul_Syllables:[[44032,55215]],Hanifi_Rohingya:[[68864,68927]],Hanunoo:[[5920,5951]],Hatran:[[67808,67839]],Hebrew:[[1424,1535]],High_Private_Use_Surrogates:[[56192,56319]],High_Surrogates:[[55296,56191]],Hiragana:[[12352,12447]],IPA_Extensions:[[592,687]],Ideographic_Description_Characters:[[12272,12287]],Ideographic_Symbols_And_Punctuation:[[94176,94207]],Imperial_Aramaic:[[67648,67679]],Indic_Siyaq_Numbers:[[126064,126143]],Inscriptional_Pahlavi:[[68448,68479]],Inscriptional_Parthian:[[68416,68447]],Javanese:[[43392,43487]],Kaithi:[[69760,69839]],Kana_Extended_A:[[110848,110895]],Kana_Supplement:[[110592,110847]],Kanbun:[[12688,12703]],Kangxi_Radicals:[[12032,12255]],Kannada:[[3200,3327]],Katakana:[[12448,12543]],Katakana_Phonetic_Extensions:[[12784,12799]],Kayah_Li:[[43264,43311]],Kharoshthi:[[68096,68191]],Khmer:[[6016,6143]],Khmer_Symbols:[[6624,6655]],Khojki:[[70144,70223]],Khudawadi:[[70320,70399]],Lao:[[3712,3839]],Latin_1_Supplement:[[128,255]],Latin_Extended_A:[[256,383]],Latin_Extended_Additional:[[7680,7935]],Latin_Extended_B:[[384,591]],Latin_Extended_C:[[11360,11391]],Latin_Extended_D:[[42784,43007]],Latin_Extended_E:[[43824,43887]],Lepcha:[[7168,7247]],Letterlike_Symbols:[[8448,8527]],Limbu:[[6400,6479]],Linear_A:[[67072,67455]],Linear_B_Ideograms:[[65664,65791]],Linear_B_Syllabary:[[65536,65663]],Lisu:[[42192,42239]],Low_Surrogates:[[56320,57343]],Lycian:[[66176,66207]],Lydian:[[67872,67903]],Mahajani:[[69968,70015]],Mahjong_Tiles:[[126976,127023]],Makasar:[[73440,73471]],Malayalam:[[3328,3455]],Mandaic:[[2112,2143]],Manichaean:[[68288,68351]],Marchen:[[72816,72895]],Masaram_Gondi:[[72960,73055]],Mathematical_Alphanumeric_Symbols:[[119808,120831]],Mathematical_Operators:[[8704,8959]],Mayan_Numerals:[[119520,119551]],Medefaidrin:[[93760,93855]],Meetei_Mayek:[[43968,44031]],Meetei_Mayek_Extensions:[[43744,43775]],Mende_Kikakui:[[124928,125151]],Meroitic_Cursive:[[68e3,68095]],Meroitic_Hieroglyphs:[[67968,67999]],Miao:[[93952,94111]],Miscellaneous_Mathematical_Symbols_A:[[10176,10223]],Miscellaneous_Mathematical_Symbols_B:[[10624,10751]],Miscellaneous_Symbols:[[9728,9983]],Miscellaneous_Symbols_And_Arrows:[[11008,11263]],Miscellaneous_Symbols_And_Pictographs:[[127744,128511]],Miscellaneous_Technical:[[8960,9215]],Modi:[[71168,71263]],Modifier_Tone_Letters:[[42752,42783]],Mongolian:[[6144,6319]],Mongolian_Supplement:[[71264,71295]],Mro:[[92736,92783]],Multani:[[70272,70319]],Musical_Symbols:[[119040,119295]],Myanmar:[[4096,4255]],Myanmar_Extended_A:[[43616,43647]],Myanmar_Extended_B:[[43488,43519]],NKo:[[1984,2047]],Nabataean:[[67712,67759]],New_Tai_Lue:[[6528,6623]],Newa:[[70656,70783]],Number_Forms:[[8528,8591]],Nushu:[[110960,111359]],Ogham:[[5760,5791]],Ol_Chiki:[[7248,7295]],Old_Hungarian:[[68736,68863]],Old_Italic:[[66304,66351]],Old_North_Arabian:[[68224,68255]],Old_Permic:[[66384,66431]],Old_Persian:[[66464,66527]],Old_Sogdian:[[69376,69423]],Old_South_Arabian:[[68192,68223]],Old_Turkic:[[68608,68687]],Optical_Character_Recognition:[[9280,9311]],Oriya:[[2816,2943]],Ornamental_Dingbats:[[128592,128639]],Osage:[[66736,66815]],Osmanya:[[66688,66735]],Pahawh_Hmong:[[92928,93071]],Palmyrene:[[67680,67711]],Pau_Cin_Hau:[[72384,72447]],Phags_Pa:[[43072,43135]],Phaistos_Disc:[[66e3,66047]],Phoenician:[[67840,67871]],Phonetic_Extensions:[[7424,7551]],Phonetic_Extensions_Supplement:[[7552,7615]],Playing_Cards:[[127136,127231]],Private_Use_Area:[[57344,63743]],Psalter_Pahlavi:[[68480,68527]],Rejang:[[43312,43359]],Rumi_Numeral_Symbols:[[69216,69247]],Runic:[[5792,5887]],Samaritan:[[2048,2111]],Saurashtra:[[43136,43231]],Sharada:[[70016,70111]],Shavian:[[66640,66687]],Shorthand_Format_Controls:[[113824,113839]],Siddham:[[71040,71167]],Sinhala:[[3456,3583]],Sinhala_Archaic_Numbers:[[70112,70143]],Small_Form_Variants:[[65104,65135]],Sogdian:[[69424,69487]],Sora_Sompeng:[[69840,69887]],Soyombo:[[72272,72367]],Spacing_Modifier_Letters:[[688,767]],Specials:[[65520,65535]],Sundanese:[[7040,7103]],Sundanese_Supplement:[[7360,7375]],Superscripts_And_Subscripts:[[8304,8351]],Supplemental_Arrows_A:[[10224,10239]],Supplemental_Arrows_B:[[10496,10623]],Supplemental_Arrows_C:[[129024,129279]],Supplemental_Mathematical_Operators:[[10752,11007]],Supplemental_Punctuation:[[11776,11903]],Supplemental_Symbols_And_Pictographs:[[129280,129535]],Supplementary_Private_Use_Area_A:[[983040,1048575]],Supplementary_Private_Use_Area_B:[[1048576,1114111]],Sutton_SignWriting:[[120832,121519]],Syloti_Nagri:[[43008,43055]],Syriac:[[1792,1871]],Syriac_Supplement:[[2144,2159]],Tagalog:[[5888,5919]],Tagbanwa:[[5984,6015]],Tags:[[917504,917631]],Tai_Le:[[6480,6527]],Tai_Tham:[[6688,6831]],Tai_Viet:[[43648,43743]],Tai_Xuan_Jing_Symbols:[[119552,119647]],Takri:[[71296,71375]],Tamil:[[2944,3071]],Tangut:[[94208,100351]],Tangut_Components:[[100352,101119]],Telugu:[[3072,3199]],Thaana:[[1920,1983]],Thai:[[3584,3711]],Tibetan:[[3840,4095]],Tifinagh:[[11568,11647]],Tirhuta:[[70784,70879]],Transport_And_Map_Symbols:[[128640,128767]],Ugaritic:[[66432,66463]],Unified_Canadian_Aboriginal_Syllabics:[[5120,5759]],Unified_Canadian_Aboriginal_Syllabics_Extended:[[6320,6399]],Vai:[[42240,42559]],Variation_Selectors:[[65024,65039]],Variation_Selectors_Supplement:[[917760,917999]],Vedic_Extensions:[[7376,7423]],Vertical_Forms:[[65040,65055]],Warang_Citi:[[71840,71935]],Yi_Radicals:[[42128,42191]],Yi_Syllables:[[40960,42127]],Yijing_Hexagram_Symbols:[[19904,19967]],Zanabazar_Square:[[72192,72271]],undefined:[[2160,2207],[66928,67007],[67456,67519],[69248,69375],[69488,69631],[71936,72031],[72096,72191],[72368,72383],[72448,72543],[73472,73567],[73648,73727],[77712,77823],[78896,78943],[92784,92879],[101120,101759],[110576,110591],[110896,110959],[118528,118735],[119488,119519],[122624,122879],[122928,123023],[123136,123215],[123536,123647],[124112,124159],[124896,124927],[126208,126287],[129648,130047],[196608,205743]]},Symbol.toStringTag,{value:"Module"})),Case_Folding:Object.freeze(Object.defineProperty({__proto__:null,C:[],F:[],S:[],T:[]},Symbol.toStringTag,{value:"Module"})),General_Category:Object.freeze(Object.defineProperty({__proto__:null,Cased_Letter:[[65,90],[97,122],181,[192,214],[216,246],[248,442],[444,447],[452,659],[661,687],[880,883],[886,887],[891,893],895,902,[904,906],908,[910,929],[931,1013],[1015,1153],[1162,1327],[1329,1366],[1376,1416],[4256,4293],4295,4301,[4304,4346],[4349,4351],[5024,5109],[5112,5117],[7296,7304],[7312,7354],[7357,7359],[7424,7467],[7531,7543],[7545,7578],[7680,7957],[7960,7965],[7968,8005],[8008,8013],[8016,8023],8025,8027,8029,[8031,8061],[8064,8116],[8118,8124],8126,[8130,8132],[8134,8140],[8144,8147],[8150,8155],[8160,8172],[8178,8180],[8182,8188],8450,8455,[8458,8467],8469,[8473,8477],8484,8486,8488,[8490,8493],[8495,8500],8505,[8508,8511],[8517,8521],8526,[8579,8580],[11264,11387],[11390,11492],[11499,11502],[11506,11507],[11520,11557],11559,11565,[42560,42605],[42624,42651],[42786,42863],[42865,42887],[42891,42894],[42896,42954],[42960,42961],42963,[42965,42969],[42997,42998],43002,[43824,43866],[43872,43880],[43888,43967],[64256,64262],[64275,64279],[65313,65338],[65345,65370],[66560,66639],[66736,66771],[66776,66811],[66928,66938],[66940,66954],[66956,66962],[66964,66965],[66967,66977],[66979,66993],[66995,67001],[67003,67004],[68736,68786],[68800,68850],[71840,71903],[93760,93823],[119808,119892],[119894,119964],[119966,119967],119970,[119973,119974],[119977,119980],[119982,119993],119995,[119997,120003],[120005,120069],[120071,120074],[120077,120084],[120086,120092],[120094,120121],[120123,120126],[120128,120132],120134,[120138,120144],[120146,120485],[120488,120512],[120514,120538],[120540,120570],[120572,120596],[120598,120628],[120630,120654],[120656,120686],[120688,120712],[120714,120744],[120746,120770],[120772,120779],[122624,122633],[122635,122654],[122661,122666],[125184,125251]],Close_Punctuation:[41,93,125,3899,3901,5788,8262,8318,8334,8969,8971,9002,10089,10091,10093,10095,10097,10099,10101,10182,10215,10217,10219,10221,10223,10628,10630,10632,10634,10636,10638,10640,10642,10644,10646,10648,10713,10715,10749,11811,11813,11815,11817,11862,11864,11866,11868,12297,12299,12301,12303,12305,12309,12311,12313,12315,[12318,12319],64830,65048,65078,65080,65082,65084,65086,65088,65090,65092,65096,65114,65116,65118,65289,65341,65373,65376,65379],Connector_Punctuation:[95,[8255,8256],8276,[65075,65076],[65101,65103],65343],Control:[[0,31],[127,159]],Currency_Symbol:[36,[162,165],1423,1547,[2046,2047],[2546,2547],2555,2801,3065,3647,6107,[8352,8384],43064,65020,65129,65284,[65504,65505],[65509,65510],[73693,73696],123647,126128],Dash_Punctuation:[45,1418,1470,5120,6150,[8208,8213],11799,11802,[11834,11835],11840,11869,12316,12336,12448,[65073,65074],65112,65123,65293,69293],Decimal_Number:[[48,57],[1632,1641],[1776,1785],[1984,1993],[2406,2415],[2534,2543],[2662,2671],[2790,2799],[2918,2927],[3046,3055],[3174,3183],[3302,3311],[3430,3439],[3558,3567],[3664,3673],[3792,3801],[3872,3881],[4160,4169],[4240,4249],[6112,6121],[6160,6169],[6470,6479],[6608,6617],[6784,6793],[6800,6809],[6992,7001],[7088,7097],[7232,7241],[7248,7257],[42528,42537],[43216,43225],[43264,43273],[43472,43481],[43504,43513],[43600,43609],[44016,44025],[65296,65305],[66720,66729],[68912,68921],[69734,69743],[69872,69881],[69942,69951],[70096,70105],[70384,70393],[70736,70745],[70864,70873],[71248,71257],[71360,71369],[71472,71481],[71904,71913],[72016,72025],[72784,72793],[73040,73049],[73120,73129],[73552,73561],[92768,92777],[92864,92873],[93008,93017],[120782,120831],[123200,123209],[123632,123641],[124144,124153],[125264,125273],[130032,130041]],Enclosing_Mark:[[1160,1161],6846,[8413,8416],[8418,8420],[42608,42610]],Final_Punctuation:[187,8217,8221,8250,11779,11781,11786,11789,11805,11809],Format:[173,[1536,1541],1564,1757,1807,[2192,2193],2274,6158,[8203,8207],[8234,8238],[8288,8292],[8294,8303],65279,[65529,65531],69821,69837,[78896,78911],[113824,113827],[119155,119162],917505,[917536,917631]],Initial_Punctuation:[171,8216,[8219,8220],8223,8249,11778,11780,11785,11788,11804,11808],Letter:[[65,90],[97,122],170,181,186,[192,214],[216,246],[248,705],[710,721],[736,740],748,750,[880,884],[886,887],[890,893],895,902,[904,906],908,[910,929],[931,1013],[1015,1153],[1162,1327],[1329,1366],1369,[1376,1416],[1488,1514],[1519,1522],[1568,1610],[1646,1647],[1649,1747],1749,[1765,1766],[1774,1775],[1786,1788],1791,1808,[1810,1839],[1869,1957],1969,[1994,2026],[2036,2037],2042,[2048,2069],2074,2084,2088,[2112,2136],[2144,2154],[2160,2183],[2185,2190],[2208,2249],[2308,2361],2365,2384,[2392,2401],[2417,2432],[2437,2444],[2447,2448],[2451,2472],[2474,2480],2482,[2486,2489],2493,2510,[2524,2525],[2527,2529],[2544,2545],2556,[2565,2570],[2575,2576],[2579,2600],[2602,2608],[2610,2611],[2613,2614],[2616,2617],[2649,2652],2654,[2674,2676],[2693,2701],[2703,2705],[2707,2728],[2730,2736],[2738,2739],[2741,2745],2749,2768,[2784,2785],2809,[2821,2828],[2831,2832],[2835,2856],[2858,2864],[2866,2867],[2869,2873],2877,[2908,2909],[2911,2913],2929,2947,[2949,2954],[2958,2960],[2962,2965],[2969,2970],2972,[2974,2975],[2979,2980],[2984,2986],[2990,3001],3024,[3077,3084],[3086,3088],[3090,3112],[3114,3129],3133,[3160,3162],3165,[3168,3169],3200,[3205,3212],[3214,3216],[3218,3240],[3242,3251],[3253,3257],3261,[3293,3294],[3296,3297],[3313,3314],[3332,3340],[3342,3344],[3346,3386],3389,3406,[3412,3414],[3423,3425],[3450,3455],[3461,3478],[3482,3505],[3507,3515],3517,[3520,3526],[3585,3632],[3634,3635],[3648,3654],[3713,3714],3716,[3718,3722],[3724,3747],3749,[3751,3760],[3762,3763],3773,[3776,3780],3782,[3804,3807],3840,[3904,3911],[3913,3948],[3976,3980],[4096,4138],4159,[4176,4181],[4186,4189],4193,[4197,4198],[4206,4208],[4213,4225],4238,[4256,4293],4295,4301,[4304,4346],[4348,4680],[4682,4685],[4688,4694],4696,[4698,4701],[4704,4744],[4746,4749],[4752,4784],[4786,4789],[4792,4798],4800,[4802,4805],[4808,4822],[4824,4880],[4882,4885],[4888,4954],[4992,5007],[5024,5109],[5112,5117],[5121,5740],[5743,5759],[5761,5786],[5792,5866],[5873,5880],[5888,5905],[5919,5937],[5952,5969],[5984,5996],[5998,6e3],[6016,6067],6103,6108,[6176,6264],[6272,6276],[6279,6312],6314,[6320,6389],[6400,6430],[6480,6509],[6512,6516],[6528,6571],[6576,6601],[6656,6678],[6688,6740],6823,[6917,6963],[6981,6988],[7043,7072],[7086,7087],[7098,7141],[7168,7203],[7245,7247],[7258,7293],[7296,7304],[7312,7354],[7357,7359],[7401,7404],[7406,7411],[7413,7414],7418,[7424,7615],[7680,7957],[7960,7965],[7968,8005],[8008,8013],[8016,8023],8025,8027,8029,[8031,8061],[8064,8116],[8118,8124],8126,[8130,8132],[8134,8140],[8144,8147],[8150,8155],[8160,8172],[8178,8180],[8182,8188],8305,8319,[8336,8348],8450,8455,[8458,8467],8469,[8473,8477],8484,8486,8488,[8490,8493],[8495,8505],[8508,8511],[8517,8521],8526,[8579,8580],[11264,11492],[11499,11502],[11506,11507],[11520,11557],11559,11565,[11568,11623],11631,[11648,11670],[11680,11686],[11688,11694],[11696,11702],[11704,11710],[11712,11718],[11720,11726],[11728,11734],[11736,11742],11823,[12293,12294],[12337,12341],[12347,12348],[12353,12438],[12445,12447],[12449,12538],[12540,12543],[12549,12591],[12593,12686],[12704,12735],[12784,12799],[13312,19903],[19968,42124],[42192,42237],[42240,42508],[42512,42527],[42538,42539],[42560,42606],[42623,42653],[42656,42725],[42775,42783],[42786,42888],[42891,42954],[42960,42961],42963,[42965,42969],[42994,43009],[43011,43013],[43015,43018],[43020,43042],[43072,43123],[43138,43187],[43250,43255],43259,[43261,43262],[43274,43301],[43312,43334],[43360,43388],[43396,43442],43471,[43488,43492],[43494,43503],[43514,43518],[43520,43560],[43584,43586],[43588,43595],[43616,43638],43642,[43646,43695],43697,[43701,43702],[43705,43709],43712,43714,[43739,43741],[43744,43754],[43762,43764],[43777,43782],[43785,43790],[43793,43798],[43808,43814],[43816,43822],[43824,43866],[43868,43881],[43888,44002],[44032,55203],[55216,55238],[55243,55291],[63744,64109],[64112,64217],[64256,64262],[64275,64279],64285,[64287,64296],[64298,64310],[64312,64316],64318,[64320,64321],[64323,64324],[64326,64433],[64467,64829],[64848,64911],[64914,64967],[65008,65019],[65136,65140],[65142,65276],[65313,65338],[65345,65370],[65382,65470],[65474,65479],[65482,65487],[65490,65495],[65498,65500],[65536,65547],[65549,65574],[65576,65594],[65596,65597],[65599,65613],[65616,65629],[65664,65786],[66176,66204],[66208,66256],[66304,66335],[66349,66368],[66370,66377],[66384,66421],[66432,66461],[66464,66499],[66504,66511],[66560,66717],[66736,66771],[66776,66811],[66816,66855],[66864,66915],[66928,66938],[66940,66954],[66956,66962],[66964,66965],[66967,66977],[66979,66993],[66995,67001],[67003,67004],[67072,67382],[67392,67413],[67424,67431],[67456,67461],[67463,67504],[67506,67514],[67584,67589],67592,[67594,67637],[67639,67640],67644,[67647,67669],[67680,67702],[67712,67742],[67808,67826],[67828,67829],[67840,67861],[67872,67897],[67968,68023],[68030,68031],68096,[68112,68115],[68117,68119],[68121,68149],[68192,68220],[68224,68252],[68288,68295],[68297,68324],[68352,68405],[68416,68437],[68448,68466],[68480,68497],[68608,68680],[68736,68786],[68800,68850],[68864,68899],[69248,69289],[69296,69297],[69376,69404],69415,[69424,69445],[69488,69505],[69552,69572],[69600,69622],[69635,69687],[69745,69746],69749,[69763,69807],[69840,69864],[69891,69926],69956,69959,[69968,70002],70006,[70019,70066],[70081,70084],70106,70108,[70144,70161],[70163,70187],[70207,70208],[70272,70278],70280,[70282,70285],[70287,70301],[70303,70312],[70320,70366],[70405,70412],[70415,70416],[70419,70440],[70442,70448],[70450,70451],[70453,70457],70461,70480,[70493,70497],[70656,70708],[70727,70730],[70751,70753],[70784,70831],[70852,70853],70855,[71040,71086],[71128,71131],[71168,71215],71236,[71296,71338],71352,[71424,71450],[71488,71494],[71680,71723],[71840,71903],[71935,71942],71945,[71948,71955],[71957,71958],[71960,71983],71999,72001,[72096,72103],[72106,72144],72161,72163,72192,[72203,72242],72250,72272,[72284,72329],72349,[72368,72440],[72704,72712],[72714,72750],72768,[72818,72847],[72960,72966],[72968,72969],[72971,73008],73030,[73056,73061],[73063,73064],[73066,73097],73112,[73440,73458],73474,[73476,73488],[73490,73523],73648,[73728,74649],[74880,75075],[77712,77808],[77824,78895],[78913,78918],[82944,83526],[92160,92728],[92736,92766],[92784,92862],[92880,92909],[92928,92975],[92992,92995],[93027,93047],[93053,93071],[93760,93823],[93952,94026],94032,[94099,94111],[94176,94177],94179,[94208,100343],[100352,101589],[101632,101640],[110576,110579],[110581,110587],[110589,110590],[110592,110882],110898,[110928,110930],110933,[110948,110951],[110960,111355],[113664,113770],[113776,113788],[113792,113800],[113808,113817],[119808,119892],[119894,119964],[119966,119967],119970,[119973,119974],[119977,119980],[119982,119993],119995,[119997,120003],[120005,120069],[120071,120074],[120077,120084],[120086,120092],[120094,120121],[120123,120126],[120128,120132],120134,[120138,120144],[120146,120485],[120488,120512],[120514,120538],[120540,120570],[120572,120596],[120598,120628],[120630,120654],[120656,120686],[120688,120712],[120714,120744],[120746,120770],[120772,120779],[122624,122654],[122661,122666],[122928,122989],[123136,123180],[123191,123197],123214,[123536,123565],[123584,123627],[124112,124139],[124896,124902],[124904,124907],[124909,124910],[124912,124926],[124928,125124],[125184,125251],125259,[126464,126467],[126469,126495],[126497,126498],126500,126503,[126505,126514],[126516,126519],126521,126523,126530,126535,126537,126539,[126541,126543],[126545,126546],126548,126551,126553,126555,126557,126559,[126561,126562],126564,[126567,126570],[126572,126578],[126580,126583],[126585,126588],126590,[126592,126601],[126603,126619],[126625,126627],[126629,126633],[126635,126651],[131072,173791],[173824,177977],[177984,178205],[178208,183969],[183984,191456],[194560,195101],[196608,201546],[201552,205743]],Letter_Number:[[5870,5872],[8544,8578],[8581,8584],12295,[12321,12329],[12344,12346],[42726,42735],[65856,65908],66369,66378,[66513,66517],[74752,74862]],Line_Separator:[8232],Lowercase_Letter:[[97,122],181,[223,246],[248,255],257,259,261,263,265,267,269,271,273,275,277,279,281,283,285,287,289,291,293,295,297,299,301,303,305,307,309,[311,312],314,316,318,320,322,324,326,[328,329],331,333,335,337,339,341,343,345,347,349,351,353,355,357,359,361,363,365,367,369,371,373,375,378,380,[382,384],387,389,392,[396,397],402,405,[409,411],414,417,419,421,424,[426,427],429,432,436,438,[441,442],[445,447],454,457,460,462,464,466,468,470,472,474,[476,477],479,481,483,485,487,489,491,493,[495,496],499,501,505,507,509,511,513,515,517,519,521,523,525,527,529,531,533,535,537,539,541,543,545,547,549,551,553,555,557,559,561,[563,569],572,[575,576],578,583,585,587,589,[591,659],[661,687],881,883,887,[891,893],912,[940,974],[976,977],[981,983],985,987,989,991,993,995,997,999,1001,1003,1005,[1007,1011],1013,1016,[1019,1020],[1072,1119],1121,1123,1125,1127,1129,1131,1133,1135,1137,1139,1141,1143,1145,1147,1149,1151,1153,1163,1165,1167,1169,1171,1173,1175,1177,1179,1181,1183,1185,1187,1189,1191,1193,1195,1197,1199,1201,1203,1205,1207,1209,1211,1213,1215,1218,1220,1222,1224,1226,1228,[1230,1231],1233,1235,1237,1239,1241,1243,1245,1247,1249,1251,1253,1255,1257,1259,1261,1263,1265,1267,1269,1271,1273,1275,1277,1279,1281,1283,1285,1287,1289,1291,1293,1295,1297,1299,1301,1303,1305,1307,1309,1311,1313,1315,1317,1319,1321,1323,1325,1327,[1376,1416],[4304,4346],[4349,4351],[5112,5117],[7296,7304],[7424,7467],[7531,7543],[7545,7578],7681,7683,7685,7687,7689,7691,7693,7695,7697,7699,7701,7703,7705,7707,7709,7711,7713,7715,7717,7719,7721,7723,7725,7727,7729,7731,7733,7735,7737,7739,7741,7743,7745,7747,7749,7751,7753,7755,7757,7759,7761,7763,7765,7767,7769,7771,7773,7775,7777,7779,7781,7783,7785,7787,7789,7791,7793,7795,7797,7799,7801,7803,7805,7807,7809,7811,7813,7815,7817,7819,7821,7823,7825,7827,[7829,7837],7839,7841,7843,7845,7847,7849,7851,7853,7855,7857,7859,7861,7863,7865,7867,7869,7871,7873,7875,7877,7879,7881,7883,7885,7887,7889,7891,7893,7895,7897,7899,7901,7903,7905,7907,7909,7911,7913,7915,7917,7919,7921,7923,7925,7927,7929,7931,7933,[7935,7943],[7952,7957],[7968,7975],[7984,7991],[8e3,8005],[8016,8023],[8032,8039],[8048,8061],[8064,8071],[8080,8087],[8096,8103],[8112,8116],[8118,8119],8126,[8130,8132],[8134,8135],[8144,8147],[8150,8151],[8160,8167],[8178,8180],[8182,8183],8458,[8462,8463],8467,8495,8500,8505,[8508,8509],[8518,8521],8526,8580,[11312,11359],11361,[11365,11366],11368,11370,11372,11377,[11379,11380],[11382,11387],11393,11395,11397,11399,11401,11403,11405,11407,11409,11411,11413,11415,11417,11419,11421,11423,11425,11427,11429,11431,11433,11435,11437,11439,11441,11443,11445,11447,11449,11451,11453,11455,11457,11459,11461,11463,11465,11467,11469,11471,11473,11475,11477,11479,11481,11483,11485,11487,11489,[11491,11492],11500,11502,11507,[11520,11557],11559,11565,42561,42563,42565,42567,42569,42571,42573,42575,42577,42579,42581,42583,42585,42587,42589,42591,42593,42595,42597,42599,42601,42603,42605,42625,42627,42629,42631,42633,42635,42637,42639,42641,42643,42645,42647,42649,42651,42787,42789,42791,42793,42795,42797,[42799,42801],42803,42805,42807,42809,42811,42813,42815,42817,42819,42821,42823,42825,42827,42829,42831,42833,42835,42837,42839,42841,42843,42845,42847,42849,42851,42853,42855,42857,42859,42861,42863,[42865,42872],42874,42876,42879,42881,42883,42885,42887,42892,42894,42897,[42899,42901],42903,42905,42907,42909,42911,42913,42915,42917,42919,42921,42927,42933,42935,42937,42939,42941,42943,42945,42947,42952,42954,42961,42963,42965,42967,42969,42998,43002,[43824,43866],[43872,43880],[43888,43967],[64256,64262],[64275,64279],[65345,65370],[66600,66639],[66776,66811],[66967,66977],[66979,66993],[66995,67001],[67003,67004],[68800,68850],[71872,71903],[93792,93823],[119834,119859],[119886,119892],[119894,119911],[119938,119963],[119990,119993],119995,[119997,120003],[120005,120015],[120042,120067],[120094,120119],[120146,120171],[120198,120223],[120250,120275],[120302,120327],[120354,120379],[120406,120431],[120458,120485],[120514,120538],[120540,120545],[120572,120596],[120598,120603],[120630,120654],[120656,120661],[120688,120712],[120714,120719],[120746,120770],[120772,120777],120779,[122624,122633],[122635,122654],[122661,122666],[125218,125251]],Mark:[[768,879],[1155,1161],[1425,1469],1471,[1473,1474],[1476,1477],1479,[1552,1562],[1611,1631],1648,[1750,1756],[1759,1764],[1767,1768],[1770,1773],1809,[1840,1866],[1958,1968],[2027,2035],2045,[2070,2073],[2075,2083],[2085,2087],[2089,2093],[2137,2139],[2200,2207],[2250,2273],[2275,2307],[2362,2364],[2366,2383],[2385,2391],[2402,2403],[2433,2435],2492,[2494,2500],[2503,2504],[2507,2509],2519,[2530,2531],2558,[2561,2563],2620,[2622,2626],[2631,2632],[2635,2637],2641,[2672,2673],2677,[2689,2691],2748,[2750,2757],[2759,2761],[2763,2765],[2786,2787],[2810,2815],[2817,2819],2876,[2878,2884],[2887,2888],[2891,2893],[2901,2903],[2914,2915],2946,[3006,3010],[3014,3016],[3018,3021],3031,[3072,3076],3132,[3134,3140],[3142,3144],[3146,3149],[3157,3158],[3170,3171],[3201,3203],3260,[3262,3268],[3270,3272],[3274,3277],[3285,3286],[3298,3299],3315,[3328,3331],[3387,3388],[3390,3396],[3398,3400],[3402,3405],3415,[3426,3427],[3457,3459],3530,[3535,3540],3542,[3544,3551],[3570,3571],3633,[3636,3642],[3655,3662],3761,[3764,3772],[3784,3790],[3864,3865],3893,3895,3897,[3902,3903],[3953,3972],[3974,3975],[3981,3991],[3993,4028],4038,[4139,4158],[4182,4185],[4190,4192],[4194,4196],[4199,4205],[4209,4212],[4226,4237],4239,[4250,4253],[4957,4959],[5906,5909],[5938,5940],[5970,5971],[6002,6003],[6068,6099],6109,[6155,6157],6159,[6277,6278],6313,[6432,6443],[6448,6459],[6679,6683],[6741,6750],[6752,6780],6783,[6832,6862],[6912,6916],[6964,6980],[7019,7027],[7040,7042],[7073,7085],[7142,7155],[7204,7223],[7376,7378],[7380,7400],7405,7412,[7415,7417],[7616,7679],[8400,8432],[11503,11505],11647,[11744,11775],[12330,12335],[12441,12442],[42607,42610],[42612,42621],[42654,42655],[42736,42737],43010,43014,43019,[43043,43047],43052,[43136,43137],[43188,43205],[43232,43249],43263,[43302,43309],[43335,43347],[43392,43395],[43443,43456],43493,[43561,43574],43587,[43596,43597],[43643,43645],43696,[43698,43700],[43703,43704],[43710,43711],43713,[43755,43759],[43765,43766],[44003,44010],[44012,44013],64286,[65024,65039],[65056,65071],66045,66272,[66422,66426],[68097,68099],[68101,68102],[68108,68111],[68152,68154],68159,[68325,68326],[68900,68903],[69291,69292],[69373,69375],[69446,69456],[69506,69509],[69632,69634],[69688,69702],69744,[69747,69748],[69759,69762],[69808,69818],69826,[69888,69890],[69927,69940],[69957,69958],70003,[70016,70018],[70067,70080],[70089,70092],[70094,70095],[70188,70199],70206,70209,[70367,70378],[70400,70403],[70459,70460],[70462,70468],[70471,70472],[70475,70477],70487,[70498,70499],[70502,70508],[70512,70516],[70709,70726],70750,[70832,70851],[71087,71093],[71096,71104],[71132,71133],[71216,71232],[71339,71351],[71453,71467],[71724,71738],[71984,71989],[71991,71992],[71995,71998],72e3,[72002,72003],[72145,72151],[72154,72160],72164,[72193,72202],[72243,72249],[72251,72254],72263,[72273,72283],[72330,72345],[72751,72758],[72760,72767],[72850,72871],[72873,72886],[73009,73014],73018,[73020,73021],[73023,73029],73031,[73098,73102],[73104,73105],[73107,73111],[73459,73462],[73472,73473],73475,[73524,73530],[73534,73538],78912,[78919,78933],[92912,92916],[92976,92982],94031,[94033,94087],[94095,94098],94180,[94192,94193],[113821,113822],[118528,118573],[118576,118598],[119141,119145],[119149,119154],[119163,119170],[119173,119179],[119210,119213],[119362,119364],[121344,121398],[121403,121452],121461,121476,[121499,121503],[121505,121519],[122880,122886],[122888,122904],[122907,122913],[122915,122916],[122918,122922],123023,[123184,123190],123566,[123628,123631],[124140,124143],[125136,125142],[125252,125258],[917760,917999]],Math_Symbol:[43,[60,62],124,126,172,177,215,247,1014,[1542,1544],8260,8274,[8314,8316],[8330,8332],8472,[8512,8516],8523,[8592,8596],[8602,8603],8608,8611,8614,8622,[8654,8655],8658,8660,[8692,8959],[8992,8993],9084,[9115,9139],[9180,9185],9655,9665,[9720,9727],9839,[10176,10180],[10183,10213],[10224,10239],[10496,10626],[10649,10711],[10716,10747],[10750,11007],[11056,11076],[11079,11084],64297,65122,[65124,65126],65291,[65308,65310],65372,65374,65506,[65513,65516],120513,120539,120571,120597,120629,120655,120687,120713,120745,120771,[126704,126705]],Modifier_Letter:[[688,705],[710,721],[736,740],748,750,884,890,1369,1600,[1765,1766],[2036,2037],2042,2074,2084,2088,2249,2417,3654,3782,4348,6103,6211,6823,[7288,7293],[7468,7530],7544,[7579,7615],8305,8319,[8336,8348],[11388,11389],11631,11823,12293,[12337,12341],12347,[12445,12446],[12540,12542],40981,[42232,42237],42508,42623,[42652,42653],[42775,42783],42864,42888,[42994,42996],[43e3,43001],43471,43494,43632,43741,[43763,43764],[43868,43871],43881,65392,[65438,65439],[67456,67461],[67463,67504],[67506,67514],[92992,92995],[94099,94111],[94176,94177],94179,[110576,110579],[110581,110587],[110589,110590],[122928,122989],[123191,123197],124139,125259],Modifier_Symbol:[94,96,168,175,180,184,[706,709],[722,735],[741,747],749,[751,767],885,[900,901],2184,8125,[8127,8129],[8141,8143],[8157,8159],[8173,8175],[8189,8190],[12443,12444],[42752,42774],[42784,42785],[42889,42890],43867,[43882,43883],[64434,64450],65342,65344,65507,[127995,127999]],Nonspacing_Mark:[[768,879],[1155,1159],[1425,1469],1471,[1473,1474],[1476,1477],1479,[1552,1562],[1611,1631],1648,[1750,1756],[1759,1764],[1767,1768],[1770,1773],1809,[1840,1866],[1958,1968],[2027,2035],2045,[2070,2073],[2075,2083],[2085,2087],[2089,2093],[2137,2139],[2200,2207],[2250,2273],[2275,2306],2362,2364,[2369,2376],2381,[2385,2391],[2402,2403],2433,2492,[2497,2500],2509,[2530,2531],2558,[2561,2562],2620,[2625,2626],[2631,2632],[2635,2637],2641,[2672,2673],2677,[2689,2690],2748,[2753,2757],[2759,2760],2765,[2786,2787],[2810,2815],2817,2876,2879,[2881,2884],2893,[2901,2902],[2914,2915],2946,3008,3021,3072,3076,3132,[3134,3136],[3142,3144],[3146,3149],[3157,3158],[3170,3171],3201,3260,3263,3270,[3276,3277],[3298,3299],[3328,3329],[3387,3388],[3393,3396],3405,[3426,3427],3457,3530,[3538,3540],3542,3633,[3636,3642],[3655,3662],3761,[3764,3772],[3784,3790],[3864,3865],3893,3895,3897,[3953,3966],[3968,3972],[3974,3975],[3981,3991],[3993,4028],4038,[4141,4144],[4146,4151],[4153,4154],[4157,4158],[4184,4185],[4190,4192],[4209,4212],4226,[4229,4230],4237,4253,[4957,4959],[5906,5908],[5938,5939],[5970,5971],[6002,6003],[6068,6069],[6071,6077],6086,[6089,6099],6109,[6155,6157],6159,[6277,6278],6313,[6432,6434],[6439,6440],6450,[6457,6459],[6679,6680],6683,6742,[6744,6750],6752,6754,[6757,6764],[6771,6780],6783,[6832,6845],[6847,6862],[6912,6915],6964,[6966,6970],6972,6978,[7019,7027],[7040,7041],[7074,7077],[7080,7081],[7083,7085],7142,[7144,7145],7149,[7151,7153],[7212,7219],[7222,7223],[7376,7378],[7380,7392],[7394,7400],7405,7412,[7416,7417],[7616,7679],[8400,8412],8417,[8421,8432],[11503,11505],11647,[11744,11775],[12330,12333],[12441,12442],42607,[42612,42621],[42654,42655],[42736,42737],43010,43014,43019,[43045,43046],43052,[43204,43205],[43232,43249],43263,[43302,43309],[43335,43345],[43392,43394],43443,[43446,43449],[43452,43453],43493,[43561,43566],[43569,43570],[43573,43574],43587,43596,43644,43696,[43698,43700],[43703,43704],[43710,43711],43713,[43756,43757],43766,44005,44008,44013,64286,[65024,65039],[65056,65071],66045,66272,[66422,66426],[68097,68099],[68101,68102],[68108,68111],[68152,68154],68159,[68325,68326],[68900,68903],[69291,69292],[69373,69375],[69446,69456],[69506,69509],69633,[69688,69702],69744,[69747,69748],[69759,69761],[69811,69814],[69817,69818],69826,[69888,69890],[69927,69931],[69933,69940],70003,[70016,70017],[70070,70078],[70089,70092],70095,[70191,70193],70196,[70198,70199],70206,70209,70367,[70371,70378],[70400,70401],[70459,70460],70464,[70502,70508],[70512,70516],[70712,70719],[70722,70724],70726,70750,[70835,70840],70842,[70847,70848],[70850,70851],[71090,71093],[71100,71101],[71103,71104],[71132,71133],[71219,71226],71229,[71231,71232],71339,71341,[71344,71349],71351,[71453,71455],[71458,71461],[71463,71467],[71727,71735],[71737,71738],[71995,71996],71998,72003,[72148,72151],[72154,72155],72160,[72193,72202],[72243,72248],[72251,72254],72263,[72273,72278],[72281,72283],[72330,72342],[72344,72345],[72752,72758],[72760,72765],72767,[72850,72871],[72874,72880],[72882,72883],[72885,72886],[73009,73014],73018,[73020,73021],[73023,73029],73031,[73104,73105],73109,73111,[73459,73460],[73472,73473],[73526,73530],73536,73538,78912,[78919,78933],[92912,92916],[92976,92982],94031,[94095,94098],94180,[113821,113822],[118528,118573],[118576,118598],[119143,119145],[119163,119170],[119173,119179],[119210,119213],[119362,119364],[121344,121398],[121403,121452],121461,121476,[121499,121503],[121505,121519],[122880,122886],[122888,122904],[122907,122913],[122915,122916],[122918,122922],123023,[123184,123190],123566,[123628,123631],[124140,124143],[125136,125142],[125252,125258],[917760,917999]],Number:[[48,57],[178,179],185,[188,190],[1632,1641],[1776,1785],[1984,1993],[2406,2415],[2534,2543],[2548,2553],[2662,2671],[2790,2799],[2918,2927],[2930,2935],[3046,3058],[3174,3183],[3192,3198],[3302,3311],[3416,3422],[3430,3448],[3558,3567],[3664,3673],[3792,3801],[3872,3891],[4160,4169],[4240,4249],[4969,4988],[5870,5872],[6112,6121],[6128,6137],[6160,6169],[6470,6479],[6608,6618],[6784,6793],[6800,6809],[6992,7001],[7088,7097],[7232,7241],[7248,7257],8304,[8308,8313],[8320,8329],[8528,8578],[8581,8585],[9312,9371],[9450,9471],[10102,10131],11517,12295,[12321,12329],[12344,12346],[12690,12693],[12832,12841],[12872,12879],[12881,12895],[12928,12937],[12977,12991],[42528,42537],[42726,42735],[43056,43061],[43216,43225],[43264,43273],[43472,43481],[43504,43513],[43600,43609],[44016,44025],[65296,65305],[65799,65843],[65856,65912],[65930,65931],[66273,66299],[66336,66339],66369,66378,[66513,66517],[66720,66729],[67672,67679],[67705,67711],[67751,67759],[67835,67839],[67862,67867],[68028,68029],[68032,68047],[68050,68095],[68160,68168],[68221,68222],[68253,68255],[68331,68335],[68440,68447],[68472,68479],[68521,68527],[68858,68863],[68912,68921],[69216,69246],[69405,69414],[69457,69460],[69573,69579],[69714,69743],[69872,69881],[69942,69951],[70096,70105],[70113,70132],[70384,70393],[70736,70745],[70864,70873],[71248,71257],[71360,71369],[71472,71483],[71904,71922],[72016,72025],[72784,72812],[73040,73049],[73120,73129],[73552,73561],[73664,73684],[74752,74862],[92768,92777],[92864,92873],[93008,93017],[93019,93025],[93824,93846],[119488,119507],[119520,119539],[119648,119672],[120782,120831],[123200,123209],[123632,123641],[124144,124153],[125127,125135],[125264,125273],[126065,126123],[126125,126127],[126129,126132],[126209,126253],[126255,126269],[127232,127244],[130032,130041]],Open_Punctuation:[40,91,123,3898,3900,5787,8218,8222,8261,8317,8333,8968,8970,9001,10088,10090,10092,10094,10096,10098,10100,10181,10214,10216,10218,10220,10222,10627,10629,10631,10633,10635,10637,10639,10641,10643,10645,10647,10712,10714,10748,11810,11812,11814,11816,11842,11861,11863,11865,11867,12296,12298,12300,12302,12304,12308,12310,12312,12314,12317,64831,65047,65077,65079,65081,65083,65085,65087,65089,65091,65095,65113,65115,65117,65288,65339,65371,65375,65378],Other:[[0,31],[127,159],173,[888,889],[896,899],907,909,930,1328,[1367,1368],[1419,1420],1424,[1480,1487],[1515,1518],[1525,1541],1564,1757,[1806,1807],[1867,1868],[1970,1983],[2043,2044],[2094,2095],2111,[2140,2141],2143,[2155,2159],[2191,2199],2274,2436,[2445,2446],[2449,2450],2473,2481,[2483,2485],[2490,2491],[2501,2502],[2505,2506],[2511,2518],[2520,2523],2526,[2532,2533],[2559,2560],2564,[2571,2574],[2577,2578],2601,2609,2612,2615,[2618,2619],2621,[2627,2630],[2633,2634],[2638,2640],[2642,2648],2653,[2655,2661],[2679,2688],2692,2702,2706,2729,2737,2740,[2746,2747],2758,2762,[2766,2767],[2769,2783],[2788,2789],[2802,2808],2816,2820,[2829,2830],[2833,2834],2857,2865,2868,[2874,2875],[2885,2886],[2889,2890],[2894,2900],[2904,2907],2910,[2916,2917],[2936,2945],2948,[2955,2957],2961,[2966,2968],2971,2973,[2976,2978],[2981,2983],[2987,2989],[3002,3005],[3011,3013],3017,[3022,3023],[3025,3030],[3032,3045],[3067,3071],3085,3089,3113,[3130,3131],3141,3145,[3150,3156],3159,[3163,3164],[3166,3167],[3172,3173],[3184,3190],3213,3217,3241,3252,[3258,3259],3269,3273,[3278,3284],[3287,3292],3295,[3300,3301],3312,[3316,3327],3341,3345,3397,3401,[3408,3411],[3428,3429],3456,3460,[3479,3481],3506,3516,[3518,3519],[3527,3529],[3531,3534],3541,3543,[3552,3557],[3568,3569],[3573,3584],[3643,3646],[3676,3712],3715,3717,3723,3748,3750,[3774,3775],3781,3783,3791,[3802,3803],[3808,3839],3912,[3949,3952],3992,4029,4045,[4059,4095],4294,[4296,4300],[4302,4303],4681,[4686,4687],4695,4697,[4702,4703],4745,[4750,4751],4785,[4790,4791],4799,4801,[4806,4807],4823,4881,[4886,4887],[4955,4956],[4989,4991],[5018,5023],[5110,5111],[5118,5119],[5789,5791],[5881,5887],[5910,5918],[5943,5951],[5972,5983],5997,6001,[6004,6015],[6110,6111],[6122,6127],[6138,6143],6158,[6170,6175],[6265,6271],[6315,6319],[6390,6399],6431,[6444,6447],[6460,6463],[6465,6467],[6510,6511],[6517,6527],[6572,6575],[6602,6607],[6619,6621],[6684,6685],6751,[6781,6782],[6794,6799],[6810,6815],[6830,6831],[6863,6911],[6989,6991],7039,[7156,7163],[7224,7226],[7242,7244],[7305,7311],[7355,7356],[7368,7375],[7419,7423],[7958,7959],[7966,7967],[8006,8007],[8014,8015],8024,8026,8028,8030,[8062,8063],8117,8133,[8148,8149],8156,[8176,8177],8181,8191,[8203,8207],[8234,8238],[8288,8303],[8306,8307],8335,[8349,8351],[8385,8399],[8433,8447],[8588,8591],[9255,9279],[9291,9311],[11124,11125],11158,[11508,11512],11558,[11560,11564],[11566,11567],[11624,11630],[11633,11646],[11671,11679],11687,11695,11703,11711,11719,11727,11735,11743,[11870,11903],11930,[12020,12031],[12246,12271],[12284,12287],12352,[12439,12440],[12544,12548],12592,12687,[12772,12783],12831,[42125,42127],[42183,42191],[42540,42559],[42744,42751],[42955,42959],42962,42964,[42970,42993],[43053,43055],[43066,43071],[43128,43135],[43206,43213],[43226,43231],[43348,43358],[43389,43391],43470,[43482,43485],43519,[43575,43583],[43598,43599],[43610,43611],[43715,43738],[43767,43776],[43783,43784],[43791,43792],[43799,43807],43815,43823,[43884,43887],[44014,44015],[44026,44031],[55204,55215],[55239,55242],[55292,63743],[64110,64111],[64218,64255],[64263,64274],[64280,64284],64311,64317,64319,64322,64325,[64451,64466],[64912,64913],[64968,64974],[64976,65007],[65050,65055],65107,65127,[65132,65135],65141,[65277,65280],[65471,65473],[65480,65481],[65488,65489],[65496,65497],[65501,65503],65511,[65519,65531],[65534,65535],65548,65575,65595,65598,[65614,65615],[65630,65663],[65787,65791],[65795,65798],[65844,65846],65935,[65949,65951],[65953,65999],[66046,66175],[66205,66207],[66257,66271],[66300,66303],[66340,66348],[66379,66383],[66427,66431],66462,[66500,66503],[66518,66559],[66718,66719],[66730,66735],[66772,66775],[66812,66815],[66856,66863],[66916,66926],66939,66955,66963,66966,66978,66994,67002,[67005,67071],[67383,67391],[67414,67423],[67432,67455],67462,67505,[67515,67583],[67590,67591],67593,67638,[67641,67643],[67645,67646],67670,[67743,67750],[67760,67807],67827,[67830,67834],[67868,67870],[67898,67902],[67904,67967],[68024,68027],[68048,68049],68100,[68103,68107],68116,68120,[68150,68151],[68155,68158],[68169,68175],[68185,68191],[68256,68287],[68327,68330],[68343,68351],[68406,68408],[68438,68439],[68467,68471],[68498,68504],[68509,68520],[68528,68607],[68681,68735],[68787,68799],[68851,68857],[68904,68911],[68922,69215],69247,69290,[69294,69295],[69298,69372],[69416,69423],[69466,69487],[69514,69551],[69580,69599],[69623,69631],[69710,69713],[69750,69758],69821,[69827,69839],[69865,69871],[69882,69887],69941,[69960,69967],[70007,70015],70112,[70133,70143],70162,[70210,70271],70279,70281,70286,70302,[70314,70319],[70379,70383],[70394,70399],70404,[70413,70414],[70417,70418],70441,70449,70452,70458,[70469,70470],[70473,70474],[70478,70479],[70481,70486],[70488,70492],[70500,70501],[70509,70511],[70517,70655],70748,[70754,70783],[70856,70863],[70874,71039],[71094,71095],[71134,71167],[71237,71247],[71258,71263],[71277,71295],[71354,71359],[71370,71423],[71451,71452],[71468,71471],[71495,71679],[71740,71839],[71923,71934],[71943,71944],[71946,71947],71956,71959,71990,[71993,71994],[72007,72015],[72026,72095],[72104,72105],[72152,72153],[72165,72191],[72264,72271],[72355,72367],[72441,72447],[72458,72703],72713,72759,[72774,72783],[72813,72815],[72848,72849],72872,[72887,72959],72967,72970,[73015,73017],73019,73022,[73032,73039],[73050,73055],73062,73065,73103,73106,[73113,73119],[73130,73439],[73465,73471],73489,[73531,73533],[73562,73647],[73649,73663],[73714,73726],[74650,74751],74863,[74869,74879],[75076,77711],[77811,77823],[78896,78911],[78934,82943],[83527,92159],[92729,92735],92767,[92778,92781],92863,[92874,92879],[92910,92911],[92918,92927],[92998,93007],93018,93026,[93048,93052],[93072,93759],[93851,93951],[94027,94030],[94088,94094],[94112,94175],[94181,94191],[94194,94207],[100344,100351],[101590,101631],[101641,110575],110580,110588,110591,[110883,110897],[110899,110927],[110931,110932],[110934,110947],[110952,110959],[111356,113663],[113771,113775],[113789,113791],[113801,113807],[113818,113819],[113824,118527],[118574,118575],[118599,118607],[118724,118783],[119030,119039],[119079,119080],[119155,119162],[119275,119295],[119366,119487],[119508,119519],[119540,119551],[119639,119647],[119673,119807],119893,119965,[119968,119969],[119971,119972],[119975,119976],119981,119994,119996,120004,120070,[120075,120076],120085,120093,120122,120127,120133,[120135,120137],120145,[120486,120487],[120780,120781],[121484,121498],121504,[121520,122623],[122655,122660],[122667,122879],122887,[122905,122906],122914,122917,[122923,122927],[122990,123022],[123024,123135],[123181,123183],[123198,123199],[123210,123213],[123216,123535],[123567,123583],[123642,123646],[123648,124111],[124154,124895],124903,124908,124911,124927,[125125,125126],[125143,125183],[125260,125263],[125274,125277],[125280,126064],[126133,126208],[126270,126463],126468,126496,126499,[126501,126502],126504,126515,126520,126522,[126524,126529],[126531,126534],126536,126538,126540,126544,126547,[126549,126550],126552,126554,126556,126558,126560,126563,[126565,126566],126571,126579,126584,126589,126591,126602,[126620,126624],126628,126634,[126652,126703],[126706,126975],[127020,127023],[127124,127135],[127151,127152],127168,127184,[127222,127231],[127406,127461],[127491,127503],[127548,127551],[127561,127567],[127570,127583],[127590,127743],[128728,128731],[128749,128751],[128765,128767],[128887,128890],[128986,128991],[129004,129007],[129009,129023],[129036,129039],[129096,129103],[129114,129119],[129160,129167],[129198,129199],[129202,129279],[129620,129631],[129646,129647],[129661,129663],[129673,129679],129726,[129734,129741],[129756,129759],[129769,129775],[129785,129791],129939,[129995,130031],[130042,131071],[173792,173823],[177978,177983],[178206,178207],[183970,183983],[191457,194559],[195102,196607],[201547,201551],[205744,917759],[918e3,1114111]],Other_Letter:[170,186,443,[448,451],660,[1488,1514],[1519,1522],[1568,1599],[1601,1610],[1646,1647],[1649,1747],1749,[1774,1775],[1786,1788],1791,1808,[1810,1839],[1869,1957],1969,[1994,2026],[2048,2069],[2112,2136],[2144,2154],[2160,2183],[2185,2190],[2208,2248],[2308,2361],2365,2384,[2392,2401],[2418,2432],[2437,2444],[2447,2448],[2451,2472],[2474,2480],2482,[2486,2489],2493,2510,[2524,2525],[2527,2529],[2544,2545],2556,[2565,2570],[2575,2576],[2579,2600],[2602,2608],[2610,2611],[2613,2614],[2616,2617],[2649,2652],2654,[2674,2676],[2693,2701],[2703,2705],[2707,2728],[2730,2736],[2738,2739],[2741,2745],2749,2768,[2784,2785],2809,[2821,2828],[2831,2832],[2835,2856],[2858,2864],[2866,2867],[2869,2873],2877,[2908,2909],[2911,2913],2929,2947,[2949,2954],[2958,2960],[2962,2965],[2969,2970],2972,[2974,2975],[2979,2980],[2984,2986],[2990,3001],3024,[3077,3084],[3086,3088],[3090,3112],[3114,3129],3133,[3160,3162],3165,[3168,3169],3200,[3205,3212],[3214,3216],[3218,3240],[3242,3251],[3253,3257],3261,[3293,3294],[3296,3297],[3313,3314],[3332,3340],[3342,3344],[3346,3386],3389,3406,[3412,3414],[3423,3425],[3450,3455],[3461,3478],[3482,3505],[3507,3515],3517,[3520,3526],[3585,3632],[3634,3635],[3648,3653],[3713,3714],3716,[3718,3722],[3724,3747],3749,[3751,3760],[3762,3763],3773,[3776,3780],[3804,3807],3840,[3904,3911],[3913,3948],[3976,3980],[4096,4138],4159,[4176,4181],[4186,4189],4193,[4197,4198],[4206,4208],[4213,4225],4238,[4352,4680],[4682,4685],[4688,4694],4696,[4698,4701],[4704,4744],[4746,4749],[4752,4784],[4786,4789],[4792,4798],4800,[4802,4805],[4808,4822],[4824,4880],[4882,4885],[4888,4954],[4992,5007],[5121,5740],[5743,5759],[5761,5786],[5792,5866],[5873,5880],[5888,5905],[5919,5937],[5952,5969],[5984,5996],[5998,6e3],[6016,6067],6108,[6176,6210],[6212,6264],[6272,6276],[6279,6312],6314,[6320,6389],[6400,6430],[6480,6509],[6512,6516],[6528,6571],[6576,6601],[6656,6678],[6688,6740],[6917,6963],[6981,6988],[7043,7072],[7086,7087],[7098,7141],[7168,7203],[7245,7247],[7258,7287],[7401,7404],[7406,7411],[7413,7414],7418,[8501,8504],[11568,11623],[11648,11670],[11680,11686],[11688,11694],[11696,11702],[11704,11710],[11712,11718],[11720,11726],[11728,11734],[11736,11742],12294,12348,[12353,12438],12447,[12449,12538],12543,[12549,12591],[12593,12686],[12704,12735],[12784,12799],[13312,19903],[19968,40980],[40982,42124],[42192,42231],[42240,42507],[42512,42527],[42538,42539],42606,[42656,42725],42895,42999,[43003,43009],[43011,43013],[43015,43018],[43020,43042],[43072,43123],[43138,43187],[43250,43255],43259,[43261,43262],[43274,43301],[43312,43334],[43360,43388],[43396,43442],[43488,43492],[43495,43503],[43514,43518],[43520,43560],[43584,43586],[43588,43595],[43616,43631],[43633,43638],43642,[43646,43695],43697,[43701,43702],[43705,43709],43712,43714,[43739,43740],[43744,43754],43762,[43777,43782],[43785,43790],[43793,43798],[43808,43814],[43816,43822],[43968,44002],[44032,55203],[55216,55238],[55243,55291],[63744,64109],[64112,64217],64285,[64287,64296],[64298,64310],[64312,64316],64318,[64320,64321],[64323,64324],[64326,64433],[64467,64829],[64848,64911],[64914,64967],[65008,65019],[65136,65140],[65142,65276],[65382,65391],[65393,65437],[65440,65470],[65474,65479],[65482,65487],[65490,65495],[65498,65500],[65536,65547],[65549,65574],[65576,65594],[65596,65597],[65599,65613],[65616,65629],[65664,65786],[66176,66204],[66208,66256],[66304,66335],[66349,66368],[66370,66377],[66384,66421],[66432,66461],[66464,66499],[66504,66511],[66640,66717],[66816,66855],[66864,66915],[67072,67382],[67392,67413],[67424,67431],[67584,67589],67592,[67594,67637],[67639,67640],67644,[67647,67669],[67680,67702],[67712,67742],[67808,67826],[67828,67829],[67840,67861],[67872,67897],[67968,68023],[68030,68031],68096,[68112,68115],[68117,68119],[68121,68149],[68192,68220],[68224,68252],[68288,68295],[68297,68324],[68352,68405],[68416,68437],[68448,68466],[68480,68497],[68608,68680],[68864,68899],[69248,69289],[69296,69297],[69376,69404],69415,[69424,69445],[69488,69505],[69552,69572],[69600,69622],[69635,69687],[69745,69746],69749,[69763,69807],[69840,69864],[69891,69926],69956,69959,[69968,70002],70006,[70019,70066],[70081,70084],70106,70108,[70144,70161],[70163,70187],[70207,70208],[70272,70278],70280,[70282,70285],[70287,70301],[70303,70312],[70320,70366],[70405,70412],[70415,70416],[70419,70440],[70442,70448],[70450,70451],[70453,70457],70461,70480,[70493,70497],[70656,70708],[70727,70730],[70751,70753],[70784,70831],[70852,70853],70855,[71040,71086],[71128,71131],[71168,71215],71236,[71296,71338],71352,[71424,71450],[71488,71494],[71680,71723],[71935,71942],71945,[71948,71955],[71957,71958],[71960,71983],71999,72001,[72096,72103],[72106,72144],72161,72163,72192,[72203,72242],72250,72272,[72284,72329],72349,[72368,72440],[72704,72712],[72714,72750],72768,[72818,72847],[72960,72966],[72968,72969],[72971,73008],73030,[73056,73061],[73063,73064],[73066,73097],73112,[73440,73458],73474,[73476,73488],[73490,73523],73648,[73728,74649],[74880,75075],[77712,77808],[77824,78895],[78913,78918],[82944,83526],[92160,92728],[92736,92766],[92784,92862],[92880,92909],[92928,92975],[93027,93047],[93053,93071],[93952,94026],94032,[94208,100343],[100352,101589],[101632,101640],[110592,110882],110898,[110928,110930],110933,[110948,110951],[110960,111355],[113664,113770],[113776,113788],[113792,113800],[113808,113817],122634,[123136,123180],123214,[123536,123565],[123584,123627],[124112,124138],[124896,124902],[124904,124907],[124909,124910],[124912,124926],[124928,125124],[126464,126467],[126469,126495],[126497,126498],126500,126503,[126505,126514],[126516,126519],126521,126523,126530,126535,126537,126539,[126541,126543],[126545,126546],126548,126551,126553,126555,126557,126559,[126561,126562],126564,[126567,126570],[126572,126578],[126580,126583],[126585,126588],126590,[126592,126601],[126603,126619],[126625,126627],[126629,126633],[126635,126651],[131072,173791],[173824,177977],[177984,178205],[178208,183969],[183984,191456],[194560,195101],[196608,201546],[201552,205743]],Other_Number:[[178,179],185,[188,190],[2548,2553],[2930,2935],[3056,3058],[3192,3198],[3416,3422],[3440,3448],[3882,3891],[4969,4988],[6128,6137],6618,8304,[8308,8313],[8320,8329],[8528,8543],8585,[9312,9371],[9450,9471],[10102,10131],11517,[12690,12693],[12832,12841],[12872,12879],[12881,12895],[12928,12937],[12977,12991],[43056,43061],[65799,65843],[65909,65912],[65930,65931],[66273,66299],[66336,66339],[67672,67679],[67705,67711],[67751,67759],[67835,67839],[67862,67867],[68028,68029],[68032,68047],[68050,68095],[68160,68168],[68221,68222],[68253,68255],[68331,68335],[68440,68447],[68472,68479],[68521,68527],[68858,68863],[69216,69246],[69405,69414],[69457,69460],[69573,69579],[69714,69733],[70113,70132],[71482,71483],[71914,71922],[72794,72812],[73664,73684],[93019,93025],[93824,93846],[119488,119507],[119520,119539],[119648,119672],[125127,125135],[126065,126123],[126125,126127],[126129,126132],[126209,126253],[126255,126269],[127232,127244]],Other_Punctuation:[[33,35],[37,39],42,44,[46,47],[58,59],[63,64],92,161,167,[182,183],191,894,903,[1370,1375],1417,1472,1475,1478,[1523,1524],[1545,1546],[1548,1549],1563,[1565,1567],[1642,1645],1748,[1792,1805],[2039,2041],[2096,2110],2142,[2404,2405],2416,2557,2678,2800,3191,3204,3572,3663,[3674,3675],[3844,3858],3860,3973,[4048,4052],[4057,4058],[4170,4175],4347,[4960,4968],5742,[5867,5869],[5941,5942],[6100,6102],[6104,6106],[6144,6149],[6151,6154],[6468,6469],[6686,6687],[6816,6822],[6824,6829],[7002,7008],[7037,7038],[7164,7167],[7227,7231],[7294,7295],[7360,7367],7379,[8214,8215],[8224,8231],[8240,8248],[8251,8254],[8257,8259],[8263,8273],8275,[8277,8286],[11513,11516],[11518,11519],11632,[11776,11777],[11782,11784],11787,[11790,11798],[11800,11801],11803,[11806,11807],[11818,11822],[11824,11833],[11836,11839],11841,[11843,11855],[11858,11860],[12289,12291],12349,12539,[42238,42239],[42509,42511],42611,42622,[42738,42743],[43124,43127],[43214,43215],[43256,43258],43260,[43310,43311],43359,[43457,43469],[43486,43487],[43612,43615],[43742,43743],[43760,43761],44011,[65040,65046],65049,65072,[65093,65094],[65097,65100],[65104,65106],[65108,65111],[65119,65121],65128,[65130,65131],[65281,65283],[65285,65287],65290,65292,[65294,65295],[65306,65307],[65311,65312],65340,65377,[65380,65381],[65792,65794],66463,66512,66927,67671,67871,67903,[68176,68184],68223,[68336,68342],[68409,68415],[68505,68508],[69461,69465],[69510,69513],[69703,69709],[69819,69820],[69822,69825],[69952,69955],[70004,70005],[70085,70088],70093,70107,[70109,70111],[70200,70205],70313,[70731,70735],[70746,70747],70749,70854,[71105,71127],[71233,71235],[71264,71276],71353,[71484,71486],71739,[72004,72006],72162,[72255,72262],[72346,72348],[72350,72354],[72448,72457],[72769,72773],[72816,72817],[73463,73464],[73539,73551],73727,[74864,74868],[77809,77810],[92782,92783],92917,[92983,92987],92996,[93847,93850],94178,113823,[121479,121483],[125278,125279]],Other_Symbol:[166,169,174,176,1154,[1421,1422],[1550,1551],1758,1769,[1789,1790],2038,2554,2928,[3059,3064],3066,3199,3407,3449,[3841,3843],3859,[3861,3863],[3866,3871],3892,3894,3896,[4030,4037],[4039,4044],[4046,4047],[4053,4056],[4254,4255],[5008,5017],5741,6464,[6622,6655],[7009,7018],[7028,7036],[8448,8449],[8451,8454],[8456,8457],8468,[8470,8471],[8478,8483],8485,8487,8489,8494,[8506,8507],8522,[8524,8525],8527,[8586,8587],[8597,8601],[8604,8607],[8609,8610],[8612,8613],[8615,8621],[8623,8653],[8656,8657],8659,[8661,8691],[8960,8967],[8972,8991],[8994,9e3],[9003,9083],[9085,9114],[9140,9179],[9186,9254],[9280,9290],[9372,9449],[9472,9654],[9656,9664],[9666,9719],[9728,9838],[9840,10087],[10132,10175],[10240,10495],[11008,11055],[11077,11078],[11085,11123],[11126,11157],[11159,11263],[11493,11498],[11856,11857],[11904,11929],[11931,12019],[12032,12245],[12272,12283],12292,[12306,12307],12320,[12342,12343],[12350,12351],[12688,12689],[12694,12703],[12736,12771],[12800,12830],[12842,12871],12880,[12896,12927],[12938,12976],[12992,13311],[19904,19967],[42128,42182],[43048,43051],[43062,43063],43065,[43639,43641],[64832,64847],64975,[65021,65023],65508,65512,[65517,65518],[65532,65533],[65847,65855],[65913,65929],[65932,65934],[65936,65948],65952,[66e3,66044],[67703,67704],68296,71487,[73685,73692],[73697,73713],[92988,92991],92997,113820,[118608,118723],[118784,119029],[119040,119078],[119081,119140],[119146,119148],[119171,119172],[119180,119209],[119214,119274],[119296,119361],119365,[119552,119638],[120832,121343],[121399,121402],[121453,121460],[121462,121475],[121477,121478],123215,126124,126254,[126976,127019],[127024,127123],[127136,127150],[127153,127167],[127169,127183],[127185,127221],[127245,127405],[127462,127490],[127504,127547],[127552,127560],[127568,127569],[127584,127589],[127744,127994],[128e3,128727],[128732,128748],[128752,128764],[128768,128886],[128891,128985],[128992,129003],129008,[129024,129035],[129040,129095],[129104,129113],[129120,129159],[129168,129197],[129200,129201],[129280,129619],[129632,129645],[129648,129660],[129664,129672],[129680,129725],[129727,129733],[129742,129755],[129760,129768],[129776,129784],[129792,129938],[129940,129994]],Paragraph_Separator:[8233],Private_Use:[[57344,63743],[983040,1048573],[1048576,1114109]],Punctuation:[[33,35],[37,42],[44,47],[58,59],[63,64],[91,93],95,123,125,161,167,171,[182,183],187,191,894,903,[1370,1375],[1417,1418],1470,1472,1475,1478,[1523,1524],[1545,1546],[1548,1549],1563,[1565,1567],[1642,1645],1748,[1792,1805],[2039,2041],[2096,2110],2142,[2404,2405],2416,2557,2678,2800,3191,3204,3572,3663,[3674,3675],[3844,3858],3860,[3898,3901],3973,[4048,4052],[4057,4058],[4170,4175],4347,[4960,4968],5120,5742,[5787,5788],[5867,5869],[5941,5942],[6100,6102],[6104,6106],[6144,6154],[6468,6469],[6686,6687],[6816,6822],[6824,6829],[7002,7008],[7037,7038],[7164,7167],[7227,7231],[7294,7295],[7360,7367],7379,[8208,8231],[8240,8259],[8261,8273],[8275,8286],[8317,8318],[8333,8334],[8968,8971],[9001,9002],[10088,10101],[10181,10182],[10214,10223],[10627,10648],[10712,10715],[10748,10749],[11513,11516],[11518,11519],11632,[11776,11822],[11824,11855],[11858,11869],[12289,12291],[12296,12305],[12308,12319],12336,12349,12448,12539,[42238,42239],[42509,42511],42611,42622,[42738,42743],[43124,43127],[43214,43215],[43256,43258],43260,[43310,43311],43359,[43457,43469],[43486,43487],[43612,43615],[43742,43743],[43760,43761],44011,[64830,64831],[65040,65049],[65072,65106],[65108,65121],65123,65128,[65130,65131],[65281,65283],[65285,65290],[65292,65295],[65306,65307],[65311,65312],[65339,65341],65343,65371,65373,[65375,65381],[65792,65794],66463,66512,66927,67671,67871,67903,[68176,68184],68223,[68336,68342],[68409,68415],[68505,68508],69293,[69461,69465],[69510,69513],[69703,69709],[69819,69820],[69822,69825],[69952,69955],[70004,70005],[70085,70088],70093,70107,[70109,70111],[70200,70205],70313,[70731,70735],[70746,70747],70749,70854,[71105,71127],[71233,71235],[71264,71276],71353,[71484,71486],71739,[72004,72006],72162,[72255,72262],[72346,72348],[72350,72354],[72448,72457],[72769,72773],[72816,72817],[73463,73464],[73539,73551],73727,[74864,74868],[77809,77810],[92782,92783],92917,[92983,92987],92996,[93847,93850],94178,113823,[121479,121483],[125278,125279]],Separator:[32,160,5760,[8192,8202],[8232,8233],8239,8287,12288],Space_Separator:[32,160,5760,[8192,8202],8239,8287,12288],Spacing_Mark:[2307,2363,[2366,2368],[2377,2380],[2382,2383],[2434,2435],[2494,2496],[2503,2504],[2507,2508],2519,2563,[2622,2624],2691,[2750,2752],2761,[2763,2764],[2818,2819],2878,2880,[2887,2888],[2891,2892],2903,[3006,3007],[3009,3010],[3014,3016],[3018,3020],3031,[3073,3075],[3137,3140],[3202,3203],3262,[3264,3268],[3271,3272],[3274,3275],[3285,3286],3315,[3330,3331],[3390,3392],[3398,3400],[3402,3404],3415,[3458,3459],[3535,3537],[3544,3551],[3570,3571],[3902,3903],3967,[4139,4140],4145,4152,[4155,4156],[4182,4183],[4194,4196],[4199,4205],[4227,4228],[4231,4236],4239,[4250,4252],5909,5940,6070,[6078,6085],[6087,6088],[6435,6438],[6441,6443],[6448,6449],[6451,6456],[6681,6682],6741,6743,6753,[6755,6756],[6765,6770],6916,6965,6971,[6973,6977],[6979,6980],7042,7073,[7078,7079],7082,7143,[7146,7148],7150,[7154,7155],[7204,7211],[7220,7221],7393,7415,[12334,12335],[43043,43044],43047,[43136,43137],[43188,43203],[43346,43347],43395,[43444,43445],[43450,43451],[43454,43456],[43567,43568],[43571,43572],43597,43643,43645,43755,[43758,43759],43765,[44003,44004],[44006,44007],[44009,44010],44012,69632,69634,69762,[69808,69810],[69815,69816],69932,[69957,69958],70018,[70067,70069],[70079,70080],70094,[70188,70190],[70194,70195],70197,[70368,70370],[70402,70403],[70462,70463],[70465,70468],[70471,70472],[70475,70477],70487,[70498,70499],[70709,70711],[70720,70721],70725,[70832,70834],70841,[70843,70846],70849,[71087,71089],[71096,71099],71102,[71216,71218],[71227,71228],71230,71340,[71342,71343],71350,[71456,71457],71462,[71724,71726],71736,[71984,71989],[71991,71992],71997,72e3,72002,[72145,72147],[72156,72159],72164,72249,[72279,72280],72343,72751,72766,72873,72881,72884,[73098,73102],[73107,73108],73110,[73461,73462],73475,[73524,73525],[73534,73535],73537,[94033,94087],[94192,94193],[119141,119142],[119149,119154]],Surrogate:[[55296,57343]],Symbol:[36,43,[60,62],94,96,124,126,[162,166],[168,169],172,[174,177],180,184,215,247,[706,709],[722,735],[741,747],749,[751,767],885,[900,901],1014,1154,[1421,1423],[1542,1544],1547,[1550,1551],1758,1769,[1789,1790],2038,[2046,2047],2184,[2546,2547],[2554,2555],2801,2928,[3059,3066],3199,3407,3449,3647,[3841,3843],3859,[3861,3863],[3866,3871],3892,3894,3896,[4030,4037],[4039,4044],[4046,4047],[4053,4056],[4254,4255],[5008,5017],5741,6107,6464,[6622,6655],[7009,7018],[7028,7036],8125,[8127,8129],[8141,8143],[8157,8159],[8173,8175],[8189,8190],8260,8274,[8314,8316],[8330,8332],[8352,8384],[8448,8449],[8451,8454],[8456,8457],8468,[8470,8472],[8478,8483],8485,8487,8489,8494,[8506,8507],[8512,8516],[8522,8525],8527,[8586,8587],[8592,8967],[8972,9e3],[9003,9254],[9280,9290],[9372,9449],[9472,10087],[10132,10180],[10183,10213],[10224,10626],[10649,10711],[10716,10747],[10750,11123],[11126,11157],[11159,11263],[11493,11498],[11856,11857],[11904,11929],[11931,12019],[12032,12245],[12272,12283],12292,[12306,12307],12320,[12342,12343],[12350,12351],[12443,12444],[12688,12689],[12694,12703],[12736,12771],[12800,12830],[12842,12871],12880,[12896,12927],[12938,12976],[12992,13311],[19904,19967],[42128,42182],[42752,42774],[42784,42785],[42889,42890],[43048,43051],[43062,43065],[43639,43641],43867,[43882,43883],64297,[64434,64450],[64832,64847],64975,[65020,65023],65122,[65124,65126],65129,65284,65291,[65308,65310],65342,65344,65372,65374,[65504,65510],[65512,65518],[65532,65533],[65847,65855],[65913,65929],[65932,65934],[65936,65948],65952,[66e3,66044],[67703,67704],68296,71487,[73685,73713],[92988,92991],92997,113820,[118608,118723],[118784,119029],[119040,119078],[119081,119140],[119146,119148],[119171,119172],[119180,119209],[119214,119274],[119296,119361],119365,[119552,119638],120513,120539,120571,120597,120629,120655,120687,120713,120745,120771,[120832,121343],[121399,121402],[121453,121460],[121462,121475],[121477,121478],123215,123647,126124,126128,126254,[126704,126705],[126976,127019],[127024,127123],[127136,127150],[127153,127167],[127169,127183],[127185,127221],[127245,127405],[127462,127490],[127504,127547],[127552,127560],[127568,127569],[127584,127589],[127744,128727],[128732,128748],[128752,128764],[128768,128886],[128891,128985],[128992,129003],129008,[129024,129035],[129040,129095],[129104,129113],[129120,129159],[129168,129197],[129200,129201],[129280,129619],[129632,129645],[129648,129660],[129664,129672],[129680,129725],[129727,129733],[129742,129755],[129760,129768],[129776,129784],[129792,129938],[129940,129994]],Titlecase_Letter:[453,456,459,498,[8072,8079],[8088,8095],[8104,8111],8124,8140,8188],Unassigned:[[888,889],[896,899],907,909,930,1328,[1367,1368],[1419,1420],1424,[1480,1487],[1515,1518],[1525,1535],1806,[1867,1868],[1970,1983],[2043,2044],[2094,2095],2111,[2140,2141],2143,[2155,2159],2191,[2194,2199],2436,[2445,2446],[2449,2450],2473,2481,[2483,2485],[2490,2491],[2501,2502],[2505,2506],[2511,2518],[2520,2523],2526,[2532,2533],[2559,2560],2564,[2571,2574],[2577,2578],2601,2609,2612,2615,[2618,2619],2621,[2627,2630],[2633,2634],[2638,2640],[2642,2648],2653,[2655,2661],[2679,2688],2692,2702,2706,2729,2737,2740,[2746,2747],2758,2762,[2766,2767],[2769,2783],[2788,2789],[2802,2808],2816,2820,[2829,2830],[2833,2834],2857,2865,2868,[2874,2875],[2885,2886],[2889,2890],[2894,2900],[2904,2907],2910,[2916,2917],[2936,2945],2948,[2955,2957],2961,[2966,2968],2971,2973,[2976,2978],[2981,2983],[2987,2989],[3002,3005],[3011,3013],3017,[3022,3023],[3025,3030],[3032,3045],[3067,3071],3085,3089,3113,[3130,3131],3141,3145,[3150,3156],3159,[3163,3164],[3166,3167],[3172,3173],[3184,3190],3213,3217,3241,3252,[3258,3259],3269,3273,[3278,3284],[3287,3292],3295,[3300,3301],3312,[3316,3327],3341,3345,3397,3401,[3408,3411],[3428,3429],3456,3460,[3479,3481],3506,3516,[3518,3519],[3527,3529],[3531,3534],3541,3543,[3552,3557],[3568,3569],[3573,3584],[3643,3646],[3676,3712],3715,3717,3723,3748,3750,[3774,3775],3781,3783,3791,[3802,3803],[3808,3839],3912,[3949,3952],3992,4029,4045,[4059,4095],4294,[4296,4300],[4302,4303],4681,[4686,4687],4695,4697,[4702,4703],4745,[4750,4751],4785,[4790,4791],4799,4801,[4806,4807],4823,4881,[4886,4887],[4955,4956],[4989,4991],[5018,5023],[5110,5111],[5118,5119],[5789,5791],[5881,5887],[5910,5918],[5943,5951],[5972,5983],5997,6001,[6004,6015],[6110,6111],[6122,6127],[6138,6143],[6170,6175],[6265,6271],[6315,6319],[6390,6399],6431,[6444,6447],[6460,6463],[6465,6467],[6510,6511],[6517,6527],[6572,6575],[6602,6607],[6619,6621],[6684,6685],6751,[6781,6782],[6794,6799],[6810,6815],[6830,6831],[6863,6911],[6989,6991],7039,[7156,7163],[7224,7226],[7242,7244],[7305,7311],[7355,7356],[7368,7375],[7419,7423],[7958,7959],[7966,7967],[8006,8007],[8014,8015],8024,8026,8028,8030,[8062,8063],8117,8133,[8148,8149],8156,[8176,8177],8181,8191,8293,[8306,8307],8335,[8349,8351],[8385,8399],[8433,8447],[8588,8591],[9255,9279],[9291,9311],[11124,11125],11158,[11508,11512],11558,[11560,11564],[11566,11567],[11624,11630],[11633,11646],[11671,11679],11687,11695,11703,11711,11719,11727,11735,11743,[11870,11903],11930,[12020,12031],[12246,12271],[12284,12287],12352,[12439,12440],[12544,12548],12592,12687,[12772,12783],12831,[42125,42127],[42183,42191],[42540,42559],[42744,42751],[42955,42959],42962,42964,[42970,42993],[43053,43055],[43066,43071],[43128,43135],[43206,43213],[43226,43231],[43348,43358],[43389,43391],43470,[43482,43485],43519,[43575,43583],[43598,43599],[43610,43611],[43715,43738],[43767,43776],[43783,43784],[43791,43792],[43799,43807],43815,43823,[43884,43887],[44014,44015],[44026,44031],[55204,55215],[55239,55242],[55292,55295],[64110,64111],[64218,64255],[64263,64274],[64280,64284],64311,64317,64319,64322,64325,[64451,64466],[64912,64913],[64968,64974],[64976,65007],[65050,65055],65107,65127,[65132,65135],65141,[65277,65278],65280,[65471,65473],[65480,65481],[65488,65489],[65496,65497],[65501,65503],65511,[65519,65528],[65534,65535],65548,65575,65595,65598,[65614,65615],[65630,65663],[65787,65791],[65795,65798],[65844,65846],65935,[65949,65951],[65953,65999],[66046,66175],[66205,66207],[66257,66271],[66300,66303],[66340,66348],[66379,66383],[66427,66431],66462,[66500,66503],[66518,66559],[66718,66719],[66730,66735],[66772,66775],[66812,66815],[66856,66863],[66916,66926],66939,66955,66963,66966,66978,66994,67002,[67005,67071],[67383,67391],[67414,67423],[67432,67455],67462,67505,[67515,67583],[67590,67591],67593,67638,[67641,67643],[67645,67646],67670,[67743,67750],[67760,67807],67827,[67830,67834],[67868,67870],[67898,67902],[67904,67967],[68024,68027],[68048,68049],68100,[68103,68107],68116,68120,[68150,68151],[68155,68158],[68169,68175],[68185,68191],[68256,68287],[68327,68330],[68343,68351],[68406,68408],[68438,68439],[68467,68471],[68498,68504],[68509,68520],[68528,68607],[68681,68735],[68787,68799],[68851,68857],[68904,68911],[68922,69215],69247,69290,[69294,69295],[69298,69372],[69416,69423],[69466,69487],[69514,69551],[69580,69599],[69623,69631],[69710,69713],[69750,69758],[69827,69836],[69838,69839],[69865,69871],[69882,69887],69941,[69960,69967],[70007,70015],70112,[70133,70143],70162,[70210,70271],70279,70281,70286,70302,[70314,70319],[70379,70383],[70394,70399],70404,[70413,70414],[70417,70418],70441,70449,70452,70458,[70469,70470],[70473,70474],[70478,70479],[70481,70486],[70488,70492],[70500,70501],[70509,70511],[70517,70655],70748,[70754,70783],[70856,70863],[70874,71039],[71094,71095],[71134,71167],[71237,71247],[71258,71263],[71277,71295],[71354,71359],[71370,71423],[71451,71452],[71468,71471],[71495,71679],[71740,71839],[71923,71934],[71943,71944],[71946,71947],71956,71959,71990,[71993,71994],[72007,72015],[72026,72095],[72104,72105],[72152,72153],[72165,72191],[72264,72271],[72355,72367],[72441,72447],[72458,72703],72713,72759,[72774,72783],[72813,72815],[72848,72849],72872,[72887,72959],72967,72970,[73015,73017],73019,73022,[73032,73039],[73050,73055],73062,73065,73103,73106,[73113,73119],[73130,73439],[73465,73471],73489,[73531,73533],[73562,73647],[73649,73663],[73714,73726],[74650,74751],74863,[74869,74879],[75076,77711],[77811,77823],[78934,82943],[83527,92159],[92729,92735],92767,[92778,92781],92863,[92874,92879],[92910,92911],[92918,92927],[92998,93007],93018,93026,[93048,93052],[93072,93759],[93851,93951],[94027,94030],[94088,94094],[94112,94175],[94181,94191],[94194,94207],[100344,100351],[101590,101631],[101641,110575],110580,110588,110591,[110883,110897],[110899,110927],[110931,110932],[110934,110947],[110952,110959],[111356,113663],[113771,113775],[113789,113791],[113801,113807],[113818,113819],[113828,118527],[118574,118575],[118599,118607],[118724,118783],[119030,119039],[119079,119080],[119275,119295],[119366,119487],[119508,119519],[119540,119551],[119639,119647],[119673,119807],119893,119965,[119968,119969],[119971,119972],[119975,119976],119981,119994,119996,120004,120070,[120075,120076],120085,120093,120122,120127,120133,[120135,120137],120145,[120486,120487],[120780,120781],[121484,121498],121504,[121520,122623],[122655,122660],[122667,122879],122887,[122905,122906],122914,122917,[122923,122927],[122990,123022],[123024,123135],[123181,123183],[123198,123199],[123210,123213],[123216,123535],[123567,123583],[123642,123646],[123648,124111],[124154,124895],124903,124908,124911,124927,[125125,125126],[125143,125183],[125260,125263],[125274,125277],[125280,126064],[126133,126208],[126270,126463],126468,126496,126499,[126501,126502],126504,126515,126520,126522,[126524,126529],[126531,126534],126536,126538,126540,126544,126547,[126549,126550],126552,126554,126556,126558,126560,126563,[126565,126566],126571,126579,126584,126589,126591,126602,[126620,126624],126628,126634,[126652,126703],[126706,126975],[127020,127023],[127124,127135],[127151,127152],127168,127184,[127222,127231],[127406,127461],[127491,127503],[127548,127551],[127561,127567],[127570,127583],[127590,127743],[128728,128731],[128749,128751],[128765,128767],[128887,128890],[128986,128991],[129004,129007],[129009,129023],[129036,129039],[129096,129103],[129114,129119],[129160,129167],[129198,129199],[129202,129279],[129620,129631],[129646,129647],[129661,129663],[129673,129679],129726,[129734,129741],[129756,129759],[129769,129775],[129785,129791],129939,[129995,130031],[130042,131071],[173792,173823],[177978,177983],[178206,178207],[183970,183983],[191457,194559],[195102,196607],[201547,201551],[205744,917504],[917506,917535],[917632,917759],[918e3,983039],[1048574,1048575],[1114110,1114111]],Uppercase_Letter:[[65,90],[192,214],[216,222],256,258,260,262,264,266,268,270,272,274,276,278,280,282,284,286,288,290,292,294,296,298,300,302,304,306,308,310,313,315,317,319,321,323,325,327,330,332,334,336,338,340,342,344,346,348,350,352,354,356,358,360,362,364,366,368,370,372,374,[376,377],379,381,[385,386],388,[390,391],[393,395],[398,401],[403,404],[406,408],[412,413],[415,416],418,420,[422,423],425,428,[430,431],[433,435],437,[439,440],444,452,455,458,461,463,465,467,469,471,473,475,478,480,482,484,486,488,490,492,494,497,500,[502,504],506,508,510,512,514,516,518,520,522,524,526,528,530,532,534,536,538,540,542,544,546,548,550,552,554,556,558,560,562,[570,571],[573,574],577,[579,582],584,586,588,590,880,882,886,895,902,[904,906],908,[910,911],[913,929],[931,939],975,[978,980],984,986,988,990,992,994,996,998,1e3,1002,1004,1006,1012,1015,[1017,1018],[1021,1071],1120,1122,1124,1126,1128,1130,1132,1134,1136,1138,1140,1142,1144,1146,1148,1150,1152,1162,1164,1166,1168,1170,1172,1174,1176,1178,1180,1182,1184,1186,1188,1190,1192,1194,1196,1198,1200,1202,1204,1206,1208,1210,1212,1214,[1216,1217],1219,1221,1223,1225,1227,1229,1232,1234,1236,1238,1240,1242,1244,1246,1248,1250,1252,1254,1256,1258,1260,1262,1264,1266,1268,1270,1272,1274,1276,1278,1280,1282,1284,1286,1288,1290,1292,1294,1296,1298,1300,1302,1304,1306,1308,1310,1312,1314,1316,1318,1320,1322,1324,1326,[1329,1366],[4256,4293],4295,4301,[5024,5109],[7312,7354],[7357,7359],7680,7682,7684,7686,7688,7690,7692,7694,7696,7698,7700,7702,7704,7706,7708,7710,7712,7714,7716,7718,7720,7722,7724,7726,7728,7730,7732,7734,7736,7738,7740,7742,7744,7746,7748,7750,7752,7754,7756,7758,7760,7762,7764,7766,7768,7770,7772,7774,7776,7778,7780,7782,7784,7786,7788,7790,7792,7794,7796,7798,7800,7802,7804,7806,7808,7810,7812,7814,7816,7818,7820,7822,7824,7826,7828,7838,7840,7842,7844,7846,7848,7850,7852,7854,7856,7858,7860,7862,7864,7866,7868,7870,7872,7874,7876,7878,7880,7882,7884,7886,7888,7890,7892,7894,7896,7898,7900,7902,7904,7906,7908,7910,7912,7914,7916,7918,7920,7922,7924,7926,7928,7930,7932,7934,[7944,7951],[7960,7965],[7976,7983],[7992,7999],[8008,8013],8025,8027,8029,8031,[8040,8047],[8120,8123],[8136,8139],[8152,8155],[8168,8172],[8184,8187],8450,8455,[8459,8461],[8464,8466],8469,[8473,8477],8484,8486,8488,[8490,8493],[8496,8499],[8510,8511],8517,8579,[11264,11311],11360,[11362,11364],11367,11369,11371,[11373,11376],11378,11381,[11390,11392],11394,11396,11398,11400,11402,11404,11406,11408,11410,11412,11414,11416,11418,11420,11422,11424,11426,11428,11430,11432,11434,11436,11438,11440,11442,11444,11446,11448,11450,11452,11454,11456,11458,11460,11462,11464,11466,11468,11470,11472,11474,11476,11478,11480,11482,11484,11486,11488,11490,11499,11501,11506,42560,42562,42564,42566,42568,42570,42572,42574,42576,42578,42580,42582,42584,42586,42588,42590,42592,42594,42596,42598,42600,42602,42604,42624,42626,42628,42630,42632,42634,42636,42638,42640,42642,42644,42646,42648,42650,42786,42788,42790,42792,42794,42796,42798,42802,42804,42806,42808,42810,42812,42814,42816,42818,42820,42822,42824,42826,42828,42830,42832,42834,42836,42838,42840,42842,42844,42846,42848,42850,42852,42854,42856,42858,42860,42862,42873,42875,[42877,42878],42880,42882,42884,42886,42891,42893,42896,42898,42902,42904,42906,42908,42910,42912,42914,42916,42918,42920,[42922,42926],[42928,42932],42934,42936,42938,42940,42942,42944,42946,[42948,42951],42953,42960,42966,42968,42997,[65313,65338],[66560,66599],[66736,66771],[66928,66938],[66940,66954],[66956,66962],[66964,66965],[68736,68786],[71840,71871],[93760,93791],[119808,119833],[119860,119885],[119912,119937],119964,[119966,119967],119970,[119973,119974],[119977,119980],[119982,119989],[120016,120041],[120068,120069],[120071,120074],[120077,120084],[120086,120092],[120120,120121],[120123,120126],[120128,120132],120134,[120138,120144],[120172,120197],[120224,120249],[120276,120301],[120328,120353],[120380,120405],[120432,120457],[120488,120512],[120546,120570],[120604,120628],[120662,120686],[120720,120744],120778,[125184,125217]]},Symbol.toStringTag,{value:"Module"})),Line_Break:Object.freeze(Object.defineProperty({__proto__:null,Alphabetic:[35,38,42,[60,62],[64,90],[94,122],126,166,169,172,[174,175],181,[192,214],[216,246],[248,710],[718,719],[721,727],732,734,[736,767],[880,887],[890,893],895,[900,906],908,[910,929],[931,1154],[1162,1327],[1329,1366],[1369,1416],[1421,1422],1472,1475,[1523,1524],[1536,1544],[1550,1551],[1568,1610],[1645,1647],[1649,1747],1749,[1757,1758],[1765,1766],1769,[1774,1775],[1786,1805],[1807,1808],[1810,1839],[1869,1957],1969,[1994,2026],[2036,2039],2042,[2048,2069],2074,2084,2088,[2096,2110],[2112,2136],2142,[2144,2154],[2160,2190],[2192,2193],[2208,2249],2274,[2308,2361],2365,2384,[2392,2401],[2416,2432],[2437,2444],[2447,2448],[2451,2472],[2474,2480],2482,[2486,2489],2493,2510,[2524,2525],[2527,2529],[2544,2545],[2548,2552],2554,[2556,2557],[2565,2570],[2575,2576],[2579,2600],[2602,2608],[2610,2611],[2613,2614],[2616,2617],[2649,2652],2654,[2674,2676],2678,[2693,2701],[2703,2705],[2707,2728],[2730,2736],[2738,2739],[2741,2745],2749,2768,[2784,2785],2800,2809,[2821,2828],[2831,2832],[2835,2856],[2858,2864],[2866,2867],[2869,2873],2877,[2908,2909],[2911,2913],[2928,2935],2947,[2949,2954],[2958,2960],[2962,2965],[2969,2970],2972,[2974,2975],[2979,2980],[2984,2986],[2990,3001],3024,[3056,3064],3066,[3077,3084],[3086,3088],[3090,3112],[3114,3129],3133,[3160,3162],3165,[3168,3169],[3192,3200],[3205,3212],[3214,3216],[3218,3240],[3242,3251],[3253,3257],3261,[3293,3294],[3296,3297],[3313,3314],[3332,3340],[3342,3344],[3346,3386],3389,[3406,3407],[3412,3414],[3416,3425],[3440,3448],[3450,3455],[3461,3478],[3482,3505],[3507,3515],3517,[3520,3526],3572,3663,3840,3845,3859,[3861,3863],[3866,3871],[3882,3891],3894,3896,[3904,3911],[3913,3948],[3976,3980],[4032,4037],[4039,4044],[4046,4047],[4052,4056],[4172,4175],[4256,4293],4295,4301,[4304,4351],[4608,4680],[4682,4685],[4688,4694],4696,[4698,4701],[4704,4744],[4746,4749],[4752,4784],[4786,4789],[4792,4798],4800,[4802,4805],[4808,4822],[4824,4880],[4882,4885],[4888,4954],4960,[4962,4988],[4992,5017],[5024,5109],[5112,5117],[5121,5759],[5761,5786],[5792,5866],[5870,5880],[5888,5905],[5919,5937],[5952,5969],[5984,5996],[5998,6e3],6105,[6128,6137],[6144,6145],6151,6154,[6176,6264],[6272,6276],[6279,6312],6314,[6320,6389],[6400,6430],6464,[6624,6678],[6686,6687],[6917,6963],[6981,6988],7004,[7009,7018],[7028,7036],[7043,7072],[7086,7087],[7098,7141],[7164,7203],[7245,7247],[7258,7293],[7296,7304],[7312,7354],[7357,7367],7379,[7401,7404],[7406,7411],[7413,7414],7418,[7424,7615],[7680,7957],[7960,7965],[7968,8005],[8008,8013],[8016,8023],8025,8027,8029,[8031,8061],[8064,8116],[8118,8132],[8134,8147],[8150,8155],[8157,8175],[8178,8180],[8182,8188],8190,8215,[8226,8227],8248,[8254,8259],[8266,8277],8284,[8289,8292],[8304,8305],[8309,8316],8320,[8325,8332],[8336,8348],[8448,8450],8452,[8454,8456],[8458,8466],[8468,8469],[8471,8480],[8483,8490],[8492,8531],[8534,8538],[8540,8541],8543,[8556,8559],[8570,8584],[8586,8587],[8602,8657],8659,[8661,8703],8705,[8708,8710],[8713,8714],[8716,8718],8720,8724,[8726,8729],[8731,8732],[8737,8738],8740,8742,8749,[8751,8755],[8760,8763],[8766,8775],[8777,8779],[8781,8785],[8787,8799],[8802,8803],[8808,8809],[8812,8813],[8816,8833],[8836,8837],[8840,8852],[8854,8856],[8858,8868],[8870,8894],[8896,8942],[8944,8967],[8972,8977],[8979,8985],[8988,9e3],[9003,9199],[9204,9254],[9280,9290],9471,[9548,9551],[9589,9599],[9616,9617],[9622,9631],9634,[9642,9649],[9652,9653],[9656,9659],[9662,9663],[9666,9669],[9673,9674],[9676,9677],[9682,9697],[9702,9710],[9712,9727],9732,[9735,9736],[9738,9741],[9744,9747],9753,[9760,9784],[9788,9791],9793,[9795,9823],9826,9830,9835,9838,[9840,9854],[9856,9885],[9888,9916],9934,9954,[9956,9959],[9989,9991],[9998,10070],[10072,10074],10081,[10085,10087],[10132,10180],[10183,10213],[10224,10626],[10649,10711],[10716,10747],[10750,11092],[11098,11123],[11126,11157],[11159,11502],[11506,11507],11517,[11520,11557],11559,11565,[11568,11623],11631,[11648,11670],[11680,11686],[11688,11694],[11696,11702],[11704,11710],[11712,11718],[11720,11726],[11728,11734],[11736,11742],11798,[11802,11803],[11806,11807],11823,11826,[11829,11833],11839,11851,11853,[11856,11858],[19904,19967],[42192,42237],[42240,42508],[42512,42527],[42538,42539],[42560,42606],42611,[42622,42653],[42656,42735],42738,[42752,42954],[42960,42961],42963,[42965,42969],[42994,43009],[43011,43013],[43015,43018],[43020,43042],[43048,43051],[43056,43063],43065,[43072,43123],[43138,43187],[43250,43259],[43261,43262],[43274,43301],[43312,43334],43359,[43396,43442],[43457,43462],[43466,43469],43471,[43486,43487],[43520,43560],[43584,43586],[43588,43595],43612,[43744,43754],[43762,43764],[43777,43782],[43785,43790],[43793,43798],[43808,43814],[43816,43822],[43824,43883],[43888,44002],[64256,64262],[64275,64279],64297,[64336,64450],[64467,64829],[64832,64911],[64914,64967],64975,[65008,65019],[65021,65023],[65136,65140],[65142,65276],[65512,65518],[65536,65547],[65549,65574],[65576,65594],[65596,65597],[65599,65613],[65616,65629],[65664,65786],[65799,65843],[65847,65934],[65936,65948],65952,[66e3,66044],[66176,66204],[66208,66256],[66273,66299],[66304,66339],[66349,66378],[66384,66421],[66432,66461],[66464,66499],[66504,66511],[66513,66517],[66560,66717],[66736,66771],[66776,66811],[66816,66855],[66864,66915],[66927,66938],[66940,66954],[66956,66962],[66964,66965],[66967,66977],[66979,66993],[66995,67001],[67003,67004],[67072,67382],[67392,67413],[67424,67431],[67456,67461],[67463,67504],[67506,67514],[67584,67589],67592,[67594,67637],[67639,67640],67644,[67647,67669],[67672,67742],[67751,67759],[67808,67826],[67828,67829],[67835,67867],[67872,67897],67903,[67968,68023],[68028,68047],[68050,68096],[68112,68115],[68117,68119],[68121,68149],[68160,68168],68184,[68192,68255],[68288,68324],[68331,68335],[68352,68405],[68416,68437],[68440,68466],[68472,68497],[68505,68508],[68521,68527],[68608,68680],[68736,68786],[68800,68850],[68858,68899],[69216,69246],[69248,69289],[69296,69297],[69376,69415],[69424,69445],[69457,69465],[69488,69505],[69510,69513],[69552,69579],[69600,69622],[69635,69687],[69705,69709],[69714,69733],[69745,69746],69749,[69763,69807],[69819,69821],69837,[69840,69864],[69891,69926],69956,69959,[69968,70002],70004,70006,[70019,70066],[70081,70084],70087,70093,70106,70108,[70113,70132],[70144,70161],[70163,70187],70202,70205,[70207,70208],[70272,70278],70280,[70282,70285],[70287,70301],[70303,70312],[70320,70366],[70405,70412],[70415,70416],[70419,70440],[70442,70448],[70450,70451],[70453,70457],70461,70480,[70493,70497],[70656,70708],[70727,70730],70735,70749,[70751,70753],[70784,70831],[70852,70855],[71040,71086],[71110,71112],[71128,71131],[71168,71215],[71235,71236],[71296,71338],[71352,71353],[71680,71723],71739,[71840,71903],[71914,71922],[71935,71942],71945,[71948,71955],[71957,71958],[71960,71983],71999,72001,[72096,72103],[72106,72144],72161,72163,72192,[72203,72242],72250,72256,72262,72272,[72284,72329],72349,[72368,72440],[72704,72712],[72714,72750],72768,[72794,72812],[72818,72847],[72960,72966],[72968,72969],[72971,73008],73030,[73056,73061],[73063,73064],[73066,73097],73112,[73440,73458],[73463,73464],73474,[73476,73488],[73490,73523],73648,[73664,73692],[73697,73713],[73728,74649],[74752,74862],[74880,75075],[77712,77810],[77824,78423],[78430,78465],[78467,78469],[78474,78712],[78716,78895],[78913,78918],[82944,83405],[83408,83526],[92160,92728],[92736,92766],[92784,92862],[92880,92909],[92928,92975],[92986,92995],92997,[93019,93025],[93027,93047],[93053,93071],[93760,93846],[93849,93850],[93952,94026],94032,[94099,94111],[101120,101589],[110576,110579],[110581,110587],[110589,110590],[113664,113770],[113776,113788],[113792,113800],[113808,113817],113820,[118608,118723],[118784,119029],[119040,119078],[119081,119140],[119146,119148],[119171,119172],[119180,119209],[119214,119274],[119296,119361],119365,[119488,119507],[119520,119539],[119552,119638],[119648,119672],[119808,119892],[119894,119964],[119966,119967],119970,[119973,119974],[119977,119980],[119982,119993],119995,[119997,120003],[120005,120069],[120071,120074],[120077,120084],[120086,120092],[120094,120121],[120123,120126],[120128,120132],120134,[120138,120144],[120146,120485],[120488,120779],[120832,121343],[121399,121402],[121453,121460],[121462,121475],[121477,121478],121483,[122624,122654],[122661,122666],[122928,122989],[123136,123180],[123191,123197],[123214,123215],[123536,123565],[123584,123627],[124112,124139],[124896,124902],[124904,124907],[124909,124910],[124912,124926],[124928,125124],[125127,125135],[125184,125251],125259,[126065,126123],[126125,126127],[126129,126132],[126209,126269],[126464,126467],[126469,126495],[126497,126498],126500,126503,[126505,126514],[126516,126519],126521,126523,126530,126535,126537,126539,[126541,126543],[126545,126546],126548,126551,126553,126555,126557,126559,[126561,126562],126564,[126567,126570],[126572,126578],[126580,126583],[126585,126588],126590,[126592,126601],[126603,126619],[126625,126627],[126629,126633],[126635,126651],[126704,126705],[127278,127279],[127338,127340],[127900,127901],[127925,127926],127932,128160,128162,128164,128175,[128177,128178],[128256,128262],[128279,128292],[128306,128329],[128468,128475],[128500,128505],[128592,128629],[128636,128639],[128768,128883],[128896,128980],[129024,129035],[129040,129095],[129104,129113],[129120,129159],[129168,129197],[129280,129291],[129536,129619],[129792,129938],[129940,129994]],Ambiguous:[[167,168],170,[178,179],[182,186],[188,190],215,247,711,[713,715],717,720,[728,731],733,[8213,8214],[8224,8225],8251,8308,8319,[8321,8324],8453,8467,[8481,8482],8491,[8532,8533],8539,8542,[8544,8555],[8560,8569],8585,[8592,8601],8658,8660,8704,[8706,8707],[8711,8712],8715,8719,8721,8725,8730,[8733,8736],8739,8741,[8743,8748],8750,[8756,8759],[8764,8765],8776,8780,8786,[8800,8801],[8804,8807],[8810,8811],[8814,8815],[8834,8835],[8838,8839],8853,8857,8869,8895,8978,[9312,9470],[9472,9547],[9552,9588],[9600,9615],[9618,9621],[9632,9633],[9635,9641],[9650,9651],[9654,9655],[9660,9661],[9664,9665],[9670,9672],9675,[9678,9681],[9698,9701],9711,[9733,9734],9737,[9742,9743],[9750,9751],9792,9794,[9824,9825],[9827,9829],9831,[9833,9834],[9836,9837],9839,[9886,9887],[9929,9932],9938,[9941,9943],[9946,9947],[9949,9950],9955,[9960,9961],[9963,9968],9974,[9979,9980],10071,[10102,10131],[11093,11097],[12872,12879],65533,[127232,127244],[127248,127277],[127280,127337],[127344,127404]],Break_After:[9,124,173,1418,1470,[2404,2405],[3674,3675],3851,3892,3967,3973,[4030,4031],4050,[4170,4171],4961,5120,5760,[5867,5869],[5941,5942],[6100,6101],6104,6106,[6148,6149],[7002,7003],[7005,7008],[7037,7038],[7227,7231],[7294,7295],[8192,8198],[8200,8202],8208,[8210,8211],8231,8278,[8280,8283],[8285,8287],[11514,11516],11519,11632,[11790,11797],11799,11801,[11818,11821],[11824,11825],[11827,11828],[11836,11838],[11840,11841],[11843,11850],11852,[11854,11855],11869,12288,[42238,42239],42509,42511,[42739,42743],[43214,43215],[43310,43311],[43463,43465],[43613,43615],[43760,43761],44011,[65792,65794],66463,66512,67671,67871,[68176,68183],[68336,68341],[68409,68415],69293,[69703,69704],[69822,69825],[69952,69955],[70085,70086],70088,[70109,70111],[70200,70201],[70203,70204],70313,[70731,70734],[70746,70747],[71106,71107],[71113,71127],[71233,71234],[71484,71486],[72004,72006],[72257,72260],[72346,72348],[72353,72354],[72769,72773],[73539,73540],73727,[74864,74868],[92782,92783],92917,[92983,92985],92996,[93847,93848],113823,[121479,121482]],Break_Before:[180,712,716,735,3191,3204,[3841,3844],[3846,3847],[3849,3850],[4048,4049],4051,6150,8189,[43124,43125],43260,70005,70107,71105,[71264,71276],72162,72255,72261,[72350,72352],[72448,72457],72816],Break_Both:[8212,[11834,11835]],Break_Symbols:[47],Carriage_Return:[13],Close_Parenthesis:[41,93],Close_Punctuation:[125,3899,3901,5788,8262,8318,8334,8969,8971,9002,10089,10091,10093,10095,10097,10099,10101,10182,10215,10217,10219,10221,10223,10628,10630,10632,10634,10636,10638,10640,10642,10644,10646,10648,10713,10715,10749,11811,11813,11815,11817,11862,11864,11866,11868,[12289,12290],12297,12299,12301,12303,12305,12309,12311,12313,12315,[12318,12319],64830,[65041,65042],65048,65078,65080,65082,65084,65086,65088,65090,65092,65096,65104,65106,65114,65116,65118,65289,65292,65294,65341,65373,[65376,65377],[65379,65380],[78427,78429],78466,78471,78473,[78714,78715],78904,78909,78911,83407],Combining_Mark:[[0,8],[14,31],[127,132],[134,159],[768,846],[848,859],[867,879],[1155,1161],[1425,1469],1471,[1473,1474],[1476,1477],1479,[1552,1562],1564,[1611,1631],1648,[1750,1756],[1759,1764],[1767,1768],[1770,1773],1809,[1840,1866],[1958,1968],[2027,2035],2045,[2070,2073],[2075,2083],[2085,2087],[2089,2093],[2137,2139],[2200,2207],[2250,2273],[2275,2307],[2362,2364],[2366,2383],[2385,2391],[2402,2403],[2433,2435],2492,[2494,2500],[2503,2504],[2507,2509],2519,[2530,2531],2558,[2561,2563],2620,[2622,2626],[2631,2632],[2635,2637],2641,[2672,2673],2677,[2689,2691],2748,[2750,2757],[2759,2761],[2763,2765],[2786,2787],[2810,2815],[2817,2819],2876,[2878,2884],[2887,2888],[2891,2893],[2901,2903],[2914,2915],2946,[3006,3010],[3014,3016],[3018,3021],3031,[3072,3076],3132,[3134,3140],[3142,3144],[3146,3149],[3157,3158],[3170,3171],[3201,3203],3260,[3262,3268],[3270,3272],[3274,3277],[3285,3286],[3298,3299],3315,[3328,3331],[3387,3388],[3390,3396],[3398,3400],[3402,3405],3415,[3426,3427],[3457,3459],3530,[3535,3540],3542,[3544,3551],[3570,3571],[3864,3865],3893,3895,3897,[3902,3903],[3953,3966],[3968,3972],[3974,3975],[3981,3991],[3993,4028],4038,[4957,4959],[5906,5909],[5938,5940],[5970,5971],[6002,6003],[6155,6157],6159,[6277,6278],6313,[6432,6443],[6448,6459],[6679,6683],6783,[6832,6862],[6912,6916],[6964,6980],[7019,7027],[7040,7042],[7073,7085],[7142,7155],[7204,7223],[7376,7378],[7380,7400],7405,7412,[7415,7417],[7616,7628],[7630,7675],[7677,7679],8204,[8206,8207],[8234,8238],[8294,8303],[8400,8432],[11503,11505],11647,[11744,11775],[12330,12335],12341,[12441,12442],[42607,42610],[42612,42621],[42654,42655],[42736,42737],43010,43014,43019,[43043,43047],43052,[43136,43137],[43188,43205],[43232,43249],43263,[43302,43309],[43335,43347],[43392,43395],[43443,43456],[43561,43574],43587,[43596,43597],[43755,43759],[43765,43766],[44003,44010],[44012,44013],64286,[65024,65039],[65056,65071],[65529,65531],66045,66272,[66422,66426],[68097,68099],[68101,68102],[68108,68111],[68152,68154],68159,[68325,68326],[68900,68903],[69291,69292],[69373,69375],[69446,69456],[69506,69509],[69632,69634],[69688,69702],69744,[69747,69748],[69759,69762],[69808,69818],69826,[69888,69890],[69927,69940],[69957,69958],70003,[70016,70018],[70067,70080],[70089,70092],[70094,70095],[70188,70199],70206,70209,[70367,70378],[70400,70403],[70459,70460],[70462,70468],[70471,70472],[70475,70477],70487,[70498,70499],[70502,70508],[70512,70516],[70709,70726],70750,[70832,70851],[71087,71093],[71096,71104],[71132,71133],[71216,71232],[71339,71351],[71724,71738],[71984,71989],[71991,71992],[71995,71998],72e3,[72002,72003],[72145,72151],[72154,72160],72164,[72193,72202],[72243,72249],[72251,72254],72263,[72273,72283],[72330,72345],[72751,72758],[72760,72767],[72850,72871],[72873,72886],[73009,73014],73018,[73020,73021],[73023,73029],73031,[73098,73102],[73104,73105],[73107,73111],[73459,73462],[73472,73473],73475,[73524,73530],[73534,73538],78912,[78919,78933],[92912,92916],[92976,92982],94031,[94033,94087],[94095,94098],[94192,94193],[113821,113822],[113824,113827],[118528,118573],[118576,118598],[119141,119145],[119149,119170],[119173,119179],[119210,119213],[119362,119364],[121344,121398],[121403,121452],121461,121476,[121499,121503],[121505,121519],[122880,122886],[122888,122904],[122907,122913],[122915,122916],[122918,122922],123023,[123184,123190],123566,[123628,123631],[124140,124143],[125136,125142],[125252,125258],917505,[917536,917631],[917760,917999]],Complex_Context:[[3585,3642],[3648,3662],[3713,3714],3716,[3718,3722],[3724,3747],3749,[3751,3773],[3776,3780],3782,[3784,3790],[3804,3807],[4096,4159],[4176,4239],[4250,4255],[6016,6099],6103,[6108,6109],[6480,6509],[6512,6516],[6528,6571],[6576,6601],6618,[6622,6623],[6688,6750],[6752,6780],[6816,6829],[43488,43503],[43514,43518],[43616,43714],[43739,43743],[71424,71450],[71453,71467],[71482,71483],[71487,71494]],Conditional_Japanese_Starter:[12353,12355,12357,12359,12361,12387,12419,12421,12423,12430,[12437,12438],12449,12451,12453,12455,12457,12483,12515,12517,12519,12526,[12533,12534],12540,[12784,12799],[65383,65392],110898,[110928,110930],110933,[110948,110951]],Contingent_Break:[65532],E_Base:[9757,9977,[9994,9997],127877,[127938,127940],127943,[127946,127948],[128066,128067],[128070,128080],[128102,128120],128124,[128129,128131],[128133,128135],128143,128145,128170,[128372,128373],128378,128400,[128405,128406],[128581,128583],[128587,128591],128675,[128692,128694],128704,128716,129292,129295,[129304,129311],129318,[129328,129337],[129340,129342],129399,[129461,129462],[129464,129465],129467,[129485,129487],[129489,129501],[129731,129733],[129776,129784]],E_Modifier:[[127995,127999]],Exclamation:[33,63,1478,1563,[1565,1567],1748,2041,[3853,3857],3860,[6146,6147],[6152,6153],[6468,6469],[10082,10083],11513,11518,11822,[11859,11860],42510,[43126,43127],[65045,65046],[65110,65111],65281,65311,[71108,71109],72817],Glue:[160,847,[860,866],3848,3852,3858,[4057,4058],6158,7629,7676,8199,8209,8239,[78896,78902],[78905,78907],94180],H2:[44032,44060,44088,44116,44144,44172,44200,44228,44256,44284,44312,44340,44368,44396,44424,44452,44480,44508,44536,44564,44592,44620,44648,44676,44704,44732,44760,44788,44816,44844,44872,44900,44928,44956,44984,45012,45040,45068,45096,45124,45152,45180,45208,45236,45264,45292,45320,45348,45376,45404,45432,45460,45488,45516,45544,45572,45600,45628,45656,45684,45712,45740,45768,45796,45824,45852,45880,45908,45936,45964,45992,46020,46048,46076,46104,46132,46160,46188,46216,46244,46272,46300,46328,46356,46384,46412,46440,46468,46496,46524,46552,46580,46608,46636,46664,46692,46720,46748,46776,46804,46832,46860,46888,46916,46944,46972,47e3,47028,47056,47084,47112,47140,47168,47196,47224,47252,47280,47308,47336,47364,47392,47420,47448,47476,47504,47532,47560,47588,47616,47644,47672,47700,47728,47756,47784,47812,47840,47868,47896,47924,47952,47980,48008,48036,48064,48092,48120,48148,48176,48204,48232,48260,48288,48316,48344,48372,48400,48428,48456,48484,48512,48540,48568,48596,48624,48652,48680,48708,48736,48764,48792,48820,48848,48876,48904,48932,48960,48988,49016,49044,49072,49100,49128,49156,49184,49212,49240,49268,49296,49324,49352,49380,49408,49436,49464,49492,49520,49548,49576,49604,49632,49660,49688,49716,49744,49772,49800,49828,49856,49884,49912,49940,49968,49996,50024,50052,50080,50108,50136,50164,50192,50220,50248,50276,50304,50332,50360,50388,50416,50444,50472,50500,50528,50556,50584,50612,50640,50668,50696,50724,50752,50780,50808,50836,50864,50892,50920,50948,50976,51004,51032,51060,51088,51116,51144,51172,51200,51228,51256,51284,51312,51340,51368,51396,51424,51452,51480,51508,51536,51564,51592,51620,51648,51676,51704,51732,51760,51788,51816,51844,51872,51900,51928,51956,51984,52012,52040,52068,52096,52124,52152,52180,52208,52236,52264,52292,52320,52348,52376,52404,52432,52460,52488,52516,52544,52572,52600,52628,52656,52684,52712,52740,52768,52796,52824,52852,52880,52908,52936,52964,52992,53020,53048,53076,53104,53132,53160,53188,53216,53244,53272,53300,53328,53356,53384,53412,53440,53468,53496,53524,53552,53580,53608,53636,53664,53692,53720,53748,53776,53804,53832,53860,53888,53916,53944,53972,54e3,54028,54056,54084,54112,54140,54168,54196,54224,54252,54280,54308,54336,54364,54392,54420,54448,54476,54504,54532,54560,54588,54616,54644,54672,54700,54728,54756,54784,54812,54840,54868,54896,54924,54952,54980,55008,55036,55064,55092,55120,55148,55176],H3:[[44033,44059],[44061,44087],[44089,44115],[44117,44143],[44145,44171],[44173,44199],[44201,44227],[44229,44255],[44257,44283],[44285,44311],[44313,44339],[44341,44367],[44369,44395],[44397,44423],[44425,44451],[44453,44479],[44481,44507],[44509,44535],[44537,44563],[44565,44591],[44593,44619],[44621,44647],[44649,44675],[44677,44703],[44705,44731],[44733,44759],[44761,44787],[44789,44815],[44817,44843],[44845,44871],[44873,44899],[44901,44927],[44929,44955],[44957,44983],[44985,45011],[45013,45039],[45041,45067],[45069,45095],[45097,45123],[45125,45151],[45153,45179],[45181,45207],[45209,45235],[45237,45263],[45265,45291],[45293,45319],[45321,45347],[45349,45375],[45377,45403],[45405,45431],[45433,45459],[45461,45487],[45489,45515],[45517,45543],[45545,45571],[45573,45599],[45601,45627],[45629,45655],[45657,45683],[45685,45711],[45713,45739],[45741,45767],[45769,45795],[45797,45823],[45825,45851],[45853,45879],[45881,45907],[45909,45935],[45937,45963],[45965,45991],[45993,46019],[46021,46047],[46049,46075],[46077,46103],[46105,46131],[46133,46159],[46161,46187],[46189,46215],[46217,46243],[46245,46271],[46273,46299],[46301,46327],[46329,46355],[46357,46383],[46385,46411],[46413,46439],[46441,46467],[46469,46495],[46497,46523],[46525,46551],[46553,46579],[46581,46607],[46609,46635],[46637,46663],[46665,46691],[46693,46719],[46721,46747],[46749,46775],[46777,46803],[46805,46831],[46833,46859],[46861,46887],[46889,46915],[46917,46943],[46945,46971],[46973,46999],[47001,47027],[47029,47055],[47057,47083],[47085,47111],[47113,47139],[47141,47167],[47169,47195],[47197,47223],[47225,47251],[47253,47279],[47281,47307],[47309,47335],[47337,47363],[47365,47391],[47393,47419],[47421,47447],[47449,47475],[47477,47503],[47505,47531],[47533,47559],[47561,47587],[47589,47615],[47617,47643],[47645,47671],[47673,47699],[47701,47727],[47729,47755],[47757,47783],[47785,47811],[47813,47839],[47841,47867],[47869,47895],[47897,47923],[47925,47951],[47953,47979],[47981,48007],[48009,48035],[48037,48063],[48065,48091],[48093,48119],[48121,48147],[48149,48175],[48177,48203],[48205,48231],[48233,48259],[48261,48287],[48289,48315],[48317,48343],[48345,48371],[48373,48399],[48401,48427],[48429,48455],[48457,48483],[48485,48511],[48513,48539],[48541,48567],[48569,48595],[48597,48623],[48625,48651],[48653,48679],[48681,48707],[48709,48735],[48737,48763],[48765,48791],[48793,48819],[48821,48847],[48849,48875],[48877,48903],[48905,48931],[48933,48959],[48961,48987],[48989,49015],[49017,49043],[49045,49071],[49073,49099],[49101,49127],[49129,49155],[49157,49183],[49185,49211],[49213,49239],[49241,49267],[49269,49295],[49297,49323],[49325,49351],[49353,49379],[49381,49407],[49409,49435],[49437,49463],[49465,49491],[49493,49519],[49521,49547],[49549,49575],[49577,49603],[49605,49631],[49633,49659],[49661,49687],[49689,49715],[49717,49743],[49745,49771],[49773,49799],[49801,49827],[49829,49855],[49857,49883],[49885,49911],[49913,49939],[49941,49967],[49969,49995],[49997,50023],[50025,50051],[50053,50079],[50081,50107],[50109,50135],[50137,50163],[50165,50191],[50193,50219],[50221,50247],[50249,50275],[50277,50303],[50305,50331],[50333,50359],[50361,50387],[50389,50415],[50417,50443],[50445,50471],[50473,50499],[50501,50527],[50529,50555],[50557,50583],[50585,50611],[50613,50639],[50641,50667],[50669,50695],[50697,50723],[50725,50751],[50753,50779],[50781,50807],[50809,50835],[50837,50863],[50865,50891],[50893,50919],[50921,50947],[50949,50975],[50977,51003],[51005,51031],[51033,51059],[51061,51087],[51089,51115],[51117,51143],[51145,51171],[51173,51199],[51201,51227],[51229,51255],[51257,51283],[51285,51311],[51313,51339],[51341,51367],[51369,51395],[51397,51423],[51425,51451],[51453,51479],[51481,51507],[51509,51535],[51537,51563],[51565,51591],[51593,51619],[51621,51647],[51649,51675],[51677,51703],[51705,51731],[51733,51759],[51761,51787],[51789,51815],[51817,51843],[51845,51871],[51873,51899],[51901,51927],[51929,51955],[51957,51983],[51985,52011],[52013,52039],[52041,52067],[52069,52095],[52097,52123],[52125,52151],[52153,52179],[52181,52207],[52209,52235],[52237,52263],[52265,52291],[52293,52319],[52321,52347],[52349,52375],[52377,52403],[52405,52431],[52433,52459],[52461,52487],[52489,52515],[52517,52543],[52545,52571],[52573,52599],[52601,52627],[52629,52655],[52657,52683],[52685,52711],[52713,52739],[52741,52767],[52769,52795],[52797,52823],[52825,52851],[52853,52879],[52881,52907],[52909,52935],[52937,52963],[52965,52991],[52993,53019],[53021,53047],[53049,53075],[53077,53103],[53105,53131],[53133,53159],[53161,53187],[53189,53215],[53217,53243],[53245,53271],[53273,53299],[53301,53327],[53329,53355],[53357,53383],[53385,53411],[53413,53439],[53441,53467],[53469,53495],[53497,53523],[53525,53551],[53553,53579],[53581,53607],[53609,53635],[53637,53663],[53665,53691],[53693,53719],[53721,53747],[53749,53775],[53777,53803],[53805,53831],[53833,53859],[53861,53887],[53889,53915],[53917,53943],[53945,53971],[53973,53999],[54001,54027],[54029,54055],[54057,54083],[54085,54111],[54113,54139],[54141,54167],[54169,54195],[54197,54223],[54225,54251],[54253,54279],[54281,54307],[54309,54335],[54337,54363],[54365,54391],[54393,54419],[54421,54447],[54449,54475],[54477,54503],[54505,54531],[54533,54559],[54561,54587],[54589,54615],[54617,54643],[54645,54671],[54673,54699],[54701,54727],[54729,54755],[54757,54783],[54785,54811],[54813,54839],[54841,54867],[54869,54895],[54897,54923],[54925,54951],[54953,54979],[54981,55007],[55009,55035],[55037,55063],[55065,55091],[55093,55119],[55121,55147],[55149,55175],[55177,55203]],Hebrew_Letter:[[1488,1514],[1519,1522],64285,[64287,64296],[64298,64310],[64312,64316],64318,[64320,64321],[64323,64324],[64326,64335]],Hyphen:[45],Ideographic:[[8986,8987],[9200,9203],[9728,9731],[9748,9749],9752,[9754,9756],[9758,9759],[9785,9787],9832,9855,[9917,9928],9933,[9935,9937],[9939,9940],[9944,9945],9948,[9951,9953],9962,[9969,9973],[9975,9976],9978,[9981,9988],[9992,9993],10084,[11904,11929],[11931,12019],[12032,12245],[12272,12283],[12291,12292],[12294,12295],[12306,12307],[12320,12329],[12336,12340],[12342,12346],[12349,12351],12354,12356,12358,12360,[12362,12386],[12388,12418],12420,12422,[12424,12429],[12431,12436],12447,12450,12452,12454,12456,[12458,12482],[12484,12514],12516,12518,[12520,12525],[12527,12532],[12535,12538],12543,[12549,12591],[12593,12686],[12688,12771],[12800,12830],[12832,12871],[12880,19903],[19968,40980],[40982,42124],[42128,42182],[63744,64255],[65072,65076],[65093,65094],[65097,65103],65105,65112,[65119,65126],65128,65131,[65282,65283],[65286,65287],[65290,65291],65293,[65295,65305],[65308,65310],[65312,65338],65340,[65342,65370],65372,65374,65382,[65393,65437],[65440,65470],[65474,65479],[65482,65487],[65490,65495],[65498,65500],[65506,65508],[73541,73551],[94208,100343],[100352,101119],[101632,101640],[110592,110882],[110960,111355],[126976,127231],[127245,127247],[127341,127343],[127405,127461],[127488,127876],[127878,127899],[127902,127924],[127927,127931],[127933,127937],[127941,127942],[127944,127945],[127949,127994],[128e3,128065],[128068,128069],[128081,128101],[128121,128123],[128125,128128],128132,[128136,128142],128144,[128146,128159],128161,128163,[128165,128169],[128171,128174],128176,[128179,128255],[128263,128278],[128293,128305],[128330,128371],[128374,128377],[128379,128399],[128401,128404],[128407,128467],[128476,128499],[128506,128580],[128584,128586],[128640,128674],[128676,128691],[128695,128703],[128705,128715],[128717,128767],[128884,128895],[128981,129023],[129036,129039],[129096,129103],[129114,129119],[129160,129167],[129198,129279],[129293,129294],[129296,129303],[129312,129317],[129319,129327],[129338,129339],[129343,129398],[129400,129460],129463,129466,[129468,129484],129488,[129502,129535],[129620,129730],[129734,129775],[129785,129791],[130048,131069],[131072,196605],[196608,262141]],Infix_Numeric:[44,46,[58,59],894,1417,[1548,1549],2040,8260,65040,[65043,65044]],Inseparable:[[8228,8230],8943,65049,68342],JL:[[4352,4447],[43360,43388]],JT:[[4520,4607],[55243,55291]],JV:[[4448,4519],[55216,55238]],Line_Feed:[10],Mandatory_Break:[[11,12],[8232,8233]],Next_Line:[133],Nonstarter:[6102,[8252,8253],[8263,8265],12293,12316,[12347,12348],[12443,12446],12448,12539,[12541,12542],40981,[65108,65109],[65306,65307],65381,[65438,65439],[94176,94179],[128633,128635]],Numeric:[[48,57],[1632,1641],[1643,1644],[1776,1785],[1984,1993],[2406,2415],[2534,2543],[2662,2671],[2790,2799],[2918,2927],[3046,3055],[3174,3183],[3302,3311],[3430,3439],[3558,3567],[3664,3673],[3792,3801],[3872,3881],[4160,4169],[4240,4249],[6112,6121],[6160,6169],[6470,6479],[6608,6617],[6784,6793],[6800,6809],[6992,7001],[7088,7097],[7232,7241],[7248,7257],[42528,42537],[43216,43225],[43264,43273],[43472,43481],[43504,43513],[43600,43609],[44016,44025],[66720,66729],[68912,68921],[69734,69743],[69872,69881],[69942,69951],[70096,70105],[70384,70393],[70736,70745],[70864,70873],[71248,71257],[71360,71369],[71472,71481],[71904,71913],[72016,72025],[72784,72793],[73040,73049],[73120,73129],[73552,73561],[92768,92777],[92864,92873],[93008,93017],[120782,120831],[123200,123209],[123632,123641],[124144,124153],[125264,125273],[130032,130041]],Open_Punctuation:[40,91,123,161,191,3898,3900,5787,8218,8222,8261,8317,8333,8968,8970,9001,10088,10090,10092,10094,10096,10098,10100,10181,10214,10216,10218,10220,10222,10627,10629,10631,10633,10635,10637,10639,10641,10643,10645,10647,10712,10714,10748,11800,11810,11812,11814,11816,11842,11861,11863,11865,11867,12296,12298,12300,12302,12304,12308,12310,12312,12314,12317,64831,65047,65077,65079,65081,65083,65085,65087,65089,65091,65095,65113,65115,65117,65288,65339,65371,65375,65378,[78424,78426],78470,78472,78713,78903,78908,78910,83406,[125278,125279]],Postfix_Numeric:[37,162,176,[1545,1547],1642,[2546,2547],2553,3449,[8240,8247],8279,8359,8374,8379,8382,8384,8451,8457,43064,65020,65130,65285,65504,[73693,73696],126124,126128],Prefix_Numeric:[36,43,92,[163,165],177,1423,[2046,2047],2555,2801,3065,3647,6107,[8352,8358],[8360,8373],[8375,8378],[8380,8381],8383,[8385,8399],8470,[8722,8723],65129,65284,65505,[65509,65510],123647],Quotation:[34,39,171,187,[8216,8217],[8219,8221],8223,[8249,8250],[10075,10080],[11776,11789],[11804,11805],[11808,11809],[128630,128632]],Regional_Indicator:[[127462,127487]],Space:[32],Surrogate:[[55296,57343]],Unknown:[[888,889],[896,899],907,909,930,1328,[1367,1368],[1419,1420],1424,[1480,1487],[1515,1518],[1525,1535],1806,[1867,1868],[1970,1983],[2043,2044],[2094,2095],2111,[2140,2141],2143,[2155,2159],2191,[2194,2199],2436,[2445,2446],[2449,2450],2473,2481,[2483,2485],[2490,2491],[2501,2502],[2505,2506],[2511,2518],[2520,2523],2526,[2532,2533],[2559,2560],2564,[2571,2574],[2577,2578],2601,2609,2612,2615,[2618,2619],2621,[2627,2630],[2633,2634],[2638,2640],[2642,2648],2653,[2655,2661],[2679,2688],2692,2702,2706,2729,2737,2740,[2746,2747],2758,2762,[2766,2767],[2769,2783],[2788,2789],[2802,2808],2816,2820,[2829,2830],[2833,2834],2857,2865,2868,[2874,2875],[2885,2886],[2889,2890],[2894,2900],[2904,2907],2910,[2916,2917],[2936,2945],2948,[2955,2957],2961,[2966,2968],2971,2973,[2976,2978],[2981,2983],[2987,2989],[3002,3005],[3011,3013],3017,[3022,3023],[3025,3030],[3032,3045],[3067,3071],3085,3089,3113,[3130,3131],3141,3145,[3150,3156],3159,[3163,3164],[3166,3167],[3172,3173],[3184,3190],3213,3217,3241,3252,[3258,3259],3269,3273,[3278,3284],[3287,3292],3295,[3300,3301],3312,[3316,3327],3341,3345,3397,3401,[3408,3411],[3428,3429],3456,3460,[3479,3481],3506,3516,[3518,3519],[3527,3529],[3531,3534],3541,3543,[3552,3557],[3568,3569],[3573,3584],[3643,3646],[3676,3712],3715,3717,3723,3748,3750,[3774,3775],3781,3783,3791,[3802,3803],[3808,3839],3912,[3949,3952],3992,4029,4045,[4059,4095],4294,[4296,4300],[4302,4303],4681,[4686,4687],4695,4697,[4702,4703],4745,[4750,4751],4785,[4790,4791],4799,4801,[4806,4807],4823,4881,[4886,4887],[4955,4956],[4989,4991],[5018,5023],[5110,5111],[5118,5119],[5789,5791],[5881,5887],[5910,5918],[5943,5951],[5972,5983],5997,6001,[6004,6015],[6110,6111],[6122,6127],[6138,6143],[6170,6175],[6265,6271],[6315,6319],[6390,6399],6431,[6444,6447],[6460,6463],[6465,6467],[6510,6511],[6517,6527],[6572,6575],[6602,6607],[6619,6621],[6684,6685],6751,[6781,6782],[6794,6799],[6810,6815],[6830,6831],[6863,6911],[6989,6991],7039,[7156,7163],[7224,7226],[7242,7244],[7305,7311],[7355,7356],[7368,7375],[7419,7423],[7958,7959],[7966,7967],[8006,8007],[8014,8015],8024,8026,8028,8030,[8062,8063],8117,8133,[8148,8149],8156,[8176,8177],8181,8191,8293,[8306,8307],8335,[8349,8351],[8433,8447],[8588,8591],[9255,9279],[9291,9311],[11124,11125],11158,[11508,11512],11558,[11560,11564],[11566,11567],[11624,11630],[11633,11646],[11671,11679],11687,11695,11703,11711,11719,11727,11735,11743,[11870,11903],11930,[12020,12031],[12246,12271],[12284,12287],12352,[12439,12440],[12544,12548],12592,12687,[12772,12783],12831,[42125,42127],[42183,42191],[42540,42559],[42744,42751],[42955,42959],42962,42964,[42970,42993],[43053,43055],[43066,43071],[43128,43135],[43206,43213],[43226,43231],[43348,43358],[43389,43391],43470,[43482,43485],43519,[43575,43583],[43598,43599],[43610,43611],[43715,43738],[43767,43776],[43783,43784],[43791,43792],[43799,43807],43815,43823,[43884,43887],[44014,44015],[44026,44031],[55204,55215],[55239,55242],[55292,55295],[57344,63743],[64263,64274],[64280,64284],64311,64317,64319,64322,64325,[64451,64466],[64912,64913],[64968,64974],[64976,65007],[65050,65055],65107,65127,[65132,65135],65141,[65277,65278],65280,[65471,65473],[65480,65481],[65488,65489],[65496,65497],[65501,65503],65511,[65519,65528],[65534,65535],65548,65575,65595,65598,[65614,65615],[65630,65663],[65787,65791],[65795,65798],[65844,65846],65935,[65949,65951],[65953,65999],[66046,66175],[66205,66207],[66257,66271],[66300,66303],[66340,66348],[66379,66383],[66427,66431],66462,[66500,66503],[66518,66559],[66718,66719],[66730,66735],[66772,66775],[66812,66815],[66856,66863],[66916,66926],66939,66955,66963,66966,66978,66994,67002,[67005,67071],[67383,67391],[67414,67423],[67432,67455],67462,67505,[67515,67583],[67590,67591],67593,67638,[67641,67643],[67645,67646],67670,[67743,67750],[67760,67807],67827,[67830,67834],[67868,67870],[67898,67902],[67904,67967],[68024,68027],[68048,68049],68100,[68103,68107],68116,68120,[68150,68151],[68155,68158],[68169,68175],[68185,68191],[68256,68287],[68327,68330],[68343,68351],[68406,68408],[68438,68439],[68467,68471],[68498,68504],[68509,68520],[68528,68607],[68681,68735],[68787,68799],[68851,68857],[68904,68911],[68922,69215],69247,69290,[69294,69295],[69298,69372],[69416,69423],[69466,69487],[69514,69551],[69580,69599],[69623,69631],[69710,69713],[69750,69758],[69827,69836],[69838,69839],[69865,69871],[69882,69887],69941,[69960,69967],[70007,70015],70112,[70133,70143],70162,[70210,70271],70279,70281,70286,70302,[70314,70319],[70379,70383],[70394,70399],70404,[70413,70414],[70417,70418],70441,70449,70452,70458,[70469,70470],[70473,70474],[70478,70479],[70481,70486],[70488,70492],[70500,70501],[70509,70511],[70517,70655],70748,[70754,70783],[70856,70863],[70874,71039],[71094,71095],[71134,71167],[71237,71247],[71258,71263],[71277,71295],[71354,71359],[71370,71423],[71451,71452],[71468,71471],[71495,71679],[71740,71839],[71923,71934],[71943,71944],[71946,71947],71956,71959,71990,[71993,71994],[72007,72015],[72026,72095],[72104,72105],[72152,72153],[72165,72191],[72264,72271],[72355,72367],[72441,72447],[72458,72703],72713,72759,[72774,72783],[72813,72815],[72848,72849],72872,[72887,72959],72967,72970,[73015,73017],73019,73022,[73032,73039],[73050,73055],73062,73065,73103,73106,[73113,73119],[73130,73439],[73465,73471],73489,[73531,73533],[73562,73647],[73649,73663],[73714,73726],[74650,74751],74863,[74869,74879],[75076,77711],[77811,77823],[78934,82943],[83527,92159],[92729,92735],92767,[92778,92781],92863,[92874,92879],[92910,92911],[92918,92927],[92998,93007],93018,93026,[93048,93052],[93072,93759],[93851,93951],[94027,94030],[94088,94094],[94112,94175],[94181,94191],[94194,94207],[100344,100351],[101590,101631],[101641,110575],110580,110588,110591,[110883,110897],[110899,110927],[110931,110932],[110934,110947],[110952,110959],[111356,113663],[113771,113775],[113789,113791],[113801,113807],[113818,113819],[113828,118527],[118574,118575],[118599,118607],[118724,118783],[119030,119039],[119079,119080],[119275,119295],[119366,119487],[119508,119519],[119540,119551],[119639,119647],[119673,119807],119893,119965,[119968,119969],[119971,119972],[119975,119976],119981,119994,119996,120004,120070,[120075,120076],120085,120093,120122,120127,120133,[120135,120137],120145,[120486,120487],[120780,120781],[121484,121498],121504,[121520,122623],[122655,122660],[122667,122879],122887,[122905,122906],122914,122917,[122923,122927],[122990,123022],[123024,123135],[123181,123183],[123198,123199],[123210,123213],[123216,123535],[123567,123583],[123642,123646],[123648,124111],[124154,124895],124903,124908,124911,124927,[125125,125126],[125143,125183],[125260,125263],[125274,125277],[125280,126064],[126133,126208],[126270,126463],126468,126496,126499,[126501,126502],126504,126515,126520,126522,[126524,126529],[126531,126534],126536,126538,126540,126544,126547,[126549,126550],126552,126554,126556,126558,126560,126563,[126565,126566],126571,126579,126584,126589,126591,126602,[126620,126624],126628,126634,[126652,126703],[126706,126975],[131070,131071],[196606,196607],[262142,917504],[917506,917535],[917632,917759],[918e3,1114111]],Word_Joiner:[8288,65279],ZWJ:[8205],ZWSpace:[8203]},Symbol.toStringTag,{value:"Module"})),Script:Object.freeze(Object.defineProperty({__proto__:null,Adlam:[[125184,125259],[125264,125273],[125278,125279]],Ahom:[[71424,71450],[71453,71467],[71472,71494]],Anatolian_Hieroglyphs:[[82944,83526]],Arabic:[[1536,1540],[1542,1547],[1549,1562],[1564,1566],[1568,1599],[1601,1610],[1622,1647],[1649,1756],[1758,1791],[1872,1919],[2160,2190],[2192,2193],[2200,2273],[2275,2303],[64336,64450],[64467,64829],[64832,64911],[64914,64967],64975,[65008,65023],[65136,65140],[65142,65276],[69216,69246],[69373,69375],[126464,126467],[126469,126495],[126497,126498],126500,126503,[126505,126514],[126516,126519],126521,126523,126530,126535,126537,126539,[126541,126543],[126545,126546],126548,126551,126553,126555,126557,126559,[126561,126562],126564,[126567,126570],[126572,126578],[126580,126583],[126585,126588],126590,[126592,126601],[126603,126619],[126625,126627],[126629,126633],[126635,126651],[126704,126705]],Armenian:[[1329,1366],[1369,1418],[1421,1423],[64275,64279]],Avestan:[[68352,68405],[68409,68415]],Balinese:[[6912,6988],[6992,7038]],Bamum:[[42656,42743],[92160,92728]],Bassa_Vah:[[92880,92909],[92912,92917]],Batak:[[7104,7155],[7164,7167]],Bengali:[[2432,2435],[2437,2444],[2447,2448],[2451,2472],[2474,2480],2482,[2486,2489],[2492,2500],[2503,2504],[2507,2510],2519,[2524,2525],[2527,2531],[2534,2558]],Bhaiksuki:[[72704,72712],[72714,72758],[72760,72773],[72784,72812]],Bopomofo:[[746,747],[12549,12591],[12704,12735]],Brahmi:[[69632,69709],[69714,69749],69759],Braille:[[10240,10495]],Buginese:[[6656,6683],[6686,6687]],Buhid:[[5952,5971]],Canadian_Aboriginal:[[5120,5759],[6320,6389],[72368,72383]],Carian:[[66208,66256]],Caucasian_Albanian:[[66864,66915],66927],Chakma:[[69888,69940],[69942,69959]],Cham:[[43520,43574],[43584,43597],[43600,43609],[43612,43615]],Cherokee:[[5024,5109],[5112,5117],[43888,43967]],Chorasmian:[[69552,69579]],Common:[[0,64],[91,96],[123,169],[171,185],[187,191],215,247,[697,735],[741,745],[748,767],884,894,901,903,1541,1548,1563,1567,1600,1757,2274,[2404,2405],3647,[4053,4056],4347,[5867,5869],[5941,5942],[6146,6147],6149,7379,7393,[7401,7404],[7406,7411],[7413,7415],7418,[8192,8203],[8206,8292],[8294,8304],[8308,8318],[8320,8334],[8352,8384],[8448,8485],[8487,8489],[8492,8497],[8499,8525],[8527,8543],[8585,8587],[8592,9254],[9280,9290],[9312,10239],[10496,11123],[11126,11157],[11159,11263],[11776,11869],[12272,12283],[12288,12292],12294,[12296,12320],[12336,12343],[12348,12351],[12443,12444],12448,[12539,12540],[12688,12703],[12736,12771],[12832,12895],[12927,13007],13055,[13144,13311],[19904,19967],[42752,42785],[42888,42890],[43056,43065],43310,43471,43867,[43882,43883],[64830,64831],[65040,65049],[65072,65106],[65108,65126],[65128,65131],65279,[65281,65312],[65339,65344],[65371,65381],65392,[65438,65439],[65504,65510],[65512,65518],[65529,65533],[65792,65794],[65799,65843],[65847,65855],[65936,65948],[66e3,66044],[66273,66299],[113824,113827],[118608,118723],[118784,119029],[119040,119078],[119081,119142],[119146,119162],[119171,119172],[119180,119209],[119214,119274],[119488,119507],[119520,119539],[119552,119638],[119648,119672],[119808,119892],[119894,119964],[119966,119967],119970,[119973,119974],[119977,119980],[119982,119993],119995,[119997,120003],[120005,120069],[120071,120074],[120077,120084],[120086,120092],[120094,120121],[120123,120126],[120128,120132],120134,[120138,120144],[120146,120485],[120488,120779],[120782,120831],[126065,126132],[126209,126269],[126976,127019],[127024,127123],[127136,127150],[127153,127167],[127169,127183],[127185,127221],[127232,127405],[127462,127487],[127489,127490],[127504,127547],[127552,127560],[127568,127569],[127584,127589],[127744,128727],[128732,128748],[128752,128764],[128768,128886],[128891,128985],[128992,129003],129008,[129024,129035],[129040,129095],[129104,129113],[129120,129159],[129168,129197],[129200,129201],[129280,129619],[129632,129645],[129648,129660],[129664,129672],[129680,129725],[129727,129733],[129742,129755],[129760,129768],[129776,129784],[129792,129938],[129940,129994],[130032,130041],917505,[917536,917631]],Coptic:[[994,1007],[11392,11507],[11513,11519]],Cuneiform:[[73728,74649],[74752,74862],[74864,74868],[74880,75075]],Cypriot:[[67584,67589],67592,[67594,67637],[67639,67640],67644,67647],Cypro_Minoan:[[77712,77810]],Cyrillic:[[1024,1156],[1159,1327],[7296,7304],7467,7544,[11744,11775],[42560,42655],[65070,65071],[122928,122989],123023],Deseret:[[66560,66639]],Devanagari:[[2304,2384],[2389,2403],[2406,2431],[43232,43263],[72448,72457]],Dives_Akuru:[[71936,71942],71945,[71948,71955],[71957,71958],[71960,71989],[71991,71992],[71995,72006],[72016,72025]],Dogra:[[71680,71739]],Duployan:[[113664,113770],[113776,113788],[113792,113800],[113808,113817],[113820,113823]],Egyptian_Hieroglyphs:[[77824,78933]],Elbasan:[[66816,66855]],Elymaic:[[69600,69622]],Ethiopic:[[4608,4680],[4682,4685],[4688,4694],4696,[4698,4701],[4704,4744],[4746,4749],[4752,4784],[4786,4789],[4792,4798],4800,[4802,4805],[4808,4822],[4824,4880],[4882,4885],[4888,4954],[4957,4988],[4992,5017],[11648,11670],[11680,11686],[11688,11694],[11696,11702],[11704,11710],[11712,11718],[11720,11726],[11728,11734],[11736,11742],[43777,43782],[43785,43790],[43793,43798],[43808,43814],[43816,43822],[124896,124902],[124904,124907],[124909,124910],[124912,124926]],Georgian:[[4256,4293],4295,4301,[4304,4346],[4348,4351],[7312,7354],[7357,7359],[11520,11557],11559,11565],Glagolitic:[[11264,11359],[122880,122886],[122888,122904],[122907,122913],[122915,122916],[122918,122922]],Gothic:[[66352,66378]],Grantha:[[70400,70403],[70405,70412],[70415,70416],[70419,70440],[70442,70448],[70450,70451],[70453,70457],[70460,70468],[70471,70472],[70475,70477],70480,70487,[70493,70499],[70502,70508],[70512,70516]],Greek:[[880,883],[885,887],[890,893],895,900,902,[904,906],908,[910,929],[931,993],[1008,1023],[7462,7466],[7517,7521],[7526,7530],7615,[7936,7957],[7960,7965],[7968,8005],[8008,8013],[8016,8023],8025,8027,8029,[8031,8061],[8064,8116],[8118,8132],[8134,8147],[8150,8155],[8157,8175],[8178,8180],[8182,8190],8486,43877,[65856,65934],65952,[119296,119365]],Gujarati:[[2689,2691],[2693,2701],[2703,2705],[2707,2728],[2730,2736],[2738,2739],[2741,2745],[2748,2757],[2759,2761],[2763,2765],2768,[2784,2787],[2790,2801],[2809,2815]],Gunjala_Gondi:[[73056,73061],[73063,73064],[73066,73102],[73104,73105],[73107,73112],[73120,73129]],Gurmukhi:[[2561,2563],[2565,2570],[2575,2576],[2579,2600],[2602,2608],[2610,2611],[2613,2614],[2616,2617],2620,[2622,2626],[2631,2632],[2635,2637],2641,[2649,2652],2654,[2662,2678]],Han:[[11904,11929],[11931,12019],[12032,12245],12293,12295,[12321,12329],[12344,12347],[13312,19903],[19968,40959],[63744,64109],[64112,64217],[94178,94179],[94192,94193],[131072,173791],[173824,177977],[177984,178205],[178208,183969],[183984,191456],[194560,195101],[196608,201546],[201552,205743]],Hangul:[[4352,4607],[12334,12335],[12593,12686],[12800,12830],[12896,12926],[43360,43388],[44032,55203],[55216,55238],[55243,55291],[65440,65470],[65474,65479],[65482,65487],[65490,65495],[65498,65500]],Hanifi_Rohingya:[[68864,68903],[68912,68921]],Hanunoo:[[5920,5940]],Hatran:[[67808,67826],[67828,67829],[67835,67839]],Hebrew:[[1425,1479],[1488,1514],[1519,1524],[64285,64310],[64312,64316],64318,[64320,64321],[64323,64324],[64326,64335]],Hiragana:[[12353,12438],[12445,12447],[110593,110879],110898,[110928,110930],127488],Imperial_Aramaic:[[67648,67669],[67671,67679]],Inherited:[[768,879],[1157,1158],[1611,1621],1648,[2385,2388],[6832,6862],[7376,7378],[7380,7392],[7394,7400],7405,7412,[7416,7417],[7616,7679],[8204,8205],[8400,8432],[12330,12333],[12441,12442],[65024,65039],[65056,65069],66045,66272,70459,[118528,118573],[118576,118598],[119143,119145],[119163,119170],[119173,119179],[119210,119213],[917760,917999]],Inscriptional_Pahlavi:[[68448,68466],[68472,68479]],Inscriptional_Parthian:[[68416,68437],[68440,68447]],Javanese:[[43392,43469],[43472,43481],[43486,43487]],Kaithi:[[69760,69826],69837],Kannada:[[3200,3212],[3214,3216],[3218,3240],[3242,3251],[3253,3257],[3260,3268],[3270,3272],[3274,3277],[3285,3286],[3293,3294],[3296,3299],[3302,3311],[3313,3315]],Katakana:[[12449,12538],[12541,12543],[12784,12799],[13008,13054],[13056,13143],[65382,65391],[65393,65437],[110576,110579],[110581,110587],[110589,110590],110592,[110880,110882],110933,[110948,110951]],Kawi:[[73472,73488],[73490,73530],[73534,73561]],Kayah_Li:[[43264,43309],43311],Kharoshthi:[[68096,68099],[68101,68102],[68108,68115],[68117,68119],[68121,68149],[68152,68154],[68159,68168],[68176,68184]],Khitan_Small_Script:[94180,[101120,101589]],Khmer:[[6016,6109],[6112,6121],[6128,6137],[6624,6655]],Khojki:[[70144,70161],[70163,70209]],Khudawadi:[[70320,70378],[70384,70393]],Lao:[[3713,3714],3716,[3718,3722],[3724,3747],3749,[3751,3773],[3776,3780],3782,[3784,3790],[3792,3801],[3804,3807]],Latin:[[65,90],[97,122],170,186,[192,214],[216,246],[248,696],[736,740],[7424,7461],[7468,7516],[7522,7525],[7531,7543],[7545,7614],[7680,7935],8305,8319,[8336,8348],[8490,8491],8498,8526,[8544,8584],[11360,11391],[42786,42887],[42891,42954],[42960,42961],42963,[42965,42969],[42994,43007],[43824,43866],[43868,43876],[43878,43881],[64256,64262],[65313,65338],[65345,65370],[67456,67461],[67463,67504],[67506,67514],[122624,122654],[122661,122666]],Lepcha:[[7168,7223],[7227,7241],[7245,7247]],Limbu:[[6400,6430],[6432,6443],[6448,6459],6464,[6468,6479]],Linear_A:[[67072,67382],[67392,67413],[67424,67431]],Linear_B:[[65536,65547],[65549,65574],[65576,65594],[65596,65597],[65599,65613],[65616,65629],[65664,65786]],Lisu:[[42192,42239],73648],Lycian:[[66176,66204]],Lydian:[[67872,67897],67903],Mahajani:[[69968,70006]],Makasar:[[73440,73464]],Malayalam:[[3328,3340],[3342,3344],[3346,3396],[3398,3400],[3402,3407],[3412,3427],[3430,3455]],Mandaic:[[2112,2139],2142],Manichaean:[[68288,68326],[68331,68342]],Marchen:[[72816,72847],[72850,72871],[72873,72886]],Masaram_Gondi:[[72960,72966],[72968,72969],[72971,73014],73018,[73020,73021],[73023,73031],[73040,73049]],Medefaidrin:[[93760,93850]],Meetei_Mayek:[[43744,43766],[43968,44013],[44016,44025]],Mende_Kikakui:[[124928,125124],[125127,125142]],Meroitic_Cursive:[[68e3,68023],[68028,68047],[68050,68095]],Meroitic_Hieroglyphs:[[67968,67999]],Miao:[[93952,94026],[94031,94087],[94095,94111]],Modi:[[71168,71236],[71248,71257]],Mongolian:[[6144,6145],6148,[6150,6169],[6176,6264],[6272,6314],[71264,71276]],Mro:[[92736,92766],[92768,92777],[92782,92783]],Multani:[[70272,70278],70280,[70282,70285],[70287,70301],[70303,70313]],Myanmar:[[4096,4255],[43488,43518],[43616,43647]],Nabataean:[[67712,67742],[67751,67759]],Nag_Mundari:[[124112,124153]],Nandinagari:[[72096,72103],[72106,72151],[72154,72164]],New_Tai_Lue:[[6528,6571],[6576,6601],[6608,6618],[6622,6623]],Newa:[[70656,70747],[70749,70753]],Nko:[[1984,2042],[2045,2047]],Nushu:[94177,[110960,111355]],Nyiakeng_Puachue_Hmong:[[123136,123180],[123184,123197],[123200,123209],[123214,123215]],Ogham:[[5760,5788]],Ol_Chiki:[[7248,7295]],Old_Hungarian:[[68736,68786],[68800,68850],[68858,68863]],Old_Italic:[[66304,66339],[66349,66351]],Old_North_Arabian:[[68224,68255]],Old_Permic:[[66384,66426]],Old_Persian:[[66464,66499],[66504,66517]],Old_Sogdian:[[69376,69415]],Old_South_Arabian:[[68192,68223]],Old_Turkic:[[68608,68680]],Old_Uyghur:[[69488,69513]],Oriya:[[2817,2819],[2821,2828],[2831,2832],[2835,2856],[2858,2864],[2866,2867],[2869,2873],[2876,2884],[2887,2888],[2891,2893],[2901,2903],[2908,2909],[2911,2915],[2918,2935]],Osage:[[66736,66771],[66776,66811]],Osmanya:[[66688,66717],[66720,66729]],Pahawh_Hmong:[[92928,92997],[93008,93017],[93019,93025],[93027,93047],[93053,93071]],Palmyrene:[[67680,67711]],Pau_Cin_Hau:[[72384,72440]],Phags_Pa:[[43072,43127]],Phoenician:[[67840,67867],67871],Psalter_Pahlavi:[[68480,68497],[68505,68508],[68521,68527]],Rejang:[[43312,43347],43359],Runic:[[5792,5866],[5870,5880]],Samaritan:[[2048,2093],[2096,2110]],Saurashtra:[[43136,43205],[43214,43225]],Sharada:[[70016,70111]],Shavian:[[66640,66687]],Siddham:[[71040,71093],[71096,71133]],SignWriting:[[120832,121483],[121499,121503],[121505,121519]],Sinhala:[[3457,3459],[3461,3478],[3482,3505],[3507,3515],3517,[3520,3526],3530,[3535,3540],3542,[3544,3551],[3558,3567],[3570,3572],[70113,70132]],Sogdian:[[69424,69465]],Sora_Sompeng:[[69840,69864],[69872,69881]],Soyombo:[[72272,72354]],Sundanese:[[7040,7103],[7360,7367]],Syloti_Nagri:[[43008,43052]],Syriac:[[1792,1805],[1807,1866],[1869,1871],[2144,2154]],Tagalog:[[5888,5909],5919],Tagbanwa:[[5984,5996],[5998,6e3],[6002,6003]],Tai_Le:[[6480,6509],[6512,6516]],Tai_Tham:[[6688,6750],[6752,6780],[6783,6793],[6800,6809],[6816,6829]],Tai_Viet:[[43648,43714],[43739,43743]],Takri:[[71296,71353],[71360,71369]],Tamil:[[2946,2947],[2949,2954],[2958,2960],[2962,2965],[2969,2970],2972,[2974,2975],[2979,2980],[2984,2986],[2990,3001],[3006,3010],[3014,3016],[3018,3021],3024,3031,[3046,3066],[73664,73713],73727],Tangsa:[[92784,92862],[92864,92873]],Tangut:[94176,[94208,100343],[100352,101119],[101632,101640]],Telugu:[[3072,3084],[3086,3088],[3090,3112],[3114,3129],[3132,3140],[3142,3144],[3146,3149],[3157,3158],[3160,3162],3165,[3168,3171],[3174,3183],[3191,3199]],Thaana:[[1920,1969]],Thai:[[3585,3642],[3648,3675]],Tibetan:[[3840,3911],[3913,3948],[3953,3991],[3993,4028],[4030,4044],[4046,4052],[4057,4058]],Tifinagh:[[11568,11623],[11631,11632],11647],Tirhuta:[[70784,70855],[70864,70873]],Toto:[[123536,123566]],Ugaritic:[[66432,66461],66463],Vai:[[42240,42539]],Vithkuqi:[[66928,66938],[66940,66954],[66956,66962],[66964,66965],[66967,66977],[66979,66993],[66995,67001],[67003,67004]],Wancho:[[123584,123641],123647],Warang_Citi:[[71840,71922],71935],Yezidi:[[69248,69289],[69291,69293],[69296,69297]],Yi:[[40960,42124],[42128,42182]],Zanabazar_Square:[[72192,72263]]},Symbol.toStringTag,{value:"Module"})),Script_Extensions:Object.freeze(Object.defineProperty({__proto__:null,Adlam:[1567,1600,[125184,125259],[125264,125273],[125278,125279]],Ahom:[[71424,71450],[71453,71467],[71472,71494]],Anatolian_Hieroglyphs:[[82944,83526]],Arabic:[[1536,1540],[1542,1756],[1758,1791],[1872,1919],[2160,2190],[2192,2193],[2200,2273],[2275,2303],[64336,64450],[64467,64911],[64914,64967],64975,[65008,65023],[65136,65140],[65142,65276],[66272,66299],[69216,69246],[69373,69375],[126464,126467],[126469,126495],[126497,126498],126500,126503,[126505,126514],[126516,126519],126521,126523,126530,126535,126537,126539,[126541,126543],[126545,126546],126548,126551,126553,126555,126557,126559,[126561,126562],126564,[126567,126570],[126572,126578],[126580,126583],[126585,126588],126590,[126592,126601],[126603,126619],[126625,126627],[126629,126633],[126635,126651],[126704,126705]],Armenian:[[1329,1366],[1369,1418],[1421,1423],[64275,64279]],Avestan:[[68352,68405],[68409,68415]],Balinese:[[6912,6988],[6992,7038]],Bamum:[[42656,42743],[92160,92728]],Bassa_Vah:[[92880,92909],[92912,92917]],Batak:[[7104,7155],[7164,7167]],Bengali:[[2385,2386],[2404,2405],[2432,2435],[2437,2444],[2447,2448],[2451,2472],[2474,2480],2482,[2486,2489],[2492,2500],[2503,2504],[2507,2510],2519,[2524,2525],[2527,2531],[2534,2558],7376,7378,[7381,7382],7384,7393,7402,7405,7410,[7413,7415],43249],Bhaiksuki:[[72704,72712],[72714,72758],[72760,72773],[72784,72812]],Bopomofo:[[746,747],[12289,12291],[12296,12305],[12307,12319],[12330,12333],12336,12343,12539,[12549,12591],[12704,12735],[65093,65094],[65377,65381]],Brahmi:[[69632,69709],[69714,69749],69759],Braille:[[10240,10495]],Buginese:[[6656,6683],[6686,6687],43471],Buhid:[[5941,5942],[5952,5971]],Canadian_Aboriginal:[[5120,5759],[6320,6389],[72368,72383]],Carian:[[66208,66256]],Caucasian_Albanian:[[66864,66915],66927],Chakma:[[2534,2543],[4160,4169],[69888,69940],[69942,69959]],Cham:[[43520,43574],[43584,43597],[43600,43609],[43612,43615]],Cherokee:[[5024,5109],[5112,5117],[43888,43967]],Chorasmian:[[69552,69579]],Common:[[0,64],[91,96],[123,169],[171,185],[187,191],215,247,[697,735],[741,745],[748,767],884,894,901,903,1541,1757,2274,3647,[4053,4056],[5867,5869],[8192,8203],[8206,8238],[8240,8292],[8294,8304],[8308,8318],[8320,8334],[8352,8384],[8448,8485],[8487,8489],[8492,8497],[8499,8525],[8527,8543],[8585,8587],[8592,9254],[9280,9290],[9312,10239],[10496,11123],[11126,11157],[11159,11263],[11776,11842],[11844,11869],[12272,12283],12288,12292,12306,12320,12342,[12872,12895],12927,[12977,12991],[13004,13007],[13169,13178],[13184,13279],13311,[19904,19967],[42760,42785],[42888,42890],43867,[43882,43883],[65040,65049],[65072,65092],[65095,65106],[65108,65126],[65128,65131],65279,[65281,65312],[65339,65344],[65371,65376],[65504,65510],[65512,65518],[65529,65533],[65936,65948],[66e3,66044],[118608,118723],[118784,119029],[119040,119078],[119081,119142],[119146,119162],[119171,119172],[119180,119209],[119214,119274],[119488,119507],[119520,119539],[119552,119638],[119666,119672],[119808,119892],[119894,119964],[119966,119967],119970,[119973,119974],[119977,119980],[119982,119993],119995,[119997,120003],[120005,120069],[120071,120074],[120077,120084],[120086,120092],[120094,120121],[120123,120126],[120128,120132],120134,[120138,120144],[120146,120485],[120488,120779],[120782,120831],[126065,126132],[126209,126269],[126976,127019],[127024,127123],[127136,127150],[127153,127167],[127169,127183],[127185,127221],[127232,127405],[127462,127487],[127489,127490],[127504,127547],[127552,127560],[127584,127589],[127744,128727],[128732,128748],[128752,128764],[128768,128886],[128891,128985],[128992,129003],129008,[129024,129035],[129040,129095],[129104,129113],[129120,129159],[129168,129197],[129200,129201],[129280,129619],[129632,129645],[129648,129660],[129664,129672],[129680,129725],[129727,129733],[129742,129755],[129760,129768],[129776,129784],[129792,129938],[129940,129994],[130032,130041],917505,[917536,917631]],Coptic:[[994,1007],[11392,11507],[11513,11519],[66272,66299]],Cuneiform:[[73728,74649],[74752,74862],[74864,74868],[74880,75075]],Cypriot:[[65792,65794],[65799,65843],[65847,65855],[67584,67589],67592,[67594,67637],[67639,67640],67644,67647],Cypro_Minoan:[[65792,65793],[77712,77810]],Cyrillic:[[1024,1327],[7296,7304],7467,7544,7672,[11744,11775],11843,[42560,42655],[65070,65071],[122928,122989],123023],Deseret:[[66560,66639]],Devanagari:[[2304,2386],[2389,2431],[7376,7414],[7416,7417],8432,[43056,43065],[43232,43263],[72448,72457]],Dives_Akuru:[[71936,71942],71945,[71948,71955],[71957,71958],[71960,71989],[71991,71992],[71995,72006],[72016,72025]],Dogra:[[2404,2415],[43056,43065],[71680,71739]],Duployan:[[113664,113770],[113776,113788],[113792,113800],[113808,113817],[113820,113827]],Egyptian_Hieroglyphs:[[77824,78933]],Elbasan:[[66816,66855]],Elymaic:[[69600,69622]],Ethiopic:[[4608,4680],[4682,4685],[4688,4694],4696,[4698,4701],[4704,4744],[4746,4749],[4752,4784],[4786,4789],[4792,4798],4800,[4802,4805],[4808,4822],[4824,4880],[4882,4885],[4888,4954],[4957,4988],[4992,5017],[11648,11670],[11680,11686],[11688,11694],[11696,11702],[11704,11710],[11712,11718],[11720,11726],[11728,11734],[11736,11742],[43777,43782],[43785,43790],[43793,43798],[43808,43814],[43816,43822],[124896,124902],[124904,124907],[124909,124910],[124912,124926]],Georgian:[[4256,4293],4295,4301,[4304,4351],[7312,7354],[7357,7359],[11520,11557],11559,11565],Glagolitic:[1156,1159,[11264,11359],11843,42607,[122880,122886],[122888,122904],[122907,122913],[122915,122916],[122918,122922]],Gothic:[[66352,66378]],Grantha:[[2385,2386],[2404,2405],[3046,3059],7376,[7378,7379],[7410,7412],[7416,7417],8432,[70400,70403],[70405,70412],[70415,70416],[70419,70440],[70442,70448],[70450,70451],[70453,70457],[70459,70468],[70471,70472],[70475,70477],70480,70487,[70493,70499],[70502,70508],[70512,70516],[73680,73681],73683],Greek:[834,837,[880,883],[885,887],[890,893],895,900,902,[904,906],908,[910,929],[931,993],[1008,1023],[7462,7466],[7517,7521],[7526,7530],[7615,7617],[7936,7957],[7960,7965],[7968,8005],[8008,8013],[8016,8023],8025,8027,8029,[8031,8061],[8064,8116],[8118,8132],[8134,8147],[8150,8155],[8157,8175],[8178,8180],[8182,8190],8486,43877,[65856,65934],65952,[119296,119365]],Gujarati:[[2385,2386],[2404,2405],[2689,2691],[2693,2701],[2703,2705],[2707,2728],[2730,2736],[2738,2739],[2741,2745],[2748,2757],[2759,2761],[2763,2765],2768,[2784,2787],[2790,2801],[2809,2815],[43056,43065]],Gunjala_Gondi:[[2404,2405],[73056,73061],[73063,73064],[73066,73102],[73104,73105],[73107,73112],[73120,73129]],Gurmukhi:[[2385,2386],[2404,2405],[2561,2563],[2565,2570],[2575,2576],[2579,2600],[2602,2608],[2610,2611],[2613,2614],[2616,2617],2620,[2622,2626],[2631,2632],[2635,2637],2641,[2649,2652],2654,[2662,2678],[43056,43065]],Han:[[11904,11929],[11931,12019],[12032,12245],[12289,12291],[12293,12305],[12307,12319],[12321,12333],12336,[12343,12351],12539,[12688,12703],[12736,12771],[12832,12871],[12928,12976],[12992,13003],13055,[13144,13168],[13179,13183],[13280,13310],[13312,19903],[19968,40959],[42752,42759],[63744,64109],[64112,64217],[65093,65094],[65377,65381],[94178,94179],[94192,94193],[119648,119665],[127568,127569],[131072,173791],[173824,177977],[177984,178205],[178208,183969],[183984,191456],[194560,195101],[196608,201546],[201552,205743]],Hangul:[[4352,4607],[12289,12291],[12296,12305],[12307,12319],[12334,12336],12343,12539,[12593,12686],[12800,12830],[12896,12926],[43360,43388],[44032,55203],[55216,55238],[55243,55291],[65093,65094],[65377,65381],[65440,65470],[65474,65479],[65482,65487],[65490,65495],[65498,65500]],Hanifi_Rohingya:[1548,1563,1567,1600,1748,[68864,68903],[68912,68921]],Hanunoo:[[5920,5942]],Hatran:[[67808,67826],[67828,67829],[67835,67839]],Hebrew:[[1425,1479],[1488,1514],[1519,1524],[64285,64310],[64312,64316],64318,[64320,64321],[64323,64324],[64326,64335]],Hiragana:[[12289,12291],[12296,12305],[12307,12319],[12336,12341],12343,[12348,12349],[12353,12438],[12441,12448],[12539,12540],[65093,65094],[65377,65381],65392,[65438,65439],[110593,110879],110898,[110928,110930],127488],Imperial_Aramaic:[[67648,67669],[67671,67679]],Inherited:[[768,833],[835,836],[838,866],[2387,2388],[6832,6862],[7618,7671],7673,[7675,7679],[8204,8205],[8400,8431],[65024,65039],[65056,65069],66045,[118528,118573],[118576,118598],[119143,119145],[119163,119170],[119173,119179],[119210,119213],[917760,917999]],Inscriptional_Pahlavi:[[68448,68466],[68472,68479]],Inscriptional_Parthian:[[68416,68437],[68440,68447]],Javanese:[[43392,43469],[43471,43481],[43486,43487]],Kaithi:[[2406,2415],[43056,43065],[69760,69826],69837],Kannada:[[2385,2386],[2404,2405],[3200,3212],[3214,3216],[3218,3240],[3242,3251],[3253,3257],[3260,3268],[3270,3272],[3274,3277],[3285,3286],[3293,3294],[3296,3299],[3302,3311],[3313,3315],7376,7378,7386,7410,7412,[43056,43061]],Katakana:[[12289,12291],[12296,12305],[12307,12319],[12336,12341],12343,[12348,12349],[12441,12444],[12448,12543],[12784,12799],[13008,13054],[13056,13143],[65093,65094],[65377,65439],[110576,110579],[110581,110587],[110589,110590],110592,[110880,110882],110933,[110948,110951]],Kawi:[[73472,73488],[73490,73530],[73534,73561]],Kayah_Li:[[43264,43311]],Kharoshthi:[[68096,68099],[68101,68102],[68108,68115],[68117,68119],[68121,68149],[68152,68154],[68159,68168],[68176,68184]],Khitan_Small_Script:[94180,[101120,101589]],Khmer:[[6016,6109],[6112,6121],[6128,6137],[6624,6655]],Khojki:[[2790,2799],[43056,43065],[70144,70161],[70163,70209]],Khudawadi:[[2404,2405],[43056,43065],[70320,70378],[70384,70393]],Lao:[[3713,3714],3716,[3718,3722],[3724,3747],3749,[3751,3773],[3776,3780],3782,[3784,3790],[3792,3801],[3804,3807]],Latin:[[65,90],[97,122],170,186,[192,214],[216,246],[248,696],[736,740],[867,879],[1157,1158],[2385,2386],4347,[7424,7461],[7468,7516],[7522,7525],[7531,7543],[7545,7614],[7680,7935],8239,8305,8319,[8336,8348],8432,[8490,8491],8498,8526,[8544,8584],[11360,11391],[42752,42759],[42786,42887],[42891,42954],[42960,42961],42963,[42965,42969],[42994,43007],43310,[43824,43866],[43868,43876],[43878,43881],[64256,64262],[65313,65338],[65345,65370],[67456,67461],[67463,67504],[67506,67514],[122624,122654],[122661,122666]],Lepcha:[[7168,7223],[7227,7241],[7245,7247]],Limbu:[2405,[6400,6430],[6432,6443],[6448,6459],6464,[6468,6479]],Linear_A:[[65799,65843],[67072,67382],[67392,67413],[67424,67431]],Linear_B:[[65536,65547],[65549,65574],[65576,65594],[65596,65597],[65599,65613],[65616,65629],[65664,65786],[65792,65794],[65799,65843],[65847,65855]],Lisu:[[42192,42239],73648],Lycian:[[66176,66204]],Lydian:[[67872,67897],67903],Mahajani:[[2404,2415],[43056,43065],[69968,70006]],Makasar:[[73440,73464]],Malayalam:[[2385,2386],[2404,2405],[3328,3340],[3342,3344],[3346,3396],[3398,3400],[3402,3407],[3412,3427],[3430,3455],7386,[43056,43058]],Mandaic:[1600,[2112,2139],2142],Manichaean:[1600,[68288,68326],[68331,68342]],Marchen:[[72816,72847],[72850,72871],[72873,72886]],Masaram_Gondi:[[2404,2405],[72960,72966],[72968,72969],[72971,73014],73018,[73020,73021],[73023,73031],[73040,73049]],Medefaidrin:[[93760,93850]],Meetei_Mayek:[[43744,43766],[43968,44013],[44016,44025]],Mende_Kikakui:[[124928,125124],[125127,125142]],Meroitic_Cursive:[[68e3,68023],[68028,68047],[68050,68095]],Meroitic_Hieroglyphs:[[67968,67999]],Miao:[[93952,94026],[94031,94087],[94095,94111]],Modi:[[43056,43065],[71168,71236],[71248,71257]],Mongolian:[[6144,6169],[6176,6264],[6272,6314],8239,[71264,71276]],Mro:[[92736,92766],[92768,92777],[92782,92783]],Multani:[[2662,2671],[70272,70278],70280,[70282,70285],[70287,70301],[70303,70313]],Myanmar:[[4096,4255],43310,[43488,43518],[43616,43647]],Nabataean:[[67712,67742],[67751,67759]],Nag_Mundari:[[124112,124153]],Nandinagari:[[2404,2405],[3302,3311],7401,7410,7418,[43056,43061],[72096,72103],[72106,72151],[72154,72164]],New_Tai_Lue:[[6528,6571],[6576,6601],[6608,6618],[6622,6623]],Newa:[[70656,70747],[70749,70753]],Nko:[1548,1563,1567,[1984,2042],[2045,2047],[64830,64831]],Nushu:[94177,[110960,111355]],Nyiakeng_Puachue_Hmong:[[123136,123180],[123184,123197],[123200,123209],[123214,123215]],Ogham:[[5760,5788]],Ol_Chiki:[[7248,7295]],Old_Hungarian:[[68736,68786],[68800,68850],[68858,68863]],Old_Italic:[[66304,66339],[66349,66351]],Old_North_Arabian:[[68224,68255]],Old_Permic:[1155,[66384,66426]],Old_Persian:[[66464,66499],[66504,66517]],Old_Sogdian:[[69376,69415]],Old_South_Arabian:[[68192,68223]],Old_Turkic:[[68608,68680]],Old_Uyghur:[1600,68338,[69488,69513]],Oriya:[[2385,2386],[2404,2405],[2817,2819],[2821,2828],[2831,2832],[2835,2856],[2858,2864],[2866,2867],[2869,2873],[2876,2884],[2887,2888],[2891,2893],[2901,2903],[2908,2909],[2911,2915],[2918,2935],7386,7410],Osage:[[66736,66771],[66776,66811]],Osmanya:[[66688,66717],[66720,66729]],Pahawh_Hmong:[[92928,92997],[93008,93017],[93019,93025],[93027,93047],[93053,93071]],Palmyrene:[[67680,67711]],Pau_Cin_Hau:[[72384,72440]],Phags_Pa:[[6146,6147],6149,[43072,43127]],Phoenician:[[67840,67867],67871],Psalter_Pahlavi:[1600,[68480,68497],[68505,68508],[68521,68527]],Rejang:[[43312,43347],43359],Runic:[[5792,5866],[5870,5880]],Samaritan:[[2048,2093],[2096,2110]],Saurashtra:[[43136,43205],[43214,43225]],Sharada:[2385,7383,7385,[7388,7389],7392,[70016,70111]],Shavian:[[66640,66687]],Siddham:[[71040,71093],[71096,71133]],SignWriting:[[120832,121483],[121499,121503],[121505,121519]],Sinhala:[[2404,2405],[3457,3459],[3461,3478],[3482,3505],[3507,3515],3517,[3520,3526],3530,[3535,3540],3542,[3544,3551],[3558,3567],[3570,3572],[70113,70132]],Sogdian:[1600,[69424,69465]],Sora_Sompeng:[[69840,69864],[69872,69881]],Soyombo:[[72272,72354]],Sundanese:[[7040,7103],[7360,7367]],Syloti_Nagri:[[2404,2405],[2534,2543],[43008,43052]],Syriac:[1548,[1563,1564],1567,1600,[1611,1621],1648,[1792,1805],[1807,1866],[1869,1871],[2144,2154],7672,7674],Tagalog:[[5888,5909],5919,[5941,5942]],Tagbanwa:[[5941,5942],[5984,5996],[5998,6e3],[6002,6003]],Tai_Le:[[4160,4169],[6480,6509],[6512,6516]],Tai_Tham:[[6688,6750],[6752,6780],[6783,6793],[6800,6809],[6816,6829]],Tai_Viet:[[43648,43714],[43739,43743]],Takri:[[2404,2405],[43056,43065],[71296,71353],[71360,71369]],Tamil:[[2385,2386],[2404,2405],[2946,2947],[2949,2954],[2958,2960],[2962,2965],[2969,2970],2972,[2974,2975],[2979,2980],[2984,2986],[2990,3001],[3006,3010],[3014,3016],[3018,3021],3024,3031,[3046,3066],7386,43251,70401,70403,[70459,70460],[73664,73713],73727],Tangsa:[[92784,92862],[92864,92873]],Tangut:[94176,[94208,100343],[100352,101119],[101632,101640]],Telugu:[[2385,2386],[2404,2405],[3072,3084],[3086,3088],[3090,3112],[3114,3129],[3132,3140],[3142,3144],[3146,3149],[3157,3158],[3160,3162],3165,[3168,3171],[3174,3183],[3191,3199],7386,7410],Thaana:[1548,[1563,1564],1567,[1632,1641],[1920,1969],65010,65021],Thai:[[3585,3642],[3648,3675]],Tibetan:[[3840,3911],[3913,3948],[3953,3991],[3993,4028],[4030,4044],[4046,4052],[4057,4058]],Tifinagh:[[11568,11623],[11631,11632],11647],Tirhuta:[[2385,2386],[2404,2405],7410,[43056,43065],[70784,70855],[70864,70873]],Toto:[[123536,123566]],Ugaritic:[[66432,66461],66463],Vai:[[42240,42539]],Vithkuqi:[[66928,66938],[66940,66954],[66956,66962],[66964,66965],[66967,66977],[66979,66993],[66995,67001],[67003,67004]],Wancho:[[123584,123641],123647],Warang_Citi:[[71840,71922],71935],Yezidi:[1548,1563,1567,[1632,1641],[69248,69289],[69291,69293],[69296,69297]],Yi:[[12289,12290],[12296,12305],[12308,12315],12539,[40960,42124],[42128,42182],[65377,65381]],Zanabazar_Square:[[72192,72263]]},Symbol.toStringTag,{value:"Module"})),Word_Break:Object.freeze(Object.defineProperty({__proto__:null,ALetter:[[65,90],[97,122],170,181,186,[192,214],[216,246],[248,727],[734,767],[880,884],[886,887],[890,893],895,902,[904,906],908,[910,929],[931,1013],[1015,1153],[1162,1327],[1329,1366],[1369,1372],1374,[1376,1416],1418,1523,[1568,1610],[1646,1647],[1649,1747],1749,[1765,1766],[1774,1775],[1786,1788],1791,1808,[1810,1839],[1869,1957],1969,[1994,2026],[2036,2037],2042,[2048,2069],2074,2084,2088,[2112,2136],[2144,2154],[2160,2183],[2185,2190],[2208,2249],[2308,2361],2365,2384,[2392,2401],[2417,2432],[2437,2444],[2447,2448],[2451,2472],[2474,2480],2482,[2486,2489],2493,2510,[2524,2525],[2527,2529],[2544,2545],2556,[2565,2570],[2575,2576],[2579,2600],[2602,2608],[2610,2611],[2613,2614],[2616,2617],[2649,2652],2654,[2674,2676],[2693,2701],[2703,2705],[2707,2728],[2730,2736],[2738,2739],[2741,2745],2749,2768,[2784,2785],2809,[2821,2828],[2831,2832],[2835,2856],[2858,2864],[2866,2867],[2869,2873],2877,[2908,2909],[2911,2913],2929,2947,[2949,2954],[2958,2960],[2962,2965],[2969,2970],2972,[2974,2975],[2979,2980],[2984,2986],[2990,3001],3024,[3077,3084],[3086,3088],[3090,3112],[3114,3129],3133,[3160,3162],3165,[3168,3169],3200,[3205,3212],[3214,3216],[3218,3240],[3242,3251],[3253,3257],3261,[3293,3294],[3296,3297],[3313,3314],[3332,3340],[3342,3344],[3346,3386],3389,3406,[3412,3414],[3423,3425],[3450,3455],[3461,3478],[3482,3505],[3507,3515],3517,[3520,3526],3840,[3904,3911],[3913,3948],[3976,3980],[4256,4293],4295,4301,[4304,4346],[4348,4680],[4682,4685],[4688,4694],4696,[4698,4701],[4704,4744],[4746,4749],[4752,4784],[4786,4789],[4792,4798],4800,[4802,4805],[4808,4822],[4824,4880],[4882,4885],[4888,4954],[4992,5007],[5024,5109],[5112,5117],[5121,5740],[5743,5759],[5761,5786],[5792,5866],[5870,5880],[5888,5905],[5919,5937],[5952,5969],[5984,5996],[5998,6e3],[6176,6264],[6272,6276],[6279,6312],6314,[6320,6389],[6400,6430],[6656,6678],[6917,6963],[6981,6988],[7043,7072],[7086,7087],[7098,7141],[7168,7203],[7245,7247],[7258,7293],[7296,7304],[7312,7354],[7357,7359],[7401,7404],[7406,7411],[7413,7414],7418,[7424,7615],[7680,7957],[7960,7965],[7968,8005],[8008,8013],[8016,8023],8025,8027,8029,[8031,8061],[8064,8116],[8118,8124],8126,[8130,8132],[8134,8140],[8144,8147],[8150,8155],[8160,8172],[8178,8180],[8182,8188],8305,8319,[8336,8348],8450,8455,[8458,8467],8469,[8473,8477],8484,8486,8488,[8490,8493],[8495,8505],[8508,8511],[8517,8521],8526,[8544,8584],[9398,9449],[11264,11492],[11499,11502],[11506,11507],[11520,11557],11559,11565,[11568,11623],11631,[11648,11670],[11680,11686],[11688,11694],[11696,11702],[11704,11710],[11712,11718],[11720,11726],[11728,11734],[11736,11742],11823,12293,[12347,12348],[12549,12591],[12593,12686],[12704,12735],[40960,42124],[42192,42237],[42240,42508],[42512,42527],[42538,42539],[42560,42606],[42623,42653],[42656,42735],[42760,42954],[42960,42961],42963,[42965,42969],[42994,43009],[43011,43013],[43015,43018],[43020,43042],[43072,43123],[43138,43187],[43250,43255],43259,[43261,43262],[43274,43301],[43312,43334],[43360,43388],[43396,43442],43471,[43520,43560],[43584,43586],[43588,43595],[43744,43754],[43762,43764],[43777,43782],[43785,43790],[43793,43798],[43808,43814],[43816,43822],[43824,43881],[43888,44002],[44032,55203],[55216,55238],[55243,55291],[64256,64262],[64275,64279],[64336,64433],[64467,64829],[64848,64911],[64914,64967],[65008,65019],[65136,65140],[65142,65276],[65313,65338],[65345,65370],[65440,65470],[65474,65479],[65482,65487],[65490,65495],[65498,65500],[65536,65547],[65549,65574],[65576,65594],[65596,65597],[65599,65613],[65616,65629],[65664,65786],[65856,65908],[66176,66204],[66208,66256],[66304,66335],[66349,66378],[66384,66421],[66432,66461],[66464,66499],[66504,66511],[66513,66517],[66560,66717],[66736,66771],[66776,66811],[66816,66855],[66864,66915],[66928,66938],[66940,66954],[66956,66962],[66964,66965],[66967,66977],[66979,66993],[66995,67001],[67003,67004],[67072,67382],[67392,67413],[67424,67431],[67456,67461],[67463,67504],[67506,67514],[67584,67589],67592,[67594,67637],[67639,67640],67644,[67647,67669],[67680,67702],[67712,67742],[67808,67826],[67828,67829],[67840,67861],[67872,67897],[67968,68023],[68030,68031],68096,[68112,68115],[68117,68119],[68121,68149],[68192,68220],[68224,68252],[68288,68295],[68297,68324],[68352,68405],[68416,68437],[68448,68466],[68480,68497],[68608,68680],[68736,68786],[68800,68850],[68864,68899],[69248,69289],[69296,69297],[69376,69404],69415,[69424,69445],[69488,69505],[69552,69572],[69600,69622],[69635,69687],[69745,69746],69749,[69763,69807],[69840,69864],[69891,69926],69956,69959,[69968,70002],70006,[70019,70066],[70081,70084],70106,70108,[70144,70161],[70163,70187],[70207,70208],[70272,70278],70280,[70282,70285],[70287,70301],[70303,70312],[70320,70366],[70405,70412],[70415,70416],[70419,70440],[70442,70448],[70450,70451],[70453,70457],70461,70480,[70493,70497],[70656,70708],[70727,70730],[70751,70753],[70784,70831],[70852,70853],70855,[71040,71086],[71128,71131],[71168,71215],71236,[71296,71338],71352,[71680,71723],[71840,71903],[71935,71942],71945,[71948,71955],[71957,71958],[71960,71983],71999,72001,[72096,72103],[72106,72144],72161,72163,72192,[72203,72242],72250,72272,[72284,72329],72349,[72368,72440],[72704,72712],[72714,72750],72768,[72818,72847],[72960,72966],[72968,72969],[72971,73008],73030,[73056,73061],[73063,73064],[73066,73097],73112,[73440,73458],73474,[73476,73488],[73490,73523],73648,[73728,74649],[74752,74862],[74880,75075],[77712,77808],[77824,78895],[78913,78918],[82944,83526],[92160,92728],[92736,92766],[92784,92862],[92880,92909],[92928,92975],[92992,92995],[93027,93047],[93053,93071],[93760,93823],[93952,94026],94032,[94099,94111],[94176,94177],94179,[113664,113770],[113776,113788],[113792,113800],[113808,113817],[119808,119892],[119894,119964],[119966,119967],119970,[119973,119974],[119977,119980],[119982,119993],119995,[119997,120003],[120005,120069],[120071,120074],[120077,120084],[120086,120092],[120094,120121],[120123,120126],[120128,120132],120134,[120138,120144],[120146,120485],[120488,120512],[120514,120538],[120540,120570],[120572,120596],[120598,120628],[120630,120654],[120656,120686],[120688,120712],[120714,120744],[120746,120770],[120772,120779],[122624,122654],[122661,122666],[122928,122989],[123136,123180],[123191,123197],123214,[123536,123565],[123584,123627],[124112,124139],[124896,124902],[124904,124907],[124909,124910],[124912,124926],[124928,125124],[125184,125251],125259,[126464,126467],[126469,126495],[126497,126498],126500,126503,[126505,126514],[126516,126519],126521,126523,126530,126535,126537,126539,[126541,126543],[126545,126546],126548,126551,126553,126555,126557,126559,[126561,126562],126564,[126567,126570],[126572,126578],[126580,126583],[126585,126588],126590,[126592,126601],[126603,126619],[126625,126627],[126629,126633],[126635,126651],[127280,127305],[127312,127337],[127344,127369]],CR:[13],Double_Quote:[34],Extend:[[768,879],[1155,1161],[1425,1469],1471,[1473,1474],[1476,1477],1479,[1552,1562],[1611,1631],1648,[1750,1756],[1759,1764],[1767,1768],[1770,1773],1809,[1840,1866],[1958,1968],[2027,2035],2045,[2070,2073],[2075,2083],[2085,2087],[2089,2093],[2137,2139],[2200,2207],[2250,2273],[2275,2307],[2362,2364],[2366,2383],[2385,2391],[2402,2403],[2433,2435],2492,[2494,2500],[2503,2504],[2507,2509],2519,[2530,2531],2558,[2561,2563],2620,[2622,2626],[2631,2632],[2635,2637],2641,[2672,2673],2677,[2689,2691],2748,[2750,2757],[2759,2761],[2763,2765],[2786,2787],[2810,2815],[2817,2819],2876,[2878,2884],[2887,2888],[2891,2893],[2901,2903],[2914,2915],2946,[3006,3010],[3014,3016],[3018,3021],3031,[3072,3076],3132,[3134,3140],[3142,3144],[3146,3149],[3157,3158],[3170,3171],[3201,3203],3260,[3262,3268],[3270,3272],[3274,3277],[3285,3286],[3298,3299],3315,[3328,3331],[3387,3388],[3390,3396],[3398,3400],[3402,3405],3415,[3426,3427],[3457,3459],3530,[3535,3540],3542,[3544,3551],[3570,3571],3633,[3636,3642],[3655,3662],3761,[3764,3772],[3784,3790],[3864,3865],3893,3895,3897,[3902,3903],[3953,3972],[3974,3975],[3981,3991],[3993,4028],4038,[4139,4158],[4182,4185],[4190,4192],[4194,4196],[4199,4205],[4209,4212],[4226,4237],4239,[4250,4253],[4957,4959],[5906,5909],[5938,5940],[5970,5971],[6002,6003],[6068,6099],6109,[6155,6157],6159,[6277,6278],6313,[6432,6443],[6448,6459],[6679,6683],[6741,6750],[6752,6780],6783,[6832,6862],[6912,6916],[6964,6980],[7019,7027],[7040,7042],[7073,7085],[7142,7155],[7204,7223],[7376,7378],[7380,7400],7405,7412,[7415,7417],[7616,7679],8204,[8400,8432],[11503,11505],11647,[11744,11775],[12330,12335],[12441,12442],[42607,42610],[42612,42621],[42654,42655],[42736,42737],43010,43014,43019,[43043,43047],43052,[43136,43137],[43188,43205],[43232,43249],43263,[43302,43309],[43335,43347],[43392,43395],[43443,43456],43493,[43561,43574],43587,[43596,43597],[43643,43645],43696,[43698,43700],[43703,43704],[43710,43711],43713,[43755,43759],[43765,43766],[44003,44010],[44012,44013],64286,[65024,65039],[65056,65071],[65438,65439],66045,66272,[66422,66426],[68097,68099],[68101,68102],[68108,68111],[68152,68154],68159,[68325,68326],[68900,68903],[69291,69292],[69373,69375],[69446,69456],[69506,69509],[69632,69634],[69688,69702],69744,[69747,69748],[69759,69762],[69808,69818],69826,[69888,69890],[69927,69940],[69957,69958],70003,[70016,70018],[70067,70080],[70089,70092],[70094,70095],[70188,70199],70206,70209,[70367,70378],[70400,70403],[70459,70460],[70462,70468],[70471,70472],[70475,70477],70487,[70498,70499],[70502,70508],[70512,70516],[70709,70726],70750,[70832,70851],[71087,71093],[71096,71104],[71132,71133],[71216,71232],[71339,71351],[71453,71467],[71724,71738],[71984,71989],[71991,71992],[71995,71998],72e3,[72002,72003],[72145,72151],[72154,72160],72164,[72193,72202],[72243,72249],[72251,72254],72263,[72273,72283],[72330,72345],[72751,72758],[72760,72767],[72850,72871],[72873,72886],[73009,73014],73018,[73020,73021],[73023,73029],73031,[73098,73102],[73104,73105],[73107,73111],[73459,73462],[73472,73473],73475,[73524,73530],[73534,73538],78912,[78919,78933],[92912,92916],[92976,92982],94031,[94033,94087],[94095,94098],94180,[94192,94193],[113821,113822],[118528,118573],[118576,118598],[119141,119145],[119149,119154],[119163,119170],[119173,119179],[119210,119213],[119362,119364],[121344,121398],[121403,121452],121461,121476,[121499,121503],[121505,121519],[122880,122886],[122888,122904],[122907,122913],[122915,122916],[122918,122922],123023,[123184,123190],123566,[123628,123631],[124140,124143],[125136,125142],[125252,125258],[127995,127999],[917536,917631],[917760,917999]],ExtendNumLet:[95,8239,[8255,8256],8276,[65075,65076],[65101,65103],65343],Format:[173,[1536,1541],1564,1757,1807,[2192,2193],2274,6158,[8206,8207],[8234,8238],[8288,8292],[8294,8303],65279,[65529,65531],69821,69837,[78896,78911],[113824,113827],[119155,119162],917505],Hebrew_Letter:[[1488,1514],[1519,1522],64285,[64287,64296],[64298,64310],[64312,64316],64318,[64320,64321],[64323,64324],[64326,64335]],Katakana:[[12337,12341],[12443,12444],[12448,12538],[12540,12543],[12784,12799],[13008,13054],[13056,13143],[65382,65437],[110576,110579],[110581,110587],[110589,110590],110592,[110880,110882],110933,[110948,110951]],LF:[10],MidLetter:[58,183,903,1375,1524,8231,65043,65109,65306],MidNum:[44,59,894,1417,[1548,1549],1644,2040,8260,65040,65044,65104,65108,65292,65307],MidNumLet:[46,[8216,8217],8228,65106,65287,65294],Newline:[[11,12],133,[8232,8233]],Numeric:[[48,57],[1632,1641],1643,[1776,1785],[1984,1993],[2406,2415],[2534,2543],[2662,2671],[2790,2799],[2918,2927],[3046,3055],[3174,3183],[3302,3311],[3430,3439],[3558,3567],[3664,3673],[3792,3801],[3872,3881],[4160,4169],[4240,4249],[6112,6121],[6160,6169],[6470,6479],[6608,6617],[6784,6793],[6800,6809],[6992,7001],[7088,7097],[7232,7241],[7248,7257],[42528,42537],[43216,43225],[43264,43273],[43472,43481],[43504,43513],[43600,43609],[44016,44025],[65296,65305],[66720,66729],[68912,68921],[69734,69743],[69872,69881],[69942,69951],[70096,70105],[70384,70393],[70736,70745],[70864,70873],[71248,71257],[71360,71369],[71472,71481],[71904,71913],[72016,72025],[72784,72793],[73040,73049],[73120,73129],[73552,73561],[92768,92777],[92864,92873],[93008,93017],[120782,120831],[123200,123209],[123632,123641],[124144,124153],[125264,125273],[130032,130041]],Other:[[0,9],[14,31],33,[35,38],[40,43],45,47,[60,64],[91,94],96,[123,132],[134,159],[161,169],[171,172],[174,180],182,[184,185],[187,191],215,247,[728,733],885,[888,889],[896,901],907,909,930,1014,1154,1328,[1367,1368],1373,[1419,1424],1470,1472,1475,1478,[1480,1487],[1515,1518],[1525,1535],[1542,1547],[1550,1551],1563,[1565,1567],1642,1645,1748,1769,[1789,1790],[1792,1806],[1867,1868],[1970,1983],[2038,2039],2041,[2043,2044],[2046,2047],[2094,2111],[2140,2143],[2155,2159],2184,2191,[2194,2199],[2404,2405],2416,2436,[2445,2446],[2449,2450],2473,2481,[2483,2485],[2490,2491],[2501,2502],[2505,2506],[2511,2518],[2520,2523],2526,[2532,2533],[2546,2555],2557,[2559,2560],2564,[2571,2574],[2577,2578],2601,2609,2612,2615,[2618,2619],2621,[2627,2630],[2633,2634],[2638,2640],[2642,2648],2653,[2655,2661],[2678,2688],2692,2702,2706,2729,2737,2740,[2746,2747],2758,2762,[2766,2767],[2769,2783],[2788,2789],[2800,2808],2816,2820,[2829,2830],[2833,2834],2857,2865,2868,[2874,2875],[2885,2886],[2889,2890],[2894,2900],[2904,2907],2910,[2916,2917],2928,[2930,2945],2948,[2955,2957],2961,[2966,2968],2971,2973,[2976,2978],[2981,2983],[2987,2989],[3002,3005],[3011,3013],3017,[3022,3023],[3025,3030],[3032,3045],[3056,3071],3085,3089,3113,[3130,3131],3141,3145,[3150,3156],3159,[3163,3164],[3166,3167],[3172,3173],[3184,3199],3204,3213,3217,3241,3252,[3258,3259],3269,3273,[3278,3284],[3287,3292],3295,[3300,3301],3312,[3316,3327],3341,3345,3397,3401,[3407,3411],[3416,3422],[3428,3429],[3440,3449],3456,3460,[3479,3481],3506,3516,[3518,3519],[3527,3529],[3531,3534],3541,3543,[3552,3557],[3568,3569],[3572,3632],[3634,3635],[3643,3654],3663,[3674,3760],[3762,3763],[3773,3783],3791,[3802,3839],[3841,3863],[3866,3871],[3882,3892],3894,3896,[3898,3901],3912,[3949,3952],3973,3992,[4029,4037],[4039,4095],4130,4136,4159,[4170,4175],[4186,4189],4193,[4197,4198],[4206,4208],[4213,4225],4238,[4254,4255],4294,[4296,4300],[4302,4303],4347,4681,[4686,4687],4695,4697,[4702,4703],4745,[4750,4751],4785,[4790,4791],4799,4801,[4806,4807],4823,4881,[4886,4887],[4955,4956],[4960,4991],[5008,5023],[5110,5111],[5118,5120],[5741,5742],[5787,5791],[5867,5869],[5881,5887],[5910,5918],[5941,5951],[5972,5983],5997,6001,[6004,6015],[6100,6102],[6104,6107],[6110,6111],[6122,6154],[6170,6175],[6265,6271],[6315,6319],[6390,6399],6431,[6444,6447],[6460,6469],[6510,6511],[6517,6527],[6570,6575],[6602,6607],[6619,6655],[6684,6740],6751,[6781,6782],[6794,6799],[6810,6831],[6863,6911],[6989,6991],[7002,7018],[7028,7039],[7156,7167],[7224,7231],[7242,7244],[7294,7295],[7305,7311],[7355,7356],[7360,7375],7379,[7419,7423],[7958,7959],[7966,7967],[8006,8007],[8014,8015],8024,8026,8028,8030,[8062,8063],8117,8125,[8127,8129],8133,[8141,8143],[8148,8149],[8156,8159],[8173,8177],8181,[8189,8191],8199,[8208,8215],[8218,8227],[8229,8230],[8240,8254],[8257,8259],[8261,8275],[8277,8286],8293,8304,[8306,8318],[8320,8335],[8349,8399],[8433,8449],[8451,8454],[8456,8457],8468,[8470,8472],[8478,8483],8485,8487,8489,8494,[8506,8507],[8512,8516],[8522,8525],[8527,8543],[8585,9397],[9450,9756],[9758,9791],9793,[9795,9876],[9879,9976],[9978,9991],9993,[9998,10083],[10085,11263],[11493,11498],[11508,11519],11558,[11560,11564],[11566,11567],[11624,11630],[11632,11646],[11671,11679],11687,11695,11703,11711,11719,11727,11735,11743,[11776,11822],[11824,12287],[12289,12292],[12294,12329],12336,[12342,12346],[12349,12440],[12445,12447],12539,[12544,12548],12592,[12687,12703],[12736,12783],[12800,13007],13055,[13144,40959],[42125,42191],[42238,42239],[42509,42511],[42540,42559],42611,42622,[42738,42759],[42955,42959],42962,42964,[42970,42993],[43048,43051],[43053,43071],[43124,43135],[43206,43215],[43226,43231],[43256,43258],43260,[43310,43311],[43348,43359],[43389,43391],[43457,43470],[43482,43492],[43494,43503],[43514,43519],[43575,43583],[43598,43599],[43610,43642],[43646,43695],43697,[43701,43702],[43705,43709],43712,[43714,43743],[43760,43761],[43767,43776],[43783,43784],[43791,43792],[43799,43807],43815,43823,[43882,43887],44011,[44014,44015],[44026,44031],[55204,55215],[55239,55242],[55292,64047],[64107,64255],[64263,64274],[64280,64284],64297,64311,64317,64319,64322,64325,[64434,64466],[64830,64847],[64912,64913],[64968,65007],[65020,65023],[65041,65042],[65045,65055],[65072,65074],[65077,65100],65105,65107,[65110,65135],65141,[65277,65278],[65280,65286],[65288,65291],65293,65295,[65308,65312],[65339,65342],65344,[65371,65381],[65471,65473],[65480,65481],[65488,65489],[65496,65497],[65501,65528],[65532,65535],65548,65575,65595,65598,[65614,65615],[65630,65663],[65787,65855],[65909,66044],[66046,66175],[66205,66207],[66257,66271],[66273,66303],[66336,66348],[66379,66383],[66427,66431],[66462,66463],[66500,66503],66512,[66518,66559],[66718,66719],[66730,66735],[66772,66775],[66812,66815],[66856,66863],[66916,66927],66939,66955,66963,66966,66978,66994,67002,[67005,67071],[67383,67391],[67414,67423],[67432,67455],67462,67505,[67515,67583],[67590,67591],67593,67638,[67641,67643],[67645,67646],[67670,67679],[67703,67711],[67743,67807],67827,[67830,67839],[67862,67871],[67898,67967],[68024,68029],[68032,68095],68100,[68103,68107],68116,68120,[68150,68151],[68155,68158],[68160,68191],[68221,68223],[68253,68287],68296,[68327,68351],[68406,68415],[68438,68447],[68467,68479],[68498,68607],[68681,68735],[68787,68799],[68851,68863],[68904,68911],[68922,69247],69290,[69293,69295],[69298,69372],[69405,69414],[69416,69423],[69457,69487],[69510,69551],[69573,69599],[69623,69631],[69703,69733],[69750,69758],[69819,69820],[69822,69825],[69827,69836],[69838,69839],[69865,69871],[69882,69887],69941,[69952,69955],[69960,69967],[70004,70005],[70007,70015],[70085,70088],70093,70107,[70109,70143],70162,[70200,70205],[70210,70271],70279,70281,70286,70302,[70313,70319],[70379,70383],[70394,70399],70404,[70413,70414],[70417,70418],70441,70449,70452,70458,[70469,70470],[70473,70474],[70478,70479],[70481,70486],[70488,70492],[70500,70501],[70509,70511],[70517,70655],[70731,70735],[70746,70749],[70754,70783],70854,[70856,70863],[70874,71039],[71094,71095],[71105,71127],[71134,71167],[71233,71235],[71237,71247],[71258,71295],[71353,71359],[71370,71452],[71468,71471],[71482,71679],[71739,71839],[71914,71934],[71943,71944],[71946,71947],71956,71959,71990,[71993,71994],[72004,72015],[72026,72095],[72104,72105],[72152,72153],72162,[72165,72191],[72255,72262],[72264,72271],[72346,72348],[72350,72367],[72441,72703],72713,72759,[72769,72783],[72794,72817],[72848,72849],72872,[72887,72959],72967,72970,[73015,73017],73019,73022,[73032,73039],[73050,73055],73062,73065,73103,73106,[73113,73119],[73130,73439],[73463,73471],73489,[73531,73533],[73539,73551],[73562,73647],[73649,73727],[74650,74751],[74863,74879],[75076,77711],[77809,77823],[78934,82943],[83527,92159],[92729,92735],92767,[92778,92783],92863,[92874,92879],[92910,92911],[92917,92927],[92983,92991],[92996,93007],[93018,93026],[93048,93052],[93072,93759],[93824,93951],[94027,94030],[94088,94094],[94112,94175],94178,[94181,94191],[94194,110575],110580,110588,110591,[110593,110879],[110883,110932],[110934,110947],[110952,113663],[113771,113775],[113789,113791],[113801,113807],[113818,113820],113823,[113828,118527],[118574,118575],[118599,119140],[119146,119148],[119171,119172],[119180,119209],[119214,119361],[119365,119807],119893,119965,[119968,119969],[119971,119972],[119975,119976],119981,119994,119996,120004,120070,[120075,120076],120085,120093,120122,120127,120133,[120135,120137],120145,[120486,120487],120513,120539,120571,120597,120629,120655,120687,120713,120745,120771,[120780,120781],[120832,121343],[121399,121402],[121453,121460],[121462,121475],[121477,121498],121504,[121520,122623],[122655,122660],[122667,122879],122887,[122905,122906],122914,122917,[122923,122927],[122990,123022],[123024,123135],[123181,123183],[123198,123199],[123210,123213],[123215,123535],[123567,123583],[123642,124111],[124154,124895],124903,124908,124911,124927,[125125,125135],[125143,125183],[125260,125263],[125274,126463],126468,126496,126499,[126501,126502],126504,126515,126520,126522,[126524,126529],[126531,126534],126536,126538,126540,126544,126547,[126549,126550],126552,126554,126556,126558,126560,126563,[126565,126566],126571,126579,126584,126589,126591,126602,[126620,126624],126628,126634,[126652,127279],[127306,127311],[127338,127343],[127370,127461],[127488,127751],[127753,127805],[127807,127858],[127860,127876],[127878,127890],[127892,127907],[127909,127911],[127913,127937],[127941,127942],[127944,127945],[127949,127978],127980,[127982,127994],[128e3,128065],[128068,128069],[128081,128101],[128106,128109],128111,[128121,128123],[128125,128128],128132,[128136,128138],[128140,128169],[128171,128186],[128189,128294],[128296,128299],[128301,128371],[128374,128377],[128379,128399],[128401,128404],[128407,128487],[128489,128580],[128584,128586],[128592,128639],[128641,128657],[128659,128674],[128676,128691],[128695,128703],[128705,128715],[128717,129303],[129312,129317],[129319,129327],[129338,129339],[129343,129488],[129502,130031],[130042,917504],[917506,917535],[917632,917759],[918e3,1114111]],Regional_Indicator:[[127462,127487]],Single_Quote:[39],WSegSpace:[32,5760,[8192,8198],[8200,8202],8287,12288],ZWJ:[8205]},Symbol.toStringTag,{value:"Module"}))},Symbol.toStringTag,{value:"Module"}));function v0(r){const t=Object.keys(r);if(t.length===0)throw new Error("Expected at least one category, but received 0.");if(t.some(n=>{const s=r[n];return s===void 0||s.length===0}))throw new Error("Expected at least one sub category, but received 0.");return t.map(n=>{const i=r[n].map(a=>v3(n,a));return new W1().union(...i)}).reduce((n,s)=>n.intersect(s))}function v3(r,t){const n=p3[r][t];return new W1().union(...n)}const Ot=v0({Script:["Han","Katakana","Hiragana","Hangul","Bopomofo"],General_Category:["Other_Letter","Letter_Number","Other_Symbol","Modifier_Letter"]}),m0=v0({Block:["CJK_Compatibility","CJK_Symbols_And_Punctuation","Vertical_Forms","CJK_Compatibility_Forms","Small_Form_Variants","Halfwidth_And_Fullwidth_Forms","Ideographic_Description_Characters","Kanbun","CJK_Strokes","Enclosed_CJK_Letters_And_Months"]}).subtract(Ot),m3=U2(Ot,m0);function b3(){return U2(m3)}function y3(){return U2(Ot)}function F3(){return U2(m0)}const b0="0",y0=r=>({sbr:.6,sbo:r,spr:.6,spo:r});class ee{static get globalFontMeasureCache(){return this._globalFontMeasureCache}static setFontMeasureCache(t,e,n){this._globalFontMeasureCache.has(t)||this._globalFontMeasureCache.set(t,new Map);const s=this._globalFontMeasureCache.get(t);s&&s.set(e,n)}static clearFontMeasureCache(t){var n;const e=t.split("/");if(e.length===1){const s=e[0];this._globalFontMeasureCache.delete(s)}else if(e.length===2){const s=e[0],i=e[1];(n=this._globalFontMeasureCache.get(s))==null||n.delete(i)}else return!1;return!0}static getFontMeasureCache(t,e){var n;return(n=this._globalFontMeasureCache.get(t))==null?void 0:n.get(e)}static autoCleanFontMeasureCache(t=1e6){let e=0,n=!1;for(const s of this._globalFontMeasureCache){const[,i]=s;if(e+=i.size,e>t){n=!0;break}}if(n){let s=0;for(const i of this._globalFontMeasureCache){const[a,o]=i;if(s+=o.size,s>t/2){const u=s-t/2;this._clearMeasureCache(u,o);break}this._globalFontMeasureCache.delete(a)}return!0}return!1}static getBaselineOffsetInfo(t,e){if(this._fontDataMap.size===0)return y0(e);const n=t.split(",");for(let s of n){s=s.replace(/'/g,"");const i=this._fontDataMap.get(s);if(!i)continue;const{subscriptSizeRatio:a,subscriptOffset:o,superscriptSizeRatio:u,superscriptOffset:l}=i;return{sbr:a,sbo:o*e,spr:u,spo:l*e}}return y0(e)}static getTextSizeByDom(t,e){if(e in this._getTextHeightCache)return this._getTextHeightCache[e];let n=document.getElementById("universheetTextSizeTest");const s="float:left;white-space:nowrap;visibility:hidden;margin:0;padding:0;";n||(n=document.createElement("span"),n.id="universheetTextSizeTest",document.getElementsByTagName("body")[0].appendChild(n)),n.style.cssText+=`${s};${e}`,n.textContent=t;const i=n.getBoundingClientRect(),a={width:i.width,height:i.height};return this._getTextHeightCache[e]=a,a}static getTextSize(t,e){const{fontString:n,fontSize:s,fontFamily:i}=e;let a=this._getBoundingBoxByFont(i,s);if(!a){const o=this.getMeasureText(t,n);a=this._calculateBoundingBoxByMeasureText(o,e)}return a}static getBBoxFromGlyphInfo(t,e){var c;const n=t.glyph,s=t.font,{y1:i,y2:a}=t.boundingBox,o=Ut(e.fontSize)/s.unitsPerEm,{ascender:u,descender:l}=s;return this._calculateBoundingBoxByMeasureText({width:((c=n.advanceWidth)!=null?c:0)*o,fontBoundingBoxAscent:u*o,fontBoundingBoxDescent:Math.abs(l*o),actualBoundingBoxAscent:a*o,actualBoundingBoxDescent:Math.abs(i*o)},e)}static getMeasureText(t,e){if(!this._context){const f=document.createElement("canvas");this._context=f.getContext("2d")}const n=this._context,s=this.getFontMeasureCache(e,t);if(s!=null)return s;n.font=e;const i=n.measureText(t),{width:a,fontBoundingBoxAscent:o,fontBoundingBoxDescent:u,actualBoundingBoxAscent:l,actualBoundingBoxDescent:c}=i,h={width:a,fontBoundingBoxAscent:o,fontBoundingBoxDescent:u,actualBoundingBoxAscent:l,actualBoundingBoxDescent:c};if(o==null||u==null||Number.isNaN(o)||Number.isNaN(u)){const f=this.getTextSizeByDom(b0,e).height;n.textBaseline==="top"?(h.fontBoundingBoxAscent=h.actualBoundingBoxAscent=f,h.fontBoundingBoxDescent=h.actualBoundingBoxDescent=0):n.textBaseline==="middle"?(h.fontBoundingBoxDescent=h.actualBoundingBoxDescent=f/2,h.fontBoundingBoxAscent=h.actualBoundingBoxAscent=f/2):(h.fontBoundingBoxDescent=h.actualBoundingBoxDescent=0,h.fontBoundingBoxAscent=h.actualBoundingBoxAscent=f)}return this.setFontMeasureCache(e,t,h),h}static _clearMeasureCache(t,e){let n=0;for(const s of e){const[i]=s;if(n>t)break;e.delete(i),n++}return!0}static _getBoundingBoxByFont(t,e=28,n=""){const s=this._fontDataMap.get(t);if(!s)return;const{notDefWidth:i,ascender:a,descender:o,typoAscender:u,typoDescender:l,strikeoutPosition:c,subscriptSizeRatio:h,subscriptOffset:f,superscriptSizeRatio:_,superscriptOffset:p,hdmxData:m,glyphHorizonMap:v}=s,F=m==null?void 0:m.indexOf(Math.floor(e)),E=v.get(n.charCodeAt(0));let S=i;if(E){const{width:B,pixelsPerEm:x=[]}=E;F?S=x[F]:S=B}return{width:S*e,ba:a*e,bd:o*e,aba:u*e,abd:l*e,sp:c*e,sbr:h,sbo:f*e,spr:_,spo:p*e}}static _calculateBoundingBoxByMeasureText(t,e){const{width:n,fontBoundingBoxAscent:s,fontBoundingBoxDescent:i,actualBoundingBoxAscent:a,actualBoundingBoxDescent:o}=t,{fontSize:u,originFontSize:l}=e,c=l/u,h=s*c,f=i*c;return{width:n,ba:h,bd:f,aba:a,abd:o,sp:(s+i)/2,sbr:.6,spr:.6,sbo:(h+f)*.141,spo:(h+f)*.4}}}d(ee,"_getTextHeightCache",{}),d(ee,"_context"),d(ee,"_fontDataMap",new Map),d(ee,"_globalFontMeasureCache",new Map);const F0=180,C3=Math.PI/F0,E3=F0/Math.PI,C0="rgb(",S3="rgba(",F1=(r,t)=>r?t!=null?`${S3+r.join(",")},${t})`:`${C0+r.join(",")})`:`${C0}0,0,0)`,T3=100,te=(r,t)=>{if(g.Tools.isNumber(r))return r;if(t&&r&&g.Tools.isString(r)&&r.substr(r.length-1,1)==="%"){const e=Number.parseFloat(r)/T3;return t*e}return 0},x3=16,u2=(r,t)=>(t||(t=window),t.requestPostAnimationFrame?t.requestPostAnimationFrame(r):t.requestAnimationFrame?t.requestAnimationFrame(r):t.msRequestAnimationFrame?t.msRequestAnimationFrame(r):t.webkitRequestAnimationFrame?t.webkitRequestAnimationFrame(r):t.mozRequestAnimationFrame?t.mozRequestAnimationFrame(r):t.oRequestAnimationFrame?t.oRequestAnimationFrame(r):setTimeout(r,x3)),E0=(r,t)=>(t||(t=window),t.requestPostAnimationFrame?t.cancelPostAnimationFrame(r):t.requestAnimationFrame?t.cancelAnimationFrame(r):t.msRequestAnimationFrame?t.msCancelAnimationFrame(r):t.webkitRequestAnimationFrame?t.webkitCancelAnimationFrame(r):t.mozRequestAnimationFrame?t.mozCancelAnimationFrame(r):t.oRequestAnimationFrame?t.oCancelAnimationFrame(r):clearTimeout(r)),wt=()=>{const r=document.createElement("canvas");try{r.style=r.style||{}}catch(t){console.error(t)}return r},B3=()=>document.createElement("img"),S0=r=>r*E3,Y1=r=>r*C3,At=()=>{let r="pointer";return typeof window<"u"&&!window.PointerEvent&&typeof navigator<"u"&&(r="mouse"),g.Tools.isTablet()&&!g.Tools.isIPhone()&&!(document&&"ontouchend"in document)&&(r="mouse"),r},T0=()=>g.Tools.getBrowserType()==="safari",O3=4,x0=(r="obj",t=O3)=>{const e=window.navigator.userAgent.replace(/[^a-zA-Z0-9]/g,"").split("");let n="";for(let i=0;i<t;i++)n+=e[Math.round(Math.random()*(e.length-1))];const s=new Date().getTime();return`${r}_${n}_${s}`};function fe(r){return Object.prototype.toString.apply(r)}function Rt(r){return fe(r)==="[object Function]"}function w3(r){return fe(r)==="[object Date]"}function A3(r){return fe(r)==="[object RegExp]"}function R3(r){return fe(r)==="[object Array]"}function $t(r){return fe(r)==="[object String]"}function $3(r){return fe(r)==="[object Number]"}function k3(r){return fe(r)==="[object Object]"}function H2(r,t){return t=10**t,Math.round(r*t)/t}function Z(r,t){return Math.round(r*t)/t}const B0=11,O0="Arial";function l2(r,t){const e=O0,n=B0;if(!r){const f=`${n}pt ${e}`;return{fontCache:f,fontString:f,fontSize:n,originFontSize:n,fontFamily:e}}let s=g.FontStyleType.ITALIC;(r.it===0||r.it===void 0)&&(s=g.FontStyleType.NORMAL);let i=g.FontStyleType.BOLD;(r.bl===0||r.bl===void 0)&&(i=g.FontStyleType.NORMAL);let a=n;r.fs&&(a=Math.ceil(r.fs));let o=a,u=e;if(r.ff){let f=r.ff;f=f.replace(/"/g,"").replace(/'/g,""),f.indexOf(" ")>-1&&(f=`"${f}"`),f==null&&(f=e),u=f}const{va:l}=r;if(l===g.BaselineOffset.SUBSCRIPT||l===g.BaselineOffset.SUPERSCRIPT){const f=ee.getBaselineOffsetInfo(u,o),{sbr:_,spr:p}=f;o*=l===g.BaselineOffset.SUBSCRIPT?_:p}const c=`${s} ${i} ${o}pt ${u}`,h=`${c}, ${i2} `;return{fontCache:c,fontString:h,fontSize:o,originFontSize:a,fontFamily:u}}const I3=y3().toRegExp();function c2(r){return I3.test(r)}const L3=b3().toRegExp();function h2(r){return L3.test(r)}const M3=F3().toRegExp();function kt(r){return M3.test(r)}function P3(r){return!!/[\u0000-\u024F]/gi.exec(r)}function N3(r){return!!/[\u0000-\u007F]/gi.exec(r)}function U3(r){return!!/[\u0080-\u00FF]/gi.exec(r)}function H3(r){return!!/[\u0100-\u017F]/gi.exec(r)}function G3(r){return!!/[\u0180-\u024F]/gi.exec(r)}const G2=/^(?:[#*0-9]\uFE0F?\u20E3|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26AA\u26B0\u26B1\u26BD\u26BE\u26C4\u26C8\u26CF\u26D1\u26E9\u26F0-\u26F5\u26F7\u26F8\u26FA\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2757\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B55\u3030\u303D\u3297\u3299]\uFE0F?|[\u261D\u270C\u270D](?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?|[\u270A\u270B](?:\uD83C[\uDFFB-\uDFFF])?|[\u23E9-\u23EC\u23F0\u23F3\u25FD\u2693\u26A1\u26AB\u26C5\u26CE\u26D4\u26EA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2795-\u2797\u27B0\u27BF\u2B50]|\u26D3\uFE0F?(?:\u200D\uD83D\uDCA5)?|\u26F9(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|\u2764\uFE0F?(?:\u200D(?:\uD83D\uDD25|\uD83E\uDE79))?|\uD83C(?:[\uDC04\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]\uFE0F?|[\uDF85\uDFC2\uDFC7](?:\uD83C[\uDFFB-\uDFFF])?|[\uDFC4\uDFCA](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDFCB\uDFCC](?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF43\uDF45-\uDF4A\uDF4C-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uDDE6\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF]|\uDDE7\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF]|\uDDE8\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF]|\uDDE9\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF]|\uDDEA\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA]|\uDDEB\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7]|\uDDEC\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE]|\uDDED\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA]|\uDDEE\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9]|\uDDEF\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5]|\uDDF0\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF]|\uDDF1\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE]|\uDDF2\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF]|\uDDF3\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF]|\uDDF4\uD83C\uDDF2|\uDDF5\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE]|\uDDF6\uD83C\uDDE6|\uDDF7\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC]|\uDDF8\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF]|\uDDF9\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF]|\uDDFA\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF]|\uDDFB\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA]|\uDDFC\uD83C[\uDDEB\uDDF8]|\uDDFD\uD83C\uDDF0|\uDDFE\uD83C[\uDDEA\uDDF9]|\uDDFF\uD83C[\uDDE6\uDDF2\uDDFC]|\uDF44(?:\u200D\uD83D\uDFEB)?|\uDF4B(?:\u200D\uD83D\uDFE9)?|\uDFC3(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDFF3\uFE0F?(?:\u200D(?:\u26A7\uFE0F?|\uD83C\uDF08))?|\uDFF4(?:\u200D\u2620\uFE0F?|\uDB40\uDC67\uDB40\uDC62\uDB40(?:\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDC73\uDB40\uDC63\uDB40\uDC74|\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F)?)|\uD83D(?:[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3]\uFE0F?|[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC](?:\uD83C[\uDFFB-\uDFFF])?|[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4\uDEB5](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD74\uDD90](?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?|[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC25\uDC27-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE41\uDE43\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEDC-\uDEDF\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB\uDFF0]|\uDC08(?:\u200D\u2B1B)?|\uDC15(?:\u200D\uD83E\uDDBA)?|\uDC26(?:\u200D(?:\u2B1B|\uD83D\uDD25))?|\uDC3B(?:\u200D\u2744\uFE0F?)?|\uDC41\uFE0F?(?:\u200D\uD83D\uDDE8\uFE0F?)?|\uDC68(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDC68\uDC69]\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE])))?))?|\uDC69(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?[\uDC68\uDC69]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?|\uDC69\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?))|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFE])))?))?|\uDC6F(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDD75(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDE2E(?:\u200D\uD83D\uDCA8)?|\uDE35(?:\u200D\uD83D\uDCAB)?|\uDE36(?:\u200D\uD83C\uDF2B\uFE0F?)?|\uDE42(?:\u200D[\u2194\u2195]\uFE0F?)?|\uDEB6(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?)|\uD83E(?:[\uDD0C\uDD0F\uDD18-\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5\uDEC3-\uDEC5\uDEF0\uDEF2-\uDEF8](?:\uD83C[\uDFFB-\uDFFF])?|[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD\uDDCF\uDDD4\uDDD6-\uDDDD](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDDDE\uDDDF](?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD0D\uDD0E\uDD10-\uDD17\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCC\uDDD0\uDDE0-\uDDFF\uDE70-\uDE7C\uDE80-\uDE88\uDE90-\uDEBD\uDEBF-\uDEC2\uDECE-\uDEDB\uDEE0-\uDEE8]|\uDD3C(?:\u200D[\u2640\u2642]\uFE0F?|\uD83C[\uDFFB-\uDFFF])?|\uDDCE(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDDD1(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1|\uDDD1\u200D\uD83E\uDDD2(?:\u200D\uD83E\uDDD2)?|\uDDD2(?:\u200D\uD83E\uDDD2)?))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?))?|\uDEF1(?:\uD83C(?:\uDFFB(?:\u200D\uD83E\uDEF2\uD83C[\uDFFC-\uDFFF])?|\uDFFC(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFD-\uDFFF])?|\uDFFD(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])?|\uDFFE(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFD\uDFFF])?|\uDFFF(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFE])?))?))/g,z3=/^(?:[#*0-9]\uFE0F?\u20E3|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26AA\u26B0\u26B1\u26BD\u26BE\u26C4\u26C8\u26CF\u26D1\u26E9\u26F0-\u26F5\u26F7\u26F8\u26FA\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2757\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B55\u3030\u303D\u3297\u3299]\uFE0F?|[\u261D\u270C\u270D](?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?|[\u270A\u270B](?:\uD83C[\uDFFB-\uDFFF])?|[\u23E9-\u23EC\u23F0\u23F3\u25FD\u2693\u26A1\u26AB\u26C5\u26CE\u26D4\u26EA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2795-\u2797\u27B0\u27BF\u2B50]|\u26D3\uFE0F?(?:\u200D\uD83D\uDCA5)?|\u26F9(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|\u2764\uFE0F?(?:\u200D(?:\uD83D\uDD25|\uD83E\uDE79))?|\uD83C(?:[\uDC04\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]\uFE0F?|[\uDF85\uDFC2\uDFC7](?:\uD83C[\uDFFB-\uDFFF])?|[\uDFC4\uDFCA](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDFCB\uDFCC](?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF43\uDF45-\uDF4A\uDF4C-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uDDE6\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF]|\uDDE7\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF]|\uDDE8\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF]|\uDDE9\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF]|\uDDEA\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA]|\uDDEB\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7]|\uDDEC\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE]|\uDDED\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA]|\uDDEE\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9]|\uDDEF\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5]|\uDDF0\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF]|\uDDF1\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE]|\uDDF2\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF]|\uDDF3\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF]|\uDDF4\uD83C\uDDF2|\uDDF5\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE]|\uDDF6\uD83C\uDDE6|\uDDF7\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC]|\uDDF8\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF]|\uDDF9\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF]|\uDDFA\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF]|\uDDFB\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA]|\uDDFC\uD83C[\uDDEB\uDDF8]|\uDDFD\uD83C\uDDF0|\uDDFE\uD83C[\uDDEA\uDDF9]|\uDDFF\uD83C[\uDDE6\uDDF2\uDDFC]|\uDF44(?:\u200D\uD83D\uDFEB)?|\uDF4B(?:\u200D\uD83D\uDFE9)?|\uDFC3(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDFF3\uFE0F?(?:\u200D(?:\u26A7\uFE0F?|\uD83C\uDF08))?|\uDFF4(?:\u200D\u2620\uFE0F?|\uDB40\uDC67\uDB40\uDC62\uDB40(?:\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDC73\uDB40\uDC63\uDB40\uDC74|\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F)?)|\uD83D(?:[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3]\uFE0F?|[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC](?:\uD83C[\uDFFB-\uDFFF])?|[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4\uDEB5](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD74\uDD90](?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?|[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC25\uDC27-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE41\uDE43\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEDC-\uDEDF\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB\uDFF0]|\uDC08(?:\u200D\u2B1B)?|\uDC15(?:\u200D\uD83E\uDDBA)?|\uDC26(?:\u200D(?:\u2B1B|\uD83D\uDD25))?|\uDC3B(?:\u200D\u2744\uFE0F?)?|\uDC41\uFE0F?(?:\u200D\uD83D\uDDE8\uFE0F?)?|\uDC68(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDC68\uDC69]\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE])))?))?|\uDC69(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?[\uDC68\uDC69]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?|\uDC69\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?))|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFE])))?))?|\uDC6F(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDD75(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDE2E(?:\u200D\uD83D\uDCA8)?|\uDE35(?:\u200D\uD83D\uDCAB)?|\uDE36(?:\u200D\uD83C\uDF2B\uFE0F?)?|\uDE42(?:\u200D[\u2194\u2195]\uFE0F?)?|\uDEB6(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?)|\uD83E(?:[\uDD0C\uDD0F\uDD18-\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5\uDEC3-\uDEC5\uDEF0\uDEF2-\uDEF8](?:\uD83C[\uDFFB-\uDFFF])?|[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD\uDDCF\uDDD4\uDDD6-\uDDDD](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDDDE\uDDDF](?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD0D\uDD0E\uDD10-\uDD17\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCC\uDDD0\uDDE0-\uDDFF\uDE70-\uDE7C\uDE80-\uDE88\uDE90-\uDEBD\uDEBF-\uDEC2\uDECE-\uDEDB\uDEE0-\uDEE8]|\uDD3C(?:\u200D[\u2640\u2642]\uFE0F?|\uD83C[\uDFFB-\uDFFF])?|\uDDCE(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDDD1(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1|\uDDD1\u200D\uD83E\uDDD2(?:\u200D\uD83E\uDDD2)?|\uDDD2(?:\u200D\uD83E\uDDD2)?))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?))?|\uDEF1(?:\uD83C(?:\uDFFB(?:\u200D\uD83E\uDEF2\uD83C[\uDFFC-\uDFFF])?|\uDFFC(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFD-\uDFFF])?|\uDFFD(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])?|\uDFFE(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFD\uDFFF])?|\uDFFF(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFE])?))?))/;function z2(r){return z3.test(r)}function It(r){return/[\u0600-\u06FF]|[\u0750-\u0750]|[\u0870-\u08FF]|[\uFB50-\uFDFF]|[\uFE70-\uFEFF]/gi.test(r)}function Lt(r){return/[\u0180-\u024F]/gi.test(r)}function w0(r){return/\s+/g.test(r)}function X2(r){return["”","’",",","。",".","、",":",";","?","!","》",")","』","」","】","〗","〕","〉","]","}"].indexOf(r)>-1}function W2(r){return["“","‘","《","(","『","「","【","〖","〔","〈","[","{"].indexOf(r)>-1}function Mt(r){return["・","·"].indexOf(r)>-1}const A0=1e3;let Y2;function f2(){if(Y2)return Y2;let r=56;for(;r<A0*2;r++)if(matchMedia(`(max-resolution: ${r}dpi)`).matches===!0)return r;return Y2=r,setTimeout(()=>{Y2=null},A0),r}const R0=72,X3=25.4;function W3(r){return r/(R0/f2())}function Y3(r){return r*(R0/f2())}function V3(r){return r*(f2()/X3)}function j3(r){return r*f2()}function Pt(r){const{scaleX:t=1,scaleY:e=1}=r;return Math.max(t,e)}function Ce(r,t,e,n){const s=r-1,i=t-1,a=e[s]||0;let o=e[r];o==null&&(o=e[e.length-1]);const u=n[i]||0;let l=n[t];return l==null&&(l=n[n.length-1]),{startY:a,endY:o,startX:u,endX:l}}function Pe(r,t,e,n,s){let{startY:i,endY:a,startX:o,endX:u}=Ce(r,t,e,n);const{isMerged:l,isMergedMainCell:c,startRow:h,startColumn:f,endRow:_,endColumn:p}=d2(r,t,s);let m={startRow:h,startColumn:f,endRow:_,endColumn:p,startY:0,endY:0,startX:0,endX:0};const v=e.length-1,F=n.length-1;if(l&&h!==-1&&f!==-1){const E=e[h-1]||0,S=e[_]||e[v],B=n[f-1]||0,x=n[p]||n[F];m={...m,startY:E,endY:S,startX:B,endX:x}}else if(!l&&_!==-1&&p!==-1){const E=e[_]||e[v],S=n[p]||n[F];m={...m,startY:i,endY:E,startX:o,endX:S}}return{isMerged:l,isMergedMainCell:c,actualRow:r,actualColumn:t,startY:i,endY:a,startX:o,endX:u,mergeInfo:m}}function d2(r,t,e){let n=!1,s=!1,i=r,a=t,o=r,u=t;if(e==null)return{actualRow:r,actualColumn:t,isMergedMainCell:s,isMerged:n,endRow:i,endColumn:a,startRow:o,startColumn:u};for(let l=0;l<e.length;l++){const{startRow:c,endRow:h,startColumn:f,endColumn:_}=e[l];if(r===c&&t===f){i=h,a=_,o=c,u=f,s=!0;break}if(r>=c&&r<=h&&t>=f&&t<=_){i=h,a=_,o=c,u=f,n=!0;break}}return{actualRow:r,actualColumn:t,isMergedMainCell:s,isMerged:n,endRow:i,endColumn:a,startRow:o,startColumn:u}}function $0(r,t,e,n){let s=!1;for(let i=t;i<=e;i++){const{isMerged:a,isMergedMainCell:o}=d2(r,i,n);if(!a&&!o){s=!0;break}}return s}function Nt(r,t,e){const{startY:n,endY:s,startX:i,endX:a}=r;return r.startY=n+e,r.endY=s+e,r.startX=i+t,r.endX=a+t,{...r}}function k0(r,t){return!(r.left>t.right||r.top>t.bottom||t.left>r.right||t.top>r.bottom)}function K3(r){const t=document.createElement("style");document.head.appendChild(t);const e=t.sheet;for(const n of r)e==null||e.insertRule(n,e.cssRules.length)}function q3(r){for(let t=0,e=document.head.childNodes.length;t<e;t++){const n=document.head.childNodes[t];if(n.nodeName==="STYLE"&&n.textContent&&n.textContent.indexOf(r)>-1)return!0}return!1}function Ee(r){return Number(r.replace(/px/gi,""))}function I0(r){const t=getComputedStyle(r),{borderTopWidth:e,borderLeftWidth:n,borderRightWidth:s,borderBottomWidth:i,width:a,height:o}=t;return{top:Ee(e),left:Ee(n),right:Ee(s),bottom:Ee(i),width:Ee(a),height:Ee(o)}}const L0=.75;function Ut(r){return r/L0}function Z3(r){return r*L0}class P{constructor(t=0,e=0){this.x=t,this.y=e}static Zero(){return new P(0,0)}static One(){return new P(1,1)}static FromArray(t,e=0){return new P(t[e],t[e+1])}static FromArrayToRef(t,e,n){n.x=t[e],n.y=t[e+1]}static CatmullRom(t,e,n,s,i){const a=i*i,o=i*a,u=.5*(2*e.x+(-t.x+n.x)*i+(2*t.x-5*e.x+4*n.x-s.x)*a+(-t.x+3*e.x-3*n.x+s.x)*o),l=.5*(2*e.y+(-t.y+n.y)*i+(2*t.y-5*e.y+4*n.y-s.y)*a+(-t.y+3*e.y-3*n.y+s.y)*o);return new P(u,l)}static Clamp(t,e,n){let s=t.x;s=s>n.x?n.x:s,s=s<e.x?e.x:s;let i=t.y;return i=i>n.y?n.y:i,i=i<e.y?e.y:i,new P(s,i)}static Hermite(t,e,n,s,i){const a=i*i,o=i*a,u=2*o-3*a+1,l=-2*o+3*a,c=o-2*a+i,h=o-a,f=t.x*u+n.x*l+e.x*c+s.x*h,_=t.y*u+n.y*l+e.y*c+s.y*h;return new P(f,_)}static Hermite1stDerivative(t,e,n,s,i){const a=P.Zero();return this.Hermite1stDerivativeToRef(t,e,n,s,i,a),a}static Hermite1stDerivativeToRef(t,e,n,s,i,a){const o=i*i;a.x=(o-i)*6*t.x+(3*o-4*i+1)*e.x+(-o+i)*6*n.x+(3*o-2*i)*s.x,a.y=(o-i)*6*t.y+(3*o-4*i+1)*e.y+(-o+i)*6*n.y+(3*o-2*i)*s.y}static Lerp(t,e,n){const s=t.x+(e.x-t.x)*n,i=t.y+(e.y-t.y)*n;return new P(s,i)}static Dot(t,e){return t.x*e.x+t.y*e.y}static Normalize(t){const e=P.Zero();return this.NormalizeToRef(t,e),e}static NormalizeToRef(t,e){const n=t.length();n!==0&&(e.x=t.x/n,e.y=t.y/n)}static Minimize(t,e){const n=t.x<e.x?t.x:e.x,s=t.y<e.y?t.y:e.y;return new P(n,s)}static Maximize(t,e){const n=t.x>e.x?t.x:e.x,s=t.y>e.y?t.y:e.y;return new P(n,s)}static PointInTriangle(t,e,n,s){const i=.5*(-n.y*s.x+e.y*(-n.x+s.x)+e.x*(n.y-s.y)+n.x*s.y),a=i<0?-1:1,o=(e.y*s.x-e.x*s.y+(s.y-e.y)*t.x+(e.x-s.x)*t.y)*a,u=(e.x*n.y-e.y*n.x+(e.y-n.y)*t.x+(n.x-e.x)*t.y)*a;return o>0&&u>0&&o+u<2*i*a}static Distance(t,e){return Math.sqrt(P.DistanceSquared(t,e))}static DistanceSquared(t,e){const n=t.x-e.x,s=t.y-e.y;return n*n+s*s}static Center(t,e){return P.CenterToRef(t,e,P.Zero())}static CenterToRef(t,e,n){return n.copyFromFloats((t.x+e.x)/2,(t.y+e.y)/2)}static DistanceOfPointFromSegment(t,e,n){const s=P.DistanceSquared(e,n);if(s===0)return P.Distance(t,e);const i=n.subtract(e),a=Math.max(0,Math.min(1,P.Dot(t.subtract(e),i)/s)),o=e.add(i.multiplyByFloats(a,a));return P.Distance(t,o)}static create(t,e){return new P(t,e)}toString(){return`{X: ${this.x} Y: ${this.y}}`}getClassName(){return"Vector2"}getHashCode(){let t=this.x|0;return t=t*397^(this.y|0),t}toArray(t,e=0){return t[e]=this.x,t[e+1]=this.y,this}fromArray(t,e=0){return P.FromArrayToRef(t,e,this),this}asArray(){const t=new Array;return this.toArray(t,0),t}copyFrom(t){return this.x=t.x,this.y=t.y,this}copyFromFloats(t,e){return this.x=t,this.y=e,this}set(t,e){return this.copyFromFloats(t,e)}add(t){return new P(this.x+t.x,this.y+t.y)}addToRef(t,e){return e.x=this.x+t.x,e.y=this.y+t.y,this}addByPoint(t,e){return new P(this.x+t,this.y+e)}addInPlace(t){return this.x+=t.x,this.y+=t.y,this}subtract(t){return new P(this.x-t.x,this.y-t.y)}subtractByPoint(t,e){return new P(this.x-t,this.y-e)}subtractToRef(t,e){return e.x=this.x-t.x,e.y=this.y-t.y,this}subtractInPlace(t){return this.x-=t.x,this.y-=t.y,this}multiplyInPlace(t){return this.x*=t.x,this.y*=t.y,this}multiply(t){return new P(this.x*t.x,this.y*t.y)}multiplyToRef(t,e){return e.x=this.x*t.x,e.y=this.y*t.y,this}multiplyByFloats(t,e){return new P(this.x*t,this.y*e)}divide(t){return new P(this.x/t.x,this.y/t.y)}divideToRef(t,e){return e.x=this.x/t.x,e.y=this.y/t.y,this}divideInPlace(t){return this.divideToRef(t,this)}negate(){return new P(-this.x,-this.y)}negateInPlace(){return this.x*=-1,this.y*=-1,this}negateToRef(t){return t.copyFromFloats(this.x*-1,this.y*-1)}scaleInPlace(t){return this.x*=t,this.y*=t,this}scale(t){const e=new P(0,0);return this.scaleToRef(t,e),e}scaleToRef(t,e){return e.x=this.x*t,e.y=this.y*t,this}scaleAndAddToRef(t,e){return e.x+=this.x*t,e.y+=this.y*t,this}equals(t){return t&&this.x===t.x&&this.y===t.y}floor(){return new P(Math.floor(this.x),Math.floor(this.y))}fract(){return new P(this.x-Math.floor(this.x),this.y-Math.floor(this.y))}rotate(t){const e=Math.cos(t),n=Math.sin(t),s=e*this.x-n*this.y,i=n*this.x+e*this.y;return this.x=s,this.y=i,this}rotateToRef(t,e){const n=Math.cos(t),s=Math.sin(t);return e.x=n*this.x-s*this.y,e.y=s*this.x+n*this.y,this}rotateByPoint(t,e=P.create(0,0)){const n=Math.cos(t),s=Math.sin(t),i=e.x+(this.x-e.x)*n-(this.y-e.y)*s,a=e.y+(this.x-e.x)*s+(this.y-e.y)*n;return this.x=i,this.y=a,this}transformCoordinateOnRotate(t){const e=Math.sqrt(this.x**2+this.y**2),n=Math.atan2(this.y,this.x),s=-t+n;return this.x=e*Math.cos(s),this.y=e*Math.sin(s),this}length(){return Math.sqrt(this.x*this.x+this.y*this.y)}lengthSquared(){return this.x*this.x+this.y*this.y}normalize(){return P.NormalizeToRef(this,this),this}clone(){return new P(this.x,this.y)}}const V2=[1,0,0,1,0,0];class m1{constructor(t=V2){d(this,"dirty",!1);d(this,"_m");this._m=t&&t.slice()||V2}static create(t=V2){return new this(t)}reset(){this._m[0]=1,this._m[1]=0,this._m[2]=0,this._m[3]=1,this._m[4]=0,this._m[5]=0}copy(){return new m1(this._m)}copyInto(t){t._m[0]=this._m[0],t._m[1]=this._m[1],t._m[2]=this._m[2],t._m[3]=this._m[3],t._m[4]=this._m[4],t._m[5]=this._m[5]}applyPoint(t,e=!1){const n=this._m,s=n[0]*t.x+n[2]*t.y,i=n[1]*t.x+n[3]*t.y;return e?new P(s,i):new P(s+n[4],i+n[5])}translate(t,e){return this._m[4]+=this._m[0]*t+this._m[2]*e,this._m[5]+=this._m[1]*t+this._m[3]*e,this}scale(t,e){return this._m[0]*=t,this._m[1]*=t,this._m[2]*=e,this._m[3]*=e,this}rotate(t){const e=Y1(t),n=Math.cos(e),s=Math.sin(e),i=this._m[0]*n+this._m[2]*s,a=this._m[1]*n+this._m[3]*s,o=this._m[0]*-s+this._m[2]*n,u=this._m[1]*-s+this._m[3]*n;return this._m[0]=i,this._m[1]=a,this._m[2]=o,this._m[3]=u,this}getTranslation(){return{x:this._m[4],y:this._m[5]}}skew(t,e){const n=this._m[0]+this._m[2]*e,s=this._m[1]+this._m[3]*e,i=this._m[2]+this._m[0]*t,a=this._m[3]+this._m[1]*t;return this._m[0]=n,this._m[1]=s,this._m[2]=i,this._m[3]=a,this}multiply(t){const e=this._m[0]*t._m[0]+this._m[2]*t._m[1],n=this._m[1]*t._m[0]+this._m[3]*t._m[1],s=this._m[0]*t._m[2]+this._m[2]*t._m[3],i=this._m[1]*t._m[2]+this._m[3]*t._m[3],a=this._m[0]*t._m[4]+this._m[2]*t._m[5]+this._m[4],o=this._m[1]*t._m[4]+this._m[3]*t._m[5]+this._m[5];return this._m[0]=e,this._m[1]=n,this._m[2]=s,this._m[3]=i,this._m[4]=a,this._m[5]=o,this}invert(){const t=1/(this._m[0]*this._m[3]-this._m[1]*this._m[2]),e=this._m[3]*t,n=-this._m[1]*t,s=-this._m[2]*t,i=this._m[0]*t,a=t*(this._m[2]*this._m[5]-this._m[3]*this._m[4]),o=t*(this._m[1]*this._m[4]-this._m[0]*this._m[5]);return this._m[0]=e,this._m[1]=n,this._m[2]=s,this._m[3]=i,this._m[4]=a,this._m[5]=o,this}getMatrix(){return this._m}getMatrixByAccurate(t=3){return this._m.map(e=>H2(e,t))}setAbsolutePosition(t){const e=this._m[0],n=this._m[1],s=this._m[2],i=this._m[3],a=this._m[4],o=this._m[5],u=(e*(t.y-o)-n*(t.x-a))/(e*i-n*s),l=(t.x-a-s*u)/e;return this.translate(l,u)}decompose(){const t=this._m[0],e=this._m[1],n=this._m[2],s=this._m[3],i=this._m[4],a=this._m[5],o=t*s-e*n,u={x:i,y:a,angle:0,scaleX:0,scaleY:0,skewX:0,skewY:0};if(t!==0||e!==0){const l=Math.sqrt(t*t+e*e);u.angle=e>0?Math.acos(t/l):-Math.acos(t/l),u.scaleX=l,u.scaleY=o/l,u.skewX=(t*n+e*s)/o,u.skewY=0}else if(n!==0||s!==0){const l=Math.sqrt(n*n+s*s);u.angle=Math.PI/2-(s>0?Math.acos(-n/l):-Math.acos(n/l)),u.scaleX=o/l,u.scaleY=l,u.skewX=0,u.skewY=(t*n+e*s)/o}return u.angle=S0(u.angle),u}makeBoundingBoxFromPoints(t){if(this)for(let c=0;c<t.length;c++)t[c]=this.applyPoint(t[c]);const e=[t[0].x,t[1].x,t[2].x,t[3].x],n=Math.min(...e),i=Math.max(...e)-n,a=[t[0].y,t[1].y,t[2].y,t[3].y],o=Math.min(...a),l=Math.max(...a)-o;return{left:n,top:o,width:i,height:l,points:t}}composeMatrix(t){const e=new m1([1,0,0,1,t.left||0,t.top||0]);return t.angle&&e.rotate(t.angle),(t.scaleX!==1||t.scaleY!==1||t.skewX||t.skewY||t.flipX||t.flipY)&&e.multiply(this._calcDimensionsMatrix(t)),this._m=e.getMatrix(),this}clone(){return new m1([...this._m])}_calcDimensionsMatrix(t){var i,a;const e=(i=t.scaleX)!=null?i:1,n=(a=t.scaleY)!=null?a:1,s=new m1([t.flipX?-e:e,0,0,t.flipY?-n:n,0,0]);return t.skewX&&s.multiply(new m1([1,0,Math.tan(Y1(t.skewX)),1,0,0])),t.skewY&&s.multiply(new m1([1,Math.tan(Y1(t.skewY)),0,1,0,0])),s}}const j2=["top","left","width","height","angle","scaleX","scaleY","skewX","skewY","flipX","flipY","strokeWidth"];class ne{constructor(t){d(this,"groupKey");d(this,"isInGroup",!1);d(this,"onTransformChangeObservable",new g.Observable);d(this,"onPointerDownObserver",new g.Observable);d(this,"onPointerMoveObserver",new g.Observable);d(this,"onPointerUpObserver",new g.Observable);d(this,"onDblclickObserver",new g.Observable);d(this,"onTripleClickObserver",new g.Observable);d(this,"onMouseWheelObserver",new g.Observable);d(this,"onPointerOutObserver",new g.Observable);d(this,"onPointerLeaveObserver",new g.Observable);d(this,"onPointerOverObserver",new g.Observable);d(this,"onPointerEnterObserver",new g.Observable);d(this,"onIsAddedToParentObserver",new g.Observable);d(this,"onDisposeObserver",new g.Observable);d(this,"_oKey");d(this,"_dirty",!0);d(this,"_top",0);d(this,"_topOrigin",0);d(this,"_left",0);d(this,"_leftOrigin",0);d(this,"_width",0);d(this,"_widthOrigin",0);d(this,"_height",0);d(this,"_heightOrigin",0);d(this,"_angle",0);d(this,"_scaleX",1);d(this,"_scaleY",1);d(this,"_skewX",0);d(this,"_skewY",0);d(this,"_flipX",!1);d(this,"_flipY",!1);d(this,"_strokeWidth",0);d(this,"_parent");d(this,"_zIndex",0);d(this,"_evented",!0);d(this,"_visible",!0);d(this,"_debounceParentDirty",!0);d(this,"_transform",new m1);d(this,"_cursor",d1.DEFAULT);d(this,"_isTransformer",!1);d(this,"_forceRender",!1);d(this,"_layer");t?this._oKey=t:this._oKey=x0()}get transform(){return this._transform}get topOrigin(){return this._topOrigin}get leftOrigin(){return this._leftOrigin}get widthOrigin(){return this._widthOrigin}get heightOrigin(){return this._heightOrigin}get classType(){return K.BASE_OBJECT}get top(){return this._top}get left(){return this._left}get width(){return this._width}get height(){return this._height}get strokeWidth(){return this._strokeWidth}get angle(){return this._angle}get scaleX(){return this._scaleX}get scaleY(){return this._scaleY}get ancestorScaleX(){var e;const t=((e=this.getParent())==null?void 0:e.ancestorScaleX)||1;return this.scaleX*t}get ancestorScaleY(){var e;const t=((e=this.getParent())==null?void 0:e.ancestorScaleY)||1;return this.scaleY*t}get skewX(){return this._skewX}get skewY(){return this._skewY}get flipX(){return this._flipX}get flipY(){return this._flipY}get parent(){return this._parent}get oKey(){return this._oKey}get zIndex(){return this._zIndex}get evented(){return this._evented}get visible(){return this._visible}get debounceParentDirty(){return this._debounceParentDirty}get isTransformer(){return this._isTransformer}get cursor(){return this._cursor}get layer(){return this._layer}set transform(t){this._transform=t}set zIndex(t){this._zIndex=t}set parent(t){this._parent=t}set evented(t){this._evented=t}set debounceParentDirty(t){this._debounceParentDirty=t}set isTransformer(t){this._isTransformer=t}set cursor(t){this.setCursor(t)}set layer(t){this._layer=t}set top(t){var e;this._topOrigin=t,this._top=te(t,(e=this._parent)==null?void 0:e.height)}set left(t){var e;this._leftOrigin=t,this._left=te(t,(e=this._parent)==null?void 0:e.width)}set width(t){var e;this._widthOrigin=t,this._width=te(t,(e=this._parent)==null?void 0:e.width)}set height(t){var e;this._heightOrigin=t,this._height=te(t,(e=this._parent)==null?void 0:e.height)}set strokeWidth(t){this._strokeWidth=t}set angle(t){this._angle=t}set scaleX(t){this._scaleX=t}set scaleY(t){this._scaleY=t}set skewX(t){this._skewX=t}set flipY(t){this._flipY=t}set flipX(t){this._flipX=t}set skewY(t){this._skewY=t}makeDirty(t=!0){if(this._dirty=t,t){if(this._layer==null){this._dirty=!1;return}typeof this._layer.debounceParentTimeout=="function"&&this._layer.debounceParentTimeout(),this._layer.debounceParentTimeout=g.requestImmediateMacroTask(()=>{var e;(e=this._layer)==null||e.makeDirty(t)})}return this}makeDirtyNoDebounce(t=!0){var e;return this._dirty=t,t&&((e=this._layer)==null||e.makeDirty(t)),this}isDirty(){return this._dirty}translate(t,e){const n=this.top;e!==void 0&&(this.top=e);const s=this.left;return t!==void 0&&(this.left=t),this._setTransForm(),this.onTransformChangeObservable.notifyObservers({type:h1.translate,value:{top:this._top,left:this._left},preValue:{top:n,left:s}}),this}resize(t,e){const n=this.width;t!==void 0&&(this.width=t);const s=this.height;return e!==void 0&&(this.height=e),this._setTransForm(),this.onTransformChangeObservable.notifyObservers({type:h1.resize,value:{width:this._width,height:this._height},preValue:{width:n,height:s}}),this}scale(t,e){const n=this.scaleX;t!==void 0&&(this.scaleX=t);const s=this.scaleY;return e!==void 0&&(this.scaleY=e),this._setTransForm(),this.onTransformChangeObservable.notifyObservers({type:h1.scale,value:{scaleX:this._scaleX,scaleY:this._scaleY},preValue:{scaleX:n,scaleY:s}}),this}skew(t,e){const n=t;t!==void 0&&(this.skewX=t);const s=e;return e!==void 0&&(this.skewY=e),this._setTransForm(),this.onTransformChangeObservable.notifyObservers({type:h1.skew,value:{skewX:this._skewX,skewY:this._skewY},preValue:{skewX:n,skewY:s}}),this}flip(t,e){const n=t;t!==void 0&&(this.flipX=t);const s=e;return e!==void 0&&(this.flipY=e),this._setTransForm(),this.onTransformChangeObservable.notifyObservers({type:h1.flip,value:{flipX:this._flipX,flipY:this._flipY},preValue:{flipX:n,flipY:s}}),this}transformByState(t){const e=Object.keys(t),n={};if(e.length!==0)return e.forEach(s=>{t[s]!==void 0&&(n[s]=this[s],this[s]=t[s])}),this._setTransForm(),this.onTransformChangeObservable.notifyObservers({type:h1.all,value:t,preValue:n}),this}isRender(t){return this._forceRender?!1:t&&!this.isInGroup}getParent(){return this._parent}getState(){return{left:this.left,top:this.top,width:this.width,height:this.height,scaleX:this.scaleX,scaleY:this.scaleY,angle:this.angle,skewX:this.skewX,skewY:this.skewY,flipX:this.flipX,flipY:this.flipY}}hide(){this._visible=!1,this._makeDirtyMix()}show(){this._visible=!0,this._makeDirtyMix()}render(t,e){}isHit(t){const e=this._getInverseCoord(t);return e.x>=-this.strokeWidth/2&&e.x<=this.width+this.strokeWidth/2&&e.y>=-this.strokeWidth/2&&e.y<=this.height+this.strokeWidth/2}on(t,e){return this[`on${t}Observer`].add(e.bind(this))}off(t,e){this[`on${t}Observer`].remove(e)}clear(t){this[`on${t}Observer`].clear()}triggerPointerMove(t){var e,n;return(e=this.onPointerMoveObserver.notifyObservers(t))!=null&&e.stopPropagation?!0:((n=this._parent)==null||n.triggerPointerMove(t),!1)}triggerPointerDown(t){var e,n;return(e=this.onPointerDownObserver.notifyObservers(t))!=null&&e.stopPropagation?!0:((n=this._parent)==null||n.triggerPointerDown(t),!1)}triggerPointerUp(t){var e,n;return(e=this.onPointerUpObserver.notifyObservers(t))!=null&&e.stopPropagation?!0:((n=this._parent)==null||n.triggerPointerUp(t),!1)}triggerDblclick(t){var e,n;return(e=this.onDblclickObserver.notifyObservers(t))!=null&&e.stopPropagation?!0:((n=this._parent)==null||n.triggerDblclick(t),!1)}triggerTripleClick(t){var e,n;return(e=this.onTripleClickObserver.notifyObservers(t))!=null&&e.stopPropagation?!0:((n=this._parent)==null||n.triggerTripleClick(t),!1)}triggerMouseWheel(t){var e,n;return(e=this.onMouseWheelObserver.notifyObservers(t))!=null&&e.stopPropagation?!0:((n=this._parent)==null||n.triggerMouseWheel(t),!1)}triggerPointerOut(t){var e,n;return(e=this.onPointerOutObserver.notifyObservers(t))!=null&&e.stopPropagation?!0:((n=this._parent)==null||n.triggerPointerOut(t),!1)}triggerPointerLeave(t){var e,n;return(e=this.onPointerLeaveObserver.notifyObservers(t))!=null&&e.stopPropagation?!0:((n=this._parent)==null||n.triggerPointerLeave(t),!1)}triggerPointerOver(t){var e;return this.onPointerOverObserver.notifyObservers(t)?!0:((e=this._parent)==null||e.triggerPointerOver(t),!1)}triggerPointerEnter(t){var e,n;return(e=this.onPointerEnterObserver.notifyObservers(t))!=null&&e.stopPropagation?!0:((n=this._parent)==null||n.triggerPointerEnter(t),!1)}dispose(){var t;this.onTransformChangeObservable.clear(),this.onPointerDownObserver.clear(),this.onPointerMoveObserver.clear(),this.onPointerUpObserver.clear(),this.onMouseWheelObserver.clear(),this.onPointerOutObserver.clear(),this.onPointerLeaveObserver.clear(),this.onPointerOverObserver.clear(),this.onPointerEnterObserver.clear(),this.onDblclickObserver.clear(),this.onTripleClickObserver.clear(),this.onIsAddedToParentObserver.clear(),(t=this.parent)==null||t.removeObject(this),this.onDisposeObserver.notifyObservers(this),this._makeDirtyMix(),this.onDisposeObserver.clear()}toJson(){const t={};return j2.forEach(e=>{this[e]&&(t[e]=this[e])}),t}getScene(){let t=this.parent;if(t!=null){if(t.classType===K.SCENE)return t;for(;t;){if(t.classType===K.SCENE)return t;t=t.getParent()}}}resetCursor(){var t;(t=this.getScene())==null||t.resetCursor()}setCursor(t){var e;this._cursor=t,(e=this.getScene())==null||e.setCursor(t)}getEngine(){let t=this.getParent();for(;t!=null;){if(t.classType===K.ENGINE)return t;t=t.getParent()}return null}getObjects(){return[]}_getInverseCoord(t){return this._transform.clone().invert().applyPoint(t)}_setTransForm(){const t=m1.create().composeMatrix({left:this.left+this.strokeWidth/2,top:this.top+this.strokeWidth/2,scaleX:this.scaleX,scaleY:this.scaleY,angle:this.angle,skewX:this.skewX,skewY:this.skewY,flipX:this.flipX,flipY:this.flipY});this.transform=t,this._makeDirtyMix()}_makeDirtyMix(){this.debounceParentDirty?this.makeDirty(!0):this.makeDirtyNoDebounce(!0)}}var M0=(r=>(r[r.GLYPH=0]="GLYPH",r[r.DIVIDE=1]="DIVIDE",r[r.LINE=2]="LINE",r[r.COLUMN=3]="COLUMN",r[r.SECTION=4]="SECTION",r[r.PAGE=5]="PAGE",r[r.DRAWING=6]="DRAWING",r[r.BULLET=7]="BULLET",r[r.HEADER=8]="HEADER",r[r.FOOTER=9]="FOOTER",r[r.ALL=10]="ALL",r))(M0||{}),Ne=(r=>(r[r.SECTION=0]="SECTION",r[r.PAGE=1]="PAGE",r[r.COLUMN=2]="COLUMN",r))(Ne||{}),_2=(r=>(r[r.PARAGRAPH=0]="PARAGRAPH",r[r.BLOCK=1]="BLOCK",r))(_2||{}),A1=(r=>(r[r.LETTER=0]="LETTER",r[r.WORD=1]="WORD",r[r.LIST=2]="LIST",r[r.PLACEHOLDER=3]="PLACEHOLDER",r[r.TAB=4]="TAB",r[r.IMAGE=5]="IMAGE",r[r.AT=6]="AT",r[r.MATH=7]="MATH",r[r.MULTI_LINE=8]="MULTI_LINE",r[r.CUSTOM=9]="CUSTOM",r))(A1||{}),V1=(r=>(r[r.VERTICAL=0]="VERTICAL",r[r.HORIZONTAL=1]="HORIZONTAL",r[r.AUTO=2]="AUTO",r))(V1||{});function J3(r){var n;const t=r==null?void 0:r.parent;return t==null?!1:((n=t.glyphGroup[0])==null?void 0:n.glyphType)===A1.LIST}function Q3(r,t){const e=P0(r,t);if(e==null)return!1;const{paragraphStyle:n}=e;return n==null?!1:g.checkParagraphHasIndentByStyle(n)}function er(r){const t=r==null?void 0:r.parent,e=t==null?void 0:t.parent,n=t==null?void 0:t.glyphGroup,s=e==null?void 0:e.divides;if(n&&r&&s&&t){const i=n.indexOf(r);if(s.indexOf(t)===s.length-1&&i===n.length-1)return!0}return!1}function tr(r){const t=r==null?void 0:r.parent,e=t==null?void 0:t.parent,n=t==null?void 0:t.glyphGroup,s=e==null?void 0:e.divides;if(n&&r&&s&&t){const i=n.indexOf(r),a=s.indexOf(t);if(a===0&&i===0||a===0&&i===1&&n[0].glyphType===A1.LIST)return!0}return!1}function P0(r,t){var s;const e=(s=r==null?void 0:r.parent)==null?void 0:s.parent;if(e==null||t==null)return;const n=t.paragraphs;if(n!=null){for(const i of n)if(i.startIndex===e.paragraphIndex)return i}}function nr(r){return r==null?!1:[g.DataStreamTreeTokenType.PARAGRAPH,g.DataStreamTreeTokenType.TAB,g.DataStreamTreeTokenType.SECTION_BREAK].indexOf(r.streamType)!==-1||r.content===g.DataStreamTreeTokenType.SPACE}function rr(r,t){return r==null||t==null||r.parent==null||t.parent==null?!1:r.parent.parent===t.parent.parent}function Ht(){let r=1;const e=wt().getContext("2d");return r=(()=>{const n=window.devicePixelRatio||1,s=e.webkitBackingStorePixelRatio||e.mozBackingStorePixelRatio||e.msBackingStorePixelRatio||e.oBackingStorePixelRatio||e.backingStorePixelRatio||1;return n/s})(),r<1?1:r}function Gt(r,t,e,n){let s=0,i=0,a=0,o=0;const{startX:u,startY:l,endX:c,endY:h}=n;t===q.TOP?(s=u-e,i=l,a=c+e,o=l):t===q.BOTTOM?(s=u-e,i=h,a=c-e,o=h):t===q.LEFT?(s=u,i=l-e,a=u,o=h+e):t===q.RIGHT&&(s=c,i=l-e,a=c,o=h+e),r.beginPath(),r.moveToByPrecision(s,i),r.lineToByPrecision(a,o),r.closePathByEnv(),r.stroke()}function N0(r,t,e){let n=0,s=0,i=0,a=0;const{startX:o,startY:u,endX:l,endY:c}=e;t===q.TL_BR?(n=o,s=u,i=l,a=c):t===q.TL_BC?(n=o,s=u,i=(o+l)/2,a=c):t===q.TL_MR?(n=o,s=u,i=l,a=(u+c)/2):t===q.BL_TR?(n=o,s=c,i=l,a=u):t===q.ML_TR?(n=o,s=(u+c)/2,i=l,a=u):t===q.BC_TR&&(n=(o+l)/2,s=c,i=l,a=u),r.beginPath(),r.moveToByPrecision(n,s),r.lineToByPrecision(i,a),r.closePathByEnv(),r.stroke()}function sr(r,t,e){let n=0,s=0,i=0,a=0;const{startX:o,startY:u,endX:l,endY:c}=e;t===q.TOP?(n=o,s=u,i=l,a=u):t===q.BOTTOM?(n=o,s=c,i=l,a=c):t===q.LEFT?(n=o,s=u,i=o,a=c):t===q.RIGHT&&(n=l,s=u,i=l,a=c),r.beginPath(),r.clearRectForTexture(n,s,i-n,a-s)}function zt(r,t){t===g.BorderStyleTypes.HAIR?r.setLineDash([1,2]):t===g.BorderStyleTypes.DASH_DOT_DOT||t===g.BorderStyleTypes.MEDIUM_DASH_DOT_DOT?r.setLineDash([2,2,5,2,2]):t===g.BorderStyleTypes.DASH_DOT||t===g.BorderStyleTypes.MEDIUM_DASH_DOT||t===g.BorderStyleTypes.SLANT_DASH_DOT?r.setLineDash([2,5,2]):t===g.BorderStyleTypes.DOTTED?r.setLineDash([2]):t===g.BorderStyleTypes.DASHED||t===g.BorderStyleTypes.MEDIUM_DASHED?r.setLineDash([3]):r.setLineDash([0])}function U0(){const r=H0(1);return r-Math.floor(r)}function H0(r){return Math.ceil(r/Ht()*100)/100}function Xt(r){let t=1;return r===g.BorderStyleTypes.MEDIUM||r===g.BorderStyleTypes.MEDIUM_DASH_DOT||r===g.BorderStyleTypes.MEDIUM_DASHED||r===g.BorderStyleTypes.MEDIUM_DASH_DOT_DOT?t=2:r===g.BorderStyleTypes.THICK&&(t=3),t}function Ue(r,t,e,n,s=P.create(0,0)){const i=r.add(t).rotateByPoint(n),a=i.subtract(t),o=n-e;return a.rotateByPoint(o,i).add(s).transformCoordinateOnRotate(o)}function G0(r){return r>0?a2.DOWN:a2.UP}function Wt(r,t,e){var p;const n=[];let s=0,i=0,a=0,o=0,u=0;const l=G0(e),c=r.length;e=Math.abs(e);const h=Math.tan(e),f=Math.sin(e),_=Math.cos(e);if(l===a2.UP){let m=0;for(let v=0;v<c;v++){const F=r[v],{lineHeight:E=0}=F;m+=v===0?0:E;const S=t*f+E*_;n.push(m/h),S>i&&(i=S),v===0&&(a+=E*f,u+=E*_)}a+=m/f+t*_,u-=i}else{let m=0,v=-1;const F=[];for(let B=c-1;B>=0;B--){const x=r[B],{lineHeight:w=0}=x,O=w/h,T=(t+O)*f;F.unshift(w/h),T>i&&(i=T,m=O,v=B),B===0?a+=w*f:B===c-1?a+=t*_+w/f:a+=w/f}let E=((p=r[v])==null?void 0:p.lineHeight)||0,S=0;for(let B=v+1;B<=c-1;B++){const x=r[B],{lineHeight:w=0}=x;E+=w,S+=F[B]||0,n[B]=-S}S=0;for(let B=v-1;B>=0;B--){const x=r[B],{lineHeight:w=0}=x;S+=F[B+1]||0,n[B]=S,s+=w}n[v]=0,c===1&&(a+=t*_),o=E/f-m*_}return{rotateTranslateXList:n,rotatedHeight:i,rotatedWidth:a,fixOffsetX:o,fixOffsetY:u,rotateTranslateY:s}}function ir(){const r=.5-U0();return{left:r,top:r}}var z0=(r=>(r[r.PointerMove=0]="PointerMove",r[r.PointerDown=1]="PointerDown",r[r.PointerUp=2]="PointerUp",r[r.Dblclick=3]="Dblclick",r[r.Keyboard=4]="Keyboard",r))(z0||{});class K2{}d(K2,"DOM_DELTA_PIXEL",0),d(K2,"DOM_DELTA_LINE",1),d(K2,"DOM_DELTA_PAGE",2);var R1=(r=>(r[r.Generic=0]="Generic",r[r.Keyboard=1]="Keyboard",r[r.Mouse=2]="Mouse",r[r.Touch=3]="Touch",r))(R1||{}),W=(r=>(r[r.Horizontal=0]="Horizontal",r[r.Vertical=1]="Vertical",r[r.LeftClick=2]="LeftClick",r[r.MiddleClick=3]="MiddleClick",r[r.RightClick=4]="RightClick",r[r.BrowserBack=5]="BrowserBack",r[r.BrowserForward=6]="BrowserForward",r[r.MouseWheelX=7]="MouseWheelX",r[r.MouseWheelY=8]="MouseWheelY",r[r.MouseWheelZ=9]="MouseWheelZ",r[r.DeltaHorizontal=10]="DeltaHorizontal",r[r.DeltaVertical=11]="DeltaVertical",r[r.FakeMove=12]="FakeMove",r))(W||{});const X0=[new P(0,0),new P(1,1)];class W0{constructor(t=X0){this._lines=t}intersection(t){if(this._lines.length<1||t.length<1)return;const e=[];for(let n=1;n<this._lines.length;n++){const s=this._lines[n-1],i=this._lines[n];for(let a=1;a<t.length;a++){const o=this._lines[n-1],u=this._lines[n],l=this._intersection({from:s,to:i},{from:o,to:u});l&&e.push(l)}}return e}_intersection(t,e){const n=t.from,s=t.to,i=e.from,a=e.to,o=(n.x-i.x)*(s.y-i.y)-(n.y-i.y)*(s.x-i.x),u=(n.x-a.x)*(s.y-a.y)-(n.y-a.y)*(s.x-a.x);if(o*u>=0)return!1;const l=(i.x-n.x)*(a.y-n.y)-(i.y-n.y)*(a.x-n.x),c=l+o-u;if(l*c>=0)return!1;const h=l/(u-o),f=h*(s.x-n.x),_=h*(s.y-n.y);return new P(n.x+f,n.y+_)}}class Y0{constructor(t=30){d(this,"_enabled",!0);d(this,"_rollingFrameTime");d(this,"_lastFrameTimeMs");this._rollingFrameTime=new V0(t)}get averageFrameTime(){return this._rollingFrameTime.average}get averageFrameTimeVariance(){return this._rollingFrameTime.variance}get instantaneousFrameTime(){return this._rollingFrameTime.history(0)}get averageFPS(){return 1e3/this._rollingFrameTime.average}get instantaneousFPS(){const t=this._rollingFrameTime.history(0);return t===0?0:1e3/t}get isSaturated(){return this._rollingFrameTime.isSaturated()}get isEnabled(){return this._enabled}sampleFrame(t=this.Now()){if(this._enabled){if(this._lastFrameTimeMs!=null){const e=t-this._lastFrameTimeMs;this._rollingFrameTime.add(e)}this._lastFrameTimeMs=t}}Now(){return performance&&performance.now?performance.now():Date.now()}enable(){this._enabled=!0}disable(){this._enabled=!1,this._lastFrameTimeMs=null}reset(){this._lastFrameTimeMs=null,this._rollingFrameTime.reset()}}class V0{constructor(t){d(this,"average",0);d(this,"variance",0);d(this,"_samples",[]);d(this,"_sampleCount",0);d(this,"_pos",0);d(this,"_m2",0);this._samples=new Array(t),this.reset()}add(t){let e;if(this.isSaturated()){const n=this._samples[this._pos];e=n-this.average,this.average-=e/(this._sampleCount-1),this._m2-=e*(n-this.average)}else this._sampleCount++;e=t-this.average,this.average+=e/this._sampleCount,this._m2+=e*(t-this.average),this.variance=this._m2/(this._sampleCount-1),this._samples[this._pos]=t,this._pos++,this._pos%=this._samples.length}history(t){if(t>=this._sampleCount||t>=this._samples.length)return 0;const e=this._wrapPosition(this._pos-1);return this._samples[this._wrapPosition(e-t)]}isSaturated(){return this._sampleCount>=this._samples.length}reset(){this.average=0,this.variance=0,this._sampleCount=0,this._pos=0,this._m2=0}_wrapPosition(t){const e=this._samples.length;return(t%e+e)%e}}const g2={strokeWidth:1,stroke:"rgba(0, 0, 0, 0)",strokeActive:"rgba(0, 0, 0, 1)",fill:"rgba(0, 0, 0, 0.2)"};var D2=(r=>(r.NONE="none",r.BACKWARD="backward",r.FORWARD="forward",r))(D2||{});function He(r){const t=r.getScene(),e=r.getViewportByCoord(t),n=0,s=0;if(!e)return{scrollX:n,scrollY:s};const i=e.getActualScroll(e.scrollX,e.scrollY);return{scrollX:i.x,scrollY:i.y}}const S1=90;function p2(r){const{a:t=0,v:e=g.BooleanNumber.FALSE}=r||{a:0,v:g.BooleanNumber.FALSE};let n=0,s=t;return e===g.BooleanNumber.TRUE&&(n=S1,s=S1),{centerAngle:n,vertexAngle:s}}class Yt{constructor(t){d(this,"canvas");d(this,"_context");this._context=t,this.canvas=t.canvas}get globalAlpha(){return this._context.globalAlpha}set globalAlpha(t){this._context.globalAlpha=t}get globalCompositeOperation(){return this._context.globalCompositeOperation}set globalCompositeOperation(t){this._context.globalCompositeOperation=t}get fillStyle(){return this._context.fillStyle}set fillStyle(t){this._context.fillStyle=t}get strokeStyle(){return this._context.strokeStyle}set strokeStyle(t){this._context.strokeStyle=t}get filter(){return this._context.filter}set filter(t){this._context.filter=t}get imageSmoothingEnabled(){return this._context.imageSmoothingEnabled}set imageSmoothingEnabled(t){this._context.imageSmoothingEnabled=t}get imageSmoothingQuality(){return this._context.imageSmoothingQuality}set imageSmoothingQuality(t){this._context.imageSmoothingQuality=t}get lineCap(){return this._context.lineCap}set lineCap(t){this._context.lineCap=t}get lineDashOffset(){return this._context.lineDashOffset}set lineDashOffset(t){this._context.lineDashOffset=t}get lineJoin(){return this._context.lineJoin}set lineJoin(t){this._context.lineJoin=t}get lineWidth(){return this._context.lineWidth}set lineWidth(t){this._context.lineWidth=t}setLineWidthByPrecision(t){const{scaleX:e,scaleY:n}=this._getScale();this._context.lineWidth=t/Math.max(e,n)}get miterLimit(){return this._context.miterLimit}set miterLimit(t){this._context.miterLimit=t}get shadowBlur(){return this._context.shadowBlur}set shadowBlur(t){this._context.shadowBlur=t}get shadowColor(){return this._context.shadowColor}set shadowColor(t){this._context.shadowColor=t}get shadowOffsetX(){return this._context.shadowOffsetX}set shadowOffsetX(t){this._context.shadowOffsetX=t}get shadowOffsetY(){return this._context.shadowOffsetY}set shadowOffsetY(t){this._context.shadowOffsetY=t}get direction(){return this._context.direction}set direction(t){this._context.direction=t}get font(){return this._context.font}set font(t){this._context.font=t}get fontKerning(){return this._context.fontKerning}set fontKerning(t){this._context.fontKerning=t}get fontStretch(){return this._context.fontStretch}set fontStretch(t){this._context.fontStretch=t}get fontVariantCaps(){return this._context.fontVariantCaps}set fontVariantCaps(t){this._context.fontVariantCaps=t}get letterSpacing(){return this._context.letterSpacing}set letterSpacing(t){this._context.letterSpacing=t}get textRendering(){return this._context.textRendering}set textRendering(t){this._context.textRendering=t}get wordSpacing(){return this._context.wordSpacing}set wordSpacing(t){this._context.wordSpacing=t}get textAlign(){return this._context.textAlign}set textAlign(t){this._context.textAlign=t}get textBaseline(){return this._context.textBaseline}set textBaseline(t){this._context.textBaseline=t}_getScale(){const t=this.getTransform();return{scaleX:t.a,scaleY:t.d}}getScale(){return this._getScale()}getContextAttributes(){return this._context.getContextAttributes()}isPointInStroke(...t){return this._context.isPointInStroke(...t)}createConicGradient(t,e,n){return this._context.createConicGradient(t,e,n)}roundRect(t,e,n,s,i){this._context.roundRect(t,e,n,s,i)}roundRectByPrecision(t,e,n,s,i){const{scaleX:a,scaleY:o}=this._getScale();t=Z(t,a),e=Z(e,o),n=Z(n,a),s=Z(s,o),this.roundRect(t,e,n,s,i)}getTransform(){return this._context.getTransform()}resetTransform(){this._context.resetTransform()}drawFocusIfNeeded(...t){return this._context.drawFocusIfNeeded(...t)}reset(){this._context.reset()}arc(t,e,n,s,i,a){this._context.arc(t,e,n,s,i,a)}arcByPrecision(t,e,n,s,i,a){const{scaleX:o,scaleY:u}=this._getScale();t=Z(t,o),e=Z(e,u),this.arc(t,e,n,s,i,a)}arcTo(t,e,n,s,i){this._context.arcTo(t,e,n,s,i)}arcToByPrecision(t,e,n,s,i){const{scaleX:a,scaleY:o}=this._getScale();t=Z(t,a),e=Z(e,o),n=Z(n,a),s=Z(s,o),this.arcTo(t,e,n,s,i)}beginPath(){this._context.beginPath()}bezierCurveTo(t,e,n,s,i,a){this._context.bezierCurveTo(t,e,n,s,i,a)}bezierCurveToByPrecision(t,e,n,s,i,a){const{scaleX:o,scaleY:u}=this._getScale();i=Z(i,o),a=Z(a,u),t=Z(t,o),e=Z(e,u),n=Z(n,o),s=Z(s,u),this.bezierCurveTo(t,e,n,s,i,a)}clearRect(t,e,n,s){this._context.clearRect(t,e,n,s)}clearRectByPrecision(t,e,n,s){const{scaleX:i,scaleY:a}=this._getScale();t=Z(t,i),e=Z(e,a),n=Z(n,i),s=Z(s,a),this.clearRect(t,e,n,s)}clip(...t){this._context.clip(...t)}closePath(){this._context.closePath()}closePathByEnv(){const e=g.Tools.getSystemType()==="Mac",s=g.Tools.getBrowserType()==="Chrome";e&&s||this._context.closePath()}createImageData(...t){if(t.length===0)throw new Error("arguments is zero");return t.length===1?this._context.createImageData(t[0]):t.length===2?this._context.createImageData(t[0],t[1]):this._context.createImageData(t[0],t[1],t[1])}createLinearGradient(t,e,n,s){return this._context.createLinearGradient(t,e,n,s)}createPattern(t,e){return this._context.createPattern(t,e)}createRadialGradient(t,e,n,s,i,a){return this._context.createRadialGradient(t,e,n,s,i,a)}drawImage(...t){const e=t,n=this._context;e.length===3?n.drawImage(t[0],t[1],t[2]):e.length===5?n.drawImage(t[0],t[1],t[2],t[3],t[4]):e.length===9&&n.drawImage(t[0],t[1],t[2],t[3],t[4],t[5],t[6],t[7],t[8])}ellipse(t,e,n,s,i,a,o,u){this._context.ellipse(t,e,n,s,i,a,o,u)}isPointInPath(...t){return this._context.isPointInPath(...t)}fill(...t){this._context.fill(...t)}fillRect(t,e,n,s){this._context.fillRect(t,e,n,s)}fillRectByPrecision(t,e,n,s){const{scaleX:i,scaleY:a}=this._getScale();t=Z(t,i),e=Z(e,a),n=Z(n,i),s=Z(s,a),this.fillRect(t,e,n,s)}strokeRect(t,e,n,s){this._context.strokeRect(t,e,n,s)}strokeRectPrecision(t,e,n,s){const{scaleX:i,scaleY:a}=this._getScale();t=Z(t,i),e=Z(e,a),n=Z(n,i),s=Z(s,a),this.strokeRect(t,e,n,s)}fillText(t,e,n,s){s?this._context.fillText(t,e,n,s):this._context.fillText(t,e,n)}fillTextPrecision(t,e,n,s){const{scaleX:i,scaleY:a}=this._getScale();e=Z(e,i),n=Z(n,a),s?(s=Z(s,i),this._context.fillText(t,e,n,s)):this._context.fillText(t,e,n)}measureText(t){return this._context.measureText(t)}getImageData(t,e,n,s){return this._context.getImageData(t,e,n,s)}lineTo(t,e){this._context.lineTo(t,e)}lineToByPrecision(t,e){const{scaleX:n,scaleY:s}=this._getScale();t=Z(t,n),e=Z(e,s),this.lineTo(t,e)}moveTo(t,e){this._context.moveTo(t,e)}moveToByPrecision(t,e){const{scaleX:n,scaleY:s}=this._getScale();t=Z(t,n),e=Z(e,s),this.moveTo(t,e)}rect(t,e,n,s){this._context.rect(t,e,n,s)}rectByPrecision(t,e,n,s){const{scaleX:i,scaleY:a}=this._getScale();t=Z(t,i),e=Z(e,a),n=Z(n,i),s=Z(s,a),this.rect(t,e,n,s)}putImageData(t,e,n){this._context.putImageData(t,e,n)}quadraticCurveTo(t,e,n,s){this._context.quadraticCurveTo(t,e,n,s)}restore(){this._context.restore()}rotate(t){this._context.rotate(t)}save(){this._context.save()}scale(t,e){this._context.scale(t,e)}setLineDash(t){this._context.setLineDash?this._context.setLineDash(t):"mozDash"in this._context?this._context.mozDash=t:"webkitLineDash"in this._context&&(this._context.webkitLineDash=t)}getLineDash(){return this._context.getLineDash()}setTransform(...t){this._context.setTransform(...t)}stroke(t){t?this._context.stroke(t):this._context.stroke()}strokeText(t,e,n,s){this._context.strokeText(t,e,n,s)}strokeTextByPrecision(t,e,n,s){const{scaleX:i,scaleY:a}=this._getScale();e=Z(e,i),n=Z(n,a),s&&(s=Z(s,i)),this.strokeText(t,e,n,s)}transform(t,e,n,s,i,a){this._context.transform(t,e,n,s,i,a)}translate(t,e){this._context.translate(t,e)}translateWithPrecision(t,e){const{scaleX:n,scaleY:s}=this._getScale();t=Z(t,n),e=Z(e,s),this._context.translate(t,e)}translateWithPrecisionRatio(t,e){const{scaleX:n,scaleY:s}=this._getScale();this._context.translate(t/n,e/s)}clearRectForTexture(t,e,n,s){this.clearRectByPrecision(t,e,n,s)}setGlobalCompositeOperation(t){this._context.globalCompositeOperation=t}}class ar{}class or{}class j0 extends Yt{}class K0 extends Yt{__getScale(){const t=this.getTransform();return{scaleX:t.a,scaleY:t.d}}clearRect(t,e,n,s){const{scaleX:i,scaleY:a}=this.__getScale();t=Z(t,i),e=Z(e,a),n=Z(n,i),s=Z(s,a),this._context.save(),this._context.fillStyle=F1([255,255,255]),this._context.fillRect(t,e,n,s),this._context.restore()}clearRectForTexture(t,e,n,s){}setGlobalCompositeOperation(t){}}var Vt=(r=>(r[r.Rendering=0]="Rendering",r[r.Printing=1]="Printing",r))(Vt||{});class Ge{constructor(t){d(this,"isCache",!1);d(this,"_pixelRatio",1);d(this,"_canvasEle");d(this,"_context");d(this,"_width",0);d(this,"_height",0);t=t||{},this._canvasEle=wt(),this._canvasEle.style.padding="0",this._canvasEle.style.margin="0",this._canvasEle.style.border="0",this._canvasEle.style.background="transparent",this._canvasEle.style.position="absolute",this._canvasEle.style.top="0",this._canvasEle.style.left="0",this._canvasEle.style.zIndex="8",this._canvasEle.className="univer-render-canvas",this._canvasEle.tabIndex=1,this._canvasEle.style.touchAction="none",this._canvasEle.style.outline="0";const e=this._canvasEle.getContext("2d");if(e==null)throw new Error("context is not support");t.mode===1?this._context=new K0(e):this._context=new j0(e),this.setSize(t.width,t.height,t.pixelRatio)}getCanvasEle(){return this._canvasEle}getContext(){return this._context}getPixelRatio(){return this._pixelRatio}getWidth(){return this._width}getHeight(){return this._height}setSize(t,e,n){this._pixelRatio=n||Ht(),t&&(this._canvasEle.width=t*this._pixelRatio,this._width=this._canvasEle.width/this._pixelRatio,this._canvasEle.style.width=`${this._width}px`),e&&(this._canvasEle.height=e*this._pixelRatio,this._height=this._canvasEle.height/this._pixelRatio,this._canvasEle.style.height=`${this._height}px`),this.getContext().setTransform(this._pixelRatio,0,0,this._pixelRatio,0,0)}setPixelRatio(t){this._width===0||this._height===0||(t<1&&(t=1),this.setSize(this._width,this._height,t))}dispose(){this.clear(),this._canvasEle.remove()}clear(){this.getContext().clearRect(0,0,this._width*this._pixelRatio,this._height*this._pixelRatio)}toDataURL(t,e){try{return this._canvasEle.toDataURL(t,e)}catch{try{return this._canvasEle.toDataURL()}catch(s){const{message:i}=s;return console.error(`Unable to get data URL. ${i} For more info read https://universheet.net/docs/Canvas.html.`),""}}}}class ur extends Ge{constructor(t={width:0,height:0}){super(t),this.setSize(t.width,t.height)}}class lr extends Ge{constructor(e={width:0,height:0}){super(e);d(this,"hitCanvas",!0);this.setSize(e.width,e.height)}}class jt extends ne{constructor(){super(...arguments);d(this,"_extensions",new Map)}get extensions(){return this._extensions}register(...e){const n=new g.DisposableCollection;for(const s of e)s.parent=this,this._extensions.set(s.uKey,s),n.add(g.toDisposable(()=>{this._extensions.delete(s.uKey)}));return n}getExtensionsByOrder(){const e=Array.from(this._extensions.values());return e.sort(g.sortRules),e}getExtensionByKey(e){return this._extensions.get(e)}draw(e,n){}}class Kt{constructor(){d(this,"uKey","");d(this,"type");d(this,"Z_INDEX",0);d(this,"parent");d(this,"translateX",0);d(this,"translateY",0);d(this,"extensionOffset",{})}get zIndex(){return this.Z_INDEX}draw(t,e,n,s){}clearCache(){}_getScale(t){return Pt(t)}}const Se=g.Registry.create(),qt=g.Registry.create(),Zt=g.Registry.create(),ze=g.Registry.create();class Jt extends jt{constructor(t,e){super(t),this._skeleton=e}getSkeleton(){return this._skeleton}updateSkeleton(t){this._skeleton=t}render(t,e){if(!this.visible)return this.makeDirty(!1),this;t.save(),this._draw(t,e),t.restore()}getParentScale(){let{scaleX:t=1,scaleY:e=1}=this.parent;return this.parent.classType===K.SCENE_VIEWER&&(t=this.parent.ancestorScaleX||1,e=this.parent.ancestorScaleY||1),{scaleX:t,scaleY:e}}getDocuments(){}getNoMergeCellPositionByIndex(t,e){}getScrollXYByRelativeCoords(t){return{x:0,y:0}}getSelectionBounding(t,e,n,s){}_draw(t,e){}}class Qt extends Jt{_draw(t,e){this.draw(t,e)}}class cr extends Qt{constructor(e,n){super(e,n);d(this,"_columnHeaderLayoutExtension");this._initialDefaultExtension(),this.makeDirty(!0)}get columnHeaderLayoutExtension(){return this._columnHeaderLayoutExtension}draw(e,n){const s=this.getSkeleton();if(!s)return;const i=this.getParentScale();s.calculateSegment(n);const a=s.rowColumnSegment;if(a.startColumn===-1&&a.endColumn===-1)return;const{rowHeaderWidth:o}=s;e.translateWithPrecision(o,0);const u=this.getExtensionsByOrder();for(const l of u)l.draw(e,i,s)}isHit(e){const n=this._getInverseCoord(e),s=this.getSkeleton();if(!s)return!1;const{rowHeaderWidth:i,columnHeaderHeight:a}=s;return n.x>i&&n.y>=0&&n.y<=a}_initialDefaultExtension(){Zt.getData().forEach(e=>{this.register(e)}),this._columnHeaderLayoutExtension=this.getExtensionByKey("DefaultColumnHeaderLayoutExtension")}}var q0=(r=>(r[r.GRID=0]="GRID",r))(q0||{});class de extends Kt{constructor(){super(...arguments);d(this,"type",0)}getCellIndex(e,n,s,i,a){return Pe(e,n,s,i,a)}isRenderDiffRangesByCell(e,n){if(n==null||n.length===0)return!0;for(const s of n){const{startRow:i,startColumn:a,endRow:o,endColumn:u}=s;if(g.Rectangle.intersects(s,{startRow:i,endRow:o,startColumn:a,endColumn:u}))return!0}return!1}isRenderDiffRangesByColumn(e,n,s){if(s==null||s.length===0)return!0;for(const i of s){const{startColumn:a,endColumn:o}=i;if(g.Rectangle.intersects({startRow:0,endRow:0,startColumn:e,endColumn:n},{startRow:0,endRow:0,startColumn:a,endColumn:o}))return!0}return!1}isRenderDiffRangesByRow(e,n,s){if(s==null||s.length===0)return!0;for(const i of s){const{startRow:a,endRow:o}=i;if(g.Rectangle.intersects({startRow:e,endRow:n,startColumn:0,endColumn:0},{startRow:a,endRow:o,startColumn:0,endColumn:0}))return!0}return!1}}const hr="DefaultBackgroundExtension",fr=40,dr=20;let Z0=class extends de{constructor(){super(...arguments);d(this,"uKey",hr);d(this,"Z_INDEX",fr);d(this,"PRINTING_Z_INDEX",dr)}get zIndex(){var e;return(e=this.parent)!=null&&e.isPrinting?this.PRINTING_Z_INDEX:this.Z_INDEX}draw(e,n,s,i){const{stylesCache:a}=s,{background:o,backgroundPositions:u}=a;if(!s)return;const{rowHeightAccumulation:l,columnTotalWidth:c,columnWidthAccumulation:h,rowTotalHeight:f}=s;!l||!h||c===void 0||f===void 0||(e.save(),e.setGlobalCompositeOperation("destination-over"),o&&Object.keys(o).forEach(_=>{const p=o[_];e.fillStyle=_||F1([255,255,255]),e.beginPath(),p.forValue((m,v)=>{const F=u==null?void 0:u.getValue(m,v);if(F==null)return!0;let{startY:E,endY:S,startX:B,endX:x}=F;const{isMerged:w,isMergedMainCell:O,mergeInfo:T}=F;if(w||!this.isRenderDiffRangesByCell({startRow:T.startRow,endRow:T.endRow,startColumn:T.startColumn,endColumn:T.endColumn},i))return!0;O&&(E=T.startY,S=T.endY,B=T.startX,x=T.endX),e.moveToByPrecision(B,E),e.lineToByPrecision(B,S),e.lineToByPrecision(x,S),e.lineToByPrecision(x,E)}),e.closePath(),e.fill()}),e.restore())}};Se.add(Z0);const _r="DefaultBorderExtension",gr=50;let J0=class extends de{constructor(){super(...arguments);d(this,"uKey",_r);d(this,"Z_INDEX",gr)}draw(e,n,s,i){const{dataMergeCache:a,stylesCache:o,overflowCache:u}=s,{border:l}=o;if(!s)return;const{rowHeightAccumulation:c,columnTotalWidth:h,columnWidthAccumulation:f,rowTotalHeight:_}=s;if(!c||!f||h===void 0||_===void 0)return;e.save();let p,m;e.translateWithPrecisionRatio(g1,g1);const v=this._getScale(e.getScale());l==null||l.forValue((F,E,S)=>{if(!S)return!0;const B=this.getCellIndex(F,E,c,f,a),{startY:x,endY:w,startX:O,endX:T}=B,{isMerged:R,isMergedMainCell:k,mergeInfo:$}=B;if(!this.isRenderDiffRangesByRow($.startRow,$.endRow,i))return!0;for(const M in S){const{type:U,style:I,color:L}=S[M];if(I===g.BorderStyleTypes.NONE)continue;let H=x,X=w,j=O,G=T;if(U!==q.TOP&&U!==q.BOTTOM&&U!==q.LEFT&&U!==q.RIGHT){if(R)return!0;k&&(H=$.startY,X=$.endY,j=$.startX,G=$.endX)}const Q=Xt(I);I!==p&&(zt(e,I),e.setLineWidthByPrecision(Q),p=I),L!==m&&(e.strokeStyle=L||he,m=L),N0(e,U,{startX:j,startY:H,endX:G,endY:X}),!this._getOverflowExclusion(u,U,F,E)&&Gt(e,U,(Q-1)/2/v,{startX:j,startY:H,endX:G,endY:X})}}),e.closePath(),e.restore()}_getOverflowExclusion(e,n,s,i){let a=!1;return n===q.TOP||n===q.BOTTOM||e==null||e.forRow((o,u)=>{if(o!==s)return!0;u.forEach(l=>{const c=e.getValue(o,l),{startColumn:h,endColumn:f}=c;if(n===q.LEFT&&i>h&&i<=f||n===q.RIGHT&&i>=h&&i<f)return a=!0,!1})}),a}};Se.add(J0);const Dr="DefaultColumnHeaderLayoutExtension";class Q0 extends de{constructor(){super(...arguments);d(this,"uKey",Dr);d(this,"Z_INDEX",10)}draw(e,n,s){const{rowColumnSegment:i,columnHeaderHeight:a=0}=s,{startColumn:o,endColumn:u}=i;if(!s||a===0)return;const{rowHeightAccumulation:l,columnTotalWidth:c,columnWidthAccumulation:h,rowTotalHeight:f}=s;if(!l||!h||c===void 0||f===void 0)return;const _=this._getScale(n);e.fillStyle=F1([248,249,250]),e.fillRectByPrecision(0,0,c,a),e.textAlign="center",e.textBaseline="middle",e.fillStyle=F1([0,0,0]),e.beginPath(),e.setLineWidthByPrecision(1),e.translateWithPrecisionRatio(g1,g1),e.strokeStyle=F1([217,217,217]),e.font=`13px ${i2}`;let p=0;const m=h.length;for(let F=o-1;F<=u;F++){if(F<0||F>m-1)continue;const E=h[F];if(p===E)continue;e.moveToByPrecision(E,0),e.lineToByPrecision(E,a);const S=p+(E-p)/2;e.fillText(g.numberToABC(F),S,a/2+xt),p=E}const v=a-.5/_;e.moveToByPrecision(0,v),e.lineToByPrecision(c,v),e.stroke()}}Zt.add(new Q0);function Xe(r){return r[r.length-1]}function e6(r){var t;return(t=r.sections)==null?void 0:t[r.sections.length-1]}function pr(r){var e;const t=(e=q2(r))==null?void 0:e.column.lines;return t==null?void 0:t[t.length-1]}function vr(r){return r.lines[r.lines.length-1]}function q2(r){const t=e6(r);for(let e=0;e<t.columns.length;e++){const n=t.columns[e];if(!n.isFull)return{column:n,isLast:e===t.columns.length-1,index:e}}}function mr(r){const t=pr(r);if(t)for(let e=0;e<t.divides.length;e++){const n=t.divides[e];if(!n.isFull)return{divide:n,isLast:e===t.divides.length-1,index:e}}}function br(r){const t=e6(r),e=t.columns.length;for(let n=0;n<e;n++)if(!t.columns[n].isFull)return!1;return!0}function Te(r,t){if(r instanceof Object){const{v:e,u:n}=r;return n===g.NumberUnitType.POINT?e:e*t}return r}function v2(r=0,t,e=g.GridType.LINES,n=g.BooleanNumber.TRUE){let s=1;return e4(e,n)&&(s=r),s*=t,s}function e4(r=g.GridType.LINES,t=g.BooleanNumber.FALSE){return t===g.BooleanNumber.TRUE&&(r===g.GridType.LINES_AND_CHARS||r===g.GridType.SNAP_TO_CHARS)}function t4(r,t){const{paragraphStyle:e={}}=t,{linePitch:n=15.6,gridType:s=g.GridType.LINES,paragraphLineGapDefault:i=0}=r,{lineSpacing:a=1,spacingRule:o=g.SpacingRule.AUTO,snapToGrid:u=g.BooleanNumber.TRUE}=e;return{paragraphLineGapDefault:i,linePitch:n,gridType:s,lineSpacing:a,spacingRule:o,snapToGrid:u}}function yr(r,t){const{paragraphStyle:e={}}=t,{charSpace:n=0,gridType:s=g.GridType.LINES,defaultTabStop:i=36,documentTextStyle:a={}}=r,{fs:o=d0}=a,{snapToGrid:u=g.BooleanNumber.TRUE}=e;return{charSpace:n,documentFontSize:o,defaultTabStop:i,gridType:s,snapToGrid:u}}function t6(r,t=-1){let e=t;for(const n of r){const{sections:s}=n,i=e;let a=i,o=Number.NEGATIVE_INFINITY,u=0;for(const l of s){const{columns:c}=l,h=a;let f=h,_=Number.NEGATIVE_INFINITY,p=0;for(const m of c){const{lines:v}=m,F=f;let E=F,S=0,B=Number.NEGATIVE_INFINITY,x=null;for(const w of v){const{divides:O,lineHeight:T}=w,R=E;let k=R,$=0,M=0;S+=T;const U=O.length;for(let I=0;I<U;I++){const L=O[I],{glyphGroup:H}=L,X=k;let j=X;for(const G of H){const Q=G.glyphType===A1.LIST?0:G.count;j+=Q;const t1=G.bBox,{ba:n1}=t1;M=Math.max(M,n1),I===U-1&&($+=G.width)}H[0].xOffset!==0&&I===U-1&&($-=H[0].xOffset),I===U-1&&($+=L.left),H.length!==0&&(L.st=X+1,L.ed=j>=L.st?j:L.st,k=L.ed)}w.st=R+1,w.ed=k>=w.st?k:w.st,w.width=$,w.asc=M,B=Math.max(B,$),w.top=((x==null?void 0:x.top)||0)+((x==null?void 0:x.lineHeight)||0),x=w,E=w.ed}m.st=F+1,m.ed=E>=m.st?E:m.st,m.height=S,m.width=B,p+=B,_=Math.max(_,m.height),f=m.ed}l.st=h+1,l.ed=f>=l.st?f:l.st,l.height=_,u+=_,o=Math.max(o,p),a=l.ed}n.st=i+1,n.ed=a>=n.st?a:n.st,n.height=u,n.width=o,e=n.ed}}function Fr(r,t){for(const e of r){const{sections:n}=e;for(const s of n){const{columns:i}=s;for(const a of i){const{lines:o}=a;for(const u of o)t&&Rt(t)&&t(u)}}}}function Cr(r,t){for(const e of r){const{sections:n}=e;for(const s of n){const{columns:i}=s;for(const a of i)t&&Rt(t)&&t(a)}}}function Er(r,t,e,n,s=!1){const{relativeFrom:i,align:a,posOffset:o,percent:u}=r;if(a!=null)if(a===g.AlignTypeH.INSIDE||a===g.AlignTypeH.OUTSIDE)i===g.ObjectRelativeFromH.MARGIN||g.ObjectRelativeFromH.PAGE;else{if(i===g.ObjectRelativeFromH.COLUMN){const{width:l,left:c}=t;let h=0;return a===g.AlignTypeH.LEFT?h=c:a===g.AlignTypeH.RIGHT?h=c+l-n:a===g.AlignTypeH.CENTER&&(h=c+l/2-n/2),h}if(i!==g.ObjectRelativeFromH.LEFT_MARGIN){if(i!==g.ObjectRelativeFromH.MARGIN){if(i!==g.ObjectRelativeFromH.RIGHT_MARGIN){if(i!==g.ObjectRelativeFromH.INSIDE_MARGIN){if(i!==g.ObjectRelativeFromH.OUTSIDE_MARGIN){if(i===g.ObjectRelativeFromH.PAGE){const{pageWidth:l}=e;let c=0;return a===g.AlignTypeH.RIGHT?c=l-n:a===g.AlignTypeH.CENTER&&(c=l/2-n/2),c}}}}}}}else if(o){const{pageWidth:l,marginLeft:c,marginRight:h}=e,f=l-h;let _=0;return i===g.ObjectRelativeFromH.COLUMN?_=(s?0:(t==null?void 0:t.left)||0)+o:i===g.ObjectRelativeFromH.LEFT_MARGIN||(i===g.ObjectRelativeFromH.MARGIN?_=o+c:i===g.ObjectRelativeFromH.RIGHT_MARGIN||i===g.ObjectRelativeFromH.INSIDE_MARGIN||i===g.ObjectRelativeFromH.OUTSIDE_MARGIN||i===g.ObjectRelativeFromH.PAGE&&(_=o)),_+n>f&&(_=f-n),_}else if(u){const{pageWidth:l,marginLeft:c,marginRight:h}=e;if(i!==g.ObjectRelativeFromH.LEFT_MARGIN){if(i!==g.ObjectRelativeFromH.MARGIN){if(i!==g.ObjectRelativeFromH.RIGHT_MARGIN){if(i!==g.ObjectRelativeFromH.INSIDE_MARGIN){if(i!==g.ObjectRelativeFromH.OUTSIDE_MARGIN){if(i===g.ObjectRelativeFromH.PAGE)return u*l}}}}}}}function Sr(r,t,e,n,s,i,a=!1){const{relativeFrom:o,align:u,posOffset:l,percent:c}=r;if(u!=null){if(o===g.ObjectRelativeFromV.LINE){let h=0;return u===g.AlignTypeV.BOTTOM?h=e+n-s:u===g.AlignTypeV.TOP?h=e:u===g.AlignTypeV.CENTER&&(h=e+n/2-s/2),h}if(o!==g.ObjectRelativeFromV.TOP_MARGIN){if(o!==g.ObjectRelativeFromV.MARGIN){if(o!==g.ObjectRelativeFromV.BOTTOM_MARGIN){if(o!==g.ObjectRelativeFromV.INSIDE_MARGIN){if(o!==g.ObjectRelativeFromV.OUTSIDE_MARGIN){if(o===g.ObjectRelativeFromV.PAGE){const{pageHeight:h}=t;let f=0;return u===g.AlignTypeV.BOTTOM?f=h-s:u===g.AlignTypeV.CENTER&&(f=h/2-s/2),f}}}}}}}else if(l){let h=0;return o===g.ObjectRelativeFromV.LINE?h=e||0+l:o===g.ObjectRelativeFromV.TOP_MARGIN||o===g.ObjectRelativeFromV.MARGIN||o===g.ObjectRelativeFromV.BOTTOM_MARGIN||o===g.ObjectRelativeFromV.INSIDE_MARGIN||o===g.ObjectRelativeFromV.OUTSIDE_MARGIN||(o===g.ObjectRelativeFromV.PAGE?h=l:o===g.ObjectRelativeFromV.PARAGRAPH&&(h=(a?0:i==null?e:i)+l)),h}else if(c){const{pageHeight:h,marginBottom:f,marginTop:_}=t;if(o!==g.ObjectRelativeFromV.TOP_MARGIN){if(o!==g.ObjectRelativeFromV.MARGIN){if(o!==g.ObjectRelativeFromV.BOTTOM_MARGIN){if(o!==g.ObjectRelativeFromV.INSIDE_MARGIN){if(o!==g.ObjectRelativeFromV.OUTSIDE_MARGIN){if(o===g.ObjectRelativeFromV.PAGE)return c*h}}}}}}}function n4(r){let t=0;for(const e of r.glyphGroup)t+=e.width;return t}const n6=new g.ObjectMatrix;function Tr(){n6.reset()}function We(r,t,e,n,s){const{startIndex:i}=e,a=t.getTextRun(r+i)||{ts:{},st:0,ed:0},{st:o,ed:u}=a;let{ts:l={}}=a;const c=n6.getValue(o,u);if(c)return c;const{gridType:h=g.GridType.LINES,charSpace:f=0,documentTextStyle:_={},pageSize:p={width:Number.POSITIVE_INFINITY,height:Number.POSITIVE_INFINITY},marginRight:m=0,marginLeft:v=0,localeService:F}=n,{snapToGrid:E=g.BooleanNumber.TRUE}=s;l={..._,...l};const S=l2(l),B={..._,...l},x=p.width||Number.POSITIVE_INFINITY-v-m,w={fontStyle:S,textStyle:B,charSpace:f,gridType:h,snapToGrid:E,pageWidth:x};return n6.setValue(o,u,w),w}var xr=Object.defineProperty,Br=Object.getOwnPropertyDescriptor,Or=(r,t,e,n)=>{for(var s=n>1?void 0:n?Br(t,e):t,i=r.length-1,a;i>=0;i--)(a=r[i])&&(s=(n?a(t,e,s):a(s))||s);return n&&s&&xr(t,e,s),s},wr=(r,t)=>(e,n)=>t(e,n,r);y.Skeleton=class extends g.Disposable{constructor(e){super();d(this,"_fontLocale");d(this,"_dirty",!0);this._localService=e,this._localeInitial()}get dirty(){return this._dirty}getFontLocale(){return this._fontLocale}makeDirty(e){this._dirty=e}_localeInitial(){}},y.Skeleton=Or([wr(0,E1.Inject(g.LocaleService))],y.Skeleton);class m2{constructor(){d(this,"_translateX",0);d(this,"_translateY",0);d(this,"_translateSaveList",[])}get x(){return this._translateX}get y(){return this._translateY}reset(){this.translateBy(0,0),this._translateSaveList=[]}translateBy(t=0,e=0){this._translateX=t,this._translateY=e}translate(t=0,e=0){this._translateX+=t,this._translateY+=e}translateSave(){this._translateSaveList.push({x:this._translateX,y:this._translateY})}translateRestore(){const t=this._translateSaveList.pop();t&&(this._translateX=t.x,this._translateY=t.y)}translatePagePadding(t){const{marginTop:e=0,marginBottom:n=0,marginLeft:s=0,marginRight:i=0}=t;this.translate(s,e)}restorePagePadding(t){const{marginTop:e=0,marginBottom:n=0,marginLeft:s=0,marginRight:i=0}=t;this.translate(-s,-e)}translatePage(t,e=V1.VERTICAL,n=0,s=0,i=0,a=0){const{pageWidth:o,pageHeight:u}=t;let l=0,c=0;return e===V1.VERTICAL?l+=u+s:e===V1.HORIZONTAL&&(c+=o+n),this.translate(c,l),{x:c,y:l}}translateSection(t){const{top:e=0}=t;return this.translate(0,e),{x:0,y:e}}translateColumn(t){const{left:e}=t;return this.translate(e,0),{x:e,y:0}}translateLine(t,e=!1){const{top:n,marginBottom:s=0,marginTop:i=0,paddingTop:a=0,paddingBottom:o=0}=t,u=n+(e===!0?i:0)+a;return this.translate(0,u),{x:0,y:u}}translateDivide(t){const{left:e,paddingLeft:n}=t,s=e+n;return this.translate(s,0),{x:s,y:0}}translateSpan(t){const{left:e}=t;return this.translate(e,0),{x:e,y:0}}}function r4(r=[],t=g.ColumnSeparatorType.NONE,e=0,n=0,s=Number.POSITIVE_INFINITY,i=Number.POSITIVE_INFINITY){const a=[];let o=0,u=0;if(r.length===0)a.push(r6(n,s,0,g.ColumnSeparatorType.NONE));else for(let c=0;c<r.length;c++){const{width:h,paddingEnd:f}=r[c];u=f,o=h,a.push(r6(n,o,u,t)),n+=o+u,c===r.length-1&&(o=s!==Number.POSITIVE_INFINITY?s-o:h,u=0,a.push(r6(n,o,u,t)))}const l={columns:a,colCount:(r==null?void 0:r.length)||1,height:i,top:e,st:0,ed:0};return a.forEach(c=>{c.parent=l}),l}function s4(r,t){r.isFull=t}function r6(r,t,e,n){return{lines:[],left:r,width:t,height:0,spaceWidth:e,separator:n,st:0,ed:0,drawingLRIds:[],isFull:!1}}function Ar(){return[]}class Z2{constructor(t,e=!1){this.position=t,this.required=e}}const Rr=5,i4=12,$r=13,kr=16,Ir=17,Lr=22,a4=28,o4=31,Mr=33,J2=34,Pr=35,s6=36,i6=37,u4=38,Nr=39,Ur=40,b2=41,Hr=42,D=0,b=1,r1=2,l4=3,C=4,Gr=[[C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,l4,C,C,C,C,C,C,C,C,C,C,C],[D,C,C,b,b,C,C,C,C,b,b,D,D,D,D,b,b,b,D,D,C,r1,C,D,D,D,D,D,D,D,D,b,D],[D,C,C,b,b,C,C,C,C,b,b,b,b,b,D,b,b,b,D,D,C,r1,C,D,D,D,D,D,D,D,D,b,D],[C,C,C,b,b,b,C,C,C,b,b,b,b,b,b,b,b,b,b,b,C,r1,C,b,b,b,b,b,b,b,b,b,b],[b,C,C,b,b,b,C,C,C,b,b,b,b,b,b,b,b,b,b,b,C,r1,C,b,b,b,b,b,b,b,b,b,b],[D,C,C,b,b,b,C,C,C,D,D,D,D,D,D,b,b,b,D,D,C,r1,C,D,D,D,D,D,D,D,D,b,D],[D,C,C,b,b,b,C,C,C,D,D,D,D,D,D,b,b,b,D,D,C,r1,C,D,D,D,D,D,D,D,D,b,D],[D,C,C,b,b,b,C,C,C,D,D,b,D,b,D,b,b,b,D,D,C,r1,C,D,D,D,D,D,D,D,D,b,D],[D,C,C,b,b,b,C,C,C,D,D,b,b,b,D,b,b,b,D,D,C,r1,C,D,D,D,D,D,D,D,D,b,D],[b,C,C,b,b,b,C,C,C,D,D,b,b,b,b,b,b,b,D,D,C,r1,C,b,b,b,b,b,D,b,b,b,D],[b,C,C,b,b,b,C,C,C,D,D,b,b,b,D,b,b,b,D,D,C,r1,C,D,D,D,D,D,D,D,D,b,D],[b,C,C,b,b,b,C,C,C,b,b,b,b,b,D,b,b,b,D,D,C,r1,C,D,D,D,D,D,D,D,D,b,D],[b,C,C,b,b,b,C,C,C,b,b,b,b,b,D,b,b,b,D,D,C,r1,C,D,D,D,D,D,D,D,D,b,D],[b,C,C,b,b,b,C,C,C,b,b,b,b,b,D,b,b,b,D,D,C,r1,C,D,D,D,D,D,D,D,D,b,D],[D,C,C,b,b,b,C,C,C,D,b,D,D,D,D,b,b,b,D,D,C,r1,C,D,D,D,D,D,D,D,D,b,D],[D,C,C,b,b,b,C,C,C,D,D,D,D,D,D,b,b,b,D,D,C,r1,C,D,D,D,D,D,D,D,D,b,D],[D,C,C,b,D,b,C,C,C,D,D,b,D,D,D,b,b,b,D,D,C,r1,C,D,D,D,D,D,D,D,D,b,D],[D,C,C,b,D,b,C,C,C,D,D,D,D,D,D,b,b,b,D,D,C,r1,C,D,D,D,D,D,D,D,D,b,D],[b,C,C,b,b,b,C,C,C,b,b,b,b,b,b,b,b,b,b,b,C,r1,C,b,b,b,b,b,b,b,b,b,D],[D,C,C,b,b,b,C,C,C,D,D,D,D,D,D,b,b,b,D,C,C,r1,C,D,D,D,D,D,D,D,D,b,D],[D,D,D,D,D,D,D,D,D,D,D,D,D,D,D,D,D,D,D,D,C,D,D,D,D,D,D,D,D,D,D,D,D],[b,C,C,b,b,b,C,C,C,b,b,b,b,b,D,b,b,b,D,D,C,r1,C,D,D,D,D,D,D,D,D,b,D],[b,C,C,b,b,b,C,C,C,b,b,b,b,b,b,b,b,b,b,b,C,r1,C,b,b,b,b,b,b,b,b,b,b],[D,C,C,b,b,b,C,C,C,D,b,D,D,D,D,b,b,b,D,D,C,r1,C,D,D,D,b,b,D,D,D,b,D],[D,C,C,b,b,b,C,C,C,D,b,D,D,D,D,b,b,b,D,D,C,r1,C,D,D,D,D,b,D,D,D,b,D],[D,C,C,b,b,b,C,C,C,D,b,D,D,D,D,b,b,b,D,D,C,r1,C,b,b,b,b,D,D,D,D,b,D],[D,C,C,b,b,b,C,C,C,D,b,D,D,D,D,b,b,b,D,D,C,r1,C,D,D,D,b,b,D,D,D,b,D],[D,C,C,b,b,b,C,C,C,D,b,D,D,D,D,b,b,b,D,D,C,r1,C,D,D,D,D,b,D,D,D,b,D],[D,C,C,b,b,b,C,C,C,D,D,D,D,D,D,b,b,b,D,D,C,r1,C,D,D,D,D,D,b,D,D,b,D],[D,C,C,b,b,b,C,C,C,D,b,D,D,D,D,b,b,b,D,D,C,r1,C,D,D,D,D,D,D,D,b,b,D],[D,C,C,b,b,b,C,C,C,D,b,D,D,D,D,b,b,b,D,D,C,r1,C,D,D,D,D,D,D,D,D,b,D],[b,C,C,b,b,b,C,C,C,b,b,b,b,b,D,b,b,b,D,D,C,r1,C,D,D,D,D,D,D,D,D,b,D],[D,C,C,b,b,D,C,C,C,D,D,D,D,D,D,D,D,D,D,D,C,r1,C,D,D,D,D,D,D,D,D,b,D]];class zr{constructor(){d(this,"_rules",new Map)}add(t,e){this._rules.set(t,e)}shouldBreak(t,e){for(const n of this._rules.values())if(n(t,e))return!0;return!1}}const Xr=new Uint8Array([0,8,14,0,0,0,0,0,176,232,0,0,1,181,15,74,240,237,157,11,140,93,69,25,199,231,178,187,183,123,31,187,237,46,108,193,194,22,104,41,200,242,48,128,104,16,129,152,162,64,42,10,193,42,24,121,104,2,65,177,4,9,69,41,193,104,73,35,193,84,20,104,144,152,74,140,109,80,1,149,87,12,175,68,64,162,60,42,9,136,196,70,194,35,40,132,84,222,34,40,18,255,195,153,113,103,103,231,253,58,183,244,158,228,151,57,103,158,223,124,243,205,227,204,57,231,222,141,3,132,220,0,110,5,119,129,191,129,127,128,127,130,255,130,129,65,66,58,131,254,238,56,88,0,22,129,41,240,1,240,97,135,116,71,128,163,12,225,199,130,229,224,100,112,58,88,1,86,130,11,193,197,66,188,75,192,247,193,85,224,26,176,17,220,0,174,7,183,128,59,193,239,192,67,224,81,240,56,75,251,36,115,159,3,47,129,55,192,155,128,12,17,50,12,230,129,113,176,0,44,2,83,96,95,112,16,56,20,44,101,225,203,192,9,44,156,94,127,30,124,9,124,5,124,21,156,7,46,4,23,179,240,239,130,43,192,143,216,245,79,193,117,67,85,249,55,195,189,3,220,203,242,167,242,61,0,247,17,176,25,252,21,60,11,30,27,168,174,183,128,87,216,245,91,112,27,205,42,77,11,238,24,152,0,147,205,42,124,11,139,191,164,89,185,123,179,184,156,3,154,211,28,194,56,2,124,140,33,198,53,113,12,226,30,47,197,63,11,229,157,228,145,135,11,95,20,242,251,50,206,87,128,149,224,34,176,166,57,93,223,181,56,95,7,214,75,229,111,196,245,213,194,245,181,184,254,21,248,141,144,150,114,23,75,119,159,224,191,137,234,20,60,209,172,236,158,242,44,206,159,3,47,130,55,192,59,160,57,7,233,160,251,209,57,85,30,19,112,39,193,30,115,166,203,221,23,231,7,206,209,215,243,35,8,59,220,16,238,194,39,144,254,83,224,179,224,20,112,6,56,27,156,15,190,9,86,131,75,193,229,96,29,88,15,54,176,50,175,99,238,205,112,239,0,247,130,7,193,163,96,51,11,123,6,238,243,224,37,141,156,175,9,254,111,225,188,49,60,147,237,132,243,54,24,5,243,193,66,176,4,236,7,14,6,135,129,143,131,99,193,114,112,50,56,29,172,0,43,135,171,252,47,128,251,109,240,29,118,253,61,184,235,134,253,117,182,158,165,217,0,247,58,143,244,55,7,148,117,187,148,230,30,225,250,90,102,99,15,192,239,17,176,121,184,234,207,207,12,251,241,2,120,21,252,155,234,187,5,61,131,241,86,117,190,160,101,78,187,72,8,159,178,196,237,211,167,79,58,248,56,80,183,28,125,250,244,233,211,167,79,159,62,125,182,46,246,239,209,251,182,131,91,51,247,67,180,251,32,173,106,47,143,158,31,129,243,95,10,97,71,181,236,233,63,141,56,159,99,241,78,129,251,49,184,147,224,12,156,159,205,242,62,31,238,69,96,13,88,11,126,0,174,6,63,105,85,251,56,63,135,123,99,107,230,254,16,229,54,248,253,204,80,246,221,8,191,31,60,0,30,4,15,129,77,224,143,224,225,126,88,63,172,31,214,15,235,135,37,15,251,51,120,2,60,213,170,246,76,235,228,249,86,189,212,93,255,62,125,122,153,216,117,236,203,232,99,111,130,183,91,225,207,233,72,91,237,63,12,255,121,96,39,176,43,216,75,138,183,15,174,15,2,135,130,165,96,25,56,174,93,201,117,34,220,211,218,245,143,63,59,204,173,184,18,252,9,116,231,233,57,26,92,2,238,84,132,189,45,93,127,112,140,144,243,192,45,96,203,88,229,183,219,56,33,95,0,87,130,95,131,151,193,211,173,74,119,167,130,107,192,147,84,135,29,66,14,0,4,247,31,159,233,84,215,34,23,131,43,26,211,220,203,226,114,182,224,122,223,46,33,159,4,95,3,95,7,55,129,87,193,129,35,240,3,55,130,87,70,102,230,179,173,49,54,58,83,111,125,250,244,233,179,45,113,252,168,121,238,63,19,243,209,57,154,249,159,114,110,123,246,154,133,135,173,66,216,106,41,237,26,92,175,101,126,203,53,239,94,209,247,178,214,37,126,47,203,196,101,154,250,173,51,212,155,178,30,225,251,209,119,229,20,241,126,193,252,110,178,228,97,227,118,133,126,85,240,248,247,176,248,191,23,202,125,152,157,63,46,248,109,166,235,48,240,119,232,249,5,184,175,180,171,119,195,222,130,219,192,250,97,78,167,186,158,11,119,71,176,51,187,190,0,105,23,119,166,247,21,247,193,249,65,157,105,25,14,197,249,249,112,151,194,93,6,142,5,203,193,201,29,181,204,13,216,224,233,157,105,185,22,130,21,138,184,60,254,42,176,82,40,143,198,191,8,215,107,88,30,107,225,174,99,225,116,15,116,61,206,55,26,242,187,161,163,214,59,221,119,165,123,171,183,34,252,174,206,204,52,247,225,122,19,245,3,127,1,79,179,60,158,135,251,50,59,127,29,238,219,154,114,229,250,12,98,93,214,1,243,192,68,119,118,89,147,221,234,124,73,119,186,110,54,246,67,220,131,187,213,187,127,135,9,121,30,137,243,163,193,113,221,114,253,203,133,19,123,76,158,58,56,141,233,224,76,131,46,206,210,132,157,11,255,85,93,55,219,200,73,104,221,87,39,108,127,250,110,226,165,221,233,115,58,151,92,198,174,175,130,251,227,66,182,182,81,83,206,245,221,234,221,201,27,133,246,186,173,155,255,153,86,104,61,238,102,114,222,223,3,246,85,39,155,28,219,232,49,196,219,12,158,242,108,211,103,183,2,253,202,182,177,165,59,253,174,249,182,202,235,158,227,201,127,104,252,17,232,83,177,54,236,140,148,25,155,82,49,15,242,238,144,64,102,170,199,93,70,42,119,49,220,41,112,192,72,253,246,46,218,61,253,70,64,23,78,229,62,132,233,225,112,184,75,71,102,167,95,6,191,19,60,116,117,34,139,123,90,132,30,232,122,239,204,204,122,212,201,127,206,200,204,240,111,20,104,207,111,49,157,173,73,212,143,14,115,144,217,54,174,175,69,30,151,143,84,223,145,252,144,185,235,71,170,176,13,35,254,243,248,245,72,115,11,184,19,252,86,72,255,7,156,63,12,30,7,79,10,254,207,225,252,69,240,58,248,23,120,135,133,13,226,222,191,51,58,29,111,28,231,243,217,245,66,184,123,142,206,94,55,236,47,236,23,156,202,210,125,136,249,125,148,185,71,194,125,77,40,255,152,209,106,159,129,158,159,196,220,83,225,158,33,229,191,255,232,204,122,158,141,235,115,13,251,19,180,63,174,26,245,215,223,123,137,213,84,183,131,225,115,87,47,141,177,161,108,24,104,252,159,9,66,172,140,129,37,96,17,99,15,135,52,174,236,13,112,187,65,32,22,193,208,75,90,228,221,199,103,239,158,83,63,122,108,39,132,161,9,201,60,230,210,45,185,142,35,195,140,174,64,83,186,206,13,97,117,216,174,96,153,114,249,180,45,27,236,122,130,244,143,169,109,28,85,159,220,83,227,159,131,65,214,14,180,207,183,4,168,125,238,206,224,231,124,140,24,35,211,54,205,211,241,184,227,82,90,145,1,233,154,144,188,253,109,247,204,249,247,122,249,189,6,183,15,209,6,248,181,171,206,100,155,18,211,140,91,210,150,160,84,191,221,26,24,12,76,163,35,68,134,208,118,148,215,42,182,182,173,219,238,114,66,117,65,199,124,62,103,113,255,22,209,207,97,189,206,152,208,110,19,138,243,38,115,109,243,247,72,15,193,219,197,103,253,161,91,175,139,237,223,22,144,215,241,62,58,111,10,46,167,110,219,206,61,118,187,222,31,181,53,186,207,61,182,52,137,189,238,29,75,28,89,127,170,184,60,142,171,62,82,183,235,123,193,166,228,241,247,189,132,143,30,186,196,111,140,115,25,239,114,218,95,78,157,200,105,232,216,204,251,180,120,143,41,222,215,149,144,85,39,191,236,175,139,87,210,214,115,149,43,218,155,207,253,191,169,125,83,244,159,208,121,44,119,25,49,245,207,105,19,41,245,107,203,203,87,190,49,70,201,113,77,238,47,117,180,143,216,127,82,180,143,152,167,169,175,202,126,54,29,133,206,59,124,189,173,202,155,251,183,20,229,169,198,209,186,219,39,5,166,118,177,201,16,179,14,80,245,75,87,123,81,233,160,116,123,196,234,59,181,28,33,253,161,69,236,237,95,106,62,42,213,255,67,108,90,182,185,58,250,189,78,206,84,122,55,233,192,54,78,228,186,15,224,227,176,235,250,110,107,232,255,174,109,146,187,255,155,218,208,117,191,95,148,185,244,51,130,146,99,145,105,76,138,209,127,76,93,234,208,117,10,189,187,150,151,219,254,93,242,214,173,19,101,82,142,199,190,54,233,219,223,197,118,112,29,211,57,123,245,8,178,92,173,200,252,186,30,122,228,247,133,189,170,27,174,31,95,187,80,233,100,92,66,244,27,20,206,199,216,117,83,193,32,75,39,63,147,176,141,7,169,239,187,229,231,82,220,165,71,67,112,99,198,215,84,107,179,49,7,255,210,115,162,235,24,197,251,71,236,216,46,218,150,110,109,193,159,95,199,140,139,58,121,99,251,160,107,249,186,244,239,171,153,5,53,179,115,205,228,90,75,153,198,13,121,157,100,234,71,185,169,179,236,210,229,211,163,65,102,142,31,190,178,218,198,189,80,92,215,129,161,178,251,148,175,91,251,228,148,193,167,222,169,203,159,138,40,63,245,154,142,235,126,72,184,230,182,39,174,127,83,237,3,164,106,63,190,14,228,242,143,75,254,178,141,241,247,209,114,200,95,199,189,179,205,174,74,174,205,100,253,136,215,188,61,98,215,45,177,247,114,190,246,107,186,167,203,133,73,191,60,78,93,247,125,220,182,92,245,23,75,234,241,47,246,222,73,164,228,145,67,54,81,159,163,142,240,113,86,60,23,253,92,112,145,223,71,22,213,218,182,14,66,108,136,167,141,221,143,208,29,161,118,227,187,254,201,57,159,200,118,230,243,222,132,78,230,212,251,63,185,112,93,247,219,218,75,182,185,24,91,21,219,220,212,23,84,182,145,178,239,132,126,91,144,2,185,236,58,108,131,175,117,117,125,132,51,40,93,239,192,100,222,85,144,95,142,183,61,153,249,173,206,0,153,254,174,116,64,113,45,198,165,204,21,160,249,241,111,96,117,186,108,91,16,101,160,229,12,49,116,186,25,102,178,53,132,184,166,248,166,254,215,86,232,180,43,93,207,87,164,245,89,103,200,253,216,229,27,52,94,63,241,123,42,249,27,43,151,244,161,247,99,226,248,210,50,208,182,132,251,166,109,43,206,99,202,104,121,180,147,235,156,21,179,159,192,237,93,110,195,54,113,107,23,49,157,207,187,195,174,118,147,227,251,72,83,217,170,239,12,85,223,169,154,208,149,231,155,206,85,47,114,251,230,40,207,71,166,208,186,168,228,146,253,84,225,220,149,191,75,182,181,173,74,23,114,29,76,186,51,217,144,139,61,132,180,181,173,220,20,253,193,164,27,211,117,10,251,73,149,191,171,206,98,117,23,43,151,47,115,19,200,64,15,241,57,113,168,172,252,222,216,167,204,28,58,149,239,213,99,242,138,153,87,117,248,206,31,57,233,6,166,145,237,34,135,92,62,125,40,69,89,161,50,184,234,210,39,31,213,181,171,191,156,71,108,253,92,245,238,154,38,71,255,54,213,219,166,55,158,15,15,31,85,148,51,73,210,140,39,33,117,212,233,48,133,46,99,218,93,101,115,92,127,170,56,41,100,46,165,127,91,189,75,227,186,191,45,219,178,201,166,119,215,196,87,245,7,57,76,236,119,58,61,169,228,80,229,163,146,103,210,80,174,10,149,174,38,37,74,217,136,120,61,160,129,134,241,231,146,178,252,244,104,4,184,57,230,225,80,123,231,50,149,236,35,174,122,170,163,76,95,183,78,189,149,44,187,148,173,164,178,107,25,211,62,170,252,14,130,188,135,219,36,110,207,87,108,184,190,183,164,123,54,163,27,163,108,152,246,253,197,125,106,34,213,83,28,3,197,107,122,152,250,132,156,63,127,199,70,181,47,174,210,211,246,12,221,94,58,81,148,161,171,147,174,44,62,166,187,212,197,247,249,119,46,248,239,75,54,4,191,33,225,220,86,23,34,165,181,197,27,18,206,197,116,161,207,238,117,113,85,254,252,89,140,232,71,219,96,49,59,183,185,185,41,85,142,173,124,151,122,219,194,22,147,217,207,128,135,36,120,155,244,154,254,83,213,95,101,127,139,137,218,14,99,100,142,193,150,191,109,125,152,163,29,66,117,227,251,188,43,102,206,77,53,127,235,214,19,190,239,75,164,150,65,156,227,68,92,245,43,203,228,251,30,71,14,125,234,100,240,177,15,215,103,161,161,240,239,131,248,90,194,231,253,26,159,103,194,49,239,51,185,148,239,139,143,126,92,236,199,86,94,142,239,26,114,63,187,167,101,212,241,205,148,169,189,235,60,66,244,77,15,221,252,97,122,167,116,74,227,239,75,157,223,223,77,101,212,171,171,45,139,58,158,32,246,123,46,57,239,16,157,135,126,199,228,58,110,248,212,223,119,140,146,243,142,29,175,119,4,59,21,164,116,121,190,123,32,41,191,237,148,243,174,227,251,78,89,134,247,215,76,206,181,82,87,211,166,244,183,141,39,136,223,239,32,231,254,141,229,210,240,61,151,210,229,202,235,227,216,117,225,48,153,222,43,226,191,37,45,239,179,209,247,96,114,173,79,85,243,9,47,215,213,149,211,153,230,170,134,224,82,249,249,94,129,248,188,200,86,142,13,254,222,170,234,158,185,14,91,229,101,207,103,46,175,167,44,171,74,135,13,201,245,217,99,144,247,25,154,158,121,196,66,2,101,207,85,62,215,109,67,58,231,122,74,181,167,84,130,148,123,108,190,136,253,137,218,110,75,10,231,239,166,218,250,155,235,26,70,28,175,118,35,213,190,92,29,253,217,182,222,239,133,177,134,207,73,41,101,240,93,115,202,109,87,151,30,100,157,184,220,207,213,37,31,183,165,58,202,157,146,202,143,89,79,228,182,55,151,103,152,174,182,224,210,246,186,114,76,107,178,18,246,228,170,19,91,63,176,201,95,234,247,40,196,113,126,76,145,62,102,12,138,197,197,190,75,247,145,28,121,166,236,167,42,221,213,113,152,246,73,117,123,161,185,214,162,174,242,202,178,211,195,69,215,252,55,251,82,218,149,139,29,119,200,236,113,199,117,191,144,143,49,165,214,43,57,199,179,208,57,211,71,46,213,248,94,215,24,192,203,20,191,151,118,25,15,228,124,228,247,143,84,118,198,207,125,126,95,96,92,202,63,100,125,229,219,150,186,247,181,38,164,60,235,154,203,92,234,108,122,14,94,114,124,201,209,127,85,101,212,113,136,178,168,108,222,7,158,223,148,116,174,170,187,202,159,191,31,40,30,49,242,184,180,163,107,251,152,214,56,170,177,208,119,28,229,54,45,143,51,186,50,93,230,178,88,251,228,191,159,202,223,195,145,127,131,215,118,15,20,114,63,32,150,47,199,245,105,191,216,250,203,191,93,236,66,233,241,49,102,190,183,233,52,86,127,177,196,254,14,156,239,243,123,209,54,67,127,115,174,174,246,143,89,243,233,214,107,177,71,204,28,66,132,115,121,61,227,242,110,28,37,100,15,57,70,255,169,219,132,183,203,184,144,87,9,187,19,235,31,99,63,41,177,149,45,251,169,214,219,99,158,186,244,109,191,82,54,33,207,161,226,252,227,211,63,114,216,187,13,83,249,117,204,177,114,253,67,222,195,245,157,111,82,233,143,191,187,154,186,109,98,237,211,5,23,125,218,250,123,170,246,136,237,15,49,99,187,73,254,84,135,234,158,206,197,182,197,249,120,130,148,63,196,242,67,246,71,93,143,148,227,71,105,218,100,246,111,232,229,28,163,117,196,62,47,228,121,132,142,189,37,244,47,30,13,1,57,158,236,199,227,19,77,252,220,50,235,228,244,205,103,208,0,47,71,229,199,93,211,26,41,247,92,18,99,31,169,218,45,116,62,10,221,47,54,245,53,221,252,234,211,231,98,229,240,89,227,170,224,97,169,215,103,37,198,146,216,54,85,205,213,177,253,40,197,189,141,136,252,13,170,238,127,150,108,235,143,94,155,143,93,203,143,217,123,168,123,61,34,203,31,35,71,236,119,179,169,72,209,94,185,222,93,44,49,230,152,198,96,219,115,159,82,253,205,54,246,228,30,223,82,143,129,190,117,46,217,246,190,243,98,110,114,181,173,74,175,185,230,65,159,54,20,227,170,158,141,197,140,185,41,116,22,59,255,196,150,149,218,206,83,146,66,63,177,117,9,181,83,223,126,159,123,158,74,161,203,16,185,100,157,197,236,23,250,252,6,123,142,242,83,180,75,234,249,223,102,159,114,250,208,250,243,163,14,27,18,105,91,174,125,9,249,13,65,113,125,153,250,119,9,83,231,215,205,32,111,142,117,250,46,133,80,149,61,169,241,79,129,170,13,74,150,161,243,23,127,75,84,165,7,85,120,105,22,42,144,229,83,201,107,35,133,108,62,229,249,200,163,146,79,142,235,90,151,73,67,158,62,182,165,114,117,101,233,210,134,246,1,211,216,29,219,134,174,115,68,206,188,115,213,205,102,183,46,237,23,154,191,107,153,41,40,173,199,144,114,76,125,189,212,239,58,139,191,117,106,250,31,175,212,54,225,59,238,250,150,153,218,174,82,235,61,119,249,169,229,79,37,95,174,254,26,91,63,221,122,199,197,126,125,214,18,62,246,238,179,70,40,185,46,203,85,134,106,45,19,83,158,105,125,20,179,38,172,99,13,28,187,126,141,189,55,143,221,31,41,165,39,215,122,255,15]),Wr=new Uint8Array(new Uint32Array([305419896]).buffer)[0]===18,c4=(r,t,e)=>{const n=r[t];r[t]=r[e],r[e]=n},Yr=r=>{const t=r.length;for(let e=0;e<t;e+=4)c4(r,e,e+3),c4(r,e+1,e+2)},Vr=r=>{Wr&&Yr(r)},a6=0,h4=-3;let y2=class{constructor(){d(this,"table",new Uint16Array(16));d(this,"trans",new Uint16Array(288))}},jr=class{constructor(t,e){d(this,"source");d(this,"dest");d(this,"sourceIndex");d(this,"tag");d(this,"bitcount");d(this,"destLen");d(this,"ltree");d(this,"dtree");this.source=t,this.sourceIndex=0,this.tag=0,this.bitcount=0,this.dest=e,this.destLen=0,this.ltree=new y2,this.dtree=new y2}};const f4=new y2,d4=new y2,o6=new Uint8Array(30),u6=new Uint16Array(30),_4=new Uint8Array(30),g4=new Uint16Array(30),Kr=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),D4=new y2,j1=new Uint8Array(320);function p4(r,t,e,n){let s,i;for(s=0;s<e;++s)r[s]=0;for(s=0;s<30-e;++s)r[s+e]=s/e|0;for(i=n,s=0;s<30;++s)t[s]=i,i+=1<<r[s]}function qr(r,t){let e;for(e=0;e<7;++e)r.table[e]=0;for(r.table[7]=24,r.table[8]=152,r.table[9]=112,e=0;e<24;++e)r.trans[e]=256+e;for(e=0;e<144;++e)r.trans[24+e]=e;for(e=0;e<8;++e)r.trans[168+e]=280+e;for(e=0;e<112;++e)r.trans[176+e]=144+e;for(e=0;e<5;++e)t.table[e]=0;for(t.table[5]=32,e=0;e<32;++e)t.trans[e]=e}const v4=new Uint16Array(16);function l6(r,t,e,n){let s,i;for(s=0;s<16;++s)r.table[s]=0;for(s=0;s<n;++s)r.table[t[e+s]]++;for(r.table[0]=0,i=0,s=0;s<16;++s)v4[s]=i,i+=r.table[s];for(s=0;s<n;++s)t[e+s]&&(r.trans[v4[t[e+s]]++]=s)}function Zr(r){r.bitcount--||(r.tag=r.source[r.sourceIndex++],r.bitcount=7);const t=r.tag&1;return r.tag>>>=1,t}function K1(r,t,e){if(!t)return e;for(;r.bitcount<24;)r.tag|=r.source[r.sourceIndex++]<<r.bitcount,r.bitcount+=8;const n=r.tag&65535>>>16-t;return r.tag>>>=t,r.bitcount-=t,n+e}function c6(r,t){for(;r.bitcount<24;)r.tag|=r.source[r.sourceIndex++]<<r.bitcount,r.bitcount+=8;let e=0,n=0,s=0,i=r.tag;do n=2*n+(i&1),i>>>=1,++s,e+=t.table[s],n-=t.table[s];while(n>=0);return r.tag=i,r.bitcount-=s,t.trans[e+n]}function Jr(r,t,e){let n,s,i;const a=K1(r,5,257),o=K1(r,5,1),u=K1(r,4,4);for(n=0;n<19;++n)j1[n]=0;for(n=0;n<u;++n){const l=K1(r,3,0);j1[Kr[n]]=l}for(l6(D4,j1,0,19),s=0;s<a+o;){const l=c6(r,D4);switch(l){case 16:{const c=j1[s-1];for(i=K1(r,2,3);i;--i)j1[s++]=c;break}case 17:for(i=K1(r,3,3);i;--i)j1[s++]=0;break;case 18:for(i=K1(r,7,11);i;--i)j1[s++]=0;break;default:j1[s++]=l;break}}l6(t,j1,0,a),l6(e,j1,a,o)}function m4(r,t,e){for(;;){let n=c6(r,t);if(n===256)return a6;if(n<256)r.dest[r.destLen++]=n;else{let s;n-=257;const i=K1(r,o6[n],u6[n]),a=c6(r,e),o=r.destLen-K1(r,_4[a],g4[a]);for(s=o;s<o+i;++s)r.dest[r.destLen++]=r.dest[s]}}}function Qr(r){let t,e,n;for(;r.bitcount>8;)r.sourceIndex--,r.bitcount-=8;if(t=r.source[r.sourceIndex+1],t=256*t+r.source[r.sourceIndex],e=r.source[r.sourceIndex+3],e=256*e+r.source[r.sourceIndex+2],t!==(~e&65535))return h4;for(r.sourceIndex+=4,n=t;n;--n)r.dest[r.destLen++]=r.source[r.sourceIndex++];return r.bitcount=0,a6}function b4(r,t){const e=new jr(r,t);let n,s,i;do{switch(n=Zr(e),s=K1(e,2,0),s){case 0:i=Qr(e);break;case 1:i=m4(e,f4,d4);break;case 2:Jr(e,e.ltree,e.dtree),i=m4(e,e.ltree,e.dtree);break;default:i=h4}if(i!==a6)throw new Error("Data error")}while(!n);return e.destLen<e.dest.length?typeof e.dest.slice=="function"?e.dest.slice(0,e.destLen):e.dest.subarray(0,e.destLen):e.dest}qr(f4,d4),p4(o6,u6,4,3),p4(_4,g4,2,1),o6[28]=0,u6[28]=258;const h6=11,xe=5,e8=h6-xe,t8=65536>>h6,n8=(1<<e8)-1,Q2=2,f6=(1<<xe)-1,y4=65536>>xe,r8=1024>>xe,s8=y4+r8+32,i8=1<<Q2;class a8{constructor(t){d(this,"highStart");d(this,"errorValue");d(this,"data");const e=typeof t.readUInt32BE=="function"&&typeof t.slice=="function";if(e||t instanceof Uint8Array){let n;if(e)this.highStart=t.readUInt32LE(0),this.errorValue=t.readUInt32LE(4),n=t.readUInt32LE(8),t=t.slice(12);else{const s=new DataView(t.buffer);this.highStart=s.getUint32(0,!0),this.errorValue=s.getUint32(4,!0),n=s.getUint32(8,!0),t=t.subarray(12)}t=b4(t,new Uint8Array(n)),t=b4(t,new Uint8Array(n)),Vr(t),this.data=new Uint32Array(t.buffer)}else({data:this.data,highStart:this.highStart,errorValue:this.errorValue}=t)}get(t){let e;return t<0||t>1114111?this.errorValue:t<55296||t>56319&&t<=65535?(e=(this.data[t>>xe]<<Q2)+(t&f6),this.data[e]):t<=65535?(e=(this.data[y4+(t-55296>>xe)]<<Q2)+(t&f6),this.data[e]):t<this.highStart?(e=this.data[s8-t8+(t>>h6)],e=this.data[e+(t>>xe&n8)],e=(e<<Q2)+(t&f6),this.data[e]):this.data[this.data.length-i8]}}const o8=new a8(Xr);function d6(r){switch(r){case Mr:return i4;case Nr:case Ur:case Hr:return i4;case Pr:return Rr;default:return r}}function _6(r){switch(r){case i6:case u4:return J2;case b2:return Lr;default:return r}}class u8{constructor(t){d(this,"_pos",0);d(this,"_lastPos",0);d(this,"_curClass",null);d(this,"_codePoint",null);d(this,"_nextClass",null);d(this,"_LB8a",!1);d(this,"_LB21a",!1);d(this,"_LB30a",0);d(this,"_rule",new zr);this.string=t}use(t){return t(this),this}addRule(t,e){return this._rule.add(t,e),this}nextBreak(){if(this._curClass==null){const t=this._nextCharClass();this._curClass=_6(t),this._nextClass=t,this._LB8a=t===o4,this._LB30a=0}for(;this._pos<this.string.length;){this._lastPos=this._pos;const t=this._nextClass;if(this._nextClass=this._nextCharClass(),this._curClass===J2||this._curClass===s6&&this._nextClass!==i6)return this._curClass=_6(d6(this._nextClass)),new Z2(this._lastPos,!0);if(this._rule.shouldBreak(this._codePoint,this._nextClass))return this._curClass=_6(d6(this._nextClass)),new Z2(this._lastPos);let e=this._getSimpleBreak();if(e===null&&(e=this._getPairTableBreak(t)),this._LB8a=this._nextClass===o4,e)return new Z2(this._lastPos)}return this._lastPos<this.string.length?(this._lastPos=this.string.length,new Z2(this.string.length)):null}_getNextCodePoint(){const t=this.string.charCodeAt(this._pos++),e=this.string.charCodeAt(this._pos);return t>=55296&&t<=56319&&e>=56320&&e<=57343?(this._pos++,(t-55296)*1024+(e-56320)+65536):t}_nextCharClass(){const t=this._getNextCodePoint(),e=o8.get(t);return this._codePoint=t,d6(e)}_getSimpleBreak(){switch(this._nextClass){case b2:return!1;case J2:case i6:case u4:return this._curClass=J2,!1;case s6:return this._curClass=s6,!1}return null}_getPairTableBreak(t){let e=!1;switch(Gr[this._curClass][this._nextClass]){case D:e=!0;break;case b:e=t===b2;break;case r1:if(e=t===b2,!e)return e=!1,e;break;case l4:if(t!==b2)return e;break}return this._LB8a&&(e=!1),this._LB21a&&(this._curClass===kr||this._curClass===Ir)?(e=!1,this._LB21a=!1):this._LB21a=this._curClass===$r,this._curClass===a4?(this._LB30a++,this._LB30a===2&&this._nextClass===a4&&(e=!0,this._LB30a=0)):this._LB30a=0,this._curClass=this._nextClass,e}}const l8=9;function c8(r){r.addRule("break_before_tab",t=>t===l8)}function F4(r){return[" "," "," "].includes(r)}function C4(r){return F4(r)||c2(r)||X2(r)||W2(r)||Mt(r)}function g6(r,t){return F4(r)?{stretchability:[0,t/2],shrinkability:[0,t/3]}:X2(r)?{stretchability:[0,0],shrinkability:[0,t/2]}:W2(r)?{stretchability:[0,0],shrinkability:[t/2,0]}:Mt(r)?{stretchability:[0,0],shrinkability:[t/4,t/4]}:{stretchability:[0,0],shrinkability:[0,0]}}function h8(r,t,e){return D6(A1.WORD,r,t,e)}function Ye(r,t,e,n){return D6(A1.LETTER,r,t,e,n)}function E4(r,t){return D6(A1.TAB,g.DataStreamTreeTokenType.TAB,r,t)}function D6(r,t,e,n,s){const{fontStyle:i,textStyle:a,charSpace:o=1,gridType:u=g.GridType.LINES,snapToGrid:l=g.BooleanNumber.FALSE}=e,c=[g.DataStreamTreeTokenType.SECTION_BREAK,g.DataStreamTreeTokenType.TABLE_START,g.DataStreamTreeTokenType.TABLE_END,g.DataStreamTreeTokenType.TABLE_ROW_START,g.DataStreamTreeTokenType.TABLE_ROW_END,g.DataStreamTreeTokenType.TABLE_CELL_START,g.DataStreamTreeTokenType.TABLE_CELL_END,g.DataStreamTreeTokenType.CUSTOM_RANGE_START,g.DataStreamTreeTokenType.CUSTOM_RANGE_END,g.DataStreamTreeTokenType.COLUMN_BREAK,g.DataStreamTreeTokenType.PAGE_BREAK,g.DataStreamTreeTokenType.DOCS_END,g.DataStreamTreeTokenType.CUSTOM_BLOCK];let h=g.DataStreamTreeTokenType.LETTER;if(c.indexOf(t)>-1)return{content:"",ts:a,fontStyle:i,width:0,bBox:{width:0,ba:0,bd:0,aba:0,abd:0,sp:0,sbr:0,sbo:0,spr:0,spo:0},xOffset:0,left:0,isJustifiable:!1,adjustability:g6(t,0),glyphType:A1.PLACEHOLDER,streamType:t,count:1};t===g.DataStreamTreeTokenType.PARAGRAPH&&(h=g.DataStreamTreeTokenType.PARAGRAPH);let f=null,_=0;s&&s.boundingBox&&s.font?f=ee.getBBoxFromGlyphInfo(s,i):f=ee.getTextSize(t,i);const{width:p=0}=f;let m=n!=null?n:p;if(e4(u,l)&&(m=p+(h2(t)?o:o/2),u===g.GridType.SNAP_TO_CHARS&&(_=(m-p)/2)),s&&s.kerning!==0&&s.font){const v=Ut(i.fontSize)/s.font.unitsPerEm,F=s.kerning*v;m+=F,_+=F}return{content:t,ts:a,fontStyle:i,width:m,bBox:f,xOffset:_,left:0,glyphType:r,streamType:h,isJustifiable:C4(t),adjustability:g6(t,m),count:t.length}}function f8(r,t,e){const{bBox:n,symbol:s,ts:i,fontStyle:a,bulletAlign:o=g.BulletAlignment.START,bulletType:u=!1}=t,l=n.width,c=Math.ceil(l/e);let h=(c<2?2:c)*e,f=0;u&&(o===g.BulletAlignment.CENTER?(f=-l/2,h-=f):o===g.BulletAlignment.END&&(f=-l,h-=f));const _=d8(r,t);return{content:s,ts:i,fontStyle:a,width:h,xOffset:0,bBox:_,left:f,isJustifiable:C4(s),adjustability:g6(s,h),glyphType:A1.LIST,streamType:g.DataStreamTreeTokenType.LETTER,count:0}}function p6(r,t=0){const e=r.length;let n;for(let s=0;s<e;s++){const i=r[s];i.left=n?n.left+n.width:t,n=i}}function et(r,t,e=0){p6(t,e);for(const n of t)n.parent=r;r.glyphGroup.push(...t)}function d8(r,t){const{ba:e,bd:n}=r.bBox,{ba:s,bd:i}=t.bBox;return e+n>s+i?r.bBox:t.bBox}function S4(r,t){r.width-=t,r.adjustability.shrinkability[1]-=t}function T4(r,t){r.width-=t,r.xOffset-=t,r.adjustability.shrinkability[0]-=t}/*! https://mths.be/codepointat v0.2.0 by @mathias */String.prototype.codePointAt||function(){var r=function(){try{var e={},n=Object.defineProperty,s=n(e,e,e)&&n}catch{}return s}(),t=function(e){if(this==null)throw TypeError();var n=String(this),s=n.length,i=e?Number(e):0;if(i!=i&&(i=0),!(i<0||i>=s)){var a=n.charCodeAt(i),o;return a>=55296&&a<=56319&&s>i+1&&(o=n.charCodeAt(i+1),o>=56320&&o<=57343)?(a-55296)*1024+o-56320+65536:a}};r?r(String.prototype,"codePointAt",{value:t,configurable:!0,writable:!0}):String.prototype.codePointAt=t}();var v6=0,x4=-3;function F2(){this.table=new Uint16Array(16),this.trans=new Uint16Array(288)}function _8(r,t){this.source=r,this.sourceIndex=0,this.tag=0,this.bitcount=0,this.dest=t,this.destLen=0,this.ltree=new F2,this.dtree=new F2}var B4=new F2,O4=new F2,m6=new Uint8Array(30),b6=new Uint16Array(30),w4=new Uint8Array(30),A4=new Uint16Array(30),g8=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),R4=new F2,q1=new Uint8Array(320);function $4(r,t,e,n){var s,i;for(s=0;s<e;++s)r[s]=0;for(s=0;s<30-e;++s)r[s+e]=s/e|0;for(i=n,s=0;s<30;++s)t[s]=i,i+=1<<r[s]}function D8(r,t){var e;for(e=0;e<7;++e)r.table[e]=0;for(r.table[7]=24,r.table[8]=152,r.table[9]=112,e=0;e<24;++e)r.trans[e]=256+e;for(e=0;e<144;++e)r.trans[24+e]=e;for(e=0;e<8;++e)r.trans[168+e]=280+e;for(e=0;e<112;++e)r.trans[176+e]=144+e;for(e=0;e<5;++e)t.table[e]=0;for(t.table[5]=32,e=0;e<32;++e)t.trans[e]=e}var k4=new Uint16Array(16);function y6(r,t,e,n){var s,i;for(s=0;s<16;++s)r.table[s]=0;for(s=0;s<n;++s)r.table[t[e+s]]++;for(r.table[0]=0,i=0,s=0;s<16;++s)k4[s]=i,i+=r.table[s];for(s=0;s<n;++s)t[e+s]&&(r.trans[k4[t[e+s]]++]=s)}function p8(r){r.bitcount--||(r.tag=r.source[r.sourceIndex++],r.bitcount=7);var t=r.tag&1;return r.tag>>>=1,t}function Z1(r,t,e){if(!t)return e;for(;r.bitcount<24;)r.tag|=r.source[r.sourceIndex++]<<r.bitcount,r.bitcount+=8;var n=r.tag&65535>>>16-t;return r.tag>>>=t,r.bitcount-=t,n+e}function F6(r,t){for(;r.bitcount<24;)r.tag|=r.source[r.sourceIndex++]<<r.bitcount,r.bitcount+=8;var e=0,n=0,s=0,i=r.tag;do n=2*n+(i&1),i>>>=1,++s,e+=t.table[s],n-=t.table[s];while(n>=0);return r.tag=i,r.bitcount-=s,t.trans[e+n]}function v8(r,t,e){var n,s,i,a,o,u;for(n=Z1(r,5,257),s=Z1(r,5,1),i=Z1(r,4,4),a=0;a<19;++a)q1[a]=0;for(a=0;a<i;++a){var l=Z1(r,3,0);q1[g8[a]]=l}for(y6(R4,q1,0,19),o=0;o<n+s;){var c=F6(r,R4);switch(c){case 16:var h=q1[o-1];for(u=Z1(r,2,3);u;--u)q1[o++]=h;break;case 17:for(u=Z1(r,3,3);u;--u)q1[o++]=0;break;case 18:for(u=Z1(r,7,11);u;--u)q1[o++]=0;break;default:q1[o++]=c;break}}y6(t,q1,0,n),y6(e,q1,n,s)}function I4(r,t,e){for(;;){var n=F6(r,t);if(n===256)return v6;if(n<256)r.dest[r.destLen++]=n;else{var s,i,a,o;for(n-=257,s=Z1(r,m6[n],b6[n]),i=F6(r,e),a=r.destLen-Z1(r,w4[i],A4[i]),o=a;o<a+s;++o)r.dest[r.destLen++]=r.dest[o]}}}function m8(r){for(var t,e,n;r.bitcount>8;)r.sourceIndex--,r.bitcount-=8;if(t=r.source[r.sourceIndex+1],t=256*t+r.source[r.sourceIndex],e=r.source[r.sourceIndex+3],e=256*e+r.source[r.sourceIndex+2],t!==(~e&65535))return x4;for(r.sourceIndex+=4,n=t;n;--n)r.dest[r.destLen++]=r.source[r.sourceIndex++];return r.bitcount=0,v6}function b8(r,t){var e=new _8(r,t),n,s,i;do{switch(n=p8(e),s=Z1(e,2,0),s){case 0:i=m8(e);break;case 1:i=I4(e,B4,O4);break;case 2:v8(e,e.ltree,e.dtree),i=I4(e,e.ltree,e.dtree);break;default:i=x4}if(i!==v6)throw new Error("Data error")}while(!n);return e.destLen<e.dest.length?typeof e.dest.slice=="function"?e.dest.slice(0,e.destLen):e.dest.subarray(0,e.destLen):e.dest}D8(B4,O4),$4(m6,b6,4,3),$4(w4,A4,2,1),m6[28]=0,b6[28]=258;var y8=b8;function Ve(r,t,e,n,s){return Math.pow(1-s,3)*r+3*Math.pow(1-s,2)*s*t+3*(1-s)*Math.pow(s,2)*e+Math.pow(s,3)*n}function re(){this.x1=Number.NaN,this.y1=Number.NaN,this.x2=Number.NaN,this.y2=Number.NaN}re.prototype.isEmpty=function(){return isNaN(this.x1)||isNaN(this.y1)||isNaN(this.x2)||isNaN(this.y2)},re.prototype.addPoint=function(r,t){typeof r=="number"&&((isNaN(this.x1)||isNaN(this.x2))&&(this.x1=r,this.x2=r),r<this.x1&&(this.x1=r),r>this.x2&&(this.x2=r)),typeof t=="number"&&((isNaN(this.y1)||isNaN(this.y2))&&(this.y1=t,this.y2=t),t<this.y1&&(this.y1=t),t>this.y2&&(this.y2=t))},re.prototype.addX=function(r){this.addPoint(r,null)},re.prototype.addY=function(r){this.addPoint(null,r)},re.prototype.addBezier=function(r,t,e,n,s,i,a,o){var u=[r,t],l=[e,n],c=[s,i],h=[a,o];this.addPoint(r,t),this.addPoint(a,o);for(var f=0;f<=1;f++){var _=6*u[f]-12*l[f]+6*c[f],p=-3*u[f]+9*l[f]-9*c[f]+3*h[f],m=3*l[f]-3*u[f];if(p===0){if(_===0)continue;var v=-m/_;0<v&&v<1&&(f===0&&this.addX(Ve(u[f],l[f],c[f],h[f],v)),f===1&&this.addY(Ve(u[f],l[f],c[f],h[f],v)));continue}var F=Math.pow(_,2)-4*m*p;if(!(F<0)){var E=(-_+Math.sqrt(F))/(2*p);0<E&&E<1&&(f===0&&this.addX(Ve(u[f],l[f],c[f],h[f],E)),f===1&&this.addY(Ve(u[f],l[f],c[f],h[f],E)));var S=(-_-Math.sqrt(F))/(2*p);0<S&&S<1&&(f===0&&this.addX(Ve(u[f],l[f],c[f],h[f],S)),f===1&&this.addY(Ve(u[f],l[f],c[f],h[f],S)))}}},re.prototype.addQuad=function(r,t,e,n,s,i){var a=r+.6666666666666666*(e-r),o=t+2/3*(n-t),u=a+1/3*(s-r),l=o+1/3*(i-t);this.addBezier(r,t,a,o,u,l,s,i)};function _1(){this.commands=[],this.fill="black",this.stroke=null,this.strokeWidth=1}_1.prototype.moveTo=function(r,t){this.commands.push({type:"M",x:r,y:t})},_1.prototype.lineTo=function(r,t){this.commands.push({type:"L",x:r,y:t})},_1.prototype.curveTo=_1.prototype.bezierCurveTo=function(r,t,e,n,s,i){this.commands.push({type:"C",x1:r,y1:t,x2:e,y2:n,x:s,y:i})},_1.prototype.quadTo=_1.prototype.quadraticCurveTo=function(r,t,e,n){this.commands.push({type:"Q",x1:r,y1:t,x:e,y:n})},_1.prototype.close=_1.prototype.closePath=function(){this.commands.push({type:"Z"})},_1.prototype.extend=function(r){if(r.commands)r=r.commands;else if(r instanceof re){var t=r;this.moveTo(t.x1,t.y1),this.lineTo(t.x2,t.y1),this.lineTo(t.x2,t.y2),this.lineTo(t.x1,t.y2),this.close();return}Array.prototype.push.apply(this.commands,r)},_1.prototype.getBoundingBox=function(){for(var r=new re,t=0,e=0,n=0,s=0,i=0;i<this.commands.length;i++){var a=this.commands[i];switch(a.type){case"M":r.addPoint(a.x,a.y),t=n=a.x,e=s=a.y;break;case"L":r.addPoint(a.x,a.y),n=a.x,s=a.y;break;case"Q":r.addQuad(n,s,a.x1,a.y1,a.x,a.y),n=a.x,s=a.y;break;case"C":r.addBezier(n,s,a.x1,a.y1,a.x2,a.y2,a.x,a.y),n=a.x,s=a.y;break;case"Z":n=t,s=e;break;default:throw new Error("Unexpected path command "+a.type)}}return r.isEmpty()&&r.addPoint(0,0),r},_1.prototype.draw=function(r){r.beginPath();for(var t=0;t<this.commands.length;t+=1){var e=this.commands[t];e.type==="M"?r.moveTo(e.x,e.y):e.type==="L"?r.lineTo(e.x,e.y):e.type==="C"?r.bezierCurveTo(e.x1,e.y1,e.x2,e.y2,e.x,e.y):e.type==="Q"?r.quadraticCurveTo(e.x1,e.y1,e.x,e.y):e.type==="Z"&&r.closePath()}this.fill&&(r.fillStyle=this.fill,r.fill()),this.stroke&&(r.strokeStyle=this.stroke,r.lineWidth=this.strokeWidth,r.stroke())},_1.prototype.toPathData=function(r){r=r!==void 0?r:2;function t(a){return Math.round(a)===a?""+Math.round(a):a.toFixed(r)}function e(){for(var a=arguments,o="",u=0;u<arguments.length;u+=1){var l=a[u];l>=0&&u>0&&(o+=" "),o+=t(l)}return o}for(var n="",s=0;s<this.commands.length;s+=1){var i=this.commands[s];i.type==="M"?n+="M"+e(i.x,i.y):i.type==="L"?n+="L"+e(i.x,i.y):i.type==="C"?n+="C"+e(i.x1,i.y1,i.x2,i.y2,i.x,i.y):i.type==="Q"?n+="Q"+e(i.x1,i.y1,i.x,i.y):i.type==="Z"&&(n+="Z")}return n},_1.prototype.toSVG=function(r){var t='<path d="';return t+=this.toPathData(r),t+='"',this.fill&&this.fill!=="black"&&(this.fill===null?t+=' fill="none"':t+=' fill="'+this.fill+'"'),this.stroke&&(t+=' stroke="'+this.stroke+'" stroke-width="'+this.strokeWidth+'"'),t+="/>",t},_1.prototype.toDOMElement=function(r){var t=this.toPathData(r),e=document.createElementNS("http://www.w3.org/2000/svg","path");return e.setAttribute("d",t),e};function L4(r){throw new Error(r)}function M4(r,t){r||L4(t)}var J={fail:L4,argument:M4,assert:M4},P4=32768,N4=2147483648,je={},N={},e1={};function M1(r){return function(){return r}}N.BYTE=function(r){return J.argument(r>=0&&r<=255,"Byte value should be between 0 and 255."),[r]},e1.BYTE=M1(1),N.CHAR=function(r){return[r.charCodeAt(0)]},e1.CHAR=M1(1),N.CHARARRAY=function(r){typeof r>"u"&&(r="",console.warn("Undefined CHARARRAY encountered and treated as an empty string. This is probably caused by a missing glyph name."));for(var t=[],e=0;e<r.length;e+=1)t[e]=r.charCodeAt(e);return t},e1.CHARARRAY=function(r){return typeof r>"u"?0:r.length},N.USHORT=function(r){return[r>>8&255,r&255]},e1.USHORT=M1(2),N.SHORT=function(r){return r>=P4&&(r=-(2*P4-r)),[r>>8&255,r&255]},e1.SHORT=M1(2),N.UINT24=function(r){return[r>>16&255,r>>8&255,r&255]},e1.UINT24=M1(3),N.ULONG=function(r){return[r>>24&255,r>>16&255,r>>8&255,r&255]},e1.ULONG=M1(4),N.LONG=function(r){return r>=N4&&(r=-(2*N4-r)),[r>>24&255,r>>16&255,r>>8&255,r&255]},e1.LONG=M1(4),N.FIXED=N.ULONG,e1.FIXED=e1.ULONG,N.FWORD=N.SHORT,e1.FWORD=e1.SHORT,N.UFWORD=N.USHORT,e1.UFWORD=e1.USHORT,N.LONGDATETIME=function(r){return[0,0,0,0,r>>24&255,r>>16&255,r>>8&255,r&255]},e1.LONGDATETIME=M1(8),N.TAG=function(r){return J.argument(r.length===4,"Tag should be exactly 4 ASCII characters."),[r.charCodeAt(0),r.charCodeAt(1),r.charCodeAt(2),r.charCodeAt(3)]},e1.TAG=M1(4),N.Card8=N.BYTE,e1.Card8=e1.BYTE,N.Card16=N.USHORT,e1.Card16=e1.USHORT,N.OffSize=N.BYTE,e1.OffSize=e1.BYTE,N.SID=N.USHORT,e1.SID=e1.USHORT,N.NUMBER=function(r){return r>=-107&&r<=107?[r+139]:r>=108&&r<=1131?(r=r-108,[(r>>8)+247,r&255]):r>=-1131&&r<=-108?(r=-r-108,[(r>>8)+251,r&255]):r>=-32768&&r<=32767?N.NUMBER16(r):N.NUMBER32(r)},e1.NUMBER=function(r){return N.NUMBER(r).length},N.NUMBER16=function(r){return[28,r>>8&255,r&255]},e1.NUMBER16=M1(3),N.NUMBER32=function(r){return[29,r>>24&255,r>>16&255,r>>8&255,r&255]},e1.NUMBER32=M1(5),N.REAL=function(r){var t=r.toString(),e=/\.(\d*?)(?:9{5,20}|0{5,20})\d{0,2}(?:e(.+)|$)/.exec(t);if(e){var n=parseFloat("1e"+((e[2]?+e[2]:0)+e[1].length));t=(Math.round(r*n)/n).toString()}for(var s="",i=0,a=t.length;i<a;i+=1){var o=t[i];o==="e"?s+=t[++i]==="-"?"c":"b":o==="."?s+="a":o==="-"?s+="e":s+=o}s+=s.length&1?"f":"ff";for(var u=[30],l=0,c=s.length;l<c;l+=2)u.push(parseInt(s.substr(l,2),16));return u},e1.REAL=function(r){return N.REAL(r).length},N.NAME=N.CHARARRAY,e1.NAME=e1.CHARARRAY,N.STRING=N.CHARARRAY,e1.STRING=e1.CHARARRAY,je.UTF8=function(r,t,e){for(var n=[],s=e,i=0;i<s;i++,t+=1)n[i]=r.getUint8(t);return String.fromCharCode.apply(null,n)},je.UTF16=function(r,t,e){for(var n=[],s=e/2,i=0;i<s;i++,t+=2)n[i]=r.getUint16(t);return String.fromCharCode.apply(null,n)},N.UTF16=function(r){for(var t=[],e=0;e<r.length;e+=1){var n=r.charCodeAt(e);t[t.length]=n>>8&255,t[t.length]=n&255}return t},e1.UTF16=function(r){return r.length*2};var C6={"x-mac-croatian":"ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûü†°¢£§•¶ß®Š™´¨≠ŽØ∞±≤≥∆µ∂∑∏š∫ªºΩžø¿¡¬√ƒ≈ƫȅ ÀÃÕŒœĐ—“”‘’÷◊©⁄€‹›Æ»–·‚„‰ÂćÁčÈÍÎÏÌÓÔđÒÚÛÙıˆ˜¯πË˚¸Êæˇ","x-mac-cyrillic":"АБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ†°Ґ£§•¶І®©™Ђђ≠Ѓѓ∞±≤≥іµґЈЄєЇїЉљЊњјЅ¬√ƒ≈∆«»… ЋћЌќѕ–—“”‘’÷„ЎўЏџ№Ёёяабвгдежзийклмнопрстуфхцчшщъыьэю","x-mac-gaelic":"ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûü†°¢£§•¶ß®©™´¨≠ÆØḂ±≤≥ḃĊċḊḋḞḟĠġṀæøṁṖṗɼƒſṠ«»… ÀÃÕŒœ–—“”‘’ṡẛÿŸṪ€‹›Ŷŷṫ·Ỳỳ⁊ÂÊÁËÈÍÎÏÌÓÔ♣ÒÚÛÙıÝýŴŵẄẅẀẁẂẃ","x-mac-greek":"Ĺ²É³ÖÜ΅àâä΄¨çéèê룙î‰ôö¦€ùûü†ΓΔΘΛΞΠß®©ΣΪ§≠°·Α±≤≥¥ΒΕΖΗΙΚΜΦΫΨΩάΝ¬ΟΡ≈Τ«»… ΥΧΆΈœ–―“”‘’÷ΉΊΌΎέήίόΏύαβψδεφγηιξκλμνοπώρστθωςχυζϊϋΐΰ","x-mac-icelandic":"ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûüݰ¢£§•¶ß®©™´¨≠ÆØ∞±≤≥¥µ∂∑∏π∫ªºΩæø¿¡¬√ƒ≈∆«»… ÀÃÕŒœ–—“”‘’÷◊ÿŸ⁄€ÐðÞþý·‚„‰ÂÊÁËÈÍÎÏÌÓÔÒÚÛÙıˆ˜¯˘˙˚¸˝˛ˇ","x-mac-inuit":"ᐃᐄᐅᐆᐊᐋᐱᐲᐳᐴᐸᐹᑉᑎᑏᑐᑑᑕᑖᑦᑭᑮᑯᑰᑲᑳᒃᒋᒌᒍᒎᒐᒑ°ᒡᒥᒦ•¶ᒧ®©™ᒨᒪᒫᒻᓂᓃᓄᓅᓇᓈᓐᓯᓰᓱᓲᓴᓵᔅᓕᓖᓗᓘᓚᓛᓪᔨᔩᔪᔫᔭ… ᔮᔾᕕᕖᕗ–—“”‘’ᕘᕙᕚᕝᕆᕇᕈᕉᕋᕌᕐᕿᖀᖁᖂᖃᖄᖅᖏᖐᖑᖒᖓᖔᖕᙱᙲᙳᙴᙵᙶᖖᖠᖡᖢᖣᖤᖥᖦᕼŁł","x-mac-ce":"ÄĀāÉĄÖÜáąČäčĆć鏟ĎíďĒēĖóėôöõúĚěü†°Ę£§•¶ß®©™ę¨≠ģĮįĪ≤≥īĶ∂∑łĻļĽľĹĺŅņѬ√ńŇ∆«»… ňŐÕőŌ–—“”‘’÷◊ōŔŕŘ‹›řŖŗŠ‚„šŚśÁŤťÍŽžŪÓÔūŮÚůŰűŲųÝýķŻŁżĢˇ",macintosh:"ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûü†°¢£§•¶ß®©™´¨≠ÆØ∞±≤≥¥µ∂∑∏π∫ªºΩæø¿¡¬√ƒ≈∆«»… ÀÃÕŒœ–—“”‘’÷◊ÿŸ⁄€‹›fifl‡·‚„‰ÂÊÁËÈÍÎÏÌÓÔÒÚÛÙıˆ˜¯˘˙˚¸˝˛ˇ","x-mac-romanian":"ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûü†°¢£§•¶ß®©™´¨≠ĂȘ∞±≤≥¥µ∂∑∏π∫ªºΩăș¿¡¬√ƒ≈∆«»… ÀÃÕŒœ–—“”‘’÷◊ÿŸ⁄€‹›Țț‡·‚„‰ÂÊÁËÈÍÎÏÌÓÔÒÚÛÙıˆ˜¯˘˙˚¸˝˛ˇ","x-mac-turkish":"ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûü†°¢£§•¶ß®©™´¨≠ÆØ∞±≤≥¥µ∂∑∏π∫ªºΩæø¿¡¬√ƒ≈∆«»… ÀÃÕŒœ–—“”‘’÷◊ÿŸĞğİıŞş‡·‚„‰ÂÊÁËÈÍÎÏÌÓÔÒÚÛÙˆ˜¯˘˙˚¸˝˛ˇ"};je.MACSTRING=function(r,t,e,n){var s=C6[n];if(s!==void 0){for(var i="",a=0;a<e;a++){var o=r.getUint8(t+a);o<=127?i+=String.fromCharCode(o):i+=s[o&127]}return i}};var tt=typeof WeakMap=="function"&&new WeakMap,nt,F8=function(r){if(!nt){nt={};for(var t in C6)nt[t]=new String(t)}var e=nt[r];if(e!==void 0){if(tt){var n=tt.get(e);if(n!==void 0)return n}var s=C6[r];if(s!==void 0){for(var i={},a=0;a<s.length;a++)i[s.charCodeAt(a)]=a+128;return tt&&tt.set(e,i),i}}};N.MACSTRING=function(r,t){var e=F8(t);if(e!==void 0){for(var n=[],s=0;s<r.length;s++){var i=r.charCodeAt(s);if(i>=128&&(i=e[i],i===void 0))return;n[s]=i}return n}},e1.MACSTRING=function(r,t){var e=N.MACSTRING(r,t);return e!==void 0?e.length:0};function E6(r){return r>=-128&&r<=127}function C8(r,t,e){for(var n=0,s=r.length;t<s&&n<64&&r[t]===0;)++t,++n;return e.push(128|n-1),t}function E8(r,t,e){for(var n=0,s=r.length,i=t;i<s&&n<64;){var a=r[i];if(!E6(a)||a===0&&i+1<s&&r[i+1]===0)break;++i,++n}e.push(n-1);for(var o=t;o<i;++o)e.push(r[o]+256&255);return i}function S8(r,t,e){for(var n=0,s=r.length,i=t;i<s&&n<64;){var a=r[i];if(a===0||E6(a)&&i+1<s&&E6(r[i+1]))break;++i,++n}e.push(64|n-1);for(var o=t;o<i;++o){var u=r[o];e.push(u+65536>>8&255,u+256&255)}return i}N.VARDELTAS=function(r){for(var t=0,e=[];t<r.length;){var n=r[t];n===0?t=C8(r,t,e):n>=-128&&n<=127?t=E8(r,t,e):t=S8(r,t,e)}return e},N.INDEX=function(r){for(var t=1,e=[t],n=[],s=0;s<r.length;s+=1){var i=N.OBJECT(r[s]);Array.prototype.push.apply(n,i),t+=i.length,e.push(t)}if(n.length===0)return[0,0];for(var a=[],o=1+Math.floor(Math.log(t)/Math.log(2))/8|0,u=[void 0,N.BYTE,N.USHORT,N.UINT24,N.ULONG][o],l=0;l<e.length;l+=1){var c=u(e[l]);Array.prototype.push.apply(a,c)}return Array.prototype.concat(N.Card16(r.length),N.OffSize(o),a,n)},e1.INDEX=function(r){return N.INDEX(r).length},N.DICT=function(r){for(var t=[],e=Object.keys(r),n=e.length,s=0;s<n;s+=1){var i=parseInt(e[s],0),a=r[i];t=t.concat(N.OPERAND(a.value,a.type)),t=t.concat(N.OPERATOR(i))}return t},e1.DICT=function(r){return N.DICT(r).length},N.OPERATOR=function(r){return r<1200?[r]:[12,r-1200]},N.OPERAND=function(r,t){var e=[];if(Array.isArray(t))for(var n=0;n<t.length;n+=1)J.argument(r.length===t.length,"Not enough arguments given for type"+t),e=e.concat(N.OPERAND(r[n],t[n]));else if(t==="SID")e=e.concat(N.NUMBER(r));else if(t==="offset")e=e.concat(N.NUMBER32(r));else if(t==="number")e=e.concat(N.NUMBER(r));else if(t==="real")e=e.concat(N.REAL(r));else throw new Error("Unknown operand type "+t);return e},N.OP=N.BYTE,e1.OP=e1.BYTE;var rt=typeof WeakMap=="function"&&new WeakMap;N.CHARSTRING=function(r){if(rt){var t=rt.get(r);if(t!==void 0)return t}for(var e=[],n=r.length,s=0;s<n;s+=1){var i=r[s];e=e.concat(N[i.type](i.value))}return rt&&rt.set(r,e),e},e1.CHARSTRING=function(r){return N.CHARSTRING(r).length},N.OBJECT=function(r){var t=N[r.type];return J.argument(t!==void 0,"No encoding function for type "+r.type),t(r.value)},e1.OBJECT=function(r){var t=e1[r.type];return J.argument(t!==void 0,"No sizeOf function for type "+r.type),t(r.value)},N.TABLE=function(r){for(var t=[],e=r.fields.length,n=[],s=[],i=0;i<e;i+=1){var a=r.fields[i],o=N[a.type];J.argument(o!==void 0,"No encoding function for field type "+a.type+" ("+a.name+")");var u=r[a.name];u===void 0&&(u=a.value);var l=o(u);a.type==="TABLE"?(s.push(t.length),t=t.concat([0,0]),n.push(l)):t=t.concat(l)}for(var c=0;c<n.length;c+=1){var h=s[c],f=t.length;J.argument(f<65536,"Table "+r.tableName+" too big."),t[h]=f>>8,t[h+1]=f&255,t=t.concat(n[c])}return t},e1.TABLE=function(r){for(var t=0,e=r.fields.length,n=0;n<e;n+=1){var s=r.fields[n],i=e1[s.type];J.argument(i!==void 0,"No sizeOf function for field type "+s.type+" ("+s.name+")");var a=r[s.name];a===void 0&&(a=s.value),t+=i(a),s.type==="TABLE"&&(t+=2)}return t},N.RECORD=N.TABLE,e1.RECORD=e1.TABLE,N.LITERAL=function(r){return r},e1.LITERAL=function(r){return r.length};function b1(r,t,e){if(t.length&&(t[0].name!=="coverageFormat"||t[0].value===1))for(var n=0;n<t.length;n+=1){var s=t[n];this[s.name]=s.value}if(this.tableName=r,this.fields=t,e)for(var i=Object.keys(e),a=0;a<i.length;a+=1){var o=i[a],u=e[o];this[o]!==void 0&&(this[o]=u)}}b1.prototype.encode=function(){return N.TABLE(this)},b1.prototype.sizeOf=function(){return e1.TABLE(this)};function C2(r,t,e){e===void 0&&(e=t.length);var n=new Array(t.length+1);n[0]={name:r+"Count",type:"USHORT",value:e};for(var s=0;s<t.length;s++)n[s+1]={name:r+s,type:"USHORT",value:t[s]};return n}function S6(r,t,e){var n=t.length,s=new Array(n+1);s[0]={name:r+"Count",type:"USHORT",value:n};for(var i=0;i<n;i++)s[i+1]={name:r+i,type:"TABLE",value:e(t[i],i)};return s}function E2(r,t,e){var n=t.length,s=[];s[0]={name:r+"Count",type:"USHORT",value:n};for(var i=0;i<n;i++)s=s.concat(e(t[i],i));return s}function st(r){r.format===1?b1.call(this,"coverageTable",[{name:"coverageFormat",type:"USHORT",value:1}].concat(C2("glyph",r.glyphs))):r.format===2?b1.call(this,"coverageTable",[{name:"coverageFormat",type:"USHORT",value:2}].concat(E2("rangeRecord",r.ranges,function(t){return[{name:"startGlyphID",type:"USHORT",value:t.start},{name:"endGlyphID",type:"USHORT",value:t.end},{name:"startCoverageIndex",type:"USHORT",value:t.index}]}))):J.assert(!1,"Coverage format must be 1 or 2.")}st.prototype=Object.create(b1.prototype),st.prototype.constructor=st;function it(r){b1.call(this,"scriptListTable",E2("scriptRecord",r,function(t,e){var n=t.script,s=n.defaultLangSys;return J.assert(!!s,"Unable to write GSUB: script "+t.tag+" has no default language system."),[{name:"scriptTag"+e,type:"TAG",value:t.tag},{name:"script"+e,type:"TABLE",value:new b1("scriptTable",[{name:"defaultLangSys",type:"TABLE",value:new b1("defaultLangSys",[{name:"lookupOrder",type:"USHORT",value:0},{name:"reqFeatureIndex",type:"USHORT",value:s.reqFeatureIndex}].concat(C2("featureIndex",s.featureIndexes)))}].concat(E2("langSys",n.langSysRecords,function(i,a){var o=i.langSys;return[{name:"langSysTag"+a,type:"TAG",value:i.tag},{name:"langSys"+a,type:"TABLE",value:new b1("langSys",[{name:"lookupOrder",type:"USHORT",value:0},{name:"reqFeatureIndex",type:"USHORT",value:o.reqFeatureIndex}].concat(C2("featureIndex",o.featureIndexes)))}]})))}]}))}it.prototype=Object.create(b1.prototype),it.prototype.constructor=it;function at(r){b1.call(this,"featureListTable",E2("featureRecord",r,function(t,e){var n=t.feature;return[{name:"featureTag"+e,type:"TAG",value:t.tag},{name:"feature"+e,type:"TABLE",value:new b1("featureTable",[{name:"featureParams",type:"USHORT",value:n.featureParams}].concat(C2("lookupListIndex",n.lookupListIndexes)))}]}))}at.prototype=Object.create(b1.prototype),at.prototype.constructor=at;function ot(r,t){b1.call(this,"lookupListTable",S6("lookup",r,function(e){var n=t[e.lookupType];return J.assert(!!n,"Unable to write GSUB lookup type "+e.lookupType+" tables."),new b1("lookupTable",[{name:"lookupType",type:"USHORT",value:e.lookupType},{name:"lookupFlag",type:"USHORT",value:e.lookupFlag}].concat(S6("subtable",e.subtables,n)))}))}ot.prototype=Object.create(b1.prototype),ot.prototype.constructor=ot;var z={Table:b1,Record:b1,Coverage:st,ScriptList:it,FeatureList:at,LookupList:ot,ushortList:C2,tableList:S6,recordList:E2};function U4(r,t){return r.getUint8(t)}function ut(r,t){return r.getUint16(t,!1)}function T8(r,t){return r.getInt16(t,!1)}function T6(r,t){return r.getUint32(t,!1)}function H4(r,t){var e=r.getInt16(t,!1),n=r.getUint16(t+2,!1);return e+n/65535}function x8(r,t){for(var e="",n=t;n<t+4;n+=1)e+=String.fromCharCode(r.getInt8(n));return e}function B8(r,t,e){for(var n=0,s=0;s<e;s+=1)n<<=8,n+=r.getUint8(t+s);return n}function O8(r,t,e){for(var n=[],s=t;s<e;s+=1)n.push(r.getUint8(s));return n}function w8(r){for(var t="",e=0;e<r.length;e+=1)t+=String.fromCharCode(r[e]);return t}var A8={byte:1,uShort:2,short:2,uLong:4,fixed:4,longDateTime:8,tag:4};function A(r,t){this.data=r,this.offset=t,this.relativeOffset=0}A.prototype.parseByte=function(){var r=this.data.getUint8(this.offset+this.relativeOffset);return this.relativeOffset+=1,r},A.prototype.parseChar=function(){var r=this.data.getInt8(this.offset+this.relativeOffset);return this.relativeOffset+=1,r},A.prototype.parseCard8=A.prototype.parseByte,A.prototype.parseUShort=function(){var r=this.data.getUint16(this.offset+this.relativeOffset);return this.relativeOffset+=2,r},A.prototype.parseCard16=A.prototype.parseUShort,A.prototype.parseSID=A.prototype.parseUShort,A.prototype.parseOffset16=A.prototype.parseUShort,A.prototype.parseShort=function(){var r=this.data.getInt16(this.offset+this.relativeOffset);return this.relativeOffset+=2,r},A.prototype.parseF2Dot14=function(){var r=this.data.getInt16(this.offset+this.relativeOffset)/16384;return this.relativeOffset+=2,r},A.prototype.parseULong=function(){var r=T6(this.data,this.offset+this.relativeOffset);return this.relativeOffset+=4,r},A.prototype.parseOffset32=A.prototype.parseULong,A.prototype.parseFixed=function(){var r=H4(this.data,this.offset+this.relativeOffset);return this.relativeOffset+=4,r},A.prototype.parseString=function(r){var t=this.data,e=this.offset+this.relativeOffset,n="";this.relativeOffset+=r;for(var s=0;s<r;s++)n+=String.fromCharCode(t.getUint8(e+s));return n},A.prototype.parseTag=function(){return this.parseString(4)},A.prototype.parseLongDateTime=function(){var r=T6(this.data,this.offset+this.relativeOffset+4);return r-=2082844800,this.relativeOffset+=8,r},A.prototype.parseVersion=function(r){var t=ut(this.data,this.offset+this.relativeOffset),e=ut(this.data,this.offset+this.relativeOffset+2);return this.relativeOffset+=4,r===void 0&&(r=4096),t+e/r/10},A.prototype.skip=function(r,t){t===void 0&&(t=1),this.relativeOffset+=A8[r]*t},A.prototype.parseULongList=function(r){r===void 0&&(r=this.parseULong());for(var t=new Array(r),e=this.data,n=this.offset+this.relativeOffset,s=0;s<r;s++)t[s]=e.getUint32(n),n+=4;return this.relativeOffset+=r*4,t},A.prototype.parseOffset16List=A.prototype.parseUShortList=function(r){r===void 0&&(r=this.parseUShort());for(var t=new Array(r),e=this.data,n=this.offset+this.relativeOffset,s=0;s<r;s++)t[s]=e.getUint16(n),n+=2;return this.relativeOffset+=r*2,t},A.prototype.parseShortList=function(r){for(var t=new Array(r),e=this.data,n=this.offset+this.relativeOffset,s=0;s<r;s++)t[s]=e.getInt16(n),n+=2;return this.relativeOffset+=r*2,t},A.prototype.parseByteList=function(r){for(var t=new Array(r),e=this.data,n=this.offset+this.relativeOffset,s=0;s<r;s++)t[s]=e.getUint8(n++);return this.relativeOffset+=r,t},A.prototype.parseList=function(r,t){t||(t=r,r=this.parseUShort());for(var e=new Array(r),n=0;n<r;n++)e[n]=t.call(this);return e},A.prototype.parseList32=function(r,t){t||(t=r,r=this.parseULong());for(var e=new Array(r),n=0;n<r;n++)e[n]=t.call(this);return e},A.prototype.parseRecordList=function(r,t){t||(t=r,r=this.parseUShort());for(var e=new Array(r),n=Object.keys(t),s=0;s<r;s++){for(var i={},a=0;a<n.length;a++){var o=n[a],u=t[o];i[o]=u.call(this)}e[s]=i}return e},A.prototype.parseRecordList32=function(r,t){t||(t=r,r=this.parseULong());for(var e=new Array(r),n=Object.keys(t),s=0;s<r;s++){for(var i={},a=0;a<n.length;a++){var o=n[a],u=t[o];i[o]=u.call(this)}e[s]=i}return e},A.prototype.parseStruct=function(r){if(typeof r=="function")return r.call(this);for(var t=Object.keys(r),e={},n=0;n<t.length;n++){var s=t[n],i=r[s];e[s]=i.call(this)}return e},A.prototype.parseValueRecord=function(r){if(r===void 0&&(r=this.parseUShort()),r!==0){var t={};return r&1&&(t.xPlacement=this.parseShort()),r&2&&(t.yPlacement=this.parseShort()),r&4&&(t.xAdvance=this.parseShort()),r&8&&(t.yAdvance=this.parseShort()),r&16&&(t.xPlaDevice=void 0,this.parseShort()),r&32&&(t.yPlaDevice=void 0,this.parseShort()),r&64&&(t.xAdvDevice=void 0,this.parseShort()),r&128&&(t.yAdvDevice=void 0,this.parseShort()),t}},A.prototype.parseValueRecordList=function(){for(var r=this.parseUShort(),t=this.parseUShort(),e=new Array(t),n=0;n<t;n++)e[n]=this.parseValueRecord(r);return e},A.prototype.parsePointer=function(r){var t=this.parseOffset16();if(t>0)return new A(this.data,this.offset+t).parseStruct(r)},A.prototype.parsePointer32=function(r){var t=this.parseOffset32();if(t>0)return new A(this.data,this.offset+t).parseStruct(r)},A.prototype.parseListOfLists=function(r){for(var t=this.parseOffset16List(),e=t.length,n=this.relativeOffset,s=new Array(e),i=0;i<e;i++){var a=t[i];if(a===0){s[i]=void 0;continue}if(this.relativeOffset=a,r){for(var o=this.parseOffset16List(),u=new Array(o.length),l=0;l<o.length;l++)this.relativeOffset=a+o[l],u[l]=r.call(this);s[i]=u}else s[i]=this.parseUShortList()}return this.relativeOffset=n,s},A.prototype.parseCoverage=function(){var r=this.offset+this.relativeOffset,t=this.parseUShort(),e=this.parseUShort();if(t===1)return{format:1,glyphs:this.parseUShortList(e)};if(t===2){for(var n=new Array(e),s=0;s<e;s++)n[s]={start:this.parseUShort(),end:this.parseUShort(),index:this.parseUShort()};return{format:2,ranges:n}}throw new Error("0x"+r.toString(16)+": Coverage format must be 1 or 2.")},A.prototype.parseClassDef=function(){var r=this.offset+this.relativeOffset,t=this.parseUShort();if(t===1)return{format:1,startGlyph:this.parseUShort(),classes:this.parseUShortList()};if(t===2)return{format:2,ranges:this.parseRecordList({start:A.uShort,end:A.uShort,classId:A.uShort})};throw new Error("0x"+r.toString(16)+": ClassDef format must be 1 or 2.")},A.list=function(r,t){return function(){return this.parseList(r,t)}},A.list32=function(r,t){return function(){return this.parseList32(r,t)}},A.recordList=function(r,t){return function(){return this.parseRecordList(r,t)}},A.recordList32=function(r,t){return function(){return this.parseRecordList32(r,t)}},A.pointer=function(r){return function(){return this.parsePointer(r)}},A.pointer32=function(r){return function(){return this.parsePointer32(r)}},A.tag=A.prototype.parseTag,A.byte=A.prototype.parseByte,A.uShort=A.offset16=A.prototype.parseUShort,A.uShortList=A.prototype.parseUShortList,A.uLong=A.offset32=A.prototype.parseULong,A.uLongList=A.prototype.parseULongList,A.struct=A.prototype.parseStruct,A.coverage=A.prototype.parseCoverage,A.classDef=A.prototype.parseClassDef;var G4={reserved:A.uShort,reqFeatureIndex:A.uShort,featureIndexes:A.uShortList};A.prototype.parseScriptList=function(){return this.parsePointer(A.recordList({tag:A.tag,script:A.pointer({defaultLangSys:A.pointer(G4),langSysRecords:A.recordList({tag:A.tag,langSys:A.pointer(G4)})})}))||[]},A.prototype.parseFeatureList=function(){return this.parsePointer(A.recordList({tag:A.tag,feature:A.pointer({featureParams:A.offset16,lookupListIndexes:A.uShortList})}))||[]},A.prototype.parseLookupList=function(r){return this.parsePointer(A.list(A.pointer(function(){var t=this.parseUShort();J.argument(1<=t&&t<=9,"GPOS/GSUB lookup type "+t+" unknown.");var e=this.parseUShort(),n=e&16;return{lookupType:t,lookupFlag:e,subtables:this.parseList(A.pointer(r[t])),markFilteringSet:n?this.parseUShort():void 0}})))||[]},A.prototype.parseFeatureVariationsList=function(){return this.parsePointer32(function(){var r=this.parseUShort(),t=this.parseUShort();J.argument(r===1&&t<1,"GPOS/GSUB feature variations table unknown.");var e=this.parseRecordList32({conditionSetOffset:A.offset32,featureTableSubstitutionOffset:A.offset32});return e})||[]};var Y={getByte:U4,getCard8:U4,getUShort:ut,getCard16:ut,getShort:T8,getULong:T6,getFixed:H4,getTag:x8,getOffset:B8,getBytes:O8,bytesToString:w8,Parser:A};function R8(r,t){t.parseUShort(),r.length=t.parseULong(),r.language=t.parseULong();var e;r.groupCount=e=t.parseULong(),r.glyphIndexMap={};for(var n=0;n<e;n+=1)for(var s=t.parseULong(),i=t.parseULong(),a=t.parseULong(),o=s;o<=i;o+=1)r.glyphIndexMap[o]=a,a++}function $8(r,t,e,n,s){r.length=t.parseUShort(),r.language=t.parseUShort();var i;r.segCount=i=t.parseUShort()>>1,t.skip("uShort",3),r.glyphIndexMap={};for(var a=new Y.Parser(e,n+s+14),o=new Y.Parser(e,n+s+16+i*2),u=new Y.Parser(e,n+s+16+i*4),l=new Y.Parser(e,n+s+16+i*6),c=n+s+16+i*8,h=0;h<i-1;h+=1)for(var f=void 0,_=a.parseUShort(),p=o.parseUShort(),m=u.parseShort(),v=l.parseUShort(),F=p;F<=_;F+=1)v!==0?(c=l.offset+l.relativeOffset-2,c+=v,c+=(F-p)*2,f=Y.getUShort(e,c),f!==0&&(f=f+m&65535)):f=F+m&65535,r.glyphIndexMap[F]=f}function k8(r,t){var e={};e.version=Y.getUShort(r,t),J.argument(e.version===0,"cmap table version should be 0."),e.numTables=Y.getUShort(r,t+2);for(var n=-1,s=e.numTables-1;s>=0;s-=1){var i=Y.getUShort(r,t+4+s*8),a=Y.getUShort(r,t+4+s*8+2);if(i===3&&(a===0||a===1||a===10)||i===0&&(a===0||a===1||a===2||a===3||a===4)){n=Y.getULong(r,t+4+s*8+4);break}}if(n===-1)throw new Error("No valid cmap sub-tables found.");var o=new Y.Parser(r,t+n);if(e.format=o.parseUShort(),e.format===12)R8(e,o);else if(e.format===4)$8(e,o,r,t,n);else throw new Error("Only format 4 and 12 cmap tables are supported (found format "+e.format+").");return e}function I8(r,t,e){r.segments.push({end:t,start:t,delta:-(t-e),offset:0,glyphIndex:e})}function L8(r){r.segments.push({end:65535,start:65535,delta:1,offset:0})}function M8(r){var t=!0,e;for(e=r.length-1;e>0;e-=1){var n=r.get(e);if(n.unicode>65535){console.log("Adding CMAP format 12 (needed!)"),t=!1;break}}var s=[{name:"version",type:"USHORT",value:0},{name:"numTables",type:"USHORT",value:t?1:2},{name:"platformID",type:"USHORT",value:3},{name:"encodingID",type:"USHORT",value:1},{name:"offset",type:"ULONG",value:t?12:20}];t||(s=s.concat([{name:"cmap12PlatformID",type:"USHORT",value:3},{name:"cmap12EncodingID",type:"USHORT",value:10},{name:"cmap12Offset",type:"ULONG",value:0}])),s=s.concat([{name:"format",type:"USHORT",value:4},{name:"cmap4Length",type:"USHORT",value:0},{name:"language",type:"USHORT",value:0},{name:"segCountX2",type:"USHORT",value:0},{name:"searchRange",type:"USHORT",value:0},{name:"entrySelector",type:"USHORT",value:0},{name:"rangeShift",type:"USHORT",value:0}]);var i=new z.Table("cmap",s);for(i.segments=[],e=0;e<r.length;e+=1){for(var a=r.get(e),o=0;o<a.unicodes.length;o+=1)I8(i,a.unicodes[o],e);i.segments=i.segments.sort(function(E,S){return E.start-S.start})}L8(i);var u=i.segments.length,l=0,c=[],h=[],f=[],_=[],p=[],m=[];for(e=0;e<u;e+=1){var v=i.segments[e];v.end<=65535&&v.start<=65535?(c=c.concat({name:"end_"+e,type:"USHORT",value:v.end}),h=h.concat({name:"start_"+e,type:"USHORT",value:v.start}),f=f.concat({name:"idDelta_"+e,type:"SHORT",value:v.delta}),_=_.concat({name:"idRangeOffset_"+e,type:"USHORT",value:v.offset}),v.glyphId!==void 0&&(p=p.concat({name:"glyph_"+e,type:"USHORT",value:v.glyphId}))):l+=1,!t&&v.glyphIndex!==void 0&&(m=m.concat({name:"cmap12Start_"+e,type:"ULONG",value:v.start}),m=m.concat({name:"cmap12End_"+e,type:"ULONG",value:v.end}),m=m.concat({name:"cmap12Glyph_"+e,type:"ULONG",value:v.glyphIndex}))}if(i.segCountX2=(u-l)*2,i.searchRange=Math.pow(2,Math.floor(Math.log(u-l)/Math.log(2)))*2,i.entrySelector=Math.log(i.searchRange/2)/Math.log(2),i.rangeShift=i.segCountX2-i.searchRange,i.fields=i.fields.concat(c),i.fields.push({name:"reservedPad",type:"USHORT",value:0}),i.fields=i.fields.concat(h),i.fields=i.fields.concat(f),i.fields=i.fields.concat(_),i.fields=i.fields.concat(p),i.cmap4Length=14+c.length*2+2+h.length*2+f.length*2+_.length*2+p.length*2,!t){var F=16+m.length*4;i.cmap12Offset=12+2*2+4+i.cmap4Length,i.fields=i.fields.concat([{name:"cmap12Format",type:"USHORT",value:12},{name:"cmap12Reserved",type:"USHORT",value:0},{name:"cmap12Length",type:"ULONG",value:F},{name:"cmap12Language",type:"ULONG",value:0},{name:"cmap12nGroups",type:"ULONG",value:m.length/3}]),i.fields=i.fields.concat(m)}return i}var z4={parse:k8,make:M8},lt=[".notdef","space","exclam","quotedbl","numbersign","dollar","percent","ampersand","quoteright","parenleft","parenright","asterisk","plus","comma","hyphen","period","slash","zero","one","two","three","four","five","six","seven","eight","nine","colon","semicolon","less","equal","greater","question","at","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","bracketleft","backslash","bracketright","asciicircum","underscore","quoteleft","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","braceleft","bar","braceright","asciitilde","exclamdown","cent","sterling","fraction","yen","florin","section","currency","quotesingle","quotedblleft","guillemotleft","guilsinglleft","guilsinglright","fi","fl","endash","dagger","daggerdbl","periodcentered","paragraph","bullet","quotesinglbase","quotedblbase","quotedblright","guillemotright","ellipsis","perthousand","questiondown","grave","acute","circumflex","tilde","macron","breve","dotaccent","dieresis","ring","cedilla","hungarumlaut","ogonek","caron","emdash","AE","ordfeminine","Lslash","Oslash","OE","ordmasculine","ae","dotlessi","lslash","oslash","oe","germandbls","onesuperior","logicalnot","mu","trademark","Eth","onehalf","plusminus","Thorn","onequarter","divide","brokenbar","degree","thorn","threequarters","twosuperior","registered","minus","eth","multiply","threesuperior","copyright","Aacute","Acircumflex","Adieresis","Agrave","Aring","Atilde","Ccedilla","Eacute","Ecircumflex","Edieresis","Egrave","Iacute","Icircumflex","Idieresis","Igrave","Ntilde","Oacute","Ocircumflex","Odieresis","Ograve","Otilde","Scaron","Uacute","Ucircumflex","Udieresis","Ugrave","Yacute","Ydieresis","Zcaron","aacute","acircumflex","adieresis","agrave","aring","atilde","ccedilla","eacute","ecircumflex","edieresis","egrave","iacute","icircumflex","idieresis","igrave","ntilde","oacute","ocircumflex","odieresis","ograve","otilde","scaron","uacute","ucircumflex","udieresis","ugrave","yacute","ydieresis","zcaron","exclamsmall","Hungarumlautsmall","dollaroldstyle","dollarsuperior","ampersandsmall","Acutesmall","parenleftsuperior","parenrightsuperior","266 ff","onedotenleader","zerooldstyle","oneoldstyle","twooldstyle","threeoldstyle","fouroldstyle","fiveoldstyle","sixoldstyle","sevenoldstyle","eightoldstyle","nineoldstyle","commasuperior","threequartersemdash","periodsuperior","questionsmall","asuperior","bsuperior","centsuperior","dsuperior","esuperior","isuperior","lsuperior","msuperior","nsuperior","osuperior","rsuperior","ssuperior","tsuperior","ff","ffi","ffl","parenleftinferior","parenrightinferior","Circumflexsmall","hyphensuperior","Gravesmall","Asmall","Bsmall","Csmall","Dsmall","Esmall","Fsmall","Gsmall","Hsmall","Ismall","Jsmall","Ksmall","Lsmall","Msmall","Nsmall","Osmall","Psmall","Qsmall","Rsmall","Ssmall","Tsmall","Usmall","Vsmall","Wsmall","Xsmall","Ysmall","Zsmall","colonmonetary","onefitted","rupiah","Tildesmall","exclamdownsmall","centoldstyle","Lslashsmall","Scaronsmall","Zcaronsmall","Dieresissmall","Brevesmall","Caronsmall","Dotaccentsmall","Macronsmall","figuredash","hypheninferior","Ogoneksmall","Ringsmall","Cedillasmall","questiondownsmall","oneeighth","threeeighths","fiveeighths","seveneighths","onethird","twothirds","zerosuperior","foursuperior","fivesuperior","sixsuperior","sevensuperior","eightsuperior","ninesuperior","zeroinferior","oneinferior","twoinferior","threeinferior","fourinferior","fiveinferior","sixinferior","seveninferior","eightinferior","nineinferior","centinferior","dollarinferior","periodinferior","commainferior","Agravesmall","Aacutesmall","Acircumflexsmall","Atildesmall","Adieresissmall","Aringsmall","AEsmall","Ccedillasmall","Egravesmall","Eacutesmall","Ecircumflexsmall","Edieresissmall","Igravesmall","Iacutesmall","Icircumflexsmall","Idieresissmall","Ethsmall","Ntildesmall","Ogravesmall","Oacutesmall","Ocircumflexsmall","Otildesmall","Odieresissmall","OEsmall","Oslashsmall","Ugravesmall","Uacutesmall","Ucircumflexsmall","Udieresissmall","Yacutesmall","Thornsmall","Ydieresissmall","001.000","001.001","001.002","001.003","Black","Bold","Book","Light","Medium","Regular","Roman","Semibold"],P8=["","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","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"],N8=["","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","space","exclamsmall","Hungarumlautsmall","","dollaroldstyle","dollarsuperior","ampersandsmall","Acutesmall","parenleftsuperior","parenrightsuperior","twodotenleader","onedotenleader","comma","hyphen","period","fraction","zerooldstyle","oneoldstyle","twooldstyle","threeoldstyle","fouroldstyle","fiveoldstyle","sixoldstyle","sevenoldstyle","eightoldstyle","nineoldstyle","colon","semicolon","commasuperior","threequartersemdash","periodsuperior","questionsmall","","asuperior","bsuperior","centsuperior","dsuperior","esuperior","","","isuperior","","","lsuperior","msuperior","nsuperior","osuperior","","","rsuperior","ssuperior","tsuperior","","ff","fi","fl","ffi","ffl","parenleftinferior","","parenrightinferior","Circumflexsmall","hyphensuperior","Gravesmall","Asmall","Bsmall","Csmall","Dsmall","Esmall","Fsmall","Gsmall","Hsmall","Ismall","Jsmall","Ksmall","Lsmall","Msmall","Nsmall","Osmall","Psmall","Qsmall","Rsmall","Ssmall","Tsmall","Usmall","Vsmall","Wsmall","Xsmall","Ysmall","Zsmall","colonmonetary","onefitted","rupiah","Tildesmall","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","exclamdownsmall","centoldstyle","Lslashsmall","","","Scaronsmall","Zcaronsmall","Dieresissmall","Brevesmall","Caronsmall","","Dotaccentsmall","","","Macronsmall","","","figuredash","hypheninferior","","","Ogoneksmall","Ringsmall","Cedillasmall","","","","onequarter","onehalf","threequarters","questiondownsmall","oneeighth","threeeighths","fiveeighths","seveneighths","onethird","twothirds","","","zerosuperior","onesuperior","twosuperior","threesuperior","foursuperior","fivesuperior","sixsuperior","sevensuperior","eightsuperior","ninesuperior","zeroinferior","oneinferior","twoinferior","threeinferior","fourinferior","fiveinferior","sixinferior","seveninferior","eightinferior","nineinferior","centinferior","dollarinferior","periodinferior","commainferior","Agravesmall","Aacutesmall","Acircumflexsmall","Atildesmall","Adieresissmall","Aringsmall","AEsmall","Ccedillasmall","Egravesmall","Eacutesmall","Ecircumflexsmall","Edieresissmall","Igravesmall","Iacutesmall","Icircumflexsmall","Idieresissmall","Ethsmall","Ntildesmall","Ogravesmall","Oacutesmall","Ocircumflexsmall","Otildesmall","Odieresissmall","OEsmall","Oslashsmall","Ugravesmall","Uacutesmall","Ucircumflexsmall","Udieresissmall","Yacutesmall","Thornsmall","Ydieresissmall"],Be=[".notdef",".null","nonmarkingreturn","space","exclam","quotedbl","numbersign","dollar","percent","ampersand","quotesingle","parenleft","parenright","asterisk","plus","comma","hyphen","period","slash","zero","one","two","three","four","five","six","seven","eight","nine","colon","semicolon","less","equal","greater","question","at","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","bracketleft","backslash","bracketright","asciicircum","underscore","grave","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","braceleft","bar","braceright","asciitilde","Adieresis","Aring","Ccedilla","Eacute","Ntilde","Odieresis","Udieresis","aacute","agrave","acircumflex","adieresis","atilde","aring","ccedilla","eacute","egrave","ecircumflex","edieresis","iacute","igrave","icircumflex","idieresis","ntilde","oacute","ograve","ocircumflex","odieresis","otilde","uacute","ugrave","ucircumflex","udieresis","dagger","degree","cent","sterling","section","bullet","paragraph","germandbls","registered","copyright","trademark","acute","dieresis","notequal","AE","Oslash","infinity","plusminus","lessequal","greaterequal","yen","mu","partialdiff","summation","product","pi","integral","ordfeminine","ordmasculine","Omega","ae","oslash","questiondown","exclamdown","logicalnot","radical","florin","approxequal","Delta","guillemotleft","guillemotright","ellipsis","nonbreakingspace","Agrave","Atilde","Otilde","OE","oe","endash","emdash","quotedblleft","quotedblright","quoteleft","quoteright","divide","lozenge","ydieresis","Ydieresis","fraction","currency","guilsinglleft","guilsinglright","fi","fl","daggerdbl","periodcentered","quotesinglbase","quotedblbase","perthousand","Acircumflex","Ecircumflex","Aacute","Edieresis","Egrave","Iacute","Icircumflex","Idieresis","Igrave","Oacute","Ocircumflex","apple","Ograve","Uacute","Ucircumflex","Ugrave","dotlessi","circumflex","tilde","macron","breve","dotaccent","ring","cedilla","hungarumlaut","ogonek","caron","Lslash","lslash","Scaron","scaron","Zcaron","zcaron","brokenbar","Eth","eth","Yacute","yacute","Thorn","thorn","minus","multiply","onesuperior","twosuperior","threesuperior","onehalf","onequarter","threequarters","franc","Gbreve","gbreve","Idotaccent","Scedilla","scedilla","Cacute","cacute","Ccaron","ccaron","dcroat"];function X4(r){this.font=r}X4.prototype.charToGlyphIndex=function(r){var t=r.codePointAt(0),e=this.font.glyphs;if(e){for(var n=0;n<e.length;n+=1)for(var s=e.get(n),i=0;i<s.unicodes.length;i+=1)if(s.unicodes[i]===t)return n}return null};function W4(r){this.cmap=r}W4.prototype.charToGlyphIndex=function(r){return this.cmap.glyphIndexMap[r.codePointAt(0)]||0};function ct(r,t){this.encoding=r,this.charset=t}ct.prototype.charToGlyphIndex=function(r){var t=r.codePointAt(0),e=this.encoding[t];return this.charset.indexOf(e)};function x6(r){switch(r.version){case 1:this.names=Be.slice();break;case 2:this.names=new Array(r.numberOfGlyphs);for(var t=0;t<r.numberOfGlyphs;t++)r.glyphNameIndex[t]<Be.length?this.names[t]=Be[r.glyphNameIndex[t]]:this.names[t]=r.names[r.glyphNameIndex[t]-Be.length];break;case 2.5:this.names=new Array(r.numberOfGlyphs);for(var e=0;e<r.numberOfGlyphs;e++)this.names[e]=Be[e+r.glyphNameIndex[e]];break;case 3:this.names=[];break;default:this.names=[];break}}x6.prototype.nameToGlyphIndex=function(r){return this.names.indexOf(r)},x6.prototype.glyphIndexToName=function(r){return this.names[r]};function U8(r){for(var t,e=r.tables.cmap.glyphIndexMap,n=Object.keys(e),s=0;s<n.length;s+=1){var i=n[s],a=e[i];t=r.glyphs.get(a),t.addUnicode(parseInt(i))}for(var o=0;o<r.glyphs.length;o+=1)t=r.glyphs.get(o),r.cffEncoding?r.isCIDFont?t.name="gid"+o:t.name=r.cffEncoding.charset[o]:r.glyphNames.names&&(t.name=r.glyphNames.glyphIndexToName(o))}function H8(r){r._IndexToUnicodeMap={};for(var t=r.tables.cmap.glyphIndexMap,e=Object.keys(t),n=0;n<e.length;n+=1){var s=e[n],i=t[s];r._IndexToUnicodeMap[i]===void 0?r._IndexToUnicodeMap[i]={unicodes:[parseInt(s)]}:r._IndexToUnicodeMap[i].unicodes.push(parseInt(s))}}function G8(r,t){t.lowMemory?H8(r):U8(r)}function z8(r,t,e,n,s){r.beginPath(),r.moveTo(t,e),r.lineTo(n,s),r.stroke()}var Oe={line:z8};function X8(r,t){var e=t||new _1;return{configurable:!0,get:function(){return typeof e=="function"&&(e=e()),e},set:function(n){e=n}}}function $1(r){this.bindConstructorValues(r)}$1.prototype.bindConstructorValues=function(r){this.index=r.index||0,this.name=r.name||null,this.unicode=r.unicode||void 0,this.unicodes=r.unicodes||r.unicode!==void 0?[r.unicode]:[],"xMin"in r&&(this.xMin=r.xMin),"yMin"in r&&(this.yMin=r.yMin),"xMax"in r&&(this.xMax=r.xMax),"yMax"in r&&(this.yMax=r.yMax),"advanceWidth"in r&&(this.advanceWidth=r.advanceWidth),Object.defineProperty(this,"path",X8(this,r.path))},$1.prototype.addUnicode=function(r){this.unicodes.length===0&&(this.unicode=r),this.unicodes.push(r)},$1.prototype.getBoundingBox=function(){return this.path.getBoundingBox()},$1.prototype.getPath=function(r,t,e,n,s){r=r!==void 0?r:0,t=t!==void 0?t:0,e=e!==void 0?e:72;var i,a;n||(n={});var o=n.xScale,u=n.yScale;if(n.hinting&&s&&s.hinting&&(a=this.path&&s.hinting.exec(this,e)),a)i=s.hinting.getCommands(a),r=Math.round(r),t=Math.round(t),o=u=1;else{i=this.path.commands;var l=1/(this.path.unitsPerEm||1e3)*e;o===void 0&&(o=l),u===void 0&&(u=l)}for(var c=new _1,h=0;h<i.length;h+=1){var f=i[h];f.type==="M"?c.moveTo(r+f.x*o,t+-f.y*u):f.type==="L"?c.lineTo(r+f.x*o,t+-f.y*u):f.type==="Q"?c.quadraticCurveTo(r+f.x1*o,t+-f.y1*u,r+f.x*o,t+-f.y*u):f.type==="C"?c.curveTo(r+f.x1*o,t+-f.y1*u,r+f.x2*o,t+-f.y2*u,r+f.x*o,t+-f.y*u):f.type==="Z"&&c.closePath()}return c},$1.prototype.getContours=function(){if(this.points===void 0)return[];for(var r=[],t=[],e=0;e<this.points.length;e+=1){var n=this.points[e];t.push(n),n.lastPointOfContour&&(r.push(t),t=[])}return J.argument(t.length===0,"There are still points left in the current contour."),r},$1.prototype.getMetrics=function(){for(var r=this.path.commands,t=[],e=[],n=0;n<r.length;n+=1){var s=r[n];s.type!=="Z"&&(t.push(s.x),e.push(s.y)),(s.type==="Q"||s.type==="C")&&(t.push(s.x1),e.push(s.y1)),s.type==="C"&&(t.push(s.x2),e.push(s.y2))}var i={xMin:Math.min.apply(null,t),yMin:Math.min.apply(null,e),xMax:Math.max.apply(null,t),yMax:Math.max.apply(null,e),leftSideBearing:this.leftSideBearing};return isFinite(i.xMin)||(i.xMin=0),isFinite(i.xMax)||(i.xMax=this.advanceWidth),isFinite(i.yMin)||(i.yMin=0),isFinite(i.yMax)||(i.yMax=0),i.rightSideBearing=this.advanceWidth-i.leftSideBearing-(i.xMax-i.xMin),i},$1.prototype.draw=function(r,t,e,n,s){this.getPath(t,e,n,s).draw(r)},$1.prototype.drawPoints=function(r,t,e,n){function s(h,f,_,p){r.beginPath();for(var m=0;m<h.length;m+=1)r.moveTo(f+h[m].x*p,_+h[m].y*p),r.arc(f+h[m].x*p,_+h[m].y*p,2,0,Math.PI*2,!1);r.closePath(),r.fill()}t=t!==void 0?t:0,e=e!==void 0?e:0,n=n!==void 0?n:24;for(var i=1/this.path.unitsPerEm*n,a=[],o=[],u=this.path,l=0;l<u.commands.length;l+=1){var c=u.commands[l];c.x!==void 0&&a.push({x:c.x,y:-c.y}),c.x1!==void 0&&o.push({x:c.x1,y:-c.y1}),c.x2!==void 0&&o.push({x:c.x2,y:-c.y2})}r.fillStyle="blue",s(a,t,e,i),r.fillStyle="red",s(o,t,e,i)},$1.prototype.drawMetrics=function(r,t,e,n){var s;t=t!==void 0?t:0,e=e!==void 0?e:0,n=n!==void 0?n:24,s=1/this.path.unitsPerEm*n,r.lineWidth=1,r.strokeStyle="black",Oe.line(r,t,-1e4,t,1e4),Oe.line(r,-1e4,e,1e4,e);var i=this.xMin||0,a=this.yMin||0,o=this.xMax||0,u=this.yMax||0,l=this.advanceWidth||0;r.strokeStyle="blue",Oe.line(r,t+i*s,-1e4,t+i*s,1e4),Oe.line(r,t+o*s,-1e4,t+o*s,1e4),Oe.line(r,-1e4,e+-a*s,1e4,e+-a*s),Oe.line(r,-1e4,e+-u*s,1e4,e+-u*s),r.strokeStyle="green",Oe.line(r,t+l*s,-1e4,t+l*s,1e4)};function ht(r,t,e){Object.defineProperty(r,t,{get:function(){return r.path,r[e]},set:function(n){r[e]=n},enumerable:!0,configurable:!0})}function B6(r,t){if(this.font=r,this.glyphs={},Array.isArray(t))for(var e=0;e<t.length;e++){var n=t[e];n.path.unitsPerEm=r.unitsPerEm,this.glyphs[e]=n}this.length=t&&t.length||0}B6.prototype.get=function(r){if(this.glyphs[r]===void 0){this.font._push(r),typeof this.glyphs[r]=="function"&&(this.glyphs[r]=this.glyphs[r]());var t=this.glyphs[r],e=this.font._IndexToUnicodeMap[r];if(e)for(var n=0;n<e.unicodes.length;n++)t.addUnicode(e.unicodes[n]);this.font.cffEncoding?this.font.isCIDFont?t.name="gid"+r:t.name=this.font.cffEncoding.charset[r]:this.font.glyphNames.names&&(t.name=this.font.glyphNames.glyphIndexToName(r)),this.glyphs[r].advanceWidth=this.font._hmtxTableData[r].advanceWidth,this.glyphs[r].leftSideBearing=this.font._hmtxTableData[r].leftSideBearing}else typeof this.glyphs[r]=="function"&&(this.glyphs[r]=this.glyphs[r]());return this.glyphs[r]},B6.prototype.push=function(r,t){this.glyphs[r]=t,this.length++};function W8(r,t){return new $1({index:t,font:r})}function Y8(r,t,e,n,s,i){return function(){var a=new $1({index:t,font:r});return a.path=function(){e(a,n,s);var o=i(r.glyphs,a);return o.unitsPerEm=r.unitsPerEm,o},ht(a,"xMin","_xMin"),ht(a,"xMax","_xMax"),ht(a,"yMin","_yMin"),ht(a,"yMax","_yMax"),a}}function V8(r,t,e,n){return function(){var s=new $1({index:t,font:r});return s.path=function(){var i=e(r,s,n);return i.unitsPerEm=r.unitsPerEm,i},s}}var J1={GlyphSet:B6,glyphLoader:W8,ttfGlyphLoader:Y8,cffGlyphLoader:V8};function Y4(r,t){if(r===t)return!0;if(Array.isArray(r)&&Array.isArray(t)){if(r.length!==t.length)return!1;for(var e=0;e<r.length;e+=1)if(!Y4(r[e],t[e]))return!1;return!0}else return!1}function O6(r){var t;return r.length<1240?t=107:r.length<33900?t=1131:t=32768,t}function _e(r,t,e){var n=[],s=[],i=Y.getCard16(r,t),a,o;if(i!==0){var u=Y.getByte(r,t+2);a=t+(i+1)*u+2;for(var l=t+3,c=0;c<i+1;c+=1)n.push(Y.getOffset(r,l,u)),l+=u;o=a+n[i]}else o=t+2;for(var h=0;h<n.length-1;h+=1){var f=Y.getBytes(r,a+n[h],a+n[h+1]);e&&(f=e(f)),s.push(f)}return{objects:s,startOffset:t,endOffset:o}}function j8(r,t){var e=[],n=Y.getCard16(r,t),s,i;if(n!==0){var a=Y.getByte(r,t+2);s=t+(n+1)*a+2;for(var o=t+3,u=0;u<n+1;u+=1)e.push(Y.getOffset(r,o,a)),o+=a;i=s+e[n]}else i=t+2;return{offsets:e,startOffset:t,endOffset:i}}function K8(r,t,e,n,s){var i=Y.getCard16(e,n),a=0;if(i!==0){var o=Y.getByte(e,n+2);a=n+(i+1)*o+2}var u=Y.getBytes(e,a+t[r],a+t[r+1]);return s&&(u=s(u)),u}function q8(r){for(var t="",e=15,n=["0","1","2","3","4","5","6","7","8","9",".","E","E-",null,"-"];;){var s=r.parseByte(),i=s>>4,a=s&15;if(i===e||(t+=n[i],a===e))break;t+=n[a]}return parseFloat(t)}function Z8(r,t){var e,n,s,i;if(t===28)return e=r.parseByte(),n=r.parseByte(),e<<8|n;if(t===29)return e=r.parseByte(),n=r.parseByte(),s=r.parseByte(),i=r.parseByte(),e<<24|n<<16|s<<8|i;if(t===30)return q8(r);if(t>=32&&t<=246)return t-139;if(t>=247&&t<=250)return e=r.parseByte(),(t-247)*256+e+108;if(t>=251&&t<=254)return e=r.parseByte(),-(t-251)*256-e-108;throw new Error("Invalid b0 "+t)}function J8(r){for(var t={},e=0;e<r.length;e+=1){var n=r[e][0],s=r[e][1],i=void 0;if(s.length===1?i=s[0]:i=s,t.hasOwnProperty(n)&&!isNaN(t[n]))throw new Error("Object "+t+" already has key "+n);t[n]=i}return t}function V4(r,t,e){t=t!==void 0?t:0;var n=new Y.Parser(r,t),s=[],i=[];for(e=e!==void 0?e:r.length;n.relativeOffset<e;){var a=n.parseByte();a<=21?(a===12&&(a=1200+n.parseByte()),s.push([a,i]),i=[]):i.push(Z8(n,a))}return J8(s)}function S2(r,t){return t<=390?t=lt[t]:t=r[t-391],t}function j4(r,t,e){for(var n={},s,i=0;i<t.length;i+=1){var a=t[i];if(Array.isArray(a.type)){var o=[];o.length=a.type.length;for(var u=0;u<a.type.length;u++)s=r[a.op]!==void 0?r[a.op][u]:void 0,s===void 0&&(s=a.value!==void 0&&a.value[u]!==void 0?a.value[u]:null),a.type[u]==="SID"&&(s=S2(e,s)),o[u]=s;n[a.name]=o}else s=r[a.op],s===void 0&&(s=a.value!==void 0?a.value:null),a.type==="SID"&&(s=S2(e,s)),n[a.name]=s}return n}function Q8(r,t){var e={};return e.formatMajor=Y.getCard8(r,t),e.formatMinor=Y.getCard8(r,t+1),e.size=Y.getCard8(r,t+2),e.offsetSize=Y.getCard8(r,t+3),e.startOffset=t,e.endOffset=t+4,e}var K4=[{name:"version",op:0,type:"SID"},{name:"notice",op:1,type:"SID"},{name:"copyright",op:1200,type:"SID"},{name:"fullName",op:2,type:"SID"},{name:"familyName",op:3,type:"SID"},{name:"weight",op:4,type:"SID"},{name:"isFixedPitch",op:1201,type:"number",value:0},{name:"italicAngle",op:1202,type:"number",value:0},{name:"underlinePosition",op:1203,type:"number",value:-100},{name:"underlineThickness",op:1204,type:"number",value:50},{name:"paintType",op:1205,type:"number",value:0},{name:"charstringType",op:1206,type:"number",value:2},{name:"fontMatrix",op:1207,type:["real","real","real","real","real","real"],value:[.001,0,0,.001,0,0]},{name:"uniqueId",op:13,type:"number"},{name:"fontBBox",op:5,type:["number","number","number","number"],value:[0,0,0,0]},{name:"strokeWidth",op:1208,type:"number",value:0},{name:"xuid",op:14,type:[],value:null},{name:"charset",op:15,type:"offset",value:0},{name:"encoding",op:16,type:"offset",value:0},{name:"charStrings",op:17,type:"offset",value:0},{name:"private",op:18,type:["number","offset"],value:[0,0]},{name:"ros",op:1230,type:["SID","SID","number"]},{name:"cidFontVersion",op:1231,type:"number",value:0},{name:"cidFontRevision",op:1232,type:"number",value:0},{name:"cidFontType",op:1233,type:"number",value:0},{name:"cidCount",op:1234,type:"number",value:8720},{name:"uidBase",op:1235,type:"number"},{name:"fdArray",op:1236,type:"offset"},{name:"fdSelect",op:1237,type:"offset"},{name:"fontName",op:1238,type:"SID"}],q4=[{name:"subrs",op:19,type:"offset",value:0},{name:"defaultWidthX",op:20,type:"number",value:0},{name:"nominalWidthX",op:21,type:"number",value:0}];function es(r,t){var e=V4(r,0,r.byteLength);return j4(e,K4,t)}function Z4(r,t,e,n){var s=V4(r,t,e);return j4(s,q4,n)}function J4(r,t,e,n){for(var s=[],i=0;i<e.length;i+=1){var a=new DataView(new Uint8Array(e[i]).buffer),o=es(a,n);o._subrs=[],o._subrsBias=0,o._defaultWidthX=0,o._nominalWidthX=0;var u=o.private[0],l=o.private[1];if(u!==0&&l!==0){var c=Z4(r,l+t,u,n);if(o._defaultWidthX=c.defaultWidthX,o._nominalWidthX=c.nominalWidthX,c.subrs!==0){var h=l+c.subrs,f=_e(r,h+t);o._subrs=f.objects,o._subrsBias=O6(o._subrs)}o._privateDict=c}s.push(o)}return s}function ts(r,t,e,n){var s,i,a=new Y.Parser(r,t);e-=1;var o=[".notdef"],u=a.parseCard8();if(u===0)for(var l=0;l<e;l+=1)s=a.parseSID(),o.push(S2(n,s));else if(u===1)for(;o.length<=e;){s=a.parseSID(),i=a.parseCard8();for(var c=0;c<=i;c+=1)o.push(S2(n,s)),s+=1}else if(u===2)for(;o.length<=e;){s=a.parseSID(),i=a.parseCard16();for(var h=0;h<=i;h+=1)o.push(S2(n,s)),s+=1}else throw new Error("Unknown charset format "+u);return o}function ns(r,t,e){var n,s={},i=new Y.Parser(r,t),a=i.parseCard8();if(a===0)for(var o=i.parseCard8(),u=0;u<o;u+=1)n=i.parseCard8(),s[n]=u;else if(a===1){var l=i.parseCard8();n=1;for(var c=0;c<l;c+=1)for(var h=i.parseCard8(),f=i.parseCard8(),_=h;_<=h+f;_+=1)s[_]=n,n+=1}else throw new Error("Unknown encoding format "+a);return new ct(s,e)}function Q4(r,t,e){var n,s,i,a,o=new _1,u=[],l=0,c=!1,h=!1,f=0,_=0,p,m,v,F;if(r.isCIDFont){var E=r.tables.cff.topDict._fdSelect[t.index],S=r.tables.cff.topDict._fdArray[E];p=S._subrs,m=S._subrsBias,v=S._defaultWidthX,F=S._nominalWidthX}else p=r.tables.cff.topDict._subrs,m=r.tables.cff.topDict._subrsBias,v=r.tables.cff.topDict._defaultWidthX,F=r.tables.cff.topDict._nominalWidthX;var B=v;function x(T,R){h&&o.closePath(),o.moveTo(T,R),h=!0}function w(){var T;T=u.length%2!==0,T&&!c&&(B=u.shift()+F),l+=u.length>>1,u.length=0,c=!0}function O(T){for(var R,k,$,M,U,I,L,H,X,j,G,Q,t1=0;t1<T.length;){var n1=T[t1];switch(t1+=1,n1){case 1:w();break;case 3:w();break;case 4:u.length>1&&!c&&(B=u.shift()+F,c=!0),_+=u.pop(),x(f,_);break;case 5:for(;u.length>0;)f+=u.shift(),_+=u.shift(),o.lineTo(f,_);break;case 6:for(;u.length>0&&(f+=u.shift(),o.lineTo(f,_),u.length!==0);)_+=u.shift(),o.lineTo(f,_);break;case 7:for(;u.length>0&&(_+=u.shift(),o.lineTo(f,_),u.length!==0);)f+=u.shift(),o.lineTo(f,_);break;case 8:for(;u.length>0;)n=f+u.shift(),s=_+u.shift(),i=n+u.shift(),a=s+u.shift(),f=i+u.shift(),_=a+u.shift(),o.curveTo(n,s,i,a,f,_);break;case 10:U=u.pop()+m,I=p[U],I&&O(I);break;case 11:return;case 12:switch(n1=T[t1],t1+=1,n1){case 35:n=f+u.shift(),s=_+u.shift(),i=n+u.shift(),a=s+u.shift(),L=i+u.shift(),H=a+u.shift(),X=L+u.shift(),j=H+u.shift(),G=X+u.shift(),Q=j+u.shift(),f=G+u.shift(),_=Q+u.shift(),u.shift(),o.curveTo(n,s,i,a,L,H),o.curveTo(X,j,G,Q,f,_);break;case 34:n=f+u.shift(),s=_,i=n+u.shift(),a=s+u.shift(),L=i+u.shift(),H=a,X=L+u.shift(),j=a,G=X+u.shift(),Q=_,f=G+u.shift(),o.curveTo(n,s,i,a,L,H),o.curveTo(X,j,G,Q,f,_);break;case 36:n=f+u.shift(),s=_+u.shift(),i=n+u.shift(),a=s+u.shift(),L=i+u.shift(),H=a,X=L+u.shift(),j=a,G=X+u.shift(),Q=j+u.shift(),f=G+u.shift(),o.curveTo(n,s,i,a,L,H),o.curveTo(X,j,G,Q,f,_);break;case 37:n=f+u.shift(),s=_+u.shift(),i=n+u.shift(),a=s+u.shift(),L=i+u.shift(),H=a+u.shift(),X=L+u.shift(),j=H+u.shift(),G=X+u.shift(),Q=j+u.shift(),Math.abs(G-f)>Math.abs(Q-_)?f=G+u.shift():_=Q+u.shift(),o.curveTo(n,s,i,a,L,H),o.curveTo(X,j,G,Q,f,_);break;default:console.log("Glyph "+t.index+": unknown operator 1200"+n1),u.length=0}break;case 14:u.length>0&&!c&&(B=u.shift()+F,c=!0),h&&(o.closePath(),h=!1);break;case 18:w();break;case 19:case 20:w(),t1+=l+7>>3;break;case 21:u.length>2&&!c&&(B=u.shift()+F,c=!0),_+=u.pop(),f+=u.pop(),x(f,_);break;case 22:u.length>1&&!c&&(B=u.shift()+F,c=!0),f+=u.pop(),x(f,_);break;case 23:w();break;case 24:for(;u.length>2;)n=f+u.shift(),s=_+u.shift(),i=n+u.shift(),a=s+u.shift(),f=i+u.shift(),_=a+u.shift(),o.curveTo(n,s,i,a,f,_);f+=u.shift(),_+=u.shift(),o.lineTo(f,_);break;case 25:for(;u.length>6;)f+=u.shift(),_+=u.shift(),o.lineTo(f,_);n=f+u.shift(),s=_+u.shift(),i=n+u.shift(),a=s+u.shift(),f=i+u.shift(),_=a+u.shift(),o.curveTo(n,s,i,a,f,_);break;case 26:for(u.length%2&&(f+=u.shift());u.length>0;)n=f,s=_+u.shift(),i=n+u.shift(),a=s+u.shift(),f=i,_=a+u.shift(),o.curveTo(n,s,i,a,f,_);break;case 27:for(u.length%2&&(_+=u.shift());u.length>0;)n=f+u.shift(),s=_,i=n+u.shift(),a=s+u.shift(),f=i+u.shift(),_=a,o.curveTo(n,s,i,a,f,_);break;case 28:R=T[t1],k=T[t1+1],u.push((R<<24|k<<16)>>16),t1+=2;break;case 29:U=u.pop()+r.gsubrsBias,I=r.gsubrs[U],I&&O(I);break;case 30:for(;u.length>0&&(n=f,s=_+u.shift(),i=n+u.shift(),a=s+u.shift(),f=i+u.shift(),_=a+(u.length===1?u.shift():0),o.curveTo(n,s,i,a,f,_),u.length!==0);)n=f+u.shift(),s=_,i=n+u.shift(),a=s+u.shift(),_=a+u.shift(),f=i+(u.length===1?u.shift():0),o.curveTo(n,s,i,a,f,_);break;case 31:for(;u.length>0&&(n=f+u.shift(),s=_,i=n+u.shift(),a=s+u.shift(),_=a+u.shift(),f=i+(u.length===1?u.shift():0),o.curveTo(n,s,i,a,f,_),u.length!==0);)n=f,s=_+u.shift(),i=n+u.shift(),a=s+u.shift(),f=i+u.shift(),_=a+(u.length===1?u.shift():0),o.curveTo(n,s,i,a,f,_);break;default:n1<32?console.log("Glyph "+t.index+": unknown operator "+n1):n1<247?u.push(n1-139):n1<251?(R=T[t1],t1+=1,u.push((n1-247)*256+R+108)):n1<255?(R=T[t1],t1+=1,u.push(-(n1-251)*256-R-108)):(R=T[t1],k=T[t1+1],$=T[t1+2],M=T[t1+3],t1+=4,u.push((R<<24|k<<16|$<<8|M)/65536))}}}return O(e),t.advanceWidth=B,o}function rs(r,t,e,n){var s=[],i,a=new Y.Parser(r,t),o=a.parseCard8();if(o===0)for(var u=0;u<e;u++){if(i=a.parseCard8(),i>=n)throw new Error("CFF table CID Font FDSelect has bad FD index value "+i+" (FD count "+n+")");s.push(i)}else if(o===3){var l=a.parseCard16(),c=a.parseCard16();if(c!==0)throw new Error("CFF Table CID Font FDSelect format 3 range has bad initial GID "+c);for(var h,f=0;f<l;f++){if(i=a.parseCard8(),h=a.parseCard16(),i>=n)throw new Error("CFF table CID Font FDSelect has bad FD index value "+i+" (FD count "+n+")");if(h>e)throw new Error("CFF Table CID Font FDSelect format 3 range has bad GID "+h);for(;c<h;c++)s.push(i);c=h}if(h!==e)throw new Error("CFF Table CID Font FDSelect format 3 range has bad final GID "+h)}else throw new Error("CFF Table CID Font FDSelect table has unsupported format "+o);return s}function ss(r,t,e,n){e.tables.cff={};var s=Q8(r,t),i=_e(r,s.endOffset,Y.bytesToString),a=_e(r,i.endOffset),o=_e(r,a.endOffset,Y.bytesToString),u=_e(r,o.endOffset);e.gsubrs=u.objects,e.gsubrsBias=O6(e.gsubrs);var l=J4(r,t,a.objects,o.objects);if(l.length!==1)throw new Error("CFF table has too many fonts in 'FontSet' - count of fonts NameIndex.length = "+l.length);var c=l[0];if(e.tables.cff.topDict=c,c._privateDict&&(e.defaultWidthX=c._privateDict.defaultWidthX,e.nominalWidthX=c._privateDict.nominalWidthX),c.ros[0]!==void 0&&c.ros[1]!==void 0&&(e.isCIDFont=!0),e.isCIDFont){var h=c.fdArray,f=c.fdSelect;if(h===0||f===0)throw new Error("Font is marked as a CID font, but FDArray and/or FDSelect information is missing");h+=t;var _=_e(r,h),p=J4(r,t,_.objects,o.objects);c._fdArray=p,f+=t,c._fdSelect=rs(r,f,e.numGlyphs,p.length)}var m=t+c.private[1],v=Z4(r,m,c.private[0],o.objects);if(e.defaultWidthX=v.defaultWidthX,e.nominalWidthX=v.nominalWidthX,v.subrs!==0){var F=m+v.subrs,E=_e(r,F);e.subrs=E.objects,e.subrsBias=O6(e.subrs)}else e.subrs=[],e.subrsBias=0;var S;n.lowMemory?(S=j8(r,t+c.charStrings),e.nGlyphs=S.offsets.length):(S=_e(r,t+c.charStrings),e.nGlyphs=S.objects.length);var B=ts(r,t+c.charset,e.nGlyphs,o.objects);if(c.encoding===0?e.cffEncoding=new ct(P8,B):c.encoding===1?e.cffEncoding=new ct(N8,B):e.cffEncoding=ns(r,t+c.encoding,B),e.encoding=e.encoding||e.cffEncoding,e.glyphs=new J1.GlyphSet(e),n.lowMemory)e._push=function(O){var T=K8(O,S.offsets,r,t+c.charStrings);e.glyphs.push(O,J1.cffGlyphLoader(e,O,Q4,T))};else for(var x=0;x<e.nGlyphs;x+=1){var w=S.objects[x];e.glyphs.push(x,J1.cffGlyphLoader(e,x,Q4,w))}}function e7(r,t){var e,n=lt.indexOf(r);return n>=0&&(e=n),n=t.indexOf(r),n>=0?e=n+lt.length:(e=lt.length+t.length,t.push(r)),e}function is(){return new z.Record("Header",[{name:"major",type:"Card8",value:1},{name:"minor",type:"Card8",value:0},{name:"hdrSize",type:"Card8",value:4},{name:"major",type:"Card8",value:1}])}function as(r){var t=new z.Record("Name INDEX",[{name:"names",type:"INDEX",value:[]}]);t.names=[];for(var e=0;e<r.length;e+=1)t.names.push({name:"name_"+e,type:"NAME",value:r[e]});return t}function t7(r,t,e){for(var n={},s=0;s<r.length;s+=1){var i=r[s],a=t[i.name];a!==void 0&&!Y4(a,i.value)&&(i.type==="SID"&&(a=e7(a,e)),n[i.op]={name:i.name,type:i.type,value:a})}return n}function n7(r,t){var e=new z.Record("Top DICT",[{name:"dict",type:"DICT",value:{}}]);return e.dict=t7(K4,r,t),e}function r7(r){var t=new z.Record("Top DICT INDEX",[{name:"topDicts",type:"INDEX",value:[]}]);return t.topDicts=[{name:"topDict_0",type:"TABLE",value:r}],t}function os(r){var t=new z.Record("String INDEX",[{name:"strings",type:"INDEX",value:[]}]);t.strings=[];for(var e=0;e<r.length;e+=1)t.strings.push({name:"string_"+e,type:"STRING",value:r[e]});return t}function us(){return new z.Record("Global Subr INDEX",[{name:"subrs",type:"INDEX",value:[]}])}function ls(r,t){for(var e=new z.Record("Charsets",[{name:"format",type:"Card8",value:0}]),n=0;n<r.length;n+=1){var s=r[n],i=e7(s,t);e.fields.push({name:"glyph_"+n,type:"SID",value:i})}return e}function cs(r){var t=[],e=r.path;t.push({name:"width",type:"NUMBER",value:r.advanceWidth});for(var n=0,s=0,i=0;i<e.commands.length;i+=1){var a=void 0,o=void 0,u=e.commands[i];if(u.type==="Q"){var l=.3333333333333333,c=2/3;u={type:"C",x:u.x,y:u.y,x1:Math.round(l*n+c*u.x1),y1:Math.round(l*s+c*u.y1),x2:Math.round(l*u.x+c*u.x1),y2:Math.round(l*u.y+c*u.y1)}}if(u.type==="M")a=Math.round(u.x-n),o=Math.round(u.y-s),t.push({name:"dx",type:"NUMBER",value:a}),t.push({name:"dy",type:"NUMBER",value:o}),t.push({name:"rmoveto",type:"OP",value:21}),n=Math.round(u.x),s=Math.round(u.y);else if(u.type==="L")a=Math.round(u.x-n),o=Math.round(u.y-s),t.push({name:"dx",type:"NUMBER",value:a}),t.push({name:"dy",type:"NUMBER",value:o}),t.push({name:"rlineto",type:"OP",value:5}),n=Math.round(u.x),s=Math.round(u.y);else if(u.type==="C"){var h=Math.round(u.x1-n),f=Math.round(u.y1-s),_=Math.round(u.x2-u.x1),p=Math.round(u.y2-u.y1);a=Math.round(u.x-u.x2),o=Math.round(u.y-u.y2),t.push({name:"dx1",type:"NUMBER",value:h}),t.push({name:"dy1",type:"NUMBER",value:f}),t.push({name:"dx2",type:"NUMBER",value:_}),t.push({name:"dy2",type:"NUMBER",value:p}),t.push({name:"dx",type:"NUMBER",value:a}),t.push({name:"dy",type:"NUMBER",value:o}),t.push({name:"rrcurveto",type:"OP",value:8}),n=Math.round(u.x),s=Math.round(u.y)}}return t.push({name:"endchar",type:"OP",value:14}),t}function hs(r){for(var t=new z.Record("CharStrings INDEX",[{name:"charStrings",type:"INDEX",value:[]}]),e=0;e<r.length;e+=1){var n=r.get(e),s=cs(n);t.charStrings.push({name:n.name,type:"CHARSTRING",value:s})}return t}function fs(r,t){var e=new z.Record("Private DICT",[{name:"dict",type:"DICT",value:{}}]);return e.dict=t7(q4,r,t),e}function ds(r,t){for(var e=new z.Table("CFF ",[{name:"header",type:"RECORD"},{name:"nameIndex",type:"RECORD"},{name:"topDictIndex",type:"RECORD"},{name:"stringIndex",type:"RECORD"},{name:"globalSubrIndex",type:"RECORD"},{name:"charsets",type:"RECORD"},{name:"charStringsIndex",type:"RECORD"},{name:"privateDict",type:"RECORD"}]),n=1/t.unitsPerEm,s={version:t.version,fullName:t.fullName,familyName:t.familyName,weight:t.weightName,fontBBox:t.fontBBox||[0,0,0,0],fontMatrix:[n,0,0,n,0,0],charset:999,encoding:0,charStrings:999,private:[0,999]},i={},a=[],o,u=1;u<r.length;u+=1)o=r.get(u),a.push(o.name);var l=[];e.header=is(),e.nameIndex=as([t.postScriptName]);var c=n7(s,l);e.topDictIndex=r7(c),e.globalSubrIndex=us(),e.charsets=ls(a,l),e.charStringsIndex=hs(r),e.privateDict=fs(i,l),e.stringIndex=os(l);var h=e.header.sizeOf()+e.nameIndex.sizeOf()+e.topDictIndex.sizeOf()+e.stringIndex.sizeOf()+e.globalSubrIndex.sizeOf();return s.charset=h,s.encoding=0,s.charStrings=s.charset+e.charsets.sizeOf(),s.private[1]=s.charStrings+e.charStringsIndex.sizeOf(),c=n7(s,l),e.topDictIndex=r7(c),e}var s7={parse:ss,make:ds};function _s(r,t){var e={},n=new Y.Parser(r,t);return e.version=n.parseVersion(),e.fontRevision=Math.round(n.parseFixed()*1e3)/1e3,e.checkSumAdjustment=n.parseULong(),e.magicNumber=n.parseULong(),J.argument(e.magicNumber===1594834165,"Font header has wrong magic number."),e.flags=n.parseUShort(),e.unitsPerEm=n.parseUShort(),e.created=n.parseLongDateTime(),e.modified=n.parseLongDateTime(),e.xMin=n.parseShort(),e.yMin=n.parseShort(),e.xMax=n.parseShort(),e.yMax=n.parseShort(),e.macStyle=n.parseUShort(),e.lowestRecPPEM=n.parseUShort(),e.fontDirectionHint=n.parseShort(),e.indexToLocFormat=n.parseShort(),e.glyphDataFormat=n.parseShort(),e}function gs(r){var t=Math.round(new Date().getTime()/1e3)+2082844800,e=t;return r.createdTimestamp&&(e=r.createdTimestamp+2082844800),new z.Table("head",[{name:"version",type:"FIXED",value:65536},{name:"fontRevision",type:"FIXED",value:65536},{name:"checkSumAdjustment",type:"ULONG",value:0},{name:"magicNumber",type:"ULONG",value:1594834165},{name:"flags",type:"USHORT",value:0},{name:"unitsPerEm",type:"USHORT",value:1e3},{name:"created",type:"LONGDATETIME",value:e},{name:"modified",type:"LONGDATETIME",value:t},{name:"xMin",type:"SHORT",value:0},{name:"yMin",type:"SHORT",value:0},{name:"xMax",type:"SHORT",value:0},{name:"yMax",type:"SHORT",value:0},{name:"macStyle",type:"USHORT",value:0},{name:"lowestRecPPEM",type:"USHORT",value:0},{name:"fontDirectionHint",type:"SHORT",value:2},{name:"indexToLocFormat",type:"SHORT",value:0},{name:"glyphDataFormat",type:"SHORT",value:0}],r)}var i7={parse:_s,make:gs};function Ds(r,t){var e={},n=new Y.Parser(r,t);return e.version=n.parseVersion(),e.ascender=n.parseShort(),e.descender=n.parseShort(),e.lineGap=n.parseShort(),e.advanceWidthMax=n.parseUShort(),e.minLeftSideBearing=n.parseShort(),e.minRightSideBearing=n.parseShort(),e.xMaxExtent=n.parseShort(),e.caretSlopeRise=n.parseShort(),e.caretSlopeRun=n.parseShort(),e.caretOffset=n.parseShort(),n.relativeOffset+=8,e.metricDataFormat=n.parseShort(),e.numberOfHMetrics=n.parseUShort(),e}function ps(r){return new z.Table("hhea",[{name:"version",type:"FIXED",value:65536},{name:"ascender",type:"FWORD",value:0},{name:"descender",type:"FWORD",value:0},{name:"lineGap",type:"FWORD",value:0},{name:"advanceWidthMax",type:"UFWORD",value:0},{name:"minLeftSideBearing",type:"FWORD",value:0},{name:"minRightSideBearing",type:"FWORD",value:0},{name:"xMaxExtent",type:"FWORD",value:0},{name:"caretSlopeRise",type:"SHORT",value:1},{name:"caretSlopeRun",type:"SHORT",value:0},{name:"caretOffset",type:"SHORT",value:0},{name:"reserved1",type:"SHORT",value:0},{name:"reserved2",type:"SHORT",value:0},{name:"reserved3",type:"SHORT",value:0},{name:"reserved4",type:"SHORT",value:0},{name:"metricDataFormat",type:"SHORT",value:0},{name:"numberOfHMetrics",type:"USHORT",value:0}],r)}var a7={parse:Ds,make:ps};function vs(r,t,e,n,s){for(var i,a,o=new Y.Parser(r,t),u=0;u<n;u+=1){u<e&&(i=o.parseUShort(),a=o.parseShort());var l=s.get(u);l.advanceWidth=i,l.leftSideBearing=a}}function ms(r,t,e,n,s){r._hmtxTableData={};for(var i,a,o=new Y.Parser(t,e),u=0;u<s;u+=1)u<n&&(i=o.parseUShort(),a=o.parseShort()),r._hmtxTableData[u]={advanceWidth:i,leftSideBearing:a}}function bs(r,t,e,n,s,i,a){a.lowMemory?ms(r,t,e,n,s):vs(t,e,n,s,i)}function ys(r){for(var t=new z.Table("hmtx",[]),e=0;e<r.length;e+=1){var n=r.get(e),s=n.advanceWidth||0,i=n.leftSideBearing||0;t.fields.push({name:"advanceWidth_"+e,type:"USHORT",value:s}),t.fields.push({name:"leftSideBearing_"+e,type:"SHORT",value:i})}return t}var o7={parse:bs,make:ys};function Fs(r){for(var t=new z.Table("ltag",[{name:"version",type:"ULONG",value:1},{name:"flags",type:"ULONG",value:0},{name:"numTags",type:"ULONG",value:r.length}]),e="",n=12+r.length*4,s=0;s<r.length;++s){var i=e.indexOf(r[s]);i<0&&(i=e.length,e+=r[s]),t.fields.push({name:"offset "+s,type:"USHORT",value:n+i}),t.fields.push({name:"length "+s,type:"USHORT",value:r[s].length})}return t.fields.push({name:"stringPool",type:"CHARARRAY",value:e}),t}function Cs(r,t){var e=new Y.Parser(r,t),n=e.parseULong();J.argument(n===1,"Unsupported ltag table version."),e.skip("uLong",1);for(var s=e.parseULong(),i=[],a=0;a<s;a++){for(var o="",u=t+e.parseUShort(),l=e.parseUShort(),c=u;c<u+l;++c)o+=String.fromCharCode(r.getInt8(c));i.push(o)}return i}var u7={make:Fs,parse:Cs};function Es(r,t){var e={},n=new Y.Parser(r,t);return e.version=n.parseVersion(),e.numGlyphs=n.parseUShort(),e.version===1&&(e.maxPoints=n.parseUShort(),e.maxContours=n.parseUShort(),e.maxCompositePoints=n.parseUShort(),e.maxCompositeContours=n.parseUShort(),e.maxZones=n.parseUShort(),e.maxTwilightPoints=n.parseUShort(),e.maxStorage=n.parseUShort(),e.maxFunctionDefs=n.parseUShort(),e.maxInstructionDefs=n.parseUShort(),e.maxStackElements=n.parseUShort(),e.maxSizeOfInstructions=n.parseUShort(),e.maxComponentElements=n.parseUShort(),e.maxComponentDepth=n.parseUShort()),e}function Ss(r){return new z.Table("maxp",[{name:"version",type:"FIXED",value:20480},{name:"numGlyphs",type:"USHORT",value:r}])}var l7={parse:Es,make:Ss},c7=["copyright","fontFamily","fontSubfamily","uniqueID","fullName","version","postScriptName","trademark","manufacturer","designer","description","manufacturerURL","designerURL","license","licenseURL","reserved","preferredFamily","preferredSubfamily","compatibleFullName","sampleText","postScriptFindFontName","wwsFamily","wwsSubfamily"],h7={0:"en",1:"fr",2:"de",3:"it",4:"nl",5:"sv",6:"es",7:"da",8:"pt",9:"no",10:"he",11:"ja",12:"ar",13:"fi",14:"el",15:"is",16:"mt",17:"tr",18:"hr",19:"zh-Hant",20:"ur",21:"hi",22:"th",23:"ko",24:"lt",25:"pl",26:"hu",27:"es",28:"lv",29:"se",30:"fo",31:"fa",32:"ru",33:"zh",34:"nl-BE",35:"ga",36:"sq",37:"ro",38:"cz",39:"sk",40:"si",41:"yi",42:"sr",43:"mk",44:"bg",45:"uk",46:"be",47:"uz",48:"kk",49:"az-Cyrl",50:"az-Arab",51:"hy",52:"ka",53:"mo",54:"ky",55:"tg",56:"tk",57:"mn-CN",58:"mn",59:"ps",60:"ks",61:"ku",62:"sd",63:"bo",64:"ne",65:"sa",66:"mr",67:"bn",68:"as",69:"gu",70:"pa",71:"or",72:"ml",73:"kn",74:"ta",75:"te",76:"si",77:"my",78:"km",79:"lo",80:"vi",81:"id",82:"tl",83:"ms",84:"ms-Arab",85:"am",86:"ti",87:"om",88:"so",89:"sw",90:"rw",91:"rn",92:"ny",93:"mg",94:"eo",128:"cy",129:"eu",130:"ca",131:"la",132:"qu",133:"gn",134:"ay",135:"tt",136:"ug",137:"dz",138:"jv",139:"su",140:"gl",141:"af",142:"br",143:"iu",144:"gd",145:"gv",146:"ga",147:"to",148:"el-polyton",149:"kl",150:"az",151:"nn"},Ts={0:0,1:0,2:0,3:0,4:0,5:0,6:0,7:0,8:0,9:0,10:5,11:1,12:4,13:0,14:6,15:0,16:0,17:0,18:0,19:2,20:4,21:9,22:21,23:3,24:29,25:29,26:29,27:29,28:29,29:0,30:0,31:4,32:7,33:25,34:0,35:0,36:0,37:0,38:29,39:29,40:0,41:5,42:7,43:7,44:7,45:7,46:7,47:7,48:7,49:7,50:4,51:24,52:23,53:7,54:7,55:7,56:7,57:27,58:7,59:4,60:4,61:4,62:4,63:26,64:9,65:9,66:9,67:13,68:13,69:11,70:10,71:12,72:17,73:16,74:14,75:15,76:18,77:19,78:20,79:22,80:30,81:0,82:0,83:0,84:4,85:28,86:28,87:28,88:0,89:0,90:0,91:0,92:0,93:0,94:0,128:0,129:0,130:0,131:0,132:0,133:0,134:0,135:7,136:4,137:26,138:0,139:0,140:0,141:0,142:0,143:28,144:0,145:0,146:0,147:0,148:6,149:0,150:0,151:0},f7={1078:"af",1052:"sq",1156:"gsw",1118:"am",5121:"ar-DZ",15361:"ar-BH",3073:"ar",2049:"ar-IQ",11265:"ar-JO",13313:"ar-KW",12289:"ar-LB",4097:"ar-LY",6145:"ary",8193:"ar-OM",16385:"ar-QA",1025:"ar-SA",10241:"ar-SY",7169:"aeb",14337:"ar-AE",9217:"ar-YE",1067:"hy",1101:"as",2092:"az-Cyrl",1068:"az",1133:"ba",1069:"eu",1059:"be",2117:"bn",1093:"bn-IN",8218:"bs-Cyrl",5146:"bs",1150:"br",1026:"bg",1027:"ca",3076:"zh-HK",5124:"zh-MO",2052:"zh",4100:"zh-SG",1028:"zh-TW",1155:"co",1050:"hr",4122:"hr-BA",1029:"cs",1030:"da",1164:"prs",1125:"dv",2067:"nl-BE",1043:"nl",3081:"en-AU",10249:"en-BZ",4105:"en-CA",9225:"en-029",16393:"en-IN",6153:"en-IE",8201:"en-JM",17417:"en-MY",5129:"en-NZ",13321:"en-PH",18441:"en-SG",7177:"en-ZA",11273:"en-TT",2057:"en-GB",1033:"en",12297:"en-ZW",1061:"et",1080:"fo",1124:"fil",1035:"fi",2060:"fr-BE",3084:"fr-CA",1036:"fr",5132:"fr-LU",6156:"fr-MC",4108:"fr-CH",1122:"fy",1110:"gl",1079:"ka",3079:"de-AT",1031:"de",5127:"de-LI",4103:"de-LU",2055:"de-CH",1032:"el",1135:"kl",1095:"gu",1128:"ha",1037:"he",1081:"hi",1038:"hu",1039:"is",1136:"ig",1057:"id",1117:"iu",2141:"iu-Latn",2108:"ga",1076:"xh",1077:"zu",1040:"it",2064:"it-CH",1041:"ja",1099:"kn",1087:"kk",1107:"km",1158:"quc",1159:"rw",1089:"sw",1111:"kok",1042:"ko",1088:"ky",1108:"lo",1062:"lv",1063:"lt",2094:"dsb",1134:"lb",1071:"mk",2110:"ms-BN",1086:"ms",1100:"ml",1082:"mt",1153:"mi",1146:"arn",1102:"mr",1148:"moh",1104:"mn",2128:"mn-CN",1121:"ne",1044:"nb",2068:"nn",1154:"oc",1096:"or",1123:"ps",1045:"pl",1046:"pt",2070:"pt-PT",1094:"pa",1131:"qu-BO",2155:"qu-EC",3179:"qu",1048:"ro",1047:"rm",1049:"ru",9275:"smn",4155:"smj-NO",5179:"smj",3131:"se-FI",1083:"se",2107:"se-SE",8251:"sms",6203:"sma-NO",7227:"sms",1103:"sa",7194:"sr-Cyrl-BA",3098:"sr",6170:"sr-Latn-BA",2074:"sr-Latn",1132:"nso",1074:"tn",1115:"si",1051:"sk",1060:"sl",11274:"es-AR",16394:"es-BO",13322:"es-CL",9226:"es-CO",5130:"es-CR",7178:"es-DO",12298:"es-EC",17418:"es-SV",4106:"es-GT",18442:"es-HN",2058:"es-MX",19466:"es-NI",6154:"es-PA",15370:"es-PY",10250:"es-PE",20490:"es-PR",3082:"es",1034:"es",21514:"es-US",14346:"es-UY",8202:"es-VE",2077:"sv-FI",1053:"sv",1114:"syr",1064:"tg",2143:"tzm",1097:"ta",1092:"tt",1098:"te",1054:"th",1105:"bo",1055:"tr",1090:"tk",1152:"ug",1058:"uk",1070:"hsb",1056:"ur",2115:"uz-Cyrl",1091:"uz",1066:"vi",1106:"cy",1160:"wo",1157:"sah",1144:"ii",1130:"yo"};function xs(r,t,e){switch(r){case 0:if(t===65535)return"und";if(e)return e[t];break;case 1:return h7[t];case 3:return f7[t]}}var w6="utf-16",Bs={0:"macintosh",1:"x-mac-japanese",2:"x-mac-chinesetrad",3:"x-mac-korean",6:"x-mac-greek",7:"x-mac-cyrillic",9:"x-mac-devanagai",10:"x-mac-gurmukhi",11:"x-mac-gujarati",12:"x-mac-oriya",13:"x-mac-bengali",14:"x-mac-tamil",15:"x-mac-telugu",16:"x-mac-kannada",17:"x-mac-malayalam",18:"x-mac-sinhalese",19:"x-mac-burmese",20:"x-mac-khmer",21:"x-mac-thai",22:"x-mac-lao",23:"x-mac-georgian",24:"x-mac-armenian",25:"x-mac-chinesesimp",26:"x-mac-tibetan",27:"x-mac-mongolian",28:"x-mac-ethiopic",29:"x-mac-ce",30:"x-mac-vietnamese",31:"x-mac-extarabic"},Os={15:"x-mac-icelandic",17:"x-mac-turkish",18:"x-mac-croatian",24:"x-mac-ce",25:"x-mac-ce",26:"x-mac-ce",27:"x-mac-ce",28:"x-mac-ce",30:"x-mac-icelandic",37:"x-mac-romanian",38:"x-mac-ce",39:"x-mac-ce",40:"x-mac-ce",143:"x-mac-inuit",146:"x-mac-gaelic"};function d7(r,t,e){switch(r){case 0:return w6;case 1:return Os[e]||Bs[t];case 3:if(t===1||t===10)return w6;break}}function ws(r,t,e){for(var n={},s=new Y.Parser(r,t),i=s.parseUShort(),a=s.parseUShort(),o=s.offset+s.parseUShort(),u=0;u<a;u++){var l=s.parseUShort(),c=s.parseUShort(),h=s.parseUShort(),f=s.parseUShort(),_=c7[f]||f,p=s.parseUShort(),m=s.parseUShort(),v=xs(l,h,e),F=d7(l,c,h);if(F!==void 0&&v!==void 0){var E=void 0;if(F===w6?E=je.UTF16(r,o+m,p):E=je.MACSTRING(r,o+m,p,F),E){var S=n[_];S===void 0&&(S=n[_]={}),S[v]=E}}}return i===1&&s.parseUShort(),n}function A6(r){var t={};for(var e in r)t[r[e]]=parseInt(e);return t}function _7(r,t,e,n,s,i){return new z.Record("NameRecord",[{name:"platformID",type:"USHORT",value:r},{name:"encodingID",type:"USHORT",value:t},{name:"languageID",type:"USHORT",value:e},{name:"nameID",type:"USHORT",value:n},{name:"length",type:"USHORT",value:s},{name:"offset",type:"USHORT",value:i}])}function As(r,t){var e=r.length,n=t.length-e+1;e:for(var s=0;s<n;s++)for(;s<n;s++){for(var i=0;i<e;i++)if(t[s+i]!==r[i])continue e;return s}return-1}function g7(r,t){var e=As(r,t);if(e<0){e=t.length;for(var n=0,s=r.length;n<s;++n)t.push(r[n])}return e}function Rs(r,t){var e,n=[],s={},i=A6(c7);for(var a in r){var o=i[a];if(o===void 0&&(o=a),e=parseInt(o),isNaN(e))throw new Error('Name table entry "'+a+'" does not exist, see nameTableNames for complete list.');s[e]=r[a],n.push(e)}for(var u=A6(h7),l=A6(f7),c=[],h=[],f=0;f<n.length;f++){e=n[f];var _=s[e];for(var p in _){var m=_[p],v=1,F=u[p],E=Ts[F],S=d7(v,E,F),B=N.MACSTRING(m,S);B===void 0&&(v=0,F=t.indexOf(p),F<0&&(F=t.length,t.push(p)),E=4,B=N.UTF16(m));var x=g7(B,h);c.push(_7(v,E,F,e,B.length,x));var w=l[p];if(w!==void 0){var O=N.UTF16(m),T=g7(O,h);c.push(_7(3,1,w,e,O.length,T))}}}c.sort(function($,M){return $.platformID-M.platformID||$.encodingID-M.encodingID||$.languageID-M.languageID||$.nameID-M.nameID});for(var R=new z.Table("name",[{name:"format",type:"USHORT",value:0},{name:"count",type:"USHORT",value:c.length},{name:"stringOffset",type:"USHORT",value:6+c.length*12}]),k=0;k<c.length;k++)R.fields.push({name:"record_"+k,type:"RECORD",value:c[k]});return R.fields.push({name:"strings",type:"LITERAL",value:h}),R}var D7={parse:ws,make:Rs},R6=[{begin:0,end:127},{begin:128,end:255},{begin:256,end:383},{begin:384,end:591},{begin:592,end:687},{begin:688,end:767},{begin:768,end:879},{begin:880,end:1023},{begin:11392,end:11519},{begin:1024,end:1279},{begin:1328,end:1423},{begin:1424,end:1535},{begin:42240,end:42559},{begin:1536,end:1791},{begin:1984,end:2047},{begin:2304,end:2431},{begin:2432,end:2559},{begin:2560,end:2687},{begin:2688,end:2815},{begin:2816,end:2943},{begin:2944,end:3071},{begin:3072,end:3199},{begin:3200,end:3327},{begin:3328,end:3455},{begin:3584,end:3711},{begin:3712,end:3839},{begin:4256,end:4351},{begin:6912,end:7039},{begin:4352,end:4607},{begin:7680,end:7935},{begin:7936,end:8191},{begin:8192,end:8303},{begin:8304,end:8351},{begin:8352,end:8399},{begin:8400,end:8447},{begin:8448,end:8527},{begin:8528,end:8591},{begin:8592,end:8703},{begin:8704,end:8959},{begin:8960,end:9215},{begin:9216,end:9279},{begin:9280,end:9311},{begin:9312,end:9471},{begin:9472,end:9599},{begin:9600,end:9631},{begin:9632,end:9727},{begin:9728,end:9983},{begin:9984,end:10175},{begin:12288,end:12351},{begin:12352,end:12447},{begin:12448,end:12543},{begin:12544,end:12591},{begin:12592,end:12687},{begin:43072,end:43135},{begin:12800,end:13055},{begin:13056,end:13311},{begin:44032,end:55215},{begin:55296,end:57343},{begin:67840,end:67871},{begin:19968,end:40959},{begin:57344,end:63743},{begin:12736,end:12783},{begin:64256,end:64335},{begin:64336,end:65023},{begin:65056,end:65071},{begin:65040,end:65055},{begin:65104,end:65135},{begin:65136,end:65279},{begin:65280,end:65519},{begin:65520,end:65535},{begin:3840,end:4095},{begin:1792,end:1871},{begin:1920,end:1983},{begin:3456,end:3583},{begin:4096,end:4255},{begin:4608,end:4991},{begin:5024,end:5119},{begin:5120,end:5759},{begin:5760,end:5791},{begin:5792,end:5887},{begin:6016,end:6143},{begin:6144,end:6319},{begin:10240,end:10495},{begin:40960,end:42127},{begin:5888,end:5919},{begin:66304,end:66351},{begin:66352,end:66383},{begin:66560,end:66639},{begin:118784,end:119039},{begin:119808,end:120831},{begin:1044480,end:1048573},{begin:65024,end:65039},{begin:917504,end:917631},{begin:6400,end:6479},{begin:6480,end:6527},{begin:6528,end:6623},{begin:6656,end:6687},{begin:11264,end:11359},{begin:11568,end:11647},{begin:19904,end:19967},{begin:43008,end:43055},{begin:65536,end:65663},{begin:65856,end:65935},{begin:66432,end:66463},{begin:66464,end:66527},{begin:66640,end:66687},{begin:66688,end:66735},{begin:67584,end:67647},{begin:68096,end:68191},{begin:119552,end:119647},{begin:73728,end:74751},{begin:119648,end:119679},{begin:7040,end:7103},{begin:7168,end:7247},{begin:7248,end:7295},{begin:43136,end:43231},{begin:43264,end:43311},{begin:43312,end:43359},{begin:43520,end:43615},{begin:65936,end:65999},{begin:66e3,end:66047},{begin:66208,end:66271},{begin:127024,end:127135}];function $s(r){for(var t=0;t<R6.length;t+=1){var e=R6[t];if(r>=e.begin&&r<e.end)return t}return-1}function ks(r,t){var e={},n=new Y.Parser(r,t);e.version=n.parseUShort(),e.xAvgCharWidth=n.parseShort(),e.usWeightClass=n.parseUShort(),e.usWidthClass=n.parseUShort(),e.fsType=n.parseUShort(),e.ySubscriptXSize=n.parseShort(),e.ySubscriptYSize=n.parseShort(),e.ySubscriptXOffset=n.parseShort(),e.ySubscriptYOffset=n.parseShort(),e.ySuperscriptXSize=n.parseShort(),e.ySuperscriptYSize=n.parseShort(),e.ySuperscriptXOffset=n.parseShort(),e.ySuperscriptYOffset=n.parseShort(),e.yStrikeoutSize=n.parseShort(),e.yStrikeoutPosition=n.parseShort(),e.sFamilyClass=n.parseShort(),e.panose=[];for(var s=0;s<10;s++)e.panose[s]=n.parseByte();return e.ulUnicodeRange1=n.parseULong(),e.ulUnicodeRange2=n.parseULong(),e.ulUnicodeRange3=n.parseULong(),e.ulUnicodeRange4=n.parseULong(),e.achVendID=String.fromCharCode(n.parseByte(),n.parseByte(),n.parseByte(),n.parseByte()),e.fsSelection=n.parseUShort(),e.usFirstCharIndex=n.parseUShort(),e.usLastCharIndex=n.parseUShort(),e.sTypoAscender=n.parseShort(),e.sTypoDescender=n.parseShort(),e.sTypoLineGap=n.parseShort(),e.usWinAscent=n.parseUShort(),e.usWinDescent=n.parseUShort(),e.version>=1&&(e.ulCodePageRange1=n.parseULong(),e.ulCodePageRange2=n.parseULong()),e.version>=2&&(e.sxHeight=n.parseShort(),e.sCapHeight=n.parseShort(),e.usDefaultChar=n.parseUShort(),e.usBreakChar=n.parseUShort(),e.usMaxContent=n.parseUShort()),e}function Is(r){return new z.Table("OS/2",[{name:"version",type:"USHORT",value:3},{name:"xAvgCharWidth",type:"SHORT",value:0},{name:"usWeightClass",type:"USHORT",value:0},{name:"usWidthClass",type:"USHORT",value:0},{name:"fsType",type:"USHORT",value:0},{name:"ySubscriptXSize",type:"SHORT",value:650},{name:"ySubscriptYSize",type:"SHORT",value:699},{name:"ySubscriptXOffset",type:"SHORT",value:0},{name:"ySubscriptYOffset",type:"SHORT",value:140},{name:"ySuperscriptXSize",type:"SHORT",value:650},{name:"ySuperscriptYSize",type:"SHORT",value:699},{name:"ySuperscriptXOffset",type:"SHORT",value:0},{name:"ySuperscriptYOffset",type:"SHORT",value:479},{name:"yStrikeoutSize",type:"SHORT",value:49},{name:"yStrikeoutPosition",type:"SHORT",value:258},{name:"sFamilyClass",type:"SHORT",value:0},{name:"bFamilyType",type:"BYTE",value:0},{name:"bSerifStyle",type:"BYTE",value:0},{name:"bWeight",type:"BYTE",value:0},{name:"bProportion",type:"BYTE",value:0},{name:"bContrast",type:"BYTE",value:0},{name:"bStrokeVariation",type:"BYTE",value:0},{name:"bArmStyle",type:"BYTE",value:0},{name:"bLetterform",type:"BYTE",value:0},{name:"bMidline",type:"BYTE",value:0},{name:"bXHeight",type:"BYTE",value:0},{name:"ulUnicodeRange1",type:"ULONG",value:0},{name:"ulUnicodeRange2",type:"ULONG",value:0},{name:"ulUnicodeRange3",type:"ULONG",value:0},{name:"ulUnicodeRange4",type:"ULONG",value:0},{name:"achVendID",type:"CHARARRAY",value:"XXXX"},{name:"fsSelection",type:"USHORT",value:0},{name:"usFirstCharIndex",type:"USHORT",value:0},{name:"usLastCharIndex",type:"USHORT",value:0},{name:"sTypoAscender",type:"SHORT",value:0},{name:"sTypoDescender",type:"SHORT",value:0},{name:"sTypoLineGap",type:"SHORT",value:0},{name:"usWinAscent",type:"USHORT",value:0},{name:"usWinDescent",type:"USHORT",value:0},{name:"ulCodePageRange1",type:"ULONG",value:0},{name:"ulCodePageRange2",type:"ULONG",value:0},{name:"sxHeight",type:"SHORT",value:0},{name:"sCapHeight",type:"SHORT",value:0},{name:"usDefaultChar",type:"USHORT",value:0},{name:"usBreakChar",type:"USHORT",value:0},{name:"usMaxContext",type:"USHORT",value:0}],r)}var $6={parse:ks,make:Is,unicodeRanges:R6,getUnicodeRange:$s};function Ls(r,t){var e={},n=new Y.Parser(r,t);switch(e.version=n.parseVersion(),e.italicAngle=n.parseFixed(),e.underlinePosition=n.parseShort(),e.underlineThickness=n.parseShort(),e.isFixedPitch=n.parseULong(),e.minMemType42=n.parseULong(),e.maxMemType42=n.parseULong(),e.minMemType1=n.parseULong(),e.maxMemType1=n.parseULong(),e.version){case 1:e.names=Be.slice();break;case 2:e.numberOfGlyphs=n.parseUShort(),e.glyphNameIndex=new Array(e.numberOfGlyphs);for(var s=0;s<e.numberOfGlyphs;s++)e.glyphNameIndex[s]=n.parseUShort();e.names=[];for(var i=0;i<e.numberOfGlyphs;i++)if(e.glyphNameIndex[i]>=Be.length){var a=n.parseChar();e.names.push(n.parseString(a))}break;case 2.5:e.numberOfGlyphs=n.parseUShort(),e.offset=new Array(e.numberOfGlyphs);for(var o=0;o<e.numberOfGlyphs;o++)e.offset[o]=n.parseChar();break}return e}function Ms(){return new z.Table("post",[{name:"version",type:"FIXED",value:196608},{name:"italicAngle",type:"FIXED",value:0},{name:"underlinePosition",type:"FWORD",value:0},{name:"underlineThickness",type:"FWORD",value:0},{name:"isFixedPitch",type:"ULONG",value:0},{name:"minMemType42",type:"ULONG",value:0},{name:"maxMemType42",type:"ULONG",value:0},{name:"minMemType1",type:"ULONG",value:0},{name:"maxMemType1",type:"ULONG",value:0}])}var p7={parse:Ls,make:Ms},P1=new Array(9);P1[1]=function(){var t=this.offset+this.relativeOffset,e=this.parseUShort();if(e===1)return{substFormat:1,coverage:this.parsePointer(A.coverage),deltaGlyphId:this.parseUShort()};if(e===2)return{substFormat:2,coverage:this.parsePointer(A.coverage),substitute:this.parseOffset16List()};J.assert(!1,"0x"+t.toString(16)+": lookup type 1 format must be 1 or 2.")},P1[2]=function(){var t=this.parseUShort();return J.argument(t===1,"GSUB Multiple Substitution Subtable identifier-format must be 1"),{substFormat:t,coverage:this.parsePointer(A.coverage),sequences:this.parseListOfLists()}},P1[3]=function(){var t=this.parseUShort();return J.argument(t===1,"GSUB Alternate Substitution Subtable identifier-format must be 1"),{substFormat:t,coverage:this.parsePointer(A.coverage),alternateSets:this.parseListOfLists()}},P1[4]=function(){var t=this.parseUShort();return J.argument(t===1,"GSUB ligature table identifier-format must be 1"),{substFormat:t,coverage:this.parsePointer(A.coverage),ligatureSets:this.parseListOfLists(function(){return{ligGlyph:this.parseUShort(),components:this.parseUShortList(this.parseUShort()-1)}})}};var Ke={sequenceIndex:A.uShort,lookupListIndex:A.uShort};P1[5]=function(){var t=this.offset+this.relativeOffset,e=this.parseUShort();if(e===1)return{substFormat:e,coverage:this.parsePointer(A.coverage),ruleSets:this.parseListOfLists(function(){var i=this.parseUShort(),a=this.parseUShort();return{input:this.parseUShortList(i-1),lookupRecords:this.parseRecordList(a,Ke)}})};if(e===2)return{substFormat:e,coverage:this.parsePointer(A.coverage),classDef:this.parsePointer(A.classDef),classSets:this.parseListOfLists(function(){var i=this.parseUShort(),a=this.parseUShort();return{classes:this.parseUShortList(i-1),lookupRecords:this.parseRecordList(a,Ke)}})};if(e===3){var n=this.parseUShort(),s=this.parseUShort();return{substFormat:e,coverages:this.parseList(n,A.pointer(A.coverage)),lookupRecords:this.parseRecordList(s,Ke)}}J.assert(!1,"0x"+t.toString(16)+": lookup type 5 format must be 1, 2 or 3.")},P1[6]=function(){var t=this.offset+this.relativeOffset,e=this.parseUShort();if(e===1)return{substFormat:1,coverage:this.parsePointer(A.coverage),chainRuleSets:this.parseListOfLists(function(){return{backtrack:this.parseUShortList(),input:this.parseUShortList(this.parseShort()-1),lookahead:this.parseUShortList(),lookupRecords:this.parseRecordList(Ke)}})};if(e===2)return{substFormat:2,coverage:this.parsePointer(A.coverage),backtrackClassDef:this.parsePointer(A.classDef),inputClassDef:this.parsePointer(A.classDef),lookaheadClassDef:this.parsePointer(A.classDef),chainClassSet:this.parseListOfLists(function(){return{backtrack:this.parseUShortList(),input:this.parseUShortList(this.parseShort()-1),lookahead:this.parseUShortList(),lookupRecords:this.parseRecordList(Ke)}})};if(e===3)return{substFormat:3,backtrackCoverage:this.parseList(A.pointer(A.coverage)),inputCoverage:this.parseList(A.pointer(A.coverage)),lookaheadCoverage:this.parseList(A.pointer(A.coverage)),lookupRecords:this.parseRecordList(Ke)};J.assert(!1,"0x"+t.toString(16)+": lookup type 6 format must be 1, 2 or 3.")},P1[7]=function(){var t=this.parseUShort();J.argument(t===1,"GSUB Extension Substitution subtable identifier-format must be 1");var e=this.parseUShort(),n=new A(this.data,this.offset+this.parseULong());return{substFormat:1,lookupType:e,extension:P1[e].call(n)}},P1[8]=function(){var t=this.parseUShort();return J.argument(t===1,"GSUB Reverse Chaining Contextual Single Substitution Subtable identifier-format must be 1"),{substFormat:t,coverage:this.parsePointer(A.coverage),backtrackCoverage:this.parseList(A.pointer(A.coverage)),lookaheadCoverage:this.parseList(A.pointer(A.coverage)),substitutes:this.parseUShortList()}};function Ps(r,t){t=t||0;var e=new A(r,t),n=e.parseVersion(1);return J.argument(n===1||n===1.1,"Unsupported GSUB table version."),n===1?{version:n,scripts:e.parseScriptList(),features:e.parseFeatureList(),lookups:e.parseLookupList(P1)}:{version:n,scripts:e.parseScriptList(),features:e.parseFeatureList(),lookups:e.parseLookupList(P1),variations:e.parseFeatureVariationsList()}}var qe=new Array(9);qe[1]=function(t){return t.substFormat===1?new z.Table("substitutionTable",[{name:"substFormat",type:"USHORT",value:1},{name:"coverage",type:"TABLE",value:new z.Coverage(t.coverage)},{name:"deltaGlyphID",type:"USHORT",value:t.deltaGlyphId}]):new z.Table("substitutionTable",[{name:"substFormat",type:"USHORT",value:2},{name:"coverage",type:"TABLE",value:new z.Coverage(t.coverage)}].concat(z.ushortList("substitute",t.substitute)))},qe[2]=function(t){return J.assert(t.substFormat===1,"Lookup type 2 substFormat must be 1."),new z.Table("substitutionTable",[{name:"substFormat",type:"USHORT",value:1},{name:"coverage",type:"TABLE",value:new z.Coverage(t.coverage)}].concat(z.tableList("seqSet",t.sequences,function(e){return new z.Table("sequenceSetTable",z.ushortList("sequence",e))})))},qe[3]=function(t){return J.assert(t.substFormat===1,"Lookup type 3 substFormat must be 1."),new z.Table("substitutionTable",[{name:"substFormat",type:"USHORT",value:1},{name:"coverage",type:"TABLE",value:new z.Coverage(t.coverage)}].concat(z.tableList("altSet",t.alternateSets,function(e){return new z.Table("alternateSetTable",z.ushortList("alternate",e))})))},qe[4]=function(t){return J.assert(t.substFormat===1,"Lookup type 4 substFormat must be 1."),new z.Table("substitutionTable",[{name:"substFormat",type:"USHORT",value:1},{name:"coverage",type:"TABLE",value:new z.Coverage(t.coverage)}].concat(z.tableList("ligSet",t.ligatureSets,function(e){return new z.Table("ligatureSetTable",z.tableList("ligature",e,function(n){return new z.Table("ligatureTable",[{name:"ligGlyph",type:"USHORT",value:n.ligGlyph}].concat(z.ushortList("component",n.components,n.components.length+1)))}))})))},qe[6]=function(t){if(t.substFormat===1){var e=new z.Table("chainContextTable",[{name:"substFormat",type:"USHORT",value:t.substFormat},{name:"coverage",type:"TABLE",value:new z.Coverage(t.coverage)}].concat(z.tableList("chainRuleSet",t.chainRuleSets,function(i){return new z.Table("chainRuleSetTable",z.tableList("chainRule",i,function(a){var o=z.ushortList("backtrackGlyph",a.backtrack,a.backtrack.length).concat(z.ushortList("inputGlyph",a.input,a.input.length+1)).concat(z.ushortList("lookaheadGlyph",a.lookahead,a.lookahead.length)).concat(z.ushortList("substitution",[],a.lookupRecords.length));return a.lookupRecords.forEach(function(u,l){o=o.concat({name:"sequenceIndex"+l,type:"USHORT",value:u.sequenceIndex}).concat({name:"lookupListIndex"+l,type:"USHORT",value:u.lookupListIndex})}),new z.Table("chainRuleTable",o)}))})));return e}else if(t.substFormat===2)J.assert(!1,"lookup type 6 format 2 is not yet supported.");else if(t.substFormat===3){var n=[{name:"substFormat",type:"USHORT",value:t.substFormat}];n.push({name:"backtrackGlyphCount",type:"USHORT",value:t.backtrackCoverage.length}),t.backtrackCoverage.forEach(function(i,a){n.push({name:"backtrackCoverage"+a,type:"TABLE",value:new z.Coverage(i)})}),n.push({name:"inputGlyphCount",type:"USHORT",value:t.inputCoverage.length}),t.inputCoverage.forEach(function(i,a){n.push({name:"inputCoverage"+a,type:"TABLE",value:new z.Coverage(i)})}),n.push({name:"lookaheadGlyphCount",type:"USHORT",value:t.lookaheadCoverage.length}),t.lookaheadCoverage.forEach(function(i,a){n.push({name:"lookaheadCoverage"+a,type:"TABLE",value:new z.Coverage(i)})}),n.push({name:"substitutionCount",type:"USHORT",value:t.lookupRecords.length}),t.lookupRecords.forEach(function(i,a){n=n.concat({name:"sequenceIndex"+a,type:"USHORT",value:i.sequenceIndex}).concat({name:"lookupListIndex"+a,type:"USHORT",value:i.lookupListIndex})});var s=new z.Table("chainContextTable",n);return s}J.assert(!1,"lookup type 6 format must be 1, 2 or 3.")};function Ns(r){return new z.Table("GSUB",[{name:"version",type:"ULONG",value:65536},{name:"scripts",type:"TABLE",value:new z.ScriptList(r.scripts)},{name:"features",type:"TABLE",value:new z.FeatureList(r.features)},{name:"lookups",type:"TABLE",value:new z.LookupList(r.lookups,qe)}])}var v7={parse:Ps,make:Ns};function Us(r,t){var e=new Y.Parser(r,t),n=e.parseULong();J.argument(n===1,"Unsupported META table version."),e.parseULong(),e.parseULong();for(var s=e.parseULong(),i={},a=0;a<s;a++){var o=e.parseTag(),u=e.parseULong(),l=e.parseULong(),c=je.UTF8(r,t+u,l);i[o]=c}return i}function Hs(r){var t=Object.keys(r).length,e="",n=16+t*12,s=new z.Table("meta",[{name:"version",type:"ULONG",value:1},{name:"flags",type:"ULONG",value:0},{name:"offset",type:"ULONG",value:n},{name:"numTags",type:"ULONG",value:t}]);for(var i in r){var a=e.length;e+=r[i],s.fields.push({name:"tag "+i,type:"TAG",value:i}),s.fields.push({name:"offset "+i,type:"ULONG",value:n+a}),s.fields.push({name:"length "+i,type:"ULONG",value:r[i].length})}return s.fields.push({name:"stringPool",type:"CHARARRAY",value:e}),s}var m7={parse:Us,make:Hs};function b7(r){return Math.log(r)/Math.log(2)|0}function k6(r){for(;r.length%4!==0;)r.push(0);for(var t=0,e=0;e<r.length;e+=4)t+=(r[e]<<24)+(r[e+1]<<16)+(r[e+2]<<8)+r[e+3];return t%=Math.pow(2,32),t}function y7(r,t,e,n){return new z.Record("Table Record",[{name:"tag",type:"TAG",value:r!==void 0?r:""},{name:"checkSum",type:"ULONG",value:t!==void 0?t:0},{name:"offset",type:"ULONG",value:e!==void 0?e:0},{name:"length",type:"ULONG",value:n!==void 0?n:0}])}function F7(r){var t=new z.Table("sfnt",[{name:"version",type:"TAG",value:"OTTO"},{name:"numTables",type:"USHORT",value:0},{name:"searchRange",type:"USHORT",value:0},{name:"entrySelector",type:"USHORT",value:0},{name:"rangeShift",type:"USHORT",value:0}]);t.tables=r,t.numTables=r.length;var e=Math.pow(2,b7(t.numTables));t.searchRange=16*e,t.entrySelector=b7(e),t.rangeShift=t.numTables*16-t.searchRange;for(var n=[],s=[],i=t.sizeOf()+y7().sizeOf()*t.numTables;i%4!==0;)i+=1,s.push({name:"padding",type:"BYTE",value:0});for(var a=0;a<r.length;a+=1){var o=r[a];J.argument(o.tableName.length===4,"Table name"+o.tableName+" is invalid.");var u=o.sizeOf(),l=y7(o.tableName,k6(o.encode()),i,u);for(n.push({name:l.tag+" Table Record",type:"RECORD",value:l}),s.push({name:o.tableName+" table",type:"RECORD",value:o}),i+=u,J.argument(!isNaN(i),"Something went wrong calculating the offset.");i%4!==0;)i+=1,s.push({name:"padding",type:"BYTE",value:0})}return n.sort(function(c,h){return c.value.tag>h.value.tag?1:-1}),t.fields=t.fields.concat(n),t.fields=t.fields.concat(s),t}function C7(r,t,e){for(var n=0;n<t.length;n+=1){var s=r.charToGlyphIndex(t[n]);if(s>0){var i=r.glyphs.get(s);return i.getMetrics()}}return e}function Gs(r){for(var t=0,e=0;e<r.length;e+=1)t+=r[e];return t/r.length}function zs(r){for(var t=[],e=[],n=[],s=[],i=[],a=[],o=[],u,l=0,c=0,h=0,f=0,_=0,p=0;p<r.glyphs.length;p+=1){var m=r.glyphs.get(p),v=m.unicode|0;if(isNaN(m.advanceWidth))throw new Error("Glyph "+m.name+" ("+p+"): advanceWidth is not a number.");(u>v||u===void 0)&&v>0&&(u=v),l<v&&(l=v);var F=$6.getUnicodeRange(v);if(F<32)c|=1<<F;else if(F<64)h|=1<<F-32;else if(F<96)f|=1<<F-64;else if(F<123)_|=1<<F-96;else throw new Error("Unicode ranges bits > 123 are reserved for internal usage");if(m.name!==".notdef"){var E=m.getMetrics();t.push(E.xMin),e.push(E.yMin),n.push(E.xMax),s.push(E.yMax),a.push(E.leftSideBearing),o.push(E.rightSideBearing),i.push(m.advanceWidth)}}var S={xMin:Math.min.apply(null,t),yMin:Math.min.apply(null,e),xMax:Math.max.apply(null,n),yMax:Math.max.apply(null,s),advanceWidthMax:Math.max.apply(null,i),advanceWidthAvg:Gs(i),minLeftSideBearing:Math.min.apply(null,a),maxLeftSideBearing:Math.max.apply(null,a),minRightSideBearing:Math.min.apply(null,o)};S.ascender=r.ascender,S.descender=r.descender;var B=i7.make({flags:3,unitsPerEm:r.unitsPerEm,xMin:S.xMin,yMin:S.yMin,xMax:S.xMax,yMax:S.yMax,lowestRecPPEM:3,createdTimestamp:r.createdTimestamp}),x=a7.make({ascender:S.ascender,descender:S.descender,advanceWidthMax:S.advanceWidthMax,minLeftSideBearing:S.minLeftSideBearing,minRightSideBearing:S.minRightSideBearing,xMaxExtent:S.maxLeftSideBearing+(S.xMax-S.xMin),numberOfHMetrics:r.glyphs.length}),w=l7.make(r.glyphs.length),O=$6.make(Object.assign({xAvgCharWidth:Math.round(S.advanceWidthAvg),usFirstCharIndex:u,usLastCharIndex:l,ulUnicodeRange1:c,ulUnicodeRange2:h,ulUnicodeRange3:f,ulUnicodeRange4:_,sTypoAscender:S.ascender,sTypoDescender:S.descender,sTypoLineGap:0,usWinAscent:S.yMax,usWinDescent:Math.abs(S.yMin),ulCodePageRange1:1,sxHeight:C7(r,"xyvw",{yMax:Math.round(S.ascender/2)}).yMax,sCapHeight:C7(r,"HIKLEFJMNTZBDPRAGOQSUVWXY",S).yMax,usDefaultChar:r.hasChar(" ")?32:0,usBreakChar:r.hasChar(" ")?32:0},r.tables.os2)),T=o7.make(r.glyphs),R=z4.make(r.glyphs),k=r.getEnglishName("fontFamily"),$=r.getEnglishName("fontSubfamily"),M=k+" "+$,U=r.getEnglishName("postScriptName");U||(U=k.replace(/\s/g,"")+"-"+$);var I={};for(var L in r.names)I[L]=r.names[L];I.uniqueID||(I.uniqueID={en:r.getEnglishName("manufacturer")+":"+M}),I.postScriptName||(I.postScriptName={en:U}),I.preferredFamily||(I.preferredFamily=r.names.fontFamily),I.preferredSubfamily||(I.preferredSubfamily=r.names.fontSubfamily);var H=[],X=D7.make(I,H),j=H.length>0?u7.make(H):void 0,G=p7.make(),Q=s7.make(r.glyphs,{version:r.getEnglishName("version"),fullName:M,familyName:k,weightName:$,postScriptName:U,unitsPerEm:r.unitsPerEm,fontBBox:[0,S.yMin,S.ascender,S.advanceWidthMax]}),t1=r.metas&&Object.keys(r.metas).length>0?m7.make(r.metas):void 0,n1=[B,x,w,O,X,R,G,Q,T];j&&n1.push(j),r.tables.gsub&&n1.push(v7.make(r.tables.gsub)),t1&&n1.push(t1);for(var a1=F7(n1),C1=a1.encode(),D1=k6(C1),i1=a1.fields,o1=!1,p1=0;p1<i1.length;p1+=1)if(i1[p1].name==="head table"){i1[p1].value.checkSumAdjustment=2981146554-D1,o1=!0;break}if(!o1)throw new Error("Could not find head table with checkSum to adjust.");return a1}var Xs={make:F7,fontToTable:zs,computeCheckSum:k6};function I6(r,t){for(var e=0,n=r.length-1;e<=n;){var s=e+n>>>1,i=r[s].tag;if(i===t)return s;i<t?e=s+1:n=s-1}return-e-1}function E7(r,t){for(var e=0,n=r.length-1;e<=n;){var s=e+n>>>1,i=r[s];if(i===t)return s;i<t?e=s+1:n=s-1}return-e-1}function S7(r,t){for(var e,n=0,s=r.length-1;n<=s;){var i=n+s>>>1;e=r[i];var a=e.start;if(a===t)return e;a<t?n=i+1:s=i-1}if(n>0)return e=r[n-1],t>e.end?0:e}function T2(r,t){this.font=r,this.tableName=t}T2.prototype={searchTag:I6,binSearch:E7,getTable:function(r){var t=this.font.tables[this.tableName];return!t&&r&&(t=this.font.tables[this.tableName]=this.createDefaultTable()),t},getScriptNames:function(){var r=this.getTable();return r?r.scripts.map(function(t){return t.tag}):[]},getDefaultScriptName:function(){var r=this.getTable();if(r){for(var t=!1,e=0;e<r.scripts.length;e++){var n=r.scripts[e].tag;if(n==="DFLT")return n;n==="latn"&&(t=!0)}if(t)return"latn"}},getScriptTable:function(r,t){var e=this.getTable(t);if(e){r=r||"DFLT";var n=e.scripts,s=I6(e.scripts,r);if(s>=0)return n[s].script;if(t){var i={tag:r,script:{defaultLangSys:{reserved:0,reqFeatureIndex:65535,featureIndexes:[]},langSysRecords:[]}};return n.splice(-1-s,0,i),i.script}}},getLangSysTable:function(r,t,e){var n=this.getScriptTable(r,e);if(n){if(!t||t==="dflt"||t==="DFLT")return n.defaultLangSys;var s=I6(n.langSysRecords,t);if(s>=0)return n.langSysRecords[s].langSys;if(e){var i={tag:t,langSys:{reserved:0,reqFeatureIndex:65535,featureIndexes:[]}};return n.langSysRecords.splice(-1-s,0,i),i.langSys}}},getFeatureTable:function(r,t,e,n){var s=this.getLangSysTable(r,t,n);if(s){for(var i,a=s.featureIndexes,o=this.font.tables[this.tableName].features,u=0;u<a.length;u++)if(i=o[a[u]],i.tag===e)return i.feature;if(n){var l=o.length;return J.assert(l===0||e>=o[l-1].tag,"Features must be added in alphabetical order."),i={tag:e,feature:{params:0,lookupListIndexes:[]}},o.push(i),a.push(l),i.feature}}},getLookupTables:function(r,t,e,n,s){var i=this.getFeatureTable(r,t,e,s),a=[];if(i){for(var o,u=i.lookupListIndexes,l=this.font.tables[this.tableName].lookups,c=0;c<u.length;c++)o=l[u[c]],o.lookupType===n&&a.push(o);if(a.length===0&&s){o={lookupType:n,lookupFlag:0,subtables:[],markFilteringSet:void 0};var h=l.length;return l.push(o),u.push(h),[o]}}return a},getGlyphClass:function(r,t){switch(r.format){case 1:return r.startGlyph<=t&&t<r.startGlyph+r.classes.length?r.classes[t-r.startGlyph]:0;case 2:var e=S7(r.ranges,t);return e?e.classId:0}},getCoverageIndex:function(r,t){switch(r.format){case 1:var e=E7(r.glyphs,t);return e>=0?e:-1;case 2:var n=S7(r.ranges,t);return n?n.index+t-n.start:-1}},expandCoverage:function(r){if(r.format===1)return r.glyphs;for(var t=[],e=r.ranges,n=0;n<e.length;n++)for(var s=e[n],i=s.start,a=s.end,o=i;o<=a;o++)t.push(o);return t}};function x2(r){T2.call(this,r,"gpos")}x2.prototype=T2.prototype,x2.prototype.init=function(){var r=this.getDefaultScriptName();this.defaultKerningTables=this.getKerningTables(r)},x2.prototype.getKerningValue=function(r,t,e){for(var n=0;n<r.length;n++)for(var s=r[n].subtables,i=0;i<s.length;i++){var a=s[i],o=this.getCoverageIndex(a.coverage,t);if(!(o<0))switch(a.posFormat){case 1:for(var u=a.pairSets[o],l=0;l<u.length;l++){var c=u[l];if(c.secondGlyph===e)return c.value1&&c.value1.xAdvance||0}break;case 2:var h=this.getGlyphClass(a.classDef1,t),f=this.getGlyphClass(a.classDef2,e),_=a.classRecords[h][f];return _.value1&&_.value1.xAdvance||0}}return 0},x2.prototype.getKerningTables=function(r,t){if(this.font.tables.gpos)return this.getLookupTables(r,t,"kern",2)};function k1(r){T2.call(this,r,"gsub")}function Ws(r,t){var e=r.length;if(e!==t.length)return!1;for(var n=0;n<e;n++)if(r[n]!==t[n])return!1;return!0}function L6(r,t,e){for(var n=r.subtables,s=0;s<n.length;s++){var i=n[s];if(i.substFormat===t)return i}if(e)return n.push(e),e}k1.prototype=T2.prototype,k1.prototype.createDefaultTable=function(){return{version:1,scripts:[{tag:"DFLT",script:{defaultLangSys:{reserved:0,reqFeatureIndex:65535,featureIndexes:[]},langSysRecords:[]}}],features:[],lookups:[]}},k1.prototype.getSingle=function(r,t,e){for(var n=[],s=this.getLookupTables(t,e,r,1),i=0;i<s.length;i++)for(var a=s[i].subtables,o=0;o<a.length;o++){var u=a[o],l=this.expandCoverage(u.coverage),c=void 0;if(u.substFormat===1){var h=u.deltaGlyphId;for(c=0;c<l.length;c++){var f=l[c];n.push({sub:f,by:f+h})}}else{var _=u.substitute;for(c=0;c<l.length;c++)n.push({sub:l[c],by:_[c]})}}return n},k1.prototype.getMultiple=function(r,t,e){for(var n=[],s=this.getLookupTables(t,e,r,2),i=0;i<s.length;i++)for(var a=s[i].subtables,o=0;o<a.length;o++){var u=a[o],l=this.expandCoverage(u.coverage),c=void 0;for(c=0;c<l.length;c++){var h=l[c],f=u.sequences[c];n.push({sub:h,by:f})}}return n},k1.prototype.getAlternates=function(r,t,e){for(var n=[],s=this.getLookupTables(t,e,r,3),i=0;i<s.length;i++)for(var a=s[i].subtables,o=0;o<a.length;o++)for(var u=a[o],l=this.expandCoverage(u.coverage),c=u.alternateSets,h=0;h<l.length;h++)n.push({sub:l[h],by:c[h]});return n},k1.prototype.getLigatures=function(r,t,e){for(var n=[],s=this.getLookupTables(t,e,r,4),i=0;i<s.length;i++)for(var a=s[i].subtables,o=0;o<a.length;o++)for(var u=a[o],l=this.expandCoverage(u.coverage),c=u.ligatureSets,h=0;h<l.length;h++)for(var f=l[h],_=c[h],p=0;p<_.length;p++){var m=_[p];n.push({sub:[f].concat(m.components),by:m.ligGlyph})}return n},k1.prototype.addSingle=function(r,t,e,n){var s=this.getLookupTables(e,n,r,1,!0)[0],i=L6(s,2,{substFormat:2,coverage:{format:1,glyphs:[]},substitute:[]});J.assert(i.coverage.format===1,"Single: unable to modify coverage table format "+i.coverage.format);var a=t.sub,o=this.binSearch(i.coverage.glyphs,a);o<0&&(o=-1-o,i.coverage.glyphs.splice(o,0,a),i.substitute.splice(o,0,0)),i.substitute[o]=t.by},k1.prototype.addMultiple=function(r,t,e,n){J.assert(t.by instanceof Array&&t.by.length>1,'Multiple: "by" must be an array of two or more ids');var s=this.getLookupTables(e,n,r,2,!0)[0],i=L6(s,1,{substFormat:1,coverage:{format:1,glyphs:[]},sequences:[]});J.assert(i.coverage.format===1,"Multiple: unable to modify coverage table format "+i.coverage.format);var a=t.sub,o=this.binSearch(i.coverage.glyphs,a);o<0&&(o=-1-o,i.coverage.glyphs.splice(o,0,a),i.sequences.splice(o,0,0)),i.sequences[o]=t.by},k1.prototype.addAlternate=function(r,t,e,n){var s=this.getLookupTables(e,n,r,3,!0)[0],i=L6(s,1,{substFormat:1,coverage:{format:1,glyphs:[]},alternateSets:[]});J.assert(i.coverage.format===1,"Alternate: unable to modify coverage table format "+i.coverage.format);var a=t.sub,o=this.binSearch(i.coverage.glyphs,a);o<0&&(o=-1-o,i.coverage.glyphs.splice(o,0,a),i.alternateSets.splice(o,0,0)),i.alternateSets[o]=t.by},k1.prototype.addLigature=function(r,t,e,n){var s=this.getLookupTables(e,n,r,4,!0)[0],i=s.subtables[0];i||(i={substFormat:1,coverage:{format:1,glyphs:[]},ligatureSets:[]},s.subtables[0]=i),J.assert(i.coverage.format===1,"Ligature: unable to modify coverage table format "+i.coverage.format);var a=t.sub[0],o=t.sub.slice(1),u={ligGlyph:t.by,components:o},l=this.binSearch(i.coverage.glyphs,a);if(l>=0){for(var c=i.ligatureSets[l],h=0;h<c.length;h++)if(Ws(c[h].components,o))return;c.push(u)}else l=-1-l,i.coverage.glyphs.splice(l,0,a),i.ligatureSets.splice(l,0,[u])},k1.prototype.getFeature=function(r,t,e){if(/ss\d\d/.test(r))return this.getSingle(r,t,e);switch(r){case"aalt":case"salt":return this.getSingle(r,t,e).concat(this.getAlternates(r,t,e));case"dlig":case"liga":case"rlig":return this.getLigatures(r,t,e);case"ccmp":return this.getMultiple(r,t,e).concat(this.getLigatures(r,t,e));case"stch":return this.getMultiple(r,t,e)}},k1.prototype.add=function(r,t,e,n){if(/ss\d\d/.test(r))return this.addSingle(r,t,e,n);switch(r){case"aalt":case"salt":return typeof t.by=="number"?this.addSingle(r,t,e,n):this.addAlternate(r,t,e,n);case"dlig":case"liga":case"rlig":return this.addLigature(r,t,e,n);case"ccmp":return t.by instanceof Array?this.addMultiple(r,t,e,n):this.addLigature(r,t,e,n)}};function Ys(){return typeof window<"u"}function T7(r){for(var t=new ArrayBuffer(r.length),e=new Uint8Array(t),n=0;n<r.length;++n)e[n]=r[n];return t}function Vs(r){for(var t=new Buffer(r.byteLength),e=new Uint8Array(r),n=0;n<t.length;++n)t[n]=e[n];return t}function B2(r,t){if(!r)throw t}function x7(r,t,e,n,s){var i;return(t&n)>0?(i=r.parseByte(),t&s||(i=-i),i=e+i):(t&s)>0?i=e:i=e+r.parseShort(),i}function B7(r,t,e){var n=new Y.Parser(t,e);r.numberOfContours=n.parseShort(),r._xMin=n.parseShort(),r._yMin=n.parseShort(),r._xMax=n.parseShort(),r._yMax=n.parseShort();var s,i;if(r.numberOfContours>0){for(var a=r.endPointIndices=[],o=0;o<r.numberOfContours;o+=1)a.push(n.parseUShort());r.instructionLength=n.parseUShort(),r.instructions=[];for(var u=0;u<r.instructionLength;u+=1)r.instructions.push(n.parseByte());var l=a[a.length-1]+1;s=[];for(var c=0;c<l;c+=1)if(i=n.parseByte(),s.push(i),(i&8)>0)for(var h=n.parseByte(),f=0;f<h;f+=1)s.push(i),c+=1;if(J.argument(s.length===l,"Bad flags."),a.length>0){var _=[],p;if(l>0){for(var m=0;m<l;m+=1)i=s[m],p={},p.onCurve=!!(i&1),p.lastPointOfContour=a.indexOf(m)>=0,_.push(p);for(var v=0,F=0;F<l;F+=1)i=s[F],p=_[F],p.x=x7(n,i,v,2,16),v=p.x;for(var E=0,S=0;S<l;S+=1)i=s[S],p=_[S],p.y=x7(n,i,E,4,32),E=p.y}r.points=_}else r.points=[]}else if(r.numberOfContours===0)r.points=[];else{r.isComposite=!0,r.points=[],r.components=[];for(var B=!0;B;){s=n.parseUShort();var x={glyphIndex:n.parseUShort(),xScale:1,scale01:0,scale10:0,yScale:1,dx:0,dy:0};(s&1)>0?(s&2)>0?(x.dx=n.parseShort(),x.dy=n.parseShort()):x.matchedPoints=[n.parseUShort(),n.parseUShort()]:(s&2)>0?(x.dx=n.parseChar(),x.dy=n.parseChar()):x.matchedPoints=[n.parseByte(),n.parseByte()],(s&8)>0?x.xScale=x.yScale=n.parseF2Dot14():(s&64)>0?(x.xScale=n.parseF2Dot14(),x.yScale=n.parseF2Dot14()):(s&128)>0&&(x.xScale=n.parseF2Dot14(),x.scale01=n.parseF2Dot14(),x.scale10=n.parseF2Dot14(),x.yScale=n.parseF2Dot14()),r.components.push(x),B=!!(s&32)}if(s&256){r.instructionLength=n.parseUShort(),r.instructions=[];for(var w=0;w<r.instructionLength;w+=1)r.instructions.push(n.parseByte())}}}function M6(r,t){for(var e=[],n=0;n<r.length;n+=1){var s=r[n],i={x:t.xScale*s.x+t.scale01*s.y+t.dx,y:t.scale10*s.x+t.yScale*s.y+t.dy,onCurve:s.onCurve,lastPointOfContour:s.lastPointOfContour};e.push(i)}return e}function js(r){for(var t=[],e=[],n=0;n<r.length;n+=1){var s=r[n];e.push(s),s.lastPointOfContour&&(t.push(e),e=[])}return J.argument(e.length===0,"There are still points left in the current contour."),t}function O7(r){var t=new _1;if(!r)return t;for(var e=js(r),n=0;n<e.length;++n){var s=e[n],i=null,a=s[s.length-1],o=s[0];if(a.onCurve)t.moveTo(a.x,a.y);else if(o.onCurve)t.moveTo(o.x,o.y);else{var u={x:(a.x+o.x)*.5,y:(a.y+o.y)*.5};t.moveTo(u.x,u.y)}for(var l=0;l<s.length;++l)if(i=a,a=o,o=s[(l+1)%s.length],a.onCurve)t.lineTo(a.x,a.y);else{var c=o;i.onCurve||((a.x+i.x)*.5,(a.y+i.y)*.5),o.onCurve||(c={x:(a.x+o.x)*.5,y:(a.y+o.y)*.5}),t.quadraticCurveTo(a.x,a.y,c.x,c.y)}t.closePath()}return t}function w7(r,t){if(t.isComposite)for(var e=0;e<t.components.length;e+=1){var n=t.components[e],s=r.get(n.glyphIndex);if(s.getPath(),s.points){var i=void 0;if(n.matchedPoints===void 0)i=M6(s.points,n);else{if(n.matchedPoints[0]>t.points.length-1||n.matchedPoints[1]>s.points.length-1)throw Error("Matched points out of range in "+t.name);var a=t.points[n.matchedPoints[0]],o=s.points[n.matchedPoints[1]],u={xScale:n.xScale,scale01:n.scale01,scale10:n.scale10,yScale:n.yScale,dx:0,dy:0};o=M6([o],u)[0],u.dx=a.x-o.x,u.dy=a.y-o.y,i=M6(s.points,u)}t.points=t.points.concat(i)}}return O7(t.points)}function Ks(r,t,e,n){for(var s=new J1.GlyphSet(n),i=0;i<e.length-1;i+=1){var a=e[i],o=e[i+1];a!==o?s.push(i,J1.ttfGlyphLoader(n,i,B7,r,t+a,w7)):s.push(i,J1.glyphLoader(n,i))}return s}function qs(r,t,e,n){var s=new J1.GlyphSet(n);return n._push=function(i){var a=e[i],o=e[i+1];a!==o?s.push(i,J1.ttfGlyphLoader(n,i,B7,r,t+a,w7)):s.push(i,J1.glyphLoader(n,i))},s}function Zs(r,t,e,n,s){return s.lowMemory?qs(r,t,e,n):Ks(r,t,e,n)}var A7={getPath:O7,parse:Zs},R7,we,$7,P6;function k7(r){this.font=r,this.getCommands=function(t){return A7.getPath(t).commands},this._fpgmState=this._prepState=void 0,this._errorState=0}function Js(r){return r}function I7(r){return Math.sign(r)*Math.round(Math.abs(r))}function Qs(r){return Math.sign(r)*Math.round(Math.abs(r*2))/2}function e9(r){return Math.sign(r)*(Math.round(Math.abs(r)+.5)-.5)}function t9(r){return Math.sign(r)*Math.ceil(Math.abs(r))}function n9(r){return Math.sign(r)*Math.floor(Math.abs(r))}var L7=function(r){var t=this.srPeriod,e=this.srPhase,n=this.srThreshold,s=1;return r<0&&(r=-r,s=-1),r+=n-e,r=Math.trunc(r/t)*t,r+=e,r<0?e*s:r*s},Q1={x:1,y:0,axis:"x",distance:function(r,t,e,n){return(e?r.xo:r.x)-(n?t.xo:t.x)},interpolate:function(r,t,e,n){var s,i,a,o,u,l,c;if(!n||n===this){if(s=r.xo-t.xo,i=r.xo-e.xo,u=t.x-t.xo,l=e.x-e.xo,a=Math.abs(s),o=Math.abs(i),c=a+o,c===0){r.x=r.xo+(u+l)/2;return}r.x=r.xo+(u*o+l*a)/c;return}if(s=n.distance(r,t,!0,!0),i=n.distance(r,e,!0,!0),u=n.distance(t,t,!1,!0),l=n.distance(e,e,!1,!0),a=Math.abs(s),o=Math.abs(i),c=a+o,c===0){Q1.setRelative(r,r,(u+l)/2,n,!0);return}Q1.setRelative(r,r,(u*o+l*a)/c,n,!0)},normalSlope:Number.NEGATIVE_INFINITY,setRelative:function(r,t,e,n,s){if(!n||n===this){r.x=(s?t.xo:t.x)+e;return}var i=s?t.xo:t.x,a=s?t.yo:t.y,o=i+e*n.x,u=a+e*n.y;r.x=o+(r.y-u)/n.normalSlope},slope:0,touch:function(r){r.xTouched=!0},touched:function(r){return r.xTouched},untouch:function(r){r.xTouched=!1}},se={x:0,y:1,axis:"y",distance:function(r,t,e,n){return(e?r.yo:r.y)-(n?t.yo:t.y)},interpolate:function(r,t,e,n){var s,i,a,o,u,l,c;if(!n||n===this){if(s=r.yo-t.yo,i=r.yo-e.yo,u=t.y-t.yo,l=e.y-e.yo,a=Math.abs(s),o=Math.abs(i),c=a+o,c===0){r.y=r.yo+(u+l)/2;return}r.y=r.yo+(u*o+l*a)/c;return}if(s=n.distance(r,t,!0,!0),i=n.distance(r,e,!0,!0),u=n.distance(t,t,!1,!0),l=n.distance(e,e,!1,!0),a=Math.abs(s),o=Math.abs(i),c=a+o,c===0){se.setRelative(r,r,(u+l)/2,n,!0);return}se.setRelative(r,r,(u*o+l*a)/c,n,!0)},normalSlope:0,setRelative:function(r,t,e,n,s){if(!n||n===this){r.y=(s?t.yo:t.y)+e;return}var i=s?t.xo:t.x,a=s?t.yo:t.y,o=i+e*n.x,u=a+e*n.y;r.y=u+n.normalSlope*(r.x-o)},slope:Number.POSITIVE_INFINITY,touch:function(r){r.yTouched=!0},touched:function(r){return r.yTouched},untouch:function(r){r.yTouched=!1}};Object.freeze(Q1),Object.freeze(se);function O2(r,t){this.x=r,this.y=t,this.axis=void 0,this.slope=t/r,this.normalSlope=-r/t,Object.freeze(this)}O2.prototype.distance=function(r,t,e,n){return this.x*Q1.distance(r,t,e,n)+this.y*se.distance(r,t,e,n)},O2.prototype.interpolate=function(r,t,e,n){var s,i,a,o,u,l,c;if(a=n.distance(r,t,!0,!0),o=n.distance(r,e,!0,!0),s=n.distance(t,t,!1,!0),i=n.distance(e,e,!1,!0),u=Math.abs(a),l=Math.abs(o),c=u+l,c===0){this.setRelative(r,r,(s+i)/2,n,!0);return}this.setRelative(r,r,(s*l+i*u)/c,n,!0)},O2.prototype.setRelative=function(r,t,e,n,s){n=n||this;var i=s?t.xo:t.x,a=s?t.yo:t.y,o=i+e*n.x,u=a+e*n.y,l=n.normalSlope,c=this.slope,h=r.x,f=r.y;r.x=(c*h-l*o+u-f)/(c-l),r.y=c*(r.x-h)+f},O2.prototype.touch=function(r){r.xTouched=!0,r.yTouched=!0};function w2(r,t){var e=Math.sqrt(r*r+t*t);return r/=e,t/=e,r===1&&t===0?Q1:r===0&&t===1?se:new O2(r,t)}function ie(r,t,e,n){this.x=this.xo=Math.round(r*64)/64,this.y=this.yo=Math.round(t*64)/64,this.lastPointOfContour=e,this.onCurve=n,this.prevPointOnContour=void 0,this.nextPointOnContour=void 0,this.xTouched=!1,this.yTouched=!1,Object.preventExtensions(this)}ie.prototype.nextTouched=function(r){for(var t=this.nextPointOnContour;!r.touched(t)&&t!==this;)t=t.nextPointOnContour;return t},ie.prototype.prevTouched=function(r){for(var t=this.prevPointOnContour;!r.touched(t)&&t!==this;)t=t.prevPointOnContour;return t};var A2=Object.freeze(new ie(0,0)),r9={cvCutIn:17/16,deltaBase:9,deltaShift:.125,loop:1,minDis:1,autoFlip:!0};function ge(r,t){switch(this.env=r,this.stack=[],this.prog=t,r){case"glyf":this.zp0=this.zp1=this.zp2=1,this.rp0=this.rp1=this.rp2=0;case"prep":this.fv=this.pv=this.dpv=Q1,this.round=I7}}k7.prototype.exec=function(r,t){if(typeof t!="number")throw new Error("Point size is not a number!");if(!(this._errorState>2)){var e=this.font,n=this._prepState;if(!n||n.ppem!==t){var s=this._fpgmState;if(!s){ge.prototype=r9,s=this._fpgmState=new ge("fpgm",e.tables.fpgm),s.funcs=[],s.font=e,y.DEBUG&&(console.log("---EXEC FPGM---"),s.step=-1);try{we(s)}catch(l){console.log("Hinting error in FPGM:"+l),this._errorState=3;return}}ge.prototype=s,n=this._prepState=new ge("prep",e.tables.prep),n.ppem=t;var i=e.tables.cvt;if(i)for(var a=n.cvt=new Array(i.length),o=t/e.unitsPerEm,u=0;u<i.length;u++)a[u]=i[u]*o;else n.cvt=[];y.DEBUG&&(console.log("---EXEC PREP---"),n.step=-1);try{we(n)}catch(l){this._errorState<2&&console.log("Hinting error in PREP:"+l),this._errorState=2}}if(!(this._errorState>1))try{return $7(r,n)}catch(l){this._errorState<1&&(console.log("Hinting error:"+l),console.log("Note: further hinting errors are silenced")),this._errorState=1;return}}},$7=function(r,t){var e=t.ppem/t.font.unitsPerEm,n=e,s=r.components,i,a,o;if(ge.prototype=t,!s)o=new ge("glyf",r.instructions),y.DEBUG&&(console.log("---EXEC GLYPH---"),o.step=-1),P6(r,o,e,n),a=o.gZone;else{var u=t.font;a=[],i=[];for(var l=0;l<s.length;l++){var c=s[l],h=u.glyphs.get(c.glyphIndex);o=new ge("glyf",h.instructions),y.DEBUG&&(console.log("---EXEC COMP "+l+"---"),o.step=-1),P6(h,o,e,n);for(var f=Math.round(c.dx*e),_=Math.round(c.dy*n),p=o.gZone,m=o.contours,v=0;v<p.length;v++){var F=p[v];F.xTouched=F.yTouched=!1,F.xo=F.x=F.x+f,F.yo=F.y=F.y+_}var E=a.length;a.push.apply(a,p);for(var S=0;S<m.length;S++)i.push(m[S]+E)}r.instructions&&!o.inhibitGridFit&&(o=new ge("glyf",r.instructions),o.gZone=o.z0=o.z1=o.z2=a,o.contours=i,a.push(new ie(0,0),new ie(Math.round(r.advanceWidth*e),0)),y.DEBUG&&(console.log("---EXEC COMPOSITE---"),o.step=-1),we(o),a.length-=2)}return a},P6=function(r,t,e,n){for(var s=r.points||[],i=s.length,a=t.gZone=t.z0=t.z1=t.z2=[],o=t.contours=[],u,l=0;l<i;l++)u=s[l],a[l]=new ie(u.x*e,u.y*n,u.lastPointOfContour,u.onCurve);for(var c,h,f=0;f<i;f++)u=a[f],c||(c=u,o.push(f)),u.lastPointOfContour?(u.nextPointOnContour=c,c.prevPointOnContour=u,c=void 0):(h=a[f+1],u.nextPointOnContour=h,h.prevPointOnContour=u);if(!t.inhibitGridFit){if(y.DEBUG){console.log("PROCESSING GLYPH",t.stack);for(var _=0;_<i;_++)console.log(_,a[_].x,a[_].y)}if(a.push(new ie(0,0),new ie(Math.round(r.advanceWidth*e),0)),we(t),a.length-=2,y.DEBUG){console.log("FINISHED GLYPH",t.stack);for(var p=0;p<i;p++)console.log(p,a[p].x,a[p].y)}}},we=function(r){var t=r.prog;if(t){var e=t.length,n;for(r.ip=0;r.ip<e;r.ip++){if(y.DEBUG&&r.step++,n=R7[t[r.ip]],!n)throw new Error("unknown instruction: 0x"+Number(t[r.ip]).toString(16));n(r)}}};function ft(r){for(var t=r.tZone=new Array(r.gZone.length),e=0;e<t.length;e++)t[e]=new ie(0,0)}function M7(r,t){var e=r.prog,n=r.ip,s=1,i;do if(i=e[++n],i===88)s++;else if(i===89)s--;else if(i===64)n+=e[n+1]+1;else if(i===65)n+=2*e[n+1]+1;else if(i>=176&&i<=183)n+=i-176+1;else if(i>=184&&i<=191)n+=(i-184+1)*2;else if(t&&s===1&&i===27)break;while(s>0);r.ip=n}function P7(r,t){y.DEBUG&&console.log(t.step,"SVTCA["+r.axis+"]"),t.fv=t.pv=t.dpv=r}function N7(r,t){y.DEBUG&&console.log(t.step,"SPVTCA["+r.axis+"]"),t.pv=t.dpv=r}function U7(r,t){y.DEBUG&&console.log(t.step,"SFVTCA["+r.axis+"]"),t.fv=r}function H7(r,t){var e=t.stack,n=e.pop(),s=e.pop(),i=t.z2[n],a=t.z1[s];y.DEBUG&&console.log("SPVTL["+r+"]",n,s);var o,u;r?(o=i.y-a.y,u=a.x-i.x):(o=a.x-i.x,u=a.y-i.y),t.pv=t.dpv=w2(o,u)}function G7(r,t){var e=t.stack,n=e.pop(),s=e.pop(),i=t.z2[n],a=t.z1[s];y.DEBUG&&console.log("SFVTL["+r+"]",n,s);var o,u;r?(o=i.y-a.y,u=a.x-i.x):(o=a.x-i.x,u=a.y-i.y),t.fv=w2(o,u)}function s9(r){var t=r.stack,e=t.pop(),n=t.pop();y.DEBUG&&console.log(r.step,"SPVFS[]",e,n),r.pv=r.dpv=w2(n,e)}function i9(r){var t=r.stack,e=t.pop(),n=t.pop();y.DEBUG&&console.log(r.step,"SPVFS[]",e,n),r.fv=w2(n,e)}function a9(r){var t=r.stack,e=r.pv;y.DEBUG&&console.log(r.step,"GPV[]"),t.push(e.x*16384),t.push(e.y*16384)}function o9(r){var t=r.stack,e=r.fv;y.DEBUG&&console.log(r.step,"GFV[]"),t.push(e.x*16384),t.push(e.y*16384)}function u9(r){r.fv=r.pv,y.DEBUG&&console.log(r.step,"SFVTPV[]")}function l9(r){var t=r.stack,e=t.pop(),n=t.pop(),s=t.pop(),i=t.pop(),a=t.pop(),o=r.z0,u=r.z1,l=o[e],c=o[n],h=u[s],f=u[i],_=r.z2[a];y.DEBUG&&console.log("ISECT[], ",e,n,s,i,a);var p=l.x,m=l.y,v=c.x,F=c.y,E=h.x,S=h.y,B=f.x,x=f.y,w=(p-v)*(S-x)-(m-F)*(E-B),O=p*F-m*v,T=E*x-S*B;_.x=(O*(E-B)-T*(p-v))/w,_.y=(O*(S-x)-T*(m-F))/w}function c9(r){r.rp0=r.stack.pop(),y.DEBUG&&console.log(r.step,"SRP0[]",r.rp0)}function h9(r){r.rp1=r.stack.pop(),y.DEBUG&&console.log(r.step,"SRP1[]",r.rp1)}function f9(r){r.rp2=r.stack.pop(),y.DEBUG&&console.log(r.step,"SRP2[]",r.rp2)}function d9(r){var t=r.stack.pop();switch(y.DEBUG&&console.log(r.step,"SZP0[]",t),r.zp0=t,t){case 0:r.tZone||ft(r),r.z0=r.tZone;break;case 1:r.z0=r.gZone;break;default:throw new Error("Invalid zone pointer")}}function _9(r){var t=r.stack.pop();switch(y.DEBUG&&console.log(r.step,"SZP1[]",t),r.zp1=t,t){case 0:r.tZone||ft(r),r.z1=r.tZone;break;case 1:r.z1=r.gZone;break;default:throw new Error("Invalid zone pointer")}}function g9(r){var t=r.stack.pop();switch(y.DEBUG&&console.log(r.step,"SZP2[]",t),r.zp2=t,t){case 0:r.tZone||ft(r),r.z2=r.tZone;break;case 1:r.z2=r.gZone;break;default:throw new Error("Invalid zone pointer")}}function D9(r){var t=r.stack.pop();switch(y.DEBUG&&console.log(r.step,"SZPS[]",t),r.zp0=r.zp1=r.zp2=t,t){case 0:r.tZone||ft(r),r.z0=r.z1=r.z2=r.tZone;break;case 1:r.z0=r.z1=r.z2=r.gZone;break;default:throw new Error("Invalid zone pointer")}}function p9(r){r.loop=r.stack.pop(),y.DEBUG&&console.log(r.step,"SLOOP[]",r.loop)}function v9(r){y.DEBUG&&console.log(r.step,"RTG[]"),r.round=I7}function m9(r){y.DEBUG&&console.log(r.step,"RTHG[]"),r.round=e9}function b9(r){var t=r.stack.pop();y.DEBUG&&console.log(r.step,"SMD[]",t),r.minDis=t/64}function y9(r){y.DEBUG&&console.log(r.step,"ELSE[]"),M7(r,!1)}function F9(r){var t=r.stack.pop();y.DEBUG&&console.log(r.step,"JMPR[]",t),r.ip+=t-1}function C9(r){var t=r.stack.pop();y.DEBUG&&console.log(r.step,"SCVTCI[]",t),r.cvCutIn=t/64}function E9(r){var t=r.stack;y.DEBUG&&console.log(r.step,"DUP[]"),t.push(t[t.length-1])}function N6(r){y.DEBUG&&console.log(r.step,"POP[]"),r.stack.pop()}function S9(r){y.DEBUG&&console.log(r.step,"CLEAR[]"),r.stack.length=0}function T9(r){var t=r.stack,e=t.pop(),n=t.pop();y.DEBUG&&console.log(r.step,"SWAP[]"),t.push(e),t.push(n)}function x9(r){var t=r.stack;y.DEBUG&&console.log(r.step,"DEPTH[]"),t.push(t.length)}function B9(r){var t=r.stack,e=t.pop(),n=t.pop();y.DEBUG&&console.log(r.step,"LOOPCALL[]",e,n);var s=r.ip,i=r.prog;r.prog=r.funcs[e];for(var a=0;a<n;a++)we(r),y.DEBUG&&console.log(++r.step,a+1<n?"next loopcall":"done loopcall",a);r.ip=s,r.prog=i}function O9(r){var t=r.stack.pop();y.DEBUG&&console.log(r.step,"CALL[]",t);var e=r.ip,n=r.prog;r.prog=r.funcs[t],we(r),r.ip=e,r.prog=n,y.DEBUG&&console.log(++r.step,"returning from",t)}function w9(r){var t=r.stack,e=t.pop();y.DEBUG&&console.log(r.step,"CINDEX[]",e),t.push(t[t.length-e])}function A9(r){var t=r.stack,e=t.pop();y.DEBUG&&console.log(r.step,"MINDEX[]",e),t.push(t.splice(t.length-e,1)[0])}function R9(r){if(r.env!=="fpgm")throw new Error("FDEF not allowed here");var t=r.stack,e=r.prog,n=r.ip,s=t.pop(),i=n;for(y.DEBUG&&console.log(r.step,"FDEF[]",s);e[++n]!==45;);r.ip=n,r.funcs[s]=e.slice(i+1,n)}function z7(r,t){var e=t.stack.pop(),n=t.z0[e],s=t.fv,i=t.pv;y.DEBUG&&console.log(t.step,"MDAP["+r+"]",e);var a=i.distance(n,A2);r&&(a=t.round(a)),s.setRelative(n,A2,a,i),s.touch(n),t.rp0=t.rp1=e}function X7(r,t){var e=t.z2,n=e.length-2,s,i,a;y.DEBUG&&console.log(t.step,"IUP["+r.axis+"]");for(var o=0;o<n;o++)s=e[o],!r.touched(s)&&(i=s.prevTouched(r),i!==s&&(a=s.nextTouched(r),i===a&&r.setRelative(s,s,r.distance(i,i,!1,!0),r,!0),r.interpolate(s,i,a,r)))}function W7(r,t){for(var e=t.stack,n=r?t.rp1:t.rp2,s=(r?t.z0:t.z1)[n],i=t.fv,a=t.pv,o=t.loop,u=t.z2;o--;){var l=e.pop(),c=u[l],h=a.distance(s,s,!1,!0);i.setRelative(c,c,h,a),i.touch(c),y.DEBUG&&console.log(t.step,(t.loop>1?"loop "+(t.loop-o)+": ":"")+"SHP["+(r?"rp1":"rp2")+"]",l)}t.loop=1}function Y7(r,t){var e=t.stack,n=r?t.rp1:t.rp2,s=(r?t.z0:t.z1)[n],i=t.fv,a=t.pv,o=e.pop(),u=t.z2[t.contours[o]],l=u;y.DEBUG&&console.log(t.step,"SHC["+r+"]",o);var c=a.distance(s,s,!1,!0);do l!==s&&i.setRelative(l,l,c,a),l=l.nextPointOnContour;while(l!==u)}function V7(r,t){var e=t.stack,n=r?t.rp1:t.rp2,s=(r?t.z0:t.z1)[n],i=t.fv,a=t.pv,o=e.pop();y.DEBUG&&console.log(t.step,"SHZ["+r+"]",o);var u;switch(o){case 0:u=t.tZone;break;case 1:u=t.gZone;break;default:throw new Error("Invalid zone")}for(var l,c=a.distance(s,s,!1,!0),h=u.length-2,f=0;f<h;f++)l=u[f],i.setRelative(l,l,c,a)}function $9(r){for(var t=r.stack,e=r.loop,n=r.fv,s=t.pop()/64,i=r.z2;e--;){var a=t.pop(),o=i[a];y.DEBUG&&console.log(r.step,(r.loop>1?"loop "+(r.loop-e)+": ":"")+"SHPIX[]",a,s),n.setRelative(o,o,s),n.touch(o)}r.loop=1}function k9(r){for(var t=r.stack,e=r.rp1,n=r.rp2,s=r.loop,i=r.z0[e],a=r.z1[n],o=r.fv,u=r.dpv,l=r.z2;s--;){var c=t.pop(),h=l[c];y.DEBUG&&console.log(r.step,(r.loop>1?"loop "+(r.loop-s)+": ":"")+"IP[]",c,e,"<->",n),o.interpolate(h,i,a,u),o.touch(h)}r.loop=1}function j7(r,t){var e=t.stack,n=e.pop()/64,s=e.pop(),i=t.z1[s],a=t.z0[t.rp0],o=t.fv,u=t.pv;o.setRelative(i,a,n,u),o.touch(i),y.DEBUG&&console.log(t.step,"MSIRP["+r+"]",n,s),t.rp1=t.rp0,t.rp2=s,r&&(t.rp0=s)}function I9(r){for(var t=r.stack,e=r.rp0,n=r.z0[e],s=r.loop,i=r.fv,a=r.pv,o=r.z1;s--;){var u=t.pop(),l=o[u];y.DEBUG&&console.log(r.step,(r.loop>1?"loop "+(r.loop-s)+": ":"")+"ALIGNRP[]",u),i.setRelative(l,n,0,a),i.touch(l)}r.loop=1}function L9(r){y.DEBUG&&console.log(r.step,"RTDG[]"),r.round=Qs}function K7(r,t){var e=t.stack,n=e.pop(),s=e.pop(),i=t.z0[s],a=t.fv,o=t.pv,u=t.cvt[n];y.DEBUG&&console.log(t.step,"MIAP["+r+"]",n,"(",u,")",s);var l=o.distance(i,A2);r&&(Math.abs(l-u)<t.cvCutIn&&(l=u),l=t.round(l)),a.setRelative(i,A2,l,o),t.zp0===0&&(i.xo=i.x,i.yo=i.y),a.touch(i),t.rp0=t.rp1=s}function M9(r){var t=r.prog,e=r.ip,n=r.stack,s=t[++e];y.DEBUG&&console.log(r.step,"NPUSHB[]",s);for(var i=0;i<s;i++)n.push(t[++e]);r.ip=e}function P9(r){var t=r.ip,e=r.prog,n=r.stack,s=e[++t];y.DEBUG&&console.log(r.step,"NPUSHW[]",s);for(var i=0;i<s;i++){var a=e[++t]<<8|e[++t];a&32768&&(a=-((a^65535)+1)),n.push(a)}r.ip=t}function N9(r){var t=r.stack,e=r.store;e||(e=r.store=[]);var n=t.pop(),s=t.pop();y.DEBUG&&console.log(r.step,"WS",n,s),e[s]=n}function U9(r){var t=r.stack,e=r.store,n=t.pop();y.DEBUG&&console.log(r.step,"RS",n);var s=e&&e[n]||0;t.push(s)}function H9(r){var t=r.stack,e=t.pop(),n=t.pop();y.DEBUG&&console.log(r.step,"WCVTP",e,n),r.cvt[n]=e/64}function G9(r){var t=r.stack,e=t.pop();y.DEBUG&&console.log(r.step,"RCVT",e),t.push(r.cvt[e]*64)}function q7(r,t){var e=t.stack,n=e.pop(),s=t.z2[n];y.DEBUG&&console.log(t.step,"GC["+r+"]",n),e.push(t.dpv.distance(s,A2,r,!1)*64)}function Z7(r,t){var e=t.stack,n=e.pop(),s=e.pop(),i=t.z1[n],a=t.z0[s],o=t.dpv.distance(a,i,r,r);y.DEBUG&&console.log(t.step,"MD["+r+"]",n,s,"->",o),t.stack.push(Math.round(o*64))}function z9(r){y.DEBUG&&console.log(r.step,"MPPEM[]"),r.stack.push(r.ppem)}function X9(r){y.DEBUG&&console.log(r.step,"FLIPON[]"),r.autoFlip=!0}function W9(r){var t=r.stack,e=t.pop(),n=t.pop();y.DEBUG&&console.log(r.step,"LT[]",e,n),t.push(n<e?1:0)}function Y9(r){var t=r.stack,e=t.pop(),n=t.pop();y.DEBUG&&console.log(r.step,"LTEQ[]",e,n),t.push(n<=e?1:0)}function V9(r){var t=r.stack,e=t.pop(),n=t.pop();y.DEBUG&&console.log(r.step,"GT[]",e,n),t.push(n>e?1:0)}function j9(r){var t=r.stack,e=t.pop(),n=t.pop();y.DEBUG&&console.log(r.step,"GTEQ[]",e,n),t.push(n>=e?1:0)}function K9(r){var t=r.stack,e=t.pop(),n=t.pop();y.DEBUG&&console.log(r.step,"EQ[]",e,n),t.push(e===n?1:0)}function q9(r){var t=r.stack,e=t.pop(),n=t.pop();y.DEBUG&&console.log(r.step,"NEQ[]",e,n),t.push(e!==n?1:0)}function Z9(r){var t=r.stack,e=t.pop();y.DEBUG&&console.log(r.step,"ODD[]",e),t.push(Math.trunc(e)%2?1:0)}function J9(r){var t=r.stack,e=t.pop();y.DEBUG&&console.log(r.step,"EVEN[]",e),t.push(Math.trunc(e)%2?0:1)}function Q9(r){var t=r.stack.pop();y.DEBUG&&console.log(r.step,"IF[]",t),t||(M7(r,!0),y.DEBUG&&console.log(r.step,"EIF[]"))}function ei(r){y.DEBUG&&console.log(r.step,"EIF[]")}function ti(r){var t=r.stack,e=t.pop(),n=t.pop();y.DEBUG&&console.log(r.step,"AND[]",e,n),t.push(e&&n?1:0)}function ni(r){var t=r.stack,e=t.pop(),n=t.pop();y.DEBUG&&console.log(r.step,"OR[]",e,n),t.push(e||n?1:0)}function ri(r){var t=r.stack,e=t.pop();y.DEBUG&&console.log(r.step,"NOT[]",e),t.push(e?0:1)}function U6(r,t){var e=t.stack,n=e.pop(),s=t.fv,i=t.pv,a=t.ppem,o=t.deltaBase+(r-1)*16,u=t.deltaShift,l=t.z0;y.DEBUG&&console.log(t.step,"DELTAP["+r+"]",n,e);for(var c=0;c<n;c++){var h=e.pop(),f=e.pop(),_=o+((f&240)>>4);if(_===a){var p=(f&15)-8;p>=0&&p++,y.DEBUG&&console.log(t.step,"DELTAPFIX",h,"by",p*u);var m=l[h];s.setRelative(m,m,p*u,i)}}}function si(r){var t=r.stack,e=t.pop();y.DEBUG&&console.log(r.step,"SDB[]",e),r.deltaBase=e}function ii(r){var t=r.stack,e=t.pop();y.DEBUG&&console.log(r.step,"SDS[]",e),r.deltaShift=Math.pow(.5,e)}function ai(r){var t=r.stack,e=t.pop(),n=t.pop();y.DEBUG&&console.log(r.step,"ADD[]",e,n),t.push(n+e)}function oi(r){var t=r.stack,e=t.pop(),n=t.pop();y.DEBUG&&console.log(r.step,"SUB[]",e,n),t.push(n-e)}function ui(r){var t=r.stack,e=t.pop(),n=t.pop();y.DEBUG&&console.log(r.step,"DIV[]",e,n),t.push(n*64/e)}function li(r){var t=r.stack,e=t.pop(),n=t.pop();y.DEBUG&&console.log(r.step,"MUL[]",e,n),t.push(n*e/64)}function ci(r){var t=r.stack,e=t.pop();y.DEBUG&&console.log(r.step,"ABS[]",e),t.push(Math.abs(e))}function hi(r){var t=r.stack,e=t.pop();y.DEBUG&&console.log(r.step,"NEG[]",e),t.push(-e)}function fi(r){var t=r.stack,e=t.pop();y.DEBUG&&console.log(r.step,"FLOOR[]",e),t.push(Math.floor(e/64)*64)}function di(r){var t=r.stack,e=t.pop();y.DEBUG&&console.log(r.step,"CEILING[]",e),t.push(Math.ceil(e/64)*64)}function dt(r,t){var e=t.stack,n=e.pop();y.DEBUG&&console.log(t.step,"ROUND[]"),e.push(t.round(n/64)*64)}function _i(r){var t=r.stack,e=t.pop(),n=t.pop();y.DEBUG&&console.log(r.step,"WCVTF[]",e,n),r.cvt[n]=e*r.ppem/r.font.unitsPerEm}function H6(r,t){var e=t.stack,n=e.pop(),s=t.ppem,i=t.deltaBase+(r-1)*16,a=t.deltaShift;y.DEBUG&&console.log(t.step,"DELTAC["+r+"]",n,e);for(var o=0;o<n;o++){var u=e.pop(),l=e.pop(),c=i+((l&240)>>4);if(c===s){var h=(l&15)-8;h>=0&&h++;var f=h*a;y.DEBUG&&console.log(t.step,"DELTACFIX",u,"by",f),t.cvt[u]+=f}}}function gi(r){var t=r.stack.pop();y.DEBUG&&console.log(r.step,"SROUND[]",t),r.round=L7;var e;switch(t&192){case 0:e=.5;break;case 64:e=1;break;case 128:e=2;break;default:throw new Error("invalid SROUND value")}switch(r.srPeriod=e,t&48){case 0:r.srPhase=0;break;case 16:r.srPhase=.25*e;break;case 32:r.srPhase=.5*e;break;case 48:r.srPhase=.75*e;break;default:throw new Error("invalid SROUND value")}t&=15,t===0?r.srThreshold=0:r.srThreshold=(t/8-.5)*e}function Di(r){var t=r.stack.pop();y.DEBUG&&console.log(r.step,"S45ROUND[]",t),r.round=L7;var e;switch(t&192){case 0:e=Math.sqrt(2)/2;break;case 64:e=Math.sqrt(2);break;case 128:e=2*Math.sqrt(2);break;default:throw new Error("invalid S45ROUND value")}switch(r.srPeriod=e,t&48){case 0:r.srPhase=0;break;case 16:r.srPhase=.25*e;break;case 32:r.srPhase=.5*e;break;case 48:r.srPhase=.75*e;break;default:throw new Error("invalid S45ROUND value")}t&=15,t===0?r.srThreshold=0:r.srThreshold=(t/8-.5)*e}function pi(r){y.DEBUG&&console.log(r.step,"ROFF[]"),r.round=Js}function vi(r){y.DEBUG&&console.log(r.step,"RUTG[]"),r.round=t9}function mi(r){y.DEBUG&&console.log(r.step,"RDTG[]"),r.round=n9}function bi(r){var t=r.stack.pop();y.DEBUG&&console.log(r.step,"SCANCTRL[]",t)}function J7(r,t){var e=t.stack,n=e.pop(),s=e.pop(),i=t.z2[n],a=t.z1[s];y.DEBUG&&console.log(t.step,"SDPVTL["+r+"]",n,s);var o,u;r?(o=i.y-a.y,u=a.x-i.x):(o=a.x-i.x,u=a.y-i.y),t.dpv=w2(o,u)}function yi(r){var t=r.stack,e=t.pop(),n=0;y.DEBUG&&console.log(r.step,"GETINFO[]",e),e&1&&(n=35),e&32&&(n|=4096),t.push(n)}function Fi(r){var t=r.stack,e=t.pop(),n=t.pop(),s=t.pop();y.DEBUG&&console.log(r.step,"ROLL[]"),t.push(n),t.push(e),t.push(s)}function Ci(r){var t=r.stack,e=t.pop(),n=t.pop();y.DEBUG&&console.log(r.step,"MAX[]",e,n),t.push(Math.max(n,e))}function Ei(r){var t=r.stack,e=t.pop(),n=t.pop();y.DEBUG&&console.log(r.step,"MIN[]",e,n),t.push(Math.min(n,e))}function Si(r){var t=r.stack.pop();y.DEBUG&&console.log(r.step,"SCANTYPE[]",t)}function Ti(r){var t=r.stack.pop(),e=r.stack.pop();switch(y.DEBUG&&console.log(r.step,"INSTCTRL[]",t,e),t){case 1:r.inhibitGridFit=!!e;return;case 2:r.ignoreCvt=!!e;return;default:throw new Error("invalid INSTCTRL[] selector")}}function De(r,t){var e=t.stack,n=t.prog,s=t.ip;y.DEBUG&&console.log(t.step,"PUSHB["+r+"]");for(var i=0;i<r;i++)e.push(n[++s]);t.ip=s}function pe(r,t){var e=t.ip,n=t.prog,s=t.stack;y.DEBUG&&console.log(t.ip,"PUSHW["+r+"]");for(var i=0;i<r;i++){var a=n[++e]<<8|n[++e];a&32768&&(a=-((a^65535)+1)),s.push(a)}t.ip=e}function V(r,t,e,n,s,i){var a=i.stack,o=r&&a.pop(),u=a.pop(),l=i.rp0,c=i.z0[l],h=i.z1[u],f=i.minDis,_=i.fv,p=i.dpv,m,v,F,E;v=m=p.distance(h,c,!0,!0),F=v>=0?1:-1,v=Math.abs(v),r&&(E=i.cvt[o],n&&Math.abs(v-E)<i.cvCutIn&&(v=E)),e&&v<f&&(v=f),n&&(v=i.round(v)),_.setRelative(h,c,F*v,p),_.touch(h),y.DEBUG&&console.log(i.step,(r?"MIRP[":"MDRP[")+(t?"M":"m")+(e?">":"_")+(n?"R":"_")+(s===0?"Gr":s===1?"Bl":s===2?"Wh":"")+"]",r?o+"("+i.cvt[o]+","+E+")":"",u,"(d =",m,"->",F*v,")"),i.rp1=i.rp0,i.rp2=u,t&&(i.rp0=u)}R7=[P7.bind(void 0,se),P7.bind(void 0,Q1),N7.bind(void 0,se),N7.bind(void 0,Q1),U7.bind(void 0,se),U7.bind(void 0,Q1),H7.bind(void 0,0),H7.bind(void 0,1),G7.bind(void 0,0),G7.bind(void 0,1),s9,i9,a9,o9,u9,l9,c9,h9,f9,d9,_9,g9,D9,p9,v9,m9,b9,y9,F9,C9,void 0,void 0,E9,N6,S9,T9,x9,w9,A9,void 0,void 0,void 0,B9,O9,R9,void 0,z7.bind(void 0,0),z7.bind(void 0,1),X7.bind(void 0,se),X7.bind(void 0,Q1),W7.bind(void 0,0),W7.bind(void 0,1),Y7.bind(void 0,0),Y7.bind(void 0,1),V7.bind(void 0,0),V7.bind(void 0,1),$9,k9,j7.bind(void 0,0),j7.bind(void 0,1),I9,L9,K7.bind(void 0,0),K7.bind(void 0,1),M9,P9,N9,U9,H9,G9,q7.bind(void 0,0),q7.bind(void 0,1),void 0,Z7.bind(void 0,0),Z7.bind(void 0,1),z9,void 0,X9,void 0,void 0,W9,Y9,V9,j9,K9,q9,Z9,J9,Q9,ei,ti,ni,ri,U6.bind(void 0,1),si,ii,ai,oi,ui,li,ci,hi,fi,di,dt.bind(void 0,0),dt.bind(void 0,1),dt.bind(void 0,2),dt.bind(void 0,3),void 0,void 0,void 0,void 0,_i,U6.bind(void 0,2),U6.bind(void 0,3),H6.bind(void 0,1),H6.bind(void 0,2),H6.bind(void 0,3),gi,Di,void 0,void 0,pi,void 0,vi,mi,N6,N6,void 0,void 0,void 0,void 0,void 0,bi,J7.bind(void 0,0),J7.bind(void 0,1),yi,void 0,Fi,Ci,Ei,Si,Ti,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,De.bind(void 0,1),De.bind(void 0,2),De.bind(void 0,3),De.bind(void 0,4),De.bind(void 0,5),De.bind(void 0,6),De.bind(void 0,7),De.bind(void 0,8),pe.bind(void 0,1),pe.bind(void 0,2),pe.bind(void 0,3),pe.bind(void 0,4),pe.bind(void 0,5),pe.bind(void 0,6),pe.bind(void 0,7),pe.bind(void 0,8),V.bind(void 0,0,0,0,0,0),V.bind(void 0,0,0,0,0,1),V.bind(void 0,0,0,0,0,2),V.bind(void 0,0,0,0,0,3),V.bind(void 0,0,0,0,1,0),V.bind(void 0,0,0,0,1,1),V.bind(void 0,0,0,0,1,2),V.bind(void 0,0,0,0,1,3),V.bind(void 0,0,0,1,0,0),V.bind(void 0,0,0,1,0,1),V.bind(void 0,0,0,1,0,2),V.bind(void 0,0,0,1,0,3),V.bind(void 0,0,0,1,1,0),V.bind(void 0,0,0,1,1,1),V.bind(void 0,0,0,1,1,2),V.bind(void 0,0,0,1,1,3),V.bind(void 0,0,1,0,0,0),V.bind(void 0,0,1,0,0,1),V.bind(void 0,0,1,0,0,2),V.bind(void 0,0,1,0,0,3),V.bind(void 0,0,1,0,1,0),V.bind(void 0,0,1,0,1,1),V.bind(void 0,0,1,0,1,2),V.bind(void 0,0,1,0,1,3),V.bind(void 0,0,1,1,0,0),V.bind(void 0,0,1,1,0,1),V.bind(void 0,0,1,1,0,2),V.bind(void 0,0,1,1,0,3),V.bind(void 0,0,1,1,1,0),V.bind(void 0,0,1,1,1,1),V.bind(void 0,0,1,1,1,2),V.bind(void 0,0,1,1,1,3),V.bind(void 0,1,0,0,0,0),V.bind(void 0,1,0,0,0,1),V.bind(void 0,1,0,0,0,2),V.bind(void 0,1,0,0,0,3),V.bind(void 0,1,0,0,1,0),V.bind(void 0,1,0,0,1,1),V.bind(void 0,1,0,0,1,2),V.bind(void 0,1,0,0,1,3),V.bind(void 0,1,0,1,0,0),V.bind(void 0,1,0,1,0,1),V.bind(void 0,1,0,1,0,2),V.bind(void 0,1,0,1,0,3),V.bind(void 0,1,0,1,1,0),V.bind(void 0,1,0,1,1,1),V.bind(void 0,1,0,1,1,2),V.bind(void 0,1,0,1,1,3),V.bind(void 0,1,1,0,0,0),V.bind(void 0,1,1,0,0,1),V.bind(void 0,1,1,0,0,2),V.bind(void 0,1,1,0,0,3),V.bind(void 0,1,1,0,1,0),V.bind(void 0,1,1,0,1,1),V.bind(void 0,1,1,0,1,2),V.bind(void 0,1,1,0,1,3),V.bind(void 0,1,1,1,0,0),V.bind(void 0,1,1,1,0,1),V.bind(void 0,1,1,1,0,2),V.bind(void 0,1,1,1,0,3),V.bind(void 0,1,1,1,1,0),V.bind(void 0,1,1,1,1,1),V.bind(void 0,1,1,1,1,2),V.bind(void 0,1,1,1,1,3)];function Ze(r){this.char=r,this.state={},this.activeState=null}function G6(r,t,e){this.contextName=e,this.startIndex=r,this.endOffset=t}function xi(r,t,e){this.contextName=r,this.openRange=null,this.ranges=[],this.checkStart=t,this.checkEnd=e}function N1(r,t){this.context=r,this.index=t,this.length=r.length,this.current=r[t],this.backtrack=r.slice(0,t),this.lookahead=r.slice(t+1)}function _t(r){this.eventId=r,this.subscribers=[]}function Bi(r){var t=this,e=["start","end","next","newToken","contextStart","contextEnd","insertToken","removeToken","removeRange","replaceToken","replaceRange","composeRUD","updateContextsRanges"];e.forEach(function(s){Object.defineProperty(t.events,s,{value:new _t(s)})}),r&&e.forEach(function(s){var i=r[s];typeof i=="function"&&t.events[s].subscribe(i)});var n=["insertToken","removeToken","removeRange","replaceToken","replaceRange","composeRUD"];n.forEach(function(s){t.events[s].subscribe(t.updateContextsRanges)})}function c1(r){this.tokens=[],this.registeredContexts={},this.contextCheckers=[],this.events={},this.registeredModifiers=[],Bi.call(this,r)}Ze.prototype.setState=function(r,t){return this.state[r]=t,this.activeState={key:r,value:this.state[r]},this.activeState},Ze.prototype.getState=function(r){return this.state[r]||null},c1.prototype.inboundIndex=function(r){return r>=0&&r<this.tokens.length},c1.prototype.composeRUD=function(r){var t=this,e=!0,n=r.map(function(i){return t[i[0]].apply(t,i.slice(1).concat(e))}),s=function(i){return typeof i=="object"&&i.hasOwnProperty("FAIL")};if(n.every(s))return{FAIL:"composeRUD: one or more operations hasn't completed successfully",report:n.filter(s)};this.dispatch("composeRUD",[n.filter(function(i){return!s(i)})])},c1.prototype.replaceRange=function(r,t,e,n){t=t!==null?t:this.tokens.length;var s=e.every(function(a){return a instanceof Ze});if(!isNaN(r)&&this.inboundIndex(r)&&s){var i=this.tokens.splice.apply(this.tokens,[r,t].concat(e));return n||this.dispatch("replaceToken",[r,t,e]),[i,e]}else return{FAIL:"replaceRange: invalid tokens or startIndex."}},c1.prototype.replaceToken=function(r,t,e){if(!isNaN(r)&&this.inboundIndex(r)&&t instanceof Ze){var n=this.tokens.splice(r,1,t);return e||this.dispatch("replaceToken",[r,t]),[n[0],t]}else return{FAIL:"replaceToken: invalid token or index."}},c1.prototype.removeRange=function(r,t,e){t=isNaN(t)?this.tokens.length:t;var n=this.tokens.splice(r,t);return e||this.dispatch("removeRange",[n,r,t]),n},c1.prototype.removeToken=function(r,t){if(!isNaN(r)&&this.inboundIndex(r)){var e=this.tokens.splice(r,1);return t||this.dispatch("removeToken",[e,r]),e}else return{FAIL:"removeToken: invalid token index."}},c1.prototype.insertToken=function(r,t,e){var n=r.every(function(s){return s instanceof Ze});return n?(this.tokens.splice.apply(this.tokens,[t,0].concat(r)),e||this.dispatch("insertToken",[r,t]),r):{FAIL:"insertToken: invalid token(s)."}},c1.prototype.registerModifier=function(r,t,e){this.events.newToken.subscribe(function(n,s){var i=[n,s],a=t===null||t.apply(this,i)===!0,o=[n,s];if(a){var u=e.apply(this,o);n.setState(r,u)}}),this.registeredModifiers.push(r)},_t.prototype.subscribe=function(r){return typeof r=="function"?this.subscribers.push(r)-1:{FAIL:"invalid '"+this.eventId+"' event handler"}},_t.prototype.unsubscribe=function(r){this.subscribers.splice(r,1)},N1.prototype.setCurrentIndex=function(r){this.index=r,this.current=this.context[r],this.backtrack=this.context.slice(0,r),this.lookahead=this.context.slice(r+1)},N1.prototype.get=function(r){switch(!0){case r===0:return this.current;case(r<0&&Math.abs(r)<=this.backtrack.length):return this.backtrack.slice(r)[0];case(r>0&&r<=this.lookahead.length):return this.lookahead[r-1];default:return null}},c1.prototype.rangeToText=function(r){if(r instanceof G6)return this.getRangeTokens(r).map(function(t){return t.char}).join("")},c1.prototype.getText=function(){return this.tokens.map(function(r){return r.char}).join("")},c1.prototype.getContext=function(r){var t=this.registeredContexts[r];return t||null},c1.prototype.on=function(r,t){var e=this.events[r];return e?e.subscribe(t):null},c1.prototype.dispatch=function(r,t){var e=this,n=this.events[r];n instanceof _t&&n.subscribers.forEach(function(s){s.apply(e,t||[])})},c1.prototype.registerContextChecker=function(r,t,e){if(this.getContext(r))return{FAIL:"context name '"+r+"' is already registered."};if(typeof t!="function")return{FAIL:"missing context start check."};if(typeof e!="function")return{FAIL:"missing context end check."};var n=new xi(r,t,e);return this.registeredContexts[r]=n,this.contextCheckers.push(n),n},c1.prototype.getRangeTokens=function(r){var t=r.startIndex+r.endOffset;return[].concat(this.tokens.slice(r.startIndex,t))},c1.prototype.getContextRanges=function(r){var t=this.getContext(r);return t?t.ranges:{FAIL:"context checker '"+r+"' is not registered."}},c1.prototype.resetContextsRanges=function(){var r=this.registeredContexts;for(var t in r)if(r.hasOwnProperty(t)){var e=r[t];e.ranges=[]}},c1.prototype.updateContextsRanges=function(){this.resetContextsRanges();for(var r=this.tokens.map(function(n){return n.char}),t=0;t<r.length;t++){var e=new N1(r,t);this.runContextCheck(e)}this.dispatch("updateContextsRanges",[this.registeredContexts])},c1.prototype.setEndOffset=function(r,t){var e=this.getContext(t).openRange.startIndex,n=new G6(e,r,t),s=this.getContext(t).ranges;return n.rangeId=t+"."+s.length,s.push(n),this.getContext(t).openRange=null,n},c1.prototype.runContextCheck=function(r){var t=this,e=r.index;this.contextCheckers.forEach(function(n){var s=n.contextName,i=t.getContext(s).openRange;if(!i&&n.checkStart(r)&&(i=new G6(e,null,s),t.getContext(s).openRange=i,t.dispatch("contextStart",[s,e])),i&&n.checkEnd(r)){var a=e-i.startIndex+1,o=t.setEndOffset(a,s);t.dispatch("contextEnd",[s,o])}})},c1.prototype.tokenize=function(r){this.tokens=[],this.resetContextsRanges();var t=Array.from(r);this.dispatch("start");for(var e=0;e<t.length;e++){var n=t[e],s=new N1(t,e);this.dispatch("next",[s]),this.runContextCheck(s);var i=new Ze(n);this.tokens.push(i),this.dispatch("newToken",[i,s])}return this.dispatch("end",[this.tokens]),this.tokens};function ve(r){return/[\u0600-\u065F\u066A-\u06D2\u06FA-\u06FF]/.test(r)}function Q7(r){return/[\u0630\u0690\u0621\u0631\u0661\u0671\u0622\u0632\u0672\u0692\u06C2\u0623\u0673\u0693\u06C3\u0624\u0694\u06C4\u0625\u0675\u0695\u06C5\u06E5\u0676\u0696\u06C6\u0627\u0677\u0697\u06C7\u0648\u0688\u0698\u06C8\u0689\u0699\u06C9\u068A\u06CA\u066B\u068B\u06CB\u068C\u068D\u06CD\u06FD\u068E\u06EE\u06FE\u062F\u068F\u06CF\u06EF]/.test(r)}function me(r){return/[\u0600-\u0605\u060C-\u060E\u0610-\u061B\u061E\u064B-\u065F\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED]/.test(r)}function gt(r){return/[A-z]/.test(r)}function Oi(r){return/\s/.test(r)}function I1(r){this.font=r,this.features={}}function Ae(r){this.id=r.id,this.tag=r.tag,this.substitution=r.substitution}function R2(r,t){if(!r)return-1;switch(t.format){case 1:return t.glyphs.indexOf(r);case 2:for(var e=t.ranges,n=0;n<e.length;n++){var s=e[n];if(r>=s.start&&r<=s.end){var i=r-s.start;return s.index+i}}break;default:return-1}return-1}function wi(r,t){var e=R2(r,t.coverage);return e===-1?null:r+t.deltaGlyphId}function Ai(r,t){var e=R2(r,t.coverage);return e===-1?null:t.substitute[e]}function z6(r,t){for(var e=[],n=0;n<r.length;n++){var s=r[n],i=t.current;i=Array.isArray(i)?i[0]:i;var a=R2(i,s);a!==-1&&e.push(a)}return e.length!==r.length?-1:e}function Ri(r,t){var e=t.inputCoverage.length+t.lookaheadCoverage.length+t.backtrackCoverage.length;if(r.context.length<e)return[];var n=z6(t.inputCoverage,r);if(n===-1)return[];var s=t.inputCoverage.length-1;if(r.lookahead.length<t.lookaheadCoverage.length)return[];for(var i=r.lookahead.slice(s);i.length&&me(i[0].char);)i.shift();var a=new N1(i,0),o=z6(t.lookaheadCoverage,a),u=[].concat(r.backtrack);for(u.reverse();u.length&&me(u[0].char);)u.shift();if(u.length<t.backtrackCoverage.length)return[];var l=new N1(u,0),c=z6(t.backtrackCoverage,l),h=n.length===t.inputCoverage.length&&o.length===t.lookaheadCoverage.length&&c.length===t.backtrackCoverage.length,f=[];if(h)for(var _=0;_<t.lookupRecords.length;_++)for(var p=t.lookupRecords[_],m=p.lookupListIndex,v=this.getLookupByIndex(m),F=0;F<v.subtables.length;F++){var E=v.subtables[F],S=this.getLookupMethod(v,E),B=this.getSubstitutionType(v,E);if(B==="12")for(var x=0;x<n.length;x++){var w=r.get(x),O=S(w);O&&f.push(O)}}return f}function $i(r,t){var e=r.current,n=R2(e,t.coverage);if(n===-1)return null;for(var s,i=t.ligatureSets[n],a=0;a<i.length;a++){s=i[a];for(var o=0;o<s.components.length;o++){var u=r.lookahead[o],l=s.components[o];if(u!==l)break;if(o===s.components.length-1)return s}}return null}function ki(r,t){var e=R2(r,t.coverage);return e===-1?null:t.sequences[e]}I1.prototype.getDefaultScriptFeaturesIndexes=function(){for(var r=this.font.tables.gsub.scripts,t=0;t<r.length;t++){var e=r[t];if(e.tag==="DFLT")return e.script.defaultLangSys.featureIndexes}return[]},I1.prototype.getScriptFeaturesIndexes=function(r){var t=this.font.tables;if(!t.gsub)return[];if(!r)return this.getDefaultScriptFeaturesIndexes();for(var e=this.font.tables.gsub.scripts,n=0;n<e.length;n++){var s=e[n];if(s.tag===r&&s.script.defaultLangSys)return s.script.defaultLangSys.featureIndexes;var i=s.langSysRecords;if(i)for(var a=0;a<i.length;a++){var o=i[a];if(o.tag===r){var u=o.langSys;return u.featureIndexes}}}return this.getDefaultScriptFeaturesIndexes()},I1.prototype.mapTagsToFeatures=function(r,t){for(var e={},n=0;n<r.length;n++){var s=r[n].tag,i=r[n].feature;e[s]=i}this.features[t].tags=e},I1.prototype.getScriptFeatures=function(r){var t=this.features[r];if(this.features.hasOwnProperty(r))return t;var e=this.getScriptFeaturesIndexes(r);if(!e)return null;var n=this.font.tables.gsub;return t=e.map(function(s){return n.features[s]}),this.features[r]=t,this.mapTagsToFeatures(t,r),t},I1.prototype.getSubstitutionType=function(r,t){var e=r.lookupType.toString(),n=t.substFormat.toString();return e+n},I1.prototype.getLookupMethod=function(r,t){var e=this,n=this.getSubstitutionType(r,t);switch(n){case"11":return function(s){return wi.apply(e,[s,t])};case"12":return function(s){return Ai.apply(e,[s,t])};case"63":return function(s){return Ri.apply(e,[s,t])};case"41":return function(s){return $i.apply(e,[s,t])};case"21":return function(s){return ki.apply(e,[s,t])};default:throw new Error("lookupType: "+r.lookupType+" - substFormat: "+t.substFormat+" is not yet supported")}},I1.prototype.lookupFeature=function(r){var t=r.contextParams,e=t.index,n=this.getFeature({tag:r.tag,script:r.script});if(!n)return new Error("font '"+this.font.names.fullName.en+"' doesn't support feature '"+r.tag+"' for script '"+r.script+"'.");for(var s=this.getFeatureLookups(n),i=[].concat(t.context),a=0;a<s.length;a++)for(var o=s[a],u=this.getLookupSubtables(o),l=0;l<u.length;l++){var c=u[l],h=this.getSubstitutionType(o,c),f=this.getLookupMethod(o,c),_=void 0;switch(h){case"11":_=f(t.current),_&&i.splice(e,1,new Ae({id:11,tag:r.tag,substitution:_}));break;case"12":_=f(t.current),_&&i.splice(e,1,new Ae({id:12,tag:r.tag,substitution:_}));break;case"63":_=f(t),Array.isArray(_)&&_.length&&i.splice(e,1,new Ae({id:63,tag:r.tag,substitution:_}));break;case"41":_=f(t),_&&i.splice(e,1,new Ae({id:41,tag:r.tag,substitution:_}));break;case"21":_=f(t.current),_&&i.splice(e,1,new Ae({id:21,tag:r.tag,substitution:_}));break}t=new N1(i,e),!(Array.isArray(_)&&!_.length)&&(_=null)}return i.length?i:null},I1.prototype.supports=function(r){if(!r.script)return!1;this.getScriptFeatures(r.script);var t=this.features.hasOwnProperty(r.script);if(!r.tag)return t;var e=this.features[r.script].some(function(n){return n.tag===r.tag});return t&&e},I1.prototype.getLookupSubtables=function(r){return r.subtables||null},I1.prototype.getLookupByIndex=function(r){var t=this.font.tables.gsub.lookups;return t[r]||null},I1.prototype.getFeatureLookups=function(r){return r.lookupListIndexes.map(this.getLookupByIndex.bind(this))},I1.prototype.getFeature=function(t){if(!this.font)return{FAIL:"No font was found"};this.features.hasOwnProperty(t.script)||this.getScriptFeatures(t.script);var e=this.features[t.script];return e?e.tags[t.tag]?this.features[t.script].tags[t.tag]:null:{FAIL:"No feature for script "+t.script}};function Ii(r){var t=r.current,e=r.get(-1);return e===null&&ve(t)||!ve(e)&&ve(t)}function Li(r){var t=r.get(1);return t===null||!ve(t)}var Mi={startCheck:Ii,endCheck:Li};function Pi(r){var t=r.current,e=r.get(-1);return(ve(t)||me(t))&&!ve(e)}function Ni(r){var t=r.get(1);switch(!0){case t===null:return!0;case(!ve(t)&&!me(t)):var e=Oi(t);if(!e)return!0;if(e){var n=!1;if(n=r.lookahead.some(function(s){return ve(s)||me(s)}),!n)return!0}break;default:return!1}}var Ui={startCheck:Pi,endCheck:Ni};function Hi(r,t,e){t[e].setState(r.tag,r.substitution)}function Gi(r,t,e){t[e].setState(r.tag,r.substitution)}function zi(r,t,e){r.substitution.forEach(function(n,s){var i=t[e+s];i.setState(r.tag,n)})}function Xi(r,t,e){var n=t[e];n.setState(r.tag,r.substitution.ligGlyph);for(var s=r.substitution.components.length,i=0;i<s;i++)n=t[e+i+1],n.setState("deleted",!0)}var en={11:Hi,12:Gi,63:zi,41:Xi};function X6(r,t,e){r instanceof Ae&&en[r.id]&&en[r.id](r,t,e)}function Wi(r){for(var t=[].concat(r.backtrack),e=t.length-1;e>=0;e--){var n=t[e],s=Q7(n),i=me(n);if(!s&&!i)return!0;if(s)return!1}return!1}function Yi(r){if(Q7(r.current))return!1;for(var t=0;t<r.lookahead.length;t++){var e=r.lookahead[t],n=me(e);if(!n)return!0}return!1}function Vi(r){var t=this,e="arab",n=this.featuresTags[e],s=this.tokenizer.getRangeTokens(r);if(s.length!==1){var i=new N1(s.map(function(o){return o.getState("glyphIndex")}),0),a=new N1(s.map(function(o){return o.char}),0);s.forEach(function(o,u){if(!me(o.char)){i.setCurrentIndex(u),a.setCurrentIndex(u);var l=0;Wi(a)&&(l|=1),Yi(a)&&(l|=2);var c;switch(l){case 1:c="fina";break;case 2:c="init";break;case 3:c="medi";break}if(n.indexOf(c)!==-1){var h=t.query.lookupFeature({tag:c,script:e,contextParams:i});if(h instanceof Error)return console.info(h.message);h.forEach(function(f,_){f instanceof Ae&&(X6(f,s,_),i.context[_]=f.substitution)})}}})}}function tn(r,t){var e=r.map(function(n){return n.activeState.value});return new N1(e,t||0)}function ji(r){var t=this,e="arab",n=this.tokenizer.getRangeTokens(r),s=tn(n);s.context.forEach(function(i,a){s.setCurrentIndex(a);var o=t.query.lookupFeature({tag:"rlig",script:e,contextParams:s});o.length&&(o.forEach(function(u){return X6(u,n,a)}),s=tn(n))})}function Ki(r){var t=r.current,e=r.get(-1);return e===null&>(t)||!gt(e)&>(t)}function qi(r){var t=r.get(1);return t===null||!gt(t)}var Zi={startCheck:Ki,endCheck:qi};function nn(r,t){var e=r.map(function(n){return n.activeState.value});return new N1(e,t||0)}function Ji(r){var t=this,e="latn",n=this.tokenizer.getRangeTokens(r),s=nn(n);s.context.forEach(function(i,a){s.setCurrentIndex(a);var o=t.query.lookupFeature({tag:"liga",script:e,contextParams:s});o.length&&(o.forEach(function(u){return X6(u,n,a)}),s=nn(n))})}function U1(r){this.baseDir=r||"ltr",this.tokenizer=new c1,this.featuresTags={}}U1.prototype.setText=function(r){this.text=r},U1.prototype.contextChecks={latinWordCheck:Zi,arabicWordCheck:Mi,arabicSentenceCheck:Ui};function W6(r){var t=this.contextChecks[r+"Check"];return this.tokenizer.registerContextChecker(r,t.startCheck,t.endCheck)}function Qi(){return W6.call(this,"latinWord"),W6.call(this,"arabicWord"),W6.call(this,"arabicSentence"),this.tokenizer.tokenize(this.text)}function e5(){var r=this,t=this.tokenizer.getContextRanges("arabicSentence");t.forEach(function(e){var n=r.tokenizer.getRangeTokens(e);r.tokenizer.replaceRange(e.startIndex,e.endOffset,n.reverse())})}U1.prototype.registerFeatures=function(r,t){var e=this,n=t.filter(function(s){return e.query.supports({script:r,tag:s})});this.featuresTags.hasOwnProperty(r)?this.featuresTags[r]=this.featuresTags[r].concat(n):this.featuresTags[r]=n},U1.prototype.applyFeatures=function(r,t){if(!r)throw new Error("No valid font was provided to apply features");this.query||(this.query=new I1(r));for(var e=0;e<t.length;e++){var n=t[e];this.query.supports({script:n.script})&&this.registerFeatures(n.script,n.tags)}},U1.prototype.registerModifier=function(r,t,e){this.tokenizer.registerModifier(r,t,e)};function Y6(){if(this.tokenizer.registeredModifiers.indexOf("glyphIndex")===-1)throw new Error("glyphIndex modifier is required to apply arabic presentation features.")}function t5(){var r=this,t="arab";if(this.featuresTags.hasOwnProperty(t)){Y6.call(this);var e=this.tokenizer.getContextRanges("arabicWord");e.forEach(function(n){Vi.call(r,n)})}}function n5(){var r=this,t="arab";if(this.featuresTags.hasOwnProperty(t)){var e=this.featuresTags[t];if(e.indexOf("rlig")!==-1){Y6.call(this);var n=this.tokenizer.getContextRanges("arabicWord");n.forEach(function(s){ji.call(r,s)})}}}function r5(){var r=this,t="latn";if(this.featuresTags.hasOwnProperty(t)){var e=this.featuresTags[t];if(e.indexOf("liga")!==-1){Y6.call(this);var n=this.tokenizer.getContextRanges("latinWord");n.forEach(function(s){Ji.call(r,s)})}}}U1.prototype.checkContextReady=function(r){return!!this.tokenizer.getContext(r)},U1.prototype.applyFeaturesToContexts=function(){this.checkContextReady("arabicWord")&&(t5.call(this),n5.call(this)),this.checkContextReady("latinWord")&&r5.call(this),this.checkContextReady("arabicSentence")&&e5.call(this)},U1.prototype.processText=function(r){(!this.text||this.text!==r)&&(this.setText(r),Qi.call(this),this.applyFeaturesToContexts())},U1.prototype.getBidiText=function(r){return this.processText(r),this.tokenizer.getText()},U1.prototype.getTextGlyphs=function(r){this.processText(r);for(var t=[],e=0;e<this.tokenizer.tokens.length;e++){var n=this.tokenizer.tokens[e];if(!n.state.deleted){var s=n.activeState.value;t.push(Array.isArray(s)?s[0]:s)}}return t};function s1(r){r=r||{},r.tables=r.tables||{},r.empty||(B2(r.familyName,"When creating a new Font object, familyName is required."),B2(r.styleName,"When creating a new Font object, styleName is required."),B2(r.unitsPerEm,"When creating a new Font object, unitsPerEm is required."),B2(r.ascender,"When creating a new Font object, ascender is required."),B2(r.descender<=0,"When creating a new Font object, negative descender value is required."),this.names={fontFamily:{en:r.familyName||" "},fontSubfamily:{en:r.styleName||" "},fullName:{en:r.fullName||r.familyName+" "+r.styleName},postScriptName:{en:r.postScriptName||(r.familyName+r.styleName).replace(/\s/g,"")},designer:{en:r.designer||" "},designerURL:{en:r.designerURL||" "},manufacturer:{en:r.manufacturer||" "},manufacturerURL:{en:r.manufacturerURL||" "},license:{en:r.license||" "},licenseURL:{en:r.licenseURL||" "},version:{en:r.version||"Version 0.1"},description:{en:r.description||" "},copyright:{en:r.copyright||" "},trademark:{en:r.trademark||" "}},this.unitsPerEm=r.unitsPerEm||1e3,this.ascender=r.ascender,this.descender=r.descender,this.createdTimestamp=r.createdTimestamp,this.tables=Object.assign(r.tables,{os2:Object.assign({usWeightClass:r.weightClass||this.usWeightClasses.MEDIUM,usWidthClass:r.widthClass||this.usWidthClasses.MEDIUM,fsSelection:r.fsSelection||this.fsSelectionValues.REGULAR},r.tables.os2)})),this.supported=!0,this.glyphs=new J1.GlyphSet(this,r.glyphs||[]),this.encoding=new X4(this),this.position=new x2(this),this.substitution=new k1(this),this.tables=this.tables||{},this._push=null,this._hmtxTableData={},Object.defineProperty(this,"hinting",{get:function(){if(this._hinting)return this._hinting;if(this.outlinesFormat==="truetype")return this._hinting=new k7(this)}})}s1.prototype.hasChar=function(r){return this.encoding.charToGlyphIndex(r)!==null},s1.prototype.charToGlyphIndex=function(r){return this.encoding.charToGlyphIndex(r)},s1.prototype.charToGlyph=function(r){var t=this.charToGlyphIndex(r),e=this.glyphs.get(t);return e||(e=this.glyphs.get(0)),e},s1.prototype.updateFeatures=function(r){return this.defaultRenderOptions.features.map(function(t){return t.script==="latn"?{script:"latn",tags:t.tags.filter(function(e){return r[e]})}:t})},s1.prototype.stringToGlyphs=function(r,t){var e=this,n=new U1,s=function(h){return e.charToGlyphIndex(h.char)};n.registerModifier("glyphIndex",null,s);var i=t?this.updateFeatures(t.features):this.defaultRenderOptions.features;n.applyFeatures(this,i);for(var a=n.getTextGlyphs(r),o=a.length,u=new Array(o),l=this.glyphs.get(0),c=0;c<o;c+=1)u[c]=this.glyphs.get(a[c])||l;return u},s1.prototype.nameToGlyphIndex=function(r){return this.glyphNames.nameToGlyphIndex(r)},s1.prototype.nameToGlyph=function(r){var t=this.nameToGlyphIndex(r),e=this.glyphs.get(t);return e||(e=this.glyphs.get(0)),e},s1.prototype.glyphIndexToName=function(r){return this.glyphNames.glyphIndexToName?this.glyphNames.glyphIndexToName(r):""},s1.prototype.getKerningValue=function(r,t){r=r.index||r,t=t.index||t;var e=this.position.defaultKerningTables;return e?this.position.getKerningValue(e,r,t):this.kerningPairs[r+","+t]||0},s1.prototype.defaultRenderOptions={kerning:!0,features:[{script:"arab",tags:["init","medi","fina","rlig"]},{script:"latn",tags:["liga","rlig"]}]},s1.prototype.forEachGlyph=function(r,t,e,n,s,i){t=t!==void 0?t:0,e=e!==void 0?e:0,n=n!==void 0?n:72,s=Object.assign({},this.defaultRenderOptions,s);var a=1/this.unitsPerEm*n,o=this.stringToGlyphs(r,s),u;if(s.kerning){var l=s.script||this.position.getDefaultScriptName();u=this.position.getKerningTables(l,s.language)}for(var c=0;c<o.length;c+=1){var h=o[c];if(i.call(this,h,t,e,n,s),h.advanceWidth&&(t+=h.advanceWidth*a),s.kerning&&c<o.length-1){var f=u?this.position.getKerningValue(u,h.index,o[c+1].index):this.getKerningValue(h,o[c+1]);t+=f*a}s.letterSpacing?t+=s.letterSpacing*n:s.tracking&&(t+=s.tracking/1e3*n)}return t},s1.prototype.getPath=function(r,t,e,n,s){var i=new _1;return this.forEachGlyph(r,t,e,n,s,function(a,o,u,l){var c=a.getPath(o,u,l,s,this);i.extend(c)}),i},s1.prototype.getPaths=function(r,t,e,n,s){var i=[];return this.forEachGlyph(r,t,e,n,s,function(a,o,u,l){var c=a.getPath(o,u,l,s,this);i.push(c)}),i},s1.prototype.getAdvanceWidth=function(r,t,e){return this.forEachGlyph(r,0,0,t,e,function(){})},s1.prototype.draw=function(r,t,e,n,s,i){this.getPath(t,e,n,s,i).draw(r)},s1.prototype.drawPoints=function(r,t,e,n,s,i){this.forEachGlyph(t,e,n,s,i,function(a,o,u,l){a.drawPoints(r,o,u,l)})},s1.prototype.drawMetrics=function(r,t,e,n,s,i){this.forEachGlyph(t,e,n,s,i,function(a,o,u,l){a.drawMetrics(r,o,u,l)})},s1.prototype.getEnglishName=function(r){var t=this.names[r];if(t)return t.en},s1.prototype.validate=function(){var r=this;function t(n,s){}function e(n){var s=r.getEnglishName(n);s&&s.trim().length>0}e("fontFamily"),e("weightName"),e("manufacturer"),e("copyright"),e("version"),this.unitsPerEm>0},s1.prototype.toTables=function(){return Xs.fontToTable(this)},s1.prototype.toBuffer=function(){return console.warn("Font.toBuffer is deprecated. Use Font.toArrayBuffer instead."),this.toArrayBuffer()},s1.prototype.toArrayBuffer=function(){for(var r=this.toTables(),t=r.encode(),e=new ArrayBuffer(t.length),n=new Uint8Array(e),s=0;s<t.length;s++)n[s]=t[s];return e},s1.prototype.download=function(r){var t=this.getEnglishName("fontFamily"),e=this.getEnglishName("fontSubfamily");r=r||t.replace(/\s/g,"")+"-"+e+".otf";var n=this.toArrayBuffer();if(Ys())if(window.URL=window.URL||window.webkitURL,window.URL){var s=new DataView(n),i=new Blob([s],{type:"font/opentype"}),a=document.createElement("a");a.href=window.URL.createObjectURL(i),a.download=r;var o=document.createEvent("MouseEvents");o.initEvent("click",!0,!1),a.dispatchEvent(o)}else console.warn("Font file could not be downloaded. Try using a different browser.");else{var u=require("fs"),l=Vs(n);u.writeFileSync(r,l)}},s1.prototype.fsSelectionValues={ITALIC:1,UNDERSCORE:2,NEGATIVE:4,OUTLINED:8,STRIKEOUT:16,BOLD:32,REGULAR:64,USER_TYPO_METRICS:128,WWS:256,OBLIQUE:512},s1.prototype.usWidthClasses={ULTRA_CONDENSED:1,EXTRA_CONDENSED:2,CONDENSED:3,SEMI_CONDENSED:4,MEDIUM:5,SEMI_EXPANDED:6,EXPANDED:7,EXTRA_EXPANDED:8,ULTRA_EXPANDED:9},s1.prototype.usWeightClasses={THIN:100,EXTRA_LIGHT:200,LIGHT:300,NORMAL:400,MEDIUM:500,SEMI_BOLD:600,BOLD:700,EXTRA_BOLD:800,BLACK:900};function rn(r,t){var e=JSON.stringify(r),n=256;for(var s in t){var i=parseInt(s);if(!(!i||i<256)){if(JSON.stringify(t[s])===e)return i;n<=i&&(n=i+1)}}return t[n]=r,n}function s5(r,t,e){var n=rn(t.name,e);return[{name:"tag_"+r,type:"TAG",value:t.tag},{name:"minValue_"+r,type:"FIXED",value:t.minValue<<16},{name:"defaultValue_"+r,type:"FIXED",value:t.defaultValue<<16},{name:"maxValue_"+r,type:"FIXED",value:t.maxValue<<16},{name:"flags_"+r,type:"USHORT",value:0},{name:"nameID_"+r,type:"USHORT",value:n}]}function i5(r,t,e){var n={},s=new Y.Parser(r,t);return n.tag=s.parseTag(),n.minValue=s.parseFixed(),n.defaultValue=s.parseFixed(),n.maxValue=s.parseFixed(),s.skip("uShort",1),n.name=e[s.parseUShort()]||{},n}function a5(r,t,e,n){for(var s=rn(t.name,n),i=[{name:"nameID_"+r,type:"USHORT",value:s},{name:"flags_"+r,type:"USHORT",value:0}],a=0;a<e.length;++a){var o=e[a].tag;i.push({name:"axis_"+r+" "+o,type:"FIXED",value:t.coordinates[o]<<16})}return i}function o5(r,t,e,n){var s={},i=new Y.Parser(r,t);s.name=n[i.parseUShort()]||{},i.skip("uShort",1),s.coordinates={};for(var a=0;a<e.length;++a)s.coordinates[e[a].tag]=i.parseFixed();return s}function u5(r,t){var e=new z.Table("fvar",[{name:"version",type:"ULONG",value:65536},{name:"offsetToData",type:"USHORT",value:0},{name:"countSizePairs",type:"USHORT",value:2},{name:"axisCount",type:"USHORT",value:r.axes.length},{name:"axisSize",type:"USHORT",value:20},{name:"instanceCount",type:"USHORT",value:r.instances.length},{name:"instanceSize",type:"USHORT",value:4+r.axes.length*4}]);e.offsetToData=e.sizeOf();for(var n=0;n<r.axes.length;n++)e.fields=e.fields.concat(s5(n,r.axes[n],t));for(var s=0;s<r.instances.length;s++)e.fields=e.fields.concat(a5(s,r.instances[s],r.axes,t));return e}function l5(r,t,e){var n=new Y.Parser(r,t),s=n.parseULong();J.argument(s===65536,"Unsupported fvar table version.");var i=n.parseOffset16();n.skip("uShort",1);for(var a=n.parseUShort(),o=n.parseUShort(),u=n.parseUShort(),l=n.parseUShort(),c=[],h=0;h<a;h++)c.push(i5(r,t+i+h*o,e));for(var f=[],_=t+i+a*o,p=0;p<u;p++)f.push(o5(r,_+p*l,c,e));return{axes:c,instances:f}}var c5={make:u5,parse:l5},h5=function(){return{coverage:this.parsePointer(A.coverage),attachPoints:this.parseList(A.pointer(A.uShortList))}},f5=function(){var r=this.parseUShort();if(J.argument(r===1||r===2||r===3,"Unsupported CaretValue table version."),r===1)return{coordinate:this.parseShort()};if(r===2)return{pointindex:this.parseShort()};if(r===3)return{coordinate:this.parseShort()}},d5=function(){return this.parseList(A.pointer(f5))},_5=function(){return{coverage:this.parsePointer(A.coverage),ligGlyphs:this.parseList(A.pointer(d5))}},g5=function(){return this.parseUShort(),this.parseList(A.pointer(A.coverage))};function D5(r,t){t=t||0;var e=new A(r,t),n=e.parseVersion(1);J.argument(n===1||n===1.2||n===1.3,"Unsupported GDEF table version.");var s={version:n,classDef:e.parsePointer(A.classDef),attachList:e.parsePointer(h5),ligCaretList:e.parsePointer(_5),markAttachClassDef:e.parsePointer(A.classDef)};return n>=1.2&&(s.markGlyphSets=e.parsePointer(g5)),s}var p5={parse:D5},H1=new Array(10);H1[1]=function(){var t=this.offset+this.relativeOffset,e=this.parseUShort();if(e===1)return{posFormat:1,coverage:this.parsePointer(A.coverage),value:this.parseValueRecord()};if(e===2)return{posFormat:2,coverage:this.parsePointer(A.coverage),values:this.parseValueRecordList()};J.assert(!1,"0x"+t.toString(16)+": GPOS lookup type 1 format must be 1 or 2.")},H1[2]=function(){var t=this.offset+this.relativeOffset,e=this.parseUShort();J.assert(e===1||e===2,"0x"+t.toString(16)+": GPOS lookup type 2 format must be 1 or 2.");var n=this.parsePointer(A.coverage),s=this.parseUShort(),i=this.parseUShort();if(e===1)return{posFormat:e,coverage:n,valueFormat1:s,valueFormat2:i,pairSets:this.parseList(A.pointer(A.list(function(){return{secondGlyph:this.parseUShort(),value1:this.parseValueRecord(s),value2:this.parseValueRecord(i)}})))};if(e===2){var a=this.parsePointer(A.classDef),o=this.parsePointer(A.classDef),u=this.parseUShort(),l=this.parseUShort();return{posFormat:e,coverage:n,valueFormat1:s,valueFormat2:i,classDef1:a,classDef2:o,class1Count:u,class2Count:l,classRecords:this.parseList(u,A.list(l,function(){return{value1:this.parseValueRecord(s),value2:this.parseValueRecord(i)}}))}}},H1[3]=function(){return{error:"GPOS Lookup 3 not supported"}},H1[4]=function(){return{error:"GPOS Lookup 4 not supported"}},H1[5]=function(){return{error:"GPOS Lookup 5 not supported"}},H1[6]=function(){return{error:"GPOS Lookup 6 not supported"}},H1[7]=function(){return{error:"GPOS Lookup 7 not supported"}},H1[8]=function(){return{error:"GPOS Lookup 8 not supported"}},H1[9]=function(){return{error:"GPOS Lookup 9 not supported"}};function v5(r,t){t=t||0;var e=new A(r,t),n=e.parseVersion(1);return J.argument(n===1||n===1.1,"Unsupported GPOS table version "+n),n===1?{version:n,scripts:e.parseScriptList(),features:e.parseFeatureList(),lookups:e.parseLookupList(H1)}:{version:n,scripts:e.parseScriptList(),features:e.parseFeatureList(),lookups:e.parseLookupList(H1),variations:e.parseFeatureVariationsList()}}var m5=new Array(10);function b5(r){return new z.Table("GPOS",[{name:"version",type:"ULONG",value:65536},{name:"scripts",type:"TABLE",value:new z.ScriptList(r.scripts)},{name:"features",type:"TABLE",value:new z.FeatureList(r.features)},{name:"lookups",type:"TABLE",value:new z.LookupList(r.lookups,m5)}])}var y5={parse:v5,make:b5};function F5(r){var t={};r.skip("uShort");var e=r.parseUShort();J.argument(e===0,"Unsupported kern sub-table version."),r.skip("uShort",2);var n=r.parseUShort();r.skip("uShort",3);for(var s=0;s<n;s+=1){var i=r.parseUShort(),a=r.parseUShort(),o=r.parseShort();t[i+","+a]=o}return t}function C5(r){var t={};r.skip("uShort");var e=r.parseULong();e>1&&console.warn("Only the first kern subtable is supported."),r.skip("uLong");var n=r.parseUShort(),s=n&255;if(r.skip("uShort"),s===0){var i=r.parseUShort();r.skip("uShort",3);for(var a=0;a<i;a+=1){var o=r.parseUShort(),u=r.parseUShort(),l=r.parseShort();t[o+","+u]=l}}return t}function E5(r,t){var e=new Y.Parser(r,t),n=e.parseUShort();if(n===0)return F5(e);if(n===1)return C5(e);throw new Error("Unsupported kern table version ("+n+").")}var S5={parse:E5};function T5(r,t,e,n){for(var s=new Y.Parser(r,t),i=n?s.parseUShort:s.parseULong,a=[],o=0;o<e+1;o+=1){var u=i.call(s);n&&(u*=2),a.push(u)}return a}var x5={parse:T5};function B5(r,t){var e=require("fs");e.readFile(r,function(n,s){if(n)return t(n.message);t(null,T7(s))})}function O5(r,t){var e=new XMLHttpRequest;e.open("get",r,!0),e.responseType="arraybuffer",e.onload=function(){return e.response?t(null,e.response):t("Font could not be loaded: "+e.statusText)},e.onerror=function(){t("Font could not be loaded")},e.send()}function sn(r,t){for(var e=[],n=12,s=0;s<t;s+=1){var i=Y.getTag(r,n),a=Y.getULong(r,n+4),o=Y.getULong(r,n+8),u=Y.getULong(r,n+12);e.push({tag:i,checksum:a,offset:o,length:u,compression:!1}),n+=16}return e}function w5(r,t){for(var e=[],n=44,s=0;s<t;s+=1){var i=Y.getTag(r,n),a=Y.getULong(r,n+4),o=Y.getULong(r,n+8),u=Y.getULong(r,n+12),l=void 0;o<u?l="WOFF":l=!1,e.push({tag:i,offset:a,compression:l,compressedLength:o,length:u}),n+=20}return e}function f1(r,t){if(t.compression==="WOFF"){var e=new Uint8Array(r.buffer,t.offset+2,t.compressedLength-2),n=new Uint8Array(t.length);if(y8(e,n),n.byteLength!==t.length)throw new Error("Decompression error: "+t.tag+" decompressed length doesn't match recorded length");var s=new DataView(n.buffer,0);return{data:s,offset:0}}else return{data:r,offset:t.offset}}function V6(r,t){t=t==null?{}:t;var e,n,s=new s1({empty:!0}),i=new DataView(r,0),a,o=[],u=Y.getTag(i,0);if(u==="\0\0\0"||u==="true"||u==="typ1")s.outlinesFormat="truetype",a=Y.getUShort(i,4),o=sn(i,a);else if(u==="OTTO")s.outlinesFormat="cff",a=Y.getUShort(i,4),o=sn(i,a);else if(u==="wOFF"){var l=Y.getTag(i,4);if(l==="\0\0\0")s.outlinesFormat="truetype";else if(l==="OTTO")s.outlinesFormat="cff";else throw new Error("Unsupported OpenType flavor "+u);a=Y.getUShort(i,12),o=w5(i,a)}else throw new Error("Unsupported OpenType signature "+u);for(var c,h,f,_,p,m,v,F,E,S,B,x,w=0;w<a;w+=1){var O=o[w],T=void 0;switch(O.tag){case"cmap":T=f1(i,O),s.tables.cmap=z4.parse(T.data,T.offset),s.encoding=new W4(s.tables.cmap);break;case"cvt ":T=f1(i,O),x=new Y.Parser(T.data,T.offset),s.tables.cvt=x.parseShortList(O.length/2);break;case"fvar":h=O;break;case"fpgm":T=f1(i,O),x=new Y.Parser(T.data,T.offset),s.tables.fpgm=x.parseByteList(O.length);break;case"head":T=f1(i,O),s.tables.head=i7.parse(T.data,T.offset),s.unitsPerEm=s.tables.head.unitsPerEm,e=s.tables.head.indexToLocFormat;break;case"hhea":T=f1(i,O),s.tables.hhea=a7.parse(T.data,T.offset),s.ascender=s.tables.hhea.ascender,s.descender=s.tables.hhea.descender,s.numberOfHMetrics=s.tables.hhea.numberOfHMetrics;break;case"hmtx":v=O;break;case"ltag":T=f1(i,O),n=u7.parse(T.data,T.offset);break;case"maxp":T=f1(i,O),s.tables.maxp=l7.parse(T.data,T.offset),s.numGlyphs=s.tables.maxp.numGlyphs;break;case"name":S=O;break;case"OS/2":T=f1(i,O),s.tables.os2=$6.parse(T.data,T.offset);break;case"post":T=f1(i,O),s.tables.post=p7.parse(T.data,T.offset),s.glyphNames=new x6(s.tables.post);break;case"prep":T=f1(i,O),x=new Y.Parser(T.data,T.offset),s.tables.prep=x.parseByteList(O.length);break;case"glyf":f=O;break;case"loca":E=O;break;case"CFF ":c=O;break;case"kern":F=O;break;case"GDEF":_=O;break;case"GPOS":p=O;break;case"GSUB":m=O;break;case"meta":B=O;break}}var R=f1(i,S);if(s.tables.name=D7.parse(R.data,R.offset,n),s.names=s.tables.name,f&&E){var k=e===0,$=f1(i,E),M=x5.parse($.data,$.offset,s.numGlyphs,k),U=f1(i,f);s.glyphs=A7.parse(U.data,U.offset,M,s,t)}else if(c){var I=f1(i,c);s7.parse(I.data,I.offset,s,t)}else throw new Error("Font doesn't contain TrueType or CFF outlines.");var L=f1(i,v);if(o7.parse(s,L.data,L.offset,s.numberOfHMetrics,s.numGlyphs,s.glyphs,t),G8(s,t),F){var H=f1(i,F);s.kerningPairs=S5.parse(H.data,H.offset)}else s.kerningPairs={};if(_){var X=f1(i,_);s.tables.gdef=p5.parse(X.data,X.offset)}if(p){var j=f1(i,p);s.tables.gpos=y5.parse(j.data,j.offset),s.position.init()}if(m){var G=f1(i,m);s.tables.gsub=v7.parse(G.data,G.offset)}if(h){var Q=f1(i,h);s.tables.fvar=c5.parse(Q.data,Q.offset,s.names)}if(B){var t1=f1(i,B);s.tables.meta=m7.parse(t1.data,t1.offset),s.metas=s.tables.meta}return s}function A5(r,t,e){e=e==null?{}:e;var n=typeof window>"u",s=n&&!e.isUrl?B5:O5;return new Promise(function(i,a){s(r,function(o,u){if(o){if(t)return t(o);a(o)}var l;try{l=V6(u,e)}catch(c){if(t)return t(c,null);a(c)}if(t)return t(null,l);i(l)})})}function R5(r,t){var e=require("fs"),n=e.readFileSync(r);return V6(T7(n),t)}var $5=Object.freeze({__proto__:null,Font:s1,Glyph:$1,Path:_1,BoundingBox:re,_parse:Y,parse:V6,load:A5,loadSync:R5});function k5(r){const{family:t,style:e}=r;let n=0,s=400;switch(/italic/i.test(e)&&(n=1),!0){case/thin|hairline/i.test(e):{s=100;break}case/(extra|ultra) *light/i.test(e):{s=200;break}case/light/i.test(e):{s=300;break}case/medium/i.test(e):{s=500;break}case/(semi|demi) *bold/i.test(e):{s=600;break}case/bold/i.test(e):{s=700;break}case/(extra|ultra) *bold/i.test(e):{s=800;break}case/black|heavy/i.test(e):{s=900;break}}return{family:t,variant:{style:n,weight:s}}}function I5(r){const{ff:t,bl:e=g.BooleanNumber.FALSE,it:n=g.BooleanNumber.FALSE}=r;return{family:t!=null?t:"Arial",variant:{style:n===g.BooleanNumber.TRUE?1:0,weight:e===g.BooleanNumber.TRUE?700:400}}}function L5(r,t){let e=Number.POSITIVE_INFINITY;r.variant.style===t.variant.style?e=0:r.variant.style!==0&&t.variant.style!==0?e=1:e=2;const n=Math.abs(r.variant.weight-t.variant.weight);return[e,n]}function M5(r,t){return r[0]===t[0]&&r[1]===t[1]?0:r[0]===t[0]?r[1]>t[1]?1:2:r[0]>t[0]?1:2}async function P5(){var t;return typeof window>"u"?void 0:window.navigator==null||((t=window.navigator)==null?void 0:t.permissions)==null?!1:(await window.navigator.permissions.query({name:"local-fonts"})).state==="granted"}class N5{constructor(){d(this,"isReady",!1);d(this,"_fontBook",new Map);this._loadFontsToBook()}async _loadFontsToBook(){if(!(this.isReady||!await P5())&&"queryLocalFonts"in window)try{const e=await window.queryLocalFonts();for(const n of e){const{family:s,style:i}=n;let a=this._fontBook.get(s);a==null&&(a=new Map,this._fontBook.set(s,a));const u=await(await n.blob()).arrayBuffer();a.set(i,{font:n,buffer:u})}this.isReady=!0}catch(e){console.error(e)}}findBestMatchFontByStyle(t){const e=t.ff,n=this._fontBook.get(e);if(n==null)return;let s=null,i=[Number.POSITIVE_INFINITY,Number.POSITIVE_INFINITY];for(const a of n.values()){const{font:o}=a,u=k5(o),l=I5(t),c=L5(u,l);(s==null||M5(i,c)===1)&&(s=a,i=c)}return s}getValidFontFamilies(t){return t.filter(e=>this._fontBook.has(e))}}const Dt=new N5;function U5(r,t){const{dataStream:e,paragraphs:n=[],textRuns:s=[]}=r;let i=0;for(let o=0;o<n.length;o++){const u=n[o],{startIndex:l}=u;if(l===t)break;i=l+1}const a=[];for(const o of s){const{st:u,ed:l}=o;u>=i&&u<=t?a.push({...o,st:u-i,ed:Math.min(l,t)-i}):l>=i&&l<=t&&a.push({...o,st:Math.max(u,i)-i,ed:l-i})}return{dataStream:e.substring(i,t+1),textRuns:a}}function H5(r){const{dataStream:t,textRuns:e=[]}=r;let n=0;const s=[];for(const i of e){const{st:a,ed:o,ts:u={}}=i;a!==n&&s.push({content:t.substring(n,a)}),s.push({content:t.substring(a,o),style:u}),n=o}return n!==t.length&&s.push({content:t.substring(n)}),s}const an=new Map,j6=new Map;function K6(r,t,e,n,s){var m,v,F,E;let i=0,a=n[i];for(;e.has(a);)i++,a=n[i];if(!a)return[{char:r,start:t,end:t+r.length,glyph:null,font:null,kerning:0,boundingBox:null}];e.add(a);const{font:o,buffer:u}=Dt.findBestMatchFontByStyle({ff:a,bl:(m=s.bl)!=null?m:g.BooleanNumber.FALSE,it:(v=s.it)!=null?v:g.BooleanNumber.FALSE});let l=an.get(o.fullName);l||(l=$5.parse(u),an.set(o.fullName,l));const c=[],h=l.stringToGlyphs(r),f=(F=r.match(/[\s\S]/gu))!=null?F:[];let _=0,p=0;for(;_<h.length;){const S=h[_];if(S.index!==0)c.push({char:f[_],start:p+t,end:p+t+f[_].length,glyph:S,font:l,kerning:0,boundingBox:S.getBoundingBox()});else{const B=p,w=r.substring(B).match(G2);if(w){let O=0;do O+=f[_].length,p+=f[_].length,_++;while(O<w[0].length);c.push(...K6(r.slice(B,B+w[0].length),t+B,e,n,s));continue}else{let O=h[_+1],T=f[_+1];for(;(O==null?void 0:O.index)===0&&!G2.test(T);)p+=f[_].length,_++,O=h[_+1],T=f[_+1];c.push(...K6(r.slice(B,p+f[_].length),t+B,e,n,s))}}p+=(E=f[_])==null?void 0:E.length,_++}return e.delete(a),c}function G5(r){if(r.length<2)return;let t=r[0].font,e=r[0].glyph;for(let n=1;n<r.length;n++){const{font:s,glyph:i}=r[n];if(t!==s||s==null||e==null||i==null){t=s,e=i;continue}const a=s.getKerningValue(e,i);a!==0&&(r[n].kerning=a),t=s,e=i}}function z5(r){var i;if(!Dt.isReady)return[];const t=JSON.stringify(r);if(j6.has(t))return j6.get(t);const e=H5(r),n=[];let s=0;for(const a of e){const{content:o,style:u={}}=a;let l=i2.split(",").map(c=>c.trim().replace(/["']/g,""));l.unshift((i=u.ff)!=null?i:"Arial"),l=Dt.getValidFontFamilies(l),n.push(...K6(o,s,new Set,l,u)),s+=o.length}return G5(n),j6.set(t,n),n}function X5(r,t,e,n,s,i){const a=[];let o=0;for(let u=0;u<t.length;u++){const l=t[u];if(w0(l)||z2(t.substring(u)))break;const c=We(r+u,e,n,s,i),h=Ye(l,c);a.push(h),o++}return{step:o,glyphGroup:a}}function W5(r,t,e,n,s,i){const a=We(r,e,n,s,i),o=[];let u=0;for(let l=0;l<t.length;l++){const c=t[l];if(It(c))o.unshift(c),u++;else break}return{step:u,glyphGroup:[Ye(o.join(""),a)]}}function Y5(r,t,e,n,s,i){const a=We(r,e,n,s,i),o=t.match(G2);return{step:o[0].length,glyphGroup:[Ye(o[0],a)]}}function V5(r,t,e,n,s,i){const a=We(r,e,n,s,i),o=[];let u=0;for(let l=0;l<t.length;l++){const c=t[l];if(Lt(c))o.push(c),u++;else break}return{step:u,glyphGroup:[h8(o.join(""),a)]}}function j5(r){const t=r.length;for(let e=0;e<t-1;e++){const n=r[e],s=r[e+1],{width:i,content:a}=n,o=i/2;if(kt(a)&&kt(s.content)&&n.adjustability.shrinkability[1]+s.adjustability.shrinkability[0]>=o){const u=Math.min(n.adjustability.shrinkability[1],o);S4(n,u),T4(s,o-u)}}}function K5(r){const t=r.flatMap(i=>i.glyphs);let e=null;const n=t.length,s=/[a-z\d]/i;for(let i=0;i<n;i++){const a=t[i],o=i<n-1?t[i+1]:null,{width:u}=a;c2(a.content)&&o&&s.test(o.content)&&(a.width+=u/4,a.adjustability.shrinkability[1]+=u/8),c2(a.content)&&e&&s.test(e.content)&&(a.width+=u/4,a.xOffset+=u/4,a.adjustability.shrinkability[0]+=u/8),e=a}}function q5(r,t,e,n,s,i=!1){var E;const{gridType:a=g.GridType.LINES,charSpace:o=0,defaultTabStop:u=10.5}=n,{snapToGrid:l=g.BooleanNumber.TRUE}=s,c=[],h=new u8(r),{endIndex:f}=e;let _=0,p,m=0;const v=U5(t.getBody(),f);let F=[];for(i&&(F=z5(v)),c8(h);p=h.nextBreak();){const S=r.slice(_,p.position),B=[];if(Dt.isReady&&i){const x=[];let w=0;for(w=m;w<F.length;w++){const O=F[w],{end:T}=O;if(T>p.position)break;x.push(O)}m=w;for(const O of x){const{start:T,char:R}=O,k=We(T,t,e,n,s);if(R===g.DataStreamTreeTokenType.TAB){const $=v2(o,u,a,l),M=E4(k,$);B.push(M)}else if(z2(R)){const $=Ye(R,k);B.push($)}else{const $=Ye(R,k,void 0,O);B.push($)}}}else{let x=S,w=_;for(;x.length>0;){const O=(E=x.match(/^[\s\S]/gu))==null?void 0:E[0];if(O==null)break;if(/\s/.test(O)||h2(O)){const T=We(w,t,e,n,s);let R;if(O===g.DataStreamTreeTokenType.TAB){const k=v2(o,u,a,l);R=E4(T,k)}else R=Ye(O,T);B.push(R),w+=O.length,x=x.substring(O.length)}else if(z2(x)){const{step:T,glyphGroup:R}=Y5(w,x,t,e,n,s);B.push(...R),w+=T,x=x.substring(T)}else if(It(O)){const{step:T,glyphGroup:R}=W5(w,x,t,e,n,s);B.push(...R),w+=T,x=x.substring(T)}else if(Lt(O)){const{step:T,glyphGroup:R}=V5(w,x,t,e,n,s);B.push(...R),w+=T,x=x.substring(T)}else{const{step:T,glyphGroup:R}=X5(w,x,t,e,n,s);B.push(...R),w+=T,x=x.substring(T)}}}j5(B),c.push({text:S,glyphs:B}),_=p.position}return K5(c),c}function $2(r,t,e=1,n=Ne.SECTION){var v1,y1,z1,O1;const s=Z5(),{pageNumberStart:i=1,pageSize:a={width:Number.POSITIVE_INFINITY,height:Number.POSITIVE_INFINITY},pageOrient:o=g.PageOrientType.PORTRAIT,headerIds:u={},footerIds:l={},useFirstPageHeaderFooter:c,useEvenPageHeaderFooter:h,footerTreeMap:f,headerTreeMap:_,columnProperties:p=[],columnSeparatorType:m,marginTop:v=0,marginBottom:F=0,marginHeader:E=0,marginFooter:S=0,marginLeft:B=0,marginRight:x=0,renderConfig:w={}}=r,{skeHeaders:O,skeFooters:T}=t,{width:R=Number.POSITIVE_INFINITY,height:k=Number.POSITIVE_INFINITY}=a;s.pageNumber=e,s.pageNumberStart=i,s.renderConfig=w,s.marginLeft=B,s.marginRight=x,s.breakType=n,s.pageWidth=R,s.width=0,s.pageHeight=k,s.height=0,s.pageOrient=o;const{defaultHeaderId:$,evenPageHeaderId:M,firstPageHeaderId:U}=u,{defaultFooterId:I,evenPageFooterId:L,firstPageFooterId:H}=l;let X=$!=null?$:"",j=I!=null?I:"";e===i&&c?(X=U!=null?U:"",j=H!=null?H:""):e%2===0&&h&&(X=M!=null?M:"",j=L!=null?L:"");let G,Q;X&&((v1=O.get(X))!=null&&v1.has(R)?G=(y1=O.get(X))==null?void 0:y1.get(R):_&&_.has(X)&&(G=on(_.get(X),r,t),O.set(X,new Map([[R,G]]))),s.headerId=X),j&&((z1=T.get(j))!=null&&z1.has(R)?Q=(O1=T.get(j))==null?void 0:O1.get(R):f&&f.has(j)&&(Q=on(f.get(j),r,t),T.set(X,new Map([[R,Q]]))),s.footerId=j),s.marginTop=un(v,E,G),s.marginBottom=un(F,S,Q);const t1=s.sections,n1=t1[t1.length-1],{marginTop:a1,marginBottom:C1,marginLeft:D1,marginRight:i1}=s,o1=R-D1-i1,p1=k-a1-C1;let l1=0;n1&&(l1=n1.top+n1.height);const B1=r4(p,m,l1,0,o1,p1-l1);return B1.parent=s,t1.push(B1),s}function Z5(){return{sections:[],headerId:"",footerId:"",pageWidth:0,pageHeight:0,pageOrient:g.PageOrientType.PORTRAIT,pageNumber:1,pageNumberStart:1,verticalAlign:!1,angle:0,width:0,height:0,marginLeft:0,marginRight:0,marginTop:0,marginBottom:0,breakType:Ne.SECTION,st:0,ed:0,skeDrawings:new Map}}function on(r,t,e,n=!0){const{lists:s,footerTreeMap:i,headerTreeMap:a,localeService:o,pageSize:u,marginLeft:l=0,marginRight:c=0,drawings:h,marginTop:f=0,marginBottom:_=0,marginHeader:p=0,marginFooter:m=0}=t,v=(u==null?void 0:u.width)||Number.POSITIVE_INFINITY,F={lists:s,footerTreeMap:i,headerTreeMap:a,pageSize:{width:v-l-c,height:Number.POSITIVE_INFINITY},localeService:o,drawings:h},E=$2(F,e),S=yn(r,r.children[0],E,F,e).pages[0];t6([S]);const B=S.sections[0].columns[0],x=B.height||0,{skeDrawings:w,st:O,ed:T}=S,R={lines:B.lines,skeDrawings:w,height:x,st:O,ed:T,marginLeft:l,marginRight:c};return n?{...R,marginTop:J5(f,p,x)}:{...R,marginBottom:Q5(_,m,x)}}function un(r,t,e){return!e||e.lines.length===0?r:Math.max(r,t,(e==null?void 0:e.height)||0)}function J5(r,t,e){const n=Math.max(r,t);return e>n?0:n-e}function Q5(r,t,e){const n=Math.max(r,t);return e>n?0:n-e}function ea(r,t,e,n,s=0,i=!1,a,o,u){const{lineHeight:l=15.6,lineTop:c=0,contentHeight:h=0,paddingLeft:f=0,paddingRight:_=0,paddingTop:p=0,paddingBottom:m=0,marginTop:v=0,spaceBelowApply:F=0}=e,E=oa(t,r);E.lineIndex=s,E.paragraphStart=i,E.contentHeight=h,E.top=c,E.lineHeight=l,E.paddingTop=p,E.paddingBottom=m,E.marginTop=v,E.spaceBelowApply=F,E.divides=na(l,c,n,f,_,a,o,u);for(const S of E.divides)S.parent=E;return E}function ta(r=15.6,t=0,e,n,s){let i=t;return n==null||n.forEach(a=>{const o=q6(a,r,t);o&&(i=Math.max(i,o))}),s==null||s.forEach(a=>{const o=q6(a,r,t);o&&(i=Math.max(i,o))}),e==null||e.forEach(a=>{const o=q6(a,r,t);o&&(i=Math.max(i,o))}),i}function q6(r,t,e){const{aTop:n,height:s,aLeft:i,width:a,angle:o=0,drawingOrigin:u}=r,{layoutType:l,distT:c=0,distB:h=0}=u;if(l!==g.PositionedObjectLayoutType.WRAP_TOP_AND_BOTTOM)return;if(o===0){const p=n-c,m=s+h;return p+m<e||p>t+e?void 0:p+s}let{top:f=0,height:_=0}=ln(o,i,a,n,s);if(f-=c,_+=h,!(f+_<e||f>t+e))return f+_}function na(r,t,e,n,s,i,a,o){const u=[];return u.push({left:0,width:n},{left:e-s,width:s}),a==null||a.forEach((l,c)=>{const h=Z6(l,r,t,e);h&&u.push(h)}),o==null||o.forEach((l,c)=>{const h=Z6(l,r,t,e);h&&u.push(h)}),i==null||i.forEach((l,c)=>{const h=Z6(l,r,t,e);h&&u.push(h)}),aa(e,u)}function ra(r,t){r.isFull=t}function Z6(r,t,e,n){const{aTop:s,height:i,aLeft:a,width:o,angle:u=0,drawingOrigin:l}=r,{layoutType:c}=l;if(c===g.PositionedObjectLayoutType.WRAP_NONE||c===g.PositionedObjectLayoutType.WRAP_TOP_AND_BOTTOM)return;if(c===g.PositionedObjectLayoutType.WRAP_POLYGON){const{start:f=[0,0],lineTo:_}=l;if(!_)return;const p=[];p.push(new P(f[0],f[1]));for(let m=0;m<_.length;m++){const v=_[m];p.push(new P(v[0],v[1]))}if(u!==0){const m=new m1().rotate(u);for(let v=0;v<p.length;v++){const F=p[v];p[v]=m.applyPoint(F)}}return cn(p,e,t,n)}if(u===0)return hn(s,i,a,o,e,t,n,l);const h=ln(u,a,o,s,i);if(c===g.PositionedObjectLayoutType.WRAP_SQUARE){const{left:f,width:_,top:p,height:m}=h;return hn(p,m,f,_,e,t,n,l)}return cn(h.points,e,t,n)}function ln(r,t,e,n,s){const i=new m1().rotate(r),a=new P(t,n),o=new P(t,n+s),u=new P(t+e,n),l=new P(t+e,n+s);return i.makeBoundingBoxFromPoints([a,o,u,l])}function cn(r,t,e,n){const s=new W0(r),i=s.intersection([new P(0,t),new P(n,t)]),a=s.intersection([new P(0,t+e),new P(n,t+e)]);if(!i&&!a)return;const o=sa([...r,...i||[],...a||[]]);return{left:o.min,width:o.max}}function sa(r,t=0){const e=[];for(let n=0;n<r.length;n++){const s=r[n];t===0?e.push(s.x):e.push(s.y)}return{max:Math.max(...e),min:Math.min(...e)}}function hn(r,t,e,n,s,i,a,o){const{layoutType:u,wrapText:l=g.WrapTextType.BOTH_SIDES,distL:c=0,distR:h=0,distT:f=0,distB:_=0}=o,p=r-(u===g.PositionedObjectLayoutType.WRAP_SQUARE?f:0),m=t+(u===g.PositionedObjectLayoutType.WRAP_SQUARE?_:0);if(p+m<s||p>i+s)return;let v=e-c,F=n+h;const E=ia(l,v,F,a);return E===1?F=a-v:E===2&&(v=0,F=e+n+h),{left:v,width:F}}function ia(r,t,e,n){let s=0;return r===g.WrapTextType.LEFT?s=1:r===g.WrapTextType.RIGHT?s=2:r===g.WrapTextType.LARGEST&&(t>n-t-e?s=1:s=2),s}function aa(r,t){t.sort((i,a)=>i.left>a.left?1:-1);const e=[];let n=0;const s=t.length;for(let i=0;i<s;i++){const a=t[i],{left:o,width:u}=a;if(o>n){let l=o-n;l=l<r?l:r-n;const c=fn(n,l);e.push(c)}if(n=Math.max(o+u,n),i===s-1&&o+u<r){const l=fn(o+u,r-o-u);e.push(l)}}return e}function fn(r,t){return{glyphGroup:[],width:t,left:r,paddingLeft:0,isFull:!1,st:0,ed:0}}function oa(r,t){return{paragraphIndex:t,type:r,divides:[],lineHeight:0,contentHeight:0,top:0,asc:0,paddingTop:0,paddingBottom:0,marginTop:0,marginBottom:0,spaceBelowApply:0,divideLen:0,st:-1,ed:-1,lineIndex:0,paragraphStart:!1}}function ua(r,t,e,n){if(n)if(n.has(r)){const s=n.get(r);s==null||s.elements.push(t)}else n.set(r,{elements:[t],paragraphIndex:r,top:e})}function la(r,t,e,n,s=!1){if(s)if(n.bulletSkeleton){const{bulletSkeleton:i,paragraphStyle:a={}}=n,{gridType:o=g.GridType.LINES,charSpace:u=0,defaultTabStop:l=1}=e,{snapToGrid:c=g.BooleanNumber.TRUE}=a,h=v2(u,l,o,c),f=f8(r[0],i,h);Re([f,...r],t,e,n,s)}else Re(r,t,e,n,s);else pt(r,t,e,n,s);return[...t]}function ca(r){if(r.length<=1)return!1;let t=!1;for(const e of r)if(e.content===g.DataStreamTreeTokenType.SPACE&&(t=!0),t&&e.content!==g.DataStreamTreeTokenType.SPACE&&e.content!==g.DataStreamTreeTokenType.PARAGRAPH&&e.streamType!==g.DataStreamTreeTokenType.SECTION_BREAK)return!1;return t}function ha(r,t,e){if(r.length<=1)return!1;let n=t,s=!1;for(const i of r){if(i.content===g.DataStreamTreeTokenType.SPACE||i.content===g.DataStreamTreeTokenType.PARAGRAPH||i.streamType===g.DataStreamTreeTokenType.SECTION_BREAK)break;if(n+=i.width,n>e){s=!0;break}}return s}function pt(r,t,e,n,s=!1,i){var u;const a=Xe(t),o=mr(a);if(o){const l=Dn(r),{divide:c}=o,h=(u=c==null?void 0:c.glyphGroup)==null?void 0:u[c.glyphGroup.length-1],f=(h==null?void 0:h.width)||0,_=(h==null?void 0:h.left)||0,p=f+_;if(p+l>c.width)if(ra(c,!0),o.isLast&&r.length===1&&(r[0].content===g.DataStreamTreeTokenType.SPACE||r[0].content===g.DataStreamTreeTokenType.PARAGRAPH))et(c,r,p);else if(o.isLast&&!ha(r,p,c.width)&&ca(r))et(c,r,p);else if((c==null?void 0:c.glyphGroup.length)===0){const m=[];for(;r.length;)if(m.push(r.shift()),Dn(m)>c.width){m.length>1&&r.unshift(m.pop());break}et(c,m,p),r.length&&Re(r,t,e,n,s,i)}else Re(r,t,e,n,s,i);else{const m=c.parent,v=Da(r);if(m&&v&&!va(m)){const{paragraphLineGapDefault:F,linePitch:E,lineSpacing:S,spacingRule:B,snapToGrid:x,gridType:w}=t4(e,n),{boundingBoxAscent:O,boundingBoxDescent:T}=v,R=O+T,{contentHeight:k}=gn(R,F,E,w,S,B,x);if(m.contentHeight<k){const $=pa(m),M=$.length;let U=[],I=1;M>2&&$[0].glyphType===A1.LIST?(U=[$[0],$[1]],I=2):U=[$[0]];const L=m.parent,{paragraphStart:H}=L==null?void 0:L.lines.pop();Re(U,t,e,n,H,O+T);for(let X=I;X<$.length;X++)pt([$[X]],t,e,n,s);pt(r,t,e,n,s);return}}et(c,r,p)}}else Re(r,t,e,n,s,i)}function Re(r,t,e,n,s=!1,i){var ke,w1,Fe,Ie,Le;let a=Xe(t),o=q2(a);if((!o||!o.column)&&(_n(r,t,e,n),a=Xe(t),o=q2(a)),!o)return;const u=o.column;if(u.width<=0){console.error("The column width is less than 0, need to adjust page width to make it great than 0");return}const l=vr(u),c=Math.max(...r.map(T1=>T1.bBox.ba)),h=Math.max(...r.map(T1=>T1.bBox.bd)),f=i||c+h,{paragraphStyle:_={},paragraphAffectSkeDrawings:p,skeHeaders:m,skeFooters:v,drawingAnchor:F,paragraphIndex:E}=n,{spaceAbove:S=0,spaceBelow:B=0,indentFirstLine:x=0,hanging:w=0,indentStart:O=0,indentEnd:T=0}=_,{paragraphLineGapDefault:R,linePitch:k,lineSpacing:$,spacingRule:M,snapToGrid:U,gridType:I}=t4(e,n),{paddingTop:L,paddingBottom:H,contentHeight:X,lineSpacingApply:j}=gn(f,R,k,I,$,M,U),{marginTop:G,spaceBelowApply:Q}=da(j,S,B,s,l),t1=G+L+X+H;let n1=u.parent;n1||(n1=e6(a));const a1=(l==null?void 0:l.lineHeight)||0,C1=(l==null?void 0:l.top)||0,D1=a1+C1,{pageWidth:i1,headerId:o1,footerId:p1}=a,l1=(w1=(ke=m==null?void 0:m.get(o1))==null?void 0:ke.get(i1))==null?void 0:w1.skeDrawings,B1=(Ie=(Fe=v==null?void 0:v.get(p1))==null?void 0:Fe.get(i1))==null?void 0:Ie.skeDrawings;_a(D1,t1,u,(Le=F==null?void 0:F.get(E))==null?void 0:Le.top,p);const v1=ta(t1,D1,a.skeDrawings,l1,B1);if(t1+v1>n1.height&&u.lines.length>0&&a.sections.length>0){s4(u,!0),dn(r,t,e,n,s,i);return}const y1=l?l.lineIndex+1:0,{charSpace:z1,defaultTabStop:O1}=yr(e,n),oe=v2(z1,O1,I,U),{paddingLeft:ye,paddingRight:ue}=fa(x,w,O,T,oe,s),le=ea(E,_2.PARAGRAPH,{lineHeight:t1,contentHeight:X,lineTop:v1,paddingLeft:ye,paddingRight:ue,paddingTop:L,paddingBottom:H,marginTop:G,spaceBelowApply:Q},u.width,y1,s,a.skeDrawings,l1,B1);u.lines.push(le),le.parent=u,ua(E,le,D1,F),pt(r,t,e,n,s,i)}function dn(r,t,e,n,s=!1,i){const a=Xe(t);br(a)===!0?_n(r,t,e,n,s,i):Re(r,t,e,n,s,i)}function _n(r,t,e,n,s=!1,i){const a=Xe(t),{skeHeaders:o,skeFooters:u}=n;t.push($2(e,{skeHeaders:o,skeFooters:u},a==null?void 0:a.pageNumber)),dn(r,t,e,n,s,i)}function fa(r=0,t=0,e=0,n=0,s,i=!1){const a=Te(r,s),o=Te(t,s),u=Te(e,s),l=Te(n,s);let c=u;const h=l;return a>0&&i&&(c+=a),o>0&&!i&&(c+=o),{paddingLeft:c,paddingRight:h}}function da(r=0,t=0,e=0,n,s){let i=0,a=0;if(!n)return{marginTop:i,spaceBelowApply:a};if(i=Te(t,r),a=Te(e,r),s){const{spaceBelowApply:o}=s;o>i&&(i=0,s.lineHeight+=o,s.marginBottom=o)}return{marginTop:i,spaceBelowApply:a}}function gn(r,t,e,n,s,i,a){let o=t,u=t;if(n===g.GridType.DEFAULT||a===g.BooleanNumber.FALSE)return i===g.SpacingRule.AUTO?{paddingTop:o,paddingBottom:u,contentHeight:s*r,lineSpacingApply:r}:{paddingTop:o,paddingBottom:u,contentHeight:Math.max(s,r),lineSpacingApply:s};let l=0;return i===g.SpacingRule.AUTO?l=s*e:l=s,r+t*2<l&&(o=u=(l-r)/2),{paddingTop:o,paddingBottom:u,contentHeight:r,lineSpacingApply:l}}function _a(r,t,e,n,s){var u;if(!s)return;const i=(u=e.parent)==null?void 0:u.parent;if(!i)return;const a=new Map,o=ga(e);s.forEach(l=>{if(!l)return;const{initialState:c,drawingOrigin:h}=l;if(c||!h)return;const{objectTransform:f}=h,{positionH:_,positionV:p,size:m,angle:v}=f,{width:F=0,height:E=0}=m;l.aLeft=Er(_,e,i,F,o)||0,l.aTop=Sr(p,i,r,t,E,n,o)||0,l.width=F,l.height=E,l.angle=v,l.initialState=!0,a.set(l.objectId,l)}),i.skeDrawings=new Map([...i.skeDrawings,...a])}function ga(r){const t=r.parent;if(!t)return!1;const e=t==null?void 0:t.columns;if(!e)return!1;const n=e.length;for(let s=n-1;s>=0;s--){const a=e[s].lines,o=a.length;if(!(o<=0)){for(let u=o-1;u>=0;u--)if(a[u].paragraphStart)return!1}}return!0}function Dn(r){const t=r.length;let e=0;for(let n=0;n<t;n++){const s=r[n];e+=s.width}return e}function Da(r){const t=r.length;let e=Number.NEGATIVE_INFINITY,n;for(let s=0;s<t;s++){const i=r[s],{ba:a,bd:o}=i.bBox;e<a+o&&(n={boundingBoxAscent:a,boundingBoxDescent:o}),e=a+o}return n}function pa(r){const t=r.divides,e=t.length,n=[];for(let s=0;s<e;s++){const i=t[s];n.push(...i.glyphGroup)}return n}function va(r){return!r.divides[0].glyphGroup[0]}function ma(r,t,e,n,s){return[]}function ba(r,t,e){return ya(r,t,e)}function ya(r,t,e){return e===g.GlyphType.DECIMAL?pn(r,t):e===g.GlyphType.ZERO_DECIMAL?Fa(r,t):e===g.GlyphType.UPPER_ALPHA?Ca(r,t):e===g.GlyphType.ALPHA?Ea(r,t):e===g.GlyphType.UPPER_ROMAN?Sa(r,t):e===g.GlyphType.ROMAN?Ta(r,t):pn(r,t)}function pn(r,t){return(r+t).toString()}function Fa(r,t){const e=r+t;return e<10?`0${e}`:e.toString()}function Ca(r,t){return g.numberToListABC(r+t-1,!0)}function Ea(r,t){return g.numberToListABC(r+t-1,!1)}function Sa(r,t){return vn(r+t,!0)}function Ta(r,t){return vn(r+t,!1)}function vn(r,t=!1){const e={M:1e3,CM:900,D:500,CD:400,C:100,XC:90,L:50,XL:40,X:10,IX:9,V:5,IV:4,I:1};let s={m:1e3,cm:900,d:500,cd:400,c:100,xc:90,l:50,xl:40,x:10,ix:9,v:5,iv:4,i:1};t&&(s=e);let i="";for(const a in s)for(;r>=s[a];)i+=a,r-=s[a];return i}function xa(r,t,e,n){var h,f;if(!r||!t)return;const{listId:s,listType:i,nestingLevel:a=0,textStyle:o}=r,u=t[i];return!u||!u.nestingLevel?mn(s,(h=e==null?void 0:e[a])==null?void 0:h.startIndexItem):u.nestingLevel[a]?Ba(s,a,u.nestingLevel,e,o):mn(s,(f=e==null?void 0:e[a])==null?void 0:f.startIndexItem)}function mn(r,t=1){return{listId:r,symbol:"●",ts:{ff:"Arial",fs:9},startIndexItem:t,bBox:{width:8.4560546875,ba:7,bd:-1,aba:7,abd:-1,sp:-2,sbr:.5,sbo:0,spr:.5,spo:0},indentFirstLine:0,hanging:21,indentStart:0}}function Ba(r,t,e,n,s,i){var x,w;const a=e[t],{bulletAlignment:o,glyphFormat:u,textStyle:l,startNumber:c,glyphType:h,glyphSymbol:f,indentFirstLine:_,hanging:p,indentStart:m}=a,v={...s,...l},F=l2(v);let E;f?E=f:E=Oa(u,t,e,n);const S=ee.getTextSize(E,F),B=(w=(x=n==null?void 0:n[t])==null?void 0:x.startIndexItem)!=null?w:1;return{listId:r,symbol:E,ts:v,fontStyle:F,startIndexItem:B+1,bBox:S,nestingLevel:a,bulletAlign:o,bulletType:f?!1:!!h,indentFirstLine:_,hanging:p,indentStart:m}}function Oa(r,t,e,n){var o;const s=r.split("%"),a=[s[0]];for(let u=1;u<s.length;u++){const l=s[u],{level:c,suffix:h}=Aa(l);let f=((o=n==null?void 0:n[c])==null?void 0:o.startIndexItem)||1;c!==t&&(n==null?void 0:n[c])!==null&&(f-=1);const _=wa(f,e[c]);a.push(_,h)}return a.join("")}function wa(r=1,t){const{startNumber:e,glyphType:n,glyphSymbol:s}=t;return s||(n?ba(r,e,n):"●")}function Aa(r){if(r==="")return{level:0,suffix:""};const t=r.split("");let e="",n="",s=!1;const i=/[0-9]/g;return t.forEach(a=>{!s&&i.test(`${e}${a}`)?e+=a:(s=!0,n+=a)}),{level:Number.parseInt(e)-1,suffix:n}}function Ra(r,t){if(!r||!t)return;const{listId:e,nestingLevel:n}=r,s=t==null?void 0:t.get(e);let i=n;i<0&&(i=0);const a=[];for(let o=i;o>=0;o--){const u=s==null?void 0:s[o];a[o]=u||null}return a}function $a(r,t,e){if(!r||!t)return;const{listId:n,nestingLevel:s}=r,i=[...(e==null?void 0:e.get(n))||[]];i[s]=t,i.splice(s+1),e==null||e.set(n,i)}function ka(r){return{objectId:r.objectId,aLeft:0,aTop:0,width:0,height:0,angle:0,initialState:!1,drawingOrigin:r}}function bn(r){return r.pageNumber+1}function Ia(r,t,e,n,s,i){const{lists:a,drawings:o={},localeService:u}=s,{endIndex:l,startIndex:c,blocks:h=[]}=n,f=e.getParagraph(l)||{startIndex:0},{paragraphStyle:_={},bullet:p}=f,{skeHeaders:m,skeFooters:v,skeListLevel:F,drawingAnchor:E}=i,S=new Map,B={paragraphIndex:l,paragraphStyle:_,paragraphAffectSkeDrawings:S,skeHeaders:m,skeFooters:v,drawingAnchor:E},x=Ra(p,F),w=xa(p,a,x);$a(p,w,F),B.bulletSkeleton=w;const O=new Map;for(let $=0,M=h.length;$<M;$++){const U=h[$],I=e.getCustomBlock(U);if(I==null)continue;O.set(U,I);const L=I.blockId,H=o[L];H.layoutType!==g.PositionedObjectLayoutType.INLINE&&S.set(L,ka(H))}let T=[t],R=!0,k=c;for(const{text:$,glyphs:M}of r){k+=$.length;const U=()=>{M.length!==0&&(T=la(M,T,s,B,R),R=!1)};if($.endsWith(g.DataStreamTreeTokenType.CUSTOM_BLOCK)){let I=O.get(k);if(I==null&&(I=e.getCustomBlock(k)),I!=null){const L=I.blockId;o[L].layoutType===g.PositionedObjectLayoutType.INLINE&&(T=ma())}U();continue}else if($.endsWith(g.DataStreamTreeTokenType.PAGE_BREAK)){U(),T.push($2(s,i,bn(T[T.length-1]),Ne.PAGE)),S.clear();continue}else if($.endsWith(g.DataStreamTreeTokenType.COLUMN_BREAK)){U();const I=T[T.length-1],L=q2(I);L&&!L.isLast?s4(L.column,!0):T.push($2(s,i,bn(I),Ne.COLUMN));continue}U()}return T}function La(r){switch(r){case"–":case"—":return .2;case".":case",":return .8;case":":case";":return .3;case"،":case"۔":return .4;default:return 0}}function Ma(r){const{glyphGroup:t}=r;let e=0;for(const n of t){const[s,i]=n.adjustability.shrinkability;e+=s+i}return e}function Pa(r){const{glyphGroup:t}=r;let e=0;for(const n of t){const[s,i]=n.adjustability.stretchability;e+=s+i}return e}function Na(r){const t=r.glyphGroup.filter(n=>n.isJustifiable).length,e=r.glyphGroup[r.glyphGroup.length-1];return h2(e.content)?t-1:t}function Ua(r,t,e){for(const n of r.glyphGroup){const s=t<0?n.adjustability.shrinkability[0]:n.adjustability.stretchability[0],i=t<0?n.adjustability.shrinkability[1]:n.adjustability.stretchability[1],a=s*t;let o=i*t;n.isJustifiable&&(o+=e),n.width+=a+o,n.xOffset+=a}p6(r.glyphGroup)}function Ha(r,t){const{divides:e}=r;for(let n=0;n<e.length;n++){const s=e[n],{width:i}=s;let a=n4(s);if(i!==Number.POSITIVE_INFINITY){if(s.isFull){let o=i-a;if(s.glyphGroup.length>1){const f=s.glyphGroup[s.glyphGroup.length-1],_=La(f.content)*f.width;o+=_}let u=0,l=0;const c=Ma(s),h=Pa(s);if(o<0&&c>0)u=Math.max(o/c,-1),o=Math.min(o+c,0);else if(t===g.HorizontalAlign.JUSTIFIED){h>0&&(u=Math.min(o/h,1),o=Math.max(o-h,0));const f=Na(s);f>0&&o>0&&(l=o/f,o=0)}(u!==0||l!==0)&&(Ua(s,u,l),a=n4(s))}t===g.HorizontalAlign.CENTER?s.paddingLeft=(i-a)/2:t===g.HorizontalAlign.RIGHT&&(s.paddingLeft=i-a)}}}function Ga(r){for(const t of r.divides){const e=t.glyphGroup[t.glyphGroup.length-1];if(t.isFull&&c2(e.content)&&e.width-e.xOffset>e.bBox.width){const n=e.width-e.xOffset-e.bBox.width;e.width-=n,e.adjustability.shrinkability[1]=0}}}function za(r){for(const t of r.divides){const e=t.glyphGroup.length;if(e<2)continue;const n=t.glyphGroup[0],s=t.glyphGroup[e-1];if(W2(n.content)){const i=n.adjustability.shrinkability[0];T4(n,i)}if(X2(s.content)){const i=s.adjustability.shrinkability[1];S4(s,i)}p6(t.glyphGroup)}}function Xa(r,t){Fr(r,e=>{if(e.paragraphIndex!==t.startIndex)return;const{paragraphStyle:n={}}=t,{horizontalAlign:s=g.HorizontalAlign.UNSPECIFIED}=n;za(e),Ga(e),Ha(e,s)})}function Wa(r,t,e,n,s){Tr();const{endIndex:i,content:a=""}=t,o=r.getParagraph(i)||{startIndex:0},{paragraphStyle:u={}}=o,l=q5(a,r,t,n,u),c=Ia(l,e,r,t,n,s);return Xa(c,o),c}function yn(r,t,e,n,s,i){const a=[],o=new Map;for(const u of t.children){let l=[],c=e;a.length>0&&(c=a[a.length-1]),u.nodeType===g.DataStreamTreeNodeType.PARAGRAPH?l=Wa(r,u,c,n,s):(u.nodeType,g.DataStreamTreeNodeType.TABLE),l.length===0&&(l=Ar()),Ya(a,l)}return{pages:a,renderedBlockIdMap:o}}function Ya(r,t){const e=r.length-1,n=r[e],s=t[0];n===s&&t.splice(0,1),r.push(...t)}const Va={columnProperties:[],columnSeparatorType:g.ColumnSeparatorType.NONE,sectionType:g.SectionType.SECTION_TYPE_UNSPECIFIED,startIndex:0};class Je extends y.Skeleton{constructor(e,n){super(n);d(this,"_skeletonData");d(this,"_renderedBlockIdMap",new Map);d(this,"_findLiquid",new m2);this._docViewModel=e}static create(e,n){return new Je(e,n)}getViewModel(){return this._docViewModel}calculate(e){this.dirty&&(this._skeletonData=this._createSkeleton(e))}getSkeletonData(){return this._skeletonData}getActualSize(){const e=this.getSkeletonData();let n=Number.NEGATIVE_INFINITY,s=0;return e==null||e.pages.forEach(i=>{const{width:a,height:o}=i;n=Math.max(n,a),s+=o}),{actualWidth:n,actualHeight:s}}_getPageActualWidth(e){let n=Number.NEGATIVE_INFINITY;for(const s of e.sections)for(const i of s.columns)for(const a of i.lines){let o=0;for(const u of a.divides)for(const l of u.glyphGroup)o+=l.width;n=Math.max(n,o)}return n}getPageSize(){return this.getViewModel().getDataModel().documentStyle.pageSize}findPositionByGlyph(e){const n=e.parent,s=n==null?void 0:n.parent,i=s==null?void 0:s.parent,a=i==null?void 0:i.parent,o=a==null?void 0:a.parent,u=this.getSkeletonData();if(!n||!i||!a||!o||!u)return;const l=n.glyphGroup.indexOf(e),c=s.divides.indexOf(n),h=i.lines.indexOf(s),f=a.columns.indexOf(i),_=o.sections.indexOf(a),p=u.pages.indexOf(o);return{glyph:l,divide:c,line:h,column:f,section:_,page:p}}findNodePositionByCharIndex(e,n=!0){const s=this._findNodeIterator(e);if(s==null)return;const i=this.getSkeletonData();if(!i)return;const a=i.pages,{glyph:o,divide:u,line:l,column:c,section:h,page:f}=s;return{glyph:u.glyphGroup.indexOf(o),divide:l.divides.indexOf(u),line:c.lines.indexOf(l),column:h.columns.indexOf(c),section:f.sections.indexOf(h),page:a.indexOf(f),isBack:n}}findNodeByCharIndex(e){const n=this._findNodeIterator(e);return n==null?void 0:n.glyph}findGlyphByPosition(e){if(e==null)return;const n=this.getSkeletonData();if(n==null)return;const{divide:s,line:i,column:a,section:o,page:u,isBack:l}=e;let{glyph:c}=e;l===!0&&(c-=1),c=c<0?0:c;const h=n.pages[u].sections[o].columns[a].lines[i].divides[s].glyphGroup;return h[c].glyphType===A1.LIST?h[c+1]:h[c]}findNodeByCoord(e,n,s,i){const{x:a,y:o}=e;this._findLiquid.reset();const u=this.getSkeletonData();if(u==null)return;const l=u.pages;let c=[],h=[],f=Number.POSITIVE_INFINITY;for(let _=0,p=l.length;_<p;_++){const m=l[_];this._findLiquid.translatePagePadding(m);const v=m.sections;for(const F of v){const{columns:E,height:S}=F;this._findLiquid.translateSection(F);for(const B of E){const{lines:x,width:w}=B;this._findLiquid.translateColumn(B);const O=x.length;for(let T=0;T<O;T++){const R=x[T],{divides:k,type:$,lineHeight:M=0}=R;if($!==_2.BLOCK){this._findLiquid.translateSave(),this._findLiquid.translateLine(R);const{y:U}=this._findLiquid,I=U,L=U+M,H=Math.abs(o-L),X=k.length;for(let j=0;j<X;j++){const G=k[j],{glyphGroup:Q,width:t1}=G;this._findLiquid.translateSave(),this._findLiquid.translateDivide(G);const{x:n1}=this._findLiquid;for(const a1 of Q){if(!a1.content||a1.content.length===0)continue;const{width:C1,left:D1}=a1,i1=n1+D1,o1=n1+D1+C1,p1=Math.abs(a-o1);if(o>=I&&o<=L){if(a>=i1&&a<=o1)return{node:a1,ratioX:a/(i1+o1),ratioY:o/(I+L)};f!==Number.NEGATIVE_INFINITY&&(c=[],h=[]),c.push({node:a1,ratioX:a/(i1+o1),ratioY:o/(I+L)}),h.push(p1),f=Number.NEGATIVE_INFINITY;continue}H<f&&(f=H,c=[],h=[]),H===f&&(c.push({node:a1,ratioX:a/(i1+o1),ratioY:o/(I+L)}),h.push(p1))}this._findLiquid.translateRestore()}this._findLiquid.translateRestore()}}}}this._findLiquid.restorePagePadding(m),this._translatePage(m,n,s,i)}return this._getNearestNode(c,h)}_getNearestNode(e,n){const s=Math.min(...n),i=n.indexOf(s);return e[i]}_getPageBoundingBox(e,n){const{pageWidth:s,pageHeight:i}=e,{x:a,y:o}=this._findLiquid;let u=-1,l=-1;return n===V1.VERTICAL?(u=s,l=o+i):n===V1.HORIZONTAL&&(u=a+s,l=i),{startX:a,startY:o,endX:u,endY:l}}_translatePage(e,n,s,i){this._findLiquid.translatePage(e,n,s,i)}_createSkeleton(e){var p1;const n={width:Number.POSITIVE_INFINITY,height:Number.POSITIVE_INFINITY},s=this.getViewModel(),{headerTreeMap:i,footerTreeMap:a}=s,{documentStyle:o,drawings:u,lists:l={}}=s.getDataModel(),c={...g.PRESET_LIST_TYPE,...l},{pageNumberStart:h=1,pageSize:f=n,pageOrient:_=g.PageOrientType.PORTRAIT,defaultHeaderId:p,defaultFooterId:m,evenPageHeaderId:v,evenPageFooterId:F,firstPageHeaderId:E,firstPageFooterId:S,useFirstPageHeaderFooter:B,useEvenPageHeaderFooter:x,marginTop:w=0,marginBottom:O=0,marginRight:T=0,marginLeft:R=0,marginHeader:k=0,marginFooter:$=0,charSpace:M=0,linePitch:U=15.6,gridType:I=g.GridType.LINES,paragraphLineGapDefault:L=0,defaultTabStop:H=10.5,textStyle:X={},renderConfig:j={horizontalAlign:g.HorizontalAlign.LEFT,verticalAlign:g.VerticalAlign.TOP,centerAngle:0,vertexAngle:0,wrapStrategy:g.WrapStrategy.UNSPECIFIED}}=o,G={headerTreeMap:i,footerTreeMap:a,lists:c,drawings:u,charSpace:M,linePitch:U,gridType:I,localeService:this._localService,paragraphLineGapDefault:L,defaultTabStop:H,documentTextStyle:X},Q=this._getNullSke(),{skeHeaders:t1,skeFooters:n1,skeListLevel:a1,drawingAnchor:C1}=Q,D1={skeHeaders:t1,skeFooters:n1,skeListLevel:a1,drawingAnchor:C1},i1=[];Q.pages=i1;const o1=this.getViewModel();o1.resetCache();for(let l1=0,B1=o1.children.length;l1<B1;l1++){const v1=o1.children[l1],y1=o1.getSectionBreak(v1.endIndex)||Va,{pageNumberStart:z1=h,pageSize:O1=f,pageOrient:oe=_,marginTop:ye=w,marginBottom:ue=O,marginRight:le=T,marginLeft:ke=R,marginHeader:w1=k,marginFooter:Fe=$,defaultHeaderId:Ie=p,defaultFooterId:Le=m,evenPageHeaderId:T1=v,evenPageFooterId:L2=F,firstPageHeaderId:n2=E,firstPageFooterId:r2=S,useFirstPageHeaderFooter:M2=B,useEvenPageHeaderFooter:P2=x,columnProperties:ce=[],columnSeparatorType:Me=g.ColumnSeparatorType.NONE,contentDirection:N2,sectionType:Et,textDirection:l0,renderConfig:St=j}=y1,c0=o1.children[l1+1],n3=(p1=o1.getSectionBreak(c0==null?void 0:c0.endIndex))==null?void 0:p1.sectionType,nu={defaultHeaderId:Ie,evenPageHeaderId:T1,firstPageHeaderId:n2},ru={defaultFooterId:Le,evenPageFooterId:L2,firstPageFooterId:r2};O1.width===null&&(O1.width=Number.POSITIVE_INFINITY),O1.height===null&&(O1.height=Number.POSITIVE_INFINITY);const r3={pageNumberStart:z1,pageSize:O1,pageOrient:oe,marginTop:ye,marginBottom:ue,marginRight:le,marginLeft:ke,marginHeader:w1,marginFooter:Fe,headerIds:nu,footerIds:ru,useFirstPageHeaderFooter:M2,useEvenPageHeaderFooter:P2,columnProperties:ce,columnSeparatorType:Me,contentDirection:N2,sectionType:Et,sectionTypeNext:n3,textDirection:l0,renderConfig:St,...G};let s2=Xe(i1),s3=!1;Et===g.SectionType.CONTINUOUS?(t6(i1),this._addNewSectionByContinuous(s2,ce,Me),s3=!0):s2=$2(r3,D1,s2==null?void 0:s2.pageNumber);const su=yn(o1,v1,s2,r3,D1,this._renderedBlockIdMap);n3===g.SectionType.CONTINUOUS&&ce.length>0;const{pages:i3}=su;s3&&i3.splice(0,1),i1.push(...i3)}return t6(i1),this._setPageParent(i1,Q),Q}_setPageParent(e,n){for(const s of e)s.parent=n}_addNewSectionByContinuous(e,n,s){const i=e.sections,a=i[i.length-1],{pageWidth:o,pageHeight:u,marginTop:l,marginBottom:c,marginLeft:h,marginRight:f}=e,_=o-h-f,p=u-l-c,m=((a==null?void 0:a.top)||0)+((a==null?void 0:a.height)||0),v=r4(n,s,m,0,_,p-m);v.parent=e,i.push(v)}_getNullSke(){return{pages:[],left:0,top:0,st:0,skeHeaders:new Map,skeFooters:new Map,skeListLevel:new Map,drawingAnchor:new Map}}_findNodeIterator(e){const n=this.getSkeletonData();if(!n)return;const s=n.pages;for(const i of s){const{sections:a,st:o,ed:u}=i;if(!(e<o||e>u))for(const l of a){const{columns:c,st:h,ed:f}=l;if(!(e<h||e>f))for(const _ of c){const{lines:p,st:m,ed:v}=_;if(!(e<m||e>v))for(const F of p){const{divides:E,st:S,ed:B}=F,x=E.length;if(!(e<S||e>B))for(let w=0;w<x;w++){const O=E[w],{glyphGroup:T,st:R,ed:k}=O;if(e<R||e>k)continue;let $=e-R;for(const M of T)if($-=M.count,$<0)return{page:i,section:l,column:_,line:F,divide:O,glyph:M}}}}}}}}class ae{constructor(t,e){d(this,"children",[]);d(this,"parent");d(this,"startIndex",-1);d(this,"endIndex",-1);d(this,"blocks",[]);this.nodeType=t,this.content=e}static create(t,e){return new ae(t,e)}dispose(){this.children.forEach(t=>{t.dispose()}),this.parent=null,this.blocks=[]}getProps(){const{children:t,parent:e,startIndex:n,endIndex:s,nodeType:i,content:a}=this;return{children:t,parent:e,startIndex:n,endIndex:s,nodeType:i,content:a}}addBlocks(t){this.blocks=this.blocks.concat(t)}setIndexRange(t,e){this.startIndex=t,this.endIndex=e}insertText(t,e){this.content=g.insertTextToContent(this.content||"",e-this.startIndex,t)}exclude(t){const{startIndex:e,endIndex:n}=this;return t<e||t>n}plus(t){this.startIndex+=t,this.endIndex+=t,this._addIndexForBlock(t)}selfPlus(t,e){this.endIndex+=t,e==null&&(e=this.startIndex),this._addIndexForBlock(t,e)}split(t){const{children:e,parent:n,startIndex:s,nodeType:i,content:a=""}=this.getProps();if(this.exclude(t))return;const o=0,u=t-s,l=u,c=a.slice(o,u),h=ae.create(i,c);h.parent=n,h.setIndexRange(o,u-1);const f=a.slice(l),_=ae.create(i,f);_.parent=n,_.setIndexRange(l,l+f.length-1);const p=[],m=[];for(const v of e){const{startIndex:F}=v;if(v.exclude(t))t<F?p.push(v):m.push(v);else{const E=v.split(t);if(E==null){p.push(v);continue}const{firstNode:S,lastNode:B}=E;p.push(S),p.push(B)}}return h.children=p,_.children=m,h._resetBlocks(),_._resetBlocks(),{firstNode:h,lastNode:_}}getPositionInParent(){var e;const t=(e=this.parent)==null?void 0:e.children.indexOf(this);return t==null?-1:t}remove(){this.children=[],this.parent!=null&&(this.parent.children.splice(this.getPositionInParent(),1),this.parent=null)}minus(t,e){const n=g.horizontalLineSegmentsSubtraction(this.startIndex,this.endIndex,t,e);if(n.length===0)return;const s=this.startIndex;this.startIndex=n[0],this.endIndex=n[1],this.content!=null&&(this.content=g.deleteContent(this.content||"",t-s,e-s+1))}merge(t){const{startIndex:e,endIndex:n,children:s}=t;this.endIndex+=n-e+1,this.children.push(...s),this.content+=t.content||"",t.remove()}_addIndexForBlock(t,e=Number.NEGATIVE_INFINITY){for(let n=0,s=this.blocks.length;n<s;n++){const i=this.blocks[n];i>=e&&(this.blocks[n]=i+t)}}_resetBlocks(){if(this.nodeType===g.DataStreamTreeNodeType.PARAGRAPH&&this.content!=null&&this.content.length!==0){this.blocks=[];for(let t=0,e=this.content.length;t<e;t++)this.content[t]===g.DataStreamTreeTokenType.CUSTOM_BLOCK&&this.blocks.push(this.startIndex+t)}}}class be{constructor(t){d(this,"children",[]);d(this,"_sectionBreakCurrentIndex",0);d(this,"_paragraphCurrentIndex",0);d(this,"_textRunCurrentIndex",0);d(this,"_customBlockCurrentIndex",0);d(this,"_tableBlockCurrentIndex",0);d(this,"_customRangeCurrentIndex",0);d(this,"headerTreeMap",new Map);d(this,"footerTreeMap",new Map);this._documentDataModel=t,t.getBody()!=null&&(this.children=this._transformToTree(t.getBody().dataStream),this._buildHeaderFooterViewModel())}dispose(){this.children.forEach(t=>{t.dispose()})}selfPlus(t,e){}getPositionInParent(){return 0}getLastIndex(){return this.children[this.children.length-1].endIndex}getBody(){return this._documentDataModel.getBody()}getDataModel(){return this._documentDataModel}getSelfOrHeaderFooterViewModel(t){return t==null?this:this.headerTreeMap.has(t)?this.headerTreeMap.get(t):this.footerTreeMap.has(t)?this.footerTreeMap.get(t):this}reset(t){this._documentDataModel=t,this.children=this._transformToTree(t.getBody().dataStream),this._buildHeaderFooterViewModel()}insert(t,e=0){var a;const n=t.dataStream;let s=n.length;const i=this._getParagraphByIndex(this.children,e);if(i!=null)if(n[s-1]===g.DataStreamTreeTokenType.SECTION_BREAK){const o=new g.DocumentDataModel({body:t}),u=new be(o);s-=1;const l=u.children;for(const _ of l)this._forEachDown(_,p=>{p.plus(e)});const c=i.split(e);if(c==null)return;const{firstNode:h,lastNode:f}=c;(a=i.parent)==null||a.children.splice(i.getPositionInParent(),1,h,...l,f),this._forEachTop(i.parent,_=>{_.selfPlus(s,_.getPositionInParent());const p=_.children;let m=!1;for(const v of p)v===f&&(m=!0),m&&this._forEachDown(v,F=>{F.plus(s)})})}else s===1&&n[s-1]===g.DataStreamTreeTokenType.PARAGRAPH?this._insertParagraph(i,e):(i.insertText(n,e),i.selfPlus(s,e),this._forEachTop(i.parent,o=>{o.selfPlus(s,o.getPositionInParent());const u=o.children;let l=!1;for(const c of u)c.startIndex>e&&(l=!0),l&&this._forEachDown(c,h=>{h.plus(s)})}))}delete(t,e){const n=this.children;this._deleteTree(n,t,e)}getText(){const t=[];function e(n){n.content&&t.push(n.content),n.children.forEach(e)}return this.children.forEach(n=>e(n)),t.join("")}resetCache(){this._sectionBreakCurrentIndex=0,this._paragraphCurrentIndex=0,this._textRunCurrentIndex=0,this._customBlockCurrentIndex=0,this._tableBlockCurrentIndex=0,this._customRangeCurrentIndex=0}getSectionBreak(t){if(t==null)return;const e=this.getBody().sectionBreaks;if(e!=null)for(let n=this._sectionBreakCurrentIndex;n<e.length;n++){const s=e[n];if(s.startIndex===t)return this._sectionBreakCurrentIndex=n,s}}getParagraph(t){const e=this.getBody().paragraphs;if(e!=null)for(let n=this._paragraphCurrentIndex;n<e.length;n++){const s=e[n];if(s.startIndex===t)return this._paragraphCurrentIndex=n,s}}getTextRunRange(t=0,e){const n=this.getBody().textRuns;if(n==null)return[{st:t,ed:e}];const s=[];for(let o=this._textRunCurrentIndex,u=n.length;o<u;o++){const l=n[o];if(l.st>e){this._textRunCurrentIndex=o;break}else if(l.ed<t){this._textRunCurrentIndex=o;continue}else s.push({st:l.st<t?t:l.st,ed:l.ed>e?e:l.ed,sId:l.sId,ts:l.ts}),this._textRunCurrentIndex=o}const i=s[0]||{st:e+1};i.st>t&&s.push({st:t,ed:i.st-1});const a=s[s.length-1]||{ed:t-1};return a.ed<e&&s.push({st:a.ed+1,ed:e}),s}getTextRun(t){const e=this.getBody().textRuns;if(e==null)return;const n=e[this._textRunCurrentIndex];if(n!=null){if(t>=n.st&&t<n.ed)return n;if(t<n.st)return}for(let s=this._textRunCurrentIndex,i=e.length;s<i;s++){const a=e[s];if(t>=a.st&&t<a.ed)return this._textRunCurrentIndex=s,a}}getCustomBlock(t){const e=this.getBody().customBlocks;if(e!=null)for(let n=this._customBlockCurrentIndex;n<e.length;n++){const s=e[n];if(s.startIndex===t)return this._customBlockCurrentIndex=n,s}}getTable(t){const e=this.getBody().tables;if(e!=null)for(let n=this._tableBlockCurrentIndex;n<e.length;n++){const s=e[n];if(s.startIndex===t)return this._tableBlockCurrentIndex=n,s}}getCustomRange(t){const e=this.getBody().customRanges;if(e!=null)for(let n=0,s=e.length;n<s;n++){const i=e[n];if(t>=i.startIndex&&t<=i.endIndex)return i}}_transformToTree(t){const e=t.length;let n="";const s=[];let i=[],a=[];for(let o=0;o<e;o++){const u=t[o];if(u===g.DataStreamTreeTokenType.PARAGRAPH){n+=g.DataStreamTreeTokenType.PARAGRAPH;const l=ae.create(g.DataStreamTreeNodeType.PARAGRAPH,n);l.setIndexRange(o-n.length+1,o),l.addBlocks(a),i.push(l),n="",a=[]}else if(u===g.DataStreamTreeTokenType.SECTION_BREAK){const l=ae.create(g.DataStreamTreeNodeType.SECTION_BREAK);this._batchParent(l,i);const c=i[i.length-1];c&&c.content&&(c.content+=g.DataStreamTreeTokenType.SECTION_BREAK),s.push(l),i=[]}else u===g.DataStreamTreeTokenType.TABLE_START?i.push(ae.create(g.DataStreamTreeNodeType.TABLE)):u===g.DataStreamTreeTokenType.TABLE_ROW_START?i.push(ae.create(g.DataStreamTreeNodeType.TABLE_ROW)):u===g.DataStreamTreeTokenType.TABLE_CELL_START?i.push(ae.create(g.DataStreamTreeNodeType.TABLE_CELL)):u===g.DataStreamTreeTokenType.TABLE_END?this._processPreviousNodesUntil(i,g.DataStreamTreeNodeType.TABLE):u===g.DataStreamTreeTokenType.TABLE_ROW_END?this._processPreviousNodesUntil(i,g.DataStreamTreeNodeType.TABLE_ROW):u===g.DataStreamTreeTokenType.TABLE_CELL_END?this._processPreviousNodesUntil(i,g.DataStreamTreeNodeType.TABLE_CELL):(u===g.DataStreamTreeTokenType.CUSTOM_BLOCK&&a.push(o),n+=u)}return s}_processPreviousNodesUntil(t,e){const n=[];let s=t.pop();for(;s&&s.nodeType!==e;)n.push(s),s=t.pop();const i=t[t.length-1];if(this._batchParent(i,n,g.DataStreamTreeNodeType.TABLE),e===g.DataStreamTreeNodeType.TABLE_CELL){const a=n[0],o=n[n.length];a.content=g.DataStreamTreeTokenType.TABLE_CELL_START+a.content||"",a.startIndex-=1,o.content+=g.DataStreamTreeTokenType.TABLE_CELL_END,o.endIndex+=1}else if(e===g.DataStreamTreeNodeType.TABLE_ROW){const a=n[0].children[0];let o=n[n.length];o=o.children[o.children.length-1],a.content=g.DataStreamTreeTokenType.TABLE_ROW_START+a.content||"",a.startIndex-=1,o.content+=g.DataStreamTreeTokenType.TABLE_ROW_END,o.endIndex+=1}else if(e===g.DataStreamTreeNodeType.TABLE){const a=n[0].children[0].children[0];let o=n[n.length];o=o.children[o.children.length-1],o=o.children[o.children.length-1],a.content=g.DataStreamTreeTokenType.TABLE_START+a.content||"",a.startIndex-=1,o.content+=g.DataStreamTreeTokenType.TABLE_END,o.endIndex+=1}}_batchParent(t,e,n=g.DataStreamTreeNodeType.SECTION_BREAK){for(const i of e)i.parent=t,t.children.push(i);const s=n===g.DataStreamTreeNodeType.SECTION_BREAK?0:1;t.setIndexRange(e[0].startIndex-s,e[e.length-1].endIndex+1)}_buildHeaderFooterViewModel(){const{headerModelMap:t,footerModelMap:e}=this._documentDataModel;for(const[n,s]of t)this.headerTreeMap.set(n,new be(s));for(const[n,s]of e)this.footerTreeMap.set(n,new be(s))}_getParagraphByIndex(t,e){for(const n of t){const{children:s}=n;if(!n.exclude(e))return n.nodeType===g.DataStreamTreeNodeType.PARAGRAPH?n:this._getParagraphByIndex(s,e)}return null}_forEachTop(t,e){let n=t;for(;n;)e(n),n=n.parent;e(this)}_forEachDown(t,e){e(t);const n=t.children;for(t of n)this._forEachDown(t,e)}_deleteTree(t,e,n){const s=e,i=e+n-1;let a=null,o=t.length,u=0;for(;u<o;){const l=t[u],{startIndex:c,endIndex:h,children:f}=l;if(this._deleteTree(f,e,n),s===i&&i===h){if(l.nodeType===g.DataStreamTreeNodeType.PARAGRAPH){const _=this._getNextNode(l);if(_==null){u++;continue}l.minus(s,i),l.merge(_),o--}}else if(s<=c&&i>=h){l.remove(),o--;continue}else if(c<=s&&h>=i)l.minus(s,i);else if(i>c&&i<h){if(l.minus(c,i),a!=null){a.merge(l),a=null,o--;continue}}else s>c&&s<h?(l.minus(s,h),a=l):c>i&&l.plus(-n);u++}}_getNextNode(t){var s;const e=t.getPositionInParent(),n=(s=t.parent)==null?void 0:s.children;return n==null?void 0:n[e+1]}_insertParagraph(t,e=0){var u;const n=t.startIndex,s=t.endIndex,i=t.split(e);if(i==null)return;const{firstNode:a,lastNode:o}=i;a.content+=g.DataStreamTreeTokenType.PARAGRAPH,a.selfPlus(1),a.plus(n),this._forEachDown(o,l=>{l.plus(n+1)}),(u=t.parent)==null||u.children.splice(t.getPositionInParent(),1,a,o),this._forEachTop(t.parent,l=>{l.selfPlus(1,l.getPositionInParent());const c=l.children;let h=!1;for(const f of c)f!==o&&(f.startIndex>=s+1&&(h=!0),h&&this._forEachDown(f,_=>{_.plus(1)}))})}}var ja=Object.defineProperty,Ka=Object.getOwnPropertyDescriptor,qa=(r,t,e,n)=>{for(var s=n>1?void 0:n?Ka(t,e):t,i=r.length-1,a;i>=0;i--)(a=r[i])&&(s=(n?a(t,e,s):a(s))||s);return n&&s&&ja(t,e,s),s},Fn=(r,t)=>(e,n)=>t(e,n,r);function k2(r,t=0){const e=r==null?void 0:r.getSkeletonData(),n=Y1(t);if(!e)return;const{pages:s}=e,i=s[s.length-1],{width:a,height:o}=i;if(n===0)return{width:a,height:o};if(Math.abs(n)===Math.PI/2)return{width:o,height:a};let u=0,l=0;const c=[];Cr([i],f=>{const{lines:_,width:p,spaceWidth:m}=f,{rotatedHeight:v,rotatedWidth:F}=Wt(_,p,n);l+=v,c.push({rotatedWidth:F,spaceWidth:m})});const h=c.length;for(let f=0;f<h;f++){const{rotatedWidth:_}=c[f];f===0&&(u+=_)}return{width:u,height:l}}const Cn={isDeepClone:!1,displayRawFormula:!1,ignoreTextRotation:!1},En={t:0,b:1,l:2,r:2},Sn="RENDER_RAW_FORMULA";y.SpreadsheetSkeleton=class extends y.Skeleton{constructor(e,n,s,i,a,o){super(a);d(this,"_rowHeightAccumulation",[]);d(this,"_columnWidthAccumulation",[]);d(this,"_rowTotalHeight",0);d(this,"_columnTotalWidth",0);d(this,"_rowHeaderWidth",0);d(this,"_columnHeaderHeight",0);d(this,"_rowColumnSegment",{startRow:-1,endRow:-1,startColumn:-1,endColumn:-1});d(this,"_dataMergeCache",[]);d(this,"_overflowCache",new g.ObjectMatrix);d(this,"_stylesCache",{background:{},backgroundPositions:new g.ObjectMatrix,font:{},border:new g.ObjectMatrix});d(this,"_renderedCellCache",new g.ObjectMatrix);d(this,"_showGridlines",g.BooleanNumber.TRUE);d(this,"_marginTop",0);d(this,"_marginLeft",0);d(this,"_renderRawFormula",!1);this._worksheet=e,this._worksheetData=n,this._cellData=s,this._styles=i,this._contextService=o,this._updateLayout(),this._initContextListener()}get rowHeightAccumulation(){return this._rowHeightAccumulation}get rowTotalHeight(){return this._rowTotalHeight}get columnWidthAccumulation(){return this._columnWidthAccumulation}get columnTotalWidth(){return this._columnTotalWidth}get rowHeaderWidth(){return this._rowHeaderWidth}get columnHeaderHeight(){return this._columnHeaderHeight}get rowColumnSegment(){return this._rowColumnSegment}get dataMergeCache(){return this._dataMergeCache}get stylesCache(){return this._stylesCache}get overflowCache(){return this._overflowCache}get showGridlines(){return this._showGridlines}get mergeData(){return this._worksheetData.mergeData}get rowHeaderWidthAndMarginLeft(){return this.rowHeaderWidth+this._marginLeft}get columnHeaderHeightAndMarginTop(){return this.columnHeaderHeight+this._marginTop}get worksheet(){return this._worksheet}static create(e,n,s,i,a,o){return new y.SpreadsheetSkeleton(e,n,s,i,a,o)}getCellData(){return this._cellData}getsStyles(){return this._styles}_initContextListener(){this.disposeWithMe(this._contextService.subscribeContextValue$(Sn).pipe(u1.startWith(!1),u1.distinctUntilChanged()).subscribe(e=>{this._renderRawFormula=e,this._resetCache(),this.makeDirty(!0)}))}setOverflowCache(e){this._overflowCache=e}setMarginLeft(e){this._marginLeft=e}setMarginTop(e){this._marginTop=e}calculateSegment(e){if(this._worksheetData&&(this._updateLayout(),!(!this._rowHeightAccumulation||!this._columnWidthAccumulation)))return e!=null&&(this._rowColumnSegment=this.getRowColumnSegment(e)),!0}calculateWithoutClearingCache(e){if(!this.calculateSegment(e))return;const{mergeData:n}=this._worksheetData;return this._dataMergeCache=n&&this._getMergeCells(n,this._rowColumnSegment),this._calculateStylesCache(),this}calculate(e){return this._resetCache(),this.calculateWithoutClearingCache(e),this}calculateAutoHeightInRange(e){var o;if(!g.Tools.isArray(e))return[];const n=[],{mergeData:s,rowData:i}=this._worksheetData,a=i;for(const u of e){const{startRow:l,endRow:c,startColumn:h,endColumn:f}=u;for(let _=l;_<=c;_++){if(n.some(({row:m})=>m===_)||((o=a[_])==null?void 0:o.ia)===g.BooleanNumber.FALSE)continue;if($0(_,h,f,s)){const m=this._calculateRowAutoHeight(_);n.push({row:_,autoHeight:m})}}}return n}_calculateRowAutoHeight(e){var c,h,f;const{columnCount:n,columnData:s,mergeData:i,defaultRowHeight:a,defaultColumnWidth:o}=this._worksheetData;let u=a;const l=this._worksheet;if(!l)return u;for(let _=0;_<n;_++){const{isMerged:p,isMergedMainCell:m}=d2(e,_,i);if(p||m)continue;const v=l.getCell(e,_);if(v!=null&&v.interceptorAutoHeight){u=Math.max(u,v.interceptorAutoHeight);continue}const F=v&&this._getCellDocumentModel(v);if(F==null)continue;const{documentModel:E,textRotation:S,wrapStrategy:B}=F;if(E==null)continue;const x=new be(E),{vertexAngle:w}=p2(S),O=(h=(c=s[_])==null?void 0:c.w)!=null?h:o;typeof O=="number"&&B===g.WrapStrategy.WRAP&&E.updateDocumentDataPageSize(O);const T=Je.create(x,this._localService);T.calculate();let{height:R=0}=(f=k2(T,w))!=null?f:{};if(T){const k=T.getSkeletonData(),{marginTop:$,marginBottom:M,marginLeft:U,marginRight:I}=k.pages[k.pages.length-1],L=Math.abs(Y1(w));R+=$*Math.cos(L)+I*Math.sin(L)+M*Math.cos(L)+U*Math.sin(L)}u=Math.max(u,R)}return Math.min(u,g0)}_updateLayout(){if(!this.dirty)return;const{rowData:e,columnData:n,defaultRowHeight:s,defaultColumnWidth:i,rowCount:a,columnCount:o,rowHeader:u,columnHeader:l,showGridlines:c}=this._worksheetData,{rowTotalHeight:h,rowHeightAccumulation:f}=this._generateRowMatrixCache(a,e,s),{columnTotalWidth:_,columnWidthAccumulation:p}=this._generateColumnMatrixCache(o,n,i);return this._rowHeaderWidth=u.hidden!==g.BooleanNumber.TRUE?this._dynamicallyUpdateRowHeaderWidth(u):0,this._columnHeaderHeight=l.hidden!==g.BooleanNumber.TRUE?l.height:0,this._rowTotalHeight=h,this._rowHeightAccumulation=f,this._columnTotalWidth=_,this._columnWidthAccumulation=p,this._showGridlines=c,this.makeDirty(!1),this}_dynamicallyUpdateRowHeaderWidth(e){var i;const s=`${(i=this._worksheet)==null?void 0:i.getRowCount()}`.length*8;return Math.max(e.width,s)}getRowColumnSegment(e){return this._getBounding(this._rowHeightAccumulation,this._columnWidthAccumulation,e==null?void 0:e.viewBound)}getWorksheetConfig(){return this._worksheetData}getRowColumnSegmentByViewBound(e){return this._getBounding(this._rowHeightAccumulation,this._columnWidthAccumulation,e)}getMergeBounding(e,n,s,i){const a=this._worksheetData.mergeData;if(!a)return{startRow:e,startColumn:n,endRow:s,endColumn:i};let o=!0;const u=new g.ObjectMatrix;for(;o;){o=!1;for(let l=0;l<a.length;l++){const{startRow:c,startColumn:h,endRow:f,endColumn:_}=a[l];if(u.getValue(c,h))continue;k0({left:n,top:e,right:i,bottom:s},{left:h,top:c,right:_,bottom:f})&&(e=Math.min(e,c),n=Math.min(n,h),s=Math.max(s,f),i=Math.max(i,_),u.setValue(c,h,!0),o=!0)}}return{startRow:e,startColumn:n,endRow:s,endColumn:i}}appendToOverflowCache(e,n,s,i){this._overflowCache.setValue(e,n,{startRow:e,endRow:e,startColumn:s,endColumn:i})}getColumnCount(){return this._columnWidthAccumulation.length}getRowCount(){return this._rowHeightAccumulation.length}getOverflowPosition(e,n,s,i,a){const{width:o}=e;let u=i,l=i;return n===g.HorizontalAlign.CENTER?(u=this._getOverflowBound(s,i,0,o/2,n),l=this._getOverflowBound(s,i,a-1,o/2,n)):n===g.HorizontalAlign.RIGHT?u=this._getOverflowBound(s,i,0,o):l=this._getOverflowBound(s,i,a-1,o),{startColumn:u,endColumn:l}}getNoMergeCellPositionByIndex(e,n){const{rowHeightAccumulation:s,columnWidthAccumulation:i,rowHeaderWidthAndMarginLeft:a,columnHeaderHeightAndMarginTop:o}=this;let{startY:u,endY:l,startX:c,endX:h}=Ce(e,n,s,i);return u+=o,l+=o,c+=a,h+=a,{startY:u,endY:l,startX:c,endX:h}}getNoMergeCellPositionByIndexWithNoHeader(e,n){const{rowHeightAccumulation:s,columnWidthAccumulation:i}=this,{startY:a,endY:o,startX:u,endX:l}=Ce(e,n,s,i);return{startY:a,endY:o,startX:u,endX:l}}calculateCellIndexByPosition(e,n,s,i,a){const{row:o,column:u}=this.getCellPositionByOffset(e,n,s,i,a);return this.getCellByIndex(o,u)}getCellPositionByOffset(e,n,s,i,a){const o=this.getRowPositionByOffsetY(n,i,a),u=this.getColumnPositionByOffsetX(e,s,a);return{row:o,column:u}}getColumnPositionByOffsetX(e,n,s){e=this.getTransformOffsetX(e,n,s);const{columnWidthAccumulation:i}=this;let a=g.searchArray(i,e);return a===Number.POSITIVE_INFINITY?a=i.length-1:a===-1&&(a=0),a}getRowPositionByOffsetY(e,n,s){const{rowHeightAccumulation:i}=this;e=this.getTransformOffsetY(e,n,s);let a=g.searchArray(i,e);return a===Number.POSITIVE_INFINITY?a=i.length-1:a===-1&&(a=0),a}getTransformOffsetX(e,n,s){const{x:i}=s;return e=e/n+i-this.rowHeaderWidthAndMarginLeft,e}getTransformOffsetY(e,n,s){const{y:i}=s;return e=e/n+i-this.columnHeaderHeightAndMarginTop,e}getOffsetByPositionX(e){const{columnWidthAccumulation:n,rowHeaderWidthAndMarginLeft:s}=this,i=n.length-1,a=n[e];return a!=null?a+s:e<0?s:n[i]+s}getOffsetByPositionY(e){const{rowHeightAccumulation:n,columnHeaderHeightAndMarginTop:s}=this,i=n.length-1,a=n[e];return a!=null?a+s:e<0?s:n[i]+s}getCellByIndex(e,n){const{rowHeightAccumulation:s,columnWidthAccumulation:i,rowHeaderWidthAndMarginLeft:a,columnHeaderHeightAndMarginTop:o}=this,u=Pe(e,n,s,i,this._worksheetData.mergeData),{isMerged:l,isMergedMainCell:c}=u;let{startY:h,endY:f,startX:_,endX:p,mergeInfo:m}=u;return h+=o,f+=o,_+=a,p+=a,m=Nt(m,a,o),{actualRow:e,actualColumn:n,startY:h,endY:f,startX:_,endX:p,isMerged:l,isMergedMainCell:c,mergeInfo:m}}getCellByIndexWithNoHeader(e,n){const{rowHeightAccumulation:s,columnWidthAccumulation:i}=this,a=Pe(e,n,s,i,this._worksheetData.mergeData),{isMerged:o,isMergedMainCell:u}=a,{startY:l,endY:c,startX:h,endX:f,mergeInfo:_}=a,p=Nt(_,0,0);return{actualRow:e,actualColumn:n,startY:l,endY:c,startX:h,endX:f,isMerged:o,isMergedMainCell:u,mergeInfo:p}}convertTransformToOffsetX(e,n,s){const{x:i}=s;return e=(e-i)*n,e}convertTransformToOffsetY(e,n,s){const{y:i}=s;return e=(e-i)*n,e}getSelectionBounding(e,n,s,i){return this.getMergeBounding(e,n,s,i)}getBlankCellDocumentModel(e){const n=this._getCellDocumentModel(e,{ignoreTextRotation:!0});if(n!=null)return n.documentModel==null&&(n.documentModel=this._getDocumentDataByStyle("",{},{})),n;const s="";let i="document";const a={a:0,v:g.BooleanNumber.FALSE},o=g.HorizontalAlign.UNSPECIFIED,u=g.VerticalAlign.UNSPECIFIED,l=g.WrapStrategy.UNSPECIFIED,c=En;return i=l2({},this._localService).fontCache,{documentModel:this._getDocumentDataByStyle(s,{},{}),fontString:i,textRotation:a,wrapStrategy:l,verticalAlign:u,horizontalAlign:o,paddingData:c}}getCellDocumentModelWithFormula(e){return this._getCellDocumentModel(e,{isDeepClone:!0,displayRawFormula:!0,ignoreTextRotation:!0})}_getCellDocumentModel(e,n=Cn){var v;const{isDeepClone:s,displayRawFormula:i,ignoreTextRotation:a}={...Cn,...n},o=this._styles.getStyleByCell(e);if(!e)return;let u,l="document";const c=this._getOtherStyle(o),h=a?{a:0,v:g.BooleanNumber.FALSE}:c.textRotation||{a:0,v:g.BooleanNumber.FALSE};let f=c.horizontalAlign||g.HorizontalAlign.UNSPECIFIED;const _=c.verticalAlign||g.VerticalAlign.UNSPECIFIED,p=c.wrapStrategy||g.WrapStrategy.UNSPECIFIED,m=c.paddingData||En;if(e.f&&i)u=this._getDocumentDataByStyle(e.f.toString(),{},{verticalAlign:_}),f=g.HorizontalAlign.UNSPECIFIED;else if(e.p){const{centerAngle:F,vertexAngle:E}=p2(h);u=this._updateConfigAndGetDocumentModel(s?g.Tools.deepClone(e.p):e.p,f,{horizontalAlign:f,verticalAlign:_,centerAngle:F,vertexAngle:E,wrapStrategy:p})}else if(e.v!=null){const F=this._getFontFormat(o);l=l2(F,this._localService).fontCache;let E=g.extractPureTextFromCell(e);e.t===g.CellValueType.FORCE_STRING&&i&&(E=`'${E}`),u=this._getDocumentDataByStyle(E,F,{...c,textRotation:h,cellValueType:e.t})}return{documentModel:u,fontString:l,textRotation:h,wrapStrategy:p,verticalAlign:_,horizontalAlign:f,paddingData:m,fill:(v=o==null?void 0:o.bg)==null?void 0:v.rgb}}getDecomposedOffset(e,n){let s=g.searchArray(this._columnWidthAccumulation,e),i=0;s===-1||s===0?(s=0,i=e):i=e-this._columnWidthAccumulation[s-1];let a=g.searchArray(this._rowHeightAccumulation,n),o=0;return a===-1||a===0?(a=0,o=n):o=n-this._rowHeightAccumulation[a-1],{row:a,column:s,columnOffset:i,rowOffset:o}}_calculateOverflowCell(e,n,s){const{documentSkeleton:i,vertexAngle:a=0,centerAngle:o=0,horizontalAlign:u,wrapStrategy:l}=s,c=this._cellData.getValue(e,n),{t:h=g.CellValueType.STRING}=c||{};let f=u;if(u===g.HorizontalAlign.UNSPECIFIED&&(o===S1&&a===S1?f=g.HorizontalAlign.CENTER:(a>0&&a!==S1||a===-S1)&&(f=g.HorizontalAlign.RIGHT)),(l===g.WrapStrategy.OVERFLOW||l===g.WrapStrategy.UNSPECIFIED)&&h!==g.CellValueType.NUMBER&&h!==g.CellValueType.BOOLEAN&&u!==g.HorizontalAlign.JUSTIFIED){if(this.intersectMergeRange(e,n))return!0;let _=k2(i,a);if(!_)return!0;if(a!==0){const{startY:F,endY:E,startX:S,endX:B}=Pe(e,n,this.rowHeightAccumulation,this.columnWidthAccumulation,this.mergeData),x=B-S,w=E-F;_.height>w&&(_={width:w/Math.tan(Math.abs(a))+x,height:w})}const p=this.getOverflowPosition(_,f,e,n,this.getColumnCount()),{startColumn:m,endColumn:v}=p;if(m===v)return!0;this.appendToOverflowCache(e,n,m,v)}else if(l===g.WrapStrategy.WRAP&&a!==0){if(this.intersectMergeRange(e,n))return!0;const{startY:_,endY:p}=Pe(e,n,this.rowHeightAccumulation,this.columnWidthAccumulation,this.mergeData),m=p-_;i.getViewModel().getDataModel().updateDocumentDataPageSize(m),i.calculate();const v=k2(i,a);if(!v)return!0;const{startColumn:F,endColumn:E}=this.getOverflowPosition(v,f,e,n,this.getColumnCount());if(F===E)return!0;this.appendToOverflowCache(e,n,F,E)}}_getBounding(e,n,s){const i=e.length,a=n.length;if(!s)return{startRow:0,endRow:i-1,startColumn:0,endColumn:a-1};let o=-1,u=-1,l=-1,c=-1;const h=g.searchArray(e,Math.round(s.top)-this.columnHeaderHeightAndMarginTop),f=g.searchArray(e,Math.round(s.bottom)-this.columnHeaderHeightAndMarginTop);h===-1&&f===0?(o=-1,u=-1):(h===-1?o=0:o=h,f===Number.POSITIVE_INFINITY||f>=i?u=i-1:u=f);const _=g.searchArray(n,Math.round(s.left)-this.rowHeaderWidthAndMarginLeft),p=g.searchArray(n,Math.round(s.right)-this.rowHeaderWidthAndMarginLeft);return _===-1&&p===0?(l=-1,c=-1):(_===-1?l=0:l=_,p===Number.POSITIVE_INFINITY||p>=a?c=a-1:c=p),{startRow:o,endRow:u,startColumn:l,endColumn:c}}_generateRowMatrixCache(e,n,s){var u;let i=0;const a=[],o=n;for(let l=0;l<e;l++){let c=s;if((u=this._worksheet)!=null&&u.getRowFiltered(l))c=0;else if(o[l]!=null){const h=o[l];if(!h)continue;const{h:f=s,ah:_,ia:p}=h;(p==null||p===g.BooleanNumber.TRUE)&&typeof _=="number"?c=_:c=f,h.hd===g.BooleanNumber.TRUE&&(c=0)}i+=c,a.push(i)}return{rowTotalHeight:i,rowHeightAccumulation:a}}_generateColumnMatrixCache(e,n,s){let i=0;const a=[],o=n;for(let u=0;u<e;u++){let l=s;if(o[u]!=null){const c=o[u];if(!c)continue;c.w!=null&&(l=c.w),c.hd===g.BooleanNumber.TRUE&&(l=0)}i+=l,a.push(i)}return{columnTotalWidth:i,columnWidthAccumulation:a}}_getOverflowBound(e,n,s,i,a=g.HorizontalAlign.LEFT){var u,l;let o=0;if(n>s){const c=this._columnWidthAccumulation.length-1;for(let h=n;h>=s;h--){const f=h,_=(u=this._worksheet)==null?void 0:u.getCell(e,f);if(!g.isEmptyCell(_)&&f!==n||this.intersectMergeRange(e,f))return f===n?f:f+1>c?c:f+1;const{startX:p,endX:m}=Ce(e,f,this.rowHeightAccumulation,this.columnWidthAccumulation);if(a===g.HorizontalAlign.CENTER&&f===n?o+=(m-p)/2:o+=m-p,i<o)return f}return n}for(let c=n;c<=s;c++){const h=c,f=(l=this._worksheet)==null?void 0:l.getCell(e,h);if(!g.isEmptyCell(f)&&h!==n||this.intersectMergeRange(e,h))return h===n?h:h-1<0?0:h-1;const{startX:_,endX:p}=Ce(e,h,this.rowHeightAccumulation,this.columnWidthAccumulation);if(a===g.HorizontalAlign.CENTER&&h===n?o+=(p-_)/2:o+=p-_,i<o)return h}return s}intersectMergeRange(e,n){const s=this.dataMergeCache;for(const i of s){const{startRow:a,endRow:o,startColumn:u,endColumn:l}=i;if(e>=a&&e<=o&&n>=u&&n<=l)return!0}return!1}_calculateStylesCache(){const e=this._dataMergeCache,n=this._rowColumnSegment,s=this.columnWidthAccumulation,{startRow:i,endRow:a,startColumn:o,endColumn:u}=n;if(!(u===-1||a===-1)){for(const l of e)this._setCellCache(l.startRow,l.startColumn,!1,l);for(let l=i;l<=a;l++){for(let c=o;c<=u;c++)this._setCellCache(l,c,!1);for(let c=0;c<o;c++)this._setCellCache(l,c,!0);if(u!==0)for(let c=u+1;c<s.length;c++)this._setCellCache(l,c,!0)}}}_resetCache(){this._stylesCache={background:{},backgroundPositions:new g.ObjectMatrix,font:{},border:new g.ObjectMatrix},this._renderedCellCache=new g.ObjectMatrix,this._overflowCache.reset()}_makeDocumentSkeletonDirty(e,n){if(this._stylesCache.font==null)return;const s=Object.keys(this._stylesCache.font);for(const i of s){const a=this._stylesCache.font[i];if(a!=null&&a.getValue(e,n)){a.getValue(e,n).documentSkeleton.makeDirty(!0);return}}}_setCellCache(e,n,s,i){var w;const a=this._renderedCellCache.getValue(e,n);if(e===-1||n===-1)return!0;if(a===!1)return this._makeDocumentSkeletonDirty(e,n),!0;if(!this._worksheet)return!0;const o=this._worksheet.getCell(e,n)||this._worksheet.getCellRaw(e,n);if(!o)return!0;if(this._worksheet.getColVisible(n)===!1||this._worksheet.getRowVisible(e)===!1){const{isMerged:O,isMergedMainCell:T}=d2(e,n,this._dataMergeCache);if(O&&!T)return!0;if(!T)return!0}const l=this._stylesCache,c=this._styles.getStyleByCell(o);if(!s&&c&&c.bg&&c.bg.rgb){const O=c.bg.rgb;l.background[O]||(l.background[O]=new g.ObjectMatrix),l.background[O].setValue(e,n,O);const R=this.getCellByIndexWithNoHeader(e,n);(w=l.backgroundPositions)==null||w.setValue(e,n,R)}if(!s&&c&&c.bd&&(i?(this._setMergeBorderProps(q.TOP,l,i),this._setMergeBorderProps(q.BOTTOM,l,i),this._setMergeBorderProps(q.LEFT,l,i),this._setMergeBorderProps(q.RIGHT,l,i)):this.intersectMergeRange(e,n)||(this._setBorderProps(e,n,q.TOP,c,l),this._setBorderProps(e,n,q.BOTTOM,c,l),this._setBorderProps(e,n,q.LEFT,c,l),this._setBorderProps(e,n,q.RIGHT,c,l)),this._setBorderProps(e,n,q.TL_BR,c,l),this._setBorderProps(e,n,q.TL_BC,c,l),this._setBorderProps(e,n,q.TL_MR,c,l),this._setBorderProps(e,n,q.BL_TR,c,l),this._setBorderProps(e,n,q.ML_TR,c,l),this._setBorderProps(e,n,q.BC_TR,c,l)),a===!0)return this._makeDocumentSkeletonDirty(e,n),!0;if(g.isNullCell(o))return;const h=o&&this._getCellDocumentModel(o,{displayRawFormula:this._renderRawFormula});if(h==null)return;const{documentModel:f}=h;if(f==null)return;const{fontString:_,textRotation:p,wrapStrategy:m,verticalAlign:v,horizontalAlign:F}=h,E=new be(f);l.font[_]||(l.font[_]=new g.ObjectMatrix);const S=l.font[_],{vertexAngle:B,centerAngle:x}=p2(p);if(E){const O=Je.create(E,this._localService);O.calculate();const T={documentSkeleton:O,vertexAngle:B,centerAngle:x,verticalAlign:v,horizontalAlign:F,wrapStrategy:m};S.setValue(e,n,T),this._calculateOverflowCell(e,n,T)}s?this._renderedCellCache.setValue(e,n,!0):this._renderedCellCache.setValue(e,n,!1)}_updateConfigAndGetDocumentModel(e,n,s){var a;if(!s||!((a=e.body)!=null&&a.dataStream))return;e.documentStyle||(e.documentStyle={}),e.documentStyle.pageSize={width:Number.POSITIVE_INFINITY,height:Number.POSITIVE_INFINITY},e.documentStyle.renderConfig=s;const i=e.body.paragraphs||[];for(const o of i)o.paragraphStyle||(o.paragraphStyle={}),o.paragraphStyle.horizontalAlign=n;return new g.DocumentDataModel(e)}_getDocumentDataByStyle(e,n,s){const i=e.length,{textRotation:a,paddingData:o={t:0,r:2,b:1,l:2},horizontalAlign:u=g.HorizontalAlign.UNSPECIFIED,verticalAlign:l=g.VerticalAlign.UNSPECIFIED,wrapStrategy:c=g.WrapStrategy.UNSPECIFIED,cellValueType:h}=s,{t:f,r:_,b:p,l:m}=o||{},{vertexAngle:v,centerAngle:F}=p2(a),E={id:"d",body:{dataStream:`${e}${g.DEFAULT_EMPTY_DOCUMENT_VALUE}`,textRuns:[{ts:n,st:0,ed:i}],paragraphs:[{startIndex:i,paragraphStyle:{horizontalAlign:u}}]},documentStyle:{pageSize:{width:Number.POSITIVE_INFINITY,height:Number.POSITIVE_INFINITY},marginTop:f,marginBottom:p,marginRight:_,marginLeft:m,renderConfig:{horizontalAlign:u,verticalAlign:l,centerAngle:F,vertexAngle:v,wrapStrategy:c,cellValueType:h}}};return new g.DocumentDataModel(E)}_setMergeBorderProps(e,n,s){var h;if(!this._worksheet||!n.border)return;const i=[];let a=!0,o=s.startRow,u=s.endRow,l=s.startRow,c=s.startColumn;e===q.TOP?(l=s.startRow,o=s.startColumn,u=s.endColumn):e===q.BOTTOM?(l=s.endRow,o=s.startColumn,u=s.endColumn):e===q.LEFT?(c=s.startColumn,o=s.startRow,u=s.endRow):e===q.RIGHT&&(c=s.endColumn,o=s.startRow,u=s.endRow);for(let f=o;f<=u;f++){e===q.TOP||e===q.BOTTOM?c=f:(e===q.LEFT||e===q.RIGHT)&&(l=f);const _=this._worksheet.getCell(l,c);if(!_){a=!1;break}const p=this._styles.getStyleByCell(_);if(!p){a=!1;break}const m=(h=p.bd)==null?void 0:h[e];if(m){const v=g.getColorStyle(m.cl)||he;i.push({r:l,c,style:m.s,color:v})}else a=!1}a&&i.forEach(f=>{const{r:_,c:p,style:m,color:v}=f;n.border.getValue(_,p)||n.border.setValue(_,p,{}),n.border.getValue(_,p)[e]={type:e,style:m,color:v}})}_setBorderProps(e,n,s,i,a){var c,h,f;const o=(c=i.bd)==null?void 0:c[s];if(!o||!a.border)return!0;const u=g.getColorStyle(o.cl)||he,l=a.border;if(l.getValue(e,n)||l.setValue(e,n,{[s]:{}}),s===q.TOP){if(((h=l.getValue(e-1,n))==null?void 0:h[q.BOTTOM])&&g.isWhiteColor(u))return!0}else if(s===q.LEFT&&((f=l.getValue(e,n-1))==null?void 0:f[q.RIGHT])&&g.isWhiteColor(u))return!0;l.getValue(e,n)[s]={type:s,style:o.s,color:u}}_getFontFormat(e){if(!e)return{};const{ff:n,fs:s,it:i,bl:a,ul:o,st:u,ol:l,cl:c}=e,h={};return n&&(h.ff=n),s&&(h.fs=s),i&&(h.it=i),a&&(h.bl=a),o&&(h.ul=o),u&&(h.st=u),l&&(h.ol=l),c&&(h.cl=c),h}_getOtherStyle(e){if(!e)return{};const{tr:n,td:s,ht:i,vt:a,tb:o,pd:u}=e;return{textRotation:n,textDirection:s,horizontalAlign:i,verticalAlign:a,wrapStrategy:o,paddingData:u}}_getMergeCells(e,n){const s=this.columnWidthAccumulation.length-1;n?n={startRow:n.startRow,endRow:n.endRow,endColumn:s,startColumn:0}:n={startRow:0,startColumn:0,endRow:this.rowHeightAccumulation.length-1,endColumn:s};const{startRow:i,startColumn:a,endRow:o,endColumn:u}=n,l=[];for(let c=0;c<e.length;c++){const{startRow:h,endRow:f,startColumn:_,endColumn:p}=e[c];for(let m=i;m<=o;m++){let v=!1;for(let F=a;F<=u;F++)if(m>=h&&m<=f&&F>=_&&F<=p){l.push({startRow:h,endRow:f,startColumn:_,endColumn:p}),v=!0;break}if(v)break}}return l}},y.SpreadsheetSkeleton=qa([Fn(4,E1.Inject(g.LocaleService)),Fn(5,g.IContextService)],y.SpreadsheetSkeleton);const Za="DefaultFontExtension",Ja=30;class Tn extends de{constructor(){super(...arguments);d(this,"uKey",Za);d(this,"Z_INDEX",Ja)}getDocuments(){const e=this.parent;return e==null?void 0:e.getDocuments()}draw(e,n,s,i){const{stylesCache:a,dataMergeCache:o,overflowCache:u,worksheet:l}=s,{font:c}=a;if(!s||!l)return;const{rowHeightAccumulation:h,columnTotalWidth:f,columnWidthAccumulation:_,rowTotalHeight:p}=s;if(!h||!_||f===void 0||p===void 0||!l)return;e.save();const m=this._getScale(n);c&&Object.keys(c).forEach(v=>{c[v].forValue((E,S,B)=>{var C1,D1,i1,o1,p1;const x=this.getCellIndex(E,S,h,_,o);let{startY:w,endY:O,startX:T,endX:R}=x;const{isMerged:k,isMergedMainCell:$,mergeInfo:M}=x;if(k||($&&(w=M.startY,O=M.endY,T=M.startX,R=M.endX),!this.isRenderDiffRangesByRow(M.startRow,M.endRow,i)))return!0;const U=l.getCell(E,S)||{};if((C1=U.fontRenderExtension)!=null&&C1.isSkip)return!0;const I=u.getValue(E,S),{horizontalAlign:L,vertexAngle:H=0,centerAngle:X=0}=B;let j=L;L===g.HorizontalAlign.UNSPECIFIED&&(X===S1&&H===S1?j=g.HorizontalAlign.CENTER:(H>0&&H!==S1||H===-S1)&&(j=g.HorizontalAlign.RIGHT)),e.save(),e.beginPath();const G=(i1=(D1=U.fontRenderExtension)==null?void 0:D1.rightOffset)!=null?i1:0,Q=(p1=(o1=U.fontRenderExtension)==null?void 0:o1.leftOffset)!=null?p1:0;let t1=!0;H===0&&(T=T+Q,R=R-G,(G!==0||Q!==0)&&(t1=!1));const n1=R-T,a1=O-w;if(I&&t1){const{startColumn:l1,startRow:B1,endColumn:v1,endRow:y1}=I;l1===v1&&l1===S?(e.rectByPrecision(T+1/m,w+1/m,n1-2/m,a1-2/m),e.clip(),e.clearRectForTexture(T+1/m,w+1/m,n1-2/m,a1-2/m)):j===g.HorizontalAlign.CENTER?this._clipRectangle(e,B1,y1,l1,v1,m,h,_):j===g.HorizontalAlign.RIGHT?this._clipRectangle(e,B1,E,l1,S,m,h,_):this._clipRectangle(e,E,y1,S,v1,m,h,_)}else e.rectByPrecision(T+1/m,w+1/m,n1-2/m,a1-2/m),e.clip(),e.clearRectForTexture(T+1/m,w+1/m,n1-2/m,a1-2/m);e.translate(T+g1,w+g1),this._renderDocuments(e,B,T,w,R,O,E,S,u),e.restore()})}),e.restore()}_renderDocuments(e,n,s,i,a,o,u,l,c){const h=this.getDocuments();if(h==null)throw new Error("documents is null");const{documentSkeleton:f,vertexAngle:_=0,wrapStrategy:p}=n,m=a-s,v=o-i;p===g.WrapStrategy.WRAP&&_===0?(f.getViewModel().getDataModel().updateDocumentDataPageSize(m),f.calculate()):f.getViewModel().getDataModel().updateDocumentDataPageSize(Number.POSITIVE_INFINITY);const F=c.getValue(u,l);if(!(p===g.WrapStrategy.WRAP&&!F&&_===0)){const E=k2(f),S=f.getViewModel().getDataModel().getSnapshot().documentStyle;if(E&&S){const{width:B}=E,{marginRight:x=0,marginLeft:w=0}=S;f.getViewModel().getDataModel().updateDocumentDataPageSize(B+w+x),f.calculate()}}f.makeDirty(!1),h.resize(m,v),h.changeSkeleton(f).render(e)}_clipRectangle(e,n,s,i,a,o,u,l){const c=u[n-1]||0,h=u[s]||u[u.length-1],f=l[i-1]||0,_=l[a]||l[l.length-1];e.rectByPrecision(f,c,_-f,h-c),e.clip(),e.clearRectForTexture(f,c,_-f,h-c)}}Se.add(Tn);const Qa="DefaultRowHeaderLayoutExtension";class xn extends de{constructor(){super(...arguments);d(this,"uKey",Qa);d(this,"Z_INDEX",10)}draw(e,n,s){const{rowColumnSegment:i,rowHeaderWidth:a=0}=s,{startRow:o,endRow:u}=i;if(!s||a===0)return;const{rowHeightAccumulation:l,columnTotalWidth:c,columnWidthAccumulation:h,rowTotalHeight:f}=s;if(!l||!h||c===void 0||f===void 0)return;const _=this._getScale(n);e.fillStyle=F1([248,249,250]),e.fillRectByPrecision(0,0,a,f),e.textAlign="center",e.textBaseline="middle",e.fillStyle=F1([0,0,0]),e.beginPath(),e.setLineWidthByPrecision(1),e.translateWithPrecisionRatio(g1,g1),e.strokeStyle=F1([217,217,217]),e.font=`13px ${i2}`;let p=0;const m=l.length;for(let F=o-1;F<=u;F++){if(F<0||F>m-1)continue;const E=l[F];if(p===E)continue;e.moveToByPrecision(0,E),e.lineToByPrecision(a,E);const S=p+(E-p)/2;e.fillText(`${F+1}`,a/2,S+xt),p=E}const v=a-.5/_;e.moveToByPrecision(v,0),e.lineToByPrecision(v,f),e.stroke()}}qt.add(new xn);const eo="DefaultMarkerExtension",to=60,no=r=>{const{startRow:t,endRow:e,startColumn:n,endColumn:s}=r;return`${t}-${e}-${n}-${s}`};class Bn extends de{constructor(){super(...arguments);d(this,"Z_INDEX",to);d(this,"uKey",eo)}draw(e,n,s,i){const{worksheet:a,rowColumnSegment:o}=s;if(!a)return;const u=new Set;g.Range.foreach(o,(l,c)=>{var B,x,w,O;let h=a.getCell(l,c);const f=this.getCellIndex(l,c,s.rowHeightAccumulation,s.columnWidthAccumulation,s.dataMergeCache),{isMerged:_,isMergedMainCell:p,mergeInfo:m}=f;let{startY:v,endY:F,startX:E,endX:S}=f;if((p||_)&&(v=m.startY,F=m.endY,E=m.startX,S=m.endX),_){const T={row:m.startRow,col:m.startColumn};h=a.getCell(T.row,T.col)}if(!this.isRenderDiffRangesByRow(m.startRow,m.endRow,i))return!0;if(f.isMerged||f.isMergedMainCell){const T=no(m);if(u.has(T))return;u.add(T)}if(!(!a.getColVisible(c)||!a.getRowRawVisible(l))&&h){if((B=h.markers)!=null&&B.tr){e.save();const T=h.markers.tr,R=S,k=v;e.fillStyle=T.color,e.moveTo(R,k),e.beginPath(),e.lineTo(R-T.size,k),e.lineTo(R,k+T.size),e.lineTo(R,k),e.closePath(),e.fill(),e.restore()}if((x=h.markers)!=null&&x.tl){e.save();const T=h.markers.tl,R=E,k=v;e.fillStyle=T.color,e.moveTo(R,k),e.beginPath(),e.lineTo(R+T.size,k),e.lineTo(R,k+T.size),e.lineTo(R,k),e.closePath(),e.fill(),e.restore()}if((w=h.markers)!=null&&w.br){e.save();const T=h.markers.br,R=S,k=F;e.fillStyle=T.color,e.moveTo(R,k),e.beginPath(),e.lineTo(R-T.size,k),e.lineTo(R,k-T.size),e.lineTo(R,k),e.closePath(),e.fill(),e.restore()}if((O=h.markers)!=null&&O.bl){e.save();const T=h.markers.bl,R=E,k=F;e.fillStyle=T.color,e.moveTo(R,k),e.beginPath(),e.lineTo(R+T.size,k),e.lineTo(R,k-T.size),e.lineTo(R,k),e.closePath(),e.fill(),e.restore()}}})}}Se.add(Bn);const ro="DefaultCustomExtension",so=55,io=r=>{const{startRow:t,endRow:e,startColumn:n,endColumn:s}=r;return`${t}-${e}-${n}-${s}`};class On extends de{constructor(){super(...arguments);d(this,"Z_INDEX",so);d(this,"uKey",ro)}draw(e,n,s,i){const{rowHeightAccumulation:a,columnWidthAccumulation:o,worksheet:u,dataMergeCache:l,rowColumnSegment:c}=s;if(!u)return;const h=new Set,f=u.getSheetId();g.Range.foreach(c,(_,p)=>{let m=u.getCell(_,p);if(!(m!=null&&m.customRender))return;let v=this.getCellIndex(_,p,a,o,l);const{mergeInfo:F}=v;if(!this.isRenderDiffRangesByRow(F.startRow,F.endRow,i))return!0;if(v.isMerged||v.isMergedMainCell){const B=io(F);if(h.has(B))return;h.add(B)}if(v.isMerged){const B={row:F.startRow,col:F.startColumn};if(m=u.getCell(B.row,B.col),!(m!=null&&m.customRender))return;v=this.getCellIndex(B.row,B.col,a,o,l)}const E={data:m,style:s.getsStyles().getStyleByCell(m),primaryWithCoord:v,subUnitId:f,row:_,col:p};if(!u.getColVisible(p)||!u.getRowRawVisible(_))return;const S=m.customRender.sort(g.sortRules);e.save(),S.forEach(B=>{B.drawWith(e,E,s,this.parent)}),e.restore()})}}Se.add(On);var wn=(r=>(r[r.OFF=0]="OFF",r[r.ON=1]="ON",r))(wn||{});class ao extends Qt{constructor(e,n){super(e,n);d(this,"_rowHeaderLayoutExtension");this._initialDefaultExtension(),this.makeDirty(!0)}get rowHeaderLayoutExtension(){return this._rowHeaderLayoutExtension}draw(e,n){const s=this.getSkeleton();if(!s)return;const i=this.getParentScale();s.calculateSegment(n);const a=s.rowColumnSegment;if(a.startRow===-1&&a.endRow===-1)return;const{columnHeaderHeight:o}=s;e.translateWithPrecision(0,o);const u=this.getExtensionsByOrder();for(const l of u)l.draw(e,i,s)}isHit(e){const n=this._getInverseCoord(e),s=this.getSkeleton();if(!s)return!1;const{rowHeaderWidth:i,columnHeaderHeight:a}=s;return n.x>=0&&n.x<=i&&n.y>a}_initialDefaultExtension(){qt.getData().forEach(e=>{this.register(e)}),this._rowHeaderLayoutExtension=this.getExtensionByKey("DefaultRowHeaderLayoutExtension")}}var J6=(r=>(r[r.SPAN=0]="SPAN",r[r.LINE=1]="LINE",r))(J6||{});class vt extends Kt{constructor(){super(...arguments);d(this,"type",0);d(this,"translateX",0);d(this,"translateY",0)}}const oo="DefaultDocsBackgroundExtension",uo=10;class lo extends vt{constructor(){super(...arguments);d(this,"uKey",oo);d(this,"Z_INDEX",uo);d(this,"_preBackgroundColor","")}draw(e,n,s){var _;const i=(_=s.parent)==null?void 0:_.parent;if(!i)return;const{contentHeight:a=0}=i,{ts:o,width:u}=s;if(!o)return;const{bg:l}=o;if(!l)return;const c=g.getColorStyle(l),{spanStartPoint:h=P.create(0,0)}=this.extensionOffset,f=1.5;c&&(e.fillStyle=c,e.fillRectByPrecision(h.x-.5,h.y-1,u+1,a+2*f))}clearCache(){this._preBackgroundColor=""}}ze.add(new lo);const co="DefaultDocsBorderExtension";class ho extends vt{constructor(){super(...arguments);d(this,"uKey",co);d(this,"Z_INDEX",50);d(this,"_preBorderStyle");d(this,"_preBorderColor","")}draw(e,n,s){var m;const i=(m=s.parent)==null?void 0:m.parent;if(!i)return;const{asc:a=0,lineHeight:o=0}=i,{ts:u,left:l,width:c}=s;if(!u)return;const{bd:h}=u;if(!h)return;const f=this._getScale(e.getScale()),_=this._createBorderCache(h);e.save(),e.translateWithPrecisionRatio(g1,g1);const{spanStartPoint:p=P.create(0,0)}=this.extensionOffset;for(const v of _.keys()){const F=_.get(v);if(!F)continue;const{s:E,cl:S}=F,B=g.getColorStyle(S)||he,x=Xt(E);E!==this._preBorderStyle&&(zt(e,E),e.setLineWidthByPrecision(x),this._preBorderStyle=E),B!==this._preBorderColor&&(e.strokeStyle=B||he,this._preBorderColor=B),Gt(e,v,(x-1)/2/f,{startX:p.x,startY:p.y,endX:p.x+c,endY:p.y+o})}e.restore()}clearCache(){this._preBorderStyle=null,this._preBorderColor=""}_createBorderCache(e){const{t:n,b:s,l:i,r:a}=e,o=new Map;return n&&o.set(q.TOP,n),s&&o.set(q.BOTTOM,s),i&&o.set(q.LEFT,i),a&&o.set(q.RIGHT,a),o}}ze.add(new ho);const fo="DefaultDocsFontAndBaseLineExtension",_o=20;class go extends vt{constructor(){super(...arguments);d(this,"uKey",fo);d(this,"Z_INDEX",_o);d(this,"_preFontString","");d(this,"_preFontColor","")}draw(e,n,s){var p;if(!((p=s.parent)==null?void 0:p.parent))return;const{ts:a,content:o,fontStyle:u,bBox:l}=s,{spanPointWithFont:c=P.create(0,0)}=this.extensionOffset;if(o==null)return;if(!a){this._fillText(e,s,c);return}this._preFontString!==(u==null?void 0:u.fontString)&&(e.font=this._preFontString=(u==null?void 0:u.fontString)||"");const{cl:h,va:f}=a,_=g.getColorStyle(h)||he;_&&this._preFontColor!==_&&(e.fillStyle=_),f===g.BaselineOffset.SUPERSCRIPT?c.y+=-l.spo:f===g.BaselineOffset.SUBSCRIPT&&(c.y+=l.sbo),this._fillText(e,s,c)}_fillText(e,n,s){const{renderConfig:i,spanStartPoint:a,centerPoint:o}=this.extensionOffset,{content:u,width:l,bBox:c}=n,{aba:h,abd:f}=c;if(u==null||a==null||o==null)return;const{vertexAngle:_,centerAngle:p}=i!=null?i:{},m=90;_===m&&p===m&&!h2(u)?(e.save(),e.translate(a.x+o.x,a.y+o.y),e.rotate(Math.PI/2),e.translate(-l/2,(h+f)/2-f),e.fillText(u,0,0),e.restore()):e.fillText(u,s.x,s.y)}clearCache(){this._preFontString="",this._preFontColor=""}}ze.add(new go);const Do="DefaultDocsLineExtension",po=40;class vo extends vt{constructor(){super(...arguments);d(this,"uKey",Do);d(this,"Z_INDEX",po);d(this,"_preBackgroundColor","")}draw(e,n,s){var B;const i=(B=s.parent)==null?void 0:B.parent;if(!i)return;const{contentHeight:a=0,asc:o}=i,{ts:u,bBox:l}=s;if(!u)return;const{sp:c,spo:h,sbo:f,bd:_}=l,p=Pt(n),m=.5,{ul:v,st:F,ol:E,va:S}=u;if(v){const x=a+Bt-3;this._drawLine(e,s,v,x,p)}if(F){let x=o+_-c-m;S===g.BaselineOffset.SUPERSCRIPT?x-=h:S===g.BaselineOffset.SUBSCRIPT&&(x+=f),this._drawLine(e,s,F,x,p)}if(E){const x=-Bt-m;this._drawLine(e,s,E,x,p)}}clearCache(){this._preBackgroundColor=""}_drawLine(e,n,s,i,a){var h;const{s:o,cl:u,t:l,c=g.BooleanNumber.TRUE}=s;if(o===g.BooleanNumber.TRUE){const{originTranslate:f=P.create(0,0),alignOffset:_=P.create(0,0),renderConfig:p={}}=this.extensionOffset,{left:m,width:v}=n,{centerAngle:F=0,vertexAngle:E=0}=p,S=Y1(F),B=Y1(E);e.save(),e.translateWithPrecisionRatio(g1,g1),e.beginPath();const x=(c===g.BooleanNumber.TRUE?g.getColorStyle((h=n.ts)==null?void 0:h.cl):g.getColorStyle(u))||he;e.strokeStyle=x,this._setLineType(e,l||g.TextDecoration.SINGLE);const w=Ue(f.addByPoint(m,i),P.create(0,0),S,B,_),O=Ue(f.addByPoint(m+v,i),P.create(0,0),S,B,_);e.moveToByPrecision(w.x,w.y),e.lineToByPrecision(O.x,O.y),e.stroke(),e.restore()}}_setLineType(e,n){n===g.TextDecoration.DASH_DOT_DOT_HEAVY||n===g.TextDecoration.DOT_DOT_DASH?e.setLineDash([2,2,5,2,2]):n===g.TextDecoration.DASH_DOT_HEAVY||n===g.TextDecoration.DOT_DASH?e.setLineDash([2,5,2]):n===g.TextDecoration.DOTTED||n===g.TextDecoration.DOTTED_HEAVY?e.setLineDash([2]):n===g.TextDecoration.DASH||n===g.TextDecoration.DASHED_HEAVY?e.setLineDash([3]):n===g.TextDecoration.DASH_LONG||n===g.TextDecoration.DASH_LONG_HEAVY?e.setLineDash([6]):e.setLineDash([0])}}ze.add(new vo);class mo extends jt{constructor(e,n){super(e);d(this,"pageMarginLeft",0);d(this,"pageMarginTop",0);d(this,"pageLayoutType",V1.VERTICAL);this._skeleton=n}getSkeleton(){return this._skeleton}setSkeleton(e){this._skeleton=e}render(e,n){if(!this.visible)return this.makeDirty(!1),this;if(!this._skeleton)return;const s=this.transform.getMatrix();e.save(),e.transform(s[0],s[1],s[2],s[3],s[4],s[5]),this._draw(e,n),e.restore()}getParentScale(){if(!this.parent)return{scaleX:1,scaleY:1};let{scaleX:e=1,scaleY:n=1}=this.parent;return this.parent.classType===K.SCENE&&(e=this.parent.ancestorScaleX||1,n=this.parent.ancestorScaleY||1),{scaleX:e,scaleY:n}}scrollBySelection(){}syncSelection(){}remainActiveSelection(){}findNodeByCoord(e,n){}findCoordByNode(e){}_getBounding(e){}_draw(e,n){}}class I2 extends mo{constructor(e,n,s){super(e,n);d(this,"onPageRenderObservable",new g.Observable);d(this,"docsLeft",0);d(this,"docsTop",0);d(this,"_drawLiquid");d(this,"_findLiquid");d(this,"_skeletonObserver");this.setConfig(s),this._drawLiquid=new m2,this._findLiquid=new m2,this._initialDefaultExtension(),this.makeDirty(!0)}static create(e,n,s){return new I2(e,n,s)}setConfig(e){(e==null?void 0:e.pageMarginLeft)!=null?this.pageMarginLeft=e==null?void 0:e.pageMarginLeft:this.pageMarginLeft=17,(e==null?void 0:e.pageMarginTop)!=null?this.pageMarginTop=e==null?void 0:e.pageMarginTop:this.pageMarginTop=14,(e==null?void 0:e.pageLayoutType)!=null?this.pageLayoutType=e==null?void 0:e.pageLayoutType:this.pageLayoutType=V1.VERTICAL}getOffsetConfig(){const{transform:e,pageLayoutType:n,pageMarginLeft:s,pageMarginTop:i,left:a,top:o}=this;return{documentTransform:e,pageLayoutType:n,pageMarginLeft:s,pageMarginTop:i,docsLeft:a,docsTop:o}}getEngine(){return this.getScene().getEngine()}draw(e,n){var _;if(!this.getSkeleton())return;this._drawLiquid.reset();const i=(_=this.getSkeleton())==null?void 0:_.getSkeletonData();if(i==null)return;this._drawLiquid.reset();const{pages:a}=i,o=this.getParentScale(),u=this.getExtensionsByOrder();for(const p of u)p.clearCache();const l=u.find(p=>p.uKey==="DefaultDocsBackgroundExtension"),c=u.filter(p=>p.type===J6.SPAN&&p.uKey!=="DefaultDocsBackgroundExtension");let h=0,f=0;for(let p=0,m=a.length;p<m;p++){const v=a[p],{sections:F,marginTop:E=0,marginBottom:S=0,marginLeft:B=0,marginRight:x=0,width:w,height:O,renderConfig:T={}}=v,{verticalAlign:R=g.VerticalAlign.TOP,horizontalAlign:k=g.HorizontalAlign.LEFT,centerAngle:$=0,vertexAngle:M=0,wrapStrategy:U=g.WrapStrategy.UNSPECIFIED,cellValueType:I}=T,L=this._horizontalHandler(w,B,x,k,M,$,I),H=this._verticalHandler(O,E,S,R),X=P.create(L,H),j=Y1($),G=Y1(M),Q=G-j;if(this._isSkipByDiffBounds(v,h,f,n)){const{x:a1,y:C1}=this._drawLiquid.translatePage(v,this.pageLayoutType,this.pageMarginLeft,this.pageMarginTop);f+=a1,h+=C1;continue}this.onPageRenderObservable.notifyObservers({page:v,pageLeft:f,pageTop:h,ctx:e}),this._startRotation(e,Q);for(const a1 of F){const{columns:C1}=a1;this._drawLiquid.translateSection(a1);for(const D1 of C1){const{lines:i1,width:o1}=D1;this._drawLiquid.translateSave(),this._drawLiquid.translateColumn(D1);const p1=i1.length;let l1=X,B1=null;if(G!==0){const{rotateTranslateXList:v1,rotatedHeight:y1,rotatedWidth:z1,fixOffsetX:O1,fixOffsetY:oe,rotateTranslateY:ye}=Wt(i1,o1,G);let ue=z1;y1>this.height&&U!==g.WrapStrategy.WRAP&&(U===g.WrapStrategy.OVERFLOW||G>0)&&(ue=this.height/Math.tan(Math.abs(G)));const le=this._horizontalHandler(ue,B,x,k,M,$);let w1=this._verticalHandler(y1,E,S,R)-oe;y1>this.height&&(G<0?w1=this.height-(y1+oe):w1=-oe),l1=P.create(le+O1,w1),this._drawLiquid.translate(0,-ye),B1=v1}else U===g.WrapStrategy.WRAP&&(l1.x=B);for(let v1=0;v1<p1;v1++){const y1=i1[v1],{divides:z1,asc:O1=0,type:oe,lineHeight:ye=0}=y1,ue=O1,le=ue*Math.sin(j),ke=ue*Math.cos(j);if(oe===_2.BLOCK)for(const w1 of u)w1.type===J6.LINE&&(w1.extensionOffset={alignOffset:l1,renderConfig:T},w1.draw(e,o,y1));else{this._drawLiquid.translateSave(),this._drawLiquid.translateLine(y1,!0),B1&&this._drawLiquid.translate(B1[v1]);const w1=z1.length;for(let Fe=0;Fe<w1;Fe++){const Ie=z1[Fe],{glyphGroup:Le}=Ie;this._drawLiquid.translateSave(),this._drawLiquid.translateDivide(Ie);for(const T1 of Le){if(!T1.content||T1.content.length===0)continue;const{width:L2,left:n2}=T1,{x:r2,y:M2}=this._drawLiquid,P2=P.create(r2,M2),ce=P.create(L2/2,ye/2),N2={spanStartPoint:Ue(P2.addByPoint(n2,0),ce,j,G,l1)};l&&(l.extensionOffset=N2,l.draw(e,o,T1))}for(const T1 of Le){if(!T1.content||T1.content.length===0)continue;const{width:L2,left:n2,xOffset:r2}=T1,{x:M2,y:P2}=this._drawLiquid,ce=P.create(M2,P2),Me=P.create(L2/2,ye/2),N2=Ue(ce.addByPoint(n2+r2,0),Me,j,G,l1),Et=Ue(ce.addByPoint(n2+le+r2,ke),Me,j,G,l1),l0={originTranslate:ce,spanStartPoint:N2,spanPointWithFont:Et,centerPoint:Me,alignOffset:l1,renderConfig:T};for(const St of c)St.extensionOffset=l0,St.draw(e,o,T1)}this._drawLiquid.translateRestore()}this._drawLiquid.translateRestore()}}this._drawLiquid.translateRestore()}}this._resetRotation(e,Q);const{x:t1,y:n1}=this._drawLiquid.translatePage(v,this.pageLayoutType,this.pageMarginLeft,this.pageMarginTop);f+=t1,h+=n1}}changeSkeleton(e){return this.setSkeleton(e),this}_draw(e,n){this.draw(e,n)}_horizontalHandler(e,n,s,i,a=0,o=0,u){i===g.HorizontalAlign.UNSPECIFIED&&(o===S1&&a===S1?i=g.HorizontalAlign.CENTER:a>0&&a!==S1||a===-S1||u===g.CellValueType.NUMBER?i=g.HorizontalAlign.RIGHT:u===g.CellValueType.BOOLEAN?i=g.HorizontalAlign.CENTER:i=g.HorizontalAlign.LEFT);let l=0;return i===g.HorizontalAlign.CENTER?l=(this.width-e)/2:i===g.HorizontalAlign.RIGHT?l=this.width-e-s:l=n,l}_verticalHandler(e,n,s,i){let a=0;return i===g.VerticalAlign.MIDDLE?a=(this.height-e)/2:i===g.VerticalAlign.TOP?a=n:a=this.height-e-s,a}_startRotation(e,n){e.rotate(n||0)}_resetRotation(e,n){e.rotate(-n||0)}_initialDefaultExtension(){ze.getData().forEach(e=>{this.register(e)})}_isSkipByDiffBounds(e,n,s,i){if(i==null)return!1;const{pageWidth:a,pageHeight:o,marginBottom:u,marginTop:l,marginLeft:c,marginRight:h}=e,f=s+a+c+h,_=n+o+u+l,{left:p,top:m,right:v,bottom:F}=i.viewBound;return f<p||_<m||s>v&&a!==Number.POSITIVE_INFINITY||n>F&&o!==Number.POSITIVE_INFINITY}}const bo="__SHEET_EXTENSION_FONT_DOCUMENT_INSTANCE__";class yo extends Jt{constructor(e,n,s=!0){super(e,n);d(this,"_backgroundExtension");d(this,"_borderExtension");d(this,"_fontExtension");d(this,"_cacheCanvas");d(this,"_refreshIncrementalState",!1);d(this,"_forceDirty",!1);d(this,"_overflowCacheRuntime",{});d(this,"_overflowCacheRuntimeRange",new g.ObjectMatrix);d(this,"_overflowCacheRuntimeTimeout",-1);d(this,"_forceDisableGridlines",!1);d(this,"_documents",new I2(bo,void 0,{pageMarginLeft:0,pageMarginTop:0}));d(this,"isPrinting",!1);this._allowCache=s,this._allowCache&&(this._cacheCanvas=new Ge,this.onIsAddedToParentObserver.add(i=>{var a;(a=i==null?void 0:i.getEngine())==null||a.onTransformChangeObservable.add(()=>{this._resizeCacheCanvas()}),this._resizeCacheCanvas(),this._addMakeDirtyToScroll()})),this._initialDefaultExtension(),this.makeDirty(!0)}get backgroundExtension(){return this._backgroundExtension}get borderExtension(){return this._borderExtension}get fontExtension(){return this._fontExtension}getDocuments(){return this._documents}get allowCache(){return this._allowCache}get forceDisableGridlines(){return this._forceDisableGridlines}draw(e,n){const s=this.getSkeleton();if(!s)return;const i=this.getParentScale(),a=this._refreshIncrementalState?n==null?void 0:n.diffBounds.map(u=>s.getRowColumnSegmentByViewBound(u)):void 0,o=this.getExtensionsByOrder();for(const u of o)u.draw(e,i,s,a)}isHit(e){const n=this._getInverseCoord(e),s=this.getSkeleton();if(!s)return!1;const{rowHeaderWidth:i,columnHeaderHeight:a}=s;return n.x>i&&n.y>a}getNoMergeCellPositionByIndex(e,n){const s=this.getSkeleton();if(!s)return;const{rowHeightAccumulation:i,columnWidthAccumulation:a,rowHeaderWidth:o,columnHeaderHeight:u}=s;let{startY:l,endY:c,startX:h,endX:f}=Ce(e,n,i,a);return l+=u,c+=u,h+=o,f+=o,{startY:l,endY:c,startX:h,endX:f}}getScrollXYByRelativeCoords(e){const n=this.getParent();let s=0,i=0;const a=n.getActiveViewportByRelativeCoord(e);if(a){const o=a.actualScrollX||0,u=a.actualScrollY||0;s+=o,i+=u}return{x:s,y:i}}makeForceDirty(e=!0){this.makeDirty(e),this._forceDirty=e}setForceDisableGridlines(e){this._forceDisableGridlines=e}getSelectionBounding(e,n,s,i){var a;return(a=this.getSkeleton())==null?void 0:a.getMergeBounding(e,n,s,i)}render(e,n){if(!this.visible)return this.makeDirty(!1),this;const s=this.getSkeleton();if(!s)return;s.calculateWithoutClearingCache(n);const i=s.rowColumnSegment;if(i.startRow===-1&&i.endRow===-1||i.startColumn===-1&&i.endColumn===-1)return;e.save();const{a=1,d:o=1}=e.getTransform(),{rowHeaderWidth:u,columnHeaderHeight:l}=s;if(e.translateWithPrecision(u,l),this._drawAuxiliary(e,n),n&&this._allowCache===!0){const{viewBound:c,diffBounds:h,diffX:f,diffY:_,viewPortPosition:p,viewPortKey:m}=n;if(m==="viewMain"){const v=this._cacheCanvas.getContext();v.save();const{left:F,top:E,right:S,bottom:B}=p,x=S-F+u,w=B-E+l;if(h.length===0||f===0&&_===0||this._forceDirty)(this.isDirty()||this._forceDirty)&&(this._cacheCanvas.clear(),v.setTransform(e.getTransform()),this._draw(v,n),this._forceDirty=!1),this._applyCache(e,F,E,x,w,F,E,x,w);else{if(this.isDirty()){v.save(),v.globalCompositeOperation="copy",v.setTransform(1,0,0,1,0,0),v.drawImage(this._cacheCanvas.getCanvasEle(),f*a,_*o),v.restore(),this._refreshIncrementalState=!0,v.setTransform(e.getTransform());for(const O of h){const{left:T,right:R,bottom:k,top:$}=O;v.save(),v.beginPath(),v.rectByPrecision(T-u-g1,$-l-g1,R-T+u+g1*2,k-$+l+g1*2),v.clip(),this._draw(v,{viewBound:n.viewBound,diffBounds:[O],diffX:n.diffX,diffY:n.diffY,viewPortPosition:n.viewPortPosition,viewPortKey:n.viewPortKey}),v.restore()}this._refreshIncrementalState=!1}this._applyCache(e,F,E,x,w,F,E,x,w)}v.restore()}else this._draw(e,n)}else this._draw(e,n);return e.restore(),this.makeDirty(!1),this}_resizeCacheCanvas(){const e=this._getAncestorSize();if(!e||this._cacheCanvas==null)return;const{width:n,height:s}=e;this._cacheCanvas.setSize(n,s),this.makeForceDirty(!0)}_applyCache(e,n=0,s=0,i=0,a=0,o=0,u=0,l=0,c=0){if(!e)return;const h=this._cacheCanvas.getPixelRatio(),f=this._cacheCanvas.getContext();f.save(),e.save(),e.setTransform(1,0,0,1,0,0),f.setTransform(1,0,0,1,0,0),e.drawImage(this._cacheCanvas.getCanvasEle(),n*h,s*h,i*h,a*h,o*h,u*h,l*h,c*h),e.restore(),f.restore()}_draw(e,n){this.draw(e,n)}_getAncestorSize(){const e=this._getAncestorParent();if(e){if(e.classType===K.ENGINE){const n=e.getCanvas();return{width:n.getWidth(),height:n.getHeight()}}if(e.classType===K.SCENE_VIEWER)return{width:e.width,height:e.height}}}_getAncestorParent(){let e=this.parent;for(;e;){if(e.classType===K.ENGINE||e.classType===K.SCENE_VIEWER)return e;e=(e==null?void 0:e.getParent)&&(e==null?void 0:e.getParent())}}_initialDefaultExtension(){Se.getData().sort(g.sortRules).forEach(e=>{this.register(new e)}),this._backgroundExtension=this.getExtensionByKey("DefaultBackgroundExtension"),this._borderExtension=this.getExtensionByKey("DefaultBorderExtension"),this._fontExtension=this.getExtensionByKey("DefaultFontExtension")}_addMakeDirtyToScroll(){this._hasScrollViewportOperator(this,e=>{e.onScrollBeforeObserver.add(()=>{this.makeDirty(!0)})})}_hasScrollViewportOperator(e,n){let s=e.getParent();for(;s;){if(s.classType===K.SCENE){const i=s.getViewports(),a=this._getHasScrollViewports(i);for(const o of a)o&&n(o)}s=(s==null?void 0:s.getParent)&&(s==null?void 0:s.getParent())}}_getHasScrollViewports(e){const n=[];for(const s of e)s.getScrollBar()&&n.push(s);return n}_drawAuxiliary(e,n){const s=this.getSkeleton();if(s==null)return;const{rowColumnSegment:i,dataMergeCache:a,overflowCache:o,stylesCache:u,showGridlines:l}=s,{border:c,backgroundPositions:h}=u,{startRow:f,endRow:_,startColumn:p,endColumn:m}=i;if(!s||l===g.BooleanNumber.FALSE||this._forceDisableGridlines)return;const{rowHeightAccumulation:v,columnTotalWidth:F,columnWidthAccumulation:E,rowTotalHeight:S}=s;if(!v||!E||F===void 0||S===void 0)return;e.save(),e.setLineWidthByPrecision(1),e.strokeStyle=F1([212,212,212]);const B=E.length,x=v.length,w=.4,O=_-f+1,T=m-p+1,R=Math.ceil(O*w),k=Math.ceil(T*w),$=Math.max(Math.floor(f-R),0),M=Math.min(Math.ceil(_+R),x-1),U=Math.min(Math.ceil(m+k),B-1),I=Math.max(Math.floor(p-k),0),L=E[I-1]||0,H=v[$-1]||0,X=E[U],j=v[M];e.translateWithPrecisionRatio(g1,g1),e.beginPath(),e.moveToByPrecision(L,H),e.lineToByPrecision(X,H),e.moveToByPrecision(L,H),e.lineToByPrecision(L,j),e.closePathByEnv(),e.stroke();for(let G=$;G<=M;G++){if(G<0||G>x-1)continue;const Q=v[G];e.beginPath(),e.moveToByPrecision(L,Q),e.lineToByPrecision(X,Q),e.closePathByEnv(),e.stroke()}for(let G=I;G<=U;G++){if(G<0||G>B-1)continue;const Q=E[G];e.beginPath(),e.moveToByPrecision(Q,H),e.lineToByPrecision(Q,j),e.closePathByEnv(),e.stroke()}this._clearRectangle(e,v,E,a),this._clearRectangle(e,v,E,o.toNativeArray()),this._clearBackground(e,h),e.restore()}_clearRectangle(e,n,s,i){if(i!=null)for(const a of i){const{startRow:o,endRow:u,startColumn:l,endColumn:c}=a,h=n[o-1]||0,f=n[u]||n[n.length-1],_=s[l-1]||0,p=s[c]||s[s.length-1];e.clearRectByPrecision(_,h,p-_,f-h),e.beginPath(),e.moveToByPrecision(_,h),e.lineToByPrecision(p,h),e.lineToByPrecision(p,f),e.lineToByPrecision(_,f),e.lineToByPrecision(_,h),e.stroke(),e.closePath()}}_clearBackground(e,n){n==null||n.forValue((s,i,a)=>{let{startY:o,endY:u,startX:l,endX:c}=a;const{isMerged:h,isMergedMainCell:f,mergeInfo:_}=a;if(h)return!0;f&&(o=_.startY,u=_.endY,l=_.startX,c=_.endX),e.clearRectForTexture(l,o,c-l+.5,u-o+.5)})}}function An(r,t,e){r.onPointerEnterObserver.add(n=>{t(r,n)}),r.onPointerLeaveObserver.add(n=>{e(r,n)})}class Q6 extends ne{constructor(e,n){super(e);d(this,"_subScenes",new Map);d(this,"_activeSubScene");d(this,"_allowSelectedClipElement",!1);this._initialProps(n)}get classType(){return K.SCENE_VIEWER}render(e,n){var i;if(!this.visible)return this.makeDirty(!1),this;if(n){const{left:a,top:o,right:u,bottom:l}=n.viewBound;if(this.width+this.strokeWidth+this.left<a||u<this.left||this.height+this.strokeWidth+this.top<o||l<this.top)return this}const s=this.transform.getMatrix();return e.save(),e.transform(s[0],s[1],s[2],s[3],s[4],s[5]),(i=this._activeSubScene)==null||i.makeDirtyNoParent(!0).render(e),e.restore(),this.makeDirty(!1),this}getSubScenes(){return this._subScenes}getActiveSubScene(){return this._activeSubScene}getSubScene(e){for(const[n,s]of this._subScenes)if(n===e)return s}addSubScene(e){this._activeSubScene=e,this._subScenes.set(e.sceneKey,e),this.makeDirty()}removeSubScene(e){const n=this._subScenes.get(e);this._subScenes.delete(e),this._activeSubScene===n&&(this._activeSubScene=this._subScenes.values().next().value),this.makeDirty()}activeSubScene(e){if(e==null)return;const n=this._subScenes.get(e);this._activeSubScene!==n&&(this._activeSubScene=n,this.makeDirty())}enableSelectedClipElement(){this._allowSelectedClipElement=!0}disableSelectedClipElement(){this._allowSelectedClipElement=!1}allowSelectedClipElement(){return this._allowSelectedClipElement}pick(e){var i;if(this._activeSubScene===void 0)return;const s=this.transform.clone().invert().applyPoint(e);return(i=this._activeSubScene)==null?void 0:i.pick(s)}dispose(){super.dispose(),this._subScenes.forEach(e=>{e.dispose()})}_initialProps(e){if(!e)return;const n=Object.keys(e);if(n.length===0)return;const s={};let i=!1;n.forEach(a=>{if(e[a]===void 0)return!0;s[a]=e[a],i=!0}),i&&this.transformByState(s),this.makeDirty(!0)}}const Rn=["hoverCursor","moveCursor","fillRule","globalCompositeOperation","paintFirst","stroke","strokeScaleEnabled","fill","fillAfterStrokeEnabled","hitStrokeWidth","strokeLineJoin","strokeLineCap","shadowColor","shadowBlur","shadowOffset","shadowOffsetX","shadowOffsetY","shadowOpacity","shadowEnabled","shadowForStrokeEnabled","strokeDashArray","strokeDashOffset","strokeMiterLimit"];class $e extends ne{constructor(e,n){super(e);d(this,"_hoverCursor");d(this,"_moveCursor",null);d(this,"_fillRule","nonzero");d(this,"_globalCompositeOperation","source-over");d(this,"_paintFirst","fill");d(this,"_stroke");d(this,"_strokeScaleEnabled",!1);d(this,"_fill");d(this,"_fillAfterStrokeEnabled",!1);d(this,"_hitStrokeWidth",0);d(this,"_strokeLineJoin","round");d(this,"_strokeLineCap","round");d(this,"_shadowColor");d(this,"_shadowBlur",0);d(this,"_shadowOffset");d(this,"_shadowOffsetX",0);d(this,"_shadowOffsetY",0);d(this,"_shadowOpacity",0);d(this,"_shadowEnabled",!1);d(this,"_shadowForStrokeEnabled",!1);d(this,"_strokeDashArray");d(this,"_strokeDashOffset",0);d(this,"_strokeMiterLimit",0);d(this,"_type",Tt.RECT);this._initialProps(n)}get hoverCursor(){return this._hoverCursor}get moveCursor(){return this._moveCursor}get fillRule(){return this._fillRule}get globalCompositeOperation(){return this._globalCompositeOperation}get paintFirst(){return this._paintFirst}get stroke(){return this._stroke}get strokeScaleEnabled(){return this._strokeScaleEnabled}get fill(){return this._fill}get fillAfterStrokeEnabled(){return this._fillAfterStrokeEnabled}get hitStrokeWidth(){return this._hitStrokeWidth}get strokeLineJoin(){return this._strokeLineJoin}get strokeLineCap(){return this._strokeLineCap}get shadowColor(){return this._shadowColor}get shadowBlur(){return this._shadowBlur}get shadowOffset(){return this._shadowOffset}get shadowOffsetX(){return this._shadowOffsetX}get shadowOffsetY(){return this._shadowOffsetY}get shadowOpacity(){return this._shadowOpacity}get shadowEnabled(){return this._shadowEnabled}get shadowForStrokeEnabled(){return this._shadowForStrokeEnabled}get strokeDashArray(){return this._strokeDashArray}get strokeDashOffset(){return this._strokeDashOffset}get strokeMiterLimit(){return this._strokeMiterLimit}static drawWith(e,n){}static _renderPaintInOrder(e,n){n.paintFirst==="stroke"?(this._renderStroke(e,n),this._renderFill(e,n)):(this._renderFill(e,n),this._renderStroke(e,n))}static _renderFill(e,n){n.fill&&(e.save(),this._setFillStyles(e,n),n.fillRule==="evenodd"?e.fill("evenodd"):e.fill(),e.restore())}static _renderStroke(e,n){const{stroke:s,strokeWidth:i,shadowEnabled:a,shadowForStrokeEnabled:o,strokeScaleEnabled:u,parent:l}=n;let{scaleX:c,scaleY:h}=e.getScale();!s||i===0||(a&&!o&&this._removeShadow(e),e.save(),u===!1&&(c=c!=null?c:1,h=h!=null?h:1,e.scale(1/c,1/h)),this._setLineDash(e),this._setStrokeStyles(e,n),e.stroke(),e.restore())}static _getObjectScaling(){return{scaleX:1,scaleY:1}}static _removeShadow(e){}static _setFillStyles(e,n){e.fillStyle=n.fill}static _setStrokeStyles(e,n){const{strokeWidth:s,strokeLineCap:i,strokeDashOffset:a,strokeLineJoin:o,strokeMiterLimit:u,stroke:l}=n;e.lineWidth=s,e.lineCap=i,e.lineDashOffset=a,e.lineJoin=o,e.miterLimit=u,e.strokeStyle=l}static _setLineDash(e){}render(e,n){if(!this.visible)return this.makeDirty(!1),this;if(this.isRender(n)){const{top:i,left:a,bottom:o,right:u}=n.viewBound;if(this.width+this.strokeWidth+this.left<a||u<this.left||this.height+this.strokeWidth+this.top<i||o<this.top)return this}const s=this.transform.getMatrix();return e.save(),e.transform(s[0],s[1],s[2],s[3],s[4],s[5]),this._draw(e),e.restore(),this.makeDirty(!1),this}setProps(e){if(!e)return;const n=Object.keys(e);if(n.length!==0)return n.forEach(s=>{if(e[s]===void 0)return!0;j2.indexOf(s)===-1&&(this[`_${s}`]=e[s])}),this.makeDirty(!0),this}toJson(){const e={};return Rn.forEach(n=>{this[n]&&(e[n]=this[n])}),{...super.toJson(),...e}}_draw(e){}_initialProps(e){if(!e)return;const n=Object.keys(e);if(n.length===0)return;const s={};let i=!1;n.forEach(a=>{if(e[a]===void 0)return!0;j2.indexOf(a)>-1?(s[a]=e[a],i=!0):this[`_${a}`]=e[a]}),i&&this.transformByState(s),this.makeDirty(!0)}}const $n=["dataArray"];class x1 extends $e{constructor(e,n){super(e,n);d(this,"_dataArray",[]);d(this,"_pathLength",0);d(this,"_selfRectCache",{left:0,top:0,width:0,height:0});d(this,"_reCalculateCache",!0);n!=null&&n.data?this._dataArray=x1.parsePathData(n.data):n!=null&&n.dataArray&&(this._dataArray=n.dataArray);for(let s=0;s<this.dataArray.length;++s)this._pathLength+=this.dataArray[s].pathLength;this._setFixBoundingBox(),this.onTransformChangeObservable.add(s=>{const{type:i,preValue:a}=s;if(i===h1.resize||i===h1.all){this._reCalculateCache=!0;const{left:o,top:u,width:l,height:c}=this._getSelfRect(),{width:h,height:f}=a;let _,p;h?_=this.width-h:_=0,f?p=this.height-f:p=0;const m=_/l,v=p/c;this.scaleX+=m,this.scaleY+=v,this.left=this.left-o*m,this.top=this.top-u*v,this._setTransForm()}})}get dataArray(){return this._dataArray}static drawWith(e,n){const s=n.dataArray;if(s){e.beginPath();for(let i=0;i<s.length;i++){const a=s[i].command,o=s[i].points;switch(a){case"L":e.lineTo(o[0],o[1]);break;case"M":e.moveTo(o[0],o[1]);break;case"C":e.bezierCurveTo(o[0],o[1],o[2],o[3],o[4],o[5]);break;case"Q":e.quadraticCurveTo(o[0],o[1],o[2],o[3]);break;case"A":{const u=o[0],l=o[1],c=o[2],h=o[3],f=o[4],_=o[5],p=o[6],m=o[7],v=c>h?c:h,F=c>h?1:c/h,E=c>h?h/c:1;e.translate(u,l),e.rotate(p),e.scale(F,E),e.arc(0,0,v,f,f+_,!!(1-m)),e.scale(1/F,1/E),e.rotate(-p),e.translate(-u,-l);break}case"z":e.closePath();break}}this._renderPaintInOrder(e,n)}}static getLineLength(e,n,s,i){return Math.sqrt((s-e)*(s-e)+(i-n)*(i-n))}static getPointOnLine(e,n,s,i,a,o,u){o===void 0&&(o=n),u===void 0&&(u=s);const l=(a-s)/(i-n+1e-8);let c=Math.sqrt(e*e/(1+l*l));i<n&&(c*=-1);let h=l*c,f;if(i===n)f={x:o,y:u+h};else if((u-s)/(o-n+1e-8)===l)f={x:o+c,y:u+h};else{const _=this.getLineLength(n,s,i,a);let p=(o-n)*(i-n)+(u-s)*(a-s);p/=_*_;const m=n+p*(i-n),v=s+p*(a-s),F=this.getLineLength(o,u,m,v),E=Math.sqrt(e*e-F*F);c=Math.sqrt(E*E/(1+l*l)),i<n&&(c*=-1),h=l*c,f={x:m+c,y:v+h}}return f}static getPointOnCubicBezier(e,n,s,i,a,o,u,l,c){function h(F){return F*F*F}function f(F){return 3*F*F*(1-F)}function _(F){return 3*F*(1-F)*(1-F)}function p(F){return(1-F)*(1-F)*(1-F)}const m=l*h(e)+o*f(e)+i*_(e)+n*p(e),v=c*h(e)+u*f(e)+a*_(e)+s*p(e);return{x:m,y:v}}static getPointOnQuadraticBezier(e,n,s,i,a,o,u){function l(p){return p*p}function c(p){return 2*p*(1-p)}function h(p){return(1-p)*(1-p)}const f=o*l(e)+i*c(e)+n*h(e),_=u*l(e)+a*c(e)+s*h(e);return{x:f,y:_}}static getPointOnEllipticalArc(e,n,s,i,a,o){const u=Math.cos(o),l=Math.sin(o),c={x:s*Math.cos(a),y:i*Math.sin(a)};return{x:e+(c.x*u-c.y*l),y:n+(c.x*l+c.y*u)}}static parsePathData(e){if(!e)return[];let n=e;const s=["m","M","l","L","v","V","h","H","z","Z","c","C","q","Q","t","T","s","S","a","A"];n=n.replace(new RegExp(" ","g"),",");for(let f=0,_=s.length;f<_;f++)n=n.replace(new RegExp(s[f],"g"),`|${s[f]}`);const i=n.split("|"),a=[],o=[];let u=0,l=0;const c=/([-+]?((\d+\.\d+)|((\d+)|(\.\d+)))(?:e[-+]?\d+)?)/gi;let h;for(let f=1,_=i.length;f<_;f++){let p=i[f],m=p.charAt(0);for(p=p.slice(1),o.length=0;h=c.exec(p);)o.push(h[0]);const v=[];for(let F=0,E=o.length;F<E;F++){if(o[F]==="00"){v.push(0,0);continue}const S=Number.parseFloat(o[F]);isNaN(S)?v.push(0):v.push(S)}for(;v.length>0&&!isNaN(v[0]);){let F,E=[];const S=u,B=l;let x,w,O,T,R,k,$,M,U,I;switch(m){case"l":u+=v.shift()||0,l+=v.shift()||0,F="L",E.push(u,l);break;case"L":u=v.shift()||0,l=v.shift()||0,E.push(u,l);break;case"m":{const L=v.shift()||0,H=v.shift()||0;if(u+=L,l+=H,F="M",a.length>2&&a[a.length-1].command==="z"){for(let X=a.length-2;X>=0;X--)if(a[X].command==="M"){u=a[X].points[0]+L,l=a[X].points[1]+H;break}}E.push(u,l),m="l";break}case"M":u=v.shift()||0,l=v.shift()||0,F="M",E.push(u,l),m="L";break;case"h":u+=v.shift()||0,F="L",E.push(u,l);break;case"H":u=v.shift()||0,F="L",E.push(u,l);break;case"v":l+=v.shift()||0,F="L",E.push(u,l);break;case"V":l=v.shift()||0,F="L",E.push(u,l);break;case"C":E.push(v.shift()||0,v.shift()||0,v.shift()||0,v.shift()||0),u=v.shift()||0,l=v.shift()||0,E.push(u,l);break;case"c":E.push(u+(v.shift()||0),l+(v.shift()||0),u+(v.shift()||0),l+(v.shift()||0)),u+=v.shift()||0,l+=v.shift()||0,F="C",E.push(u,l);break;case"S":w=u,O=l,x=a[a.length-1],x.command==="C"&&(w=u+(u-x.points[2]),O=l+(l-x.points[3])),E.push(w,O,v.shift()||0,v.shift()||0),u=v.shift()||0,l=v.shift()||0,F="C",E.push(u,l);break;case"s":w=u,O=l,x=a[a.length-1],x.command==="C"&&(w=u+(u-x.points[2]),O=l+(l-x.points[3])),E.push(w,O,u+(v.shift()||0),l+(v.shift()||0)),u+=v.shift()||0,l+=v.shift()||0,F="C",E.push(u,l);break;case"Q":E.push(v.shift()||0,v.shift()||0),u=v.shift()||0,l=v.shift()||0,E.push(u,l);break;case"q":E.push(u+(v.shift()||0),l+(v.shift()||0)),u+=v.shift()||0,l+=v.shift()||0,F="Q",E.push(u,l);break;case"T":w=u,O=l,x=a[a.length-1],x.command==="Q"&&(w=u+(u-x.points[0]),O=l+(l-x.points[1])),u=v.shift()||0,l=v.shift()||0,F="Q",E.push(w,O,u,l);break;case"t":w=u,O=l,x=a[a.length-1],x.command==="Q"&&(w=u+(u-x.points[0]),O=l+(l-x.points[1])),u+=v.shift()||0,l+=v.shift()||0,F="Q",E.push(w,O,u,l);break;case"A":T=v.shift()||0,R=v.shift()||0,k=v.shift()||0,$=v.shift()||0,M=v.shift()||0,U=u,I=l,u=v.shift()||0,l=v.shift()||0,F="A",E=this.convertEndpointToCenterParameterization(U,I,u,l,$,M,T,R,k);break;case"a":T=v.shift()||0,R=v.shift()||0,k=v.shift()||0,$=v.shift()||0,M=v.shift()||0,U=u,I=l,u+=v.shift()||0,l+=v.shift()||0,F="A",E=this.convertEndpointToCenterParameterization(U,I,u,l,$,M,T,R,k);break}a.push({command:F||m,points:E,start:{x:S,y:B},pathLength:this.calcLength(S,B,F||m,E)})}(m==="z"||m==="Z")&&a.push({command:"z",points:[],start:{x:0,y:0},pathLength:0})}return a}static calcLength(e,n,s,i){let a,o,u,l;const c=x1;switch(s){case"L":return c.getLineLength(e,n,i[0],i[1]);case"C":for(a=0,o=c.getPointOnCubicBezier(0,e,n,i[0],i[1],i[2],i[3],i[4],i[5]),l=.01;l<=1;l+=.01)u=c.getPointOnCubicBezier(l,e,n,i[0],i[1],i[2],i[3],i[4],i[5]),a+=c.getLineLength(o.x,o.y,u.x,u.y),o=u;return a;case"Q":for(a=0,o=c.getPointOnQuadraticBezier(0,e,n,i[0],i[1],i[2],i[3]),l=.01;l<=1;l+=.01)u=c.getPointOnQuadraticBezier(l,e,n,i[0],i[1],i[2],i[3]),a+=c.getLineLength(o.x,o.y,u.x,u.y),o=u;return a;case"A":{a=0;const h=i[4],f=i[5],_=i[4]+f;let p=Math.PI/180;if(Math.abs(h-_)<p&&(p=Math.abs(h-_)),o=c.getPointOnEllipticalArc(i[0],i[1],i[2],i[3],h,0),f<0)for(l=h-p;l>_;l-=p)u=c.getPointOnEllipticalArc(i[0],i[1],i[2],i[3],l,0),a+=c.getLineLength(o.x,o.y,u.x,u.y),o=u;else for(l=h+p;l<_;l+=p)u=c.getPointOnEllipticalArc(i[0],i[1],i[2],i[3],l,0),a+=c.getLineLength(o.x,o.y,u.x,u.y),o=u;return u=c.getPointOnEllipticalArc(i[0],i[1],i[2],i[3],_,0),a+=c.getLineLength(o.x,o.y,u.x,u.y),a}}return 0}static convertEndpointToCenterParameterization(e,n,s,i,a,o,u,l,c){const h=c*(Math.PI/180),f=Math.cos(h)*(e-s)/2+Math.sin(h)*(n-i)/2,_=-1*Math.sin(h)*(e-s)/2+Math.cos(h)*(n-i)/2,p=f*f/(u*u)+_*_/(l*l);p>1&&(u*=Math.sqrt(p),l*=Math.sqrt(p));let m=Math.sqrt((u*u*(l*l)-u*u*(_*_)-l*l*(f*f))/(u*u*(_*_)+l*l*(f*f)));a===o&&(m*=-1),isNaN(m)&&(m=0);const v=m*u*_/l,F=m*-l*f/u,E=(e+s)/2+Math.cos(h)*v-Math.sin(h)*F,S=(n+i)/2+Math.sin(h)*v+Math.cos(h)*F,B=$=>Math.sqrt($[0]*$[0]+$[1]*$[1]),x=($,M)=>($[0]*M[0]+$[1]*M[1])/(B($)*B(M)),w=($,M)=>($[0]*M[1]<$[1]*M[0]?-1:1)*Math.acos(x($,M)),O=w([1,0],[(f-v)/u,(_-F)/l]),T=[(f-v)/u,(_-F)/l],R=[(-1*f-v)/u,(-1*_-F)/l];let k=w(T,R);return x(T,R)<=-1&&(k=Math.PI),x(T,R)>=1&&(k=0),o===0&&k>0&&(k-=2*Math.PI),o===1&&k<0&&(k+=2*Math.PI),[E,S,u,l,O,k,h,o]}toJson(){const e={};return $n.forEach(n=>{this[n]&&(e[n]=this[n])}),{...super.toJson(),...e}}getState(){const{left:e,top:n,width:s,height:i}=this.getRect();return{left:e,top:n,width:s,height:i,scaleX:this.scaleX,scaleY:this.scaleY,angle:this.angle,skewX:this.skewX,skewY:this.skewY,flipX:this.flipX,flipY:this.flipY}}getRect(){const{left:e,top:n,width:s,height:i}=this._getSelfRect();return{left:e*this.scaleX+this.left,top:n*this.scaleY+this.top,width:s*this.scaleX,height:i*this.scaleY}}getLength(){return this._pathLength}getPointAtLength(e){let n,s=0;const i=this.dataArray.length;if(!i)return null;for(;s<i&&e>this.dataArray[s].pathLength;)e-=this.dataArray[s].pathLength,++s;if(s===i)return n=this.dataArray[s-1].points.slice(-2),{x:n[0],y:n[1]};if(e<.01)return n=this.dataArray[s].points.slice(0,2),{x:n[0],y:n[1]};const a=this.dataArray[s],o=a.points;switch(a.command){case"L":return x1.getPointOnLine(e,a.start.x,a.start.y,o[0],o[1]);case"C":return x1.getPointOnCubicBezier(e/a.pathLength,a.start.x,a.start.y,o[0],o[1],o[2],o[3],o[4],o[5]);case"Q":return x1.getPointOnQuadraticBezier(e/a.pathLength,a.start.x,a.start.y,o[0],o[1],o[2],o[3]);case"A":{const u=o[0],l=o[1],c=o[2],h=o[3];let f=o[4];const _=o[5],p=o[6];return f+=_*e/a.pathLength,x1.getPointOnEllipticalArc(u,l,c,h,f,p)}}return null}_draw(e){x1.drawWith(e,this)}_setFixBoundingBox(){const{left:e,top:n,width:s,height:i}=this._getSelfRect(),a=this.width/s,o=this.height/i;this.left=this.left-e*a,this.top=this.top-n*o,this.scaleX=a,this.scaleY=o,this.width=s,this.height=i,this._setTransForm()}_getSelfRect(){if(!this._reCalculateCache)return this._selfRectCache;let e=[];this.dataArray.forEach(c=>{if(c.command==="A"){const h=c.points[4],f=c.points[5],_=c.points[4]+f;let p=Math.PI/180;if(Math.abs(h-_)<p&&(p=Math.abs(h-_)),f<0)for(let m=h-p;m>_;m-=p){const v=x1.getPointOnEllipticalArc(c.points[0],c.points[1],c.points[2],c.points[3],m,0);e.push(v.x,v.y)}else for(let m=h+p;m<_;m+=p){const v=x1.getPointOnEllipticalArc(c.points[0],c.points[1],c.points[2],c.points[3],m,0);e.push(v.x,v.y)}}else if(c.command==="C")for(let h=0;h<=1;h+=.01){const f=x1.getPointOnCubicBezier(h,c.start.x,c.start.y,c.points[0],c.points[1],c.points[2],c.points[3],c.points[4],c.points[5]);e.push(f.x,f.y)}else e=e.concat(c.points)});let n=e[0],s=e[0],i=e[1],a=e[1],o,u;for(let c=0;c<e.length/2;c++)o=e[c*2],u=e[c*2+1],isNaN(o)||(n=Math.min(n,o),s=Math.max(s,o)),isNaN(u)||(i=Math.min(i,u),a=Math.max(a,u));const l={left:n,top:i,width:s-n,height:a-i};return this._selfRectCache=l,l}}var kn=(r=>(r.LEFT="__slideNavigationLeft__",r.RIGHT="__slideNavigationRight__",r))(kn||{});const In="M512 1024C229.248 1024 0 794.752 0 512S229.248 0 512 0s512 229.248 512 512-229.248 512-512 512z m200.746667-478.506667l1.749333-1.664 30.165333-30.165333-330.496-330.581333a42.837333 42.837333 0 0 0-60.288 0 42.538667 42.538667 0 0 0 0 60.330666l270.08 270.165334-270.08 269.952a42.496 42.496 0 0 0 0 60.288c16.64 16.64 43.861333 16.469333 60.288 0.042666l298.581334-298.368z";class Fo extends Q6{constructor(){super(...arguments);d(this,"onSlideChangePageByNavigationObservable",new g.Observable);d(this,"_navigationEnabled",!1)}activeFirstPage(){const n=this.getSubScenes().keys().next().value;n!=null&&this.changePage(n)}addPage(e){const n=e.sceneKey;this.getSubScene(n)==null&&(this.addSubScene(e),this.addNavigation())}changePage(e){e!==null&&(this.removeNavigation(),this.activeSubScene(e),this.addNavigation())}hasPage(e){return this.getSubScene(e)}addNavigation(){const e=this.getActiveSubScene();if(e==null||this._navigationEnabled===!1)return;const n=new x1("__slideNavigationLeft__",{data:In,width:60,height:60,left:90,top:(this.height-30)/2,fill:this._getArrowColor(),flipX:!0}),s=new x1("__slideNavigationRight__",{data:In,width:60,height:60,left:this.width-90,top:(this.height-30)/2,fill:this._getArrowColor()}),i=(o,u)=>{o.setCursor(d1.POINTER),o.setProps({fill:this._getArrowColor(!0)})},a=(o,u)=>{o.setCursor(d1.DEFAULT),o.setProps({fill:this._getArrowColor()})};An(n,i,a),An(s,i,a),this._addNavTrigger(n,s),e.addObjects([n,s],7)}removeNavigation(){var n,s;const e=this.getActiveSubScene();e==null||this._navigationEnabled===!1||((n=e.getObject("__slideNavigationLeft__"))==null||n.dispose(),(s=e.getObject("__slideNavigationRight__"))==null||s.dispose())}enableNav(){this._navigationEnabled=!0}disableNav(){this._navigationEnabled=!1}hiddenNav(){var n,s;const e=this.getActiveSubScene();e==null||this._navigationEnabled===!1||((n=e.getObject("__slideNavigationLeft__"))==null||n.hide(),(s=e.getObject("__slideNavigationRight__"))==null||s.hide())}showNav(){var n,s;const e=this.getActiveSubScene();e==null||this._navigationEnabled===!1||((n=e.getObject("__slideNavigationLeft__"))==null||n.show(),(s=e.getObject("__slideNavigationRight__"))==null||s.show())}renderToThumb(e,n,s=1,i=1){const a=this.getSubScene(n);a!=null&&(e.save(),e.scale(s,i),a.makeDirtyNoParent(!0).render(e),e.restore())}_getSubScenesIndex(e){if(e==null)return;const n=Array.from(this.getSubScenes()),s=n.length;let i=0;for(let u=0;u<s;u++){const[l]=n[u];if(e===l){i=u;break}}let a=i+1,o=i-1;return a=a>=s?0:a,o=o<0?s-1:o,{nextScene:n[a][1],previousScene:n[o][1]}}_addNavTrigger(e,n){e.onPointerDownObserver.add(()=>{var a;const s=this._getSubScenesIndex((a=this.getActiveSubScene())==null?void 0:a.sceneKey),i=s==null?void 0:s.previousScene.sceneKey;this.changePage(i),this.onSlideChangePageByNavigationObservable.notifyObservers(i)}),n.onPointerDownObserver.add(()=>{var a;const s=this._getSubScenesIndex((a=this.getActiveSubScene())==null?void 0:a.sceneKey),i=s==null?void 0:s.nextScene.sceneKey;this.changePage(i),this.onSlideChangePageByNavigationObservable.notifyObservers(i)})}_getArrowColor(e=!1){return e?F1(g.COLORS.white,.8):F1(g.COLORS.white,.5)}}class Co extends ne{constructor(t,e=s=>{},n){super(t),this._render=e,this._isHitCustom=n}toJson(){return{...super.toJson()}}render(t,e){if(!this.visible)return this.makeDirty(!1),this;if(e&&!this.isInGroup){const{top:s,left:i,bottom:a,right:o}=e.viewBound;if(this.width+this.strokeWidth<i||o<0||this.height+this.strokeWidth<s||a<0)return this}const n=this.transform.getMatrix();return t.save(),t.transform(n[0],n[1],n[2],n[3],n[4],n[5]),this._render(t),t.restore(),this.makeDirty(!1),this}isHit(t){return this._isHitCustom?this._isHitCustom(t):super.isHit(t)}}class Ln extends g.Disposable{constructor(){super(...arguments);d(this,"onInputChangedObservable",new g.Observable);d(this,"onTransformChangeObservable",new g.Observable);d(this,"_scenes",{});d(this,"_activeScene",null)}get classType(){return K.ENGINE}get activeScene(){return this._activeScene}get width(){return 0}get height(){return 0}getScenes(){return this._scenes}getScene(e){return this._scenes[e]}hasScene(e){return e in this._scenes}addScene(e){const n=e.sceneKey;return this.hasScene(n)&&console.warn("Scenes has similar key, it will be covered"),this._scenes[n]=e,e}setActiveScene(e){const n=this.getScene(e);return n&&(this._activeScene=n),n}setRemainCapture(){}hasActiveScene(){return this._activeScene!=null}dispose(){super.dispose();const e=this.getScenes();Object.keys(e).forEach(s=>{e[s].dispose()})}remainScene(e){const n=this.getScenes();if(n[e]){const s=n[e];return delete n[e],s}}}class mt extends Ln{constructor(e=1,n=1,s,i){super();d(this,"renderEvenInBackground",!0);d(this,"onBeginFrameObservable",new g.Observable);d(this,"onEndFrameObservable",new g.Observable);d(this,"_container");d(this,"_canvas");d(this,"_canvasEle");d(this,"_renderingQueueLaunched",!1);d(this,"_activeRenderLoops",new Array);d(this,"_renderFunction",()=>{});d(this,"_requestNewFrameHandler",-1);d(this,"_frameId",-1);d(this,"_usingSafari",T0());d(this,"_resizeObserver");d(this,"_fps",60);d(this,"_deltaTime",0);d(this,"_performanceMonitor",new Y0);d(this,"_pointerMoveEvent");d(this,"_pointerDownEvent");d(this,"_pointerUpEvent");d(this,"_pointerBlurEvent");d(this,"_pointerWheelEvent");d(this,"_pointerEnterEvent");d(this,"_pointerLeaveEvent");d(this,"_remainCapture",-1);d(this,"pointer",{});d(this,"_mouseId",-1);d(this,"_isUsingFirefox",navigator.userAgent.indexOf("Firefox")!==-1);d(this,"_previousWidth",-1e3);d(this,"_previousHeight",-1e3);this._canvas=new Ge({mode:i,width:e,height:n,pixelRatio:s}),this._canvasEle=this._canvas.getCanvasEle(),this._handleKeyboardAction(),this._handlePointerAction(),i!==Vt.Printing&&this._matchMediaHandler()}get width(){return this._canvas.getWidth()}get height(){return this._canvas.getHeight()}get requestNewFrameHandler(){return this._requestNewFrameHandler}get frameId(){return this._frameId}setCanvasCursor(e){const n=this.getCanvas().getCanvasEle();n.style.cursor=e}clearCanvas(){this.getCanvas().clear()}getCanvas(){return this._canvas}getCanvasElement(){return this._canvas.getCanvasEle()}setRemainCapture(){try{this._canvasEle.setPointerCapture(this._remainCapture)}catch{console.warn("no capture")}}getPixelRatio(){return this._canvas.getPixelRatio()}setContainer(e,n=!0){var s;if(this._container=e,this._container.appendChild(this._canvasEle),n){this.resize(),(s=this._resizeObserver)==null||s.unobserve(this._container);let i;this._resizeObserver=new ResizeObserver(()=>{i||(i=window.requestIdleCallback(()=>{this.resize(),i=void 0}))}),this._resizeObserver.observe(this._container),this.disposeWithMe(g.toDisposable(()=>{var a;(a=this._resizeObserver)==null||a.unobserve(this._container)}))}}resize(){if(!this._container)return;const{width:e,height:n}=I0(this._container);e===this._previousWidth&&n===this._previousHeight||(this._previousWidth=e,this._previousHeight=n,this.resizeBySize(e,n))}resizeBySize(e,n){const s=this.width,i=this.height;this._canvas.setSize(e,n),this.onTransformChangeObservable.notifyObservers({type:h1.resize,value:{width:e,height:n},preValue:{width:s,height:i}})}dispose(){super.dispose();const e=At();this._canvasEle.removeEventListener(`${e}leave`,this._pointerLeaveEvent),this._canvasEle.removeEventListener(`${e}enter`,this._pointerEnterEvent),this._canvasEle.removeEventListener(`${e}move`,this._pointerMoveEvent),this._canvasEle.removeEventListener(`${e}down`,this._pointerDownEvent),this._canvasEle.removeEventListener(`${e}up`,this._pointerUpEvent),this._canvasEle.removeEventListener("blur",this._pointerBlurEvent),this._canvasEle.removeEventListener(this._getWheelEventName(),this._pointerWheelEvent),this._activeRenderLoops=[],this._canvas.dispose(),this.onBeginFrameObservable.clear(),this.onEndFrameObservable.clear(),this.onTransformChangeObservable.clear()}runRenderLoop(e){this._activeRenderLoops.indexOf(e)===-1&&(this._activeRenderLoops.push(e),this._renderingQueueLaunched||(this._renderingQueueLaunched=!0,this._renderFunction=this._renderLoop.bind(this),this._requestNewFrameHandler=u2(this._renderFunction)))}stopRenderLoop(e){if(!e){this._activeRenderLoops.length=0,this._cancelFrame();return}const n=this._activeRenderLoops.indexOf(e);n>=0&&(this._activeRenderLoops.splice(n,1),this._activeRenderLoops.length===0&&this._cancelFrame())}beginFrame(){this._measureFps(),this.onBeginFrameObservable.notifyObservers(this)}endFrame(){this._frameId++,this.onEndFrameObservable.notifyObservers(this)}getFps(){return this._fps}getDeltaTime(){return this._deltaTime}_renderFrame(){for(let e=0;e<this._activeRenderLoops.length;e++){const n=this._activeRenderLoops[e];n()}}_cancelFrame(){if(this._renderingQueueLaunched&&this._requestNewFrameHandler){if(this._renderingQueueLaunched=!1,typeof window>"u"){if(typeof cancelAnimationFrame=="function")return cancelAnimationFrame(this._requestNewFrameHandler)}else{const{cancelAnimationFrame:e}=this._getHostWindow()||window;if(typeof e=="function")return e(this._requestNewFrameHandler)}return clearTimeout(this._requestNewFrameHandler)}}_getHostWindow(){var e,n;return typeof window>"u"?null:(n=(e=this._canvasEle)==null?void 0:e.ownerDocument)!=null&&n.defaultView?this._canvasEle.ownerDocument.defaultView:window}_renderLoop(){let e=!0;this.renderEvenInBackground||(e=!1),e&&(this.beginFrame(),this._renderFrame(),this.endFrame()),this._activeRenderLoops.length>0?this._requestNewFrameHandler=u2(this._renderFunction):this._renderingQueueLaunched=!1}_measureFps(){this._performanceMonitor.sampleFrame(),this._fps=this._performanceMonitor.averageFPS,this._deltaTime=this._performanceMonitor.instantaneousFrameTime||0}_handleKeyboardAction(){const e=s=>{const i=s;i.deviceType=R1.Keyboard,i.inputIndex=s.keyCode,i.previousState=0,i.currentState=1,this.onInputChangedObservable.notifyObservers(i)},n=s=>{const i=s;i.deviceType=R1.Keyboard,i.inputIndex=s.keyCode,i.previousState=1,i.currentState=0,this.onInputChangedObservable.notifyObservers(i)};this._canvasEle.addEventListener("keydown",e),this._canvasEle.addEventListener("keyup",n)}_handlePointerAction(){const e=At();this._pointerMoveEvent=n=>{const s=this._getPointerType(n),i=this.pointer[W.Horizontal],a=this.pointer[W.Vertical],o=this.pointer[W.DeltaHorizontal],u=this.pointer[W.DeltaVertical];this.pointer[W.Horizontal]=n.clientX,this.pointer[W.Vertical]=n.clientY,this.pointer[W.DeltaHorizontal]=n.movementX,this.pointer[W.DeltaVertical]=n.movementY;const l=n;l.deviceType=s,i!==n.clientX&&(l.inputIndex=W.Horizontal,l.previousState=i,l.currentState=this.pointer[W.Horizontal],this.onInputChangedObservable.notifyObservers(l)),a!==n.clientY&&(l.inputIndex=W.Vertical,l.previousState=a,l.currentState=this.pointer[W.Vertical],this.onInputChangedObservable.notifyObservers(l)),this.pointer[W.DeltaHorizontal]!==0&&(l.inputIndex=W.DeltaHorizontal,l.previousState=o,l.currentState=this.pointer[W.DeltaHorizontal],this.onInputChangedObservable.notifyObservers(l)),this.pointer[W.DeltaVertical]!==0&&(l.inputIndex=W.DeltaVertical,l.previousState=u,l.currentState=this.pointer[W.DeltaVertical],this.onInputChangedObservable.notifyObservers(l)),!this._usingSafari&&n.button!==-1&&(l.inputIndex=n.button+2,l.previousState=this.pointer[n.button+2],this.pointer[n.button+2]=this.pointer[n.button+2]?0:1,l.currentState=this.pointer[n.button+2],this.onInputChangedObservable.notifyObservers(l))},this._pointerDownEvent=n=>{const s=n,i=this._getPointerType(s),a=this.pointer[W.Horizontal],o=this.pointer[W.Vertical],u=this.pointer[s.button+2];i===R1.Mouse?(this._mouseId===-1&&(s.pointerId===void 0?this._mouseId=this._isUsingFirefox?0:1:this._mouseId=s.pointerId),document.pointerLockElement||(this._remainCapture=this._mouseId,this._canvasEle.setPointerCapture(this._mouseId))):s.pointerId&&!document.pointerLockElement&&(this._remainCapture=s.pointerId,this._canvasEle.setPointerCapture(s.pointerId)),this.pointer[W.Horizontal]=s.clientX,this.pointer[W.Vertical]=s.clientY,this.pointer[s.button+2]=1;const l=s;l.deviceType=i,a!==s.clientX&&(l.inputIndex=W.Horizontal,l.previousState=a,l.currentState=this.pointer[W.Horizontal],this.onInputChangedObservable.notifyObservers(l)),o!==s.clientY&&(l.inputIndex=W.Vertical,l.previousState=o,l.currentState=this.pointer[W.Vertical],this.onInputChangedObservable.notifyObservers(l)),l.inputIndex=s.button+2,l.previousState=u,l.currentState=this.pointer[s.button+2],this.onInputChangedObservable.notifyObservers(l)},this._pointerUpEvent=n=>{const s=n,i=this._getPointerType(s),a=this.pointer[W.Horizontal],o=this.pointer[W.Vertical],u=this.pointer[s.button+2];this.pointer[W.Horizontal]=s.clientX,this.pointer[W.Vertical]=s.clientY,this.pointer[s.button+2]=0;const l=s;l.deviceType=i,a!==s.clientX&&(l.inputIndex=W.Horizontal,l.previousState=a,l.currentState=this.pointer[W.Horizontal],this.onInputChangedObservable.notifyObservers(l)),o!==s.clientY&&(l.inputIndex=W.Vertical,l.previousState=o,l.currentState=this.pointer[W.Vertical],this.onInputChangedObservable.notifyObservers(l)),l.inputIndex=s.button+2,l.previousState=u,l.currentState=this.pointer[s.button+2],i===R1.Mouse&&this._mouseId>=0&&this._canvasEle.hasPointerCapture(this._mouseId)?(this._remainCapture=this._mouseId,this._canvasEle.releasePointerCapture(this._mouseId)):l.pointerId&&this._canvasEle.hasPointerCapture(l.pointerId)&&(this._remainCapture=l.pointerId,this._canvasEle.releasePointerCapture(l.pointerId)),this.onInputChangedObservable.notifyObservers(l),i!==R1.Mouse&&(this.pointer={})},this._pointerEnterEvent=n=>{const s=this._getPointerType(n),i=n;i.deviceType=s,i.currentState=2,this.onInputChangedObservable.notifyObservers(i)},this._pointerLeaveEvent=n=>{const s=this._getPointerType(n),i=n;i.deviceType=s,i.currentState=3,this.onInputChangedObservable.notifyObservers(i)},this._pointerBlurEvent=n=>{this._mouseId>=0&&this._canvasEle.hasPointerCapture(this._mouseId)&&(this._canvasEle.releasePointerCapture(this._mouseId),this._remainCapture=this._mouseId,this._mouseId=-1),this.pointer={}},this._pointerWheelEvent=n=>{const s=R1.Mouse,i=this.pointer[W.MouseWheelX],a=this.pointer[W.MouseWheelY],o=this.pointer[W.MouseWheelZ];this.pointer[W.MouseWheelX]=n.deltaX||0,this.pointer[W.MouseWheelY]=n.deltaY||n.wheelDelta||0,this.pointer[W.MouseWheelZ]=n.deltaZ||0;const u=n;u.deviceType=s,this.pointer[W.MouseWheelX]!==0&&(u.inputIndex=W.MouseWheelX,u.previousState=i,u.currentState=this.pointer[W.MouseWheelX],this.onInputChangedObservable.notifyObservers(u)),this.pointer[W.MouseWheelY]!==0&&(u.inputIndex=W.MouseWheelY,u.previousState=a,u.currentState=this.pointer[W.MouseWheelY],this.onInputChangedObservable.notifyObservers(u)),this.pointer[W.MouseWheelZ]!==0&&(u.inputIndex=W.MouseWheelZ,u.previousState=o,u.currentState=this.pointer[W.MouseWheelZ],this.onInputChangedObservable.notifyObservers(u))},this._canvasEle.addEventListener(`${e}enter`,this._pointerEnterEvent),this._canvasEle.addEventListener(`${e}leave`,this._pointerLeaveEvent),this._canvasEle.addEventListener(`${e}move`,this._pointerMoveEvent),this._canvasEle.addEventListener(`${e}down`,this._pointerDownEvent),this._canvasEle.addEventListener(`${e}up`,this._pointerUpEvent),this._canvasEle.addEventListener("blur",this._pointerBlurEvent),this._canvasEle.addEventListener(this._getWheelEventName(),this._pointerWheelEvent,this._getPassive()?{passive:!1}:!1)}_getWheelEventName(){return"onwheel"in document.createElement("div")?"wheel":document.onmousewheel!==void 0?"mousewheel":"DOMMouseScroll"}_getPassive(){let e=!1;const n=()=>{};try{const s={passive:{get(){e=!0}}};this._canvasEle.addEventListener("test",n,s),this._canvasEle.removeEventListener("test",n,s)}catch{}return e}_getPointerType(e){let n=R1.Mouse;return(e.pointerType==="touch"||e.pointerType==="pen"||e.touches)&&(n=R1.Touch),n}_matchMediaHandler(){if(!(window!=null&&window.matchMedia))return;const e=window.matchMedia(`(resolution: ${window.devicePixelRatio}dppx)`),n=()=>{this.resize()};e.addEventListener("change",n),this.disposeWithMe(g.toDisposable(()=>{e.removeEventListener("change",n)}))}}class Mn extends ne{constructor(e,...n){super(e);d(this,"_objects",[]);this.addObjects(...n)}get classType(){return K.GROUP}set cursor(e){this.setCursor(e)}addObjects(...e){for(const n of e)this.addObject(n)}addObject(e){let n=e;if($t(e)){const s=this.getScene();if(n=s==null?void 0:s.getObject(e),!n)return;n.parent=this,n.isInGroup=!0,n.groupKey=this.oKey,this._objects.push(n)}else e.parent=this,e.isInGroup=!0,e.groupKey=this.oKey,this._objects.push(e)}removeObject(e){const n=this.getObjects(),s=n.length;if($t(e))for(let i=0;i<s;i++){const a=n[i];if(a.oKey===e){n.splice(i,1),this.parent.removeObject(a);return}}else for(let i=0;i<s;i++){const a=n[i];if(a===e){n.splice(i,1),this.parent.removeObject(a);return}}}getObjectsByOrder(){const e=[];this._objects.sort(g.sortRules);for(const n of this._objects)!n.isInGroup&&n.visible&&e.push(n);return e}getObjects(){return this._objects}render(e,n){e.save();const s=this.transform.getMatrix();e.transform(s[0],s[1],s[2],s[3],s[4],s[5]),this._objects.sort(g.sortRules);for(const i of this._objects)i.render(e,this._transformBounds(n));e.restore()}resize(e,n){return this}scale(e,n){return this}skew(e,n){return this}flip(e,n){return this}isHit(e){return!0}pick(e){}dispose(){this.getObjects().forEach(e=>{e.dispose()}),super.dispose()}_transformBounds(e){return e}}class Pn extends g.Disposable{constructor(e,n=[],s=1,i=!1){super();d(this,"_objects",[]);d(this,"_cacheCanvas");d(this,"_dirty",!0);this._scene=e,this._zIndex=s,this._allowCache=i,this.addObjects(n),this._allowCache&&this._initialCacheCanvas()}get scene(){return this._scene}get zIndex(){return this._zIndex}enableCache(){this._allowCache=!0,this._initialCacheCanvas()}disableCache(){var e;this._allowCache=!1,(e=this._cacheCanvas)==null||e.dispose(),this._cacheCanvas=null}isAllowCache(){return this._allowCache}getObjectsByOrder(){const e=[];this._objects.sort(g.sortRules);for(const n of this._objects)!n.isInGroup&&n.visible&&e.push(n);return e}getObjectsByOrderForPick(){const e=[];this._objects.sort(g.sortRules);for(const n of this._objects)n.classType!==K.GROUP&&n.visible&&e.push(n);return e}getObjects(){return this._objects}addObject(e){if(e.classType===K.GROUP){const n=e.getObjects();for(const s of n)this.scene.getObject(s.oKey)||(this._objects.push(s),this.scene.setObjectBehavior(s),this._layerBehavior(s))}return this._objects.push(e),this.scene.setObjectBehavior(e),this._layerBehavior(e),this.scene.applyTransformer(e),this}removeObject(e){const n=this.getObjects(),s=n.length;if(e instanceof ne){for(let i=0;i<s;i++)if(n[i]===e){n.splice(i,1);return}}else for(let i=0;i<s;i++)if(n[i].oKey===e){n.splice(i,1);return}}addObjects(e){return e.forEach(n=>{this.addObject(n)}),this}removeObjects(e){const n=this.getObjects(),s=n.length;for(let i=s-1;i>=0;i--){let a=n[i];const o=e.length;if(o===0)break;for(let u=0;u<o;u++){const l=e[u];if(a=l instanceof ne?a:a.oKey,a===l){n.splice(i,1);break}}}}makeDirty(e=!0){this._dirty=e;const n=this.scene.getParent();return n.classType===K.SCENE_VIEWER&&n.makeDirty(!0),this}isDirty(){return this._dirty}render(e,n=!1){var i;const s=e||((i=this._scene.getEngine())==null?void 0:i.getCanvas().getContext());if(this._allowCache&&this._cacheCanvas){if(this.isDirty()){const a=this._cacheCanvas.getContext();this._cacheCanvas.clear(),a.save(),a.setTransform(s.getTransform()),this._draw(a,n),a.restore()}this._applyCache(s)}else s.save(),this._draw(s,n),s.restore();return this.makeDirty(!1),this}_layerBehavior(e){this.disposeWithMe(g.toDisposable(e.onTransformChangeObservable.add(()=>{this.makeDirty(!0)}))),e.layer=this}_initialCacheCanvas(){this._cacheCanvas=new Ge,this.disposeWithMe(g.toDisposable(this._scene.getEngine().onTransformChangeObservable.add(()=>{this._resizeCacheCanvas()})))}_draw(e,n){var s;(s=this._scene.getViewports())==null||s.forEach(i=>i.render(e,this.getObjectsByOrder(),n))}_applyCache(e){if(!e||this._cacheCanvas==null)return;const n=this._cacheCanvas.getWidth(),s=this._cacheCanvas.getHeight();e.drawImage(this._cacheCanvas.getCanvasEle(),0,0,n,s)}_resizeCacheCanvas(){var n;const e=this._scene.getEngine();(n=this._cacheCanvas)==null||n.setSize(e.width,e.height),this.makeDirty(!0)}clear(){this._objects=[]}dispose(){var e;super.dispose(),this.getObjects().forEach(n=>{n.dispose()}),this.clear(),(e=this._cacheCanvas)==null||e.dispose()}}var Nn=(r=>(r[r.NONE=0]="NONE",r[r.X=1]="X",r[r.Y=2]="Y",r[r.ALL=3]="ALL",r))(Nn||{});class Qe{constructor(t,e=3,n,s=.4,i=.1){d(this,"_requestNewFrameNumber",-1);d(this,"_viewport");d(this,"_offsetX",0);d(this,"_offsetY",0);d(this,"_moveX",0);d(this,"_moveY",0);d(this,"_scrollX",0);d(this,"_scrollY",0);d(this,"_scrollFunction");this._scene=t,this._scrollTimerType=e,this._padding=n,this._smoothRatioX=s,this._smoothRatioY=i,this._padding||(this._padding={t:0,b:15,l:0,r:60})}static create(t,e=3,n){return new Qe(t,e,n)}set scrollTimerType(t){this._scrollTimerType=t}get scrollTimerType(){return this._scrollTimerType}setActiveViewport(t){this._viewport=t}getActiveViewport(){return this._viewport}startScroll(t,e,n){this._offsetX=t,this._offsetY=e,this._moveX=t,this._moveY=e,n!=null?this._viewport=n:this._viewport=this.getViewportByCoord(this._scene),this._runRenderLoop()}_scroll(t){const e=(t==null?void 0:t.top)||0,n=e+((t==null?void 0:t.height)||0),s=(t==null?void 0:t.left)||0,i=s+((t==null?void 0:t.width)||0),{t:a=0,b:o=0,r:u=0,l=0}=this._padding;let c=0,h=0,f=!1;if(this._scrollTimerType&1&&(this._moveX<s+l&&(c=(this._moveX-s-l)*this._smoothRatioX,f=!0),this._moveX>i-u&&(c=(this._moveX-i+u)*this._smoothRatioX,f=!0)),this._scrollTimerType&2&&(this._moveY<e+a&&(h=(this._moveY-e-a)*this._smoothRatioY,f=!0),this._moveY>n-o&&(h=(this._moveY-n+o)*this._smoothRatioY,f=!0)),!f)return;const _=t==null?void 0:t.scrollBy({x:c,y:h}),p=t==null?void 0:t.getActualScroll(c,h);if(this._scrollX=(p==null?void 0:p.x)||0,this._scrollY=(p==null?void 0:p.y)||0,_){const m=this._findAncestorScene(t==null?void 0:t.scene),v=this.getViewportByCoord(m);v&&this._scroll(v)}}scrolling(t,e,n){this._moveX=t,this._moveY=e,this._scrollFunction=n}stopScroll(){E0(this._requestNewFrameNumber)}dispose(){this.stopScroll(),delete this._scrollFunction}getViewportByCoord(t){return t==null?void 0:t.getActiveViewportByRelativeCoord(P.FromArray([this._offsetX,this._offsetY]))}getScene(){return this._scene}_runRenderLoop(){this._scroll(this._viewport),this._scrollFunction&&this._scrollFunction(this._scrollX,this._scrollY),this._requestNewFrameNumber=u2(this._runRenderLoop.bind(this))}_findAncestorScene(t){let e=t==null?void 0:t.getParent();for(;e;){if(e.classType===K.SCENE)return e;e=(e==null?void 0:e.getParent)&&(e==null?void 0:e.getParent())}}}const Un=["radius"];class L1 extends $e{constructor(e,n){super(e,n);d(this,"_radius",0);n!=null&&n.radius&&(this._radius=n.radius)}get radius(){return this._radius}static drawWith(e,n){let{radius:s,width:i,height:a}=n;if(s=s!=null?s:0,i=i!=null?i:30,a=a!=null?a:30,e.beginPath(),n.strokeDashArray&&e.setLineDash(n.strokeDashArray),!s)e.rect(0,0,i,a);else{let o=0,u=0,l=0,c=0;o=u=l=c=Math.min(s,i/2,a/2),e.moveTo(o,0),e.lineTo(i-u,0),e.arc(i-u,u,u,Math.PI*3/2,0,!1),e.lineTo(i,a-c),e.arc(i-c,a-c,c,0,Math.PI/2,!1),e.lineTo(l,a),e.arc(l,a-l,l,Math.PI/2,Math.PI,!1),e.lineTo(0,o),e.arc(o,o,o,Math.PI,Math.PI*3/2,!1)}e.closePath(),this._renderPaintInOrder(e,n)}toJson(){const e={};return Un.forEach(n=>{this[n]&&(e[n]=this[n])}),{...super.toJson(),...e}}_draw(e){L1.drawWith(e,this)}}const Eo=["__SpreadsheetTransformerResizeLT__","__SpreadsheetTransformerResizeCT__","__SpreadsheetTransformerResizeRT__","__SpreadsheetTransformerResizeLM__","__SpreadsheetTransformerResizeRM__","__SpreadsheetTransformerResizeLB__","__SpreadsheetTransformerResizeCB__","__SpreadsheetTransformerResizeRB__"];class So extends g.Disposable{constructor(e,n){super();d(this,"hoverEnabled",!1);d(this,"hoverEnterFunc");d(this,"hoverLeaveFunc");d(this,"resizeEnabled",!0);d(this,"rotateEnabled",!0);d(this,"rotationSnaps",[]);d(this,"rotationSnapTolerance",5);d(this,"rotateAnchorOffset",50);d(this,"rotateSize",10);d(this,"rotateCornerRadius",10);d(this,"borderEnabled",!0);d(this,"borderStroke","rgb(97, 97, 97)");d(this,"borderStrokeWidth",1);d(this,"borderDash",[]);d(this,"borderSpacing",10);d(this,"anchorFill","rgb(255,255,255)");d(this,"anchorStroke","rgb(185,185,185)");d(this,"anchorStrokeWidth",1);d(this,"anchorSize",10);d(this,"anchorCornerRadius",10);d(this,"keepRatio",!0);d(this,"centeredScaling",!1);d(this,"enabledAnchors",[1,1,1,1,1,1,1,1]);d(this,"flipEnabled",!1);d(this,"ignoreStroke",!1);d(this,"boundBoxFunc");d(this,"useSingleNodeRotation",!1);d(this,"shouldOverdrawWholeArea",!1);d(this,"onChangeStartObservable",new g.Observable);d(this,"onChangingObservable",new g.Observable);d(this,"onChangeEndObservable",new g.Observable);d(this,"onClearControlObservable",new g.Observable);d(this,"onCreateControlObservable",new g.Observable);d(this,"_startOffsetX",-1);d(this,"_startOffsetY",-1);d(this,"_viewportScrollX",-1);d(this,"_viewportScrollY",-1);d(this,"_moveObserver");d(this,"_upObserver");d(this,"_cancelFocusObserver");d(this,"_transformerControlMap",new Map);d(this,"_selectedObjectMap",new Map);this._scene=e,this._initialProps(n)}getScene(){return this._scene}hideControl(){this._hideControl()}attachTo(e){if(e.isTransformer)return this.hoverEnabled&&(this.hoverEnterFunc&&e.onPointerEnterObserver.add(this.hoverEnterFunc),this.hoverLeaveFunc&&e.onPointerLeaveObserver.add(this.hoverLeaveFunc)),this.disposeWithMe(g.toDisposable(e.onPointerDownObserver.add((n,s)=>{const{offsetX:i,offsetY:a}=n;this._startOffsetX=i,this._startOffsetY=a;const o=this._getTopScene();if(!o)return;this._addCancelObserver(o),o.disableEvent();const u=Qe.create(o);u.startScroll(i,a);const{scrollX:l,scrollY:c}=He(u);this._viewportScrollX=l,this._viewportScrollY=c,this._updateActiveObjectList(e,n),this._moveObserver=o.onPointerMoveObserver.add(h=>{const{offsetX:f,offsetY:_}=h;this._moving(f,_,u),this._hideControl(),u.scrolling(f,_,()=>{this._moving(f,_,u)})}),this._upObserver=o.onPointerUpObserver.add(()=>{o.onPointerMoveObserver.remove(this._moveObserver),o.onPointerUpObserver.remove(this._upObserver),o.enableEvent(),this._updateControl(),u.dispose(),this.onChangeEndObservable.notifyObservers({objects:this._selectedObjectMap,type:2})}),s.stopPropagation()}))),e}dispose(){var e,n,s;(e=this._moveObserver)==null||e.dispose(),(n=this._upObserver)==null||n.dispose(),(s=this._cancelFocusObserver)==null||s.dispose(),this._moveObserver=null,this._upObserver=null,this._cancelFocusObserver=null,this._transformerControlMap.forEach(i=>{i.dispose()}),this._selectedObjectMap.forEach(i=>{i.dispose()}),this.onChangeStartObservable.clear(),this.onChangingObservable.clear(),this.onChangeEndObservable.clear()}_initialProps(e){if(!e)return;const n=Object.keys(e);n.length!==0&&n.forEach(s=>{if(e[s]===void 0)return!0;this[s]=e[s]})}_updateControlChildren(){this._updateControlIterator((e,n)=>{const{left:s,top:i,width:a,height:o,scaleX:u,scaleY:l}=n.getState();e.getObjects().forEach(h=>{const f=h.oKey,_=this._checkTransformerType(f);if(!_)return!0;if(_==="__SpreadsheetTransformerOutline__")h.transformByState(this._getOutlinePosition(a,o,u,l));else{const{left:p,top:m}=this._getRotateAnchorPosition(_,o,a);h.transformByState({left:p,top:m})}}),e.transformByState({left:s,top:i})})}_anchorMoving(e,n,s,i){const{scrollX:a,scrollY:o}=He(i),u=n-this._viewportScrollX+a,l=s-this._viewportScrollY+o,c=u-this._startOffsetX,h=l-this._startOffsetY;this._selectedObjectMap.forEach(f=>{const{left:_,top:p,width:m,height:v}=f,F={};switch(e){case"__SpreadsheetTransformerResizeLT__":F.left=_+c,F.top=p+h,F.width=m-c,F.height=v-h;break;case"__SpreadsheetTransformerResizeCT__":F.top=p+h,F.height=v-h;break;case"__SpreadsheetTransformerResizeRT__":F.top=p+h,F.width=m+c,F.height=v-h;break;case"__SpreadsheetTransformerResizeLM__":F.left=_+c,F.width=m-c;break;case"__SpreadsheetTransformerResizeRM__":F.width=c+m;break;case"__SpreadsheetTransformerResizeLB__":F.left=_+c,F.width=m-c,F.height=v+h;break;case"__SpreadsheetTransformerResizeCB__":F.height=h+v;break;case"__SpreadsheetTransformerResizeRB__":F.width=c+m,F.height=h+v;break}f.transformByState(F)}),this._updateControlChildren(),this.onChangingObservable.notifyObservers({objects:this._selectedObjectMap,moveX:c,moveY:h,type:1}),this._startOffsetX=u,this._startOffsetY=l}_attachEventToAnchor(e,n="__SpreadsheetTransformerResizeLT__"){this.disposeWithMe(g.toDisposable(e.onPointerDownObserver.add((s,i)=>{const{offsetX:a,offsetY:o}=s;this._startOffsetX=a,this._startOffsetY=o;const u=this._getTopScene();if(u==null)return;u.disableEvent();const l=Qe.create(u);l.startScroll(a,o);const{scrollX:c,scrollY:h}=He(l);this._viewportScrollX=c,this._viewportScrollY=h;const f=this._getRotateAnchorCursor(n);this._moveObserver=u.onPointerMoveObserver.add(_=>{const{offsetX:p,offsetY:m}=_;this._anchorMoving(n,p,m,l),l.scrolling(p,m,()=>{this._anchorMoving(n,p,m,l)}),u.setCursor(f)}),this._upObserver=u.onPointerUpObserver.add(()=>{u.onPointerMoveObserver.remove(this._moveObserver),u.onPointerUpObserver.remove(this._upObserver),u.enableEvent(),u.resetCursor(),l.dispose(),this.onChangeEndObservable.notifyObservers({objects:this._selectedObjectMap,type:2})}),i.stopPropagation()})))}_attachEventToRotate(e){this.disposeWithMe(g.toDisposable(e.onPointerDownObserver.add((n,s)=>{const{offsetX:i,offsetY:a}=n;this._startOffsetX=i,this._startOffsetY=a;const o=this._getTopScene();o!=null&&(o.disableEvent(),this._viewportScrollX=scrollX,this._viewportScrollY=scrollY,this._upObserver=o.onPointerUpObserver.add(()=>{o.onPointerMoveObserver.remove(this._moveObserver),o.onPointerUpObserver.remove(this._upObserver),o.enableEvent()}),s.stopPropagation())})))}_getOutlinePosition(e,n,s,i){return{left:-this.borderSpacing-this.borderStrokeWidth,top:-this.borderSpacing-this.borderStrokeWidth,width:e+this.borderSpacing*2,height:n+this.borderSpacing*2}}_getRotateAnchorCursor(e){let n=d1.NORTH_WEST_RESIZE;switch(e){case"__SpreadsheetTransformerRotate__":n=d1.MOVE;break;case"__SpreadsheetTransformerRotateLine__":n=d1.MOVE;break;case"__SpreadsheetTransformerResizeLT__":break;case"__SpreadsheetTransformerResizeCT__":n=d1.NORTH_RESIZE;break;case"__SpreadsheetTransformerResizeRT__":n=d1.NORTH_EAST_RESIZE;break;case"__SpreadsheetTransformerResizeLM__":n=d1.WEST_RESIZE;break;case"__SpreadsheetTransformerResizeRM__":n=d1.EAST_RESIZE;break;case"__SpreadsheetTransformerResizeLB__":n=d1.SOUTH_WEST_RESIZE;break;case"__SpreadsheetTransformerResizeCB__":n=d1.SOUTH_RESIZE;break;case"__SpreadsheetTransformerResizeRB__":n=d1.SOUTH_EAST_RESIZE;break}return n}_getRotateAnchorPosition(e,n,s){let i=-this.anchorSize/2,a=-this.anchorSize/2;switch(e){case"__SpreadsheetTransformerRotate__":i=s/2-this.rotateSize/2,a=-this.rotateAnchorOffset-this.borderSpacing-this.borderStrokeWidth*2-this.rotateSize;break;case"__SpreadsheetTransformerRotateLine__":i=s/2,a=-this.rotateAnchorOffset-this.borderSpacing-this.borderStrokeWidth;break;case"__SpreadsheetTransformerResizeLT__":i+=-this.borderSpacing-this.borderStrokeWidth,a+=-this.borderSpacing-this.borderStrokeWidth;break;case"__SpreadsheetTransformerResizeCT__":i+=s/2,a+=-this.borderSpacing-this.borderStrokeWidth;break;case"__SpreadsheetTransformerResizeRT__":i+=s+this.borderSpacing-this.borderStrokeWidth,a+=-this.borderSpacing-this.borderStrokeWidth;break;case"__SpreadsheetTransformerResizeLM__":i+=-this.borderSpacing-this.borderStrokeWidth,a+=n/2;break;case"__SpreadsheetTransformerResizeRM__":i+=s+this.borderSpacing-this.borderStrokeWidth,a+=n/2;break;case"__SpreadsheetTransformerResizeLB__":i+=-this.borderSpacing-this.borderStrokeWidth,a+=n+this.borderSpacing-this.borderStrokeWidth;break;case"__SpreadsheetTransformerResizeCB__":i+=s/2,a+=n+this.borderSpacing-this.borderStrokeWidth;break;case"__SpreadsheetTransformerResizeRB__":i+=s+this.borderSpacing-this.borderStrokeWidth,a+=n+this.borderSpacing-this.borderStrokeWidth;break}return{left:i,top:a}}_createResizeAnchor(e,n,s){const{height:i,width:a,scaleX:o,scaleY:u}=n.getState(),{left:l,top:c}=this._getRotateAnchorPosition(e,i,a),h=this._getRotateAnchorCursor(e),f=new L1(`${e}_${s}`,{zIndex:s-1,fill:this.anchorFill,stroke:this.anchorStroke,strokeWidth:this.anchorStrokeWidth,width:this.anchorSize,height:this.anchorSize,radius:this.anchorCornerRadius,left:l,top:c});return this._attachHover(f,h,d1.DEFAULT),f}_checkTransformerType(e){if(e.indexOf("__SpreadsheetTransformerOutline__")>-1)return"__SpreadsheetTransformerOutline__";if(e.indexOf("__SpreadsheetTransformerRotate__")>-1)return"__SpreadsheetTransformerRotate__";if(e.indexOf("__SpreadsheetTransformerRotateLine__")>-1)return"__SpreadsheetTransformerRotateLine__";if(e.indexOf("__SpreadsheetTransformerResizeLT__")>-1)return"__SpreadsheetTransformerResizeLT__";if(e.indexOf("__SpreadsheetTransformerResizeCT__")>-1)return"__SpreadsheetTransformerResizeCT__";if(e.indexOf("__SpreadsheetTransformerResizeRT__")>-1)return"__SpreadsheetTransformerResizeRT__";if(e.indexOf("__SpreadsheetTransformerResizeLM__")>-1)return"__SpreadsheetTransformerResizeLM__";if(e.indexOf("__SpreadsheetTransformerResizeRM__")>-1)return"__SpreadsheetTransformerResizeRM__";if(e.indexOf("__SpreadsheetTransformerResizeLB__")>-1)return"__SpreadsheetTransformerResizeLB__";if(e.indexOf("__SpreadsheetTransformerResizeCB__")>-1)return"__SpreadsheetTransformerResizeCB__";if(e.indexOf("__SpreadsheetTransformerResizeRB__")>-1)return"__SpreadsheetTransformerResizeRB__"}_updateControlIterator(e){this._transformerControlMap.forEach((n,s)=>{const i=this._selectedObjectMap.get(s);if(!i)return!0;e(n,i)})}_updateControl(){this._updateControlIterator((e,n)=>{const{left:s,top:i}=n.getState();e.transformByState({left:s,top:i}),e.show(),e.makeDirty(!0)})}_hideControl(){this._transformerControlMap.forEach(e=>{e.hide(),e.makeDirty(!0)})}_attachHover(e,n,s){this.disposeWithMe(g.toDisposable(e.onPointerEnterObserver.add(()=>{e.cursor=n}))),this.disposeWithMe(g.toDisposable(e.onPointerLeaveObserver.add(()=>{e.cursor=s})))}_clearControl(){this._transformerControlMap.forEach(e=>{e.dispose()}),this._transformerControlMap.clear(),this.onClearControlObservable.notifyObservers(null)}_createControl(e){const{left:n,top:s,height:i,width:a,angle:o,scaleX:u,scaleY:l,skewX:c,skewY:h,flipX:f,flipY:_}=e.getState(),p=e.oKey,m=this._selectedObjectMap.size,v=[];if(this.borderEnabled){const S=new L1(`__SpreadsheetTransformerOutline___${m}`,{zIndex:m-1,evented:!1,strokeWidth:this.borderStrokeWidth,stroke:this.borderStroke,...this._getOutlinePosition(a,i,u,l)});v.push(S)}if(this.resizeEnabled){const{left:S,top:B}=this._getRotateAnchorPosition("__SpreadsheetTransformerRotateLine__",i,a),x=new L1(`__SpreadsheetTransformerRotateLine___${m}`,{zIndex:m-1,evented:!1,left:S,top:B,height:this.rotateAnchorOffset,width:1,strokeWidth:this.borderStrokeWidth,stroke:this.borderStroke}),{left:w,top:O}=this._getRotateAnchorPosition("__SpreadsheetTransformerRotate__",i,a),T=this._getRotateAnchorCursor("__SpreadsheetTransformerRotate__"),R=new L1(`__SpreadsheetTransformerRotate___${m}`,{zIndex:m-1,left:w,top:O,height:this.rotateSize,width:this.rotateSize,radius:this.rotateCornerRadius,strokeWidth:this.borderStrokeWidth*2,stroke:this.borderStroke});this._attachEventToRotate(R),this._attachHover(R,T,d1.DEFAULT),v.push(x,R)}if(this.resizeEnabled)for(let S=0,B=this.enabledAnchors.length;S<B;S++){if(this.enabledAnchors[S]!==1)continue;const w=Eo[S],O=this._createResizeAnchor(w,e,m);this._attachEventToAnchor(O,w),v.push(O)}const F=new Mn(`__SpreadsheetTransformer___${m}`,...v);return F.zIndex=m,F.evented=!1,F.transformByState({left:n,top:s}),this.getScene().addObject(F,2),this._transformerControlMap.set(p,F),this.onCreateControlObservable.notifyObservers(F),F}_getTopScene(){var n;return(n=this.getScene().getEngine())==null?void 0:n.activeScene}_moving(e,n,s){const{scrollX:i,scrollY:a}=He(s),o=e-this._viewportScrollX+i,u=n-this._viewportScrollY+a,l=o-this._startOffsetX,c=u-this._startOffsetY;this._selectedObjectMap.forEach(h=>{h.translate(l+h.left,c+h.top)}),this.onChangingObservable.notifyObservers({objects:this._selectedObjectMap,moveX:l,moveY:c,type:1}),this._startOffsetX=o,this._startOffsetY=u}_updateActiveObjectList(e,n){this._selectedObjectMap.has(e.oKey)||(n.ctrlKey||(this._selectedObjectMap.clear(),this._clearControl()),this._selectedObjectMap.set(e.oKey,e),this._createControl(e))}_addCancelObserver(e){e.onPointerDownObserver.remove(this._cancelFocusObserver),this._cancelFocusObserver=e.onPointerDownObserver.add(()=>{this._selectedObjectMap.clear(),this._clearControl(),e.onPointerDownObserver.remove(this._cancelFocusObserver)})}}const G1=class G1 extends g.Disposable{constructor(e){super();d(this,"_alreadyAttached",!1);d(this,"_onInputObserver");d(this,"_onPointerMove");d(this,"_onPointerDown");d(this,"_onPointerUp");d(this,"_onPointerEnter");d(this,"_onPointerLeave");d(this,"_onMouseWheel");d(this,"_onKeyDown");d(this,"_onKeyUp");d(this,"_scene");d(this,"_currentMouseEnterPicked");d(this,"_startingPosition",new P(Number.POSITIVE_INFINITY,Number.POSITIVE_INFINITY));d(this,"_delayedTimeout",-1);d(this,"_delayedTripeTimeout",-1);d(this,"_doubleClickOccurred",0);d(this,"_tripleClickState",!1);d(this,"_currentObject");this._scene=e}mouseLeaveEnterHandler(e){var s;const n=this._currentObject;if(n==null)(s=this._currentMouseEnterPicked)==null||s.triggerPointerLeave(e),this._currentMouseEnterPicked=null;else if(n!==this._currentMouseEnterPicked){const i=this._currentMouseEnterPicked;this._currentMouseEnterPicked=n,i==null||i.triggerPointerLeave(e),n==null||n.triggerPointerEnter(e)}}attachControl(e=!0,n=!0,s=!0,i=!0,a=!0,o=!0){const u=this._scene.getEngine();u&&(this._onPointerEnter=l=>{var c;l.pointerId===void 0&&(l.pointerId=0),this._currentObject=this._getCurrentObject(l.offsetX,l.offsetY),(c=this._currentObject)==null||c.triggerPointerMove(l),this.mouseLeaveEnterHandler(l)},this._onPointerLeave=l=>{l.pointerId===void 0&&(l.pointerId=0),this._currentObject=null,this.mouseLeaveEnterHandler(l)},this._onPointerMove=l=>{var h;l.pointerId===void 0&&(l.pointerId=0),this._currentObject=this._getCurrentObject(l.offsetX,l.offsetY);const c=(h=this._currentObject)==null?void 0:h.triggerPointerMove(l);this.mouseLeaveEnterHandler(l),this._checkDirectSceneEventTrigger(!c,this._currentObject)&&this._scene.onPointerMoveObserver.hasObservers()&&this._scene.onPointerMoveObserver.notifyObservers(l)},this._onPointerDown=l=>{l.pointerId===void 0&&(l.pointerId=0);const c=this._getCurrentObject(l.offsetX,l.offsetY),h=c==null?void 0:c.triggerPointerDown(l);this._checkDirectSceneEventTrigger(!h,c)&&this._scene.onPointerDownObserver.hasObservers()&&this._scene.onPointerDownObserver.notifyObservers(l)},this._onPointerUp=l=>{l.pointerId===void 0&&(l.pointerId=0);const c=this._getCurrentObject(l.offsetX,l.offsetY),h=c==null?void 0:c.triggerPointerUp(l);this._checkDirectSceneEventTrigger(!h,c)&&this._scene.onPointerUpObserver.hasObservers()&&this._scene.onPointerUpObserver.notifyObservers(l),this._prePointerDoubleOrTripleClick(l)},this._onMouseWheel=l=>{const c=this._getCurrentObject(l.offsetX,l.offsetY),h=c==null?void 0:c.triggerMouseWheel(l);this._scene.getViewports().forEach(f=>{f.onMouseWheelObserver.hasObservers()&&f.onMouseWheelObserver.notifyObservers(l)}),this._checkDirectSceneEventTrigger(!h,c)&&this._scene.onMouseWheelObserver.hasObservers()&&this._scene.onMouseWheelObserver.notifyObservers(l)},this._onKeyDown=l=>{this._scene.onKeyDownObservable.hasObservers()&&this._scene.onKeyDownObservable.notifyObservers(l)},this._onKeyUp=l=>{this._scene.onKeyUpObservable.hasObservers()&&this._scene.onKeyUpObservable.notifyObservers(l)},this._onInputObserver=u.onInputChangedObservable.add(l=>{const c=l;l.deviceType===R1.Keyboard&&(l.currentState===1&&this._onKeyDown(c),l.currentState===0&&this._onKeyUp(c)),(l.deviceType===R1.Mouse||l.deviceType===R1.Touch)&&(e&&l.inputIndex>=W.LeftClick&&l.inputIndex<=W.RightClick&&l.currentState===1&&this._onPointerDown(c),n&&l.inputIndex>=W.LeftClick&&l.inputIndex<=W.RightClick&&l.currentState===0&&this._onPointerUp(c),s&&(l.inputIndex===W.Horizontal||l.inputIndex===W.Vertical||l.inputIndex===W.DeltaHorizontal||l.inputIndex===W.DeltaVertical)?this._onPointerMove(c):i&&(l.inputIndex===W.MouseWheelX||l.inputIndex===W.MouseWheelY||l.inputIndex===W.MouseWheelZ)?this._onMouseWheel(c):a&&l.currentState===2?this._onPointerEnter(c):o&&l.currentState===3&&this._onPointerLeave(c))}),this.disposeWithMe(g.toDisposable(this._onInputObserver)),this._alreadyAttached=!0)}detachControl(){if(!this._alreadyAttached)return;const e=this._scene.getEngine();e&&(e.onInputChangedObservable.remove(this._onInputObserver),this._alreadyAttached=!1)}_getCurrentObject(e,n){var s;return(s=this._scene)==null?void 0:s.pick(P.FromArray([e,n]))}_checkDirectSceneEventTrigger(e,n){let s=!1;n==null&&(s=!0);let i=!0;if(n&&n.classType===K.BASE_OBJECT){const a=n.getScene();a&&(i=a.getParent().classType!==K.SCENE_VIEWER)}return!this._scene.evented&&e&&i||s}_isPointerSwiping(e,n){return Math.abs(this._startingPosition.x-e)>G1.DragMovementThreshold||Math.abs(this._startingPosition.y-n)>G1.DragMovementThreshold}_prePointerDoubleOrTripleClick(e){var a,o,u,l;const{clientX:n,clientY:s}=e;this._isPointerSwiping(n,s)&&this._resetDoubleClickParam(),this._delayedTimeout=setTimeout(()=>{this._resetDoubleClickParam()},G1.DoubleClickDelay),this._doubleClickOccurred+=1,this._tripleClickState&&((o=(a=this._scene)==null?void 0:a.pick(P.FromArray([e.offsetX,e.offsetY])))==null||o.triggerTripleClick(e),this._scene.onTripleClickObserver.hasObservers()&&this._scene.onTripleClickObserver.notifyObservers(e)),this._doubleClickOccurred===2&&((l=(u=this._scene)==null?void 0:u.pick(P.FromArray([e.offsetX,e.offsetY])))==null||l.triggerDblclick(e),this._scene.onDblclickObserver.hasObservers()&&this._scene.onDblclickObserver.notifyObservers(e),this._resetDoubleClickParam(),this._tripleClickState=!0,clearTimeout(this._delayedTripeTimeout),this._delayedTripeTimeout=setTimeout(()=>{this._tripleClickState=!1},G1.TripleClickDelay)),this._startingPosition.x=n,this._startingPosition.y=s}_resetDoubleClickParam(){this._doubleClickOccurred=0,clearTimeout(this._delayedTimeout)}};d(G1,"DragMovementThreshold",2),d(G1,"LongPressDelay",500),d(G1,"DoubleClickDelay",500),d(G1,"TripleClickDelay",300),d(G1,"ExclusiveDoubleClickMode",!1);let e0=G1;class To extends g.Disposable{constructor(e){super();d(this,"onTransformChangeObservable",new g.Observable);d(this,"onFileLoadedObservable",new g.Observable);d(this,"onPointerDownObserver",new g.Observable);d(this,"onPointerMoveObserver",new g.Observable);d(this,"onPointerUpObserver",new g.Observable);d(this,"onPointerEnterObserver",new g.Observable);d(this,"onPointerLeaveObserver",new g.Observable);d(this,"onDblclickObserver",new g.Observable);d(this,"onTripleClickObserver",new g.Observable);d(this,"onMouseWheelObserver",new g.Observable);d(this,"onKeyDownObservable",new g.Observable);d(this,"onKeyUpObservable",new g.Observable);d(this,"debounceParentTimeout",-1);d(this,"_sceneKey","");d(this,"_width",100);d(this,"_height",100);d(this,"_scaleX",1);d(this,"_scaleY",1);d(this,"_transform",new m1);d(this,"_evented",!0);this._sceneKey=e}get classType(){return K.SCENE}get transform(){return this._transform}get width(){return this._width}get height(){return this._height}get scaleX(){return this._scaleX}get scaleY(){return this._scaleY}get sceneKey(){return this._sceneKey}get evented(){return this._evented}set transform(e){this._transform=e}set width(e){this._width=e}set height(e){this._height=e}set scaleX(e){this._scaleX=e}set scaleY(e){this._scaleY=e}enableEvent(){this._evented=!0}disableEvent(){this._evented=!1}on(e,n){return this[`on${e}Observer`].add(n.bind(this))}off(e,n){this[`on${e}Observer`].remove(n)}remove(e){this[`on${e}Observer`].clear()}triggerKeyDown(e){this.onKeyDownObservable.notifyObservers(e)}triggerKeyUp(e){this.onKeyUpObservable.notifyObservers(e)}triggerPointerUp(e){}triggerMouseWheel(e){}triggerPointerMove(e){}triggerDblclick(e){}triggerTripleClick(e){}triggerPointerDown(e){}triggerPointerOut(e){}triggerPointerLeave(e){}triggerPointerOver(e){}triggerPointerEnter(e){}renderObjects(e,n){}render(e){}getParent(){}dispose(){super.dispose()}getObject(e){}addObject(e,n=1){}addObjects(e,n=1){}getEngine(){}setObjectBehavior(e){}applyTransformer(e){}makeDirtyNoParent(e=!0){return this}makeDirty(e=!0){return this}pick(e){}getViewports(){return[]}addViewport(...e){}removeViewport(e){}getAncestorScale(){return{scaleX:1,scaleY:1}}getPrecisionScale(){return{scaleX:1,scaleY:1}}setCursor(e){}resetCursor(){}}class Hn extends To{constructor(e,n,s){var i;super(e);d(this,"_layers",[]);d(this,"_viewports",[]);d(this,"_cursor",d1.DEFAULT);d(this,"_defaultCursor",d1.DEFAULT);d(this,"_addObject$",new u1.BehaviorSubject(this));d(this,"addObject$",this._addObject$.asObservable());d(this,"_transformer");d(this,"_transformerOpenState",!1);d(this,"_inputManager");if(this._parent=n,s&&this.transformByState(s),this._parent.classType===K.ENGINE){const a=this._parent;a.addScene(this),a.hasActiveScene()||a.setActiveScene(e),this._inputManager=new e0(this)}else this._parent.classType===K.SCENE_VIEWER&&this._parent.addSubScene(this);this.disposeWithMe(g.toDisposable((i=this._parent)==null?void 0:i.onTransformChangeObservable.add(a=>{this._setTransForm()})))}get ancestorScaleX(){const e=this.getParent();let n=1;return e.classType===K.SCENE_VIEWER&&(n=e.ancestorScaleX),this.scaleX*n}get ancestorScaleY(){const e=this.getParent();let n=1;return e.classType===K.SCENE_VIEWER&&(n=e.ancestorScaleY),this.scaleY*n}set cursor(e){this.setCursor(e)}attachControl(e=!0,n=!0,s=!0,i=!0){var a;if(this._parent.classType===K.ENGINE)return(a=this._inputManager)==null||a.attachControl(e,n,s,i),this}detachControl(){var e;return(e=this._inputManager)==null||e.detachControl(),this}makeDirty(e=!0){var n;return this._layers.forEach(s=>{s.makeDirty(e)}),this._parent.classType===K.SCENE_VIEWER&&((n=this._parent)==null||n.makeDirty(e)),this}makeDirtyNoParent(e=!0){return this._layers.forEach(n=>{n.makeDirty(e)}),this}enableLayerCache(...e){e.forEach(n=>{this.getLayer(n).enableCache()})}disableLayerCache(...e){e.forEach(n=>{this.getLayer(n).disableCache()})}isDirty(){for(let e=0;e<this._layers.length;e++)if(this._layers[e].isDirty()===!0)return!0;return!1}getCursor(){return this._cursor}resetCursor(){this.setCursor(this._defaultCursor)}setCursor(e){this._cursor=e;const n=this.getEngine();n&&n.setCanvasCursor(e)}setDefaultCursor(e){this._defaultCursor=e,this.resetCursor()}resize(e,n){const s=this.width;e!==void 0&&(this.width=e);const i=this.height;return n!==void 0&&(this.height=n),this._setTransForm(),this.onTransformChangeObservable.notifyObservers({type:h1.resize,value:{width:this.width,height:this.height},preValue:{width:s,height:i}}),this}scale(e,n){const s=this.scaleX;e!==void 0&&(this.scaleX=e);const i=this.scaleY;return n!==void 0&&(this.scaleY=n),this._setTransForm(),this.onTransformChangeObservable.notifyObservers({type:h1.scale,value:{scaleX:this.scaleX,scaleY:this.scaleY},preValue:{scaleX:s,scaleY:i}}),this}scaleBy(e,n){const s=this.scaleX;e!==void 0&&(this.scaleX+=e);const i=this.scaleY;return n!==void 0&&(this.scaleY+=n),this.scaleX=H2(this.scaleX,1),this.scaleY=H2(this.scaleY,1),this._setTransForm(),this.onTransformChangeObservable.notifyObservers({type:h1.scale,value:{scaleX:this.scaleX,scaleY:this.scaleY},preValue:{scaleX:s,scaleY:i}}),this}transformByState(e){const n=Object.keys(e),s={};n.length!==0&&(n.forEach(i=>{e[i]!==void 0&&(s[i]=this[i],this[i]=e[i])}),this._setTransForm(),this.onTransformChangeObservable.notifyObservers({type:h1.all,value:e,preValue:s}))}getParent(){return this._parent}getEngine(){if(this._parent.classType===K.ENGINE)return this._parent;let e=this._parent;for(;e;){if(e.classType===K.ENGINE)return e;e=e==null?void 0:e.getParent()}return null}getLayers(){return this._layers}getLayer(e=1){for(const n of this._layers)if(n.zIndex===e)return n;return this._createDefaultLayer(e)}getLayerMaxZIndex(){let e=Number.MIN_VALUE;for(let n=0;n<this._layers.length;n++){const s=this._layers[n];s.zIndex>=e&&(e=s.zIndex)}return e}addLayer(...e){this._layers.push(...e)}addObject(e,n=1){var s;return(s=this.getLayer(n))==null||s.addObject(e),this._addObject$.next(this),this}setObjectBehavior(e){e.parent||(e.parent=this),e.onIsAddedToParentObserver.notifyObservers(this)}addObjects(e,n=1){var s;return(s=this.getLayer(n))==null||s.addObjects(e),this._addObject$.next(this),this}removeObject(e){if(e==null)return;const n=this.getLayers();for(const s of n)s.removeObject(e);return this}removeObjects(e){if(e==null)return;const n=this.getLayers();for(const s of n)s.removeObjects(e);return this}getAllObjects(){const e=[];this._layers.sort(g.sortRules);for(const n of this._layers)e.push(...n.getObjectsByOrder());return e}getAllObjectsByOrder(e=!1){const n=[],s=e?g.sortRulesByDesc:g.sortRules;this._layers.sort(s);for(const i of this._layers)n.push(...i.getObjectsByOrder().sort(s));return n}getAllObjectsByOrderForPick(e=!1){const n=[],s=e?g.sortRulesByDesc:g.sortRules;this._layers.sort(s);for(const i of this._layers)n.push(...i.getObjectsByOrderForPick().sort(s));return n}getObject(e){for(const n of this._layers){const s=n.getObjectsByOrder();for(const i of s)if(i.oKey===e)return i}}fuzzyMathObjects(e){const n=[];for(const s of this._layers){const i=s.getObjectsByOrder();for(const a of i)a.oKey.indexOf(e)>-1&&i.push(a)}return n}addViewport(...e){return this._viewports.push(...e),this}removeViewport(e){for(let n=0,s=this._viewports.length;n<s;n++){const i=this._viewports[n];if(i.viewPortKey===e)return this._viewports.splice(n,1),i}}getViewports(){return this._viewports}getViewport(e){for(const n of this._viewports)if(n.viewPortKey===e)return n}changeObjectOrder(){}render(e){var s;if(!this.isDirty())return;!e&&((s=this.getEngine())==null||s.clearCanvas());const n=this._layers.sort(g.sortRules);for(let i=0,a=n.length;i<a;i++)n[i].render(e,i===a-1)}async requestRender(e){return new Promise((n,s)=>{this.render(e),u2(n)})}openTransformer(e){this._transformer||(this._transformer=new So(this,e)),this._transformerOpenState=!0}closeTransformer(e=!1){e&&(this._transformer=null),this._transformerOpenState=!1}applyTransformer(e){var n;this._transformerOpenState&&((n=this._transformer)==null||n.attachTo(e))}getTransformer(){return this._transformer}getActiveViewportByRelativeCoord(e){return this._viewports.find(n=>n.isHit(e))}getActiveViewportByCoord(e){return e=this.getRelativeCoord(e),this.getActiveViewportByRelativeCoord(e)}getScrollXYByRelativeCoords(e,n){return n||(n=this.getActiveViewportByRelativeCoord(e)),n?this.getScrollXY(n):{x:0,y:0}}getScrollXY(e){let n=0,s=0;if(e){const i=e.actualScrollX||0,a=e.actualScrollY||0;n+=i,s+=a}return{x:n,y:s}}getRelativeCoord(e){let n=this.getParent();const s=[];for(;n;)(n.classType===K.SCENE||n.classType===K.SCENE_VIEWER)&&s.push(n),n=(n==null?void 0:n.getParent)&&(n==null?void 0:n.getParent());s.reverse();for(const i of s)if(i.classType===K.SCENE){const o=i.getActiveViewportByCoord(e);if(o){const u=o.actualScrollX||0,l=o.actualScrollY||0;e=e.addByPoint(u,l)}}else i.classType===K.SCENE_VIEWER&&(e=i.transform.clone().invert().applyPoint(e));return e}clearLayer(){this._layers=[]}clearViewports(){this._viewports=[]}getAncestorScale(){let{scaleX:e=1,scaleY:n=1}=this;return this.classType===K.SCENE_VIEWER&&(e=this.ancestorScaleX||1,n=this.ancestorScaleY||1),{scaleX:e,scaleY:n}}getPrecisionScale(){var i;const e=((i=this.getEngine())==null?void 0:i.getPixelRatio())||1,{scaleX:n,scaleY:s}=this.getAncestorScale();return{scaleX:n*e,scaleY:s*e}}dispose(){var e,n;this.getLayers().forEach(s=>{s.dispose()}),this.getViewports().forEach(s=>{s.dispose()}),this.clearLayer(),this.clearViewports(),this.detachControl(),(e=this.onTransformChangeObservable)==null||e.clear(),(n=this._transformer)==null||n.dispose(),this.onPointerDownObserver.clear(),this.onPointerMoveObserver.clear(),this.onPointerUpObserver.clear(),this.onPointerEnterObserver.clear(),this.onPointerLeaveObserver.clear(),this.onDblclickObserver.clear(),this.onTripleClickObserver.clear(),this.onMouseWheelObserver.clear(),this.onKeyDownObservable.clear(),this.onKeyUpObservable.clear(),super.dispose()}pick(e){let n=this.getActiveViewportByCoord(e);if(n||(n=this._viewports[0]),!this.evented||!n)return;const s=n.pickScrollBar(e);if(s)return s;const i=n.getRelativeVector(e);let a=null;const o=this.getAllObjectsByOrderForPick().reverse(),u=o.length;for(let l=0;l<u;l++){const c=o[l];if(!c.visible||!c.evented||c.classType===K.GROUP)continue;let h=i;if(c.isInGroup&&c.parent.classType===K.GROUP){const{cumLeft:f,cumTop:_}=this._getGroupCumLeftRight(c);h=h.clone().add(P.FromArray([-f,-_]))}if(c.isHit(h)){if(c.classType===K.SCENE_VIEWER){const f=c.pick(h);f?a=f:a=c.getActiveSubScene()}else a=c;break}else if(c.classType===K.SCENE_VIEWER&&c.allowSelectedClipElement()){const f=c.pick(h);if(f){a=f;break}}}return!a&&this._parent.classType===K.ENGINE?this:a}triggerKeyDown(e){this.onKeyDownObservable.notifyObservers(e)}triggerKeyUp(e){this.onKeyUpObservable.notifyObservers(e)}triggerPointerUp(e){var n,s;return!((n=this.onPointerUpObserver.notifyObservers(e))!=null&&n.stopPropagation)&&this._parent.classType===K.SCENE_VIEWER?((s=this._parent)==null||s.triggerPointerUp(e),!1):!0}triggerMouseWheel(e){var n,s;return!((n=this.onMouseWheelObserver.notifyObservers(e))!=null&&n.stopPropagation)&&this._parent.classType===K.SCENE_VIEWER?((s=this._parent)==null||s.triggerMouseWheel(e),!1):!0}triggerPointerMove(e){var n,s;return!((n=this.onPointerMoveObserver.notifyObservers(e))!=null&&n.stopPropagation)&&this._parent.classType===K.SCENE_VIEWER?((s=this._parent)==null||s.triggerPointerMove(e),!1):!0}triggerDblclick(e){var n,s;return!((n=this.onDblclickObserver.notifyObservers(e))!=null&&n.stopPropagation)&&this._parent.classType===K.SCENE_VIEWER?((s=this._parent)==null||s.triggerDblclick(e),!1):!0}triggerTripleClick(e){var n,s;return!((n=this.onTripleClickObserver.notifyObservers(e))!=null&&n.stopPropagation)&&this._parent.classType===K.SCENE_VIEWER?((s=this._parent)==null||s.triggerTripleClick(e),!1):!0}triggerPointerDown(e){var n,s;return!((n=this.onPointerDownObserver.notifyObservers(e))!=null&&n.stopPropagation)&&this._parent.classType===K.SCENE_VIEWER?((s=this._parent)==null||s.triggerPointerDown(e),!1):!0}triggerPointerOut(e){var n;return this._parent.classType===K.SCENE_VIEWER?((n=this._parent)==null||n.triggerPointerOut(e),!1):!0}triggerPointerLeave(e){var n,s;return!((n=this.onPointerLeaveObserver.notifyObservers(e))!=null&&n.stopPropagation)&&this._parent.classType===K.SCENE_VIEWER?((s=this._parent)==null||s.triggerPointerLeave(e),!1):!0}triggerPointerOver(e){var n;return this._parent.classType===K.SCENE_VIEWER?((n=this._parent)==null||n.triggerPointerOver(e),!1):!0}triggerPointerEnter(e){var n,s;return!((n=this.onPointerEnterObserver.notifyObservers(e))!=null&&n.stopPropagation)&&this._parent.classType===K.SCENE_VIEWER?((s=this._parent)==null||s.triggerPointerEnter(e),!1):!0}_createDefaultLayer(e=1){const n=new Pn(this,[],e);return this.addLayer(n),n}_setTransForm(){const e=m1.create().composeMatrix({scaleX:this.scaleX,scaleY:this.scaleY});this.transform=e,this.getViewports().forEach(n=>{n.resetSizeAndScrollBar()}),this.makeDirty(!0)}_getGroupCumLeftRight(e){let n=e.parent,s=0,i=0;for(;n.classType===K.GROUP;){const{left:a,top:o}=n;s+=a,i+=o,n=n.parent}return{cumLeft:s,cumTop:i}}}class Gn extends g.Disposable{constructor(e,n){super();d(this,"isRenderUnit");d(this,"_injector");d(this,"_renderControllers",[]);d(this,"_renderContext");this._injector=e.createChild(),this._renderContext={unit:n.unit,unitId:n.unit.getUnitId(),type:n.unit.type,components:new Map,mainComponent:null,isMainScene:n.isMainScene,engine:n.engine,scene:n.scene}}get unitId(){return this._renderContext.unitId}get type(){return this._renderContext.type}set isMainScene(e){this._renderContext.isMainScene=e}get isMainScene(){return this._renderContext.isMainScene}set engine(e){this._renderContext.engine=e}get engine(){return this._renderContext.engine}set mainComponent(e){this._renderContext.mainComponent=e}get mainComponent(){return this._renderContext.mainComponent}set scene(e){this._renderContext.scene=e}get scene(){return this._renderContext.scene}get components(){return this._renderContext.components}dispose(){this._renderControllers.forEach(e=>e.dispose()),this._renderControllers.length=0}addRenderControllers(e){this._initControllers(e)}_initControllers(e){e.map(n=>this._injector.createInstance(n,this._renderContext)).forEach(n=>this._renderControllers.push(n))}}var xo=Object.defineProperty,Bo=Object.getOwnPropertyDescriptor,Oo=(r,t,e,n)=>{for(var s=n>1?void 0:n?Bo(t,e):t,i=r.length-1,a;i>=0;i--)(a=r[i])&&(s=(n?a(t,e,s):a(s))||s);return n&&s&&xo(t,e,s),s},zn=(r,t)=>(e,n)=>t(e,n,r);const wo={width:1500,height:1e3},Ao="_UNIVER_SCENE_";y.RenderManagerService=class extends g.Disposable{constructor(e,n){super();d(this,"_defaultEngine");d(this,"_currentUnitId","");d(this,"_renderMap",new Map);d(this,"_currentRender$",new u1.BehaviorSubject(this._currentUnitId));d(this,"currentRender$",this._currentRender$.asObservable());d(this,"_createRender$",new u1.BehaviorSubject(this._currentUnitId));d(this,"createRender$",this._createRender$.asObservable());d(this,"_renderControllers",new Map);this._injector=e,this._univerInstanceService=n}get defaultEngine(){return this._defaultEngine||(this._defaultEngine=new mt),this._defaultEngine}dispose(){super.dispose(),this._renderMap.forEach(e=>{this._disposeItem(e)}),this._renderControllers.clear(),this._renderMap.clear(),this._currentRender$.complete()}registerRenderControllers(e,n){this._renderControllers.has(e)||this._renderControllers.set(e,new Set);const s=this._renderControllers.get(e);s.add(n);for(const[i,a]of this._renderMap)this._univerInstanceService.getUnitType(i)===e&&a.addRenderControllers([n]);return g.toDisposable(()=>s.delete(n))}_getRenderControllersForType(e){var n;return Array.from((n=this._renderControllers.get(e))!=null?n:[])}createRenderWithParent(e,n){const s=this.getRenderById(n);if(s==null)throw new Error("parent render is null");const{scene:i,engine:a}=s,o=this._createRender(e,a,!1),u=o.scene,l=new Q6(e);return l.addSubScene(u),i.addObject(l),o}createRenderWithEngine(e,n){return this._createRender(e,n,!1)}create(e){this._createRender$.next(e)}createRender(e){const n=new mt;return this._createRender(e,n)}_createRender(e,n,s=!0){const i=this.getRenderById(e);let a=!0;i!=null&&i.engine===n&&(a=!1),this._disposeItem(i,a);const{width:o,height:u}=wo,l=new Hn(Ao+e,n,{width:o,height:u}),c=this._univerInstanceService.getUnit(e),h=this._univerInstanceService.getUnitType(e),f=this._getRenderControllersForType(h),_=new Gn(this._injector,{unit:c,engine:n,scene:l,isMainScene:s});return _.addRenderControllers(f),this.addRenderItem(e,_),_}addRenderItem(e,n){this._renderMap.set(e,n)}removeRender(e){const n=this._renderMap.get(e);n!=null&&(this._disposeItem(n),n.dispose()),this._renderMap.delete(e)}has(e){return this._renderMap.has(e)}setCurrent(e){this._currentUnitId=e,this._currentRender$.next(e)}getCurrent(){return this._renderMap.get(this._currentUnitId)}getFirst(){return[...this.getRenderAll().values()][0]}getRenderById(e){return this._renderMap.get(e)}getRenderAll(){return this._renderMap}_disposeItem(e,n=!0){if(e==null)return;const{engine:s,scene:i,components:a,mainComponent:o}=e;a==null||a.forEach(u=>{u.dispose()}),o==null||o.dispose(),i.dispose(),n&&s.dispose()}},y.RenderManagerService=Oo([zn(0,E1.Inject(E1.Injector)),zn(1,g.IUniverInstanceService)],y.RenderManagerService);const Xn=E1.createIdentifier("engine-render.render-manager.service");var Ro=Object.defineProperty,$o=Object.getOwnPropertyDescriptor,ko=(r,t,e,n)=>{for(var s=n>1?void 0:n?$o(t,e):t,i=r.length-1,a;i>=0;i--)(a=r[i])&&(s=(n?a(t,e,s):a(s))||s);return n&&s&&Ro(t,e,s),s},Io=(r,t)=>(e,n)=>t(e,n,r);const Wn=E1.createIdentifier("univer.render-engine"),Lo="render-engine";y.UniverRenderEnginePlugin=(u0=class extends g.Plugin{constructor(t,e){super(),this._injector=e,this._injector.add([Wn,{useFactory:()=>new mt}]),this._injector.add([Xn,{useClass:y.RenderManagerService}])}},d(u0,"pluginName",Lo),u0),y.UniverRenderEnginePlugin=ko([Io(1,E1.Inject(E1.Injector))],y.UniverRenderEnginePlugin);const Yn=["radius"];class t0 extends $e{constructor(e,n){super(e,n);d(this,"_radius");this._radius=(n==null?void 0:n.radius)||10,this._setFixBoundingBox(),this.onTransformChangeObservable.add(s=>{const{type:i,value:a,preValue:o}=s;if(i===h1.resize||i===h1.all){const u=Math.min(this.width,this.height);this._radius=u/2,this.width=u,this.height=u,this._setTransForm()}})}get radius(){return this._radius}static drawWith(e,n){let{radius:s}=n;s=s!=null?s:10,e.beginPath(),n.strokeDashArray&&e.setLineDash(n.strokeDashArray),e.beginPath(),e.arc(s,s,s||0,0,Math.PI*2,!1),e.closePath(),this._renderPaintInOrder(e,n)}toJson(){const e={};return Yn.forEach(n=>{this[n]&&(e[n]=this[n])}),{...super.toJson(),...e}}_draw(e){t0.drawWith(e,this)}_setFixBoundingBox(){this.transformByState({width:this._radius*2,height:this._radius*2})}}class Mo{}class Po{}class bt extends $e{constructor(e,n){super(e,n);d(this,"_props");d(this,"_native");this._props={autoWidth:!1,autoHeight:!1,...n},n.image?(this._native=n.image,this._init()):n.url&&(this._native=document.createElement("img"),this._native.src=n.url,this._native.onload=()=>{var s,i,a;(s=n.success)==null||s.call(n),this._init(),this.makeDirty(!0),(a=(i=this.getEngine())==null?void 0:i.activeScene)==null||a.onFileLoadedObservable.notifyObservers(e)},this._native.onerror=()=>{n.fail?n.fail():(this._native.src="data:image/svg+xml;base64,PHN2ZyBjbGFzcz0iaWNvbiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB3aWR0aD0iMjAwIiBoZWlnaHQ9IjIwMCI+PHBhdGggZD0iTTMwNC4xMjggNDU2LjE5MmM0OC42NCAwIDg4LjA2NC0zOS40MjQgODguMDY0LTg4LjA2NHMtMzkuNDI0LTg4LjA2NC04OC4wNjQtODguMDY0LTg4LjA2NCAzOS40MjQtODguMDY0IDg4LjA2NCAzOS40MjQgODguMDY0IDg4LjA2NCA4OC4wNjR6bTAtMTE2LjIyNGMxNS4zNiAwIDI4LjE2IDEyLjI4OCAyOC4xNiAyOC4xNnMtMTIuMjg4IDI4LjE2LTI4LjE2IDI4LjE2LTI4LjE2LTEyLjI4OC0yOC4xNi0yOC4xNiAxMi4yODgtMjguMTYgMjguMTYtMjguMTZ6IiBmaWxsPSIjZTZlNmU2Ii8+PHBhdGggZD0iTTg4Ny4yOTYgMTU5Ljc0NEgxMzYuNzA0Qzk2Ljc2OCAxNTkuNzQ0IDY0IDE5MiA2NCAyMzIuNDQ4djU1OS4xMDRjMCAzOS45MzYgMzIuMjU2IDcyLjcwNCA3Mi43MDQgNzIuNzA0aDE5OC4xNDRMNTAwLjIyNCA2ODguNjRsLTM2LjM1Mi0yMjIuNzIgMTYyLjMwNC0xMzAuNTYtNjEuNDQgMTQzLjg3MiA5Mi42NzIgMjE0LjAxNi0xMDUuNDcyIDE3MS4wMDhoMzM1LjM2QzkyNy4yMzIgODY0LjI1NiA5NjAgODMyIDk2MCA3OTEuNTUyVjIzMi40NDhjMC0zOS45MzYtMzIuMjU2LTcyLjcwNC03Mi43MDQtNzIuNzA0em0tMTM4Ljc1MiA3MS42OHYuNTEySDg1Ny42YzE2LjM4NCAwIDMwLjIwOCAxMy4zMTIgMzAuMjA4IDMwLjIwOHYzOTkuODcyTDY3My4yOCA0MDguMDY0bDc1LjI2NC0xNzYuNjR6TTMwNC42NCA3OTIuMDY0SDE2NS44ODhjLTE2LjM4NCAwLTMwLjIwOC0xMy4zMTItMzAuMjA4LTMwLjIwOHYtOS43MjhsMTM4Ljc1Mi0xNjQuMzUyIDEwNC45NiAxMjQuNDE2LTc0Ljc1MiA3OS44NzJ6bTgxLjkyLTM1NS44NGwzNy4zNzYgMjI4Ljg2NC0uNTEyLjUxMi0xNDIuODQ4LTE2OS45ODRjLTMuMDcyLTMuNTg0LTkuMjE2LTMuNTg0LTEyLjI4OCAwTDEzNS42OCA2NTIuOFYyNjIuMTQ0YzAtMTYuMzg0IDEzLjMxMi0zMC4yMDggMzAuMjA4LTMwLjIwOGg0NzQuNjI0TDM4Ni41NiA0MzYuMjI0em01MDEuMjQ4IDMyNS42MzJjMCAxNi44OTYtMTMuMzEyIDMwLjIwOC0yOS42OTYgMzAuMjA4SDY4MC45Nmw1Ny4zNDQtOTMuMTg0LTg3LjU1Mi0yMDIuMjQgNy4xNjgtNy42OCAyMjkuODg4IDI3Mi44OTZ6IiBmaWxsPSIjZTZlNmU2Ii8+PC9zdmc+",this._init(),this.makeDirty(!0))})}static drawWith(e,n){var s;if((s=n._native)!=null&&s.complete){const{width:i,height:a}=n;try{e.drawImage(n._native,0,0,i,a)}catch(o){console.error(o)}}}static create(e,n,s){return new bt(e,{url:n,success:s})}getPictureProps(){return this._props}_draw(e){bt.drawWith(e,this)}_init(){var e,n;this._props.autoWidth&&this.resize(((e=this._native)==null?void 0:e.width)||0),this._props.autoHeight&&this.resize(void 0,((n=this._native)==null?void 0:n.height)||0)}}const Vn=["pointsGroup"];class yt extends $e{constructor(e,n){super(e,n);d(this,"_pointsGroup");this._pointsGroup=(n==null?void 0:n.pointsGroup)||[[]],this._setFixBoundingBox(),this.onTransformChangeObservable.add(s=>{const{type:i,value:a,preValue:o}=s;(i===h1.resize||i===h1.all)&&this.resizePolygon(o)})}get pointsGroup(){return this._pointsGroup}static drawWith(e,n){let{pointsGroup:s}=n;s=s!=null?s:[[]],n.strokeDashArray&&e.setLineDash(n.strokeDashArray),e.beginPath();for(const i of s){e.moveTo(i[0].x,i[0].y);for(let a=1;a<i.length;a++){const o=i[a];e.lineTo(o.x,o.y)}}e.closePath(),this._renderPaintInOrder(e,n)}updatePointGroup(e){this._pointsGroup=e,this._setFixBoundingBox()}resizePolygon(e){const{left:n,top:s,width:i,height:a}=this._getSelfRect(),{width:o,height:u}=e;let l,c;o?l=this.width-o:l=0,u?c=this.height-u:c=0;const h=l/i,f=c/a;this.scaleX+=h,this.scaleY+=f,this.left=this.left-n*h,this.top=this.top-s*f,this._setTransForm()}toJson(){const e={};return Vn.forEach(n=>{this[n]&&(e[n]=this[n])}),{...super.toJson(),...e}}getState(){const{left:e,top:n,width:s,height:i}=this.getRect();return{left:e,top:n,width:s,height:i,scaleX:this.scaleX,scaleY:this.scaleY,angle:this.angle,skewX:this.skewX,skewY:this.skewY,flipX:this.flipX,flipY:this.flipY}}getRect(){const{left:e,top:n,width:s,height:i}=this._getSelfRect();return{left:e*this.scaleX+this.left,top:n*this.scaleY+this.top,width:s*this.scaleX,height:i*this.scaleY}}_draw(e){yt.drawWith(e,this)}_setFixBoundingBox(){const{width:e,height:n,left:s,top:i}=this._getSelfRect();this.left=this.left+s,this.top=this.top+i,this.width=e,this.height=n;const a=this.pointsGroup;for(const o of a)for(const u of o)u.x-=s,u.y-=i;this._setTransForm()}_getSelfRect(){const e=this.pointsGroup;let n=e[0][0].x,s=e[0][0].x,i=e[0][0].y,a=e[0][0].y;for(const o of e)for(const u of o)n=Math.min(n,u.x),s=Math.max(s,u.x),i=Math.min(i,u.y),a=Math.max(a,u.y);return{left:n,top:i,width:s-n,height:a-i}}}const n0=["text","richText"];class No extends ne{constructor(e,n,s){super(n);d(this,"_documentData");d(this,"_documentSkeleton");d(this,"_documents");d(this,"_ff");d(this,"_fs",12);d(this,"_it",g.BooleanNumber.FALSE);d(this,"_bl",g.BooleanNumber.FALSE);d(this,"_ul",{s:g.BooleanNumber.FALSE});d(this,"_st",{s:g.BooleanNumber.FALSE});d(this,"_ol",{s:g.BooleanNumber.FALSE});d(this,"_bg");d(this,"_bd");d(this,"_cl");this._localeService=e,s!=null&&s.richText?this._documentData=s.richText:s&&(this._fs=s.fs,this._ff=s.ff,this._it=s.it,this._bl=s.bl,this._ul=s.ul,this._st=s.st,this._ol=s.ol,this._bg=s.bg,this._bd=s.bd,this._cl=s.cl,this._documentData=this._convertToDocumentData(s.text||""));const i=new g.DocumentDataModel(this._documentData),a=new be(i);this._documentSkeleton=Je.create(a,this._localeService),this._documents=new I2(`${this.oKey}_DOCUMENTS`,this._documentSkeleton,{pageMarginLeft:0,pageMarginTop:0}),this._initialProps(s),this.onTransformChangeObservable.add(o=>{const{type:u}=o;if(u===h1.resize||u===h1.all){i.updateDocumentDataPageSize(this.width),this._documentSkeleton.makeDirty(!0),this._documentSkeleton.calculate();const l=this.getDocsSkeletonPageSize();this.height=(l==null?void 0:l.height)||this.height,this._setTransForm()}})}get documentData(){return this._documentData}getDocsSkeletonPageSize(){var o;const e=(o=this._documentSkeleton)==null?void 0:o.getSkeletonData();if(!e)return;const{pages:n}=e,s=n[n.length-1],{width:i,height:a}=s;return{width:i,height:a}}setProps(e){if(!e)return;const n=Object.keys(e);if(n.length!==0)return n.forEach(s=>{if(e[s]===void 0)return!0;n0.indexOf(s)===-1&&(this[`_${s}`]=e[s])}),this.makeDirty(!0),this}render(e,n){if(!this.visible)return this.makeDirty(!1),this;if(this.isRender(n)){const{top:i,left:a,bottom:o,right:u}=n.viewBound;if(this.width+this.strokeWidth<a||u<0||this.height+this.strokeWidth<i||o<0)return this}const s=this.transform.getMatrix();return e.save(),e.transform(s[0],s[1],s[2],s[3],s[4],s[5]),this._draw(e),e.restore(),this.makeDirty(!1),this}toJson(){const e={};return n0.forEach(n=>{this[n]&&(e[n]=this[n])}),{...super.toJson(),...e}}_draw(e){this._documents.render(e)}_convertToDocumentData(e){const n=e.length;return{id:"d",body:{dataStream:`${e}${g.DEFAULT_EMPTY_DOCUMENT_VALUE}`,textRuns:[{ts:{fs:this._fs||14,ff:this._ff,it:this._it,bl:this._bl,ul:this._ul,st:this._st,ol:this._ol,bg:this._bg,bd:this._bd,cl:this._cl},st:0,ed:n}]},documentStyle:{pageSize:{width:Number.POSITIVE_INFINITY,height:Number.POSITIVE_INFINITY}}}}_initialProps(e){this._documentSkeleton.getViewModel().getDataModel().updateDocumentDataPageSize(e==null?void 0:e.width,e==null?void 0:e.height),this._documentSkeleton.calculate();const n=this.getDocsSkeletonPageSize();this.transformByState({width:(n==null?void 0:n.width)||0,height:(n==null?void 0:n.height)||0,left:(e==null?void 0:e.left)||0,top:(e==null?void 0:e.top)||0,angle:e==null?void 0:e.angle}),this.setProps(e),this.makeDirty(!0)}}class Uo extends g.Disposable{constructor(){super(...arguments);d(this,"enableHorizontal",!0);d(this,"enableVertical",!0);d(this,"horizontalThumbWidth",0);d(this,"horizontalMinusMiniThumb",0);d(this,"horizontalBarWidth",0);d(this,"verticalThumbHeight",0);d(this,"verticalBarHeight",0);d(this,"verticalMinusMiniThumb",0);d(this,"horizonBarRect");d(this,"horizonThumbRect");d(this,"verticalBarRect");d(this,"verticalThumbRect");d(this,"placeholderBarRect")}get limitX(){var e;return(e=this.horizonThumbRect)!=null&&e.visible?this.horizontalBarWidth-this.horizontalThumbWidth:0}get limitY(){var e;return(e=this.verticalThumbRect)!=null&&e.visible?this.verticalBarHeight-this.verticalThumbHeight:0}get ratioScrollX(){if(this.enableHorizontal===!1||this.horizontalThumbWidth===void 0||this.horizontalBarWidth===void 0)return 1;const e=(this.horizontalThumbWidth-this.horizontalMinusMiniThumb)*this.miniThumbRatioX/this.horizontalBarWidth;return Number.isNaN(e)?1:e}get ratioScrollY(){if(this.enableVertical===!1||this.verticalThumbHeight===void 0||this.verticalBarHeight===void 0)return 1;const e=(this.verticalThumbHeight-this.verticalMinusMiniThumb)*this.miniThumbRatioY/this.verticalBarHeight;return Number.isNaN(e)?1:e}get miniThumbRatioX(){const e=this.horizontalBarWidth-this.horizontalThumbWidth;if(e===0)return 0;const n=this.horizontalBarWidth-(this.horizontalThumbWidth-this.horizontalMinusMiniThumb);return n===0?0:e/n}get miniThumbRatioY(){const e=this.verticalBarHeight-this.verticalThumbHeight;if(e===0)return 0;const n=this.verticalBarHeight-(this.verticalThumbHeight-this.verticalMinusMiniThumb);return n===0?0:e/n}pick(e){var n,s,i,a;return(n=this.horizonThumbRect)!=null&&n.isHit(e)?this.horizonThumbRect:(s=this.verticalThumbRect)!=null&&s.isHit(e)?this.verticalThumbRect:(i=this.horizonBarRect)!=null&&i.isHit(e)?this.horizonBarRect:(a=this.verticalBarRect)!=null&&a.isHit(e)?this.verticalBarRect:null}dispose(){var e,n,s,i,a;(e=this.horizonBarRect)==null||e.dispose(),(n=this.horizonThumbRect)==null||n.dispose(),(s=this.verticalBarRect)==null||s.dispose(),(i=this.verticalThumbRect)==null||i.dispose(),(a=this.placeholderBarRect)==null||a.dispose()}hasHorizonThumb(){var e;return((e=this.horizonThumbRect)==null?void 0:e.visible)||!1}hasVerticalThumb(){var e;return((e=this.verticalThumbRect)==null?void 0:e.visible)||!1}resize(e=0,n=0,s=0,i=0){}makeDirty(e){}render(e,n=0,s=0){}}const e2=17;class r0 extends Uo{constructor(e,n){super();d(this,"_view");d(this,"_mainScene");d(this,"_lastX",-1);d(this,"_lastY",-1);d(this,"_isHorizonMove",!1);d(this,"_isVerticalMove",!1);d(this,"_horizonPointerMoveObserver");d(this,"_horizonPointerUpObserver");d(this,"_verticalPointerMoveObserver");d(this,"_verticalPointerUpObserver");d(this,"barSize",14);d(this,"barBorder",1);d(this,"thumbMargin",2);d(this,"thumbLengthRatio",1);d(this,"thumbBackgroundColor","#cccccc");d(this,"thumbHoverBackgroundColor","#b2b2b2");d(this,"thumbActiveBackgroundColor","#999999");d(this,"barBackgroundColor","rgba(255,255,255,0.5)");d(this,"barBorderColor","rgba(255,255,255,0.7)");e||console.warn("Missing viewport"),this.setProps(n),this._view=e,this._initialScrollRect(),this._view.setScrollBar(this)}static attachTo(e,n){return new r0(e,n)}dispose(){var e,n,s,i;super.dispose(),(e=this._mainScene)==null||e.onPointerMoveObserver.remove(this._horizonPointerMoveObserver),(n=this._mainScene)==null||n.onPointerMoveObserver.remove(this._verticalPointerMoveObserver),(s=this._mainScene)==null||s.onPointerUpObserver.remove(this._horizonPointerUpObserver),(i=this._mainScene)==null||i.onPointerUpObserver.remove(this._verticalPointerUpObserver),this._mainScene=null,this._view.removeScrollBar()}render(e,n=0,s=0){const{scrollX:i,scrollY:a}=this._view;e.save();const u=new m1([1,0,0,1,n,s]).getMatrix();e.transform(u[0],u[1],u[2],u[3],u[4],u[5]),this.enableHorizontal&&(this.horizonBarRect.render(e),this.horizonThumbRect.translate(i).render(e)),this.enableVertical&&(this.verticalBarRect.render(e),this.verticalThumbRect.translate(void 0,a).render(e)),this.enableHorizontal&&this.enableVertical&&this.placeholderBarRect.render(e),e.restore()}resize(e=0,n=0,s=0,i=0){var a;e===0&&e===0||(this._resizeHorizontal(e,n,s),this._resizeVertical(e,n,i),this.enableHorizontal&&this.enableVertical&&((a=this.placeholderBarRect)==null||a.transformByState({left:e-this.barSize,top:n-this.barSize,width:this.barSize-this.barBorder,height:this.barSize-this.barBorder})))}makeDirty(e){var n,s,i,a,o;(n=this.horizonBarRect)==null||n.makeDirty(e),(s=this.horizonThumbRect)==null||s.makeDirty(e),(i=this.verticalBarRect)==null||i.makeDirty(e),(a=this.verticalThumbRect)==null||a.makeDirty(e),(o=this.placeholderBarRect)==null||o.makeDirty(e),this.makeViewDirty(e)}makeViewDirty(e){(this._mainScene||this._view.scene).makeDirty(e)}pick(e){var n,s,i,a;return(n=this.horizonThumbRect)!=null&&n.isHit(e)?this.horizonThumbRect:(s=this.verticalThumbRect)!=null&&s.isHit(e)?this.verticalThumbRect:(i=this.horizonBarRect)!=null&&i.isHit(e)?this.horizonBarRect:(a=this.verticalBarRect)!=null&&a.isHit(e)?this.verticalBarRect:null}setProps(e){if(!e)return;const n=Object.keys(e);n.length!==0&&n.forEach(s=>{e[s]!==void 0&&(this[`${s}`]=e[s])})}_resizeHorizontal(e,n,s){var i,a,o,u,l;this.enableHorizontal&&(this.horizontalMinusMiniThumb=0,this.horizontalBarWidth=e-(this.enableVertical?this.barSize:0)-this.barBorder,this.horizontalThumbWidth=this.horizontalBarWidth*(this.horizontalBarWidth-this.barBorder)/s*this.thumbLengthRatio,this.horizontalThumbWidth<e2&&(this.horizontalMinusMiniThumb=e2-this.horizontalThumbWidth,this.horizontalThumbWidth=e2),(i=this.horizonBarRect)==null||i.transformByState({left:0,top:n-this.barSize,width:this.horizontalBarWidth,height:this.barSize-this.barBorder}),this.horizontalThumbWidth>=e-this.barSize?(a=this.horizonThumbRect)==null||a.setProps({visible:!1}):((o=this.horizonThumbRect)!=null&&o.visible||(u=this.horizonThumbRect)==null||u.setProps({visible:!0}),(l=this.horizonThumbRect)==null||l.transformByState({left:this._view.scrollX,top:n-this.barSize+this.thumbMargin,width:this.horizontalThumbWidth,height:this.barSize-this.thumbMargin*2})))}_resizeVertical(e,n,s){var i,a,o,u,l;this.enableVertical&&(this.verticalMinusMiniThumb=0,this.verticalBarHeight=n-(this.enableHorizontal?this.barSize:0)-this.barBorder,this.verticalThumbHeight=this.verticalBarHeight*this.verticalBarHeight/s*this.thumbLengthRatio,this.verticalThumbHeight<e2&&(this.verticalMinusMiniThumb=e2-this.verticalThumbHeight,this.verticalThumbHeight=e2),(i=this.verticalBarRect)==null||i.transformByState({left:e-this.barSize,top:0,width:this.barSize-this.barBorder,height:this.verticalBarHeight}),this.verticalThumbHeight>=n-this.barSize?(a=this.verticalThumbRect)==null||a.setProps({visible:!1}):((o=this.verticalThumbRect)!=null&&o.visible||(u=this.verticalThumbRect)==null||u.setProps({visible:!0}),(l=this.verticalThumbRect)==null||l.transformByState({left:e-this.barSize+this.thumbMargin,top:this._view.scrollY,width:this.barSize-this.thumbMargin*2,height:this.verticalThumbHeight})))}_initialScrollRect(){this.enableHorizontal&&(this.horizonBarRect=new L1("__horizonBarRect__",{fill:this.barBackgroundColor,strokeWidth:this.barBorder,stroke:this.barBorderColor}),this.horizonThumbRect=new L1("__horizonThumbRect__",{radius:6,fill:this.thumbBackgroundColor})),this.enableVertical&&(this.verticalBarRect=new L1("__verticalBarRect__",{fill:this.barBackgroundColor,strokeWidth:this.barBorder,stroke:this.barBorderColor}),this.verticalThumbRect=new L1("__verticalThumbRect__",{radius:6,fill:this.thumbBackgroundColor})),this.enableHorizontal&&this.enableVertical&&(this.placeholderBarRect=new L1("__placeholderBarRect__",{fill:this.barBackgroundColor,strokeWidth:this.barBorder,stroke:this.barBorderColor})),this._initialVerticalEvent(),this._initialHorizontalEvent()}_initialVerticalEvent(){var n,s,i,a;if(!this.enableVertical)return;const e=this._mainScene||this._view.scene;(n=this.verticalThumbRect)==null||n.on(X1.PointerEnter,this._hoverFunc(this.thumbHoverBackgroundColor,this.verticalThumbRect)),(s=this.verticalThumbRect)==null||s.on(X1.PointerLeave,this._hoverFunc(this.thumbBackgroundColor,this.verticalThumbRect)),(i=this.verticalBarRect)==null||i.on(X1.PointerDown,(o,u)=>{const l=o;this._view.scrollTo({y:l.offsetY-this._view.top-this.verticalThumbHeight/2}),u.stopPropagation()}),(a=this.verticalThumbRect)==null||a.on(X1.PointerDown,(o,u)=>{const l=o,c=this.verticalThumbRect;this._isVerticalMove=!0,this._lastX=l.offsetX,this._lastY=l.offsetY,c==null||c.setProps({fill:this.thumbActiveBackgroundColor}),e.disableEvent(),this.makeViewDirty(!0),u.stopPropagation()}),this._verticalPointerMoveObserver=e.onPointerMoveObserver.add((o,u)=>{var c;const l=o;this._isVerticalMove&&(this._view.scrollByBar({y:l.offsetY-this._lastY}),this._lastY=l.offsetY,(c=e.getEngine())==null||c.setRemainCapture())}),this._verticalPointerUpObserver=e.onPointerUpObserver.add((o,u)=>{const l=this.verticalThumbRect;this._isVerticalMove=!1,e.enableEvent(),l==null||l.setProps({fill:this.thumbBackgroundColor}),this.makeViewDirty(!0)})}_hoverFunc(e,n){return(s,i)=>{if(this._isHorizonMove||this._isVerticalMove)return;n.setProps({fill:e}),this.makeViewDirty(!0)}}_initialHorizontalEvent(){var n,s,i,a;if(!this.enableHorizontal)return;const e=this._mainScene||this._view.scene;(n=this.horizonThumbRect)==null||n.on(X1.PointerEnter,this._hoverFunc(this.thumbHoverBackgroundColor,this.horizonThumbRect)),(s=this.horizonThumbRect)==null||s.on(X1.PointerLeave,this._hoverFunc(this.thumbBackgroundColor,this.horizonThumbRect)),(i=this.horizonBarRect)==null||i.on(X1.PointerDown,(o,u)=>{const l=o;this._view.scrollTo({x:l.offsetX-this._view.left-this.horizontalThumbWidth/2}),u.stopPropagation()}),(a=this.horizonThumbRect)==null||a.on(X1.PointerDown,(o,u)=>{var c;const l=o;this._isHorizonMove=!0,this._lastX=l.offsetX,this._lastY=l.offsetY,(c=this.horizonThumbRect)==null||c.setProps({fill:this.thumbActiveBackgroundColor}),this.makeViewDirty(!0),e.disableEvent(),u.stopPropagation()}),this._horizonPointerMoveObserver=e.onPointerMoveObserver.add((o,u)=>{var c;const l=o;this._isHorizonMove&&(this._view.scrollByBar({x:l.offsetX-this._lastX}),this._lastX=l.offsetX,(c=e.getEngine())==null||c.setRemainCapture())}),this._horizonPointerUpObserver=e.onPointerUpObserver.add((o,u)=>{const l=this.horizonThumbRect;this._isHorizonMove=!1,e.enableEvent(),l==null||l.setProps({fill:this.thumbBackgroundColor}),this.makeViewDirty(!0)})}}class Ho{}const jn=["checked"];class s0 extends $e{constructor(e,n){super(e,n);d(this,"_checked",!1);g.Tools.isDefine(n.checked)&&(this._checked=n.checked)}get checked(){return this._checked}static drawWith(e,n){const{width:s=16,height:i=16,fill:a,checked:o,top:u=0,left:l=0}=n,c=new Path2D("M12 2.65381H4C3.17157 2.65381 2.5 3.32538 2.5 4.15381V12.1538C2.5 12.9822 3.17157 13.6538 4 13.6538H12C12.8284 13.6538 13.5 12.9822 13.5 12.1538V4.15381C13.5 3.32538 12.8284 2.65381 12 2.65381ZM4 1.65381C2.61929 1.65381 1.5 2.7731 1.5 4.15381V12.1538C1.5 13.5345 2.61929 14.6538 4 14.6538H12C13.3807 14.6538 14.5 13.5345 14.5 12.1538V4.15381C14.5 2.7731 13.3807 1.65381 12 1.65381H4Z"),h=new Path2D("M3.99243 1.65381C2.61172 1.65381 1.49243 2.77295 1.49243 4.15381V12.1538C1.49243 13.5347 2.61172 14.6538 3.99243 14.6538H11.9924C13.3731 14.6538 14.4924 13.5347 14.4924 12.1538V4.15381C14.4924 2.77295 13.3731 1.65381 11.9924 1.65381H3.99243ZM12.3779 6.3623C12.6317 6.1084 12.6317 5.69678 12.3779 5.44287C12.1241 5.18896 11.7125 5.18896 11.4586 5.44287L7.21062 9.69092L5.00681 7.4873C4.75296 7.2334 4.3414 7.2334 4.08755 7.4873C3.83372 7.74072 3.83372 8.15234 4.08757 8.40625L6.85709 11.1758C7.05234 11.3711 7.36893 11.3711 7.56418 11.1758L12.3779 6.3623Z");e.save(),e.translate(l,u),e.scale(s/16,i/16),a&&(e.fillStyle=a),o?e.fill(h,"evenodd"):e.fill(c,"evenodd"),e.restore()}_draw(e){s0.drawWith(e,this)}toJson(){const e={};return jn.forEach(n=>{this[n]&&(e[n]=this[n])}),{...super.toJson(),...e}}}function Go(r,t){if(t.startRow>=r.endRow||t.endRow<=r.startRow||t.startColumn>=r.endColumn||t.endColumn<=r.startColumn)return[r];const e=[];t.startRow>r.startRow&&e.push({startRow:r.startRow,startColumn:r.startColumn,endRow:t.startRow,endColumn:r.endColumn}),t.endRow<r.endRow&&e.push({startRow:t.endRow,startColumn:r.startColumn,endRow:r.endRow,endColumn:r.endColumn});const n=Math.max(r.startRow,t.startRow),s=Math.min(r.endRow,t.endRow);return t.startColumn>r.startColumn&&e.push({startRow:n,startColumn:r.startColumn,endRow:s,endColumn:t.startColumn}),t.endColumn<r.endColumn&&e.push({startRow:n,startColumn:t.endColumn,endRow:s,endColumn:r.endColumn}),e}const zo=3;class Xo{constructor(t,e,n){d(this,"scrollX",0);d(this,"scrollY",0);d(this,"actualScrollX",0);d(this,"actualScrollY",0);d(this,"onMouseWheelObserver",new g.Observable);d(this,"onScrollAfterObserver",new g.Observable);d(this,"onScrollBeforeObserver",new g.Observable);d(this,"onScrollStopObserver",new g.Observable);d(this,"onScrollByBarObserver",new g.Observable);d(this,"_viewPortKey","");d(this,"_topOrigin",0);d(this,"_leftOrigin",0);d(this,"_bottomOrigin",0);d(this,"_rightOrigin",0);d(this,"_widthOrigin");d(this,"_heightOrigin");d(this,"_top",0);d(this,"_left",0);d(this,"_bottom",0);d(this,"_right",0);d(this,"_width");d(this,"_height");d(this,"_scene");d(this,"_scrollBar");d(this,"_isWheelPreventDefaultX",!1);d(this,"_isWheelPreventDefaultY",!1);d(this,"_scrollStopNum",0);d(this,"_preScrollX",0);d(this,"_preScrollY",0);d(this,"_renderClipState",!0);d(this,"_active",!0);d(this,"_paddingStartX",0);d(this,"_paddingEndX",0);d(this,"_paddingStartY",0);d(this,"_paddingEndY",0);d(this,"_isRelativeX",!1);d(this,"_isRelativeY",!1);d(this,"_preViewportBound");this._viewPortKey=t,this._scene=e,(n==null?void 0:n.active)!=null&&(this._active=n.active),this._scene.addViewport(this),this._setWithAndHeight(n),this._isWheelPreventDefaultX=(n==null?void 0:n.isWheelPreventDefaultX)||!1,this._isWheelPreventDefaultY=(n==null?void 0:n.isWheelPreventDefaultY)||!1,this._resizeCacheCanvasAndScrollBar()}get scene(){return this._scene}get width(){return this._width}get height(){return this._height}get viewPortKey(){return this._viewPortKey}get topOrigin(){return this._topOrigin}get leftOrigin(){return this._leftOrigin}get bottomOrigin(){return this._bottomOrigin}get rightOrigin(){return this._rightOrigin}get top(){return this._top}get left(){return this._left}get bottom(){return this._bottom}get right(){return this._right}get isWheelPreventDefaultX(){return this._isWheelPreventDefaultX}get isWheelPreventDefaultY(){return this._isWheelPreventDefaultY}set width(t){this._width=t}set height(t){this._height=t}get isActive(){return this._active===!1||(this.height||0)<=0||(this.width||0)<=0?!1:this._active}set top(t){var e,n;this._topOrigin=t,this._top=te(t,(n=(e=this._scene)==null?void 0:e.getParent())==null?void 0:n.height)}set left(t){var e;this._leftOrigin=t,this._left=te(t,(e=this.scene.getParent())==null?void 0:e.width)}set bottom(t){var e;this._bottomOrigin=t,this._bottom=te(t,(e=this.scene.getParent())==null?void 0:e.height)}set right(t){var e;this._rightOrigin=t,this._right=te(t,(e=this.scene.getParent())==null?void 0:e.width)}enable(){this._active=!0}disable(){this._active=!1}resetSizeAndScrollBar(){this._resizeCacheCanvasAndScrollBar()}setScrollBar(t){this._scrollBar=t,this._resizeCacheCanvasAndScrollBar()}removeScrollBar(){this._scrollBar=null}resize(t){Object.keys(t).length!==0&&(this._setWithAndHeight(t),this._resizeCacheCanvasAndScrollBar())}setPadding(t){const{startX:e=0,startY:n=0,endX:s=0,endY:i=0}=t;this._paddingStartX=e,this._paddingEndX=s,this._paddingStartY=n,this._paddingEndY=i,this._resizeCacheCanvasAndScrollBar()}resetPadding(){this.setPadding({startX:0,endX:0,startY:0,endY:0})}scrollTo(t,e=!0){return this._scroll(0,t,e)}scrollBy(t,e=!0){return this._scroll(1,t,e)}scrollByBar(t,e=!0){var i,a;this._scroll(1,t,e);const{x:n,y:s}=t;this.onScrollByBarObserver.notifyObservers({viewport:this,scrollX:this.scrollX,scrollY:this.scrollY,x:n,y:s,actualScrollX:this.actualScrollX,actualScrollY:this.actualScrollY,limitX:(i=this._scrollBar)==null?void 0:i.limitX,limitY:(a=this._scrollBar)==null?void 0:a.limitY,isTrigger:e})}scrollByOffset(t=0,e=0,n=!0){if(!this._scrollBar||this.isActive===!1)return;const s=t+this._paddingStartX,i=e+this._paddingStartY,a=this.getBarScroll(s,i);return this.scrollBy(a,n)}getBarScroll(t,e){let n=t-this._paddingStartX,s=e-this._paddingStartY;if(this._scrollBar){n*=this._scrollBar.ratioScrollX,s*=this._scrollBar.ratioScrollY;const{scaleX:i,scaleY:a}=this.scene;n*=i,s*=a}else this.scrollX!==void 0&&(n=this.scrollX),this.scrollY!==void 0&&(s=this.scrollY);return{x:n,y:s}}getActualScroll(t,e){let n=t,s=e;if(this._scrollBar){const{scaleX:o,scaleY:u}=this.scene;this._scrollBar.ratioScrollX!==0?(n/=this._scrollBar.ratioScrollX,n/=o):this.actualScrollX!==void 0?n=this.actualScrollX:n=0,this._scrollBar.ratioScrollY!==0?(s/=this._scrollBar.ratioScrollY,s/=u):this.actualScrollY!==void 0?s=this.actualScrollY:s=0}else this.actualScrollX!==void 0?n=this.actualScrollX:n=0,this.actualScrollY!==void 0?s=this.actualScrollY:s=0;const{scaleX:i,scaleY:a}=this._scene.getPrecisionScale();return{x:Z(n+this._paddingStartX,i),y:Z(s+this._paddingStartY,a)}}getTransformedScroll(){const t=this.scrollX,e=this.scrollY;return this.getActualScroll(t,e)}getScrollBar(){return this._scrollBar}updateScroll(t){this._preScrollX=this.scrollX,this._preScrollY=this.scrollY;const{scrollX:e,scrollY:n,actualScrollX:s,actualScrollY:i}=t;return e!==void 0&&(this.scrollX=e),n!==void 0&&(this.scrollY=n),s!==void 0&&(this.actualScrollX=s),i!==void 0&&(this.actualScrollY=i),this}getScrollBarTransForm(){const t=m1.create();return t.multiply(m1.create([1,0,0,1,this._left,this._top])),t}render(t,e=[],n=!1){var c;if(this.isActive===!1||this.width==null||this.height==null||this.width<=1||this.height<=1)return;const s=t||((c=this._scene.getEngine())==null?void 0:c.getCanvas().getContext()),i=this._scene.transform.clone();i.multiply(m1.create([1,0,0,1,-this.actualScrollX||0,-this.actualScrollY||0]));const a=s,o=i.getMatrix(),u=this.getScrollBarTransForm().getMatrix();if(a.save(),this._renderClipState){a.beginPath();const{scaleX:h,scaleY:f}=this._getBoundScale(o[0],o[3]);a.rect(this.left,this.top,(this.width||0)*h,(this.height||0)*f),a.clip()}a.transform(o[0],o[1],o[2],o[3],o[4],o[5]);const l=this._calViewportRelativeBounding();e.forEach(h=>{h.render(a,l)}),a.restore(),this._scrollBar&&n&&(a.save(),a.transform(u[0],u[1],u[2],u[3],u[4],u[5]),this._drawScrollbar(a),a.restore()),this._scrollRendered(),this._preViewportBound=l}getBounding(){return this._calViewportRelativeBounding()}getRelativeVector(t){const e=this.scene.transform.clone().invert(),n=this.getTransformedScroll();return e.applyPoint(t).add(P.FromArray([n.x,n.y]))}getAbsoluteVector(t){const e=this.scene.transform.clone(),n=this.getTransformedScroll();return e.applyPoint(t.subtract(P.FromArray([n.x,n.y])))}onMouseWheel(t,e){if(!this._scrollBar||this.isActive===!1)return;let n;if(t.inputIndex===W.MouseWheelX){const s=Math.abs(t.deltaX),i=this._scene.width,o=(this.width||1)/i*s;t.deltaX>0?n=this.scrollBy({x:o}):n=this.scrollBy({x:-o}),this._scene.getParent().classType===K.SCENE_VIEWER?n!=null&&n.isLimitedX||e.stopPropagation():this._isWheelPreventDefaultX?t.preventDefault():n!=null&&n.isLimitedX||t.preventDefault()}if(t.inputIndex===W.MouseWheelY){const s=Math.abs(t.deltaY),i=this._scene.height;let o=(this.height||1)/i*s;t.shiftKey?(o*=zo,t.deltaY>0?n=this.scrollBy({x:o}):n=this.scrollBy({x:-o}),this._scene.getParent().classType===K.SCENE_VIEWER?n!=null&&n.isLimitedX||e.stopPropagation():this._isWheelPreventDefaultX?t.preventDefault():n!=null&&n.isLimitedX||t.preventDefault()):(t.deltaY>0?n=this.scrollBy({y:o}):n=this.scrollBy({y:-o}),this._scene.getParent().classType===K.SCENE_VIEWER?n!=null&&n.isLimitedY||e.stopPropagation():this._isWheelPreventDefaultY?t.preventDefault():n!=null&&n.isLimitedY||t.preventDefault())}t.inputIndex,W.MouseWheelZ,this._scene.makeDirty(!0)}isHit(t){if(this.isActive===!1)return;const{width:e,height:n}=this._getViewPortSize();return t.x>=this.left&&t.x<=this.left+(e||0)&&t.y>=this.top&&t.y<=this.top+(n||0)}pickScrollBar(t){if(!this._scrollBar)return;const n=this.getScrollBarTransForm().invert().applyPoint(t);return this._scrollBar.pick(n)}openClip(){this._renderClipState=!0}closeClip(){this._renderClipState=!1}dispose(){var t;this.onMouseWheelObserver.clear(),this.onScrollAfterObserver.clear(),this.onScrollBeforeObserver.clear(),this.onScrollStopObserver.clear(),(t=this._scrollBar)==null||t.dispose(),this._scene.removeViewport(this._viewPortKey)}limitedScroll(){var i,a;if(!this._scrollBar)return;const t=(i=this._scrollBar)==null?void 0:i.limitX,e=(a=this._scrollBar)==null?void 0:a.limitY;let n=!0,s=!0;return this.scrollX<0?this.scrollX=0:this.scrollX>t?this.scrollX=t:n=!1,this.scrollY<0?this.scrollY=0:this.scrollY>e?this.scrollY=e:s=!1,{isLimitedX:n,isLimitedY:s}}_resizeCacheCanvasAndScrollBar(){const t=this.actualScrollX,e=this.actualScrollY,{width:n,height:s}=this._getViewPortSize(),i=(this._scene.width-this._paddingEndX)*this._scene.scaleX,a=(this._scene.height-this._paddingEndY)*this._scene.scaleY;if(this._scrollBar){this._scrollBar.resize(n,s,i,a);const{x:o,y:u}=this.getBarScroll(t,e);this.scrollTo({x:o,y:u})}}_getViewPortSize(){const t=this._scene.getParent(),{width:e,height:n}=t,{scaleX:s=1,scaleY:i=1}=this._scene;let a,o,u=this.left*s,l=this.top*i;return this._leftOrigin!=null&&(u=this._leftOrigin*s),this._topOrigin!=null&&(l=this._topOrigin*i),this._widthOrigin!=null?a=this._widthOrigin*s:(a=e-(u+this._right),this.width=a),this._heightOrigin!=null?o=this._heightOrigin*i:(o=n-(l+this._bottom),this.height=o),this._left=u,this._top=l,{width:a,height:o}}_scrollRendered(){this._preScrollX=this.scrollX,this._preScrollY=this.scrollY}_triggerScrollStop(t,e,n,s=!0){clearTimeout(this._scrollStopNum),this._scrollStopNum=setTimeout(()=>{var i,a;this.onScrollStopObserver.notifyObservers({viewport:this,scrollX:this.scrollX,scrollY:this.scrollY,x:e,y:n,actualScrollX:t.x,actualScrollY:t.y,limitX:(i=this._scrollBar)==null?void 0:i.limitX,limitY:(a=this._scrollBar)==null?void 0:a.limitY,isTrigger:s})},2)}_scroll(t,e,n=!0){var u,l,c,h;const{x:s,y:i}=e;if(this._scrollBar==null)return;s!==void 0&&(this._scrollBar.hasHorizonThumb()?t===1?this.scrollX+=s:this.scrollX=s:this.scrollX=0),i!==void 0&&(this._scrollBar.hasVerticalThumb()?t===1?this.scrollY+=i:this.scrollY=i:this.scrollY=0);const a=this.limitedScroll();this.onScrollBeforeObserver.notifyObservers({viewport:this,scrollX:this.scrollX,scrollY:this.scrollY,x:s,y:i,limitX:(u=this._scrollBar)==null?void 0:u.limitX,limitY:(l=this._scrollBar)==null?void 0:l.limitY,isTrigger:n}),this._scrollBar&&this._scrollBar.makeDirty(!0);const o=this.getTransformedScroll();return this.actualScrollX=o.x,this.actualScrollY=o.y,this.onScrollAfterObserver.notifyObservers({viewport:this,scrollX:this.scrollX,scrollY:this.scrollY,x:s,y:i,actualScrollX:o.x,actualScrollY:o.y,limitX:(c=this._scrollBar)==null?void 0:c.limitX,limitY:(h=this._scrollBar)==null?void 0:h.limitY,isTrigger:n}),this._triggerScrollStop(o,s,i,n),a}_calViewportRelativeBounding(){var E;if(this.isActive===!1)return{viewBound:{left:-1,top:-1,right:-1,bottom:-1},diffBounds:[],diffX:-1,diffY:-1,viewPortPosition:{top:0,left:0,bottom:0,right:0},viewPortKey:this.viewPortKey};const e=this._scene.transform.clone().getMatrix(),n=this._isRelativeX&&e[0]<1?e[0]:1,s=this._isRelativeY&&e[3]<1?e[3]:1,i=this._isRelativeX?1:e[0]<1?e[0]:1,a=this._isRelativeY?1:e[3]<1?e[3]:1;let o=this._width,u=this._height;const l=this._getViewPortSize();e[0]>1&&(o=l.width),e[3]>1&&(u=l.height);const c=this.left*n,h=((o||0)+this.left)*i,f=this.top*s,_=((u||0)+this.top)*a,p=this.getRelativeVector(P.FromArray([c,f])),m=this.getRelativeVector(P.FromArray([h,_])),v={top:p.y,left:p.x,right:m.x,bottom:m.y},F=(E=this._preViewportBound)==null?void 0:E.viewBound;return{viewBound:v,diffBounds:this._diffViewBound(v,F),diffX:((F==null?void 0:F.left)||0)-v.left,diffY:((F==null?void 0:F.top)||0)-v.top,viewPortPosition:{top:f,left:c,bottom:_,right:h},viewPortKey:this.viewPortKey}}_diffViewBound(t,e){if(e==null)return[t];const n={startRow:t.top,endRow:t.bottom,startColumn:t.left,endColumn:t.right},s={startRow:e.top,endRow:e.bottom,startColumn:e.left,endColumn:e.right};return Go(n,s).map(a=>{const{startRow:o,endRow:u,startColumn:l,endColumn:c}=a;return{left:l,top:o,right:c,bottom:u}})}_drawScrollbar(t){if(!this._scrollBar)return;const e=this._scene.getParent();e.classType===K.SCENE_VIEWER?this._scrollBar.render(t):e.classType===K.ENGINE&&this._scrollBar.render(t)}_setWithAndHeight(t){this.top=(t==null?void 0:t.top)||0,this.left=(t==null?void 0:t.left)||0,this.bottom=(t==null?void 0:t.bottom)||0,this.right=(t==null?void 0:t.right)||0,g.Tools.isDefine(t==null?void 0:t.width)?(this.width=t==null?void 0:t.width,this._widthOrigin=this.width,this._isRelativeX=!1):(this.width=null,this._widthOrigin=null,this._isRelativeX=!0),g.Tools.isDefine(t==null?void 0:t.height)?(this.height=t==null?void 0:t.height,this._heightOrigin=this.height,this._isRelativeY=!1):(this.height=null,this._heightOrigin=null,this._isRelativeY=!0)}_getBoundScale(t,e){return t=this._isRelativeX&&t<1?1:t,e=this._isRelativeY&&e<1?1:e,{scaleX:t,scaleY:e}}}var Ft=(r=>(r[r.page=0]="page",r[r.section=1]="section",r[r.column=2]="column",r[r.line=3]="line",r[r.divide=4]="divide",r[r.glyph=5]="glyph",r))(Ft||{});const t2={page:0,section:1,column:2,line:3,divide:4,glyph:5};function Kn(r,t){return r.page>t.page?!1:r.page<t.page?!0:r.section>t.section?!1:r.section<t.section?!0:r.column>t.column?!1:r.column<t.column?!0:r.line>t.line?!1:r.line<t.line?!0:r.divide>t.divide?!1:r.divide<t.divide?!0:r.glyph>t.glyph?!1:(r.glyph<t.glyph,!0)}function i0(r,t){return Kn(r,t)?{start:r,end:t}:{start:t,end:r}}function qn(r){const t=r.length;if(t===0)return;const e=r[0],n=r[t-1],s=r.length===1&&e.collapsed;return{startOffset:e.startOffset,endOffset:n.endOffset,collapsed:s}}function Wo(r,t,e,n){let s=n,i=n;for(let a=0;a<r.length;a++){const u=r[a].count;a<t&&(s+=u),a<e&&(i+=u)}return{startOffset:s,endOffset:i}}class Zn{constructor(t,e){d(this,"_liquid",new m2);d(this,"_currentStartState",{page:0,section:0,column:0,line:0,divide:0,glyph:0});d(this,"_currentEndState",{page:0,section:0,column:0,line:0,divide:0,glyph:0});this._documentOffsetConfig=t,this._docSkeleton=e}getRangePointData(t,e){const n=[],s=[],i=[];if(t==null||e==null)return{borderBoxPointGroup:n,contentBoxPointGroup:s,cursorList:i};const{start:a,end:o}=i0(t,e);return this._selectionIterator(a,o,(u,l,c,h,f,_)=>{const{lineHeight:p,marginTop:m,contentHeight:v}=_,{glyphGroup:F,st:E}=f,{x:S,y:B}=this._liquid;let x,w;const O=F[u],T=F[l],R=(O==null?void 0:O.left)||0,k=(O==null?void 0:O.width)||0,$=(T==null?void 0:T.left)||0,M=(T==null?void 0:T.width)||0,U=(O==null?void 0:O.glyphType)===A1.LIST,{startOffset:I,endOffset:L}=Wo(F,u,l,E),H=a.glyph===u&&c?a.isBack:!0,X=o.glyph===l&&h?o.isBack:!1,j=a===o;if(u===0&&l===F.length-1)x={startX:S+R+(U?k:0),startY:B,endX:S+$+M,endY:B+p},w={startX:S+R+(U?k:0),startY:B+m,endX:S+$+M,endY:B+m+v};else{const G=H&&!U;x={startX:S+R+(G?0:k),startY:B,endX:S+$+(X?0:M),endY:B+p},w={startX:S+R+(G?0:k),startY:B+m,endX:S+$+(X?0:M),endY:B+m+v}}n.push(this._pushToPoints(x)),s.push(this._pushToPoints(w)),i.push({startOffset:H?I:I+O.count,endOffset:X?L:L+T.count,collapsed:j})}),{borderBoxPointGroup:n,contentBoxPointGroup:s,cursorList:i}}_resetCurrentNodePositionState(){this._currentStartState={page:0,section:0,column:0,line:0,divide:0,glyph:0},this._currentEndState={page:0,section:0,column:0,line:0,divide:0,glyph:0}}_setNodePositionState(t=0,e,n,s){s===e?this._currentStartState[t]=1:this._currentStartState[t]=0,s===n?this._currentEndState[t]=2:this._currentEndState[t]=0}_checkPreviousNodePositionState(t,e=!0){let n=t,s;for(;n>=0;){const i=Ft[n];let a;if(e?a=this._currentStartState[i]:a=this._currentEndState[i],a===void 0)return;if(s===void 0&&(s=a),a!==s)return 0;n--}return s}_getSelectionRuler(t,e,n,s,i){let a=0,o=s;const u=Ft[t],l=Ft[t+1];if(l===null||u===null)return{start_next:a,end_next:o};const c=e[u],h=n[u];this._setNodePositionState(u,c,h,i);const f=this._checkPreviousNodePositionState(t),_=this._checkPreviousNodePositionState(t,!1);return f===1&&(a=e[l]),_===2&&(o=n[l]),{start_next:a,end_next:o}}_pushToPoints(t){const{startX:e,startY:n,endX:s,endY:i}=t,a=[];return a.push({x:e,y:n}),a.push({x:s,y:n}),a.push({x:s,y:i}),a.push({x:e,y:i}),a.push({x:e,y:n}),a}_selectionIterator(t,e,n){const s=this._docSkeleton;if(!s)return[];this._liquid.reset();const i=s.getSkeletonData();if(i==null)return[];const a=i.pages,{page:o}=t,{page:u}=e;if(this._resetCurrentNodePositionState(),this._documentOffsetConfig==null)return[];const{pageLayoutType:l,pageMarginLeft:c,pageMarginTop:h}=this._documentOffsetConfig;for(let f=0;f<=o-1;f++){const _=a[f];this._liquid.translatePage(_,l,c,h)}for(let f=o;f<=u;f++){const _=a[f],p=_.sections,{start_next:m,end_next:v}=this._getSelectionRuler(t2.page,t,e,p.length-1,f);this._liquid.translateSave(),this._liquid.translatePagePadding(_);for(let F=m;F<=v;F++){const E=p[F],S=E.columns,{start_next:B,end_next:x}=this._getSelectionRuler(t2.section,t,e,S.length-1,F);this._liquid.translateSection(E);for(let w=B;w<=x;w++){const O=S[w],T=O.lines,{start_next:R,end_next:k}=this._getSelectionRuler(t2.column,t,e,T.length-1,w);this._liquid.translateColumn(O);for(let $=R;$<=k;$++){const M=T[$],{divides:U}=M,{start_next:I,end_next:L}=this._getSelectionRuler(t2.line,t,e,U.length-1,$);this._liquid.translateSave(),this._liquid.translateLine(M);for(let H=I;H<=L;H++){const X=U[H];this._liquid.translateSave(),this._liquid.translateDivide(X);const j=X.glyphGroup,{start_next:G,end_next:Q}=this._getSelectionRuler(t2.divide,t,e,j.length-1,H);let t1=!1,n1=!1;f===o&&F===m&&w===B&&$===R&&H===I&&(t1=!0),f===u&&F===v&&w===x&&$===k&&H===L&&(n1=!0),n&&n(G,Q,t1,n1,X,M,O,E,_),this._liquid.translateRestore()}this._liquid.translateRestore()}}}this._liquid.translateRestore(),this._liquid.translatePage(_,l,c,h)}}}const Yo="__TestSelectionRange__",Vo="__TestSelectionAnchor__",Jn=6,a0=500,jo=500,o0=1;function Ko(r,t,e,n){const{startOffset:s,endOffset:i,style:a=g2}=t,o=e.findNodePositionByCharIndex(s),u=s!==i?e.findNodePositionByCharIndex(i):null,l=new Ct(r,n,e,o,u,a);return l.refresh(),l}function Qn(r){const t=r[0],e=t[0],n=t[2],{x:s,y:i}=e,{x:a,y:o}=n;return{left:s,top:i,width:a-s,height:o-i}}class Ct{constructor(t,e,n,s,i,a=g2){d(this,"_current",!1);d(this,"_rangeShape");d(this,"_anchorShape");d(this,"_cursorList",[]);d(this,"_anchorBlinkTimer",null);this._scene=t,this._document=e,this._docSkeleton=n,this.anchorNodePosition=s,this.focusNodePosition=i,this.style=a,this._anchorBlink()}_anchorBlink(){setTimeout(()=>{this._anchorShape&&this._anchorShape.visible&&this.deactivateStatic()},a0),this._anchorBlinkTimer=setInterval(()=>{this._anchorShape&&this._anchorShape.visible&&(this.activeStatic(),setTimeout(()=>{this.deactivateStatic()},a0))},jo+a0)}get startOffset(){var s;const{startOffset:t}=(s=qn(this._cursorList))!=null?s:{},e=this._docSkeleton.getViewModel().getBody();if(t==null||e==null)return t;const n=e.dataStream.length-2;return Math.min(n,t)}get endOffset(){var s;const{endOffset:t}=(s=qn(this._cursorList))!=null?s:{},e=this._docSkeleton.getViewModel().getBody();if(t==null||e==null)return t;const n=e.dataStream.length-2;return Math.min(t,n)}get collapsed(){const{startOffset:t,endOffset:e}=this;return t!=null&&t===e}get startNodePosition(){if(this.anchorNodePosition==null)return null;if(this.focusNodePosition==null)return this.anchorNodePosition;const{start:t}=i0(this.anchorNodePosition,this.focusNodePosition);return t}get endNodePosition(){if(this.anchorNodePosition==null)return this.focusNodePosition;if(this.focusNodePosition==null)return null;const{end:t}=i0(this.anchorNodePosition,this.focusNodePosition);return t}get direction(){const{collapsed:t,anchorNodePosition:e,focusNodePosition:n}=this;return t||e==null||n==null?D2.NONE:Kn(e,n)?D2.FORWARD:D2.BACKWARD}getAnchor(){return this._anchorShape}activeStatic(){var t,e;(e=this._anchorShape)==null||e.setProps({stroke:((t=this.style)==null?void 0:t.strokeActive)||F1(g.COLORS.black,1)})}deactivateStatic(){var t,e;(e=this._anchorShape)==null||e.setProps({stroke:((t=this.style)==null?void 0:t.stroke)||F1(g.COLORS.black,0)})}isActive(){return this._current===!0}activate(){this._current=!0}deactivate(){this._current=!1}dispose(){var t,e;(t=this._rangeShape)==null||t.dispose(),this._rangeShape=null,(e=this._anchorShape)==null||e.dispose(),this._anchorShape=null,this._anchorBlinkTimer&&(clearInterval(this._anchorBlinkTimer),this._anchorBlinkTimer=null)}isIntersection(t){const{startOffset:e,endOffset:n}=this,{startOffset:s,endOffset:i}=t;return e==null||n==null||s==null||i==null?!1:e<=i&&n>=s}refresh(){var h,f;const{_document:t,_docSkeleton:e}=this,n=this.anchorNodePosition,s=this.focusNodePosition;if((h=this._anchorShape)==null||h.hide(),(f=this._rangeShape)==null||f.hide(),this._isEmpty())return;const i=t.getOffsetConfig(),{docsLeft:a,docsTop:o}=i,u=new Zn(i,e);if(this._isCollapsed()){const{contentBoxPointGroup:_,cursorList:p}=u.getRangePointData(n,n);this._setCursorList(p),_.length>0&&this._createOrUpdateAnchor(_,a,o);return}const{borderBoxPointGroup:l,cursorList:c}=u.getRangePointData(n,s);this._setCursorList(c),l.length>0&&this._createOrUpdateRange(l,a,o)}_isEmpty(){return this.anchorNodePosition==null&&this.focusNodePosition==null}_isCollapsed(){const t=this.anchorNodePosition,e=this.focusNodePosition;if(t!=null&&e==null)return!0;if(t==null||e==null)return!1;const n=Object.keys(t2);for(const s of n){const i=t[s],a=e[s];if(i!==a)return!1}return t.isBack===e.isBack}_createOrUpdateRange(t,e,n){var a;if(this._rangeShape){this._rangeShape.translate(e,n),this._rangeShape.updatePointGroup(t),this._rangeShape.show();return}const s=.2,i=new yt(Yo+g.Tools.generateRandomId(Jn),{pointsGroup:t,fill:((a=this.style)==null?void 0:a.fill)||F1(g.COLORS.black,s),left:e,top:n,evented:!1,debounceParentDirty:!1});this._rangeShape=i,this._scene.addObject(i,o0)}_createOrUpdateAnchor(t,e,n){var l,c;const s=Qn(t),{left:i,top:a,height:o}=s;if(this._anchorShape){this._anchorShape.transformByState({left:i+e,top:a+n,height:o}),this._anchorShape.show();return}const u=new L1(Vo+g.Tools.generateRandomId(Jn),{left:i+e,top:a+n,height:o,strokeWidth:((l=this.style)==null?void 0:l.strokeWidth)||1,stroke:((c=this.style)==null?void 0:c.strokeActive)||F1(g.COLORS.black,1),evented:!1});this._anchorShape=u,this._scene.addObject(u,o0)}_setCursorList(t){t.length!==0&&(this._cursorList=t)}}function qo(r){const t=r.getBoundingClientRect(),e=document.body,n=document.documentElement,s=window.pageYOffset||n.scrollTop||e.scrollTop,i=window.pageXOffset||n.scrollLeft||e.scrollLeft,a=n.clientTop||e.clientTop,o=n.clientLeft||e.clientLeft,u=t.top+s-a,l=t.left+i-o;return{top:u,left:l}}var Zo=Object.defineProperty,Jo=Object.getOwnPropertyDescriptor,Qo=(r,t,e,n)=>{for(var s=n>1?void 0:n?Jo(t,e):t,i=r.length-1,a;i>=0;i--)(a=r[i])&&(s=(n?a(t,e,s):a(s))||s);return n&&s&&Zo(t,e,s),s},eu=(r,t)=>(e,n)=>t(e,n,r);function e3(r){const t=r==null?void 0:r.getCanvasElement();if(!t)return{left:0,top:0};const{top:e,left:n}=qo(t);return{left:n,top:e}}function t3(r){var u;const t=(u=r.parent)==null?void 0:u.parent,e=t==null?void 0:t.parent;if(t==null||e==null)return;const{paragraphIndex:n}=t,s=e.lines.filter(l=>l.paragraphIndex===n);let i=-1,a="",o=!1;for(const l of s)for(const c of l.divides)for(const h of c.glyphGroup)o||(i+=h.count),h===r&&(o=!0),a+=h.count>0?h.content:"";return{st:s[0].st,ed:n,content:a,nodeIndex:i}}y.TextSelectionRenderManager=class extends g.RxDisposable{constructor(e){super();d(this,"_onInputBefore$",new u1.BehaviorSubject(null));d(this,"onInputBefore$",this._onInputBefore$.asObservable());d(this,"_onKeydown$",new u1.BehaviorSubject(null));d(this,"onKeydown$",this._onKeydown$.asObservable());d(this,"_onInput$",new u1.BehaviorSubject(null));d(this,"onInput$",this._onInput$.asObservable());d(this,"_onCompositionstart$",new u1.BehaviorSubject(null));d(this,"onCompositionstart$",this._onCompositionstart$.asObservable());d(this,"_onCompositionupdate$",new u1.BehaviorSubject(null));d(this,"onCompositionupdate$",this._onCompositionupdate$.asObservable());d(this,"_onCompositionend$",new u1.BehaviorSubject(null));d(this,"onCompositionend$",this._onCompositionend$.asObservable());d(this,"_onSelectionStart$",new u1.BehaviorSubject(null));d(this,"onSelectionStart$",this._onSelectionStart$.asObservable());d(this,"_onPaste$",new u1.Subject);d(this,"onPaste$",this._onPaste$.asObservable());d(this,"_textSelectionInner$",new u1.BehaviorSubject(null));d(this,"textSelectionInner$",this._textSelectionInner$.asObservable());d(this,"_onFocus$",new u1.Subject);d(this,"onFocus$",this._onFocus$.asObservable());d(this,"_onBlur$",new u1.Subject);d(this,"onBlur$",this._onBlur$.asObservable());d(this,"_container");d(this,"_inputParent");d(this,"_input");d(this,"_moveObservers",[]);d(this,"_upObservers",[]);d(this,"_scrollTimers",[]);d(this,"_viewportScrollX",0);d(this,"_viewportScrollY",0);d(this,"_rangeList",[]);d(this,"_currentSegmentId","");d(this,"_selectionStyle",g2);d(this,"_isSelectionEnabled",!0);d(this,"_viewPortObserverMap",new Map);d(this,"_isIMEInputApply",!1);d(this,"_activeViewport");d(this,"_docSkeleton");d(this,"_scene");d(this,"_document");this._logService=e,this._initDOM()}__getEditorContainer(){return this._container}getViewPort(){return this._activeViewport}setSegment(e){this._currentSegmentId=e}setStyle(e=g2){this._selectionStyle=e}resetStyle(){this.setStyle()}enableSelection(){this._isSelectionEnabled=!0}disableSelection(){this._isSelectionEnabled=!1}addTextRanges(e,n=!0){const{_scene:s,_docSkeleton:i}=this;for(const a of e){const o=Ko(s,a,i,this._document);this._add(o)}this._textSelectionInner$.next({textRanges:this._getAllTextRanges(),segmentId:this._currentSegmentId,style:this._selectionStyle,isEditing:n}),this._updateInputPosition()}sync(){this._updateInputPosition()}activate(e,n){this._container.style.left=`${e}px`,this._container.style.top=`${n}px`,this._container.style.zIndex="1000",this.focus()}hasFocus(){return document.activeElement===this._input}focus(){this._input.focus()}blur(){this._input.blur()}deactivate(){this._container.style.left="0px",this._container.style.top="0px"}changeRuntime(e,n,s){e!==this._docSkeleton&&this.removeAllTextRanges(),this._docSkeleton=e,this._scene=n,this._activeViewport=n.getViewports()[0],this._document=s,this._attachScrollEvent(this._activeViewport)}handleDblClick(e){if(!this._scene||!this._isSelectionEnabled)return;const{offsetX:n,offsetY:s}=e,i=this._findNodeByCoord(n,s);if(i==null||i.node==null)return;const a=t3(i.node);if(a==null)return;const{content:o,st:u,nodeIndex:l}=a;if(l===-1||Intl.Segmenter==null)return;const h=new Intl.Segmenter(void 0,{granularity:"word"}).segment(o);let f=Number.NEGATIVE_INFINITY,_=Number.NEGATIVE_INFINITY;for(const{segment:p,index:m,isWordLike:v}of h)if(m<=l&&l<m+p.length&&v){f=m+u,_=m+u+p.length;break}if(Number.isFinite(f)&&Number.isFinite(_)){this.removeAllTextRanges();const p=[{startOffset:f,endOffset:_}];this.addTextRanges(p,!1)}}handleTripleClick(e){if(!this._scene||!this._isSelectionEnabled)return;const{offsetX:n,offsetY:s}=e,i=this._findNodeByCoord(n,s);if(i==null||i.node==null)return;const a=t3(i.node);if(a==null)return;this.removeAllTextRanges();const{st:o,ed:u}=a,l=[{startOffset:o,endOffset:u,collapsed:o===u}];this.addTextRanges(l,!1)}setCursorManually(e,n){const s=this._findNodeByCoord(e,n),i=this._getNodePosition(s);if(i==null){this._removeAllTextRanges();return}(s==null?void 0:s.node.streamType)===g.DataStreamTreeTokenType.PARAGRAPH&&(i.isBack=!0),this._updateTextRangeAnchorPosition(i),this._activeSelectionRefresh()}eventTrigger(e){var _;if(!this._scene||!this._isSelectionEnabled)return;const n=this._scene,{offsetX:s,offsetY:i}=e,a=this._findNodeByCoord(s,i),o=this._getNodePosition(a);if(o==null){this._removeAllTextRanges();return}if((a==null?void 0:a.node.streamType)===g.DataStreamTreeTokenType.PARAGRAPH&&(o.isBack=!0),e.shiftKey&&this._getActiveRangeInstance())this._updateActiveRangeFocusPosition(o);else if(e.ctrlKey||this._isEmpty()){const p=new Ct(n,this._document,this._docSkeleton,o);this._addTextRange(p)}else this._updateTextRangeAnchorPosition(o);this._activeSelectionRefresh(),n.disableEvent();const u=Qe.create(n);this._scrollTimers.push(u),u.startScroll(s,i);const{scrollX:l,scrollY:c}=He(u);this._viewportScrollX=l,this._viewportScrollY=c,this._onSelectionStart$.next((_=this._getActiveRangeInstance())==null?void 0:_.startNodePosition);let h=s,f=i;this._moveObservers.push(n.onPointerMoveObserver.add(p=>{const{offsetX:m,offsetY:v}=p;n.setCursor(d1.TEXT),!(Math.sqrt((m-h)**2+(v-f)**2)<3)&&(this._moving(m,v),h=m,f=v)})),this._upObservers.push(n.onPointerUpObserver.add(()=>{this._moveObservers.forEach(p=>{p==null||p.dispose()}),this._upObservers.forEach(p=>{p==null||p.dispose()}),this._moveObservers=[],this._upObservers=[],n.enableEvent(),this._textSelectionInner$.next({textRanges:this._getAllTextRanges(),segmentId:this._currentSegmentId,style:this._selectionStyle,isEditing:!1}),this._scrollTimers.forEach(p=>{p==null||p.dispose()}),this._scrollTimers=[],this._updateInputPosition()}))}removeAllTextRanges(){this._removeAllTextRanges(),this.deactivate()}_getAllTextRanges(){return this._rangeList}_getActiveRange(){const e=this._rangeList.find(l=>l.isActive());if(e==null)return null;const{startOffset:n,endOffset:s,collapsed:i,startNodePosition:a,endNodePosition:o,direction:u}=e;return n==null||s==null?null:{startOffset:n,endOffset:s,collapsed:i,startNodePosition:a,endNodePosition:o,direction:u,segmentId:this._currentSegmentId,style:this._selectionStyle}}_add(e){e!=null&&(this._addTextRange(e),e.refresh())}_getActiveRangeInstance(){return this._rangeList.find(e=>e.isActive())}dispose(){super.dispose(),this._detachEvent(),this._container.remove()}_initDOM(){const e=document.createElement("div");e.style.position="fixed",e.style.left="0px",e.style.top="0px";const n=document.createElement("div"),s=document.createElement("div");n.appendChild(s),e.appendChild(n),this._container=e,this._inputParent=n,this._input=s,this._initInput(),this._initInputEvents(),document.body.appendChild(e)}_initInput(){this._inputParent.style.cssText=`
|
|
1
|
+
(function(y,g){typeof exports=="object"&&typeof module<"u"?g(exports,require("@univerjs/core"),require("@wendellhu/redi"),require("rxjs")):typeof define=="function"&&define.amd?define(["exports","@univerjs/core","@wendellhu/redi","rxjs"],g):(y=typeof globalThis<"u"?globalThis:y||self,g(y.UniverEngineRender={},y.UniverCore,y["@wendellhu/redi"],y.rxjs))})(this,function(y,g,C1,o1){"use strict";var hu=Object.defineProperty;var fu=(y,g,C1)=>g in y?hu(y,g,{enumerable:!0,configurable:!0,writable:!0,value:C1}):y[g]=C1;var _=(y,g,C1)=>(fu(y,typeof g!="symbol"?g+"":g,C1),C1);var o0;var Ct=(r=>(r.RECT="rect",r.CIRCLE="circle",r.PATH="path",r))(Ct||{}),Y1=(r=>(r.PointerMove="PointerMove",r.PointerDown="PointerDown",r.PointerUp="PointerUp",r.PointerOut="PointerOut",r.PointerLeave="PointerLeave",r.PointerOver="PointerOver",r.PointerEnter="PointerEnter",r.wheel="MouseWheel",r.KeyDown="KeyDown",r.KeyUp="KeyUp",r))(Y1||{}),c0=(r=>(r[r.XY=0]="XY",r[r.X=1]="X",r[r.Y=2]="Y",r))(c0||{});const Et=1,o2='"Helvetica Neue", Helvetica, Arial, "PingFang SC", "Hiragino Sans GB", "Heiti SC", "Microsoft YaHei", "WenQuanYi Micro Hei", sans-serif',h0={lines:[],drawings:new Map,height:0,st:0,ed:0,marginLeft:0},a3={...h0,marginTop:20},o3={...h0,marginBottom:20},St=1,f0=14;var f1=(r=>(r.DEFAULT="default",r.AUTO="auto",r.CROSSHAIR="crosshair",r.POINTER="pointer",r.MOVE="move",r.EAST_RESIZE="e-resize",r.NORTH_EAST_RESIZE="ne-resize",r.NORTH_WEST_RESIZE="nw-resize",r.NORTH_RESIZE="n-resize",r.SOUTH_EAST_RESIZE="se-resize",r.SOUTH_WEST_RESIZE="sw-resize",r.SOUTH_RESIZE="s-resize",r.WEST_RESIZE="w-resize",r.TEXT="text",r.WAIT="wait",r.HELP="help",r.CELL="cell",r.NONE="none",r.VERTICAL_TEXT="vertical-text",r.NO_DROP="no-drop",r.GRAB="grab",r.GRABBING="grabbing",r.ALL_SCROLL="all-scroll",r.COLUMN_RESIZE="col-resize",r.ROW_RESIZE="row-resize",r.PROGRESS="progress",r.NOT_ALLOWED="not-allowed",r.ZOOM_IN="zoom-in",r.ZOOM_OUT="zoom-out",r))(f1||{}),d0=(r=>(r[r.noClip=0]="noClip",r[r.DOC_SIZE=1]="DOC_SIZE",r[r.CONTENT_SIZE_LEFT=2]="CONTENT_SIZE_LEFT",r[r.CONTENT_SIZE_CENTER=3]="CONTENT_SIZE_CENTER",r[r.CONTENT_SIZE_Right=4]="CONTENT_SIZE_Right",r))(d0||{});const he="rgb(0,0,0)";var q=(r=>(r.TOP="t",r.BOTTOM="b",r.LEFT="l",r.RIGHT="r",r.TL_BR="tl_br",r.TL_BC="tl_bc",r.TL_MR="tl_mr",r.BL_TR="bl_tr",r.ML_TR="ml_tr",r.BC_TR="bc_tr",r))(q||{}),u2=(r=>(r[r.UP=0]="UP",r[r.DOWN=1]="DOWN",r))(u2||{}),K=(r=>(r.ENGINE="Engine",r.SCENE="Scene",r.BASE_OBJECT="BaseObject",r.SCENE_VIEWER="SceneViewer",r.CANVAS="Canvas",r.VIEWPORT="Viewport",r.LAYER="Layer",r.GROUP="Group",r))(K||{});const u3=1e3,_0=2e3,g1=.5;var l1=(r=>(r[r.translate=0]="translate",r[r.resize=1]="resize",r[r.scale=2]="scale",r[r.skew=3]="skew",r[r.flip=4]="flip",r[r.all=5]="all",r))(l1||{});class l3{isEmpty(){return this._isEmpty()}toString(t){if(this.isEmpty())throw new Error("Output is empty.");return this._toString(t)}toRegExp(t){return new RegExp(this.toString(t),t)}}class j1 extends l3{constructor(...t){super(),this.data=[];for(const e of t)e instanceof j1?this.data.push(...e.data):this.data.push(h3(e));this._unique()}union(...t){return new j1(this,...t)}subtract(...t){const e=this.data.slice(),n=[];let s=0;const{data:i}=new j1(...t);for(;e.length!==0;){const a=e.shift(),[o,u]=a;let l;do{l=!0;const c=i[s];if(c===void 0){n.push(a);break}const[h,f]=c;f<o?(l=!1,s++):u<h?n.push(a):h<=o&&f<u?(s++,e.unshift([f+1,u])):o<h&&f<u?(s++,n.push([o,h-1]),e.unshift([f+1,u])):o<h&&u<=f&&n.push([o,h-1])}while(!l)}return new j1(...n)}intersect(...t){return this.subtract(this.subtract(...t))}_isEmpty(){return this.data.length===0}_toString(t){return d3(this.data,t)}_unique(){this.data.sort(f3);const t=[];let e=null;for(const n of this.data)e===null||e[1]+1<n[0]?(t.push(n),e=n):(t.splice(-1,1,[Math.min(n[0],e[0]),Math.max(n[1],e[1])]),e=t[t.length-1]);this.data=t}}const N2=(...r)=>new j1(...r);function c3(r){if(r.length!==1){const t=`${r.length} (${JSON.stringify(r)})`;throw new Error(`Expected length = 1, but received ${t}.`)}return r.charCodeAt(0)}function h3(r){if(typeof r=="number"&&(r<0||r>1114111))throw new Error(`Invalid unicode code point detected: ${r<0?r:`0x${r.toString(16)}`}`);const[t]=[r].map(e=>typeof e!="object"?[e,e]:e).map(e=>e.map(n=>typeof n=="string"?c3(n):n));return t}function f3(r,t){return r[0]-t[0]}function d3(r,t=""){if(t.includes("u"))return g0(r,!0);const{normal:e,surrogate:n}=g3(r),s=[];return e.length!==0&&s.push(g0(e,!1)),s.push(..._3(n)),s.join("|")}function g0(r,t){return`[${r.map(([n,s])=>n===s?l2(n,t):`${l2(n,t)}-${l2(s,t)}`).join("")}]`}function _3(r){const t=[];if(r.entire.data.length!==0){const e=r.entire.toString(),n=`[${[56320,57343].map(s=>l2(s,!1)).join("-")}]`;t.push(`${e}${n}`)}for(const{h:e,l:n}of r.partial){const s=l2(e,!1),i=n.toString();t.push(`${s}${i}`)}return t}function g3(r){const t=[],e=[];for(let n=0;n<r.length;n++){const s=r[n],[i,a]=s;if(i>=65536){e.push(...r.slice(n));break}if(a>=65536){t.push([i,65535]),e.push([65536,a],...r.slice(n+1));break}t.push(s)}return{normal:t,surrogate:p3(e)}}function p3(r){const t=[],e=[];for(const[i,a]of r){const o=p0(i),u=p0(a);if(o.h===u.h){s(o.h,o.l,u.l);continue}o.l===56320?n(o.h):s(o.h,o.l,57343);for(let l=o.h+1;l<u.h;l++)n(l);u.l===57343?n(u.h):s(u.h,56320,u.l)}return{entire:new j1(...t),partial:e.map(({h:i,l:a})=>({h:i,l:new j1(...a)}))};function n(i){t.push(i)}function s(i,a,o){const u=e[e.length-1];u!==void 0&&u.h===i?u.l.push([a,o]):e.push({h:i,l:[[a,o]]})}}function p0(r){return{h:Math.floor((r-65536)/1024)+55296,l:(r-65536)%1024+56320}}function l2(r,t){const e=r.toString(16);return t?`\\u{${e}}`:`\\u${"0".repeat(4-e.length)}${e}`}const D3=Object.freeze(Object.defineProperty({__proto__:null,Bidi_Class:Object.freeze(Object.defineProperty({__proto__:null,Arabic_Letter:[1544,1547,1549,[1563,1610],[1645,1647],[1649,1749],[1765,1766],[1774,1775],[1786,1805],[1807,1808],[1810,1839],[1869,1957],1969,[2144,2154],[2160,2190],[2208,2249],[64336,64450],[64467,64829],[64848,64911],[64914,64967],[65008,65020],[65136,65140],[65142,65276],[68864,68899],[69424,69445],[69457,69465],[126065,126132],[126209,126269],[126464,126467],[126469,126495],[126497,126498],126500,126503,[126505,126514],[126516,126519],126521,126523,126530,126535,126537,126539,[126541,126543],[126545,126546],126548,126551,126553,126555,126557,126559,[126561,126562],126564,[126567,126570],[126572,126578],[126580,126583],[126585,126588],126590,[126592,126601],[126603,126619],[126625,126627],[126629,126633],[126635,126651]],Arabic_Number:[[1536,1541],[1632,1641],[1643,1644],1757,[2192,2193],2274,[68912,68921],[69216,69246]],Boundary_Neutral:[[0,8],[14,27],[127,132],[134,159],173,6158,[8203,8205],[8288,8292],[8298,8303],65279,[113824,113827],[119155,119162],917505,[917536,917631]],Common_Separator:[44,[46,47],58,160,1548,8239,8260,65104,65106,65109,65292,[65294,65295],65306],European_Number:[[48,57],[178,179],185,[1776,1785],8304,[8308,8313],[8320,8329],[9352,9371],[65296,65305],[66273,66299],[120782,120831],[127232,127242],[130032,130041]],European_Separator:[43,45,[8314,8315],[8330,8331],8722,64297,[65122,65123],65291,65293],European_Terminator:[[35,37],[162,165],[176,177],1423,[1545,1546],1642,[2546,2547],2555,2801,3065,3647,6107,[8240,8244],[8352,8384],8494,8723,[43064,43065],65119,[65129,65130],[65283,65285],[65504,65505],[65509,65510],[73693,73696],123647],First_Strong_Isolate:[8296],Left_To_Right:[[65,90],[97,122],170,181,186,[192,214],[216,246],[248,696],[699,705],[720,721],[736,740],750,[880,883],[886,887],[890,893],895,902,[904,906],908,[910,929],[931,1013],[1015,1154],[1162,1327],[1329,1366],[1369,1417],[2307,2361],2363,[2365,2368],[2377,2380],[2382,2384],[2392,2401],[2404,2432],[2434,2435],[2437,2444],[2447,2448],[2451,2472],[2474,2480],2482,[2486,2489],[2493,2496],[2503,2504],[2507,2508],2510,2519,[2524,2525],[2527,2529],[2534,2545],[2548,2554],[2556,2557],2563,[2565,2570],[2575,2576],[2579,2600],[2602,2608],[2610,2611],[2613,2614],[2616,2617],[2622,2624],[2649,2652],2654,[2662,2671],[2674,2676],2678,2691,[2693,2701],[2703,2705],[2707,2728],[2730,2736],[2738,2739],[2741,2745],[2749,2752],2761,[2763,2764],2768,[2784,2785],[2790,2800],2809,[2818,2819],[2821,2828],[2831,2832],[2835,2856],[2858,2864],[2866,2867],[2869,2873],[2877,2878],2880,[2887,2888],[2891,2892],2903,[2908,2909],[2911,2913],[2918,2935],2947,[2949,2954],[2958,2960],[2962,2965],[2969,2970],2972,[2974,2975],[2979,2980],[2984,2986],[2990,3001],[3006,3007],[3009,3010],[3014,3016],[3018,3020],3024,3031,[3046,3058],[3073,3075],[3077,3084],[3086,3088],[3090,3112],[3114,3129],3133,[3137,3140],[3160,3162],3165,[3168,3169],[3174,3183],3191,[3199,3200],[3202,3212],[3214,3216],[3218,3240],[3242,3251],[3253,3257],[3261,3268],[3270,3272],[3274,3275],[3285,3286],[3293,3294],[3296,3297],[3302,3311],[3313,3315],[3330,3340],[3342,3344],[3346,3386],[3389,3392],[3398,3400],[3402,3404],[3406,3407],[3412,3425],[3430,3455],[3458,3459],[3461,3478],[3482,3505],[3507,3515],3517,[3520,3526],[3535,3537],[3544,3551],[3558,3567],[3570,3572],[3585,3632],[3634,3635],[3648,3654],[3663,3675],[3713,3714],3716,[3718,3722],[3724,3747],3749,[3751,3760],[3762,3763],3773,[3776,3780],3782,[3792,3801],[3804,3807],[3840,3863],[3866,3892],3894,3896,[3902,3911],[3913,3948],3967,3973,[3976,3980],[4030,4037],[4039,4044],[4046,4058],[4096,4140],4145,4152,[4155,4156],[4159,4183],[4186,4189],[4193,4208],[4213,4225],[4227,4228],[4231,4236],[4238,4252],[4254,4293],4295,4301,[4304,4680],[4682,4685],[4688,4694],4696,[4698,4701],[4704,4744],[4746,4749],[4752,4784],[4786,4789],[4792,4798],4800,[4802,4805],[4808,4822],[4824,4880],[4882,4885],[4888,4954],[4960,4988],[4992,5007],[5024,5109],[5112,5117],[5121,5759],[5761,5786],[5792,5880],[5888,5905],5909,[5919,5937],[5940,5942],[5952,5969],[5984,5996],[5998,6e3],[6016,6067],6070,[6078,6085],[6087,6088],[6100,6106],6108,[6112,6121],[6160,6169],[6176,6264],[6272,6276],[6279,6312],6314,[6320,6389],[6400,6430],[6435,6438],[6441,6443],[6448,6449],[6451,6456],[6470,6509],[6512,6516],[6528,6571],[6576,6601],[6608,6618],[6656,6678],[6681,6682],[6686,6741],6743,6753,[6755,6756],[6765,6770],[6784,6793],[6800,6809],[6816,6829],[6916,6963],6965,6971,[6973,6977],[6979,6988],[6992,7018],[7028,7038],[7042,7073],[7078,7079],7082,[7086,7141],7143,[7146,7148],7150,[7154,7155],[7164,7211],[7220,7221],[7227,7241],[7245,7304],[7312,7354],[7357,7367],7379,7393,[7401,7404],[7406,7411],[7413,7415],7418,[7424,7615],[7680,7957],[7960,7965],[7968,8005],[8008,8013],[8016,8023],8025,8027,8029,[8031,8061],[8064,8116],[8118,8124],8126,[8130,8132],[8134,8140],[8144,8147],[8150,8155],[8160,8172],[8178,8180],[8182,8188],8206,8305,8319,[8336,8348],8450,8455,[8458,8467],8469,[8473,8477],8484,8486,8488,[8490,8493],[8495,8505],[8508,8511],[8517,8521],[8526,8527],[8544,8584],[9014,9082],9109,[9372,9449],9900,[10240,10495],[11264,11492],[11499,11502],[11506,11507],[11520,11557],11559,11565,[11568,11623],[11631,11632],[11648,11670],[11680,11686],[11688,11694],[11696,11702],[11704,11710],[11712,11718],[11720,11726],[11728,11734],[11736,11742],[12293,12295],[12321,12329],[12334,12335],[12337,12341],[12344,12348],[12353,12438],[12445,12447],[12449,12538],[12540,12543],[12549,12591],[12593,12686],[12688,12735],[12784,12828],[12832,12879],[12896,12923],[12927,12976],[12992,13003],[13008,13174],[13179,13277],[13280,13310],[13312,19903],[19968,42124],[42192,42508],[42512,42539],[42560,42606],[42624,42653],[42656,42735],[42738,42743],[42786,42887],[42889,42954],[42960,42961],42963,[42965,42969],[42994,43009],[43011,43013],[43015,43018],[43020,43044],43047,[43056,43063],[43072,43123],[43136,43203],[43214,43225],[43250,43262],[43264,43301],[43310,43334],[43346,43347],[43359,43388],[43395,43442],[43444,43445],[43450,43451],[43454,43469],[43471,43481],[43486,43492],[43494,43518],[43520,43560],[43567,43568],[43571,43572],[43584,43586],[43588,43595],43597,[43600,43609],[43612,43643],[43645,43695],43697,[43701,43702],[43705,43709],43712,43714,[43739,43755],[43758,43765],[43777,43782],[43785,43790],[43793,43798],[43808,43814],[43816,43822],[43824,43881],[43888,44004],[44006,44007],[44009,44012],[44016,44025],[44032,55203],[55216,55238],[55243,55291],[55296,64109],[64112,64217],[64256,64262],[64275,64279],[65313,65338],[65345,65370],[65382,65470],[65474,65479],[65482,65487],[65490,65495],[65498,65500],[65536,65547],[65549,65574],[65576,65594],[65596,65597],[65599,65613],[65616,65629],[65664,65786],65792,65794,[65799,65843],[65847,65855],[65933,65934],[66e3,66044],[66176,66204],[66208,66256],[66304,66339],[66349,66378],[66384,66421],[66432,66461],[66463,66499],[66504,66517],[66560,66717],[66720,66729],[66736,66771],[66776,66811],[66816,66855],[66864,66915],[66927,66938],[66940,66954],[66956,66962],[66964,66965],[66967,66977],[66979,66993],[66995,67001],[67003,67004],[67072,67382],[67392,67413],[67424,67431],[67456,67461],[67463,67504],[67506,67514],69632,[69634,69687],[69703,69709],[69734,69743],[69745,69746],69749,[69762,69810],[69815,69816],[69819,69825],69837,[69840,69864],[69872,69881],[69891,69926],69932,[69942,69959],[69968,70002],[70004,70006],[70018,70069],[70079,70088],[70093,70094],[70096,70111],[70113,70132],[70144,70161],[70163,70190],[70194,70195],70197,[70200,70205],[70207,70208],[70272,70278],70280,[70282,70285],[70287,70301],[70303,70313],[70320,70366],[70368,70370],[70384,70393],[70402,70403],[70405,70412],[70415,70416],[70419,70440],[70442,70448],[70450,70451],[70453,70457],[70461,70463],[70465,70468],[70471,70472],[70475,70477],70480,70487,[70493,70499],[70656,70711],[70720,70721],70725,[70727,70747],70749,[70751,70753],[70784,70834],70841,[70843,70846],70849,[70852,70855],[70864,70873],[71040,71089],[71096,71099],71102,[71105,71131],[71168,71218],[71227,71228],71230,[71233,71236],[71248,71257],[71296,71338],71340,[71342,71343],71350,[71352,71353],[71360,71369],[71424,71450],[71456,71457],71462,[71472,71494],[71680,71726],71736,71739,[71840,71922],[71935,71942],71945,[71948,71955],[71957,71958],[71960,71989],[71991,71992],71997,[71999,72002],[72004,72006],[72016,72025],[72096,72103],[72106,72147],[72156,72159],[72161,72164],72192,[72199,72200],[72203,72242],[72249,72250],[72255,72262],72272,[72279,72280],[72284,72329],72343,[72346,72354],[72368,72440],[72448,72457],[72704,72712],[72714,72751],[72766,72773],[72784,72812],[72816,72847],72873,72881,72884,[72960,72966],[72968,72969],[72971,73008],73030,[73040,73049],[73056,73061],[73063,73064],[73066,73102],[73107,73108],73110,73112,[73120,73129],[73440,73458],[73461,73464],[73474,73488],[73490,73525],[73534,73535],73537,[73539,73561],73648,[73664,73684],[73727,74649],[74752,74862],[74864,74868],[74880,75075],[77712,77810],[77824,78911],[78913,78918],[82944,83526],[92160,92728],[92736,92766],[92768,92777],[92782,92862],[92864,92873],[92880,92909],92917,[92928,92975],[92983,92997],[93008,93017],[93019,93025],[93027,93047],[93053,93071],[93760,93850],[93952,94026],[94032,94087],[94099,94111],[94176,94177],94179,[94192,94193],[94208,100343],[100352,101589],[101632,101640],[110576,110579],[110581,110587],[110589,110590],[110592,110882],110898,[110928,110930],110933,[110948,110951],[110960,111355],[113664,113770],[113776,113788],[113792,113800],[113808,113817],113820,113823,[118608,118723],[118784,119029],[119040,119078],[119081,119142],[119146,119154],[119171,119172],[119180,119209],[119214,119272],[119488,119507],[119520,119539],[119648,119672],[119808,119892],[119894,119964],[119966,119967],119970,[119973,119974],[119977,119980],[119982,119993],119995,[119997,120003],[120005,120069],[120071,120074],[120077,120084],[120086,120092],[120094,120121],[120123,120126],[120128,120132],120134,[120138,120144],[120146,120485],[120488,120538],[120540,120596],[120598,120654],[120656,120712],[120714,120770],[120772,120779],[120832,121343],[121399,121402],[121453,121460],[121462,121475],[121477,121483],[122624,122654],[122661,122666],[122928,122989],[123136,123180],[123191,123197],[123200,123209],[123214,123215],[123536,123565],[123584,123627],[123632,123641],[124112,124139],[124144,124153],[124896,124902],[124904,124907],[124909,124910],[124912,124926],[127248,127278],[127280,127337],[127344,127404],[127462,127490],[127504,127547],[127552,127560],[127568,127569],[131072,173791],[173824,177977],[177984,178205],[178208,183969],[183984,191456],[194560,195101],[196608,201546],[201552,205743],[983040,1048573],[1048576,1114109]],Left_To_Right_Embedding:[8234],Left_To_Right_Isolate:[8294],Left_To_Right_Override:[8237],Nonspacing_Mark:[[768,879],[1155,1161],[1425,1469],1471,[1473,1474],[1476,1477],1479,[1552,1562],[1611,1631],1648,[1750,1756],[1759,1764],[1767,1768],[1770,1773],1809,[1840,1866],[1958,1968],[2027,2035],2045,[2070,2073],[2075,2083],[2085,2087],[2089,2093],[2137,2139],[2200,2207],[2250,2273],[2275,2306],2362,2364,[2369,2376],2381,[2385,2391],[2402,2403],2433,2492,[2497,2500],2509,[2530,2531],2558,[2561,2562],2620,[2625,2626],[2631,2632],[2635,2637],2641,[2672,2673],2677,[2689,2690],2748,[2753,2757],[2759,2760],2765,[2786,2787],[2810,2815],2817,2876,2879,[2881,2884],2893,[2901,2902],[2914,2915],2946,3008,3021,3072,3076,3132,[3134,3136],[3142,3144],[3146,3149],[3157,3158],[3170,3171],3201,3260,[3276,3277],[3298,3299],[3328,3329],[3387,3388],[3393,3396],3405,[3426,3427],3457,3530,[3538,3540],3542,3633,[3636,3642],[3655,3662],3761,[3764,3772],[3784,3790],[3864,3865],3893,3895,3897,[3953,3966],[3968,3972],[3974,3975],[3981,3991],[3993,4028],4038,[4141,4144],[4146,4151],[4153,4154],[4157,4158],[4184,4185],[4190,4192],[4209,4212],4226,[4229,4230],4237,4253,[4957,4959],[5906,5908],[5938,5939],[5970,5971],[6002,6003],[6068,6069],[6071,6077],6086,[6089,6099],6109,[6155,6157],6159,[6277,6278],6313,[6432,6434],[6439,6440],6450,[6457,6459],[6679,6680],6683,6742,[6744,6750],6752,6754,[6757,6764],[6771,6780],6783,[6832,6862],[6912,6915],6964,[6966,6970],6972,6978,[7019,7027],[7040,7041],[7074,7077],[7080,7081],[7083,7085],7142,[7144,7145],7149,[7151,7153],[7212,7219],[7222,7223],[7376,7378],[7380,7392],[7394,7400],7405,7412,[7416,7417],[7616,7679],[8400,8432],[11503,11505],11647,[11744,11775],[12330,12333],[12441,12442],[42607,42610],[42612,42621],[42654,42655],[42736,42737],43010,43014,43019,[43045,43046],43052,[43204,43205],[43232,43249],43263,[43302,43309],[43335,43345],[43392,43394],43443,[43446,43449],[43452,43453],43493,[43561,43566],[43569,43570],[43573,43574],43587,43596,43644,43696,[43698,43700],[43703,43704],[43710,43711],43713,[43756,43757],43766,44005,44008,44013,64286,[65024,65039],[65056,65071],66045,66272,[66422,66426],[68097,68099],[68101,68102],[68108,68111],[68152,68154],68159,[68325,68326],[68900,68903],[69291,69292],[69373,69375],[69446,69456],[69506,69509],69633,[69688,69702],69744,[69747,69748],[69759,69761],[69811,69814],[69817,69818],69826,[69888,69890],[69927,69931],[69933,69940],70003,[70016,70017],[70070,70078],[70089,70092],70095,[70191,70193],70196,[70198,70199],70206,70209,70367,[70371,70378],[70400,70401],[70459,70460],70464,[70502,70508],[70512,70516],[70712,70719],[70722,70724],70726,70750,[70835,70840],70842,[70847,70848],[70850,70851],[71090,71093],[71100,71101],[71103,71104],[71132,71133],[71219,71226],71229,[71231,71232],71339,71341,[71344,71349],71351,[71453,71455],[71458,71461],[71463,71467],[71727,71735],[71737,71738],[71995,71996],71998,72003,[72148,72151],[72154,72155],72160,[72193,72198],[72201,72202],[72243,72248],[72251,72254],72263,[72273,72278],[72281,72283],[72330,72342],[72344,72345],[72752,72758],[72760,72765],[72850,72871],[72874,72880],[72882,72883],[72885,72886],[73009,73014],73018,[73020,73021],[73023,73029],73031,[73104,73105],73109,73111,[73459,73460],[73472,73473],[73526,73530],73536,73538,78912,[78919,78933],[92912,92916],[92976,92982],94031,[94095,94098],94180,[113821,113822],[118528,118573],[118576,118598],[119143,119145],[119163,119170],[119173,119179],[119210,119213],[119362,119364],[121344,121398],[121403,121452],121461,121476,[121499,121503],[121505,121519],[122880,122886],[122888,122904],[122907,122913],[122915,122916],[122918,122922],123023,[123184,123190],123566,[123628,123631],[124140,124143],[125136,125142],[125252,125258],[917760,917999]],Other_Neutral:[[33,34],[38,42],[59,64],[91,96],[123,126],161,[166,169],[171,172],[174,175],180,[182,184],[187,191],215,247,[697,698],[706,719],[722,735],[741,749],[751,767],[884,885],894,[900,901],903,1014,1418,[1421,1422],[1542,1543],[1550,1551],1758,1769,[2038,2041],[3059,3064],3066,[3192,3198],[3898,3901],[5008,5017],5120,[5787,5788],[6128,6137],[6144,6154],6464,[6468,6469],[6622,6655],8125,[8127,8129],[8141,8143],[8157,8159],[8173,8175],[8189,8190],[8208,8231],[8245,8259],[8261,8286],[8316,8318],[8332,8334],[8448,8449],[8451,8454],[8456,8457],8468,[8470,8472],[8478,8483],8485,8487,8489,[8506,8507],[8512,8516],[8522,8525],[8528,8543],[8585,8587],[8592,8721],[8724,9013],[9083,9108],[9110,9254],[9280,9290],[9312,9351],[9450,9899],[9901,10239],[10496,11123],[11126,11157],[11159,11263],[11493,11498],[11513,11519],[11776,11869],[11904,11929],[11931,12019],[12032,12245],[12272,12283],[12289,12292],[12296,12320],12336,[12342,12343],[12349,12351],[12443,12444],12448,12539,[12736,12771],[12829,12830],[12880,12895],[12924,12926],[12977,12991],[13004,13007],[13175,13178],[13278,13279],13311,[19904,19967],[42128,42182],[42509,42511],42611,[42622,42623],[42752,42785],42888,[43048,43051],[43124,43127],[43882,43883],[64830,64847],64975,[65021,65023],[65040,65049],[65072,65103],65105,65108,[65110,65118],[65120,65121],[65124,65126],65128,65131,[65281,65282],[65286,65290],[65307,65312],[65339,65344],[65371,65381],[65506,65508],[65512,65518],[65529,65533],65793,[65856,65932],[65936,65948],65952,67871,[68409,68415],[69714,69733],[71264,71276],[73685,73692],[73697,73713],94178,[119273,119274],[119296,119361],119365,[119552,119638],120539,120597,120655,120713,120771,[126704,126705],[126976,127019],[127024,127123],[127136,127150],[127153,127167],[127169,127183],[127185,127221],[127243,127247],127279,[127338,127343],127405,[127584,127589],[127744,128727],[128732,128748],[128752,128764],[128768,128886],[128891,128985],[128992,129003],129008,[129024,129035],[129040,129095],[129104,129113],[129120,129159],[129168,129197],[129200,129201],[129280,129619],[129632,129645],[129648,129660],[129664,129672],[129680,129725],[129727,129733],[129742,129755],[129760,129768],[129776,129784],[129792,129938],[129940,129994]],Paragraph_Separator:[10,13,[28,30],133,8233],Pop_Directional_Format:[8236],Pop_Directional_Isolate:[8297],Right_To_Left:[1470,1472,1475,1478,[1488,1514],[1519,1524],[1984,2026],[2036,2037],2042,[2046,2069],2074,2084,2088,[2096,2110],[2112,2136],2142,8207,64285,[64287,64296],[64298,64310],[64312,64316],64318,[64320,64321],[64323,64324],[64326,64335],[67584,67589],67592,[67594,67637],[67639,67640],67644,[67647,67669],[67671,67742],[67751,67759],[67808,67826],[67828,67829],[67835,67867],[67872,67897],67903,[67968,68023],[68028,68047],[68050,68096],[68112,68115],[68117,68119],[68121,68149],[68160,68168],[68176,68184],[68192,68255],[68288,68324],[68331,68342],[68352,68405],[68416,68437],[68440,68466],[68472,68497],[68505,68508],[68521,68527],[68608,68680],[68736,68786],[68800,68850],[68858,68863],[69248,69289],69293,[69296,69297],[69376,69415],[69488,69505],[69510,69513],[69552,69579],[69600,69622],[124928,125124],[125127,125135],[125184,125251],125259,[125264,125273],[125278,125279]],Right_To_Left_Embedding:[8235],Right_To_Left_Isolate:[8295],Right_To_Left_Override:[8238],Segment_Separator:[9,11,31],White_Space:[12,32,5760,[8192,8202],8232,8287,12288]},Symbol.toStringTag,{value:"Module"})),Bidi_Mirroring_Glyph:Object.freeze(Object.defineProperty({__proto__:null},Symbol.toStringTag,{value:"Module"})),Bidi_Paired_Bracket_Type:Object.freeze(Object.defineProperty({__proto__:null,Close:[41,93,125,3899,3901,5788,8262,8318,8334,8969,8971,9002,10089,10091,10093,10095,10097,10099,10101,10182,10215,10217,10219,10221,10223,10628,10630,10632,10634,10636,10638,10640,10642,10644,10646,10648,10713,10715,10749,11811,11813,11815,11817,11862,11864,11866,11868,12297,12299,12301,12303,12305,12309,12311,12313,12315,65114,65116,65118,65289,65341,65373,65376,65379],None:[[0,39],[42,90],92,[94,122],124,[126,3897],[3902,5786],[5789,8260],[8263,8316],[8319,8332],[8335,8967],[8972,9e3],[9003,10087],[10102,10180],[10183,10213],[10224,10626],[10649,10711],[10716,10747],[10750,11809],[11818,11860],[11869,12295],[12306,12307],[12316,65112],[65119,65287],[65290,65338],65340,[65342,65370],65372,65374,65377,[65380,1114111]],Open:[40,91,123,3898,3900,5787,8261,8317,8333,8968,8970,9001,10088,10090,10092,10094,10096,10098,10100,10181,10214,10216,10218,10220,10222,10627,10629,10631,10633,10635,10637,10639,10641,10643,10645,10647,10712,10714,10748,11810,11812,11814,11816,11861,11863,11865,11867,12296,12298,12300,12302,12304,12308,12310,12312,12314,65113,65115,65117,65288,65339,65371,65375,65378]},Symbol.toStringTag,{value:"Module"})),Binary_Property:Object.freeze(Object.defineProperty({__proto__:null,ASCII:[[0,127]],ASCII_Hex_Digit:[[48,57],[65,70],[97,102]],Alphabetic:[[65,90],[97,122],170,181,186,[192,214],[216,246],[248,705],[710,721],[736,740],748,750,837,[880,884],[886,887],[890,893],895,902,[904,906],908,[910,929],[931,1013],[1015,1153],[1162,1327],[1329,1366],1369,[1376,1416],[1456,1469],1471,[1473,1474],[1476,1477],1479,[1488,1514],[1519,1522],[1552,1562],[1568,1623],[1625,1631],[1646,1747],[1749,1756],[1761,1768],[1773,1775],[1786,1788],1791,[1808,1855],[1869,1969],[1994,2026],[2036,2037],2042,[2048,2071],[2074,2092],[2112,2136],[2144,2154],[2160,2183],[2185,2190],[2208,2249],[2260,2271],[2275,2281],[2288,2363],[2365,2380],[2382,2384],[2389,2403],[2417,2435],[2437,2444],[2447,2448],[2451,2472],[2474,2480],2482,[2486,2489],[2493,2500],[2503,2504],[2507,2508],2510,2519,[2524,2525],[2527,2531],[2544,2545],2556,[2561,2563],[2565,2570],[2575,2576],[2579,2600],[2602,2608],[2610,2611],[2613,2614],[2616,2617],[2622,2626],[2631,2632],[2635,2636],2641,[2649,2652],2654,[2672,2677],[2689,2691],[2693,2701],[2703,2705],[2707,2728],[2730,2736],[2738,2739],[2741,2745],[2749,2757],[2759,2761],[2763,2764],2768,[2784,2787],[2809,2812],[2817,2819],[2821,2828],[2831,2832],[2835,2856],[2858,2864],[2866,2867],[2869,2873],[2877,2884],[2887,2888],[2891,2892],[2902,2903],[2908,2909],[2911,2915],2929,[2946,2947],[2949,2954],[2958,2960],[2962,2965],[2969,2970],2972,[2974,2975],[2979,2980],[2984,2986],[2990,3001],[3006,3010],[3014,3016],[3018,3020],3024,3031,[3072,3084],[3086,3088],[3090,3112],[3114,3129],[3133,3140],[3142,3144],[3146,3148],[3157,3158],[3160,3162],3165,[3168,3171],[3200,3203],[3205,3212],[3214,3216],[3218,3240],[3242,3251],[3253,3257],[3261,3268],[3270,3272],[3274,3276],[3285,3286],[3293,3294],[3296,3299],[3313,3315],[3328,3340],[3342,3344],[3346,3386],[3389,3396],[3398,3400],[3402,3404],3406,[3412,3415],[3423,3427],[3450,3455],[3457,3459],[3461,3478],[3482,3505],[3507,3515],3517,[3520,3526],[3535,3540],3542,[3544,3551],[3570,3571],[3585,3642],[3648,3654],3661,[3713,3714],3716,[3718,3722],[3724,3747],3749,[3751,3769],[3771,3773],[3776,3780],3782,3789,[3804,3807],3840,[3904,3911],[3913,3948],[3953,3971],[3976,3991],[3993,4028],[4096,4150],4152,[4155,4159],[4176,4239],[4250,4253],[4256,4293],4295,4301,[4304,4346],[4348,4680],[4682,4685],[4688,4694],4696,[4698,4701],[4704,4744],[4746,4749],[4752,4784],[4786,4789],[4792,4798],4800,[4802,4805],[4808,4822],[4824,4880],[4882,4885],[4888,4954],[4992,5007],[5024,5109],[5112,5117],[5121,5740],[5743,5759],[5761,5786],[5792,5866],[5870,5880],[5888,5907],[5919,5939],[5952,5971],[5984,5996],[5998,6e3],[6002,6003],[6016,6067],[6070,6088],6103,6108,[6176,6264],[6272,6314],[6320,6389],[6400,6430],[6432,6443],[6448,6456],[6480,6509],[6512,6516],[6528,6571],[6576,6601],[6656,6683],[6688,6750],[6753,6772],6823,[6847,6848],[6860,6862],[6912,6963],[6965,6979],[6981,6988],[7040,7081],[7084,7087],[7098,7141],[7143,7153],[7168,7222],[7245,7247],[7258,7293],[7296,7304],[7312,7354],[7357,7359],[7401,7404],[7406,7411],[7413,7414],7418,[7424,7615],[7655,7668],[7680,7957],[7960,7965],[7968,8005],[8008,8013],[8016,8023],8025,8027,8029,[8031,8061],[8064,8116],[8118,8124],8126,[8130,8132],[8134,8140],[8144,8147],[8150,8155],[8160,8172],[8178,8180],[8182,8188],8305,8319,[8336,8348],8450,8455,[8458,8467],8469,[8473,8477],8484,8486,8488,[8490,8493],[8495,8505],[8508,8511],[8517,8521],8526,[8544,8584],[9398,9449],[11264,11492],[11499,11502],[11506,11507],[11520,11557],11559,11565,[11568,11623],11631,[11648,11670],[11680,11686],[11688,11694],[11696,11702],[11704,11710],[11712,11718],[11720,11726],[11728,11734],[11736,11742],[11744,11775],11823,[12293,12295],[12321,12329],[12337,12341],[12344,12348],[12353,12438],[12445,12447],[12449,12538],[12540,12543],[12549,12591],[12593,12686],[12704,12735],[12784,12799],[13312,19903],[19968,42124],[42192,42237],[42240,42508],[42512,42527],[42538,42539],[42560,42606],[42612,42619],[42623,42735],[42775,42783],[42786,42888],[42891,42954],[42960,42961],42963,[42965,42969],[42994,43013],[43015,43047],[43072,43123],[43136,43203],43205,[43250,43255],43259,[43261,43263],[43274,43306],[43312,43346],[43360,43388],[43392,43442],[43444,43455],43471,[43488,43503],[43514,43518],[43520,43574],[43584,43597],[43616,43638],[43642,43710],43712,43714,[43739,43741],[43744,43759],[43762,43765],[43777,43782],[43785,43790],[43793,43798],[43808,43814],[43816,43822],[43824,43866],[43868,43881],[43888,44010],[44032,55203],[55216,55238],[55243,55291],[63744,64109],[64112,64217],[64256,64262],[64275,64279],[64285,64296],[64298,64310],[64312,64316],64318,[64320,64321],[64323,64324],[64326,64433],[64467,64829],[64848,64911],[64914,64967],[65008,65019],[65136,65140],[65142,65276],[65313,65338],[65345,65370],[65382,65470],[65474,65479],[65482,65487],[65490,65495],[65498,65500],[65536,65547],[65549,65574],[65576,65594],[65596,65597],[65599,65613],[65616,65629],[65664,65786],[65856,65908],[66176,66204],[66208,66256],[66304,66335],[66349,66378],[66384,66426],[66432,66461],[66464,66499],[66504,66511],[66513,66517],[66560,66717],[66736,66771],[66776,66811],[66816,66855],[66864,66915],[66928,66938],[66940,66954],[66956,66962],[66964,66965],[66967,66977],[66979,66993],[66995,67001],[67003,67004],[67072,67382],[67392,67413],[67424,67431],[67456,67461],[67463,67504],[67506,67514],[67584,67589],67592,[67594,67637],[67639,67640],67644,[67647,67669],[67680,67702],[67712,67742],[67808,67826],[67828,67829],[67840,67861],[67872,67897],[67968,68023],[68030,68031],[68096,68099],[68101,68102],[68108,68115],[68117,68119],[68121,68149],[68192,68220],[68224,68252],[68288,68295],[68297,68324],[68352,68405],[68416,68437],[68448,68466],[68480,68497],[68608,68680],[68736,68786],[68800,68850],[68864,68903],[69248,69289],[69291,69292],[69296,69297],[69376,69404],69415,[69424,69445],[69488,69505],[69552,69572],[69600,69622],[69632,69701],[69745,69749],[69760,69816],69826,[69840,69864],[69888,69938],[69956,69959],[69968,70002],70006,[70016,70079],[70081,70084],[70094,70095],70106,70108,[70144,70161],[70163,70196],70199,[70206,70209],[70272,70278],70280,[70282,70285],[70287,70301],[70303,70312],[70320,70376],[70400,70403],[70405,70412],[70415,70416],[70419,70440],[70442,70448],[70450,70451],[70453,70457],[70461,70468],[70471,70472],[70475,70476],70480,70487,[70493,70499],[70656,70721],[70723,70725],[70727,70730],[70751,70753],[70784,70849],[70852,70853],70855,[71040,71093],[71096,71102],[71128,71133],[71168,71230],71232,71236,[71296,71349],71352,[71424,71450],[71453,71466],[71488,71494],[71680,71736],[71840,71903],[71935,71942],71945,[71948,71955],[71957,71958],[71960,71989],[71991,71992],[71995,71996],[71999,72002],[72096,72103],[72106,72151],[72154,72159],72161,[72163,72164],[72192,72242],[72245,72254],[72272,72343],72349,[72368,72440],[72704,72712],[72714,72758],[72760,72766],72768,[72818,72847],[72850,72871],[72873,72886],[72960,72966],[72968,72969],[72971,73014],73018,[73020,73021],[73023,73025],73027,[73030,73031],[73056,73061],[73063,73064],[73066,73102],[73104,73105],[73107,73110],73112,[73440,73462],[73472,73488],[73490,73530],[73534,73536],73648,[73728,74649],[74752,74862],[74880,75075],[77712,77808],[77824,78895],[78913,78918],[82944,83526],[92160,92728],[92736,92766],[92784,92862],[92880,92909],[92928,92975],[92992,92995],[93027,93047],[93053,93071],[93760,93823],[93952,94026],[94031,94087],[94095,94111],[94176,94177],94179,[94192,94193],[94208,100343],[100352,101589],[101632,101640],[110576,110579],[110581,110587],[110589,110590],[110592,110882],110898,[110928,110930],110933,[110948,110951],[110960,111355],[113664,113770],[113776,113788],[113792,113800],[113808,113817],113822,[119808,119892],[119894,119964],[119966,119967],119970,[119973,119974],[119977,119980],[119982,119993],119995,[119997,120003],[120005,120069],[120071,120074],[120077,120084],[120086,120092],[120094,120121],[120123,120126],[120128,120132],120134,[120138,120144],[120146,120485],[120488,120512],[120514,120538],[120540,120570],[120572,120596],[120598,120628],[120630,120654],[120656,120686],[120688,120712],[120714,120744],[120746,120770],[120772,120779],[122624,122654],[122661,122666],[122880,122886],[122888,122904],[122907,122913],[122915,122916],[122918,122922],[122928,122989],123023,[123136,123180],[123191,123197],123214,[123536,123565],[123584,123627],[124112,124139],[124896,124902],[124904,124907],[124909,124910],[124912,124926],[124928,125124],[125184,125251],125255,125259,[126464,126467],[126469,126495],[126497,126498],126500,126503,[126505,126514],[126516,126519],126521,126523,126530,126535,126537,126539,[126541,126543],[126545,126546],126548,126551,126553,126555,126557,126559,[126561,126562],126564,[126567,126570],[126572,126578],[126580,126583],[126585,126588],126590,[126592,126601],[126603,126619],[126625,126627],[126629,126633],[126635,126651],[127280,127305],[127312,127337],[127344,127369],[131072,173791],[173824,177977],[177984,178205],[178208,183969],[183984,191456],[194560,195101],[196608,201546],[201552,205743]],Any:[[0,1114111]],Assigned:[[0,887],[890,895],[900,906],908,[910,929],[931,1327],[1329,1366],[1369,1418],[1421,1423],[1425,1479],[1488,1514],[1519,1524],[1536,1805],[1807,1866],[1869,1969],[1984,2042],[2045,2093],[2096,2110],[2112,2139],2142,[2144,2154],[2160,2190],[2192,2193],[2200,2435],[2437,2444],[2447,2448],[2451,2472],[2474,2480],2482,[2486,2489],[2492,2500],[2503,2504],[2507,2510],2519,[2524,2525],[2527,2531],[2534,2558],[2561,2563],[2565,2570],[2575,2576],[2579,2600],[2602,2608],[2610,2611],[2613,2614],[2616,2617],2620,[2622,2626],[2631,2632],[2635,2637],2641,[2649,2652],2654,[2662,2678],[2689,2691],[2693,2701],[2703,2705],[2707,2728],[2730,2736],[2738,2739],[2741,2745],[2748,2757],[2759,2761],[2763,2765],2768,[2784,2787],[2790,2801],[2809,2815],[2817,2819],[2821,2828],[2831,2832],[2835,2856],[2858,2864],[2866,2867],[2869,2873],[2876,2884],[2887,2888],[2891,2893],[2901,2903],[2908,2909],[2911,2915],[2918,2935],[2946,2947],[2949,2954],[2958,2960],[2962,2965],[2969,2970],2972,[2974,2975],[2979,2980],[2984,2986],[2990,3001],[3006,3010],[3014,3016],[3018,3021],3024,3031,[3046,3066],[3072,3084],[3086,3088],[3090,3112],[3114,3129],[3132,3140],[3142,3144],[3146,3149],[3157,3158],[3160,3162],3165,[3168,3171],[3174,3183],[3191,3212],[3214,3216],[3218,3240],[3242,3251],[3253,3257],[3260,3268],[3270,3272],[3274,3277],[3285,3286],[3293,3294],[3296,3299],[3302,3311],[3313,3315],[3328,3340],[3342,3344],[3346,3396],[3398,3400],[3402,3407],[3412,3427],[3430,3455],[3457,3459],[3461,3478],[3482,3505],[3507,3515],3517,[3520,3526],3530,[3535,3540],3542,[3544,3551],[3558,3567],[3570,3572],[3585,3642],[3647,3675],[3713,3714],3716,[3718,3722],[3724,3747],3749,[3751,3773],[3776,3780],3782,[3784,3790],[3792,3801],[3804,3807],[3840,3911],[3913,3948],[3953,3991],[3993,4028],[4030,4044],[4046,4058],[4096,4293],4295,4301,[4304,4680],[4682,4685],[4688,4694],4696,[4698,4701],[4704,4744],[4746,4749],[4752,4784],[4786,4789],[4792,4798],4800,[4802,4805],[4808,4822],[4824,4880],[4882,4885],[4888,4954],[4957,4988],[4992,5017],[5024,5109],[5112,5117],[5120,5788],[5792,5880],[5888,5909],[5919,5942],[5952,5971],[5984,5996],[5998,6e3],[6002,6003],[6016,6109],[6112,6121],[6128,6137],[6144,6169],[6176,6264],[6272,6314],[6320,6389],[6400,6430],[6432,6443],[6448,6459],6464,[6468,6509],[6512,6516],[6528,6571],[6576,6601],[6608,6618],[6622,6683],[6686,6750],[6752,6780],[6783,6793],[6800,6809],[6816,6829],[6832,6862],[6912,6988],[6992,7038],[7040,7155],[7164,7223],[7227,7241],[7245,7304],[7312,7354],[7357,7367],[7376,7418],[7424,7957],[7960,7965],[7968,8005],[8008,8013],[8016,8023],8025,8027,8029,[8031,8061],[8064,8116],[8118,8132],[8134,8147],[8150,8155],[8157,8175],[8178,8180],[8182,8190],[8192,8292],[8294,8305],[8308,8334],[8336,8348],[8352,8384],[8400,8432],[8448,8587],[8592,9254],[9280,9290],[9312,11123],[11126,11157],[11159,11507],[11513,11557],11559,11565,[11568,11623],[11631,11632],[11647,11670],[11680,11686],[11688,11694],[11696,11702],[11704,11710],[11712,11718],[11720,11726],[11728,11734],[11736,11742],[11744,11869],[11904,11929],[11931,12019],[12032,12245],[12272,12283],[12288,12351],[12353,12438],[12441,12543],[12549,12591],[12593,12686],[12688,12771],[12784,12830],[12832,42124],[42128,42182],[42192,42539],[42560,42743],[42752,42954],[42960,42961],42963,[42965,42969],[42994,43052],[43056,43065],[43072,43127],[43136,43205],[43214,43225],[43232,43347],[43359,43388],[43392,43469],[43471,43481],[43486,43518],[43520,43574],[43584,43597],[43600,43609],[43612,43714],[43739,43766],[43777,43782],[43785,43790],[43793,43798],[43808,43814],[43816,43822],[43824,43883],[43888,44013],[44016,44025],[44032,55203],[55216,55238],[55243,55291],[55296,64109],[64112,64217],[64256,64262],[64275,64279],[64285,64310],[64312,64316],64318,[64320,64321],[64323,64324],[64326,64450],[64467,64911],[64914,64967],64975,[65008,65049],[65056,65106],[65108,65126],[65128,65131],[65136,65140],[65142,65276],65279,[65281,65470],[65474,65479],[65482,65487],[65490,65495],[65498,65500],[65504,65510],[65512,65518],[65529,65533],[65536,65547],[65549,65574],[65576,65594],[65596,65597],[65599,65613],[65616,65629],[65664,65786],[65792,65794],[65799,65843],[65847,65934],[65936,65948],65952,[66e3,66045],[66176,66204],[66208,66256],[66272,66299],[66304,66339],[66349,66378],[66384,66426],[66432,66461],[66463,66499],[66504,66517],[66560,66717],[66720,66729],[66736,66771],[66776,66811],[66816,66855],[66864,66915],[66927,66938],[66940,66954],[66956,66962],[66964,66965],[66967,66977],[66979,66993],[66995,67001],[67003,67004],[67072,67382],[67392,67413],[67424,67431],[67456,67461],[67463,67504],[67506,67514],[67584,67589],67592,[67594,67637],[67639,67640],67644,[67647,67669],[67671,67742],[67751,67759],[67808,67826],[67828,67829],[67835,67867],[67871,67897],67903,[67968,68023],[68028,68047],[68050,68099],[68101,68102],[68108,68115],[68117,68119],[68121,68149],[68152,68154],[68159,68168],[68176,68184],[68192,68255],[68288,68326],[68331,68342],[68352,68405],[68409,68437],[68440,68466],[68472,68497],[68505,68508],[68521,68527],[68608,68680],[68736,68786],[68800,68850],[68858,68903],[68912,68921],[69216,69246],[69248,69289],[69291,69293],[69296,69297],[69373,69415],[69424,69465],[69488,69513],[69552,69579],[69600,69622],[69632,69709],[69714,69749],[69759,69826],69837,[69840,69864],[69872,69881],[69888,69940],[69942,69959],[69968,70006],[70016,70111],[70113,70132],[70144,70161],[70163,70209],[70272,70278],70280,[70282,70285],[70287,70301],[70303,70313],[70320,70378],[70384,70393],[70400,70403],[70405,70412],[70415,70416],[70419,70440],[70442,70448],[70450,70451],[70453,70457],[70459,70468],[70471,70472],[70475,70477],70480,70487,[70493,70499],[70502,70508],[70512,70516],[70656,70747],[70749,70753],[70784,70855],[70864,70873],[71040,71093],[71096,71133],[71168,71236],[71248,71257],[71264,71276],[71296,71353],[71360,71369],[71424,71450],[71453,71467],[71472,71494],[71680,71739],[71840,71922],[71935,71942],71945,[71948,71955],[71957,71958],[71960,71989],[71991,71992],[71995,72006],[72016,72025],[72096,72103],[72106,72151],[72154,72164],[72192,72263],[72272,72354],[72368,72440],[72448,72457],[72704,72712],[72714,72758],[72760,72773],[72784,72812],[72816,72847],[72850,72871],[72873,72886],[72960,72966],[72968,72969],[72971,73014],73018,[73020,73021],[73023,73031],[73040,73049],[73056,73061],[73063,73064],[73066,73102],[73104,73105],[73107,73112],[73120,73129],[73440,73464],[73472,73488],[73490,73530],[73534,73561],73648,[73664,73713],[73727,74649],[74752,74862],[74864,74868],[74880,75075],[77712,77810],[77824,78933],[82944,83526],[92160,92728],[92736,92766],[92768,92777],[92782,92862],[92864,92873],[92880,92909],[92912,92917],[92928,92997],[93008,93017],[93019,93025],[93027,93047],[93053,93071],[93760,93850],[93952,94026],[94031,94087],[94095,94111],[94176,94180],[94192,94193],[94208,100343],[100352,101589],[101632,101640],[110576,110579],[110581,110587],[110589,110590],[110592,110882],110898,[110928,110930],110933,[110948,110951],[110960,111355],[113664,113770],[113776,113788],[113792,113800],[113808,113817],[113820,113827],[118528,118573],[118576,118598],[118608,118723],[118784,119029],[119040,119078],[119081,119274],[119296,119365],[119488,119507],[119520,119539],[119552,119638],[119648,119672],[119808,119892],[119894,119964],[119966,119967],119970,[119973,119974],[119977,119980],[119982,119993],119995,[119997,120003],[120005,120069],[120071,120074],[120077,120084],[120086,120092],[120094,120121],[120123,120126],[120128,120132],120134,[120138,120144],[120146,120485],[120488,120779],[120782,121483],[121499,121503],[121505,121519],[122624,122654],[122661,122666],[122880,122886],[122888,122904],[122907,122913],[122915,122916],[122918,122922],[122928,122989],123023,[123136,123180],[123184,123197],[123200,123209],[123214,123215],[123536,123566],[123584,123641],123647,[124112,124153],[124896,124902],[124904,124907],[124909,124910],[124912,124926],[124928,125124],[125127,125142],[125184,125259],[125264,125273],[125278,125279],[126065,126132],[126209,126269],[126464,126467],[126469,126495],[126497,126498],126500,126503,[126505,126514],[126516,126519],126521,126523,126530,126535,126537,126539,[126541,126543],[126545,126546],126548,126551,126553,126555,126557,126559,[126561,126562],126564,[126567,126570],[126572,126578],[126580,126583],[126585,126588],126590,[126592,126601],[126603,126619],[126625,126627],[126629,126633],[126635,126651],[126704,126705],[126976,127019],[127024,127123],[127136,127150],[127153,127167],[127169,127183],[127185,127221],[127232,127405],[127462,127490],[127504,127547],[127552,127560],[127568,127569],[127584,127589],[127744,128727],[128732,128748],[128752,128764],[128768,128886],[128891,128985],[128992,129003],129008,[129024,129035],[129040,129095],[129104,129113],[129120,129159],[129168,129197],[129200,129201],[129280,129619],[129632,129645],[129648,129660],[129664,129672],[129680,129725],[129727,129733],[129742,129755],[129760,129768],[129776,129784],[129792,129938],[129940,129994],[130032,130041],[131072,173791],[173824,177977],[177984,178205],[178208,183969],[183984,191456],[194560,195101],[196608,201546],[201552,205743],917505,[917536,917631],[917760,917999],[983040,1048573],[1048576,1114109]],Bidi_Control:[1564,[8206,8207],[8234,8238],[8294,8297]],Bidi_Mirrored:[[40,41],60,62,91,93,123,125,171,187,[3898,3901],[5787,5788],[8249,8250],[8261,8262],[8317,8318],[8333,8334],8512,[8705,8708],[8712,8717],8721,[8725,8726],[8730,8733],[8735,8738],8740,8742,[8747,8755],8761,[8763,8780],[8786,8789],[8799,8800],8802,[8804,8811],[8814,8844],[8847,8850],8856,[8866,8867],[8870,8888],[8894,8895],[8905,8909],[8912,8913],[8918,8941],[8944,8959],[8968,8971],[8992,8993],[9001,9002],[10088,10101],10176,[10179,10182],[10184,10185],[10187,10189],[10195,10198],[10204,10206],[10210,10223],[10627,10648],[10651,10656],[10658,10671],10680,[10688,10693],10697,[10702,10706],[10708,10709],[10712,10716],10721,[10723,10725],[10728,10729],[10740,10745],[10748,10749],[10762,10780],[10782,10785],10788,10790,10793,[10795,10798],[10804,10805],[10812,10814],[10839,10840],[10852,10853],[10858,10861],[10863,10864],[10867,10868],[10873,10915],[10918,10925],[10927,10966],10972,10974,[10978,10982],[10988,10990],10995,[10999,11003],11005,11262,[11778,11781],[11785,11786],[11788,11789],[11804,11805],[11808,11817],[11861,11868],[12296,12305],[12308,12315],[65113,65118],[65124,65125],[65288,65289],65308,65310,65339,65341,65371,65373,[65375,65376],[65378,65379],120539,120597,120655,120713,120771],Case_Ignorable:[39,46,58,94,96,168,173,175,180,[183,184],[688,879],[884,885],890,[900,901],903,[1155,1161],1369,1375,[1425,1469],1471,[1473,1474],[1476,1477],1479,1524,[1536,1541],[1552,1562],1564,1600,[1611,1631],1648,[1750,1757],[1759,1768],[1770,1773],1807,1809,[1840,1866],[1958,1968],[2027,2037],2042,2045,[2070,2093],[2137,2139],2184,[2192,2193],[2200,2207],[2249,2306],2362,2364,[2369,2376],2381,[2385,2391],[2402,2403],2417,2433,2492,[2497,2500],2509,[2530,2531],2558,[2561,2562],2620,[2625,2626],[2631,2632],[2635,2637],2641,[2672,2673],2677,[2689,2690],2748,[2753,2757],[2759,2760],2765,[2786,2787],[2810,2815],2817,2876,2879,[2881,2884],2893,[2901,2902],[2914,2915],2946,3008,3021,3072,3076,3132,[3134,3136],[3142,3144],[3146,3149],[3157,3158],[3170,3171],3201,3260,3263,3270,[3276,3277],[3298,3299],[3328,3329],[3387,3388],[3393,3396],3405,[3426,3427],3457,3530,[3538,3540],3542,3633,[3636,3642],[3654,3662],3761,[3764,3772],3782,[3784,3790],[3864,3865],3893,3895,3897,[3953,3966],[3968,3972],[3974,3975],[3981,3991],[3993,4028],4038,[4141,4144],[4146,4151],[4153,4154],[4157,4158],[4184,4185],[4190,4192],[4209,4212],4226,[4229,4230],4237,4253,4348,[4957,4959],[5906,5908],[5938,5939],[5970,5971],[6002,6003],[6068,6069],[6071,6077],6086,[6089,6099],6103,6109,[6155,6159],6211,[6277,6278],6313,[6432,6434],[6439,6440],6450,[6457,6459],[6679,6680],6683,6742,[6744,6750],6752,6754,[6757,6764],[6771,6780],6783,6823,[6832,6862],[6912,6915],6964,[6966,6970],6972,6978,[7019,7027],[7040,7041],[7074,7077],[7080,7081],[7083,7085],7142,[7144,7145],7149,[7151,7153],[7212,7219],[7222,7223],[7288,7293],[7376,7378],[7380,7392],[7394,7400],7405,7412,[7416,7417],[7468,7530],7544,[7579,7679],8125,[8127,8129],[8141,8143],[8157,8159],[8173,8175],[8189,8190],[8203,8207],[8216,8217],8228,8231,[8234,8238],[8288,8292],[8294,8303],8305,8319,[8336,8348],[8400,8432],[11388,11389],[11503,11505],11631,11647,[11744,11775],11823,12293,[12330,12333],[12337,12341],12347,[12441,12446],[12540,12542],40981,[42232,42237],42508,[42607,42610],[42612,42621],42623,[42652,42655],[42736,42737],[42752,42785],42864,[42888,42890],[42994,42996],[43e3,43001],43010,43014,43019,[43045,43046],43052,[43204,43205],[43232,43249],43263,[43302,43309],[43335,43345],[43392,43394],43443,[43446,43449],[43452,43453],43471,[43493,43494],[43561,43566],[43569,43570],[43573,43574],43587,43596,43632,43644,43696,[43698,43700],[43703,43704],[43710,43711],43713,43741,[43756,43757],[43763,43764],43766,[43867,43871],[43881,43883],44005,44008,44013,64286,[64434,64450],[65024,65039],65043,[65056,65071],65106,65109,65279,65287,65294,65306,65342,65344,65392,[65438,65439],65507,[65529,65531],66045,66272,[66422,66426],[67456,67461],[67463,67504],[67506,67514],[68097,68099],[68101,68102],[68108,68111],[68152,68154],68159,[68325,68326],[68900,68903],[69291,69292],[69373,69375],[69446,69456],[69506,69509],69633,[69688,69702],69744,[69747,69748],[69759,69761],[69811,69814],[69817,69818],69821,69826,69837,[69888,69890],[69927,69931],[69933,69940],70003,[70016,70017],[70070,70078],[70089,70092],70095,[70191,70193],70196,[70198,70199],70206,70209,70367,[70371,70378],[70400,70401],[70459,70460],70464,[70502,70508],[70512,70516],[70712,70719],[70722,70724],70726,70750,[70835,70840],70842,[70847,70848],[70850,70851],[71090,71093],[71100,71101],[71103,71104],[71132,71133],[71219,71226],71229,[71231,71232],71339,71341,[71344,71349],71351,[71453,71455],[71458,71461],[71463,71467],[71727,71735],[71737,71738],[71995,71996],71998,72003,[72148,72151],[72154,72155],72160,[72193,72202],[72243,72248],[72251,72254],72263,[72273,72278],[72281,72283],[72330,72342],[72344,72345],[72752,72758],[72760,72765],72767,[72850,72871],[72874,72880],[72882,72883],[72885,72886],[73009,73014],73018,[73020,73021],[73023,73029],73031,[73104,73105],73109,73111,[73459,73460],[73472,73473],[73526,73530],73536,73538,[78896,78912],[78919,78933],[92912,92916],[92976,92982],[92992,92995],94031,[94095,94111],[94176,94177],[94179,94180],[110576,110579],[110581,110587],[110589,110590],[113821,113822],[113824,113827],[118528,118573],[118576,118598],[119143,119145],[119155,119170],[119173,119179],[119210,119213],[119362,119364],[121344,121398],[121403,121452],121461,121476,[121499,121503],[121505,121519],[122880,122886],[122888,122904],[122907,122913],[122915,122916],[122918,122922],[122928,122989],123023,[123184,123197],123566,[123628,123631],[124139,124143],[125136,125142],[125252,125259],[127995,127999],917505,[917536,917631],[917760,917999]],Cased:[[65,90],[97,122],170,181,186,[192,214],[216,246],[248,442],[444,447],[452,659],[661,696],[704,705],[736,740],837,[880,883],[886,887],[890,893],895,902,[904,906],908,[910,929],[931,1013],[1015,1153],[1162,1327],[1329,1366],[1376,1416],[4256,4293],4295,4301,[4304,4346],[4348,4351],[5024,5109],[5112,5117],[7296,7304],[7312,7354],[7357,7359],[7424,7615],[7680,7957],[7960,7965],[7968,8005],[8008,8013],[8016,8023],8025,8027,8029,[8031,8061],[8064,8116],[8118,8124],8126,[8130,8132],[8134,8140],[8144,8147],[8150,8155],[8160,8172],[8178,8180],[8182,8188],8305,8319,[8336,8348],8450,8455,[8458,8467],8469,[8473,8477],8484,8486,8488,[8490,8493],[8495,8500],8505,[8508,8511],[8517,8521],8526,[8544,8575],[8579,8580],[9398,9449],[11264,11492],[11499,11502],[11506,11507],[11520,11557],11559,11565,[42560,42605],[42624,42653],[42786,42887],[42891,42894],[42896,42954],[42960,42961],42963,[42965,42969],[42994,42998],[43e3,43002],[43824,43866],[43868,43881],[43888,43967],[64256,64262],[64275,64279],[65313,65338],[65345,65370],[66560,66639],[66736,66771],[66776,66811],[66928,66938],[66940,66954],[66956,66962],[66964,66965],[66967,66977],[66979,66993],[66995,67001],[67003,67004],67456,[67459,67461],[67463,67504],[67506,67514],[68736,68786],[68800,68850],[71840,71903],[93760,93823],[119808,119892],[119894,119964],[119966,119967],119970,[119973,119974],[119977,119980],[119982,119993],119995,[119997,120003],[120005,120069],[120071,120074],[120077,120084],[120086,120092],[120094,120121],[120123,120126],[120128,120132],120134,[120138,120144],[120146,120485],[120488,120512],[120514,120538],[120540,120570],[120572,120596],[120598,120628],[120630,120654],[120656,120686],[120688,120712],[120714,120744],[120746,120770],[120772,120779],[122624,122633],[122635,122654],[122661,122666],[122928,122989],[125184,125251],[127280,127305],[127312,127337],[127344,127369]],Changes_When_Casefolded:[[65,90],181,[192,214],[216,223],256,258,260,262,264,266,268,270,272,274,276,278,280,282,284,286,288,290,292,294,296,298,300,302,304,306,308,310,313,315,317,319,321,323,325,327,[329,330],332,334,336,338,340,342,344,346,348,350,352,354,356,358,360,362,364,366,368,370,372,374,[376,377],379,381,383,[385,386],388,[390,391],[393,395],[398,401],[403,404],[406,408],[412,413],[415,416],418,420,[422,423],425,428,[430,431],[433,435],437,[439,440],444,[452,453],[455,456],[458,459],461,463,465,467,469,471,473,475,478,480,482,484,486,488,490,492,494,[497,498],500,[502,504],506,508,510,512,514,516,518,520,522,524,526,528,530,532,534,536,538,540,542,544,546,548,550,552,554,556,558,560,562,[570,571],[573,574],577,[579,582],584,586,588,590,837,880,882,886,895,902,[904,906],908,[910,911],[913,929],[931,939],962,[975,977],[981,982],984,986,988,990,992,994,996,998,1e3,1002,1004,1006,[1008,1009],[1012,1013],1015,[1017,1018],[1021,1071],1120,1122,1124,1126,1128,1130,1132,1134,1136,1138,1140,1142,1144,1146,1148,1150,1152,1162,1164,1166,1168,1170,1172,1174,1176,1178,1180,1182,1184,1186,1188,1190,1192,1194,1196,1198,1200,1202,1204,1206,1208,1210,1212,1214,[1216,1217],1219,1221,1223,1225,1227,1229,1232,1234,1236,1238,1240,1242,1244,1246,1248,1250,1252,1254,1256,1258,1260,1262,1264,1266,1268,1270,1272,1274,1276,1278,1280,1282,1284,1286,1288,1290,1292,1294,1296,1298,1300,1302,1304,1306,1308,1310,1312,1314,1316,1318,1320,1322,1324,1326,[1329,1366],1415,[4256,4293],4295,4301,[5112,5117],[7296,7304],[7312,7354],[7357,7359],7680,7682,7684,7686,7688,7690,7692,7694,7696,7698,7700,7702,7704,7706,7708,7710,7712,7714,7716,7718,7720,7722,7724,7726,7728,7730,7732,7734,7736,7738,7740,7742,7744,7746,7748,7750,7752,7754,7756,7758,7760,7762,7764,7766,7768,7770,7772,7774,7776,7778,7780,7782,7784,7786,7788,7790,7792,7794,7796,7798,7800,7802,7804,7806,7808,7810,7812,7814,7816,7818,7820,7822,7824,7826,7828,[7834,7835],7838,7840,7842,7844,7846,7848,7850,7852,7854,7856,7858,7860,7862,7864,7866,7868,7870,7872,7874,7876,7878,7880,7882,7884,7886,7888,7890,7892,7894,7896,7898,7900,7902,7904,7906,7908,7910,7912,7914,7916,7918,7920,7922,7924,7926,7928,7930,7932,7934,[7944,7951],[7960,7965],[7976,7983],[7992,7999],[8008,8013],8025,8027,8029,8031,[8040,8047],[8064,8111],[8114,8116],[8119,8124],[8130,8132],[8135,8140],[8152,8155],[8168,8172],[8178,8180],[8183,8188],8486,[8490,8491],8498,[8544,8559],8579,[9398,9423],[11264,11311],11360,[11362,11364],11367,11369,11371,[11373,11376],11378,11381,[11390,11392],11394,11396,11398,11400,11402,11404,11406,11408,11410,11412,11414,11416,11418,11420,11422,11424,11426,11428,11430,11432,11434,11436,11438,11440,11442,11444,11446,11448,11450,11452,11454,11456,11458,11460,11462,11464,11466,11468,11470,11472,11474,11476,11478,11480,11482,11484,11486,11488,11490,11499,11501,11506,42560,42562,42564,42566,42568,42570,42572,42574,42576,42578,42580,42582,42584,42586,42588,42590,42592,42594,42596,42598,42600,42602,42604,42624,42626,42628,42630,42632,42634,42636,42638,42640,42642,42644,42646,42648,42650,42786,42788,42790,42792,42794,42796,42798,42802,42804,42806,42808,42810,42812,42814,42816,42818,42820,42822,42824,42826,42828,42830,42832,42834,42836,42838,42840,42842,42844,42846,42848,42850,42852,42854,42856,42858,42860,42862,42873,42875,[42877,42878],42880,42882,42884,42886,42891,42893,42896,42898,42902,42904,42906,42908,42910,42912,42914,42916,42918,42920,[42922,42926],[42928,42932],42934,42936,42938,42940,42942,42944,42946,[42948,42951],42953,42960,42966,42968,42997,[43888,43967],[64256,64262],[64275,64279],[65313,65338],[66560,66599],[66736,66771],[66928,66938],[66940,66954],[66956,66962],[66964,66965],[68736,68786],[71840,71871],[93760,93791],[125184,125217]],Changes_When_Casemapped:[[65,90],[97,122],181,[192,214],[216,246],[248,311],[313,396],[398,410],[412,425],[428,441],[444,445],447,[452,544],[546,563],[570,596],[598,599],601,[603,604],[608,609],611,[613,614],[616,620],623,[625,626],629,637,640,[642,643],[647,652],658,[669,670],837,[880,883],[886,887],[891,893],895,902,[904,906],908,[910,929],[931,977],[981,1013],[1015,1019],[1021,1153],[1162,1327],[1329,1366],[1377,1415],[4256,4293],4295,4301,[4304,4346],[4349,4351],[5024,5109],[5112,5117],[7296,7304],[7312,7354],[7357,7359],7545,7549,7566,[7680,7835],7838,[7840,7957],[7960,7965],[7968,8005],[8008,8013],[8016,8023],8025,8027,8029,[8031,8061],[8064,8116],[8118,8124],8126,[8130,8132],[8134,8140],[8144,8147],[8150,8155],[8160,8172],[8178,8180],[8182,8188],8486,[8490,8491],8498,8526,[8544,8575],[8579,8580],[9398,9449],[11264,11376],[11378,11379],[11381,11382],[11390,11491],[11499,11502],[11506,11507],[11520,11557],11559,11565,[42560,42605],[42624,42651],[42786,42799],[42802,42863],[42873,42887],[42891,42893],[42896,42900],[42902,42926],[42928,42954],[42960,42961],[42966,42969],[42997,42998],43859,[43888,43967],[64256,64262],[64275,64279],[65313,65338],[65345,65370],[66560,66639],[66736,66771],[66776,66811],[66928,66938],[66940,66954],[66956,66962],[66964,66965],[66967,66977],[66979,66993],[66995,67001],[67003,67004],[68736,68786],[68800,68850],[71840,71903],[93760,93823],[125184,125251]],Changes_When_Lowercased:[[65,90],[192,214],[216,222],256,258,260,262,264,266,268,270,272,274,276,278,280,282,284,286,288,290,292,294,296,298,300,302,304,306,308,310,313,315,317,319,321,323,325,327,330,332,334,336,338,340,342,344,346,348,350,352,354,356,358,360,362,364,366,368,370,372,374,[376,377],379,381,[385,386],388,[390,391],[393,395],[398,401],[403,404],[406,408],[412,413],[415,416],418,420,[422,423],425,428,[430,431],[433,435],437,[439,440],444,[452,453],[455,456],[458,459],461,463,465,467,469,471,473,475,478,480,482,484,486,488,490,492,494,[497,498],500,[502,504],506,508,510,512,514,516,518,520,522,524,526,528,530,532,534,536,538,540,542,544,546,548,550,552,554,556,558,560,562,[570,571],[573,574],577,[579,582],584,586,588,590,880,882,886,895,902,[904,906],908,[910,911],[913,929],[931,939],975,984,986,988,990,992,994,996,998,1e3,1002,1004,1006,1012,1015,[1017,1018],[1021,1071],1120,1122,1124,1126,1128,1130,1132,1134,1136,1138,1140,1142,1144,1146,1148,1150,1152,1162,1164,1166,1168,1170,1172,1174,1176,1178,1180,1182,1184,1186,1188,1190,1192,1194,1196,1198,1200,1202,1204,1206,1208,1210,1212,1214,[1216,1217],1219,1221,1223,1225,1227,1229,1232,1234,1236,1238,1240,1242,1244,1246,1248,1250,1252,1254,1256,1258,1260,1262,1264,1266,1268,1270,1272,1274,1276,1278,1280,1282,1284,1286,1288,1290,1292,1294,1296,1298,1300,1302,1304,1306,1308,1310,1312,1314,1316,1318,1320,1322,1324,1326,[1329,1366],[4256,4293],4295,4301,[5024,5109],[7312,7354],[7357,7359],7680,7682,7684,7686,7688,7690,7692,7694,7696,7698,7700,7702,7704,7706,7708,7710,7712,7714,7716,7718,7720,7722,7724,7726,7728,7730,7732,7734,7736,7738,7740,7742,7744,7746,7748,7750,7752,7754,7756,7758,7760,7762,7764,7766,7768,7770,7772,7774,7776,7778,7780,7782,7784,7786,7788,7790,7792,7794,7796,7798,7800,7802,7804,7806,7808,7810,7812,7814,7816,7818,7820,7822,7824,7826,7828,7838,7840,7842,7844,7846,7848,7850,7852,7854,7856,7858,7860,7862,7864,7866,7868,7870,7872,7874,7876,7878,7880,7882,7884,7886,7888,7890,7892,7894,7896,7898,7900,7902,7904,7906,7908,7910,7912,7914,7916,7918,7920,7922,7924,7926,7928,7930,7932,7934,[7944,7951],[7960,7965],[7976,7983],[7992,7999],[8008,8013],8025,8027,8029,8031,[8040,8047],[8072,8079],[8088,8095],[8104,8111],[8120,8124],[8136,8140],[8152,8155],[8168,8172],[8184,8188],8486,[8490,8491],8498,[8544,8559],8579,[9398,9423],[11264,11311],11360,[11362,11364],11367,11369,11371,[11373,11376],11378,11381,[11390,11392],11394,11396,11398,11400,11402,11404,11406,11408,11410,11412,11414,11416,11418,11420,11422,11424,11426,11428,11430,11432,11434,11436,11438,11440,11442,11444,11446,11448,11450,11452,11454,11456,11458,11460,11462,11464,11466,11468,11470,11472,11474,11476,11478,11480,11482,11484,11486,11488,11490,11499,11501,11506,42560,42562,42564,42566,42568,42570,42572,42574,42576,42578,42580,42582,42584,42586,42588,42590,42592,42594,42596,42598,42600,42602,42604,42624,42626,42628,42630,42632,42634,42636,42638,42640,42642,42644,42646,42648,42650,42786,42788,42790,42792,42794,42796,42798,42802,42804,42806,42808,42810,42812,42814,42816,42818,42820,42822,42824,42826,42828,42830,42832,42834,42836,42838,42840,42842,42844,42846,42848,42850,42852,42854,42856,42858,42860,42862,42873,42875,[42877,42878],42880,42882,42884,42886,42891,42893,42896,42898,42902,42904,42906,42908,42910,42912,42914,42916,42918,42920,[42922,42926],[42928,42932],42934,42936,42938,42940,42942,42944,42946,[42948,42951],42953,42960,42966,42968,42997,[65313,65338],[66560,66599],[66736,66771],[66928,66938],[66940,66954],[66956,66962],[66964,66965],[68736,68786],[71840,71871],[93760,93791],[125184,125217]],Changes_When_NFKC_Casefolded:[[65,90],160,168,170,173,175,[178,181],[184,186],[188,190],[192,214],[216,223],256,258,260,262,264,266,268,270,272,274,276,278,280,282,284,286,288,290,292,294,296,298,300,302,304,[306,308],310,313,315,317,[319,321],323,325,327,[329,330],332,334,336,338,340,342,344,346,348,350,352,354,356,358,360,362,364,366,368,370,372,374,[376,377],379,381,383,[385,386],388,[390,391],[393,395],[398,401],[403,404],[406,408],[412,413],[415,416],418,420,[422,423],425,428,[430,431],[433,435],437,[439,440],444,[452,461],463,465,467,469,471,473,475,478,480,482,484,486,488,490,492,494,[497,500],[502,504],506,508,510,512,514,516,518,520,522,524,526,528,530,532,534,536,538,540,542,544,546,548,550,552,554,556,558,560,562,[570,571],[573,574],577,[579,582],584,586,588,590,[688,696],[728,733],[736,740],[832,833],[835,837],847,880,882,884,886,890,[894,895],[900,906],908,[910,911],[913,929],[931,939],962,[975,982],984,986,988,990,992,994,996,998,1e3,1002,1004,1006,[1008,1010],[1012,1013],1015,[1017,1018],[1021,1071],1120,1122,1124,1126,1128,1130,1132,1134,1136,1138,1140,1142,1144,1146,1148,1150,1152,1162,1164,1166,1168,1170,1172,1174,1176,1178,1180,1182,1184,1186,1188,1190,1192,1194,1196,1198,1200,1202,1204,1206,1208,1210,1212,1214,[1216,1217],1219,1221,1223,1225,1227,1229,1232,1234,1236,1238,1240,1242,1244,1246,1248,1250,1252,1254,1256,1258,1260,1262,1264,1266,1268,1270,1272,1274,1276,1278,1280,1282,1284,1286,1288,1290,1292,1294,1296,1298,1300,1302,1304,1306,1308,1310,1312,1314,1316,1318,1320,1322,1324,1326,[1329,1366],1415,1564,[1653,1656],[2392,2399],[2524,2525],2527,2611,2614,[2649,2651],2654,[2908,2909],3635,3763,[3804,3805],3852,3907,3917,3922,3927,3932,3945,3955,[3957,3961],3969,3987,3997,4002,4007,4012,4025,[4256,4293],4295,4301,4348,[4447,4448],[5112,5117],[6068,6069],[6155,6159],[7296,7304],[7312,7354],[7357,7359],[7468,7470],[7472,7482],[7484,7501],[7503,7530],7544,[7579,7615],7680,7682,7684,7686,7688,7690,7692,7694,7696,7698,7700,7702,7704,7706,7708,7710,7712,7714,7716,7718,7720,7722,7724,7726,7728,7730,7732,7734,7736,7738,7740,7742,7744,7746,7748,7750,7752,7754,7756,7758,7760,7762,7764,7766,7768,7770,7772,7774,7776,7778,7780,7782,7784,7786,7788,7790,7792,7794,7796,7798,7800,7802,7804,7806,7808,7810,7812,7814,7816,7818,7820,7822,7824,7826,7828,[7834,7835],7838,7840,7842,7844,7846,7848,7850,7852,7854,7856,7858,7860,7862,7864,7866,7868,7870,7872,7874,7876,7878,7880,7882,7884,7886,7888,7890,7892,7894,7896,7898,7900,7902,7904,7906,7908,7910,7912,7914,7916,7918,7920,7922,7924,7926,7928,7930,7932,7934,[7944,7951],[7960,7965],[7976,7983],[7992,7999],[8008,8013],8025,8027,8029,8031,[8040,8047],8049,8051,8053,8055,8057,8059,8061,[8064,8111],[8114,8116],[8119,8132],[8135,8143],8147,[8152,8155],[8157,8159],8163,[8168,8175],[8178,8180],[8183,8190],[8192,8207],8209,8215,[8228,8230],[8234,8239],[8243,8244],[8246,8247],8252,8254,[8263,8265],8279,[8287,8305],[8308,8334],[8336,8348],8360,[8448,8451],[8453,8455],[8457,8467],[8469,8470],[8473,8477],[8480,8482],8484,8486,8488,[8490,8493],[8495,8505],[8507,8512],[8517,8521],[8528,8575],8579,8585,[8748,8749],[8751,8752],[9001,9002],[9312,9450],10764,[10868,10870],10972,[11264,11311],11360,[11362,11364],11367,11369,11371,[11373,11376],11378,11381,[11388,11392],11394,11396,11398,11400,11402,11404,11406,11408,11410,11412,11414,11416,11418,11420,11422,11424,11426,11428,11430,11432,11434,11436,11438,11440,11442,11444,11446,11448,11450,11452,11454,11456,11458,11460,11462,11464,11466,11468,11470,11472,11474,11476,11478,11480,11482,11484,11486,11488,11490,11499,11501,11506,11631,11935,12019,[12032,12245],12288,12342,[12344,12346],[12443,12444],12447,12543,[12593,12686],[12690,12703],[12800,12830],[12832,12871],[12880,12926],[12928,13311],42560,42562,42564,42566,42568,42570,42572,42574,42576,42578,42580,42582,42584,42586,42588,42590,42592,42594,42596,42598,42600,42602,42604,42624,42626,42628,42630,42632,42634,42636,42638,42640,42642,42644,42646,42648,42650,[42652,42653],42786,42788,42790,42792,42794,42796,42798,42802,42804,42806,42808,42810,42812,42814,42816,42818,42820,42822,42824,42826,42828,42830,42832,42834,42836,42838,42840,42842,42844,42846,42848,42850,42852,42854,42856,42858,42860,42862,42864,42873,42875,[42877,42878],42880,42882,42884,42886,42891,42893,42896,42898,42902,42904,42906,42908,42910,42912,42914,42916,42918,42920,[42922,42926],[42928,42932],42934,42936,42938,42940,42942,42944,42946,[42948,42951],42953,42960,42966,42968,[42994,42997],[43e3,43001],[43868,43871],43881,[43888,43967],[63744,64013],64016,64018,[64021,64030],64032,64034,[64037,64038],[64042,64109],[64112,64217],[64256,64262],[64275,64279],64285,[64287,64310],[64312,64316],64318,[64320,64321],[64323,64324],[64326,64433],[64467,64829],[64848,64911],[64914,64967],[65008,65020],[65024,65049],[65072,65092],[65095,65106],[65108,65126],[65128,65131],[65136,65138],65140,[65142,65276],65279,[65281,65470],[65474,65479],[65482,65487],[65490,65495],[65498,65500],[65504,65510],[65512,65518],[65520,65528],[66560,66599],[66736,66771],[66928,66938],[66940,66954],[66956,66962],[66964,66965],[67457,67461],[67463,67504],[67506,67514],[68736,68786],[71840,71871],[93760,93791],[113824,113827],[119134,119140],[119155,119162],[119227,119232],[119808,119892],[119894,119964],[119966,119967],119970,[119973,119974],[119977,119980],[119982,119993],119995,[119997,120003],[120005,120069],[120071,120074],[120077,120084],[120086,120092],[120094,120121],[120123,120126],[120128,120132],120134,[120138,120144],[120146,120485],[120488,120779],[120782,120831],[122928,122989],[125184,125217],[126464,126467],[126469,126495],[126497,126498],126500,126503,[126505,126514],[126516,126519],126521,126523,126530,126535,126537,126539,[126541,126543],[126545,126546],126548,126551,126553,126555,126557,126559,[126561,126562],126564,[126567,126570],[126572,126578],[126580,126583],[126585,126588],126590,[126592,126601],[126603,126619],[126625,126627],[126629,126633],[126635,126651],[127232,127242],[127248,127278],[127280,127311],[127338,127340],127376,[127488,127490],[127504,127547],[127552,127560],[127568,127569],[130032,130041],[194560,195101],[917504,921599]],Changes_When_Titlecased:[[97,122],181,[223,246],[248,255],257,259,261,263,265,267,269,271,273,275,277,279,281,283,285,287,289,291,293,295,297,299,301,303,305,307,309,311,314,316,318,320,322,324,326,[328,329],331,333,335,337,339,341,343,345,347,349,351,353,355,357,359,361,363,365,367,369,371,373,375,378,380,[382,384],387,389,392,396,402,405,[409,410],414,417,419,421,424,429,432,436,438,441,445,447,452,[454,455],[457,458],460,462,464,466,468,470,472,474,[476,477],479,481,483,485,487,489,491,493,[495,497],499,501,505,507,509,511,513,515,517,519,521,523,525,527,529,531,533,535,537,539,541,543,547,549,551,553,555,557,559,561,563,572,[575,576],578,583,585,587,589,[591,596],[598,599],601,[603,604],[608,609],611,[613,614],[616,620],623,[625,626],629,637,640,[642,643],[647,652],658,[669,670],837,881,883,887,[891,893],912,[940,974],[976,977],[981,983],985,987,989,991,993,995,997,999,1001,1003,1005,[1007,1011],1013,1016,1019,[1072,1119],1121,1123,1125,1127,1129,1131,1133,1135,1137,1139,1141,1143,1145,1147,1149,1151,1153,1163,1165,1167,1169,1171,1173,1175,1177,1179,1181,1183,1185,1187,1189,1191,1193,1195,1197,1199,1201,1203,1205,1207,1209,1211,1213,1215,1218,1220,1222,1224,1226,1228,[1230,1231],1233,1235,1237,1239,1241,1243,1245,1247,1249,1251,1253,1255,1257,1259,1261,1263,1265,1267,1269,1271,1273,1275,1277,1279,1281,1283,1285,1287,1289,1291,1293,1295,1297,1299,1301,1303,1305,1307,1309,1311,1313,1315,1317,1319,1321,1323,1325,1327,[1377,1415],[5112,5117],[7296,7304],7545,7549,7566,7681,7683,7685,7687,7689,7691,7693,7695,7697,7699,7701,7703,7705,7707,7709,7711,7713,7715,7717,7719,7721,7723,7725,7727,7729,7731,7733,7735,7737,7739,7741,7743,7745,7747,7749,7751,7753,7755,7757,7759,7761,7763,7765,7767,7769,7771,7773,7775,7777,7779,7781,7783,7785,7787,7789,7791,7793,7795,7797,7799,7801,7803,7805,7807,7809,7811,7813,7815,7817,7819,7821,7823,7825,7827,[7829,7835],7841,7843,7845,7847,7849,7851,7853,7855,7857,7859,7861,7863,7865,7867,7869,7871,7873,7875,7877,7879,7881,7883,7885,7887,7889,7891,7893,7895,7897,7899,7901,7903,7905,7907,7909,7911,7913,7915,7917,7919,7921,7923,7925,7927,7929,7931,7933,[7935,7943],[7952,7957],[7968,7975],[7984,7991],[8e3,8005],[8016,8023],[8032,8039],[8048,8061],[8064,8071],[8080,8087],[8096,8103],[8112,8116],[8118,8119],8126,[8130,8132],[8134,8135],[8144,8147],[8150,8151],[8160,8167],[8178,8180],[8182,8183],8526,[8560,8575],8580,[9424,9449],[11312,11359],11361,[11365,11366],11368,11370,11372,11379,11382,11393,11395,11397,11399,11401,11403,11405,11407,11409,11411,11413,11415,11417,11419,11421,11423,11425,11427,11429,11431,11433,11435,11437,11439,11441,11443,11445,11447,11449,11451,11453,11455,11457,11459,11461,11463,11465,11467,11469,11471,11473,11475,11477,11479,11481,11483,11485,11487,11489,11491,11500,11502,11507,[11520,11557],11559,11565,42561,42563,42565,42567,42569,42571,42573,42575,42577,42579,42581,42583,42585,42587,42589,42591,42593,42595,42597,42599,42601,42603,42605,42625,42627,42629,42631,42633,42635,42637,42639,42641,42643,42645,42647,42649,42651,42787,42789,42791,42793,42795,42797,42799,42803,42805,42807,42809,42811,42813,42815,42817,42819,42821,42823,42825,42827,42829,42831,42833,42835,42837,42839,42841,42843,42845,42847,42849,42851,42853,42855,42857,42859,42861,42863,42874,42876,42879,42881,42883,42885,42887,42892,42897,[42899,42900],42903,42905,42907,42909,42911,42913,42915,42917,42919,42921,42933,42935,42937,42939,42941,42943,42945,42947,42952,42954,42961,42967,42969,42998,43859,[43888,43967],[64256,64262],[64275,64279],[65345,65370],[66600,66639],[66776,66811],[66967,66977],[66979,66993],[66995,67001],[67003,67004],[68800,68850],[71872,71903],[93792,93823],[125218,125251]],Changes_When_Uppercased:[[97,122],181,[223,246],[248,255],257,259,261,263,265,267,269,271,273,275,277,279,281,283,285,287,289,291,293,295,297,299,301,303,305,307,309,311,314,316,318,320,322,324,326,[328,329],331,333,335,337,339,341,343,345,347,349,351,353,355,357,359,361,363,365,367,369,371,373,375,378,380,[382,384],387,389,392,396,402,405,[409,410],414,417,419,421,424,429,432,436,438,441,445,447,[453,454],[456,457],[459,460],462,464,466,468,470,472,474,[476,477],479,481,483,485,487,489,491,493,[495,496],[498,499],501,505,507,509,511,513,515,517,519,521,523,525,527,529,531,533,535,537,539,541,543,547,549,551,553,555,557,559,561,563,572,[575,576],578,583,585,587,589,[591,596],[598,599],601,[603,604],[608,609],611,[613,614],[616,620],623,[625,626],629,637,640,[642,643],[647,652],658,[669,670],837,881,883,887,[891,893],912,[940,974],[976,977],[981,983],985,987,989,991,993,995,997,999,1001,1003,1005,[1007,1011],1013,1016,1019,[1072,1119],1121,1123,1125,1127,1129,1131,1133,1135,1137,1139,1141,1143,1145,1147,1149,1151,1153,1163,1165,1167,1169,1171,1173,1175,1177,1179,1181,1183,1185,1187,1189,1191,1193,1195,1197,1199,1201,1203,1205,1207,1209,1211,1213,1215,1218,1220,1222,1224,1226,1228,[1230,1231],1233,1235,1237,1239,1241,1243,1245,1247,1249,1251,1253,1255,1257,1259,1261,1263,1265,1267,1269,1271,1273,1275,1277,1279,1281,1283,1285,1287,1289,1291,1293,1295,1297,1299,1301,1303,1305,1307,1309,1311,1313,1315,1317,1319,1321,1323,1325,1327,[1377,1415],[4304,4346],[4349,4351],[5112,5117],[7296,7304],7545,7549,7566,7681,7683,7685,7687,7689,7691,7693,7695,7697,7699,7701,7703,7705,7707,7709,7711,7713,7715,7717,7719,7721,7723,7725,7727,7729,7731,7733,7735,7737,7739,7741,7743,7745,7747,7749,7751,7753,7755,7757,7759,7761,7763,7765,7767,7769,7771,7773,7775,7777,7779,7781,7783,7785,7787,7789,7791,7793,7795,7797,7799,7801,7803,7805,7807,7809,7811,7813,7815,7817,7819,7821,7823,7825,7827,[7829,7835],7841,7843,7845,7847,7849,7851,7853,7855,7857,7859,7861,7863,7865,7867,7869,7871,7873,7875,7877,7879,7881,7883,7885,7887,7889,7891,7893,7895,7897,7899,7901,7903,7905,7907,7909,7911,7913,7915,7917,7919,7921,7923,7925,7927,7929,7931,7933,[7935,7943],[7952,7957],[7968,7975],[7984,7991],[8e3,8005],[8016,8023],[8032,8039],[8048,8061],[8064,8116],[8118,8119],8124,8126,[8130,8132],[8134,8135],8140,[8144,8147],[8150,8151],[8160,8167],[8178,8180],[8182,8183],8188,8526,[8560,8575],8580,[9424,9449],[11312,11359],11361,[11365,11366],11368,11370,11372,11379,11382,11393,11395,11397,11399,11401,11403,11405,11407,11409,11411,11413,11415,11417,11419,11421,11423,11425,11427,11429,11431,11433,11435,11437,11439,11441,11443,11445,11447,11449,11451,11453,11455,11457,11459,11461,11463,11465,11467,11469,11471,11473,11475,11477,11479,11481,11483,11485,11487,11489,11491,11500,11502,11507,[11520,11557],11559,11565,42561,42563,42565,42567,42569,42571,42573,42575,42577,42579,42581,42583,42585,42587,42589,42591,42593,42595,42597,42599,42601,42603,42605,42625,42627,42629,42631,42633,42635,42637,42639,42641,42643,42645,42647,42649,42651,42787,42789,42791,42793,42795,42797,42799,42803,42805,42807,42809,42811,42813,42815,42817,42819,42821,42823,42825,42827,42829,42831,42833,42835,42837,42839,42841,42843,42845,42847,42849,42851,42853,42855,42857,42859,42861,42863,42874,42876,42879,42881,42883,42885,42887,42892,42897,[42899,42900],42903,42905,42907,42909,42911,42913,42915,42917,42919,42921,42933,42935,42937,42939,42941,42943,42945,42947,42952,42954,42961,42967,42969,42998,43859,[43888,43967],[64256,64262],[64275,64279],[65345,65370],[66600,66639],[66776,66811],[66967,66977],[66979,66993],[66995,67001],[67003,67004],[68800,68850],[71872,71903],[93792,93823],[125218,125251]],Composition_Exclusion:[[2392,2399],[2524,2525],2527,2611,2614,[2649,2651],2654,[2908,2909],3907,3917,3922,3927,3932,3945,3958,3960,3987,3997,4002,4007,4012,4025,10972,64285,64287,[64298,64310],[64312,64316],64318,[64320,64321],[64323,64324],[64326,64334],[119134,119140],[119227,119232]],Dash:[45,1418,1470,5120,6150,[8208,8213],8275,8315,8331,8722,11799,11802,[11834,11835],11840,11869,12316,12336,12448,[65073,65074],65112,65123,65293,69293],Default_Ignorable_Code_Point:[173,847,1564,[4447,4448],[6068,6069],[6155,6159],[8203,8207],[8234,8238],[8288,8303],12644,[65024,65039],65279,65440,[65520,65528],[113824,113827],[119155,119162],[917504,921599]],Deprecated:[329,1651,3959,3961,[6051,6052],[8298,8303],[9001,9002],917505],Diacritic:[94,96,168,175,180,[183,184],[688,846],[848,855],[861,866],[884,885],890,[900,901],[1155,1159],1369,[1425,1441],[1443,1469],1471,[1473,1474],1476,[1611,1618],[1623,1624],[1759,1760],[1765,1766],[1770,1772],[1840,1866],[1958,1968],[2027,2037],[2072,2073],[2200,2207],[2249,2258],[2275,2302],2364,2381,[2385,2388],2417,2492,2509,2620,2637,2748,2765,[2813,2815],2876,2893,2901,3021,3132,3149,3260,3277,[3387,3388],3405,3530,[3655,3660],3662,3770,[3784,3788],[3864,3865],3893,3895,3897,[3902,3903],[3970,3972],[3974,3975],4038,4151,[4153,4154],[4195,4196],[4201,4205],[4231,4237],4239,[4250,4251],[4957,4959],[5908,5909],[6089,6099],6109,[6457,6459],[6773,6780],6783,[6832,6846],[6849,6859],6964,6980,[7019,7027],[7082,7083],[7222,7223],[7288,7293],[7376,7400],7405,7412,[7415,7417],[7468,7530],[7620,7631],[7669,7679],8125,[8127,8129],[8141,8143],[8157,8159],[8173,8175],[8189,8190],[11503,11505],11823,[12330,12335],[12441,12444],12540,42607,[42620,42621],42623,[42652,42653],[42736,42737],[42752,42785],[42888,42890],[43e3,43001],43204,[43232,43249],[43307,43310],43347,43443,43456,43493,[43643,43645],[43711,43714],43766,[43867,43871],[43881,43883],[44012,44013],64286,[65056,65071],65342,65344,65392,[65438,65439],65507,66272,[67456,67461],[67463,67504],[67506,67514],[68325,68326],[68898,68903],[69373,69375],[69446,69456],[69506,69509],69702,69744,[69817,69818],[69939,69940],70003,70080,[70090,70092],[70197,70198],[70377,70378],70460,70477,[70502,70508],[70512,70516],70722,70726,[70850,70851],[71103,71104],71231,[71350,71351],71467,[71737,71738],[71997,71998],72003,72160,72244,72263,72345,72767,73026,[73028,73029],73111,[78919,78933],[92912,92916],[92976,92982],[94095,94111],[94192,94193],[110576,110579],[110581,110587],[110589,110590],[118528,118573],[118576,118598],[119143,119145],[119149,119154],[119163,119170],[119173,119179],[119210,119213],[122928,122989],[123184,123190],123566,[123628,123631],[125136,125142],[125252,125254],[125256,125258]],Emoji:[35,42,[48,57],169,174,8252,8265,8482,8505,[8596,8601],[8617,8618],[8986,8987],9e3,9167,[9193,9203],[9208,9210],9410,[9642,9643],9654,9664,[9723,9726],[9728,9732],9742,9745,[9748,9749],9752,9757,9760,[9762,9763],9766,9770,[9774,9775],[9784,9786],9792,9794,[9800,9811],[9823,9824],9827,[9829,9830],9832,9851,[9854,9855],[9874,9879],9881,[9883,9884],[9888,9889],9895,[9898,9899],[9904,9905],[9917,9918],[9924,9925],9928,[9934,9935],9937,[9939,9940],[9961,9962],[9968,9973],[9975,9978],9981,9986,9989,[9992,9997],9999,10002,10004,10006,10013,10017,10024,[10035,10036],10052,10055,10060,10062,[10067,10069],10071,[10083,10084],[10133,10135],10145,10160,10175,[10548,10549],[11013,11015],[11035,11036],11088,11093,12336,12349,12951,12953,126980,127183,[127344,127345],[127358,127359],127374,[127377,127386],[127462,127487],[127489,127490],127514,127535,[127538,127546],[127568,127569],[127744,127777],[127780,127891],[127894,127895],[127897,127899],[127902,127984],[127987,127989],[127991,128253],[128255,128317],[128329,128334],[128336,128359],[128367,128368],[128371,128378],128391,[128394,128397],128400,[128405,128406],[128420,128421],128424,[128433,128434],128444,[128450,128452],[128465,128467],[128476,128478],128481,128483,128488,128495,128499,[128506,128591],[128640,128709],[128715,128722],[128725,128727],[128732,128741],128745,[128747,128748],128752,[128755,128764],[128992,129003],129008,[129292,129338],[129340,129349],[129351,129535],[129648,129660],[129664,129672],[129680,129725],[129727,129733],[129742,129755],[129760,129768],[129776,129784]],Emoji_Component:[35,42,[48,57],8205,8419,65039,[127462,127487],[127995,127999],[129456,129459],[917536,917631]],Emoji_Modifier:[[127995,127999]],Emoji_Modifier_Base:[9757,9977,[9994,9997],127877,[127938,127940],127943,[127946,127948],[128066,128067],[128070,128080],[128102,128120],128124,[128129,128131],[128133,128135],128143,128145,128170,[128372,128373],128378,128400,[128405,128406],[128581,128583],[128587,128591],128675,[128692,128694],128704,128716,129292,129295,[129304,129311],129318,[129328,129337],[129340,129342],129399,[129461,129462],[129464,129465],129467,[129485,129487],[129489,129501],[129731,129733],[129776,129784]],Emoji_Presentation:[[8986,8987],[9193,9196],9200,9203,[9725,9726],[9748,9749],[9800,9811],9855,9875,9889,[9898,9899],[9917,9918],[9924,9925],9934,9940,9962,[9970,9971],9973,9978,9981,9989,[9994,9995],10024,10060,10062,[10067,10069],10071,[10133,10135],10160,10175,[11035,11036],11088,11093,126980,127183,127374,[127377,127386],[127462,127487],127489,127514,127535,[127538,127542],[127544,127546],[127568,127569],[127744,127776],[127789,127797],[127799,127868],[127870,127891],[127904,127946],[127951,127955],[127968,127984],127988,[127992,128062],128064,[128066,128252],[128255,128317],[128331,128334],[128336,128359],128378,[128405,128406],128420,[128507,128591],[128640,128709],128716,[128720,128722],[128725,128727],[128732,128735],[128747,128748],[128756,128764],[128992,129003],129008,[129292,129338],[129340,129349],[129351,129535],[129648,129660],[129664,129672],[129680,129725],[129727,129733],[129742,129755],[129760,129768],[129776,129784]],Expands_On_NFC:[836,[2392,2399],[2524,2525],2527,2611,2614,[2649,2651],2654,[2908,2909],3907,3917,3922,3927,3932,3945,3955,[3957,3958],3960,3969,3987,3997,4002,4007,4012,4025,10972,64285,64287,[64298,64310],[64312,64316],64318,[64320,64321],[64323,64324],[64326,64334],[119134,119140],[119227,119232]],Expands_On_NFD:[[192,197],[199,207],[209,214],[217,221],[224,229],[231,239],[241,246],[249,253],[255,271],[274,293],[296,304],[308,311],[313,318],[323,328],[332,337],[340,357],[360,382],[416,417],[431,432],[461,476],[478,483],[486,496],[500,501],[504,539],[542,543],[550,563],836,[901,902],[904,906],908,[910,912],[938,944],[970,974],[979,980],[1024,1025],1027,1031,[1036,1038],1049,1081,[1104,1105],1107,1111,[1116,1118],[1142,1143],[1217,1218],[1232,1235],[1238,1239],[1242,1247],[1250,1255],[1258,1269],[1272,1273],[1570,1574],1728,1730,1747,2345,2353,2356,[2392,2399],[2507,2508],[2524,2525],2527,2611,2614,[2649,2651],2654,2888,[2891,2892],[2908,2909],2964,[3018,3020],3144,3264,[3271,3272],[3274,3275],[3402,3404],3546,[3548,3550],3907,3917,3922,3927,3932,3945,3955,[3957,3958],3960,3969,3987,3997,4002,4007,4012,4025,4134,6918,6920,6922,6924,6926,6930,6971,6973,[6976,6977],6979,[7680,7833],7835,[7840,7929],[7936,7957],[7960,7965],[7968,8005],[8008,8013],[8016,8023],8025,8027,8029,[8031,8061],[8064,8116],[8118,8124],[8129,8132],[8134,8147],[8150,8155],[8157,8174],[8178,8180],[8182,8188],8491,[8602,8603],8622,[8653,8655],8708,8713,8716,8740,8742,8769,8772,8775,8777,8800,8802,[8813,8817],[8820,8821],[8824,8825],[8832,8833],[8836,8837],[8840,8841],[8876,8879],[8928,8931],[8938,8941],10972,12364,12366,12368,12370,12372,12374,12376,12378,12380,12382,12384,12386,12389,12391,12393,[12400,12401],[12403,12404],[12406,12407],[12409,12410],[12412,12413],12436,12446,12460,12462,12464,12466,12468,12470,12472,12474,12476,12478,12480,12482,12485,12487,12489,[12496,12497],[12499,12500],[12502,12503],[12505,12506],[12508,12509],12532,[12535,12538],12542,[44032,55203],64285,64287,[64298,64310],[64312,64316],64318,[64320,64321],[64323,64324],[64326,64334],69786,69788,69803,[69934,69935],[70475,70476],[70843,70844],70846,[71098,71099],71992,[119134,119140],[119227,119232]],Expands_On_NFKC:[168,175,180,184,[188,190],[306,307],[319,320],329,[452,460],[497,499],[728,733],836,890,[900,901],1415,[1653,1656],[2392,2399],[2524,2525],2527,2611,2614,[2649,2651],2654,[2908,2909],3635,3763,[3804,3805],3907,3917,3922,3927,3932,3945,3955,[3957,3961],3969,3987,3997,4002,4007,4012,4025,7834,8125,[8127,8129],[8141,8143],[8157,8159],[8173,8174],[8189,8190],8215,[8229,8230],[8243,8244],[8246,8247],8252,8254,[8263,8265],8279,8360,[8448,8449],8451,[8453,8454],8457,8470,[8480,8482],8507,[8528,8543],[8545,8547],[8549,8552],[8554,8555],[8561,8563],[8565,8568],[8570,8571],8585,[8748,8749],[8751,8752],[9321,9397],10764,[10868,10870],10972,[12443,12444],12447,12543,[12800,12830],[12832,12867],[12880,12895],[12924,12925],[12977,13007],[13055,13311],[64256,64262],[64275,64279],64285,64287,[64298,64310],[64312,64316],64318,[64320,64321],[64323,64324],[64326,64335],64477,[64490,64507],[64512,64829],[64848,64911],[64914,64967],[65008,65020],65049,65072,[65097,65100],[65136,65138],65140,[65142,65151],[65269,65276],65507,[119134,119140],[119227,119232],[127232,127242],[127248,127274],[127277,127278],[127306,127311],[127338,127340],127376,[127488,127489],[127552,127560]],Expands_On_NFKD:[168,175,180,184,[188,190],[192,197],[199,207],[209,214],[217,221],[224,229],[231,239],[241,246],[249,253],[255,271],[274,293],[296,304],[306,311],[313,320],[323,329],[332,337],[340,357],[360,382],[416,417],[431,432],[452,476],[478,483],[486,501],[504,539],[542,543],[550,563],[728,733],836,890,[900,902],[904,906],908,[910,912],[938,944],[970,974],[979,980],[1024,1025],1027,1031,[1036,1038],1049,1081,[1104,1105],1107,1111,[1116,1118],[1142,1143],[1217,1218],[1232,1235],[1238,1239],[1242,1247],[1250,1255],[1258,1269],[1272,1273],1415,[1570,1574],[1653,1656],1728,1730,1747,2345,2353,2356,[2392,2399],[2507,2508],[2524,2525],2527,2611,2614,[2649,2651],2654,2888,[2891,2892],[2908,2909],2964,[3018,3020],3144,3264,[3271,3272],[3274,3275],[3402,3404],3546,[3548,3550],3635,3763,[3804,3805],3907,3917,3922,3927,3932,3945,3955,[3957,3961],3969,3987,3997,4002,4007,4012,4025,4134,6918,6920,6922,6924,6926,6930,6971,6973,[6976,6977],6979,[7680,7835],[7840,7929],[7936,7957],[7960,7965],[7968,8005],[8008,8013],[8016,8023],8025,8027,8029,[8031,8061],[8064,8116],[8118,8125],[8127,8132],[8134,8147],[8150,8155],[8157,8174],[8178,8180],[8182,8190],8215,[8229,8230],[8243,8244],[8246,8247],8252,8254,[8263,8265],8279,8360,[8448,8449],8451,[8453,8454],8457,8470,[8480,8482],8491,8507,[8528,8543],[8545,8547],[8549,8552],[8554,8555],[8561,8563],[8565,8568],[8570,8571],8585,[8602,8603],8622,[8653,8655],8708,8713,8716,8740,8742,[8748,8749],[8751,8752],8769,8772,8775,8777,8800,8802,[8813,8817],[8820,8821],[8824,8825],[8832,8833],[8836,8837],[8840,8841],[8876,8879],[8928,8931],[8938,8941],[9321,9397],10764,[10868,10870],10972,12364,12366,12368,12370,12372,12374,12376,12378,12380,12382,12384,12386,12389,12391,12393,[12400,12401],[12403,12404],[12406,12407],[12409,12410],[12412,12413],12436,[12443,12444],[12446,12447],12460,12462,12464,12466,12468,12470,12472,12474,12476,12478,12480,12482,12485,12487,12489,[12496,12497],[12499,12500],[12502,12503],[12505,12506],[12508,12509],12532,[12535,12538],[12542,12543],[12800,12830],[12832,12867],[12880,12895],[12910,12926],[12977,13007],[13055,13311],[44032,55203],[64256,64262],[64275,64279],64285,64287,[64298,64310],[64312,64316],64318,[64320,64321],[64323,64324],[64326,64335],[64420,64421],[64432,64433],64477,[64490,64507],[64512,64829],[64848,64911],[64914,64967],[65008,65020],65049,65072,[65097,65100],[65136,65138],65140,[65142,65151],[65153,65164],[65269,65276],65507,69786,69788,69803,[69934,69935],[70475,70476],[70843,70844],70846,[71098,71099],71992,[119134,119140],[119227,119232],[127232,127242],[127248,127274],[127277,127278],[127306,127311],[127338,127340],127376,[127488,127489],127507,[127552,127560]],Extended_Pictographic:[169,174,8252,8265,8482,8505,[8596,8601],[8617,8618],[8986,8987],9e3,9096,9167,[9193,9203],[9208,9210],9410,[9642,9643],9654,9664,[9723,9726],[9728,9733],[9735,9746],[9748,9861],[9872,9989],[9992,10002],10004,10006,10013,10017,10024,[10035,10036],10052,10055,10060,10062,[10067,10069],10071,[10083,10087],[10133,10135],10145,10160,10175,[10548,10549],[11013,11015],[11035,11036],11088,11093,12336,12349,12951,12953,[126976,127231],[127245,127247],127279,[127340,127345],[127358,127359],127374,[127377,127386],[127405,127461],[127489,127503],127514,127535,[127538,127546],[127548,127551],[127561,127994],[128e3,128317],[128326,128591],[128640,128767],[128884,128895],[128981,129023],[129036,129039],[129096,129103],[129114,129119],[129160,129167],[129198,129279],[129292,129338],[129340,129349],[129351,129791],[130048,131069]],Extender:[183,[720,721],1600,2042,2901,3654,3782,6154,6211,6823,7222,7291,12293,[12337,12341],[12445,12446],[12540,12542],40981,42508,43471,43494,43632,43741,[43763,43764],65392,[67457,67458],70493,[71110,71112],72344,[92994,92995],[94176,94177],94179,[123196,123197],[125252,125254]],Full_Composition_Exclusion:[[832,833],[835,836],884,894,903,[2392,2399],[2524,2525],2527,2611,2614,[2649,2651],2654,[2908,2909],3907,3917,3922,3927,3932,3945,3955,[3957,3958],3960,3969,3987,3997,4002,4007,4012,4025,8049,8051,8053,8055,8057,8059,8061,8123,8126,8137,8139,8147,8155,8163,8171,[8174,8175],8185,8187,8189,[8192,8193],8486,[8490,8491],[9001,9002],10972,[63744,64013],64016,64018,[64021,64030],64032,64034,[64037,64038],[64042,64109],[64112,64217],64285,64287,[64298,64310],[64312,64316],64318,[64320,64321],[64323,64324],[64326,64334],[119134,119140],[119227,119232],[194560,195101]],Grapheme_Base:[[32,126],[160,172],[174,767],[880,887],[890,895],[900,906],908,[910,929],[931,1154],[1162,1327],[1329,1366],[1369,1418],[1421,1423],1470,1472,1475,1478,[1488,1514],[1519,1524],[1542,1551],1563,[1565,1610],[1632,1647],[1649,1749],1758,[1765,1766],1769,[1774,1805],1808,[1810,1839],[1869,1957],1969,[1984,2026],[2036,2042],[2046,2069],2074,2084,2088,[2096,2110],[2112,2136],2142,[2144,2154],[2160,2190],[2208,2249],[2307,2361],2363,[2365,2368],[2377,2380],[2382,2384],[2392,2401],[2404,2432],[2434,2435],[2437,2444],[2447,2448],[2451,2472],[2474,2480],2482,[2486,2489],2493,[2495,2496],[2503,2504],[2507,2508],2510,[2524,2525],[2527,2529],[2534,2557],2563,[2565,2570],[2575,2576],[2579,2600],[2602,2608],[2610,2611],[2613,2614],[2616,2617],[2622,2624],[2649,2652],2654,[2662,2671],[2674,2676],2678,2691,[2693,2701],[2703,2705],[2707,2728],[2730,2736],[2738,2739],[2741,2745],[2749,2752],2761,[2763,2764],2768,[2784,2785],[2790,2801],2809,[2818,2819],[2821,2828],[2831,2832],[2835,2856],[2858,2864],[2866,2867],[2869,2873],2877,2880,[2887,2888],[2891,2892],[2908,2909],[2911,2913],[2918,2935],2947,[2949,2954],[2958,2960],[2962,2965],[2969,2970],2972,[2974,2975],[2979,2980],[2984,2986],[2990,3001],3007,[3009,3010],[3014,3016],[3018,3020],3024,[3046,3066],[3073,3075],[3077,3084],[3086,3088],[3090,3112],[3114,3129],3133,[3137,3140],[3160,3162],3165,[3168,3169],[3174,3183],[3191,3200],[3202,3212],[3214,3216],[3218,3240],[3242,3251],[3253,3257],[3261,3262],[3264,3265],[3267,3268],[3271,3272],[3274,3275],[3293,3294],[3296,3297],[3302,3311],[3313,3315],[3330,3340],[3342,3344],[3346,3386],3389,[3391,3392],[3398,3400],[3402,3404],[3406,3407],[3412,3414],[3416,3425],[3430,3455],[3458,3459],[3461,3478],[3482,3505],[3507,3515],3517,[3520,3526],[3536,3537],[3544,3550],[3558,3567],[3570,3572],[3585,3632],[3634,3635],[3647,3654],[3663,3675],[3713,3714],3716,[3718,3722],[3724,3747],3749,[3751,3760],[3762,3763],3773,[3776,3780],3782,[3792,3801],[3804,3807],[3840,3863],[3866,3892],3894,3896,[3898,3911],[3913,3948],3967,3973,[3976,3980],[4030,4037],[4039,4044],[4046,4058],[4096,4140],4145,4152,[4155,4156],[4159,4183],[4186,4189],[4193,4208],[4213,4225],[4227,4228],[4231,4236],[4238,4252],[4254,4293],4295,4301,[4304,4680],[4682,4685],[4688,4694],4696,[4698,4701],[4704,4744],[4746,4749],[4752,4784],[4786,4789],[4792,4798],4800,[4802,4805],[4808,4822],[4824,4880],[4882,4885],[4888,4954],[4960,4988],[4992,5017],[5024,5109],[5112,5117],[5120,5788],[5792,5880],[5888,5905],5909,[5919,5937],[5940,5942],[5952,5969],[5984,5996],[5998,6e3],[6016,6067],6070,[6078,6085],[6087,6088],[6100,6108],[6112,6121],[6128,6137],[6144,6154],[6160,6169],[6176,6264],[6272,6276],[6279,6312],6314,[6320,6389],[6400,6430],[6435,6438],[6441,6443],[6448,6449],[6451,6456],6464,[6468,6509],[6512,6516],[6528,6571],[6576,6601],[6608,6618],[6622,6678],[6681,6682],[6686,6741],6743,6753,[6755,6756],[6765,6770],[6784,6793],[6800,6809],[6816,6829],[6916,6963],6971,[6973,6977],[6979,6988],[6992,7018],[7028,7038],[7042,7073],[7078,7079],7082,[7086,7141],7143,[7146,7148],7150,[7154,7155],[7164,7211],[7220,7221],[7227,7241],[7245,7304],[7312,7354],[7357,7367],7379,7393,[7401,7404],[7406,7411],[7413,7415],7418,[7424,7615],[7680,7957],[7960,7965],[7968,8005],[8008,8013],[8016,8023],8025,8027,8029,[8031,8061],[8064,8116],[8118,8132],[8134,8147],[8150,8155],[8157,8175],[8178,8180],[8182,8190],[8192,8202],[8208,8231],[8239,8287],[8304,8305],[8308,8334],[8336,8348],[8352,8384],[8448,8587],[8592,9254],[9280,9290],[9312,11123],[11126,11157],[11159,11502],[11506,11507],[11513,11557],11559,11565,[11568,11623],[11631,11632],[11648,11670],[11680,11686],[11688,11694],[11696,11702],[11704,11710],[11712,11718],[11720,11726],[11728,11734],[11736,11742],[11776,11869],[11904,11929],[11931,12019],[12032,12245],[12272,12283],[12288,12329],[12336,12351],[12353,12438],[12443,12543],[12549,12591],[12593,12686],[12688,12771],[12784,12830],[12832,42124],[42128,42182],[42192,42539],[42560,42606],42611,[42622,42653],[42656,42735],[42738,42743],[42752,42954],[42960,42961],42963,[42965,42969],[42994,43009],[43011,43013],[43015,43018],[43020,43044],[43047,43051],[43056,43065],[43072,43127],[43136,43203],[43214,43225],[43250,43262],[43264,43301],[43310,43334],[43346,43347],[43359,43388],[43395,43442],[43444,43445],[43450,43451],[43454,43469],[43471,43481],[43486,43492],[43494,43518],[43520,43560],[43567,43568],[43571,43572],[43584,43586],[43588,43595],43597,[43600,43609],[43612,43643],[43645,43695],43697,[43701,43702],[43705,43709],43712,43714,[43739,43755],[43758,43765],[43777,43782],[43785,43790],[43793,43798],[43808,43814],[43816,43822],[43824,43883],[43888,44004],[44006,44007],[44009,44012],[44016,44025],[44032,55203],[55216,55238],[55243,55291],[63744,64109],[64112,64217],[64256,64262],[64275,64279],64285,[64287,64310],[64312,64316],64318,[64320,64321],[64323,64324],[64326,64450],[64467,64911],[64914,64967],64975,[65008,65023],[65040,65049],[65072,65106],[65108,65126],[65128,65131],[65136,65140],[65142,65276],[65281,65437],[65440,65470],[65474,65479],[65482,65487],[65490,65495],[65498,65500],[65504,65510],[65512,65518],[65532,65533],[65536,65547],[65549,65574],[65576,65594],[65596,65597],[65599,65613],[65616,65629],[65664,65786],[65792,65794],[65799,65843],[65847,65934],[65936,65948],65952,[66e3,66044],[66176,66204],[66208,66256],[66273,66299],[66304,66339],[66349,66378],[66384,66421],[66432,66461],[66463,66499],[66504,66517],[66560,66717],[66720,66729],[66736,66771],[66776,66811],[66816,66855],[66864,66915],[66927,66938],[66940,66954],[66956,66962],[66964,66965],[66967,66977],[66979,66993],[66995,67001],[67003,67004],[67072,67382],[67392,67413],[67424,67431],[67456,67461],[67463,67504],[67506,67514],[67584,67589],67592,[67594,67637],[67639,67640],67644,[67647,67669],[67671,67742],[67751,67759],[67808,67826],[67828,67829],[67835,67867],[67871,67897],67903,[67968,68023],[68028,68047],[68050,68096],[68112,68115],[68117,68119],[68121,68149],[68160,68168],[68176,68184],[68192,68255],[68288,68324],[68331,68342],[68352,68405],[68409,68437],[68440,68466],[68472,68497],[68505,68508],[68521,68527],[68608,68680],[68736,68786],[68800,68850],[68858,68899],[68912,68921],[69216,69246],[69248,69289],69293,[69296,69297],[69376,69415],[69424,69445],[69457,69465],[69488,69505],[69510,69513],[69552,69579],[69600,69622],69632,[69634,69687],[69703,69709],[69714,69743],[69745,69746],69749,[69762,69810],[69815,69816],[69819,69820],[69822,69825],[69840,69864],[69872,69881],[69891,69926],69932,[69942,69959],[69968,70002],[70004,70006],[70018,70069],[70079,70088],[70093,70094],[70096,70111],[70113,70132],[70144,70161],[70163,70190],[70194,70195],70197,[70200,70205],[70207,70208],[70272,70278],70280,[70282,70285],[70287,70301],[70303,70313],[70320,70366],[70368,70370],[70384,70393],[70402,70403],[70405,70412],[70415,70416],[70419,70440],[70442,70448],[70450,70451],[70453,70457],70461,70463,[70465,70468],[70471,70472],[70475,70477],70480,[70493,70499],[70656,70711],[70720,70721],70725,[70727,70747],70749,[70751,70753],[70784,70831],[70833,70834],70841,[70843,70844],70846,70849,[70852,70855],[70864,70873],[71040,71086],[71088,71089],[71096,71099],71102,[71105,71131],[71168,71218],[71227,71228],71230,[71233,71236],[71248,71257],[71264,71276],[71296,71338],71340,[71342,71343],71350,[71352,71353],[71360,71369],[71424,71450],[71456,71457],71462,[71472,71494],[71680,71726],71736,71739,[71840,71922],[71935,71942],71945,[71948,71955],[71957,71958],[71960,71983],[71985,71989],[71991,71992],71997,[71999,72002],[72004,72006],[72016,72025],[72096,72103],[72106,72147],[72156,72159],[72161,72164],72192,[72203,72242],[72249,72250],[72255,72262],72272,[72279,72280],[72284,72329],72343,[72346,72354],[72368,72440],[72448,72457],[72704,72712],[72714,72751],72766,[72768,72773],[72784,72812],[72816,72847],72873,72881,72884,[72960,72966],[72968,72969],[72971,73008],73030,[73040,73049],[73056,73061],[73063,73064],[73066,73102],[73107,73108],73110,73112,[73120,73129],[73440,73458],[73461,73464],[73474,73488],[73490,73525],[73534,73535],73537,[73539,73561],73648,[73664,73713],[73727,74649],[74752,74862],[74864,74868],[74880,75075],[77712,77810],[77824,78895],[78913,78918],[82944,83526],[92160,92728],[92736,92766],[92768,92777],[92782,92862],[92864,92873],[92880,92909],92917,[92928,92975],[92983,92997],[93008,93017],[93019,93025],[93027,93047],[93053,93071],[93760,93850],[93952,94026],[94032,94087],[94099,94111],[94176,94179],[94192,94193],[94208,100343],[100352,101589],[101632,101640],[110576,110579],[110581,110587],[110589,110590],[110592,110882],110898,[110928,110930],110933,[110948,110951],[110960,111355],[113664,113770],[113776,113788],[113792,113800],[113808,113817],113820,113823,[118608,118723],[118784,119029],[119040,119078],[119081,119140],119142,[119146,119149],[119171,119172],[119180,119209],[119214,119274],[119296,119361],119365,[119488,119507],[119520,119539],[119552,119638],[119648,119672],[119808,119892],[119894,119964],[119966,119967],119970,[119973,119974],[119977,119980],[119982,119993],119995,[119997,120003],[120005,120069],[120071,120074],[120077,120084],[120086,120092],[120094,120121],[120123,120126],[120128,120132],120134,[120138,120144],[120146,120485],[120488,120779],[120782,121343],[121399,121402],[121453,121460],[121462,121475],[121477,121483],[122624,122654],[122661,122666],[122928,122989],[123136,123180],[123191,123197],[123200,123209],[123214,123215],[123536,123565],[123584,123627],[123632,123641],123647,[124112,124139],[124144,124153],[124896,124902],[124904,124907],[124909,124910],[124912,124926],[124928,125124],[125127,125135],[125184,125251],125259,[125264,125273],[125278,125279],[126065,126132],[126209,126269],[126464,126467],[126469,126495],[126497,126498],126500,126503,[126505,126514],[126516,126519],126521,126523,126530,126535,126537,126539,[126541,126543],[126545,126546],126548,126551,126553,126555,126557,126559,[126561,126562],126564,[126567,126570],[126572,126578],[126580,126583],[126585,126588],126590,[126592,126601],[126603,126619],[126625,126627],[126629,126633],[126635,126651],[126704,126705],[126976,127019],[127024,127123],[127136,127150],[127153,127167],[127169,127183],[127185,127221],[127232,127405],[127462,127490],[127504,127547],[127552,127560],[127568,127569],[127584,127589],[127744,128727],[128732,128748],[128752,128764],[128768,128886],[128891,128985],[128992,129003],129008,[129024,129035],[129040,129095],[129104,129113],[129120,129159],[129168,129197],[129200,129201],[129280,129619],[129632,129645],[129648,129660],[129664,129672],[129680,129725],[129727,129733],[129742,129755],[129760,129768],[129776,129784],[129792,129938],[129940,129994],[130032,130041],[131072,173791],[173824,177977],[177984,178205],[178208,183969],[183984,191456],[194560,195101],[196608,201546],[201552,205743]],Grapheme_Extend:[[768,879],[1155,1161],[1425,1469],1471,[1473,1474],[1476,1477],1479,[1552,1562],[1611,1631],1648,[1750,1756],[1759,1764],[1767,1768],[1770,1773],1809,[1840,1866],[1958,1968],[2027,2035],2045,[2070,2073],[2075,2083],[2085,2087],[2089,2093],[2137,2139],[2200,2207],[2250,2273],[2275,2306],2362,2364,[2369,2376],2381,[2385,2391],[2402,2403],2433,2492,2494,[2497,2500],2509,2519,[2530,2531],2558,[2561,2562],2620,[2625,2626],[2631,2632],[2635,2637],2641,[2672,2673],2677,[2689,2690],2748,[2753,2757],[2759,2760],2765,[2786,2787],[2810,2815],2817,2876,[2878,2879],[2881,2884],2893,[2901,2903],[2914,2915],2946,3006,3008,3021,3031,3072,3076,3132,[3134,3136],[3142,3144],[3146,3149],[3157,3158],[3170,3171],3201,3260,3263,3266,3270,[3276,3277],[3285,3286],[3298,3299],[3328,3329],[3387,3388],3390,[3393,3396],3405,3415,[3426,3427],3457,3530,3535,[3538,3540],3542,3551,3633,[3636,3642],[3655,3662],3761,[3764,3772],[3784,3790],[3864,3865],3893,3895,3897,[3953,3966],[3968,3972],[3974,3975],[3981,3991],[3993,4028],4038,[4141,4144],[4146,4151],[4153,4154],[4157,4158],[4184,4185],[4190,4192],[4209,4212],4226,[4229,4230],4237,4253,[4957,4959],[5906,5908],[5938,5939],[5970,5971],[6002,6003],[6068,6069],[6071,6077],6086,[6089,6099],6109,[6155,6157],6159,[6277,6278],6313,[6432,6434],[6439,6440],6450,[6457,6459],[6679,6680],6683,6742,[6744,6750],6752,6754,[6757,6764],[6771,6780],6783,[6832,6862],[6912,6915],[6964,6970],6972,6978,[7019,7027],[7040,7041],[7074,7077],[7080,7081],[7083,7085],7142,[7144,7145],7149,[7151,7153],[7212,7219],[7222,7223],[7376,7378],[7380,7392],[7394,7400],7405,7412,[7416,7417],[7616,7679],8204,[8400,8432],[11503,11505],11647,[11744,11775],[12330,12335],[12441,12442],[42607,42610],[42612,42621],[42654,42655],[42736,42737],43010,43014,43019,[43045,43046],43052,[43204,43205],[43232,43249],43263,[43302,43309],[43335,43345],[43392,43394],43443,[43446,43449],[43452,43453],43493,[43561,43566],[43569,43570],[43573,43574],43587,43596,43644,43696,[43698,43700],[43703,43704],[43710,43711],43713,[43756,43757],43766,44005,44008,44013,64286,[65024,65039],[65056,65071],[65438,65439],66045,66272,[66422,66426],[68097,68099],[68101,68102],[68108,68111],[68152,68154],68159,[68325,68326],[68900,68903],[69291,69292],[69373,69375],[69446,69456],[69506,69509],69633,[69688,69702],69744,[69747,69748],[69759,69761],[69811,69814],[69817,69818],69826,[69888,69890],[69927,69931],[69933,69940],70003,[70016,70017],[70070,70078],[70089,70092],70095,[70191,70193],70196,[70198,70199],70206,70209,70367,[70371,70378],[70400,70401],[70459,70460],70462,70464,70487,[70502,70508],[70512,70516],[70712,70719],[70722,70724],70726,70750,70832,[70835,70840],70842,70845,[70847,70848],[70850,70851],71087,[71090,71093],[71100,71101],[71103,71104],[71132,71133],[71219,71226],71229,[71231,71232],71339,71341,[71344,71349],71351,[71453,71455],[71458,71461],[71463,71467],[71727,71735],[71737,71738],71984,[71995,71996],71998,72003,[72148,72151],[72154,72155],72160,[72193,72202],[72243,72248],[72251,72254],72263,[72273,72278],[72281,72283],[72330,72342],[72344,72345],[72752,72758],[72760,72765],72767,[72850,72871],[72874,72880],[72882,72883],[72885,72886],[73009,73014],73018,[73020,73021],[73023,73029],73031,[73104,73105],73109,73111,[73459,73460],[73472,73473],[73526,73530],73536,73538,78912,[78919,78933],[92912,92916],[92976,92982],94031,[94095,94098],94180,[113821,113822],[118528,118573],[118576,118598],119141,[119143,119145],[119150,119154],[119163,119170],[119173,119179],[119210,119213],[119362,119364],[121344,121398],[121403,121452],121461,121476,[121499,121503],[121505,121519],[122880,122886],[122888,122904],[122907,122913],[122915,122916],[122918,122922],123023,[123184,123190],123566,[123628,123631],[124140,124143],[125136,125142],[125252,125258],[917536,917631],[917760,917999]],Grapheme_Link:[2381,2509,2637,2765,2893,3021,3149,3277,[3387,3388],3405,3530,3642,3770,3972,[4153,4154],[5908,5909],5940,6098,6752,6980,[7082,7083],[7154,7155],11647,43014,43052,43204,43347,43456,43766,44013,68159,69702,69744,69759,69817,[69939,69940],70080,70197,70378,70477,70722,70850,71103,71231,71350,71467,71737,[71997,71998],72160,72244,72263,72345,72767,[73028,73029],73111,[73537,73538]],Hex_Digit:[[48,57],[65,70],[97,102],[65296,65305],[65313,65318],[65345,65350]],Hyphen:[45,173,1418,6150,[8208,8209],11799,12539,65123,65293,65381],IDS_Binary_Operator:[[12272,12273],[12276,12283]],IDS_Trinary_Operator:[[12274,12275]],ID_Continue:[[48,57],[65,90],95,[97,122],170,181,183,186,[192,214],[216,246],[248,705],[710,721],[736,740],748,750,[768,884],[886,887],[890,893],895,[902,906],908,[910,929],[931,1013],[1015,1153],[1155,1159],[1162,1327],[1329,1366],1369,[1376,1416],[1425,1469],1471,[1473,1474],[1476,1477],1479,[1488,1514],[1519,1522],[1552,1562],[1568,1641],[1646,1747],[1749,1756],[1759,1768],[1770,1788],1791,[1808,1866],[1869,1969],[1984,2037],2042,2045,[2048,2093],[2112,2139],[2144,2154],[2160,2183],[2185,2190],[2200,2273],[2275,2403],[2406,2415],[2417,2435],[2437,2444],[2447,2448],[2451,2472],[2474,2480],2482,[2486,2489],[2492,2500],[2503,2504],[2507,2510],2519,[2524,2525],[2527,2531],[2534,2545],2556,2558,[2561,2563],[2565,2570],[2575,2576],[2579,2600],[2602,2608],[2610,2611],[2613,2614],[2616,2617],2620,[2622,2626],[2631,2632],[2635,2637],2641,[2649,2652],2654,[2662,2677],[2689,2691],[2693,2701],[2703,2705],[2707,2728],[2730,2736],[2738,2739],[2741,2745],[2748,2757],[2759,2761],[2763,2765],2768,[2784,2787],[2790,2799],[2809,2815],[2817,2819],[2821,2828],[2831,2832],[2835,2856],[2858,2864],[2866,2867],[2869,2873],[2876,2884],[2887,2888],[2891,2893],[2901,2903],[2908,2909],[2911,2915],[2918,2927],2929,[2946,2947],[2949,2954],[2958,2960],[2962,2965],[2969,2970],2972,[2974,2975],[2979,2980],[2984,2986],[2990,3001],[3006,3010],[3014,3016],[3018,3021],3024,3031,[3046,3055],[3072,3084],[3086,3088],[3090,3112],[3114,3129],[3132,3140],[3142,3144],[3146,3149],[3157,3158],[3160,3162],3165,[3168,3171],[3174,3183],[3200,3203],[3205,3212],[3214,3216],[3218,3240],[3242,3251],[3253,3257],[3260,3268],[3270,3272],[3274,3277],[3285,3286],[3293,3294],[3296,3299],[3302,3311],[3313,3315],[3328,3340],[3342,3344],[3346,3396],[3398,3400],[3402,3406],[3412,3415],[3423,3427],[3430,3439],[3450,3455],[3457,3459],[3461,3478],[3482,3505],[3507,3515],3517,[3520,3526],3530,[3535,3540],3542,[3544,3551],[3558,3567],[3570,3571],[3585,3642],[3648,3662],[3664,3673],[3713,3714],3716,[3718,3722],[3724,3747],3749,[3751,3773],[3776,3780],3782,[3784,3790],[3792,3801],[3804,3807],3840,[3864,3865],[3872,3881],3893,3895,3897,[3902,3911],[3913,3948],[3953,3972],[3974,3991],[3993,4028],4038,[4096,4169],[4176,4253],[4256,4293],4295,4301,[4304,4346],[4348,4680],[4682,4685],[4688,4694],4696,[4698,4701],[4704,4744],[4746,4749],[4752,4784],[4786,4789],[4792,4798],4800,[4802,4805],[4808,4822],[4824,4880],[4882,4885],[4888,4954],[4957,4959],[4969,4977],[4992,5007],[5024,5109],[5112,5117],[5121,5740],[5743,5759],[5761,5786],[5792,5866],[5870,5880],[5888,5909],[5919,5940],[5952,5971],[5984,5996],[5998,6e3],[6002,6003],[6016,6099],6103,[6108,6109],[6112,6121],[6155,6157],[6159,6169],[6176,6264],[6272,6314],[6320,6389],[6400,6430],[6432,6443],[6448,6459],[6470,6509],[6512,6516],[6528,6571],[6576,6601],[6608,6618],[6656,6683],[6688,6750],[6752,6780],[6783,6793],[6800,6809],6823,[6832,6845],[6847,6862],[6912,6988],[6992,7001],[7019,7027],[7040,7155],[7168,7223],[7232,7241],[7245,7293],[7296,7304],[7312,7354],[7357,7359],[7376,7378],[7380,7418],[7424,7957],[7960,7965],[7968,8005],[8008,8013],[8016,8023],8025,8027,8029,[8031,8061],[8064,8116],[8118,8124],8126,[8130,8132],[8134,8140],[8144,8147],[8150,8155],[8160,8172],[8178,8180],[8182,8188],[8255,8256],8276,8305,8319,[8336,8348],[8400,8412],8417,[8421,8432],8450,8455,[8458,8467],8469,[8472,8477],8484,8486,8488,[8490,8505],[8508,8511],[8517,8521],8526,[8544,8584],[11264,11492],[11499,11507],[11520,11557],11559,11565,[11568,11623],11631,[11647,11670],[11680,11686],[11688,11694],[11696,11702],[11704,11710],[11712,11718],[11720,11726],[11728,11734],[11736,11742],[11744,11775],[12293,12295],[12321,12335],[12337,12341],[12344,12348],[12353,12438],[12441,12447],[12449,12538],[12540,12543],[12549,12591],[12593,12686],[12704,12735],[12784,12799],[13312,19903],[19968,42124],[42192,42237],[42240,42508],[42512,42539],[42560,42607],[42612,42621],[42623,42737],[42775,42783],[42786,42888],[42891,42954],[42960,42961],42963,[42965,42969],[42994,43047],43052,[43072,43123],[43136,43205],[43216,43225],[43232,43255],43259,[43261,43309],[43312,43347],[43360,43388],[43392,43456],[43471,43481],[43488,43518],[43520,43574],[43584,43597],[43600,43609],[43616,43638],[43642,43714],[43739,43741],[43744,43759],[43762,43766],[43777,43782],[43785,43790],[43793,43798],[43808,43814],[43816,43822],[43824,43866],[43868,43881],[43888,44010],[44012,44013],[44016,44025],[44032,55203],[55216,55238],[55243,55291],[63744,64109],[64112,64217],[64256,64262],[64275,64279],[64285,64296],[64298,64310],[64312,64316],64318,[64320,64321],[64323,64324],[64326,64433],[64467,64829],[64848,64911],[64914,64967],[65008,65019],[65024,65039],[65056,65071],[65075,65076],[65101,65103],[65136,65140],[65142,65276],[65296,65305],[65313,65338],65343,[65345,65370],[65382,65470],[65474,65479],[65482,65487],[65490,65495],[65498,65500],[65536,65547],[65549,65574],[65576,65594],[65596,65597],[65599,65613],[65616,65629],[65664,65786],[65856,65908],66045,[66176,66204],[66208,66256],66272,[66304,66335],[66349,66378],[66384,66426],[66432,66461],[66464,66499],[66504,66511],[66513,66517],[66560,66717],[66720,66729],[66736,66771],[66776,66811],[66816,66855],[66864,66915],[66928,66938],[66940,66954],[66956,66962],[66964,66965],[66967,66977],[66979,66993],[66995,67001],[67003,67004],[67072,67382],[67392,67413],[67424,67431],[67456,67461],[67463,67504],[67506,67514],[67584,67589],67592,[67594,67637],[67639,67640],67644,[67647,67669],[67680,67702],[67712,67742],[67808,67826],[67828,67829],[67840,67861],[67872,67897],[67968,68023],[68030,68031],[68096,68099],[68101,68102],[68108,68115],[68117,68119],[68121,68149],[68152,68154],68159,[68192,68220],[68224,68252],[68288,68295],[68297,68326],[68352,68405],[68416,68437],[68448,68466],[68480,68497],[68608,68680],[68736,68786],[68800,68850],[68864,68903],[68912,68921],[69248,69289],[69291,69292],[69296,69297],[69373,69404],69415,[69424,69456],[69488,69509],[69552,69572],[69600,69622],[69632,69702],[69734,69749],[69759,69818],69826,[69840,69864],[69872,69881],[69888,69940],[69942,69951],[69956,69959],[69968,70003],70006,[70016,70084],[70089,70092],[70094,70106],70108,[70144,70161],[70163,70199],[70206,70209],[70272,70278],70280,[70282,70285],[70287,70301],[70303,70312],[70320,70378],[70384,70393],[70400,70403],[70405,70412],[70415,70416],[70419,70440],[70442,70448],[70450,70451],[70453,70457],[70459,70468],[70471,70472],[70475,70477],70480,70487,[70493,70499],[70502,70508],[70512,70516],[70656,70730],[70736,70745],[70750,70753],[70784,70853],70855,[70864,70873],[71040,71093],[71096,71104],[71128,71133],[71168,71232],71236,[71248,71257],[71296,71352],[71360,71369],[71424,71450],[71453,71467],[71472,71481],[71488,71494],[71680,71738],[71840,71913],[71935,71942],71945,[71948,71955],[71957,71958],[71960,71989],[71991,71992],[71995,72003],[72016,72025],[72096,72103],[72106,72151],[72154,72161],[72163,72164],[72192,72254],72263,[72272,72345],72349,[72368,72440],[72704,72712],[72714,72758],[72760,72768],[72784,72793],[72818,72847],[72850,72871],[72873,72886],[72960,72966],[72968,72969],[72971,73014],73018,[73020,73021],[73023,73031],[73040,73049],[73056,73061],[73063,73064],[73066,73102],[73104,73105],[73107,73112],[73120,73129],[73440,73462],[73472,73488],[73490,73530],[73534,73538],[73552,73561],73648,[73728,74649],[74752,74862],[74880,75075],[77712,77808],[77824,78895],[78912,78933],[82944,83526],[92160,92728],[92736,92766],[92768,92777],[92784,92862],[92864,92873],[92880,92909],[92912,92916],[92928,92982],[92992,92995],[93008,93017],[93027,93047],[93053,93071],[93760,93823],[93952,94026],[94031,94087],[94095,94111],[94176,94177],[94179,94180],[94192,94193],[94208,100343],[100352,101589],[101632,101640],[110576,110579],[110581,110587],[110589,110590],[110592,110882],110898,[110928,110930],110933,[110948,110951],[110960,111355],[113664,113770],[113776,113788],[113792,113800],[113808,113817],[113821,113822],[118528,118573],[118576,118598],[119141,119145],[119149,119154],[119163,119170],[119173,119179],[119210,119213],[119362,119364],[119808,119892],[119894,119964],[119966,119967],119970,[119973,119974],[119977,119980],[119982,119993],119995,[119997,120003],[120005,120069],[120071,120074],[120077,120084],[120086,120092],[120094,120121],[120123,120126],[120128,120132],120134,[120138,120144],[120146,120485],[120488,120512],[120514,120538],[120540,120570],[120572,120596],[120598,120628],[120630,120654],[120656,120686],[120688,120712],[120714,120744],[120746,120770],[120772,120779],[120782,120831],[121344,121398],[121403,121452],121461,121476,[121499,121503],[121505,121519],[122624,122654],[122661,122666],[122880,122886],[122888,122904],[122907,122913],[122915,122916],[122918,122922],[122928,122989],123023,[123136,123180],[123184,123197],[123200,123209],123214,[123536,123566],[123584,123641],[124112,124153],[124896,124902],[124904,124907],[124909,124910],[124912,124926],[124928,125124],[125136,125142],[125184,125259],[125264,125273],[126464,126467],[126469,126495],[126497,126498],126500,126503,[126505,126514],[126516,126519],126521,126523,126530,126535,126537,126539,[126541,126543],[126545,126546],126548,126551,126553,126555,126557,126559,[126561,126562],126564,[126567,126570],[126572,126578],[126580,126583],[126585,126588],126590,[126592,126601],[126603,126619],[126625,126627],[126629,126633],[126635,126651],[130032,130041],[131072,173791],[173824,177977],[177984,178205],[178208,183969],[183984,191456],[194560,195101],[196608,201546],[201552,205743],[917760,917999]],ID_Start:[[65,90],[97,122],170,181,186,[192,214],[216,246],[248,705],[710,721],[736,740],748,750,[880,884],[886,887],[890,893],895,902,[904,906],908,[910,929],[931,1013],[1015,1153],[1162,1327],[1329,1366],1369,[1376,1416],[1488,1514],[1519,1522],[1568,1610],[1646,1647],[1649,1747],1749,[1765,1766],[1774,1775],[1786,1788],1791,1808,[1810,1839],[1869,1957],1969,[1994,2026],[2036,2037],2042,[2048,2069],2074,2084,2088,[2112,2136],[2144,2154],[2160,2183],[2185,2190],[2208,2249],[2308,2361],2365,2384,[2392,2401],[2417,2432],[2437,2444],[2447,2448],[2451,2472],[2474,2480],2482,[2486,2489],2493,2510,[2524,2525],[2527,2529],[2544,2545],2556,[2565,2570],[2575,2576],[2579,2600],[2602,2608],[2610,2611],[2613,2614],[2616,2617],[2649,2652],2654,[2674,2676],[2693,2701],[2703,2705],[2707,2728],[2730,2736],[2738,2739],[2741,2745],2749,2768,[2784,2785],2809,[2821,2828],[2831,2832],[2835,2856],[2858,2864],[2866,2867],[2869,2873],2877,[2908,2909],[2911,2913],2929,2947,[2949,2954],[2958,2960],[2962,2965],[2969,2970],2972,[2974,2975],[2979,2980],[2984,2986],[2990,3001],3024,[3077,3084],[3086,3088],[3090,3112],[3114,3129],3133,[3160,3162],3165,[3168,3169],3200,[3205,3212],[3214,3216],[3218,3240],[3242,3251],[3253,3257],3261,[3293,3294],[3296,3297],[3313,3314],[3332,3340],[3342,3344],[3346,3386],3389,3406,[3412,3414],[3423,3425],[3450,3455],[3461,3478],[3482,3505],[3507,3515],3517,[3520,3526],[3585,3632],[3634,3635],[3648,3654],[3713,3714],3716,[3718,3722],[3724,3747],3749,[3751,3760],[3762,3763],3773,[3776,3780],3782,[3804,3807],3840,[3904,3911],[3913,3948],[3976,3980],[4096,4138],4159,[4176,4181],[4186,4189],4193,[4197,4198],[4206,4208],[4213,4225],4238,[4256,4293],4295,4301,[4304,4346],[4348,4680],[4682,4685],[4688,4694],4696,[4698,4701],[4704,4744],[4746,4749],[4752,4784],[4786,4789],[4792,4798],4800,[4802,4805],[4808,4822],[4824,4880],[4882,4885],[4888,4954],[4992,5007],[5024,5109],[5112,5117],[5121,5740],[5743,5759],[5761,5786],[5792,5866],[5870,5880],[5888,5905],[5919,5937],[5952,5969],[5984,5996],[5998,6e3],[6016,6067],6103,6108,[6176,6264],[6272,6312],6314,[6320,6389],[6400,6430],[6480,6509],[6512,6516],[6528,6571],[6576,6601],[6656,6678],[6688,6740],6823,[6917,6963],[6981,6988],[7043,7072],[7086,7087],[7098,7141],[7168,7203],[7245,7247],[7258,7293],[7296,7304],[7312,7354],[7357,7359],[7401,7404],[7406,7411],[7413,7414],7418,[7424,7615],[7680,7957],[7960,7965],[7968,8005],[8008,8013],[8016,8023],8025,8027,8029,[8031,8061],[8064,8116],[8118,8124],8126,[8130,8132],[8134,8140],[8144,8147],[8150,8155],[8160,8172],[8178,8180],[8182,8188],8305,8319,[8336,8348],8450,8455,[8458,8467],8469,[8472,8477],8484,8486,8488,[8490,8505],[8508,8511],[8517,8521],8526,[8544,8584],[11264,11492],[11499,11502],[11506,11507],[11520,11557],11559,11565,[11568,11623],11631,[11648,11670],[11680,11686],[11688,11694],[11696,11702],[11704,11710],[11712,11718],[11720,11726],[11728,11734],[11736,11742],[12293,12295],[12321,12329],[12337,12341],[12344,12348],[12353,12438],[12443,12447],[12449,12538],[12540,12543],[12549,12591],[12593,12686],[12704,12735],[12784,12799],[13312,19903],[19968,42124],[42192,42237],[42240,42508],[42512,42527],[42538,42539],[42560,42606],[42623,42653],[42656,42735],[42775,42783],[42786,42888],[42891,42954],[42960,42961],42963,[42965,42969],[42994,43009],[43011,43013],[43015,43018],[43020,43042],[43072,43123],[43138,43187],[43250,43255],43259,[43261,43262],[43274,43301],[43312,43334],[43360,43388],[43396,43442],43471,[43488,43492],[43494,43503],[43514,43518],[43520,43560],[43584,43586],[43588,43595],[43616,43638],43642,[43646,43695],43697,[43701,43702],[43705,43709],43712,43714,[43739,43741],[43744,43754],[43762,43764],[43777,43782],[43785,43790],[43793,43798],[43808,43814],[43816,43822],[43824,43866],[43868,43881],[43888,44002],[44032,55203],[55216,55238],[55243,55291],[63744,64109],[64112,64217],[64256,64262],[64275,64279],64285,[64287,64296],[64298,64310],[64312,64316],64318,[64320,64321],[64323,64324],[64326,64433],[64467,64829],[64848,64911],[64914,64967],[65008,65019],[65136,65140],[65142,65276],[65313,65338],[65345,65370],[65382,65470],[65474,65479],[65482,65487],[65490,65495],[65498,65500],[65536,65547],[65549,65574],[65576,65594],[65596,65597],[65599,65613],[65616,65629],[65664,65786],[65856,65908],[66176,66204],[66208,66256],[66304,66335],[66349,66378],[66384,66421],[66432,66461],[66464,66499],[66504,66511],[66513,66517],[66560,66717],[66736,66771],[66776,66811],[66816,66855],[66864,66915],[66928,66938],[66940,66954],[66956,66962],[66964,66965],[66967,66977],[66979,66993],[66995,67001],[67003,67004],[67072,67382],[67392,67413],[67424,67431],[67456,67461],[67463,67504],[67506,67514],[67584,67589],67592,[67594,67637],[67639,67640],67644,[67647,67669],[67680,67702],[67712,67742],[67808,67826],[67828,67829],[67840,67861],[67872,67897],[67968,68023],[68030,68031],68096,[68112,68115],[68117,68119],[68121,68149],[68192,68220],[68224,68252],[68288,68295],[68297,68324],[68352,68405],[68416,68437],[68448,68466],[68480,68497],[68608,68680],[68736,68786],[68800,68850],[68864,68899],[69248,69289],[69296,69297],[69376,69404],69415,[69424,69445],[69488,69505],[69552,69572],[69600,69622],[69635,69687],[69745,69746],69749,[69763,69807],[69840,69864],[69891,69926],69956,69959,[69968,70002],70006,[70019,70066],[70081,70084],70106,70108,[70144,70161],[70163,70187],[70207,70208],[70272,70278],70280,[70282,70285],[70287,70301],[70303,70312],[70320,70366],[70405,70412],[70415,70416],[70419,70440],[70442,70448],[70450,70451],[70453,70457],70461,70480,[70493,70497],[70656,70708],[70727,70730],[70751,70753],[70784,70831],[70852,70853],70855,[71040,71086],[71128,71131],[71168,71215],71236,[71296,71338],71352,[71424,71450],[71488,71494],[71680,71723],[71840,71903],[71935,71942],71945,[71948,71955],[71957,71958],[71960,71983],71999,72001,[72096,72103],[72106,72144],72161,72163,72192,[72203,72242],72250,72272,[72284,72329],72349,[72368,72440],[72704,72712],[72714,72750],72768,[72818,72847],[72960,72966],[72968,72969],[72971,73008],73030,[73056,73061],[73063,73064],[73066,73097],73112,[73440,73458],73474,[73476,73488],[73490,73523],73648,[73728,74649],[74752,74862],[74880,75075],[77712,77808],[77824,78895],[78913,78918],[82944,83526],[92160,92728],[92736,92766],[92784,92862],[92880,92909],[92928,92975],[92992,92995],[93027,93047],[93053,93071],[93760,93823],[93952,94026],94032,[94099,94111],[94176,94177],94179,[94208,100343],[100352,101589],[101632,101640],[110576,110579],[110581,110587],[110589,110590],[110592,110882],110898,[110928,110930],110933,[110948,110951],[110960,111355],[113664,113770],[113776,113788],[113792,113800],[113808,113817],[119808,119892],[119894,119964],[119966,119967],119970,[119973,119974],[119977,119980],[119982,119993],119995,[119997,120003],[120005,120069],[120071,120074],[120077,120084],[120086,120092],[120094,120121],[120123,120126],[120128,120132],120134,[120138,120144],[120146,120485],[120488,120512],[120514,120538],[120540,120570],[120572,120596],[120598,120628],[120630,120654],[120656,120686],[120688,120712],[120714,120744],[120746,120770],[120772,120779],[122624,122654],[122661,122666],[122928,122989],[123136,123180],[123191,123197],123214,[123536,123565],[123584,123627],[124112,124139],[124896,124902],[124904,124907],[124909,124910],[124912,124926],[124928,125124],[125184,125251],125259,[126464,126467],[126469,126495],[126497,126498],126500,126503,[126505,126514],[126516,126519],126521,126523,126530,126535,126537,126539,[126541,126543],[126545,126546],126548,126551,126553,126555,126557,126559,[126561,126562],126564,[126567,126570],[126572,126578],[126580,126583],[126585,126588],126590,[126592,126601],[126603,126619],[126625,126627],[126629,126633],[126635,126651],[131072,173791],[173824,177977],[177984,178205],[178208,183969],[183984,191456],[194560,195101],[196608,201546],[201552,205743]],Ideographic:[[12294,12295],[12321,12329],[12344,12346],[13312,19903],[19968,40959],[63744,64109],[64112,64217],94180,[94208,100343],[100352,101589],[101632,101640],[110960,111355],[131072,173791],[173824,177977],[177984,178205],[178208,183969],[183984,191456],[194560,195101],[196608,201546],[201552,205743]],Join_Control:[[8204,8205]],Logical_Order_Exception:[[3648,3652],[3776,3780],[6581,6583],6586,[43701,43702],43705,[43707,43708]],Lowercase:[[97,122],170,181,186,[223,246],[248,255],257,259,261,263,265,267,269,271,273,275,277,279,281,283,285,287,289,291,293,295,297,299,301,303,305,307,309,[311,312],314,316,318,320,322,324,326,[328,329],331,333,335,337,339,341,343,345,347,349,351,353,355,357,359,361,363,365,367,369,371,373,375,378,380,[382,384],387,389,392,[396,397],402,405,[409,411],414,417,419,421,424,[426,427],429,432,436,438,[441,442],[445,447],454,457,460,462,464,466,468,470,472,474,[476,477],479,481,483,485,487,489,491,493,[495,496],499,501,505,507,509,511,513,515,517,519,521,523,525,527,529,531,533,535,537,539,541,543,545,547,549,551,553,555,557,559,561,[563,569],572,[575,576],578,583,585,587,589,[591,659],[661,696],[704,705],[736,740],837,881,883,887,[890,893],912,[940,974],[976,977],[981,983],985,987,989,991,993,995,997,999,1001,1003,1005,[1007,1011],1013,1016,[1019,1020],[1072,1119],1121,1123,1125,1127,1129,1131,1133,1135,1137,1139,1141,1143,1145,1147,1149,1151,1153,1163,1165,1167,1169,1171,1173,1175,1177,1179,1181,1183,1185,1187,1189,1191,1193,1195,1197,1199,1201,1203,1205,1207,1209,1211,1213,1215,1218,1220,1222,1224,1226,1228,[1230,1231],1233,1235,1237,1239,1241,1243,1245,1247,1249,1251,1253,1255,1257,1259,1261,1263,1265,1267,1269,1271,1273,1275,1277,1279,1281,1283,1285,1287,1289,1291,1293,1295,1297,1299,1301,1303,1305,1307,1309,1311,1313,1315,1317,1319,1321,1323,1325,1327,[1376,1416],[4304,4346],[4348,4351],[5112,5117],[7296,7304],[7424,7615],7681,7683,7685,7687,7689,7691,7693,7695,7697,7699,7701,7703,7705,7707,7709,7711,7713,7715,7717,7719,7721,7723,7725,7727,7729,7731,7733,7735,7737,7739,7741,7743,7745,7747,7749,7751,7753,7755,7757,7759,7761,7763,7765,7767,7769,7771,7773,7775,7777,7779,7781,7783,7785,7787,7789,7791,7793,7795,7797,7799,7801,7803,7805,7807,7809,7811,7813,7815,7817,7819,7821,7823,7825,7827,[7829,7837],7839,7841,7843,7845,7847,7849,7851,7853,7855,7857,7859,7861,7863,7865,7867,7869,7871,7873,7875,7877,7879,7881,7883,7885,7887,7889,7891,7893,7895,7897,7899,7901,7903,7905,7907,7909,7911,7913,7915,7917,7919,7921,7923,7925,7927,7929,7931,7933,[7935,7943],[7952,7957],[7968,7975],[7984,7991],[8e3,8005],[8016,8023],[8032,8039],[8048,8061],[8064,8071],[8080,8087],[8096,8103],[8112,8116],[8118,8119],8126,[8130,8132],[8134,8135],[8144,8147],[8150,8151],[8160,8167],[8178,8180],[8182,8183],8305,8319,[8336,8348],8458,[8462,8463],8467,8495,8500,8505,[8508,8509],[8518,8521],8526,[8560,8575],8580,[9424,9449],[11312,11359],11361,[11365,11366],11368,11370,11372,11377,[11379,11380],[11382,11389],11393,11395,11397,11399,11401,11403,11405,11407,11409,11411,11413,11415,11417,11419,11421,11423,11425,11427,11429,11431,11433,11435,11437,11439,11441,11443,11445,11447,11449,11451,11453,11455,11457,11459,11461,11463,11465,11467,11469,11471,11473,11475,11477,11479,11481,11483,11485,11487,11489,[11491,11492],11500,11502,11507,[11520,11557],11559,11565,42561,42563,42565,42567,42569,42571,42573,42575,42577,42579,42581,42583,42585,42587,42589,42591,42593,42595,42597,42599,42601,42603,42605,42625,42627,42629,42631,42633,42635,42637,42639,42641,42643,42645,42647,42649,[42651,42653],42787,42789,42791,42793,42795,42797,[42799,42801],42803,42805,42807,42809,42811,42813,42815,42817,42819,42821,42823,42825,42827,42829,42831,42833,42835,42837,42839,42841,42843,42845,42847,42849,42851,42853,42855,42857,42859,42861,[42863,42872],42874,42876,42879,42881,42883,42885,42887,42892,42894,42897,[42899,42901],42903,42905,42907,42909,42911,42913,42915,42917,42919,42921,42927,42933,42935,42937,42939,42941,42943,42945,42947,42952,42954,42961,42963,42965,42967,42969,[42994,42996],42998,[43e3,43002],[43824,43866],[43868,43881],[43888,43967],[64256,64262],[64275,64279],[65345,65370],[66600,66639],[66776,66811],[66967,66977],[66979,66993],[66995,67001],[67003,67004],67456,[67459,67461],[67463,67504],[67506,67514],[68800,68850],[71872,71903],[93792,93823],[119834,119859],[119886,119892],[119894,119911],[119938,119963],[119990,119993],119995,[119997,120003],[120005,120015],[120042,120067],[120094,120119],[120146,120171],[120198,120223],[120250,120275],[120302,120327],[120354,120379],[120406,120431],[120458,120485],[120514,120538],[120540,120545],[120572,120596],[120598,120603],[120630,120654],[120656,120661],[120688,120712],[120714,120719],[120746,120770],[120772,120777],120779,[122624,122633],[122635,122654],[122661,122666],[122928,122989],[125218,125251]],Math:[43,[60,62],94,124,126,172,177,215,247,[976,978],981,[1008,1009],[1012,1014],[1542,1544],8214,[8242,8244],8256,8260,8274,[8289,8292],[8314,8318],[8330,8334],[8400,8412],8417,[8421,8422],[8427,8431],8450,8455,[8458,8467],8469,[8472,8477],8484,[8488,8489],[8492,8493],[8495,8497],[8499,8504],[8508,8521],8523,[8592,8615],[8617,8622],[8624,8625],[8630,8631],[8636,8667],8669,[8676,8677],[8692,8959],[8968,8971],[8992,8993],9084,[9115,9141],9143,9168,[9180,9186],[9632,9633],[9646,9655],[9660,9665],[9670,9671],[9674,9675],[9679,9683],9698,9700,[9703,9708],[9720,9727],[9733,9734],9792,9794,[9824,9827],[9837,9839],[10176,10239],[10496,11007],[11056,11076],[11079,11084],64297,[65121,65126],65128,65291,[65308,65310],65340,65342,65372,65374,65506,[65513,65516],[119808,119892],[119894,119964],[119966,119967],119970,[119973,119974],[119977,119980],[119982,119993],119995,[119997,120003],[120005,120069],[120071,120074],[120077,120084],[120086,120092],[120094,120121],[120123,120126],[120128,120132],120134,[120138,120144],[120146,120485],[120488,120779],[120782,120831],[126464,126467],[126469,126495],[126497,126498],126500,126503,[126505,126514],[126516,126519],126521,126523,126530,126535,126537,126539,[126541,126543],[126545,126546],126548,126551,126553,126555,126557,126559,[126561,126562],126564,[126567,126570],[126572,126578],[126580,126583],[126585,126588],126590,[126592,126601],[126603,126619],[126625,126627],[126629,126633],[126635,126651],[126704,126705]],Noncharacter_Code_Point:[[64976,65007],[65534,65535],[131070,131071],[196606,196607],[262142,262143],[327678,327679],[393214,393215],[458750,458751],[524286,524287],[589822,589823],[655358,655359],[720894,720895],[786430,786431],[851966,851967],[917502,917503],[983038,983039],[1048574,1048575],[1114110,1114111]],Other_Alphabetic:[837,[1456,1469],1471,[1473,1474],[1476,1477],1479,[1552,1562],[1611,1623],[1625,1631],1648,[1750,1756],[1761,1764],[1767,1768],1773,1809,[1840,1855],[1958,1968],[2070,2071],[2075,2083],[2085,2087],[2089,2092],[2260,2271],[2275,2281],[2288,2307],[2362,2363],[2366,2380],[2382,2383],[2389,2391],[2402,2403],[2433,2435],[2494,2500],[2503,2504],[2507,2508],2519,[2530,2531],[2561,2563],[2622,2626],[2631,2632],[2635,2636],2641,[2672,2673],2677,[2689,2691],[2750,2757],[2759,2761],[2763,2764],[2786,2787],[2810,2812],[2817,2819],[2878,2884],[2887,2888],[2891,2892],[2902,2903],[2914,2915],2946,[3006,3010],[3014,3016],[3018,3020],3031,[3072,3076],[3134,3140],[3142,3144],[3146,3148],[3157,3158],[3170,3171],[3201,3203],[3262,3268],[3270,3272],[3274,3276],[3285,3286],[3298,3299],3315,[3328,3331],[3390,3396],[3398,3400],[3402,3404],3415,[3426,3427],[3457,3459],[3535,3540],3542,[3544,3551],[3570,3571],3633,[3636,3642],3661,3761,[3764,3769],[3771,3772],3789,[3953,3971],[3981,3991],[3993,4028],[4139,4150],4152,[4155,4158],[4182,4185],[4190,4192],[4194,4196],[4199,4205],[4209,4212],[4226,4237],4239,[4250,4253],[5906,5907],[5938,5939],[5970,5971],[6002,6003],[6070,6088],[6277,6278],6313,[6432,6443],[6448,6456],[6679,6683],[6741,6750],[6753,6772],[6847,6848],[6860,6862],[6912,6916],[6965,6979],[7040,7042],[7073,7081],[7084,7085],[7143,7153],[7204,7222],[7655,7668],[9398,9449],[11744,11775],[42612,42619],[42654,42655],43010,43019,[43043,43047],[43136,43137],[43188,43203],43205,43263,[43302,43306],[43335,43346],[43392,43395],[43444,43455],43493,[43561,43574],43587,[43596,43597],[43643,43645],43696,[43698,43700],[43703,43704],43710,[43755,43759],43765,[44003,44010],64286,[66422,66426],[68097,68099],[68101,68102],[68108,68111],[68900,68903],[69291,69292],[69632,69634],[69688,69701],[69747,69748],[69760,69762],[69808,69816],69826,[69888,69890],[69927,69938],[69957,69958],[70016,70018],[70067,70079],[70094,70095],[70188,70196],70199,70206,70209,[70367,70376],[70400,70403],[70462,70468],[70471,70472],[70475,70476],70487,[70498,70499],[70709,70721],[70723,70725],[70832,70849],[71087,71093],[71096,71102],[71132,71133],[71216,71230],71232,[71339,71349],[71453,71466],[71724,71736],[71984,71989],[71991,71992],[71995,71996],72e3,72002,[72145,72151],[72154,72159],72164,[72193,72202],[72245,72249],[72251,72254],[72273,72283],[72330,72343],[72751,72758],[72760,72766],[72850,72871],[72873,72886],[73009,73014],73018,[73020,73021],[73023,73025],73027,73031,[73098,73102],[73104,73105],[73107,73110],[73459,73462],[73472,73473],73475,[73524,73530],[73534,73536],94031,[94033,94087],[94095,94098],[94192,94193],113822,[122880,122886],[122888,122904],[122907,122913],[122915,122916],[122918,122922],123023,125255,[127280,127305],[127312,127337],[127344,127369]],Other_Default_Ignorable_Code_Point:[847,[4447,4448],[6068,6069],8293,12644,65440,[65520,65528],917504,[917506,917535],[917632,917759],[918e3,921599]],Other_Grapheme_Extend:[2494,2519,2878,2903,3006,3031,3266,[3285,3286],3390,3415,3535,3551,6965,8204,[12334,12335],[65438,65439],70462,70487,70832,70845,71087,71984,119141,[119150,119154],[917536,917631]],Other_ID_Continue:[183,903,[4969,4977],6618],Other_ID_Start:[[6277,6278],8472,8494,[12443,12444]],Other_Lowercase:[170,186,[688,696],[704,705],[736,740],837,890,4348,[7468,7530],7544,[7579,7615],8305,8319,[8336,8348],[8560,8575],[9424,9449],[11388,11389],[42652,42653],42864,[42994,42996],[43e3,43001],[43868,43871],43881,67456,[67459,67461],[67463,67504],[67506,67514],[122928,122989]],Other_Math:[94,[976,978],981,[1008,1009],[1012,1013],8214,[8242,8244],8256,[8289,8292],[8317,8318],[8333,8334],[8400,8412],8417,[8421,8422],[8427,8431],8450,8455,[8458,8467],8469,[8473,8477],8484,[8488,8489],[8492,8493],[8495,8497],[8499,8504],[8508,8511],[8517,8521],[8597,8601],[8604,8607],[8609,8610],[8612,8613],8615,[8617,8621],[8624,8625],[8630,8631],[8636,8653],[8656,8657],8659,[8661,8667],8669,[8676,8677],[8968,8971],[9140,9141],9143,9168,9186,[9632,9633],[9646,9654],[9660,9664],[9670,9671],[9674,9675],[9679,9683],9698,9700,[9703,9708],[9733,9734],9792,9794,[9824,9827],[9837,9838],[10181,10182],[10214,10223],[10627,10648],[10712,10715],[10748,10749],65121,65123,65128,65340,65342,[119808,119892],[119894,119964],[119966,119967],119970,[119973,119974],[119977,119980],[119982,119993],119995,[119997,120003],[120005,120069],[120071,120074],[120077,120084],[120086,120092],[120094,120121],[120123,120126],[120128,120132],120134,[120138,120144],[120146,120485],[120488,120512],[120514,120538],[120540,120570],[120572,120596],[120598,120628],[120630,120654],[120656,120686],[120688,120712],[120714,120744],[120746,120770],[120772,120779],[120782,120831],[126464,126467],[126469,126495],[126497,126498],126500,126503,[126505,126514],[126516,126519],126521,126523,126530,126535,126537,126539,[126541,126543],[126545,126546],126548,126551,126553,126555,126557,126559,[126561,126562],126564,[126567,126570],[126572,126578],[126580,126583],[126585,126588],126590,[126592,126601],[126603,126619],[126625,126627],[126629,126633],[126635,126651]],Other_Uppercase:[[8544,8559],[9398,9423],[127280,127305],[127312,127337],[127344,127369]],Pattern_Syntax:[[33,47],[58,64],[91,94],96,[123,126],[161,167],169,[171,172],174,[176,177],182,187,191,215,247,[8208,8231],[8240,8254],[8257,8275],[8277,8286],[8592,9311],[9472,10101],[10132,11263],[11776,11903],[12289,12291],[12296,12320],12336,[64830,64831],[65093,65094]],Pattern_White_Space:[[9,13],32,133,[8206,8207],[8232,8233]],Prepended_Concatenation_Mark:[[1536,1541],1757,1807,[2192,2193],2274,69821,69837],Quotation_Mark:[34,39,171,187,[8216,8223],[8249,8250],11842,[12300,12303],[12317,12319],[65089,65092],65282,65287,[65378,65379]],Radical:[[11904,11929],[11931,12019],[12032,12245]],Regional_Indicator:[[127462,127487]],Sentence_Terminal:[33,46,63,1417,[1565,1567],1748,[1792,1794],2041,2103,2105,[2109,2110],[2404,2405],[4170,4171],4962,[4967,4968],5742,[5941,5942],6147,6153,[6468,6469],[6824,6827],[7002,7003],[7006,7007],[7037,7038],[7227,7228],[7294,7295],[8252,8253],[8263,8265],11822,11836,[11859,11860],12290,42239,[42510,42511],42739,42743,[43126,43127],[43214,43215],43311,[43464,43465],[43613,43615],[43760,43761],44011,65106,[65110,65111],65281,65294,65311,65377,[68182,68183],[69461,69465],[69510,69513],[69703,69704],[69822,69825],[69953,69955],[70085,70086],70093,[70110,70111],[70200,70201],[70203,70204],70313,[70731,70732],[71106,71107],[71113,71127],[71233,71234],[71484,71486],72004,72006,[72258,72259],[72347,72348],[72769,72770],[73463,73464],[73539,73540],[92782,92783],92917,[92983,92984],92996,93848,113823,121480],Soft_Dotted:[[105,106],303,585,616,669,690,1011,1110,1112,7522,7574,7588,7592,7725,7883,8305,[8520,8521],11388,[119842,119843],[119894,119895],[119946,119947],[119998,119999],[120050,120051],[120102,120103],[120154,120155],[120206,120207],[120258,120259],[120310,120311],[120362,120363],[120414,120415],[120466,120467],122650,[122956,122957],122984],Terminal_Punctuation:[33,44,46,[58,59],63,894,903,1417,1475,1548,1563,[1565,1567],1748,[1792,1802],1804,[2040,2041],[2096,2110],2142,[2404,2405],[3674,3675],3848,[3853,3858],[4170,4171],[4961,4968],5742,[5867,5869],[5941,5942],[6100,6102],6106,[6146,6149],[6152,6153],[6468,6469],[6824,6827],[7002,7003],[7005,7007],[7037,7038],[7227,7231],[7294,7295],[8252,8253],[8263,8265],11822,11836,11841,11852,[11854,11855],[11859,11860],[12289,12290],[42238,42239],[42509,42511],[42739,42743],[43126,43127],[43214,43215],43311,[43463,43465],[43613,43615],43743,[43760,43761],44011,[65104,65106],[65108,65111],65281,65292,65294,[65306,65307],65311,65377,65380,66463,66512,67671,67871,[68182,68183],[68336,68341],[68410,68415],[68505,68508],[69461,69465],[69510,69513],[69703,69709],[69822,69825],[69953,69955],[70085,70086],70093,[70110,70111],[70200,70204],70313,[70731,70733],[70746,70747],[71106,71109],[71113,71127],[71233,71234],[71484,71486],72004,72006,[72258,72259],[72347,72348],[72353,72354],[72769,72771],72817,[73463,73464],[73539,73540],[74864,74868],[92782,92783],92917,[92983,92985],92996,[93847,93848],113823,[121479,121482]],Unified_Ideograph:[[13312,19903],[19968,40959],[64014,64015],64017,[64019,64020],64031,64033,[64035,64036],[64039,64041],[131072,173791],[173824,177977],[177984,178205],[178208,183969],[183984,191456],[196608,201546],[201552,205743]],Uppercase:[[65,90],[192,214],[216,222],256,258,260,262,264,266,268,270,272,274,276,278,280,282,284,286,288,290,292,294,296,298,300,302,304,306,308,310,313,315,317,319,321,323,325,327,330,332,334,336,338,340,342,344,346,348,350,352,354,356,358,360,362,364,366,368,370,372,374,[376,377],379,381,[385,386],388,[390,391],[393,395],[398,401],[403,404],[406,408],[412,413],[415,416],418,420,[422,423],425,428,[430,431],[433,435],437,[439,440],444,452,455,458,461,463,465,467,469,471,473,475,478,480,482,484,486,488,490,492,494,497,500,[502,504],506,508,510,512,514,516,518,520,522,524,526,528,530,532,534,536,538,540,542,544,546,548,550,552,554,556,558,560,562,[570,571],[573,574],577,[579,582],584,586,588,590,880,882,886,895,902,[904,906],908,[910,911],[913,929],[931,939],975,[978,980],984,986,988,990,992,994,996,998,1e3,1002,1004,1006,1012,1015,[1017,1018],[1021,1071],1120,1122,1124,1126,1128,1130,1132,1134,1136,1138,1140,1142,1144,1146,1148,1150,1152,1162,1164,1166,1168,1170,1172,1174,1176,1178,1180,1182,1184,1186,1188,1190,1192,1194,1196,1198,1200,1202,1204,1206,1208,1210,1212,1214,[1216,1217],1219,1221,1223,1225,1227,1229,1232,1234,1236,1238,1240,1242,1244,1246,1248,1250,1252,1254,1256,1258,1260,1262,1264,1266,1268,1270,1272,1274,1276,1278,1280,1282,1284,1286,1288,1290,1292,1294,1296,1298,1300,1302,1304,1306,1308,1310,1312,1314,1316,1318,1320,1322,1324,1326,[1329,1366],[4256,4293],4295,4301,[5024,5109],[7312,7354],[7357,7359],7680,7682,7684,7686,7688,7690,7692,7694,7696,7698,7700,7702,7704,7706,7708,7710,7712,7714,7716,7718,7720,7722,7724,7726,7728,7730,7732,7734,7736,7738,7740,7742,7744,7746,7748,7750,7752,7754,7756,7758,7760,7762,7764,7766,7768,7770,7772,7774,7776,7778,7780,7782,7784,7786,7788,7790,7792,7794,7796,7798,7800,7802,7804,7806,7808,7810,7812,7814,7816,7818,7820,7822,7824,7826,7828,7838,7840,7842,7844,7846,7848,7850,7852,7854,7856,7858,7860,7862,7864,7866,7868,7870,7872,7874,7876,7878,7880,7882,7884,7886,7888,7890,7892,7894,7896,7898,7900,7902,7904,7906,7908,7910,7912,7914,7916,7918,7920,7922,7924,7926,7928,7930,7932,7934,[7944,7951],[7960,7965],[7976,7983],[7992,7999],[8008,8013],8025,8027,8029,8031,[8040,8047],[8120,8123],[8136,8139],[8152,8155],[8168,8172],[8184,8187],8450,8455,[8459,8461],[8464,8466],8469,[8473,8477],8484,8486,8488,[8490,8493],[8496,8499],[8510,8511],8517,[8544,8559],8579,[9398,9423],[11264,11311],11360,[11362,11364],11367,11369,11371,[11373,11376],11378,11381,[11390,11392],11394,11396,11398,11400,11402,11404,11406,11408,11410,11412,11414,11416,11418,11420,11422,11424,11426,11428,11430,11432,11434,11436,11438,11440,11442,11444,11446,11448,11450,11452,11454,11456,11458,11460,11462,11464,11466,11468,11470,11472,11474,11476,11478,11480,11482,11484,11486,11488,11490,11499,11501,11506,42560,42562,42564,42566,42568,42570,42572,42574,42576,42578,42580,42582,42584,42586,42588,42590,42592,42594,42596,42598,42600,42602,42604,42624,42626,42628,42630,42632,42634,42636,42638,42640,42642,42644,42646,42648,42650,42786,42788,42790,42792,42794,42796,42798,42802,42804,42806,42808,42810,42812,42814,42816,42818,42820,42822,42824,42826,42828,42830,42832,42834,42836,42838,42840,42842,42844,42846,42848,42850,42852,42854,42856,42858,42860,42862,42873,42875,[42877,42878],42880,42882,42884,42886,42891,42893,42896,42898,42902,42904,42906,42908,42910,42912,42914,42916,42918,42920,[42922,42926],[42928,42932],42934,42936,42938,42940,42942,42944,42946,[42948,42951],42953,42960,42966,42968,42997,[65313,65338],[66560,66599],[66736,66771],[66928,66938],[66940,66954],[66956,66962],[66964,66965],[68736,68786],[71840,71871],[93760,93791],[119808,119833],[119860,119885],[119912,119937],119964,[119966,119967],119970,[119973,119974],[119977,119980],[119982,119989],[120016,120041],[120068,120069],[120071,120074],[120077,120084],[120086,120092],[120120,120121],[120123,120126],[120128,120132],120134,[120138,120144],[120172,120197],[120224,120249],[120276,120301],[120328,120353],[120380,120405],[120432,120457],[120488,120512],[120546,120570],[120604,120628],[120662,120686],[120720,120744],120778,[125184,125217],[127280,127305],[127312,127337],[127344,127369]],Variation_Selector:[[6155,6157],6159,[65024,65039],[917760,917999]],White_Space:[[9,13],32,133,160,5760,[8192,8202],[8232,8233],8239,8287,12288],XID_Continue:[[48,57],[65,90],95,[97,122],170,181,183,186,[192,214],[216,246],[248,705],[710,721],[736,740],748,750,[768,884],[886,887],[891,893],895,[902,906],908,[910,929],[931,1013],[1015,1153],[1155,1159],[1162,1327],[1329,1366],1369,[1376,1416],[1425,1469],1471,[1473,1474],[1476,1477],1479,[1488,1514],[1519,1522],[1552,1562],[1568,1641],[1646,1747],[1749,1756],[1759,1768],[1770,1788],1791,[1808,1866],[1869,1969],[1984,2037],2042,2045,[2048,2093],[2112,2139],[2144,2154],[2160,2183],[2185,2190],[2200,2273],[2275,2403],[2406,2415],[2417,2435],[2437,2444],[2447,2448],[2451,2472],[2474,2480],2482,[2486,2489],[2492,2500],[2503,2504],[2507,2510],2519,[2524,2525],[2527,2531],[2534,2545],2556,2558,[2561,2563],[2565,2570],[2575,2576],[2579,2600],[2602,2608],[2610,2611],[2613,2614],[2616,2617],2620,[2622,2626],[2631,2632],[2635,2637],2641,[2649,2652],2654,[2662,2677],[2689,2691],[2693,2701],[2703,2705],[2707,2728],[2730,2736],[2738,2739],[2741,2745],[2748,2757],[2759,2761],[2763,2765],2768,[2784,2787],[2790,2799],[2809,2815],[2817,2819],[2821,2828],[2831,2832],[2835,2856],[2858,2864],[2866,2867],[2869,2873],[2876,2884],[2887,2888],[2891,2893],[2901,2903],[2908,2909],[2911,2915],[2918,2927],2929,[2946,2947],[2949,2954],[2958,2960],[2962,2965],[2969,2970],2972,[2974,2975],[2979,2980],[2984,2986],[2990,3001],[3006,3010],[3014,3016],[3018,3021],3024,3031,[3046,3055],[3072,3084],[3086,3088],[3090,3112],[3114,3129],[3132,3140],[3142,3144],[3146,3149],[3157,3158],[3160,3162],3165,[3168,3171],[3174,3183],[3200,3203],[3205,3212],[3214,3216],[3218,3240],[3242,3251],[3253,3257],[3260,3268],[3270,3272],[3274,3277],[3285,3286],[3293,3294],[3296,3299],[3302,3311],[3313,3315],[3328,3340],[3342,3344],[3346,3396],[3398,3400],[3402,3406],[3412,3415],[3423,3427],[3430,3439],[3450,3455],[3457,3459],[3461,3478],[3482,3505],[3507,3515],3517,[3520,3526],3530,[3535,3540],3542,[3544,3551],[3558,3567],[3570,3571],[3585,3642],[3648,3662],[3664,3673],[3713,3714],3716,[3718,3722],[3724,3747],3749,[3751,3773],[3776,3780],3782,[3784,3790],[3792,3801],[3804,3807],3840,[3864,3865],[3872,3881],3893,3895,3897,[3902,3911],[3913,3948],[3953,3972],[3974,3991],[3993,4028],4038,[4096,4169],[4176,4253],[4256,4293],4295,4301,[4304,4346],[4348,4680],[4682,4685],[4688,4694],4696,[4698,4701],[4704,4744],[4746,4749],[4752,4784],[4786,4789],[4792,4798],4800,[4802,4805],[4808,4822],[4824,4880],[4882,4885],[4888,4954],[4957,4959],[4969,4977],[4992,5007],[5024,5109],[5112,5117],[5121,5740],[5743,5759],[5761,5786],[5792,5866],[5870,5880],[5888,5909],[5919,5940],[5952,5971],[5984,5996],[5998,6e3],[6002,6003],[6016,6099],6103,[6108,6109],[6112,6121],[6155,6157],[6159,6169],[6176,6264],[6272,6314],[6320,6389],[6400,6430],[6432,6443],[6448,6459],[6470,6509],[6512,6516],[6528,6571],[6576,6601],[6608,6618],[6656,6683],[6688,6750],[6752,6780],[6783,6793],[6800,6809],6823,[6832,6845],[6847,6862],[6912,6988],[6992,7001],[7019,7027],[7040,7155],[7168,7223],[7232,7241],[7245,7293],[7296,7304],[7312,7354],[7357,7359],[7376,7378],[7380,7418],[7424,7957],[7960,7965],[7968,8005],[8008,8013],[8016,8023],8025,8027,8029,[8031,8061],[8064,8116],[8118,8124],8126,[8130,8132],[8134,8140],[8144,8147],[8150,8155],[8160,8172],[8178,8180],[8182,8188],[8255,8256],8276,8305,8319,[8336,8348],[8400,8412],8417,[8421,8432],8450,8455,[8458,8467],8469,[8472,8477],8484,8486,8488,[8490,8505],[8508,8511],[8517,8521],8526,[8544,8584],[11264,11492],[11499,11507],[11520,11557],11559,11565,[11568,11623],11631,[11647,11670],[11680,11686],[11688,11694],[11696,11702],[11704,11710],[11712,11718],[11720,11726],[11728,11734],[11736,11742],[11744,11775],[12293,12295],[12321,12335],[12337,12341],[12344,12348],[12353,12438],[12441,12442],[12445,12447],[12449,12538],[12540,12543],[12549,12591],[12593,12686],[12704,12735],[12784,12799],[13312,19903],[19968,42124],[42192,42237],[42240,42508],[42512,42539],[42560,42607],[42612,42621],[42623,42737],[42775,42783],[42786,42888],[42891,42954],[42960,42961],42963,[42965,42969],[42994,43047],43052,[43072,43123],[43136,43205],[43216,43225],[43232,43255],43259,[43261,43309],[43312,43347],[43360,43388],[43392,43456],[43471,43481],[43488,43518],[43520,43574],[43584,43597],[43600,43609],[43616,43638],[43642,43714],[43739,43741],[43744,43759],[43762,43766],[43777,43782],[43785,43790],[43793,43798],[43808,43814],[43816,43822],[43824,43866],[43868,43881],[43888,44010],[44012,44013],[44016,44025],[44032,55203],[55216,55238],[55243,55291],[63744,64109],[64112,64217],[64256,64262],[64275,64279],[64285,64296],[64298,64310],[64312,64316],64318,[64320,64321],[64323,64324],[64326,64433],[64467,64605],[64612,64829],[64848,64911],[64914,64967],[65008,65017],[65024,65039],[65056,65071],[65075,65076],[65101,65103],65137,65139,65143,65145,65147,65149,[65151,65276],[65296,65305],[65313,65338],65343,[65345,65370],[65382,65470],[65474,65479],[65482,65487],[65490,65495],[65498,65500],[65536,65547],[65549,65574],[65576,65594],[65596,65597],[65599,65613],[65616,65629],[65664,65786],[65856,65908],66045,[66176,66204],[66208,66256],66272,[66304,66335],[66349,66378],[66384,66426],[66432,66461],[66464,66499],[66504,66511],[66513,66517],[66560,66717],[66720,66729],[66736,66771],[66776,66811],[66816,66855],[66864,66915],[66928,66938],[66940,66954],[66956,66962],[66964,66965],[66967,66977],[66979,66993],[66995,67001],[67003,67004],[67072,67382],[67392,67413],[67424,67431],[67456,67461],[67463,67504],[67506,67514],[67584,67589],67592,[67594,67637],[67639,67640],67644,[67647,67669],[67680,67702],[67712,67742],[67808,67826],[67828,67829],[67840,67861],[67872,67897],[67968,68023],[68030,68031],[68096,68099],[68101,68102],[68108,68115],[68117,68119],[68121,68149],[68152,68154],68159,[68192,68220],[68224,68252],[68288,68295],[68297,68326],[68352,68405],[68416,68437],[68448,68466],[68480,68497],[68608,68680],[68736,68786],[68800,68850],[68864,68903],[68912,68921],[69248,69289],[69291,69292],[69296,69297],[69373,69404],69415,[69424,69456],[69488,69509],[69552,69572],[69600,69622],[69632,69702],[69734,69749],[69759,69818],69826,[69840,69864],[69872,69881],[69888,69940],[69942,69951],[69956,69959],[69968,70003],70006,[70016,70084],[70089,70092],[70094,70106],70108,[70144,70161],[70163,70199],[70206,70209],[70272,70278],70280,[70282,70285],[70287,70301],[70303,70312],[70320,70378],[70384,70393],[70400,70403],[70405,70412],[70415,70416],[70419,70440],[70442,70448],[70450,70451],[70453,70457],[70459,70468],[70471,70472],[70475,70477],70480,70487,[70493,70499],[70502,70508],[70512,70516],[70656,70730],[70736,70745],[70750,70753],[70784,70853],70855,[70864,70873],[71040,71093],[71096,71104],[71128,71133],[71168,71232],71236,[71248,71257],[71296,71352],[71360,71369],[71424,71450],[71453,71467],[71472,71481],[71488,71494],[71680,71738],[71840,71913],[71935,71942],71945,[71948,71955],[71957,71958],[71960,71989],[71991,71992],[71995,72003],[72016,72025],[72096,72103],[72106,72151],[72154,72161],[72163,72164],[72192,72254],72263,[72272,72345],72349,[72368,72440],[72704,72712],[72714,72758],[72760,72768],[72784,72793],[72818,72847],[72850,72871],[72873,72886],[72960,72966],[72968,72969],[72971,73014],73018,[73020,73021],[73023,73031],[73040,73049],[73056,73061],[73063,73064],[73066,73102],[73104,73105],[73107,73112],[73120,73129],[73440,73462],[73472,73488],[73490,73530],[73534,73538],[73552,73561],73648,[73728,74649],[74752,74862],[74880,75075],[77712,77808],[77824,78895],[78912,78933],[82944,83526],[92160,92728],[92736,92766],[92768,92777],[92784,92862],[92864,92873],[92880,92909],[92912,92916],[92928,92982],[92992,92995],[93008,93017],[93027,93047],[93053,93071],[93760,93823],[93952,94026],[94031,94087],[94095,94111],[94176,94177],[94179,94180],[94192,94193],[94208,100343],[100352,101589],[101632,101640],[110576,110579],[110581,110587],[110589,110590],[110592,110882],110898,[110928,110930],110933,[110948,110951],[110960,111355],[113664,113770],[113776,113788],[113792,113800],[113808,113817],[113821,113822],[118528,118573],[118576,118598],[119141,119145],[119149,119154],[119163,119170],[119173,119179],[119210,119213],[119362,119364],[119808,119892],[119894,119964],[119966,119967],119970,[119973,119974],[119977,119980],[119982,119993],119995,[119997,120003],[120005,120069],[120071,120074],[120077,120084],[120086,120092],[120094,120121],[120123,120126],[120128,120132],120134,[120138,120144],[120146,120485],[120488,120512],[120514,120538],[120540,120570],[120572,120596],[120598,120628],[120630,120654],[120656,120686],[120688,120712],[120714,120744],[120746,120770],[120772,120779],[120782,120831],[121344,121398],[121403,121452],121461,121476,[121499,121503],[121505,121519],[122624,122654],[122661,122666],[122880,122886],[122888,122904],[122907,122913],[122915,122916],[122918,122922],[122928,122989],123023,[123136,123180],[123184,123197],[123200,123209],123214,[123536,123566],[123584,123641],[124112,124153],[124896,124902],[124904,124907],[124909,124910],[124912,124926],[124928,125124],[125136,125142],[125184,125259],[125264,125273],[126464,126467],[126469,126495],[126497,126498],126500,126503,[126505,126514],[126516,126519],126521,126523,126530,126535,126537,126539,[126541,126543],[126545,126546],126548,126551,126553,126555,126557,126559,[126561,126562],126564,[126567,126570],[126572,126578],[126580,126583],[126585,126588],126590,[126592,126601],[126603,126619],[126625,126627],[126629,126633],[126635,126651],[130032,130041],[131072,173791],[173824,177977],[177984,178205],[178208,183969],[183984,191456],[194560,195101],[196608,201546],[201552,205743],[917760,917999]],XID_Start:[[65,90],[97,122],170,181,186,[192,214],[216,246],[248,705],[710,721],[736,740],748,750,[880,884],[886,887],[891,893],895,902,[904,906],908,[910,929],[931,1013],[1015,1153],[1162,1327],[1329,1366],1369,[1376,1416],[1488,1514],[1519,1522],[1568,1610],[1646,1647],[1649,1747],1749,[1765,1766],[1774,1775],[1786,1788],1791,1808,[1810,1839],[1869,1957],1969,[1994,2026],[2036,2037],2042,[2048,2069],2074,2084,2088,[2112,2136],[2144,2154],[2160,2183],[2185,2190],[2208,2249],[2308,2361],2365,2384,[2392,2401],[2417,2432],[2437,2444],[2447,2448],[2451,2472],[2474,2480],2482,[2486,2489],2493,2510,[2524,2525],[2527,2529],[2544,2545],2556,[2565,2570],[2575,2576],[2579,2600],[2602,2608],[2610,2611],[2613,2614],[2616,2617],[2649,2652],2654,[2674,2676],[2693,2701],[2703,2705],[2707,2728],[2730,2736],[2738,2739],[2741,2745],2749,2768,[2784,2785],2809,[2821,2828],[2831,2832],[2835,2856],[2858,2864],[2866,2867],[2869,2873],2877,[2908,2909],[2911,2913],2929,2947,[2949,2954],[2958,2960],[2962,2965],[2969,2970],2972,[2974,2975],[2979,2980],[2984,2986],[2990,3001],3024,[3077,3084],[3086,3088],[3090,3112],[3114,3129],3133,[3160,3162],3165,[3168,3169],3200,[3205,3212],[3214,3216],[3218,3240],[3242,3251],[3253,3257],3261,[3293,3294],[3296,3297],[3313,3314],[3332,3340],[3342,3344],[3346,3386],3389,3406,[3412,3414],[3423,3425],[3450,3455],[3461,3478],[3482,3505],[3507,3515],3517,[3520,3526],[3585,3632],3634,[3648,3654],[3713,3714],3716,[3718,3722],[3724,3747],3749,[3751,3760],3762,3773,[3776,3780],3782,[3804,3807],3840,[3904,3911],[3913,3948],[3976,3980],[4096,4138],4159,[4176,4181],[4186,4189],4193,[4197,4198],[4206,4208],[4213,4225],4238,[4256,4293],4295,4301,[4304,4346],[4348,4680],[4682,4685],[4688,4694],4696,[4698,4701],[4704,4744],[4746,4749],[4752,4784],[4786,4789],[4792,4798],4800,[4802,4805],[4808,4822],[4824,4880],[4882,4885],[4888,4954],[4992,5007],[5024,5109],[5112,5117],[5121,5740],[5743,5759],[5761,5786],[5792,5866],[5870,5880],[5888,5905],[5919,5937],[5952,5969],[5984,5996],[5998,6e3],[6016,6067],6103,6108,[6176,6264],[6272,6312],6314,[6320,6389],[6400,6430],[6480,6509],[6512,6516],[6528,6571],[6576,6601],[6656,6678],[6688,6740],6823,[6917,6963],[6981,6988],[7043,7072],[7086,7087],[7098,7141],[7168,7203],[7245,7247],[7258,7293],[7296,7304],[7312,7354],[7357,7359],[7401,7404],[7406,7411],[7413,7414],7418,[7424,7615],[7680,7957],[7960,7965],[7968,8005],[8008,8013],[8016,8023],8025,8027,8029,[8031,8061],[8064,8116],[8118,8124],8126,[8130,8132],[8134,8140],[8144,8147],[8150,8155],[8160,8172],[8178,8180],[8182,8188],8305,8319,[8336,8348],8450,8455,[8458,8467],8469,[8472,8477],8484,8486,8488,[8490,8505],[8508,8511],[8517,8521],8526,[8544,8584],[11264,11492],[11499,11502],[11506,11507],[11520,11557],11559,11565,[11568,11623],11631,[11648,11670],[11680,11686],[11688,11694],[11696,11702],[11704,11710],[11712,11718],[11720,11726],[11728,11734],[11736,11742],[12293,12295],[12321,12329],[12337,12341],[12344,12348],[12353,12438],[12445,12447],[12449,12538],[12540,12543],[12549,12591],[12593,12686],[12704,12735],[12784,12799],[13312,19903],[19968,42124],[42192,42237],[42240,42508],[42512,42527],[42538,42539],[42560,42606],[42623,42653],[42656,42735],[42775,42783],[42786,42888],[42891,42954],[42960,42961],42963,[42965,42969],[42994,43009],[43011,43013],[43015,43018],[43020,43042],[43072,43123],[43138,43187],[43250,43255],43259,[43261,43262],[43274,43301],[43312,43334],[43360,43388],[43396,43442],43471,[43488,43492],[43494,43503],[43514,43518],[43520,43560],[43584,43586],[43588,43595],[43616,43638],43642,[43646,43695],43697,[43701,43702],[43705,43709],43712,43714,[43739,43741],[43744,43754],[43762,43764],[43777,43782],[43785,43790],[43793,43798],[43808,43814],[43816,43822],[43824,43866],[43868,43881],[43888,44002],[44032,55203],[55216,55238],[55243,55291],[63744,64109],[64112,64217],[64256,64262],[64275,64279],64285,[64287,64296],[64298,64310],[64312,64316],64318,[64320,64321],[64323,64324],[64326,64433],[64467,64605],[64612,64829],[64848,64911],[64914,64967],[65008,65017],65137,65139,65143,65145,65147,65149,[65151,65276],[65313,65338],[65345,65370],[65382,65437],[65440,65470],[65474,65479],[65482,65487],[65490,65495],[65498,65500],[65536,65547],[65549,65574],[65576,65594],[65596,65597],[65599,65613],[65616,65629],[65664,65786],[65856,65908],[66176,66204],[66208,66256],[66304,66335],[66349,66378],[66384,66421],[66432,66461],[66464,66499],[66504,66511],[66513,66517],[66560,66717],[66736,66771],[66776,66811],[66816,66855],[66864,66915],[66928,66938],[66940,66954],[66956,66962],[66964,66965],[66967,66977],[66979,66993],[66995,67001],[67003,67004],[67072,67382],[67392,67413],[67424,67431],[67456,67461],[67463,67504],[67506,67514],[67584,67589],67592,[67594,67637],[67639,67640],67644,[67647,67669],[67680,67702],[67712,67742],[67808,67826],[67828,67829],[67840,67861],[67872,67897],[67968,68023],[68030,68031],68096,[68112,68115],[68117,68119],[68121,68149],[68192,68220],[68224,68252],[68288,68295],[68297,68324],[68352,68405],[68416,68437],[68448,68466],[68480,68497],[68608,68680],[68736,68786],[68800,68850],[68864,68899],[69248,69289],[69296,69297],[69376,69404],69415,[69424,69445],[69488,69505],[69552,69572],[69600,69622],[69635,69687],[69745,69746],69749,[69763,69807],[69840,69864],[69891,69926],69956,69959,[69968,70002],70006,[70019,70066],[70081,70084],70106,70108,[70144,70161],[70163,70187],[70207,70208],[70272,70278],70280,[70282,70285],[70287,70301],[70303,70312],[70320,70366],[70405,70412],[70415,70416],[70419,70440],[70442,70448],[70450,70451],[70453,70457],70461,70480,[70493,70497],[70656,70708],[70727,70730],[70751,70753],[70784,70831],[70852,70853],70855,[71040,71086],[71128,71131],[71168,71215],71236,[71296,71338],71352,[71424,71450],[71488,71494],[71680,71723],[71840,71903],[71935,71942],71945,[71948,71955],[71957,71958],[71960,71983],71999,72001,[72096,72103],[72106,72144],72161,72163,72192,[72203,72242],72250,72272,[72284,72329],72349,[72368,72440],[72704,72712],[72714,72750],72768,[72818,72847],[72960,72966],[72968,72969],[72971,73008],73030,[73056,73061],[73063,73064],[73066,73097],73112,[73440,73458],73474,[73476,73488],[73490,73523],73648,[73728,74649],[74752,74862],[74880,75075],[77712,77808],[77824,78895],[78913,78918],[82944,83526],[92160,92728],[92736,92766],[92784,92862],[92880,92909],[92928,92975],[92992,92995],[93027,93047],[93053,93071],[93760,93823],[93952,94026],94032,[94099,94111],[94176,94177],94179,[94208,100343],[100352,101589],[101632,101640],[110576,110579],[110581,110587],[110589,110590],[110592,110882],110898,[110928,110930],110933,[110948,110951],[110960,111355],[113664,113770],[113776,113788],[113792,113800],[113808,113817],[119808,119892],[119894,119964],[119966,119967],119970,[119973,119974],[119977,119980],[119982,119993],119995,[119997,120003],[120005,120069],[120071,120074],[120077,120084],[120086,120092],[120094,120121],[120123,120126],[120128,120132],120134,[120138,120144],[120146,120485],[120488,120512],[120514,120538],[120540,120570],[120572,120596],[120598,120628],[120630,120654],[120656,120686],[120688,120712],[120714,120744],[120746,120770],[120772,120779],[122624,122654],[122661,122666],[122928,122989],[123136,123180],[123191,123197],123214,[123536,123565],[123584,123627],[124112,124139],[124896,124902],[124904,124907],[124909,124910],[124912,124926],[124928,125124],[125184,125251],125259,[126464,126467],[126469,126495],[126497,126498],126500,126503,[126505,126514],[126516,126519],126521,126523,126530,126535,126537,126539,[126541,126543],[126545,126546],126548,126551,126553,126555,126557,126559,[126561,126562],126564,[126567,126570],[126572,126578],[126580,126583],[126585,126588],126590,[126592,126601],[126603,126619],[126625,126627],[126629,126633],[126635,126651],[131072,173791],[173824,177977],[177984,178205],[178208,183969],[183984,191456],[194560,195101],[196608,201546],[201552,205743]]},Symbol.toStringTag,{value:"Module"})),Block:Object.freeze(Object.defineProperty({__proto__:null,Adlam:[[125184,125279]],Aegean_Numbers:[[65792,65855]],Ahom:[[71424,71503]],Alchemical_Symbols:[[128768,128895]],Alphabetic_Presentation_Forms:[[64256,64335]],Anatolian_Hieroglyphs:[[82944,83583]],Ancient_Greek_Musical_Notation:[[119296,119375]],Ancient_Greek_Numbers:[[65856,65935]],Ancient_Symbols:[[65936,65999]],Arabic:[[1536,1791]],Arabic_Extended_A:[[2208,2303]],Arabic_Mathematical_Alphabetic_Symbols:[[126464,126719]],Arabic_Presentation_Forms_A:[[64336,65023]],Arabic_Presentation_Forms_B:[[65136,65279]],Arabic_Supplement:[[1872,1919]],Armenian:[[1328,1423]],Arrows:[[8592,8703]],Avestan:[[68352,68415]],Balinese:[[6912,7039]],Bamum:[[42656,42751]],Bamum_Supplement:[[92160,92735]],Basic_Latin:[[0,127]],Bassa_Vah:[[92880,92927]],Batak:[[7104,7167]],Bengali:[[2432,2559]],Bhaiksuki:[[72704,72815]],Block_Elements:[[9600,9631]],Bopomofo:[[12544,12591]],Bopomofo_Extended:[[12704,12735]],Box_Drawing:[[9472,9599]],Brahmi:[[69632,69759]],Braille_Patterns:[[10240,10495]],Buginese:[[6656,6687]],Buhid:[[5952,5983]],Byzantine_Musical_Symbols:[[118784,119039]],CJK_Compatibility:[[13056,13311]],CJK_Compatibility_Forms:[[65072,65103]],CJK_Compatibility_Ideographs:[[63744,64255]],CJK_Compatibility_Ideographs_Supplement:[[194560,195103]],CJK_Radicals_Supplement:[[11904,12031]],CJK_Strokes:[[12736,12783]],CJK_Symbols_And_Punctuation:[[12288,12351]],CJK_Unified_Ideographs:[[19968,40959]],CJK_Unified_Ideographs_Extension_A:[[13312,19903]],CJK_Unified_Ideographs_Extension_B:[[131072,173791]],CJK_Unified_Ideographs_Extension_C:[[173824,177983]],CJK_Unified_Ideographs_Extension_D:[[177984,178207]],CJK_Unified_Ideographs_Extension_E:[[178208,183983]],CJK_Unified_Ideographs_Extension_F:[[183984,191471]],Carian:[[66208,66271]],Caucasian_Albanian:[[66864,66927]],Chakma:[[69888,69967]],Cham:[[43520,43615]],Cherokee:[[5024,5119]],Cherokee_Supplement:[[43888,43967]],Chess_Symbols:[[129536,129647]],Combining_Diacritical_Marks:[[768,879]],Combining_Diacritical_Marks_Extended:[[6832,6911]],Combining_Diacritical_Marks_For_Symbols:[[8400,8447]],Combining_Diacritical_Marks_Supplement:[[7616,7679]],Combining_Half_Marks:[[65056,65071]],Common_Indic_Number_Forms:[[43056,43071]],Control_Pictures:[[9216,9279]],Coptic:[[11392,11519]],Coptic_Epact_Numbers:[[66272,66303]],Counting_Rod_Numerals:[[119648,119679]],Cuneiform:[[73728,74751]],Cuneiform_Numbers_And_Punctuation:[[74752,74879]],Currency_Symbols:[[8352,8399]],Cypriot_Syllabary:[[67584,67647]],Cyrillic:[[1024,1279]],Cyrillic_Extended_A:[[11744,11775]],Cyrillic_Extended_B:[[42560,42655]],Cyrillic_Extended_C:[[7296,7311]],Cyrillic_Supplement:[[1280,1327]],Deseret:[[66560,66639]],Devanagari:[[2304,2431]],Devanagari_Extended:[[43232,43263]],Dingbats:[[9984,10175]],Dogra:[[71680,71759]],Domino_Tiles:[[127024,127135]],Duployan:[[113664,113823]],Early_Dynastic_Cuneiform:[[74880,75087]],Egyptian_Hieroglyphs:[[77824,78895]],Elbasan:[[66816,66863]],Emoticons:[[128512,128591]],Enclosed_Alphanumeric_Supplement:[[127232,127487]],Enclosed_Alphanumerics:[[9312,9471]],Enclosed_CJK_Letters_And_Months:[[12800,13055]],Enclosed_Ideographic_Supplement:[[127488,127743]],Ethiopic:[[4608,4991]],Ethiopic_Extended:[[11648,11743]],Ethiopic_Extended_A:[[43776,43823]],Ethiopic_Supplement:[[4992,5023]],General_Punctuation:[[8192,8303]],Geometric_Shapes:[[9632,9727]],Geometric_Shapes_Extended:[[128896,129023]],Georgian:[[4256,4351]],Georgian_Extended:[[7312,7359]],Georgian_Supplement:[[11520,11567]],Glagolitic:[[11264,11359]],Glagolitic_Supplement:[[122880,122927]],Gothic:[[66352,66383]],Grantha:[[70400,70527]],Greek_And_Coptic:[[880,1023]],Greek_Extended:[[7936,8191]],Gujarati:[[2688,2815]],Gunjala_Gondi:[[73056,73135]],Gurmukhi:[[2560,2687]],Halfwidth_And_Fullwidth_Forms:[[65280,65519]],Hangul_Compatibility_Jamo:[[12592,12687]],Hangul_Jamo:[[4352,4607]],Hangul_Jamo_Extended_A:[[43360,43391]],Hangul_Jamo_Extended_B:[[55216,55295]],Hangul_Syllables:[[44032,55215]],Hanifi_Rohingya:[[68864,68927]],Hanunoo:[[5920,5951]],Hatran:[[67808,67839]],Hebrew:[[1424,1535]],High_Private_Use_Surrogates:[[56192,56319]],High_Surrogates:[[55296,56191]],Hiragana:[[12352,12447]],IPA_Extensions:[[592,687]],Ideographic_Description_Characters:[[12272,12287]],Ideographic_Symbols_And_Punctuation:[[94176,94207]],Imperial_Aramaic:[[67648,67679]],Indic_Siyaq_Numbers:[[126064,126143]],Inscriptional_Pahlavi:[[68448,68479]],Inscriptional_Parthian:[[68416,68447]],Javanese:[[43392,43487]],Kaithi:[[69760,69839]],Kana_Extended_A:[[110848,110895]],Kana_Supplement:[[110592,110847]],Kanbun:[[12688,12703]],Kangxi_Radicals:[[12032,12255]],Kannada:[[3200,3327]],Katakana:[[12448,12543]],Katakana_Phonetic_Extensions:[[12784,12799]],Kayah_Li:[[43264,43311]],Kharoshthi:[[68096,68191]],Khmer:[[6016,6143]],Khmer_Symbols:[[6624,6655]],Khojki:[[70144,70223]],Khudawadi:[[70320,70399]],Lao:[[3712,3839]],Latin_1_Supplement:[[128,255]],Latin_Extended_A:[[256,383]],Latin_Extended_Additional:[[7680,7935]],Latin_Extended_B:[[384,591]],Latin_Extended_C:[[11360,11391]],Latin_Extended_D:[[42784,43007]],Latin_Extended_E:[[43824,43887]],Lepcha:[[7168,7247]],Letterlike_Symbols:[[8448,8527]],Limbu:[[6400,6479]],Linear_A:[[67072,67455]],Linear_B_Ideograms:[[65664,65791]],Linear_B_Syllabary:[[65536,65663]],Lisu:[[42192,42239]],Low_Surrogates:[[56320,57343]],Lycian:[[66176,66207]],Lydian:[[67872,67903]],Mahajani:[[69968,70015]],Mahjong_Tiles:[[126976,127023]],Makasar:[[73440,73471]],Malayalam:[[3328,3455]],Mandaic:[[2112,2143]],Manichaean:[[68288,68351]],Marchen:[[72816,72895]],Masaram_Gondi:[[72960,73055]],Mathematical_Alphanumeric_Symbols:[[119808,120831]],Mathematical_Operators:[[8704,8959]],Mayan_Numerals:[[119520,119551]],Medefaidrin:[[93760,93855]],Meetei_Mayek:[[43968,44031]],Meetei_Mayek_Extensions:[[43744,43775]],Mende_Kikakui:[[124928,125151]],Meroitic_Cursive:[[68e3,68095]],Meroitic_Hieroglyphs:[[67968,67999]],Miao:[[93952,94111]],Miscellaneous_Mathematical_Symbols_A:[[10176,10223]],Miscellaneous_Mathematical_Symbols_B:[[10624,10751]],Miscellaneous_Symbols:[[9728,9983]],Miscellaneous_Symbols_And_Arrows:[[11008,11263]],Miscellaneous_Symbols_And_Pictographs:[[127744,128511]],Miscellaneous_Technical:[[8960,9215]],Modi:[[71168,71263]],Modifier_Tone_Letters:[[42752,42783]],Mongolian:[[6144,6319]],Mongolian_Supplement:[[71264,71295]],Mro:[[92736,92783]],Multani:[[70272,70319]],Musical_Symbols:[[119040,119295]],Myanmar:[[4096,4255]],Myanmar_Extended_A:[[43616,43647]],Myanmar_Extended_B:[[43488,43519]],NKo:[[1984,2047]],Nabataean:[[67712,67759]],New_Tai_Lue:[[6528,6623]],Newa:[[70656,70783]],Number_Forms:[[8528,8591]],Nushu:[[110960,111359]],Ogham:[[5760,5791]],Ol_Chiki:[[7248,7295]],Old_Hungarian:[[68736,68863]],Old_Italic:[[66304,66351]],Old_North_Arabian:[[68224,68255]],Old_Permic:[[66384,66431]],Old_Persian:[[66464,66527]],Old_Sogdian:[[69376,69423]],Old_South_Arabian:[[68192,68223]],Old_Turkic:[[68608,68687]],Optical_Character_Recognition:[[9280,9311]],Oriya:[[2816,2943]],Ornamental_Dingbats:[[128592,128639]],Osage:[[66736,66815]],Osmanya:[[66688,66735]],Pahawh_Hmong:[[92928,93071]],Palmyrene:[[67680,67711]],Pau_Cin_Hau:[[72384,72447]],Phags_Pa:[[43072,43135]],Phaistos_Disc:[[66e3,66047]],Phoenician:[[67840,67871]],Phonetic_Extensions:[[7424,7551]],Phonetic_Extensions_Supplement:[[7552,7615]],Playing_Cards:[[127136,127231]],Private_Use_Area:[[57344,63743]],Psalter_Pahlavi:[[68480,68527]],Rejang:[[43312,43359]],Rumi_Numeral_Symbols:[[69216,69247]],Runic:[[5792,5887]],Samaritan:[[2048,2111]],Saurashtra:[[43136,43231]],Sharada:[[70016,70111]],Shavian:[[66640,66687]],Shorthand_Format_Controls:[[113824,113839]],Siddham:[[71040,71167]],Sinhala:[[3456,3583]],Sinhala_Archaic_Numbers:[[70112,70143]],Small_Form_Variants:[[65104,65135]],Sogdian:[[69424,69487]],Sora_Sompeng:[[69840,69887]],Soyombo:[[72272,72367]],Spacing_Modifier_Letters:[[688,767]],Specials:[[65520,65535]],Sundanese:[[7040,7103]],Sundanese_Supplement:[[7360,7375]],Superscripts_And_Subscripts:[[8304,8351]],Supplemental_Arrows_A:[[10224,10239]],Supplemental_Arrows_B:[[10496,10623]],Supplemental_Arrows_C:[[129024,129279]],Supplemental_Mathematical_Operators:[[10752,11007]],Supplemental_Punctuation:[[11776,11903]],Supplemental_Symbols_And_Pictographs:[[129280,129535]],Supplementary_Private_Use_Area_A:[[983040,1048575]],Supplementary_Private_Use_Area_B:[[1048576,1114111]],Sutton_SignWriting:[[120832,121519]],Syloti_Nagri:[[43008,43055]],Syriac:[[1792,1871]],Syriac_Supplement:[[2144,2159]],Tagalog:[[5888,5919]],Tagbanwa:[[5984,6015]],Tags:[[917504,917631]],Tai_Le:[[6480,6527]],Tai_Tham:[[6688,6831]],Tai_Viet:[[43648,43743]],Tai_Xuan_Jing_Symbols:[[119552,119647]],Takri:[[71296,71375]],Tamil:[[2944,3071]],Tangut:[[94208,100351]],Tangut_Components:[[100352,101119]],Telugu:[[3072,3199]],Thaana:[[1920,1983]],Thai:[[3584,3711]],Tibetan:[[3840,4095]],Tifinagh:[[11568,11647]],Tirhuta:[[70784,70879]],Transport_And_Map_Symbols:[[128640,128767]],Ugaritic:[[66432,66463]],Unified_Canadian_Aboriginal_Syllabics:[[5120,5759]],Unified_Canadian_Aboriginal_Syllabics_Extended:[[6320,6399]],Vai:[[42240,42559]],Variation_Selectors:[[65024,65039]],Variation_Selectors_Supplement:[[917760,917999]],Vedic_Extensions:[[7376,7423]],Vertical_Forms:[[65040,65055]],Warang_Citi:[[71840,71935]],Yi_Radicals:[[42128,42191]],Yi_Syllables:[[40960,42127]],Yijing_Hexagram_Symbols:[[19904,19967]],Zanabazar_Square:[[72192,72271]],undefined:[[2160,2207],[66928,67007],[67456,67519],[69248,69375],[69488,69631],[71936,72031],[72096,72191],[72368,72383],[72448,72543],[73472,73567],[73648,73727],[77712,77823],[78896,78943],[92784,92879],[101120,101759],[110576,110591],[110896,110959],[118528,118735],[119488,119519],[122624,122879],[122928,123023],[123136,123215],[123536,123647],[124112,124159],[124896,124927],[126208,126287],[129648,130047],[196608,205743]]},Symbol.toStringTag,{value:"Module"})),Case_Folding:Object.freeze(Object.defineProperty({__proto__:null,C:[],F:[],S:[],T:[]},Symbol.toStringTag,{value:"Module"})),General_Category:Object.freeze(Object.defineProperty({__proto__:null,Cased_Letter:[[65,90],[97,122],181,[192,214],[216,246],[248,442],[444,447],[452,659],[661,687],[880,883],[886,887],[891,893],895,902,[904,906],908,[910,929],[931,1013],[1015,1153],[1162,1327],[1329,1366],[1376,1416],[4256,4293],4295,4301,[4304,4346],[4349,4351],[5024,5109],[5112,5117],[7296,7304],[7312,7354],[7357,7359],[7424,7467],[7531,7543],[7545,7578],[7680,7957],[7960,7965],[7968,8005],[8008,8013],[8016,8023],8025,8027,8029,[8031,8061],[8064,8116],[8118,8124],8126,[8130,8132],[8134,8140],[8144,8147],[8150,8155],[8160,8172],[8178,8180],[8182,8188],8450,8455,[8458,8467],8469,[8473,8477],8484,8486,8488,[8490,8493],[8495,8500],8505,[8508,8511],[8517,8521],8526,[8579,8580],[11264,11387],[11390,11492],[11499,11502],[11506,11507],[11520,11557],11559,11565,[42560,42605],[42624,42651],[42786,42863],[42865,42887],[42891,42894],[42896,42954],[42960,42961],42963,[42965,42969],[42997,42998],43002,[43824,43866],[43872,43880],[43888,43967],[64256,64262],[64275,64279],[65313,65338],[65345,65370],[66560,66639],[66736,66771],[66776,66811],[66928,66938],[66940,66954],[66956,66962],[66964,66965],[66967,66977],[66979,66993],[66995,67001],[67003,67004],[68736,68786],[68800,68850],[71840,71903],[93760,93823],[119808,119892],[119894,119964],[119966,119967],119970,[119973,119974],[119977,119980],[119982,119993],119995,[119997,120003],[120005,120069],[120071,120074],[120077,120084],[120086,120092],[120094,120121],[120123,120126],[120128,120132],120134,[120138,120144],[120146,120485],[120488,120512],[120514,120538],[120540,120570],[120572,120596],[120598,120628],[120630,120654],[120656,120686],[120688,120712],[120714,120744],[120746,120770],[120772,120779],[122624,122633],[122635,122654],[122661,122666],[125184,125251]],Close_Punctuation:[41,93,125,3899,3901,5788,8262,8318,8334,8969,8971,9002,10089,10091,10093,10095,10097,10099,10101,10182,10215,10217,10219,10221,10223,10628,10630,10632,10634,10636,10638,10640,10642,10644,10646,10648,10713,10715,10749,11811,11813,11815,11817,11862,11864,11866,11868,12297,12299,12301,12303,12305,12309,12311,12313,12315,[12318,12319],64830,65048,65078,65080,65082,65084,65086,65088,65090,65092,65096,65114,65116,65118,65289,65341,65373,65376,65379],Connector_Punctuation:[95,[8255,8256],8276,[65075,65076],[65101,65103],65343],Control:[[0,31],[127,159]],Currency_Symbol:[36,[162,165],1423,1547,[2046,2047],[2546,2547],2555,2801,3065,3647,6107,[8352,8384],43064,65020,65129,65284,[65504,65505],[65509,65510],[73693,73696],123647,126128],Dash_Punctuation:[45,1418,1470,5120,6150,[8208,8213],11799,11802,[11834,11835],11840,11869,12316,12336,12448,[65073,65074],65112,65123,65293,69293],Decimal_Number:[[48,57],[1632,1641],[1776,1785],[1984,1993],[2406,2415],[2534,2543],[2662,2671],[2790,2799],[2918,2927],[3046,3055],[3174,3183],[3302,3311],[3430,3439],[3558,3567],[3664,3673],[3792,3801],[3872,3881],[4160,4169],[4240,4249],[6112,6121],[6160,6169],[6470,6479],[6608,6617],[6784,6793],[6800,6809],[6992,7001],[7088,7097],[7232,7241],[7248,7257],[42528,42537],[43216,43225],[43264,43273],[43472,43481],[43504,43513],[43600,43609],[44016,44025],[65296,65305],[66720,66729],[68912,68921],[69734,69743],[69872,69881],[69942,69951],[70096,70105],[70384,70393],[70736,70745],[70864,70873],[71248,71257],[71360,71369],[71472,71481],[71904,71913],[72016,72025],[72784,72793],[73040,73049],[73120,73129],[73552,73561],[92768,92777],[92864,92873],[93008,93017],[120782,120831],[123200,123209],[123632,123641],[124144,124153],[125264,125273],[130032,130041]],Enclosing_Mark:[[1160,1161],6846,[8413,8416],[8418,8420],[42608,42610]],Final_Punctuation:[187,8217,8221,8250,11779,11781,11786,11789,11805,11809],Format:[173,[1536,1541],1564,1757,1807,[2192,2193],2274,6158,[8203,8207],[8234,8238],[8288,8292],[8294,8303],65279,[65529,65531],69821,69837,[78896,78911],[113824,113827],[119155,119162],917505,[917536,917631]],Initial_Punctuation:[171,8216,[8219,8220],8223,8249,11778,11780,11785,11788,11804,11808],Letter:[[65,90],[97,122],170,181,186,[192,214],[216,246],[248,705],[710,721],[736,740],748,750,[880,884],[886,887],[890,893],895,902,[904,906],908,[910,929],[931,1013],[1015,1153],[1162,1327],[1329,1366],1369,[1376,1416],[1488,1514],[1519,1522],[1568,1610],[1646,1647],[1649,1747],1749,[1765,1766],[1774,1775],[1786,1788],1791,1808,[1810,1839],[1869,1957],1969,[1994,2026],[2036,2037],2042,[2048,2069],2074,2084,2088,[2112,2136],[2144,2154],[2160,2183],[2185,2190],[2208,2249],[2308,2361],2365,2384,[2392,2401],[2417,2432],[2437,2444],[2447,2448],[2451,2472],[2474,2480],2482,[2486,2489],2493,2510,[2524,2525],[2527,2529],[2544,2545],2556,[2565,2570],[2575,2576],[2579,2600],[2602,2608],[2610,2611],[2613,2614],[2616,2617],[2649,2652],2654,[2674,2676],[2693,2701],[2703,2705],[2707,2728],[2730,2736],[2738,2739],[2741,2745],2749,2768,[2784,2785],2809,[2821,2828],[2831,2832],[2835,2856],[2858,2864],[2866,2867],[2869,2873],2877,[2908,2909],[2911,2913],2929,2947,[2949,2954],[2958,2960],[2962,2965],[2969,2970],2972,[2974,2975],[2979,2980],[2984,2986],[2990,3001],3024,[3077,3084],[3086,3088],[3090,3112],[3114,3129],3133,[3160,3162],3165,[3168,3169],3200,[3205,3212],[3214,3216],[3218,3240],[3242,3251],[3253,3257],3261,[3293,3294],[3296,3297],[3313,3314],[3332,3340],[3342,3344],[3346,3386],3389,3406,[3412,3414],[3423,3425],[3450,3455],[3461,3478],[3482,3505],[3507,3515],3517,[3520,3526],[3585,3632],[3634,3635],[3648,3654],[3713,3714],3716,[3718,3722],[3724,3747],3749,[3751,3760],[3762,3763],3773,[3776,3780],3782,[3804,3807],3840,[3904,3911],[3913,3948],[3976,3980],[4096,4138],4159,[4176,4181],[4186,4189],4193,[4197,4198],[4206,4208],[4213,4225],4238,[4256,4293],4295,4301,[4304,4346],[4348,4680],[4682,4685],[4688,4694],4696,[4698,4701],[4704,4744],[4746,4749],[4752,4784],[4786,4789],[4792,4798],4800,[4802,4805],[4808,4822],[4824,4880],[4882,4885],[4888,4954],[4992,5007],[5024,5109],[5112,5117],[5121,5740],[5743,5759],[5761,5786],[5792,5866],[5873,5880],[5888,5905],[5919,5937],[5952,5969],[5984,5996],[5998,6e3],[6016,6067],6103,6108,[6176,6264],[6272,6276],[6279,6312],6314,[6320,6389],[6400,6430],[6480,6509],[6512,6516],[6528,6571],[6576,6601],[6656,6678],[6688,6740],6823,[6917,6963],[6981,6988],[7043,7072],[7086,7087],[7098,7141],[7168,7203],[7245,7247],[7258,7293],[7296,7304],[7312,7354],[7357,7359],[7401,7404],[7406,7411],[7413,7414],7418,[7424,7615],[7680,7957],[7960,7965],[7968,8005],[8008,8013],[8016,8023],8025,8027,8029,[8031,8061],[8064,8116],[8118,8124],8126,[8130,8132],[8134,8140],[8144,8147],[8150,8155],[8160,8172],[8178,8180],[8182,8188],8305,8319,[8336,8348],8450,8455,[8458,8467],8469,[8473,8477],8484,8486,8488,[8490,8493],[8495,8505],[8508,8511],[8517,8521],8526,[8579,8580],[11264,11492],[11499,11502],[11506,11507],[11520,11557],11559,11565,[11568,11623],11631,[11648,11670],[11680,11686],[11688,11694],[11696,11702],[11704,11710],[11712,11718],[11720,11726],[11728,11734],[11736,11742],11823,[12293,12294],[12337,12341],[12347,12348],[12353,12438],[12445,12447],[12449,12538],[12540,12543],[12549,12591],[12593,12686],[12704,12735],[12784,12799],[13312,19903],[19968,42124],[42192,42237],[42240,42508],[42512,42527],[42538,42539],[42560,42606],[42623,42653],[42656,42725],[42775,42783],[42786,42888],[42891,42954],[42960,42961],42963,[42965,42969],[42994,43009],[43011,43013],[43015,43018],[43020,43042],[43072,43123],[43138,43187],[43250,43255],43259,[43261,43262],[43274,43301],[43312,43334],[43360,43388],[43396,43442],43471,[43488,43492],[43494,43503],[43514,43518],[43520,43560],[43584,43586],[43588,43595],[43616,43638],43642,[43646,43695],43697,[43701,43702],[43705,43709],43712,43714,[43739,43741],[43744,43754],[43762,43764],[43777,43782],[43785,43790],[43793,43798],[43808,43814],[43816,43822],[43824,43866],[43868,43881],[43888,44002],[44032,55203],[55216,55238],[55243,55291],[63744,64109],[64112,64217],[64256,64262],[64275,64279],64285,[64287,64296],[64298,64310],[64312,64316],64318,[64320,64321],[64323,64324],[64326,64433],[64467,64829],[64848,64911],[64914,64967],[65008,65019],[65136,65140],[65142,65276],[65313,65338],[65345,65370],[65382,65470],[65474,65479],[65482,65487],[65490,65495],[65498,65500],[65536,65547],[65549,65574],[65576,65594],[65596,65597],[65599,65613],[65616,65629],[65664,65786],[66176,66204],[66208,66256],[66304,66335],[66349,66368],[66370,66377],[66384,66421],[66432,66461],[66464,66499],[66504,66511],[66560,66717],[66736,66771],[66776,66811],[66816,66855],[66864,66915],[66928,66938],[66940,66954],[66956,66962],[66964,66965],[66967,66977],[66979,66993],[66995,67001],[67003,67004],[67072,67382],[67392,67413],[67424,67431],[67456,67461],[67463,67504],[67506,67514],[67584,67589],67592,[67594,67637],[67639,67640],67644,[67647,67669],[67680,67702],[67712,67742],[67808,67826],[67828,67829],[67840,67861],[67872,67897],[67968,68023],[68030,68031],68096,[68112,68115],[68117,68119],[68121,68149],[68192,68220],[68224,68252],[68288,68295],[68297,68324],[68352,68405],[68416,68437],[68448,68466],[68480,68497],[68608,68680],[68736,68786],[68800,68850],[68864,68899],[69248,69289],[69296,69297],[69376,69404],69415,[69424,69445],[69488,69505],[69552,69572],[69600,69622],[69635,69687],[69745,69746],69749,[69763,69807],[69840,69864],[69891,69926],69956,69959,[69968,70002],70006,[70019,70066],[70081,70084],70106,70108,[70144,70161],[70163,70187],[70207,70208],[70272,70278],70280,[70282,70285],[70287,70301],[70303,70312],[70320,70366],[70405,70412],[70415,70416],[70419,70440],[70442,70448],[70450,70451],[70453,70457],70461,70480,[70493,70497],[70656,70708],[70727,70730],[70751,70753],[70784,70831],[70852,70853],70855,[71040,71086],[71128,71131],[71168,71215],71236,[71296,71338],71352,[71424,71450],[71488,71494],[71680,71723],[71840,71903],[71935,71942],71945,[71948,71955],[71957,71958],[71960,71983],71999,72001,[72096,72103],[72106,72144],72161,72163,72192,[72203,72242],72250,72272,[72284,72329],72349,[72368,72440],[72704,72712],[72714,72750],72768,[72818,72847],[72960,72966],[72968,72969],[72971,73008],73030,[73056,73061],[73063,73064],[73066,73097],73112,[73440,73458],73474,[73476,73488],[73490,73523],73648,[73728,74649],[74880,75075],[77712,77808],[77824,78895],[78913,78918],[82944,83526],[92160,92728],[92736,92766],[92784,92862],[92880,92909],[92928,92975],[92992,92995],[93027,93047],[93053,93071],[93760,93823],[93952,94026],94032,[94099,94111],[94176,94177],94179,[94208,100343],[100352,101589],[101632,101640],[110576,110579],[110581,110587],[110589,110590],[110592,110882],110898,[110928,110930],110933,[110948,110951],[110960,111355],[113664,113770],[113776,113788],[113792,113800],[113808,113817],[119808,119892],[119894,119964],[119966,119967],119970,[119973,119974],[119977,119980],[119982,119993],119995,[119997,120003],[120005,120069],[120071,120074],[120077,120084],[120086,120092],[120094,120121],[120123,120126],[120128,120132],120134,[120138,120144],[120146,120485],[120488,120512],[120514,120538],[120540,120570],[120572,120596],[120598,120628],[120630,120654],[120656,120686],[120688,120712],[120714,120744],[120746,120770],[120772,120779],[122624,122654],[122661,122666],[122928,122989],[123136,123180],[123191,123197],123214,[123536,123565],[123584,123627],[124112,124139],[124896,124902],[124904,124907],[124909,124910],[124912,124926],[124928,125124],[125184,125251],125259,[126464,126467],[126469,126495],[126497,126498],126500,126503,[126505,126514],[126516,126519],126521,126523,126530,126535,126537,126539,[126541,126543],[126545,126546],126548,126551,126553,126555,126557,126559,[126561,126562],126564,[126567,126570],[126572,126578],[126580,126583],[126585,126588],126590,[126592,126601],[126603,126619],[126625,126627],[126629,126633],[126635,126651],[131072,173791],[173824,177977],[177984,178205],[178208,183969],[183984,191456],[194560,195101],[196608,201546],[201552,205743]],Letter_Number:[[5870,5872],[8544,8578],[8581,8584],12295,[12321,12329],[12344,12346],[42726,42735],[65856,65908],66369,66378,[66513,66517],[74752,74862]],Line_Separator:[8232],Lowercase_Letter:[[97,122],181,[223,246],[248,255],257,259,261,263,265,267,269,271,273,275,277,279,281,283,285,287,289,291,293,295,297,299,301,303,305,307,309,[311,312],314,316,318,320,322,324,326,[328,329],331,333,335,337,339,341,343,345,347,349,351,353,355,357,359,361,363,365,367,369,371,373,375,378,380,[382,384],387,389,392,[396,397],402,405,[409,411],414,417,419,421,424,[426,427],429,432,436,438,[441,442],[445,447],454,457,460,462,464,466,468,470,472,474,[476,477],479,481,483,485,487,489,491,493,[495,496],499,501,505,507,509,511,513,515,517,519,521,523,525,527,529,531,533,535,537,539,541,543,545,547,549,551,553,555,557,559,561,[563,569],572,[575,576],578,583,585,587,589,[591,659],[661,687],881,883,887,[891,893],912,[940,974],[976,977],[981,983],985,987,989,991,993,995,997,999,1001,1003,1005,[1007,1011],1013,1016,[1019,1020],[1072,1119],1121,1123,1125,1127,1129,1131,1133,1135,1137,1139,1141,1143,1145,1147,1149,1151,1153,1163,1165,1167,1169,1171,1173,1175,1177,1179,1181,1183,1185,1187,1189,1191,1193,1195,1197,1199,1201,1203,1205,1207,1209,1211,1213,1215,1218,1220,1222,1224,1226,1228,[1230,1231],1233,1235,1237,1239,1241,1243,1245,1247,1249,1251,1253,1255,1257,1259,1261,1263,1265,1267,1269,1271,1273,1275,1277,1279,1281,1283,1285,1287,1289,1291,1293,1295,1297,1299,1301,1303,1305,1307,1309,1311,1313,1315,1317,1319,1321,1323,1325,1327,[1376,1416],[4304,4346],[4349,4351],[5112,5117],[7296,7304],[7424,7467],[7531,7543],[7545,7578],7681,7683,7685,7687,7689,7691,7693,7695,7697,7699,7701,7703,7705,7707,7709,7711,7713,7715,7717,7719,7721,7723,7725,7727,7729,7731,7733,7735,7737,7739,7741,7743,7745,7747,7749,7751,7753,7755,7757,7759,7761,7763,7765,7767,7769,7771,7773,7775,7777,7779,7781,7783,7785,7787,7789,7791,7793,7795,7797,7799,7801,7803,7805,7807,7809,7811,7813,7815,7817,7819,7821,7823,7825,7827,[7829,7837],7839,7841,7843,7845,7847,7849,7851,7853,7855,7857,7859,7861,7863,7865,7867,7869,7871,7873,7875,7877,7879,7881,7883,7885,7887,7889,7891,7893,7895,7897,7899,7901,7903,7905,7907,7909,7911,7913,7915,7917,7919,7921,7923,7925,7927,7929,7931,7933,[7935,7943],[7952,7957],[7968,7975],[7984,7991],[8e3,8005],[8016,8023],[8032,8039],[8048,8061],[8064,8071],[8080,8087],[8096,8103],[8112,8116],[8118,8119],8126,[8130,8132],[8134,8135],[8144,8147],[8150,8151],[8160,8167],[8178,8180],[8182,8183],8458,[8462,8463],8467,8495,8500,8505,[8508,8509],[8518,8521],8526,8580,[11312,11359],11361,[11365,11366],11368,11370,11372,11377,[11379,11380],[11382,11387],11393,11395,11397,11399,11401,11403,11405,11407,11409,11411,11413,11415,11417,11419,11421,11423,11425,11427,11429,11431,11433,11435,11437,11439,11441,11443,11445,11447,11449,11451,11453,11455,11457,11459,11461,11463,11465,11467,11469,11471,11473,11475,11477,11479,11481,11483,11485,11487,11489,[11491,11492],11500,11502,11507,[11520,11557],11559,11565,42561,42563,42565,42567,42569,42571,42573,42575,42577,42579,42581,42583,42585,42587,42589,42591,42593,42595,42597,42599,42601,42603,42605,42625,42627,42629,42631,42633,42635,42637,42639,42641,42643,42645,42647,42649,42651,42787,42789,42791,42793,42795,42797,[42799,42801],42803,42805,42807,42809,42811,42813,42815,42817,42819,42821,42823,42825,42827,42829,42831,42833,42835,42837,42839,42841,42843,42845,42847,42849,42851,42853,42855,42857,42859,42861,42863,[42865,42872],42874,42876,42879,42881,42883,42885,42887,42892,42894,42897,[42899,42901],42903,42905,42907,42909,42911,42913,42915,42917,42919,42921,42927,42933,42935,42937,42939,42941,42943,42945,42947,42952,42954,42961,42963,42965,42967,42969,42998,43002,[43824,43866],[43872,43880],[43888,43967],[64256,64262],[64275,64279],[65345,65370],[66600,66639],[66776,66811],[66967,66977],[66979,66993],[66995,67001],[67003,67004],[68800,68850],[71872,71903],[93792,93823],[119834,119859],[119886,119892],[119894,119911],[119938,119963],[119990,119993],119995,[119997,120003],[120005,120015],[120042,120067],[120094,120119],[120146,120171],[120198,120223],[120250,120275],[120302,120327],[120354,120379],[120406,120431],[120458,120485],[120514,120538],[120540,120545],[120572,120596],[120598,120603],[120630,120654],[120656,120661],[120688,120712],[120714,120719],[120746,120770],[120772,120777],120779,[122624,122633],[122635,122654],[122661,122666],[125218,125251]],Mark:[[768,879],[1155,1161],[1425,1469],1471,[1473,1474],[1476,1477],1479,[1552,1562],[1611,1631],1648,[1750,1756],[1759,1764],[1767,1768],[1770,1773],1809,[1840,1866],[1958,1968],[2027,2035],2045,[2070,2073],[2075,2083],[2085,2087],[2089,2093],[2137,2139],[2200,2207],[2250,2273],[2275,2307],[2362,2364],[2366,2383],[2385,2391],[2402,2403],[2433,2435],2492,[2494,2500],[2503,2504],[2507,2509],2519,[2530,2531],2558,[2561,2563],2620,[2622,2626],[2631,2632],[2635,2637],2641,[2672,2673],2677,[2689,2691],2748,[2750,2757],[2759,2761],[2763,2765],[2786,2787],[2810,2815],[2817,2819],2876,[2878,2884],[2887,2888],[2891,2893],[2901,2903],[2914,2915],2946,[3006,3010],[3014,3016],[3018,3021],3031,[3072,3076],3132,[3134,3140],[3142,3144],[3146,3149],[3157,3158],[3170,3171],[3201,3203],3260,[3262,3268],[3270,3272],[3274,3277],[3285,3286],[3298,3299],3315,[3328,3331],[3387,3388],[3390,3396],[3398,3400],[3402,3405],3415,[3426,3427],[3457,3459],3530,[3535,3540],3542,[3544,3551],[3570,3571],3633,[3636,3642],[3655,3662],3761,[3764,3772],[3784,3790],[3864,3865],3893,3895,3897,[3902,3903],[3953,3972],[3974,3975],[3981,3991],[3993,4028],4038,[4139,4158],[4182,4185],[4190,4192],[4194,4196],[4199,4205],[4209,4212],[4226,4237],4239,[4250,4253],[4957,4959],[5906,5909],[5938,5940],[5970,5971],[6002,6003],[6068,6099],6109,[6155,6157],6159,[6277,6278],6313,[6432,6443],[6448,6459],[6679,6683],[6741,6750],[6752,6780],6783,[6832,6862],[6912,6916],[6964,6980],[7019,7027],[7040,7042],[7073,7085],[7142,7155],[7204,7223],[7376,7378],[7380,7400],7405,7412,[7415,7417],[7616,7679],[8400,8432],[11503,11505],11647,[11744,11775],[12330,12335],[12441,12442],[42607,42610],[42612,42621],[42654,42655],[42736,42737],43010,43014,43019,[43043,43047],43052,[43136,43137],[43188,43205],[43232,43249],43263,[43302,43309],[43335,43347],[43392,43395],[43443,43456],43493,[43561,43574],43587,[43596,43597],[43643,43645],43696,[43698,43700],[43703,43704],[43710,43711],43713,[43755,43759],[43765,43766],[44003,44010],[44012,44013],64286,[65024,65039],[65056,65071],66045,66272,[66422,66426],[68097,68099],[68101,68102],[68108,68111],[68152,68154],68159,[68325,68326],[68900,68903],[69291,69292],[69373,69375],[69446,69456],[69506,69509],[69632,69634],[69688,69702],69744,[69747,69748],[69759,69762],[69808,69818],69826,[69888,69890],[69927,69940],[69957,69958],70003,[70016,70018],[70067,70080],[70089,70092],[70094,70095],[70188,70199],70206,70209,[70367,70378],[70400,70403],[70459,70460],[70462,70468],[70471,70472],[70475,70477],70487,[70498,70499],[70502,70508],[70512,70516],[70709,70726],70750,[70832,70851],[71087,71093],[71096,71104],[71132,71133],[71216,71232],[71339,71351],[71453,71467],[71724,71738],[71984,71989],[71991,71992],[71995,71998],72e3,[72002,72003],[72145,72151],[72154,72160],72164,[72193,72202],[72243,72249],[72251,72254],72263,[72273,72283],[72330,72345],[72751,72758],[72760,72767],[72850,72871],[72873,72886],[73009,73014],73018,[73020,73021],[73023,73029],73031,[73098,73102],[73104,73105],[73107,73111],[73459,73462],[73472,73473],73475,[73524,73530],[73534,73538],78912,[78919,78933],[92912,92916],[92976,92982],94031,[94033,94087],[94095,94098],94180,[94192,94193],[113821,113822],[118528,118573],[118576,118598],[119141,119145],[119149,119154],[119163,119170],[119173,119179],[119210,119213],[119362,119364],[121344,121398],[121403,121452],121461,121476,[121499,121503],[121505,121519],[122880,122886],[122888,122904],[122907,122913],[122915,122916],[122918,122922],123023,[123184,123190],123566,[123628,123631],[124140,124143],[125136,125142],[125252,125258],[917760,917999]],Math_Symbol:[43,[60,62],124,126,172,177,215,247,1014,[1542,1544],8260,8274,[8314,8316],[8330,8332],8472,[8512,8516],8523,[8592,8596],[8602,8603],8608,8611,8614,8622,[8654,8655],8658,8660,[8692,8959],[8992,8993],9084,[9115,9139],[9180,9185],9655,9665,[9720,9727],9839,[10176,10180],[10183,10213],[10224,10239],[10496,10626],[10649,10711],[10716,10747],[10750,11007],[11056,11076],[11079,11084],64297,65122,[65124,65126],65291,[65308,65310],65372,65374,65506,[65513,65516],120513,120539,120571,120597,120629,120655,120687,120713,120745,120771,[126704,126705]],Modifier_Letter:[[688,705],[710,721],[736,740],748,750,884,890,1369,1600,[1765,1766],[2036,2037],2042,2074,2084,2088,2249,2417,3654,3782,4348,6103,6211,6823,[7288,7293],[7468,7530],7544,[7579,7615],8305,8319,[8336,8348],[11388,11389],11631,11823,12293,[12337,12341],12347,[12445,12446],[12540,12542],40981,[42232,42237],42508,42623,[42652,42653],[42775,42783],42864,42888,[42994,42996],[43e3,43001],43471,43494,43632,43741,[43763,43764],[43868,43871],43881,65392,[65438,65439],[67456,67461],[67463,67504],[67506,67514],[92992,92995],[94099,94111],[94176,94177],94179,[110576,110579],[110581,110587],[110589,110590],[122928,122989],[123191,123197],124139,125259],Modifier_Symbol:[94,96,168,175,180,184,[706,709],[722,735],[741,747],749,[751,767],885,[900,901],2184,8125,[8127,8129],[8141,8143],[8157,8159],[8173,8175],[8189,8190],[12443,12444],[42752,42774],[42784,42785],[42889,42890],43867,[43882,43883],[64434,64450],65342,65344,65507,[127995,127999]],Nonspacing_Mark:[[768,879],[1155,1159],[1425,1469],1471,[1473,1474],[1476,1477],1479,[1552,1562],[1611,1631],1648,[1750,1756],[1759,1764],[1767,1768],[1770,1773],1809,[1840,1866],[1958,1968],[2027,2035],2045,[2070,2073],[2075,2083],[2085,2087],[2089,2093],[2137,2139],[2200,2207],[2250,2273],[2275,2306],2362,2364,[2369,2376],2381,[2385,2391],[2402,2403],2433,2492,[2497,2500],2509,[2530,2531],2558,[2561,2562],2620,[2625,2626],[2631,2632],[2635,2637],2641,[2672,2673],2677,[2689,2690],2748,[2753,2757],[2759,2760],2765,[2786,2787],[2810,2815],2817,2876,2879,[2881,2884],2893,[2901,2902],[2914,2915],2946,3008,3021,3072,3076,3132,[3134,3136],[3142,3144],[3146,3149],[3157,3158],[3170,3171],3201,3260,3263,3270,[3276,3277],[3298,3299],[3328,3329],[3387,3388],[3393,3396],3405,[3426,3427],3457,3530,[3538,3540],3542,3633,[3636,3642],[3655,3662],3761,[3764,3772],[3784,3790],[3864,3865],3893,3895,3897,[3953,3966],[3968,3972],[3974,3975],[3981,3991],[3993,4028],4038,[4141,4144],[4146,4151],[4153,4154],[4157,4158],[4184,4185],[4190,4192],[4209,4212],4226,[4229,4230],4237,4253,[4957,4959],[5906,5908],[5938,5939],[5970,5971],[6002,6003],[6068,6069],[6071,6077],6086,[6089,6099],6109,[6155,6157],6159,[6277,6278],6313,[6432,6434],[6439,6440],6450,[6457,6459],[6679,6680],6683,6742,[6744,6750],6752,6754,[6757,6764],[6771,6780],6783,[6832,6845],[6847,6862],[6912,6915],6964,[6966,6970],6972,6978,[7019,7027],[7040,7041],[7074,7077],[7080,7081],[7083,7085],7142,[7144,7145],7149,[7151,7153],[7212,7219],[7222,7223],[7376,7378],[7380,7392],[7394,7400],7405,7412,[7416,7417],[7616,7679],[8400,8412],8417,[8421,8432],[11503,11505],11647,[11744,11775],[12330,12333],[12441,12442],42607,[42612,42621],[42654,42655],[42736,42737],43010,43014,43019,[43045,43046],43052,[43204,43205],[43232,43249],43263,[43302,43309],[43335,43345],[43392,43394],43443,[43446,43449],[43452,43453],43493,[43561,43566],[43569,43570],[43573,43574],43587,43596,43644,43696,[43698,43700],[43703,43704],[43710,43711],43713,[43756,43757],43766,44005,44008,44013,64286,[65024,65039],[65056,65071],66045,66272,[66422,66426],[68097,68099],[68101,68102],[68108,68111],[68152,68154],68159,[68325,68326],[68900,68903],[69291,69292],[69373,69375],[69446,69456],[69506,69509],69633,[69688,69702],69744,[69747,69748],[69759,69761],[69811,69814],[69817,69818],69826,[69888,69890],[69927,69931],[69933,69940],70003,[70016,70017],[70070,70078],[70089,70092],70095,[70191,70193],70196,[70198,70199],70206,70209,70367,[70371,70378],[70400,70401],[70459,70460],70464,[70502,70508],[70512,70516],[70712,70719],[70722,70724],70726,70750,[70835,70840],70842,[70847,70848],[70850,70851],[71090,71093],[71100,71101],[71103,71104],[71132,71133],[71219,71226],71229,[71231,71232],71339,71341,[71344,71349],71351,[71453,71455],[71458,71461],[71463,71467],[71727,71735],[71737,71738],[71995,71996],71998,72003,[72148,72151],[72154,72155],72160,[72193,72202],[72243,72248],[72251,72254],72263,[72273,72278],[72281,72283],[72330,72342],[72344,72345],[72752,72758],[72760,72765],72767,[72850,72871],[72874,72880],[72882,72883],[72885,72886],[73009,73014],73018,[73020,73021],[73023,73029],73031,[73104,73105],73109,73111,[73459,73460],[73472,73473],[73526,73530],73536,73538,78912,[78919,78933],[92912,92916],[92976,92982],94031,[94095,94098],94180,[113821,113822],[118528,118573],[118576,118598],[119143,119145],[119163,119170],[119173,119179],[119210,119213],[119362,119364],[121344,121398],[121403,121452],121461,121476,[121499,121503],[121505,121519],[122880,122886],[122888,122904],[122907,122913],[122915,122916],[122918,122922],123023,[123184,123190],123566,[123628,123631],[124140,124143],[125136,125142],[125252,125258],[917760,917999]],Number:[[48,57],[178,179],185,[188,190],[1632,1641],[1776,1785],[1984,1993],[2406,2415],[2534,2543],[2548,2553],[2662,2671],[2790,2799],[2918,2927],[2930,2935],[3046,3058],[3174,3183],[3192,3198],[3302,3311],[3416,3422],[3430,3448],[3558,3567],[3664,3673],[3792,3801],[3872,3891],[4160,4169],[4240,4249],[4969,4988],[5870,5872],[6112,6121],[6128,6137],[6160,6169],[6470,6479],[6608,6618],[6784,6793],[6800,6809],[6992,7001],[7088,7097],[7232,7241],[7248,7257],8304,[8308,8313],[8320,8329],[8528,8578],[8581,8585],[9312,9371],[9450,9471],[10102,10131],11517,12295,[12321,12329],[12344,12346],[12690,12693],[12832,12841],[12872,12879],[12881,12895],[12928,12937],[12977,12991],[42528,42537],[42726,42735],[43056,43061],[43216,43225],[43264,43273],[43472,43481],[43504,43513],[43600,43609],[44016,44025],[65296,65305],[65799,65843],[65856,65912],[65930,65931],[66273,66299],[66336,66339],66369,66378,[66513,66517],[66720,66729],[67672,67679],[67705,67711],[67751,67759],[67835,67839],[67862,67867],[68028,68029],[68032,68047],[68050,68095],[68160,68168],[68221,68222],[68253,68255],[68331,68335],[68440,68447],[68472,68479],[68521,68527],[68858,68863],[68912,68921],[69216,69246],[69405,69414],[69457,69460],[69573,69579],[69714,69743],[69872,69881],[69942,69951],[70096,70105],[70113,70132],[70384,70393],[70736,70745],[70864,70873],[71248,71257],[71360,71369],[71472,71483],[71904,71922],[72016,72025],[72784,72812],[73040,73049],[73120,73129],[73552,73561],[73664,73684],[74752,74862],[92768,92777],[92864,92873],[93008,93017],[93019,93025],[93824,93846],[119488,119507],[119520,119539],[119648,119672],[120782,120831],[123200,123209],[123632,123641],[124144,124153],[125127,125135],[125264,125273],[126065,126123],[126125,126127],[126129,126132],[126209,126253],[126255,126269],[127232,127244],[130032,130041]],Open_Punctuation:[40,91,123,3898,3900,5787,8218,8222,8261,8317,8333,8968,8970,9001,10088,10090,10092,10094,10096,10098,10100,10181,10214,10216,10218,10220,10222,10627,10629,10631,10633,10635,10637,10639,10641,10643,10645,10647,10712,10714,10748,11810,11812,11814,11816,11842,11861,11863,11865,11867,12296,12298,12300,12302,12304,12308,12310,12312,12314,12317,64831,65047,65077,65079,65081,65083,65085,65087,65089,65091,65095,65113,65115,65117,65288,65339,65371,65375,65378],Other:[[0,31],[127,159],173,[888,889],[896,899],907,909,930,1328,[1367,1368],[1419,1420],1424,[1480,1487],[1515,1518],[1525,1541],1564,1757,[1806,1807],[1867,1868],[1970,1983],[2043,2044],[2094,2095],2111,[2140,2141],2143,[2155,2159],[2191,2199],2274,2436,[2445,2446],[2449,2450],2473,2481,[2483,2485],[2490,2491],[2501,2502],[2505,2506],[2511,2518],[2520,2523],2526,[2532,2533],[2559,2560],2564,[2571,2574],[2577,2578],2601,2609,2612,2615,[2618,2619],2621,[2627,2630],[2633,2634],[2638,2640],[2642,2648],2653,[2655,2661],[2679,2688],2692,2702,2706,2729,2737,2740,[2746,2747],2758,2762,[2766,2767],[2769,2783],[2788,2789],[2802,2808],2816,2820,[2829,2830],[2833,2834],2857,2865,2868,[2874,2875],[2885,2886],[2889,2890],[2894,2900],[2904,2907],2910,[2916,2917],[2936,2945],2948,[2955,2957],2961,[2966,2968],2971,2973,[2976,2978],[2981,2983],[2987,2989],[3002,3005],[3011,3013],3017,[3022,3023],[3025,3030],[3032,3045],[3067,3071],3085,3089,3113,[3130,3131],3141,3145,[3150,3156],3159,[3163,3164],[3166,3167],[3172,3173],[3184,3190],3213,3217,3241,3252,[3258,3259],3269,3273,[3278,3284],[3287,3292],3295,[3300,3301],3312,[3316,3327],3341,3345,3397,3401,[3408,3411],[3428,3429],3456,3460,[3479,3481],3506,3516,[3518,3519],[3527,3529],[3531,3534],3541,3543,[3552,3557],[3568,3569],[3573,3584],[3643,3646],[3676,3712],3715,3717,3723,3748,3750,[3774,3775],3781,3783,3791,[3802,3803],[3808,3839],3912,[3949,3952],3992,4029,4045,[4059,4095],4294,[4296,4300],[4302,4303],4681,[4686,4687],4695,4697,[4702,4703],4745,[4750,4751],4785,[4790,4791],4799,4801,[4806,4807],4823,4881,[4886,4887],[4955,4956],[4989,4991],[5018,5023],[5110,5111],[5118,5119],[5789,5791],[5881,5887],[5910,5918],[5943,5951],[5972,5983],5997,6001,[6004,6015],[6110,6111],[6122,6127],[6138,6143],6158,[6170,6175],[6265,6271],[6315,6319],[6390,6399],6431,[6444,6447],[6460,6463],[6465,6467],[6510,6511],[6517,6527],[6572,6575],[6602,6607],[6619,6621],[6684,6685],6751,[6781,6782],[6794,6799],[6810,6815],[6830,6831],[6863,6911],[6989,6991],7039,[7156,7163],[7224,7226],[7242,7244],[7305,7311],[7355,7356],[7368,7375],[7419,7423],[7958,7959],[7966,7967],[8006,8007],[8014,8015],8024,8026,8028,8030,[8062,8063],8117,8133,[8148,8149],8156,[8176,8177],8181,8191,[8203,8207],[8234,8238],[8288,8303],[8306,8307],8335,[8349,8351],[8385,8399],[8433,8447],[8588,8591],[9255,9279],[9291,9311],[11124,11125],11158,[11508,11512],11558,[11560,11564],[11566,11567],[11624,11630],[11633,11646],[11671,11679],11687,11695,11703,11711,11719,11727,11735,11743,[11870,11903],11930,[12020,12031],[12246,12271],[12284,12287],12352,[12439,12440],[12544,12548],12592,12687,[12772,12783],12831,[42125,42127],[42183,42191],[42540,42559],[42744,42751],[42955,42959],42962,42964,[42970,42993],[43053,43055],[43066,43071],[43128,43135],[43206,43213],[43226,43231],[43348,43358],[43389,43391],43470,[43482,43485],43519,[43575,43583],[43598,43599],[43610,43611],[43715,43738],[43767,43776],[43783,43784],[43791,43792],[43799,43807],43815,43823,[43884,43887],[44014,44015],[44026,44031],[55204,55215],[55239,55242],[55292,63743],[64110,64111],[64218,64255],[64263,64274],[64280,64284],64311,64317,64319,64322,64325,[64451,64466],[64912,64913],[64968,64974],[64976,65007],[65050,65055],65107,65127,[65132,65135],65141,[65277,65280],[65471,65473],[65480,65481],[65488,65489],[65496,65497],[65501,65503],65511,[65519,65531],[65534,65535],65548,65575,65595,65598,[65614,65615],[65630,65663],[65787,65791],[65795,65798],[65844,65846],65935,[65949,65951],[65953,65999],[66046,66175],[66205,66207],[66257,66271],[66300,66303],[66340,66348],[66379,66383],[66427,66431],66462,[66500,66503],[66518,66559],[66718,66719],[66730,66735],[66772,66775],[66812,66815],[66856,66863],[66916,66926],66939,66955,66963,66966,66978,66994,67002,[67005,67071],[67383,67391],[67414,67423],[67432,67455],67462,67505,[67515,67583],[67590,67591],67593,67638,[67641,67643],[67645,67646],67670,[67743,67750],[67760,67807],67827,[67830,67834],[67868,67870],[67898,67902],[67904,67967],[68024,68027],[68048,68049],68100,[68103,68107],68116,68120,[68150,68151],[68155,68158],[68169,68175],[68185,68191],[68256,68287],[68327,68330],[68343,68351],[68406,68408],[68438,68439],[68467,68471],[68498,68504],[68509,68520],[68528,68607],[68681,68735],[68787,68799],[68851,68857],[68904,68911],[68922,69215],69247,69290,[69294,69295],[69298,69372],[69416,69423],[69466,69487],[69514,69551],[69580,69599],[69623,69631],[69710,69713],[69750,69758],69821,[69827,69839],[69865,69871],[69882,69887],69941,[69960,69967],[70007,70015],70112,[70133,70143],70162,[70210,70271],70279,70281,70286,70302,[70314,70319],[70379,70383],[70394,70399],70404,[70413,70414],[70417,70418],70441,70449,70452,70458,[70469,70470],[70473,70474],[70478,70479],[70481,70486],[70488,70492],[70500,70501],[70509,70511],[70517,70655],70748,[70754,70783],[70856,70863],[70874,71039],[71094,71095],[71134,71167],[71237,71247],[71258,71263],[71277,71295],[71354,71359],[71370,71423],[71451,71452],[71468,71471],[71495,71679],[71740,71839],[71923,71934],[71943,71944],[71946,71947],71956,71959,71990,[71993,71994],[72007,72015],[72026,72095],[72104,72105],[72152,72153],[72165,72191],[72264,72271],[72355,72367],[72441,72447],[72458,72703],72713,72759,[72774,72783],[72813,72815],[72848,72849],72872,[72887,72959],72967,72970,[73015,73017],73019,73022,[73032,73039],[73050,73055],73062,73065,73103,73106,[73113,73119],[73130,73439],[73465,73471],73489,[73531,73533],[73562,73647],[73649,73663],[73714,73726],[74650,74751],74863,[74869,74879],[75076,77711],[77811,77823],[78896,78911],[78934,82943],[83527,92159],[92729,92735],92767,[92778,92781],92863,[92874,92879],[92910,92911],[92918,92927],[92998,93007],93018,93026,[93048,93052],[93072,93759],[93851,93951],[94027,94030],[94088,94094],[94112,94175],[94181,94191],[94194,94207],[100344,100351],[101590,101631],[101641,110575],110580,110588,110591,[110883,110897],[110899,110927],[110931,110932],[110934,110947],[110952,110959],[111356,113663],[113771,113775],[113789,113791],[113801,113807],[113818,113819],[113824,118527],[118574,118575],[118599,118607],[118724,118783],[119030,119039],[119079,119080],[119155,119162],[119275,119295],[119366,119487],[119508,119519],[119540,119551],[119639,119647],[119673,119807],119893,119965,[119968,119969],[119971,119972],[119975,119976],119981,119994,119996,120004,120070,[120075,120076],120085,120093,120122,120127,120133,[120135,120137],120145,[120486,120487],[120780,120781],[121484,121498],121504,[121520,122623],[122655,122660],[122667,122879],122887,[122905,122906],122914,122917,[122923,122927],[122990,123022],[123024,123135],[123181,123183],[123198,123199],[123210,123213],[123216,123535],[123567,123583],[123642,123646],[123648,124111],[124154,124895],124903,124908,124911,124927,[125125,125126],[125143,125183],[125260,125263],[125274,125277],[125280,126064],[126133,126208],[126270,126463],126468,126496,126499,[126501,126502],126504,126515,126520,126522,[126524,126529],[126531,126534],126536,126538,126540,126544,126547,[126549,126550],126552,126554,126556,126558,126560,126563,[126565,126566],126571,126579,126584,126589,126591,126602,[126620,126624],126628,126634,[126652,126703],[126706,126975],[127020,127023],[127124,127135],[127151,127152],127168,127184,[127222,127231],[127406,127461],[127491,127503],[127548,127551],[127561,127567],[127570,127583],[127590,127743],[128728,128731],[128749,128751],[128765,128767],[128887,128890],[128986,128991],[129004,129007],[129009,129023],[129036,129039],[129096,129103],[129114,129119],[129160,129167],[129198,129199],[129202,129279],[129620,129631],[129646,129647],[129661,129663],[129673,129679],129726,[129734,129741],[129756,129759],[129769,129775],[129785,129791],129939,[129995,130031],[130042,131071],[173792,173823],[177978,177983],[178206,178207],[183970,183983],[191457,194559],[195102,196607],[201547,201551],[205744,917759],[918e3,1114111]],Other_Letter:[170,186,443,[448,451],660,[1488,1514],[1519,1522],[1568,1599],[1601,1610],[1646,1647],[1649,1747],1749,[1774,1775],[1786,1788],1791,1808,[1810,1839],[1869,1957],1969,[1994,2026],[2048,2069],[2112,2136],[2144,2154],[2160,2183],[2185,2190],[2208,2248],[2308,2361],2365,2384,[2392,2401],[2418,2432],[2437,2444],[2447,2448],[2451,2472],[2474,2480],2482,[2486,2489],2493,2510,[2524,2525],[2527,2529],[2544,2545],2556,[2565,2570],[2575,2576],[2579,2600],[2602,2608],[2610,2611],[2613,2614],[2616,2617],[2649,2652],2654,[2674,2676],[2693,2701],[2703,2705],[2707,2728],[2730,2736],[2738,2739],[2741,2745],2749,2768,[2784,2785],2809,[2821,2828],[2831,2832],[2835,2856],[2858,2864],[2866,2867],[2869,2873],2877,[2908,2909],[2911,2913],2929,2947,[2949,2954],[2958,2960],[2962,2965],[2969,2970],2972,[2974,2975],[2979,2980],[2984,2986],[2990,3001],3024,[3077,3084],[3086,3088],[3090,3112],[3114,3129],3133,[3160,3162],3165,[3168,3169],3200,[3205,3212],[3214,3216],[3218,3240],[3242,3251],[3253,3257],3261,[3293,3294],[3296,3297],[3313,3314],[3332,3340],[3342,3344],[3346,3386],3389,3406,[3412,3414],[3423,3425],[3450,3455],[3461,3478],[3482,3505],[3507,3515],3517,[3520,3526],[3585,3632],[3634,3635],[3648,3653],[3713,3714],3716,[3718,3722],[3724,3747],3749,[3751,3760],[3762,3763],3773,[3776,3780],[3804,3807],3840,[3904,3911],[3913,3948],[3976,3980],[4096,4138],4159,[4176,4181],[4186,4189],4193,[4197,4198],[4206,4208],[4213,4225],4238,[4352,4680],[4682,4685],[4688,4694],4696,[4698,4701],[4704,4744],[4746,4749],[4752,4784],[4786,4789],[4792,4798],4800,[4802,4805],[4808,4822],[4824,4880],[4882,4885],[4888,4954],[4992,5007],[5121,5740],[5743,5759],[5761,5786],[5792,5866],[5873,5880],[5888,5905],[5919,5937],[5952,5969],[5984,5996],[5998,6e3],[6016,6067],6108,[6176,6210],[6212,6264],[6272,6276],[6279,6312],6314,[6320,6389],[6400,6430],[6480,6509],[6512,6516],[6528,6571],[6576,6601],[6656,6678],[6688,6740],[6917,6963],[6981,6988],[7043,7072],[7086,7087],[7098,7141],[7168,7203],[7245,7247],[7258,7287],[7401,7404],[7406,7411],[7413,7414],7418,[8501,8504],[11568,11623],[11648,11670],[11680,11686],[11688,11694],[11696,11702],[11704,11710],[11712,11718],[11720,11726],[11728,11734],[11736,11742],12294,12348,[12353,12438],12447,[12449,12538],12543,[12549,12591],[12593,12686],[12704,12735],[12784,12799],[13312,19903],[19968,40980],[40982,42124],[42192,42231],[42240,42507],[42512,42527],[42538,42539],42606,[42656,42725],42895,42999,[43003,43009],[43011,43013],[43015,43018],[43020,43042],[43072,43123],[43138,43187],[43250,43255],43259,[43261,43262],[43274,43301],[43312,43334],[43360,43388],[43396,43442],[43488,43492],[43495,43503],[43514,43518],[43520,43560],[43584,43586],[43588,43595],[43616,43631],[43633,43638],43642,[43646,43695],43697,[43701,43702],[43705,43709],43712,43714,[43739,43740],[43744,43754],43762,[43777,43782],[43785,43790],[43793,43798],[43808,43814],[43816,43822],[43968,44002],[44032,55203],[55216,55238],[55243,55291],[63744,64109],[64112,64217],64285,[64287,64296],[64298,64310],[64312,64316],64318,[64320,64321],[64323,64324],[64326,64433],[64467,64829],[64848,64911],[64914,64967],[65008,65019],[65136,65140],[65142,65276],[65382,65391],[65393,65437],[65440,65470],[65474,65479],[65482,65487],[65490,65495],[65498,65500],[65536,65547],[65549,65574],[65576,65594],[65596,65597],[65599,65613],[65616,65629],[65664,65786],[66176,66204],[66208,66256],[66304,66335],[66349,66368],[66370,66377],[66384,66421],[66432,66461],[66464,66499],[66504,66511],[66640,66717],[66816,66855],[66864,66915],[67072,67382],[67392,67413],[67424,67431],[67584,67589],67592,[67594,67637],[67639,67640],67644,[67647,67669],[67680,67702],[67712,67742],[67808,67826],[67828,67829],[67840,67861],[67872,67897],[67968,68023],[68030,68031],68096,[68112,68115],[68117,68119],[68121,68149],[68192,68220],[68224,68252],[68288,68295],[68297,68324],[68352,68405],[68416,68437],[68448,68466],[68480,68497],[68608,68680],[68864,68899],[69248,69289],[69296,69297],[69376,69404],69415,[69424,69445],[69488,69505],[69552,69572],[69600,69622],[69635,69687],[69745,69746],69749,[69763,69807],[69840,69864],[69891,69926],69956,69959,[69968,70002],70006,[70019,70066],[70081,70084],70106,70108,[70144,70161],[70163,70187],[70207,70208],[70272,70278],70280,[70282,70285],[70287,70301],[70303,70312],[70320,70366],[70405,70412],[70415,70416],[70419,70440],[70442,70448],[70450,70451],[70453,70457],70461,70480,[70493,70497],[70656,70708],[70727,70730],[70751,70753],[70784,70831],[70852,70853],70855,[71040,71086],[71128,71131],[71168,71215],71236,[71296,71338],71352,[71424,71450],[71488,71494],[71680,71723],[71935,71942],71945,[71948,71955],[71957,71958],[71960,71983],71999,72001,[72096,72103],[72106,72144],72161,72163,72192,[72203,72242],72250,72272,[72284,72329],72349,[72368,72440],[72704,72712],[72714,72750],72768,[72818,72847],[72960,72966],[72968,72969],[72971,73008],73030,[73056,73061],[73063,73064],[73066,73097],73112,[73440,73458],73474,[73476,73488],[73490,73523],73648,[73728,74649],[74880,75075],[77712,77808],[77824,78895],[78913,78918],[82944,83526],[92160,92728],[92736,92766],[92784,92862],[92880,92909],[92928,92975],[93027,93047],[93053,93071],[93952,94026],94032,[94208,100343],[100352,101589],[101632,101640],[110592,110882],110898,[110928,110930],110933,[110948,110951],[110960,111355],[113664,113770],[113776,113788],[113792,113800],[113808,113817],122634,[123136,123180],123214,[123536,123565],[123584,123627],[124112,124138],[124896,124902],[124904,124907],[124909,124910],[124912,124926],[124928,125124],[126464,126467],[126469,126495],[126497,126498],126500,126503,[126505,126514],[126516,126519],126521,126523,126530,126535,126537,126539,[126541,126543],[126545,126546],126548,126551,126553,126555,126557,126559,[126561,126562],126564,[126567,126570],[126572,126578],[126580,126583],[126585,126588],126590,[126592,126601],[126603,126619],[126625,126627],[126629,126633],[126635,126651],[131072,173791],[173824,177977],[177984,178205],[178208,183969],[183984,191456],[194560,195101],[196608,201546],[201552,205743]],Other_Number:[[178,179],185,[188,190],[2548,2553],[2930,2935],[3056,3058],[3192,3198],[3416,3422],[3440,3448],[3882,3891],[4969,4988],[6128,6137],6618,8304,[8308,8313],[8320,8329],[8528,8543],8585,[9312,9371],[9450,9471],[10102,10131],11517,[12690,12693],[12832,12841],[12872,12879],[12881,12895],[12928,12937],[12977,12991],[43056,43061],[65799,65843],[65909,65912],[65930,65931],[66273,66299],[66336,66339],[67672,67679],[67705,67711],[67751,67759],[67835,67839],[67862,67867],[68028,68029],[68032,68047],[68050,68095],[68160,68168],[68221,68222],[68253,68255],[68331,68335],[68440,68447],[68472,68479],[68521,68527],[68858,68863],[69216,69246],[69405,69414],[69457,69460],[69573,69579],[69714,69733],[70113,70132],[71482,71483],[71914,71922],[72794,72812],[73664,73684],[93019,93025],[93824,93846],[119488,119507],[119520,119539],[119648,119672],[125127,125135],[126065,126123],[126125,126127],[126129,126132],[126209,126253],[126255,126269],[127232,127244]],Other_Punctuation:[[33,35],[37,39],42,44,[46,47],[58,59],[63,64],92,161,167,[182,183],191,894,903,[1370,1375],1417,1472,1475,1478,[1523,1524],[1545,1546],[1548,1549],1563,[1565,1567],[1642,1645],1748,[1792,1805],[2039,2041],[2096,2110],2142,[2404,2405],2416,2557,2678,2800,3191,3204,3572,3663,[3674,3675],[3844,3858],3860,3973,[4048,4052],[4057,4058],[4170,4175],4347,[4960,4968],5742,[5867,5869],[5941,5942],[6100,6102],[6104,6106],[6144,6149],[6151,6154],[6468,6469],[6686,6687],[6816,6822],[6824,6829],[7002,7008],[7037,7038],[7164,7167],[7227,7231],[7294,7295],[7360,7367],7379,[8214,8215],[8224,8231],[8240,8248],[8251,8254],[8257,8259],[8263,8273],8275,[8277,8286],[11513,11516],[11518,11519],11632,[11776,11777],[11782,11784],11787,[11790,11798],[11800,11801],11803,[11806,11807],[11818,11822],[11824,11833],[11836,11839],11841,[11843,11855],[11858,11860],[12289,12291],12349,12539,[42238,42239],[42509,42511],42611,42622,[42738,42743],[43124,43127],[43214,43215],[43256,43258],43260,[43310,43311],43359,[43457,43469],[43486,43487],[43612,43615],[43742,43743],[43760,43761],44011,[65040,65046],65049,65072,[65093,65094],[65097,65100],[65104,65106],[65108,65111],[65119,65121],65128,[65130,65131],[65281,65283],[65285,65287],65290,65292,[65294,65295],[65306,65307],[65311,65312],65340,65377,[65380,65381],[65792,65794],66463,66512,66927,67671,67871,67903,[68176,68184],68223,[68336,68342],[68409,68415],[68505,68508],[69461,69465],[69510,69513],[69703,69709],[69819,69820],[69822,69825],[69952,69955],[70004,70005],[70085,70088],70093,70107,[70109,70111],[70200,70205],70313,[70731,70735],[70746,70747],70749,70854,[71105,71127],[71233,71235],[71264,71276],71353,[71484,71486],71739,[72004,72006],72162,[72255,72262],[72346,72348],[72350,72354],[72448,72457],[72769,72773],[72816,72817],[73463,73464],[73539,73551],73727,[74864,74868],[77809,77810],[92782,92783],92917,[92983,92987],92996,[93847,93850],94178,113823,[121479,121483],[125278,125279]],Other_Symbol:[166,169,174,176,1154,[1421,1422],[1550,1551],1758,1769,[1789,1790],2038,2554,2928,[3059,3064],3066,3199,3407,3449,[3841,3843],3859,[3861,3863],[3866,3871],3892,3894,3896,[4030,4037],[4039,4044],[4046,4047],[4053,4056],[4254,4255],[5008,5017],5741,6464,[6622,6655],[7009,7018],[7028,7036],[8448,8449],[8451,8454],[8456,8457],8468,[8470,8471],[8478,8483],8485,8487,8489,8494,[8506,8507],8522,[8524,8525],8527,[8586,8587],[8597,8601],[8604,8607],[8609,8610],[8612,8613],[8615,8621],[8623,8653],[8656,8657],8659,[8661,8691],[8960,8967],[8972,8991],[8994,9e3],[9003,9083],[9085,9114],[9140,9179],[9186,9254],[9280,9290],[9372,9449],[9472,9654],[9656,9664],[9666,9719],[9728,9838],[9840,10087],[10132,10175],[10240,10495],[11008,11055],[11077,11078],[11085,11123],[11126,11157],[11159,11263],[11493,11498],[11856,11857],[11904,11929],[11931,12019],[12032,12245],[12272,12283],12292,[12306,12307],12320,[12342,12343],[12350,12351],[12688,12689],[12694,12703],[12736,12771],[12800,12830],[12842,12871],12880,[12896,12927],[12938,12976],[12992,13311],[19904,19967],[42128,42182],[43048,43051],[43062,43063],43065,[43639,43641],[64832,64847],64975,[65021,65023],65508,65512,[65517,65518],[65532,65533],[65847,65855],[65913,65929],[65932,65934],[65936,65948],65952,[66e3,66044],[67703,67704],68296,71487,[73685,73692],[73697,73713],[92988,92991],92997,113820,[118608,118723],[118784,119029],[119040,119078],[119081,119140],[119146,119148],[119171,119172],[119180,119209],[119214,119274],[119296,119361],119365,[119552,119638],[120832,121343],[121399,121402],[121453,121460],[121462,121475],[121477,121478],123215,126124,126254,[126976,127019],[127024,127123],[127136,127150],[127153,127167],[127169,127183],[127185,127221],[127245,127405],[127462,127490],[127504,127547],[127552,127560],[127568,127569],[127584,127589],[127744,127994],[128e3,128727],[128732,128748],[128752,128764],[128768,128886],[128891,128985],[128992,129003],129008,[129024,129035],[129040,129095],[129104,129113],[129120,129159],[129168,129197],[129200,129201],[129280,129619],[129632,129645],[129648,129660],[129664,129672],[129680,129725],[129727,129733],[129742,129755],[129760,129768],[129776,129784],[129792,129938],[129940,129994]],Paragraph_Separator:[8233],Private_Use:[[57344,63743],[983040,1048573],[1048576,1114109]],Punctuation:[[33,35],[37,42],[44,47],[58,59],[63,64],[91,93],95,123,125,161,167,171,[182,183],187,191,894,903,[1370,1375],[1417,1418],1470,1472,1475,1478,[1523,1524],[1545,1546],[1548,1549],1563,[1565,1567],[1642,1645],1748,[1792,1805],[2039,2041],[2096,2110],2142,[2404,2405],2416,2557,2678,2800,3191,3204,3572,3663,[3674,3675],[3844,3858],3860,[3898,3901],3973,[4048,4052],[4057,4058],[4170,4175],4347,[4960,4968],5120,5742,[5787,5788],[5867,5869],[5941,5942],[6100,6102],[6104,6106],[6144,6154],[6468,6469],[6686,6687],[6816,6822],[6824,6829],[7002,7008],[7037,7038],[7164,7167],[7227,7231],[7294,7295],[7360,7367],7379,[8208,8231],[8240,8259],[8261,8273],[8275,8286],[8317,8318],[8333,8334],[8968,8971],[9001,9002],[10088,10101],[10181,10182],[10214,10223],[10627,10648],[10712,10715],[10748,10749],[11513,11516],[11518,11519],11632,[11776,11822],[11824,11855],[11858,11869],[12289,12291],[12296,12305],[12308,12319],12336,12349,12448,12539,[42238,42239],[42509,42511],42611,42622,[42738,42743],[43124,43127],[43214,43215],[43256,43258],43260,[43310,43311],43359,[43457,43469],[43486,43487],[43612,43615],[43742,43743],[43760,43761],44011,[64830,64831],[65040,65049],[65072,65106],[65108,65121],65123,65128,[65130,65131],[65281,65283],[65285,65290],[65292,65295],[65306,65307],[65311,65312],[65339,65341],65343,65371,65373,[65375,65381],[65792,65794],66463,66512,66927,67671,67871,67903,[68176,68184],68223,[68336,68342],[68409,68415],[68505,68508],69293,[69461,69465],[69510,69513],[69703,69709],[69819,69820],[69822,69825],[69952,69955],[70004,70005],[70085,70088],70093,70107,[70109,70111],[70200,70205],70313,[70731,70735],[70746,70747],70749,70854,[71105,71127],[71233,71235],[71264,71276],71353,[71484,71486],71739,[72004,72006],72162,[72255,72262],[72346,72348],[72350,72354],[72448,72457],[72769,72773],[72816,72817],[73463,73464],[73539,73551],73727,[74864,74868],[77809,77810],[92782,92783],92917,[92983,92987],92996,[93847,93850],94178,113823,[121479,121483],[125278,125279]],Separator:[32,160,5760,[8192,8202],[8232,8233],8239,8287,12288],Space_Separator:[32,160,5760,[8192,8202],8239,8287,12288],Spacing_Mark:[2307,2363,[2366,2368],[2377,2380],[2382,2383],[2434,2435],[2494,2496],[2503,2504],[2507,2508],2519,2563,[2622,2624],2691,[2750,2752],2761,[2763,2764],[2818,2819],2878,2880,[2887,2888],[2891,2892],2903,[3006,3007],[3009,3010],[3014,3016],[3018,3020],3031,[3073,3075],[3137,3140],[3202,3203],3262,[3264,3268],[3271,3272],[3274,3275],[3285,3286],3315,[3330,3331],[3390,3392],[3398,3400],[3402,3404],3415,[3458,3459],[3535,3537],[3544,3551],[3570,3571],[3902,3903],3967,[4139,4140],4145,4152,[4155,4156],[4182,4183],[4194,4196],[4199,4205],[4227,4228],[4231,4236],4239,[4250,4252],5909,5940,6070,[6078,6085],[6087,6088],[6435,6438],[6441,6443],[6448,6449],[6451,6456],[6681,6682],6741,6743,6753,[6755,6756],[6765,6770],6916,6965,6971,[6973,6977],[6979,6980],7042,7073,[7078,7079],7082,7143,[7146,7148],7150,[7154,7155],[7204,7211],[7220,7221],7393,7415,[12334,12335],[43043,43044],43047,[43136,43137],[43188,43203],[43346,43347],43395,[43444,43445],[43450,43451],[43454,43456],[43567,43568],[43571,43572],43597,43643,43645,43755,[43758,43759],43765,[44003,44004],[44006,44007],[44009,44010],44012,69632,69634,69762,[69808,69810],[69815,69816],69932,[69957,69958],70018,[70067,70069],[70079,70080],70094,[70188,70190],[70194,70195],70197,[70368,70370],[70402,70403],[70462,70463],[70465,70468],[70471,70472],[70475,70477],70487,[70498,70499],[70709,70711],[70720,70721],70725,[70832,70834],70841,[70843,70846],70849,[71087,71089],[71096,71099],71102,[71216,71218],[71227,71228],71230,71340,[71342,71343],71350,[71456,71457],71462,[71724,71726],71736,[71984,71989],[71991,71992],71997,72e3,72002,[72145,72147],[72156,72159],72164,72249,[72279,72280],72343,72751,72766,72873,72881,72884,[73098,73102],[73107,73108],73110,[73461,73462],73475,[73524,73525],[73534,73535],73537,[94033,94087],[94192,94193],[119141,119142],[119149,119154]],Surrogate:[[55296,57343]],Symbol:[36,43,[60,62],94,96,124,126,[162,166],[168,169],172,[174,177],180,184,215,247,[706,709],[722,735],[741,747],749,[751,767],885,[900,901],1014,1154,[1421,1423],[1542,1544],1547,[1550,1551],1758,1769,[1789,1790],2038,[2046,2047],2184,[2546,2547],[2554,2555],2801,2928,[3059,3066],3199,3407,3449,3647,[3841,3843],3859,[3861,3863],[3866,3871],3892,3894,3896,[4030,4037],[4039,4044],[4046,4047],[4053,4056],[4254,4255],[5008,5017],5741,6107,6464,[6622,6655],[7009,7018],[7028,7036],8125,[8127,8129],[8141,8143],[8157,8159],[8173,8175],[8189,8190],8260,8274,[8314,8316],[8330,8332],[8352,8384],[8448,8449],[8451,8454],[8456,8457],8468,[8470,8472],[8478,8483],8485,8487,8489,8494,[8506,8507],[8512,8516],[8522,8525],8527,[8586,8587],[8592,8967],[8972,9e3],[9003,9254],[9280,9290],[9372,9449],[9472,10087],[10132,10180],[10183,10213],[10224,10626],[10649,10711],[10716,10747],[10750,11123],[11126,11157],[11159,11263],[11493,11498],[11856,11857],[11904,11929],[11931,12019],[12032,12245],[12272,12283],12292,[12306,12307],12320,[12342,12343],[12350,12351],[12443,12444],[12688,12689],[12694,12703],[12736,12771],[12800,12830],[12842,12871],12880,[12896,12927],[12938,12976],[12992,13311],[19904,19967],[42128,42182],[42752,42774],[42784,42785],[42889,42890],[43048,43051],[43062,43065],[43639,43641],43867,[43882,43883],64297,[64434,64450],[64832,64847],64975,[65020,65023],65122,[65124,65126],65129,65284,65291,[65308,65310],65342,65344,65372,65374,[65504,65510],[65512,65518],[65532,65533],[65847,65855],[65913,65929],[65932,65934],[65936,65948],65952,[66e3,66044],[67703,67704],68296,71487,[73685,73713],[92988,92991],92997,113820,[118608,118723],[118784,119029],[119040,119078],[119081,119140],[119146,119148],[119171,119172],[119180,119209],[119214,119274],[119296,119361],119365,[119552,119638],120513,120539,120571,120597,120629,120655,120687,120713,120745,120771,[120832,121343],[121399,121402],[121453,121460],[121462,121475],[121477,121478],123215,123647,126124,126128,126254,[126704,126705],[126976,127019],[127024,127123],[127136,127150],[127153,127167],[127169,127183],[127185,127221],[127245,127405],[127462,127490],[127504,127547],[127552,127560],[127568,127569],[127584,127589],[127744,128727],[128732,128748],[128752,128764],[128768,128886],[128891,128985],[128992,129003],129008,[129024,129035],[129040,129095],[129104,129113],[129120,129159],[129168,129197],[129200,129201],[129280,129619],[129632,129645],[129648,129660],[129664,129672],[129680,129725],[129727,129733],[129742,129755],[129760,129768],[129776,129784],[129792,129938],[129940,129994]],Titlecase_Letter:[453,456,459,498,[8072,8079],[8088,8095],[8104,8111],8124,8140,8188],Unassigned:[[888,889],[896,899],907,909,930,1328,[1367,1368],[1419,1420],1424,[1480,1487],[1515,1518],[1525,1535],1806,[1867,1868],[1970,1983],[2043,2044],[2094,2095],2111,[2140,2141],2143,[2155,2159],2191,[2194,2199],2436,[2445,2446],[2449,2450],2473,2481,[2483,2485],[2490,2491],[2501,2502],[2505,2506],[2511,2518],[2520,2523],2526,[2532,2533],[2559,2560],2564,[2571,2574],[2577,2578],2601,2609,2612,2615,[2618,2619],2621,[2627,2630],[2633,2634],[2638,2640],[2642,2648],2653,[2655,2661],[2679,2688],2692,2702,2706,2729,2737,2740,[2746,2747],2758,2762,[2766,2767],[2769,2783],[2788,2789],[2802,2808],2816,2820,[2829,2830],[2833,2834],2857,2865,2868,[2874,2875],[2885,2886],[2889,2890],[2894,2900],[2904,2907],2910,[2916,2917],[2936,2945],2948,[2955,2957],2961,[2966,2968],2971,2973,[2976,2978],[2981,2983],[2987,2989],[3002,3005],[3011,3013],3017,[3022,3023],[3025,3030],[3032,3045],[3067,3071],3085,3089,3113,[3130,3131],3141,3145,[3150,3156],3159,[3163,3164],[3166,3167],[3172,3173],[3184,3190],3213,3217,3241,3252,[3258,3259],3269,3273,[3278,3284],[3287,3292],3295,[3300,3301],3312,[3316,3327],3341,3345,3397,3401,[3408,3411],[3428,3429],3456,3460,[3479,3481],3506,3516,[3518,3519],[3527,3529],[3531,3534],3541,3543,[3552,3557],[3568,3569],[3573,3584],[3643,3646],[3676,3712],3715,3717,3723,3748,3750,[3774,3775],3781,3783,3791,[3802,3803],[3808,3839],3912,[3949,3952],3992,4029,4045,[4059,4095],4294,[4296,4300],[4302,4303],4681,[4686,4687],4695,4697,[4702,4703],4745,[4750,4751],4785,[4790,4791],4799,4801,[4806,4807],4823,4881,[4886,4887],[4955,4956],[4989,4991],[5018,5023],[5110,5111],[5118,5119],[5789,5791],[5881,5887],[5910,5918],[5943,5951],[5972,5983],5997,6001,[6004,6015],[6110,6111],[6122,6127],[6138,6143],[6170,6175],[6265,6271],[6315,6319],[6390,6399],6431,[6444,6447],[6460,6463],[6465,6467],[6510,6511],[6517,6527],[6572,6575],[6602,6607],[6619,6621],[6684,6685],6751,[6781,6782],[6794,6799],[6810,6815],[6830,6831],[6863,6911],[6989,6991],7039,[7156,7163],[7224,7226],[7242,7244],[7305,7311],[7355,7356],[7368,7375],[7419,7423],[7958,7959],[7966,7967],[8006,8007],[8014,8015],8024,8026,8028,8030,[8062,8063],8117,8133,[8148,8149],8156,[8176,8177],8181,8191,8293,[8306,8307],8335,[8349,8351],[8385,8399],[8433,8447],[8588,8591],[9255,9279],[9291,9311],[11124,11125],11158,[11508,11512],11558,[11560,11564],[11566,11567],[11624,11630],[11633,11646],[11671,11679],11687,11695,11703,11711,11719,11727,11735,11743,[11870,11903],11930,[12020,12031],[12246,12271],[12284,12287],12352,[12439,12440],[12544,12548],12592,12687,[12772,12783],12831,[42125,42127],[42183,42191],[42540,42559],[42744,42751],[42955,42959],42962,42964,[42970,42993],[43053,43055],[43066,43071],[43128,43135],[43206,43213],[43226,43231],[43348,43358],[43389,43391],43470,[43482,43485],43519,[43575,43583],[43598,43599],[43610,43611],[43715,43738],[43767,43776],[43783,43784],[43791,43792],[43799,43807],43815,43823,[43884,43887],[44014,44015],[44026,44031],[55204,55215],[55239,55242],[55292,55295],[64110,64111],[64218,64255],[64263,64274],[64280,64284],64311,64317,64319,64322,64325,[64451,64466],[64912,64913],[64968,64974],[64976,65007],[65050,65055],65107,65127,[65132,65135],65141,[65277,65278],65280,[65471,65473],[65480,65481],[65488,65489],[65496,65497],[65501,65503],65511,[65519,65528],[65534,65535],65548,65575,65595,65598,[65614,65615],[65630,65663],[65787,65791],[65795,65798],[65844,65846],65935,[65949,65951],[65953,65999],[66046,66175],[66205,66207],[66257,66271],[66300,66303],[66340,66348],[66379,66383],[66427,66431],66462,[66500,66503],[66518,66559],[66718,66719],[66730,66735],[66772,66775],[66812,66815],[66856,66863],[66916,66926],66939,66955,66963,66966,66978,66994,67002,[67005,67071],[67383,67391],[67414,67423],[67432,67455],67462,67505,[67515,67583],[67590,67591],67593,67638,[67641,67643],[67645,67646],67670,[67743,67750],[67760,67807],67827,[67830,67834],[67868,67870],[67898,67902],[67904,67967],[68024,68027],[68048,68049],68100,[68103,68107],68116,68120,[68150,68151],[68155,68158],[68169,68175],[68185,68191],[68256,68287],[68327,68330],[68343,68351],[68406,68408],[68438,68439],[68467,68471],[68498,68504],[68509,68520],[68528,68607],[68681,68735],[68787,68799],[68851,68857],[68904,68911],[68922,69215],69247,69290,[69294,69295],[69298,69372],[69416,69423],[69466,69487],[69514,69551],[69580,69599],[69623,69631],[69710,69713],[69750,69758],[69827,69836],[69838,69839],[69865,69871],[69882,69887],69941,[69960,69967],[70007,70015],70112,[70133,70143],70162,[70210,70271],70279,70281,70286,70302,[70314,70319],[70379,70383],[70394,70399],70404,[70413,70414],[70417,70418],70441,70449,70452,70458,[70469,70470],[70473,70474],[70478,70479],[70481,70486],[70488,70492],[70500,70501],[70509,70511],[70517,70655],70748,[70754,70783],[70856,70863],[70874,71039],[71094,71095],[71134,71167],[71237,71247],[71258,71263],[71277,71295],[71354,71359],[71370,71423],[71451,71452],[71468,71471],[71495,71679],[71740,71839],[71923,71934],[71943,71944],[71946,71947],71956,71959,71990,[71993,71994],[72007,72015],[72026,72095],[72104,72105],[72152,72153],[72165,72191],[72264,72271],[72355,72367],[72441,72447],[72458,72703],72713,72759,[72774,72783],[72813,72815],[72848,72849],72872,[72887,72959],72967,72970,[73015,73017],73019,73022,[73032,73039],[73050,73055],73062,73065,73103,73106,[73113,73119],[73130,73439],[73465,73471],73489,[73531,73533],[73562,73647],[73649,73663],[73714,73726],[74650,74751],74863,[74869,74879],[75076,77711],[77811,77823],[78934,82943],[83527,92159],[92729,92735],92767,[92778,92781],92863,[92874,92879],[92910,92911],[92918,92927],[92998,93007],93018,93026,[93048,93052],[93072,93759],[93851,93951],[94027,94030],[94088,94094],[94112,94175],[94181,94191],[94194,94207],[100344,100351],[101590,101631],[101641,110575],110580,110588,110591,[110883,110897],[110899,110927],[110931,110932],[110934,110947],[110952,110959],[111356,113663],[113771,113775],[113789,113791],[113801,113807],[113818,113819],[113828,118527],[118574,118575],[118599,118607],[118724,118783],[119030,119039],[119079,119080],[119275,119295],[119366,119487],[119508,119519],[119540,119551],[119639,119647],[119673,119807],119893,119965,[119968,119969],[119971,119972],[119975,119976],119981,119994,119996,120004,120070,[120075,120076],120085,120093,120122,120127,120133,[120135,120137],120145,[120486,120487],[120780,120781],[121484,121498],121504,[121520,122623],[122655,122660],[122667,122879],122887,[122905,122906],122914,122917,[122923,122927],[122990,123022],[123024,123135],[123181,123183],[123198,123199],[123210,123213],[123216,123535],[123567,123583],[123642,123646],[123648,124111],[124154,124895],124903,124908,124911,124927,[125125,125126],[125143,125183],[125260,125263],[125274,125277],[125280,126064],[126133,126208],[126270,126463],126468,126496,126499,[126501,126502],126504,126515,126520,126522,[126524,126529],[126531,126534],126536,126538,126540,126544,126547,[126549,126550],126552,126554,126556,126558,126560,126563,[126565,126566],126571,126579,126584,126589,126591,126602,[126620,126624],126628,126634,[126652,126703],[126706,126975],[127020,127023],[127124,127135],[127151,127152],127168,127184,[127222,127231],[127406,127461],[127491,127503],[127548,127551],[127561,127567],[127570,127583],[127590,127743],[128728,128731],[128749,128751],[128765,128767],[128887,128890],[128986,128991],[129004,129007],[129009,129023],[129036,129039],[129096,129103],[129114,129119],[129160,129167],[129198,129199],[129202,129279],[129620,129631],[129646,129647],[129661,129663],[129673,129679],129726,[129734,129741],[129756,129759],[129769,129775],[129785,129791],129939,[129995,130031],[130042,131071],[173792,173823],[177978,177983],[178206,178207],[183970,183983],[191457,194559],[195102,196607],[201547,201551],[205744,917504],[917506,917535],[917632,917759],[918e3,983039],[1048574,1048575],[1114110,1114111]],Uppercase_Letter:[[65,90],[192,214],[216,222],256,258,260,262,264,266,268,270,272,274,276,278,280,282,284,286,288,290,292,294,296,298,300,302,304,306,308,310,313,315,317,319,321,323,325,327,330,332,334,336,338,340,342,344,346,348,350,352,354,356,358,360,362,364,366,368,370,372,374,[376,377],379,381,[385,386],388,[390,391],[393,395],[398,401],[403,404],[406,408],[412,413],[415,416],418,420,[422,423],425,428,[430,431],[433,435],437,[439,440],444,452,455,458,461,463,465,467,469,471,473,475,478,480,482,484,486,488,490,492,494,497,500,[502,504],506,508,510,512,514,516,518,520,522,524,526,528,530,532,534,536,538,540,542,544,546,548,550,552,554,556,558,560,562,[570,571],[573,574],577,[579,582],584,586,588,590,880,882,886,895,902,[904,906],908,[910,911],[913,929],[931,939],975,[978,980],984,986,988,990,992,994,996,998,1e3,1002,1004,1006,1012,1015,[1017,1018],[1021,1071],1120,1122,1124,1126,1128,1130,1132,1134,1136,1138,1140,1142,1144,1146,1148,1150,1152,1162,1164,1166,1168,1170,1172,1174,1176,1178,1180,1182,1184,1186,1188,1190,1192,1194,1196,1198,1200,1202,1204,1206,1208,1210,1212,1214,[1216,1217],1219,1221,1223,1225,1227,1229,1232,1234,1236,1238,1240,1242,1244,1246,1248,1250,1252,1254,1256,1258,1260,1262,1264,1266,1268,1270,1272,1274,1276,1278,1280,1282,1284,1286,1288,1290,1292,1294,1296,1298,1300,1302,1304,1306,1308,1310,1312,1314,1316,1318,1320,1322,1324,1326,[1329,1366],[4256,4293],4295,4301,[5024,5109],[7312,7354],[7357,7359],7680,7682,7684,7686,7688,7690,7692,7694,7696,7698,7700,7702,7704,7706,7708,7710,7712,7714,7716,7718,7720,7722,7724,7726,7728,7730,7732,7734,7736,7738,7740,7742,7744,7746,7748,7750,7752,7754,7756,7758,7760,7762,7764,7766,7768,7770,7772,7774,7776,7778,7780,7782,7784,7786,7788,7790,7792,7794,7796,7798,7800,7802,7804,7806,7808,7810,7812,7814,7816,7818,7820,7822,7824,7826,7828,7838,7840,7842,7844,7846,7848,7850,7852,7854,7856,7858,7860,7862,7864,7866,7868,7870,7872,7874,7876,7878,7880,7882,7884,7886,7888,7890,7892,7894,7896,7898,7900,7902,7904,7906,7908,7910,7912,7914,7916,7918,7920,7922,7924,7926,7928,7930,7932,7934,[7944,7951],[7960,7965],[7976,7983],[7992,7999],[8008,8013],8025,8027,8029,8031,[8040,8047],[8120,8123],[8136,8139],[8152,8155],[8168,8172],[8184,8187],8450,8455,[8459,8461],[8464,8466],8469,[8473,8477],8484,8486,8488,[8490,8493],[8496,8499],[8510,8511],8517,8579,[11264,11311],11360,[11362,11364],11367,11369,11371,[11373,11376],11378,11381,[11390,11392],11394,11396,11398,11400,11402,11404,11406,11408,11410,11412,11414,11416,11418,11420,11422,11424,11426,11428,11430,11432,11434,11436,11438,11440,11442,11444,11446,11448,11450,11452,11454,11456,11458,11460,11462,11464,11466,11468,11470,11472,11474,11476,11478,11480,11482,11484,11486,11488,11490,11499,11501,11506,42560,42562,42564,42566,42568,42570,42572,42574,42576,42578,42580,42582,42584,42586,42588,42590,42592,42594,42596,42598,42600,42602,42604,42624,42626,42628,42630,42632,42634,42636,42638,42640,42642,42644,42646,42648,42650,42786,42788,42790,42792,42794,42796,42798,42802,42804,42806,42808,42810,42812,42814,42816,42818,42820,42822,42824,42826,42828,42830,42832,42834,42836,42838,42840,42842,42844,42846,42848,42850,42852,42854,42856,42858,42860,42862,42873,42875,[42877,42878],42880,42882,42884,42886,42891,42893,42896,42898,42902,42904,42906,42908,42910,42912,42914,42916,42918,42920,[42922,42926],[42928,42932],42934,42936,42938,42940,42942,42944,42946,[42948,42951],42953,42960,42966,42968,42997,[65313,65338],[66560,66599],[66736,66771],[66928,66938],[66940,66954],[66956,66962],[66964,66965],[68736,68786],[71840,71871],[93760,93791],[119808,119833],[119860,119885],[119912,119937],119964,[119966,119967],119970,[119973,119974],[119977,119980],[119982,119989],[120016,120041],[120068,120069],[120071,120074],[120077,120084],[120086,120092],[120120,120121],[120123,120126],[120128,120132],120134,[120138,120144],[120172,120197],[120224,120249],[120276,120301],[120328,120353],[120380,120405],[120432,120457],[120488,120512],[120546,120570],[120604,120628],[120662,120686],[120720,120744],120778,[125184,125217]]},Symbol.toStringTag,{value:"Module"})),Line_Break:Object.freeze(Object.defineProperty({__proto__:null,Alphabetic:[35,38,42,[60,62],[64,90],[94,122],126,166,169,172,[174,175],181,[192,214],[216,246],[248,710],[718,719],[721,727],732,734,[736,767],[880,887],[890,893],895,[900,906],908,[910,929],[931,1154],[1162,1327],[1329,1366],[1369,1416],[1421,1422],1472,1475,[1523,1524],[1536,1544],[1550,1551],[1568,1610],[1645,1647],[1649,1747],1749,[1757,1758],[1765,1766],1769,[1774,1775],[1786,1805],[1807,1808],[1810,1839],[1869,1957],1969,[1994,2026],[2036,2039],2042,[2048,2069],2074,2084,2088,[2096,2110],[2112,2136],2142,[2144,2154],[2160,2190],[2192,2193],[2208,2249],2274,[2308,2361],2365,2384,[2392,2401],[2416,2432],[2437,2444],[2447,2448],[2451,2472],[2474,2480],2482,[2486,2489],2493,2510,[2524,2525],[2527,2529],[2544,2545],[2548,2552],2554,[2556,2557],[2565,2570],[2575,2576],[2579,2600],[2602,2608],[2610,2611],[2613,2614],[2616,2617],[2649,2652],2654,[2674,2676],2678,[2693,2701],[2703,2705],[2707,2728],[2730,2736],[2738,2739],[2741,2745],2749,2768,[2784,2785],2800,2809,[2821,2828],[2831,2832],[2835,2856],[2858,2864],[2866,2867],[2869,2873],2877,[2908,2909],[2911,2913],[2928,2935],2947,[2949,2954],[2958,2960],[2962,2965],[2969,2970],2972,[2974,2975],[2979,2980],[2984,2986],[2990,3001],3024,[3056,3064],3066,[3077,3084],[3086,3088],[3090,3112],[3114,3129],3133,[3160,3162],3165,[3168,3169],[3192,3200],[3205,3212],[3214,3216],[3218,3240],[3242,3251],[3253,3257],3261,[3293,3294],[3296,3297],[3313,3314],[3332,3340],[3342,3344],[3346,3386],3389,[3406,3407],[3412,3414],[3416,3425],[3440,3448],[3450,3455],[3461,3478],[3482,3505],[3507,3515],3517,[3520,3526],3572,3663,3840,3845,3859,[3861,3863],[3866,3871],[3882,3891],3894,3896,[3904,3911],[3913,3948],[3976,3980],[4032,4037],[4039,4044],[4046,4047],[4052,4056],[4172,4175],[4256,4293],4295,4301,[4304,4351],[4608,4680],[4682,4685],[4688,4694],4696,[4698,4701],[4704,4744],[4746,4749],[4752,4784],[4786,4789],[4792,4798],4800,[4802,4805],[4808,4822],[4824,4880],[4882,4885],[4888,4954],4960,[4962,4988],[4992,5017],[5024,5109],[5112,5117],[5121,5759],[5761,5786],[5792,5866],[5870,5880],[5888,5905],[5919,5937],[5952,5969],[5984,5996],[5998,6e3],6105,[6128,6137],[6144,6145],6151,6154,[6176,6264],[6272,6276],[6279,6312],6314,[6320,6389],[6400,6430],6464,[6624,6678],[6686,6687],[6917,6963],[6981,6988],7004,[7009,7018],[7028,7036],[7043,7072],[7086,7087],[7098,7141],[7164,7203],[7245,7247],[7258,7293],[7296,7304],[7312,7354],[7357,7367],7379,[7401,7404],[7406,7411],[7413,7414],7418,[7424,7615],[7680,7957],[7960,7965],[7968,8005],[8008,8013],[8016,8023],8025,8027,8029,[8031,8061],[8064,8116],[8118,8132],[8134,8147],[8150,8155],[8157,8175],[8178,8180],[8182,8188],8190,8215,[8226,8227],8248,[8254,8259],[8266,8277],8284,[8289,8292],[8304,8305],[8309,8316],8320,[8325,8332],[8336,8348],[8448,8450],8452,[8454,8456],[8458,8466],[8468,8469],[8471,8480],[8483,8490],[8492,8531],[8534,8538],[8540,8541],8543,[8556,8559],[8570,8584],[8586,8587],[8602,8657],8659,[8661,8703],8705,[8708,8710],[8713,8714],[8716,8718],8720,8724,[8726,8729],[8731,8732],[8737,8738],8740,8742,8749,[8751,8755],[8760,8763],[8766,8775],[8777,8779],[8781,8785],[8787,8799],[8802,8803],[8808,8809],[8812,8813],[8816,8833],[8836,8837],[8840,8852],[8854,8856],[8858,8868],[8870,8894],[8896,8942],[8944,8967],[8972,8977],[8979,8985],[8988,9e3],[9003,9199],[9204,9254],[9280,9290],9471,[9548,9551],[9589,9599],[9616,9617],[9622,9631],9634,[9642,9649],[9652,9653],[9656,9659],[9662,9663],[9666,9669],[9673,9674],[9676,9677],[9682,9697],[9702,9710],[9712,9727],9732,[9735,9736],[9738,9741],[9744,9747],9753,[9760,9784],[9788,9791],9793,[9795,9823],9826,9830,9835,9838,[9840,9854],[9856,9885],[9888,9916],9934,9954,[9956,9959],[9989,9991],[9998,10070],[10072,10074],10081,[10085,10087],[10132,10180],[10183,10213],[10224,10626],[10649,10711],[10716,10747],[10750,11092],[11098,11123],[11126,11157],[11159,11502],[11506,11507],11517,[11520,11557],11559,11565,[11568,11623],11631,[11648,11670],[11680,11686],[11688,11694],[11696,11702],[11704,11710],[11712,11718],[11720,11726],[11728,11734],[11736,11742],11798,[11802,11803],[11806,11807],11823,11826,[11829,11833],11839,11851,11853,[11856,11858],[19904,19967],[42192,42237],[42240,42508],[42512,42527],[42538,42539],[42560,42606],42611,[42622,42653],[42656,42735],42738,[42752,42954],[42960,42961],42963,[42965,42969],[42994,43009],[43011,43013],[43015,43018],[43020,43042],[43048,43051],[43056,43063],43065,[43072,43123],[43138,43187],[43250,43259],[43261,43262],[43274,43301],[43312,43334],43359,[43396,43442],[43457,43462],[43466,43469],43471,[43486,43487],[43520,43560],[43584,43586],[43588,43595],43612,[43744,43754],[43762,43764],[43777,43782],[43785,43790],[43793,43798],[43808,43814],[43816,43822],[43824,43883],[43888,44002],[64256,64262],[64275,64279],64297,[64336,64450],[64467,64829],[64832,64911],[64914,64967],64975,[65008,65019],[65021,65023],[65136,65140],[65142,65276],[65512,65518],[65536,65547],[65549,65574],[65576,65594],[65596,65597],[65599,65613],[65616,65629],[65664,65786],[65799,65843],[65847,65934],[65936,65948],65952,[66e3,66044],[66176,66204],[66208,66256],[66273,66299],[66304,66339],[66349,66378],[66384,66421],[66432,66461],[66464,66499],[66504,66511],[66513,66517],[66560,66717],[66736,66771],[66776,66811],[66816,66855],[66864,66915],[66927,66938],[66940,66954],[66956,66962],[66964,66965],[66967,66977],[66979,66993],[66995,67001],[67003,67004],[67072,67382],[67392,67413],[67424,67431],[67456,67461],[67463,67504],[67506,67514],[67584,67589],67592,[67594,67637],[67639,67640],67644,[67647,67669],[67672,67742],[67751,67759],[67808,67826],[67828,67829],[67835,67867],[67872,67897],67903,[67968,68023],[68028,68047],[68050,68096],[68112,68115],[68117,68119],[68121,68149],[68160,68168],68184,[68192,68255],[68288,68324],[68331,68335],[68352,68405],[68416,68437],[68440,68466],[68472,68497],[68505,68508],[68521,68527],[68608,68680],[68736,68786],[68800,68850],[68858,68899],[69216,69246],[69248,69289],[69296,69297],[69376,69415],[69424,69445],[69457,69465],[69488,69505],[69510,69513],[69552,69579],[69600,69622],[69635,69687],[69705,69709],[69714,69733],[69745,69746],69749,[69763,69807],[69819,69821],69837,[69840,69864],[69891,69926],69956,69959,[69968,70002],70004,70006,[70019,70066],[70081,70084],70087,70093,70106,70108,[70113,70132],[70144,70161],[70163,70187],70202,70205,[70207,70208],[70272,70278],70280,[70282,70285],[70287,70301],[70303,70312],[70320,70366],[70405,70412],[70415,70416],[70419,70440],[70442,70448],[70450,70451],[70453,70457],70461,70480,[70493,70497],[70656,70708],[70727,70730],70735,70749,[70751,70753],[70784,70831],[70852,70855],[71040,71086],[71110,71112],[71128,71131],[71168,71215],[71235,71236],[71296,71338],[71352,71353],[71680,71723],71739,[71840,71903],[71914,71922],[71935,71942],71945,[71948,71955],[71957,71958],[71960,71983],71999,72001,[72096,72103],[72106,72144],72161,72163,72192,[72203,72242],72250,72256,72262,72272,[72284,72329],72349,[72368,72440],[72704,72712],[72714,72750],72768,[72794,72812],[72818,72847],[72960,72966],[72968,72969],[72971,73008],73030,[73056,73061],[73063,73064],[73066,73097],73112,[73440,73458],[73463,73464],73474,[73476,73488],[73490,73523],73648,[73664,73692],[73697,73713],[73728,74649],[74752,74862],[74880,75075],[77712,77810],[77824,78423],[78430,78465],[78467,78469],[78474,78712],[78716,78895],[78913,78918],[82944,83405],[83408,83526],[92160,92728],[92736,92766],[92784,92862],[92880,92909],[92928,92975],[92986,92995],92997,[93019,93025],[93027,93047],[93053,93071],[93760,93846],[93849,93850],[93952,94026],94032,[94099,94111],[101120,101589],[110576,110579],[110581,110587],[110589,110590],[113664,113770],[113776,113788],[113792,113800],[113808,113817],113820,[118608,118723],[118784,119029],[119040,119078],[119081,119140],[119146,119148],[119171,119172],[119180,119209],[119214,119274],[119296,119361],119365,[119488,119507],[119520,119539],[119552,119638],[119648,119672],[119808,119892],[119894,119964],[119966,119967],119970,[119973,119974],[119977,119980],[119982,119993],119995,[119997,120003],[120005,120069],[120071,120074],[120077,120084],[120086,120092],[120094,120121],[120123,120126],[120128,120132],120134,[120138,120144],[120146,120485],[120488,120779],[120832,121343],[121399,121402],[121453,121460],[121462,121475],[121477,121478],121483,[122624,122654],[122661,122666],[122928,122989],[123136,123180],[123191,123197],[123214,123215],[123536,123565],[123584,123627],[124112,124139],[124896,124902],[124904,124907],[124909,124910],[124912,124926],[124928,125124],[125127,125135],[125184,125251],125259,[126065,126123],[126125,126127],[126129,126132],[126209,126269],[126464,126467],[126469,126495],[126497,126498],126500,126503,[126505,126514],[126516,126519],126521,126523,126530,126535,126537,126539,[126541,126543],[126545,126546],126548,126551,126553,126555,126557,126559,[126561,126562],126564,[126567,126570],[126572,126578],[126580,126583],[126585,126588],126590,[126592,126601],[126603,126619],[126625,126627],[126629,126633],[126635,126651],[126704,126705],[127278,127279],[127338,127340],[127900,127901],[127925,127926],127932,128160,128162,128164,128175,[128177,128178],[128256,128262],[128279,128292],[128306,128329],[128468,128475],[128500,128505],[128592,128629],[128636,128639],[128768,128883],[128896,128980],[129024,129035],[129040,129095],[129104,129113],[129120,129159],[129168,129197],[129280,129291],[129536,129619],[129792,129938],[129940,129994]],Ambiguous:[[167,168],170,[178,179],[182,186],[188,190],215,247,711,[713,715],717,720,[728,731],733,[8213,8214],[8224,8225],8251,8308,8319,[8321,8324],8453,8467,[8481,8482],8491,[8532,8533],8539,8542,[8544,8555],[8560,8569],8585,[8592,8601],8658,8660,8704,[8706,8707],[8711,8712],8715,8719,8721,8725,8730,[8733,8736],8739,8741,[8743,8748],8750,[8756,8759],[8764,8765],8776,8780,8786,[8800,8801],[8804,8807],[8810,8811],[8814,8815],[8834,8835],[8838,8839],8853,8857,8869,8895,8978,[9312,9470],[9472,9547],[9552,9588],[9600,9615],[9618,9621],[9632,9633],[9635,9641],[9650,9651],[9654,9655],[9660,9661],[9664,9665],[9670,9672],9675,[9678,9681],[9698,9701],9711,[9733,9734],9737,[9742,9743],[9750,9751],9792,9794,[9824,9825],[9827,9829],9831,[9833,9834],[9836,9837],9839,[9886,9887],[9929,9932],9938,[9941,9943],[9946,9947],[9949,9950],9955,[9960,9961],[9963,9968],9974,[9979,9980],10071,[10102,10131],[11093,11097],[12872,12879],65533,[127232,127244],[127248,127277],[127280,127337],[127344,127404]],Break_After:[9,124,173,1418,1470,[2404,2405],[3674,3675],3851,3892,3967,3973,[4030,4031],4050,[4170,4171],4961,5120,5760,[5867,5869],[5941,5942],[6100,6101],6104,6106,[6148,6149],[7002,7003],[7005,7008],[7037,7038],[7227,7231],[7294,7295],[8192,8198],[8200,8202],8208,[8210,8211],8231,8278,[8280,8283],[8285,8287],[11514,11516],11519,11632,[11790,11797],11799,11801,[11818,11821],[11824,11825],[11827,11828],[11836,11838],[11840,11841],[11843,11850],11852,[11854,11855],11869,12288,[42238,42239],42509,42511,[42739,42743],[43214,43215],[43310,43311],[43463,43465],[43613,43615],[43760,43761],44011,[65792,65794],66463,66512,67671,67871,[68176,68183],[68336,68341],[68409,68415],69293,[69703,69704],[69822,69825],[69952,69955],[70085,70086],70088,[70109,70111],[70200,70201],[70203,70204],70313,[70731,70734],[70746,70747],[71106,71107],[71113,71127],[71233,71234],[71484,71486],[72004,72006],[72257,72260],[72346,72348],[72353,72354],[72769,72773],[73539,73540],73727,[74864,74868],[92782,92783],92917,[92983,92985],92996,[93847,93848],113823,[121479,121482]],Break_Before:[180,712,716,735,3191,3204,[3841,3844],[3846,3847],[3849,3850],[4048,4049],4051,6150,8189,[43124,43125],43260,70005,70107,71105,[71264,71276],72162,72255,72261,[72350,72352],[72448,72457],72816],Break_Both:[8212,[11834,11835]],Break_Symbols:[47],Carriage_Return:[13],Close_Parenthesis:[41,93],Close_Punctuation:[125,3899,3901,5788,8262,8318,8334,8969,8971,9002,10089,10091,10093,10095,10097,10099,10101,10182,10215,10217,10219,10221,10223,10628,10630,10632,10634,10636,10638,10640,10642,10644,10646,10648,10713,10715,10749,11811,11813,11815,11817,11862,11864,11866,11868,[12289,12290],12297,12299,12301,12303,12305,12309,12311,12313,12315,[12318,12319],64830,[65041,65042],65048,65078,65080,65082,65084,65086,65088,65090,65092,65096,65104,65106,65114,65116,65118,65289,65292,65294,65341,65373,[65376,65377],[65379,65380],[78427,78429],78466,78471,78473,[78714,78715],78904,78909,78911,83407],Combining_Mark:[[0,8],[14,31],[127,132],[134,159],[768,846],[848,859],[867,879],[1155,1161],[1425,1469],1471,[1473,1474],[1476,1477],1479,[1552,1562],1564,[1611,1631],1648,[1750,1756],[1759,1764],[1767,1768],[1770,1773],1809,[1840,1866],[1958,1968],[2027,2035],2045,[2070,2073],[2075,2083],[2085,2087],[2089,2093],[2137,2139],[2200,2207],[2250,2273],[2275,2307],[2362,2364],[2366,2383],[2385,2391],[2402,2403],[2433,2435],2492,[2494,2500],[2503,2504],[2507,2509],2519,[2530,2531],2558,[2561,2563],2620,[2622,2626],[2631,2632],[2635,2637],2641,[2672,2673],2677,[2689,2691],2748,[2750,2757],[2759,2761],[2763,2765],[2786,2787],[2810,2815],[2817,2819],2876,[2878,2884],[2887,2888],[2891,2893],[2901,2903],[2914,2915],2946,[3006,3010],[3014,3016],[3018,3021],3031,[3072,3076],3132,[3134,3140],[3142,3144],[3146,3149],[3157,3158],[3170,3171],[3201,3203],3260,[3262,3268],[3270,3272],[3274,3277],[3285,3286],[3298,3299],3315,[3328,3331],[3387,3388],[3390,3396],[3398,3400],[3402,3405],3415,[3426,3427],[3457,3459],3530,[3535,3540],3542,[3544,3551],[3570,3571],[3864,3865],3893,3895,3897,[3902,3903],[3953,3966],[3968,3972],[3974,3975],[3981,3991],[3993,4028],4038,[4957,4959],[5906,5909],[5938,5940],[5970,5971],[6002,6003],[6155,6157],6159,[6277,6278],6313,[6432,6443],[6448,6459],[6679,6683],6783,[6832,6862],[6912,6916],[6964,6980],[7019,7027],[7040,7042],[7073,7085],[7142,7155],[7204,7223],[7376,7378],[7380,7400],7405,7412,[7415,7417],[7616,7628],[7630,7675],[7677,7679],8204,[8206,8207],[8234,8238],[8294,8303],[8400,8432],[11503,11505],11647,[11744,11775],[12330,12335],12341,[12441,12442],[42607,42610],[42612,42621],[42654,42655],[42736,42737],43010,43014,43019,[43043,43047],43052,[43136,43137],[43188,43205],[43232,43249],43263,[43302,43309],[43335,43347],[43392,43395],[43443,43456],[43561,43574],43587,[43596,43597],[43755,43759],[43765,43766],[44003,44010],[44012,44013],64286,[65024,65039],[65056,65071],[65529,65531],66045,66272,[66422,66426],[68097,68099],[68101,68102],[68108,68111],[68152,68154],68159,[68325,68326],[68900,68903],[69291,69292],[69373,69375],[69446,69456],[69506,69509],[69632,69634],[69688,69702],69744,[69747,69748],[69759,69762],[69808,69818],69826,[69888,69890],[69927,69940],[69957,69958],70003,[70016,70018],[70067,70080],[70089,70092],[70094,70095],[70188,70199],70206,70209,[70367,70378],[70400,70403],[70459,70460],[70462,70468],[70471,70472],[70475,70477],70487,[70498,70499],[70502,70508],[70512,70516],[70709,70726],70750,[70832,70851],[71087,71093],[71096,71104],[71132,71133],[71216,71232],[71339,71351],[71724,71738],[71984,71989],[71991,71992],[71995,71998],72e3,[72002,72003],[72145,72151],[72154,72160],72164,[72193,72202],[72243,72249],[72251,72254],72263,[72273,72283],[72330,72345],[72751,72758],[72760,72767],[72850,72871],[72873,72886],[73009,73014],73018,[73020,73021],[73023,73029],73031,[73098,73102],[73104,73105],[73107,73111],[73459,73462],[73472,73473],73475,[73524,73530],[73534,73538],78912,[78919,78933],[92912,92916],[92976,92982],94031,[94033,94087],[94095,94098],[94192,94193],[113821,113822],[113824,113827],[118528,118573],[118576,118598],[119141,119145],[119149,119170],[119173,119179],[119210,119213],[119362,119364],[121344,121398],[121403,121452],121461,121476,[121499,121503],[121505,121519],[122880,122886],[122888,122904],[122907,122913],[122915,122916],[122918,122922],123023,[123184,123190],123566,[123628,123631],[124140,124143],[125136,125142],[125252,125258],917505,[917536,917631],[917760,917999]],Complex_Context:[[3585,3642],[3648,3662],[3713,3714],3716,[3718,3722],[3724,3747],3749,[3751,3773],[3776,3780],3782,[3784,3790],[3804,3807],[4096,4159],[4176,4239],[4250,4255],[6016,6099],6103,[6108,6109],[6480,6509],[6512,6516],[6528,6571],[6576,6601],6618,[6622,6623],[6688,6750],[6752,6780],[6816,6829],[43488,43503],[43514,43518],[43616,43714],[43739,43743],[71424,71450],[71453,71467],[71482,71483],[71487,71494]],Conditional_Japanese_Starter:[12353,12355,12357,12359,12361,12387,12419,12421,12423,12430,[12437,12438],12449,12451,12453,12455,12457,12483,12515,12517,12519,12526,[12533,12534],12540,[12784,12799],[65383,65392],110898,[110928,110930],110933,[110948,110951]],Contingent_Break:[65532],E_Base:[9757,9977,[9994,9997],127877,[127938,127940],127943,[127946,127948],[128066,128067],[128070,128080],[128102,128120],128124,[128129,128131],[128133,128135],128143,128145,128170,[128372,128373],128378,128400,[128405,128406],[128581,128583],[128587,128591],128675,[128692,128694],128704,128716,129292,129295,[129304,129311],129318,[129328,129337],[129340,129342],129399,[129461,129462],[129464,129465],129467,[129485,129487],[129489,129501],[129731,129733],[129776,129784]],E_Modifier:[[127995,127999]],Exclamation:[33,63,1478,1563,[1565,1567],1748,2041,[3853,3857],3860,[6146,6147],[6152,6153],[6468,6469],[10082,10083],11513,11518,11822,[11859,11860],42510,[43126,43127],[65045,65046],[65110,65111],65281,65311,[71108,71109],72817],Glue:[160,847,[860,866],3848,3852,3858,[4057,4058],6158,7629,7676,8199,8209,8239,[78896,78902],[78905,78907],94180],H2:[44032,44060,44088,44116,44144,44172,44200,44228,44256,44284,44312,44340,44368,44396,44424,44452,44480,44508,44536,44564,44592,44620,44648,44676,44704,44732,44760,44788,44816,44844,44872,44900,44928,44956,44984,45012,45040,45068,45096,45124,45152,45180,45208,45236,45264,45292,45320,45348,45376,45404,45432,45460,45488,45516,45544,45572,45600,45628,45656,45684,45712,45740,45768,45796,45824,45852,45880,45908,45936,45964,45992,46020,46048,46076,46104,46132,46160,46188,46216,46244,46272,46300,46328,46356,46384,46412,46440,46468,46496,46524,46552,46580,46608,46636,46664,46692,46720,46748,46776,46804,46832,46860,46888,46916,46944,46972,47e3,47028,47056,47084,47112,47140,47168,47196,47224,47252,47280,47308,47336,47364,47392,47420,47448,47476,47504,47532,47560,47588,47616,47644,47672,47700,47728,47756,47784,47812,47840,47868,47896,47924,47952,47980,48008,48036,48064,48092,48120,48148,48176,48204,48232,48260,48288,48316,48344,48372,48400,48428,48456,48484,48512,48540,48568,48596,48624,48652,48680,48708,48736,48764,48792,48820,48848,48876,48904,48932,48960,48988,49016,49044,49072,49100,49128,49156,49184,49212,49240,49268,49296,49324,49352,49380,49408,49436,49464,49492,49520,49548,49576,49604,49632,49660,49688,49716,49744,49772,49800,49828,49856,49884,49912,49940,49968,49996,50024,50052,50080,50108,50136,50164,50192,50220,50248,50276,50304,50332,50360,50388,50416,50444,50472,50500,50528,50556,50584,50612,50640,50668,50696,50724,50752,50780,50808,50836,50864,50892,50920,50948,50976,51004,51032,51060,51088,51116,51144,51172,51200,51228,51256,51284,51312,51340,51368,51396,51424,51452,51480,51508,51536,51564,51592,51620,51648,51676,51704,51732,51760,51788,51816,51844,51872,51900,51928,51956,51984,52012,52040,52068,52096,52124,52152,52180,52208,52236,52264,52292,52320,52348,52376,52404,52432,52460,52488,52516,52544,52572,52600,52628,52656,52684,52712,52740,52768,52796,52824,52852,52880,52908,52936,52964,52992,53020,53048,53076,53104,53132,53160,53188,53216,53244,53272,53300,53328,53356,53384,53412,53440,53468,53496,53524,53552,53580,53608,53636,53664,53692,53720,53748,53776,53804,53832,53860,53888,53916,53944,53972,54e3,54028,54056,54084,54112,54140,54168,54196,54224,54252,54280,54308,54336,54364,54392,54420,54448,54476,54504,54532,54560,54588,54616,54644,54672,54700,54728,54756,54784,54812,54840,54868,54896,54924,54952,54980,55008,55036,55064,55092,55120,55148,55176],H3:[[44033,44059],[44061,44087],[44089,44115],[44117,44143],[44145,44171],[44173,44199],[44201,44227],[44229,44255],[44257,44283],[44285,44311],[44313,44339],[44341,44367],[44369,44395],[44397,44423],[44425,44451],[44453,44479],[44481,44507],[44509,44535],[44537,44563],[44565,44591],[44593,44619],[44621,44647],[44649,44675],[44677,44703],[44705,44731],[44733,44759],[44761,44787],[44789,44815],[44817,44843],[44845,44871],[44873,44899],[44901,44927],[44929,44955],[44957,44983],[44985,45011],[45013,45039],[45041,45067],[45069,45095],[45097,45123],[45125,45151],[45153,45179],[45181,45207],[45209,45235],[45237,45263],[45265,45291],[45293,45319],[45321,45347],[45349,45375],[45377,45403],[45405,45431],[45433,45459],[45461,45487],[45489,45515],[45517,45543],[45545,45571],[45573,45599],[45601,45627],[45629,45655],[45657,45683],[45685,45711],[45713,45739],[45741,45767],[45769,45795],[45797,45823],[45825,45851],[45853,45879],[45881,45907],[45909,45935],[45937,45963],[45965,45991],[45993,46019],[46021,46047],[46049,46075],[46077,46103],[46105,46131],[46133,46159],[46161,46187],[46189,46215],[46217,46243],[46245,46271],[46273,46299],[46301,46327],[46329,46355],[46357,46383],[46385,46411],[46413,46439],[46441,46467],[46469,46495],[46497,46523],[46525,46551],[46553,46579],[46581,46607],[46609,46635],[46637,46663],[46665,46691],[46693,46719],[46721,46747],[46749,46775],[46777,46803],[46805,46831],[46833,46859],[46861,46887],[46889,46915],[46917,46943],[46945,46971],[46973,46999],[47001,47027],[47029,47055],[47057,47083],[47085,47111],[47113,47139],[47141,47167],[47169,47195],[47197,47223],[47225,47251],[47253,47279],[47281,47307],[47309,47335],[47337,47363],[47365,47391],[47393,47419],[47421,47447],[47449,47475],[47477,47503],[47505,47531],[47533,47559],[47561,47587],[47589,47615],[47617,47643],[47645,47671],[47673,47699],[47701,47727],[47729,47755],[47757,47783],[47785,47811],[47813,47839],[47841,47867],[47869,47895],[47897,47923],[47925,47951],[47953,47979],[47981,48007],[48009,48035],[48037,48063],[48065,48091],[48093,48119],[48121,48147],[48149,48175],[48177,48203],[48205,48231],[48233,48259],[48261,48287],[48289,48315],[48317,48343],[48345,48371],[48373,48399],[48401,48427],[48429,48455],[48457,48483],[48485,48511],[48513,48539],[48541,48567],[48569,48595],[48597,48623],[48625,48651],[48653,48679],[48681,48707],[48709,48735],[48737,48763],[48765,48791],[48793,48819],[48821,48847],[48849,48875],[48877,48903],[48905,48931],[48933,48959],[48961,48987],[48989,49015],[49017,49043],[49045,49071],[49073,49099],[49101,49127],[49129,49155],[49157,49183],[49185,49211],[49213,49239],[49241,49267],[49269,49295],[49297,49323],[49325,49351],[49353,49379],[49381,49407],[49409,49435],[49437,49463],[49465,49491],[49493,49519],[49521,49547],[49549,49575],[49577,49603],[49605,49631],[49633,49659],[49661,49687],[49689,49715],[49717,49743],[49745,49771],[49773,49799],[49801,49827],[49829,49855],[49857,49883],[49885,49911],[49913,49939],[49941,49967],[49969,49995],[49997,50023],[50025,50051],[50053,50079],[50081,50107],[50109,50135],[50137,50163],[50165,50191],[50193,50219],[50221,50247],[50249,50275],[50277,50303],[50305,50331],[50333,50359],[50361,50387],[50389,50415],[50417,50443],[50445,50471],[50473,50499],[50501,50527],[50529,50555],[50557,50583],[50585,50611],[50613,50639],[50641,50667],[50669,50695],[50697,50723],[50725,50751],[50753,50779],[50781,50807],[50809,50835],[50837,50863],[50865,50891],[50893,50919],[50921,50947],[50949,50975],[50977,51003],[51005,51031],[51033,51059],[51061,51087],[51089,51115],[51117,51143],[51145,51171],[51173,51199],[51201,51227],[51229,51255],[51257,51283],[51285,51311],[51313,51339],[51341,51367],[51369,51395],[51397,51423],[51425,51451],[51453,51479],[51481,51507],[51509,51535],[51537,51563],[51565,51591],[51593,51619],[51621,51647],[51649,51675],[51677,51703],[51705,51731],[51733,51759],[51761,51787],[51789,51815],[51817,51843],[51845,51871],[51873,51899],[51901,51927],[51929,51955],[51957,51983],[51985,52011],[52013,52039],[52041,52067],[52069,52095],[52097,52123],[52125,52151],[52153,52179],[52181,52207],[52209,52235],[52237,52263],[52265,52291],[52293,52319],[52321,52347],[52349,52375],[52377,52403],[52405,52431],[52433,52459],[52461,52487],[52489,52515],[52517,52543],[52545,52571],[52573,52599],[52601,52627],[52629,52655],[52657,52683],[52685,52711],[52713,52739],[52741,52767],[52769,52795],[52797,52823],[52825,52851],[52853,52879],[52881,52907],[52909,52935],[52937,52963],[52965,52991],[52993,53019],[53021,53047],[53049,53075],[53077,53103],[53105,53131],[53133,53159],[53161,53187],[53189,53215],[53217,53243],[53245,53271],[53273,53299],[53301,53327],[53329,53355],[53357,53383],[53385,53411],[53413,53439],[53441,53467],[53469,53495],[53497,53523],[53525,53551],[53553,53579],[53581,53607],[53609,53635],[53637,53663],[53665,53691],[53693,53719],[53721,53747],[53749,53775],[53777,53803],[53805,53831],[53833,53859],[53861,53887],[53889,53915],[53917,53943],[53945,53971],[53973,53999],[54001,54027],[54029,54055],[54057,54083],[54085,54111],[54113,54139],[54141,54167],[54169,54195],[54197,54223],[54225,54251],[54253,54279],[54281,54307],[54309,54335],[54337,54363],[54365,54391],[54393,54419],[54421,54447],[54449,54475],[54477,54503],[54505,54531],[54533,54559],[54561,54587],[54589,54615],[54617,54643],[54645,54671],[54673,54699],[54701,54727],[54729,54755],[54757,54783],[54785,54811],[54813,54839],[54841,54867],[54869,54895],[54897,54923],[54925,54951],[54953,54979],[54981,55007],[55009,55035],[55037,55063],[55065,55091],[55093,55119],[55121,55147],[55149,55175],[55177,55203]],Hebrew_Letter:[[1488,1514],[1519,1522],64285,[64287,64296],[64298,64310],[64312,64316],64318,[64320,64321],[64323,64324],[64326,64335]],Hyphen:[45],Ideographic:[[8986,8987],[9200,9203],[9728,9731],[9748,9749],9752,[9754,9756],[9758,9759],[9785,9787],9832,9855,[9917,9928],9933,[9935,9937],[9939,9940],[9944,9945],9948,[9951,9953],9962,[9969,9973],[9975,9976],9978,[9981,9988],[9992,9993],10084,[11904,11929],[11931,12019],[12032,12245],[12272,12283],[12291,12292],[12294,12295],[12306,12307],[12320,12329],[12336,12340],[12342,12346],[12349,12351],12354,12356,12358,12360,[12362,12386],[12388,12418],12420,12422,[12424,12429],[12431,12436],12447,12450,12452,12454,12456,[12458,12482],[12484,12514],12516,12518,[12520,12525],[12527,12532],[12535,12538],12543,[12549,12591],[12593,12686],[12688,12771],[12800,12830],[12832,12871],[12880,19903],[19968,40980],[40982,42124],[42128,42182],[63744,64255],[65072,65076],[65093,65094],[65097,65103],65105,65112,[65119,65126],65128,65131,[65282,65283],[65286,65287],[65290,65291],65293,[65295,65305],[65308,65310],[65312,65338],65340,[65342,65370],65372,65374,65382,[65393,65437],[65440,65470],[65474,65479],[65482,65487],[65490,65495],[65498,65500],[65506,65508],[73541,73551],[94208,100343],[100352,101119],[101632,101640],[110592,110882],[110960,111355],[126976,127231],[127245,127247],[127341,127343],[127405,127461],[127488,127876],[127878,127899],[127902,127924],[127927,127931],[127933,127937],[127941,127942],[127944,127945],[127949,127994],[128e3,128065],[128068,128069],[128081,128101],[128121,128123],[128125,128128],128132,[128136,128142],128144,[128146,128159],128161,128163,[128165,128169],[128171,128174],128176,[128179,128255],[128263,128278],[128293,128305],[128330,128371],[128374,128377],[128379,128399],[128401,128404],[128407,128467],[128476,128499],[128506,128580],[128584,128586],[128640,128674],[128676,128691],[128695,128703],[128705,128715],[128717,128767],[128884,128895],[128981,129023],[129036,129039],[129096,129103],[129114,129119],[129160,129167],[129198,129279],[129293,129294],[129296,129303],[129312,129317],[129319,129327],[129338,129339],[129343,129398],[129400,129460],129463,129466,[129468,129484],129488,[129502,129535],[129620,129730],[129734,129775],[129785,129791],[130048,131069],[131072,196605],[196608,262141]],Infix_Numeric:[44,46,[58,59],894,1417,[1548,1549],2040,8260,65040,[65043,65044]],Inseparable:[[8228,8230],8943,65049,68342],JL:[[4352,4447],[43360,43388]],JT:[[4520,4607],[55243,55291]],JV:[[4448,4519],[55216,55238]],Line_Feed:[10],Mandatory_Break:[[11,12],[8232,8233]],Next_Line:[133],Nonstarter:[6102,[8252,8253],[8263,8265],12293,12316,[12347,12348],[12443,12446],12448,12539,[12541,12542],40981,[65108,65109],[65306,65307],65381,[65438,65439],[94176,94179],[128633,128635]],Numeric:[[48,57],[1632,1641],[1643,1644],[1776,1785],[1984,1993],[2406,2415],[2534,2543],[2662,2671],[2790,2799],[2918,2927],[3046,3055],[3174,3183],[3302,3311],[3430,3439],[3558,3567],[3664,3673],[3792,3801],[3872,3881],[4160,4169],[4240,4249],[6112,6121],[6160,6169],[6470,6479],[6608,6617],[6784,6793],[6800,6809],[6992,7001],[7088,7097],[7232,7241],[7248,7257],[42528,42537],[43216,43225],[43264,43273],[43472,43481],[43504,43513],[43600,43609],[44016,44025],[66720,66729],[68912,68921],[69734,69743],[69872,69881],[69942,69951],[70096,70105],[70384,70393],[70736,70745],[70864,70873],[71248,71257],[71360,71369],[71472,71481],[71904,71913],[72016,72025],[72784,72793],[73040,73049],[73120,73129],[73552,73561],[92768,92777],[92864,92873],[93008,93017],[120782,120831],[123200,123209],[123632,123641],[124144,124153],[125264,125273],[130032,130041]],Open_Punctuation:[40,91,123,161,191,3898,3900,5787,8218,8222,8261,8317,8333,8968,8970,9001,10088,10090,10092,10094,10096,10098,10100,10181,10214,10216,10218,10220,10222,10627,10629,10631,10633,10635,10637,10639,10641,10643,10645,10647,10712,10714,10748,11800,11810,11812,11814,11816,11842,11861,11863,11865,11867,12296,12298,12300,12302,12304,12308,12310,12312,12314,12317,64831,65047,65077,65079,65081,65083,65085,65087,65089,65091,65095,65113,65115,65117,65288,65339,65371,65375,65378,[78424,78426],78470,78472,78713,78903,78908,78910,83406,[125278,125279]],Postfix_Numeric:[37,162,176,[1545,1547],1642,[2546,2547],2553,3449,[8240,8247],8279,8359,8374,8379,8382,8384,8451,8457,43064,65020,65130,65285,65504,[73693,73696],126124,126128],Prefix_Numeric:[36,43,92,[163,165],177,1423,[2046,2047],2555,2801,3065,3647,6107,[8352,8358],[8360,8373],[8375,8378],[8380,8381],8383,[8385,8399],8470,[8722,8723],65129,65284,65505,[65509,65510],123647],Quotation:[34,39,171,187,[8216,8217],[8219,8221],8223,[8249,8250],[10075,10080],[11776,11789],[11804,11805],[11808,11809],[128630,128632]],Regional_Indicator:[[127462,127487]],Space:[32],Surrogate:[[55296,57343]],Unknown:[[888,889],[896,899],907,909,930,1328,[1367,1368],[1419,1420],1424,[1480,1487],[1515,1518],[1525,1535],1806,[1867,1868],[1970,1983],[2043,2044],[2094,2095],2111,[2140,2141],2143,[2155,2159],2191,[2194,2199],2436,[2445,2446],[2449,2450],2473,2481,[2483,2485],[2490,2491],[2501,2502],[2505,2506],[2511,2518],[2520,2523],2526,[2532,2533],[2559,2560],2564,[2571,2574],[2577,2578],2601,2609,2612,2615,[2618,2619],2621,[2627,2630],[2633,2634],[2638,2640],[2642,2648],2653,[2655,2661],[2679,2688],2692,2702,2706,2729,2737,2740,[2746,2747],2758,2762,[2766,2767],[2769,2783],[2788,2789],[2802,2808],2816,2820,[2829,2830],[2833,2834],2857,2865,2868,[2874,2875],[2885,2886],[2889,2890],[2894,2900],[2904,2907],2910,[2916,2917],[2936,2945],2948,[2955,2957],2961,[2966,2968],2971,2973,[2976,2978],[2981,2983],[2987,2989],[3002,3005],[3011,3013],3017,[3022,3023],[3025,3030],[3032,3045],[3067,3071],3085,3089,3113,[3130,3131],3141,3145,[3150,3156],3159,[3163,3164],[3166,3167],[3172,3173],[3184,3190],3213,3217,3241,3252,[3258,3259],3269,3273,[3278,3284],[3287,3292],3295,[3300,3301],3312,[3316,3327],3341,3345,3397,3401,[3408,3411],[3428,3429],3456,3460,[3479,3481],3506,3516,[3518,3519],[3527,3529],[3531,3534],3541,3543,[3552,3557],[3568,3569],[3573,3584],[3643,3646],[3676,3712],3715,3717,3723,3748,3750,[3774,3775],3781,3783,3791,[3802,3803],[3808,3839],3912,[3949,3952],3992,4029,4045,[4059,4095],4294,[4296,4300],[4302,4303],4681,[4686,4687],4695,4697,[4702,4703],4745,[4750,4751],4785,[4790,4791],4799,4801,[4806,4807],4823,4881,[4886,4887],[4955,4956],[4989,4991],[5018,5023],[5110,5111],[5118,5119],[5789,5791],[5881,5887],[5910,5918],[5943,5951],[5972,5983],5997,6001,[6004,6015],[6110,6111],[6122,6127],[6138,6143],[6170,6175],[6265,6271],[6315,6319],[6390,6399],6431,[6444,6447],[6460,6463],[6465,6467],[6510,6511],[6517,6527],[6572,6575],[6602,6607],[6619,6621],[6684,6685],6751,[6781,6782],[6794,6799],[6810,6815],[6830,6831],[6863,6911],[6989,6991],7039,[7156,7163],[7224,7226],[7242,7244],[7305,7311],[7355,7356],[7368,7375],[7419,7423],[7958,7959],[7966,7967],[8006,8007],[8014,8015],8024,8026,8028,8030,[8062,8063],8117,8133,[8148,8149],8156,[8176,8177],8181,8191,8293,[8306,8307],8335,[8349,8351],[8433,8447],[8588,8591],[9255,9279],[9291,9311],[11124,11125],11158,[11508,11512],11558,[11560,11564],[11566,11567],[11624,11630],[11633,11646],[11671,11679],11687,11695,11703,11711,11719,11727,11735,11743,[11870,11903],11930,[12020,12031],[12246,12271],[12284,12287],12352,[12439,12440],[12544,12548],12592,12687,[12772,12783],12831,[42125,42127],[42183,42191],[42540,42559],[42744,42751],[42955,42959],42962,42964,[42970,42993],[43053,43055],[43066,43071],[43128,43135],[43206,43213],[43226,43231],[43348,43358],[43389,43391],43470,[43482,43485],43519,[43575,43583],[43598,43599],[43610,43611],[43715,43738],[43767,43776],[43783,43784],[43791,43792],[43799,43807],43815,43823,[43884,43887],[44014,44015],[44026,44031],[55204,55215],[55239,55242],[55292,55295],[57344,63743],[64263,64274],[64280,64284],64311,64317,64319,64322,64325,[64451,64466],[64912,64913],[64968,64974],[64976,65007],[65050,65055],65107,65127,[65132,65135],65141,[65277,65278],65280,[65471,65473],[65480,65481],[65488,65489],[65496,65497],[65501,65503],65511,[65519,65528],[65534,65535],65548,65575,65595,65598,[65614,65615],[65630,65663],[65787,65791],[65795,65798],[65844,65846],65935,[65949,65951],[65953,65999],[66046,66175],[66205,66207],[66257,66271],[66300,66303],[66340,66348],[66379,66383],[66427,66431],66462,[66500,66503],[66518,66559],[66718,66719],[66730,66735],[66772,66775],[66812,66815],[66856,66863],[66916,66926],66939,66955,66963,66966,66978,66994,67002,[67005,67071],[67383,67391],[67414,67423],[67432,67455],67462,67505,[67515,67583],[67590,67591],67593,67638,[67641,67643],[67645,67646],67670,[67743,67750],[67760,67807],67827,[67830,67834],[67868,67870],[67898,67902],[67904,67967],[68024,68027],[68048,68049],68100,[68103,68107],68116,68120,[68150,68151],[68155,68158],[68169,68175],[68185,68191],[68256,68287],[68327,68330],[68343,68351],[68406,68408],[68438,68439],[68467,68471],[68498,68504],[68509,68520],[68528,68607],[68681,68735],[68787,68799],[68851,68857],[68904,68911],[68922,69215],69247,69290,[69294,69295],[69298,69372],[69416,69423],[69466,69487],[69514,69551],[69580,69599],[69623,69631],[69710,69713],[69750,69758],[69827,69836],[69838,69839],[69865,69871],[69882,69887],69941,[69960,69967],[70007,70015],70112,[70133,70143],70162,[70210,70271],70279,70281,70286,70302,[70314,70319],[70379,70383],[70394,70399],70404,[70413,70414],[70417,70418],70441,70449,70452,70458,[70469,70470],[70473,70474],[70478,70479],[70481,70486],[70488,70492],[70500,70501],[70509,70511],[70517,70655],70748,[70754,70783],[70856,70863],[70874,71039],[71094,71095],[71134,71167],[71237,71247],[71258,71263],[71277,71295],[71354,71359],[71370,71423],[71451,71452],[71468,71471],[71495,71679],[71740,71839],[71923,71934],[71943,71944],[71946,71947],71956,71959,71990,[71993,71994],[72007,72015],[72026,72095],[72104,72105],[72152,72153],[72165,72191],[72264,72271],[72355,72367],[72441,72447],[72458,72703],72713,72759,[72774,72783],[72813,72815],[72848,72849],72872,[72887,72959],72967,72970,[73015,73017],73019,73022,[73032,73039],[73050,73055],73062,73065,73103,73106,[73113,73119],[73130,73439],[73465,73471],73489,[73531,73533],[73562,73647],[73649,73663],[73714,73726],[74650,74751],74863,[74869,74879],[75076,77711],[77811,77823],[78934,82943],[83527,92159],[92729,92735],92767,[92778,92781],92863,[92874,92879],[92910,92911],[92918,92927],[92998,93007],93018,93026,[93048,93052],[93072,93759],[93851,93951],[94027,94030],[94088,94094],[94112,94175],[94181,94191],[94194,94207],[100344,100351],[101590,101631],[101641,110575],110580,110588,110591,[110883,110897],[110899,110927],[110931,110932],[110934,110947],[110952,110959],[111356,113663],[113771,113775],[113789,113791],[113801,113807],[113818,113819],[113828,118527],[118574,118575],[118599,118607],[118724,118783],[119030,119039],[119079,119080],[119275,119295],[119366,119487],[119508,119519],[119540,119551],[119639,119647],[119673,119807],119893,119965,[119968,119969],[119971,119972],[119975,119976],119981,119994,119996,120004,120070,[120075,120076],120085,120093,120122,120127,120133,[120135,120137],120145,[120486,120487],[120780,120781],[121484,121498],121504,[121520,122623],[122655,122660],[122667,122879],122887,[122905,122906],122914,122917,[122923,122927],[122990,123022],[123024,123135],[123181,123183],[123198,123199],[123210,123213],[123216,123535],[123567,123583],[123642,123646],[123648,124111],[124154,124895],124903,124908,124911,124927,[125125,125126],[125143,125183],[125260,125263],[125274,125277],[125280,126064],[126133,126208],[126270,126463],126468,126496,126499,[126501,126502],126504,126515,126520,126522,[126524,126529],[126531,126534],126536,126538,126540,126544,126547,[126549,126550],126552,126554,126556,126558,126560,126563,[126565,126566],126571,126579,126584,126589,126591,126602,[126620,126624],126628,126634,[126652,126703],[126706,126975],[131070,131071],[196606,196607],[262142,917504],[917506,917535],[917632,917759],[918e3,1114111]],Word_Joiner:[8288,65279],ZWJ:[8205],ZWSpace:[8203]},Symbol.toStringTag,{value:"Module"})),Script:Object.freeze(Object.defineProperty({__proto__:null,Adlam:[[125184,125259],[125264,125273],[125278,125279]],Ahom:[[71424,71450],[71453,71467],[71472,71494]],Anatolian_Hieroglyphs:[[82944,83526]],Arabic:[[1536,1540],[1542,1547],[1549,1562],[1564,1566],[1568,1599],[1601,1610],[1622,1647],[1649,1756],[1758,1791],[1872,1919],[2160,2190],[2192,2193],[2200,2273],[2275,2303],[64336,64450],[64467,64829],[64832,64911],[64914,64967],64975,[65008,65023],[65136,65140],[65142,65276],[69216,69246],[69373,69375],[126464,126467],[126469,126495],[126497,126498],126500,126503,[126505,126514],[126516,126519],126521,126523,126530,126535,126537,126539,[126541,126543],[126545,126546],126548,126551,126553,126555,126557,126559,[126561,126562],126564,[126567,126570],[126572,126578],[126580,126583],[126585,126588],126590,[126592,126601],[126603,126619],[126625,126627],[126629,126633],[126635,126651],[126704,126705]],Armenian:[[1329,1366],[1369,1418],[1421,1423],[64275,64279]],Avestan:[[68352,68405],[68409,68415]],Balinese:[[6912,6988],[6992,7038]],Bamum:[[42656,42743],[92160,92728]],Bassa_Vah:[[92880,92909],[92912,92917]],Batak:[[7104,7155],[7164,7167]],Bengali:[[2432,2435],[2437,2444],[2447,2448],[2451,2472],[2474,2480],2482,[2486,2489],[2492,2500],[2503,2504],[2507,2510],2519,[2524,2525],[2527,2531],[2534,2558]],Bhaiksuki:[[72704,72712],[72714,72758],[72760,72773],[72784,72812]],Bopomofo:[[746,747],[12549,12591],[12704,12735]],Brahmi:[[69632,69709],[69714,69749],69759],Braille:[[10240,10495]],Buginese:[[6656,6683],[6686,6687]],Buhid:[[5952,5971]],Canadian_Aboriginal:[[5120,5759],[6320,6389],[72368,72383]],Carian:[[66208,66256]],Caucasian_Albanian:[[66864,66915],66927],Chakma:[[69888,69940],[69942,69959]],Cham:[[43520,43574],[43584,43597],[43600,43609],[43612,43615]],Cherokee:[[5024,5109],[5112,5117],[43888,43967]],Chorasmian:[[69552,69579]],Common:[[0,64],[91,96],[123,169],[171,185],[187,191],215,247,[697,735],[741,745],[748,767],884,894,901,903,1541,1548,1563,1567,1600,1757,2274,[2404,2405],3647,[4053,4056],4347,[5867,5869],[5941,5942],[6146,6147],6149,7379,7393,[7401,7404],[7406,7411],[7413,7415],7418,[8192,8203],[8206,8292],[8294,8304],[8308,8318],[8320,8334],[8352,8384],[8448,8485],[8487,8489],[8492,8497],[8499,8525],[8527,8543],[8585,8587],[8592,9254],[9280,9290],[9312,10239],[10496,11123],[11126,11157],[11159,11263],[11776,11869],[12272,12283],[12288,12292],12294,[12296,12320],[12336,12343],[12348,12351],[12443,12444],12448,[12539,12540],[12688,12703],[12736,12771],[12832,12895],[12927,13007],13055,[13144,13311],[19904,19967],[42752,42785],[42888,42890],[43056,43065],43310,43471,43867,[43882,43883],[64830,64831],[65040,65049],[65072,65106],[65108,65126],[65128,65131],65279,[65281,65312],[65339,65344],[65371,65381],65392,[65438,65439],[65504,65510],[65512,65518],[65529,65533],[65792,65794],[65799,65843],[65847,65855],[65936,65948],[66e3,66044],[66273,66299],[113824,113827],[118608,118723],[118784,119029],[119040,119078],[119081,119142],[119146,119162],[119171,119172],[119180,119209],[119214,119274],[119488,119507],[119520,119539],[119552,119638],[119648,119672],[119808,119892],[119894,119964],[119966,119967],119970,[119973,119974],[119977,119980],[119982,119993],119995,[119997,120003],[120005,120069],[120071,120074],[120077,120084],[120086,120092],[120094,120121],[120123,120126],[120128,120132],120134,[120138,120144],[120146,120485],[120488,120779],[120782,120831],[126065,126132],[126209,126269],[126976,127019],[127024,127123],[127136,127150],[127153,127167],[127169,127183],[127185,127221],[127232,127405],[127462,127487],[127489,127490],[127504,127547],[127552,127560],[127568,127569],[127584,127589],[127744,128727],[128732,128748],[128752,128764],[128768,128886],[128891,128985],[128992,129003],129008,[129024,129035],[129040,129095],[129104,129113],[129120,129159],[129168,129197],[129200,129201],[129280,129619],[129632,129645],[129648,129660],[129664,129672],[129680,129725],[129727,129733],[129742,129755],[129760,129768],[129776,129784],[129792,129938],[129940,129994],[130032,130041],917505,[917536,917631]],Coptic:[[994,1007],[11392,11507],[11513,11519]],Cuneiform:[[73728,74649],[74752,74862],[74864,74868],[74880,75075]],Cypriot:[[67584,67589],67592,[67594,67637],[67639,67640],67644,67647],Cypro_Minoan:[[77712,77810]],Cyrillic:[[1024,1156],[1159,1327],[7296,7304],7467,7544,[11744,11775],[42560,42655],[65070,65071],[122928,122989],123023],Deseret:[[66560,66639]],Devanagari:[[2304,2384],[2389,2403],[2406,2431],[43232,43263],[72448,72457]],Dives_Akuru:[[71936,71942],71945,[71948,71955],[71957,71958],[71960,71989],[71991,71992],[71995,72006],[72016,72025]],Dogra:[[71680,71739]],Duployan:[[113664,113770],[113776,113788],[113792,113800],[113808,113817],[113820,113823]],Egyptian_Hieroglyphs:[[77824,78933]],Elbasan:[[66816,66855]],Elymaic:[[69600,69622]],Ethiopic:[[4608,4680],[4682,4685],[4688,4694],4696,[4698,4701],[4704,4744],[4746,4749],[4752,4784],[4786,4789],[4792,4798],4800,[4802,4805],[4808,4822],[4824,4880],[4882,4885],[4888,4954],[4957,4988],[4992,5017],[11648,11670],[11680,11686],[11688,11694],[11696,11702],[11704,11710],[11712,11718],[11720,11726],[11728,11734],[11736,11742],[43777,43782],[43785,43790],[43793,43798],[43808,43814],[43816,43822],[124896,124902],[124904,124907],[124909,124910],[124912,124926]],Georgian:[[4256,4293],4295,4301,[4304,4346],[4348,4351],[7312,7354],[7357,7359],[11520,11557],11559,11565],Glagolitic:[[11264,11359],[122880,122886],[122888,122904],[122907,122913],[122915,122916],[122918,122922]],Gothic:[[66352,66378]],Grantha:[[70400,70403],[70405,70412],[70415,70416],[70419,70440],[70442,70448],[70450,70451],[70453,70457],[70460,70468],[70471,70472],[70475,70477],70480,70487,[70493,70499],[70502,70508],[70512,70516]],Greek:[[880,883],[885,887],[890,893],895,900,902,[904,906],908,[910,929],[931,993],[1008,1023],[7462,7466],[7517,7521],[7526,7530],7615,[7936,7957],[7960,7965],[7968,8005],[8008,8013],[8016,8023],8025,8027,8029,[8031,8061],[8064,8116],[8118,8132],[8134,8147],[8150,8155],[8157,8175],[8178,8180],[8182,8190],8486,43877,[65856,65934],65952,[119296,119365]],Gujarati:[[2689,2691],[2693,2701],[2703,2705],[2707,2728],[2730,2736],[2738,2739],[2741,2745],[2748,2757],[2759,2761],[2763,2765],2768,[2784,2787],[2790,2801],[2809,2815]],Gunjala_Gondi:[[73056,73061],[73063,73064],[73066,73102],[73104,73105],[73107,73112],[73120,73129]],Gurmukhi:[[2561,2563],[2565,2570],[2575,2576],[2579,2600],[2602,2608],[2610,2611],[2613,2614],[2616,2617],2620,[2622,2626],[2631,2632],[2635,2637],2641,[2649,2652],2654,[2662,2678]],Han:[[11904,11929],[11931,12019],[12032,12245],12293,12295,[12321,12329],[12344,12347],[13312,19903],[19968,40959],[63744,64109],[64112,64217],[94178,94179],[94192,94193],[131072,173791],[173824,177977],[177984,178205],[178208,183969],[183984,191456],[194560,195101],[196608,201546],[201552,205743]],Hangul:[[4352,4607],[12334,12335],[12593,12686],[12800,12830],[12896,12926],[43360,43388],[44032,55203],[55216,55238],[55243,55291],[65440,65470],[65474,65479],[65482,65487],[65490,65495],[65498,65500]],Hanifi_Rohingya:[[68864,68903],[68912,68921]],Hanunoo:[[5920,5940]],Hatran:[[67808,67826],[67828,67829],[67835,67839]],Hebrew:[[1425,1479],[1488,1514],[1519,1524],[64285,64310],[64312,64316],64318,[64320,64321],[64323,64324],[64326,64335]],Hiragana:[[12353,12438],[12445,12447],[110593,110879],110898,[110928,110930],127488],Imperial_Aramaic:[[67648,67669],[67671,67679]],Inherited:[[768,879],[1157,1158],[1611,1621],1648,[2385,2388],[6832,6862],[7376,7378],[7380,7392],[7394,7400],7405,7412,[7416,7417],[7616,7679],[8204,8205],[8400,8432],[12330,12333],[12441,12442],[65024,65039],[65056,65069],66045,66272,70459,[118528,118573],[118576,118598],[119143,119145],[119163,119170],[119173,119179],[119210,119213],[917760,917999]],Inscriptional_Pahlavi:[[68448,68466],[68472,68479]],Inscriptional_Parthian:[[68416,68437],[68440,68447]],Javanese:[[43392,43469],[43472,43481],[43486,43487]],Kaithi:[[69760,69826],69837],Kannada:[[3200,3212],[3214,3216],[3218,3240],[3242,3251],[3253,3257],[3260,3268],[3270,3272],[3274,3277],[3285,3286],[3293,3294],[3296,3299],[3302,3311],[3313,3315]],Katakana:[[12449,12538],[12541,12543],[12784,12799],[13008,13054],[13056,13143],[65382,65391],[65393,65437],[110576,110579],[110581,110587],[110589,110590],110592,[110880,110882],110933,[110948,110951]],Kawi:[[73472,73488],[73490,73530],[73534,73561]],Kayah_Li:[[43264,43309],43311],Kharoshthi:[[68096,68099],[68101,68102],[68108,68115],[68117,68119],[68121,68149],[68152,68154],[68159,68168],[68176,68184]],Khitan_Small_Script:[94180,[101120,101589]],Khmer:[[6016,6109],[6112,6121],[6128,6137],[6624,6655]],Khojki:[[70144,70161],[70163,70209]],Khudawadi:[[70320,70378],[70384,70393]],Lao:[[3713,3714],3716,[3718,3722],[3724,3747],3749,[3751,3773],[3776,3780],3782,[3784,3790],[3792,3801],[3804,3807]],Latin:[[65,90],[97,122],170,186,[192,214],[216,246],[248,696],[736,740],[7424,7461],[7468,7516],[7522,7525],[7531,7543],[7545,7614],[7680,7935],8305,8319,[8336,8348],[8490,8491],8498,8526,[8544,8584],[11360,11391],[42786,42887],[42891,42954],[42960,42961],42963,[42965,42969],[42994,43007],[43824,43866],[43868,43876],[43878,43881],[64256,64262],[65313,65338],[65345,65370],[67456,67461],[67463,67504],[67506,67514],[122624,122654],[122661,122666]],Lepcha:[[7168,7223],[7227,7241],[7245,7247]],Limbu:[[6400,6430],[6432,6443],[6448,6459],6464,[6468,6479]],Linear_A:[[67072,67382],[67392,67413],[67424,67431]],Linear_B:[[65536,65547],[65549,65574],[65576,65594],[65596,65597],[65599,65613],[65616,65629],[65664,65786]],Lisu:[[42192,42239],73648],Lycian:[[66176,66204]],Lydian:[[67872,67897],67903],Mahajani:[[69968,70006]],Makasar:[[73440,73464]],Malayalam:[[3328,3340],[3342,3344],[3346,3396],[3398,3400],[3402,3407],[3412,3427],[3430,3455]],Mandaic:[[2112,2139],2142],Manichaean:[[68288,68326],[68331,68342]],Marchen:[[72816,72847],[72850,72871],[72873,72886]],Masaram_Gondi:[[72960,72966],[72968,72969],[72971,73014],73018,[73020,73021],[73023,73031],[73040,73049]],Medefaidrin:[[93760,93850]],Meetei_Mayek:[[43744,43766],[43968,44013],[44016,44025]],Mende_Kikakui:[[124928,125124],[125127,125142]],Meroitic_Cursive:[[68e3,68023],[68028,68047],[68050,68095]],Meroitic_Hieroglyphs:[[67968,67999]],Miao:[[93952,94026],[94031,94087],[94095,94111]],Modi:[[71168,71236],[71248,71257]],Mongolian:[[6144,6145],6148,[6150,6169],[6176,6264],[6272,6314],[71264,71276]],Mro:[[92736,92766],[92768,92777],[92782,92783]],Multani:[[70272,70278],70280,[70282,70285],[70287,70301],[70303,70313]],Myanmar:[[4096,4255],[43488,43518],[43616,43647]],Nabataean:[[67712,67742],[67751,67759]],Nag_Mundari:[[124112,124153]],Nandinagari:[[72096,72103],[72106,72151],[72154,72164]],New_Tai_Lue:[[6528,6571],[6576,6601],[6608,6618],[6622,6623]],Newa:[[70656,70747],[70749,70753]],Nko:[[1984,2042],[2045,2047]],Nushu:[94177,[110960,111355]],Nyiakeng_Puachue_Hmong:[[123136,123180],[123184,123197],[123200,123209],[123214,123215]],Ogham:[[5760,5788]],Ol_Chiki:[[7248,7295]],Old_Hungarian:[[68736,68786],[68800,68850],[68858,68863]],Old_Italic:[[66304,66339],[66349,66351]],Old_North_Arabian:[[68224,68255]],Old_Permic:[[66384,66426]],Old_Persian:[[66464,66499],[66504,66517]],Old_Sogdian:[[69376,69415]],Old_South_Arabian:[[68192,68223]],Old_Turkic:[[68608,68680]],Old_Uyghur:[[69488,69513]],Oriya:[[2817,2819],[2821,2828],[2831,2832],[2835,2856],[2858,2864],[2866,2867],[2869,2873],[2876,2884],[2887,2888],[2891,2893],[2901,2903],[2908,2909],[2911,2915],[2918,2935]],Osage:[[66736,66771],[66776,66811]],Osmanya:[[66688,66717],[66720,66729]],Pahawh_Hmong:[[92928,92997],[93008,93017],[93019,93025],[93027,93047],[93053,93071]],Palmyrene:[[67680,67711]],Pau_Cin_Hau:[[72384,72440]],Phags_Pa:[[43072,43127]],Phoenician:[[67840,67867],67871],Psalter_Pahlavi:[[68480,68497],[68505,68508],[68521,68527]],Rejang:[[43312,43347],43359],Runic:[[5792,5866],[5870,5880]],Samaritan:[[2048,2093],[2096,2110]],Saurashtra:[[43136,43205],[43214,43225]],Sharada:[[70016,70111]],Shavian:[[66640,66687]],Siddham:[[71040,71093],[71096,71133]],SignWriting:[[120832,121483],[121499,121503],[121505,121519]],Sinhala:[[3457,3459],[3461,3478],[3482,3505],[3507,3515],3517,[3520,3526],3530,[3535,3540],3542,[3544,3551],[3558,3567],[3570,3572],[70113,70132]],Sogdian:[[69424,69465]],Sora_Sompeng:[[69840,69864],[69872,69881]],Soyombo:[[72272,72354]],Sundanese:[[7040,7103],[7360,7367]],Syloti_Nagri:[[43008,43052]],Syriac:[[1792,1805],[1807,1866],[1869,1871],[2144,2154]],Tagalog:[[5888,5909],5919],Tagbanwa:[[5984,5996],[5998,6e3],[6002,6003]],Tai_Le:[[6480,6509],[6512,6516]],Tai_Tham:[[6688,6750],[6752,6780],[6783,6793],[6800,6809],[6816,6829]],Tai_Viet:[[43648,43714],[43739,43743]],Takri:[[71296,71353],[71360,71369]],Tamil:[[2946,2947],[2949,2954],[2958,2960],[2962,2965],[2969,2970],2972,[2974,2975],[2979,2980],[2984,2986],[2990,3001],[3006,3010],[3014,3016],[3018,3021],3024,3031,[3046,3066],[73664,73713],73727],Tangsa:[[92784,92862],[92864,92873]],Tangut:[94176,[94208,100343],[100352,101119],[101632,101640]],Telugu:[[3072,3084],[3086,3088],[3090,3112],[3114,3129],[3132,3140],[3142,3144],[3146,3149],[3157,3158],[3160,3162],3165,[3168,3171],[3174,3183],[3191,3199]],Thaana:[[1920,1969]],Thai:[[3585,3642],[3648,3675]],Tibetan:[[3840,3911],[3913,3948],[3953,3991],[3993,4028],[4030,4044],[4046,4052],[4057,4058]],Tifinagh:[[11568,11623],[11631,11632],11647],Tirhuta:[[70784,70855],[70864,70873]],Toto:[[123536,123566]],Ugaritic:[[66432,66461],66463],Vai:[[42240,42539]],Vithkuqi:[[66928,66938],[66940,66954],[66956,66962],[66964,66965],[66967,66977],[66979,66993],[66995,67001],[67003,67004]],Wancho:[[123584,123641],123647],Warang_Citi:[[71840,71922],71935],Yezidi:[[69248,69289],[69291,69293],[69296,69297]],Yi:[[40960,42124],[42128,42182]],Zanabazar_Square:[[72192,72263]]},Symbol.toStringTag,{value:"Module"})),Script_Extensions:Object.freeze(Object.defineProperty({__proto__:null,Adlam:[1567,1600,[125184,125259],[125264,125273],[125278,125279]],Ahom:[[71424,71450],[71453,71467],[71472,71494]],Anatolian_Hieroglyphs:[[82944,83526]],Arabic:[[1536,1540],[1542,1756],[1758,1791],[1872,1919],[2160,2190],[2192,2193],[2200,2273],[2275,2303],[64336,64450],[64467,64911],[64914,64967],64975,[65008,65023],[65136,65140],[65142,65276],[66272,66299],[69216,69246],[69373,69375],[126464,126467],[126469,126495],[126497,126498],126500,126503,[126505,126514],[126516,126519],126521,126523,126530,126535,126537,126539,[126541,126543],[126545,126546],126548,126551,126553,126555,126557,126559,[126561,126562],126564,[126567,126570],[126572,126578],[126580,126583],[126585,126588],126590,[126592,126601],[126603,126619],[126625,126627],[126629,126633],[126635,126651],[126704,126705]],Armenian:[[1329,1366],[1369,1418],[1421,1423],[64275,64279]],Avestan:[[68352,68405],[68409,68415]],Balinese:[[6912,6988],[6992,7038]],Bamum:[[42656,42743],[92160,92728]],Bassa_Vah:[[92880,92909],[92912,92917]],Batak:[[7104,7155],[7164,7167]],Bengali:[[2385,2386],[2404,2405],[2432,2435],[2437,2444],[2447,2448],[2451,2472],[2474,2480],2482,[2486,2489],[2492,2500],[2503,2504],[2507,2510],2519,[2524,2525],[2527,2531],[2534,2558],7376,7378,[7381,7382],7384,7393,7402,7405,7410,[7413,7415],43249],Bhaiksuki:[[72704,72712],[72714,72758],[72760,72773],[72784,72812]],Bopomofo:[[746,747],[12289,12291],[12296,12305],[12307,12319],[12330,12333],12336,12343,12539,[12549,12591],[12704,12735],[65093,65094],[65377,65381]],Brahmi:[[69632,69709],[69714,69749],69759],Braille:[[10240,10495]],Buginese:[[6656,6683],[6686,6687],43471],Buhid:[[5941,5942],[5952,5971]],Canadian_Aboriginal:[[5120,5759],[6320,6389],[72368,72383]],Carian:[[66208,66256]],Caucasian_Albanian:[[66864,66915],66927],Chakma:[[2534,2543],[4160,4169],[69888,69940],[69942,69959]],Cham:[[43520,43574],[43584,43597],[43600,43609],[43612,43615]],Cherokee:[[5024,5109],[5112,5117],[43888,43967]],Chorasmian:[[69552,69579]],Common:[[0,64],[91,96],[123,169],[171,185],[187,191],215,247,[697,735],[741,745],[748,767],884,894,901,903,1541,1757,2274,3647,[4053,4056],[5867,5869],[8192,8203],[8206,8238],[8240,8292],[8294,8304],[8308,8318],[8320,8334],[8352,8384],[8448,8485],[8487,8489],[8492,8497],[8499,8525],[8527,8543],[8585,8587],[8592,9254],[9280,9290],[9312,10239],[10496,11123],[11126,11157],[11159,11263],[11776,11842],[11844,11869],[12272,12283],12288,12292,12306,12320,12342,[12872,12895],12927,[12977,12991],[13004,13007],[13169,13178],[13184,13279],13311,[19904,19967],[42760,42785],[42888,42890],43867,[43882,43883],[65040,65049],[65072,65092],[65095,65106],[65108,65126],[65128,65131],65279,[65281,65312],[65339,65344],[65371,65376],[65504,65510],[65512,65518],[65529,65533],[65936,65948],[66e3,66044],[118608,118723],[118784,119029],[119040,119078],[119081,119142],[119146,119162],[119171,119172],[119180,119209],[119214,119274],[119488,119507],[119520,119539],[119552,119638],[119666,119672],[119808,119892],[119894,119964],[119966,119967],119970,[119973,119974],[119977,119980],[119982,119993],119995,[119997,120003],[120005,120069],[120071,120074],[120077,120084],[120086,120092],[120094,120121],[120123,120126],[120128,120132],120134,[120138,120144],[120146,120485],[120488,120779],[120782,120831],[126065,126132],[126209,126269],[126976,127019],[127024,127123],[127136,127150],[127153,127167],[127169,127183],[127185,127221],[127232,127405],[127462,127487],[127489,127490],[127504,127547],[127552,127560],[127584,127589],[127744,128727],[128732,128748],[128752,128764],[128768,128886],[128891,128985],[128992,129003],129008,[129024,129035],[129040,129095],[129104,129113],[129120,129159],[129168,129197],[129200,129201],[129280,129619],[129632,129645],[129648,129660],[129664,129672],[129680,129725],[129727,129733],[129742,129755],[129760,129768],[129776,129784],[129792,129938],[129940,129994],[130032,130041],917505,[917536,917631]],Coptic:[[994,1007],[11392,11507],[11513,11519],[66272,66299]],Cuneiform:[[73728,74649],[74752,74862],[74864,74868],[74880,75075]],Cypriot:[[65792,65794],[65799,65843],[65847,65855],[67584,67589],67592,[67594,67637],[67639,67640],67644,67647],Cypro_Minoan:[[65792,65793],[77712,77810]],Cyrillic:[[1024,1327],[7296,7304],7467,7544,7672,[11744,11775],11843,[42560,42655],[65070,65071],[122928,122989],123023],Deseret:[[66560,66639]],Devanagari:[[2304,2386],[2389,2431],[7376,7414],[7416,7417],8432,[43056,43065],[43232,43263],[72448,72457]],Dives_Akuru:[[71936,71942],71945,[71948,71955],[71957,71958],[71960,71989],[71991,71992],[71995,72006],[72016,72025]],Dogra:[[2404,2415],[43056,43065],[71680,71739]],Duployan:[[113664,113770],[113776,113788],[113792,113800],[113808,113817],[113820,113827]],Egyptian_Hieroglyphs:[[77824,78933]],Elbasan:[[66816,66855]],Elymaic:[[69600,69622]],Ethiopic:[[4608,4680],[4682,4685],[4688,4694],4696,[4698,4701],[4704,4744],[4746,4749],[4752,4784],[4786,4789],[4792,4798],4800,[4802,4805],[4808,4822],[4824,4880],[4882,4885],[4888,4954],[4957,4988],[4992,5017],[11648,11670],[11680,11686],[11688,11694],[11696,11702],[11704,11710],[11712,11718],[11720,11726],[11728,11734],[11736,11742],[43777,43782],[43785,43790],[43793,43798],[43808,43814],[43816,43822],[124896,124902],[124904,124907],[124909,124910],[124912,124926]],Georgian:[[4256,4293],4295,4301,[4304,4351],[7312,7354],[7357,7359],[11520,11557],11559,11565],Glagolitic:[1156,1159,[11264,11359],11843,42607,[122880,122886],[122888,122904],[122907,122913],[122915,122916],[122918,122922]],Gothic:[[66352,66378]],Grantha:[[2385,2386],[2404,2405],[3046,3059],7376,[7378,7379],[7410,7412],[7416,7417],8432,[70400,70403],[70405,70412],[70415,70416],[70419,70440],[70442,70448],[70450,70451],[70453,70457],[70459,70468],[70471,70472],[70475,70477],70480,70487,[70493,70499],[70502,70508],[70512,70516],[73680,73681],73683],Greek:[834,837,[880,883],[885,887],[890,893],895,900,902,[904,906],908,[910,929],[931,993],[1008,1023],[7462,7466],[7517,7521],[7526,7530],[7615,7617],[7936,7957],[7960,7965],[7968,8005],[8008,8013],[8016,8023],8025,8027,8029,[8031,8061],[8064,8116],[8118,8132],[8134,8147],[8150,8155],[8157,8175],[8178,8180],[8182,8190],8486,43877,[65856,65934],65952,[119296,119365]],Gujarati:[[2385,2386],[2404,2405],[2689,2691],[2693,2701],[2703,2705],[2707,2728],[2730,2736],[2738,2739],[2741,2745],[2748,2757],[2759,2761],[2763,2765],2768,[2784,2787],[2790,2801],[2809,2815],[43056,43065]],Gunjala_Gondi:[[2404,2405],[73056,73061],[73063,73064],[73066,73102],[73104,73105],[73107,73112],[73120,73129]],Gurmukhi:[[2385,2386],[2404,2405],[2561,2563],[2565,2570],[2575,2576],[2579,2600],[2602,2608],[2610,2611],[2613,2614],[2616,2617],2620,[2622,2626],[2631,2632],[2635,2637],2641,[2649,2652],2654,[2662,2678],[43056,43065]],Han:[[11904,11929],[11931,12019],[12032,12245],[12289,12291],[12293,12305],[12307,12319],[12321,12333],12336,[12343,12351],12539,[12688,12703],[12736,12771],[12832,12871],[12928,12976],[12992,13003],13055,[13144,13168],[13179,13183],[13280,13310],[13312,19903],[19968,40959],[42752,42759],[63744,64109],[64112,64217],[65093,65094],[65377,65381],[94178,94179],[94192,94193],[119648,119665],[127568,127569],[131072,173791],[173824,177977],[177984,178205],[178208,183969],[183984,191456],[194560,195101],[196608,201546],[201552,205743]],Hangul:[[4352,4607],[12289,12291],[12296,12305],[12307,12319],[12334,12336],12343,12539,[12593,12686],[12800,12830],[12896,12926],[43360,43388],[44032,55203],[55216,55238],[55243,55291],[65093,65094],[65377,65381],[65440,65470],[65474,65479],[65482,65487],[65490,65495],[65498,65500]],Hanifi_Rohingya:[1548,1563,1567,1600,1748,[68864,68903],[68912,68921]],Hanunoo:[[5920,5942]],Hatran:[[67808,67826],[67828,67829],[67835,67839]],Hebrew:[[1425,1479],[1488,1514],[1519,1524],[64285,64310],[64312,64316],64318,[64320,64321],[64323,64324],[64326,64335]],Hiragana:[[12289,12291],[12296,12305],[12307,12319],[12336,12341],12343,[12348,12349],[12353,12438],[12441,12448],[12539,12540],[65093,65094],[65377,65381],65392,[65438,65439],[110593,110879],110898,[110928,110930],127488],Imperial_Aramaic:[[67648,67669],[67671,67679]],Inherited:[[768,833],[835,836],[838,866],[2387,2388],[6832,6862],[7618,7671],7673,[7675,7679],[8204,8205],[8400,8431],[65024,65039],[65056,65069],66045,[118528,118573],[118576,118598],[119143,119145],[119163,119170],[119173,119179],[119210,119213],[917760,917999]],Inscriptional_Pahlavi:[[68448,68466],[68472,68479]],Inscriptional_Parthian:[[68416,68437],[68440,68447]],Javanese:[[43392,43469],[43471,43481],[43486,43487]],Kaithi:[[2406,2415],[43056,43065],[69760,69826],69837],Kannada:[[2385,2386],[2404,2405],[3200,3212],[3214,3216],[3218,3240],[3242,3251],[3253,3257],[3260,3268],[3270,3272],[3274,3277],[3285,3286],[3293,3294],[3296,3299],[3302,3311],[3313,3315],7376,7378,7386,7410,7412,[43056,43061]],Katakana:[[12289,12291],[12296,12305],[12307,12319],[12336,12341],12343,[12348,12349],[12441,12444],[12448,12543],[12784,12799],[13008,13054],[13056,13143],[65093,65094],[65377,65439],[110576,110579],[110581,110587],[110589,110590],110592,[110880,110882],110933,[110948,110951]],Kawi:[[73472,73488],[73490,73530],[73534,73561]],Kayah_Li:[[43264,43311]],Kharoshthi:[[68096,68099],[68101,68102],[68108,68115],[68117,68119],[68121,68149],[68152,68154],[68159,68168],[68176,68184]],Khitan_Small_Script:[94180,[101120,101589]],Khmer:[[6016,6109],[6112,6121],[6128,6137],[6624,6655]],Khojki:[[2790,2799],[43056,43065],[70144,70161],[70163,70209]],Khudawadi:[[2404,2405],[43056,43065],[70320,70378],[70384,70393]],Lao:[[3713,3714],3716,[3718,3722],[3724,3747],3749,[3751,3773],[3776,3780],3782,[3784,3790],[3792,3801],[3804,3807]],Latin:[[65,90],[97,122],170,186,[192,214],[216,246],[248,696],[736,740],[867,879],[1157,1158],[2385,2386],4347,[7424,7461],[7468,7516],[7522,7525],[7531,7543],[7545,7614],[7680,7935],8239,8305,8319,[8336,8348],8432,[8490,8491],8498,8526,[8544,8584],[11360,11391],[42752,42759],[42786,42887],[42891,42954],[42960,42961],42963,[42965,42969],[42994,43007],43310,[43824,43866],[43868,43876],[43878,43881],[64256,64262],[65313,65338],[65345,65370],[67456,67461],[67463,67504],[67506,67514],[122624,122654],[122661,122666]],Lepcha:[[7168,7223],[7227,7241],[7245,7247]],Limbu:[2405,[6400,6430],[6432,6443],[6448,6459],6464,[6468,6479]],Linear_A:[[65799,65843],[67072,67382],[67392,67413],[67424,67431]],Linear_B:[[65536,65547],[65549,65574],[65576,65594],[65596,65597],[65599,65613],[65616,65629],[65664,65786],[65792,65794],[65799,65843],[65847,65855]],Lisu:[[42192,42239],73648],Lycian:[[66176,66204]],Lydian:[[67872,67897],67903],Mahajani:[[2404,2415],[43056,43065],[69968,70006]],Makasar:[[73440,73464]],Malayalam:[[2385,2386],[2404,2405],[3328,3340],[3342,3344],[3346,3396],[3398,3400],[3402,3407],[3412,3427],[3430,3455],7386,[43056,43058]],Mandaic:[1600,[2112,2139],2142],Manichaean:[1600,[68288,68326],[68331,68342]],Marchen:[[72816,72847],[72850,72871],[72873,72886]],Masaram_Gondi:[[2404,2405],[72960,72966],[72968,72969],[72971,73014],73018,[73020,73021],[73023,73031],[73040,73049]],Medefaidrin:[[93760,93850]],Meetei_Mayek:[[43744,43766],[43968,44013],[44016,44025]],Mende_Kikakui:[[124928,125124],[125127,125142]],Meroitic_Cursive:[[68e3,68023],[68028,68047],[68050,68095]],Meroitic_Hieroglyphs:[[67968,67999]],Miao:[[93952,94026],[94031,94087],[94095,94111]],Modi:[[43056,43065],[71168,71236],[71248,71257]],Mongolian:[[6144,6169],[6176,6264],[6272,6314],8239,[71264,71276]],Mro:[[92736,92766],[92768,92777],[92782,92783]],Multani:[[2662,2671],[70272,70278],70280,[70282,70285],[70287,70301],[70303,70313]],Myanmar:[[4096,4255],43310,[43488,43518],[43616,43647]],Nabataean:[[67712,67742],[67751,67759]],Nag_Mundari:[[124112,124153]],Nandinagari:[[2404,2405],[3302,3311],7401,7410,7418,[43056,43061],[72096,72103],[72106,72151],[72154,72164]],New_Tai_Lue:[[6528,6571],[6576,6601],[6608,6618],[6622,6623]],Newa:[[70656,70747],[70749,70753]],Nko:[1548,1563,1567,[1984,2042],[2045,2047],[64830,64831]],Nushu:[94177,[110960,111355]],Nyiakeng_Puachue_Hmong:[[123136,123180],[123184,123197],[123200,123209],[123214,123215]],Ogham:[[5760,5788]],Ol_Chiki:[[7248,7295]],Old_Hungarian:[[68736,68786],[68800,68850],[68858,68863]],Old_Italic:[[66304,66339],[66349,66351]],Old_North_Arabian:[[68224,68255]],Old_Permic:[1155,[66384,66426]],Old_Persian:[[66464,66499],[66504,66517]],Old_Sogdian:[[69376,69415]],Old_South_Arabian:[[68192,68223]],Old_Turkic:[[68608,68680]],Old_Uyghur:[1600,68338,[69488,69513]],Oriya:[[2385,2386],[2404,2405],[2817,2819],[2821,2828],[2831,2832],[2835,2856],[2858,2864],[2866,2867],[2869,2873],[2876,2884],[2887,2888],[2891,2893],[2901,2903],[2908,2909],[2911,2915],[2918,2935],7386,7410],Osage:[[66736,66771],[66776,66811]],Osmanya:[[66688,66717],[66720,66729]],Pahawh_Hmong:[[92928,92997],[93008,93017],[93019,93025],[93027,93047],[93053,93071]],Palmyrene:[[67680,67711]],Pau_Cin_Hau:[[72384,72440]],Phags_Pa:[[6146,6147],6149,[43072,43127]],Phoenician:[[67840,67867],67871],Psalter_Pahlavi:[1600,[68480,68497],[68505,68508],[68521,68527]],Rejang:[[43312,43347],43359],Runic:[[5792,5866],[5870,5880]],Samaritan:[[2048,2093],[2096,2110]],Saurashtra:[[43136,43205],[43214,43225]],Sharada:[2385,7383,7385,[7388,7389],7392,[70016,70111]],Shavian:[[66640,66687]],Siddham:[[71040,71093],[71096,71133]],SignWriting:[[120832,121483],[121499,121503],[121505,121519]],Sinhala:[[2404,2405],[3457,3459],[3461,3478],[3482,3505],[3507,3515],3517,[3520,3526],3530,[3535,3540],3542,[3544,3551],[3558,3567],[3570,3572],[70113,70132]],Sogdian:[1600,[69424,69465]],Sora_Sompeng:[[69840,69864],[69872,69881]],Soyombo:[[72272,72354]],Sundanese:[[7040,7103],[7360,7367]],Syloti_Nagri:[[2404,2405],[2534,2543],[43008,43052]],Syriac:[1548,[1563,1564],1567,1600,[1611,1621],1648,[1792,1805],[1807,1866],[1869,1871],[2144,2154],7672,7674],Tagalog:[[5888,5909],5919,[5941,5942]],Tagbanwa:[[5941,5942],[5984,5996],[5998,6e3],[6002,6003]],Tai_Le:[[4160,4169],[6480,6509],[6512,6516]],Tai_Tham:[[6688,6750],[6752,6780],[6783,6793],[6800,6809],[6816,6829]],Tai_Viet:[[43648,43714],[43739,43743]],Takri:[[2404,2405],[43056,43065],[71296,71353],[71360,71369]],Tamil:[[2385,2386],[2404,2405],[2946,2947],[2949,2954],[2958,2960],[2962,2965],[2969,2970],2972,[2974,2975],[2979,2980],[2984,2986],[2990,3001],[3006,3010],[3014,3016],[3018,3021],3024,3031,[3046,3066],7386,43251,70401,70403,[70459,70460],[73664,73713],73727],Tangsa:[[92784,92862],[92864,92873]],Tangut:[94176,[94208,100343],[100352,101119],[101632,101640]],Telugu:[[2385,2386],[2404,2405],[3072,3084],[3086,3088],[3090,3112],[3114,3129],[3132,3140],[3142,3144],[3146,3149],[3157,3158],[3160,3162],3165,[3168,3171],[3174,3183],[3191,3199],7386,7410],Thaana:[1548,[1563,1564],1567,[1632,1641],[1920,1969],65010,65021],Thai:[[3585,3642],[3648,3675]],Tibetan:[[3840,3911],[3913,3948],[3953,3991],[3993,4028],[4030,4044],[4046,4052],[4057,4058]],Tifinagh:[[11568,11623],[11631,11632],11647],Tirhuta:[[2385,2386],[2404,2405],7410,[43056,43065],[70784,70855],[70864,70873]],Toto:[[123536,123566]],Ugaritic:[[66432,66461],66463],Vai:[[42240,42539]],Vithkuqi:[[66928,66938],[66940,66954],[66956,66962],[66964,66965],[66967,66977],[66979,66993],[66995,67001],[67003,67004]],Wancho:[[123584,123641],123647],Warang_Citi:[[71840,71922],71935],Yezidi:[1548,1563,1567,[1632,1641],[69248,69289],[69291,69293],[69296,69297]],Yi:[[12289,12290],[12296,12305],[12308,12315],12539,[40960,42124],[42128,42182],[65377,65381]],Zanabazar_Square:[[72192,72263]]},Symbol.toStringTag,{value:"Module"})),Word_Break:Object.freeze(Object.defineProperty({__proto__:null,ALetter:[[65,90],[97,122],170,181,186,[192,214],[216,246],[248,727],[734,767],[880,884],[886,887],[890,893],895,902,[904,906],908,[910,929],[931,1013],[1015,1153],[1162,1327],[1329,1366],[1369,1372],1374,[1376,1416],1418,1523,[1568,1610],[1646,1647],[1649,1747],1749,[1765,1766],[1774,1775],[1786,1788],1791,1808,[1810,1839],[1869,1957],1969,[1994,2026],[2036,2037],2042,[2048,2069],2074,2084,2088,[2112,2136],[2144,2154],[2160,2183],[2185,2190],[2208,2249],[2308,2361],2365,2384,[2392,2401],[2417,2432],[2437,2444],[2447,2448],[2451,2472],[2474,2480],2482,[2486,2489],2493,2510,[2524,2525],[2527,2529],[2544,2545],2556,[2565,2570],[2575,2576],[2579,2600],[2602,2608],[2610,2611],[2613,2614],[2616,2617],[2649,2652],2654,[2674,2676],[2693,2701],[2703,2705],[2707,2728],[2730,2736],[2738,2739],[2741,2745],2749,2768,[2784,2785],2809,[2821,2828],[2831,2832],[2835,2856],[2858,2864],[2866,2867],[2869,2873],2877,[2908,2909],[2911,2913],2929,2947,[2949,2954],[2958,2960],[2962,2965],[2969,2970],2972,[2974,2975],[2979,2980],[2984,2986],[2990,3001],3024,[3077,3084],[3086,3088],[3090,3112],[3114,3129],3133,[3160,3162],3165,[3168,3169],3200,[3205,3212],[3214,3216],[3218,3240],[3242,3251],[3253,3257],3261,[3293,3294],[3296,3297],[3313,3314],[3332,3340],[3342,3344],[3346,3386],3389,3406,[3412,3414],[3423,3425],[3450,3455],[3461,3478],[3482,3505],[3507,3515],3517,[3520,3526],3840,[3904,3911],[3913,3948],[3976,3980],[4256,4293],4295,4301,[4304,4346],[4348,4680],[4682,4685],[4688,4694],4696,[4698,4701],[4704,4744],[4746,4749],[4752,4784],[4786,4789],[4792,4798],4800,[4802,4805],[4808,4822],[4824,4880],[4882,4885],[4888,4954],[4992,5007],[5024,5109],[5112,5117],[5121,5740],[5743,5759],[5761,5786],[5792,5866],[5870,5880],[5888,5905],[5919,5937],[5952,5969],[5984,5996],[5998,6e3],[6176,6264],[6272,6276],[6279,6312],6314,[6320,6389],[6400,6430],[6656,6678],[6917,6963],[6981,6988],[7043,7072],[7086,7087],[7098,7141],[7168,7203],[7245,7247],[7258,7293],[7296,7304],[7312,7354],[7357,7359],[7401,7404],[7406,7411],[7413,7414],7418,[7424,7615],[7680,7957],[7960,7965],[7968,8005],[8008,8013],[8016,8023],8025,8027,8029,[8031,8061],[8064,8116],[8118,8124],8126,[8130,8132],[8134,8140],[8144,8147],[8150,8155],[8160,8172],[8178,8180],[8182,8188],8305,8319,[8336,8348],8450,8455,[8458,8467],8469,[8473,8477],8484,8486,8488,[8490,8493],[8495,8505],[8508,8511],[8517,8521],8526,[8544,8584],[9398,9449],[11264,11492],[11499,11502],[11506,11507],[11520,11557],11559,11565,[11568,11623],11631,[11648,11670],[11680,11686],[11688,11694],[11696,11702],[11704,11710],[11712,11718],[11720,11726],[11728,11734],[11736,11742],11823,12293,[12347,12348],[12549,12591],[12593,12686],[12704,12735],[40960,42124],[42192,42237],[42240,42508],[42512,42527],[42538,42539],[42560,42606],[42623,42653],[42656,42735],[42760,42954],[42960,42961],42963,[42965,42969],[42994,43009],[43011,43013],[43015,43018],[43020,43042],[43072,43123],[43138,43187],[43250,43255],43259,[43261,43262],[43274,43301],[43312,43334],[43360,43388],[43396,43442],43471,[43520,43560],[43584,43586],[43588,43595],[43744,43754],[43762,43764],[43777,43782],[43785,43790],[43793,43798],[43808,43814],[43816,43822],[43824,43881],[43888,44002],[44032,55203],[55216,55238],[55243,55291],[64256,64262],[64275,64279],[64336,64433],[64467,64829],[64848,64911],[64914,64967],[65008,65019],[65136,65140],[65142,65276],[65313,65338],[65345,65370],[65440,65470],[65474,65479],[65482,65487],[65490,65495],[65498,65500],[65536,65547],[65549,65574],[65576,65594],[65596,65597],[65599,65613],[65616,65629],[65664,65786],[65856,65908],[66176,66204],[66208,66256],[66304,66335],[66349,66378],[66384,66421],[66432,66461],[66464,66499],[66504,66511],[66513,66517],[66560,66717],[66736,66771],[66776,66811],[66816,66855],[66864,66915],[66928,66938],[66940,66954],[66956,66962],[66964,66965],[66967,66977],[66979,66993],[66995,67001],[67003,67004],[67072,67382],[67392,67413],[67424,67431],[67456,67461],[67463,67504],[67506,67514],[67584,67589],67592,[67594,67637],[67639,67640],67644,[67647,67669],[67680,67702],[67712,67742],[67808,67826],[67828,67829],[67840,67861],[67872,67897],[67968,68023],[68030,68031],68096,[68112,68115],[68117,68119],[68121,68149],[68192,68220],[68224,68252],[68288,68295],[68297,68324],[68352,68405],[68416,68437],[68448,68466],[68480,68497],[68608,68680],[68736,68786],[68800,68850],[68864,68899],[69248,69289],[69296,69297],[69376,69404],69415,[69424,69445],[69488,69505],[69552,69572],[69600,69622],[69635,69687],[69745,69746],69749,[69763,69807],[69840,69864],[69891,69926],69956,69959,[69968,70002],70006,[70019,70066],[70081,70084],70106,70108,[70144,70161],[70163,70187],[70207,70208],[70272,70278],70280,[70282,70285],[70287,70301],[70303,70312],[70320,70366],[70405,70412],[70415,70416],[70419,70440],[70442,70448],[70450,70451],[70453,70457],70461,70480,[70493,70497],[70656,70708],[70727,70730],[70751,70753],[70784,70831],[70852,70853],70855,[71040,71086],[71128,71131],[71168,71215],71236,[71296,71338],71352,[71680,71723],[71840,71903],[71935,71942],71945,[71948,71955],[71957,71958],[71960,71983],71999,72001,[72096,72103],[72106,72144],72161,72163,72192,[72203,72242],72250,72272,[72284,72329],72349,[72368,72440],[72704,72712],[72714,72750],72768,[72818,72847],[72960,72966],[72968,72969],[72971,73008],73030,[73056,73061],[73063,73064],[73066,73097],73112,[73440,73458],73474,[73476,73488],[73490,73523],73648,[73728,74649],[74752,74862],[74880,75075],[77712,77808],[77824,78895],[78913,78918],[82944,83526],[92160,92728],[92736,92766],[92784,92862],[92880,92909],[92928,92975],[92992,92995],[93027,93047],[93053,93071],[93760,93823],[93952,94026],94032,[94099,94111],[94176,94177],94179,[113664,113770],[113776,113788],[113792,113800],[113808,113817],[119808,119892],[119894,119964],[119966,119967],119970,[119973,119974],[119977,119980],[119982,119993],119995,[119997,120003],[120005,120069],[120071,120074],[120077,120084],[120086,120092],[120094,120121],[120123,120126],[120128,120132],120134,[120138,120144],[120146,120485],[120488,120512],[120514,120538],[120540,120570],[120572,120596],[120598,120628],[120630,120654],[120656,120686],[120688,120712],[120714,120744],[120746,120770],[120772,120779],[122624,122654],[122661,122666],[122928,122989],[123136,123180],[123191,123197],123214,[123536,123565],[123584,123627],[124112,124139],[124896,124902],[124904,124907],[124909,124910],[124912,124926],[124928,125124],[125184,125251],125259,[126464,126467],[126469,126495],[126497,126498],126500,126503,[126505,126514],[126516,126519],126521,126523,126530,126535,126537,126539,[126541,126543],[126545,126546],126548,126551,126553,126555,126557,126559,[126561,126562],126564,[126567,126570],[126572,126578],[126580,126583],[126585,126588],126590,[126592,126601],[126603,126619],[126625,126627],[126629,126633],[126635,126651],[127280,127305],[127312,127337],[127344,127369]],CR:[13],Double_Quote:[34],Extend:[[768,879],[1155,1161],[1425,1469],1471,[1473,1474],[1476,1477],1479,[1552,1562],[1611,1631],1648,[1750,1756],[1759,1764],[1767,1768],[1770,1773],1809,[1840,1866],[1958,1968],[2027,2035],2045,[2070,2073],[2075,2083],[2085,2087],[2089,2093],[2137,2139],[2200,2207],[2250,2273],[2275,2307],[2362,2364],[2366,2383],[2385,2391],[2402,2403],[2433,2435],2492,[2494,2500],[2503,2504],[2507,2509],2519,[2530,2531],2558,[2561,2563],2620,[2622,2626],[2631,2632],[2635,2637],2641,[2672,2673],2677,[2689,2691],2748,[2750,2757],[2759,2761],[2763,2765],[2786,2787],[2810,2815],[2817,2819],2876,[2878,2884],[2887,2888],[2891,2893],[2901,2903],[2914,2915],2946,[3006,3010],[3014,3016],[3018,3021],3031,[3072,3076],3132,[3134,3140],[3142,3144],[3146,3149],[3157,3158],[3170,3171],[3201,3203],3260,[3262,3268],[3270,3272],[3274,3277],[3285,3286],[3298,3299],3315,[3328,3331],[3387,3388],[3390,3396],[3398,3400],[3402,3405],3415,[3426,3427],[3457,3459],3530,[3535,3540],3542,[3544,3551],[3570,3571],3633,[3636,3642],[3655,3662],3761,[3764,3772],[3784,3790],[3864,3865],3893,3895,3897,[3902,3903],[3953,3972],[3974,3975],[3981,3991],[3993,4028],4038,[4139,4158],[4182,4185],[4190,4192],[4194,4196],[4199,4205],[4209,4212],[4226,4237],4239,[4250,4253],[4957,4959],[5906,5909],[5938,5940],[5970,5971],[6002,6003],[6068,6099],6109,[6155,6157],6159,[6277,6278],6313,[6432,6443],[6448,6459],[6679,6683],[6741,6750],[6752,6780],6783,[6832,6862],[6912,6916],[6964,6980],[7019,7027],[7040,7042],[7073,7085],[7142,7155],[7204,7223],[7376,7378],[7380,7400],7405,7412,[7415,7417],[7616,7679],8204,[8400,8432],[11503,11505],11647,[11744,11775],[12330,12335],[12441,12442],[42607,42610],[42612,42621],[42654,42655],[42736,42737],43010,43014,43019,[43043,43047],43052,[43136,43137],[43188,43205],[43232,43249],43263,[43302,43309],[43335,43347],[43392,43395],[43443,43456],43493,[43561,43574],43587,[43596,43597],[43643,43645],43696,[43698,43700],[43703,43704],[43710,43711],43713,[43755,43759],[43765,43766],[44003,44010],[44012,44013],64286,[65024,65039],[65056,65071],[65438,65439],66045,66272,[66422,66426],[68097,68099],[68101,68102],[68108,68111],[68152,68154],68159,[68325,68326],[68900,68903],[69291,69292],[69373,69375],[69446,69456],[69506,69509],[69632,69634],[69688,69702],69744,[69747,69748],[69759,69762],[69808,69818],69826,[69888,69890],[69927,69940],[69957,69958],70003,[70016,70018],[70067,70080],[70089,70092],[70094,70095],[70188,70199],70206,70209,[70367,70378],[70400,70403],[70459,70460],[70462,70468],[70471,70472],[70475,70477],70487,[70498,70499],[70502,70508],[70512,70516],[70709,70726],70750,[70832,70851],[71087,71093],[71096,71104],[71132,71133],[71216,71232],[71339,71351],[71453,71467],[71724,71738],[71984,71989],[71991,71992],[71995,71998],72e3,[72002,72003],[72145,72151],[72154,72160],72164,[72193,72202],[72243,72249],[72251,72254],72263,[72273,72283],[72330,72345],[72751,72758],[72760,72767],[72850,72871],[72873,72886],[73009,73014],73018,[73020,73021],[73023,73029],73031,[73098,73102],[73104,73105],[73107,73111],[73459,73462],[73472,73473],73475,[73524,73530],[73534,73538],78912,[78919,78933],[92912,92916],[92976,92982],94031,[94033,94087],[94095,94098],94180,[94192,94193],[113821,113822],[118528,118573],[118576,118598],[119141,119145],[119149,119154],[119163,119170],[119173,119179],[119210,119213],[119362,119364],[121344,121398],[121403,121452],121461,121476,[121499,121503],[121505,121519],[122880,122886],[122888,122904],[122907,122913],[122915,122916],[122918,122922],123023,[123184,123190],123566,[123628,123631],[124140,124143],[125136,125142],[125252,125258],[127995,127999],[917536,917631],[917760,917999]],ExtendNumLet:[95,8239,[8255,8256],8276,[65075,65076],[65101,65103],65343],Format:[173,[1536,1541],1564,1757,1807,[2192,2193],2274,6158,[8206,8207],[8234,8238],[8288,8292],[8294,8303],65279,[65529,65531],69821,69837,[78896,78911],[113824,113827],[119155,119162],917505],Hebrew_Letter:[[1488,1514],[1519,1522],64285,[64287,64296],[64298,64310],[64312,64316],64318,[64320,64321],[64323,64324],[64326,64335]],Katakana:[[12337,12341],[12443,12444],[12448,12538],[12540,12543],[12784,12799],[13008,13054],[13056,13143],[65382,65437],[110576,110579],[110581,110587],[110589,110590],110592,[110880,110882],110933,[110948,110951]],LF:[10],MidLetter:[58,183,903,1375,1524,8231,65043,65109,65306],MidNum:[44,59,894,1417,[1548,1549],1644,2040,8260,65040,65044,65104,65108,65292,65307],MidNumLet:[46,[8216,8217],8228,65106,65287,65294],Newline:[[11,12],133,[8232,8233]],Numeric:[[48,57],[1632,1641],1643,[1776,1785],[1984,1993],[2406,2415],[2534,2543],[2662,2671],[2790,2799],[2918,2927],[3046,3055],[3174,3183],[3302,3311],[3430,3439],[3558,3567],[3664,3673],[3792,3801],[3872,3881],[4160,4169],[4240,4249],[6112,6121],[6160,6169],[6470,6479],[6608,6617],[6784,6793],[6800,6809],[6992,7001],[7088,7097],[7232,7241],[7248,7257],[42528,42537],[43216,43225],[43264,43273],[43472,43481],[43504,43513],[43600,43609],[44016,44025],[65296,65305],[66720,66729],[68912,68921],[69734,69743],[69872,69881],[69942,69951],[70096,70105],[70384,70393],[70736,70745],[70864,70873],[71248,71257],[71360,71369],[71472,71481],[71904,71913],[72016,72025],[72784,72793],[73040,73049],[73120,73129],[73552,73561],[92768,92777],[92864,92873],[93008,93017],[120782,120831],[123200,123209],[123632,123641],[124144,124153],[125264,125273],[130032,130041]],Other:[[0,9],[14,31],33,[35,38],[40,43],45,47,[60,64],[91,94],96,[123,132],[134,159],[161,169],[171,172],[174,180],182,[184,185],[187,191],215,247,[728,733],885,[888,889],[896,901],907,909,930,1014,1154,1328,[1367,1368],1373,[1419,1424],1470,1472,1475,1478,[1480,1487],[1515,1518],[1525,1535],[1542,1547],[1550,1551],1563,[1565,1567],1642,1645,1748,1769,[1789,1790],[1792,1806],[1867,1868],[1970,1983],[2038,2039],2041,[2043,2044],[2046,2047],[2094,2111],[2140,2143],[2155,2159],2184,2191,[2194,2199],[2404,2405],2416,2436,[2445,2446],[2449,2450],2473,2481,[2483,2485],[2490,2491],[2501,2502],[2505,2506],[2511,2518],[2520,2523],2526,[2532,2533],[2546,2555],2557,[2559,2560],2564,[2571,2574],[2577,2578],2601,2609,2612,2615,[2618,2619],2621,[2627,2630],[2633,2634],[2638,2640],[2642,2648],2653,[2655,2661],[2678,2688],2692,2702,2706,2729,2737,2740,[2746,2747],2758,2762,[2766,2767],[2769,2783],[2788,2789],[2800,2808],2816,2820,[2829,2830],[2833,2834],2857,2865,2868,[2874,2875],[2885,2886],[2889,2890],[2894,2900],[2904,2907],2910,[2916,2917],2928,[2930,2945],2948,[2955,2957],2961,[2966,2968],2971,2973,[2976,2978],[2981,2983],[2987,2989],[3002,3005],[3011,3013],3017,[3022,3023],[3025,3030],[3032,3045],[3056,3071],3085,3089,3113,[3130,3131],3141,3145,[3150,3156],3159,[3163,3164],[3166,3167],[3172,3173],[3184,3199],3204,3213,3217,3241,3252,[3258,3259],3269,3273,[3278,3284],[3287,3292],3295,[3300,3301],3312,[3316,3327],3341,3345,3397,3401,[3407,3411],[3416,3422],[3428,3429],[3440,3449],3456,3460,[3479,3481],3506,3516,[3518,3519],[3527,3529],[3531,3534],3541,3543,[3552,3557],[3568,3569],[3572,3632],[3634,3635],[3643,3654],3663,[3674,3760],[3762,3763],[3773,3783],3791,[3802,3839],[3841,3863],[3866,3871],[3882,3892],3894,3896,[3898,3901],3912,[3949,3952],3973,3992,[4029,4037],[4039,4095],4130,4136,4159,[4170,4175],[4186,4189],4193,[4197,4198],[4206,4208],[4213,4225],4238,[4254,4255],4294,[4296,4300],[4302,4303],4347,4681,[4686,4687],4695,4697,[4702,4703],4745,[4750,4751],4785,[4790,4791],4799,4801,[4806,4807],4823,4881,[4886,4887],[4955,4956],[4960,4991],[5008,5023],[5110,5111],[5118,5120],[5741,5742],[5787,5791],[5867,5869],[5881,5887],[5910,5918],[5941,5951],[5972,5983],5997,6001,[6004,6015],[6100,6102],[6104,6107],[6110,6111],[6122,6154],[6170,6175],[6265,6271],[6315,6319],[6390,6399],6431,[6444,6447],[6460,6469],[6510,6511],[6517,6527],[6570,6575],[6602,6607],[6619,6655],[6684,6740],6751,[6781,6782],[6794,6799],[6810,6831],[6863,6911],[6989,6991],[7002,7018],[7028,7039],[7156,7167],[7224,7231],[7242,7244],[7294,7295],[7305,7311],[7355,7356],[7360,7375],7379,[7419,7423],[7958,7959],[7966,7967],[8006,8007],[8014,8015],8024,8026,8028,8030,[8062,8063],8117,8125,[8127,8129],8133,[8141,8143],[8148,8149],[8156,8159],[8173,8177],8181,[8189,8191],8199,[8208,8215],[8218,8227],[8229,8230],[8240,8254],[8257,8259],[8261,8275],[8277,8286],8293,8304,[8306,8318],[8320,8335],[8349,8399],[8433,8449],[8451,8454],[8456,8457],8468,[8470,8472],[8478,8483],8485,8487,8489,8494,[8506,8507],[8512,8516],[8522,8525],[8527,8543],[8585,9397],[9450,9756],[9758,9791],9793,[9795,9876],[9879,9976],[9978,9991],9993,[9998,10083],[10085,11263],[11493,11498],[11508,11519],11558,[11560,11564],[11566,11567],[11624,11630],[11632,11646],[11671,11679],11687,11695,11703,11711,11719,11727,11735,11743,[11776,11822],[11824,12287],[12289,12292],[12294,12329],12336,[12342,12346],[12349,12440],[12445,12447],12539,[12544,12548],12592,[12687,12703],[12736,12783],[12800,13007],13055,[13144,40959],[42125,42191],[42238,42239],[42509,42511],[42540,42559],42611,42622,[42738,42759],[42955,42959],42962,42964,[42970,42993],[43048,43051],[43053,43071],[43124,43135],[43206,43215],[43226,43231],[43256,43258],43260,[43310,43311],[43348,43359],[43389,43391],[43457,43470],[43482,43492],[43494,43503],[43514,43519],[43575,43583],[43598,43599],[43610,43642],[43646,43695],43697,[43701,43702],[43705,43709],43712,[43714,43743],[43760,43761],[43767,43776],[43783,43784],[43791,43792],[43799,43807],43815,43823,[43882,43887],44011,[44014,44015],[44026,44031],[55204,55215],[55239,55242],[55292,64047],[64107,64255],[64263,64274],[64280,64284],64297,64311,64317,64319,64322,64325,[64434,64466],[64830,64847],[64912,64913],[64968,65007],[65020,65023],[65041,65042],[65045,65055],[65072,65074],[65077,65100],65105,65107,[65110,65135],65141,[65277,65278],[65280,65286],[65288,65291],65293,65295,[65308,65312],[65339,65342],65344,[65371,65381],[65471,65473],[65480,65481],[65488,65489],[65496,65497],[65501,65528],[65532,65535],65548,65575,65595,65598,[65614,65615],[65630,65663],[65787,65855],[65909,66044],[66046,66175],[66205,66207],[66257,66271],[66273,66303],[66336,66348],[66379,66383],[66427,66431],[66462,66463],[66500,66503],66512,[66518,66559],[66718,66719],[66730,66735],[66772,66775],[66812,66815],[66856,66863],[66916,66927],66939,66955,66963,66966,66978,66994,67002,[67005,67071],[67383,67391],[67414,67423],[67432,67455],67462,67505,[67515,67583],[67590,67591],67593,67638,[67641,67643],[67645,67646],[67670,67679],[67703,67711],[67743,67807],67827,[67830,67839],[67862,67871],[67898,67967],[68024,68029],[68032,68095],68100,[68103,68107],68116,68120,[68150,68151],[68155,68158],[68160,68191],[68221,68223],[68253,68287],68296,[68327,68351],[68406,68415],[68438,68447],[68467,68479],[68498,68607],[68681,68735],[68787,68799],[68851,68863],[68904,68911],[68922,69247],69290,[69293,69295],[69298,69372],[69405,69414],[69416,69423],[69457,69487],[69510,69551],[69573,69599],[69623,69631],[69703,69733],[69750,69758],[69819,69820],[69822,69825],[69827,69836],[69838,69839],[69865,69871],[69882,69887],69941,[69952,69955],[69960,69967],[70004,70005],[70007,70015],[70085,70088],70093,70107,[70109,70143],70162,[70200,70205],[70210,70271],70279,70281,70286,70302,[70313,70319],[70379,70383],[70394,70399],70404,[70413,70414],[70417,70418],70441,70449,70452,70458,[70469,70470],[70473,70474],[70478,70479],[70481,70486],[70488,70492],[70500,70501],[70509,70511],[70517,70655],[70731,70735],[70746,70749],[70754,70783],70854,[70856,70863],[70874,71039],[71094,71095],[71105,71127],[71134,71167],[71233,71235],[71237,71247],[71258,71295],[71353,71359],[71370,71452],[71468,71471],[71482,71679],[71739,71839],[71914,71934],[71943,71944],[71946,71947],71956,71959,71990,[71993,71994],[72004,72015],[72026,72095],[72104,72105],[72152,72153],72162,[72165,72191],[72255,72262],[72264,72271],[72346,72348],[72350,72367],[72441,72703],72713,72759,[72769,72783],[72794,72817],[72848,72849],72872,[72887,72959],72967,72970,[73015,73017],73019,73022,[73032,73039],[73050,73055],73062,73065,73103,73106,[73113,73119],[73130,73439],[73463,73471],73489,[73531,73533],[73539,73551],[73562,73647],[73649,73727],[74650,74751],[74863,74879],[75076,77711],[77809,77823],[78934,82943],[83527,92159],[92729,92735],92767,[92778,92783],92863,[92874,92879],[92910,92911],[92917,92927],[92983,92991],[92996,93007],[93018,93026],[93048,93052],[93072,93759],[93824,93951],[94027,94030],[94088,94094],[94112,94175],94178,[94181,94191],[94194,110575],110580,110588,110591,[110593,110879],[110883,110932],[110934,110947],[110952,113663],[113771,113775],[113789,113791],[113801,113807],[113818,113820],113823,[113828,118527],[118574,118575],[118599,119140],[119146,119148],[119171,119172],[119180,119209],[119214,119361],[119365,119807],119893,119965,[119968,119969],[119971,119972],[119975,119976],119981,119994,119996,120004,120070,[120075,120076],120085,120093,120122,120127,120133,[120135,120137],120145,[120486,120487],120513,120539,120571,120597,120629,120655,120687,120713,120745,120771,[120780,120781],[120832,121343],[121399,121402],[121453,121460],[121462,121475],[121477,121498],121504,[121520,122623],[122655,122660],[122667,122879],122887,[122905,122906],122914,122917,[122923,122927],[122990,123022],[123024,123135],[123181,123183],[123198,123199],[123210,123213],[123215,123535],[123567,123583],[123642,124111],[124154,124895],124903,124908,124911,124927,[125125,125135],[125143,125183],[125260,125263],[125274,126463],126468,126496,126499,[126501,126502],126504,126515,126520,126522,[126524,126529],[126531,126534],126536,126538,126540,126544,126547,[126549,126550],126552,126554,126556,126558,126560,126563,[126565,126566],126571,126579,126584,126589,126591,126602,[126620,126624],126628,126634,[126652,127279],[127306,127311],[127338,127343],[127370,127461],[127488,127751],[127753,127805],[127807,127858],[127860,127876],[127878,127890],[127892,127907],[127909,127911],[127913,127937],[127941,127942],[127944,127945],[127949,127978],127980,[127982,127994],[128e3,128065],[128068,128069],[128081,128101],[128106,128109],128111,[128121,128123],[128125,128128],128132,[128136,128138],[128140,128169],[128171,128186],[128189,128294],[128296,128299],[128301,128371],[128374,128377],[128379,128399],[128401,128404],[128407,128487],[128489,128580],[128584,128586],[128592,128639],[128641,128657],[128659,128674],[128676,128691],[128695,128703],[128705,128715],[128717,129303],[129312,129317],[129319,129327],[129338,129339],[129343,129488],[129502,130031],[130042,917504],[917506,917535],[917632,917759],[918e3,1114111]],Regional_Indicator:[[127462,127487]],Single_Quote:[39],WSegSpace:[32,5760,[8192,8198],[8200,8202],8287,12288],ZWJ:[8205]},Symbol.toStringTag,{value:"Module"}))},Symbol.toStringTag,{value:"Module"}));function D0(r){const t=Object.keys(r);if(t.length===0)throw new Error("Expected at least one category, but received 0.");if(t.some(n=>{const s=r[n];return s===void 0||s.length===0}))throw new Error("Expected at least one sub category, but received 0.");return t.map(n=>{const i=r[n].map(a=>v3(n,a));return new j1().union(...i)}).reduce((n,s)=>n.intersect(s))}function v3(r,t){const n=D3[r][t];return new j1().union(...n)}const Tt=D0({Script:["Han","Katakana","Hiragana","Hangul","Bopomofo"],General_Category:["Other_Letter","Letter_Number","Other_Symbol","Modifier_Letter"]}),v0=D0({Block:["CJK_Compatibility","CJK_Symbols_And_Punctuation","Vertical_Forms","CJK_Compatibility_Forms","Small_Form_Variants","Halfwidth_And_Fullwidth_Forms","Ideographic_Description_Characters","Kanbun","CJK_Strokes","Enclosed_CJK_Letters_And_Months"]}).subtract(Tt),m3=N2(Tt,v0);function b3(){return N2(m3)}function y3(){return N2(Tt)}function F3(){return N2(v0)}const m0="0",b0=r=>({sbr:.6,sbo:r,spr:.6,spo:r});class re{static get globalFontMeasureCache(){return this._globalFontMeasureCache}static setFontMeasureCache(t,e,n){this._globalFontMeasureCache.has(t)||this._globalFontMeasureCache.set(t,new Map);const s=this._globalFontMeasureCache.get(t);s&&s.set(e,n)}static clearFontMeasureCache(t){var n;const e=t.split("/");if(e.length===1){const s=e[0];this._globalFontMeasureCache.delete(s)}else if(e.length===2){const s=e[0],i=e[1];(n=this._globalFontMeasureCache.get(s))==null||n.delete(i)}else return!1;return!0}static getFontMeasureCache(t,e){var n;return(n=this._globalFontMeasureCache.get(t))==null?void 0:n.get(e)}static autoCleanFontMeasureCache(t=1e6){let e=0,n=!1;for(const s of this._globalFontMeasureCache){const[,i]=s;if(e+=i.size,e>t){n=!0;break}}if(n){let s=0;for(const i of this._globalFontMeasureCache){const[a,o]=i;if(s+=o.size,s>t/2){const u=s-t/2;this._clearMeasureCache(u,o);break}this._globalFontMeasureCache.delete(a)}return!0}return!1}static getBaselineOffsetInfo(t,e){if(this._fontDataMap.size===0)return b0(e);const n=t.split(",");for(let s of n){s=s.replace(/'/g,"");const i=this._fontDataMap.get(s);if(!i)continue;const{subscriptSizeRatio:a,subscriptOffset:o,superscriptSizeRatio:u,superscriptOffset:l}=i;return{sbr:a,sbo:o*e,spr:u,spo:l*e}}return b0(e)}static getTextSizeByDom(t,e){if(e in this._getTextHeightCache)return this._getTextHeightCache[e];let n=document.getElementById("universheetTextSizeTest");const s="float:left;white-space:nowrap;visibility:hidden;margin:0;padding:0;";n||(n=document.createElement("span"),n.id="universheetTextSizeTest",document.getElementsByTagName("body")[0].appendChild(n)),n.style.cssText+=`${s};${e}`,n.textContent=t;const i=n.getBoundingClientRect(),a={width:i.width,height:i.height};return this._getTextHeightCache[e]=a,a}static getTextSize(t,e){const{fontString:n,fontSize:s,fontFamily:i}=e;let a=this._getBoundingBoxByFont(i,s);if(!a){const o=this.getMeasureText(t,n);a=this._calculateBoundingBoxByMeasureText(o,e)}return a}static getBBoxFromGlyphInfo(t,e){var c;const n=t.glyph,s=t.font,{y1:i,y2:a}=t.boundingBox,o=Pt(e.fontSize)/s.unitsPerEm,{ascender:u,descender:l}=s;return this._calculateBoundingBoxByMeasureText({width:((c=n.advanceWidth)!=null?c:0)*o,fontBoundingBoxAscent:u*o,fontBoundingBoxDescent:Math.abs(l*o),actualBoundingBoxAscent:a*o,actualBoundingBoxDescent:Math.abs(i*o)},e)}static getMeasureText(t,e){if(!this._context){const f=document.createElement("canvas");this._context=f.getContext("2d")}const n=this._context,s=this.getFontMeasureCache(e,t);if(s!=null)return s;n.font=e;const i=n.measureText(t),{width:a,fontBoundingBoxAscent:o,fontBoundingBoxDescent:u,actualBoundingBoxAscent:l,actualBoundingBoxDescent:c}=i,h={width:a,fontBoundingBoxAscent:o,fontBoundingBoxDescent:u,actualBoundingBoxAscent:l,actualBoundingBoxDescent:c};if(o==null||u==null||Number.isNaN(o)||Number.isNaN(u)){const f=this.getTextSizeByDom(m0,e).height;n.textBaseline==="top"?(h.fontBoundingBoxAscent=h.actualBoundingBoxAscent=f,h.fontBoundingBoxDescent=h.actualBoundingBoxDescent=0):n.textBaseline==="middle"?(h.fontBoundingBoxDescent=h.actualBoundingBoxDescent=f/2,h.fontBoundingBoxAscent=h.actualBoundingBoxAscent=f/2):(h.fontBoundingBoxDescent=h.actualBoundingBoxDescent=0,h.fontBoundingBoxAscent=h.actualBoundingBoxAscent=f)}return this.setFontMeasureCache(e,t,h),h}static _clearMeasureCache(t,e){let n=0;for(const s of e){const[i]=s;if(n>t)break;e.delete(i),n++}return!0}static _getBoundingBoxByFont(t,e=28,n=""){const s=this._fontDataMap.get(t);if(!s)return;const{notDefWidth:i,ascender:a,descender:o,typoAscender:u,typoDescender:l,strikeoutPosition:c,subscriptSizeRatio:h,subscriptOffset:f,superscriptSizeRatio:d,superscriptOffset:D,hdmxData:m,glyphHorizonMap:v}=s,F=m==null?void 0:m.indexOf(Math.floor(e)),C=v.get(n.charCodeAt(0));let S=i;if(C){const{width:B,pixelsPerEm:w=[]}=C;F?S=w[F]:S=B}return{width:S*e,ba:a*e,bd:o*e,aba:u*e,abd:l*e,sp:c*e,sbr:h,sbo:f*e,spr:d,spo:D*e}}static _calculateBoundingBoxByMeasureText(t,e){const{width:n,fontBoundingBoxAscent:s,fontBoundingBoxDescent:i,actualBoundingBoxAscent:a,actualBoundingBoxDescent:o}=t,{fontSize:u,originFontSize:l}=e,c=l/u,h=s*c,f=i*c;return{width:n,ba:h,bd:f,aba:a,abd:o,sp:(s+i)/2,sbr:.6,spr:.6,sbo:(h+f)*.141,spo:(h+f)*.4}}}_(re,"_getTextHeightCache",{}),_(re,"_context"),_(re,"_fontDataMap",new Map),_(re,"_globalFontMeasureCache",new Map);const y0=180,C3=Math.PI/y0,E3=y0/Math.PI,F0="rgb(",S3="rgba(",F1=(r,t)=>r?t!=null?`${S3+r.join(",")},${t})`:`${F0+r.join(",")})`:`${F0}0,0,0)`,T3=100,se=(r,t)=>{if(g.Tools.isNumber(r))return r;if(t&&r&&g.Tools.isString(r)&&r.substr(r.length-1,1)==="%"){const e=Number.parseFloat(r)/T3;return t*e}return 0},w3=16,c2=(r,t)=>(t||(t=window),t.requestPostAnimationFrame?t.requestPostAnimationFrame(r):t.requestAnimationFrame?t.requestAnimationFrame(r):t.msRequestAnimationFrame?t.msRequestAnimationFrame(r):t.webkitRequestAnimationFrame?t.webkitRequestAnimationFrame(r):t.mozRequestAnimationFrame?t.mozRequestAnimationFrame(r):t.oRequestAnimationFrame?t.oRequestAnimationFrame(r):setTimeout(r,w3)),C0=(r,t)=>(t||(t=window),t.requestPostAnimationFrame?t.cancelPostAnimationFrame(r):t.requestAnimationFrame?t.cancelAnimationFrame(r):t.msRequestAnimationFrame?t.msCancelAnimationFrame(r):t.webkitRequestAnimationFrame?t.webkitCancelAnimationFrame(r):t.mozRequestAnimationFrame?t.mozCancelAnimationFrame(r):t.oRequestAnimationFrame?t.oCancelAnimationFrame(r):clearTimeout(r)),wt=()=>{const r=document.createElement("canvas");try{r.style=r.style||{}}catch(t){console.error(t)}return r},B3=()=>document.createElement("img"),E0=r=>r*E3,V1=r=>r*C3,Bt=()=>{let r="pointer";return typeof window<"u"&&!window.PointerEvent&&typeof navigator<"u"&&(r="mouse"),g.Tools.isTablet()&&!g.Tools.isIPhone()&&!(document&&"ontouchend"in document)&&(r="mouse"),r},S0=()=>g.Tools.getBrowserType()==="safari",O3=4,T0=(r="obj",t=O3)=>{const e=window.navigator.userAgent.replace(/[^a-zA-Z0-9]/g,"").split("");let n="";for(let i=0;i<t;i++)n+=e[Math.round(Math.random()*(e.length-1))];const s=new Date().getTime();return`${r}_${n}_${s}`};function fe(r){return Object.prototype.toString.apply(r)}function Ot(r){return fe(r)==="[object Function]"}function x3(r){return fe(r)==="[object Date]"}function R3(r){return fe(r)==="[object RegExp]"}function A3(r){return fe(r)==="[object Array]"}function xt(r){return fe(r)==="[object String]"}function k3(r){return fe(r)==="[object Number]"}function $3(r){return fe(r)==="[object Object]"}function U2(r,t){return t=10**t,Math.round(r*t)/t}function Z(r,t){return Math.round(r*t)/t}const w0=11,B0="Arial";function h2(r,t){const e=B0,n=w0;if(!r){const f=`${n}pt ${e}`;return{fontCache:f,fontString:f,fontSize:n,originFontSize:n,fontFamily:e}}let s=g.FontStyleType.ITALIC;(r.it===0||r.it===void 0)&&(s=g.FontStyleType.NORMAL);let i=g.FontStyleType.BOLD;(r.bl===0||r.bl===void 0)&&(i=g.FontStyleType.NORMAL);let a=n;r.fs&&(a=Math.ceil(r.fs));let o=a,u=e;if(r.ff){let f=r.ff;f=f.replace(/"/g,"").replace(/'/g,""),f.indexOf(" ")>-1&&(f=`"${f}"`),f==null&&(f=e),u=f}const{va:l}=r;if(l===g.BaselineOffset.SUBSCRIPT||l===g.BaselineOffset.SUPERSCRIPT){const f=re.getBaselineOffsetInfo(u,o),{sbr:d,spr:D}=f;o*=l===g.BaselineOffset.SUBSCRIPT?d:D}const c=`${s} ${i} ${o}pt ${u}`,h=`${c}, ${o2} `;return{fontCache:c,fontString:h,fontSize:o,originFontSize:a,fontFamily:u}}const I3=y3().toRegExp();function f2(r){return I3.test(r)}const L3=b3().toRegExp();function d2(r){return L3.test(r)}const P3=F3().toRegExp();function Rt(r){return P3.test(r)}function M3(r){return!!/[\u0000-\u024F]/gi.exec(r)}function N3(r){return!!/[\u0000-\u007F]/gi.exec(r)}function U3(r){return!!/[\u0080-\u00FF]/gi.exec(r)}function H3(r){return!!/[\u0100-\u017F]/gi.exec(r)}function G3(r){return!!/[\u0180-\u024F]/gi.exec(r)}const H2=/^(?:[#*0-9]\uFE0F?\u20E3|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26AA\u26B0\u26B1\u26BD\u26BE\u26C4\u26C8\u26CF\u26D1\u26E9\u26F0-\u26F5\u26F7\u26F8\u26FA\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2757\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B55\u3030\u303D\u3297\u3299]\uFE0F?|[\u261D\u270C\u270D](?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?|[\u270A\u270B](?:\uD83C[\uDFFB-\uDFFF])?|[\u23E9-\u23EC\u23F0\u23F3\u25FD\u2693\u26A1\u26AB\u26C5\u26CE\u26D4\u26EA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2795-\u2797\u27B0\u27BF\u2B50]|\u26D3\uFE0F?(?:\u200D\uD83D\uDCA5)?|\u26F9(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|\u2764\uFE0F?(?:\u200D(?:\uD83D\uDD25|\uD83E\uDE79))?|\uD83C(?:[\uDC04\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]\uFE0F?|[\uDF85\uDFC2\uDFC7](?:\uD83C[\uDFFB-\uDFFF])?|[\uDFC4\uDFCA](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDFCB\uDFCC](?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF43\uDF45-\uDF4A\uDF4C-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uDDE6\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF]|\uDDE7\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF]|\uDDE8\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF]|\uDDE9\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF]|\uDDEA\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA]|\uDDEB\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7]|\uDDEC\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE]|\uDDED\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA]|\uDDEE\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9]|\uDDEF\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5]|\uDDF0\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF]|\uDDF1\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE]|\uDDF2\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF]|\uDDF3\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF]|\uDDF4\uD83C\uDDF2|\uDDF5\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE]|\uDDF6\uD83C\uDDE6|\uDDF7\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC]|\uDDF8\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF]|\uDDF9\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF]|\uDDFA\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF]|\uDDFB\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA]|\uDDFC\uD83C[\uDDEB\uDDF8]|\uDDFD\uD83C\uDDF0|\uDDFE\uD83C[\uDDEA\uDDF9]|\uDDFF\uD83C[\uDDE6\uDDF2\uDDFC]|\uDF44(?:\u200D\uD83D\uDFEB)?|\uDF4B(?:\u200D\uD83D\uDFE9)?|\uDFC3(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDFF3\uFE0F?(?:\u200D(?:\u26A7\uFE0F?|\uD83C\uDF08))?|\uDFF4(?:\u200D\u2620\uFE0F?|\uDB40\uDC67\uDB40\uDC62\uDB40(?:\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDC73\uDB40\uDC63\uDB40\uDC74|\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F)?)|\uD83D(?:[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3]\uFE0F?|[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC](?:\uD83C[\uDFFB-\uDFFF])?|[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4\uDEB5](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD74\uDD90](?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?|[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC25\uDC27-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE41\uDE43\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEDC-\uDEDF\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB\uDFF0]|\uDC08(?:\u200D\u2B1B)?|\uDC15(?:\u200D\uD83E\uDDBA)?|\uDC26(?:\u200D(?:\u2B1B|\uD83D\uDD25))?|\uDC3B(?:\u200D\u2744\uFE0F?)?|\uDC41\uFE0F?(?:\u200D\uD83D\uDDE8\uFE0F?)?|\uDC68(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDC68\uDC69]\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE])))?))?|\uDC69(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?[\uDC68\uDC69]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?|\uDC69\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?))|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFE])))?))?|\uDC6F(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDD75(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDE2E(?:\u200D\uD83D\uDCA8)?|\uDE35(?:\u200D\uD83D\uDCAB)?|\uDE36(?:\u200D\uD83C\uDF2B\uFE0F?)?|\uDE42(?:\u200D[\u2194\u2195]\uFE0F?)?|\uDEB6(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?)|\uD83E(?:[\uDD0C\uDD0F\uDD18-\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5\uDEC3-\uDEC5\uDEF0\uDEF2-\uDEF8](?:\uD83C[\uDFFB-\uDFFF])?|[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD\uDDCF\uDDD4\uDDD6-\uDDDD](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDDDE\uDDDF](?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD0D\uDD0E\uDD10-\uDD17\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCC\uDDD0\uDDE0-\uDDFF\uDE70-\uDE7C\uDE80-\uDE88\uDE90-\uDEBD\uDEBF-\uDEC2\uDECE-\uDEDB\uDEE0-\uDEE8]|\uDD3C(?:\u200D[\u2640\u2642]\uFE0F?|\uD83C[\uDFFB-\uDFFF])?|\uDDCE(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDDD1(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1|\uDDD1\u200D\uD83E\uDDD2(?:\u200D\uD83E\uDDD2)?|\uDDD2(?:\u200D\uD83E\uDDD2)?))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?))?|\uDEF1(?:\uD83C(?:\uDFFB(?:\u200D\uD83E\uDEF2\uD83C[\uDFFC-\uDFFF])?|\uDFFC(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFD-\uDFFF])?|\uDFFD(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])?|\uDFFE(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFD\uDFFF])?|\uDFFF(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFE])?))?))/g,z3=/^(?:[#*0-9]\uFE0F?\u20E3|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26AA\u26B0\u26B1\u26BD\u26BE\u26C4\u26C8\u26CF\u26D1\u26E9\u26F0-\u26F5\u26F7\u26F8\u26FA\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2757\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B55\u3030\u303D\u3297\u3299]\uFE0F?|[\u261D\u270C\u270D](?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?|[\u270A\u270B](?:\uD83C[\uDFFB-\uDFFF])?|[\u23E9-\u23EC\u23F0\u23F3\u25FD\u2693\u26A1\u26AB\u26C5\u26CE\u26D4\u26EA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2795-\u2797\u27B0\u27BF\u2B50]|\u26D3\uFE0F?(?:\u200D\uD83D\uDCA5)?|\u26F9(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|\u2764\uFE0F?(?:\u200D(?:\uD83D\uDD25|\uD83E\uDE79))?|\uD83C(?:[\uDC04\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]\uFE0F?|[\uDF85\uDFC2\uDFC7](?:\uD83C[\uDFFB-\uDFFF])?|[\uDFC4\uDFCA](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDFCB\uDFCC](?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF43\uDF45-\uDF4A\uDF4C-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uDDE6\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF]|\uDDE7\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF]|\uDDE8\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF]|\uDDE9\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF]|\uDDEA\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA]|\uDDEB\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7]|\uDDEC\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE]|\uDDED\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA]|\uDDEE\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9]|\uDDEF\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5]|\uDDF0\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF]|\uDDF1\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE]|\uDDF2\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF]|\uDDF3\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF]|\uDDF4\uD83C\uDDF2|\uDDF5\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE]|\uDDF6\uD83C\uDDE6|\uDDF7\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC]|\uDDF8\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF]|\uDDF9\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF]|\uDDFA\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF]|\uDDFB\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA]|\uDDFC\uD83C[\uDDEB\uDDF8]|\uDDFD\uD83C\uDDF0|\uDDFE\uD83C[\uDDEA\uDDF9]|\uDDFF\uD83C[\uDDE6\uDDF2\uDDFC]|\uDF44(?:\u200D\uD83D\uDFEB)?|\uDF4B(?:\u200D\uD83D\uDFE9)?|\uDFC3(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDFF3\uFE0F?(?:\u200D(?:\u26A7\uFE0F?|\uD83C\uDF08))?|\uDFF4(?:\u200D\u2620\uFE0F?|\uDB40\uDC67\uDB40\uDC62\uDB40(?:\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDC73\uDB40\uDC63\uDB40\uDC74|\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F)?)|\uD83D(?:[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3]\uFE0F?|[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC](?:\uD83C[\uDFFB-\uDFFF])?|[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4\uDEB5](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD74\uDD90](?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?|[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC25\uDC27-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE41\uDE43\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEDC-\uDEDF\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB\uDFF0]|\uDC08(?:\u200D\u2B1B)?|\uDC15(?:\u200D\uD83E\uDDBA)?|\uDC26(?:\u200D(?:\u2B1B|\uD83D\uDD25))?|\uDC3B(?:\u200D\u2744\uFE0F?)?|\uDC41\uFE0F?(?:\u200D\uD83D\uDDE8\uFE0F?)?|\uDC68(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDC68\uDC69]\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE])))?))?|\uDC69(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?[\uDC68\uDC69]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?|\uDC69\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?))|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFE])))?))?|\uDC6F(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDD75(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDE2E(?:\u200D\uD83D\uDCA8)?|\uDE35(?:\u200D\uD83D\uDCAB)?|\uDE36(?:\u200D\uD83C\uDF2B\uFE0F?)?|\uDE42(?:\u200D[\u2194\u2195]\uFE0F?)?|\uDEB6(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?)|\uD83E(?:[\uDD0C\uDD0F\uDD18-\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5\uDEC3-\uDEC5\uDEF0\uDEF2-\uDEF8](?:\uD83C[\uDFFB-\uDFFF])?|[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD\uDDCF\uDDD4\uDDD6-\uDDDD](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDDDE\uDDDF](?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD0D\uDD0E\uDD10-\uDD17\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCC\uDDD0\uDDE0-\uDDFF\uDE70-\uDE7C\uDE80-\uDE88\uDE90-\uDEBD\uDEBF-\uDEC2\uDECE-\uDEDB\uDEE0-\uDEE8]|\uDD3C(?:\u200D[\u2640\u2642]\uFE0F?|\uD83C[\uDFFB-\uDFFF])?|\uDDCE(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDDD1(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1|\uDDD1\u200D\uD83E\uDDD2(?:\u200D\uD83E\uDDD2)?|\uDDD2(?:\u200D\uD83E\uDDD2)?))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?))?|\uDEF1(?:\uD83C(?:\uDFFB(?:\u200D\uD83E\uDEF2\uD83C[\uDFFC-\uDFFF])?|\uDFFC(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFD-\uDFFF])?|\uDFFD(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])?|\uDFFE(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFD\uDFFF])?|\uDFFF(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFE])?))?))/;function G2(r){return z3.test(r)}function At(r){return/[\u0600-\u06FF]|[\u0750-\u0750]|[\u0870-\u08FF]|[\uFB50-\uFDFF]|[\uFE70-\uFEFF]/gi.test(r)}function kt(r){return/[\u0180-\u024F]/gi.test(r)}function O0(r){return/\s+/g.test(r)}function z2(r){return["”","’",",","。",".","、",":",";","?","!","》",")","』","」","】","〗","〕","〉","]","}"].indexOf(r)>-1}function X2(r){return["“","‘","《","(","『","「","【","〖","〔","〈","[","{"].indexOf(r)>-1}function $t(r){return["・","·"].indexOf(r)>-1}const x0=1e3;let W2;function _2(){if(W2)return W2;let r=56;for(;r<x0*2;r++)if(matchMedia(`(max-resolution: ${r}dpi)`).matches===!0)return r;return W2=r,setTimeout(()=>{W2=null},x0),r}const R0=72,X3=25.4;function W3(r){return r/(R0/_2())}function Y3(r){return r*(R0/_2())}function j3(r){return r*(_2()/X3)}function V3(r){return r*_2()}function It(r){const{scaleX:t=1,scaleY:e=1}=r;return Math.max(t,e)}function ye(r,t,e,n){const s=r-1,i=t-1,a=e[s]||0;let o=e[r];o==null&&(o=e[e.length-1]);const u=n[i]||0;let l=n[t];return l==null&&(l=n[n.length-1]),{startY:a,endY:o,startX:u,endX:l}}function Me(r,t,e,n,s){let{startY:i,endY:a,startX:o,endX:u}=ye(r,t,e,n);const{isMerged:l,isMergedMainCell:c,startRow:h,startColumn:f,endRow:d,endColumn:D}=g2(r,t,s);let m={startRow:h,startColumn:f,endRow:d,endColumn:D,startY:0,endY:0,startX:0,endX:0};const v=e.length-1,F=n.length-1;if(l&&h!==-1&&f!==-1){const C=e[h-1]||0,S=e[d]||e[v],B=n[f-1]||0,w=n[D]||n[F];m={...m,startY:C,endY:S,startX:B,endX:w}}else if(!l&&d!==-1&&D!==-1){const C=e[d]||e[v],S=n[D]||n[F];m={...m,startY:i,endY:C,startX:o,endX:S}}return{isMerged:l,isMergedMainCell:c,actualRow:r,actualColumn:t,startY:i,endY:a,startX:o,endX:u,mergeInfo:m}}function g2(r,t,e){let n=!1,s=!1,i=r,a=t,o=r,u=t;if(e==null)return{actualRow:r,actualColumn:t,isMergedMainCell:s,isMerged:n,endRow:i,endColumn:a,startRow:o,startColumn:u};for(let l=0;l<e.length;l++){const{startRow:c,endRow:h,startColumn:f,endColumn:d}=e[l];if(r===c&&t===f){i=h,a=d,o=c,u=f,s=!0;break}if(r>=c&&r<=h&&t>=f&&t<=d){i=h,a=d,o=c,u=f,n=!0;break}}return{actualRow:r,actualColumn:t,isMergedMainCell:s,isMerged:n,endRow:i,endColumn:a,startRow:o,startColumn:u}}function A0(r,t,e,n){let s=!1;for(let i=t;i<=e;i++){const{isMerged:a,isMergedMainCell:o}=g2(r,i,n);if(!a&&!o){s=!0;break}}return s}function Lt(r,t,e){const{startY:n,endY:s,startX:i,endX:a}=r;return r.startY=n+e,r.endY=s+e,r.startX=i+t,r.endX=a+t,{...r}}function k0(r,t){return!(r.left>t.right||r.top>t.bottom||t.left>r.right||t.top>r.bottom)}function K3(r){const t=document.createElement("style");document.head.appendChild(t);const e=t.sheet;for(const n of r)e==null||e.insertRule(n,e.cssRules.length)}function q3(r){for(let t=0,e=document.head.childNodes.length;t<e;t++){const n=document.head.childNodes[t];if(n.nodeName==="STYLE"&&n.textContent&&n.textContent.indexOf(r)>-1)return!0}return!1}function Fe(r){return Number(r.replace(/px/gi,""))}function $0(r){const t=getComputedStyle(r),{borderTopWidth:e,borderLeftWidth:n,borderRightWidth:s,borderBottomWidth:i,width:a,height:o}=t;return{top:Fe(e),left:Fe(n),right:Fe(s),bottom:Fe(i),width:Fe(a),height:Fe(o)}}const I0=.75;function Pt(r){return r/I0}function Z3(r){return r*I0}class P{constructor(t=0,e=0){this.x=t,this.y=e}static Zero(){return new P(0,0)}static One(){return new P(1,1)}static FromArray(t,e=0){return new P(t[e],t[e+1])}static FromArrayToRef(t,e,n){n.x=t[e],n.y=t[e+1]}static CatmullRom(t,e,n,s,i){const a=i*i,o=i*a,u=.5*(2*e.x+(-t.x+n.x)*i+(2*t.x-5*e.x+4*n.x-s.x)*a+(-t.x+3*e.x-3*n.x+s.x)*o),l=.5*(2*e.y+(-t.y+n.y)*i+(2*t.y-5*e.y+4*n.y-s.y)*a+(-t.y+3*e.y-3*n.y+s.y)*o);return new P(u,l)}static Clamp(t,e,n){let s=t.x;s=s>n.x?n.x:s,s=s<e.x?e.x:s;let i=t.y;return i=i>n.y?n.y:i,i=i<e.y?e.y:i,new P(s,i)}static Hermite(t,e,n,s,i){const a=i*i,o=i*a,u=2*o-3*a+1,l=-2*o+3*a,c=o-2*a+i,h=o-a,f=t.x*u+n.x*l+e.x*c+s.x*h,d=t.y*u+n.y*l+e.y*c+s.y*h;return new P(f,d)}static Hermite1stDerivative(t,e,n,s,i){const a=P.Zero();return this.Hermite1stDerivativeToRef(t,e,n,s,i,a),a}static Hermite1stDerivativeToRef(t,e,n,s,i,a){const o=i*i;a.x=(o-i)*6*t.x+(3*o-4*i+1)*e.x+(-o+i)*6*n.x+(3*o-2*i)*s.x,a.y=(o-i)*6*t.y+(3*o-4*i+1)*e.y+(-o+i)*6*n.y+(3*o-2*i)*s.y}static Lerp(t,e,n){const s=t.x+(e.x-t.x)*n,i=t.y+(e.y-t.y)*n;return new P(s,i)}static Dot(t,e){return t.x*e.x+t.y*e.y}static Normalize(t){const e=P.Zero();return this.NormalizeToRef(t,e),e}static NormalizeToRef(t,e){const n=t.length();n!==0&&(e.x=t.x/n,e.y=t.y/n)}static Minimize(t,e){const n=t.x<e.x?t.x:e.x,s=t.y<e.y?t.y:e.y;return new P(n,s)}static Maximize(t,e){const n=t.x>e.x?t.x:e.x,s=t.y>e.y?t.y:e.y;return new P(n,s)}static PointInTriangle(t,e,n,s){const i=.5*(-n.y*s.x+e.y*(-n.x+s.x)+e.x*(n.y-s.y)+n.x*s.y),a=i<0?-1:1,o=(e.y*s.x-e.x*s.y+(s.y-e.y)*t.x+(e.x-s.x)*t.y)*a,u=(e.x*n.y-e.y*n.x+(e.y-n.y)*t.x+(n.x-e.x)*t.y)*a;return o>0&&u>0&&o+u<2*i*a}static Distance(t,e){return Math.sqrt(P.DistanceSquared(t,e))}static DistanceSquared(t,e){const n=t.x-e.x,s=t.y-e.y;return n*n+s*s}static Center(t,e){return P.CenterToRef(t,e,P.Zero())}static CenterToRef(t,e,n){return n.copyFromFloats((t.x+e.x)/2,(t.y+e.y)/2)}static DistanceOfPointFromSegment(t,e,n){const s=P.DistanceSquared(e,n);if(s===0)return P.Distance(t,e);const i=n.subtract(e),a=Math.max(0,Math.min(1,P.Dot(t.subtract(e),i)/s)),o=e.add(i.multiplyByFloats(a,a));return P.Distance(t,o)}static create(t,e){return new P(t,e)}toString(){return`{X: ${this.x} Y: ${this.y}}`}getClassName(){return"Vector2"}getHashCode(){let t=this.x|0;return t=t*397^(this.y|0),t}toArray(t,e=0){return t[e]=this.x,t[e+1]=this.y,this}fromArray(t,e=0){return P.FromArrayToRef(t,e,this),this}asArray(){const t=new Array;return this.toArray(t,0),t}copyFrom(t){return this.x=t.x,this.y=t.y,this}copyFromFloats(t,e){return this.x=t,this.y=e,this}set(t,e){return this.copyFromFloats(t,e)}add(t){return new P(this.x+t.x,this.y+t.y)}addToRef(t,e){return e.x=this.x+t.x,e.y=this.y+t.y,this}addByPoint(t,e){return new P(this.x+t,this.y+e)}addInPlace(t){return this.x+=t.x,this.y+=t.y,this}subtract(t){return new P(this.x-t.x,this.y-t.y)}subtractByPoint(t,e){return new P(this.x-t,this.y-e)}subtractToRef(t,e){return e.x=this.x-t.x,e.y=this.y-t.y,this}subtractInPlace(t){return this.x-=t.x,this.y-=t.y,this}multiplyInPlace(t){return this.x*=t.x,this.y*=t.y,this}multiply(t){return new P(this.x*t.x,this.y*t.y)}multiplyToRef(t,e){return e.x=this.x*t.x,e.y=this.y*t.y,this}multiplyByFloats(t,e){return new P(this.x*t,this.y*e)}divide(t){return new P(this.x/t.x,this.y/t.y)}divideToRef(t,e){return e.x=this.x/t.x,e.y=this.y/t.y,this}divideInPlace(t){return this.divideToRef(t,this)}negate(){return new P(-this.x,-this.y)}negateInPlace(){return this.x*=-1,this.y*=-1,this}negateToRef(t){return t.copyFromFloats(this.x*-1,this.y*-1)}scaleInPlace(t){return this.x*=t,this.y*=t,this}scale(t){const e=new P(0,0);return this.scaleToRef(t,e),e}scaleToRef(t,e){return e.x=this.x*t,e.y=this.y*t,this}scaleAndAddToRef(t,e){return e.x+=this.x*t,e.y+=this.y*t,this}equals(t){return t&&this.x===t.x&&this.y===t.y}floor(){return new P(Math.floor(this.x),Math.floor(this.y))}fract(){return new P(this.x-Math.floor(this.x),this.y-Math.floor(this.y))}rotate(t){const e=Math.cos(t),n=Math.sin(t),s=e*this.x-n*this.y,i=n*this.x+e*this.y;return this.x=s,this.y=i,this}rotateToRef(t,e){const n=Math.cos(t),s=Math.sin(t);return e.x=n*this.x-s*this.y,e.y=s*this.x+n*this.y,this}rotateByPoint(t,e=P.create(0,0)){const n=Math.cos(t),s=Math.sin(t),i=e.x+(this.x-e.x)*n-(this.y-e.y)*s,a=e.y+(this.x-e.x)*s+(this.y-e.y)*n;return this.x=i,this.y=a,this}transformCoordinateOnRotate(t){const e=Math.sqrt(this.x**2+this.y**2),n=Math.atan2(this.y,this.x),s=-t+n;return this.x=e*Math.cos(s),this.y=e*Math.sin(s),this}length(){return Math.sqrt(this.x*this.x+this.y*this.y)}lengthSquared(){return this.x*this.x+this.y*this.y}normalize(){return P.NormalizeToRef(this,this),this}clone(){return new P(this.x,this.y)}}const Y2=[1,0,0,1,0,0];class D1{constructor(t=Y2){_(this,"dirty",!1);_(this,"_m");this._m=t&&t.slice()||Y2}static create(t=Y2){return new this(t)}reset(){this._m[0]=1,this._m[1]=0,this._m[2]=0,this._m[3]=1,this._m[4]=0,this._m[5]=0}copy(){return new D1(this._m)}copyInto(t){t._m[0]=this._m[0],t._m[1]=this._m[1],t._m[2]=this._m[2],t._m[3]=this._m[3],t._m[4]=this._m[4],t._m[5]=this._m[5]}applyPoint(t,e=!1){const n=this._m,s=n[0]*t.x+n[2]*t.y,i=n[1]*t.x+n[3]*t.y;return e?new P(s,i):new P(s+n[4],i+n[5])}translate(t,e){return this._m[4]+=this._m[0]*t+this._m[2]*e,this._m[5]+=this._m[1]*t+this._m[3]*e,this}scale(t,e){return this._m[0]*=t,this._m[1]*=t,this._m[2]*=e,this._m[3]*=e,this}rotate(t){const e=V1(t),n=Math.cos(e),s=Math.sin(e),i=this._m[0]*n+this._m[2]*s,a=this._m[1]*n+this._m[3]*s,o=this._m[0]*-s+this._m[2]*n,u=this._m[1]*-s+this._m[3]*n;return this._m[0]=i,this._m[1]=a,this._m[2]=o,this._m[3]=u,this}getTranslation(){return{x:this._m[4],y:this._m[5]}}skew(t,e){const n=this._m[0]+this._m[2]*e,s=this._m[1]+this._m[3]*e,i=this._m[2]+this._m[0]*t,a=this._m[3]+this._m[1]*t;return this._m[0]=n,this._m[1]=s,this._m[2]=i,this._m[3]=a,this}multiply(t){const e=this._m[0]*t._m[0]+this._m[2]*t._m[1],n=this._m[1]*t._m[0]+this._m[3]*t._m[1],s=this._m[0]*t._m[2]+this._m[2]*t._m[3],i=this._m[1]*t._m[2]+this._m[3]*t._m[3],a=this._m[0]*t._m[4]+this._m[2]*t._m[5]+this._m[4],o=this._m[1]*t._m[4]+this._m[3]*t._m[5]+this._m[5];return this._m[0]=e,this._m[1]=n,this._m[2]=s,this._m[3]=i,this._m[4]=a,this._m[5]=o,this}invert(){const t=1/(this._m[0]*this._m[3]-this._m[1]*this._m[2]),e=this._m[3]*t,n=-this._m[1]*t,s=-this._m[2]*t,i=this._m[0]*t,a=t*(this._m[2]*this._m[5]-this._m[3]*this._m[4]),o=t*(this._m[1]*this._m[4]-this._m[0]*this._m[5]);return this._m[0]=e,this._m[1]=n,this._m[2]=s,this._m[3]=i,this._m[4]=a,this._m[5]=o,this}getMatrix(){return this._m}getMatrixByAccurate(t=3){return this._m.map(e=>U2(e,t))}setAbsolutePosition(t){const e=this._m[0],n=this._m[1],s=this._m[2],i=this._m[3],a=this._m[4],o=this._m[5],u=(e*(t.y-o)-n*(t.x-a))/(e*i-n*s),l=(t.x-a-s*u)/e;return this.translate(l,u)}decompose(){const t=this._m[0],e=this._m[1],n=this._m[2],s=this._m[3],i=this._m[4],a=this._m[5],o=t*s-e*n,u={x:i,y:a,angle:0,scaleX:0,scaleY:0,skewX:0,skewY:0};if(t!==0||e!==0){const l=Math.sqrt(t*t+e*e);u.angle=e>0?Math.acos(t/l):-Math.acos(t/l),u.scaleX=l,u.scaleY=o/l,u.skewX=(t*n+e*s)/o,u.skewY=0}else if(n!==0||s!==0){const l=Math.sqrt(n*n+s*s);u.angle=Math.PI/2-(s>0?Math.acos(-n/l):-Math.acos(n/l)),u.scaleX=o/l,u.scaleY=l,u.skewX=0,u.skewY=(t*n+e*s)/o}return u.angle=E0(u.angle),u}makeBoundingBoxFromPoints(t){if(this)for(let c=0;c<t.length;c++)t[c]=this.applyPoint(t[c]);const e=[t[0].x,t[1].x,t[2].x,t[3].x],n=Math.min(...e),i=Math.max(...e)-n,a=[t[0].y,t[1].y,t[2].y,t[3].y],o=Math.min(...a),l=Math.max(...a)-o;return{left:n,top:o,width:i,height:l,points:t}}composeMatrix(t){const e=new D1([1,0,0,1,t.left||0,t.top||0]);return t.angle&&e.rotate(t.angle),(t.scaleX!==1||t.scaleY!==1||t.skewX||t.skewY||t.flipX||t.flipY)&&e.multiply(this._calcDimensionsMatrix(t)),this._m=e.getMatrix(),this}clone(){return new D1([...this._m])}_calcDimensionsMatrix(t){var i,a;const e=(i=t.scaleX)!=null?i:1,n=(a=t.scaleY)!=null?a:1,s=new D1([t.flipX?-e:e,0,0,t.flipY?-n:n,0,0]);return t.skewX&&s.multiply(new D1([1,0,Math.tan(V1(t.skewX)),1,0,0])),t.skewY&&s.multiply(new D1([1,Math.tan(V1(t.skewY)),0,1,0,0])),s}}const j2=["top","left","width","height","angle","scaleX","scaleY","skewX","skewY","flipX","flipY","strokeWidth"];class ie{constructor(t){_(this,"groupKey");_(this,"isInGroup",!1);_(this,"onTransformChangeObservable",new g.Observable);_(this,"onPointerDownObserver",new g.Observable);_(this,"onPointerMoveObserver",new g.Observable);_(this,"onPointerUpObserver",new g.Observable);_(this,"onDblclickObserver",new g.Observable);_(this,"onTripleClickObserver",new g.Observable);_(this,"onMouseWheelObserver",new g.Observable);_(this,"onPointerOutObserver",new g.Observable);_(this,"onPointerLeaveObserver",new g.Observable);_(this,"onPointerOverObserver",new g.Observable);_(this,"onPointerEnterObserver",new g.Observable);_(this,"onIsAddedToParentObserver",new g.Observable);_(this,"onDisposeObserver",new g.Observable);_(this,"_oKey");_(this,"_dirty",!0);_(this,"_top",0);_(this,"_topOrigin",0);_(this,"_left",0);_(this,"_leftOrigin",0);_(this,"_width",0);_(this,"_widthOrigin",0);_(this,"_height",0);_(this,"_heightOrigin",0);_(this,"_angle",0);_(this,"_scaleX",1);_(this,"_scaleY",1);_(this,"_skewX",0);_(this,"_skewY",0);_(this,"_flipX",!1);_(this,"_flipY",!1);_(this,"_strokeWidth",0);_(this,"_parent");_(this,"_zIndex",0);_(this,"_evented",!0);_(this,"_visible",!0);_(this,"_debounceParentDirty",!0);_(this,"_transform",new D1);_(this,"_cursor",f1.DEFAULT);_(this,"_isTransformer",!1);_(this,"_forceRender",!1);_(this,"_layer");t?this._oKey=t:this._oKey=T0()}get transform(){return this._transform}get topOrigin(){return this._topOrigin}get leftOrigin(){return this._leftOrigin}get widthOrigin(){return this._widthOrigin}get heightOrigin(){return this._heightOrigin}get classType(){return K.BASE_OBJECT}get top(){return this._top}get left(){return this._left}get width(){return this._width}get height(){return this._height}get strokeWidth(){return this._strokeWidth}get angle(){return this._angle}get scaleX(){return this._scaleX}get scaleY(){return this._scaleY}get ancestorScaleX(){var e;const t=((e=this.getParent())==null?void 0:e.ancestorScaleX)||1;return this.scaleX*t}get ancestorScaleY(){var e;const t=((e=this.getParent())==null?void 0:e.ancestorScaleY)||1;return this.scaleY*t}get skewX(){return this._skewX}get skewY(){return this._skewY}get flipX(){return this._flipX}get flipY(){return this._flipY}get parent(){return this._parent}get oKey(){return this._oKey}get zIndex(){return this._zIndex}get evented(){return this._evented}get visible(){return this._visible}get debounceParentDirty(){return this._debounceParentDirty}get isTransformer(){return this._isTransformer}get cursor(){return this._cursor}get layer(){return this._layer}set transform(t){this._transform=t}set zIndex(t){this._zIndex=t}set parent(t){this._parent=t}set evented(t){this._evented=t}set debounceParentDirty(t){this._debounceParentDirty=t}set isTransformer(t){this._isTransformer=t}set cursor(t){this.setCursor(t)}set layer(t){this._layer=t}set top(t){var e;this._topOrigin=t,this._top=se(t,(e=this._parent)==null?void 0:e.height)}set left(t){var e;this._leftOrigin=t,this._left=se(t,(e=this._parent)==null?void 0:e.width)}set width(t){var e;this._widthOrigin=t,this._width=se(t,(e=this._parent)==null?void 0:e.width)}set height(t){var e;this._heightOrigin=t,this._height=se(t,(e=this._parent)==null?void 0:e.height)}set strokeWidth(t){this._strokeWidth=t}set angle(t){this._angle=t}set scaleX(t){this._scaleX=t}set scaleY(t){this._scaleY=t}set skewX(t){this._skewX=t}set flipY(t){this._flipY=t}set flipX(t){this._flipX=t}set skewY(t){this._skewY=t}makeDirty(t=!0){if(this._dirty=t,t){if(this._layer==null){this._dirty=!1;return}this._layer.makeDirtyWithDebounce(t)}return this}makeDirtyNoDebounce(t=!0){var e;return this._dirty=t,t&&((e=this._layer)==null||e.makeDirty(t)),this}isDirty(){return this._dirty}translate(t,e){const n=this.top;e!==void 0&&(this.top=e);const s=this.left;return t!==void 0&&(this.left=t),this._setTransForm(),this.onTransformChangeObservable.notifyObservers({type:l1.translate,value:{top:this._top,left:this._left},preValue:{top:n,left:s}}),this}resize(t,e){const n=this.width;t!==void 0&&(this.width=t);const s=this.height;return e!==void 0&&(this.height=e),this._setTransForm(),this.onTransformChangeObservable.notifyObservers({type:l1.resize,value:{width:this._width,height:this._height},preValue:{width:n,height:s}}),this}scale(t,e){const n=this.scaleX;t!==void 0&&(this.scaleX=t);const s=this.scaleY;return e!==void 0&&(this.scaleY=e),this._setTransForm(),this.onTransformChangeObservable.notifyObservers({type:l1.scale,value:{scaleX:this._scaleX,scaleY:this._scaleY},preValue:{scaleX:n,scaleY:s}}),this}skew(t,e){const n=t;t!==void 0&&(this.skewX=t);const s=e;return e!==void 0&&(this.skewY=e),this._setTransForm(),this.onTransformChangeObservable.notifyObservers({type:l1.skew,value:{skewX:this._skewX,skewY:this._skewY},preValue:{skewX:n,skewY:s}}),this}flip(t,e){const n=t;t!==void 0&&(this.flipX=t);const s=e;return e!==void 0&&(this.flipY=e),this._setTransForm(),this.onTransformChangeObservable.notifyObservers({type:l1.flip,value:{flipX:this._flipX,flipY:this._flipY},preValue:{flipX:n,flipY:s}}),this}transformByState(t){const e=Object.keys(t),n={};if(e.length!==0)return e.forEach(s=>{t[s]!==void 0&&(n[s]=this[s],this[s]=t[s])}),this._setTransForm(),this.onTransformChangeObservable.notifyObservers({type:l1.all,value:t,preValue:n}),this}isRender(t){return this._forceRender?!1:t&&!this.isInGroup}getParent(){return this._parent}getState(){return{left:this.left,top:this.top,width:this.width,height:this.height,scaleX:this.scaleX,scaleY:this.scaleY,angle:this.angle,skewX:this.skewX,skewY:this.skewY,flipX:this.flipX,flipY:this.flipY}}hide(){this._visible=!1,this._makeDirtyMix()}show(){this._visible=!0,this._makeDirtyMix()}render(t,e){}isHit(t){const e=this._getInverseCoord(t);return e.x>=-this.strokeWidth/2&&e.x<=this.width+this.strokeWidth/2&&e.y>=-this.strokeWidth/2&&e.y<=this.height+this.strokeWidth/2}on(t,e){return this[`on${t}Observer`].add(e.bind(this))}off(t,e){this[`on${t}Observer`].remove(e)}clear(t){this[`on${t}Observer`].clear()}triggerPointerMove(t){var e,n;return(e=this.onPointerMoveObserver.notifyObservers(t))!=null&&e.stopPropagation?!0:((n=this._parent)==null||n.triggerPointerMove(t),!1)}triggerPointerDown(t){var e,n;return(e=this.onPointerDownObserver.notifyObservers(t))!=null&&e.stopPropagation?!0:((n=this._parent)==null||n.triggerPointerDown(t),!1)}triggerPointerUp(t){var e,n;return(e=this.onPointerUpObserver.notifyObservers(t))!=null&&e.stopPropagation?!0:((n=this._parent)==null||n.triggerPointerUp(t),!1)}triggerDblclick(t){var e,n;return(e=this.onDblclickObserver.notifyObservers(t))!=null&&e.stopPropagation?!0:((n=this._parent)==null||n.triggerDblclick(t),!1)}triggerTripleClick(t){var e,n;return(e=this.onTripleClickObserver.notifyObservers(t))!=null&&e.stopPropagation?!0:((n=this._parent)==null||n.triggerTripleClick(t),!1)}triggerMouseWheel(t){var e,n;return(e=this.onMouseWheelObserver.notifyObservers(t))!=null&&e.stopPropagation?!0:((n=this._parent)==null||n.triggerMouseWheel(t),!1)}triggerPointerOut(t){var e,n;return(e=this.onPointerOutObserver.notifyObservers(t))!=null&&e.stopPropagation?!0:((n=this._parent)==null||n.triggerPointerOut(t),!1)}triggerPointerLeave(t){var e,n;return(e=this.onPointerLeaveObserver.notifyObservers(t))!=null&&e.stopPropagation?!0:((n=this._parent)==null||n.triggerPointerLeave(t),!1)}triggerPointerOver(t){var e;return this.onPointerOverObserver.notifyObservers(t)?!0:((e=this._parent)==null||e.triggerPointerOver(t),!1)}triggerPointerEnter(t){var e,n;return(e=this.onPointerEnterObserver.notifyObservers(t))!=null&&e.stopPropagation?!0:((n=this._parent)==null||n.triggerPointerEnter(t),!1)}dispose(){var t;this.onTransformChangeObservable.clear(),this.onPointerDownObserver.clear(),this.onPointerMoveObserver.clear(),this.onPointerUpObserver.clear(),this.onMouseWheelObserver.clear(),this.onPointerOutObserver.clear(),this.onPointerLeaveObserver.clear(),this.onPointerOverObserver.clear(),this.onPointerEnterObserver.clear(),this.onDblclickObserver.clear(),this.onTripleClickObserver.clear(),this.onIsAddedToParentObserver.clear(),(t=this.parent)==null||t.removeObject(this),this.onDisposeObserver.notifyObservers(this),this._makeDirtyMix(),this.onDisposeObserver.clear(),this._parent=null,this._layer=null,this.transform=null}toJson(){const t={};return j2.forEach(e=>{this[e]&&(t[e]=this[e])}),t}getScene(){let t=this.parent;if(t!=null){if(t.classType===K.SCENE)return t;for(;t;){if(t.classType===K.SCENE)return t;t=t.getParent()}}}resetCursor(){var t;(t=this.getScene())==null||t.resetCursor()}setCursor(t){var e;this._cursor=t,(e=this.getScene())==null||e.setCursor(t)}getEngine(){let t=this.getParent();for(;t!=null;){if(t.classType===K.ENGINE)return t;t=t.getParent()}return null}getObjects(){return[]}_getInverseCoord(t){return this._transform.clone().invert().applyPoint(t)}_setTransForm(){const t=D1.create().composeMatrix({left:this.left+this.strokeWidth/2,top:this.top+this.strokeWidth/2,scaleX:this.scaleX,scaleY:this.scaleY,angle:this.angle,skewX:this.skewX,skewY:this.skewY,flipX:this.flipX,flipY:this.flipY});this.transform=t,this._makeDirtyMix()}_makeDirtyMix(){this.debounceParentDirty?this.makeDirty(!0):this.makeDirtyNoDebounce(!0)}}var L0=(r=>(r[r.GLYPH=0]="GLYPH",r[r.DIVIDE=1]="DIVIDE",r[r.LINE=2]="LINE",r[r.COLUMN=3]="COLUMN",r[r.SECTION=4]="SECTION",r[r.PAGE=5]="PAGE",r[r.DRAWING=6]="DRAWING",r[r.BULLET=7]="BULLET",r[r.HEADER=8]="HEADER",r[r.FOOTER=9]="FOOTER",r[r.ALL=10]="ALL",r))(L0||{}),Ne=(r=>(r[r.SECTION=0]="SECTION",r[r.PAGE=1]="PAGE",r[r.COLUMN=2]="COLUMN",r))(Ne||{}),p2=(r=>(r[r.PARAGRAPH=0]="PARAGRAPH",r[r.BLOCK=1]="BLOCK",r))(p2||{}),T1=(r=>(r[r.LETTER=0]="LETTER",r[r.WORD=1]="WORD",r[r.LIST=2]="LIST",r[r.PLACEHOLDER=3]="PLACEHOLDER",r[r.TAB=4]="TAB",r[r.IMAGE=5]="IMAGE",r[r.AT=6]="AT",r[r.MATH=7]="MATH",r[r.MULTI_LINE=8]="MULTI_LINE",r[r.CUSTOM=9]="CUSTOM",r))(T1||{}),K1=(r=>(r[r.VERTICAL=0]="VERTICAL",r[r.HORIZONTAL=1]="HORIZONTAL",r[r.AUTO=2]="AUTO",r))(K1||{});function J3(r){var n;const t=r==null?void 0:r.parent;return t==null?!1:((n=t.glyphGroup[0])==null?void 0:n.glyphType)===T1.LIST}function Q3(r,t){const e=P0(r,t);if(e==null)return!1;const{paragraphStyle:n}=e;return n==null?!1:g.checkParagraphHasIndentByStyle(n)}function er(r){const t=r==null?void 0:r.parent,e=t==null?void 0:t.parent,n=t==null?void 0:t.glyphGroup,s=e==null?void 0:e.divides;if(n&&r&&s&&t){const i=n.indexOf(r);if(s.indexOf(t)===s.length-1&&i===n.length-1)return!0}return!1}function tr(r){const t=r==null?void 0:r.parent,e=t==null?void 0:t.parent,n=t==null?void 0:t.glyphGroup,s=e==null?void 0:e.divides;if(n&&r&&s&&t){const i=n.indexOf(r),a=s.indexOf(t);if(a===0&&i===0||a===0&&i===1&&n[0].glyphType===T1.LIST)return!0}return!1}function P0(r,t){var s;const e=(s=r==null?void 0:r.parent)==null?void 0:s.parent;if(e==null||t==null)return;const n=t.paragraphs;if(n!=null){for(const i of n)if(i.startIndex===e.paragraphIndex)return i}}function nr(r){return r==null?!1:[g.DataStreamTreeTokenType.PARAGRAPH,g.DataStreamTreeTokenType.TAB,g.DataStreamTreeTokenType.SECTION_BREAK].indexOf(r.streamType)!==-1||r.content===g.DataStreamTreeTokenType.SPACE}function rr(r,t){return r==null||t==null||r.parent==null||t.parent==null?!1:r.parent.parent===t.parent.parent}function Mt(){let r=1;const e=wt().getContext("2d");return r=(()=>{const n=window.devicePixelRatio||1,s=e.webkitBackingStorePixelRatio||e.mozBackingStorePixelRatio||e.msBackingStorePixelRatio||e.oBackingStorePixelRatio||e.backingStorePixelRatio||1;return n/s})(),r<1?1:r}function Nt(r,t,e,n){let s=0,i=0,a=0,o=0;const{startX:u,startY:l,endX:c,endY:h}=n;t===q.TOP?(s=u-e,i=l,a=c+e,o=l):t===q.BOTTOM?(s=u-e,i=h,a=c-e,o=h):t===q.LEFT?(s=u,i=l-e,a=u,o=h+e):t===q.RIGHT&&(s=c,i=l-e,a=c,o=h+e),r.beginPath(),r.moveToByPrecision(s,i),r.lineToByPrecision(a,o),r.closePathByEnv(),r.stroke()}function M0(r,t,e){let n=0,s=0,i=0,a=0;const{startX:o,startY:u,endX:l,endY:c}=e;t===q.TL_BR?(n=o,s=u,i=l,a=c):t===q.TL_BC?(n=o,s=u,i=(o+l)/2,a=c):t===q.TL_MR?(n=o,s=u,i=l,a=(u+c)/2):t===q.BL_TR?(n=o,s=c,i=l,a=u):t===q.ML_TR?(n=o,s=(u+c)/2,i=l,a=u):t===q.BC_TR&&(n=(o+l)/2,s=c,i=l,a=u),r.beginPath(),r.moveToByPrecision(n,s),r.lineToByPrecision(i,a),r.closePathByEnv(),r.stroke()}function sr(r,t,e){let n=0,s=0,i=0,a=0;const{startX:o,startY:u,endX:l,endY:c}=e;t===q.TOP?(n=o,s=u,i=l,a=u):t===q.BOTTOM?(n=o,s=c,i=l,a=c):t===q.LEFT?(n=o,s=u,i=o,a=c):t===q.RIGHT&&(n=l,s=u,i=l,a=c),r.beginPath(),r.clearRectForTexture(n,s,i-n,a-s)}function Ut(r,t){t===g.BorderStyleTypes.HAIR?r.setLineDash([1,2]):t===g.BorderStyleTypes.DASH_DOT_DOT||t===g.BorderStyleTypes.MEDIUM_DASH_DOT_DOT?r.setLineDash([2,2,5,2,2]):t===g.BorderStyleTypes.DASH_DOT||t===g.BorderStyleTypes.MEDIUM_DASH_DOT||t===g.BorderStyleTypes.SLANT_DASH_DOT?r.setLineDash([2,5,2]):t===g.BorderStyleTypes.DOTTED?r.setLineDash([2]):t===g.BorderStyleTypes.DASHED||t===g.BorderStyleTypes.MEDIUM_DASHED?r.setLineDash([3]):r.setLineDash([0])}function N0(){const r=U0(1);return r-Math.floor(r)}function U0(r){return Math.ceil(r/Mt()*100)/100}function Ht(r){let t=1;return r===g.BorderStyleTypes.MEDIUM||r===g.BorderStyleTypes.MEDIUM_DASH_DOT||r===g.BorderStyleTypes.MEDIUM_DASHED||r===g.BorderStyleTypes.MEDIUM_DASH_DOT_DOT?t=2:r===g.BorderStyleTypes.THICK&&(t=3),t}function Ue(r,t,e,n,s=P.create(0,0)){const i=r.add(t).rotateByPoint(n),a=i.subtract(t),o=n-e;return a.rotateByPoint(o,i).add(s).transformCoordinateOnRotate(o)}function H0(r){return r>0?u2.DOWN:u2.UP}function Gt(r,t,e){var D;const n=[];let s=0,i=0,a=0,o=0,u=0;const l=H0(e),c=r.length;e=Math.abs(e);const h=Math.tan(e),f=Math.sin(e),d=Math.cos(e);if(l===u2.UP){let m=0;for(let v=0;v<c;v++){const F=r[v],{lineHeight:C=0}=F;m+=v===0?0:C;const S=t*f+C*d;n.push(m/h),S>i&&(i=S),v===0&&(a+=C*f,u+=C*d)}a+=m/f+t*d,u-=i}else{let m=0,v=-1;const F=[];for(let B=c-1;B>=0;B--){const w=r[B],{lineHeight:x=0}=w,O=x/h,T=(t+O)*f;F.unshift(x/h),T>i&&(i=T,m=O,v=B),B===0?a+=x*f:B===c-1?a+=t*d+x/f:a+=x/f}let C=((D=r[v])==null?void 0:D.lineHeight)||0,S=0;for(let B=v+1;B<=c-1;B++){const w=r[B],{lineHeight:x=0}=w;C+=x,S+=F[B]||0,n[B]=-S}S=0;for(let B=v-1;B>=0;B--){const w=r[B],{lineHeight:x=0}=w;S+=F[B+1]||0,n[B]=S,s+=x}n[v]=0,c===1&&(a+=t*d),o=C/f-m*d}return{rotateTranslateXList:n,rotatedHeight:i,rotatedWidth:a,fixOffsetX:o,fixOffsetY:u,rotateTranslateY:s}}function ir(){const r=.5-N0();return{left:r,top:r}}var G0=(r=>(r[r.PointerMove=0]="PointerMove",r[r.PointerDown=1]="PointerDown",r[r.PointerUp=2]="PointerUp",r[r.Dblclick=3]="Dblclick",r[r.Keyboard=4]="Keyboard",r))(G0||{});class V2{}_(V2,"DOM_DELTA_PIXEL",0),_(V2,"DOM_DELTA_LINE",1),_(V2,"DOM_DELTA_PAGE",2);var x1=(r=>(r[r.Generic=0]="Generic",r[r.Keyboard=1]="Keyboard",r[r.Mouse=2]="Mouse",r[r.Touch=3]="Touch",r))(x1||{}),W=(r=>(r[r.Horizontal=0]="Horizontal",r[r.Vertical=1]="Vertical",r[r.LeftClick=2]="LeftClick",r[r.MiddleClick=3]="MiddleClick",r[r.RightClick=4]="RightClick",r[r.BrowserBack=5]="BrowserBack",r[r.BrowserForward=6]="BrowserForward",r[r.MouseWheelX=7]="MouseWheelX",r[r.MouseWheelY=8]="MouseWheelY",r[r.MouseWheelZ=9]="MouseWheelZ",r[r.DeltaHorizontal=10]="DeltaHorizontal",r[r.DeltaVertical=11]="DeltaVertical",r[r.FakeMove=12]="FakeMove",r))(W||{});const z0=[new P(0,0),new P(1,1)];class X0{constructor(t=z0){this._lines=t}intersection(t){if(this._lines.length<1||t.length<1)return;const e=[];for(let n=1;n<this._lines.length;n++){const s=this._lines[n-1],i=this._lines[n];for(let a=1;a<t.length;a++){const o=this._lines[n-1],u=this._lines[n],l=this._intersection({from:s,to:i},{from:o,to:u});l&&e.push(l)}}return e}_intersection(t,e){const n=t.from,s=t.to,i=e.from,a=e.to,o=(n.x-i.x)*(s.y-i.y)-(n.y-i.y)*(s.x-i.x),u=(n.x-a.x)*(s.y-a.y)-(n.y-a.y)*(s.x-a.x);if(o*u>=0)return!1;const l=(i.x-n.x)*(a.y-n.y)-(i.y-n.y)*(a.x-n.x),c=l+o-u;if(l*c>=0)return!1;const h=l/(u-o),f=h*(s.x-n.x),d=h*(s.y-n.y);return new P(n.x+f,n.y+d)}}class W0{constructor(t=30){_(this,"_enabled",!0);_(this,"_rollingFrameTime");_(this,"_lastFrameTimeMs");this._rollingFrameTime=new Y0(t)}get averageFrameTime(){return this._rollingFrameTime.average}get averageFrameTimeVariance(){return this._rollingFrameTime.variance}get instantaneousFrameTime(){return this._rollingFrameTime.history(0)}get averageFPS(){return 1e3/this._rollingFrameTime.average}get instantaneousFPS(){const t=this._rollingFrameTime.history(0);return t===0?0:1e3/t}get isSaturated(){return this._rollingFrameTime.isSaturated()}get isEnabled(){return this._enabled}sampleFrame(t=this.Now()){if(this._enabled){if(this._lastFrameTimeMs!=null){const e=t-this._lastFrameTimeMs;this._rollingFrameTime.add(e)}this._lastFrameTimeMs=t}}Now(){return performance&&performance.now?performance.now():Date.now()}enable(){this._enabled=!0}disable(){this._enabled=!1,this._lastFrameTimeMs=null}reset(){this._lastFrameTimeMs=null,this._rollingFrameTime.reset()}}class Y0{constructor(t){_(this,"average",0);_(this,"variance",0);_(this,"_samples",[]);_(this,"_sampleCount",0);_(this,"_pos",0);_(this,"_m2",0);this._samples=new Array(t),this.reset()}add(t){let e;if(this.isSaturated()){const n=this._samples[this._pos];e=n-this.average,this.average-=e/(this._sampleCount-1),this._m2-=e*(n-this.average)}else this._sampleCount++;e=t-this.average,this.average+=e/this._sampleCount,this._m2+=e*(t-this.average),this.variance=this._m2/(this._sampleCount-1),this._samples[this._pos]=t,this._pos++,this._pos%=this._samples.length}history(t){if(t>=this._sampleCount||t>=this._samples.length)return 0;const e=this._wrapPosition(this._pos-1);return this._samples[this._wrapPosition(e-t)]}isSaturated(){return this._sampleCount>=this._samples.length}reset(){this.average=0,this.variance=0,this._sampleCount=0,this._pos=0,this._m2=0}_wrapPosition(t){const e=this._samples.length;return(t%e+e)%e}}const D2={strokeWidth:1,stroke:"rgba(0, 0, 0, 0)",strokeActive:"rgba(0, 0, 0, 1)",fill:"rgba(0, 0, 0, 0.2)"};var v2=(r=>(r.NONE="none",r.BACKWARD="backward",r.FORWARD="forward",r))(v2||{});function He(r){const t=r.getScene(),e=r.getViewportByCoord(t),n=0,s=0;if(!e)return{scrollX:n,scrollY:s};const i=e.getActualScroll(e.scrollX,e.scrollY);return{scrollX:i.x,scrollY:i.y}}const E1=90;function m2(r){const{a:t=0,v:e=g.BooleanNumber.FALSE}=r||{a:0,v:g.BooleanNumber.FALSE};let n=0,s=t;return e===g.BooleanNumber.TRUE&&(n=E1,s=E1),{centerAngle:n,vertexAngle:s}}class zt{constructor(t){_(this,"canvas");_(this,"_context");this._context=t,this.canvas=t.canvas}get globalAlpha(){return this._context.globalAlpha}set globalAlpha(t){this._context.globalAlpha=t}get globalCompositeOperation(){return this._context.globalCompositeOperation}set globalCompositeOperation(t){this._context.globalCompositeOperation=t}get fillStyle(){return this._context.fillStyle}set fillStyle(t){this._context.fillStyle=t}get strokeStyle(){return this._context.strokeStyle}set strokeStyle(t){this._context.strokeStyle=t}get filter(){return this._context.filter}set filter(t){this._context.filter=t}get imageSmoothingEnabled(){return this._context.imageSmoothingEnabled}set imageSmoothingEnabled(t){this._context.imageSmoothingEnabled=t}get imageSmoothingQuality(){return this._context.imageSmoothingQuality}set imageSmoothingQuality(t){this._context.imageSmoothingQuality=t}get lineCap(){return this._context.lineCap}set lineCap(t){this._context.lineCap=t}get lineDashOffset(){return this._context.lineDashOffset}set lineDashOffset(t){this._context.lineDashOffset=t}get lineJoin(){return this._context.lineJoin}set lineJoin(t){this._context.lineJoin=t}get lineWidth(){return this._context.lineWidth}set lineWidth(t){this._context.lineWidth=t}setLineWidthByPrecision(t){const{scaleX:e,scaleY:n}=this._getScale();this._context.lineWidth=t/Math.max(e,n)}get miterLimit(){return this._context.miterLimit}set miterLimit(t){this._context.miterLimit=t}get shadowBlur(){return this._context.shadowBlur}set shadowBlur(t){this._context.shadowBlur=t}get shadowColor(){return this._context.shadowColor}set shadowColor(t){this._context.shadowColor=t}get shadowOffsetX(){return this._context.shadowOffsetX}set shadowOffsetX(t){this._context.shadowOffsetX=t}get shadowOffsetY(){return this._context.shadowOffsetY}set shadowOffsetY(t){this._context.shadowOffsetY=t}get direction(){return this._context.direction}set direction(t){this._context.direction=t}get font(){return this._context.font}set font(t){this._context.font=t}get fontKerning(){return this._context.fontKerning}set fontKerning(t){this._context.fontKerning=t}get fontStretch(){return this._context.fontStretch}set fontStretch(t){this._context.fontStretch=t}get fontVariantCaps(){return this._context.fontVariantCaps}set fontVariantCaps(t){this._context.fontVariantCaps=t}get letterSpacing(){return this._context.letterSpacing}set letterSpacing(t){this._context.letterSpacing=t}get textRendering(){return this._context.textRendering}set textRendering(t){this._context.textRendering=t}get wordSpacing(){return this._context.wordSpacing}set wordSpacing(t){this._context.wordSpacing=t}get textAlign(){return this._context.textAlign}set textAlign(t){this._context.textAlign=t}get textBaseline(){return this._context.textBaseline}set textBaseline(t){this._context.textBaseline=t}_getScale(){const t=this.getTransform();return{scaleX:t.a,scaleY:t.d}}getScale(){return this._getScale()}getContextAttributes(){return this._context.getContextAttributes()}isPointInStroke(...t){return this._context.isPointInStroke(...t)}createConicGradient(t,e,n){return this._context.createConicGradient(t,e,n)}roundRect(t,e,n,s,i){this._context.roundRect(t,e,n,s,i)}roundRectByPrecision(t,e,n,s,i){const{scaleX:a,scaleY:o}=this._getScale();t=Z(t,a),e=Z(e,o),n=Z(n,a),s=Z(s,o),this.roundRect(t,e,n,s,i)}getTransform(){return this._context.getTransform()}resetTransform(){this._context.resetTransform()}drawFocusIfNeeded(...t){return this._context.drawFocusIfNeeded(...t)}reset(){this._context.reset()}arc(t,e,n,s,i,a){this._context.arc(t,e,n,s,i,a)}arcByPrecision(t,e,n,s,i,a){const{scaleX:o,scaleY:u}=this._getScale();t=Z(t,o),e=Z(e,u),this.arc(t,e,n,s,i,a)}arcTo(t,e,n,s,i){this._context.arcTo(t,e,n,s,i)}arcToByPrecision(t,e,n,s,i){const{scaleX:a,scaleY:o}=this._getScale();t=Z(t,a),e=Z(e,o),n=Z(n,a),s=Z(s,o),this.arcTo(t,e,n,s,i)}beginPath(){this._context.beginPath()}bezierCurveTo(t,e,n,s,i,a){this._context.bezierCurveTo(t,e,n,s,i,a)}bezierCurveToByPrecision(t,e,n,s,i,a){const{scaleX:o,scaleY:u}=this._getScale();i=Z(i,o),a=Z(a,u),t=Z(t,o),e=Z(e,u),n=Z(n,o),s=Z(s,u),this.bezierCurveTo(t,e,n,s,i,a)}clearRect(t,e,n,s){this._context.clearRect(t,e,n,s)}clearRectByPrecision(t,e,n,s){const{scaleX:i,scaleY:a}=this._getScale();t=Z(t,i),e=Z(e,a),n=Z(n,i),s=Z(s,a),this.clearRect(t,e,n,s)}clip(...t){this._context.clip(...t)}closePath(){this._context.closePath()}closePathByEnv(){const e=g.Tools.getSystemType()==="Mac",s=g.Tools.getBrowserType()==="Chrome";e&&s||this._context.closePath()}createImageData(...t){if(t.length===0)throw new Error("arguments is zero");return t.length===1?this._context.createImageData(t[0]):t.length===2?this._context.createImageData(t[0],t[1]):this._context.createImageData(t[0],t[1],t[1])}createLinearGradient(t,e,n,s){return this._context.createLinearGradient(t,e,n,s)}createPattern(t,e){return this._context.createPattern(t,e)}createRadialGradient(t,e,n,s,i,a){return this._context.createRadialGradient(t,e,n,s,i,a)}drawImage(...t){const e=t,n=this._context;e.length===3?n.drawImage(t[0],t[1],t[2]):e.length===5?n.drawImage(t[0],t[1],t[2],t[3],t[4]):e.length===9&&n.drawImage(t[0],t[1],t[2],t[3],t[4],t[5],t[6],t[7],t[8])}ellipse(t,e,n,s,i,a,o,u){this._context.ellipse(t,e,n,s,i,a,o,u)}isPointInPath(...t){return this._context.isPointInPath(...t)}fill(...t){this._context.fill(...t)}fillRect(t,e,n,s){this._context.fillRect(t,e,n,s)}fillRectByPrecision(t,e,n,s){const{scaleX:i,scaleY:a}=this._getScale();t=Z(t,i),e=Z(e,a),n=Z(n,i),s=Z(s,a),this.fillRect(t,e,n,s)}strokeRect(t,e,n,s){this._context.strokeRect(t,e,n,s)}strokeRectPrecision(t,e,n,s){const{scaleX:i,scaleY:a}=this._getScale();t=Z(t,i),e=Z(e,a),n=Z(n,i),s=Z(s,a),this.strokeRect(t,e,n,s)}fillText(t,e,n,s){s?this._context.fillText(t,e,n,s):this._context.fillText(t,e,n)}fillTextPrecision(t,e,n,s){const{scaleX:i,scaleY:a}=this._getScale();e=Z(e,i),n=Z(n,a),s?(s=Z(s,i),this._context.fillText(t,e,n,s)):this._context.fillText(t,e,n)}measureText(t){return this._context.measureText(t)}getImageData(t,e,n,s){return this._context.getImageData(t,e,n,s)}lineTo(t,e){this._context.lineTo(t,e)}lineToByPrecision(t,e){const{scaleX:n,scaleY:s}=this._getScale();t=Z(t,n),e=Z(e,s),this.lineTo(t,e)}moveTo(t,e){this._context.moveTo(t,e)}moveToByPrecision(t,e){const{scaleX:n,scaleY:s}=this._getScale();t=Z(t,n),e=Z(e,s),this.moveTo(t,e)}rect(t,e,n,s){this._context.rect(t,e,n,s)}rectByPrecision(t,e,n,s){const{scaleX:i,scaleY:a}=this._getScale();t=Z(t,i),e=Z(e,a),n=Z(n,i),s=Z(s,a),this.rect(t,e,n,s)}putImageData(t,e,n){this._context.putImageData(t,e,n)}quadraticCurveTo(t,e,n,s){this._context.quadraticCurveTo(t,e,n,s)}restore(){this._context.restore()}rotate(t){this._context.rotate(t)}save(){this._context.save()}scale(t,e){this._context.scale(t,e)}setLineDash(t){this._context.setLineDash?this._context.setLineDash(t):"mozDash"in this._context?this._context.mozDash=t:"webkitLineDash"in this._context&&(this._context.webkitLineDash=t)}getLineDash(){return this._context.getLineDash()}setTransform(...t){this._context.setTransform(...t)}stroke(t){t?this._context.stroke(t):this._context.stroke()}strokeText(t,e,n,s){this._context.strokeText(t,e,n,s)}strokeTextByPrecision(t,e,n,s){const{scaleX:i,scaleY:a}=this._getScale();e=Z(e,i),n=Z(n,a),s&&(s=Z(s,i)),this.strokeText(t,e,n,s)}transform(t,e,n,s,i,a){this._context.transform(t,e,n,s,i,a)}translate(t,e){this._context.translate(t,e)}translateWithPrecision(t,e){const{scaleX:n,scaleY:s}=this._getScale();t=Z(t,n),e=Z(e,s),this._context.translate(t,e)}translateWithPrecisionRatio(t,e){const{scaleX:n,scaleY:s}=this._getScale();this._context.translate(t/n,e/s)}clearRectForTexture(t,e,n,s){this.clearRectByPrecision(t,e,n,s)}setGlobalCompositeOperation(t){this._context.globalCompositeOperation=t}}class ar{}class or{}class j0 extends zt{}class V0 extends zt{__getScale(){const t=this.getTransform();return{scaleX:t.a,scaleY:t.d}}clearRect(t,e,n,s){const{scaleX:i,scaleY:a}=this.__getScale();t=Z(t,i),e=Z(e,a),n=Z(n,i),s=Z(s,a),this._context.save(),this._context.fillStyle=F1([255,255,255]),this._context.fillRect(t,e,n,s),this._context.restore()}clearRectForTexture(t,e,n,s){}setGlobalCompositeOperation(t){}}var Xt=(r=>(r[r.Rendering=0]="Rendering",r[r.Printing=1]="Printing",r))(Xt||{});class Ge{constructor(t){_(this,"isCache",!1);_(this,"_pixelRatio",1);_(this,"_canvasEle");_(this,"_context");_(this,"_width",0);_(this,"_height",0);t=t||{},this._canvasEle=wt(),this._canvasEle.style.padding="0",this._canvasEle.style.margin="0",this._canvasEle.style.border="0",this._canvasEle.style.background="transparent",this._canvasEle.style.position="absolute",this._canvasEle.style.top="0",this._canvasEle.style.left="0",this._canvasEle.style.zIndex="8",this._canvasEle.className="univer-render-canvas",this._canvasEle.tabIndex=1,this._canvasEle.style.touchAction="none",this._canvasEle.style.outline="0";const e=this._canvasEle.getContext("2d");if(e==null)throw new Error("context is not support");t.mode===1?this._context=new V0(e):this._context=new j0(e),this.setSize(t.width,t.height,t.pixelRatio)}getCanvasEle(){return this._canvasEle}getContext(){return this._context}getPixelRatio(){return this._pixelRatio}getWidth(){return this._width}getHeight(){return this._height}setSize(t,e,n){this._pixelRatio=n||Mt(),t&&(this.getCanvasEle().width=t*this._pixelRatio,this._width=this.getCanvasEle().width/this._pixelRatio,this.getCanvasEle().style.width=`${this._width}px`),e&&(this.getCanvasEle().height=e*this._pixelRatio,this._height=this.getCanvasEle().height/this._pixelRatio,this.getCanvasEle().style.height=`${this._height}px`),this.getContext().setTransform(this._pixelRatio,0,0,this._pixelRatio,0,0)}setPixelRatio(t){this._width===0||this._height===0||(t<1&&(t=1),this.setSize(this._width,this._height,t))}dispose(){var t;this.clear(),(t=this._canvasEle)==null||t.remove(),this._canvasEle=null,this._context=null}clear(){this.getContext().clearRect(0,0,this._width*this._pixelRatio,this._height*this._pixelRatio)}toDataURL(t,e){try{return this.getCanvasEle().toDataURL(t,e)}catch{try{return this.getCanvasEle().toDataURL()}catch(s){const{message:i}=s;return console.error(`Unable to get data URL. ${i} For more info read https://universheet.net/docs/Canvas.html.`),""}}}}class ur extends Ge{constructor(t={width:0,height:0}){super(t),this.setSize(t.width,t.height)}}class lr extends Ge{constructor(e={width:0,height:0}){super(e);_(this,"hitCanvas",!0);this.setSize(e.width,e.height)}}class Wt extends ie{constructor(){super(...arguments);_(this,"_extensions",new Map)}get extensions(){return this._extensions}register(...e){const n=new g.DisposableCollection;for(const s of e)s.parent=this,this._extensions.set(s.uKey,s),n.add(g.toDisposable(()=>{this._extensions.delete(s.uKey)}));return n}getExtensionsByOrder(){const e=Array.from(this._extensions.values());return e.sort(g.sortRules),e}getExtensionByKey(e){return this._extensions.get(e)}draw(e,n){}dispose(){super.dispose();for(const e of this._extensions.values())e.dispose();this._extensions.clear()}}class Yt{constructor(){_(this,"uKey","");_(this,"type");_(this,"Z_INDEX",0);_(this,"parent");_(this,"translateX",0);_(this,"translateY",0);_(this,"extensionOffset",{})}get zIndex(){return this.Z_INDEX}draw(t,e,n,s){}clearCache(){}_getScale(t){return It(t)}dispose(){this.extensionOffset={},this.parent=null}}const Ce=g.Registry.create(),jt=g.Registry.create(),Vt=g.Registry.create(),ze=g.Registry.create();class Kt extends Wt{constructor(t,e){super(t),this._skeleton=e}getSkeleton(){return this._skeleton}updateSkeleton(t){this._skeleton=t}render(t,e){if(!this.visible)return this.makeDirty(!1),this;t.save(),this._draw(t,e),t.restore()}getParentScale(){let{scaleX:t=1,scaleY:e=1}=this.parent;return this.parent.classType===K.SCENE_VIEWER&&(t=this.parent.ancestorScaleX||1,e=this.parent.ancestorScaleY||1),{scaleX:t,scaleY:e}}getDocuments(){}getNoMergeCellPositionByIndex(t,e){}getScrollXYByRelativeCoords(t){return{x:0,y:0}}getSelectionBounding(t,e,n,s){}_draw(t,e){}dispose(){super.dispose(),this._skeleton=null}}class qt extends Kt{_draw(t,e){this.draw(t,e)}}class cr extends qt{constructor(e,n){super(e,n);_(this,"_columnHeaderLayoutExtension");this._initialDefaultExtension(),this.makeDirty(!0)}get columnHeaderLayoutExtension(){return this._columnHeaderLayoutExtension}draw(e,n){const s=this.getSkeleton();if(!s)return;const i=this.getParentScale();s.calculateSegment(n);const a=s.rowColumnSegment;if(a.startColumn===-1&&a.endColumn===-1)return;const{rowHeaderWidth:o}=s;e.translateWithPrecision(o,0);const u=this.getExtensionsByOrder();for(const l of u)l.draw(e,i,s)}isHit(e){const n=this._getInverseCoord(e),s=this.getSkeleton();if(!s)return!1;const{rowHeaderWidth:i,columnHeaderHeight:a}=s;return n.x>i&&n.y>=0&&n.y<=a}_initialDefaultExtension(){Vt.getData().forEach(e=>{this.register(e)}),this._columnHeaderLayoutExtension=this.getExtensionByKey("DefaultColumnHeaderLayoutExtension")}}var K0=(r=>(r[r.GRID=0]="GRID",r))(K0||{});class de extends Yt{constructor(){super(...arguments);_(this,"type",0)}getCellIndex(e,n,s,i,a){return Me(e,n,s,i,a)}isRenderDiffRangesByCell(e,n){if(n==null||n.length===0)return!0;for(const s of n){const{startRow:i,startColumn:a,endRow:o,endColumn:u}=s;if(g.Rectangle.intersects(s,{startRow:i,endRow:o,startColumn:a,endColumn:u}))return!0}return!1}isRenderDiffRangesByColumn(e,n,s){if(s==null||s.length===0)return!0;for(const i of s){const{startColumn:a,endColumn:o}=i;if(g.Rectangle.intersects({startRow:0,endRow:0,startColumn:e,endColumn:n},{startRow:0,endRow:0,startColumn:a,endColumn:o}))return!0}return!1}isRenderDiffRangesByRow(e,n,s){if(s==null||s.length===0)return!0;for(const i of s){const{startRow:a,endRow:o}=i;if(g.Rectangle.intersects({startRow:e,endRow:n,startColumn:0,endColumn:0},{startRow:a,endRow:o,startColumn:0,endColumn:0}))return!0}return!1}}const hr="DefaultBackgroundExtension",fr=40,dr=20;let q0=class extends de{constructor(){super(...arguments);_(this,"uKey",hr);_(this,"Z_INDEX",fr);_(this,"PRINTING_Z_INDEX",dr)}get zIndex(){var e;return(e=this.parent)!=null&&e.isPrinting?this.PRINTING_Z_INDEX:this.Z_INDEX}draw(e,n,s,i){const{stylesCache:a}=s,{background:o,backgroundPositions:u}=a;if(!s)return;const{rowHeightAccumulation:l,columnTotalWidth:c,columnWidthAccumulation:h,rowTotalHeight:f}=s;!l||!h||c===void 0||f===void 0||(e.save(),e.setGlobalCompositeOperation("destination-over"),o&&Object.keys(o).forEach(d=>{const D=o[d];e.fillStyle=d||F1([255,255,255]),e.beginPath(),D.forValue((m,v)=>{const F=u==null?void 0:u.getValue(m,v);if(F==null)return!0;let{startY:C,endY:S,startX:B,endX:w}=F;const{isMerged:x,isMergedMainCell:O,mergeInfo:T}=F;if(x||!this.isRenderDiffRangesByCell({startRow:T.startRow,endRow:T.endRow,startColumn:T.startColumn,endColumn:T.endColumn},i))return!0;O&&(C=T.startY,S=T.endY,B=T.startX,w=T.endX),e.moveToByPrecision(B,C),e.lineToByPrecision(B,S),e.lineToByPrecision(w,S),e.lineToByPrecision(w,C)}),e.closePath(),e.fill()}),e.restore())}};Ce.add(q0);const _r="DefaultBorderExtension",gr=50;let Z0=class extends de{constructor(){super(...arguments);_(this,"uKey",_r);_(this,"Z_INDEX",gr)}draw(e,n,s,i){const{dataMergeCache:a,stylesCache:o,overflowCache:u}=s,{border:l}=o;if(!s)return;const{rowHeightAccumulation:c,columnTotalWidth:h,columnWidthAccumulation:f,rowTotalHeight:d}=s;if(!c||!f||h===void 0||d===void 0)return;e.save();let D,m;e.translateWithPrecisionRatio(g1,g1);const v=this._getScale(e.getScale());l==null||l.forValue((F,C,S)=>{if(!S)return!0;const B=this.getCellIndex(F,C,c,f,a),{startY:w,endY:x,startX:O,endX:T}=B,{isMerged:A,isMergedMainCell:k,mergeInfo:$}=B;if(!this.isRenderDiffRangesByRow($.startRow,$.endRow,i))return!0;for(const I in S){const{type:M,style:L,color:U}=S[I];if(L===g.BorderStyleTypes.NONE)continue;let G=w,X=x,H=O,V=T;if(M!==q.TOP&&M!==q.BOTTOM&&M!==q.LEFT&&M!==q.RIGHT){if(A)return!0;k&&(G=$.startY,X=$.endY,H=$.startX,V=$.endX)}const e1=Ht(L);L!==D&&(Ut(e,L),e.setLineWidthByPrecision(e1),D=L),U!==m&&(e.strokeStyle=U||he,m=U),M0(e,M,{startX:H,startY:G,endX:V,endY:X}),!this._getOverflowExclusion(u,M,F,C)&&Nt(e,M,(e1-1)/2/v,{startX:H,startY:G,endX:V,endY:X})}}),e.closePath(),e.restore()}_getOverflowExclusion(e,n,s,i){let a=!1;return n===q.TOP||n===q.BOTTOM||e==null||e.forRow((o,u)=>{if(o!==s)return!0;u.forEach(l=>{const c=e.getValue(o,l),{startColumn:h,endColumn:f}=c;if(n===q.LEFT&&i>h&&i<=f||n===q.RIGHT&&i>=h&&i<f)return a=!0,!1})}),a}};Ce.add(Z0);const pr="DefaultColumnHeaderLayoutExtension";class J0 extends de{constructor(){super(...arguments);_(this,"uKey",pr);_(this,"Z_INDEX",10)}draw(e,n,s){const{rowColumnSegment:i,columnHeaderHeight:a=0}=s,{startColumn:o,endColumn:u}=i;if(!s||a===0)return;const{rowHeightAccumulation:l,columnTotalWidth:c,columnWidthAccumulation:h,rowTotalHeight:f}=s;if(!l||!h||c===void 0||f===void 0)return;const d=this._getScale(n);e.fillStyle=F1([248,249,250]),e.fillRectByPrecision(0,0,c,a),e.textAlign="center",e.textBaseline="middle",e.fillStyle=F1([0,0,0]),e.beginPath(),e.setLineWidthByPrecision(1),e.translateWithPrecisionRatio(g1,g1),e.strokeStyle=F1([217,217,217]),e.font=`13px ${o2}`;let D=0;const m=h.length;for(let F=o-1;F<=u;F++){if(F<0||F>m-1)continue;const C=h[F];if(D===C)continue;e.moveToByPrecision(C,0),e.lineToByPrecision(C,a);const S=D+(C-D)/2;e.fillText(g.numberToABC(F),S,a/2+Et),D=C}const v=a-.5/d;e.moveToByPrecision(0,v),e.lineToByPrecision(c,v),e.stroke()}}Vt.add(new J0);function Xe(r){return r[r.length-1]}function Zt(r){var t;return(t=r.sections)==null?void 0:t[r.sections.length-1]}function Dr(r){var e;const t=(e=K2(r))==null?void 0:e.column.lines;return t==null?void 0:t[t.length-1]}function vr(r){return r.lines[r.lines.length-1]}function K2(r){const t=Zt(r);for(let e=0;e<t.columns.length;e++){const n=t.columns[e];if(!n.isFull)return{column:n,isLast:e===t.columns.length-1,index:e}}}function mr(r){const t=Dr(r);if(t)for(let e=0;e<t.divides.length;e++){const n=t.divides[e];if(!n.isFull)return{divide:n,isLast:e===t.divides.length-1,index:e}}}function br(r){const t=Zt(r),e=t.columns.length;for(let n=0;n<e;n++)if(!t.columns[n].isFull)return!1;return!0}function Ee(r,t){if(r instanceof Object){const{v:e,u:n}=r;return n===g.NumberUnitType.POINT?e:e*t}return r}function b2(r=0,t,e=g.GridType.LINES,n=g.BooleanNumber.TRUE){let s=1;return Q0(e,n)&&(s=r),s*=t,s}function Q0(r=g.GridType.LINES,t=g.BooleanNumber.FALSE){return t===g.BooleanNumber.TRUE&&(r===g.GridType.LINES_AND_CHARS||r===g.GridType.SNAP_TO_CHARS)}function e4(r,t){const{paragraphStyle:e={}}=t,{linePitch:n=15.6,gridType:s=g.GridType.LINES,paragraphLineGapDefault:i=0}=r,{lineSpacing:a=1,spacingRule:o=g.SpacingRule.AUTO,snapToGrid:u=g.BooleanNumber.TRUE}=e;return{paragraphLineGapDefault:i,linePitch:n,gridType:s,lineSpacing:a,spacingRule:o,snapToGrid:u}}function yr(r,t){const{paragraphStyle:e={}}=t,{charSpace:n=0,gridType:s=g.GridType.LINES,defaultTabStop:i=36,documentTextStyle:a={}}=r,{fs:o=f0}=a,{snapToGrid:u=g.BooleanNumber.TRUE}=e;return{charSpace:n,documentFontSize:o,defaultTabStop:i,gridType:s,snapToGrid:u}}function Jt(r,t=-1){let e=t;for(const n of r){const{sections:s}=n,i=e;let a=i,o=Number.NEGATIVE_INFINITY,u=0;for(const l of s){const{columns:c}=l,h=a;let f=h,d=Number.NEGATIVE_INFINITY,D=0;for(const m of c){const{lines:v}=m,F=f;let C=F,S=0,B=Number.NEGATIVE_INFINITY;for(const w of v){const{divides:x,lineHeight:O}=w,T=C;let A=T,k=0,$=0;S+=O;const I=x.length;for(let M=0;M<I;M++){const L=x[M],{glyphGroup:U}=L,G=A;let X=G;for(const H of U){const V=H.glyphType===T1.LIST?0:H.count;X+=V;const e1=H.bBox,{ba:t1}=e1;$=Math.max($,t1),M===I-1&&(k+=H.width)}U.length!==0&&(U[0].xOffset!==0&&M===I-1&&(k-=U[0].xOffset),M===I-1&&(k+=L.left),L.st=G+1,L.ed=X>=L.st?X:L.st,A=L.ed)}w.st=T+1,w.ed=A>=w.st?A:w.st,w.width=k,w.asc=$,B=Math.max(B,k),C=w.ed}m.st=F+1,m.ed=C>=m.st?C:m.st,m.height=S,m.width=B,D+=B,d=Math.max(d,m.height),f=m.ed}l.st=h+1,l.ed=f>=l.st?f:l.st,l.height=d,u+=d,o=Math.max(o,D),a=l.ed}n.st=i+1,n.ed=a>=n.st?a:n.st,n.height=u,n.width=o,e=n.ed}}function Qt(r,t){for(const e of r){const{sections:n}=e;for(const s of n){const{columns:i}=s;for(const a of i){const{lines:o}=a;for(const u of o)t&&Ot(t)&&t(u)}}}}function Fr(r,t){for(const e of r){const{sections:n}=e;for(const s of n){const{columns:i}=s;for(const a of i)t&&Ot(t)&&t(a)}}}function Cr(r,t,e,n,s=!1){const{relativeFrom:i,align:a,posOffset:o,percent:u}=r;if(a!=null)if(a===g.AlignTypeH.INSIDE||a===g.AlignTypeH.OUTSIDE)i===g.ObjectRelativeFromH.MARGIN||g.ObjectRelativeFromH.PAGE;else{if(i===g.ObjectRelativeFromH.COLUMN){const{width:l,left:c}=t;let h=0;return a===g.AlignTypeH.LEFT?h=c:a===g.AlignTypeH.RIGHT?h=c+l-n:a===g.AlignTypeH.CENTER&&(h=c+l/2-n/2),h}if(i!==g.ObjectRelativeFromH.LEFT_MARGIN){if(i!==g.ObjectRelativeFromH.MARGIN){if(i!==g.ObjectRelativeFromH.RIGHT_MARGIN){if(i!==g.ObjectRelativeFromH.INSIDE_MARGIN){if(i!==g.ObjectRelativeFromH.OUTSIDE_MARGIN){if(i===g.ObjectRelativeFromH.PAGE){const{pageWidth:l}=e;let c=0;return a===g.AlignTypeH.RIGHT?c=l-n:a===g.AlignTypeH.CENTER&&(c=l/2-n/2),c}}}}}}}else if(o){const{pageWidth:l,marginLeft:c,marginRight:h}=e,f=l-h;let d=0;return i===g.ObjectRelativeFromH.COLUMN?d=(s?0:(t==null?void 0:t.left)||0)+o:i===g.ObjectRelativeFromH.LEFT_MARGIN||(i===g.ObjectRelativeFromH.MARGIN?d=o+c:i===g.ObjectRelativeFromH.RIGHT_MARGIN||i===g.ObjectRelativeFromH.INSIDE_MARGIN||i===g.ObjectRelativeFromH.OUTSIDE_MARGIN||i===g.ObjectRelativeFromH.PAGE&&(d=o)),d+n>f&&(d=f-n),d}else if(u){const{pageWidth:l,marginLeft:c,marginRight:h}=e;if(i!==g.ObjectRelativeFromH.LEFT_MARGIN){if(i!==g.ObjectRelativeFromH.MARGIN){if(i!==g.ObjectRelativeFromH.RIGHT_MARGIN){if(i!==g.ObjectRelativeFromH.INSIDE_MARGIN){if(i!==g.ObjectRelativeFromH.OUTSIDE_MARGIN){if(i===g.ObjectRelativeFromH.PAGE)return u*l}}}}}}}function Er(r,t,e,n,s,i,a=!1){const{relativeFrom:o,align:u,posOffset:l,percent:c}=r;if(u!=null){if(o===g.ObjectRelativeFromV.LINE){let h=0;return u===g.AlignTypeV.BOTTOM?h=e+n-s:u===g.AlignTypeV.TOP?h=e:u===g.AlignTypeV.CENTER&&(h=e+n/2-s/2),h}else if(o!==g.ObjectRelativeFromV.TOP_MARGIN){if(o!==g.ObjectRelativeFromV.MARGIN){if(o!==g.ObjectRelativeFromV.BOTTOM_MARGIN){if(o!==g.ObjectRelativeFromV.INSIDE_MARGIN){if(o!==g.ObjectRelativeFromV.OUTSIDE_MARGIN){if(o===g.ObjectRelativeFromV.PAGE){const{pageHeight:h}=t;let f=0;return u===g.AlignTypeV.BOTTOM?f=h-s:u===g.AlignTypeV.CENTER&&(f=h/2-s/2),f}}}}}}}else if(l!=null){let h=0;const{marginTop:f}=t;return o===g.ObjectRelativeFromV.LINE?h=(e||0)+l:o===g.ObjectRelativeFromV.TOP_MARGIN||(o===g.ObjectRelativeFromV.MARGIN?h=l:o===g.ObjectRelativeFromV.BOTTOM_MARGIN||o===g.ObjectRelativeFromV.INSIDE_MARGIN||o===g.ObjectRelativeFromV.OUTSIDE_MARGIN||(o===g.ObjectRelativeFromV.PAGE?h=l-f:o===g.ObjectRelativeFromV.PARAGRAPH&&(h=(a?0:i==null?e:i)+l))),h}else if(c!=null){const{pageHeight:h,marginBottom:f,marginTop:d}=t;if(o!==g.ObjectRelativeFromV.TOP_MARGIN){if(o!==g.ObjectRelativeFromV.MARGIN){if(o!==g.ObjectRelativeFromV.BOTTOM_MARGIN){if(o!==g.ObjectRelativeFromV.INSIDE_MARGIN){if(o!==g.ObjectRelativeFromV.OUTSIDE_MARGIN){if(o===g.ObjectRelativeFromV.PAGE)return c*h}}}}}}}function t4(r){let t=0;for(const e of r.glyphGroup)t+=e.width;return t}const e6=new g.ObjectMatrix;function Sr(){e6.reset()}function Se(r,t,e,n,s){const{startIndex:i}=e,a=t.getTextRun(r+i)||{ts:{},st:0,ed:0},{st:o,ed:u}=a;let{ts:l={}}=a;const c=e6.getValue(o,u);if(c)return c;const{gridType:h=g.GridType.LINES,charSpace:f=0,documentTextStyle:d={},pageSize:D={width:Number.POSITIVE_INFINITY,height:Number.POSITIVE_INFINITY},marginRight:m=0,marginLeft:v=0,localeService:F}=n,{snapToGrid:C=g.BooleanNumber.TRUE}=s;l={...d,...l};const S=h2(l),B={...d,...l},w=D.width||Number.POSITIVE_INFINITY-v-m,x={fontStyle:S,textStyle:B,charSpace:f,gridType:h,snapToGrid:C,pageWidth:w};return e6.setValue(o,u,x),x}function Tr(){return{pages:[],left:0,top:0,st:0,skeHeaders:new Map,skeFooters:new Map,skeListLevel:new Map,drawingAnchor:new Map}}function wr(r,t){for(const e of r)e.parent=t}const Br={columnProperties:[],columnSeparatorType:g.ColumnSeparatorType.NONE,sectionType:g.SectionType.SECTION_TYPE_UNSPECIFIED,startIndex:0},Or={width:Number.POSITIVE_INFINITY,height:Number.POSITIVE_INFINITY};function xr(r,t){var ke;const{viewModel:e,dataModel:n,docsConfig:s}=r,i=e.children[t],a=e.getSectionBreak(i.endIndex)||Br,{documentStyle:o}=n,{pageNumberStart:u=1,pageSize:l=Or,pageOrient:c=g.PageOrientType.PORTRAIT,defaultHeaderId:h,defaultFooterId:f,evenPageHeaderId:d,evenPageFooterId:D,firstPageHeaderId:m,firstPageFooterId:v,useFirstPageHeaderFooter:F,useEvenPageHeaderFooter:C,marginTop:S=0,marginBottom:B=0,marginRight:w=0,marginLeft:x=0,marginHeader:O=0,marginFooter:T=0,renderConfig:A={horizontalAlign:g.HorizontalAlign.LEFT,verticalAlign:g.VerticalAlign.TOP,centerAngle:0,vertexAngle:0,wrapStrategy:g.WrapStrategy.UNSPECIFIED}}=o,{pageNumberStart:k=u,pageSize:$=l,pageOrient:I=c,marginTop:M=S,marginBottom:L=B,marginRight:U=w,marginLeft:G=x,marginHeader:X=O,marginFooter:H=T,defaultHeaderId:V=h,defaultFooterId:e1=f,evenPageHeaderId:t1=d,evenPageFooterId:n1=D,firstPageHeaderId:s1=m,firstPageFooterId:m1=v,useFirstPageHeaderFooter:b1=F,useEvenPageHeaderFooter:p1=C,columnProperties:h1=[],columnSeparatorType:a1=g.ColumnSeparatorType.NONE,contentDirection:O1,sectionType:y1,textDirection:_1,renderConfig:S1=A}=a,$1=e.children[t+1],I1=(ke=e.getSectionBreak($1==null?void 0:$1.endIndex))==null?void 0:ke.sectionType,X1={defaultHeaderId:V,evenPageHeaderId:t1,firstPageHeaderId:s1},ce={defaultFooterId:e1,evenPageFooterId:n1,firstPageFooterId:m1};return $.width===null&&($.width=Number.POSITIVE_INFINITY),$.height===null&&($.height=Number.POSITIVE_INFINITY),{pageNumberStart:k,pageSize:$,pageOrient:I,marginTop:M,marginBottom:L,marginRight:U,marginLeft:G,marginHeader:X,marginFooter:H,headerIds:X1,footerIds:ce,useFirstPageHeaderFooter:b1,useEvenPageHeaderFooter:p1,columnProperties:h1,columnSeparatorType:a1,contentDirection:O1,sectionType:y1,sectionTypeNext:I1,textDirection:_1,renderConfig:S1,...s}}var Rr=Object.defineProperty,Ar=Object.getOwnPropertyDescriptor,kr=(r,t,e,n)=>{for(var s=n>1?void 0:n?Ar(t,e):t,i=r.length-1,a;i>=0;i--)(a=r[i])&&(s=(n?a(t,e,s):a(s))||s);return n&&s&&Rr(t,e,s),s},$r=(r,t)=>(e,n)=>t(e,n,r);y.Skeleton=class extends g.Disposable{constructor(e){super();_(this,"_fontLocale");_(this,"_dirty",!0);this._localService=e,this._localeInitial()}get dirty(){return this._dirty}getFontLocale(){return this._fontLocale}makeDirty(e){this._dirty=e}dispose(){super.dispose(),this._fontLocale=null}_localeInitial(){}},y.Skeleton=kr([$r(0,C1.Inject(g.LocaleService))],y.Skeleton);class We{constructor(){_(this,"_translateX",0);_(this,"_translateY",0);_(this,"_translateSaveList",[])}get x(){return this._translateX}get y(){return this._translateY}reset(){this.translateBy(0,0),this._translateSaveList=[]}translateBy(t=0,e=0){this._translateX=t,this._translateY=e}translate(t=0,e=0){this._translateX+=t,this._translateY+=e}translateSave(){this._translateSaveList.push({x:this._translateX,y:this._translateY})}translateRestore(){const t=this._translateSaveList.pop();t&&(this._translateX=t.x,this._translateY=t.y)}translatePagePadding(t){const{marginTop:e=0,marginBottom:n=0,marginLeft:s=0,marginRight:i=0}=t;this.translate(s,e)}restorePagePadding(t){const{marginTop:e=0,marginBottom:n=0,marginLeft:s=0,marginRight:i=0}=t;this.translate(-s,-e)}translatePage(t,e=K1.VERTICAL,n=0,s=0,i=0,a=0){const{pageWidth:o,pageHeight:u}=t;let l=0,c=0;return e===K1.VERTICAL?l+=u+s:e===K1.HORIZONTAL&&(c+=o+n),this.translate(c,l),{x:c,y:l}}translateSection(t){const{top:e=0}=t;return this.translate(0,e),{x:0,y:e}}translateColumn(t){const{left:e}=t;return this.translate(e,0),{x:e,y:0}}translateLine(t,e=!1){const{top:n,marginBottom:s=0,marginTop:i=0,paddingTop:a=0,paddingBottom:o=0}=t,u=n+(e===!0?i:0)+a;return this.translate(0,u),{x:0,y:u}}translateDivide(t){const{left:e,paddingLeft:n}=t,s=e+n;return this.translate(s,0),{x:s,y:0}}translateSpan(t){const{left:e}=t;return this.translate(e,0),{x:e,y:0}}}function n4(r=[],t=g.ColumnSeparatorType.NONE,e=0,n=0,s=Number.POSITIVE_INFINITY,i=Number.POSITIVE_INFINITY){const a=[];let o=0,u=0;if(r.length===0)a.push(t6(n,s,0,g.ColumnSeparatorType.NONE));else for(let c=0;c<r.length;c++){const{width:h,paddingEnd:f}=r[c];u=f,o=h,a.push(t6(n,o,u,t)),n+=o+u,c===r.length-1&&(o=s!==Number.POSITIVE_INFINITY?s-o:h,u=0,a.push(t6(n,o,u,t)))}const l={columns:a,colCount:(r==null?void 0:r.length)||1,height:i,top:e,st:0,ed:0};return a.forEach(c=>{c.parent=l}),l}function r4(r,t){r.isFull=t}function t6(r,t,e,n){return{lines:[],left:r,width:t,height:0,spaceWidth:e,separator:n,st:0,ed:0,drawingLRIds:[],isFull:!1}}function Ye(r,t,e,n=1,s=Ne.SECTION){var S1,$1,I1,X1;const i=Ir(),{pageNumberStart:a=1,pageSize:o={width:Number.POSITIVE_INFINITY,height:Number.POSITIVE_INFINITY},pageOrient:u=g.PageOrientType.PORTRAIT,headerIds:l={},footerIds:c={},useFirstPageHeaderFooter:h,useEvenPageHeaderFooter:f,footerTreeMap:d,headerTreeMap:D,columnProperties:m=[],columnSeparatorType:v,marginTop:F=0,marginBottom:C=0,marginHeader:S=0,marginFooter:B=0,marginLeft:w=0,marginRight:x=0,renderConfig:O={}}=t,{skeHeaders:T,skeFooters:A}=e,{width:k=Number.POSITIVE_INFINITY,height:$=Number.POSITIVE_INFINITY}=o;i.pageNumber=n,i.pageNumberStart=a,i.renderConfig=O,i.marginLeft=w,i.marginRight=x,i.breakType=s,i.pageWidth=k,i.width=0,i.pageHeight=$,i.height=0,i.pageOrient=u;const{defaultHeaderId:I,evenPageHeaderId:M,firstPageHeaderId:L}=l,{defaultFooterId:U,evenPageFooterId:G,firstPageFooterId:X}=c;let H=I!=null?I:"",V=U!=null?U:"";n===a&&h?(H=L!=null?L:"",V=X!=null?X:""):n%2===0&&f&&(H=M!=null?M:"",V=G!=null?G:"");let e1,t1;H&&((S1=T.get(H))!=null&&S1.has(k)?e1=($1=T.get(H))==null?void 0:$1.get(k):D&&D.has(H)&&(e1=s4(r,D.get(H),t,e),T.set(H,new Map([[k,e1]]))),i.headerId=H),V&&((I1=A.get(V))!=null&&I1.has(k)?t1=(X1=A.get(V))==null?void 0:X1.get(k):d&&d.has(V)&&(t1=s4(r,d.get(V),t,e),A.set(H,new Map([[k,t1]]))),i.footerId=V),i.marginTop=i4(F,S,e1),i.marginBottom=i4(C,B,t1);const n1=i.sections,s1=n1[n1.length-1],{marginTop:m1,marginBottom:b1,marginLeft:p1,marginRight:h1}=i,a1=k-p1-h1,O1=$-m1-b1;let y1=0;s1&&(y1=s1.top+s1.height);const _1=n4(m,v,y1,0,a1,O1-y1);return _1.parent=i,n1.push(_1),i}function Ir(){return{sections:[],headerId:"",footerId:"",pageWidth:0,pageHeight:0,pageOrient:g.PageOrientType.PORTRAIT,pageNumber:1,pageNumberStart:1,verticalAlign:!1,angle:0,width:0,height:0,marginLeft:0,marginRight:0,marginTop:0,marginBottom:0,breakType:Ne.SECTION,st:0,ed:0,skeDrawings:new Map}}function s4(r,t,e,n,s=!0){const{lists:i,footerTreeMap:a,headerTreeMap:o,localeService:u,pageSize:l,marginLeft:c=0,marginRight:h=0,drawings:f,marginTop:d=0,marginBottom:D=0,marginHeader:m=0,marginFooter:v=0}=e,F=(l==null?void 0:l.width)||Number.POSITIVE_INFINITY,C={lists:i,footerTreeMap:a,headerTreeMap:o,pageSize:{width:F-c-h,height:Number.POSITIVE_INFINITY},localeService:u,drawings:f},S=Ye(r,C,n),B=Cn(r,t,t.children[0],S,C).pages[0];Jt([B]);const w=B.sections[0].columns[0],x=w.height||0,{skeDrawings:O,st:T,ed:A}=B,k={lines:w.lines,skeDrawings:O,height:x,st:T,ed:A,marginLeft:c,marginRight:h};return s?{...k,marginTop:Lr(d,m,x)}:{...k,marginBottom:Pr(D,v,x)}}function i4(r,t,e){return!e||e.lines.length===0?r:Math.max(r,t,(e==null?void 0:e.height)||0)}function Lr(r,t,e){const n=Math.max(r,t);return e>n?0:n-e}function Pr(r,t,e){const n=Math.max(r,t);return e>n?0:n-e}function Mr(){return[]}class q2{constructor(t,e=!1){this.position=t,this.required=e}}const Nr=5,a4=12,Ur=13,Hr=16,Gr=17,zr=22,o4=28,u4=31,Xr=33,Z2=34,Wr=35,n6=36,r6=37,l4=38,Yr=39,jr=40,y2=41,Vr=42,p=0,b=1,r1=2,c4=3,E=4,Kr=[[E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,E,c4,E,E,E,E,E,E,E,E,E,E,E],[p,E,E,b,b,E,E,E,E,b,b,p,p,p,p,b,b,b,p,p,E,r1,E,p,p,p,p,p,p,p,p,b,p],[p,E,E,b,b,E,E,E,E,b,b,b,b,b,p,b,b,b,p,p,E,r1,E,p,p,p,p,p,p,p,p,b,p],[E,E,E,b,b,b,E,E,E,b,b,b,b,b,b,b,b,b,b,b,E,r1,E,b,b,b,b,b,b,b,b,b,b],[b,E,E,b,b,b,E,E,E,b,b,b,b,b,b,b,b,b,b,b,E,r1,E,b,b,b,b,b,b,b,b,b,b],[p,E,E,b,b,b,E,E,E,p,p,p,p,p,p,b,b,b,p,p,E,r1,E,p,p,p,p,p,p,p,p,b,p],[p,E,E,b,b,b,E,E,E,p,p,p,p,p,p,b,b,b,p,p,E,r1,E,p,p,p,p,p,p,p,p,b,p],[p,E,E,b,b,b,E,E,E,p,p,b,p,b,p,b,b,b,p,p,E,r1,E,p,p,p,p,p,p,p,p,b,p],[p,E,E,b,b,b,E,E,E,p,p,b,b,b,p,b,b,b,p,p,E,r1,E,p,p,p,p,p,p,p,p,b,p],[b,E,E,b,b,b,E,E,E,p,p,b,b,b,b,b,b,b,p,p,E,r1,E,b,b,b,b,b,p,b,b,b,p],[b,E,E,b,b,b,E,E,E,p,p,b,b,b,p,b,b,b,p,p,E,r1,E,p,p,p,p,p,p,p,p,b,p],[b,E,E,b,b,b,E,E,E,b,b,b,b,b,p,b,b,b,p,p,E,r1,E,p,p,p,p,p,p,p,p,b,p],[b,E,E,b,b,b,E,E,E,b,b,b,b,b,p,b,b,b,p,p,E,r1,E,p,p,p,p,p,p,p,p,b,p],[b,E,E,b,b,b,E,E,E,b,b,b,b,b,p,b,b,b,p,p,E,r1,E,p,p,p,p,p,p,p,p,b,p],[p,E,E,b,b,b,E,E,E,p,b,p,p,p,p,b,b,b,p,p,E,r1,E,p,p,p,p,p,p,p,p,b,p],[p,E,E,b,b,b,E,E,E,p,p,p,p,p,p,b,b,b,p,p,E,r1,E,p,p,p,p,p,p,p,p,b,p],[p,E,E,b,p,b,E,E,E,p,p,b,p,p,p,b,b,b,p,p,E,r1,E,p,p,p,p,p,p,p,p,b,p],[p,E,E,b,p,b,E,E,E,p,p,p,p,p,p,b,b,b,p,p,E,r1,E,p,p,p,p,p,p,p,p,b,p],[b,E,E,b,b,b,E,E,E,b,b,b,b,b,b,b,b,b,b,b,E,r1,E,b,b,b,b,b,b,b,b,b,p],[p,E,E,b,b,b,E,E,E,p,p,p,p,p,p,b,b,b,p,E,E,r1,E,p,p,p,p,p,p,p,p,b,p],[p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,E,p,p,p,p,p,p,p,p,p,p,p,p],[b,E,E,b,b,b,E,E,E,b,b,b,b,b,p,b,b,b,p,p,E,r1,E,p,p,p,p,p,p,p,p,b,p],[b,E,E,b,b,b,E,E,E,b,b,b,b,b,b,b,b,b,b,b,E,r1,E,b,b,b,b,b,b,b,b,b,b],[p,E,E,b,b,b,E,E,E,p,b,p,p,p,p,b,b,b,p,p,E,r1,E,p,p,p,b,b,p,p,p,b,p],[p,E,E,b,b,b,E,E,E,p,b,p,p,p,p,b,b,b,p,p,E,r1,E,p,p,p,p,b,p,p,p,b,p],[p,E,E,b,b,b,E,E,E,p,b,p,p,p,p,b,b,b,p,p,E,r1,E,b,b,b,b,p,p,p,p,b,p],[p,E,E,b,b,b,E,E,E,p,b,p,p,p,p,b,b,b,p,p,E,r1,E,p,p,p,b,b,p,p,p,b,p],[p,E,E,b,b,b,E,E,E,p,b,p,p,p,p,b,b,b,p,p,E,r1,E,p,p,p,p,b,p,p,p,b,p],[p,E,E,b,b,b,E,E,E,p,p,p,p,p,p,b,b,b,p,p,E,r1,E,p,p,p,p,p,b,p,p,b,p],[p,E,E,b,b,b,E,E,E,p,b,p,p,p,p,b,b,b,p,p,E,r1,E,p,p,p,p,p,p,p,b,b,p],[p,E,E,b,b,b,E,E,E,p,b,p,p,p,p,b,b,b,p,p,E,r1,E,p,p,p,p,p,p,p,p,b,p],[b,E,E,b,b,b,E,E,E,b,b,b,b,b,p,b,b,b,p,p,E,r1,E,p,p,p,p,p,p,p,p,b,p],[p,E,E,b,b,p,E,E,E,p,p,p,p,p,p,p,p,p,p,p,E,r1,E,p,p,p,p,p,p,p,p,b,p]];class qr{constructor(){_(this,"_rules",new Map)}add(t,e){this._rules.set(t,e)}shouldBreak(t,e){for(const n of this._rules.values())if(n(t,e))return!0;return!1}}const Zr=new Uint8Array([0,8,14,0,0,0,0,0,176,232,0,0,1,181,15,74,240,237,157,11,140,93,69,25,199,231,178,187,183,123,31,187,237,46,108,193,194,22,104,41,200,242,48,128,104,16,129,152,162,64,42,10,193,42,24,121,104,2,65,177,4,9,69,41,193,104,73,35,193,84,20,104,144,152,74,140,109,80,1,149,87,12,175,68,64,162,60,42,9,136,196,70,194,35,40,132,84,222,34,40,18,255,195,153,113,103,103,231,253,58,183,244,158,228,151,57,103,158,223,124,243,205,227,204,57,231,222,141,3,132,220,0,110,5,119,129,191,129,127,128,127,130,255,130,129,65,66,58,131,254,238,56,88,0,22,129,41,240,1,240,97,135,116,71,128,163,12,225,199,130,229,224,100,112,58,88,1,86,130,11,193,197,66,188,75,192,247,193,85,224,26,176,17,220,0,174,7,183,128,59,193,239,192,67,224,81,240,56,75,251,36,115,159,3,47,129,55,192,155,128,12,17,50,12,230,129,113,176,0,44,2,83,96,95,112,16,56,20,44,101,225,203,192,9,44,156,94,127,30,124,9,124,5,124,21,156,7,46,4,23,179,240,239,130,43,192,143,216,245,79,193,117,67,85,249,55,195,189,3,220,203,242,167,242,61,0,247,17,176,25,252,21,60,11,30,27,168,174,183,128,87,216,245,91,112,27,205,42,77,11,238,24,152,0,147,205,42,124,11,139,191,164,89,185,123,179,184,156,3,154,211,28,194,56,2,124,140,33,198,53,113,12,226,30,47,197,63,11,229,157,228,145,135,11,95,20,242,251,50,206,87,128,149,224,34,176,166,57,93,223,181,56,95,7,214,75,229,111,196,245,213,194,245,181,184,254,21,248,141,144,150,114,23,75,119,159,224,191,137,234,20,60,209,172,236,158,242,44,206,159,3,47,130,55,192,59,160,57,7,233,160,251,209,57,85,30,19,112,39,193,30,115,166,203,221,23,231,7,206,209,215,243,35,8,59,220,16,238,194,39,144,254,83,224,179,224,20,112,6,56,27,156,15,190,9,86,131,75,193,229,96,29,88,15,54,176,50,175,99,238,205,112,239,0,247,130,7,193,163,96,51,11,123,6,238,243,224,37,141,156,175,9,254,111,225,188,49,60,147,237,132,243,54,24,5,243,193,66,176,4,236,7,14,6,135,129,143,131,99,193,114,112,50,56,29,172,0,43,135,171,252,47,128,251,109,240,29,118,253,61,184,235,134,253,117,182,158,165,217,0,247,58,143,244,55,7,148,117,187,148,230,30,225,250,90,102,99,15,192,239,17,176,121,184,234,207,207,12,251,241,2,120,21,252,155,234,187,5,61,131,241,86,117,190,160,101,78,187,72,8,159,178,196,237,211,167,79,58,248,56,80,183,28,125,250,244,233,211,167,79,159,62,125,182,46,246,239,209,251,182,131,91,51,247,67,180,251,32,173,106,47,143,158,31,129,243,95,10,97,71,181,236,233,63,141,56,159,99,241,78,129,251,49,184,147,224,12,156,159,205,242,62,31,238,69,96,13,88,11,126,0,174,6,63,105,85,251,56,63,135,123,99,107,230,254,16,229,54,248,253,204,80,246,221,8,191,31,60,0,30,4,15,129,77,224,143,224,225,126,88,63,172,31,214,15,235,135,37,15,251,51,120,2,60,213,170,246,76,235,228,249,86,189,212,93,255,62,125,122,153,216,117,236,203,232,99,111,130,183,91,225,207,233,72,91,237,63,12,255,121,96,39,176,43,216,75,138,183,15,174,15,2,135,130,165,96,25,56,174,93,201,117,34,220,211,218,245,143,63,59,204,173,184,18,252,9,116,231,233,57,26,92,2,238,84,132,189,45,93,127,112,140,144,243,192,45,96,203,88,229,183,219,56,33,95,0,87,130,95,131,151,193,211,173,74,119,167,130,107,192,147,84,135,29,66,14,0,4,247,31,159,233,84,215,34,23,131,43,26,211,220,203,226,114,182,224,122,223,46,33,159,4,95,3,95,7,55,129,87,193,129,35,240,3,55,130,87,70,102,230,179,173,49,54,58,83,111,125,250,244,233,179,45,113,252,168,121,238,63,19,243,209,57,154,249,159,114,110,123,246,154,133,135,173,66,216,106,41,237,26,92,175,101,126,203,53,239,94,209,247,178,214,37,126,47,203,196,101,154,250,173,51,212,155,178,30,225,251,209,119,229,20,241,126,193,252,110,178,228,97,227,118,133,126,85,240,248,247,176,248,191,23,202,125,152,157,63,46,248,109,166,235,48,240,119,232,249,5,184,175,180,171,119,195,222,130,219,192,250,97,78,167,186,158,11,119,71,176,51,187,190,0,105,23,119,166,247,21,247,193,249,65,157,105,25,14,197,249,249,112,151,194,93,6,142,5,203,193,201,29,181,204,13,216,224,233,157,105,185,22,130,21,138,184,60,254,42,176,82,40,143,198,191,8,215,107,88,30,107,225,174,99,225,116,15,116,61,206,55,26,242,187,161,163,214,59,221,119,165,123,171,183,34,252,174,206,204,52,247,225,122,19,245,3,127,1,79,179,60,158,135,251,50,59,127,29,238,219,154,114,229,250,12,98,93,214,1,243,192,68,119,118,89,147,221,234,124,73,119,186,110,54,246,67,220,131,187,213,187,127,135,9,121,30,137,243,163,193,113,221,114,253,203,133,19,123,76,158,58,56,141,233,224,76,131,46,206,210,132,157,11,255,85,93,55,219,200,73,104,221,87,39,108,127,250,110,226,165,221,233,115,58,151,92,198,174,175,130,251,227,66,182,182,81,83,206,245,221,234,221,201,27,133,246,186,173,155,255,153,86,104,61,238,102,114,222,223,3,246,85,39,155,28,219,232,49,196,219,12,158,242,108,211,103,183,2,253,202,182,177,165,59,253,174,249,182,202,235,158,227,201,127,104,252,17,232,83,177,54,236,140,148,25,155,82,49,15,242,238,144,64,102,170,199,93,70,42,119,49,220,41,112,192,72,253,246,46,218,61,253,70,64,23,78,229,62,132,233,225,112,184,75,71,102,167,95,6,191,19,60,116,117,34,139,123,90,132,30,232,122,239,204,204,122,212,201,127,206,200,204,240,111,20,104,207,111,49,157,173,73,212,143,14,115,144,217,54,174,175,69,30,151,143,84,223,145,252,144,185,235,71,170,176,13,35,254,243,248,245,72,115,11,184,19,252,86,72,255,7,156,63,12,30,7,79,10,254,207,225,252,69,240,58,248,23,120,135,133,13,226,222,191,51,58,29,111,28,231,243,217,245,66,184,123,142,206,94,55,236,47,236,23,156,202,210,125,136,249,125,148,185,71,194,125,77,40,255,152,209,106,159,129,158,159,196,220,83,225,158,33,229,191,255,232,204,122,158,141,235,115,13,251,19,180,63,174,26,245,215,223,123,137,213,84,183,131,225,115,87,47,141,177,161,108,24,104,252,159,9,66,172,140,129,37,96,17,99,15,135,52,174,236,13,112,187,65,32,22,193,208,75,90,228,221,199,103,239,158,83,63,122,108,39,132,161,9,201,60,230,210,45,185,142,35,195,140,174,64,83,186,206,13,97,117,216,174,96,153,114,249,180,45,27,236,122,130,244,143,169,109,28,85,159,220,83,227,159,131,65,214,14,180,207,183,4,168,125,238,206,224,231,124,140,24,35,211,54,205,211,241,184,227,82,90,145,1,233,154,144,188,253,109,247,204,249,247,122,249,189,6,183,15,209,6,248,181,171,206,100,155,18,211,140,91,210,150,160,84,191,221,26,24,12,76,163,35,68,134,208,118,148,215,42,182,182,173,219,238,114,66,117,65,199,124,62,103,113,255,22,209,207,97,189,206,152,208,110,19,138,243,38,115,109,243,247,72,15,193,219,197,103,253,161,91,175,139,237,223,22,144,215,241,62,58,111,10,46,167,110,219,206,61,118,187,222,31,181,53,186,207,61,182,52,137,189,238,29,75,28,89,127,170,184,60,142,171,62,82,183,235,123,193,166,228,241,247,189,132,143,30,186,196,111,140,115,25,239,114,218,95,78,157,200,105,232,216,204,251,180,120,143,41,222,215,149,144,85,39,191,236,175,139,87,210,214,115,149,43,218,155,207,253,191,169,125,83,244,159,208,121,44,119,25,49,245,207,105,19,41,245,107,203,203,87,190,49,70,201,113,77,238,47,117,180,143,216,127,82,180,143,152,167,169,175,202,126,54,29,133,206,59,124,189,173,202,155,251,183,20,229,169,198,209,186,219,39,5,166,118,177,201,16,179,14,80,245,75,87,123,81,233,160,116,123,196,234,59,181,28,33,253,161,69,236,237,95,106,62,42,213,255,67,108,90,182,185,58,250,189,78,206,84,122,55,233,192,54,78,228,186,15,224,227,176,235,250,110,107,232,255,174,109,146,187,255,155,218,208,117,191,95,148,185,244,51,130,146,99,145,105,76,138,209,127,76,93,234,208,117,10,189,187,150,151,219,254,93,242,214,173,19,101,82,142,199,190,54,233,219,223,197,118,112,29,211,57,123,245,8,178,92,173,200,252,186,30,122,228,247,133,189,170,27,174,31,95,187,80,233,100,92,66,244,27,20,206,199,216,117,83,193,32,75,39,63,147,176,141,7,169,239,187,229,231,82,220,165,71,67,112,99,198,215,84,107,179,49,7,255,210,115,162,235,24,197,251,71,236,216,46,218,150,110,109,193,159,95,199,140,139,58,121,99,251,160,107,249,186,244,239,171,153,5,53,179,115,205,228,90,75,153,198,13,121,157,100,234,71,185,169,179,236,210,229,211,163,65,102,142,31,190,178,218,198,189,80,92,215,129,161,178,251,148,175,91,251,228,148,193,167,222,169,203,159,138,40,63,245,154,142,235,126,72,184,230,182,39,174,127,83,237,3,164,106,63,190,14,228,242,143,75,254,178,141,241,247,209,114,200,95,199,189,179,205,174,74,174,205,100,253,136,215,188,61,98,215,45,177,247,114,190,246,107,186,167,203,133,73,191,60,78,93,247,125,220,182,92,245,23,75,234,241,47,246,222,73,164,228,145,67,54,81,159,163,142,240,113,86,60,23,253,92,112,145,223,71,22,213,218,182,14,66,108,136,167,141,221,143,208,29,161,118,227,187,254,201,57,159,200,118,230,243,222,132,78,230,212,251,63,185,112,93,247,219,218,75,182,185,24,91,21,219,220,212,23,84,182,145,178,239,132,126,91,144,2,185,236,58,108,131,175,117,117,125,132,51,40,93,239,192,100,222,85,144,95,142,183,61,153,249,173,206,0,153,254,174,116,64,113,45,198,165,204,21,160,249,241,111,96,117,186,108,91,16,101,160,229,12,49,116,186,25,102,178,53,132,184,166,248,166,254,215,86,232,180,43,93,207,87,164,245,89,103,200,253,216,229,27,52,94,63,241,123,42,249,27,43,151,244,161,247,99,226,248,210,50,208,182,132,251,166,109,43,206,99,202,104,121,180,147,235,156,21,179,159,192,237,93,110,195,54,113,107,23,49,157,207,187,195,174,118,147,227,251,72,83,217,170,239,12,85,223,169,154,208,149,231,155,206,85,47,114,251,230,40,207,71,166,208,186,168,228,146,253,84,225,220,149,191,75,182,181,173,74,23,114,29,76,186,51,217,144,139,61,132,180,181,173,220,20,253,193,164,27,211,117,10,251,73,149,191,171,206,98,117,23,43,151,47,115,19,200,64,15,241,57,113,168,172,252,222,216,167,204,28,58,149,239,213,99,242,138,153,87,117,248,206,31,57,233,6,166,145,237,34,135,92,62,125,40,69,89,161,50,184,234,210,39,31,213,181,171,191,156,71,108,253,92,245,238,154,38,71,255,54,213,219,166,55,158,15,15,31,85,148,51,73,210,140,39,33,117,212,233,48,133,46,99,218,93,101,115,92,127,170,56,41,100,46,165,127,91,189,75,227,186,191,45,219,178,201,166,119,215,196,87,245,7,57,76,236,119,58,61,169,228,80,229,163,146,103,210,80,174,10,149,174,38,37,74,217,136,120,61,160,129,134,241,231,146,178,252,244,104,4,184,57,230,225,80,123,231,50,149,236,35,174,122,170,163,76,95,183,78,189,149,44,187,148,173,164,178,107,25,211,62,170,252,14,130,188,135,219,36,110,207,87,108,184,190,183,164,123,54,163,27,163,108,152,246,253,197,125,106,34,213,83,28,3,197,107,122,152,250,132,156,63,127,199,70,181,47,174,210,211,246,12,221,94,58,81,148,161,171,147,174,44,62,166,187,212,197,247,249,119,46,248,239,75,54,4,191,33,225,220,86,23,34,165,181,197,27,18,206,197,116,161,207,238,117,113,85,254,252,89,140,232,71,219,96,49,59,183,185,185,41,85,142,173,124,151,122,219,194,22,147,217,207,128,135,36,120,155,244,154,254,83,213,95,101,127,139,137,218,14,99,100,142,193,150,191,109,125,152,163,29,66,117,227,251,188,43,102,206,77,53,127,235,214,19,190,239,75,164,150,65,156,227,68,92,245,43,203,228,251,30,71,14,125,234,100,240,177,15,215,103,161,161,240,239,131,248,90,194,231,253,26,159,103,194,49,239,51,185,148,239,139,143,126,92,236,199,86,94,142,239,26,114,63,187,167,101,212,241,205,148,169,189,235,60,66,244,77,15,221,252,97,122,167,116,74,227,239,75,157,223,223,77,101,212,171,171,45,139,58,158,32,246,123,46,57,239,16,157,135,126,199,228,58,110,248,212,223,119,140,146,243,142,29,175,119,4,59,21,164,116,121,190,123,32,41,191,237,148,243,174,227,251,78,89,134,247,215,76,206,181,82,87,211,166,244,183,141,39,136,223,239,32,231,254,141,229,210,240,61,151,210,229,202,235,227,216,117,225,48,153,222,43,226,191,37,45,239,179,209,247,96,114,173,79,85,243,9,47,215,213,149,211,153,230,170,134,224,82,249,249,94,129,248,188,200,86,142,13,254,222,170,234,158,185,14,91,229,101,207,103,46,175,167,44,171,74,135,13,201,245,217,99,144,247,25,154,158,121,196,66,2,101,207,85,62,215,109,67,58,231,122,74,181,167,84,130,148,123,108,190,136,253,137,218,110,75,10,231,239,166,218,250,155,235,26,70,28,175,118,35,213,190,92,29,253,217,182,222,239,133,177,134,207,73,41,101,240,93,115,202,109,87,151,30,100,157,184,220,207,213,37,31,183,165,58,202,157,146,202,143,89,79,228,182,55,151,103,152,174,182,224,210,246,186,114,76,107,178,18,246,228,170,19,91,63,176,201,95,234,247,40,196,113,126,76,145,62,102,12,138,197,197,190,75,247,145,28,121,166,236,167,42,221,213,113,152,246,73,117,123,161,185,214,162,174,242,202,178,211,195,69,215,252,55,251,82,218,149,139,29,119,200,236,113,199,117,191,144,143,49,165,214,43,57,199,179,208,57,211,71,46,213,248,94,215,24,192,203,20,191,151,118,25,15,228,124,228,247,143,84,118,198,207,125,126,95,96,92,202,63,100,125,229,219,150,186,247,181,38,164,60,235,154,203,92,234,108,122,14,94,114,124,201,209,127,85,101,212,113,136,178,168,108,222,7,158,223,148,116,174,170,187,202,159,191,31,40,30,49,242,184,180,163,107,251,152,214,56,170,177,208,119,28,229,54,45,143,51,186,50,93,230,178,88,251,228,191,159,202,223,195,145,127,131,215,118,15,20,114,63,32,150,47,199,245,105,191,216,250,203,191,93,236,66,233,241,49,102,190,183,233,52,86,127,177,196,254,14,156,239,243,123,209,54,67,127,115,174,174,246,143,89,243,233,214,107,177,71,204,28,66,132,115,121,61,227,242,110,28,37,100,15,57,70,255,169,219,132,183,203,184,144,87,9,187,19,235,31,99,63,41,177,149,45,251,169,214,219,99,158,186,244,109,191,82,54,33,207,161,226,252,227,211,63,114,216,187,13,83,249,117,204,177,114,253,67,222,195,245,157,111,82,233,143,191,187,154,186,109,98,237,211,5,23,125,218,250,123,170,246,136,237,15,49,99,187,73,254,84,135,234,158,206,197,182,197,249,120,130,148,63,196,242,67,246,71,93,143,148,227,71,105,218,100,246,111,232,229,28,163,117,196,62,47,228,121,132,142,189,37,244,47,30,13,1,57,158,236,199,227,19,77,252,220,50,235,228,244,205,103,208,0,47,71,229,199,93,211,26,41,247,92,18,99,31,169,218,45,116,62,10,221,47,54,245,53,221,252,234,211,231,98,229,240,89,227,170,224,97,169,215,103,37,198,146,216,54,85,205,213,177,253,40,197,189,141,136,252,13,170,238,127,150,108,235,143,94,155,143,93,203,143,217,123,168,123,61,34,203,31,35,71,236,119,179,169,72,209,94,185,222,93,44,49,230,152,198,96,219,115,159,82,253,205,54,246,228,30,223,82,143,129,190,117,46,217,246,190,243,98,110,114,181,173,74,175,185,230,65,159,54,20,227,170,158,141,197,140,185,41,116,22,59,255,196,150,149,218,206,83,146,66,63,177,117,9,181,83,223,126,159,123,158,74,161,203,16,185,100,157,197,236,23,250,252,6,123,142,242,83,180,75,234,249,223,102,159,114,250,208,250,243,163,14,27,18,105,91,174,125,9,249,13,65,113,125,153,250,119,9,83,231,215,205,32,111,142,117,250,46,133,80,149,61,169,241,79,129,170,13,74,150,161,243,23,127,75,84,165,7,85,120,105,22,42,144,229,83,201,107,35,133,108,62,229,249,200,163,146,79,142,235,90,151,73,67,158,62,182,165,114,117,101,233,210,134,246,1,211,216,29,219,134,174,115,68,206,188,115,213,205,102,183,46,237,23,154,191,107,153,41,40,173,199,144,114,76,125,189,212,239,58,139,191,117,106,250,31,175,212,54,225,59,238,250,150,153,218,174,82,235,61,119,249,169,229,79,37,95,174,254,26,91,63,221,122,199,197,126,125,214,18,62,246,238,179,70,40,185,46,203,85,134,106,45,19,83,158,105,125,20,179,38,172,99,13,28,187,126,141,189,55,143,221,31,41,165,39,215,122,255,15]),Jr=new Uint8Array(new Uint32Array([305419896]).buffer)[0]===18,h4=(r,t,e)=>{const n=r[t];r[t]=r[e],r[e]=n},Qr=r=>{const t=r.length;for(let e=0;e<t;e+=4)h4(r,e,e+3),h4(r,e+1,e+2)},e8=r=>{Jr&&Qr(r)},s6=0,f4=-3;let F2=class{constructor(){_(this,"table",new Uint16Array(16));_(this,"trans",new Uint16Array(288))}},t8=class{constructor(t,e){_(this,"source");_(this,"dest");_(this,"sourceIndex");_(this,"tag");_(this,"bitcount");_(this,"destLen");_(this,"ltree");_(this,"dtree");this.source=t,this.sourceIndex=0,this.tag=0,this.bitcount=0,this.dest=e,this.destLen=0,this.ltree=new F2,this.dtree=new F2}};const d4=new F2,_4=new F2,i6=new Uint8Array(30),a6=new Uint16Array(30),g4=new Uint8Array(30),p4=new Uint16Array(30),n8=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),D4=new F2,q1=new Uint8Array(320);function v4(r,t,e,n){let s,i;for(s=0;s<e;++s)r[s]=0;for(s=0;s<30-e;++s)r[s+e]=s/e|0;for(i=n,s=0;s<30;++s)t[s]=i,i+=1<<r[s]}function r8(r,t){let e;for(e=0;e<7;++e)r.table[e]=0;for(r.table[7]=24,r.table[8]=152,r.table[9]=112,e=0;e<24;++e)r.trans[e]=256+e;for(e=0;e<144;++e)r.trans[24+e]=e;for(e=0;e<8;++e)r.trans[168+e]=280+e;for(e=0;e<112;++e)r.trans[176+e]=144+e;for(e=0;e<5;++e)t.table[e]=0;for(t.table[5]=32,e=0;e<32;++e)t.trans[e]=e}const m4=new Uint16Array(16);function o6(r,t,e,n){let s,i;for(s=0;s<16;++s)r.table[s]=0;for(s=0;s<n;++s)r.table[t[e+s]]++;for(r.table[0]=0,i=0,s=0;s<16;++s)m4[s]=i,i+=r.table[s];for(s=0;s<n;++s)t[e+s]&&(r.trans[m4[t[e+s]]++]=s)}function s8(r){r.bitcount--||(r.tag=r.source[r.sourceIndex++],r.bitcount=7);const t=r.tag&1;return r.tag>>>=1,t}function Z1(r,t,e){if(!t)return e;for(;r.bitcount<24;)r.tag|=r.source[r.sourceIndex++]<<r.bitcount,r.bitcount+=8;const n=r.tag&65535>>>16-t;return r.tag>>>=t,r.bitcount-=t,n+e}function u6(r,t){for(;r.bitcount<24;)r.tag|=r.source[r.sourceIndex++]<<r.bitcount,r.bitcount+=8;let e=0,n=0,s=0,i=r.tag;do n=2*n+(i&1),i>>>=1,++s,e+=t.table[s],n-=t.table[s];while(n>=0);return r.tag=i,r.bitcount-=s,t.trans[e+n]}function i8(r,t,e){let n,s,i;const a=Z1(r,5,257),o=Z1(r,5,1),u=Z1(r,4,4);for(n=0;n<19;++n)q1[n]=0;for(n=0;n<u;++n){const l=Z1(r,3,0);q1[n8[n]]=l}for(o6(D4,q1,0,19),s=0;s<a+o;){const l=u6(r,D4);switch(l){case 16:{const c=q1[s-1];for(i=Z1(r,2,3);i;--i)q1[s++]=c;break}case 17:for(i=Z1(r,3,3);i;--i)q1[s++]=0;break;case 18:for(i=Z1(r,7,11);i;--i)q1[s++]=0;break;default:q1[s++]=l;break}}o6(t,q1,0,a),o6(e,q1,a,o)}function b4(r,t,e){for(;;){let n=u6(r,t);if(n===256)return s6;if(n<256)r.dest[r.destLen++]=n;else{let s;n-=257;const i=Z1(r,i6[n],a6[n]),a=u6(r,e),o=r.destLen-Z1(r,g4[a],p4[a]);for(s=o;s<o+i;++s)r.dest[r.destLen++]=r.dest[s]}}}function a8(r){let t,e,n;for(;r.bitcount>8;)r.sourceIndex--,r.bitcount-=8;if(t=r.source[r.sourceIndex+1],t=256*t+r.source[r.sourceIndex],e=r.source[r.sourceIndex+3],e=256*e+r.source[r.sourceIndex+2],t!==(~e&65535))return f4;for(r.sourceIndex+=4,n=t;n;--n)r.dest[r.destLen++]=r.source[r.sourceIndex++];return r.bitcount=0,s6}function y4(r,t){const e=new t8(r,t);let n,s,i;do{switch(n=s8(e),s=Z1(e,2,0),s){case 0:i=a8(e);break;case 1:i=b4(e,d4,_4);break;case 2:i8(e,e.ltree,e.dtree),i=b4(e,e.ltree,e.dtree);break;default:i=f4}if(i!==s6)throw new Error("Data error")}while(!n);return e.destLen<e.dest.length?typeof e.dest.slice=="function"?e.dest.slice(0,e.destLen):e.dest.subarray(0,e.destLen):e.dest}r8(d4,_4),v4(i6,a6,4,3),v4(g4,p4,2,1),i6[28]=0,a6[28]=258;const l6=11,Te=5,o8=l6-Te,u8=65536>>l6,l8=(1<<o8)-1,J2=2,c6=(1<<Te)-1,F4=65536>>Te,c8=1024>>Te,h8=F4+c8+32,f8=1<<J2;class d8{constructor(t){_(this,"highStart");_(this,"errorValue");_(this,"data");const e=typeof t.readUInt32BE=="function"&&typeof t.slice=="function";if(e||t instanceof Uint8Array){let n;if(e)this.highStart=t.readUInt32LE(0),this.errorValue=t.readUInt32LE(4),n=t.readUInt32LE(8),t=t.slice(12);else{const s=new DataView(t.buffer);this.highStart=s.getUint32(0,!0),this.errorValue=s.getUint32(4,!0),n=s.getUint32(8,!0),t=t.subarray(12)}t=y4(t,new Uint8Array(n)),t=y4(t,new Uint8Array(n)),e8(t),this.data=new Uint32Array(t.buffer)}else({data:this.data,highStart:this.highStart,errorValue:this.errorValue}=t)}get(t){let e;return t<0||t>1114111?this.errorValue:t<55296||t>56319&&t<=65535?(e=(this.data[t>>Te]<<J2)+(t&c6),this.data[e]):t<=65535?(e=(this.data[F4+(t-55296>>Te)]<<J2)+(t&c6),this.data[e]):t<this.highStart?(e=this.data[h8-u8+(t>>l6)],e=this.data[e+(t>>Te&l8)],e=(e<<J2)+(t&c6),this.data[e]):this.data[this.data.length-f8]}}const _8=new d8(Zr);function h6(r){switch(r){case Xr:return a4;case Yr:case jr:case Vr:return a4;case Wr:return Nr;default:return r}}function f6(r){switch(r){case r6:case l4:return Z2;case y2:return zr;default:return r}}class g8{constructor(t){_(this,"_pos",0);_(this,"_lastPos",0);_(this,"_curClass",null);_(this,"_codePoint",null);_(this,"_nextClass",null);_(this,"_LB8a",!1);_(this,"_LB21a",!1);_(this,"_LB30a",0);_(this,"_rule",new qr);this.string=t}use(t){return t(this),this}addRule(t,e){return this._rule.add(t,e),this}nextBreak(){if(this._curClass==null){const t=this._nextCharClass();this._curClass=f6(t),this._nextClass=t,this._LB8a=t===u4,this._LB30a=0}for(;this._pos<this.string.length;){this._lastPos=this._pos;const t=this._nextClass;if(this._nextClass=this._nextCharClass(),this._curClass===Z2||this._curClass===n6&&this._nextClass!==r6)return this._curClass=f6(h6(this._nextClass)),new q2(this._lastPos,!0);if(this._rule.shouldBreak(this._codePoint,this._nextClass))return this._curClass=f6(h6(this._nextClass)),new q2(this._lastPos);let e=this._getSimpleBreak();if(e===null&&(e=this._getPairTableBreak(t)),this._LB8a=this._nextClass===u4,e)return new q2(this._lastPos)}return this._lastPos<this.string.length?(this._lastPos=this.string.length,new q2(this.string.length)):null}_getNextCodePoint(){const t=this.string.charCodeAt(this._pos++),e=this.string.charCodeAt(this._pos);return t>=55296&&t<=56319&&e>=56320&&e<=57343?(this._pos++,(t-55296)*1024+(e-56320)+65536):t}_nextCharClass(){const t=this._getNextCodePoint(),e=_8.get(t);return this._codePoint=t,h6(e)}_getSimpleBreak(){switch(this._nextClass){case y2:return!1;case Z2:case r6:case l4:return this._curClass=Z2,!1;case n6:return this._curClass=n6,!1}return null}_getPairTableBreak(t){let e=!1;switch(Kr[this._curClass][this._nextClass]){case p:e=!0;break;case b:e=t===y2;break;case r1:if(e=t===y2,!e)return e=!1,e;break;case c4:if(t!==y2)return e;break}return this._LB8a&&(e=!1),this._LB21a&&(this._curClass===Hr||this._curClass===Gr)?(e=!1,this._LB21a=!1):this._LB21a=this._curClass===Ur,this._curClass===o4?(this._LB30a++,this._LB30a===2&&this._nextClass===o4&&(e=!0,this._LB30a=0)):this._LB30a=0,this._curClass=this._nextClass,e}}const p8=9;function D8(r){r.addRule("break_before_tab",t=>t===p8)}function C4(r){return[" "," "," "].includes(r)}function E4(r){return C4(r)||f2(r)||z2(r)||X2(r)||$t(r)}function Q2(r,t){return C4(r)?{stretchability:[0,t/2],shrinkability:[0,t/3]}:z2(r)?{stretchability:[0,0],shrinkability:[0,t/2]}:X2(r)?{stretchability:[0,0],shrinkability:[t/2,0]}:$t(r)?{stretchability:[0,0],shrinkability:[t/4,t/4]}:{stretchability:[0,0],shrinkability:[0,0]}}function v8(r,t,e){return d6(T1.WORD,r,t,e)}function we(r,t,e,n){return d6(T1.LETTER,r,t,e,n)}function S4(r,t){return d6(T1.TAB,g.DataStreamTreeTokenType.TAB,r,t)}function T4(r,t=0,e=0,n=""){const{fontStyle:s,textStyle:i}=r,a=g.DataStreamTreeTokenType.CUSTOM_BLOCK;return{content:"",ts:i,fontStyle:s,width:t,bBox:{width:0,ba:e,bd:0,aba:0,abd:0,sp:0,sbr:0,sbo:0,spr:0,spo:0},xOffset:0,left:0,isJustifiable:!1,adjustability:Q2(a,0),glyphType:T1.PLACEHOLDER,streamType:a,count:1,objectId:n}}function d6(r,t,e,n,s){const{fontStyle:i,textStyle:a,charSpace:o=1,gridType:u=g.GridType.LINES,snapToGrid:l=g.BooleanNumber.FALSE}=e,c=[g.DataStreamTreeTokenType.SECTION_BREAK,g.DataStreamTreeTokenType.TABLE_START,g.DataStreamTreeTokenType.TABLE_END,g.DataStreamTreeTokenType.TABLE_ROW_START,g.DataStreamTreeTokenType.TABLE_ROW_END,g.DataStreamTreeTokenType.TABLE_CELL_START,g.DataStreamTreeTokenType.TABLE_CELL_END,g.DataStreamTreeTokenType.CUSTOM_RANGE_START,g.DataStreamTreeTokenType.CUSTOM_RANGE_END,g.DataStreamTreeTokenType.COLUMN_BREAK,g.DataStreamTreeTokenType.PAGE_BREAK,g.DataStreamTreeTokenType.DOCS_END,g.DataStreamTreeTokenType.CUSTOM_BLOCK];let h=g.DataStreamTreeTokenType.LETTER;if(c.indexOf(t)>-1)return{content:"",ts:a,fontStyle:i,width:0,bBox:{width:0,ba:0,bd:0,aba:0,abd:0,sp:0,sbr:0,sbo:0,spr:0,spo:0},xOffset:0,left:0,isJustifiable:!1,adjustability:Q2(t,0),glyphType:T1.PLACEHOLDER,streamType:t,count:1};t===g.DataStreamTreeTokenType.PARAGRAPH&&(h=g.DataStreamTreeTokenType.PARAGRAPH);let f=null,d=0;s&&s.boundingBox&&s.font?f=re.getBBoxFromGlyphInfo(s,i):f=re.getTextSize(t,i);const{width:D=0}=f;let m=n!=null?n:D;if(Q0(u,l)&&(m=D+(d2(t)?o:o/2),u===g.GridType.SNAP_TO_CHARS&&(d=(m-D)/2)),s&&s.kerning!==0&&s.font){const v=Pt(i.fontSize)/s.font.unitsPerEm,F=s.kerning*v;m+=F,d+=F}return{content:t,ts:a,fontStyle:i,width:m,bBox:f,xOffset:d,left:0,glyphType:r,streamType:h,isJustifiable:E4(t),adjustability:Q2(t,m),count:t.length}}function m8(r,t,e){const{bBox:n,symbol:s,ts:i,fontStyle:a,bulletAlign:o=g.BulletAlignment.START,bulletType:u=!1}=t,l=n.width,c=Math.ceil(l/e);let h=(c<2?2:c)*e,f=0;u&&(o===g.BulletAlignment.CENTER?(f=-l/2,h-=f):o===g.BulletAlignment.END&&(f=-l,h-=f));const d=b8(r,t);return{content:s,ts:i,fontStyle:a,width:h,xOffset:0,bBox:d,left:f,isJustifiable:E4(s),adjustability:Q2(s,h),glyphType:T1.LIST,streamType:g.DataStreamTreeTokenType.LETTER,count:0}}function _6(r,t=0){const e=r.length;let n;for(let s=0;s<e;s++){const i=r[s];i.left=n?n.left+n.width:t,n=i}}function et(r,t,e=0){_6(t,e);for(const n of t)n.parent=r;r.glyphGroup.push(...t)}function b8(r,t){const{ba:e,bd:n}=r.bBox,{ba:s,bd:i}=t.bBox;return e+n>s+i?r.bBox:t.bBox}function w4(r,t){r.width-=t,r.adjustability.shrinkability[1]-=t}function B4(r,t){r.width-=t,r.xOffset-=t,r.adjustability.shrinkability[0]-=t}/*! https://mths.be/codepointat v0.2.0 by @mathias */String.prototype.codePointAt||function(){var r=function(){try{var e={},n=Object.defineProperty,s=n(e,e,e)&&n}catch{}return s}(),t=function(e){if(this==null)throw TypeError();var n=String(this),s=n.length,i=e?Number(e):0;if(i!=i&&(i=0),!(i<0||i>=s)){var a=n.charCodeAt(i),o;return a>=55296&&a<=56319&&s>i+1&&(o=n.charCodeAt(i+1),o>=56320&&o<=57343)?(a-55296)*1024+o-56320+65536:a}};r?r(String.prototype,"codePointAt",{value:t,configurable:!0,writable:!0}):String.prototype.codePointAt=t}();var g6=0,O4=-3;function C2(){this.table=new Uint16Array(16),this.trans=new Uint16Array(288)}function y8(r,t){this.source=r,this.sourceIndex=0,this.tag=0,this.bitcount=0,this.dest=t,this.destLen=0,this.ltree=new C2,this.dtree=new C2}var x4=new C2,R4=new C2,p6=new Uint8Array(30),D6=new Uint16Array(30),A4=new Uint8Array(30),k4=new Uint16Array(30),F8=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),$4=new C2,J1=new Uint8Array(320);function I4(r,t,e,n){var s,i;for(s=0;s<e;++s)r[s]=0;for(s=0;s<30-e;++s)r[s+e]=s/e|0;for(i=n,s=0;s<30;++s)t[s]=i,i+=1<<r[s]}function C8(r,t){var e;for(e=0;e<7;++e)r.table[e]=0;for(r.table[7]=24,r.table[8]=152,r.table[9]=112,e=0;e<24;++e)r.trans[e]=256+e;for(e=0;e<144;++e)r.trans[24+e]=e;for(e=0;e<8;++e)r.trans[168+e]=280+e;for(e=0;e<112;++e)r.trans[176+e]=144+e;for(e=0;e<5;++e)t.table[e]=0;for(t.table[5]=32,e=0;e<32;++e)t.trans[e]=e}var L4=new Uint16Array(16);function v6(r,t,e,n){var s,i;for(s=0;s<16;++s)r.table[s]=0;for(s=0;s<n;++s)r.table[t[e+s]]++;for(r.table[0]=0,i=0,s=0;s<16;++s)L4[s]=i,i+=r.table[s];for(s=0;s<n;++s)t[e+s]&&(r.trans[L4[t[e+s]]++]=s)}function E8(r){r.bitcount--||(r.tag=r.source[r.sourceIndex++],r.bitcount=7);var t=r.tag&1;return r.tag>>>=1,t}function Q1(r,t,e){if(!t)return e;for(;r.bitcount<24;)r.tag|=r.source[r.sourceIndex++]<<r.bitcount,r.bitcount+=8;var n=r.tag&65535>>>16-t;return r.tag>>>=t,r.bitcount-=t,n+e}function m6(r,t){for(;r.bitcount<24;)r.tag|=r.source[r.sourceIndex++]<<r.bitcount,r.bitcount+=8;var e=0,n=0,s=0,i=r.tag;do n=2*n+(i&1),i>>>=1,++s,e+=t.table[s],n-=t.table[s];while(n>=0);return r.tag=i,r.bitcount-=s,t.trans[e+n]}function S8(r,t,e){var n,s,i,a,o,u;for(n=Q1(r,5,257),s=Q1(r,5,1),i=Q1(r,4,4),a=0;a<19;++a)J1[a]=0;for(a=0;a<i;++a){var l=Q1(r,3,0);J1[F8[a]]=l}for(v6($4,J1,0,19),o=0;o<n+s;){var c=m6(r,$4);switch(c){case 16:var h=J1[o-1];for(u=Q1(r,2,3);u;--u)J1[o++]=h;break;case 17:for(u=Q1(r,3,3);u;--u)J1[o++]=0;break;case 18:for(u=Q1(r,7,11);u;--u)J1[o++]=0;break;default:J1[o++]=c;break}}v6(t,J1,0,n),v6(e,J1,n,s)}function P4(r,t,e){for(;;){var n=m6(r,t);if(n===256)return g6;if(n<256)r.dest[r.destLen++]=n;else{var s,i,a,o;for(n-=257,s=Q1(r,p6[n],D6[n]),i=m6(r,e),a=r.destLen-Q1(r,A4[i],k4[i]),o=a;o<a+s;++o)r.dest[r.destLen++]=r.dest[o]}}}function T8(r){for(var t,e,n;r.bitcount>8;)r.sourceIndex--,r.bitcount-=8;if(t=r.source[r.sourceIndex+1],t=256*t+r.source[r.sourceIndex],e=r.source[r.sourceIndex+3],e=256*e+r.source[r.sourceIndex+2],t!==(~e&65535))return O4;for(r.sourceIndex+=4,n=t;n;--n)r.dest[r.destLen++]=r.source[r.sourceIndex++];return r.bitcount=0,g6}function w8(r,t){var e=new y8(r,t),n,s,i;do{switch(n=E8(e),s=Q1(e,2,0),s){case 0:i=T8(e);break;case 1:i=P4(e,x4,R4);break;case 2:S8(e,e.ltree,e.dtree),i=P4(e,e.ltree,e.dtree);break;default:i=O4}if(i!==g6)throw new Error("Data error")}while(!n);return e.destLen<e.dest.length?typeof e.dest.slice=="function"?e.dest.slice(0,e.destLen):e.dest.subarray(0,e.destLen):e.dest}C8(x4,R4),I4(p6,D6,4,3),I4(A4,k4,2,1),p6[28]=0,D6[28]=258;var B8=w8;function je(r,t,e,n,s){return Math.pow(1-s,3)*r+3*Math.pow(1-s,2)*s*t+3*(1-s)*Math.pow(s,2)*e+Math.pow(s,3)*n}function ae(){this.x1=Number.NaN,this.y1=Number.NaN,this.x2=Number.NaN,this.y2=Number.NaN}ae.prototype.isEmpty=function(){return isNaN(this.x1)||isNaN(this.y1)||isNaN(this.x2)||isNaN(this.y2)},ae.prototype.addPoint=function(r,t){typeof r=="number"&&((isNaN(this.x1)||isNaN(this.x2))&&(this.x1=r,this.x2=r),r<this.x1&&(this.x1=r),r>this.x2&&(this.x2=r)),typeof t=="number"&&((isNaN(this.y1)||isNaN(this.y2))&&(this.y1=t,this.y2=t),t<this.y1&&(this.y1=t),t>this.y2&&(this.y2=t))},ae.prototype.addX=function(r){this.addPoint(r,null)},ae.prototype.addY=function(r){this.addPoint(null,r)},ae.prototype.addBezier=function(r,t,e,n,s,i,a,o){var u=[r,t],l=[e,n],c=[s,i],h=[a,o];this.addPoint(r,t),this.addPoint(a,o);for(var f=0;f<=1;f++){var d=6*u[f]-12*l[f]+6*c[f],D=-3*u[f]+9*l[f]-9*c[f]+3*h[f],m=3*l[f]-3*u[f];if(D===0){if(d===0)continue;var v=-m/d;0<v&&v<1&&(f===0&&this.addX(je(u[f],l[f],c[f],h[f],v)),f===1&&this.addY(je(u[f],l[f],c[f],h[f],v)));continue}var F=Math.pow(d,2)-4*m*D;if(!(F<0)){var C=(-d+Math.sqrt(F))/(2*D);0<C&&C<1&&(f===0&&this.addX(je(u[f],l[f],c[f],h[f],C)),f===1&&this.addY(je(u[f],l[f],c[f],h[f],C)));var S=(-d-Math.sqrt(F))/(2*D);0<S&&S<1&&(f===0&&this.addX(je(u[f],l[f],c[f],h[f],S)),f===1&&this.addY(je(u[f],l[f],c[f],h[f],S)))}}},ae.prototype.addQuad=function(r,t,e,n,s,i){var a=r+.6666666666666666*(e-r),o=t+2/3*(n-t),u=a+1/3*(s-r),l=o+1/3*(i-t);this.addBezier(r,t,a,o,u,l,s,i)};function d1(){this.commands=[],this.fill="black",this.stroke=null,this.strokeWidth=1}d1.prototype.moveTo=function(r,t){this.commands.push({type:"M",x:r,y:t})},d1.prototype.lineTo=function(r,t){this.commands.push({type:"L",x:r,y:t})},d1.prototype.curveTo=d1.prototype.bezierCurveTo=function(r,t,e,n,s,i){this.commands.push({type:"C",x1:r,y1:t,x2:e,y2:n,x:s,y:i})},d1.prototype.quadTo=d1.prototype.quadraticCurveTo=function(r,t,e,n){this.commands.push({type:"Q",x1:r,y1:t,x:e,y:n})},d1.prototype.close=d1.prototype.closePath=function(){this.commands.push({type:"Z"})},d1.prototype.extend=function(r){if(r.commands)r=r.commands;else if(r instanceof ae){var t=r;this.moveTo(t.x1,t.y1),this.lineTo(t.x2,t.y1),this.lineTo(t.x2,t.y2),this.lineTo(t.x1,t.y2),this.close();return}Array.prototype.push.apply(this.commands,r)},d1.prototype.getBoundingBox=function(){for(var r=new ae,t=0,e=0,n=0,s=0,i=0;i<this.commands.length;i++){var a=this.commands[i];switch(a.type){case"M":r.addPoint(a.x,a.y),t=n=a.x,e=s=a.y;break;case"L":r.addPoint(a.x,a.y),n=a.x,s=a.y;break;case"Q":r.addQuad(n,s,a.x1,a.y1,a.x,a.y),n=a.x,s=a.y;break;case"C":r.addBezier(n,s,a.x1,a.y1,a.x2,a.y2,a.x,a.y),n=a.x,s=a.y;break;case"Z":n=t,s=e;break;default:throw new Error("Unexpected path command "+a.type)}}return r.isEmpty()&&r.addPoint(0,0),r},d1.prototype.draw=function(r){r.beginPath();for(var t=0;t<this.commands.length;t+=1){var e=this.commands[t];e.type==="M"?r.moveTo(e.x,e.y):e.type==="L"?r.lineTo(e.x,e.y):e.type==="C"?r.bezierCurveTo(e.x1,e.y1,e.x2,e.y2,e.x,e.y):e.type==="Q"?r.quadraticCurveTo(e.x1,e.y1,e.x,e.y):e.type==="Z"&&r.closePath()}this.fill&&(r.fillStyle=this.fill,r.fill()),this.stroke&&(r.strokeStyle=this.stroke,r.lineWidth=this.strokeWidth,r.stroke())},d1.prototype.toPathData=function(r){r=r!==void 0?r:2;function t(a){return Math.round(a)===a?""+Math.round(a):a.toFixed(r)}function e(){for(var a=arguments,o="",u=0;u<arguments.length;u+=1){var l=a[u];l>=0&&u>0&&(o+=" "),o+=t(l)}return o}for(var n="",s=0;s<this.commands.length;s+=1){var i=this.commands[s];i.type==="M"?n+="M"+e(i.x,i.y):i.type==="L"?n+="L"+e(i.x,i.y):i.type==="C"?n+="C"+e(i.x1,i.y1,i.x2,i.y2,i.x,i.y):i.type==="Q"?n+="Q"+e(i.x1,i.y1,i.x,i.y):i.type==="Z"&&(n+="Z")}return n},d1.prototype.toSVG=function(r){var t='<path d="';return t+=this.toPathData(r),t+='"',this.fill&&this.fill!=="black"&&(this.fill===null?t+=' fill="none"':t+=' fill="'+this.fill+'"'),this.stroke&&(t+=' stroke="'+this.stroke+'" stroke-width="'+this.strokeWidth+'"'),t+="/>",t},d1.prototype.toDOMElement=function(r){var t=this.toPathData(r),e=document.createElementNS("http://www.w3.org/2000/svg","path");return e.setAttribute("d",t),e};function M4(r){throw new Error(r)}function N4(r,t){r||M4(t)}var J={fail:M4,argument:N4,assert:N4},U4=32768,H4=2147483648,Ve={},N={},Q={};function M1(r){return function(){return r}}N.BYTE=function(r){return J.argument(r>=0&&r<=255,"Byte value should be between 0 and 255."),[r]},Q.BYTE=M1(1),N.CHAR=function(r){return[r.charCodeAt(0)]},Q.CHAR=M1(1),N.CHARARRAY=function(r){typeof r>"u"&&(r="",console.warn("Undefined CHARARRAY encountered and treated as an empty string. This is probably caused by a missing glyph name."));for(var t=[],e=0;e<r.length;e+=1)t[e]=r.charCodeAt(e);return t},Q.CHARARRAY=function(r){return typeof r>"u"?0:r.length},N.USHORT=function(r){return[r>>8&255,r&255]},Q.USHORT=M1(2),N.SHORT=function(r){return r>=U4&&(r=-(2*U4-r)),[r>>8&255,r&255]},Q.SHORT=M1(2),N.UINT24=function(r){return[r>>16&255,r>>8&255,r&255]},Q.UINT24=M1(3),N.ULONG=function(r){return[r>>24&255,r>>16&255,r>>8&255,r&255]},Q.ULONG=M1(4),N.LONG=function(r){return r>=H4&&(r=-(2*H4-r)),[r>>24&255,r>>16&255,r>>8&255,r&255]},Q.LONG=M1(4),N.FIXED=N.ULONG,Q.FIXED=Q.ULONG,N.FWORD=N.SHORT,Q.FWORD=Q.SHORT,N.UFWORD=N.USHORT,Q.UFWORD=Q.USHORT,N.LONGDATETIME=function(r){return[0,0,0,0,r>>24&255,r>>16&255,r>>8&255,r&255]},Q.LONGDATETIME=M1(8),N.TAG=function(r){return J.argument(r.length===4,"Tag should be exactly 4 ASCII characters."),[r.charCodeAt(0),r.charCodeAt(1),r.charCodeAt(2),r.charCodeAt(3)]},Q.TAG=M1(4),N.Card8=N.BYTE,Q.Card8=Q.BYTE,N.Card16=N.USHORT,Q.Card16=Q.USHORT,N.OffSize=N.BYTE,Q.OffSize=Q.BYTE,N.SID=N.USHORT,Q.SID=Q.USHORT,N.NUMBER=function(r){return r>=-107&&r<=107?[r+139]:r>=108&&r<=1131?(r=r-108,[(r>>8)+247,r&255]):r>=-1131&&r<=-108?(r=-r-108,[(r>>8)+251,r&255]):r>=-32768&&r<=32767?N.NUMBER16(r):N.NUMBER32(r)},Q.NUMBER=function(r){return N.NUMBER(r).length},N.NUMBER16=function(r){return[28,r>>8&255,r&255]},Q.NUMBER16=M1(3),N.NUMBER32=function(r){return[29,r>>24&255,r>>16&255,r>>8&255,r&255]},Q.NUMBER32=M1(5),N.REAL=function(r){var t=r.toString(),e=/\.(\d*?)(?:9{5,20}|0{5,20})\d{0,2}(?:e(.+)|$)/.exec(t);if(e){var n=parseFloat("1e"+((e[2]?+e[2]:0)+e[1].length));t=(Math.round(r*n)/n).toString()}for(var s="",i=0,a=t.length;i<a;i+=1){var o=t[i];o==="e"?s+=t[++i]==="-"?"c":"b":o==="."?s+="a":o==="-"?s+="e":s+=o}s+=s.length&1?"f":"ff";for(var u=[30],l=0,c=s.length;l<c;l+=2)u.push(parseInt(s.substr(l,2),16));return u},Q.REAL=function(r){return N.REAL(r).length},N.NAME=N.CHARARRAY,Q.NAME=Q.CHARARRAY,N.STRING=N.CHARARRAY,Q.STRING=Q.CHARARRAY,Ve.UTF8=function(r,t,e){for(var n=[],s=e,i=0;i<s;i++,t+=1)n[i]=r.getUint8(t);return String.fromCharCode.apply(null,n)},Ve.UTF16=function(r,t,e){for(var n=[],s=e/2,i=0;i<s;i++,t+=2)n[i]=r.getUint16(t);return String.fromCharCode.apply(null,n)},N.UTF16=function(r){for(var t=[],e=0;e<r.length;e+=1){var n=r.charCodeAt(e);t[t.length]=n>>8&255,t[t.length]=n&255}return t},Q.UTF16=function(r){return r.length*2};var b6={"x-mac-croatian":"ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûü†°¢£§•¶ß®Š™´¨≠ŽØ∞±≤≥∆µ∂∑∏š∫ªºΩžø¿¡¬√ƒ≈ƫȅ ÀÃÕŒœĐ—“”‘’÷◊©⁄€‹›Æ»–·‚„‰ÂćÁčÈÍÎÏÌÓÔđÒÚÛÙıˆ˜¯πË˚¸Êæˇ","x-mac-cyrillic":"АБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ†°Ґ£§•¶І®©™Ђђ≠Ѓѓ∞±≤≥іµґЈЄєЇїЉљЊњјЅ¬√ƒ≈∆«»… ЋћЌќѕ–—“”‘’÷„ЎўЏџ№Ёёяабвгдежзийклмнопрстуфхцчшщъыьэю","x-mac-gaelic":"ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûü†°¢£§•¶ß®©™´¨≠ÆØḂ±≤≥ḃĊċḊḋḞḟĠġṀæøṁṖṗɼƒſṠ«»… ÀÃÕŒœ–—“”‘’ṡẛÿŸṪ€‹›Ŷŷṫ·Ỳỳ⁊ÂÊÁËÈÍÎÏÌÓÔ♣ÒÚÛÙıÝýŴŵẄẅẀẁẂẃ","x-mac-greek":"Ĺ²É³ÖÜ΅àâä΄¨çéèê룙î‰ôö¦€ùûü†ΓΔΘΛΞΠß®©ΣΪ§≠°·Α±≤≥¥ΒΕΖΗΙΚΜΦΫΨΩάΝ¬ΟΡ≈Τ«»… ΥΧΆΈœ–―“”‘’÷ΉΊΌΎέήίόΏύαβψδεφγηιξκλμνοπώρστθωςχυζϊϋΐΰ","x-mac-icelandic":"ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûüݰ¢£§•¶ß®©™´¨≠ÆØ∞±≤≥¥µ∂∑∏π∫ªºΩæø¿¡¬√ƒ≈∆«»… ÀÃÕŒœ–—“”‘’÷◊ÿŸ⁄€ÐðÞþý·‚„‰ÂÊÁËÈÍÎÏÌÓÔÒÚÛÙıˆ˜¯˘˙˚¸˝˛ˇ","x-mac-inuit":"ᐃᐄᐅᐆᐊᐋᐱᐲᐳᐴᐸᐹᑉᑎᑏᑐᑑᑕᑖᑦᑭᑮᑯᑰᑲᑳᒃᒋᒌᒍᒎᒐᒑ°ᒡᒥᒦ•¶ᒧ®©™ᒨᒪᒫᒻᓂᓃᓄᓅᓇᓈᓐᓯᓰᓱᓲᓴᓵᔅᓕᓖᓗᓘᓚᓛᓪᔨᔩᔪᔫᔭ… ᔮᔾᕕᕖᕗ–—“”‘’ᕘᕙᕚᕝᕆᕇᕈᕉᕋᕌᕐᕿᖀᖁᖂᖃᖄᖅᖏᖐᖑᖒᖓᖔᖕᙱᙲᙳᙴᙵᙶᖖᖠᖡᖢᖣᖤᖥᖦᕼŁł","x-mac-ce":"ÄĀāÉĄÖÜáąČäčĆć鏟ĎíďĒēĖóėôöõúĚěü†°Ę£§•¶ß®©™ę¨≠ģĮįĪ≤≥īĶ∂∑łĻļĽľĹĺŅņѬ√ńŇ∆«»… ňŐÕőŌ–—“”‘’÷◊ōŔŕŘ‹›řŖŗŠ‚„šŚśÁŤťÍŽžŪÓÔūŮÚůŰűŲųÝýķŻŁżĢˇ",macintosh:"ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûü†°¢£§•¶ß®©™´¨≠ÆØ∞±≤≥¥µ∂∑∏π∫ªºΩæø¿¡¬√ƒ≈∆«»… ÀÃÕŒœ–—“”‘’÷◊ÿŸ⁄€‹›fifl‡·‚„‰ÂÊÁËÈÍÎÏÌÓÔÒÚÛÙıˆ˜¯˘˙˚¸˝˛ˇ","x-mac-romanian":"ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûü†°¢£§•¶ß®©™´¨≠ĂȘ∞±≤≥¥µ∂∑∏π∫ªºΩăș¿¡¬√ƒ≈∆«»… ÀÃÕŒœ–—“”‘’÷◊ÿŸ⁄€‹›Țț‡·‚„‰ÂÊÁËÈÍÎÏÌÓÔÒÚÛÙıˆ˜¯˘˙˚¸˝˛ˇ","x-mac-turkish":"ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûü†°¢£§•¶ß®©™´¨≠ÆØ∞±≤≥¥µ∂∑∏π∫ªºΩæø¿¡¬√ƒ≈∆«»… ÀÃÕŒœ–—“”‘’÷◊ÿŸĞğİıŞş‡·‚„‰ÂÊÁËÈÍÎÏÌÓÔÒÚÛÙˆ˜¯˘˙˚¸˝˛ˇ"};Ve.MACSTRING=function(r,t,e,n){var s=b6[n];if(s!==void 0){for(var i="",a=0;a<e;a++){var o=r.getUint8(t+a);o<=127?i+=String.fromCharCode(o):i+=s[o&127]}return i}};var tt=typeof WeakMap=="function"&&new WeakMap,nt,O8=function(r){if(!nt){nt={};for(var t in b6)nt[t]=new String(t)}var e=nt[r];if(e!==void 0){if(tt){var n=tt.get(e);if(n!==void 0)return n}var s=b6[r];if(s!==void 0){for(var i={},a=0;a<s.length;a++)i[s.charCodeAt(a)]=a+128;return tt&&tt.set(e,i),i}}};N.MACSTRING=function(r,t){var e=O8(t);if(e!==void 0){for(var n=[],s=0;s<r.length;s++){var i=r.charCodeAt(s);if(i>=128&&(i=e[i],i===void 0))return;n[s]=i}return n}},Q.MACSTRING=function(r,t){var e=N.MACSTRING(r,t);return e!==void 0?e.length:0};function y6(r){return r>=-128&&r<=127}function x8(r,t,e){for(var n=0,s=r.length;t<s&&n<64&&r[t]===0;)++t,++n;return e.push(128|n-1),t}function R8(r,t,e){for(var n=0,s=r.length,i=t;i<s&&n<64;){var a=r[i];if(!y6(a)||a===0&&i+1<s&&r[i+1]===0)break;++i,++n}e.push(n-1);for(var o=t;o<i;++o)e.push(r[o]+256&255);return i}function A8(r,t,e){for(var n=0,s=r.length,i=t;i<s&&n<64;){var a=r[i];if(a===0||y6(a)&&i+1<s&&y6(r[i+1]))break;++i,++n}e.push(64|n-1);for(var o=t;o<i;++o){var u=r[o];e.push(u+65536>>8&255,u+256&255)}return i}N.VARDELTAS=function(r){for(var t=0,e=[];t<r.length;){var n=r[t];n===0?t=x8(r,t,e):n>=-128&&n<=127?t=R8(r,t,e):t=A8(r,t,e)}return e},N.INDEX=function(r){for(var t=1,e=[t],n=[],s=0;s<r.length;s+=1){var i=N.OBJECT(r[s]);Array.prototype.push.apply(n,i),t+=i.length,e.push(t)}if(n.length===0)return[0,0];for(var a=[],o=1+Math.floor(Math.log(t)/Math.log(2))/8|0,u=[void 0,N.BYTE,N.USHORT,N.UINT24,N.ULONG][o],l=0;l<e.length;l+=1){var c=u(e[l]);Array.prototype.push.apply(a,c)}return Array.prototype.concat(N.Card16(r.length),N.OffSize(o),a,n)},Q.INDEX=function(r){return N.INDEX(r).length},N.DICT=function(r){for(var t=[],e=Object.keys(r),n=e.length,s=0;s<n;s+=1){var i=parseInt(e[s],0),a=r[i];t=t.concat(N.OPERAND(a.value,a.type)),t=t.concat(N.OPERATOR(i))}return t},Q.DICT=function(r){return N.DICT(r).length},N.OPERATOR=function(r){return r<1200?[r]:[12,r-1200]},N.OPERAND=function(r,t){var e=[];if(Array.isArray(t))for(var n=0;n<t.length;n+=1)J.argument(r.length===t.length,"Not enough arguments given for type"+t),e=e.concat(N.OPERAND(r[n],t[n]));else if(t==="SID")e=e.concat(N.NUMBER(r));else if(t==="offset")e=e.concat(N.NUMBER32(r));else if(t==="number")e=e.concat(N.NUMBER(r));else if(t==="real")e=e.concat(N.REAL(r));else throw new Error("Unknown operand type "+t);return e},N.OP=N.BYTE,Q.OP=Q.BYTE;var rt=typeof WeakMap=="function"&&new WeakMap;N.CHARSTRING=function(r){if(rt){var t=rt.get(r);if(t!==void 0)return t}for(var e=[],n=r.length,s=0;s<n;s+=1){var i=r[s];e=e.concat(N[i.type](i.value))}return rt&&rt.set(r,e),e},Q.CHARSTRING=function(r){return N.CHARSTRING(r).length},N.OBJECT=function(r){var t=N[r.type];return J.argument(t!==void 0,"No encoding function for type "+r.type),t(r.value)},Q.OBJECT=function(r){var t=Q[r.type];return J.argument(t!==void 0,"No sizeOf function for type "+r.type),t(r.value)},N.TABLE=function(r){for(var t=[],e=r.fields.length,n=[],s=[],i=0;i<e;i+=1){var a=r.fields[i],o=N[a.type];J.argument(o!==void 0,"No encoding function for field type "+a.type+" ("+a.name+")");var u=r[a.name];u===void 0&&(u=a.value);var l=o(u);a.type==="TABLE"?(s.push(t.length),t=t.concat([0,0]),n.push(l)):t=t.concat(l)}for(var c=0;c<n.length;c+=1){var h=s[c],f=t.length;J.argument(f<65536,"Table "+r.tableName+" too big."),t[h]=f>>8,t[h+1]=f&255,t=t.concat(n[c])}return t},Q.TABLE=function(r){for(var t=0,e=r.fields.length,n=0;n<e;n+=1){var s=r.fields[n],i=Q[s.type];J.argument(i!==void 0,"No sizeOf function for field type "+s.type+" ("+s.name+")");var a=r[s.name];a===void 0&&(a=s.value),t+=i(a),s.type==="TABLE"&&(t+=2)}return t},N.RECORD=N.TABLE,Q.RECORD=Q.TABLE,N.LITERAL=function(r){return r},Q.LITERAL=function(r){return r.length};function v1(r,t,e){if(t.length&&(t[0].name!=="coverageFormat"||t[0].value===1))for(var n=0;n<t.length;n+=1){var s=t[n];this[s.name]=s.value}if(this.tableName=r,this.fields=t,e)for(var i=Object.keys(e),a=0;a<i.length;a+=1){var o=i[a],u=e[o];this[o]!==void 0&&(this[o]=u)}}v1.prototype.encode=function(){return N.TABLE(this)},v1.prototype.sizeOf=function(){return Q.TABLE(this)};function E2(r,t,e){e===void 0&&(e=t.length);var n=new Array(t.length+1);n[0]={name:r+"Count",type:"USHORT",value:e};for(var s=0;s<t.length;s++)n[s+1]={name:r+s,type:"USHORT",value:t[s]};return n}function F6(r,t,e){var n=t.length,s=new Array(n+1);s[0]={name:r+"Count",type:"USHORT",value:n};for(var i=0;i<n;i++)s[i+1]={name:r+i,type:"TABLE",value:e(t[i],i)};return s}function S2(r,t,e){var n=t.length,s=[];s[0]={name:r+"Count",type:"USHORT",value:n};for(var i=0;i<n;i++)s=s.concat(e(t[i],i));return s}function st(r){r.format===1?v1.call(this,"coverageTable",[{name:"coverageFormat",type:"USHORT",value:1}].concat(E2("glyph",r.glyphs))):r.format===2?v1.call(this,"coverageTable",[{name:"coverageFormat",type:"USHORT",value:2}].concat(S2("rangeRecord",r.ranges,function(t){return[{name:"startGlyphID",type:"USHORT",value:t.start},{name:"endGlyphID",type:"USHORT",value:t.end},{name:"startCoverageIndex",type:"USHORT",value:t.index}]}))):J.assert(!1,"Coverage format must be 1 or 2.")}st.prototype=Object.create(v1.prototype),st.prototype.constructor=st;function it(r){v1.call(this,"scriptListTable",S2("scriptRecord",r,function(t,e){var n=t.script,s=n.defaultLangSys;return J.assert(!!s,"Unable to write GSUB: script "+t.tag+" has no default language system."),[{name:"scriptTag"+e,type:"TAG",value:t.tag},{name:"script"+e,type:"TABLE",value:new v1("scriptTable",[{name:"defaultLangSys",type:"TABLE",value:new v1("defaultLangSys",[{name:"lookupOrder",type:"USHORT",value:0},{name:"reqFeatureIndex",type:"USHORT",value:s.reqFeatureIndex}].concat(E2("featureIndex",s.featureIndexes)))}].concat(S2("langSys",n.langSysRecords,function(i,a){var o=i.langSys;return[{name:"langSysTag"+a,type:"TAG",value:i.tag},{name:"langSys"+a,type:"TABLE",value:new v1("langSys",[{name:"lookupOrder",type:"USHORT",value:0},{name:"reqFeatureIndex",type:"USHORT",value:o.reqFeatureIndex}].concat(E2("featureIndex",o.featureIndexes)))}]})))}]}))}it.prototype=Object.create(v1.prototype),it.prototype.constructor=it;function at(r){v1.call(this,"featureListTable",S2("featureRecord",r,function(t,e){var n=t.feature;return[{name:"featureTag"+e,type:"TAG",value:t.tag},{name:"feature"+e,type:"TABLE",value:new v1("featureTable",[{name:"featureParams",type:"USHORT",value:n.featureParams}].concat(E2("lookupListIndex",n.lookupListIndexes)))}]}))}at.prototype=Object.create(v1.prototype),at.prototype.constructor=at;function ot(r,t){v1.call(this,"lookupListTable",F6("lookup",r,function(e){var n=t[e.lookupType];return J.assert(!!n,"Unable to write GSUB lookup type "+e.lookupType+" tables."),new v1("lookupTable",[{name:"lookupType",type:"USHORT",value:e.lookupType},{name:"lookupFlag",type:"USHORT",value:e.lookupFlag}].concat(F6("subtable",e.subtables,n)))}))}ot.prototype=Object.create(v1.prototype),ot.prototype.constructor=ot;var z={Table:v1,Record:v1,Coverage:st,ScriptList:it,FeatureList:at,LookupList:ot,ushortList:E2,tableList:F6,recordList:S2};function G4(r,t){return r.getUint8(t)}function ut(r,t){return r.getUint16(t,!1)}function k8(r,t){return r.getInt16(t,!1)}function C6(r,t){return r.getUint32(t,!1)}function z4(r,t){var e=r.getInt16(t,!1),n=r.getUint16(t+2,!1);return e+n/65535}function $8(r,t){for(var e="",n=t;n<t+4;n+=1)e+=String.fromCharCode(r.getInt8(n));return e}function I8(r,t,e){for(var n=0,s=0;s<e;s+=1)n<<=8,n+=r.getUint8(t+s);return n}function L8(r,t,e){for(var n=[],s=t;s<e;s+=1)n.push(r.getUint8(s));return n}function P8(r){for(var t="",e=0;e<r.length;e+=1)t+=String.fromCharCode(r[e]);return t}var M8={byte:1,uShort:2,short:2,uLong:4,fixed:4,longDateTime:8,tag:4};function R(r,t){this.data=r,this.offset=t,this.relativeOffset=0}R.prototype.parseByte=function(){var r=this.data.getUint8(this.offset+this.relativeOffset);return this.relativeOffset+=1,r},R.prototype.parseChar=function(){var r=this.data.getInt8(this.offset+this.relativeOffset);return this.relativeOffset+=1,r},R.prototype.parseCard8=R.prototype.parseByte,R.prototype.parseUShort=function(){var r=this.data.getUint16(this.offset+this.relativeOffset);return this.relativeOffset+=2,r},R.prototype.parseCard16=R.prototype.parseUShort,R.prototype.parseSID=R.prototype.parseUShort,R.prototype.parseOffset16=R.prototype.parseUShort,R.prototype.parseShort=function(){var r=this.data.getInt16(this.offset+this.relativeOffset);return this.relativeOffset+=2,r},R.prototype.parseF2Dot14=function(){var r=this.data.getInt16(this.offset+this.relativeOffset)/16384;return this.relativeOffset+=2,r},R.prototype.parseULong=function(){var r=C6(this.data,this.offset+this.relativeOffset);return this.relativeOffset+=4,r},R.prototype.parseOffset32=R.prototype.parseULong,R.prototype.parseFixed=function(){var r=z4(this.data,this.offset+this.relativeOffset);return this.relativeOffset+=4,r},R.prototype.parseString=function(r){var t=this.data,e=this.offset+this.relativeOffset,n="";this.relativeOffset+=r;for(var s=0;s<r;s++)n+=String.fromCharCode(t.getUint8(e+s));return n},R.prototype.parseTag=function(){return this.parseString(4)},R.prototype.parseLongDateTime=function(){var r=C6(this.data,this.offset+this.relativeOffset+4);return r-=2082844800,this.relativeOffset+=8,r},R.prototype.parseVersion=function(r){var t=ut(this.data,this.offset+this.relativeOffset),e=ut(this.data,this.offset+this.relativeOffset+2);return this.relativeOffset+=4,r===void 0&&(r=4096),t+e/r/10},R.prototype.skip=function(r,t){t===void 0&&(t=1),this.relativeOffset+=M8[r]*t},R.prototype.parseULongList=function(r){r===void 0&&(r=this.parseULong());for(var t=new Array(r),e=this.data,n=this.offset+this.relativeOffset,s=0;s<r;s++)t[s]=e.getUint32(n),n+=4;return this.relativeOffset+=r*4,t},R.prototype.parseOffset16List=R.prototype.parseUShortList=function(r){r===void 0&&(r=this.parseUShort());for(var t=new Array(r),e=this.data,n=this.offset+this.relativeOffset,s=0;s<r;s++)t[s]=e.getUint16(n),n+=2;return this.relativeOffset+=r*2,t},R.prototype.parseShortList=function(r){for(var t=new Array(r),e=this.data,n=this.offset+this.relativeOffset,s=0;s<r;s++)t[s]=e.getInt16(n),n+=2;return this.relativeOffset+=r*2,t},R.prototype.parseByteList=function(r){for(var t=new Array(r),e=this.data,n=this.offset+this.relativeOffset,s=0;s<r;s++)t[s]=e.getUint8(n++);return this.relativeOffset+=r,t},R.prototype.parseList=function(r,t){t||(t=r,r=this.parseUShort());for(var e=new Array(r),n=0;n<r;n++)e[n]=t.call(this);return e},R.prototype.parseList32=function(r,t){t||(t=r,r=this.parseULong());for(var e=new Array(r),n=0;n<r;n++)e[n]=t.call(this);return e},R.prototype.parseRecordList=function(r,t){t||(t=r,r=this.parseUShort());for(var e=new Array(r),n=Object.keys(t),s=0;s<r;s++){for(var i={},a=0;a<n.length;a++){var o=n[a],u=t[o];i[o]=u.call(this)}e[s]=i}return e},R.prototype.parseRecordList32=function(r,t){t||(t=r,r=this.parseULong());for(var e=new Array(r),n=Object.keys(t),s=0;s<r;s++){for(var i={},a=0;a<n.length;a++){var o=n[a],u=t[o];i[o]=u.call(this)}e[s]=i}return e},R.prototype.parseStruct=function(r){if(typeof r=="function")return r.call(this);for(var t=Object.keys(r),e={},n=0;n<t.length;n++){var s=t[n],i=r[s];e[s]=i.call(this)}return e},R.prototype.parseValueRecord=function(r){if(r===void 0&&(r=this.parseUShort()),r!==0){var t={};return r&1&&(t.xPlacement=this.parseShort()),r&2&&(t.yPlacement=this.parseShort()),r&4&&(t.xAdvance=this.parseShort()),r&8&&(t.yAdvance=this.parseShort()),r&16&&(t.xPlaDevice=void 0,this.parseShort()),r&32&&(t.yPlaDevice=void 0,this.parseShort()),r&64&&(t.xAdvDevice=void 0,this.parseShort()),r&128&&(t.yAdvDevice=void 0,this.parseShort()),t}},R.prototype.parseValueRecordList=function(){for(var r=this.parseUShort(),t=this.parseUShort(),e=new Array(t),n=0;n<t;n++)e[n]=this.parseValueRecord(r);return e},R.prototype.parsePointer=function(r){var t=this.parseOffset16();if(t>0)return new R(this.data,this.offset+t).parseStruct(r)},R.prototype.parsePointer32=function(r){var t=this.parseOffset32();if(t>0)return new R(this.data,this.offset+t).parseStruct(r)},R.prototype.parseListOfLists=function(r){for(var t=this.parseOffset16List(),e=t.length,n=this.relativeOffset,s=new Array(e),i=0;i<e;i++){var a=t[i];if(a===0){s[i]=void 0;continue}if(this.relativeOffset=a,r){for(var o=this.parseOffset16List(),u=new Array(o.length),l=0;l<o.length;l++)this.relativeOffset=a+o[l],u[l]=r.call(this);s[i]=u}else s[i]=this.parseUShortList()}return this.relativeOffset=n,s},R.prototype.parseCoverage=function(){var r=this.offset+this.relativeOffset,t=this.parseUShort(),e=this.parseUShort();if(t===1)return{format:1,glyphs:this.parseUShortList(e)};if(t===2){for(var n=new Array(e),s=0;s<e;s++)n[s]={start:this.parseUShort(),end:this.parseUShort(),index:this.parseUShort()};return{format:2,ranges:n}}throw new Error("0x"+r.toString(16)+": Coverage format must be 1 or 2.")},R.prototype.parseClassDef=function(){var r=this.offset+this.relativeOffset,t=this.parseUShort();if(t===1)return{format:1,startGlyph:this.parseUShort(),classes:this.parseUShortList()};if(t===2)return{format:2,ranges:this.parseRecordList({start:R.uShort,end:R.uShort,classId:R.uShort})};throw new Error("0x"+r.toString(16)+": ClassDef format must be 1 or 2.")},R.list=function(r,t){return function(){return this.parseList(r,t)}},R.list32=function(r,t){return function(){return this.parseList32(r,t)}},R.recordList=function(r,t){return function(){return this.parseRecordList(r,t)}},R.recordList32=function(r,t){return function(){return this.parseRecordList32(r,t)}},R.pointer=function(r){return function(){return this.parsePointer(r)}},R.pointer32=function(r){return function(){return this.parsePointer32(r)}},R.tag=R.prototype.parseTag,R.byte=R.prototype.parseByte,R.uShort=R.offset16=R.prototype.parseUShort,R.uShortList=R.prototype.parseUShortList,R.uLong=R.offset32=R.prototype.parseULong,R.uLongList=R.prototype.parseULongList,R.struct=R.prototype.parseStruct,R.coverage=R.prototype.parseCoverage,R.classDef=R.prototype.parseClassDef;var X4={reserved:R.uShort,reqFeatureIndex:R.uShort,featureIndexes:R.uShortList};R.prototype.parseScriptList=function(){return this.parsePointer(R.recordList({tag:R.tag,script:R.pointer({defaultLangSys:R.pointer(X4),langSysRecords:R.recordList({tag:R.tag,langSys:R.pointer(X4)})})}))||[]},R.prototype.parseFeatureList=function(){return this.parsePointer(R.recordList({tag:R.tag,feature:R.pointer({featureParams:R.offset16,lookupListIndexes:R.uShortList})}))||[]},R.prototype.parseLookupList=function(r){return this.parsePointer(R.list(R.pointer(function(){var t=this.parseUShort();J.argument(1<=t&&t<=9,"GPOS/GSUB lookup type "+t+" unknown.");var e=this.parseUShort(),n=e&16;return{lookupType:t,lookupFlag:e,subtables:this.parseList(R.pointer(r[t])),markFilteringSet:n?this.parseUShort():void 0}})))||[]},R.prototype.parseFeatureVariationsList=function(){return this.parsePointer32(function(){var r=this.parseUShort(),t=this.parseUShort();J.argument(r===1&&t<1,"GPOS/GSUB feature variations table unknown.");var e=this.parseRecordList32({conditionSetOffset:R.offset32,featureTableSubstitutionOffset:R.offset32});return e})||[]};var Y={getByte:G4,getCard8:G4,getUShort:ut,getCard16:ut,getShort:k8,getULong:C6,getFixed:z4,getTag:$8,getOffset:I8,getBytes:L8,bytesToString:P8,Parser:R};function N8(r,t){t.parseUShort(),r.length=t.parseULong(),r.language=t.parseULong();var e;r.groupCount=e=t.parseULong(),r.glyphIndexMap={};for(var n=0;n<e;n+=1)for(var s=t.parseULong(),i=t.parseULong(),a=t.parseULong(),o=s;o<=i;o+=1)r.glyphIndexMap[o]=a,a++}function U8(r,t,e,n,s){r.length=t.parseUShort(),r.language=t.parseUShort();var i;r.segCount=i=t.parseUShort()>>1,t.skip("uShort",3),r.glyphIndexMap={};for(var a=new Y.Parser(e,n+s+14),o=new Y.Parser(e,n+s+16+i*2),u=new Y.Parser(e,n+s+16+i*4),l=new Y.Parser(e,n+s+16+i*6),c=n+s+16+i*8,h=0;h<i-1;h+=1)for(var f=void 0,d=a.parseUShort(),D=o.parseUShort(),m=u.parseShort(),v=l.parseUShort(),F=D;F<=d;F+=1)v!==0?(c=l.offset+l.relativeOffset-2,c+=v,c+=(F-D)*2,f=Y.getUShort(e,c),f!==0&&(f=f+m&65535)):f=F+m&65535,r.glyphIndexMap[F]=f}function H8(r,t){var e={};e.version=Y.getUShort(r,t),J.argument(e.version===0,"cmap table version should be 0."),e.numTables=Y.getUShort(r,t+2);for(var n=-1,s=e.numTables-1;s>=0;s-=1){var i=Y.getUShort(r,t+4+s*8),a=Y.getUShort(r,t+4+s*8+2);if(i===3&&(a===0||a===1||a===10)||i===0&&(a===0||a===1||a===2||a===3||a===4)){n=Y.getULong(r,t+4+s*8+4);break}}if(n===-1)throw new Error("No valid cmap sub-tables found.");var o=new Y.Parser(r,t+n);if(e.format=o.parseUShort(),e.format===12)N8(e,o);else if(e.format===4)U8(e,o,r,t,n);else throw new Error("Only format 4 and 12 cmap tables are supported (found format "+e.format+").");return e}function G8(r,t,e){r.segments.push({end:t,start:t,delta:-(t-e),offset:0,glyphIndex:e})}function z8(r){r.segments.push({end:65535,start:65535,delta:1,offset:0})}function X8(r){var t=!0,e;for(e=r.length-1;e>0;e-=1){var n=r.get(e);if(n.unicode>65535){console.log("Adding CMAP format 12 (needed!)"),t=!1;break}}var s=[{name:"version",type:"USHORT",value:0},{name:"numTables",type:"USHORT",value:t?1:2},{name:"platformID",type:"USHORT",value:3},{name:"encodingID",type:"USHORT",value:1},{name:"offset",type:"ULONG",value:t?12:20}];t||(s=s.concat([{name:"cmap12PlatformID",type:"USHORT",value:3},{name:"cmap12EncodingID",type:"USHORT",value:10},{name:"cmap12Offset",type:"ULONG",value:0}])),s=s.concat([{name:"format",type:"USHORT",value:4},{name:"cmap4Length",type:"USHORT",value:0},{name:"language",type:"USHORT",value:0},{name:"segCountX2",type:"USHORT",value:0},{name:"searchRange",type:"USHORT",value:0},{name:"entrySelector",type:"USHORT",value:0},{name:"rangeShift",type:"USHORT",value:0}]);var i=new z.Table("cmap",s);for(i.segments=[],e=0;e<r.length;e+=1){for(var a=r.get(e),o=0;o<a.unicodes.length;o+=1)G8(i,a.unicodes[o],e);i.segments=i.segments.sort(function(C,S){return C.start-S.start})}z8(i);var u=i.segments.length,l=0,c=[],h=[],f=[],d=[],D=[],m=[];for(e=0;e<u;e+=1){var v=i.segments[e];v.end<=65535&&v.start<=65535?(c=c.concat({name:"end_"+e,type:"USHORT",value:v.end}),h=h.concat({name:"start_"+e,type:"USHORT",value:v.start}),f=f.concat({name:"idDelta_"+e,type:"SHORT",value:v.delta}),d=d.concat({name:"idRangeOffset_"+e,type:"USHORT",value:v.offset}),v.glyphId!==void 0&&(D=D.concat({name:"glyph_"+e,type:"USHORT",value:v.glyphId}))):l+=1,!t&&v.glyphIndex!==void 0&&(m=m.concat({name:"cmap12Start_"+e,type:"ULONG",value:v.start}),m=m.concat({name:"cmap12End_"+e,type:"ULONG",value:v.end}),m=m.concat({name:"cmap12Glyph_"+e,type:"ULONG",value:v.glyphIndex}))}if(i.segCountX2=(u-l)*2,i.searchRange=Math.pow(2,Math.floor(Math.log(u-l)/Math.log(2)))*2,i.entrySelector=Math.log(i.searchRange/2)/Math.log(2),i.rangeShift=i.segCountX2-i.searchRange,i.fields=i.fields.concat(c),i.fields.push({name:"reservedPad",type:"USHORT",value:0}),i.fields=i.fields.concat(h),i.fields=i.fields.concat(f),i.fields=i.fields.concat(d),i.fields=i.fields.concat(D),i.cmap4Length=14+c.length*2+2+h.length*2+f.length*2+d.length*2+D.length*2,!t){var F=16+m.length*4;i.cmap12Offset=12+2*2+4+i.cmap4Length,i.fields=i.fields.concat([{name:"cmap12Format",type:"USHORT",value:12},{name:"cmap12Reserved",type:"USHORT",value:0},{name:"cmap12Length",type:"ULONG",value:F},{name:"cmap12Language",type:"ULONG",value:0},{name:"cmap12nGroups",type:"ULONG",value:m.length/3}]),i.fields=i.fields.concat(m)}return i}var W4={parse:H8,make:X8},lt=[".notdef","space","exclam","quotedbl","numbersign","dollar","percent","ampersand","quoteright","parenleft","parenright","asterisk","plus","comma","hyphen","period","slash","zero","one","two","three","four","five","six","seven","eight","nine","colon","semicolon","less","equal","greater","question","at","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","bracketleft","backslash","bracketright","asciicircum","underscore","quoteleft","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","braceleft","bar","braceright","asciitilde","exclamdown","cent","sterling","fraction","yen","florin","section","currency","quotesingle","quotedblleft","guillemotleft","guilsinglleft","guilsinglright","fi","fl","endash","dagger","daggerdbl","periodcentered","paragraph","bullet","quotesinglbase","quotedblbase","quotedblright","guillemotright","ellipsis","perthousand","questiondown","grave","acute","circumflex","tilde","macron","breve","dotaccent","dieresis","ring","cedilla","hungarumlaut","ogonek","caron","emdash","AE","ordfeminine","Lslash","Oslash","OE","ordmasculine","ae","dotlessi","lslash","oslash","oe","germandbls","onesuperior","logicalnot","mu","trademark","Eth","onehalf","plusminus","Thorn","onequarter","divide","brokenbar","degree","thorn","threequarters","twosuperior","registered","minus","eth","multiply","threesuperior","copyright","Aacute","Acircumflex","Adieresis","Agrave","Aring","Atilde","Ccedilla","Eacute","Ecircumflex","Edieresis","Egrave","Iacute","Icircumflex","Idieresis","Igrave","Ntilde","Oacute","Ocircumflex","Odieresis","Ograve","Otilde","Scaron","Uacute","Ucircumflex","Udieresis","Ugrave","Yacute","Ydieresis","Zcaron","aacute","acircumflex","adieresis","agrave","aring","atilde","ccedilla","eacute","ecircumflex","edieresis","egrave","iacute","icircumflex","idieresis","igrave","ntilde","oacute","ocircumflex","odieresis","ograve","otilde","scaron","uacute","ucircumflex","udieresis","ugrave","yacute","ydieresis","zcaron","exclamsmall","Hungarumlautsmall","dollaroldstyle","dollarsuperior","ampersandsmall","Acutesmall","parenleftsuperior","parenrightsuperior","266 ff","onedotenleader","zerooldstyle","oneoldstyle","twooldstyle","threeoldstyle","fouroldstyle","fiveoldstyle","sixoldstyle","sevenoldstyle","eightoldstyle","nineoldstyle","commasuperior","threequartersemdash","periodsuperior","questionsmall","asuperior","bsuperior","centsuperior","dsuperior","esuperior","isuperior","lsuperior","msuperior","nsuperior","osuperior","rsuperior","ssuperior","tsuperior","ff","ffi","ffl","parenleftinferior","parenrightinferior","Circumflexsmall","hyphensuperior","Gravesmall","Asmall","Bsmall","Csmall","Dsmall","Esmall","Fsmall","Gsmall","Hsmall","Ismall","Jsmall","Ksmall","Lsmall","Msmall","Nsmall","Osmall","Psmall","Qsmall","Rsmall","Ssmall","Tsmall","Usmall","Vsmall","Wsmall","Xsmall","Ysmall","Zsmall","colonmonetary","onefitted","rupiah","Tildesmall","exclamdownsmall","centoldstyle","Lslashsmall","Scaronsmall","Zcaronsmall","Dieresissmall","Brevesmall","Caronsmall","Dotaccentsmall","Macronsmall","figuredash","hypheninferior","Ogoneksmall","Ringsmall","Cedillasmall","questiondownsmall","oneeighth","threeeighths","fiveeighths","seveneighths","onethird","twothirds","zerosuperior","foursuperior","fivesuperior","sixsuperior","sevensuperior","eightsuperior","ninesuperior","zeroinferior","oneinferior","twoinferior","threeinferior","fourinferior","fiveinferior","sixinferior","seveninferior","eightinferior","nineinferior","centinferior","dollarinferior","periodinferior","commainferior","Agravesmall","Aacutesmall","Acircumflexsmall","Atildesmall","Adieresissmall","Aringsmall","AEsmall","Ccedillasmall","Egravesmall","Eacutesmall","Ecircumflexsmall","Edieresissmall","Igravesmall","Iacutesmall","Icircumflexsmall","Idieresissmall","Ethsmall","Ntildesmall","Ogravesmall","Oacutesmall","Ocircumflexsmall","Otildesmall","Odieresissmall","OEsmall","Oslashsmall","Ugravesmall","Uacutesmall","Ucircumflexsmall","Udieresissmall","Yacutesmall","Thornsmall","Ydieresissmall","001.000","001.001","001.002","001.003","Black","Bold","Book","Light","Medium","Regular","Roman","Semibold"],W8=["","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","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"],Y8=["","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","space","exclamsmall","Hungarumlautsmall","","dollaroldstyle","dollarsuperior","ampersandsmall","Acutesmall","parenleftsuperior","parenrightsuperior","twodotenleader","onedotenleader","comma","hyphen","period","fraction","zerooldstyle","oneoldstyle","twooldstyle","threeoldstyle","fouroldstyle","fiveoldstyle","sixoldstyle","sevenoldstyle","eightoldstyle","nineoldstyle","colon","semicolon","commasuperior","threequartersemdash","periodsuperior","questionsmall","","asuperior","bsuperior","centsuperior","dsuperior","esuperior","","","isuperior","","","lsuperior","msuperior","nsuperior","osuperior","","","rsuperior","ssuperior","tsuperior","","ff","fi","fl","ffi","ffl","parenleftinferior","","parenrightinferior","Circumflexsmall","hyphensuperior","Gravesmall","Asmall","Bsmall","Csmall","Dsmall","Esmall","Fsmall","Gsmall","Hsmall","Ismall","Jsmall","Ksmall","Lsmall","Msmall","Nsmall","Osmall","Psmall","Qsmall","Rsmall","Ssmall","Tsmall","Usmall","Vsmall","Wsmall","Xsmall","Ysmall","Zsmall","colonmonetary","onefitted","rupiah","Tildesmall","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","exclamdownsmall","centoldstyle","Lslashsmall","","","Scaronsmall","Zcaronsmall","Dieresissmall","Brevesmall","Caronsmall","","Dotaccentsmall","","","Macronsmall","","","figuredash","hypheninferior","","","Ogoneksmall","Ringsmall","Cedillasmall","","","","onequarter","onehalf","threequarters","questiondownsmall","oneeighth","threeeighths","fiveeighths","seveneighths","onethird","twothirds","","","zerosuperior","onesuperior","twosuperior","threesuperior","foursuperior","fivesuperior","sixsuperior","sevensuperior","eightsuperior","ninesuperior","zeroinferior","oneinferior","twoinferior","threeinferior","fourinferior","fiveinferior","sixinferior","seveninferior","eightinferior","nineinferior","centinferior","dollarinferior","periodinferior","commainferior","Agravesmall","Aacutesmall","Acircumflexsmall","Atildesmall","Adieresissmall","Aringsmall","AEsmall","Ccedillasmall","Egravesmall","Eacutesmall","Ecircumflexsmall","Edieresissmall","Igravesmall","Iacutesmall","Icircumflexsmall","Idieresissmall","Ethsmall","Ntildesmall","Ogravesmall","Oacutesmall","Ocircumflexsmall","Otildesmall","Odieresissmall","OEsmall","Oslashsmall","Ugravesmall","Uacutesmall","Ucircumflexsmall","Udieresissmall","Yacutesmall","Thornsmall","Ydieresissmall"],Be=[".notdef",".null","nonmarkingreturn","space","exclam","quotedbl","numbersign","dollar","percent","ampersand","quotesingle","parenleft","parenright","asterisk","plus","comma","hyphen","period","slash","zero","one","two","three","four","five","six","seven","eight","nine","colon","semicolon","less","equal","greater","question","at","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","bracketleft","backslash","bracketright","asciicircum","underscore","grave","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","braceleft","bar","braceright","asciitilde","Adieresis","Aring","Ccedilla","Eacute","Ntilde","Odieresis","Udieresis","aacute","agrave","acircumflex","adieresis","atilde","aring","ccedilla","eacute","egrave","ecircumflex","edieresis","iacute","igrave","icircumflex","idieresis","ntilde","oacute","ograve","ocircumflex","odieresis","otilde","uacute","ugrave","ucircumflex","udieresis","dagger","degree","cent","sterling","section","bullet","paragraph","germandbls","registered","copyright","trademark","acute","dieresis","notequal","AE","Oslash","infinity","plusminus","lessequal","greaterequal","yen","mu","partialdiff","summation","product","pi","integral","ordfeminine","ordmasculine","Omega","ae","oslash","questiondown","exclamdown","logicalnot","radical","florin","approxequal","Delta","guillemotleft","guillemotright","ellipsis","nonbreakingspace","Agrave","Atilde","Otilde","OE","oe","endash","emdash","quotedblleft","quotedblright","quoteleft","quoteright","divide","lozenge","ydieresis","Ydieresis","fraction","currency","guilsinglleft","guilsinglright","fi","fl","daggerdbl","periodcentered","quotesinglbase","quotedblbase","perthousand","Acircumflex","Ecircumflex","Aacute","Edieresis","Egrave","Iacute","Icircumflex","Idieresis","Igrave","Oacute","Ocircumflex","apple","Ograve","Uacute","Ucircumflex","Ugrave","dotlessi","circumflex","tilde","macron","breve","dotaccent","ring","cedilla","hungarumlaut","ogonek","caron","Lslash","lslash","Scaron","scaron","Zcaron","zcaron","brokenbar","Eth","eth","Yacute","yacute","Thorn","thorn","minus","multiply","onesuperior","twosuperior","threesuperior","onehalf","onequarter","threequarters","franc","Gbreve","gbreve","Idotaccent","Scedilla","scedilla","Cacute","cacute","Ccaron","ccaron","dcroat"];function Y4(r){this.font=r}Y4.prototype.charToGlyphIndex=function(r){var t=r.codePointAt(0),e=this.font.glyphs;if(e){for(var n=0;n<e.length;n+=1)for(var s=e.get(n),i=0;i<s.unicodes.length;i+=1)if(s.unicodes[i]===t)return n}return null};function j4(r){this.cmap=r}j4.prototype.charToGlyphIndex=function(r){return this.cmap.glyphIndexMap[r.codePointAt(0)]||0};function ct(r,t){this.encoding=r,this.charset=t}ct.prototype.charToGlyphIndex=function(r){var t=r.codePointAt(0),e=this.encoding[t];return this.charset.indexOf(e)};function E6(r){switch(r.version){case 1:this.names=Be.slice();break;case 2:this.names=new Array(r.numberOfGlyphs);for(var t=0;t<r.numberOfGlyphs;t++)r.glyphNameIndex[t]<Be.length?this.names[t]=Be[r.glyphNameIndex[t]]:this.names[t]=r.names[r.glyphNameIndex[t]-Be.length];break;case 2.5:this.names=new Array(r.numberOfGlyphs);for(var e=0;e<r.numberOfGlyphs;e++)this.names[e]=Be[e+r.glyphNameIndex[e]];break;case 3:this.names=[];break;default:this.names=[];break}}E6.prototype.nameToGlyphIndex=function(r){return this.names.indexOf(r)},E6.prototype.glyphIndexToName=function(r){return this.names[r]};function j8(r){for(var t,e=r.tables.cmap.glyphIndexMap,n=Object.keys(e),s=0;s<n.length;s+=1){var i=n[s],a=e[i];t=r.glyphs.get(a),t.addUnicode(parseInt(i))}for(var o=0;o<r.glyphs.length;o+=1)t=r.glyphs.get(o),r.cffEncoding?r.isCIDFont?t.name="gid"+o:t.name=r.cffEncoding.charset[o]:r.glyphNames.names&&(t.name=r.glyphNames.glyphIndexToName(o))}function V8(r){r._IndexToUnicodeMap={};for(var t=r.tables.cmap.glyphIndexMap,e=Object.keys(t),n=0;n<e.length;n+=1){var s=e[n],i=t[s];r._IndexToUnicodeMap[i]===void 0?r._IndexToUnicodeMap[i]={unicodes:[parseInt(s)]}:r._IndexToUnicodeMap[i].unicodes.push(parseInt(s))}}function K8(r,t){t.lowMemory?V8(r):j8(r)}function q8(r,t,e,n,s){r.beginPath(),r.moveTo(t,e),r.lineTo(n,s),r.stroke()}var Oe={line:q8};function Z8(r,t){var e=t||new d1;return{configurable:!0,get:function(){return typeof e=="function"&&(e=e()),e},set:function(n){e=n}}}function R1(r){this.bindConstructorValues(r)}R1.prototype.bindConstructorValues=function(r){this.index=r.index||0,this.name=r.name||null,this.unicode=r.unicode||void 0,this.unicodes=r.unicodes||r.unicode!==void 0?[r.unicode]:[],"xMin"in r&&(this.xMin=r.xMin),"yMin"in r&&(this.yMin=r.yMin),"xMax"in r&&(this.xMax=r.xMax),"yMax"in r&&(this.yMax=r.yMax),"advanceWidth"in r&&(this.advanceWidth=r.advanceWidth),Object.defineProperty(this,"path",Z8(this,r.path))},R1.prototype.addUnicode=function(r){this.unicodes.length===0&&(this.unicode=r),this.unicodes.push(r)},R1.prototype.getBoundingBox=function(){return this.path.getBoundingBox()},R1.prototype.getPath=function(r,t,e,n,s){r=r!==void 0?r:0,t=t!==void 0?t:0,e=e!==void 0?e:72;var i,a;n||(n={});var o=n.xScale,u=n.yScale;if(n.hinting&&s&&s.hinting&&(a=this.path&&s.hinting.exec(this,e)),a)i=s.hinting.getCommands(a),r=Math.round(r),t=Math.round(t),o=u=1;else{i=this.path.commands;var l=1/(this.path.unitsPerEm||1e3)*e;o===void 0&&(o=l),u===void 0&&(u=l)}for(var c=new d1,h=0;h<i.length;h+=1){var f=i[h];f.type==="M"?c.moveTo(r+f.x*o,t+-f.y*u):f.type==="L"?c.lineTo(r+f.x*o,t+-f.y*u):f.type==="Q"?c.quadraticCurveTo(r+f.x1*o,t+-f.y1*u,r+f.x*o,t+-f.y*u):f.type==="C"?c.curveTo(r+f.x1*o,t+-f.y1*u,r+f.x2*o,t+-f.y2*u,r+f.x*o,t+-f.y*u):f.type==="Z"&&c.closePath()}return c},R1.prototype.getContours=function(){if(this.points===void 0)return[];for(var r=[],t=[],e=0;e<this.points.length;e+=1){var n=this.points[e];t.push(n),n.lastPointOfContour&&(r.push(t),t=[])}return J.argument(t.length===0,"There are still points left in the current contour."),r},R1.prototype.getMetrics=function(){for(var r=this.path.commands,t=[],e=[],n=0;n<r.length;n+=1){var s=r[n];s.type!=="Z"&&(t.push(s.x),e.push(s.y)),(s.type==="Q"||s.type==="C")&&(t.push(s.x1),e.push(s.y1)),s.type==="C"&&(t.push(s.x2),e.push(s.y2))}var i={xMin:Math.min.apply(null,t),yMin:Math.min.apply(null,e),xMax:Math.max.apply(null,t),yMax:Math.max.apply(null,e),leftSideBearing:this.leftSideBearing};return isFinite(i.xMin)||(i.xMin=0),isFinite(i.xMax)||(i.xMax=this.advanceWidth),isFinite(i.yMin)||(i.yMin=0),isFinite(i.yMax)||(i.yMax=0),i.rightSideBearing=this.advanceWidth-i.leftSideBearing-(i.xMax-i.xMin),i},R1.prototype.draw=function(r,t,e,n,s){this.getPath(t,e,n,s).draw(r)},R1.prototype.drawPoints=function(r,t,e,n){function s(h,f,d,D){r.beginPath();for(var m=0;m<h.length;m+=1)r.moveTo(f+h[m].x*D,d+h[m].y*D),r.arc(f+h[m].x*D,d+h[m].y*D,2,0,Math.PI*2,!1);r.closePath(),r.fill()}t=t!==void 0?t:0,e=e!==void 0?e:0,n=n!==void 0?n:24;for(var i=1/this.path.unitsPerEm*n,a=[],o=[],u=this.path,l=0;l<u.commands.length;l+=1){var c=u.commands[l];c.x!==void 0&&a.push({x:c.x,y:-c.y}),c.x1!==void 0&&o.push({x:c.x1,y:-c.y1}),c.x2!==void 0&&o.push({x:c.x2,y:-c.y2})}r.fillStyle="blue",s(a,t,e,i),r.fillStyle="red",s(o,t,e,i)},R1.prototype.drawMetrics=function(r,t,e,n){var s;t=t!==void 0?t:0,e=e!==void 0?e:0,n=n!==void 0?n:24,s=1/this.path.unitsPerEm*n,r.lineWidth=1,r.strokeStyle="black",Oe.line(r,t,-1e4,t,1e4),Oe.line(r,-1e4,e,1e4,e);var i=this.xMin||0,a=this.yMin||0,o=this.xMax||0,u=this.yMax||0,l=this.advanceWidth||0;r.strokeStyle="blue",Oe.line(r,t+i*s,-1e4,t+i*s,1e4),Oe.line(r,t+o*s,-1e4,t+o*s,1e4),Oe.line(r,-1e4,e+-a*s,1e4,e+-a*s),Oe.line(r,-1e4,e+-u*s,1e4,e+-u*s),r.strokeStyle="green",Oe.line(r,t+l*s,-1e4,t+l*s,1e4)};function ht(r,t,e){Object.defineProperty(r,t,{get:function(){return r.path,r[e]},set:function(n){r[e]=n},enumerable:!0,configurable:!0})}function S6(r,t){if(this.font=r,this.glyphs={},Array.isArray(t))for(var e=0;e<t.length;e++){var n=t[e];n.path.unitsPerEm=r.unitsPerEm,this.glyphs[e]=n}this.length=t&&t.length||0}S6.prototype.get=function(r){if(this.glyphs[r]===void 0){this.font._push(r),typeof this.glyphs[r]=="function"&&(this.glyphs[r]=this.glyphs[r]());var t=this.glyphs[r],e=this.font._IndexToUnicodeMap[r];if(e)for(var n=0;n<e.unicodes.length;n++)t.addUnicode(e.unicodes[n]);this.font.cffEncoding?this.font.isCIDFont?t.name="gid"+r:t.name=this.font.cffEncoding.charset[r]:this.font.glyphNames.names&&(t.name=this.font.glyphNames.glyphIndexToName(r)),this.glyphs[r].advanceWidth=this.font._hmtxTableData[r].advanceWidth,this.glyphs[r].leftSideBearing=this.font._hmtxTableData[r].leftSideBearing}else typeof this.glyphs[r]=="function"&&(this.glyphs[r]=this.glyphs[r]());return this.glyphs[r]},S6.prototype.push=function(r,t){this.glyphs[r]=t,this.length++};function J8(r,t){return new R1({index:t,font:r})}function Q8(r,t,e,n,s,i){return function(){var a=new R1({index:t,font:r});return a.path=function(){e(a,n,s);var o=i(r.glyphs,a);return o.unitsPerEm=r.unitsPerEm,o},ht(a,"xMin","_xMin"),ht(a,"xMax","_xMax"),ht(a,"yMin","_yMin"),ht(a,"yMax","_yMax"),a}}function es(r,t,e,n){return function(){var s=new R1({index:t,font:r});return s.path=function(){var i=e(r,s,n);return i.unitsPerEm=r.unitsPerEm,i},s}}var ee={GlyphSet:S6,glyphLoader:J8,ttfGlyphLoader:Q8,cffGlyphLoader:es};function V4(r,t){if(r===t)return!0;if(Array.isArray(r)&&Array.isArray(t)){if(r.length!==t.length)return!1;for(var e=0;e<r.length;e+=1)if(!V4(r[e],t[e]))return!1;return!0}else return!1}function T6(r){var t;return r.length<1240?t=107:r.length<33900?t=1131:t=32768,t}function _e(r,t,e){var n=[],s=[],i=Y.getCard16(r,t),a,o;if(i!==0){var u=Y.getByte(r,t+2);a=t+(i+1)*u+2;for(var l=t+3,c=0;c<i+1;c+=1)n.push(Y.getOffset(r,l,u)),l+=u;o=a+n[i]}else o=t+2;for(var h=0;h<n.length-1;h+=1){var f=Y.getBytes(r,a+n[h],a+n[h+1]);e&&(f=e(f)),s.push(f)}return{objects:s,startOffset:t,endOffset:o}}function ts(r,t){var e=[],n=Y.getCard16(r,t),s,i;if(n!==0){var a=Y.getByte(r,t+2);s=t+(n+1)*a+2;for(var o=t+3,u=0;u<n+1;u+=1)e.push(Y.getOffset(r,o,a)),o+=a;i=s+e[n]}else i=t+2;return{offsets:e,startOffset:t,endOffset:i}}function ns(r,t,e,n,s){var i=Y.getCard16(e,n),a=0;if(i!==0){var o=Y.getByte(e,n+2);a=n+(i+1)*o+2}var u=Y.getBytes(e,a+t[r],a+t[r+1]);return s&&(u=s(u)),u}function rs(r){for(var t="",e=15,n=["0","1","2","3","4","5","6","7","8","9",".","E","E-",null,"-"];;){var s=r.parseByte(),i=s>>4,a=s&15;if(i===e||(t+=n[i],a===e))break;t+=n[a]}return parseFloat(t)}function ss(r,t){var e,n,s,i;if(t===28)return e=r.parseByte(),n=r.parseByte(),e<<8|n;if(t===29)return e=r.parseByte(),n=r.parseByte(),s=r.parseByte(),i=r.parseByte(),e<<24|n<<16|s<<8|i;if(t===30)return rs(r);if(t>=32&&t<=246)return t-139;if(t>=247&&t<=250)return e=r.parseByte(),(t-247)*256+e+108;if(t>=251&&t<=254)return e=r.parseByte(),-(t-251)*256-e-108;throw new Error("Invalid b0 "+t)}function is(r){for(var t={},e=0;e<r.length;e+=1){var n=r[e][0],s=r[e][1],i=void 0;if(s.length===1?i=s[0]:i=s,t.hasOwnProperty(n)&&!isNaN(t[n]))throw new Error("Object "+t+" already has key "+n);t[n]=i}return t}function K4(r,t,e){t=t!==void 0?t:0;var n=new Y.Parser(r,t),s=[],i=[];for(e=e!==void 0?e:r.length;n.relativeOffset<e;){var a=n.parseByte();a<=21?(a===12&&(a=1200+n.parseByte()),s.push([a,i]),i=[]):i.push(ss(n,a))}return is(s)}function T2(r,t){return t<=390?t=lt[t]:t=r[t-391],t}function q4(r,t,e){for(var n={},s,i=0;i<t.length;i+=1){var a=t[i];if(Array.isArray(a.type)){var o=[];o.length=a.type.length;for(var u=0;u<a.type.length;u++)s=r[a.op]!==void 0?r[a.op][u]:void 0,s===void 0&&(s=a.value!==void 0&&a.value[u]!==void 0?a.value[u]:null),a.type[u]==="SID"&&(s=T2(e,s)),o[u]=s;n[a.name]=o}else s=r[a.op],s===void 0&&(s=a.value!==void 0?a.value:null),a.type==="SID"&&(s=T2(e,s)),n[a.name]=s}return n}function as(r,t){var e={};return e.formatMajor=Y.getCard8(r,t),e.formatMinor=Y.getCard8(r,t+1),e.size=Y.getCard8(r,t+2),e.offsetSize=Y.getCard8(r,t+3),e.startOffset=t,e.endOffset=t+4,e}var Z4=[{name:"version",op:0,type:"SID"},{name:"notice",op:1,type:"SID"},{name:"copyright",op:1200,type:"SID"},{name:"fullName",op:2,type:"SID"},{name:"familyName",op:3,type:"SID"},{name:"weight",op:4,type:"SID"},{name:"isFixedPitch",op:1201,type:"number",value:0},{name:"italicAngle",op:1202,type:"number",value:0},{name:"underlinePosition",op:1203,type:"number",value:-100},{name:"underlineThickness",op:1204,type:"number",value:50},{name:"paintType",op:1205,type:"number",value:0},{name:"charstringType",op:1206,type:"number",value:2},{name:"fontMatrix",op:1207,type:["real","real","real","real","real","real"],value:[.001,0,0,.001,0,0]},{name:"uniqueId",op:13,type:"number"},{name:"fontBBox",op:5,type:["number","number","number","number"],value:[0,0,0,0]},{name:"strokeWidth",op:1208,type:"number",value:0},{name:"xuid",op:14,type:[],value:null},{name:"charset",op:15,type:"offset",value:0},{name:"encoding",op:16,type:"offset",value:0},{name:"charStrings",op:17,type:"offset",value:0},{name:"private",op:18,type:["number","offset"],value:[0,0]},{name:"ros",op:1230,type:["SID","SID","number"]},{name:"cidFontVersion",op:1231,type:"number",value:0},{name:"cidFontRevision",op:1232,type:"number",value:0},{name:"cidFontType",op:1233,type:"number",value:0},{name:"cidCount",op:1234,type:"number",value:8720},{name:"uidBase",op:1235,type:"number"},{name:"fdArray",op:1236,type:"offset"},{name:"fdSelect",op:1237,type:"offset"},{name:"fontName",op:1238,type:"SID"}],J4=[{name:"subrs",op:19,type:"offset",value:0},{name:"defaultWidthX",op:20,type:"number",value:0},{name:"nominalWidthX",op:21,type:"number",value:0}];function os(r,t){var e=K4(r,0,r.byteLength);return q4(e,Z4,t)}function Q4(r,t,e,n){var s=K4(r,t,e);return q4(s,J4,n)}function e7(r,t,e,n){for(var s=[],i=0;i<e.length;i+=1){var a=new DataView(new Uint8Array(e[i]).buffer),o=os(a,n);o._subrs=[],o._subrsBias=0,o._defaultWidthX=0,o._nominalWidthX=0;var u=o.private[0],l=o.private[1];if(u!==0&&l!==0){var c=Q4(r,l+t,u,n);if(o._defaultWidthX=c.defaultWidthX,o._nominalWidthX=c.nominalWidthX,c.subrs!==0){var h=l+c.subrs,f=_e(r,h+t);o._subrs=f.objects,o._subrsBias=T6(o._subrs)}o._privateDict=c}s.push(o)}return s}function us(r,t,e,n){var s,i,a=new Y.Parser(r,t);e-=1;var o=[".notdef"],u=a.parseCard8();if(u===0)for(var l=0;l<e;l+=1)s=a.parseSID(),o.push(T2(n,s));else if(u===1)for(;o.length<=e;){s=a.parseSID(),i=a.parseCard8();for(var c=0;c<=i;c+=1)o.push(T2(n,s)),s+=1}else if(u===2)for(;o.length<=e;){s=a.parseSID(),i=a.parseCard16();for(var h=0;h<=i;h+=1)o.push(T2(n,s)),s+=1}else throw new Error("Unknown charset format "+u);return o}function ls(r,t,e){var n,s={},i=new Y.Parser(r,t),a=i.parseCard8();if(a===0)for(var o=i.parseCard8(),u=0;u<o;u+=1)n=i.parseCard8(),s[n]=u;else if(a===1){var l=i.parseCard8();n=1;for(var c=0;c<l;c+=1)for(var h=i.parseCard8(),f=i.parseCard8(),d=h;d<=h+f;d+=1)s[d]=n,n+=1}else throw new Error("Unknown encoding format "+a);return new ct(s,e)}function t7(r,t,e){var n,s,i,a,o=new d1,u=[],l=0,c=!1,h=!1,f=0,d=0,D,m,v,F;if(r.isCIDFont){var C=r.tables.cff.topDict._fdSelect[t.index],S=r.tables.cff.topDict._fdArray[C];D=S._subrs,m=S._subrsBias,v=S._defaultWidthX,F=S._nominalWidthX}else D=r.tables.cff.topDict._subrs,m=r.tables.cff.topDict._subrsBias,v=r.tables.cff.topDict._defaultWidthX,F=r.tables.cff.topDict._nominalWidthX;var B=v;function w(T,A){h&&o.closePath(),o.moveTo(T,A),h=!0}function x(){var T;T=u.length%2!==0,T&&!c&&(B=u.shift()+F),l+=u.length>>1,u.length=0,c=!0}function O(T){for(var A,k,$,I,M,L,U,G,X,H,V,e1,t1=0;t1<T.length;){var n1=T[t1];switch(t1+=1,n1){case 1:x();break;case 3:x();break;case 4:u.length>1&&!c&&(B=u.shift()+F,c=!0),d+=u.pop(),w(f,d);break;case 5:for(;u.length>0;)f+=u.shift(),d+=u.shift(),o.lineTo(f,d);break;case 6:for(;u.length>0&&(f+=u.shift(),o.lineTo(f,d),u.length!==0);)d+=u.shift(),o.lineTo(f,d);break;case 7:for(;u.length>0&&(d+=u.shift(),o.lineTo(f,d),u.length!==0);)f+=u.shift(),o.lineTo(f,d);break;case 8:for(;u.length>0;)n=f+u.shift(),s=d+u.shift(),i=n+u.shift(),a=s+u.shift(),f=i+u.shift(),d=a+u.shift(),o.curveTo(n,s,i,a,f,d);break;case 10:M=u.pop()+m,L=D[M],L&&O(L);break;case 11:return;case 12:switch(n1=T[t1],t1+=1,n1){case 35:n=f+u.shift(),s=d+u.shift(),i=n+u.shift(),a=s+u.shift(),U=i+u.shift(),G=a+u.shift(),X=U+u.shift(),H=G+u.shift(),V=X+u.shift(),e1=H+u.shift(),f=V+u.shift(),d=e1+u.shift(),u.shift(),o.curveTo(n,s,i,a,U,G),o.curveTo(X,H,V,e1,f,d);break;case 34:n=f+u.shift(),s=d,i=n+u.shift(),a=s+u.shift(),U=i+u.shift(),G=a,X=U+u.shift(),H=a,V=X+u.shift(),e1=d,f=V+u.shift(),o.curveTo(n,s,i,a,U,G),o.curveTo(X,H,V,e1,f,d);break;case 36:n=f+u.shift(),s=d+u.shift(),i=n+u.shift(),a=s+u.shift(),U=i+u.shift(),G=a,X=U+u.shift(),H=a,V=X+u.shift(),e1=H+u.shift(),f=V+u.shift(),o.curveTo(n,s,i,a,U,G),o.curveTo(X,H,V,e1,f,d);break;case 37:n=f+u.shift(),s=d+u.shift(),i=n+u.shift(),a=s+u.shift(),U=i+u.shift(),G=a+u.shift(),X=U+u.shift(),H=G+u.shift(),V=X+u.shift(),e1=H+u.shift(),Math.abs(V-f)>Math.abs(e1-d)?f=V+u.shift():d=e1+u.shift(),o.curveTo(n,s,i,a,U,G),o.curveTo(X,H,V,e1,f,d);break;default:console.log("Glyph "+t.index+": unknown operator 1200"+n1),u.length=0}break;case 14:u.length>0&&!c&&(B=u.shift()+F,c=!0),h&&(o.closePath(),h=!1);break;case 18:x();break;case 19:case 20:x(),t1+=l+7>>3;break;case 21:u.length>2&&!c&&(B=u.shift()+F,c=!0),d+=u.pop(),f+=u.pop(),w(f,d);break;case 22:u.length>1&&!c&&(B=u.shift()+F,c=!0),f+=u.pop(),w(f,d);break;case 23:x();break;case 24:for(;u.length>2;)n=f+u.shift(),s=d+u.shift(),i=n+u.shift(),a=s+u.shift(),f=i+u.shift(),d=a+u.shift(),o.curveTo(n,s,i,a,f,d);f+=u.shift(),d+=u.shift(),o.lineTo(f,d);break;case 25:for(;u.length>6;)f+=u.shift(),d+=u.shift(),o.lineTo(f,d);n=f+u.shift(),s=d+u.shift(),i=n+u.shift(),a=s+u.shift(),f=i+u.shift(),d=a+u.shift(),o.curveTo(n,s,i,a,f,d);break;case 26:for(u.length%2&&(f+=u.shift());u.length>0;)n=f,s=d+u.shift(),i=n+u.shift(),a=s+u.shift(),f=i,d=a+u.shift(),o.curveTo(n,s,i,a,f,d);break;case 27:for(u.length%2&&(d+=u.shift());u.length>0;)n=f+u.shift(),s=d,i=n+u.shift(),a=s+u.shift(),f=i+u.shift(),d=a,o.curveTo(n,s,i,a,f,d);break;case 28:A=T[t1],k=T[t1+1],u.push((A<<24|k<<16)>>16),t1+=2;break;case 29:M=u.pop()+r.gsubrsBias,L=r.gsubrs[M],L&&O(L);break;case 30:for(;u.length>0&&(n=f,s=d+u.shift(),i=n+u.shift(),a=s+u.shift(),f=i+u.shift(),d=a+(u.length===1?u.shift():0),o.curveTo(n,s,i,a,f,d),u.length!==0);)n=f+u.shift(),s=d,i=n+u.shift(),a=s+u.shift(),d=a+u.shift(),f=i+(u.length===1?u.shift():0),o.curveTo(n,s,i,a,f,d);break;case 31:for(;u.length>0&&(n=f+u.shift(),s=d,i=n+u.shift(),a=s+u.shift(),d=a+u.shift(),f=i+(u.length===1?u.shift():0),o.curveTo(n,s,i,a,f,d),u.length!==0);)n=f,s=d+u.shift(),i=n+u.shift(),a=s+u.shift(),f=i+u.shift(),d=a+(u.length===1?u.shift():0),o.curveTo(n,s,i,a,f,d);break;default:n1<32?console.log("Glyph "+t.index+": unknown operator "+n1):n1<247?u.push(n1-139):n1<251?(A=T[t1],t1+=1,u.push((n1-247)*256+A+108)):n1<255?(A=T[t1],t1+=1,u.push(-(n1-251)*256-A-108)):(A=T[t1],k=T[t1+1],$=T[t1+2],I=T[t1+3],t1+=4,u.push((A<<24|k<<16|$<<8|I)/65536))}}}return O(e),t.advanceWidth=B,o}function cs(r,t,e,n){var s=[],i,a=new Y.Parser(r,t),o=a.parseCard8();if(o===0)for(var u=0;u<e;u++){if(i=a.parseCard8(),i>=n)throw new Error("CFF table CID Font FDSelect has bad FD index value "+i+" (FD count "+n+")");s.push(i)}else if(o===3){var l=a.parseCard16(),c=a.parseCard16();if(c!==0)throw new Error("CFF Table CID Font FDSelect format 3 range has bad initial GID "+c);for(var h,f=0;f<l;f++){if(i=a.parseCard8(),h=a.parseCard16(),i>=n)throw new Error("CFF table CID Font FDSelect has bad FD index value "+i+" (FD count "+n+")");if(h>e)throw new Error("CFF Table CID Font FDSelect format 3 range has bad GID "+h);for(;c<h;c++)s.push(i);c=h}if(h!==e)throw new Error("CFF Table CID Font FDSelect format 3 range has bad final GID "+h)}else throw new Error("CFF Table CID Font FDSelect table has unsupported format "+o);return s}function hs(r,t,e,n){e.tables.cff={};var s=as(r,t),i=_e(r,s.endOffset,Y.bytesToString),a=_e(r,i.endOffset),o=_e(r,a.endOffset,Y.bytesToString),u=_e(r,o.endOffset);e.gsubrs=u.objects,e.gsubrsBias=T6(e.gsubrs);var l=e7(r,t,a.objects,o.objects);if(l.length!==1)throw new Error("CFF table has too many fonts in 'FontSet' - count of fonts NameIndex.length = "+l.length);var c=l[0];if(e.tables.cff.topDict=c,c._privateDict&&(e.defaultWidthX=c._privateDict.defaultWidthX,e.nominalWidthX=c._privateDict.nominalWidthX),c.ros[0]!==void 0&&c.ros[1]!==void 0&&(e.isCIDFont=!0),e.isCIDFont){var h=c.fdArray,f=c.fdSelect;if(h===0||f===0)throw new Error("Font is marked as a CID font, but FDArray and/or FDSelect information is missing");h+=t;var d=_e(r,h),D=e7(r,t,d.objects,o.objects);c._fdArray=D,f+=t,c._fdSelect=cs(r,f,e.numGlyphs,D.length)}var m=t+c.private[1],v=Q4(r,m,c.private[0],o.objects);if(e.defaultWidthX=v.defaultWidthX,e.nominalWidthX=v.nominalWidthX,v.subrs!==0){var F=m+v.subrs,C=_e(r,F);e.subrs=C.objects,e.subrsBias=T6(e.subrs)}else e.subrs=[],e.subrsBias=0;var S;n.lowMemory?(S=ts(r,t+c.charStrings),e.nGlyphs=S.offsets.length):(S=_e(r,t+c.charStrings),e.nGlyphs=S.objects.length);var B=us(r,t+c.charset,e.nGlyphs,o.objects);if(c.encoding===0?e.cffEncoding=new ct(W8,B):c.encoding===1?e.cffEncoding=new ct(Y8,B):e.cffEncoding=ls(r,t+c.encoding,B),e.encoding=e.encoding||e.cffEncoding,e.glyphs=new ee.GlyphSet(e),n.lowMemory)e._push=function(O){var T=ns(O,S.offsets,r,t+c.charStrings);e.glyphs.push(O,ee.cffGlyphLoader(e,O,t7,T))};else for(var w=0;w<e.nGlyphs;w+=1){var x=S.objects[w];e.glyphs.push(w,ee.cffGlyphLoader(e,w,t7,x))}}function n7(r,t){var e,n=lt.indexOf(r);return n>=0&&(e=n),n=t.indexOf(r),n>=0?e=n+lt.length:(e=lt.length+t.length,t.push(r)),e}function fs(){return new z.Record("Header",[{name:"major",type:"Card8",value:1},{name:"minor",type:"Card8",value:0},{name:"hdrSize",type:"Card8",value:4},{name:"major",type:"Card8",value:1}])}function ds(r){var t=new z.Record("Name INDEX",[{name:"names",type:"INDEX",value:[]}]);t.names=[];for(var e=0;e<r.length;e+=1)t.names.push({name:"name_"+e,type:"NAME",value:r[e]});return t}function r7(r,t,e){for(var n={},s=0;s<r.length;s+=1){var i=r[s],a=t[i.name];a!==void 0&&!V4(a,i.value)&&(i.type==="SID"&&(a=n7(a,e)),n[i.op]={name:i.name,type:i.type,value:a})}return n}function s7(r,t){var e=new z.Record("Top DICT",[{name:"dict",type:"DICT",value:{}}]);return e.dict=r7(Z4,r,t),e}function i7(r){var t=new z.Record("Top DICT INDEX",[{name:"topDicts",type:"INDEX",value:[]}]);return t.topDicts=[{name:"topDict_0",type:"TABLE",value:r}],t}function _s(r){var t=new z.Record("String INDEX",[{name:"strings",type:"INDEX",value:[]}]);t.strings=[];for(var e=0;e<r.length;e+=1)t.strings.push({name:"string_"+e,type:"STRING",value:r[e]});return t}function gs(){return new z.Record("Global Subr INDEX",[{name:"subrs",type:"INDEX",value:[]}])}function ps(r,t){for(var e=new z.Record("Charsets",[{name:"format",type:"Card8",value:0}]),n=0;n<r.length;n+=1){var s=r[n],i=n7(s,t);e.fields.push({name:"glyph_"+n,type:"SID",value:i})}return e}function Ds(r){var t=[],e=r.path;t.push({name:"width",type:"NUMBER",value:r.advanceWidth});for(var n=0,s=0,i=0;i<e.commands.length;i+=1){var a=void 0,o=void 0,u=e.commands[i];if(u.type==="Q"){var l=.3333333333333333,c=2/3;u={type:"C",x:u.x,y:u.y,x1:Math.round(l*n+c*u.x1),y1:Math.round(l*s+c*u.y1),x2:Math.round(l*u.x+c*u.x1),y2:Math.round(l*u.y+c*u.y1)}}if(u.type==="M")a=Math.round(u.x-n),o=Math.round(u.y-s),t.push({name:"dx",type:"NUMBER",value:a}),t.push({name:"dy",type:"NUMBER",value:o}),t.push({name:"rmoveto",type:"OP",value:21}),n=Math.round(u.x),s=Math.round(u.y);else if(u.type==="L")a=Math.round(u.x-n),o=Math.round(u.y-s),t.push({name:"dx",type:"NUMBER",value:a}),t.push({name:"dy",type:"NUMBER",value:o}),t.push({name:"rlineto",type:"OP",value:5}),n=Math.round(u.x),s=Math.round(u.y);else if(u.type==="C"){var h=Math.round(u.x1-n),f=Math.round(u.y1-s),d=Math.round(u.x2-u.x1),D=Math.round(u.y2-u.y1);a=Math.round(u.x-u.x2),o=Math.round(u.y-u.y2),t.push({name:"dx1",type:"NUMBER",value:h}),t.push({name:"dy1",type:"NUMBER",value:f}),t.push({name:"dx2",type:"NUMBER",value:d}),t.push({name:"dy2",type:"NUMBER",value:D}),t.push({name:"dx",type:"NUMBER",value:a}),t.push({name:"dy",type:"NUMBER",value:o}),t.push({name:"rrcurveto",type:"OP",value:8}),n=Math.round(u.x),s=Math.round(u.y)}}return t.push({name:"endchar",type:"OP",value:14}),t}function vs(r){for(var t=new z.Record("CharStrings INDEX",[{name:"charStrings",type:"INDEX",value:[]}]),e=0;e<r.length;e+=1){var n=r.get(e),s=Ds(n);t.charStrings.push({name:n.name,type:"CHARSTRING",value:s})}return t}function ms(r,t){var e=new z.Record("Private DICT",[{name:"dict",type:"DICT",value:{}}]);return e.dict=r7(J4,r,t),e}function bs(r,t){for(var e=new z.Table("CFF ",[{name:"header",type:"RECORD"},{name:"nameIndex",type:"RECORD"},{name:"topDictIndex",type:"RECORD"},{name:"stringIndex",type:"RECORD"},{name:"globalSubrIndex",type:"RECORD"},{name:"charsets",type:"RECORD"},{name:"charStringsIndex",type:"RECORD"},{name:"privateDict",type:"RECORD"}]),n=1/t.unitsPerEm,s={version:t.version,fullName:t.fullName,familyName:t.familyName,weight:t.weightName,fontBBox:t.fontBBox||[0,0,0,0],fontMatrix:[n,0,0,n,0,0],charset:999,encoding:0,charStrings:999,private:[0,999]},i={},a=[],o,u=1;u<r.length;u+=1)o=r.get(u),a.push(o.name);var l=[];e.header=fs(),e.nameIndex=ds([t.postScriptName]);var c=s7(s,l);e.topDictIndex=i7(c),e.globalSubrIndex=gs(),e.charsets=ps(a,l),e.charStringsIndex=vs(r),e.privateDict=ms(i,l),e.stringIndex=_s(l);var h=e.header.sizeOf()+e.nameIndex.sizeOf()+e.topDictIndex.sizeOf()+e.stringIndex.sizeOf()+e.globalSubrIndex.sizeOf();return s.charset=h,s.encoding=0,s.charStrings=s.charset+e.charsets.sizeOf(),s.private[1]=s.charStrings+e.charStringsIndex.sizeOf(),c=s7(s,l),e.topDictIndex=i7(c),e}var a7={parse:hs,make:bs};function ys(r,t){var e={},n=new Y.Parser(r,t);return e.version=n.parseVersion(),e.fontRevision=Math.round(n.parseFixed()*1e3)/1e3,e.checkSumAdjustment=n.parseULong(),e.magicNumber=n.parseULong(),J.argument(e.magicNumber===1594834165,"Font header has wrong magic number."),e.flags=n.parseUShort(),e.unitsPerEm=n.parseUShort(),e.created=n.parseLongDateTime(),e.modified=n.parseLongDateTime(),e.xMin=n.parseShort(),e.yMin=n.parseShort(),e.xMax=n.parseShort(),e.yMax=n.parseShort(),e.macStyle=n.parseUShort(),e.lowestRecPPEM=n.parseUShort(),e.fontDirectionHint=n.parseShort(),e.indexToLocFormat=n.parseShort(),e.glyphDataFormat=n.parseShort(),e}function Fs(r){var t=Math.round(new Date().getTime()/1e3)+2082844800,e=t;return r.createdTimestamp&&(e=r.createdTimestamp+2082844800),new z.Table("head",[{name:"version",type:"FIXED",value:65536},{name:"fontRevision",type:"FIXED",value:65536},{name:"checkSumAdjustment",type:"ULONG",value:0},{name:"magicNumber",type:"ULONG",value:1594834165},{name:"flags",type:"USHORT",value:0},{name:"unitsPerEm",type:"USHORT",value:1e3},{name:"created",type:"LONGDATETIME",value:e},{name:"modified",type:"LONGDATETIME",value:t},{name:"xMin",type:"SHORT",value:0},{name:"yMin",type:"SHORT",value:0},{name:"xMax",type:"SHORT",value:0},{name:"yMax",type:"SHORT",value:0},{name:"macStyle",type:"USHORT",value:0},{name:"lowestRecPPEM",type:"USHORT",value:0},{name:"fontDirectionHint",type:"SHORT",value:2},{name:"indexToLocFormat",type:"SHORT",value:0},{name:"glyphDataFormat",type:"SHORT",value:0}],r)}var o7={parse:ys,make:Fs};function Cs(r,t){var e={},n=new Y.Parser(r,t);return e.version=n.parseVersion(),e.ascender=n.parseShort(),e.descender=n.parseShort(),e.lineGap=n.parseShort(),e.advanceWidthMax=n.parseUShort(),e.minLeftSideBearing=n.parseShort(),e.minRightSideBearing=n.parseShort(),e.xMaxExtent=n.parseShort(),e.caretSlopeRise=n.parseShort(),e.caretSlopeRun=n.parseShort(),e.caretOffset=n.parseShort(),n.relativeOffset+=8,e.metricDataFormat=n.parseShort(),e.numberOfHMetrics=n.parseUShort(),e}function Es(r){return new z.Table("hhea",[{name:"version",type:"FIXED",value:65536},{name:"ascender",type:"FWORD",value:0},{name:"descender",type:"FWORD",value:0},{name:"lineGap",type:"FWORD",value:0},{name:"advanceWidthMax",type:"UFWORD",value:0},{name:"minLeftSideBearing",type:"FWORD",value:0},{name:"minRightSideBearing",type:"FWORD",value:0},{name:"xMaxExtent",type:"FWORD",value:0},{name:"caretSlopeRise",type:"SHORT",value:1},{name:"caretSlopeRun",type:"SHORT",value:0},{name:"caretOffset",type:"SHORT",value:0},{name:"reserved1",type:"SHORT",value:0},{name:"reserved2",type:"SHORT",value:0},{name:"reserved3",type:"SHORT",value:0},{name:"reserved4",type:"SHORT",value:0},{name:"metricDataFormat",type:"SHORT",value:0},{name:"numberOfHMetrics",type:"USHORT",value:0}],r)}var u7={parse:Cs,make:Es};function Ss(r,t,e,n,s){for(var i,a,o=new Y.Parser(r,t),u=0;u<n;u+=1){u<e&&(i=o.parseUShort(),a=o.parseShort());var l=s.get(u);l.advanceWidth=i,l.leftSideBearing=a}}function Ts(r,t,e,n,s){r._hmtxTableData={};for(var i,a,o=new Y.Parser(t,e),u=0;u<s;u+=1)u<n&&(i=o.parseUShort(),a=o.parseShort()),r._hmtxTableData[u]={advanceWidth:i,leftSideBearing:a}}function ws(r,t,e,n,s,i,a){a.lowMemory?Ts(r,t,e,n,s):Ss(t,e,n,s,i)}function Bs(r){for(var t=new z.Table("hmtx",[]),e=0;e<r.length;e+=1){var n=r.get(e),s=n.advanceWidth||0,i=n.leftSideBearing||0;t.fields.push({name:"advanceWidth_"+e,type:"USHORT",value:s}),t.fields.push({name:"leftSideBearing_"+e,type:"SHORT",value:i})}return t}var l7={parse:ws,make:Bs};function Os(r){for(var t=new z.Table("ltag",[{name:"version",type:"ULONG",value:1},{name:"flags",type:"ULONG",value:0},{name:"numTags",type:"ULONG",value:r.length}]),e="",n=12+r.length*4,s=0;s<r.length;++s){var i=e.indexOf(r[s]);i<0&&(i=e.length,e+=r[s]),t.fields.push({name:"offset "+s,type:"USHORT",value:n+i}),t.fields.push({name:"length "+s,type:"USHORT",value:r[s].length})}return t.fields.push({name:"stringPool",type:"CHARARRAY",value:e}),t}function xs(r,t){var e=new Y.Parser(r,t),n=e.parseULong();J.argument(n===1,"Unsupported ltag table version."),e.skip("uLong",1);for(var s=e.parseULong(),i=[],a=0;a<s;a++){for(var o="",u=t+e.parseUShort(),l=e.parseUShort(),c=u;c<u+l;++c)o+=String.fromCharCode(r.getInt8(c));i.push(o)}return i}var c7={make:Os,parse:xs};function Rs(r,t){var e={},n=new Y.Parser(r,t);return e.version=n.parseVersion(),e.numGlyphs=n.parseUShort(),e.version===1&&(e.maxPoints=n.parseUShort(),e.maxContours=n.parseUShort(),e.maxCompositePoints=n.parseUShort(),e.maxCompositeContours=n.parseUShort(),e.maxZones=n.parseUShort(),e.maxTwilightPoints=n.parseUShort(),e.maxStorage=n.parseUShort(),e.maxFunctionDefs=n.parseUShort(),e.maxInstructionDefs=n.parseUShort(),e.maxStackElements=n.parseUShort(),e.maxSizeOfInstructions=n.parseUShort(),e.maxComponentElements=n.parseUShort(),e.maxComponentDepth=n.parseUShort()),e}function As(r){return new z.Table("maxp",[{name:"version",type:"FIXED",value:20480},{name:"numGlyphs",type:"USHORT",value:r}])}var h7={parse:Rs,make:As},f7=["copyright","fontFamily","fontSubfamily","uniqueID","fullName","version","postScriptName","trademark","manufacturer","designer","description","manufacturerURL","designerURL","license","licenseURL","reserved","preferredFamily","preferredSubfamily","compatibleFullName","sampleText","postScriptFindFontName","wwsFamily","wwsSubfamily"],d7={0:"en",1:"fr",2:"de",3:"it",4:"nl",5:"sv",6:"es",7:"da",8:"pt",9:"no",10:"he",11:"ja",12:"ar",13:"fi",14:"el",15:"is",16:"mt",17:"tr",18:"hr",19:"zh-Hant",20:"ur",21:"hi",22:"th",23:"ko",24:"lt",25:"pl",26:"hu",27:"es",28:"lv",29:"se",30:"fo",31:"fa",32:"ru",33:"zh",34:"nl-BE",35:"ga",36:"sq",37:"ro",38:"cz",39:"sk",40:"si",41:"yi",42:"sr",43:"mk",44:"bg",45:"uk",46:"be",47:"uz",48:"kk",49:"az-Cyrl",50:"az-Arab",51:"hy",52:"ka",53:"mo",54:"ky",55:"tg",56:"tk",57:"mn-CN",58:"mn",59:"ps",60:"ks",61:"ku",62:"sd",63:"bo",64:"ne",65:"sa",66:"mr",67:"bn",68:"as",69:"gu",70:"pa",71:"or",72:"ml",73:"kn",74:"ta",75:"te",76:"si",77:"my",78:"km",79:"lo",80:"vi",81:"id",82:"tl",83:"ms",84:"ms-Arab",85:"am",86:"ti",87:"om",88:"so",89:"sw",90:"rw",91:"rn",92:"ny",93:"mg",94:"eo",128:"cy",129:"eu",130:"ca",131:"la",132:"qu",133:"gn",134:"ay",135:"tt",136:"ug",137:"dz",138:"jv",139:"su",140:"gl",141:"af",142:"br",143:"iu",144:"gd",145:"gv",146:"ga",147:"to",148:"el-polyton",149:"kl",150:"az",151:"nn"},ks={0:0,1:0,2:0,3:0,4:0,5:0,6:0,7:0,8:0,9:0,10:5,11:1,12:4,13:0,14:6,15:0,16:0,17:0,18:0,19:2,20:4,21:9,22:21,23:3,24:29,25:29,26:29,27:29,28:29,29:0,30:0,31:4,32:7,33:25,34:0,35:0,36:0,37:0,38:29,39:29,40:0,41:5,42:7,43:7,44:7,45:7,46:7,47:7,48:7,49:7,50:4,51:24,52:23,53:7,54:7,55:7,56:7,57:27,58:7,59:4,60:4,61:4,62:4,63:26,64:9,65:9,66:9,67:13,68:13,69:11,70:10,71:12,72:17,73:16,74:14,75:15,76:18,77:19,78:20,79:22,80:30,81:0,82:0,83:0,84:4,85:28,86:28,87:28,88:0,89:0,90:0,91:0,92:0,93:0,94:0,128:0,129:0,130:0,131:0,132:0,133:0,134:0,135:7,136:4,137:26,138:0,139:0,140:0,141:0,142:0,143:28,144:0,145:0,146:0,147:0,148:6,149:0,150:0,151:0},_7={1078:"af",1052:"sq",1156:"gsw",1118:"am",5121:"ar-DZ",15361:"ar-BH",3073:"ar",2049:"ar-IQ",11265:"ar-JO",13313:"ar-KW",12289:"ar-LB",4097:"ar-LY",6145:"ary",8193:"ar-OM",16385:"ar-QA",1025:"ar-SA",10241:"ar-SY",7169:"aeb",14337:"ar-AE",9217:"ar-YE",1067:"hy",1101:"as",2092:"az-Cyrl",1068:"az",1133:"ba",1069:"eu",1059:"be",2117:"bn",1093:"bn-IN",8218:"bs-Cyrl",5146:"bs",1150:"br",1026:"bg",1027:"ca",3076:"zh-HK",5124:"zh-MO",2052:"zh",4100:"zh-SG",1028:"zh-TW",1155:"co",1050:"hr",4122:"hr-BA",1029:"cs",1030:"da",1164:"prs",1125:"dv",2067:"nl-BE",1043:"nl",3081:"en-AU",10249:"en-BZ",4105:"en-CA",9225:"en-029",16393:"en-IN",6153:"en-IE",8201:"en-JM",17417:"en-MY",5129:"en-NZ",13321:"en-PH",18441:"en-SG",7177:"en-ZA",11273:"en-TT",2057:"en-GB",1033:"en",12297:"en-ZW",1061:"et",1080:"fo",1124:"fil",1035:"fi",2060:"fr-BE",3084:"fr-CA",1036:"fr",5132:"fr-LU",6156:"fr-MC",4108:"fr-CH",1122:"fy",1110:"gl",1079:"ka",3079:"de-AT",1031:"de",5127:"de-LI",4103:"de-LU",2055:"de-CH",1032:"el",1135:"kl",1095:"gu",1128:"ha",1037:"he",1081:"hi",1038:"hu",1039:"is",1136:"ig",1057:"id",1117:"iu",2141:"iu-Latn",2108:"ga",1076:"xh",1077:"zu",1040:"it",2064:"it-CH",1041:"ja",1099:"kn",1087:"kk",1107:"km",1158:"quc",1159:"rw",1089:"sw",1111:"kok",1042:"ko",1088:"ky",1108:"lo",1062:"lv",1063:"lt",2094:"dsb",1134:"lb",1071:"mk",2110:"ms-BN",1086:"ms",1100:"ml",1082:"mt",1153:"mi",1146:"arn",1102:"mr",1148:"moh",1104:"mn",2128:"mn-CN",1121:"ne",1044:"nb",2068:"nn",1154:"oc",1096:"or",1123:"ps",1045:"pl",1046:"pt",2070:"pt-PT",1094:"pa",1131:"qu-BO",2155:"qu-EC",3179:"qu",1048:"ro",1047:"rm",1049:"ru",9275:"smn",4155:"smj-NO",5179:"smj",3131:"se-FI",1083:"se",2107:"se-SE",8251:"sms",6203:"sma-NO",7227:"sms",1103:"sa",7194:"sr-Cyrl-BA",3098:"sr",6170:"sr-Latn-BA",2074:"sr-Latn",1132:"nso",1074:"tn",1115:"si",1051:"sk",1060:"sl",11274:"es-AR",16394:"es-BO",13322:"es-CL",9226:"es-CO",5130:"es-CR",7178:"es-DO",12298:"es-EC",17418:"es-SV",4106:"es-GT",18442:"es-HN",2058:"es-MX",19466:"es-NI",6154:"es-PA",15370:"es-PY",10250:"es-PE",20490:"es-PR",3082:"es",1034:"es",21514:"es-US",14346:"es-UY",8202:"es-VE",2077:"sv-FI",1053:"sv",1114:"syr",1064:"tg",2143:"tzm",1097:"ta",1092:"tt",1098:"te",1054:"th",1105:"bo",1055:"tr",1090:"tk",1152:"ug",1058:"uk",1070:"hsb",1056:"ur",2115:"uz-Cyrl",1091:"uz",1066:"vi",1106:"cy",1160:"wo",1157:"sah",1144:"ii",1130:"yo"};function $s(r,t,e){switch(r){case 0:if(t===65535)return"und";if(e)return e[t];break;case 1:return d7[t];case 3:return _7[t]}}var w6="utf-16",Is={0:"macintosh",1:"x-mac-japanese",2:"x-mac-chinesetrad",3:"x-mac-korean",6:"x-mac-greek",7:"x-mac-cyrillic",9:"x-mac-devanagai",10:"x-mac-gurmukhi",11:"x-mac-gujarati",12:"x-mac-oriya",13:"x-mac-bengali",14:"x-mac-tamil",15:"x-mac-telugu",16:"x-mac-kannada",17:"x-mac-malayalam",18:"x-mac-sinhalese",19:"x-mac-burmese",20:"x-mac-khmer",21:"x-mac-thai",22:"x-mac-lao",23:"x-mac-georgian",24:"x-mac-armenian",25:"x-mac-chinesesimp",26:"x-mac-tibetan",27:"x-mac-mongolian",28:"x-mac-ethiopic",29:"x-mac-ce",30:"x-mac-vietnamese",31:"x-mac-extarabic"},Ls={15:"x-mac-icelandic",17:"x-mac-turkish",18:"x-mac-croatian",24:"x-mac-ce",25:"x-mac-ce",26:"x-mac-ce",27:"x-mac-ce",28:"x-mac-ce",30:"x-mac-icelandic",37:"x-mac-romanian",38:"x-mac-ce",39:"x-mac-ce",40:"x-mac-ce",143:"x-mac-inuit",146:"x-mac-gaelic"};function g7(r,t,e){switch(r){case 0:return w6;case 1:return Ls[e]||Is[t];case 3:if(t===1||t===10)return w6;break}}function Ps(r,t,e){for(var n={},s=new Y.Parser(r,t),i=s.parseUShort(),a=s.parseUShort(),o=s.offset+s.parseUShort(),u=0;u<a;u++){var l=s.parseUShort(),c=s.parseUShort(),h=s.parseUShort(),f=s.parseUShort(),d=f7[f]||f,D=s.parseUShort(),m=s.parseUShort(),v=$s(l,h,e),F=g7(l,c,h);if(F!==void 0&&v!==void 0){var C=void 0;if(F===w6?C=Ve.UTF16(r,o+m,D):C=Ve.MACSTRING(r,o+m,D,F),C){var S=n[d];S===void 0&&(S=n[d]={}),S[v]=C}}}return i===1&&s.parseUShort(),n}function B6(r){var t={};for(var e in r)t[r[e]]=parseInt(e);return t}function p7(r,t,e,n,s,i){return new z.Record("NameRecord",[{name:"platformID",type:"USHORT",value:r},{name:"encodingID",type:"USHORT",value:t},{name:"languageID",type:"USHORT",value:e},{name:"nameID",type:"USHORT",value:n},{name:"length",type:"USHORT",value:s},{name:"offset",type:"USHORT",value:i}])}function Ms(r,t){var e=r.length,n=t.length-e+1;e:for(var s=0;s<n;s++)for(;s<n;s++){for(var i=0;i<e;i++)if(t[s+i]!==r[i])continue e;return s}return-1}function D7(r,t){var e=Ms(r,t);if(e<0){e=t.length;for(var n=0,s=r.length;n<s;++n)t.push(r[n])}return e}function Ns(r,t){var e,n=[],s={},i=B6(f7);for(var a in r){var o=i[a];if(o===void 0&&(o=a),e=parseInt(o),isNaN(e))throw new Error('Name table entry "'+a+'" does not exist, see nameTableNames for complete list.');s[e]=r[a],n.push(e)}for(var u=B6(d7),l=B6(_7),c=[],h=[],f=0;f<n.length;f++){e=n[f];var d=s[e];for(var D in d){var m=d[D],v=1,F=u[D],C=ks[F],S=g7(v,C,F),B=N.MACSTRING(m,S);B===void 0&&(v=0,F=t.indexOf(D),F<0&&(F=t.length,t.push(D)),C=4,B=N.UTF16(m));var w=D7(B,h);c.push(p7(v,C,F,e,B.length,w));var x=l[D];if(x!==void 0){var O=N.UTF16(m),T=D7(O,h);c.push(p7(3,1,x,e,O.length,T))}}}c.sort(function($,I){return $.platformID-I.platformID||$.encodingID-I.encodingID||$.languageID-I.languageID||$.nameID-I.nameID});for(var A=new z.Table("name",[{name:"format",type:"USHORT",value:0},{name:"count",type:"USHORT",value:c.length},{name:"stringOffset",type:"USHORT",value:6+c.length*12}]),k=0;k<c.length;k++)A.fields.push({name:"record_"+k,type:"RECORD",value:c[k]});return A.fields.push({name:"strings",type:"LITERAL",value:h}),A}var v7={parse:Ps,make:Ns},O6=[{begin:0,end:127},{begin:128,end:255},{begin:256,end:383},{begin:384,end:591},{begin:592,end:687},{begin:688,end:767},{begin:768,end:879},{begin:880,end:1023},{begin:11392,end:11519},{begin:1024,end:1279},{begin:1328,end:1423},{begin:1424,end:1535},{begin:42240,end:42559},{begin:1536,end:1791},{begin:1984,end:2047},{begin:2304,end:2431},{begin:2432,end:2559},{begin:2560,end:2687},{begin:2688,end:2815},{begin:2816,end:2943},{begin:2944,end:3071},{begin:3072,end:3199},{begin:3200,end:3327},{begin:3328,end:3455},{begin:3584,end:3711},{begin:3712,end:3839},{begin:4256,end:4351},{begin:6912,end:7039},{begin:4352,end:4607},{begin:7680,end:7935},{begin:7936,end:8191},{begin:8192,end:8303},{begin:8304,end:8351},{begin:8352,end:8399},{begin:8400,end:8447},{begin:8448,end:8527},{begin:8528,end:8591},{begin:8592,end:8703},{begin:8704,end:8959},{begin:8960,end:9215},{begin:9216,end:9279},{begin:9280,end:9311},{begin:9312,end:9471},{begin:9472,end:9599},{begin:9600,end:9631},{begin:9632,end:9727},{begin:9728,end:9983},{begin:9984,end:10175},{begin:12288,end:12351},{begin:12352,end:12447},{begin:12448,end:12543},{begin:12544,end:12591},{begin:12592,end:12687},{begin:43072,end:43135},{begin:12800,end:13055},{begin:13056,end:13311},{begin:44032,end:55215},{begin:55296,end:57343},{begin:67840,end:67871},{begin:19968,end:40959},{begin:57344,end:63743},{begin:12736,end:12783},{begin:64256,end:64335},{begin:64336,end:65023},{begin:65056,end:65071},{begin:65040,end:65055},{begin:65104,end:65135},{begin:65136,end:65279},{begin:65280,end:65519},{begin:65520,end:65535},{begin:3840,end:4095},{begin:1792,end:1871},{begin:1920,end:1983},{begin:3456,end:3583},{begin:4096,end:4255},{begin:4608,end:4991},{begin:5024,end:5119},{begin:5120,end:5759},{begin:5760,end:5791},{begin:5792,end:5887},{begin:6016,end:6143},{begin:6144,end:6319},{begin:10240,end:10495},{begin:40960,end:42127},{begin:5888,end:5919},{begin:66304,end:66351},{begin:66352,end:66383},{begin:66560,end:66639},{begin:118784,end:119039},{begin:119808,end:120831},{begin:1044480,end:1048573},{begin:65024,end:65039},{begin:917504,end:917631},{begin:6400,end:6479},{begin:6480,end:6527},{begin:6528,end:6623},{begin:6656,end:6687},{begin:11264,end:11359},{begin:11568,end:11647},{begin:19904,end:19967},{begin:43008,end:43055},{begin:65536,end:65663},{begin:65856,end:65935},{begin:66432,end:66463},{begin:66464,end:66527},{begin:66640,end:66687},{begin:66688,end:66735},{begin:67584,end:67647},{begin:68096,end:68191},{begin:119552,end:119647},{begin:73728,end:74751},{begin:119648,end:119679},{begin:7040,end:7103},{begin:7168,end:7247},{begin:7248,end:7295},{begin:43136,end:43231},{begin:43264,end:43311},{begin:43312,end:43359},{begin:43520,end:43615},{begin:65936,end:65999},{begin:66e3,end:66047},{begin:66208,end:66271},{begin:127024,end:127135}];function Us(r){for(var t=0;t<O6.length;t+=1){var e=O6[t];if(r>=e.begin&&r<e.end)return t}return-1}function Hs(r,t){var e={},n=new Y.Parser(r,t);e.version=n.parseUShort(),e.xAvgCharWidth=n.parseShort(),e.usWeightClass=n.parseUShort(),e.usWidthClass=n.parseUShort(),e.fsType=n.parseUShort(),e.ySubscriptXSize=n.parseShort(),e.ySubscriptYSize=n.parseShort(),e.ySubscriptXOffset=n.parseShort(),e.ySubscriptYOffset=n.parseShort(),e.ySuperscriptXSize=n.parseShort(),e.ySuperscriptYSize=n.parseShort(),e.ySuperscriptXOffset=n.parseShort(),e.ySuperscriptYOffset=n.parseShort(),e.yStrikeoutSize=n.parseShort(),e.yStrikeoutPosition=n.parseShort(),e.sFamilyClass=n.parseShort(),e.panose=[];for(var s=0;s<10;s++)e.panose[s]=n.parseByte();return e.ulUnicodeRange1=n.parseULong(),e.ulUnicodeRange2=n.parseULong(),e.ulUnicodeRange3=n.parseULong(),e.ulUnicodeRange4=n.parseULong(),e.achVendID=String.fromCharCode(n.parseByte(),n.parseByte(),n.parseByte(),n.parseByte()),e.fsSelection=n.parseUShort(),e.usFirstCharIndex=n.parseUShort(),e.usLastCharIndex=n.parseUShort(),e.sTypoAscender=n.parseShort(),e.sTypoDescender=n.parseShort(),e.sTypoLineGap=n.parseShort(),e.usWinAscent=n.parseUShort(),e.usWinDescent=n.parseUShort(),e.version>=1&&(e.ulCodePageRange1=n.parseULong(),e.ulCodePageRange2=n.parseULong()),e.version>=2&&(e.sxHeight=n.parseShort(),e.sCapHeight=n.parseShort(),e.usDefaultChar=n.parseUShort(),e.usBreakChar=n.parseUShort(),e.usMaxContent=n.parseUShort()),e}function Gs(r){return new z.Table("OS/2",[{name:"version",type:"USHORT",value:3},{name:"xAvgCharWidth",type:"SHORT",value:0},{name:"usWeightClass",type:"USHORT",value:0},{name:"usWidthClass",type:"USHORT",value:0},{name:"fsType",type:"USHORT",value:0},{name:"ySubscriptXSize",type:"SHORT",value:650},{name:"ySubscriptYSize",type:"SHORT",value:699},{name:"ySubscriptXOffset",type:"SHORT",value:0},{name:"ySubscriptYOffset",type:"SHORT",value:140},{name:"ySuperscriptXSize",type:"SHORT",value:650},{name:"ySuperscriptYSize",type:"SHORT",value:699},{name:"ySuperscriptXOffset",type:"SHORT",value:0},{name:"ySuperscriptYOffset",type:"SHORT",value:479},{name:"yStrikeoutSize",type:"SHORT",value:49},{name:"yStrikeoutPosition",type:"SHORT",value:258},{name:"sFamilyClass",type:"SHORT",value:0},{name:"bFamilyType",type:"BYTE",value:0},{name:"bSerifStyle",type:"BYTE",value:0},{name:"bWeight",type:"BYTE",value:0},{name:"bProportion",type:"BYTE",value:0},{name:"bContrast",type:"BYTE",value:0},{name:"bStrokeVariation",type:"BYTE",value:0},{name:"bArmStyle",type:"BYTE",value:0},{name:"bLetterform",type:"BYTE",value:0},{name:"bMidline",type:"BYTE",value:0},{name:"bXHeight",type:"BYTE",value:0},{name:"ulUnicodeRange1",type:"ULONG",value:0},{name:"ulUnicodeRange2",type:"ULONG",value:0},{name:"ulUnicodeRange3",type:"ULONG",value:0},{name:"ulUnicodeRange4",type:"ULONG",value:0},{name:"achVendID",type:"CHARARRAY",value:"XXXX"},{name:"fsSelection",type:"USHORT",value:0},{name:"usFirstCharIndex",type:"USHORT",value:0},{name:"usLastCharIndex",type:"USHORT",value:0},{name:"sTypoAscender",type:"SHORT",value:0},{name:"sTypoDescender",type:"SHORT",value:0},{name:"sTypoLineGap",type:"SHORT",value:0},{name:"usWinAscent",type:"USHORT",value:0},{name:"usWinDescent",type:"USHORT",value:0},{name:"ulCodePageRange1",type:"ULONG",value:0},{name:"ulCodePageRange2",type:"ULONG",value:0},{name:"sxHeight",type:"SHORT",value:0},{name:"sCapHeight",type:"SHORT",value:0},{name:"usDefaultChar",type:"USHORT",value:0},{name:"usBreakChar",type:"USHORT",value:0},{name:"usMaxContext",type:"USHORT",value:0}],r)}var x6={parse:Hs,make:Gs,unicodeRanges:O6,getUnicodeRange:Us};function zs(r,t){var e={},n=new Y.Parser(r,t);switch(e.version=n.parseVersion(),e.italicAngle=n.parseFixed(),e.underlinePosition=n.parseShort(),e.underlineThickness=n.parseShort(),e.isFixedPitch=n.parseULong(),e.minMemType42=n.parseULong(),e.maxMemType42=n.parseULong(),e.minMemType1=n.parseULong(),e.maxMemType1=n.parseULong(),e.version){case 1:e.names=Be.slice();break;case 2:e.numberOfGlyphs=n.parseUShort(),e.glyphNameIndex=new Array(e.numberOfGlyphs);for(var s=0;s<e.numberOfGlyphs;s++)e.glyphNameIndex[s]=n.parseUShort();e.names=[];for(var i=0;i<e.numberOfGlyphs;i++)if(e.glyphNameIndex[i]>=Be.length){var a=n.parseChar();e.names.push(n.parseString(a))}break;case 2.5:e.numberOfGlyphs=n.parseUShort(),e.offset=new Array(e.numberOfGlyphs);for(var o=0;o<e.numberOfGlyphs;o++)e.offset[o]=n.parseChar();break}return e}function Xs(){return new z.Table("post",[{name:"version",type:"FIXED",value:196608},{name:"italicAngle",type:"FIXED",value:0},{name:"underlinePosition",type:"FWORD",value:0},{name:"underlineThickness",type:"FWORD",value:0},{name:"isFixedPitch",type:"ULONG",value:0},{name:"minMemType42",type:"ULONG",value:0},{name:"maxMemType42",type:"ULONG",value:0},{name:"minMemType1",type:"ULONG",value:0},{name:"maxMemType1",type:"ULONG",value:0}])}var m7={parse:zs,make:Xs},N1=new Array(9);N1[1]=function(){var t=this.offset+this.relativeOffset,e=this.parseUShort();if(e===1)return{substFormat:1,coverage:this.parsePointer(R.coverage),deltaGlyphId:this.parseUShort()};if(e===2)return{substFormat:2,coverage:this.parsePointer(R.coverage),substitute:this.parseOffset16List()};J.assert(!1,"0x"+t.toString(16)+": lookup type 1 format must be 1 or 2.")},N1[2]=function(){var t=this.parseUShort();return J.argument(t===1,"GSUB Multiple Substitution Subtable identifier-format must be 1"),{substFormat:t,coverage:this.parsePointer(R.coverage),sequences:this.parseListOfLists()}},N1[3]=function(){var t=this.parseUShort();return J.argument(t===1,"GSUB Alternate Substitution Subtable identifier-format must be 1"),{substFormat:t,coverage:this.parsePointer(R.coverage),alternateSets:this.parseListOfLists()}},N1[4]=function(){var t=this.parseUShort();return J.argument(t===1,"GSUB ligature table identifier-format must be 1"),{substFormat:t,coverage:this.parsePointer(R.coverage),ligatureSets:this.parseListOfLists(function(){return{ligGlyph:this.parseUShort(),components:this.parseUShortList(this.parseUShort()-1)}})}};var Ke={sequenceIndex:R.uShort,lookupListIndex:R.uShort};N1[5]=function(){var t=this.offset+this.relativeOffset,e=this.parseUShort();if(e===1)return{substFormat:e,coverage:this.parsePointer(R.coverage),ruleSets:this.parseListOfLists(function(){var i=this.parseUShort(),a=this.parseUShort();return{input:this.parseUShortList(i-1),lookupRecords:this.parseRecordList(a,Ke)}})};if(e===2)return{substFormat:e,coverage:this.parsePointer(R.coverage),classDef:this.parsePointer(R.classDef),classSets:this.parseListOfLists(function(){var i=this.parseUShort(),a=this.parseUShort();return{classes:this.parseUShortList(i-1),lookupRecords:this.parseRecordList(a,Ke)}})};if(e===3){var n=this.parseUShort(),s=this.parseUShort();return{substFormat:e,coverages:this.parseList(n,R.pointer(R.coverage)),lookupRecords:this.parseRecordList(s,Ke)}}J.assert(!1,"0x"+t.toString(16)+": lookup type 5 format must be 1, 2 or 3.")},N1[6]=function(){var t=this.offset+this.relativeOffset,e=this.parseUShort();if(e===1)return{substFormat:1,coverage:this.parsePointer(R.coverage),chainRuleSets:this.parseListOfLists(function(){return{backtrack:this.parseUShortList(),input:this.parseUShortList(this.parseShort()-1),lookahead:this.parseUShortList(),lookupRecords:this.parseRecordList(Ke)}})};if(e===2)return{substFormat:2,coverage:this.parsePointer(R.coverage),backtrackClassDef:this.parsePointer(R.classDef),inputClassDef:this.parsePointer(R.classDef),lookaheadClassDef:this.parsePointer(R.classDef),chainClassSet:this.parseListOfLists(function(){return{backtrack:this.parseUShortList(),input:this.parseUShortList(this.parseShort()-1),lookahead:this.parseUShortList(),lookupRecords:this.parseRecordList(Ke)}})};if(e===3)return{substFormat:3,backtrackCoverage:this.parseList(R.pointer(R.coverage)),inputCoverage:this.parseList(R.pointer(R.coverage)),lookaheadCoverage:this.parseList(R.pointer(R.coverage)),lookupRecords:this.parseRecordList(Ke)};J.assert(!1,"0x"+t.toString(16)+": lookup type 6 format must be 1, 2 or 3.")},N1[7]=function(){var t=this.parseUShort();J.argument(t===1,"GSUB Extension Substitution subtable identifier-format must be 1");var e=this.parseUShort(),n=new R(this.data,this.offset+this.parseULong());return{substFormat:1,lookupType:e,extension:N1[e].call(n)}},N1[8]=function(){var t=this.parseUShort();return J.argument(t===1,"GSUB Reverse Chaining Contextual Single Substitution Subtable identifier-format must be 1"),{substFormat:t,coverage:this.parsePointer(R.coverage),backtrackCoverage:this.parseList(R.pointer(R.coverage)),lookaheadCoverage:this.parseList(R.pointer(R.coverage)),substitutes:this.parseUShortList()}};function Ws(r,t){t=t||0;var e=new R(r,t),n=e.parseVersion(1);return J.argument(n===1||n===1.1,"Unsupported GSUB table version."),n===1?{version:n,scripts:e.parseScriptList(),features:e.parseFeatureList(),lookups:e.parseLookupList(N1)}:{version:n,scripts:e.parseScriptList(),features:e.parseFeatureList(),lookups:e.parseLookupList(N1),variations:e.parseFeatureVariationsList()}}var qe=new Array(9);qe[1]=function(t){return t.substFormat===1?new z.Table("substitutionTable",[{name:"substFormat",type:"USHORT",value:1},{name:"coverage",type:"TABLE",value:new z.Coverage(t.coverage)},{name:"deltaGlyphID",type:"USHORT",value:t.deltaGlyphId}]):new z.Table("substitutionTable",[{name:"substFormat",type:"USHORT",value:2},{name:"coverage",type:"TABLE",value:new z.Coverage(t.coverage)}].concat(z.ushortList("substitute",t.substitute)))},qe[2]=function(t){return J.assert(t.substFormat===1,"Lookup type 2 substFormat must be 1."),new z.Table("substitutionTable",[{name:"substFormat",type:"USHORT",value:1},{name:"coverage",type:"TABLE",value:new z.Coverage(t.coverage)}].concat(z.tableList("seqSet",t.sequences,function(e){return new z.Table("sequenceSetTable",z.ushortList("sequence",e))})))},qe[3]=function(t){return J.assert(t.substFormat===1,"Lookup type 3 substFormat must be 1."),new z.Table("substitutionTable",[{name:"substFormat",type:"USHORT",value:1},{name:"coverage",type:"TABLE",value:new z.Coverage(t.coverage)}].concat(z.tableList("altSet",t.alternateSets,function(e){return new z.Table("alternateSetTable",z.ushortList("alternate",e))})))},qe[4]=function(t){return J.assert(t.substFormat===1,"Lookup type 4 substFormat must be 1."),new z.Table("substitutionTable",[{name:"substFormat",type:"USHORT",value:1},{name:"coverage",type:"TABLE",value:new z.Coverage(t.coverage)}].concat(z.tableList("ligSet",t.ligatureSets,function(e){return new z.Table("ligatureSetTable",z.tableList("ligature",e,function(n){return new z.Table("ligatureTable",[{name:"ligGlyph",type:"USHORT",value:n.ligGlyph}].concat(z.ushortList("component",n.components,n.components.length+1)))}))})))},qe[6]=function(t){if(t.substFormat===1){var e=new z.Table("chainContextTable",[{name:"substFormat",type:"USHORT",value:t.substFormat},{name:"coverage",type:"TABLE",value:new z.Coverage(t.coverage)}].concat(z.tableList("chainRuleSet",t.chainRuleSets,function(i){return new z.Table("chainRuleSetTable",z.tableList("chainRule",i,function(a){var o=z.ushortList("backtrackGlyph",a.backtrack,a.backtrack.length).concat(z.ushortList("inputGlyph",a.input,a.input.length+1)).concat(z.ushortList("lookaheadGlyph",a.lookahead,a.lookahead.length)).concat(z.ushortList("substitution",[],a.lookupRecords.length));return a.lookupRecords.forEach(function(u,l){o=o.concat({name:"sequenceIndex"+l,type:"USHORT",value:u.sequenceIndex}).concat({name:"lookupListIndex"+l,type:"USHORT",value:u.lookupListIndex})}),new z.Table("chainRuleTable",o)}))})));return e}else if(t.substFormat===2)J.assert(!1,"lookup type 6 format 2 is not yet supported.");else if(t.substFormat===3){var n=[{name:"substFormat",type:"USHORT",value:t.substFormat}];n.push({name:"backtrackGlyphCount",type:"USHORT",value:t.backtrackCoverage.length}),t.backtrackCoverage.forEach(function(i,a){n.push({name:"backtrackCoverage"+a,type:"TABLE",value:new z.Coverage(i)})}),n.push({name:"inputGlyphCount",type:"USHORT",value:t.inputCoverage.length}),t.inputCoverage.forEach(function(i,a){n.push({name:"inputCoverage"+a,type:"TABLE",value:new z.Coverage(i)})}),n.push({name:"lookaheadGlyphCount",type:"USHORT",value:t.lookaheadCoverage.length}),t.lookaheadCoverage.forEach(function(i,a){n.push({name:"lookaheadCoverage"+a,type:"TABLE",value:new z.Coverage(i)})}),n.push({name:"substitutionCount",type:"USHORT",value:t.lookupRecords.length}),t.lookupRecords.forEach(function(i,a){n=n.concat({name:"sequenceIndex"+a,type:"USHORT",value:i.sequenceIndex}).concat({name:"lookupListIndex"+a,type:"USHORT",value:i.lookupListIndex})});var s=new z.Table("chainContextTable",n);return s}J.assert(!1,"lookup type 6 format must be 1, 2 or 3.")};function Ys(r){return new z.Table("GSUB",[{name:"version",type:"ULONG",value:65536},{name:"scripts",type:"TABLE",value:new z.ScriptList(r.scripts)},{name:"features",type:"TABLE",value:new z.FeatureList(r.features)},{name:"lookups",type:"TABLE",value:new z.LookupList(r.lookups,qe)}])}var b7={parse:Ws,make:Ys};function js(r,t){var e=new Y.Parser(r,t),n=e.parseULong();J.argument(n===1,"Unsupported META table version."),e.parseULong(),e.parseULong();for(var s=e.parseULong(),i={},a=0;a<s;a++){var o=e.parseTag(),u=e.parseULong(),l=e.parseULong(),c=Ve.UTF8(r,t+u,l);i[o]=c}return i}function Vs(r){var t=Object.keys(r).length,e="",n=16+t*12,s=new z.Table("meta",[{name:"version",type:"ULONG",value:1},{name:"flags",type:"ULONG",value:0},{name:"offset",type:"ULONG",value:n},{name:"numTags",type:"ULONG",value:t}]);for(var i in r){var a=e.length;e+=r[i],s.fields.push({name:"tag "+i,type:"TAG",value:i}),s.fields.push({name:"offset "+i,type:"ULONG",value:n+a}),s.fields.push({name:"length "+i,type:"ULONG",value:r[i].length})}return s.fields.push({name:"stringPool",type:"CHARARRAY",value:e}),s}var y7={parse:js,make:Vs};function F7(r){return Math.log(r)/Math.log(2)|0}function R6(r){for(;r.length%4!==0;)r.push(0);for(var t=0,e=0;e<r.length;e+=4)t+=(r[e]<<24)+(r[e+1]<<16)+(r[e+2]<<8)+r[e+3];return t%=Math.pow(2,32),t}function C7(r,t,e,n){return new z.Record("Table Record",[{name:"tag",type:"TAG",value:r!==void 0?r:""},{name:"checkSum",type:"ULONG",value:t!==void 0?t:0},{name:"offset",type:"ULONG",value:e!==void 0?e:0},{name:"length",type:"ULONG",value:n!==void 0?n:0}])}function E7(r){var t=new z.Table("sfnt",[{name:"version",type:"TAG",value:"OTTO"},{name:"numTables",type:"USHORT",value:0},{name:"searchRange",type:"USHORT",value:0},{name:"entrySelector",type:"USHORT",value:0},{name:"rangeShift",type:"USHORT",value:0}]);t.tables=r,t.numTables=r.length;var e=Math.pow(2,F7(t.numTables));t.searchRange=16*e,t.entrySelector=F7(e),t.rangeShift=t.numTables*16-t.searchRange;for(var n=[],s=[],i=t.sizeOf()+C7().sizeOf()*t.numTables;i%4!==0;)i+=1,s.push({name:"padding",type:"BYTE",value:0});for(var a=0;a<r.length;a+=1){var o=r[a];J.argument(o.tableName.length===4,"Table name"+o.tableName+" is invalid.");var u=o.sizeOf(),l=C7(o.tableName,R6(o.encode()),i,u);for(n.push({name:l.tag+" Table Record",type:"RECORD",value:l}),s.push({name:o.tableName+" table",type:"RECORD",value:o}),i+=u,J.argument(!isNaN(i),"Something went wrong calculating the offset.");i%4!==0;)i+=1,s.push({name:"padding",type:"BYTE",value:0})}return n.sort(function(c,h){return c.value.tag>h.value.tag?1:-1}),t.fields=t.fields.concat(n),t.fields=t.fields.concat(s),t}function S7(r,t,e){for(var n=0;n<t.length;n+=1){var s=r.charToGlyphIndex(t[n]);if(s>0){var i=r.glyphs.get(s);return i.getMetrics()}}return e}function Ks(r){for(var t=0,e=0;e<r.length;e+=1)t+=r[e];return t/r.length}function qs(r){for(var t=[],e=[],n=[],s=[],i=[],a=[],o=[],u,l=0,c=0,h=0,f=0,d=0,D=0;D<r.glyphs.length;D+=1){var m=r.glyphs.get(D),v=m.unicode|0;if(isNaN(m.advanceWidth))throw new Error("Glyph "+m.name+" ("+D+"): advanceWidth is not a number.");(u>v||u===void 0)&&v>0&&(u=v),l<v&&(l=v);var F=x6.getUnicodeRange(v);if(F<32)c|=1<<F;else if(F<64)h|=1<<F-32;else if(F<96)f|=1<<F-64;else if(F<123)d|=1<<F-96;else throw new Error("Unicode ranges bits > 123 are reserved for internal usage");if(m.name!==".notdef"){var C=m.getMetrics();t.push(C.xMin),e.push(C.yMin),n.push(C.xMax),s.push(C.yMax),a.push(C.leftSideBearing),o.push(C.rightSideBearing),i.push(m.advanceWidth)}}var S={xMin:Math.min.apply(null,t),yMin:Math.min.apply(null,e),xMax:Math.max.apply(null,n),yMax:Math.max.apply(null,s),advanceWidthMax:Math.max.apply(null,i),advanceWidthAvg:Ks(i),minLeftSideBearing:Math.min.apply(null,a),maxLeftSideBearing:Math.max.apply(null,a),minRightSideBearing:Math.min.apply(null,o)};S.ascender=r.ascender,S.descender=r.descender;var B=o7.make({flags:3,unitsPerEm:r.unitsPerEm,xMin:S.xMin,yMin:S.yMin,xMax:S.xMax,yMax:S.yMax,lowestRecPPEM:3,createdTimestamp:r.createdTimestamp}),w=u7.make({ascender:S.ascender,descender:S.descender,advanceWidthMax:S.advanceWidthMax,minLeftSideBearing:S.minLeftSideBearing,minRightSideBearing:S.minRightSideBearing,xMaxExtent:S.maxLeftSideBearing+(S.xMax-S.xMin),numberOfHMetrics:r.glyphs.length}),x=h7.make(r.glyphs.length),O=x6.make(Object.assign({xAvgCharWidth:Math.round(S.advanceWidthAvg),usFirstCharIndex:u,usLastCharIndex:l,ulUnicodeRange1:c,ulUnicodeRange2:h,ulUnicodeRange3:f,ulUnicodeRange4:d,sTypoAscender:S.ascender,sTypoDescender:S.descender,sTypoLineGap:0,usWinAscent:S.yMax,usWinDescent:Math.abs(S.yMin),ulCodePageRange1:1,sxHeight:S7(r,"xyvw",{yMax:Math.round(S.ascender/2)}).yMax,sCapHeight:S7(r,"HIKLEFJMNTZBDPRAGOQSUVWXY",S).yMax,usDefaultChar:r.hasChar(" ")?32:0,usBreakChar:r.hasChar(" ")?32:0},r.tables.os2)),T=l7.make(r.glyphs),A=W4.make(r.glyphs),k=r.getEnglishName("fontFamily"),$=r.getEnglishName("fontSubfamily"),I=k+" "+$,M=r.getEnglishName("postScriptName");M||(M=k.replace(/\s/g,"")+"-"+$);var L={};for(var U in r.names)L[U]=r.names[U];L.uniqueID||(L.uniqueID={en:r.getEnglishName("manufacturer")+":"+I}),L.postScriptName||(L.postScriptName={en:M}),L.preferredFamily||(L.preferredFamily=r.names.fontFamily),L.preferredSubfamily||(L.preferredSubfamily=r.names.fontSubfamily);var G=[],X=v7.make(L,G),H=G.length>0?c7.make(G):void 0,V=m7.make(),e1=a7.make(r.glyphs,{version:r.getEnglishName("version"),fullName:I,familyName:k,weightName:$,postScriptName:M,unitsPerEm:r.unitsPerEm,fontBBox:[0,S.yMin,S.ascender,S.advanceWidthMax]}),t1=r.metas&&Object.keys(r.metas).length>0?y7.make(r.metas):void 0,n1=[B,w,x,O,X,A,V,e1,T];H&&n1.push(H),r.tables.gsub&&n1.push(b7.make(r.tables.gsub)),t1&&n1.push(t1);for(var s1=E7(n1),m1=s1.encode(),b1=R6(m1),p1=s1.fields,h1=!1,a1=0;a1<p1.length;a1+=1)if(p1[a1].name==="head table"){p1[a1].value.checkSumAdjustment=2981146554-b1,h1=!0;break}if(!h1)throw new Error("Could not find head table with checkSum to adjust.");return s1}var Zs={make:E7,fontToTable:qs,computeCheckSum:R6};function A6(r,t){for(var e=0,n=r.length-1;e<=n;){var s=e+n>>>1,i=r[s].tag;if(i===t)return s;i<t?e=s+1:n=s-1}return-e-1}function T7(r,t){for(var e=0,n=r.length-1;e<=n;){var s=e+n>>>1,i=r[s];if(i===t)return s;i<t?e=s+1:n=s-1}return-e-1}function w7(r,t){for(var e,n=0,s=r.length-1;n<=s;){var i=n+s>>>1;e=r[i];var a=e.start;if(a===t)return e;a<t?n=i+1:s=i-1}if(n>0)return e=r[n-1],t>e.end?0:e}function w2(r,t){this.font=r,this.tableName=t}w2.prototype={searchTag:A6,binSearch:T7,getTable:function(r){var t=this.font.tables[this.tableName];return!t&&r&&(t=this.font.tables[this.tableName]=this.createDefaultTable()),t},getScriptNames:function(){var r=this.getTable();return r?r.scripts.map(function(t){return t.tag}):[]},getDefaultScriptName:function(){var r=this.getTable();if(r){for(var t=!1,e=0;e<r.scripts.length;e++){var n=r.scripts[e].tag;if(n==="DFLT")return n;n==="latn"&&(t=!0)}if(t)return"latn"}},getScriptTable:function(r,t){var e=this.getTable(t);if(e){r=r||"DFLT";var n=e.scripts,s=A6(e.scripts,r);if(s>=0)return n[s].script;if(t){var i={tag:r,script:{defaultLangSys:{reserved:0,reqFeatureIndex:65535,featureIndexes:[]},langSysRecords:[]}};return n.splice(-1-s,0,i),i.script}}},getLangSysTable:function(r,t,e){var n=this.getScriptTable(r,e);if(n){if(!t||t==="dflt"||t==="DFLT")return n.defaultLangSys;var s=A6(n.langSysRecords,t);if(s>=0)return n.langSysRecords[s].langSys;if(e){var i={tag:t,langSys:{reserved:0,reqFeatureIndex:65535,featureIndexes:[]}};return n.langSysRecords.splice(-1-s,0,i),i.langSys}}},getFeatureTable:function(r,t,e,n){var s=this.getLangSysTable(r,t,n);if(s){for(var i,a=s.featureIndexes,o=this.font.tables[this.tableName].features,u=0;u<a.length;u++)if(i=o[a[u]],i.tag===e)return i.feature;if(n){var l=o.length;return J.assert(l===0||e>=o[l-1].tag,"Features must be added in alphabetical order."),i={tag:e,feature:{params:0,lookupListIndexes:[]}},o.push(i),a.push(l),i.feature}}},getLookupTables:function(r,t,e,n,s){var i=this.getFeatureTable(r,t,e,s),a=[];if(i){for(var o,u=i.lookupListIndexes,l=this.font.tables[this.tableName].lookups,c=0;c<u.length;c++)o=l[u[c]],o.lookupType===n&&a.push(o);if(a.length===0&&s){o={lookupType:n,lookupFlag:0,subtables:[],markFilteringSet:void 0};var h=l.length;return l.push(o),u.push(h),[o]}}return a},getGlyphClass:function(r,t){switch(r.format){case 1:return r.startGlyph<=t&&t<r.startGlyph+r.classes.length?r.classes[t-r.startGlyph]:0;case 2:var e=w7(r.ranges,t);return e?e.classId:0}},getCoverageIndex:function(r,t){switch(r.format){case 1:var e=T7(r.glyphs,t);return e>=0?e:-1;case 2:var n=w7(r.ranges,t);return n?n.index+t-n.start:-1}},expandCoverage:function(r){if(r.format===1)return r.glyphs;for(var t=[],e=r.ranges,n=0;n<e.length;n++)for(var s=e[n],i=s.start,a=s.end,o=i;o<=a;o++)t.push(o);return t}};function B2(r){w2.call(this,r,"gpos")}B2.prototype=w2.prototype,B2.prototype.init=function(){var r=this.getDefaultScriptName();this.defaultKerningTables=this.getKerningTables(r)},B2.prototype.getKerningValue=function(r,t,e){for(var n=0;n<r.length;n++)for(var s=r[n].subtables,i=0;i<s.length;i++){var a=s[i],o=this.getCoverageIndex(a.coverage,t);if(!(o<0))switch(a.posFormat){case 1:for(var u=a.pairSets[o],l=0;l<u.length;l++){var c=u[l];if(c.secondGlyph===e)return c.value1&&c.value1.xAdvance||0}break;case 2:var h=this.getGlyphClass(a.classDef1,t),f=this.getGlyphClass(a.classDef2,e),d=a.classRecords[h][f];return d.value1&&d.value1.xAdvance||0}}return 0},B2.prototype.getKerningTables=function(r,t){if(this.font.tables.gpos)return this.getLookupTables(r,t,"kern",2)};function A1(r){w2.call(this,r,"gsub")}function Js(r,t){var e=r.length;if(e!==t.length)return!1;for(var n=0;n<e;n++)if(r[n]!==t[n])return!1;return!0}function k6(r,t,e){for(var n=r.subtables,s=0;s<n.length;s++){var i=n[s];if(i.substFormat===t)return i}if(e)return n.push(e),e}A1.prototype=w2.prototype,A1.prototype.createDefaultTable=function(){return{version:1,scripts:[{tag:"DFLT",script:{defaultLangSys:{reserved:0,reqFeatureIndex:65535,featureIndexes:[]},langSysRecords:[]}}],features:[],lookups:[]}},A1.prototype.getSingle=function(r,t,e){for(var n=[],s=this.getLookupTables(t,e,r,1),i=0;i<s.length;i++)for(var a=s[i].subtables,o=0;o<a.length;o++){var u=a[o],l=this.expandCoverage(u.coverage),c=void 0;if(u.substFormat===1){var h=u.deltaGlyphId;for(c=0;c<l.length;c++){var f=l[c];n.push({sub:f,by:f+h})}}else{var d=u.substitute;for(c=0;c<l.length;c++)n.push({sub:l[c],by:d[c]})}}return n},A1.prototype.getMultiple=function(r,t,e){for(var n=[],s=this.getLookupTables(t,e,r,2),i=0;i<s.length;i++)for(var a=s[i].subtables,o=0;o<a.length;o++){var u=a[o],l=this.expandCoverage(u.coverage),c=void 0;for(c=0;c<l.length;c++){var h=l[c],f=u.sequences[c];n.push({sub:h,by:f})}}return n},A1.prototype.getAlternates=function(r,t,e){for(var n=[],s=this.getLookupTables(t,e,r,3),i=0;i<s.length;i++)for(var a=s[i].subtables,o=0;o<a.length;o++)for(var u=a[o],l=this.expandCoverage(u.coverage),c=u.alternateSets,h=0;h<l.length;h++)n.push({sub:l[h],by:c[h]});return n},A1.prototype.getLigatures=function(r,t,e){for(var n=[],s=this.getLookupTables(t,e,r,4),i=0;i<s.length;i++)for(var a=s[i].subtables,o=0;o<a.length;o++)for(var u=a[o],l=this.expandCoverage(u.coverage),c=u.ligatureSets,h=0;h<l.length;h++)for(var f=l[h],d=c[h],D=0;D<d.length;D++){var m=d[D];n.push({sub:[f].concat(m.components),by:m.ligGlyph})}return n},A1.prototype.addSingle=function(r,t,e,n){var s=this.getLookupTables(e,n,r,1,!0)[0],i=k6(s,2,{substFormat:2,coverage:{format:1,glyphs:[]},substitute:[]});J.assert(i.coverage.format===1,"Single: unable to modify coverage table format "+i.coverage.format);var a=t.sub,o=this.binSearch(i.coverage.glyphs,a);o<0&&(o=-1-o,i.coverage.glyphs.splice(o,0,a),i.substitute.splice(o,0,0)),i.substitute[o]=t.by},A1.prototype.addMultiple=function(r,t,e,n){J.assert(t.by instanceof Array&&t.by.length>1,'Multiple: "by" must be an array of two or more ids');var s=this.getLookupTables(e,n,r,2,!0)[0],i=k6(s,1,{substFormat:1,coverage:{format:1,glyphs:[]},sequences:[]});J.assert(i.coverage.format===1,"Multiple: unable to modify coverage table format "+i.coverage.format);var a=t.sub,o=this.binSearch(i.coverage.glyphs,a);o<0&&(o=-1-o,i.coverage.glyphs.splice(o,0,a),i.sequences.splice(o,0,0)),i.sequences[o]=t.by},A1.prototype.addAlternate=function(r,t,e,n){var s=this.getLookupTables(e,n,r,3,!0)[0],i=k6(s,1,{substFormat:1,coverage:{format:1,glyphs:[]},alternateSets:[]});J.assert(i.coverage.format===1,"Alternate: unable to modify coverage table format "+i.coverage.format);var a=t.sub,o=this.binSearch(i.coverage.glyphs,a);o<0&&(o=-1-o,i.coverage.glyphs.splice(o,0,a),i.alternateSets.splice(o,0,0)),i.alternateSets[o]=t.by},A1.prototype.addLigature=function(r,t,e,n){var s=this.getLookupTables(e,n,r,4,!0)[0],i=s.subtables[0];i||(i={substFormat:1,coverage:{format:1,glyphs:[]},ligatureSets:[]},s.subtables[0]=i),J.assert(i.coverage.format===1,"Ligature: unable to modify coverage table format "+i.coverage.format);var a=t.sub[0],o=t.sub.slice(1),u={ligGlyph:t.by,components:o},l=this.binSearch(i.coverage.glyphs,a);if(l>=0){for(var c=i.ligatureSets[l],h=0;h<c.length;h++)if(Js(c[h].components,o))return;c.push(u)}else l=-1-l,i.coverage.glyphs.splice(l,0,a),i.ligatureSets.splice(l,0,[u])},A1.prototype.getFeature=function(r,t,e){if(/ss\d\d/.test(r))return this.getSingle(r,t,e);switch(r){case"aalt":case"salt":return this.getSingle(r,t,e).concat(this.getAlternates(r,t,e));case"dlig":case"liga":case"rlig":return this.getLigatures(r,t,e);case"ccmp":return this.getMultiple(r,t,e).concat(this.getLigatures(r,t,e));case"stch":return this.getMultiple(r,t,e)}},A1.prototype.add=function(r,t,e,n){if(/ss\d\d/.test(r))return this.addSingle(r,t,e,n);switch(r){case"aalt":case"salt":return typeof t.by=="number"?this.addSingle(r,t,e,n):this.addAlternate(r,t,e,n);case"dlig":case"liga":case"rlig":return this.addLigature(r,t,e,n);case"ccmp":return t.by instanceof Array?this.addMultiple(r,t,e,n):this.addLigature(r,t,e,n)}};function Qs(){return typeof window<"u"}function B7(r){for(var t=new ArrayBuffer(r.length),e=new Uint8Array(t),n=0;n<r.length;++n)e[n]=r[n];return t}function ei(r){for(var t=new Buffer(r.byteLength),e=new Uint8Array(r),n=0;n<t.length;++n)t[n]=e[n];return t}function O2(r,t){if(!r)throw t}function O7(r,t,e,n,s){var i;return(t&n)>0?(i=r.parseByte(),t&s||(i=-i),i=e+i):(t&s)>0?i=e:i=e+r.parseShort(),i}function x7(r,t,e){var n=new Y.Parser(t,e);r.numberOfContours=n.parseShort(),r._xMin=n.parseShort(),r._yMin=n.parseShort(),r._xMax=n.parseShort(),r._yMax=n.parseShort();var s,i;if(r.numberOfContours>0){for(var a=r.endPointIndices=[],o=0;o<r.numberOfContours;o+=1)a.push(n.parseUShort());r.instructionLength=n.parseUShort(),r.instructions=[];for(var u=0;u<r.instructionLength;u+=1)r.instructions.push(n.parseByte());var l=a[a.length-1]+1;s=[];for(var c=0;c<l;c+=1)if(i=n.parseByte(),s.push(i),(i&8)>0)for(var h=n.parseByte(),f=0;f<h;f+=1)s.push(i),c+=1;if(J.argument(s.length===l,"Bad flags."),a.length>0){var d=[],D;if(l>0){for(var m=0;m<l;m+=1)i=s[m],D={},D.onCurve=!!(i&1),D.lastPointOfContour=a.indexOf(m)>=0,d.push(D);for(var v=0,F=0;F<l;F+=1)i=s[F],D=d[F],D.x=O7(n,i,v,2,16),v=D.x;for(var C=0,S=0;S<l;S+=1)i=s[S],D=d[S],D.y=O7(n,i,C,4,32),C=D.y}r.points=d}else r.points=[]}else if(r.numberOfContours===0)r.points=[];else{r.isComposite=!0,r.points=[],r.components=[];for(var B=!0;B;){s=n.parseUShort();var w={glyphIndex:n.parseUShort(),xScale:1,scale01:0,scale10:0,yScale:1,dx:0,dy:0};(s&1)>0?(s&2)>0?(w.dx=n.parseShort(),w.dy=n.parseShort()):w.matchedPoints=[n.parseUShort(),n.parseUShort()]:(s&2)>0?(w.dx=n.parseChar(),w.dy=n.parseChar()):w.matchedPoints=[n.parseByte(),n.parseByte()],(s&8)>0?w.xScale=w.yScale=n.parseF2Dot14():(s&64)>0?(w.xScale=n.parseF2Dot14(),w.yScale=n.parseF2Dot14()):(s&128)>0&&(w.xScale=n.parseF2Dot14(),w.scale01=n.parseF2Dot14(),w.scale10=n.parseF2Dot14(),w.yScale=n.parseF2Dot14()),r.components.push(w),B=!!(s&32)}if(s&256){r.instructionLength=n.parseUShort(),r.instructions=[];for(var x=0;x<r.instructionLength;x+=1)r.instructions.push(n.parseByte())}}}function $6(r,t){for(var e=[],n=0;n<r.length;n+=1){var s=r[n],i={x:t.xScale*s.x+t.scale01*s.y+t.dx,y:t.scale10*s.x+t.yScale*s.y+t.dy,onCurve:s.onCurve,lastPointOfContour:s.lastPointOfContour};e.push(i)}return e}function ti(r){for(var t=[],e=[],n=0;n<r.length;n+=1){var s=r[n];e.push(s),s.lastPointOfContour&&(t.push(e),e=[])}return J.argument(e.length===0,"There are still points left in the current contour."),t}function R7(r){var t=new d1;if(!r)return t;for(var e=ti(r),n=0;n<e.length;++n){var s=e[n],i=null,a=s[s.length-1],o=s[0];if(a.onCurve)t.moveTo(a.x,a.y);else if(o.onCurve)t.moveTo(o.x,o.y);else{var u={x:(a.x+o.x)*.5,y:(a.y+o.y)*.5};t.moveTo(u.x,u.y)}for(var l=0;l<s.length;++l)if(i=a,a=o,o=s[(l+1)%s.length],a.onCurve)t.lineTo(a.x,a.y);else{var c=o;i.onCurve||((a.x+i.x)*.5,(a.y+i.y)*.5),o.onCurve||(c={x:(a.x+o.x)*.5,y:(a.y+o.y)*.5}),t.quadraticCurveTo(a.x,a.y,c.x,c.y)}t.closePath()}return t}function A7(r,t){if(t.isComposite)for(var e=0;e<t.components.length;e+=1){var n=t.components[e],s=r.get(n.glyphIndex);if(s.getPath(),s.points){var i=void 0;if(n.matchedPoints===void 0)i=$6(s.points,n);else{if(n.matchedPoints[0]>t.points.length-1||n.matchedPoints[1]>s.points.length-1)throw Error("Matched points out of range in "+t.name);var a=t.points[n.matchedPoints[0]],o=s.points[n.matchedPoints[1]],u={xScale:n.xScale,scale01:n.scale01,scale10:n.scale10,yScale:n.yScale,dx:0,dy:0};o=$6([o],u)[0],u.dx=a.x-o.x,u.dy=a.y-o.y,i=$6(s.points,u)}t.points=t.points.concat(i)}}return R7(t.points)}function ni(r,t,e,n){for(var s=new ee.GlyphSet(n),i=0;i<e.length-1;i+=1){var a=e[i],o=e[i+1];a!==o?s.push(i,ee.ttfGlyphLoader(n,i,x7,r,t+a,A7)):s.push(i,ee.glyphLoader(n,i))}return s}function ri(r,t,e,n){var s=new ee.GlyphSet(n);return n._push=function(i){var a=e[i],o=e[i+1];a!==o?s.push(i,ee.ttfGlyphLoader(n,i,x7,r,t+a,A7)):s.push(i,ee.glyphLoader(n,i))},s}function si(r,t,e,n,s){return s.lowMemory?ri(r,t,e,n):ni(r,t,e,n)}var k7={getPath:R7,parse:si},$7,xe,I7,I6;function L7(r){this.font=r,this.getCommands=function(t){return k7.getPath(t).commands},this._fpgmState=this._prepState=void 0,this._errorState=0}function ii(r){return r}function P7(r){return Math.sign(r)*Math.round(Math.abs(r))}function ai(r){return Math.sign(r)*Math.round(Math.abs(r*2))/2}function oi(r){return Math.sign(r)*(Math.round(Math.abs(r)+.5)-.5)}function ui(r){return Math.sign(r)*Math.ceil(Math.abs(r))}function li(r){return Math.sign(r)*Math.floor(Math.abs(r))}var M7=function(r){var t=this.srPeriod,e=this.srPhase,n=this.srThreshold,s=1;return r<0&&(r=-r,s=-1),r+=n-e,r=Math.trunc(r/t)*t,r+=e,r<0?e*s:r*s},te={x:1,y:0,axis:"x",distance:function(r,t,e,n){return(e?r.xo:r.x)-(n?t.xo:t.x)},interpolate:function(r,t,e,n){var s,i,a,o,u,l,c;if(!n||n===this){if(s=r.xo-t.xo,i=r.xo-e.xo,u=t.x-t.xo,l=e.x-e.xo,a=Math.abs(s),o=Math.abs(i),c=a+o,c===0){r.x=r.xo+(u+l)/2;return}r.x=r.xo+(u*o+l*a)/c;return}if(s=n.distance(r,t,!0,!0),i=n.distance(r,e,!0,!0),u=n.distance(t,t,!1,!0),l=n.distance(e,e,!1,!0),a=Math.abs(s),o=Math.abs(i),c=a+o,c===0){te.setRelative(r,r,(u+l)/2,n,!0);return}te.setRelative(r,r,(u*o+l*a)/c,n,!0)},normalSlope:Number.NEGATIVE_INFINITY,setRelative:function(r,t,e,n,s){if(!n||n===this){r.x=(s?t.xo:t.x)+e;return}var i=s?t.xo:t.x,a=s?t.yo:t.y,o=i+e*n.x,u=a+e*n.y;r.x=o+(r.y-u)/n.normalSlope},slope:0,touch:function(r){r.xTouched=!0},touched:function(r){return r.xTouched},untouch:function(r){r.xTouched=!1}},oe={x:0,y:1,axis:"y",distance:function(r,t,e,n){return(e?r.yo:r.y)-(n?t.yo:t.y)},interpolate:function(r,t,e,n){var s,i,a,o,u,l,c;if(!n||n===this){if(s=r.yo-t.yo,i=r.yo-e.yo,u=t.y-t.yo,l=e.y-e.yo,a=Math.abs(s),o=Math.abs(i),c=a+o,c===0){r.y=r.yo+(u+l)/2;return}r.y=r.yo+(u*o+l*a)/c;return}if(s=n.distance(r,t,!0,!0),i=n.distance(r,e,!0,!0),u=n.distance(t,t,!1,!0),l=n.distance(e,e,!1,!0),a=Math.abs(s),o=Math.abs(i),c=a+o,c===0){oe.setRelative(r,r,(u+l)/2,n,!0);return}oe.setRelative(r,r,(u*o+l*a)/c,n,!0)},normalSlope:0,setRelative:function(r,t,e,n,s){if(!n||n===this){r.y=(s?t.yo:t.y)+e;return}var i=s?t.xo:t.x,a=s?t.yo:t.y,o=i+e*n.x,u=a+e*n.y;r.y=u+n.normalSlope*(r.x-o)},slope:Number.POSITIVE_INFINITY,touch:function(r){r.yTouched=!0},touched:function(r){return r.yTouched},untouch:function(r){r.yTouched=!1}};Object.freeze(te),Object.freeze(oe);function x2(r,t){this.x=r,this.y=t,this.axis=void 0,this.slope=t/r,this.normalSlope=-r/t,Object.freeze(this)}x2.prototype.distance=function(r,t,e,n){return this.x*te.distance(r,t,e,n)+this.y*oe.distance(r,t,e,n)},x2.prototype.interpolate=function(r,t,e,n){var s,i,a,o,u,l,c;if(a=n.distance(r,t,!0,!0),o=n.distance(r,e,!0,!0),s=n.distance(t,t,!1,!0),i=n.distance(e,e,!1,!0),u=Math.abs(a),l=Math.abs(o),c=u+l,c===0){this.setRelative(r,r,(s+i)/2,n,!0);return}this.setRelative(r,r,(s*l+i*u)/c,n,!0)},x2.prototype.setRelative=function(r,t,e,n,s){n=n||this;var i=s?t.xo:t.x,a=s?t.yo:t.y,o=i+e*n.x,u=a+e*n.y,l=n.normalSlope,c=this.slope,h=r.x,f=r.y;r.x=(c*h-l*o+u-f)/(c-l),r.y=c*(r.x-h)+f},x2.prototype.touch=function(r){r.xTouched=!0,r.yTouched=!0};function R2(r,t){var e=Math.sqrt(r*r+t*t);return r/=e,t/=e,r===1&&t===0?te:r===0&&t===1?oe:new x2(r,t)}function ue(r,t,e,n){this.x=this.xo=Math.round(r*64)/64,this.y=this.yo=Math.round(t*64)/64,this.lastPointOfContour=e,this.onCurve=n,this.prevPointOnContour=void 0,this.nextPointOnContour=void 0,this.xTouched=!1,this.yTouched=!1,Object.preventExtensions(this)}ue.prototype.nextTouched=function(r){for(var t=this.nextPointOnContour;!r.touched(t)&&t!==this;)t=t.nextPointOnContour;return t},ue.prototype.prevTouched=function(r){for(var t=this.prevPointOnContour;!r.touched(t)&&t!==this;)t=t.prevPointOnContour;return t};var A2=Object.freeze(new ue(0,0)),ci={cvCutIn:17/16,deltaBase:9,deltaShift:.125,loop:1,minDis:1,autoFlip:!0};function ge(r,t){switch(this.env=r,this.stack=[],this.prog=t,r){case"glyf":this.zp0=this.zp1=this.zp2=1,this.rp0=this.rp1=this.rp2=0;case"prep":this.fv=this.pv=this.dpv=te,this.round=P7}}L7.prototype.exec=function(r,t){if(typeof t!="number")throw new Error("Point size is not a number!");if(!(this._errorState>2)){var e=this.font,n=this._prepState;if(!n||n.ppem!==t){var s=this._fpgmState;if(!s){ge.prototype=ci,s=this._fpgmState=new ge("fpgm",e.tables.fpgm),s.funcs=[],s.font=e,y.DEBUG&&(console.log("---EXEC FPGM---"),s.step=-1);try{xe(s)}catch(l){console.log("Hinting error in FPGM:"+l),this._errorState=3;return}}ge.prototype=s,n=this._prepState=new ge("prep",e.tables.prep),n.ppem=t;var i=e.tables.cvt;if(i)for(var a=n.cvt=new Array(i.length),o=t/e.unitsPerEm,u=0;u<i.length;u++)a[u]=i[u]*o;else n.cvt=[];y.DEBUG&&(console.log("---EXEC PREP---"),n.step=-1);try{xe(n)}catch(l){this._errorState<2&&console.log("Hinting error in PREP:"+l),this._errorState=2}}if(!(this._errorState>1))try{return I7(r,n)}catch(l){this._errorState<1&&(console.log("Hinting error:"+l),console.log("Note: further hinting errors are silenced")),this._errorState=1;return}}},I7=function(r,t){var e=t.ppem/t.font.unitsPerEm,n=e,s=r.components,i,a,o;if(ge.prototype=t,!s)o=new ge("glyf",r.instructions),y.DEBUG&&(console.log("---EXEC GLYPH---"),o.step=-1),I6(r,o,e,n),a=o.gZone;else{var u=t.font;a=[],i=[];for(var l=0;l<s.length;l++){var c=s[l],h=u.glyphs.get(c.glyphIndex);o=new ge("glyf",h.instructions),y.DEBUG&&(console.log("---EXEC COMP "+l+"---"),o.step=-1),I6(h,o,e,n);for(var f=Math.round(c.dx*e),d=Math.round(c.dy*n),D=o.gZone,m=o.contours,v=0;v<D.length;v++){var F=D[v];F.xTouched=F.yTouched=!1,F.xo=F.x=F.x+f,F.yo=F.y=F.y+d}var C=a.length;a.push.apply(a,D);for(var S=0;S<m.length;S++)i.push(m[S]+C)}r.instructions&&!o.inhibitGridFit&&(o=new ge("glyf",r.instructions),o.gZone=o.z0=o.z1=o.z2=a,o.contours=i,a.push(new ue(0,0),new ue(Math.round(r.advanceWidth*e),0)),y.DEBUG&&(console.log("---EXEC COMPOSITE---"),o.step=-1),xe(o),a.length-=2)}return a},I6=function(r,t,e,n){for(var s=r.points||[],i=s.length,a=t.gZone=t.z0=t.z1=t.z2=[],o=t.contours=[],u,l=0;l<i;l++)u=s[l],a[l]=new ue(u.x*e,u.y*n,u.lastPointOfContour,u.onCurve);for(var c,h,f=0;f<i;f++)u=a[f],c||(c=u,o.push(f)),u.lastPointOfContour?(u.nextPointOnContour=c,c.prevPointOnContour=u,c=void 0):(h=a[f+1],u.nextPointOnContour=h,h.prevPointOnContour=u);if(!t.inhibitGridFit){if(y.DEBUG){console.log("PROCESSING GLYPH",t.stack);for(var d=0;d<i;d++)console.log(d,a[d].x,a[d].y)}if(a.push(new ue(0,0),new ue(Math.round(r.advanceWidth*e),0)),xe(t),a.length-=2,y.DEBUG){console.log("FINISHED GLYPH",t.stack);for(var D=0;D<i;D++)console.log(D,a[D].x,a[D].y)}}},xe=function(r){var t=r.prog;if(t){var e=t.length,n;for(r.ip=0;r.ip<e;r.ip++){if(y.DEBUG&&r.step++,n=$7[t[r.ip]],!n)throw new Error("unknown instruction: 0x"+Number(t[r.ip]).toString(16));n(r)}}};function ft(r){for(var t=r.tZone=new Array(r.gZone.length),e=0;e<t.length;e++)t[e]=new ue(0,0)}function N7(r,t){var e=r.prog,n=r.ip,s=1,i;do if(i=e[++n],i===88)s++;else if(i===89)s--;else if(i===64)n+=e[n+1]+1;else if(i===65)n+=2*e[n+1]+1;else if(i>=176&&i<=183)n+=i-176+1;else if(i>=184&&i<=191)n+=(i-184+1)*2;else if(t&&s===1&&i===27)break;while(s>0);r.ip=n}function U7(r,t){y.DEBUG&&console.log(t.step,"SVTCA["+r.axis+"]"),t.fv=t.pv=t.dpv=r}function H7(r,t){y.DEBUG&&console.log(t.step,"SPVTCA["+r.axis+"]"),t.pv=t.dpv=r}function G7(r,t){y.DEBUG&&console.log(t.step,"SFVTCA["+r.axis+"]"),t.fv=r}function z7(r,t){var e=t.stack,n=e.pop(),s=e.pop(),i=t.z2[n],a=t.z1[s];y.DEBUG&&console.log("SPVTL["+r+"]",n,s);var o,u;r?(o=i.y-a.y,u=a.x-i.x):(o=a.x-i.x,u=a.y-i.y),t.pv=t.dpv=R2(o,u)}function X7(r,t){var e=t.stack,n=e.pop(),s=e.pop(),i=t.z2[n],a=t.z1[s];y.DEBUG&&console.log("SFVTL["+r+"]",n,s);var o,u;r?(o=i.y-a.y,u=a.x-i.x):(o=a.x-i.x,u=a.y-i.y),t.fv=R2(o,u)}function hi(r){var t=r.stack,e=t.pop(),n=t.pop();y.DEBUG&&console.log(r.step,"SPVFS[]",e,n),r.pv=r.dpv=R2(n,e)}function fi(r){var t=r.stack,e=t.pop(),n=t.pop();y.DEBUG&&console.log(r.step,"SPVFS[]",e,n),r.fv=R2(n,e)}function di(r){var t=r.stack,e=r.pv;y.DEBUG&&console.log(r.step,"GPV[]"),t.push(e.x*16384),t.push(e.y*16384)}function _i(r){var t=r.stack,e=r.fv;y.DEBUG&&console.log(r.step,"GFV[]"),t.push(e.x*16384),t.push(e.y*16384)}function gi(r){r.fv=r.pv,y.DEBUG&&console.log(r.step,"SFVTPV[]")}function pi(r){var t=r.stack,e=t.pop(),n=t.pop(),s=t.pop(),i=t.pop(),a=t.pop(),o=r.z0,u=r.z1,l=o[e],c=o[n],h=u[s],f=u[i],d=r.z2[a];y.DEBUG&&console.log("ISECT[], ",e,n,s,i,a);var D=l.x,m=l.y,v=c.x,F=c.y,C=h.x,S=h.y,B=f.x,w=f.y,x=(D-v)*(S-w)-(m-F)*(C-B),O=D*F-m*v,T=C*w-S*B;d.x=(O*(C-B)-T*(D-v))/x,d.y=(O*(S-w)-T*(m-F))/x}function Di(r){r.rp0=r.stack.pop(),y.DEBUG&&console.log(r.step,"SRP0[]",r.rp0)}function vi(r){r.rp1=r.stack.pop(),y.DEBUG&&console.log(r.step,"SRP1[]",r.rp1)}function mi(r){r.rp2=r.stack.pop(),y.DEBUG&&console.log(r.step,"SRP2[]",r.rp2)}function bi(r){var t=r.stack.pop();switch(y.DEBUG&&console.log(r.step,"SZP0[]",t),r.zp0=t,t){case 0:r.tZone||ft(r),r.z0=r.tZone;break;case 1:r.z0=r.gZone;break;default:throw new Error("Invalid zone pointer")}}function yi(r){var t=r.stack.pop();switch(y.DEBUG&&console.log(r.step,"SZP1[]",t),r.zp1=t,t){case 0:r.tZone||ft(r),r.z1=r.tZone;break;case 1:r.z1=r.gZone;break;default:throw new Error("Invalid zone pointer")}}function Fi(r){var t=r.stack.pop();switch(y.DEBUG&&console.log(r.step,"SZP2[]",t),r.zp2=t,t){case 0:r.tZone||ft(r),r.z2=r.tZone;break;case 1:r.z2=r.gZone;break;default:throw new Error("Invalid zone pointer")}}function Ci(r){var t=r.stack.pop();switch(y.DEBUG&&console.log(r.step,"SZPS[]",t),r.zp0=r.zp1=r.zp2=t,t){case 0:r.tZone||ft(r),r.z0=r.z1=r.z2=r.tZone;break;case 1:r.z0=r.z1=r.z2=r.gZone;break;default:throw new Error("Invalid zone pointer")}}function Ei(r){r.loop=r.stack.pop(),y.DEBUG&&console.log(r.step,"SLOOP[]",r.loop)}function Si(r){y.DEBUG&&console.log(r.step,"RTG[]"),r.round=P7}function Ti(r){y.DEBUG&&console.log(r.step,"RTHG[]"),r.round=oi}function wi(r){var t=r.stack.pop();y.DEBUG&&console.log(r.step,"SMD[]",t),r.minDis=t/64}function Bi(r){y.DEBUG&&console.log(r.step,"ELSE[]"),N7(r,!1)}function Oi(r){var t=r.stack.pop();y.DEBUG&&console.log(r.step,"JMPR[]",t),r.ip+=t-1}function xi(r){var t=r.stack.pop();y.DEBUG&&console.log(r.step,"SCVTCI[]",t),r.cvCutIn=t/64}function Ri(r){var t=r.stack;y.DEBUG&&console.log(r.step,"DUP[]"),t.push(t[t.length-1])}function L6(r){y.DEBUG&&console.log(r.step,"POP[]"),r.stack.pop()}function Ai(r){y.DEBUG&&console.log(r.step,"CLEAR[]"),r.stack.length=0}function ki(r){var t=r.stack,e=t.pop(),n=t.pop();y.DEBUG&&console.log(r.step,"SWAP[]"),t.push(e),t.push(n)}function $i(r){var t=r.stack;y.DEBUG&&console.log(r.step,"DEPTH[]"),t.push(t.length)}function Ii(r){var t=r.stack,e=t.pop(),n=t.pop();y.DEBUG&&console.log(r.step,"LOOPCALL[]",e,n);var s=r.ip,i=r.prog;r.prog=r.funcs[e];for(var a=0;a<n;a++)xe(r),y.DEBUG&&console.log(++r.step,a+1<n?"next loopcall":"done loopcall",a);r.ip=s,r.prog=i}function Li(r){var t=r.stack.pop();y.DEBUG&&console.log(r.step,"CALL[]",t);var e=r.ip,n=r.prog;r.prog=r.funcs[t],xe(r),r.ip=e,r.prog=n,y.DEBUG&&console.log(++r.step,"returning from",t)}function Pi(r){var t=r.stack,e=t.pop();y.DEBUG&&console.log(r.step,"CINDEX[]",e),t.push(t[t.length-e])}function Mi(r){var t=r.stack,e=t.pop();y.DEBUG&&console.log(r.step,"MINDEX[]",e),t.push(t.splice(t.length-e,1)[0])}function Ni(r){if(r.env!=="fpgm")throw new Error("FDEF not allowed here");var t=r.stack,e=r.prog,n=r.ip,s=t.pop(),i=n;for(y.DEBUG&&console.log(r.step,"FDEF[]",s);e[++n]!==45;);r.ip=n,r.funcs[s]=e.slice(i+1,n)}function W7(r,t){var e=t.stack.pop(),n=t.z0[e],s=t.fv,i=t.pv;y.DEBUG&&console.log(t.step,"MDAP["+r+"]",e);var a=i.distance(n,A2);r&&(a=t.round(a)),s.setRelative(n,A2,a,i),s.touch(n),t.rp0=t.rp1=e}function Y7(r,t){var e=t.z2,n=e.length-2,s,i,a;y.DEBUG&&console.log(t.step,"IUP["+r.axis+"]");for(var o=0;o<n;o++)s=e[o],!r.touched(s)&&(i=s.prevTouched(r),i!==s&&(a=s.nextTouched(r),i===a&&r.setRelative(s,s,r.distance(i,i,!1,!0),r,!0),r.interpolate(s,i,a,r)))}function j7(r,t){for(var e=t.stack,n=r?t.rp1:t.rp2,s=(r?t.z0:t.z1)[n],i=t.fv,a=t.pv,o=t.loop,u=t.z2;o--;){var l=e.pop(),c=u[l],h=a.distance(s,s,!1,!0);i.setRelative(c,c,h,a),i.touch(c),y.DEBUG&&console.log(t.step,(t.loop>1?"loop "+(t.loop-o)+": ":"")+"SHP["+(r?"rp1":"rp2")+"]",l)}t.loop=1}function V7(r,t){var e=t.stack,n=r?t.rp1:t.rp2,s=(r?t.z0:t.z1)[n],i=t.fv,a=t.pv,o=e.pop(),u=t.z2[t.contours[o]],l=u;y.DEBUG&&console.log(t.step,"SHC["+r+"]",o);var c=a.distance(s,s,!1,!0);do l!==s&&i.setRelative(l,l,c,a),l=l.nextPointOnContour;while(l!==u)}function K7(r,t){var e=t.stack,n=r?t.rp1:t.rp2,s=(r?t.z0:t.z1)[n],i=t.fv,a=t.pv,o=e.pop();y.DEBUG&&console.log(t.step,"SHZ["+r+"]",o);var u;switch(o){case 0:u=t.tZone;break;case 1:u=t.gZone;break;default:throw new Error("Invalid zone")}for(var l,c=a.distance(s,s,!1,!0),h=u.length-2,f=0;f<h;f++)l=u[f],i.setRelative(l,l,c,a)}function Ui(r){for(var t=r.stack,e=r.loop,n=r.fv,s=t.pop()/64,i=r.z2;e--;){var a=t.pop(),o=i[a];y.DEBUG&&console.log(r.step,(r.loop>1?"loop "+(r.loop-e)+": ":"")+"SHPIX[]",a,s),n.setRelative(o,o,s),n.touch(o)}r.loop=1}function Hi(r){for(var t=r.stack,e=r.rp1,n=r.rp2,s=r.loop,i=r.z0[e],a=r.z1[n],o=r.fv,u=r.dpv,l=r.z2;s--;){var c=t.pop(),h=l[c];y.DEBUG&&console.log(r.step,(r.loop>1?"loop "+(r.loop-s)+": ":"")+"IP[]",c,e,"<->",n),o.interpolate(h,i,a,u),o.touch(h)}r.loop=1}function q7(r,t){var e=t.stack,n=e.pop()/64,s=e.pop(),i=t.z1[s],a=t.z0[t.rp0],o=t.fv,u=t.pv;o.setRelative(i,a,n,u),o.touch(i),y.DEBUG&&console.log(t.step,"MSIRP["+r+"]",n,s),t.rp1=t.rp0,t.rp2=s,r&&(t.rp0=s)}function Gi(r){for(var t=r.stack,e=r.rp0,n=r.z0[e],s=r.loop,i=r.fv,a=r.pv,o=r.z1;s--;){var u=t.pop(),l=o[u];y.DEBUG&&console.log(r.step,(r.loop>1?"loop "+(r.loop-s)+": ":"")+"ALIGNRP[]",u),i.setRelative(l,n,0,a),i.touch(l)}r.loop=1}function zi(r){y.DEBUG&&console.log(r.step,"RTDG[]"),r.round=ai}function Z7(r,t){var e=t.stack,n=e.pop(),s=e.pop(),i=t.z0[s],a=t.fv,o=t.pv,u=t.cvt[n];y.DEBUG&&console.log(t.step,"MIAP["+r+"]",n,"(",u,")",s);var l=o.distance(i,A2);r&&(Math.abs(l-u)<t.cvCutIn&&(l=u),l=t.round(l)),a.setRelative(i,A2,l,o),t.zp0===0&&(i.xo=i.x,i.yo=i.y),a.touch(i),t.rp0=t.rp1=s}function Xi(r){var t=r.prog,e=r.ip,n=r.stack,s=t[++e];y.DEBUG&&console.log(r.step,"NPUSHB[]",s);for(var i=0;i<s;i++)n.push(t[++e]);r.ip=e}function Wi(r){var t=r.ip,e=r.prog,n=r.stack,s=e[++t];y.DEBUG&&console.log(r.step,"NPUSHW[]",s);for(var i=0;i<s;i++){var a=e[++t]<<8|e[++t];a&32768&&(a=-((a^65535)+1)),n.push(a)}r.ip=t}function Yi(r){var t=r.stack,e=r.store;e||(e=r.store=[]);var n=t.pop(),s=t.pop();y.DEBUG&&console.log(r.step,"WS",n,s),e[s]=n}function ji(r){var t=r.stack,e=r.store,n=t.pop();y.DEBUG&&console.log(r.step,"RS",n);var s=e&&e[n]||0;t.push(s)}function Vi(r){var t=r.stack,e=t.pop(),n=t.pop();y.DEBUG&&console.log(r.step,"WCVTP",e,n),r.cvt[n]=e/64}function Ki(r){var t=r.stack,e=t.pop();y.DEBUG&&console.log(r.step,"RCVT",e),t.push(r.cvt[e]*64)}function J7(r,t){var e=t.stack,n=e.pop(),s=t.z2[n];y.DEBUG&&console.log(t.step,"GC["+r+"]",n),e.push(t.dpv.distance(s,A2,r,!1)*64)}function Q7(r,t){var e=t.stack,n=e.pop(),s=e.pop(),i=t.z1[n],a=t.z0[s],o=t.dpv.distance(a,i,r,r);y.DEBUG&&console.log(t.step,"MD["+r+"]",n,s,"->",o),t.stack.push(Math.round(o*64))}function qi(r){y.DEBUG&&console.log(r.step,"MPPEM[]"),r.stack.push(r.ppem)}function Zi(r){y.DEBUG&&console.log(r.step,"FLIPON[]"),r.autoFlip=!0}function Ji(r){var t=r.stack,e=t.pop(),n=t.pop();y.DEBUG&&console.log(r.step,"LT[]",e,n),t.push(n<e?1:0)}function Qi(r){var t=r.stack,e=t.pop(),n=t.pop();y.DEBUG&&console.log(r.step,"LTEQ[]",e,n),t.push(n<=e?1:0)}function e9(r){var t=r.stack,e=t.pop(),n=t.pop();y.DEBUG&&console.log(r.step,"GT[]",e,n),t.push(n>e?1:0)}function t9(r){var t=r.stack,e=t.pop(),n=t.pop();y.DEBUG&&console.log(r.step,"GTEQ[]",e,n),t.push(n>=e?1:0)}function n9(r){var t=r.stack,e=t.pop(),n=t.pop();y.DEBUG&&console.log(r.step,"EQ[]",e,n),t.push(e===n?1:0)}function r9(r){var t=r.stack,e=t.pop(),n=t.pop();y.DEBUG&&console.log(r.step,"NEQ[]",e,n),t.push(e!==n?1:0)}function s9(r){var t=r.stack,e=t.pop();y.DEBUG&&console.log(r.step,"ODD[]",e),t.push(Math.trunc(e)%2?1:0)}function i9(r){var t=r.stack,e=t.pop();y.DEBUG&&console.log(r.step,"EVEN[]",e),t.push(Math.trunc(e)%2?0:1)}function a9(r){var t=r.stack.pop();y.DEBUG&&console.log(r.step,"IF[]",t),t||(N7(r,!0),y.DEBUG&&console.log(r.step,"EIF[]"))}function o9(r){y.DEBUG&&console.log(r.step,"EIF[]")}function u9(r){var t=r.stack,e=t.pop(),n=t.pop();y.DEBUG&&console.log(r.step,"AND[]",e,n),t.push(e&&n?1:0)}function l9(r){var t=r.stack,e=t.pop(),n=t.pop();y.DEBUG&&console.log(r.step,"OR[]",e,n),t.push(e||n?1:0)}function c9(r){var t=r.stack,e=t.pop();y.DEBUG&&console.log(r.step,"NOT[]",e),t.push(e?0:1)}function P6(r,t){var e=t.stack,n=e.pop(),s=t.fv,i=t.pv,a=t.ppem,o=t.deltaBase+(r-1)*16,u=t.deltaShift,l=t.z0;y.DEBUG&&console.log(t.step,"DELTAP["+r+"]",n,e);for(var c=0;c<n;c++){var h=e.pop(),f=e.pop(),d=o+((f&240)>>4);if(d===a){var D=(f&15)-8;D>=0&&D++,y.DEBUG&&console.log(t.step,"DELTAPFIX",h,"by",D*u);var m=l[h];s.setRelative(m,m,D*u,i)}}}function h9(r){var t=r.stack,e=t.pop();y.DEBUG&&console.log(r.step,"SDB[]",e),r.deltaBase=e}function f9(r){var t=r.stack,e=t.pop();y.DEBUG&&console.log(r.step,"SDS[]",e),r.deltaShift=Math.pow(.5,e)}function d9(r){var t=r.stack,e=t.pop(),n=t.pop();y.DEBUG&&console.log(r.step,"ADD[]",e,n),t.push(n+e)}function _9(r){var t=r.stack,e=t.pop(),n=t.pop();y.DEBUG&&console.log(r.step,"SUB[]",e,n),t.push(n-e)}function g9(r){var t=r.stack,e=t.pop(),n=t.pop();y.DEBUG&&console.log(r.step,"DIV[]",e,n),t.push(n*64/e)}function p9(r){var t=r.stack,e=t.pop(),n=t.pop();y.DEBUG&&console.log(r.step,"MUL[]",e,n),t.push(n*e/64)}function D9(r){var t=r.stack,e=t.pop();y.DEBUG&&console.log(r.step,"ABS[]",e),t.push(Math.abs(e))}function v9(r){var t=r.stack,e=t.pop();y.DEBUG&&console.log(r.step,"NEG[]",e),t.push(-e)}function m9(r){var t=r.stack,e=t.pop();y.DEBUG&&console.log(r.step,"FLOOR[]",e),t.push(Math.floor(e/64)*64)}function b9(r){var t=r.stack,e=t.pop();y.DEBUG&&console.log(r.step,"CEILING[]",e),t.push(Math.ceil(e/64)*64)}function dt(r,t){var e=t.stack,n=e.pop();y.DEBUG&&console.log(t.step,"ROUND[]"),e.push(t.round(n/64)*64)}function y9(r){var t=r.stack,e=t.pop(),n=t.pop();y.DEBUG&&console.log(r.step,"WCVTF[]",e,n),r.cvt[n]=e*r.ppem/r.font.unitsPerEm}function M6(r,t){var e=t.stack,n=e.pop(),s=t.ppem,i=t.deltaBase+(r-1)*16,a=t.deltaShift;y.DEBUG&&console.log(t.step,"DELTAC["+r+"]",n,e);for(var o=0;o<n;o++){var u=e.pop(),l=e.pop(),c=i+((l&240)>>4);if(c===s){var h=(l&15)-8;h>=0&&h++;var f=h*a;y.DEBUG&&console.log(t.step,"DELTACFIX",u,"by",f),t.cvt[u]+=f}}}function F9(r){var t=r.stack.pop();y.DEBUG&&console.log(r.step,"SROUND[]",t),r.round=M7;var e;switch(t&192){case 0:e=.5;break;case 64:e=1;break;case 128:e=2;break;default:throw new Error("invalid SROUND value")}switch(r.srPeriod=e,t&48){case 0:r.srPhase=0;break;case 16:r.srPhase=.25*e;break;case 32:r.srPhase=.5*e;break;case 48:r.srPhase=.75*e;break;default:throw new Error("invalid SROUND value")}t&=15,t===0?r.srThreshold=0:r.srThreshold=(t/8-.5)*e}function C9(r){var t=r.stack.pop();y.DEBUG&&console.log(r.step,"S45ROUND[]",t),r.round=M7;var e;switch(t&192){case 0:e=Math.sqrt(2)/2;break;case 64:e=Math.sqrt(2);break;case 128:e=2*Math.sqrt(2);break;default:throw new Error("invalid S45ROUND value")}switch(r.srPeriod=e,t&48){case 0:r.srPhase=0;break;case 16:r.srPhase=.25*e;break;case 32:r.srPhase=.5*e;break;case 48:r.srPhase=.75*e;break;default:throw new Error("invalid S45ROUND value")}t&=15,t===0?r.srThreshold=0:r.srThreshold=(t/8-.5)*e}function E9(r){y.DEBUG&&console.log(r.step,"ROFF[]"),r.round=ii}function S9(r){y.DEBUG&&console.log(r.step,"RUTG[]"),r.round=ui}function T9(r){y.DEBUG&&console.log(r.step,"RDTG[]"),r.round=li}function w9(r){var t=r.stack.pop();y.DEBUG&&console.log(r.step,"SCANCTRL[]",t)}function en(r,t){var e=t.stack,n=e.pop(),s=e.pop(),i=t.z2[n],a=t.z1[s];y.DEBUG&&console.log(t.step,"SDPVTL["+r+"]",n,s);var o,u;r?(o=i.y-a.y,u=a.x-i.x):(o=a.x-i.x,u=a.y-i.y),t.dpv=R2(o,u)}function B9(r){var t=r.stack,e=t.pop(),n=0;y.DEBUG&&console.log(r.step,"GETINFO[]",e),e&1&&(n=35),e&32&&(n|=4096),t.push(n)}function O9(r){var t=r.stack,e=t.pop(),n=t.pop(),s=t.pop();y.DEBUG&&console.log(r.step,"ROLL[]"),t.push(n),t.push(e),t.push(s)}function x9(r){var t=r.stack,e=t.pop(),n=t.pop();y.DEBUG&&console.log(r.step,"MAX[]",e,n),t.push(Math.max(n,e))}function R9(r){var t=r.stack,e=t.pop(),n=t.pop();y.DEBUG&&console.log(r.step,"MIN[]",e,n),t.push(Math.min(n,e))}function A9(r){var t=r.stack.pop();y.DEBUG&&console.log(r.step,"SCANTYPE[]",t)}function k9(r){var t=r.stack.pop(),e=r.stack.pop();switch(y.DEBUG&&console.log(r.step,"INSTCTRL[]",t,e),t){case 1:r.inhibitGridFit=!!e;return;case 2:r.ignoreCvt=!!e;return;default:throw new Error("invalid INSTCTRL[] selector")}}function pe(r,t){var e=t.stack,n=t.prog,s=t.ip;y.DEBUG&&console.log(t.step,"PUSHB["+r+"]");for(var i=0;i<r;i++)e.push(n[++s]);t.ip=s}function De(r,t){var e=t.ip,n=t.prog,s=t.stack;y.DEBUG&&console.log(t.ip,"PUSHW["+r+"]");for(var i=0;i<r;i++){var a=n[++e]<<8|n[++e];a&32768&&(a=-((a^65535)+1)),s.push(a)}t.ip=e}function j(r,t,e,n,s,i){var a=i.stack,o=r&&a.pop(),u=a.pop(),l=i.rp0,c=i.z0[l],h=i.z1[u],f=i.minDis,d=i.fv,D=i.dpv,m,v,F,C;v=m=D.distance(h,c,!0,!0),F=v>=0?1:-1,v=Math.abs(v),r&&(C=i.cvt[o],n&&Math.abs(v-C)<i.cvCutIn&&(v=C)),e&&v<f&&(v=f),n&&(v=i.round(v)),d.setRelative(h,c,F*v,D),d.touch(h),y.DEBUG&&console.log(i.step,(r?"MIRP[":"MDRP[")+(t?"M":"m")+(e?">":"_")+(n?"R":"_")+(s===0?"Gr":s===1?"Bl":s===2?"Wh":"")+"]",r?o+"("+i.cvt[o]+","+C+")":"",u,"(d =",m,"->",F*v,")"),i.rp1=i.rp0,i.rp2=u,t&&(i.rp0=u)}$7=[U7.bind(void 0,oe),U7.bind(void 0,te),H7.bind(void 0,oe),H7.bind(void 0,te),G7.bind(void 0,oe),G7.bind(void 0,te),z7.bind(void 0,0),z7.bind(void 0,1),X7.bind(void 0,0),X7.bind(void 0,1),hi,fi,di,_i,gi,pi,Di,vi,mi,bi,yi,Fi,Ci,Ei,Si,Ti,wi,Bi,Oi,xi,void 0,void 0,Ri,L6,Ai,ki,$i,Pi,Mi,void 0,void 0,void 0,Ii,Li,Ni,void 0,W7.bind(void 0,0),W7.bind(void 0,1),Y7.bind(void 0,oe),Y7.bind(void 0,te),j7.bind(void 0,0),j7.bind(void 0,1),V7.bind(void 0,0),V7.bind(void 0,1),K7.bind(void 0,0),K7.bind(void 0,1),Ui,Hi,q7.bind(void 0,0),q7.bind(void 0,1),Gi,zi,Z7.bind(void 0,0),Z7.bind(void 0,1),Xi,Wi,Yi,ji,Vi,Ki,J7.bind(void 0,0),J7.bind(void 0,1),void 0,Q7.bind(void 0,0),Q7.bind(void 0,1),qi,void 0,Zi,void 0,void 0,Ji,Qi,e9,t9,n9,r9,s9,i9,a9,o9,u9,l9,c9,P6.bind(void 0,1),h9,f9,d9,_9,g9,p9,D9,v9,m9,b9,dt.bind(void 0,0),dt.bind(void 0,1),dt.bind(void 0,2),dt.bind(void 0,3),void 0,void 0,void 0,void 0,y9,P6.bind(void 0,2),P6.bind(void 0,3),M6.bind(void 0,1),M6.bind(void 0,2),M6.bind(void 0,3),F9,C9,void 0,void 0,E9,void 0,S9,T9,L6,L6,void 0,void 0,void 0,void 0,void 0,w9,en.bind(void 0,0),en.bind(void 0,1),B9,void 0,O9,x9,R9,A9,k9,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,pe.bind(void 0,1),pe.bind(void 0,2),pe.bind(void 0,3),pe.bind(void 0,4),pe.bind(void 0,5),pe.bind(void 0,6),pe.bind(void 0,7),pe.bind(void 0,8),De.bind(void 0,1),De.bind(void 0,2),De.bind(void 0,3),De.bind(void 0,4),De.bind(void 0,5),De.bind(void 0,6),De.bind(void 0,7),De.bind(void 0,8),j.bind(void 0,0,0,0,0,0),j.bind(void 0,0,0,0,0,1),j.bind(void 0,0,0,0,0,2),j.bind(void 0,0,0,0,0,3),j.bind(void 0,0,0,0,1,0),j.bind(void 0,0,0,0,1,1),j.bind(void 0,0,0,0,1,2),j.bind(void 0,0,0,0,1,3),j.bind(void 0,0,0,1,0,0),j.bind(void 0,0,0,1,0,1),j.bind(void 0,0,0,1,0,2),j.bind(void 0,0,0,1,0,3),j.bind(void 0,0,0,1,1,0),j.bind(void 0,0,0,1,1,1),j.bind(void 0,0,0,1,1,2),j.bind(void 0,0,0,1,1,3),j.bind(void 0,0,1,0,0,0),j.bind(void 0,0,1,0,0,1),j.bind(void 0,0,1,0,0,2),j.bind(void 0,0,1,0,0,3),j.bind(void 0,0,1,0,1,0),j.bind(void 0,0,1,0,1,1),j.bind(void 0,0,1,0,1,2),j.bind(void 0,0,1,0,1,3),j.bind(void 0,0,1,1,0,0),j.bind(void 0,0,1,1,0,1),j.bind(void 0,0,1,1,0,2),j.bind(void 0,0,1,1,0,3),j.bind(void 0,0,1,1,1,0),j.bind(void 0,0,1,1,1,1),j.bind(void 0,0,1,1,1,2),j.bind(void 0,0,1,1,1,3),j.bind(void 0,1,0,0,0,0),j.bind(void 0,1,0,0,0,1),j.bind(void 0,1,0,0,0,2),j.bind(void 0,1,0,0,0,3),j.bind(void 0,1,0,0,1,0),j.bind(void 0,1,0,0,1,1),j.bind(void 0,1,0,0,1,2),j.bind(void 0,1,0,0,1,3),j.bind(void 0,1,0,1,0,0),j.bind(void 0,1,0,1,0,1),j.bind(void 0,1,0,1,0,2),j.bind(void 0,1,0,1,0,3),j.bind(void 0,1,0,1,1,0),j.bind(void 0,1,0,1,1,1),j.bind(void 0,1,0,1,1,2),j.bind(void 0,1,0,1,1,3),j.bind(void 0,1,1,0,0,0),j.bind(void 0,1,1,0,0,1),j.bind(void 0,1,1,0,0,2),j.bind(void 0,1,1,0,0,3),j.bind(void 0,1,1,0,1,0),j.bind(void 0,1,1,0,1,1),j.bind(void 0,1,1,0,1,2),j.bind(void 0,1,1,0,1,3),j.bind(void 0,1,1,1,0,0),j.bind(void 0,1,1,1,0,1),j.bind(void 0,1,1,1,0,2),j.bind(void 0,1,1,1,0,3),j.bind(void 0,1,1,1,1,0),j.bind(void 0,1,1,1,1,1),j.bind(void 0,1,1,1,1,2),j.bind(void 0,1,1,1,1,3)];function Ze(r){this.char=r,this.state={},this.activeState=null}function N6(r,t,e){this.contextName=e,this.startIndex=r,this.endOffset=t}function $9(r,t,e){this.contextName=r,this.openRange=null,this.ranges=[],this.checkStart=t,this.checkEnd=e}function U1(r,t){this.context=r,this.index=t,this.length=r.length,this.current=r[t],this.backtrack=r.slice(0,t),this.lookahead=r.slice(t+1)}function _t(r){this.eventId=r,this.subscribers=[]}function I9(r){var t=this,e=["start","end","next","newToken","contextStart","contextEnd","insertToken","removeToken","removeRange","replaceToken","replaceRange","composeRUD","updateContextsRanges"];e.forEach(function(s){Object.defineProperty(t.events,s,{value:new _t(s)})}),r&&e.forEach(function(s){var i=r[s];typeof i=="function"&&t.events[s].subscribe(i)});var n=["insertToken","removeToken","removeRange","replaceToken","replaceRange","composeRUD"];n.forEach(function(s){t.events[s].subscribe(t.updateContextsRanges)})}function u1(r){this.tokens=[],this.registeredContexts={},this.contextCheckers=[],this.events={},this.registeredModifiers=[],I9.call(this,r)}Ze.prototype.setState=function(r,t){return this.state[r]=t,this.activeState={key:r,value:this.state[r]},this.activeState},Ze.prototype.getState=function(r){return this.state[r]||null},u1.prototype.inboundIndex=function(r){return r>=0&&r<this.tokens.length},u1.prototype.composeRUD=function(r){var t=this,e=!0,n=r.map(function(i){return t[i[0]].apply(t,i.slice(1).concat(e))}),s=function(i){return typeof i=="object"&&i.hasOwnProperty("FAIL")};if(n.every(s))return{FAIL:"composeRUD: one or more operations hasn't completed successfully",report:n.filter(s)};this.dispatch("composeRUD",[n.filter(function(i){return!s(i)})])},u1.prototype.replaceRange=function(r,t,e,n){t=t!==null?t:this.tokens.length;var s=e.every(function(a){return a instanceof Ze});if(!isNaN(r)&&this.inboundIndex(r)&&s){var i=this.tokens.splice.apply(this.tokens,[r,t].concat(e));return n||this.dispatch("replaceToken",[r,t,e]),[i,e]}else return{FAIL:"replaceRange: invalid tokens or startIndex."}},u1.prototype.replaceToken=function(r,t,e){if(!isNaN(r)&&this.inboundIndex(r)&&t instanceof Ze){var n=this.tokens.splice(r,1,t);return e||this.dispatch("replaceToken",[r,t]),[n[0],t]}else return{FAIL:"replaceToken: invalid token or index."}},u1.prototype.removeRange=function(r,t,e){t=isNaN(t)?this.tokens.length:t;var n=this.tokens.splice(r,t);return e||this.dispatch("removeRange",[n,r,t]),n},u1.prototype.removeToken=function(r,t){if(!isNaN(r)&&this.inboundIndex(r)){var e=this.tokens.splice(r,1);return t||this.dispatch("removeToken",[e,r]),e}else return{FAIL:"removeToken: invalid token index."}},u1.prototype.insertToken=function(r,t,e){var n=r.every(function(s){return s instanceof Ze});return n?(this.tokens.splice.apply(this.tokens,[t,0].concat(r)),e||this.dispatch("insertToken",[r,t]),r):{FAIL:"insertToken: invalid token(s)."}},u1.prototype.registerModifier=function(r,t,e){this.events.newToken.subscribe(function(n,s){var i=[n,s],a=t===null||t.apply(this,i)===!0,o=[n,s];if(a){var u=e.apply(this,o);n.setState(r,u)}}),this.registeredModifiers.push(r)},_t.prototype.subscribe=function(r){return typeof r=="function"?this.subscribers.push(r)-1:{FAIL:"invalid '"+this.eventId+"' event handler"}},_t.prototype.unsubscribe=function(r){this.subscribers.splice(r,1)},U1.prototype.setCurrentIndex=function(r){this.index=r,this.current=this.context[r],this.backtrack=this.context.slice(0,r),this.lookahead=this.context.slice(r+1)},U1.prototype.get=function(r){switch(!0){case r===0:return this.current;case(r<0&&Math.abs(r)<=this.backtrack.length):return this.backtrack.slice(r)[0];case(r>0&&r<=this.lookahead.length):return this.lookahead[r-1];default:return null}},u1.prototype.rangeToText=function(r){if(r instanceof N6)return this.getRangeTokens(r).map(function(t){return t.char}).join("")},u1.prototype.getText=function(){return this.tokens.map(function(r){return r.char}).join("")},u1.prototype.getContext=function(r){var t=this.registeredContexts[r];return t||null},u1.prototype.on=function(r,t){var e=this.events[r];return e?e.subscribe(t):null},u1.prototype.dispatch=function(r,t){var e=this,n=this.events[r];n instanceof _t&&n.subscribers.forEach(function(s){s.apply(e,t||[])})},u1.prototype.registerContextChecker=function(r,t,e){if(this.getContext(r))return{FAIL:"context name '"+r+"' is already registered."};if(typeof t!="function")return{FAIL:"missing context start check."};if(typeof e!="function")return{FAIL:"missing context end check."};var n=new $9(r,t,e);return this.registeredContexts[r]=n,this.contextCheckers.push(n),n},u1.prototype.getRangeTokens=function(r){var t=r.startIndex+r.endOffset;return[].concat(this.tokens.slice(r.startIndex,t))},u1.prototype.getContextRanges=function(r){var t=this.getContext(r);return t?t.ranges:{FAIL:"context checker '"+r+"' is not registered."}},u1.prototype.resetContextsRanges=function(){var r=this.registeredContexts;for(var t in r)if(r.hasOwnProperty(t)){var e=r[t];e.ranges=[]}},u1.prototype.updateContextsRanges=function(){this.resetContextsRanges();for(var r=this.tokens.map(function(n){return n.char}),t=0;t<r.length;t++){var e=new U1(r,t);this.runContextCheck(e)}this.dispatch("updateContextsRanges",[this.registeredContexts])},u1.prototype.setEndOffset=function(r,t){var e=this.getContext(t).openRange.startIndex,n=new N6(e,r,t),s=this.getContext(t).ranges;return n.rangeId=t+"."+s.length,s.push(n),this.getContext(t).openRange=null,n},u1.prototype.runContextCheck=function(r){var t=this,e=r.index;this.contextCheckers.forEach(function(n){var s=n.contextName,i=t.getContext(s).openRange;if(!i&&n.checkStart(r)&&(i=new N6(e,null,s),t.getContext(s).openRange=i,t.dispatch("contextStart",[s,e])),i&&n.checkEnd(r)){var a=e-i.startIndex+1,o=t.setEndOffset(a,s);t.dispatch("contextEnd",[s,o])}})},u1.prototype.tokenize=function(r){this.tokens=[],this.resetContextsRanges();var t=Array.from(r);this.dispatch("start");for(var e=0;e<t.length;e++){var n=t[e],s=new U1(t,e);this.dispatch("next",[s]),this.runContextCheck(s);var i=new Ze(n);this.tokens.push(i),this.dispatch("newToken",[i,s])}return this.dispatch("end",[this.tokens]),this.tokens};function ve(r){return/[\u0600-\u065F\u066A-\u06D2\u06FA-\u06FF]/.test(r)}function tn(r){return/[\u0630\u0690\u0621\u0631\u0661\u0671\u0622\u0632\u0672\u0692\u06C2\u0623\u0673\u0693\u06C3\u0624\u0694\u06C4\u0625\u0675\u0695\u06C5\u06E5\u0676\u0696\u06C6\u0627\u0677\u0697\u06C7\u0648\u0688\u0698\u06C8\u0689\u0699\u06C9\u068A\u06CA\u066B\u068B\u06CB\u068C\u068D\u06CD\u06FD\u068E\u06EE\u06FE\u062F\u068F\u06CF\u06EF]/.test(r)}function me(r){return/[\u0600-\u0605\u060C-\u060E\u0610-\u061B\u061E\u064B-\u065F\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED]/.test(r)}function gt(r){return/[A-z]/.test(r)}function L9(r){return/\s/.test(r)}function k1(r){this.font=r,this.features={}}function Re(r){this.id=r.id,this.tag=r.tag,this.substitution=r.substitution}function k2(r,t){if(!r)return-1;switch(t.format){case 1:return t.glyphs.indexOf(r);case 2:for(var e=t.ranges,n=0;n<e.length;n++){var s=e[n];if(r>=s.start&&r<=s.end){var i=r-s.start;return s.index+i}}break;default:return-1}return-1}function P9(r,t){var e=k2(r,t.coverage);return e===-1?null:r+t.deltaGlyphId}function M9(r,t){var e=k2(r,t.coverage);return e===-1?null:t.substitute[e]}function U6(r,t){for(var e=[],n=0;n<r.length;n++){var s=r[n],i=t.current;i=Array.isArray(i)?i[0]:i;var a=k2(i,s);a!==-1&&e.push(a)}return e.length!==r.length?-1:e}function N9(r,t){var e=t.inputCoverage.length+t.lookaheadCoverage.length+t.backtrackCoverage.length;if(r.context.length<e)return[];var n=U6(t.inputCoverage,r);if(n===-1)return[];var s=t.inputCoverage.length-1;if(r.lookahead.length<t.lookaheadCoverage.length)return[];for(var i=r.lookahead.slice(s);i.length&&me(i[0].char);)i.shift();var a=new U1(i,0),o=U6(t.lookaheadCoverage,a),u=[].concat(r.backtrack);for(u.reverse();u.length&&me(u[0].char);)u.shift();if(u.length<t.backtrackCoverage.length)return[];var l=new U1(u,0),c=U6(t.backtrackCoverage,l),h=n.length===t.inputCoverage.length&&o.length===t.lookaheadCoverage.length&&c.length===t.backtrackCoverage.length,f=[];if(h)for(var d=0;d<t.lookupRecords.length;d++)for(var D=t.lookupRecords[d],m=D.lookupListIndex,v=this.getLookupByIndex(m),F=0;F<v.subtables.length;F++){var C=v.subtables[F],S=this.getLookupMethod(v,C),B=this.getSubstitutionType(v,C);if(B==="12")for(var w=0;w<n.length;w++){var x=r.get(w),O=S(x);O&&f.push(O)}}return f}function U9(r,t){var e=r.current,n=k2(e,t.coverage);if(n===-1)return null;for(var s,i=t.ligatureSets[n],a=0;a<i.length;a++){s=i[a];for(var o=0;o<s.components.length;o++){var u=r.lookahead[o],l=s.components[o];if(u!==l)break;if(o===s.components.length-1)return s}}return null}function H9(r,t){var e=k2(r,t.coverage);return e===-1?null:t.sequences[e]}k1.prototype.getDefaultScriptFeaturesIndexes=function(){for(var r=this.font.tables.gsub.scripts,t=0;t<r.length;t++){var e=r[t];if(e.tag==="DFLT")return e.script.defaultLangSys.featureIndexes}return[]},k1.prototype.getScriptFeaturesIndexes=function(r){var t=this.font.tables;if(!t.gsub)return[];if(!r)return this.getDefaultScriptFeaturesIndexes();for(var e=this.font.tables.gsub.scripts,n=0;n<e.length;n++){var s=e[n];if(s.tag===r&&s.script.defaultLangSys)return s.script.defaultLangSys.featureIndexes;var i=s.langSysRecords;if(i)for(var a=0;a<i.length;a++){var o=i[a];if(o.tag===r){var u=o.langSys;return u.featureIndexes}}}return this.getDefaultScriptFeaturesIndexes()},k1.prototype.mapTagsToFeatures=function(r,t){for(var e={},n=0;n<r.length;n++){var s=r[n].tag,i=r[n].feature;e[s]=i}this.features[t].tags=e},k1.prototype.getScriptFeatures=function(r){var t=this.features[r];if(this.features.hasOwnProperty(r))return t;var e=this.getScriptFeaturesIndexes(r);if(!e)return null;var n=this.font.tables.gsub;return t=e.map(function(s){return n.features[s]}),this.features[r]=t,this.mapTagsToFeatures(t,r),t},k1.prototype.getSubstitutionType=function(r,t){var e=r.lookupType.toString(),n=t.substFormat.toString();return e+n},k1.prototype.getLookupMethod=function(r,t){var e=this,n=this.getSubstitutionType(r,t);switch(n){case"11":return function(s){return P9.apply(e,[s,t])};case"12":return function(s){return M9.apply(e,[s,t])};case"63":return function(s){return N9.apply(e,[s,t])};case"41":return function(s){return U9.apply(e,[s,t])};case"21":return function(s){return H9.apply(e,[s,t])};default:throw new Error("lookupType: "+r.lookupType+" - substFormat: "+t.substFormat+" is not yet supported")}},k1.prototype.lookupFeature=function(r){var t=r.contextParams,e=t.index,n=this.getFeature({tag:r.tag,script:r.script});if(!n)return new Error("font '"+this.font.names.fullName.en+"' doesn't support feature '"+r.tag+"' for script '"+r.script+"'.");for(var s=this.getFeatureLookups(n),i=[].concat(t.context),a=0;a<s.length;a++)for(var o=s[a],u=this.getLookupSubtables(o),l=0;l<u.length;l++){var c=u[l],h=this.getSubstitutionType(o,c),f=this.getLookupMethod(o,c),d=void 0;switch(h){case"11":d=f(t.current),d&&i.splice(e,1,new Re({id:11,tag:r.tag,substitution:d}));break;case"12":d=f(t.current),d&&i.splice(e,1,new Re({id:12,tag:r.tag,substitution:d}));break;case"63":d=f(t),Array.isArray(d)&&d.length&&i.splice(e,1,new Re({id:63,tag:r.tag,substitution:d}));break;case"41":d=f(t),d&&i.splice(e,1,new Re({id:41,tag:r.tag,substitution:d}));break;case"21":d=f(t.current),d&&i.splice(e,1,new Re({id:21,tag:r.tag,substitution:d}));break}t=new U1(i,e),!(Array.isArray(d)&&!d.length)&&(d=null)}return i.length?i:null},k1.prototype.supports=function(r){if(!r.script)return!1;this.getScriptFeatures(r.script);var t=this.features.hasOwnProperty(r.script);if(!r.tag)return t;var e=this.features[r.script].some(function(n){return n.tag===r.tag});return t&&e},k1.prototype.getLookupSubtables=function(r){return r.subtables||null},k1.prototype.getLookupByIndex=function(r){var t=this.font.tables.gsub.lookups;return t[r]||null},k1.prototype.getFeatureLookups=function(r){return r.lookupListIndexes.map(this.getLookupByIndex.bind(this))},k1.prototype.getFeature=function(t){if(!this.font)return{FAIL:"No font was found"};this.features.hasOwnProperty(t.script)||this.getScriptFeatures(t.script);var e=this.features[t.script];return e?e.tags[t.tag]?this.features[t.script].tags[t.tag]:null:{FAIL:"No feature for script "+t.script}};function G9(r){var t=r.current,e=r.get(-1);return e===null&&ve(t)||!ve(e)&&ve(t)}function z9(r){var t=r.get(1);return t===null||!ve(t)}var X9={startCheck:G9,endCheck:z9};function W9(r){var t=r.current,e=r.get(-1);return(ve(t)||me(t))&&!ve(e)}function Y9(r){var t=r.get(1);switch(!0){case t===null:return!0;case(!ve(t)&&!me(t)):var e=L9(t);if(!e)return!0;if(e){var n=!1;if(n=r.lookahead.some(function(s){return ve(s)||me(s)}),!n)return!0}break;default:return!1}}var j9={startCheck:W9,endCheck:Y9};function V9(r,t,e){t[e].setState(r.tag,r.substitution)}function K9(r,t,e){t[e].setState(r.tag,r.substitution)}function q9(r,t,e){r.substitution.forEach(function(n,s){var i=t[e+s];i.setState(r.tag,n)})}function Z9(r,t,e){var n=t[e];n.setState(r.tag,r.substitution.ligGlyph);for(var s=r.substitution.components.length,i=0;i<s;i++)n=t[e+i+1],n.setState("deleted",!0)}var nn={11:V9,12:K9,63:q9,41:Z9};function H6(r,t,e){r instanceof Re&&nn[r.id]&&nn[r.id](r,t,e)}function J9(r){for(var t=[].concat(r.backtrack),e=t.length-1;e>=0;e--){var n=t[e],s=tn(n),i=me(n);if(!s&&!i)return!0;if(s)return!1}return!1}function Q9(r){if(tn(r.current))return!1;for(var t=0;t<r.lookahead.length;t++){var e=r.lookahead[t],n=me(e);if(!n)return!0}return!1}function e5(r){var t=this,e="arab",n=this.featuresTags[e],s=this.tokenizer.getRangeTokens(r);if(s.length!==1){var i=new U1(s.map(function(o){return o.getState("glyphIndex")}),0),a=new U1(s.map(function(o){return o.char}),0);s.forEach(function(o,u){if(!me(o.char)){i.setCurrentIndex(u),a.setCurrentIndex(u);var l=0;J9(a)&&(l|=1),Q9(a)&&(l|=2);var c;switch(l){case 1:c="fina";break;case 2:c="init";break;case 3:c="medi";break}if(n.indexOf(c)!==-1){var h=t.query.lookupFeature({tag:c,script:e,contextParams:i});if(h instanceof Error)return console.info(h.message);h.forEach(function(f,d){f instanceof Re&&(H6(f,s,d),i.context[d]=f.substitution)})}}})}}function rn(r,t){var e=r.map(function(n){return n.activeState.value});return new U1(e,t||0)}function t5(r){var t=this,e="arab",n=this.tokenizer.getRangeTokens(r),s=rn(n);s.context.forEach(function(i,a){s.setCurrentIndex(a);var o=t.query.lookupFeature({tag:"rlig",script:e,contextParams:s});o.length&&(o.forEach(function(u){return H6(u,n,a)}),s=rn(n))})}function n5(r){var t=r.current,e=r.get(-1);return e===null&>(t)||!gt(e)&>(t)}function r5(r){var t=r.get(1);return t===null||!gt(t)}var s5={startCheck:n5,endCheck:r5};function sn(r,t){var e=r.map(function(n){return n.activeState.value});return new U1(e,t||0)}function i5(r){var t=this,e="latn",n=this.tokenizer.getRangeTokens(r),s=sn(n);s.context.forEach(function(i,a){s.setCurrentIndex(a);var o=t.query.lookupFeature({tag:"liga",script:e,contextParams:s});o.length&&(o.forEach(function(u){return H6(u,n,a)}),s=sn(n))})}function H1(r){this.baseDir=r||"ltr",this.tokenizer=new u1,this.featuresTags={}}H1.prototype.setText=function(r){this.text=r},H1.prototype.contextChecks={latinWordCheck:s5,arabicWordCheck:X9,arabicSentenceCheck:j9};function G6(r){var t=this.contextChecks[r+"Check"];return this.tokenizer.registerContextChecker(r,t.startCheck,t.endCheck)}function a5(){return G6.call(this,"latinWord"),G6.call(this,"arabicWord"),G6.call(this,"arabicSentence"),this.tokenizer.tokenize(this.text)}function o5(){var r=this,t=this.tokenizer.getContextRanges("arabicSentence");t.forEach(function(e){var n=r.tokenizer.getRangeTokens(e);r.tokenizer.replaceRange(e.startIndex,e.endOffset,n.reverse())})}H1.prototype.registerFeatures=function(r,t){var e=this,n=t.filter(function(s){return e.query.supports({script:r,tag:s})});this.featuresTags.hasOwnProperty(r)?this.featuresTags[r]=this.featuresTags[r].concat(n):this.featuresTags[r]=n},H1.prototype.applyFeatures=function(r,t){if(!r)throw new Error("No valid font was provided to apply features");this.query||(this.query=new k1(r));for(var e=0;e<t.length;e++){var n=t[e];this.query.supports({script:n.script})&&this.registerFeatures(n.script,n.tags)}},H1.prototype.registerModifier=function(r,t,e){this.tokenizer.registerModifier(r,t,e)};function z6(){if(this.tokenizer.registeredModifiers.indexOf("glyphIndex")===-1)throw new Error("glyphIndex modifier is required to apply arabic presentation features.")}function u5(){var r=this,t="arab";if(this.featuresTags.hasOwnProperty(t)){z6.call(this);var e=this.tokenizer.getContextRanges("arabicWord");e.forEach(function(n){e5.call(r,n)})}}function l5(){var r=this,t="arab";if(this.featuresTags.hasOwnProperty(t)){var e=this.featuresTags[t];if(e.indexOf("rlig")!==-1){z6.call(this);var n=this.tokenizer.getContextRanges("arabicWord");n.forEach(function(s){t5.call(r,s)})}}}function c5(){var r=this,t="latn";if(this.featuresTags.hasOwnProperty(t)){var e=this.featuresTags[t];if(e.indexOf("liga")!==-1){z6.call(this);var n=this.tokenizer.getContextRanges("latinWord");n.forEach(function(s){i5.call(r,s)})}}}H1.prototype.checkContextReady=function(r){return!!this.tokenizer.getContext(r)},H1.prototype.applyFeaturesToContexts=function(){this.checkContextReady("arabicWord")&&(u5.call(this),l5.call(this)),this.checkContextReady("latinWord")&&c5.call(this),this.checkContextReady("arabicSentence")&&o5.call(this)},H1.prototype.processText=function(r){(!this.text||this.text!==r)&&(this.setText(r),a5.call(this),this.applyFeaturesToContexts())},H1.prototype.getBidiText=function(r){return this.processText(r),this.tokenizer.getText()},H1.prototype.getTextGlyphs=function(r){this.processText(r);for(var t=[],e=0;e<this.tokenizer.tokens.length;e++){var n=this.tokenizer.tokens[e];if(!n.state.deleted){var s=n.activeState.value;t.push(Array.isArray(s)?s[0]:s)}}return t};function i1(r){r=r||{},r.tables=r.tables||{},r.empty||(O2(r.familyName,"When creating a new Font object, familyName is required."),O2(r.styleName,"When creating a new Font object, styleName is required."),O2(r.unitsPerEm,"When creating a new Font object, unitsPerEm is required."),O2(r.ascender,"When creating a new Font object, ascender is required."),O2(r.descender<=0,"When creating a new Font object, negative descender value is required."),this.names={fontFamily:{en:r.familyName||" "},fontSubfamily:{en:r.styleName||" "},fullName:{en:r.fullName||r.familyName+" "+r.styleName},postScriptName:{en:r.postScriptName||(r.familyName+r.styleName).replace(/\s/g,"")},designer:{en:r.designer||" "},designerURL:{en:r.designerURL||" "},manufacturer:{en:r.manufacturer||" "},manufacturerURL:{en:r.manufacturerURL||" "},license:{en:r.license||" "},licenseURL:{en:r.licenseURL||" "},version:{en:r.version||"Version 0.1"},description:{en:r.description||" "},copyright:{en:r.copyright||" "},trademark:{en:r.trademark||" "}},this.unitsPerEm=r.unitsPerEm||1e3,this.ascender=r.ascender,this.descender=r.descender,this.createdTimestamp=r.createdTimestamp,this.tables=Object.assign(r.tables,{os2:Object.assign({usWeightClass:r.weightClass||this.usWeightClasses.MEDIUM,usWidthClass:r.widthClass||this.usWidthClasses.MEDIUM,fsSelection:r.fsSelection||this.fsSelectionValues.REGULAR},r.tables.os2)})),this.supported=!0,this.glyphs=new ee.GlyphSet(this,r.glyphs||[]),this.encoding=new Y4(this),this.position=new B2(this),this.substitution=new A1(this),this.tables=this.tables||{},this._push=null,this._hmtxTableData={},Object.defineProperty(this,"hinting",{get:function(){if(this._hinting)return this._hinting;if(this.outlinesFormat==="truetype")return this._hinting=new L7(this)}})}i1.prototype.hasChar=function(r){return this.encoding.charToGlyphIndex(r)!==null},i1.prototype.charToGlyphIndex=function(r){return this.encoding.charToGlyphIndex(r)},i1.prototype.charToGlyph=function(r){var t=this.charToGlyphIndex(r),e=this.glyphs.get(t);return e||(e=this.glyphs.get(0)),e},i1.prototype.updateFeatures=function(r){return this.defaultRenderOptions.features.map(function(t){return t.script==="latn"?{script:"latn",tags:t.tags.filter(function(e){return r[e]})}:t})},i1.prototype.stringToGlyphs=function(r,t){var e=this,n=new H1,s=function(h){return e.charToGlyphIndex(h.char)};n.registerModifier("glyphIndex",null,s);var i=t?this.updateFeatures(t.features):this.defaultRenderOptions.features;n.applyFeatures(this,i);for(var a=n.getTextGlyphs(r),o=a.length,u=new Array(o),l=this.glyphs.get(0),c=0;c<o;c+=1)u[c]=this.glyphs.get(a[c])||l;return u},i1.prototype.nameToGlyphIndex=function(r){return this.glyphNames.nameToGlyphIndex(r)},i1.prototype.nameToGlyph=function(r){var t=this.nameToGlyphIndex(r),e=this.glyphs.get(t);return e||(e=this.glyphs.get(0)),e},i1.prototype.glyphIndexToName=function(r){return this.glyphNames.glyphIndexToName?this.glyphNames.glyphIndexToName(r):""},i1.prototype.getKerningValue=function(r,t){r=r.index||r,t=t.index||t;var e=this.position.defaultKerningTables;return e?this.position.getKerningValue(e,r,t):this.kerningPairs[r+","+t]||0},i1.prototype.defaultRenderOptions={kerning:!0,features:[{script:"arab",tags:["init","medi","fina","rlig"]},{script:"latn",tags:["liga","rlig"]}]},i1.prototype.forEachGlyph=function(r,t,e,n,s,i){t=t!==void 0?t:0,e=e!==void 0?e:0,n=n!==void 0?n:72,s=Object.assign({},this.defaultRenderOptions,s);var a=1/this.unitsPerEm*n,o=this.stringToGlyphs(r,s),u;if(s.kerning){var l=s.script||this.position.getDefaultScriptName();u=this.position.getKerningTables(l,s.language)}for(var c=0;c<o.length;c+=1){var h=o[c];if(i.call(this,h,t,e,n,s),h.advanceWidth&&(t+=h.advanceWidth*a),s.kerning&&c<o.length-1){var f=u?this.position.getKerningValue(u,h.index,o[c+1].index):this.getKerningValue(h,o[c+1]);t+=f*a}s.letterSpacing?t+=s.letterSpacing*n:s.tracking&&(t+=s.tracking/1e3*n)}return t},i1.prototype.getPath=function(r,t,e,n,s){var i=new d1;return this.forEachGlyph(r,t,e,n,s,function(a,o,u,l){var c=a.getPath(o,u,l,s,this);i.extend(c)}),i},i1.prototype.getPaths=function(r,t,e,n,s){var i=[];return this.forEachGlyph(r,t,e,n,s,function(a,o,u,l){var c=a.getPath(o,u,l,s,this);i.push(c)}),i},i1.prototype.getAdvanceWidth=function(r,t,e){return this.forEachGlyph(r,0,0,t,e,function(){})},i1.prototype.draw=function(r,t,e,n,s,i){this.getPath(t,e,n,s,i).draw(r)},i1.prototype.drawPoints=function(r,t,e,n,s,i){this.forEachGlyph(t,e,n,s,i,function(a,o,u,l){a.drawPoints(r,o,u,l)})},i1.prototype.drawMetrics=function(r,t,e,n,s,i){this.forEachGlyph(t,e,n,s,i,function(a,o,u,l){a.drawMetrics(r,o,u,l)})},i1.prototype.getEnglishName=function(r){var t=this.names[r];if(t)return t.en},i1.prototype.validate=function(){var r=this;function t(n,s){}function e(n){var s=r.getEnglishName(n);s&&s.trim().length>0}e("fontFamily"),e("weightName"),e("manufacturer"),e("copyright"),e("version"),this.unitsPerEm>0},i1.prototype.toTables=function(){return Zs.fontToTable(this)},i1.prototype.toBuffer=function(){return console.warn("Font.toBuffer is deprecated. Use Font.toArrayBuffer instead."),this.toArrayBuffer()},i1.prototype.toArrayBuffer=function(){for(var r=this.toTables(),t=r.encode(),e=new ArrayBuffer(t.length),n=new Uint8Array(e),s=0;s<t.length;s++)n[s]=t[s];return e},i1.prototype.download=function(r){var t=this.getEnglishName("fontFamily"),e=this.getEnglishName("fontSubfamily");r=r||t.replace(/\s/g,"")+"-"+e+".otf";var n=this.toArrayBuffer();if(Qs())if(window.URL=window.URL||window.webkitURL,window.URL){var s=new DataView(n),i=new Blob([s],{type:"font/opentype"}),a=document.createElement("a");a.href=window.URL.createObjectURL(i),a.download=r;var o=document.createEvent("MouseEvents");o.initEvent("click",!0,!1),a.dispatchEvent(o)}else console.warn("Font file could not be downloaded. Try using a different browser.");else{var u=require("fs"),l=ei(n);u.writeFileSync(r,l)}},i1.prototype.fsSelectionValues={ITALIC:1,UNDERSCORE:2,NEGATIVE:4,OUTLINED:8,STRIKEOUT:16,BOLD:32,REGULAR:64,USER_TYPO_METRICS:128,WWS:256,OBLIQUE:512},i1.prototype.usWidthClasses={ULTRA_CONDENSED:1,EXTRA_CONDENSED:2,CONDENSED:3,SEMI_CONDENSED:4,MEDIUM:5,SEMI_EXPANDED:6,EXPANDED:7,EXTRA_EXPANDED:8,ULTRA_EXPANDED:9},i1.prototype.usWeightClasses={THIN:100,EXTRA_LIGHT:200,LIGHT:300,NORMAL:400,MEDIUM:500,SEMI_BOLD:600,BOLD:700,EXTRA_BOLD:800,BLACK:900};function an(r,t){var e=JSON.stringify(r),n=256;for(var s in t){var i=parseInt(s);if(!(!i||i<256)){if(JSON.stringify(t[s])===e)return i;n<=i&&(n=i+1)}}return t[n]=r,n}function h5(r,t,e){var n=an(t.name,e);return[{name:"tag_"+r,type:"TAG",value:t.tag},{name:"minValue_"+r,type:"FIXED",value:t.minValue<<16},{name:"defaultValue_"+r,type:"FIXED",value:t.defaultValue<<16},{name:"maxValue_"+r,type:"FIXED",value:t.maxValue<<16},{name:"flags_"+r,type:"USHORT",value:0},{name:"nameID_"+r,type:"USHORT",value:n}]}function f5(r,t,e){var n={},s=new Y.Parser(r,t);return n.tag=s.parseTag(),n.minValue=s.parseFixed(),n.defaultValue=s.parseFixed(),n.maxValue=s.parseFixed(),s.skip("uShort",1),n.name=e[s.parseUShort()]||{},n}function d5(r,t,e,n){for(var s=an(t.name,n),i=[{name:"nameID_"+r,type:"USHORT",value:s},{name:"flags_"+r,type:"USHORT",value:0}],a=0;a<e.length;++a){var o=e[a].tag;i.push({name:"axis_"+r+" "+o,type:"FIXED",value:t.coordinates[o]<<16})}return i}function _5(r,t,e,n){var s={},i=new Y.Parser(r,t);s.name=n[i.parseUShort()]||{},i.skip("uShort",1),s.coordinates={};for(var a=0;a<e.length;++a)s.coordinates[e[a].tag]=i.parseFixed();return s}function g5(r,t){var e=new z.Table("fvar",[{name:"version",type:"ULONG",value:65536},{name:"offsetToData",type:"USHORT",value:0},{name:"countSizePairs",type:"USHORT",value:2},{name:"axisCount",type:"USHORT",value:r.axes.length},{name:"axisSize",type:"USHORT",value:20},{name:"instanceCount",type:"USHORT",value:r.instances.length},{name:"instanceSize",type:"USHORT",value:4+r.axes.length*4}]);e.offsetToData=e.sizeOf();for(var n=0;n<r.axes.length;n++)e.fields=e.fields.concat(h5(n,r.axes[n],t));for(var s=0;s<r.instances.length;s++)e.fields=e.fields.concat(d5(s,r.instances[s],r.axes,t));return e}function p5(r,t,e){var n=new Y.Parser(r,t),s=n.parseULong();J.argument(s===65536,"Unsupported fvar table version.");var i=n.parseOffset16();n.skip("uShort",1);for(var a=n.parseUShort(),o=n.parseUShort(),u=n.parseUShort(),l=n.parseUShort(),c=[],h=0;h<a;h++)c.push(f5(r,t+i+h*o,e));for(var f=[],d=t+i+a*o,D=0;D<u;D++)f.push(_5(r,d+D*l,c,e));return{axes:c,instances:f}}var D5={make:g5,parse:p5},v5=function(){return{coverage:this.parsePointer(R.coverage),attachPoints:this.parseList(R.pointer(R.uShortList))}},m5=function(){var r=this.parseUShort();if(J.argument(r===1||r===2||r===3,"Unsupported CaretValue table version."),r===1)return{coordinate:this.parseShort()};if(r===2)return{pointindex:this.parseShort()};if(r===3)return{coordinate:this.parseShort()}},b5=function(){return this.parseList(R.pointer(m5))},y5=function(){return{coverage:this.parsePointer(R.coverage),ligGlyphs:this.parseList(R.pointer(b5))}},F5=function(){return this.parseUShort(),this.parseList(R.pointer(R.coverage))};function C5(r,t){t=t||0;var e=new R(r,t),n=e.parseVersion(1);J.argument(n===1||n===1.2||n===1.3,"Unsupported GDEF table version.");var s={version:n,classDef:e.parsePointer(R.classDef),attachList:e.parsePointer(v5),ligCaretList:e.parsePointer(y5),markAttachClassDef:e.parsePointer(R.classDef)};return n>=1.2&&(s.markGlyphSets=e.parsePointer(F5)),s}var E5={parse:C5},G1=new Array(10);G1[1]=function(){var t=this.offset+this.relativeOffset,e=this.parseUShort();if(e===1)return{posFormat:1,coverage:this.parsePointer(R.coverage),value:this.parseValueRecord()};if(e===2)return{posFormat:2,coverage:this.parsePointer(R.coverage),values:this.parseValueRecordList()};J.assert(!1,"0x"+t.toString(16)+": GPOS lookup type 1 format must be 1 or 2.")},G1[2]=function(){var t=this.offset+this.relativeOffset,e=this.parseUShort();J.assert(e===1||e===2,"0x"+t.toString(16)+": GPOS lookup type 2 format must be 1 or 2.");var n=this.parsePointer(R.coverage),s=this.parseUShort(),i=this.parseUShort();if(e===1)return{posFormat:e,coverage:n,valueFormat1:s,valueFormat2:i,pairSets:this.parseList(R.pointer(R.list(function(){return{secondGlyph:this.parseUShort(),value1:this.parseValueRecord(s),value2:this.parseValueRecord(i)}})))};if(e===2){var a=this.parsePointer(R.classDef),o=this.parsePointer(R.classDef),u=this.parseUShort(),l=this.parseUShort();return{posFormat:e,coverage:n,valueFormat1:s,valueFormat2:i,classDef1:a,classDef2:o,class1Count:u,class2Count:l,classRecords:this.parseList(u,R.list(l,function(){return{value1:this.parseValueRecord(s),value2:this.parseValueRecord(i)}}))}}},G1[3]=function(){return{error:"GPOS Lookup 3 not supported"}},G1[4]=function(){return{error:"GPOS Lookup 4 not supported"}},G1[5]=function(){return{error:"GPOS Lookup 5 not supported"}},G1[6]=function(){return{error:"GPOS Lookup 6 not supported"}},G1[7]=function(){return{error:"GPOS Lookup 7 not supported"}},G1[8]=function(){return{error:"GPOS Lookup 8 not supported"}},G1[9]=function(){return{error:"GPOS Lookup 9 not supported"}};function S5(r,t){t=t||0;var e=new R(r,t),n=e.parseVersion(1);return J.argument(n===1||n===1.1,"Unsupported GPOS table version "+n),n===1?{version:n,scripts:e.parseScriptList(),features:e.parseFeatureList(),lookups:e.parseLookupList(G1)}:{version:n,scripts:e.parseScriptList(),features:e.parseFeatureList(),lookups:e.parseLookupList(G1),variations:e.parseFeatureVariationsList()}}var T5=new Array(10);function w5(r){return new z.Table("GPOS",[{name:"version",type:"ULONG",value:65536},{name:"scripts",type:"TABLE",value:new z.ScriptList(r.scripts)},{name:"features",type:"TABLE",value:new z.FeatureList(r.features)},{name:"lookups",type:"TABLE",value:new z.LookupList(r.lookups,T5)}])}var B5={parse:S5,make:w5};function O5(r){var t={};r.skip("uShort");var e=r.parseUShort();J.argument(e===0,"Unsupported kern sub-table version."),r.skip("uShort",2);var n=r.parseUShort();r.skip("uShort",3);for(var s=0;s<n;s+=1){var i=r.parseUShort(),a=r.parseUShort(),o=r.parseShort();t[i+","+a]=o}return t}function x5(r){var t={};r.skip("uShort");var e=r.parseULong();e>1&&console.warn("Only the first kern subtable is supported."),r.skip("uLong");var n=r.parseUShort(),s=n&255;if(r.skip("uShort"),s===0){var i=r.parseUShort();r.skip("uShort",3);for(var a=0;a<i;a+=1){var o=r.parseUShort(),u=r.parseUShort(),l=r.parseShort();t[o+","+u]=l}}return t}function R5(r,t){var e=new Y.Parser(r,t),n=e.parseUShort();if(n===0)return O5(e);if(n===1)return x5(e);throw new Error("Unsupported kern table version ("+n+").")}var A5={parse:R5};function k5(r,t,e,n){for(var s=new Y.Parser(r,t),i=n?s.parseUShort:s.parseULong,a=[],o=0;o<e+1;o+=1){var u=i.call(s);n&&(u*=2),a.push(u)}return a}var $5={parse:k5};function I5(r,t){var e=require("fs");e.readFile(r,function(n,s){if(n)return t(n.message);t(null,B7(s))})}function L5(r,t){var e=new XMLHttpRequest;e.open("get",r,!0),e.responseType="arraybuffer",e.onload=function(){return e.response?t(null,e.response):t("Font could not be loaded: "+e.statusText)},e.onerror=function(){t("Font could not be loaded")},e.send()}function on(r,t){for(var e=[],n=12,s=0;s<t;s+=1){var i=Y.getTag(r,n),a=Y.getULong(r,n+4),o=Y.getULong(r,n+8),u=Y.getULong(r,n+12);e.push({tag:i,checksum:a,offset:o,length:u,compression:!1}),n+=16}return e}function P5(r,t){for(var e=[],n=44,s=0;s<t;s+=1){var i=Y.getTag(r,n),a=Y.getULong(r,n+4),o=Y.getULong(r,n+8),u=Y.getULong(r,n+12),l=void 0;o<u?l="WOFF":l=!1,e.push({tag:i,offset:a,compression:l,compressedLength:o,length:u}),n+=20}return e}function c1(r,t){if(t.compression==="WOFF"){var e=new Uint8Array(r.buffer,t.offset+2,t.compressedLength-2),n=new Uint8Array(t.length);if(B8(e,n),n.byteLength!==t.length)throw new Error("Decompression error: "+t.tag+" decompressed length doesn't match recorded length");var s=new DataView(n.buffer,0);return{data:s,offset:0}}else return{data:r,offset:t.offset}}function X6(r,t){t=t==null?{}:t;var e,n,s=new i1({empty:!0}),i=new DataView(r,0),a,o=[],u=Y.getTag(i,0);if(u==="\0\0\0"||u==="true"||u==="typ1")s.outlinesFormat="truetype",a=Y.getUShort(i,4),o=on(i,a);else if(u==="OTTO")s.outlinesFormat="cff",a=Y.getUShort(i,4),o=on(i,a);else if(u==="wOFF"){var l=Y.getTag(i,4);if(l==="\0\0\0")s.outlinesFormat="truetype";else if(l==="OTTO")s.outlinesFormat="cff";else throw new Error("Unsupported OpenType flavor "+u);a=Y.getUShort(i,12),o=P5(i,a)}else throw new Error("Unsupported OpenType signature "+u);for(var c,h,f,d,D,m,v,F,C,S,B,w,x=0;x<a;x+=1){var O=o[x],T=void 0;switch(O.tag){case"cmap":T=c1(i,O),s.tables.cmap=W4.parse(T.data,T.offset),s.encoding=new j4(s.tables.cmap);break;case"cvt ":T=c1(i,O),w=new Y.Parser(T.data,T.offset),s.tables.cvt=w.parseShortList(O.length/2);break;case"fvar":h=O;break;case"fpgm":T=c1(i,O),w=new Y.Parser(T.data,T.offset),s.tables.fpgm=w.parseByteList(O.length);break;case"head":T=c1(i,O),s.tables.head=o7.parse(T.data,T.offset),s.unitsPerEm=s.tables.head.unitsPerEm,e=s.tables.head.indexToLocFormat;break;case"hhea":T=c1(i,O),s.tables.hhea=u7.parse(T.data,T.offset),s.ascender=s.tables.hhea.ascender,s.descender=s.tables.hhea.descender,s.numberOfHMetrics=s.tables.hhea.numberOfHMetrics;break;case"hmtx":v=O;break;case"ltag":T=c1(i,O),n=c7.parse(T.data,T.offset);break;case"maxp":T=c1(i,O),s.tables.maxp=h7.parse(T.data,T.offset),s.numGlyphs=s.tables.maxp.numGlyphs;break;case"name":S=O;break;case"OS/2":T=c1(i,O),s.tables.os2=x6.parse(T.data,T.offset);break;case"post":T=c1(i,O),s.tables.post=m7.parse(T.data,T.offset),s.glyphNames=new E6(s.tables.post);break;case"prep":T=c1(i,O),w=new Y.Parser(T.data,T.offset),s.tables.prep=w.parseByteList(O.length);break;case"glyf":f=O;break;case"loca":C=O;break;case"CFF ":c=O;break;case"kern":F=O;break;case"GDEF":d=O;break;case"GPOS":D=O;break;case"GSUB":m=O;break;case"meta":B=O;break}}var A=c1(i,S);if(s.tables.name=v7.parse(A.data,A.offset,n),s.names=s.tables.name,f&&C){var k=e===0,$=c1(i,C),I=$5.parse($.data,$.offset,s.numGlyphs,k),M=c1(i,f);s.glyphs=k7.parse(M.data,M.offset,I,s,t)}else if(c){var L=c1(i,c);a7.parse(L.data,L.offset,s,t)}else throw new Error("Font doesn't contain TrueType or CFF outlines.");var U=c1(i,v);if(l7.parse(s,U.data,U.offset,s.numberOfHMetrics,s.numGlyphs,s.glyphs,t),K8(s,t),F){var G=c1(i,F);s.kerningPairs=A5.parse(G.data,G.offset)}else s.kerningPairs={};if(d){var X=c1(i,d);s.tables.gdef=E5.parse(X.data,X.offset)}if(D){var H=c1(i,D);s.tables.gpos=B5.parse(H.data,H.offset),s.position.init()}if(m){var V=c1(i,m);s.tables.gsub=b7.parse(V.data,V.offset)}if(h){var e1=c1(i,h);s.tables.fvar=D5.parse(e1.data,e1.offset,s.names)}if(B){var t1=c1(i,B);s.tables.meta=y7.parse(t1.data,t1.offset),s.metas=s.tables.meta}return s}function M5(r,t,e){e=e==null?{}:e;var n=typeof window>"u",s=n&&!e.isUrl?I5:L5;return new Promise(function(i,a){s(r,function(o,u){if(o){if(t)return t(o);a(o)}var l;try{l=X6(u,e)}catch(c){if(t)return t(c,null);a(c)}if(t)return t(null,l);i(l)})})}function N5(r,t){var e=require("fs"),n=e.readFileSync(r);return X6(B7(n),t)}var U5=Object.freeze({__proto__:null,Font:i1,Glyph:R1,Path:d1,BoundingBox:ae,_parse:Y,parse:X6,load:M5,loadSync:N5});function H5(r){const{family:t,style:e}=r;let n=0,s=400;switch(/italic/i.test(e)&&(n=1),!0){case/thin|hairline/i.test(e):{s=100;break}case/(extra|ultra) *light/i.test(e):{s=200;break}case/light/i.test(e):{s=300;break}case/medium/i.test(e):{s=500;break}case/(semi|demi) *bold/i.test(e):{s=600;break}case/bold/i.test(e):{s=700;break}case/(extra|ultra) *bold/i.test(e):{s=800;break}case/black|heavy/i.test(e):{s=900;break}}return{family:t,variant:{style:n,weight:s}}}function G5(r){const{ff:t,bl:e=g.BooleanNumber.FALSE,it:n=g.BooleanNumber.FALSE}=r;return{family:t!=null?t:"Arial",variant:{style:n===g.BooleanNumber.TRUE?1:0,weight:e===g.BooleanNumber.TRUE?700:400}}}function z5(r,t){let e=Number.POSITIVE_INFINITY;r.variant.style===t.variant.style?e=0:r.variant.style!==0&&t.variant.style!==0?e=1:e=2;const n=Math.abs(r.variant.weight-t.variant.weight);return[e,n]}function X5(r,t){return r[0]===t[0]&&r[1]===t[1]?0:r[0]===t[0]?r[1]>t[1]?1:2:r[0]>t[0]?1:2}async function W5(){var t;return typeof window>"u"?void 0:window.navigator==null||((t=window.navigator)==null?void 0:t.permissions)==null?!1:(await window.navigator.permissions.query({name:"local-fonts"})).state==="granted"}class Y5{constructor(){_(this,"isReady",!1);_(this,"_fontBook",new Map);this._loadFontsToBook()}async _loadFontsToBook(){if(!(this.isReady||!await W5())&&"queryLocalFonts"in window)try{const e=await window.queryLocalFonts();for(const n of e){const{family:s,style:i}=n;let a=this._fontBook.get(s);a==null&&(a=new Map,this._fontBook.set(s,a));const u=await(await n.blob()).arrayBuffer();a.set(i,{font:n,buffer:u})}this.isReady=!0}catch(e){console.error(e)}}findBestMatchFontByStyle(t){const e=t.ff,n=this._fontBook.get(e);if(n==null)return;let s=null,i=[Number.POSITIVE_INFINITY,Number.POSITIVE_INFINITY];for(const a of n.values()){const{font:o}=a,u=H5(o),l=G5(t),c=z5(u,l);(s==null||X5(i,c)===1)&&(s=a,i=c)}return s}getValidFontFamilies(t){return t.filter(e=>this._fontBook.has(e))}}const pt=new Y5;function j5(r,t){const{dataStream:e,paragraphs:n=[],textRuns:s=[]}=r;let i=0;for(let o=0;o<n.length;o++){const u=n[o],{startIndex:l}=u;if(l===t)break;i=l+1}const a=[];for(const o of s){const{st:u,ed:l}=o;u>=i&&u<=t?a.push({...o,st:u-i,ed:Math.min(l,t)-i}):l>=i&&l<=t&&a.push({...o,st:Math.max(u,i)-i,ed:l-i})}return{dataStream:e.substring(i,t+1),textRuns:a}}function V5(r){const{dataStream:t,textRuns:e=[]}=r;let n=0;const s=[];for(const i of e){const{st:a,ed:o,ts:u={}}=i;a!==n&&s.push({content:t.substring(n,a)}),s.push({content:t.substring(a,o),style:u}),n=o}return n!==t.length&&s.push({content:t.substring(n)}),s}const un=new Map,W6=new Map;function Y6(r,t,e,n,s){var m,v,F,C;let i=0,a=n[i];for(;e.has(a);)i++,a=n[i];if(!a)return[{char:r,start:t,end:t+r.length,glyph:null,font:null,kerning:0,boundingBox:null}];e.add(a);const{font:o,buffer:u}=pt.findBestMatchFontByStyle({ff:a,bl:(m=s.bl)!=null?m:g.BooleanNumber.FALSE,it:(v=s.it)!=null?v:g.BooleanNumber.FALSE});let l=un.get(o.fullName);l||(l=U5.parse(u),un.set(o.fullName,l));const c=[],h=l.stringToGlyphs(r),f=(F=r.match(/[\s\S]/gu))!=null?F:[];let d=0,D=0;for(;d<h.length;){const S=h[d];if(S.index!==0)c.push({char:f[d],start:D+t,end:D+t+f[d].length,glyph:S,font:l,kerning:0,boundingBox:S.getBoundingBox()});else{const B=D,x=r.substring(B).match(H2);if(x){let O=0;do O+=f[d].length,D+=f[d].length,d++;while(O<x[0].length);c.push(...Y6(r.slice(B,B+x[0].length),t+B,e,n,s));continue}else{let O=h[d+1],T=f[d+1];for(;(O==null?void 0:O.index)===0&&!H2.test(T);)D+=f[d].length,d++,O=h[d+1],T=f[d+1];c.push(...Y6(r.slice(B,D+f[d].length),t+B,e,n,s))}}D+=(C=f[d])==null?void 0:C.length,d++}return e.delete(a),c}function K5(r){if(r.length<2)return;let t=r[0].font,e=r[0].glyph;for(let n=1;n<r.length;n++){const{font:s,glyph:i}=r[n];if(t!==s||s==null||e==null||i==null){t=s,e=i;continue}const a=s.getKerningValue(e,i);a!==0&&(r[n].kerning=a),t=s,e=i}}function q5(r){var i;if(!pt.isReady)return[];const t=JSON.stringify(r);if(W6.has(t))return W6.get(t);const e=V5(r),n=[];let s=0;for(const a of e){const{content:o,style:u={}}=a;let l=o2.split(",").map(c=>c.trim().replace(/["']/g,""));l.unshift((i=u.ff)!=null?i:"Arial"),l=pt.getValidFontFamilies(l),n.push(...Y6(o,s,new Set,l,u)),s+=o.length}return K5(n),W6.set(t,n),n}function Z5(r,t,e,n,s,i){const a=[];let o=0;for(let u=0;u<t.length;u++){const l=t[u];if(O0(l)||G2(t.substring(u)))break;const c=Se(r+u,e,n,s,i),h=we(l,c);a.push(h),o++}return{step:o,glyphGroup:a}}function J5(r,t,e,n,s,i){const a=Se(r,e,n,s,i),o=[];let u=0;for(let l=0;l<t.length;l++){const c=t[l];if(At(c))o.unshift(c),u++;else break}return{step:u,glyphGroup:[we(o.join(""),a)]}}function Q5(r,t,e,n,s,i){const a=Se(r,e,n,s,i),o=t.match(H2);return{step:o[0].length,glyphGroup:[we(o[0],a)]}}function ea(r,t,e,n,s,i){const a=Se(r,e,n,s,i),o=[];let u=0;for(let l=0;l<t.length;l++){const c=t[l];if(kt(c))o.push(c),u++;else break}return{step:u,glyphGroup:[v8(o.join(""),a)]}}function ta(r){const t=r.length;for(let e=0;e<t-1;e++){const n=r[e],s=r[e+1],{width:i,content:a}=n,o=i/2;if(Rt(a)&&Rt(s.content)&&n.adjustability.shrinkability[1]+s.adjustability.shrinkability[0]>=o){const u=Math.min(n.adjustability.shrinkability[1],o);w4(n,u),B4(s,o-u)}}}function na(r){const t=r.flatMap(i=>i.glyphs);let e=null;const n=t.length,s=/[a-z\d]/i;for(let i=0;i<n;i++){const a=t[i],o=i<n-1?t[i+1]:null,{width:u}=a;f2(a.content)&&o&&s.test(o.content)&&(a.width+=u/4,a.adjustability.shrinkability[1]+=u/8),f2(a.content)&&e&&s.test(e.content)&&(a.width+=u/4,a.xOffset+=u/4,a.adjustability.shrinkability[0]+=u/8),e=a}}function ra(r,t,e,n,s,i=!1){var S;const{gridType:a=g.GridType.LINES,charSpace:o=0,defaultTabStop:u=10.5,drawings:l={}}=n,{snapToGrid:c=g.BooleanNumber.TRUE}=s,h=[],f=new g8(r),{endIndex:d}=e;let D=0,m,v=0;const F=j5(t.getBody(),d);let C=[];for(i&&(C=q5(F)),D8(f);m=f.nextBreak();){const B=r.slice(D,m.position),w=[];if(pt.isReady&&i){const O=[];let T=0;for(T=v;T<C.length;T++){const A=C[T],{end:k}=A;if(k>m.position)break;O.push(A)}v=T;for(const A of O){const{start:k,char:$}=A,I=Se(k,t,e,n,s);if($===g.DataStreamTreeTokenType.TAB){const M=b2(o,u,a,c),L=S4(I,M);w.push(L)}else if(G2($)){const M=we($,I);w.push(M)}else{const M=we($,I,void 0,A);w.push(M)}}}else{let O=B,T=D;for(;O.length>0;){const A=(S=O.match(/^[\s\S]/gu))==null?void 0:S[0];if(A==null)break;if(A===g.DataStreamTreeTokenType.CUSTOM_BLOCK){const k=Se(T,t,e,n,s);let $=null;const I=t.getCustomBlock(e.startIndex+T);if(I!=null){const{blockId:M}=I,L=l[M];if(L.layoutType===g.PositionedObjectLayoutType.INLINE){const{width:U,height:G}=L.objectTransform.size,{objectId:X}=L;$=T4(k,U,G,X)}else $=T4(k,0,0,L.objectId)}$==null&&($=we(A,k)),w.push($),T+=A.length,O=O.substring(A.length)}else if(/\s/.test(A)||d2(A)){const k=Se(T,t,e,n,s);let $=null;if(A===g.DataStreamTreeTokenType.TAB){const I=b2(o,u,a,c);$=S4(k,I)}else $=we(A,k);w.push($),T+=A.length,O=O.substring(A.length)}else if(G2(O)){const{step:k,glyphGroup:$}=Q5(T,O,t,e,n,s);w.push(...$),T+=k,O=O.substring(k)}else if(At(A)){const{step:k,glyphGroup:$}=J5(T,O,t,e,n,s);w.push(...$),T+=k,O=O.substring(k)}else if(kt(A)){const{step:k,glyphGroup:$}=ea(T,O,t,e,n,s);w.push(...$),T+=k,O=O.substring(k)}else{const{step:k,glyphGroup:$}=Z5(T,O,t,e,n,s);w.push(...$),T+=k,O=O.substring(k)}}}ta(w);const x=[[]];for(let O=0;O<w.length;O++){const T=x[x.length-1],A=w[O];A.streamType===g.DataStreamTreeTokenType.CUSTOM_BLOCK&&A.width!==0?x.push([A]):T.push(A)}for(const O of x){const T=O.map(A=>A.content).join();h.push({text:T,glyphs:O})}D=m.position}return na(h),h}function sa(r,t,e,n,s=0,i=!1,a=new Map,o,u){const{lineHeight:l=15.6,lineTop:c=0,contentHeight:h=0,paddingLeft:f=0,paddingRight:d=0,paddingTop:D=0,paddingBottom:m=0,marginTop:v=0,spaceBelowApply:F=0}=e,C=ha(t,r);C.lineIndex=s,C.paragraphStart=i,C.contentHeight=h,C.top=c,C.lineHeight=l,C.paddingTop=D,C.paddingBottom=m,C.marginTop=v,C.spaceBelowApply=F;const S=new Map(Array.from(a).filter(([B,w])=>w.drawingOrigin.layoutType!==g.PositionedObjectLayoutType.INLINE));C.divides=aa(l,c,n,f,d,S,o,u);for(const B of C.divides)B.parent=C;return C}function ia(r=15.6,t=0,e,n,s){let i=t;return n==null||n.forEach(a=>{const o=j6(a,r,t);o&&(i=Math.max(i,o))}),s==null||s.forEach(a=>{const o=j6(a,r,t);o&&(i=Math.max(i,o))}),e==null||e.forEach(a=>{const o=j6(a,r,t);o&&(i=Math.max(i,o))}),i}function j6(r,t,e){const{aTop:n,height:s,aLeft:i,width:a,angle:o=0,drawingOrigin:u}=r,{layoutType:l,distT:c=0,distB:h=0}=u;if(l!==g.PositionedObjectLayoutType.WRAP_TOP_AND_BOTTOM)return;if(o===0){const D=n-c,m=s+h;return D+m<e||D>t+e?void 0:D+s}let{top:f=0,height:d=0}=cn(o,i,a,n,s);if(f-=c,d+=h,!(f+d<e||f>t+e))return f+d}function aa(r,t,e,n,s,i,a,o){const u=[];return u.push({left:0,width:n},{left:e-s,width:s}),a==null||a.forEach((l,c)=>{const h=V6(l,r,t,e);h&&u.push(h)}),o==null||o.forEach((l,c)=>{const h=V6(l,r,t,e);h&&u.push(h)}),i==null||i.forEach((l,c)=>{const h=V6(l,r,t,e);h&&u.push(h)}),ca(e,u)}function oa(r,t){r.isFull=t}function ln(r,t,e,n){const{aTop:s,height:i,aLeft:a,width:o,angle:u=0,drawingOrigin:l}=r;return!!K6(s,i,a,o,e,t,n,l)}function V6(r,t,e,n){const{aTop:s,height:i,aLeft:a,width:o,angle:u=0,drawingOrigin:l}=r,{layoutType:c}=l;if(c===g.PositionedObjectLayoutType.WRAP_NONE||c===g.PositionedObjectLayoutType.WRAP_TOP_AND_BOTTOM)return;if(c===g.PositionedObjectLayoutType.WRAP_POLYGON){const{start:f=[0,0],lineTo:d}=l;if(!d)return;const D=[];D.push(new P(f[0],f[1]));for(let m=0;m<d.length;m++){const v=d[m];D.push(new P(v[0],v[1]))}if(u!==0){const m=new D1().rotate(u);for(let v=0;v<D.length;v++){const F=D[v];D[v]=m.applyPoint(F)}}return hn(D,e,t,n)}if(u===0)return K6(s,i,a,o,e,t,n,l);const h=cn(u,a,o,s,i);if(c===g.PositionedObjectLayoutType.WRAP_SQUARE){const{left:f,width:d,top:D,height:m}=h;return K6(D,m,f,d,e,t,n,l)}return hn(h.points,e,t,n)}function cn(r,t,e,n,s){const i=new D1().rotate(r),a=new P(t,n),o=new P(t,n+s),u=new P(t+e,n),l=new P(t+e,n+s);return i.makeBoundingBoxFromPoints([a,o,u,l])}function hn(r,t,e,n){const s=new X0(r),i=s.intersection([new P(0,t),new P(n,t)]),a=s.intersection([new P(0,t+e),new P(n,t+e)]);if(!i&&!a)return;const o=ua([...r,...i||[],...a||[]]);return{left:o.min,width:o.max}}function ua(r,t=0){const e=[];for(let n=0;n<r.length;n++){const s=r[n];t===0?e.push(s.x):e.push(s.y)}return{max:Math.max(...e),min:Math.min(...e)}}function K6(r,t,e,n,s,i,a,o){const{layoutType:u,wrapText:l=g.WrapTextType.BOTH_SIDES,distL:c=0,distR:h=0,distT:f=0,distB:d=0}=o,D=r-(u===g.PositionedObjectLayoutType.WRAP_SQUARE?f:0),m=t+(u===g.PositionedObjectLayoutType.WRAP_SQUARE?d:0);if(D+m<s||D>i+s)return;let v=e-c,F=n+h;const C=la(l,v,F,a);return C===1?F=a-v:C===2&&(v=0,F=e+n+h),{left:v,width:F}}function la(r,t,e,n){let s=0;return r===g.WrapTextType.LEFT?s=1:r===g.WrapTextType.RIGHT?s=2:r===g.WrapTextType.LARGEST&&(t>n-t-e?s=1:s=2),s}function ca(r,t){t.sort((i,a)=>i.left>a.left?1:-1);const e=[];let n=0;const s=t.length;for(let i=0;i<s;i++){const a=t[i],{left:o,width:u}=a;if(o>n){let l=o-n;l=l<r?l:r-n;const c=fn(n,l);e.push(c)}if(n=Math.max(o+u,n),i===s-1&&o+u<r){const l=fn(o+u,r-o-u);e.push(l)}}return e}function fn(r,t){return{glyphGroup:[],width:t,left:r,paddingLeft:0,isFull:!1,st:0,ed:0}}function ha(r,t){return{paragraphIndex:t,type:r,divides:[],lineHeight:0,contentHeight:0,top:0,asc:0,paddingTop:0,paddingBottom:0,marginTop:0,marginBottom:0,spaceBelowApply:0,divideLen:0,st:-1,ed:-1,lineIndex:0,paragraphStart:!1}}function fa(r,t,e,n){if(n)if(n.has(r)){const s=n.get(r);s==null||s.elements.push(t)}else n.set(r,{elements:[t],paragraphIndex:r,top:e})}function da(r,t,e,n,s,i=!1){if(i)if(s.bulletSkeleton){const{bulletSkeleton:a,paragraphStyle:o={}}=s,{gridType:u=g.GridType.LINES,charSpace:l=0,defaultTabStop:c=1}=n,{snapToGrid:h=g.BooleanNumber.TRUE}=o,f=b2(l,c,u,h),d=m8(t[0],a,f);$2(r,[d,...t],e,n,s,i)}else $2(r,t,e,n,s,i);else Je(r,t,e,n,s,i);return[...e]}function _a(r){if(r.length<=1)return!1;let t=!1;for(const e of r)if(e.content===g.DataStreamTreeTokenType.SPACE&&(t=!0),t&&e.content!==g.DataStreamTreeTokenType.SPACE&&e.content!==g.DataStreamTreeTokenType.PARAGRAPH&&e.streamType!==g.DataStreamTreeTokenType.SECTION_BREAK)return!1;return t}function ga(r,t,e){if(r.length<=1)return!1;let n=t,s=!1;for(const i of r){if(i.content===g.DataStreamTreeTokenType.SPACE||i.content===g.DataStreamTreeTokenType.PARAGRAPH||i.streamType===g.DataStreamTreeTokenType.SECTION_BREAK)break;if(n+=i.width,n>e){s=!0;break}}return s}function Je(r,t,e,n,s,i=!1,a){var l;const o=Xe(e),u=mr(o);if(u){const c=Dn(t),{divide:h}=u,f=(l=h==null?void 0:h.glyphGroup)==null?void 0:l[h.glyphGroup.length-1],d=(f==null?void 0:f.width)||0,D=(f==null?void 0:f.left)||0,m=d+D;if(m+c>h.width)if(oa(h,!0),u.isLast&&t.length===1&&(t[0].content===g.DataStreamTreeTokenType.SPACE||t[0].content===g.DataStreamTreeTokenType.PARAGRAPH))et(h,t,m);else if(u.isLast&&!ga(t,m,h.width)&&_a(t))et(h,t,m);else if((h==null?void 0:h.glyphGroup.length)===0){const v=[];for(;t.length;)if(v.push(t.shift()),Dn(v)>h.width){v.length>1&&t.unshift(v.pop());break}et(h,v,m),t.length&&Je(r,t,e,n,s,i,a)}else Je(r,t,e,n,s,i,a);else{const v=h.parent,F=Sa(t);if(v&&F&&!wa(v)){const{paragraphLineGapDefault:C,linePitch:S,lineSpacing:B,spacingRule:w,snapToGrid:x,gridType:O}=e4(n,s),{boundingBoxAscent:T,boundingBoxDescent:A}=F,k=T+A,{contentHeight:$}=pn(k,C,S,O,B,w,x);if(v.contentHeight<$){const I=Ta(v),M=I.length;let L=[],U=1;M>2&&I[0].glyphType===T1.LIST?(L=[I[0],I[1]],U=2):L=[I[0]];const G=v.parent,{paragraphStart:X}=G==null?void 0:G.lines.pop();$2(r,L,e,n,s,X,T+A);for(let H=U;H<I.length;H++)Je(r,[I[H]],e,n,s,i);Je(r,t,e,n,s,i);return}}et(h,t,m)}}else $2(r,t,e,n,s,i,a)}function $2(r,t,e,n,s,i=!1,a){var P2,M2,L1,s2,Ie,Le,i2,a2;let o=Xe(e),u=K2(o);if((!u||!u.column)&&(gn(r,t,e,n,s),o=Xe(e),u=K2(o)),!u)return;const l=u.column;if(l.width<=0){console.error("The column width is less than 0, need to adjust page width to make it great than 0");return}const c=vr(l),h=Math.max(...t.map(P1=>P1.bBox.ba)),f=Math.max(...t.map(P1=>P1.bBox.bd)),d=a||h+f,{paragraphStyle:D={},paragraphAffectSkeDrawings:m,paragraphInlineSkeDrawings:v,skeHeaders:F,skeFooters:C,drawingAnchor:S,paragraphIndex:B}=s,{spaceAbove:w=0,spaceBelow:x=0,indentFirstLine:O=0,hanging:T=0,indentStart:A=0,indentEnd:k=0}=D,{paragraphLineGapDefault:$,linePitch:I,lineSpacing:M,spacingRule:L,snapToGrid:U,gridType:G}=e4(n,s),{paddingTop:X,paddingBottom:H,contentHeight:V,lineSpacingApply:e1}=pn(d,$,I,G,M,L,U),{marginTop:t1,spaceBelowApply:n1}=ba(e1,w,x,i,c),s1=t1+X+V+H;let m1=l.parent;m1||(m1=Zt(o));const b1=(c==null?void 0:c.lineHeight)||0,p1=(c==null?void 0:c.top)||0,h1=b1+p1,{pageWidth:a1,headerId:O1,footerId:y1}=o,_1=(M2=(P2=F==null?void 0:F.get(O1))==null?void 0:P2.get(a1))==null?void 0:M2.skeDrawings,S1=(s2=(L1=C==null?void 0:C.get(y1))==null?void 0:L1.get(a1))==null?void 0:s2.skeDrawings;if(c){if(pa(c).length>0){const Pe=(Ie=r.paragraphConfigCache.get(c.paragraphIndex))==null?void 0:Ie.paragraphAffectSkeDrawings,u0=[...(Le=Pe==null?void 0:Pe.values())!=null?Le:[]].filter(l0=>l0.drawingOrigin.objectTransform.positionV.relativeFrom===g.ObjectRelativeFromV.LINE);dn(r,c.top,c.lineHeight,l,u0,c.paragraphIndex)}const ne=(i2=r.paragraphConfigCache.get(c.paragraphIndex))==null?void 0:i2.paragraphInlineSkeDrawings;ne&&ne.size>0&&ya(c,ne)}if(m!=null&&m.size>0){const P1=[...m.values()].filter(ne=>ne.drawingOrigin.objectTransform.positionV.relativeFrom!==g.ObjectRelativeFromV.LINE);dn(r,h1,s1,l,P1,s.paragraphIndex,(a2=S==null?void 0:S.get(B))==null?void 0:a2.top)}const $1=ia(s1,h1,o.skeDrawings,_1,S1);if(s1+$1>m1.height&&l.lines.length>0&&o.sections.length>0){r4(l,!0),_n(r,t,e,n,s,i,a);return}const I1=c?c.lineIndex+1:0,{charSpace:X1,defaultTabStop:ce}=yr(n,s),r2=b2(X1,ce,G,U),{paddingLeft:ke,paddingRight:W1}=ma(O,T,A,k,r2,i),$e=sa(B,p2.PARAGRAPH,{lineHeight:s1,contentHeight:V,lineTop:$1,paddingLeft:ke,paddingRight:W1,paddingTop:X,paddingBottom:H,marginTop:t1,spaceBelowApply:n1},l.width,I1,i,o.skeDrawings,_1,S1);l.lines.push($e),$e.parent=l,fa(B,$e,h1,S),Je(r,t,e,n,s,i,a)}function dn(r,t,e,n,s,i,a){if(s.length===0)return;const o=Fa(t,e,n,a,s);o==null||o.size===0||(Da(r,o,n,i),Ca(n,o))}function pa(r){const t=[];for(const e of r.divides)for(const n of e.glyphGroup)n.streamType===g.DataStreamTreeTokenType.CUSTOM_BLOCK&&t.push(n.objectId);return t}function Da(r,t,e,n){var o,u,l,c,h,f,d;const s=(o=e.parent)==null?void 0:o.parent,i=new Map([...t]);if(t.size===0||s==null)return t;let a=!1;for(const D of t.values()){const m=r.drawingsCache.get(D.objectId);if(m==null)continue;const v=(c=(l=(u=m.page.sections[0])==null?void 0:u.columns[0])==null?void 0:l.lines[0])==null?void 0:c.paragraphIndex,F=(d=(f=(h=s.sections[0])==null?void 0:h.columns[0])==null?void 0:f.lines[0])==null?void 0:d.paragraphIndex;m.page&&v&&F&&v!==F&&(m.page.skeDrawings.delete(D.objectId),Qt([m.page],C=>{var O,T,A;const{lineHeight:S,top:B}=C,w=(T=(O=C.parent)==null?void 0:O.width)!=null?T:0;if(a)return;ln(m.drawing,S,B,w)&&(a=!0,r.isDirty=!0,r.layoutStartPointer.paragraphIndex=Math.min(C.paragraphIndex,(A=r.layoutStartPointer.paragraphIndex)!=null?A:Number.POSITIVE_INFINITY),r.paragraphsOpenNewPage.add(n))}))}return a=!1,Qt([s],D=>{var C,S,B;const{lineHeight:m,top:v}=D,F=e.width;if(!a)for(const w of t.values()){let x=w;if(r.drawingsCache.has(w.objectId))if(va(r,w))x=(S=(C=r.drawingsCache.get(w.objectId))==null?void 0:C.drawing)!=null?S:w;else continue;if(ln(x,m,v,F)){a=!0,r.isDirty=!0,r.layoutStartPointer.paragraphIndex=Math.min(D.paragraphIndex,(B=r.layoutStartPointer.paragraphIndex)!=null?B:Number.POSITIVE_INFINITY);let T=r.drawingsCache.get(w.objectId);T==null&&(T={count:0,drawing:w,page:s},r.drawingsCache.set(w.objectId,T)),T.count++,T.drawing=w,T.page=s}}}),i}function va(r,t){const{relativeFrom:e}=t.drawingOrigin.objectTransform.positionV,n=r.drawingsCache.get(t.objectId);if(n==null)return!1;if(e===g.ObjectRelativeFromV.PARAGRAPH||e===g.ObjectRelativeFromV.LINE){const{count:s,drawing:i}=n;if(s<5&&Math.abs(t.aTop-i.aTop)>5)return!0}return!1}function _n(r,t,e,n,s,i=!1,a){const o=Xe(e);br(o)===!0?gn(r,t,e,n,s,i,a):$2(r,t,e,n,s,i,a)}function gn(r,t,e,n,s,i=!1,a){const o=Xe(e),{skeHeaders:u,skeFooters:l}=s;e.push(Ye(r,n,{skeHeaders:u,skeFooters:l},o==null?void 0:o.pageNumber)),_n(r,t,e,n,s,i,a)}function ma(r=0,t=0,e=0,n=0,s,i=!1){const a=Ee(r,s),o=Ee(t,s),u=Ee(e,s),l=Ee(n,s);let c=u;const h=l;return a>0&&i&&(c+=a),o>0&&!i&&(c+=o),{paddingLeft:c,paddingRight:h}}function ba(r=0,t=0,e=0,n,s){let i=0,a=0;if(!n)return{marginTop:i,spaceBelowApply:a};if(i=Ee(t,r),a=Ee(e,r),s){const{spaceBelowApply:o}=s;o>i&&(i=0,s.lineHeight+=o,s.marginBottom=o)}return{marginTop:i,spaceBelowApply:a}}function pn(r,t,e,n,s,i,a){let o=t,u=t;if(n===g.GridType.DEFAULT||a===g.BooleanNumber.FALSE)return i===g.SpacingRule.AUTO?{paddingTop:o,paddingBottom:u,contentHeight:s*r,lineSpacingApply:r}:{paddingTop:o,paddingBottom:u,contentHeight:Math.max(s,r),lineSpacingApply:s};let l=0;return i===g.SpacingRule.AUTO?l=s*e:l=s,r+t*2<l&&(o=u=(l-r)/2),{paddingTop:o,paddingBottom:u,contentHeight:r,lineSpacingApply:l}}function ya(r,t){var i,a;const e=(a=(i=r==null?void 0:r.parent)==null?void 0:i.parent)==null?void 0:a.parent;if(e==null)return;const n=new Map,{top:s}=r;for(const o of r.divides)for(const u of o.glyphGroup)if(u.streamType===g.DataStreamTreeTokenType.CUSTOM_BLOCK&&u.width!==0){const{objectId:l}=u;if(l==null)continue;const c=t==null?void 0:t.get(l),h=c==null?void 0:c.drawingOrigin;if(h==null||c==null)continue;const{objectTransform:f}=h,{size:d,angle:D}=f,{width:m=0,height:v=0}=d;c.aLeft=u.left||0,c.aTop=s||0,c.width=m,c.height=v,c.angle=D,n.set(c.objectId,c)}e.skeDrawings=new Map([...e.skeDrawings,...n])}function Fa(r,t,e,n,s=[]){var u,l,c;const i=(u=e.parent)==null?void 0:u.parent;if(i==null||s.length===0)return;const a=new Map,o=Ea(e);for(const h of s){const{initialState:f,drawingOrigin:d}=h;if(!d)continue;const{objectTransform:D}=d,{positionH:m,positionV:v,size:F,angle:C}=D,{width:S=0,height:B=0}=F;h.aLeft=(l=Cr(m,e,i,S,o))!=null?l:0,h.aTop=(c=Er(v,i,r,t,B,n,o))!=null?c:0,h.width=S,h.height=B,h.angle=C,h.initialState=!0,a.set(h.objectId,h)}return a}function Ca(r,t){var n;const e=(n=r.parent)==null?void 0:n.parent;if(t!=null&&t.size!==0&&e!=null)for(const s of t.values()){const i=e.skeDrawings.get(s.objectId);if(i)if(i.drawingOrigin.layoutType===g.PositionedObjectLayoutType.WRAP_TOP_AND_BOTTOM){const a=i.aTop>s.aTop?i:s;e.skeDrawings.set(s.objectId,a)}else e.skeDrawings.set(s.objectId,s);else e.skeDrawings.set(s.objectId,s)}}function Ea(r){const t=r.parent;if(!t)return!1;const e=t==null?void 0:t.columns;if(!e)return!1;const n=e.length;for(let s=n-1;s>=0;s--){const a=e[s].lines,o=a.length;if(!(o<=0)){for(let u=o-1;u>=0;u--)if(a[u].paragraphStart)return!1}}return!0}function Dn(r){const t=r.length;let e=0;for(let n=0;n<t;n++){const s=r[n];e+=s.width}return e}function Sa(r){const t=r.length;let e=Number.NEGATIVE_INFINITY,n;for(let s=0;s<t;s++){const i=r[s],{ba:a,bd:o}=i.bBox;e<a+o&&(n={boundingBoxAscent:a,boundingBoxDescent:o}),e=a+o}return n}function Ta(r){const t=r.divides,e=t.length,n=[];for(let s=0;s<e;s++){const i=t[s];n.push(...i.glyphGroup)}return n}function wa(r){return!r.divides[0].glyphGroup[0]}function Ba(r,t,e){return Oa(r,t,e)}function Oa(r,t,e){return e===g.GlyphType.DECIMAL?vn(r,t):e===g.GlyphType.ZERO_DECIMAL?xa(r,t):e===g.GlyphType.UPPER_ALPHA?Ra(r,t):e===g.GlyphType.ALPHA?Aa(r,t):e===g.GlyphType.UPPER_ROMAN?ka(r,t):e===g.GlyphType.ROMAN?$a(r,t):vn(r,t)}function vn(r,t){return(r+t).toString()}function xa(r,t){const e=r+t;return e<10?`0${e}`:e.toString()}function Ra(r,t){return g.numberToListABC(r+t-1,!0)}function Aa(r,t){return g.numberToListABC(r+t-1,!1)}function ka(r,t){return mn(r+t,!0)}function $a(r,t){return mn(r+t,!1)}function mn(r,t=!1){const e={M:1e3,CM:900,D:500,CD:400,C:100,XC:90,L:50,XL:40,X:10,IX:9,V:5,IV:4,I:1};let s={m:1e3,cm:900,d:500,cd:400,c:100,xc:90,l:50,xl:40,x:10,ix:9,v:5,iv:4,i:1};t&&(s=e);let i="";for(const a in s)for(;r>=s[a];)i+=a,r-=s[a];return i}function Ia(r,t,e,n){var h,f;if(!r||!t)return;const{listId:s,listType:i,nestingLevel:a=0,textStyle:o}=r,u=t[i];return!u||!u.nestingLevel?bn(s,(h=e==null?void 0:e[a])==null?void 0:h.startIndexItem):u.nestingLevel[a]?La(s,a,u.nestingLevel,e,o):bn(s,(f=e==null?void 0:e[a])==null?void 0:f.startIndexItem)}function bn(r,t=1){return{listId:r,symbol:"●",ts:{ff:"Arial",fs:9},startIndexItem:t,bBox:{width:8.4560546875,ba:7,bd:-1,aba:7,abd:-1,sp:-2,sbr:.5,sbo:0,spr:.5,spo:0},indentFirstLine:0,hanging:21,indentStart:0}}function La(r,t,e,n,s,i){var w,x;const a=e[t],{bulletAlignment:o,glyphFormat:u,textStyle:l,startNumber:c,glyphType:h,glyphSymbol:f,indentFirstLine:d,hanging:D,indentStart:m}=a,v={...s,...l},F=h2(v);let C;f?C=f:C=Pa(u,t,e,n);const S=re.getTextSize(C,F),B=(x=(w=n==null?void 0:n[t])==null?void 0:w.startIndexItem)!=null?x:1;return{listId:r,symbol:C,ts:v,fontStyle:F,startIndexItem:B+1,bBox:S,nestingLevel:a,bulletAlign:o,bulletType:f?!1:!!h,indentFirstLine:d,hanging:D,indentStart:m}}function Pa(r,t,e,n){var o;const s=r.split("%"),a=[s[0]];for(let u=1;u<s.length;u++){const l=s[u],{level:c,suffix:h}=Na(l);let f=((o=n==null?void 0:n[c])==null?void 0:o.startIndexItem)||1;c!==t&&(n==null?void 0:n[c])!==null&&(f-=1);const d=Ma(f,e[c]);a.push(d,h)}return a.join("")}function Ma(r=1,t){const{startNumber:e,glyphType:n,glyphSymbol:s}=t;return s||(n?Ba(r,e,n):"●")}function Na(r){if(r==="")return{level:0,suffix:""};const t=r.split("");let e="",n="",s=!1;const i=/[0-9]/g;return t.forEach(a=>{!s&&i.test(`${e}${a}`)?e+=a:(s=!0,n+=a)}),{level:Number.parseInt(e)-1,suffix:n}}function Ua(r,t){if(!r||!t)return;const{listId:e,nestingLevel:n}=r,s=t==null?void 0:t.get(e);let i=n;i<0&&(i=0);const a=[];for(let o=i;o>=0;o--){const u=s==null?void 0:s[o];a[o]=u||null}return a}function Ha(r,t,e){if(!r||!t)return;const{listId:n,nestingLevel:s}=r,i=[...(e==null?void 0:e.get(n))||[]];i[s]=t,i.splice(s+1),e==null||e.set(n,i)}function yn(r){return{objectId:r.objectId,aLeft:0,aTop:0,width:0,height:0,angle:0,initialState:!1,drawingOrigin:r}}function Fn(r){return r.pageNumber+1}function Ga(r,t,e,n,s){const{viewModel:i,skeletonResourceReference:a}=r,{lists:o,drawings:u={},localeService:l}=s,{endIndex:c,blocks:h=[]}=n,f=i.getParagraph(c)||{startIndex:0},{paragraphStyle:d={},bullet:D}=f,{skeHeaders:m,skeFooters:v,skeListLevel:F,drawingAnchor:C}=a,S=new Map,B=new Map,w={paragraphIndex:c,paragraphStyle:d,paragraphAffectSkeDrawings:S,paragraphInlineSkeDrawings:B,skeHeaders:m,skeFooters:v,drawingAnchor:C};r.paragraphConfigCache.set(c,w);const x=Ua(D,F),O=Ia(D,o,x);Ha(D,O,F),w.bulletSkeleton=O;for(let k=0,$=h.length;k<$;k++){const I=h[k],M=i.getCustomBlock(I);if(M==null)continue;const{blockId:L}=M,U=u[L];U.layoutType!==g.PositionedObjectLayoutType.INLINE?S.set(L,yn(U)):B.set(L,yn(U))}let T=[e],A=!0;for(const{text:k,glyphs:$}of t){const I=()=>{$.length!==0&&(T=da(r,$,T,s,w,A),A=!1)};if(k.endsWith(g.DataStreamTreeTokenType.PAGE_BREAK)){I(),T.push(Ye(r,s,a,Fn(T[T.length-1]),Ne.PAGE)),S.clear(),B.clear();continue}else if(k.endsWith(g.DataStreamTreeTokenType.COLUMN_BREAK)){I();const M=T[T.length-1],L=K2(M);L&&!L.isLast?r4(L.column,!0):T.push(Ye(r,s,a,Fn(M),Ne.COLUMN));continue}I()}return T}function za(r){switch(r){case"–":case"—":return .2;case".":case",":return .8;case":":case";":return .3;case"،":case"۔":return .4;default:return 0}}function Xa(r){const{glyphGroup:t}=r;let e=0;for(const n of t){const[s,i]=n.adjustability.shrinkability;e+=s+i}return e}function Wa(r){const{glyphGroup:t}=r;let e=0;for(const n of t){const[s,i]=n.adjustability.stretchability;e+=s+i}return e}function Ya(r){const t=r.glyphGroup.filter(n=>n.isJustifiable).length,e=r.glyphGroup[r.glyphGroup.length-1];return d2(e.content)?t-1:t}function ja(r,t,e){for(const n of r.glyphGroup){const s=t<0?n.adjustability.shrinkability[0]:n.adjustability.stretchability[0],i=t<0?n.adjustability.shrinkability[1]:n.adjustability.stretchability[1],a=s*t;let o=i*t;n.isJustifiable&&(o+=e),n.width+=a+o,n.xOffset+=a}_6(r.glyphGroup)}function Va(r,t){const{divides:e}=r;for(let n=0;n<e.length;n++){const s=e[n],{width:i}=s;let a=t4(s);if(i!==Number.POSITIVE_INFINITY){if(s.isFull){let o=i-a;if(s.glyphGroup.length>1){const f=s.glyphGroup[s.glyphGroup.length-1],d=za(f.content)*f.width;o+=d}let u=0,l=0;const c=Xa(s),h=Wa(s);if(o<0&&c>0)u=Math.max(o/c,-1),o=Math.min(o+c,0);else if(t===g.HorizontalAlign.JUSTIFIED){h>0&&(u=Math.min(o/h,1),o=Math.max(o-h,0));const f=Ya(s);f>0&&o>0&&(l=o/f,o=0)}(u!==0||l!==0)&&(ja(s,u,l),a=t4(s))}t===g.HorizontalAlign.CENTER?s.paddingLeft=(i-a)/2:t===g.HorizontalAlign.RIGHT&&(s.paddingLeft=i-a)}}}function Ka(r){for(const t of r.divides){const e=t.glyphGroup[t.glyphGroup.length-1];if(t.isFull&&f2(e.content)&&e.width-e.xOffset>e.bBox.width){const n=e.width-e.xOffset-e.bBox.width;e.width-=n,e.adjustability.shrinkability[1]=0}}}function qa(r){for(const t of r.divides){const e=t.glyphGroup.length;if(e<2)continue;const n=t.glyphGroup[0],s=t.glyphGroup[e-1];if(X2(n.content)){const i=n.adjustability.shrinkability[0];B4(n,i)}if(z2(s.content)){const i=s.adjustability.shrinkability[1];w4(s,i)}_6(t.glyphGroup)}}function Za(r,t){Qt(r,e=>{if(e.paragraphIndex!==t.startIndex)return;const{paragraphStyle:n={}}=t,{horizontalAlign:s=g.HorizontalAlign.UNSPECIFIED}=n;qa(e),Ka(e),Va(e,s)})}function Ja(r,t,e,n,s){Sr();const{endIndex:i,content:a=""}=e,o=t.getParagraph(i)||{startIndex:0},{paragraphStyle:u={}}=o,l=ra(a,t,e,s,u),c=Ga(r,l,n,e,s);return Za(c,o),c}function Cn(r,t,e,n,s,i){const a=[],o=new Map;let u=0;if(i!=null){const{startIndex:l,endIndex:c}=e;if(i>=l&&i<=c){for(let h=0;h<e.children.length;h++)if(e.children[h].endIndex===i){u=h;break}}}for(let l=u;l<e.children.length;l++){const c=e.children[l];let h=[],f=n;if(a.length>0&&(f=a[a.length-1]),c.nodeType===g.DataStreamTreeNodeType.PARAGRAPH?(r.paragraphsOpenNewPage.has(c.endIndex)&&(f=Ye(r,s,r.skeletonResourceReference,f.pageNumber+1)),h=Ja(r,t,c,f,s)):(c.nodeType,g.DataStreamTreeNodeType.TABLE),h.length===0&&(h=Mr()),eo(a,h),r.isDirty)break}return r.isDirty&&r.layoutStartPointer.paragraphIndex!=null&&Qa(r.layoutStartPointer.paragraphIndex,a),{pages:a,renderedBlockIdMap:o}}function Qa(r,t){let e=!1;for(let n=0;n<t.length;n++){const s=t[n];for(let i=0;i<s.sections.length;i++){const a=s.sections[i];for(let o=0;o<a.columns.length;o++){const u=a.columns[o];for(let l=0;l<u.lines.length;l++)if(u.lines[l].paragraphIndex===r){e=!0,u.lines.splice(l);break}if(e){const l=u.lines.length?o+1:o,c=l-1;c>=0&&(a.columns[c].isFull=!1),a.columns.splice(l);break}}if(e){const o=a.columns.length?i+1:i;s.sections.splice(o);break}}if(e){const i=s.sections.length?n+1:n;t.splice(i);break}}}function eo(r,t){const e=r.length-1,n=r[e],s=t[0];n===s&&t.splice(0,1),r.push(...t)}function to(r){var t;r.isDirty=!1,(t=r.skeleton.drawingAnchor)==null||t.clear()}function no(r){const t=new Set;r.skeleton.pages=r.skeleton.pages.filter(e=>{const n=t.has(e);return t.add(e),!n})}class Qe extends y.Skeleton{constructor(e,n){super(n);_(this,"_skeletonData");_(this,"_findLiquid",new We);_(this,"_iteratorCount",0);this._docViewModel=e}static create(e,n){return new Qe(e,n)}dispose(){super.dispose(),this._skeletonData=null,this._findLiquid=null,this._docViewModel.dispose()}getViewModel(){return this._docViewModel}calculate(e){if(!this.dirty)return;const n=this._prepareLayoutContext();this._skeletonData=this._createSkeleton(n,e)}getSkeletonData(){return this._skeletonData}getActualSize(){const e=this.getSkeletonData();let n=Number.NEGATIVE_INFINITY,s=0;return e==null||e.pages.forEach(i=>{const{width:a,height:o}=i;n=Math.max(n,a),s+=o}),{actualWidth:n,actualHeight:s}}_getPageActualWidth(e){let n=Number.NEGATIVE_INFINITY;for(const s of e.sections)for(const i of s.columns)for(const a of i.lines){let o=0;for(const u of a.divides)for(const l of u.glyphGroup)o+=l.width;n=Math.max(n,o)}return n}getPageSize(){return this.getViewModel().getDataModel().documentStyle.pageSize}findPositionByGlyph(e){const n=e.parent,s=n==null?void 0:n.parent,i=s==null?void 0:s.parent,a=i==null?void 0:i.parent,o=a==null?void 0:a.parent,u=this.getSkeletonData();if(!n||!i||!a||!o||!u)return;const l=n.glyphGroup.indexOf(e),c=s.divides.indexOf(n),h=i.lines.indexOf(s),f=a.columns.indexOf(i),d=o.sections.indexOf(a),D=u.pages.indexOf(o);return{glyph:l,divide:c,line:h,column:f,section:d,page:D}}findNodePositionByCharIndex(e,n=!0){const s=this._findNodeIterator(e);if(s==null)return;const i=this.getSkeletonData();if(!i)return;const a=i.pages,{glyph:o,divide:u,line:l,column:c,section:h,page:f}=s;return{glyph:u.glyphGroup.indexOf(o),divide:l.divides.indexOf(u),line:c.lines.indexOf(l),column:h.columns.indexOf(c),section:f.sections.indexOf(h),page:a.indexOf(f),isBack:n}}findNodeByCharIndex(e){const n=this._findNodeIterator(e);return n==null?void 0:n.glyph}findGlyphByPosition(e){if(e==null)return;const n=this.getSkeletonData();if(n==null)return;const{divide:s,line:i,column:a,section:o,page:u,isBack:l}=e;let{glyph:c}=e;l===!0&&(c-=1),c=c<0?0:c;const h=n.pages[u].sections[o].columns[a].lines[i].divides[s].glyphGroup;return h[c].glyphType===T1.LIST?h[c+1]:h[c]}findNodeByCoord(e,n,s,i){const{x:a,y:o}=e;this._findLiquid.reset();const u=this.getSkeletonData();if(u==null)return;const l=u.pages;let c=[],h=[],f=Number.POSITIVE_INFINITY;for(let d=0,D=l.length;d<D;d++){const m=l[d];this._findLiquid.translatePagePadding(m);const{sections:v}=m;for(const F of v){const{columns:C,height:S}=F;this._findLiquid.translateSection(F);for(const B of C){const{lines:w,width:x}=B;this._findLiquid.translateSave(),this._findLiquid.translateColumn(B);const O=w.length;for(let T=0;T<O;T++){const A=w[T],{divides:k,type:$,lineHeight:I=0}=A;if($!==p2.BLOCK){this._findLiquid.translateSave(),this._findLiquid.translateLine(A);const{y:M}=this._findLiquid,L=M,U=M+I,G=Math.abs(o-U),X=k.length;for(let H=0;H<X;H++){const V=k[H],{glyphGroup:e1,width:t1}=V;this._findLiquid.translateSave(),this._findLiquid.translateDivide(V);const{x:n1}=this._findLiquid;for(const s1 of e1){if(!s1.content||s1.content.length===0)continue;const{width:m1,left:b1}=s1,p1=n1+b1,h1=n1+b1+m1,a1=Math.abs(a-h1);if(o>=L&&o<=U){if(a>=p1&&a<=h1)return{node:s1,ratioX:a/(p1+h1),ratioY:o/(L+U)};f!==Number.NEGATIVE_INFINITY&&(c=[],h=[]),c.push({node:s1,ratioX:a/(p1+h1),ratioY:o/(L+U)}),h.push(a1),f=Number.NEGATIVE_INFINITY;continue}G<f&&(f=G,c=[],h=[]),G===f&&(c.push({node:s1,ratioX:a/(p1+h1),ratioY:o/(L+U)}),h.push(a1))}this._findLiquid.translateRestore()}this._findLiquid.translateRestore()}}this._findLiquid.translateRestore()}}this._findLiquid.restorePagePadding(m),this._translatePage(m,n,s,i)}return this._getNearestNode(c,h)}_getNearestNode(e,n){const s=Math.min(...n),i=n.indexOf(s);return e[i]}_getPageBoundingBox(e,n){const{pageWidth:s,pageHeight:i}=e,{x:a,y:o}=this._findLiquid;let u=-1,l=-1;return n===K1.VERTICAL?(u=s,l=o+i):n===K1.HORIZONTAL&&(u=a+s,l=i),{startX:a,startY:o,endX:u,endY:l}}_translatePage(e,n,s,i){this._findLiquid.translatePage(e,n,s,i)}_prepareLayoutContext(){const e=this.getViewModel(),n=e.getDataModel(),{headerTreeMap:s,footerTreeMap:i}=e,{documentStyle:a,drawings:o,lists:u={}}=n,l={...g.PRESET_LIST_TYPE,...u},{charSpace:c=0,linePitch:h=15.6,gridType:f=g.GridType.LINES,paragraphLineGapDefault:d=0,defaultTabStop:D=10.5,textStyle:m={}}=a,v={headerTreeMap:s,footerTreeMap:i,lists:l,drawings:o,charSpace:c,linePitch:h,gridType:f,localeService:this._localService,paragraphLineGapDefault:d,defaultTabStop:D,documentTextStyle:m},F=Tr(),{skeHeaders:C,skeFooters:S,skeListLevel:B,drawingAnchor:w}=F;return{viewModel:e,dataModel:n,skeleton:F,skeletonResourceReference:{skeHeaders:C,skeFooters:S,skeListLevel:B,drawingAnchor:w},docsConfig:v,layoutStartPointer:{paragraphIndex:null},isDirty:!1,drawingsCache:new Map,paragraphConfigCache:new Map,sectionBreakConfigCache:new Map,paragraphsOpenNewPage:new Set}}_createSkeleton(e,n){const{viewModel:s,skeleton:i,skeletonResourceReference:a}=e,o=i.pages;s.resetCache();let u=0;const l=e.layoutStartPointer.paragraphIndex;if(e.layoutStartPointer.paragraphIndex=null,l!=null)for(let c=0;c<s.children.length;c++){const h=s.children[c],{endIndex:f,startIndex:d}=h;if(l>=d&&l<=f){u=c;break}}for(let c=u,h=s.children.length;c<h;c++){const f=s.children[c],d=xr(e,c),{sectionType:D,columnProperties:m,columnSeparatorType:v,sectionTypeNext:F}=d;let C=Xe(o),S=!1;e.sectionBreakConfigCache.set(f.endIndex,d),D===g.SectionType.CONTINUOUS?(Jt(o),this._addNewSectionByContinuous(C,m,v),S=!0):(l==null||C==null)&&(C=Ye(e,d,a,C==null?void 0:C.pageNumber));const{pages:B}=Cn(e,s,f,C,d,l);if(F===g.SectionType.CONTINUOUS&&m.length>0,S&&B.splice(0,1),o.push(...B),e.isDirty)break}return e.isDirty&&this._iteratorCount<10?(this._iteratorCount++,to(e),this._createSkeleton(e,n)):(this._iteratorCount=0,no(e),Jt(i.pages),wr(i.pages,i),i)}_addNewSectionByContinuous(e,n,s){const i=e.sections,a=i[i.length-1],{pageWidth:o,pageHeight:u,marginTop:l,marginBottom:c,marginLeft:h,marginRight:f}=e,d=o-h-f,D=u-l-c,m=((a==null?void 0:a.top)||0)+((a==null?void 0:a.height)||0),v=n4(n,s,m,0,d,D-m);v.parent=e,i.push(v)}_findNodeIterator(e){const n=this.getSkeletonData();if(!n)return;const s=n.pages;for(const i of s){const{sections:a,st:o,ed:u}=i;if(!(e<o||e>u))for(const l of a){const{columns:c,st:h,ed:f}=l;if(!(e<h||e>f))for(const d of c){const{lines:D,st:m,ed:v}=d;if(!(e<m||e>v))for(const F of D){const{divides:C,st:S,ed:B}=F,w=C.length;if(!(e<S||e>B))for(let x=0;x<w;x++){const O=C[x],{glyphGroup:T,st:A,ed:k}=O;if(e<A||e>k)continue;let $=e-A;for(const I of T)if($-=I.count,$<0)return{page:i,section:l,column:d,line:F,divide:O,glyph:I}}}}}}}}class le{constructor(t,e){_(this,"children",[]);_(this,"parent");_(this,"startIndex",-1);_(this,"endIndex",-1);_(this,"blocks",[]);this.nodeType=t,this.content=e}static create(t,e){return new le(t,e)}dispose(){this.children.forEach(t=>{t.dispose()}),this.parent=null,this.blocks=[]}getProps(){const{children:t,parent:e,startIndex:n,endIndex:s,nodeType:i,content:a}=this;return{children:t,parent:e,startIndex:n,endIndex:s,nodeType:i,content:a}}addBlocks(t){this.blocks=this.blocks.concat(t)}setIndexRange(t,e){this.startIndex=t,this.endIndex=e}insertText(t,e){this.content=g.insertTextToContent(this.content||"",e-this.startIndex,t)}exclude(t){const{startIndex:e,endIndex:n}=this;return t<e||t>n}plus(t){this.startIndex+=t,this.endIndex+=t,this._addIndexForBlock(t)}selfPlus(t,e){this.endIndex+=t,e==null&&(e=this.startIndex),this._addIndexForBlock(t,e)}split(t){const{children:e,parent:n,startIndex:s,nodeType:i,content:a=""}=this.getProps();if(this.exclude(t))return;const o=0,u=t-s,l=u,c=a.slice(o,u),h=le.create(i,c);h.parent=n,h.setIndexRange(o,u-1);const f=a.slice(l),d=le.create(i,f);d.parent=n,d.setIndexRange(l,l+f.length-1);const D=[],m=[];for(const v of e){const{startIndex:F}=v;if(v.exclude(t))t<F?D.push(v):m.push(v);else{const C=v.split(t);if(C==null){D.push(v);continue}const{firstNode:S,lastNode:B}=C;D.push(S),D.push(B)}}return h.children=D,d.children=m,h._resetBlocks(),d._resetBlocks(),{firstNode:h,lastNode:d}}getPositionInParent(){var e;const t=(e=this.parent)==null?void 0:e.children.indexOf(this);return t==null?-1:t}remove(){this.children=[],this.parent!=null&&(this.parent.children.splice(this.getPositionInParent(),1),this.parent=null)}minus(t,e){const n=g.horizontalLineSegmentsSubtraction(this.startIndex,this.endIndex,t,e);if(n.length===0)return;const s=this.startIndex;this.startIndex=n[0],this.endIndex=n[1],this.content!=null&&(this.content=g.deleteContent(this.content||"",t-s,e-s+1))}merge(t){const{startIndex:e,endIndex:n,children:s}=t;this.endIndex+=n-e+1,this.children.push(...s),this.content+=t.content||"",t.remove()}_addIndexForBlock(t,e=Number.NEGATIVE_INFINITY){for(let n=0,s=this.blocks.length;n<s;n++){const i=this.blocks[n];i>=e&&(this.blocks[n]=i+t)}}_resetBlocks(){if(this.nodeType===g.DataStreamTreeNodeType.PARAGRAPH&&this.content!=null&&this.content.length!==0){this.blocks=[];for(let t=0,e=this.content.length;t<e;t++)this.content[t]===g.DataStreamTreeTokenType.CUSTOM_BLOCK&&this.blocks.push(this.startIndex+t)}}}class be{constructor(t){_(this,"children",[]);_(this,"_sectionBreakCurrentIndex",0);_(this,"_paragraphCurrentIndex",0);_(this,"_textRunCurrentIndex",0);_(this,"_customBlockCurrentIndex",0);_(this,"_tableBlockCurrentIndex",0);_(this,"_customRangeCurrentIndex",0);_(this,"headerTreeMap",new Map);_(this,"footerTreeMap",new Map);this._documentDataModel=t,t.getBody()!=null&&(this.children=this._transformToTree(t.getBody().dataStream),this._buildHeaderFooterViewModel())}dispose(){this.children.forEach(t=>{t.dispose()})}selfPlus(t,e){}getPositionInParent(){return 0}getLastIndex(){return this.children[this.children.length-1].endIndex}getBody(){return this._documentDataModel.getBody()}getDataModel(){return this._documentDataModel}getSelfOrHeaderFooterViewModel(t){return t==null?this:this.headerTreeMap.has(t)?this.headerTreeMap.get(t):this.footerTreeMap.has(t)?this.footerTreeMap.get(t):this}reset(t){this._documentDataModel=t,this.children=this._transformToTree(t.getBody().dataStream),this._buildHeaderFooterViewModel()}insert(t,e=0){var a;const n=t.dataStream;let s=n.length;const i=this._getParagraphByIndex(this.children,e);if(i!=null)if(n[s-1]===g.DataStreamTreeTokenType.SECTION_BREAK){const o=new g.DocumentDataModel({body:t}),u=new be(o);s-=1;const l=u.children;for(const d of l)this._forEachDown(d,D=>{D.plus(e)});const c=i.split(e);if(c==null)return;const{firstNode:h,lastNode:f}=c;(a=i.parent)==null||a.children.splice(i.getPositionInParent(),1,h,...l,f),this._forEachTop(i.parent,d=>{d.selfPlus(s,d.getPositionInParent());const D=d.children;let m=!1;for(const v of D)v===f&&(m=!0),m&&this._forEachDown(v,F=>{F.plus(s)})})}else s===1&&n[s-1]===g.DataStreamTreeTokenType.PARAGRAPH?this._insertParagraph(i,e):(i.insertText(n,e),i.selfPlus(s,e),this._forEachTop(i.parent,o=>{o.selfPlus(s,o.getPositionInParent());const u=o.children;let l=!1;for(const c of u)c.startIndex>e&&(l=!0),l&&this._forEachDown(c,h=>{h.plus(s)})}))}delete(t,e){const n=this.children;this._deleteTree(n,t,e)}getText(){const t=[];function e(n){n.content&&t.push(n.content),n.children.forEach(e)}return this.children.forEach(n=>e(n)),t.join("")}resetCache(){this._sectionBreakCurrentIndex=0,this._paragraphCurrentIndex=0,this._textRunCurrentIndex=0,this._customBlockCurrentIndex=0,this._tableBlockCurrentIndex=0,this._customRangeCurrentIndex=0}getSectionBreak(t){if(t==null)return;const e=this.getBody().sectionBreaks;if(e!=null)for(let n=this._sectionBreakCurrentIndex;n<e.length;n++){const s=e[n];if(s.startIndex===t)return this._sectionBreakCurrentIndex=n,s}}getParagraph(t){const e=this.getBody().paragraphs;if(e!=null)for(let n=this._paragraphCurrentIndex;n<e.length;n++){const s=e[n];if(s.startIndex===t)return this._paragraphCurrentIndex=n,s}}getTextRunRange(t=0,e){const n=this.getBody().textRuns;if(n==null)return[{st:t,ed:e}];const s=[];for(let o=this._textRunCurrentIndex,u=n.length;o<u;o++){const l=n[o];if(l.st>e){this._textRunCurrentIndex=o;break}else if(l.ed<t){this._textRunCurrentIndex=o;continue}else s.push({st:l.st<t?t:l.st,ed:l.ed>e?e:l.ed,sId:l.sId,ts:l.ts}),this._textRunCurrentIndex=o}const i=s[0]||{st:e+1};i.st>t&&s.push({st:t,ed:i.st-1});const a=s[s.length-1]||{ed:t-1};return a.ed<e&&s.push({st:a.ed+1,ed:e}),s}getTextRun(t){const e=this.getBody().textRuns;if(e==null)return;const n=e[this._textRunCurrentIndex];if(n!=null){if(t>=n.st&&t<n.ed)return n;if(t<n.st)return}for(let s=this._textRunCurrentIndex,i=e.length;s<i;s++){const a=e[s];if(t>=a.st&&t<a.ed)return this._textRunCurrentIndex=s,a}}getCustomBlock(t){const e=this.getBody().customBlocks;if(e!=null)for(let n=this._customBlockCurrentIndex;n<e.length;n++){const s=e[n];if(s.startIndex===t)return this._customBlockCurrentIndex=n,s}}getTable(t){const e=this.getBody().tables;if(e!=null)for(let n=this._tableBlockCurrentIndex;n<e.length;n++){const s=e[n];if(s.startIndex===t)return this._tableBlockCurrentIndex=n,s}}getCustomRange(t){const e=this.getBody().customRanges;if(e!=null)for(let n=0,s=e.length;n<s;n++){const i=e[n];if(t>=i.startIndex&&t<=i.endIndex)return i}}_transformToTree(t){const e=t.length;let n="";const s=[];let i=[],a=[];for(let o=0;o<e;o++){const u=t[o];if(u===g.DataStreamTreeTokenType.PARAGRAPH){n+=g.DataStreamTreeTokenType.PARAGRAPH;const l=le.create(g.DataStreamTreeNodeType.PARAGRAPH,n);l.setIndexRange(o-n.length+1,o),l.addBlocks(a),i.push(l),n="",a=[]}else if(u===g.DataStreamTreeTokenType.SECTION_BREAK){const l=le.create(g.DataStreamTreeNodeType.SECTION_BREAK);this._batchParent(l,i);const c=i[i.length-1];c&&c.content&&(c.content+=g.DataStreamTreeTokenType.SECTION_BREAK),s.push(l),i=[]}else u===g.DataStreamTreeTokenType.TABLE_START?i.push(le.create(g.DataStreamTreeNodeType.TABLE)):u===g.DataStreamTreeTokenType.TABLE_ROW_START?i.push(le.create(g.DataStreamTreeNodeType.TABLE_ROW)):u===g.DataStreamTreeTokenType.TABLE_CELL_START?i.push(le.create(g.DataStreamTreeNodeType.TABLE_CELL)):u===g.DataStreamTreeTokenType.TABLE_END?this._processPreviousNodesUntil(i,g.DataStreamTreeNodeType.TABLE):u===g.DataStreamTreeTokenType.TABLE_ROW_END?this._processPreviousNodesUntil(i,g.DataStreamTreeNodeType.TABLE_ROW):u===g.DataStreamTreeTokenType.TABLE_CELL_END?this._processPreviousNodesUntil(i,g.DataStreamTreeNodeType.TABLE_CELL):(u===g.DataStreamTreeTokenType.CUSTOM_BLOCK&&a.push(o),n+=u)}return s}_processPreviousNodesUntil(t,e){const n=[];let s=t.pop();for(;s&&s.nodeType!==e;)n.push(s),s=t.pop();const i=t[t.length-1];if(this._batchParent(i,n,g.DataStreamTreeNodeType.TABLE),e===g.DataStreamTreeNodeType.TABLE_CELL){const a=n[0],o=n[n.length];a.content=g.DataStreamTreeTokenType.TABLE_CELL_START+a.content||"",a.startIndex-=1,o.content+=g.DataStreamTreeTokenType.TABLE_CELL_END,o.endIndex+=1}else if(e===g.DataStreamTreeNodeType.TABLE_ROW){const a=n[0].children[0];let o=n[n.length];o=o.children[o.children.length-1],a.content=g.DataStreamTreeTokenType.TABLE_ROW_START+a.content||"",a.startIndex-=1,o.content+=g.DataStreamTreeTokenType.TABLE_ROW_END,o.endIndex+=1}else if(e===g.DataStreamTreeNodeType.TABLE){const a=n[0].children[0].children[0];let o=n[n.length];o=o.children[o.children.length-1],o=o.children[o.children.length-1],a.content=g.DataStreamTreeTokenType.TABLE_START+a.content||"",a.startIndex-=1,o.content+=g.DataStreamTreeTokenType.TABLE_END,o.endIndex+=1}}_batchParent(t,e,n=g.DataStreamTreeNodeType.SECTION_BREAK){for(const i of e)i.parent=t,t.children.push(i);const s=n===g.DataStreamTreeNodeType.SECTION_BREAK?0:1;t.setIndexRange(e[0].startIndex-s,e[e.length-1].endIndex+1)}_buildHeaderFooterViewModel(){const{headerModelMap:t,footerModelMap:e}=this._documentDataModel;for(const[n,s]of t)this.headerTreeMap.set(n,new be(s));for(const[n,s]of e)this.footerTreeMap.set(n,new be(s))}_getParagraphByIndex(t,e){for(const n of t){const{children:s}=n;if(!n.exclude(e))return n.nodeType===g.DataStreamTreeNodeType.PARAGRAPH?n:this._getParagraphByIndex(s,e)}return null}_forEachTop(t,e){let n=t;for(;n;)e(n),n=n.parent;e(this)}_forEachDown(t,e){e(t);const n=t.children;for(t of n)this._forEachDown(t,e)}_deleteTree(t,e,n){const s=e,i=e+n-1;let a=null,o=t.length,u=0;for(;u<o;){const l=t[u],{startIndex:c,endIndex:h,children:f}=l;if(this._deleteTree(f,e,n),s===i&&i===h){if(l.nodeType===g.DataStreamTreeNodeType.PARAGRAPH){const d=this._getNextNode(l);if(d==null){u++;continue}l.minus(s,i),l.merge(d),o--}}else if(s<=c&&i>=h){l.remove(),o--;continue}else if(c<=s&&h>=i)l.minus(s,i);else if(i>c&&i<h){if(l.minus(c,i),a!=null){a.merge(l),a=null,o--;continue}}else s>c&&s<h?(l.minus(s,h),a=l):c>i&&l.plus(-n);u++}}_getNextNode(t){var s;const e=t.getPositionInParent(),n=(s=t.parent)==null?void 0:s.children;return n==null?void 0:n[e+1]}_insertParagraph(t,e=0){var u;const n=t.startIndex,s=t.endIndex,i=t.split(e);if(i==null)return;const{firstNode:a,lastNode:o}=i;a.content+=g.DataStreamTreeTokenType.PARAGRAPH,a.selfPlus(1),a.plus(n),this._forEachDown(o,l=>{l.plus(n+1)}),(u=t.parent)==null||u.children.splice(t.getPositionInParent(),1,a,o),this._forEachTop(t.parent,l=>{l.selfPlus(1,l.getPositionInParent());const c=l.children;let h=!1;for(const f of c)f!==o&&(f.startIndex>=s+1&&(h=!0),h&&this._forEachDown(f,d=>{d.plus(1)}))})}}var ro=Object.defineProperty,so=Object.getOwnPropertyDescriptor,io=(r,t,e,n)=>{for(var s=n>1?void 0:n?so(t,e):t,i=r.length-1,a;i>=0;i--)(a=r[i])&&(s=(n?a(t,e,s):a(s))||s);return n&&s&&ro(t,e,s),s},En=(r,t)=>(e,n)=>t(e,n,r);function I2(r,t=0){const e=r==null?void 0:r.getSkeletonData(),n=V1(t);if(!e)return;const{pages:s}=e,i=s[s.length-1],{width:a,height:o}=i;if(n===0)return{width:a,height:o};if(Math.abs(n)===Math.PI/2)return{width:o,height:a};let u=0,l=0;const c=[];Fr([i],f=>{const{lines:d,width:D,spaceWidth:m}=f,{rotatedHeight:v,rotatedWidth:F}=Gt(d,D,n);l+=v,c.push({rotatedWidth:F,spaceWidth:m})});const h=c.length;for(let f=0;f<h;f++){const{rotatedWidth:d}=c[f];f===0&&(u+=d)}return{width:u,height:l}}const Sn={isDeepClone:!1,displayRawFormula:!1,ignoreTextRotation:!1},Tn={t:0,b:1,l:2,r:2},wn="RENDER_RAW_FORMULA";y.SpreadsheetSkeleton=class extends y.Skeleton{constructor(e,n,s,i,a,o){super(a);_(this,"_rowHeightAccumulation",[]);_(this,"_columnWidthAccumulation",[]);_(this,"_rowTotalHeight",0);_(this,"_columnTotalWidth",0);_(this,"_rowHeaderWidth",0);_(this,"_columnHeaderHeight",0);_(this,"_rowColumnSegment",{startRow:-1,endRow:-1,startColumn:-1,endColumn:-1});_(this,"_dataMergeCache",[]);_(this,"_overflowCache",new g.ObjectMatrix);_(this,"_stylesCache",{background:{},backgroundPositions:new g.ObjectMatrix,font:{},border:new g.ObjectMatrix});_(this,"_renderedCellCache",new g.ObjectMatrix);_(this,"_showGridlines",g.BooleanNumber.TRUE);_(this,"_marginTop",0);_(this,"_marginLeft",0);_(this,"_renderRawFormula",!1);this._worksheet=e,this._worksheetData=n,this._cellData=s,this._styles=i,this._contextService=o,this._updateLayout(),this._initContextListener()}get rowHeightAccumulation(){return this._rowHeightAccumulation}get rowTotalHeight(){return this._rowTotalHeight}get columnWidthAccumulation(){return this._columnWidthAccumulation}get columnTotalWidth(){return this._columnTotalWidth}get rowHeaderWidth(){return this._rowHeaderWidth}get columnHeaderHeight(){return this._columnHeaderHeight}get rowColumnSegment(){return this._rowColumnSegment}get dataMergeCache(){return this._dataMergeCache}get stylesCache(){return this._stylesCache}get overflowCache(){return this._overflowCache}get showGridlines(){return this._showGridlines}get mergeData(){return this._worksheetData.mergeData}get rowHeaderWidthAndMarginLeft(){return this.rowHeaderWidth+this._marginLeft}get columnHeaderHeightAndMarginTop(){return this.columnHeaderHeight+this._marginTop}get worksheet(){return this._worksheet}static create(e,n,s,i,a,o){return new y.SpreadsheetSkeleton(e,n,s,i,a,o)}dispose(){super.dispose(),this._rowHeightAccumulation=[],this._columnWidthAccumulation=[],this._rowTotalHeight=0,this._columnTotalWidth=0,this._rowHeaderWidth=0,this._columnHeaderHeight=0,this._rowColumnSegment=null,this._dataMergeCache=[],this._stylesCache=null,this._renderedCellCache=null,this._overflowCache=null,this._worksheet=null,this._worksheetData=null,this._cellData=null,this._styles=null}getCellData(){return this._cellData}getsStyles(){return this._styles}_initContextListener(){this.disposeWithMe(this._contextService.subscribeContextValue$(wn).pipe(o1.startWith(!1),o1.distinctUntilChanged()).subscribe(e=>{this._renderRawFormula=e,this._resetCache(),this.makeDirty(!0)}))}setOverflowCache(e){this._overflowCache=e}setMarginLeft(e){this._marginLeft=e}setMarginTop(e){this._marginTop=e}calculateSegment(e){if(this._worksheetData&&(this._updateLayout(),!(!this._rowHeightAccumulation||!this._columnWidthAccumulation)))return e!=null&&(this._rowColumnSegment=this.getRowColumnSegment(e)),!0}calculateWithoutClearingCache(e){if(!this.calculateSegment(e))return;const{mergeData:n}=this._worksheetData;return this._dataMergeCache=n&&this._getMergeCells(n,this._rowColumnSegment),this._calculateStylesCache(),this}calculate(e){return this._resetCache(),this.calculateWithoutClearingCache(e),this}calculateAutoHeightInRange(e){var o;if(!g.Tools.isArray(e))return[];const n=[],{mergeData:s,rowData:i}=this._worksheetData,a=i;for(const u of e){const{startRow:l,endRow:c,startColumn:h,endColumn:f}=u;for(let d=l;d<=c;d++){if(n.some(({row:m})=>m===d)||((o=a[d])==null?void 0:o.ia)===g.BooleanNumber.FALSE)continue;if(A0(d,h,f,s)){const m=this._calculateRowAutoHeight(d);n.push({row:d,autoHeight:m})}}}return n}_calculateRowAutoHeight(e){var c,h,f;const{columnCount:n,columnData:s,mergeData:i,defaultRowHeight:a,defaultColumnWidth:o}=this._worksheetData;let u=a;const l=this._worksheet;if(!l)return u;for(let d=0;d<n;d++){const{isMerged:D,isMergedMainCell:m}=g2(e,d,i);if(D||m)continue;const v=l.getCell(e,d);if(v!=null&&v.interceptorAutoHeight){u=Math.max(u,v.interceptorAutoHeight);continue}const F=v&&this._getCellDocumentModel(v);if(F==null)continue;const{documentModel:C,textRotation:S,wrapStrategy:B}=F;if(C==null)continue;const w=new be(C),{vertexAngle:x}=m2(S),O=(h=(c=s[d])==null?void 0:c.w)!=null?h:o;typeof O=="number"&&B===g.WrapStrategy.WRAP&&C.updateDocumentDataPageSize(O);const T=Qe.create(w,this._localService);T.calculate();let{height:A=0}=(f=I2(T,x))!=null?f:{};if(T){const k=T.getSkeletonData(),{marginTop:$,marginBottom:I,marginLeft:M,marginRight:L}=k.pages[k.pages.length-1],U=Math.abs(V1(x));A+=$*Math.cos(U)+L*Math.sin(U)+I*Math.cos(U)+M*Math.sin(U)}u=Math.max(u,A)}return Math.min(u,_0)}_updateLayout(){if(!this.dirty)return;const{rowData:e,columnData:n,defaultRowHeight:s,defaultColumnWidth:i,rowCount:a,columnCount:o,rowHeader:u,columnHeader:l,showGridlines:c}=this._worksheetData,{rowTotalHeight:h,rowHeightAccumulation:f}=this._generateRowMatrixCache(a,e,s),{columnTotalWidth:d,columnWidthAccumulation:D}=this._generateColumnMatrixCache(o,n,i);return this._rowHeaderWidth=u.hidden!==g.BooleanNumber.TRUE?this._dynamicallyUpdateRowHeaderWidth(u):0,this._columnHeaderHeight=l.hidden!==g.BooleanNumber.TRUE?l.height:0,this._rowTotalHeight=h,this._rowHeightAccumulation=f,this._columnTotalWidth=d,this._columnWidthAccumulation=D,this._showGridlines=c,this.makeDirty(!1),this}_dynamicallyUpdateRowHeaderWidth(e){var i;const s=`${(i=this._worksheet)==null?void 0:i.getRowCount()}`.length*8;return Math.max(e.width,s)}getRowColumnSegment(e){return this._getBounding(this._rowHeightAccumulation,this._columnWidthAccumulation,e==null?void 0:e.viewBound)}getWorksheetConfig(){return this._worksheetData}getRowColumnSegmentByViewBound(e){return this._getBounding(this._rowHeightAccumulation,this._columnWidthAccumulation,e)}getMergeBounding(e,n,s,i){const a=this._worksheetData.mergeData;if(!a)return{startRow:e,startColumn:n,endRow:s,endColumn:i};let o=!0;const u=new g.ObjectMatrix;for(;o;){o=!1;for(let l=0;l<a.length;l++){const{startRow:c,startColumn:h,endRow:f,endColumn:d}=a[l];if(u.getValue(c,h))continue;k0({left:n,top:e,right:i,bottom:s},{left:h,top:c,right:d,bottom:f})&&(e=Math.min(e,c),n=Math.min(n,h),s=Math.max(s,f),i=Math.max(i,d),u.setValue(c,h,!0),o=!0)}}return{startRow:e,startColumn:n,endRow:s,endColumn:i}}appendToOverflowCache(e,n,s,i){this._overflowCache.setValue(e,n,{startRow:e,endRow:e,startColumn:s,endColumn:i})}getColumnCount(){return this._columnWidthAccumulation.length}getRowCount(){return this._rowHeightAccumulation.length}getOverflowPosition(e,n,s,i,a){const{width:o}=e;let u=i,l=i;return n===g.HorizontalAlign.CENTER?(u=this._getOverflowBound(s,i,0,o/2,n),l=this._getOverflowBound(s,i,a-1,o/2,n)):n===g.HorizontalAlign.RIGHT?u=this._getOverflowBound(s,i,0,o):l=this._getOverflowBound(s,i,a-1,o),{startColumn:u,endColumn:l}}getNoMergeCellPositionByIndex(e,n){const{rowHeightAccumulation:s,columnWidthAccumulation:i,rowHeaderWidthAndMarginLeft:a,columnHeaderHeightAndMarginTop:o}=this;let{startY:u,endY:l,startX:c,endX:h}=ye(e,n,s,i);return u+=o,l+=o,c+=a,h+=a,{startY:u,endY:l,startX:c,endX:h}}getNoMergeCellPositionByIndexWithNoHeader(e,n){const{rowHeightAccumulation:s,columnWidthAccumulation:i}=this,{startY:a,endY:o,startX:u,endX:l}=ye(e,n,s,i);return{startY:a,endY:o,startX:u,endX:l}}calculateCellIndexByPosition(e,n,s,i,a){const{row:o,column:u}=this.getCellPositionByOffset(e,n,s,i,a);return this.getCellByIndex(o,u)}getCellPositionByOffset(e,n,s,i,a){const o=this.getRowPositionByOffsetY(n,i,a),u=this.getColumnPositionByOffsetX(e,s,a);return{row:o,column:u}}getColumnPositionByOffsetX(e,n,s){e=this.getTransformOffsetX(e,n,s);const{columnWidthAccumulation:i}=this;let a=g.searchArray(i,e);return a===Number.POSITIVE_INFINITY?a=i.length-1:a===-1&&(a=0),a}getRowPositionByOffsetY(e,n,s){const{rowHeightAccumulation:i}=this;e=this.getTransformOffsetY(e,n,s);let a=g.searchArray(i,e);return a===Number.POSITIVE_INFINITY?a=i.length-1:a===-1&&(a=0),a}getTransformOffsetX(e,n,s){const{x:i}=s;return e=e/n+i-this.rowHeaderWidthAndMarginLeft,e}getTransformOffsetY(e,n,s){const{y:i}=s;return e=e/n+i-this.columnHeaderHeightAndMarginTop,e}getOffsetByPositionX(e){const{columnWidthAccumulation:n,rowHeaderWidthAndMarginLeft:s}=this,i=n.length-1,a=n[e];return a!=null?a+s:e<0?s:n[i]+s}getOffsetByPositionY(e){const{rowHeightAccumulation:n,columnHeaderHeightAndMarginTop:s}=this,i=n.length-1,a=n[e];return a!=null?a+s:e<0?s:n[i]+s}getCellByIndex(e,n){const{rowHeightAccumulation:s,columnWidthAccumulation:i,rowHeaderWidthAndMarginLeft:a,columnHeaderHeightAndMarginTop:o}=this,u=Me(e,n,s,i,this._worksheetData.mergeData),{isMerged:l,isMergedMainCell:c}=u;let{startY:h,endY:f,startX:d,endX:D,mergeInfo:m}=u;return h+=o,f+=o,d+=a,D+=a,m=Lt(m,a,o),{actualRow:e,actualColumn:n,startY:h,endY:f,startX:d,endX:D,isMerged:l,isMergedMainCell:c,mergeInfo:m}}getCellByIndexWithNoHeader(e,n){const{rowHeightAccumulation:s,columnWidthAccumulation:i}=this,a=Me(e,n,s,i,this._worksheetData.mergeData),{isMerged:o,isMergedMainCell:u}=a,{startY:l,endY:c,startX:h,endX:f,mergeInfo:d}=a,D=Lt(d,0,0);return{actualRow:e,actualColumn:n,startY:l,endY:c,startX:h,endX:f,isMerged:o,isMergedMainCell:u,mergeInfo:D}}convertTransformToOffsetX(e,n,s){const{x:i}=s;return e=(e-i)*n,e}convertTransformToOffsetY(e,n,s){const{y:i}=s;return e=(e-i)*n,e}getSelectionBounding(e,n,s,i){return this.getMergeBounding(e,n,s,i)}getBlankCellDocumentModel(e){const n=this._getCellDocumentModel(e,{ignoreTextRotation:!0});if(n!=null)return n.documentModel==null&&(n.documentModel=this._getDocumentDataByStyle("",{},{})),n;const s="";let i="document";const a={a:0,v:g.BooleanNumber.FALSE},o=g.HorizontalAlign.UNSPECIFIED,u=g.VerticalAlign.UNSPECIFIED,l=g.WrapStrategy.UNSPECIFIED,c=Tn;return i=h2({},this._localService).fontCache,{documentModel:this._getDocumentDataByStyle(s,{},{}),fontString:i,textRotation:a,wrapStrategy:l,verticalAlign:u,horizontalAlign:o,paddingData:c}}getCellDocumentModelWithFormula(e){return this._getCellDocumentModel(e,{isDeepClone:!0,displayRawFormula:!0,ignoreTextRotation:!0})}_getCellDocumentModel(e,n=Sn){var v;const{isDeepClone:s,displayRawFormula:i,ignoreTextRotation:a}={...Sn,...n},o=this._styles.getStyleByCell(e);if(!e)return;let u,l="document";const c=this._getOtherStyle(o),h=a?{a:0,v:g.BooleanNumber.FALSE}:c.textRotation||{a:0,v:g.BooleanNumber.FALSE};let f=c.horizontalAlign||g.HorizontalAlign.UNSPECIFIED;const d=c.verticalAlign||g.VerticalAlign.UNSPECIFIED,D=c.wrapStrategy||g.WrapStrategy.UNSPECIFIED,m=c.paddingData||Tn;if(e.f&&i)u=this._getDocumentDataByStyle(e.f.toString(),{},{verticalAlign:d}),f=g.HorizontalAlign.UNSPECIFIED;else if(e.p){const{centerAngle:F,vertexAngle:C}=m2(h);u=this._updateConfigAndGetDocumentModel(s?g.Tools.deepClone(e.p):e.p,f,{horizontalAlign:f,verticalAlign:d,centerAngle:F,vertexAngle:C,wrapStrategy:D})}else if(e.v!=null){const F=this._getFontFormat(o);l=h2(F,this._localService).fontCache;let C=g.extractPureTextFromCell(e);e.t===g.CellValueType.FORCE_STRING&&i&&(C=`'${C}`),u=this._getDocumentDataByStyle(C,F,{...c,textRotation:h,cellValueType:e.t})}return{documentModel:u,fontString:l,textRotation:h,wrapStrategy:D,verticalAlign:d,horizontalAlign:f,paddingData:m,fill:(v=o==null?void 0:o.bg)==null?void 0:v.rgb}}getDecomposedOffset(e,n){let s=g.searchArray(this._columnWidthAccumulation,e),i=0;s===-1||s===0?(s=0,i=e):i=e-this._columnWidthAccumulation[s-1];let a=g.searchArray(this._rowHeightAccumulation,n),o=0;return a===-1||a===0?(a=0,o=n):o=n-this._rowHeightAccumulation[a-1],{row:a,column:s,columnOffset:i,rowOffset:o}}_calculateOverflowCell(e,n,s){const{documentSkeleton:i,vertexAngle:a=0,centerAngle:o=0,horizontalAlign:u,wrapStrategy:l}=s,c=this._cellData.getValue(e,n),{t:h=g.CellValueType.STRING}=c||{};let f=u;if(u===g.HorizontalAlign.UNSPECIFIED&&(o===E1&&a===E1?f=g.HorizontalAlign.CENTER:(a>0&&a!==E1||a===-E1)&&(f=g.HorizontalAlign.RIGHT)),(l===g.WrapStrategy.OVERFLOW||l===g.WrapStrategy.UNSPECIFIED)&&h!==g.CellValueType.NUMBER&&h!==g.CellValueType.BOOLEAN&&u!==g.HorizontalAlign.JUSTIFIED){if(this.intersectMergeRange(e,n))return!0;let d=I2(i,a);if(!d)return!0;if(a!==0){const{startY:F,endY:C,startX:S,endX:B}=Me(e,n,this.rowHeightAccumulation,this.columnWidthAccumulation,this.mergeData),w=B-S,x=C-F;d.height>x&&(d={width:x/Math.tan(Math.abs(a))+w,height:x})}const D=this.getOverflowPosition(d,f,e,n,this.getColumnCount()),{startColumn:m,endColumn:v}=D;if(m===v)return!0;this.appendToOverflowCache(e,n,m,v)}else if(l===g.WrapStrategy.WRAP&&a!==0){if(this.intersectMergeRange(e,n))return!0;const{startY:d,endY:D}=Me(e,n,this.rowHeightAccumulation,this.columnWidthAccumulation,this.mergeData),m=D-d;i.getViewModel().getDataModel().updateDocumentDataPageSize(m),i.calculate();const v=I2(i,a);if(!v)return!0;const{startColumn:F,endColumn:C}=this.getOverflowPosition(v,f,e,n,this.getColumnCount());if(F===C)return!0;this.appendToOverflowCache(e,n,F,C)}}_getBounding(e,n,s){const i=e.length,a=n.length;if(!s)return{startRow:0,endRow:i-1,startColumn:0,endColumn:a-1};let o=-1,u=-1,l=-1,c=-1;const h=g.searchArray(e,Math.round(s.top)-this.columnHeaderHeightAndMarginTop),f=g.searchArray(e,Math.round(s.bottom)-this.columnHeaderHeightAndMarginTop);h===-1&&f===0?(o=-1,u=-1):(h===-1?o=0:o=h,f===Number.POSITIVE_INFINITY||f>=i?u=i-1:u=f);const d=g.searchArray(n,Math.round(s.left)-this.rowHeaderWidthAndMarginLeft),D=g.searchArray(n,Math.round(s.right)-this.rowHeaderWidthAndMarginLeft);return d===-1&&D===0?(l=-1,c=-1):(d===-1?l=0:l=d,D===Number.POSITIVE_INFINITY||D>=a?c=a-1:c=D),{startRow:o,endRow:u,startColumn:l,endColumn:c}}_generateRowMatrixCache(e,n,s){var u;let i=0;const a=[],o=n;for(let l=0;l<e;l++){let c=s;if((u=this._worksheet)!=null&&u.getRowFiltered(l))c=0;else if(o[l]!=null){const h=o[l];if(!h)continue;const{h:f=s,ah:d,ia:D}=h;(D==null||D===g.BooleanNumber.TRUE)&&typeof d=="number"?c=d:c=f,h.hd===g.BooleanNumber.TRUE&&(c=0)}i+=c,a.push(i)}return{rowTotalHeight:i,rowHeightAccumulation:a}}_generateColumnMatrixCache(e,n,s){let i=0;const a=[],o=n;for(let u=0;u<e;u++){let l=s;if(o[u]!=null){const c=o[u];if(!c)continue;c.w!=null&&(l=c.w),c.hd===g.BooleanNumber.TRUE&&(l=0)}i+=l,a.push(i)}return{columnTotalWidth:i,columnWidthAccumulation:a}}_getOverflowBound(e,n,s,i,a=g.HorizontalAlign.LEFT){var u,l;let o=0;if(n>s){const c=this._columnWidthAccumulation.length-1;for(let h=n;h>=s;h--){const f=h,d=(u=this._worksheet)==null?void 0:u.getCell(e,f);if(!g.isEmptyCell(d)&&f!==n||this.intersectMergeRange(e,f))return f===n?f:f+1>c?c:f+1;const{startX:D,endX:m}=ye(e,f,this.rowHeightAccumulation,this.columnWidthAccumulation);if(a===g.HorizontalAlign.CENTER&&f===n?o+=(m-D)/2:o+=m-D,i<o)return f}return n}for(let c=n;c<=s;c++){const h=c,f=(l=this._worksheet)==null?void 0:l.getCell(e,h);if(!g.isEmptyCell(f)&&h!==n||this.intersectMergeRange(e,h))return h===n?h:h-1<0?0:h-1;const{startX:d,endX:D}=ye(e,h,this.rowHeightAccumulation,this.columnWidthAccumulation);if(a===g.HorizontalAlign.CENTER&&h===n?o+=(D-d)/2:o+=D-d,i<o)return h}return s}intersectMergeRange(e,n){const s=this.dataMergeCache;for(const i of s){const{startRow:a,endRow:o,startColumn:u,endColumn:l}=i;if(e>=a&&e<=o&&n>=u&&n<=l)return!0}return!1}_calculateStylesCache(){const e=this._dataMergeCache,n=this._rowColumnSegment,s=this.columnWidthAccumulation,{startRow:i,endRow:a,startColumn:o,endColumn:u}=n;if(!(u===-1||a===-1)){for(const l of e)this._setCellCache(l.startRow,l.startColumn,!1,l);for(let l=i;l<=a;l++){for(let c=o;c<=u;c++)this._setCellCache(l,c,!1);for(let c=0;c<o;c++)this._setCellCache(l,c,!0);if(u!==0)for(let c=u+1;c<s.length;c++)this._setCellCache(l,c,!0)}}}_resetCache(){this._stylesCache={background:{},backgroundPositions:new g.ObjectMatrix,font:{},border:new g.ObjectMatrix},this._renderedCellCache=new g.ObjectMatrix,this._overflowCache.reset()}_makeDocumentSkeletonDirty(e,n){if(this._stylesCache.font==null)return;const s=Object.keys(this._stylesCache.font);for(const i of s){const a=this._stylesCache.font[i];if(a!=null&&a.getValue(e,n)){a.getValue(e,n).documentSkeleton.makeDirty(!0);return}}}_setCellCache(e,n,s,i){var x;const a=this._renderedCellCache.getValue(e,n);if(e===-1||n===-1)return!0;if(a===!1)return this._makeDocumentSkeletonDirty(e,n),!0;if(!this._worksheet)return!0;const o=this._worksheet.getCell(e,n)||this._worksheet.getCellRaw(e,n);if(!o)return!0;if(this._worksheet.getColVisible(n)===!1||this._worksheet.getRowVisible(e)===!1){const{isMerged:O,isMergedMainCell:T}=g2(e,n,this._dataMergeCache);if(O&&!T)return!0;if(!T)return!0}const l=this._stylesCache,c=this._styles.getStyleByCell(o);if(!s&&c&&c.bg&&c.bg.rgb){const O=c.bg.rgb;l.background[O]||(l.background[O]=new g.ObjectMatrix),l.background[O].setValue(e,n,O);const A=this.getCellByIndexWithNoHeader(e,n);(x=l.backgroundPositions)==null||x.setValue(e,n,A)}if(!s&&c&&c.bd&&(i?(this._setMergeBorderProps(q.TOP,l,i),this._setMergeBorderProps(q.BOTTOM,l,i),this._setMergeBorderProps(q.LEFT,l,i),this._setMergeBorderProps(q.RIGHT,l,i)):this.intersectMergeRange(e,n)||(this._setBorderProps(e,n,q.TOP,c,l),this._setBorderProps(e,n,q.BOTTOM,c,l),this._setBorderProps(e,n,q.LEFT,c,l),this._setBorderProps(e,n,q.RIGHT,c,l)),this._setBorderProps(e,n,q.TL_BR,c,l),this._setBorderProps(e,n,q.TL_BC,c,l),this._setBorderProps(e,n,q.TL_MR,c,l),this._setBorderProps(e,n,q.BL_TR,c,l),this._setBorderProps(e,n,q.ML_TR,c,l),this._setBorderProps(e,n,q.BC_TR,c,l)),a===!0)return this._makeDocumentSkeletonDirty(e,n),!0;if(g.isNullCell(o))return;const h=o&&this._getCellDocumentModel(o,{displayRawFormula:this._renderRawFormula});if(h==null)return;const{documentModel:f}=h;if(f==null)return;const{fontString:d,textRotation:D,wrapStrategy:m,verticalAlign:v,horizontalAlign:F}=h,C=new be(f);l.font[d]||(l.font[d]=new g.ObjectMatrix);const S=l.font[d],{vertexAngle:B,centerAngle:w}=m2(D);if(C){const O=Qe.create(C,this._localService);O.calculate();const T={documentSkeleton:O,vertexAngle:B,centerAngle:w,verticalAlign:v,horizontalAlign:F,wrapStrategy:m};S.setValue(e,n,T),this._calculateOverflowCell(e,n,T)}s?this._renderedCellCache.setValue(e,n,!0):this._renderedCellCache.setValue(e,n,!1)}_updateConfigAndGetDocumentModel(e,n,s){var a;if(!s||!((a=e.body)!=null&&a.dataStream))return;e.documentStyle||(e.documentStyle={}),e.documentStyle.pageSize={width:Number.POSITIVE_INFINITY,height:Number.POSITIVE_INFINITY},e.documentStyle.renderConfig=s;const i=e.body.paragraphs||[];for(const o of i)o.paragraphStyle||(o.paragraphStyle={}),o.paragraphStyle.horizontalAlign=n;return new g.DocumentDataModel(e)}_getDocumentDataByStyle(e,n,s){const i=e.length,{textRotation:a,paddingData:o={t:0,r:2,b:1,l:2},horizontalAlign:u=g.HorizontalAlign.UNSPECIFIED,verticalAlign:l=g.VerticalAlign.UNSPECIFIED,wrapStrategy:c=g.WrapStrategy.UNSPECIFIED,cellValueType:h}=s,{t:f,r:d,b:D,l:m}=o||{},{vertexAngle:v,centerAngle:F}=m2(a),C={id:"d",body:{dataStream:`${e}${g.DEFAULT_EMPTY_DOCUMENT_VALUE}`,textRuns:[{ts:n,st:0,ed:i}],paragraphs:[{startIndex:i,paragraphStyle:{horizontalAlign:u}}]},documentStyle:{pageSize:{width:Number.POSITIVE_INFINITY,height:Number.POSITIVE_INFINITY},marginTop:f,marginBottom:D,marginRight:d,marginLeft:m,renderConfig:{horizontalAlign:u,verticalAlign:l,centerAngle:F,vertexAngle:v,wrapStrategy:c,cellValueType:h}}};return new g.DocumentDataModel(C)}_setMergeBorderProps(e,n,s){var h;if(!this._worksheet||!n.border)return;const i=[];let a=!0,o=s.startRow,u=s.endRow,l=s.startRow,c=s.startColumn;e===q.TOP?(l=s.startRow,o=s.startColumn,u=s.endColumn):e===q.BOTTOM?(l=s.endRow,o=s.startColumn,u=s.endColumn):e===q.LEFT?(c=s.startColumn,o=s.startRow,u=s.endRow):e===q.RIGHT&&(c=s.endColumn,o=s.startRow,u=s.endRow);for(let f=o;f<=u;f++){e===q.TOP||e===q.BOTTOM?c=f:(e===q.LEFT||e===q.RIGHT)&&(l=f);const d=this._worksheet.getCell(l,c);if(!d){a=!1;break}const D=this._styles.getStyleByCell(d);if(!D){a=!1;break}const m=(h=D.bd)==null?void 0:h[e];if(m){const v=g.getColorStyle(m.cl)||he;i.push({r:l,c,style:m.s,color:v})}else a=!1}a&&i.forEach(f=>{const{r:d,c:D,style:m,color:v}=f;n.border.getValue(d,D)||n.border.setValue(d,D,{}),n.border.getValue(d,D)[e]={type:e,style:m,color:v}})}_setBorderProps(e,n,s,i,a){var c,h,f;const o=(c=i.bd)==null?void 0:c[s];if(!o||!a.border)return!0;const u=g.getColorStyle(o.cl)||he,l=a.border;if(l.getValue(e,n)||l.setValue(e,n,{[s]:{}}),s===q.TOP){if(((h=l.getValue(e-1,n))==null?void 0:h[q.BOTTOM])&&g.isWhiteColor(u))return!0}else if(s===q.LEFT&&((f=l.getValue(e,n-1))==null?void 0:f[q.RIGHT])&&g.isWhiteColor(u))return!0;l.getValue(e,n)[s]={type:s,style:o.s,color:u}}_getFontFormat(e){if(!e)return{};const{ff:n,fs:s,it:i,bl:a,ul:o,st:u,ol:l,cl:c}=e,h={};return n&&(h.ff=n),s&&(h.fs=s),i&&(h.it=i),a&&(h.bl=a),o&&(h.ul=o),u&&(h.st=u),l&&(h.ol=l),c&&(h.cl=c),h}_getOtherStyle(e){if(!e)return{};const{tr:n,td:s,ht:i,vt:a,tb:o,pd:u}=e;return{textRotation:n,textDirection:s,horizontalAlign:i,verticalAlign:a,wrapStrategy:o,paddingData:u}}_getMergeCells(e,n){const s=this.columnWidthAccumulation.length-1;n?n={startRow:n.startRow,endRow:n.endRow,endColumn:s,startColumn:0}:n={startRow:0,startColumn:0,endRow:this.rowHeightAccumulation.length-1,endColumn:s};const{startRow:i,startColumn:a,endRow:o,endColumn:u}=n,l=[];for(let c=0;c<e.length;c++){const{startRow:h,endRow:f,startColumn:d,endColumn:D}=e[c];for(let m=i;m<=o;m++){let v=!1;for(let F=a;F<=u;F++)if(m>=h&&m<=f&&F>=d&&F<=D){l.push({startRow:h,endRow:f,startColumn:d,endColumn:D}),v=!0;break}if(v)break}}return l}},y.SpreadsheetSkeleton=io([En(4,C1.Inject(g.LocaleService)),En(5,g.IContextService)],y.SpreadsheetSkeleton);const ao="DefaultFontExtension",oo=30;class Bn extends de{constructor(){super(...arguments);_(this,"uKey",ao);_(this,"Z_INDEX",oo)}getDocuments(){const e=this.parent;return e==null?void 0:e.getDocuments()}draw(e,n,s,i){const{stylesCache:a,dataMergeCache:o,overflowCache:u,worksheet:l}=s,{font:c}=a;if(!s||!l)return;const{rowHeightAccumulation:h,columnTotalWidth:f,columnWidthAccumulation:d,rowTotalHeight:D}=s;if(!h||!d||f===void 0||D===void 0||!l)return;e.save();const m=this._getScale(n);c&&Object.keys(c).forEach(v=>{c[v].forValue((C,S,B)=>{var m1,b1,p1,h1,a1;const w=this.getCellIndex(C,S,h,d,o);let{startY:x,endY:O,startX:T,endX:A}=w;const{isMerged:k,isMergedMainCell:$,mergeInfo:I}=w;if(k||($&&(x=I.startY,O=I.endY,T=I.startX,A=I.endX),!this.isRenderDiffRangesByRow(I.startRow,I.endRow,i)))return!0;const M=l.getCell(C,S)||{};if((m1=M.fontRenderExtension)!=null&&m1.isSkip)return!0;const L=u.getValue(C,S),{horizontalAlign:U,vertexAngle:G=0,centerAngle:X=0}=B;let H=U;U===g.HorizontalAlign.UNSPECIFIED&&(X===E1&&G===E1?H=g.HorizontalAlign.CENTER:(G>0&&G!==E1||G===-E1)&&(H=g.HorizontalAlign.RIGHT)),e.save(),e.beginPath();const V=(p1=(b1=M.fontRenderExtension)==null?void 0:b1.rightOffset)!=null?p1:0,e1=(a1=(h1=M.fontRenderExtension)==null?void 0:h1.leftOffset)!=null?a1:0;let t1=!0;G===0&&(T=T+e1,A=A-V,(V!==0||e1!==0)&&(t1=!1));const n1=A-T,s1=O-x;if(L&&t1){const{startColumn:O1,startRow:y1,endColumn:_1,endRow:S1}=L;O1===_1&&O1===S?(e.rectByPrecision(T+1/m,x+1/m,n1-2/m,s1-2/m),e.clip(),e.clearRectForTexture(T+1/m,x+1/m,n1-2/m,s1-2/m)):H===g.HorizontalAlign.CENTER?this._clipRectangle(e,y1,S1,O1,_1,m,h,d):H===g.HorizontalAlign.RIGHT?this._clipRectangle(e,y1,C,O1,S,m,h,d):this._clipRectangle(e,C,S1,S,_1,m,h,d)}else e.rectByPrecision(T+1/m,x+1/m,n1-2/m,s1-2/m),e.clip(),e.clearRectForTexture(T+1/m,x+1/m,n1-2/m,s1-2/m);e.translate(T+g1,x+g1),this._renderDocuments(e,B,T,x,A,O,C,S,u),e.restore()})}),e.restore()}_renderDocuments(e,n,s,i,a,o,u,l,c){const h=this.getDocuments();if(h==null)throw new Error("documents is null");const{documentSkeleton:f,vertexAngle:d=0,wrapStrategy:D}=n,m=a-s,v=o-i;D===g.WrapStrategy.WRAP&&d===0?(f.getViewModel().getDataModel().updateDocumentDataPageSize(m),f.calculate()):f.getViewModel().getDataModel().updateDocumentDataPageSize(Number.POSITIVE_INFINITY);const F=c.getValue(u,l);if(!(D===g.WrapStrategy.WRAP&&!F&&d===0)){const C=I2(f),S=f.getViewModel().getDataModel().getSnapshot().documentStyle;if(C&&S){const{width:B}=C,{marginRight:w=0,marginLeft:x=0}=S;f.getViewModel().getDataModel().updateDocumentDataPageSize(B+x+w),f.calculate()}}f.makeDirty(!1),h.resize(m,v),h.changeSkeleton(f).render(e)}_clipRectangle(e,n,s,i,a,o,u,l){const c=u[n-1]||0,h=u[s]||u[u.length-1],f=l[i-1]||0,d=l[a]||l[l.length-1];e.rectByPrecision(f,c,d-f,h-c),e.clip(),e.clearRectForTexture(f,c,d-f,h-c)}}Ce.add(Bn);const uo="DefaultRowHeaderLayoutExtension";class On extends de{constructor(){super(...arguments);_(this,"uKey",uo);_(this,"Z_INDEX",10)}draw(e,n,s){const{rowColumnSegment:i,rowHeaderWidth:a=0}=s,{startRow:o,endRow:u}=i;if(!s||a===0)return;const{rowHeightAccumulation:l,columnTotalWidth:c,columnWidthAccumulation:h,rowTotalHeight:f}=s;if(!l||!h||c===void 0||f===void 0)return;const d=this._getScale(n);e.fillStyle=F1([248,249,250]),e.fillRectByPrecision(0,0,a,f),e.textAlign="center",e.textBaseline="middle",e.fillStyle=F1([0,0,0]),e.beginPath(),e.setLineWidthByPrecision(1),e.translateWithPrecisionRatio(g1,g1),e.strokeStyle=F1([217,217,217]),e.font=`13px ${o2}`;let D=0;const m=l.length;for(let F=o-1;F<=u;F++){if(F<0||F>m-1)continue;const C=l[F];if(D===C)continue;e.moveToByPrecision(0,C),e.lineToByPrecision(a,C);const S=D+(C-D)/2;e.fillText(`${F+1}`,a/2,S+Et),D=C}const v=a-.5/d;e.moveToByPrecision(v,0),e.lineToByPrecision(v,f),e.stroke()}}jt.add(new On);const lo="DefaultMarkerExtension",co=60,ho=r=>{const{startRow:t,endRow:e,startColumn:n,endColumn:s}=r;return`${t}-${e}-${n}-${s}`};class xn extends de{constructor(){super(...arguments);_(this,"Z_INDEX",co);_(this,"uKey",lo)}draw(e,n,s,i){const{worksheet:a,rowColumnSegment:o}=s;if(!a)return;const u=new Set;g.Range.foreach(o,(l,c)=>{var B,w,x,O;let h=a.getCell(l,c);const f=this.getCellIndex(l,c,s.rowHeightAccumulation,s.columnWidthAccumulation,s.dataMergeCache),{isMerged:d,isMergedMainCell:D,mergeInfo:m}=f;let{startY:v,endY:F,startX:C,endX:S}=f;if((D||d)&&(v=m.startY,F=m.endY,C=m.startX,S=m.endX),d){const T={row:m.startRow,col:m.startColumn};h=a.getCell(T.row,T.col)}if(!this.isRenderDiffRangesByRow(m.startRow,m.endRow,i))return!0;if(f.isMerged||f.isMergedMainCell){const T=ho(m);if(u.has(T))return;u.add(T)}if(!(!a.getColVisible(c)||!a.getRowVisible(l))&&h){if((B=h.markers)!=null&&B.tr){e.save();const T=h.markers.tr,A=S,k=v;e.fillStyle=T.color,e.moveTo(A,k),e.beginPath(),e.lineTo(A-T.size,k),e.lineTo(A,k+T.size),e.lineTo(A,k),e.closePath(),e.fill(),e.restore()}if((w=h.markers)!=null&&w.tl){e.save();const T=h.markers.tl,A=C,k=v;e.fillStyle=T.color,e.moveTo(A,k),e.beginPath(),e.lineTo(A+T.size,k),e.lineTo(A,k+T.size),e.lineTo(A,k),e.closePath(),e.fill(),e.restore()}if((x=h.markers)!=null&&x.br){e.save();const T=h.markers.br,A=S,k=F;e.fillStyle=T.color,e.moveTo(A,k),e.beginPath(),e.lineTo(A-T.size,k),e.lineTo(A,k-T.size),e.lineTo(A,k),e.closePath(),e.fill(),e.restore()}if((O=h.markers)!=null&&O.bl){e.save();const T=h.markers.bl,A=C,k=F;e.fillStyle=T.color,e.moveTo(A,k),e.beginPath(),e.lineTo(A+T.size,k),e.lineTo(A,k-T.size),e.lineTo(A,k),e.closePath(),e.fill(),e.restore()}}})}}Ce.add(xn);const fo="DefaultCustomExtension",_o=55,go=r=>{const{startRow:t,endRow:e,startColumn:n,endColumn:s}=r;return`${t}-${e}-${n}-${s}`};class Rn extends de{constructor(){super(...arguments);_(this,"Z_INDEX",_o);_(this,"uKey",fo)}draw(e,n,s,i){const{rowHeightAccumulation:a,columnWidthAccumulation:o,worksheet:u,dataMergeCache:l,rowColumnSegment:c}=s;if(!u)return;const h=new Set,f=u.getSheetId();g.Range.foreach(c,(d,D)=>{let m=u.getCell(d,D);if(!(m!=null&&m.customRender))return;let v=this.getCellIndex(d,D,a,o,l);const{mergeInfo:F}=v;if(!this.isRenderDiffRangesByRow(F.startRow,F.endRow,i))return!0;if(v.isMerged||v.isMergedMainCell){const B=go(F);if(h.has(B))return;h.add(B)}if(v.isMerged){const B={row:F.startRow,col:F.startColumn};if(m=u.getCell(B.row,B.col),!(m!=null&&m.customRender))return;v=this.getCellIndex(B.row,B.col,a,o,l)}const C={data:m,style:s.getsStyles().getStyleByCell(m),primaryWithCoord:v,subUnitId:f,row:d,col:D};if(!u.getColVisible(D)||!u.getRowVisible(d))return;const S=m.customRender.sort(g.sortRules);e.save(),S.forEach(B=>{B.drawWith(e,C,s,this.parent)}),e.restore()})}}Ce.add(Rn);var An=(r=>(r[r.OFF=0]="OFF",r[r.ON=1]="ON",r))(An||{});class po extends qt{constructor(e,n){super(e,n);_(this,"_rowHeaderLayoutExtension");this._initialDefaultExtension(),this.makeDirty(!0)}get rowHeaderLayoutExtension(){return this._rowHeaderLayoutExtension}draw(e,n){const s=this.getSkeleton();if(!s)return;const i=this.getParentScale();s.calculateSegment(n);const a=s.rowColumnSegment;if(a.startRow===-1&&a.endRow===-1)return;const{columnHeaderHeight:o}=s;e.translateWithPrecision(0,o);const u=this.getExtensionsByOrder();for(const l of u)l.draw(e,i,s)}isHit(e){const n=this._getInverseCoord(e),s=this.getSkeleton();if(!s)return!1;const{rowHeaderWidth:i,columnHeaderHeight:a}=s;return n.x>=0&&n.x<=i&&n.y>a}_initialDefaultExtension(){jt.getData().forEach(e=>{this.register(e)}),this._rowHeaderLayoutExtension=this.getExtensionByKey("DefaultRowHeaderLayoutExtension")}}var q6=(r=>(r[r.SPAN=0]="SPAN",r[r.LINE=1]="LINE",r))(q6||{});class Dt extends Yt{constructor(){super(...arguments);_(this,"type",0);_(this,"translateX",0);_(this,"translateY",0)}}const Do="DefaultDocsBackgroundExtension",vo=10;class mo extends Dt{constructor(){super(...arguments);_(this,"uKey",Do);_(this,"Z_INDEX",vo);_(this,"_preBackgroundColor","")}draw(e,n,s){var d;const i=(d=s.parent)==null?void 0:d.parent;if(!i)return;const{contentHeight:a=0}=i,{ts:o,width:u}=s;if(!o)return;const{bg:l}=o;if(!l)return;const c=g.getColorStyle(l),{spanStartPoint:h=P.create(0,0)}=this.extensionOffset,f=1.5;c&&(e.fillStyle=c,e.fillRectByPrecision(h.x-.5,h.y-1,u+1,a+2*f))}clearCache(){this._preBackgroundColor=""}}ze.add(new mo);const bo="DefaultDocsBorderExtension";class yo extends Dt{constructor(){super(...arguments);_(this,"uKey",bo);_(this,"Z_INDEX",50);_(this,"_preBorderStyle");_(this,"_preBorderColor","")}draw(e,n,s){var m;const i=(m=s.parent)==null?void 0:m.parent;if(!i)return;const{asc:a=0,lineHeight:o=0}=i,{ts:u,left:l,width:c}=s;if(!u)return;const{bd:h}=u;if(!h)return;const f=this._getScale(e.getScale()),d=this._createBorderCache(h);e.save(),e.translateWithPrecisionRatio(g1,g1);const{spanStartPoint:D=P.create(0,0)}=this.extensionOffset;for(const v of d.keys()){const F=d.get(v);if(!F)continue;const{s:C,cl:S}=F,B=g.getColorStyle(S)||he,w=Ht(C);C!==this._preBorderStyle&&(Ut(e,C),e.setLineWidthByPrecision(w),this._preBorderStyle=C),B!==this._preBorderColor&&(e.strokeStyle=B||he,this._preBorderColor=B),Nt(e,v,(w-1)/2/f,{startX:D.x,startY:D.y,endX:D.x+c,endY:D.y+o})}e.restore()}clearCache(){this._preBorderStyle=null,this._preBorderColor=""}_createBorderCache(e){const{t:n,b:s,l:i,r:a}=e,o=new Map;return n&&o.set(q.TOP,n),s&&o.set(q.BOTTOM,s),i&&o.set(q.LEFT,i),a&&o.set(q.RIGHT,a),o}}ze.add(new yo);const Fo="DefaultDocsFontAndBaseLineExtension",Co=20;class Eo extends Dt{constructor(){super(...arguments);_(this,"uKey",Fo);_(this,"Z_INDEX",Co);_(this,"_preFontString","");_(this,"_preFontColor","")}draw(e,n,s){var D;if(!((D=s.parent)==null?void 0:D.parent))return;const{ts:a,content:o,fontStyle:u,bBox:l}=s,{spanPointWithFont:c=P.create(0,0)}=this.extensionOffset;if(o==null)return;if(!a){this._fillText(e,s,c);return}this._preFontString!==(u==null?void 0:u.fontString)&&(e.font=this._preFontString=(u==null?void 0:u.fontString)||"");const{cl:h,va:f}=a,d=g.getColorStyle(h)||he;d&&this._preFontColor!==d&&(e.fillStyle=d),f===g.BaselineOffset.SUPERSCRIPT?c.y+=-l.spo:f===g.BaselineOffset.SUBSCRIPT&&(c.y+=l.sbo),this._fillText(e,s,c)}_fillText(e,n,s){const{renderConfig:i,spanStartPoint:a,centerPoint:o}=this.extensionOffset,{content:u,width:l,bBox:c}=n,{aba:h,abd:f}=c;if(u==null||a==null||o==null)return;const{vertexAngle:d,centerAngle:D}=i!=null?i:{},m=90;d===m&&D===m&&!d2(u)?(e.save(),e.translate(a.x+o.x,a.y+o.y),e.rotate(Math.PI/2),e.translate(-l/2,(h+f)/2-f),e.fillText(u,0,0),e.restore()):e.fillText(u,s.x,s.y)}clearCache(){this._preFontString="",this._preFontColor=""}}ze.add(new Eo);const So="DefaultDocsLineExtension",To=40;class wo extends Dt{constructor(){super(...arguments);_(this,"uKey",So);_(this,"Z_INDEX",To);_(this,"_preBackgroundColor","")}draw(e,n,s){var B;const i=(B=s.parent)==null?void 0:B.parent;if(!i)return;const{contentHeight:a=0,asc:o}=i,{ts:u,bBox:l}=s;if(!u)return;const{sp:c,spo:h,sbo:f,bd:d}=l,D=It(n),m=.5,{ul:v,st:F,ol:C,va:S}=u;if(v){const w=a+St-3;this._drawLine(e,s,v,w,D)}if(F){let w=o+d-c-m;S===g.BaselineOffset.SUPERSCRIPT?w-=h:S===g.BaselineOffset.SUBSCRIPT&&(w+=f),this._drawLine(e,s,F,w,D)}if(C){const w=-St-m;this._drawLine(e,s,C,w,D)}}clearCache(){this._preBackgroundColor=""}_drawLine(e,n,s,i,a){var h;const{s:o,cl:u,t:l,c=g.BooleanNumber.TRUE}=s;if(o===g.BooleanNumber.TRUE){const{originTranslate:f=P.create(0,0),alignOffset:d=P.create(0,0),renderConfig:D={}}=this.extensionOffset,{left:m,width:v}=n,{centerAngle:F=0,vertexAngle:C=0}=D,S=V1(F),B=V1(C);e.save(),e.translateWithPrecisionRatio(g1,g1),e.beginPath();const w=(c===g.BooleanNumber.TRUE?g.getColorStyle((h=n.ts)==null?void 0:h.cl):g.getColorStyle(u))||he;e.strokeStyle=w,this._setLineType(e,l||g.TextDecoration.SINGLE);const x=Ue(f.addByPoint(m,i),P.create(0,0),S,B,d),O=Ue(f.addByPoint(m+v,i),P.create(0,0),S,B,d);e.moveToByPrecision(x.x,x.y),e.lineToByPrecision(O.x,O.y),e.stroke(),e.restore()}}_setLineType(e,n){n===g.TextDecoration.DASH_DOT_DOT_HEAVY||n===g.TextDecoration.DOT_DOT_DASH?e.setLineDash([2,2,5,2,2]):n===g.TextDecoration.DASH_DOT_HEAVY||n===g.TextDecoration.DOT_DASH?e.setLineDash([2,5,2]):n===g.TextDecoration.DOTTED||n===g.TextDecoration.DOTTED_HEAVY?e.setLineDash([2]):n===g.TextDecoration.DASH||n===g.TextDecoration.DASHED_HEAVY?e.setLineDash([3]):n===g.TextDecoration.DASH_LONG||n===g.TextDecoration.DASH_LONG_HEAVY?e.setLineDash([6]):e.setLineDash([0])}}ze.add(new wo);class kn extends Wt{constructor(e,n,s){super(e);_(this,"pageMarginLeft",0);_(this,"pageMarginTop",0);_(this,"pageLayoutType",K1.VERTICAL);this._skeleton=n,this._setConfig(s)}getSkeleton(){return this._skeleton}setSkeleton(e){this._skeleton=e}_setConfig(e){(e==null?void 0:e.pageMarginLeft)!=null?this.pageMarginLeft=e==null?void 0:e.pageMarginLeft:this.pageMarginLeft=17,(e==null?void 0:e.pageMarginTop)!=null?this.pageMarginTop=e==null?void 0:e.pageMarginTop:this.pageMarginTop=14,(e==null?void 0:e.pageLayoutType)!=null?this.pageLayoutType=e==null?void 0:e.pageLayoutType:this.pageLayoutType=K1.VERTICAL}render(e,n){if(!this.visible)return this.makeDirty(!1),this;if(!this._skeleton)return;const s=this.transform.getMatrix();e.save(),e.transform(s[0],s[1],s[2],s[3],s[4],s[5]),this._draw(e,n),e.restore()}getParentScale(){if(!this.parent)return{scaleX:1,scaleY:1};let{scaleX:e=1,scaleY:n=1}=this.parent;return this.parent.classType===K.SCENE&&(e=this.parent.ancestorScaleX||1,n=this.parent.ancestorScaleY||1),{scaleX:e,scaleY:n}}isSkipByDiffBounds(e,n,s,i){if(i==null)return!1;const{pageWidth:a,pageHeight:o,marginBottom:u,marginTop:l,marginLeft:c,marginRight:h}=e,f=s+a+c+h,d=n+o+u+l,{left:D,top:m,right:v,bottom:F}=i.viewBound;return f<D||d<m||s>v&&a!==Number.POSITIVE_INFINITY||n>F&&o!==Number.POSITIVE_INFINITY}scrollBySelection(){}syncSelection(){}remainActiveSelection(){}findNodeByCoord(e,n){}findCoordByNode(e){}_getBounding(e){}_draw(e,n){}}class L2 extends kn{constructor(e,n,s){super(e,n,s);_(this,"onPageRenderObservable",new g.Observable);_(this,"docsLeft",0);_(this,"docsTop",0);_(this,"_drawLiquid");_(this,"_findLiquid");_(this,"_skeletonObserver");this._drawLiquid=new We,this._findLiquid=new We,this._initialDefaultExtension(),this.makeDirty(!0)}static create(e,n,s){return new L2(e,n,s)}dispose(){var e;super.dispose(),(e=this._skeletonObserver)==null||e.dispose(),this._skeletonObserver=null,this.onPageRenderObservable.clear(),this._drawLiquid=null,this._findLiquid=null}getOffsetConfig(){const{transform:e,pageLayoutType:n,pageMarginLeft:s,pageMarginTop:i,left:a,top:o}=this;return{documentTransform:e,pageLayoutType:n,pageMarginLeft:s,pageMarginTop:i,docsLeft:a,docsTop:o}}getEngine(){return this.getScene().getEngine()}draw(e,n){var f;const s=(f=this.getSkeleton())==null?void 0:f.getSkeletonData();if(s==null)return;this._drawLiquid.reset();const{pages:i}=s,a=this.getParentScale(),o=this.getExtensionsByOrder();for(const d of o)d.clearCache();const u=o.find(d=>d.uKey==="DefaultDocsBackgroundExtension"),l=o.filter(d=>d.type===q6.SPAN&&d.uKey!=="DefaultDocsBackgroundExtension");let c=0,h=0;for(let d=0,D=i.length;d<D;d++){const m=i[d],{sections:v,marginTop:F=0,marginBottom:C=0,marginLeft:S=0,marginRight:B=0,width:w,height:x,renderConfig:O={}}=m,{verticalAlign:T=g.VerticalAlign.TOP,horizontalAlign:A=g.HorizontalAlign.LEFT,centerAngle:k=0,vertexAngle:$=0,wrapStrategy:I=g.WrapStrategy.UNSPECIFIED,cellValueType:M}=O,L=this._horizontalHandler(w,S,B,A,$,k,M),U=this._verticalHandler(x,F,C,T),G=P.create(L,U),X=V1(k),H=V1($),V=H-X;if(this.isSkipByDiffBounds(m,c,h,n)){const{x:n1,y:s1}=this._drawLiquid.translatePage(m,this.pageLayoutType,this.pageMarginLeft,this.pageMarginTop);h+=n1,c+=s1;continue}this.onPageRenderObservable.notifyObservers({page:m,pageLeft:h,pageTop:c,ctx:e}),this._startRotation(e,V);for(const n1 of v){const{columns:s1}=n1;this._drawLiquid.translateSection(n1);for(const m1 of s1){const{lines:b1,width:p1}=m1;this._drawLiquid.translateSave(),this._drawLiquid.translateColumn(m1);const h1=b1.length;let a1=G,O1=null;if(H!==0){const{rotateTranslateXList:y1,rotatedHeight:_1,rotatedWidth:S1,fixOffsetX:$1,fixOffsetY:I1,rotateTranslateY:X1}=Gt(b1,p1,H);let ce=S1;_1>this.height&&I!==g.WrapStrategy.WRAP&&(I===g.WrapStrategy.OVERFLOW||H>0)&&(ce=this.height/Math.tan(Math.abs(H)));const r2=this._horizontalHandler(ce,S,B,A,$,k);let W1=this._verticalHandler(_1,F,C,T)-I1;_1>this.height&&(H<0?W1=this.height-(_1+I1):W1=-I1),a1=P.create(r2+$1,W1),this._drawLiquid.translate(0,-X1),O1=y1}else I===g.WrapStrategy.WRAP&&(a1.x=S);for(let y1=0;y1<h1;y1++){const _1=b1[y1],{divides:S1,asc:$1=0,type:I1,lineHeight:X1=0}=_1,ce=$1,r2=ce*Math.sin(X),ke=ce*Math.cos(X);if(I1===p2.BLOCK)for(const W1 of o)W1.type===q6.LINE&&(W1.extensionOffset={alignOffset:a1,renderConfig:O},W1.draw(e,a,_1));else{this._drawLiquid.translateSave(),this._drawLiquid.translateLine(_1,!0),O1&&this._drawLiquid.translate(O1[y1]);const W1=S1.length;for(let $e=0;$e<W1;$e++){const P2=S1[$e],{glyphGroup:M2}=P2;this._drawLiquid.translateSave(),this._drawLiquid.translateDivide(P2);for(const L1 of M2){if(!L1.content||L1.content.length===0)continue;const{width:s2,left:Ie}=L1,{x:Le,y:i2}=this._drawLiquid,a2=P.create(Le,i2),P1=P.create(s2/2,X1/2),Pe={spanStartPoint:Ue(a2.addByPoint(Ie,0),P1,X,H,a1)};u&&(u.extensionOffset=Pe,u.draw(e,a,L1))}for(const L1 of M2){if(!L1.content||L1.content.length===0)continue;const{width:s2,left:Ie,xOffset:Le}=L1,{x:i2,y:a2}=this._drawLiquid,P1=P.create(i2,a2),ne=P.create(s2/2,X1/2),Pe=Ue(P1.addByPoint(Ie+Le,0),ne,X,H,a1),u0=Ue(P1.addByPoint(Ie+r2+Le,ke),ne,X,H,a1),l0={originTranslate:P1,spanStartPoint:Pe,spanPointWithFont:u0,centerPoint:ne,alignOffset:a1,renderConfig:O};for(const i3 of l)i3.extensionOffset=l0,i3.draw(e,a,L1)}this._drawLiquid.translateRestore()}this._drawLiquid.translateRestore()}}this._drawLiquid.translateRestore()}}this._resetRotation(e,V);const{x:e1,y:t1}=this._drawLiquid.translatePage(m,this.pageLayoutType,this.pageMarginLeft,this.pageMarginTop);h+=e1,c+=t1}}changeSkeleton(e){return this.setSkeleton(e),this}_draw(e,n){this.draw(e,n)}_horizontalHandler(e,n,s,i,a=0,o=0,u){i===g.HorizontalAlign.UNSPECIFIED&&(o===E1&&a===E1?i=g.HorizontalAlign.CENTER:a>0&&a!==E1||a===-E1||u===g.CellValueType.NUMBER?i=g.HorizontalAlign.RIGHT:u===g.CellValueType.BOOLEAN?i=g.HorizontalAlign.CENTER:i=g.HorizontalAlign.LEFT);let l=0;return i===g.HorizontalAlign.CENTER?l=(this.width-e)/2:i===g.HorizontalAlign.RIGHT?l=this.width-e-s:l=n,l}_verticalHandler(e,n,s,i){let a=0;return i===g.VerticalAlign.MIDDLE?a=(this.height-e)/2:i===g.VerticalAlign.TOP?a=n:a=this.height-e-s,a}_startRotation(e,n){e.rotate(n||0)}_resetRotation(e,n){e.rotate(-n||0)}_initialDefaultExtension(){ze.getData().forEach(e=>{this.register(e)})}}const Bo="__SHEET_EXTENSION_FONT_DOCUMENT_INSTANCE__";class Oo extends Kt{constructor(e,n,s=!0){super(e,n);_(this,"_backgroundExtension");_(this,"_borderExtension");_(this,"_fontExtension");_(this,"_cacheCanvas");_(this,"_refreshIncrementalState",!1);_(this,"_forceDirty",!1);_(this,"_forceDisableGridlines",!1);_(this,"_documents",new L2(Bo,void 0,{pageMarginLeft:0,pageMarginTop:0}));_(this,"isPrinting",!1);this._allowCache=s,this._allowCache&&(this._cacheCanvas=new Ge,this.onIsAddedToParentObserver.add(i=>{var a;(a=i==null?void 0:i.getEngine())==null||a.onTransformChangeObservable.add(()=>{this._resizeCacheCanvas()}),this._resizeCacheCanvas(),this._addMakeDirtyToScroll()})),this._initialDefaultExtension(),this.makeDirty(!0)}get backgroundExtension(){return this._backgroundExtension}get borderExtension(){return this._borderExtension}get fontExtension(){return this._fontExtension}getDocuments(){return this._documents}get allowCache(){return this._allowCache}get forceDisableGridlines(){return this._forceDisableGridlines}dispose(){var e;super.dispose(),this._documents.dispose(),this._documents=null,(e=this._cacheCanvas)==null||e.dispose(),this._cacheCanvas=null,this._backgroundExtension=null,this._borderExtension=null,this._fontExtension=null}draw(e,n){const s=this.getSkeleton();if(!s)return;const i=this.getParentScale(),a=this._refreshIncrementalState?n==null?void 0:n.diffBounds.map(u=>s.getRowColumnSegmentByViewBound(u)):void 0,o=this.getExtensionsByOrder();for(const u of o)u.draw(e,i,s,a)}isHit(e){const n=this._getInverseCoord(e),s=this.getSkeleton();if(!s)return!1;const{rowHeaderWidth:i,columnHeaderHeight:a}=s;return n.x>i&&n.y>a}getNoMergeCellPositionByIndex(e,n){const s=this.getSkeleton();if(!s)return;const{rowHeightAccumulation:i,columnWidthAccumulation:a,rowHeaderWidth:o,columnHeaderHeight:u}=s;let{startY:l,endY:c,startX:h,endX:f}=ye(e,n,i,a);return l+=u,c+=u,h+=o,f+=o,{startY:l,endY:c,startX:h,endX:f}}getScrollXYByRelativeCoords(e){const n=this.getParent();let s=0,i=0;const a=n.getActiveViewportByRelativeCoord(e);if(a){const o=a.actualScrollX||0,u=a.actualScrollY||0;s+=o,i+=u}return{x:s,y:i}}makeForceDirty(e=!0){this.makeDirty(e),this._forceDirty=e}setForceDisableGridlines(e){this._forceDisableGridlines=e}getSelectionBounding(e,n,s,i){var a;return(a=this.getSkeleton())==null?void 0:a.getMergeBounding(e,n,s,i)}render(e,n){if(!this.visible)return this.makeDirty(!1),this;const s=this.getSkeleton();if(!s)return;s.calculateWithoutClearingCache(n);const i=s.rowColumnSegment;if(i.startRow===-1&&i.endRow===-1||i.startColumn===-1&&i.endColumn===-1)return;e.save();const{a=1,d:o=1}=e.getTransform(),{rowHeaderWidth:u,columnHeaderHeight:l}=s;if(e.translateWithPrecision(u,l),this._drawAuxiliary(e,n),n&&this._allowCache===!0){const{viewBound:c,diffBounds:h,diffX:f,diffY:d,viewPortPosition:D,viewPortKey:m}=n;if(m==="viewMain"){const v=this._cacheCanvas.getContext();v.save();const{left:F,top:C,right:S,bottom:B}=D,w=S-F+u,x=B-C+l;if(h.length===0||f===0&&d===0||this._forceDirty)(this.isDirty()||this._forceDirty)&&(this._cacheCanvas.clear(),v.setTransform(e.getTransform()),this._draw(v,n),this._forceDirty=!1),this._applyCache(e,F,C,w,x,F,C,w,x);else{if(this.isDirty()){v.save(),v.globalCompositeOperation="copy",v.setTransform(1,0,0,1,0,0),v.drawImage(this._cacheCanvas.getCanvasEle(),f*a,d*o),v.restore(),this._refreshIncrementalState=!0,v.setTransform(e.getTransform());for(const O of h){const{left:T,right:A,bottom:k,top:$}=O;v.save(),v.beginPath(),v.rectByPrecision(T-u-g1,$-l-g1,A-T+u+g1*2,k-$+l+g1*2),v.clip(),this._draw(v,{viewBound:n.viewBound,diffBounds:[O],diffX:n.diffX,diffY:n.diffY,viewPortPosition:n.viewPortPosition,viewPortKey:n.viewPortKey}),v.restore()}this._refreshIncrementalState=!1}this._applyCache(e,F,C,w,x,F,C,w,x)}v.restore()}else this._draw(e,n)}else this._draw(e,n);return e.restore(),this.makeDirty(!1),this}_resizeCacheCanvas(){const e=this._getAncestorSize();if(!e||this._cacheCanvas==null)return;const{width:n,height:s}=e;this._cacheCanvas.setSize(n,s),this.makeForceDirty(!0)}_applyCache(e,n=0,s=0,i=0,a=0,o=0,u=0,l=0,c=0){if(!e)return;const h=this._cacheCanvas.getPixelRatio(),f=this._cacheCanvas.getContext();f.save(),e.save(),e.setTransform(1,0,0,1,0,0),f.setTransform(1,0,0,1,0,0),e.drawImage(this._cacheCanvas.getCanvasEle(),n*h,s*h,i*h,a*h,o*h,u*h,l*h,c*h),e.restore(),f.restore()}_draw(e,n){this.draw(e,n)}_getAncestorSize(){const e=this._getAncestorParent();if(e){if(e.classType===K.ENGINE){const n=e.getCanvas();return{width:n.getWidth(),height:n.getHeight()}}if(e.classType===K.SCENE_VIEWER)return{width:e.width,height:e.height}}}_getAncestorParent(){let e=this.parent;for(;e;){if(e.classType===K.ENGINE||e.classType===K.SCENE_VIEWER)return e;e=(e==null?void 0:e.getParent)&&(e==null?void 0:e.getParent())}}_initialDefaultExtension(){Ce.getData().sort(g.sortRules).forEach(e=>{this.register(new e)}),this._backgroundExtension=this.getExtensionByKey("DefaultBackgroundExtension"),this._borderExtension=this.getExtensionByKey("DefaultBorderExtension"),this._fontExtension=this.getExtensionByKey("DefaultFontExtension")}_addMakeDirtyToScroll(){this._hasScrollViewportOperator(this,e=>{e.onScrollBeforeObserver.add(()=>{this.makeDirty(!0)})})}_hasScrollViewportOperator(e,n){let s=e.getParent();for(;s;){if(s.classType===K.SCENE){const i=s.getViewports(),a=this._getHasScrollViewports(i);for(const o of a)o&&n(o)}s=(s==null?void 0:s.getParent)&&(s==null?void 0:s.getParent())}}_getHasScrollViewports(e){const n=[];for(const s of e)s.getScrollBar()&&n.push(s);return n}_drawAuxiliary(e,n){const s=this.getSkeleton();if(s==null)return;const{rowColumnSegment:i,dataMergeCache:a,overflowCache:o,stylesCache:u,showGridlines:l}=s,{border:c,backgroundPositions:h}=u,{startRow:f,endRow:d,startColumn:D,endColumn:m}=i;if(!s||l===g.BooleanNumber.FALSE||this._forceDisableGridlines)return;const{rowHeightAccumulation:v,columnTotalWidth:F,columnWidthAccumulation:C,rowTotalHeight:S}=s;if(!v||!C||F===void 0||S===void 0)return;e.save(),e.setLineWidthByPrecision(1),e.strokeStyle=F1([212,212,212]);const B=C.length,w=v.length,x=.4,O=d-f+1,T=m-D+1,A=Math.ceil(O*x),k=Math.ceil(T*x),$=Math.max(Math.floor(f-A),0),I=Math.min(Math.ceil(d+A),w-1),M=Math.min(Math.ceil(m+k),B-1),L=Math.max(Math.floor(D-k),0),U=C[L-1]||0,G=v[$-1]||0,X=C[M],H=v[I];e.translateWithPrecisionRatio(g1,g1),e.beginPath(),e.moveToByPrecision(U,G),e.lineToByPrecision(X,G),e.moveToByPrecision(U,G),e.lineToByPrecision(U,H),e.closePathByEnv(),e.stroke();for(let V=$;V<=I;V++){if(V<0||V>w-1)continue;const e1=v[V];e.beginPath(),e.moveToByPrecision(U,e1),e.lineToByPrecision(X,e1),e.closePathByEnv(),e.stroke()}for(let V=L;V<=M;V++){if(V<0||V>B-1)continue;const e1=C[V];e.beginPath(),e.moveToByPrecision(e1,G),e.lineToByPrecision(e1,H),e.closePathByEnv(),e.stroke()}this._clearRectangle(e,v,C,a),this._clearRectangle(e,v,C,o.toNativeArray()),this._clearBackground(e,h),e.restore()}_clearRectangle(e,n,s,i){if(i!=null)for(const a of i){const{startRow:o,endRow:u,startColumn:l,endColumn:c}=a,h=n[o-1]||0,f=n[u]||n[n.length-1],d=s[l-1]||0,D=s[c]||s[s.length-1];e.clearRectByPrecision(d,h,D-d,f-h),e.beginPath(),e.moveToByPrecision(d,h),e.lineToByPrecision(D,h),e.lineToByPrecision(D,f),e.lineToByPrecision(d,f),e.lineToByPrecision(d,h),e.stroke(),e.closePath()}}_clearBackground(e,n){n==null||n.forValue((s,i,a)=>{let{startY:o,endY:u,startX:l,endX:c}=a;const{isMerged:h,isMergedMainCell:f,mergeInfo:d}=a;if(h)return!0;f&&(o=d.startY,u=d.endY,l=d.startX,c=d.endX),e.clearRectForTexture(l,o,c-l+.5,u-o+.5)})}}function $n(r,t,e){r.onPointerEnterObserver.add(n=>{t(r,n)}),r.onPointerLeaveObserver.add(n=>{e(r,n)})}class Z6 extends ie{constructor(e,n){super(e);_(this,"_subScenes",new Map);_(this,"_activeSubScene");_(this,"_allowSelectedClipElement",!1);this._initialProps(n)}get classType(){return K.SCENE_VIEWER}render(e,n){var i;if(!this.visible)return this.makeDirty(!1),this;if(n){const{left:a,top:o,right:u,bottom:l}=n.viewBound;if(this.width+this.strokeWidth+this.left<a||u<this.left||this.height+this.strokeWidth+this.top<o||l<this.top)return this}const s=this.transform.getMatrix();return e.save(),e.transform(s[0],s[1],s[2],s[3],s[4],s[5]),(i=this._activeSubScene)==null||i.makeDirtyNoParent(!0).render(e),e.restore(),this.makeDirty(!1),this}getSubScenes(){return this._subScenes}getActiveSubScene(){return this._activeSubScene}getSubScene(e){for(const[n,s]of this._subScenes)if(n===e)return s}addSubScene(e){this._activeSubScene=e,this._subScenes.set(e.sceneKey,e),this.makeDirty()}removeSubScene(e){const n=this._subScenes.get(e);this._subScenes.delete(e),this._activeSubScene===n&&(this._activeSubScene=this._subScenes.values().next().value),this.makeDirty()}activeSubScene(e){if(e==null)return;const n=this._subScenes.get(e);this._activeSubScene!==n&&(this._activeSubScene=n,this.makeDirty())}enableSelectedClipElement(){this._allowSelectedClipElement=!0}disableSelectedClipElement(){this._allowSelectedClipElement=!1}allowSelectedClipElement(){return this._allowSelectedClipElement}pick(e){var i;if(this._activeSubScene===void 0)return;const s=this.transform.clone().invert().applyPoint(e);return(i=this._activeSubScene)==null?void 0:i.pick(s)}dispose(){super.dispose(),this._subScenes.forEach(e=>{e.dispose()})}_initialProps(e){if(!e)return;const n=Object.keys(e);if(n.length===0)return;const s={};let i=!1;n.forEach(a=>{if(e[a]===void 0)return!0;s[a]=e[a],i=!0}),i&&this.transformByState(s),this.makeDirty(!0)}}const In=["hoverCursor","moveCursor","fillRule","globalCompositeOperation","paintFirst","stroke","strokeScaleEnabled","fill","fillAfterStrokeEnabled","hitStrokeWidth","strokeLineJoin","strokeLineCap","shadowColor","shadowBlur","shadowOffset","shadowOffsetX","shadowOffsetY","shadowOpacity","shadowEnabled","shadowForStrokeEnabled","strokeDashArray","strokeDashOffset","strokeMiterLimit"];class Ae extends ie{constructor(e,n){super(e);_(this,"_hoverCursor");_(this,"_moveCursor",null);_(this,"_fillRule","nonzero");_(this,"_globalCompositeOperation","source-over");_(this,"_paintFirst","fill");_(this,"_stroke");_(this,"_strokeScaleEnabled",!1);_(this,"_fill");_(this,"_fillAfterStrokeEnabled",!1);_(this,"_hitStrokeWidth",0);_(this,"_strokeLineJoin","round");_(this,"_strokeLineCap","round");_(this,"_shadowColor");_(this,"_shadowBlur",0);_(this,"_shadowOffset");_(this,"_shadowOffsetX",0);_(this,"_shadowOffsetY",0);_(this,"_shadowOpacity",0);_(this,"_shadowEnabled",!1);_(this,"_shadowForStrokeEnabled",!1);_(this,"_strokeDashArray");_(this,"_strokeDashOffset",0);_(this,"_strokeMiterLimit",0);_(this,"_type",Ct.RECT);this._initialProps(n)}get hoverCursor(){return this._hoverCursor}get moveCursor(){return this._moveCursor}get fillRule(){return this._fillRule}get globalCompositeOperation(){return this._globalCompositeOperation}get paintFirst(){return this._paintFirst}get stroke(){return this._stroke}get strokeScaleEnabled(){return this._strokeScaleEnabled}get fill(){return this._fill}get fillAfterStrokeEnabled(){return this._fillAfterStrokeEnabled}get hitStrokeWidth(){return this._hitStrokeWidth}get strokeLineJoin(){return this._strokeLineJoin}get strokeLineCap(){return this._strokeLineCap}get shadowColor(){return this._shadowColor}get shadowBlur(){return this._shadowBlur}get shadowOffset(){return this._shadowOffset}get shadowOffsetX(){return this._shadowOffsetX}get shadowOffsetY(){return this._shadowOffsetY}get shadowOpacity(){return this._shadowOpacity}get shadowEnabled(){return this._shadowEnabled}get shadowForStrokeEnabled(){return this._shadowForStrokeEnabled}get strokeDashArray(){return this._strokeDashArray}get strokeDashOffset(){return this._strokeDashOffset}get strokeMiterLimit(){return this._strokeMiterLimit}static drawWith(e,n){}static _renderPaintInOrder(e,n){n.paintFirst==="stroke"?(this._renderStroke(e,n),this._renderFill(e,n)):(this._renderFill(e,n),this._renderStroke(e,n))}static _renderFill(e,n){n.fill&&(e.save(),this._setFillStyles(e,n),n.fillRule==="evenodd"?e.fill("evenodd"):e.fill(),e.restore())}static _renderStroke(e,n){const{stroke:s,strokeWidth:i,shadowEnabled:a,shadowForStrokeEnabled:o,strokeScaleEnabled:u,parent:l}=n;let{scaleX:c,scaleY:h}=e.getScale();!s||i===0||(a&&!o&&this._removeShadow(e),e.save(),u===!1&&(c=c!=null?c:1,h=h!=null?h:1,e.scale(1/c,1/h)),this._setLineDash(e),this._setStrokeStyles(e,n),e.stroke(),e.restore())}static _getObjectScaling(){return{scaleX:1,scaleY:1}}static _removeShadow(e){}static _setFillStyles(e,n){e.fillStyle=n.fill}static _setStrokeStyles(e,n){const{strokeWidth:s,strokeLineCap:i,strokeDashOffset:a,strokeLineJoin:o,strokeMiterLimit:u,stroke:l}=n;e.lineWidth=s,e.lineCap=i,e.lineDashOffset=a,e.lineJoin=o,e.miterLimit=u,e.strokeStyle=l}static _setLineDash(e){}render(e,n){if(!this.visible)return this.makeDirty(!1),this;if(this.isRender(n)){const{top:i,left:a,bottom:o,right:u}=n.viewBound;if(this.width+this.strokeWidth+this.left<a||u<this.left||this.height+this.strokeWidth+this.top<i||o<this.top)return this}const s=this.transform.getMatrix();return e.save(),e.transform(s[0],s[1],s[2],s[3],s[4],s[5]),this._draw(e),e.restore(),this.makeDirty(!1),this}setProps(e){if(!e)return;const n=Object.keys(e);if(n.length!==0)return n.forEach(s=>{if(e[s]===void 0)return!0;j2.indexOf(s)===-1&&(this[`_${s}`]=e[s])}),this.makeDirty(!0),this}toJson(){const e={};return In.forEach(n=>{this[n]&&(e[n]=this[n])}),{...super.toJson(),...e}}_draw(e){}_initialProps(e){if(!e)return;const n=Object.keys(e);if(n.length===0)return;const s={};let i=!1;n.forEach(a=>{if(e[a]===void 0)return!0;j2.indexOf(a)>-1?(s[a]=e[a],i=!0):this[`_${a}`]=e[a]}),i&&this.transformByState(s),this.makeDirty(!0)}}const Ln=["dataArray"];class w1 extends Ae{constructor(e,n){super(e,n);_(this,"_dataArray",[]);_(this,"_pathLength",0);_(this,"_selfRectCache",{left:0,top:0,width:0,height:0});_(this,"_reCalculateCache",!0);n!=null&&n.data?this._dataArray=w1.parsePathData(n.data):n!=null&&n.dataArray&&(this._dataArray=n.dataArray);for(let s=0;s<this.dataArray.length;++s)this._pathLength+=this.dataArray[s].pathLength;this._setFixBoundingBox(),this.onTransformChangeObservable.add(s=>{const{type:i,preValue:a}=s;if(i===l1.resize||i===l1.all){this._reCalculateCache=!0;const{left:o,top:u,width:l,height:c}=this._getSelfRect(),{width:h,height:f}=a;let d,D;h?d=this.width-h:d=0,f?D=this.height-f:D=0;const m=d/l,v=D/c;this.scaleX+=m,this.scaleY+=v,this.left=this.left-o*m,this.top=this.top-u*v,this._setTransForm()}})}get dataArray(){return this._dataArray}static drawWith(e,n){const s=n.dataArray;if(s){e.beginPath();for(let i=0;i<s.length;i++){const a=s[i].command,o=s[i].points;switch(a){case"L":e.lineTo(o[0],o[1]);break;case"M":e.moveTo(o[0],o[1]);break;case"C":e.bezierCurveTo(o[0],o[1],o[2],o[3],o[4],o[5]);break;case"Q":e.quadraticCurveTo(o[0],o[1],o[2],o[3]);break;case"A":{const u=o[0],l=o[1],c=o[2],h=o[3],f=o[4],d=o[5],D=o[6],m=o[7],v=c>h?c:h,F=c>h?1:c/h,C=c>h?h/c:1;e.translate(u,l),e.rotate(D),e.scale(F,C),e.arc(0,0,v,f,f+d,!!(1-m)),e.scale(1/F,1/C),e.rotate(-D),e.translate(-u,-l);break}case"z":e.closePath();break}}this._renderPaintInOrder(e,n)}}static getLineLength(e,n,s,i){return Math.sqrt((s-e)*(s-e)+(i-n)*(i-n))}static getPointOnLine(e,n,s,i,a,o,u){o===void 0&&(o=n),u===void 0&&(u=s);const l=(a-s)/(i-n+1e-8);let c=Math.sqrt(e*e/(1+l*l));i<n&&(c*=-1);let h=l*c,f;if(i===n)f={x:o,y:u+h};else if((u-s)/(o-n+1e-8)===l)f={x:o+c,y:u+h};else{const d=this.getLineLength(n,s,i,a);let D=(o-n)*(i-n)+(u-s)*(a-s);D/=d*d;const m=n+D*(i-n),v=s+D*(a-s),F=this.getLineLength(o,u,m,v),C=Math.sqrt(e*e-F*F);c=Math.sqrt(C*C/(1+l*l)),i<n&&(c*=-1),h=l*c,f={x:m+c,y:v+h}}return f}static getPointOnCubicBezier(e,n,s,i,a,o,u,l,c){function h(F){return F*F*F}function f(F){return 3*F*F*(1-F)}function d(F){return 3*F*(1-F)*(1-F)}function D(F){return(1-F)*(1-F)*(1-F)}const m=l*h(e)+o*f(e)+i*d(e)+n*D(e),v=c*h(e)+u*f(e)+a*d(e)+s*D(e);return{x:m,y:v}}static getPointOnQuadraticBezier(e,n,s,i,a,o,u){function l(D){return D*D}function c(D){return 2*D*(1-D)}function h(D){return(1-D)*(1-D)}const f=o*l(e)+i*c(e)+n*h(e),d=u*l(e)+a*c(e)+s*h(e);return{x:f,y:d}}static getPointOnEllipticalArc(e,n,s,i,a,o){const u=Math.cos(o),l=Math.sin(o),c={x:s*Math.cos(a),y:i*Math.sin(a)};return{x:e+(c.x*u-c.y*l),y:n+(c.x*l+c.y*u)}}static parsePathData(e){if(!e)return[];let n=e;const s=["m","M","l","L","v","V","h","H","z","Z","c","C","q","Q","t","T","s","S","a","A"];n=n.replace(new RegExp(" ","g"),",");for(let f=0,d=s.length;f<d;f++)n=n.replace(new RegExp(s[f],"g"),`|${s[f]}`);const i=n.split("|"),a=[],o=[];let u=0,l=0;const c=/([-+]?((\d+\.\d+)|((\d+)|(\.\d+)))(?:e[-+]?\d+)?)/gi;let h;for(let f=1,d=i.length;f<d;f++){let D=i[f],m=D.charAt(0);for(D=D.slice(1),o.length=0;h=c.exec(D);)o.push(h[0]);const v=[];for(let F=0,C=o.length;F<C;F++){if(o[F]==="00"){v.push(0,0);continue}const S=Number.parseFloat(o[F]);isNaN(S)?v.push(0):v.push(S)}for(;v.length>0&&!isNaN(v[0]);){let F,C=[];const S=u,B=l;let w,x,O,T,A,k,$,I,M,L;switch(m){case"l":u+=v.shift()||0,l+=v.shift()||0,F="L",C.push(u,l);break;case"L":u=v.shift()||0,l=v.shift()||0,C.push(u,l);break;case"m":{const U=v.shift()||0,G=v.shift()||0;if(u+=U,l+=G,F="M",a.length>2&&a[a.length-1].command==="z"){for(let X=a.length-2;X>=0;X--)if(a[X].command==="M"){u=a[X].points[0]+U,l=a[X].points[1]+G;break}}C.push(u,l),m="l";break}case"M":u=v.shift()||0,l=v.shift()||0,F="M",C.push(u,l),m="L";break;case"h":u+=v.shift()||0,F="L",C.push(u,l);break;case"H":u=v.shift()||0,F="L",C.push(u,l);break;case"v":l+=v.shift()||0,F="L",C.push(u,l);break;case"V":l=v.shift()||0,F="L",C.push(u,l);break;case"C":C.push(v.shift()||0,v.shift()||0,v.shift()||0,v.shift()||0),u=v.shift()||0,l=v.shift()||0,C.push(u,l);break;case"c":C.push(u+(v.shift()||0),l+(v.shift()||0),u+(v.shift()||0),l+(v.shift()||0)),u+=v.shift()||0,l+=v.shift()||0,F="C",C.push(u,l);break;case"S":x=u,O=l,w=a[a.length-1],w.command==="C"&&(x=u+(u-w.points[2]),O=l+(l-w.points[3])),C.push(x,O,v.shift()||0,v.shift()||0),u=v.shift()||0,l=v.shift()||0,F="C",C.push(u,l);break;case"s":x=u,O=l,w=a[a.length-1],w.command==="C"&&(x=u+(u-w.points[2]),O=l+(l-w.points[3])),C.push(x,O,u+(v.shift()||0),l+(v.shift()||0)),u+=v.shift()||0,l+=v.shift()||0,F="C",C.push(u,l);break;case"Q":C.push(v.shift()||0,v.shift()||0),u=v.shift()||0,l=v.shift()||0,C.push(u,l);break;case"q":C.push(u+(v.shift()||0),l+(v.shift()||0)),u+=v.shift()||0,l+=v.shift()||0,F="Q",C.push(u,l);break;case"T":x=u,O=l,w=a[a.length-1],w.command==="Q"&&(x=u+(u-w.points[0]),O=l+(l-w.points[1])),u=v.shift()||0,l=v.shift()||0,F="Q",C.push(x,O,u,l);break;case"t":x=u,O=l,w=a[a.length-1],w.command==="Q"&&(x=u+(u-w.points[0]),O=l+(l-w.points[1])),u+=v.shift()||0,l+=v.shift()||0,F="Q",C.push(x,O,u,l);break;case"A":T=v.shift()||0,A=v.shift()||0,k=v.shift()||0,$=v.shift()||0,I=v.shift()||0,M=u,L=l,u=v.shift()||0,l=v.shift()||0,F="A",C=this.convertEndpointToCenterParameterization(M,L,u,l,$,I,T,A,k);break;case"a":T=v.shift()||0,A=v.shift()||0,k=v.shift()||0,$=v.shift()||0,I=v.shift()||0,M=u,L=l,u+=v.shift()||0,l+=v.shift()||0,F="A",C=this.convertEndpointToCenterParameterization(M,L,u,l,$,I,T,A,k);break}a.push({command:F||m,points:C,start:{x:S,y:B},pathLength:this.calcLength(S,B,F||m,C)})}(m==="z"||m==="Z")&&a.push({command:"z",points:[],start:{x:0,y:0},pathLength:0})}return a}static calcLength(e,n,s,i){let a,o,u,l;const c=w1;switch(s){case"L":return c.getLineLength(e,n,i[0],i[1]);case"C":for(a=0,o=c.getPointOnCubicBezier(0,e,n,i[0],i[1],i[2],i[3],i[4],i[5]),l=.01;l<=1;l+=.01)u=c.getPointOnCubicBezier(l,e,n,i[0],i[1],i[2],i[3],i[4],i[5]),a+=c.getLineLength(o.x,o.y,u.x,u.y),o=u;return a;case"Q":for(a=0,o=c.getPointOnQuadraticBezier(0,e,n,i[0],i[1],i[2],i[3]),l=.01;l<=1;l+=.01)u=c.getPointOnQuadraticBezier(l,e,n,i[0],i[1],i[2],i[3]),a+=c.getLineLength(o.x,o.y,u.x,u.y),o=u;return a;case"A":{a=0;const h=i[4],f=i[5],d=i[4]+f;let D=Math.PI/180;if(Math.abs(h-d)<D&&(D=Math.abs(h-d)),o=c.getPointOnEllipticalArc(i[0],i[1],i[2],i[3],h,0),f<0)for(l=h-D;l>d;l-=D)u=c.getPointOnEllipticalArc(i[0],i[1],i[2],i[3],l,0),a+=c.getLineLength(o.x,o.y,u.x,u.y),o=u;else for(l=h+D;l<d;l+=D)u=c.getPointOnEllipticalArc(i[0],i[1],i[2],i[3],l,0),a+=c.getLineLength(o.x,o.y,u.x,u.y),o=u;return u=c.getPointOnEllipticalArc(i[0],i[1],i[2],i[3],d,0),a+=c.getLineLength(o.x,o.y,u.x,u.y),a}}return 0}static convertEndpointToCenterParameterization(e,n,s,i,a,o,u,l,c){const h=c*(Math.PI/180),f=Math.cos(h)*(e-s)/2+Math.sin(h)*(n-i)/2,d=-1*Math.sin(h)*(e-s)/2+Math.cos(h)*(n-i)/2,D=f*f/(u*u)+d*d/(l*l);D>1&&(u*=Math.sqrt(D),l*=Math.sqrt(D));let m=Math.sqrt((u*u*(l*l)-u*u*(d*d)-l*l*(f*f))/(u*u*(d*d)+l*l*(f*f)));a===o&&(m*=-1),isNaN(m)&&(m=0);const v=m*u*d/l,F=m*-l*f/u,C=(e+s)/2+Math.cos(h)*v-Math.sin(h)*F,S=(n+i)/2+Math.sin(h)*v+Math.cos(h)*F,B=$=>Math.sqrt($[0]*$[0]+$[1]*$[1]),w=($,I)=>($[0]*I[0]+$[1]*I[1])/(B($)*B(I)),x=($,I)=>($[0]*I[1]<$[1]*I[0]?-1:1)*Math.acos(w($,I)),O=x([1,0],[(f-v)/u,(d-F)/l]),T=[(f-v)/u,(d-F)/l],A=[(-1*f-v)/u,(-1*d-F)/l];let k=x(T,A);return w(T,A)<=-1&&(k=Math.PI),w(T,A)>=1&&(k=0),o===0&&k>0&&(k-=2*Math.PI),o===1&&k<0&&(k+=2*Math.PI),[C,S,u,l,O,k,h,o]}toJson(){const e={};return Ln.forEach(n=>{this[n]&&(e[n]=this[n])}),{...super.toJson(),...e}}getState(){const{left:e,top:n,width:s,height:i}=this.getRect();return{left:e,top:n,width:s,height:i,scaleX:this.scaleX,scaleY:this.scaleY,angle:this.angle,skewX:this.skewX,skewY:this.skewY,flipX:this.flipX,flipY:this.flipY}}getRect(){const{left:e,top:n,width:s,height:i}=this._getSelfRect();return{left:e*this.scaleX+this.left,top:n*this.scaleY+this.top,width:s*this.scaleX,height:i*this.scaleY}}getLength(){return this._pathLength}getPointAtLength(e){let n,s=0;const i=this.dataArray.length;if(!i)return null;for(;s<i&&e>this.dataArray[s].pathLength;)e-=this.dataArray[s].pathLength,++s;if(s===i)return n=this.dataArray[s-1].points.slice(-2),{x:n[0],y:n[1]};if(e<.01)return n=this.dataArray[s].points.slice(0,2),{x:n[0],y:n[1]};const a=this.dataArray[s],o=a.points;switch(a.command){case"L":return w1.getPointOnLine(e,a.start.x,a.start.y,o[0],o[1]);case"C":return w1.getPointOnCubicBezier(e/a.pathLength,a.start.x,a.start.y,o[0],o[1],o[2],o[3],o[4],o[5]);case"Q":return w1.getPointOnQuadraticBezier(e/a.pathLength,a.start.x,a.start.y,o[0],o[1],o[2],o[3]);case"A":{const u=o[0],l=o[1],c=o[2],h=o[3];let f=o[4];const d=o[5],D=o[6];return f+=d*e/a.pathLength,w1.getPointOnEllipticalArc(u,l,c,h,f,D)}}return null}_draw(e){w1.drawWith(e,this)}_setFixBoundingBox(){const{left:e,top:n,width:s,height:i}=this._getSelfRect(),a=this.width/s,o=this.height/i;this.left=this.left-e*a,this.top=this.top-n*o,this.scaleX=a,this.scaleY=o,this.width=s,this.height=i,this._setTransForm()}_getSelfRect(){if(!this._reCalculateCache)return this._selfRectCache;let e=[];this.dataArray.forEach(c=>{if(c.command==="A"){const h=c.points[4],f=c.points[5],d=c.points[4]+f;let D=Math.PI/180;if(Math.abs(h-d)<D&&(D=Math.abs(h-d)),f<0)for(let m=h-D;m>d;m-=D){const v=w1.getPointOnEllipticalArc(c.points[0],c.points[1],c.points[2],c.points[3],m,0);e.push(v.x,v.y)}else for(let m=h+D;m<d;m+=D){const v=w1.getPointOnEllipticalArc(c.points[0],c.points[1],c.points[2],c.points[3],m,0);e.push(v.x,v.y)}}else if(c.command==="C")for(let h=0;h<=1;h+=.01){const f=w1.getPointOnCubicBezier(h,c.start.x,c.start.y,c.points[0],c.points[1],c.points[2],c.points[3],c.points[4],c.points[5]);e.push(f.x,f.y)}else e=e.concat(c.points)});let n=e[0],s=e[0],i=e[1],a=e[1],o,u;for(let c=0;c<e.length/2;c++)o=e[c*2],u=e[c*2+1],isNaN(o)||(n=Math.min(n,o),s=Math.max(s,o)),isNaN(u)||(i=Math.min(i,u),a=Math.max(a,u));const l={left:n,top:i,width:s-n,height:a-i};return this._selfRectCache=l,l}}var Pn=(r=>(r.LEFT="__slideNavigationLeft__",r.RIGHT="__slideNavigationRight__",r))(Pn||{});const Mn="M512 1024C229.248 1024 0 794.752 0 512S229.248 0 512 0s512 229.248 512 512-229.248 512-512 512z m200.746667-478.506667l1.749333-1.664 30.165333-30.165333-330.496-330.581333a42.837333 42.837333 0 0 0-60.288 0 42.538667 42.538667 0 0 0 0 60.330666l270.08 270.165334-270.08 269.952a42.496 42.496 0 0 0 0 60.288c16.64 16.64 43.861333 16.469333 60.288 0.042666l298.581334-298.368z";class xo extends Z6{constructor(){super(...arguments);_(this,"onSlideChangePageByNavigationObservable",new g.Observable);_(this,"_navigationEnabled",!1)}activeFirstPage(){const n=this.getSubScenes().keys().next().value;n!=null&&this.changePage(n)}addPage(e){const n=e.sceneKey;this.getSubScene(n)==null&&(this.addSubScene(e),this.addNavigation())}changePage(e){e!==null&&(this.removeNavigation(),this.activeSubScene(e),this.addNavigation())}hasPage(e){return this.getSubScene(e)}addNavigation(){const e=this.getActiveSubScene();if(e==null||this._navigationEnabled===!1)return;const n=new w1("__slideNavigationLeft__",{data:Mn,width:60,height:60,left:90,top:(this.height-30)/2,fill:this._getArrowColor(),flipX:!0}),s=new w1("__slideNavigationRight__",{data:Mn,width:60,height:60,left:this.width-90,top:(this.height-30)/2,fill:this._getArrowColor()}),i=(o,u)=>{o.setCursor(f1.POINTER),o.setProps({fill:this._getArrowColor(!0)})},a=(o,u)=>{o.setCursor(f1.DEFAULT),o.setProps({fill:this._getArrowColor()})};$n(n,i,a),$n(s,i,a),this._addNavTrigger(n,s),e.addObjects([n,s],7)}removeNavigation(){var n,s;const e=this.getActiveSubScene();e==null||this._navigationEnabled===!1||((n=e.getObject("__slideNavigationLeft__"))==null||n.dispose(),(s=e.getObject("__slideNavigationRight__"))==null||s.dispose())}enableNav(){this._navigationEnabled=!0}disableNav(){this._navigationEnabled=!1}hiddenNav(){var n,s;const e=this.getActiveSubScene();e==null||this._navigationEnabled===!1||((n=e.getObject("__slideNavigationLeft__"))==null||n.hide(),(s=e.getObject("__slideNavigationRight__"))==null||s.hide())}showNav(){var n,s;const e=this.getActiveSubScene();e==null||this._navigationEnabled===!1||((n=e.getObject("__slideNavigationLeft__"))==null||n.show(),(s=e.getObject("__slideNavigationRight__"))==null||s.show())}renderToThumb(e,n,s=1,i=1){const a=this.getSubScene(n);a!=null&&(e.save(),e.scale(s,i),a.makeDirtyNoParent(!0).render(e),e.restore())}_getSubScenesIndex(e){if(e==null)return;const n=Array.from(this.getSubScenes()),s=n.length;let i=0;for(let u=0;u<s;u++){const[l]=n[u];if(e===l){i=u;break}}let a=i+1,o=i-1;return a=a>=s?0:a,o=o<0?s-1:o,{nextScene:n[a][1],previousScene:n[o][1]}}_addNavTrigger(e,n){e.onPointerDownObserver.add(()=>{var a;const s=this._getSubScenesIndex((a=this.getActiveSubScene())==null?void 0:a.sceneKey),i=s==null?void 0:s.previousScene.sceneKey;this.changePage(i),this.onSlideChangePageByNavigationObservable.notifyObservers(i)}),n.onPointerDownObserver.add(()=>{var a;const s=this._getSubScenesIndex((a=this.getActiveSubScene())==null?void 0:a.sceneKey),i=s==null?void 0:s.nextScene.sceneKey;this.changePage(i),this.onSlideChangePageByNavigationObservable.notifyObservers(i)})}_getArrowColor(e=!1){return e?F1(g.COLORS.white,.8):F1(g.COLORS.white,.5)}}class Ro extends ie{constructor(t,e=s=>{},n){super(t),this._render=e,this._isHitCustom=n}toJson(){return{...super.toJson()}}render(t,e){if(!this.visible)return this.makeDirty(!1),this;if(e&&!this.isInGroup){const{top:s,left:i,bottom:a,right:o}=e.viewBound;if(this.width+this.strokeWidth<i||o<0||this.height+this.strokeWidth<s||a<0)return this}const n=this.transform.getMatrix();return t.save(),t.transform(n[0],n[1],n[2],n[3],n[4],n[5]),this._render(t),t.restore(),this.makeDirty(!1),this}isHit(t){return this._isHitCustom?this._isHitCustom(t):super.isHit(t)}}class Nn extends g.Disposable{constructor(){super(...arguments);_(this,"onInputChangedObservable",new g.Observable);_(this,"onTransformChangeObservable",new g.Observable);_(this,"_scenes",{});_(this,"_activeScene",null)}get classType(){return K.ENGINE}get activeScene(){return this._activeScene}get width(){return 0}get height(){return 0}getScenes(){return this._scenes}getScene(e){return this._scenes[e]}hasScene(e){return e in this._scenes}addScene(e){const n=e.sceneKey;return this.hasScene(n)&&console.warn("Scenes has similar key, it will be covered"),this._scenes[n]=e,e}setActiveScene(e){const n=this.getScene(e);return n&&(this._activeScene=n),n}setRemainCapture(){}hasActiveScene(){return this._activeScene!=null}dispose(){super.dispose();const e={...this.getScenes()};Object.keys(e).forEach(s=>{e[s].dispose()}),this._scenes={}}remainScene(e){const n=this.getScenes();if(n[e]){const s=n[e];return delete n[e],s}}}class vt extends Nn{constructor(e=1,n=1,s,i){super();_(this,"renderEvenInBackground",!0);_(this,"onBeginFrameObservable",new g.Observable);_(this,"onEndFrameObservable",new g.Observable);_(this,"_container");_(this,"_canvas");_(this,"_renderingQueueLaunched",!1);_(this,"_activeRenderLoops",new Array);_(this,"_renderFunction",()=>{});_(this,"_requestNewFrameHandler",-1);_(this,"_frameId",-1);_(this,"_usingSafari",S0());_(this,"_resizeObserver");_(this,"_fps",60);_(this,"_deltaTime",0);_(this,"_performanceMonitor",new W0);_(this,"_pointerMoveEvent");_(this,"_pointerDownEvent");_(this,"_pointerUpEvent");_(this,"_pointerBlurEvent");_(this,"_pointerWheelEvent");_(this,"_pointerEnterEvent");_(this,"_pointerLeaveEvent");_(this,"_remainCapture",-1);_(this,"pointer",{});_(this,"_mouseId",-1);_(this,"_isUsingFirefox",navigator.userAgent.indexOf("Firefox")!==-1);_(this,"_previousWidth",-1e3);_(this,"_previousHeight",-1e3);this._canvas=new Ge({mode:i,width:e,height:n,pixelRatio:s}),this._handleKeyboardAction(),this._handlePointerAction(),i!==Xt.Printing&&this._matchMediaHandler()}get width(){return this.getCanvas().getWidth()}get height(){return this.getCanvas().getHeight()}get requestNewFrameHandler(){return this._requestNewFrameHandler}get frameId(){return this._frameId}setCanvasCursor(e){const n=this.getCanvas().getCanvasEle();n.style.cursor=e}clearCanvas(){this.getCanvas().clear()}getCanvas(){return this._canvas}getCanvasElement(){return this.getCanvas().getCanvasEle()}setRemainCapture(){try{this.getCanvasElement().setPointerCapture(this._remainCapture)}catch{console.warn("no capture")}}getPixelRatio(){return this.getCanvas().getPixelRatio()}setContainer(e,n=!0){var s;if(this._container=e,this._container.appendChild(this.getCanvasElement()),n){this.resize(),(s=this._resizeObserver)==null||s.unobserve(this._container);let i;this._resizeObserver=new ResizeObserver(()=>{i||(i=window.requestIdleCallback(()=>{this.resize(),i=void 0}))}),this._resizeObserver.observe(this._container),this.disposeWithMe(g.toDisposable(()=>{var a;(a=this._resizeObserver)==null||a.unobserve(this._container)}))}}resize(){if(!this._container)return;const{width:e,height:n}=$0(this._container);e===this._previousWidth&&n===this._previousHeight||(this._previousWidth=e,this._previousHeight=n,this.resizeBySize(e,n))}resizeBySize(e,n){const s=this.width,i=this.height;this.getCanvas().setSize(e,n),this.onTransformChangeObservable.notifyObservers({type:l1.resize,value:{width:e,height:n},preValue:{width:s,height:i}})}dispose(){super.dispose();const e=Bt(),n=this.getCanvasElement();n.removeEventListener(`${e}leave`,this._pointerLeaveEvent),n.removeEventListener(`${e}enter`,this._pointerEnterEvent),n.removeEventListener(`${e}move`,this._pointerMoveEvent),n.removeEventListener(`${e}down`,this._pointerDownEvent),n.removeEventListener(`${e}up`,this._pointerUpEvent),n.removeEventListener("blur",this._pointerBlurEvent),n.removeEventListener(this._getWheelEventName(),this._pointerWheelEvent),this._activeRenderLoops=[],this.getCanvas().dispose(),this._canvas=null,this.onBeginFrameObservable.clear(),this.onEndFrameObservable.clear(),this.onTransformChangeObservable.clear()}runRenderLoop(e){this._activeRenderLoops.indexOf(e)===-1&&(this._activeRenderLoops.push(e),this._renderingQueueLaunched||(this._renderingQueueLaunched=!0,this._renderFunction=this._renderLoop.bind(this),this._requestNewFrameHandler=c2(this._renderFunction)))}stopRenderLoop(e){if(!e){this._activeRenderLoops.length=0,this._cancelFrame();return}const n=this._activeRenderLoops.indexOf(e);n>=0&&(this._activeRenderLoops.splice(n,1),this._activeRenderLoops.length===0&&this._cancelFrame())}beginFrame(){this._measureFps(),this.onBeginFrameObservable.notifyObservers(this)}endFrame(){this._frameId++,this.onEndFrameObservable.notifyObservers(this)}getFps(){return this._fps}getDeltaTime(){return this._deltaTime}_renderFrame(){for(let e=0;e<this._activeRenderLoops.length;e++){const n=this._activeRenderLoops[e];n()}}_cancelFrame(){if(this._renderingQueueLaunched&&this._requestNewFrameHandler){if(this._renderingQueueLaunched=!1,typeof window>"u"){if(typeof cancelAnimationFrame=="function")return cancelAnimationFrame(this._requestNewFrameHandler)}else{const{cancelAnimationFrame:e}=this._getHostWindow()||window;if(typeof e=="function")return e(this._requestNewFrameHandler)}return clearTimeout(this._requestNewFrameHandler)}}_getHostWindow(){var e;return typeof window>"u"?null:(e=this.getCanvasElement().ownerDocument)!=null&&e.defaultView?this.getCanvasElement().ownerDocument.defaultView:window}_renderLoop(){let e=!0;this.renderEvenInBackground||(e=!1),e&&(this.beginFrame(),this._renderFrame(),this.endFrame()),this._activeRenderLoops.length>0?this._requestNewFrameHandler=c2(this._renderFunction):this._renderingQueueLaunched=!1}_measureFps(){this._performanceMonitor.sampleFrame(),this._fps=this._performanceMonitor.averageFPS,this._deltaTime=this._performanceMonitor.instantaneousFrameTime||0}_handleKeyboardAction(){const e=i=>{const a=i;a.deviceType=x1.Keyboard,a.inputIndex=i.keyCode,a.previousState=0,a.currentState=1,this.onInputChangedObservable.notifyObservers(a)},n=i=>{const a=i;a.deviceType=x1.Keyboard,a.inputIndex=i.keyCode,a.previousState=1,a.currentState=0,this.onInputChangedObservable.notifyObservers(a)},s=this.getCanvasElement();s.addEventListener("keydown",e),s.addEventListener("keyup",n)}_handlePointerAction(){const e=Bt();this._pointerMoveEvent=s=>{const i=this._getPointerType(s),a=this.pointer[W.Horizontal],o=this.pointer[W.Vertical],u=this.pointer[W.DeltaHorizontal],l=this.pointer[W.DeltaVertical];this.pointer[W.Horizontal]=s.clientX,this.pointer[W.Vertical]=s.clientY,this.pointer[W.DeltaHorizontal]=s.movementX,this.pointer[W.DeltaVertical]=s.movementY;const c=s;c.deviceType=i,a!==s.clientX&&(c.inputIndex=W.Horizontal,c.previousState=a,c.currentState=this.pointer[W.Horizontal],this.onInputChangedObservable.notifyObservers(c)),o!==s.clientY&&(c.inputIndex=W.Vertical,c.previousState=o,c.currentState=this.pointer[W.Vertical],this.onInputChangedObservable.notifyObservers(c)),this.pointer[W.DeltaHorizontal]!==0&&(c.inputIndex=W.DeltaHorizontal,c.previousState=u,c.currentState=this.pointer[W.DeltaHorizontal],this.onInputChangedObservable.notifyObservers(c)),this.pointer[W.DeltaVertical]!==0&&(c.inputIndex=W.DeltaVertical,c.previousState=l,c.currentState=this.pointer[W.DeltaVertical],this.onInputChangedObservable.notifyObservers(c)),!this._usingSafari&&s.button!==-1&&(c.inputIndex=s.button+2,c.previousState=this.pointer[s.button+2],this.pointer[s.button+2]=this.pointer[s.button+2]?0:1,c.currentState=this.pointer[s.button+2],this.onInputChangedObservable.notifyObservers(c))},this._pointerDownEvent=s=>{const i=s,a=this._getPointerType(i),o=this.pointer[W.Horizontal],u=this.pointer[W.Vertical],l=this.pointer[i.button+2];a===x1.Mouse?(this._mouseId===-1&&(i.pointerId===void 0?this._mouseId=this._isUsingFirefox?0:1:this._mouseId=i.pointerId),document.pointerLockElement||(this._remainCapture=this._mouseId,this.getCanvasElement().setPointerCapture(this._mouseId))):i.pointerId&&!document.pointerLockElement&&(this._remainCapture=i.pointerId,this.getCanvasElement().setPointerCapture(i.pointerId)),this.pointer[W.Horizontal]=i.clientX,this.pointer[W.Vertical]=i.clientY,this.pointer[i.button+2]=1;const c=i;c.deviceType=a,o!==i.clientX&&(c.inputIndex=W.Horizontal,c.previousState=o,c.currentState=this.pointer[W.Horizontal],this.onInputChangedObservable.notifyObservers(c)),u!==i.clientY&&(c.inputIndex=W.Vertical,c.previousState=u,c.currentState=this.pointer[W.Vertical],this.onInputChangedObservable.notifyObservers(c)),c.inputIndex=i.button+2,c.previousState=l,c.currentState=this.pointer[i.button+2],this.onInputChangedObservable.notifyObservers(c)},this._pointerUpEvent=s=>{const i=s,a=this._getPointerType(i),o=this.pointer[W.Horizontal],u=this.pointer[W.Vertical],l=this.pointer[i.button+2];this.pointer[W.Horizontal]=i.clientX,this.pointer[W.Vertical]=i.clientY,this.pointer[i.button+2]=0;const c=i;c.deviceType=a,o!==i.clientX&&(c.inputIndex=W.Horizontal,c.previousState=o,c.currentState=this.pointer[W.Horizontal],this.onInputChangedObservable.notifyObservers(c)),u!==i.clientY&&(c.inputIndex=W.Vertical,c.previousState=u,c.currentState=this.pointer[W.Vertical],this.onInputChangedObservable.notifyObservers(c)),c.inputIndex=i.button+2,c.previousState=l,c.currentState=this.pointer[i.button+2];const h=this.getCanvasElement();a===x1.Mouse&&this._mouseId>=0&&h.hasPointerCapture(this._mouseId)?(this._remainCapture=this._mouseId,h.releasePointerCapture(this._mouseId)):c.pointerId&&h.hasPointerCapture(c.pointerId)&&(this._remainCapture=c.pointerId,h.releasePointerCapture(c.pointerId)),this.onInputChangedObservable.notifyObservers(c),a!==x1.Mouse&&(this.pointer={})},this._pointerEnterEvent=s=>{const i=this._getPointerType(s),a=s;a.deviceType=i,a.currentState=2,this.onInputChangedObservable.notifyObservers(a)},this._pointerLeaveEvent=s=>{const i=this._getPointerType(s),a=s;a.deviceType=i,a.currentState=3,this.onInputChangedObservable.notifyObservers(a)},this._pointerBlurEvent=s=>{this._mouseId>=0&&this.getCanvasElement().hasPointerCapture(this._mouseId)&&(this.getCanvasElement().releasePointerCapture(this._mouseId),this._remainCapture=this._mouseId,this._mouseId=-1),this.pointer={}},this._pointerWheelEvent=s=>{const i=x1.Mouse,a=this.pointer[W.MouseWheelX],o=this.pointer[W.MouseWheelY],u=this.pointer[W.MouseWheelZ];this.pointer[W.MouseWheelX]=s.deltaX||0,this.pointer[W.MouseWheelY]=s.deltaY||s.wheelDelta||0,this.pointer[W.MouseWheelZ]=s.deltaZ||0;const l=s;l.deviceType=i,this.pointer[W.MouseWheelX]!==0&&(l.inputIndex=W.MouseWheelX,l.previousState=a,l.currentState=this.pointer[W.MouseWheelX],this.onInputChangedObservable.notifyObservers(l)),this.pointer[W.MouseWheelY]!==0&&(l.inputIndex=W.MouseWheelY,l.previousState=o,l.currentState=this.pointer[W.MouseWheelY],this.onInputChangedObservable.notifyObservers(l)),this.pointer[W.MouseWheelZ]!==0&&(l.inputIndex=W.MouseWheelZ,l.previousState=u,l.currentState=this.pointer[W.MouseWheelZ],this.onInputChangedObservable.notifyObservers(l))};const n=this.getCanvasElement();n.addEventListener(`${e}enter`,this._pointerEnterEvent),n.addEventListener(`${e}leave`,this._pointerLeaveEvent),n.addEventListener(`${e}move`,this._pointerMoveEvent),n.addEventListener(`${e}down`,this._pointerDownEvent),n.addEventListener(`${e}up`,this._pointerUpEvent),n.addEventListener("blur",this._pointerBlurEvent),n.addEventListener(this._getWheelEventName(),this._pointerWheelEvent,this._getPassive()?{passive:!1}:!1)}_getWheelEventName(){return"onwheel"in document.createElement("div")?"wheel":document.onmousewheel!==void 0?"mousewheel":"DOMMouseScroll"}_getPassive(){let e=!1;const n=()=>{};try{const s={passive:{get(){e=!0}}},i=this.getCanvasElement();i.addEventListener("test",n,s),i.removeEventListener("test",n,s)}catch{}return e}_getPointerType(e){let n=x1.Mouse;return(e.pointerType==="touch"||e.pointerType==="pen"||e.touches)&&(n=x1.Touch),n}_matchMediaHandler(){if(!(window!=null&&window.matchMedia))return;const e=window.matchMedia(`(resolution: ${window.devicePixelRatio}dppx)`),n=()=>{this.resize()};e.addEventListener("change",n),this.disposeWithMe(g.toDisposable(()=>{e.removeEventListener("change",n)}))}}class Un extends ie{constructor(e,...n){super(e);_(this,"_objects",[]);this.addObjects(...n)}get classType(){return K.GROUP}set cursor(e){this.setCursor(e)}addObjects(...e){for(const n of e)this.addObject(n)}addObject(e){let n=e;if(xt(e)){const s=this.getScene();if(n=s==null?void 0:s.getObject(e),!n)return;n.parent=this,n.isInGroup=!0,n.groupKey=this.oKey,this._objects.push(n)}else e.parent=this,e.isInGroup=!0,e.groupKey=this.oKey,this._objects.push(e)}removeObject(e){const n=this.getObjects(),s=n.length;if(xt(e))for(let i=0;i<s;i++){const a=n[i];if(a.oKey===e){n.splice(i,1),this.parent.removeObject(a);return}}else for(let i=0;i<s;i++){const a=n[i];if(a===e){n.splice(i,1),this.parent.removeObject(a);return}}}getObjectsByOrder(){const e=[];this._objects.sort(g.sortRules);for(const n of this._objects)!n.isInGroup&&n.visible&&e.push(n);return e}getObjects(){return this._objects}render(e,n){e.save();const s=this.transform.getMatrix();e.transform(s[0],s[1],s[2],s[3],s[4],s[5]),this._objects.sort(g.sortRules);for(const i of this._objects)i.render(e,this._transformBounds(n));e.restore()}resize(e,n){return this}scale(e,n){return this}skew(e,n){return this}flip(e,n){return this}isHit(e){return!0}pick(e){}_clear(){this._objects=[]}dispose(){[...this.getObjects()].forEach(n=>{n.dispose()}),this._clear(),super.dispose()}_transformBounds(e){return e}}class Hn extends g.Disposable{constructor(e,n=[],s=1,i=!1){super();_(this,"_objects",[]);_(this,"_cacheCanvas");_(this,"_dirty",!0);_(this,"_debounceDirtyFunc");this._scene=e,this._zIndex=s,this._allowCache=i,this.addObjects(n),this._allowCache&&this._initialCacheCanvas()}get scene(){return this._scene}get zIndex(){return this._zIndex}enableCache(){this._allowCache=!0,this._initialCacheCanvas()}disableCache(){var e;this._allowCache=!1,(e=this._cacheCanvas)==null||e.dispose(),this._cacheCanvas=null}isAllowCache(){return this._allowCache}getObjectsByOrder(){const e=[];this._objects.sort(g.sortRules);for(const n of this._objects)!n.isInGroup&&n.visible&&e.push(n);return e}getObjectsByOrderForPick(){const e=[];this._objects.sort(g.sortRules);for(const n of this._objects)n.classType!==K.GROUP&&n.visible&&e.push(n);return e}getObjects(){return this._objects}addObject(e){if(e.classType===K.GROUP){const n=e.getObjects();for(const s of n)this.scene.getObject(s.oKey)||(this._objects.push(s),this.scene.setObjectBehavior(s),this._layerBehavior(s))}return this._objects.push(e),this.scene.setObjectBehavior(e),this._layerBehavior(e),this.scene.applyTransformer(e),this}removeObject(e){const n=this.getObjects(),s=n.length;if(e instanceof ie){for(let i=0;i<s;i++)if(n[i]===e){n.splice(i,1);return}}else for(let i=0;i<s;i++)if(n[i].oKey===e){n.splice(i,1);return}}addObjects(e){return e.forEach(n=>{this.addObject(n)}),this}removeObjects(e){const n=this.getObjects(),s=n.length;for(let i=s-1;i>=0;i--){let a=n[i];const o=e.length;if(o===0)break;for(let u=0;u<o;u++){const l=e[u];if(a=l instanceof ie?a:a.oKey,a===l){n.splice(i,1);break}}}}makeDirty(e=!0){this._dirty=e;const n=this.scene.getParent();return n.classType===K.SCENE_VIEWER&&n.makeDirty(!0),this}makeDirtyWithDebounce(e=!0){this._debounceDirtyFunc&&this._debounceDirtyFunc(),this._debounceDirtyFunc=g.requestImmediateMacroTask(()=>{this.makeDirty(e),this._debounceDirtyFunc=null})}isDirty(){return this._dirty}render(e,n=!1){var i;const s=e||((i=this._scene.getEngine())==null?void 0:i.getCanvas().getContext());if(this._allowCache&&this._cacheCanvas){if(this.isDirty()){const a=this._cacheCanvas.getContext();this._cacheCanvas.clear(),a.save(),a.setTransform(s.getTransform()),this._draw(a,n),a.restore()}this._applyCache(s)}else s.save(),this._draw(s,n),s.restore();return this.makeDirty(!1),this}_layerBehavior(e){this.disposeWithMe(g.toDisposable(e.onTransformChangeObservable.add(()=>{this.makeDirty(!0)}))),e.layer=this}_initialCacheCanvas(){this._cacheCanvas=new Ge,this.disposeWithMe(g.toDisposable(this._scene.getEngine().onTransformChangeObservable.add(()=>{this._resizeCacheCanvas()})))}_draw(e,n){var s;(s=this._scene.getViewports())==null||s.forEach(i=>i.render(e,this.getObjectsByOrder(),n))}_applyCache(e){if(!e||this._cacheCanvas==null)return;const n=this._cacheCanvas.getWidth(),s=this._cacheCanvas.getHeight();e.drawImage(this._cacheCanvas.getCanvasEle(),0,0,n,s)}_resizeCacheCanvas(){var n;const e=this._scene.getEngine();(n=this._cacheCanvas)==null||n.setSize(e.width,e.height),this.makeDirty(!0)}clear(){this._objects=[]}dispose(){var n;super.dispose(),[...this.getObjects()].forEach(s=>{s.dispose()}),this.clear(),this._debounceDirtyFunc=null,(n=this._cacheCanvas)==null||n.dispose(),this._cacheCanvas=null}}var Gn=(r=>(r[r.NONE=0]="NONE",r[r.X=1]="X",r[r.Y=2]="Y",r[r.ALL=3]="ALL",r))(Gn||{});class e2{constructor(t,e=3,n,s=.4,i=.1){_(this,"_requestNewFrameNumber",-1);_(this,"_viewport");_(this,"_offsetX",0);_(this,"_offsetY",0);_(this,"_moveX",0);_(this,"_moveY",0);_(this,"_scrollX",0);_(this,"_scrollY",0);_(this,"_scrollFunction");this._scene=t,this._scrollTimerType=e,this._padding=n,this._smoothRatioX=s,this._smoothRatioY=i,this._padding||(this._padding={t:0,b:15,l:0,r:60})}static create(t,e=3,n){return new e2(t,e,n)}set scrollTimerType(t){this._scrollTimerType=t}get scrollTimerType(){return this._scrollTimerType}setActiveViewport(t){this._viewport=t}getActiveViewport(){return this._viewport}startScroll(t,e,n){this._offsetX=t,this._offsetY=e,this._moveX=t,this._moveY=e,n!=null?this._viewport=n:this._viewport=this.getViewportByCoord(this._scene),this._runRenderLoop()}_scroll(t){const e=(t==null?void 0:t.top)||0,n=e+((t==null?void 0:t.height)||0),s=(t==null?void 0:t.left)||0,i=s+((t==null?void 0:t.width)||0),{t:a=0,b:o=0,r:u=0,l=0}=this._padding;let c=0,h=0,f=!1;if(this._scrollTimerType&1&&(this._moveX<s+l&&(c=(this._moveX-s-l)*this._smoothRatioX,f=!0),this._moveX>i-u&&(c=(this._moveX-i+u)*this._smoothRatioX,f=!0)),this._scrollTimerType&2&&(this._moveY<e+a&&(h=(this._moveY-e-a)*this._smoothRatioY,f=!0),this._moveY>n-o&&(h=(this._moveY-n+o)*this._smoothRatioY,f=!0)),!f)return;const d=t==null?void 0:t.scrollBy({x:c,y:h}),D=t==null?void 0:t.getActualScroll(c,h);if(this._scrollX=(D==null?void 0:D.x)||0,this._scrollY=(D==null?void 0:D.y)||0,d){const m=this._findAncestorScene(t==null?void 0:t.scene),v=this.getViewportByCoord(m);v&&this._scroll(v)}}scrolling(t,e,n){this._moveX=t,this._moveY=e,this._scrollFunction=n}stopScroll(){C0(this._requestNewFrameNumber)}dispose(){this.stopScroll(),delete this._scrollFunction}getViewportByCoord(t){return t==null?void 0:t.getActiveViewportByRelativeCoord(P.FromArray([this._offsetX,this._offsetY]))}getScene(){return this._scene}_runRenderLoop(){this._scroll(this._viewport),this._scrollFunction&&this._scrollFunction(this._scrollX,this._scrollY),this._requestNewFrameNumber=c2(this._runRenderLoop.bind(this))}_findAncestorScene(t){let e=t==null?void 0:t.getParent();for(;e;){if(e.classType===K.SCENE)return e;e=(e==null?void 0:e.getParent)&&(e==null?void 0:e.getParent())}}}const zn=["radius"];class B1 extends Ae{constructor(e,n){super(e,n);_(this,"_radius",0);n!=null&&n.radius&&(this._radius=n.radius)}get radius(){return this._radius}static drawWith(e,n){let{radius:s,width:i,height:a}=n;if(s=s!=null?s:0,i=i!=null?i:30,a=a!=null?a:30,e.beginPath(),n.strokeDashArray&&e.setLineDash(n.strokeDashArray),!s)e.rect(0,0,i,a);else{let o=0,u=0,l=0,c=0;o=u=l=c=Math.min(s,i/2,a/2),e.moveTo(o,0),e.lineTo(i-u,0),e.arc(i-u,u,u,Math.PI*3/2,0,!1),e.lineTo(i,a-c),e.arc(i-c,a-c,c,0,Math.PI/2,!1),e.lineTo(l,a),e.arc(l,a-l,l,Math.PI/2,Math.PI,!1),e.lineTo(0,o),e.arc(o,o,o,Math.PI,Math.PI*3/2,!1)}e.closePath(),this._renderPaintInOrder(e,n)}toJson(){const e={};return zn.forEach(n=>{this[n]&&(e[n]=this[n])}),{...super.toJson(),...e}}_draw(e){B1.drawWith(e,this)}}const Ao=["__SpreadsheetTransformerResizeLT__","__SpreadsheetTransformerResizeCT__","__SpreadsheetTransformerResizeRT__","__SpreadsheetTransformerResizeLM__","__SpreadsheetTransformerResizeRM__","__SpreadsheetTransformerResizeLB__","__SpreadsheetTransformerResizeCB__","__SpreadsheetTransformerResizeRB__"];class ko extends g.Disposable{constructor(e,n){super();_(this,"hoverEnabled",!1);_(this,"hoverEnterFunc");_(this,"hoverLeaveFunc");_(this,"resizeEnabled",!0);_(this,"rotateEnabled",!0);_(this,"rotationSnaps",[]);_(this,"rotationSnapTolerance",5);_(this,"rotateAnchorOffset",50);_(this,"rotateSize",10);_(this,"rotateCornerRadius",10);_(this,"borderEnabled",!0);_(this,"borderStroke","rgb(97, 97, 97)");_(this,"borderStrokeWidth",1);_(this,"borderDash",[]);_(this,"borderSpacing",10);_(this,"anchorFill","rgb(255,255,255)");_(this,"anchorStroke","rgb(185,185,185)");_(this,"anchorStrokeWidth",1);_(this,"anchorSize",10);_(this,"anchorCornerRadius",10);_(this,"keepRatio",!0);_(this,"centeredScaling",!1);_(this,"enabledAnchors",[1,1,1,1,1,1,1,1]);_(this,"flipEnabled",!1);_(this,"ignoreStroke",!1);_(this,"boundBoxFunc");_(this,"useSingleNodeRotation",!1);_(this,"shouldOverdrawWholeArea",!1);_(this,"onChangeStartObservable",new g.Observable);_(this,"onChangingObservable",new g.Observable);_(this,"onChangeEndObservable",new g.Observable);_(this,"onClearControlObservable",new g.Observable);_(this,"onCreateControlObservable",new g.Observable);_(this,"_startOffsetX",-1);_(this,"_startOffsetY",-1);_(this,"_viewportScrollX",-1);_(this,"_viewportScrollY",-1);_(this,"_moveObserver");_(this,"_upObserver");_(this,"_cancelFocusObserver");_(this,"_transformerControlMap",new Map);_(this,"_selectedObjectMap",new Map);this._scene=e,this._initialProps(n)}getScene(){return this._scene}hideControl(){this._hideControl()}attachTo(e){if(e.isTransformer)return this.hoverEnabled&&(this.hoverEnterFunc&&e.onPointerEnterObserver.add(this.hoverEnterFunc),this.hoverLeaveFunc&&e.onPointerLeaveObserver.add(this.hoverLeaveFunc)),this.disposeWithMe(g.toDisposable(e.onPointerDownObserver.add((n,s)=>{const{offsetX:i,offsetY:a}=n;this._startOffsetX=i,this._startOffsetY=a;const o=this._getTopScene();if(!o)return;this._addCancelObserver(o),o.disableEvent();const u=e2.create(o);u.startScroll(i,a);const{scrollX:l,scrollY:c}=He(u);this._viewportScrollX=l,this._viewportScrollY=c,this._updateActiveObjectList(e,n),this._moveObserver=o.onPointerMoveObserver.add(h=>{const{offsetX:f,offsetY:d}=h;this._moving(f,d,u),this._hideControl(),u.scrolling(f,d,()=>{this._moving(f,d,u)})}),this._upObserver=o.onPointerUpObserver.add(()=>{o.onPointerMoveObserver.remove(this._moveObserver),o.onPointerUpObserver.remove(this._upObserver),o.enableEvent(),this._updateControl(),u.dispose(),this.onChangeEndObservable.notifyObservers({objects:this._selectedObjectMap,type:2})}),s.stopPropagation()}))),e}dispose(){var e,n,s;(e=this._moveObserver)==null||e.dispose(),(n=this._upObserver)==null||n.dispose(),(s=this._cancelFocusObserver)==null||s.dispose(),this._moveObserver=null,this._upObserver=null,this._cancelFocusObserver=null,this._transformerControlMap.forEach(i=>{i.dispose()}),this._selectedObjectMap.forEach(i=>{i.dispose()}),this.onChangeStartObservable.clear(),this.onChangingObservable.clear(),this.onChangeEndObservable.clear()}_initialProps(e){if(!e)return;const n=Object.keys(e);n.length!==0&&n.forEach(s=>{if(e[s]===void 0)return!0;this[s]=e[s]})}_updateControlChildren(){this._updateControlIterator((e,n)=>{const{left:s,top:i,width:a,height:o,scaleX:u,scaleY:l}=n.getState();e.getObjects().forEach(h=>{const f=h.oKey,d=this._checkTransformerType(f);if(!d)return!0;if(d==="__SpreadsheetTransformerOutline__")h.transformByState(this._getOutlinePosition(a,o,u,l));else{const{left:D,top:m}=this._getRotateAnchorPosition(d,o,a);h.transformByState({left:D,top:m})}}),e.transformByState({left:s,top:i})})}_anchorMoving(e,n,s,i){const{scrollX:a,scrollY:o}=He(i),u=n-this._viewportScrollX+a,l=s-this._viewportScrollY+o,c=u-this._startOffsetX,h=l-this._startOffsetY;this._selectedObjectMap.forEach(f=>{const{left:d,top:D,width:m,height:v}=f,F={};switch(e){case"__SpreadsheetTransformerResizeLT__":F.left=d+c,F.top=D+h,F.width=m-c,F.height=v-h;break;case"__SpreadsheetTransformerResizeCT__":F.top=D+h,F.height=v-h;break;case"__SpreadsheetTransformerResizeRT__":F.top=D+h,F.width=m+c,F.height=v-h;break;case"__SpreadsheetTransformerResizeLM__":F.left=d+c,F.width=m-c;break;case"__SpreadsheetTransformerResizeRM__":F.width=c+m;break;case"__SpreadsheetTransformerResizeLB__":F.left=d+c,F.width=m-c,F.height=v+h;break;case"__SpreadsheetTransformerResizeCB__":F.height=h+v;break;case"__SpreadsheetTransformerResizeRB__":F.width=c+m,F.height=h+v;break}f.transformByState(F)}),this._updateControlChildren(),this.onChangingObservable.notifyObservers({objects:this._selectedObjectMap,moveX:c,moveY:h,type:1}),this._startOffsetX=u,this._startOffsetY=l}_attachEventToAnchor(e,n="__SpreadsheetTransformerResizeLT__"){this.disposeWithMe(g.toDisposable(e.onPointerDownObserver.add((s,i)=>{const{offsetX:a,offsetY:o}=s;this._startOffsetX=a,this._startOffsetY=o;const u=this._getTopScene();if(u==null)return;u.disableEvent();const l=e2.create(u);l.startScroll(a,o);const{scrollX:c,scrollY:h}=He(l);this._viewportScrollX=c,this._viewportScrollY=h;const f=this._getRotateAnchorCursor(n);this._moveObserver=u.onPointerMoveObserver.add(d=>{const{offsetX:D,offsetY:m}=d;this._anchorMoving(n,D,m,l),l.scrolling(D,m,()=>{this._anchorMoving(n,D,m,l)}),u.setCursor(f)}),this._upObserver=u.onPointerUpObserver.add(()=>{u.onPointerMoveObserver.remove(this._moveObserver),u.onPointerUpObserver.remove(this._upObserver),u.enableEvent(),u.resetCursor(),l.dispose(),this.onChangeEndObservable.notifyObservers({objects:this._selectedObjectMap,type:2})}),i.stopPropagation()})))}_attachEventToRotate(e){this.disposeWithMe(g.toDisposable(e.onPointerDownObserver.add((n,s)=>{const{offsetX:i,offsetY:a}=n;this._startOffsetX=i,this._startOffsetY=a;const o=this._getTopScene();o!=null&&(o.disableEvent(),this._viewportScrollX=scrollX,this._viewportScrollY=scrollY,this._upObserver=o.onPointerUpObserver.add(()=>{o.onPointerMoveObserver.remove(this._moveObserver),o.onPointerUpObserver.remove(this._upObserver),o.enableEvent()}),s.stopPropagation())})))}_getOutlinePosition(e,n,s,i){return{left:-this.borderSpacing-this.borderStrokeWidth,top:-this.borderSpacing-this.borderStrokeWidth,width:e+this.borderSpacing*2,height:n+this.borderSpacing*2}}_getRotateAnchorCursor(e){let n=f1.NORTH_WEST_RESIZE;switch(e){case"__SpreadsheetTransformerRotate__":n=f1.MOVE;break;case"__SpreadsheetTransformerRotateLine__":n=f1.MOVE;break;case"__SpreadsheetTransformerResizeLT__":break;case"__SpreadsheetTransformerResizeCT__":n=f1.NORTH_RESIZE;break;case"__SpreadsheetTransformerResizeRT__":n=f1.NORTH_EAST_RESIZE;break;case"__SpreadsheetTransformerResizeLM__":n=f1.WEST_RESIZE;break;case"__SpreadsheetTransformerResizeRM__":n=f1.EAST_RESIZE;break;case"__SpreadsheetTransformerResizeLB__":n=f1.SOUTH_WEST_RESIZE;break;case"__SpreadsheetTransformerResizeCB__":n=f1.SOUTH_RESIZE;break;case"__SpreadsheetTransformerResizeRB__":n=f1.SOUTH_EAST_RESIZE;break}return n}_getRotateAnchorPosition(e,n,s){let i=-this.anchorSize/2,a=-this.anchorSize/2;switch(e){case"__SpreadsheetTransformerRotate__":i=s/2-this.rotateSize/2,a=-this.rotateAnchorOffset-this.borderSpacing-this.borderStrokeWidth*2-this.rotateSize;break;case"__SpreadsheetTransformerRotateLine__":i=s/2,a=-this.rotateAnchorOffset-this.borderSpacing-this.borderStrokeWidth;break;case"__SpreadsheetTransformerResizeLT__":i+=-this.borderSpacing-this.borderStrokeWidth,a+=-this.borderSpacing-this.borderStrokeWidth;break;case"__SpreadsheetTransformerResizeCT__":i+=s/2,a+=-this.borderSpacing-this.borderStrokeWidth;break;case"__SpreadsheetTransformerResizeRT__":i+=s+this.borderSpacing-this.borderStrokeWidth,a+=-this.borderSpacing-this.borderStrokeWidth;break;case"__SpreadsheetTransformerResizeLM__":i+=-this.borderSpacing-this.borderStrokeWidth,a+=n/2;break;case"__SpreadsheetTransformerResizeRM__":i+=s+this.borderSpacing-this.borderStrokeWidth,a+=n/2;break;case"__SpreadsheetTransformerResizeLB__":i+=-this.borderSpacing-this.borderStrokeWidth,a+=n+this.borderSpacing-this.borderStrokeWidth;break;case"__SpreadsheetTransformerResizeCB__":i+=s/2,a+=n+this.borderSpacing-this.borderStrokeWidth;break;case"__SpreadsheetTransformerResizeRB__":i+=s+this.borderSpacing-this.borderStrokeWidth,a+=n+this.borderSpacing-this.borderStrokeWidth;break}return{left:i,top:a}}_createResizeAnchor(e,n,s){const{height:i,width:a,scaleX:o,scaleY:u}=n.getState(),{left:l,top:c}=this._getRotateAnchorPosition(e,i,a),h=this._getRotateAnchorCursor(e),f=new B1(`${e}_${s}`,{zIndex:s-1,fill:this.anchorFill,stroke:this.anchorStroke,strokeWidth:this.anchorStrokeWidth,width:this.anchorSize,height:this.anchorSize,radius:this.anchorCornerRadius,left:l,top:c});return this._attachHover(f,h,f1.DEFAULT),f}_checkTransformerType(e){if(e.indexOf("__SpreadsheetTransformerOutline__")>-1)return"__SpreadsheetTransformerOutline__";if(e.indexOf("__SpreadsheetTransformerRotate__")>-1)return"__SpreadsheetTransformerRotate__";if(e.indexOf("__SpreadsheetTransformerRotateLine__")>-1)return"__SpreadsheetTransformerRotateLine__";if(e.indexOf("__SpreadsheetTransformerResizeLT__")>-1)return"__SpreadsheetTransformerResizeLT__";if(e.indexOf("__SpreadsheetTransformerResizeCT__")>-1)return"__SpreadsheetTransformerResizeCT__";if(e.indexOf("__SpreadsheetTransformerResizeRT__")>-1)return"__SpreadsheetTransformerResizeRT__";if(e.indexOf("__SpreadsheetTransformerResizeLM__")>-1)return"__SpreadsheetTransformerResizeLM__";if(e.indexOf("__SpreadsheetTransformerResizeRM__")>-1)return"__SpreadsheetTransformerResizeRM__";if(e.indexOf("__SpreadsheetTransformerResizeLB__")>-1)return"__SpreadsheetTransformerResizeLB__";if(e.indexOf("__SpreadsheetTransformerResizeCB__")>-1)return"__SpreadsheetTransformerResizeCB__";if(e.indexOf("__SpreadsheetTransformerResizeRB__")>-1)return"__SpreadsheetTransformerResizeRB__"}_updateControlIterator(e){this._transformerControlMap.forEach((n,s)=>{const i=this._selectedObjectMap.get(s);if(!i)return!0;e(n,i)})}_updateControl(){this._updateControlIterator((e,n)=>{const{left:s,top:i}=n.getState();e.transformByState({left:s,top:i}),e.show(),e.makeDirty(!0)})}_hideControl(){this._transformerControlMap.forEach(e=>{e.hide(),e.makeDirty(!0)})}_attachHover(e,n,s){this.disposeWithMe(g.toDisposable(e.onPointerEnterObserver.add(()=>{e.cursor=n}))),this.disposeWithMe(g.toDisposable(e.onPointerLeaveObserver.add(()=>{e.cursor=s})))}_clearControl(){this._transformerControlMap.forEach(e=>{e.dispose()}),this._transformerControlMap.clear(),this.onClearControlObservable.notifyObservers(null)}_createControl(e){const{left:n,top:s,height:i,width:a,angle:o,scaleX:u,scaleY:l,skewX:c,skewY:h,flipX:f,flipY:d}=e.getState(),D=e.oKey,m=this._selectedObjectMap.size,v=[];if(this.borderEnabled){const S=new B1(`__SpreadsheetTransformerOutline___${m}`,{zIndex:m-1,evented:!1,strokeWidth:this.borderStrokeWidth,stroke:this.borderStroke,...this._getOutlinePosition(a,i,u,l)});v.push(S)}if(this.resizeEnabled){const{left:S,top:B}=this._getRotateAnchorPosition("__SpreadsheetTransformerRotateLine__",i,a),w=new B1(`__SpreadsheetTransformerRotateLine___${m}`,{zIndex:m-1,evented:!1,left:S,top:B,height:this.rotateAnchorOffset,width:1,strokeWidth:this.borderStrokeWidth,stroke:this.borderStroke}),{left:x,top:O}=this._getRotateAnchorPosition("__SpreadsheetTransformerRotate__",i,a),T=this._getRotateAnchorCursor("__SpreadsheetTransformerRotate__"),A=new B1(`__SpreadsheetTransformerRotate___${m}`,{zIndex:m-1,left:x,top:O,height:this.rotateSize,width:this.rotateSize,radius:this.rotateCornerRadius,strokeWidth:this.borderStrokeWidth*2,stroke:this.borderStroke});this._attachEventToRotate(A),this._attachHover(A,T,f1.DEFAULT),v.push(w,A)}if(this.resizeEnabled)for(let S=0,B=this.enabledAnchors.length;S<B;S++){if(this.enabledAnchors[S]!==1)continue;const x=Ao[S],O=this._createResizeAnchor(x,e,m);this._attachEventToAnchor(O,x),v.push(O)}const F=new Un(`__SpreadsheetTransformer___${m}`,...v);return F.zIndex=m,F.evented=!1,F.transformByState({left:n,top:s}),this.getScene().addObject(F,2),this._transformerControlMap.set(D,F),this.onCreateControlObservable.notifyObservers(F),F}_getTopScene(){var n;return(n=this.getScene().getEngine())==null?void 0:n.activeScene}_moving(e,n,s){const{scrollX:i,scrollY:a}=He(s),o=e-this._viewportScrollX+i,u=n-this._viewportScrollY+a,l=o-this._startOffsetX,c=u-this._startOffsetY;this._selectedObjectMap.forEach(h=>{h.translate(l+h.left,c+h.top)}),this.onChangingObservable.notifyObservers({objects:this._selectedObjectMap,moveX:l,moveY:c,type:1}),this._startOffsetX=o,this._startOffsetY=u}_updateActiveObjectList(e,n){this._selectedObjectMap.has(e.oKey)||(n.ctrlKey||(this._selectedObjectMap.clear(),this._clearControl()),this._selectedObjectMap.set(e.oKey,e),this._createControl(e))}_addCancelObserver(e){e.onPointerDownObserver.remove(this._cancelFocusObserver),this._cancelFocusObserver=e.onPointerDownObserver.add(()=>{this._selectedObjectMap.clear(),this._clearControl(),e.onPointerDownObserver.remove(this._cancelFocusObserver)})}}const z1=class z1 extends g.Disposable{constructor(e){super();_(this,"_alreadyAttached",!1);_(this,"_onInputObserver");_(this,"_onPointerMove");_(this,"_onPointerDown");_(this,"_onPointerUp");_(this,"_onPointerEnter");_(this,"_onPointerLeave");_(this,"_onMouseWheel");_(this,"_onKeyDown");_(this,"_onKeyUp");_(this,"_scene");_(this,"_currentMouseEnterPicked");_(this,"_startingPosition",new P(Number.POSITIVE_INFINITY,Number.POSITIVE_INFINITY));_(this,"_delayedTimeout",-1);_(this,"_delayedTripeTimeout",-1);_(this,"_doubleClickOccurred",0);_(this,"_tripleClickState",!1);_(this,"_currentObject");this._scene=e}dispose(){var e,n;super.dispose(),this.detachControl(),this._scene=null,(e=this._currentMouseEnterPicked)==null||e.dispose(),this._currentMouseEnterPicked=null,(n=this._currentObject)==null||n.dispose(),this._currentObject=null,this._startingPosition=null,clearTimeout(this._delayedTimeout),clearTimeout(this._delayedTripeTimeout),this._onPointerMove=null,this._onPointerDown=null,this._onPointerUp=null,this._onPointerEnter=null,this._onPointerLeave=null,this._onMouseWheel=null,this._onKeyDown=null,this._onKeyUp=null}mouseLeaveEnterHandler(e){var s;const n=this._currentObject;if(n==null)(s=this._currentMouseEnterPicked)==null||s.triggerPointerLeave(e),this._currentMouseEnterPicked=null;else if(n!==this._currentMouseEnterPicked){const i=this._currentMouseEnterPicked;this._currentMouseEnterPicked=n,i==null||i.triggerPointerLeave(e),n==null||n.triggerPointerEnter(e)}}attachControl(e=!0,n=!0,s=!0,i=!0,a=!0,o=!0){const u=this._scene.getEngine();u&&(this._onPointerEnter=l=>{var c;l.pointerId===void 0&&(l.pointerId=0),this._currentObject=this._getCurrentObject(l.offsetX,l.offsetY),(c=this._currentObject)==null||c.triggerPointerMove(l),this.mouseLeaveEnterHandler(l)},this._onPointerLeave=l=>{l.pointerId===void 0&&(l.pointerId=0),this._currentObject=null,this.mouseLeaveEnterHandler(l)},this._onPointerMove=l=>{var h,f;l.pointerId===void 0&&(l.pointerId=0),this._currentObject=this._getCurrentObject(l.offsetX,l.offsetY);const c=(h=this._currentObject)==null?void 0:h.triggerPointerMove(l);this.mouseLeaveEnterHandler(l),this._checkDirectSceneEventTrigger(!c,this._currentObject)&&this._scene.onPointerMoveObserver.hasObservers()&&(this._scene.onPointerMoveObserver.notifyObservers(l),(f=this._scene.getEngine())==null||f.setRemainCapture())},this._onPointerDown=l=>{l.pointerId===void 0&&(l.pointerId=0);const c=this._getCurrentObject(l.offsetX,l.offsetY),h=c==null?void 0:c.triggerPointerDown(l);this._checkDirectSceneEventTrigger(!h,c)&&this._scene.onPointerDownObserver.hasObservers()&&this._scene.onPointerDownObserver.notifyObservers(l)},this._onPointerUp=l=>{l.pointerId===void 0&&(l.pointerId=0);const c=this._getCurrentObject(l.offsetX,l.offsetY),h=c==null?void 0:c.triggerPointerUp(l);this._checkDirectSceneEventTrigger(!h,c)&&this._scene.onPointerUpObserver.hasObservers()&&this._scene.onPointerUpObserver.notifyObservers(l),this._prePointerDoubleOrTripleClick(l)},this._onMouseWheel=l=>{const c=this._getCurrentObject(l.offsetX,l.offsetY),h=c==null?void 0:c.triggerMouseWheel(l);this._scene.getViewports().forEach(f=>{f.onMouseWheelObserver.hasObservers()&&f.onMouseWheelObserver.notifyObservers(l)}),this._checkDirectSceneEventTrigger(!h,c)&&this._scene.onMouseWheelObserver.hasObservers()&&this._scene.onMouseWheelObserver.notifyObservers(l)},this._onKeyDown=l=>{this._scene.onKeyDownObservable.hasObservers()&&this._scene.onKeyDownObservable.notifyObservers(l)},this._onKeyUp=l=>{this._scene.onKeyUpObservable.hasObservers()&&this._scene.onKeyUpObservable.notifyObservers(l)},this._onInputObserver=u.onInputChangedObservable.add(l=>{const c=l;l.deviceType===x1.Keyboard&&(l.currentState===1&&this._onKeyDown(c),l.currentState===0&&this._onKeyUp(c)),(l.deviceType===x1.Mouse||l.deviceType===x1.Touch)&&(e&&l.inputIndex>=W.LeftClick&&l.inputIndex<=W.RightClick&&l.currentState===1&&this._onPointerDown(c),n&&l.inputIndex>=W.LeftClick&&l.inputIndex<=W.RightClick&&l.currentState===0&&this._onPointerUp(c),s&&(l.inputIndex===W.Horizontal||l.inputIndex===W.Vertical||l.inputIndex===W.DeltaHorizontal||l.inputIndex===W.DeltaVertical)?this._onPointerMove(c):i&&(l.inputIndex===W.MouseWheelX||l.inputIndex===W.MouseWheelY||l.inputIndex===W.MouseWheelZ)?this._onMouseWheel(c):a&&l.currentState===2?this._onPointerEnter(c):o&&l.currentState===3&&this._onPointerLeave(c))}),this.disposeWithMe(g.toDisposable(this._onInputObserver)),this._alreadyAttached=!0)}detachControl(){if(!this._alreadyAttached)return;const e=this._scene.getEngine();e&&(e.onInputChangedObservable.remove(this._onInputObserver),this._alreadyAttached=!1)}_getCurrentObject(e,n){var s;return(s=this._scene)==null?void 0:s.pick(P.FromArray([e,n]))}_checkDirectSceneEventTrigger(e,n){let s=!1;n==null&&(s=!0);let i=!0;if(n&&n.classType===K.BASE_OBJECT){const a=n.getScene();a&&(i=a.getParent().classType!==K.SCENE_VIEWER)}return!this._scene.evented&&e&&i||s}_isPointerSwiping(e,n){return Math.abs(this._startingPosition.x-e)>z1.DragMovementThreshold||Math.abs(this._startingPosition.y-n)>z1.DragMovementThreshold}_prePointerDoubleOrTripleClick(e){var a,o,u,l;const{clientX:n,clientY:s}=e;this._isPointerSwiping(n,s)&&this._resetDoubleClickParam(),this._delayedTimeout=setTimeout(()=>{this._resetDoubleClickParam()},z1.DoubleClickDelay),this._doubleClickOccurred+=1,this._tripleClickState&&((o=(a=this._scene)==null?void 0:a.pick(P.FromArray([e.offsetX,e.offsetY])))==null||o.triggerTripleClick(e),this._scene.onTripleClickObserver.hasObservers()&&this._scene.onTripleClickObserver.notifyObservers(e)),this._doubleClickOccurred===2&&((l=(u=this._scene)==null?void 0:u.pick(P.FromArray([e.offsetX,e.offsetY])))==null||l.triggerDblclick(e),this._scene.onDblclickObserver.hasObservers()&&this._scene.onDblclickObserver.notifyObservers(e),this._resetDoubleClickParam(),this._tripleClickState=!0,clearTimeout(this._delayedTripeTimeout),this._delayedTripeTimeout=setTimeout(()=>{this._tripleClickState=!1},z1.TripleClickDelay)),this._startingPosition.x=n,this._startingPosition.y=s}_resetDoubleClickParam(){this._doubleClickOccurred=0,clearTimeout(this._delayedTimeout)}};_(z1,"DragMovementThreshold",2),_(z1,"LongPressDelay",500),_(z1,"DoubleClickDelay",500),_(z1,"TripleClickDelay",300),_(z1,"ExclusiveDoubleClickMode",!1);let J6=z1;class $o extends g.Disposable{constructor(e){super();_(this,"onTransformChangeObservable",new g.Observable);_(this,"onFileLoadedObservable",new g.Observable);_(this,"onPointerDownObserver",new g.Observable);_(this,"onPointerMoveObserver",new g.Observable);_(this,"onPointerUpObserver",new g.Observable);_(this,"onPointerEnterObserver",new g.Observable);_(this,"onPointerLeaveObserver",new g.Observable);_(this,"onDblclickObserver",new g.Observable);_(this,"onTripleClickObserver",new g.Observable);_(this,"onMouseWheelObserver",new g.Observable);_(this,"onKeyDownObservable",new g.Observable);_(this,"onKeyUpObservable",new g.Observable);_(this,"debounceParentTimeout",-1);_(this,"_sceneKey","");_(this,"_width",100);_(this,"_height",100);_(this,"_scaleX",1);_(this,"_scaleY",1);_(this,"_transform",new D1);_(this,"_evented",!0);this._sceneKey=e}get classType(){return K.SCENE}get transform(){return this._transform}get width(){return this._width}get height(){return this._height}get scaleX(){return this._scaleX}get scaleY(){return this._scaleY}get sceneKey(){return this._sceneKey}get evented(){return this._evented}set transform(e){this._transform=e}set width(e){this._width=e}set height(e){this._height=e}set scaleX(e){this._scaleX=e}set scaleY(e){this._scaleY=e}enableEvent(){this._evented=!0}disableEvent(){this._evented=!1}on(e,n){return this[`on${e}Observer`].add(n.bind(this))}off(e,n){this[`on${e}Observer`].remove(n)}remove(e){this[`on${e}Observer`].clear()}triggerKeyDown(e){this.onKeyDownObservable.notifyObservers(e)}triggerKeyUp(e){this.onKeyUpObservable.notifyObservers(e)}triggerPointerUp(e){}triggerMouseWheel(e){}triggerPointerMove(e){}triggerDblclick(e){}triggerTripleClick(e){}triggerPointerDown(e){}triggerPointerOut(e){}triggerPointerLeave(e){}triggerPointerOver(e){}triggerPointerEnter(e){}renderObjects(e,n){}render(e){}getParent(){}dispose(){this.onTransformChangeObservable.clear(),this.onFileLoadedObservable.clear(),this.onPointerDownObserver.clear(),this.onPointerMoveObserver.clear(),this.onPointerUpObserver.clear(),this.onPointerEnterObserver.clear(),this.onPointerLeaveObserver.clear(),this.onDblclickObserver.clear(),this.onTripleClickObserver.clear(),this.onMouseWheelObserver.clear(),this.onKeyDownObservable.clear(),this.onKeyUpObservable.clear(),super.dispose()}getObject(e){}addObject(e,n=1){}addObjects(e,n=1){}getEngine(){}setObjectBehavior(e){}applyTransformer(e){}makeDirtyNoParent(e=!0){return this}makeDirty(e=!0){return this}pick(e){}getViewports(){return[]}addViewport(...e){}removeViewport(e){}getAncestorScale(){return{scaleX:1,scaleY:1}}getPrecisionScale(){return{scaleX:1,scaleY:1}}setCursor(e){}resetCursor(){}}class Xn extends $o{constructor(e,n,s){var i;super(e);_(this,"_layers",[]);_(this,"_viewports",[]);_(this,"_cursor",f1.DEFAULT);_(this,"_defaultCursor",f1.DEFAULT);_(this,"_addObject$",new o1.BehaviorSubject(this));_(this,"addObject$",this._addObject$.asObservable());_(this,"_transformer");_(this,"_transformerOpenState",!1);_(this,"_inputManager");if(this._parent=n,s&&this.transformByState(s),this._parent.classType===K.ENGINE){const a=this._parent;a.addScene(this),a.hasActiveScene()||a.setActiveScene(e),this._inputManager=new J6(this)}else this._parent.classType===K.SCENE_VIEWER&&this._parent.addSubScene(this);this.disposeWithMe(g.toDisposable((i=this._parent)==null?void 0:i.onTransformChangeObservable.add(a=>{this._setTransForm()})))}get ancestorScaleX(){const e=this.getParent();let n=1;return e.classType===K.SCENE_VIEWER&&(n=e.ancestorScaleX),this.scaleX*n}get ancestorScaleY(){const e=this.getParent();let n=1;return e.classType===K.SCENE_VIEWER&&(n=e.ancestorScaleY),this.scaleY*n}set cursor(e){this.setCursor(e)}attachControl(e=!0,n=!0,s=!0,i=!0){var a;if(this._parent.classType===K.ENGINE)return(a=this._inputManager)==null||a.attachControl(e,n,s,i),this}detachControl(){var e;return(e=this._inputManager)==null||e.detachControl(),this}makeDirty(e=!0){var n;return this._layers.forEach(s=>{s.makeDirty(e)}),this._parent.classType===K.SCENE_VIEWER&&((n=this._parent)==null||n.makeDirty(e)),this}makeDirtyNoParent(e=!0){return this._layers.forEach(n=>{n.makeDirty(e)}),this}enableLayerCache(...e){e.forEach(n=>{this.getLayer(n).enableCache()})}disableLayerCache(...e){e.forEach(n=>{this.getLayer(n).disableCache()})}isDirty(){for(let e=0;e<this._layers.length;e++)if(this._layers[e].isDirty()===!0)return!0;return!1}getCursor(){return this._cursor}resetCursor(){this.setCursor(this._defaultCursor)}setCursor(e){this._cursor=e;const n=this.getEngine();n&&n.setCanvasCursor(e)}setDefaultCursor(e){this._defaultCursor=e,this.resetCursor()}resize(e,n){const s=this.width;e!==void 0&&(this.width=e);const i=this.height;return n!==void 0&&(this.height=n),this._setTransForm(),this.onTransformChangeObservable.notifyObservers({type:l1.resize,value:{width:this.width,height:this.height},preValue:{width:s,height:i}}),this}scale(e,n){const s=this.scaleX;e!==void 0&&(this.scaleX=e);const i=this.scaleY;return n!==void 0&&(this.scaleY=n),this._setTransForm(),this.onTransformChangeObservable.notifyObservers({type:l1.scale,value:{scaleX:this.scaleX,scaleY:this.scaleY},preValue:{scaleX:s,scaleY:i}}),this}scaleBy(e,n){const s=this.scaleX;e!==void 0&&(this.scaleX+=e);const i=this.scaleY;return n!==void 0&&(this.scaleY+=n),this.scaleX=U2(this.scaleX,1),this.scaleY=U2(this.scaleY,1),this._setTransForm(),this.onTransformChangeObservable.notifyObservers({type:l1.scale,value:{scaleX:this.scaleX,scaleY:this.scaleY},preValue:{scaleX:s,scaleY:i}}),this}transformByState(e){const n=Object.keys(e),s={};n.length!==0&&(n.forEach(i=>{e[i]!==void 0&&(s[i]=this[i],this[i]=e[i])}),this._setTransForm(),this.onTransformChangeObservable.notifyObservers({type:l1.all,value:e,preValue:s}))}getParent(){return this._parent}getEngine(){if(this._parent.classType===K.ENGINE)return this._parent;let e=this._parent;for(;e;){if(e.classType===K.ENGINE)return e;e=e==null?void 0:e.getParent()}return null}getLayers(){return this._layers}getLayer(e=1){for(const n of this._layers)if(n.zIndex===e)return n;return this._createDefaultLayer(e)}getLayerMaxZIndex(){let e=Number.MIN_VALUE;for(let n=0;n<this._layers.length;n++){const s=this._layers[n];s.zIndex>=e&&(e=s.zIndex)}return e}addLayer(...e){this._layers.push(...e)}addObject(e,n=1){var s;return(s=this.getLayer(n))==null||s.addObject(e),this._addObject$.next(this),this}setObjectBehavior(e){e.parent||(e.parent=this),e.onIsAddedToParentObserver.notifyObservers(this)}addObjects(e,n=1){var s;return(s=this.getLayer(n))==null||s.addObjects(e),this._addObject$.next(this),this}removeObject(e){if(e==null)return;const n=this.getLayers();for(const s of n)s.removeObject(e);return this}removeObjects(e){if(e==null)return;const n=this.getLayers();for(const s of n)s.removeObjects(e);return this}getAllObjects(){const e=[];this._layers.sort(g.sortRules);for(const n of this._layers)e.push(...n.getObjectsByOrder());return e}getAllObjectsByOrder(e=!1){const n=[],s=e?g.sortRulesByDesc:g.sortRules;this._layers.sort(s);for(const i of this._layers)n.push(...i.getObjectsByOrder().sort(s));return n}getAllObjectsByOrderForPick(e=!1){const n=[],s=e?g.sortRulesByDesc:g.sortRules;this._layers.sort(s);for(const i of this._layers)n.push(...i.getObjectsByOrderForPick().sort(s));return n}getObject(e){for(const n of this._layers){const s=n.getObjectsByOrder();for(const i of s)if(i.oKey===e)return i}}fuzzyMathObjects(e){const n=[];for(const s of this._layers){const i=s.getObjectsByOrder();for(const a of i)a.oKey.indexOf(e)>-1&&i.push(a)}return n}addViewport(...e){return this._viewports.push(...e),this}removeViewport(e){for(let n=0,s=this._viewports.length;n<s;n++){const i=this._viewports[n];if(i.viewPortKey===e)return this._viewports.splice(n,1),i}}getViewports(){return this._viewports}getViewport(e){for(const n of this._viewports)if(n.viewPortKey===e)return n}changeObjectOrder(){}render(e){var s;if(!this.isDirty())return;!e&&((s=this.getEngine())==null||s.clearCanvas());const n=this._layers.sort(g.sortRules);for(let i=0,a=n.length;i<a;i++)n[i].render(e,i===a-1)}async requestRender(e){return new Promise((n,s)=>{this.render(e),c2(n)})}openTransformer(e){this._transformer||(this._transformer=new ko(this,e)),this._transformerOpenState=!0}closeTransformer(e=!1){e&&(this._transformer=null),this._transformerOpenState=!1}applyTransformer(e){var n;this._transformerOpenState&&((n=this._transformer)==null||n.attachTo(e))}getTransformer(){return this._transformer}getActiveViewportByRelativeCoord(e){return this._viewports.find(n=>n.isHit(e))}getActiveViewportByCoord(e){return e=this.getRelativeCoord(e),this.getActiveViewportByRelativeCoord(e)}getScrollXYByRelativeCoords(e,n){return n||(n=this.getActiveViewportByRelativeCoord(e)),n?this.getScrollXY(n):{x:0,y:0}}getScrollXY(e){let n=0,s=0;if(e){const i=e.actualScrollX||0,a=e.actualScrollY||0;n+=i,s+=a}return{x:n,y:s}}getRelativeCoord(e){let n=this.getParent();const s=[];for(;n;)(n.classType===K.SCENE||n.classType===K.SCENE_VIEWER)&&s.push(n),n=(n==null?void 0:n.getParent)&&(n==null?void 0:n.getParent());s.reverse();for(const i of s)if(i.classType===K.SCENE){const o=i.getActiveViewportByCoord(e);if(o){const u=o.actualScrollX||0,l=o.actualScrollY||0;e=e.addByPoint(u,l)}}else i.classType===K.SCENE_VIEWER&&(e=i.transform.clone().invert().applyPoint(e));return e}clearLayer(){this._layers=[]}clearViewports(){this._viewports=[]}getAncestorScale(){let{scaleX:e=1,scaleY:n=1}=this;return this.classType===K.SCENE_VIEWER&&(e=this.ancestorScaleX||1,n=this.ancestorScaleY||1),{scaleX:e,scaleY:n}}getPrecisionScale(){var i;const e=((i=this.getEngine())==null?void 0:i.getPixelRatio())||1,{scaleX:n,scaleY:s}=this.getAncestorScale();return{scaleX:n*e,scaleY:s*e}}dispose(){var s,i,a;let e=[...this.getLayers()];e.forEach(o=>{o.dispose()}),e=[];let n=[...this.getViewports()];n.forEach(o=>{o.dispose()}),n=[],this.clearLayer(),this.clearViewports(),this.detachControl(),(s=this.onTransformChangeObservable)==null||s.clear(),(i=this._inputManager)==null||i.dispose(),this._inputManager=null,(a=this._transformer)==null||a.dispose(),this._transformer=null,this.onPointerDownObserver.clear(),this.onPointerMoveObserver.clear(),this.onPointerUpObserver.clear(),this.onPointerEnterObserver.clear(),this.onPointerLeaveObserver.clear(),this.onDblclickObserver.clear(),this.onTripleClickObserver.clear(),this.onMouseWheelObserver.clear(),this.onKeyDownObservable.clear(),this.onKeyUpObservable.clear(),this._addObject$.complete(),super.dispose()}pick(e){let n=this.getActiveViewportByCoord(e);if(n||(n=this._viewports[0]),!this.evented||!n)return;const s=n.pickScrollBar(e);if(s)return s;const i=n.getRelativeVector(e);let a=null;const o=this.getAllObjectsByOrderForPick().reverse(),u=o.length;for(let l=0;l<u;l++){const c=o[l];if(!c.visible||!c.evented||c.classType===K.GROUP)continue;let h=i;if(c.isInGroup&&c.parent.classType===K.GROUP){const{cumLeft:f,cumTop:d}=this._getGroupCumLeftRight(c);h=h.clone().add(P.FromArray([-f,-d]))}if(c.isHit(h)){if(c.classType===K.SCENE_VIEWER){const f=c.pick(h);f?a=f:a=c.getActiveSubScene()}else a=c;break}else if(c.classType===K.SCENE_VIEWER&&c.allowSelectedClipElement()){const f=c.pick(h);if(f){a=f;break}}}return!a&&this._parent.classType===K.ENGINE?this:a}triggerKeyDown(e){this.onKeyDownObservable.notifyObservers(e)}triggerKeyUp(e){this.onKeyUpObservable.notifyObservers(e)}triggerPointerUp(e){var n,s;return!((n=this.onPointerUpObserver.notifyObservers(e))!=null&&n.stopPropagation)&&this._parent.classType===K.SCENE_VIEWER?((s=this._parent)==null||s.triggerPointerUp(e),!1):!0}triggerMouseWheel(e){var n,s;return!((n=this.onMouseWheelObserver.notifyObservers(e))!=null&&n.stopPropagation)&&this._parent.classType===K.SCENE_VIEWER?((s=this._parent)==null||s.triggerMouseWheel(e),!1):!0}triggerPointerMove(e){var n,s;return!((n=this.onPointerMoveObserver.notifyObservers(e))!=null&&n.stopPropagation)&&this._parent.classType===K.SCENE_VIEWER?((s=this._parent)==null||s.triggerPointerMove(e),!1):!0}triggerDblclick(e){var n,s;return!((n=this.onDblclickObserver.notifyObservers(e))!=null&&n.stopPropagation)&&this._parent.classType===K.SCENE_VIEWER?((s=this._parent)==null||s.triggerDblclick(e),!1):!0}triggerTripleClick(e){var n,s;return!((n=this.onTripleClickObserver.notifyObservers(e))!=null&&n.stopPropagation)&&this._parent.classType===K.SCENE_VIEWER?((s=this._parent)==null||s.triggerTripleClick(e),!1):!0}triggerPointerDown(e){var n,s;return!((n=this.onPointerDownObserver.notifyObservers(e))!=null&&n.stopPropagation)&&this._parent.classType===K.SCENE_VIEWER?((s=this._parent)==null||s.triggerPointerDown(e),!1):!0}triggerPointerOut(e){var n;return this._parent.classType===K.SCENE_VIEWER?((n=this._parent)==null||n.triggerPointerOut(e),!1):!0}triggerPointerLeave(e){var n,s;return!((n=this.onPointerLeaveObserver.notifyObservers(e))!=null&&n.stopPropagation)&&this._parent.classType===K.SCENE_VIEWER?((s=this._parent)==null||s.triggerPointerLeave(e),!1):!0}triggerPointerOver(e){var n;return this._parent.classType===K.SCENE_VIEWER?((n=this._parent)==null||n.triggerPointerOver(e),!1):!0}triggerPointerEnter(e){var n,s;return!((n=this.onPointerEnterObserver.notifyObservers(e))!=null&&n.stopPropagation)&&this._parent.classType===K.SCENE_VIEWER?((s=this._parent)==null||s.triggerPointerEnter(e),!1):!0}_createDefaultLayer(e=1){const n=new Hn(this,[],e);return this.addLayer(n),n}_setTransForm(){const e=D1.create().composeMatrix({scaleX:this.scaleX,scaleY:this.scaleY});this.transform=e,this.getViewports().forEach(n=>{n.resetSizeAndScrollBar()}),this.makeDirty(!0)}_getGroupCumLeftRight(e){let n=e.parent,s=0,i=0;for(;n.classType===K.GROUP;){const{left:a,top:o}=n;s+=a,i+=o,n=n.parent}return{cumLeft:s,cumTop:i}}}class Wn extends g.Disposable{constructor(e,n){super();_(this,"isRenderUnit");_(this,"_injector");_(this,"_renderControllers",[]);_(this,"_renderContext");this._injector=e.createChild(),this._renderContext={unit:n.unit,unitId:n.unit.getUnitId(),type:n.unit.type,components:new Map,mainComponent:null,isMainScene:n.isMainScene,engine:n.engine,scene:n.scene}}get unitId(){return this._renderContext.unitId}get type(){return this._renderContext.type}set isMainScene(e){this._renderContext.isMainScene=e}get isMainScene(){return this._renderContext.isMainScene}set engine(e){this._renderContext.engine=e}get engine(){return this._renderContext.engine}set mainComponent(e){this._renderContext.mainComponent=e}get mainComponent(){return this._renderContext.mainComponent}set scene(e){this._renderContext.scene=e}get scene(){return this._renderContext.scene}get components(){return this._renderContext.components}dispose(){this._renderControllers.forEach(e=>e.dispose()),this._renderControllers.length=0}addRenderControllers(e){this._initControllers(e)}_initControllers(e){e.map(n=>this._injector.createInstance(n,this._renderContext)).forEach(n=>this._renderControllers.push(n))}}var Io=Object.defineProperty,Lo=Object.getOwnPropertyDescriptor,Po=(r,t,e,n)=>{for(var s=n>1?void 0:n?Lo(t,e):t,i=r.length-1,a;i>=0;i--)(a=r[i])&&(s=(n?a(t,e,s):a(s))||s);return n&&s&&Io(t,e,s),s},Yn=(r,t)=>(e,n)=>t(e,n,r);const Mo={width:1500,height:1e3},No="_UNIVER_SCENE_";y.RenderManagerService=class extends g.Disposable{constructor(e,n){super();_(this,"_defaultEngine");_(this,"_currentUnitId","");_(this,"_renderMap",new Map);_(this,"_currentRender$",new o1.BehaviorSubject(this._currentUnitId));_(this,"currentRender$",this._currentRender$.asObservable());_(this,"_createRender$",new o1.BehaviorSubject(this._currentUnitId));_(this,"createRender$",this._createRender$.asObservable());_(this,"_renderControllers",new Map);this._injector=e,this._univerInstanceService=n}get defaultEngine(){return this._defaultEngine||(this._defaultEngine=new vt),this._defaultEngine}dispose(){super.dispose(),this._renderMap.forEach(e=>{this._disposeItem(e)}),this._renderControllers.clear(),this._renderMap.clear(),this._currentRender$.complete()}registerRenderControllers(e,n){this._renderControllers.has(e)||this._renderControllers.set(e,new Set);const s=this._renderControllers.get(e);s.add(n);for(const[i,a]of this._renderMap)this._univerInstanceService.getUnitType(i)===e&&a.addRenderControllers([n]);return g.toDisposable(()=>s.delete(n))}_getRenderControllersForType(e){var n;return Array.from((n=this._renderControllers.get(e))!=null?n:[])}createRenderWithParent(e,n){const s=this.getRenderById(n);if(s==null)throw new Error("parent render is null");const{scene:i,engine:a}=s,o=this._createRender(e,a,!1),u=o.scene,l=new Z6(e);return l.addSubScene(u),i.addObject(l),o}createRenderWithEngine(e,n){return this._createRender(e,n,!1)}create(e){this._createRender$.next(e)}createRender(e){const n=new vt;return this._createRender(e,n)}_createRender(e,n,s=!0){const i=this.getRenderById(e);let a=!0;i!=null&&i.engine===n&&(a=!1),this._disposeItem(i,a);const{width:o,height:u}=Mo,l=new Xn(No+e,n,{width:o,height:u}),c=this._univerInstanceService.getUnit(e);let h;if(c){const f=this._univerInstanceService.getUnitType(e),d=this._getRenderControllersForType(f);h=new Wn(this._injector,{unit:c,engine:n,scene:l,isMainScene:s}),h.addRenderControllers(d)}else h={unitId:e,engine:n,scene:l,mainComponent:null,components:new Map,isMainScene:s};return this.addRenderItem(e,h),h}addRenderItem(e,n){this._renderMap.set(e,n)}removeRender(e){var s;const n=this._renderMap.get(e);n!=null&&(this._disposeItem(n),(s=n.dispose)==null||s.call(n)),this._renderMap.delete(e)}has(e){return this._renderMap.has(e)}setCurrent(e){this._currentUnitId=e,this._currentRender$.next(e)}getCurrent(){return this._renderMap.get(this._currentUnitId)}getFirst(){return[...this.getRenderAll().values()][0]}getRenderById(e){return this._renderMap.get(e)}getRenderAll(){return this._renderMap}_disposeItem(e,n=!0){if(e==null)return;const{engine:s,scene:i,components:a,mainComponent:o}=e;a==null||a.forEach(u=>{u.dispose()}),o==null||o.dispose(),i.dispose(),n&&s.dispose()}},y.RenderManagerService=Po([Yn(0,C1.Inject(C1.Injector)),Yn(1,g.IUniverInstanceService)],y.RenderManagerService);const jn=C1.createIdentifier("engine-render.render-manager.service");var Uo=Object.defineProperty,Ho=Object.getOwnPropertyDescriptor,Go=(r,t,e,n)=>{for(var s=n>1?void 0:n?Ho(t,e):t,i=r.length-1,a;i>=0;i--)(a=r[i])&&(s=(n?a(t,e,s):a(s))||s);return n&&s&&Uo(t,e,s),s},zo=(r,t)=>(e,n)=>t(e,n,r);const Vn=C1.createIdentifier("univer.render-engine"),Xo="render-engine";y.UniverRenderEnginePlugin=(o0=class extends g.Plugin{constructor(t,e){super(),this._injector=e,this._injector.add([Vn,{useFactory:()=>new vt}]),this._injector.add([jn,{useClass:y.RenderManagerService}])}},_(o0,"pluginName",Xo),o0),y.UniverRenderEnginePlugin=Go([zo(1,C1.Inject(C1.Injector))],y.UniverRenderEnginePlugin);const Kn=["radius"];class Q6 extends Ae{constructor(e,n){super(e,n);_(this,"_radius");this._radius=(n==null?void 0:n.radius)||10,this._setFixBoundingBox(),this.onTransformChangeObservable.add(s=>{const{type:i,value:a,preValue:o}=s;if(i===l1.resize||i===l1.all){const u=Math.min(this.width,this.height);this._radius=u/2,this.width=u,this.height=u,this._setTransForm()}})}get radius(){return this._radius}static drawWith(e,n){let{radius:s}=n;s=s!=null?s:10,e.beginPath(),n.strokeDashArray&&e.setLineDash(n.strokeDashArray),e.beginPath(),e.arc(s,s,s||0,0,Math.PI*2,!1),e.closePath(),this._renderPaintInOrder(e,n)}toJson(){const e={};return Kn.forEach(n=>{this[n]&&(e[n]=this[n])}),{...super.toJson(),...e}}_draw(e){Q6.drawWith(e,this)}_setFixBoundingBox(){this.transformByState({width:this._radius*2,height:this._radius*2})}}class Wo{}class Yo{}class mt extends Ae{constructor(e,n){super(e,n);_(this,"_props");_(this,"_native");this._props={autoWidth:!1,autoHeight:!1,...n},n.image?(this._native=n.image,this._init()):n.url&&(this._native=document.createElement("img"),this._native.src=n.url,this._native.onload=()=>{var s,i,a;(s=n.success)==null||s.call(n),this._init(),this.makeDirty(!0),(a=(i=this.getEngine())==null?void 0:i.activeScene)==null||a.onFileLoadedObservable.notifyObservers(e)},this._native.onerror=()=>{n.fail?n.fail():(this._native.src="data:image/svg+xml;base64,PHN2ZyBjbGFzcz0iaWNvbiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB3aWR0aD0iMjAwIiBoZWlnaHQ9IjIwMCI+PHBhdGggZD0iTTMwNC4xMjggNDU2LjE5MmM0OC42NCAwIDg4LjA2NC0zOS40MjQgODguMDY0LTg4LjA2NHMtMzkuNDI0LTg4LjA2NC04OC4wNjQtODguMDY0LTg4LjA2NCAzOS40MjQtODguMDY0IDg4LjA2NCAzOS40MjQgODguMDY0IDg4LjA2NCA4OC4wNjR6bTAtMTE2LjIyNGMxNS4zNiAwIDI4LjE2IDEyLjI4OCAyOC4xNiAyOC4xNnMtMTIuMjg4IDI4LjE2LTI4LjE2IDI4LjE2LTI4LjE2LTEyLjI4OC0yOC4xNi0yOC4xNiAxMi4yODgtMjguMTYgMjguMTYtMjguMTZ6IiBmaWxsPSIjZTZlNmU2Ii8+PHBhdGggZD0iTTg4Ny4yOTYgMTU5Ljc0NEgxMzYuNzA0Qzk2Ljc2OCAxNTkuNzQ0IDY0IDE5MiA2NCAyMzIuNDQ4djU1OS4xMDRjMCAzOS45MzYgMzIuMjU2IDcyLjcwNCA3Mi43MDQgNzIuNzA0aDE5OC4xNDRMNTAwLjIyNCA2ODguNjRsLTM2LjM1Mi0yMjIuNzIgMTYyLjMwNC0xMzAuNTYtNjEuNDQgMTQzLjg3MiA5Mi42NzIgMjE0LjAxNi0xMDUuNDcyIDE3MS4wMDhoMzM1LjM2QzkyNy4yMzIgODY0LjI1NiA5NjAgODMyIDk2MCA3OTEuNTUyVjIzMi40NDhjMC0zOS45MzYtMzIuMjU2LTcyLjcwNC03Mi43MDQtNzIuNzA0em0tMTM4Ljc1MiA3MS42OHYuNTEySDg1Ny42YzE2LjM4NCAwIDMwLjIwOCAxMy4zMTIgMzAuMjA4IDMwLjIwOHYzOTkuODcyTDY3My4yOCA0MDguMDY0bDc1LjI2NC0xNzYuNjR6TTMwNC42NCA3OTIuMDY0SDE2NS44ODhjLTE2LjM4NCAwLTMwLjIwOC0xMy4zMTItMzAuMjA4LTMwLjIwOHYtOS43MjhsMTM4Ljc1Mi0xNjQuMzUyIDEwNC45NiAxMjQuNDE2LTc0Ljc1MiA3OS44NzJ6bTgxLjkyLTM1NS44NGwzNy4zNzYgMjI4Ljg2NC0uNTEyLjUxMi0xNDIuODQ4LTE2OS45ODRjLTMuMDcyLTMuNTg0LTkuMjE2LTMuNTg0LTEyLjI4OCAwTDEzNS42OCA2NTIuOFYyNjIuMTQ0YzAtMTYuMzg0IDEzLjMxMi0zMC4yMDggMzAuMjA4LTMwLjIwOGg0NzQuNjI0TDM4Ni41NiA0MzYuMjI0em01MDEuMjQ4IDMyNS42MzJjMCAxNi44OTYtMTMuMzEyIDMwLjIwOC0yOS42OTYgMzAuMjA4SDY4MC45Nmw1Ny4zNDQtOTMuMTg0LTg3LjU1Mi0yMDIuMjQgNy4xNjgtNy42OCAyMjkuODg4IDI3Mi44OTZ6IiBmaWxsPSIjZTZlNmU2Ii8+PC9zdmc+",this._init(),this.makeDirty(!0))})}static drawWith(e,n){var s;if((s=n._native)!=null&&s.complete){const{width:i,height:a}=n;try{e.drawImage(n._native,0,0,i,a)}catch(o){console.error(o)}}}static create(e,n,s){return new mt(e,{url:n,success:s})}getPictureProps(){return this._props}_draw(e){mt.drawWith(e,this)}_init(){var e,n;this._props.autoWidth&&this.resize(((e=this._native)==null?void 0:e.width)||0),this._props.autoHeight&&this.resize(void 0,((n=this._native)==null?void 0:n.height)||0)}}const qn=["pointsGroup"];class bt extends Ae{constructor(e,n){super(e,n);_(this,"_pointsGroup");this._pointsGroup=(n==null?void 0:n.pointsGroup)||[[]],this._setFixBoundingBox(),this.onTransformChangeObservable.add(s=>{const{type:i,value:a,preValue:o}=s;(i===l1.resize||i===l1.all)&&this.resizePolygon(o)})}get pointsGroup(){return this._pointsGroup}static drawWith(e,n){let{pointsGroup:s}=n;s=s!=null?s:[[]],n.strokeDashArray&&e.setLineDash(n.strokeDashArray),e.beginPath();for(const i of s){e.moveTo(i[0].x,i[0].y);for(let a=1;a<i.length;a++){const o=i[a];e.lineTo(o.x,o.y)}}e.closePath(),this._renderPaintInOrder(e,n)}updatePointGroup(e){this._pointsGroup=e,this._setFixBoundingBox()}resizePolygon(e){const{left:n,top:s,width:i,height:a}=this._getSelfRect(),{width:o,height:u}=e;let l,c;o?l=this.width-o:l=0,u?c=this.height-u:c=0;const h=l/i,f=c/a;this.scaleX+=h,this.scaleY+=f,this.left=this.left-n*h,this.top=this.top-s*f,this._setTransForm()}toJson(){const e={};return qn.forEach(n=>{this[n]&&(e[n]=this[n])}),{...super.toJson(),...e}}getState(){const{left:e,top:n,width:s,height:i}=this.getRect();return{left:e,top:n,width:s,height:i,scaleX:this.scaleX,scaleY:this.scaleY,angle:this.angle,skewX:this.skewX,skewY:this.skewY,flipX:this.flipX,flipY:this.flipY}}getRect(){const{left:e,top:n,width:s,height:i}=this._getSelfRect();return{left:e*this.scaleX+this.left,top:n*this.scaleY+this.top,width:s*this.scaleX,height:i*this.scaleY}}_draw(e){bt.drawWith(e,this)}_setFixBoundingBox(){const{width:e,height:n,left:s,top:i}=this._getSelfRect();this.left=this.left+s,this.top=this.top+i,this.width=e,this.height=n;const a=this.pointsGroup;for(const o of a)for(const u of o)u.x-=s,u.y-=i;this._setTransForm()}_getSelfRect(){const e=this.pointsGroup;let n=e[0][0].x,s=e[0][0].x,i=e[0][0].y,a=e[0][0].y;for(const o of e)for(const u of o)n=Math.min(n,u.x),s=Math.max(s,u.x),i=Math.min(i,u.y),a=Math.max(a,u.y);return{left:n,top:i,width:s-n,height:a-i}}}const e0=["text","richText"];class jo extends ie{constructor(e,n,s){super(n);_(this,"_documentData");_(this,"_documentSkeleton");_(this,"_documents");_(this,"_ff");_(this,"_fs",12);_(this,"_it",g.BooleanNumber.FALSE);_(this,"_bl",g.BooleanNumber.FALSE);_(this,"_ul",{s:g.BooleanNumber.FALSE});_(this,"_st",{s:g.BooleanNumber.FALSE});_(this,"_ol",{s:g.BooleanNumber.FALSE});_(this,"_bg");_(this,"_bd");_(this,"_cl");this._localeService=e,s!=null&&s.richText?this._documentData=s.richText:s&&(this._fs=s.fs,this._ff=s.ff,this._it=s.it,this._bl=s.bl,this._ul=s.ul,this._st=s.st,this._ol=s.ol,this._bg=s.bg,this._bd=s.bd,this._cl=s.cl,this._documentData=this._convertToDocumentData(s.text||""));const i=new g.DocumentDataModel(this._documentData),a=new be(i);this._documentSkeleton=Qe.create(a,this._localeService),this._documents=new L2(`${this.oKey}_DOCUMENTS`,this._documentSkeleton,{pageMarginLeft:0,pageMarginTop:0}),this._initialProps(s),this.onTransformChangeObservable.add(o=>{const{type:u}=o;if(u===l1.resize||u===l1.all){i.updateDocumentDataPageSize(this.width),this._documentSkeleton.makeDirty(!0),this._documentSkeleton.calculate();const l=this.getDocsSkeletonPageSize();this.height=(l==null?void 0:l.height)||this.height,this._setTransForm()}})}get documentData(){return this._documentData}getDocsSkeletonPageSize(){var o;const e=(o=this._documentSkeleton)==null?void 0:o.getSkeletonData();if(!e)return;const{pages:n}=e,s=n[n.length-1],{width:i,height:a}=s;return{width:i,height:a}}setProps(e){if(!e)return;const n=Object.keys(e);if(n.length!==0)return n.forEach(s=>{if(e[s]===void 0)return!0;e0.indexOf(s)===-1&&(this[`_${s}`]=e[s])}),this.makeDirty(!0),this}render(e,n){if(!this.visible)return this.makeDirty(!1),this;if(this.isRender(n)){const{top:i,left:a,bottom:o,right:u}=n.viewBound;if(this.width+this.strokeWidth<a||u<0||this.height+this.strokeWidth<i||o<0)return this}const s=this.transform.getMatrix();return e.save(),e.transform(s[0],s[1],s[2],s[3],s[4],s[5]),this._draw(e),e.restore(),this.makeDirty(!1),this}toJson(){const e={};return e0.forEach(n=>{this[n]&&(e[n]=this[n])}),{...super.toJson(),...e}}_draw(e){this._documents.render(e)}_convertToDocumentData(e){const n=e.length;return{id:"d",body:{dataStream:`${e}${g.DEFAULT_EMPTY_DOCUMENT_VALUE}`,textRuns:[{ts:{fs:this._fs||14,ff:this._ff,it:this._it,bl:this._bl,ul:this._ul,st:this._st,ol:this._ol,bg:this._bg,bd:this._bd,cl:this._cl},st:0,ed:n}]},documentStyle:{pageSize:{width:Number.POSITIVE_INFINITY,height:Number.POSITIVE_INFINITY}}}}_initialProps(e){this._documentSkeleton.getViewModel().getDataModel().updateDocumentDataPageSize(e==null?void 0:e.width,e==null?void 0:e.height),this._documentSkeleton.calculate();const n=this.getDocsSkeletonPageSize();this.transformByState({width:(n==null?void 0:n.width)||0,height:(n==null?void 0:n.height)||0,left:(e==null?void 0:e.left)||0,top:(e==null?void 0:e.top)||0,angle:e==null?void 0:e.angle}),this.setProps(e),this.makeDirty(!0)}}class Vo extends g.Disposable{constructor(){super(...arguments);_(this,"enableHorizontal",!0);_(this,"enableVertical",!0);_(this,"horizontalThumbWidth",0);_(this,"horizontalMinusMiniThumb",0);_(this,"horizontalBarWidth",0);_(this,"verticalThumbHeight",0);_(this,"verticalBarHeight",0);_(this,"verticalMinusMiniThumb",0);_(this,"horizonBarRect");_(this,"horizonThumbRect");_(this,"verticalBarRect");_(this,"verticalThumbRect");_(this,"placeholderBarRect")}get limitX(){var e;return(e=this.horizonThumbRect)!=null&&e.visible?this.horizontalBarWidth-this.horizontalThumbWidth:0}get limitY(){var e;return(e=this.verticalThumbRect)!=null&&e.visible?this.verticalBarHeight-this.verticalThumbHeight:0}get ratioScrollX(){if(this.enableHorizontal===!1||this.horizontalThumbWidth===void 0||this.horizontalBarWidth===void 0)return 1;const e=(this.horizontalThumbWidth-this.horizontalMinusMiniThumb)*this.miniThumbRatioX/this.horizontalBarWidth;return Number.isNaN(e)?1:e}get ratioScrollY(){if(this.enableVertical===!1||this.verticalThumbHeight===void 0||this.verticalBarHeight===void 0)return 1;const e=(this.verticalThumbHeight-this.verticalMinusMiniThumb)*this.miniThumbRatioY/this.verticalBarHeight;return Number.isNaN(e)?1:e}get miniThumbRatioX(){const e=this.horizontalBarWidth-this.horizontalThumbWidth;if(e===0)return 0;const n=this.horizontalBarWidth-(this.horizontalThumbWidth-this.horizontalMinusMiniThumb);return n===0?0:e/n}get miniThumbRatioY(){const e=this.verticalBarHeight-this.verticalThumbHeight;if(e===0)return 0;const n=this.verticalBarHeight-(this.verticalThumbHeight-this.verticalMinusMiniThumb);return n===0?0:e/n}pick(e){var n,s,i,a;return(n=this.horizonThumbRect)!=null&&n.isHit(e)?this.horizonThumbRect:(s=this.verticalThumbRect)!=null&&s.isHit(e)?this.verticalThumbRect:(i=this.horizonBarRect)!=null&&i.isHit(e)?this.horizonBarRect:(a=this.verticalBarRect)!=null&&a.isHit(e)?this.verticalBarRect:null}dispose(){var e,n,s,i,a;(e=this.horizonBarRect)==null||e.dispose(),(n=this.horizonThumbRect)==null||n.dispose(),(s=this.verticalBarRect)==null||s.dispose(),(i=this.verticalThumbRect)==null||i.dispose(),(a=this.placeholderBarRect)==null||a.dispose(),this.horizonBarRect=null,this.horizonThumbRect=null,this.verticalBarRect=null,this.verticalThumbRect=null,this.placeholderBarRect=null}hasHorizonThumb(){var e;return((e=this.horizonThumbRect)==null?void 0:e.visible)||!1}hasVerticalThumb(){var e;return((e=this.verticalThumbRect)==null?void 0:e.visible)||!1}resize(e=0,n=0,s=0,i=0){}makeDirty(e){}render(e,n=0,s=0){}}const t2=17;class t0 extends Vo{constructor(e,n){super();_(this,"_view");_(this,"_mainScene");_(this,"_lastX",-1);_(this,"_lastY",-1);_(this,"_isHorizonMove",!1);_(this,"_isVerticalMove",!1);_(this,"_horizonPointerMoveObserver");_(this,"_horizonPointerUpObserver");_(this,"_verticalPointerMoveObserver");_(this,"_verticalPointerUpObserver");_(this,"barSize",14);_(this,"barBorder",1);_(this,"thumbMargin",2);_(this,"thumbLengthRatio",1);_(this,"thumbBackgroundColor","#cccccc");_(this,"thumbHoverBackgroundColor","#b2b2b2");_(this,"thumbActiveBackgroundColor","#999999");_(this,"barBackgroundColor","rgba(255,255,255,0.5)");_(this,"barBorderColor","rgba(255,255,255,0.7)");e||console.warn("Missing viewport"),this.setProps(n),this._view=e,this._initialScrollRect(),this._view.setScrollBar(this)}static attachTo(e,n){return new t0(e,n)}dispose(){var e,n,s,i;super.dispose(),(e=this._horizonPointerMoveObserver)==null||e.dispose(),(n=this._horizonPointerUpObserver)==null||n.dispose(),(s=this._verticalPointerMoveObserver)==null||s.dispose(),(i=this._verticalPointerUpObserver)==null||i.dispose(),this._mainScene=null,this._view.removeScrollBar()}render(e,n=0,s=0){const{scrollX:i,scrollY:a}=this._view;e.save();const u=new D1([1,0,0,1,n,s]).getMatrix();e.transform(u[0],u[1],u[2],u[3],u[4],u[5]),this.enableHorizontal&&(this.horizonBarRect.render(e),this.horizonThumbRect.translate(i).render(e)),this.enableVertical&&(this.verticalBarRect.render(e),this.verticalThumbRect.translate(void 0,a).render(e)),this.enableHorizontal&&this.enableVertical&&this.placeholderBarRect.render(e),e.restore()}resize(e=0,n=0,s=0,i=0){var a;e===0&&e===0||(this._resizeHorizontal(e,n,s),this._resizeVertical(e,n,i),this.enableHorizontal&&this.enableVertical&&((a=this.placeholderBarRect)==null||a.transformByState({left:e-this.barSize,top:n-this.barSize,width:this.barSize-this.barBorder,height:this.barSize-this.barBorder})))}makeDirty(e){var n,s,i,a,o;(n=this.horizonBarRect)==null||n.makeDirty(e),(s=this.horizonThumbRect)==null||s.makeDirty(e),(i=this.verticalBarRect)==null||i.makeDirty(e),(a=this.verticalThumbRect)==null||a.makeDirty(e),(o=this.placeholderBarRect)==null||o.makeDirty(e),this.makeViewDirty(e)}makeViewDirty(e){(this._mainScene||this._view.scene).makeDirty(e)}pick(e){var n,s,i,a;return(n=this.horizonThumbRect)!=null&&n.isHit(e)?this.horizonThumbRect:(s=this.verticalThumbRect)!=null&&s.isHit(e)?this.verticalThumbRect:(i=this.horizonBarRect)!=null&&i.isHit(e)?this.horizonBarRect:(a=this.verticalBarRect)!=null&&a.isHit(e)?this.verticalBarRect:null}setProps(e){if(!e)return;const n=Object.keys(e);n.length!==0&&n.forEach(s=>{e[s]!==void 0&&(this[`${s}`]=e[s])})}_resizeHorizontal(e,n,s){var i,a,o,u,l;this.enableHorizontal&&(this.horizontalMinusMiniThumb=0,this.horizontalBarWidth=e-(this.enableVertical?this.barSize:0)-this.barBorder,this.horizontalThumbWidth=this.horizontalBarWidth*(this.horizontalBarWidth-this.barBorder)/s*this.thumbLengthRatio,this.horizontalThumbWidth<t2&&(this.horizontalMinusMiniThumb=t2-this.horizontalThumbWidth,this.horizontalThumbWidth=t2),(i=this.horizonBarRect)==null||i.transformByState({left:0,top:n-this.barSize,width:this.horizontalBarWidth,height:this.barSize-this.barBorder}),this.horizontalThumbWidth>=e-this.barSize?(a=this.horizonThumbRect)==null||a.setProps({visible:!1}):((o=this.horizonThumbRect)!=null&&o.visible||(u=this.horizonThumbRect)==null||u.setProps({visible:!0}),(l=this.horizonThumbRect)==null||l.transformByState({left:this._view.scrollX,top:n-this.barSize+this.thumbMargin,width:this.horizontalThumbWidth,height:this.barSize-this.thumbMargin*2})))}_resizeVertical(e,n,s){var i,a,o,u,l;this.enableVertical&&(this.verticalMinusMiniThumb=0,this.verticalBarHeight=n-(this.enableHorizontal?this.barSize:0)-this.barBorder,this.verticalThumbHeight=this.verticalBarHeight*this.verticalBarHeight/s*this.thumbLengthRatio,this.verticalThumbHeight<t2&&(this.verticalMinusMiniThumb=t2-this.verticalThumbHeight,this.verticalThumbHeight=t2),(i=this.verticalBarRect)==null||i.transformByState({left:e-this.barSize,top:0,width:this.barSize-this.barBorder,height:this.verticalBarHeight}),this.verticalThumbHeight>=n-this.barSize?(a=this.verticalThumbRect)==null||a.setProps({visible:!1}):((o=this.verticalThumbRect)!=null&&o.visible||(u=this.verticalThumbRect)==null||u.setProps({visible:!0}),(l=this.verticalThumbRect)==null||l.transformByState({left:e-this.barSize+this.thumbMargin,top:this._view.scrollY,width:this.barSize-this.thumbMargin*2,height:this.verticalThumbHeight})))}_initialScrollRect(){this.enableHorizontal&&(this.horizonBarRect=new B1("__horizonBarRect__",{fill:this.barBackgroundColor,strokeWidth:this.barBorder,stroke:this.barBorderColor}),this.horizonThumbRect=new B1("__horizonThumbRect__",{radius:6,fill:this.thumbBackgroundColor})),this.enableVertical&&(this.verticalBarRect=new B1("__verticalBarRect__",{fill:this.barBackgroundColor,strokeWidth:this.barBorder,stroke:this.barBorderColor}),this.verticalThumbRect=new B1("__verticalThumbRect__",{radius:6,fill:this.thumbBackgroundColor})),this.enableHorizontal&&this.enableVertical&&(this.placeholderBarRect=new B1("__placeholderBarRect__",{fill:this.barBackgroundColor,strokeWidth:this.barBorder,stroke:this.barBorderColor})),this._initialVerticalEvent(),this._initialHorizontalEvent()}_initialVerticalEvent(){var n,s,i,a;if(!this.enableVertical)return;const e=this._mainScene||this._view.scene;(n=this.verticalThumbRect)==null||n.on(Y1.PointerEnter,this._hoverFunc(this.thumbHoverBackgroundColor,this.verticalThumbRect)),(s=this.verticalThumbRect)==null||s.on(Y1.PointerLeave,this._hoverFunc(this.thumbBackgroundColor,this.verticalThumbRect)),(i=this.verticalBarRect)==null||i.on(Y1.PointerDown,(o,u)=>{const l=o;this._view.scrollTo({y:l.offsetY-this._view.top-this.verticalThumbHeight/2}),u.stopPropagation()}),(a=this.verticalThumbRect)==null||a.on(Y1.PointerDown,(o,u)=>{const l=o,c=this.verticalThumbRect;this._isVerticalMove=!0,this._lastX=l.offsetX,this._lastY=l.offsetY,c==null||c.setProps({fill:this.thumbActiveBackgroundColor}),e.disableEvent(),this.makeViewDirty(!0),u.stopPropagation()}),this._verticalPointerMoveObserver=e.onPointerMoveObserver.add((o,u)=>{var c;const l=o;this._isVerticalMove&&(this._view.scrollByBar({y:l.offsetY-this._lastY}),this._lastY=l.offsetY,(c=e.getEngine())==null||c.setRemainCapture())}),this._verticalPointerUpObserver=e.onPointerUpObserver.add((o,u)=>{const l=this.verticalThumbRect;this._isVerticalMove=!1,e.enableEvent(),l==null||l.setProps({fill:this.thumbBackgroundColor}),this.makeViewDirty(!0)})}_hoverFunc(e,n){return(s,i)=>{if(this._isHorizonMove||this._isVerticalMove)return;n.setProps({fill:e}),this.makeViewDirty(!0)}}_initialHorizontalEvent(){var n,s,i,a;if(!this.enableHorizontal)return;const e=this._mainScene||this._view.scene;(n=this.horizonThumbRect)==null||n.on(Y1.PointerEnter,this._hoverFunc(this.thumbHoverBackgroundColor,this.horizonThumbRect)),(s=this.horizonThumbRect)==null||s.on(Y1.PointerLeave,this._hoverFunc(this.thumbBackgroundColor,this.horizonThumbRect)),(i=this.horizonBarRect)==null||i.on(Y1.PointerDown,(o,u)=>{const l=o;this._view.scrollTo({x:l.offsetX-this._view.left-this.horizontalThumbWidth/2}),u.stopPropagation()}),(a=this.horizonThumbRect)==null||a.on(Y1.PointerDown,(o,u)=>{var c;const l=o;this._isHorizonMove=!0,this._lastX=l.offsetX,this._lastY=l.offsetY,(c=this.horizonThumbRect)==null||c.setProps({fill:this.thumbActiveBackgroundColor}),this.makeViewDirty(!0),e.disableEvent(),u.stopPropagation()}),this._horizonPointerMoveObserver=e.onPointerMoveObserver.add((o,u)=>{var c;const l=o;this._isHorizonMove&&(this._view.scrollByBar({x:l.offsetX-this._lastX}),this._lastX=l.offsetX,(c=e.getEngine())==null||c.setRemainCapture())}),this._horizonPointerUpObserver=e.onPointerUpObserver.add((o,u)=>{const l=this.horizonThumbRect;this._isHorizonMove=!1,e.enableEvent(),l==null||l.setProps({fill:this.thumbBackgroundColor}),this.makeViewDirty(!0)})}}const Zn=["checked"];class n0 extends Ae{constructor(e,n){super(e,n);_(this,"_checked",!1);g.Tools.isDefine(n.checked)&&(this._checked=n.checked)}get checked(){return this._checked}static drawWith(e,n){const{width:s=16,height:i=16,fill:a,checked:o,top:u=0,left:l=0}=n,c=new Path2D("M12 2.65381H4C3.17157 2.65381 2.5 3.32538 2.5 4.15381V12.1538C2.5 12.9822 3.17157 13.6538 4 13.6538H12C12.8284 13.6538 13.5 12.9822 13.5 12.1538V4.15381C13.5 3.32538 12.8284 2.65381 12 2.65381ZM4 1.65381C2.61929 1.65381 1.5 2.7731 1.5 4.15381V12.1538C1.5 13.5345 2.61929 14.6538 4 14.6538H12C13.3807 14.6538 14.5 13.5345 14.5 12.1538V4.15381C14.5 2.7731 13.3807 1.65381 12 1.65381H4Z"),h=new Path2D("M3.99243 1.65381C2.61172 1.65381 1.49243 2.77295 1.49243 4.15381V12.1538C1.49243 13.5347 2.61172 14.6538 3.99243 14.6538H11.9924C13.3731 14.6538 14.4924 13.5347 14.4924 12.1538V4.15381C14.4924 2.77295 13.3731 1.65381 11.9924 1.65381H3.99243ZM12.3779 6.3623C12.6317 6.1084 12.6317 5.69678 12.3779 5.44287C12.1241 5.18896 11.7125 5.18896 11.4586 5.44287L7.21062 9.69092L5.00681 7.4873C4.75296 7.2334 4.3414 7.2334 4.08755 7.4873C3.83372 7.74072 3.83372 8.15234 4.08757 8.40625L6.85709 11.1758C7.05234 11.3711 7.36893 11.3711 7.56418 11.1758L12.3779 6.3623Z");e.save(),e.translate(l,u),e.scale(s/16,i/16),a&&(e.fillStyle=a),o?e.fill(h,"evenodd"):e.fill(c,"evenodd"),e.restore()}_draw(e){n0.drawWith(e,this)}toJson(){const e={};return Zn.forEach(n=>{this[n]&&(e[n]=this[n])}),{...super.toJson(),...e}}}function Ko(r,t){if(t.startRow>=r.endRow||t.endRow<=r.startRow||t.startColumn>=r.endColumn||t.endColumn<=r.startColumn)return[r];const e=[];t.startRow>r.startRow&&e.push({startRow:r.startRow,startColumn:r.startColumn,endRow:t.startRow,endColumn:r.endColumn}),t.endRow<r.endRow&&e.push({startRow:t.endRow,startColumn:r.startColumn,endRow:r.endRow,endColumn:r.endColumn});const n=Math.max(r.startRow,t.startRow),s=Math.min(r.endRow,t.endRow);return t.startColumn>r.startColumn&&e.push({startRow:n,startColumn:r.startColumn,endRow:s,endColumn:t.startColumn}),t.endColumn<r.endColumn&&e.push({startRow:n,startColumn:t.endColumn,endRow:s,endColumn:r.endColumn}),e}const qo=3;class Zo{constructor(t,e,n){_(this,"scrollX",0);_(this,"scrollY",0);_(this,"actualScrollX",0);_(this,"actualScrollY",0);_(this,"onMouseWheelObserver",new g.Observable);_(this,"onScrollAfterObserver",new g.Observable);_(this,"onScrollBeforeObserver",new g.Observable);_(this,"onScrollStopObserver",new g.Observable);_(this,"onScrollByBarObserver",new g.Observable);_(this,"_viewPortKey","");_(this,"_topOrigin",0);_(this,"_leftOrigin",0);_(this,"_bottomOrigin",0);_(this,"_rightOrigin",0);_(this,"_widthOrigin");_(this,"_heightOrigin");_(this,"_top",0);_(this,"_left",0);_(this,"_bottom",0);_(this,"_right",0);_(this,"_width");_(this,"_height");_(this,"_scene");_(this,"_scrollBar");_(this,"_isWheelPreventDefaultX",!1);_(this,"_isWheelPreventDefaultY",!1);_(this,"_scrollStopNum",0);_(this,"_preScrollX",0);_(this,"_preScrollY",0);_(this,"_renderClipState",!0);_(this,"_active",!0);_(this,"_paddingStartX",0);_(this,"_paddingEndX",0);_(this,"_paddingStartY",0);_(this,"_paddingEndY",0);_(this,"_isRelativeX",!1);_(this,"_isRelativeY",!1);_(this,"_preViewportBound");this._viewPortKey=t,this._scene=e,(n==null?void 0:n.active)!=null&&(this._active=n.active),this._scene.addViewport(this),this._setWithAndHeight(n),this._isWheelPreventDefaultX=(n==null?void 0:n.isWheelPreventDefaultX)||!1,this._isWheelPreventDefaultY=(n==null?void 0:n.isWheelPreventDefaultY)||!1,this._resizeCacheCanvasAndScrollBar()}get scene(){return this._scene}get width(){return this._width}get height(){return this._height}get viewPortKey(){return this._viewPortKey}get topOrigin(){return this._topOrigin}get leftOrigin(){return this._leftOrigin}get bottomOrigin(){return this._bottomOrigin}get rightOrigin(){return this._rightOrigin}get top(){return this._top}get left(){return this._left}get bottom(){return this._bottom}get right(){return this._right}get isWheelPreventDefaultX(){return this._isWheelPreventDefaultX}get isWheelPreventDefaultY(){return this._isWheelPreventDefaultY}set width(t){this._width=t}set height(t){this._height=t}get isActive(){return this._active===!1||(this.height||0)<=0||(this.width||0)<=0?!1:this._active}set top(t){var e,n;this._topOrigin=t,this._top=se(t,(n=(e=this._scene)==null?void 0:e.getParent())==null?void 0:n.height)}set left(t){var e;this._leftOrigin=t,this._left=se(t,(e=this.scene.getParent())==null?void 0:e.width)}set bottom(t){var e;this._bottomOrigin=t,this._bottom=se(t,(e=this.scene.getParent())==null?void 0:e.height)}set right(t){var e;this._rightOrigin=t,this._right=se(t,(e=this.scene.getParent())==null?void 0:e.width)}enable(){this._active=!0}disable(){this._active=!1}resetSizeAndScrollBar(){this._resizeCacheCanvasAndScrollBar()}setScrollBar(t){this._scrollBar=t,this._resizeCacheCanvasAndScrollBar()}removeScrollBar(){this._scrollBar=null}resize(t){Object.keys(t).length!==0&&(this._setWithAndHeight(t),this._resizeCacheCanvasAndScrollBar())}setPadding(t){const{startX:e=0,startY:n=0,endX:s=0,endY:i=0}=t;this._paddingStartX=e,this._paddingEndX=s,this._paddingStartY=n,this._paddingEndY=i,this._resizeCacheCanvasAndScrollBar()}resetPadding(){this.setPadding({startX:0,endX:0,startY:0,endY:0})}scrollTo(t,e=!0){return this._scroll(0,t,e)}scrollBy(t,e=!0){return this._scroll(1,t,e)}scrollByBar(t,e=!0){var i,a;this._scroll(1,t,e);const{x:n,y:s}=t;this.onScrollByBarObserver.notifyObservers({viewport:this,scrollX:this.scrollX,scrollY:this.scrollY,x:n,y:s,actualScrollX:this.actualScrollX,actualScrollY:this.actualScrollY,limitX:(i=this._scrollBar)==null?void 0:i.limitX,limitY:(a=this._scrollBar)==null?void 0:a.limitY,isTrigger:e})}scrollByOffset(t=0,e=0,n=!0){if(!this._scrollBar||this.isActive===!1)return;const s=t+this._paddingStartX,i=e+this._paddingStartY,a=this.getBarScroll(s,i);return this.scrollBy(a,n)}getBarScroll(t,e){let n=t-this._paddingStartX,s=e-this._paddingStartY;if(this._scrollBar){n*=this._scrollBar.ratioScrollX,s*=this._scrollBar.ratioScrollY;const{scaleX:i,scaleY:a}=this.scene;n*=i,s*=a}else this.scrollX!==void 0&&(n=this.scrollX),this.scrollY!==void 0&&(s=this.scrollY);return{x:n,y:s}}getActualScroll(t,e){let n=t,s=e;if(this._scrollBar){const{scaleX:o,scaleY:u}=this.scene;this._scrollBar.ratioScrollX!==0?(n/=this._scrollBar.ratioScrollX,n/=o):this.actualScrollX!==void 0?n=this.actualScrollX:n=0,this._scrollBar.ratioScrollY!==0?(s/=this._scrollBar.ratioScrollY,s/=u):this.actualScrollY!==void 0?s=this.actualScrollY:s=0}else this.actualScrollX!==void 0?n=this.actualScrollX:n=0,this.actualScrollY!==void 0?s=this.actualScrollY:s=0;const{scaleX:i,scaleY:a}=this._scene.getPrecisionScale();return{x:Z(n+this._paddingStartX,i),y:Z(s+this._paddingStartY,a)}}getTransformedScroll(){const t=this.scrollX,e=this.scrollY;return this.getActualScroll(t,e)}getScrollBar(){return this._scrollBar}updateScroll(t){this._preScrollX=this.scrollX,this._preScrollY=this.scrollY;const{scrollX:e,scrollY:n,actualScrollX:s,actualScrollY:i}=t;return e!==void 0&&(this.scrollX=e),n!==void 0&&(this.scrollY=n),s!==void 0&&(this.actualScrollX=s),i!==void 0&&(this.actualScrollY=i),this}getScrollBarTransForm(){const t=D1.create();return t.multiply(D1.create([1,0,0,1,this._left,this._top])),t}render(t,e=[],n=!1){var c;if(this.isActive===!1||this.width==null||this.height==null||this.width<=1||this.height<=1)return;const s=t||((c=this._scene.getEngine())==null?void 0:c.getCanvas().getContext()),i=this._scene.transform.clone();i.multiply(D1.create([1,0,0,1,-this.actualScrollX||0,-this.actualScrollY||0]));const a=s,o=i.getMatrix(),u=this.getScrollBarTransForm().getMatrix();if(a.save(),this._renderClipState){a.beginPath();const{scaleX:h,scaleY:f}=this._getBoundScale(o[0],o[3]);a.rect(this.left,this.top,(this.width||0)*h,(this.height||0)*f),a.clip()}a.transform(o[0],o[1],o[2],o[3],o[4],o[5]);const l=this._calViewportRelativeBounding();e.forEach(h=>{h.render(a,l)}),a.restore(),this._scrollBar&&n&&(a.save(),a.transform(u[0],u[1],u[2],u[3],u[4],u[5]),this._drawScrollbar(a),a.restore()),this._scrollRendered(),this._preViewportBound=l}getBounding(){return this._calViewportRelativeBounding()}getRelativeVector(t){const e=this.scene.transform.clone().invert(),n=this.getTransformedScroll();return e.applyPoint(t).add(P.FromArray([n.x,n.y]))}getAbsoluteVector(t){const e=this.scene.transform.clone(),n=this.getTransformedScroll();return e.applyPoint(t.subtract(P.FromArray([n.x,n.y])))}onMouseWheel(t,e){if(!this._scrollBar||this.isActive===!1)return;let n;if(t.inputIndex===W.MouseWheelX){const s=Math.abs(t.deltaX),i=this._scene.width,o=(this.width||1)/i*s;t.deltaX>0?n=this.scrollBy({x:o}):n=this.scrollBy({x:-o}),this._scene.getParent().classType===K.SCENE_VIEWER?n!=null&&n.isLimitedX||e.stopPropagation():this._isWheelPreventDefaultX?t.preventDefault():n!=null&&n.isLimitedX||t.preventDefault()}if(t.inputIndex===W.MouseWheelY){const s=Math.abs(t.deltaY),i=this._scene.height;let o=(this.height||1)/i*s;t.shiftKey?(o*=qo,t.deltaY>0?n=this.scrollBy({x:o}):n=this.scrollBy({x:-o}),this._scene.getParent().classType===K.SCENE_VIEWER?n!=null&&n.isLimitedX||e.stopPropagation():this._isWheelPreventDefaultX?t.preventDefault():n!=null&&n.isLimitedX||t.preventDefault()):(t.deltaY>0?n=this.scrollBy({y:o}):n=this.scrollBy({y:-o}),this._scene.getParent().classType===K.SCENE_VIEWER?n!=null&&n.isLimitedY||e.stopPropagation():this._isWheelPreventDefaultY?t.preventDefault():n!=null&&n.isLimitedY||t.preventDefault())}t.inputIndex,W.MouseWheelZ,this._scene.makeDirty(!0)}isHit(t){if(this.isActive===!1)return;const{width:e,height:n}=this._getViewPortSize();return t.x>=this.left&&t.x<=this.left+(e||0)&&t.y>=this.top&&t.y<=this.top+(n||0)}pickScrollBar(t){if(!this._scrollBar)return;const n=this.getScrollBarTransForm().invert().applyPoint(t);return this._scrollBar.pick(n)}openClip(){this._renderClipState=!0}closeClip(){this._renderClipState=!1}dispose(){var t;this.onMouseWheelObserver.clear(),this.onScrollAfterObserver.clear(),this.onScrollBeforeObserver.clear(),this.onScrollStopObserver.clear(),(t=this._scrollBar)==null||t.dispose(),this._scene.removeViewport(this._viewPortKey)}limitedScroll(){var i,a;if(!this._scrollBar)return;const t=(i=this._scrollBar)==null?void 0:i.limitX,e=(a=this._scrollBar)==null?void 0:a.limitY;let n=!0,s=!0;return this.scrollX<0?this.scrollX=0:this.scrollX>t?this.scrollX=t:n=!1,this.scrollY<0?this.scrollY=0:this.scrollY>e?this.scrollY=e:s=!1,{isLimitedX:n,isLimitedY:s}}_resizeCacheCanvasAndScrollBar(){const t=this.actualScrollX,e=this.actualScrollY,{width:n,height:s}=this._getViewPortSize(),i=(this._scene.width-this._paddingEndX)*this._scene.scaleX,a=(this._scene.height-this._paddingEndY)*this._scene.scaleY;if(this._scrollBar){this._scrollBar.resize(n,s,i,a);const{x:o,y:u}=this.getBarScroll(t,e);this.scrollTo({x:o,y:u})}}_getViewPortSize(){const t=this._scene.getParent(),{width:e,height:n}=t,{scaleX:s=1,scaleY:i=1}=this._scene;let a,o,u=this.left*s,l=this.top*i;return this._leftOrigin!=null&&(u=this._leftOrigin*s),this._topOrigin!=null&&(l=this._topOrigin*i),this._widthOrigin!=null?a=this._widthOrigin*s:(a=e-(u+this._right),this.width=a),this._heightOrigin!=null?o=this._heightOrigin*i:(o=n-(l+this._bottom),this.height=o),this._left=u,this._top=l,{width:a,height:o}}_scrollRendered(){this._preScrollX=this.scrollX,this._preScrollY=this.scrollY}_triggerScrollStop(t,e,n,s=!0){clearTimeout(this._scrollStopNum),this._scrollStopNum=setTimeout(()=>{var i,a;this.onScrollStopObserver.notifyObservers({viewport:this,scrollX:this.scrollX,scrollY:this.scrollY,x:e,y:n,actualScrollX:t.x,actualScrollY:t.y,limitX:(i=this._scrollBar)==null?void 0:i.limitX,limitY:(a=this._scrollBar)==null?void 0:a.limitY,isTrigger:s})},2)}_scroll(t,e,n=!0){var u,l,c,h;const{x:s,y:i}=e;if(this._scrollBar==null)return;s!==void 0&&(this._scrollBar.hasHorizonThumb()?t===1?this.scrollX+=s:this.scrollX=s:this.scrollX=0),i!==void 0&&(this._scrollBar.hasVerticalThumb()?t===1?this.scrollY+=i:this.scrollY=i:this.scrollY=0);const a=this.limitedScroll();this.onScrollBeforeObserver.notifyObservers({viewport:this,scrollX:this.scrollX,scrollY:this.scrollY,x:s,y:i,limitX:(u=this._scrollBar)==null?void 0:u.limitX,limitY:(l=this._scrollBar)==null?void 0:l.limitY,isTrigger:n}),this._scrollBar&&this._scrollBar.makeDirty(!0);const o=this.getTransformedScroll();return this.actualScrollX=o.x,this.actualScrollY=o.y,this.onScrollAfterObserver.notifyObservers({viewport:this,scrollX:this.scrollX,scrollY:this.scrollY,x:s,y:i,actualScrollX:o.x,actualScrollY:o.y,limitX:(c=this._scrollBar)==null?void 0:c.limitX,limitY:(h=this._scrollBar)==null?void 0:h.limitY,isTrigger:n}),this._triggerScrollStop(o,s,i,n),a}_calViewportRelativeBounding(){var C;if(this.isActive===!1)return{viewBound:{left:-1,top:-1,right:-1,bottom:-1},diffBounds:[],diffX:-1,diffY:-1,viewPortPosition:{top:0,left:0,bottom:0,right:0},viewPortKey:this.viewPortKey};const e=this._scene.transform.clone().getMatrix(),n=this._isRelativeX&&e[0]<1?e[0]:1,s=this._isRelativeY&&e[3]<1?e[3]:1,i=this._isRelativeX?1:e[0]<1?e[0]:1,a=this._isRelativeY?1:e[3]<1?e[3]:1;let o=this._width,u=this._height;const l=this._getViewPortSize();e[0]>1&&(o=l.width),e[3]>1&&(u=l.height);const c=this.left*n,h=((o||0)+this.left)*i,f=this.top*s,d=((u||0)+this.top)*a,D=this.getRelativeVector(P.FromArray([c,f])),m=this.getRelativeVector(P.FromArray([h,d])),v={top:D.y,left:D.x,right:m.x,bottom:m.y},F=(C=this._preViewportBound)==null?void 0:C.viewBound;return{viewBound:v,diffBounds:this._diffViewBound(v,F),diffX:((F==null?void 0:F.left)||0)-v.left,diffY:((F==null?void 0:F.top)||0)-v.top,viewPortPosition:{top:f,left:c,bottom:d,right:h},viewPortKey:this.viewPortKey}}_diffViewBound(t,e){if(e==null)return[t];const n={startRow:t.top,endRow:t.bottom,startColumn:t.left,endColumn:t.right},s={startRow:e.top,endRow:e.bottom,startColumn:e.left,endColumn:e.right};return Ko(n,s).map(a=>{const{startRow:o,endRow:u,startColumn:l,endColumn:c}=a;return{left:l,top:o,right:c,bottom:u}})}_drawScrollbar(t){if(!this._scrollBar)return;const e=this._scene.getParent();e.classType===K.SCENE_VIEWER?this._scrollBar.render(t):e.classType===K.ENGINE&&this._scrollBar.render(t)}_setWithAndHeight(t){this.top=(t==null?void 0:t.top)||0,this.left=(t==null?void 0:t.left)||0,this.bottom=(t==null?void 0:t.bottom)||0,this.right=(t==null?void 0:t.right)||0,g.Tools.isDefine(t==null?void 0:t.width)?(this.width=t==null?void 0:t.width,this._widthOrigin=this.width,this._isRelativeX=!1):(this.width=null,this._widthOrigin=null,this._isRelativeX=!0),g.Tools.isDefine(t==null?void 0:t.height)?(this.height=t==null?void 0:t.height,this._heightOrigin=this.height,this._isRelativeY=!1):(this.height=null,this._heightOrigin=null,this._isRelativeY=!0)}_getBoundScale(t,e){return t=this._isRelativeX&&t<1?1:t,e=this._isRelativeY&&e<1?1:e,{scaleX:t,scaleY:e}}}var yt=(r=>(r[r.page=0]="page",r[r.section=1]="section",r[r.column=2]="column",r[r.line=3]="line",r[r.divide=4]="divide",r[r.glyph=5]="glyph",r))(yt||{});const n2={page:0,section:1,column:2,line:3,divide:4,glyph:5};function Jn(r,t){return r.page>t.page?!1:r.page<t.page?!0:r.section>t.section?!1:r.section<t.section?!0:r.column>t.column?!1:r.column<t.column?!0:r.line>t.line?!1:r.line<t.line?!0:r.divide>t.divide?!1:r.divide<t.divide?!0:r.glyph>t.glyph?!1:(r.glyph<t.glyph,!0)}function r0(r,t){return Jn(r,t)?{start:r,end:t}:{start:t,end:r}}function Qn(r){const t=r.length;if(t===0)return;const e=r[0],n=r[t-1],s=r.length===1&&e.collapsed;return{startOffset:e.startOffset,endOffset:n.endOffset,collapsed:s}}function Jo(r,t,e,n){let s=n,i=n;for(let a=0;a<r.length;a++){const u=r[a].count;a<t&&(s+=u),a<e&&(i+=u)}return{startOffset:s,endOffset:i}}class e3{constructor(t,e){_(this,"_liquid",new We);_(this,"_currentStartState",{page:0,section:0,column:0,line:0,divide:0,glyph:0});_(this,"_currentEndState",{page:0,section:0,column:0,line:0,divide:0,glyph:0});this._documentOffsetConfig=t,this._docSkeleton=e}getRangePointData(t,e){const n=[],s=[],i=[];if(t==null||e==null)return{borderBoxPointGroup:n,contentBoxPointGroup:s,cursorList:i};const{start:a,end:o}=r0(t,e);return this._selectionIterator(a,o,(u,l,c,h,f,d)=>{const{lineHeight:D,marginTop:m,contentHeight:v}=d,{glyphGroup:F,st:C}=f,{x:S,y:B}=this._liquid;let w,x;const O=F[u],T=F[l],A=(O==null?void 0:O.left)||0,k=(O==null?void 0:O.width)||0,$=(T==null?void 0:T.left)||0,I=(T==null?void 0:T.width)||0,M=(O==null?void 0:O.glyphType)===T1.LIST,{startOffset:L,endOffset:U}=Jo(F,u,l,C),G=a.glyph===u&&c?a.isBack:!0,X=o.glyph===l&&h?o.isBack:!1,H=a===o;if(u===0&&l===F.length-1)w={startX:S+A+(M?k:0),startY:B,endX:S+$+I,endY:B+D},x={startX:S+A+(M?k:0),startY:B+m,endX:S+$+I,endY:B+m+v};else{const V=G&&!M;w={startX:S+A+(V?0:k),startY:B,endX:S+$+(X?0:I),endY:B+D},x={startX:S+A+(V?0:k),startY:B+m,endX:S+$+(X?0:I),endY:B+m+v}}n.push(this._pushToPoints(w)),s.push(this._pushToPoints(x)),i.push({startOffset:G?L:L+O.count,endOffset:X?U:U+T.count,collapsed:H})}),{borderBoxPointGroup:n,contentBoxPointGroup:s,cursorList:i}}_resetCurrentNodePositionState(){this._currentStartState={page:0,section:0,column:0,line:0,divide:0,glyph:0},this._currentEndState={page:0,section:0,column:0,line:0,divide:0,glyph:0}}_setNodePositionState(t=0,e,n,s){s===e?this._currentStartState[t]=1:this._currentStartState[t]=0,s===n?this._currentEndState[t]=2:this._currentEndState[t]=0}_checkPreviousNodePositionState(t,e=!0){let n=t,s;for(;n>=0;){const i=yt[n];let a;if(e?a=this._currentStartState[i]:a=this._currentEndState[i],a===void 0)return;if(s===void 0&&(s=a),a!==s)return 0;n--}return s}_getSelectionRuler(t,e,n,s,i){let a=0,o=s;const u=yt[t],l=yt[t+1];if(l===null||u===null)return{start_next:a,end_next:o};const c=e[u],h=n[u];this._setNodePositionState(u,c,h,i);const f=this._checkPreviousNodePositionState(t),d=this._checkPreviousNodePositionState(t,!1);return f===1&&(a=e[l]),d===2&&(o=n[l]),{start_next:a,end_next:o}}_pushToPoints(t){const{startX:e,startY:n,endX:s,endY:i}=t,a=[];return a.push({x:e,y:n}),a.push({x:s,y:n}),a.push({x:s,y:i}),a.push({x:e,y:i}),a.push({x:e,y:n}),a}_selectionIterator(t,e,n){const s=this._docSkeleton;if(!s)return[];this._liquid.reset();const i=s.getSkeletonData();if(i==null)return[];const a=i.pages,{page:o}=t,{page:u}=e;if(this._resetCurrentNodePositionState(),this._documentOffsetConfig==null)return[];const{pageLayoutType:l,pageMarginLeft:c,pageMarginTop:h}=this._documentOffsetConfig;for(let f=0;f<=o-1;f++){const d=a[f];this._liquid.translatePage(d,l,c,h)}for(let f=o;f<=u;f++){const d=a[f],D=d.sections,{start_next:m,end_next:v}=this._getSelectionRuler(n2.page,t,e,D.length-1,f);this._liquid.translateSave(),this._liquid.translatePagePadding(d);for(let F=m;F<=v;F++){const C=D[F],S=C.columns,{start_next:B,end_next:w}=this._getSelectionRuler(n2.section,t,e,S.length-1,F);this._liquid.translateSection(C);for(let x=B;x<=w;x++){const O=S[x],T=O.lines,{start_next:A,end_next:k}=this._getSelectionRuler(n2.column,t,e,T.length-1,x);this._liquid.translateColumn(O);for(let $=A;$<=k;$++){const I=T[$],{divides:M}=I,{start_next:L,end_next:U}=this._getSelectionRuler(n2.line,t,e,M.length-1,$);this._liquid.translateSave(),this._liquid.translateLine(I);for(let G=L;G<=U;G++){const X=M[G];this._liquid.translateSave(),this._liquid.translateDivide(X);const H=X.glyphGroup,{start_next:V,end_next:e1}=this._getSelectionRuler(n2.divide,t,e,H.length-1,G);let t1=!1,n1=!1;f===o&&F===m&&x===B&&$===A&&G===L&&(t1=!0),f===u&&F===v&&x===w&&$===k&&G===U&&(n1=!0),n&&n(V,e1,t1,n1,X,I,O,C,d),this._liquid.translateRestore()}this._liquid.translateRestore()}}}this._liquid.translateRestore(),this._liquid.translatePage(d,l,c,h)}}}const Qo="__TestSelectionRange__",eu="__TestSelectionAnchor__",t3=6,s0=500,tu=500,i0=1;function nu(r,t,e,n){const{startOffset:s,endOffset:i,style:a=D2}=t,o=e.findNodePositionByCharIndex(s),u=s!==i?e.findNodePositionByCharIndex(i):null,l=new Ft(r,n,e,o,u,a);return l.refresh(),l}function n3(r){const t=r[0],e=t[0],n=t[2],{x:s,y:i}=e,{x:a,y:o}=n;return{left:s,top:i,width:a-s,height:o-i}}class Ft{constructor(t,e,n,s,i,a=D2){_(this,"_current",!1);_(this,"_rangeShape");_(this,"_anchorShape");_(this,"_cursorList",[]);_(this,"_anchorBlinkTimer",null);this._scene=t,this._document=e,this._docSkeleton=n,this.anchorNodePosition=s,this.focusNodePosition=i,this.style=a,this._anchorBlink()}_anchorBlink(){setTimeout(()=>{this._anchorShape&&this._anchorShape.visible&&this.deactivateStatic()},s0),this._anchorBlinkTimer=setInterval(()=>{this._anchorShape&&this._anchorShape.visible&&(this.activeStatic(),setTimeout(()=>{this.deactivateStatic()},s0))},tu+s0)}get startOffset(){var s;const{startOffset:t}=(s=Qn(this._cursorList))!=null?s:{},e=this._docSkeleton.getViewModel().getBody();if(t==null||e==null)return t;const n=e.dataStream.length-2;return Math.min(n,t)}get endOffset(){var s;const{endOffset:t}=(s=Qn(this._cursorList))!=null?s:{},e=this._docSkeleton.getViewModel().getBody();if(t==null||e==null)return t;const n=e.dataStream.length-2;return Math.min(t,n)}get collapsed(){const{startOffset:t,endOffset:e}=this;return t!=null&&t===e}get startNodePosition(){if(this.anchorNodePosition==null)return null;if(this.focusNodePosition==null)return this.anchorNodePosition;const{start:t}=r0(this.anchorNodePosition,this.focusNodePosition);return t}get endNodePosition(){if(this.anchorNodePosition==null)return this.focusNodePosition;if(this.focusNodePosition==null)return null;const{end:t}=r0(this.anchorNodePosition,this.focusNodePosition);return t}get direction(){const{collapsed:t,anchorNodePosition:e,focusNodePosition:n}=this;return t||e==null||n==null?v2.NONE:Jn(e,n)?v2.FORWARD:v2.BACKWARD}getAnchor(){return this._anchorShape}activeStatic(){var t,e;(e=this._anchorShape)==null||e.setProps({stroke:((t=this.style)==null?void 0:t.strokeActive)||F1(g.COLORS.black,1)})}deactivateStatic(){var t,e;(e=this._anchorShape)==null||e.setProps({stroke:((t=this.style)==null?void 0:t.stroke)||F1(g.COLORS.black,0)})}isActive(){return this._current===!0}activate(){this._current=!0}deactivate(){this._current=!1}dispose(){var t,e;(t=this._rangeShape)==null||t.dispose(),this._rangeShape=null,(e=this._anchorShape)==null||e.dispose(),this._anchorShape=null,this._anchorBlinkTimer&&(clearInterval(this._anchorBlinkTimer),this._anchorBlinkTimer=null)}isIntersection(t){const{startOffset:e,endOffset:n}=this,{startOffset:s,endOffset:i}=t;return e==null||n==null||s==null||i==null?!1:e<=i&&n>=s}refresh(){var h,f;const{_document:t,_docSkeleton:e}=this,n=this.anchorNodePosition,s=this.focusNodePosition;if((h=this._anchorShape)==null||h.hide(),(f=this._rangeShape)==null||f.hide(),this._isEmpty())return;const i=t.getOffsetConfig(),{docsLeft:a,docsTop:o}=i,u=new e3(i,e);if(this._isCollapsed()){const{contentBoxPointGroup:d,cursorList:D}=u.getRangePointData(n,n);this._setCursorList(D),d.length>0&&this._createOrUpdateAnchor(d,a,o);return}const{borderBoxPointGroup:l,cursorList:c}=u.getRangePointData(n,s);this._setCursorList(c),l.length>0&&this._createOrUpdateRange(l,a,o)}_isEmpty(){return this.anchorNodePosition==null&&this.focusNodePosition==null}_isCollapsed(){const t=this.anchorNodePosition,e=this.focusNodePosition;if(t!=null&&e==null)return!0;if(t==null||e==null)return!1;const n=Object.keys(n2);for(const s of n){const i=t[s],a=e[s];if(i!==a)return!1}return t.isBack===e.isBack}_createOrUpdateRange(t,e,n){var a;if(this._rangeShape){this._rangeShape.translate(e,n),this._rangeShape.updatePointGroup(t),this._rangeShape.show();return}const s=.2,i=new bt(Qo+g.Tools.generateRandomId(t3),{pointsGroup:t,fill:((a=this.style)==null?void 0:a.fill)||F1(g.COLORS.black,s),left:e,top:n,evented:!1,debounceParentDirty:!1});this._rangeShape=i,this._scene.addObject(i,i0)}_createOrUpdateAnchor(t,e,n){var l,c;const s=n3(t),{left:i,top:a,height:o}=s;if(this._anchorShape){this._anchorShape.transformByState({left:i+e,top:a+n,height:o}),this._anchorShape.show();return}const u=new B1(eu+g.Tools.generateRandomId(t3),{left:i+e,top:a+n,height:o,strokeWidth:((l=this.style)==null?void 0:l.strokeWidth)||1,stroke:((c=this.style)==null?void 0:c.strokeActive)||F1(g.COLORS.black,1),evented:!1});this._anchorShape=u,this._scene.addObject(u,i0)}_setCursorList(t){t.length!==0&&(this._cursorList=t)}}function ru(r){const t=r.getBoundingClientRect(),e=document.body,n=document.documentElement,s=window.pageYOffset||n.scrollTop||e.scrollTop,i=window.pageXOffset||n.scrollLeft||e.scrollLeft,a=n.clientTop||e.clientTop,o=n.clientLeft||e.clientLeft,u=t.top+s-a,l=t.left+i-o;return{top:u,left:l}}var su=Object.defineProperty,iu=Object.getOwnPropertyDescriptor,au=(r,t,e,n)=>{for(var s=n>1?void 0:n?iu(t,e):t,i=r.length-1,a;i>=0;i--)(a=r[i])&&(s=(n?a(t,e,s):a(s))||s);return n&&s&&su(t,e,s),s},ou=(r,t)=>(e,n)=>t(e,n,r);function r3(r){const t=r==null?void 0:r.getCanvasElement();if(!t)return{left:0,top:0};const{top:e,left:n}=ru(t);return{left:n,top:e}}function s3(r){var u;const t=(u=r.parent)==null?void 0:u.parent,e=t==null?void 0:t.parent;if(t==null||e==null)return;const{paragraphIndex:n}=t,s=e.lines.filter(l=>l.paragraphIndex===n);let i=-1,a="",o=!1;for(const l of s)for(const c of l.divides)for(const h of c.glyphGroup)o||(i+=h.count),h===r&&(o=!0),a+=h.count>0?h.content:"";return{st:s[0].st,ed:n,content:a,nodeIndex:i}}y.TextSelectionRenderManager=class extends g.RxDisposable{constructor(e){super();_(this,"_onInputBefore$",new o1.BehaviorSubject(null));_(this,"onInputBefore$",this._onInputBefore$.asObservable());_(this,"_onKeydown$",new o1.BehaviorSubject(null));_(this,"onKeydown$",this._onKeydown$.asObservable());_(this,"_onInput$",new o1.BehaviorSubject(null));_(this,"onInput$",this._onInput$.asObservable());_(this,"_onCompositionstart$",new o1.BehaviorSubject(null));_(this,"onCompositionstart$",this._onCompositionstart$.asObservable());_(this,"_onCompositionupdate$",new o1.BehaviorSubject(null));_(this,"onCompositionupdate$",this._onCompositionupdate$.asObservable());_(this,"_onCompositionend$",new o1.BehaviorSubject(null));_(this,"onCompositionend$",this._onCompositionend$.asObservable());_(this,"_onSelectionStart$",new o1.BehaviorSubject(null));_(this,"onSelectionStart$",this._onSelectionStart$.asObservable());_(this,"_onPaste$",new o1.Subject);_(this,"onPaste$",this._onPaste$.asObservable());_(this,"_textSelectionInner$",new o1.BehaviorSubject(null));_(this,"textSelectionInner$",this._textSelectionInner$.asObservable());_(this,"_onFocus$",new o1.Subject);_(this,"onFocus$",this._onFocus$.asObservable());_(this,"_onBlur$",new o1.Subject);_(this,"onBlur$",this._onBlur$.asObservable());_(this,"_container");_(this,"_inputParent");_(this,"_input");_(this,"_moveObservers",[]);_(this,"_upObservers",[]);_(this,"_scrollTimers",[]);_(this,"_viewportScrollX",0);_(this,"_viewportScrollY",0);_(this,"_rangeList",[]);_(this,"_currentSegmentId","");_(this,"_selectionStyle",D2);_(this,"_isSelectionEnabled",!0);_(this,"_viewPortObserverMap",new Map);_(this,"_isIMEInputApply",!1);_(this,"_activeViewport");_(this,"_docSkeleton");_(this,"_scene");_(this,"_document");this._logService=e,this._initDOM()}__getEditorContainer(){return this._container}getViewPort(){return this._activeViewport}setSegment(e){this._currentSegmentId=e}setStyle(e=D2){this._selectionStyle=e}resetStyle(){this.setStyle()}enableSelection(){this._isSelectionEnabled=!0}disableSelection(){this._isSelectionEnabled=!1}addTextRanges(e,n=!0){const{_scene:s,_docSkeleton:i}=this;for(const a of e){const o=nu(s,a,i,this._document);this._add(o)}this._textSelectionInner$.next({textRanges:this._getAllTextRanges(),segmentId:this._currentSegmentId,style:this._selectionStyle,isEditing:n}),this._updateInputPosition()}sync(){this._updateInputPosition()}activate(e,n){this._container.style.left=`${e}px`,this._container.style.top=`${n}px`,this._container.style.zIndex="1000",this.focus()}hasFocus(){return document.activeElement===this._input}focus(){this._input.focus()}blur(){this._input.blur()}deactivate(){this._container.style.left="0px",this._container.style.top="0px"}changeRuntime(e,n,s){e!==this._docSkeleton&&this.removeAllTextRanges(),this._docSkeleton=e,this._scene=n,this._activeViewport=n.getViewports()[0],this._document=s,this._attachScrollEvent(this._activeViewport)}handleDblClick(e){if(!this._scene||!this._isSelectionEnabled)return;const{offsetX:n,offsetY:s}=e,i=this._findNodeByCoord(n,s);if(i==null||i.node==null)return;const a=s3(i.node);if(a==null)return;const{content:o,st:u,nodeIndex:l}=a;if(l===-1||Intl.Segmenter==null)return;const h=new Intl.Segmenter(void 0,{granularity:"word"}).segment(o);let f=Number.NEGATIVE_INFINITY,d=Number.NEGATIVE_INFINITY;for(const{segment:D,index:m,isWordLike:v}of h)if(m<=l&&l<m+D.length&&v){f=m+u,d=m+u+D.length;break}if(Number.isFinite(f)&&Number.isFinite(d)){this.removeAllTextRanges();const D=[{startOffset:f,endOffset:d}];this.addTextRanges(D,!1)}}handleTripleClick(e){if(!this._scene||!this._isSelectionEnabled)return;const{offsetX:n,offsetY:s}=e,i=this._findNodeByCoord(n,s);if(i==null||i.node==null)return;const a=s3(i.node);if(a==null)return;this.removeAllTextRanges();const{st:o,ed:u}=a,l=[{startOffset:o,endOffset:u,collapsed:o===u}];this.addTextRanges(l,!1)}setCursorManually(e,n){const s=this._findNodeByCoord(e,n),i=this._getNodePosition(s);if(i==null){this._removeAllTextRanges();return}(s==null?void 0:s.node.streamType)===g.DataStreamTreeTokenType.PARAGRAPH&&(i.isBack=!0),this._updateTextRangeAnchorPosition(i),this._activeSelectionRefresh()}eventTrigger(e){var d;if(!this._scene||!this._isSelectionEnabled)return;const n=this._scene,{offsetX:s,offsetY:i}=e,a=this._findNodeByCoord(s,i),o=this._getNodePosition(a);if(o==null){this._removeAllTextRanges();return}if((a==null?void 0:a.node.streamType)===g.DataStreamTreeTokenType.PARAGRAPH&&(o.isBack=!0),e.shiftKey&&this._getActiveRangeInstance())this._updateActiveRangeFocusPosition(o);else if(e.ctrlKey||this._isEmpty()){const D=new Ft(n,this._document,this._docSkeleton,o);this._addTextRange(D)}else this._updateTextRangeAnchorPosition(o);this._activeSelectionRefresh(),n.disableEvent();const u=e2.create(n);this._scrollTimers.push(u),u.startScroll(s,i);const{scrollX:l,scrollY:c}=He(u);this._viewportScrollX=l,this._viewportScrollY=c,this._onSelectionStart$.next((d=this._getActiveRangeInstance())==null?void 0:d.startNodePosition);let h=s,f=i;this._moveObservers.push(n.onPointerMoveObserver.add(D=>{const{offsetX:m,offsetY:v}=D;n.setCursor(f1.TEXT),!(Math.sqrt((m-h)**2+(v-f)**2)<3)&&(this._moving(m,v),h=m,f=v)})),this._upObservers.push(n.onPointerUpObserver.add(()=>{this._moveObservers.forEach(D=>{D==null||D.dispose()}),this._upObservers.forEach(D=>{D==null||D.dispose()}),this._moveObservers=[],this._upObservers=[],n.enableEvent(),this._textSelectionInner$.next({textRanges:this._getAllTextRanges(),segmentId:this._currentSegmentId,style:this._selectionStyle,isEditing:!1}),this._scrollTimers.forEach(D=>{D==null||D.dispose()}),this._scrollTimers=[],this._updateInputPosition()}))}removeAllTextRanges(){this._removeAllTextRanges(),this.deactivate()}_getAllTextRanges(){return this._rangeList}_getActiveRange(){const e=this._rangeList.find(l=>l.isActive());if(e==null)return null;const{startOffset:n,endOffset:s,collapsed:i,startNodePosition:a,endNodePosition:o,direction:u}=e;return n==null||s==null?null:{startOffset:n,endOffset:s,collapsed:i,startNodePosition:a,endNodePosition:o,direction:u,segmentId:this._currentSegmentId,style:this._selectionStyle}}_add(e){e!=null&&(this._addTextRange(e),e.refresh())}_getActiveRangeInstance(){return this._rangeList.find(e=>e.isActive())}dispose(){super.dispose(),this._detachEvent(),this._container.remove()}_initDOM(){const e=document.createElement("div");e.style.position="fixed",e.style.left="0px",e.style.top="0px";const n=document.createElement("div"),s=document.createElement("div");n.appendChild(s),e.appendChild(n),this._container=e,this._inputParent=n,this._input=s,this._initInput(),this._initInputEvents(),document.body.appendChild(e)}_initInput(){this._inputParent.style.cssText=`
|
|
2
2
|
position:absolute;
|
|
3
3
|
height:1px;
|
|
4
4
|
width:1px;
|
|
@@ -14,4 +14,4 @@
|
|
|
14
14
|
caret-color: transparent;
|
|
15
15
|
white-space: pre-wrap;
|
|
16
16
|
user-select: text;
|
|
17
|
-
`}_getNodePosition(e){var u;if(e==null)return;const{node:n,ratioX:s}=e,i=(u=this._docSkeleton)==null?void 0:u.findPositionByGlyph(n);if(i==null)return;const o=s<.5;return{...i,isBack:o}}_interactTextRange(e){const n=[];let s=!1;this._rangeList.forEach(i=>{if(i===e)return!0;e.isIntersection(i)?(s=!0,i.dispose()):n.push(i)}),s&&(n.push(e),this._rangeList=n)}_removeAllTextRanges(){this._rangeList.forEach(e=>{e.dispose()}),this._rangeList=[]}_deactivateAllTextRanges(){this._rangeList.forEach(e=>{e.deactivate()})}_addTextRange(e){this._deactivateAllTextRanges(),e.activate(),this._rangeList.push(e)}_updateTextRangeAnchorPosition(e){if(!this._scene)return;let n=this._rangeList.pop();n||(n=new Ct(this._scene,this._document,this._docSkeleton,e)),this._removeAllTextRanges(),n.activate(),n.anchorNodePosition=e,n.focusNodePosition=null,this._rangeList=[n]}_updateActiveRangeFocusPosition(e){if(!this._scene){this._logService.error("[TextSelectionRenderManager] _updateActiveRangeFocusPosition: scene is null");return}const n=this._getActiveRangeInstance();if(n==null||n.anchorNodePosition==null){this._logService.error("[TextSelectionRenderManager] _updateActiveRangeFocusPosition: active range has no anchor");return}this._removeAllTextRanges(),n.activate(),n.focusNodePosition=e,this.deactivate(),this._rangeList=[n]}_isEmpty(){return this._rangeList.length===0}_getCanvasOffset(){var n;const e=(n=this._scene)==null?void 0:n.getEngine();return e3(e)}_updateInputPosition(){const e=this._getActiveRangeInstance(),n=e==null?void 0:e.getAnchor();if(!n||n&&!n.visible||this._activeViewport==null){this.focus();return}const{left:s,top:i}=n,a=this._activeViewport.getAbsoluteVector(P.FromArray([s,i])),{x:o,y:u}=a;let{left:l,top:c}=this._getCanvasOffset();l+=o,c+=u,this.activate(l,c)}_moving(e,n){var o,u;if(this._docSkeleton==null)return;const s=this._findNodeByCoord(e,n),i=this._getNodePosition(s);if(!i)return;const a=this._getActiveRangeInstance();a&&(a.focusNodePosition=i,a.refresh(),this.deactivate(),this._interactTextRange(a),(u=(o=this._scene)==null?void 0:o.getEngine())==null||u.setRemainCapture())}_attachScrollEvent(e){if(e==null||this._docSkeleton==null)return;const s=`${this._docSkeleton.getViewModel().getDataModel().getUnitId()}_${e.viewPortKey}`;if(this._viewPortObserverMap.has(s))return;const i=e.onScrollBeforeObserver.add(o=>{if(!o.viewport)return;const l=this._getActiveRangeInstance();l==null||l.activeStatic()}),a=e.onScrollStopObserver.add(o=>{const u=o.viewport;if(!u)return;const l=u.getBounding(),c=this._getActiveRangeInstance(),h=c==null?void 0:c.getAnchor();if(!(!h||h&&!h.visible)){if(l){const{left:f,top:_,right:p,bottom:m}=l.viewBound;if(h.left<f||h.left>p||h.top<_||h.top>m){c==null||c.deactivateStatic();return}}this._updateInputPosition()}});this._viewPortObserverMap.set(s,{scrollBefore:i,scrollStop:a})}_initInputEvents(){this.disposeWithMe(u1.fromEvent(this._input,"keydown").subscribe(e=>{this._isIMEInputApply||this._eventHandle(e,n=>{this._onKeydown$.next(n)})})),this.disposeWithMe(u1.fromEvent(this._input,"input").subscribe(e=>{this._isIMEInputApply||this._eventHandle(e,n=>{this._onInputBefore$.next(n),this._onInput$.next(n)})})),this.disposeWithMe(u1.fromEvent(this._input,"compositionstart").subscribe(e=>{this._isIMEInputApply=!0,this._eventHandle(e,n=>{this._onCompositionstart$.next(n)})})),this.disposeWithMe(u1.fromEvent(this._input,"compositionend").subscribe(e=>{this._isIMEInputApply=!1,this._eventHandle(e,n=>{this._onCompositionend$.next(n)})})),this.disposeWithMe(u1.fromEvent(this._input,"compositionupdate").subscribe(e=>{this._eventHandle(e,n=>{this._onInputBefore$.next(n),this._onCompositionupdate$.next(n)})})),this.disposeWithMe(u1.fromEvent(this._input,"paste").subscribe(e=>{this._eventHandle(e,n=>{this._onPaste$.next(n)})})),this.disposeWithMe(u1.fromEvent(this._input,"focus").subscribe(e=>{this._eventHandle(e,n=>{this._onFocus$.next(n)})})),this.disposeWithMe(u1.fromEvent(this._input,"blur").subscribe(e=>{this._eventHandle(e,n=>{this._onBlur$.next(n)})}))}_eventHandle(e,n){const s=this._input.textContent||"";this._input.innerHTML="";const i=this._getActiveRange(),a=this._getAllTextRanges();n({event:e,content:s,activeRange:i,rangeList:a})}_getTransformCoordForDocumentOffset(e,n){const{documentTransform:s}=this._document.getOffsetConfig();if(this._activeViewport==null||s==null)return;const i=this._activeViewport.getRelativeVector(P.FromArray([e,n]));if(i)return s.clone().invert().applyPoint(i)}_findNodeByCoord(e,n){var u;const s=this._getTransformCoordForDocumentOffset(e,n);if(s==null)return;const{pageLayoutType:i=V1.VERTICAL,pageMarginLeft:a,pageMarginTop:o}=this._document.getOffsetConfig();return(u=this._docSkeleton)==null?void 0:u.findNodeByCoord(s,i,a,o)}_detachEvent(){this._onInputBefore$.complete(),this._onKeydown$.complete(),this._onInput$.complete(),this._onCompositionstart$.complete(),this._onCompositionupdate$.complete(),this._onCompositionend$.complete(),this._onSelectionStart$.complete()}_activeSelectionRefresh(){if(this._docSkeleton==null)return;const e=this._getActiveRangeInstance();e==null||e.refresh()}},y.TextSelectionRenderManager=Qo([eu(0,g.ILogService)],y.TextSelectionRenderManager);const tu=E1.createIdentifier("univer.doc.text-selection-render-manager");y.BASE_OBJECT_ARRAY=j2,y.BORDER_TYPE=q,y.Background=Z0,y.BaseObject=ne,y.Border=J0,y.BreakType=Ne,y.CHECK_OBJECT_ARRAY=jn,y.CIRCLE_OBJECT_ARRAY=Yn,y.COLOR_BLACK_RGB=he,y.CURSOR_TYPE=d1,y.Canvas=Ge,y.CanvasRenderMode=Vt,y.Checkbox=s0,y.Circle=t0,y.ColumnHeaderLayout=Q0,y.ComponentExtension=Kt,y.Control=Mo,y.Custom=On,y.CustomObject=Co,y.DEFAULT_DOCUMENT_FONTSIZE=d0,y.DEFAULT_FONTFACE_PLANE=i2,y.DEFAULT_MEASURE_TEXT=b0,y.DEFAULT_OFFSET_SPACING=Bt,y.DEFAULT_SELECTION_LAYER_INDEX=u3,y.DEFAULT_SKELETON_FOOTER=o3,y.DEFAULT_SKELETON_HEADER=a3,y.DOCUMENT_CONTEXT_CLIP_TYPE=_0,y.DeviceInputEventType=z0,y.DeviceType=R1,y.DocumentSkeleton=Je,y.DocumentViewModel=be,y.Documents=I2,y.DocumentsSpanAndLineExtensionRegistry=ze,y.Drawing=Po,y.EMOJI_REG=G2,y.EVENT_TYPE=X1,y.Engine=mt,y.EventConstants=K2,y.FIX_ONE_PIXEL_BLUR_OFFSET=g1,y.Font=Tn,y.FontCache=ee,y.GlyphType=A1,y.Group=Mn,y.HitCanvas=lr,y.INITIAL_MATRIX=V2,y.INITIAL_Path2=X0,y.IRenderManagerService=Xn,y.IRenderingEngine=Wn,y.ITextSelectionRenderManager=tu,y.IsSafari=T0,y.LINK_VIEW_PORT_TYPE=h0,y.Layer=Pn,y.LineType=_2,y.Liquid=m2,y.MAXIMUM_ROW_HEIGHT=g0,y.MIDDLE_CELL_POS_MAGIC_NUMBER=xt,y.Marker=Bn,y.NORMAL_TEXT_SELECTION_PLUGIN_STYLE=g2,y.NodePositionConvertToCursor=Zn,y.ORIENTATION_TYPE=a2,y.PATH_OBJECT_ARRAY=$n,y.PageLayoutType=V1,y.Path=x1,y.Path2=W0,y.PerformanceMonitor=Y0,y.Picture=bt,y.PointerInput=W,y.RANGE_DIRECTION=D2,y.RECT_OBJECT_ARRAY=Un,y.REGULAR_POLYGON_OBJECT_ARRAY=Vn,y.RENDER_CLASS_TYPE=K,y.RENDER_RAW_FORMULA_KEY=Sn,y.RICHTEXT_OBJECT_ARRAY=n0,y.Rect=L1,y.RegularPolygon=yt,y.RenderComponent=jt,y.RenderUnit=Gn,y.RichText=No,y.RollingAverage=V0,y.RowHeaderLayout=xn,y.SHAPE_OBJECT_ARRAY=Rn,y.SHAPE_TYPE=Tt,y.SHEET_EXTENSION_TYPE=q0,y.SLIDE_NAVIGATION_KEY=kn,y.Scene=Hn,y.SceneCanvas=ur,y.SceneViewer=Q6,y.ScrollBar=r0,y.ScrollTimer=Qe,y.ScrollTimerType=Nn,y.Selection=Ho,y.Shape=$e,y.SheetColumnHeaderExtensionRegistry=Zt,y.SheetComponent=Jt,y.SheetExtension=de,y.SheetRowHeaderExtensionRegistry=qt,y.ShowGridlinesState=wn,y.SkeletonType=M0,y.Slide=Fo,y.Spreadsheet=yo,y.SpreadsheetColumnHeader=cr,y.SpreadsheetExtensionRegistry=Se,y.SpreadsheetHeader=Qt,y.SpreadsheetRowHeader=ao,y.TEXT_RANGE_LAYER_INDEX=o0,y.TRANSFORM_CHANGE_OBSERVABLE_TYPE=h1,y.TextRange=Ct,y.ThinEngine=Ln,y.Transform=m1,y.UNIVER_GLOBAL_DEFAULT_FONT_FAMILY=O0,y.UNIVER_GLOBAL_DEFAULT_FONT_SIZE=B0,y.UniverPrintingContext=K0,y.UniverRenderingContext=j0,y.UniverRenderingContext2D=Yt,y.UniverRenderingContextWebGL=ar,y.UniverRenderingContextWebGPU=or,y.VERTICAL_ROTATE_ANGLE=S1,y.Vector2=P,y.Viewport=Xo,y.calculateRectRotate=Ue,y.cancelRequestFrame=E0,y.checkStyle=q3,y.clearLineByBorderType=sr,y.convertTextRotation=p2,y.createCanvasElement=wt,y.createImageElement=B3,y.degToRad=Y1,y.drawDiagonalLineByBorderType=N0,y.drawLineByBorderType=Gt,y.fixLineWidthByScale=Z,y.generateRandomKey=x0,y.getAnchorBounding=Qn,y.getCanvasOffsetByEngine=e3,y.getCellByIndex=Pe,y.getCellInfoInMergeData=d2,y.getCellPositionByIndex=Ce,y.getCharSpaceApply=v2,y.getColor=F1,y.getCurrentScrollXY=He,y.getDPI=f2,y.getDevicePixelRatio=Ht,y.getDocsSkeletonPageSize=k2,y.getFontStyleString=l2,y.getLineOffset=U0,y.getLineWidth=Xt,y.getLineWith=H0,y.getNumberUnitValue=Te,y.getParagraphByGlyph=P0,y.getPointerPrefix=At,y.getRotateOffsetAndFarthestHypotenuse=Wt,y.getRotateOrientation=G0,y.getScale=Pt,y.getSizeForDom=I0,y.getTranslateInSpreadContextWithPixelRatio=ir,y.getValueType=fe,y.hasAllLatin=P3,y.hasArabic=It,y.hasBasicLatin=N3,y.hasCJK=h2,y.hasCJKPunctuation=kt,y.hasCJKText=c2,y.hasLatinExtendedA=H3,y.hasLatinExtendedB=G3,y.hasLatinOneSupplement=U3,y.hasListGlyph=J3,y.hasSpace=w0,y.hasTibetan=Lt,y.hasUnMergedCellInRow=$0,y.injectStyle=K3,y.isArray=R3,y.isCjkCenterAlignedPunctuation=Mt,y.isCjkLeftAlignedPunctuation=X2,y.isCjkRightAlignedPunctuation=W2,y.isDate=w3,y.isFirstGlyph=tr,y.isFunction=Rt,y.isIndentByGlyph=Q3,y.isLastGlyph=er,y.isNumber=$3,y.isObject=k3,y.isPlaceholderOrSpace=nr,y.isRectIntersect=k0,y.isRegExp=A3,y.isSameLine=rr,y.isString=$t,y.mergeInfoOffset=Nt,y.pixelToPt=Z3,y.precisionTo=H2,y.ptToMM=V3,y.ptToPixel=Ut,y.ptToPx=W3,y.pxToInch=j3,y.pxToNum=Ee,y.pxToPt=Y3,y.radToDeg=S0,y.requestNewFrame=u2,y.setLineType=zt,y.startWithEmoji=z2,y.toPx=te,Object.defineProperty(y,Symbol.toStringTag,{value:"Module"})});
|
|
17
|
+
`}_getNodePosition(e){var u;if(e==null)return;const{node:n,ratioX:s}=e,i=(u=this._docSkeleton)==null?void 0:u.findPositionByGlyph(n);if(i==null)return;const o=s<.5;return{...i,isBack:o}}_interactTextRange(e){const n=[];let s=!1;this._rangeList.forEach(i=>{if(i===e)return!0;e.isIntersection(i)?(s=!0,i.dispose()):n.push(i)}),s&&(n.push(e),this._rangeList=n)}_removeAllTextRanges(){this._rangeList.forEach(e=>{e.dispose()}),this._rangeList=[]}_deactivateAllTextRanges(){this._rangeList.forEach(e=>{e.deactivate()})}_addTextRange(e){this._deactivateAllTextRanges(),e.activate(),this._rangeList.push(e)}_updateTextRangeAnchorPosition(e){if(!this._scene)return;let n=this._rangeList.pop();n||(n=new Ft(this._scene,this._document,this._docSkeleton,e)),this._removeAllTextRanges(),n.activate(),n.anchorNodePosition=e,n.focusNodePosition=null,this._rangeList=[n]}_updateActiveRangeFocusPosition(e){if(!this._scene){this._logService.error("[TextSelectionRenderManager] _updateActiveRangeFocusPosition: scene is null");return}const n=this._getActiveRangeInstance();if(n==null||n.anchorNodePosition==null){this._logService.error("[TextSelectionRenderManager] _updateActiveRangeFocusPosition: active range has no anchor");return}this._removeAllTextRanges(),n.activate(),n.focusNodePosition=e,this.deactivate(),this._rangeList=[n]}_isEmpty(){return this._rangeList.length===0}_getCanvasOffset(){var n;const e=(n=this._scene)==null?void 0:n.getEngine();return r3(e)}_updateInputPosition(){const e=this._getActiveRangeInstance(),n=e==null?void 0:e.getAnchor();if(!n||n&&!n.visible||this._activeViewport==null){this.focus();return}const{left:s,top:i}=n,a=this._activeViewport.getAbsoluteVector(P.FromArray([s,i])),{x:o,y:u}=a;let{left:l,top:c}=this._getCanvasOffset();l+=o,c+=u,this.activate(l,c)}_moving(e,n){var o,u;if(this._docSkeleton==null)return;const s=this._findNodeByCoord(e,n),i=this._getNodePosition(s);if(!i)return;const a=this._getActiveRangeInstance();a&&(a.focusNodePosition=i,a.refresh(),this.deactivate(),this._interactTextRange(a),(u=(o=this._scene)==null?void 0:o.getEngine())==null||u.setRemainCapture())}_attachScrollEvent(e){if(e==null||this._docSkeleton==null)return;const s=`${this._docSkeleton.getViewModel().getDataModel().getUnitId()}_${e.viewPortKey}`;if(this._viewPortObserverMap.has(s))return;const i=e.onScrollBeforeObserver.add(o=>{if(!o.viewport)return;const l=this._getActiveRangeInstance();l==null||l.activeStatic()}),a=e.onScrollStopObserver.add(o=>{const u=o.viewport;if(!u)return;const l=u.getBounding(),c=this._getActiveRangeInstance(),h=c==null?void 0:c.getAnchor();if(!(!h||h&&!h.visible)){if(l){const{left:f,top:d,right:D,bottom:m}=l.viewBound;if(h.left<f||h.left>D||h.top<d||h.top>m){c==null||c.deactivateStatic();return}}this._updateInputPosition()}});this._viewPortObserverMap.set(s,{scrollBefore:i,scrollStop:a})}_initInputEvents(){this.disposeWithMe(o1.fromEvent(this._input,"keydown").subscribe(e=>{this._isIMEInputApply||this._eventHandle(e,n=>{this._onKeydown$.next(n)})})),this.disposeWithMe(o1.fromEvent(this._input,"input").subscribe(e=>{this._isIMEInputApply||this._eventHandle(e,n=>{this._onInputBefore$.next(n),this._onInput$.next(n)})})),this.disposeWithMe(o1.fromEvent(this._input,"compositionstart").subscribe(e=>{this._isIMEInputApply=!0,this._eventHandle(e,n=>{this._onCompositionstart$.next(n)})})),this.disposeWithMe(o1.fromEvent(this._input,"compositionend").subscribe(e=>{this._isIMEInputApply=!1,this._eventHandle(e,n=>{this._onCompositionend$.next(n)})})),this.disposeWithMe(o1.fromEvent(this._input,"compositionupdate").subscribe(e=>{this._eventHandle(e,n=>{this._onInputBefore$.next(n),this._onCompositionupdate$.next(n)})})),this.disposeWithMe(o1.fromEvent(this._input,"paste").subscribe(e=>{this._eventHandle(e,n=>{this._onPaste$.next(n)})})),this.disposeWithMe(o1.fromEvent(this._input,"focus").subscribe(e=>{this._eventHandle(e,n=>{this._onFocus$.next(n)})})),this.disposeWithMe(o1.fromEvent(this._input,"blur").subscribe(e=>{this._eventHandle(e,n=>{this._onBlur$.next(n)})}))}_eventHandle(e,n){const s=this._input.textContent||"";this._input.innerHTML="";const i=this._getActiveRange(),a=this._getAllTextRanges();n({event:e,content:s,activeRange:i,rangeList:a})}_getTransformCoordForDocumentOffset(e,n){const{documentTransform:s}=this._document.getOffsetConfig();if(this._activeViewport==null||s==null)return;const i=this._activeViewport.getRelativeVector(P.FromArray([e,n]));if(i)return s.clone().invert().applyPoint(i)}_findNodeByCoord(e,n){var u;const s=this._getTransformCoordForDocumentOffset(e,n);if(s==null)return;const{pageLayoutType:i=K1.VERTICAL,pageMarginLeft:a,pageMarginTop:o}=this._document.getOffsetConfig();return(u=this._docSkeleton)==null?void 0:u.findNodeByCoord(s,i,a,o)}_detachEvent(){this._onInputBefore$.complete(),this._onKeydown$.complete(),this._onInput$.complete(),this._onCompositionstart$.complete(),this._onCompositionupdate$.complete(),this._onCompositionend$.complete(),this._onSelectionStart$.complete()}_activeSelectionRefresh(){if(this._docSkeleton==null)return;const e=this._getActiveRangeInstance();e==null||e.refresh()}},y.TextSelectionRenderManager=au([ou(0,g.ILogService)],y.TextSelectionRenderManager);const uu=C1.createIdentifier("univer.doc.text-selection-render-manager"),lu="rgba(198, 198, 198, 1)",cu="rgba(255, 255, 255, 1)";class a0 extends kn{constructor(e,n,s){super(e,n,s);_(this,"_drawLiquid");this._drawLiquid=new We,this.makeDirty(!0)}static create(e,n,s){return new a0(e,n,s)}draw(e,n){var u;const s=(u=this.getSkeleton())==null?void 0:u.getSkeletonData();if(s==null)return;this._drawLiquid.reset();const{pages:i}=s;let a=0,o=0;for(let l=0,c=i.length;l<c;l++){const h=i[l];if(this.isSkipByDiffBounds(h,a,o,n)){const{x:S,y:B}=this._drawLiquid.translatePage(h,this.pageLayoutType,this.pageMarginLeft,this.pageMarginTop);o+=S,a+=B;continue}const{width:f,pageWidth:d,height:D,pageHeight:m}=h;e.save(),e.translate(o-.5,a-.5);const v={width:d!=null?d:f,height:m!=null?m:D,strokeWidth:1,stroke:lu,fill:cu,zIndex:3};B1.drawWith(e,v),e.restore();const{x:F,y:C}=this._drawLiquid.translatePage(h,this.pageLayoutType,this.pageMarginLeft,this.pageMarginTop);o+=F,a+=C}}changeSkeleton(e){return this.setSkeleton(e),this}_draw(e,n){this.draw(e,n)}}y.BASE_OBJECT_ARRAY=j2,y.BORDER_TYPE=q,y.Background=q0,y.BaseObject=ie,y.Border=Z0,y.BreakType=Ne,y.CHECK_OBJECT_ARRAY=Zn,y.CIRCLE_OBJECT_ARRAY=Kn,y.COLOR_BLACK_RGB=he,y.CURSOR_TYPE=f1,y.Canvas=Ge,y.CanvasRenderMode=Xt,y.Checkbox=n0,y.Circle=Q6,y.ColumnHeaderLayout=J0,y.ComponentExtension=Yt,y.Control=Wo,y.Custom=Rn,y.CustomObject=Ro,y.DEFAULT_DOCUMENT_FONTSIZE=f0,y.DEFAULT_FONTFACE_PLANE=o2,y.DEFAULT_MEASURE_TEXT=m0,y.DEFAULT_OFFSET_SPACING=St,y.DEFAULT_SELECTION_LAYER_INDEX=u3,y.DEFAULT_SKELETON_FOOTER=o3,y.DEFAULT_SKELETON_HEADER=a3,y.DOCUMENT_CONTEXT_CLIP_TYPE=d0,y.DeviceInputEventType=G0,y.DeviceType=x1,y.DocBackground=a0,y.DocumentSkeleton=Qe,y.DocumentViewModel=be,y.Documents=L2,y.DocumentsSpanAndLineExtensionRegistry=ze,y.Drawing=Yo,y.EMOJI_REG=H2,y.EVENT_TYPE=Y1,y.Engine=vt,y.EventConstants=V2,y.FIX_ONE_PIXEL_BLUR_OFFSET=g1,y.Font=Bn,y.FontCache=re,y.GlyphType=T1,y.Group=Un,y.HitCanvas=lr,y.INITIAL_MATRIX=Y2,y.INITIAL_Path2=z0,y.IRenderManagerService=jn,y.IRenderingEngine=Vn,y.ITextSelectionRenderManager=uu,y.IsSafari=S0,y.LINK_VIEW_PORT_TYPE=c0,y.Layer=Hn,y.LineType=p2,y.Liquid=We,y.MAXIMUM_ROW_HEIGHT=_0,y.MIDDLE_CELL_POS_MAGIC_NUMBER=Et,y.Marker=xn,y.NORMAL_TEXT_SELECTION_PLUGIN_STYLE=D2,y.NodePositionConvertToCursor=e3,y.ORIENTATION_TYPE=u2,y.PATH_OBJECT_ARRAY=Ln,y.PageLayoutType=K1,y.Path=w1,y.Path2=X0,y.PerformanceMonitor=W0,y.Picture=mt,y.PointerInput=W,y.RANGE_DIRECTION=v2,y.RECT_OBJECT_ARRAY=zn,y.REGULAR_POLYGON_OBJECT_ARRAY=qn,y.RENDER_CLASS_TYPE=K,y.RENDER_RAW_FORMULA_KEY=wn,y.RICHTEXT_OBJECT_ARRAY=e0,y.Rect=B1,y.RegularPolygon=bt,y.RenderComponent=Wt,y.RenderUnit=Wn,y.RichText=jo,y.RollingAverage=Y0,y.RowHeaderLayout=On,y.SHAPE_OBJECT_ARRAY=In,y.SHAPE_TYPE=Ct,y.SHEET_EXTENSION_TYPE=K0,y.SLIDE_NAVIGATION_KEY=Pn,y.Scene=Xn,y.SceneCanvas=ur,y.SceneViewer=Z6,y.ScrollBar=t0,y.ScrollTimer=e2,y.ScrollTimerType=Gn,y.Shape=Ae,y.SheetColumnHeaderExtensionRegistry=Vt,y.SheetComponent=Kt,y.SheetExtension=de,y.SheetRowHeaderExtensionRegistry=jt,y.ShowGridlinesState=An,y.SkeletonType=L0,y.Slide=xo,y.Spreadsheet=Oo,y.SpreadsheetColumnHeader=cr,y.SpreadsheetExtensionRegistry=Ce,y.SpreadsheetHeader=qt,y.SpreadsheetRowHeader=po,y.TEXT_RANGE_LAYER_INDEX=i0,y.TRANSFORM_CHANGE_OBSERVABLE_TYPE=l1,y.TextRange=Ft,y.ThinEngine=Nn,y.Transform=D1,y.UNIVER_GLOBAL_DEFAULT_FONT_FAMILY=B0,y.UNIVER_GLOBAL_DEFAULT_FONT_SIZE=w0,y.UniverPrintingContext=V0,y.UniverRenderingContext=j0,y.UniverRenderingContext2D=zt,y.UniverRenderingContextWebGL=ar,y.UniverRenderingContextWebGPU=or,y.VERTICAL_ROTATE_ANGLE=E1,y.Vector2=P,y.Viewport=Zo,y.calculateRectRotate=Ue,y.cancelRequestFrame=C0,y.checkStyle=q3,y.clearLineByBorderType=sr,y.convertTextRotation=m2,y.createCanvasElement=wt,y.createImageElement=B3,y.degToRad=V1,y.drawDiagonalLineByBorderType=M0,y.drawLineByBorderType=Nt,y.fixLineWidthByScale=Z,y.generateRandomKey=T0,y.getAnchorBounding=n3,y.getCanvasOffsetByEngine=r3,y.getCellByIndex=Me,y.getCellInfoInMergeData=g2,y.getCellPositionByIndex=ye,y.getCharSpaceApply=b2,y.getColor=F1,y.getCurrentScrollXY=He,y.getDPI=_2,y.getDevicePixelRatio=Mt,y.getDocsSkeletonPageSize=I2,y.getFontStyleString=h2,y.getLineOffset=N0,y.getLineWidth=Ht,y.getLineWith=U0,y.getNumberUnitValue=Ee,y.getParagraphByGlyph=P0,y.getPointerPrefix=Bt,y.getRotateOffsetAndFarthestHypotenuse=Gt,y.getRotateOrientation=H0,y.getScale=It,y.getSizeForDom=$0,y.getTranslateInSpreadContextWithPixelRatio=ir,y.getValueType=fe,y.hasAllLatin=M3,y.hasArabic=At,y.hasBasicLatin=N3,y.hasCJK=d2,y.hasCJKPunctuation=Rt,y.hasCJKText=f2,y.hasLatinExtendedA=H3,y.hasLatinExtendedB=G3,y.hasLatinOneSupplement=U3,y.hasListGlyph=J3,y.hasSpace=O0,y.hasTibetan=kt,y.hasUnMergedCellInRow=A0,y.injectStyle=K3,y.isArray=A3,y.isCjkCenterAlignedPunctuation=$t,y.isCjkLeftAlignedPunctuation=z2,y.isCjkRightAlignedPunctuation=X2,y.isDate=x3,y.isFirstGlyph=tr,y.isFunction=Ot,y.isIndentByGlyph=Q3,y.isLastGlyph=er,y.isNumber=k3,y.isObject=$3,y.isPlaceholderOrSpace=nr,y.isRectIntersect=k0,y.isRegExp=R3,y.isSameLine=rr,y.isString=xt,y.mergeInfoOffset=Lt,y.pixelToPt=Z3,y.precisionTo=U2,y.ptToMM=j3,y.ptToPixel=Pt,y.ptToPx=W3,y.pxToInch=V3,y.pxToNum=Fe,y.pxToPt=Y3,y.radToDeg=E0,y.requestNewFrame=c2,y.setLineType=Ut,y.startWithEmoji=G2,y.toPx=se,Object.defineProperty(y,Symbol.toStringTag,{value:"Module"})});
|