@univerjs/engine-render 0.24.0 → 0.25.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/cjs/index.js +664 -214
- package/lib/es/index.js +664 -214
- package/lib/types/basics/index.d.ts +1 -0
- package/lib/types/basics/tools.d.ts +1 -0
- package/lib/types/basics/zoom.d.ts +17 -0
- package/lib/types/components/docs/doc-background.d.ts +6 -0
- package/lib/types/components/docs/doc-component.d.ts +4 -0
- package/lib/types/components/docs/document.d.ts +6 -0
- package/lib/types/components/docs/layout/block/paragraph/language-ruler.d.ts +4 -0
- package/lib/types/components/docs/layout/model/page.d.ts +1 -0
- package/lib/types/components/docs/table-render-viewport.d.ts +23 -0
- package/lib/types/index.d.ts +2 -0
- package/lib/types/render-manager/render-unit.d.ts +3 -1
- package/lib/umd/index.js +2 -2
- package/package.json +5 -5
- package/lib/cjs/en-us-Br9JW6Nt.js +0 -45
- package/lib/cjs/en-us-DKyh_RpA.js +0 -3
- package/lib/es/en-us-ClVoWMyT.js +0 -57
- /package/lib/cjs/{af-Bsj1JSBP.js → af-B2UUzO69.js} +0 -0
- /package/lib/cjs/{as-s7lqjieq.js → as-DbZDYp6O.js} +0 -0
- /package/lib/cjs/{be-L5eMFm5U.js → be-BBx0lyG-.js} +0 -0
- /package/lib/cjs/{bg-DPu8oywG.js → bg-DeX16RKi.js} +0 -0
- /package/lib/cjs/{bn-CIWO--x0.js → bn-3fjitMC3.js} +0 -0
- /package/lib/cjs/{ca-C4gmkbL6.js → ca-BxC8Zblv.js} +0 -0
- /package/lib/cjs/{cop-BYQt2Eln.js → cop-TvdaSBlz.js} +0 -0
- /package/lib/cjs/{cs-psn0RDcR.js → cs-MSNfJH-L.js} +0 -0
- /package/lib/cjs/{cu-CI412h46.js → cu-7FYbjEBr.js} +0 -0
- /package/lib/cjs/{cy-u9h1j59b.js → cy-CPuxVqb_.js} +0 -0
- /package/lib/cjs/{da-BQ70NE2J.js → da-BWsE849b.js} +0 -0
- /package/lib/cjs/{de-1901-C5Xgq4-z.js → de-1901-BYSTp3Fp.js} +0 -0
- /package/lib/cjs/{de-1996-BmpXhD5R.js → de-1996-DWtCfm_A.js} +0 -0
- /package/lib/cjs/{de-ch-1901-mUpubovn.js → de-ch-1901-rWVcF3cs.js} +0 -0
- /package/lib/cjs/{el-monoton-1KLys64v.js → el-monoton-BEUGM9Fi.js} +0 -0
- /package/lib/cjs/{el-polyton-C8sv-vqz.js → el-polyton-Bvh6HAfD.js} +0 -0
- /package/lib/cjs/{en-gb-DidBtNJX.js → en-gb-Dcrai7kY.js} +0 -0
- /package/lib/cjs/{es-C1gCT0OW.js → es-CVNdGI0L.js} +0 -0
- /package/lib/cjs/{et-UwA1uq3o.js → et-7Rdfp2-O.js} +0 -0
- /package/lib/cjs/{eu-pizKbeo6.js → eu-DyEtVwHo.js} +0 -0
- /package/lib/cjs/{fi-bkmcjeIB.js → fi-DzRES2Ke.js} +0 -0
- /package/lib/cjs/{fr-DTRdyReV.js → fr-DJMVMLCz.js} +0 -0
- /package/lib/cjs/{fur-CzaEPYy4.js → fur-CzhK3vxZ.js} +0 -0
- /package/lib/cjs/{ga-DfpmmLL7.js → ga-HXzOFdlG.js} +0 -0
- /package/lib/cjs/{gl-BvPLj87g.js → gl-C5TM79ih.js} +0 -0
- /package/lib/cjs/{grc-CWjbj1rE.js → grc-CPQF-xFI.js} +0 -0
- /package/lib/cjs/{gu-B9b71pv0.js → gu-AqCkEYxo.js} +0 -0
- /package/lib/cjs/{hi-B0PM9Naw.js → hi-DugLLbv4.js} +0 -0
- /package/lib/cjs/{hr-hhdjugdi.js → hr-LSMYFsyP.js} +0 -0
- /package/lib/cjs/{hsb-CUC0Vhy0.js → hsb-BlnRYHkg.js} +0 -0
- /package/lib/cjs/{hu-DNqLSdxp.js → hu-Dwvtkpy7.js} +0 -0
- /package/lib/cjs/{hy-Cr37-HYR.js → hy-BsG06_IV.js} +0 -0
- /package/lib/cjs/{ia-_xcaTvlU.js → ia-BMOUZLGD.js} +0 -0
- /package/lib/cjs/{id-DTTt6JOe.js → id-DhSs0vqq.js} +0 -0
- /package/lib/cjs/{is-BlJOUdIf.js → is-iJhrS7Aw.js} +0 -0
- /package/lib/cjs/{it-1kO7pboy.js → it-Aam-BmsV.js} +0 -0
- /package/lib/cjs/{ka-06TLrBSU.js → ka-CfLSYpVb.js} +0 -0
- /package/lib/cjs/{kmr-CqLLMgB-.js → kmr-DYCscIsi.js} +0 -0
- /package/lib/cjs/{kn-DsgCykwv.js → kn-OCEDIM_O.js} +0 -0
- /package/lib/cjs/{la-BtfI1L1Y.js → la-DFS3RPxE.js} +0 -0
- /package/lib/cjs/{la-x-classic-Csxxqk4A.js → la-x-classic-BocVpbl6.js} +0 -0
- /package/lib/cjs/{la-x-liturgic-DP4lkHMh.js → la-x-liturgic-CpZYm3b6.js} +0 -0
- /package/lib/cjs/{lt-BLnhu8cj.js → lt-NC6HHzxn.js} +0 -0
- /package/lib/cjs/{lv-BWU1ykNC.js → lv-BMFTm6cB.js} +0 -0
- /package/lib/cjs/{ml-DCPEVUGQ.js → ml-DDWi25Fi.js} +0 -0
- /package/lib/cjs/{mn-cyrl-R4Uzk2PR.js → mn-cyrl-TCUeX7is.js} +0 -0
- /package/lib/cjs/{mn-cyrl-x-lmc-DcrbbdVO.js → mn-cyrl-x-lmc-BCmp3Ybn.js} +0 -0
- /package/lib/cjs/{mr-a95kT02n.js → mr-1gjg-u15.js} +0 -0
- /package/lib/cjs/{mul-ethi-Ha-646Ih.js → mul-ethi-B9a4BMM6.js} +0 -0
- /package/lib/cjs/{nb-DVDq5SId.js → nb-DS_J6lre.js} +0 -0
- /package/lib/cjs/{nl-xvtaATgd.js → nl-CBtSVLcv.js} +0 -0
- /package/lib/cjs/{nn-Dd3GYfsu.js → nn-DYJOn4Sh.js} +0 -0
- /package/lib/cjs/{no-Ccuz1dXv.js → no-C20NyT1P.js} +0 -0
- /package/lib/cjs/{oc-DMNrvVUu.js → oc-CrKqER_F.js} +0 -0
- /package/lib/cjs/{or-BBnbptii.js → or-ZqEtsnaq.js} +0 -0
- /package/lib/cjs/{pa-Bpqjl4TY.js → pa-BD3r0Teo.js} +0 -0
- /package/lib/cjs/{pi-Dw9S8R8a.js → pi-CQUwMUvz.js} +0 -0
- /package/lib/cjs/{pl-BxIw_3q_.js → pl-CawofTLo.js} +0 -0
- /package/lib/cjs/{pms-ts8oJNTo.js → pms-DMqDXwo-.js} +0 -0
- /package/lib/cjs/{pt-INYdw9le.js → pt-BIiUaINZ.js} +0 -0
- /package/lib/cjs/{rm-SrIsmyuH.js → rm-B_-8T7Y1.js} +0 -0
- /package/lib/cjs/{ro--lDLf93Z.js → ro-B2Xhfkgx.js} +0 -0
- /package/lib/cjs/{ru-CnviOn4F.js → ru-lj-rTTpe.js} +0 -0
- /package/lib/cjs/{sa--YzUfT9m.js → sa-D3h-cY2Z.js} +0 -0
- /package/lib/cjs/{sh-cyrl-C-Y7f9iS.js → sh-cyrl-0o7p_z-7.js} +0 -0
- /package/lib/cjs/{sh-latn-DE0Oa7St.js → sh-latn-BTi9p-0q.js} +0 -0
- /package/lib/cjs/{sk-CL5uDe3A.js → sk-D6mOX2KK.js} +0 -0
- /package/lib/cjs/{sl-D8ckCfPR.js → sl-Bzz3gkvn.js} +0 -0
- /package/lib/cjs/{sr-cyrl-CZdv8WGY.js → sr-cyrl-V07WO3rb.js} +0 -0
- /package/lib/cjs/{sv-DYQd48Sm.js → sv-CyQXUuzx.js} +0 -0
- /package/lib/cjs/{ta-DOa0x7zq.js → ta-Brwz0zYf.js} +0 -0
- /package/lib/cjs/{te-BtexCVtn.js → te-CgvirCa4.js} +0 -0
- /package/lib/cjs/{th-BJUX68-0.js → th-PlSNhaza.js} +0 -0
- /package/lib/cjs/{tk-CEs8UQxA.js → tk-O54r2ybT.js} +0 -0
- /package/lib/cjs/{tr-BMiKDMrF.js → tr-Dh1h3Dno.js} +0 -0
- /package/lib/cjs/{uk-B8pzUYbn.js → uk-E2mCrVCU.js} +0 -0
- /package/lib/cjs/{zh-latn-pinyin-s8_52NaR.js → zh-latn-pinyin-C2RfFfDl.js} +0 -0
- /package/lib/es/{af-I8XQee0A.js → af-DK_CjRn6.js} +0 -0
- /package/lib/es/{as-DPw4kbfa.js → as-BPtSu6VN.js} +0 -0
- /package/lib/es/{be-hSu5_2AE.js → be-CrQ0smca.js} +0 -0
- /package/lib/es/{bg-eIV91Ges.js → bg-CrQqGwni.js} +0 -0
- /package/lib/es/{bn-CF0YbkEW.js → bn-NCLZcWHi.js} +0 -0
- /package/lib/es/{ca-D0fayQwW.js → ca-SUf6Y2Om.js} +0 -0
- /package/lib/es/{cop-gnNw8zDV.js → cop-C3sk0IUo.js} +0 -0
- /package/lib/es/{cs-cUOdqXi9.js → cs-CmAteokq.js} +0 -0
- /package/lib/es/{cu-CJJk_6p3.js → cu-CBUlrW6Y.js} +0 -0
- /package/lib/es/{cy-he1_O-US.js → cy-BBPa6z2x.js} +0 -0
- /package/lib/es/{da-C_Tc6C75.js → da-CCDXfXtG.js} +0 -0
- /package/lib/es/{de-1901-D9yvXEO8.js → de-1901-CWoAOigE.js} +0 -0
- /package/lib/es/{de-1996-DIBM3qkD.js → de-1996-BL6awyxG.js} +0 -0
- /package/lib/es/{de-ch-1901-BEDgpl3-.js → de-ch-1901-hVThVHVb.js} +0 -0
- /package/lib/es/{el-monoton-BvjPOyvW.js → el-monoton-D3aKqTz2.js} +0 -0
- /package/lib/es/{el-polyton-DfJ9Eeih.js → el-polyton-ogVWcTzh.js} +0 -0
- /package/lib/es/{en-gb-DYXoK50H.js → en-gb-B7Al27b_.js} +0 -0
- /package/lib/es/{es-48latgZ8.js → es-DcaaHPU_.js} +0 -0
- /package/lib/es/{et-UzX1rSXY.js → et-B_spaleu.js} +0 -0
- /package/lib/es/{eu-ijD7H63T.js → eu-Ctv_kq9Z.js} +0 -0
- /package/lib/es/{fi-DDuxAHu5.js → fi-RW5VB8Yp.js} +0 -0
- /package/lib/es/{fr-6wTrAsbK.js → fr-BC2onEz9.js} +0 -0
- /package/lib/es/{fur-CcIOY8A9.js → fur-AC12wySk.js} +0 -0
- /package/lib/es/{ga-B4Qvh5qS.js → ga-Cn6LkudM.js} +0 -0
- /package/lib/es/{gl-D8H7uN6B.js → gl-DZGc-K_G.js} +0 -0
- /package/lib/es/{grc-DFNi6G6p.js → grc-DOlGgO8T.js} +0 -0
- /package/lib/es/{gu-0EahmEdu.js → gu-Bjl0l-cf.js} +0 -0
- /package/lib/es/{hi-C2ih9xmB.js → hi-DsAaTPCC.js} +0 -0
- /package/lib/es/{hr-CSbbBNUu.js → hr-DT1SBBes.js} +0 -0
- /package/lib/es/{hsb-hKsDwaW_.js → hsb-DC_ITc1e.js} +0 -0
- /package/lib/es/{hu-BPixuxjf.js → hu-DVk7Y_ka.js} +0 -0
- /package/lib/es/{hy-CTtThTdl.js → hy-e995ysyO.js} +0 -0
- /package/lib/es/{ia-CYCjbabb.js → ia-Cr4TJH0c.js} +0 -0
- /package/lib/es/{id-Cgsp-bEu.js → id-DifDyWg9.js} +0 -0
- /package/lib/es/{is-D_Awtowh.js → is-BT8UVRze.js} +0 -0
- /package/lib/es/{it-C2qJSkm3.js → it-Bt_Meacx.js} +0 -0
- /package/lib/es/{ka-DpGw5nvd.js → ka-jyoLzyDE.js} +0 -0
- /package/lib/es/{kmr-CCdNyB20.js → kmr-Cfwhwuff.js} +0 -0
- /package/lib/es/{kn-B4tAUtFU.js → kn-C6Lov-DP.js} +0 -0
- /package/lib/es/{la-DIUYl8Yo.js → la-DuvHjUWw.js} +0 -0
- /package/lib/es/{la-x-classic-DsbLrq-C.js → la-x-classic-yTyAOQEt.js} +0 -0
- /package/lib/es/{la-x-liturgic-Ggenbcb5.js → la-x-liturgic-CXeQb4FY.js} +0 -0
- /package/lib/es/{lt-BcizI7gZ.js → lt-BBe8DlDF.js} +0 -0
- /package/lib/es/{lv-BOgrbf6v.js → lv-Q2BBHnzp.js} +0 -0
- /package/lib/es/{ml-CTD7giel.js → ml-2xLVYkVY.js} +0 -0
- /package/lib/es/{mn-cyrl-CDxGttkw.js → mn-cyrl-lHM4n0oC.js} +0 -0
- /package/lib/es/{mn-cyrl-x-lmc-kjrnm3ii.js → mn-cyrl-x-lmc-3aetruI8.js} +0 -0
- /package/lib/es/{mr-DttMNydl.js → mr-CjWJPVmH.js} +0 -0
- /package/lib/es/{mul-ethi-mmW8ZEm0.js → mul-ethi-D_CMSMEq.js} +0 -0
- /package/lib/es/{nb-DCiD6jLz.js → nb-DI8u59ch.js} +0 -0
- /package/lib/es/{nl-BKWsn_4x.js → nl-BHQJ6Gvn.js} +0 -0
- /package/lib/es/{nn-b0W3mz5j.js → nn-ntZvarUK.js} +0 -0
- /package/lib/es/{no-B3l46gib.js → no-B8ItS0F3.js} +0 -0
- /package/lib/es/{oc-zkqkXjNo.js → oc-P_i3-xLA.js} +0 -0
- /package/lib/es/{or-DEnI_Cls.js → or-50rxpoq4.js} +0 -0
- /package/lib/es/{pa-Sh-QSMIs.js → pa-C54UG8eN.js} +0 -0
- /package/lib/es/{pi-DxMx4Uwd.js → pi-B9cgjyG1.js} +0 -0
- /package/lib/es/{pl-CISKU0vg.js → pl-9fg-ESVt.js} +0 -0
- /package/lib/es/{pms-DUga94hR.js → pms-BRGfm5gS.js} +0 -0
- /package/lib/es/{pt-CzW61i2q.js → pt-Cum2_NUC.js} +0 -0
- /package/lib/es/{rm-C1U6i4AB.js → rm-C0MIK9N4.js} +0 -0
- /package/lib/es/{ro-DSU53KfM.js → ro-0fmdH0HA.js} +0 -0
- /package/lib/es/{ru-gduZDLhv.js → ru-v4l-ayaq.js} +0 -0
- /package/lib/es/{sa-Bney0xbB.js → sa-CKY9c_Vq.js} +0 -0
- /package/lib/es/{sh-cyrl-CCByyO89.js → sh-cyrl-BpCRFOmq.js} +0 -0
- /package/lib/es/{sh-latn-CTIiTfzt.js → sh-latn-sRy4Tuaj.js} +0 -0
- /package/lib/es/{sk-DK-iy-nO.js → sk-_iOeDNrQ.js} +0 -0
- /package/lib/es/{sl-BvzIjkCq.js → sl-DpiklF-D.js} +0 -0
- /package/lib/es/{sr-cyrl-7T4T5Th1.js → sr-cyrl-Dpzrbd0W.js} +0 -0
- /package/lib/es/{sv-BynygC4t.js → sv-CFm5y56M.js} +0 -0
- /package/lib/es/{ta-CglfOvwm.js → ta-BcghgTbD.js} +0 -0
- /package/lib/es/{te-Bec4xJud.js → te-B5Spl2Jk.js} +0 -0
- /package/lib/es/{th-B67OcLue.js → th-DWX5iPSo.js} +0 -0
- /package/lib/es/{tk-CYfVPVLR.js → tk-BMbKB10q.js} +0 -0
- /package/lib/es/{tr-BxhGLs2f.js → tr-CIHIuzqc.js} +0 -0
- /package/lib/es/{uk-CnWqKnI0.js → uk-Dir3oxLs.js} +0 -0
- /package/lib/es/{zh-latn-pinyin-CKxTJrac.js → zh-latn-pinyin-BdYb-Ey_.js} +0 -0
package/lib/cjs/index.js
CHANGED
|
@@ -6,6 +6,19 @@ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
|
6
6
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
7
7
|
var __getProtoOf = Object.getPrototypeOf;
|
|
8
8
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
9
|
+
var __exportAll = (all, no_symbols) => {
|
|
10
|
+
let target = {};
|
|
11
|
+
for (var name in all) {
|
|
12
|
+
__defProp(target, name, {
|
|
13
|
+
get: all[name],
|
|
14
|
+
enumerable: true
|
|
15
|
+
});
|
|
16
|
+
}
|
|
17
|
+
if (!no_symbols) {
|
|
18
|
+
__defProp(target, Symbol.toStringTag, { value: "Module" });
|
|
19
|
+
}
|
|
20
|
+
return target;
|
|
21
|
+
};
|
|
9
22
|
var __copyProps = (to, from, except, desc) => {
|
|
10
23
|
if (from && typeof from === "object" || typeof from === "function") {
|
|
11
24
|
for (var keys = __getOwnPropNames(from), i = 0, n = keys.length, key; i < n; i++) {
|
|
@@ -26,7 +39,6 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
|
|
|
26
39
|
}) : target, mod));
|
|
27
40
|
|
|
28
41
|
//#endregion
|
|
29
|
-
const require_en_us = require('./en-us-Br9JW6Nt.js');
|
|
30
42
|
let _univerjs_core = require("@univerjs/core");
|
|
31
43
|
let cjk_regex = require("cjk-regex");
|
|
32
44
|
cjk_regex = __toESM(cjk_regex);
|
|
@@ -309,14 +321,7 @@ function getFontStyleString(textStyle) {
|
|
|
309
321
|
let originFontSize = defaultFontSize;
|
|
310
322
|
if (textStyle.fs) originFontSize = Math.ceil(textStyle.fs);
|
|
311
323
|
let fontSize = originFontSize;
|
|
312
|
-
|
|
313
|
-
if (textStyle.ff) {
|
|
314
|
-
let fontFamily = textStyle.ff;
|
|
315
|
-
fontFamily = fontFamily.replace(/"/g, "").replace(/'/g, "");
|
|
316
|
-
if (fontFamily.indexOf(" ") > -1) fontFamily = `"${fontFamily}"`;
|
|
317
|
-
if (fontFamily == null) fontFamily = defaultFont;
|
|
318
|
-
fontFamilyResult = fontFamily;
|
|
319
|
-
}
|
|
324
|
+
const fontFamilyResult = normalizeFontFamily(textStyle.ff, defaultFont);
|
|
320
325
|
const { va: baselineOffset } = textStyle;
|
|
321
326
|
if (baselineOffset === _univerjs_core.BaselineOffset.SUBSCRIPT || baselineOffset === _univerjs_core.BaselineOffset.SUPERSCRIPT) {
|
|
322
327
|
const { sbr, spr } = FontCache.getBaselineOffsetInfo(fontFamilyResult, fontSize);
|
|
@@ -331,6 +336,13 @@ function getFontStyleString(textStyle) {
|
|
|
331
336
|
fontFamily: fontFamilyResult
|
|
332
337
|
};
|
|
333
338
|
}
|
|
339
|
+
function normalizeFontFamily(fontFamily, defaultFont) {
|
|
340
|
+
if (!(fontFamily === null || fontFamily === void 0 ? void 0 : fontFamily.trim())) return defaultFont;
|
|
341
|
+
return fontFamily.split(",").map((item) => {
|
|
342
|
+
const family = item.trim().replace(/^['"]|['"]$/g, "");
|
|
343
|
+
return family.includes(" ") ? `"${family}"` : family;
|
|
344
|
+
}).filter(Boolean).join(", ");
|
|
345
|
+
}
|
|
334
346
|
const CJK_LETTER_REG = cjk_regex.letters().toRegExp();
|
|
335
347
|
function hasCJKText(text) {
|
|
336
348
|
return CJK_LETTER_REG.test(text);
|
|
@@ -384,6 +396,9 @@ function hasArabic(text) {
|
|
|
384
396
|
function hasTibetan(text) {
|
|
385
397
|
return /[\u0180-\u024F]/gi.test(text);
|
|
386
398
|
}
|
|
399
|
+
function hasThai(text) {
|
|
400
|
+
return /[\u0E00-\u0E7F]/.test(text);
|
|
401
|
+
}
|
|
387
402
|
function hasSpace(text) {
|
|
388
403
|
return /\s+/g.test(text);
|
|
389
404
|
}
|
|
@@ -650,7 +665,7 @@ function getSystemHighlightColor() {
|
|
|
650
665
|
}
|
|
651
666
|
|
|
652
667
|
//#endregion
|
|
653
|
-
//#region \0@oxc-project+runtime@0.
|
|
668
|
+
//#region \0@oxc-project+runtime@0.133.0/helpers/esm/typeof.js
|
|
654
669
|
function _typeof(o) {
|
|
655
670
|
"@babel/helpers - typeof";
|
|
656
671
|
return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(o) {
|
|
@@ -661,7 +676,7 @@ function _typeof(o) {
|
|
|
661
676
|
}
|
|
662
677
|
|
|
663
678
|
//#endregion
|
|
664
|
-
//#region \0@oxc-project+runtime@0.
|
|
679
|
+
//#region \0@oxc-project+runtime@0.133.0/helpers/esm/toPrimitive.js
|
|
665
680
|
function toPrimitive(t, r) {
|
|
666
681
|
if ("object" != _typeof(t) || !t) return t;
|
|
667
682
|
var e = t[Symbol.toPrimitive];
|
|
@@ -674,14 +689,14 @@ function toPrimitive(t, r) {
|
|
|
674
689
|
}
|
|
675
690
|
|
|
676
691
|
//#endregion
|
|
677
|
-
//#region \0@oxc-project+runtime@0.
|
|
692
|
+
//#region \0@oxc-project+runtime@0.133.0/helpers/esm/toPropertyKey.js
|
|
678
693
|
function toPropertyKey(t) {
|
|
679
694
|
var i = toPrimitive(t, "string");
|
|
680
695
|
return "symbol" == _typeof(i) ? i : i + "";
|
|
681
696
|
}
|
|
682
697
|
|
|
683
698
|
//#endregion
|
|
684
|
-
//#region \0@oxc-project+runtime@0.
|
|
699
|
+
//#region \0@oxc-project+runtime@0.133.0/helpers/esm/defineProperty.js
|
|
685
700
|
function _defineProperty(e, r, t) {
|
|
686
701
|
return (r = toPropertyKey(r)) in e ? Object.defineProperty(e, r, {
|
|
687
702
|
value: t,
|
|
@@ -1697,7 +1712,9 @@ var Vector2 = class Vector2 {
|
|
|
1697
1712
|
function getDevicePixelRatio() {
|
|
1698
1713
|
let _pixelRatio = 1;
|
|
1699
1714
|
const context = createCanvasElement().getContext("2d");
|
|
1700
|
-
_pixelRatio = (
|
|
1715
|
+
_pixelRatio = (() => {
|
|
1716
|
+
return (window.devicePixelRatio || 1) / (context.webkitBackingStorePixelRatio || context.mozBackingStorePixelRatio || context.msBackingStorePixelRatio || context.oBackingStorePixelRatio || context.backingStorePixelRatio || 1);
|
|
1717
|
+
})();
|
|
1701
1718
|
if (_pixelRatio < 1) return 1;
|
|
1702
1719
|
return _pixelRatio;
|
|
1703
1720
|
}
|
|
@@ -2952,6 +2969,37 @@ var Transform = class Transform {
|
|
|
2952
2969
|
}
|
|
2953
2970
|
};
|
|
2954
2971
|
|
|
2972
|
+
//#endregion
|
|
2973
|
+
//#region src/basics/zoom.ts
|
|
2974
|
+
const MIN_ZOOM_RATIO = .1;
|
|
2975
|
+
const MAX_ZOOM_RATIO = 4;
|
|
2976
|
+
const PIXEL_DELTA_TO_ZOOM_RATIO = .008;
|
|
2977
|
+
const MAX_WHEEL_ZOOM_STEP = .14;
|
|
2978
|
+
const MAX_WHEEL_ZOOM_STEP_BELOW_ONE = .07;
|
|
2979
|
+
const LINE_DELTA_PIXEL_SIZE = 16;
|
|
2980
|
+
const PAGE_DELTA_PIXEL_SIZE = 800;
|
|
2981
|
+
const ZOOM_RATIO_PRECISION = 100;
|
|
2982
|
+
function clamp(value, min, max) {
|
|
2983
|
+
return Math.min(max, Math.max(min, value));
|
|
2984
|
+
}
|
|
2985
|
+
function normalizeWheelDelta(event) {
|
|
2986
|
+
const deltaY = Number.isFinite(event.deltaY) ? event.deltaY : 0;
|
|
2987
|
+
const deltaX = Number.isFinite(event.deltaX) ? event.deltaX : 0;
|
|
2988
|
+
let delta = Math.abs(deltaY) >= Math.abs(deltaX) ? deltaY : deltaX;
|
|
2989
|
+
if (delta === 0 && typeof event.wheelDelta === "number") delta = -event.wheelDelta / 3;
|
|
2990
|
+
if (event.deltaMode === EventConstants.DOM_DELTA_LINE) delta *= LINE_DELTA_PIXEL_SIZE;
|
|
2991
|
+
else if (event.deltaMode === EventConstants.DOM_DELTA_PAGE) delta *= PAGE_DELTA_PIXEL_SIZE;
|
|
2992
|
+
return delta;
|
|
2993
|
+
}
|
|
2994
|
+
function getNextWheelZoomRatio(currentRatio, event) {
|
|
2995
|
+
const validCurrentRatio = Number.isFinite(currentRatio) ? currentRatio : 1;
|
|
2996
|
+
const normalizedDelta = normalizeWheelDelta(event);
|
|
2997
|
+
if (normalizedDelta === 0) return clamp(validCurrentRatio, MIN_ZOOM_RATIO, MAX_ZOOM_RATIO);
|
|
2998
|
+
const maxStep = validCurrentRatio < 1 ? MAX_WHEEL_ZOOM_STEP_BELOW_ONE : MAX_WHEEL_ZOOM_STEP;
|
|
2999
|
+
const ratioDelta = clamp(-normalizedDelta * PIXEL_DELTA_TO_ZOOM_RATIO, -maxStep, maxStep);
|
|
3000
|
+
return clamp(Math.round((validCurrentRatio + ratioDelta) * ZOOM_RATIO_PRECISION) / ZOOM_RATIO_PRECISION, MIN_ZOOM_RATIO, MAX_ZOOM_RATIO);
|
|
3001
|
+
}
|
|
3002
|
+
|
|
2955
3003
|
//#endregion
|
|
2956
3004
|
//#region src/base-object.ts
|
|
2957
3005
|
const BASE_OBJECT_ARRAY = [
|
|
@@ -11083,12 +11131,12 @@ length_base[28] = 258;
|
|
|
11083
11131
|
const SHIFT_1 = 11;
|
|
11084
11132
|
const SHIFT_2 = 5;
|
|
11085
11133
|
const SHIFT_1_2 = SHIFT_1 - SHIFT_2;
|
|
11086
|
-
const OMITTED_BMP_INDEX_1_LENGTH =
|
|
11134
|
+
const OMITTED_BMP_INDEX_1_LENGTH = 32;
|
|
11087
11135
|
const INDEX_2_MASK = (1 << SHIFT_1_2) - 1;
|
|
11088
11136
|
const INDEX_SHIFT = 2;
|
|
11089
11137
|
const DATA_MASK = (1 << SHIFT_2) - 1;
|
|
11090
|
-
const LSCP_INDEX_2_OFFSET =
|
|
11091
|
-
const INDEX_1_OFFSET =
|
|
11138
|
+
const LSCP_INDEX_2_OFFSET = 2048;
|
|
11139
|
+
const INDEX_1_OFFSET = 2112;
|
|
11092
11140
|
const DATA_GRANULARITY = 1 << INDEX_SHIFT;
|
|
11093
11141
|
var UnicodeTrie = class {
|
|
11094
11142
|
constructor(data) {
|
|
@@ -12053,6 +12101,17 @@ var Liquid = class {
|
|
|
12053
12101
|
}
|
|
12054
12102
|
};
|
|
12055
12103
|
|
|
12104
|
+
//#endregion
|
|
12105
|
+
//#region src/components/docs/table-render-viewport.ts
|
|
12106
|
+
let docsTableRenderViewportProvider = null;
|
|
12107
|
+
function setDocsTableRenderViewportProvider(provider) {
|
|
12108
|
+
docsTableRenderViewportProvider = provider;
|
|
12109
|
+
}
|
|
12110
|
+
function getDocsTableRenderViewport(unitId, tableId) {
|
|
12111
|
+
var _docsTableRenderViewp;
|
|
12112
|
+
return (_docsTableRenderViewp = docsTableRenderViewportProvider === null || docsTableRenderViewportProvider === void 0 ? void 0 : docsTableRenderViewportProvider(unitId, tableId)) !== null && _docsTableRenderViewp !== void 0 ? _docsTableRenderViewp : null;
|
|
12113
|
+
}
|
|
12114
|
+
|
|
12056
12115
|
//#endregion
|
|
12057
12116
|
//#region src/components/docs/view-model/data-stream-tree-node.ts
|
|
12058
12117
|
var DataStreamTreeNode = class DataStreamTreeNode {
|
|
@@ -12221,6 +12280,17 @@ function parseDataStreamToTree(dataStream, tables) {
|
|
|
12221
12280
|
const tableRowList = [];
|
|
12222
12281
|
const tableCellList = [];
|
|
12223
12282
|
const currentBlocks = [];
|
|
12283
|
+
const getParagraphList = () => tableCellList.length > 0 ? cellParagraphList : paragraphList;
|
|
12284
|
+
const appendToPreviousParagraph = (char) => {
|
|
12285
|
+
const tempParagraphList = getParagraphList();
|
|
12286
|
+
const lastParagraph = tempParagraphList[tempParagraphList.length - 1];
|
|
12287
|
+
if (lastParagraph) {
|
|
12288
|
+
var _lastParagraph$conten;
|
|
12289
|
+
lastParagraph.content = `${(_lastParagraph$conten = lastParagraph.content) !== null && _lastParagraph$conten !== void 0 ? _lastParagraph$conten : ""}${char}`;
|
|
12290
|
+
return true;
|
|
12291
|
+
}
|
|
12292
|
+
return false;
|
|
12293
|
+
};
|
|
12224
12294
|
for (let i = 0; i < dataStreamLen; i++) {
|
|
12225
12295
|
const char = dataStream[i];
|
|
12226
12296
|
if (char === _univerjs_core.DataStreamTreeTokenType.PARAGRAPH) {
|
|
@@ -12281,6 +12351,9 @@ function parseDataStreamToTree(dataStream, tables) {
|
|
|
12281
12351
|
const cellNode = tableCellList.pop();
|
|
12282
12352
|
const lastRow = tableRowList[tableRowList.length - 1];
|
|
12283
12353
|
batchParent(lastRow, [cellNode], _univerjs_core.DataStreamTreeNodeType.TABLE_ROW);
|
|
12354
|
+
} else if (char === _univerjs_core.DataStreamTreeTokenType.BLOCK_START) content += char;
|
|
12355
|
+
else if (char === _univerjs_core.DataStreamTreeTokenType.BLOCK_END) {
|
|
12356
|
+
if (content.length > 0 || !appendToPreviousParagraph(char)) content += char;
|
|
12284
12357
|
} else if (char === _univerjs_core.DataStreamTreeTokenType.CUSTOM_BLOCK) {
|
|
12285
12358
|
currentBlocks.push(i);
|
|
12286
12359
|
content += char;
|
|
@@ -12597,6 +12670,8 @@ function _createSkeletonWordOrLetter(glyphType, content, config, glyphWidth, gly
|
|
|
12597
12670
|
_univerjs_core.DataStreamTreeTokenType.TABLE_ROW_END,
|
|
12598
12671
|
_univerjs_core.DataStreamTreeTokenType.TABLE_CELL_START,
|
|
12599
12672
|
_univerjs_core.DataStreamTreeTokenType.TABLE_CELL_END,
|
|
12673
|
+
_univerjs_core.DataStreamTreeTokenType.BLOCK_START,
|
|
12674
|
+
_univerjs_core.DataStreamTreeTokenType.BLOCK_END,
|
|
12600
12675
|
_univerjs_core.DataStreamTreeTokenType.CUSTOM_RANGE_START,
|
|
12601
12676
|
_univerjs_core.DataStreamTreeTokenType.CUSTOM_RANGE_END,
|
|
12602
12677
|
_univerjs_core.DataStreamTreeTokenType.COLUMN_BREAK,
|
|
@@ -13106,7 +13181,16 @@ function createTableSkeleton(ctx, curPage, viewModel, tableNode, sectionBreakCon
|
|
|
13106
13181
|
let left = 0;
|
|
13107
13182
|
let rowHeight = 0;
|
|
13108
13183
|
for (const cellNode of cellNodes) {
|
|
13109
|
-
const
|
|
13184
|
+
const col = cellNodes.indexOf(cellNode);
|
|
13185
|
+
const cellConfig = rowSource.tableCells[col];
|
|
13186
|
+
if (isCoveredTableCell(cellConfig)) {
|
|
13187
|
+
const cellPageSkeleton = createMergedCoveredCellPage(ctx, sectionBreakConfig, table, row, col, rowSkeleton);
|
|
13188
|
+
cellPageSkeleton.left = left;
|
|
13189
|
+
if (shouldAdvanceTableCellLeft(table, row, col)) left += cellPageSkeleton.pageWidth;
|
|
13190
|
+
rowSkeleton.cells.push(cellPageSkeleton);
|
|
13191
|
+
continue;
|
|
13192
|
+
}
|
|
13193
|
+
const cellPageSkeleton = createSkeletonCellPages(ctx, viewModel, cellNode, sectionBreakConfig, table, row, col)[0];
|
|
13110
13194
|
const { marginTop = 0, marginBottom = 0 } = cellPageSkeleton;
|
|
13111
13195
|
const pageHeight = cellPageSkeleton.height + marginTop + marginBottom;
|
|
13112
13196
|
cellPageSkeleton.left = left;
|
|
@@ -13116,7 +13200,7 @@ function createTableSkeleton(ctx, curPage, viewModel, tableNode, sectionBreakCon
|
|
|
13116
13200
|
rowHeight = Math.max(rowHeight, pageHeight);
|
|
13117
13201
|
}
|
|
13118
13202
|
if (hRule === _univerjs_core.TableRowHeightRule.AT_LEAST) rowHeight = Math.max(rowHeight, val.v);
|
|
13119
|
-
else if (hRule === _univerjs_core.TableRowHeightRule.EXACT) rowHeight = val.v;
|
|
13203
|
+
else if (hRule === _univerjs_core.TableRowHeightRule.EXACT) rowHeight = Math.max(rowHeight, val.v);
|
|
13120
13204
|
for (const cellPageSkeleton of rowSkeleton.cells) cellPageSkeleton.pageHeight = rowHeight;
|
|
13121
13205
|
const rowConfig = table.tableRows[row];
|
|
13122
13206
|
for (let i = 0; i < rowConfig.tableCells.length; i++) {
|
|
@@ -13147,6 +13231,7 @@ function createTableSkeleton(ctx, curPage, viewModel, tableNode, sectionBreakCon
|
|
|
13147
13231
|
}
|
|
13148
13232
|
tableSkeleton.width = tableWidth;
|
|
13149
13233
|
tableSkeleton.height = rowTop;
|
|
13234
|
+
applyMergedCellSpanHeights(tableSkeleton);
|
|
13150
13235
|
const { pageWidth, marginLeft = 0, marginRight = 0 } = curPage;
|
|
13151
13236
|
tableSkeleton.left = _getTableLeft(pageWidth - marginLeft - marginRight, tableWidth, table.align, table.indent);
|
|
13152
13237
|
return tableSkeleton;
|
|
@@ -13170,14 +13255,14 @@ function createTableSkeletons(ctx, curPage, viewModel, tableNode, sectionBreakCo
|
|
|
13170
13255
|
fromCurrentPage: false
|
|
13171
13256
|
};
|
|
13172
13257
|
}
|
|
13173
|
-
const
|
|
13258
|
+
const repeatRows = getLeadingRepeatHeaderRows(table, rowNodes);
|
|
13174
13259
|
const curTableSkeleton = getNullTableSkeleton(startIndex, endIndex, table);
|
|
13175
13260
|
const createCache = {
|
|
13176
13261
|
rowTop: 0,
|
|
13177
13262
|
tableWidth: 0,
|
|
13178
13263
|
remainHeight: availableHeight,
|
|
13179
|
-
|
|
13180
|
-
|
|
13264
|
+
repeatRows,
|
|
13265
|
+
repeatRowsHeight: 0
|
|
13181
13266
|
};
|
|
13182
13267
|
skeTables.push(curTableSkeleton);
|
|
13183
13268
|
for (const rowNode of rowNodes) dealWithTableRow(ctx, curPage, skeTables, viewModel, sectionBreakConfig, rowNode, rowNodes.indexOf(rowNode), table, createCache);
|
|
@@ -13193,6 +13278,7 @@ function updateTableSkeletonsPosition(cache, curPage, skeTables, table) {
|
|
|
13193
13278
|
const tableLeft = _getTableLeft(pageWidth - marginLeft - marginRight, tableWidth, table.align, table.indent);
|
|
13194
13279
|
let tableIndex = 0;
|
|
13195
13280
|
for (const tableSkeleton of skeTables) {
|
|
13281
|
+
applyMergedCellSpanHeights(tableSkeleton);
|
|
13196
13282
|
tableSkeleton.width = tableWidth;
|
|
13197
13283
|
tableSkeleton.left = tableLeft;
|
|
13198
13284
|
tableSkeleton.st = tableSkeleton.rows[0].st - 1;
|
|
@@ -13209,7 +13295,7 @@ function getCurTableSkeleton(skeTables) {
|
|
|
13209
13295
|
function getAvailableHeight(curPage, cache, hasRepeatHeader) {
|
|
13210
13296
|
const { marginTop, marginBottom, pageHeight } = curPage;
|
|
13211
13297
|
let pageContentHeight = pageHeight - marginTop - marginBottom;
|
|
13212
|
-
if (hasRepeatHeader) pageContentHeight -= cache.
|
|
13298
|
+
if (hasRepeatHeader) pageContentHeight -= cache.repeatRowsHeight;
|
|
13213
13299
|
return pageContentHeight;
|
|
13214
13300
|
}
|
|
13215
13301
|
function dealWithTableRow(ctx, curPage, skeTables, viewModel, sectionBreakConfig, rowNode, row, table, cache, isRepeatRow = false) {
|
|
@@ -13227,17 +13313,13 @@ function dealWithTableRow(ctx, curPage, skeTables, viewModel, sectionBreakConfig
|
|
|
13227
13313
|
const rowHeights = [0];
|
|
13228
13314
|
for (const cellNode of cellNodes) {
|
|
13229
13315
|
const col = cellNodes.indexOf(cellNode);
|
|
13230
|
-
const
|
|
13231
|
-
|
|
13232
|
-
|
|
13233
|
-
|
|
13234
|
-
rowSkeleton.cells = [...new Array(colCount)].map((_, i) => {
|
|
13235
|
-
const cellSkeleton = createNullCellPage(ctx, sectionBreakConfig, table, row, i).page;
|
|
13236
|
-
cellSkeleton.parent = rowSkeleton;
|
|
13237
|
-
return cellSkeleton;
|
|
13238
|
-
});
|
|
13239
|
-
rowSkeletons.push(rowSkeleton);
|
|
13316
|
+
const cellConfig = rowSource.tableCells[col];
|
|
13317
|
+
if (isCoveredTableCell(cellConfig)) {
|
|
13318
|
+
if (rowSkeletons.length === 0) rowSkeletons.push(createNullRowSkeletonWithCells(ctx, sectionBreakConfig, table, row, startIndex, endIndex, rowSource, isRepeatRow));
|
|
13319
|
+
continue;
|
|
13240
13320
|
}
|
|
13321
|
+
const cellPageSkeletons = createSkeletonCellPages(ctx, viewModel, cellNode, sectionBreakConfig, table, row, col, canRowSplit && !needOpenNewTable ? cache.remainHeight : availableHeight, pageContentHeight);
|
|
13322
|
+
while (rowSkeletons.length < cellPageSkeletons.length) rowSkeletons.push(createNullRowSkeletonWithCells(ctx, sectionBreakConfig, table, row, startIndex, endIndex, rowSource, isRepeatRow));
|
|
13241
13323
|
while (rowHeights.length < cellPageSkeletons.length) rowHeights.push(0);
|
|
13242
13324
|
for (const cellPageSkeleton of cellPageSkeletons) {
|
|
13243
13325
|
const { marginTop: cellMarginTop = 0, marginBottom: cellMarginBottom = 0 } = cellPageSkeleton;
|
|
@@ -13252,18 +13334,20 @@ function dealWithTableRow(ctx, curPage, skeTables, viewModel, sectionBreakConfig
|
|
|
13252
13334
|
for (const rowSke of rowSkeletons) {
|
|
13253
13335
|
const rowIndex = rowSkeletons.indexOf(rowSke);
|
|
13254
13336
|
if (hRule === _univerjs_core.TableRowHeightRule.AT_LEAST) rowHeights[rowIndex] = Math.max(rowHeights[rowIndex], val.v);
|
|
13255
|
-
else if (hRule === _univerjs_core.TableRowHeightRule.EXACT) rowHeights[rowIndex] = val.v;
|
|
13337
|
+
else if (hRule === _univerjs_core.TableRowHeightRule.EXACT) rowHeights[rowIndex] = Math.max(rowHeights[rowIndex], val.v);
|
|
13256
13338
|
rowHeights[rowIndex] = Math.min(rowHeights[rowIndex], pageContentHeight);
|
|
13257
13339
|
let left = 0;
|
|
13258
|
-
for (
|
|
13340
|
+
for (let col = 0; col < rowSke.cells.length; col++) {
|
|
13341
|
+
const cellPageSkeleton = rowSke.cells[col];
|
|
13342
|
+
if (cellPageSkeleton == null) continue;
|
|
13259
13343
|
cellPageSkeleton.left = left;
|
|
13260
13344
|
cellPageSkeleton.pageHeight = rowHeights[rowIndex];
|
|
13261
|
-
left += cellPageSkeleton.pageWidth;
|
|
13345
|
+
if (shouldAdvanceTableCellLeft(table, rowSke.index, col)) left += cellPageSkeleton.pageWidth;
|
|
13262
13346
|
cache.tableWidth = Math.max(cache.tableWidth, left);
|
|
13263
13347
|
}
|
|
13264
13348
|
rowSke.height = rowHeights[rowIndex];
|
|
13265
13349
|
}
|
|
13266
|
-
if (
|
|
13350
|
+
if (!isRepeatRow && row < cache.repeatRows.length) cache.repeatRowsHeight += rowHeights.reduce((total, height) => total + height, 0);
|
|
13267
13351
|
for (const rowSkeleton of rowSkeletons) _verticalAlignInCell(rowSkeleton, rowSource);
|
|
13268
13352
|
while (rowSkeletons.length > 0) {
|
|
13269
13353
|
const rowSkeleton = rowSkeletons.shift();
|
|
@@ -13274,10 +13358,11 @@ function dealWithTableRow(ctx, curPage, skeTables, viewModel, sectionBreakConfig
|
|
|
13274
13358
|
if (curTableSkeleton.rows.length > 0) {
|
|
13275
13359
|
curTableSkeleton = getNullTableSkeleton(startIndex, endIndex, table);
|
|
13276
13360
|
skeTables.push(curTableSkeleton);
|
|
13277
|
-
if (cache.
|
|
13278
|
-
const FIRST_ROW_INDEX = 0;
|
|
13361
|
+
if (cache.repeatRows.length > 0 && isRepeatRow === false && row >= cache.repeatRows.length && rowSkeleton.index !== lastRow.index) {
|
|
13279
13362
|
cache.remainHeight = getAvailableHeight(curPage, cache, false);
|
|
13280
|
-
|
|
13363
|
+
cache.repeatRows.forEach((repeatRow, repeatRowIndex) => {
|
|
13364
|
+
dealWithTableRow(ctx, curPage, skeTables, viewModel, sectionBreakConfig, repeatRow, repeatRowIndex, table, cache, true);
|
|
13365
|
+
});
|
|
13281
13366
|
}
|
|
13282
13367
|
}
|
|
13283
13368
|
}
|
|
@@ -13290,6 +13375,15 @@ function dealWithTableRow(ctx, curPage, skeTables, viewModel, sectionBreakConfig
|
|
|
13290
13375
|
cache.rowTop += rowSkeleton.height;
|
|
13291
13376
|
}
|
|
13292
13377
|
}
|
|
13378
|
+
function getLeadingRepeatHeaderRows(table, rowNodes) {
|
|
13379
|
+
const repeatRows = [];
|
|
13380
|
+
for (let index = 0; index < rowNodes.length; index++) {
|
|
13381
|
+
var _table$tableRows$inde;
|
|
13382
|
+
if (((_table$tableRows$inde = table.tableRows[index]) === null || _table$tableRows$inde === void 0 ? void 0 : _table$tableRows$inde.repeatHeaderRow) !== _univerjs_core.BooleanNumber.TRUE) break;
|
|
13383
|
+
repeatRows.push(rowNodes[index]);
|
|
13384
|
+
}
|
|
13385
|
+
return repeatRows;
|
|
13386
|
+
}
|
|
13293
13387
|
function _verticalAlignInCell(rowSkeleton, rowSource) {
|
|
13294
13388
|
for (let i = 0; i < rowSource.tableCells.length; i++) {
|
|
13295
13389
|
const cellConfig = rowSource.tableCells[i];
|
|
@@ -13314,6 +13408,75 @@ function _verticalAlignInCell(rowSkeleton, rowSource) {
|
|
|
13314
13408
|
cellPageSkeleton.marginTop = marginTop;
|
|
13315
13409
|
}
|
|
13316
13410
|
}
|
|
13411
|
+
function createNullRowSkeletonWithCells(ctx, sectionBreakConfig, table, row, startIndex, endIndex, rowSource, isRepeatRow = false) {
|
|
13412
|
+
const rowSkeleton = _getNullTableRowSkeleton(startIndex, endIndex, row, rowSource, isRepeatRow);
|
|
13413
|
+
const colCount = rowSource.tableCells.length;
|
|
13414
|
+
rowSkeleton.cells = Array.from({ length: colCount }, (_, col) => createMergedAwareNullCellPage(ctx, sectionBreakConfig, table, row, col, rowSkeleton));
|
|
13415
|
+
return rowSkeleton;
|
|
13416
|
+
}
|
|
13417
|
+
function createMergedCoveredCellPage(ctx, sectionBreakConfig, table, row, col, rowSkeleton) {
|
|
13418
|
+
return createMergedAwareNullCellPage(ctx, sectionBreakConfig, table, row, col, rowSkeleton);
|
|
13419
|
+
}
|
|
13420
|
+
function applyMergedCellSpanHeights(tableSkeleton) {
|
|
13421
|
+
var _tableSkeleton$tableS, _tableSkeleton$tableS2;
|
|
13422
|
+
const tableRows = (_tableSkeleton$tableS = (_tableSkeleton$tableS2 = tableSkeleton.tableSource) === null || _tableSkeleton$tableS2 === void 0 ? void 0 : _tableSkeleton$tableS2.tableRows) !== null && _tableSkeleton$tableS !== void 0 ? _tableSkeleton$tableS : [];
|
|
13423
|
+
if (tableRows.length === 0) return;
|
|
13424
|
+
const skeletonRowsByIndex = new Map(tableSkeleton.rows.map((row) => [row.index, row]));
|
|
13425
|
+
tableRows.forEach((rowSource, rowIndex) => {
|
|
13426
|
+
rowSource.tableCells.forEach((cellConfig, columnIndex) => {
|
|
13427
|
+
var _cellConfig$rowSpan, _cellConfig$columnSpa;
|
|
13428
|
+
const rowSpan = (_cellConfig$rowSpan = cellConfig.rowSpan) !== null && _cellConfig$rowSpan !== void 0 ? _cellConfig$rowSpan : 1;
|
|
13429
|
+
const columnSpan = (_cellConfig$columnSpa = cellConfig.columnSpan) !== null && _cellConfig$columnSpa !== void 0 ? _cellConfig$columnSpa : 1;
|
|
13430
|
+
if (rowSpan <= 1 && columnSpan <= 1) return;
|
|
13431
|
+
const masterRow = skeletonRowsByIndex.get(rowIndex);
|
|
13432
|
+
const masterCell = masterRow === null || masterRow === void 0 ? void 0 : masterRow.cells[columnIndex];
|
|
13433
|
+
if (!masterCell || masterCell.isMergedCellCovered) return;
|
|
13434
|
+
let pageHeight = 0;
|
|
13435
|
+
for (let row = rowIndex; row < rowIndex + rowSpan; row++) {
|
|
13436
|
+
var _skeletonRowsByIndex$, _skeletonRowsByIndex$2;
|
|
13437
|
+
pageHeight += (_skeletonRowsByIndex$ = (_skeletonRowsByIndex$2 = skeletonRowsByIndex.get(row)) === null || _skeletonRowsByIndex$2 === void 0 ? void 0 : _skeletonRowsByIndex$2.height) !== null && _skeletonRowsByIndex$ !== void 0 ? _skeletonRowsByIndex$ : 0;
|
|
13438
|
+
}
|
|
13439
|
+
if (pageHeight > 0) masterCell.pageHeight = pageHeight;
|
|
13440
|
+
});
|
|
13441
|
+
});
|
|
13442
|
+
}
|
|
13443
|
+
function createMergedAwareNullCellPage(ctx, sectionBreakConfig, table, row, col, rowSkeleton) {
|
|
13444
|
+
const cellSkeleton = createNullCellPage(ctx, sectionBreakConfig, table, row, col).page;
|
|
13445
|
+
cellSkeleton.parent = rowSkeleton;
|
|
13446
|
+
if (isCoveredTableCell(table.tableRows[row].tableCells[col])) Object.assign(cellSkeleton, { isMergedCellCovered: true });
|
|
13447
|
+
return cellSkeleton;
|
|
13448
|
+
}
|
|
13449
|
+
function shouldAdvanceTableCellLeft(table, row, col) {
|
|
13450
|
+
var _table$tableRows$row;
|
|
13451
|
+
if (!isCoveredTableCell((_table$tableRows$row = table.tableRows[row]) === null || _table$tableRows$row === void 0 ? void 0 : _table$tableRows$row.tableCells[col])) return true;
|
|
13452
|
+
const masterCell = findMergedMasterCell(table, row, col);
|
|
13453
|
+
if (masterCell == null) return true;
|
|
13454
|
+
return masterCell.row !== row;
|
|
13455
|
+
}
|
|
13456
|
+
function findMergedMasterCell(table, row, col) {
|
|
13457
|
+
for (let rowIndex = 0; rowIndex <= row; rowIndex++) {
|
|
13458
|
+
const rowSource = table.tableRows[rowIndex];
|
|
13459
|
+
if (rowSource == null) continue;
|
|
13460
|
+
for (let columnIndex = 0; columnIndex < rowSource.tableCells.length; columnIndex++) {
|
|
13461
|
+
var _cellConfig$rowSpan2, _cellConfig$columnSpa2;
|
|
13462
|
+
const cellConfig = rowSource.tableCells[columnIndex];
|
|
13463
|
+
if (isCoveredTableCell(cellConfig)) continue;
|
|
13464
|
+
const rowSpan = Math.max(1, (_cellConfig$rowSpan2 = cellConfig.rowSpan) !== null && _cellConfig$rowSpan2 !== void 0 ? _cellConfig$rowSpan2 : 1);
|
|
13465
|
+
const columnSpan = Math.max(1, (_cellConfig$columnSpa2 = cellConfig.columnSpan) !== null && _cellConfig$columnSpa2 !== void 0 ? _cellConfig$columnSpa2 : 1);
|
|
13466
|
+
if (rowSpan <= 1 && columnSpan <= 1) continue;
|
|
13467
|
+
const containsRow = row >= rowIndex && row < rowIndex + rowSpan;
|
|
13468
|
+
const containsColumn = col >= columnIndex && col < columnIndex + columnSpan;
|
|
13469
|
+
if (containsRow && containsColumn) return {
|
|
13470
|
+
row: rowIndex,
|
|
13471
|
+
col: columnIndex
|
|
13472
|
+
};
|
|
13473
|
+
}
|
|
13474
|
+
}
|
|
13475
|
+
return null;
|
|
13476
|
+
}
|
|
13477
|
+
function isCoveredTableCell(cellConfig) {
|
|
13478
|
+
return (cellConfig === null || cellConfig === void 0 ? void 0 : cellConfig.rowSpan) === 0 || (cellConfig === null || cellConfig === void 0 ? void 0 : cellConfig.columnSpan) === 0;
|
|
13479
|
+
}
|
|
13317
13480
|
function _getTableLeft(pageWidth, tableWidth, align, indent = { v: 0 }) {
|
|
13318
13481
|
switch (align) {
|
|
13319
13482
|
case _univerjs_core.TableAlignmentType.START: return indent.v;
|
|
@@ -14419,13 +14582,13 @@ const DEFAULT_PAGE_SIZE = {
|
|
|
14419
14582
|
const DEFAULT_MODERN_DOCUMENT_STYLE = {
|
|
14420
14583
|
pageNumberStart: 1,
|
|
14421
14584
|
pageSize: {
|
|
14422
|
-
width:
|
|
14585
|
+
width: _univerjs_core.MODERN_DOCUMENT_WIDTH[_univerjs_core.ModernDocumentWidthMode.MEDIUM],
|
|
14423
14586
|
height: Number.POSITIVE_INFINITY
|
|
14424
14587
|
},
|
|
14425
|
-
marginTop:
|
|
14426
|
-
marginBottom:
|
|
14427
|
-
marginRight:
|
|
14428
|
-
marginLeft:
|
|
14588
|
+
marginTop: _univerjs_core.MODERN_DOCUMENT_DEFAULT_MARGIN,
|
|
14589
|
+
marginBottom: _univerjs_core.MODERN_DOCUMENT_DEFAULT_MARGIN,
|
|
14590
|
+
marginRight: _univerjs_core.MODERN_DOCUMENT_DEFAULT_MARGIN,
|
|
14591
|
+
marginLeft: _univerjs_core.MODERN_DOCUMENT_DEFAULT_MARGIN,
|
|
14429
14592
|
renderConfig: {
|
|
14430
14593
|
vertexAngle: 0,
|
|
14431
14594
|
centerAngle: 0,
|
|
@@ -14455,8 +14618,13 @@ function prepareSectionBreakConfig(ctx, nodeIndex) {
|
|
|
14455
14618
|
const { documentFlavor } = documentStyle;
|
|
14456
14619
|
let sectionBreak = viewModel.getSectionBreak(sectionNode.endIndex) || DEFAULT_SECTION_BREAK;
|
|
14457
14620
|
if (documentFlavor === _univerjs_core.DocumentFlavor.MODERN) {
|
|
14621
|
+
var _documentStyle$pageSi, _documentStyle$pageSi2;
|
|
14622
|
+
const modernPageWidth = (_documentStyle$pageSi = (_documentStyle$pageSi2 = documentStyle.pageSize) === null || _documentStyle$pageSi2 === void 0 ? void 0 : _documentStyle$pageSi2.width) !== null && _documentStyle$pageSi !== void 0 ? _documentStyle$pageSi : DEFAULT_MODERN_DOCUMENT_STYLE.pageSize.width;
|
|
14458
14623
|
sectionBreak = Object.assign({}, sectionBreak, DEFAULT_MODERN_SECTION_BREAK);
|
|
14459
|
-
documentStyle = Object.assign({}, documentStyle, DEFAULT_MODERN_DOCUMENT_STYLE
|
|
14624
|
+
documentStyle = Object.assign({}, documentStyle, DEFAULT_MODERN_DOCUMENT_STYLE, { pageSize: {
|
|
14625
|
+
...DEFAULT_MODERN_DOCUMENT_STYLE.pageSize,
|
|
14626
|
+
width: modernPageWidth
|
|
14627
|
+
} });
|
|
14460
14628
|
}
|
|
14461
14629
|
const { pageNumberStart: global_pageNumberStart = 1, pageSize: global_pageSize = DEFAULT_PAGE_SIZE, pageOrient: global_pageOrient = _univerjs_core.PageOrientType.PORTRAIT, defaultHeaderId: global_defaultHeaderId, defaultFooterId: global_defaultFooterId, evenPageHeaderId: global_evenPageHeaderId, evenPageFooterId: global_evenPageFooterId, firstPageHeaderId: global_firstPageHeaderId, firstPageFooterId: global_firstPageFooterId, useFirstPageHeaderFooter: global_useFirstPageHeaderFooter, evenAndOddHeaders: global_evenAndOddHeaders, marginTop: global_marginTop = 0, marginBottom: global_marginBottom = 0, marginRight: global_marginRight = 0, marginLeft: global_marginLeft = 0, marginHeader: global_marginHeader = 0, marginFooter: global_marginFooter = 0, autoHyphenation = _univerjs_core.BooleanNumber.FALSE, doNotHyphenateCaps = _univerjs_core.BooleanNumber.FALSE, consecutiveHyphenLimit = Number.POSITIVE_INFINITY, hyphenationZone, renderConfig: global_renderConfig = {
|
|
14462
14630
|
horizontalAlign: _univerjs_core.HorizontalAlign.LEFT,
|
|
@@ -14693,12 +14861,14 @@ function _createSkeletonHeaderFooter(ctx, headerOrFooterViewModel, sectionBreakC
|
|
|
14693
14861
|
return page;
|
|
14694
14862
|
}
|
|
14695
14863
|
function createNullCellPage(ctx, sectionBreakConfig, tableConfig, row, col, availableHeight = Number.POSITIVE_INFINITY, maxCellPageHeight = Number.POSITIVE_INFINITY) {
|
|
14696
|
-
var _ref, _cellConfig$margin;
|
|
14864
|
+
var _ref, _cellConfig$margin, _cellConfig$columnSpa;
|
|
14697
14865
|
const { lists, footerTreeMap, headerTreeMap, localeService, drawings } = sectionBreakConfig;
|
|
14698
14866
|
const { skeletonResourceReference } = ctx;
|
|
14699
14867
|
const { cellMargin, tableRows, tableColumns, tableId } = tableConfig;
|
|
14700
|
-
const
|
|
14701
|
-
const
|
|
14868
|
+
const cellConfig = tableRows[row].tableCells[col];
|
|
14869
|
+
const { start = { v: 10 }, end = { v: 10 }, top = { v: 5 }, bottom = { v: 5 } } = (_ref = (_cellConfig$margin = cellConfig.margin) !== null && _cellConfig$margin !== void 0 ? _cellConfig$margin : cellMargin) !== null && _ref !== void 0 ? _ref : {};
|
|
14870
|
+
const columnSpan = Math.max(1, (_cellConfig$columnSpa = cellConfig.columnSpan) !== null && _cellConfig$columnSpa !== void 0 ? _cellConfig$columnSpa : 1);
|
|
14871
|
+
const pageWidth = tableColumns.slice(col, col + columnSpan).reduce((sum, column) => sum + column.size.width.v, 0);
|
|
14702
14872
|
const pageHeight = maxCellPageHeight;
|
|
14703
14873
|
const cellSectionBreakConfig = {
|
|
14704
14874
|
lists,
|
|
@@ -14727,6 +14897,7 @@ function createNullCellPage(ctx, sectionBreakConfig, tableConfig, row, col, avai
|
|
|
14727
14897
|
};
|
|
14728
14898
|
}
|
|
14729
14899
|
function createSkeletonCellPages(ctx, viewModel, cellNode, sectionBreakConfig, tableConfig, row, col, availableHeight = Number.POSITIVE_INFINITY, maxCellPageHeight = Number.POSITIVE_INFINITY) {
|
|
14900
|
+
var _ctx$dataModel, _ctx$dataModel$getBod;
|
|
14730
14901
|
const sectionNode = cellNode.children[0];
|
|
14731
14902
|
const { page: areaPage, sectionBreakConfig: cellSectionBreakConfig } = createNullCellPage(ctx, sectionBreakConfig, tableConfig, row, col, availableHeight, maxCellPageHeight);
|
|
14732
14903
|
const { pages } = dealWithSection(ctx, viewModel, sectionNode, areaPage, cellSectionBreakConfig);
|
|
@@ -14735,9 +14906,36 @@ function createSkeletonCellPages(ctx, viewModel, cellNode, sectionBreakConfig, t
|
|
|
14735
14906
|
p.segmentId = tableConfig.tableId;
|
|
14736
14907
|
}
|
|
14737
14908
|
updateBlockIndex(pages, cellNode.startIndex);
|
|
14909
|
+
applyTrailingCellBlockRangeSpaceBelow(pages, (_ctx$dataModel = ctx.dataModel) === null || _ctx$dataModel === void 0 || (_ctx$dataModel$getBod = _ctx$dataModel.getBody) === null || _ctx$dataModel$getBod === void 0 ? void 0 : _ctx$dataModel$getBod.call(_ctx$dataModel), cellNode.endIndex);
|
|
14738
14910
|
updateInlineDrawingCoordsAndBorder(ctx, pages);
|
|
14911
|
+
expandCellPageHeightForInlineDrawings(pages);
|
|
14739
14912
|
return pages;
|
|
14740
14913
|
}
|
|
14914
|
+
function expandCellPageHeightForInlineDrawings(pages) {
|
|
14915
|
+
for (const page of pages) {
|
|
14916
|
+
var _page$skeDrawings;
|
|
14917
|
+
(_page$skeDrawings = page.skeDrawings) === null || _page$skeDrawings === void 0 || _page$skeDrawings.forEach((drawing) => {
|
|
14918
|
+
var _drawing$drawingOrigi, _drawing$aTop, _drawing$height;
|
|
14919
|
+
if (((_drawing$drawingOrigi = drawing.drawingOrigin) === null || _drawing$drawingOrigi === void 0 ? void 0 : _drawing$drawingOrigi.layoutType) !== _univerjs_core.PositionedObjectLayoutType.INLINE) return;
|
|
14920
|
+
const drawingBottom = ((_drawing$aTop = drawing.aTop) !== null && _drawing$aTop !== void 0 ? _drawing$aTop : 0) + ((_drawing$height = drawing.height) !== null && _drawing$height !== void 0 ? _drawing$height : 0);
|
|
14921
|
+
if (drawingBottom > page.height) page.height = drawingBottom;
|
|
14922
|
+
});
|
|
14923
|
+
}
|
|
14924
|
+
}
|
|
14925
|
+
function applyTrailingCellBlockRangeSpaceBelow(pages, body, cellEndIndex) {
|
|
14926
|
+
const blockRanges = body === null || body === void 0 ? void 0 : body.blockRanges;
|
|
14927
|
+
const trailingBlockRangeSpace = 28;
|
|
14928
|
+
if (!(blockRanges === null || blockRanges === void 0 ? void 0 : blockRanges.length)) return;
|
|
14929
|
+
for (const page of pages) {
|
|
14930
|
+
var _page$sections$at, _body$paragraphs;
|
|
14931
|
+
const lastLine = (_page$sections$at = page.sections.at(-1)) === null || _page$sections$at === void 0 || (_page$sections$at = _page$sections$at.columns.at(-1)) === null || _page$sections$at === void 0 ? void 0 : _page$sections$at.lines.at(-1);
|
|
14932
|
+
if (!lastLine) continue;
|
|
14933
|
+
const paragraphIndex = lastLine.paragraphIndex;
|
|
14934
|
+
if (!blockRanges.some((range) => range.startIndex < paragraphIndex && paragraphIndex < range.endIndex)) continue;
|
|
14935
|
+
if (body === null || body === void 0 || (_body$paragraphs = body.paragraphs) === null || _body$paragraphs === void 0 ? void 0 : _body$paragraphs.some((paragraph) => paragraph.startIndex > paragraphIndex && paragraph.startIndex < cellEndIndex)) continue;
|
|
14936
|
+
page.height += lastLine.spaceBelowApply || trailingBlockRangeSpace;
|
|
14937
|
+
}
|
|
14938
|
+
}
|
|
14741
14939
|
function _getVerticalMargin(marginTB, headerOrFooter, pageHeight) {
|
|
14742
14940
|
if (!headerOrFooter || headerOrFooter.sections[0].columns[0].lines.length === 0) return marginTB;
|
|
14743
14941
|
const HeaderFooterPageHeight = headerOrFooter.height + headerOrFooter.marginTop + headerOrFooter.marginBottom;
|
|
@@ -15144,6 +15342,11 @@ function ___getLevelAndSuffix(levelAndSuffixPre) {
|
|
|
15144
15342
|
|
|
15145
15343
|
//#endregion
|
|
15146
15344
|
//#region src/components/docs/layout/block/paragraph/linebreaking.ts
|
|
15345
|
+
const BLOCK_LAYOUT_OUTER_SPACING_MAP = new Map([
|
|
15346
|
+
["callout", 34],
|
|
15347
|
+
["code", 32],
|
|
15348
|
+
["quote", 24]
|
|
15349
|
+
]);
|
|
15147
15350
|
function _getListLevelAncestors(bullet, listLevel) {
|
|
15148
15351
|
if (!bullet || !listLevel) return;
|
|
15149
15352
|
const { listId, nestingLevel } = bullet;
|
|
@@ -15170,6 +15373,57 @@ function _updateListLevelAncestors(paragraph, bullet, bulletSkeleton, listLevel)
|
|
|
15170
15373
|
cacheItem.splice(nestingLevel + 1);
|
|
15171
15374
|
listLevel === null || listLevel === void 0 || listLevel.set(listId, cacheItem);
|
|
15172
15375
|
}
|
|
15376
|
+
function _withMinSpacing(style, key, value) {
|
|
15377
|
+
var _current$v;
|
|
15378
|
+
const current = style[key];
|
|
15379
|
+
const nextValue = Math.max((_current$v = current === null || current === void 0 ? void 0 : current.v) !== null && _current$v !== void 0 ? _current$v : 0, value);
|
|
15380
|
+
style[key] = {
|
|
15381
|
+
...current,
|
|
15382
|
+
v: nextValue
|
|
15383
|
+
};
|
|
15384
|
+
}
|
|
15385
|
+
function _getNextAdjacentBlockRange(blockRanges, blockRange) {
|
|
15386
|
+
return blockRanges === null || blockRanges === void 0 ? void 0 : blockRanges.filter((range) => range.startIndex > blockRange.endIndex).sort((left, right) => left.startIndex - right.startIndex)[0];
|
|
15387
|
+
}
|
|
15388
|
+
function _hasNextAdjacentLayoutBlockRange(blockRanges, blockRange) {
|
|
15389
|
+
const nextBlockRange = _getNextAdjacentBlockRange(blockRanges, blockRange);
|
|
15390
|
+
return nextBlockRange != null && BLOCK_LAYOUT_OUTER_SPACING_MAP.has(nextBlockRange.blockType) && nextBlockRange.startIndex === blockRange.endIndex + 1;
|
|
15391
|
+
}
|
|
15392
|
+
function _applyDefaultLayoutParagraphStyle(style, hasBlockRange) {
|
|
15393
|
+
if (style.lineSpacing == null) style.lineSpacing = _univerjs_core.DEFAULT_DOCUMENT_PARAGRAPH_LINE_SPACING;
|
|
15394
|
+
if (hasBlockRange) return;
|
|
15395
|
+
if (style.spaceAbove == null) style.spaceAbove = { v: _univerjs_core.DEFAULT_DOCUMENT_PARAGRAPH_SPACE_ABOVE };
|
|
15396
|
+
if (style.spaceBelow == null) style.spaceBelow = { v: _univerjs_core.DEFAULT_DOCUMENT_PARAGRAPH_SPACE_BELOW };
|
|
15397
|
+
}
|
|
15398
|
+
function _applyBlockRangeLayoutParagraphStyle(body, paragraph, paragraphStyle, shouldApplyDocumentDefaults) {
|
|
15399
|
+
var _body$paragraphs, _BLOCK_LAYOUT_OUTER_S;
|
|
15400
|
+
const style = _univerjs_core.Tools.deepClone(paragraphStyle);
|
|
15401
|
+
const blockRanges = body === null || body === void 0 ? void 0 : body.blockRanges;
|
|
15402
|
+
if (!(blockRanges === null || blockRanges === void 0 ? void 0 : blockRanges.length)) {
|
|
15403
|
+
if (shouldApplyDocumentDefaults) _applyDefaultLayoutParagraphStyle(style, false);
|
|
15404
|
+
return style;
|
|
15405
|
+
}
|
|
15406
|
+
const blockRange = blockRanges.find((range) => BLOCK_LAYOUT_OUTER_SPACING_MAP.has(range.blockType) && paragraph.startIndex > range.startIndex && paragraph.startIndex < range.endIndex);
|
|
15407
|
+
if (!blockRange) {
|
|
15408
|
+
if (shouldApplyDocumentDefaults) _applyDefaultLayoutParagraphStyle(style, false);
|
|
15409
|
+
return style;
|
|
15410
|
+
}
|
|
15411
|
+
_applyDefaultLayoutParagraphStyle(style, true);
|
|
15412
|
+
const blockParagraphs = ((_body$paragraphs = body === null || body === void 0 ? void 0 : body.paragraphs) !== null && _body$paragraphs !== void 0 ? _body$paragraphs : []).filter((item) => item.startIndex > blockRange.startIndex && item.startIndex < blockRange.endIndex).sort((left, right) => left.startIndex - right.startIndex);
|
|
15413
|
+
const firstParagraph = blockParagraphs[0];
|
|
15414
|
+
const lastParagraph = blockParagraphs[blockParagraphs.length - 1];
|
|
15415
|
+
const outerSpacing = (_BLOCK_LAYOUT_OUTER_S = BLOCK_LAYOUT_OUTER_SPACING_MAP.get(blockRange.blockType)) !== null && _BLOCK_LAYOUT_OUTER_S !== void 0 ? _BLOCK_LAYOUT_OUTER_S : 0;
|
|
15416
|
+
if ((firstParagraph === null || firstParagraph === void 0 ? void 0 : firstParagraph.startIndex) === paragraph.startIndex) _withMinSpacing(style, "spaceAbove", outerSpacing);
|
|
15417
|
+
if ((lastParagraph === null || lastParagraph === void 0 ? void 0 : lastParagraph.startIndex) === paragraph.startIndex && !_hasNextAdjacentLayoutBlockRange(blockRanges, blockRange)) _withMinSpacing(style, "spaceBelow", outerSpacing);
|
|
15418
|
+
return style;
|
|
15419
|
+
}
|
|
15420
|
+
function _shouldApplyDocumentDefaultParagraphStyle(viewModel) {
|
|
15421
|
+
var _viewModel$getSnapsho;
|
|
15422
|
+
const snapshot = (_viewModel$getSnapsho = viewModel.getSnapshot) === null || _viewModel$getSnapsho === void 0 ? void 0 : _viewModel$getSnapsho.call(viewModel);
|
|
15423
|
+
const documentFlavor = snapshot === null || snapshot === void 0 ? void 0 : snapshot.documentStyle.documentFlavor;
|
|
15424
|
+
if (snapshot == null) return true;
|
|
15425
|
+
return documentFlavor != null && documentFlavor !== _univerjs_core.DocumentFlavor.UNSPECIFIED;
|
|
15426
|
+
}
|
|
15173
15427
|
function _getDrawingSkeletonFormat(drawingOrigin) {
|
|
15174
15428
|
const { drawingId } = drawingOrigin;
|
|
15175
15429
|
return {
|
|
@@ -15192,6 +15446,7 @@ function _getNextPageNumber(lastPage) {
|
|
|
15192
15446
|
return lastPage.pageNumber + 1;
|
|
15193
15447
|
}
|
|
15194
15448
|
function lineBreaking(ctx, viewModel, shapedTextList, curPage, paragraphNode, sectionBreakConfig, tableSkeleton) {
|
|
15449
|
+
var _viewModel$getBody, _viewModel$getBody2;
|
|
15195
15450
|
const { skeletonResourceReference } = ctx;
|
|
15196
15451
|
const { lists, drawings = {}, localeService } = sectionBreakConfig;
|
|
15197
15452
|
const { endIndex, blocks = [], children } = paragraphNode;
|
|
@@ -15208,7 +15463,7 @@ function lineBreaking(ctx, viewModel, shapedTextList, curPage, paragraphNode, se
|
|
|
15208
15463
|
}
|
|
15209
15464
|
const paragraphConfig = {
|
|
15210
15465
|
paragraphIndex: endIndex,
|
|
15211
|
-
paragraphStyle:
|
|
15466
|
+
paragraphStyle: _applyBlockRangeLayoutParagraphStyle((_viewModel$getBody = (_viewModel$getBody2 = viewModel.getBody) === null || _viewModel$getBody2 === void 0 ? void 0 : _viewModel$getBody2.call(viewModel)) !== null && _viewModel$getBody !== void 0 ? _viewModel$getBody : null, paragraph, paragraphStyle, _shouldApplyDocumentDefaultParagraphStyle(viewModel)),
|
|
15212
15467
|
paragraphNonInlineSkeDrawings,
|
|
15213
15468
|
paragraphInlineSkeDrawings,
|
|
15214
15469
|
skeTablesInParagraph: tableSkeleton ? [{
|
|
@@ -15768,6 +16023,22 @@ function TibetanHandler(index, charArray, viewModel, paragraphNode, sectionBreak
|
|
|
15768
16023
|
glyphGroup: [createSkeletonWordGlyph(glyph.join(""), config)]
|
|
15769
16024
|
};
|
|
15770
16025
|
}
|
|
16026
|
+
function ThaiHandler(index, charArray, viewModel, paragraphNode, sectionBreakConfig, paragraph) {
|
|
16027
|
+
const config = getFontCreateConfig(index, viewModel, paragraphNode, sectionBreakConfig, paragraph);
|
|
16028
|
+
const glyph = [];
|
|
16029
|
+
let step = 0;
|
|
16030
|
+
for (let i = 0; i < charArray.length; i++) {
|
|
16031
|
+
const newChar = charArray[i];
|
|
16032
|
+
if (hasThai(newChar)) {
|
|
16033
|
+
glyph.push(newChar);
|
|
16034
|
+
step++;
|
|
16035
|
+
} else break;
|
|
16036
|
+
}
|
|
16037
|
+
return {
|
|
16038
|
+
step,
|
|
16039
|
+
glyphGroup: [createSkeletonWordGlyph(glyph.join(""), config)]
|
|
16040
|
+
};
|
|
16041
|
+
}
|
|
15771
16042
|
|
|
15772
16043
|
//#endregion
|
|
15773
16044
|
//#region src/components/docs/layout/block/paragraph/shaping.ts
|
|
@@ -15913,6 +16184,11 @@ function shaping(ctx, content, viewModel, paragraphNode, sectionBreakConfig, use
|
|
|
15913
16184
|
shapedGlyphs.push(...glyphGroup);
|
|
15914
16185
|
i += step;
|
|
15915
16186
|
src = src.substring(step);
|
|
16187
|
+
} else if (hasThai(char)) {
|
|
16188
|
+
const { step, glyphGroup } = ThaiHandler(i, src, viewModel, paragraphNode, sectionBreakConfig, paragraph);
|
|
16189
|
+
shapedGlyphs.push(...glyphGroup);
|
|
16190
|
+
i += step;
|
|
16191
|
+
src = src.substring(step);
|
|
15916
16192
|
} else {
|
|
15917
16193
|
const { step, glyphGroup } = otherHandler(i, src, viewModel, paragraphNode, sectionBreakConfig, paragraph);
|
|
15918
16194
|
shapedGlyphs.push(...glyphGroup);
|
|
@@ -16036,86 +16312,125 @@ function _pushPage(allCurrentSkeletonPages, blockSkeletonPages) {
|
|
|
16036
16312
|
//#endregion
|
|
16037
16313
|
//#region src/components/docs/layout/hyphenation/pattern-loaders.gen.ts
|
|
16038
16314
|
const PATTERN_LOADERS = {
|
|
16039
|
-
["af"]: () => Promise.resolve().then(() => require("./af-
|
|
16040
|
-
["as"]: () => Promise.resolve().then(() => require("./as-
|
|
16041
|
-
["be"]: () => Promise.resolve().then(() => require("./be-
|
|
16042
|
-
["bg"]: () => Promise.resolve().then(() => require("./bg-
|
|
16043
|
-
["bn"]: () => Promise.resolve().then(() => require("./bn-
|
|
16044
|
-
["ca"]: () => Promise.resolve().then(() => require("./ca-
|
|
16045
|
-
["cop"]: () => Promise.resolve().then(() => require("./cop-
|
|
16046
|
-
["cs"]: () => Promise.resolve().then(() => require("./cs-
|
|
16047
|
-
["cu"]: () => Promise.resolve().then(() => require("./cu-
|
|
16048
|
-
["cy"]: () => Promise.resolve().then(() => require("./cy-
|
|
16049
|
-
["da"]: () => Promise.resolve().then(() => require("./da-
|
|
16050
|
-
["de-1901"]: () => Promise.resolve().then(() => require("./de-1901-
|
|
16051
|
-
["de-1996"]: () => Promise.resolve().then(() => require("./de-1996-
|
|
16052
|
-
["de-ch-1901"]: () => Promise.resolve().then(() => require("./de-ch-1901-
|
|
16053
|
-
["el-monoton"]: () => Promise.resolve().then(() => require("./el-monoton-
|
|
16054
|
-
["el-polyton"]: () => Promise.resolve().then(() => require("./el-polyton-
|
|
16055
|
-
["en-gb"]: () => Promise.resolve().then(() => require("./en-gb-
|
|
16056
|
-
["en-us"]: () => Promise.resolve().then(() =>
|
|
16057
|
-
["es"]: () => Promise.resolve().then(() => require("./es-
|
|
16058
|
-
["et"]: () => Promise.resolve().then(() => require("./et-
|
|
16059
|
-
["eu"]: () => Promise.resolve().then(() => require("./eu-
|
|
16060
|
-
["fi"]: () => Promise.resolve().then(() => require("./fi-
|
|
16061
|
-
["fr"]: () => Promise.resolve().then(() => require("./fr-
|
|
16062
|
-
["fur"]: () => Promise.resolve().then(() => require("./fur-
|
|
16063
|
-
["ga"]: () => Promise.resolve().then(() => require("./ga-
|
|
16064
|
-
["gl"]: () => Promise.resolve().then(() => require("./gl-
|
|
16065
|
-
["grc"]: () => Promise.resolve().then(() => require("./grc-
|
|
16066
|
-
["gu"]: () => Promise.resolve().then(() => require("./gu-
|
|
16067
|
-
["hi"]: () => Promise.resolve().then(() => require("./hi-
|
|
16068
|
-
["hr"]: () => Promise.resolve().then(() => require("./hr-
|
|
16069
|
-
["hsb"]: () => Promise.resolve().then(() => require("./hsb-
|
|
16070
|
-
["hu"]: () => Promise.resolve().then(() => require("./hu-
|
|
16071
|
-
["hy"]: () => Promise.resolve().then(() => require("./hy-
|
|
16072
|
-
["ia"]: () => Promise.resolve().then(() => require("./ia-
|
|
16073
|
-
["id"]: () => Promise.resolve().then(() => require("./id-
|
|
16074
|
-
["is"]: () => Promise.resolve().then(() => require("./is-
|
|
16075
|
-
["it"]: () => Promise.resolve().then(() => require("./it-
|
|
16076
|
-
["ka"]: () => Promise.resolve().then(() => require("./ka-
|
|
16077
|
-
["kmr"]: () => Promise.resolve().then(() => require("./kmr-
|
|
16078
|
-
["kn"]: () => Promise.resolve().then(() => require("./kn-
|
|
16079
|
-
["la"]: () => Promise.resolve().then(() => require("./la-
|
|
16080
|
-
["la-x-classic"]: () => Promise.resolve().then(() => require("./la-x-classic-
|
|
16081
|
-
["la-x-liturgic"]: () => Promise.resolve().then(() => require("./la-x-liturgic-
|
|
16082
|
-
["lt"]: () => Promise.resolve().then(() => require("./lt-
|
|
16083
|
-
["lv"]: () => Promise.resolve().then(() => require("./lv-
|
|
16084
|
-
["ml"]: () => Promise.resolve().then(() => require("./ml-
|
|
16085
|
-
["mn-cyrl"]: () => Promise.resolve().then(() => require("./mn-cyrl-
|
|
16086
|
-
["mn-cyrl-x-lmc"]: () => Promise.resolve().then(() => require("./mn-cyrl-x-lmc-
|
|
16087
|
-
["mr"]: () => Promise.resolve().then(() => require("./mr-
|
|
16088
|
-
["mul-ethi"]: () => Promise.resolve().then(() => require("./mul-ethi-
|
|
16089
|
-
["nb"]: () => Promise.resolve().then(() => require("./nb-
|
|
16090
|
-
["nl"]: () => Promise.resolve().then(() => require("./nl-
|
|
16091
|
-
["nn"]: () => Promise.resolve().then(() => require("./nn-
|
|
16092
|
-
["no"]: () => Promise.resolve().then(() => require("./no-
|
|
16093
|
-
["oc"]: () => Promise.resolve().then(() => require("./oc-
|
|
16094
|
-
["or"]: () => Promise.resolve().then(() => require("./or-
|
|
16095
|
-
["pa"]: () => Promise.resolve().then(() => require("./pa-
|
|
16096
|
-
["pi"]: () => Promise.resolve().then(() => require("./pi-
|
|
16097
|
-
["pl"]: () => Promise.resolve().then(() => require("./pl-
|
|
16098
|
-
["pms"]: () => Promise.resolve().then(() => require("./pms-
|
|
16099
|
-
["pt"]: () => Promise.resolve().then(() => require("./pt-
|
|
16100
|
-
["rm"]: () => Promise.resolve().then(() => require("./rm-
|
|
16101
|
-
["ro"]: () => Promise.resolve().then(() => require("./ro
|
|
16102
|
-
["ru"]: () => Promise.resolve().then(() => require("./ru-
|
|
16103
|
-
["sa"]: () => Promise.resolve().then(() => require("./sa
|
|
16104
|
-
["sh-cyrl"]: () => Promise.resolve().then(() => require("./sh-cyrl-
|
|
16105
|
-
["sh-latn"]: () => Promise.resolve().then(() => require("./sh-latn-
|
|
16106
|
-
["sk"]: () => Promise.resolve().then(() => require("./sk-
|
|
16107
|
-
["sl"]: () => Promise.resolve().then(() => require("./sl-
|
|
16108
|
-
["sr-cyrl"]: () => Promise.resolve().then(() => require("./sr-cyrl-
|
|
16109
|
-
["sv"]: () => Promise.resolve().then(() => require("./sv-
|
|
16110
|
-
["ta"]: () => Promise.resolve().then(() => require("./ta-
|
|
16111
|
-
["te"]: () => Promise.resolve().then(() => require("./te-
|
|
16112
|
-
["th"]: () => Promise.resolve().then(() => require("./th-
|
|
16113
|
-
["tk"]: () => Promise.resolve().then(() => require("./tk-
|
|
16114
|
-
["tr"]: () => Promise.resolve().then(() => require("./tr-
|
|
16115
|
-
["uk"]: () => Promise.resolve().then(() => require("./uk-
|
|
16116
|
-
["zh-latn-pinyin"]: () => Promise.resolve().then(() => require("./zh-latn-pinyin-
|
|
16315
|
+
["af"]: () => Promise.resolve().then(() => require("./af-B2UUzO69.js")),
|
|
16316
|
+
["as"]: () => Promise.resolve().then(() => require("./as-DbZDYp6O.js")),
|
|
16317
|
+
["be"]: () => Promise.resolve().then(() => require("./be-BBx0lyG-.js")),
|
|
16318
|
+
["bg"]: () => Promise.resolve().then(() => require("./bg-DeX16RKi.js")),
|
|
16319
|
+
["bn"]: () => Promise.resolve().then(() => require("./bn-3fjitMC3.js")),
|
|
16320
|
+
["ca"]: () => Promise.resolve().then(() => require("./ca-BxC8Zblv.js")),
|
|
16321
|
+
["cop"]: () => Promise.resolve().then(() => require("./cop-TvdaSBlz.js")),
|
|
16322
|
+
["cs"]: () => Promise.resolve().then(() => require("./cs-MSNfJH-L.js")),
|
|
16323
|
+
["cu"]: () => Promise.resolve().then(() => require("./cu-7FYbjEBr.js")),
|
|
16324
|
+
["cy"]: () => Promise.resolve().then(() => require("./cy-CPuxVqb_.js")),
|
|
16325
|
+
["da"]: () => Promise.resolve().then(() => require("./da-BWsE849b.js")),
|
|
16326
|
+
["de-1901"]: () => Promise.resolve().then(() => require("./de-1901-BYSTp3Fp.js")),
|
|
16327
|
+
["de-1996"]: () => Promise.resolve().then(() => require("./de-1996-DWtCfm_A.js")),
|
|
16328
|
+
["de-ch-1901"]: () => Promise.resolve().then(() => require("./de-ch-1901-rWVcF3cs.js")),
|
|
16329
|
+
["el-monoton"]: () => Promise.resolve().then(() => require("./el-monoton-BEUGM9Fi.js")),
|
|
16330
|
+
["el-polyton"]: () => Promise.resolve().then(() => require("./el-polyton-Bvh6HAfD.js")),
|
|
16331
|
+
["en-gb"]: () => Promise.resolve().then(() => require("./en-gb-Dcrai7kY.js")),
|
|
16332
|
+
["en-us"]: () => Promise.resolve().then(() => en_us_exports),
|
|
16333
|
+
["es"]: () => Promise.resolve().then(() => require("./es-CVNdGI0L.js")),
|
|
16334
|
+
["et"]: () => Promise.resolve().then(() => require("./et-7Rdfp2-O.js")),
|
|
16335
|
+
["eu"]: () => Promise.resolve().then(() => require("./eu-DyEtVwHo.js")),
|
|
16336
|
+
["fi"]: () => Promise.resolve().then(() => require("./fi-DzRES2Ke.js")),
|
|
16337
|
+
["fr"]: () => Promise.resolve().then(() => require("./fr-DJMVMLCz.js")),
|
|
16338
|
+
["fur"]: () => Promise.resolve().then(() => require("./fur-CzhK3vxZ.js")),
|
|
16339
|
+
["ga"]: () => Promise.resolve().then(() => require("./ga-HXzOFdlG.js")),
|
|
16340
|
+
["gl"]: () => Promise.resolve().then(() => require("./gl-C5TM79ih.js")),
|
|
16341
|
+
["grc"]: () => Promise.resolve().then(() => require("./grc-CPQF-xFI.js")),
|
|
16342
|
+
["gu"]: () => Promise.resolve().then(() => require("./gu-AqCkEYxo.js")),
|
|
16343
|
+
["hi"]: () => Promise.resolve().then(() => require("./hi-DugLLbv4.js")),
|
|
16344
|
+
["hr"]: () => Promise.resolve().then(() => require("./hr-LSMYFsyP.js")),
|
|
16345
|
+
["hsb"]: () => Promise.resolve().then(() => require("./hsb-BlnRYHkg.js")),
|
|
16346
|
+
["hu"]: () => Promise.resolve().then(() => require("./hu-Dwvtkpy7.js")),
|
|
16347
|
+
["hy"]: () => Promise.resolve().then(() => require("./hy-BsG06_IV.js")),
|
|
16348
|
+
["ia"]: () => Promise.resolve().then(() => require("./ia-BMOUZLGD.js")),
|
|
16349
|
+
["id"]: () => Promise.resolve().then(() => require("./id-DhSs0vqq.js")),
|
|
16350
|
+
["is"]: () => Promise.resolve().then(() => require("./is-iJhrS7Aw.js")),
|
|
16351
|
+
["it"]: () => Promise.resolve().then(() => require("./it-Aam-BmsV.js")),
|
|
16352
|
+
["ka"]: () => Promise.resolve().then(() => require("./ka-CfLSYpVb.js")),
|
|
16353
|
+
["kmr"]: () => Promise.resolve().then(() => require("./kmr-DYCscIsi.js")),
|
|
16354
|
+
["kn"]: () => Promise.resolve().then(() => require("./kn-OCEDIM_O.js")),
|
|
16355
|
+
["la"]: () => Promise.resolve().then(() => require("./la-DFS3RPxE.js")),
|
|
16356
|
+
["la-x-classic"]: () => Promise.resolve().then(() => require("./la-x-classic-BocVpbl6.js")),
|
|
16357
|
+
["la-x-liturgic"]: () => Promise.resolve().then(() => require("./la-x-liturgic-CpZYm3b6.js")),
|
|
16358
|
+
["lt"]: () => Promise.resolve().then(() => require("./lt-NC6HHzxn.js")),
|
|
16359
|
+
["lv"]: () => Promise.resolve().then(() => require("./lv-BMFTm6cB.js")),
|
|
16360
|
+
["ml"]: () => Promise.resolve().then(() => require("./ml-DDWi25Fi.js")),
|
|
16361
|
+
["mn-cyrl"]: () => Promise.resolve().then(() => require("./mn-cyrl-TCUeX7is.js")),
|
|
16362
|
+
["mn-cyrl-x-lmc"]: () => Promise.resolve().then(() => require("./mn-cyrl-x-lmc-BCmp3Ybn.js")),
|
|
16363
|
+
["mr"]: () => Promise.resolve().then(() => require("./mr-1gjg-u15.js")),
|
|
16364
|
+
["mul-ethi"]: () => Promise.resolve().then(() => require("./mul-ethi-B9a4BMM6.js")),
|
|
16365
|
+
["nb"]: () => Promise.resolve().then(() => require("./nb-DS_J6lre.js")),
|
|
16366
|
+
["nl"]: () => Promise.resolve().then(() => require("./nl-CBtSVLcv.js")),
|
|
16367
|
+
["nn"]: () => Promise.resolve().then(() => require("./nn-DYJOn4Sh.js")),
|
|
16368
|
+
["no"]: () => Promise.resolve().then(() => require("./no-C20NyT1P.js")),
|
|
16369
|
+
["oc"]: () => Promise.resolve().then(() => require("./oc-CrKqER_F.js")),
|
|
16370
|
+
["or"]: () => Promise.resolve().then(() => require("./or-ZqEtsnaq.js")),
|
|
16371
|
+
["pa"]: () => Promise.resolve().then(() => require("./pa-BD3r0Teo.js")),
|
|
16372
|
+
["pi"]: () => Promise.resolve().then(() => require("./pi-CQUwMUvz.js")),
|
|
16373
|
+
["pl"]: () => Promise.resolve().then(() => require("./pl-CawofTLo.js")),
|
|
16374
|
+
["pms"]: () => Promise.resolve().then(() => require("./pms-DMqDXwo-.js")),
|
|
16375
|
+
["pt"]: () => Promise.resolve().then(() => require("./pt-BIiUaINZ.js")),
|
|
16376
|
+
["rm"]: () => Promise.resolve().then(() => require("./rm-B_-8T7Y1.js")),
|
|
16377
|
+
["ro"]: () => Promise.resolve().then(() => require("./ro-B2Xhfkgx.js")),
|
|
16378
|
+
["ru"]: () => Promise.resolve().then(() => require("./ru-lj-rTTpe.js")),
|
|
16379
|
+
["sa"]: () => Promise.resolve().then(() => require("./sa-D3h-cY2Z.js")),
|
|
16380
|
+
["sh-cyrl"]: () => Promise.resolve().then(() => require("./sh-cyrl-0o7p_z-7.js")),
|
|
16381
|
+
["sh-latn"]: () => Promise.resolve().then(() => require("./sh-latn-BTi9p-0q.js")),
|
|
16382
|
+
["sk"]: () => Promise.resolve().then(() => require("./sk-D6mOX2KK.js")),
|
|
16383
|
+
["sl"]: () => Promise.resolve().then(() => require("./sl-Bzz3gkvn.js")),
|
|
16384
|
+
["sr-cyrl"]: () => Promise.resolve().then(() => require("./sr-cyrl-V07WO3rb.js")),
|
|
16385
|
+
["sv"]: () => Promise.resolve().then(() => require("./sv-CyQXUuzx.js")),
|
|
16386
|
+
["ta"]: () => Promise.resolve().then(() => require("./ta-Brwz0zYf.js")),
|
|
16387
|
+
["te"]: () => Promise.resolve().then(() => require("./te-CgvirCa4.js")),
|
|
16388
|
+
["th"]: () => Promise.resolve().then(() => require("./th-PlSNhaza.js")),
|
|
16389
|
+
["tk"]: () => Promise.resolve().then(() => require("./tk-O54r2ybT.js")),
|
|
16390
|
+
["tr"]: () => Promise.resolve().then(() => require("./tr-Dh1h3Dno.js")),
|
|
16391
|
+
["uk"]: () => Promise.resolve().then(() => require("./uk-E2mCrVCU.js")),
|
|
16392
|
+
["zh-latn-pinyin"]: () => Promise.resolve().then(() => require("./zh-latn-pinyin-C2RfFfDl.js"))
|
|
16117
16393
|
};
|
|
16118
16394
|
|
|
16395
|
+
//#endregion
|
|
16396
|
+
//#region src/components/docs/layout/hyphenation/patterns/en-us.ts
|
|
16397
|
+
var en_us_exports = /* @__PURE__ */ __exportAll({ EnUs: () => EnUs });
|
|
16398
|
+
/**
|
|
16399
|
+
* Copyright 2023-present DreamNum Co., Ltd.
|
|
16400
|
+
*
|
|
16401
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
16402
|
+
* you may not use this file except in compliance with the License.
|
|
16403
|
+
* You may obtain a copy of the License at
|
|
16404
|
+
*
|
|
16405
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
16406
|
+
*
|
|
16407
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
16408
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
16409
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
16410
|
+
* See the License for the specific language governing permissions and
|
|
16411
|
+
* limitations under the License.
|
|
16412
|
+
*/
|
|
16413
|
+
const EnUs = [
|
|
16414
|
+
"0004,004,001,003,005,0005,00005,000005,0002,002,0000005,0003,00003,00505,00034,0001,00055,00004,4,05,0055,04,42,03,02,2,404,3,044,01,0505,55,5,045,041,0033,000004,22,00504,5504,0042,1,21,41,402,405,4004,43,23,000054,303,3005,022,5004,000003,252,45,25,2004,000505,054,403,401,3002,0025,144,432,00054,34,12,234,0022,014,0304,012,143,503,0403,101,052,414,212,011,043,00002,0041,0024,05005,03003,00102,0404,04303,01004,0034,025,0044,00404,00025,0103,042,0205,412,104,54,344,433,5005,253,055,0402,3004,0043,204,505,454,0000004,00303,04004,552,201,4005,0255,52,444,14,44,02004,033,05004,00045,00013,0021,0405,00044,0054,50055,000303,00001,304,0204,11,301,232,122,00305,504,000043,0104,00052,000045,50004,0023,00033,00032,00202,5003,202,0401,0000505,214,102,032,000161,004101,00501,00301,0036,0052,00023,006101,006,00401,000521,0014,0063,00012,000501,000006,000604,000601,005001,005005,0010305,00006,003012,003005,0003011,0061,013,000021,000022,000105,00211,00062,00051,000112,006013,000011,0200306,1021,0050001,003003,2102,305,000015,01030005,000035,001011,00021,16330001,0234,030006,5020001,000001,00016,0031,021,21431,002305,0350014,0000012,000063,00101,106,105,00435,00063,0300061,00041,100306,003602,023,0503,0010011,10003,1005,30011,00031,0001001,0000061,0030003,30305,001201,0301,5000101,500101,00015,000401,000065,000016,0000402,0500002,000205,030201,500301,00014,5001,000002,00030011,01034,0300006,030213,00400304,050001,05003,000311,0634,00061,0006,00000604,00050013,00213,0030001,100003,000033,30002,00003632,0003004,050003,0000021,006303,0000006,00005005,30451,03001,00231,00056,00011,6,001001,00500001,03005,503005,0000010001,1002,003001,001065,300001,32011,32,0000003,0213001,0500053,021005,10001,0000011,0001041,0020016,100032,50011,0606,5002,3001,03002,0015001,0102,00003001,000000033,0000001,300101,300015,0101003,00000101,0100501,0101,0010033,00000362,000014,0005001,031",
|
|
16415
|
+
"{\".\":[{\"a\":[{\"c\":[{\"h\":0}],\"d\":[{\"d\":[{\"e\":[{\"r\":1}]}]}],\"f\":[{\"t\":2}],\"l\":[{\"t\":3}],\"m\":[{\"a\":[{\"t\":4}]}],\"n\":[{\"c\":4,\"g\":0,\"i\":[{\"m\":5}],\"t\":[{\"e\":3,\"i\":[{\"s\":6}]},0]}],\"r\":[{\"s\":4,\"t\":[{\"i\":[{\"e\":1}],\"y\":1}]}],\"s\":[{\"c\":3,\"p\":2,\"s\":2,\"t\":[{\"e\":[{\"r\":7}]}]}],\"t\":[{\"o\":[{\"m\":6}]}],\"u\":[{\"d\":2}],\"v\":[{\"i\":1}],\"w\":[{\"n\":0}]}],\"b\":[{\"a\":[{\"g\":1,\"n\":[{\"a\":4}],\"s\":[{\"e\":0}]}],\"e\":[{\"r\":[{\"a\":4},0],\"s\":[{\"m\":3,\"t\":[{\"o\":4}]}]}],\"r\":[{\"i\":8}],\"u\":[{\"t\":[{\"t\":[{\"i\":0}]}]}]}],\"c\":[{\"a\":[{\"m\":[{\"p\":[{\"e\":0}]}],\"n\":[{\"c\":5}],\"p\":[{\"a\":[{\"b\":6}]}],\"r\":[{\"o\":[{\"l\":5}]}],\"t\":1}],\"e\":[{\"l\":[{\"a\":1}]}],\"h\":[{\"i\":[{\"l\":[{\"l\":[{\"i\":7}]}]}]},1],\"i\":[{\"t\":[{\"r\":5}]},9],\"o\":[{\"e\":3,\"r\":[{\"n\":[{\"e\":[{\"r\":5}]}]},1],\"n\":[{\"g\":[{\"r\":5}]}]}]}],\"d\":[{\"e\":[{\"m\":[{\"o\":[{\"i\":1}]}],\"o\":3,\"r\":[{\"a\":3,\"i\":[{\"v\":[{\"a\":4}]},3]}],\"s\":[{\"c\":0}]}],\"i\":[{\"c\":[{\"t\":[{\"i\":[{\"o\":10}]}]}]}],\"o\":[{\"t\":1}],\"u\":[{\"c\":1,\"m\":[{\"b\":6}]}],\"r\":[{\"i\":[{\"v\":67}]}]}],\"e\":[{\"a\":[{\"r\":[{\"t\":[{\"h\":7}]}],\"s\":[{\"i\":11}]}],\"b\":1,\"e\":[{\"r\":0}],\"g\":9,\"l\":[{\"d\":4,\"e\":[{\"m\":3}]}],\"n\":[{\"a\":[{\"m\":12}],\"g\":3,\"s\":3}],\"q\":[{\"u\":[{\"i\":[{\"t\":13}]}]}],\"r\":[{\"r\":[{\"i\":1}]}],\"s\":3,\"u\":[{\"l\":[{\"e\":[{\"r\":1}]}]},3],\"y\":[{\"e\":5}],\"t\":[{\"h\":[{\"y\":[{\"l\":162}]}]}],\"v\":[{\"e\":[{\"r\":[{\"s\":[{\"i\":[{\"b\":158}]}]}]}]},9]}],\"f\":[{\"e\":[{\"s\":11}],\"o\":[{\"r\":[{\"m\":[{\"e\":[{\"r\":5}]}]}]}]}],\"g\":[{\"a\":[{\"s\":[{\"o\":[{\"m\":163}]}]},9],\"e\":[{\"n\":[{\"t\":14}],\"o\":[{\"g\":4,\"m\":[{\"e\":1}],\"t\":164}]},9],\"i\":[{\"a\":4,\"b\":1}],\"o\":[{\"r\":1}]}],\"h\":[{\"a\":[{\"n\":[{\"d\":[{\"i\":6}],\"k\":5}]}],\"e\":[{\"r\":[{\"o\":[{\"i\":6,\"e\":3}]}],\"s\":11,\"t\":11,\"m\":[{\"o\":165}],\"p\":[{\"a\":166}]},9],\"i\":[{\"b\":3,\"e\":[{\"r\":3}]}],\"o\":[{\"n\":[{\"e\":[{\"y\":5}],\"o\":11}],\"v\":5}]}],\"i\":[{\"d\":[{\"l\":1,\"o\":[{\"l\":12}]}],\"m\":[{\"m\":3,\"p\":[{\"i\":[{\"n\":4}]}]}],\"n\":[{\"c\":[{\"i\":3}],\"e\":8,\"k\":9,\"s\":3,\"u\":[{\"t\":167}]},2],\"r\":[{\"r\":4}],\"s\":[{\"i\":1}]}],\"j\":[{\"u\":[{\"r\":3}]}],\"l\":[{\"a\":[{\"c\":[{\"y\":1}],\"m\":1,\"t\":[{\"e\":[{\"r\":5}],\"h\":6}]}],\"e\":[{\"g\":[{\"e\":5}],\"n\":0,\"p\":5,\"v\":15,\"i\":[{\"c\":[{\"e\":[{\"s\":170}]}]}]},9],\"i\":[{\"g\":[{\"a\":5},1],\"n\":9,\"o\":3,\"t\":1}]}],\"m\":[{\"a\":[{\"g\":[{\"a\":16}],\"l\":[{\"o\":5}],\"n\":[{\"a\":5}],\"r\":[{\"t\":[{\"i\":5}]}]}],\"e\":[{\"r\":[{\"c\":11}],\"t\":[{\"e\":[{\"r\":4}],\"a\":[{\"l\":[{\"a\":0}]}]}],\"g\":[{\"a\":[{\"l\":171}]}]},9],\"i\":[{\"s\":[{\"t\":[{\"i\":6}],\"e\":[{\"r\":[{\"s\":173}]}]},15],\"m\":[{\"i\":[{\"c\":172}]}]}],\"o\":[{\"n\":[{\"e\":11}],\"r\":[{\"o\":3}]}],\"u\":[{\"t\":[{\"a\":[{\"b\":6},4]}]}]}],\"n\":[{\"i\":[{\"c\":1}],\"e\":[{\"o\":[{\"f\":174}]}],\"o\":[{\"e\":[{\"t\":[{\"h\":15}]}],\"n\":[{\"e\":[{\"m\":175}]}]}]}],\"o\":[{\"d\":[{\"d\":5},9],\"f\":[{\"t\":[{\"e\":4}]}],\"r\":[{\"a\":[{\"t\":[{\"o\":4}]}],\"c\":3,\"d\":2,\"t\":3}],\"s\":[{\"t\":[{\"l\":1}]},3],\"t\":[{\"h\":11}],\"u\":[{\"t\":11}]}],\"p\":[{\"e\":[{\"d\":[{\"a\":[{\"l\":5}]}],\"t\":[{\"e\":4,\"i\":[{\"t\":4}]}]}],\"i\":[{\"e\":1,\"o\":[{\"n\":5}],\"t\":9}],\"r\":[{\"e\":[{\"m\":11,\"a\":[{\"m\":15}]}]}],\"o\":[{\"l\":[{\"y\":[{\"s\":137}]}],\"s\":[{\"t\":[{\"a\":[{\"m\":137}]}]}]}]}],\"r\":[{\"a\":[{\"c\":1,\"n\":[{\"t\":0}],\"t\":[{\"i\":[{\"o\":[{\"n\":[{\"a\":7}]}]}]}],\"v\":[{\"e\":[{\"n\":[{\"o\":176}]}]}]}],\"e\":[{\"e\":[{\"c\":173},8],\"m\":[{\"i\":[{\"t\":4}]}],\"s\":[{\"t\":[{\"a\":[{\"t\":4}]}]},8]}],\"i\":[{\"g\":1,\"t\":[{\"u\":5}]}],\"o\":[{\"q\":1,\"s\":[{\"t\":5}],\"w\":[{\"d\":5}]}],\"u\":[{\"d\":1}]}],\"s\":[{\"c\":[{\"i\":[{\"e\":11}]}],\"e\":[{\"l\":[{\"f\":6,\"l\":6}],\"n\":9,\"r\":[{\"i\":[{\"e\":4}]}],\"m\":[{\"i\":[{\"c\":0,\"d\":177,\"p\":36,\"r\":36,\"s\":178,\"v\":36},6]}]}],\"h\":9,\"i\":[{\"n\":[{\"g\":17}]},9],\"t\":[{\"a\":[{\"b\":[{\"l\":5}]}]},1],\"y\":9,\"p\":[{\"h\":[{\"i\":[{\"n\":179}]}],\"i\":[{\"n\":[{\"o\":137}]}]}]}],\"t\":[{\"a\":[{\"p\":[{\"e\":[{\"s\":[{\"t\":[{\"r\":180}]}]}]}]},1],\"e\":[{\"n\":[{\"a\":[{\"n\":5}]}],\"l\":[{\"e\":[{\"g\":[{\"r\":3}]}]}]},1],\"h\":9,\"i\":[{\"l\":0,\"m\":[{\"o\":16}],\"n\":[{\"g\":17,\"k\":5}]},9],\"o\":[{\"n\":[{\"a\":0}],\"p\":[{\"i\":5,\"o\":[{\"g\":170}]},1],\"u\":[{\"s\":5}],\"q\":9}],\"r\":[{\"i\":[{\"b\":[{\"u\":[{\"t\":6}]}]}]}]}],\"u\":[{\"n\":[{\"a\":[{\"t\":[{\"t\":144}]},2],\"c\":[{\"e\":3}],\"d\":[{\"e\":[{\"r\":7}]}],\"e\":[{\"r\":[{\"r\":181}]},2],\"k\":4,\"o\":4,\"u\":3}],\"p\":3,\"r\":[{\"e\":11}],\"s\":[{\"a\":4}]}],\"v\":[{\"e\":[{\"n\":[{\"d\":[{\"e\":0}]}],\"r\":[{\"a\":4}]}],\"i\":[{\"c\":[{\"a\":[{\"r\":151}]}]}]}],\"w\":[{\"i\":[{\"l\":[{\"i\":5}]}],\"e\":[{\"b\":[{\"l\":131}]}]}],\"y\":[{\"e\":1}],\"k\":[{\"i\":[{\"l\":[{\"n\":[{\"i\":168}]}]}],\"o\":[{\"r\":[{\"t\":[{\"e\":169}]}]}]}]}],\"a\":[{\"b\":[{\".\":18,\"a\":[{\"l\":19,\"n\":19}],\"e\":[{\"r\":[{\"d\":4}]},8],\"i\":[{\"a\":5,\"t\":[{\"a\":[{\"b\":13}]}]}],\"l\":[{\"a\":[{\"t\":4}]}],\"o\":[{\"l\":[{\"i\":[{\"z\":20,\"c\":19}]}]}],\"r\":[{\"o\":[{\"g\":4}]},18],\"u\":[{\"l\":3}]}],\"c\":[{\"a\":[{\"r\":[{\"d\":4,\"o\":4},21],\"b\":[{\"l\":24}]}],\"e\":[{\"o\":[{\"u\":19}],\"r\":2}],\"h\":[{\"e\":[{\"t\":19}]}],\"i\":[{\"e\":23,\"n\":2,\"o\":23},22],\"r\":[{\"o\":[{\"b\":4}]}],\"t\":[{\"i\":[{\"f\":5}]}],\"u\":[{\"l\":3,\"m\":1}]}],\"d\":[{\"d\":[{\"i\":[{\"n\":1}]}],\"e\":[{\"r\":[{\".\":4}]}],\"i\":[{\"a\":23,\"c\":[{\"a\":3}],\"e\":[{\"r\":0}],\"o\":23,\"t\":23,\"u\":19},25],\"l\":[{\"e\":1}],\"o\":[{\"w\":3}],\"r\":[{\"a\":[{\"n\":4}]}],\"s\":[{\"u\":1}],\"u\":[{\"c\":23,\"m\":4},18]},24],\"e\":[{\"r\":[{\"i\":[{\"e\":17}]},1]}],\"f\":[{\"f\":[{\"i\":[{\"s\":[{\"h\":170}]}]},0]},24],\"g\":[{\"a\":[{\"b\":21,\"n\":0}],\"e\":[{\"l\":[{\"l\":4}],\"o\":0,\"u\":18}],\"i\":2,\"l\":26,\"n\":2,\"o\":[{\"g\":27,\"n\":[{\"i\":3}]},24],\"u\":[{\"e\":[{\"r\":19}],\"l\":4}],\"y\":21}],\"h\":[{\"a\":23,\"e\":23,\"l\":1,\"o\":23}],\"i\":[{\"a\":19,\"c\":[{\".\":23}],\"l\":[{\"y\":4}],\"n\":[{\"i\":[{\"n\":5}],\"o\":5},28],\"t\":[{\"e\":[{\"n\":5}]}]},9],\"j\":29,\"k\":[{\"e\":[{\"n\":2}]}],\"l\":[{\"a\":[{\"b\":4,\"d\":3,\"r\":21}],\"d\":[{\"i\":18}],\"e\":[{\"n\":[{\"d\":3,\"t\":[{\"i\":21}]}],\"o\":30},25],\"i\":[{\"a\":[{\".\":1}],\"e\":0},2],\"l\":[{\"e\":[{\"v\":4}],\"i\":[{\"c\":18}]}],\"m\":18,\"o\":[{\"g\":[{\".\":19}]}],\"y\":[{\".\":21,\"s\":[{\"t\":31},18],\"t\":32,\"z\":27}]}],\"m\":[{\"a\":[{\"b\":4,\"g\":3,\"r\":[{\"a\":5}],\"s\":[{\"c\":4}],\"t\":[{\"i\":[{\"s\":21}],\"o\":33}]},18],\"e\":[{\"r\":[{\"a\":4}],\"n\":[{\"t\":[{\"a\":[{\"b\":182}]}]}]}],\"i\":[{\"c\":3,\"f\":4,\"l\":[{\"y\":4}],\"n\":[{\"o\":0},2]}],\"o\":[{\"n\":19,\"r\":[{\"i\":6}]},24],\"p\":[{\"e\":[{\"n\":5}]}]}],\"n\":[{\"a\":[{\"g\":[{\"e\":3}],\"l\":[{\"y\":[{\"s\":183},27]}],\"r\":[{\"c\":3,\"i\":17},23],\"t\":[{\"i\":23}]}],\"d\":[{\"e\":[{\"s\":17}],\"i\":[{\"s\":3}],\"l\":2,\"o\":[{\"w\":1}]},18],\"e\":[{\"e\":19,\"n\":23,\"s\":[{\"t\":[{\".\":4}]}],\"u\":23}],\"g\":[{\"i\":[{\"e\":5}],\"l\":2},25],\"i\":[{\"c\":34,\"e\":[{\"s\":23}],\"f\":35,\"m\":[{\"e\":1,\"i\":19}],\"n\":[{\"e\":19}],\"o\":3,\"p\":23,\"s\":[{\"h\":3}],\"t\":3,\"u\":23}],\"k\":[{\"l\":[{\"i\":1}]}],\"n\":[{\"i\":[{\"z\":32}]}],\"o\":[{\"t\":[{\"h\":7},4],\"a\":[{\"c\":148}]},0],\"s\":[{\"a\":9,\"c\":[{\"o\":1}],\"n\":1,\"p\":[{\"o\":11},9],\"t\":1,\"u\":[{\"r\":1}],\"g\":[{\"r\":5}],\"v\":11}],\"t\":[{\"a\":[{\"l\":36}],\"i\":[{\"e\":1,\"d\":137,\"n\":184,\"r\":[{\"e\":137}]}],\"o\":18,\"r\":9,\"w\":1}],\"u\":[{\"a\":3,\"l\":3,\"r\":19}]},24],\"o\":18,\"p\":[{\"a\":[{\"r\":17,\"t\":4}],\"e\":[{\"r\":[{\"o\":4}],\"a\":[{\"b\":[{\"l\":[{\"e\":132}]}]}]}],\"h\":[{\"e\":[{\"r\":23}],\"i\":18}],\"i\":[{\"l\":[{\"l\":[{\"a\":[{\"r\":4},21]}]}],\"n\":3,\"t\":[{\"a\":3,\"u\":23}]}],\"l\":24,\"o\":[{\"c\":6,\"l\":[{\"a\":4}],\"r\":[{\"i\":6}],\"s\":[{\"t\":12}]}],\"s\":[{\"e\":[{\"s\":5}]}],\"u\":23}],\"q\":[{\"u\":[{\"e\":6}]}],\"r\":[{\"a\":[{\"c\":[{\"t\":3}],\"d\":[{\"e\":19,\"i\":[{\"s\":4}]}],\"l\":3,\"m\":[{\"e\":[{\"t\":[{\"e\":19}]}]}],\"n\":[{\"g\":17}],\"p\":11,\"t\":[{\"i\":[{\"o\":19,\"v\":4}]},1],\"u\":19,\"v\":38,\"w\":17}],\"b\":[{\"a\":[{\"l\":36}]}],\"c\":[{\"h\":[{\"a\":[{\"n\":1}],\"e\":[{\"t\":185}]}]}],\"d\":[{\"i\":[{\"n\":[{\"e\":4}]}],\"r\":1}],\"e\":[{\"a\":[{\"s\":4}],\"e\":23,\"n\":[{\"t\":3}],\"s\":[{\"s\":19}]}],\"f\":[{\"i\":1,\"l\":1}],\"i\":[{\"a\":[{\"l\":4,\"n\":3}],\"e\":[{\"t\":23}],\"m\":1,\"n\":[{\"a\":[{\"t\":4}]}],\"o\":3,\"z\":9},2],\"m\":[{\"i\":9}],\"o\":[{\"d\":20,\"n\":[{\"i\":19}],\"o\":23}],\"p\":9,\"q\":3,\"r\":[{\"e\":17,\"a\":[{\"n\":[{\"g\":[{\"e\":9}]}]}]}],\"s\":[{\"a\":1,\"h\":9}]},37],\"s\":[{\".\":18,\"a\":[{\"b\":1,\"n\":[{\"t\":3}]}],\"h\":[{\"i\":17}],\"i\":[{\"a\":[{\".\":19}],\"b\":23,\"c\":23,\"t\":39}],\"k\":[{\"i\":11}],\"l\":1,\"o\":[{\"c\":21}],\"p\":[{\"h\":4}],\"s\":[{\"h\":1}],\"t\":[{\"e\":[{\"n\":3}],\"r\":2}],\"u\":[{\"r\":[{\"a\":6}]}],\"y\":[{\"m\":[{\"p\":[{\"t\":[{\"o\":[{\"t\":4}]}]}]}]}]}],\"t\":[{\"a\":[{\"b\":[{\"l\":3}],\"c\":4,\"l\":[{\"o\":3}],\"p\":4},24],\"e\":[{\"c\":[{\"h\":4},5],\"g\":[{\"o\":3}],\"n\":[{\".\":3}],\"r\":[{\"a\":3,\"n\":[{\"a\":19},6]}],\"s\":[{\"t\":3}],\"v\":4}],\"h\":[{\"e\":[{\"m\":5,\"n\":19,\"r\":[{\"o\":[{\"s\":186}]}]}],\"o\":[{\"m\":5},1]},18],\"i\":[{\".\":18,\"a\":19,\"b\":20,\"c\":2,\"f\":3,\"o\":[{\"n\":[{\"a\":[{\"r\":7}]}]}],\"t\":[{\"u\":3}]}],\"o\":[{\"g\":21,\"m\":[{\"i\":[{\"z\":4}]},24],\"p\":21,\"s\":21}],\"r\":[{\"o\":[{\"p\":4}]},29],\"s\":[{\"k\":1}],\"t\":[{\"a\":[{\"g\":1}],\"e\":[{\"s\":[{\".\":170}]},4],\"h\":1}],\"u\":[{\"a\":4,\"e\":4,\"l\":3,\"r\":[{\"a\":3}]},24],\"y\":24}],\"u\":[{\"b\":1,\"g\":[{\"h\":[{\"t\":[{\"l\":17}]},12],\"u\":3}],\"l\":[{\"i\":[{\"f\":13}]},40],\"n\":[{\"d\":5}],\"r\":3,\"s\":[{\"i\":[{\"b\":4}]}],\"t\":[{\"e\":[{\"n\":5}],\"h\":2}]}],\"v\":[{\"a\":[{\"g\":3,\"n\":19},24],\"e\":[{\"n\":[{\"o\":0}],\"r\":[{\"a\":3,\"n\":4,\"y\":4}]}],\"i\":[{\"e\":[{\"r\":0}],\"g\":3,\"o\":[{\"u\":3}]},2],\"o\":[{\"c\":4,\"r\":29}]}],\"w\":[{\"a\":[{\"y\":27}],\"i\":3,\"l\":[{\"y\":1}],\"s\":0}],\"x\":[{\"i\":[{\"c\":1,\"d\":1}]}],\"y\":[{\"a\":[{\"l\":4}],\"e\":0,\"s\":0}],\"z\":[{\"i\":[{\"e\":[{\"r\":0}]}],\"z\":[{\"i\":5}]}]}],\"b\":[{\"a\":[{\".\":32,\"d\":[{\"g\":[{\"e\":[{\"r\":5}]}]}],\"g\":[{\"e\":1}],\"l\":[{\"a\":15}],\"n\":[{\"d\":[{\"a\":[{\"g\":5}]}],\"e\":0,\"i\":11}],\"r\":[{\"b\":[{\"i\":7}],\"i\":[{\"a\":17}],\"o\":[{\"n\":[{\"i\":[{\"e\":187}]}]}]}],\"s\":[{\"s\":[{\"i\":0}]}],\"t\":[{\"h\":[{\"y\":2}]},41],\"z\":1,\"c\":[{\"k\":[{\"e\":[{\"r\":[{\".\":84}]}]}]}]}],\"b\":[{\"e\":[{\"r\":23},24],\"i\":[{\"n\":[{\"a\":0}],\"t\":0}]},42],\"d\":43,\"e\":[{\".\":18,\"a\":[{\"k\":17,\"t\":12}],\"d\":[{\"a\":3,\"e\":3,\"i\":3},44],\"g\":[{\"i\":3,\"u\":4}],\"l\":[{\"i\":2,\"o\":3},41],\"m\":45,\"n\":[{\"i\":[{\"g\":4}],\"u\":4}],\"s\":[{\"p\":3,\"t\":[{\"r\":4}]},46],\"t\":[{\"i\":[{\"z\":5}],\"r\":4,\"w\":3},27],\"w\":3,\"y\":[{\"o\":4}],\"v\":[{\"i\":[{\"e\":9}]}]}],\"f\":25,\"h\":47,\"i\":[{\"b\":9,\"d\":[{\"i\":[{\"f\":167}]},1],\"e\":[{\"n\":4,\"r\":1},27],\"f\":48,\"l\":[{\"i\":[{\"z\":3}],\"l\":[{\"a\":[{\"b\":8}]}]},41],\"n\":[{\"a\":[{\"r\":49}],\"d\":0,\"e\":[{\"t\":4}]}],\"o\":[{\"g\":[{\"r\":3}],\"u\":4,\"m\":5,\"r\":[{\"b\":2,\"h\":15}]}],\"t\":[{\"i\":[{\"o\":50,\"v\":[{\"e\":188}]}],\"r\":3,\"u\":[{\"a\":51}],\"z\":19},9]}],\"j\":29,\"k\":1,\"l\":[{\"a\":[{\"t\":[{\"h\":7}],\"n\":[{\"d\":189}]}],\"e\":[{\".\":21,\"n\":17,\"s\":[{\"p\":32}]}],\"i\":[{\"s\":23,\"n\":[{\"d\":189}]}],\"o\":[{\"n\":[{\"d\":190}]},21],\"u\":[{\"n\":[{\"t\":17}]}]},52],\"m\":43,\"n\":[{\"e\":[{\"g\":5}]},47],\"o\":[{\"d\":[{\"i\":11},27],\"e\":1,\"l\":[{\"i\":[{\"c\":11}]}],\"m\":[{\"b\":[{\"i\":0}]}],\"n\":[{\"a\":[{\"t\":5},0]}],\"o\":27,\"r\":[{\".\":32,\"a\":43,\"d\":5,\"e\":32,\"i\":32,\"n\":[{\"o\":191}]}],\"s\":53,\"t\":[{\"a\":19,\"h\":6,\"o\":1,\"u\":[{\"l\":192}]}],\"u\":[{\"n\":[{\"d\":54}]}]}],\"p\":18,\"r\":[{\"i\":[{\"t\":18}],\"o\":[{\"t\":[{\"h\":54}]}],\"u\":[{\"s\":[{\"q\":17}]}]}],\"s\":[{\"o\":[{\"r\":17}]},55],\"t\":[{\"l\":1,\"o\":21,\"r\":23},25],\"u\":[{\"f\":[{\"f\":[{\"e\":[{\"r\":0}]}]}],\"g\":[{\"a\":1}],\"l\":[{\"i\":3}],\"m\":[{\"i\":17}],\"n\":[{\"t\":[{\"i\":17}]},1],\"r\":[{\"e\":3}],\"s\":[{\"i\":[{\"e\":[{\"r\":193,\"s\":193},5]}],\"s\":[{\"e\":17,\"i\":[{\"n\":[{\"g\":17}]}]}],\"t\":32}],\"t\":[{\"a\":18,\"i\":[{\"o\":27}],\"o\":19,\"e\":[{\"d\":[{\".\":8}]}],\"t\":[{\"e\":[{\"d\":0}]}]}]}],\"v\":29,\"w\":56,\"y\":[{\".\":32,\"s\":0}]}],\"c\":[{\"a\":[{\"b\":[{\"i\":[{\"n\":11}],\"l\":2}],\"c\":[{\"h\":17}],\"d\":[{\"e\":[{\"n\":4,\"m\":194}]}],\"g\":46,\"h\":57,\"l\":[{\"a\":[{\"t\":3}],\"l\":[{\"a\":0,\"i\":[{\"n\":6}]}],\"o\":18}],\"n\":[{\"d\":5,\"e\":0,\"i\":[{\"c\":0,\"s\":5,\"z\":11}],\"t\":[{\"y\":0}],\"y\":17}],\"p\":[{\"e\":[{\"r\":4}]}],\"r\":[{\"o\":[{\"m\":5}]}],\"s\":[{\"t\":[{\"e\":[{\"r\":6}],\"i\":[{\"g\":5}]}],\"y\":18}],\"t\":[{\"h\":1,\"i\":[{\"v\":18}],\"a\":[{\"s\":195}]}],\"v\":[{\"a\":[{\"l\":5}]}]},41],\"c\":[{\"h\":[{\"a\":6}],\"i\":[{\"a\":0}],\"o\":[{\"m\":[{\"p\":[{\"a\":10}]}],\"n\":17,\"u\":[{\"t\":12}]}]},23],\"e\":[{\".\":25,\"d\":[{\".\":18,\"e\":[{\"n\":18}]}],\"i\":27,\"l\":[{\".\":32,\"l\":27}],\"n\":[{\"c\":27,\"e\":58,\"i\":18,\"t\":27},41],\"p\":27,\"r\":[{\"a\":[{\"m\":4}]}],\"s\":[{\"a\":18,\"s\":[{\"i\":[{\"b\":59},27]}],\"t\":5}],\"t\":[{\"a\":60},0],\"w\":0}],\"h\":[{\".\":18,\"a\":[{\"b\":61,\"n\":[{\"i\":[{\"c\":32,\"s\":20}]}]}],\"e\":[{\"a\":[{\"p\":54}],\"d\":18,\"l\":[{\"o\":5}],\"m\":[{\"i\":27}],\"n\":[{\"e\":4}],\"r\":[{\".\":3,\"s\":3}]},8],\"i\":[{\"n\":[{\"e\":[{\".\":32,\"s\":[{\"s\":4}]}],\"i\":32},62],\"o\":32,\"t\":27,\"z\":8,\"e\":[{\"v\":[{\"o\":6}]}]}],\"o\":63,\"t\":[{\"i\":1}],\"s\":[{\".\":18,\"h\":[{\"u\":11}]}]},25],\"i\":[{\"a\":[{\"b\":64,\"r\":5},27],\"c\":4,\"e\":[{\"r\":18}],\"f\":[{\"i\":[{\"c\":[{\".\":32}]}]}],\"i\":18,\"l\":[{\"a\":1,\"i\":27}],\"m\":25,\"n\":[{\"a\":[{\"t\":27},21],\"e\":[{\"m\":11}],\"g\":[{\".\":19},29],\"o\":32,\"q\":8},25],\"o\":[{\"n\":17}],\"p\":[{\"e\":18,\"h\":3,\"i\":[{\"c\":18}]}],\"s\":[{\"t\":[{\"a\":18,\"i\":18}]}],\"t\":[{\"i\":[{\"z\":11}]},42],\"z\":32,\"g\":[{\"a\":[{\"r\":152}]}]},41],\"k\":[{\"i\":3},2],\"l\":[{\"a\":[{\"r\":[{\"a\":[{\"t\":[{\"i\":[{\"o\":19}]}]}],\"e\":32},18]}],\"e\":[{\"m\":0,\"a\":[{\"r\":0}]}],\"i\":[{\"c\":18,\"m\":17}],\"y\":0},65],\"n\":19,\"o\":[{\"a\":[{\"g\":4}],\"e\":8,\"g\":[{\"r\":1},25],\"i\":[{\"n\":[{\"c\":3}]},0],\"l\":[{\"i\":5,\"o\":[{\"r\":11},32]}],\"m\":[{\"e\":[{\"r\":5}]}],\"n\":[{\"a\":0,\"e\":21,\"g\":11,\"t\":5}],\"p\":[{\"a\":3,\"i\":[{\"c\":11}],\"l\":1,\"h\":[{\"o\":[{\"n\":196}]}]}],\"r\":[{\"b\":18,\"o\":[{\"n\":12}]}],\"s\":[{\"e\":0}],\"v\":[{\"e\":17},15],\"w\":[{\"a\":5}],\"z\":[{\"e\":5,\"i\":4}],\"u\":[{\"s\":[{\"t\":[{\"i\":84}]}]}]},41],\"q\":29,\"r\":[{\"a\":[{\"s\":[{\"t\":6}],\"t\":[{\".\":32,\"i\":[{\"c\":32}]}]}],\"e\":[{\"a\":[{\"t\":11}],\"d\":32,\"t\":[{\"a\":47}],\"v\":0}],\"i\":[{\"f\":5,\"n\":21,\"s\":17,\"t\":[{\"i\":[{\"e\":11},32]}]},8],\"o\":[{\"p\":[{\"l\":0,\"o\":6}],\"s\":[{\"e\":17}],\"c\":[{\"o\":[{\"d\":197}]}],\"e\":[{\"c\":[{\"o\":148}]}]}],\"u\":[{\"d\":0}]}],\"s\":66,\"t\":[{\"a\":[{\"b\":0,\"n\":[{\"g\":4,\"t\":19}]}],\"e\":[{\"r\":23},24],\"i\":[{\"c\":[{\"u\":21}],\"m\":[{\"i\":12}]}],\"u\":[{\"r\":0}],\"w\":21,\"r\":[{\"o\":[{\"m\":[{\"e\":[{\"c\":198}]}]}]}]},42],\"u\":[{\"d\":5,\"f\":21,\"i\":[{\"t\":[{\"y\":4}]},21],\"l\":[{\"i\":32,\"t\":[{\"i\":[{\"s\":0}],\"u\":27}]}],\"m\":[{\"a\":9,\"e\":23,\"i\":1}],\"n\":27,\"p\":[{\"i\":3,\"y\":4}],\"r\":[{\"a\":[{\"b\":67,\"n\":[{\"c\":[{\"e\":199}]}]}],\"i\":[{\"a\":4}]}],\"s\":[{\"s\":[{\"i\":17}]},41],\"t\":[{\"i\":[{\"e\":1,\"v\":56}],\"r\":18},68]}],\"y\":41,\"z\":[{\"e\":0}]}],\"d\":[{\"a\":[{\".\":32,\"b\":70,\"c\":[{\"h\":17}],\"f\":18,\"g\":25,\"m\":71,\"n\":[{\"g\":11}],\"r\":[{\"d\":6,\"k\":6,\"y\":18}],\"t\":[{\"i\":[{\"v\":18}],\"o\":18,\"a\":[{\"b\":137}]},27],\"v\":[{\"e\":5},53],\"y\":32,\"l\":[{\"o\":[{\"n\":[{\"e\":48}]}]}]},69],\"b\":29,\"c\":19,\"d\":[{\"a\":[{\"b\":20}],\"i\":[{\"b\":94}]},72],\"e\":[{\".\":25,\"a\":[{\"f\":6,\"l\":[{\"s\":[{\".\":1}]}]}],\"b\":[{\"i\":[{\"t\":5}],\"o\":[{\"n\":1}]}],\"c\":[{\"a\":[{\"n\":36}],\"i\":[{\"l\":1}],\"o\":[{\"m\":4}],\"l\":[{\"a\":[{\"r\":200}],\"i\":[{\"n\":[{\"a\":64}]}]}]}],\"d\":42,\"e\":[{\".\":18}],\"i\":[{\"f\":4}],\"l\":[{\"i\":[{\"e\":17,\"q\":16}],\"o\":4}],\"m\":[{\".\":32,\"i\":[{\"c\":[{\".\":5},27],\"l\":4}],\"o\":[{\"n\":[{\"s\":1}],\"r\":7,\"s\":9}]},21],\"n\":[{\"a\":[{\"r\":1}],\"o\":3,\"t\":[{\"i\":[{\"f\":7}]}],\"u\":3},41],\"p\":[{\"a\":3,\"i\":17,\"u\":9},2],\"q\":23,\"r\":[{\"h\":21,\"m\":32,\"n\":[{\"i\":[{\"z\":6}]}],\"s\":5}],\"s\":[{\".\":24,\"c\":2,\"o\":64,\"t\":[{\"i\":11,\"r\":3}],\"u\":1,\"i\":[{\"c\":11}]},8],\"t\":[{\"o\":9,\"i\":[{\"c\":9}]},2],\"v\":[{\"i\":[{\"l\":11}]},2],\"y\":18,\"f\":[{\"i\":[{\"n\":[{\"i\":[{\"t\":[{\"i\":201}]}]}]}]}]}],\"f\":43,\"g\":[{\"a\":21,\"e\":[{\"t\":73}],\"i\":2,\"y\":24}],\"h\":74,\"i\":[{\".\":32,\"a\":[{\"b\":5},75],\"c\":[{\"a\":[{\"m\":1,\"i\":[{\"d\":15}]}],\"e\":21,\"t\":27}],\"d\":27,\"e\":[{\"n\":76}],\"f\":[{\"f\":[{\"r\":[{\"a\":5}]}]},29],\"g\":[{\"e\":3}],\"l\":[{\"a\":[{\"t\":[{\"o\":1}]}]}],\"n\":[{\"a\":41,\"e\":[{\".\":27}],\"i\":[{\"z\":4},32]},29],\"o\":[{\"g\":5},41],\"p\":[{\"l\":1}],\"r\":[{\"e\":[{\"n\":9,\"r\":9},2],\"t\":[{\"i\":6}]},8],\"s\":[{\"i\":32,\"t\":77},15],\"t\":[{\"i\":24}],\"v\":78,\"m\":[{\"e\":[{\"t\":[{\"h\":[{\"y\":141}]}]}]}]}],\"j\":29,\"k\":79,\"l\":[{\"a\":56,\"e\":[{\".\":27,\"d\":27,\"s\":[{\".\":27,\"s\":18}],\"a\":[{\"d\":42}]}],\"o\":48,\"u\":56,\"y\":25,\"i\":[{\"e\":202}]}],\"m\":29,\"n\":80,\"o\":[{\".\":27,\"d\":[{\"e\":4}],\"e\":32,\"f\":57,\"g\":21,\"l\":[{\"a\":1,\"i\":17,\"o\":[{\"r\":4}]}],\"m\":[{\"i\":[{\"z\":5}]}],\"n\":[{\"a\":[{\"t\":3}],\"i\":17}],\"o\":[{\"d\":11}],\"p\":[{\"p\":0}],\"r\":21,\"s\":27,\"u\":[{\"t\":56}],\"v\":1,\"x\":27,\"w\":[{\"o\":[{\"r\":[{\"d\":203}]}]}]},41],\"p\":29,\"r\":[{\"a\":[{\"g\":[{\"o\":[{\"n\":6}]}],\"i\":18}],\"e\":[{\"a\":[{\"r\":6}],\"n\":[{\"a\":[{\"l\":204}]},32]},0],\"i\":[{\"b\":0,\"l\":17,\"f\":[{\"t\":[{\"a\":189}]}],\"p\":[{\"l\":[{\"e\":[{\"g\":205}]}]}]}],\"o\":[{\"p\":0,\"w\":18,\"m\":[{\"e\":[{\"d\":206}]}]}],\"u\":[{\"p\":[{\"l\":[{\"i\":32}]}]}],\"y\":18},41],\"s\":[{\"p\":1,\"w\":21,\"y\":21},81],\"t\":[{\"h\":24,\"a\":[{\"b\":23}]}],\"u\":[{\"a\":[{\"l\":[{\".\":9}]},82],\"c\":[{\"a\":29,\"e\":[{\"r\":5}],\"t\":[{\".\":18,\"s\":18}]},9],\"e\":[{\"l\":4}],\"g\":1,\"l\":[{\"e\":23}],\"m\":[{\"b\":[{\"e\":0}]}],\"n\":1,\"p\":[{\"e\":1},18],\"o\":[{\"p\":[{\"o\":[{\"l\":207}]}]}]},41],\"v\":29,\"w\":29,\"y\":[{\"n\":32,\"s\":[{\"e\":1,\"p\":5}]},24]}],\"e\":[{\"a\":[{\"b\":72,\"c\":[{\"t\":23}],\"d\":[{\"i\":[{\"e\":5}]},15],\"g\":[{\"e\":[{\"r\":4},1]}],\"l\":[{\"e\":[{\"r\":5}],\"o\":[{\"u\":11}]},1],\"m\":[{\"e\":[{\"r\":11}]}],\"n\":[{\"d\":19,\"i\":[{\"e\":[{\"s\":111}]}]}],\"r\":[{\"a\":11,\"c\":0,\"e\":[{\"s\":5}],\"i\":[{\"c\":0,\"l\":0}],\"k\":5,\"t\":[{\"e\":12},8]}],\"s\":[{\"p\":4,\"s\":23,\"t\":12}],\"t\":[{\"e\":[{\"n\":5}],\"h\":[{\"i\":12}],\"i\":[{\"f\":19}],\"u\":83},9],\"v\":[{\"e\":[{\"n\":11}],\"i\":5,\"o\":5},9]}],\"b\":[{\"e\":[{\"l\":[{\".\":21,\"s\":21}],\"n\":21}],\"i\":[{\"t\":21}],\"r\":23},42],\"c\":[{\"a\":[{\"d\":21,\"n\":[{\"c\":6}]}],\"c\":[{\"a\":6}],\"e\":[{\"s\":[{\"s\":[{\"a\":4}]}]},29],\"i\":[{\"b\":21,\"f\":[{\"i\":[{\"c\":[{\"a\":[{\"t\":4}]}],\"e\":4}],\"y\":4}],\"m\":3,\"t\":[{\"e\":19},0]},9],\"l\":[{\"a\":[{\"m\":21}],\"u\":[{\"s\":21}]}],\"o\":[{\"l\":24,\"m\":[{\"m\":21,\"p\":[{\"e\":21}]}],\"n\":[{\"c\":21}],\"r\":[{\"a\":3,\"o\":5},24]}],\"r\":[{\"e\":[{\"m\":21}]},29],\"t\":[{\"a\":[{\"n\":1}],\"e\":1}],\"u\":[{\"l\":[{\"a\":3},21]},29],\"h\":[{\"a\":[{\"s\":23}]}]}],\"d\":[{\"a\":37,\"d\":61,\"e\":[{\"r\":34,\"s\":0}],\"i\":[{\"a\":23,\"b\":3,\"c\":[{\"a\":3}],\"m\":3,\"t\":2,\"z\":5},18],\"o\":[{\"l\":21,\"n\":84},18],\"r\":[{\"i\":21}],\"u\":[{\"l\":[{\"o\":4,\"i\":[{\"n\":[{\"g\":2}]}]},21]}],\"g\":[{\"l\":15}]}],\"e\":[{\"c\":9,\"d\":[{\"i\":11}],\"f\":9,\"l\":[{\"i\":11,\"y\":1}],\"m\":9,\"n\":[{\"a\":1}],\"p\":85,\"s\":[{\"t\":17},86],\"t\":[{\"y\":1}],\"x\":19}],\"f\":[{\"e\":[{\"r\":[{\"e\":83}]}],\"f\":41,\"i\":[{\"c\":[{\"i\":32},21],\"l\":17,\"n\":[{\"e\":23,\"i\":[{\"t\":[{\"e\":20}]}]}],\"t\":27}],\"o\":[{\"r\":[{\"e\":[{\"s\":6}]}]}],\"u\":[{\"s\":[{\"e\":[{\".\":21}]}]}]},29],\"g\":[{\"a\":[{\"l\":18}],\"e\":[{\"r\":17}],\"i\":[{\"b\":4,\"c\":1,\"n\":[{\"g\":4}],\"t\":87}],\"n\":4,\"o\":[{\".\":21,\"s\":21}],\"u\":[{\"l\":2,\"r\":19}],\"y\":32}],\"h\":[{\"e\":[{\"r\":17}]},72],\"i\":[{\"c\":19,\"d\":4,\"g\":[{\"l\":4},8],\"m\":[{\"b\":23}],\"n\":[{\"f\":23,\"g\":29,\"s\":[{\"t\":19}]}],\"r\":[{\"d\":0}],\"t\":[{\"e\":11,\"h\":3,\"y\":19}]},9],\"j\":[{\"u\":[{\"d\":[{\"i\":4},21]}]},29],\"k\":[{\"i\":[{\"n\":0}],\"l\":[{\"a\":1}]}],\"l\":[{\"a\":[{\".\":21,\"c\":21,\"n\":[{\"d\":17}],\"t\":[{\"i\":[{\"v\":4}]}],\"w\":21,\"x\":[{\"a\":36}]},29],\"e\":[{\"a\":23,\"b\":[{\"r\":[{\"a\":4}]}],\"c\":32,\"d\":21,\"g\":[{\"a\":3}],\"n\":19,\"r\":34,\"s\":29}],\"f\":9,\"i\":[{\"b\":[{\"e\":23}],\"c\":[{\".\":33,\"a\":3}],\"e\":[{\"r\":23}],\"g\":[{\"i\":[{\"b\":4}]}],\"m\":19,\"n\":[{\"g\":83}],\"o\":23,\"s\":[{\"h\":4},24],\"v\":88,\"t\":[{\"i\":[{\"s\":208}]}]},9],\"l\":[{\"a\":[{\"b\":1},18],\"o\":17}],\"o\":[{\"c\":19,\"g\":4,\"p\":[{\".\":3}],\"a\":29}],\"s\":[{\"h\":9}],\"t\":[{\"a\":1}],\"u\":[{\"d\":19,\"g\":4}]}],\"m\":[{\"a\":[{\"c\":21,\"g\":21,\"n\":[{\"a\":4},19]}],\"b\":4,\"e\":[{\"l\":24,\"t\":21},29],\"i\":[{\"c\":[{\"a\":3}],\"e\":0,\"g\":[{\"r\":[{\"a\":4}]}],\"n\":[{\"e\":4,\"i\":35},89],\"s\":[{\"h\":4,\"s\":19},21],\"z\":3}],\"n\":[{\"i\":[{\"z\":32}]}],\"o\":[{\"g\":0,\"n\":[{\"i\":[{\"o\":7}]}]}],\"p\":[{\"i\":3}],\"u\":[{\"l\":[{\"a\":4},21],\"n\":11}],\"y\":23}],\"n\":[{\"a\":[{\"m\":[{\"o\":4}],\"n\":[{\"t\":21}]}],\"c\":[{\"h\":[{\"e\":[{\"r\":17}]}]}],\"d\":[{\"i\":[{\"c\":3,\"x\":2}]}],\"e\":[{\"a\":19,\"e\":19,\"m\":3,\"r\":[{\"o\":4}],\"s\":[{\"i\":4,\"t\":4}],\"t\":[{\"r\":3}],\"w\":23}],\"i\":[{\"c\":[{\"s\":4}],\"e\":19,\"l\":19,\"o\":23,\"s\":[{\"h\":3}],\"t\":3,\"u\":19,\"z\":32}],\"n\":18,\"o\":[{\"g\":0,\"s\":21,\"v\":3},18],\"s\":[{\"w\":1}],\"t\":[{\"a\":[{\"g\":[{\"e\":5}]}],\"h\":[{\"e\":[{\"s\":18}]}]}],\"u\":[{\"a\":3,\"f\":4}],\"y\":[{\".\":23}],\"z\":61}],\"o\":[{\"f\":19,\"g\":[{\"r\":[{\"a\":[{\"p\":3}]}]},9],\"i\":90,\"l\":23,\"p\":[{\"a\":[{\"r\":11}]}],\"r\":[{\"e\":3,\"o\":[{\"l\":4}]},29],\"s\":0,\"t\":[{\"o\":1},21],\"u\":[{\"t\":19}],\"w\":19}],\"p\":[{\"a\":[{\"i\":23,\"n\":[{\"c\":4}]},24],\"e\":[{\"l\":19,\"n\":[{\"t\":23}],\"t\":[{\"i\":[{\"t\":[{\"i\":[{\"o\":4}]}]}]}]}],\"h\":[{\"e\":17}],\"l\":[{\"i\":21}],\"o\":29,\"r\":[{\"e\":[{\"c\":[{\"a\":4},21],\"d\":21,\"h\":3}],\"o\":[{\"b\":21},23]}],\"s\":[{\"h\":1}],\"t\":[{\"i\":[{\"b\":13}]}],\"u\":[{\"t\":[{\"a\":4},21]}],\"i\":[{\"n\":[{\"e\":[{\"p\":[{\"h\":209}]}]}]}]}],\"q\":[{\"u\":[{\"i\":[{\"l\":12,\"s\":91}]}]},29],\"r\":[{\"a\":[{\"b\":0,\"n\":[{\"d\":18}],\"r\":3,\"t\":[{\"i\":[{\".\":18}]}]},2],\"b\":[{\"l\":1},25],\"c\":[{\"h\":[{\"e\":1},3]}],\"e\":[{\".\":25,\"a\":[{\"l\":23}],\"c\":[{\"o\":5}],\"i\":[{\"n\":11}],\"l\":[{\".\":4}],\"m\":[{\"o\":3}],\"n\":[{\"a\":4,\"c\":[{\"e\":4}],\"e\":18,\"t\":3}],\"q\":0,\"s\":[{\"s\":4,\"t\":3}],\"t\":17}],\"h\":2,\"i\":[{\"a\":[{\"n\":[{\".\":210}]},92],\"c\":[{\"k\":32}],\"e\":[{\"n\":23,\"r\":0}],\"n\":[{\"e\":3}],\"o\":29,\"t\":18,\"u\":1,\"v\":[{\"a\":21},0]},2],\"m\":93,\"n\":[{\"i\":[{\"s\":1,\"t\":18,\"z\":32}],\"o\":3}],\"o\":[{\"b\":4,\"c\":19,\"r\":0,\"u\":2},25],\"s\":[{\"e\":[{\"t\":3}]},2],\"t\":[{\"e\":[{\"r\":11}],\"l\":18,\"w\":3}],\"u\":[{\"t\":0},18],\"w\":[{\"a\":[{\"u\":32}]}]}],\"s\":[{\"a\":[{\"g\":[{\"e\":[{\".\":21,\"s\":21}]}]},72],\"c\":[{\"a\":[{\"n\":4},24],\"r\":23,\"u\":4},9],\"e\":[{\"c\":[{\"r\":4},24],\"n\":[{\"c\":4}],\"r\":[{\"t\":[{\".\":21,\"s\":21}],\"v\":[{\"a\":21}]}]},74],\"h\":[{\"a\":23,\"e\":[{\"n\":5}]},18],\"i\":[{\"c\":24,\"d\":[{\"e\":[{\"n\":4}]},24],\"g\":[{\"n\":[{\"a\":4}]}],\"m\":94,\"n\":95,\"s\":[{\"t\":[{\"e\":17}]}],\"u\":0},29],\"k\":[{\"i\":[{\"n\":19}]}],\"m\":[{\"i\":1}],\"o\":[{\"l\":[{\"u\":3},24],\"n\":[{\"a\":4},24]}],\"p\":[{\"e\":[{\"r\":3}],\"i\":[{\"r\":[{\"a\":4}]}],\"r\":[{\"e\":1}],\"a\":[{\"c\":[{\"i\":211}]}]},29],\"s\":[{\"i\":[{\"b\":96}]},25],\"t\":[{\"a\":[{\"n\":36}],\"i\":[{\"g\":3,\"m\":4}],\"o\":[{\"n\":23},44],\"r\":[{\"o\":19,\"u\":[{\"c\":10}]},25]}],\"u\":[{\"r\":[{\"r\":4},24]}],\"w\":1}],\"t\":[{\"a\":[{\"b\":0}],\"e\":[{\"n\":[{\"d\":17}],\"o\":23}],\"h\":[{\"o\":[{\"d\":54}],\"y\":[{\"l\":[{\"e\":[{\"n\":[{\"e\":162}]}]}]}]}],\"i\":[{\"c\":2,\"d\":[{\"e\":19}],\"n\":[{\"o\":0},17],\"r\":19,\"t\":[{\"i\":[{\"o\":19,\"v\":4}]}]}],\"n\":18,\"o\":[{\"n\":[{\"a\":4}]}],\"r\":[{\"a\":23,\"e\":23,\"i\":[{\"c\":3,\"f\":4}],\"o\":[{\"g\":3,\"s\":4}]}],\"u\":[{\"a\":3}],\"y\":[{\"m\":4}],\"z\":4}],\"u\":[{\"n\":19,\"p\":23,\"r\":[{\"o\":3}],\"s\":0,\"t\":[{\"e\":17,\"i\":[{\"l\":6}],\"r\":4}],\"c\":[{\"l\":[{\"i\":[{\"d\":212}]}]}]},18],\"v\":[{\"a\":[{\"p\":97,\"s\":[{\"t\":4},24]}],\"e\":[{\"a\":19,\"l\":[{\"l\":3,\"o\":12}],\"n\":[{\"g\":19,\"i\":17}],\"r\":[{\"b\":19},2]}],\"i\":[{\"d\":3,\"l\":0,\"n\":21,\"v\":0},29],\"o\":[{\"c\":19}],\"u\":19}],\"w\":[{\"a\":[{\"g\":21},29],\"e\":[{\"e\":19}],\"h\":23,\"i\":[{\"l\":6,\"n\":[{\"g\":3}],\"t\":23}]}],\"x\":[{\"p\":41}],\"y\":[{\"c\":32,\"e\":[{\".\":32}],\"s\":0}]}],\"f\":[{\"a\":[{\"b\":[{\"l\":3,\"r\":11}],\"c\":[{\"e\":1}],\"g\":18,\"i\":[{\"n\":17}],\"l\":[{\"l\":[{\"e\":6}]}],\"m\":[{\"a\":26,\"i\":[{\"s\":5}]}],\"r\":[{\"t\":[{\"h\":5}]},32],\"t\":[{\"a\":3,\"h\":[{\"e\":3}],\"o\":18}],\"u\":[{\"l\":[{\"t\":7}]}]},41],\"b\":56,\"d\":18,\"e\":[{\".\":18,\"a\":[{\"s\":17,\"t\":[{\"h\":54}]}],\"b\":[{\"r\":[{\"u\":[{\"a\":15}]}]},1],\"c\":[{\"a\":18,\"t\":32}],\"d\":25,\"l\":[{\"i\":3}],\"m\":[{\"o\":1}],\"n\":[{\"d\":[{\"e\":6},8]}],\"r\":[{\"r\":32,\"m\":[{\"i\":[{\"o\":213}]}]},15],\"v\":0}],\"f\":[{\"e\":[{\"s\":21}],\"i\":[{\"e\":21,\"n\":[{\".\":19}],\"s\":94}],\"l\":[{\"y\":21}],\"y\":24},43],\"h\":18,\"i\":[{\"a\":3,\"c\":[{\".\":48,\"a\":[{\"l\":47,\"n\":23,\"t\":[{\"e\":18}]}],\"e\":[{\"n\":23,\"r\":3}],\"i\":[{\"a\":32,\"e\":32},0],\"s\":18,\"u\":3,\"h\":27}],\"d\":[{\"e\":[{\"l\":4}]}],\"g\":[{\"h\":[{\"t\":7}]}],\"l\":[{\"i\":5,\"l\":[{\"i\":[{\"n\":6}]}],\"y\":18}],\"n\":[{\"a\":32,\"d\":97,\"e\":9,\"g\":98,\"n\":0},25],\"s\":[{\"t\":[{\"i\":0}]}],\"t\":[{\"t\":[{\"e\":[{\"d\":[{\".\":5}]}]}]}]},41],\"l\":[{\"e\":[{\"s\":[{\"s\":19}]}],\"i\":[{\"n\":17}],\"o\":[{\"r\":[{\"e\":11}],\"w\":[{\"e\":[{\"r\":[{\".\":84}]}]}]}],\"y\":100,\"a\":[{\"g\":[{\"e\":[{\"l\":214}]}]}],\"u\":[{\"o\":[{\"r\":27}]}]},99],\"m\":18,\"n\":18,\"o\":[{\"n\":[{\"d\":[{\"e\":0}],\"t\":0},32],\"r\":[{\"a\":[{\"t\":4,\"y\":5}],\"e\":[{\"t\":6}],\"i\":0,\"t\":[{\"a\":6}]},9],\"s\":5},41],\"p\":56,\"r\":[{\"a\":[{\"t\":0}],\"e\":[{\"a\":19,\"s\":[{\"c\":6}]}],\"i\":[{\"l\":17},8],\"o\":[{\"l\":6}]}],\"s\":48,\"t\":[{\"o\":21,\"y\":24},25],\"u\":[{\"e\":[{\"l\":4}],\"g\":18,\"m\":[{\"i\":[{\"n\":1}]}],\"n\":[{\"e\":4}],\"r\":[{\"i\":3}],\"s\":[{\"i\":17,\"s\":0}],\"t\":[{\"a\":18}]},27],\"y\":41}],\"g\":[{\"a\":[{\"f\":0,\"l\":[{\".\":32,\"i\":27,\"o\":3}],\"m\":[{\"e\":[{\"t\":4}],\"o\":19},25],\"n\":[{\"i\":[{\"s\":5,\"z\":[{\"a\":6},3]}],\"o\":18}],\"r\":[{\"n\":67}],\"s\":[{\"s\":17}],\"t\":[{\"h\":12,\"i\":[{\"v\":18}]}],\"z\":18},41],\"b\":23,\"d\":1,\"e\":[{\".\":25,\"d\":25,\"e\":[{\"z\":17}],\"l\":[{\"i\":[{\"n\":0,\"s\":4,\"z\":4}],\"y\":18}],\"n\":[{\"a\":[{\"t\":1}],\"i\":[{\"z\":4}],\"o\":18,\"y\":18,\"c\":[{\"y\":[{\".\":8}]}]},41],\"o\":[{\"m\":3,\"d\":215},41],\"r\":[{\"y\":21}],\"s\":[{\"i\":32}],\"t\":[{\"h\":6,\"o\":18,\"y\":1,\"i\":[{\"c\":[{\".\":8}]}]}],\"v\":1}],\"g\":[{\"e\":[{\"r\":23},24],\"l\":[{\"u\":6}],\"o\":0},101],\"h\":[{\"i\":[{\"n\":3}],\"o\":[{\"u\":[{\"t\":4}]}],\"t\":[{\"o\":1,\"w\":[{\"e\":15}]}]}],\"i\":[{\".\":32,\"a\":[{\"r\":5},102],\"c\":[{\"i\":[{\"a\":32}],\"o\":21},29],\"e\":[{\"n\":6,\"s\":[{\".\":32}]}],\"l\":0,\"m\":[{\"e\":[{\"n\":23}]}],\"n\":[{\".\":68,\"g\":[{\"e\":5}],\"s\":103}],\"o\":32,\"r\":[{\"l\":0},27],\"s\":[{\"l\":23}],\"u\":1,\"v\":32,\"z\":27}],\"l\":[{\"a\":[{\"d\":[{\"i\":6}],\"s\":32},0],\"e\":[{\"a\":[{\"d\":29}]},41],\"i\":[{\"b\":0,\"g\":23,\"s\":[{\"h\":43}]}],\"o\":[{\"r\":11,\"b\":[{\"i\":[{\"n\":106}]}]},27]},9],\"m\":[{\"y\":21},29],\"n\":[{\"a\":[{\".\":21,\"c\":69},1],\"e\":[{\"t\":[{\"t\":17,\"i\":[{\"s\":[{\"m\":137}]}]}]}],\"i\":[{\"n\":24,\"o\":21},29],\"o\":[{\"n\":21,\"m\":[{\"o\":5}],\"r\":[{\".\":216,\"e\":[{\"s\":[{\"p\":24}]}]}]},29]}],\"o\":[{\".\":27,\"b\":5,\"e\":32,\"g\":104,\"i\":[{\"s\":3}],\"n\":[{\"a\":105,\"d\":[{\"o\":7}],\"i\":[{\"z\":[{\"a\":217}]},3]},8],\"o\":32,\"r\":[{\"i\":[{\"z\":4}],\"o\":[{\"u\":5}]}],\"s\":[{\".\":32}],\"v\":15},41],\"p\":23,\"r\":[{\"a\":[{\"d\":[{\"a\":18}],\"i\":21,\"n\":84,\"p\":[{\"h\":[{\".\":32,\"e\":[{\"r\":[{\".\":7},19]}],\"i\":[{\"c\":32}],\"y\":18}]}],\"y\":18}],\"e\":[{\"n\":0,\"s\":[{\"s\":[{\".\":18}]}]}],\"i\":[{\"t\":18,\"e\":[{\"v\":213}]}],\"o\":21,\"u\":[{\"f\":17}]},41],\"s\":[{\"t\":[{\"e\":19}]},9],\"t\":[{\"h\":11}],\"u\":[{\"a\":[{\"r\":[{\"d\":27}]},1],\"e\":25,\"i\":[{\"t\":106}],\"n\":27,\"s\":27,\"t\":[{\"a\":[{\"n\":29}]},26]}],\"w\":23,\"y\":[{\"n\":107,\"r\":[{\"a\":4}]},41]}],\"h\":[{\"a\":[{\"b\":[{\"l\":73}],\"c\":[{\"h\":17}],\"e\":[{\"m\":0,\"t\":0}],\"g\":[{\"u\":19}],\"l\":[{\"a\":[{\"m\":12},3]}],\"m\":1,\"n\":[{\"c\":[{\"i\":0,\"y\":0}],\"d\":[{\".\":32}],\"g\":[{\"e\":[{\"r\":6}],\"o\":6},0],\"i\":[{\"z\":108}],\"k\":0,\"t\":[{\"e\":0}]}],\"p\":[{\"l\":11,\"t\":5,\"a\":[{\"r\":[{\"r\":218}]}]}],\"r\":[{\"a\":[{\"n\":3,\"s\":4}],\"d\":[{\"e\":12},8],\"l\":[{\"e\":0}],\"p\":[{\"e\":[{\"n\":6}]}],\"t\":[{\"e\":[{\"r\":5}]}]}],\"s\":[{\"s\":5}],\"u\":[{\"n\":17}],\"z\":[{\"a\":11},32],\"i\":[{\"r\":[{\"s\":137}]}],\"t\":[{\"c\":[{\"h\":213}]}]}],\"b\":29,\"e\":[{\"a\":[{\"d\":41,\"r\":27}],\"c\":[{\"a\":[{\"n\":1,\"t\":19}]}],\"d\":[{\"o\":13},21],\"l\":[{\"i\":93,\"l\":[{\"i\":[{\"s\":0}],\"y\":0}],\"o\":19}],\"m\":[{\"p\":0}],\"n\":[{\"a\":[{\"t\":5},17]},9],\"o\":[{\"r\":5}],\"p\":5,\"r\":[{\"a\":[{\"p\":12},21],\"b\":[{\"a\":0}],\"e\":[{\"a\":6}],\"n\":23,\"o\":[{\"u\":19}],\"y\":23}],\"s\":[{\"p\":64},29],\"t\":[{\"e\":[{\"d\":0}]},1],\"u\":0,\"x\":[{\"a\":168}]}],\"f\":29,\"h\":29,\"i\":[{\"a\":[{\"n\":4}],\"c\":[{\"o\":1}],\"g\":[{\"h\":6}],\"l\":109,\"m\":[{\"e\":[{\"r\":36}]}],\"n\":[{\"a\":21}],\"o\":[{\"n\":[{\"e\":17}]}],\"p\":[{\"e\":[{\"l\":[{\"a\":219}]}]},1],\"r\":[{\"l\":0,\"o\":3,\"p\":0,\"r\":0}],\"s\":[{\"e\":[{\"l\":11}],\"s\":0}],\"t\":[{\"h\":[{\"e\":[{\"r\":6}]}],\"e\":[{\"s\":[{\"i\":[{\"d\":12}]}]}]}],\"v\":9}],\"k\":18,\"l\":[{\"a\":[{\"n\":17}],\"o\":[{\"r\":[{\"i\":11}]},24]},80],\"m\":[{\"e\":[{\"t\":17}]},43],\"n\":[{\"a\":[{\"u\":[{\"z\":12}]}]},42],\"o\":[{\"d\":[{\"i\":[{\"z\":19}],\"s\":19}],\"g\":[{\"e\":17},1],\"l\":[{\"a\":[{\"r\":5}],\"e\":110}],\"m\":[{\"a\":1,\"e\":12}],\"n\":[{\"a\":0,\"y\":4}],\"o\":[{\"d\":27,\"n\":17}],\"r\":[{\"a\":[{\"t\":5}],\"i\":[{\"s\":4,\"c\":[{\".\":187}]}],\"t\":[{\"e\":12}],\"u\":4}],\"s\":[{\"e\":[{\"n\":4},0],\"p\":15}],\"u\":[{\"s\":[{\"e\":54},41]}],\"v\":[{\"e\":[{\"l\":5}]}]}],\"p\":56,\"r\":[{\"e\":[{\"e\":6}],\"o\":[{\"n\":[{\"i\":[{\"z\":5}]}],\"p\":[{\"o\":11}]}]},26],\"s\":[{\"h\":21},101],\"t\":[{\"a\":[{\"r\":21}],\"e\":[{\"n\":2,\"s\":4,\"o\":[{\"u\":216}]}],\"y\":21}],\"u\":[{\"g\":1,\"m\":[{\"i\":[{\"n\":1}]}],\"n\":[{\"k\":[{\"e\":5}],\"t\":0}],\"s\":[{\"t\":14}],\"t\":1}],\"w\":[{\"a\":[{\"r\":[{\"t\":21}]}]},29],\"y\":[{\"p\":[{\"e\":3,\"h\":3,\"o\":[{\"t\":[{\"h\":[{\"a\":137}]}]}]}],\"s\":9}]}],\"i\":[{\"a\":[{\"l\":24,\"m\":[{\"e\":[{\"t\":[{\"e\":5}]}]},0],\"n\":[{\"c\":18,\"i\":11,\"t\":46},24],\"p\":[{\"e\":4}],\"s\":[{\"s\":17}],\"t\":[{\"i\":[{\"v\":21}],\"r\":[{\"i\":[{\"c\":1}]}],\"u\":21}]},42],\"b\":[{\"e\":[{\"r\":[{\"a\":3,\"t\":4}]},0],\"i\":[{\"a\":4,\"n\":3,\"t\":[{\".\":4,\"e\":4}]}],\"l\":[{\"i\":3},29],\"o\":19,\"r\":[{\"i\":94},29],\"u\":[{\"n\":19}]}],\"c\":[{\"a\":[{\"m\":18,\"p\":32,\"r\":[{\".\":21,\"a\":21},18],\"s\":6,\"y\":21}],\"c\":[{\"u\":17}],\"e\":[{\"o\":18}],\"h\":18,\"i\":[{\"d\":19,\"n\":[{\"a\":4}],\"p\":[{\"a\":3},24]},25],\"l\":[{\"y\":21}],\"o\":[{\"c\":94}],\"r\":[{\"a\":32,\"y\":21},43],\"t\":[{\"e\":1,\"u\":[{\"a\":111},84]}],\"u\":[{\"l\":[{\"a\":3}],\"m\":1,\"o\":4,\"r\":23}]}],\"d\":[{\"a\":[{\"i\":21,\"n\":[{\"c\":4}]}],\"d\":4,\"e\":[{\"a\":[{\"l\":11}],\"s\":0}],\"i\":[{\"a\":[{\"n\":4,\"r\":0}],\"e\":19,\"o\":[{\"u\":5,\"s\":1},3],\"t\":2,\"u\":4},24],\"l\":[{\"e\":23}],\"o\":[{\"m\":21,\"w\":3}],\"r\":21,\"u\":[{\"o\":4},24]},25],\"e\":[{\"d\":[{\"e\":0}],\"g\":[{\"a\":113}],\"l\":[{\"d\":12}],\"n\":[{\"a\":67,\"e\":0,\"n\":19,\"t\":[{\"i\":23}]}],\"r\":[{\".\":29}],\"s\":[{\"c\":23,\"t\":29}],\"t\":23},112],\"f\":[{\".\":18,\"e\":[{\"r\":[{\"o\":4}]}],\"f\":[{\"e\":[{\"n\":5}],\"r\":1}],\"i\":[{\"c\":[{\".\":18}],\"e\":23}],\"l\":23,\"t\":18,\"a\":[{\"c\":[{\"e\":[{\"t\":137}]}]}]}],\"g\":[{\"a\":[{\"b\":5}],\"e\":[{\"r\":[{\"a\":3}]}],\"h\":[{\"t\":[{\"i\":12}]}],\"i\":[{\"b\":23,\"l\":3,\"n\":3,\"t\":3},18],\"l\":28,\"o\":[{\"r\":3,\"t\":4},24],\"r\":[{\"e\":19}],\"u\":[{\"i\":5,\"r\":2}],\"n\":[{\"i\":[{\"t\":[{\"e\":[{\"r\":213}]},0]}]}]},25],\"h\":23,\"i\":114,\"j\":[{\"k\":21},23],\"k\":18,\"l\":[{\"a\":[{\"b\":93,\"d\":[{\"e\":21}],\"m\":94,\"r\":[{\"a\":5}]},29],\"e\":[{\"g\":23,\"r\":2,\"v\":17}],\"f\":4,\"i\":[{\"a\":3,\"b\":9,\"o\":3,\"s\":[{\"t\":1}],\"t\":25,\"z\":9},2],\"l\":[{\"a\":[{\"b\":5}]}],\"n\":18,\"o\":[{\"q\":3}],\"t\":[{\"y\":1}],\"u\":[{\"r\":4}],\"v\":3}],\"m\":[{\"a\":[{\"g\":[{\"e\":3},21],\"r\":[{\"y\":5}]}],\"e\":[{\"n\":[{\"t\":[{\"a\":[{\"r\":10}]}]}],\"t\":18}],\"i\":[{\"d\":[{\"a\":4}],\"l\":[{\"e\":5}],\"n\":[{\"i\":19}],\"t\":18},2],\"n\":[{\"i\":1}],\"o\":[{\"n\":23}],\"u\":[{\"l\":[{\"a\":3}]},24],\"p\":[{\"e\":[{\"d\":[{\"a\":201}]}]}]}],\"n\":[{\".\":25,\"a\":[{\"u\":83,\"v\":18}],\"c\":[{\"e\":[{\"l\":36,\"r\":3}]}],\"d\":[{\"l\":[{\"i\":[{\"n\":[{\"g\":4}]}]}]},18],\"e\":[{\"e\":23,\"r\":[{\"a\":[{\"r\":17}]}],\"s\":[{\"s\":19}]},25],\"g\":[{\"a\":18,\"e\":[{\"n\":4},18],\"i\":18,\"l\":[{\"i\":[{\"n\":[{\"g\":4}]}]}],\"o\":18,\"u\":18}],\"i\":[{\".\":19,\"a\":21,\"o\":3,\"s\":2,\"t\":[{\"e\":[{\".\":19,\"l\":[{\"y\":[{\".\":19}]}]}],\"i\":[{\"o\":32}],\"y\":3}]},25],\"k\":18,\"l\":18,\"n\":25,\"o\":[{\"c\":90,\"s\":0,\"t\":21},42],\"s\":[{\"e\":3,\"u\":[{\"r\":[{\"a\":7}]}]},25],\"t\":[{\".\":25,\"h\":112}],\"u\":[{\"s\":19},2],\"y\":18,\"f\":[{\"r\":[{\"a\":[{\"s\":220}]}]}]}],\"o\":[{\".\":18,\"g\":[{\"e\":17,\"r\":9}],\"l\":29,\"m\":1,\"n\":[{\"a\":[{\"t\":11}],\"e\":[{\"r\":[{\"y\":0}]}],\"i\":11}],\"p\":[{\"h\":4}],\"r\":[{\"i\":11}],\"s\":21,\"t\":[{\"h\":4,\"i\":19,\"o\":1}],\"u\":[{\"r\":21}]},25],\"p\":[{\"e\":0,\"h\":[{\"r\":[{\"a\":[{\"s\":115}]}]}],\"i\":[{\"c\":1},3],\"r\":[{\"e\":96}],\"u\":[{\"l\":3}]},25],\"q\":[{\"u\":[{\"a\":23,\"e\":[{\"f\":4}],\"i\":[{\"d\":3,\"t\":116}]}]}],\"r\":[{\"a\":[{\"b\":0,\"c\":21},29],\"d\":[{\"e\":5}],\"e\":[{\"d\":[{\"e\":0}],\"f\":21,\"l\":117,\"s\":21}],\"g\":[{\"i\":4}],\"i\":[{\"d\":[{\"e\":5}],\"s\":1,\"t\":[{\"u\":11}],\"z\":118},2],\"m\":[{\"i\":[{\"n\":1}]}],\"o\":[{\"g\":0,\"n\":[{\".\":32}]}],\"u\":[{\"l\":4}],\"r\":[{\"e\":[{\"v\":[{\"o\":[{\"c\":221}]}]}]}]},18],\"s\":[{\".\":25,\"a\":[{\"g\":4,\"r\":3,\"s\":6}],\"c\":[{\"h\":3},119],\"e\":[{\"r\":3},18],\"f\":27,\"h\":[{\"a\":[{\"n\":4}],\"o\":[{\"n\":3,\"p\":5}]}],\"i\":[{\"b\":3,\"d\":0,\"s\":19,\"t\":[{\"i\":[{\"v\":4}]}]}],\"k\":26,\"l\":[{\"a\":[{\"n\":36}]}],\"m\":[{\"s\":18}],\"o\":[{\"m\":[{\"e\":[{\"r\":5}]}]},24],\"p\":[{\"i\":9,\"y\":1},2],\"s\":[{\"a\":[{\"l\":1}],\"e\":[{\"n\":36,\"s\":1}]},62],\"t\":[{\"a\":[{\".\":1}],\"e\":2,\"i\":2,\"l\":[{\"y\":0}],\"r\":[{\"a\":[{\"l\":18}]}]}],\"u\":[{\"s\":4},24]}],\"t\":[{\"a\":[{\".\":18,\"b\":[{\"i\":0}],\"g\":21,\"m\":120,\"n\":23,\"t\":23}],\"e\":[{\"r\":[{\"a\":3,\"i\":19}],\"s\":[{\"i\":[{\"m\":[{\"a\":29}]}]},1]},25],\"h\":[{\"i\":[{\"l\":148}]},25],\"i\":[{\"a\":18,\"c\":[{\"a\":3,\"k\":31},22],\"g\":3,\"l\":[{\"l\":4}],\"m\":24,\"o\":25,\"s\":[{\"m\":21},18],\"n\":[{\"e\":[{\"r\":[{\"a\":[{\"r\":158}]}]}]}]},29],\"o\":[{\"m\":121,\"n\":18}],\"r\":[{\"a\":[{\"m\":21}],\"y\":4}],\"t\":18,\"u\":[{\"a\":[{\"t\":3}],\"d\":19,\"l\":3}],\"z\":[{\".\":18}]}],\"u\":29,\"v\":[{\"e\":[{\"l\":[{\"l\":3}],\"n\":[{\".\":3}],\"r\":[{\".\":83,\"s\":[{\".\":21}]}]}],\"i\":[{\"l\":[{\".\":4}],\"o\":4,\"t\":2}],\"o\":[{\"r\":[{\"e\":19,\"o\":35}],\"t\":83}]},25],\"w\":56,\"x\":[{\"o\":1}],\"y\":18,\"z\":[{\"a\":[{\"r\":18}],\"i\":0,\"o\":[{\"n\":[{\"t\":32}]}]}]}],\"j\":[{\"a\":[{\"c\":[{\"q\":0}],\"p\":[{\"a\":[{\"n\":[{\"e\":[{\"s\":220}]}]}]},1],\"n\":[{\"u\":[{\"a\":12}]}]},32],\"e\":[{\"r\":[{\"s\":5,\"e\":[{\"m\":222}]}],\"s\":[{\"t\":[{\"i\":[{\"e\":18}],\"y\":18}]}],\"w\":11},41],\"o\":[{\"p\":1}],\"u\":[{\"d\":[{\"g\":32}]}]}],\"k\":[{\"a\":[{\".\":27,\"b\":23,\"g\":19,\"i\":[{\"s\":17}],\"l\":0}],\"b\":29,\"e\":[{\"d\":24,\"e\":41,\"g\":1,\"l\":[{\"i\":[{\"n\":[{\"g\":223}]},4]}],\"n\":[{\"d\":73}],\"r\":29,\"s\":[{\"t\":[{\".\":23}]},0],\"t\":[{\"y\":1}]}],\"f\":23,\"h\":1,\"i\":[{\".\":32,\"c\":122,\"l\":[{\"l\":21,\"o\":6}],\"m\":21,\"n\":[{\".\":21,\"d\":[{\"e\":0}],\"e\":[{\"s\":[{\"s\":19}],\"t\":[{\"i\":[{\"c\":224}]}]}],\"g\":0}],\"p\":1,\"s\":[{\"h\":19},0]},29],\"k\":1,\"l\":[{\"e\":[{\"y\":18}],\"y\":18},29],\"m\":29,\"n\":[{\"e\":[{\"s\":19}],\"o\":69}],\"o\":[{\"r\":4,\"s\":[{\"h\":17}],\"u\":23,\"v\":[{\"i\":[{\"a\":[{\"n\":41}]}]}]}],\"r\":[{\"o\":[{\"n\":5}]}],\"s\":[{\"c\":21,\"l\":1,\"y\":21,\"h\":[{\"a\":23}]},101],\"t\":19,\"w\":29}],\"l\":[{\"a\":[{\"b\":[{\"i\":[{\"c\":11}],\"o\":21}],\"c\":[{\"i\":[{\"e\":225},17]}],\"d\":[{\"e\":21,\"y\":3}],\"g\":[{\"n\":0}],\"m\":[{\"o\":11}],\"n\":[{\"d\":[{\"l\":0},27],\"e\":[{\"t\":5}],\"t\":[{\"e\":0}]}],\"r\":[{\"g\":0,\"i\":11,\"c\":[{\"e\":[{\"n\":176}]}]}],\"s\":[{\"e\":0}],\"t\":[{\"a\":[{\"n\":4}],\"e\":[{\"l\":[{\"i\":18}]}],\"i\":[{\"v\":18}]}],\"v\":[{\"a\":95},18],\"i\":[{\"n\":[{\"e\":[{\"s\":[{\"s\":226}]}]}]}]}],\"b\":[{\"i\":[{\"n\":17}]},42],\"c\":[{\"e\":0,\"i\":23,\"h\":[{\"a\":[{\"i\":23}],\"i\":[{\"l\":[{\"d\":227}]}]}]},101],\"d\":[{\"e\":[{\"r\":[{\"e\":1,\"i\":1}]},24],\"i\":[{\"s\":4},0],\"r\":[{\"i\":21},23]},25],\"e\":[{\"a\":[{\"d\":[{\"e\":[{\"r\":[{\".\":183}]}]}],\"s\":[{\"a\":228}]},9],\"b\":[{\"i\":1}],\"f\":[{\"t\":6}],\"g\":[{\".\":32,\"g\":32,\"e\":[{\"n\":[{\"d\":[{\"r\":[{\"e\":230}]}]}]}]}],\"m\":[{\"a\":[{\"t\":[{\"i\":[{\"c\":5}]},1]}]}],\"n\":[{\".\":18,\"c\":27,\"e\":[{\".\":32}],\"t\":41,\"o\":[{\"i\":[{\"d\":78}]}]}],\"p\":[{\"h\":3,\"r\":1}],\"r\":[{\"a\":[{\"b\":6}],\"e\":0,\"g\":27,\"i\":68,\"o\":21}],\"s\":[{\"c\":[{\"o\":4}],\"q\":32,\"s\":[{\".\":32},27]},8],\"v\":[{\"a\":23,\"e\":[{\"r\":[{\".\":0,\"a\":0,\"s\":0}]}]}],\"y\":[{\"e\":18},27],\"c\":[{\"t\":[{\"a\":[{\"b\":229}]}]}]}],\"f\":[{\"r\":19},25],\"g\":[{\"a\":[{\"r\":12},19],\"e\":[{\"s\":21}],\"o\":11},80],\"h\":48,\"i\":[{\"a\":[{\"g\":1,\"m\":9,\"r\":[{\"i\":[{\"z\":6}]}],\"s\":1,\"t\":[{\"o\":1}]}],\"b\":[{\"i\":4}],\"c\":[{\"i\":[{\"o\":32}],\"o\":[{\"r\":1}],\"s\":18,\"t\":[{\".\":18}],\"u\":21,\"y\":23}],\"d\":[{\"a\":23,\"e\":[{\"r\":5}],\"i\":27}],\"f\":[{\"e\":[{\"r\":11}],\"f\":21,\"l\":1}],\"g\":[{\"a\":[{\"t\":[{\"e\":32}]}],\"h\":27,\"r\":[{\"a\":1}]}],\"k\":27,\"l\":123,\"m\":[{\"b\":[{\"l\":0}],\"i\":11,\"o\":1,\"p\":90}],\"n\":[{\"a\":21,\"e\":[{\"a\":11},124],\"i\":11,\"k\":[{\"e\":[{\"r\":6}]}]}],\"o\":[{\"g\":4}],\"q\":125,\"s\":[{\"p\":0}],\"t\":[{\".\":24,\"i\":[{\"c\":[{\"a\":32,\"s\":108}]}],\"h\":[{\"o\":[{\"g\":204}]}]},29],\"v\":[{\"e\":[{\"r\":11}]}],\"z\":29}],\"j\":18,\"k\":[{\"a\":[{\"l\":23,\"t\":0},11]}],\"l\":[{\"a\":[{\"w\":21}],\"e\":[{\"a\":19,\"c\":23,\"g\":23,\"l\":23,\"n\":73,\"t\":73},24],\"i\":[{\"n\":[{\"a\":19},126],\"s\":[{\"h\":231}]},9],\"o\":[{\"q\":[{\"u\":[{\"i\":10}]}],\"u\":[{\"t\":4}],\"w\":19},1],\"f\":[{\"l\":2}]},29],\"m\":[{\"e\":[{\"t\":19}],\"i\":[{\"n\":[{\"g\":3}]}],\"o\":[{\"d\":21,\"n\":[{\"e\":[{\"l\":[{\"l\":232}]}]},17]}]},25],\"n\":81,\"o\":[{\".\":27,\"b\":[{\"a\":[{\"l\":5}],\"o\":[{\"t\":[{\"o\":233}]}]}],\"c\":[{\"i\":1}],\"f\":18,\"g\":[{\"i\":[{\"c\":27}],\"o\":19,\"u\":27,\"e\":[{\"s\":[{\".\":9}]}]}],\"m\":[{\"e\":[{\"r\":11}]}],\"n\":[{\"g\":32,\"i\":[{\"z\":127},0]}],\"o\":[{\"d\":6}],\"p\":[{\"e\":[{\".\":32}],\"i\":11,\"m\":23}],\"r\":[{\"a\":[{\"t\":[{\"o\":1}]},17],\"i\":[{\"e\":4}],\"o\":[{\"u\":5}]}],\"s\":[{\".\":32,\"e\":[{\"t\":5}],\"o\":[{\"p\":[{\"h\":[{\"i\":[{\"z\":32}],\"y\":32}]}]}],\"t\":0}],\"t\":[{\"a\":1}],\"u\":[{\"n\":[{\"d\":6}],\"t\":25}],\"v\":18,\"a\":[{\"d\":[{\"e\":[{\"d\":[{\".\":17}],\"r\":[{\".\":183}]}]}]}]}],\"p\":[{\"a\":[{\"b\":5}],\"h\":[{\"a\":23,\"i\":19}],\"i\":[{\"n\":[{\"g\":4}],\"t\":23}],\"l\":21,\"r\":19},25],\"r\":43,\"s\":[{\"c\":21,\"e\":24,\"i\":[{\"e\":21}]},81],\"t\":[{\"a\":[{\"g\":4,\"n\":[{\"e\":7}]}],\"e\":[{\"n\":17,\"r\":[{\"a\":36}],\"a\":23},29],\"h\":[{\"i\":[{\"l\":[{\"y\":148}]},11]}],\"i\":[{\"e\":[{\"s\":[{\".\":19}]}],\"s\":17}],\"r\":29,\"u\":[{\"r\":[{\"a\":12}]},8]},18],\"u\":[{\"a\":4,\"b\":[{\"r\":3}],\"c\":[{\"h\":17,\"i\":3}],\"e\":[{\"n\":3,\"p\":15}],\"f\":0,\"i\":[{\"d\":4}],\"m\":[{\"a\":1,\"i\":32,\"n\":[{\".\":19,\"i\":[{\"a\":32}]}],\"b\":[{\"i\":[{\"a\":[{\".\":235}]}]}]}],\"o\":[{\"r\":11},3],\"p\":18,\"s\":[{\"s\":17,\"t\":[{\"e\":11}]}],\"t\":41,\"n\":[{\"k\":[{\"e\":[{\"r\":234}]}]}]}],\"v\":[{\"e\":[{\"n\":19,\"t\":128}]}],\"w\":42,\"y\":[{\"a\":18,\"b\":18,\"m\":[{\"e\":4}],\"n\":[{\"o\":3}],\"s\":[{\"e\":19,\"t\":[{\"y\":[{\"r\":4}]}]},58],\"g\":[{\"a\":[{\"m\":[{\"i\":236}]}]}]},41]}],\"m\":[{\"a\":[{\"b\":25,\"c\":[{\"a\":9,\"h\":[{\"i\":[{\"n\":[{\"e\":4}]}]}],\"l\":1}],\"g\":[{\"i\":[{\"n\":5}],\"n\":32}],\"h\":25,\"i\":[{\"d\":6}],\"l\":[{\"d\":18,\"i\":[{\"g\":3,\"n\":4}],\"l\":[{\"i\":0}],\"t\":[{\"y\":0}],\"a\":[{\"p\":222}]}],\"n\":[{\"i\":[{\"a\":32,\"s\":5,\"z\":11}],\".\":24,\"u\":[{\"s\":[{\"c\":237}]}]}],\"p\":[{\"h\":[{\"r\":[{\"o\":244}]}]},18],\"r\":[{\"i\":[{\"n\":[{\"e\":[{\".\":4}]}],\"z\":4}],\"l\":[{\"y\":0}],\"v\":11,\"g\":[{\"i\":[{\"n\":238}]}]}],\"s\":[{\"c\":[{\"e\":4}],\"e\":0,\"t\":15}],\"t\":[{\"e\":32,\"h\":12,\"i\":[{\"s\":3,\"z\":[{\"a\":18}]}]}]},41],\"b\":[{\"a\":[{\"t\":129}],\"i\":[{\"l\":19,\"n\":[{\"g\":83}],\"v\":0}]},43],\"c\":56,\"e\":[{\".\":18,\"d\":[{\".\":18,\"i\":[{\"a\":32,\"e\":3,\"c\":[{\"i\":[{\"n\":152}]},84],\"o\":[{\"c\":239}]}],\"y\":108},25],\"g\":[{\"r\":[{\"a\":[{\"n\":240}]}]},9],\"l\":[{\"o\":[{\"n\":5}],\"t\":0}],\"m\":[{\"o\":130},9],\"n\":[{\"a\":[{\"c\":5},0],\"d\":[{\"e\":0}],\"e\":18,\"i\":0,\"s\":[{\"u\":7},17],\"t\":[{\"e\":0},27],\".\":24},41],\"o\":[{\"n\":4}],\"r\":[{\"s\":[{\"a\":19}]}],\"s\":[{\"t\":[{\"i\":27}]},25],\"t\":[{\"a\":[{\"l\":11},1],\"e\":2,\"h\":[{\"i\":4}],\"r\":[{\"i\":[{\"c\":32,\"e\":4}],\"y\":3},21]}],\"v\":1}],\"f\":43,\"h\":25,\"i\":[{\".\":32,\"a\":3,\"d\":[{\"a\":[{\"b\":241},0],\"g\":0}],\"g\":0,\"l\":[{\"i\":[{\"a\":27,\"e\":108,\"t\":[{\"a\":27}]}],\"l\":[{\"a\":[{\"g\":208}],\"i\":[{\"l\":[{\"i\":59}]}]},21]}],\"n\":[{\"a\":0,\"d\":27,\"e\":[{\"e\":19}],\"g\":[{\"l\":[{\"i\":5,\"y\":19},21]}],\"t\":0,\"u\":[{\"t\":[{\"e\":[{\"r\":242,\"s\":[{\"t\":242}]}]}]},21],\"i\":[{\"s\":[{\".\":174}]}]}],\"o\":[{\"t\":17}],\"s\":[{\"e\":[{\"r\":[{\".\":0}]}],\"l\":5,\"t\":[{\"i\":0,\"r\":[{\"y\":19}]}]},24],\"t\":[{\"h\":18}],\"z\":24}],\"k\":18,\"l\":43,\"m\":[{\"a\":[{\"r\":[{\"y\":5}],\"b\":243}]},29],\"n\":[{\"a\":1,\"i\":[{\"n\":21}],\"o\":1},43],\"o\":[{\"c\":[{\"r\":[{\"a\":[{\"t\":[{\"i\":[{\"z\":32}]},245]}]},18]}],\"d\":131,\"g\":[{\"o\":1}],\"i\":[{\"s\":[{\"e\":5},84]}],\"k\":18,\"l\":[{\"e\":[{\"s\":[{\"t\":4}],\"c\":246}]}],\"m\":[{\"e\":3}],\"n\":[{\"e\":[{\"t\":5,\"y\":[{\"l\":247}]}],\"g\":[{\"e\":5}],\"i\":[{\"a\":12,\"s\":[{\"m\":0,\"t\":0}],\"z\":3}],\"o\":[{\"l\":36,\"c\":[{\"h\":12}],\"e\":[{\"n\":171}],\"s\":249}],\"y\":[{\".\":3}]}],\"r\":[{\"a\":[{\".\":18}],\"o\":[{\"n\":[{\"i\":[{\"s\":248}]}]}]},9],\"s\":[{\"e\":[{\"y\":4}],\"p\":3},8],\"t\":[{\"h\":[{\"e\":[{\"t\":250}]},12]}],\"u\":[{\"f\":19,\"s\":[{\"i\":[{\"n\":98}]},27]}],\"v\":9,\"e\":[{\"l\":[{\"a\":[{\"s\":167}]}]}]},41],\"p\":[{\"a\":[{\"r\":[{\"a\":[{\"b\":5},7],\"i\":6}]}],\"e\":[{\"t\":23}],\"h\":[{\"a\":[{\"s\":36}]}],\"i\":[{\"a\":0,\"e\":[{\"s\":4}],\"n\":34,\"r\":19,\"s\":4},24],\"o\":[{\"r\":[{\"i\":11}],\"s\":[{\"i\":[{\"t\":[{\"e\":6}]}]}],\"u\":[{\"s\":21}],\"v\":6}],\"t\":[{\"r\":1}],\"y\":24},43],\"r\":47,\"s\":[{\"h\":[{\"a\":[{\"c\":[{\"k\":251}]}]},21],\"i\":19},101],\"t\":18,\"u\":[{\"l\":[{\"a\":[{\"r\":49}],\"t\":[{\"i\":[{\"u\":252},54]},32]}],\"m\":27,\"n\":8,\"p\":18,\"u\":1,\"d\":[{\"r\":[{\"o\":9}]}]},41],\"w\":18}],\"n\":[{\"a\":[{\"b\":[{\"u\":21},81],\"c\":[{\".\":18,\"a\":1,\"t\":19}],\"g\":[{\"e\":[{\"r\":[{\".\":5}]}]}],\"k\":0,\"l\":[{\"i\":[{\"a\":4},1],\"t\":18}],\"m\":[{\"i\":[{\"t\":4}]}],\"n\":[{\"c\":[{\"i\":36}],\"i\":[{\"t\":0}],\"k\":17},24],\"r\":[{\"c\":[{\"h\":[{\"s\":[{\".\":73}]}]},11],\"e\":18,\"i\":11,\"l\":0,\"m\":19}],\"s\":[{\"c\":0,\"t\":[{\"i\":5}]},21],\"t\":[{\"a\":[{\"l\":3}],\"o\":[{\"m\":[{\"i\":[{\"z\":6}]}]}]},24],\"u\":[{\"s\":[{\"e\":11}],\"t\":27},24],\"v\":[{\"e\":0}]},41],\"b\":80,\"c\":[{\"a\":[{\"r\":6}],\"e\":[{\"s\":[{\".\":21}]}],\"h\":[{\"a\":23,\"e\":[{\"o\":19,\"s\":[{\"t\":253}]}],\"i\":[{\"l\":19,\"s\":23}]}],\"i\":[{\"n\":2,\"t\":1}],\"o\":[{\"u\":[{\"r\":[{\"a\":7}]}]}],\"r\":29,\"u\":29}],\"d\":[{\"a\":[{\"i\":21,\"n\":19}],\"e\":[{\"s\":[{\"t\":[{\".\":4}]}]},29],\"i\":[{\"b\":0,\"f\":79,\"t\":29,\"z\":23,\"e\":[{\"c\":[{\"k\":29}]}]}],\"u\":[{\"c\":19,\"r\":0}],\"w\":[{\"e\":9}],\"t\":[{\"h\":[{\"r\":3}]}]}],\"e\":[{\".\":25,\"a\":[{\"r\":23}],\"b\":[{\"u\":11,\"a\":[{\"c\":[{\"k\":3}]}]},9],\"c\":[{\"k\":32},9],\"d\":25,\"g\":[{\"a\":[{\"t\":[{\"i\":[{\"v\":5}]},1]}],\"e\":32}],\"l\":[{\"a\":1,\"i\":[{\"z\":5}]}],\"m\":[{\"i\":4,\"o\":1}],\"n\":[{\"e\":18},41],\"o\":27,\"p\":[{\"o\":1}],\"q\":9,\"r\":[{\"a\":[{\"b\":6,\"r\":21}],\"e\":24,\"i\":132,\"r\":0},29],\"s\":[{\".\":25,\"p\":18,\"t\":25,\"w\":18,\"k\":[{\"i\":119}]},41],\"t\":[{\"i\":[{\"c\":27}]}],\"v\":[{\"e\":19},1],\"w\":1}],\"f\":[{\"i\":[{\"n\":[{\"i\":[{\"t\":[{\"e\":[{\"s\":226}]}]}]}]}]},23],\"g\":[{\"a\":[{\"b\":21}],\"e\":[{\"l\":23,\"n\":[{\"e\":[{\"s\":5},133]}],\"r\":[{\"e\":19,\"i\":23}]}],\"h\":[{\"a\":4,\"o\":2}],\"i\":[{\"b\":23,\"n\":2,\"t\":19}],\"l\":[{\"a\":21}],\"o\":[{\"v\":17}],\"s\":[{\"h\":4,\"p\":[{\"r\":2}]}],\"u\":[{\"m\":21},29],\"y\":24}],\"h\":[{\"a\":[{\"b\":12},0],\"e\":0},80],\"i\":[{\"a\":[{\"n\":[{\".\":114},3],\"p\":1},68],\"b\":[{\"a\":3,\"l\":1}],\"d\":[{\"i\":4},1],\"e\":[{\"r\":1}],\"f\":[{\"i\":[{\"c\":[{\"a\":[{\"t\":4}]}]},9]}],\"g\":[{\"r\":19}],\"k\":0,\"m\":[{\"i\":[{\"z\":3}]},29],\"n\":[{\"e\":[{\".\":32}],\"g\":0},29],\"o\":1,\"s\":[{\".\":32,\"t\":[{\"a\":0}]}],\"t\":[{\"h\":21,\"i\":[{\"o\":27}],\"o\":[{\"r\":23}],\"r\":3},24]}],\"j\":29,\"k\":[{\"e\":[{\"r\":[{\"o\":19}],\"t\":23}],\"i\":[{\"n\":3}],\"l\":29,\"r\":[{\"u\":[{\"p\":3}]}]},44],\"l\":[{\"e\":[{\"s\":[{\"s\":19}]}]},43],\"m\":[{\"e\":[{\"t\":17},0]},19],\"n\":[{\"e\":0,\"i\":[{\"a\":[{\"l\":11}],\"v\":0}]},101],\"o\":[{\"b\":[{\"l\":[{\"e\":3},0]}],\"c\":[{\"l\":19,\"e\":[{\"r\":[{\"o\":[{\"s\":254}]}]}]}],\"d\":66,\"e\":27,\"g\":[{\"e\":17},18],\"i\":[{\"s\":[{\"i\":6}]}],\"l\":[{\"i\":134,\"o\":[{\"g\":[{\"i\":[{\"s\":32}]}]}]}],\"m\":[{\"i\":[{\"c\":27,\"z\":108,\"s\":[{\"t\":82}]}],\"o\":1,\"y\":3,\"a\":[{\"l\":214}],\"e\":[{\"n\":[{\"o\":194}]}]}],\"n\":[{\"a\":[{\"g\":0}],\"i\":[{\"z\":19,\"s\":[{\"o\":255}]},5],\"e\":[{\"q\":15}]},1],\"p\":[{\"o\":[{\"l\":[{\"i\":135,\"y\":[{\".\":256}]}]}]},18],\"r\":[{\"a\":[{\"b\":5,\"r\":[{\"y\":1}]}]}],\"s\":[{\"c\":18,\"e\":0,\"t\":5}],\"t\":[{\"a\":4}],\"u\":[{\"n\":27},41],\"v\":[{\"e\":[{\"l\":136,\"m\":[{\"b\":2}]}]}],\"w\":[{\"l\":12}]}],\"p\":[{\"i\":0,\"r\":[{\"e\":[{\"c\":17}]}]},72],\"q\":29,\"r\":[{\"u\":0},29],\"s\":[{\"a\":[{\"b\":4,\"t\":[{\"i\":36}]}],\"c\":[{\"e\":[{\"i\":[{\"v\":4}]}]},1],\"e\":[{\"s\":83},24],\"i\":[{\"d\":137,\"g\":17}],\"l\":24,\"m\":[{\"o\":[{\"o\":1}]},3],\"o\":[{\"c\":21}],\"p\":[{\"e\":1,\"i\":19}],\"t\":[{\"a\":[{\"b\":[{\"l\":6}]}]}]},81],\"t\":[{\"a\":[{\"b\":0}],\"e\":[{\"r\":[{\"s\":12}]}],\"i\":[{\"b\":19,\"e\":[{\"r\":0}],\"f\":8,\"n\":[{\"e\":23,\"g\":83}],\"p\":0},9],\"r\":[{\"o\":[{\"l\":[{\"l\":[{\"i\":7}]}]}],\"e\":[{\"p\":137}]}],\"s\":1,\"u\":[{\"m\":[{\"e\":11}]}]},29],\"u\":[{\"a\":2,\"d\":1,\"e\":[{\"n\":4}],\"f\":[{\"f\":[{\"e\":0}]}],\"i\":[{\"n\":23,\"t\":50}],\"m\":[{\"e\":2,\"i\":19},21],\"n\":138,\"o\":23,\"t\":[{\"r\":3}]}],\"v\":74,\"w\":72,\"y\":[{\"m\":0,\"p\":0}],\"z\":[{\"a\":23},18]}],\"o\":[{\"a\":[{\"d\":11,\"l\":[{\"e\":[{\"s\":108}]}],\"r\":[{\"d\":12}],\"s\":[{\"e\":0,\"t\":[{\"e\":6}]}],\"t\":[{\"i\":5}]},18],\"b\":[{\"a\":[{\"b\":35,\"r\":19}],\"e\":[{\"l\":0}],\"i\":[{\"n\":[{\"g\":4},24]},29],\"r\":23,\"u\":[{\"l\":3}],\"l\":[{\"i\":[{\"g\":189}]}]}],\"c\":[{\"e\":29,\"h\":[{\"e\":[{\"t\":23}],\"a\":[{\"s\":23}]},0],\"i\":[{\"f\":12,\"l\":21}],\"l\":[{\"a\":[{\"m\":21}]}],\"o\":[{\"d\":21}],\"r\":[{\"a\":[{\"c\":3,\"t\":[{\"i\":[{\"z\":4}]}]}],\"e\":12,\"i\":[{\"t\":32}]}],\"t\":[{\"o\":[{\"r\":[{\"a\":7}]}]}],\"u\":[{\"l\":[{\"a\":3}],\"r\":[{\"e\":19}]}]}],\"d\":[{\"d\":[{\"e\":[{\"d\":4}]}],\"i\":[{\"c\":3,\"o\":11,\"t\":[{\"i\":[{\"c\":137}]}]}],\"o\":[{\"r\":12},139],\"u\":[{\"c\":[{\"t\":[{\".\":4,\"s\":4}]}]}],\"e\":[{\"l\":[{\"l\":[{\"i\":12}]}]}]}],\"e\":[{\"l\":21,\"n\":[{\"g\":19}],\"r\":[{\"s\":[{\"t\":257}]},23],\"t\":[{\"a\":1}],\"v\":23}],\"f\":[{\"i\":[{\"t\":[{\"e\":4,\"t\":17}]},24]}],\"g\":[{\"a\":[{\"r\":121,\"t\":[{\"i\":[{\"v\":4}],\"o\":21}]}],\"e\":[{\"n\":[{\"e\":19}],\"o\":19,\"r\":21},29],\"i\":[{\"e\":23,\"s\":140,\"t\":3}],\"l\":[{\"y\":79},21],\"n\":[{\"i\":[{\"z\":27}]}],\"r\":[{\"o\":21}],\"u\":[{\"i\":5}],\"y\":[{\"n\":25},41]}],\"h\":[{\"a\":[{\"b\":6}]},74],\"i\":[{\"c\":[{\"e\":[{\"s\":11}]}],\"d\":[{\"e\":[{\"r\":3}]}],\"f\":[{\"f\":17}],\"g\":0,\"l\":[{\"e\":[{\"t\":4}]}],\"n\":[{\"g\":23,\"t\":[{\"e\":[{\"r\":6}]}]}],\"s\":[{\"m\":19,\"o\":[{\"n\":4}],\"t\":[{\"e\":[{\"n\":6}]}]}],\"t\":[{\"e\":[{\"r\":3}]}]},9],\"j\":19,\"k\":[{\"e\":[{\"n\":23,\"s\":[{\"t\":15}]}],\"i\":[{\"e\":4}]},25],\"l\":[{\"a\":[{\"n\":21,\"s\":[{\"s\":36}]},29],\"d\":[{\"e\":15},9],\"e\":[{\"r\":3,\"s\":[{\"c\":23,\"t\":[{\"e\":[{\"r\":88}]}]}],\"t\":23}],\"f\":[{\"i\":1}],\"i\":[{\"a\":23,\"c\":[{\"e\":23}],\"d\":[{\".\":4}],\"f\":73,\"l\":19,\"n\":[{\"g\":3}],\"o\":19,\"s\":[{\".\":19,\"h\":3}],\"t\":[{\"e\":19,\"i\":[{\"o\":19}]}],\"v\":19,\"g\":[{\"o\":[{\"p\":[{\"o\":258}]}]}]},9],\"l\":[{\"i\":[{\"e\":17}]}],\"o\":[{\"g\":[{\"i\":[{\"z\":4}]}],\"r\":0,\"n\":[{\"o\":[{\"m\":259}]}]}],\"p\":[{\"l\":4}],\"t\":9,\"u\":[{\"b\":3,\"m\":[{\"e\":3}],\"n\":3,\"s\":19}],\"v\":9,\"y\":24}],\"m\":[{\"a\":[{\"h\":4,\"l\":5,\"t\":[{\"i\":[{\"z\":4}]}]}],\"b\":[{\"e\":9,\"l\":1}],\"e\":[{\"n\":[{\"a\":3}],\"r\":[{\"s\":[{\"e\":4}]}],\"t\":[{\"r\":[{\"y\":4}]},21],\"c\":[{\"h\":[{\"a\":260}]}]},24],\"i\":[{\"a\":23,\"c\":[{\".\":3,\"a\":3}],\"d\":19,\"n\":[{\"i\":19},2]}],\"m\":[{\"e\":[{\"n\":[{\"d\":32}]}]}],\"o\":[{\"g\":[{\"e\":0}],\"n\":21}],\"p\":[{\"i\":3,\"r\":[{\"o\":7}]}]}],\"n\":[{\"a\":[{\"c\":1,\"n\":23},2],\"c\":[{\"i\":[{\"l\":27}]},2],\"d\":[{\"o\":4},25],\"e\":[{\"n\":23,\"s\":[{\"t\":4}]}],\"g\":[{\"u\":1}],\"i\":[{\"c\":2,\"o\":23,\"s\":2,\"u\":19}],\"k\":[{\"e\":[{\"y\":3}]}],\"o\":[{\"d\":[{\"i\":1}],\"m\":[{\"y\":3,\"i\":[{\"c\":137}]}],\"r\":[{\"m\":[{\"a\":23}]}],\"t\":[{\"o\":[{\"n\":261}]}],\"u\":23}],\"s\":[{\"p\":[{\"i\":[{\"r\":[{\"a\":10}]},36]}],\"u\":17},3],\"t\":[{\"e\":[{\"n\":36}],\"i\":[{\"f\":7},93]}],\"u\":[{\"m\":4}],\"v\":[{\"a\":6}]},24],\"o\":[{\"d\":[{\"e\":5,\"i\":5}],\"k\":1,\"p\":[{\"i\":11}],\"r\":[{\"d\":23}],\"s\":[{\"t\":6}]},9],\"p\":[{\"a\":24,\"e\":[{\"d\":5,\"r\":[{\"a\":[{\"g\":18},27]},2]}],\"h\":[{\"a\":[{\"n\":19}],\"e\":[{\"r\":19}]},25],\"i\":[{\"n\":[{\"g\":3}],\"t\":23,\"s\":[{\"m\":[{\".\":2}]}]}],\"o\":[{\"n\":19,\"s\":[{\"i\":21}]}],\"r\":29,\"u\":2,\"y\":5}],\"q\":29,\"r\":[{\"a\":[{\".\":19,\"g\":83,\"l\":[{\"i\":[{\"z\":4}]}],\"n\":[{\"g\":[{\"e\":4}]}]},29],\"e\":[{\"a\":[{\"l\":19},5],\"i\":3,\"s\":[{\"h\":5,\"t\":[{\".\":4}]}],\"w\":17}],\"g\":[{\"u\":1}],\"i\":[{\"a\":56,\"c\":[{\"a\":3}],\"l\":19,\"n\":2,\"o\":29,\"t\":[{\"y\":3}],\"u\":23}],\"m\":[{\"i\":9}],\"n\":[{\"e\":8}],\"o\":[{\"f\":19,\"u\":[{\"g\":3}]}],\"p\":[{\"e\":4}],\"r\":[{\"h\":27}],\"s\":[{\"e\":[{\"n\":5},1],\"t\":17}],\"t\":[{\"h\":[{\"i\":3,\"y\":3,\"o\":[{\"n\":[{\"i\":[{\"t\":262}]}]}],\"r\":[{\"i\":137}]}],\"y\":1,\"i\":[{\"v\":[{\"e\":[{\"l\":[{\"y\":4}]}]}]}]}],\"u\":[{\"m\":19}],\"y\":29}],\"s\":[{\"a\":[{\"l\":3}],\"c\":[{\"e\":1,\"o\":[{\"p\":[{\"i\":18},23]}],\"r\":19},9],\"i\":[{\"e\":95,\"t\":[{\"i\":[{\"v\":4}],\"o\":3,\"y\":3}],\"u\":0}],\"l\":1,\"o\":24,\"p\":[{\"a\":1,\"o\":1,\"h\":[{\"e\":[{\"r\":83}]}]}],\"t\":[{\"a\":[{\"t\":[{\"i\":19}]},9],\"i\":[{\"l\":4,\"t\":4}]}]}],\"t\":[{\"a\":[{\"n\":21}],\"e\":[{\"l\":[{\"e\":[{\"g\":36}]}],\"r\":[{\".\":3,\"s\":4}],\"s\":[{\"t\":[{\"e\":[{\"r\":263}],\"o\":[{\"r\":264}]}]},21]}],\"h\":[{\"e\":[{\"s\":[{\"i\":5}],\"o\":[{\"s\":265}]}],\"i\":14},18],\"i\":[{\"c\":[{\".\":3,\"a\":4,\"e\":23}],\"f\":23,\"s\":23}],\"o\":[{\"s\":5}]}],\"u\":[{\"b\":[{\"l\":3,\"a\":[{\"d\":[{\"o\":116}]}]}],\"c\":[{\"h\":[{\"i\":6}]}],\"e\":[{\"t\":4}],\"l\":1,\"n\":[{\"c\":[{\"e\":[{\"r\":6}]}],\"d\":8}],\"v\":4},9],\"v\":[{\"e\":[{\"n\":1,\"r\":[{\"n\":[{\"e\":17}],\"s\":12,\"t\":1}]}],\"i\":[{\"s\":23,\"t\":[{\"i\":36}],\"a\":[{\"n\":[{\".\":266}]}]}],\"o\":[{\"l\":60}]}],\"w\":[{\"d\":[{\"e\":[{\"r\":3}]}],\"e\":[{\"l\":3,\"s\":[{\"t\":4}]}],\"i\":2,\"n\":[{\"i\":5}],\"o\":21}],\"y\":[{\"a\":2}],\"x\":[{\"i\":[{\"d\":[{\"i\":[{\"c\":267}]}]}]}]}],\"p\":[{\"a\":[{\"c\":[{\"a\":1,\"e\":1,\"t\":0}],\"d\":21,\"g\":[{\"a\":[{\"n\":32,\"t\":23}]}],\"i\":[{\"n\":17},21],\"l\":[{\"m\":[{\"a\":[{\"t\":268}]}]},21],\"n\":[{\"a\":0,\"e\":[{\"l\":11}],\"t\":[{\"y\":0}],\"y\":3}],\"p\":[{\"u\":1},2],\"r\":[{\"a\":[{\"b\":[{\"l\":6}],\"g\":[{\"e\":5,\"r\":[{\"a\":269}]}],\"l\":[{\"e\":228}],\"m\":[{\"e\":12},36]}],\"d\":[{\"i\":5}],\"e\":[{\"l\":5},27],\"i\":[{\"s\":0},28]}],\"t\":[{\"e\":[{\"r\":4},9],\"h\":[{\"i\":[{\"c\":32}],\"y\":4}],\"r\":[{\"i\":[{\"c\":1}]}]}],\"v\":0,\"y\":27},41],\"b\":43,\"d\":1,\"e\":[{\".\":18,\"a\":[{\"r\":[{\"l\":17}]},138],\"c\":9,\"d\":[{\"e\":27,\"i\":[{\"a\":36,\"c\":0},27]},37],\"e\":[{\"d\":0,\"v\":208},21],\"k\":0,\"l\":[{\"a\":1,\"i\":[{\"e\":17}]}],\"n\":[{\"a\":[{\"n\":1}],\"c\":21,\"t\":[{\"h\":0}]}],\"o\":[{\"n\":4}],\"r\":[{\"a\":[{\".\":21,\"b\":[{\"l\":6}],\"g\":21}],\"i\":[{\"s\":[{\"t\":6}]},21],\"m\":[{\"a\":[{\"l\":0}],\"e\":7}],\"n\":21,\"o\":11,\"t\":[{\"i\":11}],\"u\":4,\"v\":15}],\"t\":[{\"e\":[{\"n\":4}],\"i\":[{\"z\":4}]},9]}],\"f\":18,\"g\":18,\"h\":[{\".\":18,\"a\":[{\"r\":[{\"i\":6}]}],\"e\":[{\"n\":[{\"o\":11}],\"r\":1,\"s\":[{\".\":1}]}],\"i\":[{\"c\":2,\"e\":32,\"n\":[{\"g\":4}],\"s\":[{\"t\":[{\"i\":32}]}],\"z\":27,\"l\":[{\"a\":[{\"n\":[{\"t\":168}],\"t\":[{\"e\":[{\"l\":270}]}]}]}]}],\"l\":9,\"o\":[{\"b\":27,\"n\":[{\"e\":27,\"i\":32}],\"r\":0}],\"s\":18,\"t\":3,\"u\":32,\"y\":41}],\"i\":[{\"a\":[{\"n\":17},3],\"c\":[{\"i\":[{\"e\":1}],\"y\":1,\"a\":[{\"d\":271}]}],\"d\":[{\"a\":19,\"e\":3,\"i\":32},21],\"e\":[{\"c\":27,\"n\":3}],\"g\":[{\"r\":[{\"a\":[{\"p\":1}]}]}],\"l\":[{\"o\":3}],\"n\":[{\".\":21,\"d\":17,\"o\":21},9],\"o\":[{\"n\":17},141],\"t\":[{\"h\":[{\"a\":4},23],\"u\":9}]}],\"k\":142,\"l\":[{\"a\":[{\"n\":27,\"s\":[{\"t\":6}]}],\"i\":[{\"a\":11,\"e\":[{\"r\":5}],\"g\":18,\"n\":[{\"a\":[{\"r\":5}]},0],\"c\":[{\"a\":[{\"b\":208}]}]}],\"o\":[{\"i\":17}],\"u\":[{\"m\":[{\"b\":17},0]}]},143],\"m\":43,\"n\":48,\"o\":[{\"c\":1,\"d\":[{\".\":32}],\"e\":[{\"m\":4,\"t\":144}],\"g\":145,\"i\":[{\"n\":[{\"t\":32,\"c\":[{\"a\":12}]},84]}],\"l\":[{\"y\":[{\"t\":6,\"e\":137,\"p\":[{\"h\":[{\"o\":[{\"n\":[{\"o\":272}]}]}]}]}],\"e\":[{\".\":41}]}],\"n\":[{\"i\":1}],\"p\":1,\"r\":[{\"y\":1},124],\"s\":[{\"s\":15},41],\"t\":[{\"a\":1},21],\"u\":[{\"n\":32}]}],\"p\":[{\"a\":[{\"r\":[{\"a\":5}]}],\"e\":[{\"d\":21,\"l\":19,\"n\":23,\"r\":23,\"t\":23},24],\"o\":[{\"s\":[{\"i\":[{\"t\":[{\"e\":5}]}]}]}]},43],\"r\":[{\"a\":[{\"y\":[{\"e\":17}]}],\"e\":[{\"c\":[{\"i\":32,\"o\":5}],\"e\":[{\"m\":11}],\"f\":[{\"a\":[{\"c\":6}]}],\"l\":[{\"a\":0}],\"r\":11,\"s\":[{\"e\":23,\"s\":27,\"p\":[{\"l\":[{\"i\":84}]}]}],\"t\":[{\"e\":[{\"n\":5}]}],\"v\":11,\"m\":[{\"a\":[{\"c\":273}]}],\"n\":[{\"e\":[{\"u\":15}]}]}],\"i\":[{\"e\":53,\"n\":[{\"t\":146}],\"s\":[{\"o\":12},0]}],\"o\":[{\"c\":[{\"a\":23,\"e\":[{\"s\":[{\"s\":8}]}],\"i\":[{\"t\":[{\"y\":[{\".\":274}]}]}]}],\"f\":[{\"i\":[{\"t\":6}]}],\"l\":11,\"s\":[{\"e\":12}],\"t\":15,\"g\":[{\"e\":208}]}]},9],\"s\":[{\"e\":[{\"u\":[{\"d\":[{\"o\":[{\"d\":276,\"f\":276}]},275]}]},24],\"h\":1,\"i\":[{\"b\":21}]},81],\"t\":[{\"a\":[{\"b\":134}],\"e\":24,\"h\":24,\"i\":[{\"m\":11}],\"u\":[{\"r\":0}],\"w\":21,\"o\":[{\"m\":[{\"a\":[{\"t\":277}]}]}],\"r\":[{\"o\":[{\"l\":278}]}]},42],\"u\":[{\"b\":[{\"e\":[{\"s\":[{\"c\":181}]}]},11],\"e\":0,\"f\":0,\"l\":[{\"c\":11}],\"m\":1,\"n\":9,\"r\":[{\"r\":0}],\"s\":32,\"t\":[{\"e\":[{\"r\":11},32],\"r\":3,\"t\":[{\"e\":[{\"d\":0}],\"i\":[{\"n\":0}]}]},9]}],\"w\":23}],\"q\":[{\"u\":[{\"a\":[{\"v\":5,\"i\":[{\"n\":[{\"t\":[{\"e\":279}]}]}],\"s\":[{\"i\":[{\"r\":281,\"s\":281},280]}]}],\"e\":[{\".\":25,\"r\":27,\"t\":27}],\"i\":[{\"n\":[{\"t\":[{\"e\":[{\"s\":[{\"s\":282}]}]}]}],\"v\":[{\"a\":[{\"r\":14}]}]}]},9]}],\"r\":[{\"a\":[{\"b\":[{\"i\":3,\"o\":[{\"l\":[{\"i\":[{\"c\":29}],\"o\":[{\"i\":236}]}]}]},25],\"c\":[{\"h\":[{\"e\":17,\"u\":3}],\"l\":19}],\"f\":[{\"f\":[{\"i\":5}],\"t\":0}],\"i\":24,\"l\":[{\"o\":1}],\"m\":[{\"e\":[{\"t\":[{\"r\":[{\"i\":[{\"z\":283}]}]},11],\"n\":24}],\"i\":24,\"o\":[{\"u\":3}]}],\"n\":[{\"e\":[{\"o\":6}],\"g\":[{\"e\":0}],\"i\":21,\"o\":4,\"h\":[{\"a\":[{\"s\":167}]}]}],\"p\":[{\"e\":[{\"r\":11}],\"h\":[{\"y\":27}]}],\"r\":[{\"c\":5,\"e\":[{\"f\":5},17],\"i\":[{\"l\":18}]}],\"s\":24,\"t\":[{\"i\":[{\"o\":[{\"n\":115}]}]}],\"u\":[{\"t\":0}],\"v\":[{\"a\":[{\"i\":4}],\"e\":[{\"l\":11}]}],\"z\":[{\"i\":[{\"e\":4}]}],\"d\":[{\"i\":[{\"g\":127,\"o\":[{\"g\":249}]}]}],\"o\":[{\"r\":2}]}],\"b\":[{\"a\":[{\"b\":21,\"g\":21}],\"i\":[{\"f\":0,\"n\":[{\"e\":19,\"g\":[{\".\":4,\"e\":284}]},24]},8],\"o\":1},29],\"c\":[{\"e\":[{\"n\":17},24],\"h\":[{\"a\":23,\"e\":[{\"r\":0}]}],\"i\":[{\"b\":90,\"t\":1}],\"u\":[{\"m\":12}]},29],\"d\":[{\"a\":[{\"l\":21}],\"i\":[{\"a\":0,\"e\":[{\"r\":0}],\"n\":[{\"g\":3},17]},9]}],\"e\":[{\".\":25,\"a\":[{\"l\":2,\"n\":3,\"r\":[{\"r\":4}],\"v\":32,\"w\":1}],\"b\":[{\"r\":[{\"a\":[{\"t\":19}]}]}],\"c\":[{\"o\":[{\"l\":[{\"l\":5}],\"m\":[{\"p\":[{\"e\":5}]}]}],\"r\":[{\"e\":1}],\"i\":[{\"p\":[{\"r\":285}]}],\"t\":[{\"a\":[{\"n\":[{\"g\":286}]}]}]}],\"d\":[{\"e\":2,\"i\":[{\"s\":3,\"t\":5}]},37],\"f\":[{\"a\":[{\"c\":1}],\"e\":[{\"r\":[{\".\":4}]},9],\"i\":3,\"y\":1}],\"g\":[{\"i\":[{\"s\":11}]}],\"i\":[{\"t\":4}],\"l\":[{\"i\":2,\"u\":4}],\"n\":[{\"t\":[{\"a\":90,\"e\":0}]}],\"o\":2,\"p\":[{\"i\":[{\"n\":4}],\"o\":[{\"s\":[{\"i\":1}]}],\"u\":2}],\"r\":[{\"i\":21,\"o\":17,\"u\":4},147],\"s\":[{\".\":21,\"p\":[{\"i\":1}],\"s\":[{\"i\":[{\"b\":6}]}],\"t\":[{\"a\":[{\"l\":4}],\"r\":3},8]}],\"t\":[{\"e\":[{\"r\":1}],\"i\":[{\"z\":96}],\"r\":[{\"i\":[{\"b\":[{\"u\":85}]},3]}]}],\"u\":[{\"t\":[{\"i\":4}]},8],\"v\":[{\"a\":[{\"l\":1}],\"e\":[{\"l\":11,\"r\":[{\".\":30,\"s\":4,\"t\":4}]}],\"i\":[{\"l\":4}],\"o\":[{\"l\":[{\"u\":5}]}]},8],\"w\":[{\"h\":1}]}],\"f\":[{\"u\":0,\"y\":21},29],\"g\":[{\"e\":[{\"r\":3,\"t\":23}],\"i\":[{\"c\":23,\"n\":[{\"g\":3},0],\"s\":19,\"t\":19}],\"l\":29,\"o\":[{\"n\":0}],\"u\":23},9],\"h\":[{\".\":18,\"a\":[{\"l\":18}]},1],\"i\":[{\"a\":[{\"b\":0,\"g\":1,\"l\":[{\".\":23}]},3],\"b\":[{\"a\":11},21],\"c\":[{\"a\":[{\"s\":5}],\"e\":21,\"i\":[{\"d\":32,\"e\":1},18],\"o\":21}],\"d\":[{\"e\":[{\"r\":5}]}],\"e\":[{\"n\":[{\"c\":3,\"t\":3}],\"r\":2,\"t\":4}],\"g\":[{\"a\":[{\"n\":5}],\"i\":32}],\"l\":[{\"i\":[{\"z\":11}]}],\"m\":[{\"a\":[{\"n\":32}],\"i\":5,\"o\":27,\"p\":[{\"e\":0}]}],\"n\":[{\"a\":[{\".\":32},24],\"d\":0,\"e\":0,\"g\":0}],\"o\":2,\"p\":[{\"h\":[{\"e\":6},32],\"l\":[{\"i\":[{\"c\":5}]},9]}],\"q\":21,\"s\":[{\".\":21,\"c\":0,\"h\":23,\"p\":0},24],\"t\":[{\"a\":[{\"b\":116}],\"e\":[{\"d\":[{\".\":19}],\"r\":[{\".\":5,\"s\":5}]}],\"i\":[{\"c\":11}],\"u\":[{\"r\":5},9]}],\"v\":[{\"e\":[{\"l\":5,\"t\":11}],\"i\":11,\"o\":[{\"l\":287}]}]}],\"j\":23,\"k\":[{\"e\":[{\"t\":23}],\"l\":[{\"e\":1,\"i\":[{\"n\":1}]}],\".\":288,\"h\":[{\"o\":2}],\"r\":[{\"a\":[{\"u\":29}]}],\"s\":[{\".\":288}]}],\"l\":[{\"e\":[{\"d\":24,\"q\":[{\"u\":30}]},0],\"i\":[{\"g\":21,\"s\":[{\"h\":4},21]}],\"o\":73},29],\"m\":[{\"a\":[{\"c\":5}],\"e\":[{\"n\":23,\"r\":[{\"s\":4}]},24],\"i\":[{\"n\":[{\"g\":[{\".\":21},3]}],\"o\":21,\"t\":23}],\"y\":21},29],\"n\":[{\"a\":[{\"r\":21}],\"e\":[{\"l\":23,\"r\":21,\"t\":19,\"y\":23}],\"i\":[{\"c\":19,\"s\":92,\"t\":23,\"v\":23}],\"o\":[{\"u\":21},0],\"u\":23}],\"o\":[{\"b\":[{\"l\":11,\"o\":[{\"t\":289}]}],\"c\":[{\"r\":3},24],\"e\":[{\"l\":[{\"a\":[{\"s\":167}]}],\"p\":[{\"i\":[{\"d\":[{\"e\":290}]}]}]},1],\"f\":[{\"e\":2,\"i\":[{\"l\":4}]}],\"k\":[{\"e\":[{\"r\":4}]},8],\"l\":[{\"e\":[{\".\":32}]}],\"m\":[{\"e\":[{\"t\":[{\"e\":5}],\"s\":[{\"h\":3}]}],\"i\":0,\"p\":0}],\"n\":[{\"a\":[{\"l\":0}],\"e\":0,\"i\":[{\"s\":134}],\"t\":[{\"a\":0}]}],\"o\":[{\"m\":41,\"t\":32}],\"p\":[{\"e\":[{\"l\":3}],\"i\":[{\"c\":11}]}],\"r\":[{\"i\":11,\"o\":4}],\"s\":[{\"p\":[{\"e\":[{\"r\":5}]}],\"s\":0}],\"t\":[{\"h\":[{\"e\":1}],\"y\":1,\"r\":[{\"o\":[{\"n\":2}]}]}],\"v\":[{\"a\":1,\"e\":[{\"l\":5}]}],\"x\":5}],\"p\":[{\"e\":[{\"a\":21,\"n\":[{\"t\":19}],\"r\":[{\".\":4}],\"t\":23}],\"h\":95,\"i\":[{\"n\":[{\"g\":3}]}],\"o\":23,\"a\":[{\"u\":[{\"l\":[{\"i\":291}]}]}]},29],\"r\":[{\"e\":[{\"c\":0,\"f\":0,\"o\":21,\"s\":[{\"t\":0}]}],\"i\":[{\"o\":0,\"v\":0}],\"o\":[{\"n\":17,\"s\":17}],\"y\":[{\"s\":17}]},72],\"s\":[{\"a\":[{\"t\":[{\"i\":5}]},29],\"c\":1,\"e\":[{\"c\":[{\"r\":0},23],\"r\":[{\".\":4,\"a\":[{\"d\":[{\"i\":238}]}]}],\"s\":3,\"v\":148},24],\"h\":[{\"a\":19},29],\"i\":[{\"b\":90},29],\"o\":[{\"n\":12}],\"p\":29,\"w\":19},44],\"t\":[{\"a\":[{\"c\":[{\"h\":36}],\"g\":21}],\"e\":[{\"b\":23,\"n\":[{\"d\":17}],\"o\":5}],\"i\":[{\"b\":4,\"d\":0,\"e\":[{\"r\":21}],\"g\":23,\"l\":[{\"i\":12,\"l\":17,\"y\":21}],\"s\":[{\"t\":21}],\"v\":21},29],\"r\":[{\"i\":23,\"o\":[{\"p\":[{\"h\":115}]}],\"e\":[{\"u\":29}]}],\"s\":[{\"h\":1}],\"h\":[{\"o\":[{\"u\":29}]}]}],\"u\":[{\"a\":3,\"e\":[{\"l\":93,\"n\":3}],\"g\":[{\"l\":1}],\"i\":[{\"n\":3}],\"m\":[{\"p\":[{\"l\":11}]}],\"n\":[{\"k\":6,\"t\":[{\"y\":0}]},9],\"s\":[{\"c\":19}],\"t\":[{\"i\":[{\"n\":6}]}]}],\"v\":[{\"e\":[{\"l\":[{\"i\":17}],\"n\":23,\"r\":[{\".\":4}],\"s\":[{\"t\":19}],\"y\":23,\"i\":[{\"l\":29}]},1],\"i\":[{\"c\":23,\"v\":0}],\"o\":23}],\"w\":29,\"y\":[{\"c\":1,\"n\":[{\"g\":[{\"e\":32}]}],\"t\":3}],\"z\":[{\"s\":[{\"c\":2}]}]}],\"s\":[{\"a\":[{\"b\":42,\"c\":[{\"k\":32,\"r\":[{\"i\":11}],\"t\":23}],\"i\":32,\"l\":[{\"a\":[{\"r\":36}],\"m\":0,\"o\":4,\"t\":0,\"e\":[{\"s\":[{\"c\":54,\"w\":7}]}]}],\"n\":[{\"c\":27,\"d\":[{\"e\":0}]}],\"p\":[{\"a\":[{\"r\":[{\"i\":[{\"l\":292}]}]}]},29],\"t\":[{\"a\":4,\"i\":[{\"o\":76}],\"u\":11}],\"u\":0,\"v\":[{\"o\":[{\"r\":4}]}],\"w\":32},9],\"b\":56,\"c\":[{\"a\":[{\"n\":[{\"t\":149}],\"p\":[{\"e\":[{\"r\":267}]},0],\"v\":6,\"t\":[{\"o\":[{\"l\":208}]}]}],\"e\":[{\"d\":21,\"i\":18,\"s\":21}],\"h\":[{\"o\":21,\"i\":[{\"t\":[{\"z\":21}]}],\"r\":[{\"o\":[{\"d\":[{\"i\":[{\"n\":[{\"g\":293}]}]}]}]}]},8],\"i\":[{\"e\":68,\"n\":[{\"d\":150}],\"u\":[{\"t\":[{\"t\":294}]}]}],\"l\":[{\"e\":6,\"i\":21}],\"o\":[{\"f\":17,\"p\":[{\"y\":18}],\"u\":[{\"r\":[{\"a\":7}]}]}],\"u\":29,\"r\":[{\"a\":[{\"p\":[{\"e\":[{\"r\":[{\".\":36}]}]}]}]}],\"y\":[{\"t\":[{\"h\":247}]}]}],\"d\":56,\"e\":[{\".\":18,\"a\":[{\"s\":17,\"w\":5},1],\"c\":[{\"o\":151,\"t\":27}],\"d\":[{\"e\":95,\"l\":19},125],\"g\":[{\"r\":11},9],\"i\":32,\"l\":[{\"e\":2,\"f\":32,\"v\":32}],\"m\":[{\"e\":[{\"s\":[{\"t\":295}]},18],\"o\":[{\"l\":1}],\"a\":[{\"p\":[{\"h\":287}]}],\"i\":[{\"t\":[{\"i\":[{\"c\":296}]}]}]}],\"n\":[{\"a\":[{\"t\":5}],\"c\":18,\"d\":0,\"e\":[{\"d\":19}],\"g\":5,\"i\":[{\"n\":19}],\"t\":[{\"d\":18,\"l\":18}]}],\"p\":[{\"a\":152,\"t\":[{\"e\":[{\"m\":[{\"b\":11}]}]}]}],\"r\":[{\".\":43,\"l\":21,\"o\":0,\"v\":[{\"o\":18}]}],\"s\":[{\"h\":4,\"t\":5},72],\"u\":[{\"m\":113}],\"v\":[{\"e\":[{\"n\":11}]},32],\"w\":[{\"i\":0}],\"x\":32}],\"f\":47,\"g\":48,\"h\":[{\".\":25,\"e\":[{\"r\":2,\"v\":32}],\"i\":[{\"n\":2,\"o\":3,\"p\":27,\"v\":6}],\"o\":[{\"l\":[{\"d\":4}],\"n\":12,\"r\":[{\"t\":7},17],\"e\":[{\"s\":[{\"t\":137}]}]},0],\"w\":18},24],\"i\":[{\"b\":2,\"c\":[{\"c\":19}],\"d\":[{\"e\":[{\".\":27,\"s\":[{\"t\":6,\"w\":6},32],\"d\":[{\".\":8}]}],\"i\":[{\"z\":4},32]}],\"g\":[{\"n\":[{\"a\":18}]}],\"l\":[{\"e\":0,\"y\":18}],\"n\":[{\"a\":24,\"e\":[{\".\":32}],\"g\":23},42],\"o\":[{\"n\":[{\"a\":6},32]},41],\"r\":[{\"a\":5,\"e\":[{\"s\":[{\"i\":[{\"d\":4}]}]}]},9],\"s\":41,\"t\":[{\"i\":[{\"o\":27}]}],\"u\":32,\"v\":41,\"z\":32}],\"k\":[{\"e\":[{\"t\":23},18],\"i\":[{\"n\":[{\"e\":4,\"g\":4}]}],\"y\":[{\"s\":[{\"c\":15}]}]},9],\"l\":[{\"a\":[{\"t\":23}],\"e\":24,\"i\":[{\"t\":[{\"h\":7}]}],\"o\":[{\"v\":[{\"a\":[{\"k\":[{\"i\":[{\"a\":297}]}]}]}]}]},74],\"m\":[{\"a\":[{\"l\":[{\"l\":54}],\"n\":12},23],\"e\":[{\"l\":17,\"n\":19}],\"i\":[{\"t\":[{\"h\":32}]}],\"o\":[{\"l\":[{\"d\":49}]}]},42],\"n\":72,\"o\":[{\"c\":[{\"e\":1}],\"f\":[{\"t\":12}],\"l\":[{\"a\":[{\"b\":1}],\"d\":153,\"i\":[{\"c\":3}],\"v\":32,\"u\":[{\"t\":[{\"e\":9}]}]}],\"m\":27,\"n\":[{\".\":68,\"a\":17,\"g\":0}],\"p\":[{\"h\":[{\"i\":[{\"c\":32,\"z\":19}],\"y\":19}]},21],\"r\":[{\"c\":5,\"d\":5}],\"v\":[{\"i\":4},18],\"g\":[{\"a\":[{\"m\":[{\"y\":298}]}]}]},41],\"p\":[{\"a\":[{\"i\":32,\"n\":0,\"c\":[{\"e\":299,\"i\":[{\"n\":69}]}]},25],\"e\":[{\"n\":[{\"d\":17}],\"o\":57,\"r\":25,\"c\":[{\"i\":[{\"o\":11}]}]}],\"h\":[{\"e\":[{\"r\":[{\"o\":213},27]},24],\"o\":6}],\"i\":[{\"l\":17,\"n\":[{\"g\":4}],\"o\":18,\"c\":[{\"i\":[{\"l\":208}]}]}],\"l\":[{\"y\":21}],\"o\":[{\"n\":21,\"r\":[{\"t\":[{\"s\":[{\"c\":300,\"w\":300}]}]},17],\"t\":18,\"k\":[{\"e\":[{\"s\":[{\"w\":10}]}]}]}]}],\"q\":[{\"u\":[{\"a\":[{\"l\":[{\"l\":36}]}],\"i\":[{\"t\":[{\"o\":88}]}]}]}],\"r\":29,\"s\":[{\"a\":[{\"s\":12,\"c\":[{\"h\":[{\"u\":301}]}]},29],\"c\":94,\"e\":[{\"l\":23,\"n\":[{\"g\":19}],\"s\":[{\".\":21}],\"t\":19}],\"i\":[{\"e\":[{\"r\":0},21],\"l\":[{\"y\":4}],\"a\":[{\"n\":[{\".\":210}]}],\"g\":[{\"n\":[{\"a\":[{\"b\":302}]}]}]},29],\"l\":[{\"i\":1},21],\"n\":21,\"p\":[{\"e\":[{\"n\":[{\"d\":115}]}]}],\"t\":9,\"u\":[{\"r\":[{\"a\":6}]}],\"w\":4,\"h\":[{\"a\":[{\"t\":3}]}]},25],\"t\":[{\".\":25,\"a\":[{\"g\":24,\"l\":24,\"m\":[{\"i\":17,\"p\":69}],\"n\":[{\"d\":32,\"t\":[{\"s\":[{\"h\":[{\"i\":303}]}]}]}],\"p\":90,\"t\":[{\".\":32,\"i\":15}],\"r\":[{\"t\":[{\"l\":[{\"i\":12}]}]}]}],\"e\":[{\"d\":21,\"r\":[{\"n\":[{\"i\":7}],\"o\":19}],\"w\":[{\"a\":6},8]}],\"h\":[{\"e\":23}],\"i\":[{\".\":21,\"a\":19,\"c\":[{\"k\":32},29],\"e\":21,\"f\":23,\"n\":[{\"g\":3}],\"r\":32},9],\"l\":[{\"e\":29}],\"o\":[{\"c\":[{\"k\":32}],\"m\":[{\"a\":12}],\"n\":[{\"e\":32}],\"p\":21,\"r\":[{\"e\":27,\"a\":[{\"b\":304}]}]}],\"r\":[{\"a\":[{\"d\":21,\"t\":[{\"u\":32,\"a\":[{\"g\":305}]}],\"y\":21}],\"i\":[{\"d\":21,\"b\":[{\"u\":[{\"t\":7}]}]}],\"y\":18},1],\"w\":61,\"y\":[{\"l\":[{\"i\":[{\"s\":137}]}]},24],\"b\":4,\"s\":[{\"c\":[{\"r\":4}]}],\"u\":[{\"p\":[{\"i\":[{\"d\":306}]}]}]}],\"u\":[{\"a\":[{\"l\":2}],\"b\":111,\"g\":151,\"i\":[{\"s\":4,\"t\":12}],\"l\":21,\"m\":[{\"i\":11},9],\"n\":9,\"r\":9,\"p\":[{\"e\":[{\"r\":[{\"e\":307}]}]}]},41],\"v\":18,\"w\":[{\"o\":18,\"i\":[{\"m\":[{\"m\":177}]}]},9],\"y\":[{\"c\":18,\"l\":27,\"n\":[{\"o\":5,\"c\":41}],\"r\":[{\"i\":[{\"n\":4}]}],\"t\":[{\"h\":[{\"i\":308}]}]},21]}],\"t\":[{\"a\":[{\".\":27,\"b\":[{\"l\":[{\"e\":[{\"s\":4}]}],\"o\":[{\"l\":[{\"i\":[{\"z\":32,\"s\":[{\"m\":309}]}]}]}]},25],\"c\":[{\"i\":18}],\"d\":[{\"o\":4}],\"f\":46,\"i\":[{\"l\":[{\"o\":5}]}],\"l\":[{\"a\":4,\"e\":[{\"n\":5}],\"i\":11,\"k\":[{\"a\":204},18],\"l\":[{\"i\":[{\"s\":0}]}],\"o\":[{\"g\":4}]},9],\"m\":[{\"o\":4,\"i\":[{\"n\":82}]}],\"n\":[{\"d\":[{\"e\":0}],\"t\":[{\"a\":54}]}],\"p\":[{\"e\":[{\"r\":4}],\"l\":4,\"a\":[{\"t\":[{\"h\":310}]}]}],\"r\":[{\"a\":0,\"c\":18,\"e\":18,\"i\":[{\"z\":3}],\"r\":[{\"h\":311}]}],\"s\":[{\"e\":0,\"y\":4}],\"t\":[{\"i\":[{\"c\":18}],\"u\":[{\"r\":1}]}],\"u\":[{\"n\":17}],\"v\":0,\"w\":25,\"x\":[{\"i\":[{\"s\":0}]}],\"g\":[{\"o\":[{\"n\":[{\".\":3}]}]}]},41],\"b\":42,\"c\":[{\"h\":[{\"e\":[{\"t\":5}],\"c\":15,\"i\":[{\"e\":[{\"r\":237}]}]},21],\"r\":29},18],\"d\":43,\"e\":[{\".\":18,\"a\":[{\"d\":[{\"i\":17}],\"t\":18,\"c\":[{\"h\":[{\"e\":[{\"r\":[{\".\":36}]}]}]}]}],\"c\":[{\"e\":17,\"t\":32}],\"d\":[{\"i\":4},42],\"e\":41,\"g\":[{\"e\":[{\"r\":4}],\"i\":4},0],\"l\":[{\".\":27,\"i\":17,\"s\":32,\"e\":[{\"g\":84,\"r\":[{\"o\":249}]}]}],\"m\":[{\"a\":[{\"t\":11},154]}],\"n\":[{\"a\":[{\"n\":27}],\"c\":27,\"d\":27,\"e\":[{\"s\":18}],\"t\":[{\"a\":[{\"g\":0}]},41]}],\"o\":41,\"p\":[{\"e\":4},1],\"r\":[{\"c\":11,\"d\":155,\"i\":[{\"e\":[{\"s\":5}],\"s\":11,\"z\":[{\"a\":6}],\"c\":[{\".\":8}]},41],\"n\":[{\"i\":[{\"t\":32}]}],\"v\":5,\"g\":[{\"e\":[{\"i\":312}]}]}],\"s\":[{\".\":18,\"s\":[{\".\":23,\"e\":[{\"s\":313}]},18]}],\"t\":[{\"h\":[{\"e\":6}]}],\"u\":27,\"x\":27,\"y\":18}],\"f\":42,\"g\":43,\"h\":[{\".\":25,\"a\":[{\"n\":17,\"l\":[{\"a\":[{\"m\":228}]}]}],\"e\":[{\"a\":[{\"s\":3,\"t\":5},18],\"i\":[{\"s\":11}],\"t\":27},9],\"i\":[{\"c\":[{\".\":4,\"a\":4}],\"l\":18,\"n\":[{\"k\":32}]}],\"l\":18,\"o\":[{\"d\":[{\"e\":4,\"i\":[{\"c\":32}],\"o\":[{\"n\":11}]}],\"o\":18,\"r\":[{\"i\":[{\"t\":6,\"z\":5}]}],\"g\":[{\"e\":[{\"n\":[{\"i\":314}]}]}],\"k\":[{\"e\":[{\"r\":175}]}]}],\"s\":25,\"y\":[{\"l\":[{\"a\":[{\"n\":228}]}],\"s\":[{\"c\":11}]}]}],\"i\":[{\"a\":[{\"b\":1,\"t\":[{\"o\":1}],\"n\":[{\".\":70}]},41],\"b\":156,\"c\":[{\"k\":18,\"o\":21,\"u\":157}],\"d\":[{\"i\":32}],\"e\":[{\"n\":27}],\"f\":[{\"y\":4},8],\"g\":[{\"u\":32},25],\"l\":[{\"l\":[{\"i\":[{\"n\":6}]}]}],\"m\":[{\"p\":18,\"u\":[{\"l\":5}]},41],\"n\":[{\"a\":24,\"e\":[{\".\":27}],\"i\":27,\"o\":[{\"m\":285}]},42],\"o\":[{\"c\":4,\"n\":[{\"e\":[{\"e\":6}]}]},41],\"q\":32,\"s\":[{\"a\":3,\"e\":27,\"m\":0,\"o\":4,\"p\":0,\"t\":[{\"i\":[{\"c\":[{\"a\":32}]}]}]}],\"t\":[{\"l\":3}],\"u\":1,\"v\":[{\"a\":0},41],\"z\":[{\"a\":3,\"e\":[{\"n\":3}]},41]}],\"l\":[{\"a\":[{\"n\":17},19],\"e\":[{\".\":27,\"d\":27,\"s\":[{\".\":27}],\"t\":[{\".\":19}]}],\"o\":19,\"i\":[{\"e\":[{\"r\":315}]}]},25],\"m\":[{\"e\":0},43],\"n\":81,\"o\":[{\"b\":3,\"c\":[{\"r\":[{\"a\":[{\"t\":4}]}]}],\"d\":[{\"o\":18}],\"f\":25,\"g\":[{\"r\":9}],\"i\":[{\"c\":4}],\"m\":[{\"a\":9,\"b\":0,\"y\":3}],\"n\":[{\"a\":[{\"l\":[{\"i\":0}],\"t\":3}],\"o\":18,\"y\":18}],\"r\":[{\"a\":9,\"i\":[{\"e\":3,\"z\":5}]}],\"s\":8,\"u\":[{\"r\":32,\"t\":18}],\"w\":[{\"a\":[{\"r\":3}]}],\"l\":[{\"o\":[{\"g\":[{\"y\":84}]}]}],\"t\":[{\"i\":[{\"c\":11}]}]},41],\"p\":43,\"r\":[{\"a\":[{\"b\":11,\"c\":[{\"h\":5,\"i\":[{\"t\":17},36],\"t\":[{\"e\":17}]}],\"s\":17,\"v\":[{\"e\":[{\"n\":5,\"s\":158,\"r\":[{\"s\":[{\"a\":[{\"b\":317}]},15]}]}]}],\"i\":[{\"t\":[{\"o\":[{\"r\":316}]}]}]},41],\"e\":[{\"f\":5,\"m\":[{\"i\":6},0],\"a\":[{\"c\":[{\"h\":[{\"e\":318}]}]}]}],\"i\":[{\"a\":[{\"l\":[{\".\":1}]},32],\"c\":[{\"e\":[{\"s\":5}],\"i\":[{\"a\":32}],\"s\":18}],\"m\":25,\"v\":0}],\"o\":[{\"m\":[{\"i\":5}],\"n\":[{\"i\":6,\"y\":18}],\"p\":[{\"h\":[{\"e\":5}],\"i\":[{\"s\":175}],\"o\":[{\"l\":[{\"e\":[{\"s\":320}],\"i\":[{\"s\":320,\"t\":321}]}]}]}],\"s\":[{\"p\":11}],\"v\":11,\"l\":[{\"e\":[{\"u\":[{\"m\":319}]}]}],\"f\":[{\"i\":[{\"c\":[{\".\":17}],\"t\":11}]}]}],\"u\":[{\"i\":5,\"s\":17}]}],\"s\":[{\"c\":[{\"h\":[{\"i\":[{\"e\":12}]}]},21],\"h\":0,\"w\":21},101],\"t\":[{\"e\":[{\"s\":21}],\"o\":19,\"u\":0,\"r\":[{\"i\":[{\"b\":[{\"u\":[{\"t\":322}]}]}]}]},66],\"u\":[{\"a\":[{\"r\":3},2],\"b\":[{\"i\":1}],\"d\":8,\"e\":18,\"f\":46,\"i\":76,\"m\":27,\"n\":[{\"i\":[{\"s\":1}]}],\"p\":[{\".\":48}],\"r\":[{\"e\":27,\"i\":[{\"s\":11},32],\"o\":5,\"y\":4,\"n\":[{\"a\":[{\"r\":12}]}]}],\"s\":27},41],\"v\":18,\"w\":[{\"a\":43,\"i\":[{\"s\":17}],\"o\":18,\"h\":29},1],\"y\":[{\"a\":18,\"l\":25,\"p\":[{\"e\":12,\"h\":4,\"a\":[{\"l\":64}]}]},41],\"z\":[{\"e\":1},18]}],\"u\":[{\"a\":[{\"b\":18,\"c\":0,\"n\":[{\"a\":4,\"i\":0}],\"r\":[{\"a\":[{\"n\":[{\"t\":5}]}],\"d\":8,\"i\":11,\"t\":11}],\"t\":29,\"v\":0,\"d\":[{\"r\":[{\"a\":[{\"t\":[{\"i\":3,\"u\":15}]}]}]}]}],\"b\":[{\"e\":[{\"l\":21,\"r\":[{\"o\":21},23]},1],\"i\":[{\"n\":[{\"g\":33}]},72],\"l\":[{\"e\":[{\".\":23}]}]}],\"c\":[{\"a\":23,\"i\":[{\"b\":0,\"t\":1}],\"l\":[{\"e\":12}],\"r\":23,\"u\":23,\"y\":21}],\"d\":[{\"d\":4,\"e\":[{\"r\":3,\"s\":[{\"t\":4}],\"v\":17}],\"i\":[{\"c\":29,\"e\":[{\"d\":3,\"s\":3}],\"s\":4,\"t\":19}],\"o\":[{\"n\":[{\"y\":232},21]}],\"s\":[{\"i\":1}],\"u\":21}],\"e\":[{\"n\":[{\"e\":21,\"s\":17,\"t\":[{\"e\":0}]}],\"r\":[{\"i\":[{\"l\":0}]}],\"a\":[{\"m\":15}]}],\"f\":[{\"a\":27,\"l\":23}],\"g\":[{\"h\":[{\"e\":[{\"n\":11}]}],\"i\":[{\"n\":4}]}],\"i\":[{\"l\":[{\"i\":[{\"z\":5}]}],\"n\":[{\"g\":29},1],\"r\":[{\"m\":0}],\"t\":[{\"a\":17}],\"v\":[{\"e\":[{\"r\":[{\".\":0}]}]},11]},156],\"j\":19,\"k\":18,\"l\":[{\"a\":[{\"b\":5,\"t\":[{\"i\":19}]},29],\"c\":[{\"h\":[{\"e\":32},17]}],\"d\":[{\"e\":[{\"r\":3}]}],\"e\":[{\"n\":29},1],\"g\":[{\"i\":1}],\"i\":[{\"a\":19,\"n\":[{\"g\":3}],\"s\":[{\"h\":4}]},9],\"l\":[{\"a\":[{\"r\":1}],\"i\":[{\"b\":96,\"s\":1}]}],\"m\":61,\"o\":72,\"s\":[{\"e\":[{\"s\":5}]},18],\"t\":[{\"i\":2,\"r\":[{\"a\":54}],\"u\":18}],\"u\":[{\"l\":4},23],\"v\":4}],\"m\":[{\"a\":[{\"b\":4}],\"b\":[{\"i\":1,\"l\":[{\"y\":1}]}],\"i\":[{\"n\":[{\"g\":83}]},29],\"o\":[{\"r\":[{\"o\":6}]}],\"p\":9}],\"n\":[{\"a\":[{\"t\":17}],\"e\":[{\"r\":1},24],\"i\":[{\"m\":1,\"n\":24,\"s\":[{\"h\":4}],\"v\":11},29],\"s\":[{\"w\":1},93],\"t\":[{\"a\":[{\"b\":11}],\"e\":[{\"r\":[{\".\":1}],\"s\":1}]}],\"u\":0,\"y\":4,\"z\":4}],\"o\":[{\"r\":[{\"s\":21}],\"s\":19,\"u\":29}],\"p\":[{\"e\":[{\"r\":[{\"s\":6}]},29],\"i\":[{\"a\":19,\"n\":[{\"g\":3}]}],\"l\":23,\"p\":[{\"o\":[{\"r\":[{\"t\":10}]}]},3],\"t\":[{\"i\":[{\"b\":5}],\"u\":17}]}],\"r\":[{\"a\":[{\".\":18,\"g\":21,\"s\":21,\"l\":[{\".\":216}]},29],\"b\":[{\"e\":1}],\"c\":0,\"d\":2,\"e\":[{\"a\":[{\"t\":5}]}],\"f\":[{\"e\":[{\"r\":1}],\"r\":1}],\"i\":[{\"f\":[{\"i\":[{\"c\":0}]},23],\"n\":2,\"o\":23,\"t\":29,\"z\":3,\"a\":[{\"l\":[{\".\":0}]}]}],\"l\":[{\"i\":[{\"n\":[{\"g\":[{\".\":5}]}]}]},9],\"n\":[{\"o\":1}],\"o\":[{\"s\":17}],\"p\":[{\"e\":1,\"i\":1}],\"s\":[{\"e\":[{\"r\":5}]}],\"t\":[{\"e\":[{\"s\":4}],\"h\":[{\"e\":3}],\"i\":[{\"e\":1},17]}],\"u\":23}],\"s\":[{\"a\":[{\"d\":19,\"n\":19,\"p\":1}],\"c\":[{\"i\":3},8],\"e\":[{\"a\":5,\"r\":[{\".\":9}]}],\"i\":[{\"a\":19,\"c\":23}],\"l\":[{\"i\":[{\"n\":1}]}],\"p\":2,\"s\":[{\"l\":4}],\"t\":[{\"e\":[{\"r\":[{\"e\":4}]}],\"r\":2}],\"u\":[{\"r\":17},24]},25],\"t\":[{\"a\":[{\"b\":0,\"t\":23}],\"e\":[{\".\":18,\"l\":18,\"n\":[{\"i\":17},18]}],\"i\":[{\"l\":[{\"i\":[{\"z\":5}]}],\"n\":[{\"e\":23,\"g\":3}],\"o\":[{\"n\":[{\"a\":7}]}],\"s\":21,\"z\":31},101],\"l\":34,\"o\":[{\"f\":4,\"g\":5,\"m\":[{\"a\":[{\"t\":[{\"i\":[{\"c\":5}]}]}]}],\"n\":19,\"u\":21}],\"s\":0}],\"u\":[{\"m\":1},23],\"v\":74,\"x\":[{\"u\":11}],\"z\":[{\"e\":1}]}],\"v\":[{\"a\":[{\".\":32,\"b\":159,\"c\":[{\"i\":[{\"l\":5}],\"u\":11}],\"g\":[{\"e\":1,\"u\":[{\"e\":[{\"r\":170}]}]},0],\"l\":[{\"i\":[{\"e\":4}],\"o\":5,\"u\":15}],\"m\":[{\"o\":4}],\"n\":[{\"i\":[{\"z\":4}]}],\"p\":[{\"i\":4}],\"r\":[{\"i\":[{\"e\":[{\"d\":5}]}]}],\"t\":[{\"i\":[{\"v\":29}]},27],\"u\":[{\"d\":[{\"e\":[{\"v\":54}]}]}]},41],\"e\":[{\".\":18,\"d\":18,\"g\":11,\"l\":[{\".\":23,\"l\":[{\"i\":11}],\"o\":1,\"y\":21}],\"n\":[{\"o\":[{\"m\":11}],\"u\":[{\"e\":19}]}],\"r\":[{\"d\":21,\"e\":[{\".\":32,\"l\":[{\"y\":[{\".\":41}]},21],\"n\":[{\"c\":5},23],\"s\":21,\"i\":[{\"g\":324}]}],\"i\":[{\"e\":11}],\"m\":[{\"i\":[{\"n\":36}]}],\"s\":[{\"e\":27}],\"t\":[{\"h\":11}]}],\"s\":[{\".\":18,\"t\":[{\"e\":0,\"i\":[{\"t\":[{\"e\":15}]}]}]},99],\"t\":[{\"e\":[{\"r\":11},1],\"y\":1}]}],\"i\":[{\"a\":[{\"l\":[{\"i\":4}],\"n\":32}],\"d\":[{\"e\":[{\".\":32,\"d\":32,\"n\":47,\"s\":32}],\"i\":32}],\"f\":23,\"g\":[{\"n\":4}],\"k\":0,\"l\":[{\"i\":[{\"t\":32,\"z\":127}]},25],\"n\":[{\"a\":26,\"c\":24,\"d\":5,\"g\":18},29],\"o\":[{\"l\":11,\"r\":73,\"u\":2}],\"p\":1,\"r\":[{\"o\":4}],\"s\":[{\"i\":[{\"t\":11}],\"o\":3,\"u\":3}],\"t\":[{\"i\":18,\"r\":11,\"y\":18}],\"v\":[{\"i\":[{\"p\":[{\"a\":[{\"r\":325}]}]}]},27]}],\"o\":[{\".\":32,\"i\":[{\"r\":[{\"d\":[{\"u\":323}]}],\"c\":[{\"e\":[{\"p\":213}]}]},0],\"k\":27,\"l\":[{\"a\":1,\"e\":19,\"t\":32,\"v\":27}],\"m\":[{\"i\":5}],\"r\":[{\"a\":[{\"b\":5}],\"i\":17,\"y\":1}],\"t\":[{\"a\":1,\"e\":[{\"e\":18}]}]}],\"v\":26,\"y\":21}],\"w\":[{\"a\":[{\"b\":[{\"l\":19}],\"c\":25,\"g\":[{\"e\":[{\"r\":4}],\"o\":5}],\"i\":[{\"t\":6}],\"l\":[{\".\":19}],\"m\":0,\"r\":[{\"t\":0}],\"s\":[{\"t\":[{\"e\":[{\"w\":[{\"a\":326}]}]},0]}],\"t\":[{\"e\":2}],\"v\":[{\"e\":[{\"r\":4,\"g\":327}]}]}],\"b\":29,\"e\":[{\"a\":[{\"r\":[{\"i\":[{\"e\":5}]}],\"t\":[{\"h\":54}]}],\"d\":[{\"n\":0}],\"e\":[{\"t\":12,\"v\":5,\"k\":[{\"n\":137}]}],\"l\":[{\"l\":0}],\"r\":29,\"s\":[{\"t\":12}],\"v\":23}],\"h\":[{\"i\":0}],\"i\":[{\"l\":[{\"l\":[{\"i\":[{\"n\":6}]}]},8],\"n\":[{\"d\":[{\"e\":0}],\"g\":0}],\"r\":0,\"s\":[{\"e\":27}],\"t\":[{\"h\":12}],\"z\":5,\"d\":[{\"e\":[{\"s\":[{\"p\":6}]}]}]},9],\"k\":21,\"l\":[{\"e\":[{\"s\":1}],\"i\":[{\"n\":3}]}],\"n\":[{\"o\":21}],\"o\":[{\"m\":15,\"v\":[{\"e\":[{\"n\":4}]}],\"k\":[{\"e\":[{\"n\":85}]}]},160],\"p\":19,\"r\":[{\"a\":[{\"p\":[{\"a\":[{\"r\":[{\"o\":12}]}]}]},0],\"i\":[{\"t\":[{\"a\":36,\"e\":[{\"r\":[{\".\":183}]}]}]},0]}],\"s\":[{\"h\":23,\"l\":1,\"p\":[{\"e\":1}],\"t\":60}],\"t\":18,\"y\":1,\"c\":23}],\"x\":[{\"a\":[{\"c\":[{\"e\":5}],\"g\":[{\"o\":21}],\"m\":11,\"p\":21,\"s\":5},29],\"c\":161,\"e\":[{\"c\":[{\"u\":[{\"t\":[{\"o\":1}]}]}],\"d\":24,\"r\":[{\"i\":0,\"o\":4}]},29],\"h\":[{\"i\":[{\"l\":6},8],\"u\":0},29],\"i\":[{\"a\":4,\"c\":4,\"d\":[{\"i\":4}],\"m\":[{\"e\":21,\"i\":[{\"z\":4}]}]},23],\"o\":[{\"b\":21},23],\"p\":[{\"a\":[{\"n\":[{\"d\":17}]}],\"e\":[{\"c\":[{\"t\":[{\"o\":10}]}],\"d\":11}]},23],\"t\":[{\"i\":23},74],\"u\":[{\"a\":3},29],\"x\":1,\"q\":[{\"u\":[{\"i\":[{\"s\":54}]}]},29]}],\"y\":[{\"a\":[{\"c\":19,\"r\":110,\"t\":19}],\"b\":29,\"c\":[{\"e\":[{\"r\":4},24],\"h\":[{\"e\":[{\"d\":264},0]},23],\"o\":[{\"m\":17,\"t\":17}]},29],\"d\":29,\"e\":[{\"e\":19,\"r\":[{\"f\":21},29],\"s\":[{\"t\":[{\"e\":[{\"r\":[{\"y\":328}]}]}]},0],\"t\":1}],\"g\":[{\"i\":19}],\"h\":47,\"i\":29,\"l\":[{\"a\":23,\"l\":[{\"a\":[{\"b\":[{\"l\":6}]}]}],\"o\":23,\"u\":19}],\"m\":[{\"b\":[{\"o\":[{\"l\":7}]}],\"e\":[{\"t\":[{\"r\":[{\"y\":20}]}]},0],\"p\":[{\"a\":12}]}],\"n\":[{\"c\":[{\"h\":[{\"r\":3}]}],\"d\":4,\"g\":4,\"i\":[{\"c\":4}],\"x\":32}],\"o\":[{\"d\":4,\"g\":33,\"m\":0,\"n\":[{\"e\":[{\"t\":4}],\"s\":21}],\"s\":21},72],\"p\":[{\"e\":[{\"d\":21,\"r\":6}],\"i\":3,\"o\":[{\"c\":21},23],\"t\":[{\"a\":9}],\"u\":19}],\"r\":[{\"a\":[{\"m\":5}],\"i\":[{\"a\":4}],\"o\":23,\"r\":1}],\"s\":[{\"c\":1,\"e\":161,\"i\":[{\"c\":[{\"a\":3}],\"o\":3,\"s\":27}],\"o\":21,\"s\":0,\"t\":[{\"a\":3,\"r\":[{\"o\":29}]},2],\"u\":[{\"r\":17}]}],\"t\":[{\"h\":[{\"i\":[{\"n\":23}]}],\"i\":[{\"c\":3}]}],\"w\":29}],\"z\":[{\"a\":[{\"b\":79,\"r\":8},2],\"b\":18,\"e\":[{\"n\":1,\"p\":1,\"r\":[{\"o\":3},29],\"t\":0},25],\"i\":[{\"l\":21,\"s\":21,\"a\":[{\"n\":[{\".\":23}]}]},42],\"l\":32,\"m\":18,\"o\":[{\"m\":1,\"o\":[{\"l\":4}],\"p\":[{\"h\":[{\"r\":329}]}]},41],\"t\":[{\"e\":0}],\"z\":[{\"y\":21,\"w\":231},101]}]}",
|
|
16416
|
+
[
|
|
16417
|
+
"as-so-ciate",
|
|
16418
|
+
"as-so-ciates",
|
|
16419
|
+
"dec-li-na-tion",
|
|
16420
|
+
"oblig-a-tory",
|
|
16421
|
+
"phil-an-thropic",
|
|
16422
|
+
"present",
|
|
16423
|
+
"presents",
|
|
16424
|
+
"project",
|
|
16425
|
+
"projects",
|
|
16426
|
+
"reci-procity",
|
|
16427
|
+
"re-cog-ni-zance",
|
|
16428
|
+
"ref-or-ma-tion",
|
|
16429
|
+
"ret-ri-bu-tion",
|
|
16430
|
+
"ta-ble"
|
|
16431
|
+
]
|
|
16432
|
+
];
|
|
16433
|
+
|
|
16119
16434
|
//#endregion
|
|
16120
16435
|
//#region src/components/docs/layout/hyphenation/tools.ts
|
|
16121
16436
|
function parsePattern(pattern) {
|
|
@@ -16166,8 +16481,8 @@ var Hyphen = class Hyphen {
|
|
|
16166
16481
|
this.loadPattern("en-gb");
|
|
16167
16482
|
}
|
|
16168
16483
|
_preloadPatterns() {
|
|
16169
|
-
this._patterns.set("en-us", parsePattern(
|
|
16170
|
-
this._loadExceptionsToCache("en-us",
|
|
16484
|
+
this._patterns.set("en-us", parsePattern(EnUs));
|
|
16485
|
+
this._loadExceptionsToCache("en-us", EnUs);
|
|
16171
16486
|
}
|
|
16172
16487
|
_loadExceptionsToCache(lang, pattern) {
|
|
16173
16488
|
if (pattern.length < 3) return;
|
|
@@ -16768,28 +17083,45 @@ var DocumentSkeleton = class DocumentSkeleton extends _univerjs_core.Skeleton {
|
|
|
16768
17083
|
}
|
|
16769
17084
|
}
|
|
16770
17085
|
let exactMatch = null;
|
|
16771
|
-
if (skeTables.size > 0)
|
|
16772
|
-
var _this$
|
|
16773
|
-
const
|
|
16774
|
-
(
|
|
16775
|
-
|
|
16776
|
-
|
|
16777
|
-
|
|
16778
|
-
const
|
|
16779
|
-
|
|
16780
|
-
(_this$
|
|
16781
|
-
(
|
|
16782
|
-
|
|
16783
|
-
|
|
16784
|
-
const
|
|
17086
|
+
if (skeTables.size > 0) {
|
|
17087
|
+
var _this$_docViewModel$g, _this$_docViewModel$g2, _this$_docViewModel$g3;
|
|
17088
|
+
const unitId = (_this$_docViewModel$g = (_this$_docViewModel$g2 = (_this$_docViewModel$g3 = this._docViewModel.getDataModel()).getUnitId) === null || _this$_docViewModel$g2 === void 0 ? void 0 : _this$_docViewModel$g2.call(_this$_docViewModel$g3)) !== null && _this$_docViewModel$g !== void 0 ? _this$_docViewModel$g : "";
|
|
17089
|
+
for (const table of skeTables.values()) {
|
|
17090
|
+
var _this$_findLiquid, _this$_findLiquid2, _this$_findLiquid11;
|
|
17091
|
+
const { top: tableTop, left: tableLeft, rows } = table;
|
|
17092
|
+
const sourceTableId = getTableIdAndSliceIndex(table.tableId).tableId;
|
|
17093
|
+
const viewport = getDocsTableRenderViewport(unitId, sourceTableId);
|
|
17094
|
+
(_this$_findLiquid = this._findLiquid) === null || _this$_findLiquid === void 0 || _this$_findLiquid.translateSave();
|
|
17095
|
+
(_this$_findLiquid2 = this._findLiquid) === null || _this$_findLiquid2 === void 0 || _this$_findLiquid2.translate(tableLeft, tableTop);
|
|
17096
|
+
if (viewport && viewport.contentWidth > viewport.viewportWidth) {
|
|
17097
|
+
var _this$_findLiquid4;
|
|
17098
|
+
const visibleLeft = this._findLiquid.x;
|
|
17099
|
+
const visibleRight = visibleLeft + viewport.viewportWidth;
|
|
17100
|
+
if (x < visibleLeft || x > visibleRight) {
|
|
17101
|
+
var _this$_findLiquid3;
|
|
17102
|
+
(_this$_findLiquid3 = this._findLiquid) === null || _this$_findLiquid3 === void 0 || _this$_findLiquid3.translateRestore();
|
|
17103
|
+
continue;
|
|
17104
|
+
}
|
|
17105
|
+
(_this$_findLiquid4 = this._findLiquid) === null || _this$_findLiquid4 === void 0 || _this$_findLiquid4.translate(-viewport.scrollLeft, 0);
|
|
17106
|
+
}
|
|
17107
|
+
for (const row of rows) {
|
|
17108
|
+
var _this$_findLiquid5, _this$_findLiquid6, _this$_findLiquid10;
|
|
17109
|
+
const { top: rowTop, cells, isRepeatRow } = row;
|
|
17110
|
+
if (isRepeatRow) continue;
|
|
16785
17111
|
(_this$_findLiquid5 = this._findLiquid) === null || _this$_findLiquid5 === void 0 || _this$_findLiquid5.translateSave();
|
|
16786
|
-
(_this$_findLiquid6 = this._findLiquid) === null || _this$_findLiquid6 === void 0 || _this$_findLiquid6.translate(
|
|
16787
|
-
|
|
16788
|
-
|
|
17112
|
+
(_this$_findLiquid6 = this._findLiquid) === null || _this$_findLiquid6 === void 0 || _this$_findLiquid6.translate(0, rowTop);
|
|
17113
|
+
for (const cell of cells) {
|
|
17114
|
+
var _this$_findLiquid7, _this$_findLiquid8, _exactMatch3, _this$_findLiquid9;
|
|
17115
|
+
const { left: cellLeft } = cell;
|
|
17116
|
+
(_this$_findLiquid7 = this._findLiquid) === null || _this$_findLiquid7 === void 0 || _this$_findLiquid7.translateSave();
|
|
17117
|
+
(_this$_findLiquid8 = this._findLiquid) === null || _this$_findLiquid8 === void 0 || _this$_findLiquid8.translate(cellLeft, 0);
|
|
17118
|
+
exactMatch = (_exactMatch3 = exactMatch) !== null && _exactMatch3 !== void 0 ? _exactMatch3 : this._collectNearestNode(cell, 3, cell, segmentId, pi, cache, x, y, pageLength, nestLevel + 1);
|
|
17119
|
+
(_this$_findLiquid9 = this._findLiquid) === null || _this$_findLiquid9 === void 0 || _this$_findLiquid9.translateRestore();
|
|
17120
|
+
}
|
|
17121
|
+
(_this$_findLiquid10 = this._findLiquid) === null || _this$_findLiquid10 === void 0 || _this$_findLiquid10.translateRestore();
|
|
16789
17122
|
}
|
|
16790
|
-
(_this$
|
|
17123
|
+
(_this$_findLiquid11 = this._findLiquid) === null || _this$_findLiquid11 === void 0 || _this$_findLiquid11.translateRestore();
|
|
16791
17124
|
}
|
|
16792
|
-
(_this$_findLiquid9 = this._findLiquid) === null || _this$_findLiquid9 === void 0 || _this$_findLiquid9.translateRestore();
|
|
16793
17125
|
}
|
|
16794
17126
|
if (exactMatch) {
|
|
16795
17127
|
this._findLiquid.translateRestore();
|
|
@@ -17074,10 +17406,12 @@ function createDocumentModelWithStyle(content, textStyle, config = {}) {
|
|
|
17074
17406
|
width: Number.POSITIVE_INFINITY,
|
|
17075
17407
|
height: Number.POSITIVE_INFINITY
|
|
17076
17408
|
},
|
|
17409
|
+
documentFlavor: _univerjs_core.DocumentFlavor.UNSPECIFIED,
|
|
17077
17410
|
marginTop,
|
|
17078
17411
|
marginBottom,
|
|
17079
17412
|
marginRight,
|
|
17080
17413
|
marginLeft,
|
|
17414
|
+
paragraphLineGapDefault: 0,
|
|
17081
17415
|
renderConfig: {
|
|
17082
17416
|
horizontalAlign,
|
|
17083
17417
|
verticalAlign,
|
|
@@ -17119,7 +17453,7 @@ function getFontFormat(format) {
|
|
|
17119
17453
|
}
|
|
17120
17454
|
|
|
17121
17455
|
//#endregion
|
|
17122
|
-
//#region \0@oxc-project+runtime@0.
|
|
17456
|
+
//#region \0@oxc-project+runtime@0.133.0/helpers/esm/decorateParam.js
|
|
17123
17457
|
function __decorateParam(paramIndex, decorator) {
|
|
17124
17458
|
return function(target, key) {
|
|
17125
17459
|
decorator(target, key, paramIndex);
|
|
@@ -17127,7 +17461,7 @@ function __decorateParam(paramIndex, decorator) {
|
|
|
17127
17461
|
}
|
|
17128
17462
|
|
|
17129
17463
|
//#endregion
|
|
17130
|
-
//#region \0@oxc-project+runtime@0.
|
|
17464
|
+
//#region \0@oxc-project+runtime@0.133.0/helpers/esm/decorate.js
|
|
17131
17465
|
function __decorate(decorators, target, key, desc) {
|
|
17132
17466
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
17133
17467
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
@@ -21543,7 +21877,8 @@ DocumentsSpanAndLineExtensionRegistry.add(new Line());
|
|
|
21543
21877
|
|
|
21544
21878
|
//#endregion
|
|
21545
21879
|
//#region src/components/docs/document.ts
|
|
21546
|
-
const DEFAULT_BORDER_COLOR = { color: { rgb: "#
|
|
21880
|
+
const DEFAULT_BORDER_COLOR = { color: { rgb: "#c7c9cc" } };
|
|
21881
|
+
const TABLE_VIEWPORT_BORDER_CLIP_PADDING = 2;
|
|
21547
21882
|
var Documents = class Documents extends DocComponent {
|
|
21548
21883
|
constructor(oKey, documentSkeleton, config) {
|
|
21549
21884
|
super(oKey, documentSkeleton, config);
|
|
@@ -21726,29 +22061,62 @@ var Documents = class Documents extends DocComponent {
|
|
|
21726
22061
|
}
|
|
21727
22062
|
}
|
|
21728
22063
|
_drawTable(ctx, page, skeTables, extensions, backgroundExtension, glyphExtensionsExcludeBackground, alignOffsetNoAngle, centerAngle, vertexAngle, renderConfig, parentScale) {
|
|
21729
|
-
|
|
21730
|
-
|
|
22064
|
+
const drawLiquid = this._drawLiquid;
|
|
22065
|
+
if (drawLiquid == null) return;
|
|
22066
|
+
const renderUnitId = this._getRenderUnitId();
|
|
22067
|
+
for (const [tableId, tableSkeleton] of skeTables) {
|
|
21731
22068
|
const { top: tableTop, left: tableLeft, rows } = tableSkeleton;
|
|
21732
|
-
|
|
21733
|
-
|
|
22069
|
+
const sourceTableId = getTableIdAndSliceIndex(tableId).tableId;
|
|
22070
|
+
const viewport = this._getTableViewport(page, tableSkeleton, renderUnitId, sourceTableId);
|
|
22071
|
+
drawLiquid.translateSave();
|
|
22072
|
+
drawLiquid.translate(tableLeft, tableTop);
|
|
22073
|
+
if (viewport && viewport.contentWidth > viewport.viewportWidth) {
|
|
22074
|
+
const { x, y } = drawLiquid;
|
|
22075
|
+
ctx.save();
|
|
22076
|
+
ctx.beginPath();
|
|
22077
|
+
ctx.rectByPrecision(x + page.marginLeft - TABLE_VIEWPORT_BORDER_CLIP_PADDING, y + page.marginTop - TABLE_VIEWPORT_BORDER_CLIP_PADDING, viewport.viewportWidth + TABLE_VIEWPORT_BORDER_CLIP_PADDING * 2, tableSkeleton.height + TABLE_VIEWPORT_BORDER_CLIP_PADDING * 2);
|
|
22078
|
+
ctx.closePath();
|
|
22079
|
+
ctx.clip();
|
|
22080
|
+
drawLiquid.translate(-viewport.scrollLeft, 0);
|
|
22081
|
+
}
|
|
21734
22082
|
for (const row of rows) {
|
|
21735
|
-
var _this$_drawLiquid3, _this$_drawLiquid4, _this$_drawLiquid8;
|
|
21736
22083
|
const { top: rowTop, cells } = row;
|
|
21737
|
-
|
|
21738
|
-
|
|
22084
|
+
drawLiquid.translateSave();
|
|
22085
|
+
drawLiquid.translate(0, rowTop);
|
|
21739
22086
|
for (const cell of cells) {
|
|
21740
|
-
|
|
22087
|
+
if (cell.isMergedCellCovered) continue;
|
|
21741
22088
|
const { left: cellLeft } = cell;
|
|
21742
|
-
|
|
21743
|
-
|
|
22089
|
+
drawLiquid.translateSave();
|
|
22090
|
+
drawLiquid.translate(cellLeft, 0);
|
|
21744
22091
|
this._drawTableCell(ctx, page, cell, extensions, backgroundExtension, glyphExtensionsExcludeBackground, alignOffsetNoAngle, centerAngle, vertexAngle, renderConfig, parentScale);
|
|
21745
|
-
|
|
22092
|
+
drawLiquid.translateRestore();
|
|
21746
22093
|
}
|
|
21747
|
-
|
|
22094
|
+
drawLiquid.translateRestore();
|
|
21748
22095
|
}
|
|
21749
|
-
(
|
|
22096
|
+
if (viewport && viewport.contentWidth > viewport.viewportWidth) ctx.restore();
|
|
22097
|
+
drawLiquid.translateRestore();
|
|
21750
22098
|
}
|
|
21751
22099
|
}
|
|
22100
|
+
_getTableViewport(page, tableSkeleton, unitId, tableId) {
|
|
22101
|
+
const viewport = getDocsTableRenderViewport(unitId, tableId);
|
|
22102
|
+
if (viewport) return viewport;
|
|
22103
|
+
const { pageWidth, marginLeft = 0, marginRight = 0 } = page;
|
|
22104
|
+
if (!Number.isFinite(pageWidth)) return null;
|
|
22105
|
+
const viewportWidth = Math.max(0, pageWidth - marginLeft - marginRight - tableSkeleton.left);
|
|
22106
|
+
if (viewportWidth <= 0 || tableSkeleton.width <= viewportWidth) return null;
|
|
22107
|
+
return {
|
|
22108
|
+
contentWidth: tableSkeleton.width,
|
|
22109
|
+
scrollLeft: 0,
|
|
22110
|
+
viewportWidth
|
|
22111
|
+
};
|
|
22112
|
+
}
|
|
22113
|
+
_getRenderUnitId() {
|
|
22114
|
+
var _skeleton$getViewMode, _viewModel$getDataMod, _dataModel$getUnitId, _dataModel$getUnitId2;
|
|
22115
|
+
const skeleton = this.getSkeleton();
|
|
22116
|
+
const viewModel = skeleton === null || skeleton === void 0 || (_skeleton$getViewMode = skeleton.getViewModel) === null || _skeleton$getViewMode === void 0 ? void 0 : _skeleton$getViewMode.call(skeleton);
|
|
22117
|
+
const dataModel = viewModel === null || viewModel === void 0 || (_viewModel$getDataMod = viewModel.getDataModel) === null || _viewModel$getDataMod === void 0 ? void 0 : _viewModel$getDataMod.call(viewModel);
|
|
22118
|
+
return (_dataModel$getUnitId = dataModel === null || dataModel === void 0 || (_dataModel$getUnitId2 = dataModel.getUnitId) === null || _dataModel$getUnitId2 === void 0 ? void 0 : _dataModel$getUnitId2.call(dataModel)) !== null && _dataModel$getUnitId !== void 0 ? _dataModel$getUnitId : this.oKey;
|
|
22119
|
+
}
|
|
21752
22120
|
_drawBorderBottom(ctx, page, line, left = 0, top = 0) {
|
|
21753
22121
|
var _line$borderBottom$pa, _line$borderBottom, _line$borderBottom$co, _line$borderBottom2;
|
|
21754
22122
|
if (this._drawLiquid == null) return;
|
|
@@ -21858,60 +22226,68 @@ var Documents = class Documents extends DocComponent {
|
|
|
21858
22226
|
ctx.restore();
|
|
21859
22227
|
}
|
|
21860
22228
|
_drawTableCellBordersAndBg(ctx, page, cell) {
|
|
21861
|
-
var
|
|
22229
|
+
var _rowSke$index, _cellSource$backgroun;
|
|
21862
22230
|
const { marginLeft, marginTop } = page;
|
|
21863
22231
|
const { pageWidth, pageHeight } = cell;
|
|
21864
22232
|
const rowSke = cell.parent;
|
|
21865
22233
|
const index = rowSke.cells.indexOf(cell);
|
|
21866
|
-
|
|
22234
|
+
if (index < 0) return;
|
|
22235
|
+
const cellSource = rowSke.rowSource.tableCells[index];
|
|
22236
|
+
const tableSke = rowSke.parent;
|
|
22237
|
+
const rowIndexInTable = tableSke === null || tableSke === void 0 ? void 0 : tableSke.rows.indexOf(rowSke);
|
|
22238
|
+
const rowIndex = rowIndexInTable == null || rowIndexInTable < 0 ? (_rowSke$index = rowSke.index) !== null && _rowSke$index !== void 0 ? _rowSke$index : 0 : rowIndexInTable;
|
|
22239
|
+
if (!cellSource || cellSource.rowSpan === 0 || cellSource.columnSpan === 0) return;
|
|
21867
22240
|
if (this._drawLiquid == null) return;
|
|
21868
22241
|
let { x, y } = this._drawLiquid;
|
|
21869
22242
|
x += marginLeft;
|
|
21870
22243
|
y += marginTop;
|
|
21871
|
-
if (backgroundColor
|
|
22244
|
+
if ((_cellSource$backgroun = cellSource.backgroundColor) === null || _cellSource$backgroun === void 0 ? void 0 : _cellSource$backgroun.rgb) {
|
|
21872
22245
|
ctx.save();
|
|
21873
|
-
ctx.fillStyle = backgroundColor.rgb;
|
|
22246
|
+
ctx.fillStyle = cellSource.backgroundColor.rgb;
|
|
21874
22247
|
ctx.fillRectByPrecision(x, y, pageWidth, pageHeight);
|
|
21875
22248
|
ctx.restore();
|
|
21876
22249
|
}
|
|
21877
|
-
|
|
21878
|
-
ctx.setLineWidthByPrecision(1);
|
|
21879
|
-
ctx.save();
|
|
21880
|
-
ctx.strokeStyle = (_borderLeft$color$rgb = borderLeft.color.rgb) !== null && _borderLeft$color$rgb !== void 0 ? _borderLeft$color$rgb : DEFAULT_BORDER_COLOR.color.rgb;
|
|
21881
|
-
drawLineByBorderType(ctx, "l", 0, {
|
|
21882
|
-
startX: x,
|
|
21883
|
-
startY: y,
|
|
21884
|
-
endX: x + pageWidth,
|
|
21885
|
-
endY: y + pageHeight
|
|
21886
|
-
});
|
|
21887
|
-
ctx.restore();
|
|
21888
|
-
ctx.save();
|
|
21889
|
-
ctx.strokeStyle = (_borderTop$color$rgb = borderTop.color.rgb) !== null && _borderTop$color$rgb !== void 0 ? _borderTop$color$rgb : DEFAULT_BORDER_COLOR.color.rgb;
|
|
21890
|
-
drawLineByBorderType(ctx, "t", 0, {
|
|
22250
|
+
const position = {
|
|
21891
22251
|
startX: x,
|
|
21892
22252
|
startY: y,
|
|
21893
22253
|
endX: x + pageWidth,
|
|
21894
22254
|
endY: y + pageHeight
|
|
21895
|
-
}
|
|
21896
|
-
|
|
21897
|
-
|
|
21898
|
-
|
|
21899
|
-
|
|
21900
|
-
|
|
21901
|
-
|
|
21902
|
-
|
|
21903
|
-
|
|
21904
|
-
|
|
21905
|
-
|
|
22255
|
+
};
|
|
22256
|
+
const rightCellSource = this._getTableCellSource(rowSke, index + 1);
|
|
22257
|
+
const bottomCellSource = tableSke ? this._getTableCellSource(tableSke.rows[rowIndex + 1], index) : void 0;
|
|
22258
|
+
this._drawTableCellBorder(ctx, this._resolveTableCellBorder(cellSource.borderRight, rightCellSource === null || rightCellSource === void 0 ? void 0 : rightCellSource.borderLeft), "r", position);
|
|
22259
|
+
this._drawTableCellBorder(ctx, this._resolveTableCellBorder(cellSource.borderBottom, bottomCellSource === null || bottomCellSource === void 0 ? void 0 : bottomCellSource.borderTop), "b", position);
|
|
22260
|
+
if (rowIndex <= 0) this._drawTableCellBorder(ctx, this._resolveTableCellBorder(cellSource.borderTop), "t", position);
|
|
22261
|
+
if (index <= 0) this._drawTableCellBorder(ctx, this._resolveTableCellBorder(cellSource.borderLeft), "l", position);
|
|
22262
|
+
}
|
|
22263
|
+
_getTableCellSource(row, column) {
|
|
22264
|
+
var _row$rowSource$tableC;
|
|
22265
|
+
return (_row$rowSource$tableC = row === null || row === void 0 ? void 0 : row.rowSource.tableCells[column]) !== null && _row$rowSource$tableC !== void 0 ? _row$rowSource$tableC : null;
|
|
22266
|
+
}
|
|
22267
|
+
_resolveTableCellBorder(primary, secondary) {
|
|
22268
|
+
if (this._isDrawableTableCellBorder(primary)) return primary;
|
|
22269
|
+
if (this._isDrawableTableCellBorder(secondary)) return secondary;
|
|
22270
|
+
if (primary || secondary) return null;
|
|
22271
|
+
return DEFAULT_BORDER_COLOR;
|
|
22272
|
+
}
|
|
22273
|
+
_isDrawableTableCellBorder(border) {
|
|
22274
|
+
var _border$width$v, _border$width, _border$color$rgb, _border$color;
|
|
22275
|
+
if (!border) return false;
|
|
22276
|
+
const lineWidth = (_border$width$v = (_border$width = border.width) === null || _border$width === void 0 ? void 0 : _border$width.v) !== null && _border$width$v !== void 0 ? _border$width$v : 1;
|
|
22277
|
+
const color = (_border$color$rgb = (_border$color = border.color) === null || _border$color === void 0 ? void 0 : _border$color.rgb) !== null && _border$color$rgb !== void 0 ? _border$color$rgb : DEFAULT_BORDER_COLOR.color.rgb;
|
|
22278
|
+
return lineWidth > 0 && color !== "transparent";
|
|
22279
|
+
}
|
|
22280
|
+
_drawTableCellBorder(ctx, border, type, position) {
|
|
22281
|
+
var _border$width$v2, _border$width2, _border$color$rgb2, _border$color2;
|
|
22282
|
+
if (!border) return;
|
|
22283
|
+
const lineWidth = (_border$width$v2 = (_border$width2 = border.width) === null || _border$width2 === void 0 ? void 0 : _border$width2.v) !== null && _border$width$v2 !== void 0 ? _border$width$v2 : 1;
|
|
22284
|
+
const color = (_border$color$rgb2 = (_border$color2 = border.color) === null || _border$color2 === void 0 ? void 0 : _border$color2.rgb) !== null && _border$color$rgb2 !== void 0 ? _border$color$rgb2 : DEFAULT_BORDER_COLOR.color.rgb;
|
|
22285
|
+
if (lineWidth <= 0 || color === "transparent") return;
|
|
21906
22286
|
ctx.save();
|
|
21907
|
-
ctx.
|
|
21908
|
-
|
|
21909
|
-
|
|
21910
|
-
|
|
21911
|
-
endX: x + pageWidth,
|
|
21912
|
-
endY: y + pageHeight
|
|
21913
|
-
});
|
|
21914
|
-
ctx.restore();
|
|
22287
|
+
ctx.setLineWidthByPrecision(lineWidth);
|
|
22288
|
+
setTableCellBorderDash(ctx, border.dashStyle);
|
|
22289
|
+
ctx.strokeStyle = color;
|
|
22290
|
+
drawLineByBorderType(ctx, type, 0, position);
|
|
21915
22291
|
ctx.restore();
|
|
21916
22292
|
}
|
|
21917
22293
|
_drawHeaderFooter(page, ctx, extensions, backgroundExtension, glyphExtensionsExcludeBackground, alignOffsetNoAngle, centerAngle, vertexAngle, renderConfig, parentScale, parentPage, isHeader = true) {
|
|
@@ -22042,6 +22418,17 @@ var Documents = class Documents extends DocComponent {
|
|
|
22042
22418
|
});
|
|
22043
22419
|
}
|
|
22044
22420
|
};
|
|
22421
|
+
function setTableCellBorderDash(ctx, dashStyle) {
|
|
22422
|
+
if (dashStyle === _univerjs_core.DashStyleType.DOT) {
|
|
22423
|
+
ctx.setLineDash([2]);
|
|
22424
|
+
return;
|
|
22425
|
+
}
|
|
22426
|
+
if (dashStyle === _univerjs_core.DashStyleType.DASH) {
|
|
22427
|
+
ctx.setLineDash([6]);
|
|
22428
|
+
return;
|
|
22429
|
+
}
|
|
22430
|
+
ctx.setLineDash([0]);
|
|
22431
|
+
}
|
|
22045
22432
|
|
|
22046
22433
|
//#endregion
|
|
22047
22434
|
//#region src/components/sheets/spreadsheet.ts
|
|
@@ -22225,8 +22612,10 @@ var Spreadsheet = class extends SheetComponent {
|
|
|
22225
22612
|
cacheCtx.save();
|
|
22226
22613
|
const isForceDirty = isViewportForceDirty || this.isForceDirty();
|
|
22227
22614
|
const isDirty = isViewportDirty || this.isDirty();
|
|
22228
|
-
|
|
22229
|
-
|
|
22615
|
+
const isScrollJumpOutsideCache = Math.abs(diffX) * scaleX >= cacheCanvas.getWidth() || Math.abs(diffY) * scaleY >= cacheCanvas.getHeight();
|
|
22616
|
+
const shouldRefreshCache = isDirty || isForceDirty || isScrollJumpOutsideCache;
|
|
22617
|
+
if (diffBounds.length === 0 || diffX === 0 && diffY === 0 || shouldRefreshCache) {
|
|
22618
|
+
if (shouldRefreshCache) {
|
|
22230
22619
|
this.addRenderTagToScene("scrolling", false);
|
|
22231
22620
|
this.refreshCacheCanvas(viewportInfo, {
|
|
22232
22621
|
cacheCanvas,
|
|
@@ -23242,29 +23631,49 @@ var Slide = class extends SceneViewer {
|
|
|
23242
23631
|
//#region src/components/docs/doc-background.ts
|
|
23243
23632
|
const PAGE_STROKE_COLOR = "rgba(198, 198, 198, 1)";
|
|
23244
23633
|
const PAGE_FILL_COLOR = "rgba(255, 255, 255, 1)";
|
|
23634
|
+
const DOCS_WORKSPACE_FILL_COLOR = "#fafafa";
|
|
23245
23635
|
const MARGIN_STROKE_COLOR = "rgba(158, 158, 158, 1)";
|
|
23246
23636
|
var DocBackground = class DocBackground extends DocComponent {
|
|
23247
23637
|
constructor(oKey, documentSkeleton, config) {
|
|
23248
23638
|
super(oKey, documentSkeleton, config);
|
|
23249
23639
|
_defineProperty(this, "_drawLiquid", void 0);
|
|
23640
|
+
_defineProperty(this, "_backgroundFillColor", void 0);
|
|
23641
|
+
_defineProperty(this, "_pageFillColor", void 0);
|
|
23642
|
+
_defineProperty(this, "_pageStrokeColor", void 0);
|
|
23643
|
+
_defineProperty(this, "_marginStrokeColor", void 0);
|
|
23250
23644
|
this._drawLiquid = new Liquid();
|
|
23645
|
+
this._backgroundFillColor = config === null || config === void 0 ? void 0 : config.backgroundFillColor;
|
|
23646
|
+
this._pageFillColor = config === null || config === void 0 ? void 0 : config.pageFillColor;
|
|
23647
|
+
this._pageStrokeColor = config === null || config === void 0 ? void 0 : config.pageStrokeColor;
|
|
23648
|
+
this._marginStrokeColor = config === null || config === void 0 ? void 0 : config.marginStrokeColor;
|
|
23251
23649
|
this.makeDirty(true);
|
|
23252
23650
|
}
|
|
23253
23651
|
static create(oKey, documentSkeleton, config) {
|
|
23254
23652
|
return new DocBackground(oKey, documentSkeleton, config);
|
|
23255
23653
|
}
|
|
23654
|
+
setFillColors(backgroundFillColor, pageFillColor, pageStrokeColor, marginStrokeColor) {
|
|
23655
|
+
if (this._backgroundFillColor === backgroundFillColor && this._pageFillColor === pageFillColor && this._pageStrokeColor === pageStrokeColor && this._marginStrokeColor === marginStrokeColor) return;
|
|
23656
|
+
this._backgroundFillColor = backgroundFillColor;
|
|
23657
|
+
this._pageFillColor = pageFillColor;
|
|
23658
|
+
this._pageStrokeColor = pageStrokeColor;
|
|
23659
|
+
this._marginStrokeColor = marginStrokeColor;
|
|
23660
|
+
this.makeDirty(true);
|
|
23661
|
+
}
|
|
23256
23662
|
draw(ctx, bounds) {
|
|
23257
|
-
var _this$getSkeleton, _this$getSkeleton2;
|
|
23663
|
+
var _this$getSkeleton, _this$getSkeleton2, _this$_backgroundFill;
|
|
23258
23664
|
const skeletonData = (_this$getSkeleton = this.getSkeleton()) === null || _this$getSkeleton === void 0 ? void 0 : _this$getSkeleton.getSkeletonData();
|
|
23259
23665
|
const docDataModel = (_this$getSkeleton2 = this.getSkeleton()) === null || _this$getSkeleton2 === void 0 ? void 0 : _this$getSkeleton2.getViewModel().getDataModel();
|
|
23260
23666
|
if (skeletonData == null || docDataModel == null) return;
|
|
23261
23667
|
const { documentFlavor } = docDataModel.getSnapshot().documentStyle;
|
|
23262
|
-
|
|
23668
|
+
const workspaceFill = (_this$_backgroundFill = this._backgroundFillColor) !== null && _this$_backgroundFill !== void 0 ? _this$_backgroundFill : documentFlavor === _univerjs_core.DocumentFlavor.MODERN ? PAGE_FILL_COLOR : DOCS_WORKSPACE_FILL_COLOR;
|
|
23669
|
+
this._drawWorkspaceBackground(ctx, workspaceFill, bounds);
|
|
23670
|
+
if (documentFlavor === _univerjs_core.DocumentFlavor.MODERN) return;
|
|
23263
23671
|
this._drawLiquid.reset();
|
|
23264
23672
|
const { pages } = skeletonData;
|
|
23265
23673
|
let pageTop = 0;
|
|
23266
23674
|
let pageLeft = 0;
|
|
23267
23675
|
for (let i = 0, len = pages.length; i < len; i++) {
|
|
23676
|
+
var _this$_pageStrokeColo, _this$_pageFillColor, _this$_marginStrokeCo;
|
|
23268
23677
|
const page = pages[i];
|
|
23269
23678
|
if (this.isSkipByDiffBounds(page, pageTop, pageLeft, bounds)) {
|
|
23270
23679
|
const { x, y } = this._drawLiquid.translatePage(page, this.pageLayoutType, this.pageMarginLeft, this.pageMarginTop);
|
|
@@ -23279,8 +23688,8 @@ var DocBackground = class DocBackground extends DocComponent {
|
|
|
23279
23688
|
width: pageWidth !== null && pageWidth !== void 0 ? pageWidth : width,
|
|
23280
23689
|
height: pageHeight !== null && pageHeight !== void 0 ? pageHeight : height,
|
|
23281
23690
|
strokeWidth: 1,
|
|
23282
|
-
stroke: PAGE_STROKE_COLOR,
|
|
23283
|
-
fill: PAGE_FILL_COLOR,
|
|
23691
|
+
stroke: (_this$_pageStrokeColo = this._pageStrokeColor) !== null && _this$_pageStrokeColo !== void 0 ? _this$_pageStrokeColo : PAGE_STROKE_COLOR,
|
|
23692
|
+
fill: (_this$_pageFillColor = this._pageFillColor) !== null && _this$_pageFillColor !== void 0 ? _this$_pageFillColor : PAGE_FILL_COLOR,
|
|
23284
23693
|
zIndex: 3
|
|
23285
23694
|
};
|
|
23286
23695
|
Rect.drawWith(ctx, backgroundOptions);
|
|
@@ -23337,7 +23746,7 @@ var DocBackground = class DocBackground extends DocComponent {
|
|
|
23337
23746
|
}
|
|
23338
23747
|
],
|
|
23339
23748
|
strokeWidth: 1.5,
|
|
23340
|
-
stroke: MARGIN_STROKE_COLOR
|
|
23749
|
+
stroke: (_this$_marginStrokeCo = this._marginStrokeColor) !== null && _this$_marginStrokeCo !== void 0 ? _this$_marginStrokeCo : MARGIN_STROKE_COLOR
|
|
23341
23750
|
};
|
|
23342
23751
|
Path.drawWith(ctx, marginIdentification);
|
|
23343
23752
|
ctx.restore();
|
|
@@ -23346,6 +23755,24 @@ var DocBackground = class DocBackground extends DocComponent {
|
|
|
23346
23755
|
pageTop += y;
|
|
23347
23756
|
}
|
|
23348
23757
|
}
|
|
23758
|
+
_drawWorkspaceBackground(ctx, fill, bounds) {
|
|
23759
|
+
var _bounds$cacheBound, _visibleBound$left, _visibleBound$top;
|
|
23760
|
+
const visibleBound = (_bounds$cacheBound = bounds === null || bounds === void 0 ? void 0 : bounds.cacheBound) !== null && _bounds$cacheBound !== void 0 ? _bounds$cacheBound : bounds === null || bounds === void 0 ? void 0 : bounds.viewBound;
|
|
23761
|
+
const left = (_visibleBound$left = visibleBound === null || visibleBound === void 0 ? void 0 : visibleBound.left) !== null && _visibleBound$left !== void 0 ? _visibleBound$left : 0;
|
|
23762
|
+
const top = (_visibleBound$top = visibleBound === null || visibleBound === void 0 ? void 0 : visibleBound.top) !== null && _visibleBound$top !== void 0 ? _visibleBound$top : 0;
|
|
23763
|
+
const width = visibleBound == null ? this.width : visibleBound.right - visibleBound.left;
|
|
23764
|
+
const height = visibleBound == null ? this.height : visibleBound.bottom - visibleBound.top;
|
|
23765
|
+
if (width <= 0 || height <= 0) return;
|
|
23766
|
+
ctx.save();
|
|
23767
|
+
ctx.translate(left, top);
|
|
23768
|
+
Rect.drawWith(ctx, {
|
|
23769
|
+
width,
|
|
23770
|
+
height,
|
|
23771
|
+
fill,
|
|
23772
|
+
zIndex: 0
|
|
23773
|
+
});
|
|
23774
|
+
ctx.restore();
|
|
23775
|
+
}
|
|
23349
23776
|
changeSkeleton(newSkeleton) {
|
|
23350
23777
|
this.setSkeleton(newSkeleton);
|
|
23351
23778
|
return this;
|
|
@@ -23863,7 +24290,10 @@ let Engine = class Engine extends _univerjs_core.Disposable {
|
|
|
23863
24290
|
sub.unsubscribe();
|
|
23864
24291
|
this._rect$ = null;
|
|
23865
24292
|
};
|
|
23866
|
-
})).pipe((0, rxjs.shareReplay)(
|
|
24293
|
+
})).pipe((0, rxjs.shareReplay)({
|
|
24294
|
+
bufferSize: 1,
|
|
24295
|
+
refCount: true
|
|
24296
|
+
}));
|
|
23867
24297
|
}
|
|
23868
24298
|
get unitId() {
|
|
23869
24299
|
return this._unitId;
|
|
@@ -24495,7 +24925,7 @@ Engine = __decorate([__decorateParam(2, ICanvasColorService)], Engine);
|
|
|
24495
24925
|
//#endregion
|
|
24496
24926
|
//#region package.json
|
|
24497
24927
|
var name = "@univerjs/engine-render";
|
|
24498
|
-
var version = "0.
|
|
24928
|
+
var version = "0.25.0";
|
|
24499
24929
|
|
|
24500
24930
|
//#endregion
|
|
24501
24931
|
//#region src/config/config.ts
|
|
@@ -27234,6 +27664,9 @@ let RenderUnit = class RenderUnit extends _univerjs_core.Disposable {
|
|
|
27234
27664
|
this._renderContext.unit = null;
|
|
27235
27665
|
this._renderContext.components.clear();
|
|
27236
27666
|
}
|
|
27667
|
+
isDisposed() {
|
|
27668
|
+
return this._disposed;
|
|
27669
|
+
}
|
|
27237
27670
|
/**
|
|
27238
27671
|
* Get a dependency from the RenderUnit's injector.
|
|
27239
27672
|
*/
|
|
@@ -27579,6 +28012,7 @@ function subtractViewportRange(range1, range2) {
|
|
|
27579
28012
|
//#endregion
|
|
27580
28013
|
//#region src/viewport.ts
|
|
27581
28014
|
const MOUSE_WHEEL_SPEED_SMOOTHING_FACTOR = 3;
|
|
28015
|
+
const WHEEL_CROSS_AXIS_LOCK_RATIO = 2;
|
|
27582
28016
|
var Viewport = class {
|
|
27583
28017
|
constructor(viewportKey, scene, props) {
|
|
27584
28018
|
var _this$scene$getEngine;
|
|
@@ -28222,11 +28656,22 @@ var Viewport = class {
|
|
|
28222
28656
|
let offsetX = 0;
|
|
28223
28657
|
let offsetY = 0;
|
|
28224
28658
|
const allWidth = this._scene.width;
|
|
28225
|
-
|
|
28659
|
+
const viewWidth = this.width || 1;
|
|
28660
|
+
const scaleX = Math.abs(this._scene.scaleX) || 1;
|
|
28661
|
+
const scaleY = Math.abs(this._scene.scaleY) || 1;
|
|
28662
|
+
const rawOffsetX = evt.deltaX / scaleX;
|
|
28663
|
+
const rawOffsetY = evt.deltaY / scaleY;
|
|
28664
|
+
offsetX = viewWidth / allWidth * rawOffsetX;
|
|
28226
28665
|
const allHeight = this._scene.height;
|
|
28227
28666
|
const viewHeight = this.height || 1;
|
|
28228
|
-
if (evt.shiftKey) offsetX = viewHeight / allHeight * evt.deltaY * MOUSE_WHEEL_SPEED_SMOOTHING_FACTOR;
|
|
28229
|
-
else
|
|
28667
|
+
if (evt.shiftKey) offsetX = viewHeight / allHeight * evt.deltaY * MOUSE_WHEEL_SPEED_SMOOTHING_FACTOR / scaleX;
|
|
28668
|
+
else {
|
|
28669
|
+
offsetY = viewHeight / allHeight * rawOffsetY;
|
|
28670
|
+
const absOffsetX = Math.abs(rawOffsetX);
|
|
28671
|
+
const absOffsetY = Math.abs(rawOffsetY);
|
|
28672
|
+
if (absOffsetY >= absOffsetX * WHEEL_CROSS_AXIS_LOCK_RATIO) offsetX = 0;
|
|
28673
|
+
else if (absOffsetX >= absOffsetY * WHEEL_CROSS_AXIS_LOCK_RATIO) offsetY = 0;
|
|
28674
|
+
}
|
|
28230
28675
|
const isLimitedStore = this.scrollByBarDeltaValue({
|
|
28231
28676
|
x: offsetX,
|
|
28232
28677
|
y: offsetY
|
|
@@ -28553,6 +28998,7 @@ var Viewport = class {
|
|
|
28553
28998
|
}
|
|
28554
28999
|
_calcDiffCacheBound(prevBound, currBound) {
|
|
28555
29000
|
if (!prevBound) return [currBound];
|
|
29001
|
+
if (prevBound.right <= currBound.left || currBound.right <= prevBound.left || prevBound.bottom <= currBound.top || currBound.bottom <= prevBound.top) return [currBound];
|
|
28556
29002
|
const additionalAreas = [];
|
|
28557
29003
|
if (currBound.left < prevBound.left) additionalAreas.push({
|
|
28558
29004
|
top: currBound.top,
|
|
@@ -28809,6 +29255,7 @@ exports.getCurrentTypeOfRenderer = getCurrentTypeOfRenderer;
|
|
|
28809
29255
|
exports.getDPI = getDPI;
|
|
28810
29256
|
exports.getDevicePixelRatio = getDevicePixelRatio;
|
|
28811
29257
|
exports.getDocsSkeletonPageSize = getDocsSkeletonPageSize;
|
|
29258
|
+
exports.getDocsTableRenderViewport = getDocsTableRenderViewport;
|
|
28812
29259
|
exports.getDrawingGroupState = getDrawingGroupState;
|
|
28813
29260
|
exports.getFirstGrapheme = getFirstGrapheme;
|
|
28814
29261
|
exports.getFontStyleString = getFontStyleString;
|
|
@@ -28818,6 +29265,7 @@ exports.getLastLine = getLastLine;
|
|
|
28818
29265
|
exports.getLineOffset = getLineOffset;
|
|
28819
29266
|
exports.getLineWidth = getLineWidth;
|
|
28820
29267
|
exports.getLineWith = getLineWith;
|
|
29268
|
+
exports.getNextWheelZoomRatio = getNextWheelZoomRatio;
|
|
28821
29269
|
exports.getNumberUnitValue = getNumberUnitValue;
|
|
28822
29270
|
exports.getOffsetRectForDom = getOffsetRectForDom;
|
|
28823
29271
|
exports.getPageFromPath = getPageFromPath;
|
|
@@ -28845,6 +29293,7 @@ exports.hasLatinExtendedB = hasLatinExtendedB;
|
|
|
28845
29293
|
exports.hasLatinOneSupplement = hasLatinOneSupplement;
|
|
28846
29294
|
exports.hasListGlyph = hasListGlyph;
|
|
28847
29295
|
exports.hasSpace = hasSpace;
|
|
29296
|
+
exports.hasThai = hasThai;
|
|
28848
29297
|
exports.hasTibetan = hasTibetan;
|
|
28849
29298
|
exports.hasUnMergedCellInRow = hasUnMergedCellInRow;
|
|
28850
29299
|
exports.inViewRanges = inViewRanges;
|
|
@@ -28883,6 +29332,7 @@ exports.renderTextWatermark = renderTextWatermark;
|
|
|
28883
29332
|
exports.renderUserInfoWatermark = renderUserInfoWatermark;
|
|
28884
29333
|
exports.renderWatermark = renderWatermark;
|
|
28885
29334
|
exports.requestNewFrame = requestNewFrame;
|
|
29335
|
+
exports.setDocsTableRenderViewportProvider = setDocsTableRenderViewportProvider;
|
|
28886
29336
|
exports.setLineType = setLineType;
|
|
28887
29337
|
exports.sheetContentViewportKeys = sheetContentViewportKeys;
|
|
28888
29338
|
exports.sheetHeaderViewportKeys = sheetHeaderViewportKeys;
|