@univerjs/engine-render 0.1.1 → 0.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/cjs/index.js CHANGED
@@ -1,4 +1,4 @@
1
- "use strict";var Ut=Object.defineProperty;var Vt=(r,n,t)=>n in r?Ut(r,n,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[n]=t;var h=(r,n,t)=>(Vt(r,typeof n!="symbol"?n+"":n,t),t);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const d=require("@univerjs/core"),e2=require("@wendellhu/redi"),s1=require("rxjs");var w6=(r=>(r.RECT="rect",r.CIRCLE="circle",r.PATH="path",r))(w6||{}),E1=(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))(E1||{}),Y7=(r=>(r[r.XY=0]="XY",r[r.X=1]="X",r[r.Y=2]="Y",r))(Y7||{});const A6=1,Z2='"Helvetica Neue", Helvetica, Arial, "PingFang SC", "Hiragino Sans GB", "Heiti SC", "Microsoft YaHei", "WenQuanYi Micro Hei", sans-serif',z7={lines:[],drawings:new Map,height:0,st:0,ed:0,marginLeft:0},Kt={...z7,marginTop:20},Jt={...z7,marginBottom:20},W7="0",p6=1,j7=14;var r1=(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))(r1||{}),G7=(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))(G7||{});const G1="rgb(0,0,0)";var J=(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))(J||{}),E2=(r=>(r[r.UP=0]="UP",r[r.DOWN=1]="DOWN",r))(E2||{}),N=(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))(N||{});const Zt=1e3,U7=2e3,a1=.5;var i1=(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))(i1||{});class qt{isEmpty(){return this._isEmpty()}toString(n){if(this.isEmpty())throw new Error("Output is empty.");return this._toString(n)}toRegExp(n){return new RegExp(this.toString(n),n)}}class S1 extends qt{constructor(...n){super(),this.data=[];for(const t of n)t instanceof S1?this.data.push(...t.data):this.data.push(te(t));this._unique()}union(...n){return new S1(this,...n)}subtract(...n){const t=this.data.slice(),e=[];let s=0;const{data:i}=new S1(...n);for(;t.length!==0;){const o=t.shift(),[a,c]=o;let u;do{u=!0;const l=i[s];if(l===void 0){e.push(o);break}const[D,f]=l;f<a?(u=!1,s++):c<D?e.push(o):D<=a&&f<c?(s++,t.unshift([f+1,c])):a<D&&f<c?(s++,e.push([a,D-1]),t.unshift([f+1,c])):a<D&&c<=f&&e.push([a,D-1])}while(!u)}return new S1(...e)}intersect(...n){return this.subtract(this.subtract(...n))}_isEmpty(){return this.data.length===0}_toString(n){return ne(this.data,n)}_unique(){this.data.sort(ee);const n=[];let t=null;for(const e of this.data)t===null||t[1]+1<e[0]?(n.push(e),t=e):(n.splice(-1,1,[Math.min(e[0],t[0]),Math.max(e[1],t[1])]),t=n[n.length-1]);this.data=n}}const I6=(...r)=>new S1(...r);function Qt(r){if(r.length!==1){const n=`${r.length} (${JSON.stringify(r)})`;throw new Error(`Expected length = 1, but received ${n}.`)}return r.charCodeAt(0)}function te(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[n]=[r].map(t=>typeof t!="object"?[t,t]:t).map(t=>t.map(e=>typeof e=="string"?Qt(e):e));return n}function ee(r,n){return r[0]-n[0]}function ne(r,n=""){if(n.includes("u"))return g7(r,!0);const{normal:t,surrogate:e}=ie(r),s=[];return t.length!==0&&s.push(g7(t,!1)),s.push(...se(e)),s.join("|")}function g7(r,n){return`[${r.map(([e,s])=>e===s?p2(e,n):`${p2(e,n)}-${p2(s,n)}`).join("")}]`}function se(r){const n=[];if(r.entire.data.length!==0){const t=r.entire.toString(),e=`[${[56320,57343].map(s=>p2(s,!1)).join("-")}]`;n.push(`${t}${e}`)}for(const{h:t,l:e}of r.partial){const s=p2(t,!1),i=e.toString();n.push(`${s}${i}`)}return n}function ie(r){const n=[],t=[];for(let e=0;e<r.length;e++){const s=r[e],[i,o]=s;if(i>=65536){t.push(...r.slice(e));break}if(o>=65536){n.push([i,65535]),t.push([65536,o],...r.slice(e+1));break}n.push(s)}return{normal:n,surrogate:re(t)}}function re(r){const n=[],t=[];for(const[i,o]of r){const a=p7(i),c=p7(o);if(a.h===c.h){s(a.h,a.l,c.l);continue}a.l===56320?e(a.h):s(a.h,a.l,57343);for(let u=a.h+1;u<c.h;u++)e(u);c.l===57343?e(c.h):s(c.h,56320,c.l)}return{entire:new S1(...n),partial:t.map(({h:i,l:o})=>({h:i,l:new S1(...o)}))};function e(i){n.push(i)}function s(i,o,a){const c=t[t.length-1];c!==void 0&&c.h===i?c.l.push([o,a]):t.push({h:i,l:[[o,a]]})}}function p7(r){return{h:Math.floor((r-65536)/1024)+55296,l:(r-65536)%1024+56320}}function p2(r,n){const t=r.toString(16);return n?`\\u{${t}}`:`\\u${"0".repeat(4-t.length)}${t}`}const oe=[[0,127]],ae=[[48,57],[65,70],[97,102]],ue=[[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]],ce=[[0,1114111]],le=[[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]],he=[1564,[8206,8207],[8234,8238],[8294,8297]],De=[[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],_e=[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]],de=[[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]],fe=[[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]],ge=[[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]],pe=[[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]],me=[[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]],Fe=[[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]],Ce=[[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]],Ee=[[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]],be=[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],Se=[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]],ve=[329,1651,3959,3961,[6051,6052],[8298,8303],[9001,9002],917505],Te=[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]],ye=[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]],Be=[35,42,[48,57],8205,8419,65039,[127462,127487],[127995,127999],[129456,129459],[917536,917631]],Oe=[[127995,127999]],we=[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]],Ae=[[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]],Ie=[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]],Re=[[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]],xe=[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]],Me=[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]],Pe=[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]],Le=[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]],$e=[[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]],Ne=[[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]],ke=[[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]],He=[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]],Xe=[[48,57],[65,70],[97,102],[65296,65305],[65313,65318],[65345,65350]],Ye=[45,173,1418,6150,[8208,8209],11799,12539,65123,65293,65381],ze=[[12272,12273],[12276,12283]],We=[[12274,12275]],je=[[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]],Ge=[[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]],Ue=[[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]],Ve=[[8204,8205]],Ke=[[3648,3652],[3776,3780],[6581,6583],6586,[43701,43702],43705,[43707,43708]],Je=[[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]],Ze=[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]],qe=[[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]],Qe=[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]],t0=[847,[4447,4448],[6068,6069],8293,12644,65440,[65520,65528],917504,[917506,917535],[917632,917759],[918e3,921599]],e0=[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]],n0=[183,903,[4969,4977],6618],s0=[[6277,6278],8472,8494,[12443,12444]],i0=[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]],r0=[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]],o0=[[8544,8559],[9398,9423],[127280,127305],[127312,127337],[127344,127369]],a0=[[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]],u0=[[9,13],32,133,[8206,8207],[8232,8233]],c0=[[1536,1541],1757,1807,[2192,2193],2274,69821,69837],l0=[34,39,171,187,[8216,8223],[8249,8250],11842,[12300,12303],[12317,12319],[65089,65092],65282,65287,[65378,65379]],h0=[[11904,11929],[11931,12019],[12032,12245]],D0=[[127462,127487]],_0=[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],d0=[[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],f0=[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]],g0=[[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]],p0=[[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]],m0=[[6155,6157],6159,[65024,65039],[917760,917999]],F0=[[9,13],32,133,160,5760,[8192,8202],[8232,8233],8239,8287,12288],C0=[[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]],E0=[[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]],b0=Object.freeze(Object.defineProperty({__proto__:null,ASCII:oe,ASCII_Hex_Digit:ae,Alphabetic:ue,Any:ce,Assigned:le,Bidi_Control:he,Bidi_Mirrored:De,Case_Ignorable:_e,Cased:de,Changes_When_Casefolded:fe,Changes_When_Casemapped:ge,Changes_When_Lowercased:pe,Changes_When_NFKC_Casefolded:me,Changes_When_Titlecased:Fe,Changes_When_Uppercased:Ce,Composition_Exclusion:Ee,Dash:be,Default_Ignorable_Code_Point:Se,Deprecated:ve,Diacritic:Te,Emoji:ye,Emoji_Component:Be,Emoji_Modifier:Oe,Emoji_Modifier_Base:we,Emoji_Presentation:Ae,Expands_On_NFC:Ie,Expands_On_NFD:Re,Expands_On_NFKC:xe,Expands_On_NFKD:Me,Extended_Pictographic:Pe,Extender:Le,Full_Composition_Exclusion:$e,Grapheme_Base:Ne,Grapheme_Extend:ke,Grapheme_Link:He,Hex_Digit:Xe,Hyphen:Ye,IDS_Binary_Operator:ze,IDS_Trinary_Operator:We,ID_Continue:je,ID_Start:Ge,Ideographic:Ue,Join_Control:Ve,Logical_Order_Exception:Ke,Lowercase:Je,Math:Ze,Noncharacter_Code_Point:qe,Other_Alphabetic:Qe,Other_Default_Ignorable_Code_Point:t0,Other_Grapheme_Extend:e0,Other_ID_Continue:n0,Other_ID_Start:s0,Other_Lowercase:i0,Other_Math:r0,Other_Uppercase:o0,Pattern_Syntax:a0,Pattern_White_Space:u0,Prepended_Concatenation_Mark:c0,Quotation_Mark:l0,Radical:h0,Regional_Indicator:D0,Sentence_Terminal:_0,Soft_Dotted:d0,Terminal_Punctuation:f0,Unified_Ideograph:g0,Uppercase:p0,Variation_Selector:m0,White_Space:F0,XID_Continue:C0,XID_Start:E0},Symbol.toStringTag,{value:"Module"})),S0=[[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]],v0=[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],T0=[95,[8255,8256],8276,[65075,65076],[65101,65103],65343],y0=[[0,31],[127,159]],B0=[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],O0=[45,1418,1470,5120,6150,[8208,8213],11799,11802,[11834,11835],11840,11869,12316,12336,12448,[65073,65074],65112,65123,65293,69293],w0=[[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]],A0=[[1160,1161],6846,[8413,8416],[8418,8420],[42608,42610]],I0=[187,8217,8221,8250,11779,11781,11786,11789,11805,11809],R0=[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]],x0=[171,8216,[8219,8220],8223,8249,11778,11780,11785,11788,11804,11808],M0=[[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]],P0=[[5870,5872],[8544,8578],[8581,8584],12295,[12321,12329],[12344,12346],[42726,42735],[65856,65908],66369,66378,[66513,66517],[74752,74862]],L0=[8232],$0=[[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]],N0=[[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]],k0=[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]],H0=[[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],X0=[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]],Y0=[[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]],z0=[[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]],W0=[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],j0=[[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]],G0=[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]],U0=[[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]],V0=[[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]],K0=[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]],J0=[8233],Z0=[[57344,63743],[983040,1048573],[1048576,1114109]],q0=[[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]],Q0=[32,160,5760,[8192,8202],[8232,8233],8239,8287,12288],t3=[32,160,5760,[8192,8202],8239,8287,12288],e3=[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]],n3=[[55296,57343]],s3=[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]],i3=[453,456,459,498,[8072,8079],[8088,8095],[8104,8111],8124,8140,8188],r3=[[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]],o3=[[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]],a3=Object.freeze(Object.defineProperty({__proto__:null,Cased_Letter:S0,Close_Punctuation:v0,Connector_Punctuation:T0,Control:y0,Currency_Symbol:B0,Dash_Punctuation:O0,Decimal_Number:w0,Enclosing_Mark:A0,Final_Punctuation:I0,Format:R0,Initial_Punctuation:x0,Letter:M0,Letter_Number:P0,Line_Separator:L0,Lowercase_Letter:$0,Mark:N0,Math_Symbol:k0,Modifier_Letter:H0,Modifier_Symbol:X0,Nonspacing_Mark:Y0,Number:z0,Open_Punctuation:W0,Other:j0,Other_Letter:G0,Other_Number:U0,Other_Punctuation:V0,Other_Symbol:K0,Paragraph_Separator:J0,Private_Use:Z0,Punctuation:q0,Separator:Q0,Space_Separator:t3,Spacing_Mark:e3,Surrogate:n3,Symbol:s3,Titlecase_Letter:i3,Unassigned:r3,Uppercase_Letter:o3},Symbol.toStringTag,{value:"Module"})),u3=[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]],c3=[[1536,1541],[1632,1641],[1643,1644],1757,[2192,2193],2274,[68912,68921],[69216,69246]],l3=[[0,8],[14,27],[127,132],[134,159],173,6158,[8203,8205],[8288,8292],[8298,8303],65279,[113824,113827],[119155,119162],917505,[917536,917631]],h3=[44,[46,47],58,160,1548,8239,8260,65104,65106,65109,65292,[65294,65295],65306],D3=[[48,57],[178,179],185,[1776,1785],8304,[8308,8313],[8320,8329],[9352,9371],[65296,65305],[66273,66299],[120782,120831],[127232,127242],[130032,130041]],_3=[43,45,[8314,8315],[8330,8331],8722,64297,[65122,65123],65291,65293],d3=[[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],f3=[8296],g3=[[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]],p3=[8234],m3=[8294],F3=[8237],C3=[[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]],E3=[[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]],b3=[10,13,[28,30],133,8233],S3=[8236],v3=[8297],T3=[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]],y3=[8235],B3=[8295],O3=[8238],w3=[9,11,31],A3=[12,32,5760,[8192,8202],8232,8287,12288],I3=Object.freeze(Object.defineProperty({__proto__:null,Arabic_Letter:u3,Arabic_Number:c3,Boundary_Neutral:l3,Common_Separator:h3,European_Number:D3,European_Separator:_3,European_Terminator:d3,First_Strong_Isolate:f3,Left_To_Right:g3,Left_To_Right_Embedding:p3,Left_To_Right_Isolate:m3,Left_To_Right_Override:F3,Nonspacing_Mark:C3,Other_Neutral:E3,Paragraph_Separator:b3,Pop_Directional_Format:S3,Pop_Directional_Isolate:v3,Right_To_Left:T3,Right_To_Left_Embedding:y3,Right_To_Left_Isolate:B3,Right_To_Left_Override:O3,Segment_Separator:w3,White_Space:A3},Symbol.toStringTag,{value:"Module"})),R3=[[125184,125259],[125264,125273],[125278,125279]],x3=[[71424,71450],[71453,71467],[71472,71494]],M3=[[82944,83526]],P3=[[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]],L3=[[1329,1366],[1369,1418],[1421,1423],[64275,64279]],$3=[[68352,68405],[68409,68415]],N3=[[6912,6988],[6992,7038]],k3=[[42656,42743],[92160,92728]],H3=[[92880,92909],[92912,92917]],X3=[[7104,7155],[7164,7167]],Y3=[[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]],z3=[[72704,72712],[72714,72758],[72760,72773],[72784,72812]],W3=[[746,747],[12549,12591],[12704,12735]],j3=[[69632,69709],[69714,69749],69759],G3=[[10240,10495]],U3=[[6656,6683],[6686,6687]],V3=[[5952,5971]],K3=[[5120,5759],[6320,6389],[72368,72383]],J3=[[66208,66256]],Z3=[[66864,66915],66927],q3=[[69888,69940],[69942,69959]],Q3=[[43520,43574],[43584,43597],[43600,43609],[43612,43615]],t8=[[5024,5109],[5112,5117],[43888,43967]],e8=[[69552,69579]],n8=[[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]],s8=[[994,1007],[11392,11507],[11513,11519]],i8=[[73728,74649],[74752,74862],[74864,74868],[74880,75075]],r8=[[67584,67589],67592,[67594,67637],[67639,67640],67644,67647],o8=[[77712,77810]],a8=[[1024,1156],[1159,1327],[7296,7304],7467,7544,[11744,11775],[42560,42655],[65070,65071],[122928,122989],123023],u8=[[66560,66639]],c8=[[2304,2384],[2389,2403],[2406,2431],[43232,43263],[72448,72457]],l8=[[71936,71942],71945,[71948,71955],[71957,71958],[71960,71989],[71991,71992],[71995,72006],[72016,72025]],h8=[[71680,71739]],D8=[[113664,113770],[113776,113788],[113792,113800],[113808,113817],[113820,113823]],_8=[[77824,78933]],d8=[[66816,66855]],f8=[[69600,69622]],g8=[[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]],p8=[[4256,4293],4295,4301,[4304,4346],[4348,4351],[7312,7354],[7357,7359],[11520,11557],11559,11565],m8=[[11264,11359],[122880,122886],[122888,122904],[122907,122913],[122915,122916],[122918,122922]],F8=[[66352,66378]],C8=[[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]],E8=[[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]],b8=[[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]],S8=[[73056,73061],[73063,73064],[73066,73102],[73104,73105],[73107,73112],[73120,73129]],v8=[[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]],T8=[[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]],y8=[[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]],B8=[[68864,68903],[68912,68921]],O8=[[5920,5940]],w8=[[67808,67826],[67828,67829],[67835,67839]],A8=[[1425,1479],[1488,1514],[1519,1524],[64285,64310],[64312,64316],64318,[64320,64321],[64323,64324],[64326,64335]],I8=[[12353,12438],[12445,12447],[110593,110879],110898,[110928,110930],127488],R8=[[67648,67669],[67671,67679]],x8=[[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]],M8=[[68448,68466],[68472,68479]],P8=[[68416,68437],[68440,68447]],L8=[[43392,43469],[43472,43481],[43486,43487]],$8=[[69760,69826],69837],N8=[[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]],k8=[[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]],H8=[[73472,73488],[73490,73530],[73534,73561]],X8=[[43264,43309],43311],Y8=[[68096,68099],[68101,68102],[68108,68115],[68117,68119],[68121,68149],[68152,68154],[68159,68168],[68176,68184]],z8=[94180,[101120,101589]],W8=[[6016,6109],[6112,6121],[6128,6137],[6624,6655]],j8=[[70144,70161],[70163,70209]],G8=[[70320,70378],[70384,70393]],U8=[[3713,3714],3716,[3718,3722],[3724,3747],3749,[3751,3773],[3776,3780],3782,[3784,3790],[3792,3801],[3804,3807]],V8=[[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]],K8=[[7168,7223],[7227,7241],[7245,7247]],J8=[[6400,6430],[6432,6443],[6448,6459],6464,[6468,6479]],Z8=[[67072,67382],[67392,67413],[67424,67431]],q8=[[65536,65547],[65549,65574],[65576,65594],[65596,65597],[65599,65613],[65616,65629],[65664,65786]],Q8=[[42192,42239],73648],t9=[[66176,66204]],e9=[[67872,67897],67903],n9=[[69968,70006]],s9=[[73440,73464]],i9=[[3328,3340],[3342,3344],[3346,3396],[3398,3400],[3402,3407],[3412,3427],[3430,3455]],r9=[[2112,2139],2142],o9=[[68288,68326],[68331,68342]],a9=[[72816,72847],[72850,72871],[72873,72886]],u9=[[72960,72966],[72968,72969],[72971,73014],73018,[73020,73021],[73023,73031],[73040,73049]],c9=[[93760,93850]],l9=[[43744,43766],[43968,44013],[44016,44025]],h9=[[124928,125124],[125127,125142]],D9=[[68e3,68023],[68028,68047],[68050,68095]],_9=[[67968,67999]],d9=[[93952,94026],[94031,94087],[94095,94111]],f9=[[71168,71236],[71248,71257]],g9=[[6144,6145],6148,[6150,6169],[6176,6264],[6272,6314],[71264,71276]],p9=[[92736,92766],[92768,92777],[92782,92783]],m9=[[70272,70278],70280,[70282,70285],[70287,70301],[70303,70313]],F9=[[4096,4255],[43488,43518],[43616,43647]],C9=[[67712,67742],[67751,67759]],E9=[[124112,124153]],b9=[[72096,72103],[72106,72151],[72154,72164]],S9=[[6528,6571],[6576,6601],[6608,6618],[6622,6623]],v9=[[70656,70747],[70749,70753]],T9=[[1984,2042],[2045,2047]],y9=[94177,[110960,111355]],B9=[[123136,123180],[123184,123197],[123200,123209],[123214,123215]],O9=[[5760,5788]],w9=[[7248,7295]],A9=[[68736,68786],[68800,68850],[68858,68863]],I9=[[66304,66339],[66349,66351]],R9=[[68224,68255]],x9=[[66384,66426]],M9=[[66464,66499],[66504,66517]],P9=[[69376,69415]],L9=[[68192,68223]],$9=[[68608,68680]],N9=[[69488,69513]],k9=[[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]],H9=[[66736,66771],[66776,66811]],X9=[[66688,66717],[66720,66729]],Y9=[[92928,92997],[93008,93017],[93019,93025],[93027,93047],[93053,93071]],z9=[[67680,67711]],W9=[[72384,72440]],j9=[[43072,43127]],G9=[[67840,67867],67871],U9=[[68480,68497],[68505,68508],[68521,68527]],V9=[[43312,43347],43359],K9=[[5792,5866],[5870,5880]],J9=[[2048,2093],[2096,2110]],Z9=[[43136,43205],[43214,43225]],q9=[[70016,70111]],Q9=[[66640,66687]],t5=[[71040,71093],[71096,71133]],e5=[[120832,121483],[121499,121503],[121505,121519]],n5=[[3457,3459],[3461,3478],[3482,3505],[3507,3515],3517,[3520,3526],3530,[3535,3540],3542,[3544,3551],[3558,3567],[3570,3572],[70113,70132]],s5=[[69424,69465]],i5=[[69840,69864],[69872,69881]],r5=[[72272,72354]],o5=[[7040,7103],[7360,7367]],a5=[[43008,43052]],u5=[[1792,1805],[1807,1866],[1869,1871],[2144,2154]],c5=[[5888,5909],5919],l5=[[5984,5996],[5998,6e3],[6002,6003]],h5=[[6480,6509],[6512,6516]],D5=[[6688,6750],[6752,6780],[6783,6793],[6800,6809],[6816,6829]],_5=[[43648,43714],[43739,43743]],d5=[[71296,71353],[71360,71369]],f5=[[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],g5=[[92784,92862],[92864,92873]],p5=[94176,[94208,100343],[100352,101119],[101632,101640]],m5=[[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]],F5=[[1920,1969]],C5=[[3585,3642],[3648,3675]],E5=[[3840,3911],[3913,3948],[3953,3991],[3993,4028],[4030,4044],[4046,4052],[4057,4058]],b5=[[11568,11623],[11631,11632],11647],S5=[[70784,70855],[70864,70873]],v5=[[123536,123566]],T5=[[66432,66461],66463],y5=[[42240,42539]],B5=[[66928,66938],[66940,66954],[66956,66962],[66964,66965],[66967,66977],[66979,66993],[66995,67001],[67003,67004]],O5=[[123584,123641],123647],w5=[[71840,71922],71935],A5=[[69248,69289],[69291,69293],[69296,69297]],I5=[[40960,42124],[42128,42182]],R5=[[72192,72263]],x5=Object.freeze(Object.defineProperty({__proto__:null,Adlam:R3,Ahom:x3,Anatolian_Hieroglyphs:M3,Arabic:P3,Armenian:L3,Avestan:$3,Balinese:N3,Bamum:k3,Bassa_Vah:H3,Batak:X3,Bengali:Y3,Bhaiksuki:z3,Bopomofo:W3,Brahmi:j3,Braille:G3,Buginese:U3,Buhid:V3,Canadian_Aboriginal:K3,Carian:J3,Caucasian_Albanian:Z3,Chakma:q3,Cham:Q3,Cherokee:t8,Chorasmian:e8,Common:n8,Coptic:s8,Cuneiform:i8,Cypriot:r8,Cypro_Minoan:o8,Cyrillic:a8,Deseret:u8,Devanagari:c8,Dives_Akuru:l8,Dogra:h8,Duployan:D8,Egyptian_Hieroglyphs:_8,Elbasan:d8,Elymaic:f8,Ethiopic:g8,Georgian:p8,Glagolitic:m8,Gothic:F8,Grantha:C8,Greek:E8,Gujarati:b8,Gunjala_Gondi:S8,Gurmukhi:v8,Han:T8,Hangul:y8,Hanifi_Rohingya:B8,Hanunoo:O8,Hatran:w8,Hebrew:A8,Hiragana:I8,Imperial_Aramaic:R8,Inherited:x8,Inscriptional_Pahlavi:M8,Inscriptional_Parthian:P8,Javanese:L8,Kaithi:$8,Kannada:N8,Katakana:k8,Kawi:H8,Kayah_Li:X8,Kharoshthi:Y8,Khitan_Small_Script:z8,Khmer:W8,Khojki:j8,Khudawadi:G8,Lao:U8,Latin:V8,Lepcha:K8,Limbu:J8,Linear_A:Z8,Linear_B:q8,Lisu:Q8,Lycian:t9,Lydian:e9,Mahajani:n9,Makasar:s9,Malayalam:i9,Mandaic:r9,Manichaean:o9,Marchen:a9,Masaram_Gondi:u9,Medefaidrin:c9,Meetei_Mayek:l9,Mende_Kikakui:h9,Meroitic_Cursive:D9,Meroitic_Hieroglyphs:_9,Miao:d9,Modi:f9,Mongolian:g9,Mro:p9,Multani:m9,Myanmar:F9,Nabataean:C9,Nag_Mundari:E9,Nandinagari:b9,New_Tai_Lue:S9,Newa:v9,Nko:T9,Nushu:y9,Nyiakeng_Puachue_Hmong:B9,Ogham:O9,Ol_Chiki:w9,Old_Hungarian:A9,Old_Italic:I9,Old_North_Arabian:R9,Old_Permic:x9,Old_Persian:M9,Old_Sogdian:P9,Old_South_Arabian:L9,Old_Turkic:$9,Old_Uyghur:N9,Oriya:k9,Osage:H9,Osmanya:X9,Pahawh_Hmong:Y9,Palmyrene:z9,Pau_Cin_Hau:W9,Phags_Pa:j9,Phoenician:G9,Psalter_Pahlavi:U9,Rejang:V9,Runic:K9,Samaritan:J9,Saurashtra:Z9,Sharada:q9,Shavian:Q9,Siddham:t5,SignWriting:e5,Sinhala:n5,Sogdian:s5,Sora_Sompeng:i5,Soyombo:r5,Sundanese:o5,Syloti_Nagri:a5,Syriac:u5,Tagalog:c5,Tagbanwa:l5,Tai_Le:h5,Tai_Tham:D5,Tai_Viet:_5,Takri:d5,Tamil:f5,Tangsa:g5,Tangut:p5,Telugu:m5,Thaana:F5,Thai:C5,Tibetan:E5,Tifinagh:b5,Tirhuta:S5,Toto:v5,Ugaritic:T5,Vai:y5,Vithkuqi:B5,Wancho:O5,Warang_Citi:w5,Yezidi:A5,Yi:I5,Zanabazar_Square:R5},Symbol.toStringTag,{value:"Module"})),M5=[1567,1600,[125184,125259],[125264,125273],[125278,125279]],P5=[[71424,71450],[71453,71467],[71472,71494]],L5=[[82944,83526]],$5=[[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]],N5=[[1329,1366],[1369,1418],[1421,1423],[64275,64279]],k5=[[68352,68405],[68409,68415]],H5=[[6912,6988],[6992,7038]],X5=[[42656,42743],[92160,92728]],Y5=[[92880,92909],[92912,92917]],z5=[[7104,7155],[7164,7167]],W5=[[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],j5=[[72704,72712],[72714,72758],[72760,72773],[72784,72812]],G5=[[746,747],[12289,12291],[12296,12305],[12307,12319],[12330,12333],12336,12343,12539,[12549,12591],[12704,12735],[65093,65094],[65377,65381]],U5=[[69632,69709],[69714,69749],69759],V5=[[10240,10495]],K5=[[6656,6683],[6686,6687],43471],J5=[[5941,5942],[5952,5971]],Z5=[[5120,5759],[6320,6389],[72368,72383]],q5=[[66208,66256]],Q5=[[66864,66915],66927],tn=[[2534,2543],[4160,4169],[69888,69940],[69942,69959]],en=[[43520,43574],[43584,43597],[43600,43609],[43612,43615]],nn=[[5024,5109],[5112,5117],[43888,43967]],sn=[[69552,69579]],rn=[[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]],on=[[994,1007],[11392,11507],[11513,11519],[66272,66299]],an=[[73728,74649],[74752,74862],[74864,74868],[74880,75075]],un=[[65792,65794],[65799,65843],[65847,65855],[67584,67589],67592,[67594,67637],[67639,67640],67644,67647],cn=[[65792,65793],[77712,77810]],ln=[[1024,1327],[7296,7304],7467,7544,7672,[11744,11775],11843,[42560,42655],[65070,65071],[122928,122989],123023],hn=[[66560,66639]],Dn=[[2304,2386],[2389,2431],[7376,7414],[7416,7417],8432,[43056,43065],[43232,43263],[72448,72457]],_n=[[71936,71942],71945,[71948,71955],[71957,71958],[71960,71989],[71991,71992],[71995,72006],[72016,72025]],dn=[[2404,2415],[43056,43065],[71680,71739]],fn=[[113664,113770],[113776,113788],[113792,113800],[113808,113817],[113820,113827]],gn=[[77824,78933]],pn=[[66816,66855]],mn=[[69600,69622]],Fn=[[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]],Cn=[[4256,4293],4295,4301,[4304,4351],[7312,7354],[7357,7359],[11520,11557],11559,11565],En=[1156,1159,[11264,11359],11843,42607,[122880,122886],[122888,122904],[122907,122913],[122915,122916],[122918,122922]],bn=[[66352,66378]],Sn=[[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],vn=[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]],Tn=[[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]],yn=[[2404,2405],[73056,73061],[73063,73064],[73066,73102],[73104,73105],[73107,73112],[73120,73129]],Bn=[[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]],On=[[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]],wn=[[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]],An=[1548,1563,1567,1600,1748,[68864,68903],[68912,68921]],In=[[5920,5942]],Rn=[[67808,67826],[67828,67829],[67835,67839]],xn=[[1425,1479],[1488,1514],[1519,1524],[64285,64310],[64312,64316],64318,[64320,64321],[64323,64324],[64326,64335]],Mn=[[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],Pn=[[67648,67669],[67671,67679]],Ln=[[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]],$n=[[68448,68466],[68472,68479]],Nn=[[68416,68437],[68440,68447]],kn=[[43392,43469],[43471,43481],[43486,43487]],Hn=[[2406,2415],[43056,43065],[69760,69826],69837],Xn=[[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]],Yn=[[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]],zn=[[73472,73488],[73490,73530],[73534,73561]],Wn=[[43264,43311]],jn=[[68096,68099],[68101,68102],[68108,68115],[68117,68119],[68121,68149],[68152,68154],[68159,68168],[68176,68184]],Gn=[94180,[101120,101589]],Un=[[6016,6109],[6112,6121],[6128,6137],[6624,6655]],Vn=[[2790,2799],[43056,43065],[70144,70161],[70163,70209]],Kn=[[2404,2405],[43056,43065],[70320,70378],[70384,70393]],Jn=[[3713,3714],3716,[3718,3722],[3724,3747],3749,[3751,3773],[3776,3780],3782,[3784,3790],[3792,3801],[3804,3807]],Zn=[[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]],qn=[[7168,7223],[7227,7241],[7245,7247]],Qn=[2405,[6400,6430],[6432,6443],[6448,6459],6464,[6468,6479]],ts=[[65799,65843],[67072,67382],[67392,67413],[67424,67431]],es=[[65536,65547],[65549,65574],[65576,65594],[65596,65597],[65599,65613],[65616,65629],[65664,65786],[65792,65794],[65799,65843],[65847,65855]],ns=[[42192,42239],73648],ss=[[66176,66204]],is=[[67872,67897],67903],rs=[[2404,2415],[43056,43065],[69968,70006]],os=[[73440,73464]],as=[[2385,2386],[2404,2405],[3328,3340],[3342,3344],[3346,3396],[3398,3400],[3402,3407],[3412,3427],[3430,3455],7386,[43056,43058]],us=[1600,[2112,2139],2142],cs=[1600,[68288,68326],[68331,68342]],ls=[[72816,72847],[72850,72871],[72873,72886]],hs=[[2404,2405],[72960,72966],[72968,72969],[72971,73014],73018,[73020,73021],[73023,73031],[73040,73049]],Ds=[[93760,93850]],_s=[[43744,43766],[43968,44013],[44016,44025]],ds=[[124928,125124],[125127,125142]],fs=[[68e3,68023],[68028,68047],[68050,68095]],gs=[[67968,67999]],ps=[[93952,94026],[94031,94087],[94095,94111]],ms=[[43056,43065],[71168,71236],[71248,71257]],Fs=[[6144,6169],[6176,6264],[6272,6314],8239,[71264,71276]],Cs=[[92736,92766],[92768,92777],[92782,92783]],Es=[[2662,2671],[70272,70278],70280,[70282,70285],[70287,70301],[70303,70313]],bs=[[4096,4255],43310,[43488,43518],[43616,43647]],Ss=[[67712,67742],[67751,67759]],vs=[[124112,124153]],Ts=[[2404,2405],[3302,3311],7401,7410,7418,[43056,43061],[72096,72103],[72106,72151],[72154,72164]],ys=[[6528,6571],[6576,6601],[6608,6618],[6622,6623]],Bs=[[70656,70747],[70749,70753]],Os=[1548,1563,1567,[1984,2042],[2045,2047],[64830,64831]],ws=[94177,[110960,111355]],As=[[123136,123180],[123184,123197],[123200,123209],[123214,123215]],Is=[[5760,5788]],Rs=[[7248,7295]],xs=[[68736,68786],[68800,68850],[68858,68863]],Ms=[[66304,66339],[66349,66351]],Ps=[[68224,68255]],Ls=[1155,[66384,66426]],$s=[[66464,66499],[66504,66517]],Ns=[[69376,69415]],ks=[[68192,68223]],Hs=[[68608,68680]],Xs=[1600,68338,[69488,69513]],Ys=[[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],zs=[[66736,66771],[66776,66811]],Ws=[[66688,66717],[66720,66729]],js=[[92928,92997],[93008,93017],[93019,93025],[93027,93047],[93053,93071]],Gs=[[67680,67711]],Us=[[72384,72440]],Vs=[[6146,6147],6149,[43072,43127]],Ks=[[67840,67867],67871],Js=[1600,[68480,68497],[68505,68508],[68521,68527]],Zs=[[43312,43347],43359],qs=[[5792,5866],[5870,5880]],Qs=[[2048,2093],[2096,2110]],ti=[[43136,43205],[43214,43225]],ei=[2385,7383,7385,[7388,7389],7392,[70016,70111]],ni=[[66640,66687]],si=[[71040,71093],[71096,71133]],ii=[[120832,121483],[121499,121503],[121505,121519]],ri=[[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]],oi=[1600,[69424,69465]],ai=[[69840,69864],[69872,69881]],ui=[[72272,72354]],ci=[[7040,7103],[7360,7367]],li=[[2404,2405],[2534,2543],[43008,43052]],hi=[1548,[1563,1564],1567,1600,[1611,1621],1648,[1792,1805],[1807,1866],[1869,1871],[2144,2154],7672,7674],Di=[[5888,5909],5919,[5941,5942]],_i=[[5941,5942],[5984,5996],[5998,6e3],[6002,6003]],di=[[4160,4169],[6480,6509],[6512,6516]],fi=[[6688,6750],[6752,6780],[6783,6793],[6800,6809],[6816,6829]],gi=[[43648,43714],[43739,43743]],pi=[[2404,2405],[43056,43065],[71296,71353],[71360,71369]],mi=[[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],Fi=[[92784,92862],[92864,92873]],Ci=[94176,[94208,100343],[100352,101119],[101632,101640]],Ei=[[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],bi=[1548,[1563,1564],1567,[1632,1641],[1920,1969],65010,65021],Si=[[3585,3642],[3648,3675]],vi=[[3840,3911],[3913,3948],[3953,3991],[3993,4028],[4030,4044],[4046,4052],[4057,4058]],Ti=[[11568,11623],[11631,11632],11647],yi=[[2385,2386],[2404,2405],7410,[43056,43065],[70784,70855],[70864,70873]],Bi=[[123536,123566]],Oi=[[66432,66461],66463],wi=[[42240,42539]],Ai=[[66928,66938],[66940,66954],[66956,66962],[66964,66965],[66967,66977],[66979,66993],[66995,67001],[67003,67004]],Ii=[[123584,123641],123647],Ri=[[71840,71922],71935],xi=[1548,1563,1567,[1632,1641],[69248,69289],[69291,69293],[69296,69297]],Mi=[[12289,12290],[12296,12305],[12308,12315],12539,[40960,42124],[42128,42182],[65377,65381]],Pi=[[72192,72263]],Li=Object.freeze(Object.defineProperty({__proto__:null,Adlam:M5,Ahom:P5,Anatolian_Hieroglyphs:L5,Arabic:$5,Armenian:N5,Avestan:k5,Balinese:H5,Bamum:X5,Bassa_Vah:Y5,Batak:z5,Bengali:W5,Bhaiksuki:j5,Bopomofo:G5,Brahmi:U5,Braille:V5,Buginese:K5,Buhid:J5,Canadian_Aboriginal:Z5,Carian:q5,Caucasian_Albanian:Q5,Chakma:tn,Cham:en,Cherokee:nn,Chorasmian:sn,Common:rn,Coptic:on,Cuneiform:an,Cypriot:un,Cypro_Minoan:cn,Cyrillic:ln,Deseret:hn,Devanagari:Dn,Dives_Akuru:_n,Dogra:dn,Duployan:fn,Egyptian_Hieroglyphs:gn,Elbasan:pn,Elymaic:mn,Ethiopic:Fn,Georgian:Cn,Glagolitic:En,Gothic:bn,Grantha:Sn,Greek:vn,Gujarati:Tn,Gunjala_Gondi:yn,Gurmukhi:Bn,Han:On,Hangul:wn,Hanifi_Rohingya:An,Hanunoo:In,Hatran:Rn,Hebrew:xn,Hiragana:Mn,Imperial_Aramaic:Pn,Inherited:Ln,Inscriptional_Pahlavi:$n,Inscriptional_Parthian:Nn,Javanese:kn,Kaithi:Hn,Kannada:Xn,Katakana:Yn,Kawi:zn,Kayah_Li:Wn,Kharoshthi:jn,Khitan_Small_Script:Gn,Khmer:Un,Khojki:Vn,Khudawadi:Kn,Lao:Jn,Latin:Zn,Lepcha:qn,Limbu:Qn,Linear_A:ts,Linear_B:es,Lisu:ns,Lycian:ss,Lydian:is,Mahajani:rs,Makasar:os,Malayalam:as,Mandaic:us,Manichaean:cs,Marchen:ls,Masaram_Gondi:hs,Medefaidrin:Ds,Meetei_Mayek:_s,Mende_Kikakui:ds,Meroitic_Cursive:fs,Meroitic_Hieroglyphs:gs,Miao:ps,Modi:ms,Mongolian:Fs,Mro:Cs,Multani:Es,Myanmar:bs,Nabataean:Ss,Nag_Mundari:vs,Nandinagari:Ts,New_Tai_Lue:ys,Newa:Bs,Nko:Os,Nushu:ws,Nyiakeng_Puachue_Hmong:As,Ogham:Is,Ol_Chiki:Rs,Old_Hungarian:xs,Old_Italic:Ms,Old_North_Arabian:Ps,Old_Permic:Ls,Old_Persian:$s,Old_Sogdian:Ns,Old_South_Arabian:ks,Old_Turkic:Hs,Old_Uyghur:Xs,Oriya:Ys,Osage:zs,Osmanya:Ws,Pahawh_Hmong:js,Palmyrene:Gs,Pau_Cin_Hau:Us,Phags_Pa:Vs,Phoenician:Ks,Psalter_Pahlavi:Js,Rejang:Zs,Runic:qs,Samaritan:Qs,Saurashtra:ti,Sharada:ei,Shavian:ni,Siddham:si,SignWriting:ii,Sinhala:ri,Sogdian:oi,Sora_Sompeng:ai,Soyombo:ui,Sundanese:ci,Syloti_Nagri:li,Syriac:hi,Tagalog:Di,Tagbanwa:_i,Tai_Le:di,Tai_Tham:fi,Tai_Viet:gi,Takri:pi,Tamil:mi,Tangsa:Fi,Tangut:Ci,Telugu:Ei,Thaana:bi,Thai:Si,Tibetan:vi,Tifinagh:Ti,Tirhuta:yi,Toto:Bi,Ugaritic:Oi,Vai:wi,Vithkuqi:Ai,Wancho:Ii,Warang_Citi:Ri,Yezidi:xi,Yi:Mi,Zanabazar_Square:Pi},Symbol.toStringTag,{value:"Module"})),$i=[],Ni=[],ki=[],Hi=[],Xi=Object.freeze(Object.defineProperty({__proto__:null,C:$i,F:Ni,S:ki,T:Hi},Symbol.toStringTag,{value:"Module"})),Yi=[[125184,125279]],zi=[[65792,65855]],Wi=[[71424,71503]],ji=[[128768,128895]],Gi=[[64256,64335]],Ui=[[82944,83583]],Vi=[[119296,119375]],Ki=[[65856,65935]],Ji=[[65936,65999]],Zi=[[1536,1791]],qi=[[2208,2303]],Qi=[[126464,126719]],tr=[[64336,65023]],er=[[65136,65279]],nr=[[1872,1919]],sr=[[1328,1423]],ir=[[8592,8703]],rr=[[68352,68415]],or=[[6912,7039]],ar=[[42656,42751]],ur=[[92160,92735]],cr=[[0,127]],lr=[[92880,92927]],hr=[[7104,7167]],Dr=[[2432,2559]],_r=[[72704,72815]],dr=[[9600,9631]],fr=[[12544,12591]],gr=[[12704,12735]],pr=[[9472,9599]],mr=[[69632,69759]],Fr=[[10240,10495]],Cr=[[6656,6687]],Er=[[5952,5983]],br=[[118784,119039]],Sr=[[13056,13311]],vr=[[65072,65103]],Tr=[[63744,64255]],yr=[[194560,195103]],Br=[[11904,12031]],Or=[[12736,12783]],wr=[[12288,12351]],Ar=[[19968,40959]],Ir=[[13312,19903]],Rr=[[131072,173791]],xr=[[173824,177983]],Mr=[[177984,178207]],Pr=[[178208,183983]],Lr=[[183984,191471]],$r=[[66208,66271]],Nr=[[66864,66927]],kr=[[69888,69967]],Hr=[[43520,43615]],Xr=[[5024,5119]],Yr=[[43888,43967]],zr=[[129536,129647]],Wr=[[768,879]],jr=[[6832,6911]],Gr=[[8400,8447]],Ur=[[7616,7679]],Vr=[[65056,65071]],Kr=[[43056,43071]],Jr=[[9216,9279]],Zr=[[11392,11519]],qr=[[66272,66303]],Qr=[[119648,119679]],to=[[73728,74751]],eo=[[74752,74879]],no=[[8352,8399]],so=[[67584,67647]],io=[[1024,1279]],ro=[[11744,11775]],oo=[[42560,42655]],ao=[[7296,7311]],uo=[[1280,1327]],co=[[66560,66639]],lo=[[2304,2431]],ho=[[43232,43263]],Do=[[9984,10175]],_o=[[71680,71759]],fo=[[127024,127135]],go=[[113664,113823]],po=[[74880,75087]],mo=[[77824,78895]],Fo=[[66816,66863]],Co=[[128512,128591]],Eo=[[127232,127487]],bo=[[9312,9471]],So=[[12800,13055]],vo=[[127488,127743]],To=[[4608,4991]],yo=[[11648,11743]],Bo=[[43776,43823]],Oo=[[4992,5023]],wo=[[8192,8303]],Ao=[[9632,9727]],Io=[[128896,129023]],Ro=[[4256,4351]],xo=[[7312,7359]],Mo=[[11520,11567]],Po=[[11264,11359]],Lo=[[122880,122927]],$o=[[66352,66383]],No=[[70400,70527]],ko=[[880,1023]],Ho=[[7936,8191]],Xo=[[2688,2815]],Yo=[[73056,73135]],zo=[[2560,2687]],Wo=[[65280,65519]],jo=[[12592,12687]],Go=[[4352,4607]],Uo=[[43360,43391]],Vo=[[55216,55295]],Ko=[[44032,55215]],Jo=[[68864,68927]],Zo=[[5920,5951]],qo=[[67808,67839]],Qo=[[1424,1535]],ta=[[56192,56319]],ea=[[55296,56191]],na=[[12352,12447]],sa=[[592,687]],ia=[[12272,12287]],ra=[[94176,94207]],oa=[[67648,67679]],aa=[[126064,126143]],ua=[[68448,68479]],ca=[[68416,68447]],la=[[43392,43487]],ha=[[69760,69839]],Da=[[110848,110895]],_a=[[110592,110847]],da=[[12688,12703]],fa=[[12032,12255]],ga=[[3200,3327]],pa=[[12448,12543]],ma=[[12784,12799]],Fa=[[43264,43311]],Ca=[[68096,68191]],Ea=[[6016,6143]],ba=[[6624,6655]],Sa=[[70144,70223]],va=[[70320,70399]],Ta=[[3712,3839]],ya=[[128,255]],Ba=[[256,383]],Oa=[[7680,7935]],wa=[[384,591]],Aa=[[11360,11391]],Ia=[[42784,43007]],Ra=[[43824,43887]],xa=[[7168,7247]],Ma=[[8448,8527]],Pa=[[6400,6479]],La=[[67072,67455]],$a=[[65664,65791]],Na=[[65536,65663]],ka=[[42192,42239]],Ha=[[56320,57343]],Xa=[[66176,66207]],Ya=[[67872,67903]],za=[[69968,70015]],Wa=[[126976,127023]],ja=[[73440,73471]],Ga=[[3328,3455]],Ua=[[2112,2143]],Va=[[68288,68351]],Ka=[[72816,72895]],Ja=[[72960,73055]],Za=[[119808,120831]],qa=[[8704,8959]],Qa=[[119520,119551]],tu=[[93760,93855]],eu=[[43968,44031]],nu=[[43744,43775]],su=[[124928,125151]],iu=[[68e3,68095]],ru=[[67968,67999]],ou=[[93952,94111]],au=[[10176,10223]],uu=[[10624,10751]],cu=[[9728,9983]],lu=[[11008,11263]],hu=[[127744,128511]],Du=[[8960,9215]],_u=[[71168,71263]],du=[[42752,42783]],fu=[[6144,6319]],gu=[[71264,71295]],pu=[[92736,92783]],mu=[[70272,70319]],Fu=[[119040,119295]],Cu=[[4096,4255]],Eu=[[43616,43647]],bu=[[43488,43519]],Su=[[1984,2047]],vu=[[67712,67759]],Tu=[[6528,6623]],yu=[[70656,70783]],Bu=[[8528,8591]],Ou=[[110960,111359]],wu=[[5760,5791]],Au=[[7248,7295]],Iu=[[68736,68863]],Ru=[[66304,66351]],xu=[[68224,68255]],Mu=[[66384,66431]],Pu=[[66464,66527]],Lu=[[69376,69423]],$u=[[68192,68223]],Nu=[[68608,68687]],ku=[[9280,9311]],Hu=[[2816,2943]],Xu=[[128592,128639]],Yu=[[66736,66815]],zu=[[66688,66735]],Wu=[[92928,93071]],ju=[[67680,67711]],Gu=[[72384,72447]],Uu=[[43072,43135]],Vu=[[66e3,66047]],Ku=[[67840,67871]],Ju=[[7424,7551]],Zu=[[7552,7615]],qu=[[127136,127231]],Qu=[[57344,63743]],tc=[[68480,68527]],ec=[[43312,43359]],nc=[[69216,69247]],sc=[[5792,5887]],ic=[[2048,2111]],rc=[[43136,43231]],oc=[[70016,70111]],ac=[[66640,66687]],uc=[[113824,113839]],cc=[[71040,71167]],lc=[[3456,3583]],hc=[[70112,70143]],Dc=[[65104,65135]],_c=[[69424,69487]],dc=[[69840,69887]],fc=[[72272,72367]],gc=[[688,767]],pc=[[65520,65535]],mc=[[7040,7103]],Fc=[[7360,7375]],Cc=[[8304,8351]],Ec=[[10224,10239]],bc=[[10496,10623]],Sc=[[129024,129279]],vc=[[10752,11007]],Tc=[[11776,11903]],yc=[[129280,129535]],Bc=[[983040,1048575]],Oc=[[1048576,1114111]],wc=[[120832,121519]],Ac=[[43008,43055]],Ic=[[1792,1871]],Rc=[[2144,2159]],xc=[[5888,5919]],Mc=[[5984,6015]],Pc=[[917504,917631]],Lc=[[6480,6527]],$c=[[6688,6831]],Nc=[[43648,43743]],kc=[[119552,119647]],Hc=[[71296,71375]],Xc=[[2944,3071]],Yc=[[94208,100351]],zc=[[100352,101119]],Wc=[[3072,3199]],jc=[[1920,1983]],Gc=[[3584,3711]],Uc=[[3840,4095]],Vc=[[11568,11647]],Kc=[[70784,70879]],Jc=[[128640,128767]],Zc=[[66432,66463]],qc=[[5120,5759]],Qc=[[6320,6399]],tl=[[42240,42559]],el=[[65024,65039]],nl=[[917760,917999]],sl=[[7376,7423]],il=[[65040,65055]],rl=[[71840,71935]],ol=[[42128,42191]],al=[[40960,42127]],ul=[[19904,19967]],cl=[[72192,72271]],ll=[[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]],hl=Object.freeze(Object.defineProperty({__proto__:null,Adlam:Yi,Aegean_Numbers:zi,Ahom:Wi,Alchemical_Symbols:ji,Alphabetic_Presentation_Forms:Gi,Anatolian_Hieroglyphs:Ui,Ancient_Greek_Musical_Notation:Vi,Ancient_Greek_Numbers:Ki,Ancient_Symbols:Ji,Arabic:Zi,Arabic_Extended_A:qi,Arabic_Mathematical_Alphabetic_Symbols:Qi,Arabic_Presentation_Forms_A:tr,Arabic_Presentation_Forms_B:er,Arabic_Supplement:nr,Armenian:sr,Arrows:ir,Avestan:rr,Balinese:or,Bamum:ar,Bamum_Supplement:ur,Basic_Latin:cr,Bassa_Vah:lr,Batak:hr,Bengali:Dr,Bhaiksuki:_r,Block_Elements:dr,Bopomofo:fr,Bopomofo_Extended:gr,Box_Drawing:pr,Brahmi:mr,Braille_Patterns:Fr,Buginese:Cr,Buhid:Er,Byzantine_Musical_Symbols:br,CJK_Compatibility:Sr,CJK_Compatibility_Forms:vr,CJK_Compatibility_Ideographs:Tr,CJK_Compatibility_Ideographs_Supplement:yr,CJK_Radicals_Supplement:Br,CJK_Strokes:Or,CJK_Symbols_And_Punctuation:wr,CJK_Unified_Ideographs:Ar,CJK_Unified_Ideographs_Extension_A:Ir,CJK_Unified_Ideographs_Extension_B:Rr,CJK_Unified_Ideographs_Extension_C:xr,CJK_Unified_Ideographs_Extension_D:Mr,CJK_Unified_Ideographs_Extension_E:Pr,CJK_Unified_Ideographs_Extension_F:Lr,Carian:$r,Caucasian_Albanian:Nr,Chakma:kr,Cham:Hr,Cherokee:Xr,Cherokee_Supplement:Yr,Chess_Symbols:zr,Combining_Diacritical_Marks:Wr,Combining_Diacritical_Marks_Extended:jr,Combining_Diacritical_Marks_For_Symbols:Gr,Combining_Diacritical_Marks_Supplement:Ur,Combining_Half_Marks:Vr,Common_Indic_Number_Forms:Kr,Control_Pictures:Jr,Coptic:Zr,Coptic_Epact_Numbers:qr,Counting_Rod_Numerals:Qr,Cuneiform:to,Cuneiform_Numbers_And_Punctuation:eo,Currency_Symbols:no,Cypriot_Syllabary:so,Cyrillic:io,Cyrillic_Extended_A:ro,Cyrillic_Extended_B:oo,Cyrillic_Extended_C:ao,Cyrillic_Supplement:uo,Deseret:co,Devanagari:lo,Devanagari_Extended:ho,Dingbats:Do,Dogra:_o,Domino_Tiles:fo,Duployan:go,Early_Dynastic_Cuneiform:po,Egyptian_Hieroglyphs:mo,Elbasan:Fo,Emoticons:Co,Enclosed_Alphanumeric_Supplement:Eo,Enclosed_Alphanumerics:bo,Enclosed_CJK_Letters_And_Months:So,Enclosed_Ideographic_Supplement:vo,Ethiopic:To,Ethiopic_Extended:yo,Ethiopic_Extended_A:Bo,Ethiopic_Supplement:Oo,General_Punctuation:wo,Geometric_Shapes:Ao,Geometric_Shapes_Extended:Io,Georgian:Ro,Georgian_Extended:xo,Georgian_Supplement:Mo,Glagolitic:Po,Glagolitic_Supplement:Lo,Gothic:$o,Grantha:No,Greek_And_Coptic:ko,Greek_Extended:Ho,Gujarati:Xo,Gunjala_Gondi:Yo,Gurmukhi:zo,Halfwidth_And_Fullwidth_Forms:Wo,Hangul_Compatibility_Jamo:jo,Hangul_Jamo:Go,Hangul_Jamo_Extended_A:Uo,Hangul_Jamo_Extended_B:Vo,Hangul_Syllables:Ko,Hanifi_Rohingya:Jo,Hanunoo:Zo,Hatran:qo,Hebrew:Qo,High_Private_Use_Surrogates:ta,High_Surrogates:ea,Hiragana:na,IPA_Extensions:sa,Ideographic_Description_Characters:ia,Ideographic_Symbols_And_Punctuation:ra,Imperial_Aramaic:oa,Indic_Siyaq_Numbers:aa,Inscriptional_Pahlavi:ua,Inscriptional_Parthian:ca,Javanese:la,Kaithi:ha,Kana_Extended_A:Da,Kana_Supplement:_a,Kanbun:da,Kangxi_Radicals:fa,Kannada:ga,Katakana:pa,Katakana_Phonetic_Extensions:ma,Kayah_Li:Fa,Kharoshthi:Ca,Khmer:Ea,Khmer_Symbols:ba,Khojki:Sa,Khudawadi:va,Lao:Ta,Latin_1_Supplement:ya,Latin_Extended_A:Ba,Latin_Extended_Additional:Oa,Latin_Extended_B:wa,Latin_Extended_C:Aa,Latin_Extended_D:Ia,Latin_Extended_E:Ra,Lepcha:xa,Letterlike_Symbols:Ma,Limbu:Pa,Linear_A:La,Linear_B_Ideograms:$a,Linear_B_Syllabary:Na,Lisu:ka,Low_Surrogates:Ha,Lycian:Xa,Lydian:Ya,Mahajani:za,Mahjong_Tiles:Wa,Makasar:ja,Malayalam:Ga,Mandaic:Ua,Manichaean:Va,Marchen:Ka,Masaram_Gondi:Ja,Mathematical_Alphanumeric_Symbols:Za,Mathematical_Operators:qa,Mayan_Numerals:Qa,Medefaidrin:tu,Meetei_Mayek:eu,Meetei_Mayek_Extensions:nu,Mende_Kikakui:su,Meroitic_Cursive:iu,Meroitic_Hieroglyphs:ru,Miao:ou,Miscellaneous_Mathematical_Symbols_A:au,Miscellaneous_Mathematical_Symbols_B:uu,Miscellaneous_Symbols:cu,Miscellaneous_Symbols_And_Arrows:lu,Miscellaneous_Symbols_And_Pictographs:hu,Miscellaneous_Technical:Du,Modi:_u,Modifier_Tone_Letters:du,Mongolian:fu,Mongolian_Supplement:gu,Mro:pu,Multani:mu,Musical_Symbols:Fu,Myanmar:Cu,Myanmar_Extended_A:Eu,Myanmar_Extended_B:bu,NKo:Su,Nabataean:vu,New_Tai_Lue:Tu,Newa:yu,Number_Forms:Bu,Nushu:Ou,Ogham:wu,Ol_Chiki:Au,Old_Hungarian:Iu,Old_Italic:Ru,Old_North_Arabian:xu,Old_Permic:Mu,Old_Persian:Pu,Old_Sogdian:Lu,Old_South_Arabian:$u,Old_Turkic:Nu,Optical_Character_Recognition:ku,Oriya:Hu,Ornamental_Dingbats:Xu,Osage:Yu,Osmanya:zu,Pahawh_Hmong:Wu,Palmyrene:ju,Pau_Cin_Hau:Gu,Phags_Pa:Uu,Phaistos_Disc:Vu,Phoenician:Ku,Phonetic_Extensions:Ju,Phonetic_Extensions_Supplement:Zu,Playing_Cards:qu,Private_Use_Area:Qu,Psalter_Pahlavi:tc,Rejang:ec,Rumi_Numeral_Symbols:nc,Runic:sc,Samaritan:ic,Saurashtra:rc,Sharada:oc,Shavian:ac,Shorthand_Format_Controls:uc,Siddham:cc,Sinhala:lc,Sinhala_Archaic_Numbers:hc,Small_Form_Variants:Dc,Sogdian:_c,Sora_Sompeng:dc,Soyombo:fc,Spacing_Modifier_Letters:gc,Specials:pc,Sundanese:mc,Sundanese_Supplement:Fc,Superscripts_And_Subscripts:Cc,Supplemental_Arrows_A:Ec,Supplemental_Arrows_B:bc,Supplemental_Arrows_C:Sc,Supplemental_Mathematical_Operators:vc,Supplemental_Punctuation:Tc,Supplemental_Symbols_And_Pictographs:yc,Supplementary_Private_Use_Area_A:Bc,Supplementary_Private_Use_Area_B:Oc,Sutton_SignWriting:wc,Syloti_Nagri:Ac,Syriac:Ic,Syriac_Supplement:Rc,Tagalog:xc,Tagbanwa:Mc,Tags:Pc,Tai_Le:Lc,Tai_Tham:$c,Tai_Viet:Nc,Tai_Xuan_Jing_Symbols:kc,Takri:Hc,Tamil:Xc,Tangut:Yc,Tangut_Components:zc,Telugu:Wc,Thaana:jc,Thai:Gc,Tibetan:Uc,Tifinagh:Vc,Tirhuta:Kc,Transport_And_Map_Symbols:Jc,Ugaritic:Zc,Unified_Canadian_Aboriginal_Syllabics:qc,Unified_Canadian_Aboriginal_Syllabics_Extended:Qc,Vai:tl,Variation_Selectors:el,Variation_Selectors_Supplement:nl,Vedic_Extensions:sl,Vertical_Forms:il,Warang_Citi:rl,Yi_Radicals:ol,Yi_Syllables:al,Yijing_Hexagram_Symbols:ul,Zanabazar_Square:cl,undefined:ll},Symbol.toStringTag,{value:"Module"})),Dl=Object.freeze(Object.defineProperty({__proto__:null},Symbol.toStringTag,{value:"Module"})),_l=[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],dl=[[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]],fl=[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],gl=Object.freeze(Object.defineProperty({__proto__:null,Close:_l,None:dl,Open:fl},Symbol.toStringTag,{value:"Module"})),pl=[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]],ml=[[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]],Fl=[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]],Cl=[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],El=[8212,[11834,11835]],bl=[47],Sl=[13],vl=[41,93],Tl=[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],yl=[[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]],Bl=[[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]],Ol=[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]],wl=[65532],Al=[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]],Il=[[127995,127999]],Rl=[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],xl=[160,847,[860,866],3848,3852,3858,[4057,4058],6158,7629,7676,8199,8209,8239,[78896,78902],[78905,78907],94180],Ml=[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],Pl=[[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]],Ll=[[1488,1514],[1519,1522],64285,[64287,64296],[64298,64310],[64312,64316],64318,[64320,64321],[64323,64324],[64326,64335]],$l=[45],Nl=[[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]],kl=[44,46,[58,59],894,1417,[1548,1549],2040,8260,65040,[65043,65044]],Hl=[[8228,8230],8943,65049,68342],Xl=[[4352,4447],[43360,43388]],Yl=[[4520,4607],[55243,55291]],zl=[[4448,4519],[55216,55238]],Wl=[10],jl=[[11,12],[8232,8233]],Gl=[133],Ul=[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]],Vl=[[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]],Kl=[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]],Jl=[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],Zl=[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],ql=[34,39,171,187,[8216,8217],[8219,8221],8223,[8249,8250],[10075,10080],[11776,11789],[11804,11805],[11808,11809],[128630,128632]],Ql=[[127462,127487]],th=[32],eh=[[55296,57343]],nh=[[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]],sh=[8288,65279],ih=[8205],rh=[8203],oh=Object.freeze(Object.defineProperty({__proto__:null,Alphabetic:pl,Ambiguous:ml,Break_After:Fl,Break_Before:Cl,Break_Both:El,Break_Symbols:bl,Carriage_Return:Sl,Close_Parenthesis:vl,Close_Punctuation:Tl,Combining_Mark:yl,Complex_Context:Bl,Conditional_Japanese_Starter:Ol,Contingent_Break:wl,E_Base:Al,E_Modifier:Il,Exclamation:Rl,Glue:xl,H2:Ml,H3:Pl,Hebrew_Letter:Ll,Hyphen:$l,Ideographic:Nl,Infix_Numeric:kl,Inseparable:Hl,JL:Xl,JT:Yl,JV:zl,Line_Feed:Wl,Mandatory_Break:jl,Next_Line:Gl,Nonstarter:Ul,Numeric:Vl,Open_Punctuation:Kl,Postfix_Numeric:Jl,Prefix_Numeric:Zl,Quotation:ql,Regional_Indicator:Ql,Space:th,Surrogate:eh,Unknown:nh,Word_Joiner:sh,ZWJ:ih,ZWSpace:rh},Symbol.toStringTag,{value:"Module"})),ah=[[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]],uh=[13],ch=[34],lh=[[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]],hh=[95,8239,[8255,8256],8276,[65075,65076],[65101,65103],65343],Dh=[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],_h=[[1488,1514],[1519,1522],64285,[64287,64296],[64298,64310],[64312,64316],64318,[64320,64321],[64323,64324],[64326,64335]],dh=[[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]],fh=[10],gh=[58,183,903,1375,1524,8231,65043,65109,65306],ph=[44,59,894,1417,[1548,1549],1644,2040,8260,65040,65044,65104,65108,65292,65307],mh=[46,[8216,8217],8228,65106,65287,65294],Fh=[[11,12],133,[8232,8233]],Ch=[[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]],Eh=[[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]],bh=[[127462,127487]],Sh=[39],vh=[32,5760,[8192,8198],[8200,8202],8287,12288],Th=[8205],yh=Object.freeze(Object.defineProperty({__proto__:null,ALetter:ah,CR:uh,Double_Quote:ch,Extend:lh,ExtendNumLet:hh,Format:Dh,Hebrew_Letter:_h,Katakana:dh,LF:fh,MidLetter:gh,MidNum:ph,MidNumLet:mh,Newline:Fh,Numeric:Ch,Other:Eh,Regional_Indicator:bh,Single_Quote:Sh,WSegSpace:vh,ZWJ:Th},Symbol.toStringTag,{value:"Module"})),Bh=Object.freeze(Object.defineProperty({__proto__:null,Bidi_Class:I3,Bidi_Mirroring_Glyph:Dl,Bidi_Paired_Bracket_Type:gl,Binary_Property:b0,Block:hl,Case_Folding:Xi,General_Category:a3,Line_Break:oh,Script:x5,Script_Extensions:Li,Word_Break:yh},Symbol.toStringTag,{value:"Module"}));function V7(r){const n=Object.keys(r);if(n.length===0)throw new Error("Expected at least one category, but received 0.");if(n.some(e=>{const s=r[e];return s===void 0||s.length===0}))throw new Error("Expected at least one sub category, but received 0.");return n.map(e=>{const i=r[e].map(o=>Oh(e,o));return new S1().union(...i)}).reduce((e,s)=>e.intersect(s))}function Oh(r,n){const e=Bh[r][n];return new S1().union(...e)}const R6=V7({Script:["Han","Katakana","Hiragana","Hangul","Bopomofo"],General_Category:["Other_Letter","Letter_Number","Other_Symbol","Modifier_Letter"]}),wh=V7({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(R6),Ah=I6(R6,wh);function Ih(){return I6(Ah)}function Rh(){return I6(R6)}const m7=r=>({sbr:.5,sbo:r,spr:.5,spo:r});class O1{static get globalFontMeasureCache(){return this._globalFontMeasureCache}static setFontMeasureCache(n,t,e){this._globalFontMeasureCache.has(n)||this._globalFontMeasureCache.set(n,new Map);const s=this._globalFontMeasureCache.get(n);s&&s.set(t,e)}static clearFontMeasureCache(n){var e;const t=n.split("/");if(t.length===1){const s=t[0];this._globalFontMeasureCache.delete(s)}else if(t.length===2){const s=t[0],i=t[1];(e=this._globalFontMeasureCache.get(s))==null||e.delete(i)}else return!1;return!0}static getFontMeasureCache(n,t){var e;return(e=this._globalFontMeasureCache.get(n))==null?void 0:e.get(t)}static autoCleanFontMeasureCache(n=1e6){let t=0,e=!1;for(const s of this._globalFontMeasureCache){const[,i]=s;if(t+=i.size,t>n){e=!0;break}}if(e){let s=0;for(const i of this._globalFontMeasureCache){const[o,a]=i;if(s+=a.size,s>n/2){const c=s-n/2;this._clearMeasureCache(c,a);break}this._globalFontMeasureCache.delete(o)}return!0}return!1}static getBaselineOffsetInfo(n,t){if(this._fontDataMap.size===0)return m7(t);const e=n.split(",");for(let s of e){s=s.replace(/'/g,"");const i=this._fontDataMap.get(s);if(!i)continue;const{subscriptSizeRatio:o,subscriptOffset:a,superscriptSizeRatio:c,superscriptOffset:u}=i;return{sbr:o,sbo:a*t,spr:c,spo:u*t}}return m7(t)}static getTextSizeByDom(n,t){if(t in this._getTextHeightCache)return this._getTextHeightCache[t];let e=document.getElementById("universheetTextSizeTest");const s="float:left;white-space:nowrap;visibility:hidden;margin:0;padding:0;";e||(e=document.createElement("span"),e.id="universheetTextSizeTest",document.getElementsByTagName("body")[0].appendChild(e)),e.style.cssText+=`${s};${t}`,e.innerText=n;const i=e.getBoundingClientRect(),o={width:i.width,height:i.height};return this._getTextHeightCache[t]=o,o}static getTextSize(n,t){const{fontString:e,fontSize:s,fontFamily:i}=t;let o=this._getBoundingBoxByFont(i,s);if(!o){const a=this.getMeasureText(n,e);o=this._calculateBoundingBoxByMeasureText(a,s)}return o}static getMeasureText(n,t){if(!this._context){const f=document.createElement("canvas");this._context=f.getContext("2d")}const e=this._context,s=this.getFontMeasureCache(t,n);if(s!=null)return s;e.font=t;const i=e.measureText(n),{width:o,fontBoundingBoxAscent:a,fontBoundingBoxDescent:c,actualBoundingBoxAscent:u,actualBoundingBoxDescent:l}=i,D={width:o,fontBoundingBoxAscent:a,fontBoundingBoxDescent:c,actualBoundingBoxAscent:u,actualBoundingBoxDescent:l};if(a==null||c==null||Number.isNaN(a)||Number.isNaN(c)){const f=this.getTextSizeByDom(W7,t).height;e.textBaseline==="top"?(D.fontBoundingBoxAscent=D.actualBoundingBoxAscent=f,D.fontBoundingBoxDescent=D.actualBoundingBoxDescent=0):e.textBaseline==="middle"?(D.fontBoundingBoxDescent=D.actualBoundingBoxDescent=f/2,D.fontBoundingBoxAscent=D.actualBoundingBoxAscent=f/2):(D.fontBoundingBoxDescent=D.actualBoundingBoxDescent=0,D.fontBoundingBoxAscent=D.actualBoundingBoxAscent=f)}return this.setFontMeasureCache(t,n,D),D}static _clearMeasureCache(n,t){let e=0;for(const s of t){const[i]=s;if(e>n)break;t.delete(i),e++}return!0}static _getBoundingBoxByFont(n,t=28,e=""){const s=this._fontDataMap.get(n);if(!s)return;const{notDefWidth:i,ascender:o,descender:a,typoAscender:c,typoDescender:u,strikeoutPosition:l,subscriptSizeRatio:D,subscriptOffset:f,superscriptSizeRatio:p,superscriptOffset:F,hdmxData:E,glyphHorizonMap:m}=s,b=E==null?void 0:E.indexOf(Math.floor(t)),S=m.get(e.charCodeAt(0));let v=i;if(S){const{width:y,pixelsPerEm:T=[]}=S;b?v=T[b]:v=y}return{width:v*t,ba:o*t,bd:a*t,aba:c*t,abd:u*t,sp:l*t,sbr:D,sbo:f*t,spr:p,spo:F*t}}static _calculateBoundingBoxByMeasureText(n,t){const{width:e,fontBoundingBoxAscent:s,fontBoundingBoxDescent:i,actualBoundingBoxAscent:o,actualBoundingBoxDescent:a}=n;return{width:e,ba:s,bd:i,aba:o,abd:a,sp:(s+i)/2,sbr:.5,sbo:t,spr:.5,spo:t}}}h(O1,"_getTextHeightCache",{}),h(O1,"_context"),h(O1,"_fontDataMap",new Map),h(O1,"_globalFontMeasureCache",new Map);const K7=180,xh=Math.PI/K7,Mh=K7/Math.PI,F7="rgb(",Ph="rgba(",l1=(r,n)=>r?n!=null?`${Ph+r.join(",")},${n})`:`${F7+r.join(",")})`:`${F7}0,0,0)`,Lh=100,w1=(r,n)=>{if(d.Tools.isNumber(r))return r;if(n&&r&&d.Tools.isString(r)&&r.substr(r.length-1,1)==="%"){const t=Number.parseFloat(r)/Lh;return n*t}return 0},$h=16,b2=(r,n)=>(n||(n=window),n.requestPostAnimationFrame?n.requestPostAnimationFrame(r):n.requestAnimationFrame?n.requestAnimationFrame(r):n.msRequestAnimationFrame?n.msRequestAnimationFrame(r):n.webkitRequestAnimationFrame?n.webkitRequestAnimationFrame(r):n.mozRequestAnimationFrame?n.mozRequestAnimationFrame(r):n.oRequestAnimationFrame?n.oRequestAnimationFrame(r):setTimeout(r,$h)),J7=(r,n)=>(n||(n=window),n.requestPostAnimationFrame?n.cancelPostAnimationFrame(r):n.requestAnimationFrame?n.cancelAnimationFrame(r):n.msRequestAnimationFrame?n.msCancelAnimationFrame(r):n.webkitRequestAnimationFrame?n.webkitCancelAnimationFrame(r):n.mozRequestAnimationFrame?n.mozCancelAnimationFrame(r):n.oRequestAnimationFrame?n.oCancelAnimationFrame(r):clearTimeout(r)),x6=()=>{const r=document.createElement("canvas");try{r.style=r.style||{}}catch(n){console.error(n)}return r},Nh=()=>document.createElement("img"),Z7=r=>r*Mh,v1=r=>r*xh,m6=()=>{let r="pointer";return typeof window<"u"&&!window.PointerEvent&&typeof navigator<"u"&&(r="mouse"),d.Tools.isTablet()&&!d.Tools.isIPhone()&&!(document&&"ontouchend"in document)&&(r="mouse"),r},q7=()=>d.Tools.getBrowserType()==="safari",kh=4,Q7=(r="obj",n=kh)=>{const t=window.navigator.userAgent.replace(/[^a-zA-Z0-9]/g,"").split("");let e="";for(let i=0;i<n;i++)e+=t[Math.round(Math.random()*(t.length-1))];const s=new Date().getTime();return`${r}_${e}_${s}`};function P1(r){return Object.prototype.toString.apply(r)}function q2(r){return P1(r)==="[object Function]"}function Hh(r){return P1(r)==="[object Date]"}function Xh(r){return P1(r)==="[object RegExp]"}function Yh(r){return P1(r)==="[object Array]"}function F6(r){return P1(r)==="[object String]"}function zh(r){return P1(r)==="[object Number]"}function Wh(r){return P1(r)==="[object Object]"}function Y2(r,n){return n=10**n,Math.round(r*n)/n}function H(r,n){return Math.round(r*n)/n}const t4=11,e4="Arial";function S2(r,n){const t=e4,e=t4;if(!r){const D=`${e}pt ${t}`;return{fontCache:D,fontString:D,fontSize:e,fontFamily:t}}let s=d.FontStyleType.ITALIC;(r.it===0||r.it===void 0)&&(s=d.FontStyleType.NORMAL);let i=d.FontStyleType.BOLD;(r.bl===0||r.bl===void 0)&&(i=d.FontStyleType.NORMAL);let o=e;r.fs&&(o=Math.ceil(r.fs));let a=t;if(r.ff){let D=r.ff;D=D.replace(/"/g,"").replace(/'/g,""),D.indexOf(" ")>-1&&(D=`"${D}"`),D==null&&(D=t),a=D}const{va:c}=r;if(c===d.BaselineOffset.SUBSCRIPT||c===d.BaselineOffset.SUPERSCRIPT){const D=O1.getBaselineOffsetInfo(a,o),{sbr:f,spr:p}=D;o*=c===d.BaselineOffset.SUBSCRIPT?f:p}const u=`${s} ${i} ${o}pt ${a}`,l=`${u}, ${Z2} `;return{fontCache:u,fontString:l,fontSize:o,fontFamily:a}}const jh=Rh().toRegExp();function z2(r){return jh.test(r)}const Gh=Ih().toRegExp();function Q2(r){return Gh.test(r)}function Uh(r){return!!/[\u0000-\u024F]/gi.exec(r)}function Vh(r){return!!/[\u0000-\u007F]/gi.exec(r)}function Kh(r){return!!/[\u0080-\u00FF]/gi.exec(r)}function Jh(r){return!!/[\u0100-\u017F]/gi.exec(r)}function Zh(r){return!!/[\u0180-\u024F]/gi.exec(r)}const n4=/^(?:[#*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,qh=/^(?:[#*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 M6(r){return qh.test(r)}function P6(r){return/[\u0600-\u06FF]|[\u0750-\u0750]|[\u0870-\u08FF]|[\uFB50-\uFDFF]|[\uFE70-\uFEFF]/gi.test(r)}function L6(r){return/[\u0180-\u024F]/gi.test(r)}function s4(r){return/\s+/g.test(r)}const C7=1e3;let P2;function w2(){if(P2)return P2;let r=56;for(;r<C7*2;r++)if(matchMedia(`(max-resolution: ${r}dpi)`).matches===!0)return r;return P2=r,setTimeout(()=>{P2=null},C7),r}const i4=72,Qh=25.4;function tD(r){return r/(i4/w2())}function eD(r){return r*(i4/w2())}function nD(r){return r*(w2()/Qh)}function sD(r){return r*w2()}function $6(r){const{scaleX:n=1,scaleY:t=1}=r;return Math.max(n,t)}function Y1(r,n,t,e){const s=r-1,i=n-1,o=t[s]||0,a=t[r]||t[t.length-1],c=e[i]||0,u=e[n]||e[e.length-1];return{startY:o,endY:a,startX:c,endX:u}}function Q1(r,n,t,e,s){let{startY:i,endY:o,startX:a,endX:c}=Y1(r,n,t,e);const{isMerged:u,isMergedMainCell:l,startRow:D,startColumn:f,endRow:p,endColumn:F}=t6(r,n,s);let E={startRow:D,startColumn:f,endRow:p,endColumn:F,startY:0,endY:0,startX:0,endX:0};const m=t.length-1,b=e.length-1;if(u&&D!==-1&&f!==-1){const S=t[D-1]||0,v=t[p]||t[m],y=e[f-1]||0,T=e[F]||e[b];E={...E,startY:S,endY:v,startX:y,endX:T}}else if(!u&&p!==-1&&F!==-1){const S=t[p]||t[m],v=e[F]||e[b];E={...E,startY:i,endY:S,startX:a,endX:v}}return{isMerged:u,isMergedMainCell:l,actualRow:r,actualColumn:n,startY:i,endY:o,startX:a,endX:c,mergeInfo:E}}function t6(r,n,t){let e=!1,s=!1,i=r,o=n,a=r,c=n;if(t==null)return{actualRow:r,actualColumn:n,isMergedMainCell:s,isMerged:e,endRow:i,endColumn:o,startRow:a,startColumn:c};for(let u=0;u<t.length;u++){const{startRow:l,endRow:D,startColumn:f,endColumn:p}=t[u];if(r===l&&n===f){i=D,o=p,a=l,c=f,s=!0;break}if(r>=l&&r<=D&&n>=f&&n<=p){i=D,o=p,a=l,c=f,e=!0;break}}return{actualRow:r,actualColumn:n,isMergedMainCell:s,isMerged:e,endRow:i,endColumn:o,startRow:a,startColumn:c}}function r4(r,n,t,e){let s=!1;for(let i=n;i<=t;i++){const{isMerged:o,isMergedMainCell:a}=t6(r,i,e);if(!o&&!a){s=!0;break}}return s}function C6(r,n,t){const{startY:e,endY:s,startX:i,endX:o}=r;return r.startY=e+t,r.endY=s+t,r.startX=i+n,r.endX=o+n,{...r}}function o4(r,n){return!(r.left>n.right||r.top>n.bottom||n.left>r.right||n.top>r.bottom)}function a4(r){const n=document.createElement("style");document.head.appendChild(n);const t=n.sheet;for(const e of r)t==null||t.insertRule(e,t.cssRules.length)}function u4(r){for(let n=0,t=document.head.childNodes.length;n<t;n++){const e=document.head.childNodes[n];if(e.nodeName==="STYLE"&&e.textContent&&e.textContent.indexOf(r)>-1)return!0}return!1}function H1(r){return Number(r.replace(/px/gi,""))}function c4(r){const n=getComputedStyle(r),{borderTopWidth:t,borderLeftWidth:e,borderRightWidth:s,borderBottomWidth:i,width:o,height:a}=n;return{top:H1(t),left:H1(e),right:H1(s),bottom:H1(i),width:H1(o),height:H1(a)}}const l4=.75;function iD(r){return r/l4}function rD(r){return r*l4}class I{constructor(n=0,t=0){this.x=n,this.y=t}static Zero(){return new I(0,0)}static One(){return new I(1,1)}static FromArray(n,t=0){return new I(n[t],n[t+1])}static FromArrayToRef(n,t,e){e.x=n[t],e.y=n[t+1]}static CatmullRom(n,t,e,s,i){const o=i*i,a=i*o,c=.5*(2*t.x+(-n.x+e.x)*i+(2*n.x-5*t.x+4*e.x-s.x)*o+(-n.x+3*t.x-3*e.x+s.x)*a),u=.5*(2*t.y+(-n.y+e.y)*i+(2*n.y-5*t.y+4*e.y-s.y)*o+(-n.y+3*t.y-3*e.y+s.y)*a);return new I(c,u)}static Clamp(n,t,e){let s=n.x;s=s>e.x?e.x:s,s=s<t.x?t.x:s;let i=n.y;return i=i>e.y?e.y:i,i=i<t.y?t.y:i,new I(s,i)}static Hermite(n,t,e,s,i){const o=i*i,a=i*o,c=2*a-3*o+1,u=-2*a+3*o,l=a-2*o+i,D=a-o,f=n.x*c+e.x*u+t.x*l+s.x*D,p=n.y*c+e.y*u+t.y*l+s.y*D;return new I(f,p)}static Hermite1stDerivative(n,t,e,s,i){const o=I.Zero();return this.Hermite1stDerivativeToRef(n,t,e,s,i,o),o}static Hermite1stDerivativeToRef(n,t,e,s,i,o){const a=i*i;o.x=(a-i)*6*n.x+(3*a-4*i+1)*t.x+(-a+i)*6*e.x+(3*a-2*i)*s.x,o.y=(a-i)*6*n.y+(3*a-4*i+1)*t.y+(-a+i)*6*e.y+(3*a-2*i)*s.y}static Lerp(n,t,e){const s=n.x+(t.x-n.x)*e,i=n.y+(t.y-n.y)*e;return new I(s,i)}static Dot(n,t){return n.x*t.x+n.y*t.y}static Normalize(n){const t=I.Zero();return this.NormalizeToRef(n,t),t}static NormalizeToRef(n,t){const e=n.length();e!==0&&(t.x=n.x/e,t.y=n.y/e)}static Minimize(n,t){const e=n.x<t.x?n.x:t.x,s=n.y<t.y?n.y:t.y;return new I(e,s)}static Maximize(n,t){const e=n.x>t.x?n.x:t.x,s=n.y>t.y?n.y:t.y;return new I(e,s)}static PointInTriangle(n,t,e,s){const i=.5*(-e.y*s.x+t.y*(-e.x+s.x)+t.x*(e.y-s.y)+e.x*s.y),o=i<0?-1:1,a=(t.y*s.x-t.x*s.y+(s.y-t.y)*n.x+(t.x-s.x)*n.y)*o,c=(t.x*e.y-t.y*e.x+(t.y-e.y)*n.x+(e.x-t.x)*n.y)*o;return a>0&&c>0&&a+c<2*i*o}static Distance(n,t){return Math.sqrt(I.DistanceSquared(n,t))}static DistanceSquared(n,t){const e=n.x-t.x,s=n.y-t.y;return e*e+s*s}static Center(n,t){return I.CenterToRef(n,t,I.Zero())}static CenterToRef(n,t,e){return e.copyFromFloats((n.x+t.x)/2,(n.y+t.y)/2)}static DistanceOfPointFromSegment(n,t,e){const s=I.DistanceSquared(t,e);if(s===0)return I.Distance(n,t);const i=e.subtract(t),o=Math.max(0,Math.min(1,I.Dot(n.subtract(t),i)/s)),a=t.add(i.multiplyByFloats(o,o));return I.Distance(n,a)}static create(n,t){return new I(n,t)}toString(){return`{X: ${this.x} Y: ${this.y}}`}getClassName(){return"Vector2"}getHashCode(){let n=this.x|0;return n=n*397^(this.y|0),n}toArray(n,t=0){return n[t]=this.x,n[t+1]=this.y,this}fromArray(n,t=0){return I.FromArrayToRef(n,t,this),this}asArray(){const n=new Array;return this.toArray(n,0),n}copyFrom(n){return this.x=n.x,this.y=n.y,this}copyFromFloats(n,t){return this.x=n,this.y=t,this}set(n,t){return this.copyFromFloats(n,t)}add(n){return new I(this.x+n.x,this.y+n.y)}addToRef(n,t){return t.x=this.x+n.x,t.y=this.y+n.y,this}addByPoint(n,t){return new I(this.x+n,this.y+t)}addInPlace(n){return this.x+=n.x,this.y+=n.y,this}subtract(n){return new I(this.x-n.x,this.y-n.y)}subtractByPoint(n,t){return new I(this.x-n,this.y-t)}subtractToRef(n,t){return t.x=this.x-n.x,t.y=this.y-n.y,this}subtractInPlace(n){return this.x-=n.x,this.y-=n.y,this}multiplyInPlace(n){return this.x*=n.x,this.y*=n.y,this}multiply(n){return new I(this.x*n.x,this.y*n.y)}multiplyToRef(n,t){return t.x=this.x*n.x,t.y=this.y*n.y,this}multiplyByFloats(n,t){return new I(this.x*n,this.y*t)}divide(n){return new I(this.x/n.x,this.y/n.y)}divideToRef(n,t){return t.x=this.x/n.x,t.y=this.y/n.y,this}divideInPlace(n){return this.divideToRef(n,this)}negate(){return new I(-this.x,-this.y)}negateInPlace(){return this.x*=-1,this.y*=-1,this}negateToRef(n){return n.copyFromFloats(this.x*-1,this.y*-1)}scaleInPlace(n){return this.x*=n,this.y*=n,this}scale(n){const t=new I(0,0);return this.scaleToRef(n,t),t}scaleToRef(n,t){return t.x=this.x*n,t.y=this.y*n,this}scaleAndAddToRef(n,t){return t.x+=this.x*n,t.y+=this.y*n,this}equals(n){return n&&this.x===n.x&&this.y===n.y}floor(){return new I(Math.floor(this.x),Math.floor(this.y))}fract(){return new I(this.x-Math.floor(this.x),this.y-Math.floor(this.y))}rotate(n){const t=Math.cos(n),e=Math.sin(n),s=t*this.x-e*this.y,i=e*this.x+t*this.y;return this.x=s,this.y=i,this}rotateToRef(n,t){const e=Math.cos(n),s=Math.sin(n);return t.x=e*this.x-s*this.y,t.y=s*this.x+e*this.y,this}rotateByPoint(n,t=I.create(0,0)){const e=Math.cos(n),s=Math.sin(n),i=t.x+(this.x-t.x)*e-(this.y-t.y)*s,o=t.y+(this.x-t.x)*s+(this.y-t.y)*e;return this.x=i,this.y=o,this}transformCoordinateOnRotate(n){const t=Math.sqrt(this.x**2+this.y**2),e=Math.atan2(this.y,this.x),s=-n+e;return this.x=t*Math.cos(s),this.y=t*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 I.NormalizeToRef(this,this),this}clone(){return new I(this.x,this.y)}}const $2=[1,0,0,1,0,0];class o1{constructor(n=$2){h(this,"dirty",!1);h(this,"_m");this._m=n&&n.slice()||$2}static create(n=$2){return new this(n)}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 o1(this._m)}copyInto(n){n._m[0]=this._m[0],n._m[1]=this._m[1],n._m[2]=this._m[2],n._m[3]=this._m[3],n._m[4]=this._m[4],n._m[5]=this._m[5]}applyPoint(n,t=!1){const e=this._m,s=e[0]*n.x+e[2]*n.y,i=e[1]*n.x+e[3]*n.y;return t?new I(s,i):new I(s+e[4],i+e[5])}translate(n,t){return this._m[4]+=this._m[0]*n+this._m[2]*t,this._m[5]+=this._m[1]*n+this._m[3]*t,this}scale(n,t){return this._m[0]*=n,this._m[1]*=n,this._m[2]*=t,this._m[3]*=t,this}rotate(n){const t=v1(n),e=Math.cos(t),s=Math.sin(t),i=this._m[0]*e+this._m[2]*s,o=this._m[1]*e+this._m[3]*s,a=this._m[0]*-s+this._m[2]*e,c=this._m[1]*-s+this._m[3]*e;return this._m[0]=i,this._m[1]=o,this._m[2]=a,this._m[3]=c,this}getTranslation(){return{x:this._m[4],y:this._m[5]}}skew(n,t){const e=this._m[0]+this._m[2]*t,s=this._m[1]+this._m[3]*t,i=this._m[2]+this._m[0]*n,o=this._m[3]+this._m[1]*n;return this._m[0]=e,this._m[1]=s,this._m[2]=i,this._m[3]=o,this}multiply(n){const t=this._m[0]*n._m[0]+this._m[2]*n._m[1],e=this._m[1]*n._m[0]+this._m[3]*n._m[1],s=this._m[0]*n._m[2]+this._m[2]*n._m[3],i=this._m[1]*n._m[2]+this._m[3]*n._m[3],o=this._m[0]*n._m[4]+this._m[2]*n._m[5]+this._m[4],a=this._m[1]*n._m[4]+this._m[3]*n._m[5]+this._m[5];return this._m[0]=t,this._m[1]=e,this._m[2]=s,this._m[3]=i,this._m[4]=o,this._m[5]=a,this}invert(){const n=1/(this._m[0]*this._m[3]-this._m[1]*this._m[2]),t=this._m[3]*n,e=-this._m[1]*n,s=-this._m[2]*n,i=this._m[0]*n,o=n*(this._m[2]*this._m[5]-this._m[3]*this._m[4]),a=n*(this._m[1]*this._m[4]-this._m[0]*this._m[5]);return this._m[0]=t,this._m[1]=e,this._m[2]=s,this._m[3]=i,this._m[4]=o,this._m[5]=a,this}getMatrix(){return this._m}getMatrixByAccurate(n=3){return this._m.map(t=>Y2(t,n))}setAbsolutePosition(n){const t=this._m[0],e=this._m[1],s=this._m[2],i=this._m[3],o=this._m[4],a=this._m[5],c=(t*(n.y-a)-e*(n.x-o))/(t*i-e*s),u=(n.x-o-s*c)/t;return this.translate(u,c)}decompose(){const n=this._m[0],t=this._m[1],e=this._m[2],s=this._m[3],i=this._m[4],o=this._m[5],a=n*s-t*e,c={x:i,y:o,angle:0,scaleX:0,scaleY:0,skewX:0,skewY:0};if(n!==0||t!==0){const u=Math.sqrt(n*n+t*t);c.angle=t>0?Math.acos(n/u):-Math.acos(n/u),c.scaleX=u,c.scaleY=a/u,c.skewX=(n*e+t*s)/a,c.skewY=0}else if(e!==0||s!==0){const u=Math.sqrt(e*e+s*s);c.angle=Math.PI/2-(s>0?Math.acos(-e/u):-Math.acos(e/u)),c.scaleX=a/u,c.scaleY=u,c.skewX=0,c.skewY=(n*e+t*s)/a}return c.angle=Z7(c.angle),c}makeBoundingBoxFromPoints(n){if(this)for(let l=0;l<n.length;l++)n[l]=this.applyPoint(n[l]);const t=[n[0].x,n[1].x,n[2].x,n[3].x],e=Math.min(...t),i=Math.max(...t)-e,o=[n[0].y,n[1].y,n[2].y,n[3].y],a=Math.min(...o),u=Math.max(...o)-a;return{left:e,top:a,width:i,height:u,points:n}}composeMatrix(n){const t=new o1([1,0,0,1,n.left||0,n.top||0]);return n.angle&&t.rotate(n.angle),(n.scaleX!==1||n.scaleY!==1||n.skewX||n.skewY||n.flipX||n.flipY)&&t.multiply(this._calcDimensionsMatrix(n)),this._m=t.getMatrix(),this}clone(){return new o1([...this._m])}_calcDimensionsMatrix(n){var i,o;const t=(i=n.scaleX)!=null?i:1,e=(o=n.scaleY)!=null?o:1,s=new o1([n.flipX?-t:t,0,0,n.flipY?-e:e,0,0]);return n.skewX&&s.multiply(new o1([1,0,Math.tan(v1(n.skewX)),1,0,0])),n.skewY&&s.multiply(new o1([1,Math.tan(v1(n.skewY)),0,1,0,0])),s}}const W2=["top","left","width","height","angle","scaleX","scaleY","skewX","skewY","flipX","flipY","strokeWidth"];class I1{constructor(n){h(this,"groupKey");h(this,"isInGroup",!1);h(this,"onTransformChangeObservable",new d.Observable);h(this,"onPointerDownObserver",new d.Observable);h(this,"onPointerMoveObserver",new d.Observable);h(this,"onPointerUpObserver",new d.Observable);h(this,"onDblclickObserver",new d.Observable);h(this,"onTripleClickObserver",new d.Observable);h(this,"onMouseWheelObserver",new d.Observable);h(this,"onPointerOutObserver",new d.Observable);h(this,"onPointerLeaveObserver",new d.Observable);h(this,"onPointerOverObserver",new d.Observable);h(this,"onPointerEnterObserver",new d.Observable);h(this,"onIsAddedToParentObserver",new d.Observable);h(this,"onDisposeObserver",new d.Observable);h(this,"_oKey");h(this,"_dirty",!0);h(this,"_top",0);h(this,"_topOrigin",0);h(this,"_left",0);h(this,"_leftOrigin",0);h(this,"_width",0);h(this,"_widthOrigin",0);h(this,"_height",0);h(this,"_heightOrigin",0);h(this,"_angle",0);h(this,"_scaleX",1);h(this,"_scaleY",1);h(this,"_skewX",0);h(this,"_skewY",0);h(this,"_flipX",!1);h(this,"_flipY",!1);h(this,"_strokeWidth",0);h(this,"_parent");h(this,"_zIndex",0);h(this,"_evented",!0);h(this,"_visible",!0);h(this,"_debounceParentDirty",!0);h(this,"_transform",new o1);h(this,"_cursor",r1.DEFAULT);h(this,"_isTransformer",!1);h(this,"_forceRender",!1);h(this,"_layer");n?this._oKey=n:this._oKey=Q7()}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 N.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 t;const n=((t=this.getParent())==null?void 0:t.ancestorScaleX)||1;return this.scaleX*n}get ancestorScaleY(){var t;const n=((t=this.getParent())==null?void 0:t.ancestorScaleY)||1;return this.scaleY*n}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(n){this._transform=n}set zIndex(n){this._zIndex=n}set parent(n){this._parent=n}set evented(n){this._evented=n}set debounceParentDirty(n){this._debounceParentDirty=n}set isTransformer(n){this._isTransformer=n}set cursor(n){this.setCursor(n)}set layer(n){this._layer=n}set top(n){var t;this._topOrigin=n,this._top=w1(n,(t=this._parent)==null?void 0:t.height)}set left(n){var t;this._leftOrigin=n,this._left=w1(n,(t=this._parent)==null?void 0:t.width)}set width(n){var t;this._widthOrigin=n,this._width=w1(n,(t=this._parent)==null?void 0:t.width)}set height(n){var t;this._heightOrigin=n,this._height=w1(n,(t=this._parent)==null?void 0:t.height)}set strokeWidth(n){this._strokeWidth=n}set angle(n){this._angle=n}set scaleX(n){this._scaleX=n}set scaleY(n){this._scaleY=n}set skewX(n){this._skewX=n}set flipY(n){this._flipY=n}set flipX(n){this._flipX=n}set skewY(n){this._skewY=n}makeDirty(n=!0){if(this._dirty=n,n){if(this._layer==null){this._dirty=!1;return}typeof this._layer.debounceParentTimeout=="function"&&this._layer.debounceParentTimeout(),this._layer.debounceParentTimeout=d.requestImmediateMacroTask(()=>{var t;(t=this._layer)==null||t.makeDirty(n)})}return this}makeDirtyNoDebounce(n=!0){var t;return this._dirty=n,n&&((t=this._layer)==null||t.makeDirty(n)),this}isDirty(){return this._dirty}translate(n,t){const e=this.top;t!==void 0&&(this.top=t);const s=this.left;return n!==void 0&&(this.left=n),this._setTransForm(),this.onTransformChangeObservable.notifyObservers({type:i1.translate,value:{top:this._top,left:this._left},preValue:{top:e,left:s}}),this}resize(n,t){const e=this.width;n!==void 0&&(this.width=n);const s=this.height;return t!==void 0&&(this.height=t),this._setTransForm(),this.onTransformChangeObservable.notifyObservers({type:i1.resize,value:{width:this._width,height:this._height},preValue:{width:e,height:s}}),this}scale(n,t){const e=this.scaleX;n!==void 0&&(this.scaleX=n);const s=this.scaleY;return t!==void 0&&(this.scaleY=t),this._setTransForm(),this.onTransformChangeObservable.notifyObservers({type:i1.scale,value:{scaleX:this._scaleX,scaleY:this._scaleY},preValue:{scaleX:e,scaleY:s}}),this}skew(n,t){const e=n;n!==void 0&&(this.skewX=n);const s=t;return t!==void 0&&(this.skewY=t),this._setTransForm(),this.onTransformChangeObservable.notifyObservers({type:i1.skew,value:{skewX:this._skewX,skewY:this._skewY},preValue:{skewX:e,skewY:s}}),this}flip(n,t){const e=n;n!==void 0&&(this.flipX=n);const s=t;return t!==void 0&&(this.flipY=t),this._setTransForm(),this.onTransformChangeObservable.notifyObservers({type:i1.flip,value:{flipX:this._flipX,flipY:this._flipY},preValue:{flipX:e,flipY:s}}),this}transformByState(n){const t=Object.keys(n),e={};if(t.length!==0)return t.forEach(s=>{n[s]!==void 0&&(e[s]=this[s],this[s]=n[s])}),this._setTransForm(),this.onTransformChangeObservable.notifyObservers({type:i1.all,value:n,preValue:e}),this}isRender(n){return this._forceRender?!1:n&&!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(n,t){}isHit(n){const t=this._getInverseCoord(n);return t.x>=-this.strokeWidth/2&&t.x<=this.width+this.strokeWidth/2&&t.y>=-this.strokeWidth/2&&t.y<=this.height+this.strokeWidth/2}on(n,t){return this[`on${n}Observer`].add(t.bind(this))}off(n,t){this[`on${n}Observer`].remove(t)}clear(n){this[`on${n}Observer`].clear()}triggerPointerMove(n){var t,e;return(t=this.onPointerMoveObserver.notifyObservers(n))!=null&&t.stopPropagation?!0:((e=this._parent)==null||e.triggerPointerMove(n),!1)}triggerPointerDown(n){var t,e;return(t=this.onPointerDownObserver.notifyObservers(n))!=null&&t.stopPropagation?!0:((e=this._parent)==null||e.triggerPointerDown(n),!1)}triggerPointerUp(n){var t,e;return(t=this.onPointerUpObserver.notifyObservers(n))!=null&&t.stopPropagation?!0:((e=this._parent)==null||e.triggerPointerUp(n),!1)}triggerDblclick(n){var t,e;return(t=this.onDblclickObserver.notifyObservers(n))!=null&&t.stopPropagation?!0:((e=this._parent)==null||e.triggerDblclick(n),!1)}triggerTripleClick(n){var t,e;return(t=this.onTripleClickObserver.notifyObservers(n))!=null&&t.stopPropagation?!0:((e=this._parent)==null||e.triggerTripleClick(n),!1)}triggerMouseWheel(n){var t,e;return(t=this.onMouseWheelObserver.notifyObservers(n))!=null&&t.stopPropagation?!0:((e=this._parent)==null||e.triggerMouseWheel(n),!1)}triggerPointerOut(n){var t,e;return(t=this.onPointerOutObserver.notifyObservers(n))!=null&&t.stopPropagation?!0:((e=this._parent)==null||e.triggerPointerOut(n),!1)}triggerPointerLeave(n){var t,e;return(t=this.onPointerLeaveObserver.notifyObservers(n))!=null&&t.stopPropagation?!0:((e=this._parent)==null||e.triggerPointerLeave(n),!1)}triggerPointerOver(n){var t;return this.onPointerOverObserver.notifyObservers(n)?!0:((t=this._parent)==null||t.triggerPointerOver(n),!1)}triggerPointerEnter(n){var t,e;return(t=this.onPointerEnterObserver.notifyObservers(n))!=null&&t.stopPropagation?!0:((e=this._parent)==null||e.triggerPointerEnter(n),!1)}dispose(){var n;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(),(n=this.parent)==null||n.removeObject(this),this.onDisposeObserver.notifyObservers(this),this._makeDirtyMix(),this.onDisposeObserver.clear()}toJson(){const n={};return W2.forEach(t=>{this[t]&&(n[t]=this[t])}),n}getScene(){let n=this.parent;if(n!=null){if(n.classType===N.SCENE)return n;for(;n;){if(n.classType===N.SCENE)return n;n=n.getParent()}}}resetCursor(){var n;(n=this.getScene())==null||n.resetCursor()}setCursor(n){var t;this._cursor=n,(t=this.getScene())==null||t.setCursor(n)}getEngine(){let n=this.getParent();for(;n!=null;){if(n===N.ENGINE)return n;n=n.getParent()}return null}getObjects(){return[]}_getInverseCoord(n){return this._transform.clone().invert().applyPoint(n)}_setTransForm(){const n=o1.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=n,this._makeDirtyMix()}_makeDirtyMix(){this.debounceParentDirty?this.makeDirty(!0):this.makeDirtyNoDebounce(!0)}}var h4=(r=>(r[r.SPAN=0]="SPAN",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))(h4||{}),n2=(r=>(r[r.SECTION=0]="SECTION",r[r.PAGE=1]="PAGE",r[r.COLUMN=2]="COLUMN",r))(n2||{}),A2=(r=>(r[r.PARAGRAPH=0]="PARAGRAPH",r[r.BLOCK=1]="BLOCK",r))(A2||{}),u1=(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))(u1||{}),T1=(r=>(r[r.VERTICAL=0]="VERTICAL",r[r.HORIZONTAL=1]="HORIZONTAL",r[r.AUTO=2]="AUTO",r))(T1||{});function oD(r){var e;const n=r==null?void 0:r.parent;return n==null?!1:((e=n.spanGroup[0])==null?void 0:e.spanType)===u1.LIST}function aD(r,n){const t=D4(r,n);if(t==null)return!1;const{paragraphStyle:e}=t;return e==null?!1:d.checkParagraphHasIndentByStyle(e)}function uD(r){const n=r==null?void 0:r.parent,t=n==null?void 0:n.parent,e=n==null?void 0:n.spanGroup,s=t==null?void 0:t.divides;if(e&&r&&s&&n){const i=e.indexOf(r);if(s.indexOf(n)===s.length-1&&i===e.length-1)return!0}return!1}function cD(r){const n=r==null?void 0:r.parent,t=n==null?void 0:n.parent,e=n==null?void 0:n.spanGroup,s=t==null?void 0:t.divides;if(e&&r&&s&&n){const i=e.indexOf(r),o=s.indexOf(n);if(o===0&&i===0||o===0&&i===1&&e[0].spanType===u1.LIST)return!0}return!1}function D4(r,n){var s;const t=(s=r==null?void 0:r.parent)==null?void 0:s.parent;if(t==null||n==null)return;const e=n.paragraphs;if(e!=null){for(const i of e)if(i.startIndex===t.paragraphIndex)return i}}function lD(r){return r==null?!1:[d.DataStreamTreeTokenType.PARAGRAPH,d.DataStreamTreeTokenType.TAB,d.DataStreamTreeTokenType.SECTION_BREAK].indexOf(r.streamType)!==-1||r.content===d.DataStreamTreeTokenType.SPACE}function hD(r,n){return r==null||n==null||r.parent==null||n.parent==null?!1:r.parent.parent===n.parent.parent}function N6(){let r=1;const t=x6().getContext("2d");return r=(()=>{const e=window.devicePixelRatio||1,s=t.webkitBackingStorePixelRatio||t.mozBackingStorePixelRatio||t.msBackingStorePixelRatio||t.oBackingStorePixelRatio||t.backingStorePixelRatio||1;return e/s})(),r<1?1:r}function k6(r,n,t){let e=0,s=0,i=0,o=0;const{startX:a,startY:c,endX:u,endY:l}=t;n===J.TOP?(e=a,s=c,i=u,o=c):n===J.BOTTOM?(e=a,s=l,i=u,o=l):n===J.LEFT?(e=a,s=c,i=a,o=l):n===J.RIGHT&&(e=u,s=c,i=u,o=l),r.beginPath(),r.moveTo(e,s),r.lineTo(i,o),r.stroke()}function _4(r,n,t){let e=0,s=0,i=0,o=0;const{startX:a,startY:c,endX:u,endY:l}=t;n===J.TL_BR?(e=a,s=c,i=u,o=l):n===J.TL_BC?(e=a,s=c,i=(a+u)/2,o=l):n===J.TL_MR?(e=a,s=c,i=u,o=(c+l)/2):n===J.BL_TR?(e=a,s=l,i=u,o=c):n===J.ML_TR?(e=a,s=(c+l)/2,i=u,o=c):n===J.BC_TR&&(e=(a+u)/2,s=l,i=u,o=c),r.beginPath(),r.moveTo(e,s),r.lineTo(i,o),r.stroke()}function d4(r,n,t){let e=0,s=0,i=0,o=0;const{startX:a,startY:c,endX:u,endY:l}=t;n===J.TOP?(e=a,s=c,i=u,o=c):n===J.BOTTOM?(e=a,s=l,i=u,o=l):n===J.LEFT?(e=a,s=c,i=a,o=l):n===J.RIGHT&&(e=u,s=c,i=u,o=l),r.beginPath(),r.clearRectForTexture(e,s,i-e,o-s)}function H6(r,n){n===d.BorderStyleTypes.HAIR?r.setLineDash([1,2]):n===d.BorderStyleTypes.DASH_DOT_DOT||n===d.BorderStyleTypes.MEDIUM_DASH_DOT_DOT?r.setLineDash([2,2,5,2,2]):n===d.BorderStyleTypes.DASH_DOT||n===d.BorderStyleTypes.MEDIUM_DASH_DOT||n===d.BorderStyleTypes.SLANT_DASH_DOT?r.setLineDash([2,5,2]):n===d.BorderStyleTypes.DOTTED?r.setLineDash([2]):n===d.BorderStyleTypes.DASHED||n===d.BorderStyleTypes.MEDIUM_DASHED?r.setLineDash([3]):r.setLineDash([0])}function f4(){const r=g4(1);return r-Math.floor(r)}function g4(r){return Math.ceil(r/N6()*100)/100}function X6(r){let n=1;return r===d.BorderStyleTypes.MEDIUM||r===d.BorderStyleTypes.MEDIUM_DASH_DOT||r===d.BorderStyleTypes.MEDIUM_DASHED||r===d.BorderStyleTypes.MEDIUM_DASH_DOT_DOT?n=2:r===d.BorderStyleTypes.THICK&&(n=3),n}function v2(r,n,t,e,s=I.create(0,0)){const i=r.add(n).rotateByPoint(e),o=i.subtract(n),a=e-t;return o.rotateByPoint(a,i).add(s).transformCoordinateOnRotate(a)}function p4(r){return r>0?E2.DOWN:E2.UP}function Y6(r,n,t){var F;const e=[];let s=0,i=0,o=0,a=0,c=0;const u=p4(t),l=r.length;t=Math.abs(t);const D=Math.tan(t),f=Math.sin(t),p=Math.cos(t);if(u===E2.UP){let E=0;for(let m=0;m<l;m++){const b=r[m],{lineHeight:S=0}=b;E+=m===0?0:S;const v=n*f+S*p;e.push(E/D),v>i&&(i=v),m===0&&(o+=S*f,c+=S*p)}o+=E/f+n*p,c-=i}else{let E=0,m=-1;const b=[];for(let y=l-1;y>=0;y--){const T=r[y],{lineHeight:B=0}=T,O=B/D,w=(n+O)*f;b.unshift(B/D),w>i&&(i=w,E=O,m=y),y===0?o+=B*f:y===l-1?o+=n*p+B/f:o+=B/f}let S=((F=r[m])==null?void 0:F.lineHeight)||0,v=0;for(let y=m+1;y<=l-1;y++){const T=r[y],{lineHeight:B=0}=T;S+=B,v+=b[y]||0,e[y]=-v}v=0;for(let y=m-1;y>=0;y--){const T=r[y],{lineHeight:B=0}=T;v+=b[y+1]||0,e[y]=v,s+=B}e[m]=0,l===1&&(o+=n*p),a=S/f-E*p}return{rotateTranslateXList:e,rotatedHeight:i,rotatedWidth:o,fixOffsetX:a,fixOffsetY:c,rotateTranslateY:s}}function DD(){const r=.5-f4();return{left:r,top:r}}var m4=(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))(m4||{});class N2{}h(N2,"DOM_DELTA_PIXEL",0),h(N2,"DOM_DELTA_LINE",1),h(N2,"DOM_DELTA_PAGE",2);var d1=(r=>(r[r.Generic=0]="Generic",r[r.Keyboard=1]="Keyboard",r[r.Mouse=2]="Mouse",r[r.Touch=3]="Touch",r))(d1||{}),M=(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))(M||{});const F4=[new I(0,0),new I(1,1)];class C4{constructor(n=F4){this._lines=n}intersection(n){if(this._lines.length<1||n.length<1)return;const t=[];for(let e=1;e<this._lines.length;e++){const s=this._lines[e-1],i=this._lines[e];for(let o=1;o<n.length;o++){const a=this._lines[e-1],c=this._lines[e],u=this._intersection({from:s,to:i},{from:a,to:c});u&&t.push(u)}}return t}_intersection(n,t){const e=n.from,s=n.to,i=t.from,o=t.to,a=(e.x-i.x)*(s.y-i.y)-(e.y-i.y)*(s.x-i.x),c=(e.x-o.x)*(s.y-o.y)-(e.y-o.y)*(s.x-o.x);if(a*c>=0)return!1;const u=(i.x-e.x)*(o.y-e.y)-(i.y-e.y)*(o.x-e.x),l=u+a-c;if(u*l>=0)return!1;const D=u/(c-a),f=D*(s.x-e.x),p=D*(s.y-e.y);return new I(e.x+f,e.y+p)}}class E4{constructor(n=30){h(this,"_enabled",!0);h(this,"_rollingFrameTime");h(this,"_lastFrameTimeMs");this._rollingFrameTime=new b4(n)}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 n=this._rollingFrameTime.history(0);return n===0?0:1e3/n}get isSaturated(){return this._rollingFrameTime.isSaturated()}get isEnabled(){return this._enabled}sampleFrame(n=this.Now()){if(this._enabled){if(this._lastFrameTimeMs!=null){const t=n-this._lastFrameTimeMs;this._rollingFrameTime.add(t)}this._lastFrameTimeMs=n}}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 b4{constructor(n){h(this,"average",0);h(this,"variance",0);h(this,"_samples",[]);h(this,"_sampleCount",0);h(this,"_pos",0);h(this,"_m2",0);this._samples=new Array(n),this.reset()}add(n){let t;if(this.isSaturated()){const e=this._samples[this._pos];t=e-this.average,this.average-=t/(this._sampleCount-1),this._m2-=t*(e-this.average)}else this._sampleCount++;t=n-this.average,this.average+=t/this._sampleCount,this._m2+=t*(n-this.average),this.variance=this._m2/(this._sampleCount-1),this._samples[this._pos]=n,this._pos++,this._pos%=this._samples.length}history(n){if(n>=this._sampleCount||n>=this._samples.length)return 0;const t=this._wrapPosition(this._pos-1);return this._samples[this._wrapPosition(t-n)]}isSaturated(){return this._sampleCount>=this._samples.length}reset(){this.average=0,this.variance=0,this._sampleCount=0,this._pos=0,this._m2=0}_wrapPosition(n){const t=this._samples.length;return(n%t+t)%t}}const T2={strokeWidth:1,stroke:"rgba(0,0,0, 0)",strokeActive:"rgba(0,0,0, 1)",fill:"rgba(0, 0, 0, 0.2)"};var m2=(r=>(r.NONE="none",r.BACKWARD="backward",r.FORWARD="forward",r))(m2||{});function t2(r){const n=r.getScene(),t=r.getViewportByCoord(n),e=0,s=0;if(!t)return{scrollX:e,scrollY:s};const i=t.getActualScroll(t.scrollX,t.scrollY);return{scrollX:i.x,scrollY:i.y}}const z1=90;function S4(r){const{a:n=0,v:t=d.BooleanNumber.FALSE}=r;let e=0,s=n;return t===d.BooleanNumber.TRUE&&(e=z1,s=z1),{centerAngle:e,vertexAngle:s}}class z6{constructor(n){h(this,"canvas");h(this,"_context");this._context=n,this.canvas=n.canvas}get globalAlpha(){return this._context.globalAlpha}set globalAlpha(n){this._context.globalAlpha=n}get globalCompositeOperation(){return this._context.globalCompositeOperation}set globalCompositeOperation(n){this._context.globalCompositeOperation=n}get fillStyle(){return this._context.fillStyle}set fillStyle(n){this._context.fillStyle=n}get strokeStyle(){return this._context.strokeStyle}set strokeStyle(n){this._context.strokeStyle=n}get filter(){return this._context.filter}set filter(n){this._context.filter=n}get imageSmoothingEnabled(){return this._context.imageSmoothingEnabled}set imageSmoothingEnabled(n){this._context.imageSmoothingEnabled=n}get imageSmoothingQuality(){return this._context.imageSmoothingQuality}set imageSmoothingQuality(n){this._context.imageSmoothingQuality=n}get lineCap(){return this._context.lineCap}set lineCap(n){this._context.lineCap=n}get lineDashOffset(){return this._context.lineDashOffset}set lineDashOffset(n){this._context.lineDashOffset=n}get lineJoin(){return this._context.lineJoin}set lineJoin(n){this._context.lineJoin=n}get lineWidth(){return this._context.lineWidth}set lineWidth(n){const{scaleX:t,scaleY:e}=this._getScale();this._context.lineWidth=n/Math.max(t,e)}setLineWidthNative(n){this._context.lineWidth=n}get miterLimit(){return this._context.miterLimit}set miterLimit(n){this._context.miterLimit=n}get shadowBlur(){return this._context.shadowBlur}set shadowBlur(n){this._context.shadowBlur=n}get shadowColor(){return this._context.shadowColor}set shadowColor(n){this._context.shadowColor=n}get shadowOffsetX(){return this._context.shadowOffsetX}set shadowOffsetX(n){this._context.shadowOffsetX=n}get shadowOffsetY(){return this._context.shadowOffsetY}set shadowOffsetY(n){this._context.shadowOffsetY=n}get direction(){return this._context.direction}set direction(n){this._context.direction=n}get font(){return this._context.font}set font(n){this._context.font=n}get fontKerning(){return this._context.fontKerning}set fontKerning(n){this._context.fontKerning=n}get textAlign(){return this._context.textAlign}set textAlign(n){this._context.textAlign=n}get textBaseline(){return this._context.textBaseline}set textBaseline(n){this._context.textBaseline=n}_getScale(){const n=this.getTransform();return{scaleX:n.a,scaleY:n.d}}getContextAttributes(){return this._context.getContextAttributes()}isPointInStroke(...n){return this._context.isPointInStroke(...n)}createConicGradient(n,t,e){return this._context.createConicGradient(n,t,e)}roundRect(n,t,e,s,i){const{scaleX:o,scaleY:a}=this._getScale();n=H(n,o),t=H(t,a),e=H(e,o),s=H(s,a),this._context.roundRect(n,t,e,s,i)}getTransform(){return this._context.getTransform()}resetTransform(){this._context.resetTransform()}drawFocusIfNeeded(...n){return this._context.drawFocusIfNeeded(...n)}reset(){this._context.reset()}arc(n,t,e,s,i,o){const{scaleX:a,scaleY:c}=this._getScale();n=H(n,a),t=H(t,c),this._context.arc(n,t,e,s,i,o)}arcTo(n,t,e,s,i){const{scaleX:o,scaleY:a}=this._getScale();n=H(n,o),t=H(t,a),e=H(e,o),s=H(s,a),this._context.arcTo(n,t,e,s,i)}beginPath(){this._context.beginPath()}bezierCurveTo(n,t,e,s,i,o){const{scaleX:a,scaleY:c}=this._getScale();i=H(i,a),o=H(o,c),n=H(n,a),t=H(t,c),e=H(e,a),s=H(s,c),this._context.bezierCurveTo(n,t,e,s,i,o)}clearRect(n,t,e,s){const{scaleX:i,scaleY:o}=this._getScale();n=H(n,i),t=H(t,o),e=H(e,i),s=H(s,o),this._context.clearRect(n,t,e,s)}clip(...n){this._context.clip(...n)}closePath(){this._context.closePath()}createImageData(...n){if(n.length===0)throw new Error("arguments is zero");return n.length===1?this._context.createImageData(n[0]):n.length===2?this._context.createImageData(n[0],n[1]):this._context.createImageData(n[0],n[1],n[1])}createLinearGradient(n,t,e,s){return this._context.createLinearGradient(n,t,e,s)}createPattern(n,t){return this._context.createPattern(n,t)}createRadialGradient(n,t,e,s,i,o){return this._context.createRadialGradient(n,t,e,s,i,o)}drawImage(...n){const t=n,e=this._context;t.length===3?e.drawImage(n[0],n[1],n[2]):t.length===5?e.drawImage(n[0],n[1],n[2],n[3],n[4]):t.length===9&&e.drawImage(n[0],n[1],n[2],n[3],n[4],n[5],n[6],n[7],n[8])}ellipse(n,t,e,s,i,o,a,c){this._context.ellipse(n,t,e,s,i,o,a,c)}isPointInPath(...n){return this._context.isPointInPath(...n)}fill(...n){this._context.fill(...n)}fillRect(n,t,e,s){const{scaleX:i,scaleY:o}=this._getScale();n=H(n,i),t=H(t,o),e=H(e,i),s=H(s,o),this._context.fillRect(n,t,e,s)}strokeRect(n,t,e,s){const{scaleX:i,scaleY:o}=this._getScale();n=H(n,i),t=H(t,o),e=H(e,i),s=H(s,o),this._context.strokeRect(n,t,e,s)}fillText(n,t,e,s){s?this._context.fillText(n,t,e,s):this._context.fillText(n,t,e)}fillTextPrecision(n,t,e,s){const{scaleX:i,scaleY:o}=this._getScale();t=H(t,i),e=H(e,o),s?(s=H(s,i),this._context.fillText(n,t,e,s)):this._context.fillText(n,t,e)}measureText(n){return this._context.measureText(n)}getImageData(n,t,e,s){return this._context.getImageData(n,t,e,s)}lineTo(n,t){const{scaleX:e,scaleY:s}=this._getScale();n=H(n,e),t=H(t,s),this._context.lineTo(n,t)}moveTo(n,t){const{scaleX:e,scaleY:s}=this._getScale();n=H(n,e),t=H(t,s),this._context.moveTo(n,t)}rect(n,t,e,s){const{scaleX:i,scaleY:o}=this._getScale();n=H(n,i),t=H(t,o),e=H(e,i),s=H(s,o),this._context.rect(n,t,e,s)}putImageData(n,t,e){this._context.putImageData(n,t,e)}quadraticCurveTo(n,t,e,s){this._context.quadraticCurveTo(n,t,e,s)}restore(){this._context.restore()}rotate(n){this._context.rotate(n)}save(){this._context.save()}scale(n,t){this._context.scale(n,t)}setLineDash(n){this._context.setLineDash?this._context.setLineDash(n):"mozDash"in this._context?this._context.mozDash=n:"webkitLineDash"in this._context&&(this._context.webkitLineDash=n)}getLineDash(){return this._context.getLineDash()}setTransform(...n){this._context.setTransform(...n)}stroke(n){n?this._context.stroke(n):this._context.stroke()}strokeText(n,t,e,s){const{scaleX:i,scaleY:o}=this._getScale();t=H(t,i),e=H(e,o),s&&(s=H(s,i)),this._context.strokeText(n,t,e,s)}transform(n,t,e,s,i,o){this._context.transform(n,t,e,s,i,o)}translate(n,t){this._context.translate(n,t)}translateWithPrecision(n,t){const{scaleX:e,scaleY:s}=this._getScale();n=H(n,e),t=H(t,s),this._context.translate(n,t)}translateWithPrecisionRatio(n,t){const{scaleX:e,scaleY:s}=this._getScale();this._context.translate(n/e,t/s)}clearRectForTexture(n,t,e,s){this.clearRect(n,t,e,s)}setGlobalCompositeOperation(n){this._context.globalCompositeOperation=n}}class _D{}class dD{}class v4 extends z6{}class T4 extends z6{__getScale(){const n=this.getTransform();return{scaleX:n.a,scaleY:n.d}}clearRect(n,t,e,s){const{scaleX:i,scaleY:o}=this.__getScale();n=H(n,i),t=H(t,o),e=H(e,i),s=H(s,o),this._context.save(),this._context.fillStyle=l1([255,255,255]),this._context.fillRect(n,t,e,s),this._context.restore()}clearRectForTexture(n,t,e,s){}setGlobalCompositeOperation(n){}}var y4=(r=>(r[r.Rendering=0]="Rendering",r[r.Printing=1]="Printing",r))(y4||{});class o2{constructor(n){h(this,"isCache",!1);h(this,"_pixelRatio",1);h(this,"_canvasEle");h(this,"_context");h(this,"_width",0);h(this,"_height",0);n=n||{},this._canvasEle=x6(),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.tabIndex=1,this._canvasEle.style.touchAction="none",this._canvasEle.style.outline="0";const t=this._canvasEle.getContext("2d");if(t==null)throw new Error("context is not support");n.mode===1?this._context=new T4(t):this._context=new v4(t),this.setSize(n.width,n.height,n.pixelRatio)}getCanvasEle(){return this._canvasEle}getContext(){return this._context}getPixelRatio(){return this._pixelRatio}getWidth(){return this._width}getHeight(){return this._height}setSize(n,t,e){this._pixelRatio=e||N6(),n&&(this._canvasEle.width=n*this._pixelRatio,this._width=this._canvasEle.width/this._pixelRatio,this._canvasEle.style.width=`${this._width}px`),t&&(this._canvasEle.height=t*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(n){this._width===0||this._height===0||(n<1&&(n=1),this.setSize(this._width,this._height,n))}dispose(){this.clear(),this._canvasEle.remove()}clear(){this.getContext().clearRect(0,0,this._width*this._pixelRatio,this._height*this._pixelRatio)}toDataURL(n,t){try{return this._canvasEle.toDataURL(n,t)}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 fD extends o2{constructor(n={width:0,height:0}){super(n),this.setSize(n.width,n.height)}}class gD extends o2{constructor(t={width:0,height:0}){super(t);h(this,"hitCanvas",!0);this.setSize(t.width,t.height)}}class W6 extends I1{constructor(){super(...arguments);h(this,"_extensions",new Map)}get extensions(){return this._extensions}register(...t){for(const e of t)e.parent=this,this._extensions.set(e.uKey,e)}unRegister(...t){for(const e of t)this._extensions.delete(e)}getExtensionsByOrder(){const t=Array.from(this._extensions.values());return t.sort(d.sortRules),t}getExtensionByKey(t){return this._extensions.get(t)}draw(t,e){}}function B4(){return[]}function O4(r,n,t){return pD(r,n,t)}function pD(r,n,t){return t===d.GlyphType.DECIMAL?E7(r,n):t===d.GlyphType.ZERO_DECIMAL?mD(r,n):t===d.GlyphType.UPPER_ALPHA?FD(r,n):t===d.GlyphType.ALPHA?CD(r,n):t===d.GlyphType.UPPER_ROMAN?ED(r,n):t===d.GlyphType.ROMAN?bD(r,n):E7(r,n)}function E7(r,n){return(r+n).toString()}function mD(r,n){const t=r+n;return t<10?`0${t}`:t.toString()}function FD(r,n){return d.numberToListABC(r+n-1,!0)}function CD(r,n){return d.numberToListABC(r+n-1,!1)}function ED(r,n){return w4(r+n,!0)}function bD(r,n){return w4(r+n,!1)}function w4(r,n=!1){const t={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};n&&(s=t);let i="";for(const o in s)for(;r>=s[o];)i+=o,r-=s[o];return i}function A4(r,n,t,e){var D,f;if(!r||!n)return;const{listId:s,listType:i,nestingLevel:o=0,textStyle:a}=r,c=n[i];return!c||!c.nestingLevel?E6(s,(D=t==null?void 0:t[o])==null?void 0:D.startIndexItem):c.nestingLevel[o]?SD(s,o,c.nestingLevel,t,a):E6(s,(f=t==null?void 0:t[o])==null?void 0:f.startIndexItem)}function E6(r,n=1){return{listId:r,symbol:"●",ts:{ff:"Arial",fs:9},startIndexItem:n,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 SD(r,n,t,e,s,i){var T,B;const o=t[n],{bulletAlignment:a,glyphFormat:c,textStyle:u,startNumber:l,glyphType:D,glyphSymbol:f,indentFirstLine:p,hanging:F,indentStart:E}=o,m={...s,...u},b=S2(m);let S;f?S=f:S=vD(c,n,t,e);const v=O1.getTextSize(S,b),y=(B=(T=e==null?void 0:e[n])==null?void 0:T.startIndexItem)!=null?B:1;return{listId:r,symbol:S,ts:m,fontStyle:b,startIndexItem:y+1,bBox:v,nestingLevel:o,bulletAlign:a,bulletType:f?!1:!!D,indentFirstLine:p,hanging:F,indentStart:E}}function vD(r,n,t,e){var a;const s=r.split("%"),o=[s[0]];for(let c=1;c<s.length;c++){const u=s[c],{level:l,suffix:D}=yD(u);let f=((a=e==null?void 0:e[l])==null?void 0:a.startIndexItem)||1;l!==n&&(e==null?void 0:e[l])!==null&&(f-=1);const p=TD(f,t[l]);o.push(p,D)}return o.join("")}function TD(r=1,n){const{startNumber:t,glyphType:e,glyphSymbol:s}=n;return s||(e?O4(r,t,e):"●")}function yD(r){if(r==="")return{level:0,suffix:""};const n=r.split("");let t="",e="",s=!1;const i=/[0-9]/g;return n.forEach(o=>{!s&&i.test(`${t}${o}`)?t+=o:(s=!0,e+=o)}),{level:Number.parseInt(t)-1,suffix:e}}function I4(r,n,t,e,s){return[]}function U1(r){return r[r.length-1]}function a2(r){var n;return(n=r.sections)==null?void 0:n[r.sections.length-1]}function BD(r){const n=a2(r).columns;return n==null?void 0:n[n.length-1]}function R4(r){var t;const n=(t=y2(r))==null?void 0:t.column.lines;return n==null?void 0:n[n.length-1]}function x4(r){return r.lines[r.lines.length-1]}function OD(r){const{pageWidth:n,marginLeft:t,marginRight:e}=r;return n-t-e}function wD(r){const n=r.parent,t=n==null?void 0:n.lines.indexOf(r);if(!(!t||t===-1||t-1<0))return n==null?void 0:n.lines[t-1]}function AD(r){var t;const n=(t=r.parent)==null?void 0:t.parent;if(n)return n}function y2(r){const n=a2(r);for(let t=0;t<n.columns.length;t++){const e=n.columns[t];if(!e.isFull)return{column:e,isLast:t===n.columns.length-1,index:t}}}function j6(r){const n=R4(r);if(n)for(let t=0;t<n.divides.length;t++){const e=n.divides[t];if(!e.isFull)return{divide:e,isLast:t===n.divides.length-1,index:t}}}function ID(r,n){const t=r.divides.indexOf(n);if(t!==-1)return r.divides[t+1]}function RD(r){if(r)for(let n=0;n<r.divides.length;n++){const t=r.divides[n],e=r.divides[n+1];if(t.spanGroup.length===0||!e||e.spanGroup.length===0)return t}}function xD(r){var t;const n=(t=j6(r))==null?void 0:t.divide.spanGroup;return n==null?void 0:n[n.length-1]}function M4(r){const n=a2(r),t=n.columns.length;for(let e=0;e<t;e++)if(!n.columns[e].isFull)return!1;return!0}function MD(r){if(r.sections.length>1)return!1;const n=a2(r),t=n.columns.length;for(let e=0;e<t;e++){const s=n.columns[e];if(!P4(s))return!1}return!0}function P4(r){const n=r.lines;if(n.length>1)return!1;const t=n[n.length-1];return PD(t)}function PD(r){if(!r)return!0;for(let n=0;n<r.divides.length;n++){const t=r.divides[n].spanGroup.length;if(t>1)return!1;if(t===1){const e=r.divides[n].spanGroup[0],{spanType:s}=e;if(s!==u1.TAB&&s!==u1.LIST)return!1}}return!0}function A1(r,n){if(r instanceof Object){const{v:t,u:e}=r;return e===d.NumberUnitType.POINT?t:t*n}return r}function e6(r=0,n,t=d.GridType.LINES,e=d.BooleanNumber.TRUE){let s=1;return G6(t,e)&&(s=r),s*=n,s}function G6(r=d.GridType.LINES,n=d.BooleanNumber.FALSE){return n===d.BooleanNumber.TRUE&&(r===d.GridType.LINES_AND_CHARS||r===d.GridType.SNAP_TO_CHARS)}function U6(r,n){const{paragraphStyle:t={}}=n,{linePitch:e=15.6,gridType:s=d.GridType.LINES,paragraphLineGapDefault:i=0}=r,{lineSpacing:o=1,spacingRule:a=d.SpacingRule.AUTO,snapToGrid:c=d.BooleanNumber.TRUE}=t;return{paragraphLineGapDefault:i,linePitch:e,gridType:s,lineSpacing:o,spacingRule:a,snapToGrid:c}}function L4(r,n){const{paragraphStyle:t={}}=n,{charSpace:e=0,gridType:s=d.GridType.LINES,defaultTabStop:i=36,documentTextStyle:o={}}=r,{fs:a=j7}=o,{snapToGrid:c=d.BooleanNumber.TRUE}=t;return{charSpace:e,documentFontSize:a,defaultTabStop:i,gridType:s,snapToGrid:c}}function j2(r,n=-1){let t=n;for(const e of r){const{sections:s}=e,i=t;let o=i,a=Number.NEGATIVE_INFINITY,c=0;for(const u of s){const{columns:l}=u,D=o;let f=D,p=Number.NEGATIVE_INFINITY,F=0;for(const E of l){const{lines:m}=E,b=f;let S=b,v=0,y=Number.NEGATIVE_INFINITY,T=null;for(const B of m){const{divides:O,lineHeight:w}=B,P=S;let L=P,A=0,$=0;v+=w;const Y=O.length;for(let x=0;x<Y;x++){const R=O[x],{spanGroup:k}=R,X=L;let z=X;for(const j of k){const q=j.spanType===u1.LIST?0:j.count;z+=q;const W=j.bBox,{ba:V}=W;$=Math.max($,V),x===Y-1&&(A+=j.width)}x===Y-1&&(A+=R.left),k.length!==0&&(R.st=X+1,R.ed=z>=R.st?z:R.st,L=R.ed)}B.st=P+1,B.ed=L>=B.st?L:B.st,B.width=A,B.asc=$,y=Math.max(y,A),B.top=((T==null?void 0:T.top)||0)+((T==null?void 0:T.lineHeight)||0),T=B,S=B.ed}E.st=b+1,E.ed=S>=E.st?S:E.st,E.height=v,E.width=y,F+=y,p=Math.max(p,E.height),f=E.ed}u.st=D+1,u.ed=f>=u.st?f:u.st,u.height=p,c+=p,a=Math.max(a,F),o=u.ed}e.st=i+1,e.ed=o>=e.st?o:e.st,e.height=c,e.width=a,t=e.ed}}function LD(r,n){for(const t of r){const{sections:e}=t;for(const s of e){const{columns:i}=s;for(const o of i){const{lines:a}=o;for(const c of a){const{divides:u,lineHeight:l}=c,D=u.length;for(let f=0;f<D;f++){const p=u[f],{spanGroup:F}=p;for(const E of F)n&&q2(n)&&n(E)}}}}}}function $4(r,n){for(const t of r){const{sections:e}=t;for(const s of e){const{columns:i}=s;for(const o of i){const{lines:a}=o;for(const c of a)n&&q2(n)&&n(c)}}}}function N4(r,n){for(const t of r){const{sections:e}=t;for(const s of e){const{columns:i}=s;for(const o of i)n&&q2(n)&&n(o)}}}function k4(r,n,t,e,s=!1){const{relativeFrom:i,align:o,posOffset:a,percent:c}=r;if(o!=null)if(o===d.AlignTypeH.INSIDE||o===d.AlignTypeH.OUTSIDE)i===d.ObjectRelativeFromH.MARGIN||d.ObjectRelativeFromH.PAGE;else{if(i===d.ObjectRelativeFromH.COLUMN){const{width:u,left:l}=n;let D=0;return o===d.AlignTypeH.LEFT?D=l:o===d.AlignTypeH.RIGHT?D=l+u-e:o===d.AlignTypeH.CENTER&&(D=l+u/2-e/2),D}if(i!==d.ObjectRelativeFromH.LEFT_MARGIN){if(i!==d.ObjectRelativeFromH.MARGIN){if(i!==d.ObjectRelativeFromH.RIGHT_MARGIN){if(i!==d.ObjectRelativeFromH.INSIDE_MARGIN){if(i!==d.ObjectRelativeFromH.OUTSIDE_MARGIN){if(i===d.ObjectRelativeFromH.PAGE){const{pageWidth:u}=t;let l=0;return o===d.AlignTypeH.RIGHT?l=u-e:o===d.AlignTypeH.CENTER&&(l=u/2-e/2),l}}}}}}}else if(a){const{pageWidth:u,marginLeft:l,marginRight:D}=t,f=u-D;let p=0;return i===d.ObjectRelativeFromH.COLUMN?p=(s?0:(n==null?void 0:n.left)||0)+a:i===d.ObjectRelativeFromH.LEFT_MARGIN||(i===d.ObjectRelativeFromH.MARGIN?p=a+l:i===d.ObjectRelativeFromH.RIGHT_MARGIN||i===d.ObjectRelativeFromH.INSIDE_MARGIN||i===d.ObjectRelativeFromH.OUTSIDE_MARGIN||i===d.ObjectRelativeFromH.PAGE&&(p=a)),p+e>f&&(p=f-e),p}else if(c){const{pageWidth:u,marginLeft:l,marginRight:D}=t;if(i!==d.ObjectRelativeFromH.LEFT_MARGIN){if(i!==d.ObjectRelativeFromH.MARGIN){if(i!==d.ObjectRelativeFromH.RIGHT_MARGIN){if(i!==d.ObjectRelativeFromH.INSIDE_MARGIN){if(i!==d.ObjectRelativeFromH.OUTSIDE_MARGIN){if(i===d.ObjectRelativeFromH.PAGE)return c*u}}}}}}}function H4(r,n,t,e,s,i,o=!1){const{relativeFrom:a,align:c,posOffset:u,percent:l}=r;if(c!=null){if(a===d.ObjectRelativeFromV.LINE){let D=0;return c===d.AlignTypeV.BOTTOM?D=t+e-s:c===d.AlignTypeV.TOP?D=t:c===d.AlignTypeV.CENTER&&(D=t+e/2-s/2),D}if(a!==d.ObjectRelativeFromV.TOP_MARGIN){if(a!==d.ObjectRelativeFromV.MARGIN){if(a!==d.ObjectRelativeFromV.BOTTOM_MARGIN){if(a!==d.ObjectRelativeFromV.INSIDE_MARGIN){if(a!==d.ObjectRelativeFromV.OUTSIDE_MARGIN){if(a===d.ObjectRelativeFromV.PAGE){const{pageHeight:D}=n;let f=0;return c===d.AlignTypeV.BOTTOM?f=D-s:c===d.AlignTypeV.CENTER&&(f=D/2-s/2),f}}}}}}}else if(u){let D=0;return a===d.ObjectRelativeFromV.LINE?D=t||0+u:a===d.ObjectRelativeFromV.TOP_MARGIN||a===d.ObjectRelativeFromV.MARGIN||a===d.ObjectRelativeFromV.BOTTOM_MARGIN||a===d.ObjectRelativeFromV.INSIDE_MARGIN||a===d.ObjectRelativeFromV.OUTSIDE_MARGIN||(a===d.ObjectRelativeFromV.PAGE?D=u:a===d.ObjectRelativeFromV.PARAGRAPH&&(D=(o?0:i==null?t:i)+u)),D}else if(l){const{pageHeight:D,marginBottom:f,marginTop:p}=n;if(a!==d.ObjectRelativeFromV.TOP_MARGIN){if(a!==d.ObjectRelativeFromV.MARGIN){if(a!==d.ObjectRelativeFromV.BOTTOM_MARGIN){if(a!==d.ObjectRelativeFromV.INSIDE_MARGIN){if(a!==d.ObjectRelativeFromV.OUTSIDE_MARGIN){if(a===d.ObjectRelativeFromV.PAGE)return l*D}}}}}}}function X4(r){const n=r.spanGroup;let t=0;for(const e of n)t+=e.width;return t}const b6=new d.ObjectMatrix;function Y4(){b6.reset()}function u2(r,n,t,e,s){const{startIndex:i}=t,o=n.getTextRun(r+i)||{ts:{},st:0,ed:0},{st:a,ed:c}=o;let{ts:u={}}=o;const l=b6.getValue(a,c);if(l)return l;const{gridType:D=d.GridType.LINES,charSpace:f=0,documentTextStyle:p={},pageSize:F={width:Number.POSITIVE_INFINITY,height:Number.POSITIVE_INFINITY},marginRight:E=0,marginLeft:m=0,localeService:b}=e,{snapToGrid:S=d.BooleanNumber.TRUE}=s;u={...p,...u};const v=S2(u),y={...p,...u},T=F.width||Number.POSITIVE_INFINITY-m-E,B={fontStyle:v,textStyle:y,charSpace:f,gridType:D,snapToGrid:S,pageWidth:T};return b6.setValue(a,c,B),B}function z4(r,n,t){return n6(u1.WORD,r,n,t)}function I2(r,n,t){return n6(u1.LETTER,r,n,t)}function W4(r,n){return n6(u1.TAB,d.DataStreamTreeTokenType.TAB,r,n)}function n6(r,n,t,e){const{fontStyle:s,textStyle:i,charSpace:o=1,gridType:a=d.GridType.LINES,snapToGrid:c=d.BooleanNumber.FALSE}=t,u=[d.DataStreamTreeTokenType.SECTION_BREAK,d.DataStreamTreeTokenType.TABLE_START,d.DataStreamTreeTokenType.TABLE_END,d.DataStreamTreeTokenType.TABLE_ROW_START,d.DataStreamTreeTokenType.TABLE_ROW_END,d.DataStreamTreeTokenType.TABLE_CELL_START,d.DataStreamTreeTokenType.TABLE_CELL_END,d.DataStreamTreeTokenType.CUSTOM_RANGE_START,d.DataStreamTreeTokenType.CUSTOM_RANGE_END,d.DataStreamTreeTokenType.COLUMN_BREAK,d.DataStreamTreeTokenType.PAGE_BREAK,d.DataStreamTreeTokenType.DOCS_END,d.DataStreamTreeTokenType.CUSTOM_BLOCK];let l=d.DataStreamTreeTokenType.LETTER;if(u.indexOf(n)>-1)return{content:"",ts:i,fontStyle:s,width:0,bBox:{width:0,ba:0,bd:0,aba:0,abd:0,sp:0,sbr:0,sbo:0,spr:0,spo:0},paddingLeft:0,left:0,spanType:u1.PLACEHOLDER,streamType:n,count:1};n===d.DataStreamTreeTokenType.PARAGRAPH&&(l=d.DataStreamTreeTokenType.PARAGRAPH);const D=O1.getTextSize(n,s),{width:f=0}=D;let p=e!=null?e:f,F=0;return G6(a,c)&&(p=f+(Q2(n)?o:o/2),a===d.GridType.SNAP_TO_CHARS&&(F=(p-f)/2)),{content:n,ts:i,fontStyle:s,width:p,bBox:D,paddingLeft:F,left:0,spanType:r,streamType:l,count:n.length}}function j4(r,n,t){const{bBox:e,symbol:s,ts:i,fontStyle:o,bulletAlign:a=d.BulletAlignment.START,bulletType:c=!1}=n,u=e.width,l=Math.ceil(u/t);let D=(l<2?2:l)*t,f=0;c&&(a===d.BulletAlignment.CENTER?(f=-u/2,D-=f):a===d.BulletAlignment.END&&(f=-u,D-=f));const p=ND(r,n);return{content:s,ts:i,fontStyle:o,width:D,paddingLeft:0,bBox:p,left:f,spanType:u1.LIST,streamType:d.DataStreamTreeTokenType.LETTER,count:0}}function G4(r,n=0){const t=r.length;let e;for(let s=0;s<t;s++){const i=r[s];i.left=e?e.left+e.width:n,e=i}}function $D(r,n=0){r.left=n}function k2(r,n,t=0){G4(n,t);for(const e of n)e.parent=r;r.spanGroup.push(...n)}function ND(r,n){const{ba:t,bd:e}=r.bBox,{ba:s,bd:i}=n.bBox;return t+e>s+i?r.bBox:n.bBox}function U4(r,n){if(r==null)return!1;const{content:t}=r,{content:e}=n;if(t==null||e==null)return!1;const s=/[a-z\d]/i;return s.test(t)&&z2(e)||z2(t)&&s.test(e)}function V4(r,n,t,e,s,i){const o=[];let a=0;for(let c=0;c<n.length;c++){const u=n[c];if(s4(u)||M6(n.substring(c)))break;const l=u2(r+c,t,e,s,i),D=I2(u,l);o.push(D),a++}return{step:a,spanGroup:o}}function K4(r,n,t,e,s,i){const o=u2(r,t,e,s,i),a=[];let c=0;for(let u=0;u<n.length;u++){const l=n[u];if(P6(l))a.unshift(l),c++;else break}return{step:c,spanGroup:[I2(a.join(""),o)]}}function J4(r,n,t,e,s,i){const o=u2(r,t,e,s,i),a=n.match(n4);return{step:a[0].length,spanGroup:[I2(a[0],o)]}}function Z4(r,n,t,e,s,i){const o=u2(r,t,e,s,i),a=[];let c=0;for(let u=0;u<n.length;u++){const l=n[u];if(L6(l))a.push(l),c++;else break}return{step:c,spanGroup:[z4(a.join(""),o)]}}function q4(r,n,t,e,s=0,i=!1,o,a,c){const{lineHeight:u=15.6,lineTop:l=0,contentHeight:D=0,paddingLeft:f=0,paddingRight:p=0,paddingTop:F=0,paddingBottom:E=0,marginTop:m=0,spaceBelowApply:b=0}=t,S=jD(n,r);S.lineIndex=s,S.paragraphStart=i,S.contentHeight=D,S.top=l,S.lineHeight=u,S.paddingTop=F,S.paddingBottom=E,S.marginTop=m,S.spaceBelowApply=b,S.divides=kD(u,l,e,f,p,o,a,c);for(const v of S.divides)v.parent=S;return S}function Q4(r=15.6,n=0,t,e,s){let i=n;return e==null||e.forEach(o=>{const a=u6(o,r,n);a&&(i=Math.max(i,a))}),s==null||s.forEach(o=>{const a=u6(o,r,n);a&&(i=Math.max(i,a))}),t==null||t.forEach(o=>{const a=u6(o,r,n);a&&(i=Math.max(i,a))}),i}function u6(r,n,t){const{aTop:e,height:s,aLeft:i,width:o,angle:a=0,drawingOrigin:c}=r,{layoutType:u,distT:l=0,distB:D=0}=c;if(u!==d.PositionedObjectLayoutType.WRAP_TOP_AND_BOTTOM)return;if(a===0){const F=e-l,E=s+D;return F+E<t||F>n+t?void 0:F+s}let{top:f=0,height:p=0}=et(a,i,o,e,s);if(f-=l,p+=D,!(f+p<t||f>n+t))return f+p}function kD(r,n,t,e,s,i,o,a){const c=[];return c.push({left:0,width:e},{left:t-s,width:s}),o==null||o.forEach((u,l)=>{const D=c6(u,r,n,t);D&&c.push(D)}),a==null||a.forEach((u,l)=>{const D=c6(u,r,n,t);D&&c.push(D)}),i==null||i.forEach((u,l)=>{const D=c6(u,r,n,t);D&&c.push(D)}),WD(t,c)}function tt(r,n){r.isFull=n}function HD(r,n){r.marginBottom=n}function XD(r){}function c6(r,n,t,e){const{aTop:s,height:i,aLeft:o,width:a,angle:c=0,drawingOrigin:u}=r,{layoutType:l}=u;if(l===d.PositionedObjectLayoutType.WRAP_NONE||l===d.PositionedObjectLayoutType.WRAP_TOP_AND_BOTTOM)return;if(l===d.PositionedObjectLayoutType.WRAP_POLYGON){const{start:f=[0,0],lineTo:p}=u;if(!p)return;const F=[];F.push(new I(f[0],f[1]));for(let E=0;E<p.length;E++){const m=p[E];F.push(new I(m[0],m[1]))}if(c!==0){const E=new o1().rotate(c);for(let m=0;m<F.length;m++){const b=F[m];F[m]=E.applyPoint(b)}}return b7(F,t,n,e)}if(c===0)return S7(s,i,o,a,t,n,e,u);const D=et(c,o,a,s,i);if(l===d.PositionedObjectLayoutType.WRAP_SQUARE){const{left:f,width:p,top:F,height:E}=D;return S7(F,E,f,p,t,n,e,u)}return b7(D.points,t,n,e)}function et(r,n,t,e,s){const i=new o1().rotate(r),o=new I(n,e),a=new I(n,e+s),c=new I(n+t,e),u=new I(n+t,e+s);return i.makeBoundingBoxFromPoints([o,a,c,u])}function b7(r,n,t,e){const s=new C4(r),i=s.intersection([new I(0,n),new I(e,n)]),o=s.intersection([new I(0,n+t),new I(e,n+t)]);if(!i&&!o)return;const a=YD([...r,...i||[],...o||[]]);return{left:a.min,width:a.max}}function YD(r,n=0){const t=[];for(let e=0;e<r.length;e++){const s=r[e];n===0?t.push(s.x):t.push(s.y)}return{max:Math.max(...t),min:Math.min(...t)}}function S7(r,n,t,e,s,i,o,a){const{layoutType:c,wrapText:u=d.WrapTextType.BOTH_SIDES,distL:l=0,distR:D=0,distT:f=0,distB:p=0}=a,F=r-(c===d.PositionedObjectLayoutType.WRAP_SQUARE?f:0),E=n+(c===d.PositionedObjectLayoutType.WRAP_SQUARE?p:0);if(F+E<s||F>i+s)return;let m=t-l,b=e+D;const S=zD(u,m,b,o);return S===1?b=o-m:S===2&&(m=0,b=t+e+D),{left:m,width:b}}function zD(r,n,t,e){let s=0;return r===d.WrapTextType.LEFT?s=1:r===d.WrapTextType.RIGHT?s=2:r===d.WrapTextType.LARGEST&&(n>e-n-t?s=1:s=2),s}function WD(r,n){n.sort((i,o)=>i.left>o.left?1:-1);const t=[];let e=0;const s=n.length;for(let i=0;i<s;i++){const o=n[i],{left:a,width:c}=o;if(a>e){let u=a-e;u=u<r?u:r-e;const l=v7(e,u);t.push(l)}if(e=Math.max(a+c,e),i===s-1&&a+c<r){const u=v7(a+c,r-a-c);t.push(u)}}return t}function v7(r,n){return{spanGroup:[],width:n,left:r,paddingLeft:0,isFull:!1,st:0,ed:0}}function jD(r,n){return{paragraphIndex:n,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 nt(r,n,t,e){if(e)if(e.has(r)){const s=e.get(r);s==null||s.elements.push(n)}else e.set(r,{elements:[n],paragraphIndex:r,top:t})}function V6(r,n,t,e,s,i){const o=[],a=new Map;for(const c of n.children){let u=[],l=t;o.length>0&&(l=o[o.length-1]),c.nodeType===d.DataStreamTreeNodeType.PARAGRAPH?u=gt(r,c,l,e,s):(c.nodeType,d.DataStreamTreeNodeType.TABLE),u.length===0&&(u=B4()),GD(o,u)}return{pages:o,renderedBlockIdMap:a}}function GD(r,n){const t=r.length-1,e=r[t],s=n[0];e===s&&n.splice(0,1),r.push(...n)}function UD(){}function K6(r=[],n=d.ColumnSeparatorType.NONE,t=0,e=0,s=Number.POSITIVE_INFINITY,i=Number.POSITIVE_INFINITY){const o=[];let a=0,c=0;if(r.length===0)o.push(l6(e,s,0,d.ColumnSeparatorType.NONE));else for(let l=0;l<r.length;l++){const{width:D,paddingEnd:f}=r[l];c=f,a=D,o.push(l6(e,a,c,n)),e+=a+c,l===r.length-1&&(a=s!==Number.POSITIVE_INFINITY?s-a:D,c=0,o.push(l6(e,a,c,n)))}const u={columns:o,colCount:(r==null?void 0:r.length)||1,height:i,top:t,st:0,ed:0};return o.forEach(l=>{l.parent=u}),u}function J6(r,n){r.isFull=n}function l6(r,n,t,e){return{lines:[],left:r,width:n,height:0,spaceWidth:t,separator:e,st:0,ed:0,drawingLRIds:[],isFull:!1}}function s2(r,n,t=1,e=n2.SECTION){var g1,p1,F1,c1;const s=VD(),{pageNumberStart:i=1,pageSize:o={width:Number.POSITIVE_INFINITY,height:Number.POSITIVE_INFINITY},pageOrient:a=d.PageOrientType.PORTRAIT,headerIds:c={},footerIds:u={},useFirstPageHeaderFooter:l,useEvenPageHeaderFooter:D,footerTreeMap:f,headerTreeMap:p,columnProperties:F=[],columnSeparatorType:E,marginTop:m=0,marginBottom:b=0,marginHeader:S=0,marginFooter:v=0,marginLeft:y=0,marginRight:T=0,renderConfig:B={}}=r,{skeHeaders:O,skeFooters:w}=n,{width:P=Number.POSITIVE_INFINITY,height:L=Number.POSITIVE_INFINITY}=o;s.pageNumber=t,s.pageNumberStart=i,s.renderConfig=B,s.marginLeft=y,s.marginRight=T,s.breakType=e,s.pageWidth=P,s.width=0,s.pageHeight=L,s.height=0,s.pageOrient=a;const{defaultHeaderId:A,evenPageHeaderId:$,firstPageHeaderId:Y}=c,{defaultFooterId:x,evenPageFooterId:R,firstPageFooterId:k}=u;let X=A!=null?A:"",z=x!=null?x:"";t===i&&l?(X=Y!=null?Y:"",z=k!=null?k:""):t%2===0&&D&&(X=$!=null?$:"",z=R!=null?R:"");let j,q;X&&((g1=O.get(X))!=null&&g1.has(P)?j=(p1=O.get(X))==null?void 0:p1.get(P):p&&p.has(X)&&(j=T7(p.get(X),r,n),O.set(X,new Map([[P,j]]))),s.headerId=X),z&&((F1=w.get(z))!=null&&F1.has(P)?q=(c1=w.get(z))==null?void 0:c1.get(P):f&&f.has(z)&&(q=T7(f.get(z),r,n),w.set(X,new Map([[P,q]]))),s.footerId=z),s.marginTop=y7(m,S,j),s.marginBottom=y7(b,v,q);const W=s.sections,V=W[W.length-1],{marginTop:Q,marginBottom:e1,marginLeft:n1,marginRight:K}=s,t1=P-n1-K,G=L-Q-e1;let U=0;V&&(U=V.top+V.height);const h1=K6(F,E,U,0,t1,G-U);return h1.parent=s,W.push(h1),s}function VD(){return{sections:[],headerId:"",footerId:"",pageWidth:0,pageHeight:0,pageOrient:d.PageOrientType.PORTRAIT,pageNumber:1,pageNumberStart:1,verticalAlign:!1,angle:0,width:0,height:0,marginLeft:0,marginRight:0,marginTop:0,marginBottom:0,breakType:n2.SECTION,st:0,ed:0,skeDrawings:new Map}}function T7(r,n,t,e=!0){const{lists:s,footerTreeMap:i,headerTreeMap:o,localeService:a,pageSize:c,marginLeft:u=0,marginRight:l=0,drawings:D,marginTop:f=0,marginBottom:p=0,marginHeader:F=0,marginFooter:E=0}=n,m=(c==null?void 0:c.width)||Number.POSITIVE_INFINITY,b={lists:s,footerTreeMap:i,headerTreeMap:o,pageSize:{width:m-u-l,height:Number.POSITIVE_INFINITY},localeService:a,drawings:D},S=s2(b,t),v=V6(r,r.children[0],S,b,t).pages[0];j2([v]);const y=v.sections[0].columns[0],T=y.height||0,{skeDrawings:B,st:O,ed:w}=v,P={lines:y.lines,skeDrawings:B,height:T,st:O,ed:w,marginLeft:u,marginRight:l};return e?{...P,marginTop:KD(f,F,T)}:{...P,marginBottom:JD(p,E,T)}}function y7(r,n,t){return!t||t.lines.length===0?r:Math.max(r,n,(t==null?void 0:t.height)||0)}function KD(r,n,t){const e=Math.max(r,n);return t>e?0:e-t}function JD(r,n,t){const e=Math.max(r,n);return t>e?0:e-t}function st(r,n,t,e,s=!1){if(s)if(e.bulletSkeleton){const{bulletSkeleton:i,paragraphStyle:o={}}=e,{gridType:a=d.GridType.LINES,charSpace:c=0,defaultTabStop:u=1}=t,{snapToGrid:l=d.BooleanNumber.TRUE}=o,D=e6(c,u,a,l);s_(o,i,D);const f=j4(r[0],i,D);W1([f,...r],n,t,e,s)}else W1(r,n,t,e,s);else G2(r,n,t,e,s);return[...n]}function G2(r,n,t,e,s=!1,i=!0,o){var u;const a=U1(n),c=j6(a);if(c){const l=B7(r),{divide:D}=c,f=(u=D==null?void 0:D.spanGroup)==null?void 0:u[D.spanGroup.length-1],p=(f==null?void 0:f.width)||0,F=(f==null?void 0:f.left)||0,E=U4(f,r[0]);let m=0,b=p+F;if(E&&i){const S=z2(f.content);m=O1.getTextSize(" ",S?r[0].fontStyle:f.fontStyle).width,b+=m,f.width+=m}if(b+l>D.width)if(tt(D,!0),c.isLast&&r.length===1&&(r[0].content===d.DataStreamTreeTokenType.SPACE||r[0].content===d.DataStreamTreeTokenType.PARAGRAPH))k2(D,r,b);else if((D==null?void 0:D.spanGroup.length)===0){const S=[];for(;r.length&&(S.push(r.shift()),!(B7(S)>D.width)););k2(D,S,b),r.length&&W1(r,n,t,e,s,o)}else W1(r,n,t,e,s,o);else{const S=D.parent,v=e_(r);if(S&&v&&!i_(S)){const{paragraphLineGapDefault:y,linePitch:T,lineSpacing:B,spacingRule:O,snapToGrid:w,gridType:P}=U6(t,e),{boundingBoxAscent:L,boundingBoxDescent:A}=v,$=L+A,{contentHeight:Y}=ot($,y,T,P,B,O,w);if(S.contentHeight<Y){const x=n_(S),R=x.length;let k=[],X=1;R>2&&x[0].spanType===u1.LIST?(k=[x[0],x[1]],X=2):k=[x[0]];const z=S.parent,{paragraphStart:j}=z==null?void 0:z.lines.pop();W1(k,n,t,e,j,L+A);for(let q=X;q<x.length;q++)G2([x[q]],n,t,e,s,!1);G2(r,n,t,e,s,!1);return}}k2(D,r,b)}}else W1(r,n,t,e,s,o)}function W1(r,n,t,e,s=!1,i){var K1,y1,J1,$1,N1;let o=U1(n),a=y2(o);if((!a||!a.column)&&(rt(r,n,t,e),o=U1(n),a=y2(o)),!a)return;const c=a.column;if(c.width<=0){console.error("The column width is less than 0, need to adjust page width to make it great than 0");return}const u=x4(c),l=Math.max(...r.map(k1=>k1.bBox.ba)),D=Math.max(...r.map(k1=>k1.bBox.bd)),f=i||l+D,{paragraphStyle:p={},paragraphAffectSkeDrawings:F,skeHeaders:E,skeFooters:m,drawingAnchor:b,paragraphIndex:S}=e,{spaceAbove:v=0,spaceBelow:y=0,indentFirstLine:T=0,hanging:B=0,indentStart:O=0,indentEnd:w=0}=p,{paragraphLineGapDefault:P,linePitch:L,lineSpacing:A,spacingRule:$,snapToGrid:Y,gridType:x}=U6(t,e),{paddingTop:R,paddingBottom:k,contentHeight:X,lineSpacingApply:z}=ot(f,P,L,x,A,$,Y),{marginTop:j,spaceBelowApply:q}=qD(z,v,y,s,u),W=j+R+X+k;let V=c.parent;V||(V=a2(o));const Q=(u==null?void 0:u.lineHeight)||0,e1=(u==null?void 0:u.top)||0,n1=Q+e1,{pageWidth:K,headerId:t1,footerId:G}=o,U=(y1=(K1=E==null?void 0:E.get(t1))==null?void 0:K1.get(K))==null?void 0:y1.skeDrawings,h1=($1=(J1=m==null?void 0:m.get(G))==null?void 0:J1.get(K))==null?void 0:$1.skeDrawings;QD(n1,W,c,(N1=b==null?void 0:b.get(S))==null?void 0:N1.top,F);const g1=Q4(W,n1,o.skeDrawings,U,h1);if(W+g1>V.height&&c.lines.length>0&&o.sections.length>0){J6(c,!0),it(r,n,t,e,s,i);return}const p1=u?u.lineIndex+1:0,{charSpace:F1,defaultTabStop:c1}=L4(t,e),L1=e6(F1,c1,x,Y),{paddingLeft:V1,paddingRight:_1,changeBulletWidth:R1}=ZD(r[0],T,B,O,w,L1);R1.state&&(r[0].width=R1.hangingNumber);const x1=q4(S,A2.PARAGRAPH,{lineHeight:W,contentHeight:X,lineTop:g1,paddingLeft:V1,paddingRight:_1,paddingTop:R,paddingBottom:k,marginTop:j,spaceBelowApply:q},c.width,p1,s,o.skeDrawings,U,h1);c.lines.push(x1),x1.parent=c,nt(S,x1,n1,b),G2(r,n,t,e,s,!0,i)}function it(r,n,t,e,s=!1,i){const o=U1(n);M4(o)===!0?rt(r,n,t,e,s,i):W1(r,n,t,e,s,i)}function rt(r,n,t,e,s=!1,i){const o=U1(n),{skeHeaders:a,skeFooters:c}=e;n.push(s2(t,{skeHeaders:a,skeFooters:c},o==null?void 0:o.pageNumber)),it(r,n,t,e,s,i)}function ZD(r,n=0,t=0,e=0,s=0,i){const{spanType:o=u1.LETTER,bBox:a}=r,c=A1(n,i),u=A1(t,i),l=A1(e,i),D=A1(s,i);let f=l;const p=D,F={state:!1,hangingNumber:0};if(o===u1.LIST){const{width:E}=a;c>0?f+=c:u>0&&u>E&&(F.state=!0,F.hangingNumber=u)}else f+=u;return{paddingLeft:f,paddingRight:p,changeBulletWidth:F}}function qD(r=0,n=0,t=0,e,s){let i=0,o=0;if(!e)return{marginTop:i,spaceBelowApply:o};if(i=A1(n,r),o=A1(t,r),s){const{spaceBelowApply:a}=s;a>i&&(i=0,s.lineHeight+=a,s.marginBottom=a)}return{marginTop:i,spaceBelowApply:o}}function ot(r,n,t,e,s,i,o){let a=n,c=n;if(e===d.GridType.DEFAULT||o===d.BooleanNumber.FALSE)return i===d.SpacingRule.AUTO?{paddingTop:a,paddingBottom:c,contentHeight:s*r,lineSpacingApply:r}:{paddingTop:a,paddingBottom:c,contentHeight:Math.max(s,r),lineSpacingApply:s};let u=0;return i===d.SpacingRule.AUTO?u=s*t:u=s,r+n*2<u&&(a=c=(u-r)/2),{paddingTop:a,paddingBottom:c,contentHeight:r,lineSpacingApply:u}}function QD(r,n,t,e,s){var c;if(!s)return;const i=(c=t.parent)==null?void 0:c.parent;if(!i)return;const o=new Map,a=t_(t);s.forEach(u=>{if(!u)return;const{initialState:l,drawingOrigin:D}=u;if(l||!D)return;const{objectTransform:f}=D,{positionH:p,positionV:F,size:E,angle:m}=f,{width:b=0,height:S=0}=E;u.aLeft=k4(p,t,i,b,a)||0,u.aTop=H4(F,i,r,n,S,e,a)||0,u.width=b,u.height=S,u.angle=m,u.initialState=!0,o.set(u.objectId,u)}),i.skeDrawings=new Map([...i.skeDrawings,...o])}function t_(r){const n=r.parent;if(!n)return!1;const t=n==null?void 0:n.columns;if(!t)return!1;const e=t.length;for(let s=e-1;s>=0;s--){const o=t[s].lines,a=o.length;if(!(a<=0)){for(let c=a-1;c>=0;c--)if(o[c].paragraphStart)return!1}}return!0}function B7(r){const n=r.length;let t=0;for(let e=0;e<n;e++){const s=r[e];t+=s.width}return t}function e_(r){const n=r.length;let t=Number.NEGATIVE_INFINITY,e;for(let s=0;s<n;s++){const i=r[s],{ba:o,bd:a}=i.bBox;t<o+a&&(e={boundingBoxAscent:o,boundingBoxDescent:a}),t=o+a}return e}function n_(r){const n=r.divides,t=n.length,e=[];for(let s=0;s<t;s++){const i=n[s];e.push(...i.spanGroup)}return e}function s_(r,n,t){const{hanging:e,indentStart:s}=r,{hanging:i,indentStart:o}=n;e===void 0&&(r.hanging=i),s===void 0&&(r.indentStart=A1(o||0,t)-A1(i||0,t))}function i_(r){return!r.divides[0].spanGroup[0]}class L2{constructor(n,t=!1){this.position=n,this.required=t}}const r_=5,O7=12,o_=13,a_=16,u_=17,c_=22,w7=28,A7=31,l_=33,H2=34,h_=35,h6=36,S6=37,at=38,D_=39,__=40,g2=41,d_=42,_=0,g=1,Z=2,ut=3,C=4,f_=[[C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,ut,C,C,C,C,C,C,C,C,C,C,C],[_,C,C,g,g,C,C,C,C,g,g,_,_,_,_,g,g,g,_,_,C,Z,C,_,_,_,_,_,_,_,_,g,_],[_,C,C,g,g,C,C,C,C,g,g,g,g,g,_,g,g,g,_,_,C,Z,C,_,_,_,_,_,_,_,_,g,_],[C,C,C,g,g,g,C,C,C,g,g,g,g,g,g,g,g,g,g,g,C,Z,C,g,g,g,g,g,g,g,g,g,g],[g,C,C,g,g,g,C,C,C,g,g,g,g,g,g,g,g,g,g,g,C,Z,C,g,g,g,g,g,g,g,g,g,g],[_,C,C,g,g,g,C,C,C,_,_,_,_,_,_,g,g,g,_,_,C,Z,C,_,_,_,_,_,_,_,_,g,_],[_,C,C,g,g,g,C,C,C,_,_,_,_,_,_,g,g,g,_,_,C,Z,C,_,_,_,_,_,_,_,_,g,_],[_,C,C,g,g,g,C,C,C,_,_,g,_,g,_,g,g,g,_,_,C,Z,C,_,_,_,_,_,_,_,_,g,_],[_,C,C,g,g,g,C,C,C,_,_,g,g,g,_,g,g,g,_,_,C,Z,C,_,_,_,_,_,_,_,_,g,_],[g,C,C,g,g,g,C,C,C,_,_,g,g,g,g,g,g,g,_,_,C,Z,C,g,g,g,g,g,_,g,g,g,_],[g,C,C,g,g,g,C,C,C,_,_,g,g,g,_,g,g,g,_,_,C,Z,C,_,_,_,_,_,_,_,_,g,_],[g,C,C,g,g,g,C,C,C,g,g,g,g,g,_,g,g,g,_,_,C,Z,C,_,_,_,_,_,_,_,_,g,_],[g,C,C,g,g,g,C,C,C,g,g,g,g,g,_,g,g,g,_,_,C,Z,C,_,_,_,_,_,_,_,_,g,_],[g,C,C,g,g,g,C,C,C,g,g,g,g,g,_,g,g,g,_,_,C,Z,C,_,_,_,_,_,_,_,_,g,_],[_,C,C,g,g,g,C,C,C,_,g,_,_,_,_,g,g,g,_,_,C,Z,C,_,_,_,_,_,_,_,_,g,_],[_,C,C,g,g,g,C,C,C,_,_,_,_,_,_,g,g,g,_,_,C,Z,C,_,_,_,_,_,_,_,_,g,_],[_,C,C,g,_,g,C,C,C,_,_,g,_,_,_,g,g,g,_,_,C,Z,C,_,_,_,_,_,_,_,_,g,_],[_,C,C,g,_,g,C,C,C,_,_,_,_,_,_,g,g,g,_,_,C,Z,C,_,_,_,_,_,_,_,_,g,_],[g,C,C,g,g,g,C,C,C,g,g,g,g,g,g,g,g,g,g,g,C,Z,C,g,g,g,g,g,g,g,g,g,_],[_,C,C,g,g,g,C,C,C,_,_,_,_,_,_,g,g,g,_,C,C,Z,C,_,_,_,_,_,_,_,_,g,_],[_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,C,_,_,_,_,_,_,_,_,_,_,_,_],[g,C,C,g,g,g,C,C,C,g,g,g,g,g,_,g,g,g,_,_,C,Z,C,_,_,_,_,_,_,_,_,g,_],[g,C,C,g,g,g,C,C,C,g,g,g,g,g,g,g,g,g,g,g,C,Z,C,g,g,g,g,g,g,g,g,g,g],[_,C,C,g,g,g,C,C,C,_,g,_,_,_,_,g,g,g,_,_,C,Z,C,_,_,_,g,g,_,_,_,g,_],[_,C,C,g,g,g,C,C,C,_,g,_,_,_,_,g,g,g,_,_,C,Z,C,_,_,_,_,g,_,_,_,g,_],[_,C,C,g,g,g,C,C,C,_,g,_,_,_,_,g,g,g,_,_,C,Z,C,g,g,g,g,_,_,_,_,g,_],[_,C,C,g,g,g,C,C,C,_,g,_,_,_,_,g,g,g,_,_,C,Z,C,_,_,_,g,g,_,_,_,g,_],[_,C,C,g,g,g,C,C,C,_,g,_,_,_,_,g,g,g,_,_,C,Z,C,_,_,_,_,g,_,_,_,g,_],[_,C,C,g,g,g,C,C,C,_,_,_,_,_,_,g,g,g,_,_,C,Z,C,_,_,_,_,_,g,_,_,g,_],[_,C,C,g,g,g,C,C,C,_,g,_,_,_,_,g,g,g,_,_,C,Z,C,_,_,_,_,_,_,_,g,g,_],[_,C,C,g,g,g,C,C,C,_,g,_,_,_,_,g,g,g,_,_,C,Z,C,_,_,_,_,_,_,_,_,g,_],[g,C,C,g,g,g,C,C,C,g,g,g,g,g,_,g,g,g,_,_,C,Z,C,_,_,_,_,_,_,_,_,g,_],[_,C,C,g,g,_,C,C,C,_,_,_,_,_,_,_,_,_,_,_,C,Z,C,_,_,_,_,_,_,_,_,g,_]];class g_{constructor(){h(this,"_rules",new Map)}add(n,t){this._rules.set(n,t)}shouldBreak(n,t){for(const e of this._rules.values())if(e(n,t))return!0;return!1}}const p_=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]),m_=new Uint8Array(new Uint32Array([305419896]).buffer)[0]===18,I7=(r,n,t)=>{const e=r[n];r[n]=r[t],r[t]=e},F_=r=>{const n=r.length;for(let t=0;t<n;t+=4)I7(r,t,t+3),I7(r,t+1,t+2)},C_=r=>{m_&&F_(r)},Z6=0,ct=-3;class B2{constructor(){h(this,"table",new Uint16Array(16));h(this,"trans",new Uint16Array(288))}}class E_{constructor(n,t){h(this,"source");h(this,"dest");h(this,"sourceIndex");h(this,"tag");h(this,"bitcount");h(this,"destLen");h(this,"ltree");h(this,"dtree");this.source=n,this.sourceIndex=0,this.tag=0,this.bitcount=0,this.dest=t,this.destLen=0,this.ltree=new B2,this.dtree=new B2}}const lt=new B2,ht=new B2,q6=new Uint8Array(30),Q6=new Uint16Array(30),Dt=new Uint8Array(30),_t=new Uint16Array(30),b_=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),R7=new B2,C1=new Uint8Array(320);function dt(r,n,t,e){let s,i;for(s=0;s<t;++s)r[s]=0;for(s=0;s<30-t;++s)r[s+t]=s/t|0;for(i=e,s=0;s<30;++s)n[s]=i,i+=1<<r[s]}function S_(r,n){let t;for(t=0;t<7;++t)r.table[t]=0;for(r.table[7]=24,r.table[8]=152,r.table[9]=112,t=0;t<24;++t)r.trans[t]=256+t;for(t=0;t<144;++t)r.trans[24+t]=t;for(t=0;t<8;++t)r.trans[168+t]=280+t;for(t=0;t<112;++t)r.trans[176+t]=144+t;for(t=0;t<5;++t)n.table[t]=0;for(n.table[5]=32,t=0;t<32;++t)n.trans[t]=t}const x7=new Uint16Array(16);function D6(r,n,t,e){let s,i;for(s=0;s<16;++s)r.table[s]=0;for(s=0;s<e;++s)r.table[n[t+s]]++;for(r.table[0]=0,i=0,s=0;s<16;++s)x7[s]=i,i+=r.table[s];for(s=0;s<e;++s)n[t+s]&&(r.trans[x7[n[t+s]]++]=s)}function v_(r){r.bitcount--||(r.tag=r.source[r.sourceIndex++],r.bitcount=7);const n=r.tag&1;return r.tag>>>=1,n}function b1(r,n,t){if(!n)return t;for(;r.bitcount<24;)r.tag|=r.source[r.sourceIndex++]<<r.bitcount,r.bitcount+=8;const e=r.tag&65535>>>16-n;return r.tag>>>=n,r.bitcount-=n,e+t}function v6(r,n){for(;r.bitcount<24;)r.tag|=r.source[r.sourceIndex++]<<r.bitcount,r.bitcount+=8;let t=0,e=0,s=0,i=r.tag;do e=2*e+(i&1),i>>>=1,++s,t+=n.table[s],e-=n.table[s];while(e>=0);return r.tag=i,r.bitcount-=s,n.trans[t+e]}function T_(r,n,t){let e,s,i;const o=b1(r,5,257),a=b1(r,5,1),c=b1(r,4,4);for(e=0;e<19;++e)C1[e]=0;for(e=0;e<c;++e){const u=b1(r,3,0);C1[b_[e]]=u}for(D6(R7,C1,0,19),s=0;s<o+a;){const u=v6(r,R7);switch(u){case 16:{const l=C1[s-1];for(i=b1(r,2,3);i;--i)C1[s++]=l;break}case 17:for(i=b1(r,3,3);i;--i)C1[s++]=0;break;case 18:for(i=b1(r,7,11);i;--i)C1[s++]=0;break;default:C1[s++]=u;break}}D6(n,C1,0,o),D6(t,C1,o,a)}function M7(r,n,t){for(;;){let e=v6(r,n);if(e===256)return Z6;if(e<256)r.dest[r.destLen++]=e;else{let s;e-=257;const i=b1(r,q6[e],Q6[e]),o=v6(r,t),a=r.destLen-b1(r,Dt[o],_t[o]);for(s=a;s<a+i;++s)r.dest[r.destLen++]=r.dest[s]}}}function y_(r){let n,t,e;for(;r.bitcount>8;)r.sourceIndex--,r.bitcount-=8;if(n=r.source[r.sourceIndex+1],n=256*n+r.source[r.sourceIndex],t=r.source[r.sourceIndex+3],t=256*t+r.source[r.sourceIndex+2],n!==(~t&65535))return ct;for(r.sourceIndex+=4,e=n;e;--e)r.dest[r.destLen++]=r.source[r.sourceIndex++];return r.bitcount=0,Z6}function P7(r,n){const t=new E_(r,n);let e,s,i;do{switch(e=v_(t),s=b1(t,2,0),s){case 0:i=y_(t);break;case 1:i=M7(t,lt,ht);break;case 2:T_(t,t.ltree,t.dtree),i=M7(t,t.ltree,t.dtree);break;default:i=ct}if(i!==Z6)throw new Error("Data error")}while(!e);return t.destLen<t.dest.length?typeof t.dest.slice=="function"?t.dest.slice(0,t.destLen):t.dest.subarray(0,t.destLen):t.dest}S_(lt,ht);dt(q6,Q6,4,3);dt(Dt,_t,2,1);q6[28]=0;Q6[28]=258;const t7=11,j1=5,B_=t7-j1,O_=65536>>t7,w_=1<<B_,A_=w_-1,X2=2,I_=1<<j1,_6=I_-1,ft=65536>>j1,R_=1024>>j1,x_=ft+R_,M_=x_,P_=32,L_=M_+P_,$_=1<<X2;class N_{constructor(n){h(this,"highStart");h(this,"errorValue");h(this,"data");const t=typeof n.readUInt32BE=="function"&&typeof n.slice=="function";if(t||n instanceof Uint8Array){let e;if(t)this.highStart=n.readUInt32LE(0),this.errorValue=n.readUInt32LE(4),e=n.readUInt32LE(8),n=n.slice(12);else{const s=new DataView(n.buffer);this.highStart=s.getUint32(0,!0),this.errorValue=s.getUint32(4,!0),e=s.getUint32(8,!0),n=n.subarray(12)}n=P7(n,new Uint8Array(e)),n=P7(n,new Uint8Array(e)),C_(n),this.data=new Uint32Array(n.buffer)}else({data:this.data,highStart:this.highStart,errorValue:this.errorValue}=n)}get(n){let t;return n<0||n>1114111?this.errorValue:n<55296||n>56319&&n<=65535?(t=(this.data[n>>j1]<<X2)+(n&_6),this.data[t]):n<=65535?(t=(this.data[ft+(n-55296>>j1)]<<X2)+(n&_6),this.data[t]):n<this.highStart?(t=this.data[L_-O_+(n>>t7)],t=this.data[t+(n>>j1&A_)],t=(t<<X2)+(n&_6),this.data[t]):this.data[this.data.length-$_]}}const k_=new N_(p_);function d6(r){switch(r){case l_:return O7;case D_:case __:case d_:return O7;case h_:return r_;default:return r}}function f6(r){switch(r){case S6:case at:return H2;case g2:return c_;default:return r}}class H_{constructor(n){h(this,"_pos",0);h(this,"_lastPos",0);h(this,"_curClass",null);h(this,"_codePoint",null);h(this,"_nextClass",null);h(this,"_LB8a",!1);h(this,"_LB21a",!1);h(this,"_LB30a",0);h(this,"_rule",new g_);this.string=n}use(n){return n(this),this}addRule(n,t){return this._rule.add(n,t),this}nextBreak(){if(this._curClass==null){const n=this._nextCharClass();this._curClass=f6(n),this._nextClass=n,this._LB8a=n===A7,this._LB30a=0}for(;this._pos<this.string.length;){this._lastPos=this._pos;const n=this._nextClass;if(this._nextClass=this._nextCharClass(),this._curClass===H2||this._curClass===h6&&this._nextClass!==S6)return this._curClass=f6(d6(this._nextClass)),new L2(this._lastPos,!0);if(this._rule.shouldBreak(this._codePoint,this._nextClass))return this._curClass=f6(d6(this._nextClass)),new L2(this._lastPos);let t=this._getSimpleBreak();if(t===null&&(t=this._getPairTableBreak(n)),this._LB8a=this._nextClass===A7,t)return new L2(this._lastPos)}return this._lastPos<this.string.length?(this._lastPos=this.string.length,new L2(this.string.length)):null}_getNextCodePoint(){const n=this.string.charCodeAt(this._pos++),t=this.string.charCodeAt(this._pos);return n>=55296&&n<=56319&&t>=56320&&t<=57343?(this._pos++,(n-55296)*1024+(t-56320)+65536):n}_nextCharClass(){const n=this._getNextCodePoint(),t=k_.get(n);return this._codePoint=n,d6(t)}_getSimpleBreak(){switch(this._nextClass){case g2:return!1;case H2:case S6:case at:return this._curClass=H2,!1;case h6:return this._curClass=h6,!1}return null}_getPairTableBreak(n){let t=!1;switch(f_[this._curClass][this._nextClass]){case _:t=!0;break;case g:t=n===g2;break;case Z:if(t=n===g2,!t)return t=!1,t;break;case ut:if(n!==g2)return t;break}return this._LB8a&&(t=!1),this._LB21a&&(this._curClass===a_||this._curClass===u_)?(t=!1,this._LB21a=!1):this._LB21a=this._curClass===o_,this._curClass===w7?(this._LB30a++,this._LB30a===2&&this._nextClass===w7&&(t=!0,this._LB30a=0)):this._LB30a=0,this._curClass=this._nextClass,t}}const X_=9;function Y_(r){r.addRule("break_before_tab",n=>n===X_)}function gt(r,n,t,e,s){const{gridType:i=d.GridType.LINES,charSpace:o=0,defaultTabStop:a=10.5,pageSize:c={width:Number.POSITIVE_INFINITY,height:Number.POSITIVE_INFINITY},marginRight:u=0,marginLeft:l=0,lists:D,drawings:f={},localeService:p}=e,{endIndex:F,startIndex:E,content:m="",blocks:b=[]}=n,S=r.getParagraph(F)||{startIndex:0},{paragraphStyle:v={},bullet:y}=S,{skeHeaders:T,skeFooters:B,skeListLevel:O,drawingAnchor:w}=s,P=new Map,L={paragraphIndex:F,paragraphStyle:v,paragraphAffectSkeDrawings:P,skeHeaders:T,skeFooters:B,drawingAnchor:w},A=z_(y,O),$=A4(y,D,A);W_(y,$,O),L.bulletSkeleton=$;const{horizontalAlign:Y=d.HorizontalAlign.UNSPECIFIED,snapToGrid:x=d.BooleanNumber.TRUE}=v;let R=[t];const k=new Map;for(let q=0,W=b.length;q<W;q++){const V=b[q],Q=r.getCustomBlock(V);if(Q==null)continue;k.set(V,Q);const e1=Q.blockId,n1=f[e1];n1.layoutType!==d.PositionedObjectLayoutType.INLINE&&P.set(e1,j_(n1))}Y4();const X=new H_(m);let z=0,j;for(Y_(X);j=X.nextBreak();){let W=m.slice(z,j.position),V=z,Q=[],e1=z===0;const n1=()=>{Q.length!==0&&(R=st(Q,R,e,L,e1),Q=[],e1=!1)};for(;W.length>0;){const K=W[0],t1=V+E;if(/\s/.test(K)||Q2(K)){const G=u2(V,r,n,e,v);let U;if(K===d.DataStreamTreeTokenType.TAB){const h1=e6(o,a,i,x);U=W4(G,h1)}else U=I2(K,G);Q.push(U),V++,W=W.substring(1)}else if(M6(W)){const{step:G,spanGroup:U}=J4(V,W,r,n,e,v);Q.push(...U),V+=G,W=W.substring(G)}else if(P6(K)){const{step:G,spanGroup:U}=K4(V,W,r,n,e,v);Q.push(...U),V+=G,W=W.substring(G)}else if(L6(K)){const{step:G,spanGroup:U}=Z4(V,W,r,n,e,v);Q.push(...U),V+=G,W=W.substring(G)}else{const{step:G,spanGroup:U}=V4(V,W,r,n,e,v);Q.push(...U),V+=G,W=W.substring(G)}if(K===d.DataStreamTreeTokenType.CUSTOM_BLOCK){let G=k.get(t1);if(G==null&&(G=r.getCustomBlock(t1)),G!=null){const U=G.blockId;f[U].layoutType===d.PositionedObjectLayoutType.INLINE&&(R=I4())}}else if(K===d.DataStreamTreeTokenType.PAGE_BREAK)n1(),R.push(s2(e,s,L7(R[R.length-1]),n2.PAGE)),P.clear();else if(K===d.DataStreamTreeTokenType.COLUMN_BREAK){n1();const G=R[R.length-1],U=y2(G);U&&!U.isLast?J6(U.column,!0):R.push(s2(e,s,L7(G),n2.COLUMN))}}n1(),z=j.position}return $4(R,q=>{G_(q,Y)}),R}function z_(r,n){if(!r||!n)return;const{listId:t,nestingLevel:e}=r,s=n==null?void 0:n.get(t);let i=e;i<0&&(i=0);const o=[];for(let a=i;a>=0;a--){const c=s==null?void 0:s[a];o[a]=c||null}return o}function W_(r,n,t){if(!r||!n)return;const{listId:e,nestingLevel:s}=r,i=[...(t==null?void 0:t.get(e))||[]];i[s]=n,i.splice(s+1),t==null||t.set(e,i)}function j_(r){return{objectId:r.objectId,aLeft:0,aTop:0,width:0,height:0,angle:0,initialState:!1,drawingOrigin:r}}function L7(r){return r.pageNumber+1}function G_(r,n){if(n===d.HorizontalAlign.UNSPECIFIED||n===d.HorizontalAlign.LEFT)return;const{divides:t}=r,e=t.length;for(let s=0;s<e;s++){const i=t[s],{width:o}=i,a=X4(i);o!==Number.POSITIVE_INFINITY&&(n===d.HorizontalAlign.CENTER?i.paddingLeft=(o-a)/2:n===d.HorizontalAlign.RIGHT?i.paddingLeft=o-a:d.HorizontalAlign.JUSTIFIED)}}function U_(r=0,n,t=d.ColumnSeparatorType.NONE,e=Number.POSITIVE_INFINITY){const{left:s,width:i,spaceWidth:o}=V_(r,n,e);return{lines:[],left:s,width:i,height:0,spaceWidth:o,separator:t,st:0,ed:0,drawingLRIds:[],isFull:!1}}function V_(r=0,n,t){let e=0,s=0,i=0;for(let o=0;o<=r;o++){const{width:a,paddingEnd:c}=n[o];o===n.length-1?(e=t===Number.POSITIVE_INFINITY?t-e:a,s=0):(s=c,e=a,i+=e+s)}return{width:e,spaceWidth:s,left:i-e-s}}class O2{constructor(){h(this,"_translateX",0);h(this,"_translateY",0);h(this,"_translateSaveList",[])}get x(){return this._translateX}get y(){return this._translateY}reset(){this.translateBy(0,0),this._translateSaveList=[]}translateBy(n=0,t=0){this._translateX=n,this._translateY=t}translate(n=0,t=0){this._translateX+=n,this._translateY+=t}translateSave(){this._translateSaveList.push({x:this._translateX,y:this._translateY})}translateRestore(){const n=this._translateSaveList.pop();n&&(this._translateX=n.x,this._translateY=n.y)}translatePagePadding(n){const{marginTop:t=0,marginBottom:e=0,marginLeft:s=0,marginRight:i=0}=n;this.translate(s,t)}restorePagePadding(n){const{marginTop:t=0,marginBottom:e=0,marginLeft:s=0,marginRight:i=0}=n;this.translate(-s,-t)}translatePage(n,t=T1.VERTICAL,e=0,s=0,i=0,o=0){const{pageWidth:a,pageHeight:c}=n;let u=0,l=0;return t===T1.VERTICAL?u+=c+s:t===T1.HORIZONTAL&&(l+=a+e),this.translate(l,u),{x:l,y:u}}translateSection(n){const{top:t=0}=n;return this.translate(0,t),{x:0,y:t}}translateColumn(n){const{left:t}=n;return this.translate(t,0),{x:t,y:0}}translateLine(n,t=!1){const{top:e,marginBottom:s=0,marginTop:i=0,paddingTop:o=0,paddingBottom:a=0}=n,c=e+(t===!0?i:0)+o;return this.translate(0,c),{x:0,y:c}}translateDivide(n){const{left:t,paddingLeft:e}=n,s=t+e;return this.translate(s,0),{x:s,y:0}}translateSpan(n){const{left:t}=n;return this.translate(t,0),{x:t,y:0}}}var pt=(r=>(r[r.NORMAL=0]="NORMAL",r[r.START=1]="START",r[r.END=2]="END",r))(pt||{}),F2=(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.span=5]="span",r))(F2||{});const X1={page:0,section:1,column:2,line:3,divide:4,span:5};function e7(r,n){return r.page>n.page?!1:r.page<n.page?!0:r.section>n.section?!1:r.section<n.section?!0:r.column>n.column?!1:r.column<n.column?!0:r.line>n.line?!1:r.line<n.line?!0:r.divide>n.divide?!1:r.divide<n.divide?!0:r.span>n.span?!1:(r.span<n.span,!0)}function U2(r,n){return e7(r,n)?{start:r,end:n}:{start:n,end:r}}function T6(r){const n=r.length;if(n===0)return;const t=r[0],e=r[n-1],s=r.length===1&&t.collapsed;return{startOffset:t.startOffset,endOffset:e.endOffset,collapsed:s}}function K_(r,n,t,e){let s=e,i=e;for(let o=0;o<r.length;o++){const c=r[o].count;o<n&&(s+=c),o<t&&(i+=c)}return{startOffset:s,endOffset:i}}class mt{constructor(n,t){h(this,"_liquid",new O2);h(this,"_currentStartState",{page:0,section:0,column:0,line:0,divide:0,span:0});h(this,"_currentEndState",{page:0,section:0,column:0,line:0,divide:0,span:0});this._documentOffsetConfig=n,this._docSkeleton=t}getRangePointData(n,t){const e=[],s=[],i=[];if(n==null||t==null)return{borderBoxPointGroup:e,contentBoxPointGroup:s,cursorList:i};const{start:o,end:a}=U2(n,t);return this._selectionIterator(o,a,(c,u,l,D,f,p)=>{const{lineHeight:F,marginTop:E,contentHeight:m}=p,{spanGroup:b,st:S}=f,{x:v,y}=this._liquid;let T,B;const O=b[c],w=b[u],P=(O==null?void 0:O.left)||0,L=(O==null?void 0:O.width)||0,A=(w==null?void 0:w.left)||0,$=(w==null?void 0:w.width)||0,Y=(O==null?void 0:O.spanType)===u1.LIST,{startOffset:x,endOffset:R}=K_(b,c,u,S),k=o.span===c&&l?o.isBack:!0,X=a.span===u&&D?a.isBack:!1,z=o===a;if(c===0&&u===b.length-1)T={startX:v+P+(Y?L:0),startY:y,endX:v+A+$,endY:y+F},B={startX:v+P+(Y?L:0),startY:y+E,endX:v+A+$,endY:y+E+m};else{const j=k&&!Y;T={startX:v+P+(j?0:L),startY:y,endX:v+A+(X?0:$),endY:y+F},B={startX:v+P+(j?0:L),startY:y+E,endX:v+A+(X?0:$),endY:y+E+m}}e.push(this._pushToPoints(T)),s.push(this._pushToPoints(B)),i.push({startOffset:k?x:x+O.count,endOffset:X?R:R+w.count,collapsed:z})}),{borderBoxPointGroup:e,contentBoxPointGroup:s,cursorList:i}}_resetCurrentNodePositionState(){this._currentStartState={page:0,section:0,column:0,line:0,divide:0,span:0},this._currentEndState={page:0,section:0,column:0,line:0,divide:0,span:0}}_setNodePositionState(n=0,t,e,s){s===t?this._currentStartState[n]=1:this._currentStartState[n]=0,s===e?this._currentEndState[n]=2:this._currentEndState[n]=0}_checkPreviousNodePositionState(n,t=!0){let e=n,s;for(;e>=0;){const i=F2[e];let o;if(t?o=this._currentStartState[i]:o=this._currentEndState[i],o===void 0)return;if(s===void 0&&(s=o),o!==s)return 0;e--}return s}_getSelectionRuler(n,t,e,s,i){let o=0,a=s;const c=F2[n],u=F2[n+1];if(u===null||c===null)return{start_next:o,end_next:a};const l=t[c],D=e[c];this._setNodePositionState(c,l,D,i);const f=this._checkPreviousNodePositionState(n),p=this._checkPreviousNodePositionState(n,!1);return f===1&&(o=t[u]),p===2&&(a=e[u]),{start_next:o,end_next:a}}_pushToPoints(n){const{startX:t,startY:e,endX:s,endY:i}=n,o=[];return o.push({x:t,y:e}),o.push({x:s,y:e}),o.push({x:s,y:i}),o.push({x:t,y:i}),o.push({x:t,y:e}),o}_selectionIterator(n,t,e){const s=this._docSkeleton;if(!s)return[];this._liquid.reset();const i=s.getSkeletonData();if(i==null)return[];const o=i.pages,{page:a}=n,{page:c}=t;if(this._resetCurrentNodePositionState(),this._documentOffsetConfig==null)return[];const{pageLayoutType:u,pageMarginLeft:l,pageMarginTop:D}=this._documentOffsetConfig;for(let f=0;f<=a-1;f++){const p=o[f];this._liquid.translatePage(p,u,l,D)}for(let f=a;f<=c;f++){const p=o[f],F=p.sections,{start_next:E,end_next:m}=this._getSelectionRuler(X1.page,n,t,F.length-1,f);this._liquid.translateSave(),this._liquid.translatePagePadding(p);for(let b=E;b<=m;b++){const S=F[b],v=S.columns,{start_next:y,end_next:T}=this._getSelectionRuler(X1.section,n,t,v.length-1,b);this._liquid.translateSection(S);for(let B=y;B<=T;B++){const O=v[B],w=O.lines,{start_next:P,end_next:L}=this._getSelectionRuler(X1.column,n,t,w.length-1,B);this._liquid.translateColumn(O);for(let A=P;A<=L;A++){const $=w[A],{divides:Y}=$,{start_next:x,end_next:R}=this._getSelectionRuler(X1.line,n,t,Y.length-1,A);this._liquid.translateSave(),this._liquid.translateLine($);for(let k=x;k<=R;k++){const X=Y[k];this._liquid.translateSave(),this._liquid.translateDivide(X);const z=X.spanGroup,{start_next:j,end_next:q}=this._getSelectionRuler(X1.divide,n,t,z.length-1,k);let W=!1,V=!1;f===a&&b===E&&B===y&&A===P&&k===x&&(W=!0),f===c&&b===m&&B===T&&A===L&&k===R&&(V=!0),e&&e(j,q,W,V,X,$,O,S,p),this._liquid.translateRestore()}this._liquid.translateRestore()}}}this._liquid.translateRestore(),this._liquid.translatePage(p,u,l,D)}}}const Ft=["hoverCursor","moveCursor","fillRule","globalCompositeOperation","paintFirst","stroke","strokeScaleEnabled","fill","fillAfterStrokeEnabled","hitStrokeWidth","strokeLineJoin","strokeLineCap","shadowColor","shadowBlur","shadowOffset","shadowOffsetX","shadowOffsetY","shadowOpacity","shadowEnabled","shadowForStrokeEnabled","strokeDashArray","strokeDashOffset","strokeMiterLimit"];class c2 extends I1{constructor(t,e){super(t);h(this,"_hoverCursor");h(this,"_moveCursor",null);h(this,"_fillRule","nonzero");h(this,"_globalCompositeOperation","source-over");h(this,"_paintFirst","fill");h(this,"_stroke");h(this,"_strokeScaleEnabled",!1);h(this,"_fill");h(this,"_fillAfterStrokeEnabled",!1);h(this,"_hitStrokeWidth",0);h(this,"_strokeLineJoin","round");h(this,"_strokeLineCap","round");h(this,"_shadowColor");h(this,"_shadowBlur",0);h(this,"_shadowOffset");h(this,"_shadowOffsetX",0);h(this,"_shadowOffsetY",0);h(this,"_shadowOpacity",0);h(this,"_shadowEnabled",!1);h(this,"_shadowForStrokeEnabled",!1);h(this,"_strokeDashArray");h(this,"_strokeDashOffset",0);h(this,"_strokeMiterLimit",0);h(this,"_type",w6.RECT);this._initialProps(e)}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(t,e){}static _renderPaintInOrder(t,e){e.paintFirst==="stroke"?(this._renderStroke(t,e),this._renderFill(t,e)):(this._renderFill(t,e),this._renderStroke(t,e))}static _renderFill(t,e){e.fill&&(t.save(),this._setFillStyles(t,e),e.fillRule==="evenodd"?t.fill("evenodd"):t.fill(),t.restore())}static _renderStroke(t,e){const{stroke:s,strokeWidth:i,shadowEnabled:o,shadowForStrokeEnabled:a,strokeScaleEnabled:c,parent:u}=e;let{scaleX:l,scaleY:D}=e;if(!(!s||i===0)){if(o&&!a&&this._removeShadow(t),t.save(),c&&u){const f=this._getObjectScaling();t.scale(1/f.scaleX,1/f.scaleY)}else c&&(l=l!=null?l:1,D=D!=null?D:1,t.scale(1/l,1/D));this._setLineDash(t),this._setStrokeStyles(t,e),t.stroke(),t.restore()}}static _getObjectScaling(){return{scaleX:1,scaleY:1}}static _removeShadow(t){}static _setFillStyles(t,e){t.fillStyle=e.fill}static _setStrokeStyles(t,e){const{strokeWidth:s,strokeLineCap:i,strokeDashOffset:o,strokeLineJoin:a,strokeMiterLimit:c,stroke:u}=e;t.setLineWidthNative(s),t.lineCap=i,t.lineDashOffset=o,t.lineJoin=a,t.miterLimit=c,t.strokeStyle=u}static _setLineDash(t){}render(t,e){if(!this.visible)return this.makeDirty(!1),this;if(this.isRender()){const{top:i,left:o,bottom:a,right:c}=e.viewBound;if(this.width+this.strokeWidth<o||c<0||this.height+this.strokeWidth<i||a<0)return this}const s=this.transform.getMatrix();return t.save(),t.transform(s[0],s[1],s[2],s[3],s[4],s[5]),this._draw(t),t.restore(),this.makeDirty(!1),this}setProps(t){if(!t)return;const e=Object.keys(t);if(e.length!==0)return e.forEach(s=>{if(t[s]===void 0)return!0;W2.indexOf(s)===-1&&(this[`_${s}`]=t[s])}),this.makeDirty(!0),this}toJson(){const t={};return Ft.forEach(e=>{this[e]&&(t[e]=this[e])}),{...super.toJson(),...t}}_draw(t){}_initialProps(t){if(!t)return;const e=Object.keys(t);if(e.length===0)return;const s={};let i=!1;e.forEach(o=>{if(t[o]===void 0)return!0;W2.indexOf(o)>-1?(s[o]=t[o],i=!0):this[`_${o}`]=t[o]}),i&&this.transformByState(s),this.makeDirty(!0)}}const Ct=["radius"];class f1 extends c2{constructor(t,e){super(t,e);h(this,"_radius",0);e!=null&&e.radius&&(this._radius=e.radius)}get radius(){return this._radius}static drawWith(t,e){let{radius:s,width:i,height:o}=e;if(s=s!=null?s:0,i=i!=null?i:30,o=o!=null?o:30,t.beginPath(),e.strokeDashArray&&t.setLineDash(e.strokeDashArray),!s)t.rect(0,0,i,o);else{let a=0,c=0,u=0,l=0;a=c=u=l=Math.min(s,i/2,o/2),t.moveTo(a,0),t.lineTo(i-c,0),t.arc(i-c,c,c,Math.PI*3/2,0,!1),t.lineTo(i,o-l),t.arc(i-l,o-l,l,0,Math.PI/2,!1),t.lineTo(u,o),t.arc(u,o-u,u,Math.PI/2,Math.PI,!1),t.lineTo(0,a),t.arc(a,a,a,Math.PI,Math.PI*3/2,!1)}t.closePath(),this._renderPaintInOrder(t,e)}toJson(){const t={};return Ct.forEach(e=>{this[e]&&(t[e]=this[e])}),{...super.toJson(),...t}}_draw(t){f1.drawWith(t,this)}}const Et=["pointsGroup"];class s6 extends c2{constructor(t,e){super(t,e);h(this,"_pointsGroup");this._pointsGroup=(e==null?void 0:e.pointsGroup)||[[]],this._setFixBoundingBox(),this.onTransformChangeObservable.add(s=>{const{type:i,value:o,preValue:a}=s;(i===i1.resize||i===i1.all)&&this.resizePolygon(a)})}get pointsGroup(){return this._pointsGroup}static drawWith(t,e){let{pointsGroup:s}=e;s=s!=null?s:[[]],e.strokeDashArray&&t.setLineDash(e.strokeDashArray),t.beginPath();for(const i of s){t.moveTo(i[0].x,i[0].y);for(let o=1;o<i.length;o++){const a=i[o];t.lineTo(a.x,a.y)}}t.closePath(),this._renderPaintInOrder(t,e)}updatePointGroup(t){this._pointsGroup=t,this._setFixBoundingBox()}resizePolygon(t){const{left:e,top:s,width:i,height:o}=this._getSelfRect(),{width:a,height:c}=t;let u,l;a?u=this.width-a:u=0,c?l=this.height-c:l=0;const D=u/i,f=l/o;this.scaleX+=D,this.scaleY+=f,this.left=this.left-e*D,this.top=this.top-s*f,this._setTransForm()}toJson(){const t={};return Et.forEach(e=>{this[e]&&(t[e]=this[e])}),{...super.toJson(),...t}}getState(){const{left:t,top:e,width:s,height:i}=this.getRect();return{left:t,top:e,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:t,top:e,width:s,height:i}=this._getSelfRect();return{left:t*this.scaleX+this.left,top:e*this.scaleY+this.top,width:s*this.scaleX,height:i*this.scaleY}}_draw(t){s6.drawWith(t,this)}_setFixBoundingBox(){const{width:t,height:e,left:s,top:i}=this._getSelfRect();this.left=this.left+s,this.top=this.top+i,this.width=t,this.height=e;const o=this.pointsGroup;for(const a of o)for(const c of a)c.x-=s,c.y-=i;this._setTransForm()}_getSelfRect(){const t=this.pointsGroup;let e=t[0][0].x,s=t[0][0].x,i=t[0][0].y,o=t[0][0].y;for(const a of t)for(const c of a)e=Math.min(e,c.x),s=Math.max(s,c.x),i=Math.min(i,c.y),o=Math.max(o,c.y);return{left:e,top:i,width:s-e,height:o-i}}}const J_="__TestSelectionRange__",Z_="__TestSelectionAnchor__",$7=6;function bt(r,n,t,e){const{startOffset:s,endOffset:i,style:o=T2}=n,a=t.findNodePositionByCharIndex(s),c=s!==i?t.findNodePositionByCharIndex(i):null,u=new V2(r,e,t,a,c,o);return u.refresh(),u}class V2{constructor(n,t,e,s,i,o=T2){h(this,"_current",!1);h(this,"_rangeShape");h(this,"_anchorShape");h(this,"_cursorList",[]);this._scene=n,this._document=t,this._docSkeleton=e,this.anchorNodePosition=s,this.focusNodePosition=i,this.style=o}get startOffset(){var s;const{startOffset:n}=(s=T6(this._cursorList))!=null?s:{},t=this._docSkeleton.getViewModel().getBody();if(n==null||t==null)return n;const e=t.dataStream.length-2;return Math.min(e,n)}get endOffset(){var s;const{endOffset:n}=(s=T6(this._cursorList))!=null?s:{},t=this._docSkeleton.getViewModel().getBody();if(n==null||t==null)return n;const e=t.dataStream.length-2;return Math.min(n,e)}get collapsed(){const{startOffset:n,endOffset:t}=this;return n!=null&&n===t}get startNodePosition(){if(this.anchorNodePosition==null)return null;if(this.focusNodePosition==null)return this.anchorNodePosition;const{start:n}=U2(this.anchorNodePosition,this.focusNodePosition);return n}get endNodePosition(){if(this.anchorNodePosition==null)return this.focusNodePosition;if(this.focusNodePosition==null)return null;const{end:n}=U2(this.anchorNodePosition,this.focusNodePosition);return n}get direction(){const{collapsed:n,anchorNodePosition:t,focusNodePosition:e}=this;return n||t==null||e==null?m2.NONE:e7(t,e)?m2.FORWARD:m2.BACKWARD}getAnchor(){return this._anchorShape}activeStatic(){var n,t;(t=this._anchorShape)==null||t.setProps({stroke:((n=this.style)==null?void 0:n.strokeActive)||l1(d.COLORS.black,1)})}deactivateStatic(){var n,t;(t=this._anchorShape)==null||t.setProps({stroke:((n=this.style)==null?void 0:n.stroke)||l1(d.COLORS.black,0)})}isActive(){return this._current===!0}activate(){this._current=!0}deactivate(){this._current=!1}dispose(){var n,t;(n=this._rangeShape)==null||n.dispose(),this._rangeShape=null,(t=this._anchorShape)==null||t.dispose(),this._anchorShape=null}isIntersection(n){const{startOffset:t,endOffset:e}=this,{startOffset:s,endOffset:i}=n;return t==null||e==null||s==null||i==null?!1:t<=i&&e>=s}refresh(){var D,f;const{_document:n,_docSkeleton:t}=this,e=this.anchorNodePosition,s=this.focusNodePosition;if((D=this._anchorShape)==null||D.hide(),(f=this._rangeShape)==null||f.hide(),this._isEmpty())return;const i=n.getOffsetConfig(),{docsLeft:o,docsTop:a}=i,c=new mt(i,t);if(this._isCollapsed()){const{contentBoxPointGroup:p,cursorList:F}=c.getRangePointData(e,e);this._setCursorList(F),p.length>0&&this._createOrUpdateAnchor(p,o,a);return}const{borderBoxPointGroup:u,cursorList:l}=c.getRangePointData(e,s);this._setCursorList(l),u.length>0&&this._createOrUpdateRange(u,o,a)}_isEmpty(){return this.anchorNodePosition==null&&this.focusNodePosition==null}_isCollapsed(){const n=this.anchorNodePosition,t=this.focusNodePosition;if(n!=null&&t==null)return!0;if(n==null||t==null)return!1;const e=Object.keys(X1);for(const s of e){const i=n[s],o=t[s];if(i!==o)return!1}return n.isBack===t.isBack}_createOrUpdateRange(n,t,e){var o;if(this._rangeShape){this._rangeShape.translate(t,e),this._rangeShape.updatePointGroup(n),this._rangeShape.show();return}const s=.2,i=new s6(J_+d.Tools.generateRandomId($7),{pointsGroup:n,fill:((o=this.style)==null?void 0:o.fill)||l1(d.COLORS.black,s),left:t,top:e,evented:!1,debounceParentDirty:!1});this._rangeShape=i,this._scene.addObject(i,2)}_getAnchorBounding(n){const t=n[0],e=t[0],s=t[2],{x:i,y:o}=e,{x:a,y:c}=s;return{left:i,top:o,width:a-i,height:c-o}}_createOrUpdateAnchor(n,t,e){var u,l;const s=this._getAnchorBounding(n),{left:i,top:o,height:a}=s;if(this._anchorShape){this._anchorShape.transformByState({left:i+t,top:o+e,height:a}),this._anchorShape.show();return}const c=new f1(Z_+d.Tools.generateRandomId($7),{left:i+t,top:o+e,height:a,strokeWidth:((u=this.style)==null?void 0:u.strokeWidth)||1,stroke:((l=this.style)==null?void 0:l.stroke)||l1(d.COLORS.black,0),evented:!1});this._anchorShape=c,this._scene.addObject(c,2)}_setCursorList(n){n.length!==0&&(this._cursorList=n)}}var q_=Object.defineProperty,Q_=Object.getOwnPropertyDescriptor,td=(r,n,t,e)=>{for(var s=e>1?void 0:e?Q_(n,t):n,i=r.length-1,o;i>=0;i--)(o=r[i])&&(s=(e?o(n,t,s):o(s))||s);return e&&s&&q_(n,t,s),s},ed=(r,n)=>(t,e)=>n(t,e,r);exports.Skeleton=class extends d.Disposable{constructor(t){super();h(this,"_fontLocale");h(this,"_dirty",!0);this._localService=t,this._localeInitial()}get dirty(){return this._dirty}getFontLocale(){return this._fontLocale}makeDirty(t){this._dirty=t}_localeInitial(){}};exports.Skeleton=td([ed(0,e2.Inject(d.LocaleService))],exports.Skeleton);const nd={columnProperties:[],columnSeparatorType:d.ColumnSeparatorType.NONE,sectionType:d.SectionType.SECTION_TYPE_UNSPECIFIED,startIndex:0};var St=(r=>(r.PENDING="pending",r.CALCULATING="calculating",r.READY="ready",r.INVALID="invalid",r))(St||{});class i2 extends exports.Skeleton{constructor(t,e){super(e);h(this,"_skeletonData");h(this,"_renderedBlockIdMap",new Map);h(this,"_findLiquid",new O2);this._docViewModel=t}static create(t,e){return new i2(t,e)}getViewModel(){return this._docViewModel}calculate(t){this.dirty&&(this._skeletonData=this._createSkeleton(t))}getSkeletonData(){return this._skeletonData}getActualSize(){const t=this.getSkeletonData();let e=Number.NEGATIVE_INFINITY,s=0;return t==null||t.pages.forEach(i=>{const{width:o,height:a}=i;e=Math.max(e,o),s+=a}),{actualWidth:e,actualHeight:s}}_getPageActualWidth(t){let e=Number.NEGATIVE_INFINITY;for(const s of t.sections)for(const i of s.columns)for(const o of i.lines){let a=0;for(const c of o.divides)for(const u of c.spanGroup)a+=u.width;e=Math.max(e,a)}return e}getPageSize(){return this.getViewModel().getDataModel().documentStyle.pageSize}findPositionBySpan(t){const e=t.parent,s=e==null?void 0:e.parent,i=s==null?void 0:s.parent,o=i==null?void 0:i.parent,a=o==null?void 0:o.parent,c=this.getSkeletonData();if(!e||!i||!o||!a||!c)return;const u=e.spanGroup.indexOf(t),l=s.divides.indexOf(e),D=i.lines.indexOf(s),f=o.columns.indexOf(i),p=a.sections.indexOf(o),F=c.pages.indexOf(a);return{span:u,divide:l,line:D,column:f,section:p,page:F}}findNodePositionByCharIndex(t,e=!0){const s=this._findNodeIterator(t);if(s==null)return;const i=this.getSkeletonData();if(!i)return;const o=i.pages,{span:a,divide:c,line:u,column:l,section:D,page:f}=s;return{span:c.spanGroup.indexOf(a),divide:u.divides.indexOf(c),line:l.lines.indexOf(u),column:D.columns.indexOf(l),section:f.sections.indexOf(D),page:o.indexOf(f),isBack:e}}findNodeByCharIndex(t){const e=this._findNodeIterator(t);return e==null?void 0:e.span}findSpanByPosition(t){if(t==null)return;const e=this.getSkeletonData();if(e==null)return;const{divide:s,line:i,column:o,section:a,page:c,isBack:u}=t;let{span:l}=t;u===!0&&(l-=1),l=l<0?0:l;const D=e.pages[c].sections[a].columns[o].lines[i].divides[s].spanGroup;return D[l].spanType===u1.LIST?D[l+1]:D[l]}findNodeByCoord(t,e,s,i){const{x:o,y:a}=t;this._findLiquid.reset();const c=this.getSkeletonData();if(c==null)return;const u=c.pages;let l=[],D=[],f=Number.POSITIVE_INFINITY;for(let p=0,F=u.length;p<F;p++){const E=u[p];this._findLiquid.translatePagePadding(E);const m=E.sections;for(const b of m){const{columns:S,height:v}=b;this._findLiquid.translateSection(b);for(const y of S){const{lines:T,width:B}=y;this._findLiquid.translateColumn(y);const O=T.length;for(let w=0;w<O;w++){const P=T[w],{divides:L,type:A,lineHeight:$=0}=P;if(A!==A2.BLOCK){this._findLiquid.translateSave(),this._findLiquid.translateLine(P);const{y:Y}=this._findLiquid,x=Y,R=Y+$,k=Math.abs(a-R),X=L.length;for(let z=0;z<X;z++){const j=L[z],{spanGroup:q,width:W}=j;this._findLiquid.translateSave(),this._findLiquid.translateDivide(j);const{x:V}=this._findLiquid;for(const Q of q){if(!Q.content||Q.content.length===0)continue;const{width:e1,left:n1}=Q,K=V+n1,t1=V+n1+e1,G=Math.abs(o-t1);if(a>=x&&a<=R){if(o>=K&&o<=t1)return{node:Q,ratioX:o/(K+t1),ratioY:a/(x+R)};f!==Number.NEGATIVE_INFINITY&&(l=[],D=[]),l.push({node:Q,ratioX:o/(K+t1),ratioY:a/(x+R)}),D.push(G),f=Number.NEGATIVE_INFINITY;continue}k<f&&(f=k,l=[],D=[]),k===f&&(l.push({node:Q,ratioX:o/(K+t1),ratioY:a/(x+R)}),D.push(G))}this._findLiquid.translateRestore()}this._findLiquid.translateRestore()}}}}this._findLiquid.restorePagePadding(E),this._translatePage(E,e,s,i)}return this._getNearestNode(l,D)}_getNearestNode(t,e){const s=Math.min(...e),i=e.indexOf(s);return t[i]}_getPageBoundingBox(t,e){const{pageWidth:s,pageHeight:i}=t,{x:o,y:a}=this._findLiquid;let c=-1,u=-1;return e===T1.VERTICAL?(c=s,u=a+i):e===T1.HORIZONTAL&&(c=o+s,u=i),{startX:o,startY:a,endX:c,endY:u}}_translatePage(t,e,s,i){this._findLiquid.translatePage(t,e,s,i)}_createSkeleton(t){var G;const e={width:Number.POSITIVE_INFINITY,height:Number.POSITIVE_INFINITY},s=this.getViewModel(),{headerTreeMap:i,footerTreeMap:o}=s,{documentStyle:a,drawings:c,lists:u={}}=s.getDataModel(),l={...d.PRESET_LIST_TYPE,...u},{pageNumberStart:D=1,pageSize:f=e,pageOrient:p=d.PageOrientType.PORTRAIT,defaultHeaderId:F,defaultFooterId:E,evenPageHeaderId:m,evenPageFooterId:b,firstPageHeaderId:S,firstPageFooterId:v,useFirstPageHeaderFooter:y,useEvenPageHeaderFooter:T,marginTop:B=0,marginBottom:O=0,marginRight:w=0,marginLeft:P=0,marginHeader:L=0,marginFooter:A=0,charSpace:$=0,linePitch:Y=15.6,gridType:x=d.GridType.LINES,paragraphLineGapDefault:R=0,defaultTabStop:k=10.5,textStyle:X={},renderConfig:z={horizontalAlign:d.HorizontalAlign.UNSPECIFIED,verticalAlign:d.VerticalAlign.UNSPECIFIED,centerAngle:0,vertexAngle:0,wrapStrategy:d.WrapStrategy.UNSPECIFIED}}=a,j=this._getNullSke(),q={headerTreeMap:i,footerTreeMap:o,lists:l,drawings:c,charSpace:$,linePitch:Y,gridType:x,localeService:this._localService,paragraphLineGapDefault:R,defaultTabStop:k,documentTextStyle:X},{skeHeaders:W,skeFooters:V,skeListLevel:Q,drawingAnchor:e1}=j,n1={skeHeaders:W,skeFooters:V,skeListLevel:Q,drawingAnchor:e1},K=[];j.pages=K;const t1=this.getViewModel();t1.resetCache();for(let U=0,h1=t1.children.length;U<h1;U++){const g1=t1.children[U],p1=t1.getSectionBreak(g1.endIndex)||nd,{pageNumberStart:F1=D,pageSize:c1=f,pageOrient:L1=p,marginTop:V1=B,marginBottom:_1=O,marginRight:R1=w,marginLeft:x1=P,marginHeader:K1=L,marginFooter:y1=A,defaultHeaderId:J1=F,defaultFooterId:$1=E,evenPageHeaderId:N1=m,evenPageFooterId:k1=b,firstPageHeaderId:r6=S,firstPageFooterId:D2=v,useFirstPageHeaderFooter:_2=y,useEvenPageHeaderFooter:o6=T,columnProperties:d2=[],columnSeparatorType:M2=d.ColumnSeparatorType.NONE,contentDirection:f2,sectionType:h7,textDirection:Yt,renderConfig:zt=z}=p1,a6=t1.children[U+1],D7=(G=t1.getSectionBreak(a6==null?void 0:a6.endIndex))==null?void 0:G.sectionType,Wt={defaultHeaderId:J1,evenPageHeaderId:N1,firstPageHeaderId:r6},jt={defaultFooterId:$1,evenPageFooterId:k1,firstPageFooterId:D2};c1.width===null&&(c1.width=Number.POSITIVE_INFINITY),c1.height===null&&(c1.height=Number.POSITIVE_INFINITY);const _7={pageNumberStart:F1,pageSize:c1,pageOrient:L1,marginTop:V1,marginBottom:_1,marginRight:R1,marginLeft:x1,marginHeader:K1,marginFooter:y1,headerIds:Wt,footerIds:jt,useFirstPageHeaderFooter:_2,useEvenPageHeaderFooter:o6,columnProperties:d2,columnSeparatorType:M2,contentDirection:f2,sectionType:h7,sectionTypeNext:D7,textDirection:Yt,renderConfig:zt,...q};let Z1=U1(K),d7=!1;h7===d.SectionType.CONTINUOUS?(j2(K),this._addNewSectionByContinuous(Z1,d2,M2),d7=!0):Z1=s2(_7,n1,Z1==null?void 0:Z1.pageNumber);const Gt=V6(t1,g1,Z1,_7,n1,this._renderedBlockIdMap);D7===d.SectionType.CONTINUOUS&&d2.length>0;const{pages:f7}=Gt;d7&&f7.splice(0,1),K.push(...f7)}return j2(K),this._setPageParent(K,j),j}_setPageParent(t,e){for(const s of t)s.parent=e}_addNewSectionByContinuous(t,e,s){const i=t.sections,o=i[i.length-1],{pageWidth:a,pageHeight:c,marginTop:u,marginBottom:l,marginLeft:D,marginRight:f}=t,p=a-D-f,F=c-u-l,E=((o==null?void 0:o.top)||0)+((o==null?void 0:o.height)||0),m=K6(e,s,E,0,p,F-E);m.parent=t,i.push(m)}_getNullSke(){return{pages:[],left:0,top:0,st:0,skeHeaders:new Map,skeFooters:new Map,skeListLevel:new Map,drawingAnchor:new Map}}_findNodeIterator(t){const e=this.getSkeletonData();if(!e)return;const s=e.pages;for(const i of s){const{sections:o,st:a,ed:c}=i;if(!(t<a||t>c))for(const u of o){const{columns:l,st:D,ed:f}=u;if(!(t<D||t>f))for(const p of l){const{lines:F,st:E,ed:m}=p;if(!(t<E||t>m))for(const b of F){const{divides:S,st:v,ed:y}=b,T=S.length;if(!(t<v||t>y))for(let B=0;B<T;B++){const O=S[B],{spanGroup:w,st:P,ed:L}=O;if(t<P||t>L)continue;let A=t-P;for(const $ of w)if(A-=$.count,A<0)return{page:i,section:u,column:p,line:b,divide:O,span:$}}}}}}}}class n7{constructor(){h(this,"uKey","");h(this,"type");h(this,"Z_INDEX",0);h(this,"parent");h(this,"translateX",0);h(this,"translateY",0);h(this,"extensionOffset",{})}get zIndex(){return this.Z_INDEX}draw(n,t,e,s){}clearCache(){}_getScale(n){return $6(n)}}const R2=d.Registry.create(),s7=d.Registry.create(),i7=d.Registry.create(),l2=d.Registry.create();var y6=(r=>(r[r.SPAN=0]="SPAN",r[r.LINE=1]="LINE",r))(y6||{});class i6 extends n7{constructor(){super(...arguments);h(this,"type",0);h(this,"translateX",0);h(this,"translateY",0)}}const sd="DefaultDocsBackgroundExtension",id=10;let rd=class extends i6{constructor(){super(...arguments);h(this,"uKey",sd);h(this,"Z_INDEX",id);h(this,"_preBackgroundColor","")}draw(t,e,s){var f;const i=(f=s.parent)==null?void 0:f.parent;if(!i)return;const{contentHeight:o=0}=i,{ts:a,width:c}=s;if(!a)return;const{bg:u}=a;if(!u)return;const l=d.getColorStyle(u),{spanStartPoint:D=I.create(0,0)}=this.extensionOffset;l&&(t.fillStyle=l,t.fillRect(D.x-.5,D.y,c+1,o+1))}clearCache(){this._preBackgroundColor=""}};l2.add(new rd);const od="DefaultDocsBorderExtension";let ad=class extends i6{constructor(){super(...arguments);h(this,"uKey",od);h(this,"Z_INDEX",50);h(this,"_preBorderStyle");h(this,"_preBorderColor","")}draw(t,e,s){var F;const i=(F=s.parent)==null?void 0:F.parent;if(!i)return;const{asc:o=0,lineHeight:a=0}=i,{ts:c,left:u,width:l}=s;if(!c)return;const{bd:D}=c;if(!D)return;this._getScale(e);const f=this._createBorderCache(D);t.save(),t.translateWithPrecisionRatio(a1,a1);const{spanStartPoint:p=I.create(0,0)}=this.extensionOffset;for(const E of f.keys()){const m=f.get(E);if(!m)continue;const{s:b,cl:S}=m,v=d.getColorStyle(S)||G1;b!==this._preBorderStyle&&(H6(t,b),t.lineWidth=X6(b),this._preBorderStyle=b),v!==this._preBorderColor&&(t.strokeStyle=v||G1,this._preBorderColor=v),k6(t,E,{startX:p.x,startY:p.y,endX:p.x+l,endY:p.y+a})}t.restore()}clearCache(){this._preBorderStyle=null,this._preBorderColor=""}_createBorderCache(t){const{t:e,b:s,l:i,r:o}=t,a=new Map;return e&&a.set(J.TOP,e),s&&a.set(J.BOTTOM,s),i&&a.set(J.LEFT,i),o&&a.set(J.RIGHT,o),a}};l2.add(new ad);const ud="DefaultDocsFontAndBaseLineExtension",cd=20;class ld extends i6{constructor(){super(...arguments);h(this,"uKey",ud);h(this,"Z_INDEX",cd);h(this,"_preFontString","");h(this,"_preFontColor","")}draw(t,e,s){var F;if(!((F=s.parent)==null?void 0:F.parent))return;const{ts:o,content:a,fontStyle:c,bBox:u}=s,{spanPointWithFont:l=I.create(0,0)}=this.extensionOffset;if(a==null)return;if(!o){this._fillText(t,s,l);return}this._preFontString!==(c==null?void 0:c.fontString)&&(t.font=this._preFontString=(c==null?void 0:c.fontString)||"");const{cl:D,va:f}=o,p=d.getColorStyle(D)||G1;if(p&&this._preFontColor!==p&&(t.fillStyle=p),f===d.BaselineOffset.SUBSCRIPT||f===d.BaselineOffset.SUPERSCRIPT){let E=0;f===d.BaselineOffset.SUPERSCRIPT&&(E=-u.sbo),l.y+=E}this._fillText(t,s,l)}_fillText(t,e,s){const{renderConfig:i,spanStartPoint:o,centerPoint:a}=this.extensionOffset,{content:c,width:u,bBox:l}=e,{aba:D,abd:f}=l;if(c==null||o==null||a==null)return;const{vertexAngle:p,centerAngle:F}=i!=null?i:{},E=90;p===E&&F===E&&!Q2(c)?(t.save(),t.translate(o.x+a.x,o.y+a.y),t.rotate(Math.PI/2),t.translate(-u/2,(D+f)/2-f),t.fillText(c,0,0),t.restore()):t.fillText(c,s.x,s.y)}clearCache(){this._preFontString="",this._preFontColor=""}}l2.add(new ld);const hd="DefaultDocsLineExtension",Dd=40;class _d extends i6{constructor(){super(...arguments);h(this,"uKey",hd);h(this,"Z_INDEX",Dd);h(this,"_preBackgroundColor","")}draw(t,e,s){var b;const i=(b=s.parent)==null?void 0:b.parent;if(!i)return;const{contentHeight:o=0,asc:a}=i,{ts:c,bBox:u}=s;if(!c)return;const{sp:l,ba:D}=u,f=$6(e),p=.5,{ul:F,st:E,ol:m}=c;if(F){const S=o+p6-3;this._drawLine(t,s,F,S,f)}if(E){const S=a-(D-l)-p;this._drawLine(t,s,E,S,f)}if(m){const S=-p6-p;this._drawLine(t,s,m,S,f)}}clearCache(){this._preBackgroundColor=""}_drawLine(t,e,s,i,o){var D;const{s:a,cl:c,t:u,c:l=d.BooleanNumber.TRUE}=s;if(a===d.BooleanNumber.TRUE){const{originTranslate:f=I.create(0,0),alignOffset:p=I.create(0,0),renderConfig:F={}}=this.extensionOffset,{left:E,width:m}=e,{centerAngle:b=0,vertexAngle:S=0}=F,v=v1(b),y=v1(S);t.save(),t.translateWithPrecisionRatio(a1,a1),t.beginPath();const T=(l===d.BooleanNumber.TRUE?d.getColorStyle((D=e.ts)==null?void 0:D.cl):d.getColorStyle(c))||G1;t.strokeStyle=T,this._setLineType(t,u||d.TextDecoration.SINGLE);const B=v2(f.addByPoint(E,i),I.create(0,0),v,y,p),O=v2(f.addByPoint(E+m,i),I.create(0,0),v,y,p);t.moveTo(B.x,B.y),t.lineTo(O.x,O.y),t.stroke(),t.restore()}}_setLineType(t,e){e===d.TextDecoration.DASH_DOT_DOT_HEAVY||e===d.TextDecoration.DOT_DOT_DASH?t.setLineDash([2,2,5,2,2]):e===d.TextDecoration.DASH_DOT_HEAVY||e===d.TextDecoration.DOT_DASH?t.setLineDash([2,5,2]):e===d.TextDecoration.DOTTED||e===d.TextDecoration.DOTTED_HEAVY?t.setLineDash([2]):e===d.TextDecoration.DASH||e===d.TextDecoration.DASHED_HEAVY?t.setLineDash([3]):e===d.TextDecoration.DASH_LONG||e===d.TextDecoration.DASH_LONG_HEAVY?t.setLineDash([6]):t.setLineDash([0])}}l2.add(new _d);class dd extends W6{constructor(t,e){super(t);h(this,"pageMarginLeft",0);h(this,"pageMarginTop",0);h(this,"pageLayoutType",T1.VERTICAL);this._skeleton=e}getSkeleton(){return this._skeleton}setSkeleton(t){this._skeleton=t}render(t,e){if(!this.visible)return this.makeDirty(!1),this;if(!this._skeleton)return;const s=this.transform.getMatrix();t.save(),t.transform(s[0],s[1],s[2],s[3],s[4],s[5]),this._draw(t,e),t.restore()}getParentScale(){if(!this.parent)return{scaleX:1,scaleY:1};let{scaleX:t=1,scaleY:e=1}=this.parent;return this.parent.classType===N.SCENE&&(t=this.parent.ancestorScaleX||1,e=this.parent.ancestorScaleY||1),{scaleX:t,scaleY:e}}scrollBySelection(){}syncSelection(){}remainActiveSelection(){}findNodeByCoord(t,e){}findCoordByNode(t){}_getBounding(t){}_draw(t,e){}}class x2 extends dd{constructor(t,e,s){super(t,e);h(this,"onPageRenderObservable",new d.Observable);h(this,"docsLeft",0);h(this,"docsTop",0);h(this,"_drawLiquid");h(this,"_findLiquid");h(this,"_skeletonObserver");this.setConfig(s),this._drawLiquid=new O2,this._findLiquid=new O2,this._initialDefaultExtension(),this.makeDirty(!0)}static create(t,e,s){return new x2(t,e,s)}setConfig(t){(t==null?void 0:t.pageMarginLeft)!=null?this.pageMarginLeft=t==null?void 0:t.pageMarginLeft:this.pageMarginLeft=17,(t==null?void 0:t.pageMarginTop)!=null?this.pageMarginTop=t==null?void 0:t.pageMarginTop:this.pageMarginTop=14,(t==null?void 0:t.pageLayoutType)!=null?this.pageLayoutType=t==null?void 0:t.pageLayoutType:this.pageLayoutType=T1.VERTICAL}getOffsetConfig(){const{transform:t,pageLayoutType:e,pageMarginLeft:s,pageMarginTop:i,left:o,top:a}=this;return{documentTransform:t,pageLayoutType:e,pageMarginLeft:s,pageMarginTop:i,docsLeft:o,docsTop:a}}getEngine(){return this.getScene().getEngine()}draw(t,e){var D;if(!this.getSkeleton())return;this._drawLiquid.reset();const i=(D=this.getSkeleton())==null?void 0:D.getSkeletonData();if(i==null)return;this._drawLiquid.reset();const{pages:o}=i,a=this.getParentScale(),c=this.getExtensionsByOrder();for(const f of c)f.clearCache();let u=0,l=0;for(let f=0,p=o.length;f<p;f++){const F=o[f],{sections:E,marginTop:m=0,marginBottom:b=0,marginLeft:S=0,marginRight:v=0,width:y,height:T,renderConfig:B={}}=F,{verticalAlign:O=d.VerticalAlign.TOP,horizontalAlign:w=d.HorizontalAlign.LEFT,centerAngle:P=0,vertexAngle:L=0,wrapStrategy:A=d.WrapStrategy.UNSPECIFIED}=B,$=this._horizontalHandler(y,S,v,w),Y=this._verticalHandler(T,m,b,O),x=I.create($,Y),R=v1(P),k=v1(L),X=k-R;this.onPageRenderObservable.notifyObservers({page:F,pageLeft:l,pageTop:u,ctx:t}),this._startRotation(t,X);for(const q of E){const{columns:W}=q;this._drawLiquid.translateSection(q);for(const V of W){const{lines:Q,width:e1}=V;this._drawLiquid.translateColumn(V);const n1=Q.length;let K=x,t1=null;if(k!==0){const{rotateTranslateXList:G,rotatedHeight:U,rotatedWidth:h1,fixOffsetX:g1,fixOffsetY:p1,rotateTranslateY:F1}=Y6(Q,e1,k);let c1=h1;U>this.height&&A!==d.WrapStrategy.WRAP&&(A===d.WrapStrategy.OVERFLOW||k>0)&&(c1=this.height/Math.tan(Math.abs(k)));const L1=this._horizontalHandler(c1,S,v,w);let _1=this._verticalHandler(U,m,b,O)-p1;U>this.height&&(k<0?_1=this.height-(U+p1):_1=-p1),K=I.create(L1+g1,_1),this._drawLiquid.translate(0,-F1),t1=G}else A===d.WrapStrategy.WRAP&&(K.x=S);for(let G=0;G<n1;G++){const U=Q[G],{divides:h1,asc:g1=0,type:p1,lineHeight:F1=0}=U,c1=g1,L1=c1*Math.sin(R),V1=c1*Math.cos(R);if(p1===A2.BLOCK)for(const _1 of c)_1.type===y6.LINE&&(_1.extensionOffset={alignOffset:K,renderConfig:B},_1.draw(t,a,U));else{this._drawLiquid.translateSave(),this._drawLiquid.translateLine(U,!0),t1&&this._drawLiquid.translate(t1[G]);const _1=h1.length;for(let R1=0;R1<_1;R1++){const x1=h1[R1],{spanGroup:K1}=x1;this._drawLiquid.translateSave(),this._drawLiquid.translateDivide(x1);for(const y1 of K1){if(!y1.content||y1.content.length===0)continue;const{width:J1,left:$1,paddingLeft:N1}=y1,{x:k1,y:r6}=this._drawLiquid,D2=I.create(k1,r6),_2=I.create(J1/2,F1/2),o6=v2(D2.addByPoint($1+N1,0),_2,R,k,K),d2=v2(D2.addByPoint($1+L1+N1,V1),_2,R,k,K),M2={originTranslate:D2,spanStartPoint:o6,spanPointWithFont:d2,centerPoint:_2,alignOffset:K,renderConfig:B};for(const f2 of c)f2.type===y6.SPAN&&(f2.extensionOffset=M2,f2.draw(t,a,y1))}this._drawLiquid.translateRestore()}this._drawLiquid.translateRestore()}}}}this._resetRotation(t,X);const{x:z,y:j}=this._drawLiquid.translatePage(F,this.pageLayoutType,this.pageMarginLeft,this.pageMarginTop);l+=z,u+=j}}changeSkeleton(t){return this.setSkeleton(t),this}_draw(t,e){this.draw(t,e)}_horizontalHandler(t,e,s,i){let o=0;return i===d.HorizontalAlign.CENTER?o=(this.width-t)/2:i===d.HorizontalAlign.RIGHT?o=this.width-t-s:o=e,o}_verticalHandler(t,e,s,i){let o=0;return i===d.VerticalAlign.MIDDLE?o=(this.height-t)/2:i===d.VerticalAlign.TOP?o=e:o=this.height-t-s,o}_startRotation(t,e){t.rotate(e||0)}_resetRotation(t,e){t.rotate(-e||0)}_initialDefaultExtension(){l2.getData().forEach(t=>{this.register(t)})}}class fd{}function gd(r){const n=r.getBoundingClientRect(),t=document.body,e=document.documentElement,s=window.pageYOffset||e.scrollTop||t.scrollTop,i=window.pageXOffset||e.scrollLeft||t.scrollLeft,o=e.clientTop||t.clientTop,a=e.clientLeft||t.clientLeft,c=n.top+s-o,u=n.left+i-a;return{top:c,left:u}}var vt=(r=>(r[r.NONE=0]="NONE",r[r.X=1]="X",r[r.Y=2]="Y",r[r.ALL=3]="ALL",r))(vt||{});class r2{constructor(n,t=3,e,s=.4,i=.1){h(this,"_requestNewFrameNumber",-1);h(this,"_viewport");h(this,"_offsetX",0);h(this,"_offsetY",0);h(this,"_moveX",0);h(this,"_moveY",0);h(this,"_scrollX",0);h(this,"_scrollY",0);h(this,"_scrollFunction");this._scene=n,this._scrollTimerType=t,this._padding=e,this._smoothRatioX=s,this._smoothRatioY=i,this._padding||(this._padding={t:0,b:15,l:0,r:60})}static create(n,t=3,e){return new r2(n,t,e)}set scrollTimerType(n){this._scrollTimerType=n}get scrollTimerType(){return this._scrollTimerType}setActiveViewport(n){this._viewport=n}getActiveViewport(){return this._viewport}startScroll(n,t,e){this._offsetX=n,this._offsetY=t,this._moveX=n,this._moveY=t,e!=null?this._viewport=e:this._viewport=this.getViewportByCoord(this._scene),this._runRenderLoop()}_scroll(n){const t=(n==null?void 0:n.top)||0,e=t+((n==null?void 0:n.height)||0),s=(n==null?void 0:n.left)||0,i=s+((n==null?void 0:n.width)||0),{t:o=0,b:a=0,r:c=0,l:u=0}=this._padding;let l=0,D=0,f=!1;if(this._scrollTimerType&1&&(this._moveX<s+u&&(l=(this._moveX-s-u)*this._smoothRatioX,f=!0),this._moveX>i-c&&(l=(this._moveX-i+c)*this._smoothRatioX,f=!0)),this._scrollTimerType&2&&(this._moveY<t+o&&(D=(this._moveY-t-o)*this._smoothRatioY,f=!0),this._moveY>e-a&&(D=(this._moveY-e+a)*this._smoothRatioY,f=!0)),!f)return;const p=n==null?void 0:n.scrollBy({x:l,y:D}),F=n==null?void 0:n.getActualScroll(l,D);if(this._scrollX=(F==null?void 0:F.x)||0,this._scrollY=(F==null?void 0:F.y)||0,p){const E=this._findAncestorScene(n==null?void 0:n.scene),m=this.getViewportByCoord(E);m&&this._scroll(m)}}scrolling(n,t,e){this._moveX=n,this._moveY=t,this._scrollFunction=e}stopScroll(){J7(this._requestNewFrameNumber)}dispose(){this.stopScroll(),delete this._scrollFunction}getViewportByCoord(n){return n==null?void 0:n.getActiveViewportByRelativeCoord(I.FromArray([this._offsetX,this._offsetY]))}getScene(){return this._scene}_runRenderLoop(){this._scroll(this._viewport),this._scrollFunction&&this._scrollFunction(this._scrollX,this._scrollY),this._requestNewFrameNumber=b2(this._runRenderLoop.bind(this))}_findAncestorScene(n){let t=n==null?void 0:n.getParent();for(;t;){if(t.classType===N.SCENE)return t;t=(t==null?void 0:t.getParent)&&(t==null?void 0:t.getParent())}}}var pd=Object.defineProperty,md=Object.getOwnPropertyDescriptor,Fd=(r,n,t,e)=>{for(var s=e>1?void 0:e?md(n,t):n,i=r.length-1,o;i>=0;i--)(o=r[i])&&(s=(e?o(n,t,s):o(s))||s);return e&&s&&pd(n,t,s),s},Cd=(r,n)=>(t,e)=>n(t,e,r);function Tt(r){const n=r==null?void 0:r.getCanvasElement();if(!n)return{left:0,top:0};const{top:t,left:e}=gd(n);return{left:e,top:t}}function N7(r){var c;const n=(c=r.parent)==null?void 0:c.parent,t=n==null?void 0:n.parent;if(n==null||t==null)return;const{paragraphIndex:e}=n,s=t.lines.filter(u=>u.paragraphIndex===e);let i=-1,o="",a=!1;for(const u of s)for(const l of u.divides)for(const D of l.spanGroup)a||(i+=D.count),D===r&&(a=!0),o+=D.count>0?D.content:"";return{st:s[0].st,ed:e,content:o,nodeIndex:i}}exports.TextSelectionRenderManager=class extends d.RxDisposable{constructor(t){super();h(this,"_onInputBefore$",new s1.BehaviorSubject(null));h(this,"onInputBefore$",this._onInputBefore$.asObservable());h(this,"_onKeydown$",new s1.BehaviorSubject(null));h(this,"onKeydown$",this._onKeydown$.asObservable());h(this,"_onInput$",new s1.BehaviorSubject(null));h(this,"onInput$",this._onInput$.asObservable());h(this,"_onCompositionstart$",new s1.BehaviorSubject(null));h(this,"onCompositionstart$",this._onCompositionstart$.asObservable());h(this,"_onCompositionupdate$",new s1.BehaviorSubject(null));h(this,"onCompositionupdate$",this._onCompositionupdate$.asObservable());h(this,"_onCompositionend$",new s1.BehaviorSubject(null));h(this,"onCompositionend$",this._onCompositionend$.asObservable());h(this,"_onSelectionStart$",new s1.BehaviorSubject(null));h(this,"onSelectionStart$",this._onSelectionStart$.asObservable());h(this,"_onPaste$",new s1.Subject);h(this,"onPaste$",this._onPaste$.asObservable());h(this,"_textSelectionInner$",new s1.BehaviorSubject(null));h(this,"textSelectionInner$",this._textSelectionInner$.asObservable());h(this,"_onFocus$",new s1.Subject);h(this,"onFocus$",this._onFocus$.asObservable());h(this,"_onBlur$",new s1.Subject);h(this,"onBlur$",this._onBlur$.asObservable());h(this,"_container");h(this,"_inputParent");h(this,"_input");h(this,"_cursor");h(this,"_moveObserver");h(this,"_upObserver");h(this,"_viewportScrollX",0);h(this,"_viewportScrollY",0);h(this,"_rangeList",[]);h(this,"_currentSegmentId","");h(this,"_selectionStyle",T2);h(this,"_isSelectionEnabled",!0);h(this,"_viewPortObserverMap",new Map);h(this,"_isIMEInputApply",!1);h(this,"_activeViewport");h(this,"_docSkeleton");h(this,"_scene");h(this,"_document");this._logService=t,this._initDOM()}__getEditorContainer(){return this._container}getViewPort(){return this._activeViewport}setSegment(t){this._currentSegmentId=t}setStyle(t=T2){this._selectionStyle=t}resetStyle(){this.setStyle()}enableSelection(){this._isSelectionEnabled=!0}disableSelection(){this._isSelectionEnabled=!1}addTextRanges(t,e=!0){const{_scene:s,_docSkeleton:i}=this;for(const o of t){const a=bt(s,o,i,this._document);this._add(a)}this._textSelectionInner$.next({textRanges:this._getAllTextRanges(),segmentId:this._currentSegmentId,style:this._selectionStyle,isEditing:e}),this._updateDomCursorPositionAndSize(),this._scrollToSelection()}sync(){this._updateDomCursorPositionAndSize()}activate(t,e){this._container.style.left=`${t}px`,this._container.style.top=`${e}px`,this._container.style.zIndex="1000",this._cursor.style.animation="univer_cursor_blinkStyle 1s steps(1) infinite",this._cursor.style.display="revert",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",this._cursor.style.animation="",this._cursor.style.display="none"}changeRuntime(t,e,s){t!==this._docSkeleton&&this.removeAllTextRanges(),this._docSkeleton=t,this._scene=e,this._activeViewport=e.getViewports()[0],this._document=s,this._attachScrollEvent(this._activeViewport)}handleDblClick(t){if(!this._scene||!this._isSelectionEnabled)return;const{offsetX:e,offsetY:s}=t,i=this._findNodeByCoord(e,s);if(i==null||i.node==null)return;const o=N7(i.node);if(o==null)return;const{content:a,st:c,nodeIndex:u}=o;if(u===-1||Intl.Segmenter==null)return;const D=new Intl.Segmenter(void 0,{granularity:"word"}).segment(a);let f=Number.NEGATIVE_INFINITY,p=Number.NEGATIVE_INFINITY;for(const{segment:F,index:E,isWordLike:m}of D)if(E<=u&&u<E+F.length&&m){f=E+c,p=E+c+F.length;break}if(Number.isFinite(f)&&Number.isFinite(p)){this.removeAllTextRanges();const F=[{startOffset:f,endOffset:p}];this.addTextRanges(F,!1)}}handleTripleClick(t){if(!this._scene||!this._isSelectionEnabled)return;const{offsetX:e,offsetY:s}=t,i=this._findNodeByCoord(e,s);if(i==null||i.node==null)return;const o=N7(i.node);if(o==null)return;this.removeAllTextRanges();const{st:a,ed:c}=o,u=[{startOffset:a,endOffset:c,collapsed:a===c}];this.addTextRanges(u,!1)}eventTrigger(t){var p;if(!this._scene||!this._isSelectionEnabled)return;const e=this._scene,{offsetX:s,offsetY:i}=t,o=this._findNodeByCoord(s,i),a=this._getNodePosition(o);if(a==null){this._removeAllTextRanges();return}if((o==null?void 0:o.node.streamType)===d.DataStreamTreeTokenType.PARAGRAPH&&(a.isBack=!0),t.shiftKey&&this._getActiveRangeInstance())this._updateActiveRangeFocusPosition(a);else if(t.ctrlKey||this._isEmpty()){const F=new V2(e,this._document,this._docSkeleton,a);this._addTextRange(F)}else this._updateTextRangeAnchorPosition(a);this._activeSelectionRefresh(),e.disableEvent();const c=r2.create(e);c.startScroll(s,i);const{scrollX:u,scrollY:l}=t2(c);this._viewportScrollX=u,this._viewportScrollY=l,this._onSelectionStart$.next((p=this._getActiveRangeInstance())==null?void 0:p.startNodePosition);let D=s,f=i;this._moveObserver=e.onPointerMoveObserver.add(F=>{const{offsetX:E,offsetY:m}=F;e.setCursor(r1.TEXT),!(Math.sqrt((E-D)**2+(m-f)**2)<3)&&(this._moving(E,m),c.scrolling(E,m,()=>{this._moving(E,m)}),D=E,f=m)}),this._upObserver=e.onPointerUpObserver.add(()=>{e.onPointerMoveObserver.remove(this._moveObserver),e.onPointerUpObserver.remove(this._upObserver),e.enableEvent(),this._textSelectionInner$.next({textRanges:this._getAllTextRanges(),segmentId:this._currentSegmentId,style:this._selectionStyle,isEditing:!1}),c.dispose(),this._updateDomCursorPositionAndSize()})}removeAllTextRanges(){this._removeAllTextRanges(),this.deactivate()}_getAllTextRanges(){return this._rangeList}_getActiveRange(){const t=this._rangeList.find(u=>u.isActive());if(t==null)return null;const{startOffset:e,endOffset:s,collapsed:i,startNodePosition:o,endNodePosition:a,direction:c}=t;return e==null||s==null?null:{startOffset:e,endOffset:s,collapsed:i,startNodePosition:o,endNodePosition:a,direction:c,segmentId:this._currentSegmentId,style:this._selectionStyle}}_add(t){t!=null&&(this._addTextRange(t),t.refresh())}_getActiveRangeInstance(){return this._rangeList.find(t=>t.isActive())}dispose(){super.dispose(),this._detachEvent(),this._container.remove()}_initDOM(){const t=document.createElement("div");t.style.position="fixed",t.style.left="0px",t.style.top="0px";const e=document.createElement("div"),s=document.createElement("div"),i=document.createElement("div");e.appendChild(s),t.appendChild(e),t.appendChild(i),this._container=t,this._inputParent=e,this._input=s,this._cursor=i,this._initInput(),this._initDOMCursor(),this._initInputEvents(),document.body.appendChild(t)}_initInput(){this._inputParent.style.cssText=`
1
+ "use strict";var Vt=Object.defineProperty;var Kt=(r,n,t)=>n in r?Vt(r,n,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[n]=t;var h=(r,n,t)=>(Kt(r,typeof n!="symbol"?n+"":n,t),t);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const d=require("@univerjs/core"),e2=require("@wendellhu/redi"),s1=require("rxjs");var I6=(r=>(r.RECT="rect",r.CIRCLE="circle",r.PATH="path",r))(I6||{}),E1=(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))(E1||{}),W7=(r=>(r[r.XY=0]="XY",r[r.X=1]="X",r[r.Y=2]="Y",r))(W7||{});const R6=1,Z2='"Helvetica Neue", Helvetica, Arial, "PingFang SC", "Hiragino Sans GB", "Heiti SC", "Microsoft YaHei", "WenQuanYi Micro Hei", sans-serif',j7={lines:[],drawings:new Map,height:0,st:0,ed:0,marginLeft:0},Jt={...j7,marginTop:20},Zt={...j7,marginBottom:20},G7="0",m6=1,U7=14;var r1=(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))(r1||{}),V7=(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))(V7||{});const G1="rgb(0,0,0)";var J=(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))(J||{}),E2=(r=>(r[r.UP=0]="UP",r[r.DOWN=1]="DOWN",r))(E2||{}),N=(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))(N||{});const qt=1e3,K7=2e3,a1=.5;var i1=(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))(i1||{});class Qt{isEmpty(){return this._isEmpty()}toString(n){if(this.isEmpty())throw new Error("Output is empty.");return this._toString(n)}toRegExp(n){return new RegExp(this.toString(n),n)}}class S1 extends Qt{constructor(...n){super(),this.data=[];for(const t of n)t instanceof S1?this.data.push(...t.data):this.data.push(ee(t));this._unique()}union(...n){return new S1(this,...n)}subtract(...n){const t=this.data.slice(),e=[];let s=0;const{data:i}=new S1(...n);for(;t.length!==0;){const o=t.shift(),[a,c]=o;let u;do{u=!0;const l=i[s];if(l===void 0){e.push(o);break}const[D,f]=l;f<a?(u=!1,s++):c<D?e.push(o):D<=a&&f<c?(s++,t.unshift([f+1,c])):a<D&&f<c?(s++,e.push([a,D-1]),t.unshift([f+1,c])):a<D&&c<=f&&e.push([a,D-1])}while(!u)}return new S1(...e)}intersect(...n){return this.subtract(this.subtract(...n))}_isEmpty(){return this.data.length===0}_toString(n){return se(this.data,n)}_unique(){this.data.sort(ne);const n=[];let t=null;for(const e of this.data)t===null||t[1]+1<e[0]?(n.push(e),t=e):(n.splice(-1,1,[Math.min(e[0],t[0]),Math.max(e[1],t[1])]),t=n[n.length-1]);this.data=n}}const x6=(...r)=>new S1(...r);function te(r){if(r.length!==1){const n=`${r.length} (${JSON.stringify(r)})`;throw new Error(`Expected length = 1, but received ${n}.`)}return r.charCodeAt(0)}function ee(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[n]=[r].map(t=>typeof t!="object"?[t,t]:t).map(t=>t.map(e=>typeof e=="string"?te(e):e));return n}function ne(r,n){return r[0]-n[0]}function se(r,n=""){if(n.includes("u"))return m7(r,!0);const{normal:t,surrogate:e}=re(r),s=[];return t.length!==0&&s.push(m7(t,!1)),s.push(...ie(e)),s.join("|")}function m7(r,n){return`[${r.map(([e,s])=>e===s?p2(e,n):`${p2(e,n)}-${p2(s,n)}`).join("")}]`}function ie(r){const n=[];if(r.entire.data.length!==0){const t=r.entire.toString(),e=`[${[56320,57343].map(s=>p2(s,!1)).join("-")}]`;n.push(`${t}${e}`)}for(const{h:t,l:e}of r.partial){const s=p2(t,!1),i=e.toString();n.push(`${s}${i}`)}return n}function re(r){const n=[],t=[];for(let e=0;e<r.length;e++){const s=r[e],[i,o]=s;if(i>=65536){t.push(...r.slice(e));break}if(o>=65536){n.push([i,65535]),t.push([65536,o],...r.slice(e+1));break}n.push(s)}return{normal:n,surrogate:oe(t)}}function oe(r){const n=[],t=[];for(const[i,o]of r){const a=F7(i),c=F7(o);if(a.h===c.h){s(a.h,a.l,c.l);continue}a.l===56320?e(a.h):s(a.h,a.l,57343);for(let u=a.h+1;u<c.h;u++)e(u);c.l===57343?e(c.h):s(c.h,56320,c.l)}return{entire:new S1(...n),partial:t.map(({h:i,l:o})=>({h:i,l:new S1(...o)}))};function e(i){n.push(i)}function s(i,o,a){const c=t[t.length-1];c!==void 0&&c.h===i?c.l.push([o,a]):t.push({h:i,l:[[o,a]]})}}function F7(r){return{h:Math.floor((r-65536)/1024)+55296,l:(r-65536)%1024+56320}}function p2(r,n){const t=r.toString(16);return n?`\\u{${t}}`:`\\u${"0".repeat(4-t.length)}${t}`}const ae=[[0,127]],ue=[[48,57],[65,70],[97,102]],ce=[[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]],le=[[0,1114111]],he=[[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]],De=[1564,[8206,8207],[8234,8238],[8294,8297]],_e=[[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],de=[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]],fe=[[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]],ge=[[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]],pe=[[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]],me=[[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]],Fe=[[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]],Ce=[[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]],Ee=[[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]],be=[[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]],Se=[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],ve=[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]],Te=[329,1651,3959,3961,[6051,6052],[8298,8303],[9001,9002],917505],ye=[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]],Be=[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]],Oe=[35,42,[48,57],8205,8419,65039,[127462,127487],[127995,127999],[129456,129459],[917536,917631]],we=[[127995,127999]],Ae=[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]],Ie=[[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]],Re=[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]],xe=[[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]],Me=[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]],Pe=[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]],Le=[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]],$e=[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]],Ne=[[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]],ke=[[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]],He=[[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]],Xe=[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]],Ye=[[48,57],[65,70],[97,102],[65296,65305],[65313,65318],[65345,65350]],ze=[45,173,1418,6150,[8208,8209],11799,12539,65123,65293,65381],We=[[12272,12273],[12276,12283]],je=[[12274,12275]],Ge=[[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]],Ue=[[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]],Ve=[[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]],Ke=[[8204,8205]],Je=[[3648,3652],[3776,3780],[6581,6583],6586,[43701,43702],43705,[43707,43708]],Ze=[[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]],qe=[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]],Qe=[[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]],t0=[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]],e0=[847,[4447,4448],[6068,6069],8293,12644,65440,[65520,65528],917504,[917506,917535],[917632,917759],[918e3,921599]],n0=[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]],s0=[183,903,[4969,4977],6618],i0=[[6277,6278],8472,8494,[12443,12444]],r0=[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]],o0=[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]],a0=[[8544,8559],[9398,9423],[127280,127305],[127312,127337],[127344,127369]],u0=[[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]],c0=[[9,13],32,133,[8206,8207],[8232,8233]],l0=[[1536,1541],1757,1807,[2192,2193],2274,69821,69837],h0=[34,39,171,187,[8216,8223],[8249,8250],11842,[12300,12303],[12317,12319],[65089,65092],65282,65287,[65378,65379]],D0=[[11904,11929],[11931,12019],[12032,12245]],_0=[[127462,127487]],d0=[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],f0=[[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],g0=[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]],p0=[[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]],m0=[[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]],F0=[[6155,6157],6159,[65024,65039],[917760,917999]],C0=[[9,13],32,133,160,5760,[8192,8202],[8232,8233],8239,8287,12288],E0=[[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]],b0=[[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]],S0=Object.freeze(Object.defineProperty({__proto__:null,ASCII:ae,ASCII_Hex_Digit:ue,Alphabetic:ce,Any:le,Assigned:he,Bidi_Control:De,Bidi_Mirrored:_e,Case_Ignorable:de,Cased:fe,Changes_When_Casefolded:ge,Changes_When_Casemapped:pe,Changes_When_Lowercased:me,Changes_When_NFKC_Casefolded:Fe,Changes_When_Titlecased:Ce,Changes_When_Uppercased:Ee,Composition_Exclusion:be,Dash:Se,Default_Ignorable_Code_Point:ve,Deprecated:Te,Diacritic:ye,Emoji:Be,Emoji_Component:Oe,Emoji_Modifier:we,Emoji_Modifier_Base:Ae,Emoji_Presentation:Ie,Expands_On_NFC:Re,Expands_On_NFD:xe,Expands_On_NFKC:Me,Expands_On_NFKD:Pe,Extended_Pictographic:Le,Extender:$e,Full_Composition_Exclusion:Ne,Grapheme_Base:ke,Grapheme_Extend:He,Grapheme_Link:Xe,Hex_Digit:Ye,Hyphen:ze,IDS_Binary_Operator:We,IDS_Trinary_Operator:je,ID_Continue:Ge,ID_Start:Ue,Ideographic:Ve,Join_Control:Ke,Logical_Order_Exception:Je,Lowercase:Ze,Math:qe,Noncharacter_Code_Point:Qe,Other_Alphabetic:t0,Other_Default_Ignorable_Code_Point:e0,Other_Grapheme_Extend:n0,Other_ID_Continue:s0,Other_ID_Start:i0,Other_Lowercase:r0,Other_Math:o0,Other_Uppercase:a0,Pattern_Syntax:u0,Pattern_White_Space:c0,Prepended_Concatenation_Mark:l0,Quotation_Mark:h0,Radical:D0,Regional_Indicator:_0,Sentence_Terminal:d0,Soft_Dotted:f0,Terminal_Punctuation:g0,Unified_Ideograph:p0,Uppercase:m0,Variation_Selector:F0,White_Space:C0,XID_Continue:E0,XID_Start:b0},Symbol.toStringTag,{value:"Module"})),v0=[[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]],T0=[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],y0=[95,[8255,8256],8276,[65075,65076],[65101,65103],65343],B0=[[0,31],[127,159]],O0=[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],w0=[45,1418,1470,5120,6150,[8208,8213],11799,11802,[11834,11835],11840,11869,12316,12336,12448,[65073,65074],65112,65123,65293,69293],A0=[[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]],I0=[[1160,1161],6846,[8413,8416],[8418,8420],[42608,42610]],R0=[187,8217,8221,8250,11779,11781,11786,11789,11805,11809],x0=[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]],M0=[171,8216,[8219,8220],8223,8249,11778,11780,11785,11788,11804,11808],P0=[[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]],L0=[[5870,5872],[8544,8578],[8581,8584],12295,[12321,12329],[12344,12346],[42726,42735],[65856,65908],66369,66378,[66513,66517],[74752,74862]],$0=[8232],N0=[[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]],k0=[[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]],H0=[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]],X0=[[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],Y0=[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]],z0=[[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]],W0=[[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]],j0=[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],G0=[[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]],U0=[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]],V0=[[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]],K0=[[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]],J0=[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]],Z0=[8233],q0=[[57344,63743],[983040,1048573],[1048576,1114109]],Q0=[[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]],t3=[32,160,5760,[8192,8202],[8232,8233],8239,8287,12288],e3=[32,160,5760,[8192,8202],8239,8287,12288],n3=[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]],s3=[[55296,57343]],i3=[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]],r3=[453,456,459,498,[8072,8079],[8088,8095],[8104,8111],8124,8140,8188],o3=[[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]],a3=[[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]],u3=Object.freeze(Object.defineProperty({__proto__:null,Cased_Letter:v0,Close_Punctuation:T0,Connector_Punctuation:y0,Control:B0,Currency_Symbol:O0,Dash_Punctuation:w0,Decimal_Number:A0,Enclosing_Mark:I0,Final_Punctuation:R0,Format:x0,Initial_Punctuation:M0,Letter:P0,Letter_Number:L0,Line_Separator:$0,Lowercase_Letter:N0,Mark:k0,Math_Symbol:H0,Modifier_Letter:X0,Modifier_Symbol:Y0,Nonspacing_Mark:z0,Number:W0,Open_Punctuation:j0,Other:G0,Other_Letter:U0,Other_Number:V0,Other_Punctuation:K0,Other_Symbol:J0,Paragraph_Separator:Z0,Private_Use:q0,Punctuation:Q0,Separator:t3,Space_Separator:e3,Spacing_Mark:n3,Surrogate:s3,Symbol:i3,Titlecase_Letter:r3,Unassigned:o3,Uppercase_Letter:a3},Symbol.toStringTag,{value:"Module"})),c3=[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]],l3=[[1536,1541],[1632,1641],[1643,1644],1757,[2192,2193],2274,[68912,68921],[69216,69246]],h3=[[0,8],[14,27],[127,132],[134,159],173,6158,[8203,8205],[8288,8292],[8298,8303],65279,[113824,113827],[119155,119162],917505,[917536,917631]],D3=[44,[46,47],58,160,1548,8239,8260,65104,65106,65109,65292,[65294,65295],65306],_3=[[48,57],[178,179],185,[1776,1785],8304,[8308,8313],[8320,8329],[9352,9371],[65296,65305],[66273,66299],[120782,120831],[127232,127242],[130032,130041]],d3=[43,45,[8314,8315],[8330,8331],8722,64297,[65122,65123],65291,65293],f3=[[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],g3=[8296],p3=[[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]],m3=[8234],F3=[8294],C3=[8237],E3=[[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]],b3=[[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]],S3=[10,13,[28,30],133,8233],v3=[8236],T3=[8297],y3=[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]],B3=[8235],O3=[8295],w3=[8238],A3=[9,11,31],I3=[12,32,5760,[8192,8202],8232,8287,12288],R3=Object.freeze(Object.defineProperty({__proto__:null,Arabic_Letter:c3,Arabic_Number:l3,Boundary_Neutral:h3,Common_Separator:D3,European_Number:_3,European_Separator:d3,European_Terminator:f3,First_Strong_Isolate:g3,Left_To_Right:p3,Left_To_Right_Embedding:m3,Left_To_Right_Isolate:F3,Left_To_Right_Override:C3,Nonspacing_Mark:E3,Other_Neutral:b3,Paragraph_Separator:S3,Pop_Directional_Format:v3,Pop_Directional_Isolate:T3,Right_To_Left:y3,Right_To_Left_Embedding:B3,Right_To_Left_Isolate:O3,Right_To_Left_Override:w3,Segment_Separator:A3,White_Space:I3},Symbol.toStringTag,{value:"Module"})),x3=[[125184,125259],[125264,125273],[125278,125279]],M3=[[71424,71450],[71453,71467],[71472,71494]],P3=[[82944,83526]],L3=[[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]],$3=[[1329,1366],[1369,1418],[1421,1423],[64275,64279]],N3=[[68352,68405],[68409,68415]],k3=[[6912,6988],[6992,7038]],H3=[[42656,42743],[92160,92728]],X3=[[92880,92909],[92912,92917]],Y3=[[7104,7155],[7164,7167]],z3=[[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]],W3=[[72704,72712],[72714,72758],[72760,72773],[72784,72812]],j3=[[746,747],[12549,12591],[12704,12735]],G3=[[69632,69709],[69714,69749],69759],U3=[[10240,10495]],V3=[[6656,6683],[6686,6687]],K3=[[5952,5971]],J3=[[5120,5759],[6320,6389],[72368,72383]],Z3=[[66208,66256]],q3=[[66864,66915],66927],Q3=[[69888,69940],[69942,69959]],t8=[[43520,43574],[43584,43597],[43600,43609],[43612,43615]],e8=[[5024,5109],[5112,5117],[43888,43967]],n8=[[69552,69579]],s8=[[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]],i8=[[994,1007],[11392,11507],[11513,11519]],r8=[[73728,74649],[74752,74862],[74864,74868],[74880,75075]],o8=[[67584,67589],67592,[67594,67637],[67639,67640],67644,67647],a8=[[77712,77810]],u8=[[1024,1156],[1159,1327],[7296,7304],7467,7544,[11744,11775],[42560,42655],[65070,65071],[122928,122989],123023],c8=[[66560,66639]],l8=[[2304,2384],[2389,2403],[2406,2431],[43232,43263],[72448,72457]],h8=[[71936,71942],71945,[71948,71955],[71957,71958],[71960,71989],[71991,71992],[71995,72006],[72016,72025]],D8=[[71680,71739]],_8=[[113664,113770],[113776,113788],[113792,113800],[113808,113817],[113820,113823]],d8=[[77824,78933]],f8=[[66816,66855]],g8=[[69600,69622]],p8=[[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]],m8=[[4256,4293],4295,4301,[4304,4346],[4348,4351],[7312,7354],[7357,7359],[11520,11557],11559,11565],F8=[[11264,11359],[122880,122886],[122888,122904],[122907,122913],[122915,122916],[122918,122922]],C8=[[66352,66378]],E8=[[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]],b8=[[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]],S8=[[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]],v8=[[73056,73061],[73063,73064],[73066,73102],[73104,73105],[73107,73112],[73120,73129]],T8=[[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]],y8=[[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]],B8=[[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]],O8=[[68864,68903],[68912,68921]],w8=[[5920,5940]],A8=[[67808,67826],[67828,67829],[67835,67839]],I8=[[1425,1479],[1488,1514],[1519,1524],[64285,64310],[64312,64316],64318,[64320,64321],[64323,64324],[64326,64335]],R8=[[12353,12438],[12445,12447],[110593,110879],110898,[110928,110930],127488],x8=[[67648,67669],[67671,67679]],M8=[[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]],P8=[[68448,68466],[68472,68479]],L8=[[68416,68437],[68440,68447]],$8=[[43392,43469],[43472,43481],[43486,43487]],N8=[[69760,69826],69837],k8=[[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]],H8=[[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]],X8=[[73472,73488],[73490,73530],[73534,73561]],Y8=[[43264,43309],43311],z8=[[68096,68099],[68101,68102],[68108,68115],[68117,68119],[68121,68149],[68152,68154],[68159,68168],[68176,68184]],W8=[94180,[101120,101589]],j8=[[6016,6109],[6112,6121],[6128,6137],[6624,6655]],G8=[[70144,70161],[70163,70209]],U8=[[70320,70378],[70384,70393]],V8=[[3713,3714],3716,[3718,3722],[3724,3747],3749,[3751,3773],[3776,3780],3782,[3784,3790],[3792,3801],[3804,3807]],K8=[[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]],J8=[[7168,7223],[7227,7241],[7245,7247]],Z8=[[6400,6430],[6432,6443],[6448,6459],6464,[6468,6479]],q8=[[67072,67382],[67392,67413],[67424,67431]],Q8=[[65536,65547],[65549,65574],[65576,65594],[65596,65597],[65599,65613],[65616,65629],[65664,65786]],t9=[[42192,42239],73648],e9=[[66176,66204]],n9=[[67872,67897],67903],s9=[[69968,70006]],i9=[[73440,73464]],r9=[[3328,3340],[3342,3344],[3346,3396],[3398,3400],[3402,3407],[3412,3427],[3430,3455]],o9=[[2112,2139],2142],a9=[[68288,68326],[68331,68342]],u9=[[72816,72847],[72850,72871],[72873,72886]],c9=[[72960,72966],[72968,72969],[72971,73014],73018,[73020,73021],[73023,73031],[73040,73049]],l9=[[93760,93850]],h9=[[43744,43766],[43968,44013],[44016,44025]],D9=[[124928,125124],[125127,125142]],_9=[[68e3,68023],[68028,68047],[68050,68095]],d9=[[67968,67999]],f9=[[93952,94026],[94031,94087],[94095,94111]],g9=[[71168,71236],[71248,71257]],p9=[[6144,6145],6148,[6150,6169],[6176,6264],[6272,6314],[71264,71276]],m9=[[92736,92766],[92768,92777],[92782,92783]],F9=[[70272,70278],70280,[70282,70285],[70287,70301],[70303,70313]],C9=[[4096,4255],[43488,43518],[43616,43647]],E9=[[67712,67742],[67751,67759]],b9=[[124112,124153]],S9=[[72096,72103],[72106,72151],[72154,72164]],v9=[[6528,6571],[6576,6601],[6608,6618],[6622,6623]],T9=[[70656,70747],[70749,70753]],y9=[[1984,2042],[2045,2047]],B9=[94177,[110960,111355]],O9=[[123136,123180],[123184,123197],[123200,123209],[123214,123215]],w9=[[5760,5788]],A9=[[7248,7295]],I9=[[68736,68786],[68800,68850],[68858,68863]],R9=[[66304,66339],[66349,66351]],x9=[[68224,68255]],M9=[[66384,66426]],P9=[[66464,66499],[66504,66517]],L9=[[69376,69415]],$9=[[68192,68223]],N9=[[68608,68680]],k9=[[69488,69513]],H9=[[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]],X9=[[66736,66771],[66776,66811]],Y9=[[66688,66717],[66720,66729]],z9=[[92928,92997],[93008,93017],[93019,93025],[93027,93047],[93053,93071]],W9=[[67680,67711]],j9=[[72384,72440]],G9=[[43072,43127]],U9=[[67840,67867],67871],V9=[[68480,68497],[68505,68508],[68521,68527]],K9=[[43312,43347],43359],J9=[[5792,5866],[5870,5880]],Z9=[[2048,2093],[2096,2110]],q9=[[43136,43205],[43214,43225]],Q9=[[70016,70111]],t5=[[66640,66687]],e5=[[71040,71093],[71096,71133]],n5=[[120832,121483],[121499,121503],[121505,121519]],s5=[[3457,3459],[3461,3478],[3482,3505],[3507,3515],3517,[3520,3526],3530,[3535,3540],3542,[3544,3551],[3558,3567],[3570,3572],[70113,70132]],i5=[[69424,69465]],r5=[[69840,69864],[69872,69881]],o5=[[72272,72354]],a5=[[7040,7103],[7360,7367]],u5=[[43008,43052]],c5=[[1792,1805],[1807,1866],[1869,1871],[2144,2154]],l5=[[5888,5909],5919],h5=[[5984,5996],[5998,6e3],[6002,6003]],D5=[[6480,6509],[6512,6516]],_5=[[6688,6750],[6752,6780],[6783,6793],[6800,6809],[6816,6829]],d5=[[43648,43714],[43739,43743]],f5=[[71296,71353],[71360,71369]],g5=[[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],p5=[[92784,92862],[92864,92873]],m5=[94176,[94208,100343],[100352,101119],[101632,101640]],F5=[[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]],C5=[[1920,1969]],E5=[[3585,3642],[3648,3675]],b5=[[3840,3911],[3913,3948],[3953,3991],[3993,4028],[4030,4044],[4046,4052],[4057,4058]],S5=[[11568,11623],[11631,11632],11647],v5=[[70784,70855],[70864,70873]],T5=[[123536,123566]],y5=[[66432,66461],66463],B5=[[42240,42539]],O5=[[66928,66938],[66940,66954],[66956,66962],[66964,66965],[66967,66977],[66979,66993],[66995,67001],[67003,67004]],w5=[[123584,123641],123647],A5=[[71840,71922],71935],I5=[[69248,69289],[69291,69293],[69296,69297]],R5=[[40960,42124],[42128,42182]],x5=[[72192,72263]],M5=Object.freeze(Object.defineProperty({__proto__:null,Adlam:x3,Ahom:M3,Anatolian_Hieroglyphs:P3,Arabic:L3,Armenian:$3,Avestan:N3,Balinese:k3,Bamum:H3,Bassa_Vah:X3,Batak:Y3,Bengali:z3,Bhaiksuki:W3,Bopomofo:j3,Brahmi:G3,Braille:U3,Buginese:V3,Buhid:K3,Canadian_Aboriginal:J3,Carian:Z3,Caucasian_Albanian:q3,Chakma:Q3,Cham:t8,Cherokee:e8,Chorasmian:n8,Common:s8,Coptic:i8,Cuneiform:r8,Cypriot:o8,Cypro_Minoan:a8,Cyrillic:u8,Deseret:c8,Devanagari:l8,Dives_Akuru:h8,Dogra:D8,Duployan:_8,Egyptian_Hieroglyphs:d8,Elbasan:f8,Elymaic:g8,Ethiopic:p8,Georgian:m8,Glagolitic:F8,Gothic:C8,Grantha:E8,Greek:b8,Gujarati:S8,Gunjala_Gondi:v8,Gurmukhi:T8,Han:y8,Hangul:B8,Hanifi_Rohingya:O8,Hanunoo:w8,Hatran:A8,Hebrew:I8,Hiragana:R8,Imperial_Aramaic:x8,Inherited:M8,Inscriptional_Pahlavi:P8,Inscriptional_Parthian:L8,Javanese:$8,Kaithi:N8,Kannada:k8,Katakana:H8,Kawi:X8,Kayah_Li:Y8,Kharoshthi:z8,Khitan_Small_Script:W8,Khmer:j8,Khojki:G8,Khudawadi:U8,Lao:V8,Latin:K8,Lepcha:J8,Limbu:Z8,Linear_A:q8,Linear_B:Q8,Lisu:t9,Lycian:e9,Lydian:n9,Mahajani:s9,Makasar:i9,Malayalam:r9,Mandaic:o9,Manichaean:a9,Marchen:u9,Masaram_Gondi:c9,Medefaidrin:l9,Meetei_Mayek:h9,Mende_Kikakui:D9,Meroitic_Cursive:_9,Meroitic_Hieroglyphs:d9,Miao:f9,Modi:g9,Mongolian:p9,Mro:m9,Multani:F9,Myanmar:C9,Nabataean:E9,Nag_Mundari:b9,Nandinagari:S9,New_Tai_Lue:v9,Newa:T9,Nko:y9,Nushu:B9,Nyiakeng_Puachue_Hmong:O9,Ogham:w9,Ol_Chiki:A9,Old_Hungarian:I9,Old_Italic:R9,Old_North_Arabian:x9,Old_Permic:M9,Old_Persian:P9,Old_Sogdian:L9,Old_South_Arabian:$9,Old_Turkic:N9,Old_Uyghur:k9,Oriya:H9,Osage:X9,Osmanya:Y9,Pahawh_Hmong:z9,Palmyrene:W9,Pau_Cin_Hau:j9,Phags_Pa:G9,Phoenician:U9,Psalter_Pahlavi:V9,Rejang:K9,Runic:J9,Samaritan:Z9,Saurashtra:q9,Sharada:Q9,Shavian:t5,Siddham:e5,SignWriting:n5,Sinhala:s5,Sogdian:i5,Sora_Sompeng:r5,Soyombo:o5,Sundanese:a5,Syloti_Nagri:u5,Syriac:c5,Tagalog:l5,Tagbanwa:h5,Tai_Le:D5,Tai_Tham:_5,Tai_Viet:d5,Takri:f5,Tamil:g5,Tangsa:p5,Tangut:m5,Telugu:F5,Thaana:C5,Thai:E5,Tibetan:b5,Tifinagh:S5,Tirhuta:v5,Toto:T5,Ugaritic:y5,Vai:B5,Vithkuqi:O5,Wancho:w5,Warang_Citi:A5,Yezidi:I5,Yi:R5,Zanabazar_Square:x5},Symbol.toStringTag,{value:"Module"})),P5=[1567,1600,[125184,125259],[125264,125273],[125278,125279]],L5=[[71424,71450],[71453,71467],[71472,71494]],$5=[[82944,83526]],N5=[[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]],k5=[[1329,1366],[1369,1418],[1421,1423],[64275,64279]],H5=[[68352,68405],[68409,68415]],X5=[[6912,6988],[6992,7038]],Y5=[[42656,42743],[92160,92728]],z5=[[92880,92909],[92912,92917]],W5=[[7104,7155],[7164,7167]],j5=[[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],G5=[[72704,72712],[72714,72758],[72760,72773],[72784,72812]],U5=[[746,747],[12289,12291],[12296,12305],[12307,12319],[12330,12333],12336,12343,12539,[12549,12591],[12704,12735],[65093,65094],[65377,65381]],V5=[[69632,69709],[69714,69749],69759],K5=[[10240,10495]],J5=[[6656,6683],[6686,6687],43471],Z5=[[5941,5942],[5952,5971]],q5=[[5120,5759],[6320,6389],[72368,72383]],Q5=[[66208,66256]],tn=[[66864,66915],66927],en=[[2534,2543],[4160,4169],[69888,69940],[69942,69959]],nn=[[43520,43574],[43584,43597],[43600,43609],[43612,43615]],sn=[[5024,5109],[5112,5117],[43888,43967]],rn=[[69552,69579]],on=[[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]],an=[[994,1007],[11392,11507],[11513,11519],[66272,66299]],un=[[73728,74649],[74752,74862],[74864,74868],[74880,75075]],cn=[[65792,65794],[65799,65843],[65847,65855],[67584,67589],67592,[67594,67637],[67639,67640],67644,67647],ln=[[65792,65793],[77712,77810]],hn=[[1024,1327],[7296,7304],7467,7544,7672,[11744,11775],11843,[42560,42655],[65070,65071],[122928,122989],123023],Dn=[[66560,66639]],_n=[[2304,2386],[2389,2431],[7376,7414],[7416,7417],8432,[43056,43065],[43232,43263],[72448,72457]],dn=[[71936,71942],71945,[71948,71955],[71957,71958],[71960,71989],[71991,71992],[71995,72006],[72016,72025]],fn=[[2404,2415],[43056,43065],[71680,71739]],gn=[[113664,113770],[113776,113788],[113792,113800],[113808,113817],[113820,113827]],pn=[[77824,78933]],mn=[[66816,66855]],Fn=[[69600,69622]],Cn=[[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]],En=[[4256,4293],4295,4301,[4304,4351],[7312,7354],[7357,7359],[11520,11557],11559,11565],bn=[1156,1159,[11264,11359],11843,42607,[122880,122886],[122888,122904],[122907,122913],[122915,122916],[122918,122922]],Sn=[[66352,66378]],vn=[[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],Tn=[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]],yn=[[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]],Bn=[[2404,2405],[73056,73061],[73063,73064],[73066,73102],[73104,73105],[73107,73112],[73120,73129]],On=[[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]],wn=[[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]],An=[[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]],In=[1548,1563,1567,1600,1748,[68864,68903],[68912,68921]],Rn=[[5920,5942]],xn=[[67808,67826],[67828,67829],[67835,67839]],Mn=[[1425,1479],[1488,1514],[1519,1524],[64285,64310],[64312,64316],64318,[64320,64321],[64323,64324],[64326,64335]],Pn=[[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],Ln=[[67648,67669],[67671,67679]],$n=[[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]],Nn=[[68448,68466],[68472,68479]],kn=[[68416,68437],[68440,68447]],Hn=[[43392,43469],[43471,43481],[43486,43487]],Xn=[[2406,2415],[43056,43065],[69760,69826],69837],Yn=[[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]],zn=[[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]],Wn=[[73472,73488],[73490,73530],[73534,73561]],jn=[[43264,43311]],Gn=[[68096,68099],[68101,68102],[68108,68115],[68117,68119],[68121,68149],[68152,68154],[68159,68168],[68176,68184]],Un=[94180,[101120,101589]],Vn=[[6016,6109],[6112,6121],[6128,6137],[6624,6655]],Kn=[[2790,2799],[43056,43065],[70144,70161],[70163,70209]],Jn=[[2404,2405],[43056,43065],[70320,70378],[70384,70393]],Zn=[[3713,3714],3716,[3718,3722],[3724,3747],3749,[3751,3773],[3776,3780],3782,[3784,3790],[3792,3801],[3804,3807]],qn=[[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]],Qn=[[7168,7223],[7227,7241],[7245,7247]],ts=[2405,[6400,6430],[6432,6443],[6448,6459],6464,[6468,6479]],es=[[65799,65843],[67072,67382],[67392,67413],[67424,67431]],ns=[[65536,65547],[65549,65574],[65576,65594],[65596,65597],[65599,65613],[65616,65629],[65664,65786],[65792,65794],[65799,65843],[65847,65855]],ss=[[42192,42239],73648],is=[[66176,66204]],rs=[[67872,67897],67903],os=[[2404,2415],[43056,43065],[69968,70006]],as=[[73440,73464]],us=[[2385,2386],[2404,2405],[3328,3340],[3342,3344],[3346,3396],[3398,3400],[3402,3407],[3412,3427],[3430,3455],7386,[43056,43058]],cs=[1600,[2112,2139],2142],ls=[1600,[68288,68326],[68331,68342]],hs=[[72816,72847],[72850,72871],[72873,72886]],Ds=[[2404,2405],[72960,72966],[72968,72969],[72971,73014],73018,[73020,73021],[73023,73031],[73040,73049]],_s=[[93760,93850]],ds=[[43744,43766],[43968,44013],[44016,44025]],fs=[[124928,125124],[125127,125142]],gs=[[68e3,68023],[68028,68047],[68050,68095]],ps=[[67968,67999]],ms=[[93952,94026],[94031,94087],[94095,94111]],Fs=[[43056,43065],[71168,71236],[71248,71257]],Cs=[[6144,6169],[6176,6264],[6272,6314],8239,[71264,71276]],Es=[[92736,92766],[92768,92777],[92782,92783]],bs=[[2662,2671],[70272,70278],70280,[70282,70285],[70287,70301],[70303,70313]],Ss=[[4096,4255],43310,[43488,43518],[43616,43647]],vs=[[67712,67742],[67751,67759]],Ts=[[124112,124153]],ys=[[2404,2405],[3302,3311],7401,7410,7418,[43056,43061],[72096,72103],[72106,72151],[72154,72164]],Bs=[[6528,6571],[6576,6601],[6608,6618],[6622,6623]],Os=[[70656,70747],[70749,70753]],ws=[1548,1563,1567,[1984,2042],[2045,2047],[64830,64831]],As=[94177,[110960,111355]],Is=[[123136,123180],[123184,123197],[123200,123209],[123214,123215]],Rs=[[5760,5788]],xs=[[7248,7295]],Ms=[[68736,68786],[68800,68850],[68858,68863]],Ps=[[66304,66339],[66349,66351]],Ls=[[68224,68255]],$s=[1155,[66384,66426]],Ns=[[66464,66499],[66504,66517]],ks=[[69376,69415]],Hs=[[68192,68223]],Xs=[[68608,68680]],Ys=[1600,68338,[69488,69513]],zs=[[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],Ws=[[66736,66771],[66776,66811]],js=[[66688,66717],[66720,66729]],Gs=[[92928,92997],[93008,93017],[93019,93025],[93027,93047],[93053,93071]],Us=[[67680,67711]],Vs=[[72384,72440]],Ks=[[6146,6147],6149,[43072,43127]],Js=[[67840,67867],67871],Zs=[1600,[68480,68497],[68505,68508],[68521,68527]],qs=[[43312,43347],43359],Qs=[[5792,5866],[5870,5880]],ti=[[2048,2093],[2096,2110]],ei=[[43136,43205],[43214,43225]],ni=[2385,7383,7385,[7388,7389],7392,[70016,70111]],si=[[66640,66687]],ii=[[71040,71093],[71096,71133]],ri=[[120832,121483],[121499,121503],[121505,121519]],oi=[[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]],ai=[1600,[69424,69465]],ui=[[69840,69864],[69872,69881]],ci=[[72272,72354]],li=[[7040,7103],[7360,7367]],hi=[[2404,2405],[2534,2543],[43008,43052]],Di=[1548,[1563,1564],1567,1600,[1611,1621],1648,[1792,1805],[1807,1866],[1869,1871],[2144,2154],7672,7674],_i=[[5888,5909],5919,[5941,5942]],di=[[5941,5942],[5984,5996],[5998,6e3],[6002,6003]],fi=[[4160,4169],[6480,6509],[6512,6516]],gi=[[6688,6750],[6752,6780],[6783,6793],[6800,6809],[6816,6829]],pi=[[43648,43714],[43739,43743]],mi=[[2404,2405],[43056,43065],[71296,71353],[71360,71369]],Fi=[[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],Ci=[[92784,92862],[92864,92873]],Ei=[94176,[94208,100343],[100352,101119],[101632,101640]],bi=[[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],Si=[1548,[1563,1564],1567,[1632,1641],[1920,1969],65010,65021],vi=[[3585,3642],[3648,3675]],Ti=[[3840,3911],[3913,3948],[3953,3991],[3993,4028],[4030,4044],[4046,4052],[4057,4058]],yi=[[11568,11623],[11631,11632],11647],Bi=[[2385,2386],[2404,2405],7410,[43056,43065],[70784,70855],[70864,70873]],Oi=[[123536,123566]],wi=[[66432,66461],66463],Ai=[[42240,42539]],Ii=[[66928,66938],[66940,66954],[66956,66962],[66964,66965],[66967,66977],[66979,66993],[66995,67001],[67003,67004]],Ri=[[123584,123641],123647],xi=[[71840,71922],71935],Mi=[1548,1563,1567,[1632,1641],[69248,69289],[69291,69293],[69296,69297]],Pi=[[12289,12290],[12296,12305],[12308,12315],12539,[40960,42124],[42128,42182],[65377,65381]],Li=[[72192,72263]],$i=Object.freeze(Object.defineProperty({__proto__:null,Adlam:P5,Ahom:L5,Anatolian_Hieroglyphs:$5,Arabic:N5,Armenian:k5,Avestan:H5,Balinese:X5,Bamum:Y5,Bassa_Vah:z5,Batak:W5,Bengali:j5,Bhaiksuki:G5,Bopomofo:U5,Brahmi:V5,Braille:K5,Buginese:J5,Buhid:Z5,Canadian_Aboriginal:q5,Carian:Q5,Caucasian_Albanian:tn,Chakma:en,Cham:nn,Cherokee:sn,Chorasmian:rn,Common:on,Coptic:an,Cuneiform:un,Cypriot:cn,Cypro_Minoan:ln,Cyrillic:hn,Deseret:Dn,Devanagari:_n,Dives_Akuru:dn,Dogra:fn,Duployan:gn,Egyptian_Hieroglyphs:pn,Elbasan:mn,Elymaic:Fn,Ethiopic:Cn,Georgian:En,Glagolitic:bn,Gothic:Sn,Grantha:vn,Greek:Tn,Gujarati:yn,Gunjala_Gondi:Bn,Gurmukhi:On,Han:wn,Hangul:An,Hanifi_Rohingya:In,Hanunoo:Rn,Hatran:xn,Hebrew:Mn,Hiragana:Pn,Imperial_Aramaic:Ln,Inherited:$n,Inscriptional_Pahlavi:Nn,Inscriptional_Parthian:kn,Javanese:Hn,Kaithi:Xn,Kannada:Yn,Katakana:zn,Kawi:Wn,Kayah_Li:jn,Kharoshthi:Gn,Khitan_Small_Script:Un,Khmer:Vn,Khojki:Kn,Khudawadi:Jn,Lao:Zn,Latin:qn,Lepcha:Qn,Limbu:ts,Linear_A:es,Linear_B:ns,Lisu:ss,Lycian:is,Lydian:rs,Mahajani:os,Makasar:as,Malayalam:us,Mandaic:cs,Manichaean:ls,Marchen:hs,Masaram_Gondi:Ds,Medefaidrin:_s,Meetei_Mayek:ds,Mende_Kikakui:fs,Meroitic_Cursive:gs,Meroitic_Hieroglyphs:ps,Miao:ms,Modi:Fs,Mongolian:Cs,Mro:Es,Multani:bs,Myanmar:Ss,Nabataean:vs,Nag_Mundari:Ts,Nandinagari:ys,New_Tai_Lue:Bs,Newa:Os,Nko:ws,Nushu:As,Nyiakeng_Puachue_Hmong:Is,Ogham:Rs,Ol_Chiki:xs,Old_Hungarian:Ms,Old_Italic:Ps,Old_North_Arabian:Ls,Old_Permic:$s,Old_Persian:Ns,Old_Sogdian:ks,Old_South_Arabian:Hs,Old_Turkic:Xs,Old_Uyghur:Ys,Oriya:zs,Osage:Ws,Osmanya:js,Pahawh_Hmong:Gs,Palmyrene:Us,Pau_Cin_Hau:Vs,Phags_Pa:Ks,Phoenician:Js,Psalter_Pahlavi:Zs,Rejang:qs,Runic:Qs,Samaritan:ti,Saurashtra:ei,Sharada:ni,Shavian:si,Siddham:ii,SignWriting:ri,Sinhala:oi,Sogdian:ai,Sora_Sompeng:ui,Soyombo:ci,Sundanese:li,Syloti_Nagri:hi,Syriac:Di,Tagalog:_i,Tagbanwa:di,Tai_Le:fi,Tai_Tham:gi,Tai_Viet:pi,Takri:mi,Tamil:Fi,Tangsa:Ci,Tangut:Ei,Telugu:bi,Thaana:Si,Thai:vi,Tibetan:Ti,Tifinagh:yi,Tirhuta:Bi,Toto:Oi,Ugaritic:wi,Vai:Ai,Vithkuqi:Ii,Wancho:Ri,Warang_Citi:xi,Yezidi:Mi,Yi:Pi,Zanabazar_Square:Li},Symbol.toStringTag,{value:"Module"})),Ni=[],ki=[],Hi=[],Xi=[],Yi=Object.freeze(Object.defineProperty({__proto__:null,C:Ni,F:ki,S:Hi,T:Xi},Symbol.toStringTag,{value:"Module"})),zi=[[125184,125279]],Wi=[[65792,65855]],ji=[[71424,71503]],Gi=[[128768,128895]],Ui=[[64256,64335]],Vi=[[82944,83583]],Ki=[[119296,119375]],Ji=[[65856,65935]],Zi=[[65936,65999]],qi=[[1536,1791]],Qi=[[2208,2303]],tr=[[126464,126719]],er=[[64336,65023]],nr=[[65136,65279]],sr=[[1872,1919]],ir=[[1328,1423]],rr=[[8592,8703]],or=[[68352,68415]],ar=[[6912,7039]],ur=[[42656,42751]],cr=[[92160,92735]],lr=[[0,127]],hr=[[92880,92927]],Dr=[[7104,7167]],_r=[[2432,2559]],dr=[[72704,72815]],fr=[[9600,9631]],gr=[[12544,12591]],pr=[[12704,12735]],mr=[[9472,9599]],Fr=[[69632,69759]],Cr=[[10240,10495]],Er=[[6656,6687]],br=[[5952,5983]],Sr=[[118784,119039]],vr=[[13056,13311]],Tr=[[65072,65103]],yr=[[63744,64255]],Br=[[194560,195103]],Or=[[11904,12031]],wr=[[12736,12783]],Ar=[[12288,12351]],Ir=[[19968,40959]],Rr=[[13312,19903]],xr=[[131072,173791]],Mr=[[173824,177983]],Pr=[[177984,178207]],Lr=[[178208,183983]],$r=[[183984,191471]],Nr=[[66208,66271]],kr=[[66864,66927]],Hr=[[69888,69967]],Xr=[[43520,43615]],Yr=[[5024,5119]],zr=[[43888,43967]],Wr=[[129536,129647]],jr=[[768,879]],Gr=[[6832,6911]],Ur=[[8400,8447]],Vr=[[7616,7679]],Kr=[[65056,65071]],Jr=[[43056,43071]],Zr=[[9216,9279]],qr=[[11392,11519]],Qr=[[66272,66303]],to=[[119648,119679]],eo=[[73728,74751]],no=[[74752,74879]],so=[[8352,8399]],io=[[67584,67647]],ro=[[1024,1279]],oo=[[11744,11775]],ao=[[42560,42655]],uo=[[7296,7311]],co=[[1280,1327]],lo=[[66560,66639]],ho=[[2304,2431]],Do=[[43232,43263]],_o=[[9984,10175]],fo=[[71680,71759]],go=[[127024,127135]],po=[[113664,113823]],mo=[[74880,75087]],Fo=[[77824,78895]],Co=[[66816,66863]],Eo=[[128512,128591]],bo=[[127232,127487]],So=[[9312,9471]],vo=[[12800,13055]],To=[[127488,127743]],yo=[[4608,4991]],Bo=[[11648,11743]],Oo=[[43776,43823]],wo=[[4992,5023]],Ao=[[8192,8303]],Io=[[9632,9727]],Ro=[[128896,129023]],xo=[[4256,4351]],Mo=[[7312,7359]],Po=[[11520,11567]],Lo=[[11264,11359]],$o=[[122880,122927]],No=[[66352,66383]],ko=[[70400,70527]],Ho=[[880,1023]],Xo=[[7936,8191]],Yo=[[2688,2815]],zo=[[73056,73135]],Wo=[[2560,2687]],jo=[[65280,65519]],Go=[[12592,12687]],Uo=[[4352,4607]],Vo=[[43360,43391]],Ko=[[55216,55295]],Jo=[[44032,55215]],Zo=[[68864,68927]],qo=[[5920,5951]],Qo=[[67808,67839]],ta=[[1424,1535]],ea=[[56192,56319]],na=[[55296,56191]],sa=[[12352,12447]],ia=[[592,687]],ra=[[12272,12287]],oa=[[94176,94207]],aa=[[67648,67679]],ua=[[126064,126143]],ca=[[68448,68479]],la=[[68416,68447]],ha=[[43392,43487]],Da=[[69760,69839]],_a=[[110848,110895]],da=[[110592,110847]],fa=[[12688,12703]],ga=[[12032,12255]],pa=[[3200,3327]],ma=[[12448,12543]],Fa=[[12784,12799]],Ca=[[43264,43311]],Ea=[[68096,68191]],ba=[[6016,6143]],Sa=[[6624,6655]],va=[[70144,70223]],Ta=[[70320,70399]],ya=[[3712,3839]],Ba=[[128,255]],Oa=[[256,383]],wa=[[7680,7935]],Aa=[[384,591]],Ia=[[11360,11391]],Ra=[[42784,43007]],xa=[[43824,43887]],Ma=[[7168,7247]],Pa=[[8448,8527]],La=[[6400,6479]],$a=[[67072,67455]],Na=[[65664,65791]],ka=[[65536,65663]],Ha=[[42192,42239]],Xa=[[56320,57343]],Ya=[[66176,66207]],za=[[67872,67903]],Wa=[[69968,70015]],ja=[[126976,127023]],Ga=[[73440,73471]],Ua=[[3328,3455]],Va=[[2112,2143]],Ka=[[68288,68351]],Ja=[[72816,72895]],Za=[[72960,73055]],qa=[[119808,120831]],Qa=[[8704,8959]],tu=[[119520,119551]],eu=[[93760,93855]],nu=[[43968,44031]],su=[[43744,43775]],iu=[[124928,125151]],ru=[[68e3,68095]],ou=[[67968,67999]],au=[[93952,94111]],uu=[[10176,10223]],cu=[[10624,10751]],lu=[[9728,9983]],hu=[[11008,11263]],Du=[[127744,128511]],_u=[[8960,9215]],du=[[71168,71263]],fu=[[42752,42783]],gu=[[6144,6319]],pu=[[71264,71295]],mu=[[92736,92783]],Fu=[[70272,70319]],Cu=[[119040,119295]],Eu=[[4096,4255]],bu=[[43616,43647]],Su=[[43488,43519]],vu=[[1984,2047]],Tu=[[67712,67759]],yu=[[6528,6623]],Bu=[[70656,70783]],Ou=[[8528,8591]],wu=[[110960,111359]],Au=[[5760,5791]],Iu=[[7248,7295]],Ru=[[68736,68863]],xu=[[66304,66351]],Mu=[[68224,68255]],Pu=[[66384,66431]],Lu=[[66464,66527]],$u=[[69376,69423]],Nu=[[68192,68223]],ku=[[68608,68687]],Hu=[[9280,9311]],Xu=[[2816,2943]],Yu=[[128592,128639]],zu=[[66736,66815]],Wu=[[66688,66735]],ju=[[92928,93071]],Gu=[[67680,67711]],Uu=[[72384,72447]],Vu=[[43072,43135]],Ku=[[66e3,66047]],Ju=[[67840,67871]],Zu=[[7424,7551]],qu=[[7552,7615]],Qu=[[127136,127231]],tc=[[57344,63743]],ec=[[68480,68527]],nc=[[43312,43359]],sc=[[69216,69247]],ic=[[5792,5887]],rc=[[2048,2111]],oc=[[43136,43231]],ac=[[70016,70111]],uc=[[66640,66687]],cc=[[113824,113839]],lc=[[71040,71167]],hc=[[3456,3583]],Dc=[[70112,70143]],_c=[[65104,65135]],dc=[[69424,69487]],fc=[[69840,69887]],gc=[[72272,72367]],pc=[[688,767]],mc=[[65520,65535]],Fc=[[7040,7103]],Cc=[[7360,7375]],Ec=[[8304,8351]],bc=[[10224,10239]],Sc=[[10496,10623]],vc=[[129024,129279]],Tc=[[10752,11007]],yc=[[11776,11903]],Bc=[[129280,129535]],Oc=[[983040,1048575]],wc=[[1048576,1114111]],Ac=[[120832,121519]],Ic=[[43008,43055]],Rc=[[1792,1871]],xc=[[2144,2159]],Mc=[[5888,5919]],Pc=[[5984,6015]],Lc=[[917504,917631]],$c=[[6480,6527]],Nc=[[6688,6831]],kc=[[43648,43743]],Hc=[[119552,119647]],Xc=[[71296,71375]],Yc=[[2944,3071]],zc=[[94208,100351]],Wc=[[100352,101119]],jc=[[3072,3199]],Gc=[[1920,1983]],Uc=[[3584,3711]],Vc=[[3840,4095]],Kc=[[11568,11647]],Jc=[[70784,70879]],Zc=[[128640,128767]],qc=[[66432,66463]],Qc=[[5120,5759]],tl=[[6320,6399]],el=[[42240,42559]],nl=[[65024,65039]],sl=[[917760,917999]],il=[[7376,7423]],rl=[[65040,65055]],ol=[[71840,71935]],al=[[42128,42191]],ul=[[40960,42127]],cl=[[19904,19967]],ll=[[72192,72271]],hl=[[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]],Dl=Object.freeze(Object.defineProperty({__proto__:null,Adlam:zi,Aegean_Numbers:Wi,Ahom:ji,Alchemical_Symbols:Gi,Alphabetic_Presentation_Forms:Ui,Anatolian_Hieroglyphs:Vi,Ancient_Greek_Musical_Notation:Ki,Ancient_Greek_Numbers:Ji,Ancient_Symbols:Zi,Arabic:qi,Arabic_Extended_A:Qi,Arabic_Mathematical_Alphabetic_Symbols:tr,Arabic_Presentation_Forms_A:er,Arabic_Presentation_Forms_B:nr,Arabic_Supplement:sr,Armenian:ir,Arrows:rr,Avestan:or,Balinese:ar,Bamum:ur,Bamum_Supplement:cr,Basic_Latin:lr,Bassa_Vah:hr,Batak:Dr,Bengali:_r,Bhaiksuki:dr,Block_Elements:fr,Bopomofo:gr,Bopomofo_Extended:pr,Box_Drawing:mr,Brahmi:Fr,Braille_Patterns:Cr,Buginese:Er,Buhid:br,Byzantine_Musical_Symbols:Sr,CJK_Compatibility:vr,CJK_Compatibility_Forms:Tr,CJK_Compatibility_Ideographs:yr,CJK_Compatibility_Ideographs_Supplement:Br,CJK_Radicals_Supplement:Or,CJK_Strokes:wr,CJK_Symbols_And_Punctuation:Ar,CJK_Unified_Ideographs:Ir,CJK_Unified_Ideographs_Extension_A:Rr,CJK_Unified_Ideographs_Extension_B:xr,CJK_Unified_Ideographs_Extension_C:Mr,CJK_Unified_Ideographs_Extension_D:Pr,CJK_Unified_Ideographs_Extension_E:Lr,CJK_Unified_Ideographs_Extension_F:$r,Carian:Nr,Caucasian_Albanian:kr,Chakma:Hr,Cham:Xr,Cherokee:Yr,Cherokee_Supplement:zr,Chess_Symbols:Wr,Combining_Diacritical_Marks:jr,Combining_Diacritical_Marks_Extended:Gr,Combining_Diacritical_Marks_For_Symbols:Ur,Combining_Diacritical_Marks_Supplement:Vr,Combining_Half_Marks:Kr,Common_Indic_Number_Forms:Jr,Control_Pictures:Zr,Coptic:qr,Coptic_Epact_Numbers:Qr,Counting_Rod_Numerals:to,Cuneiform:eo,Cuneiform_Numbers_And_Punctuation:no,Currency_Symbols:so,Cypriot_Syllabary:io,Cyrillic:ro,Cyrillic_Extended_A:oo,Cyrillic_Extended_B:ao,Cyrillic_Extended_C:uo,Cyrillic_Supplement:co,Deseret:lo,Devanagari:ho,Devanagari_Extended:Do,Dingbats:_o,Dogra:fo,Domino_Tiles:go,Duployan:po,Early_Dynastic_Cuneiform:mo,Egyptian_Hieroglyphs:Fo,Elbasan:Co,Emoticons:Eo,Enclosed_Alphanumeric_Supplement:bo,Enclosed_Alphanumerics:So,Enclosed_CJK_Letters_And_Months:vo,Enclosed_Ideographic_Supplement:To,Ethiopic:yo,Ethiopic_Extended:Bo,Ethiopic_Extended_A:Oo,Ethiopic_Supplement:wo,General_Punctuation:Ao,Geometric_Shapes:Io,Geometric_Shapes_Extended:Ro,Georgian:xo,Georgian_Extended:Mo,Georgian_Supplement:Po,Glagolitic:Lo,Glagolitic_Supplement:$o,Gothic:No,Grantha:ko,Greek_And_Coptic:Ho,Greek_Extended:Xo,Gujarati:Yo,Gunjala_Gondi:zo,Gurmukhi:Wo,Halfwidth_And_Fullwidth_Forms:jo,Hangul_Compatibility_Jamo:Go,Hangul_Jamo:Uo,Hangul_Jamo_Extended_A:Vo,Hangul_Jamo_Extended_B:Ko,Hangul_Syllables:Jo,Hanifi_Rohingya:Zo,Hanunoo:qo,Hatran:Qo,Hebrew:ta,High_Private_Use_Surrogates:ea,High_Surrogates:na,Hiragana:sa,IPA_Extensions:ia,Ideographic_Description_Characters:ra,Ideographic_Symbols_And_Punctuation:oa,Imperial_Aramaic:aa,Indic_Siyaq_Numbers:ua,Inscriptional_Pahlavi:ca,Inscriptional_Parthian:la,Javanese:ha,Kaithi:Da,Kana_Extended_A:_a,Kana_Supplement:da,Kanbun:fa,Kangxi_Radicals:ga,Kannada:pa,Katakana:ma,Katakana_Phonetic_Extensions:Fa,Kayah_Li:Ca,Kharoshthi:Ea,Khmer:ba,Khmer_Symbols:Sa,Khojki:va,Khudawadi:Ta,Lao:ya,Latin_1_Supplement:Ba,Latin_Extended_A:Oa,Latin_Extended_Additional:wa,Latin_Extended_B:Aa,Latin_Extended_C:Ia,Latin_Extended_D:Ra,Latin_Extended_E:xa,Lepcha:Ma,Letterlike_Symbols:Pa,Limbu:La,Linear_A:$a,Linear_B_Ideograms:Na,Linear_B_Syllabary:ka,Lisu:Ha,Low_Surrogates:Xa,Lycian:Ya,Lydian:za,Mahajani:Wa,Mahjong_Tiles:ja,Makasar:Ga,Malayalam:Ua,Mandaic:Va,Manichaean:Ka,Marchen:Ja,Masaram_Gondi:Za,Mathematical_Alphanumeric_Symbols:qa,Mathematical_Operators:Qa,Mayan_Numerals:tu,Medefaidrin:eu,Meetei_Mayek:nu,Meetei_Mayek_Extensions:su,Mende_Kikakui:iu,Meroitic_Cursive:ru,Meroitic_Hieroglyphs:ou,Miao:au,Miscellaneous_Mathematical_Symbols_A:uu,Miscellaneous_Mathematical_Symbols_B:cu,Miscellaneous_Symbols:lu,Miscellaneous_Symbols_And_Arrows:hu,Miscellaneous_Symbols_And_Pictographs:Du,Miscellaneous_Technical:_u,Modi:du,Modifier_Tone_Letters:fu,Mongolian:gu,Mongolian_Supplement:pu,Mro:mu,Multani:Fu,Musical_Symbols:Cu,Myanmar:Eu,Myanmar_Extended_A:bu,Myanmar_Extended_B:Su,NKo:vu,Nabataean:Tu,New_Tai_Lue:yu,Newa:Bu,Number_Forms:Ou,Nushu:wu,Ogham:Au,Ol_Chiki:Iu,Old_Hungarian:Ru,Old_Italic:xu,Old_North_Arabian:Mu,Old_Permic:Pu,Old_Persian:Lu,Old_Sogdian:$u,Old_South_Arabian:Nu,Old_Turkic:ku,Optical_Character_Recognition:Hu,Oriya:Xu,Ornamental_Dingbats:Yu,Osage:zu,Osmanya:Wu,Pahawh_Hmong:ju,Palmyrene:Gu,Pau_Cin_Hau:Uu,Phags_Pa:Vu,Phaistos_Disc:Ku,Phoenician:Ju,Phonetic_Extensions:Zu,Phonetic_Extensions_Supplement:qu,Playing_Cards:Qu,Private_Use_Area:tc,Psalter_Pahlavi:ec,Rejang:nc,Rumi_Numeral_Symbols:sc,Runic:ic,Samaritan:rc,Saurashtra:oc,Sharada:ac,Shavian:uc,Shorthand_Format_Controls:cc,Siddham:lc,Sinhala:hc,Sinhala_Archaic_Numbers:Dc,Small_Form_Variants:_c,Sogdian:dc,Sora_Sompeng:fc,Soyombo:gc,Spacing_Modifier_Letters:pc,Specials:mc,Sundanese:Fc,Sundanese_Supplement:Cc,Superscripts_And_Subscripts:Ec,Supplemental_Arrows_A:bc,Supplemental_Arrows_B:Sc,Supplemental_Arrows_C:vc,Supplemental_Mathematical_Operators:Tc,Supplemental_Punctuation:yc,Supplemental_Symbols_And_Pictographs:Bc,Supplementary_Private_Use_Area_A:Oc,Supplementary_Private_Use_Area_B:wc,Sutton_SignWriting:Ac,Syloti_Nagri:Ic,Syriac:Rc,Syriac_Supplement:xc,Tagalog:Mc,Tagbanwa:Pc,Tags:Lc,Tai_Le:$c,Tai_Tham:Nc,Tai_Viet:kc,Tai_Xuan_Jing_Symbols:Hc,Takri:Xc,Tamil:Yc,Tangut:zc,Tangut_Components:Wc,Telugu:jc,Thaana:Gc,Thai:Uc,Tibetan:Vc,Tifinagh:Kc,Tirhuta:Jc,Transport_And_Map_Symbols:Zc,Ugaritic:qc,Unified_Canadian_Aboriginal_Syllabics:Qc,Unified_Canadian_Aboriginal_Syllabics_Extended:tl,Vai:el,Variation_Selectors:nl,Variation_Selectors_Supplement:sl,Vedic_Extensions:il,Vertical_Forms:rl,Warang_Citi:ol,Yi_Radicals:al,Yi_Syllables:ul,Yijing_Hexagram_Symbols:cl,Zanabazar_Square:ll,undefined:hl},Symbol.toStringTag,{value:"Module"})),_l=Object.freeze(Object.defineProperty({__proto__:null},Symbol.toStringTag,{value:"Module"})),dl=[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],fl=[[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]],gl=[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],pl=Object.freeze(Object.defineProperty({__proto__:null,Close:dl,None:fl,Open:gl},Symbol.toStringTag,{value:"Module"})),ml=[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]],Fl=[[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]],Cl=[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]],El=[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],bl=[8212,[11834,11835]],Sl=[47],vl=[13],Tl=[41,93],yl=[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],Bl=[[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]],Ol=[[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]],wl=[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]],Al=[65532],Il=[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]],Rl=[[127995,127999]],xl=[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],Ml=[160,847,[860,866],3848,3852,3858,[4057,4058],6158,7629,7676,8199,8209,8239,[78896,78902],[78905,78907],94180],Pl=[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],Ll=[[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]],$l=[[1488,1514],[1519,1522],64285,[64287,64296],[64298,64310],[64312,64316],64318,[64320,64321],[64323,64324],[64326,64335]],Nl=[45],kl=[[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]],Hl=[44,46,[58,59],894,1417,[1548,1549],2040,8260,65040,[65043,65044]],Xl=[[8228,8230],8943,65049,68342],Yl=[[4352,4447],[43360,43388]],zl=[[4520,4607],[55243,55291]],Wl=[[4448,4519],[55216,55238]],jl=[10],Gl=[[11,12],[8232,8233]],Ul=[133],Vl=[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]],Kl=[[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]],Jl=[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]],Zl=[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],ql=[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],Ql=[34,39,171,187,[8216,8217],[8219,8221],8223,[8249,8250],[10075,10080],[11776,11789],[11804,11805],[11808,11809],[128630,128632]],th=[[127462,127487]],eh=[32],nh=[[55296,57343]],sh=[[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]],ih=[8288,65279],rh=[8205],oh=[8203],ah=Object.freeze(Object.defineProperty({__proto__:null,Alphabetic:ml,Ambiguous:Fl,Break_After:Cl,Break_Before:El,Break_Both:bl,Break_Symbols:Sl,Carriage_Return:vl,Close_Parenthesis:Tl,Close_Punctuation:yl,Combining_Mark:Bl,Complex_Context:Ol,Conditional_Japanese_Starter:wl,Contingent_Break:Al,E_Base:Il,E_Modifier:Rl,Exclamation:xl,Glue:Ml,H2:Pl,H3:Ll,Hebrew_Letter:$l,Hyphen:Nl,Ideographic:kl,Infix_Numeric:Hl,Inseparable:Xl,JL:Yl,JT:zl,JV:Wl,Line_Feed:jl,Mandatory_Break:Gl,Next_Line:Ul,Nonstarter:Vl,Numeric:Kl,Open_Punctuation:Jl,Postfix_Numeric:Zl,Prefix_Numeric:ql,Quotation:Ql,Regional_Indicator:th,Space:eh,Surrogate:nh,Unknown:sh,Word_Joiner:ih,ZWJ:rh,ZWSpace:oh},Symbol.toStringTag,{value:"Module"})),uh=[[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]],ch=[13],lh=[34],hh=[[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]],Dh=[95,8239,[8255,8256],8276,[65075,65076],[65101,65103],65343],_h=[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],dh=[[1488,1514],[1519,1522],64285,[64287,64296],[64298,64310],[64312,64316],64318,[64320,64321],[64323,64324],[64326,64335]],fh=[[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]],gh=[10],ph=[58,183,903,1375,1524,8231,65043,65109,65306],mh=[44,59,894,1417,[1548,1549],1644,2040,8260,65040,65044,65104,65108,65292,65307],Fh=[46,[8216,8217],8228,65106,65287,65294],Ch=[[11,12],133,[8232,8233]],Eh=[[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]],bh=[[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]],Sh=[[127462,127487]],vh=[39],Th=[32,5760,[8192,8198],[8200,8202],8287,12288],yh=[8205],Bh=Object.freeze(Object.defineProperty({__proto__:null,ALetter:uh,CR:ch,Double_Quote:lh,Extend:hh,ExtendNumLet:Dh,Format:_h,Hebrew_Letter:dh,Katakana:fh,LF:gh,MidLetter:ph,MidNum:mh,MidNumLet:Fh,Newline:Ch,Numeric:Eh,Other:bh,Regional_Indicator:Sh,Single_Quote:vh,WSegSpace:Th,ZWJ:yh},Symbol.toStringTag,{value:"Module"})),Oh=Object.freeze(Object.defineProperty({__proto__:null,Bidi_Class:R3,Bidi_Mirroring_Glyph:_l,Bidi_Paired_Bracket_Type:pl,Binary_Property:S0,Block:Dl,Case_Folding:Yi,General_Category:u3,Line_Break:ah,Script:M5,Script_Extensions:$i,Word_Break:Bh},Symbol.toStringTag,{value:"Module"}));function J7(r){const n=Object.keys(r);if(n.length===0)throw new Error("Expected at least one category, but received 0.");if(n.some(e=>{const s=r[e];return s===void 0||s.length===0}))throw new Error("Expected at least one sub category, but received 0.");return n.map(e=>{const i=r[e].map(o=>wh(e,o));return new S1().union(...i)}).reduce((e,s)=>e.intersect(s))}function wh(r,n){const e=Oh[r][n];return new S1().union(...e)}const M6=J7({Script:["Han","Katakana","Hiragana","Hangul","Bopomofo"],General_Category:["Other_Letter","Letter_Number","Other_Symbol","Modifier_Letter"]}),Ah=J7({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(M6),Ih=x6(M6,Ah);function Rh(){return x6(Ih)}function xh(){return x6(M6)}const C7=r=>({sbr:.5,sbo:r,spr:.5,spo:r});class O1{static get globalFontMeasureCache(){return this._globalFontMeasureCache}static setFontMeasureCache(n,t,e){this._globalFontMeasureCache.has(n)||this._globalFontMeasureCache.set(n,new Map);const s=this._globalFontMeasureCache.get(n);s&&s.set(t,e)}static clearFontMeasureCache(n){var e;const t=n.split("/");if(t.length===1){const s=t[0];this._globalFontMeasureCache.delete(s)}else if(t.length===2){const s=t[0],i=t[1];(e=this._globalFontMeasureCache.get(s))==null||e.delete(i)}else return!1;return!0}static getFontMeasureCache(n,t){var e;return(e=this._globalFontMeasureCache.get(n))==null?void 0:e.get(t)}static autoCleanFontMeasureCache(n=1e6){let t=0,e=!1;for(const s of this._globalFontMeasureCache){const[,i]=s;if(t+=i.size,t>n){e=!0;break}}if(e){let s=0;for(const i of this._globalFontMeasureCache){const[o,a]=i;if(s+=a.size,s>n/2){const c=s-n/2;this._clearMeasureCache(c,a);break}this._globalFontMeasureCache.delete(o)}return!0}return!1}static getBaselineOffsetInfo(n,t){if(this._fontDataMap.size===0)return C7(t);const e=n.split(",");for(let s of e){s=s.replace(/'/g,"");const i=this._fontDataMap.get(s);if(!i)continue;const{subscriptSizeRatio:o,subscriptOffset:a,superscriptSizeRatio:c,superscriptOffset:u}=i;return{sbr:o,sbo:a*t,spr:c,spo:u*t}}return C7(t)}static getTextSizeByDom(n,t){if(t in this._getTextHeightCache)return this._getTextHeightCache[t];let e=document.getElementById("universheetTextSizeTest");const s="float:left;white-space:nowrap;visibility:hidden;margin:0;padding:0;";e||(e=document.createElement("span"),e.id="universheetTextSizeTest",document.getElementsByTagName("body")[0].appendChild(e)),e.style.cssText+=`${s};${t}`,e.innerText=n;const i=e.getBoundingClientRect(),o={width:i.width,height:i.height};return this._getTextHeightCache[t]=o,o}static getTextSize(n,t){const{fontString:e,fontSize:s,fontFamily:i}=t;let o=this._getBoundingBoxByFont(i,s);if(!o){const a=this.getMeasureText(n,e);o=this._calculateBoundingBoxByMeasureText(a,s)}return o}static getMeasureText(n,t){if(!this._context){const f=document.createElement("canvas");this._context=f.getContext("2d")}const e=this._context,s=this.getFontMeasureCache(t,n);if(s!=null)return s;e.font=t;const i=e.measureText(n),{width:o,fontBoundingBoxAscent:a,fontBoundingBoxDescent:c,actualBoundingBoxAscent:u,actualBoundingBoxDescent:l}=i,D={width:o,fontBoundingBoxAscent:a,fontBoundingBoxDescent:c,actualBoundingBoxAscent:u,actualBoundingBoxDescent:l};if(a==null||c==null||Number.isNaN(a)||Number.isNaN(c)){const f=this.getTextSizeByDom(G7,t).height;e.textBaseline==="top"?(D.fontBoundingBoxAscent=D.actualBoundingBoxAscent=f,D.fontBoundingBoxDescent=D.actualBoundingBoxDescent=0):e.textBaseline==="middle"?(D.fontBoundingBoxDescent=D.actualBoundingBoxDescent=f/2,D.fontBoundingBoxAscent=D.actualBoundingBoxAscent=f/2):(D.fontBoundingBoxDescent=D.actualBoundingBoxDescent=0,D.fontBoundingBoxAscent=D.actualBoundingBoxAscent=f)}return this.setFontMeasureCache(t,n,D),D}static _clearMeasureCache(n,t){let e=0;for(const s of t){const[i]=s;if(e>n)break;t.delete(i),e++}return!0}static _getBoundingBoxByFont(n,t=28,e=""){const s=this._fontDataMap.get(n);if(!s)return;const{notDefWidth:i,ascender:o,descender:a,typoAscender:c,typoDescender:u,strikeoutPosition:l,subscriptSizeRatio:D,subscriptOffset:f,superscriptSizeRatio:p,superscriptOffset:F,hdmxData:E,glyphHorizonMap:m}=s,b=E==null?void 0:E.indexOf(Math.floor(t)),S=m.get(e.charCodeAt(0));let v=i;if(S){const{width:y,pixelsPerEm:T=[]}=S;b?v=T[b]:v=y}return{width:v*t,ba:o*t,bd:a*t,aba:c*t,abd:u*t,sp:l*t,sbr:D,sbo:f*t,spr:p,spo:F*t}}static _calculateBoundingBoxByMeasureText(n,t){const{width:e,fontBoundingBoxAscent:s,fontBoundingBoxDescent:i,actualBoundingBoxAscent:o,actualBoundingBoxDescent:a}=n;return{width:e,ba:s,bd:i,aba:o,abd:a,sp:(s+i)/2,sbr:.5,sbo:t,spr:.5,spo:t}}}h(O1,"_getTextHeightCache",{}),h(O1,"_context"),h(O1,"_fontDataMap",new Map),h(O1,"_globalFontMeasureCache",new Map);const Z7=180,Mh=Math.PI/Z7,Ph=Z7/Math.PI,E7="rgb(",Lh="rgba(",l1=(r,n)=>r?n!=null?`${Lh+r.join(",")},${n})`:`${E7+r.join(",")})`:`${E7}0,0,0)`,$h=100,w1=(r,n)=>{if(d.Tools.isNumber(r))return r;if(n&&r&&d.Tools.isString(r)&&r.substr(r.length-1,1)==="%"){const t=Number.parseFloat(r)/$h;return n*t}return 0},Nh=16,b2=(r,n)=>(n||(n=window),n.requestPostAnimationFrame?n.requestPostAnimationFrame(r):n.requestAnimationFrame?n.requestAnimationFrame(r):n.msRequestAnimationFrame?n.msRequestAnimationFrame(r):n.webkitRequestAnimationFrame?n.webkitRequestAnimationFrame(r):n.mozRequestAnimationFrame?n.mozRequestAnimationFrame(r):n.oRequestAnimationFrame?n.oRequestAnimationFrame(r):setTimeout(r,Nh)),q7=(r,n)=>(n||(n=window),n.requestPostAnimationFrame?n.cancelPostAnimationFrame(r):n.requestAnimationFrame?n.cancelAnimationFrame(r):n.msRequestAnimationFrame?n.msCancelAnimationFrame(r):n.webkitRequestAnimationFrame?n.webkitCancelAnimationFrame(r):n.mozRequestAnimationFrame?n.mozCancelAnimationFrame(r):n.oRequestAnimationFrame?n.oCancelAnimationFrame(r):clearTimeout(r)),P6=()=>{const r=document.createElement("canvas");try{r.style=r.style||{}}catch(n){console.error(n)}return r},kh=()=>document.createElement("img"),Q7=r=>r*Ph,v1=r=>r*Mh,F6=()=>{let r="pointer";return typeof window<"u"&&!window.PointerEvent&&typeof navigator<"u"&&(r="mouse"),d.Tools.isTablet()&&!d.Tools.isIPhone()&&!(document&&"ontouchend"in document)&&(r="mouse"),r},t4=()=>d.Tools.getBrowserType()==="safari",Hh=4,e4=(r="obj",n=Hh)=>{const t=window.navigator.userAgent.replace(/[^a-zA-Z0-9]/g,"").split("");let e="";for(let i=0;i<n;i++)e+=t[Math.round(Math.random()*(t.length-1))];const s=new Date().getTime();return`${r}_${e}_${s}`};function P1(r){return Object.prototype.toString.apply(r)}function q2(r){return P1(r)==="[object Function]"}function Xh(r){return P1(r)==="[object Date]"}function Yh(r){return P1(r)==="[object RegExp]"}function zh(r){return P1(r)==="[object Array]"}function C6(r){return P1(r)==="[object String]"}function Wh(r){return P1(r)==="[object Number]"}function jh(r){return P1(r)==="[object Object]"}function Y2(r,n){return n=10**n,Math.round(r*n)/n}function H(r,n){return Math.round(r*n)/n}const n4=11,s4="Arial";function S2(r,n){const t=s4,e=n4;if(!r){const D=`${e}pt ${t}`;return{fontCache:D,fontString:D,fontSize:e,fontFamily:t}}let s=d.FontStyleType.ITALIC;(r.it===0||r.it===void 0)&&(s=d.FontStyleType.NORMAL);let i=d.FontStyleType.BOLD;(r.bl===0||r.bl===void 0)&&(i=d.FontStyleType.NORMAL);let o=e;r.fs&&(o=Math.ceil(r.fs));let a=t;if(r.ff){let D=r.ff;D=D.replace(/"/g,"").replace(/'/g,""),D.indexOf(" ")>-1&&(D=`"${D}"`),D==null&&(D=t),a=D}const{va:c}=r;if(c===d.BaselineOffset.SUBSCRIPT||c===d.BaselineOffset.SUPERSCRIPT){const D=O1.getBaselineOffsetInfo(a,o),{sbr:f,spr:p}=D;o*=c===d.BaselineOffset.SUBSCRIPT?f:p}const u=`${s} ${i} ${o}pt ${a}`,l=`${u}, ${Z2} `;return{fontCache:u,fontString:l,fontSize:o,fontFamily:a}}const Gh=xh().toRegExp();function z2(r){return Gh.test(r)}const Uh=Rh().toRegExp();function Q2(r){return Uh.test(r)}function Vh(r){return!!/[\u0000-\u024F]/gi.exec(r)}function Kh(r){return!!/[\u0000-\u007F]/gi.exec(r)}function Jh(r){return!!/[\u0080-\u00FF]/gi.exec(r)}function Zh(r){return!!/[\u0100-\u017F]/gi.exec(r)}function qh(r){return!!/[\u0180-\u024F]/gi.exec(r)}const i4=/^(?:[#*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,Qh=/^(?:[#*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 L6(r){return Qh.test(r)}function $6(r){return/[\u0600-\u06FF]|[\u0750-\u0750]|[\u0870-\u08FF]|[\uFB50-\uFDFF]|[\uFE70-\uFEFF]/gi.test(r)}function N6(r){return/[\u0180-\u024F]/gi.test(r)}function r4(r){return/\s+/g.test(r)}const b7=1e3;let P2;function w2(){if(P2)return P2;let r=56;for(;r<b7*2;r++)if(matchMedia(`(max-resolution: ${r}dpi)`).matches===!0)return r;return P2=r,setTimeout(()=>{P2=null},b7),r}const o4=72,tD=25.4;function eD(r){return r/(o4/w2())}function nD(r){return r*(o4/w2())}function sD(r){return r*(w2()/tD)}function iD(r){return r*w2()}function k6(r){const{scaleX:n=1,scaleY:t=1}=r;return Math.max(n,t)}function Y1(r,n,t,e){const s=r-1,i=n-1,o=t[s]||0,a=t[r]||t[t.length-1],c=e[i]||0,u=e[n]||e[e.length-1];return{startY:o,endY:a,startX:c,endX:u}}function Q1(r,n,t,e,s){let{startY:i,endY:o,startX:a,endX:c}=Y1(r,n,t,e);const{isMerged:u,isMergedMainCell:l,startRow:D,startColumn:f,endRow:p,endColumn:F}=t6(r,n,s);let E={startRow:D,startColumn:f,endRow:p,endColumn:F,startY:0,endY:0,startX:0,endX:0};const m=t.length-1,b=e.length-1;if(u&&D!==-1&&f!==-1){const S=t[D-1]||0,v=t[p]||t[m],y=e[f-1]||0,T=e[F]||e[b];E={...E,startY:S,endY:v,startX:y,endX:T}}else if(!u&&p!==-1&&F!==-1){const S=t[p]||t[m],v=e[F]||e[b];E={...E,startY:i,endY:S,startX:a,endX:v}}return{isMerged:u,isMergedMainCell:l,actualRow:r,actualColumn:n,startY:i,endY:o,startX:a,endX:c,mergeInfo:E}}function t6(r,n,t){let e=!1,s=!1,i=r,o=n,a=r,c=n;if(t==null)return{actualRow:r,actualColumn:n,isMergedMainCell:s,isMerged:e,endRow:i,endColumn:o,startRow:a,startColumn:c};for(let u=0;u<t.length;u++){const{startRow:l,endRow:D,startColumn:f,endColumn:p}=t[u];if(r===l&&n===f){i=D,o=p,a=l,c=f,s=!0;break}if(r>=l&&r<=D&&n>=f&&n<=p){i=D,o=p,a=l,c=f,e=!0;break}}return{actualRow:r,actualColumn:n,isMergedMainCell:s,isMerged:e,endRow:i,endColumn:o,startRow:a,startColumn:c}}function a4(r,n,t,e){let s=!1;for(let i=n;i<=t;i++){const{isMerged:o,isMergedMainCell:a}=t6(r,i,e);if(!o&&!a){s=!0;break}}return s}function E6(r,n,t){const{startY:e,endY:s,startX:i,endX:o}=r;return r.startY=e+t,r.endY=s+t,r.startX=i+n,r.endX=o+n,{...r}}function u4(r,n){return!(r.left>n.right||r.top>n.bottom||n.left>r.right||n.top>r.bottom)}function rD(r){const n=document.createElement("style");document.head.appendChild(n);const t=n.sheet;for(const e of r)t==null||t.insertRule(e,t.cssRules.length)}function oD(r){for(let n=0,t=document.head.childNodes.length;n<t;n++){const e=document.head.childNodes[n];if(e.nodeName==="STYLE"&&e.textContent&&e.textContent.indexOf(r)>-1)return!0}return!1}function H1(r){return Number(r.replace(/px/gi,""))}function c4(r){const n=getComputedStyle(r),{borderTopWidth:t,borderLeftWidth:e,borderRightWidth:s,borderBottomWidth:i,width:o,height:a}=n;return{top:H1(t),left:H1(e),right:H1(s),bottom:H1(i),width:H1(o),height:H1(a)}}const l4=.75;function aD(r){return r/l4}function uD(r){return r*l4}class I{constructor(n=0,t=0){this.x=n,this.y=t}static Zero(){return new I(0,0)}static One(){return new I(1,1)}static FromArray(n,t=0){return new I(n[t],n[t+1])}static FromArrayToRef(n,t,e){e.x=n[t],e.y=n[t+1]}static CatmullRom(n,t,e,s,i){const o=i*i,a=i*o,c=.5*(2*t.x+(-n.x+e.x)*i+(2*n.x-5*t.x+4*e.x-s.x)*o+(-n.x+3*t.x-3*e.x+s.x)*a),u=.5*(2*t.y+(-n.y+e.y)*i+(2*n.y-5*t.y+4*e.y-s.y)*o+(-n.y+3*t.y-3*e.y+s.y)*a);return new I(c,u)}static Clamp(n,t,e){let s=n.x;s=s>e.x?e.x:s,s=s<t.x?t.x:s;let i=n.y;return i=i>e.y?e.y:i,i=i<t.y?t.y:i,new I(s,i)}static Hermite(n,t,e,s,i){const o=i*i,a=i*o,c=2*a-3*o+1,u=-2*a+3*o,l=a-2*o+i,D=a-o,f=n.x*c+e.x*u+t.x*l+s.x*D,p=n.y*c+e.y*u+t.y*l+s.y*D;return new I(f,p)}static Hermite1stDerivative(n,t,e,s,i){const o=I.Zero();return this.Hermite1stDerivativeToRef(n,t,e,s,i,o),o}static Hermite1stDerivativeToRef(n,t,e,s,i,o){const a=i*i;o.x=(a-i)*6*n.x+(3*a-4*i+1)*t.x+(-a+i)*6*e.x+(3*a-2*i)*s.x,o.y=(a-i)*6*n.y+(3*a-4*i+1)*t.y+(-a+i)*6*e.y+(3*a-2*i)*s.y}static Lerp(n,t,e){const s=n.x+(t.x-n.x)*e,i=n.y+(t.y-n.y)*e;return new I(s,i)}static Dot(n,t){return n.x*t.x+n.y*t.y}static Normalize(n){const t=I.Zero();return this.NormalizeToRef(n,t),t}static NormalizeToRef(n,t){const e=n.length();e!==0&&(t.x=n.x/e,t.y=n.y/e)}static Minimize(n,t){const e=n.x<t.x?n.x:t.x,s=n.y<t.y?n.y:t.y;return new I(e,s)}static Maximize(n,t){const e=n.x>t.x?n.x:t.x,s=n.y>t.y?n.y:t.y;return new I(e,s)}static PointInTriangle(n,t,e,s){const i=.5*(-e.y*s.x+t.y*(-e.x+s.x)+t.x*(e.y-s.y)+e.x*s.y),o=i<0?-1:1,a=(t.y*s.x-t.x*s.y+(s.y-t.y)*n.x+(t.x-s.x)*n.y)*o,c=(t.x*e.y-t.y*e.x+(t.y-e.y)*n.x+(e.x-t.x)*n.y)*o;return a>0&&c>0&&a+c<2*i*o}static Distance(n,t){return Math.sqrt(I.DistanceSquared(n,t))}static DistanceSquared(n,t){const e=n.x-t.x,s=n.y-t.y;return e*e+s*s}static Center(n,t){return I.CenterToRef(n,t,I.Zero())}static CenterToRef(n,t,e){return e.copyFromFloats((n.x+t.x)/2,(n.y+t.y)/2)}static DistanceOfPointFromSegment(n,t,e){const s=I.DistanceSquared(t,e);if(s===0)return I.Distance(n,t);const i=e.subtract(t),o=Math.max(0,Math.min(1,I.Dot(n.subtract(t),i)/s)),a=t.add(i.multiplyByFloats(o,o));return I.Distance(n,a)}static create(n,t){return new I(n,t)}toString(){return`{X: ${this.x} Y: ${this.y}}`}getClassName(){return"Vector2"}getHashCode(){let n=this.x|0;return n=n*397^(this.y|0),n}toArray(n,t=0){return n[t]=this.x,n[t+1]=this.y,this}fromArray(n,t=0){return I.FromArrayToRef(n,t,this),this}asArray(){const n=new Array;return this.toArray(n,0),n}copyFrom(n){return this.x=n.x,this.y=n.y,this}copyFromFloats(n,t){return this.x=n,this.y=t,this}set(n,t){return this.copyFromFloats(n,t)}add(n){return new I(this.x+n.x,this.y+n.y)}addToRef(n,t){return t.x=this.x+n.x,t.y=this.y+n.y,this}addByPoint(n,t){return new I(this.x+n,this.y+t)}addInPlace(n){return this.x+=n.x,this.y+=n.y,this}subtract(n){return new I(this.x-n.x,this.y-n.y)}subtractByPoint(n,t){return new I(this.x-n,this.y-t)}subtractToRef(n,t){return t.x=this.x-n.x,t.y=this.y-n.y,this}subtractInPlace(n){return this.x-=n.x,this.y-=n.y,this}multiplyInPlace(n){return this.x*=n.x,this.y*=n.y,this}multiply(n){return new I(this.x*n.x,this.y*n.y)}multiplyToRef(n,t){return t.x=this.x*n.x,t.y=this.y*n.y,this}multiplyByFloats(n,t){return new I(this.x*n,this.y*t)}divide(n){return new I(this.x/n.x,this.y/n.y)}divideToRef(n,t){return t.x=this.x/n.x,t.y=this.y/n.y,this}divideInPlace(n){return this.divideToRef(n,this)}negate(){return new I(-this.x,-this.y)}negateInPlace(){return this.x*=-1,this.y*=-1,this}negateToRef(n){return n.copyFromFloats(this.x*-1,this.y*-1)}scaleInPlace(n){return this.x*=n,this.y*=n,this}scale(n){const t=new I(0,0);return this.scaleToRef(n,t),t}scaleToRef(n,t){return t.x=this.x*n,t.y=this.y*n,this}scaleAndAddToRef(n,t){return t.x+=this.x*n,t.y+=this.y*n,this}equals(n){return n&&this.x===n.x&&this.y===n.y}floor(){return new I(Math.floor(this.x),Math.floor(this.y))}fract(){return new I(this.x-Math.floor(this.x),this.y-Math.floor(this.y))}rotate(n){const t=Math.cos(n),e=Math.sin(n),s=t*this.x-e*this.y,i=e*this.x+t*this.y;return this.x=s,this.y=i,this}rotateToRef(n,t){const e=Math.cos(n),s=Math.sin(n);return t.x=e*this.x-s*this.y,t.y=s*this.x+e*this.y,this}rotateByPoint(n,t=I.create(0,0)){const e=Math.cos(n),s=Math.sin(n),i=t.x+(this.x-t.x)*e-(this.y-t.y)*s,o=t.y+(this.x-t.x)*s+(this.y-t.y)*e;return this.x=i,this.y=o,this}transformCoordinateOnRotate(n){const t=Math.sqrt(this.x**2+this.y**2),e=Math.atan2(this.y,this.x),s=-n+e;return this.x=t*Math.cos(s),this.y=t*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 I.NormalizeToRef(this,this),this}clone(){return new I(this.x,this.y)}}const $2=[1,0,0,1,0,0];class o1{constructor(n=$2){h(this,"dirty",!1);h(this,"_m");this._m=n&&n.slice()||$2}static create(n=$2){return new this(n)}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 o1(this._m)}copyInto(n){n._m[0]=this._m[0],n._m[1]=this._m[1],n._m[2]=this._m[2],n._m[3]=this._m[3],n._m[4]=this._m[4],n._m[5]=this._m[5]}applyPoint(n,t=!1){const e=this._m,s=e[0]*n.x+e[2]*n.y,i=e[1]*n.x+e[3]*n.y;return t?new I(s,i):new I(s+e[4],i+e[5])}translate(n,t){return this._m[4]+=this._m[0]*n+this._m[2]*t,this._m[5]+=this._m[1]*n+this._m[3]*t,this}scale(n,t){return this._m[0]*=n,this._m[1]*=n,this._m[2]*=t,this._m[3]*=t,this}rotate(n){const t=v1(n),e=Math.cos(t),s=Math.sin(t),i=this._m[0]*e+this._m[2]*s,o=this._m[1]*e+this._m[3]*s,a=this._m[0]*-s+this._m[2]*e,c=this._m[1]*-s+this._m[3]*e;return this._m[0]=i,this._m[1]=o,this._m[2]=a,this._m[3]=c,this}getTranslation(){return{x:this._m[4],y:this._m[5]}}skew(n,t){const e=this._m[0]+this._m[2]*t,s=this._m[1]+this._m[3]*t,i=this._m[2]+this._m[0]*n,o=this._m[3]+this._m[1]*n;return this._m[0]=e,this._m[1]=s,this._m[2]=i,this._m[3]=o,this}multiply(n){const t=this._m[0]*n._m[0]+this._m[2]*n._m[1],e=this._m[1]*n._m[0]+this._m[3]*n._m[1],s=this._m[0]*n._m[2]+this._m[2]*n._m[3],i=this._m[1]*n._m[2]+this._m[3]*n._m[3],o=this._m[0]*n._m[4]+this._m[2]*n._m[5]+this._m[4],a=this._m[1]*n._m[4]+this._m[3]*n._m[5]+this._m[5];return this._m[0]=t,this._m[1]=e,this._m[2]=s,this._m[3]=i,this._m[4]=o,this._m[5]=a,this}invert(){const n=1/(this._m[0]*this._m[3]-this._m[1]*this._m[2]),t=this._m[3]*n,e=-this._m[1]*n,s=-this._m[2]*n,i=this._m[0]*n,o=n*(this._m[2]*this._m[5]-this._m[3]*this._m[4]),a=n*(this._m[1]*this._m[4]-this._m[0]*this._m[5]);return this._m[0]=t,this._m[1]=e,this._m[2]=s,this._m[3]=i,this._m[4]=o,this._m[5]=a,this}getMatrix(){return this._m}getMatrixByAccurate(n=3){return this._m.map(t=>Y2(t,n))}setAbsolutePosition(n){const t=this._m[0],e=this._m[1],s=this._m[2],i=this._m[3],o=this._m[4],a=this._m[5],c=(t*(n.y-a)-e*(n.x-o))/(t*i-e*s),u=(n.x-o-s*c)/t;return this.translate(u,c)}decompose(){const n=this._m[0],t=this._m[1],e=this._m[2],s=this._m[3],i=this._m[4],o=this._m[5],a=n*s-t*e,c={x:i,y:o,angle:0,scaleX:0,scaleY:0,skewX:0,skewY:0};if(n!==0||t!==0){const u=Math.sqrt(n*n+t*t);c.angle=t>0?Math.acos(n/u):-Math.acos(n/u),c.scaleX=u,c.scaleY=a/u,c.skewX=(n*e+t*s)/a,c.skewY=0}else if(e!==0||s!==0){const u=Math.sqrt(e*e+s*s);c.angle=Math.PI/2-(s>0?Math.acos(-e/u):-Math.acos(e/u)),c.scaleX=a/u,c.scaleY=u,c.skewX=0,c.skewY=(n*e+t*s)/a}return c.angle=Q7(c.angle),c}makeBoundingBoxFromPoints(n){if(this)for(let l=0;l<n.length;l++)n[l]=this.applyPoint(n[l]);const t=[n[0].x,n[1].x,n[2].x,n[3].x],e=Math.min(...t),i=Math.max(...t)-e,o=[n[0].y,n[1].y,n[2].y,n[3].y],a=Math.min(...o),u=Math.max(...o)-a;return{left:e,top:a,width:i,height:u,points:n}}composeMatrix(n){const t=new o1([1,0,0,1,n.left||0,n.top||0]);return n.angle&&t.rotate(n.angle),(n.scaleX!==1||n.scaleY!==1||n.skewX||n.skewY||n.flipX||n.flipY)&&t.multiply(this._calcDimensionsMatrix(n)),this._m=t.getMatrix(),this}clone(){return new o1([...this._m])}_calcDimensionsMatrix(n){var i,o;const t=(i=n.scaleX)!=null?i:1,e=(o=n.scaleY)!=null?o:1,s=new o1([n.flipX?-t:t,0,0,n.flipY?-e:e,0,0]);return n.skewX&&s.multiply(new o1([1,0,Math.tan(v1(n.skewX)),1,0,0])),n.skewY&&s.multiply(new o1([1,Math.tan(v1(n.skewY)),0,1,0,0])),s}}const W2=["top","left","width","height","angle","scaleX","scaleY","skewX","skewY","flipX","flipY","strokeWidth"];class I1{constructor(n){h(this,"groupKey");h(this,"isInGroup",!1);h(this,"onTransformChangeObservable",new d.Observable);h(this,"onPointerDownObserver",new d.Observable);h(this,"onPointerMoveObserver",new d.Observable);h(this,"onPointerUpObserver",new d.Observable);h(this,"onDblclickObserver",new d.Observable);h(this,"onTripleClickObserver",new d.Observable);h(this,"onMouseWheelObserver",new d.Observable);h(this,"onPointerOutObserver",new d.Observable);h(this,"onPointerLeaveObserver",new d.Observable);h(this,"onPointerOverObserver",new d.Observable);h(this,"onPointerEnterObserver",new d.Observable);h(this,"onIsAddedToParentObserver",new d.Observable);h(this,"onDisposeObserver",new d.Observable);h(this,"_oKey");h(this,"_dirty",!0);h(this,"_top",0);h(this,"_topOrigin",0);h(this,"_left",0);h(this,"_leftOrigin",0);h(this,"_width",0);h(this,"_widthOrigin",0);h(this,"_height",0);h(this,"_heightOrigin",0);h(this,"_angle",0);h(this,"_scaleX",1);h(this,"_scaleY",1);h(this,"_skewX",0);h(this,"_skewY",0);h(this,"_flipX",!1);h(this,"_flipY",!1);h(this,"_strokeWidth",0);h(this,"_parent");h(this,"_zIndex",0);h(this,"_evented",!0);h(this,"_visible",!0);h(this,"_debounceParentDirty",!0);h(this,"_transform",new o1);h(this,"_cursor",r1.DEFAULT);h(this,"_isTransformer",!1);h(this,"_forceRender",!1);h(this,"_layer");n?this._oKey=n:this._oKey=e4()}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 N.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 t;const n=((t=this.getParent())==null?void 0:t.ancestorScaleX)||1;return this.scaleX*n}get ancestorScaleY(){var t;const n=((t=this.getParent())==null?void 0:t.ancestorScaleY)||1;return this.scaleY*n}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(n){this._transform=n}set zIndex(n){this._zIndex=n}set parent(n){this._parent=n}set evented(n){this._evented=n}set debounceParentDirty(n){this._debounceParentDirty=n}set isTransformer(n){this._isTransformer=n}set cursor(n){this.setCursor(n)}set layer(n){this._layer=n}set top(n){var t;this._topOrigin=n,this._top=w1(n,(t=this._parent)==null?void 0:t.height)}set left(n){var t;this._leftOrigin=n,this._left=w1(n,(t=this._parent)==null?void 0:t.width)}set width(n){var t;this._widthOrigin=n,this._width=w1(n,(t=this._parent)==null?void 0:t.width)}set height(n){var t;this._heightOrigin=n,this._height=w1(n,(t=this._parent)==null?void 0:t.height)}set strokeWidth(n){this._strokeWidth=n}set angle(n){this._angle=n}set scaleX(n){this._scaleX=n}set scaleY(n){this._scaleY=n}set skewX(n){this._skewX=n}set flipY(n){this._flipY=n}set flipX(n){this._flipX=n}set skewY(n){this._skewY=n}makeDirty(n=!0){if(this._dirty=n,n){if(this._layer==null){this._dirty=!1;return}typeof this._layer.debounceParentTimeout=="function"&&this._layer.debounceParentTimeout(),this._layer.debounceParentTimeout=d.requestImmediateMacroTask(()=>{var t;(t=this._layer)==null||t.makeDirty(n)})}return this}makeDirtyNoDebounce(n=!0){var t;return this._dirty=n,n&&((t=this._layer)==null||t.makeDirty(n)),this}isDirty(){return this._dirty}translate(n,t){const e=this.top;t!==void 0&&(this.top=t);const s=this.left;return n!==void 0&&(this.left=n),this._setTransForm(),this.onTransformChangeObservable.notifyObservers({type:i1.translate,value:{top:this._top,left:this._left},preValue:{top:e,left:s}}),this}resize(n,t){const e=this.width;n!==void 0&&(this.width=n);const s=this.height;return t!==void 0&&(this.height=t),this._setTransForm(),this.onTransformChangeObservable.notifyObservers({type:i1.resize,value:{width:this._width,height:this._height},preValue:{width:e,height:s}}),this}scale(n,t){const e=this.scaleX;n!==void 0&&(this.scaleX=n);const s=this.scaleY;return t!==void 0&&(this.scaleY=t),this._setTransForm(),this.onTransformChangeObservable.notifyObservers({type:i1.scale,value:{scaleX:this._scaleX,scaleY:this._scaleY},preValue:{scaleX:e,scaleY:s}}),this}skew(n,t){const e=n;n!==void 0&&(this.skewX=n);const s=t;return t!==void 0&&(this.skewY=t),this._setTransForm(),this.onTransformChangeObservable.notifyObservers({type:i1.skew,value:{skewX:this._skewX,skewY:this._skewY},preValue:{skewX:e,skewY:s}}),this}flip(n,t){const e=n;n!==void 0&&(this.flipX=n);const s=t;return t!==void 0&&(this.flipY=t),this._setTransForm(),this.onTransformChangeObservable.notifyObservers({type:i1.flip,value:{flipX:this._flipX,flipY:this._flipY},preValue:{flipX:e,flipY:s}}),this}transformByState(n){const t=Object.keys(n),e={};if(t.length!==0)return t.forEach(s=>{n[s]!==void 0&&(e[s]=this[s],this[s]=n[s])}),this._setTransForm(),this.onTransformChangeObservable.notifyObservers({type:i1.all,value:n,preValue:e}),this}isRender(n){return this._forceRender?!1:n&&!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(n,t){}isHit(n){const t=this._getInverseCoord(n);return t.x>=-this.strokeWidth/2&&t.x<=this.width+this.strokeWidth/2&&t.y>=-this.strokeWidth/2&&t.y<=this.height+this.strokeWidth/2}on(n,t){return this[`on${n}Observer`].add(t.bind(this))}off(n,t){this[`on${n}Observer`].remove(t)}clear(n){this[`on${n}Observer`].clear()}triggerPointerMove(n){var t,e;return(t=this.onPointerMoveObserver.notifyObservers(n))!=null&&t.stopPropagation?!0:((e=this._parent)==null||e.triggerPointerMove(n),!1)}triggerPointerDown(n){var t,e;return(t=this.onPointerDownObserver.notifyObservers(n))!=null&&t.stopPropagation?!0:((e=this._parent)==null||e.triggerPointerDown(n),!1)}triggerPointerUp(n){var t,e;return(t=this.onPointerUpObserver.notifyObservers(n))!=null&&t.stopPropagation?!0:((e=this._parent)==null||e.triggerPointerUp(n),!1)}triggerDblclick(n){var t,e;return(t=this.onDblclickObserver.notifyObservers(n))!=null&&t.stopPropagation?!0:((e=this._parent)==null||e.triggerDblclick(n),!1)}triggerTripleClick(n){var t,e;return(t=this.onTripleClickObserver.notifyObservers(n))!=null&&t.stopPropagation?!0:((e=this._parent)==null||e.triggerTripleClick(n),!1)}triggerMouseWheel(n){var t,e;return(t=this.onMouseWheelObserver.notifyObservers(n))!=null&&t.stopPropagation?!0:((e=this._parent)==null||e.triggerMouseWheel(n),!1)}triggerPointerOut(n){var t,e;return(t=this.onPointerOutObserver.notifyObservers(n))!=null&&t.stopPropagation?!0:((e=this._parent)==null||e.triggerPointerOut(n),!1)}triggerPointerLeave(n){var t,e;return(t=this.onPointerLeaveObserver.notifyObservers(n))!=null&&t.stopPropagation?!0:((e=this._parent)==null||e.triggerPointerLeave(n),!1)}triggerPointerOver(n){var t;return this.onPointerOverObserver.notifyObservers(n)?!0:((t=this._parent)==null||t.triggerPointerOver(n),!1)}triggerPointerEnter(n){var t,e;return(t=this.onPointerEnterObserver.notifyObservers(n))!=null&&t.stopPropagation?!0:((e=this._parent)==null||e.triggerPointerEnter(n),!1)}dispose(){var n;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(),(n=this.parent)==null||n.removeObject(this),this.onDisposeObserver.notifyObservers(this),this._makeDirtyMix(),this.onDisposeObserver.clear()}toJson(){const n={};return W2.forEach(t=>{this[t]&&(n[t]=this[t])}),n}getScene(){let n=this.parent;if(n!=null){if(n.classType===N.SCENE)return n;for(;n;){if(n.classType===N.SCENE)return n;n=n.getParent()}}}resetCursor(){var n;(n=this.getScene())==null||n.resetCursor()}setCursor(n){var t;this._cursor=n,(t=this.getScene())==null||t.setCursor(n)}getEngine(){let n=this.getParent();for(;n!=null;){if(n===N.ENGINE)return n;n=n.getParent()}return null}getObjects(){return[]}_getInverseCoord(n){return this._transform.clone().invert().applyPoint(n)}_setTransForm(){const n=o1.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=n,this._makeDirtyMix()}_makeDirtyMix(){this.debounceParentDirty?this.makeDirty(!0):this.makeDirtyNoDebounce(!0)}}var h4=(r=>(r[r.SPAN=0]="SPAN",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))(h4||{}),n2=(r=>(r[r.SECTION=0]="SECTION",r[r.PAGE=1]="PAGE",r[r.COLUMN=2]="COLUMN",r))(n2||{}),A2=(r=>(r[r.PARAGRAPH=0]="PARAGRAPH",r[r.BLOCK=1]="BLOCK",r))(A2||{}),u1=(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))(u1||{}),T1=(r=>(r[r.VERTICAL=0]="VERTICAL",r[r.HORIZONTAL=1]="HORIZONTAL",r[r.AUTO=2]="AUTO",r))(T1||{});function cD(r){var e;const n=r==null?void 0:r.parent;return n==null?!1:((e=n.spanGroup[0])==null?void 0:e.spanType)===u1.LIST}function lD(r,n){const t=D4(r,n);if(t==null)return!1;const{paragraphStyle:e}=t;return e==null?!1:d.checkParagraphHasIndentByStyle(e)}function hD(r){const n=r==null?void 0:r.parent,t=n==null?void 0:n.parent,e=n==null?void 0:n.spanGroup,s=t==null?void 0:t.divides;if(e&&r&&s&&n){const i=e.indexOf(r);if(s.indexOf(n)===s.length-1&&i===e.length-1)return!0}return!1}function DD(r){const n=r==null?void 0:r.parent,t=n==null?void 0:n.parent,e=n==null?void 0:n.spanGroup,s=t==null?void 0:t.divides;if(e&&r&&s&&n){const i=e.indexOf(r),o=s.indexOf(n);if(o===0&&i===0||o===0&&i===1&&e[0].spanType===u1.LIST)return!0}return!1}function D4(r,n){var s;const t=(s=r==null?void 0:r.parent)==null?void 0:s.parent;if(t==null||n==null)return;const e=n.paragraphs;if(e!=null){for(const i of e)if(i.startIndex===t.paragraphIndex)return i}}function _D(r){return r==null?!1:[d.DataStreamTreeTokenType.PARAGRAPH,d.DataStreamTreeTokenType.TAB,d.DataStreamTreeTokenType.SECTION_BREAK].indexOf(r.streamType)!==-1||r.content===d.DataStreamTreeTokenType.SPACE}function dD(r,n){return r==null||n==null||r.parent==null||n.parent==null?!1:r.parent.parent===n.parent.parent}function H6(){let r=1;const t=P6().getContext("2d");return r=(()=>{const e=window.devicePixelRatio||1,s=t.webkitBackingStorePixelRatio||t.mozBackingStorePixelRatio||t.msBackingStorePixelRatio||t.oBackingStorePixelRatio||t.backingStorePixelRatio||1;return e/s})(),r<1?1:r}function X6(r,n,t){let e=0,s=0,i=0,o=0;const{startX:a,startY:c,endX:u,endY:l}=t;n===J.TOP?(e=a,s=c,i=u,o=c):n===J.BOTTOM?(e=a,s=l,i=u,o=l):n===J.LEFT?(e=a,s=c,i=a,o=l):n===J.RIGHT&&(e=u,s=c,i=u,o=l),r.beginPath(),r.moveTo(e,s),r.lineTo(i,o),r.stroke()}function _4(r,n,t){let e=0,s=0,i=0,o=0;const{startX:a,startY:c,endX:u,endY:l}=t;n===J.TL_BR?(e=a,s=c,i=u,o=l):n===J.TL_BC?(e=a,s=c,i=(a+u)/2,o=l):n===J.TL_MR?(e=a,s=c,i=u,o=(c+l)/2):n===J.BL_TR?(e=a,s=l,i=u,o=c):n===J.ML_TR?(e=a,s=(c+l)/2,i=u,o=c):n===J.BC_TR&&(e=(a+u)/2,s=l,i=u,o=c),r.beginPath(),r.moveTo(e,s),r.lineTo(i,o),r.stroke()}function d4(r,n,t){let e=0,s=0,i=0,o=0;const{startX:a,startY:c,endX:u,endY:l}=t;n===J.TOP?(e=a,s=c,i=u,o=c):n===J.BOTTOM?(e=a,s=l,i=u,o=l):n===J.LEFT?(e=a,s=c,i=a,o=l):n===J.RIGHT&&(e=u,s=c,i=u,o=l),r.beginPath(),r.clearRectForTexture(e,s,i-e,o-s)}function Y6(r,n){n===d.BorderStyleTypes.HAIR?r.setLineDash([1,2]):n===d.BorderStyleTypes.DASH_DOT_DOT||n===d.BorderStyleTypes.MEDIUM_DASH_DOT_DOT?r.setLineDash([2,2,5,2,2]):n===d.BorderStyleTypes.DASH_DOT||n===d.BorderStyleTypes.MEDIUM_DASH_DOT||n===d.BorderStyleTypes.SLANT_DASH_DOT?r.setLineDash([2,5,2]):n===d.BorderStyleTypes.DOTTED?r.setLineDash([2]):n===d.BorderStyleTypes.DASHED||n===d.BorderStyleTypes.MEDIUM_DASHED?r.setLineDash([3]):r.setLineDash([0])}function f4(){const r=g4(1);return r-Math.floor(r)}function g4(r){return Math.ceil(r/H6()*100)/100}function z6(r){let n=1;return r===d.BorderStyleTypes.MEDIUM||r===d.BorderStyleTypes.MEDIUM_DASH_DOT||r===d.BorderStyleTypes.MEDIUM_DASHED||r===d.BorderStyleTypes.MEDIUM_DASH_DOT_DOT?n=2:r===d.BorderStyleTypes.THICK&&(n=3),n}function v2(r,n,t,e,s=I.create(0,0)){const i=r.add(n).rotateByPoint(e),o=i.subtract(n),a=e-t;return o.rotateByPoint(a,i).add(s).transformCoordinateOnRotate(a)}function p4(r){return r>0?E2.DOWN:E2.UP}function W6(r,n,t){var F;const e=[];let s=0,i=0,o=0,a=0,c=0;const u=p4(t),l=r.length;t=Math.abs(t);const D=Math.tan(t),f=Math.sin(t),p=Math.cos(t);if(u===E2.UP){let E=0;for(let m=0;m<l;m++){const b=r[m],{lineHeight:S=0}=b;E+=m===0?0:S;const v=n*f+S*p;e.push(E/D),v>i&&(i=v),m===0&&(o+=S*f,c+=S*p)}o+=E/f+n*p,c-=i}else{let E=0,m=-1;const b=[];for(let y=l-1;y>=0;y--){const T=r[y],{lineHeight:B=0}=T,O=B/D,w=(n+O)*f;b.unshift(B/D),w>i&&(i=w,E=O,m=y),y===0?o+=B*f:y===l-1?o+=n*p+B/f:o+=B/f}let S=((F=r[m])==null?void 0:F.lineHeight)||0,v=0;for(let y=m+1;y<=l-1;y++){const T=r[y],{lineHeight:B=0}=T;S+=B,v+=b[y]||0,e[y]=-v}v=0;for(let y=m-1;y>=0;y--){const T=r[y],{lineHeight:B=0}=T;v+=b[y+1]||0,e[y]=v,s+=B}e[m]=0,l===1&&(o+=n*p),a=S/f-E*p}return{rotateTranslateXList:e,rotatedHeight:i,rotatedWidth:o,fixOffsetX:a,fixOffsetY:c,rotateTranslateY:s}}function fD(){const r=.5-f4();return{left:r,top:r}}var m4=(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))(m4||{});class N2{}h(N2,"DOM_DELTA_PIXEL",0),h(N2,"DOM_DELTA_LINE",1),h(N2,"DOM_DELTA_PAGE",2);var d1=(r=>(r[r.Generic=0]="Generic",r[r.Keyboard=1]="Keyboard",r[r.Mouse=2]="Mouse",r[r.Touch=3]="Touch",r))(d1||{}),M=(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))(M||{});const F4=[new I(0,0),new I(1,1)];class C4{constructor(n=F4){this._lines=n}intersection(n){if(this._lines.length<1||n.length<1)return;const t=[];for(let e=1;e<this._lines.length;e++){const s=this._lines[e-1],i=this._lines[e];for(let o=1;o<n.length;o++){const a=this._lines[e-1],c=this._lines[e],u=this._intersection({from:s,to:i},{from:a,to:c});u&&t.push(u)}}return t}_intersection(n,t){const e=n.from,s=n.to,i=t.from,o=t.to,a=(e.x-i.x)*(s.y-i.y)-(e.y-i.y)*(s.x-i.x),c=(e.x-o.x)*(s.y-o.y)-(e.y-o.y)*(s.x-o.x);if(a*c>=0)return!1;const u=(i.x-e.x)*(o.y-e.y)-(i.y-e.y)*(o.x-e.x),l=u+a-c;if(u*l>=0)return!1;const D=u/(c-a),f=D*(s.x-e.x),p=D*(s.y-e.y);return new I(e.x+f,e.y+p)}}class E4{constructor(n=30){h(this,"_enabled",!0);h(this,"_rollingFrameTime");h(this,"_lastFrameTimeMs");this._rollingFrameTime=new b4(n)}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 n=this._rollingFrameTime.history(0);return n===0?0:1e3/n}get isSaturated(){return this._rollingFrameTime.isSaturated()}get isEnabled(){return this._enabled}sampleFrame(n=this.Now()){if(this._enabled){if(this._lastFrameTimeMs!=null){const t=n-this._lastFrameTimeMs;this._rollingFrameTime.add(t)}this._lastFrameTimeMs=n}}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 b4{constructor(n){h(this,"average",0);h(this,"variance",0);h(this,"_samples",[]);h(this,"_sampleCount",0);h(this,"_pos",0);h(this,"_m2",0);this._samples=new Array(n),this.reset()}add(n){let t;if(this.isSaturated()){const e=this._samples[this._pos];t=e-this.average,this.average-=t/(this._sampleCount-1),this._m2-=t*(e-this.average)}else this._sampleCount++;t=n-this.average,this.average+=t/this._sampleCount,this._m2+=t*(n-this.average),this.variance=this._m2/(this._sampleCount-1),this._samples[this._pos]=n,this._pos++,this._pos%=this._samples.length}history(n){if(n>=this._sampleCount||n>=this._samples.length)return 0;const t=this._wrapPosition(this._pos-1);return this._samples[this._wrapPosition(t-n)]}isSaturated(){return this._sampleCount>=this._samples.length}reset(){this.average=0,this.variance=0,this._sampleCount=0,this._pos=0,this._m2=0}_wrapPosition(n){const t=this._samples.length;return(n%t+t)%t}}const T2={strokeWidth:1,stroke:"rgba(0, 0, 0, 0)",strokeActive:"rgba(0, 0, 0, 1)",fill:"rgba(0, 0, 0, 0.2)"};var m2=(r=>(r.NONE="none",r.BACKWARD="backward",r.FORWARD="forward",r))(m2||{});function t2(r){const n=r.getScene(),t=r.getViewportByCoord(n),e=0,s=0;if(!t)return{scrollX:e,scrollY:s};const i=t.getActualScroll(t.scrollX,t.scrollY);return{scrollX:i.x,scrollY:i.y}}const z1=90;function S4(r){const{a:n=0,v:t=d.BooleanNumber.FALSE}=r;let e=0,s=n;return t===d.BooleanNumber.TRUE&&(e=z1,s=z1),{centerAngle:e,vertexAngle:s}}class j6{constructor(n){h(this,"canvas");h(this,"_context");this._context=n,this.canvas=n.canvas}get globalAlpha(){return this._context.globalAlpha}set globalAlpha(n){this._context.globalAlpha=n}get globalCompositeOperation(){return this._context.globalCompositeOperation}set globalCompositeOperation(n){this._context.globalCompositeOperation=n}get fillStyle(){return this._context.fillStyle}set fillStyle(n){this._context.fillStyle=n}get strokeStyle(){return this._context.strokeStyle}set strokeStyle(n){this._context.strokeStyle=n}get filter(){return this._context.filter}set filter(n){this._context.filter=n}get imageSmoothingEnabled(){return this._context.imageSmoothingEnabled}set imageSmoothingEnabled(n){this._context.imageSmoothingEnabled=n}get imageSmoothingQuality(){return this._context.imageSmoothingQuality}set imageSmoothingQuality(n){this._context.imageSmoothingQuality=n}get lineCap(){return this._context.lineCap}set lineCap(n){this._context.lineCap=n}get lineDashOffset(){return this._context.lineDashOffset}set lineDashOffset(n){this._context.lineDashOffset=n}get lineJoin(){return this._context.lineJoin}set lineJoin(n){this._context.lineJoin=n}get lineWidth(){return this._context.lineWidth}set lineWidth(n){const{scaleX:t,scaleY:e}=this._getScale();this._context.lineWidth=n/Math.max(t,e)}setLineWidthNative(n){this._context.lineWidth=n}get miterLimit(){return this._context.miterLimit}set miterLimit(n){this._context.miterLimit=n}get shadowBlur(){return this._context.shadowBlur}set shadowBlur(n){this._context.shadowBlur=n}get shadowColor(){return this._context.shadowColor}set shadowColor(n){this._context.shadowColor=n}get shadowOffsetX(){return this._context.shadowOffsetX}set shadowOffsetX(n){this._context.shadowOffsetX=n}get shadowOffsetY(){return this._context.shadowOffsetY}set shadowOffsetY(n){this._context.shadowOffsetY=n}get direction(){return this._context.direction}set direction(n){this._context.direction=n}get font(){return this._context.font}set font(n){this._context.font=n}get fontKerning(){return this._context.fontKerning}set fontKerning(n){this._context.fontKerning=n}get textAlign(){return this._context.textAlign}set textAlign(n){this._context.textAlign=n}get textBaseline(){return this._context.textBaseline}set textBaseline(n){this._context.textBaseline=n}_getScale(){const n=this.getTransform();return{scaleX:n.a,scaleY:n.d}}getContextAttributes(){return this._context.getContextAttributes()}isPointInStroke(...n){return this._context.isPointInStroke(...n)}createConicGradient(n,t,e){return this._context.createConicGradient(n,t,e)}roundRect(n,t,e,s,i){const{scaleX:o,scaleY:a}=this._getScale();n=H(n,o),t=H(t,a),e=H(e,o),s=H(s,a),this._context.roundRect(n,t,e,s,i)}getTransform(){return this._context.getTransform()}resetTransform(){this._context.resetTransform()}drawFocusIfNeeded(...n){return this._context.drawFocusIfNeeded(...n)}reset(){this._context.reset()}arc(n,t,e,s,i,o){const{scaleX:a,scaleY:c}=this._getScale();n=H(n,a),t=H(t,c),this._context.arc(n,t,e,s,i,o)}arcTo(n,t,e,s,i){const{scaleX:o,scaleY:a}=this._getScale();n=H(n,o),t=H(t,a),e=H(e,o),s=H(s,a),this._context.arcTo(n,t,e,s,i)}beginPath(){this._context.beginPath()}bezierCurveTo(n,t,e,s,i,o){const{scaleX:a,scaleY:c}=this._getScale();i=H(i,a),o=H(o,c),n=H(n,a),t=H(t,c),e=H(e,a),s=H(s,c),this._context.bezierCurveTo(n,t,e,s,i,o)}clearRect(n,t,e,s){const{scaleX:i,scaleY:o}=this._getScale();n=H(n,i),t=H(t,o),e=H(e,i),s=H(s,o),this._context.clearRect(n,t,e,s)}clip(...n){this._context.clip(...n)}closePath(){this._context.closePath()}createImageData(...n){if(n.length===0)throw new Error("arguments is zero");return n.length===1?this._context.createImageData(n[0]):n.length===2?this._context.createImageData(n[0],n[1]):this._context.createImageData(n[0],n[1],n[1])}createLinearGradient(n,t,e,s){return this._context.createLinearGradient(n,t,e,s)}createPattern(n,t){return this._context.createPattern(n,t)}createRadialGradient(n,t,e,s,i,o){return this._context.createRadialGradient(n,t,e,s,i,o)}drawImage(...n){const t=n,e=this._context;t.length===3?e.drawImage(n[0],n[1],n[2]):t.length===5?e.drawImage(n[0],n[1],n[2],n[3],n[4]):t.length===9&&e.drawImage(n[0],n[1],n[2],n[3],n[4],n[5],n[6],n[7],n[8])}ellipse(n,t,e,s,i,o,a,c){this._context.ellipse(n,t,e,s,i,o,a,c)}isPointInPath(...n){return this._context.isPointInPath(...n)}fill(...n){this._context.fill(...n)}fillRect(n,t,e,s){const{scaleX:i,scaleY:o}=this._getScale();n=H(n,i),t=H(t,o),e=H(e,i),s=H(s,o),this._context.fillRect(n,t,e,s)}strokeRect(n,t,e,s){const{scaleX:i,scaleY:o}=this._getScale();n=H(n,i),t=H(t,o),e=H(e,i),s=H(s,o),this._context.strokeRect(n,t,e,s)}fillText(n,t,e,s){s?this._context.fillText(n,t,e,s):this._context.fillText(n,t,e)}fillTextPrecision(n,t,e,s){const{scaleX:i,scaleY:o}=this._getScale();t=H(t,i),e=H(e,o),s?(s=H(s,i),this._context.fillText(n,t,e,s)):this._context.fillText(n,t,e)}measureText(n){return this._context.measureText(n)}getImageData(n,t,e,s){return this._context.getImageData(n,t,e,s)}lineTo(n,t){const{scaleX:e,scaleY:s}=this._getScale();n=H(n,e),t=H(t,s),this._context.lineTo(n,t)}moveTo(n,t){const{scaleX:e,scaleY:s}=this._getScale();n=H(n,e),t=H(t,s),this._context.moveTo(n,t)}rect(n,t,e,s){const{scaleX:i,scaleY:o}=this._getScale();n=H(n,i),t=H(t,o),e=H(e,i),s=H(s,o),this._context.rect(n,t,e,s)}putImageData(n,t,e){this._context.putImageData(n,t,e)}quadraticCurveTo(n,t,e,s){this._context.quadraticCurveTo(n,t,e,s)}restore(){this._context.restore()}rotate(n){this._context.rotate(n)}save(){this._context.save()}scale(n,t){this._context.scale(n,t)}setLineDash(n){this._context.setLineDash?this._context.setLineDash(n):"mozDash"in this._context?this._context.mozDash=n:"webkitLineDash"in this._context&&(this._context.webkitLineDash=n)}getLineDash(){return this._context.getLineDash()}setTransform(...n){this._context.setTransform(...n)}stroke(n){n?this._context.stroke(n):this._context.stroke()}strokeText(n,t,e,s){const{scaleX:i,scaleY:o}=this._getScale();t=H(t,i),e=H(e,o),s&&(s=H(s,i)),this._context.strokeText(n,t,e,s)}transform(n,t,e,s,i,o){this._context.transform(n,t,e,s,i,o)}translate(n,t){this._context.translate(n,t)}translateWithPrecision(n,t){const{scaleX:e,scaleY:s}=this._getScale();n=H(n,e),t=H(t,s),this._context.translate(n,t)}translateWithPrecisionRatio(n,t){const{scaleX:e,scaleY:s}=this._getScale();this._context.translate(n/e,t/s)}clearRectForTexture(n,t,e,s){this.clearRect(n,t,e,s)}setGlobalCompositeOperation(n){this._context.globalCompositeOperation=n}}class gD{}class pD{}class v4 extends j6{}class T4 extends j6{__getScale(){const n=this.getTransform();return{scaleX:n.a,scaleY:n.d}}clearRect(n,t,e,s){const{scaleX:i,scaleY:o}=this.__getScale();n=H(n,i),t=H(t,o),e=H(e,i),s=H(s,o),this._context.save(),this._context.fillStyle=l1([255,255,255]),this._context.fillRect(n,t,e,s),this._context.restore()}clearRectForTexture(n,t,e,s){}setGlobalCompositeOperation(n){}}var y4=(r=>(r[r.Rendering=0]="Rendering",r[r.Printing=1]="Printing",r))(y4||{});class o2{constructor(n){h(this,"isCache",!1);h(this,"_pixelRatio",1);h(this,"_canvasEle");h(this,"_context");h(this,"_width",0);h(this,"_height",0);n=n||{},this._canvasEle=P6(),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.tabIndex=1,this._canvasEle.style.touchAction="none",this._canvasEle.style.outline="0";const t=this._canvasEle.getContext("2d");if(t==null)throw new Error("context is not support");n.mode===1?this._context=new T4(t):this._context=new v4(t),this.setSize(n.width,n.height,n.pixelRatio)}getCanvasEle(){return this._canvasEle}getContext(){return this._context}getPixelRatio(){return this._pixelRatio}getWidth(){return this._width}getHeight(){return this._height}setSize(n,t,e){this._pixelRatio=e||H6(),n&&(this._canvasEle.width=n*this._pixelRatio,this._width=this._canvasEle.width/this._pixelRatio,this._canvasEle.style.width=`${this._width}px`),t&&(this._canvasEle.height=t*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(n){this._width===0||this._height===0||(n<1&&(n=1),this.setSize(this._width,this._height,n))}dispose(){this.clear(),this._canvasEle.remove()}clear(){this.getContext().clearRect(0,0,this._width*this._pixelRatio,this._height*this._pixelRatio)}toDataURL(n,t){try{return this._canvasEle.toDataURL(n,t)}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 mD extends o2{constructor(n={width:0,height:0}){super(n),this.setSize(n.width,n.height)}}class FD extends o2{constructor(t={width:0,height:0}){super(t);h(this,"hitCanvas",!0);this.setSize(t.width,t.height)}}class G6 extends I1{constructor(){super(...arguments);h(this,"_extensions",new Map)}get extensions(){return this._extensions}register(...t){for(const e of t)e.parent=this,this._extensions.set(e.uKey,e)}unRegister(...t){for(const e of t)this._extensions.delete(e)}getExtensionsByOrder(){const t=Array.from(this._extensions.values());return t.sort(d.sortRules),t}getExtensionByKey(t){return this._extensions.get(t)}draw(t,e){}}function B4(){return[]}function O4(r,n,t){return CD(r,n,t)}function CD(r,n,t){return t===d.GlyphType.DECIMAL?S7(r,n):t===d.GlyphType.ZERO_DECIMAL?ED(r,n):t===d.GlyphType.UPPER_ALPHA?bD(r,n):t===d.GlyphType.ALPHA?SD(r,n):t===d.GlyphType.UPPER_ROMAN?vD(r,n):t===d.GlyphType.ROMAN?TD(r,n):S7(r,n)}function S7(r,n){return(r+n).toString()}function ED(r,n){const t=r+n;return t<10?`0${t}`:t.toString()}function bD(r,n){return d.numberToListABC(r+n-1,!0)}function SD(r,n){return d.numberToListABC(r+n-1,!1)}function vD(r,n){return w4(r+n,!0)}function TD(r,n){return w4(r+n,!1)}function w4(r,n=!1){const t={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};n&&(s=t);let i="";for(const o in s)for(;r>=s[o];)i+=o,r-=s[o];return i}function A4(r,n,t,e){var D,f;if(!r||!n)return;const{listId:s,listType:i,nestingLevel:o=0,textStyle:a}=r,c=n[i];return!c||!c.nestingLevel?b6(s,(D=t==null?void 0:t[o])==null?void 0:D.startIndexItem):c.nestingLevel[o]?yD(s,o,c.nestingLevel,t,a):b6(s,(f=t==null?void 0:t[o])==null?void 0:f.startIndexItem)}function b6(r,n=1){return{listId:r,symbol:"●",ts:{ff:"Arial",fs:9},startIndexItem:n,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 yD(r,n,t,e,s,i){var T,B;const o=t[n],{bulletAlignment:a,glyphFormat:c,textStyle:u,startNumber:l,glyphType:D,glyphSymbol:f,indentFirstLine:p,hanging:F,indentStart:E}=o,m={...s,...u},b=S2(m);let S;f?S=f:S=BD(c,n,t,e);const v=O1.getTextSize(S,b),y=(B=(T=e==null?void 0:e[n])==null?void 0:T.startIndexItem)!=null?B:1;return{listId:r,symbol:S,ts:m,fontStyle:b,startIndexItem:y+1,bBox:v,nestingLevel:o,bulletAlign:a,bulletType:f?!1:!!D,indentFirstLine:p,hanging:F,indentStart:E}}function BD(r,n,t,e){var a;const s=r.split("%"),o=[s[0]];for(let c=1;c<s.length;c++){const u=s[c],{level:l,suffix:D}=wD(u);let f=((a=e==null?void 0:e[l])==null?void 0:a.startIndexItem)||1;l!==n&&(e==null?void 0:e[l])!==null&&(f-=1);const p=OD(f,t[l]);o.push(p,D)}return o.join("")}function OD(r=1,n){const{startNumber:t,glyphType:e,glyphSymbol:s}=n;return s||(e?O4(r,t,e):"●")}function wD(r){if(r==="")return{level:0,suffix:""};const n=r.split("");let t="",e="",s=!1;const i=/[0-9]/g;return n.forEach(o=>{!s&&i.test(`${t}${o}`)?t+=o:(s=!0,e+=o)}),{level:Number.parseInt(t)-1,suffix:e}}function I4(r,n,t,e,s){return[]}function U1(r){return r[r.length-1]}function a2(r){var n;return(n=r.sections)==null?void 0:n[r.sections.length-1]}function AD(r){const n=a2(r).columns;return n==null?void 0:n[n.length-1]}function R4(r){var t;const n=(t=y2(r))==null?void 0:t.column.lines;return n==null?void 0:n[n.length-1]}function x4(r){return r.lines[r.lines.length-1]}function ID(r){const{pageWidth:n,marginLeft:t,marginRight:e}=r;return n-t-e}function RD(r){const n=r.parent,t=n==null?void 0:n.lines.indexOf(r);if(!(!t||t===-1||t-1<0))return n==null?void 0:n.lines[t-1]}function xD(r){var t;const n=(t=r.parent)==null?void 0:t.parent;if(n)return n}function y2(r){const n=a2(r);for(let t=0;t<n.columns.length;t++){const e=n.columns[t];if(!e.isFull)return{column:e,isLast:t===n.columns.length-1,index:t}}}function U6(r){const n=R4(r);if(n)for(let t=0;t<n.divides.length;t++){const e=n.divides[t];if(!e.isFull)return{divide:e,isLast:t===n.divides.length-1,index:t}}}function MD(r,n){const t=r.divides.indexOf(n);if(t!==-1)return r.divides[t+1]}function PD(r){if(r)for(let n=0;n<r.divides.length;n++){const t=r.divides[n],e=r.divides[n+1];if(t.spanGroup.length===0||!e||e.spanGroup.length===0)return t}}function LD(r){var t;const n=(t=U6(r))==null?void 0:t.divide.spanGroup;return n==null?void 0:n[n.length-1]}function M4(r){const n=a2(r),t=n.columns.length;for(let e=0;e<t;e++)if(!n.columns[e].isFull)return!1;return!0}function $D(r){if(r.sections.length>1)return!1;const n=a2(r),t=n.columns.length;for(let e=0;e<t;e++){const s=n.columns[e];if(!P4(s))return!1}return!0}function P4(r){const n=r.lines;if(n.length>1)return!1;const t=n[n.length-1];return ND(t)}function ND(r){if(!r)return!0;for(let n=0;n<r.divides.length;n++){const t=r.divides[n].spanGroup.length;if(t>1)return!1;if(t===1){const e=r.divides[n].spanGroup[0],{spanType:s}=e;if(s!==u1.TAB&&s!==u1.LIST)return!1}}return!0}function A1(r,n){if(r instanceof Object){const{v:t,u:e}=r;return e===d.NumberUnitType.POINT?t:t*n}return r}function e6(r=0,n,t=d.GridType.LINES,e=d.BooleanNumber.TRUE){let s=1;return V6(t,e)&&(s=r),s*=n,s}function V6(r=d.GridType.LINES,n=d.BooleanNumber.FALSE){return n===d.BooleanNumber.TRUE&&(r===d.GridType.LINES_AND_CHARS||r===d.GridType.SNAP_TO_CHARS)}function K6(r,n){const{paragraphStyle:t={}}=n,{linePitch:e=15.6,gridType:s=d.GridType.LINES,paragraphLineGapDefault:i=0}=r,{lineSpacing:o=1,spacingRule:a=d.SpacingRule.AUTO,snapToGrid:c=d.BooleanNumber.TRUE}=t;return{paragraphLineGapDefault:i,linePitch:e,gridType:s,lineSpacing:o,spacingRule:a,snapToGrid:c}}function L4(r,n){const{paragraphStyle:t={}}=n,{charSpace:e=0,gridType:s=d.GridType.LINES,defaultTabStop:i=36,documentTextStyle:o={}}=r,{fs:a=U7}=o,{snapToGrid:c=d.BooleanNumber.TRUE}=t;return{charSpace:e,documentFontSize:a,defaultTabStop:i,gridType:s,snapToGrid:c}}function j2(r,n=-1){let t=n;for(const e of r){const{sections:s}=e,i=t;let o=i,a=Number.NEGATIVE_INFINITY,c=0;for(const u of s){const{columns:l}=u,D=o;let f=D,p=Number.NEGATIVE_INFINITY,F=0;for(const E of l){const{lines:m}=E,b=f;let S=b,v=0,y=Number.NEGATIVE_INFINITY,T=null;for(const B of m){const{divides:O,lineHeight:w}=B,P=S;let L=P,A=0,$=0;v+=w;const Y=O.length;for(let x=0;x<Y;x++){const R=O[x],{spanGroup:k}=R,X=L;let z=X;for(const j of k){const q=j.spanType===u1.LIST?0:j.count;z+=q;const W=j.bBox,{ba:V}=W;$=Math.max($,V),x===Y-1&&(A+=j.width)}x===Y-1&&(A+=R.left),k.length!==0&&(R.st=X+1,R.ed=z>=R.st?z:R.st,L=R.ed)}B.st=P+1,B.ed=L>=B.st?L:B.st,B.width=A,B.asc=$,y=Math.max(y,A),B.top=((T==null?void 0:T.top)||0)+((T==null?void 0:T.lineHeight)||0),T=B,S=B.ed}E.st=b+1,E.ed=S>=E.st?S:E.st,E.height=v,E.width=y,F+=y,p=Math.max(p,E.height),f=E.ed}u.st=D+1,u.ed=f>=u.st?f:u.st,u.height=p,c+=p,a=Math.max(a,F),o=u.ed}e.st=i+1,e.ed=o>=e.st?o:e.st,e.height=c,e.width=a,t=e.ed}}function kD(r,n){for(const t of r){const{sections:e}=t;for(const s of e){const{columns:i}=s;for(const o of i){const{lines:a}=o;for(const c of a){const{divides:u,lineHeight:l}=c,D=u.length;for(let f=0;f<D;f++){const p=u[f],{spanGroup:F}=p;for(const E of F)n&&q2(n)&&n(E)}}}}}}function $4(r,n){for(const t of r){const{sections:e}=t;for(const s of e){const{columns:i}=s;for(const o of i){const{lines:a}=o;for(const c of a)n&&q2(n)&&n(c)}}}}function N4(r,n){for(const t of r){const{sections:e}=t;for(const s of e){const{columns:i}=s;for(const o of i)n&&q2(n)&&n(o)}}}function k4(r,n,t,e,s=!1){const{relativeFrom:i,align:o,posOffset:a,percent:c}=r;if(o!=null)if(o===d.AlignTypeH.INSIDE||o===d.AlignTypeH.OUTSIDE)i===d.ObjectRelativeFromH.MARGIN||d.ObjectRelativeFromH.PAGE;else{if(i===d.ObjectRelativeFromH.COLUMN){const{width:u,left:l}=n;let D=0;return o===d.AlignTypeH.LEFT?D=l:o===d.AlignTypeH.RIGHT?D=l+u-e:o===d.AlignTypeH.CENTER&&(D=l+u/2-e/2),D}if(i!==d.ObjectRelativeFromH.LEFT_MARGIN){if(i!==d.ObjectRelativeFromH.MARGIN){if(i!==d.ObjectRelativeFromH.RIGHT_MARGIN){if(i!==d.ObjectRelativeFromH.INSIDE_MARGIN){if(i!==d.ObjectRelativeFromH.OUTSIDE_MARGIN){if(i===d.ObjectRelativeFromH.PAGE){const{pageWidth:u}=t;let l=0;return o===d.AlignTypeH.RIGHT?l=u-e:o===d.AlignTypeH.CENTER&&(l=u/2-e/2),l}}}}}}}else if(a){const{pageWidth:u,marginLeft:l,marginRight:D}=t,f=u-D;let p=0;return i===d.ObjectRelativeFromH.COLUMN?p=(s?0:(n==null?void 0:n.left)||0)+a:i===d.ObjectRelativeFromH.LEFT_MARGIN||(i===d.ObjectRelativeFromH.MARGIN?p=a+l:i===d.ObjectRelativeFromH.RIGHT_MARGIN||i===d.ObjectRelativeFromH.INSIDE_MARGIN||i===d.ObjectRelativeFromH.OUTSIDE_MARGIN||i===d.ObjectRelativeFromH.PAGE&&(p=a)),p+e>f&&(p=f-e),p}else if(c){const{pageWidth:u,marginLeft:l,marginRight:D}=t;if(i!==d.ObjectRelativeFromH.LEFT_MARGIN){if(i!==d.ObjectRelativeFromH.MARGIN){if(i!==d.ObjectRelativeFromH.RIGHT_MARGIN){if(i!==d.ObjectRelativeFromH.INSIDE_MARGIN){if(i!==d.ObjectRelativeFromH.OUTSIDE_MARGIN){if(i===d.ObjectRelativeFromH.PAGE)return c*u}}}}}}}function H4(r,n,t,e,s,i,o=!1){const{relativeFrom:a,align:c,posOffset:u,percent:l}=r;if(c!=null){if(a===d.ObjectRelativeFromV.LINE){let D=0;return c===d.AlignTypeV.BOTTOM?D=t+e-s:c===d.AlignTypeV.TOP?D=t:c===d.AlignTypeV.CENTER&&(D=t+e/2-s/2),D}if(a!==d.ObjectRelativeFromV.TOP_MARGIN){if(a!==d.ObjectRelativeFromV.MARGIN){if(a!==d.ObjectRelativeFromV.BOTTOM_MARGIN){if(a!==d.ObjectRelativeFromV.INSIDE_MARGIN){if(a!==d.ObjectRelativeFromV.OUTSIDE_MARGIN){if(a===d.ObjectRelativeFromV.PAGE){const{pageHeight:D}=n;let f=0;return c===d.AlignTypeV.BOTTOM?f=D-s:c===d.AlignTypeV.CENTER&&(f=D/2-s/2),f}}}}}}}else if(u){let D=0;return a===d.ObjectRelativeFromV.LINE?D=t||0+u:a===d.ObjectRelativeFromV.TOP_MARGIN||a===d.ObjectRelativeFromV.MARGIN||a===d.ObjectRelativeFromV.BOTTOM_MARGIN||a===d.ObjectRelativeFromV.INSIDE_MARGIN||a===d.ObjectRelativeFromV.OUTSIDE_MARGIN||(a===d.ObjectRelativeFromV.PAGE?D=u:a===d.ObjectRelativeFromV.PARAGRAPH&&(D=(o?0:i==null?t:i)+u)),D}else if(l){const{pageHeight:D,marginBottom:f,marginTop:p}=n;if(a!==d.ObjectRelativeFromV.TOP_MARGIN){if(a!==d.ObjectRelativeFromV.MARGIN){if(a!==d.ObjectRelativeFromV.BOTTOM_MARGIN){if(a!==d.ObjectRelativeFromV.INSIDE_MARGIN){if(a!==d.ObjectRelativeFromV.OUTSIDE_MARGIN){if(a===d.ObjectRelativeFromV.PAGE)return l*D}}}}}}}function X4(r){const n=r.spanGroup;let t=0;for(const e of n)t+=e.width;return t}const S6=new d.ObjectMatrix;function Y4(){S6.reset()}function u2(r,n,t,e,s){const{startIndex:i}=t,o=n.getTextRun(r+i)||{ts:{},st:0,ed:0},{st:a,ed:c}=o;let{ts:u={}}=o;const l=S6.getValue(a,c);if(l)return l;const{gridType:D=d.GridType.LINES,charSpace:f=0,documentTextStyle:p={},pageSize:F={width:Number.POSITIVE_INFINITY,height:Number.POSITIVE_INFINITY},marginRight:E=0,marginLeft:m=0,localeService:b}=e,{snapToGrid:S=d.BooleanNumber.TRUE}=s;u={...p,...u};const v=S2(u),y={...p,...u},T=F.width||Number.POSITIVE_INFINITY-m-E,B={fontStyle:v,textStyle:y,charSpace:f,gridType:D,snapToGrid:S,pageWidth:T};return S6.setValue(a,c,B),B}function z4(r,n,t){return n6(u1.WORD,r,n,t)}function I2(r,n,t){return n6(u1.LETTER,r,n,t)}function W4(r,n){return n6(u1.TAB,d.DataStreamTreeTokenType.TAB,r,n)}function n6(r,n,t,e){const{fontStyle:s,textStyle:i,charSpace:o=1,gridType:a=d.GridType.LINES,snapToGrid:c=d.BooleanNumber.FALSE}=t,u=[d.DataStreamTreeTokenType.SECTION_BREAK,d.DataStreamTreeTokenType.TABLE_START,d.DataStreamTreeTokenType.TABLE_END,d.DataStreamTreeTokenType.TABLE_ROW_START,d.DataStreamTreeTokenType.TABLE_ROW_END,d.DataStreamTreeTokenType.TABLE_CELL_START,d.DataStreamTreeTokenType.TABLE_CELL_END,d.DataStreamTreeTokenType.CUSTOM_RANGE_START,d.DataStreamTreeTokenType.CUSTOM_RANGE_END,d.DataStreamTreeTokenType.COLUMN_BREAK,d.DataStreamTreeTokenType.PAGE_BREAK,d.DataStreamTreeTokenType.DOCS_END,d.DataStreamTreeTokenType.CUSTOM_BLOCK];let l=d.DataStreamTreeTokenType.LETTER;if(u.indexOf(n)>-1)return{content:"",ts:i,fontStyle:s,width:0,bBox:{width:0,ba:0,bd:0,aba:0,abd:0,sp:0,sbr:0,sbo:0,spr:0,spo:0},paddingLeft:0,left:0,spanType:u1.PLACEHOLDER,streamType:n,count:1};n===d.DataStreamTreeTokenType.PARAGRAPH&&(l=d.DataStreamTreeTokenType.PARAGRAPH);const D=O1.getTextSize(n,s),{width:f=0}=D;let p=e!=null?e:f,F=0;return V6(a,c)&&(p=f+(Q2(n)?o:o/2),a===d.GridType.SNAP_TO_CHARS&&(F=(p-f)/2)),{content:n,ts:i,fontStyle:s,width:p,bBox:D,paddingLeft:F,left:0,spanType:r,streamType:l,count:n.length}}function j4(r,n,t){const{bBox:e,symbol:s,ts:i,fontStyle:o,bulletAlign:a=d.BulletAlignment.START,bulletType:c=!1}=n,u=e.width,l=Math.ceil(u/t);let D=(l<2?2:l)*t,f=0;c&&(a===d.BulletAlignment.CENTER?(f=-u/2,D-=f):a===d.BulletAlignment.END&&(f=-u,D-=f));const p=XD(r,n);return{content:s,ts:i,fontStyle:o,width:D,paddingLeft:0,bBox:p,left:f,spanType:u1.LIST,streamType:d.DataStreamTreeTokenType.LETTER,count:0}}function G4(r,n=0){const t=r.length;let e;for(let s=0;s<t;s++){const i=r[s];i.left=e?e.left+e.width:n,e=i}}function HD(r,n=0){r.left=n}function k2(r,n,t=0){G4(n,t);for(const e of n)e.parent=r;r.spanGroup.push(...n)}function XD(r,n){const{ba:t,bd:e}=r.bBox,{ba:s,bd:i}=n.bBox;return t+e>s+i?r.bBox:n.bBox}function U4(r,n){if(r==null)return!1;const{content:t}=r,{content:e}=n;if(t==null||e==null)return!1;const s=/[a-z\d]/i;return s.test(t)&&z2(e)||z2(t)&&s.test(e)}function V4(r,n,t,e,s,i){const o=[];let a=0;for(let c=0;c<n.length;c++){const u=n[c];if(r4(u)||L6(n.substring(c)))break;const l=u2(r+c,t,e,s,i),D=I2(u,l);o.push(D),a++}return{step:a,spanGroup:o}}function K4(r,n,t,e,s,i){const o=u2(r,t,e,s,i),a=[];let c=0;for(let u=0;u<n.length;u++){const l=n[u];if($6(l))a.unshift(l),c++;else break}return{step:c,spanGroup:[I2(a.join(""),o)]}}function J4(r,n,t,e,s,i){const o=u2(r,t,e,s,i),a=n.match(i4);return{step:a[0].length,spanGroup:[I2(a[0],o)]}}function Z4(r,n,t,e,s,i){const o=u2(r,t,e,s,i),a=[];let c=0;for(let u=0;u<n.length;u++){const l=n[u];if(N6(l))a.push(l),c++;else break}return{step:c,spanGroup:[z4(a.join(""),o)]}}function q4(r,n,t,e,s=0,i=!1,o,a,c){const{lineHeight:u=15.6,lineTop:l=0,contentHeight:D=0,paddingLeft:f=0,paddingRight:p=0,paddingTop:F=0,paddingBottom:E=0,marginTop:m=0,spaceBelowApply:b=0}=t,S=VD(n,r);S.lineIndex=s,S.paragraphStart=i,S.contentHeight=D,S.top=l,S.lineHeight=u,S.paddingTop=F,S.paddingBottom=E,S.marginTop=m,S.spaceBelowApply=b,S.divides=YD(u,l,e,f,p,o,a,c);for(const v of S.divides)v.parent=S;return S}function Q4(r=15.6,n=0,t,e,s){let i=n;return e==null||e.forEach(o=>{const a=u6(o,r,n);a&&(i=Math.max(i,a))}),s==null||s.forEach(o=>{const a=u6(o,r,n);a&&(i=Math.max(i,a))}),t==null||t.forEach(o=>{const a=u6(o,r,n);a&&(i=Math.max(i,a))}),i}function u6(r,n,t){const{aTop:e,height:s,aLeft:i,width:o,angle:a=0,drawingOrigin:c}=r,{layoutType:u,distT:l=0,distB:D=0}=c;if(u!==d.PositionedObjectLayoutType.WRAP_TOP_AND_BOTTOM)return;if(a===0){const F=e-l,E=s+D;return F+E<t||F>n+t?void 0:F+s}let{top:f=0,height:p=0}=et(a,i,o,e,s);if(f-=l,p+=D,!(f+p<t||f>n+t))return f+p}function YD(r,n,t,e,s,i,o,a){const c=[];return c.push({left:0,width:e},{left:t-s,width:s}),o==null||o.forEach((u,l)=>{const D=c6(u,r,n,t);D&&c.push(D)}),a==null||a.forEach((u,l)=>{const D=c6(u,r,n,t);D&&c.push(D)}),i==null||i.forEach((u,l)=>{const D=c6(u,r,n,t);D&&c.push(D)}),UD(t,c)}function tt(r,n){r.isFull=n}function zD(r,n){r.marginBottom=n}function WD(r){}function c6(r,n,t,e){const{aTop:s,height:i,aLeft:o,width:a,angle:c=0,drawingOrigin:u}=r,{layoutType:l}=u;if(l===d.PositionedObjectLayoutType.WRAP_NONE||l===d.PositionedObjectLayoutType.WRAP_TOP_AND_BOTTOM)return;if(l===d.PositionedObjectLayoutType.WRAP_POLYGON){const{start:f=[0,0],lineTo:p}=u;if(!p)return;const F=[];F.push(new I(f[0],f[1]));for(let E=0;E<p.length;E++){const m=p[E];F.push(new I(m[0],m[1]))}if(c!==0){const E=new o1().rotate(c);for(let m=0;m<F.length;m++){const b=F[m];F[m]=E.applyPoint(b)}}return v7(F,t,n,e)}if(c===0)return T7(s,i,o,a,t,n,e,u);const D=et(c,o,a,s,i);if(l===d.PositionedObjectLayoutType.WRAP_SQUARE){const{left:f,width:p,top:F,height:E}=D;return T7(F,E,f,p,t,n,e,u)}return v7(D.points,t,n,e)}function et(r,n,t,e,s){const i=new o1().rotate(r),o=new I(n,e),a=new I(n,e+s),c=new I(n+t,e),u=new I(n+t,e+s);return i.makeBoundingBoxFromPoints([o,a,c,u])}function v7(r,n,t,e){const s=new C4(r),i=s.intersection([new I(0,n),new I(e,n)]),o=s.intersection([new I(0,n+t),new I(e,n+t)]);if(!i&&!o)return;const a=jD([...r,...i||[],...o||[]]);return{left:a.min,width:a.max}}function jD(r,n=0){const t=[];for(let e=0;e<r.length;e++){const s=r[e];n===0?t.push(s.x):t.push(s.y)}return{max:Math.max(...t),min:Math.min(...t)}}function T7(r,n,t,e,s,i,o,a){const{layoutType:c,wrapText:u=d.WrapTextType.BOTH_SIDES,distL:l=0,distR:D=0,distT:f=0,distB:p=0}=a,F=r-(c===d.PositionedObjectLayoutType.WRAP_SQUARE?f:0),E=n+(c===d.PositionedObjectLayoutType.WRAP_SQUARE?p:0);if(F+E<s||F>i+s)return;let m=t-l,b=e+D;const S=GD(u,m,b,o);return S===1?b=o-m:S===2&&(m=0,b=t+e+D),{left:m,width:b}}function GD(r,n,t,e){let s=0;return r===d.WrapTextType.LEFT?s=1:r===d.WrapTextType.RIGHT?s=2:r===d.WrapTextType.LARGEST&&(n>e-n-t?s=1:s=2),s}function UD(r,n){n.sort((i,o)=>i.left>o.left?1:-1);const t=[];let e=0;const s=n.length;for(let i=0;i<s;i++){const o=n[i],{left:a,width:c}=o;if(a>e){let u=a-e;u=u<r?u:r-e;const l=y7(e,u);t.push(l)}if(e=Math.max(a+c,e),i===s-1&&a+c<r){const u=y7(a+c,r-a-c);t.push(u)}}return t}function y7(r,n){return{spanGroup:[],width:n,left:r,paddingLeft:0,isFull:!1,st:0,ed:0}}function VD(r,n){return{paragraphIndex:n,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 nt(r,n,t,e){if(e)if(e.has(r)){const s=e.get(r);s==null||s.elements.push(n)}else e.set(r,{elements:[n],paragraphIndex:r,top:t})}function J6(r,n,t,e,s,i){const o=[],a=new Map;for(const c of n.children){let u=[],l=t;o.length>0&&(l=o[o.length-1]),c.nodeType===d.DataStreamTreeNodeType.PARAGRAPH?u=gt(r,c,l,e,s):(c.nodeType,d.DataStreamTreeNodeType.TABLE),u.length===0&&(u=B4()),KD(o,u)}return{pages:o,renderedBlockIdMap:a}}function KD(r,n){const t=r.length-1,e=r[t],s=n[0];e===s&&n.splice(0,1),r.push(...n)}function JD(){}function Z6(r=[],n=d.ColumnSeparatorType.NONE,t=0,e=0,s=Number.POSITIVE_INFINITY,i=Number.POSITIVE_INFINITY){const o=[];let a=0,c=0;if(r.length===0)o.push(l6(e,s,0,d.ColumnSeparatorType.NONE));else for(let l=0;l<r.length;l++){const{width:D,paddingEnd:f}=r[l];c=f,a=D,o.push(l6(e,a,c,n)),e+=a+c,l===r.length-1&&(a=s!==Number.POSITIVE_INFINITY?s-a:D,c=0,o.push(l6(e,a,c,n)))}const u={columns:o,colCount:(r==null?void 0:r.length)||1,height:i,top:t,st:0,ed:0};return o.forEach(l=>{l.parent=u}),u}function q6(r,n){r.isFull=n}function l6(r,n,t,e){return{lines:[],left:r,width:n,height:0,spaceWidth:t,separator:e,st:0,ed:0,drawingLRIds:[],isFull:!1}}function s2(r,n,t=1,e=n2.SECTION){var g1,p1,F1,c1;const s=ZD(),{pageNumberStart:i=1,pageSize:o={width:Number.POSITIVE_INFINITY,height:Number.POSITIVE_INFINITY},pageOrient:a=d.PageOrientType.PORTRAIT,headerIds:c={},footerIds:u={},useFirstPageHeaderFooter:l,useEvenPageHeaderFooter:D,footerTreeMap:f,headerTreeMap:p,columnProperties:F=[],columnSeparatorType:E,marginTop:m=0,marginBottom:b=0,marginHeader:S=0,marginFooter:v=0,marginLeft:y=0,marginRight:T=0,renderConfig:B={}}=r,{skeHeaders:O,skeFooters:w}=n,{width:P=Number.POSITIVE_INFINITY,height:L=Number.POSITIVE_INFINITY}=o;s.pageNumber=t,s.pageNumberStart=i,s.renderConfig=B,s.marginLeft=y,s.marginRight=T,s.breakType=e,s.pageWidth=P,s.width=0,s.pageHeight=L,s.height=0,s.pageOrient=a;const{defaultHeaderId:A,evenPageHeaderId:$,firstPageHeaderId:Y}=c,{defaultFooterId:x,evenPageFooterId:R,firstPageFooterId:k}=u;let X=A!=null?A:"",z=x!=null?x:"";t===i&&l?(X=Y!=null?Y:"",z=k!=null?k:""):t%2===0&&D&&(X=$!=null?$:"",z=R!=null?R:"");let j,q;X&&((g1=O.get(X))!=null&&g1.has(P)?j=(p1=O.get(X))==null?void 0:p1.get(P):p&&p.has(X)&&(j=B7(p.get(X),r,n),O.set(X,new Map([[P,j]]))),s.headerId=X),z&&((F1=w.get(z))!=null&&F1.has(P)?q=(c1=w.get(z))==null?void 0:c1.get(P):f&&f.has(z)&&(q=B7(f.get(z),r,n),w.set(X,new Map([[P,q]]))),s.footerId=z),s.marginTop=O7(m,S,j),s.marginBottom=O7(b,v,q);const W=s.sections,V=W[W.length-1],{marginTop:Q,marginBottom:e1,marginLeft:n1,marginRight:K}=s,t1=P-n1-K,G=L-Q-e1;let U=0;V&&(U=V.top+V.height);const h1=Z6(F,E,U,0,t1,G-U);return h1.parent=s,W.push(h1),s}function ZD(){return{sections:[],headerId:"",footerId:"",pageWidth:0,pageHeight:0,pageOrient:d.PageOrientType.PORTRAIT,pageNumber:1,pageNumberStart:1,verticalAlign:!1,angle:0,width:0,height:0,marginLeft:0,marginRight:0,marginTop:0,marginBottom:0,breakType:n2.SECTION,st:0,ed:0,skeDrawings:new Map}}function B7(r,n,t,e=!0){const{lists:s,footerTreeMap:i,headerTreeMap:o,localeService:a,pageSize:c,marginLeft:u=0,marginRight:l=0,drawings:D,marginTop:f=0,marginBottom:p=0,marginHeader:F=0,marginFooter:E=0}=n,m=(c==null?void 0:c.width)||Number.POSITIVE_INFINITY,b={lists:s,footerTreeMap:i,headerTreeMap:o,pageSize:{width:m-u-l,height:Number.POSITIVE_INFINITY},localeService:a,drawings:D},S=s2(b,t),v=J6(r,r.children[0],S,b,t).pages[0];j2([v]);const y=v.sections[0].columns[0],T=y.height||0,{skeDrawings:B,st:O,ed:w}=v,P={lines:y.lines,skeDrawings:B,height:T,st:O,ed:w,marginLeft:u,marginRight:l};return e?{...P,marginTop:qD(f,F,T)}:{...P,marginBottom:QD(p,E,T)}}function O7(r,n,t){return!t||t.lines.length===0?r:Math.max(r,n,(t==null?void 0:t.height)||0)}function qD(r,n,t){const e=Math.max(r,n);return t>e?0:e-t}function QD(r,n,t){const e=Math.max(r,n);return t>e?0:e-t}function st(r,n,t,e,s=!1){if(s)if(e.bulletSkeleton){const{bulletSkeleton:i,paragraphStyle:o={}}=e,{gridType:a=d.GridType.LINES,charSpace:c=0,defaultTabStop:u=1}=t,{snapToGrid:l=d.BooleanNumber.TRUE}=o,D=e6(c,u,a,l);o_(o,i,D);const f=j4(r[0],i,D);W1([f,...r],n,t,e,s)}else W1(r,n,t,e,s);else G2(r,n,t,e,s);return[...n]}function G2(r,n,t,e,s=!1,i=!0,o){var u;const a=U1(n),c=U6(a);if(c){const l=w7(r),{divide:D}=c,f=(u=D==null?void 0:D.spanGroup)==null?void 0:u[D.spanGroup.length-1],p=(f==null?void 0:f.width)||0,F=(f==null?void 0:f.left)||0,E=U4(f,r[0]);let m=0,b=p+F;if(E&&i){const S=z2(f.content);m=O1.getTextSize(" ",S?r[0].fontStyle:f.fontStyle).width,b+=m,f.width+=m}if(b+l>D.width)if(tt(D,!0),c.isLast&&r.length===1&&(r[0].content===d.DataStreamTreeTokenType.SPACE||r[0].content===d.DataStreamTreeTokenType.PARAGRAPH))k2(D,r,b);else if((D==null?void 0:D.spanGroup.length)===0){const S=[];for(;r.length&&(S.push(r.shift()),!(w7(S)>D.width)););k2(D,S,b),r.length&&W1(r,n,t,e,s,o)}else W1(r,n,t,e,s,o);else{const S=D.parent,v=i_(r);if(S&&v&&!a_(S)){const{paragraphLineGapDefault:y,linePitch:T,lineSpacing:B,spacingRule:O,snapToGrid:w,gridType:P}=K6(t,e),{boundingBoxAscent:L,boundingBoxDescent:A}=v,$=L+A,{contentHeight:Y}=ot($,y,T,P,B,O,w);if(S.contentHeight<Y){const x=r_(S),R=x.length;let k=[],X=1;R>2&&x[0].spanType===u1.LIST?(k=[x[0],x[1]],X=2):k=[x[0]];const z=S.parent,{paragraphStart:j}=z==null?void 0:z.lines.pop();W1(k,n,t,e,j,L+A);for(let q=X;q<x.length;q++)G2([x[q]],n,t,e,s,!1);G2(r,n,t,e,s,!1);return}}k2(D,r,b)}}else W1(r,n,t,e,s,o)}function W1(r,n,t,e,s=!1,i){var K1,y1,J1,$1,N1;let o=U1(n),a=y2(o);if((!a||!a.column)&&(rt(r,n,t,e),o=U1(n),a=y2(o)),!a)return;const c=a.column;if(c.width<=0){console.error("The column width is less than 0, need to adjust page width to make it great than 0");return}const u=x4(c),l=Math.max(...r.map(k1=>k1.bBox.ba)),D=Math.max(...r.map(k1=>k1.bBox.bd)),f=i||l+D,{paragraphStyle:p={},paragraphAffectSkeDrawings:F,skeHeaders:E,skeFooters:m,drawingAnchor:b,paragraphIndex:S}=e,{spaceAbove:v=0,spaceBelow:y=0,indentFirstLine:T=0,hanging:B=0,indentStart:O=0,indentEnd:w=0}=p,{paragraphLineGapDefault:P,linePitch:L,lineSpacing:A,spacingRule:$,snapToGrid:Y,gridType:x}=K6(t,e),{paddingTop:R,paddingBottom:k,contentHeight:X,lineSpacingApply:z}=ot(f,P,L,x,A,$,Y),{marginTop:j,spaceBelowApply:q}=e_(z,v,y,s,u),W=j+R+X+k;let V=c.parent;V||(V=a2(o));const Q=(u==null?void 0:u.lineHeight)||0,e1=(u==null?void 0:u.top)||0,n1=Q+e1,{pageWidth:K,headerId:t1,footerId:G}=o,U=(y1=(K1=E==null?void 0:E.get(t1))==null?void 0:K1.get(K))==null?void 0:y1.skeDrawings,h1=($1=(J1=m==null?void 0:m.get(G))==null?void 0:J1.get(K))==null?void 0:$1.skeDrawings;n_(n1,W,c,(N1=b==null?void 0:b.get(S))==null?void 0:N1.top,F);const g1=Q4(W,n1,o.skeDrawings,U,h1);if(W+g1>V.height&&c.lines.length>0&&o.sections.length>0){q6(c,!0),it(r,n,t,e,s,i);return}const p1=u?u.lineIndex+1:0,{charSpace:F1,defaultTabStop:c1}=L4(t,e),L1=e6(F1,c1,x,Y),{paddingLeft:V1,paddingRight:_1,changeBulletWidth:R1}=t_(r[0],T,B,O,w,L1);R1.state&&(r[0].width=R1.hangingNumber);const x1=q4(S,A2.PARAGRAPH,{lineHeight:W,contentHeight:X,lineTop:g1,paddingLeft:V1,paddingRight:_1,paddingTop:R,paddingBottom:k,marginTop:j,spaceBelowApply:q},c.width,p1,s,o.skeDrawings,U,h1);c.lines.push(x1),x1.parent=c,nt(S,x1,n1,b),G2(r,n,t,e,s,!0,i)}function it(r,n,t,e,s=!1,i){const o=U1(n);M4(o)===!0?rt(r,n,t,e,s,i):W1(r,n,t,e,s,i)}function rt(r,n,t,e,s=!1,i){const o=U1(n),{skeHeaders:a,skeFooters:c}=e;n.push(s2(t,{skeHeaders:a,skeFooters:c},o==null?void 0:o.pageNumber)),it(r,n,t,e,s,i)}function t_(r,n=0,t=0,e=0,s=0,i){const{spanType:o=u1.LETTER,bBox:a}=r,c=A1(n,i),u=A1(t,i),l=A1(e,i),D=A1(s,i);let f=l;const p=D,F={state:!1,hangingNumber:0};if(o===u1.LIST){const{width:E}=a;c>0?f+=c:u>0&&u>E&&(F.state=!0,F.hangingNumber=u)}else f+=u;return{paddingLeft:f,paddingRight:p,changeBulletWidth:F}}function e_(r=0,n=0,t=0,e,s){let i=0,o=0;if(!e)return{marginTop:i,spaceBelowApply:o};if(i=A1(n,r),o=A1(t,r),s){const{spaceBelowApply:a}=s;a>i&&(i=0,s.lineHeight+=a,s.marginBottom=a)}return{marginTop:i,spaceBelowApply:o}}function ot(r,n,t,e,s,i,o){let a=n,c=n;if(e===d.GridType.DEFAULT||o===d.BooleanNumber.FALSE)return i===d.SpacingRule.AUTO?{paddingTop:a,paddingBottom:c,contentHeight:s*r,lineSpacingApply:r}:{paddingTop:a,paddingBottom:c,contentHeight:Math.max(s,r),lineSpacingApply:s};let u=0;return i===d.SpacingRule.AUTO?u=s*t:u=s,r+n*2<u&&(a=c=(u-r)/2),{paddingTop:a,paddingBottom:c,contentHeight:r,lineSpacingApply:u}}function n_(r,n,t,e,s){var c;if(!s)return;const i=(c=t.parent)==null?void 0:c.parent;if(!i)return;const o=new Map,a=s_(t);s.forEach(u=>{if(!u)return;const{initialState:l,drawingOrigin:D}=u;if(l||!D)return;const{objectTransform:f}=D,{positionH:p,positionV:F,size:E,angle:m}=f,{width:b=0,height:S=0}=E;u.aLeft=k4(p,t,i,b,a)||0,u.aTop=H4(F,i,r,n,S,e,a)||0,u.width=b,u.height=S,u.angle=m,u.initialState=!0,o.set(u.objectId,u)}),i.skeDrawings=new Map([...i.skeDrawings,...o])}function s_(r){const n=r.parent;if(!n)return!1;const t=n==null?void 0:n.columns;if(!t)return!1;const e=t.length;for(let s=e-1;s>=0;s--){const o=t[s].lines,a=o.length;if(!(a<=0)){for(let c=a-1;c>=0;c--)if(o[c].paragraphStart)return!1}}return!0}function w7(r){const n=r.length;let t=0;for(let e=0;e<n;e++){const s=r[e];t+=s.width}return t}function i_(r){const n=r.length;let t=Number.NEGATIVE_INFINITY,e;for(let s=0;s<n;s++){const i=r[s],{ba:o,bd:a}=i.bBox;t<o+a&&(e={boundingBoxAscent:o,boundingBoxDescent:a}),t=o+a}return e}function r_(r){const n=r.divides,t=n.length,e=[];for(let s=0;s<t;s++){const i=n[s];e.push(...i.spanGroup)}return e}function o_(r,n,t){const{hanging:e,indentStart:s}=r,{hanging:i,indentStart:o}=n;e===void 0&&(r.hanging=i),s===void 0&&(r.indentStart=A1(o||0,t)-A1(i||0,t))}function a_(r){return!r.divides[0].spanGroup[0]}class L2{constructor(n,t=!1){this.position=n,this.required=t}}const u_=5,A7=12,c_=13,l_=16,h_=17,D_=22,I7=28,R7=31,__=33,H2=34,d_=35,h6=36,v6=37,at=38,f_=39,g_=40,g2=41,p_=42,_=0,g=1,Z=2,ut=3,C=4,m_=[[C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,ut,C,C,C,C,C,C,C,C,C,C,C],[_,C,C,g,g,C,C,C,C,g,g,_,_,_,_,g,g,g,_,_,C,Z,C,_,_,_,_,_,_,_,_,g,_],[_,C,C,g,g,C,C,C,C,g,g,g,g,g,_,g,g,g,_,_,C,Z,C,_,_,_,_,_,_,_,_,g,_],[C,C,C,g,g,g,C,C,C,g,g,g,g,g,g,g,g,g,g,g,C,Z,C,g,g,g,g,g,g,g,g,g,g],[g,C,C,g,g,g,C,C,C,g,g,g,g,g,g,g,g,g,g,g,C,Z,C,g,g,g,g,g,g,g,g,g,g],[_,C,C,g,g,g,C,C,C,_,_,_,_,_,_,g,g,g,_,_,C,Z,C,_,_,_,_,_,_,_,_,g,_],[_,C,C,g,g,g,C,C,C,_,_,_,_,_,_,g,g,g,_,_,C,Z,C,_,_,_,_,_,_,_,_,g,_],[_,C,C,g,g,g,C,C,C,_,_,g,_,g,_,g,g,g,_,_,C,Z,C,_,_,_,_,_,_,_,_,g,_],[_,C,C,g,g,g,C,C,C,_,_,g,g,g,_,g,g,g,_,_,C,Z,C,_,_,_,_,_,_,_,_,g,_],[g,C,C,g,g,g,C,C,C,_,_,g,g,g,g,g,g,g,_,_,C,Z,C,g,g,g,g,g,_,g,g,g,_],[g,C,C,g,g,g,C,C,C,_,_,g,g,g,_,g,g,g,_,_,C,Z,C,_,_,_,_,_,_,_,_,g,_],[g,C,C,g,g,g,C,C,C,g,g,g,g,g,_,g,g,g,_,_,C,Z,C,_,_,_,_,_,_,_,_,g,_],[g,C,C,g,g,g,C,C,C,g,g,g,g,g,_,g,g,g,_,_,C,Z,C,_,_,_,_,_,_,_,_,g,_],[g,C,C,g,g,g,C,C,C,g,g,g,g,g,_,g,g,g,_,_,C,Z,C,_,_,_,_,_,_,_,_,g,_],[_,C,C,g,g,g,C,C,C,_,g,_,_,_,_,g,g,g,_,_,C,Z,C,_,_,_,_,_,_,_,_,g,_],[_,C,C,g,g,g,C,C,C,_,_,_,_,_,_,g,g,g,_,_,C,Z,C,_,_,_,_,_,_,_,_,g,_],[_,C,C,g,_,g,C,C,C,_,_,g,_,_,_,g,g,g,_,_,C,Z,C,_,_,_,_,_,_,_,_,g,_],[_,C,C,g,_,g,C,C,C,_,_,_,_,_,_,g,g,g,_,_,C,Z,C,_,_,_,_,_,_,_,_,g,_],[g,C,C,g,g,g,C,C,C,g,g,g,g,g,g,g,g,g,g,g,C,Z,C,g,g,g,g,g,g,g,g,g,_],[_,C,C,g,g,g,C,C,C,_,_,_,_,_,_,g,g,g,_,C,C,Z,C,_,_,_,_,_,_,_,_,g,_],[_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,C,_,_,_,_,_,_,_,_,_,_,_,_],[g,C,C,g,g,g,C,C,C,g,g,g,g,g,_,g,g,g,_,_,C,Z,C,_,_,_,_,_,_,_,_,g,_],[g,C,C,g,g,g,C,C,C,g,g,g,g,g,g,g,g,g,g,g,C,Z,C,g,g,g,g,g,g,g,g,g,g],[_,C,C,g,g,g,C,C,C,_,g,_,_,_,_,g,g,g,_,_,C,Z,C,_,_,_,g,g,_,_,_,g,_],[_,C,C,g,g,g,C,C,C,_,g,_,_,_,_,g,g,g,_,_,C,Z,C,_,_,_,_,g,_,_,_,g,_],[_,C,C,g,g,g,C,C,C,_,g,_,_,_,_,g,g,g,_,_,C,Z,C,g,g,g,g,_,_,_,_,g,_],[_,C,C,g,g,g,C,C,C,_,g,_,_,_,_,g,g,g,_,_,C,Z,C,_,_,_,g,g,_,_,_,g,_],[_,C,C,g,g,g,C,C,C,_,g,_,_,_,_,g,g,g,_,_,C,Z,C,_,_,_,_,g,_,_,_,g,_],[_,C,C,g,g,g,C,C,C,_,_,_,_,_,_,g,g,g,_,_,C,Z,C,_,_,_,_,_,g,_,_,g,_],[_,C,C,g,g,g,C,C,C,_,g,_,_,_,_,g,g,g,_,_,C,Z,C,_,_,_,_,_,_,_,g,g,_],[_,C,C,g,g,g,C,C,C,_,g,_,_,_,_,g,g,g,_,_,C,Z,C,_,_,_,_,_,_,_,_,g,_],[g,C,C,g,g,g,C,C,C,g,g,g,g,g,_,g,g,g,_,_,C,Z,C,_,_,_,_,_,_,_,_,g,_],[_,C,C,g,g,_,C,C,C,_,_,_,_,_,_,_,_,_,_,_,C,Z,C,_,_,_,_,_,_,_,_,g,_]];class F_{constructor(){h(this,"_rules",new Map)}add(n,t){this._rules.set(n,t)}shouldBreak(n,t){for(const e of this._rules.values())if(e(n,t))return!0;return!1}}const C_=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]),E_=new Uint8Array(new Uint32Array([305419896]).buffer)[0]===18,x7=(r,n,t)=>{const e=r[n];r[n]=r[t],r[t]=e},b_=r=>{const n=r.length;for(let t=0;t<n;t+=4)x7(r,t,t+3),x7(r,t+1,t+2)},S_=r=>{E_&&b_(r)},Q6=0,ct=-3;class B2{constructor(){h(this,"table",new Uint16Array(16));h(this,"trans",new Uint16Array(288))}}class v_{constructor(n,t){h(this,"source");h(this,"dest");h(this,"sourceIndex");h(this,"tag");h(this,"bitcount");h(this,"destLen");h(this,"ltree");h(this,"dtree");this.source=n,this.sourceIndex=0,this.tag=0,this.bitcount=0,this.dest=t,this.destLen=0,this.ltree=new B2,this.dtree=new B2}}const lt=new B2,ht=new B2,t7=new Uint8Array(30),e7=new Uint16Array(30),Dt=new Uint8Array(30),_t=new Uint16Array(30),T_=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),M7=new B2,C1=new Uint8Array(320);function dt(r,n,t,e){let s,i;for(s=0;s<t;++s)r[s]=0;for(s=0;s<30-t;++s)r[s+t]=s/t|0;for(i=e,s=0;s<30;++s)n[s]=i,i+=1<<r[s]}function y_(r,n){let t;for(t=0;t<7;++t)r.table[t]=0;for(r.table[7]=24,r.table[8]=152,r.table[9]=112,t=0;t<24;++t)r.trans[t]=256+t;for(t=0;t<144;++t)r.trans[24+t]=t;for(t=0;t<8;++t)r.trans[168+t]=280+t;for(t=0;t<112;++t)r.trans[176+t]=144+t;for(t=0;t<5;++t)n.table[t]=0;for(n.table[5]=32,t=0;t<32;++t)n.trans[t]=t}const P7=new Uint16Array(16);function D6(r,n,t,e){let s,i;for(s=0;s<16;++s)r.table[s]=0;for(s=0;s<e;++s)r.table[n[t+s]]++;for(r.table[0]=0,i=0,s=0;s<16;++s)P7[s]=i,i+=r.table[s];for(s=0;s<e;++s)n[t+s]&&(r.trans[P7[n[t+s]]++]=s)}function B_(r){r.bitcount--||(r.tag=r.source[r.sourceIndex++],r.bitcount=7);const n=r.tag&1;return r.tag>>>=1,n}function b1(r,n,t){if(!n)return t;for(;r.bitcount<24;)r.tag|=r.source[r.sourceIndex++]<<r.bitcount,r.bitcount+=8;const e=r.tag&65535>>>16-n;return r.tag>>>=n,r.bitcount-=n,e+t}function T6(r,n){for(;r.bitcount<24;)r.tag|=r.source[r.sourceIndex++]<<r.bitcount,r.bitcount+=8;let t=0,e=0,s=0,i=r.tag;do e=2*e+(i&1),i>>>=1,++s,t+=n.table[s],e-=n.table[s];while(e>=0);return r.tag=i,r.bitcount-=s,n.trans[t+e]}function O_(r,n,t){let e,s,i;const o=b1(r,5,257),a=b1(r,5,1),c=b1(r,4,4);for(e=0;e<19;++e)C1[e]=0;for(e=0;e<c;++e){const u=b1(r,3,0);C1[T_[e]]=u}for(D6(M7,C1,0,19),s=0;s<o+a;){const u=T6(r,M7);switch(u){case 16:{const l=C1[s-1];for(i=b1(r,2,3);i;--i)C1[s++]=l;break}case 17:for(i=b1(r,3,3);i;--i)C1[s++]=0;break;case 18:for(i=b1(r,7,11);i;--i)C1[s++]=0;break;default:C1[s++]=u;break}}D6(n,C1,0,o),D6(t,C1,o,a)}function L7(r,n,t){for(;;){let e=T6(r,n);if(e===256)return Q6;if(e<256)r.dest[r.destLen++]=e;else{let s;e-=257;const i=b1(r,t7[e],e7[e]),o=T6(r,t),a=r.destLen-b1(r,Dt[o],_t[o]);for(s=a;s<a+i;++s)r.dest[r.destLen++]=r.dest[s]}}}function w_(r){let n,t,e;for(;r.bitcount>8;)r.sourceIndex--,r.bitcount-=8;if(n=r.source[r.sourceIndex+1],n=256*n+r.source[r.sourceIndex],t=r.source[r.sourceIndex+3],t=256*t+r.source[r.sourceIndex+2],n!==(~t&65535))return ct;for(r.sourceIndex+=4,e=n;e;--e)r.dest[r.destLen++]=r.source[r.sourceIndex++];return r.bitcount=0,Q6}function $7(r,n){const t=new v_(r,n);let e,s,i;do{switch(e=B_(t),s=b1(t,2,0),s){case 0:i=w_(t);break;case 1:i=L7(t,lt,ht);break;case 2:O_(t,t.ltree,t.dtree),i=L7(t,t.ltree,t.dtree);break;default:i=ct}if(i!==Q6)throw new Error("Data error")}while(!e);return t.destLen<t.dest.length?typeof t.dest.slice=="function"?t.dest.slice(0,t.destLen):t.dest.subarray(0,t.destLen):t.dest}y_(lt,ht);dt(t7,e7,4,3);dt(Dt,_t,2,1);t7[28]=0;e7[28]=258;const n7=11,j1=5,A_=n7-j1,I_=65536>>n7,R_=1<<A_,x_=R_-1,X2=2,M_=1<<j1,_6=M_-1,ft=65536>>j1,P_=1024>>j1,L_=ft+P_,$_=L_,N_=32,k_=$_+N_,H_=1<<X2;class X_{constructor(n){h(this,"highStart");h(this,"errorValue");h(this,"data");const t=typeof n.readUInt32BE=="function"&&typeof n.slice=="function";if(t||n instanceof Uint8Array){let e;if(t)this.highStart=n.readUInt32LE(0),this.errorValue=n.readUInt32LE(4),e=n.readUInt32LE(8),n=n.slice(12);else{const s=new DataView(n.buffer);this.highStart=s.getUint32(0,!0),this.errorValue=s.getUint32(4,!0),e=s.getUint32(8,!0),n=n.subarray(12)}n=$7(n,new Uint8Array(e)),n=$7(n,new Uint8Array(e)),S_(n),this.data=new Uint32Array(n.buffer)}else({data:this.data,highStart:this.highStart,errorValue:this.errorValue}=n)}get(n){let t;return n<0||n>1114111?this.errorValue:n<55296||n>56319&&n<=65535?(t=(this.data[n>>j1]<<X2)+(n&_6),this.data[t]):n<=65535?(t=(this.data[ft+(n-55296>>j1)]<<X2)+(n&_6),this.data[t]):n<this.highStart?(t=this.data[k_-I_+(n>>n7)],t=this.data[t+(n>>j1&x_)],t=(t<<X2)+(n&_6),this.data[t]):this.data[this.data.length-H_]}}const Y_=new X_(C_);function d6(r){switch(r){case __:return A7;case f_:case g_:case p_:return A7;case d_:return u_;default:return r}}function f6(r){switch(r){case v6:case at:return H2;case g2:return D_;default:return r}}class z_{constructor(n){h(this,"_pos",0);h(this,"_lastPos",0);h(this,"_curClass",null);h(this,"_codePoint",null);h(this,"_nextClass",null);h(this,"_LB8a",!1);h(this,"_LB21a",!1);h(this,"_LB30a",0);h(this,"_rule",new F_);this.string=n}use(n){return n(this),this}addRule(n,t){return this._rule.add(n,t),this}nextBreak(){if(this._curClass==null){const n=this._nextCharClass();this._curClass=f6(n),this._nextClass=n,this._LB8a=n===R7,this._LB30a=0}for(;this._pos<this.string.length;){this._lastPos=this._pos;const n=this._nextClass;if(this._nextClass=this._nextCharClass(),this._curClass===H2||this._curClass===h6&&this._nextClass!==v6)return this._curClass=f6(d6(this._nextClass)),new L2(this._lastPos,!0);if(this._rule.shouldBreak(this._codePoint,this._nextClass))return this._curClass=f6(d6(this._nextClass)),new L2(this._lastPos);let t=this._getSimpleBreak();if(t===null&&(t=this._getPairTableBreak(n)),this._LB8a=this._nextClass===R7,t)return new L2(this._lastPos)}return this._lastPos<this.string.length?(this._lastPos=this.string.length,new L2(this.string.length)):null}_getNextCodePoint(){const n=this.string.charCodeAt(this._pos++),t=this.string.charCodeAt(this._pos);return n>=55296&&n<=56319&&t>=56320&&t<=57343?(this._pos++,(n-55296)*1024+(t-56320)+65536):n}_nextCharClass(){const n=this._getNextCodePoint(),t=Y_.get(n);return this._codePoint=n,d6(t)}_getSimpleBreak(){switch(this._nextClass){case g2:return!1;case H2:case v6:case at:return this._curClass=H2,!1;case h6:return this._curClass=h6,!1}return null}_getPairTableBreak(n){let t=!1;switch(m_[this._curClass][this._nextClass]){case _:t=!0;break;case g:t=n===g2;break;case Z:if(t=n===g2,!t)return t=!1,t;break;case ut:if(n!==g2)return t;break}return this._LB8a&&(t=!1),this._LB21a&&(this._curClass===l_||this._curClass===h_)?(t=!1,this._LB21a=!1):this._LB21a=this._curClass===c_,this._curClass===I7?(this._LB30a++,this._LB30a===2&&this._nextClass===I7&&(t=!0,this._LB30a=0)):this._LB30a=0,this._curClass=this._nextClass,t}}const W_=9;function j_(r){r.addRule("break_before_tab",n=>n===W_)}function gt(r,n,t,e,s){const{gridType:i=d.GridType.LINES,charSpace:o=0,defaultTabStop:a=10.5,pageSize:c={width:Number.POSITIVE_INFINITY,height:Number.POSITIVE_INFINITY},marginRight:u=0,marginLeft:l=0,lists:D,drawings:f={},localeService:p}=e,{endIndex:F,startIndex:E,content:m="",blocks:b=[]}=n,S=r.getParagraph(F)||{startIndex:0},{paragraphStyle:v={},bullet:y}=S,{skeHeaders:T,skeFooters:B,skeListLevel:O,drawingAnchor:w}=s,P=new Map,L={paragraphIndex:F,paragraphStyle:v,paragraphAffectSkeDrawings:P,skeHeaders:T,skeFooters:B,drawingAnchor:w},A=G_(y,O),$=A4(y,D,A);U_(y,$,O),L.bulletSkeleton=$;const{horizontalAlign:Y=d.HorizontalAlign.UNSPECIFIED,snapToGrid:x=d.BooleanNumber.TRUE}=v;let R=[t];const k=new Map;for(let q=0,W=b.length;q<W;q++){const V=b[q],Q=r.getCustomBlock(V);if(Q==null)continue;k.set(V,Q);const e1=Q.blockId,n1=f[e1];n1.layoutType!==d.PositionedObjectLayoutType.INLINE&&P.set(e1,V_(n1))}Y4();const X=new z_(m);let z=0,j;for(j_(X);j=X.nextBreak();){let W=m.slice(z,j.position),V=z,Q=[],e1=z===0;const n1=()=>{Q.length!==0&&(R=st(Q,R,e,L,e1),Q=[],e1=!1)};for(;W.length>0;){const K=W[0],t1=V+E;if(/\s/.test(K)||Q2(K)){const G=u2(V,r,n,e,v);let U;if(K===d.DataStreamTreeTokenType.TAB){const h1=e6(o,a,i,x);U=W4(G,h1)}else U=I2(K,G);Q.push(U),V++,W=W.substring(1)}else if(L6(W)){const{step:G,spanGroup:U}=J4(V,W,r,n,e,v);Q.push(...U),V+=G,W=W.substring(G)}else if($6(K)){const{step:G,spanGroup:U}=K4(V,W,r,n,e,v);Q.push(...U),V+=G,W=W.substring(G)}else if(N6(K)){const{step:G,spanGroup:U}=Z4(V,W,r,n,e,v);Q.push(...U),V+=G,W=W.substring(G)}else{const{step:G,spanGroup:U}=V4(V,W,r,n,e,v);Q.push(...U),V+=G,W=W.substring(G)}if(K===d.DataStreamTreeTokenType.CUSTOM_BLOCK){let G=k.get(t1);if(G==null&&(G=r.getCustomBlock(t1)),G!=null){const U=G.blockId;f[U].layoutType===d.PositionedObjectLayoutType.INLINE&&(R=I4())}}else if(K===d.DataStreamTreeTokenType.PAGE_BREAK)n1(),R.push(s2(e,s,N7(R[R.length-1]),n2.PAGE)),P.clear();else if(K===d.DataStreamTreeTokenType.COLUMN_BREAK){n1();const G=R[R.length-1],U=y2(G);U&&!U.isLast?q6(U.column,!0):R.push(s2(e,s,N7(G),n2.COLUMN))}}n1(),z=j.position}return $4(R,q=>{K_(q,Y)}),R}function G_(r,n){if(!r||!n)return;const{listId:t,nestingLevel:e}=r,s=n==null?void 0:n.get(t);let i=e;i<0&&(i=0);const o=[];for(let a=i;a>=0;a--){const c=s==null?void 0:s[a];o[a]=c||null}return o}function U_(r,n,t){if(!r||!n)return;const{listId:e,nestingLevel:s}=r,i=[...(t==null?void 0:t.get(e))||[]];i[s]=n,i.splice(s+1),t==null||t.set(e,i)}function V_(r){return{objectId:r.objectId,aLeft:0,aTop:0,width:0,height:0,angle:0,initialState:!1,drawingOrigin:r}}function N7(r){return r.pageNumber+1}function K_(r,n){if(n===d.HorizontalAlign.UNSPECIFIED||n===d.HorizontalAlign.LEFT)return;const{divides:t}=r,e=t.length;for(let s=0;s<e;s++){const i=t[s],{width:o}=i,a=X4(i);o!==Number.POSITIVE_INFINITY&&(n===d.HorizontalAlign.CENTER?i.paddingLeft=(o-a)/2:n===d.HorizontalAlign.RIGHT?i.paddingLeft=o-a:d.HorizontalAlign.JUSTIFIED)}}function J_(r=0,n,t=d.ColumnSeparatorType.NONE,e=Number.POSITIVE_INFINITY){const{left:s,width:i,spaceWidth:o}=Z_(r,n,e);return{lines:[],left:s,width:i,height:0,spaceWidth:o,separator:t,st:0,ed:0,drawingLRIds:[],isFull:!1}}function Z_(r=0,n,t){let e=0,s=0,i=0;for(let o=0;o<=r;o++){const{width:a,paddingEnd:c}=n[o];o===n.length-1?(e=t===Number.POSITIVE_INFINITY?t-e:a,s=0):(s=c,e=a,i+=e+s)}return{width:e,spaceWidth:s,left:i-e-s}}class O2{constructor(){h(this,"_translateX",0);h(this,"_translateY",0);h(this,"_translateSaveList",[])}get x(){return this._translateX}get y(){return this._translateY}reset(){this.translateBy(0,0),this._translateSaveList=[]}translateBy(n=0,t=0){this._translateX=n,this._translateY=t}translate(n=0,t=0){this._translateX+=n,this._translateY+=t}translateSave(){this._translateSaveList.push({x:this._translateX,y:this._translateY})}translateRestore(){const n=this._translateSaveList.pop();n&&(this._translateX=n.x,this._translateY=n.y)}translatePagePadding(n){const{marginTop:t=0,marginBottom:e=0,marginLeft:s=0,marginRight:i=0}=n;this.translate(s,t)}restorePagePadding(n){const{marginTop:t=0,marginBottom:e=0,marginLeft:s=0,marginRight:i=0}=n;this.translate(-s,-t)}translatePage(n,t=T1.VERTICAL,e=0,s=0,i=0,o=0){const{pageWidth:a,pageHeight:c}=n;let u=0,l=0;return t===T1.VERTICAL?u+=c+s:t===T1.HORIZONTAL&&(l+=a+e),this.translate(l,u),{x:l,y:u}}translateSection(n){const{top:t=0}=n;return this.translate(0,t),{x:0,y:t}}translateColumn(n){const{left:t}=n;return this.translate(t,0),{x:t,y:0}}translateLine(n,t=!1){const{top:e,marginBottom:s=0,marginTop:i=0,paddingTop:o=0,paddingBottom:a=0}=n,c=e+(t===!0?i:0)+o;return this.translate(0,c),{x:0,y:c}}translateDivide(n){const{left:t,paddingLeft:e}=n,s=t+e;return this.translate(s,0),{x:s,y:0}}translateSpan(n){const{left:t}=n;return this.translate(t,0),{x:t,y:0}}}var pt=(r=>(r[r.NORMAL=0]="NORMAL",r[r.START=1]="START",r[r.END=2]="END",r))(pt||{}),F2=(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.span=5]="span",r))(F2||{});const X1={page:0,section:1,column:2,line:3,divide:4,span:5};function s7(r,n){return r.page>n.page?!1:r.page<n.page?!0:r.section>n.section?!1:r.section<n.section?!0:r.column>n.column?!1:r.column<n.column?!0:r.line>n.line?!1:r.line<n.line?!0:r.divide>n.divide?!1:r.divide<n.divide?!0:r.span>n.span?!1:(r.span<n.span,!0)}function U2(r,n){return s7(r,n)?{start:r,end:n}:{start:n,end:r}}function y6(r){const n=r.length;if(n===0)return;const t=r[0],e=r[n-1],s=r.length===1&&t.collapsed;return{startOffset:t.startOffset,endOffset:e.endOffset,collapsed:s}}function q_(r,n,t,e){let s=e,i=e;for(let o=0;o<r.length;o++){const c=r[o].count;o<n&&(s+=c),o<t&&(i+=c)}return{startOffset:s,endOffset:i}}class mt{constructor(n,t){h(this,"_liquid",new O2);h(this,"_currentStartState",{page:0,section:0,column:0,line:0,divide:0,span:0});h(this,"_currentEndState",{page:0,section:0,column:0,line:0,divide:0,span:0});this._documentOffsetConfig=n,this._docSkeleton=t}getRangePointData(n,t){const e=[],s=[],i=[];if(n==null||t==null)return{borderBoxPointGroup:e,contentBoxPointGroup:s,cursorList:i};const{start:o,end:a}=U2(n,t);return this._selectionIterator(o,a,(c,u,l,D,f,p)=>{const{lineHeight:F,marginTop:E,contentHeight:m}=p,{spanGroup:b,st:S}=f,{x:v,y}=this._liquid;let T,B;const O=b[c],w=b[u],P=(O==null?void 0:O.left)||0,L=(O==null?void 0:O.width)||0,A=(w==null?void 0:w.left)||0,$=(w==null?void 0:w.width)||0,Y=(O==null?void 0:O.spanType)===u1.LIST,{startOffset:x,endOffset:R}=q_(b,c,u,S),k=o.span===c&&l?o.isBack:!0,X=a.span===u&&D?a.isBack:!1,z=o===a;if(c===0&&u===b.length-1)T={startX:v+P+(Y?L:0),startY:y,endX:v+A+$,endY:y+F},B={startX:v+P+(Y?L:0),startY:y+E,endX:v+A+$,endY:y+E+m};else{const j=k&&!Y;T={startX:v+P+(j?0:L),startY:y,endX:v+A+(X?0:$),endY:y+F},B={startX:v+P+(j?0:L),startY:y+E,endX:v+A+(X?0:$),endY:y+E+m}}e.push(this._pushToPoints(T)),s.push(this._pushToPoints(B)),i.push({startOffset:k?x:x+O.count,endOffset:X?R:R+w.count,collapsed:z})}),{borderBoxPointGroup:e,contentBoxPointGroup:s,cursorList:i}}_resetCurrentNodePositionState(){this._currentStartState={page:0,section:0,column:0,line:0,divide:0,span:0},this._currentEndState={page:0,section:0,column:0,line:0,divide:0,span:0}}_setNodePositionState(n=0,t,e,s){s===t?this._currentStartState[n]=1:this._currentStartState[n]=0,s===e?this._currentEndState[n]=2:this._currentEndState[n]=0}_checkPreviousNodePositionState(n,t=!0){let e=n,s;for(;e>=0;){const i=F2[e];let o;if(t?o=this._currentStartState[i]:o=this._currentEndState[i],o===void 0)return;if(s===void 0&&(s=o),o!==s)return 0;e--}return s}_getSelectionRuler(n,t,e,s,i){let o=0,a=s;const c=F2[n],u=F2[n+1];if(u===null||c===null)return{start_next:o,end_next:a};const l=t[c],D=e[c];this._setNodePositionState(c,l,D,i);const f=this._checkPreviousNodePositionState(n),p=this._checkPreviousNodePositionState(n,!1);return f===1&&(o=t[u]),p===2&&(a=e[u]),{start_next:o,end_next:a}}_pushToPoints(n){const{startX:t,startY:e,endX:s,endY:i}=n,o=[];return o.push({x:t,y:e}),o.push({x:s,y:e}),o.push({x:s,y:i}),o.push({x:t,y:i}),o.push({x:t,y:e}),o}_selectionIterator(n,t,e){const s=this._docSkeleton;if(!s)return[];this._liquid.reset();const i=s.getSkeletonData();if(i==null)return[];const o=i.pages,{page:a}=n,{page:c}=t;if(this._resetCurrentNodePositionState(),this._documentOffsetConfig==null)return[];const{pageLayoutType:u,pageMarginLeft:l,pageMarginTop:D}=this._documentOffsetConfig;for(let f=0;f<=a-1;f++){const p=o[f];this._liquid.translatePage(p,u,l,D)}for(let f=a;f<=c;f++){const p=o[f],F=p.sections,{start_next:E,end_next:m}=this._getSelectionRuler(X1.page,n,t,F.length-1,f);this._liquid.translateSave(),this._liquid.translatePagePadding(p);for(let b=E;b<=m;b++){const S=F[b],v=S.columns,{start_next:y,end_next:T}=this._getSelectionRuler(X1.section,n,t,v.length-1,b);this._liquid.translateSection(S);for(let B=y;B<=T;B++){const O=v[B],w=O.lines,{start_next:P,end_next:L}=this._getSelectionRuler(X1.column,n,t,w.length-1,B);this._liquid.translateColumn(O);for(let A=P;A<=L;A++){const $=w[A],{divides:Y}=$,{start_next:x,end_next:R}=this._getSelectionRuler(X1.line,n,t,Y.length-1,A);this._liquid.translateSave(),this._liquid.translateLine($);for(let k=x;k<=R;k++){const X=Y[k];this._liquid.translateSave(),this._liquid.translateDivide(X);const z=X.spanGroup,{start_next:j,end_next:q}=this._getSelectionRuler(X1.divide,n,t,z.length-1,k);let W=!1,V=!1;f===a&&b===E&&B===y&&A===P&&k===x&&(W=!0),f===c&&b===m&&B===T&&A===L&&k===R&&(V=!0),e&&e(j,q,W,V,X,$,O,S,p),this._liquid.translateRestore()}this._liquid.translateRestore()}}}this._liquid.translateRestore(),this._liquid.translatePage(p,u,l,D)}}}const Ft=["hoverCursor","moveCursor","fillRule","globalCompositeOperation","paintFirst","stroke","strokeScaleEnabled","fill","fillAfterStrokeEnabled","hitStrokeWidth","strokeLineJoin","strokeLineCap","shadowColor","shadowBlur","shadowOffset","shadowOffsetX","shadowOffsetY","shadowOpacity","shadowEnabled","shadowForStrokeEnabled","strokeDashArray","strokeDashOffset","strokeMiterLimit"];class c2 extends I1{constructor(t,e){super(t);h(this,"_hoverCursor");h(this,"_moveCursor",null);h(this,"_fillRule","nonzero");h(this,"_globalCompositeOperation","source-over");h(this,"_paintFirst","fill");h(this,"_stroke");h(this,"_strokeScaleEnabled",!1);h(this,"_fill");h(this,"_fillAfterStrokeEnabled",!1);h(this,"_hitStrokeWidth",0);h(this,"_strokeLineJoin","round");h(this,"_strokeLineCap","round");h(this,"_shadowColor");h(this,"_shadowBlur",0);h(this,"_shadowOffset");h(this,"_shadowOffsetX",0);h(this,"_shadowOffsetY",0);h(this,"_shadowOpacity",0);h(this,"_shadowEnabled",!1);h(this,"_shadowForStrokeEnabled",!1);h(this,"_strokeDashArray");h(this,"_strokeDashOffset",0);h(this,"_strokeMiterLimit",0);h(this,"_type",I6.RECT);this._initialProps(e)}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(t,e){}static _renderPaintInOrder(t,e){e.paintFirst==="stroke"?(this._renderStroke(t,e),this._renderFill(t,e)):(this._renderFill(t,e),this._renderStroke(t,e))}static _renderFill(t,e){e.fill&&(t.save(),this._setFillStyles(t,e),e.fillRule==="evenodd"?t.fill("evenodd"):t.fill(),t.restore())}static _renderStroke(t,e){const{stroke:s,strokeWidth:i,shadowEnabled:o,shadowForStrokeEnabled:a,strokeScaleEnabled:c,parent:u}=e;let{scaleX:l,scaleY:D}=e;if(!(!s||i===0)){if(o&&!a&&this._removeShadow(t),t.save(),c&&u){const f=this._getObjectScaling();t.scale(1/f.scaleX,1/f.scaleY)}else c&&(l=l!=null?l:1,D=D!=null?D:1,t.scale(1/l,1/D));this._setLineDash(t),this._setStrokeStyles(t,e),t.stroke(),t.restore()}}static _getObjectScaling(){return{scaleX:1,scaleY:1}}static _removeShadow(t){}static _setFillStyles(t,e){t.fillStyle=e.fill}static _setStrokeStyles(t,e){const{strokeWidth:s,strokeLineCap:i,strokeDashOffset:o,strokeLineJoin:a,strokeMiterLimit:c,stroke:u}=e;t.setLineWidthNative(s),t.lineCap=i,t.lineDashOffset=o,t.lineJoin=a,t.miterLimit=c,t.strokeStyle=u}static _setLineDash(t){}render(t,e){if(!this.visible)return this.makeDirty(!1),this;if(this.isRender()){const{top:i,left:o,bottom:a,right:c}=e.viewBound;if(this.width+this.strokeWidth<o||c<0||this.height+this.strokeWidth<i||a<0)return this}const s=this.transform.getMatrix();return t.save(),t.transform(s[0],s[1],s[2],s[3],s[4],s[5]),this._draw(t),t.restore(),this.makeDirty(!1),this}setProps(t){if(!t)return;const e=Object.keys(t);if(e.length!==0)return e.forEach(s=>{if(t[s]===void 0)return!0;W2.indexOf(s)===-1&&(this[`_${s}`]=t[s])}),this.makeDirty(!0),this}toJson(){const t={};return Ft.forEach(e=>{this[e]&&(t[e]=this[e])}),{...super.toJson(),...t}}_draw(t){}_initialProps(t){if(!t)return;const e=Object.keys(t);if(e.length===0)return;const s={};let i=!1;e.forEach(o=>{if(t[o]===void 0)return!0;W2.indexOf(o)>-1?(s[o]=t[o],i=!0):this[`_${o}`]=t[o]}),i&&this.transformByState(s),this.makeDirty(!0)}}const Ct=["radius"];class f1 extends c2{constructor(t,e){super(t,e);h(this,"_radius",0);e!=null&&e.radius&&(this._radius=e.radius)}get radius(){return this._radius}static drawWith(t,e){let{radius:s,width:i,height:o}=e;if(s=s!=null?s:0,i=i!=null?i:30,o=o!=null?o:30,t.beginPath(),e.strokeDashArray&&t.setLineDash(e.strokeDashArray),!s)t.rect(0,0,i,o);else{let a=0,c=0,u=0,l=0;a=c=u=l=Math.min(s,i/2,o/2),t.moveTo(a,0),t.lineTo(i-c,0),t.arc(i-c,c,c,Math.PI*3/2,0,!1),t.lineTo(i,o-l),t.arc(i-l,o-l,l,0,Math.PI/2,!1),t.lineTo(u,o),t.arc(u,o-u,u,Math.PI/2,Math.PI,!1),t.lineTo(0,a),t.arc(a,a,a,Math.PI,Math.PI*3/2,!1)}t.closePath(),this._renderPaintInOrder(t,e)}toJson(){const t={};return Ct.forEach(e=>{this[e]&&(t[e]=this[e])}),{...super.toJson(),...t}}_draw(t){f1.drawWith(t,this)}}const Et=["pointsGroup"];class s6 extends c2{constructor(t,e){super(t,e);h(this,"_pointsGroup");this._pointsGroup=(e==null?void 0:e.pointsGroup)||[[]],this._setFixBoundingBox(),this.onTransformChangeObservable.add(s=>{const{type:i,value:o,preValue:a}=s;(i===i1.resize||i===i1.all)&&this.resizePolygon(a)})}get pointsGroup(){return this._pointsGroup}static drawWith(t,e){let{pointsGroup:s}=e;s=s!=null?s:[[]],e.strokeDashArray&&t.setLineDash(e.strokeDashArray),t.beginPath();for(const i of s){t.moveTo(i[0].x,i[0].y);for(let o=1;o<i.length;o++){const a=i[o];t.lineTo(a.x,a.y)}}t.closePath(),this._renderPaintInOrder(t,e)}updatePointGroup(t){this._pointsGroup=t,this._setFixBoundingBox()}resizePolygon(t){const{left:e,top:s,width:i,height:o}=this._getSelfRect(),{width:a,height:c}=t;let u,l;a?u=this.width-a:u=0,c?l=this.height-c:l=0;const D=u/i,f=l/o;this.scaleX+=D,this.scaleY+=f,this.left=this.left-e*D,this.top=this.top-s*f,this._setTransForm()}toJson(){const t={};return Et.forEach(e=>{this[e]&&(t[e]=this[e])}),{...super.toJson(),...t}}getState(){const{left:t,top:e,width:s,height:i}=this.getRect();return{left:t,top:e,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:t,top:e,width:s,height:i}=this._getSelfRect();return{left:t*this.scaleX+this.left,top:e*this.scaleY+this.top,width:s*this.scaleX,height:i*this.scaleY}}_draw(t){s6.drawWith(t,this)}_setFixBoundingBox(){const{width:t,height:e,left:s,top:i}=this._getSelfRect();this.left=this.left+s,this.top=this.top+i,this.width=t,this.height=e;const o=this.pointsGroup;for(const a of o)for(const c of a)c.x-=s,c.y-=i;this._setTransForm()}_getSelfRect(){const t=this.pointsGroup;let e=t[0][0].x,s=t[0][0].x,i=t[0][0].y,o=t[0][0].y;for(const a of t)for(const c of a)e=Math.min(e,c.x),s=Math.max(s,c.x),i=Math.min(i,c.y),o=Math.max(o,c.y);return{left:e,top:i,width:s-e,height:o-i}}}const Q_="__TestSelectionRange__",td="__TestSelectionAnchor__",k7=6,g6=500,ed=500,B6=1;function bt(r,n,t,e){const{startOffset:s,endOffset:i,style:o=T2}=n,a=t.findNodePositionByCharIndex(s),c=s!==i?t.findNodePositionByCharIndex(i):null,u=new V2(r,e,t,a,c,o);return u.refresh(),u}function St(r){const n=r[0],t=n[0],e=n[2],{x:s,y:i}=t,{x:o,y:a}=e;return{left:s,top:i,width:o-s,height:a-i}}class V2{constructor(n,t,e,s,i,o=T2){h(this,"_current",!1);h(this,"_rangeShape");h(this,"_anchorShape");h(this,"_cursorList",[]);h(this,"_anchorBlinkTimer",null);this._scene=n,this._document=t,this._docSkeleton=e,this.anchorNodePosition=s,this.focusNodePosition=i,this.style=o,this._anchorBlink()}_anchorBlink(){setTimeout(()=>{this._anchorShape&&this._anchorShape.visible&&this.deactivateStatic()},g6),this._anchorBlinkTimer=setInterval(()=>{this._anchorShape&&this._anchorShape.visible&&(this.activeStatic(),setTimeout(()=>{this.deactivateStatic()},g6))},ed+g6)}get startOffset(){var s;const{startOffset:n}=(s=y6(this._cursorList))!=null?s:{},t=this._docSkeleton.getViewModel().getBody();if(n==null||t==null)return n;const e=t.dataStream.length-2;return Math.min(e,n)}get endOffset(){var s;const{endOffset:n}=(s=y6(this._cursorList))!=null?s:{},t=this._docSkeleton.getViewModel().getBody();if(n==null||t==null)return n;const e=t.dataStream.length-2;return Math.min(n,e)}get collapsed(){const{startOffset:n,endOffset:t}=this;return n!=null&&n===t}get startNodePosition(){if(this.anchorNodePosition==null)return null;if(this.focusNodePosition==null)return this.anchorNodePosition;const{start:n}=U2(this.anchorNodePosition,this.focusNodePosition);return n}get endNodePosition(){if(this.anchorNodePosition==null)return this.focusNodePosition;if(this.focusNodePosition==null)return null;const{end:n}=U2(this.anchorNodePosition,this.focusNodePosition);return n}get direction(){const{collapsed:n,anchorNodePosition:t,focusNodePosition:e}=this;return n||t==null||e==null?m2.NONE:s7(t,e)?m2.FORWARD:m2.BACKWARD}getAnchor(){return this._anchorShape}activeStatic(){var n,t;(t=this._anchorShape)==null||t.setProps({stroke:((n=this.style)==null?void 0:n.strokeActive)||l1(d.COLORS.black,1)})}deactivateStatic(){var n,t;(t=this._anchorShape)==null||t.setProps({stroke:((n=this.style)==null?void 0:n.stroke)||l1(d.COLORS.black,0)})}isActive(){return this._current===!0}activate(){this._current=!0}deactivate(){this._current=!1}dispose(){var n,t;(n=this._rangeShape)==null||n.dispose(),this._rangeShape=null,(t=this._anchorShape)==null||t.dispose(),this._anchorShape=null,this._anchorBlinkTimer&&(clearInterval(this._anchorBlinkTimer),this._anchorBlinkTimer=null)}isIntersection(n){const{startOffset:t,endOffset:e}=this,{startOffset:s,endOffset:i}=n;return t==null||e==null||s==null||i==null?!1:t<=i&&e>=s}refresh(){var D,f;const{_document:n,_docSkeleton:t}=this,e=this.anchorNodePosition,s=this.focusNodePosition;if((D=this._anchorShape)==null||D.hide(),(f=this._rangeShape)==null||f.hide(),this._isEmpty())return;const i=n.getOffsetConfig(),{docsLeft:o,docsTop:a}=i,c=new mt(i,t);if(this._isCollapsed()){const{contentBoxPointGroup:p,cursorList:F}=c.getRangePointData(e,e);this._setCursorList(F),p.length>0&&this._createOrUpdateAnchor(p,o,a);return}const{borderBoxPointGroup:u,cursorList:l}=c.getRangePointData(e,s);this._setCursorList(l),u.length>0&&this._createOrUpdateRange(u,o,a)}_isEmpty(){return this.anchorNodePosition==null&&this.focusNodePosition==null}_isCollapsed(){const n=this.anchorNodePosition,t=this.focusNodePosition;if(n!=null&&t==null)return!0;if(n==null||t==null)return!1;const e=Object.keys(X1);for(const s of e){const i=n[s],o=t[s];if(i!==o)return!1}return n.isBack===t.isBack}_createOrUpdateRange(n,t,e){var o;if(this._rangeShape){this._rangeShape.translate(t,e),this._rangeShape.updatePointGroup(n),this._rangeShape.show();return}const s=.2,i=new s6(Q_+d.Tools.generateRandomId(k7),{pointsGroup:n,fill:((o=this.style)==null?void 0:o.fill)||l1(d.COLORS.black,s),left:t,top:e,evented:!1,debounceParentDirty:!1});this._rangeShape=i,this._scene.addObject(i,B6)}_createOrUpdateAnchor(n,t,e){var u,l;const s=St(n),{left:i,top:o,height:a}=s;if(this._anchorShape){this._anchorShape.transformByState({left:i+t,top:o+e,height:a}),this._anchorShape.show();return}const c=new f1(td+d.Tools.generateRandomId(k7),{left:i+t,top:o+e,height:a,strokeWidth:((u=this.style)==null?void 0:u.strokeWidth)||1,stroke:((l=this.style)==null?void 0:l.strokeActive)||l1(d.COLORS.black,1),evented:!1});this._anchorShape=c,this._scene.addObject(c,B6)}_setCursorList(n){n.length!==0&&(this._cursorList=n)}}var nd=Object.defineProperty,sd=Object.getOwnPropertyDescriptor,id=(r,n,t,e)=>{for(var s=e>1?void 0:e?sd(n,t):n,i=r.length-1,o;i>=0;i--)(o=r[i])&&(s=(e?o(n,t,s):o(s))||s);return e&&s&&nd(n,t,s),s},rd=(r,n)=>(t,e)=>n(t,e,r);exports.Skeleton=class extends d.Disposable{constructor(t){super();h(this,"_fontLocale");h(this,"_dirty",!0);this._localService=t,this._localeInitial()}get dirty(){return this._dirty}getFontLocale(){return this._fontLocale}makeDirty(t){this._dirty=t}_localeInitial(){}};exports.Skeleton=id([rd(0,e2.Inject(d.LocaleService))],exports.Skeleton);const od={columnProperties:[],columnSeparatorType:d.ColumnSeparatorType.NONE,sectionType:d.SectionType.SECTION_TYPE_UNSPECIFIED,startIndex:0};var vt=(r=>(r.PENDING="pending",r.CALCULATING="calculating",r.READY="ready",r.INVALID="invalid",r))(vt||{});class i2 extends exports.Skeleton{constructor(t,e){super(e);h(this,"_skeletonData");h(this,"_renderedBlockIdMap",new Map);h(this,"_findLiquid",new O2);this._docViewModel=t}static create(t,e){return new i2(t,e)}getViewModel(){return this._docViewModel}calculate(t){this.dirty&&(this._skeletonData=this._createSkeleton(t))}getSkeletonData(){return this._skeletonData}getActualSize(){const t=this.getSkeletonData();let e=Number.NEGATIVE_INFINITY,s=0;return t==null||t.pages.forEach(i=>{const{width:o,height:a}=i;e=Math.max(e,o),s+=a}),{actualWidth:e,actualHeight:s}}_getPageActualWidth(t){let e=Number.NEGATIVE_INFINITY;for(const s of t.sections)for(const i of s.columns)for(const o of i.lines){let a=0;for(const c of o.divides)for(const u of c.spanGroup)a+=u.width;e=Math.max(e,a)}return e}getPageSize(){return this.getViewModel().getDataModel().documentStyle.pageSize}findPositionBySpan(t){const e=t.parent,s=e==null?void 0:e.parent,i=s==null?void 0:s.parent,o=i==null?void 0:i.parent,a=o==null?void 0:o.parent,c=this.getSkeletonData();if(!e||!i||!o||!a||!c)return;const u=e.spanGroup.indexOf(t),l=s.divides.indexOf(e),D=i.lines.indexOf(s),f=o.columns.indexOf(i),p=a.sections.indexOf(o),F=c.pages.indexOf(a);return{span:u,divide:l,line:D,column:f,section:p,page:F}}findNodePositionByCharIndex(t,e=!0){const s=this._findNodeIterator(t);if(s==null)return;const i=this.getSkeletonData();if(!i)return;const o=i.pages,{span:a,divide:c,line:u,column:l,section:D,page:f}=s;return{span:c.spanGroup.indexOf(a),divide:u.divides.indexOf(c),line:l.lines.indexOf(u),column:D.columns.indexOf(l),section:f.sections.indexOf(D),page:o.indexOf(f),isBack:e}}findNodeByCharIndex(t){const e=this._findNodeIterator(t);return e==null?void 0:e.span}findSpanByPosition(t){if(t==null)return;const e=this.getSkeletonData();if(e==null)return;const{divide:s,line:i,column:o,section:a,page:c,isBack:u}=t;let{span:l}=t;u===!0&&(l-=1),l=l<0?0:l;const D=e.pages[c].sections[a].columns[o].lines[i].divides[s].spanGroup;return D[l].spanType===u1.LIST?D[l+1]:D[l]}findNodeByCoord(t,e,s,i){const{x:o,y:a}=t;this._findLiquid.reset();const c=this.getSkeletonData();if(c==null)return;const u=c.pages;let l=[],D=[],f=Number.POSITIVE_INFINITY;for(let p=0,F=u.length;p<F;p++){const E=u[p];this._findLiquid.translatePagePadding(E);const m=E.sections;for(const b of m){const{columns:S,height:v}=b;this._findLiquid.translateSection(b);for(const y of S){const{lines:T,width:B}=y;this._findLiquid.translateColumn(y);const O=T.length;for(let w=0;w<O;w++){const P=T[w],{divides:L,type:A,lineHeight:$=0}=P;if(A!==A2.BLOCK){this._findLiquid.translateSave(),this._findLiquid.translateLine(P);const{y:Y}=this._findLiquid,x=Y,R=Y+$,k=Math.abs(a-R),X=L.length;for(let z=0;z<X;z++){const j=L[z],{spanGroup:q,width:W}=j;this._findLiquid.translateSave(),this._findLiquid.translateDivide(j);const{x:V}=this._findLiquid;for(const Q of q){if(!Q.content||Q.content.length===0)continue;const{width:e1,left:n1}=Q,K=V+n1,t1=V+n1+e1,G=Math.abs(o-t1);if(a>=x&&a<=R){if(o>=K&&o<=t1)return{node:Q,ratioX:o/(K+t1),ratioY:a/(x+R)};f!==Number.NEGATIVE_INFINITY&&(l=[],D=[]),l.push({node:Q,ratioX:o/(K+t1),ratioY:a/(x+R)}),D.push(G),f=Number.NEGATIVE_INFINITY;continue}k<f&&(f=k,l=[],D=[]),k===f&&(l.push({node:Q,ratioX:o/(K+t1),ratioY:a/(x+R)}),D.push(G))}this._findLiquid.translateRestore()}this._findLiquid.translateRestore()}}}}this._findLiquid.restorePagePadding(E),this._translatePage(E,e,s,i)}return this._getNearestNode(l,D)}_getNearestNode(t,e){const s=Math.min(...e),i=e.indexOf(s);return t[i]}_getPageBoundingBox(t,e){const{pageWidth:s,pageHeight:i}=t,{x:o,y:a}=this._findLiquid;let c=-1,u=-1;return e===T1.VERTICAL?(c=s,u=a+i):e===T1.HORIZONTAL&&(c=o+s,u=i),{startX:o,startY:a,endX:c,endY:u}}_translatePage(t,e,s,i){this._findLiquid.translatePage(t,e,s,i)}_createSkeleton(t){var G;const e={width:Number.POSITIVE_INFINITY,height:Number.POSITIVE_INFINITY},s=this.getViewModel(),{headerTreeMap:i,footerTreeMap:o}=s,{documentStyle:a,drawings:c,lists:u={}}=s.getDataModel(),l={...d.PRESET_LIST_TYPE,...u},{pageNumberStart:D=1,pageSize:f=e,pageOrient:p=d.PageOrientType.PORTRAIT,defaultHeaderId:F,defaultFooterId:E,evenPageHeaderId:m,evenPageFooterId:b,firstPageHeaderId:S,firstPageFooterId:v,useFirstPageHeaderFooter:y,useEvenPageHeaderFooter:T,marginTop:B=0,marginBottom:O=0,marginRight:w=0,marginLeft:P=0,marginHeader:L=0,marginFooter:A=0,charSpace:$=0,linePitch:Y=15.6,gridType:x=d.GridType.LINES,paragraphLineGapDefault:R=0,defaultTabStop:k=10.5,textStyle:X={},renderConfig:z={horizontalAlign:d.HorizontalAlign.UNSPECIFIED,verticalAlign:d.VerticalAlign.UNSPECIFIED,centerAngle:0,vertexAngle:0,wrapStrategy:d.WrapStrategy.UNSPECIFIED}}=a,j=this._getNullSke(),q={headerTreeMap:i,footerTreeMap:o,lists:l,drawings:c,charSpace:$,linePitch:Y,gridType:x,localeService:this._localService,paragraphLineGapDefault:R,defaultTabStop:k,documentTextStyle:X},{skeHeaders:W,skeFooters:V,skeListLevel:Q,drawingAnchor:e1}=j,n1={skeHeaders:W,skeFooters:V,skeListLevel:Q,drawingAnchor:e1},K=[];j.pages=K;const t1=this.getViewModel();t1.resetCache();for(let U=0,h1=t1.children.length;U<h1;U++){const g1=t1.children[U],p1=t1.getSectionBreak(g1.endIndex)||od,{pageNumberStart:F1=D,pageSize:c1=f,pageOrient:L1=p,marginTop:V1=B,marginBottom:_1=O,marginRight:R1=w,marginLeft:x1=P,marginHeader:K1=L,marginFooter:y1=A,defaultHeaderId:J1=F,defaultFooterId:$1=E,evenPageHeaderId:N1=m,evenPageFooterId:k1=b,firstPageHeaderId:r6=S,firstPageFooterId:D2=v,useFirstPageHeaderFooter:_2=y,useEvenPageHeaderFooter:o6=T,columnProperties:d2=[],columnSeparatorType:M2=d.ColumnSeparatorType.NONE,contentDirection:f2,sectionType:_7,textDirection:zt,renderConfig:Wt=z}=p1,a6=t1.children[U+1],d7=(G=t1.getSectionBreak(a6==null?void 0:a6.endIndex))==null?void 0:G.sectionType,jt={defaultHeaderId:J1,evenPageHeaderId:N1,firstPageHeaderId:r6},Gt={defaultFooterId:$1,evenPageFooterId:k1,firstPageFooterId:D2};c1.width===null&&(c1.width=Number.POSITIVE_INFINITY),c1.height===null&&(c1.height=Number.POSITIVE_INFINITY);const f7={pageNumberStart:F1,pageSize:c1,pageOrient:L1,marginTop:V1,marginBottom:_1,marginRight:R1,marginLeft:x1,marginHeader:K1,marginFooter:y1,headerIds:jt,footerIds:Gt,useFirstPageHeaderFooter:_2,useEvenPageHeaderFooter:o6,columnProperties:d2,columnSeparatorType:M2,contentDirection:f2,sectionType:_7,sectionTypeNext:d7,textDirection:zt,renderConfig:Wt,...q};let Z1=U1(K),g7=!1;_7===d.SectionType.CONTINUOUS?(j2(K),this._addNewSectionByContinuous(Z1,d2,M2),g7=!0):Z1=s2(f7,n1,Z1==null?void 0:Z1.pageNumber);const Ut=J6(t1,g1,Z1,f7,n1,this._renderedBlockIdMap);d7===d.SectionType.CONTINUOUS&&d2.length>0;const{pages:p7}=Ut;g7&&p7.splice(0,1),K.push(...p7)}return j2(K),this._setPageParent(K,j),j}_setPageParent(t,e){for(const s of t)s.parent=e}_addNewSectionByContinuous(t,e,s){const i=t.sections,o=i[i.length-1],{pageWidth:a,pageHeight:c,marginTop:u,marginBottom:l,marginLeft:D,marginRight:f}=t,p=a-D-f,F=c-u-l,E=((o==null?void 0:o.top)||0)+((o==null?void 0:o.height)||0),m=Z6(e,s,E,0,p,F-E);m.parent=t,i.push(m)}_getNullSke(){return{pages:[],left:0,top:0,st:0,skeHeaders:new Map,skeFooters:new Map,skeListLevel:new Map,drawingAnchor:new Map}}_findNodeIterator(t){const e=this.getSkeletonData();if(!e)return;const s=e.pages;for(const i of s){const{sections:o,st:a,ed:c}=i;if(!(t<a||t>c))for(const u of o){const{columns:l,st:D,ed:f}=u;if(!(t<D||t>f))for(const p of l){const{lines:F,st:E,ed:m}=p;if(!(t<E||t>m))for(const b of F){const{divides:S,st:v,ed:y}=b,T=S.length;if(!(t<v||t>y))for(let B=0;B<T;B++){const O=S[B],{spanGroup:w,st:P,ed:L}=O;if(t<P||t>L)continue;let A=t-P;for(const $ of w)if(A-=$.count,A<0)return{page:i,section:u,column:p,line:b,divide:O,span:$}}}}}}}}class i7{constructor(){h(this,"uKey","");h(this,"type");h(this,"Z_INDEX",0);h(this,"parent");h(this,"translateX",0);h(this,"translateY",0);h(this,"extensionOffset",{})}get zIndex(){return this.Z_INDEX}draw(n,t,e,s){}clearCache(){}_getScale(n){return k6(n)}}const R2=d.Registry.create(),r7=d.Registry.create(),o7=d.Registry.create(),l2=d.Registry.create();var O6=(r=>(r[r.SPAN=0]="SPAN",r[r.LINE=1]="LINE",r))(O6||{});class i6 extends i7{constructor(){super(...arguments);h(this,"type",0);h(this,"translateX",0);h(this,"translateY",0)}}const ad="DefaultDocsBackgroundExtension",ud=10;let cd=class extends i6{constructor(){super(...arguments);h(this,"uKey",ad);h(this,"Z_INDEX",ud);h(this,"_preBackgroundColor","")}draw(t,e,s){var f;const i=(f=s.parent)==null?void 0:f.parent;if(!i)return;const{contentHeight:o=0}=i,{ts:a,width:c}=s;if(!a)return;const{bg:u}=a;if(!u)return;const l=d.getColorStyle(u),{spanStartPoint:D=I.create(0,0)}=this.extensionOffset;l&&(t.fillStyle=l,t.fillRect(D.x-.5,D.y,c+1,o+1))}clearCache(){this._preBackgroundColor=""}};l2.add(new cd);const ld="DefaultDocsBorderExtension";let hd=class extends i6{constructor(){super(...arguments);h(this,"uKey",ld);h(this,"Z_INDEX",50);h(this,"_preBorderStyle");h(this,"_preBorderColor","")}draw(t,e,s){var F;const i=(F=s.parent)==null?void 0:F.parent;if(!i)return;const{asc:o=0,lineHeight:a=0}=i,{ts:c,left:u,width:l}=s;if(!c)return;const{bd:D}=c;if(!D)return;this._getScale(e);const f=this._createBorderCache(D);t.save(),t.translateWithPrecisionRatio(a1,a1);const{spanStartPoint:p=I.create(0,0)}=this.extensionOffset;for(const E of f.keys()){const m=f.get(E);if(!m)continue;const{s:b,cl:S}=m,v=d.getColorStyle(S)||G1;b!==this._preBorderStyle&&(Y6(t,b),t.lineWidth=z6(b),this._preBorderStyle=b),v!==this._preBorderColor&&(t.strokeStyle=v||G1,this._preBorderColor=v),X6(t,E,{startX:p.x,startY:p.y,endX:p.x+l,endY:p.y+a})}t.restore()}clearCache(){this._preBorderStyle=null,this._preBorderColor=""}_createBorderCache(t){const{t:e,b:s,l:i,r:o}=t,a=new Map;return e&&a.set(J.TOP,e),s&&a.set(J.BOTTOM,s),i&&a.set(J.LEFT,i),o&&a.set(J.RIGHT,o),a}};l2.add(new hd);const Dd="DefaultDocsFontAndBaseLineExtension",_d=20;class dd extends i6{constructor(){super(...arguments);h(this,"uKey",Dd);h(this,"Z_INDEX",_d);h(this,"_preFontString","");h(this,"_preFontColor","")}draw(t,e,s){var F;if(!((F=s.parent)==null?void 0:F.parent))return;const{ts:o,content:a,fontStyle:c,bBox:u}=s,{spanPointWithFont:l=I.create(0,0)}=this.extensionOffset;if(a==null)return;if(!o){this._fillText(t,s,l);return}this._preFontString!==(c==null?void 0:c.fontString)&&(t.font=this._preFontString=(c==null?void 0:c.fontString)||"");const{cl:D,va:f}=o,p=d.getColorStyle(D)||G1;if(p&&this._preFontColor!==p&&(t.fillStyle=p),f===d.BaselineOffset.SUBSCRIPT||f===d.BaselineOffset.SUPERSCRIPT){let E=0;f===d.BaselineOffset.SUPERSCRIPT&&(E=-u.sbo),l.y+=E}this._fillText(t,s,l)}_fillText(t,e,s){const{renderConfig:i,spanStartPoint:o,centerPoint:a}=this.extensionOffset,{content:c,width:u,bBox:l}=e,{aba:D,abd:f}=l;if(c==null||o==null||a==null)return;const{vertexAngle:p,centerAngle:F}=i!=null?i:{},E=90;p===E&&F===E&&!Q2(c)?(t.save(),t.translate(o.x+a.x,o.y+a.y),t.rotate(Math.PI/2),t.translate(-u/2,(D+f)/2-f),t.fillText(c,0,0),t.restore()):t.fillText(c,s.x,s.y)}clearCache(){this._preFontString="",this._preFontColor=""}}l2.add(new dd);const fd="DefaultDocsLineExtension",gd=40;class pd extends i6{constructor(){super(...arguments);h(this,"uKey",fd);h(this,"Z_INDEX",gd);h(this,"_preBackgroundColor","")}draw(t,e,s){var b;const i=(b=s.parent)==null?void 0:b.parent;if(!i)return;const{contentHeight:o=0,asc:a}=i,{ts:c,bBox:u}=s;if(!c)return;const{sp:l,ba:D}=u,f=k6(e),p=.5,{ul:F,st:E,ol:m}=c;if(F){const S=o+m6-3;this._drawLine(t,s,F,S,f)}if(E){const S=a-(D-l)-p;this._drawLine(t,s,E,S,f)}if(m){const S=-m6-p;this._drawLine(t,s,m,S,f)}}clearCache(){this._preBackgroundColor=""}_drawLine(t,e,s,i,o){var D;const{s:a,cl:c,t:u,c:l=d.BooleanNumber.TRUE}=s;if(a===d.BooleanNumber.TRUE){const{originTranslate:f=I.create(0,0),alignOffset:p=I.create(0,0),renderConfig:F={}}=this.extensionOffset,{left:E,width:m}=e,{centerAngle:b=0,vertexAngle:S=0}=F,v=v1(b),y=v1(S);t.save(),t.translateWithPrecisionRatio(a1,a1),t.beginPath();const T=(l===d.BooleanNumber.TRUE?d.getColorStyle((D=e.ts)==null?void 0:D.cl):d.getColorStyle(c))||G1;t.strokeStyle=T,this._setLineType(t,u||d.TextDecoration.SINGLE);const B=v2(f.addByPoint(E,i),I.create(0,0),v,y,p),O=v2(f.addByPoint(E+m,i),I.create(0,0),v,y,p);t.moveTo(B.x,B.y),t.lineTo(O.x,O.y),t.stroke(),t.restore()}}_setLineType(t,e){e===d.TextDecoration.DASH_DOT_DOT_HEAVY||e===d.TextDecoration.DOT_DOT_DASH?t.setLineDash([2,2,5,2,2]):e===d.TextDecoration.DASH_DOT_HEAVY||e===d.TextDecoration.DOT_DASH?t.setLineDash([2,5,2]):e===d.TextDecoration.DOTTED||e===d.TextDecoration.DOTTED_HEAVY?t.setLineDash([2]):e===d.TextDecoration.DASH||e===d.TextDecoration.DASHED_HEAVY?t.setLineDash([3]):e===d.TextDecoration.DASH_LONG||e===d.TextDecoration.DASH_LONG_HEAVY?t.setLineDash([6]):t.setLineDash([0])}}l2.add(new pd);class md extends G6{constructor(t,e){super(t);h(this,"pageMarginLeft",0);h(this,"pageMarginTop",0);h(this,"pageLayoutType",T1.VERTICAL);this._skeleton=e}getSkeleton(){return this._skeleton}setSkeleton(t){this._skeleton=t}render(t,e){if(!this.visible)return this.makeDirty(!1),this;if(!this._skeleton)return;const s=this.transform.getMatrix();t.save(),t.transform(s[0],s[1],s[2],s[3],s[4],s[5]),this._draw(t,e),t.restore()}getParentScale(){if(!this.parent)return{scaleX:1,scaleY:1};let{scaleX:t=1,scaleY:e=1}=this.parent;return this.parent.classType===N.SCENE&&(t=this.parent.ancestorScaleX||1,e=this.parent.ancestorScaleY||1),{scaleX:t,scaleY:e}}scrollBySelection(){}syncSelection(){}remainActiveSelection(){}findNodeByCoord(t,e){}findCoordByNode(t){}_getBounding(t){}_draw(t,e){}}class x2 extends md{constructor(t,e,s){super(t,e);h(this,"onPageRenderObservable",new d.Observable);h(this,"docsLeft",0);h(this,"docsTop",0);h(this,"_drawLiquid");h(this,"_findLiquid");h(this,"_skeletonObserver");this.setConfig(s),this._drawLiquid=new O2,this._findLiquid=new O2,this._initialDefaultExtension(),this.makeDirty(!0)}static create(t,e,s){return new x2(t,e,s)}setConfig(t){(t==null?void 0:t.pageMarginLeft)!=null?this.pageMarginLeft=t==null?void 0:t.pageMarginLeft:this.pageMarginLeft=17,(t==null?void 0:t.pageMarginTop)!=null?this.pageMarginTop=t==null?void 0:t.pageMarginTop:this.pageMarginTop=14,(t==null?void 0:t.pageLayoutType)!=null?this.pageLayoutType=t==null?void 0:t.pageLayoutType:this.pageLayoutType=T1.VERTICAL}getOffsetConfig(){const{transform:t,pageLayoutType:e,pageMarginLeft:s,pageMarginTop:i,left:o,top:a}=this;return{documentTransform:t,pageLayoutType:e,pageMarginLeft:s,pageMarginTop:i,docsLeft:o,docsTop:a}}getEngine(){return this.getScene().getEngine()}draw(t,e){var D;if(!this.getSkeleton())return;this._drawLiquid.reset();const i=(D=this.getSkeleton())==null?void 0:D.getSkeletonData();if(i==null)return;this._drawLiquid.reset();const{pages:o}=i,a=this.getParentScale(),c=this.getExtensionsByOrder();for(const f of c)f.clearCache();let u=0,l=0;for(let f=0,p=o.length;f<p;f++){const F=o[f],{sections:E,marginTop:m=0,marginBottom:b=0,marginLeft:S=0,marginRight:v=0,width:y,height:T,renderConfig:B={}}=F,{verticalAlign:O=d.VerticalAlign.TOP,horizontalAlign:w=d.HorizontalAlign.LEFT,centerAngle:P=0,vertexAngle:L=0,wrapStrategy:A=d.WrapStrategy.UNSPECIFIED}=B,$=this._horizontalHandler(y,S,v,w),Y=this._verticalHandler(T,m,b,O),x=I.create($,Y),R=v1(P),k=v1(L),X=k-R;this.onPageRenderObservable.notifyObservers({page:F,pageLeft:l,pageTop:u,ctx:t}),this._startRotation(t,X);for(const q of E){const{columns:W}=q;this._drawLiquid.translateSection(q);for(const V of W){const{lines:Q,width:e1}=V;this._drawLiquid.translateColumn(V);const n1=Q.length;let K=x,t1=null;if(k!==0){const{rotateTranslateXList:G,rotatedHeight:U,rotatedWidth:h1,fixOffsetX:g1,fixOffsetY:p1,rotateTranslateY:F1}=W6(Q,e1,k);let c1=h1;U>this.height&&A!==d.WrapStrategy.WRAP&&(A===d.WrapStrategy.OVERFLOW||k>0)&&(c1=this.height/Math.tan(Math.abs(k)));const L1=this._horizontalHandler(c1,S,v,w);let _1=this._verticalHandler(U,m,b,O)-p1;U>this.height&&(k<0?_1=this.height-(U+p1):_1=-p1),K=I.create(L1+g1,_1),this._drawLiquid.translate(0,-F1),t1=G}else A===d.WrapStrategy.WRAP&&(K.x=S);for(let G=0;G<n1;G++){const U=Q[G],{divides:h1,asc:g1=0,type:p1,lineHeight:F1=0}=U,c1=g1,L1=c1*Math.sin(R),V1=c1*Math.cos(R);if(p1===A2.BLOCK)for(const _1 of c)_1.type===O6.LINE&&(_1.extensionOffset={alignOffset:K,renderConfig:B},_1.draw(t,a,U));else{this._drawLiquid.translateSave(),this._drawLiquid.translateLine(U,!0),t1&&this._drawLiquid.translate(t1[G]);const _1=h1.length;for(let R1=0;R1<_1;R1++){const x1=h1[R1],{spanGroup:K1}=x1;this._drawLiquid.translateSave(),this._drawLiquid.translateDivide(x1);for(const y1 of K1){if(!y1.content||y1.content.length===0)continue;const{width:J1,left:$1,paddingLeft:N1}=y1,{x:k1,y:r6}=this._drawLiquid,D2=I.create(k1,r6),_2=I.create(J1/2,F1/2),o6=v2(D2.addByPoint($1+N1,0),_2,R,k,K),d2=v2(D2.addByPoint($1+L1+N1,V1),_2,R,k,K),M2={originTranslate:D2,spanStartPoint:o6,spanPointWithFont:d2,centerPoint:_2,alignOffset:K,renderConfig:B};for(const f2 of c)f2.type===O6.SPAN&&(f2.extensionOffset=M2,f2.draw(t,a,y1))}this._drawLiquid.translateRestore()}this._drawLiquid.translateRestore()}}}}this._resetRotation(t,X);const{x:z,y:j}=this._drawLiquid.translatePage(F,this.pageLayoutType,this.pageMarginLeft,this.pageMarginTop);l+=z,u+=j}}changeSkeleton(t){return this.setSkeleton(t),this}_draw(t,e){this.draw(t,e)}_horizontalHandler(t,e,s,i){let o=0;return i===d.HorizontalAlign.CENTER?o=(this.width-t)/2:i===d.HorizontalAlign.RIGHT?o=this.width-t-s:o=e,o}_verticalHandler(t,e,s,i){let o=0;return i===d.VerticalAlign.MIDDLE?o=(this.height-t)/2:i===d.VerticalAlign.TOP?o=e:o=this.height-t-s,o}_startRotation(t,e){t.rotate(e||0)}_resetRotation(t,e){t.rotate(-e||0)}_initialDefaultExtension(){l2.getData().forEach(t=>{this.register(t)})}}class Fd{}function Cd(r){const n=r.getBoundingClientRect(),t=document.body,e=document.documentElement,s=window.pageYOffset||e.scrollTop||t.scrollTop,i=window.pageXOffset||e.scrollLeft||t.scrollLeft,o=e.clientTop||t.clientTop,a=e.clientLeft||t.clientLeft,c=n.top+s-o,u=n.left+i-a;return{top:c,left:u}}var Tt=(r=>(r[r.NONE=0]="NONE",r[r.X=1]="X",r[r.Y=2]="Y",r[r.ALL=3]="ALL",r))(Tt||{});class r2{constructor(n,t=3,e,s=.4,i=.1){h(this,"_requestNewFrameNumber",-1);h(this,"_viewport");h(this,"_offsetX",0);h(this,"_offsetY",0);h(this,"_moveX",0);h(this,"_moveY",0);h(this,"_scrollX",0);h(this,"_scrollY",0);h(this,"_scrollFunction");this._scene=n,this._scrollTimerType=t,this._padding=e,this._smoothRatioX=s,this._smoothRatioY=i,this._padding||(this._padding={t:0,b:15,l:0,r:60})}static create(n,t=3,e){return new r2(n,t,e)}set scrollTimerType(n){this._scrollTimerType=n}get scrollTimerType(){return this._scrollTimerType}setActiveViewport(n){this._viewport=n}getActiveViewport(){return this._viewport}startScroll(n,t,e){this._offsetX=n,this._offsetY=t,this._moveX=n,this._moveY=t,e!=null?this._viewport=e:this._viewport=this.getViewportByCoord(this._scene),this._runRenderLoop()}_scroll(n){const t=(n==null?void 0:n.top)||0,e=t+((n==null?void 0:n.height)||0),s=(n==null?void 0:n.left)||0,i=s+((n==null?void 0:n.width)||0),{t:o=0,b:a=0,r:c=0,l:u=0}=this._padding;let l=0,D=0,f=!1;if(this._scrollTimerType&1&&(this._moveX<s+u&&(l=(this._moveX-s-u)*this._smoothRatioX,f=!0),this._moveX>i-c&&(l=(this._moveX-i+c)*this._smoothRatioX,f=!0)),this._scrollTimerType&2&&(this._moveY<t+o&&(D=(this._moveY-t-o)*this._smoothRatioY,f=!0),this._moveY>e-a&&(D=(this._moveY-e+a)*this._smoothRatioY,f=!0)),!f)return;const p=n==null?void 0:n.scrollBy({x:l,y:D}),F=n==null?void 0:n.getActualScroll(l,D);if(this._scrollX=(F==null?void 0:F.x)||0,this._scrollY=(F==null?void 0:F.y)||0,p){const E=this._findAncestorScene(n==null?void 0:n.scene),m=this.getViewportByCoord(E);m&&this._scroll(m)}}scrolling(n,t,e){this._moveX=n,this._moveY=t,this._scrollFunction=e}stopScroll(){q7(this._requestNewFrameNumber)}dispose(){this.stopScroll(),delete this._scrollFunction}getViewportByCoord(n){return n==null?void 0:n.getActiveViewportByRelativeCoord(I.FromArray([this._offsetX,this._offsetY]))}getScene(){return this._scene}_runRenderLoop(){this._scroll(this._viewport),this._scrollFunction&&this._scrollFunction(this._scrollX,this._scrollY),this._requestNewFrameNumber=b2(this._runRenderLoop.bind(this))}_findAncestorScene(n){let t=n==null?void 0:n.getParent();for(;t;){if(t.classType===N.SCENE)return t;t=(t==null?void 0:t.getParent)&&(t==null?void 0:t.getParent())}}}var Ed=Object.defineProperty,bd=Object.getOwnPropertyDescriptor,Sd=(r,n,t,e)=>{for(var s=e>1?void 0:e?bd(n,t):n,i=r.length-1,o;i>=0;i--)(o=r[i])&&(s=(e?o(n,t,s):o(s))||s);return e&&s&&Ed(n,t,s),s},vd=(r,n)=>(t,e)=>n(t,e,r);function yt(r){const n=r==null?void 0:r.getCanvasElement();if(!n)return{left:0,top:0};const{top:t,left:e}=Cd(n);return{left:e,top:t}}function H7(r){var c;const n=(c=r.parent)==null?void 0:c.parent,t=n==null?void 0:n.parent;if(n==null||t==null)return;const{paragraphIndex:e}=n,s=t.lines.filter(u=>u.paragraphIndex===e);let i=-1,o="",a=!1;for(const u of s)for(const l of u.divides)for(const D of l.spanGroup)a||(i+=D.count),D===r&&(a=!0),o+=D.count>0?D.content:"";return{st:s[0].st,ed:e,content:o,nodeIndex:i}}exports.TextSelectionRenderManager=class extends d.RxDisposable{constructor(t){super();h(this,"_onInputBefore$",new s1.BehaviorSubject(null));h(this,"onInputBefore$",this._onInputBefore$.asObservable());h(this,"_onKeydown$",new s1.BehaviorSubject(null));h(this,"onKeydown$",this._onKeydown$.asObservable());h(this,"_onInput$",new s1.BehaviorSubject(null));h(this,"onInput$",this._onInput$.asObservable());h(this,"_onCompositionstart$",new s1.BehaviorSubject(null));h(this,"onCompositionstart$",this._onCompositionstart$.asObservable());h(this,"_onCompositionupdate$",new s1.BehaviorSubject(null));h(this,"onCompositionupdate$",this._onCompositionupdate$.asObservable());h(this,"_onCompositionend$",new s1.BehaviorSubject(null));h(this,"onCompositionend$",this._onCompositionend$.asObservable());h(this,"_onSelectionStart$",new s1.BehaviorSubject(null));h(this,"onSelectionStart$",this._onSelectionStart$.asObservable());h(this,"_onPaste$",new s1.Subject);h(this,"onPaste$",this._onPaste$.asObservable());h(this,"_textSelectionInner$",new s1.BehaviorSubject(null));h(this,"textSelectionInner$",this._textSelectionInner$.asObservable());h(this,"_onFocus$",new s1.Subject);h(this,"onFocus$",this._onFocus$.asObservable());h(this,"_onBlur$",new s1.Subject);h(this,"onBlur$",this._onBlur$.asObservable());h(this,"_container");h(this,"_inputParent");h(this,"_input");h(this,"_moveObserver");h(this,"_upObserver");h(this,"_viewportScrollX",0);h(this,"_viewportScrollY",0);h(this,"_rangeList",[]);h(this,"_currentSegmentId","");h(this,"_selectionStyle",T2);h(this,"_isSelectionEnabled",!0);h(this,"_viewPortObserverMap",new Map);h(this,"_isIMEInputApply",!1);h(this,"_activeViewport");h(this,"_docSkeleton");h(this,"_scene");h(this,"_document");this._logService=t,this._initDOM()}__getEditorContainer(){return this._container}getViewPort(){return this._activeViewport}setSegment(t){this._currentSegmentId=t}setStyle(t=T2){this._selectionStyle=t}resetStyle(){this.setStyle()}enableSelection(){this._isSelectionEnabled=!0}disableSelection(){this._isSelectionEnabled=!1}addTextRanges(t,e=!0){const{_scene:s,_docSkeleton:i}=this;for(const o of t){const a=bt(s,o,i,this._document);this._add(a)}this._textSelectionInner$.next({textRanges:this._getAllTextRanges(),segmentId:this._currentSegmentId,style:this._selectionStyle,isEditing:e}),this._updateInputPosition()}sync(){this._updateInputPosition()}activate(t,e){this._container.style.left=`${t}px`,this._container.style.top=`${e}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(t,e,s){t!==this._docSkeleton&&this.removeAllTextRanges(),this._docSkeleton=t,this._scene=e,this._activeViewport=e.getViewports()[0],this._document=s,this._attachScrollEvent(this._activeViewport)}handleDblClick(t){if(!this._scene||!this._isSelectionEnabled)return;const{offsetX:e,offsetY:s}=t,i=this._findNodeByCoord(e,s);if(i==null||i.node==null)return;const o=H7(i.node);if(o==null)return;const{content:a,st:c,nodeIndex:u}=o;if(u===-1||Intl.Segmenter==null)return;const D=new Intl.Segmenter(void 0,{granularity:"word"}).segment(a);let f=Number.NEGATIVE_INFINITY,p=Number.NEGATIVE_INFINITY;for(const{segment:F,index:E,isWordLike:m}of D)if(E<=u&&u<E+F.length&&m){f=E+c,p=E+c+F.length;break}if(Number.isFinite(f)&&Number.isFinite(p)){this.removeAllTextRanges();const F=[{startOffset:f,endOffset:p}];this.addTextRanges(F,!1)}}handleTripleClick(t){if(!this._scene||!this._isSelectionEnabled)return;const{offsetX:e,offsetY:s}=t,i=this._findNodeByCoord(e,s);if(i==null||i.node==null)return;const o=H7(i.node);if(o==null)return;this.removeAllTextRanges();const{st:a,ed:c}=o,u=[{startOffset:a,endOffset:c,collapsed:a===c}];this.addTextRanges(u,!1)}eventTrigger(t){var p;if(!this._scene||!this._isSelectionEnabled)return;const e=this._scene,{offsetX:s,offsetY:i}=t,o=this._findNodeByCoord(s,i),a=this._getNodePosition(o);if(a==null){this._removeAllTextRanges();return}if((o==null?void 0:o.node.streamType)===d.DataStreamTreeTokenType.PARAGRAPH&&(a.isBack=!0),t.shiftKey&&this._getActiveRangeInstance())this._updateActiveRangeFocusPosition(a);else if(t.ctrlKey||this._isEmpty()){const F=new V2(e,this._document,this._docSkeleton,a);this._addTextRange(F)}else this._updateTextRangeAnchorPosition(a);this._activeSelectionRefresh(),e.disableEvent();const c=r2.create(e);c.startScroll(s,i);const{scrollX:u,scrollY:l}=t2(c);this._viewportScrollX=u,this._viewportScrollY=l,this._onSelectionStart$.next((p=this._getActiveRangeInstance())==null?void 0:p.startNodePosition);let D=s,f=i;this._moveObserver=e.onPointerMoveObserver.add(F=>{const{offsetX:E,offsetY:m}=F;e.setCursor(r1.TEXT),!(Math.sqrt((E-D)**2+(m-f)**2)<3)&&(this._moving(E,m),c.scrolling(E,m,()=>{this._moving(E,m)}),D=E,f=m)}),this._upObserver=e.onPointerUpObserver.add(()=>{e.onPointerMoveObserver.remove(this._moveObserver),e.onPointerUpObserver.remove(this._upObserver),e.enableEvent(),this._textSelectionInner$.next({textRanges:this._getAllTextRanges(),segmentId:this._currentSegmentId,style:this._selectionStyle,isEditing:!1}),c.dispose(),this._updateInputPosition()})}removeAllTextRanges(){this._removeAllTextRanges(),this.deactivate()}_getAllTextRanges(){return this._rangeList}_getActiveRange(){const t=this._rangeList.find(u=>u.isActive());if(t==null)return null;const{startOffset:e,endOffset:s,collapsed:i,startNodePosition:o,endNodePosition:a,direction:c}=t;return e==null||s==null?null:{startOffset:e,endOffset:s,collapsed:i,startNodePosition:o,endNodePosition:a,direction:c,segmentId:this._currentSegmentId,style:this._selectionStyle}}_add(t){t!=null&&(this._addTextRange(t),t.refresh())}_getActiveRangeInstance(){return this._rangeList.find(t=>t.isActive())}dispose(){super.dispose(),this._detachEvent(),this._container.remove()}_initDOM(){const t=document.createElement("div");t.style.position="fixed",t.style.left="0px",t.style.top="0px";const e=document.createElement("div"),s=document.createElement("div");e.appendChild(s),t.appendChild(e),this._container=t,this._inputParent=e,this._input=s,this._initInput(),this._initInputEvents(),document.body.appendChild(t)}_initInput(){this._inputParent.style.cssText=`
2
2
  position:absolute;
3
3
  height:1px;
4
4
  width:1px;
@@ -14,60 +14,4 @@
14
14
  caret-color: transparent;
15
15
  white-space: pre-wrap;
16
16
  user-select: text;
17
- `}_initDOMCursor(){this._cursor.style.cssText=`
18
- visibility: visible;
19
- position: absolute;
20
- background: #000;
21
- left: 0;
22
- top: 0;
23
- width: 1px;
24
- height: 20px;
25
- opacity: 0;
26
- z-index: 0;
27
- pointer-events: none;
28
- display: none
29
- `,u4("keyframes univer_cursor_blinkStyle")||a4([`
30
- @-webkit-keyframes univer_cursor_blinkStyle {
31
- 0% {
32
- opacity: 1;
33
- }
34
-
35
- 13% {
36
- opacity: 0;
37
- }
38
-
39
- 50% {
40
- opacity: 0;
41
- }
42
-
43
- 63% {
44
- opacity: 1;
45
- }
46
-
47
- 100% {
48
- opacity: 1;
49
- }
50
- }
51
- `,`
52
- @keyframes univer_cursor_blinkStyle {
53
- 0% {
54
- opacity: 1;
55
- }
56
-
57
- 13% {
58
- opacity: 0;
59
- }
60
-
61
- 50% {
62
- opacity: 0;
63
- }
64
-
65
- 63% {
66
- opacity: 1;
67
- }
68
-
69
- 100% {
70
- opacity: 1;
71
- }
72
- }
73
- `])}_getNodePosition(t){var c;if(t==null)return;const{node:e,ratioX:s}=t,i=(c=this._docSkeleton)==null?void 0:c.findPositionBySpan(e);if(i==null)return;const a=s<.5;return{...i,isBack:a}}_interactTextRange(t){const e=[];let s=!1;this._rangeList.forEach(i=>{if(i===t)return!0;t.isIntersection(i)?(s=!0,i.dispose()):e.push(i)}),s&&(e.push(t),this._rangeList=e)}_removeAllTextRanges(){this._rangeList.forEach(t=>{t.dispose()}),this._rangeList=[]}_deactivateAllTextRanges(){this._rangeList.forEach(t=>{t.deactivate()})}_addTextRange(t){this._deactivateAllTextRanges(),t.activate(),this._rangeList.push(t)}_updateTextRangeAnchorPosition(t){if(!this._scene)return;let e=this._rangeList.pop();e||(e=new V2(this._scene,this._document,this._docSkeleton,t)),this._removeAllTextRanges(),e.activate(),e.anchorNodePosition=t,e.focusNodePosition=null,this._rangeList=[e]}_updateActiveRangeFocusPosition(t){if(!this._scene){this._logService.error("[TextSelectionRenderManager] _updateActiveRangeFocusPosition: scene is null");return}const e=this._getActiveRangeInstance();if(e==null||e.anchorNodePosition==null){this._logService.error("[TextSelectionRenderManager] _updateActiveRangeFocusPosition: active range has no anchor");return}this._removeAllTextRanges(),e.activate(),e.focusNodePosition=t,this.deactivate(),this._rangeList=[e]}_isEmpty(){return this._rangeList.length===0}_getCanvasOffset(){var e;const t=(e=this._scene)==null?void 0:e.getEngine();return Tt(t)}_scrollToSelection(){const t=this._getActiveRangeInstance(),e=t==null?void 0:t.getAnchor();if(!e||e&&!e.visible||this._activeViewport==null)return;const{left:s,top:i,height:o,width:a}=e,{left:c,top:u,right:l,bottom:D}=this._activeViewport.getBounding().viewBound,f=a,p=o;let F=0,E=0;i<u?F=i-u:i>D-p&&(F=i-D+p),s<c?E=s-c:s>l-f&&(E=s-l+f);const m=this._activeViewport.getBarScroll(E,F);this._activeViewport.scrollBy(m)}_updateDomCursorPositionAndSize(){var p;const t=this._getActiveRangeInstance(),e=t==null?void 0:t.getAnchor();if(!e||e&&!e.visible||this._activeViewport==null){this.focus();return}const{height:s,left:i,top:o}=e,a=this._activeViewport.getAbsoluteVector(I.FromArray([i,o])),{scaleY:c}=((p=this._scene)==null?void 0:p.getAncestorScale())||{scaleX:1,scaleY:1},{x:u,y:l}=a;this._cursor.style.height=`${s*c}px`;let{left:D,top:f}=this._getCanvasOffset();D+=u,f+=l,this.activate(D,f)}_moving(t,e){var a,c;if(this._docSkeleton==null)return;const s=this._findNodeByCoord(t,e),i=this._getNodePosition(s);if(!i)return;const o=this._getActiveRangeInstance();o&&(o.focusNodePosition=i,o.refresh(),this.deactivate(),this._interactTextRange(o),(c=(a=this._scene)==null?void 0:a.getEngine())==null||c.setRemainCapture())}_attachScrollEvent(t){if(t==null||this._docSkeleton==null)return;const s=`${this._docSkeleton.getViewModel().getDataModel().getUnitId()}_${t.viewPortKey}`;if(this._viewPortObserverMap.has(s))return;const i=t.onScrollBeforeObserver.add(a=>{if(!a.viewport)return;const u=this._getActiveRangeInstance();u==null||u.activeStatic(),this._cursor.style.display="none"}),o=t.onScrollStopObserver.add(a=>{const c=a.viewport;if(!c)return;const u=c.getBounding(),l=this._getActiveRangeInstance(),D=l==null?void 0:l.getAnchor();if(!(!D||D&&!D.visible)){if(u){const{left:f,top:p,right:F,bottom:E}=u.viewBound;if(D.left<f||D.left>F||D.top<p||D.top>E){l==null||l.deactivateStatic();return}}this._updateDomCursorPositionAndSize(),l==null||l.deactivateStatic(),this._cursor.style.display="revert"}});this._viewPortObserverMap.set(s,{scrollBefore:i,scrollStop:o})}_initInputEvents(){this.disposeWithMe(s1.fromEvent(this._input,"keydown").subscribe(t=>{this._isIMEInputApply||this._eventHandle(t,e=>{this._onKeydown$.next(e)})})),this.disposeWithMe(s1.fromEvent(this._input,"input").subscribe(t=>{this._isIMEInputApply||this._eventHandle(t,e=>{this._onInputBefore$.next(e),this._onInput$.next(e)})})),this.disposeWithMe(s1.fromEvent(this._input,"compositionstart").subscribe(t=>{this._isIMEInputApply=!0,this._eventHandle(t,e=>{this._onCompositionstart$.next(e)})})),this.disposeWithMe(s1.fromEvent(this._input,"compositionend").subscribe(t=>{this._isIMEInputApply=!1,this._eventHandle(t,e=>{this._onCompositionend$.next(e)})})),this.disposeWithMe(s1.fromEvent(this._input,"compositionupdate").subscribe(t=>{this._eventHandle(t,e=>{this._onInputBefore$.next(e),this._onCompositionupdate$.next(e)})})),this.disposeWithMe(s1.fromEvent(this._input,"paste").subscribe(t=>{this._eventHandle(t,e=>{this._onPaste$.next(e)})})),this.disposeWithMe(s1.fromEvent(this._input,"focus").subscribe(t=>{this._eventHandle(t,e=>{this._onFocus$.next(e)})})),this.disposeWithMe(s1.fromEvent(this._input,"blur").subscribe(t=>{this._eventHandle(t,e=>{this._onBlur$.next(e)})}))}_eventHandle(t,e){const s=this._input.textContent||"";this._input.innerHTML="";const i=this._getActiveRange(),o=this._getAllTextRanges();e({event:t,content:s,activeRange:i,rangeList:o})}_getTransformCoordForDocumentOffset(t,e){const{documentTransform:s}=this._document.getOffsetConfig();if(this._activeViewport==null||s==null)return;const i=this._activeViewport.getRelativeVector(I.FromArray([t,e]));if(i)return s.clone().invert().applyPoint(i)}_findNodeByCoord(t,e){var c;const s=this._getTransformCoordForDocumentOffset(t,e);if(s==null)return;const{pageLayoutType:i=T1.VERTICAL,pageMarginLeft:o,pageMarginTop:a}=this._document.getOffsetConfig();return(c=this._docSkeleton)==null?void 0:c.findNodeByCoord(s,i,o,a)}_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 t=this._getActiveRangeInstance();t==null||t.refresh()}};exports.TextSelectionRenderManager=Fd([Cd(0,d.ILogService)],exports.TextSelectionRenderManager);const Ed=e2.createIdentifier("univer.doc.text-selection-render-manager");class bd{}class r7 extends W6{constructor(n,t){super(n),this._skeleton=t}getSkeleton(){return this._skeleton}updateSkeleton(n){this._skeleton=n}render(n,t){if(!this.visible)return this.makeDirty(!1),this;n.save(),this._draw(n,t),n.restore()}getParentScale(){let{scaleX:n=1,scaleY:t=1}=this.parent;return this.parent.classType===N.SCENE_VIEWER&&(n=this.parent.ancestorScaleX||1,t=this.parent.ancestorScaleY||1),{scaleX:n,scaleY:t}}getDocuments(){}getNoMergeCellPositionByIndex(n,t){}getScrollXYByRelativeCoords(n){return{x:0,y:0}}getSelectionBounding(n,t,e,s){}_draw(n,t){}}class o7 extends r7{_draw(n,t){this.draw(n,t)}}class Sd extends o7{constructor(t,e){super(t,e);h(this,"_columnHeaderLayoutExtension");this._initialDefaultExtension(),this.makeDirty(!0)}get columnHeaderLayoutExtension(){return this._columnHeaderLayoutExtension}draw(t,e){const s=this.getSkeleton();if(!s)return;const i=this.getParentScale();s.calculateSegment(e);const o=s.rowColumnSegment;if(o.startColumn===-1&&o.endColumn===-1)return;const{rowHeaderWidth:a}=s;t.translateWithPrecision(a,0);const c=this.getExtensionsByOrder();for(const u of c)u.draw(t,i,s)}isHit(t){const e=this._getInverseCoord(t),s=this.getSkeleton();if(!s)return!1;const{rowHeaderWidth:i,columnHeaderHeight:o}=s;return e.x>i&&e.y>=0&&e.y<=o}_initialDefaultExtension(){i7.getData().forEach(t=>{this.register(t)}),this._columnHeaderLayoutExtension=this.getExtensionByKey("DefaultColumnHeaderLayoutExtension")}}var yt=(r=>(r[r.GRID=0]="GRID",r))(yt||{});class h2 extends n7{constructor(){super(...arguments);h(this,"type",0)}getCellIndex(t,e,s,i,o){return Q1(t,e,s,i,o)}isRenderDiffRangesByCell(t,e){if(e==null||e.length===0)return!0;for(const s of e){const{startRow:i,startColumn:o,endRow:a,endColumn:c}=s;if(d.Rectangle.intersects(s,{startRow:i,endRow:a,startColumn:o,endColumn:c}))return!0}return!1}isRenderDiffRangesByColumn(t,e,s){if(s==null||s.length===0)return!0;for(const i of s){const{startColumn:o,endColumn:a}=i;if(d.Rectangle.intersects({startRow:0,endRow:0,startColumn:t,endColumn:e},{startRow:0,endRow:0,startColumn:o,endColumn:a}))return!0}return!1}isRenderDiffRangesByRow(t,e,s){if(s==null||s.length===0)return!0;for(const i of s){const{startRow:o,endRow:a}=i;if(d.Rectangle.intersects({startRow:t,endRow:e,startColumn:0,endColumn:0},{startRow:o,endRow:a,startColumn:0,endColumn:0}))return!0}return!1}}const vd="DefaultBackgroundExtension",Td=40,yd=20;class Bt extends h2{constructor(){super(...arguments);h(this,"uKey",vd);h(this,"Z_INDEX",Td);h(this,"PRINTING_Z_INDEX",yd)}get zIndex(){var t;return(t=this.parent)!=null&&t.isPrinting?this.PRINTING_Z_INDEX:this.Z_INDEX}draw(t,e,s,i){const{stylesCache:o}=s,{background:a,backgroundPositions:c}=o;if(!s)return;const{rowHeightAccumulation:u,columnTotalWidth:l,columnWidthAccumulation:D,rowTotalHeight:f}=s;!u||!D||l===void 0||f===void 0||(t.save(),t.setGlobalCompositeOperation("destination-over"),a&&Object.keys(a).forEach(p=>{const F=a[p];t.fillStyle=p||l1([255,255,255]),t.beginPath(),F.forValue((E,m)=>{const b=c==null?void 0:c.getValue(E,m);if(b==null)return!0;let{startY:S,endY:v,startX:y,endX:T}=b;const{isMerged:B,isMergedMainCell:O,mergeInfo:w}=b;if(B||!this.isRenderDiffRangesByCell({startRow:w.startRow,endRow:w.endRow,startColumn:w.startColumn,endColumn:w.endColumn},i))return!0;O&&(S=w.startY,v=w.endY,y=w.startX,T=w.endX),t.moveTo(y,S),t.lineTo(y,v),t.lineTo(T,v),t.lineTo(T,S)}),t.closePath(),t.fill()}),t.restore())}}R2.add(Bt);const Bd="DefaultBorderExtension",Od=50;class Ot extends h2{constructor(){super(...arguments);h(this,"uKey",Bd);h(this,"Z_INDEX",Od)}draw(t,e,s,i){const{dataMergeCache:o,stylesCache:a,overflowCache:c}=s,{border:u}=a;if(!s)return;const{rowHeightAccumulation:l,columnTotalWidth:D,columnWidthAccumulation:f,rowTotalHeight:p}=s;if(!l||!f||D===void 0||p===void 0)return;t.save();let F,E;t.translateWithPrecisionRatio(a1,a1),u==null||u.forValue((m,b,S)=>{if(!S)return!0;const v=this.getCellIndex(m,b,l,f,o);let{startY:y,endY:T,startX:B,endX:O}=v;const{isMerged:w,isMergedMainCell:P,mergeInfo:L}=v;if(w||(P&&(y=L.startY,T=L.endY,B=L.startX,O=L.endX),!this.isRenderDiffRangesByRow(L.startRow,L.endRow,i)))return!0;for(const A in S){const{type:$,style:Y,color:x}=S[A];Y!==F&&(H6(t,Y),t.lineWidth=X6(Y),F=Y),x!==E&&(t.strokeStyle=x||G1,E=x),_4(t,$,{startX:B,startY:y,endX:O,endY:T}),!this._getOverflowExclusion(c,$,m,b)&&k6(t,$,{startX:B,startY:y,endX:O,endY:T})}}),t.closePath(),t.restore()}_getOverflowExclusion(t,e,s,i){let o=!1;return e===J.TOP||e===J.BOTTOM||t==null||t.forRow((a,c)=>{if(a!==s)return!0;c.forEach(u=>{const l=t.getValue(a,u),{startColumn:D,endColumn:f}=l;if(e===J.LEFT&&i>D&&i<=f||e===J.RIGHT&&i>=D&&i<f)return o=!0,!1})}),o}}R2.add(Ot);const wd="DefaultColumnHeaderLayoutExtension";class wt extends h2{constructor(){super(...arguments);h(this,"uKey",wd);h(this,"Z_INDEX",10)}draw(t,e,s){const{rowColumnSegment:i,columnHeaderHeight:o=0}=s,{startColumn:a,endColumn:c}=i;if(!s)return;const{rowHeightAccumulation:u,columnTotalWidth:l,columnWidthAccumulation:D,rowTotalHeight:f}=s;if(!u||!D||l===void 0||f===void 0)return;const p=this._getScale(e);t.fillStyle=l1([248,249,250]),t.fillRect(0,0,l,o),t.textAlign="center",t.textBaseline="middle",t.fillStyle=l1([0,0,0]),t.beginPath(),t.lineWidth=1,t.translateWithPrecisionRatio(a1,a1),t.strokeStyle=l1([217,217,217]),t.font=`13px ${Z2}`;let F=0;const E=D.length;for(let b=a-1;b<=c;b++){if(b<0||b>E-1)continue;const S=D[b];if(F===S)continue;t.moveTo(S,0),t.lineTo(S,o);const v=F+(S-F)/2;t.fillText(d.numberToABC(b),v,o/2+A6),F=S}const m=o-.5/p;t.moveTo(0,m),t.lineTo(l,m),t.stroke()}}i7.add(new wt);class B1{constructor(n,t){h(this,"children",[]);h(this,"parent");h(this,"startIndex",-1);h(this,"endIndex",-1);h(this,"blocks",[]);this.nodeType=n,this.content=t}static create(n,t){return new B1(n,t)}dispose(){this.children.forEach(n=>{n.dispose()}),this.parent=null,this.blocks=[]}getProps(){const{children:n,parent:t,startIndex:e,endIndex:s,nodeType:i,content:o}=this;return{children:n,parent:t,startIndex:e,endIndex:s,nodeType:i,content:o}}addBlocks(n){this.blocks=this.blocks.concat(n)}setIndexRange(n,t){this.startIndex=n,this.endIndex=t}insertText(n,t){this.content=d.insertTextToContent(this.content||"",t-this.startIndex,n)}exclude(n){const{startIndex:t,endIndex:e}=this;return n<t||n>e}plus(n){this.startIndex+=n,this.endIndex+=n,this._addIndexForBlock(n)}selfPlus(n,t){this.endIndex+=n,t==null&&(t=this.startIndex),this._addIndexForBlock(n,t)}split(n){const{children:t,parent:e,startIndex:s,nodeType:i,content:o=""}=this.getProps();if(this.exclude(n))return;const a=0,c=n-s,u=c,l=o.slice(a,c),D=B1.create(i,l);D.parent=e,D.setIndexRange(a,c-1);const f=o.slice(u),p=B1.create(i,f);p.parent=e,p.setIndexRange(u,u+f.length-1);const F=[],E=[];for(const m of t){const{startIndex:b}=m;if(m.exclude(n))n<b?F.push(m):E.push(m);else{const S=m.split(n);if(S==null){F.push(m);continue}const{firstNode:v,lastNode:y}=S;F.push(v),F.push(y)}}return D.children=F,p.children=E,D._resetBlocks(),p._resetBlocks(),{firstNode:D,lastNode:p}}getPositionInParent(){var t;const n=(t=this.parent)==null?void 0:t.children.indexOf(this);return n==null?-1:n}remove(){this.children=[],this.parent!=null&&(this.parent.children.splice(this.getPositionInParent(),1),this.parent=null)}minus(n,t){const e=d.horizontalLineSegmentsSubtraction(this.startIndex,this.endIndex,n,t);if(e.length===0)return;const s=this.startIndex;this.startIndex=e[0],this.endIndex=e[1],this.content!=null&&(this.content=d.deleteContent(this.content||"",n-s,t-s+1))}merge(n){const{startIndex:t,endIndex:e,children:s}=n;this.endIndex+=e-t+1,this.children.push(...s),this.content+=n.content||"",n.remove()}_addIndexForBlock(n,t=Number.NEGATIVE_INFINITY){for(let e=0,s=this.blocks.length;e<s;e++){const i=this.blocks[e];i>=t&&(this.blocks[e]=i+n)}}_resetBlocks(){if(this.nodeType===d.DataStreamTreeNodeType.PARAGRAPH&&this.content!=null&&this.content.length!==0){this.blocks=[];for(let n=0,t=this.content.length;n<t;n++)this.content[n]===d.DataStreamTreeTokenType.CUSTOM_BLOCK&&this.blocks.push(this.startIndex+n)}}}class M1{constructor(n){h(this,"children",[]);h(this,"_sectionBreakCurrentIndex",0);h(this,"_paragraphCurrentIndex",0);h(this,"_textRunCurrentIndex",0);h(this,"_customBlockCurrentIndex",0);h(this,"_tableBlockCurrentIndex",0);h(this,"_customRangeCurrentIndex",0);h(this,"headerTreeMap",new Map);h(this,"footerTreeMap",new Map);this._documentDataModel=n,n.getBody()!=null&&(this.children=this._transformToTree(n.getBody().dataStream),this._buildHeaderFooterViewModel())}dispose(){this.children.forEach(n=>{n.dispose()})}selfPlus(n,t){}getPositionInParent(){return 0}getLastIndex(){return this.children[this.children.length-1].endIndex}getBody(){return this._documentDataModel.getBody()}getDataModel(){return this._documentDataModel}getSelfOrHeaderFooterViewModel(n){return n==null?this:this.headerTreeMap.has(n)?this.headerTreeMap.get(n):this.footerTreeMap.has(n)?this.footerTreeMap.get(n):this}reset(n){this._documentDataModel=n,this.children=this._transformToTree(n.getBody().dataStream),this._buildHeaderFooterViewModel()}insert(n,t=0){var o;const e=n.dataStream;let s=e.length;const i=this._getParagraphByIndex(this.children,t);if(i!=null)if(e[s-1]===d.DataStreamTreeTokenType.SECTION_BREAK){const a=new d.DocumentDataModel({body:n}),c=new M1(a);s-=1;const u=c.children;for(const p of u)this._forEachDown(p,F=>{F.plus(t)});const l=i.split(t);if(l==null)return;const{firstNode:D,lastNode:f}=l;(o=i.parent)==null||o.children.splice(i.getPositionInParent(),1,D,...u,f),this._forEachTop(i.parent,p=>{p.selfPlus(s,p.getPositionInParent());const F=p.children;let E=!1;for(const m of F)m===f&&(E=!0),E&&this._forEachDown(m,b=>{b.plus(s)})})}else s===1&&e[s-1]===d.DataStreamTreeTokenType.PARAGRAPH?this._insertParagraph(i,t):(i.insertText(e,t),i.selfPlus(s,t),this._forEachTop(i.parent,a=>{a.selfPlus(s,a.getPositionInParent());const c=a.children;let u=!1;for(const l of c)l.startIndex>t&&(u=!0),u&&this._forEachDown(l,D=>{D.plus(s)})}))}delete(n,t){const e=this.children;this._deleteTree(e,n,t)}getText(){const n=[];function t(e){e.content&&n.push(e.content),e.children.forEach(t)}return this.children.forEach(e=>t(e)),n.join("")}resetCache(){this._sectionBreakCurrentIndex=0,this._paragraphCurrentIndex=0,this._textRunCurrentIndex=0,this._customBlockCurrentIndex=0,this._tableBlockCurrentIndex=0,this._customRangeCurrentIndex=0}getSectionBreak(n){if(n==null)return;const t=this.getBody().sectionBreaks;if(t!=null)for(let e=this._sectionBreakCurrentIndex;e<t.length;e++){const s=t[e];if(s.startIndex===n)return this._sectionBreakCurrentIndex=e,s}}getParagraph(n){const t=this.getBody().paragraphs;if(t!=null)for(let e=this._paragraphCurrentIndex;e<t.length;e++){const s=t[e];if(s.startIndex===n)return this._paragraphCurrentIndex=e,s}}getTextRunRange(n=0,t){const e=this.getBody().textRuns;if(e==null)return[{st:n,ed:t}];const s=[];for(let a=this._textRunCurrentIndex,c=e.length;a<c;a++){const u=e[a];if(u.st>t){this._textRunCurrentIndex=a;break}else if(u.ed<n){this._textRunCurrentIndex=a;continue}else s.push({st:u.st<n?n:u.st,ed:u.ed>t?t:u.ed,sId:u.sId,ts:u.ts}),this._textRunCurrentIndex=a}const i=s[0]||{st:t+1};i.st>n&&s.push({st:n,ed:i.st-1});const o=s[s.length-1]||{ed:n-1};return o.ed<t&&s.push({st:o.ed+1,ed:t}),s}getTextRun(n){const t=this.getBody().textRuns;if(t==null)return;const e=t[this._textRunCurrentIndex];if(e!=null){if(n>=e.st&&n<e.ed)return e;if(n<e.st)return}for(let s=this._textRunCurrentIndex,i=t.length;s<i;s++){const o=t[s];if(n>=o.st&&n<o.ed)return this._textRunCurrentIndex=s,o}}getCustomBlock(n){const t=this.getBody().customBlocks;if(t!=null)for(let e=this._customBlockCurrentIndex;e<t.length;e++){const s=t[e];if(s.startIndex===n)return this._customBlockCurrentIndex=e,s}}getTable(n){const t=this.getBody().tables;if(t!=null)for(let e=this._tableBlockCurrentIndex;e<t.length;e++){const s=t[e];if(s.startIndex===n)return this._tableBlockCurrentIndex=e,s}}getCustomRange(n){const t=this.getBody().customRanges;if(t!=null)for(let e=0,s=t.length;e<s;e++){const i=t[e];if(n>=i.startIndex&&n<=i.endIndex)return i}}_transformToTree(n){const t=n.length;let e="";const s=[];let i=[],o=[];for(let a=0;a<t;a++){const c=n[a];if(c===d.DataStreamTreeTokenType.PARAGRAPH){e+=d.DataStreamTreeTokenType.PARAGRAPH;const u=B1.create(d.DataStreamTreeNodeType.PARAGRAPH,e);u.setIndexRange(a-e.length+1,a),u.addBlocks(o),i.push(u),e="",o=[]}else if(c===d.DataStreamTreeTokenType.SECTION_BREAK){const u=B1.create(d.DataStreamTreeNodeType.SECTION_BREAK);this._batchParent(u,i);const l=i[i.length-1];l&&l.content&&(l.content+=d.DataStreamTreeTokenType.SECTION_BREAK),s.push(u),i=[]}else c===d.DataStreamTreeTokenType.TABLE_START?i.push(B1.create(d.DataStreamTreeNodeType.TABLE)):c===d.DataStreamTreeTokenType.TABLE_ROW_START?i.push(B1.create(d.DataStreamTreeNodeType.TABLE_ROW)):c===d.DataStreamTreeTokenType.TABLE_CELL_START?i.push(B1.create(d.DataStreamTreeNodeType.TABLE_CELL)):c===d.DataStreamTreeTokenType.TABLE_END?this._processPreviousNodesUntil(i,d.DataStreamTreeNodeType.TABLE):c===d.DataStreamTreeTokenType.TABLE_ROW_END?this._processPreviousNodesUntil(i,d.DataStreamTreeNodeType.TABLE_ROW):c===d.DataStreamTreeTokenType.TABLE_CELL_END?this._processPreviousNodesUntil(i,d.DataStreamTreeNodeType.TABLE_CELL):(c===d.DataStreamTreeTokenType.CUSTOM_BLOCK&&o.push(a),e+=c)}return s}_processPreviousNodesUntil(n,t){const e=[];let s=n.pop();for(;s&&s.nodeType!==t;)e.push(s),s=n.pop();const i=n[n.length-1];if(this._batchParent(i,e,d.DataStreamTreeNodeType.TABLE),t===d.DataStreamTreeNodeType.TABLE_CELL){const o=e[0],a=e[e.length];o.content=d.DataStreamTreeTokenType.TABLE_CELL_START+o.content||"",o.startIndex-=1,a.content+=d.DataStreamTreeTokenType.TABLE_CELL_END,a.endIndex+=1}else if(t===d.DataStreamTreeNodeType.TABLE_ROW){const o=e[0].children[0];let a=e[e.length];a=a.children[a.children.length-1],o.content=d.DataStreamTreeTokenType.TABLE_ROW_START+o.content||"",o.startIndex-=1,a.content+=d.DataStreamTreeTokenType.TABLE_ROW_END,a.endIndex+=1}else if(t===d.DataStreamTreeNodeType.TABLE){const o=e[0].children[0].children[0];let a=e[e.length];a=a.children[a.children.length-1],a=a.children[a.children.length-1],o.content=d.DataStreamTreeTokenType.TABLE_START+o.content||"",o.startIndex-=1,a.content+=d.DataStreamTreeTokenType.TABLE_END,a.endIndex+=1}}_batchParent(n,t,e=d.DataStreamTreeNodeType.SECTION_BREAK){for(const i of t)i.parent=n,n.children.push(i);const s=e===d.DataStreamTreeNodeType.SECTION_BREAK?0:1;n.setIndexRange(t[0].startIndex-s,t[t.length-1].endIndex+1)}_buildHeaderFooterViewModel(){const{headerModelMap:n,footerModelMap:t}=this._documentDataModel;for(const[e,s]of n)this.headerTreeMap.set(e,new M1(s));for(const[e,s]of t)this.footerTreeMap.set(e,new M1(s))}_getParagraphByIndex(n,t){for(const e of n){const{children:s}=e;if(!e.exclude(t))return e.nodeType===d.DataStreamTreeNodeType.PARAGRAPH?e:this._getParagraphByIndex(s,t)}return null}_forEachTop(n,t){let e=n;for(;e;)t(e),e=e.parent;t(this)}_forEachDown(n,t){t(n);const e=n.children;for(n of e)this._forEachDown(n,t)}_deleteTree(n,t,e){const s=t,i=t+e-1;let o=null,a=n.length,c=0;for(;c<a;){const u=n[c],{startIndex:l,endIndex:D,children:f}=u;if(this._deleteTree(f,t,e),s===i&&i===D){if(u.nodeType===d.DataStreamTreeNodeType.PARAGRAPH){const p=this._getNextNode(u);if(p==null){c++;continue}u.minus(s,i),u.merge(p),a--}}else if(s<=l&&i>=D){u.remove(),a--;continue}else if(l<=s&&D>=i)u.minus(s,i);else if(i>l&&i<D){if(u.minus(l,i),o!=null){o.merge(u),o=null,a--;continue}}else s>l&&s<D?(u.minus(s,D),o=u):l>i&&u.plus(-e);c++}}_getNextNode(n){var s;const t=n.getPositionInParent(),e=(s=n.parent)==null?void 0:s.children;return e==null?void 0:e[t+1]}_insertParagraph(n,t=0){var c;const e=n.startIndex,s=n.endIndex,i=n.split(t);if(i==null)return;const{firstNode:o,lastNode:a}=i;o.content+=d.DataStreamTreeTokenType.PARAGRAPH,o.selfPlus(1),o.plus(e),this._forEachDown(a,u=>{u.plus(e+1)}),(c=n.parent)==null||c.children.splice(n.getPositionInParent(),1,o,a),this._forEachTop(n.parent,u=>{u.selfPlus(1,u.getPositionInParent());const l=u.children;let D=!1;for(const f of l)f!==a&&(f.startIndex>=s+1&&(D=!0),D&&this._forEachDown(f,p=>{p.plus(1)}))})}}function C2(r,n=0){const t=r==null?void 0:r.getSkeletonData(),e=v1(n);if(!t)return;const{pages:s}=t,i=s[s.length-1],{width:o,height:a}=i;if(e===0)return{width:o,height:a};if(Math.abs(e)===Math.PI/2)return{width:a,height:o};let c=0,u=0;const l=[];N4([i],f=>{const{lines:p,width:F,spaceWidth:E}=f,{rotatedHeight:m,rotatedWidth:b}=Y6(p,F,e);u+=m,l.push({rotatedWidth:b,spaceWidth:E})});const D=l.length;for(let f=0;f<D;f++){const{rotatedWidth:p}=l[f];f===0&&(c+=p)}return{width:c,height:u}}const k7={t:0,b:0,l:2,r:2};class a7 extends exports.Skeleton{constructor(t,e,s,i,o){super(o);h(this,"_rowHeightAccumulation",[]);h(this,"_rowTotalHeight",0);h(this,"_columnWidthAccumulation",[]);h(this,"_columnTotalWidth",0);h(this,"_rowHeaderWidth",0);h(this,"_columnHeaderHeight",0);h(this,"_rowColumnSegment",{startRow:-1,endRow:-1,startColumn:-1,endColumn:-1});h(this,"_dataMergeCache",[]);h(this,"_overflowCache",new d.ObjectMatrix);h(this,"_stylesCache",{background:{},backgroundPositions:new d.ObjectMatrix,font:{},border:new d.ObjectMatrix});h(this,"_renderedCellCache",new d.ObjectMatrix);h(this,"_showGridlines",d.BooleanNumber.TRUE);h(this,"_marginTop",0);h(this,"_marginLeft",0);this._worksheet=t,this._config=e,this._cellData=s,this._styles=i,this.updateLayout()}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._config.mergeData}get rowHeaderWidthAndMarginLeft(){return this.rowHeaderWidth+this._marginLeft}get columnHeaderHeightAndMarginTop(){return this.columnHeaderHeight+this._marginTop}static create(t,e,s,i,o){return new a7(t,e,s,i,o)}getWorksheetConfig(){return this._config}getCellData(){return this._cellData}getsStyles(){return this._styles}setOverflowCache(t){this._overflowCache=t}setMarginLeft(t){this._marginLeft=t}setMarginTop(t){this._marginTop=t}calculateSegment(t){if(this._config&&(this.updateLayout(),!(!this._rowHeightAccumulation||!this._columnWidthAccumulation)))return t!=null&&(this._rowColumnSegment=this.getRowColumnSegment(t)),!0}calculateWithoutClearingCache(t){if(!this.calculateSegment(t))return;const{mergeData:e}=this._config;return this._dataMergeCache=e&&this._getMergeCells(e,this._rowColumnSegment),this._calculateStylesCache(),this}calculate(t){return this._resetCache(),this.calculateWithoutClearingCache(t),this}calculateAutoHeightInRange(t){var a;if(!d.Tools.isArray(t))return[];const e=[],{mergeData:s,rowData:i}=this._config,o=i;for(const c of t){const{startRow:u,endRow:l,startColumn:D,endColumn:f}=c;for(let p=u;p<=l;p++){if(e.some(({row:E})=>E===p)||((a=o[p])==null?void 0:a.ia)===d.BooleanNumber.FALSE)continue;if(r4(p,D,f,s)){const E=this._calculateRowAutoHeight(p);e.push({row:p,autoHeight:E})}}}return e}_calculateRowAutoHeight(t){var l,D;const{columnCount:e,columnData:s,mergeData:i,defaultRowHeight:o}=this._config,a=s;let c=o;const u=this._worksheet;if(!u)return c;for(let f=0;f<e;f++){const{isMerged:p,isMergedMainCell:F}=t6(t,f,i);if(p||F)continue;const E=u.getCell(t,f),m=E&&this._getCellDocumentModel(E);if(m==null)continue;const{documentModel:b,textRotation:S,wrapStrategy:v}=m;if(b==null)continue;const y=new M1(b);let{a:T}=S;const{v:B=d.BooleanNumber.FALSE}=S;B===d.BooleanNumber.TRUE&&(T=z1);const O=(l=a[f])==null?void 0:l.w;typeof O=="number"&&v===d.WrapStrategy.WRAP&&b.updateDocumentDataPageSize(O);const w=i2.create(y,this._localService);w.calculate();let{height:P=0}=(D=C2(w,T))!=null?D:{};if(w){const L=w.getSkeletonData(),{marginTop:A,marginBottom:$,marginLeft:Y,marginRight:x}=L.pages[L.pages.length-1],R=Math.abs(v1(T));P+=A*Math.cos(R)+x*Math.sin(R)+$*Math.cos(R)+Y*Math.sin(R)}c=Math.max(c,P)}return Math.min(c,U7)}updateLayout(){if(!this.dirty)return;const{rowData:t,columnData:e,defaultRowHeight:s,defaultColumnWidth:i,rowCount:o,columnCount:a,rowHeader:c,columnHeader:u,showGridlines:l}=this._config,{rowTotalHeight:D,rowHeightAccumulation:f}=this._generateRowMatrixCache(o,t,s),{columnTotalWidth:p,columnWidthAccumulation:F}=this._generateColumnMatrixCache(a,e,i);return this._rowHeaderWidth=c.hidden!==d.BooleanNumber.TRUE?c.width:0,this._columnHeaderHeight=u.hidden!==d.BooleanNumber.TRUE?u.height:0,this._rowTotalHeight=D,this._rowHeightAccumulation=f,this._columnTotalWidth=p,this._columnWidthAccumulation=F,this._showGridlines=l,this.makeDirty(!1),this}getRowColumnSegment(t){return this._getBounding(this._rowHeightAccumulation,this._columnWidthAccumulation,t==null?void 0:t.viewBound)}getRowColumnSegmentByViewBound(t){return this._getBounding(this._rowHeightAccumulation,this._columnWidthAccumulation,t)}getMergeBounding(t,e,s,i){const o=this._config.mergeData;if(!o)return{startRow:t,startColumn:e,endRow:s,endColumn:i};let a=!0;const c=new d.ObjectMatrix;for(;a;){a=!1;for(let u=0;u<o.length;u++){const{startRow:l,startColumn:D,endRow:f,endColumn:p}=o[u];if(c.getValue(l,D))continue;o4({left:e,top:t,right:i,bottom:s},{left:D,top:l,right:p,bottom:f})&&(t=Math.min(t,l),e=Math.min(e,D),s=Math.max(s,f),i=Math.max(i,p),c.setValue(l,D,!0),a=!0)}}return{startRow:t,startColumn:e,endRow:s,endColumn:i}}appendToOverflowCache(t,e,s,i){this._overflowCache.setValue(t,e,{startRow:t,endRow:t,startColumn:s,endColumn:i})}getColumnCount(){return this._columnWidthAccumulation.length}getRowCount(){return this._rowHeightAccumulation.length}getOverflowPosition(t,e,s,i,o){const{width:a}=t;let c=i,u=i;return e===d.HorizontalAlign.CENTER?(c=this._getOverflowBound(s,i,0,a/2,e),u=this._getOverflowBound(s,i,o-1,a/2,e)):e===d.HorizontalAlign.RIGHT?c=this._getOverflowBound(s,i,0,a):u=this._getOverflowBound(s,i,o-1,a),{startColumn:c,endColumn:u}}getNoMergeCellPositionByIndex(t,e){const{rowHeightAccumulation:s,columnWidthAccumulation:i,rowHeaderWidthAndMarginLeft:o,columnHeaderHeightAndMarginTop:a}=this;let{startY:c,endY:u,startX:l,endX:D}=Y1(t,e,s,i);return c+=a,u+=a,l+=o,D+=o,{startY:c,endY:u,startX:l,endX:D}}getNoMergeCellPositionByIndexWithNoHeader(t,e){const{rowHeightAccumulation:s,columnWidthAccumulation:i}=this,{startY:o,endY:a,startX:c,endX:u}=Y1(t,e,s,i);return{startY:o,endY:a,startX:c,endX:u}}calculateCellIndexByPosition(t,e,s,i,o){const{row:a,column:c}=this.getCellPositionByOffset(t,e,s,i,o);return this.getCellByIndex(a,c)}getCellPositionByOffset(t,e,s,i,o){const a=this.getRowPositionByOffsetY(e,i,o),c=this.getColumnPositionByOffsetX(t,s,o);return{row:a,column:c}}getColumnPositionByOffsetX(t,e,s){t=this.getTransformOffsetX(t,e,s);const{columnWidthAccumulation:i}=this;let o=d.searchArray(i,t);return o===Number.POSITIVE_INFINITY?o=i.length-1:o===-1&&(o=0),o}getRowPositionByOffsetY(t,e,s){const{rowHeightAccumulation:i}=this;t=this.getTransformOffsetY(t,e,s);let o=d.searchArray(i,t);return o===Number.POSITIVE_INFINITY?o=i.length-1:o===-1&&(o=0),o}getTransformOffsetX(t,e,s){const{x:i}=s;return t=t/e+i-this.rowHeaderWidthAndMarginLeft,t}getTransformOffsetY(t,e,s){const{y:i}=s;return t=t/e+i-this.columnHeaderHeightAndMarginTop,t}getOffsetByPositionX(t){const{columnWidthAccumulation:e,rowHeaderWidthAndMarginLeft:s}=this,i=e.length-1,o=e[t];return o!=null?o+s:t<0?s:e[i]+s}getOffsetByPositionY(t){const{rowHeightAccumulation:e,columnHeaderHeightAndMarginTop:s}=this,i=e.length-1,o=e[t];return o!=null?o+s:t<0?s:e[i]+s}getCellByIndex(t,e){const{rowHeightAccumulation:s,columnWidthAccumulation:i,rowHeaderWidthAndMarginLeft:o,columnHeaderHeightAndMarginTop:a}=this,c=Q1(t,e,s,i,this._config.mergeData),{isMerged:u,isMergedMainCell:l}=c;let{startY:D,endY:f,startX:p,endX:F,mergeInfo:E}=c;return D+=a,f+=a,p+=o,F+=o,E=C6(E,o,a),{actualRow:t,actualColumn:e,startY:D,endY:f,startX:p,endX:F,isMerged:u,isMergedMainCell:l,mergeInfo:E}}getCellByIndexWithNoHeader(t,e){const{rowHeightAccumulation:s,columnWidthAccumulation:i}=this,o=Q1(t,e,s,i,this._config.mergeData),{isMerged:a,isMergedMainCell:c}=o,{startY:u,endY:l,startX:D,endX:f,mergeInfo:p}=o,F=C6(p,0,0);return{actualRow:t,actualColumn:e,startY:u,endY:l,startX:D,endX:f,isMerged:a,isMergedMainCell:c,mergeInfo:F}}convertTransformToOffsetX(t,e,s){const{x:i}=s;return t=(t-i)*e,t}convertTransformToOffsetY(t,e,s){const{y:i}=s;return t=(t-i)*e,t}getSelectionBounding(t,e,s,i){return this.getMergeBounding(t,e,s,i)}getBlankCellDocumentModel(t){const e=this._getCellDocumentModel(t,void 0,void 0,!0);if(e!=null)return e.documentModel==null&&(e.documentModel=this._getDocumentDataByStyle("",{},{})),e;const s="";let i="document";const o={a:0,v:d.BooleanNumber.FALSE},a=d.HorizontalAlign.UNSPECIFIED,c=d.VerticalAlign.UNSPECIFIED,u=d.WrapStrategy.UNSPECIFIED,l=k7;return i=S2({},this._localService).fontCache,{documentModel:this._getDocumentDataByStyle(s,{},{}),fontString:i,textRotation:o,wrapStrategy:u,verticalAlign:c,horizontalAlign:a,paddingData:l}}getCellDocumentModelWithFormula(t){return this._getCellDocumentModel(t,!0,!0,!0)}_getCellDocumentModel(t,e=!1,s=!1,i=!1){var E;const o=this._styles.getStyleByCell(t);if(!t)return;let a,c="document";const u=this._getOtherStyle(o),l=i?{a:0,v:d.BooleanNumber.FALSE}:u.textRotation||{a:0,v:d.BooleanNumber.FALSE};let D=u.horizontalAlign||d.HorizontalAlign.UNSPECIFIED;const f=u.verticalAlign||d.VerticalAlign.UNSPECIFIED,p=u.wrapStrategy||d.WrapStrategy.UNSPECIFIED,F=u.paddingData||k7;if(t.f&&s)a=this._getDocumentDataByStyle(t.f.toString(),{},{verticalAlign:f}),D=d.HorizontalAlign.UNSPECIFIED;else if(t.p){const{centerAngle:m,vertexAngle:b}=S4(l);a=this._updateConfigAndGetDocumentModel(e?d.Tools.deepClone(t.p):t.p,D,{horizontalAlign:D,verticalAlign:f,centerAngle:m,vertexAngle:b,wrapStrategy:p})}else if(t.v!=null){const m=this._getFontFormat(o);c=S2(m,this._localService).fontCache,a=this._getDocumentDataByStyle(t.v.toString(),m,{...u,textRotation:l})}return{documentModel:a,fontString:c,textRotation:l,wrapStrategy:p,verticalAlign:f,horizontalAlign:D,paddingData:F,fill:(E=o==null?void 0:o.bg)==null?void 0:E.rgb}}getDecomposedOffset(t,e){let s=d.searchArray(this._columnWidthAccumulation,t),i=0;s===-1||s===0?(s=0,i=t):i=t-this._columnWidthAccumulation[s-1];let o=d.searchArray(this._rowHeightAccumulation,e),a=0;return o===-1||o===0?(o=0,a=e):a=e-this._rowHeightAccumulation[o-1],{row:o,column:s,columnOffset:i,rowOffset:a}}_calculateOverflowCell(t,e,s){const{documentSkeleton:i,angle:o=0,horizontalAlign:a,wrapStrategy:c}=s,u=this.getCellData().getValue(t,e),{t:l=d.CellValueType.STRING}=u||{};if((c===d.WrapStrategy.OVERFLOW||c===d.WrapStrategy.UNSPECIFIED)&&l!==d.CellValueType.NUMBER&&l!==d.CellValueType.BOOLEAN&&a!==d.HorizontalAlign.JUSTIFIED){if(this.intersectMergeRange(t,e))return!0;let D=C2(i,o);if(!D)return!0;if(o!==0){const{startY:E,endY:m,startX:b,endX:S}=Q1(t,e,this.rowHeightAccumulation,this.columnWidthAccumulation,this.mergeData),v=S-b,y=m-E;D.height>y&&(D={width:y/Math.tan(Math.abs(o))+v,height:y})}const f=this.getOverflowPosition(D,a,t,e,this.getColumnCount()),{startColumn:p,endColumn:F}=f;if(p===F)return!0;this.appendToOverflowCache(t,e,p,F)}else if(c===d.WrapStrategy.WRAP&&o!==0){if(this.intersectMergeRange(t,e))return!0;const{startY:D,endY:f}=Q1(t,e,this.rowHeightAccumulation,this.columnWidthAccumulation,this.mergeData),p=f-D;i.getViewModel().getDataModel().updateDocumentDataPageSize(p),i.calculate();const F=C2(i,o);if(!F)return!0;const{startColumn:E,endColumn:m}=this.getOverflowPosition(F,a,t,e,this.getColumnCount());if(E===m)return!0;this.appendToOverflowCache(t,e,E,m)}}_getBounding(t,e,s){const i=t.length,o=e.length;if(!s)return{startRow:0,endRow:i-1,startColumn:0,endColumn:o-1};let a=-1,c=-1,u=-1,l=-1;const D=d.searchArray(t,Math.round(s.top)-this.columnHeaderHeightAndMarginTop),f=d.searchArray(t,Math.round(s.bottom)-this.columnHeaderHeightAndMarginTop);D===-1&&f===0?(a=-1,c=-1):(D===-1?a=0:a=D,f===Number.POSITIVE_INFINITY||f>=i?c=i-1:c=f);const p=d.searchArray(e,Math.round(s.left)-this.rowHeaderWidthAndMarginLeft),F=d.searchArray(e,Math.round(s.right)-this.rowHeaderWidthAndMarginLeft);return p===-1&&F===0?(u=-1,l=-1):(p===-1?u=0:u=p,F===Number.POSITIVE_INFINITY||F>=o?l=o-1:l=F),{startRow:a,endRow:c,startColumn:u,endColumn:l}}_generateRowMatrixCache(t,e,s){let i=0;const o=[],a=e;for(let c=0;c<t;c++){let u=s;if(a[c]!=null){const l=a[c];if(!l)continue;const{h:D=s,ah:f,ia:p}=l;(p==null||p===d.BooleanNumber.TRUE)&&typeof f=="number"?u=f:u=D,l.hd===d.BooleanNumber.TRUE&&(u=0)}i+=u,o.push(i)}return{rowTotalHeight:i,rowHeightAccumulation:o}}_generateColumnMatrixCache(t,e,s){let i=0;const o=[],a=e;for(let c=0;c<t;c++){let u=s;if(a[c]!=null){const l=a[c];if(!l)continue;l.w!=null&&(u=l.w),l.hd===d.BooleanNumber.TRUE&&(u=0)}i+=u,o.push(i)}return{columnTotalWidth:i,columnWidthAccumulation:o}}_getOverflowBound(t,e,s,i,o=d.HorizontalAlign.LEFT){var c,u;let a=0;if(e>s){const l=this._columnWidthAccumulation.length-1;for(let D=e;D>=s;D--){const f=D,p=(c=this._worksheet)==null?void 0:c.getCell(t,f);if(!d.isEmptyCell(p)&&f!==e||this.intersectMergeRange(t,f))return f===e?f:f+1>l?l:f+1;const{startX:F,endX:E}=Y1(t,f,this.rowHeightAccumulation,this.columnWidthAccumulation);if(o===d.HorizontalAlign.CENTER&&f===e?a+=(E-F)/2:a+=E-F,i<a)return f}return e}for(let l=e;l<=s;l++){const D=l,f=(u=this._worksheet)==null?void 0:u.getCell(t,D);if(!d.isEmptyCell(f)&&D!==e||this.intersectMergeRange(t,D))return D===e?D:D-1<0?0:D-1;const{startX:p,endX:F}=Y1(t,D,this.rowHeightAccumulation,this.columnWidthAccumulation);if(o===d.HorizontalAlign.CENTER&&D===e?a+=(F-p)/2:a+=F-p,i<a)return D}return s}intersectMergeRange(t,e){const s=this.dataMergeCache;for(const i of s){const{startRow:o,endRow:a,startColumn:c,endColumn:u}=i;if(t>=o&&t<=a&&e>=c&&e<=u)return!0}return!1}_calculateStylesCache(){const t=this._dataMergeCache,e=this._rowColumnSegment,s=this.columnWidthAccumulation,{startRow:i,endRow:o,startColumn:a,endColumn:c}=e;if(!(c===-1||o===-1)){for(const u of t)this._setCellCache(u.startRow,u.startColumn,!1);for(let u=i;u<=o;u++){for(let l=a;l<=c;l++)this._setCellCache(u,l,!1);for(let l=0;l<a;l++)this._setCellCache(u,l,!0);if(c!==0)for(let l=c+1;l<s.length;l++)this._setCellCache(u,l,!0)}}}_resetCache(){this._stylesCache={background:{},backgroundPositions:new d.ObjectMatrix,font:{},border:new d.ObjectMatrix},this._renderedCellCache=new d.ObjectMatrix,this._overflowCache.reset()}_makeDocumentSkeletonDirty(t,e){if(this._stylesCache.font==null)return;const s=Object.keys(this._stylesCache.font);for(const i of s){const o=this._stylesCache.font[i];if(o!=null&&o.getValue(t,e)){o.getValue(t,e).documentSkeleton.makeDirty(!0);return}}}_setCellCache(t,e,s){var T;const i=this._renderedCellCache.getValue(t,e);if(t===-1||e===-1)return!0;if(i===!1)return this._makeDocumentSkeletonDirty(t,e),!0;if(!this._worksheet||this._worksheet.getColVisible(e)===!1||this._worksheet.getRowVisible(t)===!1)return!0;const a=this._worksheet.getCell(t,e);if(!a)return!0;const c=this._stylesCache,u=this._styles.getStyleByCell(a);if(!s&&u&&u.bg&&u.bg.rgb){const B=u.bg.rgb;c.background[B]||(c.background[B]=new d.ObjectMatrix),c.background[B].setValue(t,e,B);const w=this.getCellByIndexWithNoHeader(t,e);(T=c.backgroundPositions)==null||T.setValue(t,e,w)}if(!s&&u&&u.bd&&(this._setBorderProps(t,e,J.TOP,u,c),this._setBorderProps(t,e,J.BOTTOM,u,c),this._setBorderProps(t,e,J.LEFT,u,c),this._setBorderProps(t,e,J.RIGHT,u,c),this._setBorderProps(t,e,J.TL_BR,u,c),this._setBorderProps(t,e,J.TL_BC,u,c),this._setBorderProps(t,e,J.TL_MR,u,c),this._setBorderProps(t,e,J.BL_TR,u,c),this._setBorderProps(t,e,J.ML_TR,u,c),this._setBorderProps(t,e,J.BC_TR,u,c)),i===!0)return this._makeDocumentSkeletonDirty(t,e),!0;if(d.isNullCell(a))return;const l=a&&this._getCellDocumentModel(a);if(l==null)return;const{documentModel:D,fontString:f,textRotation:p,wrapStrategy:F,verticalAlign:E,horizontalAlign:m}=l;if(D==null)return;const b=new M1(D);c.font[f]||(c.font[f]=new d.ObjectMatrix);const S=c.font[f];let{a:v}=p;const{v:y=d.BooleanNumber.FALSE}=p;if(y===d.BooleanNumber.TRUE&&(v=z1),b){const B=i2.create(b,this._localService);B.calculate();const O={documentSkeleton:B,angle:v,verticalAlign:E,horizontalAlign:m,wrapStrategy:F};S.setValue(t,e,O),this._calculateOverflowCell(t,e,O)}s?this._renderedCellCache.setValue(t,e,!0):this._renderedCellCache.setValue(t,e,!1)}_updateConfigAndGetDocumentModel(t,e,s){var o;if(!s||!((o=t.body)!=null&&o.dataStream))return;t.documentStyle||(t.documentStyle={}),t.documentStyle.renderConfig=s;const i=t.body.paragraphs||[];for(const a of i)a.paragraphStyle||(a.paragraphStyle={}),a.paragraphStyle.horizontalAlign=e;return new d.DocumentDataModel(t)}_getDocumentDataByStyle(t,e,s){const i=t.length,{textRotation:o={a:0,v:d.BooleanNumber.FALSE},paddingData:a={t:2,r:2,b:0,l:2},horizontalAlign:c=d.HorizontalAlign.UNSPECIFIED,verticalAlign:u=d.VerticalAlign.UNSPECIFIED,wrapStrategy:l=d.WrapStrategy.UNSPECIFIED}=s,{a:D=0,v:f=d.BooleanNumber.FALSE}=o,{t:p,r:F,b:E,l:m}=a||{};let b=0,S=D;f===d.BooleanNumber.TRUE&&(b=z1,S=z1);const v={id:"d",body:{dataStream:`${t}${d.DEFAULT_EMPTY_DOCUMENT_VALUE}`,textRuns:[{ts:e,st:0,ed:i}],paragraphs:[{startIndex:i,paragraphStyle:{horizontalAlign:c}}]},documentStyle:{pageSize:{width:Number.POSITIVE_INFINITY,height:Number.POSITIVE_INFINITY},marginTop:p,marginBottom:E,marginRight:F,marginLeft:m,renderConfig:{horizontalAlign:c,verticalAlign:u,centerAngle:b,vertexAngle:S,wrapStrategy:l}}};return new d.DocumentDataModel(v)}_setBorderProps(t,e,s,i,o){var l;const a=(l=i.bd)==null?void 0:l[s];if(!a||!o.border)return!0;const c=d.getColorStyle(a.cl)||G1,u=o.border;u.getValue(t,e)||u.setValue(t,e,{[s]:{}}),u.getValue(t,e)[s]={type:s,style:a.s,color:c}}_getFontFormat(t){if(!t)return{};const{ff:e,fs:s,it:i,bl:o,ul:a,st:c,ol:u,cl:l}=t,D={};return e&&(D.ff=e),s&&(D.fs=s),i&&(D.it=i),o&&(D.bl=o),a&&(D.ul=a),c&&(D.st=c),u&&(D.ol=u),l&&(D.cl=l),D}_getOtherStyle(t){if(!t)return{};const{tr:e,td:s,ht:i,vt:o,tb:a,pd:c}=t;return{textRotation:e,textDirection:s,horizontalAlign:i,verticalAlign:o,wrapStrategy:a,paddingData:c}}_getMergeCells(t,e){const s=this.columnWidthAccumulation.length-1;e?e={startRow:e.startRow,endRow:e.endRow,endColumn:s,startColumn:0}:e={startRow:0,startColumn:0,endRow:this.rowHeightAccumulation.length-1,endColumn:s};const{startRow:i,startColumn:o,endRow:a,endColumn:c}=e,u=[];for(let l=0;l<t.length;l++){const{startRow:D,endRow:f,startColumn:p,endColumn:F}=t[l];for(let E=i;E<=a;E++){let m=!1;for(let b=o;b<=c;b++)if(E>=D&&E<=f&&b>=p&&b<=F){u.push({startRow:D,endRow:f,startColumn:p,endColumn:F}),m=!0;break}if(m)break}}return u}}const Ad="DefaultFontExtension",Id=30;class At extends h2{constructor(){super(...arguments);h(this,"uKey",Ad);h(this,"Z_INDEX",Id);h(this,"changeFontColor",new d.ObjectMatrix)}get spreadsheet(){return this.parent}getDocuments(){const t=this.parent;return t==null?void 0:t.getDocuments()}setChangeFontColor(t,e,s){this.changeFontColor.setValue(t,e,s)}draw(t,e,s,i){const{stylesCache:o,dataMergeCache:a,overflowCache:c}=s,{font:u}=o;if(!s)return;const{rowHeightAccumulation:l,columnTotalWidth:D,columnWidthAccumulation:f,rowTotalHeight:p}=s;if(!l||!f||D===void 0||p===void 0)return;t.save();const F=this._getScale(e);u&&Object.keys(u).forEach(E=>{u[E].forValue((b,S,v)=>{const y=this.getCellIndex(b,S,l,f,a);let{startY:T,endY:B,startX:O,endX:w}=y;const{isMerged:P,isMergedMainCell:L,mergeInfo:A}=y;if(P||(L&&(T=A.startY,B=A.endY,O=A.startX,w=A.endX),!this.isRenderDiffRangesByRow(A.startRow,A.endRow,i)))return!0;const $=w-O,Y=B-T,x=c.getValue(b,S),{horizontalAlign:R}=v;if(t.save(),t.beginPath(),x){const{startColumn:k,startRow:X,endColumn:z,endRow:j}=x;k===z&&k===S?(t.rect(O+1/F,T+1/F,$-2/F,Y-2/F),t.clip(),t.clearRectForTexture(O+1/F,T+1/F,$-2/F,Y-2/F)):R===d.HorizontalAlign.CENTER?this._clipRectangle(t,X,j,k,z,F,l,f):R===d.HorizontalAlign.RIGHT?this._clipRectangle(t,X,b,k,S,F,l,f):this._clipRectangle(t,b,j,S,z,F,l,f)}else t.rect(O+1/F,T+1/F,$-2/F,Y-2/F),t.clip(),t.clearRectForTexture(O+1/F,T+1/F,$-2/F,Y-2/F);t.translate(O,T),this._renderDocuments(t,v,O,T,w,B,b,S),t.restore()})}),t.restore()}_renderDocuments(t,e,s,i,o,a,c,u){const l=this.getDocuments();if(l==null)throw new Error("documents is null");const{documentSkeleton:D,angle:f,wrapStrategy:p}=e,F=o-s,E=a-i;if(p===d.WrapStrategy.WRAP&&f===0?(D.getViewModel().getDataModel().updateDocumentDataPageSize(F),D.calculate()):D.getViewModel().getDataModel().updateDocumentDataPageSize(Number.POSITIVE_INFINITY),p!==d.WrapStrategy.WRAP){const m=C2(D),b=D.getViewModel().getDataModel().getSnapshot().documentStyle;if(m&&b){const{width:S}=m,{marginRight:v=0,marginLeft:y=0}=b;D.getViewModel().getDataModel().updateDocumentDataPageSize(S+y+v),D.calculate()}}D.makeDirty(!1),l.resize(F,E),l.changeSkeleton(D).render(t)}_clipRectangle(t,e,s,i,o,a,c,u){const l=c[e-1]||0,D=c[s]||c[c.length-1],f=u[i-1]||0,p=u[o]||u[u.length-1];t.rect(f,l,p-f,D-l),t.clip(),t.clearRectForTexture(f,l,p-f,D-l)}}R2.add(At);const Rd="DefaultRowHeaderLayoutExtension";class It extends h2{constructor(){super(...arguments);h(this,"uKey",Rd);h(this,"Z_INDEX",10)}draw(t,e,s){const{rowColumnSegment:i,rowHeaderWidth:o=0,columnHeaderHeight:a=0}=s,{startRow:c,endRow:u,startColumn:l,endColumn:D}=i;if(!s)return;const{rowHeightAccumulation:f,columnTotalWidth:p,columnWidthAccumulation:F,rowTotalHeight:E}=s;if(!f||!F||p===void 0||E===void 0)return;const m=this._getScale(e);t.fillStyle=l1([248,249,250]),t.fillRect(0,0,o,E),t.textAlign="center",t.textBaseline="middle",t.fillStyle=l1([0,0,0]),t.beginPath(),t.lineWidth=1,t.translateWithPrecisionRatio(a1,a1),t.strokeStyle=l1([217,217,217]),t.font=`13px ${Z2}`;let b=0;const S=f.length;for(let y=c-1;y<=u;y++){if(y<0||y>S-1)continue;const T=f[y];if(b===T)continue;t.moveTo(0,T),t.lineTo(o,T);const B=b+(T-b)/2;t.fillText(`${y+1}`,o/2,B+A6),b=T}const v=o-.5/m;t.moveTo(v,0),t.lineTo(v,E),t.stroke()}}s7.add(new It);var Rt=(r=>(r[r.OFF=0]="OFF",r[r.ON=1]="ON",r))(Rt||{});class xd extends o7{constructor(t,e){super(t,e);h(this,"_rowHeaderLayoutExtension");this._initialDefaultExtension(),this.makeDirty(!0)}get rowHeaderLayoutExtension(){return this._rowHeaderLayoutExtension}draw(t,e){const s=this.getSkeleton();if(!s)return;const i=this.getParentScale();s.calculateSegment(e);const o=s.rowColumnSegment;if(o.startRow===-1&&o.endRow===-1)return;const{columnHeaderHeight:a}=s;t.translateWithPrecision(0,a);const c=this.getExtensionsByOrder();for(const u of c)u.draw(t,i,s)}isHit(t){const e=this._getInverseCoord(t),s=this.getSkeleton();if(!s)return!1;const{rowHeaderWidth:i,columnHeaderHeight:o}=s;return e.x>=0&&e.x<=i&&e.y>o}_initialDefaultExtension(){s7.getData().forEach(t=>{this.register(t)}),this._rowHeaderLayoutExtension=this.getExtensionByKey("DefaultRowHeaderLayoutExtension")}}const Md="__SHEET_EXTENSION_FONT_DOCUMENT_INSTANCE__";class Pd extends r7{constructor(t,e,s=!0){super(t,e);h(this,"_backgroundExtension");h(this,"_borderExtension");h(this,"_fontExtension");h(this,"_cacheCanvas");h(this,"_refreshIncrementalState",!1);h(this,"_forceDirty",!1);h(this,"_overflowCacheRuntime",{});h(this,"_overflowCacheRuntimeRange",new d.ObjectMatrix);h(this,"_overflowCacheRuntimeTimeout",-1);h(this,"_forceDisableGridlines",!1);h(this,"_documents",new x2(Md,void 0,{pageMarginLeft:0,pageMarginTop:0}));h(this,"isPrinting",!1);this._allowCache=s,this._allowCache&&(this._cacheCanvas=new o2,this.onIsAddedToParentObserver.add(i=>{var o;(o=i==null?void 0:i.getEngine())==null||o.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(t,e){const s=this.getSkeleton();if(!s)return;const i=this.getParentScale(),o=this._refreshIncrementalState?e==null?void 0:e.diffBounds.map(c=>s.getRowColumnSegmentByViewBound(c)):void 0,a=this.getExtensionsByOrder();for(const c of a)c.draw(t,i,s,o)}isHit(t){const e=this._getInverseCoord(t),s=this.getSkeleton();if(!s)return!1;const{rowHeaderWidth:i,columnHeaderHeight:o}=s;return e.x>i&&e.y>o}getNoMergeCellPositionByIndex(t,e){const s=this.getSkeleton();if(!s)return;const{rowHeightAccumulation:i,columnWidthAccumulation:o,rowHeaderWidth:a,columnHeaderHeight:c}=s;let{startY:u,endY:l,startX:D,endX:f}=Y1(t,e,i,o);return u+=c,l+=c,D+=a,f+=a,{startY:u,endY:l,startX:D,endX:f}}getScrollXYByRelativeCoords(t){const e=this.getParent();let s=0,i=0;const o=e.getActiveViewportByRelativeCoord(t);if(o){const a=o.actualScrollX||0,c=o.actualScrollY||0;s+=a,i+=c}return{x:s,y:i}}makeForceDirty(t=!0){this.makeDirty(t),this._forceDirty=t}setForceDisableGridlines(t){this._forceDisableGridlines=t}getSelectionBounding(t,e,s,i){var o;return(o=this.getSkeleton())==null?void 0:o.getMergeBounding(t,e,s,i)}render(t,e){if(!this.visible)return this.makeDirty(!1),this;const s=this.getSkeleton();if(!s)return;s.calculateWithoutClearingCache(e);const i=s.rowColumnSegment;if(i.startRow===-1&&i.endRow===-1||i.startColumn===-1&&i.endColumn===-1)return;t.save();const{a:o=1,d:a=1}=t.getTransform(),{rowHeaderWidth:c,columnHeaderHeight:u}=s;if(t.translateWithPrecision(c,u),this._drawAuxiliary(t,e),e&&this._allowCache===!0){const{viewBound:l,diffBounds:D,diffX:f,diffY:p,viewPortPosition:F,viewPortKey:E}=e;if(E==="viewMain"){const m=this._cacheCanvas.getContext();m.save();const{left:b,top:S,right:v,bottom:y}=F,T=v-b+c,B=y-S+u;if(D.length===0||f===0&&p===0||this._forceDirty)(this.isDirty()||this._forceDirty)&&(this._cacheCanvas.clear(),m.setTransform(t.getTransform()),this._draw(m,e),this._forceDirty=!1),this._applyCache(t,b,S,T,B,b,S,T,B);else{if(this.isDirty()){m.save(),m.globalCompositeOperation="copy",m.setTransform(1,0,0,1,0,0),m.drawImage(this._cacheCanvas.getCanvasEle(),f*o,p*a),m.restore(),this._refreshIncrementalState=!0,m.setTransform(t.getTransform());for(const O of D){const{left:w,right:P,bottom:L,top:A}=O;m.save(),m.beginPath(),m.rect(w-c-a1,A-u-a1,P-w+c+a1*2,L-A+u+a1*2),m.clip(),this._draw(m,{viewBound:e.viewBound,diffBounds:[O],diffX:e.diffX,diffY:e.diffY,viewPortPosition:e.viewPortPosition,viewPortKey:e.viewPortKey}),m.restore()}this._refreshIncrementalState=!1}this._applyCache(t,b,S,T,B,b,S,T,B)}m.restore()}else this._draw(t,e)}else this._draw(t,e);return t.restore(),this.makeDirty(!1),this}_resizeCacheCanvas(){const t=this._getAncestorSize();if(!t||this._cacheCanvas==null)return;const{width:e,height:s}=t;this._cacheCanvas.setSize(e,s),this.makeDirty(!0)}_applyCache(t,e=0,s=0,i=0,o=0,a=0,c=0,u=0,l=0){if(!t)return;const D=this._cacheCanvas.getPixelRatio(),f=this._cacheCanvas.getContext();f.save(),t.save(),t.setTransform(1,0,0,1,0,0),f.setTransform(1,0,0,1,0,0),t.drawImage(this._cacheCanvas.getCanvasEle(),e*D,s*D,i*D,o*D,a*D,c*D,u*D,l*D),t.restore(),f.restore()}_draw(t,e){this.draw(t,e)}_getAncestorSize(){const t=this._getAncestorParent();if(t){if(t.classType===N.ENGINE){const e=t.getCanvas();return{width:e.getWidth(),height:e.getHeight()}}if(t.classType===N.SCENE_VIEWER)return{width:t.width,height:t.height}}}_getAncestorParent(){let t=this.parent;for(;t;){if(t.classType===N.ENGINE||t.classType===N.SCENE_VIEWER)return t;t=(t==null?void 0:t.getParent)&&(t==null?void 0:t.getParent())}}_initialDefaultExtension(){R2.getData().sort(d.sortRules).forEach(t=>{this.register(new t)}),this._backgroundExtension=this.getExtensionByKey("DefaultBackgroundExtension"),this._borderExtension=this.getExtensionByKey("DefaultBorderExtension"),this._fontExtension=this.getExtensionByKey("DefaultFontExtension")}_addMakeDirtyToScroll(){this._hasScrollViewportOperator(this,t=>{t.onScrollBeforeObserver.add(()=>{this.makeDirty(!0)})})}_hasScrollViewportOperator(t,e){let s=t.getParent();for(;s;){if(s.classType===N.SCENE){const i=s.getViewports(),o=this._getHasScrollViewports(i);for(const a of o)a&&e(a)}s=(s==null?void 0:s.getParent)&&(s==null?void 0:s.getParent())}}_getHasScrollViewports(t){const e=[];for(const s of t)s.getScrollBar()&&e.push(s);return e}_drawAuxiliary(t,e){const s=this.getSkeleton();if(s==null)return;const{rowColumnSegment:i,dataMergeCache:o,overflowCache:a,stylesCache:c,showGridlines:u}=s,{border:l,backgroundPositions:D}=c,{startRow:f,endRow:p,startColumn:F,endColumn:E}=i;if(!s||u===d.BooleanNumber.FALSE||this._forceDisableGridlines)return;const{rowHeightAccumulation:m,columnTotalWidth:b,columnWidthAccumulation:S,rowTotalHeight:v}=s;if(!m||!S||b===void 0||v===void 0)return;t.save(),t.beginPath(),t.lineWidth=1,t.strokeStyle=l1([212,212,212]);const y=S.length,T=m.length,B=this._allowCache?f:0,O=this._allowCache?p:T-1,w=this._allowCache?E:y-1,P=this._allowCache?F:0,L=S[P-1]||0,A=m[B-1]||0,$=S[w],Y=m[O];t.translateWithPrecisionRatio(a1,a1),t.moveTo(L,A),t.lineTo($,A);for(let x=0;x<=O;x++){if(x<0||x>T-1)continue;const R=m[x];t.moveTo(L,R),t.lineTo($,R)}t.moveTo(L,A),t.lineTo(L,Y);for(let x=0;x<=E;x++){if(x<0||x>y-1)continue;const R=S[x];t.moveTo(R,A),t.lineTo(R,Y)}t.stroke(),t.closePath(),l==null||l.forValue((x,R,k)=>{if(!k)return!0;const X=s.getCellByIndexWithNoHeader(x,R);let{startY:z,endY:j,startX:q,endX:W}=X;const{isMerged:V,isMergedMainCell:Q,mergeInfo:e1}=X;if(V||(Q&&(z=e1.startY,j=e1.endY,q=e1.startX,W=e1.endX),!(e1.startRow>=B&&e1.endRow<=O)))return!0;for(const n1 in k){const{type:K}=k[n1];d4(t,K,{startX:q,startY:z,endX:W,endY:j})}}),t.closePath(),this._clearRectangle(t,m,S,o),this._clearRectangle(t,m,S,a.toNativeArray()),this._clearBackground(t,D),t.restore()}_clearRectangle(t,e,s,i){if(i!=null)for(const o of i){const{startRow:a,endRow:c,startColumn:u,endColumn:l}=o,D=e[a-1]||0,f=e[c]||e[e.length-1],p=s[u-1]||0,F=s[l]||s[s.length-1];t.clearRect(p,D,F-p,f-D),t.beginPath(),t.moveTo(p,D),t.lineTo(F,D),t.lineTo(F,f),t.lineTo(p,f),t.lineTo(p,D),t.stroke(),t.closePath()}}_clearBackground(t,e){e==null||e.forValue((s,i,o)=>{let{startY:a,endY:c,startX:u,endX:l}=o;const{isMerged:D,isMergedMainCell:f,mergeInfo:p}=o;if(D)return!0;f&&(a=p.startY,c=p.endY,u=p.startX,l=p.endX),t.clearRectForTexture(u,a,l-u+.5,c-a+.5)})}}function H7(r,n,t){r.onPointerEnterObserver.add(e=>{n(r,e)}),r.onPointerLeaveObserver.add(e=>{t(r,e)})}class u7 extends I1{constructor(t,e){super(t);h(this,"_subScenes",new Map);h(this,"_activeSubScene");h(this,"_allowSelectedClipElement",!1);this._initialProps(e)}get classType(){return N.SCENE_VIEWER}render(t,e){var i;if(!this.visible)return this.makeDirty(!1),this;if(e){const{left:o,top:a,right:c,bottom:u}=e.viewBound;if(this.width+this.strokeWidth<o||c<0||this.height+this.strokeWidth<a||u<0)return this}const s=this.transform.getMatrix();return t.save(),t.transform(s[0],s[1],s[2],s[3],s[4],s[5]),(i=this._activeSubScene)==null||i.makeDirtyNoParent(!0).render(t),t.restore(),this.makeDirty(!1),this}getSubScenes(){return this._subScenes}getActiveSubScene(){return this._activeSubScene}getSubScene(t){for(const[e,s]of this._subScenes)if(e===t)return s}addSubScene(t){this._activeSubScene=t,this._subScenes.set(t.sceneKey,t),this.makeDirty()}removeSubScene(t){const e=this._subScenes.get(t);this._subScenes.delete(t),this._activeSubScene===e&&(this._activeSubScene=this._subScenes.values().next().value),this.makeDirty()}activeSubScene(t){if(t==null)return;const e=this._subScenes.get(t);this._activeSubScene!==e&&(this._activeSubScene=e,this.makeDirty())}enableSelectedClipElement(){this._allowSelectedClipElement=!0}disableSelectedClipElement(){this._allowSelectedClipElement=!1}allowSelectedClipElement(){return this._allowSelectedClipElement}pick(t){var i;if(this._activeSubScene===void 0)return;const s=this.transform.clone().invert().applyPoint(t);return(i=this._activeSubScene)==null?void 0:i.pick(s)}dispose(){super.dispose(),this._subScenes.forEach(t=>{t.dispose()})}_initialProps(t){if(!t)return;const e=Object.keys(t);if(e.length===0)return;const s={};let i=!1;e.forEach(o=>{if(t[o]===void 0)return!0;s[o]=t[o],i=!0}),i&&this.transformByState(s),this.makeDirty(!0)}}const xt=["dataArray"];class D1 extends c2{constructor(t,e){super(t,e);h(this,"_dataArray",[]);h(this,"_pathLength",0);h(this,"_selfRectCache",{left:0,top:0,width:0,height:0});h(this,"_reCalculateCache",!0);e!=null&&e.data?this._dataArray=D1.parsePathData(e.data):e!=null&&e.dataArray&&(this._dataArray=e.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:o}=s;if(i===i1.resize||i===i1.all){this._reCalculateCache=!0;const{left:a,top:c,width:u,height:l}=this._getSelfRect(),{width:D,height:f}=o;let p,F;D?p=this.width-D:p=0,f?F=this.height-f:F=0;const E=p/u,m=F/l;this.scaleX+=E,this.scaleY+=m,this.left=this.left-a*E,this.top=this.top-c*m,this._setTransForm()}})}get dataArray(){return this._dataArray}static drawWith(t,e){const s=e.dataArray;if(s){t.beginPath();for(let i=0;i<s.length;i++){const o=s[i].command,a=s[i].points;switch(o){case"L":t.lineTo(a[0],a[1]);break;case"M":t.moveTo(a[0],a[1]);break;case"C":t.bezierCurveTo(a[0],a[1],a[2],a[3],a[4],a[5]);break;case"Q":t.quadraticCurveTo(a[0],a[1],a[2],a[3]);break;case"A":{const c=a[0],u=a[1],l=a[2],D=a[3],f=a[4],p=a[5],F=a[6],E=a[7],m=l>D?l:D,b=l>D?1:l/D,S=l>D?D/l:1;t.translate(c,u),t.rotate(F),t.scale(b,S),t.arc(0,0,m,f,f+p,!!(1-E)),t.scale(1/b,1/S),t.rotate(-F),t.translate(-c,-u);break}case"z":t.closePath();break}}this._renderPaintInOrder(t,e)}}static getLineLength(t,e,s,i){return Math.sqrt((s-t)*(s-t)+(i-e)*(i-e))}static getPointOnLine(t,e,s,i,o,a,c){a===void 0&&(a=e),c===void 0&&(c=s);const u=(o-s)/(i-e+1e-8);let l=Math.sqrt(t*t/(1+u*u));i<e&&(l*=-1);let D=u*l,f;if(i===e)f={x:a,y:c+D};else if((c-s)/(a-e+1e-8)===u)f={x:a+l,y:c+D};else{const p=this.getLineLength(e,s,i,o);let F=(a-e)*(i-e)+(c-s)*(o-s);F/=p*p;const E=e+F*(i-e),m=s+F*(o-s),b=this.getLineLength(a,c,E,m),S=Math.sqrt(t*t-b*b);l=Math.sqrt(S*S/(1+u*u)),i<e&&(l*=-1),D=u*l,f={x:E+l,y:m+D}}return f}static getPointOnCubicBezier(t,e,s,i,o,a,c,u,l){function D(b){return b*b*b}function f(b){return 3*b*b*(1-b)}function p(b){return 3*b*(1-b)*(1-b)}function F(b){return(1-b)*(1-b)*(1-b)}const E=u*D(t)+a*f(t)+i*p(t)+e*F(t),m=l*D(t)+c*f(t)+o*p(t)+s*F(t);return{x:E,y:m}}static getPointOnQuadraticBezier(t,e,s,i,o,a,c){function u(F){return F*F}function l(F){return 2*F*(1-F)}function D(F){return(1-F)*(1-F)}const f=a*u(t)+i*l(t)+e*D(t),p=c*u(t)+o*l(t)+s*D(t);return{x:f,y:p}}static getPointOnEllipticalArc(t,e,s,i,o,a){const c=Math.cos(a),u=Math.sin(a),l={x:s*Math.cos(o),y:i*Math.sin(o)};return{x:t+(l.x*c-l.y*u),y:e+(l.x*u+l.y*c)}}static parsePathData(t){if(!t)return[];let e=t;const s=["m","M","l","L","v","V","h","H","z","Z","c","C","q","Q","t","T","s","S","a","A"];e=e.replace(new RegExp(" ","g"),",");for(let f=0,p=s.length;f<p;f++)e=e.replace(new RegExp(s[f],"g"),`|${s[f]}`);const i=e.split("|"),o=[],a=[];let c=0,u=0;const l=/([-+]?((\d+\.\d+)|((\d+)|(\.\d+)))(?:e[-+]?\d+)?)/gi;let D;for(let f=1,p=i.length;f<p;f++){let F=i[f],E=F.charAt(0);for(F=F.slice(1),a.length=0;D=l.exec(F);)a.push(D[0]);const m=[];for(let b=0,S=a.length;b<S;b++){if(a[b]==="00"){m.push(0,0);continue}const v=Number.parseFloat(a[b]);isNaN(v)?m.push(0):m.push(v)}for(;m.length>0&&!isNaN(m[0]);){let b,S=[];const v=c,y=u;let T,B,O,w,P,L,A,$,Y,x;switch(E){case"l":c+=m.shift()||0,u+=m.shift()||0,b="L",S.push(c,u);break;case"L":c=m.shift()||0,u=m.shift()||0,S.push(c,u);break;case"m":{const R=m.shift()||0,k=m.shift()||0;if(c+=R,u+=k,b="M",o.length>2&&o[o.length-1].command==="z"){for(let X=o.length-2;X>=0;X--)if(o[X].command==="M"){c=o[X].points[0]+R,u=o[X].points[1]+k;break}}S.push(c,u),E="l";break}case"M":c=m.shift()||0,u=m.shift()||0,b="M",S.push(c,u),E="L";break;case"h":c+=m.shift()||0,b="L",S.push(c,u);break;case"H":c=m.shift()||0,b="L",S.push(c,u);break;case"v":u+=m.shift()||0,b="L",S.push(c,u);break;case"V":u=m.shift()||0,b="L",S.push(c,u);break;case"C":S.push(m.shift()||0,m.shift()||0,m.shift()||0,m.shift()||0),c=m.shift()||0,u=m.shift()||0,S.push(c,u);break;case"c":S.push(c+(m.shift()||0),u+(m.shift()||0),c+(m.shift()||0),u+(m.shift()||0)),c+=m.shift()||0,u+=m.shift()||0,b="C",S.push(c,u);break;case"S":B=c,O=u,T=o[o.length-1],T.command==="C"&&(B=c+(c-T.points[2]),O=u+(u-T.points[3])),S.push(B,O,m.shift()||0,m.shift()||0),c=m.shift()||0,u=m.shift()||0,b="C",S.push(c,u);break;case"s":B=c,O=u,T=o[o.length-1],T.command==="C"&&(B=c+(c-T.points[2]),O=u+(u-T.points[3])),S.push(B,O,c+(m.shift()||0),u+(m.shift()||0)),c+=m.shift()||0,u+=m.shift()||0,b="C",S.push(c,u);break;case"Q":S.push(m.shift()||0,m.shift()||0),c=m.shift()||0,u=m.shift()||0,S.push(c,u);break;case"q":S.push(c+(m.shift()||0),u+(m.shift()||0)),c+=m.shift()||0,u+=m.shift()||0,b="Q",S.push(c,u);break;case"T":B=c,O=u,T=o[o.length-1],T.command==="Q"&&(B=c+(c-T.points[0]),O=u+(u-T.points[1])),c=m.shift()||0,u=m.shift()||0,b="Q",S.push(B,O,c,u);break;case"t":B=c,O=u,T=o[o.length-1],T.command==="Q"&&(B=c+(c-T.points[0]),O=u+(u-T.points[1])),c+=m.shift()||0,u+=m.shift()||0,b="Q",S.push(B,O,c,u);break;case"A":w=m.shift()||0,P=m.shift()||0,L=m.shift()||0,A=m.shift()||0,$=m.shift()||0,Y=c,x=u,c=m.shift()||0,u=m.shift()||0,b="A",S=this.convertEndpointToCenterParameterization(Y,x,c,u,A,$,w,P,L);break;case"a":w=m.shift()||0,P=m.shift()||0,L=m.shift()||0,A=m.shift()||0,$=m.shift()||0,Y=c,x=u,c+=m.shift()||0,u+=m.shift()||0,b="A",S=this.convertEndpointToCenterParameterization(Y,x,c,u,A,$,w,P,L);break}o.push({command:b||E,points:S,start:{x:v,y},pathLength:this.calcLength(v,y,b||E,S)})}(E==="z"||E==="Z")&&o.push({command:"z",points:[],start:{x:0,y:0},pathLength:0})}return o}static calcLength(t,e,s,i){let o,a,c,u;const l=D1;switch(s){case"L":return l.getLineLength(t,e,i[0],i[1]);case"C":for(o=0,a=l.getPointOnCubicBezier(0,t,e,i[0],i[1],i[2],i[3],i[4],i[5]),u=.01;u<=1;u+=.01)c=l.getPointOnCubicBezier(u,t,e,i[0],i[1],i[2],i[3],i[4],i[5]),o+=l.getLineLength(a.x,a.y,c.x,c.y),a=c;return o;case"Q":for(o=0,a=l.getPointOnQuadraticBezier(0,t,e,i[0],i[1],i[2],i[3]),u=.01;u<=1;u+=.01)c=l.getPointOnQuadraticBezier(u,t,e,i[0],i[1],i[2],i[3]),o+=l.getLineLength(a.x,a.y,c.x,c.y),a=c;return o;case"A":{o=0;const D=i[4],f=i[5],p=i[4]+f;let F=Math.PI/180;if(Math.abs(D-p)<F&&(F=Math.abs(D-p)),a=l.getPointOnEllipticalArc(i[0],i[1],i[2],i[3],D,0),f<0)for(u=D-F;u>p;u-=F)c=l.getPointOnEllipticalArc(i[0],i[1],i[2],i[3],u,0),o+=l.getLineLength(a.x,a.y,c.x,c.y),a=c;else for(u=D+F;u<p;u+=F)c=l.getPointOnEllipticalArc(i[0],i[1],i[2],i[3],u,0),o+=l.getLineLength(a.x,a.y,c.x,c.y),a=c;return c=l.getPointOnEllipticalArc(i[0],i[1],i[2],i[3],p,0),o+=l.getLineLength(a.x,a.y,c.x,c.y),o}}return 0}static convertEndpointToCenterParameterization(t,e,s,i,o,a,c,u,l){const D=l*(Math.PI/180),f=Math.cos(D)*(t-s)/2+Math.sin(D)*(e-i)/2,p=-1*Math.sin(D)*(t-s)/2+Math.cos(D)*(e-i)/2,F=f*f/(c*c)+p*p/(u*u);F>1&&(c*=Math.sqrt(F),u*=Math.sqrt(F));let E=Math.sqrt((c*c*(u*u)-c*c*(p*p)-u*u*(f*f))/(c*c*(p*p)+u*u*(f*f)));o===a&&(E*=-1),isNaN(E)&&(E=0);const m=E*c*p/u,b=E*-u*f/c,S=(t+s)/2+Math.cos(D)*m-Math.sin(D)*b,v=(e+i)/2+Math.sin(D)*m+Math.cos(D)*b,y=A=>Math.sqrt(A[0]*A[0]+A[1]*A[1]),T=(A,$)=>(A[0]*$[0]+A[1]*$[1])/(y(A)*y($)),B=(A,$)=>(A[0]*$[1]<A[1]*$[0]?-1:1)*Math.acos(T(A,$)),O=B([1,0],[(f-m)/c,(p-b)/u]),w=[(f-m)/c,(p-b)/u],P=[(-1*f-m)/c,(-1*p-b)/u];let L=B(w,P);return T(w,P)<=-1&&(L=Math.PI),T(w,P)>=1&&(L=0),a===0&&L>0&&(L-=2*Math.PI),a===1&&L<0&&(L+=2*Math.PI),[S,v,c,u,O,L,D,a]}toJson(){const t={};return xt.forEach(e=>{this[e]&&(t[e]=this[e])}),{...super.toJson(),...t}}getState(){const{left:t,top:e,width:s,height:i}=this.getRect();return{left:t,top:e,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:t,top:e,width:s,height:i}=this._getSelfRect();return{left:t*this.scaleX+this.left,top:e*this.scaleY+this.top,width:s*this.scaleX,height:i*this.scaleY}}getLength(){return this._pathLength}getPointAtLength(t){let e,s=0;const i=this.dataArray.length;if(!i)return null;for(;s<i&&t>this.dataArray[s].pathLength;)t-=this.dataArray[s].pathLength,++s;if(s===i)return e=this.dataArray[s-1].points.slice(-2),{x:e[0],y:e[1]};if(t<.01)return e=this.dataArray[s].points.slice(0,2),{x:e[0],y:e[1]};const o=this.dataArray[s],a=o.points;switch(o.command){case"L":return D1.getPointOnLine(t,o.start.x,o.start.y,a[0],a[1]);case"C":return D1.getPointOnCubicBezier(t/o.pathLength,o.start.x,o.start.y,a[0],a[1],a[2],a[3],a[4],a[5]);case"Q":return D1.getPointOnQuadraticBezier(t/o.pathLength,o.start.x,o.start.y,a[0],a[1],a[2],a[3]);case"A":{const c=a[0],u=a[1],l=a[2],D=a[3];let f=a[4];const p=a[5],F=a[6];return f+=p*t/o.pathLength,D1.getPointOnEllipticalArc(c,u,l,D,f,F)}}return null}_draw(t){D1.drawWith(t,this)}_setFixBoundingBox(){const{left:t,top:e,width:s,height:i}=this._getSelfRect(),o=this.width/s,a=this.height/i;this.left=this.left-t*o,this.top=this.top-e*a,this.scaleX=o,this.scaleY=a,this.width=s,this.height=i,this._setTransForm()}_getSelfRect(){if(!this._reCalculateCache)return this._selfRectCache;let t=[];this.dataArray.forEach(l=>{if(l.command==="A"){const D=l.points[4],f=l.points[5],p=l.points[4]+f;let F=Math.PI/180;if(Math.abs(D-p)<F&&(F=Math.abs(D-p)),f<0)for(let E=D-F;E>p;E-=F){const m=D1.getPointOnEllipticalArc(l.points[0],l.points[1],l.points[2],l.points[3],E,0);t.push(m.x,m.y)}else for(let E=D+F;E<p;E+=F){const m=D1.getPointOnEllipticalArc(l.points[0],l.points[1],l.points[2],l.points[3],E,0);t.push(m.x,m.y)}}else if(l.command==="C")for(let D=0;D<=1;D+=.01){const f=D1.getPointOnCubicBezier(D,l.start.x,l.start.y,l.points[0],l.points[1],l.points[2],l.points[3],l.points[4],l.points[5]);t.push(f.x,f.y)}else t=t.concat(l.points)});let e=t[0],s=t[0],i=t[1],o=t[1],a,c;for(let l=0;l<t.length/2;l++)a=t[l*2],c=t[l*2+1],isNaN(a)||(e=Math.min(e,a),s=Math.max(s,a)),isNaN(c)||(i=Math.min(i,c),o=Math.max(o,c));const u={left:e,top:i,width:s-e,height:o-i};return this._selfRectCache=u,u}}var Mt=(r=>(r.LEFT="__slideNavigationLeft__",r.RIGHT="__slideNavigationRight__",r))(Mt||{});const X7="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 Ld extends u7{constructor(){super(...arguments);h(this,"onSlideChangePageByNavigationObservable",new d.Observable);h(this,"_navigationEnabled",!1)}activeFirstPage(){const e=this.getSubScenes().keys().next().value;e!=null&&this.changePage(e)}addPage(t){const e=t.sceneKey;this.getSubScene(e)==null&&(this.addSubScene(t),this.addNavigation())}changePage(t){t!==null&&(this.removeNavigation(),this.activeSubScene(t),this.addNavigation())}hasPage(t){return this.getSubScene(t)}addNavigation(){const t=this.getActiveSubScene();if(t==null||this._navigationEnabled===!1)return;const e=new D1("__slideNavigationLeft__",{data:X7,width:60,height:60,left:90,top:(this.height-30)/2,fill:this._getArrowColor(),flipX:!0}),s=new D1("__slideNavigationRight__",{data:X7,width:60,height:60,left:this.width-90,top:(this.height-30)/2,fill:this._getArrowColor()}),i=(a,c)=>{a.setCursor(r1.POINTER),a.setProps({fill:this._getArrowColor(!0)})},o=(a,c)=>{a.setCursor(r1.DEFAULT),a.setProps({fill:this._getArrowColor()})};H7(e,i,o),H7(s,i,o),this._addNavTrigger(e,s),t.addObjects([e,s],7)}removeNavigation(){var e,s;const t=this.getActiveSubScene();t==null||this._navigationEnabled===!1||((e=t.getObject("__slideNavigationLeft__"))==null||e.dispose(),(s=t.getObject("__slideNavigationRight__"))==null||s.dispose())}enableNav(){this._navigationEnabled=!0}disableNav(){this._navigationEnabled=!1}hiddenNav(){var e,s;const t=this.getActiveSubScene();t==null||this._navigationEnabled===!1||((e=t.getObject("__slideNavigationLeft__"))==null||e.hide(),(s=t.getObject("__slideNavigationRight__"))==null||s.hide())}showNav(){var e,s;const t=this.getActiveSubScene();t==null||this._navigationEnabled===!1||((e=t.getObject("__slideNavigationLeft__"))==null||e.show(),(s=t.getObject("__slideNavigationRight__"))==null||s.show())}renderToThumb(t,e,s=1,i=1){const o=this.getSubScene(e);o!=null&&(t.save(),t.scale(s,i),o.makeDirtyNoParent(!0).render(t),t.restore())}_getSubScenesIndex(t){if(t==null)return;const e=Array.from(this.getSubScenes()),s=e.length;let i=0;for(let c=0;c<s;c++){const[u]=e[c];if(t===u){i=c;break}}let o=i+1,a=i-1;return o=o>=s?0:o,a=a<0?s-1:a,{nextScene:e[o][1],previousScene:e[a][1]}}_addNavTrigger(t,e){t.onPointerDownObserver.add(()=>{var o;const s=this._getSubScenesIndex((o=this.getActiveSubScene())==null?void 0:o.sceneKey),i=s==null?void 0:s.previousScene.sceneKey;this.changePage(i),this.onSlideChangePageByNavigationObservable.notifyObservers(i)}),e.onPointerDownObserver.add(()=>{var o;const s=this._getSubScenesIndex((o=this.getActiveSubScene())==null?void 0:o.sceneKey),i=s==null?void 0:s.nextScene.sceneKey;this.changePage(i),this.onSlideChangePageByNavigationObservable.notifyObservers(i)})}_getArrowColor(t=!1){return t?l1(d.COLORS.white,.8):l1(d.COLORS.white,.5)}}class $d extends I1{constructor(n,t=s=>{},e){super(n),this._render=t,this._isHitCustom=e}toJson(){return{...super.toJson()}}render(n,t){if(!this.visible)return this.makeDirty(!1),this;if(t&&!this.isInGroup){const{top:s,left:i,bottom:o,right:a}=t.viewBound;if(this.width+this.strokeWidth<i||a<0||this.height+this.strokeWidth<s||o<0)return this}const e=this.transform.getMatrix();return n.save(),n.transform(e[0],e[1],e[2],e[3],e[4],e[5]),this._render(n),n.restore(),this.makeDirty(!1),this}isHit(n){return this._isHitCustom?this._isHitCustom(n):super.isHit(n)}}class Nd extends d.Disposable{constructor(){super(...arguments);h(this,"onInputChangedObservable",new d.Observable);h(this,"onTransformChangeObservable",new d.Observable);h(this,"_scenes",{});h(this,"_activeScene",null)}get classType(){return N.ENGINE}get activeScene(){return this._activeScene}get width(){return 0}get height(){return 0}getScenes(){return this._scenes}getScene(t){return this._scenes[t]}hasScene(t){return t in this._scenes}addScene(t){const e=t.sceneKey;return this.hasScene(e)&&console.warn("Scenes has similar key, it will be covered"),this._scenes[e]=t,t}setActiveScene(t){const e=this.getScene(t);return e&&(this._activeScene=e),e}setRemainCapture(){}hasActiveScene(){return this._activeScene!=null}dispose(){super.dispose();const t=this.getScenes();Object.keys(t).forEach(s=>{t[s].dispose()})}remainScene(t){const e=this.getScenes();if(e[t]){const s=e[t];return delete e[t],s}}}class K2 extends Nd{constructor(t=1,e=1,s,i){super();h(this,"renderEvenInBackground",!0);h(this,"onBeginFrameObservable",new d.Observable);h(this,"onEndFrameObservable",new d.Observable);h(this,"_container");h(this,"_canvas");h(this,"_canvasEle");h(this,"_renderingQueueLaunched",!1);h(this,"_activeRenderLoops",new Array);h(this,"_renderFunction",()=>{});h(this,"_requestNewFrameHandler",-1);h(this,"_frameId",-1);h(this,"_usingSafari",q7());h(this,"_fps",60);h(this,"_deltaTime",0);h(this,"_performanceMonitor",new E4);h(this,"_pointerMoveEvent");h(this,"_pointerDownEvent");h(this,"_pointerUpEvent");h(this,"_pointerBlurEvent");h(this,"_pointerWheelEvent");h(this,"_pointerEnterEvent");h(this,"_pointerLeaveEvent");h(this,"_remainCapture",-1);h(this,"pointer",{});h(this,"_mouseId",-1);h(this,"_isUsingFirefox",navigator.userAgent.indexOf("Firefox")!==-1);this._canvas=new o2({mode:i,width:t,height:e,pixelRatio:s}),this._canvasEle=this._canvas.getCanvasEle(),this._handleKeyboardAction(),this._handlePointerAction()}get width(){return this._canvas.getWidth()}get height(){return this._canvas.getHeight()}get requestNewFrameHandler(){return this._requestNewFrameHandler}get frameId(){return this._frameId}setCanvasCursor(t){const e=this.getCanvas().getCanvasEle();e.style.cursor=t}clearCanvas(){this.getCanvas().clear()}getCanvas(){return this._canvas}getCanvasElement(){return this._canvas.getCanvasEle()}setRemainCapture(){this._canvasEle.setPointerCapture(this._remainCapture)}getPixelRatio(){return this._canvas.getPixelRatio()}setContainer(t,e=!0){if(this._container=t,this._container.appendChild(this._canvasEle),e){this.resize();let s;const i=new ResizeObserver(()=>{s||(s=window.requestIdleCallback(()=>{this.resize(),s=void 0}))});i.observe(this._container),this.disposeWithMe(d.toDisposable(()=>{i.unobserve(this._container)}))}}resize(){if(!this._container)return;const{width:t,height:e}=c4(this._container);this.resizeBySize(t,e)}resizeBySize(t,e){const s=this.width,i=this.height;this._canvas.setSize(t,e),this.onTransformChangeObservable.notifyObservers({type:i1.resize,value:{width:t,height:e},preValue:{width:s,height:i}})}dispose(){super.dispose();const t=m6();this._canvasEle.removeEventListener(`${t}leave`,this._pointerLeaveEvent),this._canvasEle.removeEventListener(`${t}enter`,this._pointerEnterEvent),this._canvasEle.removeEventListener(`${t}move`,this._pointerMoveEvent),this._canvasEle.removeEventListener(`${t}down`,this._pointerDownEvent),this._canvasEle.removeEventListener(`${t}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(t){this._activeRenderLoops.indexOf(t)===-1&&(this._activeRenderLoops.push(t),this._renderingQueueLaunched||(this._renderingQueueLaunched=!0,this._renderFunction=this._renderLoop.bind(this),this._requestNewFrameHandler=b2(this._renderFunction)))}stopRenderLoop(t){if(!t){this._activeRenderLoops.length=0,this._cancelFrame();return}const e=this._activeRenderLoops.indexOf(t);e>=0&&(this._activeRenderLoops.splice(e,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 t=0;t<this._activeRenderLoops.length;t++){const e=this._activeRenderLoops[t];e()}}_cancelFrame(){if(this._renderingQueueLaunched&&this._requestNewFrameHandler){if(this._renderingQueueLaunched=!1,typeof window>"u"){if(typeof cancelAnimationFrame=="function")return cancelAnimationFrame(this._requestNewFrameHandler)}else{const{cancelAnimationFrame:t}=this._getHostWindow()||window;if(typeof t=="function")return t(this._requestNewFrameHandler)}return clearTimeout(this._requestNewFrameHandler)}}_getHostWindow(){var t,e;return typeof window>"u"?null:(e=(t=this._canvasEle)==null?void 0:t.ownerDocument)!=null&&e.defaultView?this._canvasEle.ownerDocument.defaultView:window}_renderLoop(){let t=!0;this.renderEvenInBackground||(t=!1),t&&(this.beginFrame(),this._renderFrame(),this.endFrame()),this._activeRenderLoops.length>0?this._requestNewFrameHandler=b2(this._renderFunction):this._renderingQueueLaunched=!1}_measureFps(){this._performanceMonitor.sampleFrame(),this._fps=this._performanceMonitor.averageFPS,this._deltaTime=this._performanceMonitor.instantaneousFrameTime||0}_handleKeyboardAction(){const t=s=>{const i=s;i.deviceType=d1.Keyboard,i.inputIndex=s.keyCode,i.previousState=0,i.currentState=1,this.onInputChangedObservable.notifyObservers(i)},e=s=>{const i=s;i.deviceType=d1.Keyboard,i.inputIndex=s.keyCode,i.previousState=1,i.currentState=0,this.onInputChangedObservable.notifyObservers(i)};this._canvasEle.addEventListener("keydown",t),this._canvasEle.addEventListener("keyup",e)}_handlePointerAction(){const t=m6();this._pointerMoveEvent=e=>{const s=this._getPointerType(e),i=this.pointer[M.Horizontal],o=this.pointer[M.Vertical],a=this.pointer[M.DeltaHorizontal],c=this.pointer[M.DeltaVertical];this.pointer[M.Horizontal]=e.clientX,this.pointer[M.Vertical]=e.clientY,this.pointer[M.DeltaHorizontal]=e.movementX,this.pointer[M.DeltaVertical]=e.movementY;const u=e;u.deviceType=s,i!==e.clientX&&(u.inputIndex=M.Horizontal,u.previousState=i,u.currentState=this.pointer[M.Horizontal],this.onInputChangedObservable.notifyObservers(u)),o!==e.clientY&&(u.inputIndex=M.Vertical,u.previousState=o,u.currentState=this.pointer[M.Vertical],this.onInputChangedObservable.notifyObservers(u)),this.pointer[M.DeltaHorizontal]!==0&&(u.inputIndex=M.DeltaHorizontal,u.previousState=a,u.currentState=this.pointer[M.DeltaHorizontal],this.onInputChangedObservable.notifyObservers(u)),this.pointer[M.DeltaVertical]!==0&&(u.inputIndex=M.DeltaVertical,u.previousState=c,u.currentState=this.pointer[M.DeltaVertical],this.onInputChangedObservable.notifyObservers(u)),!this._usingSafari&&e.button!==-1&&(u.inputIndex=e.button+2,u.previousState=this.pointer[e.button+2],this.pointer[e.button+2]=this.pointer[e.button+2]?0:1,u.currentState=this.pointer[e.button+2],this.onInputChangedObservable.notifyObservers(u))},this._pointerDownEvent=e=>{const s=e,i=this._getPointerType(s),o=this.pointer[M.Horizontal],a=this.pointer[M.Vertical],c=this.pointer[s.button+2];i===d1.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[M.Horizontal]=s.clientX,this.pointer[M.Vertical]=s.clientY,this.pointer[s.button+2]=1;const u=s;u.deviceType=i,o!==s.clientX&&(u.inputIndex=M.Horizontal,u.previousState=o,u.currentState=this.pointer[M.Horizontal],this.onInputChangedObservable.notifyObservers(u)),a!==s.clientY&&(u.inputIndex=M.Vertical,u.previousState=a,u.currentState=this.pointer[M.Vertical],this.onInputChangedObservable.notifyObservers(u)),u.inputIndex=s.button+2,u.previousState=c,u.currentState=this.pointer[s.button+2],this.onInputChangedObservable.notifyObservers(u)},this._pointerUpEvent=e=>{const s=e,i=this._getPointerType(s),o=this.pointer[M.Horizontal],a=this.pointer[M.Vertical],c=this.pointer[s.button+2];this.pointer[M.Horizontal]=s.clientX,this.pointer[M.Vertical]=s.clientY,this.pointer[s.button+2]=0;const u=s;u.deviceType=i,o!==s.clientX&&(u.inputIndex=M.Horizontal,u.previousState=o,u.currentState=this.pointer[M.Horizontal],this.onInputChangedObservable.notifyObservers(u)),a!==s.clientY&&(u.inputIndex=M.Vertical,u.previousState=a,u.currentState=this.pointer[M.Vertical],this.onInputChangedObservable.notifyObservers(u)),u.inputIndex=s.button+2,u.previousState=c,u.currentState=this.pointer[s.button+2],i===d1.Mouse&&this._mouseId>=0&&this._canvasEle.hasPointerCapture(this._mouseId)?(this._remainCapture=this._mouseId,this._canvasEle.releasePointerCapture(this._mouseId)):u.pointerId&&this._canvasEle.hasPointerCapture(u.pointerId)&&(this._remainCapture=u.pointerId,this._canvasEle.releasePointerCapture(u.pointerId)),this.onInputChangedObservable.notifyObservers(u),i!==d1.Mouse&&(this.pointer={})},this._pointerEnterEvent=e=>{const s=this._getPointerType(e),i=e;i.deviceType=s,i.currentState=2,this.onInputChangedObservable.notifyObservers(i)},this._pointerLeaveEvent=e=>{const s=this._getPointerType(e),i=e;i.deviceType=s,i.currentState=3,this.onInputChangedObservable.notifyObservers(i)},this._pointerBlurEvent=e=>{this._mouseId>=0&&this._canvasEle.hasPointerCapture(this._mouseId)&&(this._canvasEle.releasePointerCapture(this._mouseId),this._remainCapture=this._mouseId,this._mouseId=-1),this.pointer={}},this._pointerWheelEvent=e=>{const s=d1.Mouse,i=this.pointer[M.MouseWheelX],o=this.pointer[M.MouseWheelY],a=this.pointer[M.MouseWheelZ];this.pointer[M.MouseWheelX]=e.deltaX||0,this.pointer[M.MouseWheelY]=e.deltaY||e.wheelDelta||0,this.pointer[M.MouseWheelZ]=e.deltaZ||0;const c=e;c.deviceType=s,this.pointer[M.MouseWheelX]!==0&&(c.inputIndex=M.MouseWheelX,c.previousState=i,c.currentState=this.pointer[M.MouseWheelX],this.onInputChangedObservable.notifyObservers(c)),this.pointer[M.MouseWheelY]!==0&&(c.inputIndex=M.MouseWheelY,c.previousState=o,c.currentState=this.pointer[M.MouseWheelY],this.onInputChangedObservable.notifyObservers(c)),this.pointer[M.MouseWheelZ]!==0&&(c.inputIndex=M.MouseWheelZ,c.previousState=a,c.currentState=this.pointer[M.MouseWheelZ],this.onInputChangedObservable.notifyObservers(c))},this._canvasEle.addEventListener(`${t}enter`,this._pointerEnterEvent),this._canvasEle.addEventListener(`${t}leave`,this._pointerLeaveEvent),this._canvasEle.addEventListener(`${t}move`,this._pointerMoveEvent),this._canvasEle.addEventListener(`${t}down`,this._pointerDownEvent),this._canvasEle.addEventListener(`${t}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 t=!1;const e=()=>{};try{const s={passive:{get(){t=!0}}};this._canvasEle.addEventListener("test",e,s),this._canvasEle.removeEventListener("test",e,s)}catch{}return t}_getPointerType(t){let e=d1.Mouse;return(t.pointerType==="touch"||t.pointerType==="pen"||t.touches)&&(e=d1.Touch),e}}class Pt extends I1{constructor(t,...e){super(t);h(this,"_objects",[]);this.addObjects(...e)}get classType(){return N.GROUP}set cursor(t){this.setCursor(t)}addObjects(...t){for(const e of t)this.addObject(e)}addObject(t){let e=t;if(F6(t)){const s=this.getScene();if(e=s==null?void 0:s.getObject(t),!e)return;e.parent=this,e.isInGroup=!0,e.groupKey=this.oKey,this._objects.push(e)}else t.parent=this,t.isInGroup=!0,t.groupKey=this.oKey,this._objects.push(t)}removeObject(t){const e=this.getObjects(),s=e.length;if(F6(t))for(let i=0;i<s;i++){const o=e[i];if(o.oKey===t){e.splice(i,1),this.parent.removeObject(o);return}}else for(let i=0;i<s;i++){const o=e[i];if(o===t){e.splice(i,1),this.parent.removeObject(o);return}}}getObjectsByOrder(){const t=[];this._objects.sort(d.sortRules);for(const e of this._objects)!e.isInGroup&&e.visible&&t.push(e);return t}getObjects(){return this._objects}render(t,e){t.save();const s=this.transform.getMatrix();t.transform(s[0],s[1],s[2],s[3],s[4],s[5]),this._objects.sort(d.sortRules);for(const i of this._objects)i.render(t,this._transformBounds(e));t.restore()}resize(t,e){return this}scale(t,e){return this}skew(t,e){return this}flip(t,e){return this}isHit(t){return!0}pick(t){}dispose(){this.getObjects().forEach(t=>{t.dispose()}),super.dispose()}_transformBounds(t){return t}}class Lt extends d.Disposable{constructor(t,e=[],s=1,i=!1){super();h(this,"_objects",[]);h(this,"_cacheCanvas");h(this,"_dirty",!0);this._scene=t,this._zIndex=s,this._allowCache=i,this.addObjects(e),this._allowCache&&this._initialCacheCanvas()}get scene(){return this._scene}get zIndex(){return this._zIndex}enableCache(){this._allowCache=!0,this._initialCacheCanvas()}disableCache(){var t;this._allowCache=!1,(t=this._cacheCanvas)==null||t.dispose(),this._cacheCanvas=null}isAllowCache(){return this._allowCache}getObjectsByOrder(){const t=[];this._objects.sort(d.sortRules);for(const e of this._objects)!e.isInGroup&&e.visible&&t.push(e);return t}getObjectsByOrderForPick(){const t=[];this._objects.sort(d.sortRules);for(const e of this._objects)e.classType!==N.GROUP&&e.visible&&t.push(e);return t}getObjects(){return this._objects}addObject(t){if(t.classType===N.GROUP){const e=t.getObjects();for(const s of e)this.scene.getObject(s.oKey)||(this._objects.push(s),this.scene.setObjectBehavior(s),s.layer=this)}return this._objects.push(t),this.scene.setObjectBehavior(t),this.scene.applyTransformer(t),t.layer=this,this}removeObject(t){const e=this.getObjects(),s=e.length;if(t instanceof I1){for(let i=0;i<s;i++)if(e[i]===t){e.splice(i,1);return}}else for(let i=0;i<s;i++)if(e[i].oKey===t){e.splice(i,1);return}}addObjects(t){return t.forEach(e=>{this.addObject(e)}),this}removeObjects(t){const e=this.getObjects(),s=e.length;for(let i=s-1;i>=0;i--){let o=e[i];const a=t.length;if(a===0)break;for(let c=0;c<a;c++){const u=t[c];if(o=u instanceof I1?o:o.oKey,o===u){e.splice(i,1);break}}}}makeDirty(t=!0){return this._dirty=t,this}isDirty(){return this._dirty}render(t,e=!1){var i;const s=t||((i=this._scene.getEngine())==null?void 0:i.getCanvas().getContext());if(this._allowCache&&this._cacheCanvas){if(this.isDirty()){const o=this._cacheCanvas.getContext();this._cacheCanvas.clear(),o.save(),o.setTransform(s.getTransform()),this._draw(o,e),o.restore()}this._applyCache(s)}else s.save(),this._draw(s,e),s.restore();return this.makeDirty(!1),this}_initialCacheCanvas(){this._cacheCanvas=new o2,this.disposeWithMe(d.toDisposable(this._scene.getEngine().onTransformChangeObservable.add(()=>{this._resizeCacheCanvas()})))}_draw(t,e){var s;(s=this._scene.getViewports())==null||s.forEach(i=>i.render(t,this.getObjectsByOrder(),e))}_applyCache(t){if(!t||this._cacheCanvas==null)return;const e=this._cacheCanvas.getWidth(),s=this._cacheCanvas.getHeight();t.drawImage(this._cacheCanvas.getCanvasEle(),0,0,e,s)}_resizeCacheCanvas(){var e;const t=this._scene.getEngine();(e=this._cacheCanvas)==null||e.setSize(t.width,t.height),this.makeDirty(!0)}clear(){this._objects=[]}dispose(){var t;super.dispose(),this.getObjects().forEach(e=>{e.dispose()}),this.clear(),(t=this._cacheCanvas)==null||t.dispose()}}const kd=["__SpreadsheetTransformerResizeLT__","__SpreadsheetTransformerResizeCT__","__SpreadsheetTransformerResizeRT__","__SpreadsheetTransformerResizeLM__","__SpreadsheetTransformerResizeRM__","__SpreadsheetTransformerResizeLB__","__SpreadsheetTransformerResizeCB__","__SpreadsheetTransformerResizeRB__"];class Hd extends d.Disposable{constructor(t,e){super();h(this,"hoverEnabled",!1);h(this,"hoverEnterFunc");h(this,"hoverLeaveFunc");h(this,"resizeEnabled",!0);h(this,"rotateEnabled",!0);h(this,"rotationSnaps",[]);h(this,"rotationSnapTolerance",5);h(this,"rotateAnchorOffset",50);h(this,"rotateSize",10);h(this,"rotateCornerRadius",10);h(this,"borderEnabled",!0);h(this,"borderStroke","rgb(97, 97, 97)");h(this,"borderStrokeWidth",1);h(this,"borderDash",[]);h(this,"borderSpacing",10);h(this,"anchorFill","rgb(255,255,255)");h(this,"anchorStroke","rgb(185,185,185)");h(this,"anchorStrokeWidth",1);h(this,"anchorSize",10);h(this,"anchorCornerRadius",10);h(this,"keepRatio",!0);h(this,"centeredScaling",!1);h(this,"enabledAnchors",[1,1,1,1,1,1,1,1]);h(this,"flipEnabled",!1);h(this,"ignoreStroke",!1);h(this,"boundBoxFunc");h(this,"useSingleNodeRotation",!1);h(this,"shouldOverdrawWholeArea",!1);h(this,"onChangeStartObservable",new d.Observable);h(this,"onChangingObservable",new d.Observable);h(this,"onChangeEndObservable",new d.Observable);h(this,"onClearControlObservable",new d.Observable);h(this,"onCreateControlObservable",new d.Observable);h(this,"_startOffsetX",-1);h(this,"_startOffsetY",-1);h(this,"_viewportScrollX",-1);h(this,"_viewportScrollY",-1);h(this,"_moveObserver");h(this,"_upObserver");h(this,"_cancelFocusObserver");h(this,"_transformerControlMap",new Map);h(this,"_selectedObjectMap",new Map);this._scene=t,this._initialProps(e)}getScene(){return this._scene}hideControl(){this._hideControl()}attachTo(t){if(t.isTransformer)return this.hoverEnabled&&(this.hoverEnterFunc&&t.onPointerEnterObserver.add(this.hoverEnterFunc),this.hoverLeaveFunc&&t.onPointerLeaveObserver.add(this.hoverLeaveFunc)),this.disposeWithMe(d.toDisposable(t.onPointerDownObserver.add((e,s)=>{const{offsetX:i,offsetY:o}=e;this._startOffsetX=i,this._startOffsetY=o;const a=this._getTopScene();if(!a)return;this._addCancelObserver(a),a.disableEvent();const c=r2.create(a);c.startScroll(i,o);const{scrollX:u,scrollY:l}=t2(c);this._viewportScrollX=u,this._viewportScrollY=l,this._updateActiveObjectList(t,e),this._moveObserver=a.onPointerMoveObserver.add(D=>{const{offsetX:f,offsetY:p}=D;this._moving(f,p,c),this._hideControl(),c.scrolling(f,p,()=>{this._moving(f,p,c)})}),this._upObserver=a.onPointerUpObserver.add(()=>{a.onPointerMoveObserver.remove(this._moveObserver),a.onPointerUpObserver.remove(this._upObserver),a.enableEvent(),this._updateControl(),c.dispose(),this.onChangeEndObservable.notifyObservers({objects:this._selectedObjectMap,type:2})}),s.stopPropagation()}))),t}dispose(){var t,e,s;(t=this._moveObserver)==null||t.dispose(),(e=this._upObserver)==null||e.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(t){if(!t)return;const e=Object.keys(t);e.length!==0&&e.forEach(s=>{if(t[s]===void 0)return!0;this[s]=t[s]})}_updateControlChildren(){this._updateControlIterator((t,e)=>{const{left:s,top:i,width:o,height:a,scaleX:c,scaleY:u}=e.getState();t.getObjects().forEach(D=>{const f=D.oKey,p=this._checkTransformerType(f);if(!p)return!0;if(p==="__SpreadsheetTransformerOutline__")D.transformByState(this._getOutlinePosition(o,a,c,u));else{const{left:F,top:E}=this._getRotateAnchorPosition(p,a,o);D.transformByState({left:F,top:E})}}),t.transformByState({left:s,top:i})})}_anchorMoving(t,e,s,i){const{scrollX:o,scrollY:a}=t2(i),c=e-this._viewportScrollX+o,u=s-this._viewportScrollY+a,l=c-this._startOffsetX,D=u-this._startOffsetY;this._selectedObjectMap.forEach(f=>{const{left:p,top:F,width:E,height:m}=f,b={};switch(t){case"__SpreadsheetTransformerResizeLT__":b.left=p+l,b.top=F+D,b.width=E-l,b.height=m-D;break;case"__SpreadsheetTransformerResizeCT__":b.top=F+D,b.height=m-D;break;case"__SpreadsheetTransformerResizeRT__":b.top=F+D,b.width=E+l,b.height=m-D;break;case"__SpreadsheetTransformerResizeLM__":b.left=p+l,b.width=E-l;break;case"__SpreadsheetTransformerResizeRM__":b.width=l+E;break;case"__SpreadsheetTransformerResizeLB__":b.left=p+l,b.width=E-l,b.height=m+D;break;case"__SpreadsheetTransformerResizeCB__":b.height=D+m;break;case"__SpreadsheetTransformerResizeRB__":b.width=l+E,b.height=D+m;break}f.transformByState(b)}),this._updateControlChildren(),this.onChangingObservable.notifyObservers({objects:this._selectedObjectMap,moveX:l,moveY:D,type:1}),this._startOffsetX=c,this._startOffsetY=u}_attachEventToAnchor(t,e="__SpreadsheetTransformerResizeLT__"){this.disposeWithMe(d.toDisposable(t.onPointerDownObserver.add((s,i)=>{const{offsetX:o,offsetY:a}=s;this._startOffsetX=o,this._startOffsetY=a;const c=this._getTopScene();if(c==null)return;c.disableEvent();const u=r2.create(c);u.startScroll(o,a);const{scrollX:l,scrollY:D}=t2(u);this._viewportScrollX=l,this._viewportScrollY=D;const f=this._getRotateAnchorCursor(e);this._moveObserver=c.onPointerMoveObserver.add(p=>{const{offsetX:F,offsetY:E}=p;this._anchorMoving(e,F,E,u),u.scrolling(F,E,()=>{this._anchorMoving(e,F,E,u)}),c.setCursor(f)}),this._upObserver=c.onPointerUpObserver.add(()=>{c.onPointerMoveObserver.remove(this._moveObserver),c.onPointerUpObserver.remove(this._upObserver),c.enableEvent(),c.resetCursor(),u.dispose(),this.onChangeEndObservable.notifyObservers({objects:this._selectedObjectMap,type:2})}),i.stopPropagation()})))}_attachEventToRotate(t){this.disposeWithMe(d.toDisposable(t.onPointerDownObserver.add((e,s)=>{const{offsetX:i,offsetY:o}=e;this._startOffsetX=i,this._startOffsetY=o;const a=this._getTopScene();a!=null&&(a.disableEvent(),this._viewportScrollX=scrollX,this._viewportScrollY=scrollY,this._upObserver=a.onPointerUpObserver.add(()=>{a.onPointerMoveObserver.remove(this._moveObserver),a.onPointerUpObserver.remove(this._upObserver),a.enableEvent()}),s.stopPropagation())})))}_getOutlinePosition(t,e,s,i){return{left:-this.borderSpacing-this.borderStrokeWidth,top:-this.borderSpacing-this.borderStrokeWidth,width:t+this.borderSpacing*2,height:e+this.borderSpacing*2}}_getRotateAnchorCursor(t){let e=r1.NORTH_WEST_RESIZE;switch(t){case"__SpreadsheetTransformerRotate__":e=r1.MOVE;break;case"__SpreadsheetTransformerRotateLine__":e=r1.MOVE;break;case"__SpreadsheetTransformerResizeLT__":break;case"__SpreadsheetTransformerResizeCT__":e=r1.NORTH_RESIZE;break;case"__SpreadsheetTransformerResizeRT__":e=r1.NORTH_EAST_RESIZE;break;case"__SpreadsheetTransformerResizeLM__":e=r1.WEST_RESIZE;break;case"__SpreadsheetTransformerResizeRM__":e=r1.EAST_RESIZE;break;case"__SpreadsheetTransformerResizeLB__":e=r1.SOUTH_WEST_RESIZE;break;case"__SpreadsheetTransformerResizeCB__":e=r1.SOUTH_RESIZE;break;case"__SpreadsheetTransformerResizeRB__":e=r1.SOUTH_EAST_RESIZE;break}return e}_getRotateAnchorPosition(t,e,s){let i=-this.anchorSize/2,o=-this.anchorSize/2;switch(t){case"__SpreadsheetTransformerRotate__":i=s/2-this.rotateSize/2,o=-this.rotateAnchorOffset-this.borderSpacing-this.borderStrokeWidth*2-this.rotateSize;break;case"__SpreadsheetTransformerRotateLine__":i=s/2,o=-this.rotateAnchorOffset-this.borderSpacing-this.borderStrokeWidth;break;case"__SpreadsheetTransformerResizeLT__":i+=-this.borderSpacing-this.borderStrokeWidth,o+=-this.borderSpacing-this.borderStrokeWidth;break;case"__SpreadsheetTransformerResizeCT__":i+=s/2,o+=-this.borderSpacing-this.borderStrokeWidth;break;case"__SpreadsheetTransformerResizeRT__":i+=s+this.borderSpacing-this.borderStrokeWidth,o+=-this.borderSpacing-this.borderStrokeWidth;break;case"__SpreadsheetTransformerResizeLM__":i+=-this.borderSpacing-this.borderStrokeWidth,o+=e/2;break;case"__SpreadsheetTransformerResizeRM__":i+=s+this.borderSpacing-this.borderStrokeWidth,o+=e/2;break;case"__SpreadsheetTransformerResizeLB__":i+=-this.borderSpacing-this.borderStrokeWidth,o+=e+this.borderSpacing-this.borderStrokeWidth;break;case"__SpreadsheetTransformerResizeCB__":i+=s/2,o+=e+this.borderSpacing-this.borderStrokeWidth;break;case"__SpreadsheetTransformerResizeRB__":i+=s+this.borderSpacing-this.borderStrokeWidth,o+=e+this.borderSpacing-this.borderStrokeWidth;break}return{left:i,top:o}}_createResizeAnchor(t,e,s){const{height:i,width:o,scaleX:a,scaleY:c}=e.getState(),{left:u,top:l}=this._getRotateAnchorPosition(t,i,o),D=this._getRotateAnchorCursor(t),f=new f1(`${t}_${s}`,{zIndex:s-1,fill:this.anchorFill,stroke:this.anchorStroke,strokeWidth:this.anchorStrokeWidth,width:this.anchorSize,height:this.anchorSize,radius:this.anchorCornerRadius,left:u,top:l});return this._attachHover(f,D,r1.DEFAULT),f}_checkTransformerType(t){if(t.indexOf("__SpreadsheetTransformerOutline__")>-1)return"__SpreadsheetTransformerOutline__";if(t.indexOf("__SpreadsheetTransformerRotate__")>-1)return"__SpreadsheetTransformerRotate__";if(t.indexOf("__SpreadsheetTransformerRotateLine__")>-1)return"__SpreadsheetTransformerRotateLine__";if(t.indexOf("__SpreadsheetTransformerResizeLT__")>-1)return"__SpreadsheetTransformerResizeLT__";if(t.indexOf("__SpreadsheetTransformerResizeCT__")>-1)return"__SpreadsheetTransformerResizeCT__";if(t.indexOf("__SpreadsheetTransformerResizeRT__")>-1)return"__SpreadsheetTransformerResizeRT__";if(t.indexOf("__SpreadsheetTransformerResizeLM__")>-1)return"__SpreadsheetTransformerResizeLM__";if(t.indexOf("__SpreadsheetTransformerResizeRM__")>-1)return"__SpreadsheetTransformerResizeRM__";if(t.indexOf("__SpreadsheetTransformerResizeLB__")>-1)return"__SpreadsheetTransformerResizeLB__";if(t.indexOf("__SpreadsheetTransformerResizeCB__")>-1)return"__SpreadsheetTransformerResizeCB__";if(t.indexOf("__SpreadsheetTransformerResizeRB__")>-1)return"__SpreadsheetTransformerResizeRB__"}_updateControlIterator(t){this._transformerControlMap.forEach((e,s)=>{const i=this._selectedObjectMap.get(s);if(!i)return!0;t(e,i)})}_updateControl(){this._updateControlIterator((t,e)=>{const{left:s,top:i}=e.getState();t.transformByState({left:s,top:i}),t.show(),t.makeDirty(!0)})}_hideControl(){this._transformerControlMap.forEach(t=>{t.hide(),t.makeDirty(!0)})}_attachHover(t,e,s){this.disposeWithMe(d.toDisposable(t.onPointerEnterObserver.add(()=>{t.cursor=e}))),this.disposeWithMe(d.toDisposable(t.onPointerLeaveObserver.add(()=>{t.cursor=s})))}_clearControl(){this._transformerControlMap.forEach(t=>{t.dispose()}),this._transformerControlMap.clear(),this.onClearControlObservable.notifyObservers(null)}_createControl(t){const{left:e,top:s,height:i,width:o,angle:a,scaleX:c,scaleY:u,skewX:l,skewY:D,flipX:f,flipY:p}=t.getState(),F=t.oKey,E=this._selectedObjectMap.size,m=[];if(this.borderEnabled){const v=new f1(`__SpreadsheetTransformerOutline___${E}`,{zIndex:E-1,evented:!1,strokeWidth:this.borderStrokeWidth,stroke:this.borderStroke,...this._getOutlinePosition(o,i,c,u)});m.push(v)}if(this.resizeEnabled){const{left:v,top:y}=this._getRotateAnchorPosition("__SpreadsheetTransformerRotateLine__",i,o),T=new f1(`__SpreadsheetTransformerRotateLine___${E}`,{zIndex:E-1,evented:!1,left:v,top:y,height:this.rotateAnchorOffset,width:1,strokeWidth:this.borderStrokeWidth,stroke:this.borderStroke}),{left:B,top:O}=this._getRotateAnchorPosition("__SpreadsheetTransformerRotate__",i,o),w=this._getRotateAnchorCursor("__SpreadsheetTransformerRotate__"),P=new f1(`__SpreadsheetTransformerRotate___${E}`,{zIndex:E-1,left:B,top:O,height:this.rotateSize,width:this.rotateSize,radius:this.rotateCornerRadius,strokeWidth:this.borderStrokeWidth*2,stroke:this.borderStroke});this._attachEventToRotate(P),this._attachHover(P,w,r1.DEFAULT),m.push(T,P)}if(this.resizeEnabled)for(let v=0,y=this.enabledAnchors.length;v<y;v++){if(this.enabledAnchors[v]!==1)continue;const B=kd[v],O=this._createResizeAnchor(B,t,E);this._attachEventToAnchor(O,B),m.push(O)}const b=new Pt(`__SpreadsheetTransformer___${E}`,...m);return b.zIndex=E,b.evented=!1,b.transformByState({left:e,top:s}),this.getScene().addObject(b,2),this._transformerControlMap.set(F,b),this.onCreateControlObservable.notifyObservers(b),b}_getTopScene(){var e;return(e=this.getScene().getEngine())==null?void 0:e.activeScene}_moving(t,e,s){const{scrollX:i,scrollY:o}=t2(s),a=t-this._viewportScrollX+i,c=e-this._viewportScrollY+o,u=a-this._startOffsetX,l=c-this._startOffsetY;this._selectedObjectMap.forEach(D=>{D.translate(u+D.left,l+D.top)}),this.onChangingObservable.notifyObservers({objects:this._selectedObjectMap,moveX:u,moveY:l,type:1}),this._startOffsetX=a,this._startOffsetY=c}_updateActiveObjectList(t,e){this._selectedObjectMap.has(t.oKey)||(e.ctrlKey||(this._selectedObjectMap.clear(),this._clearControl()),this._selectedObjectMap.set(t.oKey,t),this._createControl(t))}_addCancelObserver(t){t.onPointerDownObserver.remove(this._cancelFocusObserver),this._cancelFocusObserver=t.onPointerDownObserver.add(()=>{this._selectedObjectMap.clear(),this._clearControl(),t.onPointerDownObserver.remove(this._cancelFocusObserver)})}}const m1=class m1 extends d.Disposable{constructor(t){super();h(this,"_alreadyAttached",!1);h(this,"_onInputObserver");h(this,"_onPointerMove");h(this,"_onPointerDown");h(this,"_onPointerUp");h(this,"_onPointerEnter");h(this,"_onPointerLeave");h(this,"_onMouseWheel");h(this,"_onKeyDown");h(this,"_onKeyUp");h(this,"_scene");h(this,"_currentMouseEnterPicked");h(this,"_startingPosition",new I(Number.POSITIVE_INFINITY,Number.POSITIVE_INFINITY));h(this,"_delayedTimeout",-1);h(this,"_delayedTripeTimeout",-1);h(this,"_doubleClickOccurred",0);h(this,"_tripleClickState",!1);h(this,"_currentObject");this._scene=t}mouseLeaveEnterHandler(t){var s;const e=this._currentObject;if(e==null)(s=this._currentMouseEnterPicked)==null||s.triggerPointerLeave(t),this._currentMouseEnterPicked=null;else if(e!==this._currentMouseEnterPicked){const i=this._currentMouseEnterPicked;this._currentMouseEnterPicked=e,i==null||i.triggerPointerLeave(t),e==null||e.triggerPointerEnter(t)}}attachControl(t=!0,e=!0,s=!0,i=!0,o=!0,a=!0){const c=this._scene.getEngine();c&&(this._onPointerEnter=u=>{var l;u.pointerId===void 0&&(u.pointerId=0),this._currentObject=this._getCurrentObject(u.offsetX,u.offsetY),(l=this._currentObject)==null||l.triggerPointerMove(u),this.mouseLeaveEnterHandler(u)},this._onPointerLeave=u=>{u.pointerId===void 0&&(u.pointerId=0),this._currentObject=null,this.mouseLeaveEnterHandler(u)},this._onPointerMove=u=>{var D;u.pointerId===void 0&&(u.pointerId=0),this._currentObject=this._getCurrentObject(u.offsetX,u.offsetY);const l=(D=this._currentObject)==null?void 0:D.triggerPointerMove(u);this.mouseLeaveEnterHandler(u),this._checkDirectSceneEventTrigger(!l,this._currentObject)&&this._scene.onPointerMoveObserver.hasObservers()&&this._scene.onPointerMoveObserver.notifyObservers(u)},this._onPointerDown=u=>{u.pointerId===void 0&&(u.pointerId=0);const l=this._getCurrentObject(u.offsetX,u.offsetY),D=l==null?void 0:l.triggerPointerDown(u);this._checkDirectSceneEventTrigger(!D,l)&&this._scene.onPointerDownObserver.hasObservers()&&this._scene.onPointerDownObserver.notifyObservers(u)},this._onPointerUp=u=>{u.pointerId===void 0&&(u.pointerId=0);const l=this._getCurrentObject(u.offsetX,u.offsetY),D=l==null?void 0:l.triggerPointerUp(u);this._checkDirectSceneEventTrigger(!D,l)&&this._scene.onPointerUpObserver.hasObservers()&&this._scene.onPointerUpObserver.notifyObservers(u),this._prePointerDoubleOrTripleClick(u)},this._onMouseWheel=u=>{const l=this._getCurrentObject(u.offsetX,u.offsetY),D=l==null?void 0:l.triggerMouseWheel(u);this._scene.getViewports().forEach(f=>{f.onMouseWheelObserver.hasObservers()&&f.onMouseWheelObserver.notifyObservers(u)}),this._checkDirectSceneEventTrigger(!D,l)&&this._scene.onMouseWheelObserver.hasObservers()&&this._scene.onMouseWheelObserver.notifyObservers(u)},this._onKeyDown=u=>{this._scene.onKeyDownObservable.hasObservers()&&this._scene.onKeyDownObservable.notifyObservers(u)},this._onKeyUp=u=>{this._scene.onKeyUpObservable.hasObservers()&&this._scene.onKeyUpObservable.notifyObservers(u)},this._onInputObserver=c.onInputChangedObservable.add(u=>{const l=u;u.deviceType===d1.Keyboard&&(u.currentState===1&&this._onKeyDown(l),u.currentState===0&&this._onKeyUp(l)),(u.deviceType===d1.Mouse||u.deviceType===d1.Touch)&&(t&&u.inputIndex>=M.LeftClick&&u.inputIndex<=M.RightClick&&u.currentState===1&&this._onPointerDown(l),e&&u.inputIndex>=M.LeftClick&&u.inputIndex<=M.RightClick&&u.currentState===0&&this._onPointerUp(l),s&&(u.inputIndex===M.Horizontal||u.inputIndex===M.Vertical||u.inputIndex===M.DeltaHorizontal||u.inputIndex===M.DeltaVertical)?this._onPointerMove(l):i&&(u.inputIndex===M.MouseWheelX||u.inputIndex===M.MouseWheelY||u.inputIndex===M.MouseWheelZ)?this._onMouseWheel(l):o&&u.currentState===2?this._onPointerEnter(l):a&&u.currentState===3&&this._onPointerLeave(l))}),this.disposeWithMe(d.toDisposable(this._onInputObserver)),this._alreadyAttached=!0)}detachControl(){if(!this._alreadyAttached)return;const t=this._scene.getEngine();t&&(t.onInputChangedObservable.remove(this._onInputObserver),this._alreadyAttached=!1)}_getCurrentObject(t,e){var s;return(s=this._scene)==null?void 0:s.pick(I.FromArray([t,e]))}_checkDirectSceneEventTrigger(t,e){let s=!1;e==null&&(s=!0);let i=!0;if(e&&e.classType===N.BASE_OBJECT){const o=e.getScene();o&&(i=o.getParent().classType!==N.SCENE_VIEWER)}return!this._scene.evented&&t&&i||s}_isPointerSwiping(t,e){return Math.abs(this._startingPosition.x-t)>m1.DragMovementThreshold||Math.abs(this._startingPosition.y-e)>m1.DragMovementThreshold}_prePointerDoubleOrTripleClick(t){var o,a,c,u;const{clientX:e,clientY:s}=t;this._isPointerSwiping(e,s)&&this._resetDoubleClickParam(),this._delayedTimeout=setTimeout(()=>{this._resetDoubleClickParam()},m1.DoubleClickDelay),this._doubleClickOccurred+=1,this._tripleClickState&&((a=(o=this._scene)==null?void 0:o.pick(I.FromArray([t.offsetX,t.offsetY])))==null||a.triggerTripleClick(t),this._scene.onTripleClickObserver.hasObservers()&&this._scene.onTripleClickObserver.notifyObservers(t)),this._doubleClickOccurred===2&&((u=(c=this._scene)==null?void 0:c.pick(I.FromArray([t.offsetX,t.offsetY])))==null||u.triggerDblclick(t),this._scene.onDblclickObserver.hasObservers()&&this._scene.onDblclickObserver.notifyObservers(t),this._resetDoubleClickParam(),this._tripleClickState=!0,clearTimeout(this._delayedTripeTimeout),this._delayedTripeTimeout=setTimeout(()=>{this._tripleClickState=!1},m1.TripleClickDelay)),this._startingPosition.x=e,this._startingPosition.y=s}_resetDoubleClickParam(){this._doubleClickOccurred=0,clearTimeout(this._delayedTimeout)}};h(m1,"DragMovementThreshold",2),h(m1,"LongPressDelay",500),h(m1,"DoubleClickDelay",500),h(m1,"TripleClickDelay",300),h(m1,"ExclusiveDoubleClickMode",!1);let B6=m1;class Xd extends d.Disposable{constructor(t){super();h(this,"onTransformChangeObservable",new d.Observable);h(this,"onPointerDownObserver",new d.Observable);h(this,"onPointerMoveObserver",new d.Observable);h(this,"onPointerUpObserver",new d.Observable);h(this,"onPointerEnterObserver",new d.Observable);h(this,"onPointerLeaveObserver",new d.Observable);h(this,"onDblclickObserver",new d.Observable);h(this,"onTripleClickObserver",new d.Observable);h(this,"onMouseWheelObserver",new d.Observable);h(this,"onKeyDownObservable",new d.Observable);h(this,"onKeyUpObservable",new d.Observable);h(this,"debounceParentTimeout",-1);h(this,"_sceneKey","");h(this,"_width",100);h(this,"_height",100);h(this,"_scaleX",1);h(this,"_scaleY",1);h(this,"_transform",new o1);h(this,"_evented",!0);this._sceneKey=t}get classType(){return N.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(t){this._transform=t}set width(t){this._width=t}set height(t){this._height=t}set scaleX(t){this._scaleX=t}set scaleY(t){this._scaleY=t}enableEvent(){this._evented=!0}disableEvent(){this._evented=!1}on(t,e){return this[`on${t}Observer`].add(e.bind(this))}off(t,e){this[`on${t}Observer`].remove(e)}remove(t){this[`on${t}Observer`].clear()}triggerKeyDown(t){this.onKeyDownObservable.notifyObservers(t)}triggerKeyUp(t){this.onKeyUpObservable.notifyObservers(t)}triggerPointerUp(t){}triggerMouseWheel(t){}triggerPointerMove(t){}triggerDblclick(t){}triggerTripleClick(t){}triggerPointerDown(t){}triggerPointerOut(t){}triggerPointerLeave(t){}triggerPointerOver(t){}triggerPointerEnter(t){}renderObjects(t,e){}render(t){}getParent(){}dispose(){super.dispose()}getObject(t){}addObject(t,e=1){}addObjects(t,e=1){}getEngine(){}setObjectBehavior(t){}applyTransformer(t){}makeDirtyNoParent(t=!0){return this}makeDirty(t=!0){return this}pick(t){}getViewports(){return[]}addViewport(...t){}removeViewport(t){}getAncestorScale(){return{scaleX:1,scaleY:1}}getPrecisionScale(){return{scaleX:1,scaleY:1}}}class $t extends Xd{constructor(t,e,s){var i;super(t);h(this,"_layers",[]);h(this,"_viewports",[]);h(this,"_cursor",r1.DEFAULT);h(this,"_defaultCursor",r1.DEFAULT);h(this,"_addObject$",new s1.BehaviorSubject(this));h(this,"addObject$",this._addObject$.asObservable());h(this,"_transformer");h(this,"_transformerOpenState",!1);h(this,"_inputManager");if(this._parent=e,s&&this.transformByState(s),this._parent.classType===N.ENGINE){const o=this._parent;o.addScene(this),o.hasActiveScene()||o.setActiveScene(t),this._inputManager=new B6(this)}else this._parent.classType===N.SCENE_VIEWER&&this._parent.addSubScene(this);this.disposeWithMe(d.toDisposable((i=this._parent)==null?void 0:i.onTransformChangeObservable.add(o=>{this._setTransForm()})))}get ancestorScaleX(){const t=this.getParent();let e=1;return t.classType===N.SCENE_VIEWER&&(e=t.ancestorScaleX),this.scaleX*e}get ancestorScaleY(){const t=this.getParent();let e=1;return t.classType===N.SCENE_VIEWER&&(e=t.ancestorScaleY),this.scaleY*e}set cursor(t){this.setCursor(t)}attachControl(t=!0,e=!0,s=!0,i=!0){var o;if(this._parent.classType===N.ENGINE)return(o=this._inputManager)==null||o.attachControl(t,e,s,i),this}detachControl(){var t;return(t=this._inputManager)==null||t.detachControl(),this}makeDirty(t=!0){var e;return this._layers.forEach(s=>{s.makeDirty(t)}),this._parent.classType===N.SCENE_VIEWER&&((e=this._parent)==null||e.makeDirty(t)),this}makeDirtyNoParent(t=!0){return this._viewports.forEach(e=>{e.makeDirty(t)}),this}enableLayerCache(...t){t.forEach(e=>{this.getLayer(e).enableCache()})}disableLayerCache(...t){t.forEach(e=>{this.getLayer(e).disableCache()})}isDirty(){for(let t=0;t<this._layers.length;t++)if(this._layers[t].isDirty()===!0)return!0;return!1}getCursor(){return this._cursor}resetCursor(){this.setCursor(this._defaultCursor)}setCursor(t){this._cursor=t;const e=this.getEngine();e&&e.setCanvasCursor(t)}setDefaultCursor(t){this._defaultCursor=t,this.resetCursor()}resize(t,e){const s=this.width;t!==void 0&&(this.width=t);const i=this.height;return e!==void 0&&(this.height=e),this._setTransForm(),this.onTransformChangeObservable.notifyObservers({type:i1.resize,value:{width:this.width,height:this.height},preValue:{width:s,height:i}}),this}scale(t,e){const s=this.scaleX;t!==void 0&&(this.scaleX=t);const i=this.scaleY;return e!==void 0&&(this.scaleY=e),this._setTransForm(),this.onTransformChangeObservable.notifyObservers({type:i1.scale,value:{scaleX:this.scaleX,scaleY:this.scaleY},preValue:{scaleX:s,scaleY:i}}),this}scaleBy(t,e){const s=this.scaleX;t!==void 0&&(this.scaleX+=t);const i=this.scaleY;return e!==void 0&&(this.scaleY+=e),this.scaleX=Y2(this.scaleX,1),this.scaleY=Y2(this.scaleY,1),this._setTransForm(),this.onTransformChangeObservable.notifyObservers({type:i1.scale,value:{scaleX:this.scaleX,scaleY:this.scaleY},preValue:{scaleX:s,scaleY:i}}),this}transformByState(t){const e=Object.keys(t),s={};e.length!==0&&(e.forEach(i=>{t[i]!==void 0&&(s[i]=this[i],this[i]=t[i])}),this._setTransForm(),this.onTransformChangeObservable.notifyObservers({type:i1.all,value:t,preValue:s}))}getParent(){return this._parent}getEngine(){if(this._parent.classType===N.ENGINE)return this._parent;let t=this._parent;for(;t;){if(t.classType===N.ENGINE)return t;t=t==null?void 0:t.getParent()}return null}getLayers(){return this._layers}getLayer(t=1){for(const e of this._layers)if(e.zIndex===t)return e;return this._createDefaultLayer(t)}getLayerMaxZIndex(){let t=Number.MIN_VALUE;for(let e=0;e<this._layers.length;e++){const s=this._layers[e];s.zIndex>=t&&(t=s.zIndex)}return t}addLayer(...t){this._layers.push(...t)}addObject(t,e=1){var s;return(s=this.getLayer(e))==null||s.addObject(t),this._addObject$.next(this),this}setObjectBehavior(t){t.parent||(t.parent=this),t.onIsAddedToParentObserver.notifyObservers(this)}addObjects(t,e=1){var s;return(s=this.getLayer(e))==null||s.addObjects(t),this._addObject$.next(this),this}removeObject(t){if(t==null)return;const e=this.getLayers();for(const s of e)s.removeObject(t);return this}removeObjects(t){if(t==null)return;const e=this.getLayers();for(const s of e)s.removeObjects(t);return this}getAllObjects(){const t=[];this._layers.sort(d.sortRules);for(const e of this._layers)t.push(...e.getObjectsByOrder());return t}getAllObjectsByOrder(t=!1){const e=[],s=t?d.sortRulesByDesc:d.sortRules;this._layers.sort(s);for(const i of this._layers)e.push(...i.getObjectsByOrder().sort(s));return e}getAllObjectsByOrderForPick(t=!1){const e=[],s=t?d.sortRulesByDesc:d.sortRules;this._layers.sort(s);for(const i of this._layers)e.push(...i.getObjectsByOrderForPick().sort(s));return e}getObject(t){for(const e of this._layers){const s=e.getObjectsByOrder();for(const i of s)if(i.oKey===t)return i}}fuzzyMathObjects(t){const e=[];for(const s of this._layers){const i=s.getObjectsByOrder();for(const o of i)o.oKey.indexOf(t)>-1&&i.push(o)}return e}addViewport(...t){return this._viewports.push(...t),this}removeViewport(t){for(let e=0,s=this._viewports.length;e<s;e++){const i=this._viewports[e];if(i.viewPortKey===t)return this._viewports.splice(e,1),i}}getViewports(){return this._viewports}getViewport(t){for(const e of this._viewports)if(e.viewPortKey===t)return e}changeObjectOrder(){}render(t){var s;if(!this.isDirty())return;!t&&((s=this.getEngine())==null||s.clearCanvas());const e=this._layers.sort(d.sortRules);for(let i=0,o=e.length;i<o;i++)e[i].render(t,i===o-1)}async requestRender(t){return new Promise((e,s)=>{this.render(t),b2(e)})}openTransformer(t){this._transformer||(this._transformer=new Hd(this,t)),this._transformerOpenState=!0}closeTransformer(t=!1){t&&(this._transformer=null),this._transformerOpenState=!1}applyTransformer(t){var e;this._transformerOpenState&&((e=this._transformer)==null||e.attachTo(t))}getTransformer(){return this._transformer}getActiveViewportByRelativeCoord(t){return this._viewports.find(e=>e.isHit(t))}getActiveViewportByCoord(t){return t=this.getRelativeCoord(t),this.getActiveViewportByRelativeCoord(t)}getScrollXYByRelativeCoords(t,e){return e||(e=this.getActiveViewportByRelativeCoord(t)),e?this.getScrollXY(e):{x:0,y:0}}getScrollXY(t){let e=0,s=0;if(t){const i=t.actualScrollX||0,o=t.actualScrollY||0;e+=i,s+=o}return{x:e,y:s}}getRelativeCoord(t){let e=this.getParent();const s=[];for(;e;)(e.classType===N.SCENE||e.classType===N.SCENE_VIEWER)&&s.push(e),e=(e==null?void 0:e.getParent)&&(e==null?void 0:e.getParent());s.reverse();for(const i of s)if(i.classType===N.SCENE){const a=i.getActiveViewportByCoord(t);if(a){const c=a.actualScrollX||0,u=a.actualScrollY||0;t=t.addByPoint(c,u)}}else i.classType===N.SCENE_VIEWER&&(t=i.transform.clone().invert().applyPoint(t));return t}clearLayer(){this._layers=[]}clearViewports(){this._viewports=[]}getAncestorScale(){let{scaleX:t=1,scaleY:e=1}=this;return this.classType===N.SCENE_VIEWER&&(t=this.ancestorScaleX||1,e=this.ancestorScaleY||1),{scaleX:t,scaleY:e}}getPrecisionScale(){var i;const t=((i=this.getEngine())==null?void 0:i.getPixelRatio())||1,{scaleX:e,scaleY:s}=this.getAncestorScale();return{scaleX:e*t,scaleY:s*t}}dispose(){var t,e;this.getLayers().forEach(s=>{s.dispose()}),this.getViewports().forEach(s=>{s.dispose()}),this.clearLayer(),this.clearViewports(),this.detachControl(),(t=this.onTransformChangeObservable)==null||t.clear(),(e=this._transformer)==null||e.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(t){let e=this.getActiveViewportByCoord(t);if(e||(e=this._viewports[0]),!this.evented||!e)return;const s=e.pickScrollBar(t);if(s)return s;const i=e.getRelativeVector(t);let o=null;const a=this.getAllObjectsByOrderForPick().reverse(),c=a.length;for(let u=0;u<c;u++){const l=a[u];if(!l.visible||!l.evented||l.classType===N.GROUP)continue;let D=i;if(l.isInGroup&&l.parent.classType===N.GROUP){const{cumLeft:f,cumTop:p}=this._getGroupCumLeftRight(l);D=D.clone().add(I.FromArray([-f,-p]))}if(l.isHit(D)){if(l.classType===N.SCENE_VIEWER){const f=l.pick(D);f?o=f:o=l.getActiveSubScene()}else o=l;break}else if(l.classType===N.SCENE_VIEWER&&l.allowSelectedClipElement()){const f=l.pick(D);if(f){o=f;break}}}return!o&&this._parent.classType===N.ENGINE?this:o}triggerKeyDown(t){this.onKeyDownObservable.notifyObservers(t)}triggerKeyUp(t){this.onKeyUpObservable.notifyObservers(t)}triggerPointerUp(t){var e,s;return!((e=this.onPointerUpObserver.notifyObservers(t))!=null&&e.stopPropagation)&&this._parent.classType===N.SCENE_VIEWER?((s=this._parent)==null||s.triggerPointerUp(t),!1):!0}triggerMouseWheel(t){var e,s;return!((e=this.onMouseWheelObserver.notifyObservers(t))!=null&&e.stopPropagation)&&this._parent.classType===N.SCENE_VIEWER?((s=this._parent)==null||s.triggerMouseWheel(t),!1):!0}triggerPointerMove(t){var e,s;return!((e=this.onPointerMoveObserver.notifyObservers(t))!=null&&e.stopPropagation)&&this._parent.classType===N.SCENE_VIEWER?((s=this._parent)==null||s.triggerPointerMove(t),!1):!0}triggerDblclick(t){var e,s;return!((e=this.onDblclickObserver.notifyObservers(t))!=null&&e.stopPropagation)&&this._parent.classType===N.SCENE_VIEWER?((s=this._parent)==null||s.triggerDblclick(t),!1):!0}triggerTripleClick(t){var e,s;return!((e=this.onTripleClickObserver.notifyObservers(t))!=null&&e.stopPropagation)&&this._parent.classType===N.SCENE_VIEWER?((s=this._parent)==null||s.triggerTripleClick(t),!1):!0}triggerPointerDown(t){var e,s;return!((e=this.onPointerDownObserver.notifyObservers(t))!=null&&e.stopPropagation)&&this._parent.classType===N.SCENE_VIEWER?((s=this._parent)==null||s.triggerPointerDown(t),!1):!0}triggerPointerOut(t){var e;return this._parent.classType===N.SCENE_VIEWER?((e=this._parent)==null||e.triggerPointerOut(t),!1):!0}triggerPointerLeave(t){var e,s;return!((e=this.onPointerLeaveObserver.notifyObservers(t))!=null&&e.stopPropagation)&&this._parent.classType===N.SCENE_VIEWER?((s=this._parent)==null||s.triggerPointerLeave(t),!1):!0}triggerPointerOver(t){var e;return this._parent.classType===N.SCENE_VIEWER?((e=this._parent)==null||e.triggerPointerOver(t),!1):!0}triggerPointerEnter(t){var e,s;return!((e=this.onPointerEnterObserver.notifyObservers(t))!=null&&e.stopPropagation)&&this._parent.classType===N.SCENE_VIEWER?((s=this._parent)==null||s.triggerPointerEnter(t),!1):!0}_createDefaultLayer(t=1){const e=new Lt(this,[],t);return this.addLayer(e),e}_setTransForm(){const t=o1.create().composeMatrix({scaleX:this.scaleX,scaleY:this.scaleY});this.transform=t,this.getViewports().forEach(e=>{e.resetSizeAndScrollBar()}),this.makeDirty(!0)}_getGroupCumLeftRight(t){let e=t.parent,s=0,i=0;for(;e.classType===N.GROUP;){const{left:o,top:a}=e;s+=o,i+=a,e=e.parent}return{cumLeft:s,cumTop:i}}}const Yd={width:1500,height:1e3},zd="_UNIVER_SCENE_";class Nt{constructor(){h(this,"_defaultEngine");h(this,"_currentUnitId","");h(this,"_renderMap",new Map);h(this,"_currentRender$",new s1.BehaviorSubject(this._currentUnitId));h(this,"currentRender$",this._currentRender$.asObservable());h(this,"_createRender$",new s1.BehaviorSubject(this._currentUnitId));h(this,"createRender$",this._createRender$.asObservable())}get defaultEngine(){return this._defaultEngine||(this._defaultEngine=new K2),this._defaultEngine}dispose(){this._renderMap.forEach(n=>{this._disposeItem(n)}),this._renderMap.clear(),this._currentRender$.complete()}createRenderWithParent(n,t){const e=this.getRenderById(t);if(e==null)throw new Error("parent render is null");const{scene:s,engine:i}=e,o=this._createRender(n,i,!1),a=o.scene,c=new u7(n);return c.addSubScene(a),s.addObject(c),o}create(n){this._createRender$.next(n)}createRender(n){const t=new K2;return this._createRender(n,t)}_createRender(n,t,e=!0){const s=this.getRenderById(n);let i=!0;s!=null&&s.engine===t&&(i=!1),this._disposeItem(s,i);const{width:o,height:a}=Yd,c=new $t(zd+n,t,{width:o,height:a}),u={unitId:n,engine:t,scene:c,mainComponent:null,components:new Map,isMainScene:e};return this.addItem(n,u),u}addItem(n,t){this._renderMap.set(n,t)}removeItem(n){const t=this._renderMap.get(n);t!=null&&this._disposeItem(t),this._renderMap.delete(n)}has(n){return this._renderMap.has(n)}setCurrent(n){this._currentUnitId=n,this._currentRender$.next(n)}getCurrent(){return this._renderMap.get(this._currentUnitId)}getFirst(){return[...this.getRenderAll().values()][0]}getRenderById(n){return this._renderMap.get(n)}getRenderAll(){return this._renderMap}_disposeItem(n,t=!0){if(n==null)return;const{engine:e,scene:s,components:i,mainComponent:o}=n;i==null||i.forEach(a=>{a.dispose()}),o==null||o.dispose(),s.dispose(),t&&e.dispose()}}const kt=e2.createIdentifier("univer.render-manager-service");var Wd=Object.defineProperty,jd=Object.getOwnPropertyDescriptor,Gd=(r,n,t,e)=>{for(var s=e>1?void 0:e?jd(n,t):n,i=r.length-1,o;i>=0;i--)(o=r[i])&&(s=(e?o(n,t,s):o(s))||s);return e&&s&&Wd(n,t,s),s},Ud=(r,n)=>(t,e)=>n(t,e,r);const Ht=e2.createIdentifier("univer.render-engine"),Vd="render-engine";var g6;exports.UniverRenderEnginePlugin=(g6=class extends d.Plugin{constructor(n,t){super(Vd),this._injector=t,this._injector.add([Ht,{useFactory:()=>new K2}]),this._injector.add([kt,{useClass:Nt}])}},h(g6,"type",d.PluginType.Univer),g6);exports.UniverRenderEnginePlugin=Gd([Ud(1,e2.Inject(e2.Injector))],exports.UniverRenderEnginePlugin);const Xt=["radius"];class c7 extends c2{constructor(t,e){super(t,e);h(this,"_radius");this._radius=(e==null?void 0:e.radius)||10,this._setFixBoundingBox(),this.onTransformChangeObservable.add(s=>{const{type:i,value:o,preValue:a}=s;if(i===i1.resize||i===i1.all){const c=Math.min(this.width,this.height);this._radius=c/2,this.width=c,this.height=c,this._setTransForm()}})}get radius(){return this._radius}static drawWith(t,e){let{radius:s}=e;s=s!=null?s:10,t.beginPath(),e.strokeDashArray&&t.setLineDash(e.strokeDashArray),t.beginPath(),t.arc(s,s,s||0,0,Math.PI*2,!1),t.closePath(),this._renderPaintInOrder(t,e)}toJson(){const t={};return Xt.forEach(e=>{this[e]&&(t[e]=this[e])}),{...super.toJson(),...t}}_draw(t){c7.drawWith(t,this)}_setFixBoundingBox(){this.transformByState({width:this._radius*2,height:this._radius*2})}}class Kd{}class Jd{}class J2 extends c2{constructor(t,e){super(t,e);h(this,"_props");h(this,"_native");this._props={autoWidth:!1,autoHeight:!1,...e},e.image?(this._native=e.image,this._init()):e.url&&(this._native=document.createElement("img"),this._native.src=e.url,this._native.onload=()=>{var s;(s=e.success)==null||s.call(e),this._init(),this.makeDirty(!0)},this._native.onerror=()=>{e.fail?e.fail():(this._native.src="data:image/svg+xml;base64,PHN2ZyBjbGFzcz0iaWNvbiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB3aWR0aD0iMjAwIiBoZWlnaHQ9IjIwMCI+PHBhdGggZD0iTTMwNC4xMjggNDU2LjE5MmM0OC42NCAwIDg4LjA2NC0zOS40MjQgODguMDY0LTg4LjA2NHMtMzkuNDI0LTg4LjA2NC04OC4wNjQtODguMDY0LTg4LjA2NCAzOS40MjQtODguMDY0IDg4LjA2NCAzOS40MjQgODguMDY0IDg4LjA2NCA4OC4wNjR6bTAtMTE2LjIyNGMxNS4zNiAwIDI4LjE2IDEyLjI4OCAyOC4xNiAyOC4xNnMtMTIuMjg4IDI4LjE2LTI4LjE2IDI4LjE2LTI4LjE2LTEyLjI4OC0yOC4xNi0yOC4xNiAxMi4yODgtMjguMTYgMjguMTYtMjguMTZ6IiBmaWxsPSIjZTZlNmU2Ii8+PHBhdGggZD0iTTg4Ny4yOTYgMTU5Ljc0NEgxMzYuNzA0Qzk2Ljc2OCAxNTkuNzQ0IDY0IDE5MiA2NCAyMzIuNDQ4djU1OS4xMDRjMCAzOS45MzYgMzIuMjU2IDcyLjcwNCA3Mi43MDQgNzIuNzA0aDE5OC4xNDRMNTAwLjIyNCA2ODguNjRsLTM2LjM1Mi0yMjIuNzIgMTYyLjMwNC0xMzAuNTYtNjEuNDQgMTQzLjg3MiA5Mi42NzIgMjE0LjAxNi0xMDUuNDcyIDE3MS4wMDhoMzM1LjM2QzkyNy4yMzIgODY0LjI1NiA5NjAgODMyIDk2MCA3OTEuNTUyVjIzMi40NDhjMC0zOS45MzYtMzIuMjU2LTcyLjcwNC03Mi43MDQtNzIuNzA0em0tMTM4Ljc1MiA3MS42OHYuNTEySDg1Ny42YzE2LjM4NCAwIDMwLjIwOCAxMy4zMTIgMzAuMjA4IDMwLjIwOHYzOTkuODcyTDY3My4yOCA0MDguMDY0bDc1LjI2NC0xNzYuNjR6TTMwNC42NCA3OTIuMDY0SDE2NS44ODhjLTE2LjM4NCAwLTMwLjIwOC0xMy4zMTItMzAuMjA4LTMwLjIwOHYtOS43MjhsMTM4Ljc1Mi0xNjQuMzUyIDEwNC45NiAxMjQuNDE2LTc0Ljc1MiA3OS44NzJ6bTgxLjkyLTM1NS44NGwzNy4zNzYgMjI4Ljg2NC0uNTEyLjUxMi0xNDIuODQ4LTE2OS45ODRjLTMuMDcyLTMuNTg0LTkuMjE2LTMuNTg0LTEyLjI4OCAwTDEzNS42OCA2NTIuOFYyNjIuMTQ0YzAtMTYuMzg0IDEzLjMxMi0zMC4yMDggMzAuMjA4LTMwLjIwOGg0NzQuNjI0TDM4Ni41NiA0MzYuMjI0em01MDEuMjQ4IDMyNS42MzJjMCAxNi44OTYtMTMuMzEyIDMwLjIwOC0yOS42OTYgMzAuMjA4SDY4MC45Nmw1Ny4zNDQtOTMuMTg0LTg3LjU1Mi0yMDIuMjQgNy4xNjgtNy42OCAyMjkuODg4IDI3Mi44OTZ6IiBmaWxsPSIjZTZlNmU2Ii8+PC9zdmc+",this._init(),this.makeDirty(!0))})}static drawWith(t,e){var s;if((s=e._native)!=null&&s.complete){const{width:i,height:o}=e;try{t.drawImage(e._native,0,0,i,o)}catch(a){console.error(a)}}}static create(t,e,s){return new J2(t,{url:e,success:s})}getPictureProps(){return this._props}_draw(t){J2.drawWith(t,this)}_init(){var t,e;this._props.autoWidth&&this.resize(((t=this._native)==null?void 0:t.width)||0),this._props.autoHeight&&this.resize(void 0,((e=this._native)==null?void 0:e.height)||0)}}const O6=["text","richText"];class Zd extends I1{constructor(t,e,s){super(e);h(this,"_documentData");h(this,"_documentSkeleton");h(this,"_documents");h(this,"_ff");h(this,"_fs",12);h(this,"_it",d.BooleanNumber.FALSE);h(this,"_bl",d.BooleanNumber.FALSE);h(this,"_ul",{s:d.BooleanNumber.FALSE});h(this,"_st",{s:d.BooleanNumber.FALSE});h(this,"_ol",{s:d.BooleanNumber.FALSE});h(this,"_bg");h(this,"_bd");h(this,"_cl");this._localeService=t,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 d.DocumentDataModel(this._documentData),o=new M1(i);this._documentSkeleton=i2.create(o,this._localeService),this._documents=new x2(`${this.oKey}_DOCUMENTS`,this._documentSkeleton,{pageMarginLeft:0,pageMarginTop:0}),this._initialProps(s),this.onTransformChangeObservable.add(a=>{const{type:c}=a;if(c===i1.resize||c===i1.all){i.updateDocumentDataPageSize(this.width),this._documentSkeleton.makeDirty(!0),this._documentSkeleton.calculate();const u=this.getDocsSkeletonPageSize();this.height=(u==null?void 0:u.height)||this.height,this._setTransForm()}})}get documentData(){return this._documentData}getDocsSkeletonPageSize(){var a;const t=(a=this._documentSkeleton)==null?void 0:a.getSkeletonData();if(!t)return;const{pages:e}=t,s=e[e.length-1],{width:i,height:o}=s;return{width:i,height:o}}setProps(t){if(!t)return;const e=Object.keys(t);if(e.length!==0)return e.forEach(s=>{if(t[s]===void 0)return!0;O6.indexOf(s)===-1&&(this[`_${s}`]=t[s])}),this.makeDirty(!0),this}render(t,e){if(!this.visible)return this.makeDirty(!1),this;if(this.isRender()){const{top:i,left:o,bottom:a,right:c}=e.viewBound;if(this.width+this.strokeWidth<o||c<0||this.height+this.strokeWidth<i||a<0)return this}const s=this.transform.getMatrix();return t.save(),t.transform(s[0],s[1],s[2],s[3],s[4],s[5]),this._draw(t),t.restore(),this.makeDirty(!1),this}toJson(){const t={};return O6.forEach(e=>{this[e]&&(t[e]=this[e])}),{...super.toJson(),...t}}_draw(t){this._documents.render(t)}_convertToDocumentData(t){const e=t.length;return{id:"d",body:{dataStream:`${t}${d.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:e-1}]},documentStyle:{pageSize:{width:Number.POSITIVE_INFINITY,height:Number.POSITIVE_INFINITY}}}}_initialProps(t){this._documentSkeleton.getViewModel().getDataModel().updateDocumentDataPageSize(t==null?void 0:t.width,t==null?void 0:t.height),this._documentSkeleton.calculate();const e=this.getDocsSkeletonPageSize();this.transformByState({width:(e==null?void 0:e.width)||0,height:(e==null?void 0:e.height)||0,left:(t==null?void 0:t.left)||0,top:(t==null?void 0:t.top)||0,angle:t==null?void 0:t.angle}),this.setProps(t),this.makeDirty(!0)}}class qd extends d.Disposable{constructor(){super(...arguments);h(this,"enableHorizontal",!0);h(this,"enableVertical",!0);h(this,"horizontalThumbWidth",0);h(this,"horizontalMinusMiniThumb",0);h(this,"horizontalBarWidth",0);h(this,"verticalThumbHeight",0);h(this,"verticalBarHeight",0);h(this,"verticalMinusMiniThumb",0);h(this,"horizonBarRect");h(this,"horizonThumbRect");h(this,"verticalBarRect");h(this,"verticalThumbRect");h(this,"placeholderBarRect")}get limitX(){var t;return(t=this.horizonThumbRect)!=null&&t.visible?this.horizontalBarWidth-this.horizontalThumbWidth:0}get limitY(){var t;return(t=this.verticalThumbRect)!=null&&t.visible?this.verticalBarHeight-this.verticalThumbHeight:0}get ratioScrollX(){return this.enableHorizontal===!1||this.horizontalThumbWidth===void 0||this.horizontalBarWidth===void 0?1:(this.horizontalThumbWidth-this.horizontalMinusMiniThumb)*this.miniThumbRatioX/this.horizontalBarWidth}get ratioScrollY(){return this.enableVertical===!1||this.verticalThumbHeight===void 0||this.verticalBarHeight===void 0?1:(this.verticalThumbHeight-this.verticalMinusMiniThumb)*this.miniThumbRatioY/this.verticalBarHeight}get miniThumbRatioX(){const t=this.horizontalBarWidth-this.horizontalThumbWidth;if(t===0)return 0;const e=this.horizontalBarWidth-(this.horizontalThumbWidth-this.horizontalMinusMiniThumb);return e===0?0:t/e}get miniThumbRatioY(){const t=this.verticalBarHeight-this.verticalThumbHeight;if(t===0)return 0;const e=this.verticalBarHeight-(this.verticalThumbHeight-this.verticalMinusMiniThumb);return e===0?0:t/e}pick(t){var e,s,i,o;return(e=this.horizonThumbRect)!=null&&e.isHit(t)?this.horizonThumbRect:(s=this.verticalThumbRect)!=null&&s.isHit(t)?this.verticalThumbRect:(i=this.horizonBarRect)!=null&&i.isHit(t)?this.horizonBarRect:(o=this.verticalBarRect)!=null&&o.isHit(t)?this.verticalBarRect:null}dispose(){var t,e,s,i,o;(t=this.horizonBarRect)==null||t.dispose(),(e=this.horizonThumbRect)==null||e.dispose(),(s=this.verticalBarRect)==null||s.dispose(),(i=this.verticalThumbRect)==null||i.dispose(),(o=this.placeholderBarRect)==null||o.dispose()}hasHorizonThumb(){var t;return((t=this.horizonThumbRect)==null?void 0:t.visible)||!1}hasVerticalThumb(){var t;return((t=this.verticalThumbRect)==null?void 0:t.visible)||!1}resize(t=0,e=0,s=0,i=0){}makeDirty(t){}render(t,e=0,s=0){}}const q1=17;class l7 extends qd{constructor(t,e){super();h(this,"_view");h(this,"_mainScene");h(this,"_lastX",-1);h(this,"_lastY",-1);h(this,"_isHorizonMove",!1);h(this,"_isVerticalMove",!1);h(this,"_horizonPointerMoveObserver");h(this,"_horizonPointerUpObserver");h(this,"_verticalPointerMoveObserver");h(this,"_verticalPointerUpObserver");h(this,"barSize",14);h(this,"barBorder",1);h(this,"thumbMargin",2);h(this,"thumbLengthRatio",1);h(this,"thumbBackgroundColor","#cccccc");h(this,"thumbHoverBackgroundColor","#b2b2b2");h(this,"thumbActiveBackgroundColor","#999999");h(this,"barBackgroundColor","rgba(255,255,255,0.5)");h(this,"barBorderColor","rgba(255,255,255,0.7)");t||console.warn("Missing viewport"),this.setProps(e),this._view=t,this._initialScrollRect(),this._view.setScrollBar(this)}static attachTo(t,e){return new l7(t,e)}dispose(){var t,e,s,i;super.dispose(),(t=this._mainScene)==null||t.onPointerMoveObserver.remove(this._horizonPointerMoveObserver),(e=this._mainScene)==null||e.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(t,e=0,s=0){const{scrollX:i,scrollY:o}=this._view;t.save();const c=new o1([1,0,0,1,e,s]).getMatrix();t.transform(c[0],c[1],c[2],c[3],c[4],c[5]),this.enableHorizontal&&(this.horizonBarRect.render(t),this.horizonThumbRect.translate(i).render(t)),this.enableVertical&&(this.verticalBarRect.render(t),this.verticalThumbRect.translate(void 0,o).render(t)),this.enableHorizontal&&this.enableVertical&&this.placeholderBarRect.render(t),t.restore()}resize(t=0,e=0,s=0,i=0){var o;t===0&&t===0||(this._resizeHorizontal(t,e,s),this._resizeVertical(t,e,i),this.enableHorizontal&&this.enableVertical&&((o=this.placeholderBarRect)==null||o.transformByState({left:t-this.barSize,top:e-this.barSize,width:this.barSize-this.barBorder,height:this.barSize-this.barBorder})))}makeDirty(t){var e,s,i,o,a;(e=this.horizonBarRect)==null||e.makeDirty(t),(s=this.horizonThumbRect)==null||s.makeDirty(t),(i=this.verticalBarRect)==null||i.makeDirty(t),(o=this.verticalThumbRect)==null||o.makeDirty(t),(a=this.placeholderBarRect)==null||a.makeDirty(t),this.makeViewDirty(t)}makeViewDirty(t){(this._mainScene||this._view.scene).makeDirty(t)}pick(t){var e,s,i,o;return(e=this.horizonThumbRect)!=null&&e.isHit(t)?this.horizonThumbRect:(s=this.verticalThumbRect)!=null&&s.isHit(t)?this.verticalThumbRect:(i=this.horizonBarRect)!=null&&i.isHit(t)?this.horizonBarRect:(o=this.verticalBarRect)!=null&&o.isHit(t)?this.verticalBarRect:null}setProps(t){if(!t)return;const e=Object.keys(t);e.length!==0&&e.forEach(s=>{t[s]!==void 0&&(this[`${s}`]=t[s])})}_resizeHorizontal(t,e,s){var i,o,a,c,u;this.enableHorizontal&&(this.horizontalMinusMiniThumb=0,this.horizontalBarWidth=t-(this.enableVertical?this.barSize:0)-this.barBorder,this.horizontalThumbWidth=this.horizontalBarWidth*(this.horizontalBarWidth-this.barBorder)/s*this.thumbLengthRatio,this.horizontalThumbWidth<q1&&(this.horizontalMinusMiniThumb=q1-this.horizontalThumbWidth,this.horizontalThumbWidth=q1),(i=this.horizonBarRect)==null||i.transformByState({left:0,top:e-this.barSize,width:this.horizontalBarWidth,height:this.barSize-this.barBorder}),this.horizontalThumbWidth>=t-this.barSize?(o=this.horizonThumbRect)==null||o.setProps({visible:!1}):((a=this.horizonThumbRect)!=null&&a.visible||(c=this.horizonThumbRect)==null||c.setProps({visible:!0}),(u=this.horizonThumbRect)==null||u.transformByState({left:this._view.scrollX,top:e-this.barSize+this.thumbMargin,width:this.horizontalThumbWidth,height:this.barSize-this.thumbMargin*2})))}_resizeVertical(t,e,s){var i,o,a,c,u;this.enableVertical&&(this.verticalMinusMiniThumb=0,this.verticalBarHeight=e-(this.enableHorizontal?this.barSize:0)-this.barBorder,this.verticalThumbHeight=this.verticalBarHeight*this.verticalBarHeight/s*this.thumbLengthRatio,this.verticalThumbHeight<q1&&(this.verticalMinusMiniThumb=q1-this.verticalThumbHeight,this.verticalThumbHeight=q1),(i=this.verticalBarRect)==null||i.transformByState({left:t-this.barSize,top:0,width:this.barSize-this.barBorder,height:this.verticalBarHeight}),this.verticalThumbHeight>=e-this.barSize?(o=this.verticalThumbRect)==null||o.setProps({visible:!1}):((a=this.verticalThumbRect)!=null&&a.visible||(c=this.verticalThumbRect)==null||c.setProps({visible:!0}),(u=this.verticalThumbRect)==null||u.transformByState({left:t-this.barSize+this.thumbMargin,top:this._view.scrollY,width:this.barSize-this.thumbMargin*2,height:this.verticalThumbHeight})))}_initialScrollRect(){this.enableHorizontal&&(this.horizonBarRect=new f1("__horizonBarRect__",{fill:this.barBackgroundColor,strokeWidth:this.barBorder,stroke:this.barBorderColor}),this.horizonThumbRect=new f1("__horizonThumbRect__",{radius:6,fill:this.thumbBackgroundColor})),this.enableVertical&&(this.verticalBarRect=new f1("__verticalBarRect__",{fill:this.barBackgroundColor,strokeWidth:this.barBorder,stroke:this.barBorderColor}),this.verticalThumbRect=new f1("__verticalThumbRect__",{radius:6,fill:this.thumbBackgroundColor})),this.enableHorizontal&&this.enableVertical&&(this.placeholderBarRect=new f1("__placeholderBarRect__",{fill:this.barBackgroundColor,strokeWidth:this.barBorder,stroke:this.barBorderColor})),this._initialVerticalEvent(),this._initialHorizontalEvent()}_initialVerticalEvent(){var e,s,i,o;if(!this.enableVertical)return;const t=this._mainScene||this._view.scene;(e=this.verticalThumbRect)==null||e.on(E1.PointerEnter,this._hoverFunc(this.thumbHoverBackgroundColor,this.verticalThumbRect)),(s=this.verticalThumbRect)==null||s.on(E1.PointerLeave,this._hoverFunc(this.thumbBackgroundColor,this.verticalThumbRect)),(i=this.verticalBarRect)==null||i.on(E1.PointerDown,(a,c)=>{const u=a;this._view.scrollTo({y:u.offsetY-this._view.top-this.verticalThumbHeight/2}),c.stopPropagation()}),(o=this.verticalThumbRect)==null||o.on(E1.PointerDown,(a,c)=>{const u=a,l=this.verticalThumbRect;this._isVerticalMove=!0,this._lastX=u.offsetX,this._lastY=u.offsetY,l==null||l.setProps({fill:this.thumbActiveBackgroundColor}),t.disableEvent(),this.makeViewDirty(!0),c.stopPropagation()}),this._verticalPointerMoveObserver=t.onPointerMoveObserver.add((a,c)=>{var l;const u=a;this._isVerticalMove&&(this._view.scrollByBar({y:u.offsetY-this._lastY}),this._lastY=u.offsetY,(l=t.getEngine())==null||l.setRemainCapture())}),this._verticalPointerUpObserver=t.onPointerUpObserver.add((a,c)=>{const u=this.verticalThumbRect;this._isVerticalMove=!1,t.enableEvent(),u==null||u.setProps({fill:this.thumbBackgroundColor}),this.makeViewDirty(!0)})}_hoverFunc(t,e){return(s,i)=>{if(this._isHorizonMove||this._isVerticalMove)return;e.setProps({fill:t}),this.makeViewDirty(!0)}}_initialHorizontalEvent(){var e,s,i,o;if(!this.enableHorizontal)return;const t=this._mainScene||this._view.scene;(e=this.horizonThumbRect)==null||e.on(E1.PointerEnter,this._hoverFunc(this.thumbHoverBackgroundColor,this.horizonThumbRect)),(s=this.horizonThumbRect)==null||s.on(E1.PointerLeave,this._hoverFunc(this.thumbBackgroundColor,this.horizonThumbRect)),(i=this.horizonBarRect)==null||i.on(E1.PointerDown,(a,c)=>{const u=a;this._view.scrollTo({x:u.offsetX-this._view.left-this.horizontalThumbWidth/2}),c.stopPropagation()}),(o=this.horizonThumbRect)==null||o.on(E1.PointerDown,(a,c)=>{var l;const u=a;this._isHorizonMove=!0,this._lastX=u.offsetX,this._lastY=u.offsetY,(l=this.horizonThumbRect)==null||l.setProps({fill:this.thumbActiveBackgroundColor}),this.makeViewDirty(!0),t.disableEvent(),c.stopPropagation()}),this._horizonPointerMoveObserver=t.onPointerMoveObserver.add((a,c)=>{var l;const u=a;this._isHorizonMove&&(this._view.scrollByBar({x:u.offsetX-this._lastX}),this._lastX=u.offsetX,(l=t.getEngine())==null||l.setRemainCapture())}),this._horizonPointerUpObserver=t.onPointerUpObserver.add((a,c)=>{const u=this.horizonThumbRect;this._isHorizonMove=!1,t.enableEvent(),u==null||u.setProps({fill:this.thumbBackgroundColor}),this.makeViewDirty(!0)})}}class Qd{}const tf=3;class ef{constructor(n,t,e){h(this,"scrollX",0);h(this,"scrollY",0);h(this,"actualScrollX",0);h(this,"actualScrollY",0);h(this,"onMouseWheelObserver",new d.Observable);h(this,"onScrollAfterObserver",new d.Observable);h(this,"onScrollBeforeObserver",new d.Observable);h(this,"onScrollStopObserver",new d.Observable);h(this,"onScrollByBarObserver",new d.Observable);h(this,"_viewPortKey","");h(this,"_dirty",!0);h(this,"_topOrigin",0);h(this,"_leftOrigin",0);h(this,"_bottomOrigin",0);h(this,"_rightOrigin",0);h(this,"_widthOrigin");h(this,"_heightOrigin");h(this,"_top",0);h(this,"_left",0);h(this,"_bottom",0);h(this,"_right",0);h(this,"_width");h(this,"_height");h(this,"_scene");h(this,"_scrollBar");h(this,"_isWheelPreventDefaultX",!1);h(this,"_isWheelPreventDefaultY",!1);h(this,"_scrollStopNum",0);h(this,"_preScrollX",0);h(this,"_preScrollY",0);h(this,"_renderClipState",!0);h(this,"_active",!0);h(this,"_paddingStartX",0);h(this,"_paddingEndX",0);h(this,"_paddingStartY",0);h(this,"_paddingEndY",0);h(this,"_isRelativeX",!1);h(this,"_isRelativeY",!1);h(this,"_preViewportBound");this._viewPortKey=n,this._scene=t,(e==null?void 0:e.active)!=null&&(this._active=e.active),this._scene.addViewport(this),this._setWithAndHeight(e),this._isWheelPreventDefaultX=(e==null?void 0:e.isWheelPreventDefaultX)||!1,this._isWheelPreventDefaultY=(e==null?void 0:e.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(n){this._width=n}set height(n){this._height=n}get isActive(){return this._active===!1||(this.height||0)<=0||(this.width||0)<=0?!1:this._active}set top(n){var t,e;this._topOrigin=n,this._top=w1(n,(e=(t=this._scene)==null?void 0:t.getParent())==null?void 0:e.height)}set left(n){var t;this._leftOrigin=n,this._left=w1(n,(t=this.scene.getParent())==null?void 0:t.width)}set bottom(n){var t;this._bottomOrigin=n,this._bottom=w1(n,(t=this.scene.getParent())==null?void 0:t.height)}set right(n){var t;this._rightOrigin=n,this._right=w1(n,(t=this.scene.getParent())==null?void 0:t.width)}enable(){this._active=!0}disable(){this._active=!1}resetSizeAndScrollBar(){this._resizeCacheCanvasAndScrollBar()}setScrollBar(n){this._scrollBar=n,this._resizeCacheCanvasAndScrollBar()}removeScrollBar(){this._scrollBar=null}resize(n){Object.keys(n).length!==0&&(this._setWithAndHeight(n),this._resizeCacheCanvasAndScrollBar())}setPadding(n){const{startX:t=0,startY:e=0,endX:s=0,endY:i=0}=n;this._paddingStartX=t,this._paddingEndX=s,this._paddingStartY=e,this._paddingEndY=i,this._resizeCacheCanvasAndScrollBar()}resetPadding(){this.setPadding({startX:0,endX:0,startY:0,endY:0})}makeDirty(n=!0,t=!1){if(this._dirty=n,t){const e=this.scene.getParent();e.classType===N.SCENE_VIEWER&&e.makeDirty(!0)}}isDirty(){return this._dirty}scrollTo(n,t=!0){return this._scroll(0,n,t)}scrollBy(n,t=!0){return this._scroll(1,n,t)}scrollByBar(n,t=!0){var i,o;this._scroll(1,n,t);const{x:e,y:s}=n;this.onScrollByBarObserver.notifyObservers({viewport:this,scrollX:this.scrollX,scrollY:this.scrollY,x:e,y:s,actualScrollX:this.actualScrollX,actualScrollY:this.actualScrollY,limitX:(i=this._scrollBar)==null?void 0:i.limitX,limitY:(o=this._scrollBar)==null?void 0:o.limitY,isTrigger:t})}scrollByOffset(n=0,t=0,e=!0){if(!this._scrollBar||this.isActive===!1)return;const s=n+this._paddingStartX,i=t+this._paddingStartY,o=this.getBarScroll(s,i);return this.scrollBy(o,e)}getBarScroll(n,t){let e=n-this._paddingStartX,s=t-this._paddingStartY;if(this._scrollBar){e*=this._scrollBar.ratioScrollX,s*=this._scrollBar.ratioScrollY;const{scaleX:i,scaleY:o}=this.scene;e*=i,s*=o}else this.scrollX!==void 0&&(e=this.scrollX),this.scrollY!==void 0&&(s=this.scrollY);return{x:e,y:s}}getActualScroll(n,t){let e=n,s=t;if(this._scrollBar){const{scaleX:a,scaleY:c}=this.scene;this._scrollBar.ratioScrollX!==0?(e/=this._scrollBar.ratioScrollX,e/=a):this.actualScrollX!==void 0&&(e=this.actualScrollX),this._scrollBar.ratioScrollY!==0?(s/=this._scrollBar.ratioScrollY,s/=c):this.actualScrollY!==void 0&&(s=this.actualScrollY)}else this.actualScrollX!==void 0&&(e=this.actualScrollX),this.actualScrollY!==void 0&&(s=this.actualScrollY);const{scaleX:i,scaleY:o}=this._scene.getPrecisionScale();return{x:H(e+this._paddingStartX,i),y:H(s+this._paddingStartY,o)}}getTransformedScroll(){const n=this.scrollX,t=this.scrollY;return this.getActualScroll(n,t)}getScrollBar(){return this._scrollBar}updateScroll(n){this._preScrollX=this.scrollX,this._preScrollY=this.scrollY;const{scrollX:t,scrollY:e,actualScrollX:s,actualScrollY:i}=n;return t!==void 0&&(this.scrollX=t),e!==void 0&&(this.scrollY=e),s!==void 0&&(this.actualScrollX=s),i!==void 0&&(this.actualScrollY=i),this}getScrollBarTransForm(){const n=o1.create();return n.multiply(o1.create([1,0,0,1,this._left,this._top])),n}render(n,t=[],e=!1){var l;if(this.isActive===!1||this.width==null||this.height==null||this.width<=1||this.height<=1)return;const s=n||((l=this._scene.getEngine())==null?void 0:l.getCanvas().getContext()),i=this._scene.transform.clone();i.multiply(o1.create([1,0,0,1,-this.actualScrollX||0,-this.actualScrollY||0]));const o=s,a=i.getMatrix(),c=this.getScrollBarTransForm().getMatrix();if(o.save(),this._renderClipState){o.beginPath();const{scaleX:D,scaleY:f}=this._getBoundScale(a[0],a[3]);o.rect(this.left,this.top,(this.width||0)*D,(this.height||0)*f),o.clip()}o.transform(a[0],a[1],a[2],a[3],a[4],a[5]);const u=this._calViewportRelativeBounding();t.forEach(D=>{D.render(o,u)}),o.restore(),this._scrollBar&&e&&(o.save(),o.transform(c[0],c[1],c[2],c[3],c[4],c[5]),this._drawScrollbar(o),o.restore()),this.makeDirty(!1),this._scrollRendered(),this._preViewportBound=u}getBounding(){return this._calViewportRelativeBounding()}getRelativeVector(n){const t=this.scene.transform.clone().invert(),e=this.getTransformedScroll();return t.applyPoint(n).add(I.FromArray([e.x,e.y]))}getAbsoluteVector(n){const t=this.scene.transform.clone(),e=this.getTransformedScroll();return t.applyPoint(n.subtract(I.FromArray([e.x,e.y])))}onMouseWheel(n,t){if(!this._scrollBar||this.isActive===!1)return;let e;if(n.inputIndex===M.MouseWheelX){const s=Math.abs(n.deltaX),i=this._scene.width,a=(this.width||1)/i*s;n.deltaX>0?e=this.scrollBy({x:a}):e=this.scrollBy({x:-a}),this._scene.getParent().classType===N.SCENE_VIEWER?e!=null&&e.isLimitedX||t.stopPropagation():this._isWheelPreventDefaultX?n.preventDefault():e!=null&&e.isLimitedX||n.preventDefault()}if(n.inputIndex===M.MouseWheelY){const s=Math.abs(n.deltaY),i=this._scene.height;let a=(this.height||1)/i*s;n.shiftKey?(a*=tf,n.deltaY>0?e=this.scrollBy({x:a}):e=this.scrollBy({x:-a}),this._scene.getParent().classType===N.SCENE_VIEWER?e!=null&&e.isLimitedX||t.stopPropagation():this._isWheelPreventDefaultX?n.preventDefault():e!=null&&e.isLimitedX||n.preventDefault()):(n.deltaY>0?e=this.scrollBy({y:a}):e=this.scrollBy({y:-a}),this._scene.getParent().classType===N.SCENE_VIEWER?e!=null&&e.isLimitedY||t.stopPropagation():this._isWheelPreventDefaultY?n.preventDefault():e!=null&&e.isLimitedY||n.preventDefault())}n.inputIndex,M.MouseWheelZ,this._scene.makeDirty(!0)}isHit(n){if(this.isActive===!1)return;const{width:t,height:e}=this._getViewPortSize();return n.x>=this.left&&n.x<=this.left+(t||0)&&n.y>=this.top&&n.y<=this.top+(e||0)}pickScrollBar(n){if(!this._scrollBar)return;const e=this.getScrollBarTransForm().invert().applyPoint(n);return this._scrollBar.pick(e)}openClip(){this._renderClipState=!0}closeClip(){this._renderClipState=!1}dispose(){var n;this.onMouseWheelObserver.clear(),this.onScrollAfterObserver.clear(),this.onScrollBeforeObserver.clear(),this.onScrollStopObserver.clear(),(n=this._scrollBar)==null||n.dispose(),this._scene.removeViewport(this._viewPortKey)}limitedScroll(){var i,o;if(!this._scrollBar)return;const n=(i=this._scrollBar)==null?void 0:i.limitX,t=(o=this._scrollBar)==null?void 0:o.limitY;let e=!0,s=!0;return this.scrollX<0?this.scrollX=0:this.scrollX>n?this.scrollX=n:e=!1,this.scrollY<0?this.scrollY=0:this.scrollY>t?this.scrollY=t:s=!1,{isLimitedX:e,isLimitedY:s}}_resizeCacheCanvasAndScrollBar(){const n=this.actualScrollX,t=this.actualScrollY,{width:e,height:s}=this._getViewPortSize(),i=(this._scene.width-this._paddingEndX)*this._scene.scaleX,o=(this._scene.height-this._paddingEndY)*this._scene.scaleY;if(this._scrollBar){this._scrollBar.resize(e,s,i,o);const{x:a,y:c}=this.getBarScroll(n,t);this.scrollTo({x:a,y:c})}this.makeDirty(!0)}_getViewPortSize(){const n=this._scene.getParent(),{width:t,height:e}=n,{scaleX:s=1,scaleY:i=1}=this._scene;let o,a,c=this.left*s,u=this.top*i;return this._leftOrigin!=null&&(c=this._leftOrigin*s),this._topOrigin!=null&&(u=this._topOrigin*i),this._widthOrigin!=null?o=this._widthOrigin*s:(o=t-(c+this._right),this.width=o),this._heightOrigin!=null?a=this._heightOrigin*i:(a=e-(u+this._bottom),this.height=a),this._left=c,this._top=u,{width:o,height:a}}_scrollRendered(){this._preScrollX=this.scrollX,this._preScrollY=this.scrollY}_triggerScrollStop(n,t,e,s=!0){clearTimeout(this._scrollStopNum),this._scrollStopNum=setTimeout(()=>{var i,o;this.onScrollStopObserver.notifyObservers({viewport:this,scrollX:this.scrollX,scrollY:this.scrollY,x:t,y:e,actualScrollX:n.x,actualScrollY:n.y,limitX:(i=this._scrollBar)==null?void 0:i.limitX,limitY:(o=this._scrollBar)==null?void 0:o.limitY,isTrigger:s})},2)}_scroll(n,t,e=!0){var c,u,l,D;const{x:s,y:i}=t;if(this._scrollBar==null)return;s!==void 0&&(this._scrollBar.hasHorizonThumb()?n===1?this.scrollX+=s:this.scrollX=s:this.scrollX=0),i!==void 0&&(this._scrollBar.hasVerticalThumb()?n===1?this.scrollY+=i:this.scrollY=i:this.scrollY=0);const o=this.limitedScroll();this.onScrollBeforeObserver.notifyObservers({viewport:this,scrollX:this.scrollX,scrollY:this.scrollY,x:s,y:i,limitX:(c=this._scrollBar)==null?void 0:c.limitX,limitY:(u=this._scrollBar)==null?void 0:u.limitY,isTrigger:e}),this._scrollBar?this._scrollBar.makeDirty(!0):this.makeDirty(!0);const a=this.getTransformedScroll();return this.actualScrollX=a.x,this.actualScrollY=a.y,this.onScrollAfterObserver.notifyObservers({viewport:this,scrollX:this.scrollX,scrollY:this.scrollY,x:s,y:i,actualScrollX:a.x,actualScrollY:a.y,limitX:(l=this._scrollBar)==null?void 0:l.limitX,limitY:(D=this._scrollBar)==null?void 0:D.limitY,isTrigger:e}),this._triggerScrollStop(a,s,i,e),o}_calViewportRelativeBounding(){var S;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 t=this._scene.transform.clone().getMatrix(),e=this._isRelativeX&&t[0]<1?t[0]:1,s=this._isRelativeY&&t[3]<1?t[3]:1,i=this._isRelativeX?1:t[0]<1?t[0]:1,o=this._isRelativeY?1:t[3]<1?t[3]:1;let a=this._width,c=this._height;const u=this._getViewPortSize();t[0]>1&&(a=u.width),t[3]>1&&(c=u.height);const l=this.left*e,D=((a||0)+this.left)*i,f=this.top*s,p=((c||0)+this.top)*o,F=this.getRelativeVector(I.FromArray([l,f])),E=this.getRelativeVector(I.FromArray([D,p])),m={top:F.y,left:F.x,right:E.x,bottom:E.y},b=(S=this._preViewportBound)==null?void 0:S.viewBound;return{viewBound:m,diffBounds:this._diffViewBound(m,b),diffX:((b==null?void 0:b.left)||0)-m.left,diffY:((b==null?void 0:b.top)||0)-m.top,viewPortPosition:{top:f,left:l,bottom:p,right:D},viewPortKey:this.viewPortKey}}_diffViewBound(n,t){if(t==null)return[n];const e={startRow:n.top,endRow:n.bottom,startColumn:n.left,endColumn:n.right},s={startRow:t.top,endRow:t.bottom,startColumn:t.left,endColumn:t.right};return d.Rectangle.subtract(e,s).map(o=>{const{startRow:a,endRow:c,startColumn:u,endColumn:l}=o;return{left:u,top:a,right:l,bottom:c}})}_drawScrollbar(n){if(!this._scrollBar)return;const t=this._scene.getParent();t.classType===N.SCENE_VIEWER?this._scrollBar.render(n):t.classType===N.ENGINE&&this._scrollBar.render(n)}_setWithAndHeight(n){this.top=(n==null?void 0:n.top)||0,this.left=(n==null?void 0:n.left)||0,this.bottom=(n==null?void 0:n.bottom)||0,this.right=(n==null?void 0:n.right)||0,d.Tools.isDefine(n==null?void 0:n.width)?(this.width=n==null?void 0:n.width,this._widthOrigin=this.width,this._isRelativeX=!1):(this.width=null,this._widthOrigin=null,this._isRelativeX=!0),d.Tools.isDefine(n==null?void 0:n.height)?(this.height=n==null?void 0:n.height,this._heightOrigin=this.height,this._isRelativeY=!1):(this.height=null,this._heightOrigin=null,this._isRelativeY=!0)}_getBoundScale(n,t){return n=this._isRelativeX&&n<1?1:n,t=this._isRelativeY&&t<1?1:t,{scaleX:n,scaleY:t}}}exports.ArabicHandler=K4;exports.BASE_OBJECT_ARRAY=W2;exports.BORDER_TYPE=J;exports.Background=Bt;exports.BaseObject=I1;exports.Border=Ot;exports.BreakType=n2;exports.CIRCLE_OBJECT_ARRAY=Xt;exports.COLOR_BLACK_RGB=G1;exports.CURSOR_TYPE=r1;exports.Canvas=o2;exports.CanvasRenderMode=y4;exports.Circle=c7;exports.ColumnHeaderLayout=wt;exports.ComponentExtension=n7;exports.Control=Kd;exports.CustomObject=$d;exports.DEFAULT_DOCUMENT_FONTSIZE=j7;exports.DEFAULT_FONTFACE_PLANE=Z2;exports.DEFAULT_MEASURE_TEXT=W7;exports.DEFAULT_OFFSET_SPACING=p6;exports.DEFAULT_SELECTION_LAYER_INDEX=Zt;exports.DEFAULT_SKELETON_FOOTER=Jt;exports.DEFAULT_SKELETON_HEADER=Kt;exports.DOCUMENT_CONTEXT_CLIP_TYPE=G7;exports.DeviceInputEventType=m4;exports.DeviceType=d1;exports.DocumentHorizonBar=fd;exports.DocumentSkeleton=i2;exports.DocumentSkeletonState=St;exports.DocumentVerticalBar=bd;exports.DocumentViewModel=M1;exports.Documents=x2;exports.DocumentsSpanAndLineExtensionRegistry=l2;exports.Drawing=Jd;exports.EMOJI_REG=n4;exports.EVENT_TYPE=E1;exports.Engine=K2;exports.EventConstants=N2;exports.FIX_ONE_PIXEL_BLUR_OFFSET=a1;exports.Font=At;exports.FontCache=O1;exports.Group=Pt;exports.HitCanvas=gD;exports.INITIAL_MATRIX=$2;exports.INITIAL_Path2=F4;exports.IRenderManagerService=kt;exports.IRenderingEngine=Ht;exports.ITextSelectionRenderManager=Ed;exports.IsSafari=q7;exports.LINK_VIEW_PORT_TYPE=Y7;exports.Layer=Lt;exports.LineType=A2;exports.Liquid=O2;exports.MAXIMUM_ROW_HEIGHT=U7;exports.MIDDLE_CELL_POS_MAGIC_NUMBER=A6;exports.NORMAL_TEXT_SELECTION_PLUGIN_STYLE=T2;exports.NodePositionConvertToCursor=mt;exports.NodePositionMap=X1;exports.NodePositionStateType=pt;exports.NodePositionType=F2;exports.ORIENTATION_TYPE=E2;exports.PATH_OBJECT_ARRAY=xt;exports.PageLayoutType=T1;exports.Path=D1;exports.Path2=C4;exports.PerformanceMonitor=E4;exports.Picture=J2;exports.PointerInput=M;exports.RANGE_DIRECTION=m2;exports.RECT_OBJECT_ARRAY=Ct;exports.REGULAR_POLYGON_OBJECT_ARRAY=Et;exports.RENDER_CLASS_TYPE=N;exports.RICHTEXT_OBJECT_ARRAY=O6;exports.Rect=f1;exports.RegularPolygon=s6;exports.RenderComponent=W6;exports.RenderManagerService=Nt;exports.RichText=Zd;exports.RollingAverage=b4;exports.RowHeaderLayout=It;exports.SHAPE_OBJECT_ARRAY=Ft;exports.SHAPE_TYPE=w6;exports.SHEET_EXTENSION_TYPE=yt;exports.SLIDE_NAVIGATION_KEY=Mt;exports.Scene=$t;exports.SceneCanvas=fD;exports.SceneViewer=u7;exports.ScrollBar=l7;exports.ScrollTimer=r2;exports.ScrollTimerType=vt;exports.Selection=Qd;exports.Shape=c2;exports.SheetColumnHeaderExtensionRegistry=i7;exports.SheetComponent=r7;exports.SheetExtension=h2;exports.SheetRowHeaderExtensionRegistry=s7;exports.ShowGridlinesState=Rt;exports.SkeletonType=h4;exports.Slide=Ld;exports.SpanType=u1;exports.Spreadsheet=Pd;exports.SpreadsheetColumnHeader=Sd;exports.SpreadsheetExtensionRegistry=R2;exports.SpreadsheetHeader=o7;exports.SpreadsheetRowHeader=xd;exports.SpreadsheetSkeleton=a7;exports.TRANSFORM_CHANGE_OBSERVABLE_TYPE=i1;exports.TextRange=V2;exports.TibetanHandler=Z4;exports.Transform=o1;exports.UNIVER_GLOBAL_DEFAULT_FONT_FAMILY=e4;exports.UNIVER_GLOBAL_DEFAULT_FONT_SIZE=t4;exports.UniverPrintingContext=T4;exports.UniverRenderingContext=v4;exports.UniverRenderingContext2D=z6;exports.UniverRenderingContextWebGL=_D;exports.UniverRenderingContextWebGPU=dD;exports.VERTICAL_ROTATE_ANGLE=z1;exports.Vector2=I;exports.Viewport=ef;exports._createSkeletonWordOrLetter=n6;exports.addSpanToDivide=k2;exports.calculateLineTopByDrawings=Q4;exports.calculateParagraphLayout=st;exports.calculateRectRotate=v2;exports.cancelRequestFrame=J7;exports.checkStyle=u4;exports.clearFontCreateConfigCache=Y4;exports.clearLineByBorderType=d4;exports.columnIterator=N4;exports.compareNodePosition=U2;exports.compareNodePositionLogic=e7;exports.convertTextRotation=S4;exports.createAndUpdateBlockAnchor=nt;exports.createCanvasElement=x6;exports.createImageElement=Nh;exports.createSkeletonBulletSpan=j4;exports.createSkeletonColumn=U_;exports.createSkeletonLetterSpan=I2;exports.createSkeletonLine=q4;exports.createSkeletonPage=s2;exports.createSkeletonSection=K6;exports.createSkeletonTabSpan=W4;exports.createSkeletonWordSpan=z4;exports.cursorConvertToTextRange=bt;exports.dealWidthBlocksByMultiColumnAndContinuous=UD;exports.dealWidthInlineDrawing=I4;exports.dealWidthParagraph=gt;exports.dealWithBlockError=B4;exports.dealWithBullet=A4;exports.dealWithSections=V6;exports.degToRad=v1;exports.drawDiagonalLineByBorderType=_4;exports.drawLineByBorderType=k6;exports.emojiHandler=J4;exports.fixLineWidthByScale=H;exports.generateRandomKey=Q7;exports.getBulletOrderedSymbol=O4;exports.getCanvasOffsetByEngine=Tt;exports.getCellByIndex=Q1;exports.getCellInfoInMergeData=t6;exports.getCellPositionByIndex=Y1;exports.getCharSpaceApply=e6;exports.getCharSpaceConfig=L4;exports.getColor=l1;exports.getColumnByDivide=AD;exports.getCurrentScrollXY=t2;exports.getDPI=w2;exports.getDefaultBulletSke=E6;exports.getDevicePixelRatio=N6;exports.getDocsSkeletonPageSize=C2;exports.getFontCreateConfig=u2;exports.getFontStyleString=S2;exports.getLastColumn=BD;exports.getLastLine=R4;exports.getLastLineByColumn=x4;exports.getLastNotFullColumnInfo=y2;exports.getLastNotFullDivideInfo=j6;exports.getLastPage=U1;exports.getLastRemainingDivide=RD;exports.getLastSection=a2;exports.getLastSpan=xD;exports.getLineHeightConfig=U6;exports.getLineOffset=f4;exports.getLineWidth=X6;exports.getLineWith=g4;exports.getNextDivide=ID;exports.getNumberUnitValue=A1;exports.getOneTextSelectionRange=T6;exports.getPageContentWidth=OD;exports.getParagraphBySpan=D4;exports.getPointerPrefix=m6;exports.getPositionHorizon=k4;exports.getPositionVertical=H4;exports.getPreLine=wD;exports.getRotateOffsetAndFarthestHypotenuse=Y6;exports.getRotateOrientation=p4;exports.getScale=$6;exports.getSizeForDom=c4;exports.getSpanGroupWidth=X4;exports.getTranslateInSpreadContextWithPixelRatio=DD;exports.getValueType=P1;exports.hasAllLatin=Uh;exports.hasArabic=P6;exports.hasBasicLatin=Vh;exports.hasCJK=Q2;exports.hasCJKText=z2;exports.hasLatinExtendedA=Jh;exports.hasLatinExtendedB=Zh;exports.hasLatinOneSupplement=Kh;exports.hasListSpan=oD;exports.hasMixedTextLayout=U4;exports.hasSpace=s4;exports.hasTibetan=L6;exports.hasUnMergedCellInRow=r4;exports.injectStyle=a4;exports.isArray=Yh;exports.isBlankColumn=P4;exports.isBlankPage=MD;exports.isColumnFull=M4;exports.isDate=Hh;exports.isFirstSpan=cD;exports.isFunction=q2;exports.isIndentBySpan=aD;exports.isLastSpan=uD;exports.isNumber=zh;exports.isObject=Wh;exports.isPlaceholderOrSpace=lD;exports.isRectIntersect=o4;exports.isRegExp=Xh;exports.isSameLine=hD;exports.isString=F6;exports.lineIterator=$4;exports.mergeInfoOffset=C6;exports.otherHandler=V4;exports.pixelToPt=rD;exports.precisionTo=Y2;exports.ptToMM=nD;exports.ptToPixel=iD;exports.ptToPx=tD;exports.pxToInch=sD;exports.pxToNum=H1;exports.pxToPt=eD;exports.radToDeg=Z7;exports.requestNewFrame=b2;exports.setColumnFullState=J6;exports.setDivideFullState=tt;exports.setLineMarginBottom=HD;exports.setLineType=H6;exports.setSpanGroupLeft=G4;exports.setSpanLeft=$D;exports.spanIterator=LD;exports.startWithEmoji=M6;exports.toPx=w1;exports.updateBlockIndex=j2;exports.updateDivideInLine=XD;exports.validationGrid=G6;
17
+ `}_getNodePosition(t){var c;if(t==null)return;const{node:e,ratioX:s}=t,i=(c=this._docSkeleton)==null?void 0:c.findPositionBySpan(e);if(i==null)return;const a=s<.5;return{...i,isBack:a}}_interactTextRange(t){const e=[];let s=!1;this._rangeList.forEach(i=>{if(i===t)return!0;t.isIntersection(i)?(s=!0,i.dispose()):e.push(i)}),s&&(e.push(t),this._rangeList=e)}_removeAllTextRanges(){this._rangeList.forEach(t=>{t.dispose()}),this._rangeList=[]}_deactivateAllTextRanges(){this._rangeList.forEach(t=>{t.deactivate()})}_addTextRange(t){this._deactivateAllTextRanges(),t.activate(),this._rangeList.push(t)}_updateTextRangeAnchorPosition(t){if(!this._scene)return;let e=this._rangeList.pop();e||(e=new V2(this._scene,this._document,this._docSkeleton,t)),this._removeAllTextRanges(),e.activate(),e.anchorNodePosition=t,e.focusNodePosition=null,this._rangeList=[e]}_updateActiveRangeFocusPosition(t){if(!this._scene){this._logService.error("[TextSelectionRenderManager] _updateActiveRangeFocusPosition: scene is null");return}const e=this._getActiveRangeInstance();if(e==null||e.anchorNodePosition==null){this._logService.error("[TextSelectionRenderManager] _updateActiveRangeFocusPosition: active range has no anchor");return}this._removeAllTextRanges(),e.activate(),e.focusNodePosition=t,this.deactivate(),this._rangeList=[e]}_isEmpty(){return this._rangeList.length===0}_getCanvasOffset(){var e;const t=(e=this._scene)==null?void 0:e.getEngine();return yt(t)}_updateInputPosition(){const t=this._getActiveRangeInstance(),e=t==null?void 0:t.getAnchor();if(!e||e&&!e.visible||this._activeViewport==null){this.focus();return}const{left:s,top:i}=e,o=this._activeViewport.getAbsoluteVector(I.FromArray([s,i])),{x:a,y:c}=o;let{left:u,top:l}=this._getCanvasOffset();u+=a,l+=c,this.activate(u,l)}_moving(t,e){var a,c;if(this._docSkeleton==null)return;const s=this._findNodeByCoord(t,e),i=this._getNodePosition(s);if(!i)return;const o=this._getActiveRangeInstance();o&&(o.focusNodePosition=i,o.refresh(),this.deactivate(),this._interactTextRange(o),(c=(a=this._scene)==null?void 0:a.getEngine())==null||c.setRemainCapture())}_attachScrollEvent(t){if(t==null||this._docSkeleton==null)return;const s=`${this._docSkeleton.getViewModel().getDataModel().getUnitId()}_${t.viewPortKey}`;if(this._viewPortObserverMap.has(s))return;const i=t.onScrollBeforeObserver.add(a=>{if(!a.viewport)return;const u=this._getActiveRangeInstance();u==null||u.activeStatic()}),o=t.onScrollStopObserver.add(a=>{const c=a.viewport;if(!c)return;const u=c.getBounding(),l=this._getActiveRangeInstance(),D=l==null?void 0:l.getAnchor();if(!(!D||D&&!D.visible)){if(u){const{left:f,top:p,right:F,bottom:E}=u.viewBound;if(D.left<f||D.left>F||D.top<p||D.top>E){l==null||l.deactivateStatic();return}}this._updateInputPosition()}});this._viewPortObserverMap.set(s,{scrollBefore:i,scrollStop:o})}_initInputEvents(){this.disposeWithMe(s1.fromEvent(this._input,"keydown").subscribe(t=>{this._isIMEInputApply||this._eventHandle(t,e=>{this._onKeydown$.next(e)})})),this.disposeWithMe(s1.fromEvent(this._input,"input").subscribe(t=>{this._isIMEInputApply||this._eventHandle(t,e=>{this._onInputBefore$.next(e),this._onInput$.next(e)})})),this.disposeWithMe(s1.fromEvent(this._input,"compositionstart").subscribe(t=>{this._isIMEInputApply=!0,this._eventHandle(t,e=>{this._onCompositionstart$.next(e)})})),this.disposeWithMe(s1.fromEvent(this._input,"compositionend").subscribe(t=>{this._isIMEInputApply=!1,this._eventHandle(t,e=>{this._onCompositionend$.next(e)})})),this.disposeWithMe(s1.fromEvent(this._input,"compositionupdate").subscribe(t=>{this._eventHandle(t,e=>{this._onInputBefore$.next(e),this._onCompositionupdate$.next(e)})})),this.disposeWithMe(s1.fromEvent(this._input,"paste").subscribe(t=>{this._eventHandle(t,e=>{this._onPaste$.next(e)})})),this.disposeWithMe(s1.fromEvent(this._input,"focus").subscribe(t=>{this._eventHandle(t,e=>{this._onFocus$.next(e)})})),this.disposeWithMe(s1.fromEvent(this._input,"blur").subscribe(t=>{this._eventHandle(t,e=>{this._onBlur$.next(e)})}))}_eventHandle(t,e){const s=this._input.textContent||"";this._input.innerHTML="";const i=this._getActiveRange(),o=this._getAllTextRanges();e({event:t,content:s,activeRange:i,rangeList:o})}_getTransformCoordForDocumentOffset(t,e){const{documentTransform:s}=this._document.getOffsetConfig();if(this._activeViewport==null||s==null)return;const i=this._activeViewport.getRelativeVector(I.FromArray([t,e]));if(i)return s.clone().invert().applyPoint(i)}_findNodeByCoord(t,e){var c;const s=this._getTransformCoordForDocumentOffset(t,e);if(s==null)return;const{pageLayoutType:i=T1.VERTICAL,pageMarginLeft:o,pageMarginTop:a}=this._document.getOffsetConfig();return(c=this._docSkeleton)==null?void 0:c.findNodeByCoord(s,i,o,a)}_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 t=this._getActiveRangeInstance();t==null||t.refresh()}};exports.TextSelectionRenderManager=Sd([vd(0,d.ILogService)],exports.TextSelectionRenderManager);const Td=e2.createIdentifier("univer.doc.text-selection-render-manager");class yd{}class a7 extends G6{constructor(n,t){super(n),this._skeleton=t}getSkeleton(){return this._skeleton}updateSkeleton(n){this._skeleton=n}render(n,t){if(!this.visible)return this.makeDirty(!1),this;n.save(),this._draw(n,t),n.restore()}getParentScale(){let{scaleX:n=1,scaleY:t=1}=this.parent;return this.parent.classType===N.SCENE_VIEWER&&(n=this.parent.ancestorScaleX||1,t=this.parent.ancestorScaleY||1),{scaleX:n,scaleY:t}}getDocuments(){}getNoMergeCellPositionByIndex(n,t){}getScrollXYByRelativeCoords(n){return{x:0,y:0}}getSelectionBounding(n,t,e,s){}_draw(n,t){}}class u7 extends a7{_draw(n,t){this.draw(n,t)}}class Bd extends u7{constructor(t,e){super(t,e);h(this,"_columnHeaderLayoutExtension");this._initialDefaultExtension(),this.makeDirty(!0)}get columnHeaderLayoutExtension(){return this._columnHeaderLayoutExtension}draw(t,e){const s=this.getSkeleton();if(!s)return;const i=this.getParentScale();s.calculateSegment(e);const o=s.rowColumnSegment;if(o.startColumn===-1&&o.endColumn===-1)return;const{rowHeaderWidth:a}=s;t.translateWithPrecision(a,0);const c=this.getExtensionsByOrder();for(const u of c)u.draw(t,i,s)}isHit(t){const e=this._getInverseCoord(t),s=this.getSkeleton();if(!s)return!1;const{rowHeaderWidth:i,columnHeaderHeight:o}=s;return e.x>i&&e.y>=0&&e.y<=o}_initialDefaultExtension(){o7.getData().forEach(t=>{this.register(t)}),this._columnHeaderLayoutExtension=this.getExtensionByKey("DefaultColumnHeaderLayoutExtension")}}var Bt=(r=>(r[r.GRID=0]="GRID",r))(Bt||{});class h2 extends i7{constructor(){super(...arguments);h(this,"type",0)}getCellIndex(t,e,s,i,o){return Q1(t,e,s,i,o)}isRenderDiffRangesByCell(t,e){if(e==null||e.length===0)return!0;for(const s of e){const{startRow:i,startColumn:o,endRow:a,endColumn:c}=s;if(d.Rectangle.intersects(s,{startRow:i,endRow:a,startColumn:o,endColumn:c}))return!0}return!1}isRenderDiffRangesByColumn(t,e,s){if(s==null||s.length===0)return!0;for(const i of s){const{startColumn:o,endColumn:a}=i;if(d.Rectangle.intersects({startRow:0,endRow:0,startColumn:t,endColumn:e},{startRow:0,endRow:0,startColumn:o,endColumn:a}))return!0}return!1}isRenderDiffRangesByRow(t,e,s){if(s==null||s.length===0)return!0;for(const i of s){const{startRow:o,endRow:a}=i;if(d.Rectangle.intersects({startRow:t,endRow:e,startColumn:0,endColumn:0},{startRow:o,endRow:a,startColumn:0,endColumn:0}))return!0}return!1}}const Od="DefaultBackgroundExtension",wd=40,Ad=20;class Ot extends h2{constructor(){super(...arguments);h(this,"uKey",Od);h(this,"Z_INDEX",wd);h(this,"PRINTING_Z_INDEX",Ad)}get zIndex(){var t;return(t=this.parent)!=null&&t.isPrinting?this.PRINTING_Z_INDEX:this.Z_INDEX}draw(t,e,s,i){const{stylesCache:o}=s,{background:a,backgroundPositions:c}=o;if(!s)return;const{rowHeightAccumulation:u,columnTotalWidth:l,columnWidthAccumulation:D,rowTotalHeight:f}=s;!u||!D||l===void 0||f===void 0||(t.save(),t.setGlobalCompositeOperation("destination-over"),a&&Object.keys(a).forEach(p=>{const F=a[p];t.fillStyle=p||l1([255,255,255]),t.beginPath(),F.forValue((E,m)=>{const b=c==null?void 0:c.getValue(E,m);if(b==null)return!0;let{startY:S,endY:v,startX:y,endX:T}=b;const{isMerged:B,isMergedMainCell:O,mergeInfo:w}=b;if(B||!this.isRenderDiffRangesByCell({startRow:w.startRow,endRow:w.endRow,startColumn:w.startColumn,endColumn:w.endColumn},i))return!0;O&&(S=w.startY,v=w.endY,y=w.startX,T=w.endX),t.moveTo(y,S),t.lineTo(y,v),t.lineTo(T,v),t.lineTo(T,S)}),t.closePath(),t.fill()}),t.restore())}}R2.add(Ot);const Id="DefaultBorderExtension",Rd=50;class wt extends h2{constructor(){super(...arguments);h(this,"uKey",Id);h(this,"Z_INDEX",Rd)}draw(t,e,s,i){const{dataMergeCache:o,stylesCache:a,overflowCache:c}=s,{border:u}=a;if(!s)return;const{rowHeightAccumulation:l,columnTotalWidth:D,columnWidthAccumulation:f,rowTotalHeight:p}=s;if(!l||!f||D===void 0||p===void 0)return;t.save();let F,E;t.translateWithPrecisionRatio(a1,a1),u==null||u.forValue((m,b,S)=>{if(!S)return!0;const v=this.getCellIndex(m,b,l,f,o);let{startY:y,endY:T,startX:B,endX:O}=v;const{isMerged:w,isMergedMainCell:P,mergeInfo:L}=v;if(w||(P&&(y=L.startY,T=L.endY,B=L.startX,O=L.endX),!this.isRenderDiffRangesByRow(L.startRow,L.endRow,i)))return!0;for(const A in S){const{type:$,style:Y,color:x}=S[A];Y!==F&&(Y6(t,Y),t.lineWidth=z6(Y),F=Y),x!==E&&(t.strokeStyle=x||G1,E=x),_4(t,$,{startX:B,startY:y,endX:O,endY:T}),!this._getOverflowExclusion(c,$,m,b)&&X6(t,$,{startX:B,startY:y,endX:O,endY:T})}}),t.closePath(),t.restore()}_getOverflowExclusion(t,e,s,i){let o=!1;return e===J.TOP||e===J.BOTTOM||t==null||t.forRow((a,c)=>{if(a!==s)return!0;c.forEach(u=>{const l=t.getValue(a,u),{startColumn:D,endColumn:f}=l;if(e===J.LEFT&&i>D&&i<=f||e===J.RIGHT&&i>=D&&i<f)return o=!0,!1})}),o}}R2.add(wt);const xd="DefaultColumnHeaderLayoutExtension";class At extends h2{constructor(){super(...arguments);h(this,"uKey",xd);h(this,"Z_INDEX",10)}draw(t,e,s){const{rowColumnSegment:i,columnHeaderHeight:o=0}=s,{startColumn:a,endColumn:c}=i;if(!s)return;const{rowHeightAccumulation:u,columnTotalWidth:l,columnWidthAccumulation:D,rowTotalHeight:f}=s;if(!u||!D||l===void 0||f===void 0)return;const p=this._getScale(e);t.fillStyle=l1([248,249,250]),t.fillRect(0,0,l,o),t.textAlign="center",t.textBaseline="middle",t.fillStyle=l1([0,0,0]),t.beginPath(),t.lineWidth=1,t.translateWithPrecisionRatio(a1,a1),t.strokeStyle=l1([217,217,217]),t.font=`13px ${Z2}`;let F=0;const E=D.length;for(let b=a-1;b<=c;b++){if(b<0||b>E-1)continue;const S=D[b];if(F===S)continue;t.moveTo(S,0),t.lineTo(S,o);const v=F+(S-F)/2;t.fillText(d.numberToABC(b),v,o/2+R6),F=S}const m=o-.5/p;t.moveTo(0,m),t.lineTo(l,m),t.stroke()}}o7.add(new At);class B1{constructor(n,t){h(this,"children",[]);h(this,"parent");h(this,"startIndex",-1);h(this,"endIndex",-1);h(this,"blocks",[]);this.nodeType=n,this.content=t}static create(n,t){return new B1(n,t)}dispose(){this.children.forEach(n=>{n.dispose()}),this.parent=null,this.blocks=[]}getProps(){const{children:n,parent:t,startIndex:e,endIndex:s,nodeType:i,content:o}=this;return{children:n,parent:t,startIndex:e,endIndex:s,nodeType:i,content:o}}addBlocks(n){this.blocks=this.blocks.concat(n)}setIndexRange(n,t){this.startIndex=n,this.endIndex=t}insertText(n,t){this.content=d.insertTextToContent(this.content||"",t-this.startIndex,n)}exclude(n){const{startIndex:t,endIndex:e}=this;return n<t||n>e}plus(n){this.startIndex+=n,this.endIndex+=n,this._addIndexForBlock(n)}selfPlus(n,t){this.endIndex+=n,t==null&&(t=this.startIndex),this._addIndexForBlock(n,t)}split(n){const{children:t,parent:e,startIndex:s,nodeType:i,content:o=""}=this.getProps();if(this.exclude(n))return;const a=0,c=n-s,u=c,l=o.slice(a,c),D=B1.create(i,l);D.parent=e,D.setIndexRange(a,c-1);const f=o.slice(u),p=B1.create(i,f);p.parent=e,p.setIndexRange(u,u+f.length-1);const F=[],E=[];for(const m of t){const{startIndex:b}=m;if(m.exclude(n))n<b?F.push(m):E.push(m);else{const S=m.split(n);if(S==null){F.push(m);continue}const{firstNode:v,lastNode:y}=S;F.push(v),F.push(y)}}return D.children=F,p.children=E,D._resetBlocks(),p._resetBlocks(),{firstNode:D,lastNode:p}}getPositionInParent(){var t;const n=(t=this.parent)==null?void 0:t.children.indexOf(this);return n==null?-1:n}remove(){this.children=[],this.parent!=null&&(this.parent.children.splice(this.getPositionInParent(),1),this.parent=null)}minus(n,t){const e=d.horizontalLineSegmentsSubtraction(this.startIndex,this.endIndex,n,t);if(e.length===0)return;const s=this.startIndex;this.startIndex=e[0],this.endIndex=e[1],this.content!=null&&(this.content=d.deleteContent(this.content||"",n-s,t-s+1))}merge(n){const{startIndex:t,endIndex:e,children:s}=n;this.endIndex+=e-t+1,this.children.push(...s),this.content+=n.content||"",n.remove()}_addIndexForBlock(n,t=Number.NEGATIVE_INFINITY){for(let e=0,s=this.blocks.length;e<s;e++){const i=this.blocks[e];i>=t&&(this.blocks[e]=i+n)}}_resetBlocks(){if(this.nodeType===d.DataStreamTreeNodeType.PARAGRAPH&&this.content!=null&&this.content.length!==0){this.blocks=[];for(let n=0,t=this.content.length;n<t;n++)this.content[n]===d.DataStreamTreeTokenType.CUSTOM_BLOCK&&this.blocks.push(this.startIndex+n)}}}class M1{constructor(n){h(this,"children",[]);h(this,"_sectionBreakCurrentIndex",0);h(this,"_paragraphCurrentIndex",0);h(this,"_textRunCurrentIndex",0);h(this,"_customBlockCurrentIndex",0);h(this,"_tableBlockCurrentIndex",0);h(this,"_customRangeCurrentIndex",0);h(this,"headerTreeMap",new Map);h(this,"footerTreeMap",new Map);this._documentDataModel=n,n.getBody()!=null&&(this.children=this._transformToTree(n.getBody().dataStream),this._buildHeaderFooterViewModel())}dispose(){this.children.forEach(n=>{n.dispose()})}selfPlus(n,t){}getPositionInParent(){return 0}getLastIndex(){return this.children[this.children.length-1].endIndex}getBody(){return this._documentDataModel.getBody()}getDataModel(){return this._documentDataModel}getSelfOrHeaderFooterViewModel(n){return n==null?this:this.headerTreeMap.has(n)?this.headerTreeMap.get(n):this.footerTreeMap.has(n)?this.footerTreeMap.get(n):this}reset(n){this._documentDataModel=n,this.children=this._transformToTree(n.getBody().dataStream),this._buildHeaderFooterViewModel()}insert(n,t=0){var o;const e=n.dataStream;let s=e.length;const i=this._getParagraphByIndex(this.children,t);if(i!=null)if(e[s-1]===d.DataStreamTreeTokenType.SECTION_BREAK){const a=new d.DocumentDataModel({body:n}),c=new M1(a);s-=1;const u=c.children;for(const p of u)this._forEachDown(p,F=>{F.plus(t)});const l=i.split(t);if(l==null)return;const{firstNode:D,lastNode:f}=l;(o=i.parent)==null||o.children.splice(i.getPositionInParent(),1,D,...u,f),this._forEachTop(i.parent,p=>{p.selfPlus(s,p.getPositionInParent());const F=p.children;let E=!1;for(const m of F)m===f&&(E=!0),E&&this._forEachDown(m,b=>{b.plus(s)})})}else s===1&&e[s-1]===d.DataStreamTreeTokenType.PARAGRAPH?this._insertParagraph(i,t):(i.insertText(e,t),i.selfPlus(s,t),this._forEachTop(i.parent,a=>{a.selfPlus(s,a.getPositionInParent());const c=a.children;let u=!1;for(const l of c)l.startIndex>t&&(u=!0),u&&this._forEachDown(l,D=>{D.plus(s)})}))}delete(n,t){const e=this.children;this._deleteTree(e,n,t)}getText(){const n=[];function t(e){e.content&&n.push(e.content),e.children.forEach(t)}return this.children.forEach(e=>t(e)),n.join("")}resetCache(){this._sectionBreakCurrentIndex=0,this._paragraphCurrentIndex=0,this._textRunCurrentIndex=0,this._customBlockCurrentIndex=0,this._tableBlockCurrentIndex=0,this._customRangeCurrentIndex=0}getSectionBreak(n){if(n==null)return;const t=this.getBody().sectionBreaks;if(t!=null)for(let e=this._sectionBreakCurrentIndex;e<t.length;e++){const s=t[e];if(s.startIndex===n)return this._sectionBreakCurrentIndex=e,s}}getParagraph(n){const t=this.getBody().paragraphs;if(t!=null)for(let e=this._paragraphCurrentIndex;e<t.length;e++){const s=t[e];if(s.startIndex===n)return this._paragraphCurrentIndex=e,s}}getTextRunRange(n=0,t){const e=this.getBody().textRuns;if(e==null)return[{st:n,ed:t}];const s=[];for(let a=this._textRunCurrentIndex,c=e.length;a<c;a++){const u=e[a];if(u.st>t){this._textRunCurrentIndex=a;break}else if(u.ed<n){this._textRunCurrentIndex=a;continue}else s.push({st:u.st<n?n:u.st,ed:u.ed>t?t:u.ed,sId:u.sId,ts:u.ts}),this._textRunCurrentIndex=a}const i=s[0]||{st:t+1};i.st>n&&s.push({st:n,ed:i.st-1});const o=s[s.length-1]||{ed:n-1};return o.ed<t&&s.push({st:o.ed+1,ed:t}),s}getTextRun(n){const t=this.getBody().textRuns;if(t==null)return;const e=t[this._textRunCurrentIndex];if(e!=null){if(n>=e.st&&n<e.ed)return e;if(n<e.st)return}for(let s=this._textRunCurrentIndex,i=t.length;s<i;s++){const o=t[s];if(n>=o.st&&n<o.ed)return this._textRunCurrentIndex=s,o}}getCustomBlock(n){const t=this.getBody().customBlocks;if(t!=null)for(let e=this._customBlockCurrentIndex;e<t.length;e++){const s=t[e];if(s.startIndex===n)return this._customBlockCurrentIndex=e,s}}getTable(n){const t=this.getBody().tables;if(t!=null)for(let e=this._tableBlockCurrentIndex;e<t.length;e++){const s=t[e];if(s.startIndex===n)return this._tableBlockCurrentIndex=e,s}}getCustomRange(n){const t=this.getBody().customRanges;if(t!=null)for(let e=0,s=t.length;e<s;e++){const i=t[e];if(n>=i.startIndex&&n<=i.endIndex)return i}}_transformToTree(n){const t=n.length;let e="";const s=[];let i=[],o=[];for(let a=0;a<t;a++){const c=n[a];if(c===d.DataStreamTreeTokenType.PARAGRAPH){e+=d.DataStreamTreeTokenType.PARAGRAPH;const u=B1.create(d.DataStreamTreeNodeType.PARAGRAPH,e);u.setIndexRange(a-e.length+1,a),u.addBlocks(o),i.push(u),e="",o=[]}else if(c===d.DataStreamTreeTokenType.SECTION_BREAK){const u=B1.create(d.DataStreamTreeNodeType.SECTION_BREAK);this._batchParent(u,i);const l=i[i.length-1];l&&l.content&&(l.content+=d.DataStreamTreeTokenType.SECTION_BREAK),s.push(u),i=[]}else c===d.DataStreamTreeTokenType.TABLE_START?i.push(B1.create(d.DataStreamTreeNodeType.TABLE)):c===d.DataStreamTreeTokenType.TABLE_ROW_START?i.push(B1.create(d.DataStreamTreeNodeType.TABLE_ROW)):c===d.DataStreamTreeTokenType.TABLE_CELL_START?i.push(B1.create(d.DataStreamTreeNodeType.TABLE_CELL)):c===d.DataStreamTreeTokenType.TABLE_END?this._processPreviousNodesUntil(i,d.DataStreamTreeNodeType.TABLE):c===d.DataStreamTreeTokenType.TABLE_ROW_END?this._processPreviousNodesUntil(i,d.DataStreamTreeNodeType.TABLE_ROW):c===d.DataStreamTreeTokenType.TABLE_CELL_END?this._processPreviousNodesUntil(i,d.DataStreamTreeNodeType.TABLE_CELL):(c===d.DataStreamTreeTokenType.CUSTOM_BLOCK&&o.push(a),e+=c)}return s}_processPreviousNodesUntil(n,t){const e=[];let s=n.pop();for(;s&&s.nodeType!==t;)e.push(s),s=n.pop();const i=n[n.length-1];if(this._batchParent(i,e,d.DataStreamTreeNodeType.TABLE),t===d.DataStreamTreeNodeType.TABLE_CELL){const o=e[0],a=e[e.length];o.content=d.DataStreamTreeTokenType.TABLE_CELL_START+o.content||"",o.startIndex-=1,a.content+=d.DataStreamTreeTokenType.TABLE_CELL_END,a.endIndex+=1}else if(t===d.DataStreamTreeNodeType.TABLE_ROW){const o=e[0].children[0];let a=e[e.length];a=a.children[a.children.length-1],o.content=d.DataStreamTreeTokenType.TABLE_ROW_START+o.content||"",o.startIndex-=1,a.content+=d.DataStreamTreeTokenType.TABLE_ROW_END,a.endIndex+=1}else if(t===d.DataStreamTreeNodeType.TABLE){const o=e[0].children[0].children[0];let a=e[e.length];a=a.children[a.children.length-1],a=a.children[a.children.length-1],o.content=d.DataStreamTreeTokenType.TABLE_START+o.content||"",o.startIndex-=1,a.content+=d.DataStreamTreeTokenType.TABLE_END,a.endIndex+=1}}_batchParent(n,t,e=d.DataStreamTreeNodeType.SECTION_BREAK){for(const i of t)i.parent=n,n.children.push(i);const s=e===d.DataStreamTreeNodeType.SECTION_BREAK?0:1;n.setIndexRange(t[0].startIndex-s,t[t.length-1].endIndex+1)}_buildHeaderFooterViewModel(){const{headerModelMap:n,footerModelMap:t}=this._documentDataModel;for(const[e,s]of n)this.headerTreeMap.set(e,new M1(s));for(const[e,s]of t)this.footerTreeMap.set(e,new M1(s))}_getParagraphByIndex(n,t){for(const e of n){const{children:s}=e;if(!e.exclude(t))return e.nodeType===d.DataStreamTreeNodeType.PARAGRAPH?e:this._getParagraphByIndex(s,t)}return null}_forEachTop(n,t){let e=n;for(;e;)t(e),e=e.parent;t(this)}_forEachDown(n,t){t(n);const e=n.children;for(n of e)this._forEachDown(n,t)}_deleteTree(n,t,e){const s=t,i=t+e-1;let o=null,a=n.length,c=0;for(;c<a;){const u=n[c],{startIndex:l,endIndex:D,children:f}=u;if(this._deleteTree(f,t,e),s===i&&i===D){if(u.nodeType===d.DataStreamTreeNodeType.PARAGRAPH){const p=this._getNextNode(u);if(p==null){c++;continue}u.minus(s,i),u.merge(p),a--}}else if(s<=l&&i>=D){u.remove(),a--;continue}else if(l<=s&&D>=i)u.minus(s,i);else if(i>l&&i<D){if(u.minus(l,i),o!=null){o.merge(u),o=null,a--;continue}}else s>l&&s<D?(u.minus(s,D),o=u):l>i&&u.plus(-e);c++}}_getNextNode(n){var s;const t=n.getPositionInParent(),e=(s=n.parent)==null?void 0:s.children;return e==null?void 0:e[t+1]}_insertParagraph(n,t=0){var c;const e=n.startIndex,s=n.endIndex,i=n.split(t);if(i==null)return;const{firstNode:o,lastNode:a}=i;o.content+=d.DataStreamTreeTokenType.PARAGRAPH,o.selfPlus(1),o.plus(e),this._forEachDown(a,u=>{u.plus(e+1)}),(c=n.parent)==null||c.children.splice(n.getPositionInParent(),1,o,a),this._forEachTop(n.parent,u=>{u.selfPlus(1,u.getPositionInParent());const l=u.children;let D=!1;for(const f of l)f!==a&&(f.startIndex>=s+1&&(D=!0),D&&this._forEachDown(f,p=>{p.plus(1)}))})}}function C2(r,n=0){const t=r==null?void 0:r.getSkeletonData(),e=v1(n);if(!t)return;const{pages:s}=t,i=s[s.length-1],{width:o,height:a}=i;if(e===0)return{width:o,height:a};if(Math.abs(e)===Math.PI/2)return{width:a,height:o};let c=0,u=0;const l=[];N4([i],f=>{const{lines:p,width:F,spaceWidth:E}=f,{rotatedHeight:m,rotatedWidth:b}=W6(p,F,e);u+=m,l.push({rotatedWidth:b,spaceWidth:E})});const D=l.length;for(let f=0;f<D;f++){const{rotatedWidth:p}=l[f];f===0&&(c+=p)}return{width:c,height:u}}const X7={t:0,b:0,l:2,r:2};class c7 extends exports.Skeleton{constructor(t,e,s,i,o){super(o);h(this,"_rowHeightAccumulation",[]);h(this,"_rowTotalHeight",0);h(this,"_columnWidthAccumulation",[]);h(this,"_columnTotalWidth",0);h(this,"_rowHeaderWidth",0);h(this,"_columnHeaderHeight",0);h(this,"_rowColumnSegment",{startRow:-1,endRow:-1,startColumn:-1,endColumn:-1});h(this,"_dataMergeCache",[]);h(this,"_overflowCache",new d.ObjectMatrix);h(this,"_stylesCache",{background:{},backgroundPositions:new d.ObjectMatrix,font:{},border:new d.ObjectMatrix});h(this,"_renderedCellCache",new d.ObjectMatrix);h(this,"_showGridlines",d.BooleanNumber.TRUE);h(this,"_marginTop",0);h(this,"_marginLeft",0);this._worksheet=t,this._config=e,this._cellData=s,this._styles=i,this.updateLayout()}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._config.mergeData}get rowHeaderWidthAndMarginLeft(){return this.rowHeaderWidth+this._marginLeft}get columnHeaderHeightAndMarginTop(){return this.columnHeaderHeight+this._marginTop}static create(t,e,s,i,o){return new c7(t,e,s,i,o)}getWorksheetConfig(){return this._config}getCellData(){return this._cellData}getsStyles(){return this._styles}setOverflowCache(t){this._overflowCache=t}setMarginLeft(t){this._marginLeft=t}setMarginTop(t){this._marginTop=t}calculateSegment(t){if(this._config&&(this.updateLayout(),!(!this._rowHeightAccumulation||!this._columnWidthAccumulation)))return t!=null&&(this._rowColumnSegment=this.getRowColumnSegment(t)),!0}calculateWithoutClearingCache(t){if(!this.calculateSegment(t))return;const{mergeData:e}=this._config;return this._dataMergeCache=e&&this._getMergeCells(e,this._rowColumnSegment),this._calculateStylesCache(),this}calculate(t){return this._resetCache(),this.calculateWithoutClearingCache(t),this}calculateAutoHeightInRange(t){var a;if(!d.Tools.isArray(t))return[];const e=[],{mergeData:s,rowData:i}=this._config,o=i;for(const c of t){const{startRow:u,endRow:l,startColumn:D,endColumn:f}=c;for(let p=u;p<=l;p++){if(e.some(({row:E})=>E===p)||((a=o[p])==null?void 0:a.ia)===d.BooleanNumber.FALSE)continue;if(a4(p,D,f,s)){const E=this._calculateRowAutoHeight(p);e.push({row:p,autoHeight:E})}}}return e}_calculateRowAutoHeight(t){var l,D;const{columnCount:e,columnData:s,mergeData:i,defaultRowHeight:o}=this._config,a=s;let c=o;const u=this._worksheet;if(!u)return c;for(let f=0;f<e;f++){const{isMerged:p,isMergedMainCell:F}=t6(t,f,i);if(p||F)continue;const E=u.getCell(t,f),m=E&&this._getCellDocumentModel(E);if(m==null)continue;const{documentModel:b,textRotation:S,wrapStrategy:v}=m;if(b==null)continue;const y=new M1(b);let{a:T}=S;const{v:B=d.BooleanNumber.FALSE}=S;B===d.BooleanNumber.TRUE&&(T=z1);const O=(l=a[f])==null?void 0:l.w;typeof O=="number"&&v===d.WrapStrategy.WRAP&&b.updateDocumentDataPageSize(O);const w=i2.create(y,this._localService);w.calculate();let{height:P=0}=(D=C2(w,T))!=null?D:{};if(w){const L=w.getSkeletonData(),{marginTop:A,marginBottom:$,marginLeft:Y,marginRight:x}=L.pages[L.pages.length-1],R=Math.abs(v1(T));P+=A*Math.cos(R)+x*Math.sin(R)+$*Math.cos(R)+Y*Math.sin(R)}c=Math.max(c,P)}return Math.min(c,K7)}updateLayout(){if(!this.dirty)return;const{rowData:t,columnData:e,defaultRowHeight:s,defaultColumnWidth:i,rowCount:o,columnCount:a,rowHeader:c,columnHeader:u,showGridlines:l}=this._config,{rowTotalHeight:D,rowHeightAccumulation:f}=this._generateRowMatrixCache(o,t,s),{columnTotalWidth:p,columnWidthAccumulation:F}=this._generateColumnMatrixCache(a,e,i);return this._rowHeaderWidth=c.hidden!==d.BooleanNumber.TRUE?this._dynamicallyUpdateRowHeaderWidth(c):0,this._columnHeaderHeight=u.hidden!==d.BooleanNumber.TRUE?u.height:0,this._rowTotalHeight=D,this._rowHeightAccumulation=f,this._columnTotalWidth=p,this._columnWidthAccumulation=F,this._showGridlines=l,this.makeDirty(!1),this}_dynamicallyUpdateRowHeaderWidth(t){var i;const s=`${(i=this._worksheet)==null?void 0:i.getRowCount()}`.length*8;return Math.max(t.width,s)}getRowColumnSegment(t){return this._getBounding(this._rowHeightAccumulation,this._columnWidthAccumulation,t==null?void 0:t.viewBound)}getRowColumnSegmentByViewBound(t){return this._getBounding(this._rowHeightAccumulation,this._columnWidthAccumulation,t)}getMergeBounding(t,e,s,i){const o=this._config.mergeData;if(!o)return{startRow:t,startColumn:e,endRow:s,endColumn:i};let a=!0;const c=new d.ObjectMatrix;for(;a;){a=!1;for(let u=0;u<o.length;u++){const{startRow:l,startColumn:D,endRow:f,endColumn:p}=o[u];if(c.getValue(l,D))continue;u4({left:e,top:t,right:i,bottom:s},{left:D,top:l,right:p,bottom:f})&&(t=Math.min(t,l),e=Math.min(e,D),s=Math.max(s,f),i=Math.max(i,p),c.setValue(l,D,!0),a=!0)}}return{startRow:t,startColumn:e,endRow:s,endColumn:i}}appendToOverflowCache(t,e,s,i){this._overflowCache.setValue(t,e,{startRow:t,endRow:t,startColumn:s,endColumn:i})}getColumnCount(){return this._columnWidthAccumulation.length}getRowCount(){return this._rowHeightAccumulation.length}getOverflowPosition(t,e,s,i,o){const{width:a}=t;let c=i,u=i;return e===d.HorizontalAlign.CENTER?(c=this._getOverflowBound(s,i,0,a/2,e),u=this._getOverflowBound(s,i,o-1,a/2,e)):e===d.HorizontalAlign.RIGHT?c=this._getOverflowBound(s,i,0,a):u=this._getOverflowBound(s,i,o-1,a),{startColumn:c,endColumn:u}}getNoMergeCellPositionByIndex(t,e){const{rowHeightAccumulation:s,columnWidthAccumulation:i,rowHeaderWidthAndMarginLeft:o,columnHeaderHeightAndMarginTop:a}=this;let{startY:c,endY:u,startX:l,endX:D}=Y1(t,e,s,i);return c+=a,u+=a,l+=o,D+=o,{startY:c,endY:u,startX:l,endX:D}}getNoMergeCellPositionByIndexWithNoHeader(t,e){const{rowHeightAccumulation:s,columnWidthAccumulation:i}=this,{startY:o,endY:a,startX:c,endX:u}=Y1(t,e,s,i);return{startY:o,endY:a,startX:c,endX:u}}calculateCellIndexByPosition(t,e,s,i,o){const{row:a,column:c}=this.getCellPositionByOffset(t,e,s,i,o);return this.getCellByIndex(a,c)}getCellPositionByOffset(t,e,s,i,o){const a=this.getRowPositionByOffsetY(e,i,o),c=this.getColumnPositionByOffsetX(t,s,o);return{row:a,column:c}}getColumnPositionByOffsetX(t,e,s){t=this.getTransformOffsetX(t,e,s);const{columnWidthAccumulation:i}=this;let o=d.searchArray(i,t);return o===Number.POSITIVE_INFINITY?o=i.length-1:o===-1&&(o=0),o}getRowPositionByOffsetY(t,e,s){const{rowHeightAccumulation:i}=this;t=this.getTransformOffsetY(t,e,s);let o=d.searchArray(i,t);return o===Number.POSITIVE_INFINITY?o=i.length-1:o===-1&&(o=0),o}getTransformOffsetX(t,e,s){const{x:i}=s;return t=t/e+i-this.rowHeaderWidthAndMarginLeft,t}getTransformOffsetY(t,e,s){const{y:i}=s;return t=t/e+i-this.columnHeaderHeightAndMarginTop,t}getOffsetByPositionX(t){const{columnWidthAccumulation:e,rowHeaderWidthAndMarginLeft:s}=this,i=e.length-1,o=e[t];return o!=null?o+s:t<0?s:e[i]+s}getOffsetByPositionY(t){const{rowHeightAccumulation:e,columnHeaderHeightAndMarginTop:s}=this,i=e.length-1,o=e[t];return o!=null?o+s:t<0?s:e[i]+s}getCellByIndex(t,e){const{rowHeightAccumulation:s,columnWidthAccumulation:i,rowHeaderWidthAndMarginLeft:o,columnHeaderHeightAndMarginTop:a}=this,c=Q1(t,e,s,i,this._config.mergeData),{isMerged:u,isMergedMainCell:l}=c;let{startY:D,endY:f,startX:p,endX:F,mergeInfo:E}=c;return D+=a,f+=a,p+=o,F+=o,E=E6(E,o,a),{actualRow:t,actualColumn:e,startY:D,endY:f,startX:p,endX:F,isMerged:u,isMergedMainCell:l,mergeInfo:E}}getCellByIndexWithNoHeader(t,e){const{rowHeightAccumulation:s,columnWidthAccumulation:i}=this,o=Q1(t,e,s,i,this._config.mergeData),{isMerged:a,isMergedMainCell:c}=o,{startY:u,endY:l,startX:D,endX:f,mergeInfo:p}=o,F=E6(p,0,0);return{actualRow:t,actualColumn:e,startY:u,endY:l,startX:D,endX:f,isMerged:a,isMergedMainCell:c,mergeInfo:F}}convertTransformToOffsetX(t,e,s){const{x:i}=s;return t=(t-i)*e,t}convertTransformToOffsetY(t,e,s){const{y:i}=s;return t=(t-i)*e,t}getSelectionBounding(t,e,s,i){return this.getMergeBounding(t,e,s,i)}getBlankCellDocumentModel(t){const e=this._getCellDocumentModel(t,void 0,void 0,!0);if(e!=null)return e.documentModel==null&&(e.documentModel=this._getDocumentDataByStyle("",{},{})),e;const s="";let i="document";const o={a:0,v:d.BooleanNumber.FALSE},a=d.HorizontalAlign.UNSPECIFIED,c=d.VerticalAlign.UNSPECIFIED,u=d.WrapStrategy.UNSPECIFIED,l=X7;return i=S2({},this._localService).fontCache,{documentModel:this._getDocumentDataByStyle(s,{},{}),fontString:i,textRotation:o,wrapStrategy:u,verticalAlign:c,horizontalAlign:a,paddingData:l}}getCellDocumentModelWithFormula(t){return this._getCellDocumentModel(t,!0,!0,!0)}_getCellDocumentModel(t,e=!1,s=!1,i=!1){var E;const o=this._styles.getStyleByCell(t);if(!t)return;let a,c="document";const u=this._getOtherStyle(o),l=i?{a:0,v:d.BooleanNumber.FALSE}:u.textRotation||{a:0,v:d.BooleanNumber.FALSE};let D=u.horizontalAlign||d.HorizontalAlign.UNSPECIFIED;const f=u.verticalAlign||d.VerticalAlign.UNSPECIFIED,p=u.wrapStrategy||d.WrapStrategy.UNSPECIFIED,F=u.paddingData||X7;if(t.f&&s)a=this._getDocumentDataByStyle(t.f.toString(),{},{verticalAlign:f}),D=d.HorizontalAlign.UNSPECIFIED;else if(t.p){const{centerAngle:m,vertexAngle:b}=S4(l);a=this._updateConfigAndGetDocumentModel(e?d.Tools.deepClone(t.p):t.p,D,{horizontalAlign:D,verticalAlign:f,centerAngle:m,vertexAngle:b,wrapStrategy:p})}else if(t.v!=null){const m=this._getFontFormat(o);c=S2(m,this._localService).fontCache,a=this._getDocumentDataByStyle(t.v.toString(),m,{...u,textRotation:l})}return{documentModel:a,fontString:c,textRotation:l,wrapStrategy:p,verticalAlign:f,horizontalAlign:D,paddingData:F,fill:(E=o==null?void 0:o.bg)==null?void 0:E.rgb}}getDecomposedOffset(t,e){let s=d.searchArray(this._columnWidthAccumulation,t),i=0;s===-1||s===0?(s=0,i=t):i=t-this._columnWidthAccumulation[s-1];let o=d.searchArray(this._rowHeightAccumulation,e),a=0;return o===-1||o===0?(o=0,a=e):a=e-this._rowHeightAccumulation[o-1],{row:o,column:s,columnOffset:i,rowOffset:a}}_calculateOverflowCell(t,e,s){const{documentSkeleton:i,angle:o=0,horizontalAlign:a,wrapStrategy:c}=s,u=this.getCellData().getValue(t,e),{t:l=d.CellValueType.STRING}=u||{};if((c===d.WrapStrategy.OVERFLOW||c===d.WrapStrategy.UNSPECIFIED)&&l!==d.CellValueType.NUMBER&&l!==d.CellValueType.BOOLEAN&&a!==d.HorizontalAlign.JUSTIFIED){if(this.intersectMergeRange(t,e))return!0;let D=C2(i,o);if(!D)return!0;if(o!==0){const{startY:E,endY:m,startX:b,endX:S}=Q1(t,e,this.rowHeightAccumulation,this.columnWidthAccumulation,this.mergeData),v=S-b,y=m-E;D.height>y&&(D={width:y/Math.tan(Math.abs(o))+v,height:y})}const f=this.getOverflowPosition(D,a,t,e,this.getColumnCount()),{startColumn:p,endColumn:F}=f;if(p===F)return!0;this.appendToOverflowCache(t,e,p,F)}else if(c===d.WrapStrategy.WRAP&&o!==0){if(this.intersectMergeRange(t,e))return!0;const{startY:D,endY:f}=Q1(t,e,this.rowHeightAccumulation,this.columnWidthAccumulation,this.mergeData),p=f-D;i.getViewModel().getDataModel().updateDocumentDataPageSize(p),i.calculate();const F=C2(i,o);if(!F)return!0;const{startColumn:E,endColumn:m}=this.getOverflowPosition(F,a,t,e,this.getColumnCount());if(E===m)return!0;this.appendToOverflowCache(t,e,E,m)}}_getBounding(t,e,s){const i=t.length,o=e.length;if(!s)return{startRow:0,endRow:i-1,startColumn:0,endColumn:o-1};let a=-1,c=-1,u=-1,l=-1;const D=d.searchArray(t,Math.round(s.top)-this.columnHeaderHeightAndMarginTop),f=d.searchArray(t,Math.round(s.bottom)-this.columnHeaderHeightAndMarginTop);D===-1&&f===0?(a=-1,c=-1):(D===-1?a=0:a=D,f===Number.POSITIVE_INFINITY||f>=i?c=i-1:c=f);const p=d.searchArray(e,Math.round(s.left)-this.rowHeaderWidthAndMarginLeft),F=d.searchArray(e,Math.round(s.right)-this.rowHeaderWidthAndMarginLeft);return p===-1&&F===0?(u=-1,l=-1):(p===-1?u=0:u=p,F===Number.POSITIVE_INFINITY||F>=o?l=o-1:l=F),{startRow:a,endRow:c,startColumn:u,endColumn:l}}_generateRowMatrixCache(t,e,s){let i=0;const o=[],a=e;for(let c=0;c<t;c++){let u=s;if(a[c]!=null){const l=a[c];if(!l)continue;const{h:D=s,ah:f,ia:p}=l;(p==null||p===d.BooleanNumber.TRUE)&&typeof f=="number"?u=f:u=D,l.hd===d.BooleanNumber.TRUE&&(u=0)}i+=u,o.push(i)}return{rowTotalHeight:i,rowHeightAccumulation:o}}_generateColumnMatrixCache(t,e,s){let i=0;const o=[],a=e;for(let c=0;c<t;c++){let u=s;if(a[c]!=null){const l=a[c];if(!l)continue;l.w!=null&&(u=l.w),l.hd===d.BooleanNumber.TRUE&&(u=0)}i+=u,o.push(i)}return{columnTotalWidth:i,columnWidthAccumulation:o}}_getOverflowBound(t,e,s,i,o=d.HorizontalAlign.LEFT){var c,u;let a=0;if(e>s){const l=this._columnWidthAccumulation.length-1;for(let D=e;D>=s;D--){const f=D,p=(c=this._worksheet)==null?void 0:c.getCell(t,f);if(!d.isEmptyCell(p)&&f!==e||this.intersectMergeRange(t,f))return f===e?f:f+1>l?l:f+1;const{startX:F,endX:E}=Y1(t,f,this.rowHeightAccumulation,this.columnWidthAccumulation);if(o===d.HorizontalAlign.CENTER&&f===e?a+=(E-F)/2:a+=E-F,i<a)return f}return e}for(let l=e;l<=s;l++){const D=l,f=(u=this._worksheet)==null?void 0:u.getCell(t,D);if(!d.isEmptyCell(f)&&D!==e||this.intersectMergeRange(t,D))return D===e?D:D-1<0?0:D-1;const{startX:p,endX:F}=Y1(t,D,this.rowHeightAccumulation,this.columnWidthAccumulation);if(o===d.HorizontalAlign.CENTER&&D===e?a+=(F-p)/2:a+=F-p,i<a)return D}return s}intersectMergeRange(t,e){const s=this.dataMergeCache;for(const i of s){const{startRow:o,endRow:a,startColumn:c,endColumn:u}=i;if(t>=o&&t<=a&&e>=c&&e<=u)return!0}return!1}_calculateStylesCache(){const t=this._dataMergeCache,e=this._rowColumnSegment,s=this.columnWidthAccumulation,{startRow:i,endRow:o,startColumn:a,endColumn:c}=e;if(!(c===-1||o===-1)){for(const u of t)this._setCellCache(u.startRow,u.startColumn,!1);for(let u=i;u<=o;u++){for(let l=a;l<=c;l++)this._setCellCache(u,l,!1);for(let l=0;l<a;l++)this._setCellCache(u,l,!0);if(c!==0)for(let l=c+1;l<s.length;l++)this._setCellCache(u,l,!0)}}}_resetCache(){this._stylesCache={background:{},backgroundPositions:new d.ObjectMatrix,font:{},border:new d.ObjectMatrix},this._renderedCellCache=new d.ObjectMatrix,this._overflowCache.reset()}_makeDocumentSkeletonDirty(t,e){if(this._stylesCache.font==null)return;const s=Object.keys(this._stylesCache.font);for(const i of s){const o=this._stylesCache.font[i];if(o!=null&&o.getValue(t,e)){o.getValue(t,e).documentSkeleton.makeDirty(!0);return}}}_setCellCache(t,e,s){var T;const i=this._renderedCellCache.getValue(t,e);if(t===-1||e===-1)return!0;if(i===!1)return this._makeDocumentSkeletonDirty(t,e),!0;if(!this._worksheet||this._worksheet.getColVisible(e)===!1||this._worksheet.getRowVisible(t)===!1)return!0;const a=this._worksheet.getCell(t,e);if(!a)return!0;const c=this._stylesCache,u=this._styles.getStyleByCell(a);if(!s&&u&&u.bg&&u.bg.rgb){const B=u.bg.rgb;c.background[B]||(c.background[B]=new d.ObjectMatrix),c.background[B].setValue(t,e,B);const w=this.getCellByIndexWithNoHeader(t,e);(T=c.backgroundPositions)==null||T.setValue(t,e,w)}if(!s&&u&&u.bd&&(this._setBorderProps(t,e,J.TOP,u,c),this._setBorderProps(t,e,J.BOTTOM,u,c),this._setBorderProps(t,e,J.LEFT,u,c),this._setBorderProps(t,e,J.RIGHT,u,c),this._setBorderProps(t,e,J.TL_BR,u,c),this._setBorderProps(t,e,J.TL_BC,u,c),this._setBorderProps(t,e,J.TL_MR,u,c),this._setBorderProps(t,e,J.BL_TR,u,c),this._setBorderProps(t,e,J.ML_TR,u,c),this._setBorderProps(t,e,J.BC_TR,u,c)),i===!0)return this._makeDocumentSkeletonDirty(t,e),!0;if(d.isNullCell(a))return;const l=a&&this._getCellDocumentModel(a);if(l==null)return;const{documentModel:D,fontString:f,textRotation:p,wrapStrategy:F,verticalAlign:E,horizontalAlign:m}=l;if(D==null)return;const b=new M1(D);c.font[f]||(c.font[f]=new d.ObjectMatrix);const S=c.font[f];let{a:v}=p;const{v:y=d.BooleanNumber.FALSE}=p;if(y===d.BooleanNumber.TRUE&&(v=z1),b){const B=i2.create(b,this._localService);B.calculate();const O={documentSkeleton:B,angle:v,verticalAlign:E,horizontalAlign:m,wrapStrategy:F};S.setValue(t,e,O),this._calculateOverflowCell(t,e,O)}s?this._renderedCellCache.setValue(t,e,!0):this._renderedCellCache.setValue(t,e,!1)}_updateConfigAndGetDocumentModel(t,e,s){var o;if(!s||!((o=t.body)!=null&&o.dataStream))return;t.documentStyle||(t.documentStyle={}),t.documentStyle.renderConfig=s;const i=t.body.paragraphs||[];for(const a of i)a.paragraphStyle||(a.paragraphStyle={}),a.paragraphStyle.horizontalAlign=e;return new d.DocumentDataModel(t)}_getDocumentDataByStyle(t,e,s){const i=t.length,{textRotation:o={a:0,v:d.BooleanNumber.FALSE},paddingData:a={t:2,r:2,b:0,l:2},horizontalAlign:c=d.HorizontalAlign.UNSPECIFIED,verticalAlign:u=d.VerticalAlign.UNSPECIFIED,wrapStrategy:l=d.WrapStrategy.UNSPECIFIED}=s,{a:D=0,v:f=d.BooleanNumber.FALSE}=o,{t:p,r:F,b:E,l:m}=a||{};let b=0,S=D;f===d.BooleanNumber.TRUE&&(b=z1,S=z1);const v={id:"d",body:{dataStream:`${t}${d.DEFAULT_EMPTY_DOCUMENT_VALUE}`,textRuns:[{ts:e,st:0,ed:i}],paragraphs:[{startIndex:i,paragraphStyle:{horizontalAlign:c}}]},documentStyle:{pageSize:{width:Number.POSITIVE_INFINITY,height:Number.POSITIVE_INFINITY},marginTop:p,marginBottom:E,marginRight:F,marginLeft:m,renderConfig:{horizontalAlign:c,verticalAlign:u,centerAngle:b,vertexAngle:S,wrapStrategy:l}}};return new d.DocumentDataModel(v)}_setBorderProps(t,e,s,i,o){var l;const a=(l=i.bd)==null?void 0:l[s];if(!a||!o.border)return!0;const c=d.getColorStyle(a.cl)||G1,u=o.border;u.getValue(t,e)||u.setValue(t,e,{[s]:{}}),u.getValue(t,e)[s]={type:s,style:a.s,color:c}}_getFontFormat(t){if(!t)return{};const{ff:e,fs:s,it:i,bl:o,ul:a,st:c,ol:u,cl:l}=t,D={};return e&&(D.ff=e),s&&(D.fs=s),i&&(D.it=i),o&&(D.bl=o),a&&(D.ul=a),c&&(D.st=c),u&&(D.ol=u),l&&(D.cl=l),D}_getOtherStyle(t){if(!t)return{};const{tr:e,td:s,ht:i,vt:o,tb:a,pd:c}=t;return{textRotation:e,textDirection:s,horizontalAlign:i,verticalAlign:o,wrapStrategy:a,paddingData:c}}_getMergeCells(t,e){const s=this.columnWidthAccumulation.length-1;e?e={startRow:e.startRow,endRow:e.endRow,endColumn:s,startColumn:0}:e={startRow:0,startColumn:0,endRow:this.rowHeightAccumulation.length-1,endColumn:s};const{startRow:i,startColumn:o,endRow:a,endColumn:c}=e,u=[];for(let l=0;l<t.length;l++){const{startRow:D,endRow:f,startColumn:p,endColumn:F}=t[l];for(let E=i;E<=a;E++){let m=!1;for(let b=o;b<=c;b++)if(E>=D&&E<=f&&b>=p&&b<=F){u.push({startRow:D,endRow:f,startColumn:p,endColumn:F}),m=!0;break}if(m)break}}return u}}const Md="DefaultFontExtension",Pd=30;class It extends h2{constructor(){super(...arguments);h(this,"uKey",Md);h(this,"Z_INDEX",Pd);h(this,"changeFontColor",new d.ObjectMatrix)}get spreadsheet(){return this.parent}getDocuments(){const t=this.parent;return t==null?void 0:t.getDocuments()}setChangeFontColor(t,e,s){this.changeFontColor.setValue(t,e,s)}draw(t,e,s,i){const{stylesCache:o,dataMergeCache:a,overflowCache:c}=s,{font:u}=o;if(!s)return;const{rowHeightAccumulation:l,columnTotalWidth:D,columnWidthAccumulation:f,rowTotalHeight:p}=s;if(!l||!f||D===void 0||p===void 0)return;t.save();const F=this._getScale(e);u&&Object.keys(u).forEach(E=>{u[E].forValue((b,S,v)=>{const y=this.getCellIndex(b,S,l,f,a);let{startY:T,endY:B,startX:O,endX:w}=y;const{isMerged:P,isMergedMainCell:L,mergeInfo:A}=y;if(P||(L&&(T=A.startY,B=A.endY,O=A.startX,w=A.endX),!this.isRenderDiffRangesByRow(A.startRow,A.endRow,i)))return!0;const $=w-O,Y=B-T,x=c.getValue(b,S),{horizontalAlign:R}=v;if(t.save(),t.beginPath(),x){const{startColumn:k,startRow:X,endColumn:z,endRow:j}=x;k===z&&k===S?(t.rect(O+1/F,T+1/F,$-2/F,Y-2/F),t.clip(),t.clearRectForTexture(O+1/F,T+1/F,$-2/F,Y-2/F)):R===d.HorizontalAlign.CENTER?this._clipRectangle(t,X,j,k,z,F,l,f):R===d.HorizontalAlign.RIGHT?this._clipRectangle(t,X,b,k,S,F,l,f):this._clipRectangle(t,b,j,S,z,F,l,f)}else t.rect(O+1/F,T+1/F,$-2/F,Y-2/F),t.clip(),t.clearRectForTexture(O+1/F,T+1/F,$-2/F,Y-2/F);t.translate(O,T),this._renderDocuments(t,v,O,T,w,B,b,S),t.restore()})}),t.restore()}_renderDocuments(t,e,s,i,o,a,c,u){const l=this.getDocuments();if(l==null)throw new Error("documents is null");const{documentSkeleton:D,angle:f,wrapStrategy:p}=e,F=o-s,E=a-i;if(p===d.WrapStrategy.WRAP&&f===0?(D.getViewModel().getDataModel().updateDocumentDataPageSize(F),D.calculate()):D.getViewModel().getDataModel().updateDocumentDataPageSize(Number.POSITIVE_INFINITY),p!==d.WrapStrategy.WRAP){const m=C2(D),b=D.getViewModel().getDataModel().getSnapshot().documentStyle;if(m&&b){const{width:S}=m,{marginRight:v=0,marginLeft:y=0}=b;D.getViewModel().getDataModel().updateDocumentDataPageSize(S+y+v),D.calculate()}}D.makeDirty(!1),l.resize(F,E),l.changeSkeleton(D).render(t)}_clipRectangle(t,e,s,i,o,a,c,u){const l=c[e-1]||0,D=c[s]||c[c.length-1],f=u[i-1]||0,p=u[o]||u[u.length-1];t.rect(f,l,p-f,D-l),t.clip(),t.clearRectForTexture(f,l,p-f,D-l)}}R2.add(It);const Ld="DefaultRowHeaderLayoutExtension";class Rt extends h2{constructor(){super(...arguments);h(this,"uKey",Ld);h(this,"Z_INDEX",10)}draw(t,e,s){const{rowColumnSegment:i,rowHeaderWidth:o=0,columnHeaderHeight:a=0}=s,{startRow:c,endRow:u,startColumn:l,endColumn:D}=i;if(!s)return;const{rowHeightAccumulation:f,columnTotalWidth:p,columnWidthAccumulation:F,rowTotalHeight:E}=s;if(!f||!F||p===void 0||E===void 0)return;const m=this._getScale(e);t.fillStyle=l1([248,249,250]),t.fillRect(0,0,o,E),t.textAlign="center",t.textBaseline="middle",t.fillStyle=l1([0,0,0]),t.beginPath(),t.lineWidth=1,t.translateWithPrecisionRatio(a1,a1),t.strokeStyle=l1([217,217,217]),t.font=`13px ${Z2}`;let b=0;const S=f.length;for(let y=c-1;y<=u;y++){if(y<0||y>S-1)continue;const T=f[y];if(b===T)continue;t.moveTo(0,T),t.lineTo(o,T);const B=b+(T-b)/2;t.fillText(`${y+1}`,o/2,B+R6),b=T}const v=o-.5/m;t.moveTo(v,0),t.lineTo(v,E),t.stroke()}}r7.add(new Rt);var xt=(r=>(r[r.OFF=0]="OFF",r[r.ON=1]="ON",r))(xt||{});class $d extends u7{constructor(t,e){super(t,e);h(this,"_rowHeaderLayoutExtension");this._initialDefaultExtension(),this.makeDirty(!0)}get rowHeaderLayoutExtension(){return this._rowHeaderLayoutExtension}draw(t,e){const s=this.getSkeleton();if(!s)return;const i=this.getParentScale();s.calculateSegment(e);const o=s.rowColumnSegment;if(o.startRow===-1&&o.endRow===-1)return;const{columnHeaderHeight:a}=s;t.translateWithPrecision(0,a);const c=this.getExtensionsByOrder();for(const u of c)u.draw(t,i,s)}isHit(t){const e=this._getInverseCoord(t),s=this.getSkeleton();if(!s)return!1;const{rowHeaderWidth:i,columnHeaderHeight:o}=s;return e.x>=0&&e.x<=i&&e.y>o}_initialDefaultExtension(){r7.getData().forEach(t=>{this.register(t)}),this._rowHeaderLayoutExtension=this.getExtensionByKey("DefaultRowHeaderLayoutExtension")}}const Nd="__SHEET_EXTENSION_FONT_DOCUMENT_INSTANCE__";class kd extends a7{constructor(t,e,s=!0){super(t,e);h(this,"_backgroundExtension");h(this,"_borderExtension");h(this,"_fontExtension");h(this,"_cacheCanvas");h(this,"_refreshIncrementalState",!1);h(this,"_forceDirty",!1);h(this,"_overflowCacheRuntime",{});h(this,"_overflowCacheRuntimeRange",new d.ObjectMatrix);h(this,"_overflowCacheRuntimeTimeout",-1);h(this,"_forceDisableGridlines",!1);h(this,"_documents",new x2(Nd,void 0,{pageMarginLeft:0,pageMarginTop:0}));h(this,"isPrinting",!1);this._allowCache=s,this._allowCache&&(this._cacheCanvas=new o2,this.onIsAddedToParentObserver.add(i=>{var o;(o=i==null?void 0:i.getEngine())==null||o.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(t,e){const s=this.getSkeleton();if(!s)return;const i=this.getParentScale(),o=this._refreshIncrementalState?e==null?void 0:e.diffBounds.map(c=>s.getRowColumnSegmentByViewBound(c)):void 0,a=this.getExtensionsByOrder();for(const c of a)c.draw(t,i,s,o)}isHit(t){const e=this._getInverseCoord(t),s=this.getSkeleton();if(!s)return!1;const{rowHeaderWidth:i,columnHeaderHeight:o}=s;return e.x>i&&e.y>o}getNoMergeCellPositionByIndex(t,e){const s=this.getSkeleton();if(!s)return;const{rowHeightAccumulation:i,columnWidthAccumulation:o,rowHeaderWidth:a,columnHeaderHeight:c}=s;let{startY:u,endY:l,startX:D,endX:f}=Y1(t,e,i,o);return u+=c,l+=c,D+=a,f+=a,{startY:u,endY:l,startX:D,endX:f}}getScrollXYByRelativeCoords(t){const e=this.getParent();let s=0,i=0;const o=e.getActiveViewportByRelativeCoord(t);if(o){const a=o.actualScrollX||0,c=o.actualScrollY||0;s+=a,i+=c}return{x:s,y:i}}makeForceDirty(t=!0){this.makeDirty(t),this._forceDirty=t}setForceDisableGridlines(t){this._forceDisableGridlines=t}getSelectionBounding(t,e,s,i){var o;return(o=this.getSkeleton())==null?void 0:o.getMergeBounding(t,e,s,i)}render(t,e){if(!this.visible)return this.makeDirty(!1),this;const s=this.getSkeleton();if(!s)return;s.calculateWithoutClearingCache(e);const i=s.rowColumnSegment;if(i.startRow===-1&&i.endRow===-1||i.startColumn===-1&&i.endColumn===-1)return;t.save();const{a:o=1,d:a=1}=t.getTransform(),{rowHeaderWidth:c,columnHeaderHeight:u}=s;if(t.translateWithPrecision(c,u),this._drawAuxiliary(t,e),e&&this._allowCache===!0){const{viewBound:l,diffBounds:D,diffX:f,diffY:p,viewPortPosition:F,viewPortKey:E}=e;if(E==="viewMain"){const m=this._cacheCanvas.getContext();m.save();const{left:b,top:S,right:v,bottom:y}=F,T=v-b+c,B=y-S+u;if(D.length===0||f===0&&p===0||this._forceDirty)(this.isDirty()||this._forceDirty)&&(this._cacheCanvas.clear(),m.setTransform(t.getTransform()),this._draw(m,e),this._forceDirty=!1),this._applyCache(t,b,S,T,B,b,S,T,B);else{if(this.isDirty()){m.save(),m.globalCompositeOperation="copy",m.setTransform(1,0,0,1,0,0),m.drawImage(this._cacheCanvas.getCanvasEle(),f*o,p*a),m.restore(),this._refreshIncrementalState=!0,m.setTransform(t.getTransform());for(const O of D){const{left:w,right:P,bottom:L,top:A}=O;m.save(),m.beginPath(),m.rect(w-c-a1,A-u-a1,P-w+c+a1*2,L-A+u+a1*2),m.clip(),this._draw(m,{viewBound:e.viewBound,diffBounds:[O],diffX:e.diffX,diffY:e.diffY,viewPortPosition:e.viewPortPosition,viewPortKey:e.viewPortKey}),m.restore()}this._refreshIncrementalState=!1}this._applyCache(t,b,S,T,B,b,S,T,B)}m.restore()}else this._draw(t,e)}else this._draw(t,e);return t.restore(),this.makeDirty(!1),this}_resizeCacheCanvas(){const t=this._getAncestorSize();if(!t||this._cacheCanvas==null)return;const{width:e,height:s}=t;this._cacheCanvas.setSize(e,s),this.makeDirty(!0)}_applyCache(t,e=0,s=0,i=0,o=0,a=0,c=0,u=0,l=0){if(!t)return;const D=this._cacheCanvas.getPixelRatio(),f=this._cacheCanvas.getContext();f.save(),t.save(),t.setTransform(1,0,0,1,0,0),f.setTransform(1,0,0,1,0,0),t.drawImage(this._cacheCanvas.getCanvasEle(),e*D,s*D,i*D,o*D,a*D,c*D,u*D,l*D),t.restore(),f.restore()}_draw(t,e){this.draw(t,e)}_getAncestorSize(){const t=this._getAncestorParent();if(t){if(t.classType===N.ENGINE){const e=t.getCanvas();return{width:e.getWidth(),height:e.getHeight()}}if(t.classType===N.SCENE_VIEWER)return{width:t.width,height:t.height}}}_getAncestorParent(){let t=this.parent;for(;t;){if(t.classType===N.ENGINE||t.classType===N.SCENE_VIEWER)return t;t=(t==null?void 0:t.getParent)&&(t==null?void 0:t.getParent())}}_initialDefaultExtension(){R2.getData().sort(d.sortRules).forEach(t=>{this.register(new t)}),this._backgroundExtension=this.getExtensionByKey("DefaultBackgroundExtension"),this._borderExtension=this.getExtensionByKey("DefaultBorderExtension"),this._fontExtension=this.getExtensionByKey("DefaultFontExtension")}_addMakeDirtyToScroll(){this._hasScrollViewportOperator(this,t=>{t.onScrollBeforeObserver.add(()=>{this.makeDirty(!0)})})}_hasScrollViewportOperator(t,e){let s=t.getParent();for(;s;){if(s.classType===N.SCENE){const i=s.getViewports(),o=this._getHasScrollViewports(i);for(const a of o)a&&e(a)}s=(s==null?void 0:s.getParent)&&(s==null?void 0:s.getParent())}}_getHasScrollViewports(t){const e=[];for(const s of t)s.getScrollBar()&&e.push(s);return e}_drawAuxiliary(t,e){const s=this.getSkeleton();if(s==null)return;const{rowColumnSegment:i,dataMergeCache:o,overflowCache:a,stylesCache:c,showGridlines:u}=s,{border:l,backgroundPositions:D}=c,{startRow:f,endRow:p,startColumn:F,endColumn:E}=i;if(!s||u===d.BooleanNumber.FALSE||this._forceDisableGridlines)return;const{rowHeightAccumulation:m,columnTotalWidth:b,columnWidthAccumulation:S,rowTotalHeight:v}=s;if(!m||!S||b===void 0||v===void 0)return;t.save(),t.beginPath(),t.lineWidth=1,t.strokeStyle=l1([212,212,212]);const y=S.length,T=m.length,B=this._allowCache?f:0,O=this._allowCache?p:T-1,w=this._allowCache?E:y-1,P=this._allowCache?F:0,L=S[P-1]||0,A=m[B-1]||0,$=S[w],Y=m[O];t.translateWithPrecisionRatio(a1,a1),t.moveTo(L,A),t.lineTo($,A);for(let x=0;x<=O;x++){if(x<0||x>T-1)continue;const R=m[x];t.moveTo(L,R),t.lineTo($,R)}t.moveTo(L,A),t.lineTo(L,Y);for(let x=0;x<=E;x++){if(x<0||x>y-1)continue;const R=S[x];t.moveTo(R,A),t.lineTo(R,Y)}t.stroke(),t.closePath(),l==null||l.forValue((x,R,k)=>{if(!k)return!0;const X=s.getCellByIndexWithNoHeader(x,R);let{startY:z,endY:j,startX:q,endX:W}=X;const{isMerged:V,isMergedMainCell:Q,mergeInfo:e1}=X;if(V||(Q&&(z=e1.startY,j=e1.endY,q=e1.startX,W=e1.endX),!(e1.startRow>=B&&e1.endRow<=O)))return!0;for(const n1 in k){const{type:K}=k[n1];d4(t,K,{startX:q,startY:z,endX:W,endY:j})}}),t.closePath(),this._clearRectangle(t,m,S,o),this._clearRectangle(t,m,S,a.toNativeArray()),this._clearBackground(t,D),t.restore()}_clearRectangle(t,e,s,i){if(i!=null)for(const o of i){const{startRow:a,endRow:c,startColumn:u,endColumn:l}=o,D=e[a-1]||0,f=e[c]||e[e.length-1],p=s[u-1]||0,F=s[l]||s[s.length-1];t.clearRect(p,D,F-p,f-D),t.beginPath(),t.moveTo(p,D),t.lineTo(F,D),t.lineTo(F,f),t.lineTo(p,f),t.lineTo(p,D),t.stroke(),t.closePath()}}_clearBackground(t,e){e==null||e.forValue((s,i,o)=>{let{startY:a,endY:c,startX:u,endX:l}=o;const{isMerged:D,isMergedMainCell:f,mergeInfo:p}=o;if(D)return!0;f&&(a=p.startY,c=p.endY,u=p.startX,l=p.endX),t.clearRectForTexture(u,a,l-u+.5,c-a+.5)})}}function Y7(r,n,t){r.onPointerEnterObserver.add(e=>{n(r,e)}),r.onPointerLeaveObserver.add(e=>{t(r,e)})}class l7 extends I1{constructor(t,e){super(t);h(this,"_subScenes",new Map);h(this,"_activeSubScene");h(this,"_allowSelectedClipElement",!1);this._initialProps(e)}get classType(){return N.SCENE_VIEWER}render(t,e){var i;if(!this.visible)return this.makeDirty(!1),this;if(e){const{left:o,top:a,right:c,bottom:u}=e.viewBound;if(this.width+this.strokeWidth<o||c<0||this.height+this.strokeWidth<a||u<0)return this}const s=this.transform.getMatrix();return t.save(),t.transform(s[0],s[1],s[2],s[3],s[4],s[5]),(i=this._activeSubScene)==null||i.makeDirtyNoParent(!0).render(t),t.restore(),this.makeDirty(!1),this}getSubScenes(){return this._subScenes}getActiveSubScene(){return this._activeSubScene}getSubScene(t){for(const[e,s]of this._subScenes)if(e===t)return s}addSubScene(t){this._activeSubScene=t,this._subScenes.set(t.sceneKey,t),this.makeDirty()}removeSubScene(t){const e=this._subScenes.get(t);this._subScenes.delete(t),this._activeSubScene===e&&(this._activeSubScene=this._subScenes.values().next().value),this.makeDirty()}activeSubScene(t){if(t==null)return;const e=this._subScenes.get(t);this._activeSubScene!==e&&(this._activeSubScene=e,this.makeDirty())}enableSelectedClipElement(){this._allowSelectedClipElement=!0}disableSelectedClipElement(){this._allowSelectedClipElement=!1}allowSelectedClipElement(){return this._allowSelectedClipElement}pick(t){var i;if(this._activeSubScene===void 0)return;const s=this.transform.clone().invert().applyPoint(t);return(i=this._activeSubScene)==null?void 0:i.pick(s)}dispose(){super.dispose(),this._subScenes.forEach(t=>{t.dispose()})}_initialProps(t){if(!t)return;const e=Object.keys(t);if(e.length===0)return;const s={};let i=!1;e.forEach(o=>{if(t[o]===void 0)return!0;s[o]=t[o],i=!0}),i&&this.transformByState(s),this.makeDirty(!0)}}const Mt=["dataArray"];class D1 extends c2{constructor(t,e){super(t,e);h(this,"_dataArray",[]);h(this,"_pathLength",0);h(this,"_selfRectCache",{left:0,top:0,width:0,height:0});h(this,"_reCalculateCache",!0);e!=null&&e.data?this._dataArray=D1.parsePathData(e.data):e!=null&&e.dataArray&&(this._dataArray=e.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:o}=s;if(i===i1.resize||i===i1.all){this._reCalculateCache=!0;const{left:a,top:c,width:u,height:l}=this._getSelfRect(),{width:D,height:f}=o;let p,F;D?p=this.width-D:p=0,f?F=this.height-f:F=0;const E=p/u,m=F/l;this.scaleX+=E,this.scaleY+=m,this.left=this.left-a*E,this.top=this.top-c*m,this._setTransForm()}})}get dataArray(){return this._dataArray}static drawWith(t,e){const s=e.dataArray;if(s){t.beginPath();for(let i=0;i<s.length;i++){const o=s[i].command,a=s[i].points;switch(o){case"L":t.lineTo(a[0],a[1]);break;case"M":t.moveTo(a[0],a[1]);break;case"C":t.bezierCurveTo(a[0],a[1],a[2],a[3],a[4],a[5]);break;case"Q":t.quadraticCurveTo(a[0],a[1],a[2],a[3]);break;case"A":{const c=a[0],u=a[1],l=a[2],D=a[3],f=a[4],p=a[5],F=a[6],E=a[7],m=l>D?l:D,b=l>D?1:l/D,S=l>D?D/l:1;t.translate(c,u),t.rotate(F),t.scale(b,S),t.arc(0,0,m,f,f+p,!!(1-E)),t.scale(1/b,1/S),t.rotate(-F),t.translate(-c,-u);break}case"z":t.closePath();break}}this._renderPaintInOrder(t,e)}}static getLineLength(t,e,s,i){return Math.sqrt((s-t)*(s-t)+(i-e)*(i-e))}static getPointOnLine(t,e,s,i,o,a,c){a===void 0&&(a=e),c===void 0&&(c=s);const u=(o-s)/(i-e+1e-8);let l=Math.sqrt(t*t/(1+u*u));i<e&&(l*=-1);let D=u*l,f;if(i===e)f={x:a,y:c+D};else if((c-s)/(a-e+1e-8)===u)f={x:a+l,y:c+D};else{const p=this.getLineLength(e,s,i,o);let F=(a-e)*(i-e)+(c-s)*(o-s);F/=p*p;const E=e+F*(i-e),m=s+F*(o-s),b=this.getLineLength(a,c,E,m),S=Math.sqrt(t*t-b*b);l=Math.sqrt(S*S/(1+u*u)),i<e&&(l*=-1),D=u*l,f={x:E+l,y:m+D}}return f}static getPointOnCubicBezier(t,e,s,i,o,a,c,u,l){function D(b){return b*b*b}function f(b){return 3*b*b*(1-b)}function p(b){return 3*b*(1-b)*(1-b)}function F(b){return(1-b)*(1-b)*(1-b)}const E=u*D(t)+a*f(t)+i*p(t)+e*F(t),m=l*D(t)+c*f(t)+o*p(t)+s*F(t);return{x:E,y:m}}static getPointOnQuadraticBezier(t,e,s,i,o,a,c){function u(F){return F*F}function l(F){return 2*F*(1-F)}function D(F){return(1-F)*(1-F)}const f=a*u(t)+i*l(t)+e*D(t),p=c*u(t)+o*l(t)+s*D(t);return{x:f,y:p}}static getPointOnEllipticalArc(t,e,s,i,o,a){const c=Math.cos(a),u=Math.sin(a),l={x:s*Math.cos(o),y:i*Math.sin(o)};return{x:t+(l.x*c-l.y*u),y:e+(l.x*u+l.y*c)}}static parsePathData(t){if(!t)return[];let e=t;const s=["m","M","l","L","v","V","h","H","z","Z","c","C","q","Q","t","T","s","S","a","A"];e=e.replace(new RegExp(" ","g"),",");for(let f=0,p=s.length;f<p;f++)e=e.replace(new RegExp(s[f],"g"),`|${s[f]}`);const i=e.split("|"),o=[],a=[];let c=0,u=0;const l=/([-+]?((\d+\.\d+)|((\d+)|(\.\d+)))(?:e[-+]?\d+)?)/gi;let D;for(let f=1,p=i.length;f<p;f++){let F=i[f],E=F.charAt(0);for(F=F.slice(1),a.length=0;D=l.exec(F);)a.push(D[0]);const m=[];for(let b=0,S=a.length;b<S;b++){if(a[b]==="00"){m.push(0,0);continue}const v=Number.parseFloat(a[b]);isNaN(v)?m.push(0):m.push(v)}for(;m.length>0&&!isNaN(m[0]);){let b,S=[];const v=c,y=u;let T,B,O,w,P,L,A,$,Y,x;switch(E){case"l":c+=m.shift()||0,u+=m.shift()||0,b="L",S.push(c,u);break;case"L":c=m.shift()||0,u=m.shift()||0,S.push(c,u);break;case"m":{const R=m.shift()||0,k=m.shift()||0;if(c+=R,u+=k,b="M",o.length>2&&o[o.length-1].command==="z"){for(let X=o.length-2;X>=0;X--)if(o[X].command==="M"){c=o[X].points[0]+R,u=o[X].points[1]+k;break}}S.push(c,u),E="l";break}case"M":c=m.shift()||0,u=m.shift()||0,b="M",S.push(c,u),E="L";break;case"h":c+=m.shift()||0,b="L",S.push(c,u);break;case"H":c=m.shift()||0,b="L",S.push(c,u);break;case"v":u+=m.shift()||0,b="L",S.push(c,u);break;case"V":u=m.shift()||0,b="L",S.push(c,u);break;case"C":S.push(m.shift()||0,m.shift()||0,m.shift()||0,m.shift()||0),c=m.shift()||0,u=m.shift()||0,S.push(c,u);break;case"c":S.push(c+(m.shift()||0),u+(m.shift()||0),c+(m.shift()||0),u+(m.shift()||0)),c+=m.shift()||0,u+=m.shift()||0,b="C",S.push(c,u);break;case"S":B=c,O=u,T=o[o.length-1],T.command==="C"&&(B=c+(c-T.points[2]),O=u+(u-T.points[3])),S.push(B,O,m.shift()||0,m.shift()||0),c=m.shift()||0,u=m.shift()||0,b="C",S.push(c,u);break;case"s":B=c,O=u,T=o[o.length-1],T.command==="C"&&(B=c+(c-T.points[2]),O=u+(u-T.points[3])),S.push(B,O,c+(m.shift()||0),u+(m.shift()||0)),c+=m.shift()||0,u+=m.shift()||0,b="C",S.push(c,u);break;case"Q":S.push(m.shift()||0,m.shift()||0),c=m.shift()||0,u=m.shift()||0,S.push(c,u);break;case"q":S.push(c+(m.shift()||0),u+(m.shift()||0)),c+=m.shift()||0,u+=m.shift()||0,b="Q",S.push(c,u);break;case"T":B=c,O=u,T=o[o.length-1],T.command==="Q"&&(B=c+(c-T.points[0]),O=u+(u-T.points[1])),c=m.shift()||0,u=m.shift()||0,b="Q",S.push(B,O,c,u);break;case"t":B=c,O=u,T=o[o.length-1],T.command==="Q"&&(B=c+(c-T.points[0]),O=u+(u-T.points[1])),c+=m.shift()||0,u+=m.shift()||0,b="Q",S.push(B,O,c,u);break;case"A":w=m.shift()||0,P=m.shift()||0,L=m.shift()||0,A=m.shift()||0,$=m.shift()||0,Y=c,x=u,c=m.shift()||0,u=m.shift()||0,b="A",S=this.convertEndpointToCenterParameterization(Y,x,c,u,A,$,w,P,L);break;case"a":w=m.shift()||0,P=m.shift()||0,L=m.shift()||0,A=m.shift()||0,$=m.shift()||0,Y=c,x=u,c+=m.shift()||0,u+=m.shift()||0,b="A",S=this.convertEndpointToCenterParameterization(Y,x,c,u,A,$,w,P,L);break}o.push({command:b||E,points:S,start:{x:v,y},pathLength:this.calcLength(v,y,b||E,S)})}(E==="z"||E==="Z")&&o.push({command:"z",points:[],start:{x:0,y:0},pathLength:0})}return o}static calcLength(t,e,s,i){let o,a,c,u;const l=D1;switch(s){case"L":return l.getLineLength(t,e,i[0],i[1]);case"C":for(o=0,a=l.getPointOnCubicBezier(0,t,e,i[0],i[1],i[2],i[3],i[4],i[5]),u=.01;u<=1;u+=.01)c=l.getPointOnCubicBezier(u,t,e,i[0],i[1],i[2],i[3],i[4],i[5]),o+=l.getLineLength(a.x,a.y,c.x,c.y),a=c;return o;case"Q":for(o=0,a=l.getPointOnQuadraticBezier(0,t,e,i[0],i[1],i[2],i[3]),u=.01;u<=1;u+=.01)c=l.getPointOnQuadraticBezier(u,t,e,i[0],i[1],i[2],i[3]),o+=l.getLineLength(a.x,a.y,c.x,c.y),a=c;return o;case"A":{o=0;const D=i[4],f=i[5],p=i[4]+f;let F=Math.PI/180;if(Math.abs(D-p)<F&&(F=Math.abs(D-p)),a=l.getPointOnEllipticalArc(i[0],i[1],i[2],i[3],D,0),f<0)for(u=D-F;u>p;u-=F)c=l.getPointOnEllipticalArc(i[0],i[1],i[2],i[3],u,0),o+=l.getLineLength(a.x,a.y,c.x,c.y),a=c;else for(u=D+F;u<p;u+=F)c=l.getPointOnEllipticalArc(i[0],i[1],i[2],i[3],u,0),o+=l.getLineLength(a.x,a.y,c.x,c.y),a=c;return c=l.getPointOnEllipticalArc(i[0],i[1],i[2],i[3],p,0),o+=l.getLineLength(a.x,a.y,c.x,c.y),o}}return 0}static convertEndpointToCenterParameterization(t,e,s,i,o,a,c,u,l){const D=l*(Math.PI/180),f=Math.cos(D)*(t-s)/2+Math.sin(D)*(e-i)/2,p=-1*Math.sin(D)*(t-s)/2+Math.cos(D)*(e-i)/2,F=f*f/(c*c)+p*p/(u*u);F>1&&(c*=Math.sqrt(F),u*=Math.sqrt(F));let E=Math.sqrt((c*c*(u*u)-c*c*(p*p)-u*u*(f*f))/(c*c*(p*p)+u*u*(f*f)));o===a&&(E*=-1),isNaN(E)&&(E=0);const m=E*c*p/u,b=E*-u*f/c,S=(t+s)/2+Math.cos(D)*m-Math.sin(D)*b,v=(e+i)/2+Math.sin(D)*m+Math.cos(D)*b,y=A=>Math.sqrt(A[0]*A[0]+A[1]*A[1]),T=(A,$)=>(A[0]*$[0]+A[1]*$[1])/(y(A)*y($)),B=(A,$)=>(A[0]*$[1]<A[1]*$[0]?-1:1)*Math.acos(T(A,$)),O=B([1,0],[(f-m)/c,(p-b)/u]),w=[(f-m)/c,(p-b)/u],P=[(-1*f-m)/c,(-1*p-b)/u];let L=B(w,P);return T(w,P)<=-1&&(L=Math.PI),T(w,P)>=1&&(L=0),a===0&&L>0&&(L-=2*Math.PI),a===1&&L<0&&(L+=2*Math.PI),[S,v,c,u,O,L,D,a]}toJson(){const t={};return Mt.forEach(e=>{this[e]&&(t[e]=this[e])}),{...super.toJson(),...t}}getState(){const{left:t,top:e,width:s,height:i}=this.getRect();return{left:t,top:e,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:t,top:e,width:s,height:i}=this._getSelfRect();return{left:t*this.scaleX+this.left,top:e*this.scaleY+this.top,width:s*this.scaleX,height:i*this.scaleY}}getLength(){return this._pathLength}getPointAtLength(t){let e,s=0;const i=this.dataArray.length;if(!i)return null;for(;s<i&&t>this.dataArray[s].pathLength;)t-=this.dataArray[s].pathLength,++s;if(s===i)return e=this.dataArray[s-1].points.slice(-2),{x:e[0],y:e[1]};if(t<.01)return e=this.dataArray[s].points.slice(0,2),{x:e[0],y:e[1]};const o=this.dataArray[s],a=o.points;switch(o.command){case"L":return D1.getPointOnLine(t,o.start.x,o.start.y,a[0],a[1]);case"C":return D1.getPointOnCubicBezier(t/o.pathLength,o.start.x,o.start.y,a[0],a[1],a[2],a[3],a[4],a[5]);case"Q":return D1.getPointOnQuadraticBezier(t/o.pathLength,o.start.x,o.start.y,a[0],a[1],a[2],a[3]);case"A":{const c=a[0],u=a[1],l=a[2],D=a[3];let f=a[4];const p=a[5],F=a[6];return f+=p*t/o.pathLength,D1.getPointOnEllipticalArc(c,u,l,D,f,F)}}return null}_draw(t){D1.drawWith(t,this)}_setFixBoundingBox(){const{left:t,top:e,width:s,height:i}=this._getSelfRect(),o=this.width/s,a=this.height/i;this.left=this.left-t*o,this.top=this.top-e*a,this.scaleX=o,this.scaleY=a,this.width=s,this.height=i,this._setTransForm()}_getSelfRect(){if(!this._reCalculateCache)return this._selfRectCache;let t=[];this.dataArray.forEach(l=>{if(l.command==="A"){const D=l.points[4],f=l.points[5],p=l.points[4]+f;let F=Math.PI/180;if(Math.abs(D-p)<F&&(F=Math.abs(D-p)),f<0)for(let E=D-F;E>p;E-=F){const m=D1.getPointOnEllipticalArc(l.points[0],l.points[1],l.points[2],l.points[3],E,0);t.push(m.x,m.y)}else for(let E=D+F;E<p;E+=F){const m=D1.getPointOnEllipticalArc(l.points[0],l.points[1],l.points[2],l.points[3],E,0);t.push(m.x,m.y)}}else if(l.command==="C")for(let D=0;D<=1;D+=.01){const f=D1.getPointOnCubicBezier(D,l.start.x,l.start.y,l.points[0],l.points[1],l.points[2],l.points[3],l.points[4],l.points[5]);t.push(f.x,f.y)}else t=t.concat(l.points)});let e=t[0],s=t[0],i=t[1],o=t[1],a,c;for(let l=0;l<t.length/2;l++)a=t[l*2],c=t[l*2+1],isNaN(a)||(e=Math.min(e,a),s=Math.max(s,a)),isNaN(c)||(i=Math.min(i,c),o=Math.max(o,c));const u={left:e,top:i,width:s-e,height:o-i};return this._selfRectCache=u,u}}var Pt=(r=>(r.LEFT="__slideNavigationLeft__",r.RIGHT="__slideNavigationRight__",r))(Pt||{});const z7="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 Hd extends l7{constructor(){super(...arguments);h(this,"onSlideChangePageByNavigationObservable",new d.Observable);h(this,"_navigationEnabled",!1)}activeFirstPage(){const e=this.getSubScenes().keys().next().value;e!=null&&this.changePage(e)}addPage(t){const e=t.sceneKey;this.getSubScene(e)==null&&(this.addSubScene(t),this.addNavigation())}changePage(t){t!==null&&(this.removeNavigation(),this.activeSubScene(t),this.addNavigation())}hasPage(t){return this.getSubScene(t)}addNavigation(){const t=this.getActiveSubScene();if(t==null||this._navigationEnabled===!1)return;const e=new D1("__slideNavigationLeft__",{data:z7,width:60,height:60,left:90,top:(this.height-30)/2,fill:this._getArrowColor(),flipX:!0}),s=new D1("__slideNavigationRight__",{data:z7,width:60,height:60,left:this.width-90,top:(this.height-30)/2,fill:this._getArrowColor()}),i=(a,c)=>{a.setCursor(r1.POINTER),a.setProps({fill:this._getArrowColor(!0)})},o=(a,c)=>{a.setCursor(r1.DEFAULT),a.setProps({fill:this._getArrowColor()})};Y7(e,i,o),Y7(s,i,o),this._addNavTrigger(e,s),t.addObjects([e,s],7)}removeNavigation(){var e,s;const t=this.getActiveSubScene();t==null||this._navigationEnabled===!1||((e=t.getObject("__slideNavigationLeft__"))==null||e.dispose(),(s=t.getObject("__slideNavigationRight__"))==null||s.dispose())}enableNav(){this._navigationEnabled=!0}disableNav(){this._navigationEnabled=!1}hiddenNav(){var e,s;const t=this.getActiveSubScene();t==null||this._navigationEnabled===!1||((e=t.getObject("__slideNavigationLeft__"))==null||e.hide(),(s=t.getObject("__slideNavigationRight__"))==null||s.hide())}showNav(){var e,s;const t=this.getActiveSubScene();t==null||this._navigationEnabled===!1||((e=t.getObject("__slideNavigationLeft__"))==null||e.show(),(s=t.getObject("__slideNavigationRight__"))==null||s.show())}renderToThumb(t,e,s=1,i=1){const o=this.getSubScene(e);o!=null&&(t.save(),t.scale(s,i),o.makeDirtyNoParent(!0).render(t),t.restore())}_getSubScenesIndex(t){if(t==null)return;const e=Array.from(this.getSubScenes()),s=e.length;let i=0;for(let c=0;c<s;c++){const[u]=e[c];if(t===u){i=c;break}}let o=i+1,a=i-1;return o=o>=s?0:o,a=a<0?s-1:a,{nextScene:e[o][1],previousScene:e[a][1]}}_addNavTrigger(t,e){t.onPointerDownObserver.add(()=>{var o;const s=this._getSubScenesIndex((o=this.getActiveSubScene())==null?void 0:o.sceneKey),i=s==null?void 0:s.previousScene.sceneKey;this.changePage(i),this.onSlideChangePageByNavigationObservable.notifyObservers(i)}),e.onPointerDownObserver.add(()=>{var o;const s=this._getSubScenesIndex((o=this.getActiveSubScene())==null?void 0:o.sceneKey),i=s==null?void 0:s.nextScene.sceneKey;this.changePage(i),this.onSlideChangePageByNavigationObservable.notifyObservers(i)})}_getArrowColor(t=!1){return t?l1(d.COLORS.white,.8):l1(d.COLORS.white,.5)}}class Xd extends I1{constructor(n,t=s=>{},e){super(n),this._render=t,this._isHitCustom=e}toJson(){return{...super.toJson()}}render(n,t){if(!this.visible)return this.makeDirty(!1),this;if(t&&!this.isInGroup){const{top:s,left:i,bottom:o,right:a}=t.viewBound;if(this.width+this.strokeWidth<i||a<0||this.height+this.strokeWidth<s||o<0)return this}const e=this.transform.getMatrix();return n.save(),n.transform(e[0],e[1],e[2],e[3],e[4],e[5]),this._render(n),n.restore(),this.makeDirty(!1),this}isHit(n){return this._isHitCustom?this._isHitCustom(n):super.isHit(n)}}class Yd extends d.Disposable{constructor(){super(...arguments);h(this,"onInputChangedObservable",new d.Observable);h(this,"onTransformChangeObservable",new d.Observable);h(this,"_scenes",{});h(this,"_activeScene",null)}get classType(){return N.ENGINE}get activeScene(){return this._activeScene}get width(){return 0}get height(){return 0}getScenes(){return this._scenes}getScene(t){return this._scenes[t]}hasScene(t){return t in this._scenes}addScene(t){const e=t.sceneKey;return this.hasScene(e)&&console.warn("Scenes has similar key, it will be covered"),this._scenes[e]=t,t}setActiveScene(t){const e=this.getScene(t);return e&&(this._activeScene=e),e}setRemainCapture(){}hasActiveScene(){return this._activeScene!=null}dispose(){super.dispose();const t=this.getScenes();Object.keys(t).forEach(s=>{t[s].dispose()})}remainScene(t){const e=this.getScenes();if(e[t]){const s=e[t];return delete e[t],s}}}class K2 extends Yd{constructor(t=1,e=1,s,i){super();h(this,"renderEvenInBackground",!0);h(this,"onBeginFrameObservable",new d.Observable);h(this,"onEndFrameObservable",new d.Observable);h(this,"_container");h(this,"_canvas");h(this,"_canvasEle");h(this,"_renderingQueueLaunched",!1);h(this,"_activeRenderLoops",new Array);h(this,"_renderFunction",()=>{});h(this,"_requestNewFrameHandler",-1);h(this,"_frameId",-1);h(this,"_usingSafari",t4());h(this,"_fps",60);h(this,"_deltaTime",0);h(this,"_performanceMonitor",new E4);h(this,"_pointerMoveEvent");h(this,"_pointerDownEvent");h(this,"_pointerUpEvent");h(this,"_pointerBlurEvent");h(this,"_pointerWheelEvent");h(this,"_pointerEnterEvent");h(this,"_pointerLeaveEvent");h(this,"_remainCapture",-1);h(this,"pointer",{});h(this,"_mouseId",-1);h(this,"_isUsingFirefox",navigator.userAgent.indexOf("Firefox")!==-1);this._canvas=new o2({mode:i,width:t,height:e,pixelRatio:s}),this._canvasEle=this._canvas.getCanvasEle(),this._handleKeyboardAction(),this._handlePointerAction()}get width(){return this._canvas.getWidth()}get height(){return this._canvas.getHeight()}get requestNewFrameHandler(){return this._requestNewFrameHandler}get frameId(){return this._frameId}setCanvasCursor(t){const e=this.getCanvas().getCanvasEle();e.style.cursor=t}clearCanvas(){this.getCanvas().clear()}getCanvas(){return this._canvas}getCanvasElement(){return this._canvas.getCanvasEle()}setRemainCapture(){this._canvasEle.setPointerCapture(this._remainCapture)}getPixelRatio(){return this._canvas.getPixelRatio()}setContainer(t,e=!0){if(this._container=t,this._container.appendChild(this._canvasEle),e){this.resize();let s;const i=new ResizeObserver(()=>{s||(s=window.requestIdleCallback(()=>{this.resize(),s=void 0}))});i.observe(this._container),this.disposeWithMe(d.toDisposable(()=>{i.unobserve(this._container)}))}}resize(){if(!this._container)return;const{width:t,height:e}=c4(this._container);this.resizeBySize(t,e)}resizeBySize(t,e){const s=this.width,i=this.height;this._canvas.setSize(t,e),this.onTransformChangeObservable.notifyObservers({type:i1.resize,value:{width:t,height:e},preValue:{width:s,height:i}})}dispose(){super.dispose();const t=F6();this._canvasEle.removeEventListener(`${t}leave`,this._pointerLeaveEvent),this._canvasEle.removeEventListener(`${t}enter`,this._pointerEnterEvent),this._canvasEle.removeEventListener(`${t}move`,this._pointerMoveEvent),this._canvasEle.removeEventListener(`${t}down`,this._pointerDownEvent),this._canvasEle.removeEventListener(`${t}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(t){this._activeRenderLoops.indexOf(t)===-1&&(this._activeRenderLoops.push(t),this._renderingQueueLaunched||(this._renderingQueueLaunched=!0,this._renderFunction=this._renderLoop.bind(this),this._requestNewFrameHandler=b2(this._renderFunction)))}stopRenderLoop(t){if(!t){this._activeRenderLoops.length=0,this._cancelFrame();return}const e=this._activeRenderLoops.indexOf(t);e>=0&&(this._activeRenderLoops.splice(e,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 t=0;t<this._activeRenderLoops.length;t++){const e=this._activeRenderLoops[t];e()}}_cancelFrame(){if(this._renderingQueueLaunched&&this._requestNewFrameHandler){if(this._renderingQueueLaunched=!1,typeof window>"u"){if(typeof cancelAnimationFrame=="function")return cancelAnimationFrame(this._requestNewFrameHandler)}else{const{cancelAnimationFrame:t}=this._getHostWindow()||window;if(typeof t=="function")return t(this._requestNewFrameHandler)}return clearTimeout(this._requestNewFrameHandler)}}_getHostWindow(){var t,e;return typeof window>"u"?null:(e=(t=this._canvasEle)==null?void 0:t.ownerDocument)!=null&&e.defaultView?this._canvasEle.ownerDocument.defaultView:window}_renderLoop(){let t=!0;this.renderEvenInBackground||(t=!1),t&&(this.beginFrame(),this._renderFrame(),this.endFrame()),this._activeRenderLoops.length>0?this._requestNewFrameHandler=b2(this._renderFunction):this._renderingQueueLaunched=!1}_measureFps(){this._performanceMonitor.sampleFrame(),this._fps=this._performanceMonitor.averageFPS,this._deltaTime=this._performanceMonitor.instantaneousFrameTime||0}_handleKeyboardAction(){const t=s=>{const i=s;i.deviceType=d1.Keyboard,i.inputIndex=s.keyCode,i.previousState=0,i.currentState=1,this.onInputChangedObservable.notifyObservers(i)},e=s=>{const i=s;i.deviceType=d1.Keyboard,i.inputIndex=s.keyCode,i.previousState=1,i.currentState=0,this.onInputChangedObservable.notifyObservers(i)};this._canvasEle.addEventListener("keydown",t),this._canvasEle.addEventListener("keyup",e)}_handlePointerAction(){const t=F6();this._pointerMoveEvent=e=>{const s=this._getPointerType(e),i=this.pointer[M.Horizontal],o=this.pointer[M.Vertical],a=this.pointer[M.DeltaHorizontal],c=this.pointer[M.DeltaVertical];this.pointer[M.Horizontal]=e.clientX,this.pointer[M.Vertical]=e.clientY,this.pointer[M.DeltaHorizontal]=e.movementX,this.pointer[M.DeltaVertical]=e.movementY;const u=e;u.deviceType=s,i!==e.clientX&&(u.inputIndex=M.Horizontal,u.previousState=i,u.currentState=this.pointer[M.Horizontal],this.onInputChangedObservable.notifyObservers(u)),o!==e.clientY&&(u.inputIndex=M.Vertical,u.previousState=o,u.currentState=this.pointer[M.Vertical],this.onInputChangedObservable.notifyObservers(u)),this.pointer[M.DeltaHorizontal]!==0&&(u.inputIndex=M.DeltaHorizontal,u.previousState=a,u.currentState=this.pointer[M.DeltaHorizontal],this.onInputChangedObservable.notifyObservers(u)),this.pointer[M.DeltaVertical]!==0&&(u.inputIndex=M.DeltaVertical,u.previousState=c,u.currentState=this.pointer[M.DeltaVertical],this.onInputChangedObservable.notifyObservers(u)),!this._usingSafari&&e.button!==-1&&(u.inputIndex=e.button+2,u.previousState=this.pointer[e.button+2],this.pointer[e.button+2]=this.pointer[e.button+2]?0:1,u.currentState=this.pointer[e.button+2],this.onInputChangedObservable.notifyObservers(u))},this._pointerDownEvent=e=>{const s=e,i=this._getPointerType(s),o=this.pointer[M.Horizontal],a=this.pointer[M.Vertical],c=this.pointer[s.button+2];i===d1.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[M.Horizontal]=s.clientX,this.pointer[M.Vertical]=s.clientY,this.pointer[s.button+2]=1;const u=s;u.deviceType=i,o!==s.clientX&&(u.inputIndex=M.Horizontal,u.previousState=o,u.currentState=this.pointer[M.Horizontal],this.onInputChangedObservable.notifyObservers(u)),a!==s.clientY&&(u.inputIndex=M.Vertical,u.previousState=a,u.currentState=this.pointer[M.Vertical],this.onInputChangedObservable.notifyObservers(u)),u.inputIndex=s.button+2,u.previousState=c,u.currentState=this.pointer[s.button+2],this.onInputChangedObservable.notifyObservers(u)},this._pointerUpEvent=e=>{const s=e,i=this._getPointerType(s),o=this.pointer[M.Horizontal],a=this.pointer[M.Vertical],c=this.pointer[s.button+2];this.pointer[M.Horizontal]=s.clientX,this.pointer[M.Vertical]=s.clientY,this.pointer[s.button+2]=0;const u=s;u.deviceType=i,o!==s.clientX&&(u.inputIndex=M.Horizontal,u.previousState=o,u.currentState=this.pointer[M.Horizontal],this.onInputChangedObservable.notifyObservers(u)),a!==s.clientY&&(u.inputIndex=M.Vertical,u.previousState=a,u.currentState=this.pointer[M.Vertical],this.onInputChangedObservable.notifyObservers(u)),u.inputIndex=s.button+2,u.previousState=c,u.currentState=this.pointer[s.button+2],i===d1.Mouse&&this._mouseId>=0&&this._canvasEle.hasPointerCapture(this._mouseId)?(this._remainCapture=this._mouseId,this._canvasEle.releasePointerCapture(this._mouseId)):u.pointerId&&this._canvasEle.hasPointerCapture(u.pointerId)&&(this._remainCapture=u.pointerId,this._canvasEle.releasePointerCapture(u.pointerId)),this.onInputChangedObservable.notifyObservers(u),i!==d1.Mouse&&(this.pointer={})},this._pointerEnterEvent=e=>{const s=this._getPointerType(e),i=e;i.deviceType=s,i.currentState=2,this.onInputChangedObservable.notifyObservers(i)},this._pointerLeaveEvent=e=>{const s=this._getPointerType(e),i=e;i.deviceType=s,i.currentState=3,this.onInputChangedObservable.notifyObservers(i)},this._pointerBlurEvent=e=>{this._mouseId>=0&&this._canvasEle.hasPointerCapture(this._mouseId)&&(this._canvasEle.releasePointerCapture(this._mouseId),this._remainCapture=this._mouseId,this._mouseId=-1),this.pointer={}},this._pointerWheelEvent=e=>{const s=d1.Mouse,i=this.pointer[M.MouseWheelX],o=this.pointer[M.MouseWheelY],a=this.pointer[M.MouseWheelZ];this.pointer[M.MouseWheelX]=e.deltaX||0,this.pointer[M.MouseWheelY]=e.deltaY||e.wheelDelta||0,this.pointer[M.MouseWheelZ]=e.deltaZ||0;const c=e;c.deviceType=s,this.pointer[M.MouseWheelX]!==0&&(c.inputIndex=M.MouseWheelX,c.previousState=i,c.currentState=this.pointer[M.MouseWheelX],this.onInputChangedObservable.notifyObservers(c)),this.pointer[M.MouseWheelY]!==0&&(c.inputIndex=M.MouseWheelY,c.previousState=o,c.currentState=this.pointer[M.MouseWheelY],this.onInputChangedObservable.notifyObservers(c)),this.pointer[M.MouseWheelZ]!==0&&(c.inputIndex=M.MouseWheelZ,c.previousState=a,c.currentState=this.pointer[M.MouseWheelZ],this.onInputChangedObservable.notifyObservers(c))},this._canvasEle.addEventListener(`${t}enter`,this._pointerEnterEvent),this._canvasEle.addEventListener(`${t}leave`,this._pointerLeaveEvent),this._canvasEle.addEventListener(`${t}move`,this._pointerMoveEvent),this._canvasEle.addEventListener(`${t}down`,this._pointerDownEvent),this._canvasEle.addEventListener(`${t}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 t=!1;const e=()=>{};try{const s={passive:{get(){t=!0}}};this._canvasEle.addEventListener("test",e,s),this._canvasEle.removeEventListener("test",e,s)}catch{}return t}_getPointerType(t){let e=d1.Mouse;return(t.pointerType==="touch"||t.pointerType==="pen"||t.touches)&&(e=d1.Touch),e}}class Lt extends I1{constructor(t,...e){super(t);h(this,"_objects",[]);this.addObjects(...e)}get classType(){return N.GROUP}set cursor(t){this.setCursor(t)}addObjects(...t){for(const e of t)this.addObject(e)}addObject(t){let e=t;if(C6(t)){const s=this.getScene();if(e=s==null?void 0:s.getObject(t),!e)return;e.parent=this,e.isInGroup=!0,e.groupKey=this.oKey,this._objects.push(e)}else t.parent=this,t.isInGroup=!0,t.groupKey=this.oKey,this._objects.push(t)}removeObject(t){const e=this.getObjects(),s=e.length;if(C6(t))for(let i=0;i<s;i++){const o=e[i];if(o.oKey===t){e.splice(i,1),this.parent.removeObject(o);return}}else for(let i=0;i<s;i++){const o=e[i];if(o===t){e.splice(i,1),this.parent.removeObject(o);return}}}getObjectsByOrder(){const t=[];this._objects.sort(d.sortRules);for(const e of this._objects)!e.isInGroup&&e.visible&&t.push(e);return t}getObjects(){return this._objects}render(t,e){t.save();const s=this.transform.getMatrix();t.transform(s[0],s[1],s[2],s[3],s[4],s[5]),this._objects.sort(d.sortRules);for(const i of this._objects)i.render(t,this._transformBounds(e));t.restore()}resize(t,e){return this}scale(t,e){return this}skew(t,e){return this}flip(t,e){return this}isHit(t){return!0}pick(t){}dispose(){this.getObjects().forEach(t=>{t.dispose()}),super.dispose()}_transformBounds(t){return t}}class $t extends d.Disposable{constructor(t,e=[],s=1,i=!1){super();h(this,"_objects",[]);h(this,"_cacheCanvas");h(this,"_dirty",!0);this._scene=t,this._zIndex=s,this._allowCache=i,this.addObjects(e),this._allowCache&&this._initialCacheCanvas()}get scene(){return this._scene}get zIndex(){return this._zIndex}enableCache(){this._allowCache=!0,this._initialCacheCanvas()}disableCache(){var t;this._allowCache=!1,(t=this._cacheCanvas)==null||t.dispose(),this._cacheCanvas=null}isAllowCache(){return this._allowCache}getObjectsByOrder(){const t=[];this._objects.sort(d.sortRules);for(const e of this._objects)!e.isInGroup&&e.visible&&t.push(e);return t}getObjectsByOrderForPick(){const t=[];this._objects.sort(d.sortRules);for(const e of this._objects)e.classType!==N.GROUP&&e.visible&&t.push(e);return t}getObjects(){return this._objects}addObject(t){if(t.classType===N.GROUP){const e=t.getObjects();for(const s of e)this.scene.getObject(s.oKey)||(this._objects.push(s),this.scene.setObjectBehavior(s),s.layer=this)}return this._objects.push(t),this.scene.setObjectBehavior(t),this.scene.applyTransformer(t),t.layer=this,this}removeObject(t){const e=this.getObjects(),s=e.length;if(t instanceof I1){for(let i=0;i<s;i++)if(e[i]===t){e.splice(i,1);return}}else for(let i=0;i<s;i++)if(e[i].oKey===t){e.splice(i,1);return}}addObjects(t){return t.forEach(e=>{this.addObject(e)}),this}removeObjects(t){const e=this.getObjects(),s=e.length;for(let i=s-1;i>=0;i--){let o=e[i];const a=t.length;if(a===0)break;for(let c=0;c<a;c++){const u=t[c];if(o=u instanceof I1?o:o.oKey,o===u){e.splice(i,1);break}}}}makeDirty(t=!0){return this._dirty=t,this}isDirty(){return this._dirty}render(t,e=!1){var i;const s=t||((i=this._scene.getEngine())==null?void 0:i.getCanvas().getContext());if(this._allowCache&&this._cacheCanvas){if(this.isDirty()){const o=this._cacheCanvas.getContext();this._cacheCanvas.clear(),o.save(),o.setTransform(s.getTransform()),this._draw(o,e),o.restore()}this._applyCache(s)}else s.save(),this._draw(s,e),s.restore();return this.makeDirty(!1),this}_initialCacheCanvas(){this._cacheCanvas=new o2,this.disposeWithMe(d.toDisposable(this._scene.getEngine().onTransformChangeObservable.add(()=>{this._resizeCacheCanvas()})))}_draw(t,e){var s;(s=this._scene.getViewports())==null||s.forEach(i=>i.render(t,this.getObjectsByOrder(),e))}_applyCache(t){if(!t||this._cacheCanvas==null)return;const e=this._cacheCanvas.getWidth(),s=this._cacheCanvas.getHeight();t.drawImage(this._cacheCanvas.getCanvasEle(),0,0,e,s)}_resizeCacheCanvas(){var e;const t=this._scene.getEngine();(e=this._cacheCanvas)==null||e.setSize(t.width,t.height),this.makeDirty(!0)}clear(){this._objects=[]}dispose(){var t;super.dispose(),this.getObjects().forEach(e=>{e.dispose()}),this.clear(),(t=this._cacheCanvas)==null||t.dispose()}}const zd=["__SpreadsheetTransformerResizeLT__","__SpreadsheetTransformerResizeCT__","__SpreadsheetTransformerResizeRT__","__SpreadsheetTransformerResizeLM__","__SpreadsheetTransformerResizeRM__","__SpreadsheetTransformerResizeLB__","__SpreadsheetTransformerResizeCB__","__SpreadsheetTransformerResizeRB__"];class Wd extends d.Disposable{constructor(t,e){super();h(this,"hoverEnabled",!1);h(this,"hoverEnterFunc");h(this,"hoverLeaveFunc");h(this,"resizeEnabled",!0);h(this,"rotateEnabled",!0);h(this,"rotationSnaps",[]);h(this,"rotationSnapTolerance",5);h(this,"rotateAnchorOffset",50);h(this,"rotateSize",10);h(this,"rotateCornerRadius",10);h(this,"borderEnabled",!0);h(this,"borderStroke","rgb(97, 97, 97)");h(this,"borderStrokeWidth",1);h(this,"borderDash",[]);h(this,"borderSpacing",10);h(this,"anchorFill","rgb(255,255,255)");h(this,"anchorStroke","rgb(185,185,185)");h(this,"anchorStrokeWidth",1);h(this,"anchorSize",10);h(this,"anchorCornerRadius",10);h(this,"keepRatio",!0);h(this,"centeredScaling",!1);h(this,"enabledAnchors",[1,1,1,1,1,1,1,1]);h(this,"flipEnabled",!1);h(this,"ignoreStroke",!1);h(this,"boundBoxFunc");h(this,"useSingleNodeRotation",!1);h(this,"shouldOverdrawWholeArea",!1);h(this,"onChangeStartObservable",new d.Observable);h(this,"onChangingObservable",new d.Observable);h(this,"onChangeEndObservable",new d.Observable);h(this,"onClearControlObservable",new d.Observable);h(this,"onCreateControlObservable",new d.Observable);h(this,"_startOffsetX",-1);h(this,"_startOffsetY",-1);h(this,"_viewportScrollX",-1);h(this,"_viewportScrollY",-1);h(this,"_moveObserver");h(this,"_upObserver");h(this,"_cancelFocusObserver");h(this,"_transformerControlMap",new Map);h(this,"_selectedObjectMap",new Map);this._scene=t,this._initialProps(e)}getScene(){return this._scene}hideControl(){this._hideControl()}attachTo(t){if(t.isTransformer)return this.hoverEnabled&&(this.hoverEnterFunc&&t.onPointerEnterObserver.add(this.hoverEnterFunc),this.hoverLeaveFunc&&t.onPointerLeaveObserver.add(this.hoverLeaveFunc)),this.disposeWithMe(d.toDisposable(t.onPointerDownObserver.add((e,s)=>{const{offsetX:i,offsetY:o}=e;this._startOffsetX=i,this._startOffsetY=o;const a=this._getTopScene();if(!a)return;this._addCancelObserver(a),a.disableEvent();const c=r2.create(a);c.startScroll(i,o);const{scrollX:u,scrollY:l}=t2(c);this._viewportScrollX=u,this._viewportScrollY=l,this._updateActiveObjectList(t,e),this._moveObserver=a.onPointerMoveObserver.add(D=>{const{offsetX:f,offsetY:p}=D;this._moving(f,p,c),this._hideControl(),c.scrolling(f,p,()=>{this._moving(f,p,c)})}),this._upObserver=a.onPointerUpObserver.add(()=>{a.onPointerMoveObserver.remove(this._moveObserver),a.onPointerUpObserver.remove(this._upObserver),a.enableEvent(),this._updateControl(),c.dispose(),this.onChangeEndObservable.notifyObservers({objects:this._selectedObjectMap,type:2})}),s.stopPropagation()}))),t}dispose(){var t,e,s;(t=this._moveObserver)==null||t.dispose(),(e=this._upObserver)==null||e.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(t){if(!t)return;const e=Object.keys(t);e.length!==0&&e.forEach(s=>{if(t[s]===void 0)return!0;this[s]=t[s]})}_updateControlChildren(){this._updateControlIterator((t,e)=>{const{left:s,top:i,width:o,height:a,scaleX:c,scaleY:u}=e.getState();t.getObjects().forEach(D=>{const f=D.oKey,p=this._checkTransformerType(f);if(!p)return!0;if(p==="__SpreadsheetTransformerOutline__")D.transformByState(this._getOutlinePosition(o,a,c,u));else{const{left:F,top:E}=this._getRotateAnchorPosition(p,a,o);D.transformByState({left:F,top:E})}}),t.transformByState({left:s,top:i})})}_anchorMoving(t,e,s,i){const{scrollX:o,scrollY:a}=t2(i),c=e-this._viewportScrollX+o,u=s-this._viewportScrollY+a,l=c-this._startOffsetX,D=u-this._startOffsetY;this._selectedObjectMap.forEach(f=>{const{left:p,top:F,width:E,height:m}=f,b={};switch(t){case"__SpreadsheetTransformerResizeLT__":b.left=p+l,b.top=F+D,b.width=E-l,b.height=m-D;break;case"__SpreadsheetTransformerResizeCT__":b.top=F+D,b.height=m-D;break;case"__SpreadsheetTransformerResizeRT__":b.top=F+D,b.width=E+l,b.height=m-D;break;case"__SpreadsheetTransformerResizeLM__":b.left=p+l,b.width=E-l;break;case"__SpreadsheetTransformerResizeRM__":b.width=l+E;break;case"__SpreadsheetTransformerResizeLB__":b.left=p+l,b.width=E-l,b.height=m+D;break;case"__SpreadsheetTransformerResizeCB__":b.height=D+m;break;case"__SpreadsheetTransformerResizeRB__":b.width=l+E,b.height=D+m;break}f.transformByState(b)}),this._updateControlChildren(),this.onChangingObservable.notifyObservers({objects:this._selectedObjectMap,moveX:l,moveY:D,type:1}),this._startOffsetX=c,this._startOffsetY=u}_attachEventToAnchor(t,e="__SpreadsheetTransformerResizeLT__"){this.disposeWithMe(d.toDisposable(t.onPointerDownObserver.add((s,i)=>{const{offsetX:o,offsetY:a}=s;this._startOffsetX=o,this._startOffsetY=a;const c=this._getTopScene();if(c==null)return;c.disableEvent();const u=r2.create(c);u.startScroll(o,a);const{scrollX:l,scrollY:D}=t2(u);this._viewportScrollX=l,this._viewportScrollY=D;const f=this._getRotateAnchorCursor(e);this._moveObserver=c.onPointerMoveObserver.add(p=>{const{offsetX:F,offsetY:E}=p;this._anchorMoving(e,F,E,u),u.scrolling(F,E,()=>{this._anchorMoving(e,F,E,u)}),c.setCursor(f)}),this._upObserver=c.onPointerUpObserver.add(()=>{c.onPointerMoveObserver.remove(this._moveObserver),c.onPointerUpObserver.remove(this._upObserver),c.enableEvent(),c.resetCursor(),u.dispose(),this.onChangeEndObservable.notifyObservers({objects:this._selectedObjectMap,type:2})}),i.stopPropagation()})))}_attachEventToRotate(t){this.disposeWithMe(d.toDisposable(t.onPointerDownObserver.add((e,s)=>{const{offsetX:i,offsetY:o}=e;this._startOffsetX=i,this._startOffsetY=o;const a=this._getTopScene();a!=null&&(a.disableEvent(),this._viewportScrollX=scrollX,this._viewportScrollY=scrollY,this._upObserver=a.onPointerUpObserver.add(()=>{a.onPointerMoveObserver.remove(this._moveObserver),a.onPointerUpObserver.remove(this._upObserver),a.enableEvent()}),s.stopPropagation())})))}_getOutlinePosition(t,e,s,i){return{left:-this.borderSpacing-this.borderStrokeWidth,top:-this.borderSpacing-this.borderStrokeWidth,width:t+this.borderSpacing*2,height:e+this.borderSpacing*2}}_getRotateAnchorCursor(t){let e=r1.NORTH_WEST_RESIZE;switch(t){case"__SpreadsheetTransformerRotate__":e=r1.MOVE;break;case"__SpreadsheetTransformerRotateLine__":e=r1.MOVE;break;case"__SpreadsheetTransformerResizeLT__":break;case"__SpreadsheetTransformerResizeCT__":e=r1.NORTH_RESIZE;break;case"__SpreadsheetTransformerResizeRT__":e=r1.NORTH_EAST_RESIZE;break;case"__SpreadsheetTransformerResizeLM__":e=r1.WEST_RESIZE;break;case"__SpreadsheetTransformerResizeRM__":e=r1.EAST_RESIZE;break;case"__SpreadsheetTransformerResizeLB__":e=r1.SOUTH_WEST_RESIZE;break;case"__SpreadsheetTransformerResizeCB__":e=r1.SOUTH_RESIZE;break;case"__SpreadsheetTransformerResizeRB__":e=r1.SOUTH_EAST_RESIZE;break}return e}_getRotateAnchorPosition(t,e,s){let i=-this.anchorSize/2,o=-this.anchorSize/2;switch(t){case"__SpreadsheetTransformerRotate__":i=s/2-this.rotateSize/2,o=-this.rotateAnchorOffset-this.borderSpacing-this.borderStrokeWidth*2-this.rotateSize;break;case"__SpreadsheetTransformerRotateLine__":i=s/2,o=-this.rotateAnchorOffset-this.borderSpacing-this.borderStrokeWidth;break;case"__SpreadsheetTransformerResizeLT__":i+=-this.borderSpacing-this.borderStrokeWidth,o+=-this.borderSpacing-this.borderStrokeWidth;break;case"__SpreadsheetTransformerResizeCT__":i+=s/2,o+=-this.borderSpacing-this.borderStrokeWidth;break;case"__SpreadsheetTransformerResizeRT__":i+=s+this.borderSpacing-this.borderStrokeWidth,o+=-this.borderSpacing-this.borderStrokeWidth;break;case"__SpreadsheetTransformerResizeLM__":i+=-this.borderSpacing-this.borderStrokeWidth,o+=e/2;break;case"__SpreadsheetTransformerResizeRM__":i+=s+this.borderSpacing-this.borderStrokeWidth,o+=e/2;break;case"__SpreadsheetTransformerResizeLB__":i+=-this.borderSpacing-this.borderStrokeWidth,o+=e+this.borderSpacing-this.borderStrokeWidth;break;case"__SpreadsheetTransformerResizeCB__":i+=s/2,o+=e+this.borderSpacing-this.borderStrokeWidth;break;case"__SpreadsheetTransformerResizeRB__":i+=s+this.borderSpacing-this.borderStrokeWidth,o+=e+this.borderSpacing-this.borderStrokeWidth;break}return{left:i,top:o}}_createResizeAnchor(t,e,s){const{height:i,width:o,scaleX:a,scaleY:c}=e.getState(),{left:u,top:l}=this._getRotateAnchorPosition(t,i,o),D=this._getRotateAnchorCursor(t),f=new f1(`${t}_${s}`,{zIndex:s-1,fill:this.anchorFill,stroke:this.anchorStroke,strokeWidth:this.anchorStrokeWidth,width:this.anchorSize,height:this.anchorSize,radius:this.anchorCornerRadius,left:u,top:l});return this._attachHover(f,D,r1.DEFAULT),f}_checkTransformerType(t){if(t.indexOf("__SpreadsheetTransformerOutline__")>-1)return"__SpreadsheetTransformerOutline__";if(t.indexOf("__SpreadsheetTransformerRotate__")>-1)return"__SpreadsheetTransformerRotate__";if(t.indexOf("__SpreadsheetTransformerRotateLine__")>-1)return"__SpreadsheetTransformerRotateLine__";if(t.indexOf("__SpreadsheetTransformerResizeLT__")>-1)return"__SpreadsheetTransformerResizeLT__";if(t.indexOf("__SpreadsheetTransformerResizeCT__")>-1)return"__SpreadsheetTransformerResizeCT__";if(t.indexOf("__SpreadsheetTransformerResizeRT__")>-1)return"__SpreadsheetTransformerResizeRT__";if(t.indexOf("__SpreadsheetTransformerResizeLM__")>-1)return"__SpreadsheetTransformerResizeLM__";if(t.indexOf("__SpreadsheetTransformerResizeRM__")>-1)return"__SpreadsheetTransformerResizeRM__";if(t.indexOf("__SpreadsheetTransformerResizeLB__")>-1)return"__SpreadsheetTransformerResizeLB__";if(t.indexOf("__SpreadsheetTransformerResizeCB__")>-1)return"__SpreadsheetTransformerResizeCB__";if(t.indexOf("__SpreadsheetTransformerResizeRB__")>-1)return"__SpreadsheetTransformerResizeRB__"}_updateControlIterator(t){this._transformerControlMap.forEach((e,s)=>{const i=this._selectedObjectMap.get(s);if(!i)return!0;t(e,i)})}_updateControl(){this._updateControlIterator((t,e)=>{const{left:s,top:i}=e.getState();t.transformByState({left:s,top:i}),t.show(),t.makeDirty(!0)})}_hideControl(){this._transformerControlMap.forEach(t=>{t.hide(),t.makeDirty(!0)})}_attachHover(t,e,s){this.disposeWithMe(d.toDisposable(t.onPointerEnterObserver.add(()=>{t.cursor=e}))),this.disposeWithMe(d.toDisposable(t.onPointerLeaveObserver.add(()=>{t.cursor=s})))}_clearControl(){this._transformerControlMap.forEach(t=>{t.dispose()}),this._transformerControlMap.clear(),this.onClearControlObservable.notifyObservers(null)}_createControl(t){const{left:e,top:s,height:i,width:o,angle:a,scaleX:c,scaleY:u,skewX:l,skewY:D,flipX:f,flipY:p}=t.getState(),F=t.oKey,E=this._selectedObjectMap.size,m=[];if(this.borderEnabled){const v=new f1(`__SpreadsheetTransformerOutline___${E}`,{zIndex:E-1,evented:!1,strokeWidth:this.borderStrokeWidth,stroke:this.borderStroke,...this._getOutlinePosition(o,i,c,u)});m.push(v)}if(this.resizeEnabled){const{left:v,top:y}=this._getRotateAnchorPosition("__SpreadsheetTransformerRotateLine__",i,o),T=new f1(`__SpreadsheetTransformerRotateLine___${E}`,{zIndex:E-1,evented:!1,left:v,top:y,height:this.rotateAnchorOffset,width:1,strokeWidth:this.borderStrokeWidth,stroke:this.borderStroke}),{left:B,top:O}=this._getRotateAnchorPosition("__SpreadsheetTransformerRotate__",i,o),w=this._getRotateAnchorCursor("__SpreadsheetTransformerRotate__"),P=new f1(`__SpreadsheetTransformerRotate___${E}`,{zIndex:E-1,left:B,top:O,height:this.rotateSize,width:this.rotateSize,radius:this.rotateCornerRadius,strokeWidth:this.borderStrokeWidth*2,stroke:this.borderStroke});this._attachEventToRotate(P),this._attachHover(P,w,r1.DEFAULT),m.push(T,P)}if(this.resizeEnabled)for(let v=0,y=this.enabledAnchors.length;v<y;v++){if(this.enabledAnchors[v]!==1)continue;const B=zd[v],O=this._createResizeAnchor(B,t,E);this._attachEventToAnchor(O,B),m.push(O)}const b=new Lt(`__SpreadsheetTransformer___${E}`,...m);return b.zIndex=E,b.evented=!1,b.transformByState({left:e,top:s}),this.getScene().addObject(b,2),this._transformerControlMap.set(F,b),this.onCreateControlObservable.notifyObservers(b),b}_getTopScene(){var e;return(e=this.getScene().getEngine())==null?void 0:e.activeScene}_moving(t,e,s){const{scrollX:i,scrollY:o}=t2(s),a=t-this._viewportScrollX+i,c=e-this._viewportScrollY+o,u=a-this._startOffsetX,l=c-this._startOffsetY;this._selectedObjectMap.forEach(D=>{D.translate(u+D.left,l+D.top)}),this.onChangingObservable.notifyObservers({objects:this._selectedObjectMap,moveX:u,moveY:l,type:1}),this._startOffsetX=a,this._startOffsetY=c}_updateActiveObjectList(t,e){this._selectedObjectMap.has(t.oKey)||(e.ctrlKey||(this._selectedObjectMap.clear(),this._clearControl()),this._selectedObjectMap.set(t.oKey,t),this._createControl(t))}_addCancelObserver(t){t.onPointerDownObserver.remove(this._cancelFocusObserver),this._cancelFocusObserver=t.onPointerDownObserver.add(()=>{this._selectedObjectMap.clear(),this._clearControl(),t.onPointerDownObserver.remove(this._cancelFocusObserver)})}}const m1=class m1 extends d.Disposable{constructor(t){super();h(this,"_alreadyAttached",!1);h(this,"_onInputObserver");h(this,"_onPointerMove");h(this,"_onPointerDown");h(this,"_onPointerUp");h(this,"_onPointerEnter");h(this,"_onPointerLeave");h(this,"_onMouseWheel");h(this,"_onKeyDown");h(this,"_onKeyUp");h(this,"_scene");h(this,"_currentMouseEnterPicked");h(this,"_startingPosition",new I(Number.POSITIVE_INFINITY,Number.POSITIVE_INFINITY));h(this,"_delayedTimeout",-1);h(this,"_delayedTripeTimeout",-1);h(this,"_doubleClickOccurred",0);h(this,"_tripleClickState",!1);h(this,"_currentObject");this._scene=t}mouseLeaveEnterHandler(t){var s;const e=this._currentObject;if(e==null)(s=this._currentMouseEnterPicked)==null||s.triggerPointerLeave(t),this._currentMouseEnterPicked=null;else if(e!==this._currentMouseEnterPicked){const i=this._currentMouseEnterPicked;this._currentMouseEnterPicked=e,i==null||i.triggerPointerLeave(t),e==null||e.triggerPointerEnter(t)}}attachControl(t=!0,e=!0,s=!0,i=!0,o=!0,a=!0){const c=this._scene.getEngine();c&&(this._onPointerEnter=u=>{var l;u.pointerId===void 0&&(u.pointerId=0),this._currentObject=this._getCurrentObject(u.offsetX,u.offsetY),(l=this._currentObject)==null||l.triggerPointerMove(u),this.mouseLeaveEnterHandler(u)},this._onPointerLeave=u=>{u.pointerId===void 0&&(u.pointerId=0),this._currentObject=null,this.mouseLeaveEnterHandler(u)},this._onPointerMove=u=>{var D;u.pointerId===void 0&&(u.pointerId=0),this._currentObject=this._getCurrentObject(u.offsetX,u.offsetY);const l=(D=this._currentObject)==null?void 0:D.triggerPointerMove(u);this.mouseLeaveEnterHandler(u),this._checkDirectSceneEventTrigger(!l,this._currentObject)&&this._scene.onPointerMoveObserver.hasObservers()&&this._scene.onPointerMoveObserver.notifyObservers(u)},this._onPointerDown=u=>{u.pointerId===void 0&&(u.pointerId=0);const l=this._getCurrentObject(u.offsetX,u.offsetY),D=l==null?void 0:l.triggerPointerDown(u);this._checkDirectSceneEventTrigger(!D,l)&&this._scene.onPointerDownObserver.hasObservers()&&this._scene.onPointerDownObserver.notifyObservers(u)},this._onPointerUp=u=>{u.pointerId===void 0&&(u.pointerId=0);const l=this._getCurrentObject(u.offsetX,u.offsetY),D=l==null?void 0:l.triggerPointerUp(u);this._checkDirectSceneEventTrigger(!D,l)&&this._scene.onPointerUpObserver.hasObservers()&&this._scene.onPointerUpObserver.notifyObservers(u),this._prePointerDoubleOrTripleClick(u)},this._onMouseWheel=u=>{const l=this._getCurrentObject(u.offsetX,u.offsetY),D=l==null?void 0:l.triggerMouseWheel(u);this._scene.getViewports().forEach(f=>{f.onMouseWheelObserver.hasObservers()&&f.onMouseWheelObserver.notifyObservers(u)}),this._checkDirectSceneEventTrigger(!D,l)&&this._scene.onMouseWheelObserver.hasObservers()&&this._scene.onMouseWheelObserver.notifyObservers(u)},this._onKeyDown=u=>{this._scene.onKeyDownObservable.hasObservers()&&this._scene.onKeyDownObservable.notifyObservers(u)},this._onKeyUp=u=>{this._scene.onKeyUpObservable.hasObservers()&&this._scene.onKeyUpObservable.notifyObservers(u)},this._onInputObserver=c.onInputChangedObservable.add(u=>{const l=u;u.deviceType===d1.Keyboard&&(u.currentState===1&&this._onKeyDown(l),u.currentState===0&&this._onKeyUp(l)),(u.deviceType===d1.Mouse||u.deviceType===d1.Touch)&&(t&&u.inputIndex>=M.LeftClick&&u.inputIndex<=M.RightClick&&u.currentState===1&&this._onPointerDown(l),e&&u.inputIndex>=M.LeftClick&&u.inputIndex<=M.RightClick&&u.currentState===0&&this._onPointerUp(l),s&&(u.inputIndex===M.Horizontal||u.inputIndex===M.Vertical||u.inputIndex===M.DeltaHorizontal||u.inputIndex===M.DeltaVertical)?this._onPointerMove(l):i&&(u.inputIndex===M.MouseWheelX||u.inputIndex===M.MouseWheelY||u.inputIndex===M.MouseWheelZ)?this._onMouseWheel(l):o&&u.currentState===2?this._onPointerEnter(l):a&&u.currentState===3&&this._onPointerLeave(l))}),this.disposeWithMe(d.toDisposable(this._onInputObserver)),this._alreadyAttached=!0)}detachControl(){if(!this._alreadyAttached)return;const t=this._scene.getEngine();t&&(t.onInputChangedObservable.remove(this._onInputObserver),this._alreadyAttached=!1)}_getCurrentObject(t,e){var s;return(s=this._scene)==null?void 0:s.pick(I.FromArray([t,e]))}_checkDirectSceneEventTrigger(t,e){let s=!1;e==null&&(s=!0);let i=!0;if(e&&e.classType===N.BASE_OBJECT){const o=e.getScene();o&&(i=o.getParent().classType!==N.SCENE_VIEWER)}return!this._scene.evented&&t&&i||s}_isPointerSwiping(t,e){return Math.abs(this._startingPosition.x-t)>m1.DragMovementThreshold||Math.abs(this._startingPosition.y-e)>m1.DragMovementThreshold}_prePointerDoubleOrTripleClick(t){var o,a,c,u;const{clientX:e,clientY:s}=t;this._isPointerSwiping(e,s)&&this._resetDoubleClickParam(),this._delayedTimeout=setTimeout(()=>{this._resetDoubleClickParam()},m1.DoubleClickDelay),this._doubleClickOccurred+=1,this._tripleClickState&&((a=(o=this._scene)==null?void 0:o.pick(I.FromArray([t.offsetX,t.offsetY])))==null||a.triggerTripleClick(t),this._scene.onTripleClickObserver.hasObservers()&&this._scene.onTripleClickObserver.notifyObservers(t)),this._doubleClickOccurred===2&&((u=(c=this._scene)==null?void 0:c.pick(I.FromArray([t.offsetX,t.offsetY])))==null||u.triggerDblclick(t),this._scene.onDblclickObserver.hasObservers()&&this._scene.onDblclickObserver.notifyObservers(t),this._resetDoubleClickParam(),this._tripleClickState=!0,clearTimeout(this._delayedTripeTimeout),this._delayedTripeTimeout=setTimeout(()=>{this._tripleClickState=!1},m1.TripleClickDelay)),this._startingPosition.x=e,this._startingPosition.y=s}_resetDoubleClickParam(){this._doubleClickOccurred=0,clearTimeout(this._delayedTimeout)}};h(m1,"DragMovementThreshold",2),h(m1,"LongPressDelay",500),h(m1,"DoubleClickDelay",500),h(m1,"TripleClickDelay",300),h(m1,"ExclusiveDoubleClickMode",!1);let w6=m1;class jd extends d.Disposable{constructor(t){super();h(this,"onTransformChangeObservable",new d.Observable);h(this,"onPointerDownObserver",new d.Observable);h(this,"onPointerMoveObserver",new d.Observable);h(this,"onPointerUpObserver",new d.Observable);h(this,"onPointerEnterObserver",new d.Observable);h(this,"onPointerLeaveObserver",new d.Observable);h(this,"onDblclickObserver",new d.Observable);h(this,"onTripleClickObserver",new d.Observable);h(this,"onMouseWheelObserver",new d.Observable);h(this,"onKeyDownObservable",new d.Observable);h(this,"onKeyUpObservable",new d.Observable);h(this,"debounceParentTimeout",-1);h(this,"_sceneKey","");h(this,"_width",100);h(this,"_height",100);h(this,"_scaleX",1);h(this,"_scaleY",1);h(this,"_transform",new o1);h(this,"_evented",!0);this._sceneKey=t}get classType(){return N.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(t){this._transform=t}set width(t){this._width=t}set height(t){this._height=t}set scaleX(t){this._scaleX=t}set scaleY(t){this._scaleY=t}enableEvent(){this._evented=!0}disableEvent(){this._evented=!1}on(t,e){return this[`on${t}Observer`].add(e.bind(this))}off(t,e){this[`on${t}Observer`].remove(e)}remove(t){this[`on${t}Observer`].clear()}triggerKeyDown(t){this.onKeyDownObservable.notifyObservers(t)}triggerKeyUp(t){this.onKeyUpObservable.notifyObservers(t)}triggerPointerUp(t){}triggerMouseWheel(t){}triggerPointerMove(t){}triggerDblclick(t){}triggerTripleClick(t){}triggerPointerDown(t){}triggerPointerOut(t){}triggerPointerLeave(t){}triggerPointerOver(t){}triggerPointerEnter(t){}renderObjects(t,e){}render(t){}getParent(){}dispose(){super.dispose()}getObject(t){}addObject(t,e=1){}addObjects(t,e=1){}getEngine(){}setObjectBehavior(t){}applyTransformer(t){}makeDirtyNoParent(t=!0){return this}makeDirty(t=!0){return this}pick(t){}getViewports(){return[]}addViewport(...t){}removeViewport(t){}getAncestorScale(){return{scaleX:1,scaleY:1}}getPrecisionScale(){return{scaleX:1,scaleY:1}}}class Nt extends jd{constructor(t,e,s){var i;super(t);h(this,"_layers",[]);h(this,"_viewports",[]);h(this,"_cursor",r1.DEFAULT);h(this,"_defaultCursor",r1.DEFAULT);h(this,"_addObject$",new s1.BehaviorSubject(this));h(this,"addObject$",this._addObject$.asObservable());h(this,"_transformer");h(this,"_transformerOpenState",!1);h(this,"_inputManager");if(this._parent=e,s&&this.transformByState(s),this._parent.classType===N.ENGINE){const o=this._parent;o.addScene(this),o.hasActiveScene()||o.setActiveScene(t),this._inputManager=new w6(this)}else this._parent.classType===N.SCENE_VIEWER&&this._parent.addSubScene(this);this.disposeWithMe(d.toDisposable((i=this._parent)==null?void 0:i.onTransformChangeObservable.add(o=>{this._setTransForm()})))}get ancestorScaleX(){const t=this.getParent();let e=1;return t.classType===N.SCENE_VIEWER&&(e=t.ancestorScaleX),this.scaleX*e}get ancestorScaleY(){const t=this.getParent();let e=1;return t.classType===N.SCENE_VIEWER&&(e=t.ancestorScaleY),this.scaleY*e}set cursor(t){this.setCursor(t)}attachControl(t=!0,e=!0,s=!0,i=!0){var o;if(this._parent.classType===N.ENGINE)return(o=this._inputManager)==null||o.attachControl(t,e,s,i),this}detachControl(){var t;return(t=this._inputManager)==null||t.detachControl(),this}makeDirty(t=!0){var e;return this._layers.forEach(s=>{s.makeDirty(t)}),this._parent.classType===N.SCENE_VIEWER&&((e=this._parent)==null||e.makeDirty(t)),this}makeDirtyNoParent(t=!0){return this._viewports.forEach(e=>{e.makeDirty(t)}),this}enableLayerCache(...t){t.forEach(e=>{this.getLayer(e).enableCache()})}disableLayerCache(...t){t.forEach(e=>{this.getLayer(e).disableCache()})}isDirty(){for(let t=0;t<this._layers.length;t++)if(this._layers[t].isDirty()===!0)return!0;return!1}getCursor(){return this._cursor}resetCursor(){this.setCursor(this._defaultCursor)}setCursor(t){this._cursor=t;const e=this.getEngine();e&&e.setCanvasCursor(t)}setDefaultCursor(t){this._defaultCursor=t,this.resetCursor()}resize(t,e){const s=this.width;t!==void 0&&(this.width=t);const i=this.height;return e!==void 0&&(this.height=e),this._setTransForm(),this.onTransformChangeObservable.notifyObservers({type:i1.resize,value:{width:this.width,height:this.height},preValue:{width:s,height:i}}),this}scale(t,e){const s=this.scaleX;t!==void 0&&(this.scaleX=t);const i=this.scaleY;return e!==void 0&&(this.scaleY=e),this._setTransForm(),this.onTransformChangeObservable.notifyObservers({type:i1.scale,value:{scaleX:this.scaleX,scaleY:this.scaleY},preValue:{scaleX:s,scaleY:i}}),this}scaleBy(t,e){const s=this.scaleX;t!==void 0&&(this.scaleX+=t);const i=this.scaleY;return e!==void 0&&(this.scaleY+=e),this.scaleX=Y2(this.scaleX,1),this.scaleY=Y2(this.scaleY,1),this._setTransForm(),this.onTransformChangeObservable.notifyObservers({type:i1.scale,value:{scaleX:this.scaleX,scaleY:this.scaleY},preValue:{scaleX:s,scaleY:i}}),this}transformByState(t){const e=Object.keys(t),s={};e.length!==0&&(e.forEach(i=>{t[i]!==void 0&&(s[i]=this[i],this[i]=t[i])}),this._setTransForm(),this.onTransformChangeObservable.notifyObservers({type:i1.all,value:t,preValue:s}))}getParent(){return this._parent}getEngine(){if(this._parent.classType===N.ENGINE)return this._parent;let t=this._parent;for(;t;){if(t.classType===N.ENGINE)return t;t=t==null?void 0:t.getParent()}return null}getLayers(){return this._layers}getLayer(t=1){for(const e of this._layers)if(e.zIndex===t)return e;return this._createDefaultLayer(t)}getLayerMaxZIndex(){let t=Number.MIN_VALUE;for(let e=0;e<this._layers.length;e++){const s=this._layers[e];s.zIndex>=t&&(t=s.zIndex)}return t}addLayer(...t){this._layers.push(...t)}addObject(t,e=1){var s;return(s=this.getLayer(e))==null||s.addObject(t),this._addObject$.next(this),this}setObjectBehavior(t){t.parent||(t.parent=this),t.onIsAddedToParentObserver.notifyObservers(this)}addObjects(t,e=1){var s;return(s=this.getLayer(e))==null||s.addObjects(t),this._addObject$.next(this),this}removeObject(t){if(t==null)return;const e=this.getLayers();for(const s of e)s.removeObject(t);return this}removeObjects(t){if(t==null)return;const e=this.getLayers();for(const s of e)s.removeObjects(t);return this}getAllObjects(){const t=[];this._layers.sort(d.sortRules);for(const e of this._layers)t.push(...e.getObjectsByOrder());return t}getAllObjectsByOrder(t=!1){const e=[],s=t?d.sortRulesByDesc:d.sortRules;this._layers.sort(s);for(const i of this._layers)e.push(...i.getObjectsByOrder().sort(s));return e}getAllObjectsByOrderForPick(t=!1){const e=[],s=t?d.sortRulesByDesc:d.sortRules;this._layers.sort(s);for(const i of this._layers)e.push(...i.getObjectsByOrderForPick().sort(s));return e}getObject(t){for(const e of this._layers){const s=e.getObjectsByOrder();for(const i of s)if(i.oKey===t)return i}}fuzzyMathObjects(t){const e=[];for(const s of this._layers){const i=s.getObjectsByOrder();for(const o of i)o.oKey.indexOf(t)>-1&&i.push(o)}return e}addViewport(...t){return this._viewports.push(...t),this}removeViewport(t){for(let e=0,s=this._viewports.length;e<s;e++){const i=this._viewports[e];if(i.viewPortKey===t)return this._viewports.splice(e,1),i}}getViewports(){return this._viewports}getViewport(t){for(const e of this._viewports)if(e.viewPortKey===t)return e}changeObjectOrder(){}render(t){var s;if(!this.isDirty())return;!t&&((s=this.getEngine())==null||s.clearCanvas());const e=this._layers.sort(d.sortRules);for(let i=0,o=e.length;i<o;i++)e[i].render(t,i===o-1)}async requestRender(t){return new Promise((e,s)=>{this.render(t),b2(e)})}openTransformer(t){this._transformer||(this._transformer=new Wd(this,t)),this._transformerOpenState=!0}closeTransformer(t=!1){t&&(this._transformer=null),this._transformerOpenState=!1}applyTransformer(t){var e;this._transformerOpenState&&((e=this._transformer)==null||e.attachTo(t))}getTransformer(){return this._transformer}getActiveViewportByRelativeCoord(t){return this._viewports.find(e=>e.isHit(t))}getActiveViewportByCoord(t){return t=this.getRelativeCoord(t),this.getActiveViewportByRelativeCoord(t)}getScrollXYByRelativeCoords(t,e){return e||(e=this.getActiveViewportByRelativeCoord(t)),e?this.getScrollXY(e):{x:0,y:0}}getScrollXY(t){let e=0,s=0;if(t){const i=t.actualScrollX||0,o=t.actualScrollY||0;e+=i,s+=o}return{x:e,y:s}}getRelativeCoord(t){let e=this.getParent();const s=[];for(;e;)(e.classType===N.SCENE||e.classType===N.SCENE_VIEWER)&&s.push(e),e=(e==null?void 0:e.getParent)&&(e==null?void 0:e.getParent());s.reverse();for(const i of s)if(i.classType===N.SCENE){const a=i.getActiveViewportByCoord(t);if(a){const c=a.actualScrollX||0,u=a.actualScrollY||0;t=t.addByPoint(c,u)}}else i.classType===N.SCENE_VIEWER&&(t=i.transform.clone().invert().applyPoint(t));return t}clearLayer(){this._layers=[]}clearViewports(){this._viewports=[]}getAncestorScale(){let{scaleX:t=1,scaleY:e=1}=this;return this.classType===N.SCENE_VIEWER&&(t=this.ancestorScaleX||1,e=this.ancestorScaleY||1),{scaleX:t,scaleY:e}}getPrecisionScale(){var i;const t=((i=this.getEngine())==null?void 0:i.getPixelRatio())||1,{scaleX:e,scaleY:s}=this.getAncestorScale();return{scaleX:e*t,scaleY:s*t}}dispose(){var t,e;this.getLayers().forEach(s=>{s.dispose()}),this.getViewports().forEach(s=>{s.dispose()}),this.clearLayer(),this.clearViewports(),this.detachControl(),(t=this.onTransformChangeObservable)==null||t.clear(),(e=this._transformer)==null||e.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(t){let e=this.getActiveViewportByCoord(t);if(e||(e=this._viewports[0]),!this.evented||!e)return;const s=e.pickScrollBar(t);if(s)return s;const i=e.getRelativeVector(t);let o=null;const a=this.getAllObjectsByOrderForPick().reverse(),c=a.length;for(let u=0;u<c;u++){const l=a[u];if(!l.visible||!l.evented||l.classType===N.GROUP)continue;let D=i;if(l.isInGroup&&l.parent.classType===N.GROUP){const{cumLeft:f,cumTop:p}=this._getGroupCumLeftRight(l);D=D.clone().add(I.FromArray([-f,-p]))}if(l.isHit(D)){if(l.classType===N.SCENE_VIEWER){const f=l.pick(D);f?o=f:o=l.getActiveSubScene()}else o=l;break}else if(l.classType===N.SCENE_VIEWER&&l.allowSelectedClipElement()){const f=l.pick(D);if(f){o=f;break}}}return!o&&this._parent.classType===N.ENGINE?this:o}triggerKeyDown(t){this.onKeyDownObservable.notifyObservers(t)}triggerKeyUp(t){this.onKeyUpObservable.notifyObservers(t)}triggerPointerUp(t){var e,s;return!((e=this.onPointerUpObserver.notifyObservers(t))!=null&&e.stopPropagation)&&this._parent.classType===N.SCENE_VIEWER?((s=this._parent)==null||s.triggerPointerUp(t),!1):!0}triggerMouseWheel(t){var e,s;return!((e=this.onMouseWheelObserver.notifyObservers(t))!=null&&e.stopPropagation)&&this._parent.classType===N.SCENE_VIEWER?((s=this._parent)==null||s.triggerMouseWheel(t),!1):!0}triggerPointerMove(t){var e,s;return!((e=this.onPointerMoveObserver.notifyObservers(t))!=null&&e.stopPropagation)&&this._parent.classType===N.SCENE_VIEWER?((s=this._parent)==null||s.triggerPointerMove(t),!1):!0}triggerDblclick(t){var e,s;return!((e=this.onDblclickObserver.notifyObservers(t))!=null&&e.stopPropagation)&&this._parent.classType===N.SCENE_VIEWER?((s=this._parent)==null||s.triggerDblclick(t),!1):!0}triggerTripleClick(t){var e,s;return!((e=this.onTripleClickObserver.notifyObservers(t))!=null&&e.stopPropagation)&&this._parent.classType===N.SCENE_VIEWER?((s=this._parent)==null||s.triggerTripleClick(t),!1):!0}triggerPointerDown(t){var e,s;return!((e=this.onPointerDownObserver.notifyObservers(t))!=null&&e.stopPropagation)&&this._parent.classType===N.SCENE_VIEWER?((s=this._parent)==null||s.triggerPointerDown(t),!1):!0}triggerPointerOut(t){var e;return this._parent.classType===N.SCENE_VIEWER?((e=this._parent)==null||e.triggerPointerOut(t),!1):!0}triggerPointerLeave(t){var e,s;return!((e=this.onPointerLeaveObserver.notifyObservers(t))!=null&&e.stopPropagation)&&this._parent.classType===N.SCENE_VIEWER?((s=this._parent)==null||s.triggerPointerLeave(t),!1):!0}triggerPointerOver(t){var e;return this._parent.classType===N.SCENE_VIEWER?((e=this._parent)==null||e.triggerPointerOver(t),!1):!0}triggerPointerEnter(t){var e,s;return!((e=this.onPointerEnterObserver.notifyObservers(t))!=null&&e.stopPropagation)&&this._parent.classType===N.SCENE_VIEWER?((s=this._parent)==null||s.triggerPointerEnter(t),!1):!0}_createDefaultLayer(t=1){const e=new $t(this,[],t);return this.addLayer(e),e}_setTransForm(){const t=o1.create().composeMatrix({scaleX:this.scaleX,scaleY:this.scaleY});this.transform=t,this.getViewports().forEach(e=>{e.resetSizeAndScrollBar()}),this.makeDirty(!0)}_getGroupCumLeftRight(t){let e=t.parent,s=0,i=0;for(;e.classType===N.GROUP;){const{left:o,top:a}=e;s+=o,i+=a,e=e.parent}return{cumLeft:s,cumTop:i}}}const Gd={width:1500,height:1e3},Ud="_UNIVER_SCENE_";class kt{constructor(){h(this,"_defaultEngine");h(this,"_currentUnitId","");h(this,"_renderMap",new Map);h(this,"_currentRender$",new s1.BehaviorSubject(this._currentUnitId));h(this,"currentRender$",this._currentRender$.asObservable());h(this,"_createRender$",new s1.BehaviorSubject(this._currentUnitId));h(this,"createRender$",this._createRender$.asObservable())}get defaultEngine(){return this._defaultEngine||(this._defaultEngine=new K2),this._defaultEngine}dispose(){this._renderMap.forEach(n=>{this._disposeItem(n)}),this._renderMap.clear(),this._currentRender$.complete()}createRenderWithParent(n,t){const e=this.getRenderById(t);if(e==null)throw new Error("parent render is null");const{scene:s,engine:i}=e,o=this._createRender(n,i,!1),a=o.scene,c=new l7(n);return c.addSubScene(a),s.addObject(c),o}create(n){this._createRender$.next(n)}createRender(n){const t=new K2;return this._createRender(n,t)}_createRender(n,t,e=!0){const s=this.getRenderById(n);let i=!0;s!=null&&s.engine===t&&(i=!1),this._disposeItem(s,i);const{width:o,height:a}=Gd,c=new Nt(Ud+n,t,{width:o,height:a}),u={unitId:n,engine:t,scene:c,mainComponent:null,components:new Map,isMainScene:e};return this.addItem(n,u),u}addItem(n,t){this._renderMap.set(n,t)}removeItem(n){const t=this._renderMap.get(n);t!=null&&this._disposeItem(t),this._renderMap.delete(n)}has(n){return this._renderMap.has(n)}setCurrent(n){this._currentUnitId=n,this._currentRender$.next(n)}getCurrent(){return this._renderMap.get(this._currentUnitId)}getFirst(){return[...this.getRenderAll().values()][0]}getRenderById(n){return this._renderMap.get(n)}getRenderAll(){return this._renderMap}_disposeItem(n,t=!0){if(n==null)return;const{engine:e,scene:s,components:i,mainComponent:o}=n;i==null||i.forEach(a=>{a.dispose()}),o==null||o.dispose(),s.dispose(),t&&e.dispose()}}const Ht=e2.createIdentifier("univer.render-manager-service");var Vd=Object.defineProperty,Kd=Object.getOwnPropertyDescriptor,Jd=(r,n,t,e)=>{for(var s=e>1?void 0:e?Kd(n,t):n,i=r.length-1,o;i>=0;i--)(o=r[i])&&(s=(e?o(n,t,s):o(s))||s);return e&&s&&Vd(n,t,s),s},Zd=(r,n)=>(t,e)=>n(t,e,r);const Xt=e2.createIdentifier("univer.render-engine"),qd="render-engine";var p6;exports.UniverRenderEnginePlugin=(p6=class extends d.Plugin{constructor(n,t){super(qd),this._injector=t,this._injector.add([Xt,{useFactory:()=>new K2}]),this._injector.add([Ht,{useClass:kt}])}},h(p6,"type",d.PluginType.Univer),p6);exports.UniverRenderEnginePlugin=Jd([Zd(1,e2.Inject(e2.Injector))],exports.UniverRenderEnginePlugin);const Yt=["radius"];class h7 extends c2{constructor(t,e){super(t,e);h(this,"_radius");this._radius=(e==null?void 0:e.radius)||10,this._setFixBoundingBox(),this.onTransformChangeObservable.add(s=>{const{type:i,value:o,preValue:a}=s;if(i===i1.resize||i===i1.all){const c=Math.min(this.width,this.height);this._radius=c/2,this.width=c,this.height=c,this._setTransForm()}})}get radius(){return this._radius}static drawWith(t,e){let{radius:s}=e;s=s!=null?s:10,t.beginPath(),e.strokeDashArray&&t.setLineDash(e.strokeDashArray),t.beginPath(),t.arc(s,s,s||0,0,Math.PI*2,!1),t.closePath(),this._renderPaintInOrder(t,e)}toJson(){const t={};return Yt.forEach(e=>{this[e]&&(t[e]=this[e])}),{...super.toJson(),...t}}_draw(t){h7.drawWith(t,this)}_setFixBoundingBox(){this.transformByState({width:this._radius*2,height:this._radius*2})}}class Qd{}class tf{}class J2 extends c2{constructor(t,e){super(t,e);h(this,"_props");h(this,"_native");this._props={autoWidth:!1,autoHeight:!1,...e},e.image?(this._native=e.image,this._init()):e.url&&(this._native=document.createElement("img"),this._native.src=e.url,this._native.onload=()=>{var s;(s=e.success)==null||s.call(e),this._init(),this.makeDirty(!0)},this._native.onerror=()=>{e.fail?e.fail():(this._native.src="data:image/svg+xml;base64,PHN2ZyBjbGFzcz0iaWNvbiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB3aWR0aD0iMjAwIiBoZWlnaHQ9IjIwMCI+PHBhdGggZD0iTTMwNC4xMjggNDU2LjE5MmM0OC42NCAwIDg4LjA2NC0zOS40MjQgODguMDY0LTg4LjA2NHMtMzkuNDI0LTg4LjA2NC04OC4wNjQtODguMDY0LTg4LjA2NCAzOS40MjQtODguMDY0IDg4LjA2NCAzOS40MjQgODguMDY0IDg4LjA2NCA4OC4wNjR6bTAtMTE2LjIyNGMxNS4zNiAwIDI4LjE2IDEyLjI4OCAyOC4xNiAyOC4xNnMtMTIuMjg4IDI4LjE2LTI4LjE2IDI4LjE2LTI4LjE2LTEyLjI4OC0yOC4xNi0yOC4xNiAxMi4yODgtMjguMTYgMjguMTYtMjguMTZ6IiBmaWxsPSIjZTZlNmU2Ii8+PHBhdGggZD0iTTg4Ny4yOTYgMTU5Ljc0NEgxMzYuNzA0Qzk2Ljc2OCAxNTkuNzQ0IDY0IDE5MiA2NCAyMzIuNDQ4djU1OS4xMDRjMCAzOS45MzYgMzIuMjU2IDcyLjcwNCA3Mi43MDQgNzIuNzA0aDE5OC4xNDRMNTAwLjIyNCA2ODguNjRsLTM2LjM1Mi0yMjIuNzIgMTYyLjMwNC0xMzAuNTYtNjEuNDQgMTQzLjg3MiA5Mi42NzIgMjE0LjAxNi0xMDUuNDcyIDE3MS4wMDhoMzM1LjM2QzkyNy4yMzIgODY0LjI1NiA5NjAgODMyIDk2MCA3OTEuNTUyVjIzMi40NDhjMC0zOS45MzYtMzIuMjU2LTcyLjcwNC03Mi43MDQtNzIuNzA0em0tMTM4Ljc1MiA3MS42OHYuNTEySDg1Ny42YzE2LjM4NCAwIDMwLjIwOCAxMy4zMTIgMzAuMjA4IDMwLjIwOHYzOTkuODcyTDY3My4yOCA0MDguMDY0bDc1LjI2NC0xNzYuNjR6TTMwNC42NCA3OTIuMDY0SDE2NS44ODhjLTE2LjM4NCAwLTMwLjIwOC0xMy4zMTItMzAuMjA4LTMwLjIwOHYtOS43MjhsMTM4Ljc1Mi0xNjQuMzUyIDEwNC45NiAxMjQuNDE2LTc0Ljc1MiA3OS44NzJ6bTgxLjkyLTM1NS44NGwzNy4zNzYgMjI4Ljg2NC0uNTEyLjUxMi0xNDIuODQ4LTE2OS45ODRjLTMuMDcyLTMuNTg0LTkuMjE2LTMuNTg0LTEyLjI4OCAwTDEzNS42OCA2NTIuOFYyNjIuMTQ0YzAtMTYuMzg0IDEzLjMxMi0zMC4yMDggMzAuMjA4LTMwLjIwOGg0NzQuNjI0TDM4Ni41NiA0MzYuMjI0em01MDEuMjQ4IDMyNS42MzJjMCAxNi44OTYtMTMuMzEyIDMwLjIwOC0yOS42OTYgMzAuMjA4SDY4MC45Nmw1Ny4zNDQtOTMuMTg0LTg3LjU1Mi0yMDIuMjQgNy4xNjgtNy42OCAyMjkuODg4IDI3Mi44OTZ6IiBmaWxsPSIjZTZlNmU2Ii8+PC9zdmc+",this._init(),this.makeDirty(!0))})}static drawWith(t,e){var s;if((s=e._native)!=null&&s.complete){const{width:i,height:o}=e;try{t.drawImage(e._native,0,0,i,o)}catch(a){console.error(a)}}}static create(t,e,s){return new J2(t,{url:e,success:s})}getPictureProps(){return this._props}_draw(t){J2.drawWith(t,this)}_init(){var t,e;this._props.autoWidth&&this.resize(((t=this._native)==null?void 0:t.width)||0),this._props.autoHeight&&this.resize(void 0,((e=this._native)==null?void 0:e.height)||0)}}const A6=["text","richText"];class ef extends I1{constructor(t,e,s){super(e);h(this,"_documentData");h(this,"_documentSkeleton");h(this,"_documents");h(this,"_ff");h(this,"_fs",12);h(this,"_it",d.BooleanNumber.FALSE);h(this,"_bl",d.BooleanNumber.FALSE);h(this,"_ul",{s:d.BooleanNumber.FALSE});h(this,"_st",{s:d.BooleanNumber.FALSE});h(this,"_ol",{s:d.BooleanNumber.FALSE});h(this,"_bg");h(this,"_bd");h(this,"_cl");this._localeService=t,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 d.DocumentDataModel(this._documentData),o=new M1(i);this._documentSkeleton=i2.create(o,this._localeService),this._documents=new x2(`${this.oKey}_DOCUMENTS`,this._documentSkeleton,{pageMarginLeft:0,pageMarginTop:0}),this._initialProps(s),this.onTransformChangeObservable.add(a=>{const{type:c}=a;if(c===i1.resize||c===i1.all){i.updateDocumentDataPageSize(this.width),this._documentSkeleton.makeDirty(!0),this._documentSkeleton.calculate();const u=this.getDocsSkeletonPageSize();this.height=(u==null?void 0:u.height)||this.height,this._setTransForm()}})}get documentData(){return this._documentData}getDocsSkeletonPageSize(){var a;const t=(a=this._documentSkeleton)==null?void 0:a.getSkeletonData();if(!t)return;const{pages:e}=t,s=e[e.length-1],{width:i,height:o}=s;return{width:i,height:o}}setProps(t){if(!t)return;const e=Object.keys(t);if(e.length!==0)return e.forEach(s=>{if(t[s]===void 0)return!0;A6.indexOf(s)===-1&&(this[`_${s}`]=t[s])}),this.makeDirty(!0),this}render(t,e){if(!this.visible)return this.makeDirty(!1),this;if(this.isRender()){const{top:i,left:o,bottom:a,right:c}=e.viewBound;if(this.width+this.strokeWidth<o||c<0||this.height+this.strokeWidth<i||a<0)return this}const s=this.transform.getMatrix();return t.save(),t.transform(s[0],s[1],s[2],s[3],s[4],s[5]),this._draw(t),t.restore(),this.makeDirty(!1),this}toJson(){const t={};return A6.forEach(e=>{this[e]&&(t[e]=this[e])}),{...super.toJson(),...t}}_draw(t){this._documents.render(t)}_convertToDocumentData(t){const e=t.length;return{id:"d",body:{dataStream:`${t}${d.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:e-1}]},documentStyle:{pageSize:{width:Number.POSITIVE_INFINITY,height:Number.POSITIVE_INFINITY}}}}_initialProps(t){this._documentSkeleton.getViewModel().getDataModel().updateDocumentDataPageSize(t==null?void 0:t.width,t==null?void 0:t.height),this._documentSkeleton.calculate();const e=this.getDocsSkeletonPageSize();this.transformByState({width:(e==null?void 0:e.width)||0,height:(e==null?void 0:e.height)||0,left:(t==null?void 0:t.left)||0,top:(t==null?void 0:t.top)||0,angle:t==null?void 0:t.angle}),this.setProps(t),this.makeDirty(!0)}}class nf extends d.Disposable{constructor(){super(...arguments);h(this,"enableHorizontal",!0);h(this,"enableVertical",!0);h(this,"horizontalThumbWidth",0);h(this,"horizontalMinusMiniThumb",0);h(this,"horizontalBarWidth",0);h(this,"verticalThumbHeight",0);h(this,"verticalBarHeight",0);h(this,"verticalMinusMiniThumb",0);h(this,"horizonBarRect");h(this,"horizonThumbRect");h(this,"verticalBarRect");h(this,"verticalThumbRect");h(this,"placeholderBarRect")}get limitX(){var t;return(t=this.horizonThumbRect)!=null&&t.visible?this.horizontalBarWidth-this.horizontalThumbWidth:0}get limitY(){var t;return(t=this.verticalThumbRect)!=null&&t.visible?this.verticalBarHeight-this.verticalThumbHeight:0}get ratioScrollX(){return this.enableHorizontal===!1||this.horizontalThumbWidth===void 0||this.horizontalBarWidth===void 0?1:(this.horizontalThumbWidth-this.horizontalMinusMiniThumb)*this.miniThumbRatioX/this.horizontalBarWidth}get ratioScrollY(){return this.enableVertical===!1||this.verticalThumbHeight===void 0||this.verticalBarHeight===void 0?1:(this.verticalThumbHeight-this.verticalMinusMiniThumb)*this.miniThumbRatioY/this.verticalBarHeight}get miniThumbRatioX(){const t=this.horizontalBarWidth-this.horizontalThumbWidth;if(t===0)return 0;const e=this.horizontalBarWidth-(this.horizontalThumbWidth-this.horizontalMinusMiniThumb);return e===0?0:t/e}get miniThumbRatioY(){const t=this.verticalBarHeight-this.verticalThumbHeight;if(t===0)return 0;const e=this.verticalBarHeight-(this.verticalThumbHeight-this.verticalMinusMiniThumb);return e===0?0:t/e}pick(t){var e,s,i,o;return(e=this.horizonThumbRect)!=null&&e.isHit(t)?this.horizonThumbRect:(s=this.verticalThumbRect)!=null&&s.isHit(t)?this.verticalThumbRect:(i=this.horizonBarRect)!=null&&i.isHit(t)?this.horizonBarRect:(o=this.verticalBarRect)!=null&&o.isHit(t)?this.verticalBarRect:null}dispose(){var t,e,s,i,o;(t=this.horizonBarRect)==null||t.dispose(),(e=this.horizonThumbRect)==null||e.dispose(),(s=this.verticalBarRect)==null||s.dispose(),(i=this.verticalThumbRect)==null||i.dispose(),(o=this.placeholderBarRect)==null||o.dispose()}hasHorizonThumb(){var t;return((t=this.horizonThumbRect)==null?void 0:t.visible)||!1}hasVerticalThumb(){var t;return((t=this.verticalThumbRect)==null?void 0:t.visible)||!1}resize(t=0,e=0,s=0,i=0){}makeDirty(t){}render(t,e=0,s=0){}}const q1=17;class D7 extends nf{constructor(t,e){super();h(this,"_view");h(this,"_mainScene");h(this,"_lastX",-1);h(this,"_lastY",-1);h(this,"_isHorizonMove",!1);h(this,"_isVerticalMove",!1);h(this,"_horizonPointerMoveObserver");h(this,"_horizonPointerUpObserver");h(this,"_verticalPointerMoveObserver");h(this,"_verticalPointerUpObserver");h(this,"barSize",14);h(this,"barBorder",1);h(this,"thumbMargin",2);h(this,"thumbLengthRatio",1);h(this,"thumbBackgroundColor","#cccccc");h(this,"thumbHoverBackgroundColor","#b2b2b2");h(this,"thumbActiveBackgroundColor","#999999");h(this,"barBackgroundColor","rgba(255,255,255,0.5)");h(this,"barBorderColor","rgba(255,255,255,0.7)");t||console.warn("Missing viewport"),this.setProps(e),this._view=t,this._initialScrollRect(),this._view.setScrollBar(this)}static attachTo(t,e){return new D7(t,e)}dispose(){var t,e,s,i;super.dispose(),(t=this._mainScene)==null||t.onPointerMoveObserver.remove(this._horizonPointerMoveObserver),(e=this._mainScene)==null||e.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(t,e=0,s=0){const{scrollX:i,scrollY:o}=this._view;t.save();const c=new o1([1,0,0,1,e,s]).getMatrix();t.transform(c[0],c[1],c[2],c[3],c[4],c[5]),this.enableHorizontal&&(this.horizonBarRect.render(t),this.horizonThumbRect.translate(i).render(t)),this.enableVertical&&(this.verticalBarRect.render(t),this.verticalThumbRect.translate(void 0,o).render(t)),this.enableHorizontal&&this.enableVertical&&this.placeholderBarRect.render(t),t.restore()}resize(t=0,e=0,s=0,i=0){var o;t===0&&t===0||(this._resizeHorizontal(t,e,s),this._resizeVertical(t,e,i),this.enableHorizontal&&this.enableVertical&&((o=this.placeholderBarRect)==null||o.transformByState({left:t-this.barSize,top:e-this.barSize,width:this.barSize-this.barBorder,height:this.barSize-this.barBorder})))}makeDirty(t){var e,s,i,o,a;(e=this.horizonBarRect)==null||e.makeDirty(t),(s=this.horizonThumbRect)==null||s.makeDirty(t),(i=this.verticalBarRect)==null||i.makeDirty(t),(o=this.verticalThumbRect)==null||o.makeDirty(t),(a=this.placeholderBarRect)==null||a.makeDirty(t),this.makeViewDirty(t)}makeViewDirty(t){(this._mainScene||this._view.scene).makeDirty(t)}pick(t){var e,s,i,o;return(e=this.horizonThumbRect)!=null&&e.isHit(t)?this.horizonThumbRect:(s=this.verticalThumbRect)!=null&&s.isHit(t)?this.verticalThumbRect:(i=this.horizonBarRect)!=null&&i.isHit(t)?this.horizonBarRect:(o=this.verticalBarRect)!=null&&o.isHit(t)?this.verticalBarRect:null}setProps(t){if(!t)return;const e=Object.keys(t);e.length!==0&&e.forEach(s=>{t[s]!==void 0&&(this[`${s}`]=t[s])})}_resizeHorizontal(t,e,s){var i,o,a,c,u;this.enableHorizontal&&(this.horizontalMinusMiniThumb=0,this.horizontalBarWidth=t-(this.enableVertical?this.barSize:0)-this.barBorder,this.horizontalThumbWidth=this.horizontalBarWidth*(this.horizontalBarWidth-this.barBorder)/s*this.thumbLengthRatio,this.horizontalThumbWidth<q1&&(this.horizontalMinusMiniThumb=q1-this.horizontalThumbWidth,this.horizontalThumbWidth=q1),(i=this.horizonBarRect)==null||i.transformByState({left:0,top:e-this.barSize,width:this.horizontalBarWidth,height:this.barSize-this.barBorder}),this.horizontalThumbWidth>=t-this.barSize?(o=this.horizonThumbRect)==null||o.setProps({visible:!1}):((a=this.horizonThumbRect)!=null&&a.visible||(c=this.horizonThumbRect)==null||c.setProps({visible:!0}),(u=this.horizonThumbRect)==null||u.transformByState({left:this._view.scrollX,top:e-this.barSize+this.thumbMargin,width:this.horizontalThumbWidth,height:this.barSize-this.thumbMargin*2})))}_resizeVertical(t,e,s){var i,o,a,c,u;this.enableVertical&&(this.verticalMinusMiniThumb=0,this.verticalBarHeight=e-(this.enableHorizontal?this.barSize:0)-this.barBorder,this.verticalThumbHeight=this.verticalBarHeight*this.verticalBarHeight/s*this.thumbLengthRatio,this.verticalThumbHeight<q1&&(this.verticalMinusMiniThumb=q1-this.verticalThumbHeight,this.verticalThumbHeight=q1),(i=this.verticalBarRect)==null||i.transformByState({left:t-this.barSize,top:0,width:this.barSize-this.barBorder,height:this.verticalBarHeight}),this.verticalThumbHeight>=e-this.barSize?(o=this.verticalThumbRect)==null||o.setProps({visible:!1}):((a=this.verticalThumbRect)!=null&&a.visible||(c=this.verticalThumbRect)==null||c.setProps({visible:!0}),(u=this.verticalThumbRect)==null||u.transformByState({left:t-this.barSize+this.thumbMargin,top:this._view.scrollY,width:this.barSize-this.thumbMargin*2,height:this.verticalThumbHeight})))}_initialScrollRect(){this.enableHorizontal&&(this.horizonBarRect=new f1("__horizonBarRect__",{fill:this.barBackgroundColor,strokeWidth:this.barBorder,stroke:this.barBorderColor}),this.horizonThumbRect=new f1("__horizonThumbRect__",{radius:6,fill:this.thumbBackgroundColor})),this.enableVertical&&(this.verticalBarRect=new f1("__verticalBarRect__",{fill:this.barBackgroundColor,strokeWidth:this.barBorder,stroke:this.barBorderColor}),this.verticalThumbRect=new f1("__verticalThumbRect__",{radius:6,fill:this.thumbBackgroundColor})),this.enableHorizontal&&this.enableVertical&&(this.placeholderBarRect=new f1("__placeholderBarRect__",{fill:this.barBackgroundColor,strokeWidth:this.barBorder,stroke:this.barBorderColor})),this._initialVerticalEvent(),this._initialHorizontalEvent()}_initialVerticalEvent(){var e,s,i,o;if(!this.enableVertical)return;const t=this._mainScene||this._view.scene;(e=this.verticalThumbRect)==null||e.on(E1.PointerEnter,this._hoverFunc(this.thumbHoverBackgroundColor,this.verticalThumbRect)),(s=this.verticalThumbRect)==null||s.on(E1.PointerLeave,this._hoverFunc(this.thumbBackgroundColor,this.verticalThumbRect)),(i=this.verticalBarRect)==null||i.on(E1.PointerDown,(a,c)=>{const u=a;this._view.scrollTo({y:u.offsetY-this._view.top-this.verticalThumbHeight/2}),c.stopPropagation()}),(o=this.verticalThumbRect)==null||o.on(E1.PointerDown,(a,c)=>{const u=a,l=this.verticalThumbRect;this._isVerticalMove=!0,this._lastX=u.offsetX,this._lastY=u.offsetY,l==null||l.setProps({fill:this.thumbActiveBackgroundColor}),t.disableEvent(),this.makeViewDirty(!0),c.stopPropagation()}),this._verticalPointerMoveObserver=t.onPointerMoveObserver.add((a,c)=>{var l;const u=a;this._isVerticalMove&&(this._view.scrollByBar({y:u.offsetY-this._lastY}),this._lastY=u.offsetY,(l=t.getEngine())==null||l.setRemainCapture())}),this._verticalPointerUpObserver=t.onPointerUpObserver.add((a,c)=>{const u=this.verticalThumbRect;this._isVerticalMove=!1,t.enableEvent(),u==null||u.setProps({fill:this.thumbBackgroundColor}),this.makeViewDirty(!0)})}_hoverFunc(t,e){return(s,i)=>{if(this._isHorizonMove||this._isVerticalMove)return;e.setProps({fill:t}),this.makeViewDirty(!0)}}_initialHorizontalEvent(){var e,s,i,o;if(!this.enableHorizontal)return;const t=this._mainScene||this._view.scene;(e=this.horizonThumbRect)==null||e.on(E1.PointerEnter,this._hoverFunc(this.thumbHoverBackgroundColor,this.horizonThumbRect)),(s=this.horizonThumbRect)==null||s.on(E1.PointerLeave,this._hoverFunc(this.thumbBackgroundColor,this.horizonThumbRect)),(i=this.horizonBarRect)==null||i.on(E1.PointerDown,(a,c)=>{const u=a;this._view.scrollTo({x:u.offsetX-this._view.left-this.horizontalThumbWidth/2}),c.stopPropagation()}),(o=this.horizonThumbRect)==null||o.on(E1.PointerDown,(a,c)=>{var l;const u=a;this._isHorizonMove=!0,this._lastX=u.offsetX,this._lastY=u.offsetY,(l=this.horizonThumbRect)==null||l.setProps({fill:this.thumbActiveBackgroundColor}),this.makeViewDirty(!0),t.disableEvent(),c.stopPropagation()}),this._horizonPointerMoveObserver=t.onPointerMoveObserver.add((a,c)=>{var l;const u=a;this._isHorizonMove&&(this._view.scrollByBar({x:u.offsetX-this._lastX}),this._lastX=u.offsetX,(l=t.getEngine())==null||l.setRemainCapture())}),this._horizonPointerUpObserver=t.onPointerUpObserver.add((a,c)=>{const u=this.horizonThumbRect;this._isHorizonMove=!1,t.enableEvent(),u==null||u.setProps({fill:this.thumbBackgroundColor}),this.makeViewDirty(!0)})}}class sf{}const rf=3;class of{constructor(n,t,e){h(this,"scrollX",0);h(this,"scrollY",0);h(this,"actualScrollX",0);h(this,"actualScrollY",0);h(this,"onMouseWheelObserver",new d.Observable);h(this,"onScrollAfterObserver",new d.Observable);h(this,"onScrollBeforeObserver",new d.Observable);h(this,"onScrollStopObserver",new d.Observable);h(this,"onScrollByBarObserver",new d.Observable);h(this,"_viewPortKey","");h(this,"_dirty",!0);h(this,"_topOrigin",0);h(this,"_leftOrigin",0);h(this,"_bottomOrigin",0);h(this,"_rightOrigin",0);h(this,"_widthOrigin");h(this,"_heightOrigin");h(this,"_top",0);h(this,"_left",0);h(this,"_bottom",0);h(this,"_right",0);h(this,"_width");h(this,"_height");h(this,"_scene");h(this,"_scrollBar");h(this,"_isWheelPreventDefaultX",!1);h(this,"_isWheelPreventDefaultY",!1);h(this,"_scrollStopNum",0);h(this,"_preScrollX",0);h(this,"_preScrollY",0);h(this,"_renderClipState",!0);h(this,"_active",!0);h(this,"_paddingStartX",0);h(this,"_paddingEndX",0);h(this,"_paddingStartY",0);h(this,"_paddingEndY",0);h(this,"_isRelativeX",!1);h(this,"_isRelativeY",!1);h(this,"_preViewportBound");this._viewPortKey=n,this._scene=t,(e==null?void 0:e.active)!=null&&(this._active=e.active),this._scene.addViewport(this),this._setWithAndHeight(e),this._isWheelPreventDefaultX=(e==null?void 0:e.isWheelPreventDefaultX)||!1,this._isWheelPreventDefaultY=(e==null?void 0:e.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(n){this._width=n}set height(n){this._height=n}get isActive(){return this._active===!1||(this.height||0)<=0||(this.width||0)<=0?!1:this._active}set top(n){var t,e;this._topOrigin=n,this._top=w1(n,(e=(t=this._scene)==null?void 0:t.getParent())==null?void 0:e.height)}set left(n){var t;this._leftOrigin=n,this._left=w1(n,(t=this.scene.getParent())==null?void 0:t.width)}set bottom(n){var t;this._bottomOrigin=n,this._bottom=w1(n,(t=this.scene.getParent())==null?void 0:t.height)}set right(n){var t;this._rightOrigin=n,this._right=w1(n,(t=this.scene.getParent())==null?void 0:t.width)}enable(){this._active=!0}disable(){this._active=!1}resetSizeAndScrollBar(){this._resizeCacheCanvasAndScrollBar()}setScrollBar(n){this._scrollBar=n,this._resizeCacheCanvasAndScrollBar()}removeScrollBar(){this._scrollBar=null}resize(n){Object.keys(n).length!==0&&(this._setWithAndHeight(n),this._resizeCacheCanvasAndScrollBar())}setPadding(n){const{startX:t=0,startY:e=0,endX:s=0,endY:i=0}=n;this._paddingStartX=t,this._paddingEndX=s,this._paddingStartY=e,this._paddingEndY=i,this._resizeCacheCanvasAndScrollBar()}resetPadding(){this.setPadding({startX:0,endX:0,startY:0,endY:0})}makeDirty(n=!0,t=!1){if(this._dirty=n,t){const e=this.scene.getParent();e.classType===N.SCENE_VIEWER&&e.makeDirty(!0)}}isDirty(){return this._dirty}scrollTo(n,t=!0){return this._scroll(0,n,t)}scrollBy(n,t=!0){return this._scroll(1,n,t)}scrollByBar(n,t=!0){var i,o;this._scroll(1,n,t);const{x:e,y:s}=n;this.onScrollByBarObserver.notifyObservers({viewport:this,scrollX:this.scrollX,scrollY:this.scrollY,x:e,y:s,actualScrollX:this.actualScrollX,actualScrollY:this.actualScrollY,limitX:(i=this._scrollBar)==null?void 0:i.limitX,limitY:(o=this._scrollBar)==null?void 0:o.limitY,isTrigger:t})}scrollByOffset(n=0,t=0,e=!0){if(!this._scrollBar||this.isActive===!1)return;const s=n+this._paddingStartX,i=t+this._paddingStartY,o=this.getBarScroll(s,i);return this.scrollBy(o,e)}getBarScroll(n,t){let e=n-this._paddingStartX,s=t-this._paddingStartY;if(this._scrollBar){e*=this._scrollBar.ratioScrollX,s*=this._scrollBar.ratioScrollY;const{scaleX:i,scaleY:o}=this.scene;e*=i,s*=o}else this.scrollX!==void 0&&(e=this.scrollX),this.scrollY!==void 0&&(s=this.scrollY);return{x:e,y:s}}getActualScroll(n,t){let e=n,s=t;if(this._scrollBar){const{scaleX:a,scaleY:c}=this.scene;this._scrollBar.ratioScrollX!==0?(e/=this._scrollBar.ratioScrollX,e/=a):this.actualScrollX!==void 0&&(e=this.actualScrollX),this._scrollBar.ratioScrollY!==0?(s/=this._scrollBar.ratioScrollY,s/=c):this.actualScrollY!==void 0&&(s=this.actualScrollY)}else this.actualScrollX!==void 0&&(e=this.actualScrollX),this.actualScrollY!==void 0&&(s=this.actualScrollY);const{scaleX:i,scaleY:o}=this._scene.getPrecisionScale();return{x:H(e+this._paddingStartX,i),y:H(s+this._paddingStartY,o)}}getTransformedScroll(){const n=this.scrollX,t=this.scrollY;return this.getActualScroll(n,t)}getScrollBar(){return this._scrollBar}updateScroll(n){this._preScrollX=this.scrollX,this._preScrollY=this.scrollY;const{scrollX:t,scrollY:e,actualScrollX:s,actualScrollY:i}=n;return t!==void 0&&(this.scrollX=t),e!==void 0&&(this.scrollY=e),s!==void 0&&(this.actualScrollX=s),i!==void 0&&(this.actualScrollY=i),this}getScrollBarTransForm(){const n=o1.create();return n.multiply(o1.create([1,0,0,1,this._left,this._top])),n}render(n,t=[],e=!1){var l;if(this.isActive===!1||this.width==null||this.height==null||this.width<=1||this.height<=1)return;const s=n||((l=this._scene.getEngine())==null?void 0:l.getCanvas().getContext()),i=this._scene.transform.clone();i.multiply(o1.create([1,0,0,1,-this.actualScrollX||0,-this.actualScrollY||0]));const o=s,a=i.getMatrix(),c=this.getScrollBarTransForm().getMatrix();if(o.save(),this._renderClipState){o.beginPath();const{scaleX:D,scaleY:f}=this._getBoundScale(a[0],a[3]);o.rect(this.left,this.top,(this.width||0)*D,(this.height||0)*f),o.clip()}o.transform(a[0],a[1],a[2],a[3],a[4],a[5]);const u=this._calViewportRelativeBounding();t.forEach(D=>{D.render(o,u)}),o.restore(),this._scrollBar&&e&&(o.save(),o.transform(c[0],c[1],c[2],c[3],c[4],c[5]),this._drawScrollbar(o),o.restore()),this.makeDirty(!1),this._scrollRendered(),this._preViewportBound=u}getBounding(){return this._calViewportRelativeBounding()}getRelativeVector(n){const t=this.scene.transform.clone().invert(),e=this.getTransformedScroll();return t.applyPoint(n).add(I.FromArray([e.x,e.y]))}getAbsoluteVector(n){const t=this.scene.transform.clone(),e=this.getTransformedScroll();return t.applyPoint(n.subtract(I.FromArray([e.x,e.y])))}onMouseWheel(n,t){if(!this._scrollBar||this.isActive===!1)return;let e;if(n.inputIndex===M.MouseWheelX){const s=Math.abs(n.deltaX),i=this._scene.width,a=(this.width||1)/i*s;n.deltaX>0?e=this.scrollBy({x:a}):e=this.scrollBy({x:-a}),this._scene.getParent().classType===N.SCENE_VIEWER?e!=null&&e.isLimitedX||t.stopPropagation():this._isWheelPreventDefaultX?n.preventDefault():e!=null&&e.isLimitedX||n.preventDefault()}if(n.inputIndex===M.MouseWheelY){const s=Math.abs(n.deltaY),i=this._scene.height;let a=(this.height||1)/i*s;n.shiftKey?(a*=rf,n.deltaY>0?e=this.scrollBy({x:a}):e=this.scrollBy({x:-a}),this._scene.getParent().classType===N.SCENE_VIEWER?e!=null&&e.isLimitedX||t.stopPropagation():this._isWheelPreventDefaultX?n.preventDefault():e!=null&&e.isLimitedX||n.preventDefault()):(n.deltaY>0?e=this.scrollBy({y:a}):e=this.scrollBy({y:-a}),this._scene.getParent().classType===N.SCENE_VIEWER?e!=null&&e.isLimitedY||t.stopPropagation():this._isWheelPreventDefaultY?n.preventDefault():e!=null&&e.isLimitedY||n.preventDefault())}n.inputIndex,M.MouseWheelZ,this._scene.makeDirty(!0)}isHit(n){if(this.isActive===!1)return;const{width:t,height:e}=this._getViewPortSize();return n.x>=this.left&&n.x<=this.left+(t||0)&&n.y>=this.top&&n.y<=this.top+(e||0)}pickScrollBar(n){if(!this._scrollBar)return;const e=this.getScrollBarTransForm().invert().applyPoint(n);return this._scrollBar.pick(e)}openClip(){this._renderClipState=!0}closeClip(){this._renderClipState=!1}dispose(){var n;this.onMouseWheelObserver.clear(),this.onScrollAfterObserver.clear(),this.onScrollBeforeObserver.clear(),this.onScrollStopObserver.clear(),(n=this._scrollBar)==null||n.dispose(),this._scene.removeViewport(this._viewPortKey)}limitedScroll(){var i,o;if(!this._scrollBar)return;const n=(i=this._scrollBar)==null?void 0:i.limitX,t=(o=this._scrollBar)==null?void 0:o.limitY;let e=!0,s=!0;return this.scrollX<0?this.scrollX=0:this.scrollX>n?this.scrollX=n:e=!1,this.scrollY<0?this.scrollY=0:this.scrollY>t?this.scrollY=t:s=!1,{isLimitedX:e,isLimitedY:s}}_resizeCacheCanvasAndScrollBar(){const n=this.actualScrollX,t=this.actualScrollY,{width:e,height:s}=this._getViewPortSize(),i=(this._scene.width-this._paddingEndX)*this._scene.scaleX,o=(this._scene.height-this._paddingEndY)*this._scene.scaleY;if(this._scrollBar){this._scrollBar.resize(e,s,i,o);const{x:a,y:c}=this.getBarScroll(n,t);this.scrollTo({x:a,y:c})}this.makeDirty(!0)}_getViewPortSize(){const n=this._scene.getParent(),{width:t,height:e}=n,{scaleX:s=1,scaleY:i=1}=this._scene;let o,a,c=this.left*s,u=this.top*i;return this._leftOrigin!=null&&(c=this._leftOrigin*s),this._topOrigin!=null&&(u=this._topOrigin*i),this._widthOrigin!=null?o=this._widthOrigin*s:(o=t-(c+this._right),this.width=o),this._heightOrigin!=null?a=this._heightOrigin*i:(a=e-(u+this._bottom),this.height=a),this._left=c,this._top=u,{width:o,height:a}}_scrollRendered(){this._preScrollX=this.scrollX,this._preScrollY=this.scrollY}_triggerScrollStop(n,t,e,s=!0){clearTimeout(this._scrollStopNum),this._scrollStopNum=setTimeout(()=>{var i,o;this.onScrollStopObserver.notifyObservers({viewport:this,scrollX:this.scrollX,scrollY:this.scrollY,x:t,y:e,actualScrollX:n.x,actualScrollY:n.y,limitX:(i=this._scrollBar)==null?void 0:i.limitX,limitY:(o=this._scrollBar)==null?void 0:o.limitY,isTrigger:s})},2)}_scroll(n,t,e=!0){var c,u,l,D;const{x:s,y:i}=t;if(this._scrollBar==null)return;s!==void 0&&(this._scrollBar.hasHorizonThumb()?n===1?this.scrollX+=s:this.scrollX=s:this.scrollX=0),i!==void 0&&(this._scrollBar.hasVerticalThumb()?n===1?this.scrollY+=i:this.scrollY=i:this.scrollY=0);const o=this.limitedScroll();this.onScrollBeforeObserver.notifyObservers({viewport:this,scrollX:this.scrollX,scrollY:this.scrollY,x:s,y:i,limitX:(c=this._scrollBar)==null?void 0:c.limitX,limitY:(u=this._scrollBar)==null?void 0:u.limitY,isTrigger:e}),this._scrollBar?this._scrollBar.makeDirty(!0):this.makeDirty(!0);const a=this.getTransformedScroll();return this.actualScrollX=a.x,this.actualScrollY=a.y,this.onScrollAfterObserver.notifyObservers({viewport:this,scrollX:this.scrollX,scrollY:this.scrollY,x:s,y:i,actualScrollX:a.x,actualScrollY:a.y,limitX:(l=this._scrollBar)==null?void 0:l.limitX,limitY:(D=this._scrollBar)==null?void 0:D.limitY,isTrigger:e}),this._triggerScrollStop(a,s,i,e),o}_calViewportRelativeBounding(){var S;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 t=this._scene.transform.clone().getMatrix(),e=this._isRelativeX&&t[0]<1?t[0]:1,s=this._isRelativeY&&t[3]<1?t[3]:1,i=this._isRelativeX?1:t[0]<1?t[0]:1,o=this._isRelativeY?1:t[3]<1?t[3]:1;let a=this._width,c=this._height;const u=this._getViewPortSize();t[0]>1&&(a=u.width),t[3]>1&&(c=u.height);const l=this.left*e,D=((a||0)+this.left)*i,f=this.top*s,p=((c||0)+this.top)*o,F=this.getRelativeVector(I.FromArray([l,f])),E=this.getRelativeVector(I.FromArray([D,p])),m={top:F.y,left:F.x,right:E.x,bottom:E.y},b=(S=this._preViewportBound)==null?void 0:S.viewBound;return{viewBound:m,diffBounds:this._diffViewBound(m,b),diffX:((b==null?void 0:b.left)||0)-m.left,diffY:((b==null?void 0:b.top)||0)-m.top,viewPortPosition:{top:f,left:l,bottom:p,right:D},viewPortKey:this.viewPortKey}}_diffViewBound(n,t){if(t==null)return[n];const e={startRow:n.top,endRow:n.bottom,startColumn:n.left,endColumn:n.right},s={startRow:t.top,endRow:t.bottom,startColumn:t.left,endColumn:t.right};return d.Rectangle.subtract(e,s).map(o=>{const{startRow:a,endRow:c,startColumn:u,endColumn:l}=o;return{left:u,top:a,right:l,bottom:c}})}_drawScrollbar(n){if(!this._scrollBar)return;const t=this._scene.getParent();t.classType===N.SCENE_VIEWER?this._scrollBar.render(n):t.classType===N.ENGINE&&this._scrollBar.render(n)}_setWithAndHeight(n){this.top=(n==null?void 0:n.top)||0,this.left=(n==null?void 0:n.left)||0,this.bottom=(n==null?void 0:n.bottom)||0,this.right=(n==null?void 0:n.right)||0,d.Tools.isDefine(n==null?void 0:n.width)?(this.width=n==null?void 0:n.width,this._widthOrigin=this.width,this._isRelativeX=!1):(this.width=null,this._widthOrigin=null,this._isRelativeX=!0),d.Tools.isDefine(n==null?void 0:n.height)?(this.height=n==null?void 0:n.height,this._heightOrigin=this.height,this._isRelativeY=!1):(this.height=null,this._heightOrigin=null,this._isRelativeY=!0)}_getBoundScale(n,t){return n=this._isRelativeX&&n<1?1:n,t=this._isRelativeY&&t<1?1:t,{scaleX:n,scaleY:t}}}exports.ArabicHandler=K4;exports.BASE_OBJECT_ARRAY=W2;exports.BORDER_TYPE=J;exports.Background=Ot;exports.BaseObject=I1;exports.Border=wt;exports.BreakType=n2;exports.CIRCLE_OBJECT_ARRAY=Yt;exports.COLOR_BLACK_RGB=G1;exports.CURSOR_TYPE=r1;exports.Canvas=o2;exports.CanvasRenderMode=y4;exports.Circle=h7;exports.ColumnHeaderLayout=At;exports.ComponentExtension=i7;exports.Control=Qd;exports.CustomObject=Xd;exports.DEFAULT_DOCUMENT_FONTSIZE=U7;exports.DEFAULT_FONTFACE_PLANE=Z2;exports.DEFAULT_MEASURE_TEXT=G7;exports.DEFAULT_OFFSET_SPACING=m6;exports.DEFAULT_SELECTION_LAYER_INDEX=qt;exports.DEFAULT_SKELETON_FOOTER=Zt;exports.DEFAULT_SKELETON_HEADER=Jt;exports.DOCUMENT_CONTEXT_CLIP_TYPE=V7;exports.DeviceInputEventType=m4;exports.DeviceType=d1;exports.DocumentHorizonBar=Fd;exports.DocumentSkeleton=i2;exports.DocumentSkeletonState=vt;exports.DocumentVerticalBar=yd;exports.DocumentViewModel=M1;exports.Documents=x2;exports.DocumentsSpanAndLineExtensionRegistry=l2;exports.Drawing=tf;exports.EMOJI_REG=i4;exports.EVENT_TYPE=E1;exports.Engine=K2;exports.EventConstants=N2;exports.FIX_ONE_PIXEL_BLUR_OFFSET=a1;exports.Font=It;exports.FontCache=O1;exports.Group=Lt;exports.HitCanvas=FD;exports.INITIAL_MATRIX=$2;exports.INITIAL_Path2=F4;exports.IRenderManagerService=Ht;exports.IRenderingEngine=Xt;exports.ITextSelectionRenderManager=Td;exports.IsSafari=t4;exports.LINK_VIEW_PORT_TYPE=W7;exports.Layer=$t;exports.LineType=A2;exports.Liquid=O2;exports.MAXIMUM_ROW_HEIGHT=K7;exports.MIDDLE_CELL_POS_MAGIC_NUMBER=R6;exports.NORMAL_TEXT_SELECTION_PLUGIN_STYLE=T2;exports.NodePositionConvertToCursor=mt;exports.NodePositionMap=X1;exports.NodePositionStateType=pt;exports.NodePositionType=F2;exports.ORIENTATION_TYPE=E2;exports.PATH_OBJECT_ARRAY=Mt;exports.PageLayoutType=T1;exports.Path=D1;exports.Path2=C4;exports.PerformanceMonitor=E4;exports.Picture=J2;exports.PointerInput=M;exports.RANGE_DIRECTION=m2;exports.RECT_OBJECT_ARRAY=Ct;exports.REGULAR_POLYGON_OBJECT_ARRAY=Et;exports.RENDER_CLASS_TYPE=N;exports.RICHTEXT_OBJECT_ARRAY=A6;exports.Rect=f1;exports.RegularPolygon=s6;exports.RenderComponent=G6;exports.RenderManagerService=kt;exports.RichText=ef;exports.RollingAverage=b4;exports.RowHeaderLayout=Rt;exports.SHAPE_OBJECT_ARRAY=Ft;exports.SHAPE_TYPE=I6;exports.SHEET_EXTENSION_TYPE=Bt;exports.SLIDE_NAVIGATION_KEY=Pt;exports.Scene=Nt;exports.SceneCanvas=mD;exports.SceneViewer=l7;exports.ScrollBar=D7;exports.ScrollTimer=r2;exports.ScrollTimerType=Tt;exports.Selection=sf;exports.Shape=c2;exports.SheetColumnHeaderExtensionRegistry=o7;exports.SheetComponent=a7;exports.SheetExtension=h2;exports.SheetRowHeaderExtensionRegistry=r7;exports.ShowGridlinesState=xt;exports.SkeletonType=h4;exports.Slide=Hd;exports.SpanType=u1;exports.Spreadsheet=kd;exports.SpreadsheetColumnHeader=Bd;exports.SpreadsheetExtensionRegistry=R2;exports.SpreadsheetHeader=u7;exports.SpreadsheetRowHeader=$d;exports.SpreadsheetSkeleton=c7;exports.TEXT_RANGE_LAYER_INDEX=B6;exports.TRANSFORM_CHANGE_OBSERVABLE_TYPE=i1;exports.TextRange=V2;exports.TibetanHandler=Z4;exports.Transform=o1;exports.UNIVER_GLOBAL_DEFAULT_FONT_FAMILY=s4;exports.UNIVER_GLOBAL_DEFAULT_FONT_SIZE=n4;exports.UniverPrintingContext=T4;exports.UniverRenderingContext=v4;exports.UniverRenderingContext2D=j6;exports.UniverRenderingContextWebGL=gD;exports.UniverRenderingContextWebGPU=pD;exports.VERTICAL_ROTATE_ANGLE=z1;exports.Vector2=I;exports.Viewport=of;exports._createSkeletonWordOrLetter=n6;exports.addSpanToDivide=k2;exports.calculateLineTopByDrawings=Q4;exports.calculateParagraphLayout=st;exports.calculateRectRotate=v2;exports.cancelRequestFrame=q7;exports.checkStyle=oD;exports.clearFontCreateConfigCache=Y4;exports.clearLineByBorderType=d4;exports.columnIterator=N4;exports.compareNodePosition=U2;exports.compareNodePositionLogic=s7;exports.convertTextRotation=S4;exports.createAndUpdateBlockAnchor=nt;exports.createCanvasElement=P6;exports.createImageElement=kh;exports.createSkeletonBulletSpan=j4;exports.createSkeletonColumn=J_;exports.createSkeletonLetterSpan=I2;exports.createSkeletonLine=q4;exports.createSkeletonPage=s2;exports.createSkeletonSection=Z6;exports.createSkeletonTabSpan=W4;exports.createSkeletonWordSpan=z4;exports.cursorConvertToTextRange=bt;exports.dealWidthBlocksByMultiColumnAndContinuous=JD;exports.dealWidthInlineDrawing=I4;exports.dealWidthParagraph=gt;exports.dealWithBlockError=B4;exports.dealWithBullet=A4;exports.dealWithSections=J6;exports.degToRad=v1;exports.drawDiagonalLineByBorderType=_4;exports.drawLineByBorderType=X6;exports.emojiHandler=J4;exports.fixLineWidthByScale=H;exports.generateRandomKey=e4;exports.getAnchorBounding=St;exports.getBulletOrderedSymbol=O4;exports.getCanvasOffsetByEngine=yt;exports.getCellByIndex=Q1;exports.getCellInfoInMergeData=t6;exports.getCellPositionByIndex=Y1;exports.getCharSpaceApply=e6;exports.getCharSpaceConfig=L4;exports.getColor=l1;exports.getColumnByDivide=xD;exports.getCurrentScrollXY=t2;exports.getDPI=w2;exports.getDefaultBulletSke=b6;exports.getDevicePixelRatio=H6;exports.getDocsSkeletonPageSize=C2;exports.getFontCreateConfig=u2;exports.getFontStyleString=S2;exports.getLastColumn=AD;exports.getLastLine=R4;exports.getLastLineByColumn=x4;exports.getLastNotFullColumnInfo=y2;exports.getLastNotFullDivideInfo=U6;exports.getLastPage=U1;exports.getLastRemainingDivide=PD;exports.getLastSection=a2;exports.getLastSpan=LD;exports.getLineHeightConfig=K6;exports.getLineOffset=f4;exports.getLineWidth=z6;exports.getLineWith=g4;exports.getNextDivide=MD;exports.getNumberUnitValue=A1;exports.getOneTextSelectionRange=y6;exports.getPageContentWidth=ID;exports.getParagraphBySpan=D4;exports.getPointerPrefix=F6;exports.getPositionHorizon=k4;exports.getPositionVertical=H4;exports.getPreLine=RD;exports.getRotateOffsetAndFarthestHypotenuse=W6;exports.getRotateOrientation=p4;exports.getScale=k6;exports.getSizeForDom=c4;exports.getSpanGroupWidth=X4;exports.getTranslateInSpreadContextWithPixelRatio=fD;exports.getValueType=P1;exports.hasAllLatin=Vh;exports.hasArabic=$6;exports.hasBasicLatin=Kh;exports.hasCJK=Q2;exports.hasCJKText=z2;exports.hasLatinExtendedA=Zh;exports.hasLatinExtendedB=qh;exports.hasLatinOneSupplement=Jh;exports.hasListSpan=cD;exports.hasMixedTextLayout=U4;exports.hasSpace=r4;exports.hasTibetan=N6;exports.hasUnMergedCellInRow=a4;exports.injectStyle=rD;exports.isArray=zh;exports.isBlankColumn=P4;exports.isBlankPage=$D;exports.isColumnFull=M4;exports.isDate=Xh;exports.isFirstSpan=DD;exports.isFunction=q2;exports.isIndentBySpan=lD;exports.isLastSpan=hD;exports.isNumber=Wh;exports.isObject=jh;exports.isPlaceholderOrSpace=_D;exports.isRectIntersect=u4;exports.isRegExp=Yh;exports.isSameLine=dD;exports.isString=C6;exports.lineIterator=$4;exports.mergeInfoOffset=E6;exports.otherHandler=V4;exports.pixelToPt=uD;exports.precisionTo=Y2;exports.ptToMM=sD;exports.ptToPixel=aD;exports.ptToPx=eD;exports.pxToInch=iD;exports.pxToNum=H1;exports.pxToPt=nD;exports.radToDeg=Q7;exports.requestNewFrame=b2;exports.setColumnFullState=q6;exports.setDivideFullState=tt;exports.setLineMarginBottom=zD;exports.setLineType=Y6;exports.setSpanGroupLeft=G4;exports.setSpanLeft=HD;exports.spanIterator=kD;exports.startWithEmoji=L6;exports.toPx=w1;exports.updateBlockIndex=j2;exports.updateDivideInLine=WD;exports.validationGrid=V6;