@dt-frames/ui 1.0.32 → 1.0.34
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/es/assets/locales/en.json +93 -93
- package/es/assets/locales/zh.json +3 -2
- package/es/components/index.d.ts +1 -2
- package/es/components/table/src/components/TableActions.d.ts +1 -1
- package/es/components/table/src/components/setting/Download.d.ts +1 -1
- package/es/components/table/src/index.d.ts +10 -10
- package/es/index.js +190 -862
- package/es/style/assets/style/index.less +10 -0
- package/es/style/assets/style/reset.less +17 -0
- package/es/style/components/container/index.less +85 -0
- package/es/style/components/forms/index.less +107 -0
- package/es/style/components/icons/index.less +108 -0
- package/es/style/components/iframe/index.less +3 -0
- package/es/style/components/iframe/src/index.less +3 -0
- package/es/style/components/modal/index.less +60 -0
- package/es/style/components/table/index.less +217 -0
- package/es/style/components/tree/index.less +53 -0
- package/es/style/theme/footer/index.less +16 -0
- package/es/style/theme/header/index.less +451 -0
- package/es/style/theme/header/set-theme.less +68 -0
- package/es/style/theme/sider/index.less +212 -0
- package/es/style/theme/tabs/index.less +165 -0
- package/es/style/theme/theme.less +73 -0
- package/es/style/theme/transition.less +105 -0
- package/es/theme/content/index.d.ts +44 -0
- package/es/theme/header/components/setting-theme.d.ts +2604 -0
- package/es/theme/header/components/user-info.d.ts +8318 -0
- package/es/theme/sider/components/basic-menu/basic-menu.d.ts +1 -1
- package/es/theme/tabs/components/TabContent.d.ts +1 -1
- package/es/theme/tabs/components/TabRedo.d.ts +64 -0
- package/es/theme/tabs/index.d.ts +1429 -0
- package/package.json +2 -1
package/es/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { defineComponent, resolveComponent, openBlock, createBlock, computed, unref, createElementBlock, normalizeClass, normalizeStyle, createElementVNode, ref, watch, Fragment, renderList, createTextVNode, toDisplayString, KeepAlive, createVNode, withCtx, reactive, toRaw, getCurrentInstance, watchEffect, nextTick, toRefs, isVNode, inject, onUnmounted, h, provide, onMounted, onBeforeUnmount, resolveDynamicComponent, renderSlot, createCommentVNode, mergeProps, readonly, isRef, useAttrs as useAttrs$1, normalizeProps, guardReactiveProps, withDirectives, resolveDirective, render, withKeys, createSlots, useSlots as useSlots$1, withModifiers, vShow, toRef, Transition } from "vue";
|
|
2
2
|
import { isString, isArray as isArray$1, isObject, isFunction, useI18n, error, useTimeoutFn, useAttrs, useSlots, dispatchResize, BAR_MAP, off, renderThumbStyle, on, useAppStore, addResizeListener, removeResizeListener, windowResizeFn, useHeader, isNumber, useApp, isBoolean, isNull, DtCache, CacheKey, deepMerge, http, getDynamicProps, getDictValueByCode, formatNumber, isVnode, getPopupContainer, isNullAndUnDef, useMessage, isEmpty, useTheme, useMenu, useGo, Pages, localeList, changeLocale, Theme, MenuMode, MenuType, useThemeStore, ContentMode, useMultipleTab, copyText, MenuSplitTye, isUrl, openWindow, RouteReuseStore, menuList2Map } from "@dt-frames/core";
|
|
3
|
-
import { InputSearch, Tooltip, Modal as Modal$1, RadioGroup, RadioButton, InputGroup, Input, Button, Select, TreeSelect, Radio, Checkbox, AutoComplete, Cascader, DatePicker, InputNumber, Switch, TimePicker, Slider, Rate, Divider, Col, Form, FormItem, Row, Popover, Spin, Dropdown, Menu, MenuItem, CheckboxGroup, Table,
|
|
3
|
+
import { InputSearch, Tooltip, Modal as Modal$1, RadioGroup, RadioButton, InputGroup, Input, Button, Select, TreeSelect, Radio, Checkbox, AutoComplete, Cascader, DatePicker, InputNumber, Switch, TimePicker, Slider, Rate, Divider, Col, Form, FormItem, Row, Popover, Spin, Dropdown, Menu, MenuItem, CheckboxGroup, Table, MenuDivider, Tree, Empty, BackTop, Breadcrumb, Avatar, Drawer, SubMenu, LayoutHeader, LayoutSider, Tabs, TabPane, LayoutFooter, LayoutContent, ConfigProvider, Layout } from "ant-design-vue";
|
|
4
4
|
import { isEqual, omit, cloneDeep, upperFirst, set, uniqBy, difference, get, trim } from "lodash-es";
|
|
5
5
|
import { tryOnUnmounted, isFunction as isFunction$1, useDebounceFn, useFullscreen, useThrottleFn } from "@vueuse/core";
|
|
6
6
|
import dayjs from "dayjs";
|
|
@@ -15,15 +15,15 @@ var _export_sfc = (sfc, props) => {
|
|
|
15
15
|
}
|
|
16
16
|
return target;
|
|
17
17
|
};
|
|
18
|
-
const _sfc_main$
|
|
18
|
+
const _sfc_main$Y = defineComponent({
|
|
19
19
|
name: "dt-base-router"
|
|
20
20
|
});
|
|
21
21
|
function _sfc_render$8(_ctx, _cache, $props, $setup, $data, $options) {
|
|
22
22
|
const _component_router_view = resolveComponent("router-view");
|
|
23
23
|
return openBlock(), createBlock(_component_router_view);
|
|
24
24
|
}
|
|
25
|
-
var DtBaseRouter = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
26
|
-
const _sfc_main$
|
|
25
|
+
var DtBaseRouter = /* @__PURE__ */ _export_sfc(_sfc_main$Y, [["render", _sfc_render$8]]);
|
|
26
|
+
const _sfc_main$X = defineComponent({
|
|
27
27
|
props: {
|
|
28
28
|
iconClass: {
|
|
29
29
|
type: String,
|
|
@@ -91,7 +91,7 @@ const _sfc_main$Y = defineComponent({
|
|
|
91
91
|
};
|
|
92
92
|
}
|
|
93
93
|
});
|
|
94
|
-
const _hoisted_1$
|
|
94
|
+
const _hoisted_1$u = ["xlink:href", "fill"];
|
|
95
95
|
function _sfc_render$7(_ctx, _cache, $props, $setup, $data, $options) {
|
|
96
96
|
return _ctx.isSvgIcon ? (openBlock(), createElementBlock("svg", {
|
|
97
97
|
key: 0,
|
|
@@ -106,7 +106,7 @@ function _sfc_render$7(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
106
106
|
createElementVNode("use", {
|
|
107
107
|
"xlink:href": _ctx.iconName,
|
|
108
108
|
fill: _ctx.color
|
|
109
|
-
}, null, 8, _hoisted_1$
|
|
109
|
+
}, null, 8, _hoisted_1$u)
|
|
110
110
|
], 6)) : (openBlock(), createElementBlock("i", {
|
|
111
111
|
key: 1,
|
|
112
112
|
class: normalizeClass(["dt-icon i", [_ctx.iconName, _ctx.clsName]]),
|
|
@@ -116,7 +116,7 @@ function _sfc_render$7(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
116
116
|
})
|
|
117
117
|
}, null, 6));
|
|
118
118
|
}
|
|
119
|
-
var DtIcon = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
119
|
+
var DtIcon = /* @__PURE__ */ _export_sfc(_sfc_main$X, [["render", _sfc_render$7]]);
|
|
120
120
|
const Actions = [
|
|
121
121
|
"ic:baseline-save",
|
|
122
122
|
"ic:baseline-save-all",
|
|
@@ -1027,7 +1027,7 @@ const Edit = [
|
|
|
1027
1027
|
"mdi:view-sequential",
|
|
1028
1028
|
"mdi:view-split-vertical"
|
|
1029
1029
|
];
|
|
1030
|
-
const File
|
|
1030
|
+
const File = [
|
|
1031
1031
|
"ic:baseline-approval",
|
|
1032
1032
|
"ic:baseline-attach-email",
|
|
1033
1033
|
"ic:baseline-cloud",
|
|
@@ -1848,7 +1848,7 @@ const Icons = [
|
|
|
1848
1848
|
},
|
|
1849
1849
|
{
|
|
1850
1850
|
type: "\u6587\u4EF6",
|
|
1851
|
-
children: File
|
|
1851
|
+
children: File
|
|
1852
1852
|
},
|
|
1853
1853
|
{
|
|
1854
1854
|
type: "\u6570\u5B66",
|
|
@@ -1875,9 +1875,9 @@ const Icons = [
|
|
|
1875
1875
|
children: Other
|
|
1876
1876
|
}
|
|
1877
1877
|
];
|
|
1878
|
-
const _hoisted_1$
|
|
1879
|
-
const _hoisted_2$
|
|
1880
|
-
const _sfc_main$
|
|
1878
|
+
const _hoisted_1$t = ["onClick"];
|
|
1879
|
+
const _hoisted_2$g = ["onClick"];
|
|
1880
|
+
const _sfc_main$W = /* @__PURE__ */ defineComponent({
|
|
1881
1881
|
__name: "pick-icon",
|
|
1882
1882
|
emits: ["chooseIcon"],
|
|
1883
1883
|
setup(__props, { emit: emits }) {
|
|
@@ -1935,17 +1935,17 @@ const _sfc_main$X = /* @__PURE__ */ defineComponent({
|
|
|
1935
1935
|
createElementVNode("div", {
|
|
1936
1936
|
class: normalizeClass(`${clsPrefix}__menus`)
|
|
1937
1937
|
}, [
|
|
1938
|
-
(openBlock(true), createElementBlock(Fragment, null, renderList(unref(iconMenus), (menu,
|
|
1938
|
+
(openBlock(true), createElementBlock(Fragment, null, renderList(unref(iconMenus), (menu, index2) => {
|
|
1939
1939
|
return openBlock(), createElementBlock("div", {
|
|
1940
1940
|
key: menu.type,
|
|
1941
|
-
class: normalizeClass(["menu", { "active": activeIndex.value ===
|
|
1942
|
-
onClick: ($event) => activeIndex.value =
|
|
1941
|
+
class: normalizeClass(["menu", { "active": activeIndex.value === index2 }]),
|
|
1942
|
+
onClick: ($event) => activeIndex.value = index2
|
|
1943
1943
|
}, [
|
|
1944
1944
|
createElementVNode("p", null, [
|
|
1945
1945
|
createTextVNode(toDisplayString(menu.type), 1),
|
|
1946
1946
|
createElementVNode("span", null, "(" + toDisplayString(menu.total) + ")", 1)
|
|
1947
1947
|
])
|
|
1948
|
-
], 10, _hoisted_1$
|
|
1948
|
+
], 10, _hoisted_1$t);
|
|
1949
1949
|
}), 128))
|
|
1950
1950
|
], 2),
|
|
1951
1951
|
createElementVNode("div", {
|
|
@@ -1982,7 +1982,7 @@ const _sfc_main$X = /* @__PURE__ */ defineComponent({
|
|
|
1982
1982
|
]),
|
|
1983
1983
|
_: 2
|
|
1984
1984
|
}, 1024)
|
|
1985
|
-
], 10, _hoisted_2$
|
|
1985
|
+
], 10, _hoisted_2$g);
|
|
1986
1986
|
}), 128))
|
|
1987
1987
|
], 2)
|
|
1988
1988
|
], 1024))
|
|
@@ -2379,8 +2379,8 @@ var Bar = defineComponent({
|
|
|
2379
2379
|
}));
|
|
2380
2380
|
}
|
|
2381
2381
|
});
|
|
2382
|
-
const _hoisted_1$
|
|
2383
|
-
const _sfc_main$
|
|
2382
|
+
const _hoisted_1$s = { class: "scrollbar" };
|
|
2383
|
+
const _sfc_main$V = /* @__PURE__ */ defineComponent({
|
|
2384
2384
|
__name: "scroll-bar",
|
|
2385
2385
|
props: {
|
|
2386
2386
|
wrapClass: {
|
|
@@ -2457,7 +2457,7 @@ const _sfc_main$W = /* @__PURE__ */ defineComponent({
|
|
|
2457
2457
|
}
|
|
2458
2458
|
});
|
|
2459
2459
|
return (_ctx, _cache) => {
|
|
2460
|
-
return openBlock(), createElementBlock("div", _hoisted_1$
|
|
2460
|
+
return openBlock(), createElementBlock("div", _hoisted_1$s, [
|
|
2461
2461
|
createElementVNode("div", {
|
|
2462
2462
|
ref_key: "wrap",
|
|
2463
2463
|
ref: wrap,
|
|
@@ -2492,12 +2492,12 @@ const _sfc_main$W = /* @__PURE__ */ defineComponent({
|
|
|
2492
2492
|
};
|
|
2493
2493
|
}
|
|
2494
2494
|
});
|
|
2495
|
-
const _sfc_main$
|
|
2495
|
+
const _sfc_main$U = /* @__PURE__ */ defineComponent({
|
|
2496
2496
|
__name: "scroll-container",
|
|
2497
2497
|
setup(__props) {
|
|
2498
2498
|
const scrollbarRef = ref(null);
|
|
2499
2499
|
return (_ctx, _cache) => {
|
|
2500
|
-
return openBlock(), createBlock(_sfc_main$
|
|
2500
|
+
return openBlock(), createBlock(_sfc_main$V, mergeProps({
|
|
2501
2501
|
ref_key: "scrollbarRef",
|
|
2502
2502
|
ref: scrollbarRef,
|
|
2503
2503
|
class: "scroll-container"
|
|
@@ -2510,7 +2510,7 @@ const _sfc_main$V = /* @__PURE__ */ defineComponent({
|
|
|
2510
2510
|
};
|
|
2511
2511
|
}
|
|
2512
2512
|
});
|
|
2513
|
-
const _sfc_main$
|
|
2513
|
+
const _sfc_main$T = /* @__PURE__ */ defineComponent({
|
|
2514
2514
|
__name: "modal-wrap",
|
|
2515
2515
|
props: {
|
|
2516
2516
|
loading: { type: Boolean },
|
|
@@ -2598,7 +2598,7 @@ const _sfc_main$U = /* @__PURE__ */ defineComponent({
|
|
|
2598
2598
|
}
|
|
2599
2599
|
});
|
|
2600
2600
|
return (_ctx, _cache) => {
|
|
2601
|
-
return openBlock(), createBlock(unref(_sfc_main$
|
|
2601
|
+
return openBlock(), createBlock(unref(_sfc_main$U), {
|
|
2602
2602
|
ref_key: "wrapperRef",
|
|
2603
2603
|
ref: wrapperRef
|
|
2604
2604
|
}, {
|
|
@@ -2686,7 +2686,7 @@ function useFormValue(props, key = "value", changeEvent = "change", emitData) {
|
|
|
2686
2686
|
});
|
|
2687
2687
|
return [state, setState, defaultState];
|
|
2688
2688
|
}
|
|
2689
|
-
const _sfc_main$
|
|
2689
|
+
const _sfc_main$S = defineComponent({
|
|
2690
2690
|
name: "radio-button",
|
|
2691
2691
|
props: {
|
|
2692
2692
|
value: {
|
|
@@ -2744,8 +2744,8 @@ function _sfc_render$6(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
2744
2744
|
_: 1
|
|
2745
2745
|
}, 16, ["value"]);
|
|
2746
2746
|
}
|
|
2747
|
-
var RadioButtonGroup = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
2748
|
-
const _sfc_main$
|
|
2747
|
+
var RadioButtonGroup = /* @__PURE__ */ _export_sfc(_sfc_main$S, [["render", _sfc_render$6]]);
|
|
2748
|
+
const _sfc_main$R = /* @__PURE__ */ defineComponent({
|
|
2749
2749
|
__name: "formIcon",
|
|
2750
2750
|
props: {
|
|
2751
2751
|
value: String,
|
|
@@ -2802,9 +2802,9 @@ const _sfc_main$S = /* @__PURE__ */ defineComponent({
|
|
|
2802
2802
|
]),
|
|
2803
2803
|
_: 1
|
|
2804
2804
|
}, 8, ["class"]),
|
|
2805
|
-
createVNode(unref(_sfc_main$
|
|
2805
|
+
createVNode(unref(_sfc_main$K), { onRegister: unref(register) }, {
|
|
2806
2806
|
default: withCtx(() => [
|
|
2807
|
-
createVNode(unref(_sfc_main$
|
|
2807
|
+
createVNode(unref(_sfc_main$W), {
|
|
2808
2808
|
onChooseIcon: _cache[2] || (_cache[2] = ($event) => chooseIcon($event))
|
|
2809
2809
|
})
|
|
2810
2810
|
]),
|
|
@@ -2814,8 +2814,8 @@ const _sfc_main$S = /* @__PURE__ */ defineComponent({
|
|
|
2814
2814
|
};
|
|
2815
2815
|
}
|
|
2816
2816
|
});
|
|
2817
|
-
const _hoisted_1$
|
|
2818
|
-
const _sfc_main$
|
|
2817
|
+
const _hoisted_1$r = { class: "input-with-dialog" };
|
|
2818
|
+
const _sfc_main$Q = /* @__PURE__ */ defineComponent({
|
|
2819
2819
|
__name: "formInputUseDialog",
|
|
2820
2820
|
setup(__props) {
|
|
2821
2821
|
const { t } = useI18n("UI");
|
|
@@ -2842,7 +2842,7 @@ const _sfc_main$R = /* @__PURE__ */ defineComponent({
|
|
|
2842
2842
|
}
|
|
2843
2843
|
return (_ctx, _cache) => {
|
|
2844
2844
|
var _a, _b, _c;
|
|
2845
|
-
return openBlock(), createElementBlock("div", _hoisted_1$
|
|
2845
|
+
return openBlock(), createElementBlock("div", _hoisted_1$r, [
|
|
2846
2846
|
createElementVNode("div", { onClick: onClickInput }, [
|
|
2847
2847
|
createVNode(unref(Input), normalizeProps(guardReactiveProps(unref(bindProps))), null, 16)
|
|
2848
2848
|
]),
|
|
@@ -2857,7 +2857,7 @@ const _sfc_main$R = /* @__PURE__ */ defineComponent({
|
|
|
2857
2857
|
});
|
|
2858
2858
|
const components = {
|
|
2859
2859
|
Input,
|
|
2860
|
-
InputWithDialog: _sfc_main$
|
|
2860
|
+
InputWithDialog: _sfc_main$Q,
|
|
2861
2861
|
InputTextArea: Input.TextArea,
|
|
2862
2862
|
InputSearch: Input.Search,
|
|
2863
2863
|
InputGroup: Input.Group,
|
|
@@ -2881,7 +2881,7 @@ const components = {
|
|
|
2881
2881
|
Slider,
|
|
2882
2882
|
Rate,
|
|
2883
2883
|
Divider,
|
|
2884
|
-
Icon: _sfc_main$
|
|
2884
|
+
Icon: _sfc_main$R
|
|
2885
2885
|
};
|
|
2886
2886
|
const componentMap$1 = /* @__PURE__ */ new Map();
|
|
2887
2887
|
for (let item in components) {
|
|
@@ -2992,7 +2992,7 @@ const FormItemProps = {
|
|
|
2992
2992
|
function _isSlot(s) {
|
|
2993
2993
|
return typeof s === "function" || Object.prototype.toString.call(s) === "[object Object]" && !isVNode(s);
|
|
2994
2994
|
}
|
|
2995
|
-
var _sfc_main$
|
|
2995
|
+
var _sfc_main$P = defineComponent({
|
|
2996
2996
|
name: "FormItem",
|
|
2997
2997
|
inheritAttrs: false,
|
|
2998
2998
|
props: FormItemProps,
|
|
@@ -3095,7 +3095,6 @@ var _sfc_main$Q = defineComponent({
|
|
|
3095
3095
|
let value = unref(getValues);
|
|
3096
3096
|
let _con = slot ? getSlot(slots, slot, value) : render2 ? render2(value) : renderFormItem();
|
|
3097
3097
|
return component === "InputGroup" || component === "Icon" ? createVNode(FormItem, {
|
|
3098
|
-
"rules": handleRules(),
|
|
3099
3098
|
"class": "M0"
|
|
3100
3099
|
}, _isSlot(_con) ? _con : {
|
|
3101
3100
|
default: () => [_con]
|
|
@@ -3260,11 +3259,11 @@ var _sfc_main$Q = defineComponent({
|
|
|
3260
3259
|
}
|
|
3261
3260
|
return Promise.resolve();
|
|
3262
3261
|
}
|
|
3263
|
-
if (
|
|
3264
|
-
rules = [{
|
|
3262
|
+
if (!rules || !rules.length) {
|
|
3263
|
+
rules = getRequired ? [{
|
|
3265
3264
|
required: getRequired,
|
|
3266
3265
|
validator
|
|
3267
|
-
}];
|
|
3266
|
+
}] : [];
|
|
3268
3267
|
}
|
|
3269
3268
|
const requiredIndex = rules.findIndex((rule) => Reflect.has(rule, "required") && !Reflect.has(rule, "validator"));
|
|
3270
3269
|
if (requiredIndex !== -1) {
|
|
@@ -3370,7 +3369,7 @@ function initDirectives() {
|
|
|
3370
3369
|
}
|
|
3371
3370
|
};
|
|
3372
3371
|
}
|
|
3373
|
-
const _sfc_main$
|
|
3372
|
+
const _sfc_main$O = defineComponent({
|
|
3374
3373
|
name: "form-buttons",
|
|
3375
3374
|
props: {
|
|
3376
3375
|
mode: {
|
|
@@ -3460,11 +3459,11 @@ const _sfc_main$P = defineComponent({
|
|
|
3460
3459
|
};
|
|
3461
3460
|
}
|
|
3462
3461
|
});
|
|
3463
|
-
const _hoisted_1$
|
|
3462
|
+
const _hoisted_1$q = {
|
|
3464
3463
|
key: 0,
|
|
3465
3464
|
className: "preIcon"
|
|
3466
3465
|
};
|
|
3467
|
-
const _hoisted_2$
|
|
3466
|
+
const _hoisted_2$f = {
|
|
3468
3467
|
key: 0,
|
|
3469
3468
|
className: "preIcon"
|
|
3470
3469
|
};
|
|
@@ -3496,13 +3495,13 @@ function _sfc_render$5(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
3496
3495
|
onClick: ($event) => _ctx.handleBtnClick(button)
|
|
3497
3496
|
}, {
|
|
3498
3497
|
icon: withCtx(() => [
|
|
3499
|
-
button.preIcon ? withDirectives((openBlock(), createElementBlock("span", _hoisted_1$
|
|
3498
|
+
button.preIcon ? withDirectives((openBlock(), createElementBlock("span", _hoisted_1$q, null, 512)), [
|
|
3500
3499
|
[_directive_icon, button.preIcon]
|
|
3501
3500
|
]) : createCommentVNode("", true)
|
|
3502
3501
|
]),
|
|
3503
3502
|
default: withCtx(() => [
|
|
3504
3503
|
createTextVNode(" " + toDisplayString(_ctx.t(button.name)) + " ", 1),
|
|
3505
|
-
button.postIcon ? withDirectives((openBlock(), createElementBlock("span", _hoisted_2$
|
|
3504
|
+
button.postIcon ? withDirectives((openBlock(), createElementBlock("span", _hoisted_2$f, null, 512)), [
|
|
3506
3505
|
[_directive_icon, button.postIcon]
|
|
3507
3506
|
]) : createCommentVNode("", true)
|
|
3508
3507
|
]),
|
|
@@ -3538,7 +3537,7 @@ function _sfc_render$5(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
3538
3537
|
_: 1
|
|
3539
3538
|
}, 16)) : createCommentVNode("", true);
|
|
3540
3539
|
}
|
|
3541
|
-
var FormButtons = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
3540
|
+
var FormButtons = /* @__PURE__ */ _export_sfc(_sfc_main$O, [["render", _sfc_render$5]]);
|
|
3542
3541
|
const isArray = Array.isArray;
|
|
3543
3542
|
function useFormValues({
|
|
3544
3543
|
defaultValue,
|
|
@@ -3558,7 +3557,7 @@ function useFormValues({
|
|
|
3558
3557
|
if (SINGLE_DATA_TYPE.includes(schema == null ? void 0 : schema.component)) {
|
|
3559
3558
|
value = dayjs(value).valueOf();
|
|
3560
3559
|
} else if (MULTIFY_DATA_TYPE.includes(schema == null ? void 0 : schema.component)) {
|
|
3561
|
-
value = value.map((item) => dayjs(item).valueOf());
|
|
3560
|
+
value = (value || []).map((item) => dayjs(item).valueOf());
|
|
3562
3561
|
}
|
|
3563
3562
|
if (isString(value)) {
|
|
3564
3563
|
value = value.trim();
|
|
@@ -3596,9 +3595,9 @@ function useFormValues({
|
|
|
3596
3595
|
}
|
|
3597
3596
|
} else {
|
|
3598
3597
|
if (names.length > 1) {
|
|
3599
|
-
names.forEach((key,
|
|
3600
|
-
obj[key] = defaultValue2[
|
|
3601
|
-
formModel[key] = defaultValue2[
|
|
3598
|
+
names.forEach((key, index2) => {
|
|
3599
|
+
obj[key] = defaultValue2[index2];
|
|
3600
|
+
formModel[key] = defaultValue2[index2];
|
|
3602
3601
|
});
|
|
3603
3602
|
} else {
|
|
3604
3603
|
obj[names[0]] = defaultValue2;
|
|
@@ -3608,7 +3607,7 @@ function useFormValues({
|
|
|
3608
3607
|
} else {
|
|
3609
3608
|
if (!names)
|
|
3610
3609
|
return;
|
|
3611
|
-
names.forEach((key,
|
|
3610
|
+
names.forEach((key, index2) => {
|
|
3612
3611
|
let defaultV = null;
|
|
3613
3612
|
if (component === "TreeSelect" && (mode === "multiple" || treeCheckable) || component === "Select" && mode === "multiple") {
|
|
3614
3613
|
defaultV = [];
|
|
@@ -3785,10 +3784,10 @@ function useFormEvents({
|
|
|
3785
3784
|
schemaRef.value = schemaList;
|
|
3786
3785
|
}
|
|
3787
3786
|
function _removeSchemaByName(name, schemaList) {
|
|
3788
|
-
const
|
|
3789
|
-
if (
|
|
3787
|
+
const index2 = schemaList.findIndex((schema) => schema.name === name);
|
|
3788
|
+
if (index2 !== -1) {
|
|
3790
3789
|
delete formModel[name];
|
|
3791
|
-
schemaList.splice(
|
|
3790
|
+
schemaList.splice(index2, 1);
|
|
3792
3791
|
}
|
|
3793
3792
|
}
|
|
3794
3793
|
function setFormValues(values) {
|
|
@@ -3833,14 +3832,14 @@ function useFormEvents({
|
|
|
3833
3832
|
}
|
|
3834
3833
|
function appendFormItems(schema, prefixName, first = false) {
|
|
3835
3834
|
const schemaList = cloneDeep(unref(getSchema));
|
|
3836
|
-
const
|
|
3837
|
-
if (!prefixName ||
|
|
3835
|
+
const index2 = schemaList.findIndex((schema2) => schema2.name === prefixName);
|
|
3836
|
+
if (!prefixName || index2 === -1 || first) {
|
|
3838
3837
|
first ? schemaList.unshift(schema) : schemaList.push(schema);
|
|
3839
3838
|
schemaRef.value = schemaList;
|
|
3840
3839
|
return;
|
|
3841
3840
|
}
|
|
3842
|
-
if (
|
|
3843
|
-
schemaList.splice(
|
|
3841
|
+
if (index2 !== -1) {
|
|
3842
|
+
schemaList.splice(index2 + 1, 0, schema);
|
|
3844
3843
|
}
|
|
3845
3844
|
schemaRef.value = schemaList;
|
|
3846
3845
|
}
|
|
@@ -3882,8 +3881,8 @@ function useFormActions(opt) {
|
|
|
3882
3881
|
function handleAdvanced(isAdvanced) {
|
|
3883
3882
|
var _a;
|
|
3884
3883
|
const { schemas, minShowColumn = ((_a = appConf.ui.form) == null ? void 0 : _a.minShowColumn) || 2 } = unref(getProps);
|
|
3885
|
-
let schema = schemas.reduce((t, it,
|
|
3886
|
-
if (
|
|
3884
|
+
let schema = schemas.reduce((t, it, index2) => {
|
|
3885
|
+
if (index2 > minShowColumn - 1)
|
|
3887
3886
|
it.isAdvanced = isAdvanced;
|
|
3888
3887
|
t.push(it);
|
|
3889
3888
|
return t;
|
|
@@ -3905,12 +3904,12 @@ function useFormActions(opt) {
|
|
|
3905
3904
|
}
|
|
3906
3905
|
return [handleMethod];
|
|
3907
3906
|
}
|
|
3908
|
-
const _sfc_main$
|
|
3907
|
+
const _sfc_main$N = defineComponent({
|
|
3909
3908
|
name: "dt-form",
|
|
3910
3909
|
components: {
|
|
3911
3910
|
Form,
|
|
3912
3911
|
Row,
|
|
3913
|
-
FormItem: _sfc_main$
|
|
3912
|
+
FormItem: _sfc_main$P,
|
|
3914
3913
|
FormButtons
|
|
3915
3914
|
},
|
|
3916
3915
|
props: BasicProps$1,
|
|
@@ -4146,7 +4145,7 @@ function _sfc_render$4(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
4146
4145
|
_: 3
|
|
4147
4146
|
}, 16, ["class", "model", "layout", "onKeypress"]);
|
|
4148
4147
|
}
|
|
4149
|
-
var DtForm = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
4148
|
+
var DtForm = /* @__PURE__ */ _export_sfc(_sfc_main$N, [["render", _sfc_render$4]]);
|
|
4150
4149
|
function useForm(props) {
|
|
4151
4150
|
const formRef = ref(null);
|
|
4152
4151
|
const loadedRef = ref(false);
|
|
@@ -4219,7 +4218,7 @@ function useForm(props) {
|
|
|
4219
4218
|
};
|
|
4220
4219
|
return [registerForm, methods];
|
|
4221
4220
|
}
|
|
4222
|
-
const _sfc_main$
|
|
4221
|
+
const _sfc_main$M = /* @__PURE__ */ defineComponent({
|
|
4223
4222
|
__name: "modalFooter",
|
|
4224
4223
|
props: {
|
|
4225
4224
|
buttons: Object,
|
|
@@ -4266,7 +4265,7 @@ const _sfc_main$N = /* @__PURE__ */ defineComponent({
|
|
|
4266
4265
|
};
|
|
4267
4266
|
}
|
|
4268
4267
|
});
|
|
4269
|
-
const _sfc_main$
|
|
4268
|
+
const _sfc_main$L = /* @__PURE__ */ defineComponent({
|
|
4270
4269
|
__name: "close-icon",
|
|
4271
4270
|
props: {
|
|
4272
4271
|
canFullscreen: { type: Boolean, default: true },
|
|
@@ -4332,7 +4331,7 @@ const _sfc_main$M = /* @__PURE__ */ defineComponent({
|
|
|
4332
4331
|
};
|
|
4333
4332
|
}
|
|
4334
4333
|
});
|
|
4335
|
-
const _sfc_main$
|
|
4334
|
+
const _sfc_main$K = /* @__PURE__ */ defineComponent({
|
|
4336
4335
|
__name: "index",
|
|
4337
4336
|
props: basicProps$1,
|
|
4338
4337
|
emits: ["visible-change", "height-change", "cancel", "save", "register", "update:visible"],
|
|
@@ -4444,7 +4443,7 @@ const _sfc_main$L = /* @__PURE__ */ defineComponent({
|
|
|
4444
4443
|
return (_ctx, _cache) => {
|
|
4445
4444
|
return openBlock(), createBlock(unref(Modal), mergeProps(unref(getBindValue), { onCancel: handleCancel }), createSlots({
|
|
4446
4445
|
default: withCtx(() => [
|
|
4447
|
-
createVNode(_sfc_main$
|
|
4446
|
+
createVNode(_sfc_main$T, mergeProps({
|
|
4448
4447
|
useWrapper: unref(getBindValue).useWrapper,
|
|
4449
4448
|
footerOffset: _ctx.wrapperFooterOffset,
|
|
4450
4449
|
fullScreen: unref(fullScreenRef),
|
|
@@ -4471,7 +4470,7 @@ const _sfc_main$L = /* @__PURE__ */ defineComponent({
|
|
|
4471
4470
|
!_ctx.$slots.closeIcon ? {
|
|
4472
4471
|
name: "closeIcon",
|
|
4473
4472
|
fn: withCtx(() => [
|
|
4474
|
-
createVNode(_sfc_main$
|
|
4473
|
+
createVNode(_sfc_main$L, {
|
|
4475
4474
|
canFullscreen: unref(getBindValue).canFullscreen,
|
|
4476
4475
|
fullScreen: unref(fullScreenRef),
|
|
4477
4476
|
onCancel: handleCancel,
|
|
@@ -4488,7 +4487,7 @@ const _sfc_main$L = /* @__PURE__ */ defineComponent({
|
|
|
4488
4487
|
!_ctx.$slots.footer ? {
|
|
4489
4488
|
name: "footer",
|
|
4490
4489
|
fn: withCtx(() => [
|
|
4491
|
-
createVNode(_sfc_main$
|
|
4490
|
+
createVNode(_sfc_main$M, {
|
|
4492
4491
|
buttons: propsRef.value.footer,
|
|
4493
4492
|
showSave: unref(getBindValue).showSave,
|
|
4494
4493
|
onHandleSave: handleSave,
|
|
@@ -4553,7 +4552,7 @@ function createTableInstance(instance) {
|
|
|
4553
4552
|
function getTableInstance() {
|
|
4554
4553
|
return inject(tableKey);
|
|
4555
4554
|
}
|
|
4556
|
-
var _sfc_main$
|
|
4555
|
+
var _sfc_main$J = defineComponent({
|
|
4557
4556
|
name: "EditableCell",
|
|
4558
4557
|
components: {
|
|
4559
4558
|
Spin,
|
|
@@ -4620,14 +4619,14 @@ var _sfc_main$K = defineComponent({
|
|
|
4620
4619
|
const {
|
|
4621
4620
|
record,
|
|
4622
4621
|
column,
|
|
4623
|
-
index
|
|
4622
|
+
index: index2
|
|
4624
4623
|
} = props;
|
|
4625
4624
|
if (isFunction$1(compProps)) {
|
|
4626
4625
|
compProps = (_c = compProps({
|
|
4627
4626
|
text: val,
|
|
4628
4627
|
record,
|
|
4629
4628
|
column,
|
|
4630
|
-
index
|
|
4629
|
+
index: index2
|
|
4631
4630
|
})) != null ? _c : {};
|
|
4632
4631
|
}
|
|
4633
4632
|
return {
|
|
@@ -4707,11 +4706,11 @@ var _sfc_main$K = defineComponent({
|
|
|
4707
4706
|
};
|
|
4708
4707
|
}
|
|
4709
4708
|
});
|
|
4710
|
-
const _hoisted_1$
|
|
4709
|
+
const _hoisted_1$p = { class: "editable-cell" };
|
|
4711
4710
|
function _sfc_render$3(_ctx, _cache, $props, $setup, $data, $options) {
|
|
4712
4711
|
var _a;
|
|
4713
4712
|
const _component_CellComponent = resolveComponent("CellComponent");
|
|
4714
|
-
return openBlock(), createElementBlock("div", _hoisted_1$
|
|
4713
|
+
return openBlock(), createElementBlock("div", _hoisted_1$p, [
|
|
4715
4714
|
createVNode(_component_CellComponent, mergeProps({ ref: "elRef" }, _ctx.getComponentProps, {
|
|
4716
4715
|
component: (_a = _ctx.column) == null ? void 0 : _a.editComponent,
|
|
4717
4716
|
popoverVisible: _ctx.getRuleVisible,
|
|
@@ -4723,9 +4722,9 @@ function _sfc_render$3(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
4723
4722
|
}), null, 16, ["component", "popoverVisible", "rule", "ruleMessage", "class", "onChange", "onOptionsChange"])
|
|
4724
4723
|
]);
|
|
4725
4724
|
}
|
|
4726
|
-
var EditableCell = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
4725
|
+
var EditableCell = /* @__PURE__ */ _export_sfc(_sfc_main$J, [["render", _sfc_render$3]]);
|
|
4727
4726
|
function renderEditCell(column) {
|
|
4728
|
-
return ({ text: value, record, index }) => {
|
|
4727
|
+
return ({ text: value, record, index: index2 }) => {
|
|
4729
4728
|
record.onValid = async () => {
|
|
4730
4729
|
if (isArray$1(record == null ? void 0 : record.validCbs)) {
|
|
4731
4730
|
const validFns = ((record == null ? void 0 : record.validCbs) || []).map((fn) => fn());
|
|
@@ -4758,7 +4757,7 @@ function renderEditCell(column) {
|
|
|
4758
4757
|
value,
|
|
4759
4758
|
record,
|
|
4760
4759
|
column,
|
|
4761
|
-
index
|
|
4760
|
+
index: index2
|
|
4762
4761
|
});
|
|
4763
4762
|
};
|
|
4764
4763
|
}
|
|
@@ -4988,14 +4987,14 @@ const TableProps = {
|
|
|
4988
4987
|
}
|
|
4989
4988
|
};
|
|
4990
4989
|
function useRows(propsRef) {
|
|
4991
|
-
function getRowClassName(record,
|
|
4990
|
+
function getRowClassName(record, index2) {
|
|
4992
4991
|
const { striped, rowClassName } = unref(propsRef);
|
|
4993
4992
|
const classNames = [];
|
|
4994
4993
|
if (striped) {
|
|
4995
|
-
classNames.push(
|
|
4994
|
+
classNames.push(index2 % 2 === 1 ? "table-striped" : "");
|
|
4996
4995
|
}
|
|
4997
4996
|
if (rowClassName && isFunction(rowClassName)) {
|
|
4998
|
-
classNames.push(rowClassName(record,
|
|
4997
|
+
classNames.push(rowClassName(record, index2));
|
|
4999
4998
|
}
|
|
5000
4999
|
return classNames.join(" ");
|
|
5001
5000
|
}
|
|
@@ -5240,7 +5239,7 @@ function useRowSelection(propsRef, emit) {
|
|
|
5240
5239
|
setSelectedRowKeys
|
|
5241
5240
|
};
|
|
5242
5241
|
}
|
|
5243
|
-
var _sfc_main$
|
|
5242
|
+
var _sfc_main$I = defineComponent({
|
|
5244
5243
|
name: "TableFormat",
|
|
5245
5244
|
props: {
|
|
5246
5245
|
column: {
|
|
@@ -5255,12 +5254,19 @@ var _sfc_main$J = defineComponent({
|
|
|
5255
5254
|
},
|
|
5256
5255
|
setup(props) {
|
|
5257
5256
|
let renderText = ref();
|
|
5257
|
+
watch(() => props.record, (v) => {
|
|
5258
|
+
if (v)
|
|
5259
|
+
renderCell();
|
|
5260
|
+
}, {
|
|
5261
|
+
immediate: true,
|
|
5262
|
+
deep: true
|
|
5263
|
+
});
|
|
5258
5264
|
function renderCell() {
|
|
5259
5265
|
var _a;
|
|
5260
5266
|
const {
|
|
5261
5267
|
column,
|
|
5262
5268
|
record,
|
|
5263
|
-
index
|
|
5269
|
+
index: index2
|
|
5264
5270
|
} = props;
|
|
5265
5271
|
const {
|
|
5266
5272
|
render: render2,
|
|
@@ -5307,10 +5313,10 @@ var _sfc_main$J = defineComponent({
|
|
|
5307
5313
|
});
|
|
5308
5314
|
}
|
|
5309
5315
|
} else {
|
|
5310
|
-
renderText.value = text;
|
|
5316
|
+
renderText.value = unref(text);
|
|
5311
5317
|
}
|
|
5312
5318
|
if (isFunction(render2)) {
|
|
5313
|
-
let afterRenderData = render2(record,
|
|
5319
|
+
let afterRenderData = render2(record, index2, text);
|
|
5314
5320
|
if (afterRenderData.__v_isRef) {
|
|
5315
5321
|
renderText = afterRenderData;
|
|
5316
5322
|
} else {
|
|
@@ -5318,16 +5324,15 @@ var _sfc_main$J = defineComponent({
|
|
|
5318
5324
|
}
|
|
5319
5325
|
}
|
|
5320
5326
|
}
|
|
5321
|
-
renderCell();
|
|
5322
5327
|
return () => createVNode("span", null, [unref(renderText)]);
|
|
5323
5328
|
}
|
|
5324
5329
|
});
|
|
5325
|
-
const _hoisted_1$
|
|
5330
|
+
const _hoisted_1$o = {
|
|
5326
5331
|
key: 0,
|
|
5327
5332
|
class: "dt-table-action-btn"
|
|
5328
5333
|
};
|
|
5329
|
-
const _hoisted_2$
|
|
5330
|
-
const _sfc_main$
|
|
5334
|
+
const _hoisted_2$e = ["color", "onClick"];
|
|
5335
|
+
const _sfc_main$H = /* @__PURE__ */ defineComponent({
|
|
5331
5336
|
__name: "TableActions",
|
|
5332
5337
|
props: {
|
|
5333
5338
|
fixed: {
|
|
@@ -5389,7 +5394,7 @@ const _sfc_main$I = /* @__PURE__ */ defineComponent({
|
|
|
5389
5394
|
const _directive_auth = resolveDirective("auth");
|
|
5390
5395
|
return props.expand ? (openBlock(true), createElementBlock(Fragment, { key: 0 }, renderList(actionBtns.value, (item) => {
|
|
5391
5396
|
return openBlock(), createElementBlock(Fragment, null, [
|
|
5392
|
-
item.ifShow ? withDirectives((openBlock(), createElementBlock("span", _hoisted_1$
|
|
5397
|
+
item.ifShow ? withDirectives((openBlock(), createElementBlock("span", _hoisted_1$o, [
|
|
5393
5398
|
createVNode(unref(Tooltip), { placement: "bottom" }, {
|
|
5394
5399
|
title: withCtx(() => [
|
|
5395
5400
|
createTextVNode(toDisplayString(item.title), 1)
|
|
@@ -5398,7 +5403,7 @@ const _sfc_main$I = /* @__PURE__ */ defineComponent({
|
|
|
5398
5403
|
withDirectives(createElementVNode("span", {
|
|
5399
5404
|
color: item.color,
|
|
5400
5405
|
onClick: ($event) => handleAction(item)
|
|
5401
|
-
}, null, 8, _hoisted_2$
|
|
5406
|
+
}, null, 8, _hoisted_2$e), [
|
|
5402
5407
|
[_directive_icon, item.icon]
|
|
5403
5408
|
])
|
|
5404
5409
|
]),
|
|
@@ -5526,15 +5531,15 @@ function handleIndexColumn(propsRef, getPaginationRef, columns) {
|
|
|
5526
5531
|
width: 50,
|
|
5527
5532
|
title: t("NUMBER"),
|
|
5528
5533
|
align: "center",
|
|
5529
|
-
customRender: ({ index }) => {
|
|
5534
|
+
customRender: ({ index: index2 }) => {
|
|
5530
5535
|
const getPagination = unref(getPaginationRef);
|
|
5531
5536
|
const { appConf } = useAppStore();
|
|
5532
5537
|
const { defaultPageSize } = appConf.ui.table;
|
|
5533
5538
|
if (isBoolean(getPagination)) {
|
|
5534
|
-
return `${
|
|
5539
|
+
return `${index2 + 1}`;
|
|
5535
5540
|
}
|
|
5536
5541
|
const { current = 1, pageSize = defaultPageSize } = getPagination;
|
|
5537
|
-
return ((current < 1 ? 1 : current) - 1) * pageSize +
|
|
5542
|
+
return ((current < 1 ? 1 : current) - 1) * pageSize + index2 + 1;
|
|
5538
5543
|
},
|
|
5539
5544
|
...isFixedLeft ? {
|
|
5540
5545
|
fixed: "left"
|
|
@@ -5562,11 +5567,11 @@ function handleActionColumn(propsRef, columns) {
|
|
|
5562
5567
|
};
|
|
5563
5568
|
columns.push({
|
|
5564
5569
|
...columnObj,
|
|
5565
|
-
customRender: ({ record, index }) => {
|
|
5566
|
-
return h(_sfc_main$
|
|
5570
|
+
customRender: ({ record, index: index2 }) => {
|
|
5571
|
+
return h(_sfc_main$H, omit({
|
|
5567
5572
|
...columnObj,
|
|
5568
5573
|
record,
|
|
5569
|
-
index
|
|
5574
|
+
index: index2
|
|
5570
5575
|
}, "align"));
|
|
5571
5576
|
}
|
|
5572
5577
|
});
|
|
@@ -5580,7 +5585,7 @@ function useColumns(propsRef, getPaginationRef, tableElRef) {
|
|
|
5580
5585
|
if (!columns)
|
|
5581
5586
|
return [];
|
|
5582
5587
|
const { ellipsis } = unref(propsRef);
|
|
5583
|
-
columns.forEach((it,
|
|
5588
|
+
columns.forEach((it, index2) => {
|
|
5584
5589
|
var _a;
|
|
5585
5590
|
it.class = `${(_a = it.class) != null ? _a : ""} __column`;
|
|
5586
5591
|
const { slots } = it;
|
|
@@ -5709,11 +5714,11 @@ function useColumns(propsRef, getPaginationRef, tableElRef) {
|
|
|
5709
5714
|
getCacheColumns
|
|
5710
5715
|
};
|
|
5711
5716
|
}
|
|
5712
|
-
const _hoisted_1$
|
|
5717
|
+
const _hoisted_1$n = {
|
|
5713
5718
|
size: 16,
|
|
5714
5719
|
className: "drag-icon"
|
|
5715
5720
|
};
|
|
5716
|
-
const _sfc_main$
|
|
5721
|
+
const _sfc_main$G = /* @__PURE__ */ defineComponent({
|
|
5717
5722
|
__name: "Column",
|
|
5718
5723
|
emits: [
|
|
5719
5724
|
"columns-change"
|
|
@@ -5850,9 +5855,9 @@ const _sfc_main$H = /* @__PURE__ */ defineComponent({
|
|
|
5850
5855
|
return;
|
|
5851
5856
|
const columns = getColumns();
|
|
5852
5857
|
const isFixed = item.fixed === fixed ? false : fixed;
|
|
5853
|
-
const
|
|
5854
|
-
if (
|
|
5855
|
-
columns[
|
|
5858
|
+
const index2 = columns.findIndex((col) => col.dataIndex === item.dataIndex);
|
|
5859
|
+
if (index2 !== -1) {
|
|
5860
|
+
columns[index2].fixed = isFixed;
|
|
5856
5861
|
}
|
|
5857
5862
|
item.fixed = isFixed;
|
|
5858
5863
|
if (isFixed && !item.width) {
|
|
@@ -5964,7 +5969,7 @@ const _sfc_main$H = /* @__PURE__ */ defineComponent({
|
|
|
5964
5969
|
key: item.value,
|
|
5965
5970
|
class: normalizeClass(`${prefixCls}__check-item`)
|
|
5966
5971
|
}, [
|
|
5967
|
-
withDirectives(createElementVNode("span", _hoisted_1$
|
|
5972
|
+
withDirectives(createElementVNode("span", _hoisted_1$n, null, 512), [
|
|
5968
5973
|
[_directive_icon, "ant-design:drag-outlined"]
|
|
5969
5974
|
]),
|
|
5970
5975
|
createVNode(unref(Checkbox), {
|
|
@@ -6045,10 +6050,10 @@ const _sfc_main$H = /* @__PURE__ */ defineComponent({
|
|
|
6045
6050
|
};
|
|
6046
6051
|
}
|
|
6047
6052
|
});
|
|
6048
|
-
const _hoisted_1$
|
|
6049
|
-
const _hoisted_2$
|
|
6053
|
+
const _hoisted_1$m = { key: 0 };
|
|
6054
|
+
const _hoisted_2$d = { key: 0 };
|
|
6050
6055
|
const _hoisted_3$7 = { key: 1 };
|
|
6051
|
-
const _sfc_main$
|
|
6056
|
+
const _sfc_main$F = /* @__PURE__ */ defineComponent({
|
|
6052
6057
|
__name: "Fullscreen",
|
|
6053
6058
|
setup(__props) {
|
|
6054
6059
|
const { t } = useI18n("UI");
|
|
@@ -6072,13 +6077,13 @@ const _sfc_main$G = /* @__PURE__ */ defineComponent({
|
|
|
6072
6077
|
const _directive_icon = resolveDirective("icon");
|
|
6073
6078
|
return openBlock(), createBlock(unref(Tooltip), { placement: "top" }, {
|
|
6074
6079
|
title: withCtx(() => [
|
|
6075
|
-
!unref(isFullscreen) ? (openBlock(), createElementBlock("span", _hoisted_1$
|
|
6080
|
+
!unref(isFullscreen) ? (openBlock(), createElementBlock("span", _hoisted_1$m, toDisplayString(unref(t)("FULLSCREEN")), 1)) : createCommentVNode("", true)
|
|
6076
6081
|
]),
|
|
6077
6082
|
default: withCtx(() => [
|
|
6078
6083
|
createElementVNode("span", {
|
|
6079
6084
|
onClick: _cache[0] || (_cache[0] = (...args) => unref(toggle) && unref(toggle)(...args))
|
|
6080
6085
|
}, [
|
|
6081
|
-
!unref(isFullscreen) ? withDirectives((openBlock(), createElementBlock("span", _hoisted_2$
|
|
6086
|
+
!unref(isFullscreen) ? withDirectives((openBlock(), createElementBlock("span", _hoisted_2$d, null, 512)), [
|
|
6082
6087
|
[_directive_icon, "ic:baseline-fullscreen"]
|
|
6083
6088
|
]) : withDirectives((openBlock(), createElementBlock("span", _hoisted_3$7, null, 512)), [
|
|
6084
6089
|
[_directive_icon, "ic:baseline-fullscreen-exit"]
|
|
@@ -6090,8 +6095,8 @@ const _sfc_main$G = /* @__PURE__ */ defineComponent({
|
|
|
6090
6095
|
};
|
|
6091
6096
|
}
|
|
6092
6097
|
});
|
|
6093
|
-
const _hoisted_1$
|
|
6094
|
-
const _sfc_main$
|
|
6098
|
+
const _hoisted_1$l = { class: "column-select" };
|
|
6099
|
+
const _sfc_main$E = /* @__PURE__ */ defineComponent({
|
|
6095
6100
|
__name: "DownloadCtrl",
|
|
6096
6101
|
setup(__props) {
|
|
6097
6102
|
const { t } = useI18n("UI");
|
|
@@ -6135,12 +6140,12 @@ const _sfc_main$F = /* @__PURE__ */ defineComponent({
|
|
|
6135
6140
|
closeModal(columns);
|
|
6136
6141
|
}
|
|
6137
6142
|
return (_ctx, _cache) => {
|
|
6138
|
-
return openBlock(), createBlock(unref(_sfc_main$
|
|
6143
|
+
return openBlock(), createBlock(unref(_sfc_main$K), {
|
|
6139
6144
|
onRegister: unref(registerDialog),
|
|
6140
6145
|
onSave: save
|
|
6141
6146
|
}, {
|
|
6142
6147
|
default: withCtx(() => [
|
|
6143
|
-
createElementVNode("div", _hoisted_1$
|
|
6148
|
+
createElementVNode("div", _hoisted_1$l, [
|
|
6144
6149
|
createVNode(unref(Checkbox), {
|
|
6145
6150
|
checked: state.checkAll,
|
|
6146
6151
|
"onUpdate:checked": _cache[0] || (_cache[0] = ($event) => state.checkAll = $event),
|
|
@@ -6157,7 +6162,7 @@ const _sfc_main$F = /* @__PURE__ */ defineComponent({
|
|
|
6157
6162
|
default: withCtx(() => {
|
|
6158
6163
|
var _a;
|
|
6159
6164
|
return [
|
|
6160
|
-
(openBlock(true), createElementBlock(Fragment, null, renderList((_a = outRow.value) == null ? void 0 : _a.columns, (it,
|
|
6165
|
+
(openBlock(true), createElementBlock(Fragment, null, renderList((_a = outRow.value) == null ? void 0 : _a.columns, (it, index2) => {
|
|
6161
6166
|
return openBlock(), createBlock(unref(Col), { span: 8 }, {
|
|
6162
6167
|
default: withCtx(() => [
|
|
6163
6168
|
createVNode(unref(Checkbox), {
|
|
@@ -6184,7 +6189,7 @@ const _sfc_main$F = /* @__PURE__ */ defineComponent({
|
|
|
6184
6189
|
};
|
|
6185
6190
|
}
|
|
6186
6191
|
});
|
|
6187
|
-
const _sfc_main$
|
|
6192
|
+
const _sfc_main$D = /* @__PURE__ */ defineComponent({
|
|
6188
6193
|
__name: "Download",
|
|
6189
6194
|
setup(__props) {
|
|
6190
6195
|
const { t } = useI18n("UI");
|
|
@@ -6251,19 +6256,19 @@ const _sfc_main$E = /* @__PURE__ */ defineComponent({
|
|
|
6251
6256
|
]),
|
|
6252
6257
|
_: 1
|
|
6253
6258
|
}, 8, ["getPopupContainer"]),
|
|
6254
|
-
createVNode(_sfc_main$
|
|
6259
|
+
createVNode(_sfc_main$E, { onRegister: unref(registerDialog) }, null, 8, ["onRegister"])
|
|
6255
6260
|
]),
|
|
6256
6261
|
_: 1
|
|
6257
6262
|
});
|
|
6258
6263
|
};
|
|
6259
6264
|
}
|
|
6260
6265
|
});
|
|
6261
|
-
const _sfc_main$
|
|
6266
|
+
const _sfc_main$C = defineComponent({
|
|
6262
6267
|
name: "table-setting",
|
|
6263
6268
|
components: {
|
|
6264
|
-
ColumnSetting: _sfc_main$
|
|
6265
|
-
FullscreenSetting: _sfc_main$
|
|
6266
|
-
Download: _sfc_main$
|
|
6269
|
+
ColumnSetting: _sfc_main$G,
|
|
6270
|
+
FullscreenSetting: _sfc_main$F,
|
|
6271
|
+
Download: _sfc_main$D
|
|
6267
6272
|
},
|
|
6268
6273
|
props: {
|
|
6269
6274
|
setting: {
|
|
@@ -6303,8 +6308,8 @@ function _sfc_render$2(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
6303
6308
|
_ctx.getSetting.fullscreen ? (openBlock(), createBlock(_component_FullscreenSetting, { key: 2 })) : createCommentVNode("", true)
|
|
6304
6309
|
], 64);
|
|
6305
6310
|
}
|
|
6306
|
-
var TableSettinCom = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
6307
|
-
const _sfc_main$
|
|
6311
|
+
var TableSettinCom = /* @__PURE__ */ _export_sfc(_sfc_main$C, [["render", _sfc_render$2]]);
|
|
6312
|
+
const _sfc_main$B = defineComponent({
|
|
6308
6313
|
name: "table-header",
|
|
6309
6314
|
components: {
|
|
6310
6315
|
TableSettinCom,
|
|
@@ -6344,8 +6349,8 @@ const _sfc_main$C = defineComponent({
|
|
|
6344
6349
|
};
|
|
6345
6350
|
}
|
|
6346
6351
|
});
|
|
6347
|
-
const _hoisted_1$
|
|
6348
|
-
const _hoisted_2$
|
|
6352
|
+
const _hoisted_1$k = { class: "dt-table-header" };
|
|
6353
|
+
const _hoisted_2$c = { class: "dt-table-header-actions" };
|
|
6349
6354
|
const _hoisted_3$6 = { class: "dt-table-header-actions__left" };
|
|
6350
6355
|
const _hoisted_4$3 = {
|
|
6351
6356
|
key: 0,
|
|
@@ -6358,8 +6363,8 @@ const _hoisted_5$2 = {
|
|
|
6358
6363
|
function _sfc_render$1(_ctx, _cache, $props, $setup, $data, $options) {
|
|
6359
6364
|
const _component_FormButtons = resolveComponent("FormButtons");
|
|
6360
6365
|
const _component_TableSettinCom = resolveComponent("TableSettinCom");
|
|
6361
|
-
return openBlock(), createElementBlock("div", _hoisted_1$
|
|
6362
|
-
createElementVNode("div", _hoisted_2$
|
|
6366
|
+
return openBlock(), createElementBlock("div", _hoisted_1$k, [
|
|
6367
|
+
createElementVNode("div", _hoisted_2$c, [
|
|
6363
6368
|
createElementVNode("div", _hoisted_3$6, [
|
|
6364
6369
|
createVNode(_component_FormButtons, mergeProps(_ctx.getActionsProps, { onHandleMethod: _ctx.handleMethod }), null, 16, ["onHandleMethod"]),
|
|
6365
6370
|
renderSlot(_ctx.$slots, "toolbar")
|
|
@@ -6376,12 +6381,12 @@ function _sfc_render$1(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
6376
6381
|
])) : createCommentVNode("", true)
|
|
6377
6382
|
]);
|
|
6378
6383
|
}
|
|
6379
|
-
var TableHeader = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
6384
|
+
var TableHeader = /* @__PURE__ */ _export_sfc(_sfc_main$B, [["render", _sfc_render$1]]);
|
|
6380
6385
|
function useTableHeader(propsRef, slots, handlers) {
|
|
6381
6386
|
const getHeaderProps = computed(() => {
|
|
6382
6387
|
const { tableSetting, toolbar } = unref(propsRef);
|
|
6383
6388
|
const { getSlot } = useSlots();
|
|
6384
|
-
const hideTitle = !toolbar && !slots.toolbar && !slots.headerTop && !tableSetting;
|
|
6389
|
+
const hideTitle = (!toolbar || !toolbar.filter((it) => it.show).length) && !slots.toolbar && !slots.headerTop && !tableSetting;
|
|
6385
6390
|
return {
|
|
6386
6391
|
title: hideTitle ? null : () => h(TableHeader, {
|
|
6387
6392
|
tableTools: tableSetting,
|
|
@@ -6558,7 +6563,7 @@ function useTableScroll(propsRef, tableElRef, columnsRef, rowSelectionRef) {
|
|
|
6558
6563
|
};
|
|
6559
6564
|
}
|
|
6560
6565
|
function useCustomRow(propsRef, { setSelectedRowKeys, getSelectRowKeys, clearSelectedRowKeys, emit }) {
|
|
6561
|
-
const customRow = (record,
|
|
6566
|
+
const customRow = (record, index2) => {
|
|
6562
6567
|
return {
|
|
6563
6568
|
onClick: (e) => {
|
|
6564
6569
|
e == null ? void 0 : e.stopPropagation();
|
|
@@ -6601,19 +6606,19 @@ function useCustomRow(propsRef, { setSelectedRowKeys, getSelectRowKeys, clearSel
|
|
|
6601
6606
|
}
|
|
6602
6607
|
}
|
|
6603
6608
|
handleClick();
|
|
6604
|
-
emit("row-click", record,
|
|
6609
|
+
emit("row-click", record, index2, e);
|
|
6605
6610
|
},
|
|
6606
6611
|
onDblclick: (event) => {
|
|
6607
|
-
emit("row-dbClick", record,
|
|
6612
|
+
emit("row-dbClick", record, index2, event);
|
|
6608
6613
|
},
|
|
6609
6614
|
onContextmenu: (event) => {
|
|
6610
|
-
emit("row-contextmenu", record,
|
|
6615
|
+
emit("row-contextmenu", record, index2, event);
|
|
6611
6616
|
},
|
|
6612
6617
|
onMouseenter: (event) => {
|
|
6613
|
-
emit("row-mouseenter", record,
|
|
6618
|
+
emit("row-mouseenter", record, index2, event);
|
|
6614
6619
|
},
|
|
6615
6620
|
onMouseleave: (event) => {
|
|
6616
|
-
emit("row-mouseleave", record,
|
|
6621
|
+
emit("row-mouseleave", record, index2, event);
|
|
6617
6622
|
}
|
|
6618
6623
|
};
|
|
6619
6624
|
};
|
|
@@ -6622,12 +6627,12 @@ function useCustomRow(propsRef, { setSelectedRowKeys, getSelectRowKeys, clearSel
|
|
|
6622
6627
|
};
|
|
6623
6628
|
}
|
|
6624
6629
|
var _imports_0$1 = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAyAAAAMgCAYAAADbcAZoAAAgAElEQVR4AezBCZDliUHf9+/vdc/Rr1d7za4WoQuwBAgsQIRTJZA4gzDYgLFEUcEQ2xIohCIJKgcTDgPGNsYF2AGCwCkOh0syRWwlEBkbJBRLkQ8EAsQlEJLQsbszs9f0e90z3e+X/3vqnrez7D0zO318Px8kSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSTrsgiRJkrSrLTN4ReGTgWcBHwE8lQeYwXuBnz0G/yzJe5EepSBJkqQjr+3z7is/dced5587nU4Ij87aeJ1Ttx7jSfC9I/jmJEgPJ0iSJOnIanvTvfAnZ09fuGky2eByrI3H3HrL8V++Dv5KEqQHEyRJknTktOUc/Mjp0+dfMZ1MuJLGa2NuuvX4910PfzcJ0v0FSZIkHSltn/Fnd55/13RzQghXQyknxmM+4tTxE0nOI+1aRZIkSQdG22OF5waeDXw4cB/w+8AfA+9JwsNp+5XvPrv9M1tbU0YJV0sIF6ZT3n02W20/K8nrkQZBkiRJ+1rbLwa+fwrPOn32AtPJhAcqZTxe58k3H+MEvBP4ceAHkmyyq+2PvOfshVdMJxOeSOPxOk+7efUbkvwQOvKCJEmS9p22DL7nPHzLnXftMJls8FiNx+vcetPKXcfhlefh8+68a+crJpMNroXxeJ2n3rTyXUm+Ax1pQZIkSftK23/03rt3vnk62eAwGY/X+dAbVz4nya+hIytIkiRpX2jLNrzrzrt3njGZbHAYjcdrPOXGY6MkRUfSKpIkSbrm2j7pfXfv3DudTlhIOIwm003e09G07ckk6OgZIUmSpGuq7ae9/97ZvZubExJIIIEEEkgggQQSSCCBBBJIIIEEEkgggQQSSCCBBBJIIIEEEkgggQQSSCCBBBJIIIEEEkgggQQSSCCBBBJIIIEEEkgggQQS2NrcOHEB/hd0JAVJkiRdM22/5PZ7Z780mWxwlKwdP8mH3HwsA3S0BEmSJF0TbT/yjnP9w8nGBkdOYW1t/O4n3zDaCKwCZ4E3Am8F3pLkT9ChFCRJkvSEa8ud9+10MpmiS43H69z6pDD4beC7gV9Mgg6HIEmSpCdUW06f2+5ksokeQct4bY1brl/9v4BvSfI76EALkiRJekK1/eX33LnxYvSYjNfXOTXmHPBFSd6ADqQgSZKkJ0zbZ5/d4I8mkw30+IzH69y8zq8Bn5MEHSxBkiRJT5gO3nt6A12ucnJtnVPruSHJvejAWEWSJElPiLavvGsTSNDlCpubU+5aGd/T9iVJXoMOhCBJkqSrri13b9DJ5gRdWePxmBvX+MIkv4L2vVUkSZL0RPiu6dYGSdCVNZ1OyGj8y23/cpLfQ/takCRJ0lXVlns26XQ6RVfP2vgkN5zIHNq/RkiSJOmytaXtV7T9rT7AvVuc3ZxOCRAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIE2JxsMvhNtK8FSZIkPS5tGbwc+MZz5/mYyWQCBF074/U1rjvGi5K8Ae1LQZIkSY9Z2+dsbPH2yeYm2l9uveHkLMkK2pdGSJIk6VFrS9ufnmzz9unmJgECBAgQIECAAAECBAgQIECAAAECBAgQIECAAAECBAgQIECAAAECBAgQIECAAAECBAgQIECAAAECBAgQIECAAAECBAgQIECAAAECBAgQIECAAAECBAgQIECAAAECBAgQIECAAAECBAgQIECAAAECBAgQYHqBUdu/hvalIEmSpEel7Y3nLnDX5mRKErR/nbr+5JuTPB/tO0GSJEmPqC0bO3RzsoX2v7XxCcYrZID2lyBJkqSH1ZaNbbo13UIHQ1tOXX/ys5P8OtpXVpEkSdIj+ddbm+dJgg6GJAy+BPh1tK+sIkmSpIfU9ikXyl8doQPo89G+s4okSZIezm9OJudJ0MHz0WjfWUWSJEkPqm124EOSoINnB2hLErR/rCJJkqSH8s8mkwsEHUSTjQs8af3YOrCB9o0gSZKkB9V2cm56YQ0dWNetHXtOkj9A+8Yq0oNoS+FY4cN3YGUEsxX4wyRIknQUtKWwlgQdaM8E/gDtG6voyGvLDP5G4X8E/quNcvwdd2yyOZmQhLlS1tbG3NPesQ6vWoEfTHIWSZIOr9s2phdIgg6msnAB7StBR1ZbJvBDt9+x+fXT6RQIj9Z4vM4ttxxjHL5jBN+VBEmSDpO2nzHZ2v4NdKCNT6x+fJK3oX0j6Ehq+63vPH3+u6eTCZdrbTzm1C3HX309vDQJkiQdBm2/eHp+59+gA23t+MrTkrwX7RtBR0rb287Be8+cvrAymWxwJY3HJ3nmLSe/Lck/QJKkA67tF2ye3/kVdGCdPL7CIAO0fwQdGW1/4N1ntv+HyWSDq2U8XueWU6ubY1hLgiRJB1Xbz9y6sPMGdGCdOLZCBmhfCdrX2jJ4OvD5wCcATweeBdwJ/BHwx8A7gD9K8nYeRFs24W13nt1+7mSywRNhbW2NZ5w6/olJ3ookSQdQ2xPnt2eb6MA6vjr6D0legPaVVbQvtX3mefihd589/0XTyYQQHsSL2LU2HrPZcgL+M/BPkryGQVvefWbr9OZkeoqE8MTYnE7587Oj32z70iSvRpKkg2fr+OqIC9szdACVuVehfSdoX2n7X5+Hn7vjrp2bppMNHo/xeJ1TN62wAn/n/Xed/9qtyeYnc42Mx+s89aaVVyT5USRJOmDa3r69M3syOnBWV0YMMkD7S9C+0JYLcM+dd+9cP5lscJiM19f50BtWPibJ7yNJ0gHS9vt2dvpKdOCsrOTNSZ6P9p2ga67tp7zv7vNvmU42OazG45M85cbjGSBJ0kHR9hN2Zn0rOlBWRmFwY5J70L6ziq6ptt/ygXtm37M53SIJh9V0usV7dka3t70tCZIkHRC/tTIKsxYdKP8lyT1oXwq6Ztq+5gP3zb58srHBUTBreeZTrv/a48mPIUnSAdH2jS0vQAdCwlwGaH8Kuiba/sbt984+YzLZ4Cg5eXKNp9y4mgGSJB0EbW8E7kIHxUuSvAbtW6voCdf2H99xXz9jOp2QhKNkc2uTD9w37qwlXPRO4LeA/w/4hSTvQpKkfSLJ3W3fAnwq2u9+I8lr0L4W9IRq+/l3nuvrJpMN9BeN19e5dT0MfhZ4ZZL3I0nSNdb2OLCF9rPTwK1J0P4W9IRpe9vpc7MPTCYT9MjG43VuuS4M/j7wnUmQJOlaafvZwL9H+9HvAB+XBO1/QU+YDt5z5wZ67MYnx5x6Uv55km9EkqRrpO3PAy9F+8n/lOQH0IER9IRo+y1np3zPZGMDPT7j9XVuXmMKrCcpkiRdA23/JfDfoGvt9cDnJtlBB0rQVdeWMxvt5nSCLt94bcxN63lRkjcgSdI10Pbbge9E18Jbgc9NchYdSEFXXds3vu/M5AXoihmvj7nxJK9K8nVIknQNtL0BeCdwE1fGTwFfjR7KTwKvTHIGHWhBV1Xbp9895d2TyQRdWeP1MTee5HuSfCuSJF0jbT8beDnwUh67VwM/Bvz7JLRlcB9wHYfTBeAYj+ztwO8BbwVeneRP0KERdFW1ffP7z04+DV0V4/UxN5zgpUlejSRJ11hbBp8GfB7wEcCHAU8G3gO8C/hT4NeB/5iEB9OWwduB53D1vQR4NU+M1yf5rLYMXgh8FjAC7gHeAJwDdpL8MTrUgq6YtrcBp4AC9wF/fu95OtmYoqvn5NoaN54kAyRJOiza/hDw9Vw9H5bkXW0Z3Adcx9Xz40lejjQIetzaMvgC4JuBF963BZPJBAgUZpkxYoSuvttuWjub5BSSJB0ibV8AvJEr72SSLXa1ZfAW4FO48j42yduRdgU9Zm0/AviZc1t82mSyCUHX2Hj9JNcd46VJXo0k6TFr+3Ez+LrCK7ifGQtnV+DHR/D9Se5AT6i2DL4PeCWX7yeAv5WEB9P2vwN+mCvjPwGfkgTp/oIetbYMXrWxzcsnG5tof7n1hpNkgCTpUWv78nPwqjvvvMB0ssHDWRuvc+utxxjDd4/g25OgJ07bk8DvAn+Jx+5O4DlJzvAI2jL4aeCreHzeBnxhkvciPYigR6Xtbfed5wObk00StA+tr59kbZWvTvLTSJIeVtu/vgH/6vTpC0wmGzxWa2tjPuzW41+W5JfQE6rtceAfAv8tcDMP7zXA/5zknTxGbU8A3w68DLiVR/aLwFclmSI9jKBH1Pbl0x1eNdnYQvvbqetP/H6Sj0GS9KDasgH/9vSZ7c+bTja4HGvjdW45tfr/rMOLk6AnXlsGtwHPAz4ReD/wduAtSbhS2jL4QuATgePAfcCfAn8KvDUJ0qMV9LDavnBrxus3NrbQ/jcen+DkChkgSYdZWwbfCnwy8DHAs7jUzwM/DfxKEuba8u4zW51Op4RwZZSTaye3nnHq5MkkSNIjCXpIbdemMybTjS10MLTl1PUn/0aSf4UkHUJtn7QFv3DnXTsvnk42eDgFxuN1nnzTyu8BX3/HXdv/djqZHOcqWFs7ydNuPp4BkvRwgh5SB3edO48OlpuuO/4jSb4eSTpE2rINP3b73dsvm04m7Eerx9fOfNgtx25JgiQ9lFX0oNp+4wUgQQfPZyNJh0hb3nt2Z2dzczIikIT96ML5zVNbHPtfgW9Akh5C0IPq4J6N8+jguWH9OBkgSYdA2/Htd29vTDanHATj8Zjbrl+5KcndSNKDWEV/Qdsv3AGSoIPnAtCWJEjSQdaW99/Xja2tTZJwEEynU+4Yrf922x8GrgfeCLwuCZI0F/QXtH3TfZMLn44OpLZcv348AyTpoGrL7XfvbGxuTccccOPxmFufNGLwTuCHgO9PgqSjKegSbdmGbk4voIPrurVjp5KcRZIOqLY/8e7bN76GcOisjde59TreB3xFkjci6UgJukTbmzY2t8+iA2395OrHJ3kbknQAtf38MxNeN9nY4DAbj9c5tc57gGckQdLRsIoe6KODDoELSNIB1JYz9/V1m1sTRuFQ25xu8N4pTz85XuvgQ5O8H0mH3ip6oGcRdKCVwR1I0sH0TZtbU5JwVGxNN7k74/e1fX6SNyPpUFtFD3QiCTq42jC4C0k6YNpy9+bsn45GHDnT6YSMxm9q+0lJ/guSDq1V9EDbQQfZ2okVBjMkaZ9r+wzgJcD1wH33bPIR0+kWSTiKppMpdO0/t80ASYfTKnqgMwk62O5JgiTtR21fCLwK+KhzF2CyMeX+VsKRtrU5hZNrPw68DEmHUtAl2t58fnt2Bh1Yx1dHv5jky5GkfaQtgzdNtvn0jY1N9NDG45OsHyMDJB0+q+iBzh5fHXFhe4YOrB9FkvaRts89t8PbNjc2mUvQw5hOp6wfW/tO4DuQdOgE/QVtT2/vzE6hA2d1ZcQgAyRpP2j7wukOr59sbKFH79T1J8gASYfOKnowP5Hklegg+sUkSNJ+0PaZ52e8fnOyxSjoMTg/g7ankpxB0qES9Be0fd5s1t9EB8poFAYZIEnXWlumM7o1OY8enxuvO/6VSX4OSYfKKnowbx2NwqxFB8prkyBJ+8Tf3pqcJ0GP34uAn0PSoRL0oNq+tvBF6EAICxkgSftB2zvvnVy4BT1u14+PvTnJ85F0qKyih/LFgaKD4vlJkKT9oC07cEuCLs9fQtKhs4oeVBLa/t/AX0H73Y8leTOStH985uZ0m1GCLsuTkXTorKKH80VA0X72jiRfiyTtLx+VEbp8F5B06Kyih5SEth8J/BHaj94AvAhJ2n9uSIIu2+1IOnRG6GEl+WPgv0f7zdckeVESJGkf2g4QIECAAAECBAgQIECAAAECBAgQIECAAAECBAgQIECAAAECBAgQIECAAAECBAgQIECAAAECBAgQIECAAAECBAgQIECAAAECBAgQIECAAAECBAgQIECAAAECBAgLb0LSobOKHlGSH257FvhZdK39CvCFSZCkfextowRdtl9F0qET9Ki1fT7wH9C18HrgxUk2kaR9ru1xYOvC9gw9PsdWRwwyQNLhMkKPWpI3AQF+jivnVejhvAoYJ/msJJtI0gGQ5DyDBBJIIIEEEkgggQQSSCCBBBJIIIEEEkgggQQSSCCBBBJIIIEEEkgggQQSSCCBBBJIIIEEEkgggQQSSCCBBBJIIIEEEkgggQQSSCCBBBJIIIEEEkgggQQSSCCBBBJIIIEEEkiYu5AESYdP0OPSlsFLga8DXsRj81PAv0jy/zJoy6AcXj8FfDWP7HeA3wV+E/jZJO9Dkg6otv9mZ9YvRo/ZyigMvizJLyHp0Am6Itoy+CjgI4APA54CzIAAG8CvAm9NwoNpy+B9wFO4us4BTwLOADdz9f3VJK9l0JbBc4CyFGAryZ+iA63tMeATgOfP4JOA5xWeVrhhBpQPmgFr6NEqS2WpLM2A8EEzPijAjKVyqbJUlmZA+KAZS2WpLJWlGZCyMOODUpix1HKJzoCwMAMyY2HGByXcsTPjAykfILy/I967MuPXP+QE/y4J+1nbLwN+sS16bJLcleRmJB1KQftK258HXsrVcRq4NQltGfw68CKunuck+QN06LRl8NeBrwRevAlrd5zZYnJuQlNaoKVAC6W0LLRlNoOd7rAzA2bl5utP8uSbx6QjtmelLVBaLiqDslDKQqHcT0tZKoOyUMpCoSy1ZU8ZlIUyVyiUpTJomSu7CmVPablEy6DMlUFZKLtaylIZlEEpuwplqS17yqAslLJQKEtl0LKnDMpCKQuFstQyKHNlUBbKXJlruagMyqCUXYWyp7RcomVXKYOyUPaUlovKoHBybczNt97MiRP8ymiFnz51gl8YJ2Wf6QA9HmtJNpF0KAXtO22/CHgtV9a/TPI3eYC23wl8O1fWfwQ+NQk6PNp+CvCy8/BVp+++cGJyboMGWmjLXAultEBLgRZKaVloSwultFBgZ2eHne1y0/UnOXX9mOPHVtiZ7TCbcVEZlIVSFgrlflrKUhmUhVIWCmWpLXvKoCyUuUKhLJVBy1zZVSh7SsslWgZlrgzKQtnVUpbKoAxK2VUoS23ZUwZloZSFQlkqg5Y9ZVAWSlkolKWWQZkrg7JQ5spcy0VlUAal7CqUPaXlEi27ShmUhbKntFxUBmWhlIUZnBiPOXXq1N1rJ/mbT7+O1yZhP2j7jcAPosfi05K8BUmHVtC+1JbBTwJfzeX7hCS/zUNo+0zgrcBNXL6/leQn0KHQlsH3An/39nt22Jhs0Ja5thRooS1zLZTSAi0FWiilZaEtLZTSstCW2Qx2Wi5s73DL9Sd5yi1PorMym5UCZVAWSlkolPtpKUtlUBZKWSiUpbbsKYOyUOYKhbJUBi1zZVeh7Cktl2gZlLkyKAtlV0tZKoMyKGVXoSy1ZU8ZlIVSFgplqQxa9pRBWShloVCWWgZlrgzKQpkrcy0XlUEZlLKrUPaUlku07CplUBbKntJyURmUhVIWCmXXrKweO8HNt932jR/7ZP55Eq6ltgyKHq2XJHkNkg61oH2t7ZOBtwOneOz+PvCdSXg02r4U+Hken28AfigJOvjaPhX4+Tvu23nBdDKhLS0UaMtcWwq00Ja5FkppgZYCLZTSstCWFkppWWhLCwVmszJr2ZnNePqTr+fG9ZPs7MzYaaEslLJQKPfTUpbKoCyUslAoS23ZUwZlocwVCmWpDFrmyq5C2VNaLtEyKHNlUBbKrpayVAZlUMquQllqy54yKAulLBTKUhm07CmDslDKQqEstQzKXBmUhTJX5louKoMyKGVXoewpLZdo2VXKoCyUPaXlojIoC6UsFMpSWwqcXDvJsz76yX/vQ5J/zDXU9knAveiRfGGSX0HSoRd0ILRdB74XeBlwnIf2r4H/PclreZzafiLwcuBreWhT4FeBf5HktehQaMvgV8+c6+duTM7RstCWFgq0Za4tBVpoy1wLpbRAS4EWSmlZaEsLpbQstKWFAm2Zm81mXNgp149P8IzbrmPWMNspc6UsFMr9tJSlMigLpSwUylJb9pRBWShzhUJZKoOWubKrUPaUlku0DMpcGZSFsqulLJVBGZSyq1CW2rKnDMpCKQuFslQGLXvKoCyUslAoSy2DMlcGZaHMlbmWi8qgDErZVSh7SsslWnaVMigLZU9puagMykIpC4Wy1JY9J9bGnDp1y+yZt/K0cfJ+rpG2fxn4HfRg3gS8IEmRdCQEHThtGTwDWAcK/AlwIQlXWlsGHwmsAncD70uCDpe2DP7OmWl/fHpugxZKaVloSwsF2jLXlgIttGWuhVJaoKVAC6W0LLSlhVJaFtrSQoG2zLVlBuzslLQ86+mnODYaMZvNmFEWCuV+WspSGZSFUhYKZakte8qgLJS5QqEslUHLXNlVKHtKyyVaBmWuDMpC2dVSlsqgDErZVShLbdlTBmWhlIVCWSqDlj1lUBZKWSiUpZZBmSuDslDmylzLRWVQBqXsKpQ9peUSLbtKGZSFsqe0XFQGZaGUhUJZasueMiicXBvz7I+65TtuW8l3cY20ZfDvgM9Bc98G/IMkSDpagqQjrS1nzu28azrdfAYBWloopWWhLS0UaMtcWwq00Ja5FkppgZYCLZTSstCWFkppWWhLCwXaMteWAi3MdmZsz8qzn3oTayeOcWFnh4VCuZ+WslQGZaGUhUJZasueMigLZa5QKEtl0DJXdhXKntJyiZZBmSuDslB2tZSlMiiDUnYVylJb9pRBWShloVCWyqBlTxmUhVIWCmWpZVDmyqAslLky13JRGZRBKbsKZU9puUTLrlIGZaHsKS0XlUFZKGWhUJbasqcMysKJtTG33HLzf/qwW0efspZwrbR9CvDDwJfyyP4U+EngnwAvBF7HwfVm4HXADya5B0lHVpB0ZLV9wd3TvnEymdBCGbS0UErLQltaKNCWubYUaKEtcy2U0gItBVoopWWhLS2U0rLQlhYKtGWuLQVaoGXWsnV+xkc+/SbWTh5jZ2cGhXI/LWWpDMpCKQuFstSWPWVQFspcoVCWyqBlruwqlD2l5RItgzJXBmWh7GopS2VQBqXsKpSltuwpg7JQykKhLJVBy54yKAulLBTKUsugzJVBWShzZa7lojIog1J2Fcqe0nKJll2lDMpC2VNaLiqDslDKQqEstWVPGZSFMleOnzy58dyPue26mxOupbYMPhH4a0D5oAA7wP8JvC0J99f2U4C3cGXcBPww8JVcGaeAs8DHAReAaZI/Q5IeIEg6ktr+03u3+KaNcxNKaaEMWloopWWhLS0UaMtcWwq00Ja5FkppgZYCLZTSstCWFkppWWhLCwXaMteWAi3QUmA2g/M7F3jOM27h+OoKOzul3E9LWSqDslDKQqEstWVPGZSFMlcolKUyaJkruwplT2m5RMugzJVBWSi7WspSGZRBKbsKZakte8qgLJSyUChLZdCypwzKQikLhbLUMihzZVAWylyZa7moDMqglF2Fsqe0XKJlVymDslD2lJaLyqAslLJQKEtt2VMGZaHMlbnjJ8Y89zm3rt68kh0OmLbHgS0uz81J7mLQ9luA7+Hxuw+4PgmS9GiMkHTktP2Fe7f4psnGhIMkgdWVFf7g3WeZtYwSpMdja3PC7/zBndtn2uMcMEnOAwF+lMfudUAGd7EryT8EngfczWP3NUmuT4IkPVojJB0pbf/eufO8ZLIx4SAaJSThD951huOrKyRIj8vWdMLv/e6dW3fulIMmCUleAQT4GR7ZW4HnJPmCJDxQkt9KchPwacCbeGRfB2TwU0jSYxQkHRltP2vjAr927tyUtsy1UEoLZdDSQiktC21poUBb5tpSoIW2zLVQSgu0FGihlJaFtrRQSstCW1oo0Ja5thRogZYCLZTSwvbODqeetMbTnnwDF7Z3WGgpS2VQFkpZKJSltuwpg7JQ5gqFslQGLXNlV6HsKS2XaBmUuTIoC2VXS1kqgzIoZVehLLVlTxmUhVIWCmWpDFr2lEFZKGWhUJZaBmWuDMpCmStzLReVQRmUsqtQ9pSWS7TsKmVQFsqe0nJRGZSFUhYKZakte8qgLJS5Mtdy0fGTJ/jUj/2QrCUcZG2/BPgkYJsPWgXeBrw6CY9FWwYfB3wM8GxgFTgP/B9J3oUkXYYg6Uho+8xz5/mzyWRKC22Za6GUFsqgpYVSWhba0kKBtsy1pUALbZlroZQWaCnQQiktC21poZSWhba0UKAtc20p0AItBVoopYUy4/z5GdmLbcwAACAASURBVB/51JsYrx1nZ1ZoKUtlUBZKWSiUpbbsKYOyUOYKhbJUBi1zZVeh7Cktl2gZlLkyKAtlV0tZKoMyKGVXoSy1ZU8ZlIVSFgplqQxa9pRBWShloVCWWgZlrgzKQpkrcy0XlUEZlLKrUPaUlku07CplUBbKntJyURmUhVIWCmWpLXvKoCyUuTLXclGBD33q09743KesfiaSpKtuhKRDry3ntvmz6WSTwyKE1dUR73j/PYwSkiA9XmfPnPmMP7/QFyJJuupGSDoKfnVzY5PDZpTQlveduZeVUZAer83phHe8/fbXt0WSdHWNkHSotX36ZJvP5ZBaGY1479lztDBKkB6vza0Jv3d7/zckSVfVCEmH3W9NNjY5rBJYHY141+33sLISpMcrCWdO3/l1Z9sVJElXzQhJh1bb523ucDOH3GgU7rh7g+3tHZIgPV6b0wl/fju/hiTpqhkh6TD7yY2NLQ67EFZXRpy+Z8rKKEiX4+zpOz7znvZGJElXxQhJh1JbtmZ8HEfEaBTef8+ElVGQLsfmdMK7PjD7JSRJV8UISYfVj21sbHFUjBK2t2fcOznPaBSky3H69OkX3dciSbryRkg6rF7GEbMyGnHnXedYGQXpcpyfTviT989+BEnSFTdC0qHT9obzM46cUcKZ+zZZGY0I0uU5c+ftr2iLJOnKGiHpMPrbGxtbHDUJzAobm+dJgnQ5zm9u8vv38GIkSVfUCEmH0ZdzRK2Mwj33bTEaBelyJOH8pN+GJOmKGiHpMPp0jqhRwl0bm4wSpMt19vQdn94WSdKVM0LSodKWrRlHVgL3bpxnNArS5dqcTvnD+/g8JElXzAhJh83aZHKeoyoJBSZb2yRBuhwJrJRXIEm6YkZIOmyeHo62JGxunSdBumyTyexLkSRdMSMkHTYfwhEXYPPCNkmQLtfZ03dwpg2SpCtihKTD5jdoOcpGCZOtbUZBumyb0yln7+JLkSRdESMkHT7lSEtgc2ubJEhXRHgxkqQrYoQkHTJJmJy/QJCujBl8PpKkK2KEJB0yAbZnJQnSlbA56TOQJF0RIyTpsAnMdop0pZw9fQd3tkiSLt8ISTqktmc7BOnybW5OOHOW5yFJumwjJOkQSmD7QiFBuhJmIz4eSdJlGyFJh1LYnpUgXRmr4TlIki7bCEk6hBK4sLODdKXMyrORJF22EdI+0vZH+/g8H+kBOptBkK6UD0eSdNlWkfaXD7zjz+/isXrW0246iyRdXU9HknTZRkiSpEc0g1NIki7bKtI+EyRp/xkhSboSVpH2myBJ+84MSdKVMEKSJD2iEZKkK2EVad8J0kFRoC2zsmtGZ4Fw0WwGyYy5GZAZkDADwmA2YxYIc2EGZAZkRtk1Cw0XdTaDMAhlMAMCZcbCLDRcVAazGSTMlcEMCJQZECiUpZbBDAhlUBbK3AwILReVQRnMKGGhUPbMaMP9teyaUQJloeyZ0YY9ZVAIMGMGhBRmfFCA/v/swQmUZYld3/fv7977au+lunumZzSLtkEbGThCgIWMWQzGCLMqGBM5ysGAj4yRlMM5YDCyLEE8duKcE1uyiYVjOA4hB8MBbPkEDM6CQEZSEAYjYiONR9Kop2frmV6qq957VfXe/f9y31JVXb3UVE13VVdV/z8fTCGRUkppf6pI6RDowQop7SEb+jZyMDs5wfRkhRkw5ipmnRkzGDNkMBuMwWBGTMM0jBmxWWcMZsg0zJAxQwYzZjBmwDTMkGnYmA02DTNgGmbIDJgBm3WmYTBmyGBGTMPGjJkh0zANY8YMZsQYzJAZsRkzpmEwI5JYai/TXa0pC0EhREoppf2kIqVD4Pz53sO2A5ji9piX9HHSHSFsCHPq2DTzc5PcaraRRAAKCBoCRRAIASEgQEAoUIigIVBAMBBYggDTEBBgAhAWEAxZQARGICDADASWIMA0BASYAITNOtNwYAYEBjNiAgxGDBnMQGAzJkzDYIIBm4YYsGkEZsxgxIAdjIj5o1PUffPshUWWlnuUKpC4actdk1JK6eZVpLTPiJ3rLLc/9NknAXNbvOL+4zREOvRscASveMlxJPFimIZpGNMwmA22AWMaBjNmY8yAaZghY7AxYwYzYIzBYMYMxoAxDTNkGjbGDBnMgDEGgxkzGAPGZp1p2JgBg8GMGIPBmCGDGTA2Y8Y0DMYM2DTMgE3DmDGDMQO2GTEOEOLeU8dY7HR55nybqiy4WeefP8cl+/Rx6VlSSim9aBUpHSYipV3Vj+Dl9xxDEmn/sk2/rjkyM0l3uWaxs4IKcTOWux0uLNAjpZTSTSlIKaW0LbaZaVVUZUE6GOoITh2fAQcmpZTSflCR0n4jUtqXwjB/ZJJ0cNhQFDA7M8XS8ioSKaWUbrOClFJK2xI2U62CdLCETasqsEkppbQPFKSUUtoeQ1EWpIOnVRaklFLaHypS2mfEzs3MzD569/FWT1BxFUP33KXeA51O+yRjMzOz5+8+3npCMM1VDP1zl3qtTqf9KlK6kiDqoCgL0sEhoFcHKaWU9oeKlA6B08dbb5R0kRvo2+860+H9jJ063vrJQvoAN2B7/nMdLpDSFQqJ5V4wUxakg0MSq70+EimllPaBipQOh9PARW6ghBNcoYQTbO00KV2lEFxcWmFmqiIdDBL062Cx06OsCsCk3WP7nwN/Fujw4rWA5yS9kZTSoVSR0kFndocBkdI6SXRXaxY7KxyZmSTtb5KoSvHk+UXKQoi0B77wsbMXH+AmPXT//CtIKR1aFSntNxI7IrZHYkcKkdLVylI8c6FLWRbMTLZI+5CgQJRlwdPnL9NZ7lGWBSbtgRVxS6yQUjq0KlJKKW2bgKoUTz3f5sjsBKePz7BToiEaQjTEVcSVzJiNGTENM2QMBjMWYNEwphFgMRJgmQHTCEBgGmEsRgIsGiYABYRANAICI0EEiJEQKEwAEhAQgICQUUAAEhAQgGQiGBIQAgUEBoGDEYGDhjENAQFmxDYDolGIpfYKz11qs1qbsihIe0iklNKWKlLaZ8TuEDsjUro+SVSlWOz0WFi6RKsQVatkJIhgg0DBugBEwyIIRMMQgBgQQSBDAAJCQAgRBCBBBENChAICBAQNgUIEgWgIAlAAEhCYRgACMyCIwGKdA5AZMI0ABGbADNisMw0LEwwFWAwZQQQWIwEITCMECsxYgEVDQOAAxJBpBCBhgqEAiyEhuit9jCkLURYCk1JKaR+pSOlwWGFrq2y2ytZWSOkFlIUoC+GAlV4wIIIw6wSEBQQDpmGGzIDAgdlgGhYiCEZkCEaECAcDAoKGQYggGJAhGBEQCBwMCAgaBiGCYECGYERAWEAgIGgYBAQCAgFhhgQEIAsIAhANQwBCQBAGsSEMQkAQgMxQAEJAEAYxEoBMQwSBaBgCEAOiKIQkBkzaeyKllLZSkdIhcG6hfth2AFNca+HcpfpernDuUn2v7XuAY1xr+dxC/TAH2PGjkx8EnuU2CDbUgICaDTUgoGZEQM1IDYiROkBATaNmqBYIqGvW1TVIUDOiGmpg4XL/4rFj1Q/3V7r3s8skKFgjCjYrGBADZoNZI8wGs0YUbCjYUCDWFGwoEGsKNhQMiDUFGwrEmoINBQNioGBDwYAYKNhQsEYUbChYIwo2K1gjCjYUrBEFGwo2FIg1BWmfCG6NmpTSoVWR0iHQ6Sx96PEODXMtcbVOd+kdj3d5B5hriYNMEo0fIGH7255Z9v2klPZKIW6JkpTSoVWR0qEidkakQ23GpJRSSmk/qUgppZRSulVE2iW2BbwB6AJ9SZ8mpQOoIqV9RiKllNLBFNwaNel6vvSxJy7+HoKH7p+/BMyT0gFUkdIhMD03/e13z018EpjkWgvnLq++u9vp/iBj0zPTP3X30YlHgGNca+Xc0uoXdZe6/4qUUko7UYhboiRdzyJizbOkdEBVpHQI3D038UlJn+MGbD/1+U6XNXcfnXhK0tPA01yHbT6/1CWllFLaT0RKB19FSofDJFubYLMJtjZJSimltN+IlA68ipRSSimlWyOQuAVqUkqHVkVK+47YHWJnREoppR0puDVK0g2IlA66ipT2GbE7xM6IlFJKOyVSSmlrFSmllFJK6UAQKR18FSntN+LFOMfWLiCudIGtnUOklFJKKaVbrCKlQ+DcUu+jtleBFtfqPrfUe4ArPLfUe4/t7wGmuVbv3FJvgpS2yYbAgBAmzDoBYQFmwDTMkBkQ2JgNpmEhTDAiQzAiRNgMCAgaBiECMyBDMCIgENgMCAgaBiECMyBDMCIgLMAICBoGAYEAIyDMkIAAZAEmANEwBCAEmDCIDWEQAkwAMkMBCAEmDGIkAJmGCIxoGAIQA8IGiZQOJ5HSgVeR0iGw3O6++ky7y3Z1291TZ9rdU6R0E+owEWaqKlBZsiaCDQIFjZKBAETDIghEwyUBiAERBDIEJQJCQAgRBCBBRMmAEKGAAAFBCQKFCALREASgKEECAtMIQGBKQBCBxToHoIIB0whAYAYKBmzWmYaFGQuwGDKCAIuRAASmEQKBGQuwaIgBByCGTCMACTMWYDEkxEq/R7+GshCWEGkvSaSU0pYqUkop7Yht+rU5OjfB6eMz7DYzZmNGTMMMGYPBjAVYNIxpBFiMBFhmwDQCEJhGGIuRAIuGCUABIRCNgMBIEAFiJAQKE4AEBAQgIGQUEIAEBAQgmQiGBIRAAYFB4GBE4KBhTENAgBmxzTqJTrfH+YUlur2gRCD21P0vf/efC7p/p4B7Q7M/8tRn/7tfJKVbwIBI6WCrSGmfESntXwZ6tXnp3XNMTlS8GKZhGsY0DGaDbQZMw2DGbMyIaZghYzCYMYMZMKZhMGMGYwZMwwyZho0ZM5gBYxoGM2YwZsBmnWnYmDGDGTEGgxkzmAFjs840DMYM2KyzaRgzZjAjtlljYLJVcv/peZ45f5nF9iplWbBX7n/5u7+uXz/3bx09akBa/Bf3vfxH/+snP/c/fAtjD3zBIw8+8Z/ffYaUdqggpYOvIqVDYGZ2+tGTc60eUHGt7vOXew90u92TjE1PT58/dbT1BDDNtfrnl3qtTrv7KlK6Sl0H9981w+RERdq/wibq4J6Tc9T1It2VPirEXjBLP+3oscbuU/cvfvN9L33nX67V+t9L99xffZJ7X/ZOyuro3zv72CM/zqEiUkppKxUpHQIn51pvlHSRG7D9rie63fczdupo6yclfYAbsD3faXcvkNIVbDM9UTEzOUHa/2zTr81d87N87qlLlIUQu+vE8R8l6guv5Cp2j37d+3ng5/tscL3yN+9/6N0TZx975Ic5JETaVQZESgdaRUqHw2ngIjd2gs1OsLXTpHSVMMzPTZIODhuqsuDITIv2Sh+JW+7UyfcxcfSyRU3UFwj32S67B/XydwI/zGEh0m4qREoHXUVK+43YHWJnREqbhM1UqyAdLLaZaFUsLfdB3HITRxd/M/oXsXlRavpPktI2iZQOvoKUDjyzO0xKmxiKsiAdLAZaZcFuKeC1Ni9a1O2fOX7knbzkC97zpaSU0h2gIKV9RgghhBBCCCGEEEIIIYQQQhRshxBCCLEdokAIIYQQQgghhBBCCCHSHUIQdZAOFgG9Otg15dQvShUvmuufmTq+ZK8884mXvOyd9amT7yOlbeiT0gFVkFJKaVsKieVekA4WSaz2+kjsirOPPfIj0sy/4CphaK8E5xf7LC3X1GGuy2BDRJ+6Xiqmjl7+OQ6uECBAgAABAgQIECBAgAABAgQIEEM16XrOMHbuUr+yfdz2q22/2vYbSemAKEjpcFhha6tstsrWVkjpKoXg4tIK6eCQwIbOcg9J7JYoyx+jsdo35xf7XGrXLHVrXnPfFL/737+WL3nlLM9f6tOrzZYMgV7HwVVwa5QkbL/JVzi30G8z1um2X/340wsXH3/60qcef/rSp4CPkdIBUZHSIXCh03/YdgBTXGvh/FLcyxXOL8W9tu8BjnGt5Qud/sOkdBVJdFb7rKz2mZyoSPudqErx5LlFQIhdNUHj4uXVS3/w/oeP/5t/f5F3f/AMP/SOl/HlX3uK3/mGu/kb7/sT/sdfeJr5UxNMVOJGCvufc5CJdOtc+PwzC1xJ4ioipYOmIqVDoLPU/VBnkesT1+h22u842+EdmOsTKV1XVRScfW6RV7zkOJJI+5MkqrLg+ctt2ss9qrLA7B6Z19cBrYnyV1//Tae/9/VvPs27/9lZXv/QLFzsQS/4+z/6Kr724WN809/4Txy5a5LpiQKJTYqiRTem/zEppXSIVaS034gXR+ycSGlHJCiKgv/85AJ3HZ9mfm6SnRIN0RCiITaxQRIBKCBoCBRBIASEgAABoUAhgoZAAcFAYAkCTENAgAlAWEAwZAERGIGAADMQWIIA0xAQYAIQNutMw4EZEBjMiAkwGDFkMAOBzZgwDYMJBmwaYsCmEZgxgxEDdjAgCST6/eCp5xdY6vYoi4LdVsFL+sBMS1/ASsBinz/1xUcpBPQNfcP5Vd78DXfz0dmSb3zfo5y7sMrsbMX0hCgLIbUoWvN/9/xnHuEgE+IWuERK6dCqSGmfESntb5JoleL85WXOXeowO9lierKikABjrmLWmTGDMUMGs8EYDGbENEzDmBGbdcZghkzDDBkzZDBjBmMGTMMMmYaN2WDTMAOmYYbMgBmwWWcaBmOGDGbENGzMmBkyDdMwZsxgRozBDJkRmzFjGgYz0u/XdFZ6rPaCshBlWSCz63oF/6Ys+AfPX+z/mfanFpk9PcUv/sgreOnLZqFbM1QbLvX4ii+fZ+HXv5x/9stP868/sdT/P/+4V52cnaIsp37ozGce+YckLrTjtBvsvbdJ+nlSSruqIqX95QIpHQASlBJlUbLaq+mu1owEDoFYFwFSMBCAApAIQDQiCIEYEAEoAAVmLITFOkeAaAjTCEBggqEQFutMIwIkBkwjAIEJQGAwG2waAQjTMENmIABhs840TCMwYshg1gS2uJLNWGAEZsisCWyxxjQMAoIAhAwBiIYAm1ZVMGD2Rr8//emJYpFius83vu9RPvLTX8RL75mGbg1mQxgW+1CJ7//Ol/D9P3ZPpfm36MnnOCyCW6DTbtNps+fuv/vIOfYdkdJhU5HSbWT71cBHgXNA9+JS/wFehJm56W+fn64+CUxyrYWLnXh3p93+QcZmZmd/an6meAQ4xrVWLnb7X9RZ6v4rUtoGSZRirMBik0I0CgYKGmKoYEwFBRsKGqJRYMYEZoNVsMY0xJApGBKYDaahgjWmIYZMwZDBbLBpFAyYhhkyAwUDNutMwzQKzJjBrCmw2cRmrMA0zJBZU2CzzjTMkCgYMogNZu+dP/MIJ+971+VY6Rz9b77mJPQNYW6ob1jsw0JwyBQcbAX7yxmxPc9frrE9DTzI9R0B/r0kk9JtVpHS7TXx5HOLJ4AT3IT56eqTkj7HDdh+qtNm3fxM8ZSkp4GnuQ7bdJZIKaVte8Vdrb/Z67V+6q++5R7o1mzTZQ4ZiXQDtj8IvJ1ten6pBrEtnW6bM1063IAxLz197MuBT5DSbVaR0u3V49aYZGsTbDbB1iZJKaUd+L3f/drH+cxZWOxD32xP8UnSneSZM89e5nYQorFISvtARUoppZRu3vmV7+T5VXak8K+S0h4wKe0fFSndZkLsBSF2QoiUUtq27up3sBPTk3Dq2L8k3VHE7SGGFkhpH6hI6XYTe0PsjEgppW3x4m/DH3/qODtxfO5xzXz946S0R8636x+3/RQwwQubA35N0odJ6RarSCmllNKL5vj+gt//t3+R7gMgrm96EqYmF+kuH2FlBSZLeM2DL+cQkkTanzpL7Xd0lti2B04fFfBhUrrFKlI6HM6xtQtsdoGtnSOllK6y1KWm4frdcPHJD9KOt/OHl6B/FvwyUAEE15g/ekav+a9e6u5vvYoL55e59GVnpJeS7kDiIFkipV1QkdIhcKnrj9peBVpcq3upXT/AFS616/fY/h5gmmv1LnU9wT5n+xRwP9Bl78xL+jgp3YGCFmfOs+DH3vxK/ujTj9EN1qkFE38AvS8DdYGaEQEFMPkxGpr+2kdJKaU7XEVKt5kBcXM67farO222rdPtnup0OcXB9rcfO3vxneyhh+6fpyFSusMEFV2d4DsW3vY2LvnnULCJK6jOQNGB1S8BHwUMCHQJln5rxk+89fXcf+oPpQ+Q7lxCpHSnq0jpNitIL9IFiZTSLjKirykiSl4Zv0HFkz+HjnMtgSdAF2HqN4CaEQEFrFTfwpnqWzj3NP782z7L/Q++UuUjHEYipZS2VpFSOpB6sMoe65PSnaVmkmk/z9f33w6aAY4A4voEVOCKG1qu4Wz7FZx/1D7ztp/lgVd8n/QTpDvGBVJKVKR0CExPzz56fFY9oOJa3YVu/UCn3T3J2Mzs9Plj0+UTwDTX6l9qu9Xttl/FPmD7jcBFNlt46mLvXhB76bmLPXq2K65PDVI6JEzBso7zzSvfC5oHJrllujU8sfS9PPsfv9edt3+NZn76tzkcAnGQBTfJ9juAHwcW2Kx7frH/ACklKlK63cRNOz6rN0q6yA3Yflenw/sZOzZd/qSkD3ADtue7y1xgf/jYZ89e4hoCsbe6nTZnOlzXK+47zh3LYMCAMGHWCQgLMAOmYYbMgMDGbDANC2GCERmCESHCZkBA0DAIEZgBGYIRAYHAZkBA0DAIEZgBGYIRAWEBRkDQMAgIBBgBYYYEBCALMAGIhiEAIcCEQWwIgxBgApAZCkAIMGEQIwHINERgRMMQgBgQBsTNq5ngwfrfAUvAKW49wWrApy582Et/fU5z/3Obg6/gYCu4eS85+9zivcC9XI9I6Y5XkdLhcBq4yI2dYLMTbO00+0lB2ofCpg5ThJmcarEmgg0CBY2SgQBEwyIIRMMlAYgBEQQyBCUCQkAIEQQgQUTJgBChgAABQQkChQgC0RAEoChBAgLTCEBgSkAQgcU6B6CCAdMIQGAGCgZs1pmGhRkLsBgyggCLkQAEphECgRkLsGiIAQcghkwjAAkzFmAxJMRSd5WyFIUEEi9WrQnm/VnQFCB2TbeGPzm3ZL9X0k9w0Ik73qq41szsLPMzBVe62Ak67TZrZmdmOT5bsOZSJ2i326yZnZ3l+EzBmkudoN1us2Z2dpbjMwVrLrWDdqfNmpnZWeZnCq50qRO0221S2ksVKaV9T6T9xDZ1mMmJkvtOzlEUYjeZMRszYhpmyBgMZizAomFMI8BiJMAyA6YRgMA0wliMBFg0TAAKCIFoBARGgggQIyFQmAAkICAAASGjgAAkICAAyUQwJCAECggMAgcjAgcNYxoCAsyIbQZEoxALl5d5bmGJOqBEIHYsqLgvPgG02HWrNXz+M+8D3seBJ9K15mcK1OAKbnTarDs+W8xK6jBm+2PtNm9k7PhM8QOSPsiY7b/WbvNPGDs+U3xc0lcwZnum3aHN2PxMgRpcwfbH2m3eSEp7qCKl20zsDbEzYv+ZmZnl7uMtxO1n4NylHp1OmzuJgX5t7r9rlunJFi+GaZiGMQ2D2WCbAdMwmDEbM2IaZsgYDGbMYAaMaRjMmMGYAdMwQ6ZhY8YMZsCYhsGMGYwZsFlnGjZmzGBGjMFgxgxmwNisMw2DMQM262waxowZzIht1jhgbmaC2ZmTnLu4yGKnRymxU6bAVIDYfYLnlt9rv/d90k+Q7lgPAp9iwzyb3cNm97DZPJs9yAubJ6U9VpHSbSf2htgZsW9IDJw+3pqV1GGfCPtjj3f1Ru4gdZh7T0wzPdki7VOG2gbBvSePsLp6idU6kMTOGAj2zGoNzz/xZ4CPcJCJlFLaUkFKad8TIIZOs48IjggQdwYbSmBuZpK0/9mmXwf33HWEujZmZwqCxeI+oGZvCNAPkVJKh1xFSofDCltbZbNVtrbCPnRuoX7YdgBT3H7PnrvUr7iDhM1dx6dJB0fYVEXBkZkW7ZU+EttW0GeJu4E+e6az+h0cbCEOtJpbQBLbJYmtSGIrktiKJF6IJFLaSxUp3W7ipi2t8LDtAKa41sLlFe5FrLu8wr227wGOca3lpRUeRuw7nc7Shx7v0DC3n7jT2GaqVZAOFttMtCqWlvsgtq1wj/N6FQ9Rg8SWTMPcHMH5FVy/65TKDzzPwVRwsJWklHZdRUqHwFK7/aGlNg1zLXG1Trv9jk6bd4C5lthvJK4i0t6zoVWVpIPFQKss2KmCPheKh2BlCWuOLalAZQU2O2UbHICgXaMLl78a+BVSSumQqkjpNhO3ktgZkVI6/Hp1sFMFNZeLl8Bq4LKDKbkR21TTxwCzMwIH7i2DxICW238Z+BXSHcXsDgMipf2lIqW07wmRbj9JLK/2mZqoSAdHIdHrBxI7ZCpWeL58Pad6n6SvGW4oajx5FImdEThq6v4KUsFA0et9NS/S6770H9Lvd18Hric8gacMBjPBpI0nDExwhRUifqg1ec+PfuLDf3GZW0Dijie2T4yI6xNbE1sreGEipb1VkVLa/0TaB4oCFjurTE1UpINBAge0O8uoLAGzE5WXOTPxdZzqfoQoKm7E0aeIVVRNgM32Cdd9qFexCoaWlk6wTf/F6/5+2a4X+0hATXvh86BAgp5KtAJSiQroqcRdUahAhbjK9wDHuCVESiltpSCllNK2FBKXOj36dU06GMqi4OJSF6tA7FzJMk9MvRlWnof+Mu6v4v4q7q/i/irudYiVBbDBYsck6rpL3V8m+h3q1Yuw8Dz2d7Edl/sLP7G6+hy91efp9xaw+4yIIQlEQwxIgLie/4d06wgQIECAuDEBAsT1CRAgrk+AAHF9AgSIGxMgQIAAASKlXVOQUtr3BAgQIECAAAECBAgQIECAAAECBAgQIECAAAECBAgQIECAAAECBAgQIECAAAECxJ2jKgo+/8xlHCbtX5KoyoLF9jIXFrqUhXgxCtdEMcEzk19PsXoJ91dwfxn3OsTqedxfoTXzFibvupei1QKbHVGBVzp49TL16mWq6g3wkv/pmEYJeAAAIABJREFUNdIvsR2K/ndykwwY/QK3RnCwBSmlXVeR0u1mQKR0IEigouCzTy9wz6lZZidb7JRoiIYQDbGJDZIIQAFBQ6AIAiEgBAQICAUKETQECggGAksQYBoCAkwAwgKCIQuIwAgEBJiBwBIEmIaAABOAsFlnGg7MgMBgRkyAwYghgxkIbMaEaRhMMGDTEAM2jcCMGYwYsIN1EgQ8d7HNxfYyZVnw4plWtDk79U3cdfk3ibLAXsEOJme/mtbRb4a6D72nQM8BFTsTRPdpionXMXnsu8CG/rmfBP4SL+ALX/uPuLj8J68WN6coWsy3TvwSt0YhDrSClNKuq0jpNlNBeiEi7SOFhAvx1PNtylLMTbZoVSUjxlzFrDNjBmOGDGaDMRjMiGmYhjEjNuuMwQyZhhkyZshgxgzGDJiGGTING7PBpmEGTMMMmQEzYLPONAzGDBnMiGnYmDEzZBqmYcyYwYwYgxkyIzZjxjQMZkywvNJjqbNKWRSUZYHMTSnd5alj38rrn/o+3O9SHvnzTB37dlBAfQEooHcPTD4NrtgRL9M69lepJh4Ed8B9OF9/l89/6K06+W01W1iun/wqu0YSN6OaOPqRD//OW0m3jtg+sTWxNbE18cJESnurIqW07wkxMD0z+1Mn54qngAluvwsXFuu/3el2TnIHkqAqC2xY7PQIeowEDoFYFwFSMBCAApAIQDQiCIEYEAEoAAVmLITFOkeAaAjTCEBggqEQFutMIwIkBkwjAIEJQGAwG2waAQjTMENmIABhs840TCMwYshg1gS2uJLNWGAEZsisCWyxxjQMAoIAhAzBiABjWlXJgLl5ch9J/IeT7+YNrZmaidMl0YHoM2KIh8B/ABgQ29enKu+CaAM1Q8sr8OgzfZ/7tbfo7r/wL7mBGn+3uDkGyqL1AW4lkRDbJ65wjs0WQVzhAptdAHGFRTY7B+IFLIJIaS9VpHTbibQ9J+eKRyQ9zT5h+690upzkDiaBCiHWFFhsUohGwUBBQwwVjKmgYENBQzQKzJjAbLAK1piGGDIFQwKzwTRUsMY0xJApGDKYDTaNggHTMENmoGDAZp1pmEaBGTOYNQU2m9iMFZiGGTJrCmzWmYYZEgVDBrHB5par4jKP3v3jvGHpx56iPvIA9NlgYAX6r4LqP4GngJJtCUO5+BPEkfdCzbruCnzm7K/63K99UHf/hR/gOuz6u7lJRdFivnXil0m77nIXbP8ucIKRC5e7bLLQ4aO2V4EWsLiwHG/gCpeXeY/t7wGmge7lZR7gCgvL8QbbvwccAXoLHSa4wuUu2P5d4AQjiwvL8QZS2mMVKaX9T6xZYX/pI1I69OQ+pXvAZ8/j1z6A+myiPvQfgnoOl38AagMTQAWIGxO9+Hd/ZyK+9b0UPTbprsBnzv41f+oXHubB41+pmTez5gtf+/e42D0zz02qJo5+5MO/81bSLSau0em26XR5E1cT67rL7Vd3l9lMrOt02qc6HU5xJbGu2+mq2+HLuJJY1+m26XR5E1cTKe2pipTSvidGLrb7H7W9CrS4/RYvdPpvECndIVxC8dgK9SpQAjUbAlQAD6D+K6F4FutRQo8hJoEKKLmWmJhb+Qam5sRibVZW2KS7At3n/jQXFuzzH5rTyW9r02jXC9+J+6CCF8tAWbQ+wC0mUkppaxUp3WYGRNqOTqf76k6HlNLtoALq4qj1+4ivBLqA2RDAKqgHPob8Jkr/KcyjuPhjoA1MACVQsG5q4m/pi7771/3kr87x+HNLrKxwjeVV+PQzSz7/f7xdJ7/5ny62l79tsuKmFEWL+daJX+bWChAHWHALiGvNzs4yN8kmSyvQbrdZMzszy9wU65ZWoN1us2Z2dpa5SdYtrUC73WbN7Owsc5OsW1qGdqfNmtnZWeYm2WRpBdrtNintpYKUbrMCECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgSI3SeEEEIIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBCCCGEEEIIIURKh5+g5kj4U8BloOL6DPSBLqiP9CoKvxXV3wj1vUTdJmIRxzKOFVjsfIWf+POv0n1vaXOkFPifcj3LK/Dokz/tS7/02+cXLr+Zm1RNHP3Ih3/nrdxiBQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAYKNglc5Ogq8xNssncFLO6wtwkH+cKc5P8gK4wN8kPcIW5ST6uK8xNMcsV5iZBV5mb5OOktMcKUtqC7Qnbv2X7vyXdPgIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAASKlQ88qIJbvt1v04jfALaBiawGsAkuomKcovoaqeBslX4ljHjNHv3MMzr7m0/7D//W3Waz/L4ry4yi+EPxLXK3fgz9+9qtY6Z3kJlVF6/2k/eZBNptns3vY7B42m2ezB3lh86S0xypSuoptGl8J/OxKzRe026ucODrxv7FbREop7WumYCIuQ22gRCzR0y/SKv9L0By4B9RADZhrGegDfaBAejlV+QWAoDR0+9Bd/CoIGl8HBaj4Pqb5Sxw/8Y9A7+DiZahqfuZXn4GpgptRFC2q1olfYReI9KKY3WFApLSvVKQ0ZpvGO7urfKDTXUXiSqvsYzOzM4/OtugBFdfqLvV4oNvunGRsenbm/FyLJ4BprtVv92h12p1XsU+IlNLtZAomfQkwdg0U4EVW63+CyldS8gBFeTfopUAN1EAAAQ4gAAMBBLAKrLK1+BmOHvusXvPWdwLv9DM/9zqi84O/9UeX/vrcVMHNqCaOLP7+77yVtDsktk1iRFyXxJYktqSCFySR0p6qSHc82zR+trvKX+l2V0EgcaDMtnijpIvcgO13deH9jM21+ElJH+AGbM934AL7hUgp3UZWyUz9DNQGakYKxAz0n6Dmc/R7NdAHHaEo5hGnkSYoynuAKVALivuAGqqAsg/qQxFQGipAggBqQwCd/m/d89U/TxE9Jr/hIrXVrc6c59iRKXbMNIwFVTH5t0gppdukIt2RbNP4EuBnV2q+uNNeZUDiWuYgOA1c5MZOsNkJtnaalFIaMyWT9XMQwgo2K4GSdQ6ifh54FhNAAAYCEUyUq5w91+L//qOXcs/Re+n2jvDpsyW/+R97uN/jNfe3ePUDM5w42uLPfvER7r14lucvi/tbJSFNd2ZLykJg46gBgwGbIYFthHAYAoSppmYer6P+D+7HsxP9ox8g7SKxfWJrYmtia+KFiZT2UkW6o9im8X2dmv9lubMiIYbEjYldJfaG2BmxfwiRUrqdxEQsAoFd88IEVKwpVVMVXagWoXeKz059Gc994RfznrNvpd2aZvKhYOI1oLLk00+fYeWx/4/Vp84Sv/ws04vLTLDCcneRsiggampDUZW0Tt6HJqcojpyguu8hcE05PUPxkpej2hy/d5bplz6EMKX0sqLkZVXF0tFT/Pr/+6d/9F9z64XEQVaTUtp1FemOYJvGP17u8YOd7ioSCJEOlpmZWY5Os29cXoZOu01Kh56E3IO6Bmq2o8C0ihUo21At8NFz38p7P/9OPnzpSzlSLTNTLDNTdplTG9VADUjMnDiC3vRVUFaorKAooShQUfz/7MELsKZ5Xhf2z/d5n/c95/Tpnp7pmd2Z2cvsFXZlnZVilmVZK0piUkYFJVZiSVWsAKUxhC00mkuVBEyIaGJilWCIRFCrjBFyqRQbJeRSqJSwLDeRhWVXYC/s7Mzs3Pr+nvec932f/y+nu+fSPTPd0zPTl9M9z+ejjj+h7c5N3vwuhrWqRmu0QbWBVqo1MdAY+rJ66nERret0XadNusOnzh7+6J/8pfqmH34oP+ra6tzaJm6Scn0UYjQ6WHqj21pVvRd/Zzn42vnO0jmJA6YQr165PgpxECTOu2PLdpIdB0RV/exix4eMRre9UE21ptJcSaeZTXbpTzqzeMBf+eJ/7Eee/Hon1kfd2Z/27q1HdGleUhXDWg1r55SLJCRsHTY8/RhVXiihS8QFy0VsbkwQFxv25uZPHP0R/KjRNRdXLy6IlxZXFlfWeXkxGt1YvdFtp6rs+yb87b1ma2e+dLB1Xpu4OvHKdA6ge/E5B8cRo9HrQhnMpFbU4KVE2eh2mR73qdMf9J2f/8/8+Mmvc3d/2vZkx5s2nhDlVauiyuUkkZCQRMJQpaokXmTnZPMffLr84Hvj2orXvbh6cWVxZXFl8fJiNLqheqPbRlXZ91d3B//JznwpcWuIa2HPlS3FxZaubE8cOGd2PVhVDZtuvsfP7OqNRq8DqWY1OcqwUhm8UJ+16eSU1XCHr/+1/8tPn/2gu/sT3rHxiEma6ykhiYQkEhKSIIYV/YYXGfbmdp848j580mg0Gt1AvdEtr6oewN/Za37fznzpnMTrynzwYFU1bHqxU/PB/S4yH9xfVffhqBfbnQ8edIAkzlss5h9dLMrBEYnR6LYXa4vJm6mlquZim92ebvolP/Ton/Ntn/1L3jQ74YGNR3Wa6ykhiYSEJIIkEhL7Yj2UqcsaXGOJ0eg5VTVLsjQaXaQ3uiVVlX1/BH972dw9ny/dquK12z27+OiufeXF4rx43u7ZxUd2+YjyYnFeHCTxvBiNRjdWanBm9i6GXbrBOcFWtyBn/cFf/f98fP7V3rn5mGnWrqeEJIKEJBISkkhIIiGxr3MFndHo8pZeu2+oqv8d34QfTWI06o1uKVVl33+xM/iLuztLMbpEvDIxGo1GLysG68m2dev/pbZ6T+lsZJec8FWf+IQvre517/RJneZ6SiIhIYmEhCQSEpIIkkic16rp0rnYZGPb5t2eNLrm4urFlcWVxZXFy4uXNl+5v6ruw1EXbOGLSZ5y9Z4+fnqpyo8c2pr9SFX9KfxwEqPXr97ollBVd+DvL5tv2JmvnNOJ0etDYjQa3WQTg/Xkjp/Q9t7TdzGZPupf/fVf8KX1vY72p3Wa6yUhiYQkEhKSCBKSSEhIIiEJQSs6l9i8s/OD78uTRgfJEy51xqWOu9RxlzrjUk94eWdcxmK+85EFH6E86547t/8GvsPVa4WExe7SzsIPbR6a/VBV/Vl8XxKj15/e6MCqKvv+TfytVfPW+XzlJorRaDR6Hevbjt+s3/2PHqx/+Gf1a9/zhb/mV3cf9Ib+KZ3mekhIIiEhIiGJhIQkEhKSSEhIIkhCixfqZ065DmJEvNBiRVX9DI654PhiZV88a7HysapaYoozi5WHiGfNV76rqr4ZW1jMV95KPGux8lBV/TyOYLVYmRHPWqyoqp/BMRecWaw8RFxZXOS4V6jzvITlYmlvx18/dGj216vqP8f3JjF6/eiNDrJ24vQqiYOgOcAOb21948bMJ7DhxU7tLn3nfLH4ds/Y3tr6gc2Z78VRL7a3t/T+s4vFjzkgYjQa3WyT4ZQnvur/+Ml//k9+h+X0Lf7qE3/Om6eP6TTXWkJEQkISCQlJJCSRICQRJCSRkJBEQikv4R8YXR/xIvOdhTkf9kLxnPnO4j1zLxDPWews7llwj4vFc+Y7i8z5aheL58x3FuZ82AvF9RUvkrDYXVrs+kvbm7O/VFV/Gd+ZxOj21xsdZEnnoOhcL/Gabcx8IsnnXEZVPTrf9ZzNmUeTPIbHvISqcnbXARKj0ejmSq28YXbK73rsUw/eN/Wr908f12ftWktIIiGJhIQkEhIiEpJISEgiISGJhIQkUnGxyca2rTv9r66HGN3elq6x+e7SfNdf2Nqc/YWq+j782SRGt6/eaHR1ynUS18SGK5vFJWaubCMOkBiNRgfA9pGjR/1X+bX7v79+fff48itcQwlJJCQkkRCRkJBEQkISCUkkJCQRJCSRkEQ64nmbd/Z++KH8U9dFvN7Fi21vb9nsXWJ3zXy+8Kzt7S2bvefsrpnPF561vb1ls/ec3TXz+cKztre3bPaes7tmPl941vb2ls3eJXbXzOcLV2sxuL+q7sNR3JXk466Rxe7SYtef2dqe/Zmq+mH8qSRGt5/OaDQ68IIgCIIgCIIgCIIgCIIgCIIgCIIgCIIgCIIgCIIgCGI0ulSh7CvK8wpVVJVWpbXSqrQqrUprpVVpVVqVVqW10qq0Kq1Ka6VVaVValdZKq9KqtCqtlValVWlVWiutSqvSqrQqrZVWpVVpVVorrUqr0qq0VlqVVqVVaa20VubLtrLvqT3vO7UzWDWvWULXRddFF7pEl4ggCk0MFUOVSnRddB1dogtdokt0oeui66Lr6LroOrouklJoxWLlH7tOgiAIgiAIgiAIgiAIgiAIgiAIgiAIgiAIgiAIgiAIgiAIgiCur82evMBm7xKbve1cZLP3cRfZ7H1bLrLZ+zYX2ex9PBfZ7G27yGZPXmCz93GvwM7ZxUeePrV47KmTi0/jZ10Hi/nSiTPLP7nX1L4fqSqj20tvNBrdMra3tn5gc+ZRzNx8x3eXvnu+WNxt9LpUqCplX9HQYdI5L/Z1zqsiqCrTLmazmUlKaxSaRlGNocqzSlHOKxdUeUY5J0VzQdCqnBM0+4qgOacktOa8oAWtBA0JrTkvaCkaVWU7yw8sq744Nez81R/fev9f/sndTxw7FJt9JF6R2JcQWrEaYm8oy1bWLTb6+uJmn8e3Zt2j2xv18NHp5FG9dvxsfeD0nj96ZIN+QhIJSSQkJBEkJJHY16lisY6v3Nz9W//but60mrgjLlh6To6x0yW/bXSjPYBPe95dLnWfS93nUne51ANe3l1ehcR1tzNf2uGPHzo0++NV9X/i30rSjG55vdHoposbI16ZODDivM2Z703ymAOiqr5lvutuo9eFKvtKK5Kmn/QmfUwSk0lnMglFc0G1cl6ohlCKRkOqTGad2ST6SWfWT2zMeoe2ZmooVc1QlKLRELRqIs5p9hVB0xApmguCVk1Es68ImnOaVDQXBK2aiOaCFM05jca6lj/18KN7Jl38+7/7kH/jvTPf9PfOeHqnHN2MfkK8vMJyiN2h7K1jMikfflvnw2/vfc1bJ77qzRPL1t5S5S3VPDQUVYXY7Ju/8bPlf/l1jk7pQkRCEgkJSSQkJNF1LJa0Vv78+0/+6Kc/y3IgLqiyr5yzuXXIF8+UjUNoVOdXlJ9K/Fo1P/eG3ieSeAnNrW0wOnB2dpZ2+MOHtmdDVf0k/nCSHaNbVm90oMVoRDxnz8GyjtHtrKoUWjGbdKZ9bzqd6EMr57VCMbRGUS6oKucVVShKURQKbbW2WtFQjapS1cz6idmsd+TQzPbmTGtlqFJVqsqzyr5yXinnFeV5VeWcsq+cV84pivK8qnJOeUZRzimKcsG6lad3yn13dH7+zx31Nz+266/944V1i+1ZbE2jnzhvaKwb66EMxbLFYlW+7l2dr3v31Iff1nvw/lis2F2zuyqfP9EMVc4ryrNKF77ta+InfrMMLfqehCQSkkhISCJI6BLLVr7mTc2pPdaNeGmLxY6Hv7CjPKt+V5XfZV8Vv711yOdO1ucOb/uVdfnl+6a+J4l980kXrZVyS5q4BhJXLXFFiStKXFHiZSWuq4hrYTFfWfD7tren86r6OfyhJE8b3XJ6o9FNVojX7AlXdtyljruyJxwocc7uyseqaompm+/M3spDxOj2U8XQysa0s9FPzTY6NThvUIZWygVVXrUkzuns6+yLJobGfLFyZmcp4shW784jW6b9xDA0rcrNVsV8WXYHvvVrNv3533vI//sbS//Pp5b+4SdXvnCiJLzpjnj7sXjrXb233dX54Nt6H37bRImdVdlb84WTTZXzqlzR0Di+w3/4ofirP8PmLLqQEJEgkZCQRIKOvTV/9MtWFuugvBoJe7s7Hnl45x3UOxrf+MXNQ//lr3xh75Of/dLO1uas3H1k03pohlaqymh0Lc3nK/u+Znt7+lRV/Rq+PslvG90yeqPRTdYV4jVZrnysqpaYerHFcuWt8bzlyndV1Tdjy4utliuzODjigsVi9z2LhQMlRreTKlqVjWnnrs0NuqjWDENRbojYF7pEJ1rjzGLlxM7SodnUXUc2bG9ODUMZFOWmWg+cXJTTi8GD9/e+5m1Tf+UbyiTOG4rVmnVjb2iWa548W9ZVnlXlFVms+f3v4gd/iVZMukhISCIhiYSEJM7ZmpW3Hy1f2olrJdhd7NhZ7LzveCvD0Ew63n7vUfcd25JMrIemVakyGl0z8/nKvt95aHv6+ar6LP5Ikl8zOvB6o9HN1nnN5ru775nvurJ4znx39575rntcSRwcMRpdV4VqZdJ37jw00+mU0lpRbqqEJHqxt1p75KmVjT6OHT3k8NaGoZqqUm6uVixWZbEqlCrPqXJeKeeV16QVZ5fx1fet/NzjGza6kkRCEkFCEgkJpfPGbdaNKtdcMOli0k0MrfnMY6f8yy+ecOyOTW86tu2Ndx2yWjdDa6rc5uLqxZXFlcWVxcuL6yquq52dlR3eub09/dWqehx/JMnPGR1YndFoNBq9rlWVqubI1oY7D2/pEq1KlQMl6BL9pLNu5dGnzvrcYycs9lb6SSeJ15N18XVvXRsGJl2nC12iC10XXRddR9dF18VkUk4NE11KXF9dYtp3tjZ6ZxYrn/zt4376k4944sSOzWlv0kWMLlauj3LTNTfIfL5y8uzq3lX5eFWtquoDRgdSZzQa3RRV9e9U1W/UvlZV66raq6pF1c9U1XtdJAiCIAiCIAiCIAiCIAiCIAiCIAiCIAiCIAiCIAiCIEa3qiq6cPeRQzZmE601VQ68JPpJp7Xy6PGzPv/4KVVl0kW8PnSJf/q5pRNnTpv0E+kiHekiHekiiYQkusS6eHrR6eKGmXSxMZ1Q8S8fPeFnP/WY+e5gNp3qug5BEARBEARBEARBEARBEARBEARBEARBEARBENdKEARBXF4QdOUlBUG8tCCIl9YVQVxeEARBEARBEARBEFdt5Qabz1dOnl31+G+NDqTe6GCL0VXY3t78jVlnhd6LLZZrb50vdu/2jO2tzadnvYex5cXWy2Y6n+9+ueugqhTLL51aTc+cPatVaa20Kq2V1urDG1tbnxqqfnySfL1zYjS6pgrVymzaObq9baimtXKrSaKfxGrdfO6xE+67a9uRQ5uqNVVua33H1rRz+tQZ0weOWVUnKQlJJCSRkJDERh9fmHfecaQZBjdUl5j1E+uh+aXffNyxOzZ8xQPHbEx7q6GpKgfA4FqIqxcXxEuLK4sr67y8uK4KcVOcNTqQeqPRbWDW+VCSEy6jqr5jzvd5xqz3PUm+32VU1V1zjrs+Pv75x09Oq7msxc6OT3+x/tAnH939Y86L0ehaqla2NnuHN6daa8qtresi1Xn0xI67ls09R7c0VJXb1aSLX3lsJYmz813b2xuqIiEhiYQkgoRZFw+fmXj3HYObIUgXG9OJ0/OVn/7VR73zTXd65313WA3N0MpNNjG65jqj0aV6owMtbn9xTdyLEy7vWFzimCu7N67eqlH7XNn7cfaps8PXRJRyJYudHbvLkz88v/M+XagyGl0TrZXtzamtzalhaG4XSfSTOHV213I9eMsb7rAemqpyO+o75ssym3aeOnHGXXduWw1rqUhISCIhCWHa88WdXt8t3UwJ/SQm3cTnHjvl8RNzD33ZvfpJZxiaMhqNbme90Wj0ms3nu15ON8lvn9xZfbfWXK1kcuTU2aUj2zNVZTR6rVqVQ5tThzanhlZuN8Gk6+zsrT38xElvecMdqqhy2+m7+MSjS3dv984u9izXa5OuIyWJhIQkEpKY4Ys7nT6FuNmSmPYTu8u1n/61hz30nvsd3pxZD4Mqo9HoNtUbjUY3ylk1/DHiaqVjsVo52m1oVba2N35jxgq9m+/MsnxgsbNndGuoKrNJZ3tzqrVy2wpdYrFce/jJM976hiPWQ1PltpEw7Ti9V954JEo89fQZb3nTMcMwSEgiSEgioevj+F5v1ejCUG66hH7SaS1+9tcf81Xvuscb79y2XA+q3JLi6sWVxZXFlcXLi9HoxuqNRjdb3BjxysS11shbvQJd4tTZXW+++7ABMz6U5IQDoqp+YZcPGB145Zw4enjD0MrtLph0ncXuyqNPnfWmuw9btka5LUwSnz+xNu2c1yWOn5h7x1uOUR1KQhIJCUkkbEx5eKf3ho21QRwUXRebs4lf/q2nvP+d3H9s23I9qHIjnfbaLb16T7jUGZc67lLHXeqMSz3h5Z1xvRViNHpObzS66eLGiFcmDoKkQ4eyb9PB0hOjg6+1cuzIpvL60nWdM4ul42cWjh7ZMrTmdtBP+MyTa/0kzkmiwhMn5u45tq01EhKSCBKS6Lvy2E7vvs21g6ZLbMwmPvHZp5TyprsPW64HVW6I4tuq6vdg06tT63JCvMiqqKqfwTEXHF8V4jmr8rGqWmKKM6vBQ+I5q+a7quqbsYXFqnmreM5q8FBV/TyOYLUqM/GcVVFVP4NjLjizGjwkrq/OaHSJ3mh0e9hzZUuXWrqyPQdEFQkJjb9QVY9i5uY7vuYtidEB16psb0z0k05rzetJwqTrfOnkwqGtmT6dVuVW13fx2ydX+s5zJpN48qkz3vTGOyxXa0kkJCSRkDBLPLbX++oU4qDpEpuz3ic++5Rz3nT3Ycv1oMp1N18s/12vRVgP9a3EC83ne/Z92IvEs+bzvfd4kXjWfGfvHtzjEvGs+WIv+GqXiGfN53v2fdiLxGh0I/VGo5ssXruBB6uqYdOLnRoG98fzhsH9VXUfjnqx3YEH49qIfYkopURctWJrozfpop90FovVR1qV0ehqFSLu2Nq0as3rUUI/iUceP+Ndb77Laj0ot7a+4+ETzaSLZyWx2BvsLVem04mqkkRCQhLBTHli0ZvEgZWwMZv4xGefksR9dx22XA8OvGLCsimj58VodKneaHQbOHt276P2lfJCES90drH3EXyklBeKuFbpbHUJAAAgAElEQVSCqrIaBrtt+LnEjnLI1QrrofnCE6cJdx7ecHhrw3o9GFoZjV5OtXLH9sxQ5fWsS6yH8uSpuWNHDmmtuZVNuji7N+g7l5hM4qmn5x54613Wq0FCEgkJSXTh8eXEJOUg6xIbs4l/8Zkn/J73zRzanFoPTTm4gsFL297e0Me34T4XfGld/uZ8vudZW1sbPzCbeBQzHF8Ovnux2LvbM7a2N35qFv8Ih3F2Wb5+Md/7vZ6xtbXx9Gzie3AMy+XgTYvF3rd7xvb2hj6+Dfe54Phy8N2Lxd7dRqMbqDcavYxy64h4JSKul2BdZdWaNpROPkinKVerS5zdXTpxdtfQym8+Mrhjc+a9D9zt0GZvvW7KaPTSqph0sbnRG9bl9a7r4slTO44e2pCuU1VuVX3HLz+y1HdxsUkXjz911tsfuEs36VASkkhISGKdzullpwutHFhdYtb3/tknH/H7vvIBXdcZWnNQlcvrQ5IfdJGq+psuMpv43iSPeUZVfcuCuz1jFv8oyX/nGVVlwe/1jNnEw0m+3zOq6v4F3+4ZfUjygy5SVd+y4G6j0Q3UGR1oSSSRRBJJJJFEEkkkkUQSSSSRRBJJJJFEEkkkkUQSSSSRRBJJJJFEEkl0idErNyitSpB41bpEP+lM+87mrLezXPvpT37RU6d29NOOIAiCIAiCIAiCIAiCIAiCIAiCIAiCIAiCIEYHUFXZ3ppqzWhfQj/pfPHpM/pJR9yy+i4Wy9J3LpFEJZ46sWPaR9dFl+hCl+gSXZhN4vFVb6IcdJMupv3Ez3zqUf2UbhKCIAiCIAiCIAiCIAiCIAiCIAiCIAiCIAiCIAiCoEN5LY661JZLHXapwy615VJHvbwto9EN1hmNRtdchXLtBZMutjZ6v/xbT1iumq7rEARBEARBEARBEARBEARBEARBEARBEARBEKMDpkjKoY2pqjK6oEvsrQZnFnu6xK2q7/ilR5YmXbzQpItHHjtjMplI6Lrouug6ui66LmZ9eWI5M0m5FUy6WK2aX/z0Ezb6icTBVJhQQRAEcXlBEC8tCOKlBUG8tCCIywuCIAiCIAiCIAhiNHrVeqPRzRav2db2xjfO+AQ2vNipJd+5mO99u2dsbW/8wIzvxVEvtrfk/Yv53o95tToMrkrCclWmU1etS3RdPPzEGV/25rss22A0ulhTDm3MtFZGl+q6eOr4jne8+agaSrn1DIVlPL3szfrebBIbk+jFbMJTZ1beeGjt4TOdSVeSCBKSmIinlr0ubhn9pPP4qR2PHT/jjXduW62bgyZo6Fy9uLK4sriyeHkxGt1YvdHoJovXbsYnknzOZVTVo7ueN+PRJI/hMS+hqux6dcorV9XQeSX6rvPY8TPe+7ZjDEajS1Tj0Gavqowu1SWWq8HO7spG31PlVhJ8/vjK//jNb7H81D823dj0z07e6/SwYaMvH33ybb7+nbz/zs5nT09sZJCQRELCFMeHqYlyq0jY6Cf+xW896fd/YFuXaFVGt4JCjEbP6o1Gt4cNVzZzqZkr23DDxHooM0G5Wl3i5HxPl4jR6HlVbMw6SbQqoxfrujh+eteb7zliGMqtpLDRd7723Xd4cP2rzO7wp/NpgvRU5+Sxt9td7fgHk29yuCtdSkISQac8vZqZpNxKui7WA7/+hePe97a77a0Go4Mv6YxGF+uNRqObKvaFeIVClzgnKKPRBaVsbkxVGV1Glzi9WHpzlYQqt4wSS4es11OGe1kdQUf21OrXDOufd+Sp33SnJ331oa/ymbzHNGtJJCSR0Bpnh06H5tYxnXQ+8+hJ777/TpNJDK2MRqNbS280Gt2yDh/etu97tjanDXFjHcd37+yu7jY6UKrK1nRq3ZrRZYSui5Nn9xw5vKGq3CoqGzZ3P+MdD/9pw7pp6w2tnlZ1EhuSGf29JrXtD63/a//N1t+1pZOQkCCdrnh8teHe6VKruFUksTGd+JXPPeFrvuLNhuWaciBUooaBCnGV4pxyOXFlcSUl4uXEaHQj9Uaj0S3r3nvvl+Qvukmq6luS3G10YBT6riMxurIucWqx5+iRTU25VbRuy52nf9zG7m9Z9XdTQSe5C/GsVQ553/p/Nuv+rqpOl6bSWYZFx0Y4Oznm7m6u1ZphJdZuBZOu89iJHWfO7tna6A1VDoJUmaB1rlrivHhpiStKXFEXLysxGt1QvdGBFre/EvHqlasVr0SJeOWCauV6a62shuHH3FxrowOlqkynE6WMriyJnb21KhKq3BIqvUNn/7mWTTJB56U0E3K3P7D8n/zfW39CrzPv+PDwqD+4/JgHlp9ysjWPbH9Y2q4n7/gG0+G0SVugOcgSZv3Eb3zxuA+8537Dcu0gKKPR6Gr0RqObrIvXJM57wpUdT1zsuCt7ootXJahgcNWCoZqrVcXeavCeN/YPVNUv4ZAb7wweMjpYio3ZVJXRywi6Ls7u7No+tKGq3Ao6g83J3LDxZv2ZX1aZ0U1VejJV6UlPN1UO+d2rv+8nt/+EP776Bb9n96fRyB1Mjrnj9D9wx/H/XldLpw99rc/c+71Obj9EkYYqk1qYtB1qhXJQ9F3ni0+c9ZXvarouWis3WzAgRqPRlfRGB1uMrsKaj1XVElMvtljzVhdZ811V9c3Y8mKrNTOvUqErBi9tqNLF88JyVWYz4uoMrXnrG444PMtX7a3Wqtw0idEBUsqs76gyenld4sxi5cj2pqYcdCVmdcbJr/yodXpChrX+9C+ZrM/qT/+iDGdNz/yCbjVXZ3/RfZPH/Q9Pv5+NbyIrbXjUuj6nrX9dbNPfJ8qhvd/0lZ//A9IWWJlvfFDrNz1++N/25B1/wKq7S9/OojkIEvpp5zOPnfRlb77Lsg1utsIEzehiMRpdqjca3QYWO8v3eAUWO8t7cI/rIBhcXrBYDjanE0Mr58VzgmFwRf0k3n7fUeckUVVGo3MSunSGakYvL4n57lISt4IqtrsTutWevlFCOsOh9xrS27vzX5Gul66jo/XMHvkJRz/1rdreD6Ghl/SSOxHnlBi6bUO37YJm2p7U7S29a/cveveT3+nn3/4xe/29Jm2OchD0Xee3HjnhvQ8c0zWq3FQJrVGI0Wh0Ob3RaHRNDUq5vEli2neeOrnrziMbpDwriXVrWkqPobykVvyzX/2iu49u+eB779eFocro9a2KfjJBGV2dYGhltR4kUVUOsoS92jZdIWVzWqoGZaCoRtd44gzrRr91zD0nP6EzUTns6nUqnSFTg0O62vXBz3+tn3r353XpqZWDoOtib1WOn9l15NDMMDQ3VaHoXL24xJ5LreMSS5daxiXWLrUXL2sd11mMRpfojUaja6aUl1PouzhyaMMTJ3a84c5NXei6WOwNhlWzsdEZhnI5XWJz1nv69MIv/+aXfPV732RYD5TRpZrXmb6LMnolktjdWzu0NXXQRVmsYmeFioYO00npU/oJh2bMVzEJOwuO7K10w2lVcV46lZ50LgiZqEzQebFo2VSZetOpv+exo/+eSZ1yUEz7zmcfPemh99xrGNx8EzQvUqiqLTzggi+UfXGxB6uqYROPF714zsD9VXUfjuLUwP3iOUVfVXfiXuziQfGcQlVt4QEXPF70YjS6oXqj0W1g+9DsNzpW6L3YYs1bFzvLuz1j69Ds6Z6HseXF1o3pfGf55V6BUsrVqWJjyrE7tjx5ciFd58x8qQ0cOTS1bs3LSZj1E59//LT3v+s+XRetyuiCqnJ6rXkdKWUymVBGr0DC3npt28ytoIsLQmdfsRpiad+SU7tMOoLU0pE77nT20H+qZcN56c2e/gnSO6cSk+Vp0zM/r9J7Xkcm4pyiFu4//kMeOfqtJg6OSRdffPqsD7iPoNw05fLmi6V9O67g7GL5UVewWCw/go+4jPli+R6ccBnzxdK+HaPRTdYbjW6yeO06PpTkhMuoqu8I3+cZPd+T5PtdRlXdFY67SsHg8pbrwayfqJRntaKfxB1bMyfnS5O+c8eRXls3Vyth1k989pHjfsfb7rFsg9tdVdm3ibfj3Xgn3oV34t1454rZwyd2Wa9Mu4nyOlFMuiijVyJitRwkblkJsa+jXGTYtX7LN1vUTIkLOvMH/iPivISuQygXWZOdT1lN3ogm1fTDXE7uOEiSaI2z8z2bG72hys0SrIciMRqNLq83OtDidaAQr145516ccHnHXOqYK7tXIa5aQ7y0jWnv6VMLhzZ7fddpVc6pKptbE9O9znQWKcpL6TB4KZMujp/eJW4rVWXfPXgQD+L9S37noycX79vZ2TnMxJVUla2NqdebLjF6hcKyDeL2M83apK1Vm3tWlfMKCXt75Yk5HTZndKHsqwl5o3NmEzamvXm7Q9f26Bwoky4eOz737jcfM7TBzVKYTCZaK6PnFWI0el5vNLrZOq9NXJ14ZTqvTLmsqnL30U2Pn1iY9nF4c6paOaeKsq8olyqUc5orWQ6D8+KWUVX2beFBPIj340E8uOKeR06sLRZzL633ckqU158uHcro6gWrdZG43STxyIkynRIXFLZn9pUUZ5asBuftLUoVZV+tlQtKqUZC1zlw+knn0RNzX/bWY8TNEwxe0vbW1L5tPOCCL2A+X6w8a3tr+o34BDbwOD4+X6y+3DO2t6Y/gO/FUZzCd84Xq2/3jO2t6W/gQ7gXe3j/fLH6Mc/Y3prat40HXPA4Pj5frL7cddQZjS7VG41GN0Sr8oajm06c3vPEiV1vuHPDUOWc5Wowm/bOCRLW61IdHZrLS+KeY3c6Z9ZP3GirdXMlVeUZH8SH8LVrPvToieXbdxY7Ii4nXr1O6by+FNKhjF6BJFbDIG4/DXsDuwMNaTSc2HFeFV2YdFS5IJR9RXlexXPKwdIlnj61cE5QbpJyQSFeJMkOPu0ZVeUFPpHkc55RVSuXejTJY3jMvqp61KVWSU7ghH1V5YWS7ODTnlFVK9fXU33XKaUVVWU06o1GN10hXr1yfRTiWqmitXLH4RnzlS88cdYbjh4ynUZCQhfWynx3MJt00pVhcEVdYlEb35Hkb7jBquqf9JPu6xLnLaps8q/jQ/jQHl/78PG9Y7s7C10XLxQxurY6UUavVBVV5XYT+0IQ+zrieVVuCwnCmZ2lzY1etXJTda5eXGzDpXpxsZlLzcTFepfaEC+nF69ZVdn3r+F34F34itO86XNP7JyeGPR9HN7YcGijN7TSWmlVRq9PvdHo5ZTrrPPaxNWJV6Zztco55Wq0Vo4c6mmbvnRi7o13HJIEsbM7WKwGW9Ne1zVD87Jaa4aqX3SDVJV9b17y5fOVrzpx6qy95dpqKH2XSuKFui5GN0YZvRpBK9dcoVpZt6JoGiJF87xqjcQ51RBKQ6RoLghaNUTQkKIhGhUNcUGVfQ1R9hXlWaXKc6rsK+eUfUV5Rko1z6mgEaWFNJp9IWitCEGzr5HQlKA1Eue1RlKCSnQi8YpNus7Tpxbedt8dVq3cDEFDIV4fqsqajz56cu8Pz+c7qkoVpbSitaY1htY81uakHN6cuveuww7NptZDU0avN73RwRY3X5zztOskrok9V7aMSyxd2V5cvWAimnI1hirbh3rNpifPLPRdLHYHqhzZnJJmGLysVmVvvfa179j6uap6F3rX1oAvwwfwEB567MTyLfOdHUQp50RMJ3HgFOJ1JS4oo1cmhtb8/+zByY9k+Zrn5c/3PcfMx4jIITJv5r2ZdQeq6KaGlmBRjVpqUTuEaoX6H2BXm2qJBRtQIyEo0WtYtcSKPwGxYgcSYlESamiBqptSVd0p743MmH0ws2Pn/N4vx8wzInKMcI9w8/Dh9zznqaQZSnL39ja3dqZsTRsSI8Q32YySRMiQgIB0IkQmSIwSJyCRCQJSiRISkIQzSUCCTBAilaw4AYERZGIBCQJSQpkkI4ETEDgFJBaQYAQGAybBYMSKzSixGYkVM3KyYsAInJiRwYwkhr5wvOw5Ou4oCQojxGlFiAcHc37y8R3erkIQnJZ4OfFy4uXEq4mzERARPD5c8ODw2KEG23wXSUSAFDgg0xzNex4fPeQH7+3yyd079ENim+rmaKkus6fAHS6BhP/B9kNgi2/7EfCupIG3549sJ7DNtz0FPubrPrb9EXCHb1sAf8QZGGgkio04BUOm2dlueR/x5LgjwuztTsFJSV7Jhn5I/uDHHzIqw5CcmkCAJCSQBDbLoTDvC4tuYLEsdP2AERFCCAQCFGJFiEstuFEELEth2jZgqjMSJ8ybMVBKsjVt+f2P3wXE6TSsGSzWnMYCEixGxgkInIDAGBIs1pzGAhLMSOA0CJysWUAaC0gwYBmywYwETkDGyajBAtJYQIIBq4E0ZiRwAgqcrCUgQxLIYCABOUhAhgQETJtgf3fKR+/t8+DRMV8czGgbcVohcTjvefsawFxnEcHjwxnHy0JEA+bUJGhCKBo+f3TMsjc/++gd+lKwqW6IlupC2d4BZlwx88XwI+BHfCeztz0pvEXH8/5/YmS+TXzb8bz/c+DPzbeJ12OgRRTMaRjINNvbQR7BtAmagGHglQz0pbA9Df7ep+/hNBLfS4AkJEACTLcsLPqBxTJZdD3zPkEghAQSRNMgqqtHgKnOSAIM5o1kmnf3t/j4/X1Oy2ZkzMhgs2YbGzDYjIwNGGzAYAwGmzXb2IDBjAy2wWCzZgM2NmAwYBsMZmSwARubNRuwsQGDARuwMSODDdjYrBmwwRgbDBiwjQEbDBiwTRbjhPfu7NK0wb1HR4QCiVcKwZOjjjXxVlhAcq1FiKezjtmy0IRIG3N2AtomeHgwY2fa8IN39xlKUt0MLdVFmx8teoS4LsyauQTE2YjzJYkwDBhzOjYjY/NKthlKsugLd3Yn/ON/8DuspAGJFQkkIV7INMfLgVk3sOgG5l0PEiEhQBLTNqiqm0qCedezPW0B87rSRhIfv79P9ZoMJZPbe1sMpfDg6YJG4lUkMZQEkhDYXDgBg7m2JDEMyfGipwlh3owkJk3Dzz9/yge39mkiSJvq+mupLlwQXGWS+CrbvBFxrTQSYRgEPUnaZJrt3V3e2wm+qgceHCzRwzm7e7v8zqe3mQAJFOBwBp999pCDg0PSRpi7t/f48Ue3ef/2DitpiBDihVk3MO8GFsuBWTeQaSQICQkmbUNVVd8gEGBeX6b59MN9qjdjoGTy3v4unz+e0UTDaYTgaDawuz2h2Fw4C6KAOT2xZr6HeDnxUhaIVxCnEgGPjztCAsx5kGDaBn/3xSN+70d3yaFQXX8t1VtgQFwVISEJCUJiORSGUliZNA3TSUP1ghlJTFoxaRvESLAzjT1JM77hF0fejeD49ru3/7fb0p/wDR7B+3yf0g/M+oFZV5h1A/1QCAlJSBASTSuqqtq8kubWzoTqzdlAwK3dKfNuICReRRKLfmBvZwqYi2dIkMRpCbEivpsQLyPEywTiVYR4FUlkJsu+EApszk2EuP90zr/1sZGEbarrraWqvkdINBEcLzoOF0vmXU83FMDYwk6ckCR7e/uHD4v/l/eC/1HS/8wZiGvKjIwZmZXfAf4137C/x+9IYneX/4BTmHU9x93AfDEw73qQCAkBkpi2DVVVvR2NRHV+bNietMwWA4hXkmCxLIi3w0ATkObaEXDcDUjivAnRRvDg4Ii7t/cpNtX11lJV3yCJJsThbMHDowXpRAhspm2DbWywhQNMsFws9n/98/k/ebCz+08eLs17E/5LSX9BdWqzGd9im5V7j4+Zzwe6UggJSYRg0jZUVXVJGJomqN4eSfRDAUHbCBuMsbkQEmRyLUlivhyQBObcRYgnhws+fOcWJamuuZaq+oqQKGk+f3JIXwqhIBTYYMC83Hw245e/OOaL3b3/5ovO//UHU0IS1fc7OubQhvufP8E2o/8M+I8H+Ee/Peg5OjpGAgmmk4aqqi4pwbIvVOdHgn4oSJxKE+K3j47Z3ZkyaYLdrZbtaQMI29hgjM1GGRDXi52UNCEw5y8kjhc9IaoboKWqvhQS/VC49/SQRg1NBDbYnNl8dsyvfnGkz6e7HmlEReErbDP6418/Wf5T28yOj/n1/dZ9Sb6qjaB6HcJU1cWKEPNuYGerpXpDgghxOOuJRpyGJDKhWyaHQ8/DgwUYtrdatrcadictu1staoRt0mCb8xacnng58XLi5cSriZcTUIrZJAlmix41wEB1zbVUF8+AuFQEGHh4NKONYMW8uUU3497s9iFwixtIgCQkVj4r9ocBf2b4T377tPysm8/os2CDRVVVV1wjce/xnJ9+dIvqzTQSTw8XGCPEaZU0EdCEALHSD4VlX3jiDhu2t4K9rSl72y3bkwYk0sY2Nm/GgDg98VVP+bo54quO+LojxFfN+bqniFeZI15OIjMRmyWJoTchsKmusZbqwlkgcalEBA8PjzEgCZtz8+Dh0/3O/s+3pH/Od7BAXBMCIUIgiX4oLBYD835g0ZXjCCGJZyTxjBiJqqquMIWYLXqO5kv2d6ZUryck0sm9x8c0IU5LwFASIb5KEhIEYmUY4HHf8ehwwcreVsvezoS97QltE9jGBmNsTs28nO0/Az7ixD2+7b+w/RtgCjwCPuHr/tQjYB84Av6Ur/vE9j8F3gOWwA/5Btt/BnzEiUfAJ5xCKQli44ZSiAjAVNdXS3XhgstFEn0Z6PqBUGCb8zSfzfg3P+e/tf3PJfFNgbiqBEhCAklkmtlyYNH1zJZJpgmBJJom+CYBWQwCDPNuYNIGNlVVXUEC2ib4+b0DfvLRbfZ3plSnFxIK0S+TX95/jEIIcWqCdAHxUhI0EiAMzPvCbFn4/MmcSYi97Za97Sm7Wy1qBDY22MZ8PxkGvttiOTD6F7zEYjn8OS+xWA5/AvwJ32OxHO4C/z3fY7EcGP0LzkhAsnkC0hBU111LdeOF4Hi+JCQ2Zb6Y8ZA7/wz4C644CYSQBJjFsrDoB2ZdoR8KkpBAEm0jXqXrB2xOiJEAU1XV1STBpA1+fu+Q3e2Wj97fZXc64WUkRkKMxFeI72ODgJRRQgKSyEwsIMGMBE6zYrNmRjZmZDBgDIYEBKRBmDQISEA2CciQgBnZmBM2I2OzZkYJliHBAjNKYwEJZiSwzaIbePB4xsHRkmhESNicmhB9MWchQBIIGoQNh/OBp7OBtNmeBHs7U/a2W3amLSsGbLDN10hAAUR1dgYiqG6AlupGE5CGWT/QSNhszHzOfwX8BVeQJCQIiSELs3nPrB9YdAVJSCDEpAnOamerpVsWCFCKaCCpzkMApqouniTaRnTLwt/95oChGAxJggQJ5gU7AbFis2YSEDIkJyTITIRAkIASUiASUlg85wRkVszIYJ4xNs/ZjIyABGRITgiTZk1AAjIjY0YG84JtnrGAZM0YBE5ArDkBGTGSCMSkDYx5XQGI1yMBEg0rIhMOjjqeHC4As7c1ZW+3ZW97ShNiJQ22WQnAXC8CgosREmCq662lutkkFsuekNi0R/efNraRxGUnQBISI9MNhVk3sOh6+sGEhCTaJngTttmetOxsJcuhcLxYsjXdBlNV1RUngSQC0QRrJlgzmBfs4BmbNROsGcwLdvCMGRnMSoDBvGAzMitmZDDPGJvnbEZmxYwM5hlj85wZmZExI4N5wTbPmJFZM2bF5jmbkVkxI3OpSCCJQNgw7wdmjwc+95zpJNjbnnJrd8LWpGEloh3Sibk+jIgQGBAbY8P2tGHeFarrraW60SRYDgNCgNmk+WzGQ+78MfCXXEISSCIkspjZsmfRDcyWAyAkkETbivOUmNt7Ex4cFNJmsRyYTlts810kRkKCkgkGCaTAGEy1IsCAqKrqphEgzp0EQhDQINJwMOt4crxAiNs7LWrbf//OzoQmRNrYxubKkkCC6aTFdIjNaRphU90ALdWNJkQ/FJDAbF7h3wP+kktCEiGQxHJZmPU9i26gGwqSCEETwSbZgMTt3QkHxz3H3cD2VksxXyMJCZZ9YRjMUJIAHCCgjYbpVICoRqaqqmqjJJBEIAwcdgNeDP/p48M5O5OGna2W3a0JW5OGtLEhba4CCSRRMll2A+lEYqMmTYMEO1sNa4ZMyDRpkzbV9dBS3WgC+mKaRpjNi4a/zzeIiyNAEhJr82XPrEtmXY8xkhCibYKLZJvppGVrYpZDYd4NbE1bwAhhm245sOwLUoCgCYEgWBHGdMtka9oAoqqqqro4AiSBoEH0xSyPlzw+6ogQe1stu1sTdrZaVtJgm8tGAkkMQ3K06OiGBAw2IWGbTUkn//u/+jXLMlAMW23D3du7vHd7m/dv7zBtGoYhSZvqamupbrR0InFhBvMTvklslkCIECOz6AvH84FZt8QICRQiEG9TptnbbemfFhbdwPZWwzAkXV8YBhOCiEB8SSBGEuKEJPreTKfCpqqqqnpLJJBEIGw47gYOFwOB2duesL8zZXvSsJIGbMzbI0ASJQtHi57lYAjThLDBgM1GNRGEoGknpKFk8vmTYz57eEg/JD/9wR3+nR+/z5CmlMRUV1VLdeHE5SBGFhepFbtcEEmEGJnFsjBbDBx3S0BI0ERw2YTErf2W2Tw5OOoBA6JpBAgxEogvSYgTEiNhA2kkcdMZEFVV3TQCxOUhMRKNGIlZN3C86BFib7vl1s6U6aRhJQ22uUgCJDHvB+bdwEqEMGDenpBQI5oQk6bhVw8O+OzhIf/w93/I3vaUfkhsU109LdWNZpILZbbZIEmEGJnFsjBbDBx3S0BIEBGIy0cCSfRDYdkZAsSKkBgJMRKIFSGxJkZiJAQ4oBgaccOZqqqqyygkkDBw3A0cLnoCsbfdcmtnynQSgEiDbTZJrJijRc+QSYSwjc0bK8VEcC4kmLYNQzH/6//1S/7oZx/y4w9vs+wLprpqWqqLJ0C8fQIcXKSEGedMEiFGplsWjpc9s/mAERJENIjLSRICSiZHi44soEYEJySxIkYCsSIk1sRIIMSaIBglKAJjbi4BoqqqmyiA5LITIIkQGDjuCoeLOYHZ251ya7tlOjWQjoIAACAASURBVAlApMEYzLkyZtYNFEASNudCYiOaELtbLf/333zOO3tb7O9MGUpSXS0t1Y1lg2QulDjgHEggCdl0feG465ktBoyQQApCXGohUTI57nrKkEhB0/CcJFbESCBWhMSaGAmEWJFYkwRiZKqqqm4mc9UIkEQIbHE86zk87okQt7Zb9nZappPAEraxeWOS6PpC2ghhzldx0iiwOVeS2J62/B//z2f8R//wp5QUtqmujpbqRmsisLkwYe7zDeJ0BEgiBCWTw3nP0WKgpJFATRBcfhKExOGso+uTRkFEILEmRhIrYiQQIwlxQmJNCATihCRWJOEAzM0lqqq6qQSIK0sCIQIwcNj1PJ33TAL2d6fc3m5p24ZMYxtzdgJKSZbFSMLm3DnFpjQhepJf3Dvgxz+4w3JIqqujpbqxJNYmbZDmQmTyS75FvIwkQsKY4/nAUbek65MQSKIJcdU8OVhQMG0ECMQJiZEQI4H4koQ4ITESYiQQJySxIoMEmKqqqpvHXCsCJBENpOHJ8ZJHRx3bk4bbuxP2tqcEwjZpc1qS6IYlEmA2Ip1Aw6ZMmuD//eV9fvLxHSSwqa6IlupGESAJCfohmS06QpDmQnQdf8vXPWwjKDa2eUYSIUZmsSwcLpbMu4GQkMSkEVdRSBzOOwqmUYBAnJAYCTESiBUh8ZzESIiRQJyQxIoABzQR2OYmE1VV3VQCxPUjQUiAKMU8POi4/2TB3k7Lre0pO1stK2mwzcuUYtJGEmYzRLBJEaJfJo8POm7tblGcVFdDS3UjCJBEyaTrBxbdQMlCIjAgLsT9+4//u18e+p9tb7H19Bj/q58//suP393m7p1tRJA2BpbLgaeLgeP5EiNC0DbBVWdM1xfaaEAgTkhiRYwEYkVIrImRQIg1gTghiRUxEgSi75OmAUncVKaqqur6kqCRaEIsloV5N0eYve0Jt3enTCctaeM05uuE6D0AYlOMSSfQsEltBPcPZrxze4vSU10RLdWFMyAujiRsczzvWA4JMpaICDAYYy7GfDb/+NfH849tY8OQ+ffvPzqgL4WP393jB+/tY0M3FFYUQXB9OCEIEIgTklgRI4FYERJrYiQQYkXiOUmsSKwJgSAENiMjiaqqqur6CgkERhx3A4fznkkr9nem3N6d0EZDprGNgRAMy0QCsxl2YA8IAWZTIsTDpzP+7U/epbo6WqoLJwKxeUJIsBwGjpc92EQIMzKYt68JEZOGthEPDjruPZ6xuzPhxx/cpmmCkuY6MSCBADGSWBEjgVgREmsSa0IgECcksSJGYk0IBOKExEhgQFRV9ZbYphQwYJI1g3nBNs/YrBmzZjDPCDtZEZACJSQCJUpITkiQKSARkAIlJCAESjJBYi1TSMmKGSVYjAQkTkCsmVEKlJhRgsVIrNjJM0Zg1kwCwuY5m1EihAWykKhegwBJRCMy4enRkkcHHXs7LXf2ttiZtqSNgMQIsUlONi5CPD5cUF0tLdW1ZcysWzJkEhIGbM5FMQTnRxJtA40aumXhX//qAX/v0w9oG1HSXBdNIxBIjIQYiTUxkhAnJEZCjATihCRWxEggVoTEcxIjIUaiqqq3INMMabYnDR+8s4UN5kvma2yzYkYGs2LMyGCeMTZrNmvGYDAnbPOMzZoxKzZrZmRjRmbNjGzMCZs1s2JsnrNZMwaDOWEzMjbPmZHNigEzsjEjgzkhm1k/MJ8NWECAqF6XBJJQiMWyMFsc0zbi9u4W7+xPAbFRTjLYOEn0w8CKqK6KlupaConjrqMAkrA5X2kIzp+gkYDgr37+gD/4yV3aRpQ014EMO9OWrk9CgECsCInnJEZCjATihCRWxEggVoTEmhhJrIiRQNxMMlX11pQ0bRP87g9vMZk0vAkzMpgVY7Nms2YMBnPCNgnIkICATCNBJkiQgNKkQAkpMIlSpEBAJkhJphCQAmWSEiQYsIBMjEDgBJQ4xYoFJFgJKQyYkRMjMJgTdvKehIF79w95Ou9omuB1CBDVihhJNI2w4clRx+PDBe/d2QLEJghwggyIjRLQp6mulpbq4gkQGyOJeb8kbSRhzpcENkhgsxEh0TTwV796wB/+7AOEsM1VZ5npVsNiWXCIYEVIrImRQIg1gTghiRUxEgixIrEmRhJiJBBfkgBz4wgIwFTVhco0kyb43R+9w2nZjIwZGcwJ25iRwawYmzWbNWMwmBO2MSODOWGbFZs1M7IxI4MBY7AxJ2xGxjYrZmRjDAYDZmRjzIrNyNhmxYwMxmBjwIxsjMFgTtgGDBIf373FzmzCvYdHhAKJswlAVN8gQYNIQ0nTNsJmM2QyuRCiumqC6lqRRCmFUhJJbEoh2bQIkWl+/psD2kZcBzYE4tZeC2lsIbEmRgIhViQQJySxIgECIRBIrEmAhBgJxAlJiBvMVNWFsk0m/O6P3qF6PbYZSnJnb4u97RbbnIUYmeolBGQxIDbFCLF5BkJUV0xQXSu2WQwDktgkW1yEphEPD+YMJQmJ68A2TQT7uxPaBjINGGOEQCCxJglJCJBYEwKBOCExEmIkECcksRKAuIlMVV20kuZHd/eo3oyBoZiP3rtNSXMWpno1sRwKEpshyIR0smlOc2t3i+pqaamuDUn0w4AksNmkLAmThk0Tom3Ebx8c8cmHd8iSXAc2hMTOdoMYCcqQLIZCcEISK2IkECsCgTghMRJiJBArQmJNgAOc4uYRVXXR0nBnf0r15mwziWBnq6EfEkmcXgBJ9d0kWA5GbIqQjFNsWtrc2t1iTVRXRFBdK8tSEJslIBPExWgi+OLJMU0TXCcGbJM2NvSZBCcksSJGArEiJBAgQBIgxEggVoTEmhgJnNxIpqouXqapzk8a9ren2JyaqU5DgnlfkMQmZIIDxGYNJfnh3X2S6ippqS6cAHG+BGQpiIsgEgMCzKZJkIauW9JEQ9pcNwLCZjBEiBUxEogVIbEmRhLiSwIxkhAnJE6YNXHzCBBVdYEM+zsTqvNlwJxeAAGI6mUaRN8VtiYNmyBGTjbJhn5IPv3gFqUYUV0VQXU9SBQbJDZOYAPiwkSIp8cdkriWbBSBQqyIkUAIJCTWJEBCjAQSCJCEOCFxIsHcYKaqLpbgaNFTnR8J0kacjaleSTAU0w8FiXOXMplsVF8Kv/fJe6ykTXV1tFTXhrk4xclFkuBw3vPBu1DMtWOgbUXfmQjWhEAgTkiMhBgJxAlJrIiRGAkxaoE05oYSVXXhQiLTRIjqDQlC4nC2QArOJABRvUI0YjYfuL0/Bcy5SiGxMSVNpvmjn3xASVNdLUF1bSQXJxKUyUURkGlAXFeSmLZCBiEQiBMSIyFGArEiJLEiRgIhBEgggwSmqqqL0oS493hG9eZC4nDeMRSQqDZovihInFopRgLx3QSYL5lzl2lmXc8//gefooBMU10tQVW9hhQM5sIIkZmI68uGtm1AQgJxQhIgxEggVoTEmhgJhFiRWJOgUUNQVdVFiRCPDjsWy57q9YVEID5/dEgTotoMAzZMGnEWFhwvCgrxfYwBUTL5XhLFnI2hbcWf/vHv8s7eFkMx1dUTVNeDIbgYAgwouDiCoRjEtWabthUIZJCEADESiJGExJoECIRAILEmMRLChIS5eUxVXTwBkyb4298eMFv2VGcjiaYJQuLv7j0iEZKozp/NyOzvT2laYXNqkyaYhHjweE7TCEl8izkR4pvEiWVXmIizEXR98te/fsisG2gbIYnqammpLp4Acb5klAIbJDYuRSYEYDbPhqYRMojrTRJNKzKNzXMSRIhM1iTWhEAgTkhiRYADIiHMjSOq6u2QoAnxN58d8N7+Fh+9v0sTwctIjIQYia8QzxgQJi0EpEFAksiQCAF2koAMCQiRTgSkQUAicGJGBiNMgsGcsAUkNmtG4MSMEiwwgkws1pyAjBMQJKCElFFCAhYoTQqUkIAkbDOUwqOncx4/XeCAkLA5swBE9X1sEObWzhQkMs1Z2GZr2rDnCZ99fsgPP7iNBTZfkaw4QYA5IUExzLrCzlaQyZm1EfzywSH/32eP+cOffMDvffIupUDaVFdDS3Ut2NA2QTeAuAiJLBAXwpid6QRjbgIbJCHxNTaIkRgJMRKIE5JYESNBGAZTVdUFk8SkEU9nSx4fdQzF3Nmbkk7WDOYF2zxjs2bMmsG8YJsVc8JmzRgM5gWbkRGQAiUkI4HSJCODgETISQIC0iAgEVKSyZqAFCgFJBaQYEYSkDgBsWYEmSAwK8JO1hIsEGLe9RQgEBFCotoAs2Ju709ZSZvXkTY72y3veIdf3DvkRx/uEhLFZiUBMRJgECCJWVdYDsnezoTMwuuQYNIEzfaEv/rlA+4/PeYf/cEnyCLTVJdfS3VtSEISF8GCBBouhg3TSWBTiTUBEs9JYkWMBGKkoGSPJKqqulgSNBJNiCZgsSwkyVqCxXNOg1hzAgJj1hIsnnMaxJoZJViMDAkWzzkBmRUzSrD4krF5zmZkBCQgQ3JCmDRrApKRQZgEZEhOCJFOVgQkI4MQSSIgzZqAtBCFpgmCkVkz1SY4zf7elBWbN+I0e9st/a0Jv/nimA/e2WYyabDBGaAkE9oQdnK4KJSS7E0DkbwpSWxNGu4/WfAv//pz/t3f+wEW2FSXXEt14QSI8ydg2gTLkmxcBjYgLkSmub27RaapToTAgBhJrEisCaEQpRRAVFX1dkmsBWItwLzg4DkHa+ZLAeYFB8+ZUYD5UoB5wcFzZhRgXjAvmBeCE8ELwQvBC8GJ4IVAPBO8EIiV4IVgRZwrU32HtNndaWlC2OZNGcg0d/a2GQZz/2nHnVtTbm1PkM1KCIrN4fGAgZ1pQzSQ5lxIYmvS8Le/fcKnH97h7p1thmKqy62lujZsM20auqEgNsskVgINYDbJhhDs701YDkl1YsBMJIwQI4FYEQpRSmFwohBVVVU3icMgqq8w0IaYThoyzXnKTN6/s8WQ5uBoydAniZHEYjnQLZOV7e2GSYhMc54k2J42/J//5jf8h3/8MwSY6jJrqa4XibYRQzGbYnPCQABmo0omH767Bw5kU50QUAyBUSNkRkEqKX1iQRBUVVXdJAaCQCTVCzbsbrfY5rwZKGnu3t7i/uMFi2VBEiFYDkYSbQNbTUPJZBMigsNZz9Fiyd7WlJKmuryC6trZmUwRGybIZONsU4bk0w9uU0pSfVsCfTHLNMssDMVYVFVVVdVzTYgIYXNqVmILiVeywYi772yjEM8ZmoC9nQlpsykC2jb49f0jJKpLLqiuBQERQoanRx3LviCxIYkQYDbJwFCSjz/Yp2mCtKm+mwABAkRVVVVVvWDDpBXGnEUQzBc9i2USIcTL2caYu3d2QMaGCHNrd4rTbFoT4sGTGdXlF1RXXkiE4Gi25DePjpj3A11vbHMWpSSSEC+XBCs2pxKcnW2GIbm1M+UnH73LUExVVVVVVWdnTNMIzNkY9ncn9EPh4cGCpgkkXsqGwARiZdI2rJgzCPE6QuJw3rEiqsssqK4sSYSg6wu/eTLncN4TTSBE2wDmTNo2ODjuASGJ7yKBM1kziO8noCRkcGZp88kH+/z+Tz9kORRsU1VVVVXVazA0AnM2BtLm9t6UrTb4u98eIIKQeJUEjMGciRNIXoskFt1AdfkF1Vtg3oSAJsQwJF88nfHwcIEMEQJDE2J3q0ESZ2HDnf0Jnz+akWlCfDeJlcL3k2AxJG0EJGc2aQJb9P1AE0Kiqqqqqk5BVN+mCF5Xprm1O+Xuu9v89WePGIppQkh8P4OA5HTkoBgUAZjXZb4kqkuspbpwikCcnQSSIOHJUcdssSQiaIM1G9oQu7stpSTm7Gzz0fu7/OqLI+6+u820bSjFfJUTxHeTwIbjWWFrJ3Amr6Ok+c3DQ371xVN+/NE7/PD9fZZDIdNUVVVV1fczAkT1jHhzJc3+1oRPP7jN3/z2KR+9t8s7e1PSBZvvYEC8igR9n1jQSqSTN9FIVJdfS3XxDIgzkYQws27gyfEcIZo2eMaGphG7Oy22eV02I/Pph3v8/N4R79ze4dZOUArYBkRSWDFfJ8EwiONuYHurpXFSeD2SaBsRgl/ce8pvHj7lD3/6A5pGlDRVdWqmqqqbRoCongnORUmzs9Xw4w/3+NX9GYezJT94b4eQKDZfZUCAku8kiSxJPzAKGoExb8I2k7ahuvyC6lKToAkxZPLF0zlPjhYEQUg8Y0MTYnsryDQ2b8SGtPjkg10eH8x4+GSBMBJrwUhAJmuCkFgO5qjr2ZoEbWPMm5PEpA2GYv7lX98DiZCoqqqqqur0SibnoaTZ2Zrwyd09umXy6y+O6YdCE+JrUqwMjMRzAkLQ9YXlAAqYNCDxxgxsbzVUl19QXVohgcTjo477j4/JTJoQEs/ZECF2d1pAnBfbRBN8/P4ex4vC/acLMEiQDlZsIYEwx4uBRVeYNrDVCptz1URgw1/93RdM2kBUVVVVVXUaAmwQ56Ok2dlq+NHdXWz4/PGcg+Oetgkk1iyDQE5WBIREb3M0HxgKtIJJAOJcZJq9nQnV5RdUl44k4v9nD16WJD3z+zA/v/fLOvYZDQyAOWmooSja1sI2wxHkxvZW0krSzndhSUGtFFZoZ4u2r0JLURtal2B5QTnMsMJU0LRkHmcGwACN7q7KzMr83r+ysvoMVB+AavTpe54wP1n7xS/vmJ+sDEOTxJOqyv5eU71ctN7Lzqz56Oahk1X3i1tzVQhBpavi9t211VhaY3930MtLMQzNraOlz+8stNZMJpPJZDJ5HjGORVyYsZfd3cFHN/dVcWe+8osvjlXZiFNBKQmlHC3WFsuu0uzMYmc3JC5KVXnvyoFTLTF5fc1MXhsJLXEydl/cWViPXUvT4mtVsbc7aGmqysvQe9mZxc1rez6/feKTL+YOdgZJqO6LuyeIpFw93DGOpZSXIdgZBn/0Z7/0W//ZD40n3WQymbzuqhh7UXTdVlEeqir3VdkqZaso90VVdyroIZ0upEunO5PQe9AFPaTTESFd7yS2eo+kO1U2OhUbQVcdsVU2ekhXNjoVG3GqqruvhLJVOqLKA1U2ugghYnLBwjgWO0G5KL2X3Z2Zjz849IvPjoy9+fSLhfev7UtsVbFaced4LYlTB7vRWoy9XKSxl/3dHZ/dnrtxac8wtJXJa2lm8lpIgnLr7sLxYqW1mLV4mlJ2Z1FVXqbey/7uzNXD7s58bbnuEqqahN7L1YMdvUp5uVqL+XJ05+7C/v6O3stkcp4ymbw6VWXdy05rrl/etb8z6O4pj6kqp8pGUU6VslGU+0qVrSpbpSjKmapyX5WtUk5V2SobVcpG2SobVcqZKlvlVKnyQJWtUhTlTJWNUuWBslHlVKFsVCkbRTmTKl8eLy1PumEIIb6JEsTkvmAcu4QqF6r3MkvzwY1Dn3yxMLT45Z2lJM7E3fmJtKjiYCeGFr1cqN7LlYMdVw52zJdrP/v8yPs3r/w3VSWJyetlZvJqhZZYrbsv7iz0KsMweJbCTmukUeVFVLrqg6Qoz6X3cvlgx3rsFqsu4lTv5fLlmYjey3dhaPHZnbkfH+zpuslkMnnd9F7W6/JXPr7iysGub6NsFOVUqbJVZasURTlTVTpSdAS9l4TeSehILz2k00Pp0qOHoHeSrvcIekjvekKnUEHvSgjVka56nKqgU+n0KJSN6kooypmqcvP6Jaux+4tffGmxXhta82IKDUFMHkriZDXamTVVLlSvsjM0H1zf9+mthWGIeCih93Jpf9Ba03t30da9+ysfXbceSZrZwOdfHL23v3+wqqofJvmFyWtjZvKda860RJQv7564uzjRWtMSz6VoOzbKi2qauydrTdnbm+ljKc829nL9yr5ffjm3HinlysGOWRh7eVFBeXGtxd3jldbCaDKZTF4rvZfZrPn1H1/3vKpslLJRlDNVpWwU5VSpslVlqxRFOVNVykZRzlSVU1W2ykaVslEUSlGlnKmyUarKqbJRpRRFoWxUKeVUlY1SVU6VjaIUVQplo0opinKmqowdiZ98fMOff/qlu4sT0SQm31KwXnW7s0EpF61X2Rma96/u+ez20jBEnOm9XDmcSZreu4vWq1SVj9+7bDV297XEyXIxuz07/HlV/a/4+0lMXr1m8t0LQ4tV737+5dzRamWYNWkIgiAIgiAIgjAMUeWFVXF5f2Y9lk9vzQ1Dk8Tz6FV2dgZbxe6s6V5Maw1B800kzJcnWgtBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEMRk8p2rond+9fvXTL6ZqrJad9//4KrD/R1V5YUFQRAEQRAEQRAEQRAEQRAEQRAEQRAEQRAEQRAEQRAEQRAEQRAEQRAEQRAEQRAEQRAEQRAEjS7W6y7xUvQqO7Pmg2t7qsqpXuX61X2tRVW5aFVlter+xq98T1dKEQRBOD4+9rPPj/77zxfuVNVlk1eumXznWrh1fOKTL49V0RIvqhDfXK9y5dKOy/s7/r+//ELQWjxToSjlVLdRXkCs1x2ldN9ExOKkE5PJZPJaGat89N4BYvLNlbIeu49uXDH2MrkYCfPVSJV4OUqpKlXOFKqrcuEK67H78OYlN64eWPfuPEmczI8v3166U1X/uKpMXp2ZyXftb3z65dxYZac131RTWppe5ZuqXg72Zz6+edUf/dktP/reZQd7M+txVOXrxUYXUUr1Ip4prVmv1pJojSrfXKjqGmIy+XrBaDL5bvVe3ru6b/LtVZWdYbC70/ReknheQUy+zpCYL0f7e4OIcvG65lHl4lWV9bpc3t/16z+6abkapTzT/PjY8ZF/enB4+NtV9XGSuybfuWbynagqVfW/3F76vzta4tso316h97K/2/zKD675s0/u+MUXx2ZDk8R5evdANeIpQhWrZTebNYlvrxhaM5k8TZlMvnu9l8nF6b1cO9xTZXKBSiyWI0oSF61V95juwlQx9rJcjT64fug//2sfOVmNqsrzSljMjy/fWbpTVf+4qky+WzOTl66qPr513P9ysVhIiNdL72VniJ98dMWf/uKuxXLt45uXtBbjWJ5UGkZbHQ3lMQnRnJyMejHMmqruogwtqkwmkyfE5JUpLh/smFysQplcpDgVR4vR/h4JVS5MF3FP6EVrVPnGqliP3Xpdblzd98MPbjrc27VcjarKN3F8fOzoyD89ODz8R1X1/SS3Tb4TM5OXqqr+1u2F/225XEhcmLhYvZedncGPP7zszz498uef3Hbz+iWX9mfW46jKI7qt0IvB4xJWvSxPumAYiK5cjKqyOxuUyeTpgvJuaWkok1cg3F2sTC5OQq8Sk5ehJZbLLmEYgpJEla8opURVqYqqUqJXqaKqVKFKr1LuKarKOJZeVHXVS4WxlyqqShVVpXcqpXequl6MY7c323Hz2oGP37tib2ew7t3JevRtJSzmx5eawy+r6u8m+ZcmL93M5KWoKhu/d+fE357Pj1286NURF6X3MpsNfvj+JX/x2ZFffjl3NB+8d21PS4xVTvXyiI44lRBxvFwbewSzHVrRy4Up7O3OVJXJZPJQoQ1RZfKKtETvpbWYfHstced4IWmeW5m8gMTWuC7lVImN2AoiWgYVtCYVdOXUQKgeQkvcXZz48ujEqapy+dKeg92mRlulCEHvJB6oCrpThWiuXtrVe+lVei8n69FFO54f0w5/t6r+Jf5uEpOXZ2Zy4apq987S8vj4mCBeiuqkuVC9l9nQ/OCDS3722ZHlqvvFZ8feu3ZgNsSpEpRT1THQEier7ni5lkRhfxcVXblIvZfLl3aUIiaTpyvvjFQZ0ozVTV6NocXPvzj2/ZuXTL6d1uJ4sbIemQ2eX0MQkxcR4kkRG7EV98RGEw9lsNVatJOoKkRhFnZ3Bn3wXJLBfVUs1mvKQ/FSHB8fOzr2dw4O9o+r6jCJycsxM7lQVfW37yz93nx+LPHSBGOVnUSVC9WrDGk+ev/Qzz87VonPvly4crDj6qUdQ7oREUkMLW4fra3GkkSwvxcpRhev9/Le5QPVS0wm52uN1UjirVfFbKcpZfLqtBaf31n6+MaBtGbyzbQE5We37mgtXlRDTF6acq4UvXvMupcUqjyPKo+J706wnC8O7jqojb+X5HdNLlwzuRBVpap+72jl9+bzYy9dqLEjXoZepaX5/vuXqZJwd77y2ZcL6x6JrZNx9PmdE+uxxEY43B+0RLl4VaXCe1f39SqTydMUmndFmc0GyuQVCmZD8//86Rd67yYvJmgtWuIvf3nHuC4t8aLK5FWq3j2qqnvTHM/n7q78i6r63aoyuVgzk2+tqnbuLuvk+PiYxHdlLKo64mWoKsSHNw/94pcLSVmNJc4krNYlotBSDvcGVaW8HGMv37t+oBdVJpOnKzSUt14Ve7OmTF61Fgzxh39yy4fvHXj/2j7iaRIbERvxiLivEKVXBL0Iui5FF0FV15GiI6JXF/Qi6EJ1ZaMoUTpFOVMVdFW2SqiubHQqlNC7iq3qSKmO0JFOT0mno0J66SGdjoTeS2tx687Cp7eOrHsZWlSZvGF6iDMJ4+iNdHx07Kjq7xwcHhxV1QdJjk0uxMzkW6mq/+7O0j+fzxek+W7FemRnRpWXoqoEH97Y98mXCwrxmCqGFod7TWmqupehsB67X/n4hvVYiMnkWZJS5a1Xxe5s0KtMXr2WMPDJF3M/++WR/d2ZWWu6bqsoD1WV+6pslbJVlIeqyqlypspWKYryUJWNEvSQTrcR0ku3UQRdpLqOoBdBF0nXu62gh/Sgq6BTNhJ01RFbJfROKKeiqtvqVGxEVbc46arK0Jqh+RaCmLwCaWqNxJmoQhq6N00Si/nyMA6OqurvJfldk29tZvKNVJWN3zla+Qfz+dyrkLBel91ZlJenCokPru759PZSFYmtKmZDHO41herlrd8M7QAAIABJREFUZem9XD3cc+lg1/JkbTJ5Hq3FOBbx1irMhmhD9HWZvB4ShiGGYbAey2pcK2WrU/FA9SK2qiOUstWpeKB6EVtlo1OxUXQqHqiOlFNlo1NxT6nyQJWNEnSk6M5E6WUr6DaKKB0pujMRvbpTQbdRRHRd0MtW0CtidKoNkYpT5ZuJyasU9JRHjb3Em20+n2vt4F9U1f+Ef5TE5JubmbywqnJ74X+fz+e/lXi1wsmq7OxElZemqgjfu77n558vDInC0OLK4cw4lqryslSV1Wr0X/y1D63Wo8nkeVUxNMby1qoq+3s7qkxeUwkR5Z5GeaiaB6rZKvc0ykPVPFA2GuWeRnmomgfKRqM8VB4qDzVnmoeah5qHmjPNQ03c1zzUxKnmoeZUXJQyedVq7B5VurfB0dHc3fLbewcH/3VV/VYSk29mZvJCqsrR3LhczFuLVy4YxzI02hBVXpoq0iJxphhalFJenipO1t1Pf3Ddwe6O9XoUk8nzS5pVX2mtUd46VezvDarKZDKhISavQlCa+4I+EsSbL+FkPv/NOw6+rKprSUxe3MzkuVXVD+6s/fniZE7z2kg4WZe9ZiNeuh4GW93LVVVW6+7D64d+/NF1J6tRxWTyQtrA0d21q5f2lPI2qWJ3aGatGXuZTN51ZaMhJq9C6Lp4qKqkoXsrJCyW86utHdTGtSS3TV5IM3kuVfU37678+eJo7nWUsDwplMRLVcp3YexlcTL60UdX/fpPPnCyGlWVyeRFVZXrl3etxrV4u1SVSwe7epXJZHJPmbwiwTiWB8KqvJWO53N3T3xZVb9p8kKayVNVlar6naO1fzU/nnudJSxPSh9L4qUojyuFuDBF7+VkNdqZNf/Vf/KxH3/vmpPVqKpMJt9EFbPZ4Gg+SuJtUUVr7O/MVJlMJpNXL5SN2Aqqj95W8/nc0dq/rqrfNnluM5NzVZVbc//6ZDn/zcQbIeFkXdIYghbKCylUUaFQSlVUoZcHgipVpYqqUhVVpURV6RVVpYpCVamiqlSnUnqn96531uPo8sGev/r9a25eu2S1Hq3Wo8nk26oq37u+7/MvFy4d7qkqb7pe5fqlfb3KZDJ5qExepV7do8byVjs+mnPp4H+sqv8WfyuJydPNTL5WVfly6eer5fzDFm+UBEUvjEVDeaCUCFWEVAiqEENKNToK0fQBhRalEKfWxe5ssFZ6RdkoSlQx61QG1emJ9K4XpVTZKBGXD3bt7szcuLxnZ9asx7I6WSvEZHIBitbiZFw7rF1JVJU3VVXZGZr93cE4lslkcqahISavQpBeHorqpYl4e82P5o7L39w/OPh3VfXrSUzONzP5iqpy58RfnsznHybebEHZikgYDATDYMdD8TXigYiIP//kyH1N+f7NK1br7uvEPfGEiDOlVFFVerFcjSaTl6EXP3j/ij/448/8pz9532rsqsqbaOzle9cO9CqTyeRMISavUjAW8dBYnXjrJSzm878uBz+rqo+TmHy9mcljqsrdkzpazheHibdSuafKo8rXKA8kpZeNcipYr0vvZT12k8nrrqqU5sP3Dvzh//+ZX//JTauiyhtl7OXGlX1ClclkMnmt9O6BhOrEuyFhOZ9/FPtHVXUpiclXNZMHqsrxSi3mi0OTrxG9F+K+rkwmb5Ley/dvXrZYrv3xX3xhd2emJd4EhbGXa5d27e/OVJXJZDJ5vUSvUigU1uvyrlnMF4dHK7Vh8lUzk62qcrxSx/M5MfkaSalGPFRF6cRk8kYoZcSv/eSGP/h/P3VysvbXf3zTkGZdnfJ6KnqVKwe7Dvd2rMduMpl8jUJDTF6BSpk1xorE1k4LQUN5Z8znx+SwNrJh8tDMRFU5GtV8vkBMzhN9HD2pV0M3mbwpxh7vX7vkyuGX5svRH/zxJ37thzdcurRnveqqSnl9VNF7d+PKgb3dQa8ymUzOU0oQk+/e2PnB+1fcOloY2iDoyq07S5cOd/Uq746YHy/kYL82smFyZuYdV1WHx6OjxdFCTJ4mIb17VFC9a6HKZPJmqDKO3U9/cM2//fe/tDM0/+5PP3fl0q4ff3jV3s6O1dhVlVerjJ2hcfPavp1hMPYymUyeriEmr0Qvlw933Vms9LFLi+D28dKVw12nyrtlPl/Q9mvjcpIjE807rKo+nq8czY8WJs+nl8eFsWIyedOMvXv/2iUHezOK3Z3B8WLt3/77z/zJL26pXnZ3BkOLxHeqit7L2Ll6uOujG5fNZjO9ymQyeboyeZUKYy/fu7pvrBJn0prbxyfS4l00P1qYr9ytqkMTM++oqroxX/nL4/nC5PmNvYjHjGPXZg1lMnlTVLFad7/2wxv+4I8/tbs7GFq0DG7dWfrlrblLBzs+uHboxrV9KqrKiBq7U92poijfTlWpoqrszAaXLu3Z22lUjGNXJpPJ5M1QVdrQXL+05/bxidnQDDg6PnH5cEdQvr3ERsSZcqaqvI6O5wuyf1RV+0mW3mEz76CqGuZrnx/PFybPL6gQDwWFoEwmb5beuxtXD1y9tON4ORpaJAyJoQ2Wq9GffnLbf/j5lw73Zw72Zg72du3vNMPQJDEMMbRmNsSZUuUxvZN0RLfRCboz6d3u7o6DvZnd3WgZVJVepbqNpoJOOVPVEd1Gp9Kdqu5Monp3qiNFd6pU2SobvQgd6XSnuipbJVRXNjpCR3rpNkJ1W6UoOoJe5VTQu61Kp9MR9CLoNspW2SjKmd4JukcV4nGlkKJsBOUrCkE5U1XKZDK5SL2Xq5f2LE7Wxk5CG+LO8crVw13Vy4uKjUQwVlmtu/V61NGQMLRm1po2NFXldXN8vOBwf1FV2fCumnnHVJX52vr4eGHy4saxPC56jWgmkzdNYbUe/dUf3PB//dEn2u4gHmqJNsRsYLXuTlYnbt9Z6oXYKGWj3BNPisfFRvOYQhUpSlEeCspDLe5rHhVb8bWajThfPNA0XxGPiwearxf3NA/Efc2peLo0W/FsTVC2mo3mvrgvBrR4aBgMKa2iTN4KZfIaGHu5fmXfJ18c25k1JebztUv7OxrK80kiYT2OVqvRyThSTdBaBB2tx0o5Gddm62Z3t2mivF6Ojxb64X5tZMO7aOYdUlUWazWfLyQmLyiNpnvS2EtrVDeZvHFKuXFl35XDHfOT0dDiScGQ0GzE4FHxqDhHfK14DolT8WISzy3iMXGueIZ4TNwXz5J4bvGE2GjOEw+VJ6RoJm+JNBKTV67szpqrl3YdzVeG1tRQjuYr1y/vGns5T0JEKcv12nIx6lXSmpaBkHigCY1mI9FTlidr+zszbYgqr4+wXCwM9msjG941zTuiqizW1sfzhck3t9Y8JtRoMnljVbFaj371Rzes1l0VQZCQIIh7giCIU0EQjwiCIB4IgiDOkZCQSCKIZwsSEhJPFREREbEVBPEVQRDnCIIQBBERBHGehITEMwVBbAQJCQniUUEQxBOCIAhVJpPJS9B7uXKwo6Wp0BKL5drYu8RXJLQW1TlernxxZ2mxWCu0oWmxlXggCSHuCQ1Js1x3VeV1dLxYmHeLqvKuad4BVeX4xC+P54vB5BuLqLF7VDBWmUzeZL2X65f3XT/cUYogHhEEcSoIgnhEEMRjgiCeIiGRRBDEsyUkJIinioiI2AqCIB4TBEF8jSAIQhBEEMR5EhISEk8VBEFsBAkJ4klBEF8jCGIrCIJmMpm8DIUSN67tqV4UbeDO8Ykk7kuitViP3Z2jlS+OlparbmiRRGsRZxJbQRKnYiMkRBAJCcuTkSqvo/nRYu945dOq8i5p3nJV5ejE54vl4j2Tb21U4nFV3WTyJius1qOf/uiG1XpUgiCIU0EQjwiCIB4IgiDOkZCQSCKIZwsSEhJPFREREbEVBPEVQRDnCIIQBBERBHGehITEMwVBbAQJCQniUUEQxBOCIIitIIgnNZPJ5OWoKjtDc7A3I6WlWa7Keuxai4STk7Vbd5fuHK2sqxtatCAkcV9iKzYSp2IjxKkQElux0WIsEq+l+WLx/t2VP64q74rmLVZVjlb+ZLFc3DC5ENU7iUeNnSQmkzdZ7+Xq5T03rx4YewmCIB4RBPGYIIinSEgkEQTxbAkJCeKpIiIitoIgiMcEQRBfIwiCEAQRBHGehISExFMFQRAbQUKCeFIQxNcIgtgKgiCeFAQxmUxerurl6uEOosLQ4nhxYj5f+fz23N3lqDptiIbYCBGnEhJbERKnYiPEqRDiTGyEiHEsvZfXUbCcL356d+X3q8q7oHm7/bPFfPHjmFyYiidVlcnkTVdYrbuf/vC6cT2qciYIgnggCII4R0JCIokgni1ISEg8VURERMRWEMRXBEGcIwhCEEREEMR5EhISzxQEsREkJCSIRwVBEE8IgiC2giCeFARBCAkJaSUmk8nLUihx7fIeVRLWa+brtbTBENKIexIRpxIPRAhBbIQ4FQlxJkGIiI1GlddWwnK++A38z94BM2+pqvqbJ90/bDG5IA1V3aOSGEeCmEzecL1c2ttx89q+28crQ+JR8RwSp+LFJJ5bxGPiXPEM8Zi4L54l8ULiEbER54mniMfE08RjQkzedkFMXhdBQmusVuVUghDNVoh7EnEm8UASp+KeEKci8UBiI2Ijthp672bDoMprKeGk+/tV9c+T/J/eYjNvoapqi7V/NZ8vEZOLEuuKU+WhsY8iiMnkTVZYjeVXf3DD//GHP3O4MyOeLnFfPL/YiOcS8RVxrniGeCDui+eReG7xhMR54iniK+I88ZgQk3dPEJNXL4koi5Pu7mKpqgxDELERW3EmifsSW7GROBUbsRVxKvFAYiNiI7ZiIyRN7yTxujo6WqqDvX9TVbMko7fUzFumqiy6k/liSUwuUIXSDSFxJpTQ0E0mb7yuHOzv+PD6gVt3loah+YrEqXgxiecW8Zg4VzxDPCbui2dJvJB4RGzEeeIp4jHxNPGYEM8vSKFM3hZBTF6hJFpjvly7O1+pKhHDEERsxFZshIj7EluxkTgVGyFOhRBnYiM2IjZC3BMiTlVIvNaOF0t1uLesqlkSb6PmLVJVFiu/Pz9eDiYXrvfyo/evuHy46/qlXdcv77t55UAb6GNJTCZvvmI1dj/90Q0n666qSEhIJBHEswUJCYlniIiIiK0giK8IgjhHEIQgiIggiPMkJCSeKQiC2EhISBCPCoIgnhAEQWwFQTwpCIIQEhIS4tmCIEHQTCaTC5DE0OJktfbprbk7RycUQ6I1GxEbIYiNEHFfYitC4lRshDgVQpyJjdiI2AhxTyLiVOKNMT9eDvg33lLN2+WfHC+Xv2HyUvQqs2Fw5WDHOFK9dCWdL+7MtcRk8jbovezOZj66eVlVBEE8W5CQIJ4qIiIiNoIgiMcEQRBfIwiCEAQRBHGehISExDMFQWwECQmJJwVBfI0giK0gCOJJQRBbISEhni0IggRBTCaTC5LE0JqT9dqnt+ZuHZ1QtBYtiI2IjRD3JCJOJSS2IoQgNkKcioQ4kyA2IjZC3JOIM4k3zkn5L6vqH3oLNW+JqvqNk/I/xORl6tW9d/VAGoUgiduLtXHskphM3gbrsfuVH1xzsh5VOVeQkJAgniIiIiK2giC+IgjiHEEQgiAigiDOk5CQeKYgCGIjISFBPCoIgnhCEASxFQTxpCAIQkhISIhnC4IEQRCPCIKIZjKZvLgkhhbr9ejTW3fdunNCmLVISBAbERsh7knEmcQDSQhxT4hTkXggsRERCUKcSSLOJLaCeHMcHS0tyz+rqp94y8y8BapqZzX6/eP5UkxeqrL14fVDP/v8SFrTWsyKL+8s3bx+YCwXKjZiIx4qVSaTl6eXvZ3Bx+9d8tntudnQ3Bcb8VwiHhPnimeIx8R98SyJFxKPiI04TzxFPCaeJh4T4vnFI+IccSomb7OGmLxMQRK9us/vLp2supZmNnggsRGxEVtxJon7EluxkTgVG7EVcSrxQGIjYiO2YiNE3JfYio1EEG+O+dFSLu39h6rKhrfFzBuuqszX/my5WJp8N3qV3Z2Zy5d2zBejU0nM12urdTcMTVX5NhIiEsaxjL0be+nFLCQxG0KaqjKZXLTCeux+8oNrPvniiFkTzyPiCXGueIZ4IO6L55F4bvGExHniKeIr4jzxmBAvJu6Jc8R9cY4gaCZviTJ52dJicTL64s7c0GJoTeKBxEbERmzFRoi4L7EVG4lTsRHiVJxKbMVGbERshLgnRNyX2IoQCi1R3izHR0vj/t7Pq+qjJN4GzZvvdxbz5Ycm36le3XuXDyiqaKElPr+70Fp8E0m0xNBitRrdma98dnvh1tHSneOVxcnacrU2P1k7OhndOl5ZLteiJCaTC9d72R0G3//gsnHszhMREREbQRDEY4IgiK8RBEEIggiCOE9CQkLimYIgNoKEhMSTgiC+RhDEVhAE8aQgiK2QkBDPFgRBgiCeEAQRBPGEIIjJZPKCWoujxcqtu3NDGyRNYitIbERshCA2QsR9ia0IiVOxEeJUCImt2IiNiI0Q94SIUwmJrQghaChvpsVi+SH+ibdE8warqu+tun+QmHzHqlC8f+1AKYWWWI9luVxL4nkELTG0WK3X7hwvffrlsTvLtfXYDS2GIYYhkvxH9uDcx/o9Qezy8/mdqnfr27eX6ZlpW54ZIVkWEgjJMZIjBA4xOCBATojIcUSAMwcWfwQiBlIjMkSGQUayjDcseWm7e3p6cd/7brWcL7/fqVPnVtVby3l73vX6PI9Vk6bJFEdTTsbaV69OrdeUg4N37ux87Y9+/KWz9doYw4UkSbIRQt4QQu4QQoSQJITcpSjKg0IImRVFIVeFEHKLELIRQm4KIUQURZGHhVAIIVeEkCSEXBFCyEYIYXJwcLCPytn52lfPX1u10kTZyCyzZBbZimRRlI1EhMwii4hcKGSWzCJbJVmUnYrIhfLZCqdr/90Y48e+BY58psYYToafvXj5mhx8BGvDkycrT1+vvH59zmoy4ddfv/L7P/rC+flwl6KyHsPL16devj5jUBytVi6VnUQ2MovJrMnzV6e+8/RIUwwHB+/M2nC8WvlzP/rSz3753NEqG7lTHpBrcikPKW8lV2SWu+QeuSb3yTWR/eWK3CGXcoe8IbcbZsPBt0XIwXswrfLHv35pmlZM5ELZSmaRrZILZaeyyFZkkbJTZsksG7lQuVR2KovMsjGV4fP1/OVrT588/tdjjGY+Z0c+X//byxev5eBjGuvhd7546icnXxuDKc4HL1+dePro2HoMl0KlOD1be/HqxKuztWIlViSXyk4iG5lFFlmsVnl9cubp4yPk4OBdWp+v/dGPv/STX3xlZVLekAdkJ5eyj7K33FDuk3vkmtwl10TeTrZyh1zKHfKG7KlhCMPB529CDt61ysnrU2NktbJTZsksG7lQuVR2KovMspFFyk6ZJbNs5ELlUtnIrCwyiyyyHhT5fL169drj7zz+X/BXfMYmn6Exxl854z9y8NGNgfjhd58aYxBH5Tdfn2IoiqmsVpNXp2d+/m9e+eVXr52cD0dTVsVEcqnsVETILLKIKBvrkbPzoRwcvFPrMUwTf/Z3vnC+XrsUQm4RQogQEkLuUhRFeVAImYWiKDeFEHJDCCFCCLkphGxEUeRhIYRCyA0hJITcEEJ2QsgDolKZTCYHBwf3KV6erK0mO2WWzLKRC5VLZSNUFplFSEjZCGWWzLKRWVQulY1EWWQWWUSUjYHh83XGfzrG+I99xo58ZsYYTvifXz5/7eDTsB7Ds8crL15Pzs7WNBkNL16f+eLpI6fnay9fv/b89do0qKxWyVYkl8pGZmWRrcgiIhdCE6/PhqPVQA4O3qXz8+GPfvyln/3yOWOovCE7uZR9lL3lhnKf3CPX5C65JvJ2spU75FLukDdkT5klbxoODg4eEs7P10hmmSWzbGQWyaWykchGZpFFRC5kllkyi2xFsig7ichWZBGRNw3k8/P8+WvPnj7+X8cYzXyOjnxGxhhOhj9++eIEOfh0rEd++MUzP/3V16aJlXz94tTp2dqr0zO1ciRWNrJVcqHsZFYW2YosUnYyyywrnJ4Pj45WxhgODt6V9eB4NfmD3/vST/74K0dHkWtyKQ8pbyVXZJa75B65JvfJNZH95YrcIZdyh7whe4rk4N82E3Lwrk3OxzCZZZbMIluRLMpOIrIVWUTkQtlKZpGtkgtlp7LIVmSRcq+B5HPz4uWJp88e/b0xxr9f+dxMPi9/7cXzk9918MkZY2jiB188YQyLacrJ+dpqWlmFyUYuVHKh7CTKIrMoskjZKWSWzCZOz9fGeu3g4F07Ox/+3O9+Yd0wDCEkCSF3KYryoBBCZkVRyE0h5BYhZCOE3BRCiCiKIg8LoRBCrgghSQi5IoSQjRBC7hFKpZI8JEwODg4eNqxWGdNAMotslWRRdioiW5FFilwosySZRS5UcqHsVBbZiixS9jIMn6MXL07+PfxnPkOTz8QYw+m5/6EcfIKmMhXZKESSWTZyoXKp7CSykVlkEVJ2ylYyizDJ+RgODt61MYZR/uB3v7Rem4XcpSiK8qAQMgtFUW4KIeSGEEKEEHJTCNmIosjDQgiFkBtCSAi5IYTshJAHRKWS5GEhFEIOvkWGg/dhYGqlMckscqGSC2WnsshWZJGyU2bJLEQuVC6VjVBZZBZFQspbGYbPTTgZ/qcxhs/Nkc/H//jy1YkcfCpCJcPzk1NfPT81DKtVLiSzyFYkl8pOZZGtyCIi3yizZCuyNTEGE4aDg3drnA9/8KMv/Muff2WMoXJV2VtuKPfJPXJN7pJrIm8nW7lDLuUOuVX2kFmyv2zlVgPDwbfFhBy8aw0eH+X0fKjkQuVS2cisLDKLLLIoG5lllsyykVkkl8pGIhuZRRYR+e1MGD4vL5+fePTFo7+Fv+4zcuQzMMbonP9SDj4FMck05asXJ75+eWqMobKaQrIV2YrkUtnIrCyyFVlE5EJmmSWzbGSrTFiv1xyvGMPBwbu0NqxWkz/88Zf+xU+/8ug4byNXZJa75B65JvfJNZH95YrcIZdyh7whe4rkbWQrD5ocfKuEHLxj64ZnT458/fJEU0wkl8pGIhuZRRYRuZBZZsksshXJouwkspFZZBGR397aUPmcFOf8N2OM/7Y68ZmYfB7+/vMXJw4+vqlMeHly6l//8rmvXpxYrKZMk1kyC5GtkiyKspFZWWQrskiRC5lllsyykQuVbOXg4L05Ox/+3I++azVljOE+IYTMiqKQm0LILULIRgi5KYSQRVEUeVgIhRByRQhJQsgVIYTshJB7hFKpJA8JoSiE3CkkCTk4OHjAMMt3nh5bNySLomwkspFZZBGRC4XMkllkqySLspOIkFlkkSL/dnr+4sTs//QZmXzixhj/yTn/roOPqnK0mrw8OfWzX770q69PGExTppBZMstGtkoulJ1EWWQWIouUnUJmySwbuVC5VA4O3qsxhvUY/uD3v3B2PtwUQmahKMpNIYTcEELIRgi5KYRsRFGUB4UQCiE3hJAQckMI2Qkh5B5RqSR5WAiFkDuFkCRECDk4ONjDGMPTJ8eMjEHZSUTILLJIkQtlI8ksslVyoexURLYii5R3Yvh8nfMfjDH+Q5+JI5+wMYYT/varFycOPo7KasqL12d+8/yls/OsVjmSRdlKZtnIhcqlspPIRmaRRRZlp2wls8hWJJfKwcEHcb4e/szvfNc//9nXjKGyU+6Te+Sa3CU3lbeSrdwhl3KH3Cp7yCzZX7aylyxyTW41IdGwM1AYDEbkwhipYSCzwUCiYQwbxRiEYRYNhg9rIAzkwkAujIEIAw1GNsIYyMYwG2bDKAbDVowxkMUIw8YwkDHsjGE2LIbZMMvaENaDXFhLY1iszQZhLRnGYGAYDt6PgUm+8+TIy5MzZFFZZCuySNkps2SWjVyoXCobmZVFZpFFFuVg9vzFiSfPHv0fY4xmPnVHPm3//cvnJ8rBB1ZM5fXZuZ//+pWzc6YmRys7ZSuZRbYiuVR2KotsRRZZlJ0yS7YiW5FcKhthmiYMBwfvyxjDegx/+Ptf+Oc/+43joyN3yT3yhtwl10T2lytyh1zKHfKG7CmSt5GtPCiXspM75cIU52PNmY21bwwDa4ZrxjpaG76xdmEarNeEEes1ydrwhhhjuDSGrTUmNw3fyGwwzBoaGZNvDDIspjCYfCMXwmoKw6Um16wmO8NsZTYZbohhcmmNVrYmYr0mF9bDbGUxXJiwlsUYdobZGrmwxsQaWRlrVkcZY6iMMRy8e+sxPHty7PR8bX2+1jRZZBZZZFF2yiyZZSOzSC6VjczKIrPIIiIHV718ceLRs0d/HX/LJy6fqDGGc8aLFycOPqypGPzJb156fXZmaqUoO2WWbEW2IrlUNjIri2xFFhG5kFlmySwb2Sq5UHYyK1McT5Ph4OD9qRxP+Tv/6GcGpnIp98g1uUtuKm8lW7lDLuUOuVX2kFmyv2xlL1nkmtwqdxgMwxiYMGxkK7PcZzLLA7KY3GIyy23yjdxispOHTC5NuV+umTDQwOQek9xjshMGJnuKySK3OV8Pi9//4TOrKev1MBy8a7nwm1cnzs6HVRFZRORCZpkls8hWJIuyk8hGZpFFRN69geMyfL6ePH3kOM18yo58uv7Gi+cn5OADmsr5eu2nv3qhWE0rIt8os2SWjWyVfKNsZFYW2YosInIhs8ySWTayVXKh7CRiYCrDwcH7Ncawlj/68Zf+6U/+jdVRbpU35C65JrK/XJE75FLukDdkT5G8jWzlQbmUa3KrPCBEMtnKVu6SWfaWG7KVm3K3YZZrGnaG2+RSDZfWw70arjnPN9ZuSC6tvSHfOCfXrd2tbGVxbjHcaQw/+flXfvi9J7779LHz9doYDt6hgfC9p4+9PDnz4uTMyqyJyIXMMktmka2SC2UnEdmKLFIO7vHq5YnjZ4/+Ov6WT1g+QWMMp4xXL08cfDiVsV771798bio1EbmQWWbJLBvZKrlQdhLZyCwbWaTslK38DZTuAAAgAElEQVRklo1cqFwqO4lcGDw6inJw8L4Vj44mf+fv/8zANGUj1+Q+uaq8lWzlDrmUO+RW2UNmyf6ylb1kkWtyq+whO7kq98kse8ktMstt8oDs5CG5VN5Krsg9knvkDdlTZJF95IpsDKzXw5Pjld/9wTNivR4O3r2pnK2HV69PnZ0PsjFlY2qyEdkquVB2KotsRRYp71Uxlc/ds6ePrGjmUzX5NP3Xr16eOPiwVlN+/puXplKTIhcyyyyZZSMXKrlQdhLZyCxCQspO2UpmETKLyqWyUxEhNNGUg4MPYQzO1/zhn/3S+RiEbISQm0IIEUVRHhRCKITcEEJCyA0hZCeEkHuEUknysBAKIXcKIUnIRgi5JoTcIYQoQsgihNwUiqKQe4WQrRCKQi6FEHKLEEKEkLuEkKIoDwohZBZCbpEkyS1CyEYIIfcrikpC7hNCIYTshGnK67NzP/n5V05Pz62mlIN3bD2G1cQXT499/7uPffns2HceH3l0fOTZ42OFyIVKLpSNUFlkFiIh5b3Lt8Pzlydmf80nLJ+YMYYzxsuXpw4+nMqrV6d++fVrqyllp2wls8hWJJfKTmWRrcgii7JTZslWZCuSS2Ujs7LIVhyVabUyxnBw8CFUjo8m/9f/+68oU3lTripvJVfkDlnkDrlV9pBZsr9sZS9Z5JrcKnvITq7KfTLLXnKLzHKbPCA7eUgulbeSK3KP5B55Q/YUWWQfuSIPyjfGyPl67bvPHvnBl0+sB2MMB+9PZXG+Xnvx+swqRHKpbGRWFplFFhF5/waOphWGb4OnT4/HEVPlU3Tk0/PXXr08lYMP6WjKb16cmkrZKbNkK7IVyaWyU1lkK7KIyDfKLJllI1sl3ygbmZVFtiKcrTlqbVUWw8HBezaGsR7+nT/7ff/4X/7Ko6MVck1kf7kid8il3CFvyJ4yS/aXrTwol3JNbpUHZCc35S6ZZW+5IVu5KQ/INXlILpW95YbcI7lHrslbiCyyj1yRe+WmbESxmibPX5168frUn/mdLxxNWa+H4eC9GENlfb42GZTkUtlIZCOzyCIiH8aqTIbh2+HVy9O+eHr8l/G3fYLyCRljOGO8ennq4MMJQ37yi68cryaXyiyZZSNbJd8oG5mVRbYii4hcyCyzZJaNbJVcKDuJbGSWjSxSNgZWZVWGg4P3q3h8fOT//oc/dXY+TFNE9pcrcocscofcKnvILNlftrKXLHJNbpU9ZCdX5T6ZZS+5RWa5TR6QnTwkl8pbyRW5R3KPvCF7iiyyj1yRB+Wq7OQNuTDGcL4efvjlE995cmzIGMPBu1d59frMmWFyoewkIluRRcqHMzheTYZvlydPj39+xO9VPjWTT8tffvXy1MEHVk7Ozk1lEcosmWUjWyUXirKRKIvMQmSRIhcyyyyZZSMXKrlQdhLZyCxCQspOWI/hZL02xnBw8D6NwenZuT/68ZfOx1qR+4UQCiHkihCShNwQQnZCCLlHKJUkDwuhEHKnEJKEbISQa0LIHUKIIoQsQshNoSgKuVcI2QqhKORSCCG3CCFECLlLCCmK8qAQQmYh5BZJktwihGyEEPKAKCoJuU8ImYWQW4UQsghRhJCdEPKNymqa/Oqr1/74V8+FacrBezKRC2WnIrIVWaR8OIPjVYZvn5cvTn8Xf9EnKJ+IMYb18MsXr05/4OCDmsrzk1O//uq1oykyS2bZyIXKpbKTyEZmkUUWZadsJbPIViSXyk5lka3IIotyp4GjUjk4eF/Co0dH/u4//qmzs2GaclOuyB2yyB1yq+whG8m+spW9ZJFrcqvsITu5KvfJLHvJLTLLbfKA7OQhuarsLVfkHsk98obsKbLIPnJFHpSrspM3ZE8x0BgMfvjlE08eH1uPYQwH70hxcrZ2erY2TTYyK4vMspEsygcxsCqrMnx7ffH0+P+r/rxPTD4RY4zvf/Xi9Ffl4AOrvHp96tfPX5umkMwiW5FcKjuJyFZkkUXZKbNkK7IVyaWykVlZZCuyiMjDBo5K5eDgfVlN+c3z1/7Rv/iV4+OVyRW5Qy7lDnlD9pRZsr9s5UG5lGtyqzwgO7kpd8kse8sN2cpNeUCuyUNyqewtN+QeyT1yTd5CZJF95IrcKzdlI7fKHrKRN40xrEeePT72wy8fWY+MMRz86YWz9XBydqaSWVlkFllkUT6YVZnK8O327OmxiWY+JUc+HX+zycHHENNqMgxMMotsRXKp7FQW2YosIvKNMktm2chWyTfKRmZlka3IIiL7CWdjOIrKwcH7cG744fefefKz3zg/H6xyuyxyh9wqe8hGsq9sZS+5lJ3cKnvITq7KfTLLXnKLzHKbPCA7eUiuKnvLFblHco+8IXuKLLKPXJEH5ars5A3ZUzZym1yqTPHy9al/9Senfu8Hz6yOJusxGA7+FAaOjiavz5hENjKLLCLyYZ2N4Sgq32YvXp364snx38Df8AnJJ2CMYTBevDp18OFlNvGvfv7c0WoishXJpbKRWVlkK7KIyIXMMktm2chWyYWyk8hGZtnIIuW3MsXRNBkODt6P1ZSvX576B//sFx4dr1zIpdwhb8ieMkv2l608KJdyTW6VPWQjN+U+ZW+5IVu5KQ/INXlILpW95YbcI7lHrslbiCyyj1yRe+WmbORW2UM2cpfcJrNsjMH5eu17Xzz23afHhowxHPz2itOztdP1MNmKLCLykQweHU/G8K325MmxFc18Ko58Gv7Ci1enDj6OgZU8Pl45Ww+TrZILZSezssgsG1mk7GSWWTLLRi5ULpWdRDYyiyyyKL+188FqDMrBwfuwXg/f/+Kx7zx95NXJuaMpt8qtsodsJG8js+wll7KTW2UP2clNuUtm2UtukVlukwdkJw/JVWVvuSL3SO6RN2RPkUX2kSvyoFyVnbwhe8pGbpPbZCtvKFaryW+en3j58syPfvjENE3W6+HgtzMGR6ucna8pIouUj2rE+fkwTfk2e/Xq1HeeHP8F/COfiMmn4W86+KjWgy+ePTLGsKjkQtlJlEVmEbJI2SlklswiZBaVS2UnESGzyCKL8qcSzgc5OHg/Bs7O1/7o97+0Pl8zfCOE7IQQco9QKknykBCKQu4UQpIQIoRcE0LuEaIIIYsQQm4qikLuFUK2QigKuRRCyC1CCBFC7hJCiqIo9wohZBZCbpEkyS1CyEYIIQ+IopKQ+4SQWQi5VQghixAihOyEkHuEKIqQq0LIVaEohNxpwtGU9Vj76Z889/L1qdWUcvBbqhwfrYzIIuWjC2frofzb4G/6hOQjG2MYjBevTh18XEeryU9/9TUmuVB2EtnILLLIouyUWRaZRbYiuVR2KotsRRYReUcGj44nYzg4eG8eH6/8vX/6J16fnpumXJU9ZCN5G5llL7mUndwqe8hObspdMstecots5aY8IDt5SK4qe8sVuUdyj7whe4ossq9s5UG5Kjt5Q/aUjdwmt8lWHpQ7xDCs13nyaOV3vnxsPTLGcPD2itOztfPBlE/GwNGUqXybPXlybEUzn4LJx/dXX7w6dfDxna+HL589sV4Pi7JTESGzyCKi7JRZQmaRrZJcKhuhsshWZBGRd2c4OHj/zs7X/vDHXzo9Xwsh5B6hVJLkISEUhdwphCQhRAi5JoTcI0QRQhYhhNxUFIXcK4RshVAUQhYhhNwihBAh5C4hpCiKcq8QQmYh5BZJktwihGyEEPKAKCoJuU8IoRByqxBCFiFECNkJIfcIURQhV4WQq0JRCLlTCLkihFBIJkdTTk7P/fSXL52dn1tNKQdvaQyOpqzySQljDPl2e/Xq1Oyv+kTkIxtj/OPnr07/vINPwmrKz//NC2OkyKwsshVZRORCZpkls2xkq+RC2UlkI7NsZJHyzg0cT6kcHLxPj45X/sE/+4UXr86sprwhG8nbyCx7yaXs5FbZQ3ZyU+6SWfaSW2QrN+UB2clDclXZW27IHZJ75A3ZU2SRfWUrD8pV2ckbsqds5Da5TbbyoNwhW7kqbxqD9Xr44umx737n2JAxhoO3M8Zwdr42Sj4Rg0fHkzF8q33nyfHfrf6iT0A+ojGG2Xjx6szBp6EyxtrPfv3C8RTTZJGtyCJlJ7PMklk2cqFyqewkspFZZJFFeS8GHk8T5eDgfZrK2fna//NP/tij45VCZsn+spUH5VKuya2yh2zkptyn7C03ZCs35QG5Jg/JpfJWckXukdwj1+QtRBbZR67IvXJTdvKG7CEbuUtuk1n2klvkilzKHmJgjGEVP/r+d0wyxjAcvI3kbH3ubD2I3G+4kPdjjOHJ0bFh+DZ79uTIrJmP7cjH9ZdevD4jB5+IYZimyY++fOZXX7/SYArZyCJlp2wls2xkFsmlspPIRmaRRRbl/RkIOTh4r9aGJ0+OfP97j714caayr8yyl1zKTm6VPWQnN+UumWUvuUW2clMekJ3sI5fK3nJD7pDcI2/IniKL7CtbeVCuyk7ekD1lI7fJbbKVB+UO2cpV2UM2ciGzMgZ//Iuvfe+7Tz17emy9XhvDwZ6G4ehosloP52M4H2tjbZabMjxarZhycnYu78mE4Vvtxeszzx4f/SX87z6yycf1Xzn45KzHcHw0+Z3vPbGKtSEkpOyUrWQWIbNILpWdigiZRRYR5T0bmiYHBx/C2fnaH/7el07P14a7hVAUcqcQkoQQIeSaEHKPEEUIWYQQclMoCrlXCNkKoSiELEIIuUUIIULIXUJIpSjKg0LILISQG5IkuUUI2Qgh5AFRVBJynxBCIeRWIYQsQogQshNC7hGiKEKuCiFXhaIQcqcQckUIoRASQsgdQogi5E1Fq8mvv37pF796QVQO9jcGytE0eXx07MmjY4+PJsdHk+OjyfHR5PHR5PGjY9MqjcEYDv7U/gufgHxEY/bi9ZmDT1NlKi9en3j+6oyYzIrBNDFkshXZiuRS2cisLLIVWUTkAxjD40fHxhgODj6ER0cr//Bf/MLzl2dWUy5llr3kUnZyq+whO7kpd8kse8sN2cpNeUB2so9cKnvLDblTcqe8IXuKLLKvbOVBuSo7eUP2lI3cJrfJVh6UO2QrV2UP2ci+ssgsxhiM/OB7jx0frYwxjOHgHStOz9bWY3jnxvD40bExhm+7Z4+Pfl39wEeWj2SMYTZevD5z8GmrTPH6ZO3k7Nz5+TmT2eTxNHm1PheyVXKh7GRWFtmKLFI+iIGpHB9NDAcHH8Q05fTs3N/7J3/i8fGKyV6yyDW5VfaQjdyU+2SWveSGbOWmPCDX5CG5VN5Krsg9knvkmryFyCL7yBW5V27KTt6QPWQjd8ltMstecotckUvZQ3ayr2SWW43BegzPHh/78jvHhowxHLxb6/Vwul7Lu1V5dDQZw7fes8dHZs18TEc+nv/85eszOfjkjWE9eHScx8fHdGyRvDg54dz/zx68NMmaH4hdfn5ZWXVOd6s1mhmNxuPLjoBgSUDY3jjYssYs+AB8CZYs+A6sWZkw9idgAyvbEQSww3gmwmHPVSNLrUtfzqXyT2ZOndJbWXl5qyWdOt16n0fZq7xT7iWyl63sZSfl/RncXMWwWLw/m+Hjm2vf/95HPvv8lSs5Ju/kXo7KDLmXQzklW5ktB3Inh3JB7mWOvFNmy4GclJyURzJT5J3MkTu5KFO5l0cyU/ZyTI7JncySI3InU5khe5krO9nKRcW6fPXqjdev3/q933np6mplbIZh8euyvlp5e3tL+XUZg5urNPxW+PLVWx+9WP83+F89o5Xn899ZfKOMwWYMm82w2QzD8OXrW6vsVd4p9xLZy1aEhJT3arVKqywW79PA29uNv/sHn3rzdmP4pZAkhAghD4SQM0IUIWQnhJBDoSjkrBBCtkIoCiE7IYQcEUKIEHJKCKkURbkohGyFEHIgSZI8EkL2Qgi5IIpKQsgpIYRCyEkhZCeECCH3QsgFURQhUyFkKhSFkJNCCLkTQiiEhBByQghRhFySpFIUclYI+Rurq4z44Wdf+PLVG6Isfk3GGG6ur4zh12a1ymqV4bfKf+uZ5RmMMQzGV6/eWnxzhc8+f2V1leSdcq+ykzuRnYi8X2Pwcr2iLBbP4Xq98m///Kc++/wrV6sr93JUZsi9HMop2cpsOZA7OZQLci9z5J0yWw7kpOSkPJKZIu9kjtzJRTmUvTySmbKXY3JM7mSWHJE7mcoM2ctc2clWZsmBHDVsbYb11ZXf/fSFymYMi19d8ebNxltDfjVjDC/XV5TfJh+9WGvLM1p7Hp9++dUblcU312aDFck7ZS9bZSd3IjsReb/G4PoqlWGxeB63t8Pf+YNP/einX1m9II9lhuzlUM7JVmbJgdzJoVyQB3JJ3ilPkomckZyRB/IEkZ3MkYlclKncyyOZKXJKjslWZskRmcg7mSH3MleyldlyICdlJ9la5XYz/PVPv/A7n7zw8mZtsxmGxa9iDK6vr2zevLGRfD1jDC/WVyrDb58xhspzWXse/6hVFt9sqysaEeVetspO7kR2Ut67MbheZ311ZYxhsXguG8P1zcr3v/fSZ5+/drVKZsi9HMop2cpsOZA7OZQLci9z5J0yWw7kjOSMPJCZIu9kjtzJRTmUvTySmbKXY3JM7mSWHJE7mcoM2ctc2clWZsmBnJSdnNLK1spnn7/20ZuN737nmpExhsXXNww311devbk1JPMNjDG8vLmyKmP4rfPl67c+uln/l/jfPZOV5/H3Lb7xWmWg3EuUnWyFyE7Ke7dquLlZWV+tjDEsFs/t9nb423/wqc1mw3BaiCKE7IQQcigUhZwVQshWCEUhZCeEkCNCCBFCTgkhlaIoF4WQrRBCDiRJkhwIIUQIIRdEUUkIOSWEUAg5KYTshBBFyL0QckEURchUCJkKRSHkpBBC7oQQCiEhhJwQQhQhlySpFIWcFULuhJBHQpKQR0KIsMJ6lddv3vrRj79yu9lYrbL4VeXF+spKxnDRwBisV/no+koyht9mf98zWnse/yCLb7oGN+vcDkIie9mK7GSnvHcD66u1qzLGkMXi+Y0xvLhe+cH3PvIffvrK1VX2ci+Hckq2MlsO5E4O5YLcyxx5p8yWAzkjOSMPZKbIO5kjd3JRDmUvj2Sm7OWUHMqdzJIjcidTmSF7mSs72cosOSInJSflgRxXGfjxZ1/5zsfXPnm5NmSMYfH1VF7erLx5e+v17UYi8jeGrcHA9VWur1IZw4J/4BnlGYwxfvLV67ffs/hGK16/3fjy9VtXq5Wd3InsZKc8m80YPr65QhaLD0VlFf/XH/+V6/XayqGck63MkiOylWNyRh7IJXmnPEkmckZyRh7IE0R2MkcmclGmci+PZKbIKTkmW5klR2Qi72SG3MtcyVZmy4GclJ2clHt5mmIzhqsrfveTj1Q2Y1h8fUXy5vatzchms7GzWq2s4qq0yhgWd17erP+0+nueSd6zMYat8dXrW4tvvlX52ZevKCt3IjsReV4DK3l5szbGsFh8KNZXK3/21z/zH376paurFXJKtjJbDuRODuWC3MsceafMlgM5IzkjD2SmyDuZI3dyUQ5lL49kpuzllBzKncySIzKRdzJD9jJXdrKVWXJETkpOygOZr0zknTEYm+G733nhxc2VMRhjWHx92SoPDIZh8dDLmytteSZ5z8YYvnp1O2TxLVC8frvx+s1bFZGdiHwYxuBmvbJerQyLxYehUvw/f/xD11dXygPZyiw5Ils5JmfkgVySd8qTZCJnJGfkgTxBZCdzZCIXZSr38khmipySY3InF+WITGQqF+Re5kq2MlsO5KTs5KTcy9OUiZwybG2Gm+uV737ywpAxhsXiN+3lzZWttjyHlffvP7f41hiDF+srq1VGZCdFPhzFm9tbymLxoRhjWJU//N1P3G42QlEUclYIuRNCUcg7IYQcEUKEEHJKCCmKclEIIVsh5IgkSY4IIXsh5IIoikpCzgmhEEKOCiFkJ0QRQvZCCDkjRFHkUAh5J4SiEHJSCJkIIVshJISQE0IUIeSSJJVCzgoh5E4IeSRJEvJACCFCyGVFUVQIIceEsMLqKm9uN370sy/c3m6sShaL36wvX93a+nueydr79w+tLL5FNg0fvVj7/Ku3RlnlgzQGw4ayWHwobsfwR3/wib/+7AvDkJySI7KVY3JGHsgleac8SSZyRnJGHsgTRHYyRyZyUaZyL49kpsgpOSZ3clGOyESmckHuZa5kK7PlQE7KTk7KvTxNmcg5OZAHKkZ+8ouvfPRy7ZOX15IxhsXiN6Hs/EP8e89g7f37T7P4VhlUPn6x9uXrt8iHKbe3w/U6Y1gsPgxjWFn5W7//ib/68efWV5nKgdzJoVyQe5kj75TZciBnJGfkgcxX7mSO3MlFOZS9HJUZspdTcih3MkuOyETeyQzZy1MkW5klR+Sk7OSoPJD5ykQuyUTOCsWqvH711tvXt7776UtXZYxhWCx+I/4z/FPPYO39+9TiW2cMrlb5+HrtizdvVfJhKd7eDtfrMCwWH4rbzfCHv/exv/zR56yGygPZyjE5Iw/kkrxTniQTOSM5I49kpshO5shELspU7uWRzBQ5JcfkTi7KEZnIVC7IvcyVbGW2HMhJ2clJuZenKRM5JwdyVo5JZRM//tlXvvPxtY9v1jZjGMNi8ev2dz2TtffvBxbfSmOwusrHq7VXrzc2YygflNuxEYbF4sMxxpCVP/r+J/7qx59br/M3cigX5F7myDtlthzIGckZeSDzlTuZI3dyUQ5lL0dlhuzllBzKncySIzKRdzJD9vIUyVZmyRE5KTs5Kg9kvjKRSzKRs3JM9vJAWK/yxRdvvH5969OPb1TGGBaLX6OPPZO19+8HFt9aY7CSj16s3W5uffX61l7JY8PWYBhurlbebIYsFr99bjfDD37vEz/8yRfGSLmXM/JALsk75UkykTOSM/JIZorsZI5M5KJM5V4eyUyRU3JM7uSiHJGJTOWC3MtcyVZmy4GclJ2clAcyX5nIOTmQs3JM9vJAHlutcns7/OTnX/mdj19YX69sNsNi8WvysWey9v79wOJbbdgaw6qVT15eeXu78XazcbvZGMNeWLWyWnFV1ldJXr96o7JY/LYZYyB/9P1P/MWPPre+WjkpD+SSvFNmy4GckZyRBzJfuZM5cicX5VD2clRmyF5OyaHcySw5IhN5JzNkL0+RbGWWHJGTspOTci/zlQM5JxM5K8dkL4/kskL52RevvLxe++ijNTLGsFj8iv7QM1l7//4wi98aY7he5fpqLY8NO4NB5SqG36yQxeLDMzYbP/jex/7yR58bY6jcy71cknfKk2QiZyRn5JHMFNnJHJnIRZnKvTySmSKn5JjcyUU5IhOZygW5l7mSrcyWAzkpOzkpD2S+MpFzciBn5Zjs5YHMV+5la5VXb996/fNb3/3OtauujDEMi8XX9gPPZO39u7b4rTJsjWG4YAzrqyuv326U34irGBaLD9MYjA1/9Puf+PMff269yju5JO+U2XIgZyRn5IHMV+5kjtzJRTmUvRyVGbKXU3IodzJLjshE3skMuZe5kq3MkiNyUnZyUu5lvnIg52QiZ+WUyCOZKXJOKmPwk5+/8enL4eb6SjGGxeLr+IFnsvYcslg8MnCzzqu3Q/LrNgbX6ysaFosP1a2N7//ex/7yx58zhspxeac8SSZyRnJGHslMkZ3MkYlclKncyyOZKXJKjsmdXJQTcidTuSD3MleyldlyICdlJyflgcxXJnJODuSsHJO9PJD5ygWZCsVqlc9fv/XV21uffnyjVcYYFosnuvFM8p6Nrddvby0WxxSv3rz15i3l12ozhk9frg1ZLD5kV1f58c9e+fO//rn11cov5Z0yWw7kjOSMPJD5yp3MkTu5KIeyl6MyQ/ZySg7lTmbJEZnIO5kh9zJXspVZckROyk5Oyr3MVw7knEzkrJwSeSQzRS7JO5nII2OwGcOnH9+4uV7ZbIbFYq6b9ZW2PIO1Z5HF4pgxeLG+9vrta8mvyxi8WF/RFWNYLD5km02+/zsf+asffWEzWEV5kkzkjOSMPJKZIjuZIxO5KFO5l0cyU/ZyTI7JnVyUE3InU7kg9zJXspXZciAnZScn5YHMVyZyTg7krByTvTyQ+coFmcpEzlrFqnz+xWtvrq98/NE1MsawWHzI8p6NrddvNxaLUypv3t569eatyq9qYIWPXqyRxeKb4Gq18tPPv/KnP/y59dXKJTmQM5Iz8kCeILKTOTKRs3IoezkqM2Qvp+RQ7mSWHJGJvJMZci9zJVuZJUfkpOzkpNzLfOVAzslEzsopkUcyU+SSvJOJXJTjhoHh049fWq1WxhgWi3Nu1itteQZr79+reGGxOGUML9ZXbsfw9u1G+dqGneGTFzd2hsXim2GMjd/79KW/+Otf2IxhVQ5lImckZ+SRzBTZyRyZyEWZyr08kpmyl2NyTO7kopyQO5nKBbmXuZKtzJYDOSk7OSkPZL4ykXNyIGflmOzlgTxB5JxMZSJn5YQ8kJWBn3/+2ssXay+vr4gxLBanvPZM1t6/L/DCYnHGZgwv1ytfbjZuN5QnGwMNn764sTMsFt8cY7DZ8Le//x3/7q9/bnWVHMgZyRl5IE8Q2ckcmchZOZS9HJUZspdTcih3MkuOyETeyQy5l7mSrcySI3JSdnJS7uVpykTOyUTOyimRRzJT5JK8k4lclBNyIPmlbK3y6vVbb9/e+uTljVYZY1gsjvihZ7L2/n2B37VYXJB8fLP2xau3bsdQmWuM4WqVj29u7AyLxTfPZmz87ndf+vMf/YIxWOW05Iw8kpkiO5kjE7koU7mXRzJT9nJMjsmdXJQTcidTuSD3MleyldlyICdlJyflgcxXJnJODuSsHJO9PJAniJyTqUzkrJyQA9nJeZVbfPbFK995sXZzvbYZw2Jx4Ieeydr791f4OxaLC4adfPLyxldv3nr19lZSjhq2BmMML2+uvFivbcawWHxTjcFmM/ydH3zq3/3wZ67loeSMPJAniOxkjkzkrBzKXo7KDNnLKVUDfi0AACAASURBVDmUO5klR2Qi72SG3MtcyVZmyRE5KTs5KffyNGUi52QiZ+WUyCOZKXJJ3slELsoJOZDMlL0QVqt88fqtN7fDxy/WlDGGxeLOX3kma+/fD2WxmG1jeHGzdn195c2bW1+9uVUeGqyvsl6v3KyvKJsxyGLxjbYxfO87L/zlj1duN1yVk/JIZorsZI5M5KJM5V4eyUzZyzE5JndyUU7InUxlhuxlruyU2XIgJ2UnJ+WBzFcmck4O5Kwck708kCeInJOpTOSsnJAD2ckM2ctpq/L2duNnX77yyctrV1dXhsGwWHzhmay9fz+0WDzRGEN4cbP28mZtjI3NyLCxs2qlsjPGYAyLxbfBGNyO4e98/1P/9i9+5mqdB/JAniCykzkykbNyKHs5KjNkL6fkUO5klhyRibyTGXIvcyVbmSVH5KTs5KTcy9OUiZyTiZyVUyKPZKbIJXknE7koJ+RAMlP2Mt8qjJXPv3rrxfVwc71SGcPit9sXnsna+/eLLBZf0xiGnVxla2Vn2BrDThaLb5nN8OnHN26ur9yOjVWZykyRncyRiVyUqdzLI5kpezkmx+ROLsoJuZOpzJC9zJWdMlsO5KTs5KQ8kPnKRM7JgZyVY7KXB/IEkXMylYmclRNyIDuZIXt5mkR+KVby+s3Gm7e3vvPyxmqVMYbFb60/90xW3r9/ZbH4NRgYGBaLb7eBMYY/+v4nbm+HEEIuiKKSkHNCyFYIOSqEkJ0QRQi5F0LOCFEUIVMhZCoUhZCTQshECKEQEkLICSFEEXJJkkpRzgoh5E4IeSQkCXkkhAgh5LKiKFsh5JgQshVCyCMhhExFUYTshZALoiiKHBNCQgiFEHJUCDkQQu4kSULOCFGEXBaSSkWOKpKff/Ha6zdvrcrit9b/65msvX//wmKxWCyeZLMZvvvxjY9fXHn9dmNVjorsZI5M5KJM5V4eyUzZyzE5JndyUU7InUxlhuxlruyU2XIgJ2UnJ+WBzFcmck4O5Kwck708kCeInJOpTOSsnJGJ7GSG7OVpEpklD63Kqze33t5ufPzimjLGsPit8i88k7xnYwxvbjcji8VisXiK1SqvXt/6kz/7zHq9kjuRncyRiZyVQ7mXRzJD9nJKjslWZskRmcg7mSH3MleylVlyRE7KTk7KvTxNmcg5mchZOSXySGaKXJKp3MlFOSEHkpmyl/myE7koJ+SBMTCGj1+sXa2vjDEsvv3WVytbbXkOa8/g+mrl7e3GYrFYLObbbIaPXqx99HLtzdtbtTJX7uSiTOVeHslM2csxOSZ3clFOyJ1MZYbsZa7slNlyICdlJyflgcxXJnJODuSsHJO9PJAniJyTqUzkrJyRiexkhuzlaRKZJUfkqPyNQitfvN642Qw31yuVMSy+5SrPJc9gjPGT29vxPYvFYrF4klV59frWn/zFZ67XK6dkImflUO7lkcyQvZySY7KVWXJEJvJOZsi9zJVsZZYckZOyk5NyL09TJnJODuSknBJ5JDNFLslU7uSinJADyUzZy3zZiVyUE3JUpnJoDKyGj29uXK1iDMPi2+jqqj+r/q5nsvY8/oX8VxaLxWLxJJuGly+vfPRi7fXbW6vyTu7kokzlXh7JTNnLMTkmd3JRTsidTGWG7GWu7JTZciAnZScn5YHMVyZySSZyVo7JXh7IE0TOyVQmclbOyER2MkP28jSJzJIjclSmclTurbKVL1699uL6yvV6pTKGxbfP/+YZrTyPf2mxWCwWTzcY+KPvf8fmdqNBKIQcFULITggRQu6FkDNCFEXIVAiZCkUh5KQQMhFCKISEEHJCCFGEXJKkUpSLQsidEPJISBLySAgRQshlRVG2QsgxIYRshZBHQgiZiqII2QshF0RRFDkmhOyEUAghR4WQAyGEbCVJQs4IUYRcFpJKRU4KIWQihDwQQnZCyAMhihDyS6vy+s3Gl6/e2gwqi2+df+UZrT2Pf2mxWCwWX8tmM3x0c+U7n7zw5VdvrMoxmcq9PJKZspdjckzu5KKckDuZygzZy1zZyVZmyYGclJ2clAcyX5nIJZnIWTkme3kgTxA5J1OZyFk5IxPZyQzZy9MkMkuOyFGZylG5l3kKG7746rWPrteu1lfGGBbfGv/SM8ozGGN8/3Yz/tpisVgsvpZVeXO78W/+9Meu11dCDuVeHskM2cspOSZbmSVHZCLvZIbcy1zJVmbLgZyUnZyUe3maMpFzciAn5ZTII5kpckmmcicX5YQcSGbKXubLTmSWHJGjMpWjspenyVYeGCNXq7y4WamMYfENdrXKVlueS57BGMPWuN0Mi8Visfh6rlb59z/8uS+/emO1CrmXRzJT9nJMjsmdzJIjcidTmSF7mSs72cosOZCTspOT8kDmKxO5JBM5K8dkLw/kCSLnZCoTOStnZCI7mSnyNInMkiNyVKZyVO5lvmzlQA4NW5vho5fXVquMMSy+ma5WacszWnsGlTHGP4t/bLFYLBZfz+Bv/d4n/s2ffuamWHkkM0VOyTHZyiw5IhN5JzPkXuZKtjJbDuSk7OSk3MvTlImckwM5KadEHslMkUsylTu5KCfkQDJT9jJfdiKz5Igclakclb08TbZyIMfkb2SrfPX6jeurlev1SjIsvoH+mWe29nz+Cf6xxWKxWHwtmzFcr1c+/Xjty9e3VpKZspdjckzuZJYckTuZygzZy1zZyVZmyYGclJ2clAcyX5nIJZnIWTkme3kgTxA5J1OZyEU5IRPZyUyRp0lklhyRozKVo3Iv82UrB3JKDuRvRPLmdrjdvPXi5toqxrD4ZvlfPLM8kzGGrbEZw2KxWCy+nlV5s9n4k3//E9frK2dFTskx2cosOSITeScz5F7mSrYyWw7kpOzkpNzL05SJnJMDOSmnZC8PZKbIJZnKnVyUE3IgmSl7mS87kVlyRI7KVI7KXp4mWzmQY3IgJ+WXxhheXF+5Wl8ZY1h8+FZlqy3Pae2ZVMYYFovFYvH1bcZwvVr5nU9e+MWXb6xWuZe9HJNjciez5IjcyVRmyF7myk62MksO5KTs5KQ8kPnKRC7JRM7KMdnLA3mCyDmZykQuygmZyE5mijxNIrPkiByVqRyVe5kvWzmQU3IgJ+W4yqs3w2rcerFOZQyLD9tnlee28rz+Z4vFYrH4lQz84e9/4u3txoiiCJkKIVOhKIScFELInRBCISSEkBNCiCLkkiSVopCzQsidEPJISBLySAgRQshlRVG2QsgxIYRshZCjQshUiCJkL4RcEEVR5JgQshNCIYQcFULIRAghW0mSkDNCFEUuC0mlImeFkIkQ8kAI2QkhD4QoQshloSjkTgiZCiFkK4SQB0IIOaIoSitshq9e3dpshrL4sP0TH4A8ozHGP9qM8X9YLBaLxa9kVf7yx7/wiy/eWK3ySzmUO5klR+ROpjJD9jJXdrKVWXIgZyUn5YHMVyZySSZyVo7JXh7IE0TOyVQmclFOyER2MlPkaRKZJUfkqEzlqNzLfNnKgZySAzkp50Tu5bgxWF9lvQ5ZfHhW9V9U/6dnlmc0xrA1tiwWi8Xi6yvG4F//u89cX6/koWxllhyRibyTGXIvcyVbmS0HclJ2clLu5WnKRM7JgZyVY7KXBzJT5JJM5U4uygk5kMyUvcyXncgsOSJHZSpHZS9Pk60cyDE5IifljDKVecZg1XBzc2VVxrD4QFS22vLc1p5RZYzxx/QfWSwWi8XXNgbF7373hZ99/tp6lb3MkiMykXcyQ/YyV3aylVlyRE5KTsoDma9M5JJM5Kwck708kCeInJOpTOSinJCJ7GSmyNMkMkuOyEl5J0flXubLVg7klBzISTknci9PU/bKVl69vnV9dWW9XhnD4sPwf1c+BGvP77/HP7VYLBaLX9kf/u7HfvqLr4yu5LQckYlM5YLcy1zJVmbLgZyUnZyUe3maMpFzciBn5Zjs5YHMFLkkU7mTi3JCDiQzZS/zZScyS47IUZnKUdnL02QrB3JMjshJOaNMZb5yVuXN7a3bzcbN9ZXKGBbP63/0gcgzG2PYGmNYLBaLxa+o+NFnX/js89euVpnKEZnIO5khe3mKZCuz5IiclJyUBzJfmcglmchZOSZ7eSBPEDknU5nIRTkhE9nJTJGnSfZyUY7ISXknR+Ve5stWDuSUHMhJOSdyL09TZshOfmmM4WZ9ZXWVMSyeQdlpy4dg7ZlVxhj/XP5ri8VisfiVff97H/vxz76yXl15JBOZygW5l7mSrcyWAzkpOzkp9/I0ZSLn5EDOyjHZywOZKXJJpnInF+WEHMhOZshe5stOZJYckaMylaOyl6fJVg7kmByRk3JGmcp8ZabsZCL3Kq83G6uR63XI4r3755UPRT4AY4z/GP/aYrFYLH4t/sNnX/js89euVpGJvJMZspenSLYyS47ISclJeSDzlYlckomclWOylwfyBJFzMpWJXJQTMpGdzBR5mmQvF+WInJR3clTuZb5s5UBOyYGclHMi9/I0ZYbs5EDOCmMMNzdXksV79Z9U/58PRD4AYwxbw2KxWCx+bf7kz35sdbWWX8oFuZe5kq3MlgM5KTs5KffyNGUi5+RAzsox2csDma9ckKncyUU5IQeykxmyl/myE5klR+SoTOWo7OVpspUDOSZH5KScUaYyX5kpO5nIWTluDNbrrEpl8V605UOx8gGobP1PFovFYvFr8/u/84mxGULICSGKEHJJkkohZ4UQcieEPBKShDwQQogQcllRFBVCyDEhZCuEkEdCCHknRFGE7IWQC6IoyhEhhIQQCiEnhZADIWQrJElCzoiiCLksSSqKnBRCyJ0QQh4IISGE3AshipDLQlEUshVCyFQIuRNCyAMhhByKoighhFxWFOWMkCQJ2QohR4WQI0K04u1muN0MxrD4jfsfKh+SfCDGGN/DTywWi8Xi1+aP/+wn1qsr5ZdyL3MlW5ktB3JSdnJS7uVpykTOyYGclWOylwcyX7kgU7mTi3JCDmQnM2Qv82UnMkuOyFGZylHZy9NkKwdyTI7ISTknci/zlZmyk4mclTPySDI1BuurrFZZ/Ma05UOSD8gY4+f4jsVisVj8Wnz2i1d+/NOvXK2zk6dItjJLjshJ2clJuZf5yoGck4mclWOyl0cyU+ScTGUiF+WETGQnM0WeJtnLRTkiJ/3/7MHPz237Ydjl5/OeazuOQ5zSoCRqKopUJCQGSIUBkRgiQG6lKiojJtAxQ0QGzNJh1UQdMGGC+AsihJSkgj+ADChIlAkgJAoijmPXsd17r8+595yz2Hvnfd/sd+211l773mP7/Pg+Tx5kUR5lvxxkJmsyk1XZEnki+5UdcpSZbMqGPJFcM00UHz1LZXij/q/qr3vLfOTt8h/iHxmGYRjeiF/6ha/5/o8+ZXqmXJEcZLfMZFWOsipPZL9yJlsyk01ZkpM8kf3KFTmXe7kqKzKTo+yQk+yXo8guWZBFOZdFeZT9cpCZLMmCrMqWyKPsV3bKUc5kUzbkQrJLhHLy8tXkK89Qhjfm73oL5S0yTZOD18gwDMPwRvzwkxe+/6Pnnt3lUnKQXbIgq3KUVXmU/cpMtuRMNmVN5EJ2imzJuZzJVVmRMznKTpHbJCe5KiuyKA+yKI+yXw4ykzWZyapsiTyR/coOOcpMNmVDnkj2KpsmFM9KZfjSOvC2ufMWqRz8J4ZhGIY35pvf+JqjaZqQpFIpZFMIuRdCyBMhSRLyRAghQsh1RVEOQgiZCyHkIIQsCiHnQhRFTkII2VYURZaEkKMQCiFkUQghZ0IIOQhJQjaEKIpcF5JKRciqEHImhJBHIYSEkCdCiBByXSgKuRdCzoUQci+EXAghS6IoIoSQbUVRlA0hSchBCCEXQgiZCSHkJEmSTVEU5ao7NPHq1WSaJsOX8ncqb6O8ZaZpcjAZhmEY3piPP/nM9/75c8/uck0WZFWOsiqPsl+ZyZacyaasiVzITpFr8iBnclVW5EyOslNOsl9ykquyIovyIIvyKPvlIDNZk5msypbIE9mv7JCjzGRTNuSJZK9yk9wrc8VdGb6QDryN7rxlKge/ZRiGYXhjfuEbX3U0TRaFkHshhDwRkiQhT4QQIoRcVxTlIISQuRBCDkLIohByLkRR5CSEkG1FUWRJCCEhFELIohBCzoQQchCShGwIURQh20JSqQhZFULOhBDyKISQEPJECBFCrgtFIfdCyLkQQu6FkAshZEkURYQQsq0oirIhJAk5CCHkQgghMyGEnCRJsimKolwVQqgoypLXE69fT6ZpMtzkP628rfIWmqbJwWQYhmF4Yz7+9DPf+9Fzz+6SBVmVo6zKo+xXZrIlZ7IpayIXslPkmjzImVyVFTmTo+yUk+yXnOSqrMiiPMiiPMp+OchM1mQmq7Il8kT2KzvkKDPZlA15Itktsl8eRDZlWVEZdunA2+rOW6hy8DuGYRiGN+YXfv6rcjD5cyGEPBGSJCFPhBAihFxXFOUghJC5EEIOQsiiEHIuRFHkJISQK6IosiSEkBByEEIWhRByJoSQg5AkZEOIogjZFpJKRciqEHImhJBHIYSEkCdCiBByXSgKuRdCzoUQci+EXAghS6IoIoSQbUVRlA0hSchBCCEXQgiZCSHkJEmSTVEURbaFECqKIotCyEwIMeHVNJmmybDptypvs7ylpmlyMBmGYRjemE+ef+Z7P3zu2V3mcpRVeZT9yky25Ew2ZU3kQnaKXJMHOZOrsiIzyU45yX7JSa7KiizKgyzKo+yXg8xkTWayKlsiT2S/skOOMpNN2ZAnkt0i++VBZFNWZFHmUoZlHXib3XlLVQ7+nmEYhuGN+cbPfVWYpklIkoQ8EUKIEHJdUZSDEELmQgg5CCGLQsi5EEWRkxBCroiiyJIQQkLIQQhZFELImRBCDkKSJBtCFEXItpBUKkJWhZAzIYQ8CiEkhDwRQoSQ60JRyL0Qci6EkHsh5EIIWRJFESGEXFcUZUNIEnIQQsiFEEJmQgg5SZJkUxRFkW0hhIqiyKIQMhNCHoUQ8iCEHE0Tk2Hmtypvu7zFpmlyMBmGYRjemE9fvPS9H/zYs7tcyKPcppzJlpzJpqyJXMhOkWvyIGdyVVZkJtkpJ9kvR5GrsiKL8iCL8ij75SAzWZOZrMqWyBPZr+yQo8xkUzbkiWS3yH55ENmUFVmUuVzISYYVHXjbfeQtVpmm6T/APzIMwzC8ET//tY/cYZrozhPZr5zJlsxkU5bkJE/kBpEtOZcz2ZQVmclRdshJ9stRZJcsyKKcy6I8yn45yEyWZEFWZUvkUW5TdshRzmRTNuRCsktkv5wp12RFLmRJLuQkwxX/TuVdkHfANE3/G/51wzAMwxvx6YuXvvvDH/vKXW5RzmRLzmRT1kQuZKfINXmQM7kqKzKT7JST7JejyFVZkUU5l0U5yW3KTNZkJquyJfJE9is75Cgz2ZQNeSLZLbJfHkQ2ZUUWZS4XcpLhBv9r9W94R+QdME3TV/CZYRiG4Y354+99bJomlTXlTLZkJpuyJCd5IjeIbMm5nMmmrMhMjrJDTnKbRHbJgizKuSzKo+yXg8xkSRZkVbZEHuU2ZYcc5Uw2ZUMuJLtE9suZck1W5EKW5EJOMnxBH1WvvCPuvAOqz/FfGYZhGN6Yv/yLX/f69WSuKMpBCFkSQg5CCLkQQsi5KIqQkxByRRRFkSUhJIRQCCGLQshMCLmXJAnZEKIIuS4klYqsCiHkTAh5IoQchZAnQhQh5LqiKOReCDkXQu6FEPJECCFzURRFhJDriqIoK0KSJOQghCwKIQtCyEmSJMmmKIpcF0KiKMqSEEJmQsijEPIghJCTEEURMnxB/6B65R2Sd8Q0TQ4mwzAMwxvzx9/7GJPKn8uWzGRTluQkT+QGkS05lzPZlA05k6PskJPcJpFdsiCLci6L8ij75SAzWZIFWZUtkUe5TdkhRzmTTdmQC8kukdvkXrkmK3IhS3IhJxnesA68S+68IyoH/7FhGIbhjfnlX/q6169DyJIQchBCyIUQQs5FUYSchJAroiiKLAkhRyEUQsiiEDITQshBkiRkQ4gi5LqQVCqyKoSQMyHkiRByFEKeCFGEkOuKopB7IeRcCLkXQsgTIYTMRVEUEUKuK4qirAhJkpCDELIohCwIISdJkiSboihyXQhJRVGWhBAyE0IehZAHIYSchCiKkOEN+zuVd03eIdM0OfhT/EuGYRiGN+Lb/+xT0/Ra5Sgz2ZQlOckTuUFkS87lTDZlQ87kKDvkJLdJZJcsyKKcy6I8yn45yEyWZEFWZUvkUW5TdshRZrIqG3Ih2SVym9wr12RFLmRJLuQkw0/BD6q/5B2Ud8w0TQ4mwzAMwxvx2eevfPfPfuzZszzKqqyJXMhOkWtyLvdyVVZkJtkpJ9kvR5GrsiKLci6LcpLblAVZkpmsyhXlXPYrO+RBzmRTNuSJZLfIfnkQ2ZQNuZC5XMhJhp+BDryLPvKOqUzT9O/hvzcMwzB8aV/9yjNf+2o+fzWpLMmSnOSJ3CCyJedyJpuyIWdylB1yktsksksWZFHOZVEeZb8cZCZLsiCrsiXyKLcpO+QoM1mVDbmQ7BK5Te6Va7IiF7IkF3KS4Wfo36+8q/KOmqbpf8C/axiGYfjSXr167dvf/8RHz+4cZU3kQnaKXJNzuZersiIzyU45yX45ilyVFVmUc1mUk9ymLMiSzGRVrijnsl/ZKUc5k03ZkCeS3SL75UFkUzbkQuZyIScZ3hL/bfWb3mF5R03T5GAyDMMwvBHf/cEnXr2aVP5CTvJEbhDZknM5k03ZkDM5yg45yW0S2SULsijnsiiPsl8OMpM1mcmqbIk8ym3KDjnKTFZlQy4ku0Ruk3vlmqzIhSzJhZxkeAt14F2Wd9g0Tb+CPzEMwzB8aS9fvfan3//Es2fPyIXsFLkm53IvV2VFZpKdcpL9chS5KiuyKOeyKCe5TQ4ykyWZyapcUc5lv7JTjnImm7IhT+Qou0T2y4PIpmzIhczlQk4yvOV+tfqOd9xH3mHVd6Zp+h38Z4ZhGIYv5aNnd77y1Y+8ejUJuUFkS87lTDZlQ87kKDvkJLdJZJcsyKKcy6I8yn45yEzWZCarsiXyKLcpO+QoM1mVDbmQ7BK5Te6Va7IiF7IkF3KS4R3xn1ff8R7IO26aJgd/jF8zDMMwfCkvX7723R986tmzO5si1+Rc7uWqrMhMslNOsl+OIrtkQRblXBblJLfJQWayJDNZlSvKuexXdspRzmRTNuSJHGWXyH45U67JilzIXBZFhnfQn+JXKu+DvAemaXIwGYZhGL607//z5z7//JXKE5EtOZczuSorciZH2Slym0R2yYIsyrksyqPsl4PMZE1msipbIo9ym7JDjjKTVdmQC8kukdvkXrkmK3IhS3IhJxnecR14X+Q9MU3T38A/NgzDMHwpr19P/uT7n3j20Z071+Rc7uWqrMhMslNOsl+OIrtkQRblXBblJLfJQWayJDNZlSvKuexXdspRzmRTNuSJHGWXyH45U67JilzIXBZFhvfIX6v+qffInfdE9T/jtw3DMAxfyt1dvv5zH2maXAohJIRQCFkVQmZCyEFIkuSKKIqQ65JKRZFVIYTcCyHkUQghIYQ8CiGKkOtCURRyEELIuRByL4RcCCFLoihKCCHXFUXZEJIkIQchZFEIWRBCTpIkIauiKIpcF0JFUZQlIYScCSHkJISQByHkUYiiyPAe+a3qn3rP5D0yTZOD/wn/pmEYhuELm6bJn3z/Ex89u0PO5V6uyorMJDvlJPvlKLJLFmRRzmVRTnKbHGQmSzKTVbminMt+Zacc5Uw2ZUOeyFF2ieyXM+WarMiFLMmFyPCe+8PqW95Dec9M0+TgJZ4ZhmEYvrAffPyZF5+/8ix/IVdlRc7kKDtFbpPILlmQRTmXRXmU/XKQmazJTFZlS+RRblN2yFFmsikb8kSyS+Q2uVeuyYpcyJJcyEmGD8RrPKu8j/IemqbpDq8MwzAMX9w0+c4PPvXs7s6WrMhMslNOsl+OIrtkQRblXBblJLfJQWayJAuyKhvKuexXdspRzmRTNuSJHGWXyH45U67JilzIklyIDB+oj6pX3lMfeQ9Vr6dp+hb+wDAMw/DFlK9/9SMvPn+lci4rciZH2Slym0R2yYIsyrksyqPsl4PMZE1msipbIo9ym7JDjjKTTdmQJ5JdIrfJvXJNVuRCluRCTjJ84P6t6pX32J33VPWH+AeGYRiGL+wXv/FVr15PQgg5E0LIQZIkZEOIosh1IalUZFMIORNCngghRyHkiRBFCLkuFIXcCyHnQgi5F0IuhJAFRVFECLmuKIqyISQJOQgh5EIIITMhhAhJkmyKosh1IYSKoqwJITMh5FEIORdCHkVRhAwfuN+u/rH3XN5j0zQ5+H/wVw3DMAxfyD//5IUXn79SOcmZHGWnyG2Sk1yVBVmVB1mUR9kvB5nJmsxkVbZEHuU2ZYccZSabsiFPJLtEbpN75ZqsyIUsyYWcZBgu/C/4G5X3Xd5z0zQ5+D/x1w3DMAxfwOQ7P/jUs7s7OcpRdshJ9stRZJcsyKKcy6Kc5DY5yEyWZEFWZUM5l/3KTjnKmWzKhjyRo+wS2S9nyjVZkQtZkguRYdj0f+NfqXwI8gGYpsnBd/HLhmEYhpt9/PxzL168Uq6L3CY5yVVZkFV5kEV5lP1ykJmsyUxWZUvkUW5TdshRZrIpG/JEskvkNrlXrsmKLMpcLuQkw7DLn+FfrHwo8oGYpsnBc3zNMAzDcLPv/tmPPXuWCznJfjmK7JIFWZRzWZST3CYHmcmSLMiqbCjnsl/ZKUc5k03ZkAvJLpH9cqZckxW5kCW5EBmGm73CR5UPST4g0zQ5mAzDMAw3+/j5556/eOmuiNwmOclVWZBVeZBFeZT9cpCZrMlMVmVL5FFuU3bIUWayKRvyRLJXuUnulWuyIosylws5yTB8YZ/jq5UPTT4w0zQ5mAzDMAw3+94Pf+zZXfbIUWSXLMiinMuinOQ2OchMlmRBdFthTQAAE0lJREFUVmVDOZf9yk45yplsyoZcSHaJ7Jcz5ZqsyIUsyYXIMLwxHfgQ5QM0TdPX8NwwDMNwk09efO75i5fuypLkJFdlQVblQRblUfbLQWayJjNZlS2RJ7Jf2SFHmcmmbMgTyV7lJrlXrsmKLMpcLuQkw/DGdeBDlQ/UNE2/jO8ahmEYbvLPfvCpnt0JOYrskgVZlHNZlJPcJgeZyZIsyKpsiTzKfmWnHOVMNmVDLiS7RPbLmXJNVuRCluRCZBh+oj6qXvmA5QM2TdO/iv/DMAzDsNvzFy/9+MUr3bkqC7IqD7Ioj7JfDjKTNZnJqmyJPJH9yg45ykw2ZUOeSPYqN8m9ck1WZFHmciEnGYafir9cfd8HLh+4aZp+Hp8YhmEYdvv+j567u8uSLMiinMuiPMp+OchMlmRBVmVL5FH2KzvlKGeyKRtyIdklsl/OlGuyIheyJBciw/BT943qU4MMpmlyMBmGYRh2ef7ZS5++eOmuZEUW5UEW5VH2y0FmsiYzWZUtkSeyX9khR5nJpmzIE8le5Sa5V67JiizKXC7kJMPwM9OB4c9lOJmmycFkGIZh2OX7P3zu2bM8yqKcy6I8yn45yEyWZEFWZUvkUfYrO+UoZ7IpG3Ih2SWyX86Ua7IiF7IkF3KSYfiZ68DwFzI8mqbJwWQYhmG46vlnLz3/7KXKXB5kUR5lvxxkJmsyk1XZEnki+5UdcpSZbMqGPJHsVW6SB5FNWZFFmcuFnGQY3iodGJ7K8MQ0TQ4+xjcMwzAMm/7s4+cqd85lUR5lvxxkJkuyIKuyJfIo+5WdcpQz2ZQNuZDsEtkvZ8o1WZELWZILOckwvHU+xTcqw6UMF6ZpcvApvm4YhmFY9eLzl56/eK1cyqPsl4PMZE1msipbIk9kv7JDjjKTTdmQJ5LdIvvlQWRTVmRR5nIhJxmGt9qf4Ncqw7IMi6ZpcvBt/KphGIZh1Q8/fiER8ij75SAzWZIFWZUtkUe5TdkhRzmTTdmQC8kukf1yplyTFbmQJbmQkwzDO+F/x79WGdZlWDVNk4P/Ef+2YRiGYdGLz1/58WcvPSt75SAzWZOZrMqWyBPZr+yQo8xkUzbkiWS3yH55ENmUFVmUuVzISYbhnfOH+FZl2HZnWFU5+A38fcMwDMOir33lmTvXhaKQeyHkXAgh90LIhRCyJIoiQgi5rijKhpAk5CCEkAshhMyEEHKSJMmmKIoi20IIFUWRRSFkJoQ8CiHkQQh5FKIIGYZ3zn9RfasyXJdhl2mavoXfNwzDMFx4+eqVT56/dFfOlZmsyUxWZUvkiexXdshRZrIpG/JEsltkvzyIbMqKLMpcLuQkw/Be+I3qjwy7ZdhtmqZfx/9rGIZhuPCjT164E3dmsiQLsipbIo9ym7JDjnImm7IhF5JdIvvlTLkmK3IhS3IhJxmG98o3qx8ZbpLhJtM0OfghftEwDMPw6OXLV3782Ut1Z01msipbIk9kv7JDjjKTTdmQJ5LdIvvlQWRTVmRR5nIhJxmG99KP8M3KcLs7w00qB9/EHxmGYRgeffTRM8rkL4QQci+EXAghS6IoIoSQ64qibAhJQg5CCLkQQshMCCEnSZJsiqIosi2EUFEUWRRCZkLIoxBCHoSQRyGKkGF4L/0RvlkZvpg7w80qB7+Bv28YhmF49HNf+UjTJOReCCFPhBAyF0VRRAi5riiKsiIkSUIOQsiiELIghJwkSZJsiqLIdSEkiqIsCSFkJoQ8CiEPQgg5CVEUIcPwXvsd/EZl+OIyfCnTNH0Lv28YhmE4+fTTz7y+S5ZlS+RRblN2yFHOZFM25EKyS+Q2uVeuyYpcyJJcyEmG4YPzN6s/MHxpGb60aZq+jk8NwzAMXr1+7dMXL92Vo1xRzmW/skMe5Ew2ZUOeSHaL7JcHkU3ZkAuZy4WcZBg+WC/wi9VnhjfizvClVT9G+D3DMAwfuGd3d+4iZEkURQkh5LqiKBtCkhByEEIuhBAyE0LISZIkm6IoilwXQkVRZFEImQkh5CSEkAch5FGIImQYPli/j5+rPjO8MRneqGmafhO/ZxiG4QP28tVrLz57qXJSzmW/slOOciabsiFPJLtF9suDyKZsyIXM5UJOMgzDmb9V/b7hjcvwxk3T9HV8ahiG4QP2yYvPkZDblB1ylJmsyoZcSHaJ3Cb3yjVZkQtZkgs5yTAMMy/wzeqF4SfizvDGVT9G+D3DMAwfqK9/9Zkmcl1RFGVDSBJyEELIhRCyIISchCRJNkVR5LoQkoqiLAkhZCaEPAohD0IIOQlRFCHDMMz8Pn6uemH4icnwEzVN02/i9wzDMHyAnr94ZTJZUnbIUWayKhtyIdklcpvcK9dkRS5kSS7kJMMw7PC3qt83/MRl+Imbpunn8T183TAMwwfk9TR5/uKlStkpRzmTTdmQJ3KUXSL75UFkUzbkQuayKDIMww1e4iuV4afjzvATV32Kn8fvGoZh+IDclWd3d8qGkCQJOQghF0IImQkh5CRJErIqiqLIdSFUFEUWhZCZEEJOQgh5EEIehSiKDMNwg9/GVyrDT0+Gn6ppmn4F30aGYRg+ANPryfPPX6r8hRzlTDZlQ57IUXaJ7Jcz5ZqsyIXMZVFkGIYv4WP8WvWx4afuzvBTVX0Hd/hdwzAMH4DuclcmSZKQgxByIYSQBSHkJEkSsiqKosh1IVQURVkSQsiZEEJOQgh5EEIehSiKDMPwJfw2/oXqY8PPRIafmWmafgXfRoZhGN5j0+vJi89f686mbMgTOcoukf1yplyTFbmQJbkQGYbhDfuF6hPDz9Sd4Wem+g7u8LuGYRjeY93l7m6yJIQsCCEnSZKQVVEURa4LoaIoypIQQs6EEHISQsiDEEJOQhRFhmF4g/4hOvjE8DOX4a0wTdOv4NvIMAzDe2gyefHZa3dZlydylF0i++VMuSYrciFLciEyDMNP0IRfrf7U8Na4M7wVqu/gDr9rGIbhPZTcNbkQQk6SJCGroiiKXBdCRVGUJSGEnAkh5CSEkAchhJyEKIoMw/AT9A9xV/2p4a2S4a0zTdNfwj/BXzEMw/AeeW3y+cvX8hdylF0i++VMuSYrciFLciEyDMNP0f+Hv1a9NLyV7gxvnerP8Ov4m4ZhGN4jd3JXkiQhq6IoilwXQkVRlCUhhJwJIeQkhJAHIYSchCiKDMPwU/S38evVS8Nb687wVqpUf4Dw3xiGYXhPfOUu02RdFEWuCyFUFGVNCJkJIY9CyLkQ8iiKImQYhp+y/xId/HeV4e2W4Z0wTdMv4Z/g1w3DMLzjPn/1msmfi9wm98o1WZFFmcuFnGQYhp+xP8a/XL00vDPuDO+E6gf4q/iPDMMwvOO+cpeiyHUhhIqirAkhMyHkUQghD0LIoyiKkGEYfsb+Nv5K9dLwTsnwzpmmycF/jb9rGIbhHfXq9WvTZFXulWuyIosyl/+/PXiN/YWuCzj++hzJPMepDQ5ueYHUtkhFm5bXRLZqleajVtIy8TKX1y5rmbm0iz3Q1loZU9xyoMsHp3rQA9G5mQOtUTSdigZi88bUUkC7Hbwc/fYTlDkOoMA5nP/v/3+/XkcZNxhJdpg349yZke00srXWWt+HT+LekmTLrLUc+foybjS+zYzvZNyKcZRxS8ZRhpFkh/o0Hj4zX5Sttk+21sx8EffB2ZJky8yMuw2DmWGGGWbcksFgML7NYDAYNxkMxrcMBoNxg8EwwwwjyQ71EzPzgJn5omy9fbLVZsbMXILBSyXJFpkZZtyawWDczGAwbjIYDMa3DAbjJsMMMwxGkh3shZiNd8muMbKrrLVsHMIvSpIt8PWvL8uNxq0Yt2jc3DjKuMFIskUuwHNmRnafkV1prXUvvBs/Ikl2sLWWtRxtHGXcknGUYSTZQlfgoTMju9fIrrbWeiTeh32SZIf6+tcW+9yicXPjKOMGI8mW+hIeNTNXyK63T3a1mfkA7oYXSJIdava5yWAwGN8yGIybDIYZBiPJlvoV7J+ZK2RP2Ce73syYmfMx+HNJssPMjMH4lsFgMG4wGGaYYTCSbLHXYjb+emZk79gne8bMmJnfxOAPJcmOMhiMmwyGGQYjyS7wMszGr8+M7D0je9Zay8ZL8RpJsgMsNxpJdqHfxatnRva2kT1vrWXjd/BqSZIkx9ZLcN7MSL5hJN+01rLxIpwnSZLkzvk1/OXMSL7dSG5mrWXjRThPkiTJ7fMcXDAzklsyklux1rJxLi6UJEly256DC2ZGcltG8h2stWw8GW/B/SVJktzo03gm3jUzku/GSG6Htdb34+/wBEmSZK/6BzxzZj4juZ32SW6HmfnszDwRg7+SJEn2kvMwGz85M5+R3AH7JHfAzJiZ52HwW5IkyW7225iNl8yM5M4YyTGw1rLxC3gT9kuSJNvuOpyLt86M5FjZJzkGZsbM/O3MHMCjcZkkSbKN/hWPnplTZuatMyM5lvZJjrGZed/MPBaDP5UkSbbBn2E2HjMz75McJyM5ztZaNn4er8N9JUmSneKTeBEumhnJXWEkd6G11ql4Lc6RJElOlAvx4pn5P8ldbCQnwFrLxvPwOpwkSZIcb0fwYrxhZiQnykhOsLXWmXg9nihJkhxr78SLZuYqyQ6wT3KCzczlM/PjGLwMX5EkSe6MI3g5ZuOnZuYqyQ4xkh1orXUQf4QXSJIk36034BUz83nJDjWSHWytZePH8Cr8tCRJcnPvwCtx2cxIdrqRbIm1lo1n4lU4TZIke9dH8Xv4m5mRbJORbKG1lo3fxx9IkmRvOIJX4NUzI9lWI9lya63T8Eo8V5Iku895+OOZ+U/JLjCSXWKtZePBeDmeK0mS7fVG/AmumhnJbjKSXWitZePBeDmeK0mSne+NeA0+OjOS3Woku9xay8bD8DI8Q5IkO8cb8Rp8dGYke8FI9pC1lo2H4WV4hiRJ7npvwWtw+cxI9pqR7GFrrUfiN/AsSZIcPxfiL2bm/ZI9biS5wVrrnngBno+HSJLkjvsYzsfrZ+Z/JbnJSHKUtZaNp+H5eIokSb6zv8f5eMfMSHLLRpLbtNaycTqejxfi3pIk4b/xepyPT8yMJN/ZSHK7rLVsPBu/isdKkuwl/4jz8ZaZkeT2G0nusLWWjR/Gs/EsnCpJspt8HhfiTfjwzEhy54wkx8xay8bP4FycI0myjQ7hTXj7zEhybI0kx81a6yQ8B+fiCZIkO9EleBMumBlJjq+R5C6x1rJxGs7Fs/BgSZIT4WO4EG/GJ2dGkrvOSHJCrLVsPAa/jHNwX0mS4+HTOIRDuGxmJDlxRpIdYa1l40fxdPwS7i9Jckd8GodwCJfNjCQ7x0iyI621bDwST8c5eJAkyS35OA7hEN4/M5LsXCPJVlhr2Xgkno5z8CBJsjddhUM4hA/PjCTbYyTZSmstGw/FU/EUnC1Jdqd34m14+8xcKclWG0l2jbWWjSfhKfg5PFySbJcP4SK8HZfMjCS7y0iya621bOzHU/EUPA0HJcnO8BlchLfhInx1ZiTZ3UaSPWetdRp+Fk/F2biXJDm+voCLcRHeNjOflWRPGkn2vLWWjZNxFp6Ms/AoSXLHvB8X4z24GNfNjCT5hpEkt2KtZeOheBLOxlm4nyS50WdxCd6NS/BvMyNJbstIkttprXUSzsLZOAtPxEmS7FZfxj/hYrwHF8+MJLkjRpIcA2stG/fE4/E4PA6Px8mSbIvP4V9wKf4Zl+JLMyNJjpWRJMfRWss3PQaPw+PxOPyAJCfKv+NSXIZL8V4bMyNJjreRJCfIWsvGQ/FYPBoPwyNwsiR31nW4HB/Ae3EpPjozkuREGkmyA621bBzEmTgTj8CZeATuIcmX8EFcjg/iclyOa2ZGkuxUI0m20FrLxuk4E2fiEXg4HoaRbL+v4Qp8CB/CB3E5PjEzkmRbjSTZhdZaNg7ih3AGzsAZOAM/KDnxPoIrcRWuxJW4EtfNjCTZrUaS7FFrLRv3wxk4A2fgDDwEp+NuktvvCD6Oj+EKXImP4Er8x8xIkr1sJElu1VrLN52MB+I0PBCn4wF4IE7HA7BPdqOv4Wp8ClfjanwKV+NTuBpfsDEzkiS3bSRJjqm1lo1TcV+cioM4BQdxCk7BKTiIgziI+8jx9F+4BtfgGlyLa3EtrsG1uBafw2dx3cxIkhx7I0myo6y1fNPdcQrug3thPw5gPw7gAPbjAA5gPw5gPw7gAPbjAA7gHvhenITvwUm4O07C3XGS4+MIvoIj+AqO4Ks4gi/jSziMw7geh3EY1+MwrsdhHMb1OIzDuB6HcT3+B1/ENThiY2YkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIk2+z/ASMhpAttcf1rAAAAAElFTkSuQmCC";
|
|
6625
|
-
const _sfc_main$
|
|
6630
|
+
const _sfc_main$A = defineComponent({
|
|
6626
6631
|
name: "dt-table",
|
|
6627
6632
|
props: TableProps,
|
|
6628
6633
|
components: {
|
|
6629
6634
|
Table,
|
|
6630
|
-
TableRender: _sfc_main$
|
|
6635
|
+
TableRender: _sfc_main$I
|
|
6631
6636
|
},
|
|
6632
6637
|
emits: [
|
|
6633
6638
|
"register",
|
|
@@ -6751,7 +6756,7 @@ const _sfc_main$B = defineComponent({
|
|
|
6751
6756
|
};
|
|
6752
6757
|
}
|
|
6753
6758
|
});
|
|
6754
|
-
const _hoisted_1$
|
|
6759
|
+
const _hoisted_1$j = /* @__PURE__ */ createElementVNode("img", { src: _imports_0$1 }, null, -1);
|
|
6755
6760
|
function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
6756
6761
|
const _component_TableRender = resolveComponent("TableRender");
|
|
6757
6762
|
const _component_Table = resolveComponent("Table");
|
|
@@ -6760,16 +6765,16 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
6760
6765
|
onChange: _ctx.handleTableChange,
|
|
6761
6766
|
onResizeColumn: _ctx.handleResizeColumn
|
|
6762
6767
|
}), createSlots({
|
|
6763
|
-
bodyCell: withCtx(({ column, record, index }) => [
|
|
6768
|
+
bodyCell: withCtx(({ column, record, index: index2 }) => [
|
|
6764
6769
|
(column == null ? void 0 : column.render) ? (openBlock(), createBlock(_component_TableRender, {
|
|
6765
6770
|
key: 0,
|
|
6766
6771
|
column,
|
|
6767
6772
|
record,
|
|
6768
|
-
index
|
|
6773
|
+
index: index2
|
|
6769
6774
|
}, null, 8, ["column", "record", "index"])) : createCommentVNode("", true)
|
|
6770
6775
|
]),
|
|
6771
6776
|
emptyText: withCtx(() => [
|
|
6772
|
-
_hoisted_1$
|
|
6777
|
+
_hoisted_1$j
|
|
6773
6778
|
]),
|
|
6774
6779
|
_: 2
|
|
6775
6780
|
}, [
|
|
@@ -6783,7 +6788,7 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
6783
6788
|
})
|
|
6784
6789
|
]), 1040, ["rowClassName", "onChange", "onResizeColumn"]);
|
|
6785
6790
|
}
|
|
6786
|
-
var
|
|
6791
|
+
var index = /* @__PURE__ */ _export_sfc(_sfc_main$A, [["render", _sfc_render]]);
|
|
6787
6792
|
function useFetch(api, baseUrl = "") {
|
|
6788
6793
|
function fetch(params, onlyData = true) {
|
|
6789
6794
|
let type, header = {}, model = {};
|
|
@@ -7098,7 +7103,7 @@ const basicProps = {
|
|
|
7098
7103
|
type: Object
|
|
7099
7104
|
}
|
|
7100
7105
|
};
|
|
7101
|
-
const _sfc_main$
|
|
7106
|
+
const _sfc_main$z = /* @__PURE__ */ defineComponent({
|
|
7102
7107
|
__name: "dialog",
|
|
7103
7108
|
props: {
|
|
7104
7109
|
...basicProps,
|
|
@@ -7153,7 +7158,7 @@ const _sfc_main$A = /* @__PURE__ */ defineComponent({
|
|
|
7153
7158
|
}
|
|
7154
7159
|
}
|
|
7155
7160
|
return (_ctx, _cache) => {
|
|
7156
|
-
return openBlock(), createBlock(unref(_sfc_main$
|
|
7161
|
+
return openBlock(), createBlock(unref(_sfc_main$K), {
|
|
7157
7162
|
onRegister: unref(registerDialog),
|
|
7158
7163
|
onSave: handleSave
|
|
7159
7164
|
}, {
|
|
@@ -7183,7 +7188,7 @@ function useCurd(curdOpt) {
|
|
|
7183
7188
|
const DtCurdModal = () => {
|
|
7184
7189
|
return h(createVNode("div", {
|
|
7185
7190
|
"class": "curdModal"
|
|
7186
|
-
}, [createVNode(_sfc_main$
|
|
7191
|
+
}, [createVNode(_sfc_main$z, mergeProps(curdOpt, {
|
|
7187
7192
|
"title": title,
|
|
7188
7193
|
"formsVal": formsVal,
|
|
7189
7194
|
"formProps": curdOpt.formProps,
|
|
@@ -7267,9 +7272,9 @@ function useCurd(curdOpt) {
|
|
|
7267
7272
|
setFormValues
|
|
7268
7273
|
};
|
|
7269
7274
|
}
|
|
7270
|
-
const _hoisted_1$
|
|
7271
|
-
const _hoisted_2$
|
|
7272
|
-
const _sfc_main$
|
|
7275
|
+
const _hoisted_1$i = { class: "iframe-page" };
|
|
7276
|
+
const _hoisted_2$b = ["src"];
|
|
7277
|
+
const _sfc_main$y = /* @__PURE__ */ defineComponent({
|
|
7273
7278
|
__name: "index",
|
|
7274
7279
|
props: {
|
|
7275
7280
|
showLoading: {
|
|
@@ -7291,7 +7296,7 @@ const _sfc_main$z = /* @__PURE__ */ defineComponent({
|
|
|
7291
7296
|
iframeWin.postMessage(props.postMsg, props.src);
|
|
7292
7297
|
}
|
|
7293
7298
|
return (_ctx, _cache) => {
|
|
7294
|
-
return openBlock(), createElementBlock("div", _hoisted_1$
|
|
7299
|
+
return openBlock(), createElementBlock("div", _hoisted_1$i, [
|
|
7295
7300
|
createVNode(unref(Spin), {
|
|
7296
7301
|
spinning: loading.value,
|
|
7297
7302
|
size: "large"
|
|
@@ -7303,7 +7308,7 @@ const _sfc_main$z = /* @__PURE__ */ defineComponent({
|
|
|
7303
7308
|
ref_key: "frameRef",
|
|
7304
7309
|
ref: frameRef,
|
|
7305
7310
|
onLoad: _cache[0] || (_cache[0] = ($event) => afterLoaded())
|
|
7306
|
-
}, null, 40, _hoisted_2$
|
|
7311
|
+
}, null, 40, _hoisted_2$b)
|
|
7307
7312
|
]),
|
|
7308
7313
|
_: 1
|
|
7309
7314
|
}, 8, ["spinning"])
|
|
@@ -7311,686 +7316,6 @@ const _sfc_main$z = /* @__PURE__ */ defineComponent({
|
|
|
7311
7316
|
};
|
|
7312
7317
|
}
|
|
7313
7318
|
});
|
|
7314
|
-
const basicUploadProps = {
|
|
7315
|
-
uploadText: {
|
|
7316
|
-
type: String,
|
|
7317
|
-
default: "\u6587\u4EF6\u4E0A\u4F20"
|
|
7318
|
-
},
|
|
7319
|
-
showTemplateDownload: {
|
|
7320
|
-
type: Boolean,
|
|
7321
|
-
default: false
|
|
7322
|
-
},
|
|
7323
|
-
templateDownload: {
|
|
7324
|
-
type: Function,
|
|
7325
|
-
default: () => {
|
|
7326
|
-
}
|
|
7327
|
-
},
|
|
7328
|
-
helpText: {
|
|
7329
|
-
type: String,
|
|
7330
|
-
default: ""
|
|
7331
|
-
},
|
|
7332
|
-
multiple: {
|
|
7333
|
-
type: Boolean,
|
|
7334
|
-
default: true
|
|
7335
|
-
},
|
|
7336
|
-
accept: {
|
|
7337
|
-
type: Array,
|
|
7338
|
-
default: () => []
|
|
7339
|
-
},
|
|
7340
|
-
maxSize: {
|
|
7341
|
-
type: Number
|
|
7342
|
-
},
|
|
7343
|
-
maxNumber: {
|
|
7344
|
-
type: Number,
|
|
7345
|
-
default: Infinity
|
|
7346
|
-
},
|
|
7347
|
-
defaultFiles: {
|
|
7348
|
-
type: Array,
|
|
7349
|
-
default: []
|
|
7350
|
-
},
|
|
7351
|
-
showView: {
|
|
7352
|
-
type: Boolean,
|
|
7353
|
-
default: false
|
|
7354
|
-
}
|
|
7355
|
-
};
|
|
7356
|
-
function useHelpers(acceptRef, helpTextRef, maxNumberRef, maxSizeRef) {
|
|
7357
|
-
const { t } = useI18n("UI");
|
|
7358
|
-
const getAccept = computed(() => {
|
|
7359
|
-
const accept = unref(acceptRef);
|
|
7360
|
-
if (accept && accept.length > 0) {
|
|
7361
|
-
return accept;
|
|
7362
|
-
}
|
|
7363
|
-
return [];
|
|
7364
|
-
});
|
|
7365
|
-
const getStringAccept = computed(() => {
|
|
7366
|
-
return unref(getAccept).map((item) => {
|
|
7367
|
-
if (item.indexOf("/") > 0 || item.startsWith(".")) {
|
|
7368
|
-
return item;
|
|
7369
|
-
}
|
|
7370
|
-
return `.${item}`;
|
|
7371
|
-
}).join(",");
|
|
7372
|
-
});
|
|
7373
|
-
const getHelpText = computed(() => {
|
|
7374
|
-
const helpText = unref(helpTextRef);
|
|
7375
|
-
if (isBoolean(helpText) && !helpText) {
|
|
7376
|
-
return false;
|
|
7377
|
-
}
|
|
7378
|
-
if (helpText) {
|
|
7379
|
-
return helpText;
|
|
7380
|
-
}
|
|
7381
|
-
const helpTexts = [];
|
|
7382
|
-
const accept = unref(acceptRef);
|
|
7383
|
-
if (accept.length > 0) {
|
|
7384
|
-
helpTexts.push(t("SUPPORT_FILES", { message: accept.join(",") }));
|
|
7385
|
-
}
|
|
7386
|
-
const maxSize = unref(maxSizeRef);
|
|
7387
|
-
if (maxSize) {
|
|
7388
|
-
helpTexts.push(t("SUPPORT_FILES", { maxSize }));
|
|
7389
|
-
}
|
|
7390
|
-
const maxNumber = unref(maxNumberRef);
|
|
7391
|
-
if (maxNumber && maxNumber !== Infinity) {
|
|
7392
|
-
helpTexts.push(t("SUPPORT_FILES", { maxNumber }));
|
|
7393
|
-
}
|
|
7394
|
-
return helpTexts.join(",") || t("SUPPORT_TYPES");
|
|
7395
|
-
});
|
|
7396
|
-
return {
|
|
7397
|
-
getStringAccept,
|
|
7398
|
-
getHelpText
|
|
7399
|
-
};
|
|
7400
|
-
}
|
|
7401
|
-
var sparkMd5 = { exports: {} };
|
|
7402
|
-
(function(module, exports) {
|
|
7403
|
-
(function(factory) {
|
|
7404
|
-
{
|
|
7405
|
-
module.exports = factory();
|
|
7406
|
-
}
|
|
7407
|
-
})(function(undefined$1) {
|
|
7408
|
-
var hex_chr = ["0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "a", "b", "c", "d", "e", "f"];
|
|
7409
|
-
function md5cycle(x, k) {
|
|
7410
|
-
var a = x[0], b = x[1], c = x[2], d = x[3];
|
|
7411
|
-
a += (b & c | ~b & d) + k[0] - 680876936 | 0;
|
|
7412
|
-
a = (a << 7 | a >>> 25) + b | 0;
|
|
7413
|
-
d += (a & b | ~a & c) + k[1] - 389564586 | 0;
|
|
7414
|
-
d = (d << 12 | d >>> 20) + a | 0;
|
|
7415
|
-
c += (d & a | ~d & b) + k[2] + 606105819 | 0;
|
|
7416
|
-
c = (c << 17 | c >>> 15) + d | 0;
|
|
7417
|
-
b += (c & d | ~c & a) + k[3] - 1044525330 | 0;
|
|
7418
|
-
b = (b << 22 | b >>> 10) + c | 0;
|
|
7419
|
-
a += (b & c | ~b & d) + k[4] - 176418897 | 0;
|
|
7420
|
-
a = (a << 7 | a >>> 25) + b | 0;
|
|
7421
|
-
d += (a & b | ~a & c) + k[5] + 1200080426 | 0;
|
|
7422
|
-
d = (d << 12 | d >>> 20) + a | 0;
|
|
7423
|
-
c += (d & a | ~d & b) + k[6] - 1473231341 | 0;
|
|
7424
|
-
c = (c << 17 | c >>> 15) + d | 0;
|
|
7425
|
-
b += (c & d | ~c & a) + k[7] - 45705983 | 0;
|
|
7426
|
-
b = (b << 22 | b >>> 10) + c | 0;
|
|
7427
|
-
a += (b & c | ~b & d) + k[8] + 1770035416 | 0;
|
|
7428
|
-
a = (a << 7 | a >>> 25) + b | 0;
|
|
7429
|
-
d += (a & b | ~a & c) + k[9] - 1958414417 | 0;
|
|
7430
|
-
d = (d << 12 | d >>> 20) + a | 0;
|
|
7431
|
-
c += (d & a | ~d & b) + k[10] - 42063 | 0;
|
|
7432
|
-
c = (c << 17 | c >>> 15) + d | 0;
|
|
7433
|
-
b += (c & d | ~c & a) + k[11] - 1990404162 | 0;
|
|
7434
|
-
b = (b << 22 | b >>> 10) + c | 0;
|
|
7435
|
-
a += (b & c | ~b & d) + k[12] + 1804603682 | 0;
|
|
7436
|
-
a = (a << 7 | a >>> 25) + b | 0;
|
|
7437
|
-
d += (a & b | ~a & c) + k[13] - 40341101 | 0;
|
|
7438
|
-
d = (d << 12 | d >>> 20) + a | 0;
|
|
7439
|
-
c += (d & a | ~d & b) + k[14] - 1502002290 | 0;
|
|
7440
|
-
c = (c << 17 | c >>> 15) + d | 0;
|
|
7441
|
-
b += (c & d | ~c & a) + k[15] + 1236535329 | 0;
|
|
7442
|
-
b = (b << 22 | b >>> 10) + c | 0;
|
|
7443
|
-
a += (b & d | c & ~d) + k[1] - 165796510 | 0;
|
|
7444
|
-
a = (a << 5 | a >>> 27) + b | 0;
|
|
7445
|
-
d += (a & c | b & ~c) + k[6] - 1069501632 | 0;
|
|
7446
|
-
d = (d << 9 | d >>> 23) + a | 0;
|
|
7447
|
-
c += (d & b | a & ~b) + k[11] + 643717713 | 0;
|
|
7448
|
-
c = (c << 14 | c >>> 18) + d | 0;
|
|
7449
|
-
b += (c & a | d & ~a) + k[0] - 373897302 | 0;
|
|
7450
|
-
b = (b << 20 | b >>> 12) + c | 0;
|
|
7451
|
-
a += (b & d | c & ~d) + k[5] - 701558691 | 0;
|
|
7452
|
-
a = (a << 5 | a >>> 27) + b | 0;
|
|
7453
|
-
d += (a & c | b & ~c) + k[10] + 38016083 | 0;
|
|
7454
|
-
d = (d << 9 | d >>> 23) + a | 0;
|
|
7455
|
-
c += (d & b | a & ~b) + k[15] - 660478335 | 0;
|
|
7456
|
-
c = (c << 14 | c >>> 18) + d | 0;
|
|
7457
|
-
b += (c & a | d & ~a) + k[4] - 405537848 | 0;
|
|
7458
|
-
b = (b << 20 | b >>> 12) + c | 0;
|
|
7459
|
-
a += (b & d | c & ~d) + k[9] + 568446438 | 0;
|
|
7460
|
-
a = (a << 5 | a >>> 27) + b | 0;
|
|
7461
|
-
d += (a & c | b & ~c) + k[14] - 1019803690 | 0;
|
|
7462
|
-
d = (d << 9 | d >>> 23) + a | 0;
|
|
7463
|
-
c += (d & b | a & ~b) + k[3] - 187363961 | 0;
|
|
7464
|
-
c = (c << 14 | c >>> 18) + d | 0;
|
|
7465
|
-
b += (c & a | d & ~a) + k[8] + 1163531501 | 0;
|
|
7466
|
-
b = (b << 20 | b >>> 12) + c | 0;
|
|
7467
|
-
a += (b & d | c & ~d) + k[13] - 1444681467 | 0;
|
|
7468
|
-
a = (a << 5 | a >>> 27) + b | 0;
|
|
7469
|
-
d += (a & c | b & ~c) + k[2] - 51403784 | 0;
|
|
7470
|
-
d = (d << 9 | d >>> 23) + a | 0;
|
|
7471
|
-
c += (d & b | a & ~b) + k[7] + 1735328473 | 0;
|
|
7472
|
-
c = (c << 14 | c >>> 18) + d | 0;
|
|
7473
|
-
b += (c & a | d & ~a) + k[12] - 1926607734 | 0;
|
|
7474
|
-
b = (b << 20 | b >>> 12) + c | 0;
|
|
7475
|
-
a += (b ^ c ^ d) + k[5] - 378558 | 0;
|
|
7476
|
-
a = (a << 4 | a >>> 28) + b | 0;
|
|
7477
|
-
d += (a ^ b ^ c) + k[8] - 2022574463 | 0;
|
|
7478
|
-
d = (d << 11 | d >>> 21) + a | 0;
|
|
7479
|
-
c += (d ^ a ^ b) + k[11] + 1839030562 | 0;
|
|
7480
|
-
c = (c << 16 | c >>> 16) + d | 0;
|
|
7481
|
-
b += (c ^ d ^ a) + k[14] - 35309556 | 0;
|
|
7482
|
-
b = (b << 23 | b >>> 9) + c | 0;
|
|
7483
|
-
a += (b ^ c ^ d) + k[1] - 1530992060 | 0;
|
|
7484
|
-
a = (a << 4 | a >>> 28) + b | 0;
|
|
7485
|
-
d += (a ^ b ^ c) + k[4] + 1272893353 | 0;
|
|
7486
|
-
d = (d << 11 | d >>> 21) + a | 0;
|
|
7487
|
-
c += (d ^ a ^ b) + k[7] - 155497632 | 0;
|
|
7488
|
-
c = (c << 16 | c >>> 16) + d | 0;
|
|
7489
|
-
b += (c ^ d ^ a) + k[10] - 1094730640 | 0;
|
|
7490
|
-
b = (b << 23 | b >>> 9) + c | 0;
|
|
7491
|
-
a += (b ^ c ^ d) + k[13] + 681279174 | 0;
|
|
7492
|
-
a = (a << 4 | a >>> 28) + b | 0;
|
|
7493
|
-
d += (a ^ b ^ c) + k[0] - 358537222 | 0;
|
|
7494
|
-
d = (d << 11 | d >>> 21) + a | 0;
|
|
7495
|
-
c += (d ^ a ^ b) + k[3] - 722521979 | 0;
|
|
7496
|
-
c = (c << 16 | c >>> 16) + d | 0;
|
|
7497
|
-
b += (c ^ d ^ a) + k[6] + 76029189 | 0;
|
|
7498
|
-
b = (b << 23 | b >>> 9) + c | 0;
|
|
7499
|
-
a += (b ^ c ^ d) + k[9] - 640364487 | 0;
|
|
7500
|
-
a = (a << 4 | a >>> 28) + b | 0;
|
|
7501
|
-
d += (a ^ b ^ c) + k[12] - 421815835 | 0;
|
|
7502
|
-
d = (d << 11 | d >>> 21) + a | 0;
|
|
7503
|
-
c += (d ^ a ^ b) + k[15] + 530742520 | 0;
|
|
7504
|
-
c = (c << 16 | c >>> 16) + d | 0;
|
|
7505
|
-
b += (c ^ d ^ a) + k[2] - 995338651 | 0;
|
|
7506
|
-
b = (b << 23 | b >>> 9) + c | 0;
|
|
7507
|
-
a += (c ^ (b | ~d)) + k[0] - 198630844 | 0;
|
|
7508
|
-
a = (a << 6 | a >>> 26) + b | 0;
|
|
7509
|
-
d += (b ^ (a | ~c)) + k[7] + 1126891415 | 0;
|
|
7510
|
-
d = (d << 10 | d >>> 22) + a | 0;
|
|
7511
|
-
c += (a ^ (d | ~b)) + k[14] - 1416354905 | 0;
|
|
7512
|
-
c = (c << 15 | c >>> 17) + d | 0;
|
|
7513
|
-
b += (d ^ (c | ~a)) + k[5] - 57434055 | 0;
|
|
7514
|
-
b = (b << 21 | b >>> 11) + c | 0;
|
|
7515
|
-
a += (c ^ (b | ~d)) + k[12] + 1700485571 | 0;
|
|
7516
|
-
a = (a << 6 | a >>> 26) + b | 0;
|
|
7517
|
-
d += (b ^ (a | ~c)) + k[3] - 1894986606 | 0;
|
|
7518
|
-
d = (d << 10 | d >>> 22) + a | 0;
|
|
7519
|
-
c += (a ^ (d | ~b)) + k[10] - 1051523 | 0;
|
|
7520
|
-
c = (c << 15 | c >>> 17) + d | 0;
|
|
7521
|
-
b += (d ^ (c | ~a)) + k[1] - 2054922799 | 0;
|
|
7522
|
-
b = (b << 21 | b >>> 11) + c | 0;
|
|
7523
|
-
a += (c ^ (b | ~d)) + k[8] + 1873313359 | 0;
|
|
7524
|
-
a = (a << 6 | a >>> 26) + b | 0;
|
|
7525
|
-
d += (b ^ (a | ~c)) + k[15] - 30611744 | 0;
|
|
7526
|
-
d = (d << 10 | d >>> 22) + a | 0;
|
|
7527
|
-
c += (a ^ (d | ~b)) + k[6] - 1560198380 | 0;
|
|
7528
|
-
c = (c << 15 | c >>> 17) + d | 0;
|
|
7529
|
-
b += (d ^ (c | ~a)) + k[13] + 1309151649 | 0;
|
|
7530
|
-
b = (b << 21 | b >>> 11) + c | 0;
|
|
7531
|
-
a += (c ^ (b | ~d)) + k[4] - 145523070 | 0;
|
|
7532
|
-
a = (a << 6 | a >>> 26) + b | 0;
|
|
7533
|
-
d += (b ^ (a | ~c)) + k[11] - 1120210379 | 0;
|
|
7534
|
-
d = (d << 10 | d >>> 22) + a | 0;
|
|
7535
|
-
c += (a ^ (d | ~b)) + k[2] + 718787259 | 0;
|
|
7536
|
-
c = (c << 15 | c >>> 17) + d | 0;
|
|
7537
|
-
b += (d ^ (c | ~a)) + k[9] - 343485551 | 0;
|
|
7538
|
-
b = (b << 21 | b >>> 11) + c | 0;
|
|
7539
|
-
x[0] = a + x[0] | 0;
|
|
7540
|
-
x[1] = b + x[1] | 0;
|
|
7541
|
-
x[2] = c + x[2] | 0;
|
|
7542
|
-
x[3] = d + x[3] | 0;
|
|
7543
|
-
}
|
|
7544
|
-
function md5blk(s) {
|
|
7545
|
-
var md5blks = [], i;
|
|
7546
|
-
for (i = 0; i < 64; i += 4) {
|
|
7547
|
-
md5blks[i >> 2] = s.charCodeAt(i) + (s.charCodeAt(i + 1) << 8) + (s.charCodeAt(i + 2) << 16) + (s.charCodeAt(i + 3) << 24);
|
|
7548
|
-
}
|
|
7549
|
-
return md5blks;
|
|
7550
|
-
}
|
|
7551
|
-
function md5blk_array(a) {
|
|
7552
|
-
var md5blks = [], i;
|
|
7553
|
-
for (i = 0; i < 64; i += 4) {
|
|
7554
|
-
md5blks[i >> 2] = a[i] + (a[i + 1] << 8) + (a[i + 2] << 16) + (a[i + 3] << 24);
|
|
7555
|
-
}
|
|
7556
|
-
return md5blks;
|
|
7557
|
-
}
|
|
7558
|
-
function md51(s) {
|
|
7559
|
-
var n = s.length, state = [1732584193, -271733879, -1732584194, 271733878], i, length, tail, tmp, lo, hi;
|
|
7560
|
-
for (i = 64; i <= n; i += 64) {
|
|
7561
|
-
md5cycle(state, md5blk(s.substring(i - 64, i)));
|
|
7562
|
-
}
|
|
7563
|
-
s = s.substring(i - 64);
|
|
7564
|
-
length = s.length;
|
|
7565
|
-
tail = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
|
|
7566
|
-
for (i = 0; i < length; i += 1) {
|
|
7567
|
-
tail[i >> 2] |= s.charCodeAt(i) << (i % 4 << 3);
|
|
7568
|
-
}
|
|
7569
|
-
tail[i >> 2] |= 128 << (i % 4 << 3);
|
|
7570
|
-
if (i > 55) {
|
|
7571
|
-
md5cycle(state, tail);
|
|
7572
|
-
for (i = 0; i < 16; i += 1) {
|
|
7573
|
-
tail[i] = 0;
|
|
7574
|
-
}
|
|
7575
|
-
}
|
|
7576
|
-
tmp = n * 8;
|
|
7577
|
-
tmp = tmp.toString(16).match(/(.*?)(.{0,8})$/);
|
|
7578
|
-
lo = parseInt(tmp[2], 16);
|
|
7579
|
-
hi = parseInt(tmp[1], 16) || 0;
|
|
7580
|
-
tail[14] = lo;
|
|
7581
|
-
tail[15] = hi;
|
|
7582
|
-
md5cycle(state, tail);
|
|
7583
|
-
return state;
|
|
7584
|
-
}
|
|
7585
|
-
function md51_array(a) {
|
|
7586
|
-
var n = a.length, state = [1732584193, -271733879, -1732584194, 271733878], i, length, tail, tmp, lo, hi;
|
|
7587
|
-
for (i = 64; i <= n; i += 64) {
|
|
7588
|
-
md5cycle(state, md5blk_array(a.subarray(i - 64, i)));
|
|
7589
|
-
}
|
|
7590
|
-
a = i - 64 < n ? a.subarray(i - 64) : new Uint8Array(0);
|
|
7591
|
-
length = a.length;
|
|
7592
|
-
tail = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
|
|
7593
|
-
for (i = 0; i < length; i += 1) {
|
|
7594
|
-
tail[i >> 2] |= a[i] << (i % 4 << 3);
|
|
7595
|
-
}
|
|
7596
|
-
tail[i >> 2] |= 128 << (i % 4 << 3);
|
|
7597
|
-
if (i > 55) {
|
|
7598
|
-
md5cycle(state, tail);
|
|
7599
|
-
for (i = 0; i < 16; i += 1) {
|
|
7600
|
-
tail[i] = 0;
|
|
7601
|
-
}
|
|
7602
|
-
}
|
|
7603
|
-
tmp = n * 8;
|
|
7604
|
-
tmp = tmp.toString(16).match(/(.*?)(.{0,8})$/);
|
|
7605
|
-
lo = parseInt(tmp[2], 16);
|
|
7606
|
-
hi = parseInt(tmp[1], 16) || 0;
|
|
7607
|
-
tail[14] = lo;
|
|
7608
|
-
tail[15] = hi;
|
|
7609
|
-
md5cycle(state, tail);
|
|
7610
|
-
return state;
|
|
7611
|
-
}
|
|
7612
|
-
function rhex(n) {
|
|
7613
|
-
var s = "", j;
|
|
7614
|
-
for (j = 0; j < 4; j += 1) {
|
|
7615
|
-
s += hex_chr[n >> j * 8 + 4 & 15] + hex_chr[n >> j * 8 & 15];
|
|
7616
|
-
}
|
|
7617
|
-
return s;
|
|
7618
|
-
}
|
|
7619
|
-
function hex(x) {
|
|
7620
|
-
var i;
|
|
7621
|
-
for (i = 0; i < x.length; i += 1) {
|
|
7622
|
-
x[i] = rhex(x[i]);
|
|
7623
|
-
}
|
|
7624
|
-
return x.join("");
|
|
7625
|
-
}
|
|
7626
|
-
if (hex(md51("hello")) !== "5d41402abc4b2a76b9719d911017c592")
|
|
7627
|
-
;
|
|
7628
|
-
if (typeof ArrayBuffer !== "undefined" && !ArrayBuffer.prototype.slice) {
|
|
7629
|
-
(function() {
|
|
7630
|
-
function clamp(val, length) {
|
|
7631
|
-
val = val | 0 || 0;
|
|
7632
|
-
if (val < 0) {
|
|
7633
|
-
return Math.max(val + length, 0);
|
|
7634
|
-
}
|
|
7635
|
-
return Math.min(val, length);
|
|
7636
|
-
}
|
|
7637
|
-
ArrayBuffer.prototype.slice = function(from, to) {
|
|
7638
|
-
var length = this.byteLength, begin = clamp(from, length), end = length, num, target, targetArray, sourceArray;
|
|
7639
|
-
if (to !== undefined$1) {
|
|
7640
|
-
end = clamp(to, length);
|
|
7641
|
-
}
|
|
7642
|
-
if (begin > end) {
|
|
7643
|
-
return new ArrayBuffer(0);
|
|
7644
|
-
}
|
|
7645
|
-
num = end - begin;
|
|
7646
|
-
target = new ArrayBuffer(num);
|
|
7647
|
-
targetArray = new Uint8Array(target);
|
|
7648
|
-
sourceArray = new Uint8Array(this, begin, num);
|
|
7649
|
-
targetArray.set(sourceArray);
|
|
7650
|
-
return target;
|
|
7651
|
-
};
|
|
7652
|
-
})();
|
|
7653
|
-
}
|
|
7654
|
-
function toUtf8(str) {
|
|
7655
|
-
if (/[\u0080-\uFFFF]/.test(str)) {
|
|
7656
|
-
str = unescape(encodeURIComponent(str));
|
|
7657
|
-
}
|
|
7658
|
-
return str;
|
|
7659
|
-
}
|
|
7660
|
-
function utf8Str2ArrayBuffer(str, returnUInt8Array) {
|
|
7661
|
-
var length = str.length, buff = new ArrayBuffer(length), arr = new Uint8Array(buff), i;
|
|
7662
|
-
for (i = 0; i < length; i += 1) {
|
|
7663
|
-
arr[i] = str.charCodeAt(i);
|
|
7664
|
-
}
|
|
7665
|
-
return returnUInt8Array ? arr : buff;
|
|
7666
|
-
}
|
|
7667
|
-
function arrayBuffer2Utf8Str(buff) {
|
|
7668
|
-
return String.fromCharCode.apply(null, new Uint8Array(buff));
|
|
7669
|
-
}
|
|
7670
|
-
function concatenateArrayBuffers(first, second, returnUInt8Array) {
|
|
7671
|
-
var result = new Uint8Array(first.byteLength + second.byteLength);
|
|
7672
|
-
result.set(new Uint8Array(first));
|
|
7673
|
-
result.set(new Uint8Array(second), first.byteLength);
|
|
7674
|
-
return returnUInt8Array ? result : result.buffer;
|
|
7675
|
-
}
|
|
7676
|
-
function hexToBinaryString(hex2) {
|
|
7677
|
-
var bytes = [], length = hex2.length, x;
|
|
7678
|
-
for (x = 0; x < length - 1; x += 2) {
|
|
7679
|
-
bytes.push(parseInt(hex2.substr(x, 2), 16));
|
|
7680
|
-
}
|
|
7681
|
-
return String.fromCharCode.apply(String, bytes);
|
|
7682
|
-
}
|
|
7683
|
-
function SparkMD5() {
|
|
7684
|
-
this.reset();
|
|
7685
|
-
}
|
|
7686
|
-
SparkMD5.prototype.append = function(str) {
|
|
7687
|
-
this.appendBinary(toUtf8(str));
|
|
7688
|
-
return this;
|
|
7689
|
-
};
|
|
7690
|
-
SparkMD5.prototype.appendBinary = function(contents) {
|
|
7691
|
-
this._buff += contents;
|
|
7692
|
-
this._length += contents.length;
|
|
7693
|
-
var length = this._buff.length, i;
|
|
7694
|
-
for (i = 64; i <= length; i += 64) {
|
|
7695
|
-
md5cycle(this._hash, md5blk(this._buff.substring(i - 64, i)));
|
|
7696
|
-
}
|
|
7697
|
-
this._buff = this._buff.substring(i - 64);
|
|
7698
|
-
return this;
|
|
7699
|
-
};
|
|
7700
|
-
SparkMD5.prototype.end = function(raw) {
|
|
7701
|
-
var buff = this._buff, length = buff.length, i, tail = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], ret;
|
|
7702
|
-
for (i = 0; i < length; i += 1) {
|
|
7703
|
-
tail[i >> 2] |= buff.charCodeAt(i) << (i % 4 << 3);
|
|
7704
|
-
}
|
|
7705
|
-
this._finish(tail, length);
|
|
7706
|
-
ret = hex(this._hash);
|
|
7707
|
-
if (raw) {
|
|
7708
|
-
ret = hexToBinaryString(ret);
|
|
7709
|
-
}
|
|
7710
|
-
this.reset();
|
|
7711
|
-
return ret;
|
|
7712
|
-
};
|
|
7713
|
-
SparkMD5.prototype.reset = function() {
|
|
7714
|
-
this._buff = "";
|
|
7715
|
-
this._length = 0;
|
|
7716
|
-
this._hash = [1732584193, -271733879, -1732584194, 271733878];
|
|
7717
|
-
return this;
|
|
7718
|
-
};
|
|
7719
|
-
SparkMD5.prototype.getState = function() {
|
|
7720
|
-
return {
|
|
7721
|
-
buff: this._buff,
|
|
7722
|
-
length: this._length,
|
|
7723
|
-
hash: this._hash.slice()
|
|
7724
|
-
};
|
|
7725
|
-
};
|
|
7726
|
-
SparkMD5.prototype.setState = function(state) {
|
|
7727
|
-
this._buff = state.buff;
|
|
7728
|
-
this._length = state.length;
|
|
7729
|
-
this._hash = state.hash;
|
|
7730
|
-
return this;
|
|
7731
|
-
};
|
|
7732
|
-
SparkMD5.prototype.destroy = function() {
|
|
7733
|
-
delete this._hash;
|
|
7734
|
-
delete this._buff;
|
|
7735
|
-
delete this._length;
|
|
7736
|
-
};
|
|
7737
|
-
SparkMD5.prototype._finish = function(tail, length) {
|
|
7738
|
-
var i = length, tmp, lo, hi;
|
|
7739
|
-
tail[i >> 2] |= 128 << (i % 4 << 3);
|
|
7740
|
-
if (i > 55) {
|
|
7741
|
-
md5cycle(this._hash, tail);
|
|
7742
|
-
for (i = 0; i < 16; i += 1) {
|
|
7743
|
-
tail[i] = 0;
|
|
7744
|
-
}
|
|
7745
|
-
}
|
|
7746
|
-
tmp = this._length * 8;
|
|
7747
|
-
tmp = tmp.toString(16).match(/(.*?)(.{0,8})$/);
|
|
7748
|
-
lo = parseInt(tmp[2], 16);
|
|
7749
|
-
hi = parseInt(tmp[1], 16) || 0;
|
|
7750
|
-
tail[14] = lo;
|
|
7751
|
-
tail[15] = hi;
|
|
7752
|
-
md5cycle(this._hash, tail);
|
|
7753
|
-
};
|
|
7754
|
-
SparkMD5.hash = function(str, raw) {
|
|
7755
|
-
return SparkMD5.hashBinary(toUtf8(str), raw);
|
|
7756
|
-
};
|
|
7757
|
-
SparkMD5.hashBinary = function(content, raw) {
|
|
7758
|
-
var hash = md51(content), ret = hex(hash);
|
|
7759
|
-
return raw ? hexToBinaryString(ret) : ret;
|
|
7760
|
-
};
|
|
7761
|
-
SparkMD5.ArrayBuffer = function() {
|
|
7762
|
-
this.reset();
|
|
7763
|
-
};
|
|
7764
|
-
SparkMD5.ArrayBuffer.prototype.append = function(arr) {
|
|
7765
|
-
var buff = concatenateArrayBuffers(this._buff.buffer, arr, true), length = buff.length, i;
|
|
7766
|
-
this._length += arr.byteLength;
|
|
7767
|
-
for (i = 64; i <= length; i += 64) {
|
|
7768
|
-
md5cycle(this._hash, md5blk_array(buff.subarray(i - 64, i)));
|
|
7769
|
-
}
|
|
7770
|
-
this._buff = i - 64 < length ? new Uint8Array(buff.buffer.slice(i - 64)) : new Uint8Array(0);
|
|
7771
|
-
return this;
|
|
7772
|
-
};
|
|
7773
|
-
SparkMD5.ArrayBuffer.prototype.end = function(raw) {
|
|
7774
|
-
var buff = this._buff, length = buff.length, tail = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], i, ret;
|
|
7775
|
-
for (i = 0; i < length; i += 1) {
|
|
7776
|
-
tail[i >> 2] |= buff[i] << (i % 4 << 3);
|
|
7777
|
-
}
|
|
7778
|
-
this._finish(tail, length);
|
|
7779
|
-
ret = hex(this._hash);
|
|
7780
|
-
if (raw) {
|
|
7781
|
-
ret = hexToBinaryString(ret);
|
|
7782
|
-
}
|
|
7783
|
-
this.reset();
|
|
7784
|
-
return ret;
|
|
7785
|
-
};
|
|
7786
|
-
SparkMD5.ArrayBuffer.prototype.reset = function() {
|
|
7787
|
-
this._buff = new Uint8Array(0);
|
|
7788
|
-
this._length = 0;
|
|
7789
|
-
this._hash = [1732584193, -271733879, -1732584194, 271733878];
|
|
7790
|
-
return this;
|
|
7791
|
-
};
|
|
7792
|
-
SparkMD5.ArrayBuffer.prototype.getState = function() {
|
|
7793
|
-
var state = SparkMD5.prototype.getState.call(this);
|
|
7794
|
-
state.buff = arrayBuffer2Utf8Str(state.buff);
|
|
7795
|
-
return state;
|
|
7796
|
-
};
|
|
7797
|
-
SparkMD5.ArrayBuffer.prototype.setState = function(state) {
|
|
7798
|
-
state.buff = utf8Str2ArrayBuffer(state.buff, true);
|
|
7799
|
-
return SparkMD5.prototype.setState.call(this, state);
|
|
7800
|
-
};
|
|
7801
|
-
SparkMD5.ArrayBuffer.prototype.destroy = SparkMD5.prototype.destroy;
|
|
7802
|
-
SparkMD5.ArrayBuffer.prototype._finish = SparkMD5.prototype._finish;
|
|
7803
|
-
SparkMD5.ArrayBuffer.hash = function(arr, raw) {
|
|
7804
|
-
var hash = md51_array(new Uint8Array(arr)), ret = hex(hash);
|
|
7805
|
-
return raw ? hexToBinaryString(ret) : ret;
|
|
7806
|
-
};
|
|
7807
|
-
return SparkMD5;
|
|
7808
|
-
});
|
|
7809
|
-
})(sparkMd5);
|
|
7810
|
-
const _hoisted_1$i = { class: "dt-file" };
|
|
7811
|
-
const _hoisted_2$b = {
|
|
7812
|
-
key: 0,
|
|
7813
|
-
class: "file-type-tips ant-alert-info"
|
|
7814
|
-
};
|
|
7815
|
-
const _sfc_main$y = /* @__PURE__ */ defineComponent({
|
|
7816
|
-
__name: "upload",
|
|
7817
|
-
props: basicUploadProps,
|
|
7818
|
-
setup(__props, { expose }) {
|
|
7819
|
-
const props = __props;
|
|
7820
|
-
const { t } = useI18n();
|
|
7821
|
-
const { message } = useMessage();
|
|
7822
|
-
const filesRef = ref([]);
|
|
7823
|
-
const historyFilesRef = ref([]);
|
|
7824
|
-
const allFilesRef = computed(() => {
|
|
7825
|
-
return [...historyFilesRef.value, ...filesRef.value];
|
|
7826
|
-
});
|
|
7827
|
-
const imgVisable = ref(false);
|
|
7828
|
-
const imgSrcRef = ref();
|
|
7829
|
-
const setImgVisible = (value) => imgVisable.value = value;
|
|
7830
|
-
const { accept, helpText, maxNumber, maxSize } = toRefs(props);
|
|
7831
|
-
const {
|
|
7832
|
-
getStringAccept,
|
|
7833
|
-
getHelpText
|
|
7834
|
-
} = useHelpers(accept, helpText, maxNumber, maxSize);
|
|
7835
|
-
const isImage = (fileType) => ["pdf", "jpg", "jpeg", "png", "bmp", "gif"].includes(fileType);
|
|
7836
|
-
const [registerTable] = useTable({
|
|
7837
|
-
tableSetting: false,
|
|
7838
|
-
pagination: false,
|
|
7839
|
-
rowSelection: null,
|
|
7840
|
-
dataSource: allFilesRef,
|
|
7841
|
-
columns: [
|
|
7842
|
-
{ title: t("UI.FILE_NAME"), dataIndex: "fileName" },
|
|
7843
|
-
{ title: t("UI.FILE_STATUS"), dataIndex: "fileStatue", className: "orange" }
|
|
7844
|
-
],
|
|
7845
|
-
operations: {
|
|
7846
|
-
expand: true,
|
|
7847
|
-
btns: [
|
|
7848
|
-
{
|
|
7849
|
-
title: t("UI.PREVIEW"),
|
|
7850
|
-
icon: "ic:baseline-remove-red-eye",
|
|
7851
|
-
ifShow(row) {
|
|
7852
|
-
if (!props.showView)
|
|
7853
|
-
return false;
|
|
7854
|
-
return isImage(row.fileName.split(".").pop());
|
|
7855
|
-
},
|
|
7856
|
-
action: ({ row }) => {
|
|
7857
|
-
if (isImage(row.fileName.split(".").pop())) {
|
|
7858
|
-
setImgVisible(true);
|
|
7859
|
-
}
|
|
7860
|
-
}
|
|
7861
|
-
},
|
|
7862
|
-
{ title: t("UI.DELETE"), icon: "mdi:delete-outline", ifShow: true, action: ({ row }) => {
|
|
7863
|
-
if (!row.status)
|
|
7864
|
-
historyFilesRef.value = historyFilesRef.value.filter((it) => it.fileId !== row.fileId);
|
|
7865
|
-
else {
|
|
7866
|
-
filesRef.value = filesRef.value.filter((it) => it.fileId !== row.fileId);
|
|
7867
|
-
}
|
|
7868
|
-
} }
|
|
7869
|
-
]
|
|
7870
|
-
}
|
|
7871
|
-
});
|
|
7872
|
-
watch(() => props.defaultFiles, (v) => {
|
|
7873
|
-
if (v) {
|
|
7874
|
-
historyFilesRef.value = props.defaultFiles.map((file, index) => {
|
|
7875
|
-
return {
|
|
7876
|
-
...file,
|
|
7877
|
-
fileId: file.fileId || index,
|
|
7878
|
-
fileName: file.fileName,
|
|
7879
|
-
status: 0,
|
|
7880
|
-
fileStatue: t("UI.HISTORY_UPLOAD")
|
|
7881
|
-
};
|
|
7882
|
-
});
|
|
7883
|
-
}
|
|
7884
|
-
}, {
|
|
7885
|
-
immediate: true
|
|
7886
|
-
});
|
|
7887
|
-
function beforeUpload(file) {
|
|
7888
|
-
const { maxSize: maxSize2 } = props;
|
|
7889
|
-
if (maxSize2 && file.size / 1024 / 1024 >= maxSize2) {
|
|
7890
|
-
message.error(t("UI.MAX_MB", { maxSize: maxSize2 }));
|
|
7891
|
-
return false;
|
|
7892
|
-
}
|
|
7893
|
-
addFile(file);
|
|
7894
|
-
return false;
|
|
7895
|
-
}
|
|
7896
|
-
function addFile(file) {
|
|
7897
|
-
let blobSlice = File.prototype.slice || File.prototype.mozSlice || File.prototype.webkitSlice;
|
|
7898
|
-
let chunkSize = 2097152, chunks = Math.ceil(file.size / chunkSize), currentChunk = 0, spark = new sparkMd5.exports.ArrayBuffer(), fileReader = new FileReader();
|
|
7899
|
-
fileReader.onload = function(e) {
|
|
7900
|
-
spark.append(e.target["result"]);
|
|
7901
|
-
currentChunk++;
|
|
7902
|
-
if (currentChunk < chunks) {
|
|
7903
|
-
loadNext();
|
|
7904
|
-
} else {
|
|
7905
|
-
let fileObj = {
|
|
7906
|
-
fileName: file.name,
|
|
7907
|
-
fileId: spark.end(),
|
|
7908
|
-
file,
|
|
7909
|
-
status: 1,
|
|
7910
|
-
fileStatue: t("UI.PRE_UPLOAD")
|
|
7911
|
-
};
|
|
7912
|
-
if (props.multiple) {
|
|
7913
|
-
filesRef.value.push(fileObj);
|
|
7914
|
-
} else {
|
|
7915
|
-
historyFilesRef.value = [];
|
|
7916
|
-
filesRef.value = [fileObj];
|
|
7917
|
-
}
|
|
7918
|
-
}
|
|
7919
|
-
};
|
|
7920
|
-
function loadNext() {
|
|
7921
|
-
var start = currentChunk * chunkSize, end = start + chunkSize >= file.size ? file.size : start + chunkSize;
|
|
7922
|
-
fileReader.readAsArrayBuffer(blobSlice.call(file, start, end));
|
|
7923
|
-
}
|
|
7924
|
-
loadNext();
|
|
7925
|
-
}
|
|
7926
|
-
expose({
|
|
7927
|
-
allFilesRef
|
|
7928
|
-
});
|
|
7929
|
-
return (_ctx, _cache) => {
|
|
7930
|
-
const _directive_icon = resolveDirective("icon");
|
|
7931
|
-
return openBlock(), createElementBlock("div", _hoisted_1$i, [
|
|
7932
|
-
createElementVNode("div", {
|
|
7933
|
-
class: "file-header",
|
|
7934
|
-
style: normalizeStyle({
|
|
7935
|
-
"padding-bottom": !unref(getHelpText) ? "10px" : ""
|
|
7936
|
-
})
|
|
7937
|
-
}, [
|
|
7938
|
-
createElementVNode("div", null, [
|
|
7939
|
-
createVNode(unref(Upload), {
|
|
7940
|
-
accept: unref(getStringAccept),
|
|
7941
|
-
multiple: _ctx.multiple,
|
|
7942
|
-
"before-upload": beforeUpload,
|
|
7943
|
-
"show-upload-list": false
|
|
7944
|
-
}, {
|
|
7945
|
-
default: withCtx(() => [
|
|
7946
|
-
createVNode(unref(Button), { type: "primary" }, {
|
|
7947
|
-
default: withCtx(() => [
|
|
7948
|
-
withDirectives(createElementVNode("span", null, null, 512), [
|
|
7949
|
-
[_directive_icon, "ic:baseline-file-upload"]
|
|
7950
|
-
]),
|
|
7951
|
-
createTextVNode(" " + toDisplayString(unref(t)(_ctx.uploadText)), 1)
|
|
7952
|
-
]),
|
|
7953
|
-
_: 1
|
|
7954
|
-
})
|
|
7955
|
-
]),
|
|
7956
|
-
_: 1
|
|
7957
|
-
}, 8, ["accept", "multiple"]),
|
|
7958
|
-
_ctx.showTemplateDownload ? (openBlock(), createBlock(unref(Button), {
|
|
7959
|
-
key: 0,
|
|
7960
|
-
type: "primary",
|
|
7961
|
-
onClick: _ctx.templateDownload
|
|
7962
|
-
}, {
|
|
7963
|
-
default: withCtx(() => [
|
|
7964
|
-
withDirectives(createElementVNode("span", null, null, 512), [
|
|
7965
|
-
[_directive_icon, "ic:baseline-file-download"]
|
|
7966
|
-
]),
|
|
7967
|
-
createTextVNode(" " + toDisplayString(unref(t)("UI.DOWNLOAD_TEMPLATE")), 1)
|
|
7968
|
-
]),
|
|
7969
|
-
_: 1
|
|
7970
|
-
}, 8, ["onClick"])) : createCommentVNode("", true)
|
|
7971
|
-
]),
|
|
7972
|
-
renderSlot(_ctx.$slots, "default")
|
|
7973
|
-
], 4),
|
|
7974
|
-
unref(getHelpText) ? (openBlock(), createElementBlock("div", _hoisted_2$b, [
|
|
7975
|
-
withDirectives(createElementVNode("span", null, null, 512), [
|
|
7976
|
-
[_directive_icon, "ant-design:info-circle-outlined"]
|
|
7977
|
-
]),
|
|
7978
|
-
createElementVNode("i", null, toDisplayString(unref(getHelpText)), 1)
|
|
7979
|
-
])) : createCommentVNode("", true),
|
|
7980
|
-
createVNode(unref(DtTable), { onRegister: unref(registerTable) }, null, 8, ["onRegister"]),
|
|
7981
|
-
createVNode(unref(Image), {
|
|
7982
|
-
width: 200,
|
|
7983
|
-
style: { display: "none" },
|
|
7984
|
-
preview: {
|
|
7985
|
-
visible: imgVisable.value,
|
|
7986
|
-
onVisibleChange: setImgVisible
|
|
7987
|
-
},
|
|
7988
|
-
src: imgSrcRef.value
|
|
7989
|
-
}, null, 8, ["preview", "src"])
|
|
7990
|
-
]);
|
|
7991
|
-
};
|
|
7992
|
-
}
|
|
7993
|
-
});
|
|
7994
7319
|
const BasicProps = {
|
|
7995
7320
|
showIcon: {
|
|
7996
7321
|
type: Boolean,
|
|
@@ -8279,8 +7604,8 @@ function useTree(treeDataRef, getFieldNames) {
|
|
|
8279
7604
|
const { key: keyField, children: childrenField } = unref(getFieldNames);
|
|
8280
7605
|
if (!childrenField || !keyField)
|
|
8281
7606
|
return keys;
|
|
8282
|
-
for (let
|
|
8283
|
-
const node = treeData[
|
|
7607
|
+
for (let index2 = 0; index2 < treeData.length; index2++) {
|
|
7608
|
+
const node = treeData[index2];
|
|
8284
7609
|
keys.push(node[keyField]);
|
|
8285
7610
|
const children = node[childrenField];
|
|
8286
7611
|
if (children && children.length) {
|
|
@@ -8295,8 +7620,8 @@ function useTree(treeDataRef, getFieldNames) {
|
|
|
8295
7620
|
const { key: keyField, children: childrenField } = unref(getFieldNames);
|
|
8296
7621
|
if (!childrenField || !keyField)
|
|
8297
7622
|
return keys;
|
|
8298
|
-
for (let
|
|
8299
|
-
const node = treeData[
|
|
7623
|
+
for (let index2 = 0; index2 < treeData.length; index2++) {
|
|
7624
|
+
const node = treeData[index2];
|
|
8300
7625
|
node.disabled !== true && node.selectable !== false && keys.push(node[keyField]);
|
|
8301
7626
|
const children = node[childrenField];
|
|
8302
7627
|
if (children && children.length) {
|
|
@@ -8311,8 +7636,8 @@ function useTree(treeDataRef, getFieldNames) {
|
|
|
8311
7636
|
const { key: keyField, children: childrenField } = unref(getFieldNames);
|
|
8312
7637
|
if (!childrenField || !keyField)
|
|
8313
7638
|
return keys;
|
|
8314
|
-
for (let
|
|
8315
|
-
const node = treeData[
|
|
7639
|
+
for (let index2 = 0; index2 < treeData.length; index2++) {
|
|
7640
|
+
const node = treeData[index2];
|
|
8316
7641
|
const children = node[childrenField];
|
|
8317
7642
|
if (nodeKey === node[keyField]) {
|
|
8318
7643
|
keys.push(node[keyField]);
|
|
@@ -8334,11 +7659,11 @@ function useTree(treeDataRef, getFieldNames) {
|
|
|
8334
7659
|
const { key: keyField, children: childrenField } = unref(getFieldNames);
|
|
8335
7660
|
if (!childrenField || !keyField)
|
|
8336
7661
|
return;
|
|
8337
|
-
for (let
|
|
8338
|
-
const element = treeData[
|
|
7662
|
+
for (let index2 = 0; index2 < treeData.length; index2++) {
|
|
7663
|
+
const element = treeData[index2];
|
|
8339
7664
|
const children = element[childrenField];
|
|
8340
7665
|
if (element[keyField] === key) {
|
|
8341
|
-
treeData[
|
|
7666
|
+
treeData[index2] = { ...treeData[index2], ...node };
|
|
8342
7667
|
break;
|
|
8343
7668
|
} else if (children && children.length) {
|
|
8344
7669
|
updateNodeByKey(key, node, element[childrenField]);
|
|
@@ -8350,8 +7675,8 @@ function useTree(treeDataRef, getFieldNames) {
|
|
|
8350
7675
|
return [];
|
|
8351
7676
|
const res = [];
|
|
8352
7677
|
const data = list || unref(treeDataRef) || [];
|
|
8353
|
-
for (let
|
|
8354
|
-
const item = data[
|
|
7678
|
+
for (let index2 = 0; index2 < data.length; index2++) {
|
|
7679
|
+
const item = data[index2];
|
|
8355
7680
|
const { key: keyField, children: childrenField } = unref(getFieldNames);
|
|
8356
7681
|
const key = keyField ? item[keyField] : "";
|
|
8357
7682
|
const children = childrenField ? item[childrenField] : [];
|
|
@@ -8413,11 +7738,11 @@ function useTree(treeDataRef, getFieldNames) {
|
|
|
8413
7738
|
const { key: keyField, children: childrenField } = unref(getFieldNames);
|
|
8414
7739
|
if (!childrenField || !keyField)
|
|
8415
7740
|
return;
|
|
8416
|
-
for (let
|
|
8417
|
-
const element = treeData[
|
|
7741
|
+
for (let index2 = 0; index2 < treeData.length; index2++) {
|
|
7742
|
+
const element = treeData[index2];
|
|
8418
7743
|
const children = element[childrenField];
|
|
8419
7744
|
if (element[keyField] === key) {
|
|
8420
|
-
treeData.splice(
|
|
7745
|
+
treeData.splice(index2, 1);
|
|
8421
7746
|
break;
|
|
8422
7747
|
} else if (children && children.length) {
|
|
8423
7748
|
deleteNodeByKey(key, element[childrenField]);
|
|
@@ -8594,9 +7919,9 @@ var _sfc_main$w = /* @__PURE__ */ defineComponent({
|
|
|
8594
7919
|
setExpandedKeys([...state.expandedKeys, key]);
|
|
8595
7920
|
} else {
|
|
8596
7921
|
const keys = [...state.expandedKeys];
|
|
8597
|
-
const
|
|
8598
|
-
if (
|
|
8599
|
-
keys.splice(
|
|
7922
|
+
const index2 = keys.findIndex((item) => item === key);
|
|
7923
|
+
if (index2 !== -1) {
|
|
7924
|
+
keys.splice(index2, 1);
|
|
8600
7925
|
}
|
|
8601
7926
|
setExpandedKeys(keys);
|
|
8602
7927
|
}
|
|
@@ -8607,7 +7932,7 @@ var _sfc_main$w = /* @__PURE__ */ defineComponent({
|
|
|
8607
7932
|
} = props;
|
|
8608
7933
|
if (!actionList || actionList.length === 0)
|
|
8609
7934
|
return;
|
|
8610
|
-
return actionList.map((item,
|
|
7935
|
+
return actionList.map((item, index2) => {
|
|
8611
7936
|
var _a;
|
|
8612
7937
|
let nodeShow = true;
|
|
8613
7938
|
if (isFunction(item.show)) {
|
|
@@ -8618,7 +7943,7 @@ var _sfc_main$w = /* @__PURE__ */ defineComponent({
|
|
|
8618
7943
|
if (!nodeShow)
|
|
8619
7944
|
return null;
|
|
8620
7945
|
return createVNode("span", {
|
|
8621
|
-
"key":
|
|
7946
|
+
"key": index2,
|
|
8622
7947
|
"class": "tree-action"
|
|
8623
7948
|
}, [item.render(node)]);
|
|
8624
7949
|
});
|
|
@@ -8800,10 +8125,9 @@ var _sfc_main$w = /* @__PURE__ */ defineComponent({
|
|
|
8800
8125
|
const dtComponents = [
|
|
8801
8126
|
{ name: "dt-base-router", component: DtBaseRouter },
|
|
8802
8127
|
{ name: "dt-icon", component: DtIcon },
|
|
8803
|
-
{ name: "dt-pick-icon", component: _sfc_main$
|
|
8804
|
-
{ name: "dt-modal", component: _sfc_main$
|
|
8128
|
+
{ name: "dt-pick-icon", component: _sfc_main$W },
|
|
8129
|
+
{ name: "dt-modal", component: _sfc_main$K },
|
|
8805
8130
|
{ name: "dt-form", component: DtForm },
|
|
8806
|
-
{ name: "dt-upload", component: _sfc_main$y },
|
|
8807
8131
|
{ name: "dt-tree", component: _sfc_main$w }
|
|
8808
8132
|
];
|
|
8809
8133
|
function initComponents() {
|
|
@@ -9033,6 +8357,8 @@ const _sfc_main$o = /* @__PURE__ */ defineComponent({
|
|
|
9033
8357
|
go(Pages.LOGIN);
|
|
9034
8358
|
}
|
|
9035
8359
|
}
|
|
8360
|
+
function modifyPassword() {
|
|
8361
|
+
}
|
|
9036
8362
|
return (_ctx, _cache) => {
|
|
9037
8363
|
const _directive_icon = resolveDirective("icon");
|
|
9038
8364
|
return openBlock(), createBlock(unref(Popover), {
|
|
@@ -9052,14 +8378,16 @@ const _sfc_main$o = /* @__PURE__ */ defineComponent({
|
|
|
9052
8378
|
createTextVNode(" " + toDisplayString(it.label), 1)
|
|
9053
8379
|
], 8, _hoisted_2$7);
|
|
9054
8380
|
}), 256)),
|
|
9055
|
-
createElementVNode("li",
|
|
8381
|
+
createElementVNode("li", {
|
|
8382
|
+
onClick: _cache[0] || (_cache[0] = ($event) => modifyPassword())
|
|
8383
|
+
}, [
|
|
9056
8384
|
withDirectives(createElementVNode("span", null, null, 512), [
|
|
9057
8385
|
[_directive_icon, "ic:baseline-key"]
|
|
9058
8386
|
]),
|
|
9059
8387
|
createTextVNode(toDisplayString(unref(t)("MODIFY_PASSWORD")), 1)
|
|
9060
8388
|
]),
|
|
9061
8389
|
createElementVNode("li", {
|
|
9062
|
-
onClick: _cache[
|
|
8390
|
+
onClick: _cache[1] || (_cache[1] = ($event) => signOut())
|
|
9063
8391
|
}, [
|
|
9064
8392
|
withDirectives(createElementVNode("span", null, null, 512), [
|
|
9065
8393
|
[_directive_icon, "ant-design:logout-outlined"]
|
|
@@ -10153,7 +9481,7 @@ var _sfc_main$b = defineComponent({
|
|
|
10153
9481
|
}), null);
|
|
10154
9482
|
}
|
|
10155
9483
|
return () => {
|
|
10156
|
-
return createVNode(Fragment, null, [renderHeader(), unref(getUseScroll) ? createVNode(_sfc_main$
|
|
9484
|
+
return createVNode(Fragment, null, [renderHeader(), unref(getUseScroll) ? createVNode(_sfc_main$U, null, {
|
|
10157
9485
|
default: () => renderMenu()
|
|
10158
9486
|
}) : renderMenu()]);
|
|
10159
9487
|
};
|
|
@@ -10490,10 +9818,10 @@ function useTabDropdown() {
|
|
|
10490
9818
|
const { path, meta } = unref(currentRoute);
|
|
10491
9819
|
const curItem = state.current;
|
|
10492
9820
|
const isCurItem = curItem ? curItem.path === path : false;
|
|
10493
|
-
const
|
|
10494
|
-
const closeLeftDisabled =
|
|
9821
|
+
const index2 = state.currentIndex;
|
|
9822
|
+
const closeLeftDisabled = index2 === 0 || !isCurItem;
|
|
10495
9823
|
const disabled = tabStore.getTabList.length === 1;
|
|
10496
|
-
const closeRightDisabled = !isCurItem ||
|
|
9824
|
+
const closeRightDisabled = !isCurItem || index2 === tabStore.getTabList.length - 1 && tabStore.getLastDragEndIndex >= 0;
|
|
10497
9825
|
const dropMenuList = [
|
|
10498
9826
|
{
|
|
10499
9827
|
icon: "ic:baseline-close",
|
|
@@ -10534,9 +9862,9 @@ function useTabDropdown() {
|
|
|
10534
9862
|
function handleContext(e) {
|
|
10535
9863
|
e == null ? void 0 : e.preventDefault();
|
|
10536
9864
|
const { path } = unref(currentRoute);
|
|
10537
|
-
const
|
|
9865
|
+
const index2 = tabStore.getTabList.findIndex((tab) => tab.path === path);
|
|
10538
9866
|
state.current = unref(currentRoute);
|
|
10539
|
-
state.currentIndex =
|
|
9867
|
+
state.currentIndex = index2;
|
|
10540
9868
|
}
|
|
10541
9869
|
function handleMenuEvent(item) {
|
|
10542
9870
|
var _a;
|
|
@@ -10564,8 +9892,8 @@ const _sfc_main$6 = /* @__PURE__ */ defineComponent({
|
|
|
10564
9892
|
overlay: withCtx(() => [
|
|
10565
9893
|
createVNode(unref(Menu), null, {
|
|
10566
9894
|
default: withCtx(() => [
|
|
10567
|
-
(openBlock(true), createElementBlock(Fragment, null, renderList(unref(getDropMenuList), (item,
|
|
10568
|
-
return openBlock(), createElementBlock(Fragment, { key:
|
|
9895
|
+
(openBlock(true), createElementBlock(Fragment, null, renderList(unref(getDropMenuList), (item, index2) => {
|
|
9896
|
+
return openBlock(), createElementBlock(Fragment, { key: index2 }, [
|
|
10569
9897
|
createVNode(unref(MenuItem), {
|
|
10570
9898
|
onClick: ($event) => unref(handleMenuEvent)(item),
|
|
10571
9899
|
disabled: item.disabled
|
|
@@ -10579,7 +9907,7 @@ const _sfc_main$6 = /* @__PURE__ */ defineComponent({
|
|
|
10579
9907
|
_: 2
|
|
10580
9908
|
}, 1032, ["onClick", "disabled"]),
|
|
10581
9909
|
item.divider ? (openBlock(), createBlock(unref(MenuDivider), {
|
|
10582
|
-
key: `d-${
|
|
9910
|
+
key: `d-${index2}`
|
|
10583
9911
|
})) : createCommentVNode("", true)
|
|
10584
9912
|
], 64);
|
|
10585
9913
|
}), 128))
|
|
@@ -10997,7 +10325,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
10997
10325
|
}, {
|
|
10998
10326
|
default: withCtx(() => [
|
|
10999
10327
|
unref(getShowSidebar) ? (openBlock(), createBlock(_sfc_main$7, { key: 0 })) : createCommentVNode("", true),
|
|
11000
|
-
createVNode(unref(_sfc_main$
|
|
10328
|
+
createVNode(unref(_sfc_main$U), {
|
|
11001
10329
|
ref_key: "wrapperRef",
|
|
11002
10330
|
ref: wrapperRef,
|
|
11003
10331
|
class: normalizeClass({ "fixedWrap": unref(getFixed) })
|
|
@@ -11029,4 +10357,4 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
11029
10357
|
};
|
|
11030
10358
|
}
|
|
11031
10359
|
});
|
|
11032
|
-
export { DtBaseRouter, DtForm, DtIcon, _sfc_main$
|
|
10360
|
+
export { DtBaseRouter, DtForm, DtIcon, _sfc_main$y as DtIframe, _sfc_main$K as DtModal, _sfc_main$W as DtPickIcon, index as DtTable, _sfc_main as DtTheme, _sfc_main$w as DtTree, FormButtons, authMounted, iconMounted, initComponents, initDirectives, useCurd, useForm, useModal, useModalOut, useSource, useTable };
|