@univerjs/engine-render 0.1.0-beta.5 → 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/README.md +8 -3
- package/lib/cjs/index.js +2 -58
- package/lib/es/index.js +6128 -6096
- package/lib/types/basics/tools.d.ts +4 -0
- package/lib/types/components/docs/common/text-range.d.ts +10 -1
- package/lib/types/components/docs/common/tools.d.ts +0 -1
- package/lib/types/components/docs/document.d.ts +1 -0
- package/lib/types/components/docs/text-selection-render-manager.d.ts +14 -14
- package/lib/types/components/sheets/sheet-skeleton.d.ts +9 -15
- package/lib/types/layer.d.ts +2 -1
- package/lib/types/render-manager.service.d.ts +11 -2
- package/lib/types/scene.-transformer.d.ts +2 -2
- package/lib/types/scene.input-manager.d.ts +2 -1
- package/lib/types/shape/base-scroll-bar.d.ts +2 -2
- package/lib/types/thin-scene.d.ts +2 -2
- package/lib/umd/index.js +2 -58
- package/package.json +4 -4
package/lib/cjs/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";var Wt=Object.defineProperty;var jt=(r,e,t)=>e in r?Wt(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t;var h=(r,e,t)=>(jt(r,typeof e!="symbol"?e+"":e,t),t);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const d=require("@univerjs/core"),e2=require("@wendellhu/redi"),p1=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,q2='"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},Gt={...z7,marginTop:20},Vt={...z7,marginBottom:20},W7="0",p6=1,j7=14;var i1=(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))(i1||{}),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 Ut=1e3,V7=2e3,o1=.5;var s1=(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))(s1||{});class Kt{isEmpty(){return this._isEmpty()}toString(e){if(this.isEmpty())throw new Error("Output is empty.");return this._toString(e)}toRegExp(e){return new RegExp(this.toString(e),e)}}class S1 extends Kt{constructor(...e){super(),this.data=[];for(const t of e)t instanceof S1?this.data.push(...t.data):this.data.push(qt(t));this._unique()}union(...e){return new S1(this,...e)}subtract(...e){const t=this.data.slice(),n=[];let s=0;const{data:i}=new S1(...e);for(;t.length!==0;){const o=t.shift(),[a,u]=o;let c;do{c=!0;const l=i[s];if(l===void 0){n.push(o);break}const[D,f]=l;f<a?(c=!1,s++):u<D?n.push(o):D<=a&&f<u?(s++,t.unshift([f+1,u])):a<D&&f<u?(s++,n.push([a,D-1]),t.unshift([f+1,u])):a<D&&u<=f&&n.push([a,D-1])}while(!c)}return new S1(...n)}intersect(...e){return this.subtract(this.subtract(...e))}_isEmpty(){return this.data.length===0}_toString(e){return Qt(this.data,e)}_unique(){this.data.sort(Zt);const e=[];let t=null;for(const n of this.data)t===null||t[1]+1<n[0]?(e.push(n),t=n):(e.splice(-1,1,[Math.min(n[0],t[0]),Math.max(n[1],t[1])]),t=e[e.length-1]);this.data=e}}const I6=(...r)=>new S1(...r);function Jt(r){if(r.length!==1){const e=`${r.length} (${JSON.stringify(r)})`;throw new Error(`Expected length = 1, but received ${e}.`)}return r.charCodeAt(0)}function qt(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[e]=[r].map(t=>typeof t!="object"?[t,t]:t).map(t=>t.map(n=>typeof n=="string"?Jt(n):n));return e}function Zt(r,e){return r[0]-e[0]}function Qt(r,e=""){if(e.includes("u"))return g7(r,!0);const{normal:t,surrogate:n}=ee(r),s=[];return t.length!==0&&s.push(g7(t,!1)),s.push(...te(n)),s.join("|")}function g7(r,e){return`[${r.map(([n,s])=>n===s?p2(n,e):`${p2(n,e)}-${p2(s,e)}`).join("")}]`}function te(r){const e=[];if(r.entire.data.length!==0){const t=r.entire.toString(),n=`[${[56320,57343].map(s=>p2(s,!1)).join("-")}]`;e.push(`${t}${n}`)}for(const{h:t,l:n}of r.partial){const s=p2(t,!1),i=n.toString();e.push(`${s}${i}`)}return e}function ee(r){const e=[],t=[];for(let n=0;n<r.length;n++){const s=r[n],[i,o]=s;if(i>=65536){t.push(...r.slice(n));break}if(o>=65536){e.push([i,65535]),t.push([65536,o],...r.slice(n+1));break}e.push(s)}return{normal:e,surrogate:ne(t)}}function ne(r){const e=[],t=[];for(const[i,o]of r){const a=p7(i),u=p7(o);if(a.h===u.h){s(a.h,a.l,u.l);continue}a.l===56320?n(a.h):s(a.h,a.l,57343);for(let c=a.h+1;c<u.h;c++)n(c);u.l===57343?n(u.h):s(u.h,56320,u.l)}return{entire:new S1(...e),partial:t.map(({h:i,l:o})=>({h:i,l:new S1(...o)}))};function n(i){e.push(i)}function s(i,o,a){const u=t[t.length-1];u!==void 0&&u.h===i?u.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,e){const t=r.toString(16);return e?`\\u{${t}}`:`\\u${"0".repeat(4-t.length)}${t}`}const se=[[0,127]],ie=[[48,57],[65,70],[97,102]],re=[[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]],oe=[[0,1114111]],ae=[[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]],ue=[1564,[8206,8207],[8234,8238],[8294,8297]],ce=[[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],le=[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]],he=[[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]],De=[[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]],_e=[[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]],de=[[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]],ge=[[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]],pe=[[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]],me=[[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]],Fe=[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],Ce=[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]],Ee=[329,1651,3959,3961,[6051,6052],[8298,8303],[9001,9002],917505],be=[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]],Se=[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]],ve=[35,42,[48,57],8205,8419,65039,[127462,127487],[127995,127999],[129456,129459],[917536,917631]],Te=[[127995,127999]],ye=[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]],Be=[[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]],Oe=[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]],we=[[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]],Ae=[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]],Ie=[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]],Re=[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]],xe=[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]],Me=[[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]],Pe=[[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]],Le=[[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]],$e=[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]],Ne=[[48,57],[65,70],[97,102],[65296,65305],[65313,65318],[65345,65350]],ke=[45,173,1418,6150,[8208,8209],11799,12539,65123,65293,65381],He=[[12272,12273],[12276,12283]],Xe=[[12274,12275]],Ye=[[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]],ze=[[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]],We=[[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]],je=[[8204,8205]],Ge=[[3648,3652],[3776,3780],[6581,6583],6586,[43701,43702],43705,[43707,43708]],Ve=[[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]],Ue=[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]],Ke=[[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]],Je=[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]],qe=[847,[4447,4448],[6068,6069],8293,12644,65440,[65520,65528],917504,[917506,917535],[917632,917759],[918e3,921599]],Ze=[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]],Qe=[183,903,[4969,4977],6618],t0=[[6277,6278],8472,8494,[12443,12444]],e0=[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]],n0=[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]],s0=[[8544,8559],[9398,9423],[127280,127305],[127312,127337],[127344,127369]],i0=[[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]],r0=[[9,13],32,133,[8206,8207],[8232,8233]],o0=[[1536,1541],1757,1807,[2192,2193],2274,69821,69837],a0=[34,39,171,187,[8216,8223],[8249,8250],11842,[12300,12303],[12317,12319],[65089,65092],65282,65287,[65378,65379]],u0=[[11904,11929],[11931,12019],[12032,12245]],c0=[[127462,127487]],l0=[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],h0=[[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],D0=[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]],_0=[[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]],d0=[[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]],g0=[[9,13],32,133,160,5760,[8192,8202],[8232,8233],8239,8287,12288],p0=[[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]],m0=[[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]],F0=Object.freeze(Object.defineProperty({__proto__:null,ASCII:se,ASCII_Hex_Digit:ie,Alphabetic:re,Any:oe,Assigned:ae,Bidi_Control:ue,Bidi_Mirrored:ce,Case_Ignorable:le,Cased:he,Changes_When_Casefolded:De,Changes_When_Casemapped:_e,Changes_When_Lowercased:de,Changes_When_NFKC_Casefolded:fe,Changes_When_Titlecased:ge,Changes_When_Uppercased:pe,Composition_Exclusion:me,Dash:Fe,Default_Ignorable_Code_Point:Ce,Deprecated:Ee,Diacritic:be,Emoji:Se,Emoji_Component:ve,Emoji_Modifier:Te,Emoji_Modifier_Base:ye,Emoji_Presentation:Be,Expands_On_NFC:Oe,Expands_On_NFD:we,Expands_On_NFKC:Ae,Expands_On_NFKD:Ie,Extended_Pictographic:Re,Extender:xe,Full_Composition_Exclusion:Me,Grapheme_Base:Pe,Grapheme_Extend:Le,Grapheme_Link:$e,Hex_Digit:Ne,Hyphen:ke,IDS_Binary_Operator:He,IDS_Trinary_Operator:Xe,ID_Continue:Ye,ID_Start:ze,Ideographic:We,Join_Control:je,Logical_Order_Exception:Ge,Lowercase:Ve,Math:Ue,Noncharacter_Code_Point:Ke,Other_Alphabetic:Je,Other_Default_Ignorable_Code_Point:qe,Other_Grapheme_Extend:Ze,Other_ID_Continue:Qe,Other_ID_Start:t0,Other_Lowercase:e0,Other_Math:n0,Other_Uppercase:s0,Pattern_Syntax:i0,Pattern_White_Space:r0,Prepended_Concatenation_Mark:o0,Quotation_Mark:a0,Radical:u0,Regional_Indicator:c0,Sentence_Terminal:l0,Soft_Dotted:h0,Terminal_Punctuation:D0,Unified_Ideograph:_0,Uppercase:d0,Variation_Selector:f0,White_Space:g0,XID_Continue:p0,XID_Start:m0},Symbol.toStringTag,{value:"Module"})),C0=[[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]],E0=[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],b0=[95,[8255,8256],8276,[65075,65076],[65101,65103],65343],S0=[[0,31],[127,159]],v0=[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],T0=[45,1418,1470,5120,6150,[8208,8213],11799,11802,[11834,11835],11840,11869,12316,12336,12448,[65073,65074],65112,65123,65293,69293],y0=[[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]],B0=[[1160,1161],6846,[8413,8416],[8418,8420],[42608,42610]],O0=[187,8217,8221,8250,11779,11781,11786,11789,11805,11809],w0=[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]],A0=[171,8216,[8219,8220],8223,8249,11778,11780,11785,11788,11804,11808],I0=[[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]],R0=[[5870,5872],[8544,8578],[8581,8584],12295,[12321,12329],[12344,12346],[42726,42735],[65856,65908],66369,66378,[66513,66517],[74752,74862]],x0=[8232],M0=[[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]],P0=[[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]],L0=[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]],$0=[[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],N0=[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]],k0=[[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]],H0=[[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]],X0=[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],Y0=[[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]],z0=[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]],W0=[[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]],j0=[[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]],G0=[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]],V0=[8233],U0=[[57344,63743],[983040,1048573],[1048576,1114109]],K0=[[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]],J0=[32,160,5760,[8192,8202],[8232,8233],8239,8287,12288],q0=[32,160,5760,[8192,8202],8239,8287,12288],Z0=[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]],Q0=[[55296,57343]],t3=[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]],e3=[453,456,459,498,[8072,8079],[8088,8095],[8104,8111],8124,8140,8188],n3=[[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]],s3=[[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]],i3=Object.freeze(Object.defineProperty({__proto__:null,Cased_Letter:C0,Close_Punctuation:E0,Connector_Punctuation:b0,Control:S0,Currency_Symbol:v0,Dash_Punctuation:T0,Decimal_Number:y0,Enclosing_Mark:B0,Final_Punctuation:O0,Format:w0,Initial_Punctuation:A0,Letter:I0,Letter_Number:R0,Line_Separator:x0,Lowercase_Letter:M0,Mark:P0,Math_Symbol:L0,Modifier_Letter:$0,Modifier_Symbol:N0,Nonspacing_Mark:k0,Number:H0,Open_Punctuation:X0,Other:Y0,Other_Letter:z0,Other_Number:W0,Other_Punctuation:j0,Other_Symbol:G0,Paragraph_Separator:V0,Private_Use:U0,Punctuation:K0,Separator:J0,Space_Separator:q0,Spacing_Mark:Z0,Surrogate:Q0,Symbol:t3,Titlecase_Letter:e3,Unassigned:n3,Uppercase_Letter:s3},Symbol.toStringTag,{value:"Module"})),r3=[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]],o3=[[1536,1541],[1632,1641],[1643,1644],1757,[2192,2193],2274,[68912,68921],[69216,69246]],a3=[[0,8],[14,27],[127,132],[134,159],173,6158,[8203,8205],[8288,8292],[8298,8303],65279,[113824,113827],[119155,119162],917505,[917536,917631]],u3=[44,[46,47],58,160,1548,8239,8260,65104,65106,65109,65292,[65294,65295],65306],c3=[[48,57],[178,179],185,[1776,1785],8304,[8308,8313],[8320,8329],[9352,9371],[65296,65305],[66273,66299],[120782,120831],[127232,127242],[130032,130041]],l3=[43,45,[8314,8315],[8330,8331],8722,64297,[65122,65123],65291,65293],h3=[[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],D3=[8296],_3=[[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]],d3=[8234],f3=[8294],g3=[8237],p3=[[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]],m3=[[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]],F3=[10,13,[28,30],133,8233],C3=[8236],E3=[8297],b3=[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]],S3=[8235],v3=[8295],T3=[8238],y3=[9,11,31],B3=[12,32,5760,[8192,8202],8232,8287,12288],O3=Object.freeze(Object.defineProperty({__proto__:null,Arabic_Letter:r3,Arabic_Number:o3,Boundary_Neutral:a3,Common_Separator:u3,European_Number:c3,European_Separator:l3,European_Terminator:h3,First_Strong_Isolate:D3,Left_To_Right:_3,Left_To_Right_Embedding:d3,Left_To_Right_Isolate:f3,Left_To_Right_Override:g3,Nonspacing_Mark:p3,Other_Neutral:m3,Paragraph_Separator:F3,Pop_Directional_Format:C3,Pop_Directional_Isolate:E3,Right_To_Left:b3,Right_To_Left_Embedding:S3,Right_To_Left_Isolate:v3,Right_To_Left_Override:T3,Segment_Separator:y3,White_Space:B3},Symbol.toStringTag,{value:"Module"})),w3=[[125184,125259],[125264,125273],[125278,125279]],A3=[[71424,71450],[71453,71467],[71472,71494]],I3=[[82944,83526]],R3=[[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]],x3=[[1329,1366],[1369,1418],[1421,1423],[64275,64279]],M3=[[68352,68405],[68409,68415]],P3=[[6912,6988],[6992,7038]],L3=[[42656,42743],[92160,92728]],$3=[[92880,92909],[92912,92917]],N3=[[7104,7155],[7164,7167]],k3=[[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]],H3=[[72704,72712],[72714,72758],[72760,72773],[72784,72812]],X3=[[746,747],[12549,12591],[12704,12735]],Y3=[[69632,69709],[69714,69749],69759],z3=[[10240,10495]],W3=[[6656,6683],[6686,6687]],j3=[[5952,5971]],G3=[[5120,5759],[6320,6389],[72368,72383]],V3=[[66208,66256]],U3=[[66864,66915],66927],K3=[[69888,69940],[69942,69959]],J3=[[43520,43574],[43584,43597],[43600,43609],[43612,43615]],q3=[[5024,5109],[5112,5117],[43888,43967]],Z3=[[69552,69579]],Q3=[[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]],t8=[[994,1007],[11392,11507],[11513,11519]],e8=[[73728,74649],[74752,74862],[74864,74868],[74880,75075]],n8=[[67584,67589],67592,[67594,67637],[67639,67640],67644,67647],s8=[[77712,77810]],i8=[[1024,1156],[1159,1327],[7296,7304],7467,7544,[11744,11775],[42560,42655],[65070,65071],[122928,122989],123023],r8=[[66560,66639]],o8=[[2304,2384],[2389,2403],[2406,2431],[43232,43263],[72448,72457]],a8=[[71936,71942],71945,[71948,71955],[71957,71958],[71960,71989],[71991,71992],[71995,72006],[72016,72025]],u8=[[71680,71739]],c8=[[113664,113770],[113776,113788],[113792,113800],[113808,113817],[113820,113823]],l8=[[77824,78933]],h8=[[66816,66855]],D8=[[69600,69622]],_8=[[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]],d8=[[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]],g8=[[66352,66378]],p8=[[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]],m8=[[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]],F8=[[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]],C8=[[73056,73061],[73063,73064],[73066,73102],[73104,73105],[73107,73112],[73120,73129]],E8=[[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]],b8=[[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]],S8=[[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]],v8=[[68864,68903],[68912,68921]],T8=[[5920,5940]],y8=[[67808,67826],[67828,67829],[67835,67839]],B8=[[1425,1479],[1488,1514],[1519,1524],[64285,64310],[64312,64316],64318,[64320,64321],[64323,64324],[64326,64335]],O8=[[12353,12438],[12445,12447],[110593,110879],110898,[110928,110930],127488],w8=[[67648,67669],[67671,67679]],A8=[[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]],I8=[[68448,68466],[68472,68479]],R8=[[68416,68437],[68440,68447]],x8=[[43392,43469],[43472,43481],[43486,43487]],M8=[[69760,69826],69837],P8=[[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]],L8=[[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]],$8=[[73472,73488],[73490,73530],[73534,73561]],N8=[[43264,43309],43311],k8=[[68096,68099],[68101,68102],[68108,68115],[68117,68119],[68121,68149],[68152,68154],[68159,68168],[68176,68184]],H8=[94180,[101120,101589]],X8=[[6016,6109],[6112,6121],[6128,6137],[6624,6655]],Y8=[[70144,70161],[70163,70209]],z8=[[70320,70378],[70384,70393]],W8=[[3713,3714],3716,[3718,3722],[3724,3747],3749,[3751,3773],[3776,3780],3782,[3784,3790],[3792,3801],[3804,3807]],j8=[[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]],G8=[[7168,7223],[7227,7241],[7245,7247]],V8=[[6400,6430],[6432,6443],[6448,6459],6464,[6468,6479]],U8=[[67072,67382],[67392,67413],[67424,67431]],K8=[[65536,65547],[65549,65574],[65576,65594],[65596,65597],[65599,65613],[65616,65629],[65664,65786]],J8=[[42192,42239],73648],q8=[[66176,66204]],Z8=[[67872,67897],67903],Q8=[[69968,70006]],t9=[[73440,73464]],e9=[[3328,3340],[3342,3344],[3346,3396],[3398,3400],[3402,3407],[3412,3427],[3430,3455]],n9=[[2112,2139],2142],s9=[[68288,68326],[68331,68342]],i9=[[72816,72847],[72850,72871],[72873,72886]],r9=[[72960,72966],[72968,72969],[72971,73014],73018,[73020,73021],[73023,73031],[73040,73049]],o9=[[93760,93850]],a9=[[43744,43766],[43968,44013],[44016,44025]],u9=[[124928,125124],[125127,125142]],c9=[[68e3,68023],[68028,68047],[68050,68095]],l9=[[67968,67999]],h9=[[93952,94026],[94031,94087],[94095,94111]],D9=[[71168,71236],[71248,71257]],_9=[[6144,6145],6148,[6150,6169],[6176,6264],[6272,6314],[71264,71276]],d9=[[92736,92766],[92768,92777],[92782,92783]],f9=[[70272,70278],70280,[70282,70285],[70287,70301],[70303,70313]],g9=[[4096,4255],[43488,43518],[43616,43647]],p9=[[67712,67742],[67751,67759]],m9=[[124112,124153]],F9=[[72096,72103],[72106,72151],[72154,72164]],C9=[[6528,6571],[6576,6601],[6608,6618],[6622,6623]],E9=[[70656,70747],[70749,70753]],b9=[[1984,2042],[2045,2047]],S9=[94177,[110960,111355]],v9=[[123136,123180],[123184,123197],[123200,123209],[123214,123215]],T9=[[5760,5788]],y9=[[7248,7295]],B9=[[68736,68786],[68800,68850],[68858,68863]],O9=[[66304,66339],[66349,66351]],w9=[[68224,68255]],A9=[[66384,66426]],I9=[[66464,66499],[66504,66517]],R9=[[69376,69415]],x9=[[68192,68223]],M9=[[68608,68680]],P9=[[69488,69513]],L9=[[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]],$9=[[66736,66771],[66776,66811]],N9=[[66688,66717],[66720,66729]],k9=[[92928,92997],[93008,93017],[93019,93025],[93027,93047],[93053,93071]],H9=[[67680,67711]],X9=[[72384,72440]],Y9=[[43072,43127]],z9=[[67840,67867],67871],W9=[[68480,68497],[68505,68508],[68521,68527]],j9=[[43312,43347],43359],G9=[[5792,5866],[5870,5880]],V9=[[2048,2093],[2096,2110]],U9=[[43136,43205],[43214,43225]],K9=[[70016,70111]],J9=[[66640,66687]],q9=[[71040,71093],[71096,71133]],Z9=[[120832,121483],[121499,121503],[121505,121519]],Q9=[[3457,3459],[3461,3478],[3482,3505],[3507,3515],3517,[3520,3526],3530,[3535,3540],3542,[3544,3551],[3558,3567],[3570,3572],[70113,70132]],t5=[[69424,69465]],e5=[[69840,69864],[69872,69881]],n5=[[72272,72354]],s5=[[7040,7103],[7360,7367]],i5=[[43008,43052]],r5=[[1792,1805],[1807,1866],[1869,1871],[2144,2154]],o5=[[5888,5909],5919],a5=[[5984,5996],[5998,6e3],[6002,6003]],u5=[[6480,6509],[6512,6516]],c5=[[6688,6750],[6752,6780],[6783,6793],[6800,6809],[6816,6829]],l5=[[43648,43714],[43739,43743]],h5=[[71296,71353],[71360,71369]],D5=[[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],_5=[[92784,92862],[92864,92873]],d5=[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]],g5=[[1920,1969]],p5=[[3585,3642],[3648,3675]],m5=[[3840,3911],[3913,3948],[3953,3991],[3993,4028],[4030,4044],[4046,4052],[4057,4058]],F5=[[11568,11623],[11631,11632],11647],C5=[[70784,70855],[70864,70873]],E5=[[123536,123566]],b5=[[66432,66461],66463],S5=[[42240,42539]],v5=[[66928,66938],[66940,66954],[66956,66962],[66964,66965],[66967,66977],[66979,66993],[66995,67001],[67003,67004]],T5=[[123584,123641],123647],y5=[[71840,71922],71935],B5=[[69248,69289],[69291,69293],[69296,69297]],O5=[[40960,42124],[42128,42182]],w5=[[72192,72263]],A5=Object.freeze(Object.defineProperty({__proto__:null,Adlam:w3,Ahom:A3,Anatolian_Hieroglyphs:I3,Arabic:R3,Armenian:x3,Avestan:M3,Balinese:P3,Bamum:L3,Bassa_Vah:$3,Batak:N3,Bengali:k3,Bhaiksuki:H3,Bopomofo:X3,Brahmi:Y3,Braille:z3,Buginese:W3,Buhid:j3,Canadian_Aboriginal:G3,Carian:V3,Caucasian_Albanian:U3,Chakma:K3,Cham:J3,Cherokee:q3,Chorasmian:Z3,Common:Q3,Coptic:t8,Cuneiform:e8,Cypriot:n8,Cypro_Minoan:s8,Cyrillic:i8,Deseret:r8,Devanagari:o8,Dives_Akuru:a8,Dogra:u8,Duployan:c8,Egyptian_Hieroglyphs:l8,Elbasan:h8,Elymaic:D8,Ethiopic:_8,Georgian:d8,Glagolitic:f8,Gothic:g8,Grantha:p8,Greek:m8,Gujarati:F8,Gunjala_Gondi:C8,Gurmukhi:E8,Han:b8,Hangul:S8,Hanifi_Rohingya:v8,Hanunoo:T8,Hatran:y8,Hebrew:B8,Hiragana:O8,Imperial_Aramaic:w8,Inherited:A8,Inscriptional_Pahlavi:I8,Inscriptional_Parthian:R8,Javanese:x8,Kaithi:M8,Kannada:P8,Katakana:L8,Kawi:$8,Kayah_Li:N8,Kharoshthi:k8,Khitan_Small_Script:H8,Khmer:X8,Khojki:Y8,Khudawadi:z8,Lao:W8,Latin:j8,Lepcha:G8,Limbu:V8,Linear_A:U8,Linear_B:K8,Lisu:J8,Lycian:q8,Lydian:Z8,Mahajani:Q8,Makasar:t9,Malayalam:e9,Mandaic:n9,Manichaean:s9,Marchen:i9,Masaram_Gondi:r9,Medefaidrin:o9,Meetei_Mayek:a9,Mende_Kikakui:u9,Meroitic_Cursive:c9,Meroitic_Hieroglyphs:l9,Miao:h9,Modi:D9,Mongolian:_9,Mro:d9,Multani:f9,Myanmar:g9,Nabataean:p9,Nag_Mundari:m9,Nandinagari:F9,New_Tai_Lue:C9,Newa:E9,Nko:b9,Nushu:S9,Nyiakeng_Puachue_Hmong:v9,Ogham:T9,Ol_Chiki:y9,Old_Hungarian:B9,Old_Italic:O9,Old_North_Arabian:w9,Old_Permic:A9,Old_Persian:I9,Old_Sogdian:R9,Old_South_Arabian:x9,Old_Turkic:M9,Old_Uyghur:P9,Oriya:L9,Osage:$9,Osmanya:N9,Pahawh_Hmong:k9,Palmyrene:H9,Pau_Cin_Hau:X9,Phags_Pa:Y9,Phoenician:z9,Psalter_Pahlavi:W9,Rejang:j9,Runic:G9,Samaritan:V9,Saurashtra:U9,Sharada:K9,Shavian:J9,Siddham:q9,SignWriting:Z9,Sinhala:Q9,Sogdian:t5,Sora_Sompeng:e5,Soyombo:n5,Sundanese:s5,Syloti_Nagri:i5,Syriac:r5,Tagalog:o5,Tagbanwa:a5,Tai_Le:u5,Tai_Tham:c5,Tai_Viet:l5,Takri:h5,Tamil:D5,Tangsa:_5,Tangut:d5,Telugu:f5,Thaana:g5,Thai:p5,Tibetan:m5,Tifinagh:F5,Tirhuta:C5,Toto:E5,Ugaritic:b5,Vai:S5,Vithkuqi:v5,Wancho:T5,Warang_Citi:y5,Yezidi:B5,Yi:O5,Zanabazar_Square:w5},Symbol.toStringTag,{value:"Module"})),I5=[1567,1600,[125184,125259],[125264,125273],[125278,125279]],R5=[[71424,71450],[71453,71467],[71472,71494]],x5=[[82944,83526]],M5=[[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]],P5=[[1329,1366],[1369,1418],[1421,1423],[64275,64279]],L5=[[68352,68405],[68409,68415]],$5=[[6912,6988],[6992,7038]],N5=[[42656,42743],[92160,92728]],k5=[[92880,92909],[92912,92917]],H5=[[7104,7155],[7164,7167]],X5=[[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],Y5=[[72704,72712],[72714,72758],[72760,72773],[72784,72812]],z5=[[746,747],[12289,12291],[12296,12305],[12307,12319],[12330,12333],12336,12343,12539,[12549,12591],[12704,12735],[65093,65094],[65377,65381]],W5=[[69632,69709],[69714,69749],69759],j5=[[10240,10495]],G5=[[6656,6683],[6686,6687],43471],V5=[[5941,5942],[5952,5971]],U5=[[5120,5759],[6320,6389],[72368,72383]],K5=[[66208,66256]],J5=[[66864,66915],66927],q5=[[2534,2543],[4160,4169],[69888,69940],[69942,69959]],Z5=[[43520,43574],[43584,43597],[43600,43609],[43612,43615]],Q5=[[5024,5109],[5112,5117],[43888,43967]],tn=[[69552,69579]],en=[[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]],nn=[[994,1007],[11392,11507],[11513,11519],[66272,66299]],sn=[[73728,74649],[74752,74862],[74864,74868],[74880,75075]],rn=[[65792,65794],[65799,65843],[65847,65855],[67584,67589],67592,[67594,67637],[67639,67640],67644,67647],on=[[65792,65793],[77712,77810]],an=[[1024,1327],[7296,7304],7467,7544,7672,[11744,11775],11843,[42560,42655],[65070,65071],[122928,122989],123023],un=[[66560,66639]],cn=[[2304,2386],[2389,2431],[7376,7414],[7416,7417],8432,[43056,43065],[43232,43263],[72448,72457]],ln=[[71936,71942],71945,[71948,71955],[71957,71958],[71960,71989],[71991,71992],[71995,72006],[72016,72025]],hn=[[2404,2415],[43056,43065],[71680,71739]],Dn=[[113664,113770],[113776,113788],[113792,113800],[113808,113817],[113820,113827]],_n=[[77824,78933]],dn=[[66816,66855]],fn=[[69600,69622]],gn=[[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]],pn=[[4256,4293],4295,4301,[4304,4351],[7312,7354],[7357,7359],[11520,11557],11559,11565],mn=[1156,1159,[11264,11359],11843,42607,[122880,122886],[122888,122904],[122907,122913],[122915,122916],[122918,122922]],Fn=[[66352,66378]],Cn=[[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],En=[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]],bn=[[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]],Sn=[[2404,2405],[73056,73061],[73063,73064],[73066,73102],[73104,73105],[73107,73112],[73120,73129]],vn=[[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]],Tn=[[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]],yn=[[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]],Bn=[1548,1563,1567,1600,1748,[68864,68903],[68912,68921]],On=[[5920,5942]],wn=[[67808,67826],[67828,67829],[67835,67839]],An=[[1425,1479],[1488,1514],[1519,1524],[64285,64310],[64312,64316],64318,[64320,64321],[64323,64324],[64326,64335]],In=[[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],Rn=[[67648,67669],[67671,67679]],xn=[[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]],Mn=[[68448,68466],[68472,68479]],Pn=[[68416,68437],[68440,68447]],Ln=[[43392,43469],[43471,43481],[43486,43487]],$n=[[2406,2415],[43056,43065],[69760,69826],69837],Nn=[[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]],kn=[[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]],Hn=[[73472,73488],[73490,73530],[73534,73561]],Xn=[[43264,43311]],Yn=[[68096,68099],[68101,68102],[68108,68115],[68117,68119],[68121,68149],[68152,68154],[68159,68168],[68176,68184]],zn=[94180,[101120,101589]],Wn=[[6016,6109],[6112,6121],[6128,6137],[6624,6655]],jn=[[2790,2799],[43056,43065],[70144,70161],[70163,70209]],Gn=[[2404,2405],[43056,43065],[70320,70378],[70384,70393]],Vn=[[3713,3714],3716,[3718,3722],[3724,3747],3749,[3751,3773],[3776,3780],3782,[3784,3790],[3792,3801],[3804,3807]],Un=[[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]],Kn=[[7168,7223],[7227,7241],[7245,7247]],Jn=[2405,[6400,6430],[6432,6443],[6448,6459],6464,[6468,6479]],qn=[[65799,65843],[67072,67382],[67392,67413],[67424,67431]],Zn=[[65536,65547],[65549,65574],[65576,65594],[65596,65597],[65599,65613],[65616,65629],[65664,65786],[65792,65794],[65799,65843],[65847,65855]],Qn=[[42192,42239],73648],ts=[[66176,66204]],es=[[67872,67897],67903],ns=[[2404,2415],[43056,43065],[69968,70006]],ss=[[73440,73464]],is=[[2385,2386],[2404,2405],[3328,3340],[3342,3344],[3346,3396],[3398,3400],[3402,3407],[3412,3427],[3430,3455],7386,[43056,43058]],rs=[1600,[2112,2139],2142],os=[1600,[68288,68326],[68331,68342]],as=[[72816,72847],[72850,72871],[72873,72886]],us=[[2404,2405],[72960,72966],[72968,72969],[72971,73014],73018,[73020,73021],[73023,73031],[73040,73049]],cs=[[93760,93850]],ls=[[43744,43766],[43968,44013],[44016,44025]],hs=[[124928,125124],[125127,125142]],Ds=[[68e3,68023],[68028,68047],[68050,68095]],_s=[[67968,67999]],ds=[[93952,94026],[94031,94087],[94095,94111]],fs=[[43056,43065],[71168,71236],[71248,71257]],gs=[[6144,6169],[6176,6264],[6272,6314],8239,[71264,71276]],ps=[[92736,92766],[92768,92777],[92782,92783]],ms=[[2662,2671],[70272,70278],70280,[70282,70285],[70287,70301],[70303,70313]],Fs=[[4096,4255],43310,[43488,43518],[43616,43647]],Cs=[[67712,67742],[67751,67759]],Es=[[124112,124153]],bs=[[2404,2405],[3302,3311],7401,7410,7418,[43056,43061],[72096,72103],[72106,72151],[72154,72164]],Ss=[[6528,6571],[6576,6601],[6608,6618],[6622,6623]],vs=[[70656,70747],[70749,70753]],Ts=[1548,1563,1567,[1984,2042],[2045,2047],[64830,64831]],ys=[94177,[110960,111355]],Bs=[[123136,123180],[123184,123197],[123200,123209],[123214,123215]],Os=[[5760,5788]],ws=[[7248,7295]],As=[[68736,68786],[68800,68850],[68858,68863]],Is=[[66304,66339],[66349,66351]],Rs=[[68224,68255]],xs=[1155,[66384,66426]],Ms=[[66464,66499],[66504,66517]],Ps=[[69376,69415]],Ls=[[68192,68223]],$s=[[68608,68680]],Ns=[1600,68338,[69488,69513]],ks=[[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],Hs=[[66736,66771],[66776,66811]],Xs=[[66688,66717],[66720,66729]],Ys=[[92928,92997],[93008,93017],[93019,93025],[93027,93047],[93053,93071]],zs=[[67680,67711]],Ws=[[72384,72440]],js=[[6146,6147],6149,[43072,43127]],Gs=[[67840,67867],67871],Vs=[1600,[68480,68497],[68505,68508],[68521,68527]],Us=[[43312,43347],43359],Ks=[[5792,5866],[5870,5880]],Js=[[2048,2093],[2096,2110]],qs=[[43136,43205],[43214,43225]],Zs=[2385,7383,7385,[7388,7389],7392,[70016,70111]],Qs=[[66640,66687]],ti=[[71040,71093],[71096,71133]],ei=[[120832,121483],[121499,121503],[121505,121519]],ni=[[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]],si=[1600,[69424,69465]],ii=[[69840,69864],[69872,69881]],ri=[[72272,72354]],oi=[[7040,7103],[7360,7367]],ai=[[2404,2405],[2534,2543],[43008,43052]],ui=[1548,[1563,1564],1567,1600,[1611,1621],1648,[1792,1805],[1807,1866],[1869,1871],[2144,2154],7672,7674],ci=[[5888,5909],5919,[5941,5942]],li=[[5941,5942],[5984,5996],[5998,6e3],[6002,6003]],hi=[[4160,4169],[6480,6509],[6512,6516]],Di=[[6688,6750],[6752,6780],[6783,6793],[6800,6809],[6816,6829]],_i=[[43648,43714],[43739,43743]],di=[[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],gi=[[92784,92862],[92864,92873]],pi=[94176,[94208,100343],[100352,101119],[101632,101640]],mi=[[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],Fi=[1548,[1563,1564],1567,[1632,1641],[1920,1969],65010,65021],Ci=[[3585,3642],[3648,3675]],Ei=[[3840,3911],[3913,3948],[3953,3991],[3993,4028],[4030,4044],[4046,4052],[4057,4058]],bi=[[11568,11623],[11631,11632],11647],Si=[[2385,2386],[2404,2405],7410,[43056,43065],[70784,70855],[70864,70873]],vi=[[123536,123566]],Ti=[[66432,66461],66463],yi=[[42240,42539]],Bi=[[66928,66938],[66940,66954],[66956,66962],[66964,66965],[66967,66977],[66979,66993],[66995,67001],[67003,67004]],Oi=[[123584,123641],123647],wi=[[71840,71922],71935],Ai=[1548,1563,1567,[1632,1641],[69248,69289],[69291,69293],[69296,69297]],Ii=[[12289,12290],[12296,12305],[12308,12315],12539,[40960,42124],[42128,42182],[65377,65381]],Ri=[[72192,72263]],xi=Object.freeze(Object.defineProperty({__proto__:null,Adlam:I5,Ahom:R5,Anatolian_Hieroglyphs:x5,Arabic:M5,Armenian:P5,Avestan:L5,Balinese:$5,Bamum:N5,Bassa_Vah:k5,Batak:H5,Bengali:X5,Bhaiksuki:Y5,Bopomofo:z5,Brahmi:W5,Braille:j5,Buginese:G5,Buhid:V5,Canadian_Aboriginal:U5,Carian:K5,Caucasian_Albanian:J5,Chakma:q5,Cham:Z5,Cherokee:Q5,Chorasmian:tn,Common:en,Coptic:nn,Cuneiform:sn,Cypriot:rn,Cypro_Minoan:on,Cyrillic:an,Deseret:un,Devanagari:cn,Dives_Akuru:ln,Dogra:hn,Duployan:Dn,Egyptian_Hieroglyphs:_n,Elbasan:dn,Elymaic:fn,Ethiopic:gn,Georgian:pn,Glagolitic:mn,Gothic:Fn,Grantha:Cn,Greek:En,Gujarati:bn,Gunjala_Gondi:Sn,Gurmukhi:vn,Han:Tn,Hangul:yn,Hanifi_Rohingya:Bn,Hanunoo:On,Hatran:wn,Hebrew:An,Hiragana:In,Imperial_Aramaic:Rn,Inherited:xn,Inscriptional_Pahlavi:Mn,Inscriptional_Parthian:Pn,Javanese:Ln,Kaithi:$n,Kannada:Nn,Katakana:kn,Kawi:Hn,Kayah_Li:Xn,Kharoshthi:Yn,Khitan_Small_Script:zn,Khmer:Wn,Khojki:jn,Khudawadi:Gn,Lao:Vn,Latin:Un,Lepcha:Kn,Limbu:Jn,Linear_A:qn,Linear_B:Zn,Lisu:Qn,Lycian:ts,Lydian:es,Mahajani:ns,Makasar:ss,Malayalam:is,Mandaic:rs,Manichaean:os,Marchen:as,Masaram_Gondi:us,Medefaidrin:cs,Meetei_Mayek:ls,Mende_Kikakui:hs,Meroitic_Cursive:Ds,Meroitic_Hieroglyphs:_s,Miao:ds,Modi:fs,Mongolian:gs,Mro:ps,Multani:ms,Myanmar:Fs,Nabataean:Cs,Nag_Mundari:Es,Nandinagari:bs,New_Tai_Lue:Ss,Newa:vs,Nko:Ts,Nushu:ys,Nyiakeng_Puachue_Hmong:Bs,Ogham:Os,Ol_Chiki:ws,Old_Hungarian:As,Old_Italic:Is,Old_North_Arabian:Rs,Old_Permic:xs,Old_Persian:Ms,Old_Sogdian:Ps,Old_South_Arabian:Ls,Old_Turkic:$s,Old_Uyghur:Ns,Oriya:ks,Osage:Hs,Osmanya:Xs,Pahawh_Hmong:Ys,Palmyrene:zs,Pau_Cin_Hau:Ws,Phags_Pa:js,Phoenician:Gs,Psalter_Pahlavi:Vs,Rejang:Us,Runic:Ks,Samaritan:Js,Saurashtra:qs,Sharada:Zs,Shavian:Qs,Siddham:ti,SignWriting:ei,Sinhala:ni,Sogdian:si,Sora_Sompeng:ii,Soyombo:ri,Sundanese:oi,Syloti_Nagri:ai,Syriac:ui,Tagalog:ci,Tagbanwa:li,Tai_Le:hi,Tai_Tham:Di,Tai_Viet:_i,Takri:di,Tamil:fi,Tangsa:gi,Tangut:pi,Telugu:mi,Thaana:Fi,Thai:Ci,Tibetan:Ei,Tifinagh:bi,Tirhuta:Si,Toto:vi,Ugaritic:Ti,Vai:yi,Vithkuqi:Bi,Wancho:Oi,Warang_Citi:wi,Yezidi:Ai,Yi:Ii,Zanabazar_Square:Ri},Symbol.toStringTag,{value:"Module"})),Mi=[],Pi=[],Li=[],$i=[],Ni=Object.freeze(Object.defineProperty({__proto__:null,C:Mi,F:Pi,S:Li,T:$i},Symbol.toStringTag,{value:"Module"})),ki=[[125184,125279]],Hi=[[65792,65855]],Xi=[[71424,71503]],Yi=[[128768,128895]],zi=[[64256,64335]],Wi=[[82944,83583]],ji=[[119296,119375]],Gi=[[65856,65935]],Vi=[[65936,65999]],Ui=[[1536,1791]],Ki=[[2208,2303]],Ji=[[126464,126719]],qi=[[64336,65023]],Zi=[[65136,65279]],Qi=[[1872,1919]],tr=[[1328,1423]],er=[[8592,8703]],nr=[[68352,68415]],sr=[[6912,7039]],ir=[[42656,42751]],rr=[[92160,92735]],or=[[0,127]],ar=[[92880,92927]],ur=[[7104,7167]],cr=[[2432,2559]],lr=[[72704,72815]],hr=[[9600,9631]],Dr=[[12544,12591]],_r=[[12704,12735]],dr=[[9472,9599]],fr=[[69632,69759]],gr=[[10240,10495]],pr=[[6656,6687]],mr=[[5952,5983]],Fr=[[118784,119039]],Cr=[[13056,13311]],Er=[[65072,65103]],br=[[63744,64255]],Sr=[[194560,195103]],vr=[[11904,12031]],Tr=[[12736,12783]],yr=[[12288,12351]],Br=[[19968,40959]],Or=[[13312,19903]],wr=[[131072,173791]],Ar=[[173824,177983]],Ir=[[177984,178207]],Rr=[[178208,183983]],xr=[[183984,191471]],Mr=[[66208,66271]],Pr=[[66864,66927]],Lr=[[69888,69967]],$r=[[43520,43615]],Nr=[[5024,5119]],kr=[[43888,43967]],Hr=[[129536,129647]],Xr=[[768,879]],Yr=[[6832,6911]],zr=[[8400,8447]],Wr=[[7616,7679]],jr=[[65056,65071]],Gr=[[43056,43071]],Vr=[[9216,9279]],Ur=[[11392,11519]],Kr=[[66272,66303]],Jr=[[119648,119679]],qr=[[73728,74751]],Zr=[[74752,74879]],Qr=[[8352,8399]],to=[[67584,67647]],eo=[[1024,1279]],no=[[11744,11775]],so=[[42560,42655]],io=[[7296,7311]],ro=[[1280,1327]],oo=[[66560,66639]],ao=[[2304,2431]],uo=[[43232,43263]],co=[[9984,10175]],lo=[[71680,71759]],ho=[[127024,127135]],Do=[[113664,113823]],_o=[[74880,75087]],fo=[[77824,78895]],go=[[66816,66863]],po=[[128512,128591]],mo=[[127232,127487]],Fo=[[9312,9471]],Co=[[12800,13055]],Eo=[[127488,127743]],bo=[[4608,4991]],So=[[11648,11743]],vo=[[43776,43823]],To=[[4992,5023]],yo=[[8192,8303]],Bo=[[9632,9727]],Oo=[[128896,129023]],wo=[[4256,4351]],Ao=[[7312,7359]],Io=[[11520,11567]],Ro=[[11264,11359]],xo=[[122880,122927]],Mo=[[66352,66383]],Po=[[70400,70527]],Lo=[[880,1023]],$o=[[7936,8191]],No=[[2688,2815]],ko=[[73056,73135]],Ho=[[2560,2687]],Xo=[[65280,65519]],Yo=[[12592,12687]],zo=[[4352,4607]],Wo=[[43360,43391]],jo=[[55216,55295]],Go=[[44032,55215]],Vo=[[68864,68927]],Uo=[[5920,5951]],Ko=[[67808,67839]],Jo=[[1424,1535]],qo=[[56192,56319]],Zo=[[55296,56191]],Qo=[[12352,12447]],ta=[[592,687]],ea=[[12272,12287]],na=[[94176,94207]],sa=[[67648,67679]],ia=[[126064,126143]],ra=[[68448,68479]],oa=[[68416,68447]],aa=[[43392,43487]],ua=[[69760,69839]],ca=[[110848,110895]],la=[[110592,110847]],ha=[[12688,12703]],Da=[[12032,12255]],_a=[[3200,3327]],da=[[12448,12543]],fa=[[12784,12799]],ga=[[43264,43311]],pa=[[68096,68191]],ma=[[6016,6143]],Fa=[[6624,6655]],Ca=[[70144,70223]],Ea=[[70320,70399]],ba=[[3712,3839]],Sa=[[128,255]],va=[[256,383]],Ta=[[7680,7935]],ya=[[384,591]],Ba=[[11360,11391]],Oa=[[42784,43007]],wa=[[43824,43887]],Aa=[[7168,7247]],Ia=[[8448,8527]],Ra=[[6400,6479]],xa=[[67072,67455]],Ma=[[65664,65791]],Pa=[[65536,65663]],La=[[42192,42239]],$a=[[56320,57343]],Na=[[66176,66207]],ka=[[67872,67903]],Ha=[[69968,70015]],Xa=[[126976,127023]],Ya=[[73440,73471]],za=[[3328,3455]],Wa=[[2112,2143]],ja=[[68288,68351]],Ga=[[72816,72895]],Va=[[72960,73055]],Ua=[[119808,120831]],Ka=[[8704,8959]],Ja=[[119520,119551]],qa=[[93760,93855]],Za=[[43968,44031]],Qa=[[43744,43775]],tu=[[124928,125151]],eu=[[68e3,68095]],nu=[[67968,67999]],su=[[93952,94111]],iu=[[10176,10223]],ru=[[10624,10751]],ou=[[9728,9983]],au=[[11008,11263]],uu=[[127744,128511]],cu=[[8960,9215]],lu=[[71168,71263]],hu=[[42752,42783]],Du=[[6144,6319]],_u=[[71264,71295]],du=[[92736,92783]],fu=[[70272,70319]],gu=[[119040,119295]],pu=[[4096,4255]],mu=[[43616,43647]],Fu=[[43488,43519]],Cu=[[1984,2047]],Eu=[[67712,67759]],bu=[[6528,6623]],Su=[[70656,70783]],vu=[[8528,8591]],Tu=[[110960,111359]],yu=[[5760,5791]],Bu=[[7248,7295]],Ou=[[68736,68863]],wu=[[66304,66351]],Au=[[68224,68255]],Iu=[[66384,66431]],Ru=[[66464,66527]],xu=[[69376,69423]],Mu=[[68192,68223]],Pu=[[68608,68687]],Lu=[[9280,9311]],$u=[[2816,2943]],Nu=[[128592,128639]],ku=[[66736,66815]],Hu=[[66688,66735]],Xu=[[92928,93071]],Yu=[[67680,67711]],zu=[[72384,72447]],Wu=[[43072,43135]],ju=[[66e3,66047]],Gu=[[67840,67871]],Vu=[[7424,7551]],Uu=[[7552,7615]],Ku=[[127136,127231]],Ju=[[57344,63743]],qu=[[68480,68527]],Zu=[[43312,43359]],Qu=[[69216,69247]],tc=[[5792,5887]],ec=[[2048,2111]],nc=[[43136,43231]],sc=[[70016,70111]],ic=[[66640,66687]],rc=[[113824,113839]],oc=[[71040,71167]],ac=[[3456,3583]],uc=[[70112,70143]],cc=[[65104,65135]],lc=[[69424,69487]],hc=[[69840,69887]],Dc=[[72272,72367]],_c=[[688,767]],dc=[[65520,65535]],fc=[[7040,7103]],gc=[[7360,7375]],pc=[[8304,8351]],mc=[[10224,10239]],Fc=[[10496,10623]],Cc=[[129024,129279]],Ec=[[10752,11007]],bc=[[11776,11903]],Sc=[[129280,129535]],vc=[[983040,1048575]],Tc=[[1048576,1114111]],yc=[[120832,121519]],Bc=[[43008,43055]],Oc=[[1792,1871]],wc=[[2144,2159]],Ac=[[5888,5919]],Ic=[[5984,6015]],Rc=[[917504,917631]],xc=[[6480,6527]],Mc=[[6688,6831]],Pc=[[43648,43743]],Lc=[[119552,119647]],$c=[[71296,71375]],Nc=[[2944,3071]],kc=[[94208,100351]],Hc=[[100352,101119]],Xc=[[3072,3199]],Yc=[[1920,1983]],zc=[[3584,3711]],Wc=[[3840,4095]],jc=[[11568,11647]],Gc=[[70784,70879]],Vc=[[128640,128767]],Uc=[[66432,66463]],Kc=[[5120,5759]],Jc=[[6320,6399]],qc=[[42240,42559]],Zc=[[65024,65039]],Qc=[[917760,917999]],tl=[[7376,7423]],el=[[65040,65055]],nl=[[71840,71935]],sl=[[42128,42191]],il=[[40960,42127]],rl=[[19904,19967]],ol=[[72192,72271]],al=[[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]],ul=Object.freeze(Object.defineProperty({__proto__:null,Adlam:ki,Aegean_Numbers:Hi,Ahom:Xi,Alchemical_Symbols:Yi,Alphabetic_Presentation_Forms:zi,Anatolian_Hieroglyphs:Wi,Ancient_Greek_Musical_Notation:ji,Ancient_Greek_Numbers:Gi,Ancient_Symbols:Vi,Arabic:Ui,Arabic_Extended_A:Ki,Arabic_Mathematical_Alphabetic_Symbols:Ji,Arabic_Presentation_Forms_A:qi,Arabic_Presentation_Forms_B:Zi,Arabic_Supplement:Qi,Armenian:tr,Arrows:er,Avestan:nr,Balinese:sr,Bamum:ir,Bamum_Supplement:rr,Basic_Latin:or,Bassa_Vah:ar,Batak:ur,Bengali:cr,Bhaiksuki:lr,Block_Elements:hr,Bopomofo:Dr,Bopomofo_Extended:_r,Box_Drawing:dr,Brahmi:fr,Braille_Patterns:gr,Buginese:pr,Buhid:mr,Byzantine_Musical_Symbols:Fr,CJK_Compatibility:Cr,CJK_Compatibility_Forms:Er,CJK_Compatibility_Ideographs:br,CJK_Compatibility_Ideographs_Supplement:Sr,CJK_Radicals_Supplement:vr,CJK_Strokes:Tr,CJK_Symbols_And_Punctuation:yr,CJK_Unified_Ideographs:Br,CJK_Unified_Ideographs_Extension_A:Or,CJK_Unified_Ideographs_Extension_B:wr,CJK_Unified_Ideographs_Extension_C:Ar,CJK_Unified_Ideographs_Extension_D:Ir,CJK_Unified_Ideographs_Extension_E:Rr,CJK_Unified_Ideographs_Extension_F:xr,Carian:Mr,Caucasian_Albanian:Pr,Chakma:Lr,Cham:$r,Cherokee:Nr,Cherokee_Supplement:kr,Chess_Symbols:Hr,Combining_Diacritical_Marks:Xr,Combining_Diacritical_Marks_Extended:Yr,Combining_Diacritical_Marks_For_Symbols:zr,Combining_Diacritical_Marks_Supplement:Wr,Combining_Half_Marks:jr,Common_Indic_Number_Forms:Gr,Control_Pictures:Vr,Coptic:Ur,Coptic_Epact_Numbers:Kr,Counting_Rod_Numerals:Jr,Cuneiform:qr,Cuneiform_Numbers_And_Punctuation:Zr,Currency_Symbols:Qr,Cypriot_Syllabary:to,Cyrillic:eo,Cyrillic_Extended_A:no,Cyrillic_Extended_B:so,Cyrillic_Extended_C:io,Cyrillic_Supplement:ro,Deseret:oo,Devanagari:ao,Devanagari_Extended:uo,Dingbats:co,Dogra:lo,Domino_Tiles:ho,Duployan:Do,Early_Dynastic_Cuneiform:_o,Egyptian_Hieroglyphs:fo,Elbasan:go,Emoticons:po,Enclosed_Alphanumeric_Supplement:mo,Enclosed_Alphanumerics:Fo,Enclosed_CJK_Letters_And_Months:Co,Enclosed_Ideographic_Supplement:Eo,Ethiopic:bo,Ethiopic_Extended:So,Ethiopic_Extended_A:vo,Ethiopic_Supplement:To,General_Punctuation:yo,Geometric_Shapes:Bo,Geometric_Shapes_Extended:Oo,Georgian:wo,Georgian_Extended:Ao,Georgian_Supplement:Io,Glagolitic:Ro,Glagolitic_Supplement:xo,Gothic:Mo,Grantha:Po,Greek_And_Coptic:Lo,Greek_Extended:$o,Gujarati:No,Gunjala_Gondi:ko,Gurmukhi:Ho,Halfwidth_And_Fullwidth_Forms:Xo,Hangul_Compatibility_Jamo:Yo,Hangul_Jamo:zo,Hangul_Jamo_Extended_A:Wo,Hangul_Jamo_Extended_B:jo,Hangul_Syllables:Go,Hanifi_Rohingya:Vo,Hanunoo:Uo,Hatran:Ko,Hebrew:Jo,High_Private_Use_Surrogates:qo,High_Surrogates:Zo,Hiragana:Qo,IPA_Extensions:ta,Ideographic_Description_Characters:ea,Ideographic_Symbols_And_Punctuation:na,Imperial_Aramaic:sa,Indic_Siyaq_Numbers:ia,Inscriptional_Pahlavi:ra,Inscriptional_Parthian:oa,Javanese:aa,Kaithi:ua,Kana_Extended_A:ca,Kana_Supplement:la,Kanbun:ha,Kangxi_Radicals:Da,Kannada:_a,Katakana:da,Katakana_Phonetic_Extensions:fa,Kayah_Li:ga,Kharoshthi:pa,Khmer:ma,Khmer_Symbols:Fa,Khojki:Ca,Khudawadi:Ea,Lao:ba,Latin_1_Supplement:Sa,Latin_Extended_A:va,Latin_Extended_Additional:Ta,Latin_Extended_B:ya,Latin_Extended_C:Ba,Latin_Extended_D:Oa,Latin_Extended_E:wa,Lepcha:Aa,Letterlike_Symbols:Ia,Limbu:Ra,Linear_A:xa,Linear_B_Ideograms:Ma,Linear_B_Syllabary:Pa,Lisu:La,Low_Surrogates:$a,Lycian:Na,Lydian:ka,Mahajani:Ha,Mahjong_Tiles:Xa,Makasar:Ya,Malayalam:za,Mandaic:Wa,Manichaean:ja,Marchen:Ga,Masaram_Gondi:Va,Mathematical_Alphanumeric_Symbols:Ua,Mathematical_Operators:Ka,Mayan_Numerals:Ja,Medefaidrin:qa,Meetei_Mayek:Za,Meetei_Mayek_Extensions:Qa,Mende_Kikakui:tu,Meroitic_Cursive:eu,Meroitic_Hieroglyphs:nu,Miao:su,Miscellaneous_Mathematical_Symbols_A:iu,Miscellaneous_Mathematical_Symbols_B:ru,Miscellaneous_Symbols:ou,Miscellaneous_Symbols_And_Arrows:au,Miscellaneous_Symbols_And_Pictographs:uu,Miscellaneous_Technical:cu,Modi:lu,Modifier_Tone_Letters:hu,Mongolian:Du,Mongolian_Supplement:_u,Mro:du,Multani:fu,Musical_Symbols:gu,Myanmar:pu,Myanmar_Extended_A:mu,Myanmar_Extended_B:Fu,NKo:Cu,Nabataean:Eu,New_Tai_Lue:bu,Newa:Su,Number_Forms:vu,Nushu:Tu,Ogham:yu,Ol_Chiki:Bu,Old_Hungarian:Ou,Old_Italic:wu,Old_North_Arabian:Au,Old_Permic:Iu,Old_Persian:Ru,Old_Sogdian:xu,Old_South_Arabian:Mu,Old_Turkic:Pu,Optical_Character_Recognition:Lu,Oriya:$u,Ornamental_Dingbats:Nu,Osage:ku,Osmanya:Hu,Pahawh_Hmong:Xu,Palmyrene:Yu,Pau_Cin_Hau:zu,Phags_Pa:Wu,Phaistos_Disc:ju,Phoenician:Gu,Phonetic_Extensions:Vu,Phonetic_Extensions_Supplement:Uu,Playing_Cards:Ku,Private_Use_Area:Ju,Psalter_Pahlavi:qu,Rejang:Zu,Rumi_Numeral_Symbols:Qu,Runic:tc,Samaritan:ec,Saurashtra:nc,Sharada:sc,Shavian:ic,Shorthand_Format_Controls:rc,Siddham:oc,Sinhala:ac,Sinhala_Archaic_Numbers:uc,Small_Form_Variants:cc,Sogdian:lc,Sora_Sompeng:hc,Soyombo:Dc,Spacing_Modifier_Letters:_c,Specials:dc,Sundanese:fc,Sundanese_Supplement:gc,Superscripts_And_Subscripts:pc,Supplemental_Arrows_A:mc,Supplemental_Arrows_B:Fc,Supplemental_Arrows_C:Cc,Supplemental_Mathematical_Operators:Ec,Supplemental_Punctuation:bc,Supplemental_Symbols_And_Pictographs:Sc,Supplementary_Private_Use_Area_A:vc,Supplementary_Private_Use_Area_B:Tc,Sutton_SignWriting:yc,Syloti_Nagri:Bc,Syriac:Oc,Syriac_Supplement:wc,Tagalog:Ac,Tagbanwa:Ic,Tags:Rc,Tai_Le:xc,Tai_Tham:Mc,Tai_Viet:Pc,Tai_Xuan_Jing_Symbols:Lc,Takri:$c,Tamil:Nc,Tangut:kc,Tangut_Components:Hc,Telugu:Xc,Thaana:Yc,Thai:zc,Tibetan:Wc,Tifinagh:jc,Tirhuta:Gc,Transport_And_Map_Symbols:Vc,Ugaritic:Uc,Unified_Canadian_Aboriginal_Syllabics:Kc,Unified_Canadian_Aboriginal_Syllabics_Extended:Jc,Vai:qc,Variation_Selectors:Zc,Variation_Selectors_Supplement:Qc,Vedic_Extensions:tl,Vertical_Forms:el,Warang_Citi:nl,Yi_Radicals:sl,Yi_Syllables:il,Yijing_Hexagram_Symbols:rl,Zanabazar_Square:ol,undefined:al},Symbol.toStringTag,{value:"Module"})),cl=Object.freeze(Object.defineProperty({__proto__:null},Symbol.toStringTag,{value:"Module"})),ll=[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],hl=[[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]],Dl=[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],_l=Object.freeze(Object.defineProperty({__proto__:null,Close:ll,None:hl,Open:Dl},Symbol.toStringTag,{value:"Module"})),dl=[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]],gl=[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]],pl=[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],ml=[8212,[11834,11835]],Fl=[47],Cl=[13],El=[41,93],bl=[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],Sl=[[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]],vl=[[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]],Tl=[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]],yl=[65532],Bl=[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]],Ol=[[127995,127999]],wl=[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],Al=[160,847,[860,866],3848,3852,3858,[4057,4058],6158,7629,7676,8199,8209,8239,[78896,78902],[78905,78907],94180],Il=[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],Rl=[[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]],xl=[[1488,1514],[1519,1522],64285,[64287,64296],[64298,64310],[64312,64316],64318,[64320,64321],[64323,64324],[64326,64335]],Ml=[45],Pl=[[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]],Ll=[44,46,[58,59],894,1417,[1548,1549],2040,8260,65040,[65043,65044]],$l=[[8228,8230],8943,65049,68342],Nl=[[4352,4447],[43360,43388]],kl=[[4520,4607],[55243,55291]],Hl=[[4448,4519],[55216,55238]],Xl=[10],Yl=[[11,12],[8232,8233]],zl=[133],Wl=[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]],jl=[[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]],Gl=[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]],Vl=[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],Ul=[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],Kl=[34,39,171,187,[8216,8217],[8219,8221],8223,[8249,8250],[10075,10080],[11776,11789],[11804,11805],[11808,11809],[128630,128632]],Jl=[[127462,127487]],ql=[32],Zl=[[55296,57343]],Ql=[[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]],th=[8288,65279],eh=[8205],nh=[8203],sh=Object.freeze(Object.defineProperty({__proto__:null,Alphabetic:dl,Ambiguous:fl,Break_After:gl,Break_Before:pl,Break_Both:ml,Break_Symbols:Fl,Carriage_Return:Cl,Close_Parenthesis:El,Close_Punctuation:bl,Combining_Mark:Sl,Complex_Context:vl,Conditional_Japanese_Starter:Tl,Contingent_Break:yl,E_Base:Bl,E_Modifier:Ol,Exclamation:wl,Glue:Al,H2:Il,H3:Rl,Hebrew_Letter:xl,Hyphen:Ml,Ideographic:Pl,Infix_Numeric:Ll,Inseparable:$l,JL:Nl,JT:kl,JV:Hl,Line_Feed:Xl,Mandatory_Break:Yl,Next_Line:zl,Nonstarter:Wl,Numeric:jl,Open_Punctuation:Gl,Postfix_Numeric:Vl,Prefix_Numeric:Ul,Quotation:Kl,Regional_Indicator:Jl,Space:ql,Surrogate:Zl,Unknown:Ql,Word_Joiner:th,ZWJ:eh,ZWSpace:nh},Symbol.toStringTag,{value:"Module"})),ih=[[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]],rh=[13],oh=[34],ah=[[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]],uh=[95,8239,[8255,8256],8276,[65075,65076],[65101,65103],65343],ch=[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],lh=[[1488,1514],[1519,1522],64285,[64287,64296],[64298,64310],[64312,64316],64318,[64320,64321],[64323,64324],[64326,64335]],hh=[[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]],Dh=[10],_h=[58,183,903,1375,1524,8231,65043,65109,65306],dh=[44,59,894,1417,[1548,1549],1644,2040,8260,65040,65044,65104,65108,65292,65307],fh=[46,[8216,8217],8228,65106,65287,65294],gh=[[11,12],133,[8232,8233]],ph=[[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]],mh=[[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]],Fh=[[127462,127487]],Ch=[39],Eh=[32,5760,[8192,8198],[8200,8202],8287,12288],bh=[8205],Sh=Object.freeze(Object.defineProperty({__proto__:null,ALetter:ih,CR:rh,Double_Quote:oh,Extend:ah,ExtendNumLet:uh,Format:ch,Hebrew_Letter:lh,Katakana:hh,LF:Dh,MidLetter:_h,MidNum:dh,MidNumLet:fh,Newline:gh,Numeric:ph,Other:mh,Regional_Indicator:Fh,Single_Quote:Ch,WSegSpace:Eh,ZWJ:bh},Symbol.toStringTag,{value:"Module"})),vh=Object.freeze(Object.defineProperty({__proto__:null,Bidi_Class:O3,Bidi_Mirroring_Glyph:cl,Bidi_Paired_Bracket_Type:_l,Binary_Property:F0,Block:ul,Case_Folding:Ni,General_Category:i3,Line_Break:sh,Script:A5,Script_Extensions:xi,Word_Break:Sh},Symbol.toStringTag,{value:"Module"}));function U7(r){const e=Object.keys(r);if(e.length===0)throw new Error("Expected at least one category, but received 0.");if(e.some(n=>{const s=r[n];return s===void 0||s.length===0}))throw new Error("Expected at least one sub category, but received 0.");return e.map(n=>{const i=r[n].map(o=>Th(n,o));return new S1().union(...i)}).reduce((n,s)=>n.intersect(s))}function Th(r,e){const n=vh[r][e];return new S1().union(...n)}const R6=U7({Script:["Han","Katakana","Hiragana","Hangul","Bopomofo"],General_Category:["Other_Letter","Letter_Number","Other_Symbol","Modifier_Letter"]}),yh=U7({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),Bh=I6(R6,yh);function Oh(){return I6(Bh)}function wh(){return I6(R6)}const m7=r=>({sbr:.5,sbo:r,spr:.5,spo:r});class O1{static get globalFontMeasureCache(){return this._globalFontMeasureCache}static setFontMeasureCache(e,t,n){this._globalFontMeasureCache.has(e)||this._globalFontMeasureCache.set(e,new Map);const s=this._globalFontMeasureCache.get(e);s&&s.set(t,n)}static clearFontMeasureCache(e){var n;const t=e.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];(n=this._globalFontMeasureCache.get(s))==null||n.delete(i)}else return!1;return!0}static getFontMeasureCache(e,t){var n;return(n=this._globalFontMeasureCache.get(e))==null?void 0:n.get(t)}static autoCleanFontMeasureCache(e=1e6){let t=0,n=!1;for(const s of this._globalFontMeasureCache){const[,i]=s;if(t+=i.size,t>e){n=!0;break}}if(n){let s=0;for(const i of this._globalFontMeasureCache){const[o,a]=i;if(s+=a.size,s>e/2){const u=s-e/2;this._clearMeasureCache(u,a);break}this._globalFontMeasureCache.delete(o)}return!0}return!1}static getBaselineOffsetInfo(e,t){if(this._fontDataMap.size===0)return m7(t);const n=e.split(",");for(let s of n){s=s.replace(/'/g,"");const i=this._fontDataMap.get(s);if(!i)continue;const{subscriptSizeRatio:o,subscriptOffset:a,superscriptSizeRatio:u,superscriptOffset:c}=i;return{sbr:o,sbo:a*t,spr:u,spo:c*t}}return m7(t)}static getTextSizeByDom(e,t){if(t in this._getTextHeightCache)return this._getTextHeightCache[t];let n=document.getElementById("universheetTextSizeTest");const s="float:left;white-space:nowrap;visibility:hidden;margin:0;padding:0;";n||(n=document.createElement("span"),n.id="universheetTextSizeTest",document.getElementsByTagName("body")[0].appendChild(n)),n.style.cssText+=`${s};${t}`,n.innerText=e;const i=n.getBoundingClientRect(),o={width:i.width,height:i.height};return this._getTextHeightCache[t]=o,o}static getTextSize(e,t){const{fontString:n,fontSize:s,fontFamily:i}=t;let o=this._getBoundingBoxByFont(i,s);if(!o){const a=this.getMeasureText(e,n);o=this._calculateBoundingBoxByMeasureText(a,s)}return o}static getMeasureText(e,t){if(!this._context){const f=document.createElement("canvas");this._context=f.getContext("2d")}const n=this._context,s=this.getFontMeasureCache(t,e);if(s!=null)return s;n.font=t;const i=n.measureText(e),{width:o,fontBoundingBoxAscent:a,fontBoundingBoxDescent:u,actualBoundingBoxAscent:c,actualBoundingBoxDescent:l}=i,D={width:o,fontBoundingBoxAscent:a,fontBoundingBoxDescent:u,actualBoundingBoxAscent:c,actualBoundingBoxDescent:l};if(a==null||u==null||Number.isNaN(a)||Number.isNaN(u)){const f=this.getTextSizeByDom(W7,t).height;n.textBaseline==="top"?(D.fontBoundingBoxAscent=D.actualBoundingBoxAscent=f,D.fontBoundingBoxDescent=D.actualBoundingBoxDescent=0):n.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,e,D),D}static _clearMeasureCache(e,t){let n=0;for(const s of t){const[i]=s;if(n>e)break;t.delete(i),n++}return!0}static _getBoundingBoxByFont(e,t=28,n=""){const s=this._fontDataMap.get(e);if(!s)return;const{notDefWidth:i,ascender:o,descender:a,typoAscender:u,typoDescender:c,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(n.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:u*t,abd:c*t,sp:l*t,sbr:D,sbo:f*t,spr:p,spo:F*t}}static _calculateBoundingBoxByMeasureText(e,t){const{width:n,fontBoundingBoxAscent:s,fontBoundingBoxDescent:i,actualBoundingBoxAscent:o,actualBoundingBoxDescent:a}=e;return{width:n,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,Ah=Math.PI/K7,Ih=K7/Math.PI,F7="rgb(",Rh="rgba(",c1=(r,e)=>r?e!=null?`${Rh+r.join(",")},${e})`:`${F7+r.join(",")})`:`${F7}0,0,0)`,xh=100,w1=(r,e)=>{if(d.Tools.isNumber(r))return r;if(e&&r&&d.Tools.isString(r)&&r.substr(r.length-1,1)==="%"){const t=Number.parseFloat(r)/xh;return e*t}return 0},Mh=16,b2=(r,e)=>(e||(e=window),e.requestPostAnimationFrame?e.requestPostAnimationFrame(r):e.requestAnimationFrame?e.requestAnimationFrame(r):e.msRequestAnimationFrame?e.msRequestAnimationFrame(r):e.webkitRequestAnimationFrame?e.webkitRequestAnimationFrame(r):e.mozRequestAnimationFrame?e.mozRequestAnimationFrame(r):e.oRequestAnimationFrame?e.oRequestAnimationFrame(r):setTimeout(r,Mh)),J7=(r,e)=>(e||(e=window),e.requestPostAnimationFrame?e.cancelPostAnimationFrame(r):e.requestAnimationFrame?e.cancelAnimationFrame(r):e.msRequestAnimationFrame?e.msCancelAnimationFrame(r):e.webkitRequestAnimationFrame?e.webkitCancelAnimationFrame(r):e.mozRequestAnimationFrame?e.mozCancelAnimationFrame(r):e.oRequestAnimationFrame?e.oCancelAnimationFrame(r):clearTimeout(r)),x6=()=>{const r=document.createElement("canvas");try{r.style=r.style||{}}catch(e){console.error(e)}return r},Ph=()=>document.createElement("img"),q7=r=>r*Ih,v1=r=>r*Ah,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},Z7=()=>d.Tools.getBrowserType()==="safari",Lh=4,Q7=(r="obj",e=Lh)=>{const t=window.navigator.userAgent.replace(/[^a-zA-Z0-9]/g,"").split("");let n="";for(let i=0;i<e;i++)n+=t[Math.round(Math.random()*(t.length-1))];const s=new Date().getTime();return`${r}_${n}_${s}`};function P1(r){return Object.prototype.toString.apply(r)}function Z2(r){return P1(r)==="[object Function]"}function $h(r){return P1(r)==="[object Date]"}function Nh(r){return P1(r)==="[object RegExp]"}function kh(r){return P1(r)==="[object Array]"}function F6(r){return P1(r)==="[object String]"}function Hh(r){return P1(r)==="[object Number]"}function Xh(r){return P1(r)==="[object Object]"}function Y2(r,e){return e=10**e,Math.round(r*e)/e}function H(r,e){return Math.round(r*e)/e}function S2(r,e){const t="Arial";if(!r){const D=`11pt ${t}`;return{fontCache:D,fontString:D,fontSize:11,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=11;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:u}=r;if(u===d.BaselineOffset.SUBSCRIPT||u===d.BaselineOffset.SUPERSCRIPT){const D=O1.getBaselineOffsetInfo(a,o),{sbr:f,spr:p}=D;o*=u===d.BaselineOffset.SUBSCRIPT?f:p}const c=`${s} ${i} ${o}pt ${a}`,l=`${c}, ${q2} `;return{fontCache:c,fontString:l,fontSize:o,fontFamily:a}}const Yh=wh().toRegExp();function z2(r){return Yh.test(r)}const zh=Oh().toRegExp();function Q2(r){return zh.test(r)}function Wh(r){return!!/[\u0000-\u024F]/gi.exec(r)}function jh(r){return!!/[\u0000-\u007F]/gi.exec(r)}function Gh(r){return!!/[\u0080-\u00FF]/gi.exec(r)}function Vh(r){return!!/[\u0100-\u017F]/gi.exec(r)}function Uh(r){return!!/[\u0180-\u024F]/gi.exec(r)}const t4=/^(?:[#*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,Kh=/^(?:[#*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 Kh.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 e4(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 n4=72,Jh=25.4;function qh(r){return r/(n4/w2())}function Zh(r){return r*(n4/w2())}function Qh(r){return r*(w2()/Jh)}function tD(r){return r*w2()}function $6(r){const{scaleX:e=1,scaleY:t=1}=r;return Math.max(e,t)}function Y1(r,e,t,n){const s=r-1,i=e-1,o=t[s]||0,a=t[r]||t[t.length-1],u=n[i]||0,c=n[e]||n[n.length-1];return{startY:o,endY:a,startX:u,endX:c}}function Q1(r,e,t,n,s){let{startY:i,endY:o,startX:a,endX:u}=Y1(r,e,t,n);const{isMerged:c,isMergedMainCell:l,startRow:D,startColumn:f,endRow:p,endColumn:F}=t6(r,e,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=n.length-1;if(c&&D!==-1&&f!==-1){const S=t[D-1]||0,v=t[p]||t[m],y=n[f-1]||0,T=n[F]||n[b];E={...E,startY:S,endY:v,startX:y,endX:T}}else if(!c&&p!==-1&&F!==-1){const S=t[p]||t[m],v=n[F]||n[b];E={...E,startY:i,endY:S,startX:a,endX:v}}return{isMerged:c,isMergedMainCell:l,actualRow:r,actualColumn:e,startY:i,endY:o,startX:a,endX:u,mergeInfo:E}}function t6(r,e,t){let n=!1,s=!1,i=r,o=e,a=r,u=e;if(t==null)return{actualRow:r,actualColumn:e,isMergedMainCell:s,isMerged:n,endRow:i,endColumn:o,startRow:a,startColumn:u};for(let c=0;c<t.length;c++){const{startRow:l,endRow:D,startColumn:f,endColumn:p}=t[c];if(r===l&&e===f){i=D,o=p,a=l,u=f,s=!0;break}if(r>=l&&r<=D&&e>=f&&e<=p){i=D,o=p,a=l,u=f,n=!0;break}}return{actualRow:r,actualColumn:e,isMergedMainCell:s,isMerged:n,endRow:i,endColumn:o,startRow:a,startColumn:u}}function s4(r,e,t,n){let s=!1;for(let i=e;i<=t;i++){const{isMerged:o,isMergedMainCell:a}=t6(r,i,n);if(!o&&!a){s=!0;break}}return s}function C6(r,e,t){const{startY:n,endY:s,startX:i,endX:o}=r;return r.startY=n+t,r.endY=s+t,r.startX=i+e,r.endX=o+e,{...r}}function i4(r,e){return!(r.left>e.right||r.top>e.bottom||e.left>r.right||e.top>r.bottom)}function r4(r){const e=document.createElement("style");document.head.appendChild(e);const t=e.sheet;for(const n of r)t==null||t.insertRule(n,t.cssRules.length)}function o4(r){for(let e=0,t=document.head.childNodes.length;e<t;e++){const n=document.head.childNodes[e];if(n.nodeName==="STYLE"&&n.textContent&&n.textContent.indexOf(r)>-1)return!0}return!1}function H1(r){return Number(r.replace(/px/gi,""))}function a4(r){const e=getComputedStyle(r),{borderTopWidth:t,borderLeftWidth:n,borderRightWidth:s,borderBottomWidth:i,width:o,height:a}=e;return{top:H1(t),left:H1(n),right:H1(s),bottom:H1(i),width:H1(o),height:H1(a)}}class I{constructor(e=0,t=0){this.x=e,this.y=t}static Zero(){return new I(0,0)}static One(){return new I(1,1)}static FromArray(e,t=0){return new I(e[t],e[t+1])}static FromArrayToRef(e,t,n){n.x=e[t],n.y=e[t+1]}static CatmullRom(e,t,n,s,i){const o=i*i,a=i*o,u=.5*(2*t.x+(-e.x+n.x)*i+(2*e.x-5*t.x+4*n.x-s.x)*o+(-e.x+3*t.x-3*n.x+s.x)*a),c=.5*(2*t.y+(-e.y+n.y)*i+(2*e.y-5*t.y+4*n.y-s.y)*o+(-e.y+3*t.y-3*n.y+s.y)*a);return new I(u,c)}static Clamp(e,t,n){let s=e.x;s=s>n.x?n.x:s,s=s<t.x?t.x:s;let i=e.y;return i=i>n.y?n.y:i,i=i<t.y?t.y:i,new I(s,i)}static Hermite(e,t,n,s,i){const o=i*i,a=i*o,u=2*a-3*o+1,c=-2*a+3*o,l=a-2*o+i,D=a-o,f=e.x*u+n.x*c+t.x*l+s.x*D,p=e.y*u+n.y*c+t.y*l+s.y*D;return new I(f,p)}static Hermite1stDerivative(e,t,n,s,i){const o=I.Zero();return this.Hermite1stDerivativeToRef(e,t,n,s,i,o),o}static Hermite1stDerivativeToRef(e,t,n,s,i,o){const a=i*i;o.x=(a-i)*6*e.x+(3*a-4*i+1)*t.x+(-a+i)*6*n.x+(3*a-2*i)*s.x,o.y=(a-i)*6*e.y+(3*a-4*i+1)*t.y+(-a+i)*6*n.y+(3*a-2*i)*s.y}static Lerp(e,t,n){const s=e.x+(t.x-e.x)*n,i=e.y+(t.y-e.y)*n;return new I(s,i)}static Dot(e,t){return e.x*t.x+e.y*t.y}static Normalize(e){const t=I.Zero();return this.NormalizeToRef(e,t),t}static NormalizeToRef(e,t){const n=e.length();n!==0&&(t.x=e.x/n,t.y=e.y/n)}static Minimize(e,t){const n=e.x<t.x?e.x:t.x,s=e.y<t.y?e.y:t.y;return new I(n,s)}static Maximize(e,t){const n=e.x>t.x?e.x:t.x,s=e.y>t.y?e.y:t.y;return new I(n,s)}static PointInTriangle(e,t,n,s){const i=.5*(-n.y*s.x+t.y*(-n.x+s.x)+t.x*(n.y-s.y)+n.x*s.y),o=i<0?-1:1,a=(t.y*s.x-t.x*s.y+(s.y-t.y)*e.x+(t.x-s.x)*e.y)*o,u=(t.x*n.y-t.y*n.x+(t.y-n.y)*e.x+(n.x-t.x)*e.y)*o;return a>0&&u>0&&a+u<2*i*o}static Distance(e,t){return Math.sqrt(I.DistanceSquared(e,t))}static DistanceSquared(e,t){const n=e.x-t.x,s=e.y-t.y;return n*n+s*s}static Center(e,t){return I.CenterToRef(e,t,I.Zero())}static CenterToRef(e,t,n){return n.copyFromFloats((e.x+t.x)/2,(e.y+t.y)/2)}static DistanceOfPointFromSegment(e,t,n){const s=I.DistanceSquared(t,n);if(s===0)return I.Distance(e,t);const i=n.subtract(t),o=Math.max(0,Math.min(1,I.Dot(e.subtract(t),i)/s)),a=t.add(i.multiplyByFloats(o,o));return I.Distance(e,a)}static create(e,t){return new I(e,t)}toString(){return`{X: ${this.x} Y: ${this.y}}`}getClassName(){return"Vector2"}getHashCode(){let e=this.x|0;return e=e*397^(this.y|0),e}toArray(e,t=0){return e[t]=this.x,e[t+1]=this.y,this}fromArray(e,t=0){return I.FromArrayToRef(e,t,this),this}asArray(){const e=new Array;return this.toArray(e,0),e}copyFrom(e){return this.x=e.x,this.y=e.y,this}copyFromFloats(e,t){return this.x=e,this.y=t,this}set(e,t){return this.copyFromFloats(e,t)}add(e){return new I(this.x+e.x,this.y+e.y)}addToRef(e,t){return t.x=this.x+e.x,t.y=this.y+e.y,this}addByPoint(e,t){return new I(this.x+e,this.y+t)}addInPlace(e){return this.x+=e.x,this.y+=e.y,this}subtract(e){return new I(this.x-e.x,this.y-e.y)}subtractByPoint(e,t){return new I(this.x-e,this.y-t)}subtractToRef(e,t){return t.x=this.x-e.x,t.y=this.y-e.y,this}subtractInPlace(e){return this.x-=e.x,this.y-=e.y,this}multiplyInPlace(e){return this.x*=e.x,this.y*=e.y,this}multiply(e){return new I(this.x*e.x,this.y*e.y)}multiplyToRef(e,t){return t.x=this.x*e.x,t.y=this.y*e.y,this}multiplyByFloats(e,t){return new I(this.x*e,this.y*t)}divide(e){return new I(this.x/e.x,this.y/e.y)}divideToRef(e,t){return t.x=this.x/e.x,t.y=this.y/e.y,this}divideInPlace(e){return this.divideToRef(e,this)}negate(){return new I(-this.x,-this.y)}negateInPlace(){return this.x*=-1,this.y*=-1,this}negateToRef(e){return e.copyFromFloats(this.x*-1,this.y*-1)}scaleInPlace(e){return this.x*=e,this.y*=e,this}scale(e){const t=new I(0,0);return this.scaleToRef(e,t),t}scaleToRef(e,t){return t.x=this.x*e,t.y=this.y*e,this}scaleAndAddToRef(e,t){return t.x+=this.x*e,t.y+=this.y*e,this}equals(e){return e&&this.x===e.x&&this.y===e.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(e){const t=Math.cos(e),n=Math.sin(e),s=t*this.x-n*this.y,i=n*this.x+t*this.y;return this.x=s,this.y=i,this}rotateToRef(e,t){const n=Math.cos(e),s=Math.sin(e);return t.x=n*this.x-s*this.y,t.y=s*this.x+n*this.y,this}rotateByPoint(e,t=I.create(0,0)){const n=Math.cos(e),s=Math.sin(e),i=t.x+(this.x-t.x)*n-(this.y-t.y)*s,o=t.y+(this.x-t.x)*s+(this.y-t.y)*n;return this.x=i,this.y=o,this}transformCoordinateOnRotate(e){const t=Math.sqrt(this.x**2+this.y**2),n=Math.atan2(this.y,this.x),s=-e+n;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 r1{constructor(e=$2){h(this,"dirty",!1);h(this,"_m");this._m=e&&e.slice()||$2}static create(e=$2){return new this(e)}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 r1(this._m)}copyInto(e){e._m[0]=this._m[0],e._m[1]=this._m[1],e._m[2]=this._m[2],e._m[3]=this._m[3],e._m[4]=this._m[4],e._m[5]=this._m[5]}applyPoint(e,t=!1){const n=this._m,s=n[0]*e.x+n[2]*e.y,i=n[1]*e.x+n[3]*e.y;return t?new I(s,i):new I(s+n[4],i+n[5])}translate(e,t){return this._m[4]+=this._m[0]*e+this._m[2]*t,this._m[5]+=this._m[1]*e+this._m[3]*t,this}scale(e,t){return this._m[0]*=e,this._m[1]*=e,this._m[2]*=t,this._m[3]*=t,this}rotate(e){const t=v1(e),n=Math.cos(t),s=Math.sin(t),i=this._m[0]*n+this._m[2]*s,o=this._m[1]*n+this._m[3]*s,a=this._m[0]*-s+this._m[2]*n,u=this._m[1]*-s+this._m[3]*n;return this._m[0]=i,this._m[1]=o,this._m[2]=a,this._m[3]=u,this}getTranslation(){return{x:this._m[4],y:this._m[5]}}skew(e,t){const n=this._m[0]+this._m[2]*t,s=this._m[1]+this._m[3]*t,i=this._m[2]+this._m[0]*e,o=this._m[3]+this._m[1]*e;return this._m[0]=n,this._m[1]=s,this._m[2]=i,this._m[3]=o,this}multiply(e){const t=this._m[0]*e._m[0]+this._m[2]*e._m[1],n=this._m[1]*e._m[0]+this._m[3]*e._m[1],s=this._m[0]*e._m[2]+this._m[2]*e._m[3],i=this._m[1]*e._m[2]+this._m[3]*e._m[3],o=this._m[0]*e._m[4]+this._m[2]*e._m[5]+this._m[4],a=this._m[1]*e._m[4]+this._m[3]*e._m[5]+this._m[5];return this._m[0]=t,this._m[1]=n,this._m[2]=s,this._m[3]=i,this._m[4]=o,this._m[5]=a,this}invert(){const e=1/(this._m[0]*this._m[3]-this._m[1]*this._m[2]),t=this._m[3]*e,n=-this._m[1]*e,s=-this._m[2]*e,i=this._m[0]*e,o=e*(this._m[2]*this._m[5]-this._m[3]*this._m[4]),a=e*(this._m[1]*this._m[4]-this._m[0]*this._m[5]);return this._m[0]=t,this._m[1]=n,this._m[2]=s,this._m[3]=i,this._m[4]=o,this._m[5]=a,this}getMatrix(){return this._m}getMatrixByAccurate(e=3){return this._m.map(t=>Y2(t,e))}setAbsolutePosition(e){const t=this._m[0],n=this._m[1],s=this._m[2],i=this._m[3],o=this._m[4],a=this._m[5],u=(t*(e.y-a)-n*(e.x-o))/(t*i-n*s),c=(e.x-o-s*u)/t;return this.translate(c,u)}decompose(){const e=this._m[0],t=this._m[1],n=this._m[2],s=this._m[3],i=this._m[4],o=this._m[5],a=e*s-t*n,u={x:i,y:o,angle:0,scaleX:0,scaleY:0,skewX:0,skewY:0};if(e!==0||t!==0){const c=Math.sqrt(e*e+t*t);u.angle=t>0?Math.acos(e/c):-Math.acos(e/c),u.scaleX=c,u.scaleY=a/c,u.skewX=(e*n+t*s)/a,u.skewY=0}else if(n!==0||s!==0){const c=Math.sqrt(n*n+s*s);u.angle=Math.PI/2-(s>0?Math.acos(-n/c):-Math.acos(n/c)),u.scaleX=a/c,u.scaleY=c,u.skewX=0,u.skewY=(e*n+t*s)/a}return u.angle=q7(u.angle),u}makeBoundingBoxFromPoints(e){if(this)for(let l=0;l<e.length;l++)e[l]=this.applyPoint(e[l]);const t=[e[0].x,e[1].x,e[2].x,e[3].x],n=Math.min(...t),i=Math.max(...t)-n,o=[e[0].y,e[1].y,e[2].y,e[3].y],a=Math.min(...o),c=Math.max(...o)-a;return{left:n,top:a,width:i,height:c,points:e}}composeMatrix(e){const t=new r1([1,0,0,1,e.left||0,e.top||0]);return e.angle&&t.rotate(e.angle),(e.scaleX!==1||e.scaleY!==1||e.skewX||e.skewY||e.flipX||e.flipY)&&t.multiply(this._calcDimensionsMatrix(e)),this._m=t.getMatrix(),this}clone(){return new r1([...this._m])}_calcDimensionsMatrix(e){var i,o;const t=(i=e.scaleX)!=null?i:1,n=(o=e.scaleY)!=null?o:1,s=new r1([e.flipX?-t:t,0,0,e.flipY?-n:n,0,0]);return e.skewX&&s.multiply(new r1([1,0,Math.tan(v1(e.skewX)),1,0,0])),e.skewY&&s.multiply(new r1([1,Math.tan(v1(e.skewY)),0,1,0,0])),s}}const W2=["top","left","width","height","angle","scaleX","scaleY","skewX","skewY","flipX","flipY","strokeWidth"];class I1{constructor(e){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 r1);h(this,"_cursor",i1.DEFAULT);h(this,"_isTransformer",!1);h(this,"_forceRender",!1);h(this,"_layer");e?this._oKey=e: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 e=((t=this.getParent())==null?void 0:t.ancestorScaleX)||1;return this.scaleX*e}get ancestorScaleY(){var t;const e=((t=this.getParent())==null?void 0:t.ancestorScaleY)||1;return this.scaleY*e}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(e){this._transform=e}set zIndex(e){this._zIndex=e}set parent(e){this._parent=e}set evented(e){this._evented=e}set debounceParentDirty(e){this._debounceParentDirty=e}set isTransformer(e){this._isTransformer=e}set cursor(e){this.setCursor(e)}set layer(e){this._layer=e}set top(e){var t;this._topOrigin=e,this._top=w1(e,(t=this._parent)==null?void 0:t.height)}set left(e){var t;this._leftOrigin=e,this._left=w1(e,(t=this._parent)==null?void 0:t.width)}set width(e){var t;this._widthOrigin=e,this._width=w1(e,(t=this._parent)==null?void 0:t.width)}set height(e){var t;this._heightOrigin=e,this._height=w1(e,(t=this._parent)==null?void 0:t.height)}set strokeWidth(e){this._strokeWidth=e}set angle(e){this._angle=e}set scaleX(e){this._scaleX=e}set scaleY(e){this._scaleY=e}set skewX(e){this._skewX=e}set flipY(e){this._flipY=e}set flipX(e){this._flipX=e}set skewY(e){this._skewY=e}makeDirty(e=!0){if(this._dirty=e,e){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(e)})}return this}makeDirtyNoDebounce(e=!0){var t;return this._dirty=e,e&&((t=this._layer)==null||t.makeDirty(e)),this}isDirty(){return this._dirty}translate(e,t){const n=this.top;t!==void 0&&(this.top=t);const s=this.left;return e!==void 0&&(this.left=e),this._setTransForm(),this.onTransformChangeObservable.notifyObservers({type:s1.translate,value:{top:this._top,left:this._left},preValue:{top:n,left:s}}),this}resize(e,t){const n=this.width;e!==void 0&&(this.width=e);const s=this.height;return t!==void 0&&(this.height=t),this._setTransForm(),this.onTransformChangeObservable.notifyObservers({type:s1.resize,value:{width:this._width,height:this._height},preValue:{width:n,height:s}}),this}scale(e,t){const n=this.scaleX;e!==void 0&&(this.scaleX=e);const s=this.scaleY;return t!==void 0&&(this.scaleY=t),this._setTransForm(),this.onTransformChangeObservable.notifyObservers({type:s1.scale,value:{scaleX:this._scaleX,scaleY:this._scaleY},preValue:{scaleX:n,scaleY:s}}),this}skew(e,t){const n=e;e!==void 0&&(this.skewX=e);const s=t;return t!==void 0&&(this.skewY=t),this._setTransForm(),this.onTransformChangeObservable.notifyObservers({type:s1.skew,value:{skewX:this._skewX,skewY:this._skewY},preValue:{skewX:n,skewY:s}}),this}flip(e,t){const n=e;e!==void 0&&(this.flipX=e);const s=t;return t!==void 0&&(this.flipY=t),this._setTransForm(),this.onTransformChangeObservable.notifyObservers({type:s1.flip,value:{flipX:this._flipX,flipY:this._flipY},preValue:{flipX:n,flipY:s}}),this}transformByState(e){const t=Object.keys(e),n={};if(t.length!==0)return t.forEach(s=>{e[s]!==void 0&&(n[s]=this[s],this[s]=e[s])}),this._setTransForm(),this.onTransformChangeObservable.notifyObservers({type:s1.all,value:e,preValue:n}),this}isRender(e){return this._forceRender?!1:e&&!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(e,t){}isHit(e){const t=this._getInverseCoord(e);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(e,t){return this[`on${e}Observer`].add(t.bind(this))}off(e,t){this[`on${e}Observer`].remove(t)}clear(e){this[`on${e}Observer`].clear()}triggerPointerMove(e){var t,n;return(t=this.onPointerMoveObserver.notifyObservers(e))!=null&&t.stopPropagation?!0:((n=this._parent)==null||n.triggerPointerMove(e),!1)}triggerPointerDown(e){var t,n;return(t=this.onPointerDownObserver.notifyObservers(e))!=null&&t.stopPropagation?!0:((n=this._parent)==null||n.triggerPointerDown(e),!1)}triggerPointerUp(e){var t,n;return(t=this.onPointerUpObserver.notifyObservers(e))!=null&&t.stopPropagation?!0:((n=this._parent)==null||n.triggerPointerUp(e),!1)}triggerDblclick(e){var t,n;return(t=this.onDblclickObserver.notifyObservers(e))!=null&&t.stopPropagation?!0:((n=this._parent)==null||n.triggerDblclick(e),!1)}triggerTripleClick(e){var t,n;return(t=this.onTripleClickObserver.notifyObservers(e))!=null&&t.stopPropagation?!0:((n=this._parent)==null||n.triggerTripleClick(e),!1)}triggerMouseWheel(e){var t,n;return(t=this.onMouseWheelObserver.notifyObservers(e))!=null&&t.stopPropagation?!0:((n=this._parent)==null||n.triggerMouseWheel(e),!1)}triggerPointerOut(e){var t,n;return(t=this.onPointerOutObserver.notifyObservers(e))!=null&&t.stopPropagation?!0:((n=this._parent)==null||n.triggerPointerOut(e),!1)}triggerPointerLeave(e){var t,n;return(t=this.onPointerLeaveObserver.notifyObservers(e))!=null&&t.stopPropagation?!0:((n=this._parent)==null||n.triggerPointerLeave(e),!1)}triggerPointerOver(e){var t;return this.onPointerOverObserver.notifyObservers(e)?!0:((t=this._parent)==null||t.triggerPointerOver(e),!1)}triggerPointerEnter(e){var t,n;return(t=this.onPointerEnterObserver.notifyObservers(e))!=null&&t.stopPropagation?!0:((n=this._parent)==null||n.triggerPointerEnter(e),!1)}dispose(){var e;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(),(e=this.parent)==null||e.removeObject(this),this.onDisposeObserver.notifyObservers(this),this._makeDirtyMix()}toJson(){const e={};return W2.forEach(t=>{this[t]&&(e[t]=this[t])}),e}getScene(){let e=this.parent;if(e!=null){if(e.classType===N.SCENE)return e;for(;e;){if(e.classType===N.SCENE)return e;e=e.getParent()}}}resetCursor(){var e;(e=this.getScene())==null||e.resetCursor()}setCursor(e){var t;this._cursor=e,(t=this.getScene())==null||t.setCursor(e)}getEngine(){let e=this.getParent();for(;e!=null;){if(e===N.ENGINE)return e;e=e.getParent()}return null}getObjects(){return[]}_getInverseCoord(e){return this._transform.clone().invert().applyPoint(e)}_setTransForm(){const e=r1.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=e,this._makeDirtyMix()}_makeDirtyMix(){this.debounceParentDirty?this.makeDirty(!0):this.makeDirtyNoDebounce(!0)}}var u4=(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))(u4||{}),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||{}),a1=(r=>(r[r.LETTER=0]="LETTER",r[r.WORD=1]="WORD",r[r.LIST=2]="LIST",r[r.PLACEHOLDER=3]="PLACEHOLDER",r[r.TAB=4]="TAB",r[r.IMAGE=5]="IMAGE",r[r.AT=6]="AT",r[r.MATH=7]="MATH",r[r.MULTI_LINE=8]="MULTI_LINE",r[r.CUSTOM=9]="CUSTOM",r))(a1||{}),T1=(r=>(r[r.VERTICAL=0]="VERTICAL",r[r.HORIZONTAL=1]="HORIZONTAL",r[r.AUTO=2]="AUTO",r))(T1||{});function eD(r){var n;const e=r==null?void 0:r.parent;return e==null?!1:((n=e.spanGroup[0])==null?void 0:n.spanType)===a1.LIST}function nD(r,e){const t=c4(r,e);if(t==null)return!1;const{paragraphStyle:n}=t;return n==null?!1:d.checkParagraphHasIndentByStyle(n)}function sD(r){const e=r==null?void 0:r.parent,t=e==null?void 0:e.parent,n=e==null?void 0:e.spanGroup,s=t==null?void 0:t.divides;if(n&&r&&s&&e){const i=n.indexOf(r);if(s.indexOf(e)===s.length-1&&i===n.length-1)return!0}return!1}function iD(r){const e=r==null?void 0:r.parent,t=e==null?void 0:e.parent,n=e==null?void 0:e.spanGroup,s=t==null?void 0:t.divides;if(n&&r&&s&&e){const i=n.indexOf(r),o=s.indexOf(e);if(o===0&&i===0||o===0&&i===1&&n[0].spanType===a1.LIST)return!0}return!1}function c4(r,e){var s;const t=(s=r==null?void 0:r.parent)==null?void 0:s.parent;if(t==null||e==null)return;const n=e.paragraphs;if(n!=null){for(const i of n)if(i.startIndex===t.paragraphIndex)return i}}function rD(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 oD(r,e){return r==null||e==null||r.parent==null||e.parent==null?!1:r.parent.parent===e.parent.parent}function N6(){let r=1;const t=x6().getContext("2d");return r=(()=>{const n=window.devicePixelRatio||1,s=t.webkitBackingStorePixelRatio||t.mozBackingStorePixelRatio||t.msBackingStorePixelRatio||t.oBackingStorePixelRatio||t.backingStorePixelRatio||1;return n/s})(),r<1?1:r}function k6(r,e,t){let n=0,s=0,i=0,o=0;const{startX:a,startY:u,endX:c,endY:l}=t;e===J.TOP?(n=a,s=u,i=c,o=u):e===J.BOTTOM?(n=a,s=l,i=c,o=l):e===J.LEFT?(n=a,s=u,i=a,o=l):e===J.RIGHT&&(n=c,s=u,i=c,o=l),r.beginPath(),r.moveTo(n,s),r.lineTo(i,o),r.stroke()}function l4(r,e,t){let n=0,s=0,i=0,o=0;const{startX:a,startY:u,endX:c,endY:l}=t;e===J.TL_BR?(n=a,s=u,i=c,o=l):e===J.TL_BC?(n=a,s=u,i=(a+c)/2,o=l):e===J.TL_MR?(n=a,s=u,i=c,o=(u+l)/2):e===J.BL_TR?(n=a,s=l,i=c,o=u):e===J.ML_TR?(n=a,s=(u+l)/2,i=c,o=u):e===J.BC_TR&&(n=(a+c)/2,s=l,i=c,o=u),r.beginPath(),r.moveTo(n,s),r.lineTo(i,o),r.stroke()}function h4(r,e,t){let n=0,s=0,i=0,o=0;const{startX:a,startY:u,endX:c,endY:l}=t;e===J.TOP?(n=a,s=u,i=c,o=u):e===J.BOTTOM?(n=a,s=l,i=c,o=l):e===J.LEFT?(n=a,s=u,i=a,o=l):e===J.RIGHT&&(n=c,s=u,i=c,o=l),r.beginPath(),r.clearRectForTexture(n,s,i-n,o-s)}function H6(r,e){e===d.BorderStyleTypes.HAIR?r.setLineDash([1,2]):e===d.BorderStyleTypes.DASH_DOT_DOT||e===d.BorderStyleTypes.MEDIUM_DASH_DOT_DOT?r.setLineDash([2,2,5,2,2]):e===d.BorderStyleTypes.DASH_DOT||e===d.BorderStyleTypes.MEDIUM_DASH_DOT||e===d.BorderStyleTypes.SLANT_DASH_DOT?r.setLineDash([2,5,2]):e===d.BorderStyleTypes.DOTTED?r.setLineDash([2]):e===d.BorderStyleTypes.DASHED||e===d.BorderStyleTypes.MEDIUM_DASHED?r.setLineDash([3]):r.setLineDash([0])}function D4(){const r=_4(1);return r-Math.floor(r)}function _4(r){return Math.ceil(r/N6()*100)/100}function X6(r){let e=1;return r===d.BorderStyleTypes.MEDIUM||r===d.BorderStyleTypes.MEDIUM_DASH_DOT||r===d.BorderStyleTypes.MEDIUM_DASHED||r===d.BorderStyleTypes.MEDIUM_DASH_DOT_DOT?e=2:r===d.BorderStyleTypes.THICK&&(e=3),e}function v2(r,e,t,n,s=I.create(0,0)){const i=r.add(e).rotateByPoint(n),o=i.subtract(e),a=n-t;return o.rotateByPoint(a,i).add(s).transformCoordinateOnRotate(a)}function d4(r){return r>0?E2.DOWN:E2.UP}function Y6(r,e,t){var F;const n=[];let s=0,i=0,o=0,a=0,u=0;const c=d4(t),l=r.length;t=Math.abs(t);const D=Math.tan(t),f=Math.sin(t),p=Math.cos(t);if(c===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=e*f+S*p;n.push(E/D),v>i&&(i=v),m===0&&(o+=S*f,u+=S*p)}o+=E/f+e*p,u-=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=(e+O)*f;b.unshift(B/D),w>i&&(i=w,E=O,m=y),y===0?o+=B*f:y===l-1?o+=e*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,n[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,n[y]=v,s+=B}n[m]=0,l===1&&(o+=e*p),a=S/f-E*p}return{rotateTranslateXList:n,rotatedHeight:i,rotatedWidth:o,fixOffsetX:a,fixOffsetY:u,rotateTranslateY:s}}function aD(){const r=.5-D4();return{left:r,top:r}}var f4=(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))(f4||{});class N2{}h(N2,"DOM_DELTA_PIXEL",0),h(N2,"DOM_DELTA_LINE",1),h(N2,"DOM_DELTA_PAGE",2);var _1=(r=>(r[r.Generic=0]="Generic",r[r.Keyboard=1]="Keyboard",r[r.Mouse=2]="Mouse",r[r.Touch=3]="Touch",r))(_1||{}),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 g4=[new I(0,0),new I(1,1)];class p4{constructor(e=g4){this._lines=e}intersection(e){if(this._lines.length<1||e.length<1)return;const t=[];for(let n=1;n<this._lines.length;n++){const s=this._lines[n-1],i=this._lines[n];for(let o=1;o<e.length;o++){const a=this._lines[n-1],u=this._lines[n],c=this._intersection({from:s,to:i},{from:a,to:u});c&&t.push(c)}}return t}_intersection(e,t){const n=e.from,s=e.to,i=t.from,o=t.to,a=(n.x-i.x)*(s.y-i.y)-(n.y-i.y)*(s.x-i.x),u=(n.x-o.x)*(s.y-o.y)-(n.y-o.y)*(s.x-o.x);if(a*u>=0)return!1;const c=(i.x-n.x)*(o.y-n.y)-(i.y-n.y)*(o.x-n.x),l=c+a-u;if(c*l>=0)return!1;const D=c/(u-a),f=D*(s.x-n.x),p=D*(s.y-n.y);return new I(n.x+f,n.y+p)}}class m4{constructor(e=30){h(this,"_enabled",!0);h(this,"_rollingFrameTime");h(this,"_lastFrameTimeMs");this._rollingFrameTime=new F4(e)}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 e=this._rollingFrameTime.history(0);return e===0?0:1e3/e}get isSaturated(){return this._rollingFrameTime.isSaturated()}get isEnabled(){return this._enabled}sampleFrame(e=this.Now()){if(this._enabled){if(this._lastFrameTimeMs!=null){const t=e-this._lastFrameTimeMs;this._rollingFrameTime.add(t)}this._lastFrameTimeMs=e}}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 F4{constructor(e){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(e),this.reset()}add(e){let t;if(this.isSaturated()){const n=this._samples[this._pos];t=n-this.average,this.average-=t/(this._sampleCount-1),this._m2-=t*(n-this.average)}else this._sampleCount++;t=e-this.average,this.average+=t/this._sampleCount,this._m2+=t*(e-this.average),this.variance=this._m2/(this._sampleCount-1),this._samples[this._pos]=e,this._pos++,this._pos%=this._samples.length}history(e){if(e>=this._sampleCount||e>=this._samples.length)return 0;const t=this._wrapPosition(this._pos-1);return this._samples[this._wrapPosition(t-e)]}isSaturated(){return this._sampleCount>=this._samples.length}reset(){this.average=0,this.variance=0,this._sampleCount=0,this._pos=0,this._m2=0}_wrapPosition(e){const t=this._samples.length;return(e%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 e=r.getScene(),t=r.getViewportByCoord(e),n=0,s=0;if(!t)return{scrollX:n,scrollY:s};const i=t.getActualScroll(t.scrollX,t.scrollY);return{scrollX:i.x,scrollY:i.y}}const z1=90;function C4(r){const{a:e=0,v:t=d.BooleanNumber.FALSE}=r;let n=0,s=e;return t===d.BooleanNumber.TRUE&&(n=z1,s=z1),{centerAngle:n,vertexAngle:s}}class z6{constructor(e){h(this,"canvas");h(this,"_context");this._context=e,this.canvas=e.canvas}get globalAlpha(){return this._context.globalAlpha}set globalAlpha(e){this._context.globalAlpha=e}get globalCompositeOperation(){return this._context.globalCompositeOperation}set globalCompositeOperation(e){this._context.globalCompositeOperation=e}get fillStyle(){return this._context.fillStyle}set fillStyle(e){this._context.fillStyle=e}get strokeStyle(){return this._context.strokeStyle}set strokeStyle(e){this._context.strokeStyle=e}get filter(){return this._context.filter}set filter(e){this._context.filter=e}get imageSmoothingEnabled(){return this._context.imageSmoothingEnabled}set imageSmoothingEnabled(e){this._context.imageSmoothingEnabled=e}get imageSmoothingQuality(){return this._context.imageSmoothingQuality}set imageSmoothingQuality(e){this._context.imageSmoothingQuality=e}get lineCap(){return this._context.lineCap}set lineCap(e){this._context.lineCap=e}get lineDashOffset(){return this._context.lineDashOffset}set lineDashOffset(e){this._context.lineDashOffset=e}get lineJoin(){return this._context.lineJoin}set lineJoin(e){this._context.lineJoin=e}get lineWidth(){return this._context.lineWidth}set lineWidth(e){const{scaleX:t,scaleY:n}=this._getScale();this._context.lineWidth=e/Math.max(t,n)}setLineWidthNative(e){this._context.lineWidth=e}get miterLimit(){return this._context.miterLimit}set miterLimit(e){this._context.miterLimit=e}get shadowBlur(){return this._context.shadowBlur}set shadowBlur(e){this._context.shadowBlur=e}get shadowColor(){return this._context.shadowColor}set shadowColor(e){this._context.shadowColor=e}get shadowOffsetX(){return this._context.shadowOffsetX}set shadowOffsetX(e){this._context.shadowOffsetX=e}get shadowOffsetY(){return this._context.shadowOffsetY}set shadowOffsetY(e){this._context.shadowOffsetY=e}get direction(){return this._context.direction}set direction(e){this._context.direction=e}get font(){return this._context.font}set font(e){this._context.font=e}get fontKerning(){return this._context.fontKerning}set fontKerning(e){this._context.fontKerning=e}get textAlign(){return this._context.textAlign}set textAlign(e){this._context.textAlign=e}get textBaseline(){return this._context.textBaseline}set textBaseline(e){this._context.textBaseline=e}_getScale(){const e=this.getTransform();return{scaleX:e.a,scaleY:e.d}}getContextAttributes(){return this._context.getContextAttributes()}isPointInStroke(...e){return this._context.isPointInStroke(...e)}createConicGradient(e,t,n){return this._context.createConicGradient(e,t,n)}roundRect(e,t,n,s,i){const{scaleX:o,scaleY:a}=this._getScale();e=H(e,o),t=H(t,a),n=H(n,o),s=H(s,a),this._context.roundRect(e,t,n,s,i)}getTransform(){return this._context.getTransform()}resetTransform(){this._context.resetTransform()}drawFocusIfNeeded(...e){return this._context.drawFocusIfNeeded(...e)}reset(){this._context.reset()}arc(e,t,n,s,i,o){const{scaleX:a,scaleY:u}=this._getScale();e=H(e,a),t=H(t,u),this._context.arc(e,t,n,s,i,o)}arcTo(e,t,n,s,i){const{scaleX:o,scaleY:a}=this._getScale();e=H(e,o),t=H(t,a),n=H(n,o),s=H(s,a),this._context.arcTo(e,t,n,s,i)}beginPath(){this._context.beginPath()}bezierCurveTo(e,t,n,s,i,o){const{scaleX:a,scaleY:u}=this._getScale();i=H(i,a),o=H(o,u),e=H(e,a),t=H(t,u),n=H(n,a),s=H(s,u),this._context.bezierCurveTo(e,t,n,s,i,o)}clearRect(e,t,n,s){const{scaleX:i,scaleY:o}=this._getScale();e=H(e,i),t=H(t,o),n=H(n,i),s=H(s,o),this._context.clearRect(e,t,n,s)}clip(...e){this._context.clip(...e)}closePath(){this._context.closePath()}createImageData(...e){if(e.length===0)throw new Error("arguments is zero");return e.length===1?this._context.createImageData(e[0]):e.length===2?this._context.createImageData(e[0],e[1]):this._context.createImageData(e[0],e[1],e[1])}createLinearGradient(e,t,n,s){return this._context.createLinearGradient(e,t,n,s)}createPattern(e,t){return this._context.createPattern(e,t)}createRadialGradient(e,t,n,s,i,o){return this._context.createRadialGradient(e,t,n,s,i,o)}drawImage(...e){const t=e,n=this._context;t.length===3?n.drawImage(e[0],e[1],e[2]):t.length===5?n.drawImage(e[0],e[1],e[2],e[3],e[4]):t.length===9&&n.drawImage(e[0],e[1],e[2],e[3],e[4],e[5],e[6],e[7],e[8])}ellipse(e,t,n,s,i,o,a,u){this._context.ellipse(e,t,n,s,i,o,a,u)}isPointInPath(...e){return this._context.isPointInPath(...e)}fill(...e){this._context.fill(...e)}fillRect(e,t,n,s){const{scaleX:i,scaleY:o}=this._getScale();e=H(e,i),t=H(t,o),n=H(n,i),s=H(s,o),this._context.fillRect(e,t,n,s)}strokeRect(e,t,n,s){const{scaleX:i,scaleY:o}=this._getScale();e=H(e,i),t=H(t,o),n=H(n,i),s=H(s,o),this._context.strokeRect(e,t,n,s)}fillText(e,t,n,s){s?this._context.fillText(e,t,n,s):this._context.fillText(e,t,n)}fillTextPrecision(e,t,n,s){const{scaleX:i,scaleY:o}=this._getScale();t=H(t,i),n=H(n,o),s?(s=H(s,i),this._context.fillText(e,t,n,s)):this._context.fillText(e,t,n)}measureText(e){return this._context.measureText(e)}getImageData(e,t,n,s){return this._context.getImageData(e,t,n,s)}lineTo(e,t){const{scaleX:n,scaleY:s}=this._getScale();e=H(e,n),t=H(t,s),this._context.lineTo(e,t)}moveTo(e,t){const{scaleX:n,scaleY:s}=this._getScale();e=H(e,n),t=H(t,s),this._context.moveTo(e,t)}rect(e,t,n,s){const{scaleX:i,scaleY:o}=this._getScale();e=H(e,i),t=H(t,o),n=H(n,i),s=H(s,o),this._context.rect(e,t,n,s)}putImageData(e,t,n){this._context.putImageData(e,t,n)}quadraticCurveTo(e,t,n,s){this._context.quadraticCurveTo(e,t,n,s)}restore(){this._context.restore()}rotate(e){this._context.rotate(e)}save(){this._context.save()}scale(e,t){this._context.scale(e,t)}setLineDash(e){this._context.setLineDash?this._context.setLineDash(e):"mozDash"in this._context?this._context.mozDash=e:"webkitLineDash"in this._context&&(this._context.webkitLineDash=e)}getLineDash(){return this._context.getLineDash()}setTransform(...e){this._context.setTransform(...e)}stroke(e){e?this._context.stroke(e):this._context.stroke()}strokeText(e,t,n,s){const{scaleX:i,scaleY:o}=this._getScale();t=H(t,i),n=H(n,o),s&&(s=H(s,i)),this._context.strokeText(e,t,n,s)}transform(e,t,n,s,i,o){this._context.transform(e,t,n,s,i,o)}translate(e,t){this._context.translate(e,t)}translateWithPrecision(e,t){const{scaleX:n,scaleY:s}=this._getScale();e=H(e,n),t=H(t,s),this._context.translate(e,t)}translateWithPrecisionRatio(e,t){const{scaleX:n,scaleY:s}=this._getScale();this._context.translate(e/n,t/s)}clearRectForTexture(e,t,n,s){this.clearRect(e,t,n,s)}setGlobalCompositeOperation(e){this._context.globalCompositeOperation=e}}class uD{}class cD{}class E4 extends z6{}class b4 extends z6{__getScale(){const e=this.getTransform();return{scaleX:e.a,scaleY:e.d}}clearRect(e,t,n,s){const{scaleX:i,scaleY:o}=this.__getScale();e=H(e,i),t=H(t,o),n=H(n,i),s=H(s,o),this._context.save(),this._context.fillStyle=c1([255,255,255]),this._context.fillRect(e,t,n,s),this._context.restore()}clearRectForTexture(e,t,n,s){}setGlobalCompositeOperation(e){}}var S4=(r=>(r[r.Rendering=0]="Rendering",r[r.Printing=1]="Printing",r))(S4||{});class o2{constructor(e){h(this,"isCache",!1);h(this,"_pixelRatio",1);h(this,"_canvasEle");h(this,"_context");h(this,"_width",0);h(this,"_height",0);var t,n;e=e||{},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.tabIndex=1,this._canvasEle.style.touchAction="none",this._canvasEle.style.outline="0",e.mode===1?this._context=new b4((t=this._canvasEle)==null?void 0:t.getContext("2d")):this._context=new E4((n=this._canvasEle)==null?void 0:n.getContext("2d")),this.setSize(e.width,e.height,e.pixelRatio)}getCanvasEle(){return this._canvasEle}getContext(){return this._context}getPixelRatio(){return this._pixelRatio}getWidth(){return this._width}getHeight(){return this._height}setSize(e,t,n){this._pixelRatio=n||N6(),e&&(this._canvasEle.width=e*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(e){this._width===0||this._height===0||(e<1&&(e=1),this.setSize(this._width,this._height,e))}dispose(){this.clear(),this._canvasEle.remove()}clear(){this.getContext().clearRect(0,0,this._width*this._pixelRatio,this._height*this._pixelRatio)}toDataURL(e,t){try{return this._canvasEle.toDataURL(e,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 lD extends o2{constructor(e={width:0,height:0}){super(e),this.setSize(e.width,e.height)}}class hD 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 n of t)n.parent=this,this._extensions.set(n.uKey,n)}unRegister(...t){for(const n of t)this._extensions.delete(n)}getExtensionsByOrder(){const t=Array.from(this._extensions.values());return t.sort(d.sortRules),t}getExtensionByKey(t){return this._extensions.get(t)}draw(t,n){}}function v4(){return[]}function T4(r,e,t){return DD(r,e,t)}function DD(r,e,t){return t===d.GlyphType.DECIMAL?E7(r,e):t===d.GlyphType.ZERO_DECIMAL?_D(r,e):t===d.GlyphType.UPPER_ALPHA?dD(r,e):t===d.GlyphType.ALPHA?fD(r,e):t===d.GlyphType.UPPER_ROMAN?gD(r,e):t===d.GlyphType.ROMAN?pD(r,e):E7(r,e)}function E7(r,e){return(r+e).toString()}function _D(r,e){const t=r+e;return t<10?`0${t}`:t.toString()}function dD(r,e){return d.numberToListABC(r+e-1,!0)}function fD(r,e){return d.numberToListABC(r+e-1,!1)}function gD(r,e){return y4(r+e,!0)}function pD(r,e){return y4(r+e,!1)}function y4(r,e=!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};e&&(s=t);let i="";for(const o in s)for(;r>=s[o];)i+=o,r-=s[o];return i}function B4(r,e,t,n){var D,f;if(!r||!e)return;const{listId:s,listType:i,nestingLevel:o=0,textStyle:a}=r,u=e[i];return!u||!u.nestingLevel?E6(s,(D=t==null?void 0:t[o])==null?void 0:D.startIndexItem):u.nestingLevel[o]?mD(s,o,u.nestingLevel,t,a):E6(s,(f=t==null?void 0:t[o])==null?void 0:f.startIndexItem)}function E6(r,e=1){return{listId:r,symbol:"●",ts:{ff:"Arial",fs:9},startIndexItem:e,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 mD(r,e,t,n,s,i){var T,B;const o=t[e],{bulletAlignment:a,glyphFormat:u,textStyle:c,startNumber:l,glyphType:D,glyphSymbol:f,indentFirstLine:p,hanging:F,indentStart:E}=o,m={...s,...c},b=S2(m);let S;f?S=f:S=FD(u,e,t,n);const v=O1.getTextSize(S,b),y=(B=(T=n==null?void 0:n[e])==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 FD(r,e,t,n){var a;const s=r.split("%"),o=[s[0]];for(let u=1;u<s.length;u++){const c=s[u],{level:l,suffix:D}=ED(c);let f=((a=n==null?void 0:n[l])==null?void 0:a.startIndexItem)||1;l!==e&&(n==null?void 0:n[l])!==null&&(f-=1);const p=CD(f,t[l]);o.push(p,D)}return o.join("")}function CD(r=1,e){const{startNumber:t,glyphType:n,glyphSymbol:s}=e;return s||(n?T4(r,t,n):"●")}function ED(r){if(r==="")return{level:0,suffix:""};const e=r.split("");let t="",n="",s=!1;const i=/[0-9]/g;return e.forEach(o=>{!s&&i.test(`${t}${o}`)?t+=o:(s=!0,n+=o)}),{level:Number.parseInt(t)-1,suffix:n}}function O4(r,e,t,n,s){return[]}function V1(r){return r[r.length-1]}function a2(r){var e;return(e=r.sections)==null?void 0:e[r.sections.length-1]}function bD(r){const e=a2(r).columns;return e==null?void 0:e[e.length-1]}function w4(r){var t;const e=(t=y2(r))==null?void 0:t.column.lines;return e==null?void 0:e[e.length-1]}function A4(r){return r.lines[r.lines.length-1]}function SD(r){const{pageWidth:e,marginLeft:t,marginRight:n}=r;return e-t-n}function vD(r){const e=r.parent,t=e==null?void 0:e.lines.indexOf(r);if(!(!t||t===-1||t-1<0))return e==null?void 0:e.lines[t-1]}function TD(r){var t;const e=(t=r.parent)==null?void 0:t.parent;if(e)return e}function y2(r){const e=a2(r);for(let t=0;t<e.columns.length;t++){const n=e.columns[t];if(!n.isFull)return{column:n,isLast:t===e.columns.length-1,index:t}}}function j6(r){const e=w4(r);if(e)for(let t=0;t<e.divides.length;t++){const n=e.divides[t];if(!n.isFull)return{divide:n,isLast:t===e.divides.length-1,index:t}}}function yD(r,e){const t=r.divides.indexOf(e);if(t!==-1)return r.divides[t+1]}function BD(r){if(r)for(let e=0;e<r.divides.length;e++){const t=r.divides[e],n=r.divides[e+1];if(t.spanGroup.length===0||!n||n.spanGroup.length===0)return t}}function OD(r){var t;const e=(t=j6(r))==null?void 0:t.divide.spanGroup;return e==null?void 0:e[e.length-1]}function I4(r){const e=a2(r),t=e.columns.length;for(let n=0;n<t;n++)if(!e.columns[n].isFull)return!1;return!0}function wD(r){if(r.sections.length>1)return!1;const e=a2(r),t=e.columns.length;for(let n=0;n<t;n++){const s=e.columns[n];if(!R4(s))return!1}return!0}function R4(r){const e=r.lines;if(e.length>1)return!1;const t=e[e.length-1];return AD(t)}function AD(r){if(!r)return!0;for(let e=0;e<r.divides.length;e++){const t=r.divides[e].spanGroup.length;if(t>1)return!1;if(t===1){const n=r.divides[e].spanGroup[0],{spanType:s}=n;if(s!==a1.TAB&&s!==a1.LIST)return!1}}return!0}function ID(){}function A1(r,e){if(r instanceof Object){const{v:t,u:n}=r;return n===d.NumberUnitType.POINT?t:t*e}return r}function e6(r=0,e,t=d.GridType.LINES,n=d.BooleanNumber.TRUE){let s=1;return G6(t,n)&&(s=r),s*=e,s}function G6(r=d.GridType.LINES,e=d.BooleanNumber.FALSE){return e===d.BooleanNumber.TRUE&&(r===d.GridType.LINES_AND_CHARS||r===d.GridType.SNAP_TO_CHARS)}function V6(r,e){const{paragraphStyle:t={}}=e,{linePitch:n=15.6,gridType:s=d.GridType.LINES,paragraphLineGapDefault:i=0}=r,{lineSpacing:o=1,spacingRule:a=d.SpacingRule.AUTO,snapToGrid:u=d.BooleanNumber.TRUE}=t;return{paragraphLineGapDefault:i,linePitch:n,gridType:s,lineSpacing:o,spacingRule:a,snapToGrid:u}}function x4(r,e){const{paragraphStyle:t={}}=e,{charSpace:n=0,gridType:s=d.GridType.LINES,defaultTabStop:i=36,documentTextStyle:o={}}=r,{fs:a=j7}=o,{snapToGrid:u=d.BooleanNumber.TRUE}=t;return{charSpace:n,documentFontSize:a,defaultTabStop:i,gridType:s,snapToGrid:u}}function j2(r,e=-1){let t=e;for(const n of r){const{sections:s}=n,i=t;let o=i,a=Number.NEGATIVE_INFINITY,u=0;for(const c of s){const{columns:l}=c,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,L=S;let P=L,A=0,$=0;v+=w;const Y=O.length;for(let x=0;x<Y;x++){const R=O[x],{spanGroup:k}=R,X=P;let z=X;for(const j of k){const Z=j.spanType===a1.LIST?0:j.count;z+=Z;const W=j.bBox,{ba:U}=W;$=Math.max($,U),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,P=R.ed)}B.st=L+1,B.ed=P>=B.st?P: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}c.st=D+1,c.ed=f>=c.st?f:c.st,c.height=p,u+=p,a=Math.max(a,F),o=c.ed}n.st=i+1,n.ed=o>=n.st?o:n.st,n.height=u,n.width=a,t=n.ed}}function RD(r,e){for(const t of r){const{sections:n}=t;for(const s of n){const{columns:i}=s;for(const o of i){const{lines:a}=o;for(const u of a){const{divides:c,lineHeight:l}=u,D=c.length;for(let f=0;f<D;f++){const p=c[f],{spanGroup:F}=p;for(const E of F)e&&Z2(e)&&e(E)}}}}}}function M4(r,e){for(const t of r){const{sections:n}=t;for(const s of n){const{columns:i}=s;for(const o of i){const{lines:a}=o;for(const u of a)e&&Z2(e)&&e(u)}}}}function P4(r,e){for(const t of r){const{sections:n}=t;for(const s of n){const{columns:i}=s;for(const o of i)e&&Z2(e)&&e(o)}}}function L4(r,e,t,n,s=!1){const{relativeFrom:i,align:o,posOffset:a,percent:u}=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:c,left:l}=e;let D=0;return o===d.AlignTypeH.LEFT?D=l:o===d.AlignTypeH.RIGHT?D=l+c-n:o===d.AlignTypeH.CENTER&&(D=l+c/2-n/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:c}=t;let l=0;return o===d.AlignTypeH.RIGHT?l=c-n:o===d.AlignTypeH.CENTER&&(l=c/2-n/2),l}}}}}}}else if(a){const{pageWidth:c,marginLeft:l,marginRight:D}=t,f=c-D;let p=0;return i===d.ObjectRelativeFromH.COLUMN?p=(s?0:(e==null?void 0:e.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+n>f&&(p=f-n),p}else if(u){const{pageWidth:c,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 u*c}}}}}}}function $4(r,e,t,n,s,i,o=!1){const{relativeFrom:a,align:u,posOffset:c,percent:l}=r;if(u!=null){if(a===d.ObjectRelativeFromV.LINE){let D=0;return u===d.AlignTypeV.BOTTOM?D=t+n-s:u===d.AlignTypeV.TOP?D=t:u===d.AlignTypeV.CENTER&&(D=t+n/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}=e;let f=0;return u===d.AlignTypeV.BOTTOM?f=D-s:u===d.AlignTypeV.CENTER&&(f=D/2-s/2),f}}}}}}}else if(c){let D=0;return a===d.ObjectRelativeFromV.LINE?D=t||0+c: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=c:a===d.ObjectRelativeFromV.PARAGRAPH&&(D=(o?0:i==null?t:i)+c)),D}else if(l){const{pageHeight:D,marginBottom:f,marginTop:p}=e;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 N4(r){const e=r.spanGroup;let t=0;for(const n of e)t+=n.width;return t}const b6=new d.ObjectMatrix;function k4(){b6.reset()}function u2(r,e,t,n,s){const{startIndex:i}=t,o=e.getTextRun(r+i)||{ts:{},st:0,ed:0},{ts:a={},st:u,ed:c}=o,l=b6.getValue(u,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}=n,{snapToGrid:S=d.BooleanNumber.TRUE}=s,v=S2(a),y={...p,...a},T=F.width||Number.POSITIVE_INFINITY-m-E,B={fontStyle:v,textStyle:y,charSpace:f,gridType:D,snapToGrid:S,pageWidth:T};return b6.setValue(u,c,B),B}function H4(r,e,t){return n6(a1.WORD,r,e,t)}function I2(r,e,t){return n6(a1.LETTER,r,e,t)}function X4(r,e){return n6(a1.TAB,d.DataStreamTreeTokenType.TAB,r,e)}function n6(r,e,t,n){const{fontStyle:s,textStyle:i,charSpace:o=1,gridType:a=d.GridType.LINES,snapToGrid:u=d.BooleanNumber.FALSE}=t,c=[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(c.indexOf(e)>-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:a1.PLACEHOLDER,streamType:e,count:1};e===d.DataStreamTreeTokenType.PARAGRAPH&&(l=d.DataStreamTreeTokenType.PARAGRAPH);const D=O1.getTextSize(e,s),{width:f=0}=D;let p=n!=null?n:f,F=0;return G6(a,u)&&(p=f+(Q2(e)?o:o/2),a===d.GridType.SNAP_TO_CHARS&&(F=(p-f)/2)),{content:e,ts:i,fontStyle:s,width:p,bBox:D,paddingLeft:F,left:0,spanType:r,streamType:l,count:e.length}}function Y4(r,e,t){const{bBox:n,symbol:s,ts:i,fontStyle:o,bulletAlign:a=d.BulletAlignment.START,bulletType:u=!1}=e,c=n.width,l=Math.ceil(c/t);let D=(l<2?2:l)*t,f=0;u&&(a===d.BulletAlignment.CENTER?(f=-c/2,D-=f):a===d.BulletAlignment.END&&(f=-c,D-=f));const p=MD(r,e);return{content:s,ts:i,fontStyle:o,width:D,paddingLeft:0,bBox:p,left:f,spanType:a1.LIST,streamType:d.DataStreamTreeTokenType.LETTER,count:0}}function z4(r,e=0){const t=r.length;let n;for(let s=0;s<t;s++){const i=r[s];i.left=n?n.left+n.width:e,n=i}}function xD(r,e=0){r.left=e}function k2(r,e,t=0){z4(e,t);for(const n of e)n.parent=r;r.spanGroup.push(...e)}function MD(r,e){const{ba:t,bd:n}=r.bBox,{ba:s,bd:i}=e.bBox;return t+n>s+i?r.bBox:e.bBox}function W4(r,e){if(r==null)return!1;const{content:t}=r,{content:n}=e;if(t==null||n==null)return!1;const s=/[a-z\d]/i;return s.test(t)&&z2(n)||z2(t)&&s.test(n)}function j4(r,e,t,n,s,i){const o=[];let a=0;for(let u=0;u<e.length;u++){const c=e[u];if(e4(c)||M6(e.substring(u)))break;const l=u2(r+u,t,n,s,i),D=I2(c,l);o.push(D),a++}return{step:a,spanGroup:o}}function G4(r,e,t,n,s,i){const o=u2(r,t,n,s,i),a=[];let u=0;for(let c=0;c<e.length;c++){const l=e[c];if(P6(l))a.unshift(l),u++;else break}return{step:u,spanGroup:[I2(a.join(""),o)]}}function V4(r,e,t,n,s,i){const o=u2(r,t,n,s,i),a=e.match(t4);return{step:a[0].length,spanGroup:[I2(a[0],o)]}}function U4(r,e,t,n,s,i){const o=u2(r,t,n,s,i),a=[];let u=0;for(let c=0;c<e.length;c++){const l=e[c];if(L6(l))a.push(l),u++;else break}return{step:u,spanGroup:[H4(a.join(""),o)]}}function K4(r,e,t,n,s=0,i=!1,o,a,u){const{lineHeight:c=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=XD(e,r);S.lineIndex=s,S.paragraphStart=i,S.contentHeight=D,S.top=l,S.lineHeight=c,S.paddingTop=F,S.paddingBottom=E,S.marginTop=m,S.spaceBelowApply=b,S.divides=PD(c,l,n,f,p,o,a,u);for(const v of S.divides)v.parent=S;return S}function J4(r=15.6,e=0,t,n,s){let i=e;return n==null||n.forEach(o=>{const a=u6(o,r,e);a&&(i=Math.max(i,a))}),s==null||s.forEach(o=>{const a=u6(o,r,e);a&&(i=Math.max(i,a))}),t==null||t.forEach(o=>{const a=u6(o,r,e);a&&(i=Math.max(i,a))}),i}function u6(r,e,t){const{aTop:n,height:s,aLeft:i,width:o,angle:a=0,drawingOrigin:u}=r,{layoutType:c,distT:l=0,distB:D=0}=u;if(c!==d.PositionedObjectLayoutType.WRAP_TOP_AND_BOTTOM)return;if(a===0){const F=n-l,E=s+D;return F+E<t||F>e+t?void 0:F+s}let{top:f=0,height:p=0}=Z4(a,i,o,n,s);if(f-=l,p+=D,!(f+p<t||f>e+t))return f+p}function PD(r,e,t,n,s,i,o,a){const u=[];return u.push({left:0,width:n},{left:t-s,width:s}),o==null||o.forEach((c,l)=>{const D=c6(c,r,e,t);D&&u.push(D)}),a==null||a.forEach((c,l)=>{const D=c6(c,r,e,t);D&&u.push(D)}),i==null||i.forEach((c,l)=>{const D=c6(c,r,e,t);D&&u.push(D)}),HD(t,u)}function q4(r,e){r.isFull=e}function LD(r,e){r.marginBottom=e}function $D(r){}function c6(r,e,t,n){const{aTop:s,height:i,aLeft:o,width:a,angle:u=0,drawingOrigin:c}=r,{layoutType:l}=c;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}=c;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(u!==0){const E=new r1().rotate(u);for(let m=0;m<F.length;m++){const b=F[m];F[m]=E.applyPoint(b)}}return b7(F,t,e,n)}if(u===0)return S7(s,i,o,a,t,e,n,c);const D=Z4(u,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,e,n,c)}return b7(D.points,t,e,n)}function Z4(r,e,t,n,s){const i=new r1().rotate(r),o=new I(e,n),a=new I(e,n+s),u=new I(e+t,n),c=new I(e+t,n+s);return i.makeBoundingBoxFromPoints([o,a,u,c])}function b7(r,e,t,n){const s=new p4(r),i=s.intersection([new I(0,e),new I(n,e)]),o=s.intersection([new I(0,e+t),new I(n,e+t)]);if(!i&&!o)return;const a=ND([...r,...i||[],...o||[]]);return{left:a.min,width:a.max}}function ND(r,e=0){const t=[];for(let n=0;n<r.length;n++){const s=r[n];e===0?t.push(s.x):t.push(s.y)}return{max:Math.max(...t),min:Math.min(...t)}}function S7(r,e,t,n,s,i,o,a){const{layoutType:u,wrapText:c=d.WrapTextType.BOTH_SIDES,distL:l=0,distR:D=0,distT:f=0,distB:p=0}=a,F=r-(u===d.PositionedObjectLayoutType.WRAP_SQUARE?f:0),E=e+(u===d.PositionedObjectLayoutType.WRAP_SQUARE?p:0);if(F+E<s||F>i+s)return;let m=t-l,b=n+D;const S=kD(c,m,b,o);return S===1?b=o-m:S===2&&(m=0,b=t+n+D),{left:m,width:b}}function kD(r,e,t,n){let s=0;return r===d.WrapTextType.LEFT?s=1:r===d.WrapTextType.RIGHT?s=2:r===d.WrapTextType.LARGEST&&(e>n-e-t?s=1:s=2),s}function HD(r,e){e.sort((i,o)=>i.left>o.left?1:-1);const t=[];let n=0;const s=e.length;for(let i=0;i<s;i++){const o=e[i],{left:a,width:u}=o;if(a>n){let c=a-n;c=c<r?c:r-n;const l=v7(n,c);t.push(l)}if(n=Math.max(a+u,n),i===s-1&&a+u<r){const c=v7(a+u,r-a-u);t.push(c)}}return t}function v7(r,e){return{spanGroup:[],width:e,left:r,paddingLeft:0,isFull:!1,st:0,ed:0}}function XD(r,e){return{paragraphIndex:e,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 Q4(r,e,t,n){if(n)if(n.has(r)){const s=n.get(r);s==null||s.elements.push(e)}else n.set(r,{elements:[e],paragraphIndex:r,top:t})}function U6(r,e,t,n,s,i){const o=[],a=new Map;for(const u of e.children){let c=[],l=t;o.length>0&&(l=o[o.length-1]),u.nodeType===d.DataStreamTreeNodeType.PARAGRAPH?c=_t(r,u,l,n,s):(u.nodeType,d.DataStreamTreeNodeType.TABLE),c.length===0&&(c=v4()),YD(o,c)}return{pages:o,renderedBlockIdMap:a}}function YD(r,e){const t=r.length-1,n=r[t],s=e[0];n===s&&e.splice(0,1),r.push(...e)}function zD(){}function K6(r=[],e=d.ColumnSeparatorType.NONE,t=0,n=0,s=Number.POSITIVE_INFINITY,i=Number.POSITIVE_INFINITY){const o=[];let a=0,u=0;if(r.length===0)o.push(l6(n,s,0,d.ColumnSeparatorType.NONE));else for(let l=0;l<r.length;l++){const{width:D,paddingEnd:f}=r[l];u=f,a=D,o.push(l6(n,a,u,e)),n+=a+u,l===r.length-1&&(a=s!==Number.POSITIVE_INFINITY?s-a:D,u=0,o.push(l6(n,a,u,e)))}const c={columns:o,colCount:(r==null?void 0:r.length)||1,height:i,top:t,st:0,ed:0};return o.forEach(l=>{l.parent=c}),c}function J6(r,e){r.isFull=e}function l6(r,e,t,n){return{lines:[],left:r,width:e,height:0,spaceWidth:t,separator:n,st:0,ed:0,drawingLRIds:[],isFull:!1}}function s2(r,e,t=1,n=n2.SECTION){var f1,g1,F1,u1;const s=WD(),{pageNumberStart:i=1,pageSize:o={width:Number.POSITIVE_INFINITY,height:Number.POSITIVE_INFINITY},pageOrient:a=d.PageOrientType.PORTRAIT,headerIds:u={},footerIds:c={},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}=e,{width:L=Number.POSITIVE_INFINITY,height:P=Number.POSITIVE_INFINITY}=o;s.pageNumber=t,s.pageNumberStart=i,s.renderConfig=B,s.marginLeft=y,s.marginRight=T,s.breakType=n,s.pageWidth=L,s.width=0,s.pageHeight=P,s.height=0,s.pageOrient=a;const{defaultHeaderId:A,evenPageHeaderId:$,firstPageHeaderId:Y}=u,{defaultFooterId:x,evenPageFooterId:R,firstPageFooterId:k}=c;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,Z;X&&((f1=O.get(X))!=null&&f1.has(L)?j=(g1=O.get(X))==null?void 0:g1.get(L):p&&p.has(X)&&(j=T7(p.get(X),r,e),O.set(X,new Map([[L,j]]))),s.headerId=X),z&&((F1=w.get(z))!=null&&F1.has(L)?Z=(u1=w.get(z))==null?void 0:u1.get(L):f&&f.has(z)&&(Z=T7(f.get(z),r,e),w.set(X,new Map([[L,Z]]))),s.footerId=z),s.marginTop=y7(m,S,j),s.marginBottom=y7(b,v,Z);const W=s.sections,U=W[W.length-1],{marginTop:Q,marginBottom:e1,marginLeft:n1,marginRight:K}=s,t1=L-n1-K,G=P-Q-e1;let V=0;U&&(V=U.top+U.height);const l1=K6(F,E,V,0,t1,G-V);return l1.parent=s,W.push(l1),s}function WD(){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,e,t,n=!0){const{lists:s,footerTreeMap:i,headerTreeMap:o,localeService:a,pageSize:u,marginLeft:c=0,marginRight:l=0,drawings:D,marginTop:f=0,marginBottom:p=0,marginHeader:F=0,marginFooter:E=0}=e,m=(u==null?void 0:u.width)||Number.POSITIVE_INFINITY,b={lists:s,footerTreeMap:i,headerTreeMap:o,pageSize:{width:m-c-l,height:Number.POSITIVE_INFINITY},localeService:a,drawings:D},S=s2(b,t),v=U6(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,L={lines:y.lines,skeDrawings:B,height:T,st:O,ed:w,marginLeft:c,marginRight:l};return n?{...L,marginTop:jD(f,F,T)}:{...L,marginBottom:GD(p,E,T)}}function y7(r,e,t){return!t||t.lines.length===0?r:Math.max(r,e,(t==null?void 0:t.height)||0)}function jD(r,e,t){const n=Math.max(r,e);return t>n?0:n-t}function GD(r,e,t){const n=Math.max(r,e);return t>n?0:n-t}function tt(r,e,t,n,s=!1){if(s)if(n.bulletSkeleton){const{bulletSkeleton:i,paragraphStyle:o={}}=n,{gridType:a=d.GridType.LINES,charSpace:u=0,defaultTabStop:c=1}=t,{snapToGrid:l=d.BooleanNumber.TRUE}=o,D=e6(u,c,a,l);QD(o,i,D);const f=Y4(r[0],i,D);W1([f,...r],e,t,n,s)}else W1(r,e,t,n,s);else G2(r,e,t,n,s);return[...e]}function G2(r,e,t,n,s=!1,i=!0,o){var c;const a=V1(e),u=j6(a);if(u){const l=B7(r),{divide:D}=u,f=(c=D==null?void 0:D.spanGroup)==null?void 0:c[D.spanGroup.length-1],p=(f==null?void 0:f.width)||0,F=(f==null?void 0:f.left)||0,E=W4(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(q4(D,!0),u.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,e,t,n,s,o)}else W1(r,e,t,n,s,o);else{const S=D.parent,v=qD(r);if(S&&v&&!t_(S)){const{paragraphLineGapDefault:y,linePitch:T,lineSpacing:B,spacingRule:O,snapToGrid:w,gridType:L}=V6(t,n),{boundingBoxAscent:P,boundingBoxDescent:A}=v,$=P+A,{contentHeight:Y}=st($,y,T,L,B,O,w);if(S.contentHeight<Y){const x=ZD(S),R=x.length;let k=[],X=1;R>2&&x[0].spanType===a1.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,e,t,n,j,P+A);for(let Z=X;Z<x.length;Z++)G2([x[Z]],e,t,n,s,!1);G2(r,e,t,n,s,!1);return}}k2(D,r,b)}}else W1(r,e,t,n,s,o)}function W1(r,e,t,n,s=!1,i){var K1,y1,J1,$1,N1;let o=V1(e),a=y2(o);if((!a||!a.column)&&(nt(r,e,t,n),o=V1(e),a=y2(o)),!a)return;const u=a.column,c=A4(u),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}=n,{spaceAbove:v=0,spaceBelow:y=0,indentFirstLine:T=0,hanging:B=0,indentStart:O=0,indentEnd:w=0}=p,{paragraphLineGapDefault:L,linePitch:P,lineSpacing:A,spacingRule:$,snapToGrid:Y,gridType:x}=V6(t,n),{paddingTop:R,paddingBottom:k,contentHeight:X,lineSpacingApply:z}=st(f,L,P,x,A,$,Y),{marginTop:j,spaceBelowApply:Z}=UD(z,v,y,s,c),W=j+R+X+k;let U=u.parent;U||(U=a2(o));const Q=(c==null?void 0:c.lineHeight)||0,e1=(c==null?void 0:c.top)||0,n1=Q+e1,{pageWidth:K,headerId:t1,footerId:G}=o,V=(y1=(K1=E==null?void 0:E.get(t1))==null?void 0:K1.get(K))==null?void 0:y1.skeDrawings,l1=($1=(J1=m==null?void 0:m.get(G))==null?void 0:J1.get(K))==null?void 0:$1.skeDrawings;KD(n1,W,u,(N1=b==null?void 0:b.get(S))==null?void 0:N1.top,F);const f1=J4(W,n1,o.skeDrawings,V,l1);if(W+f1>U.height&&u.lines.length>0&&o.sections.length>0){J6(u,!0),et(r,e,t,n,s,i);return}const g1=c?c.lineIndex+1:0,{charSpace:F1,defaultTabStop:u1}=x4(t,n),L1=e6(F1,u1,x,Y),{paddingLeft:U1,paddingRight:D1,changeBulletWidth:R1}=VD(r[0],T,B,O,w,L1);R1.state&&(r[0].width=R1.hangingNumber);const x1=K4(S,A2.PARAGRAPH,{lineHeight:W,contentHeight:X,lineTop:f1,paddingLeft:U1,paddingRight:D1,paddingTop:R,paddingBottom:k,marginTop:j,spaceBelowApply:Z},u.width,g1,s,o.skeDrawings,V,l1);u.lines.push(x1),x1.parent=u,Q4(S,x1,n1,b),G2(r,e,t,n,s,!0,i)}function et(r,e,t,n,s=!1,i){const o=V1(e);I4(o)===!0?nt(r,e,t,n,s,i):W1(r,e,t,n,s,i)}function nt(r,e,t,n,s=!1,i){const o=V1(e),{skeHeaders:a,skeFooters:u}=n;e.push(s2(t,{skeHeaders:a,skeFooters:u},o==null?void 0:o.pageNumber)),et(r,e,t,n,s,i)}function VD(r,e=0,t=0,n=0,s=0,i){const{spanType:o=a1.LETTER,bBox:a}=r,u=A1(e,i),c=A1(t,i),l=A1(n,i),D=A1(s,i);let f=l;const p=D,F={state:!1,hangingNumber:0};if(o===a1.LIST){const{width:E}=a;u>0?f+=u:c>0&&c>E&&(F.state=!0,F.hangingNumber=c)}else f+=c;return{paddingLeft:f,paddingRight:p,changeBulletWidth:F}}function UD(r=0,e=0,t=0,n,s){let i=0,o=0;if(!n)return{marginTop:i,spaceBelowApply:o};if(i=A1(e,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 st(r,e,t,n,s,i,o){let a=e,u=e;if(n===d.GridType.DEFAULT||o===d.BooleanNumber.FALSE)return i===d.SpacingRule.AUTO?{paddingTop:a,paddingBottom:u,contentHeight:s*r,lineSpacingApply:r}:{paddingTop:a,paddingBottom:u,contentHeight:Math.max(s,r),lineSpacingApply:s};let c=0;return i===d.SpacingRule.AUTO?c=s*t:c=s,r+e*2<c&&(a=u=(c-r)/2),{paddingTop:a,paddingBottom:u,contentHeight:r,lineSpacingApply:c}}function KD(r,e,t,n,s){var u;if(!s)return;const i=(u=t.parent)==null?void 0:u.parent;if(!i)return;const o=new Map,a=JD(t);s.forEach(c=>{if(!c)return;const{initialState:l,drawingOrigin:D}=c;if(l||!D)return;const{objectTransform:f}=D,{positionH:p,positionV:F,size:E,angle:m}=f,{width:b=0,height:S=0}=E;c.aLeft=L4(p,t,i,b,a)||0,c.aTop=$4(F,i,r,e,S,n,a)||0,c.width=b,c.height=S,c.angle=m,c.initialState=!0,o.set(c.objectId,c)}),i.skeDrawings=new Map([...i.skeDrawings,...o])}function JD(r){const e=r.parent;if(!e)return!1;const t=e==null?void 0:e.columns;if(!t)return!1;const n=t.length;for(let s=n-1;s>=0;s--){const o=t[s].lines,a=o.length;if(!(a<=0)){for(let u=a-1;u>=0;u--)if(o[u].paragraphStart)return!1}}return!0}function B7(r){const e=r.length;let t=0;for(let n=0;n<e;n++){const s=r[n];t+=s.width}return t}function qD(r){const e=r.length;let t=Number.NEGATIVE_INFINITY,n;for(let s=0;s<e;s++){const i=r[s],{ba:o,bd:a}=i.bBox;t<o+a&&(n={boundingBoxAscent:o,boundingBoxDescent:a}),t=o+a}return n}function ZD(r){const e=r.divides,t=e.length,n=[];for(let s=0;s<t;s++){const i=e[s];n.push(...i.spanGroup)}return n}function QD(r,e,t){const{hanging:n,indentStart:s}=r,{hanging:i,indentStart:o}=e;n===void 0&&(r.hanging=i),s===void 0&&(r.indentStart=A1(o||0,t)-A1(i||0,t))}function t_(r){return!r.divides[0].spanGroup[0]}class L2{constructor(e,t=!1){this.position=e,this.required=t}}const e_=5,O7=12,n_=13,s_=16,i_=17,r_=22,w7=28,A7=31,o_=33,H2=34,a_=35,h6=36,S6=37,it=38,u_=39,c_=40,g2=41,l_=42,_=0,g=1,q=2,rt=3,C=4,h_=[[C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,rt,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,q,C,_,_,_,_,_,_,_,_,g,_],[_,C,C,g,g,C,C,C,C,g,g,g,g,g,_,g,g,g,_,_,C,q,C,_,_,_,_,_,_,_,_,g,_],[C,C,C,g,g,g,C,C,C,g,g,g,g,g,g,g,g,g,g,g,C,q,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,q,C,g,g,g,g,g,g,g,g,g,g],[_,C,C,g,g,g,C,C,C,_,_,_,_,_,_,g,g,g,_,_,C,q,C,_,_,_,_,_,_,_,_,g,_],[_,C,C,g,g,g,C,C,C,_,_,_,_,_,_,g,g,g,_,_,C,q,C,_,_,_,_,_,_,_,_,g,_],[_,C,C,g,g,g,C,C,C,_,_,g,_,g,_,g,g,g,_,_,C,q,C,_,_,_,_,_,_,_,_,g,_],[_,C,C,g,g,g,C,C,C,_,_,g,g,g,_,g,g,g,_,_,C,q,C,_,_,_,_,_,_,_,_,g,_],[g,C,C,g,g,g,C,C,C,_,_,g,g,g,g,g,g,g,_,_,C,q,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,q,C,_,_,_,_,_,_,_,_,g,_],[g,C,C,g,g,g,C,C,C,g,g,g,g,g,_,g,g,g,_,_,C,q,C,_,_,_,_,_,_,_,_,g,_],[g,C,C,g,g,g,C,C,C,g,g,g,g,g,_,g,g,g,_,_,C,q,C,_,_,_,_,_,_,_,_,g,_],[g,C,C,g,g,g,C,C,C,g,g,g,g,g,_,g,g,g,_,_,C,q,C,_,_,_,_,_,_,_,_,g,_],[_,C,C,g,g,g,C,C,C,_,g,_,_,_,_,g,g,g,_,_,C,q,C,_,_,_,_,_,_,_,_,g,_],[_,C,C,g,g,g,C,C,C,_,_,_,_,_,_,g,g,g,_,_,C,q,C,_,_,_,_,_,_,_,_,g,_],[_,C,C,g,_,g,C,C,C,_,_,g,_,_,_,g,g,g,_,_,C,q,C,_,_,_,_,_,_,_,_,g,_],[_,C,C,g,_,g,C,C,C,_,_,_,_,_,_,g,g,g,_,_,C,q,C,_,_,_,_,_,_,_,_,g,_],[g,C,C,g,g,g,C,C,C,g,g,g,g,g,g,g,g,g,g,g,C,q,C,g,g,g,g,g,g,g,g,g,_],[_,C,C,g,g,g,C,C,C,_,_,_,_,_,_,g,g,g,_,C,C,q,C,_,_,_,_,_,_,_,_,g,_],[_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,C,_,_,_,_,_,_,_,_,_,_,_,_],[g,C,C,g,g,g,C,C,C,g,g,g,g,g,_,g,g,g,_,_,C,q,C,_,_,_,_,_,_,_,_,g,_],[g,C,C,g,g,g,C,C,C,g,g,g,g,g,g,g,g,g,g,g,C,q,C,g,g,g,g,g,g,g,g,g,g],[_,C,C,g,g,g,C,C,C,_,g,_,_,_,_,g,g,g,_,_,C,q,C,_,_,_,g,g,_,_,_,g,_],[_,C,C,g,g,g,C,C,C,_,g,_,_,_,_,g,g,g,_,_,C,q,C,_,_,_,_,g,_,_,_,g,_],[_,C,C,g,g,g,C,C,C,_,g,_,_,_,_,g,g,g,_,_,C,q,C,g,g,g,g,_,_,_,_,g,_],[_,C,C,g,g,g,C,C,C,_,g,_,_,_,_,g,g,g,_,_,C,q,C,_,_,_,g,g,_,_,_,g,_],[_,C,C,g,g,g,C,C,C,_,g,_,_,_,_,g,g,g,_,_,C,q,C,_,_,_,_,g,_,_,_,g,_],[_,C,C,g,g,g,C,C,C,_,_,_,_,_,_,g,g,g,_,_,C,q,C,_,_,_,_,_,g,_,_,g,_],[_,C,C,g,g,g,C,C,C,_,g,_,_,_,_,g,g,g,_,_,C,q,C,_,_,_,_,_,_,_,g,g,_],[_,C,C,g,g,g,C,C,C,_,g,_,_,_,_,g,g,g,_,_,C,q,C,_,_,_,_,_,_,_,_,g,_],[g,C,C,g,g,g,C,C,C,g,g,g,g,g,_,g,g,g,_,_,C,q,C,_,_,_,_,_,_,_,_,g,_],[_,C,C,g,g,_,C,C,C,_,_,_,_,_,_,_,_,_,_,_,C,q,C,_,_,_,_,_,_,_,_,g,_]];class D_{constructor(){h(this,"_rules",new Map)}add(e,t){this._rules.set(e,t)}shouldBreak(e,t){for(const n of this._rules.values())if(n(e,t))return!0;return!1}}const __=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]),d_=new Uint8Array(new Uint32Array([305419896]).buffer)[0]===18,I7=(r,e,t)=>{const n=r[e];r[e]=r[t],r[t]=n},f_=r=>{const e=r.length;for(let t=0;t<e;t+=4)I7(r,t,t+3),I7(r,t+1,t+2)},g_=r=>{d_&&f_(r)},q6=0,ot=-3;class B2{constructor(){h(this,"table",new Uint16Array(16));h(this,"trans",new Uint16Array(288))}}class p_{constructor(e,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=e,this.sourceIndex=0,this.tag=0,this.bitcount=0,this.dest=t,this.destLen=0,this.ltree=new B2,this.dtree=new B2}}const at=new B2,ut=new B2,Z6=new Uint8Array(30),Q6=new Uint16Array(30),ct=new Uint8Array(30),lt=new Uint16Array(30),m_=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 ht(r,e,t,n){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=n,s=0;s<30;++s)e[s]=i,i+=1<<r[s]}function F_(r,e){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)e.table[t]=0;for(e.table[5]=32,t=0;t<32;++t)e.trans[t]=t}const x7=new Uint16Array(16);function D6(r,e,t,n){let s,i;for(s=0;s<16;++s)r.table[s]=0;for(s=0;s<n;++s)r.table[e[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<n;++s)e[t+s]&&(r.trans[x7[e[t+s]]++]=s)}function C_(r){r.bitcount--||(r.tag=r.source[r.sourceIndex++],r.bitcount=7);const e=r.tag&1;return r.tag>>>=1,e}function b1(r,e,t){if(!e)return t;for(;r.bitcount<24;)r.tag|=r.source[r.sourceIndex++]<<r.bitcount,r.bitcount+=8;const n=r.tag&65535>>>16-e;return r.tag>>>=e,r.bitcount-=e,n+t}function v6(r,e){for(;r.bitcount<24;)r.tag|=r.source[r.sourceIndex++]<<r.bitcount,r.bitcount+=8;let t=0,n=0,s=0,i=r.tag;do n=2*n+(i&1),i>>>=1,++s,t+=e.table[s],n-=e.table[s];while(n>=0);return r.tag=i,r.bitcount-=s,e.trans[t+n]}function E_(r,e,t){let n,s,i;const o=b1(r,5,257),a=b1(r,5,1),u=b1(r,4,4);for(n=0;n<19;++n)C1[n]=0;for(n=0;n<u;++n){const c=b1(r,3,0);C1[m_[n]]=c}for(D6(R7,C1,0,19),s=0;s<o+a;){const c=v6(r,R7);switch(c){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++]=c;break}}D6(e,C1,0,o),D6(t,C1,o,a)}function M7(r,e,t){for(;;){let n=v6(r,e);if(n===256)return q6;if(n<256)r.dest[r.destLen++]=n;else{let s;n-=257;const i=b1(r,Z6[n],Q6[n]),o=v6(r,t),a=r.destLen-b1(r,ct[o],lt[o]);for(s=a;s<a+i;++s)r.dest[r.destLen++]=r.dest[s]}}}function b_(r){let e,t,n;for(;r.bitcount>8;)r.sourceIndex--,r.bitcount-=8;if(e=r.source[r.sourceIndex+1],e=256*e+r.source[r.sourceIndex],t=r.source[r.sourceIndex+3],t=256*t+r.source[r.sourceIndex+2],e!==(~t&65535))return ot;for(r.sourceIndex+=4,n=e;n;--n)r.dest[r.destLen++]=r.source[r.sourceIndex++];return r.bitcount=0,q6}function P7(r,e){const t=new p_(r,e);let n,s,i;do{switch(n=C_(t),s=b1(t,2,0),s){case 0:i=b_(t);break;case 1:i=M7(t,at,ut);break;case 2:E_(t,t.ltree,t.dtree),i=M7(t,t.ltree,t.dtree);break;default:i=ot}if(i!==q6)throw new Error("Data error")}while(!n);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}F_(at,ut);ht(Z6,Q6,4,3);ht(ct,lt,2,1);Z6[28]=0;Q6[28]=258;const t7=11,j1=5,S_=t7-j1,v_=65536>>t7,T_=1<<S_,y_=T_-1,X2=2,B_=1<<j1,_6=B_-1,Dt=65536>>j1,O_=1024>>j1,w_=Dt+O_,A_=w_,I_=32,R_=A_+I_,x_=1<<X2;class M_{constructor(e){h(this,"highStart");h(this,"errorValue");h(this,"data");const t=typeof e.readUInt32BE=="function"&&typeof e.slice=="function";if(t||e instanceof Uint8Array){let n;if(t)this.highStart=e.readUInt32LE(0),this.errorValue=e.readUInt32LE(4),n=e.readUInt32LE(8),e=e.slice(12);else{const s=new DataView(e.buffer);this.highStart=s.getUint32(0,!0),this.errorValue=s.getUint32(4,!0),n=s.getUint32(8,!0),e=e.subarray(12)}e=P7(e,new Uint8Array(n)),e=P7(e,new Uint8Array(n)),g_(e),this.data=new Uint32Array(e.buffer)}else({data:this.data,highStart:this.highStart,errorValue:this.errorValue}=e)}get(e){let t;return e<0||e>1114111?this.errorValue:e<55296||e>56319&&e<=65535?(t=(this.data[e>>j1]<<X2)+(e&_6),this.data[t]):e<=65535?(t=(this.data[Dt+(e-55296>>j1)]<<X2)+(e&_6),this.data[t]):e<this.highStart?(t=this.data[R_-v_+(e>>t7)],t=this.data[t+(e>>j1&y_)],t=(t<<X2)+(e&_6),this.data[t]):this.data[this.data.length-x_]}}const P_=new M_(__);function d6(r){switch(r){case o_:return O7;case u_:case c_:case l_:return O7;case a_:return e_;default:return r}}function f6(r){switch(r){case S6:case it:return H2;case g2:return r_;default:return r}}class L_{constructor(e){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 D_);this.string=e}use(e){return e(this),this}addRule(e,t){return this._rule.add(e,t),this}nextBreak(){if(this._curClass==null){const e=this._nextCharClass();this._curClass=f6(e),this._nextClass=e,this._LB8a=e===A7,this._LB30a=0}for(;this._pos<this.string.length;){this._lastPos=this._pos;const e=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(e)),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 e=this.string.charCodeAt(this._pos++),t=this.string.charCodeAt(this._pos);return e>=55296&&e<=56319&&t>=56320&&t<=57343?(this._pos++,(e-55296)*1024+(t-56320)+65536):e}_nextCharClass(){const e=this._getNextCodePoint(),t=P_.get(e);return this._codePoint=e,d6(t)}_getSimpleBreak(){switch(this._nextClass){case g2:return!1;case H2:case S6:case it:return this._curClass=H2,!1;case h6:return this._curClass=h6,!1}return null}_getPairTableBreak(e){let t=!1;switch(h_[this._curClass][this._nextClass]){case _:t=!0;break;case g:t=e===g2;break;case q:if(t=e===g2,!t)return t=!1,t;break;case rt:if(e!==g2)return t;break}return this._LB8a&&(t=!1),this._LB21a&&(this._curClass===s_||this._curClass===i_)?(t=!1,this._LB21a=!1):this._LB21a=this._curClass===n_,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 $_=9;function N_(r){r.addRule("break_before_tab",e=>e===$_)}function _t(r,e,t,n,s){const{gridType:i=d.GridType.LINES,charSpace:o=0,defaultTabStop:a=10.5,pageSize:u={width:Number.POSITIVE_INFINITY,height:Number.POSITIVE_INFINITY},marginRight:c=0,marginLeft:l=0,lists:D,drawings:f={},localeService:p}=n,{endIndex:F,startIndex:E,content:m="",blocks:b=[]}=e,S=r.getParagraph(F)||{startIndex:0},{paragraphStyle:v={},bullet:y}=S,{skeHeaders:T,skeFooters:B,skeListLevel:O,drawingAnchor:w}=s,L=new Map,P={paragraphIndex:F,paragraphStyle:v,paragraphAffectSkeDrawings:L,skeHeaders:T,skeFooters:B,drawingAnchor:w},A=k_(y,O),$=B4(y,D,A);H_(y,$,O),P.bulletSkeleton=$;const{horizontalAlign:Y=d.HorizontalAlign.UNSPECIFIED,snapToGrid:x=d.BooleanNumber.TRUE}=v;let R=[t];const k=new Map;for(let Z=0,W=b.length;Z<W;Z++){const U=b[Z],Q=r.getCustomBlock(U);if(Q==null)continue;k.set(U,Q);const e1=Q.blockId,n1=f[e1];n1.layoutType!==d.PositionedObjectLayoutType.INLINE&&L.set(e1,X_(n1))}k4();const X=new L_(m);let z=0,j;for(N_(X);j=X.nextBreak();){let W=m.slice(z,j.position),U=z,Q=[],e1=z===0;const n1=()=>{Q.length!==0&&(R=tt(Q,R,n,P,e1),Q=[],e1=!1)};for(;W.length>0;){const K=W[0],t1=U+E;if(/\s/.test(K)||Q2(K)){const G=u2(U,r,e,n,v);let V;if(K===d.DataStreamTreeTokenType.TAB){const l1=e6(o,a,i,x);V=X4(G,l1)}else V=I2(K,G);Q.push(V),U++,W=W.substring(1)}else if(M6(W)){const{step:G,spanGroup:V}=V4(U,W,r,e,n,v);Q.push(...V),U+=G,W=W.substring(G)}else if(P6(K)){const{step:G,spanGroup:V}=G4(U,W,r,e,n,v);Q.push(...V),U+=G,W=W.substring(G)}else if(L6(K)){const{step:G,spanGroup:V}=U4(U,W,r,e,n,v);Q.push(...V),U+=G,W=W.substring(G)}else{const{step:G,spanGroup:V}=j4(U,W,r,e,n,v);Q.push(...V),U+=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 V=G.blockId;f[V].layoutType===d.PositionedObjectLayoutType.INLINE&&(R=O4())}}else if(K===d.DataStreamTreeTokenType.PAGE_BREAK)n1(),R.push(s2(n,s,L7(R[R.length-1]),n2.PAGE)),L.clear();else if(K===d.DataStreamTreeTokenType.COLUMN_BREAK){n1();const G=R[R.length-1],V=y2(G);V&&!V.isLast?J6(V.column,!0):R.push(s2(n,s,L7(G),n2.COLUMN))}}n1(),z=j.position}return M4(R,Z=>{Y_(Z,Y)}),R}function k_(r,e){if(!r||!e)return;const{listId:t,nestingLevel:n}=r,s=e==null?void 0:e.get(t);let i=n;i<0&&(i=0);const o=[];for(let a=i;a>=0;a--){const u=s==null?void 0:s[a];o[a]=u||null}return o}function H_(r,e,t){if(!r||!e)return;const{listId:n,nestingLevel:s}=r,i=[...(t==null?void 0:t.get(n))||[]];i[s]=e,i.splice(s+1),t==null||t.set(n,i)}function X_(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 Y_(r,e){if(e===d.HorizontalAlign.UNSPECIFIED||e===d.HorizontalAlign.LEFT)return;const{divides:t}=r,n=t.length;for(let s=0;s<n;s++){const i=t[s],{width:o}=i,a=N4(i);o!==Number.POSITIVE_INFINITY&&(e===d.HorizontalAlign.CENTER?i.paddingLeft=(o-a)/2:e===d.HorizontalAlign.RIGHT?i.paddingLeft=o-a:d.HorizontalAlign.JUSTIFIED)}}function z_(r=0,e,t=d.ColumnSeparatorType.NONE,n=Number.POSITIVE_INFINITY){const{left:s,width:i,spaceWidth:o}=W_(r,e,n);return{lines:[],left:s,width:i,height:0,spaceWidth:o,separator:t,st:0,ed:0,drawingLRIds:[],isFull:!1}}function W_(r=0,e,t){let n=0,s=0,i=0;for(let o=0;o<=r;o++){const{width:a,paddingEnd:u}=e[o];o===e.length-1?(n=t===Number.POSITIVE_INFINITY?t-n:a,s=0):(s=u,n=a,i+=n+s)}return{width:n,spaceWidth:s,left:i-n-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(e=0,t=0){this._translateX=e,this._translateY=t}translate(e=0,t=0){this._translateX+=e,this._translateY+=t}translateSave(){this._translateSaveList.push({x:this._translateX,y:this._translateY})}translateRestore(){const e=this._translateSaveList.pop();e&&(this._translateX=e.x,this._translateY=e.y)}translatePagePadding(e){const{marginTop:t=0,marginBottom:n=0,marginLeft:s=0,marginRight:i=0}=e;this.translate(s,t)}restorePagePadding(e){const{marginTop:t=0,marginBottom:n=0,marginLeft:s=0,marginRight:i=0}=e;this.translate(-s,-t)}translatePage(e,t=T1.VERTICAL,n=0,s=0,i=0,o=0){const{pageWidth:a,pageHeight:u}=e;let c=0,l=0;return t===T1.VERTICAL?c+=u+s:t===T1.HORIZONTAL&&(l+=a+n),this.translate(l,c),{x:l,y:c}}translateSection(e){const{top:t=0}=e;return this.translate(0,t),{x:0,y:t}}translateColumn(e){const{left:t}=e;return this.translate(t,0),{x:t,y:0}}translateLine(e,t=!1){const{top:n,marginBottom:s=0,marginTop:i=0,paddingTop:o=0,paddingBottom:a=0}=e,u=n+(t===!0?i:0)+o;return this.translate(0,u),{x:0,y:u}}translateDivide(e){const{left:t,paddingLeft:n}=e,s=t+n;return this.translate(s,0),{x:s,y:0}}translateSpan(e){const{left:t}=e;return this.translate(t,0),{x:t,y:0}}}var dt=(r=>(r[r.NORMAL=0]="NORMAL",r[r.START=1]="START",r[r.END=2]="END",r))(dt||{}),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,e){return r.page>e.page?!1:r.page<e.page?!0:r.section>e.section?!1:r.section<e.section?!0:r.column>e.column?!1:r.column<e.column?!0:r.line>e.line?!1:r.line<e.line?!0:r.divide>e.divide?!1:r.divide<e.divide?!0:r.span>e.span?!1:(r.span<e.span,!0)}function V2(r,e){return e7(r,e)?{start:r,end:e}:{start:e,end:r}}function T6(r){const e=r.length;if(e===0)return;const t=r[0],n=r[e-1],s=r.length===1&&t.collapsed;return{startOffset:t.startOffset,endOffset:n.endOffset,collapsed:s}}function j_(r,e,t,n){let s=n,i=n;for(let o=0;o<r.length;o++){const u=r[o].count;o<e&&(s+=u),o<t&&(i+=u)}return{startOffset:s,endOffset:i}}class ft{constructor(e,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=e,this._docSkeleton=t}getRangePointData(e,t){const n=[],s=[],i=[];if(e==null||t==null)return{borderBoxPointGroup:n,contentBoxPointGroup:s,cursorList:i};const{start:o,end:a}=V2(e,t);return this._selectionIterator(o,a,(u,c,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[u],w=b[c],L=(O==null?void 0:O.left)||0,P=(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)===a1.LIST,{startOffset:x,endOffset:R}=j_(b,u,c,S),k=o.span===u&&l?o.isBack:!0,X=a.span===c&&D?a.isBack:!1,z=o===a;if(u===0&&c===b.length-1)T={startX:v+L+(Y?P:0),startY:y,endX:v+A+$,endY:y+F},B={startX:v+L+(Y?P:0),startY:y+E,endX:v+A+$,endY:y+E+m};else{const j=k&&!Y;T={startX:v+L+(j?0:P),startY:y,endX:v+A+(X?0:$),endY:y+F},B={startX:v+L+(j?0:P),startY:y+E,endX:v+A+(X?0:$),endY:y+E+m}}n.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:n,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(e=0,t,n,s){s===t?this._currentStartState[e]=1:this._currentStartState[e]=0,s===n?this._currentEndState[e]=2:this._currentEndState[e]=0}_checkPreviousNodePositionState(e,t=!0){let n=e,s;for(;n>=0;){const i=F2[n];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;n--}return s}_getSelectionRuler(e,t,n,s,i){let o=0,a=s;const u=F2[e],c=F2[e+1];if(c===null||u===null)return{start_next:o,end_next:a};const l=t[u],D=n[u];this._setNodePositionState(u,l,D,i);const f=this._checkPreviousNodePositionState(e),p=this._checkPreviousNodePositionState(e,!1);return f===1&&(o=t[c]),p===2&&(a=n[c]),{start_next:o,end_next:a}}_pushToPoints(e){const{startX:t,startY:n,endX:s,endY:i}=e,o=[];return o.push({x:t,y:n}),o.push({x:s,y:n}),o.push({x:s,y:i}),o.push({x:t,y:i}),o.push({x:t,y:n}),o}_selectionIterator(e,t,n){const s=this._docSkeleton;if(!s)return[];this._liquid.reset();const i=s.getSkeletonData();if(i==null)return[];const o=i.pages,{page:a}=e,{page:u}=t;if(this._resetCurrentNodePositionState(),this._documentOffsetConfig==null)return[];const{pageLayoutType:c,pageMarginLeft:l,pageMarginTop:D}=this._documentOffsetConfig;for(let f=0;f<=a-1;f++){const p=o[f];this._liquid.translatePage(p,c,l,D)}for(let f=a;f<=u;f++){const p=o[f],F=p.sections,{start_next:E,end_next:m}=this._getSelectionRuler(X1.page,e,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,e,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:L,end_next:P}=this._getSelectionRuler(X1.column,e,t,w.length-1,B);this._liquid.translateColumn(O);for(let A=L;A<=P;A++){const $=w[A],{divides:Y}=$,{start_next:x,end_next:R}=this._getSelectionRuler(X1.line,e,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:Z}=this._getSelectionRuler(X1.divide,e,t,z.length-1,k);let W=!1,U=!1;f===a&&b===E&&B===y&&A===L&&k===x&&(W=!0),f===u&&b===m&&B===T&&A===P&&k===R&&(U=!0),n&&n(j,Z,W,U,X,$,O,S,p),this._liquid.translateRestore()}this._liquid.translateRestore()}}}this._liquid.translateRestore(),this._liquid.translatePage(p,c,l,D)}}}const gt=["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,n){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(n)}get hoverCursor(){return this._hoverCursor}get moveCursor(){return this._moveCursor}get fillRule(){return this._fillRule}get globalCompositeOperation(){return this._globalCompositeOperation}get paintFirst(){return this._paintFirst}get stroke(){return this._stroke}get strokeScaleEnabled(){return this._strokeScaleEnabled}get fill(){return this._fill}get fillAfterStrokeEnabled(){return this._fillAfterStrokeEnabled}get hitStrokeWidth(){return this._hitStrokeWidth}get strokeLineJoin(){return this._strokeLineJoin}get strokeLineCap(){return this._strokeLineCap}get shadowColor(){return this._shadowColor}get shadowBlur(){return this._shadowBlur}get shadowOffset(){return this._shadowOffset}get shadowOffsetX(){return this._shadowOffsetX}get shadowOffsetY(){return this._shadowOffsetY}get shadowOpacity(){return this._shadowOpacity}get shadowEnabled(){return this._shadowEnabled}get shadowForStrokeEnabled(){return this._shadowForStrokeEnabled}get strokeDashArray(){return this._strokeDashArray}get strokeDashOffset(){return this._strokeDashOffset}get strokeMiterLimit(){return this._strokeMiterLimit}static drawWith(t,n){}static _renderPaintInOrder(t,n){n.paintFirst==="stroke"?(this._renderStroke(t,n),this._renderFill(t,n)):(this._renderFill(t,n),this._renderStroke(t,n))}static _renderFill(t,n){n.fill&&(t.save(),this._setFillStyles(t,n),n.fillRule==="evenodd"?t.fill("evenodd"):t.fill(),t.restore())}static _renderStroke(t,n){const{stroke:s,strokeWidth:i,shadowEnabled:o,shadowForStrokeEnabled:a,strokeScaleEnabled:u,parent:c}=n;let{scaleX:l,scaleY:D}=n;if(!(!s||i===0)){if(o&&!a&&this._removeShadow(t),t.save(),u&&c){const f=this._getObjectScaling();t.scale(1/f.scaleX,1/f.scaleY)}else u&&(l=l!=null?l:1,D=D!=null?D:1,t.scale(1/l,1/D));this._setLineDash(t),this._setStrokeStyles(t,n),t.stroke(),t.restore()}}static _getObjectScaling(){return{scaleX:1,scaleY:1}}static _removeShadow(t){}static _setFillStyles(t,n){t.fillStyle=n.fill}static _setStrokeStyles(t,n){const{strokeWidth:s,strokeLineCap:i,strokeDashOffset:o,strokeLineJoin:a,strokeMiterLimit:u,stroke:c}=n;t.setLineWidthNative(s),t.lineCap=i,t.lineDashOffset=o,t.lineJoin=a,t.miterLimit=u,t.strokeStyle=c}static _setLineDash(t){}render(t,n){if(!this.visible)return this.makeDirty(!1),this;if(this.isRender()){const{top:i,left:o,bottom:a,right:u}=n.viewBound;if(this.width+this.strokeWidth<o||u<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 n=Object.keys(t);if(n.length!==0)return n.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 gt.forEach(n=>{this[n]&&(t[n]=this[n])}),{...super.toJson(),...t}}_draw(t){}_initialProps(t){if(!t)return;const n=Object.keys(t);if(n.length===0)return;const s={};let i=!1;n.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 pt=["radius"];class d1 extends c2{constructor(t,n){super(t,n);h(this,"_radius",0);n!=null&&n.radius&&(this._radius=n.radius)}get radius(){return this._radius}static drawWith(t,n){let{radius:s,width:i,height:o}=n;if(s=s!=null?s:0,i=i!=null?i:30,o=o!=null?o:30,t.beginPath(),n.strokeDashArray&&t.setLineDash(n.strokeDashArray),!s)t.rect(0,0,i,o);else{let a=0,u=0,c=0,l=0;a=u=c=l=Math.min(s,i/2,o/2),t.moveTo(a,0),t.lineTo(i-u,0),t.arc(i-u,u,u,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(c,o),t.arc(c,o-c,c,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,n)}toJson(){const t={};return pt.forEach(n=>{this[n]&&(t[n]=this[n])}),{...super.toJson(),...t}}_draw(t){d1.drawWith(t,this)}}const mt=["pointsGroup"];class s6 extends c2{constructor(t,n){super(t,n);h(this,"_pointsGroup");this._pointsGroup=(n==null?void 0:n.pointsGroup)||[[]],this._setFixBoundingBox(),this.onTransformChangeObservable.add(s=>{const{type:i,value:o,preValue:a}=s;(i===s1.resize||i===s1.all)&&this.resizePolygon(a)})}get pointsGroup(){return this._pointsGroup}static drawWith(t,n){let{pointsGroup:s}=n;s=s!=null?s:[[]],n.strokeDashArray&&t.setLineDash(n.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,n)}updatePointGroup(t){this._pointsGroup=t,this._setFixBoundingBox()}resizePolygon(t){const{left:n,top:s,width:i,height:o}=this._getSelfRect(),{width:a,height:u}=t;let c,l;a?c=this.width-a:c=0,u?l=this.height-u:l=0;const D=c/i,f=l/o;this.scaleX+=D,this.scaleY+=f,this.left=this.left-n*D,this.top=this.top-s*f,this._setTransForm()}toJson(){const t={};return mt.forEach(n=>{this[n]&&(t[n]=this[n])}),{...super.toJson(),...t}}getState(){const{left:t,top:n,width:s,height:i}=this.getRect();return{left:t,top:n,width:s,height:i,scaleX:this.scaleX,scaleY:this.scaleY,angle:this.angle,skewX:this.skewX,skewY:this.skewY,flipX:this.flipX,flipY:this.flipY}}getRect(){const{left:t,top:n,width:s,height:i}=this._getSelfRect();return{left:t*this.scaleX+this.left,top:n*this.scaleY+this.top,width:s*this.scaleX,height:i*this.scaleY}}_draw(t){s6.drawWith(t,this)}_setFixBoundingBox(){const{width:t,height:n,left:s,top:i}=this._getSelfRect();this.left=this.left+s,this.top=this.top+i,this.width=t,this.height=n;const o=this.pointsGroup;for(const a of o)for(const u of a)u.x-=s,u.y-=i;this._setTransForm()}_getSelfRect(){const t=this.pointsGroup;let n=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 u of a)n=Math.min(n,u.x),s=Math.max(s,u.x),i=Math.min(i,u.y),o=Math.max(o,u.y);return{left:n,top:i,width:s-n,height:o-i}}}const G_="__TestSelectionRange__",V_="__TestSelectionAnchor__",$7=6;function Ft(r,e,t,n){const{startOffset:s,endOffset:i,style:o=T2}=e,a=t.findNodePositionByCharIndex(s),u=s!==i?t.findNodePositionByCharIndex(i):null,c=new U2(r,n,t,a,u,o);return c.refresh(),c}class U2{constructor(e,t,n,s,i,o=T2){h(this,"_current",!1);h(this,"_rangeShape");h(this,"_anchorShape");h(this,"_cursorList",[]);this._scene=e,this._document=t,this._docSkeleton=n,this.anchorNodePosition=s,this.focusNodePosition=i,this.style=o}get startOffset(){var s;const{startOffset:e}=(s=T6(this._cursorList))!=null?s:{},t=this._docSkeleton.getViewModel().getBody();if(e==null||t==null)return e;const n=t.dataStream.length-2;return Math.min(n,e)}get endOffset(){var s;const{endOffset:e}=(s=T6(this._cursorList))!=null?s:{},t=this._docSkeleton.getViewModel().getBody();if(e==null||t==null)return e;const n=t.dataStream.length-2;return Math.min(e,n)}get collapsed(){const{startOffset:e,endOffset:t}=this;return e!=null&&e===t}get startNodePosition(){if(this.anchorNodePosition==null)return null;if(this.focusNodePosition==null)return this.anchorNodePosition;const{start:e}=V2(this.anchorNodePosition,this.focusNodePosition);return e}get endNodePosition(){if(this.anchorNodePosition==null)return this.focusNodePosition;if(this.focusNodePosition==null)return null;const{end:e}=V2(this.anchorNodePosition,this.focusNodePosition);return e}get direction(){const{collapsed:e,anchorNodePosition:t,focusNodePosition:n}=this;return e||t==null||n==null?m2.NONE:e7(t,n)?m2.FORWARD:m2.BACKWARD}getAnchor(){return this._anchorShape}activeStatic(){var e,t;(t=this._anchorShape)==null||t.setProps({stroke:((e=this.style)==null?void 0:e.strokeActive)||c1(d.COLORS.black,1)})}deactivateStatic(){var e,t;(t=this._anchorShape)==null||t.setProps({stroke:((e=this.style)==null?void 0:e.stroke)||c1(d.COLORS.black,0)})}isActive(){return this._current===!0}activate(){this._current=!0}deactivate(){this._current=!1}dispose(){var e,t;(e=this._rangeShape)==null||e.dispose(),this._rangeShape=null,(t=this._anchorShape)==null||t.dispose(),this._anchorShape=null}isIntersection(e){const{startOffset:t,endOffset:n}=this,{startOffset:s,endOffset:i}=e;return t==null||n==null||s==null||i==null?!1:t<=i&&n>=s}refresh(){var D,f;const{_document:e,_docSkeleton:t}=this,n=this.anchorNodePosition,s=this.focusNodePosition;if((D=this._anchorShape)==null||D.hide(),(f=this._rangeShape)==null||f.hide(),this._isEmpty())return;const i=e.getOffsetConfig(),{docsLeft:o,docsTop:a}=i,u=new ft(i,t);if(this._isCollapsed()){const{contentBoxPointGroup:p,cursorList:F}=u.getRangePointData(n,n);this._setCursorList(F),p.length>0&&this._createOrUpdateAnchor(p,o,a);return}const{borderBoxPointGroup:c,cursorList:l}=u.getRangePointData(n,s);this._setCursorList(l),c.length>0&&this._createOrUpdateRange(c,o,a)}_isEmpty(){return this.anchorNodePosition==null&&this.focusNodePosition==null}_isCollapsed(){const e=this.anchorNodePosition,t=this.focusNodePosition;if(e!=null&&t==null)return!0;if(e==null||t==null)return!1;const n=Object.keys(X1);for(const s of n){const i=e[s],o=t[s];if(i!==o)return!1}return e.isBack===t.isBack}_createOrUpdateRange(e,t,n){var o;if(this._rangeShape){this._rangeShape.translate(t,n),this._rangeShape.updatePointGroup(e),this._rangeShape.show();return}const s=.2,i=new s6(G_+d.Tools.generateRandomId($7),{pointsGroup:e,fill:((o=this.style)==null?void 0:o.fill)||c1(d.COLORS.black,s),left:t,top:n,evented:!1,debounceParentDirty:!1});this._rangeShape=i,this._scene.addObject(i,2)}_getAnchorBounding(e){const t=e[0],n=t[0],s=t[2],{x:i,y:o}=n,{x:a,y:u}=s;return{left:i,top:o,width:a-i,height:u-o}}_createOrUpdateAnchor(e,t,n){var c,l;const s=this._getAnchorBounding(e),{left:i,top:o,height:a}=s;if(this._anchorShape){this._anchorShape.transformByState({left:i+t,top:o+n,height:a}),this._anchorShape.show();return}const u=new d1(V_+d.Tools.generateRandomId($7),{left:i+t,top:o+n,height:a,strokeWidth:((c=this.style)==null?void 0:c.strokeWidth)||1,stroke:((l=this.style)==null?void 0:l.stroke)||c1(d.COLORS.black,0),evented:!1});this._anchorShape=u,this._scene.addObject(u,2)}_setCursorList(e){e.length!==0&&(this._cursorList=e)}}var U_=Object.defineProperty,K_=Object.getOwnPropertyDescriptor,J_=(r,e,t,n)=>{for(var s=n>1?void 0:n?K_(e,t):e,i=r.length-1,o;i>=0;i--)(o=r[i])&&(s=(n?o(e,t,s):o(s))||s);return n&&s&&U_(e,t,s),s},q_=(r,e)=>(t,n)=>e(t,n,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=J_([q_(0,e2.Inject(d.LocaleService))],exports.Skeleton);const Z_={columnProperties:[],columnSeparatorType:d.ColumnSeparatorType.NONE,sectionType:d.SectionType.SECTION_TYPE_UNSPECIFIED,startIndex:0};var Ct=(r=>(r.PENDING="pending",r.CALCULATING="calculating",r.READY="ready",r.INVALID="invalid",r))(Ct||{});class i2 extends exports.Skeleton{constructor(t,n){super(n);h(this,"_skeletonData");h(this,"_renderedBlockIdMap",new Map);h(this,"_findLiquid",new O2);this._docViewModel=t}static create(t,n){return new i2(t,n)}getViewModel(){return this._docViewModel}calculate(t){this.dirty&&(this._skeletonData=this._createSkeleton(t))}getSkeletonData(){return this._skeletonData}getActualSize(){const t=this.getSkeletonData();let n=Number.NEGATIVE_INFINITY,s=0;return t==null||t.pages.forEach(i=>{const{width:o,height:a}=i;n=Math.max(n,o),s+=a}),{actualWidth:n,actualHeight:s}}_getPageActualWidth(t){let n=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 u of o.divides)for(const c of u.spanGroup)a+=c.width;n=Math.max(n,a)}return n}getPageSize(){return this.getViewModel().getDataModel().documentStyle.pageSize}findPositionBySpan(t){const n=t.parent,s=n==null?void 0:n.parent,i=s==null?void 0:s.parent,o=i==null?void 0:i.parent,a=o==null?void 0:o.parent,u=this.getSkeletonData();if(!n||!i||!o||!a||!u)return;const c=n.spanGroup.indexOf(t),l=s.divides.indexOf(n),D=i.lines.indexOf(s),f=o.columns.indexOf(i),p=a.sections.indexOf(o),F=u.pages.indexOf(a);return{span:c,divide:l,line:D,column:f,section:p,page:F}}findNodePositionByCharIndex(t,n=!0){const s=this._findNodeIterator(t);if(s==null)return;const i=this.getSkeletonData();if(!i)return;const o=i.pages,{span:a,divide:u,line:c,column:l,section:D,page:f}=s;return{span:u.spanGroup.indexOf(a),divide:c.divides.indexOf(u),line:l.lines.indexOf(c),column:D.columns.indexOf(l),section:f.sections.indexOf(D),page:o.indexOf(f),isBack:n}}findNodeByCharIndex(t){const n=this._findNodeIterator(t);return n==null?void 0:n.span}findSpanByPosition(t){if(t==null)return;const n=this.getSkeletonData();if(n==null)return;const{divide:s,line:i,column:o,section:a,page:u,isBack:c}=t;let{span:l}=t;c===!0&&(l-=1),l=l<0?0:l;const D=n.pages[u].sections[a].columns[o].lines[i].divides[s].spanGroup;return D[l].spanType===a1.LIST?D[l+1]:D[l]}findNodeByCoord(t,n,s,i){const{x:o,y:a}=t;this._findLiquid.reset();const u=this.getSkeletonData();if(u==null)return;const c=u.pages;let l=[],D=[],f=Number.POSITIVE_INFINITY;for(let p=0,F=c.length;p<F;p++){const E=c[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 L=T[w],{divides:P,type:A,lineHeight:$=0}=L;if(A!==A2.BLOCK){this._findLiquid.translateSave(),this._findLiquid.translateLine(L);const{y:Y}=this._findLiquid,x=Y,R=Y+$,k=Math.abs(a-R),X=P.length;for(let z=0;z<X;z++){const j=P[z],{spanGroup:Z,width:W}=j;this._findLiquid.translateSave(),this._findLiquid.translateDivide(j);const{x:U}=this._findLiquid;for(const Q of Z){if(!Q.content||Q.content.length===0)continue;const{width:e1,left:n1}=Q,K=U+n1,t1=U+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,n,s,i)}return this._getNearestNode(l,D)}_getNearestNode(t,n){const s=Math.min(...n),i=n.indexOf(s);return t[i]}_getPageBoundingBox(t,n){const{pageWidth:s,pageHeight:i}=t,{x:o,y:a}=this._findLiquid;let u=-1,c=-1;return n===T1.VERTICAL?(u=s,c=a+i):n===T1.HORIZONTAL&&(u=o+s,c=i),{startX:o,startY:a,endX:u,endY:c}}_translatePage(t,n,s,i){this._findLiquid.translatePage(t,n,s,i)}_createSkeleton(t){var G;const n={width:Number.POSITIVE_INFINITY,height:Number.POSITIVE_INFINITY},s=this.getViewModel(),{headerTreeMap:i,footerTreeMap:o}=s,{documentStyle:a,drawings:u,lists:c={}}=s.getDataModel(),l={...d.PRESET_LIST_TYPE,...c},{pageNumberStart:D=1,pageSize:f=n,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:L=0,marginHeader:P=0,marginFooter:A=0,charSpace:$=0,linePitch:Y=15.6,gridType:x=d.GridType.LINES,paragraphLineGapDefault:R=0,defaultTabStop:k=10.5,textStyle:X={fs:14},renderConfig:z={horizontalAlign:d.HorizontalAlign.UNSPECIFIED,verticalAlign:d.VerticalAlign.UNSPECIFIED,centerAngle:0,vertexAngle:0,wrapStrategy:d.WrapStrategy.UNSPECIFIED}}=a,j=this._getNullSke(),Z={headerTreeMap:i,footerTreeMap:o,lists:l,drawings:u,charSpace:$,linePitch:Y,gridType:x,localeService:this._localService,paragraphLineGapDefault:R,defaultTabStop:k,documentTextStyle:X},{skeHeaders:W,skeFooters:U,skeListLevel:Q,drawingAnchor:e1}=j,n1={skeHeaders:W,skeFooters:U,skeListLevel:Q,drawingAnchor:e1},K=[];j.pages=K;const t1=this.getViewModel();t1.resetCache();for(let V=0,l1=t1.children.length;V<l1;V++){const f1=t1.children[V],g1=t1.getSectionBreak(f1.endIndex)||Z_,{pageNumberStart:F1=D,pageSize:u1=f,pageOrient:L1=p,marginTop:U1=B,marginBottom:D1=O,marginRight:R1=w,marginLeft:x1=L,marginHeader:K1=P,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:kt,renderConfig:Ht=z}=g1,a6=t1.children[V+1],D7=(G=t1.getSectionBreak(a6==null?void 0:a6.endIndex))==null?void 0:G.sectionType,Xt={defaultHeaderId:J1,evenPageHeaderId:N1,firstPageHeaderId:r6},Yt={defaultFooterId:$1,evenPageFooterId:k1,firstPageFooterId:D2};u1.width===null&&(u1.width=Number.POSITIVE_INFINITY),u1.height===null&&(u1.height=Number.POSITIVE_INFINITY);const _7={pageNumberStart:F1,pageSize:u1,pageOrient:L1,marginTop:U1,marginBottom:D1,marginRight:R1,marginLeft:x1,marginHeader:K1,marginFooter:y1,headerIds:Xt,footerIds:Yt,useFirstPageHeaderFooter:_2,useEvenPageHeaderFooter:o6,columnProperties:d2,columnSeparatorType:M2,contentDirection:f2,sectionType:h7,sectionTypeNext:D7,textDirection:kt,renderConfig:Ht,...Z};let q1=V1(K),d7=!1;h7===d.SectionType.CONTINUOUS?(j2(K),this._addNewSectionByContinuous(q1,d2,M2),d7=!0):q1=s2(_7,n1,q1==null?void 0:q1.pageNumber);const zt=U6(t1,f1,q1,_7,n1,this._renderedBlockIdMap);D7===d.SectionType.CONTINUOUS&&d2.length>0;const{pages:f7}=zt;d7&&f7.splice(0,1),K.push(...f7)}return j2(K),this._setPageParent(K,j),j}_setPageParent(t,n){for(const s of t)s.parent=n}_addNewSectionByContinuous(t,n,s){const i=t.sections,o=i[i.length-1],{pageWidth:a,pageHeight:u,marginTop:c,marginBottom:l,marginLeft:D,marginRight:f}=t,p=a-D-f,F=u-c-l,E=((o==null?void 0:o.top)||0)+((o==null?void 0:o.height)||0),m=K6(n,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 n=this.getSkeletonData();if(!n)return;const s=n.pages;for(const i of s){const{sections:o,st:a,ed:u}=i;if(!(t<a||t>u))for(const c of o){const{columns:l,st:D,ed:f}=c;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:L,ed:P}=O;if(t<L||t>P)continue;let A=t-L;for(const $ of w)if(A-=$.count,A<0)return{page:i,section:c,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(e,t,n,s){}clearCache(){}_getScale(e){return $6(e)}}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 Q_="DefaultDocsBackgroundExtension",td=10;let ed=class extends i6{constructor(){super(...arguments);h(this,"uKey",Q_);h(this,"Z_INDEX",td);h(this,"_preBackgroundColor","")}draw(t,n,s){var f;const i=(f=s.parent)==null?void 0:f.parent;if(!i)return;const{contentHeight:o=0}=i,{ts:a,width:u}=s;if(!a)return;const{bg:c}=a;if(!c)return;const l=d.getColorStyle(c),{spanStartPoint:D=I.create(0,0)}=this.extensionOffset;l&&(t.fillStyle=l,t.fillRect(D.x-.5,D.y,u+1,o+1))}clearCache(){this._preBackgroundColor=""}};l2.add(new ed);const nd="DefaultDocsBorderExtension";let sd=class extends i6{constructor(){super(...arguments);h(this,"uKey",nd);h(this,"Z_INDEX",50);h(this,"_preBorderStyle");h(this,"_preBorderColor","")}draw(t,n,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:u,left:c,width:l}=s;if(!u)return;const{bd:D}=u;if(!D)return;this._getScale(n);const f=this._createBorderCache(D);t.save(),t.translateWithPrecisionRatio(o1,o1);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:n,b:s,l:i,r:o}=t,a=new Map;return n&&a.set(J.TOP,n),s&&a.set(J.BOTTOM,s),i&&a.set(J.LEFT,i),o&&a.set(J.RIGHT,o),a}};l2.add(new sd);const id="DefaultDocsFontAndBaseLineExtension",rd=20;class od extends i6{constructor(){super(...arguments);h(this,"uKey",id);h(this,"Z_INDEX",rd);h(this,"_preFontString","");h(this,"_preFontColor","")}draw(t,n,s){var F;if(!((F=s.parent)==null?void 0:F.parent))return;const{ts:o,content:a,fontStyle:u,bBox:c}=s,{spanPointWithFont:l=I.create(0,0)}=this.extensionOffset;if(a==null)return;if(!o){this._fillText(t,s,l);return}this._preFontString!==(u==null?void 0:u.fontString)&&(t.font=this._preFontString=(u==null?void 0:u.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=-c.sbo),l.y+=E}this._fillText(t,s,l)}_fillText(t,n,s){const{renderConfig:i,spanStartPoint:o,centerPoint:a}=this.extensionOffset,{content:u,width:c,bBox:l}=n,{aba:D,abd:f}=l;if(u==null||o==null||a==null)return;const{vertexAngle:p,centerAngle:F}=i!=null?i:{},E=90;p===E&&F===E&&!Q2(u)?(t.save(),t.translate(o.x+a.x,o.y+a.y),t.rotate(Math.PI/2),t.translate(-c/2,(D+f)/2-f),t.fillText(u,0,0),t.restore()):t.fillText(u,s.x,s.y)}clearCache(){this._preFontString="",this._preFontColor=""}}l2.add(new od);const ad="DefaultDocsLineExtension",ud=40;class cd extends i6{constructor(){super(...arguments);h(this,"uKey",ad);h(this,"Z_INDEX",ud);h(this,"_preBackgroundColor","")}draw(t,n,s){var b;const i=(b=s.parent)==null?void 0:b.parent;if(!i)return;const{contentHeight:o=0,asc:a}=i,{ts:u,bBox:c}=s;if(!u)return;const{sp:l,ba:D}=c,f=$6(n),p=.5,{ul:F,st:E,ol:m}=u;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,n,s,i,o){var D;const{s:a,cl:u,t:c,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}=n,{centerAngle:b=0,vertexAngle:S=0}=F,v=v1(b),y=v1(S);t.save(),t.translateWithPrecisionRatio(o1,o1),t.beginPath();const T=(l===d.BooleanNumber.TRUE?d.getColorStyle((D=n.ts)==null?void 0:D.cl):d.getColorStyle(u))||G1;t.strokeStyle=T,this._setLineType(t,c||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,n){n===d.TextDecoration.DASH_DOT_DOT_HEAVY||n===d.TextDecoration.DOT_DOT_DASH?t.setLineDash([2,2,5,2,2]):n===d.TextDecoration.DASH_DOT_HEAVY||n===d.TextDecoration.DOT_DASH?t.setLineDash([2,5,2]):n===d.TextDecoration.DOTTED||n===d.TextDecoration.DOTTED_HEAVY?t.setLineDash([2]):n===d.TextDecoration.DASH||n===d.TextDecoration.DASHED_HEAVY?t.setLineDash([3]):n===d.TextDecoration.DASH_LONG||n===d.TextDecoration.DASH_LONG_HEAVY?t.setLineDash([6]):t.setLineDash([0])}}l2.add(new cd);class ld extends W6{constructor(t,n){super(t);h(this,"pageMarginLeft",0);h(this,"pageMarginTop",0);h(this,"pageLayoutType",T1.VERTICAL);this._skeleton=n}getSkeleton(){return this._skeleton}setSkeleton(t){this._skeleton=t}render(t,n){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,n),t.restore()}getParentScale(){if(!this.parent)return{scaleX:1,scaleY:1};let{scaleX:t=1,scaleY:n=1}=this.parent;return this.parent.classType===N.SCENE&&(t=this.parent.ancestorScaleX||1,n=this.parent.ancestorScaleY||1),{scaleX:t,scaleY:n}}scrollBySelection(){}syncSelection(){}remainActiveSelection(){}findNodeByCoord(t,n){}findCoordByNode(t){}_getBounding(t){}_draw(t,n){}}class x2 extends ld{constructor(t,n,s){super(t,n);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,n,s){return new x2(t,n,s)}setConfig(t){this.pageMarginLeft=(t==null?void 0:t.pageMarginLeft)||17,this.pageMarginTop=(t==null?void 0:t.pageMarginTop)||14,this.pageLayoutType=(t==null?void 0:t.pageLayoutType)||T1.VERTICAL}getOffsetConfig(){const{transform:t,pageLayoutType:n,pageMarginLeft:s,pageMarginTop:i,left:o,top:a}=this;return{documentTransform:t,pageLayoutType:n,pageMarginLeft:s,pageMarginTop:i,docsLeft:o,docsTop:a}}getEngine(){return this.getScene().getEngine()}draw(t,n){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(),u=this.getExtensionsByOrder();for(const f of u)f.clearCache();let c=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:L=0,vertexAngle:P=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(L),k=v1(P),X=k-R;this.onPageRenderObservable.notifyObservers({page:F,pageLeft:l,pageTop:c,ctx:t}),this._startRotation(t,X);for(const Z of E){const{columns:W}=Z;this._drawLiquid.translateSection(Z);for(const U of W){const{lines:Q,width:e1}=U;this._drawLiquid.translateColumn(U);const n1=Q.length;let K=x,t1=null;if(k!==0){const{rotateTranslateXList:G,rotatedHeight:V,rotatedWidth:l1,fixOffsetX:f1,fixOffsetY:g1,rotateTranslateY:F1}=Y6(Q,e1,k);let u1=l1;V>this.height&&A!==d.WrapStrategy.WRAP&&(A===d.WrapStrategy.OVERFLOW||k>0)&&(u1=this.height/Math.tan(Math.abs(k)));const L1=this._horizontalHandler(u1,S,v,w);let D1=this._verticalHandler(V,m,b,O)-g1;V>this.height&&(k<0?D1=this.height-(V+g1):D1=-g1),K=I.create(L1+f1,D1),this._drawLiquid.translate(0,-F1),t1=G}else A===d.WrapStrategy.WRAP&&(K.x=S);for(let G=0;G<n1;G++){const V=Q[G],{divides:l1,asc:f1=0,type:g1,lineHeight:F1=0}=V,u1=f1,L1=u1*Math.sin(R),U1=u1*Math.cos(R);if(g1===A2.BLOCK)for(const D1 of u)D1.type===y6.LINE&&(D1.extensionOffset={alignOffset:K,renderConfig:B},D1.draw(t,a,V));else{this._drawLiquid.translateSave(),this._drawLiquid.translateLine(V,!0),t1&&this._drawLiquid.translate(t1[G]);const D1=l1.length;for(let R1=0;R1<D1;R1++){const x1=l1[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,U1),_2,R,k,K),M2={originTranslate:D2,spanStartPoint:o6,spanPointWithFont:d2,centerPoint:_2,alignOffset:K,renderConfig:B};for(const f2 of u)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,c+=j}}changeSkeleton(t){return this.setSkeleton(t),this}_draw(t,n){this.draw(t,n)}_horizontalHandler(t,n,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=n,o}_verticalHandler(t,n,s,i){let o=0;return i===d.VerticalAlign.MIDDLE?o=(this.height-t)/2:i===d.VerticalAlign.TOP?o=n:o=this.height-t-s,o}_startRotation(t,n){t.rotate(n||0)}_resetRotation(t,n){t.rotate(-n||0)}_initialDefaultExtension(){l2.getData().forEach(t=>{this.register(t)})}}class hd{}function Dd(r){const e=r.getBoundingClientRect(),t=document.body,n=document.documentElement,s=window.pageYOffset||n.scrollTop||t.scrollTop,i=window.pageXOffset||n.scrollLeft||t.scrollLeft,o=n.clientTop||t.clientTop,a=n.clientLeft||t.clientLeft,u=e.top+s-o,c=e.left+i-a;return{top:u,left:c}}var Et=(r=>(r[r.NONE=0]="NONE",r[r.X=1]="X",r[r.Y=2]="Y",r[r.ALL=3]="ALL",r))(Et||{});class r2{constructor(e,t=3,n,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=e,this._scrollTimerType=t,this._padding=n,this._smoothRatioX=s,this._smoothRatioY=i,this._padding||(this._padding={t:0,b:15,l:0,r:60})}static create(e,t=3,n){return new r2(e,t,n)}set scrollTimerType(e){this._scrollTimerType=e}get scrollTimerType(){return this._scrollTimerType}setActiveViewport(e){this._viewport=e}getActiveViewport(){return this._viewport}startScroll(e,t,n){this._offsetX=e,this._offsetY=t,this._moveX=e,this._moveY=t,n!=null?this._viewport=n:this._viewport=this.getViewportByCoord(this._scene),this._runRenderLoop()}_scroll(e){const t=(e==null?void 0:e.top)||0,n=t+((e==null?void 0:e.height)||0),s=(e==null?void 0:e.left)||0,i=s+((e==null?void 0:e.width)||0),{t:o=0,b:a=0,r:u=0,l:c=0}=this._padding;let l=0,D=0,f=!1;if(this._scrollTimerType&1&&(this._moveX<s+c&&(l=(this._moveX-s-c)*this._smoothRatioX,f=!0),this._moveX>i-u&&(l=(this._moveX-i+u)*this._smoothRatioX,f=!0)),this._scrollTimerType&2&&(this._moveY<t+o&&(D=(this._moveY-t-o)*this._smoothRatioY,f=!0),this._moveY>n-a&&(D=(this._moveY-n+a)*this._smoothRatioY,f=!0)),!f)return;const p=e==null?void 0:e.scrollBy({x:l,y:D}),F=e==null?void 0:e.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(e==null?void 0:e.scene),m=this.getViewportByCoord(E);m&&this._scroll(m)}}scrolling(e,t,n){this._moveX=e,this._moveY=t,this._scrollFunction=n}stopScroll(){J7(this._requestNewFrameNumber)}dispose(){this.stopScroll(),delete this._scrollFunction}getViewportByCoord(e){return e==null?void 0:e.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(e){let t=e==null?void 0:e.getParent();for(;t;){if(t.classType===N.SCENE)return t;t=(t==null?void 0:t.getParent)&&(t==null?void 0:t.getParent())}}}var _d=Object.defineProperty,dd=Object.getOwnPropertyDescriptor,fd=(r,e,t,n)=>{for(var s=n>1?void 0:n?dd(e,t):e,i=r.length-1,o;i>=0;i--)(o=r[i])&&(s=(n?o(e,t,s):o(s))||s);return n&&s&&_d(e,t,s),s},gd=(r,e)=>(t,n)=>e(t,n,r);function bt(r){const e=r==null?void 0:r.getCanvasElement();if(!e)return{left:0,top:0};const{top:t,left:n}=Dd(e);return{left:n,top:t}}function N7(r){var u;const e=(u=r.parent)==null?void 0:u.parent,t=e==null?void 0:e.parent;if(e==null||t==null)return;const{paragraphIndex:n}=e,s=t.lines.filter(c=>c.paragraphIndex===n);let i=-1,o="",a=!1;for(const c of s)for(const l of c.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:n,content:o,nodeIndex:i}}exports.TextSelectionRenderManager=class extends d.RxDisposable{constructor(t){super();h(this,"_onInputBefore$",new p1.BehaviorSubject(null));h(this,"onInputBefore$",this._onInputBefore$.asObservable());h(this,"_onKeydown$",new p1.BehaviorSubject(null));h(this,"onKeydown$",this._onKeydown$.asObservable());h(this,"_onInput$",new p1.BehaviorSubject(null));h(this,"onInput$",this._onInput$.asObservable());h(this,"_onCompositionstart$",new p1.BehaviorSubject(null));h(this,"onCompositionstart$",this._onCompositionstart$.asObservable());h(this,"_onCompositionupdate$",new p1.BehaviorSubject(null));h(this,"onCompositionupdate$",this._onCompositionupdate$.asObservable());h(this,"_onCompositionend$",new p1.BehaviorSubject(null));h(this,"onCompositionend$",this._onCompositionend$.asObservable());h(this,"_onSelectionStart$",new p1.BehaviorSubject(null));h(this,"onSelectionStart$",this._onSelectionStart$.asObservable());h(this,"_onPaste$",new p1.Subject);h(this,"onPaste$",this._onPaste$.asObservable());h(this,"_textSelectionInner$",new p1.BehaviorSubject(null));h(this,"textSelectionInner$",this._textSelectionInner$.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){const{_scene:n,_docSkeleton:s}=this;for(const i of t){const o=Ft(n,i,s,this._document);this._add(o)}this._textSelectionInner$.next({textRanges:this._getAllTextRanges(),segmentId:this._currentSegmentId,style:this._selectionStyle}),this._updateDomCursorPositionAndSize(),this._scrollToSelection()}sync(){this._updateDomCursorPositionAndSize()}activate(t,n){this._container.style.left=`${t}px`,this._container.style.top=`${n}px`,this._container.style.zIndex="1000",this._cursor.style.animation="univer_cursor_blinkStyle 1s steps(1) infinite",this._cursor.style.display="revert",this.focus()}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,n,s){t!==this._docSkeleton&&this.removeAllTextRanges(),this._docSkeleton=t,this._scene=n,this._activeViewport=n.getViewports()[0],this._document=s,this._attachScrollEvent(this._activeViewport)}handleDblClick(t){if(!this._scene||!this._isSelectionEnabled)return;const{offsetX:n,offsetY:s}=t,i=this._findNodeByCoord(n,s);if(i==null||i.node==null)return;const o=N7(i.node);if(o==null)return;const{content:a,st:u,nodeIndex:c}=o;if(c===-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<=c&&c<E+F.length&&m){f=E+u,p=E+u+F.length;break}if(Number.isFinite(f)&&Number.isFinite(p)){this.removeAllTextRanges();const F=[{startOffset:f,endOffset:p}];this.addTextRanges(F)}}handleTripleClick(t){if(!this._scene||!this._isSelectionEnabled)return;const{offsetX:n,offsetY:s}=t,i=this._findNodeByCoord(n,s);if(i==null||i.node==null)return;const o=N7(i.node);if(o==null)return;this.removeAllTextRanges();const{st:a,ed:u}=o,c=[{startOffset:a,endOffset:u,collapsed:a===u}];this.addTextRanges(c)}eventTrigger(t){var p;if(!this._scene||!this._isSelectionEnabled)return;const n=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 U2(n,this._document,this._docSkeleton,a);this._addTextRange(F)}else this._updateTextRangeAnchorPosition(a);this._activeSelectionRefresh(),n.disableEvent();const u=r2.create(n);u.startScroll(s,i);const{scrollX:c,scrollY:l}=t2(u);this._viewportScrollX=c,this._viewportScrollY=l,this._onSelectionStart$.next((p=this._getActiveRangeInstance())==null?void 0:p.startNodePosition);let D=s,f=i;this._moveObserver=n.onPointerMoveObserver.add(F=>{const{offsetX:E,offsetY:m}=F;n.setCursor(i1.TEXT),!(Math.sqrt((E-D)**2+(m-f)**2)<3)&&(this._moving(E,m,u),u.scrolling(E,m,()=>{this._moving(E,m,u)}),D=E,f=m)}),this._upObserver=n.onPointerUpObserver.add(()=>{n.onPointerMoveObserver.remove(this._moveObserver),n.onPointerUpObserver.remove(this._upObserver),n.enableEvent(),this._textSelectionInner$.next({textRanges:this._getAllTextRanges(),segmentId:this._currentSegmentId,style:this._selectionStyle}),u.dispose(),this._updateDomCursorPositionAndSize()})}removeAllTextRanges(){this._removeAllTextRanges(),this.deactivate()}_getAllTextRanges(){return this._rangeList}_getActiveRange(){const t=this._rangeList.find(c=>c.isActive());if(t==null)return null;const{startOffset:n,endOffset:s,collapsed:i,startNodePosition:o,endNodePosition:a,direction:u}=t;return n==null||s==null?null:{startOffset:n,endOffset:s,collapsed:i,startNodePosition:o,endNodePosition:a,direction:u,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 n=document.createElement("div"),s=document.createElement("div"),i=document.createElement("div");n.appendChild(s),t.appendChild(n),t.appendChild(i),this._container=t,this._inputParent=n,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
|
-
`,o4("keyframes univer_cursor_blinkStyle")||r4([`
|
|
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 u;if(t==null)return;const{node:n,ratioX:s}=t,i=(u=this._docSkeleton)==null?void 0:u.findPositionBySpan(n);if(i==null)return;const a=s<.5;return{...i,isBack:a}}_interactTextRange(t){const n=[];let s=!1;this._rangeList.forEach(i=>{if(i===t)return!0;t.isIntersection(i)?(s=!0,i.dispose()):n.push(i)}),s&&(n.push(t),this._rangeList=n)}_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 n=this._rangeList.pop();n||(n=new U2(this._scene,this._document,this._docSkeleton,t)),this._removeAllTextRanges(),n.activate(),n.anchorNodePosition=t,n.focusNodePosition=null,this._rangeList=[n]}_updateActiveRangeFocusPosition(t){if(!this._scene){this._logService.error("[TextSelectionRenderManager] _updateActiveRangeFocusPosition: scene is null");return}const n=this._getActiveRangeInstance();if(n==null||n.anchorNodePosition==null){this._logService.error("[TextSelectionRenderManager] _updateActiveRangeFocusPosition: active range has no anchor");return}this._removeAllTextRanges(),n.activate(),n.focusNodePosition=t,this.deactivate(),this._rangeList=[n]}_isEmpty(){return this._rangeList.length===0}_getCanvasOffset(){var n;const t=(n=this._scene)==null?void 0:n.getEngine();return bt(t)}_scrollToSelection(){const t=this._getActiveRangeInstance(),n=t==null?void 0:t.getAnchor();if(!n||n&&!n.visible||this._activeViewport==null)return;const{left:s,top:i,height:o,width:a}=n,{left:u,top:c,right:l,bottom:D}=this._activeViewport.getBounding().viewBound,f=a,p=o;let F=0,E=0;i<c?F=i-c:i>D-p&&(F=i-D+p),s<u?E=s-u: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(),n=t==null?void 0:t.getAnchor();if(!n||n&&!n.visible||this._activeViewport==null){this.focus();return}const{height:s,left:i,top:o}=n,a=this._activeViewport.getAbsoluteVector(I.FromArray([i,o])),{scaleY:u}=((p=this._scene)==null?void 0:p.getAncestorScale())||{scaleX:1,scaleY:1},{x:c,y:l}=a;this._cursor.style.height=`${s*u}px`;let{left:D,top:f}=this._getCanvasOffset();D+=c,f+=l,this.activate(D,f)}_moving(t,n,s){if(this._docSkeleton==null)return;const i=this._findNodeByCoord(t,n),o=this._getNodePosition(i);if(!o)return;const a=this._getActiveRangeInstance();a&&(a.focusNodePosition=o,a.refresh(),this.deactivate(),this._interactTextRange(a))}_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 c=this._getActiveRangeInstance();c==null||c.activeStatic(),this._cursor.style.display="none"}),o=t.onScrollStopObserver.add(a=>{const u=a.viewport;if(!u)return;const c=u.getBounding(),l=this._getActiveRangeInstance(),D=l==null?void 0:l.getAnchor();if(!(!D||D&&!D.visible)){if(c){const{left:f,top:p,right:F,bottom:E}=c.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._input.addEventListener("keydown",t=>{this._isIMEInputApply||this._eventHandle(t,n=>{this._onKeydown$.next(n)})}),this._input.addEventListener("input",t=>{this._isIMEInputApply||this._eventHandle(t,n=>{this._onInputBefore$.next(n),this._onInput$.next(n)})}),this._input.addEventListener("compositionstart",t=>{this._isIMEInputApply=!0,this._eventHandle(t,n=>{this._onCompositionstart$.next(n)})}),this._input.addEventListener("compositionend",t=>{this._isIMEInputApply=!1,this._eventHandle(t,n=>{this._onCompositionend$.next(n)})}),this._input.addEventListener("compositionupdate",t=>{this._eventHandle(t,n=>{this._onInputBefore$.next(n),this._onCompositionupdate$.next(n)})}),this._input.addEventListener("paste",t=>{this._eventHandle(t,n=>{this._onPaste$.next(n)})})}_eventHandle(t,n){const s=this._input.textContent||"";this._input.innerHTML="";const i=this._getActiveRange(),o=this._getAllTextRanges();n({event:t,content:s,activeRange:i,rangeList:o})}_getTransformCoordForDocumentOffset(t,n){const{documentTransform:s}=this._document.getOffsetConfig();if(this._activeViewport==null||s==null)return;const i=this._activeViewport.getRelativeVector(I.FromArray([t,n]));if(i)return s.clone().invert().applyPoint(i)}_findNodeByCoord(t,n){var u;const s=this._getTransformCoordForDocumentOffset(t,n);if(s==null)return;const{pageLayoutType:i=T1.VERTICAL,pageMarginLeft:o,pageMarginTop:a}=this._document.getOffsetConfig();return(u=this._docSkeleton)==null?void 0:u.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([gd(0,d.ILogService)],exports.TextSelectionRenderManager);const pd=e2.createIdentifier("univer.doc.text-selection-render-manager");class md{}class r7 extends W6{constructor(e,t){super(e),this._skeleton=t}getSkeleton(){return this._skeleton}updateSkeleton(e){this._skeleton=e}render(e,t){if(!this.visible)return this.makeDirty(!1),this;e.save(),this._draw(e,t),e.restore()}getParentScale(){let{scaleX:e=1,scaleY:t=1}=this.parent;return this.parent.classType===N.SCENE_VIEWER&&(e=this.parent.ancestorScaleX||1,t=this.parent.ancestorScaleY||1),{scaleX:e,scaleY:t}}getDocuments(){}getNoMergeCellPositionByIndex(e,t){}getScrollXYByRelativeCoords(e){return{x:0,y:0}}getSelectionBounding(e,t,n,s){}_draw(e,t){}}class o7 extends r7{_draw(e,t){this.draw(e,t)}}class Fd extends o7{constructor(t,n){super(t,n);h(this,"_columnHeaderLayoutExtension");this._initialDefaultExtension(),this.makeDirty(!0)}get columnHeaderLayoutExtension(){return this._columnHeaderLayoutExtension}draw(t,n){const s=this.getSkeleton();if(!s)return;const i=this.getParentScale();s.calculateSegment(n);const o=s.rowColumnSegment;if(o.startColumn===-1&&o.endColumn===-1)return;const{rowHeaderWidth:a}=s;t.translateWithPrecision(a,0);const u=this.getExtensionsByOrder();for(const c of u)c.draw(t,i,s)}isHit(t){const n=this._getInverseCoord(t),s=this.getSkeleton();if(!s)return!1;const{rowHeaderWidth:i,columnHeaderHeight:o}=s;return n.x>i&&n.y>=0&&n.y<=o}_initialDefaultExtension(){i7.getData().forEach(t=>{this.register(t)}),this._columnHeaderLayoutExtension=this.getExtensionByKey("DefaultColumnHeaderLayoutExtension")}}var St=(r=>(r[r.GRID=0]="GRID",r))(St||{});class h2 extends n7{constructor(){super(...arguments);h(this,"type",0)}getCellIndex(t,n,s,i,o){return Q1(t,n,s,i,o)}isRenderDiffRangesByCell(t,n){if(n==null||n.length===0)return!0;for(const s of n){const{startRow:i,startColumn:o,endRow:a,endColumn:u}=s;if(d.Rectangle.intersects(s,{startRow:i,endRow:a,startColumn:o,endColumn:u}))return!0}return!1}isRenderDiffRangesByColumn(t,n,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:n},{startRow:0,endRow:0,startColumn:o,endColumn:a}))return!0}return!1}isRenderDiffRangesByRow(t,n,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:n,startColumn:0,endColumn:0},{startRow:o,endRow:a,startColumn:0,endColumn:0}))return!0}return!1}}const Cd="DefaultBackgroundExtension",Ed=40,bd=20;class vt extends h2{constructor(){super(...arguments);h(this,"uKey",Cd);h(this,"Z_INDEX",Ed);h(this,"PRINTING_Z_INDEX",bd)}get zIndex(){var t;return(t=this.parent)!=null&&t.isPrinting?this.PRINTING_Z_INDEX:this.Z_INDEX}draw(t,n,s,i){const{stylesCache:o}=s,{background:a,backgroundPositions:u}=o;if(!s)return;const{rowHeightAccumulation:c,columnTotalWidth:l,columnWidthAccumulation:D,rowTotalHeight:f}=s;!c||!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||c1([255,255,255]),t.beginPath(),F.forValue((E,m)=>{const b=u==null?void 0:u.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(vt);const Sd="DefaultBorderExtension",vd=50;class Tt extends h2{constructor(){super(...arguments);h(this,"uKey",Sd);h(this,"Z_INDEX",vd)}draw(t,n,s,i){const{dataMergeCache:o,stylesCache:a,overflowCache:u}=s,{border:c}=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(o1,o1),c==null||c.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:L,mergeInfo:P}=v;if(w||(L&&(y=P.startY,T=P.endY,B=P.startX,O=P.endX),!this.isRenderDiffRangesByRow(P.startRow,P.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),l4(t,$,{startX:B,startY:y,endX:O,endY:T}),!this._getOverflowExclusion(u,$,m,b)&&k6(t,$,{startX:B,startY:y,endX:O,endY:T})}}),t.closePath(),t.restore()}_getOverflowExclusion(t,n,s,i){let o=!1;return n===J.TOP||n===J.BOTTOM||t==null||t.forRow((a,u)=>{if(a!==s)return!0;u.forEach(c=>{const l=t.getValue(a,c),{startColumn:D,endColumn:f}=l;if(n===J.LEFT&&i>D&&i<=f||n===J.RIGHT&&i>=D&&i<f)return o=!0,!1})}),o}}R2.add(Tt);const Td="DefaultColumnHeaderLayoutExtension";class yt extends h2{constructor(){super(...arguments);h(this,"uKey",Td);h(this,"Z_INDEX",10)}draw(t,n,s){const{rowColumnSegment:i,columnHeaderHeight:o=0}=s,{startColumn:a,endColumn:u}=i;if(!s)return;const{rowHeightAccumulation:c,columnTotalWidth:l,columnWidthAccumulation:D,rowTotalHeight:f}=s;if(!c||!D||l===void 0||f===void 0)return;const p=this._getScale(n);t.fillStyle=c1([248,249,250]),t.fillRect(0,0,l,o),t.textAlign="center",t.textBaseline="middle",t.fillStyle=c1([0,0,0]),t.beginPath(),t.lineWidth=1,t.translateWithPrecisionRatio(o1,o1),t.strokeStyle=c1([217,217,217]),t.font=`13px ${q2}`;let F=0;const E=D.length;for(let b=a-1;b<=u;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 yt);class B1{constructor(e,t){h(this,"children",[]);h(this,"parent");h(this,"startIndex",-1);h(this,"endIndex",-1);h(this,"blocks",[]);this.nodeType=e,this.content=t}static create(e,t){return new B1(e,t)}dispose(){this.children.forEach(e=>{e.dispose()}),this.parent=null,this.blocks=[]}getProps(){const{children:e,parent:t,startIndex:n,endIndex:s,nodeType:i,content:o}=this;return{children:e,parent:t,startIndex:n,endIndex:s,nodeType:i,content:o}}addBlocks(e){this.blocks=this.blocks.concat(e)}setIndexRange(e,t){this.startIndex=e,this.endIndex=t}insertText(e,t){this.content=d.insertTextToContent(this.content||"",t-this.startIndex,e)}exclude(e){const{startIndex:t,endIndex:n}=this;return e<t||e>n}plus(e){this.startIndex+=e,this.endIndex+=e,this._addIndexForBlock(e)}selfPlus(e,t){this.endIndex+=e,t==null&&(t=this.startIndex),this._addIndexForBlock(e,t)}split(e){const{children:t,parent:n,startIndex:s,nodeType:i,content:o=""}=this.getProps();if(this.exclude(e))return;const a=0,u=e-s,c=u,l=o.slice(a,u),D=B1.create(i,l);D.parent=n,D.setIndexRange(a,u-1);const f=o.slice(c),p=B1.create(i,f);p.parent=n,p.setIndexRange(c,c+f.length-1);const F=[],E=[];for(const m of t){const{startIndex:b}=m;if(m.exclude(e))e<b?F.push(m):E.push(m);else{const S=m.split(e);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 e=(t=this.parent)==null?void 0:t.children.indexOf(this);return e==null?-1:e}remove(){this.children=[],this.parent!=null&&(this.parent.children.splice(this.getPositionInParent(),1),this.parent=null)}minus(e,t){const n=d.horizontalLineSegmentsSubtraction(this.startIndex,this.endIndex,e,t);if(n.length===0)return;const s=this.startIndex;this.startIndex=n[0],this.endIndex=n[1],this.content!=null&&(this.content=d.deleteContent(this.content||"",e-s,t-s+1))}merge(e){const{startIndex:t,endIndex:n,children:s}=e;this.endIndex+=n-t+1,this.children.push(...s),this.content+=e.content||"",e.remove()}_addIndexForBlock(e,t=Number.NEGATIVE_INFINITY){for(let n=0,s=this.blocks.length;n<s;n++){const i=this.blocks[n];i>=t&&(this.blocks[n]=i+e)}}_resetBlocks(){if(this.nodeType===d.DataStreamTreeNodeType.PARAGRAPH&&this.content!=null&&this.content.length!==0){this.blocks=[];for(let e=0,t=this.content.length;e<t;e++)this.content[e]===d.DataStreamTreeTokenType.CUSTOM_BLOCK&&this.blocks.push(this.startIndex+e)}}}class M1{constructor(e){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=e,e.getBody()!=null&&(this.children=this._transformToTree(e.getBody().dataStream),this._buildHeaderFooterViewModel())}dispose(){this.children.forEach(e=>{e.dispose()})}selfPlus(e,t){}getPositionInParent(){return 0}getLastIndex(){return this.children[this.children.length-1].endIndex}getBody(){return this._documentDataModel.getBody()}getDataModel(){return this._documentDataModel}getSelfOrHeaderFooterViewModel(e){return e==null?this:this.headerTreeMap.has(e)?this.headerTreeMap.get(e):this.footerTreeMap.has(e)?this.footerTreeMap.get(e):this}reset(e){this._documentDataModel=e,this.children=this._transformToTree(e.getBody().dataStream),this._buildHeaderFooterViewModel()}insert(e,t=0){var o;const n=e.dataStream;let s=n.length;const i=this._getParagraphByIndex(this.children,t);if(i!=null)if(n[s-1]===d.DataStreamTreeTokenType.SECTION_BREAK){const a=new d.DocumentDataModel({body:e}),u=new M1(a);s-=1;const c=u.children;for(const p of c)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,...c,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&&n[s-1]===d.DataStreamTreeTokenType.PARAGRAPH?this._insertParagraph(i,t):(i.insertText(n,t),i.selfPlus(s,t),this._forEachTop(i.parent,a=>{a.selfPlus(s,a.getPositionInParent());const u=a.children;let c=!1;for(const l of u)l.startIndex>t&&(c=!0),c&&this._forEachDown(l,D=>{D.plus(s)})}))}delete(e,t){const n=this.children;this._deleteTree(n,e,t)}getText(){const e=[];function t(n){n.content&&e.push(n.content),n.children.forEach(t)}return this.children.forEach(n=>t(n)),e.join("")}resetCache(){this._sectionBreakCurrentIndex=0,this._paragraphCurrentIndex=0,this._textRunCurrentIndex=0,this._customBlockCurrentIndex=0,this._tableBlockCurrentIndex=0,this._customRangeCurrentIndex=0}getSectionBreak(e){if(e==null)return;const t=this.getBody().sectionBreaks;if(t!=null)for(let n=this._sectionBreakCurrentIndex;n<t.length;n++){const s=t[n];if(s.startIndex===e)return this._sectionBreakCurrentIndex=n,s}}getParagraph(e){const t=this.getBody().paragraphs;if(t!=null)for(let n=this._paragraphCurrentIndex;n<t.length;n++){const s=t[n];if(s.startIndex===e)return this._paragraphCurrentIndex=n,s}}getTextRunRange(e=0,t){const n=this.getBody().textRuns;if(n==null)return[{st:e,ed:t}];const s=[];for(let a=this._textRunCurrentIndex,u=n.length;a<u;a++){const c=n[a];if(c.st>t){this._textRunCurrentIndex=a;break}else if(c.ed<e){this._textRunCurrentIndex=a;continue}else s.push({st:c.st<e?e:c.st,ed:c.ed>t?t:c.ed,sId:c.sId,ts:c.ts}),this._textRunCurrentIndex=a}const i=s[0]||{st:t+1};i.st>e&&s.push({st:e,ed:i.st-1});const o=s[s.length-1]||{ed:e-1};return o.ed<t&&s.push({st:o.ed+1,ed:t}),s}getTextRun(e){const t=this.getBody().textRuns;if(t==null)return;const n=t[this._textRunCurrentIndex];if(n!=null){if(e>=n.st&&e<n.ed)return n;if(e<n.st)return}for(let s=this._textRunCurrentIndex,i=t.length;s<i;s++){const o=t[s];if(e>=o.st&&e<o.ed)return this._textRunCurrentIndex=s,o}}getCustomBlock(e){const t=this.getBody().customBlocks;if(t!=null)for(let n=this._customBlockCurrentIndex;n<t.length;n++){const s=t[n];if(s.startIndex===e)return this._customBlockCurrentIndex=n,s}}getTable(e){const t=this.getBody().tables;if(t!=null)for(let n=this._tableBlockCurrentIndex;n<t.length;n++){const s=t[n];if(s.startIndex===e)return this._tableBlockCurrentIndex=n,s}}getCustomRange(e){const t=this.getBody().customRanges;if(t!=null)for(let n=0,s=t.length;n<s;n++){const i=t[n];if(e>=i.startIndex&&e<=i.endIndex)return i}}_transformToTree(e){const t=e.length;let n="";const s=[];let i=[],o=[];for(let a=0;a<t;a++){const u=e[a];if(u===d.DataStreamTreeTokenType.PARAGRAPH){n+=d.DataStreamTreeTokenType.PARAGRAPH;const c=B1.create(d.DataStreamTreeNodeType.PARAGRAPH,n);c.setIndexRange(a-n.length+1,a),c.addBlocks(o),i.push(c),n="",o=[]}else if(u===d.DataStreamTreeTokenType.SECTION_BREAK){const c=B1.create(d.DataStreamTreeNodeType.SECTION_BREAK);this._batchParent(c,i);const l=i[i.length-1];l&&l.content&&(l.content+=d.DataStreamTreeTokenType.SECTION_BREAK),s.push(c),i=[]}else u===d.DataStreamTreeTokenType.TABLE_START?i.push(B1.create(d.DataStreamTreeNodeType.TABLE)):u===d.DataStreamTreeTokenType.TABLE_ROW_START?i.push(B1.create(d.DataStreamTreeNodeType.TABLE_ROW)):u===d.DataStreamTreeTokenType.TABLE_CELL_START?i.push(B1.create(d.DataStreamTreeNodeType.TABLE_CELL)):u===d.DataStreamTreeTokenType.TABLE_END?this._processPreviousNodesUntil(i,d.DataStreamTreeNodeType.TABLE):u===d.DataStreamTreeTokenType.TABLE_ROW_END?this._processPreviousNodesUntil(i,d.DataStreamTreeNodeType.TABLE_ROW):u===d.DataStreamTreeTokenType.TABLE_CELL_END?this._processPreviousNodesUntil(i,d.DataStreamTreeNodeType.TABLE_CELL):(u===d.DataStreamTreeTokenType.CUSTOM_BLOCK&&o.push(a),n+=u)}return s}_processPreviousNodesUntil(e,t){const n=[];let s=e.pop();for(;s&&s.nodeType!==t;)n.push(s),s=e.pop();const i=e[e.length-1];if(this._batchParent(i,n,d.DataStreamTreeNodeType.TABLE),t===d.DataStreamTreeNodeType.TABLE_CELL){const o=n[0],a=n[n.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=n[0].children[0];let a=n[n.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=n[0].children[0].children[0];let a=n[n.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(e,t,n=d.DataStreamTreeNodeType.SECTION_BREAK){for(const i of t)i.parent=e,e.children.push(i);const s=n===d.DataStreamTreeNodeType.SECTION_BREAK?0:1;e.setIndexRange(t[0].startIndex-s,t[t.length-1].endIndex+1)}_buildHeaderFooterViewModel(){const{headerModelMap:e,footerModelMap:t}=this._documentDataModel;for(const[n,s]of e)this.headerTreeMap.set(n,new M1(s));for(const[n,s]of t)this.footerTreeMap.set(n,new M1(s))}_getParagraphByIndex(e,t){for(const n of e){const{children:s}=n;if(!n.exclude(t))return n.nodeType===d.DataStreamTreeNodeType.PARAGRAPH?n:this._getParagraphByIndex(s,t)}return null}_forEachTop(e,t){let n=e;for(;n;)t(n),n=n.parent;t(this)}_forEachDown(e,t){t(e);const n=e.children;for(e of n)this._forEachDown(e,t)}_deleteTree(e,t,n){const s=t,i=t+n-1;let o=null,a=e.length,u=0;for(;u<a;){const c=e[u],{startIndex:l,endIndex:D,children:f}=c;if(this._deleteTree(f,t,n),s===i&&i===D){if(c.nodeType===d.DataStreamTreeNodeType.PARAGRAPH){const p=this._getNextNode(c);if(p==null){u++;continue}c.minus(s,i),c.merge(p),a--}}else if(s<=l&&i>=D){c.remove(),a--;continue}else if(l<=s&&D>=i)c.minus(s,i);else if(i>l&&i<D){if(c.minus(l,i),o!=null){o.merge(c),o=null,a--;continue}}else s>l&&s<D?(c.minus(s,D),o=c):l>i&&c.plus(-n);u++}}_getNextNode(e){var s;const t=e.getPositionInParent(),n=(s=e.parent)==null?void 0:s.children;return n==null?void 0:n[t+1]}_insertParagraph(e,t=0){var u;const n=e.startIndex,s=e.endIndex,i=e.split(t);if(i==null)return;const{firstNode:o,lastNode:a}=i;o.content+=d.DataStreamTreeTokenType.PARAGRAPH,o.selfPlus(1),o.plus(n),this._forEachDown(a,c=>{c.plus(n+1)}),(u=e.parent)==null||u.children.splice(e.getPositionInParent(),1,o,a),this._forEachTop(e.parent,c=>{c.selfPlus(1,c.getPositionInParent());const l=c.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,e=0){const t=r==null?void 0:r.getSkeletonData(),n=v1(e);if(!t)return;const{pages:s}=t,i=s[s.length-1],{width:o,height:a}=i;if(n===0)return{width:o,height:a};if(Math.abs(n)===Math.PI/2)return{width:a,height:o};let u=0,c=0;const l=[];P4([i],f=>{const{lines:p,width:F,spaceWidth:E}=f,{rotatedHeight:m,rotatedWidth:b}=Y6(p,F,n);c+=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&&(u+=p)}return{width:u,height:c}}const k7={t:0,b:0,l:2,r:2};class a7 extends exports.Skeleton{constructor(t,n,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=n,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,n,s,i,o){return new a7(t,n,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:n}=this._config;return this._dataMergeCache=n&&this._getMergeCells(n,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 n=[],{mergeData:s,rowData:i}=this._config,o=i;for(const u of t){const{startRow:c,endRow:l,startColumn:D,endColumn:f}=u;for(let p=c;p<=l;p++){if(n.some(({row:E})=>E===p)||((a=o[p])==null?void 0:a.ia)===d.BooleanNumber.FALSE)continue;if(s4(p,D,f,s)){const E=this._calculateRowAutoHeight(p);n.push({row:p,autoHeight:E})}}}return n}_calculateRowAutoHeight(t){var l,D;const{columnCount:n,columnData:s,mergeData:i,defaultRowHeight:o}=this._config,a=s;let u=o;const c=this._worksheet;if(!c)return u;for(let f=0;f<n;f++){const{isMerged:p,isMergedMainCell:F}=t6(t,f,i);if(p||F)continue;const E=c.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:L=0}=(D=C2(w,T))!=null?D:{};if(w){const P=w.getSkeletonData(),{marginTop:A,marginBottom:$,marginLeft:Y,marginRight:x}=P.pages[P.pages.length-1],R=Math.abs(v1(T));L+=A*Math.cos(R)+x*Math.sin(R)+$*Math.cos(R)+Y*Math.sin(R)}u=Math.max(u,L)}return Math.min(u,V7)}updateLayout(){if(!this.dirty)return;const{rowData:t,columnData:n,defaultRowHeight:s,defaultColumnWidth:i,rowCount:o,columnCount:a,rowHeader:u,columnHeader:c,showGridlines:l}=this._config,{rowTotalHeight:D,rowHeightAccumulation:f}=this._generateRowMatrixCache(o,t,s),{columnTotalWidth:p,columnWidthAccumulation:F}=this._generateColumnMatrixCache(a,n,i);return this._rowHeaderWidth=u.hidden!==d.BooleanNumber.TRUE?u.width:0,this._columnHeaderHeight=c.hidden!==d.BooleanNumber.TRUE?c.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,n,s,i){const o=this._config.mergeData;if(!o)return{startRow:t,startColumn:n,endRow:s,endColumn:i};let a=!0;const u=new d.ObjectMatrix;for(;a;){a=!1;for(let c=0;c<o.length;c++){const{startRow:l,startColumn:D,endRow:f,endColumn:p}=o[c];if(u.getValue(l,D))continue;i4({left:n,top:t,right:i,bottom:s},{left:D,top:l,right:p,bottom:f})&&(t=Math.min(t,l),n=Math.min(n,D),s=Math.max(s,f),i=Math.max(i,p),u.setValue(l,D,!0),a=!0)}}return{startRow:t,startColumn:n,endRow:s,endColumn:i}}appendToOverflowCache(t,n,s,i){this._overflowCache.setValue(t,n,{startRow:t,endRow:t,startColumn:s,endColumn:i})}getColumnCount(){return this._columnWidthAccumulation.length}getRowCount(){return this._rowHeightAccumulation.length}getOverflowPosition(t,n,s,i,o){const{width:a}=t;let u=i,c=i;return n===d.HorizontalAlign.CENTER?(u=this._getOverflowBound(s,i,0,a/2,n),c=this._getOverflowBound(s,i,o-1,a/2,n)):n===d.HorizontalAlign.RIGHT?u=this._getOverflowBound(s,i,0,a):c=this._getOverflowBound(s,i,o-1,a),{startColumn:u,endColumn:c}}getNoMergeCellPositionByIndex(t,n){const{rowHeightAccumulation:s,columnWidthAccumulation:i,rowHeaderWidthAndMarginLeft:o,columnHeaderHeightAndMarginTop:a}=this;let{startY:u,endY:c,startX:l,endX:D}=Y1(t,n,s,i);return u+=a,c+=a,l+=o,D+=o,{startY:u,endY:c,startX:l,endX:D}}getNoMergeCellPositionByIndexWithNoHeader(t,n){const{rowHeightAccumulation:s,columnWidthAccumulation:i}=this,{startY:o,endY:a,startX:u,endX:c}=Y1(t,n,s,i);return{startY:o,endY:a,startX:u,endX:c}}calculateCellIndexByPosition(t,n,s,i,o){const{row:a,column:u}=this.getCellPositionByOffset(t,n,s,i,o);return this.getCellByIndex(a,u)}getCellPositionByOffset(t,n,s,i,o){const a=this.getRowPositionByOffsetY(n,i,o),u=this.getColumnPositionByOffsetX(t,s,o);return{row:a,column:u}}getColumnPositionByOffsetX(t,n,s){t=this.getTransformOffsetX(t,n,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,n,s){const{rowHeightAccumulation:i}=this;t=this.getTransformOffsetY(t,n,s);let o=d.searchArray(i,t);return o===Number.POSITIVE_INFINITY?o=i.length-1:o===-1&&(o=0),o}getTransformOffsetX(t,n,s){const{x:i}=s;return t=t/n+i-this.rowHeaderWidthAndMarginLeft,t}getTransformOffsetY(t,n,s){const{y:i}=s;return t=t/n+i-this.columnHeaderHeightAndMarginTop,t}getOffsetByPositionX(t){const{columnWidthAccumulation:n,rowHeaderWidthAndMarginLeft:s}=this,i=n.length-1,o=n[t];return o!=null?o+s:t<0?s:n[i]+s}getOffsetByPositionY(t){const{rowHeightAccumulation:n,columnHeaderHeightAndMarginTop:s}=this,i=n.length-1,o=n[t];return o!=null?o+s:t<0?s:n[i]+s}getCellByIndex(t,n){const{rowHeightAccumulation:s,columnWidthAccumulation:i,rowHeaderWidthAndMarginLeft:o,columnHeaderHeightAndMarginTop:a}=this,u=Q1(t,n,s,i,this._config.mergeData),{isMerged:c,isMergedMainCell:l}=u;let{startY:D,endY:f,startX:p,endX:F,mergeInfo:E}=u;return D+=a,f+=a,p+=o,F+=o,E=C6(E,o,a),{actualRow:t,actualColumn:n,startY:D,endY:f,startX:p,endX:F,isMerged:c,isMergedMainCell:l,mergeInfo:E}}getCellByIndexWithNoHeader(t,n){const{rowHeightAccumulation:s,columnWidthAccumulation:i}=this,o=Q1(t,n,s,i,this._config.mergeData),{isMerged:a,isMergedMainCell:u}=o,{startY:c,endY:l,startX:D,endX:f,mergeInfo:p}=o,F=C6(p,0,0);return{actualRow:t,actualColumn:n,startY:c,endY:l,startX:D,endX:f,isMerged:a,isMergedMainCell:u,mergeInfo:F}}convertTransformToOffsetX(t,n,s){const{x:i}=s;return t=(t-i)*n,t}convertTransformToOffsetY(t,n,s){const{y:i}=s;return t=(t-i)*n,t}getSelectionBounding(t,n,s,i){return this.getMergeBounding(t,n,s,i)}getBlankCellDocumentModel(t){const n=this._getCellDocumentModel(t,void 0,void 0,!0);if(n!=null)return n.documentModel==null&&(n.documentModel=this._getDocumentDataByStyle("",{},{})),n;const s="";let i="document";const o={a:0,v:d.BooleanNumber.FALSE},a=d.HorizontalAlign.UNSPECIFIED,u=d.VerticalAlign.UNSPECIFIED,c=d.WrapStrategy.UNSPECIFIED,l=k7;return i=S2({},this._localService).fontCache,{documentModel:this._getDocumentDataByStyle(s,{},{}),fontString:i,textRotation:o,wrapStrategy:c,verticalAlign:u,horizontalAlign:a,paddingData:l}}getCellDocumentModelWithFormula(t){return this._getCellDocumentModel(t,!0,!0,!0)}_getCellDocumentModel(t,n=!1,s=!1,i=!1){var E;const o=this._styles.getStyleByCell(t);if(!t)return;let a,u="document";const c=this._getOtherStyle(o),l=i?{a:0,v:d.BooleanNumber.FALSE}:c.textRotation||{a:0,v:d.BooleanNumber.FALSE},D=c.horizontalAlign||d.HorizontalAlign.UNSPECIFIED,f=c.verticalAlign||d.VerticalAlign.UNSPECIFIED,p=c.wrapStrategy||d.WrapStrategy.UNSPECIFIED,F=c.paddingData||k7;if(t.f&&s)a=this._getDocumentDataByStyle(t.f.toString(),{},{});else if(t.p){const{centerAngle:m,vertexAngle:b}=C4(l);a=this._updateConfigAndGetDocumentModel(n?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);u=S2(m,this._localService).fontCache,a=this._getDocumentDataByStyle(t.v.toString(),m,{...c,textRotation:l})}return{documentModel:a,fontString:u,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,n){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,n),a=0;return o===-1||o===0?(o=0,a=n):a=n-this._rowHeightAccumulation[o-1],{row:o,column:s,columnOffset:i,rowOffset:a}}_calculateOverflowCell(t,n,s){const{documentSkeleton:i,angle:o=0,horizontalAlign:a,wrapStrategy:u}=s,c=this.getCellData().getValue(t,n),{t:l=d.CellValueType.STRING}=c||{};if((u===d.WrapStrategy.OVERFLOW||u===d.WrapStrategy.UNSPECIFIED)&&l!==d.CellValueType.NUMBER&&l!==d.CellValueType.BOOLEAN&&a!==d.HorizontalAlign.JUSTIFIED){if(this.intersectMergeRange(t,n))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,n,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,n,this.getColumnCount()),{startColumn:p,endColumn:F}=f;if(p===F)return!0;this.appendToOverflowCache(t,n,p,F)}else if(u===d.WrapStrategy.WRAP&&o!==0){if(this.intersectMergeRange(t,n))return!0;const{startY:D,endY:f}=Q1(t,n,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,n,this.getColumnCount());if(E===m)return!0;this.appendToOverflowCache(t,n,E,m)}}_getBounding(t,n,s){const i=t.length,o=n.length;if(!s)return{startRow:0,endRow:i-1,startColumn:0,endColumn:o-1};let a=-1,u=-1,c=-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,u=-1):(D===-1?a=0:a=D,f===Number.POSITIVE_INFINITY||f>=i?u=i-1:u=f);const p=d.searchArray(n,Math.round(s.left)-this.rowHeaderWidthAndMarginLeft),F=d.searchArray(n,Math.round(s.right)-this.rowHeaderWidthAndMarginLeft);return p===-1&&F===0?(c=-1,l=-1):(p===-1?c=0:c=p,F===Number.POSITIVE_INFINITY||F>=o?l=o-1:l=F),{startRow:a,endRow:u,startColumn:c,endColumn:l}}_generateRowMatrixCache(t,n,s){let i=0;const o=[],a=n;for(let u=0;u<t;u++){let c=s;if(a[u]!=null){const l=a[u];if(!l)continue;const{h:D=s,ah:f,ia:p}=l;(p==null||p===d.BooleanNumber.TRUE)&&typeof f=="number"?c=f:c=D,l.hd===d.BooleanNumber.TRUE&&(c=0)}i+=c,o.push(i)}return{rowTotalHeight:i,rowHeightAccumulation:o}}_generateColumnMatrixCache(t,n,s){let i=0;const o=[],a=n;for(let u=0;u<t;u++){let c=s;if(a[u]!=null){const l=a[u];if(!l)continue;l.w!=null&&(c=l.w),l.hd===d.BooleanNumber.TRUE&&(c=0)}i+=c,o.push(i)}return{columnTotalWidth:i,columnWidthAccumulation:o}}_getOverflowBound(t,n,s,i,o=d.HorizontalAlign.LEFT){var u,c;let a=0;if(n>s){const l=this._columnWidthAccumulation.length-1;for(let D=n;D>=s;D--){const f=D,p=(u=this._worksheet)==null?void 0:u.getCell(t,f);if(!d.isEmptyCell(p)&&f!==n||this.intersectMergeRange(t,f))return f===n?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===n?a+=(E-F)/2:a+=E-F,i<a)return f}return n}for(let l=n;l<=s;l++){const D=l,f=(c=this._worksheet)==null?void 0:c.getCell(t,D);if(!d.isEmptyCell(f)&&D!==n||this.intersectMergeRange(t,D))return D===n?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===n?a+=(F-p)/2:a+=F-p,i<a)return D}return s}intersectMergeRange(t,n){const s=this.dataMergeCache;for(const i of s){const{startRow:o,endRow:a,startColumn:u,endColumn:c}=i;if(t>=o&&t<=a&&n>=u&&n<=c)return!0}return!1}_calculateStylesCache(){const t=this._dataMergeCache,n=this._rowColumnSegment,s=this.columnWidthAccumulation,{startRow:i,endRow:o,startColumn:a,endColumn:u}=n;if(!(u===-1||o===-1)){for(const c of t)this._setCellCache(c.startRow,c.startColumn,!1);for(let c=i;c<=o;c++){for(let l=a;l<=u;l++)this._setCellCache(c,l,!1);for(let l=0;l<a;l++)this._setCellCache(c,l,!0);if(u!==0)for(let l=u+1;l<s.length;l++)this._setCellCache(c,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,n){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,n)){o.getValue(t,n).documentSkeleton.makeDirty(!0);return}}}_setCellCache(t,n,s){var T;const i=this._renderedCellCache.getValue(t,n);if(t===-1||n===-1)return!0;if(i===!1)return this._makeDocumentSkeletonDirty(t,n),!0;if(!this._worksheet||this._worksheet.getColVisible(n)===!1||this._worksheet.getRowVisible(t)===!1)return!0;const a=this._worksheet.getCell(t,n);if(!a)return!0;const u=this._stylesCache,c=this._styles.getStyleByCell(a);if(!s&&c&&c.bg&&c.bg.rgb){const B=c.bg.rgb;u.background[B]||(u.background[B]=new d.ObjectMatrix),u.background[B].setValue(t,n,B);const w=this.getCellByIndexWithNoHeader(t,n);(T=u.backgroundPositions)==null||T.setValue(t,n,w)}if(!s&&c&&c.bd&&(this._setBorderProps(t,n,J.TOP,c,u),this._setBorderProps(t,n,J.BOTTOM,c,u),this._setBorderProps(t,n,J.LEFT,c,u),this._setBorderProps(t,n,J.RIGHT,c,u),this._setBorderProps(t,n,J.TL_BR,c,u),this._setBorderProps(t,n,J.TL_BC,c,u),this._setBorderProps(t,n,J.TL_MR,c,u),this._setBorderProps(t,n,J.BL_TR,c,u),this._setBorderProps(t,n,J.ML_TR,c,u),this._setBorderProps(t,n,J.BC_TR,c,u)),i===!0)return this._makeDocumentSkeletonDirty(t,n),!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);u.font[f]||(u.font[f]=new d.ObjectMatrix);const S=u.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,n,O),this._calculateOverflowCell(t,n,O)}s?this._renderedCellCache.setValue(t,n,!0):this._renderedCellCache.setValue(t,n,!1)}_updateConfigAndGetDocumentModel(t,n,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=n;return new d.DocumentDataModel(t)}_getDocumentDataByStyle(t,n,s){const i=t.length,{textRotation:o={a:0,v:d.BooleanNumber.FALSE},paddingData:a={t:2,r:2,b:0,l:2},horizontalAlign:u=d.HorizontalAlign.UNSPECIFIED,verticalAlign:c=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:n,st:0,ed:i}],paragraphs:[{startIndex:i,paragraphStyle:{horizontalAlign:u}}]},documentStyle:{pageSize:{width:Number.POSITIVE_INFINITY,height:Number.POSITIVE_INFINITY},marginTop:p,marginBottom:E,marginRight:F,marginLeft:m,renderConfig:{horizontalAlign:u,verticalAlign:c,centerAngle:b,vertexAngle:S,wrapStrategy:l}}};return new d.DocumentDataModel(v)}_setBorderProps(t,n,s,i,o){var l;const a=(l=i.bd)==null?void 0:l[s];if(!a||!o.border)return!0;const u=d.getColorStyle(a.cl)||G1,c=o.border;c.getValue(t,n)||c.setValue(t,n,{[s]:{}}),c.getValue(t,n)[s]={type:s,style:a.s,color:u}}_getFontFormat(t){if(!t)return{};const{ff:n,fs:s,it:i,bl:o,ul:a,st:u,ol:c,cl:l}=t,D={};return n&&(D.ff=n),s&&(D.fs=s),i&&(D.it=i),o&&(D.bl=o),a&&(D.ul=a),u&&(D.st=u),c&&(D.ol=c),l&&(D.cl=l),D}_getOtherStyle(t){if(!t)return{};const{tr:n,td:s,ht:i,vt:o,tb:a,pd:u}=t;return{textRotation:n,textDirection:s,horizontalAlign:i,verticalAlign:o,wrapStrategy:a,paddingData:u}}_getMergeCells(t,n){const s=this.columnWidthAccumulation.length-1;n?n={startRow:n.startRow,endRow:n.endRow,endColumn:s,startColumn:0}:n={startRow:0,startColumn:0,endRow:this.rowHeightAccumulation.length-1,endColumn:s};const{startRow:i,startColumn:o,endRow:a,endColumn:u}=n,c=[];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<=u;b++)if(E>=D&&E<=f&&b>=p&&b<=F){c.push({startRow:D,endRow:f,startColumn:p,endColumn:F}),m=!0;break}if(m)break}}return c}}const yd="DefaultFontExtension",Bd=30;class Bt extends h2{constructor(){super(...arguments);h(this,"uKey",yd);h(this,"Z_INDEX",Bd);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,n,s){this.changeFontColor.setValue(t,n,s)}draw(t,n,s,i){const{stylesCache:o,dataMergeCache:a,overflowCache:u}=s,{font:c}=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(n);c&&Object.keys(c).forEach(E=>{c[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:L,isMergedMainCell:P,mergeInfo:A}=y;if(L||(P&&(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=u.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,n,s,i,o,a,u,c){const l=this.getDocuments();if(l==null)throw new Error("documents is null");const{documentSkeleton:D,angle:f,wrapStrategy:p}=n,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,n,s,i,o,a,u,c){const l=u[n-1]||0,D=u[s]||u[u.length-1],f=c[i-1]||0,p=c[o]||c[c.length-1];t.rect(f,l,p-f,D-l),t.clip(),t.clearRectForTexture(f,l,p-f,D-l)}}R2.add(Bt);const Od="DefaultRowHeaderLayoutExtension";class Ot extends h2{constructor(){super(...arguments);h(this,"uKey",Od);h(this,"Z_INDEX",10)}draw(t,n,s){const{rowColumnSegment:i,rowHeaderWidth:o=0,columnHeaderHeight:a=0}=s,{startRow:u,endRow:c,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(n);t.fillStyle=c1([248,249,250]),t.fillRect(0,0,o,E),t.textAlign="center",t.textBaseline="middle",t.fillStyle=c1([0,0,0]),t.beginPath(),t.lineWidth=1,t.translateWithPrecisionRatio(o1,o1),t.strokeStyle=c1([217,217,217]),t.font=`13px ${q2}`;let b=0;const S=f.length;for(let y=u-1;y<=c;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 Ot);var wt=(r=>(r[r.OFF=0]="OFF",r[r.ON=1]="ON",r))(wt||{});class wd extends o7{constructor(t,n){super(t,n);h(this,"_rowHeaderLayoutExtension");this._initialDefaultExtension(),this.makeDirty(!0)}get rowHeaderLayoutExtension(){return this._rowHeaderLayoutExtension}draw(t,n){const s=this.getSkeleton();if(!s)return;const i=this.getParentScale();s.calculateSegment(n);const o=s.rowColumnSegment;if(o.startRow===-1&&o.endRow===-1)return;const{columnHeaderHeight:a}=s;t.translateWithPrecision(0,a);const u=this.getExtensionsByOrder();for(const c of u)c.draw(t,i,s)}isHit(t){const n=this._getInverseCoord(t),s=this.getSkeleton();if(!s)return!1;const{rowHeaderWidth:i,columnHeaderHeight:o}=s;return n.x>=0&&n.x<=i&&n.y>o}_initialDefaultExtension(){s7.getData().forEach(t=>{this.register(t)}),this._rowHeaderLayoutExtension=this.getExtensionByKey("DefaultRowHeaderLayoutExtension")}}const Ad="__SHEET_EXTENSION_FONT_DOCUMENT_INSTANCE__";class Id extends r7{constructor(t,n,s=!0){super(t,n);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(Ad,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,n){const s=this.getSkeleton();if(!s)return;const i=this.getParentScale(),o=this._refreshIncrementalState?n==null?void 0:n.diffBounds.map(u=>s.getRowColumnSegmentByViewBound(u)):void 0,a=this.getExtensionsByOrder();for(const u of a)u.draw(t,i,s,o)}isHit(t){const n=this._getInverseCoord(t),s=this.getSkeleton();if(!s)return!1;const{rowHeaderWidth:i,columnHeaderHeight:o}=s;return n.x>i&&n.y>o}getNoMergeCellPositionByIndex(t,n){const s=this.getSkeleton();if(!s)return;const{rowHeightAccumulation:i,columnWidthAccumulation:o,rowHeaderWidth:a,columnHeaderHeight:u}=s;let{startY:c,endY:l,startX:D,endX:f}=Y1(t,n,i,o);return c+=u,l+=u,D+=a,f+=a,{startY:c,endY:l,startX:D,endX:f}}getScrollXYByRelativeCoords(t){const n=this.getParent();let s=0,i=0;const o=n.getActiveViewportByRelativeCoord(t);if(o){const a=o.actualScrollX||0,u=o.actualScrollY||0;s+=a,i+=u}return{x:s,y:i}}makeForceDirty(t=!0){this.makeDirty(t),this._forceDirty=t}setForceDisableGridlines(t){this._forceDisableGridlines=t}getSelectionBounding(t,n,s,i){var o;return(o=this.getSkeleton())==null?void 0:o.getMergeBounding(t,n,s,i)}render(t,n){if(!this.visible)return this.makeDirty(!1),this;const s=this.getSkeleton();if(!s)return;s.calculateWithoutClearingCache(n);const i=s.rowColumnSegment;if(i.startRow===-1&&i.endRow===-1||i.startColumn===-1&&i.endColumn===-1)return;t.save();const{a:o=1,d:a=1}=t.getTransform(),{rowHeaderWidth:u,columnHeaderHeight:c}=s;if(t.translateWithPrecision(u,c),this._drawAuxiliary(t,n),n&&this._allowCache===!0){const{viewBound:l,diffBounds:D,diffX:f,diffY:p,viewPortPosition:F,viewPortKey:E}=n;if(E==="viewMain"){const m=this._cacheCanvas.getContext();m.save();const{left:b,top:S,right:v,bottom:y}=F,T=v-b+u,B=y-S+c;if(D.length===0||f===0&&p===0||this._forceDirty)(this.isDirty()||this._forceDirty)&&(this._cacheCanvas.clear(),m.setTransform(t.getTransform()),this._draw(m,n),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:L,bottom:P,top:A}=O;m.save(),m.beginPath(),m.rect(w-u-o1,A-c-o1,L-w+u+o1*2,P-A+c+o1*2),m.clip(),this._draw(m,{viewBound:n.viewBound,diffBounds:[O],diffX:n.diffX,diffY:n.diffY,viewPortPosition:n.viewPortPosition,viewPortKey:n.viewPortKey}),m.restore()}this._refreshIncrementalState=!1}this._applyCache(t,b,S,T,B,b,S,T,B)}m.restore()}else this._draw(t,n)}else this._draw(t,n);return t.restore(),this.makeDirty(!1),this}_resizeCacheCanvas(){const t=this._getAncestorSize();if(!t||this._cacheCanvas==null)return;const{width:n,height:s}=t;this._cacheCanvas.setSize(n,s),this.makeDirty(!0)}_applyCache(t,n=0,s=0,i=0,o=0,a=0,u=0,c=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(),n*D,s*D,i*D,o*D,a*D,u*D,c*D,l*D),t.restore(),f.restore()}_draw(t,n){this.draw(t,n)}_getAncestorSize(){const t=this._getAncestorParent();if(t){if(t.classType===N.ENGINE){const n=t.getCanvas();return{width:n.getWidth(),height:n.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,n){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&&n(a)}s=(s==null?void 0:s.getParent)&&(s==null?void 0:s.getParent())}}_getHasScrollViewports(t){const n=[];for(const s of t)s.getScrollBar()&&n.push(s);return n}_drawAuxiliary(t,n){const s=this.getSkeleton();if(s==null)return;const{rowColumnSegment:i,dataMergeCache:o,overflowCache:a,stylesCache:u,showGridlines:c}=s,{border:l,backgroundPositions:D}=u,{startRow:f,endRow:p,startColumn:F,endColumn:E}=i;if(!s||c===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=c1([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,L=this._allowCache?F:0,P=S[L-1]||0,A=m[B-1]||0,$=S[w],Y=m[O];t.translateWithPrecisionRatio(o1,o1),t.moveTo(P,A),t.lineTo($,A);for(let x=0;x<=O;x++){if(x<0||x>T-1)continue;const R=m[x];t.moveTo(P,R),t.lineTo($,R)}t.moveTo(P,A),t.lineTo(P,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:Z,endX:W}=X;const{isMerged:U,isMergedMainCell:Q,mergeInfo:e1}=X;if(U||(Q&&(z=e1.startY,j=e1.endY,Z=e1.startX,W=e1.endX),!(e1.startRow>=B&&e1.endRow<=O)))return!0;for(const n1 in k){const{type:K}=k[n1];h4(t,K,{startX:Z,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,n,s,i){if(i!=null)for(const o of i){const{startRow:a,endRow:u,startColumn:c,endColumn:l}=o,D=n[a-1]||0,f=n[u]||n[n.length-1],p=s[c-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,n){n==null||n.forValue((s,i,o)=>{let{startY:a,endY:u,startX:c,endX:l}=o;const{isMerged:D,isMergedMainCell:f,mergeInfo:p}=o;if(D)return!0;f&&(a=p.startY,u=p.endY,c=p.startX,l=p.endX),t.clearRectForTexture(c,a,l-c+.5,u-a+.5)})}}function H7(r,e,t){r.onPointerEnterObserver.add(n=>{e(r,n)}),r.onPointerLeaveObserver.add(n=>{t(r,n)})}class u7 extends I1{constructor(t,n){super(t);h(this,"_subScenes",new Map);h(this,"_activeSubScene");h(this,"_allowSelectedClipElement",!1);this._initialProps(n)}get classType(){return N.SCENE_VIEWER}render(t,n){var i;if(!this.visible)return this.makeDirty(!1),this;if(n){const{left:o,top:a,right:u,bottom:c}=n.viewBound;if(this.width+this.strokeWidth<o||u<0||this.height+this.strokeWidth<a||c<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[n,s]of this._subScenes)if(n===t)return s}addSubScene(t){this._activeSubScene=t,this._subScenes.set(t.sceneKey,t),this.makeDirty()}removeSubScene(t){const n=this._subScenes.get(t);this._subScenes.delete(t),this._activeSubScene===n&&(this._activeSubScene=this._subScenes.values().next().value),this.makeDirty()}activeSubScene(t){if(t==null)return;const n=this._subScenes.get(t);this._activeSubScene!==n&&(this._activeSubScene=n,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 n=Object.keys(t);if(n.length===0)return;const s={};let i=!1;n.forEach(o=>{if(t[o]===void 0)return!0;s[o]=t[o],i=!0}),i&&this.transformByState(s),this.makeDirty(!0)}}const At=["dataArray"];class h1 extends c2{constructor(t,n){super(t,n);h(this,"_dataArray",[]);h(this,"_pathLength",0);h(this,"_selfRectCache",{left:0,top:0,width:0,height:0});h(this,"_reCalculateCache",!0);n!=null&&n.data?this._dataArray=h1.parsePathData(n.data):n!=null&&n.dataArray&&(this._dataArray=n.dataArray);for(let s=0;s<this.dataArray.length;++s)this._pathLength+=this.dataArray[s].pathLength;this._setFixBoundingBox(),this.onTransformChangeObservable.add(s=>{const{type:i,preValue:o}=s;if(i===s1.resize||i===s1.all){this._reCalculateCache=!0;const{left:a,top:u,width:c,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/c,m=F/l;this.scaleX+=E,this.scaleY+=m,this.left=this.left-a*E,this.top=this.top-u*m,this._setTransForm()}})}get dataArray(){return this._dataArray}static drawWith(t,n){const s=n.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 u=a[0],c=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(u,c),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(-u,-c);break}case"z":t.closePath();break}}this._renderPaintInOrder(t,n)}}static getLineLength(t,n,s,i){return Math.sqrt((s-t)*(s-t)+(i-n)*(i-n))}static getPointOnLine(t,n,s,i,o,a,u){a===void 0&&(a=n),u===void 0&&(u=s);const c=(o-s)/(i-n+1e-8);let l=Math.sqrt(t*t/(1+c*c));i<n&&(l*=-1);let D=c*l,f;if(i===n)f={x:a,y:u+D};else if((u-s)/(a-n+1e-8)===c)f={x:a+l,y:u+D};else{const p=this.getLineLength(n,s,i,o);let F=(a-n)*(i-n)+(u-s)*(o-s);F/=p*p;const E=n+F*(i-n),m=s+F*(o-s),b=this.getLineLength(a,u,E,m),S=Math.sqrt(t*t-b*b);l=Math.sqrt(S*S/(1+c*c)),i<n&&(l*=-1),D=c*l,f={x:E+l,y:m+D}}return f}static getPointOnCubicBezier(t,n,s,i,o,a,u,c,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=c*D(t)+a*f(t)+i*p(t)+n*F(t),m=l*D(t)+u*f(t)+o*p(t)+s*F(t);return{x:E,y:m}}static getPointOnQuadraticBezier(t,n,s,i,o,a,u){function c(F){return F*F}function l(F){return 2*F*(1-F)}function D(F){return(1-F)*(1-F)}const f=a*c(t)+i*l(t)+n*D(t),p=u*c(t)+o*l(t)+s*D(t);return{x:f,y:p}}static getPointOnEllipticalArc(t,n,s,i,o,a){const u=Math.cos(a),c=Math.sin(a),l={x:s*Math.cos(o),y:i*Math.sin(o)};return{x:t+(l.x*u-l.y*c),y:n+(l.x*c+l.y*u)}}static parsePathData(t){if(!t)return[];let n=t;const s=["m","M","l","L","v","V","h","H","z","Z","c","C","q","Q","t","T","s","S","a","A"];n=n.replace(new RegExp(" ","g"),",");for(let f=0,p=s.length;f<p;f++)n=n.replace(new RegExp(s[f],"g"),`|${s[f]}`);const i=n.split("|"),o=[],a=[];let u=0,c=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=u,y=c;let T,B,O,w,L,P,A,$,Y,x;switch(E){case"l":u+=m.shift()||0,c+=m.shift()||0,b="L",S.push(u,c);break;case"L":u=m.shift()||0,c=m.shift()||0,S.push(u,c);break;case"m":{const R=m.shift()||0,k=m.shift()||0;if(u+=R,c+=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"){u=o[X].points[0]+R,c=o[X].points[1]+k;break}}S.push(u,c),E="l";break}case"M":u=m.shift()||0,c=m.shift()||0,b="M",S.push(u,c),E="L";break;case"h":u+=m.shift()||0,b="L",S.push(u,c);break;case"H":u=m.shift()||0,b="L",S.push(u,c);break;case"v":c+=m.shift()||0,b="L",S.push(u,c);break;case"V":c=m.shift()||0,b="L",S.push(u,c);break;case"C":S.push(m.shift()||0,m.shift()||0,m.shift()||0,m.shift()||0),u=m.shift()||0,c=m.shift()||0,S.push(u,c);break;case"c":S.push(u+(m.shift()||0),c+(m.shift()||0),u+(m.shift()||0),c+(m.shift()||0)),u+=m.shift()||0,c+=m.shift()||0,b="C",S.push(u,c);break;case"S":B=u,O=c,T=o[o.length-1],T.command==="C"&&(B=u+(u-T.points[2]),O=c+(c-T.points[3])),S.push(B,O,m.shift()||0,m.shift()||0),u=m.shift()||0,c=m.shift()||0,b="C",S.push(u,c);break;case"s":B=u,O=c,T=o[o.length-1],T.command==="C"&&(B=u+(u-T.points[2]),O=c+(c-T.points[3])),S.push(B,O,u+(m.shift()||0),c+(m.shift()||0)),u+=m.shift()||0,c+=m.shift()||0,b="C",S.push(u,c);break;case"Q":S.push(m.shift()||0,m.shift()||0),u=m.shift()||0,c=m.shift()||0,S.push(u,c);break;case"q":S.push(u+(m.shift()||0),c+(m.shift()||0)),u+=m.shift()||0,c+=m.shift()||0,b="Q",S.push(u,c);break;case"T":B=u,O=c,T=o[o.length-1],T.command==="Q"&&(B=u+(u-T.points[0]),O=c+(c-T.points[1])),u=m.shift()||0,c=m.shift()||0,b="Q",S.push(B,O,u,c);break;case"t":B=u,O=c,T=o[o.length-1],T.command==="Q"&&(B=u+(u-T.points[0]),O=c+(c-T.points[1])),u+=m.shift()||0,c+=m.shift()||0,b="Q",S.push(B,O,u,c);break;case"A":w=m.shift()||0,L=m.shift()||0,P=m.shift()||0,A=m.shift()||0,$=m.shift()||0,Y=u,x=c,u=m.shift()||0,c=m.shift()||0,b="A",S=this.convertEndpointToCenterParameterization(Y,x,u,c,A,$,w,L,P);break;case"a":w=m.shift()||0,L=m.shift()||0,P=m.shift()||0,A=m.shift()||0,$=m.shift()||0,Y=u,x=c,u+=m.shift()||0,c+=m.shift()||0,b="A",S=this.convertEndpointToCenterParameterization(Y,x,u,c,A,$,w,L,P);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,n,s,i){let o,a,u,c;const l=h1;switch(s){case"L":return l.getLineLength(t,n,i[0],i[1]);case"C":for(o=0,a=l.getPointOnCubicBezier(0,t,n,i[0],i[1],i[2],i[3],i[4],i[5]),c=.01;c<=1;c+=.01)u=l.getPointOnCubicBezier(c,t,n,i[0],i[1],i[2],i[3],i[4],i[5]),o+=l.getLineLength(a.x,a.y,u.x,u.y),a=u;return o;case"Q":for(o=0,a=l.getPointOnQuadraticBezier(0,t,n,i[0],i[1],i[2],i[3]),c=.01;c<=1;c+=.01)u=l.getPointOnQuadraticBezier(c,t,n,i[0],i[1],i[2],i[3]),o+=l.getLineLength(a.x,a.y,u.x,u.y),a=u;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(c=D-F;c>p;c-=F)u=l.getPointOnEllipticalArc(i[0],i[1],i[2],i[3],c,0),o+=l.getLineLength(a.x,a.y,u.x,u.y),a=u;else for(c=D+F;c<p;c+=F)u=l.getPointOnEllipticalArc(i[0],i[1],i[2],i[3],c,0),o+=l.getLineLength(a.x,a.y,u.x,u.y),a=u;return u=l.getPointOnEllipticalArc(i[0],i[1],i[2],i[3],p,0),o+=l.getLineLength(a.x,a.y,u.x,u.y),o}}return 0}static convertEndpointToCenterParameterization(t,n,s,i,o,a,u,c,l){const D=l*(Math.PI/180),f=Math.cos(D)*(t-s)/2+Math.sin(D)*(n-i)/2,p=-1*Math.sin(D)*(t-s)/2+Math.cos(D)*(n-i)/2,F=f*f/(u*u)+p*p/(c*c);F>1&&(u*=Math.sqrt(F),c*=Math.sqrt(F));let E=Math.sqrt((u*u*(c*c)-u*u*(p*p)-c*c*(f*f))/(u*u*(p*p)+c*c*(f*f)));o===a&&(E*=-1),isNaN(E)&&(E=0);const m=E*u*p/c,b=E*-c*f/u,S=(t+s)/2+Math.cos(D)*m-Math.sin(D)*b,v=(n+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)/u,(p-b)/c]),w=[(f-m)/u,(p-b)/c],L=[(-1*f-m)/u,(-1*p-b)/c];let P=B(w,L);return T(w,L)<=-1&&(P=Math.PI),T(w,L)>=1&&(P=0),a===0&&P>0&&(P-=2*Math.PI),a===1&&P<0&&(P+=2*Math.PI),[S,v,u,c,O,P,D,a]}toJson(){const t={};return At.forEach(n=>{this[n]&&(t[n]=this[n])}),{...super.toJson(),...t}}getState(){const{left:t,top:n,width:s,height:i}=this.getRect();return{left:t,top:n,width:s,height:i,scaleX:this.scaleX,scaleY:this.scaleY,angle:this.angle,skewX:this.skewX,skewY:this.skewY,flipX:this.flipX,flipY:this.flipY}}getRect(){const{left:t,top:n,width:s,height:i}=this._getSelfRect();return{left:t*this.scaleX+this.left,top:n*this.scaleY+this.top,width:s*this.scaleX,height:i*this.scaleY}}getLength(){return this._pathLength}getPointAtLength(t){let n,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 n=this.dataArray[s-1].points.slice(-2),{x:n[0],y:n[1]};if(t<.01)return n=this.dataArray[s].points.slice(0,2),{x:n[0],y:n[1]};const o=this.dataArray[s],a=o.points;switch(o.command){case"L":return h1.getPointOnLine(t,o.start.x,o.start.y,a[0],a[1]);case"C":return h1.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 h1.getPointOnQuadraticBezier(t/o.pathLength,o.start.x,o.start.y,a[0],a[1],a[2],a[3]);case"A":{const u=a[0],c=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,h1.getPointOnEllipticalArc(u,c,l,D,f,F)}}return null}_draw(t){h1.drawWith(t,this)}_setFixBoundingBox(){const{left:t,top:n,width:s,height:i}=this._getSelfRect(),o=this.width/s,a=this.height/i;this.left=this.left-t*o,this.top=this.top-n*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=h1.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=h1.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=h1.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 n=t[0],s=t[0],i=t[1],o=t[1],a,u;for(let l=0;l<t.length/2;l++)a=t[l*2],u=t[l*2+1],isNaN(a)||(n=Math.min(n,a),s=Math.max(s,a)),isNaN(u)||(i=Math.min(i,u),o=Math.max(o,u));const c={left:n,top:i,width:s-n,height:o-i};return this._selfRectCache=c,c}}var It=(r=>(r.LEFT="__slideNavigationLeft__",r.RIGHT="__slideNavigationRight__",r))(It||{});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 Rd extends u7{constructor(){super(...arguments);h(this,"onSlideChangePageByNavigationObservable",new d.Observable);h(this,"_navigationEnabled",!1)}activeFirstPage(){const n=this.getSubScenes().keys().next().value;n!=null&&this.changePage(n)}addPage(t){const n=t.sceneKey;this.getSubScene(n)==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 n=new h1("__slideNavigationLeft__",{data:X7,width:60,height:60,left:90,top:(this.height-30)/2,fill:this._getArrowColor(),flipX:!0}),s=new h1("__slideNavigationRight__",{data:X7,width:60,height:60,left:this.width-90,top:(this.height-30)/2,fill:this._getArrowColor()}),i=(a,u)=>{a.setCursor(i1.POINTER),a.setProps({fill:this._getArrowColor(!0)})},o=(a,u)=>{a.setCursor(i1.DEFAULT),a.setProps({fill:this._getArrowColor()})};H7(n,i,o),H7(s,i,o),this._addNavTrigger(n,s),t.addObjects([n,s],7)}removeNavigation(){var n,s;const t=this.getActiveSubScene();t==null||this._navigationEnabled===!1||((n=t.getObject("__slideNavigationLeft__"))==null||n.dispose(),(s=t.getObject("__slideNavigationRight__"))==null||s.dispose())}enableNav(){this._navigationEnabled=!0}disableNav(){this._navigationEnabled=!1}hiddenNav(){var n,s;const t=this.getActiveSubScene();t==null||this._navigationEnabled===!1||((n=t.getObject("__slideNavigationLeft__"))==null||n.hide(),(s=t.getObject("__slideNavigationRight__"))==null||s.hide())}showNav(){var n,s;const t=this.getActiveSubScene();t==null||this._navigationEnabled===!1||((n=t.getObject("__slideNavigationLeft__"))==null||n.show(),(s=t.getObject("__slideNavigationRight__"))==null||s.show())}renderToThumb(t,n,s=1,i=1){const o=this.getSubScene(n);o!=null&&(t.save(),t.scale(s,i),o.makeDirtyNoParent(!0).render(t),t.restore())}_getSubScenesIndex(t){if(t==null)return;const n=Array.from(this.getSubScenes()),s=n.length;let i=0;for(let u=0;u<s;u++){const[c]=n[u];if(t===c){i=u;break}}let o=i+1,a=i-1;return o=o>=s?0:o,a=a<0?s-1:a,{nextScene:n[o][1],previousScene:n[a][1]}}_addNavTrigger(t,n){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)}),n.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?c1(d.COLORS.white,.8):c1(d.COLORS.white,.5)}}class xd extends I1{constructor(e,t=s=>{},n){super(e),this._render=t,this._isHitCustom=n}toJson(){return{...super.toJson()}}render(e,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 n=this.transform.getMatrix();return e.save(),e.transform(n[0],n[1],n[2],n[3],n[4],n[5]),this._render(e),e.restore(),this.makeDirty(!1),this}isHit(e){return this._isHitCustom?this._isHitCustom(e):super.isHit(e)}}class Md 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 n=t.sceneKey;return this.hasScene(n)&&console.warn("Scenes has similar key, it will be covered"),this._scenes[n]=t,t}setActiveScene(t){const n=this.getScene(t);return n&&(this._activeScene=n),n}setRemainCapture(){}hasActiveScene(){return this._activeScene!=null}dispose(){super.dispose();const t=this.getScenes();Object.keys(t).forEach(s=>{t[s].dispose()})}remainScene(t){const n=this.getScenes();if(n[t]){const s=n[t];return delete n[t],s}}}class K2 extends Md{constructor(t=1,n=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",Z7());h(this,"_fps",60);h(this,"_deltaTime",0);h(this,"_performanceMonitor",new m4);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:n,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 n=this.getCanvas().getCanvasEle();n.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,n=!0){if(this._container=t,this._container.appendChild(this._canvasEle),n){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:n}=a4(this._container);this.resizeBySize(t,n)}resizeBySize(t,n){const s=this.width,i=this.height;this._canvas.setSize(t,n),this.onTransformChangeObservable.notifyObservers({type:s1.resize,value:{width:t,height:n},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 n=this._activeRenderLoops.indexOf(t);n>=0&&(this._activeRenderLoops.splice(n,1),this._activeRenderLoops.length===0&&this._cancelFrame())}beginFrame(){this._measureFps(),this.onBeginFrameObservable.notifyObservers(this)}endFrame(){this._frameId++,this.onEndFrameObservable.notifyObservers(this)}getFps(){return this._fps}getDeltaTime(){return this._deltaTime}_renderFrame(){for(let t=0;t<this._activeRenderLoops.length;t++){const n=this._activeRenderLoops[t];n()}}_cancelFrame(){if(this._renderingQueueLaunched&&this._requestNewFrameHandler){if(this._renderingQueueLaunched=!1,typeof window>"u"){if(typeof cancelAnimationFrame=="function")return cancelAnimationFrame(this._requestNewFrameHandler)}else{const{cancelAnimationFrame:t}=this._getHostWindow()||window;if(typeof t=="function")return t(this._requestNewFrameHandler)}return clearTimeout(this._requestNewFrameHandler)}}_getHostWindow(){var t,n;return typeof window>"u"?null:(n=(t=this._canvasEle)==null?void 0:t.ownerDocument)!=null&&n.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=_1.Keyboard,i.inputIndex=s.keyCode,i.previousState=0,i.currentState=1,this.onInputChangedObservable.notifyObservers(i)},n=s=>{const i=s;i.deviceType=_1.Keyboard,i.inputIndex=s.keyCode,i.previousState=1,i.currentState=0,this.onInputChangedObservable.notifyObservers(i)};this._canvasEle.addEventListener("keydown",t),this._canvasEle.addEventListener("keyup",n)}_handlePointerAction(){const t=m6();this._pointerMoveEvent=n=>{const s=this._getPointerType(n),i=this.pointer[M.Horizontal],o=this.pointer[M.Vertical],a=this.pointer[M.DeltaHorizontal],u=this.pointer[M.DeltaVertical];this.pointer[M.Horizontal]=n.clientX,this.pointer[M.Vertical]=n.clientY,this.pointer[M.DeltaHorizontal]=n.movementX,this.pointer[M.DeltaVertical]=n.movementY;const c=n;c.deviceType=s,i!==n.clientX&&(c.inputIndex=M.Horizontal,c.previousState=i,c.currentState=this.pointer[M.Horizontal],this.onInputChangedObservable.notifyObservers(c)),o!==n.clientY&&(c.inputIndex=M.Vertical,c.previousState=o,c.currentState=this.pointer[M.Vertical],this.onInputChangedObservable.notifyObservers(c)),this.pointer[M.DeltaHorizontal]!==0&&(c.inputIndex=M.DeltaHorizontal,c.previousState=a,c.currentState=this.pointer[M.DeltaHorizontal],this.onInputChangedObservable.notifyObservers(c)),this.pointer[M.DeltaVertical]!==0&&(c.inputIndex=M.DeltaVertical,c.previousState=u,c.currentState=this.pointer[M.DeltaVertical],this.onInputChangedObservable.notifyObservers(c)),!this._usingSafari&&n.button!==-1&&(c.inputIndex=n.button+2,c.previousState=this.pointer[n.button+2],this.pointer[n.button+2]=this.pointer[n.button+2]?0:1,c.currentState=this.pointer[n.button+2],this.onInputChangedObservable.notifyObservers(c))},this._pointerDownEvent=n=>{const s=n,i=this._getPointerType(s),o=this.pointer[M.Horizontal],a=this.pointer[M.Vertical],u=this.pointer[s.button+2];i===_1.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 c=s;c.deviceType=i,o!==s.clientX&&(c.inputIndex=M.Horizontal,c.previousState=o,c.currentState=this.pointer[M.Horizontal],this.onInputChangedObservable.notifyObservers(c)),a!==s.clientY&&(c.inputIndex=M.Vertical,c.previousState=a,c.currentState=this.pointer[M.Vertical],this.onInputChangedObservable.notifyObservers(c)),c.inputIndex=s.button+2,c.previousState=u,c.currentState=this.pointer[s.button+2],this.onInputChangedObservable.notifyObservers(c)},this._pointerUpEvent=n=>{const s=n,i=this._getPointerType(s),o=this.pointer[M.Horizontal],a=this.pointer[M.Vertical],u=this.pointer[s.button+2];this.pointer[M.Horizontal]=s.clientX,this.pointer[M.Vertical]=s.clientY,this.pointer[s.button+2]=0;const c=s;c.deviceType=i,o!==s.clientX&&(c.inputIndex=M.Horizontal,c.previousState=o,c.currentState=this.pointer[M.Horizontal],this.onInputChangedObservable.notifyObservers(c)),a!==s.clientY&&(c.inputIndex=M.Vertical,c.previousState=a,c.currentState=this.pointer[M.Vertical],this.onInputChangedObservable.notifyObservers(c)),c.inputIndex=s.button+2,c.previousState=u,c.currentState=this.pointer[s.button+2],i===_1.Mouse&&this._mouseId>=0&&this._canvasEle.hasPointerCapture(this._mouseId)?(this._remainCapture=this._mouseId,this._canvasEle.releasePointerCapture(this._mouseId)):c.pointerId&&this._canvasEle.hasPointerCapture(c.pointerId)&&(this._remainCapture=c.pointerId,this._canvasEle.releasePointerCapture(c.pointerId)),this.onInputChangedObservable.notifyObservers(c),i!==_1.Mouse&&(this.pointer={})},this._pointerEnterEvent=n=>{const s=this._getPointerType(n),i=n;i.deviceType=s,i.currentState=2,this.onInputChangedObservable.notifyObservers(i)},this._pointerLeaveEvent=n=>{const s=this._getPointerType(n),i=n;i.deviceType=s,i.currentState=3,this.onInputChangedObservable.notifyObservers(i)},this._pointerBlurEvent=n=>{this._mouseId>=0&&this._canvasEle.hasPointerCapture(this._mouseId)&&(this._canvasEle.releasePointerCapture(this._mouseId),this._remainCapture=this._mouseId,this._mouseId=-1),this.pointer={}},this._pointerWheelEvent=n=>{const s=_1.Mouse,i=this.pointer[M.MouseWheelX],o=this.pointer[M.MouseWheelY],a=this.pointer[M.MouseWheelZ];this.pointer[M.MouseWheelX]=n.deltaX||0,this.pointer[M.MouseWheelY]=n.deltaY||n.wheelDelta||0,this.pointer[M.MouseWheelZ]=n.deltaZ||0;const u=n;u.deviceType=s,this.pointer[M.MouseWheelX]!==0&&(u.inputIndex=M.MouseWheelX,u.previousState=i,u.currentState=this.pointer[M.MouseWheelX],this.onInputChangedObservable.notifyObservers(u)),this.pointer[M.MouseWheelY]!==0&&(u.inputIndex=M.MouseWheelY,u.previousState=o,u.currentState=this.pointer[M.MouseWheelY],this.onInputChangedObservable.notifyObservers(u)),this.pointer[M.MouseWheelZ]!==0&&(u.inputIndex=M.MouseWheelZ,u.previousState=a,u.currentState=this.pointer[M.MouseWheelZ],this.onInputChangedObservable.notifyObservers(u))},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 n=()=>{};try{const s={passive:{get(){t=!0}}};this._canvasEle.addEventListener("test",n,s),this._canvasEle.removeEventListener("test",n,s)}catch{}return t}_getPointerType(t){let n=_1.Mouse;return(t.pointerType==="touch"||t.pointerType==="pen"||t.touches)&&(n=_1.Touch),n}}class Rt extends I1{constructor(t,...n){super(t);h(this,"_objects",[]);this.addObjects(...n)}get classType(){return N.GROUP}set cursor(t){this.setCursor(t)}addObjects(...t){for(const n of t)this.addObject(n)}addObject(t){let n=t;if(F6(t)){const s=this.getScene();if(n=s==null?void 0:s.getObject(t),!n)return;n.parent=this,n.isInGroup=!0,n.groupKey=this.oKey,this._objects.push(n)}else t.parent=this,t.isInGroup=!0,t.groupKey=this.oKey,this._objects.push(t)}removeObject(t){const n=this.getObjects(),s=n.length;if(F6(t))for(let i=0;i<s;i++){const o=n[i];if(o.oKey===t){n.splice(i,1),this.parent.removeObject(o);return}}else for(let i=0;i<s;i++){const o=n[i];if(o===t){n.splice(i,1),this.parent.removeObject(o);return}}}getObjectsByOrder(){const t=[];this._objects.sort(d.sortRules);for(const n of this._objects)!n.isInGroup&&n.visible&&t.push(n);return t}getObjects(){return this._objects}render(t,n){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(n));t.restore()}resize(t,n){return this}scale(t,n){return this}skew(t,n){return this}flip(t,n){return this}isHit(t){return!0}pick(t){}dispose(){this.getObjects().forEach(t=>{t.dispose()}),super.dispose()}_transformBounds(t){return t}}class xt{constructor(e,t=[],n=1,s=!1){h(this,"_objects",[]);h(this,"_cacheCanvas");h(this,"_dirty",!0);this._scene=e,this._zIndex=n,this._allowCache=s,this.addObjects(t),this._allowCache&&this._initialCacheCanvas()}get scene(){return this._scene}get zIndex(){return this._zIndex}enableCache(){this._allowCache=!0,this._initialCacheCanvas()}disableCache(){var e;this._allowCache=!1,(e=this._cacheCanvas)==null||e.dispose(),this._cacheCanvas=null}isAllowCache(){return this._allowCache}getObjectsByOrder(){const e=[];this._objects.sort(d.sortRules);for(const t of this._objects)!t.isInGroup&&t.visible&&e.push(t);return e}getObjectsByOrderForPick(){const e=[];this._objects.sort(d.sortRules);for(const t of this._objects)t.classType!==N.GROUP&&t.visible&&e.push(t);return e}getObjects(){return this._objects}addObject(e){if(e.classType===N.GROUP){const t=e.getObjects();for(const n of t)this.scene.getObject(n.oKey)||(this._objects.push(n),this.scene.setObjectBehavior(n),n.layer=this)}return this._objects.push(e),this.scene.setObjectBehavior(e),this.scene.applyTransformer(e),e.layer=this,this}removeObject(e){const t=this.getObjects(),n=t.length;if(e instanceof I1){for(let s=0;s<n;s++)if(t[s]===e){t.splice(s,1);return}}else for(let s=0;s<n;s++)if(t[s].oKey===e){t.splice(s,1);return}}addObjects(e){return e.forEach(t=>{this.addObject(t)}),this}removeObjects(e){const t=this.getObjects(),n=t.length;for(let s=n-1;s>=0;s--){let i=t[s];const o=e.length;if(o===0)break;for(let a=0;a<o;a++){const u=e[a];if(i=u instanceof I1?i:i.oKey,i===u){t.splice(s,1);break}}}}makeDirty(e=!0){return this._dirty=e,this}isDirty(){return this._dirty}render(e,t=!1){var s;const n=e||((s=this._scene.getEngine())==null?void 0:s.getCanvas().getContext());if(this._allowCache&&this._cacheCanvas){if(this.isDirty()){const i=this._cacheCanvas.getContext();this._cacheCanvas.clear(),i.save(),i.setTransform(n.getTransform()),this._draw(i,t),i.restore()}this._applyCache(n)}else n.save(),this._draw(n,t),n.restore();return this.makeDirty(!1),this}_initialCacheCanvas(){this._cacheCanvas=new o2,this._scene.getEngine().onTransformChangeObservable.add(()=>{this._resizeCacheCanvas()})}_draw(e,t){var n;(n=this._scene.getViewports())==null||n.forEach(s=>s.render(e,this.getObjectsByOrder(),t))}_applyCache(e){if(!e||this._cacheCanvas==null)return;const t=this._cacheCanvas.getWidth(),n=this._cacheCanvas.getHeight();e.drawImage(this._cacheCanvas.getCanvasEle(),0,0,t,n)}_resizeCacheCanvas(){var t;const e=this._scene.getEngine();(t=this._cacheCanvas)==null||t.setSize(e.width,e.height),this.makeDirty(!0)}clear(){this._objects=[]}dispose(){var e;this.getObjects().forEach(t=>{t.dispose()}),this.clear(),(e=this._cacheCanvas)==null||e.dispose()}}const Pd=["__SpreadsheetTransformerResizeLT__","__SpreadsheetTransformerResizeCT__","__SpreadsheetTransformerResizeRT__","__SpreadsheetTransformerResizeLM__","__SpreadsheetTransformerResizeRM__","__SpreadsheetTransformerResizeLB__","__SpreadsheetTransformerResizeCB__","__SpreadsheetTransformerResizeRB__"];class Ld{constructor(e,t){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=e,this._initialProps(t)}getScene(){return this._scene}hideControl(){this._hideControl()}attachTo(e){if(e.isTransformer)return this.hoverEnabled&&(this.hoverEnterFunc&&e.onPointerEnterObserver.add(this.hoverEnterFunc),this.hoverLeaveFunc&&e.onPointerLeaveObserver.add(this.hoverLeaveFunc)),e.onPointerDownObserver.add((t,n)=>{const{offsetX:s,offsetY:i}=t;this._startOffsetX=s,this._startOffsetY=i;const o=this._getTopScene();if(!o)return;this._addCancelObserver(o),o.disableEvent();const a=r2.create(o);a.startScroll(s,i);const{scrollX:u,scrollY:c}=t2(a);this._viewportScrollX=u,this._viewportScrollY=c,this._updateActiveObjectList(e,t),this._moveObserver=o.onPointerMoveObserver.add(l=>{const{offsetX:D,offsetY:f}=l;this._moving(D,f,a),this._hideControl(),a.scrolling(D,f,()=>{this._moving(D,f,a)})}),this._upObserver=o.onPointerUpObserver.add(l=>{o.onPointerMoveObserver.remove(this._moveObserver),o.onPointerUpObserver.remove(this._upObserver),o.enableEvent(),this._updateControl(),a.dispose(),this.onChangeEndObservable.notifyObservers({objects:this._selectedObjectMap,type:2})}),n.stopPropagation()}),e}dispose(){this._moveObserver=null,this._upObserver=null,this._transformerControlMap.forEach(e=>{e.dispose()}),this._selectedObjectMap.forEach(e=>{e.dispose()}),this.onChangeStartObservable.clear(),this.onChangingObservable.clear(),this.onChangeEndObservable.clear()}_initialProps(e){if(!e)return;const t=Object.keys(e);t.length!==0&&t.forEach(n=>{if(e[n]===void 0)return!0;this[n]=e[n]})}_updateControlChildren(){this._updateControlIterator((e,t)=>{const{left:n,top:s,width:i,height:o,scaleX:a,scaleY:u}=t.getState();e.getObjects().forEach(l=>{const D=l.oKey,f=this._checkTransformerType(D);if(!f)return!0;if(f==="__SpreadsheetTransformerOutline__")l.transformByState(this._getOutlinePosition(i,o,a,u));else{const{left:p,top:F}=this._getRotateAnchorPosition(f,o,i);l.transformByState({left:p,top:F})}}),e.transformByState({left:n,top:s})})}_anchorMoving(e,t,n,s){const{scrollX:i,scrollY:o}=t2(s),a=t-this._viewportScrollX+i,u=n-this._viewportScrollY+o,c=a-this._startOffsetX,l=u-this._startOffsetY;this._selectedObjectMap.forEach(D=>{const{left:f,top:p,width:F,height:E}=D,m={};switch(e){case"__SpreadsheetTransformerResizeLT__":m.left=f+c,m.top=p+l,m.width=F-c,m.height=E-l;break;case"__SpreadsheetTransformerResizeCT__":m.top=p+l,m.height=E-l;break;case"__SpreadsheetTransformerResizeRT__":m.top=p+l,m.width=F+c,m.height=E-l;break;case"__SpreadsheetTransformerResizeLM__":m.left=f+c,m.width=F-c;break;case"__SpreadsheetTransformerResizeRM__":m.width=c+F;break;case"__SpreadsheetTransformerResizeLB__":m.left=f+c,m.width=F-c,m.height=E+l;break;case"__SpreadsheetTransformerResizeCB__":m.height=l+E;break;case"__SpreadsheetTransformerResizeRB__":m.width=c+F,m.height=l+E;break}D.transformByState(m)}),this._updateControlChildren(),this.onChangingObservable.notifyObservers({objects:this._selectedObjectMap,moveX:c,moveY:l,type:1}),this._startOffsetX=a,this._startOffsetY=u}_attachEventToAnchor(e,t="__SpreadsheetTransformerResizeLT__"){e.onPointerDownObserver.add((n,s)=>{const{offsetX:i,offsetY:o}=n;this._startOffsetX=i,this._startOffsetY=o;const a=this._getTopScene();if(a==null)return;a.disableEvent();const u=r2.create(a);u.startScroll(i,o);const{scrollX:c,scrollY:l}=t2(u);this._viewportScrollX=c,this._viewportScrollY=l;const D=this._getRotateAnchorCursor(t);this._moveObserver=a.onPointerMoveObserver.add(f=>{const{offsetX:p,offsetY:F}=f;this._anchorMoving(t,p,F,u),u.scrolling(p,F,()=>{this._anchorMoving(t,p,F,u)}),a.setCursor(D)}),this._upObserver=a.onPointerUpObserver.add(f=>{a.onPointerMoveObserver.remove(this._moveObserver),a.onPointerUpObserver.remove(this._upObserver),a.enableEvent(),a.resetCursor(),u.dispose(),this.onChangeEndObservable.notifyObservers({objects:this._selectedObjectMap,type:2})}),s.stopPropagation()})}_attachEventToRotate(e){e.onPointerDownObserver.add((t,n)=>{const{offsetX:s,offsetY:i}=t;this._startOffsetX=s,this._startOffsetY=i;const o=this._getTopScene();o!=null&&(o.disableEvent(),this._viewportScrollX=scrollX,this._viewportScrollY=scrollY,this._moveObserver=o.onPointerMoveObserver.add(a=>{}),this._upObserver=o.onPointerUpObserver.add(a=>{o.onPointerMoveObserver.remove(this._moveObserver),o.onPointerUpObserver.remove(this._upObserver),o.enableEvent()}),n.stopPropagation())})}_getOutlinePosition(e,t,n,s){return{left:-this.borderSpacing-this.borderStrokeWidth,top:-this.borderSpacing-this.borderStrokeWidth,width:e+this.borderSpacing*2,height:t+this.borderSpacing*2}}_getRotateAnchorCursor(e){let t=i1.NORTH_WEST_RESIZE;switch(e){case"__SpreadsheetTransformerRotate__":t=i1.MOVE;break;case"__SpreadsheetTransformerRotateLine__":t=i1.MOVE;break;case"__SpreadsheetTransformerResizeLT__":break;case"__SpreadsheetTransformerResizeCT__":t=i1.NORTH_RESIZE;break;case"__SpreadsheetTransformerResizeRT__":t=i1.NORTH_EAST_RESIZE;break;case"__SpreadsheetTransformerResizeLM__":t=i1.WEST_RESIZE;break;case"__SpreadsheetTransformerResizeRM__":t=i1.EAST_RESIZE;break;case"__SpreadsheetTransformerResizeLB__":t=i1.SOUTH_WEST_RESIZE;break;case"__SpreadsheetTransformerResizeCB__":t=i1.SOUTH_RESIZE;break;case"__SpreadsheetTransformerResizeRB__":t=i1.SOUTH_EAST_RESIZE;break}return t}_getRotateAnchorPosition(e,t,n){let s=-this.anchorSize/2,i=-this.anchorSize/2;switch(e){case"__SpreadsheetTransformerRotate__":s=n/2-this.rotateSize/2,i=-this.rotateAnchorOffset-this.borderSpacing-this.borderStrokeWidth*2-this.rotateSize;break;case"__SpreadsheetTransformerRotateLine__":s=n/2,i=-this.rotateAnchorOffset-this.borderSpacing-this.borderStrokeWidth;break;case"__SpreadsheetTransformerResizeLT__":s+=-this.borderSpacing-this.borderStrokeWidth,i+=-this.borderSpacing-this.borderStrokeWidth;break;case"__SpreadsheetTransformerResizeCT__":s+=n/2,i+=-this.borderSpacing-this.borderStrokeWidth;break;case"__SpreadsheetTransformerResizeRT__":s+=n+this.borderSpacing-this.borderStrokeWidth,i+=-this.borderSpacing-this.borderStrokeWidth;break;case"__SpreadsheetTransformerResizeLM__":s+=-this.borderSpacing-this.borderStrokeWidth,i+=t/2;break;case"__SpreadsheetTransformerResizeRM__":s+=n+this.borderSpacing-this.borderStrokeWidth,i+=t/2;break;case"__SpreadsheetTransformerResizeLB__":s+=-this.borderSpacing-this.borderStrokeWidth,i+=t+this.borderSpacing-this.borderStrokeWidth;break;case"__SpreadsheetTransformerResizeCB__":s+=n/2,i+=t+this.borderSpacing-this.borderStrokeWidth;break;case"__SpreadsheetTransformerResizeRB__":s+=n+this.borderSpacing-this.borderStrokeWidth,i+=t+this.borderSpacing-this.borderStrokeWidth;break}return{left:s,top:i}}_createResizeAnchor(e,t,n){const{height:s,width:i,scaleX:o,scaleY:a}=t.getState(),{left:u,top:c}=this._getRotateAnchorPosition(e,s,i),l=this._getRotateAnchorCursor(e),D=new d1(`${e}_${n}`,{zIndex:n-1,fill:this.anchorFill,stroke:this.anchorStroke,strokeWidth:this.anchorStrokeWidth,width:this.anchorSize,height:this.anchorSize,radius:this.anchorCornerRadius,left:u,top:c});return this._attachHover(D,l,i1.DEFAULT),D}_checkTransformerType(e){if(e.indexOf("__SpreadsheetTransformerOutline__")>-1)return"__SpreadsheetTransformerOutline__";if(e.indexOf("__SpreadsheetTransformerRotate__")>-1)return"__SpreadsheetTransformerRotate__";if(e.indexOf("__SpreadsheetTransformerRotateLine__")>-1)return"__SpreadsheetTransformerRotateLine__";if(e.indexOf("__SpreadsheetTransformerResizeLT__")>-1)return"__SpreadsheetTransformerResizeLT__";if(e.indexOf("__SpreadsheetTransformerResizeCT__")>-1)return"__SpreadsheetTransformerResizeCT__";if(e.indexOf("__SpreadsheetTransformerResizeRT__")>-1)return"__SpreadsheetTransformerResizeRT__";if(e.indexOf("__SpreadsheetTransformerResizeLM__")>-1)return"__SpreadsheetTransformerResizeLM__";if(e.indexOf("__SpreadsheetTransformerResizeRM__")>-1)return"__SpreadsheetTransformerResizeRM__";if(e.indexOf("__SpreadsheetTransformerResizeLB__")>-1)return"__SpreadsheetTransformerResizeLB__";if(e.indexOf("__SpreadsheetTransformerResizeCB__")>-1)return"__SpreadsheetTransformerResizeCB__";if(e.indexOf("__SpreadsheetTransformerResizeRB__")>-1)return"__SpreadsheetTransformerResizeRB__"}_updateControlIterator(e){this._transformerControlMap.forEach((t,n)=>{const s=this._selectedObjectMap.get(n);if(!s)return!0;e(t,s)})}_updateControl(){this._updateControlIterator((e,t)=>{const{left:n,top:s}=t.getState();e.transformByState({left:n,top:s}),e.show(),e.makeDirty(!0)})}_hideControl(){this._transformerControlMap.forEach(e=>{e.hide(),e.makeDirty(!0)})}_attachHover(e,t,n){e.onPointerEnterObserver.add(()=>{e.cursor=t}),e.onPointerLeaveObserver.add(()=>{e.cursor=n})}_clearControl(){this._transformerControlMap.forEach(e=>{e.dispose()}),this._transformerControlMap.clear(),this.onClearControlObservable.notifyObservers(null)}_createControl(e){const{left:t,top:n,height:s,width:i,angle:o,scaleX:a,scaleY:u,skewX:c,skewY:l,flipX:D,flipY:f}=e.getState(),p=e.oKey,F=this._selectedObjectMap.size,E=[];if(this.borderEnabled){const S=new d1(`__SpreadsheetTransformerOutline___${F}`,{zIndex:F-1,evented:!1,strokeWidth:this.borderStrokeWidth,stroke:this.borderStroke,...this._getOutlinePosition(i,s,a,u)});E.push(S)}if(this.resizeEnabled){const{left:S,top:v}=this._getRotateAnchorPosition("__SpreadsheetTransformerRotateLine__",s,i),y=new d1(`__SpreadsheetTransformerRotateLine___${F}`,{zIndex:F-1,evented:!1,left:S,top:v,height:this.rotateAnchorOffset,width:1,strokeWidth:this.borderStrokeWidth,stroke:this.borderStroke}),{left:T,top:B}=this._getRotateAnchorPosition("__SpreadsheetTransformerRotate__",s,i),O=this._getRotateAnchorCursor("__SpreadsheetTransformerRotate__"),w=new d1(`__SpreadsheetTransformerRotate___${F}`,{zIndex:F-1,left:T,top:B,height:this.rotateSize,width:this.rotateSize,radius:this.rotateCornerRadius,strokeWidth:this.borderStrokeWidth*2,stroke:this.borderStroke});this._attachEventToRotate(w),this._attachHover(w,O,i1.DEFAULT),E.push(y,w)}if(this.resizeEnabled)for(let S=0,v=this.enabledAnchors.length;S<v;S++){if(this.enabledAnchors[S]!==1)continue;const T=Pd[S],B=this._createResizeAnchor(T,e,F);this._attachEventToAnchor(B,T),E.push(B)}const m=new Rt(`__SpreadsheetTransformer___${F}`,...E);return m.zIndex=F,m.evented=!1,m.transformByState({left:t,top:n}),this.getScene().addObject(m,2),this._transformerControlMap.set(p,m),this.onCreateControlObservable.notifyObservers(m),m}_getTopScene(){var t;return(t=this.getScene().getEngine())==null?void 0:t.activeScene}_moving(e,t,n){const{scrollX:s,scrollY:i}=t2(n),o=e-this._viewportScrollX+s,a=t-this._viewportScrollY+i,u=o-this._startOffsetX,c=a-this._startOffsetY;this._selectedObjectMap.forEach(l=>{l.translate(u+l.left,c+l.top)}),this.onChangingObservable.notifyObservers({objects:this._selectedObjectMap,moveX:u,moveY:c,type:1}),this._startOffsetX=o,this._startOffsetY=a}_updateActiveObjectList(e,t){this._selectedObjectMap.has(e.oKey)||(t.ctrlKey||(this._selectedObjectMap.clear(),this._clearControl()),this._selectedObjectMap.set(e.oKey,e),this._createControl(e))}_addCancelObserver(e){e.onPointerDownObserver.remove(this._cancelFocusObserver),this._cancelFocusObserver=e.onPointerDownObserver.add(t=>{this._selectedObjectMap.clear(),this._clearControl(),e.onPointerDownObserver.remove(this._cancelFocusObserver)})}}const m1=class m1{constructor(e){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=e}mouseLeaveEnterHandler(e){var n;const t=this._currentObject;if(t==null)(n=this._currentMouseEnterPicked)==null||n.triggerPointerLeave(e),this._currentMouseEnterPicked=null;else if(t!==this._currentMouseEnterPicked){const s=this._currentMouseEnterPicked;this._currentMouseEnterPicked=t,s==null||s.triggerPointerLeave(e),t==null||t.triggerPointerEnter(e)}}attachControl(e=!0,t=!0,n=!0,s=!0,i=!0,o=!0){const a=this._scene.getEngine();a&&(this._onPointerEnter=u=>{var c;u.pointerId===void 0&&(u.pointerId=0),this._currentObject=this._getCurrentObject(u.offsetX,u.offsetY),(c=this._currentObject)==null||c.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 l;u.pointerId===void 0&&(u.pointerId=0),this._currentObject=this._getCurrentObject(u.offsetX,u.offsetY);const c=(l=this._currentObject)==null?void 0:l.triggerPointerMove(u);this.mouseLeaveEnterHandler(u),this._checkDirectSceneEventTrigger(!c,this._currentObject)&&this._scene.onPointerMoveObserver.hasObservers()&&this._scene.onPointerMoveObserver.notifyObservers(u)},this._onPointerDown=u=>{u.pointerId===void 0&&(u.pointerId=0);const c=this._getCurrentObject(u.offsetX,u.offsetY),l=c==null?void 0:c.triggerPointerDown(u);this._checkDirectSceneEventTrigger(!l,c)&&this._scene.onPointerDownObserver.hasObservers()&&this._scene.onPointerDownObserver.notifyObservers(u)},this._onPointerUp=u=>{u.pointerId===void 0&&(u.pointerId=0);const c=this._getCurrentObject(u.offsetX,u.offsetY),l=c==null?void 0:c.triggerPointerUp(u);this._checkDirectSceneEventTrigger(!l,c)&&this._scene.onPointerUpObserver.hasObservers()&&this._scene.onPointerUpObserver.notifyObservers(u),this._prePointerDoubleOrTripleClick(u)},this._onMouseWheel=u=>{const c=this._getCurrentObject(u.offsetX,u.offsetY),l=c==null?void 0:c.triggerMouseWheel(u);this._scene.getViewports().forEach(D=>{D.onMouseWheelObserver.hasObservers()&&D.onMouseWheelObserver.notifyObservers(u)}),this._checkDirectSceneEventTrigger(!l,c)&&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=a.onInputChangedObservable.add(u=>{const c=u;u.deviceType===_1.Keyboard&&(u.currentState===1&&this._onKeyDown(c),u.currentState===0&&this._onKeyUp(c)),(u.deviceType===_1.Mouse||u.deviceType===_1.Touch)&&(e&&u.inputIndex>=M.LeftClick&&u.inputIndex<=M.RightClick&&u.currentState===1&&this._onPointerDown(c),t&&u.inputIndex>=M.LeftClick&&u.inputIndex<=M.RightClick&&u.currentState===0&&this._onPointerUp(c),n&&(u.inputIndex===M.Horizontal||u.inputIndex===M.Vertical||u.inputIndex===M.DeltaHorizontal||u.inputIndex===M.DeltaVertical)?this._onPointerMove(c):s&&(u.inputIndex===M.MouseWheelX||u.inputIndex===M.MouseWheelY||u.inputIndex===M.MouseWheelZ)?this._onMouseWheel(c):i&&u.currentState===2?this._onPointerEnter(c):o&&u.currentState===3&&this._onPointerLeave(c))}),this._alreadyAttached=!0)}detachControl(){if(!this._alreadyAttached)return;const e=this._scene.getEngine();e&&(e.onInputChangedObservable.remove(this._onInputObserver),this._alreadyAttached=!1)}_getCurrentObject(e,t){var n;return(n=this._scene)==null?void 0:n.pick(I.FromArray([e,t]))}_checkDirectSceneEventTrigger(e,t){let n=!1;t==null&&(n=!0);let s=!0;if(t&&t.classType===N.BASE_OBJECT){const i=t.getScene();i&&(s=i.getParent().classType!==N.SCENE_VIEWER)}return!this._scene.evented&&e&&s||n}_isPointerSwiping(e,t){return Math.abs(this._startingPosition.x-e)>m1.DragMovementThreshold||Math.abs(this._startingPosition.y-t)>m1.DragMovementThreshold}_prePointerDoubleOrTripleClick(e){var i,o,a,u;const{clientX:t,clientY:n}=e;this._isPointerSwiping(t,n)&&this._resetDoubleClickParam(),this._delayedTimeout=setTimeout(()=>{this._resetDoubleClickParam()},m1.DoubleClickDelay),this._doubleClickOccurred+=1,this._tripleClickState&&((o=(i=this._scene)==null?void 0:i.pick(I.FromArray([e.offsetX,e.offsetY])))==null||o.triggerTripleClick(e),this._scene.onTripleClickObserver.hasObservers()&&this._scene.onTripleClickObserver.notifyObservers(e)),this._doubleClickOccurred===2&&((u=(a=this._scene)==null?void 0:a.pick(I.FromArray([e.offsetX,e.offsetY])))==null||u.triggerDblclick(e),this._scene.onDblclickObserver.hasObservers()&&this._scene.onDblclickObserver.notifyObservers(e),this._resetDoubleClickParam(),this._tripleClickState=!0,clearTimeout(this._delayedTripeTimeout),this._delayedTripeTimeout=setTimeout(()=>{this._tripleClickState=!1},m1.TripleClickDelay)),this._startingPosition.x=t,this._startingPosition.y=n}_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 $d{constructor(e){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 r1);h(this,"_evented",!0);this._sceneKey=e}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(e){this._transform=e}set width(e){this._width=e}set height(e){this._height=e}set scaleX(e){this._scaleX=e}set scaleY(e){this._scaleY=e}enableEvent(){this._evented=!0}disableEvent(){this._evented=!1}on(e,t){return this[`on${e}Observer`].add(t.bind(this))}off(e,t){this[`on${e}Observer`].remove(t)}remove(e){this[`on${e}Observer`].clear()}triggerKeyDown(e){this.onKeyDownObservable.notifyObservers(e)}triggerKeyUp(e){this.onKeyUpObservable.notifyObservers(e)}triggerPointerUp(e){}triggerMouseWheel(e){}triggerPointerMove(e){}triggerDblclick(e){}triggerTripleClick(e){}triggerPointerDown(e){}triggerPointerOut(e){}triggerPointerLeave(e){}triggerPointerOver(e){}triggerPointerEnter(e){}renderObjects(e,t){}render(e){}getParent(){}dispose(){}getObject(e){}addObject(e,t=1){}addObjects(e,t=1){}getEngine(){}setObjectBehavior(e){}applyTransformer(e){}makeDirtyNoParent(e=!0){return this}makeDirty(e=!0){return this}pick(e){}getViewports(){return[]}addViewport(...e){}removeViewport(e){}getAncestorScale(){return{scaleX:1,scaleY:1}}getPrecisionScale(){return{scaleX:1,scaleY:1}}}class Mt extends $d{constructor(t,n,s){var i;super(t);h(this,"_layers",[]);h(this,"_viewports",[]);h(this,"_cursor",i1.DEFAULT);h(this,"_defaultCursor",i1.DEFAULT);h(this,"_addObject$",new p1.BehaviorSubject(this));h(this,"addObject$",this._addObject$.asObservable());h(this,"_transformer");h(this,"_transformerOpenState",!1);h(this,"_inputManager");if(this._parent=n,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);(i=this._parent)==null||i.onTransformChangeObservable.add(o=>{this._setTransForm()})}get ancestorScaleX(){const t=this.getParent();let n=1;return t.classType===N.SCENE_VIEWER&&(n=t.ancestorScaleX),this.scaleX*n}get ancestorScaleY(){const t=this.getParent();let n=1;return t.classType===N.SCENE_VIEWER&&(n=t.ancestorScaleY),this.scaleY*n}set cursor(t){this.setCursor(t)}attachControl(t=!0,n=!0,s=!0,i=!0){var o;if(this._parent.classType===N.ENGINE)return(o=this._inputManager)==null||o.attachControl(t,n,s,i),this}detachControl(){var t;return(t=this._inputManager)==null||t.detachControl(),this}makeDirty(t=!0){var n;return this._layers.forEach(s=>{s.makeDirty(t)}),this._parent.classType===N.SCENE_VIEWER&&((n=this._parent)==null||n.makeDirty(t)),this}makeDirtyNoParent(t=!0){return this._viewports.forEach(n=>{n.makeDirty(t)}),this}enableLayerCache(...t){t.forEach(n=>{this.getLayer(n).enableCache()})}disableLayerCache(...t){t.forEach(n=>{this.getLayer(n).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 n=this.getEngine();n&&n.setCanvasCursor(t)}setDefaultCursor(t){this._defaultCursor=t,this.resetCursor()}resize(t,n){const s=this.width;t!==void 0&&(this.width=t);const i=this.height;return n!==void 0&&(this.height=n),this._setTransForm(),this.onTransformChangeObservable.notifyObservers({type:s1.resize,value:{width:this.width,height:this.height},preValue:{width:s,height:i}}),this}scale(t,n){const s=this.scaleX;t!==void 0&&(this.scaleX=t);const i=this.scaleY;return n!==void 0&&(this.scaleY=n),this._setTransForm(),this.onTransformChangeObservable.notifyObservers({type:s1.scale,value:{scaleX:this.scaleX,scaleY:this.scaleY},preValue:{scaleX:s,scaleY:i}}),this}scaleBy(t,n){const s=this.scaleX;t!==void 0&&(this.scaleX+=t);const i=this.scaleY;return n!==void 0&&(this.scaleY+=n),this.scaleX=Y2(this.scaleX,1),this.scaleY=Y2(this.scaleY,1),this._setTransForm(),this.onTransformChangeObservable.notifyObservers({type:s1.scale,value:{scaleX:this.scaleX,scaleY:this.scaleY},preValue:{scaleX:s,scaleY:i}}),this}transformByState(t){const n=Object.keys(t),s={};n.length!==0&&(n.forEach(i=>{t[i]!==void 0&&(s[i]=this[i],this[i]=t[i])}),this._setTransForm(),this.onTransformChangeObservable.notifyObservers({type:s1.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 n of this._layers)if(n.zIndex===t)return n;return this._createDefaultLayer(t)}getLayerMaxZIndex(){let t=Number.MIN_VALUE;for(let n=0;n<this._layers.length;n++){const s=this._layers[n];s.zIndex>=t&&(t=s.zIndex)}return t}addLayer(...t){this._layers.push(...t)}addObject(t,n=1){var s;return(s=this.getLayer(n))==null||s.addObject(t),this._addObject$.next(this),this}setObjectBehavior(t){t.parent||(t.parent=this),t.onIsAddedToParentObserver.notifyObservers(this)}addObjects(t,n=1){var s;return(s=this.getLayer(n))==null||s.addObjects(t),this._addObject$.next(this),this}removeObject(t){if(t==null)return;const n=this.getLayers();for(const s of n)s.removeObject(t);return this}removeObjects(t){if(t==null)return;const n=this.getLayers();for(const s of n)s.removeObjects(t);return this}getAllObjects(){const t=[];this._layers.sort(d.sortRules);for(const n of this._layers)t.push(...n.getObjectsByOrder());return t}getAllObjectsByOrder(t=!1){const n=[],s=t?d.sortRulesByDesc:d.sortRules;this._layers.sort(s);for(const i of this._layers)n.push(...i.getObjectsByOrder().sort(s));return n}getAllObjectsByOrderForPick(t=!1){const n=[],s=t?d.sortRulesByDesc:d.sortRules;this._layers.sort(s);for(const i of this._layers)n.push(...i.getObjectsByOrderForPick().sort(s));return n}getObject(t){for(const n of this._layers){const s=n.getObjectsByOrder();for(const i of s)if(i.oKey===t)return i}}fuzzyMathObjects(t){const n=[];for(const s of this._layers){const i=s.getObjectsByOrder();for(const o of i)o.oKey.indexOf(t)>-1&&i.push(o)}return n}addViewport(...t){return this._viewports.push(...t),this}removeViewport(t){for(let n=0,s=this._viewports.length;n<s;n++){const i=this._viewports[n];if(i.viewPortKey===t)return this._viewports.splice(n,1),i}}getViewports(){return this._viewports}getViewport(t){for(const n of this._viewports)if(n.viewPortKey===t)return n}changeObjectOrder(){}render(t){var s;if(!this.isDirty())return;!t&&((s=this.getEngine())==null||s.clearCanvas());const n=this._layers.sort(d.sortRules);for(let i=0,o=n.length;i<o;i++)n[i].render(t,i===o-1)}async requestRender(t){return new Promise((n,s)=>{this.render(t),b2(n)})}openTransformer(t){this._transformer||(this._transformer=new Ld(this,t)),this._transformerOpenState=!0}closeTransformer(t=!1){t&&(this._transformer=null),this._transformerOpenState=!1}applyTransformer(t){var n;this._transformerOpenState&&((n=this._transformer)==null||n.attachTo(t))}getTransformer(){return this._transformer}getActiveViewportByRelativeCoord(t){return this._viewports.find(n=>n.isHit(t))}getActiveViewportByCoord(t){return t=this.getRelativeCoord(t),this.getActiveViewportByRelativeCoord(t)}getScrollXYByRelativeCoords(t,n){return n||(n=this.getActiveViewportByRelativeCoord(t)),n?this.getScrollXY(n):{x:0,y:0}}getScrollXY(t){let n=0,s=0;if(t){const i=t.actualScrollX||0,o=t.actualScrollY||0;n+=i,s+=o}return{x:n,y:s}}getRelativeCoord(t){let n=this.getParent();const s=[];for(;n;)(n.classType===N.SCENE||n.classType===N.SCENE_VIEWER)&&s.push(n),n=(n==null?void 0:n.getParent)&&(n==null?void 0:n.getParent());s.reverse();for(const i of s)if(i.classType===N.SCENE){const a=i.getActiveViewportByCoord(t);if(a){const u=a.actualScrollX||0,c=a.actualScrollY||0;t=t.addByPoint(u,c)}}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:n=1}=this;return this.classType===N.SCENE_VIEWER&&(t=this.ancestorScaleX||1,n=this.ancestorScaleY||1),{scaleX:t,scaleY:n}}getPrecisionScale(){var i;const t=((i=this.getEngine())==null?void 0:i.getPixelRatio())||1,{scaleX:n,scaleY:s}=this.getAncestorScale();return{scaleX:n*t,scaleY:s*t}}dispose(){var t;this.getLayers().forEach(n=>{n.dispose()}),this.getViewports().forEach(n=>{n.dispose()}),this.clearLayer(),this.clearViewports(),this.detachControl(),(t=this._transformer)==null||t.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()}pick(t){let n=this.getActiveViewportByCoord(t);if(n||(n=this._viewports[0]),!this.evented||!n)return;const s=n.pickScrollBar(t);if(s)return s;const i=n.getRelativeVector(t);let o=null;const a=this.getAllObjectsByOrderForPick().reverse(),u=a.length;for(let c=0;c<u;c++){const l=a[c];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 n,s;return!((n=this.onPointerUpObserver.notifyObservers(t))!=null&&n.stopPropagation)&&this._parent.classType===N.SCENE_VIEWER?((s=this._parent)==null||s.triggerPointerUp(t),!1):!0}triggerMouseWheel(t){var n,s;return!((n=this.onMouseWheelObserver.notifyObservers(t))!=null&&n.stopPropagation)&&this._parent.classType===N.SCENE_VIEWER?((s=this._parent)==null||s.triggerMouseWheel(t),!1):!0}triggerPointerMove(t){var n,s;return!((n=this.onPointerMoveObserver.notifyObservers(t))!=null&&n.stopPropagation)&&this._parent.classType===N.SCENE_VIEWER?((s=this._parent)==null||s.triggerPointerMove(t),!1):!0}triggerDblclick(t){var n,s;return!((n=this.onDblclickObserver.notifyObservers(t))!=null&&n.stopPropagation)&&this._parent.classType===N.SCENE_VIEWER?((s=this._parent)==null||s.triggerDblclick(t),!1):!0}triggerTripleClick(t){var n,s;return!((n=this.onTripleClickObserver.notifyObservers(t))!=null&&n.stopPropagation)&&this._parent.classType===N.SCENE_VIEWER?((s=this._parent)==null||s.triggerTripleClick(t),!1):!0}triggerPointerDown(t){var n,s;return!((n=this.onPointerDownObserver.notifyObservers(t))!=null&&n.stopPropagation)&&this._parent.classType===N.SCENE_VIEWER?((s=this._parent)==null||s.triggerPointerDown(t),!1):!0}triggerPointerOut(t){var n;return this._parent.classType===N.SCENE_VIEWER?((n=this._parent)==null||n.triggerPointerOut(t),!1):!0}triggerPointerLeave(t){var n,s;return!((n=this.onPointerLeaveObserver.notifyObservers(t))!=null&&n.stopPropagation)&&this._parent.classType===N.SCENE_VIEWER?((s=this._parent)==null||s.triggerPointerLeave(t),!1):!0}triggerPointerOver(t){var n;return this._parent.classType===N.SCENE_VIEWER?((n=this._parent)==null||n.triggerPointerOver(t),!1):!0}triggerPointerEnter(t){var n,s;return!((n=this.onPointerEnterObserver.notifyObservers(t))!=null&&n.stopPropagation)&&this._parent.classType===N.SCENE_VIEWER?((s=this._parent)==null||s.triggerPointerEnter(t),!1):!0}_createDefaultLayer(t=1){const n=new xt(this,[],t);return this.addLayer(n),n}_setTransForm(){const t=r1.create().composeMatrix({scaleX:this.scaleX,scaleY:this.scaleY});this.transform=t,this.getViewports().forEach(n=>{n.resetSizeAndScrollBar()}),this.makeDirty(!0)}_getGroupCumLeftRight(t){let n=t.parent,s=0,i=0;for(;n.classType===N.GROUP;){const{left:o,top:a}=n;s+=o,i+=a,n=n.parent}return{cumLeft:s,cumTop:i}}}const Nd={width:1500,height:1e3},kd="_UNIVER_SCENE_";class Pt{constructor(){h(this,"_defaultEngine",new K2);h(this,"_currentUnitId","");h(this,"_renderMap",new Map);h(this,"_currentRender$",new p1.BehaviorSubject(this._currentUnitId));h(this,"currentRender$",this._currentRender$.asObservable())}get defaultEngine(){return this._defaultEngine}dispose(){this._renderMap.forEach(e=>{this._disposeItem(e)}),this._renderMap.clear(),this._currentRender$.complete()}createRenderWithParent(e,t){const n=this.getRenderById(t);if(n==null)throw new Error("parent render is null");const{scene:s,engine:i}=n,o=this._createRender(e,i,!1),a=o.scene,u=new u7(e);return u.addSubScene(a),s.addObject(u),o}createRender(e){const t=new K2;return this._createRender(e,t)}_createRender(e,t,n=!0){const s=this.getRenderById(e);let i=!0;s!=null&&s.engine===t&&(i=!1),this._disposeItem(s,i);const{width:o,height:a}=Nd,u=new Mt(kd+e,t,{width:o,height:a}),c={unitId:e,engine:t,scene:u,mainComponent:null,components:new Map,isMainScene:n};return this.addItem(e,c),c}addItem(e,t){this._renderMap.set(e,t)}removeItem(e){const t=this._renderMap.get(e);t!=null&&this._disposeItem(t),this._renderMap.delete(e)}setCurrent(e){this._currentUnitId=e,this._currentRender$.next(e)}getCurrent(){return this.getRenderById(this._currentUnitId)}getRenderById(e){return this._renderMap.get(e)}getRenderAll(){return this._renderMap}_disposeItem(e,t=!0){if(e==null)return;const{engine:n,scene:s,components:i,mainComponent:o}=e;i==null||i.forEach(a=>{a.dispose()}),o==null||o.dispose(),s.dispose(),t&&n.dispose()}}const Lt=e2.createIdentifier("univer.render-manager-service");var Hd=Object.defineProperty,Xd=Object.getOwnPropertyDescriptor,Yd=(r,e,t,n)=>{for(var s=n>1?void 0:n?Xd(e,t):e,i=r.length-1,o;i>=0;i--)(o=r[i])&&(s=(n?o(e,t,s):o(s))||s);return n&&s&&Hd(e,t,s),s},zd=(r,e)=>(t,n)=>e(t,n,r);const $t=e2.createIdentifier("univer.render-engine"),Wd="render-engine";var g6;exports.UniverRenderEnginePlugin=(g6=class extends d.Plugin{constructor(e,t){super(Wd),this._injector=t,this._injector.add([$t,{useFactory:()=>new K2}]),this._injector.add([Lt,{useClass:Pt}])}},h(g6,"type",d.PluginType.Univer),g6);exports.UniverRenderEnginePlugin=Yd([zd(1,e2.Inject(e2.Injector))],exports.UniverRenderEnginePlugin);const Nt=["radius"];class c7 extends c2{constructor(t,n){super(t,n);h(this,"_radius");this._radius=(n==null?void 0:n.radius)||10,this._setFixBoundingBox(),this.onTransformChangeObservable.add(s=>{const{type:i,value:o,preValue:a}=s;if(i===s1.resize||i===s1.all){const u=Math.min(this.width,this.height);this._radius=u/2,this.width=u,this.height=u,this._setTransForm()}})}get radius(){return this._radius}static drawWith(t,n){let{radius:s}=n;s=s!=null?s:10,t.beginPath(),n.strokeDashArray&&t.setLineDash(n.strokeDashArray),t.beginPath(),t.arc(s,s,s||0,0,Math.PI*2,!1),t.closePath(),this._renderPaintInOrder(t,n)}toJson(){const t={};return Nt.forEach(n=>{this[n]&&(t[n]=this[n])}),{...super.toJson(),...t}}_draw(t){c7.drawWith(t,this)}_setFixBoundingBox(){this.transformByState({width:this._radius*2,height:this._radius*2})}}class jd{}class Gd{}class J2 extends c2{constructor(t,n){super(t,n);h(this,"_props");h(this,"_native");this._props={autoWidth:!1,autoHeight:!1,...n},n.image?(this._native=n.image,this._init()):n.url&&(this._native=document.createElement("img"),this._native.src=n.url,this._native.onload=()=>{var s;(s=n.success)==null||s.call(n),this._init(),this.makeDirty(!0)},this._native.onerror=()=>{n.fail?n.fail():(this._native.src="data:image/svg+xml;base64,PHN2ZyBjbGFzcz0iaWNvbiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB3aWR0aD0iMjAwIiBoZWlnaHQ9IjIwMCI+PHBhdGggZD0iTTMwNC4xMjggNDU2LjE5MmM0OC42NCAwIDg4LjA2NC0zOS40MjQgODguMDY0LTg4LjA2NHMtMzkuNDI0LTg4LjA2NC04OC4wNjQtODguMDY0LTg4LjA2NCAzOS40MjQtODguMDY0IDg4LjA2NCAzOS40MjQgODguMDY0IDg4LjA2NCA4OC4wNjR6bTAtMTE2LjIyNGMxNS4zNiAwIDI4LjE2IDEyLjI4OCAyOC4xNiAyOC4xNnMtMTIuMjg4IDI4LjE2LTI4LjE2IDI4LjE2LTI4LjE2LTEyLjI4OC0yOC4xNi0yOC4xNiAxMi4yODgtMjguMTYgMjguMTYtMjguMTZ6IiBmaWxsPSIjZTZlNmU2Ii8+PHBhdGggZD0iTTg4Ny4yOTYgMTU5Ljc0NEgxMzYuNzA0Qzk2Ljc2OCAxNTkuNzQ0IDY0IDE5MiA2NCAyMzIuNDQ4djU1OS4xMDRjMCAzOS45MzYgMzIuMjU2IDcyLjcwNCA3Mi43MDQgNzIuNzA0aDE5OC4xNDRMNTAwLjIyNCA2ODguNjRsLTM2LjM1Mi0yMjIuNzIgMTYyLjMwNC0xMzAuNTYtNjEuNDQgMTQzLjg3MiA5Mi42NzIgMjE0LjAxNi0xMDUuNDcyIDE3MS4wMDhoMzM1LjM2QzkyNy4yMzIgODY0LjI1NiA5NjAgODMyIDk2MCA3OTEuNTUyVjIzMi40NDhjMC0zOS45MzYtMzIuMjU2LTcyLjcwNC03Mi43MDQtNzIuNzA0em0tMTM4Ljc1MiA3MS42OHYuNTEySDg1Ny42YzE2LjM4NCAwIDMwLjIwOCAxMy4zMTIgMzAuMjA4IDMwLjIwOHYzOTkuODcyTDY3My4yOCA0MDguMDY0bDc1LjI2NC0xNzYuNjR6TTMwNC42NCA3OTIuMDY0SDE2NS44ODhjLTE2LjM4NCAwLTMwLjIwOC0xMy4zMTItMzAuMjA4LTMwLjIwOHYtOS43MjhsMTM4Ljc1Mi0xNjQuMzUyIDEwNC45NiAxMjQuNDE2LTc0Ljc1MiA3OS44NzJ6bTgxLjkyLTM1NS44NGwzNy4zNzYgMjI4Ljg2NC0uNTEyLjUxMi0xNDIuODQ4LTE2OS45ODRjLTMuMDcyLTMuNTg0LTkuMjE2LTMuNTg0LTEyLjI4OCAwTDEzNS42OCA2NTIuOFYyNjIuMTQ0YzAtMTYuMzg0IDEzLjMxMi0zMC4yMDggMzAuMjA4LTMwLjIwOGg0NzQuNjI0TDM4Ni41NiA0MzYuMjI0em01MDEuMjQ4IDMyNS42MzJjMCAxNi44OTYtMTMuMzEyIDMwLjIwOC0yOS42OTYgMzAuMjA4SDY4MC45Nmw1Ny4zNDQtOTMuMTg0LTg3LjU1Mi0yMDIuMjQgNy4xNjgtNy42OCAyMjkuODg4IDI3Mi44OTZ6IiBmaWxsPSIjZTZlNmU2Ii8+PC9zdmc+",this._init(),this.makeDirty(!0))})}static drawWith(t,n){var s;if((s=n._native)!=null&&s.complete){const{width:i,height:o}=n;try{t.drawImage(n._native,0,0,i,o)}catch(a){console.error(a)}}}static create(t,n,s){return new J2(t,{url:n,success:s})}getPictureProps(){return this._props}_draw(t){J2.drawWith(t,this)}_init(){var t,n;this._props.autoWidth&&this.resize(((t=this._native)==null?void 0:t.width)||0),this._props.autoHeight&&this.resize(void 0,((n=this._native)==null?void 0:n.height)||0)}}const O6=["text","richText"];class Vd extends I1{constructor(t,n,s){super(n);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:u}=a;if(u===s1.resize||u===s1.all){i.updateDocumentDataPageSize(this.width),this._documentSkeleton.makeDirty(!0),this._documentSkeleton.calculate();const c=this.getDocsSkeletonPageSize();this.height=(c==null?void 0:c.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:n}=t,s=n[n.length-1],{width:i,height:o}=s;return{width:i,height:o}}setProps(t){if(!t)return;const n=Object.keys(t);if(n.length!==0)return n.forEach(s=>{if(t[s]===void 0)return!0;O6.indexOf(s)===-1&&(this[`_${s}`]=t[s])}),this.makeDirty(!0),this}render(t,n){if(!this.visible)return this.makeDirty(!1),this;if(this.isRender()){const{top:i,left:o,bottom:a,right:u}=n.viewBound;if(this.width+this.strokeWidth<o||u<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(n=>{this[n]&&(t[n]=this[n])}),{...super.toJson(),...t}}_draw(t){this._documents.render(t)}_convertToDocumentData(t){const n=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:n-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 n=this.getDocsSkeletonPageSize();this.transformByState({width:(n==null?void 0:n.width)||0,height:(n==null?void 0:n.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 Ud{constructor(){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 e;return(e=this.horizonThumbRect)!=null&&e.visible?this.horizontalBarWidth-this.horizontalThumbWidth:0}get limitY(){var e;return(e=this.verticalThumbRect)!=null&&e.visible?this.verticalBarHeight-this.verticalThumbHeight:0}get ratioScrollX(){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 e=this.horizontalBarWidth-this.horizontalThumbWidth;if(e===0)return 0;const t=this.horizontalBarWidth-(this.horizontalThumbWidth-this.horizontalMinusMiniThumb);return t===0?0:e/t}get miniThumbRatioY(){const e=this.verticalBarHeight-this.verticalThumbHeight;if(e===0)return 0;const t=this.verticalBarHeight-(this.verticalThumbHeight-this.verticalMinusMiniThumb);return t===0?0:e/t}pick(e){var t,n,s,i;return(t=this.horizonThumbRect)!=null&&t.isHit(e)?this.horizonThumbRect:(n=this.verticalThumbRect)!=null&&n.isHit(e)?this.verticalThumbRect:(s=this.horizonBarRect)!=null&&s.isHit(e)?this.horizonBarRect:(i=this.verticalBarRect)!=null&&i.isHit(e)?this.verticalBarRect:null}dispose(){var e,t,n,s,i;(e=this.horizonBarRect)==null||e.dispose(),(t=this.horizonThumbRect)==null||t.dispose(),(n=this.verticalBarRect)==null||n.dispose(),(s=this.verticalThumbRect)==null||s.dispose(),(i=this.placeholderBarRect)==null||i.dispose()}hasHorizonThumb(){var e;return((e=this.horizonThumbRect)==null?void 0:e.visible)||!1}hasVerticalThumb(){var e;return((e=this.verticalThumbRect)==null?void 0:e.visible)||!1}resize(e=0,t=0,n=0,s=0){}makeDirty(e){}render(e,t=0,n=0){}}const Z1=17;class l7 extends Ud{constructor(t,n){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(n),this._view=t,this._initialScrollRect(),this._view.setScrollBar(this)}static attachTo(t,n){return new l7(t,n)}dispose(){var t,n,s,i;super.dispose(),(t=this._mainScene)==null||t.onPointerMoveObserver.remove(this._horizonPointerMoveObserver),(n=this._mainScene)==null||n.onPointerMoveObserver.remove(this._verticalPointerMoveObserver),(s=this._mainScene)==null||s.onPointerUpObserver.remove(this._horizonPointerUpObserver),(i=this._mainScene)==null||i.onPointerUpObserver.remove(this._verticalPointerUpObserver),this._mainScene=null,this._view.removeScrollBar()}render(t,n=0,s=0){const{scrollX:i,scrollY:o}=this._view;t.save();const u=new r1([1,0,0,1,n,s]).getMatrix();t.transform(u[0],u[1],u[2],u[3],u[4],u[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,n=0,s=0,i=0){var o;t===0&&t===0||(this._resizeHorizontal(t,n,s),this._resizeVertical(t,n,i),this.enableHorizontal&&this.enableVertical&&((o=this.placeholderBarRect)==null||o.transformByState({left:t-this.barSize,top:n-this.barSize,width:this.barSize-this.barBorder,height:this.barSize-this.barBorder})))}makeDirty(t){var n,s,i,o,a;(n=this.horizonBarRect)==null||n.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 n,s,i,o;return(n=this.horizonThumbRect)!=null&&n.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 n=Object.keys(t);n.length!==0&&n.forEach(s=>{t[s]!==void 0&&(this[`${s}`]=t[s])})}_resizeHorizontal(t,n,s){var i,o,a,u,c;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<Z1&&(this.horizontalMinusMiniThumb=Z1-this.horizontalThumbWidth,this.horizontalThumbWidth=Z1),(i=this.horizonBarRect)==null||i.transformByState({left:0,top:n-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||(u=this.horizonThumbRect)==null||u.setProps({visible:!0}),(c=this.horizonThumbRect)==null||c.transformByState({left:this._view.scrollX,top:n-this.barSize+this.thumbMargin,width:this.horizontalThumbWidth,height:this.barSize-this.thumbMargin*2})))}_resizeVertical(t,n,s){var i,o,a,u,c;this.enableVertical&&(this.verticalMinusMiniThumb=0,this.verticalBarHeight=n-(this.enableHorizontal?this.barSize:0)-this.barBorder,this.verticalThumbHeight=this.verticalBarHeight*this.verticalBarHeight/s*this.thumbLengthRatio,this.verticalThumbHeight<Z1&&(this.verticalMinusMiniThumb=Z1-this.verticalThumbHeight,this.verticalThumbHeight=Z1),(i=this.verticalBarRect)==null||i.transformByState({left:t-this.barSize,top:0,width:this.barSize-this.barBorder,height:this.verticalBarHeight}),this.verticalThumbHeight>=n-this.barSize?(o=this.verticalThumbRect)==null||o.setProps({visible:!1}):((a=this.verticalThumbRect)!=null&&a.visible||(u=this.verticalThumbRect)==null||u.setProps({visible:!0}),(c=this.verticalThumbRect)==null||c.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 d1("__horizonBarRect__",{fill:this.barBackgroundColor,strokeWidth:this.barBorder,stroke:this.barBorderColor}),this.horizonThumbRect=new d1("__horizonThumbRect__",{radius:6,fill:this.thumbBackgroundColor})),this.enableVertical&&(this.verticalBarRect=new d1("__verticalBarRect__",{fill:this.barBackgroundColor,strokeWidth:this.barBorder,stroke:this.barBorderColor}),this.verticalThumbRect=new d1("__verticalThumbRect__",{radius:6,fill:this.thumbBackgroundColor})),this.enableHorizontal&&this.enableVertical&&(this.placeholderBarRect=new d1("__placeholderBarRect__",{fill:this.barBackgroundColor,strokeWidth:this.barBorder,stroke:this.barBorderColor})),this._initialVerticalEvent(),this._initialHorizontalEvent()}_initialVerticalEvent(){var n,s,i,o;if(!this.enableVertical)return;const t=this._mainScene||this._view.scene;(n=this.verticalThumbRect)==null||n.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,u)=>{const c=a;this._view.scrollTo({y:c.offsetY-this._view.top-this.verticalThumbHeight/2}),u.stopPropagation()}),(o=this.verticalThumbRect)==null||o.on(E1.PointerDown,(a,u)=>{const c=a,l=this.verticalThumbRect;this._isVerticalMove=!0,this._lastX=c.offsetX,this._lastY=c.offsetY,l==null||l.setProps({fill:this.thumbActiveBackgroundColor}),t.disableEvent(),this.makeViewDirty(!0),u.stopPropagation()}),this._verticalPointerMoveObserver=t.onPointerMoveObserver.add((a,u)=>{const c=a;this._isVerticalMove&&(this._view.scrollByBar({y:c.offsetY-this._lastY}),this._lastY=c.offsetY)}),this._verticalPointerUpObserver=t.onPointerUpObserver.add((a,u)=>{const c=this.verticalThumbRect;this._isVerticalMove=!1,t.enableEvent(),c==null||c.setProps({fill:this.thumbBackgroundColor}),this.makeViewDirty(!0)})}_hoverFunc(t,n){return(s,i)=>{if(this._isHorizonMove||this._isVerticalMove)return;n.setProps({fill:t}),this.makeViewDirty(!0)}}_initialHorizontalEvent(){var n,s,i,o;if(!this.enableHorizontal)return;const t=this._mainScene||this._view.scene;(n=this.horizonThumbRect)==null||n.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,u)=>{const c=a;this._view.scrollTo({x:c.offsetX-this._view.left-this.horizontalThumbWidth/2}),u.stopPropagation()}),(o=this.horizonThumbRect)==null||o.on(E1.PointerDown,(a,u)=>{var l;const c=a;this._isHorizonMove=!0,this._lastX=c.offsetX,this._lastY=c.offsetY,(l=this.horizonThumbRect)==null||l.setProps({fill:this.thumbActiveBackgroundColor}),this.makeViewDirty(!0),t.disableEvent(),u.stopPropagation()}),this._horizonPointerMoveObserver=t.onPointerMoveObserver.add((a,u)=>{const c=a;this._isHorizonMove&&(this._view.scrollByBar({x:c.offsetX-this._lastX}),this._lastX=c.offsetX)}),this._horizonPointerUpObserver=t.onPointerUpObserver.add((a,u)=>{const c=this.horizonThumbRect;this._isHorizonMove=!1,t.enableEvent(),c==null||c.setProps({fill:this.thumbBackgroundColor}),this.makeViewDirty(!0)})}}class Kd{}const Jd=3;class qd{constructor(e,t,n){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=e,this._scene=t,(n==null?void 0:n.active)!=null&&(this._active=n.active),this._scene.addViewport(this),this._setWithAndHeight(n),this._isWheelPreventDefaultX=(n==null?void 0:n.isWheelPreventDefaultX)||!1,this._isWheelPreventDefaultY=(n==null?void 0:n.isWheelPreventDefaultY)||!1,this._resizeCacheCanvasAndScrollBar()}get scene(){return this._scene}get width(){return this._width}get height(){return this._height}get viewPortKey(){return this._viewPortKey}get topOrigin(){return this._topOrigin}get leftOrigin(){return this._leftOrigin}get bottomOrigin(){return this._bottomOrigin}get rightOrigin(){return this._rightOrigin}get top(){return this._top}get left(){return this._left}get bottom(){return this._bottom}get right(){return this._right}get isWheelPreventDefaultX(){return this._isWheelPreventDefaultX}get isWheelPreventDefaultY(){return this._isWheelPreventDefaultY}set width(e){this._width=e}set height(e){this._height=e}get isActive(){return this._active===!1||(this.height||0)<=0||(this.width||0)<=0?!1:this._active}set top(e){var t,n;this._topOrigin=e,this._top=w1(e,(n=(t=this._scene)==null?void 0:t.getParent())==null?void 0:n.height)}set left(e){var t;this._leftOrigin=e,this._left=w1(e,(t=this.scene.getParent())==null?void 0:t.width)}set bottom(e){var t;this._bottomOrigin=e,this._bottom=w1(e,(t=this.scene.getParent())==null?void 0:t.height)}set right(e){var t;this._rightOrigin=e,this._right=w1(e,(t=this.scene.getParent())==null?void 0:t.width)}enable(){this._active=!0}disable(){this._active=!1}resetSizeAndScrollBar(){this._resizeCacheCanvasAndScrollBar()}setScrollBar(e){this._scrollBar=e,this._resizeCacheCanvasAndScrollBar()}removeScrollBar(){this._scrollBar=null}resize(e){Object.keys(e).length!==0&&(this._setWithAndHeight(e),this._resizeCacheCanvasAndScrollBar())}setPadding(e){const{startX:t=0,startY:n=0,endX:s=0,endY:i=0}=e;this._paddingStartX=t,this._paddingEndX=s,this._paddingStartY=n,this._paddingEndY=i,this._resizeCacheCanvasAndScrollBar()}resetPadding(){this.setPadding({startX:0,endX:0,startY:0,endY:0})}makeDirty(e=!0,t=!1){if(this._dirty=e,t){const n=this.scene.getParent();n.classType===N.SCENE_VIEWER&&n.makeDirty(!0)}}isDirty(){return this._dirty}scrollTo(e,t=!0){return this._scroll(0,e,t)}scrollBy(e,t=!0){return this._scroll(1,e,t)}scrollByBar(e,t=!0){var i,o;this._scroll(1,e,t);const{x:n,y:s}=e;this.onScrollByBarObserver.notifyObservers({viewport:this,scrollX:this.scrollX,scrollY:this.scrollY,x:n,y:s,actualScrollX:this.actualScrollX,actualScrollY:this.actualScrollY,limitX:(i=this._scrollBar)==null?void 0:i.limitX,limitY:(o=this._scrollBar)==null?void 0:o.limitY,isTrigger:t})}scrollByOffset(e=0,t=0,n=!0){if(!this._scrollBar||this.isActive===!1)return;const s=e+this._paddingStartX,i=t+this._paddingStartY,o=this.getBarScroll(s,i);return this.scrollBy(o,n)}getBarScroll(e,t){let n=e-this._paddingStartX,s=t-this._paddingStartY;if(this._scrollBar){n*=this._scrollBar.ratioScrollX,s*=this._scrollBar.ratioScrollY;const{scaleX:i,scaleY:o}=this.scene;n*=i,s*=o}else this.scrollX!==void 0&&(n=this.scrollX),this.scrollY!==void 0&&(s=this.scrollY);return{x:n,y:s}}getActualScroll(e,t){let n=e,s=t;if(this._scrollBar){const{scaleX:a,scaleY:u}=this.scene;this._scrollBar.ratioScrollX!==0?(n/=this._scrollBar.ratioScrollX,n/=a):this.actualScrollX!==void 0&&(n=this.actualScrollX),this._scrollBar.ratioScrollY!==0?(s/=this._scrollBar.ratioScrollY,s/=u):this.actualScrollY!==void 0&&(s=this.actualScrollY)}else this.actualScrollX!==void 0&&(n=this.actualScrollX),this.actualScrollY!==void 0&&(s=this.actualScrollY);const{scaleX:i,scaleY:o}=this._scene.getPrecisionScale();return{x:H(n+this._paddingStartX,i),y:H(s+this._paddingStartY,o)}}getTransformedScroll(){const e=this.scrollX,t=this.scrollY;return this.getActualScroll(e,t)}getScrollBar(){return this._scrollBar}updateScroll(e){this._preScrollX=this.scrollX,this._preScrollY=this.scrollY;const{scrollX:t,scrollY:n,actualScrollX:s,actualScrollY:i}=e;return t!==void 0&&(this.scrollX=t),n!==void 0&&(this.scrollY=n),s!==void 0&&(this.actualScrollX=s),i!==void 0&&(this.actualScrollY=i),this}getScrollBarTransForm(){const e=r1.create();return e.multiply(r1.create([1,0,0,1,this._left,this._top])),e}render(e,t=[],n=!1){var l;if(this.isActive===!1||this.width==null||this.height==null||this.width<=1||this.height<=1)return;const s=e||((l=this._scene.getEngine())==null?void 0:l.getCanvas().getContext()),i=this._scene.transform.clone();i.multiply(r1.create([1,0,0,1,-this.actualScrollX||0,-this.actualScrollY||0]));const o=s,a=i.getMatrix(),u=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 c=this._calViewportRelativeBounding();t.forEach(D=>{D.render(o,c)}),o.restore(),this._scrollBar&&n&&(o.save(),o.transform(u[0],u[1],u[2],u[3],u[4],u[5]),this._drawScrollbar(o),o.restore()),this.makeDirty(!1),this._scrollRendered(),this._preViewportBound=c}getBounding(){return this._calViewportRelativeBounding()}getRelativeVector(e){const t=this.scene.transform.clone().invert(),n=this.getTransformedScroll();return t.applyPoint(e).add(I.FromArray([n.x,n.y]))}getAbsoluteVector(e){const t=this.scene.transform.clone(),n=this.getTransformedScroll();return t.applyPoint(e.subtract(I.FromArray([n.x,n.y])))}onMouseWheel(e,t){if(!this._scrollBar||this.isActive===!1)return;let n;if(e.inputIndex===M.MouseWheelX){const s=Math.abs(e.deltaX),i=this._scene.width,a=(this.width||1)/i*s;e.deltaX>0?n=this.scrollBy({x:a}):n=this.scrollBy({x:-a}),this._scene.getParent().classType===N.SCENE_VIEWER?n!=null&&n.isLimitedX||t.stopPropagation():this._isWheelPreventDefaultX?e.preventDefault():n!=null&&n.isLimitedX||e.preventDefault()}if(e.inputIndex===M.MouseWheelY){const s=Math.abs(e.deltaY),i=this._scene.height;let a=(this.height||1)/i*s;e.shiftKey?(a*=Jd,e.deltaY>0?n=this.scrollBy({x:a}):n=this.scrollBy({x:-a}),this._scene.getParent().classType===N.SCENE_VIEWER?n!=null&&n.isLimitedX||t.stopPropagation():this._isWheelPreventDefaultX?e.preventDefault():n!=null&&n.isLimitedX||e.preventDefault()):(e.deltaY>0?n=this.scrollBy({y:a}):n=this.scrollBy({y:-a}),this._scene.getParent().classType===N.SCENE_VIEWER?n!=null&&n.isLimitedY||t.stopPropagation():this._isWheelPreventDefaultY?e.preventDefault():n!=null&&n.isLimitedY||e.preventDefault())}e.inputIndex,M.MouseWheelZ,this._scene.makeDirty(!0)}isHit(e){if(this.isActive===!1)return;const{width:t,height:n}=this._getViewPortSize();return e.x>=this.left&&e.x<=this.left+(t||0)&&e.y>=this.top&&e.y<=this.top+(n||0)}pickScrollBar(e){if(!this._scrollBar)return;const n=this.getScrollBarTransForm().invert().applyPoint(e);return this._scrollBar.pick(n)}openClip(){this._renderClipState=!0}closeClip(){this._renderClipState=!1}dispose(){var e;this.onMouseWheelObserver.clear(),this.onScrollAfterObserver.clear(),this.onScrollBeforeObserver.clear(),this.onScrollStopObserver.clear(),(e=this._scrollBar)==null||e.dispose(),this._scene.removeViewport(this._viewPortKey)}limitedScroll(){var i,o;if(!this._scrollBar)return;const e=(i=this._scrollBar)==null?void 0:i.limitX,t=(o=this._scrollBar)==null?void 0:o.limitY;let n=!0,s=!0;return this.scrollX<0?this.scrollX=0:this.scrollX>e?this.scrollX=e:n=!1,this.scrollY<0?this.scrollY=0:this.scrollY>t?this.scrollY=t:s=!1,{isLimitedX:n,isLimitedY:s}}_resizeCacheCanvasAndScrollBar(){const e=this.actualScrollX,t=this.actualScrollY,{width:n,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(n,s,i,o);const{x:a,y:u}=this.getBarScroll(e,t);this.scrollTo({x:a,y:u})}this.makeDirty(!0)}_getViewPortSize(){const e=this._scene.getParent(),{width:t,height:n}=e,{scaleX:s=1,scaleY:i=1}=this._scene;let o,a,u=this.left*s,c=this.top*i;return this._leftOrigin!=null&&(u=this._leftOrigin*s),this._topOrigin!=null&&(c=this._topOrigin*i),this._widthOrigin!=null?o=this._widthOrigin*s:(o=t-(u+this._right),this.width=o),this._heightOrigin!=null?a=this._heightOrigin*i:(a=n-(c+this._bottom),this.height=a),this._left=u,this._top=c,{width:o,height:a}}_scrollRendered(){this._preScrollX=this.scrollX,this._preScrollY=this.scrollY}_triggerScrollStop(e,t,n,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:n,actualScrollX:e.x,actualScrollY:e.y,limitX:(i=this._scrollBar)==null?void 0:i.limitX,limitY:(o=this._scrollBar)==null?void 0:o.limitY,isTrigger:s})},2)}_scroll(e,t,n=!0){var u,c,l,D;const{x:s,y:i}=t;if(this._scrollBar==null)return;s!==void 0&&(this._scrollBar.hasHorizonThumb()?e===1?this.scrollX+=s:this.scrollX=s:this.scrollX=0),i!==void 0&&(this._scrollBar.hasVerticalThumb()?e===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:(u=this._scrollBar)==null?void 0:u.limitX,limitY:(c=this._scrollBar)==null?void 0:c.limitY,isTrigger:n}),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:n}),this._triggerScrollStop(a,s,i,n),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(),n=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,u=this._height;const c=this._getViewPortSize();t[0]>1&&(a=c.width),t[3]>1&&(u=c.height);const l=this.left*n,D=((a||0)+this.left)*i,f=this.top*s,p=((u||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(e,t){if(t==null)return[e];const n={startRow:e.top,endRow:e.bottom,startColumn:e.left,endColumn:e.right},s={startRow:t.top,endRow:t.bottom,startColumn:t.left,endColumn:t.right};return d.Rectangle.subtract(n,s).map(o=>{const{startRow:a,endRow:u,startColumn:c,endColumn:l}=o;return{left:c,top:a,right:l,bottom:u}})}_drawScrollbar(e){if(!this._scrollBar)return;const t=this._scene.getParent();t.classType===N.SCENE_VIEWER?this._scrollBar.render(e):t.classType===N.ENGINE&&this._scrollBar.render(e)}_setWithAndHeight(e){this.top=(e==null?void 0:e.top)||0,this.left=(e==null?void 0:e.left)||0,this.bottom=(e==null?void 0:e.bottom)||0,this.right=(e==null?void 0:e.right)||0,d.Tools.isDefine(e==null?void 0:e.width)?(this.width=e==null?void 0:e.width,this._widthOrigin=this.width,this._isRelativeX=!1):(this.width=null,this._widthOrigin=null,this._isRelativeX=!0),d.Tools.isDefine(e==null?void 0:e.height)?(this.height=e==null?void 0:e.height,this._heightOrigin=this.height,this._isRelativeY=!1):(this.height=null,this._heightOrigin=null,this._isRelativeY=!0)}_getBoundScale(e,t){return e=this._isRelativeX&&e<1?1:e,t=this._isRelativeY&&t<1?1:t,{scaleX:e,scaleY:t}}}exports.ArabicHandler=G4;exports.BASE_OBJECT_ARRAY=W2;exports.BORDER_TYPE=J;exports.Background=vt;exports.BaseObject=I1;exports.Border=Tt;exports.BreakType=n2;exports.CIRCLE_OBJECT_ARRAY=Nt;exports.COLOR_BLACK_RGB=G1;exports.CURSOR_TYPE=i1;exports.Canvas=o2;exports.CanvasRenderMode=S4;exports.Circle=c7;exports.ColumnHeaderLayout=yt;exports.ComponentExtension=n7;exports.Control=jd;exports.CustomObject=xd;exports.DEFAULT_DOCUMENT_FONTSIZE=j7;exports.DEFAULT_FONTFACE_PLANE=q2;exports.DEFAULT_MEASURE_TEXT=W7;exports.DEFAULT_OFFSET_SPACING=p6;exports.DEFAULT_SELECTION_LAYER_INDEX=Ut;exports.DEFAULT_SKELETON_FOOTER=Vt;exports.DEFAULT_SKELETON_HEADER=Gt;exports.DOCUMENT_CONTEXT_CLIP_TYPE=G7;exports.DeviceInputEventType=f4;exports.DeviceType=_1;exports.DocumentHorizonBar=hd;exports.DocumentSkeleton=i2;exports.DocumentSkeletonState=Ct;exports.DocumentVerticalBar=md;exports.DocumentViewModel=M1;exports.Documents=x2;exports.DocumentsSpanAndLineExtensionRegistry=l2;exports.Drawing=Gd;exports.EMOJI_REG=t4;exports.EVENT_TYPE=E1;exports.Engine=K2;exports.EventConstants=N2;exports.FIX_ONE_PIXEL_BLUR_OFFSET=o1;exports.Font=Bt;exports.FontCache=O1;exports.Group=Rt;exports.HitCanvas=hD;exports.INITIAL_MATRIX=$2;exports.INITIAL_Path2=g4;exports.IRenderManagerService=Lt;exports.IRenderingEngine=$t;exports.ITextSelectionRenderManager=pd;exports.IsSafari=Z7;exports.LINK_VIEW_PORT_TYPE=Y7;exports.Layer=xt;exports.LineType=A2;exports.Liquid=O2;exports.MAXIMUM_ROW_HEIGHT=V7;exports.MIDDLE_CELL_POS_MAGIC_NUMBER=A6;exports.NORMAL_TEXT_SELECTION_PLUGIN_STYLE=T2;exports.NodePositionConvertToCursor=ft;exports.NodePositionMap=X1;exports.NodePositionStateType=dt;exports.NodePositionType=F2;exports.ORIENTATION_TYPE=E2;exports.PATH_OBJECT_ARRAY=At;exports.PageLayoutType=T1;exports.Path=h1;exports.Path2=p4;exports.PerformanceMonitor=m4;exports.Picture=J2;exports.PointerInput=M;exports.RANGE_DIRECTION=m2;exports.RECT_OBJECT_ARRAY=pt;exports.REGULAR_POLYGON_OBJECT_ARRAY=mt;exports.RENDER_CLASS_TYPE=N;exports.RICHTEXT_OBJECT_ARRAY=O6;exports.Rect=d1;exports.RegularPolygon=s6;exports.RenderComponent=W6;exports.RenderManagerService=Pt;exports.RichText=Vd;exports.RollingAverage=F4;exports.RowHeaderLayout=Ot;exports.SHAPE_OBJECT_ARRAY=gt;exports.SHAPE_TYPE=w6;exports.SHEET_EXTENSION_TYPE=St;exports.SLIDE_NAVIGATION_KEY=It;exports.Scene=Mt;exports.SceneCanvas=lD;exports.SceneViewer=u7;exports.ScrollBar=l7;exports.ScrollTimer=r2;exports.ScrollTimerType=Et;exports.Selection=Kd;exports.Shape=c2;exports.SheetColumnHeaderExtensionRegistry=i7;exports.SheetComponent=r7;exports.SheetExtension=h2;exports.SheetRowHeaderExtensionRegistry=s7;exports.ShowGridlinesState=wt;exports.SkeletonType=u4;exports.Slide=Rd;exports.SpanType=a1;exports.Spreadsheet=Id;exports.SpreadsheetColumnHeader=Fd;exports.SpreadsheetExtensionRegistry=R2;exports.SpreadsheetHeader=o7;exports.SpreadsheetRowHeader=wd;exports.SpreadsheetSkeleton=a7;exports.TRANSFORM_CHANGE_OBSERVABLE_TYPE=s1;exports.TextRange=U2;exports.TibetanHandler=U4;exports.Transform=r1;exports.UniverPrintingContext=b4;exports.UniverRenderingContext=E4;exports.UniverRenderingContext2D=z6;exports.UniverRenderingContextWebGL=uD;exports.UniverRenderingContextWebGPU=cD;exports.VERTICAL_ROTATE_ANGLE=z1;exports.Vector2=I;exports.Viewport=qd;exports._createSkeletonWordOrLetter=n6;exports.addSpanToDivide=k2;exports.calculateLineTopByDrawings=J4;exports.calculateParagraphLayout=tt;exports.calculateRectRotate=v2;exports.cancelRequestFrame=J7;exports.checkStyle=o4;exports.clearFontCreateConfigCache=k4;exports.clearLineByBorderType=h4;exports.columnIterator=P4;exports.compareNodePosition=V2;exports.compareNodePositionLogic=e7;exports.convertTextRotation=C4;exports.createAndUpdateBlockAnchor=Q4;exports.createCanvasElement=x6;exports.createImageElement=Ph;exports.createSkeletonBulletSpan=Y4;exports.createSkeletonColumn=z_;exports.createSkeletonLetterSpan=I2;exports.createSkeletonLine=K4;exports.createSkeletonPage=s2;exports.createSkeletonSection=K6;exports.createSkeletonTabSpan=X4;exports.createSkeletonWordSpan=H4;exports.cursorConvertToTextRange=Ft;exports.dealWidthBlocksByMultiColumnAndContinuous=zD;exports.dealWidthInlineDrawing=O4;exports.dealWidthParagraph=_t;exports.dealWithBlockError=v4;exports.dealWithBullet=B4;exports.dealWithSections=U6;exports.degToRad=v1;exports.drawDiagonalLineByBorderType=l4;exports.drawLineByBorderType=k6;exports.emojiHandler=V4;exports.fixLineWidthByScale=H;exports.generateRandomKey=Q7;exports.getBulletOrderedSymbol=T4;exports.getCanvasOffsetByEngine=bt;exports.getCellByIndex=Q1;exports.getCellInfoInMergeData=t6;exports.getCellPositionByIndex=Y1;exports.getCharSpaceApply=e6;exports.getCharSpaceConfig=x4;exports.getColor=c1;exports.getColumnByDivide=TD;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=w4;exports.getLastLineByColumn=A4;exports.getLastNotFullColumnInfo=y2;exports.getLastNotFullDivideInfo=j6;exports.getLastPage=V1;exports.getLastRemainingDivide=BD;exports.getLastSection=a2;exports.getLastSpan=OD;exports.getLineHeightConfig=V6;exports.getLineOffset=D4;exports.getLineWidth=X6;exports.getLineWith=_4;exports.getNextDivide=yD;exports.getNumberUnitValue=A1;exports.getOneTextSelectionRange=T6;exports.getPageContentWidth=SD;exports.getParagraphBySpan=c4;exports.getPointerPrefix=m6;exports.getPositionHorizon=L4;exports.getPositionVertical=$4;exports.getPreLine=vD;exports.getRotateOffsetAndFarthestHypotenuse=Y6;exports.getRotateOrientation=d4;exports.getScale=$6;exports.getSizeForDom=a4;exports.getSpanGroupWidth=N4;exports.getTranslateInSpreadContextWithPixelRatio=aD;exports.getValueType=P1;exports.hasAllLatin=Wh;exports.hasArabic=P6;exports.hasBasicLatin=jh;exports.hasCJK=Q2;exports.hasCJKText=z2;exports.hasLatinExtendedA=Vh;exports.hasLatinExtendedB=Uh;exports.hasLatinOneSupplement=Gh;exports.hasListSpan=eD;exports.hasMixedTextLayout=W4;exports.hasSpace=e4;exports.hasTibetan=L6;exports.hasUnMergedCellInRow=s4;exports.injectStyle=r4;exports.isArray=kh;exports.isBlankColumn=R4;exports.isBlankPage=wD;exports.isColumnFull=I4;exports.isDate=$h;exports.isFirstSpan=iD;exports.isFunction=Z2;exports.isIndentBySpan=nD;exports.isLastSpan=sD;exports.isNumber=Hh;exports.isObject=Xh;exports.isPlaceholderOrSpace=rD;exports.isRectIntersect=i4;exports.isRegExp=Nh;exports.isSameLine=oD;exports.isString=F6;exports.lineIterator=M4;exports.mergeInfoOffset=C6;exports.otherHandler=j4;exports.precisionTo=Y2;exports.ptToMM=Qh;exports.ptToPx=qh;exports.pxToInch=tD;exports.pxToNum=H1;exports.pxToPt=Zh;exports.radToDeg=q7;exports.reCalculateLineDivide=ID;exports.requestNewFrame=b2;exports.setColumnFullState=J6;exports.setDivideFullState=q4;exports.setLineMarginBottom=LD;exports.setLineType=H6;exports.setSpanGroupLeft=z4;exports.setSpanLeft=xD;exports.spanIterator=RD;exports.startWithEmoji=M6;exports.toPx=w1;exports.updateBlockIndex=j2;exports.updateDivideInLine=$D;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;
|