From 05f2e54ed1ebace301975819b16b515a23f23e48 Mon Sep 17 00:00:00 2001 From: Sergio Date: Sat, 23 May 2026 16:21:01 +0000 Subject: [PATCH] gioser-web: draggable graph nodes, fixed controls, history.pushState routing MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Graph: nodes are draggable via pointer events. Snap back with spring transition on release (cubic-bezier 0.34,1.56,0.64,1) - Removed hover bounce animation (was distracting) - Page controls (minimize/close): now fixed position in viewport (top-right, z-index 100), not inside the deck-page scroll area. Created once in sync_page_controls() on show/hide deck. Controls detect active page when data-minimize/close-page is empty. - Hash routing → history.pushState: URLs are /estudio/aire etc. popstate listener handles back/forward. Initial path read on boot. - Added PointerEvent feature to gioser-graph-web Cargo.toml - Added History feature to gioser-web Cargo.toml --- Cargo.toml | 34 +++--- crates/apps/gioser-web/Cargo.toml | 1 + crates/apps/gioser-web/pkg/gioser_web.d.ts | 17 +-- crates/apps/gioser-web/pkg/gioser_web.js | 91 ++++++++------- crates/apps/gioser-web/pkg/gioser_web_bg.wasm | Bin 532278 -> 536595 bytes .../gioser-web/pkg/gioser_web_bg.wasm.d.ts | 17 +-- crates/apps/gioser-web/src/lib.rs | 110 +++++++++++++----- crates/apps/gioser-web/styles.css | 17 ++- .../gioser/gioser-graph-web/Cargo.toml | 1 + .../gioser/gioser-graph-web/src/lib.rs | 91 +++++++++++---- 10 files changed, 247 insertions(+), 132 deletions(-) diff --git a/Cargo.toml b/Cargo.toml index bce666a..264decb 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -248,20 +248,20 @@ members = [ "crates/modules/barra/barra-web", # ============================================================ -# # modules/cosmobiologia/ — Estudio de astrología profesional -# # ============================================================ -# "crates/modules/cosmobiologia/cosmobiologia-card", -# "crates/modules/cosmobiologia/cosmobiologia-model", -# "crates/modules/cosmobiologia/cosmobiologia-store", -# "crates/modules/cosmobiologia/cosmobiologia-render", -# "crates/modules/cosmobiologia/cosmobiologia-corpus", -# "crates/modules/cosmobiologia/cosmobiologia-engine", -# "crates/modules/cosmobiologia/cosmobiologia-modules", -# "crates/modules/cosmobiologia/cosmobiologia-theme", -# "crates/modules/cosmobiologia/cosmobiologia-canvas", -# "crates/modules/cosmobiologia/cosmobiologia-tree", -# "crates/modules/cosmobiologia/cosmobiologia-panel", -# "crates/modules/cosmobiologia/cosmobiologia-web", +#### # modules/cosmobiologia/ — Estudio de astrología profesional +#### # ============================================================ +#### "crates/modules/cosmobiologia/cosmobiologia-card", +#### "crates/modules/cosmobiologia/cosmobiologia-model", +#### "crates/modules/cosmobiologia/cosmobiologia-store", +#### "crates/modules/cosmobiologia/cosmobiologia-render", +#### "crates/modules/cosmobiologia/cosmobiologia-corpus", +#### "crates/modules/cosmobiologia/cosmobiologia-engine", +#### "crates/modules/cosmobiologia/cosmobiologia-modules", +#### "crates/modules/cosmobiologia/cosmobiologia-theme", +#### "crates/modules/cosmobiologia/cosmobiologia-canvas", +#### "crates/modules/cosmobiologia/cosmobiologia-tree", +#### "crates/modules/cosmobiologia/cosmobiologia-panel", +#### "crates/modules/cosmobiologia/cosmobiologia-web", # ============================================================ # apps/ — Binarios finales que consumen el protocolo @@ -287,9 +287,9 @@ members = [ "crates/apps/pineal-stream-demo", "crates/apps/pineal-phosphor-demo", "crates/apps/pineal-financial-demo", -# "crates/apps/cosmobiologia", -# "crates/apps/cosmobiologia-cli", -# "crates/apps/cosmobiologia-server", +#### "crates/apps/cosmobiologia", +#### "crates/apps/cosmobiologia-cli", +#### "crates/apps/cosmobiologia-server", "crates/apps/dominium", "crates/apps/fana", "crates/apps/agorapura", diff --git a/crates/apps/gioser-web/Cargo.toml b/crates/apps/gioser-web/Cargo.toml index 12e1170..465bd98 100644 --- a/crates/apps/gioser-web/Cargo.toml +++ b/crates/apps/gioser-web/Cargo.toml @@ -40,4 +40,5 @@ features = [ "Performance", "console", "Location", + "History", ] diff --git a/crates/apps/gioser-web/pkg/gioser_web.d.ts b/crates/apps/gioser-web/pkg/gioser_web.d.ts index 6567e62..dfcbe74 100644 --- a/crates/apps/gioser-web/pkg/gioser_web.d.ts +++ b/crates/apps/gioser-web/pkg/gioser_web.d.ts @@ -8,14 +8,15 @@ export type InitInput = RequestInfo | URL | Response | BufferSource | WebAssembl export interface InitOutput { readonly memory: WebAssembly.Memory; readonly boot: () => void; - readonly __wasm_bindgen_func_elem_229: (a: number, b: number, c: number) => void; - readonly __wasm_bindgen_func_elem_1437: (a: number, b: number, c: number, d: number) => void; - readonly __wasm_bindgen_func_elem_228: (a: number, b: number, c: number) => void; - readonly __wasm_bindgen_func_elem_228_3: (a: number, b: number, c: number) => void; - readonly __wasm_bindgen_func_elem_510: (a: number, b: number, c: number) => void; - readonly __wasm_bindgen_func_elem_620: (a: number, b: number, c: number) => void; - readonly __wasm_bindgen_func_elem_302: (a: number, b: number, c: number) => void; - readonly __wasm_bindgen_func_elem_303: (a: number, b: number) => void; + readonly __wasm_bindgen_func_elem_234: (a: number, b: number, c: number) => void; + readonly __wasm_bindgen_func_elem_1460: (a: number, b: number, c: number, d: number) => void; + readonly __wasm_bindgen_func_elem_233: (a: number, b: number, c: number) => void; + readonly __wasm_bindgen_func_elem_233_3: (a: number, b: number, c: number) => void; + readonly __wasm_bindgen_func_elem_515: (a: number, b: number, c: number) => void; + readonly __wasm_bindgen_func_elem_635: (a: number, b: number, c: number) => void; + readonly __wasm_bindgen_func_elem_515_6: (a: number, b: number, c: number) => void; + readonly __wasm_bindgen_func_elem_307: (a: number, b: number, c: number) => void; + readonly __wasm_bindgen_func_elem_308: (a: number, b: number) => void; readonly __wbindgen_export: (a: number, b: number) => number; readonly __wbindgen_export2: (a: number, b: number, c: number, d: number) => number; readonly __wbindgen_export3: (a: number) => void; diff --git a/crates/apps/gioser-web/pkg/gioser_web.js b/crates/apps/gioser-web/pkg/gioser_web.js index 92f1e92..0f65406 100644 --- a/crates/apps/gioser-web/pkg/gioser_web.js +++ b/crates/apps/gioser-web/pkg/gioser_web.js @@ -228,13 +228,6 @@ function __wbg_get_imports() { const ret = getObject(arg0).getUniformLocation(getObject(arg1), getStringFromWasm0(arg2, arg3)); return isLikeNone(ret) ? 0 : addHeapObject(ret); }, - __wbg_hash_db43ea0a219f3045: function() { return handleError(function (arg0, arg1) { - const ret = getObject(arg1).hash; - const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_export, wasm.__wbindgen_export2); - const len1 = WASM_VECTOR_LEN; - getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true); - getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true); - }, arguments); }, __wbg_height_110f80d27112b6b3: function(arg0) { const ret = getObject(arg0).height; return ret; @@ -243,6 +236,10 @@ function __wbg_get_imports() { const ret = getObject(arg0).height; return ret; }, + __wbg_history_4fea091a79b506f0: function() { return handleError(function (arg0) { + const ret = getObject(arg0).history; + return addHeapObject(ret); + }, arguments); }, __wbg_id_e2fe0a117fc8156c: function(arg0, arg1) { const ret = getObject(arg1).id; const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_export, wasm.__wbindgen_export2); @@ -426,6 +423,13 @@ function __wbg_get_imports() { const ret = getObject(arg0).ok; return ret; }, + __wbg_pathname_4da19d3e179041e2: function() { return handleError(function (arg0, arg1) { + const ret = getObject(arg1).pathname; + const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_export, wasm.__wbindgen_export2); + const len1 = WASM_VECTOR_LEN; + getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true); + getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true); + }, arguments); }, __wbg_pointerId_b61ce7aca1eab0cc: function(arg0) { const ret = getObject(arg0).pointerId; return ret; @@ -433,6 +437,9 @@ function __wbg_get_imports() { __wbg_preventDefault_077a15ca7e97dc5a: function(arg0) { getObject(arg0).preventDefault(); }, + __wbg_pushState_c8f418e428c76877: function() { return handleError(function (arg0, arg1, arg2, arg3, arg4, arg5) { + getObject(arg0).pushState(getObject(arg1), getStringFromWasm0(arg2, arg3), arg4 === 0 ? undefined : getStringFromWasm0(arg4, arg5)); + }, arguments); }, __wbg_querySelectorAll_0981bdbbafa5bf17: function() { return handleError(function (arg0, arg1, arg2) { const ret = getObject(arg0).querySelectorAll(getStringFromWasm0(arg1, arg2)); return addHeapObject(ret); @@ -478,9 +485,6 @@ function __wbg_get_imports() { __wbg_setProperty_ee784b2651f9ff8d: function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) { getObject(arg0).setProperty(getStringFromWasm0(arg1, arg2), getStringFromWasm0(arg3, arg4)); }, arguments); }, - __wbg_set_hash_62c4dbdd31cfb200: function() { return handleError(function (arg0, arg1, arg2) { - getObject(arg0).hash = getStringFromWasm0(arg1, arg2); - }, arguments); }, __wbg_set_height_bdd58e6b04e88cca: function(arg0, arg1) { getObject(arg0).height = arg1 >>> 0; }, @@ -592,51 +596,56 @@ function __wbg_get_imports() { return ret; }, __wbindgen_cast_0000000000000001: function(arg0, arg1) { - // Cast intrinsic for `Closure(Closure { owned: true, function: Function { arguments: [Externref], shim_idx: 187, ret: Result(Unit), inner_ret: Some(Result(Unit)) }, mutable: true }) -> Externref`. - const ret = makeMutClosure(arg0, arg1, __wasm_bindgen_func_elem_1437); + // Cast intrinsic for `Closure(Closure { owned: true, function: Function { arguments: [Externref], shim_idx: 196, ret: Result(Unit), inner_ret: Some(Result(Unit)) }, mutable: true }) -> Externref`. + const ret = makeMutClosure(arg0, arg1, __wasm_bindgen_func_elem_1460); return addHeapObject(ret); }, __wbindgen_cast_0000000000000002: function(arg0, arg1) { // Cast intrinsic for `Closure(Closure { owned: true, function: Function { arguments: [F64], shim_idx: 2, ret: Unit, inner_ret: Some(Unit) }, mutable: true }) -> Externref`. - const ret = makeMutClosure(arg0, arg1, __wasm_bindgen_func_elem_229); + const ret = makeMutClosure(arg0, arg1, __wasm_bindgen_func_elem_234); return addHeapObject(ret); }, __wbindgen_cast_0000000000000003: function(arg0, arg1) { // Cast intrinsic for `Closure(Closure { owned: true, function: Function { arguments: [NamedExternref("Event")], shim_idx: 6, ret: Unit, inner_ret: Some(Unit) }, mutable: true }) -> Externref`. - const ret = makeMutClosure(arg0, arg1, __wasm_bindgen_func_elem_228); + const ret = makeMutClosure(arg0, arg1, __wasm_bindgen_func_elem_233); return addHeapObject(ret); }, __wbindgen_cast_0000000000000004: function(arg0, arg1) { // Cast intrinsic for `Closure(Closure { owned: true, function: Function { arguments: [NamedExternref("KeyboardEvent")], shim_idx: 6, ret: Unit, inner_ret: Some(Unit) }, mutable: true }) -> Externref`. - const ret = makeMutClosure(arg0, arg1, __wasm_bindgen_func_elem_228_3); + const ret = makeMutClosure(arg0, arg1, __wasm_bindgen_func_elem_233_3); return addHeapObject(ret); }, __wbindgen_cast_0000000000000005: function(arg0, arg1) { // Cast intrinsic for `Closure(Closure { owned: true, function: Function { arguments: [NamedExternref("MouseEvent")], shim_idx: 144, ret: Unit, inner_ret: Some(Unit) }, mutable: true }) -> Externref`. - const ret = makeMutClosure(arg0, arg1, __wasm_bindgen_func_elem_510); + const ret = makeMutClosure(arg0, arg1, __wasm_bindgen_func_elem_515); return addHeapObject(ret); }, __wbindgen_cast_0000000000000006: function(arg0, arg1) { - // Cast intrinsic for `Closure(Closure { owned: true, function: Function { arguments: [NamedExternref("MouseEvent")], shim_idx: 181, ret: Unit, inner_ret: Some(Unit) }, mutable: true }) -> Externref`. - const ret = makeMutClosure(arg0, arg1, __wasm_bindgen_func_elem_620); + // Cast intrinsic for `Closure(Closure { owned: true, function: Function { arguments: [NamedExternref("MouseEvent")], shim_idx: 190, ret: Unit, inner_ret: Some(Unit) }, mutable: true }) -> Externref`. + const ret = makeMutClosure(arg0, arg1, __wasm_bindgen_func_elem_635); return addHeapObject(ret); }, __wbindgen_cast_0000000000000007: function(arg0, arg1) { - // Cast intrinsic for `Closure(Closure { owned: true, function: Function { arguments: [NamedExternref("PointerEvent")], shim_idx: 74, ret: Unit, inner_ret: Some(Unit) }, mutable: true }) -> Externref`. - const ret = makeMutClosure(arg0, arg1, __wasm_bindgen_func_elem_302); + // Cast intrinsic for `Closure(Closure { owned: true, function: Function { arguments: [NamedExternref("PointerEvent")], shim_idx: 144, ret: Unit, inner_ret: Some(Unit) }, mutable: true }) -> Externref`. + const ret = makeMutClosure(arg0, arg1, __wasm_bindgen_func_elem_515_6); return addHeapObject(ret); }, __wbindgen_cast_0000000000000008: function(arg0, arg1) { - // Cast intrinsic for `Closure(Closure { owned: true, function: Function { arguments: [], shim_idx: 76, ret: Unit, inner_ret: Some(Unit) }, mutable: true }) -> Externref`. - const ret = makeMutClosure(arg0, arg1, __wasm_bindgen_func_elem_303); + // Cast intrinsic for `Closure(Closure { owned: true, function: Function { arguments: [NamedExternref("PointerEvent")], shim_idx: 74, ret: Unit, inner_ret: Some(Unit) }, mutable: true }) -> Externref`. + const ret = makeMutClosure(arg0, arg1, __wasm_bindgen_func_elem_307); return addHeapObject(ret); }, __wbindgen_cast_0000000000000009: function(arg0, arg1) { + // Cast intrinsic for `Closure(Closure { owned: true, function: Function { arguments: [], shim_idx: 76, ret: Unit, inner_ret: Some(Unit) }, mutable: true }) -> Externref`. + const ret = makeMutClosure(arg0, arg1, __wasm_bindgen_func_elem_308); + return addHeapObject(ret); + }, + __wbindgen_cast_000000000000000a: function(arg0, arg1) { // Cast intrinsic for `Ref(Slice(F32)) -> NamedExternref("Float32Array")`. const ret = getArrayF32FromWasm0(arg0, arg1); return addHeapObject(ret); }, - __wbindgen_cast_000000000000000a: function(arg0, arg1) { + __wbindgen_cast_000000000000000b: function(arg0, arg1) { // Cast intrinsic for `Ref(String) -> Externref`. const ret = getStringFromWasm0(arg0, arg1); return addHeapObject(ret); @@ -655,34 +664,38 @@ function __wbg_get_imports() { }; } -function __wasm_bindgen_func_elem_303(arg0, arg1) { - wasm.__wasm_bindgen_func_elem_303(arg0, arg1); +function __wasm_bindgen_func_elem_308(arg0, arg1) { + wasm.__wasm_bindgen_func_elem_308(arg0, arg1); } -function __wasm_bindgen_func_elem_228(arg0, arg1, arg2) { - wasm.__wasm_bindgen_func_elem_228(arg0, arg1, addHeapObject(arg2)); +function __wasm_bindgen_func_elem_233(arg0, arg1, arg2) { + wasm.__wasm_bindgen_func_elem_233(arg0, arg1, addHeapObject(arg2)); } -function __wasm_bindgen_func_elem_228_3(arg0, arg1, arg2) { - wasm.__wasm_bindgen_func_elem_228_3(arg0, arg1, addHeapObject(arg2)); +function __wasm_bindgen_func_elem_233_3(arg0, arg1, arg2) { + wasm.__wasm_bindgen_func_elem_233_3(arg0, arg1, addHeapObject(arg2)); } -function __wasm_bindgen_func_elem_510(arg0, arg1, arg2) { - wasm.__wasm_bindgen_func_elem_510(arg0, arg1, addHeapObject(arg2)); +function __wasm_bindgen_func_elem_515(arg0, arg1, arg2) { + wasm.__wasm_bindgen_func_elem_515(arg0, arg1, addHeapObject(arg2)); } -function __wasm_bindgen_func_elem_620(arg0, arg1, arg2) { - wasm.__wasm_bindgen_func_elem_620(arg0, arg1, addHeapObject(arg2)); +function __wasm_bindgen_func_elem_635(arg0, arg1, arg2) { + wasm.__wasm_bindgen_func_elem_635(arg0, arg1, addHeapObject(arg2)); } -function __wasm_bindgen_func_elem_302(arg0, arg1, arg2) { - wasm.__wasm_bindgen_func_elem_302(arg0, arg1, addHeapObject(arg2)); +function __wasm_bindgen_func_elem_515_6(arg0, arg1, arg2) { + wasm.__wasm_bindgen_func_elem_515_6(arg0, arg1, addHeapObject(arg2)); } -function __wasm_bindgen_func_elem_1437(arg0, arg1, arg2) { +function __wasm_bindgen_func_elem_307(arg0, arg1, arg2) { + wasm.__wasm_bindgen_func_elem_307(arg0, arg1, addHeapObject(arg2)); +} + +function __wasm_bindgen_func_elem_1460(arg0, arg1, arg2) { try { const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - wasm.__wasm_bindgen_func_elem_1437(retptr, arg0, arg1, addHeapObject(arg2)); + wasm.__wasm_bindgen_func_elem_1460(retptr, arg0, arg1, addHeapObject(arg2)); var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true); var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true); if (r1) { @@ -693,8 +706,8 @@ function __wasm_bindgen_func_elem_1437(arg0, arg1, arg2) { } } -function __wasm_bindgen_func_elem_229(arg0, arg1, arg2) { - wasm.__wasm_bindgen_func_elem_229(arg0, arg1, arg2); +function __wasm_bindgen_func_elem_234(arg0, arg1, arg2) { + wasm.__wasm_bindgen_func_elem_234(arg0, arg1, arg2); } function addHeapObject(obj) { diff --git a/crates/apps/gioser-web/pkg/gioser_web_bg.wasm b/crates/apps/gioser-web/pkg/gioser_web_bg.wasm index c8df104f9ce722d2e6111b6971160ef4a6e6efec..45c7ee684e3394eae475c965a8613465dd8d31a0 100644 GIT binary patch delta 133271 zcmdnCPhs){g$>IYSr$7^Vw^0Q3_ zc5Y4%HXc1qUJed64ozmZ$u>$cj7*bfC@C`Q>vK-tqa>@O&&0&e#=*|P&Mv{h!NktQ z&d$Nd#wN_c#=!)#ON*0z@=qm2Mz+aP%1$h7O!91#LPAHxma3$P_LvE-t3cW-3gK8dI63GO;oUf$ap#7M7zdTUk0;4>M0=>1O%Q ze3|hu%QlwF%vV{Dvm9k^X5Gttte)i>Q!DEV#*-|oSUcHvv0P&9V*StZhVdoa5vFO3 zv)E^{?`1#4zKi`J`)>CA><8F?u^eYwz}CmOimjjV2-_rW)>ka^nUAxbWj)6BlI2J}>tWVD*5_<1nSV1qW1GwNkLfP+ zY~~ki>zNm^{bXCr*2DOUt(&cl^(fO*mUhMoj8oYzv)o|5#C)Hnk8KiLKigfF8!Qvp zZnE5BnaFmV1;n(&NH24JH>XI?F?H#(|6W~ zEZbR^v$il#WDI=A_JQpq+Y|N%=C5p@*tWAhVwuQ1f&B~HO4iS8TiBPgonqa=+{yBc z{W9Anww-KmSf(&fV&BGoo9!IiH@1yTZ& z1qKBs4Wu3W0O}I6Q zxMuQyd#%Y+jO5rB>;NgAyu-+sanocrV~|uqzSiUr<3;Q+`~Mmnu|I%XW@a*jQD;We zK?Z@z>vVgn5WL`@-wg!-%kDCoG#o6F4^0!Z5{4;rjy%yu9 z$+zu6ZvJmSoAK!8*$&c-jNOyBJFaB^u@(||=}t4?+Ws1gPnLC-U_Stfip@68*BBX3 zPZoBqU_3p!$5oN>=j3&+(-{9uc6HO>Te9y6gX3QY$0z%aFbM3JTdYl#ivKMSOIDFU@*x?Z=>uFhknn{5zONm=x z8j}LI0;ex812;E_p}^_b0^|6OhiEltfFHjRD}W?IH?{01v%6u*yEQ^flGnYamG5BK9cw` z4BQIn8gO}uO@ZC<0Vuja2~2?yOCLiOL z&ty$+CB{vYeY`ap*Gw++p2~fiNr_8=9hBpKO&0U zzmwzrr5LwOuJSjwYB>xx0UZB~(0stcz>SnYI2E`BPBZc{f&-jATZvm>4znYp8}Iak zDoj$F83Xhf8UIW+2vlR-G&wx*Gvk`c-a$p2r_OrNY9T*|hf?I44|$H^;#l^8!yJ{_#g_lHRV6i9ra3@fmG@}J;`EI*h9 zc29m7GLP}gA3w37vvRNqXAS2_e$ydVT8DC8{i3njkvgZhc zz^%!B5rK?HCqIa|#^24v%c8*KD3GO~tiUetZ1T~_8}NL$Bud@x2}lDt9VsdD^RRL& zuq((b$U9zv3$rU|Drh1lSPiiJ7l{01&ge3>7EmU*HMuo9k@5TF=g~%tuO>^y=!;JQ z3xgtoO97O_j)3@0%##yh68XQgfeKx91!YG@1vP;OlP|>RF@Buw8PhJy0h4J8I$AlQh?~~^x$T42qyf@)ABjfkUok{YH-zTq3nhq~^+>`a$ zH-Hjn6Z7QSlUgZUtrqJ_SC!qm&Z(^3>5eL;#A_9Myc*J0J z)B?B_(Ar5POJFXeA{&ngsF31PkXGPwYygEFIQ=s!uq$vWusbdRIsDe-6=^Drn?;2jwh_!L+ix4`%ctO|^dOF%qmMrU;V(Fjh& zY?)DvYbPgW#rRByvY(-I>yk1&ZWR7Foj8xjfaO@ zL0ExLfn9;m@y)9P3<6+>vng_e{LT%kpEiHT$hc;5LB8DNhU`30PUHmT#A%biXV)+uom`T0l>G>(TxepR?2wzu z*fM!l?!4F~5D{<$BGu;%+zKoT?2cPNvS810f}`^ahz|-H1yGrXtx|=yBR~#pVxGJ- z&w_aqv($7)W@h2ZpYv+K&P(8!0FwU5!Z3M)aT+`Yx)vC*F91n2F;A{5uob~tQJ*ic zW`yeyEV5v~0IHIkm?sAmfhxV)q7=prn;#WDVq{u*Ve+vO4aV=2-z_p;qny+YX%Ml zM#mM5SqhAf6PU6D9xyAgD==y>tzZO^YZwKdPiCx8Wc)B$xk6LsD#Ty`ki&0)*vufk zOj!yH0vjf0RGa`?VP50htCx-x#B{IJpr ztVMLPVU;3W+XAq*CCJ)DCks?@Gk%!dUFFXDosEZ$8_6icO6AEC)s|{7TPJ|EPl0P! zV07#Nd#{5zOW?ue^6CJ_?~_kd8!~>{{HwZ(QSivi0}PIfmK zv2lv|1((6eR)NuR132J8 z(ez-lQ?onc_sLz&`p~cd89yJ%_(kU?e`wZb{4iOjr2?8MSG5SIy*`TwuFoJg)Qi7C zY^WETL0*A+u^Yq&dr_ZZ@;L`<1`SZ53w8%MAwy&J0obumV5xnw<2UUJEup~ZcmeD{komCecmeFdD{u!kc7jTi^X;OOYdVDa zj+_O@i!i7}IevEX+zuI*?`%ABlN;NeCjajMc>|@zb+Be&QDAgDfMMMM zuysdZX=pO4ujj!H(O_73cJkjY8OHCErMh#WDQa%FFkjPoaKJEwGIiVe$@{uN$qf>v zd>VW1F@VY%Mg?Va<_nD7V9$}&O^N7UQ3u3cP zb|{mW{GkWrRZyM*DVhqB0H+8|hS?xC+vNT-iOGJwFh%*j!hGxD?$l@4e17tTUUjH7 zplq=fE~&w=Dj;2x`}#p%o7Hcq za37=us{A>K4OXtn@CL-@H z6F}YuN#2_v%-4AV7B9LC6E95u50|u=D9kqru2Y|3+J(un6Ja_*ErXR4?Vte<3fsj< zZdrbQvfLz)Qc%2tBv&Fyu021wW)i3v+%QRz?-yJ`m*L;}$@js!Kob9vB$_WwHk;f7 zE*nHAXH5~dI|QkIgh46w6s-FB0Iq&kfNCmeK~(^%N=gKtgL;lHz_Q>{VzTBGP+1Ae zAfsX+&c6Vb1v{Ua$pIu0 zGTCqns4xW?iqjh>khDP>Ssoz0J{aC${66{PG%3dKlX<3t8h^Ia75UCy2DdK2#liW@ zlXIqnA`~QX0ZHQ0<;jPqheOMBgBcQPmoFb+aFh~Q!onlXt-#>;7Q~eSaiu`q&MOBP z9Hj-8OwOADs@FkjuwjC*$ToQERF`4bWd|z;79L4(I(`RF$NV#$ptgWCY(&zq6{0}` zLxaHNt22#|Qs^?cCVhrgmnYlJ0(l6OLP3S!8n~n`!-mU~=gf*@{4n|VEJdR=mtgrr zlVJ;p4b7H&Kx}9wdIZFVR-&gaP4=4&GP!KFV!|bm1T;_I01=4K4#O+K?gjq$_e&kOPxA52bKXvNsJdG5kc zM(+I=4=^}_EZ|`Vr9~btScSkX0O^RCEEbm8e-W0PG#HM7yvEKW!tHqG;sFMM$&-^8 zgTlCdv4;5_h%zQn3+M@m&7lBhzX7oYKx_?$&misM3hWBv3Iee7@N6-tsl&0v&g?rI z4SnxD02RGS3 zWzo&a2bNefewh4cNwC6qaF?A?LCKtX1rw;@#gygvaTyk+-kjVDf(lIF9?Sow=8PXE zn=b?9-l}D0kggAMvtjbVWfqLzC;wVz$oPG-&T>`8?~{X;8!>*L+zMu|UJe?vIla7q z@xx@B6&l71AvF@X=dl#jp8++7G(a5>NZ|-6}Y&?wM&J1#a%Qt!H zI#5M<6&MxR&6s-FCofuWz|_G$`O12Ag&pi!3S0t@SrowS z-vjJsObbBj7&V!8u$wc_V4p0#!P~rp-JKUyo_4Tj39M%Ug?|sbB0IMNm!nOVB9{WA zCi4PzMKusTgI!Twfn9+mONm>-X7a_2qLVjm5M!FaKKay!Si*L>Zw%HU#jeT6HiG;$ z`QJvd`W|*gK9I{g*cJIf*^4zxfx%HHOG&`-&y6Dtj#7@(ZXRK9WEPml3Q~22RZ$Sq z61c$X$XE#Sor0hl(+p4$GCIy+&k|?`g`NTP#{+Qft3ldX9XEg|7P!6x2z^Ibl~^2G zI6wn`ECS&1i5+mwTR^&m9gl-3UbyBR2+e!YHQOmLI^JQ;61d8)!~zN-Q12RS+zj?C z$15On*d1?!C{}@sP(N%y7`J8efz3+RX!=*c^*;boc~ zMow5*!0cau(7yzvUjxnl8F2l7K>FDnn{FLpaAXm2#%*%V!I2VC(okSbos%^(V7I@cBq#SL)9+d-<>9QT4Kd4Y?Q)3+GaJN{tF zQh=x6J0K}mXbS$rq9_DOF+W&96D$l0j0!?#ObI(~cN_l~7VebCBM;II#p*Fr@Q51&Q_yTUDFepWU1i^Wx5t?U&&6u8m z-2t}t32T<)0gyqgjz>WhBH2A)fv5E+EJ~CAZxyYFW>yr7@31I}fb7s8BcJCIx+|}v2ZJ}DsW^eiaIhl zGH5b)obgmrb7HJ92eA|wK|&X9xPS^u2ngaP_Z(HeRA~<4W=3Flb7x&XZ$-^cIOM}CG3uj zS!PU2K;|=QfJ%EVN5;ZzP`N)@VV6ez26ja)h?R=kATyS*D}sAvbJ!K7K>Qi(iqcFD zpuQt&Fi|CZcCd(o5-KQwz$4Y{SxPdFi~_eO-`OQuzkwx7fklH!21FCP?@R0G>2V@LqTnMp(2-pnv-P5|!9x zX0T75xZ7azf>)fAckHm3{A;%+IBYd0`|QzY6rWtPrx$N1tL#;-7XtI#gG4PYT-1rYlKSg8q^{RYf71+!m(*=ArP zI@q&h*0v~`E2t@GwkTSF#U6m=EfqlZ@8s5f_KbfgAKj-O_k&e|Q9;~{=?jSFG-LVz zqB+c%-mpT#4n%@7nd2MQEP?gtIb#7*+$uRT3fy7jR$y_o$O0u7P!v!0+7HekCHu=5 z|4x3rUltmbh6iRiePK0c;s7;?HJRS9nlph)SVj#d%nZZ{%RmZ}povc@1#JZ_1u+FK zf&G)Y5B4zrojl=)-sEEkr6pgmDKIK;*jvwwG0ksx)uxAN?T0ja`2uqZp z><9Vap7<6vC2&EtgH7Pa+p^c>tARUN~!3{*1-CLPcI425xR{M+QYP9^uJLPAk;^VO8LBEXYz6 zbL58CDv)AcQ$fw~!+lU!N>N)u&G7|LfKsDF~u#g5=x&vGvO?EyL!`A`IU-0&m$J85Ow{Bpew*eQIW2Mg<8_51mVaS>PZW z1Gj<%Xdr-Dfm=c14;KRisBmUNjA;fa^q9?3i(aTSPS7q~e2;3?61ZfJhz7GMO$KU((R0M@&Q4c^h(2+<20RM>zh zJGP*g9SR!I(pF7D6*RB`uEs$n?%gKv=p;CR>cRC9w8&inw`~W=8nEYk*daAJsK|wO zE>|EdUBj%z4)p*#)B~W12aO@g@IFz)RJ3ylKpjL_* zNcaRO8!tePg}oq0ut6*TCCrN8bg=*&37}yuZdmxTX9={kyYhmXkKATV7eL0VBNgGe zD*qWE-|9PFV9Rnm46+Fv63AsZ)Vnhf-krldx#5av3TWvk%zIiy*farT6WF4o_$-=$ zuxJX{qIx8YK(ig7;V-r<$KxPF7#&Z5C?qSpinvo(#qp_3q&Etr+zRYs(dE&>gxko^By*+5s2{#43#gKkn-O> zh!ypaF}*iTir@y>3nozS9TdIL{xhg;C(z37$_r|!vYRno0m+#Y5g`x2&bq>u<@g9> z6L^Sp54#e$QGnF!tABv-+Y=@w4rof}KuYO63S6-AL_wDbn{U8vevHrN8(@nk+g;_T zCuFM*5w>1{+X@+D1eK#${CfdxD+5UO3e3Cp3<|jXt4)N>C*U?iM&v+dW3l-J!satD zn;{n0GdU=LD-)!Uc02$#^#>>vnH+zCC`NdSK7cUp2u4cV0oVK+qzgmy4us}COiK0W zB{Ez$mYlQ!p>+#}y`Z&ZjEJj!iUoJpg{-ZvS2<)3#<#+!lVe!qz&Mr zfJ1>%fd{D;Xk&Nf<%Edc02Kwq)B-=iD~4{sivsXW)gI6Y5u*kZs4STL{)TA1I5g{v zBV~OKq^!>ft2 zx*-|F@hC{M7(8#@Kxn>$p&7Dj4dm|IAYGh}Pe2q?JzVz%gzhUCx*?0rK)RoSv~fFr z1W__@%_k6=&tPbVEFA-B?tOTK!I9f>28dz?Ypw?sTL%!jk6`G&0jlCOn3k|9se;t5 zV1ta$?_fl#)lgFM9!5oQ9PeNRRcc%cj0zlRDH+sw;xJ>n!=}JkuRu&vhOCXe15e5z zhwNcj0*|A@ladD0282JhFe4s>AEPV!94Nck`L7EYDRtG|J54z@h=z?RAZtO|B0inAE zUAH4-2{K6YCXk(cjt4*#!q*k>qNN7C0e1(SuIrh$fX82UK$A6OQQ01l9H>HrH|t8! zwL{jIK@{FV8otOuR|r{I22pqiNnr|DVLfQd6I?p63owBu20$%8$k;Y$ikn-2Nl^wg z^e4ci#A?R$f=z)%fJu=7)Wa8XWC8W=xmC2#>;GHWnJzymJ^ z>{c|Vg53sk2?yLIyb7|8FJ9+k(P|SAiF_oQE+>iOUS+TUTC2kZV8-&1bVKak=t>_O&r;F#TbJ zhszf>(3m)v0}51#Y5}?M0NjQ5K`sP!V_J}0=m2-23rbB2au329K?QLIWiuv_ zHT7_N=D_R$m4c2IpneS~AYQ?&0gchYQicWG8XG*;2q}mws6ecN+j0bE3uth|(I5-d zC<0mY6=V%3XnO>bZw%npn4pF?XjlVnECReF2&p~x4`iSrygjA?H%bS^#m=BcIJBYw zXG2Cu1(4TYfJeeWcEBc{RZyJ3rgEoSIG$Jxx zv6o4>o)Iz1$*2J;iJ(I`kWsz`&;d|Y*vJlOv=1~0!3-YS`_9I#Agjo#z^TXu8pLD( z)v8#AKfyz!2OfimKhf0GJHp0M!DFNwkQ9N3AW+9q!3HhBuLf++1SB=!{wx-A8bE65 zp@X(q6oC!;@Ce~*aBCQgK@ae&0h@CHNe#Fy0yPJe_&`Yp?6U(n6oJOM*s~nL25o?; zab$565!lMk!0iYct%NcJAR-)&77zxK6bGt^f-GnZT6Xf*$2#>hkcPBD>r=oMT>u3S zG<3l02B0nm&opK^f*t$-Ney^W1F9OZIUn$=X}N!-p24x<2_l$0Z9#b z)e)*1uw@JIs{xy{0j9>0LxBx68qEqS!Y*un@}!fI?Zce|3<4h)7e8ZU+i(}eoLu?* zEZYSL)8~b;>H#nlG}6y5FpHT-95isR2HDE0q`<78;mBAh&@p+*3oC;MaFw8?*$d!2 z22eq4!6VGA!0aey&B&m@4_>#pelp+7=i=KzW7m6_vJ_ZATOc)ao!6U6laJm!0Z zQBiHO!AFtF8{U{RKA8OCjRxa~$%1d=#lEwFW+LEkp;#t)Mxev_Y^@!6U2!{jxeBecFVODQNgGG-|%@Q8w( zs^oa$7RYI!s0Kxbnu3Dk4UovK$$DQvyG&BQxG|oYyyiW`N7u!-WOn_L5kP} zzE8IOroi}pa@;r2TJnkC!ax!C4IFXbqd-=CZ(#f|`R(^SP-MjZaFX}|(hS}_3Ug@( z*v`q@e}HymzWwex+2^Mq+X{$a@=pWC@0+Lm6k=q9cyaQYUlQyMkZ75F`d299#mS1l z-IV@-qXy)EIRz%iJ8+(g0+Zt#FmH0_@973TED9=$;9bKi3e1i@4`G1@;?05cloXg8 z*MNDG1O7-dexIE62js=>Ke|lsn5I9pW^|hT=T9Ho9*B|&e{*1NWBS)1at164atSEO z+yV0@Py3g}czrVCe^8(&{a0gq0}{S9x$nO}$1Y|CUIht(-pNn@EA#CF?Op(7@jXmg z0_{`97(EppfM%W;HJBi4b_ISg@$&F+gOuE1%u)W|lSiJ8%i@yT>cX2w;Zb-IiiOfrg!3XGr)^o*bcBJg1PPiDr+j2EZ( zvM^2n*})33L&5P3+zu55dB;0QJSN9CVBU03Rz_{MKM-~mE2E}p56FFrOgsu8BbXd} zo`9XQgOyQ{@%#2$tc)p);3bo4j?DhNf}qn6R1_2(=YSmy3U?514GM1$3hxY@$E2X( zcn8h{>3aj`fzr_*B%Xp}57>zy8{|Ad79zL`@{ViZJT+c$7ikZp5|b;0xq}g0YJ#`P zA{V3#0_&%ljre|<6Ix;SrzKWC4P<#(Kp@Z~5O0N$fB~8rJKXEeVibApvND>@j3d#y< z0zK19xES?#&af!(Du6`=dZ(}BV%%u;osEZ+TY*VI&hY}=9iZg=0EPDf&I7rz0c`v9 zncR#T5(^%Hwje;vbesU(UNi5bYUJw8^)v419%uU7%xt*xhA+y-3yv*DRati98HUqbUf`XD` z2iU6VGX)ts%Zsg#~EN1)7wQD*R##I z395Id+lVrzvaNuymy0s$GJcqTRg}?<_Y4c@%oj$-BaB%Bz0)0jP)4!H1PVc>Rr0IGDrM+bouAy_vk9zo}bFetD(Hh@HKZ9gQ=sKsdV zg4K~xk&($kfk}f2G#XUM%iy?k?EwZyPJxM_Qz`gBr#LWaFil}JV+sK!7zcql(-kBc zMOc5c2{bcLx0GbuZ*q^BTY(+4c%4guNrBCb=>d}hlj8%XEP?-QuDqa;LN+rd(3%ED zfddOflJeMq!>+jPPHCjfU3PYJx7XBUhOn!pB@|7as@_^Zcz6aG3HSofANa!(S zLBhpx14sv#<1P@zB5-l~9XUp0#%t3BmiUUbY&pQ-c!g2mFB|k2Ek*?vfo;>>6d08lw@uGf zU{o=B%kIbm869E-R~?}BIiP(YZy2(aSU{=7!tu@40}PI03XG07wjN**crtyz0;4m} zGSD_7CPzpJ@hLLOioRe4g^&R#@i4*@-gE~=Mq|eB(@PW?&7tXRgCgTma5`fHDdksS z0$B+ODQG(52aTs;NoOmS7!{muLDCu6VkVG{5114gLG%+QC9n%#FoBXB3n17!OSU2@>2g z-BgXyneo8%N;O79#%0r2t1(Kk9RMZZL(@;IF~+Du*er^ypd*P6FlPzeVg@b1;0M(T zJc^9W4hoC{UDJKk8Fd)HPp?#GbYfgQeUCb0730$B<{FF_*f%pO@w@V}PCu{1C^=nS zlhIUR`+)-tj;sPRSQYsl85MH0d1($gnsGO|rStH~Iwxd+WGF0fe&j9`;^p_yEPQDE72Pc24eM#q&9^)p!& z`9bFaLA8Up3QUe$z`o;Q1nt-pbc8w+BnPhT!9~lz>1(wa^%S7Sz`ei$wieY3BGdVG z7{wU3Ojpxk%wSwRyLJbz0JUr~&j*y%VDlrf&Py*jN{j3h-W5(~(H|jDP%YJ7A zg*UGwXxUJO8!v-`ASmdeuAR=P$EeKMHChFm_E(*Jm_h z2Mz2n3f!8$K%a3x)JQ&%n6M%b4->b7ut59tg$9gDEKivfg{ODwF-lK=WWacav1|Hz zLq;9A?nj1tpabq01-?(`Fk^IL?3(Uv#^}u0 zHND@A(VX%7^y6lXs*Ja%zcpi2WSlac-<)wf#Ph~Nkk|mvw8Ko`v0&_G{62k#1*0P4 z^Xa=R7_RrpH<` z>M?$w-ebuq3FUD?T*9Eiq%!?rCyVfO@opAt#_!X0tr#^yM^Z3N=k8{4XZ$|>PbZ5s zzJTg0P$liS0L+@sX3glzeqj^%ys7O$){N^JnO-zbXSQW*gB~?Dz2BB` z6^w0f#~1-)&$VM*&(^T{2!p`n=|T34r(ohr4vg81N2m8WFlsV>o4&(=QCsc{lRGbT zzea`7!ec!w9bGFv{K(UH*}rrXVtalYt#Mn!QRMQ+g6K1T+}3m`k1n5X}8WK@&` zNht{EFfcgoulM4WS6~OXQ#l+DfE3-DZt28m%=Q4nE^=bbW85?Sp%Y^uh~-dVR^V_v0FneZ_~7nigvc@}a5!E7%TC|m$|znB(uwc{C)^Vc zz-mAP2jG=9plR4FGo}-a-~lED&`E(4Kwbk6xbT7bA0RQuz^xz#=0AY*K>-7D)dG+X zu&Wp~m`*S%it=zzcXMNu(VhUZ3~UrgDaeT%;7SD)_!UG!Y)I$#eB@iKj<%K_cFa{*0TZr+71_ z!;HD;4K{|?hf#rX({w!_#xj@;)PiR|U{5OgGKxxmKnop71t|pyaOn8^GUmWE9`t2& zW!yBK-H*|mantl*KX9&X@?%^NQ(*3oP<+vwQFQt~e?~Q~P0Ug}%%EcmS*F(qf?dNO zz^KKzX}VPaV+iA>>HPtWdW@T7)nw}NNXbK9MKt@%@P1BDBg0=k)WNebz#4M%2qQIP`$PBVj6r5@rph*F28snzv z`-2!~FmBo&5zOet2y^#}5Joxn1CZo3{cH%MCgY~<-$NMt8SCdUNhz>6E&vO^IK_xC2*QRK zbc#_5Zjb_-IIGQ<5ISkYCWdBJ9M{~y(xWKF{#~B=T9go1ZFeq?3YB<6j;-~@R z)q^^3pn!o1fHI>ag8~-{AFdp#8lNnx+Q(OqGdM~?YzBLeK|vhZ=z2#iD&&w=U{io% z1U3bXC?+r{pqhx}#Cis9bl-yy0lfkWIHo3q=^av85PGrhR5oxhN=lbh+vh3&Iy7%P~W{#=+Y z(!kij^yB>WX$_2KOl!_fKi9w*#ME$px>6%!3Db)6(`Pg?9%5Q>ZhK4{Su?|hc zQ{V#7G~5CT4zLPn8vX)TffkyMCqOAl8YLw`W4RuZyBrx5cu}GqHRjOGLzm@2(TkpB z@TJmvP<&!bg$gJ}Vle{MP7DPoPE?Rp5CtVDPym4}gmhOxG1;lS+o?bSCF-#ns^`Vl`U;~BP^v5$8P1%n?Rm#s~bYZ%1etPOmMrWoo=clil z$!N}V;;=UH-~>PhVa(1qNOwM+Ob13+FwR7(hK?h73oh62~oP zrW?;VjnK=P(+?UODdx8ii#58FuHq zry?`RPaw{j^PWoVj-dV{b6JTJCun#EbjmDekr~sO^PUP!junND5Z5t5_CbI|l$ao5 zitGwZj%UtJKQo8XSoO|%Pe%sOnyoA6JwbyFxvBf zW8wjw9Ru2%ssRd2>4l7v+K_51#B#<8PkEYpcv#dW7+{`u$eJ!0WrX#YsPe8I?qzZ zHT8}y=T3so*f{6u$l&=$4*MA02E`w3Y51DFj_^90O(0~Y@QW<%7x0kgk=#T!7; z;0RIk1uXstEZzYYhp72;t{xQZE$2bOJ^?HNQPcuv_khJ`fY}f=Jz(|}u=oNn8=__k zm^}w9z5>jKsF?$1F9C~h0J9-#mVnu7&Yw(XFk{*Q=0Fs!0kgM&H5>r5*MQku!0bI> z_6aZ>qGk_>t-$8UpXFFlsKnq{k)_0B#`FLr>IhMN(`PMXbYXe`Hbfj` z!p~(86C{^2syJ^s>!}Dj?^qzqkwKGb&sk5hkW zz>I7s6WmT_Bs-ZE!FL#dg_M|~c7kRB&YYbdy^_&b{02Dq88krg0IG$ulsG_fGTm=A zql_*O8#l<0pmLfCRLm$aC@^O$aX9jOgU;LmtxN-#wIIfo^V8q0WKydQi#40F8JiP{e~R0Tnq63QXA`J8qo!RN%}~V#)$V2pcH=Jry_<*c=&) zK+C}x6qvFcHO!b;92p!N8bHmoH|IThm_Y>^1IW3coWY>M1Tus%wk#P-h3j8mDJPMn&qu$@tq>B6b$=Gz%fnNFPAp0}M*mxX`A zPS}_O_$cq`t9FAsd^dM9YB8>v&a#KGigDBQ`aO(sjMJCj+r!An_-Fe4y^P9?Yo;^r zV~k+DGCgJ=<3z@z)8Fl5oLS$*1RnY103RQ(AgaLRXpkjv1w4kzp~wsxe&XR}1RsVb%)F3M`HvK!=QfWHDd>9nCGK zAm%s$bbL3c#iYQj0OB{m`63D|3M`J$gV3j&9boilJi5K@0AnB{FG>|8O<1vPPaVFD965JKV+mT?l7Y%Bij$~{S?z@9%1x|cmk1O;CB21x=jHz z#-+fbz~$Hi5(l-u6oeGG9H+o}tO_g&5{_Fye6Ryq6}TL4fXxFrT0P!JaQGyUH&Ms>#S>1xLry+s~?tN=R&6tK`yr`F?)rqZA;J4k&C6KEV- zSOIk6_y>sU=~s_4&VilGKfU4vc<^E03B-Vw^hriZjTR=zL@W!|v*bZB*8no^@)7PD2Ok@1IUGzMoE+gaD z?amh%Wk7VoMMfzQU44mB2Sl&93=uzig^`_+@!<5cR~akWZd?UT_D=V?#+c9c;yRdp z@EW59#3FtLKG1m5^n2GCWu_}$XDnmuqyC4&H&4TJPoqB11vwC=>elB zWAAjI2aM?sH^4%mgbY%!0?uPn;Bnjm=Yix-zj&I8H)fbgc@ddt|%_-1?DJH{;L@SAK3%#I($1U9fMFgrdH7g!IX zo7fzi*#x@S6_}m5t}nK6?mtv&u*q_+d#r7x}Dd#C)zphkYlxTj_E&SCje79 z0j6^LgHMc-^)TUCFk!gcoM+99v$-*W+Q8y>nXH zGdt%ufffjdeFdrH1Np2T*?{H=#~_IhVSr{#za7M9#>T}6hxLP0f_%39@>fPJM&-ZI zXqW{Phnt|lpvClpQJ|S^y25uxX~yT%ZN4)~G47fk{+;o8{Zf!}4p78!fa(rrQ0qsa z1)Qu|9M{4n;jzXJm)r`H1ceMd(JAnP;!^>%pyLE+F$pMXfreojG?>mX!c!VFS1K?# zeqhL|hvm8ppm}yjc-}*DJm~s`&7c|hHH@2~If+1GBb*x*m=z$oK)?|x8!!m;vQ78- z$=Ju(GyV2Y#v6=1)3^L$T*=roJ?=MSIOFo^+kP`9GxkiE`oox2|K$w0xxfI*SInAB zGUm({j!!loVQ|z|V0N^~a=Zd!KLIHMua4$XU~yalx|;=5=s7Yd@Hlcgl4b;WAPlZa z6=t!GIkN}C;u8!gHc!|13z{LBdW%VV`lP>%F^oOa-~VMaXM8nX{U2kB*LOA^c5Ve8 z1zrWvs>T~2=Yc9EM+OCMOy}XXXlf6WFXOAJx0vjwC;ev>VcP*VYkJLpMqALN-|qj6 zA&fm!1(*W0N$@n>&|tO`5c7-~nLrahO^i&jHZQENgs51 z1|#?M3;!AArspy-sWA3TpTxxEZao8LFsdF{fa8nl=_1Tb>Wr_Z+b}cbLa!8J1wUMAKn#>83ARHw|~xPdWSiCqOWAjV|IWC1!L z%Z$ln@!oN>j6WS z7GUI=&i$BC$XX*yfy415Xk`_bz$`Y9X3(;B&)~GKmrcaBOWsGxQk)YYLLKX;^F3kIsXwvq0E56=RtC^qD6bilj{>^_zZsK<0=ojY8B+x4 z0w2&CFLnh`@LXZY0v*9opa9{XfN(Pu*cAlLnG+!48sPoVtKf5wsFa zAxnYX@d!hf4gm1H29C5%dvydcI3MuGF76$tDaObVbflwE^KW%`9DjG&qEH%}PV z7{5;!e#)pXb_3*C&>}7YaBG(fyfSt6^oXa7x{NEPw>@QaRsgj&LBXWJ1U@T=n}-p8 zMh@uE;@Q(*K4r{f{60P68Dll$-|1JLF*?*QVg~h(6<7q`fcxB_yvr!C2z<`%4n_qA zfn!Vx>WXbd(#r z29t~uw;59c$SUysdlUG~N^oSjD6oT?7LZUBSPV{UK8hS5r5a2DN{o)2kYjB)-Fev+ zI5Zg;oIc#R`g+=$?oIC*S`|1PIkF5H7@Qt6w6+Ae^0M=AfFcEykU2nGW12u~z&HgC zfYv;Kk~uE}vjZeTK^MU>WC>hg1Vz*WMkVl0Uj}dz2TkSjF*7kRGI4{_4`?(Y1XLWd zJAxJl^00wyc)^gR2-Z4>QIQX1#0*A7aGXzJR0L<635@lMoFIu7M#p+LUeFayS3n!z z6ga`fDxV{Rz*cY%36gy{KudF8fYJdd(K`MBu|O$8flGl2To5R*JEH1m6xa${%&Nf@ z!V4NmRRrHX#~{E2nu-Po-gMhnjBz?05>RcR=HF~~B|h+`1JG`l>HA+XO4Wl7JqD#lCI?3a$l5qgkindej8+UX z3Y<<&4dBCuz?(ehFhW!?f^21UWUyk;fSdxLpuh+k;F3{b1m#K4L6Qt+Od<-5pskGp z3XGr;F3=7~@YY901wPQQ3nOU7C4+)Er{kU7$HA&O9q$}DzyR7K%BjFOJ^wYMRQ-w5 zo{miJppg>|rZcBK6+vUm3}zsv0ynq}0;NC&Zb2qcS<0@#lwk(C#)(~lU6UyRlHwKE z^%-)l8ACvK!Ra#OTQP(wu0V!|BtWpn*4T$N!9lAg8i$JMKAsl0kt}U=L`w0J{d0 zhY~j^Ksgk+p(}K_TzSDsgvC(-whwC#BZPJ0*Z~H|s|=1`j)A&ztcjpB3v(E#5Q8`i zRFFZPk_+)ym=!}ls64b{$bn{tdn}GE#}9yJqo*7Pn+3`bAfr4$Gd`ddqo8wXzfb@5 zhEW#0+MnG~AWPr{w1^V`Wp`+pih#zeJQP5qnUL%)a2%Ymc_0UXfzu}w2WWXCNCOw5 zEH(ib#qf%1T@$#}T>x5U3NBm{K!vUbQ;MPn1IS?+piJo4$YI8m0P++#i?D;@7qpBA zd}r#?>78#G6|BL*2`K?V6)ou85YR1+OrXP%S~xsG=^MOvk_o!|kqNXfoZWE)W0uNv zW)`Mf0?(QbfEE-hWH~mp9%K;MvHdLz(_SX&2`!*omS=OogmKT0J)h*VBd5{AtqPG#nan` zm}W69ovtLzRL3z1w6>E?V8-+n!c68I9UvZyz>Mk7g_$gTW`KC?pf#r);5Da$paBDR z(139RXiX(Z%<;?q0}PH#Fg46P0^ll0ff=-xlmk4Xs*t6?EO2&uwg{6c|4wGmX=@5h zpdG#-!Sy0cJ{mnBYuFG*@ZmB-S(M2U&4@G8i?InF7G>(Jhk9lvt0D(z*(%f;5EnF@ z$f&>t8V(2DaS2|#Dh%@qNC9X$D+6d|SAiW=5G%6taD$F?W(SvMJY3w6Fi->?^2ZDs zUt|{8%&5fS3aZH%6@|fv0kTg&Eyl#-y_iXXNtZ!^mld>&!I9Y!5_c?$d>~Vp;9MRM zml4k80&&4>R~6YE8KA<`mBg7q>nx+hnWUp33mI7;4k?0Ape8M-I|g362^utY{Qv*| zfA&I026qMFLQsJW^D-zRnHAU(@?cq3(9QsX@6#`cGs!b9oBlzZN!cA@54e|%tQmYP zB(hx`kVW}?pd?V9`YBTZ7IQ#_U@&;ptlw zV+3a38mtSs%gX|4z9QQ^y-pU~88uL3lAiuTmI>6kc9mlSb*^jWm{2>{T#mRq*F@N) zEf4BlPd89xvY);~o(bN)z9i2C?p_NjFoiJoOixol>0g5lM((Ymhuw69xxws^9yZ(b zdRZo^=}Q!uj5%L1gQ7}6kz=}{B9rj+&x%Y=Y>-a(bZaFh1IF*ubCj6e7<;B~RzmAF zbD@kL5O#;DGPu_qs|@cogO-OdDsTxrn0`~4$y^we&{>dr&0GQprz@*4HH*Dx0WC=Y z$$&BntiqYTM}^6T`wUW5!>r2W$#`J8uPT!YW?Ve| zks4DxP!zf7DEg2=~^00S{$(D{?lVLnDoWgf#f(rg**!nC%k~4zEFcnlyTB$J%IAH*)Ic84(tHGoXs!mwI)d|Q0%mS;Y+h{UHD?n|W$*Rc0 z10LGr2e--KI~JyI*JQHP-OQ-O!pj0O5u};P(IQI#QY;5RHkUavDsnh7Izqx=x~vw{ zS;p_v3v`)OrweE^@iBg%&S=FX%(!g2u{M(mWBc?7ZKl021=c!DeBO|)K7^0;4Avgm{>s5N=zC|A&RV^Ew^YT*z_qnOt&G18*_dKUB9frC(u59jV@CNMq80JWZ!K>MUw6j;G3Iti*cNl*o+2_aiNO_-GNyQ71kisJ-Tu$dCF#g(9n z7NS%H;0sf56Ip>ZTY*v9k-^JI{CFf(JaWV$nLdZ8JU zY}^b;EHi)?^eZqqcEI^(1su-`I4)TLpZj)XwqjsWU;y>=8MvE-nFZ?^>sUaS{(NA_ zR$@{CZ7*dsW0HYfP0r*flO?ca`n*~undwZ@EHd>>peZbYKj0dkNr4&Cf;0f_Xj8~? zJhSEigCoDd6jn%Y8B`P*IM!$Jfd>~9z0K6UU1w)qOZIEtW zfv+qe-5|XVO01BU3aER_sL1BXpjZz+5tvDX$wd)dw0J0S^0FwfDzYnZD6(;bM#mYH z7(nAMtdPcvKQ9aTWMxoi26QEb3}|XggGmQ&t^#=3i43Gc3~~$TLLbm!MNAq@9*UeG zXF#oTP-InLs0Udg<5-^s3L#EjZUt7*X-*u_ttFrfvzauQOi)fTQ($sbfrifykPig~ zrhvDpsDL_<9FS1a0F4*vV1$ZJmSZPqT#+9hDD@gl4oW<5*E=#O@;Wjq@`3u-;6MR8 z*aK94DR3(CDex%rLIVY~yiSP$IZ*f&K#N~sfx>|jC>)^S2pP~Q5IDXSI2?7dz=2Y) z!Q`O`-d*DY2^X42mWW(7u081r~w7 zkfkw98cYtLCLfamlQwgJl87a<1t@5>nLU(5Etw6#0ptiyr#e{z6Inp2EEGjRl!2ls zxPk%g#|EVwcpyPX06uMcjILO`PoE)#f_H{)LUrT4RIegNZ3FD>@XHr zP?CfMB`8UQk{)Oys$;zwlMF~efx}S)T)aYh4d8RVIW(A5lmr}kvcO@)%H+TdIzgPl zu?D12fu$a_X9Ki$OM{6)i3?^AXrDI&SdRibC@E$sv4T$Ac4SZlnF+Gju>_=F3B0Y1 z3)030SAeXJj9Cio{=A_4QD3aUo~6hRvJk9=1EfWP1!5x$h@-?+5493>n;*ytf}mk8 zn1P@`7EoYy40+Rx#8B>Ov0uyAUUxCT-1!Uwp024m^rMp`yqJQm()XN(2fFX7x-mkkq6oq`(AWnK4B; zvM6#vIEvsi%{d%ZKtZo4An=x5fekXa$mI%JoUF*8z^cdsN+F zD48m7I2wR_3Jr3IgFq<(WLAWt5GX+in==_GaDX-l>p+tSI7E?MqrnuTC;%1(@A_i` z&GvxKu4aMcC>8}aMGjCBS71nS1Se_*@WpeWVh1!mBJh{R6?AX`G>lk4X^};N!?6T< z@Vg@e$X9}($t;0I%nCxF^e>Q{V-=f?EMH#?Anmq5}8a9R)#SehdoCkTcGhK=U#ltxR(Dtf0|-Nc@2& z!W1|ZI0gPPDKI#4WGRAIhJ%70Qmkq-2SAET4@FT>J_nrx@PZ*r;4HfmCuoWZ68|^Z zL5je6@Hjj4pw0*OixffY<8Cly3EW^;6oV#}6YMVG;3H}oKnlc}927XAgOQw|!AKDW z(FKa43StW43lv2_OQb--+6@{n21hFgsF(u}9B_d{06f9M1{siG10B^SBB{Y-02*xu z_k~Q9;Ag)HFiwx}Wl>=Hz>uXf{fHS;lQ4LgK?7VufEBX{?3*5G&Sb&82dU#U$DApY z=>XH@iv}{&`7M|<8P86)v;dF3rC2cOGoGD3#ezwd?ZE-?P}_bBCKbj5)1N?OHrO&r zOxLkw;)h8)S~5v89+)0&$)v;BJiWt`NhTJek;RNj0yKaCuEY#1nI(8wxgD7up^~7H z1aOl}LIE7%Jn#qy53g{6)8uzHZYL&10R`j$fpkcoP8YReQipD?MbGcKNf$BLc=O0**LFZUwN39N=Lo@QBp(FZN8e$jKiz$~L{lfyquDVgZ8&(;OxxMvyfO8cYj7 zhl4SdII;+QpZ?H+=`iE>=}R4%G#I~6Kj+9~!T5c8z9*CTbU7y`dB*S4?VOlSL4?Gn z%R4hEGk%}$?9AlA_2N|rQN-SVE zgF}cxgUJByArl2gM`p0x^cFX!V<0;{nZVAKnqKYB#Kri1dYe0%c&!H$mkc~~ZXiPE z4k&a$8{QXtFoCx6=X-)jV3&I`Jx3d%fn~AjOT3t-i7aA8jF=dJ%3KqHebfECnUqmv zG(a*s0{f=7dNVl~qmKB%VvZFwV!#9{FF_+m{ft?Te?Uj3oCPhg_&oiGHJiX3`DUfmL^b0;r4sPI?RmeCj=(bo;)yfLJ)y9zld|&}H_+A{) z&FtXQU>OyWRD-Hfkm~7SzD$as5g$+zc4UO?Kmtz-a0<+v-sj5%I=o#W)6G-cXNEAzGfLh(TUvqJ@daFpU4h%N<1|bgrz2w_q#gyev%mo>pdci0WV&A@ zlPvgv3TA;b(~BaRqIs{gK40Yl4E{Bs-{63z}dO zfOdbMgZ#iJ@O-*c6q6;(b#{SQ)9a&{v>7iI9(=@NzRNse@rh(WRj2qc?WAq zfhUVZz!NXof0%O1IbGy>hB~zFp*Yopn$EO<{RM=xeN8&ken$2eYrsmU7iBVeFrJ#eJCjM9@znI^nM@jttEUTOG3ko$ zfDihCuIy%XyaBOsdPo-26ZRQUj(s+h3gfHkDcMX8>N_A}44|Y8YS4F}@mE0j(@$qJ z*(-ks&uwvnMpYbtKwQSatpMSlfGX6@0XI|pbC`B9-RPOloy(-G-Z0lyiPwoipba#` ze1S0wbhNhPNfrgRY)9r2P3DHVu3*XOp}9=nOl>UF7v(bbf@s4$CJ7MjoyR024c4rX zrNHgP;B=|C_sX&xFPh&lKr}YxF_lYz6o5=dmt8KH&%~$$asxM5wE`1p9iRfA69dQ% zEC@F+)+q6SRZO=nU=kMwnFp@ac%2v&pc3f?Ocf9b(26TgxWx8P1x!uMOb1>~FDqf{ zXPi2nt(2*OZ4LO?w&^{kOr4B}ri+y^&5e1-s>r3lt-vd=pG^^Tv?Pe3z^fnx!k*Gf z5(4j76;t@+lTyURGuY1s+ExM@9u6aJjIb&09%QT8R^)flGl?VE=Ufa;8c3 z``IA+B+*P^QRGozQIPcI1&yDA&RXShJo6M@`YW(Fo&mcSRE4l8NILF;%Yk@n;5;q` zNyj;G9*Y8}V-K7MvYBl^XbIK3>1q{B*^Jw#PpV*22|mOKn$nI{5(X`z1Z^GWcKidf z47_~^G$(uq!~-n{28}H_zJc>Vx9seJ^LQO4LC4uMDzFM{p3Ygxq|3Gkbkgm|={A*2 z|CHu{*&yeGu0r{Pm?|bm!R??i6;L0Z*+BtxH2?nT>#CTHI3UhuRhmAb zj7efzH50GM9k>yk3M`Iqz`W^-)l3?Uo2PqKGes~ip1!!6$$)Xq^efd&<|1prc7W_> zR$y`5aTOG_)8%WJ(skav1hHWF@1k4lQ-k~ z>D+BhIvi&~g(F)8?Uu=6r0fF}6_xE&9HWVk_Rq_Oe{a68@tam68AK2V#8 z#f)hJ==gTXjT0S=Spv&J&0NU!6%!b<1kO!g+s35L`Ig<1kY1!A9KSA;Q7PxotQvgUxTo1H$fok^Y_v``YX1RG>HE64}!Ookkt>p&-Y z3e1}R1EvIY?*T-~;^}G~Ox27(r!VSYie!8-{Z9vzoXAVi35uY*5*WdU3bH7$3v8RN z*U6;Gcwl-&CzCqkzUd7h>eTcVolKx*spmn|lIh<-)UD~VT}*0>C#SoBsIAkpyO>lJ zUoe3hhal4gj)7Ztb3j(?0N-RbhdE2&!t{+@OzNTnb3wu!S)i@s;LCeN1a`7a|JcQ3 z!E*w%2AR=u19O(Zj_Ib|Oe&01r$==&8F-#$SK>8e+5plBlDx^TD4+mQcbr{O5X!v4 zt|$a$o?urL1|2F6It#{e1#_0;&(#MQ9N7iFPQTpE6vV%XQGpNC=zwhP`aa#HhebQ zt6rJGv4IgW0?A(5NDpLWYAsF`k3lamAhk z42~L(7xsWod7Qp)Hj^4JROkUj=;LgrK*kr-o#!z1*dm()J@|Sbt0EI<85pA@8^l8r zApamMlmJ->I!=;jE|ZERvJCh(Ch!0p6A#DqRdbjWTm;Z{L(3PiHLTo@9Ewb!!kP(e zmjVlDJs;d>;9K-Sqnc~yGO3~j2lPbmebb-KWtu=?r>h6rdxEZL1b4cmrn}E)QeZqV zJ!3wuo)_N&CP(fb&|==RpaYFRPmfvv>v@?ouAF{t0aKpL0cfX-jT_WbMeTG=Pguw# zuL0>rfJZe!O$zXmHc)qnQvr150Ei1ZKThED^yLe|9jQ+XncNwdPPbabWMa9Q5wy#S zkq6u#6Lw+>cpfd2y!jx1|Z0yK}?S>V+JoU6a>2u)WHFrvItrLqreAl65k{EMck!jbJZfQkO^Wi^IA|tco0< z@lu;Cfm_qHmNLmOKArBql*vN&7U(ct&{{%J9mEFi41p)+*$|zf?Ms;)InJ~l1sz0u zVB0dL`;3h1raxHDB*wUI`uF8b>)Bqk9c2)>wSCPBrUpi~j&=}dy3s18KDHTP_V#0| zm>d{+U%x!U;Ar5u0wi{Jy6_q%bI1@4==@kmMg?ZjnRl!pKZ16dh=AtJrf05Ua&Z7{ zErDMKq5wK^8#LbZ18gT~6BS5=MS^q=_wbrfctDdQ{&6(F*Rlfo6(2Al8FBpdkJaNKcLdbWk3b0$-LAmnSbH zcw-Hh0*3-u7HBtXw!mp71+FY5K7naW3VaG|zM$DGK5*r@1a3SRm_G%H&*QkFNd~%p z9O;Y$1_f>f;VdOaftKkjb~2q6|8fB4dC>eer{fPuuXcLRE+#d$Cm_jN(|7D*QefOL z{pK#FB*w?nZFV!6GOn3kw3|tZ=OAbnn9=bE1L&mY1-qFXz!Q4lvXRm84MUc|$>|?< zGf6N$pU%05$&~Trbo)I_;*8Iyhwovs(gXMP9ibJ_mX)BL76l573Y_N56$*@wEsR-? zD8}#K!=xm6k{xv5MGL5fEC5<|-olurz^cF^@O=6&gptrHU?0gwg4&WGi=jr&-3xam z3%I0rJVlg|VhC44JOVY(b{~_42IMvdkO#ow!w%Z72KEnVd=2bv1qKCnfoId_?qjkb zHH<_KFd1ut=2SuVcz~`e14RM561y1_*oqUNMhMu0pyKEG^!WWurcx&n@}T)_h!a5a z&!(^24|f95VG44B25u)3a{r9YAypC?8}p#^L~0 zXc&M_p@s$lyTJ45bq661fJuWlGk{VRGdL2?9Aq++0S`tye%Jb z=`*rz0hu*rd-X9UUq+E5AP#tp0d#K96)+ zXeN9Hn*yr_lZYY{h!OxV8C76)1UKVWPQQPWNs4jh^j{~L-m~syTCT)DeZf5@k?l;U znWPyRzi*d2!&J=3xOe-cvrO9=8CP!iI?p7-$hcy9`UNIGsc+1nbJ;kQctID1vw=+H z1qtv7yqkXh0@G^7Gt;Xtf@imOU1SPnd^KI*5>pi8tLfR7m>k)b9065A(>GmWy2^e8 z#BO4q-glWvjI9O4xix*&WhQsFEfDti%i!h2@>iI`7+*~r5gXJ3t#uSsi<(bKPLF zL+}D_F!?d=*gpRT6C-GO`@)+{N+P{XpzXK{td26^9ZnVstd4!t*WG540-3}y{pU?4 z9s#g%pmST;L3Oskt?i<>n34#ZpeF~`#{%gPL9{a~uz>qK3NXhp?O>gL{t?p(#+BPE z9y3)iGVb2~@d?u-M#h!X?H@3iNFm2L=r|2ToKNq40FGGO=S*)HcW>8v0huQ9eaR#_ z{o*60WiS)BN8e+5Orm+)r#xg*26gp(UovGfPMp5|C6k8!oxd&$thx*gj*KPxjCUGc ziw-(+lz>E-92raWz#ac^)LFa$m|s zR+dWvbPVkekoqQOa6^T~@dk(o&d;EIH>PUFp6NHgF?n*Y zWC9)31Uk2A<#gTeOsR}L(Z!oLNRc13kcb&v#q%x) zEpb?J@i;@4CNp%>Spu)NTk$fh zGqQaEZ6N))J)Mu4ot^!}OK`5c48~Z3jTrY%my==!oiAf4#k`#H@AijM z%*#N9e}@dSCg`dpZbc?X(0=FH?BL-C1vWpU4W84kRgeqDyyk{8rt z1$APw>U+ZT|oThnK&GaIrUf#|uU&b*ar$>Hst8qCJvqm}n*GHWp! zfluWH71?O#N;4?1p&T8o0poq#E~U*J&scxv@JY}v(GQGLpgD6!M+NYLC+Kfe|Y41th_RB*6rgm~-SLgQGB50=#h=bgDW7KR39b5<@!X8p-L~ z`E;567$tfZAAxL&0j=HV@RU{rUmV%7c=|s*=8Wlg^q9HuDk;J%n=$=^J^=$VrdJsd zP?Boq$Xuet=!nayE{Y5aEQ*Yvh4rBA9;}W(Afo`=%?+8u8S6hBJHp_|tH1y{Aa~BI z1EA}F7_%HN96JJ9PtB9%_~6(P27y&fiVQqDp!$iy5wwYbM}g7tFGwS&0)rzHR5^nq zGnB>T$dl#xcOfeoH)WD0Ct!Hs-i7Oik83?$)hUT0a657bHkpu zqNpCG>MKYU)NF(UBq6F`il&@IL|4m6Sg1&V9Iyx^#R7>8afmLMvzLLT99MxTs29OW z>;$tSLp_feNcV1#94AD#D5~xwU@3_6!P>wvAp+8M79<6=Qy3(05hMULMhGNu3nTzl zAqX)S=9h+3M;IL0>mm8z!AV$t`vCG5I7JAcs&5CW#|TD#kS)`|QV`dJrg0sYf&`%M z;Ds0i3ycFGDbO)IJXww#P93R-rYs(aDh_D!y8}`MO0KYs3Cj159q@#E<`gV*b3-)3 zeDwgN5p*;Fq2?#?3Ko@R-%Q=Ygmq1byka$J76too- zNzosWB53A$a~hoBj1(C_tu02!#xqAi!`k421~lgA*aZ@R77(BjFvm$C0ZxG{+rOGK zn=pbV)0jc$zbP<-t`}q0U;@nt*;+DBL6Ok_NrP5?KDA`tjv`|LlCcrkH+_Q@vjp30 z76k@@&(qH#vENuROVmTeSrl1$xIxz_H!xW<7AQdMWmI4iKuB|eq#1C@a)Q>CvVu!{ z5d~(@MnKRuLV?Xp3e1|!4o=L0yr2Uo!9#WmOadFhjsaOZz1f;sj&bSqMb^xwFgM<{ zW>(RD4;pCyz>o#<1P6!!&3S>m0MZ3IsS&)57_W~F+BnJgfevYIi0`~m8{ zgJudLK4R8j5&)S6J}rP16fex6AzhF{1<)kgBG7n0)KUeILdexwpq1@#g$C#f4L}M_ zm<0AsKX1cq$Z;Cf_GA;7KApps*?{9Bh$k#Cak_&ovno?3`}A~MW;KaBpu;E+GCI!v zc$C5Mg{Rv}abDX2)zPd1c};2FFc|j%|~VF*yF2 z#^`ut!Z8L%Ap&~ErZ2Q(wujq0XVq~A$E|#hEg+hifZiCkD?5%e2t1!Y*`8Sy<~Z;s zPZr3r7a+%pPJdv}T+R4=dW-|JI!qCGI|g{ynZWny(;S#Dh}{A&@({Sqt_WHJcZyw+ zQ-M+7^z<4>=6Av?m_gG<7FhxihCr6UitV*d%rPw77uLBz?(I9XZu%29=2E5&Q>I6| zGaJ?afJuB==K`AKWB{Gs1>Wv%#>Buqi-Sp|p0N(p$OmBsM$no8M$m>)CPgL?Peuvc zJ~L5b0UhqmsKI2Q$g04i$ff`mwozgStxe#_QeskI@#kd(>9A1bRA2>N-@~QAtiWEM zrN|9YE1<-atq8u`SVD;nB+sY7uE3V9$Pb#_=TH;_=>_fGt9MfrR1i=UQeakOV|Gwr zR$z1I1#ePha!?RcU{zoO9pTln9K7`$avGG30=FWYf*^QP7ZZpL+HJt2Af&*fAXKlw z<1MWqD6J%{z^)(+TF0v>q9CjYH4wa$Nkjp10F;7|f}pgbr~;276IfhSfeEr?iW|J) zP(c86G#6;hl);Qi1(cV$L2GpxK)ZNB13}g8B*dSxRi6pkW3r z^~=&_01XqffoM0-tPl94Dj5ZSMJ5G4kQZEe!F!6B6+m~g`|~n^4)n@WWCQC3?*d}X zQe;vP1sTJp%fJ9OgI9qGq(qRH#gRdg36x<$BiVaE>()QAFw}$ASqOs;3(-VKv8F+$O57a6h&bPi3N0VM?L6zQziu#P)IVt_IrX3{LTX1kmlgQ%Lv;&3YKL6 zYZg^t%2E>5VPH^Vajf?N-@^2tu@JJMPgIwI(b2w85wz?}zEF`9G#l&~4?6XY(~+%2 zfw>5xj2Xlc)n&+Ia z>{U=lnnM8`yeyyyVgLm+2k6KNup01Qa(-^meP*DcT*oELK{xG!HnA~)LQ?@;kg!2g zC1?jBBs5t-$(B)pMNt%FBq(2iLUez<53fCg0+XUBs6=LRWXw`x0&h`dP!L5*u8az7 z3Zftkx`smrJgV}n!f**4z3*&<6 zWkJj)+>=46o+nF*P2kk@twGER9J|;Qg%sEXPEWrZ#H_}+YdT9Xa{}X)>8ZiY9Xz{0 z6N^ls3Q6GR^q;}ZGK{mPi-j;NiGkLvfqGG#W=uZd#j$4?vIMS8_X}Z`HaW5id~YoD z7)2%xrT|cz9yAZb6sDCzKqkSZ;xQEVLt+z zeQjc%ZWYO_95w~S0gWag&E;|{fF^mNbG!zX!4G8Zy#nywnfY$e&k1WE$}3QUeIAWb04Kn12i%k+vUW?i-~kVD{CM=|#?9^P&h z&78-`wgEI=_i_5V7-l230}%GJ80H|h3lO$lEVC@*;ps84%;y=;Zr6!p&SL~k27uQs zvMX_bCxAdRJdPX+Oae2e8|E{EW_b#;!PL5RW{K%c3Cyn;4{v{)z+B8I44#Jr9qi|* zljZo6!O=kA)AaL&%%Y4dr|V}it1;f0ZkWgXjA$FSuS;iUVq`qLePaf5D4OZN7#v05 zrf=8JV&)~@ zTp6=F$Pw(2IX@0w(EJZH%Gm{GOxG_5$F)~E^MA%Y+r287y&0LmvvE(i%VHJ>n{T!f zJTIuC$PAhnR8V9A9g_euL?_E}2BV{Z02M4=k7n`q>RRTxENnkOTL5lNmuq5v!QKHn zowtd3J8v^HGo$zx`1u}O3akpOj#ohZCg$ntEzHeqM?jog+c&f@*E2FsoNmy@yq0ax z@sprMHjmqw-5J@=fH~6*I+#-+NB@JC>Vs||SkS>7z{vPz`o~V@yNq9^pYLLpK{_p5vVT$D!90 zu7L>L*#{FKq+)vBL}u~nn;Jhbv(mxyHNaRxJ{DWE$sCUAgmoMhy71e?MLGeVISB5>l$^i5Nl zZ5f|V|1g!=g>lw&(`n3(j4!8`Ph++K8NYEFvkudRE7R{!W42(NyJ8R-DWb&;BzR{97T4xL;Gej+b}+zetIU@p#rnO z4h@QTJPB8>BOMGr@#+g@W2Y1?Xd4qVAW*is8Ql` z1TFbz)Mq@f$ulckiG8gSf5&n~4h2Si#zUK?ub<7V&a~k0^c%C8H`_sPt$eZvwi@9J z=o(8E#~GmY1!qC+nz^@*GdL!CAgL+SJLWRWGG3j& zY%X)Pz*Qz5P`4GdxC|uuak}9=W<`)FXsAGe+3^KLG-)2QG4ET@**Fq8O03|OYm4SF zKVbZ@y?H*f79-<_?dujWJ2EmJoc>`Ua~RWttJ6IeF*~uHd47OF;MVjBi?}iKL<$}Gw_d-}Ge%&{DA*&R8+At$|zSyJuK z$pZ`meT<-^hkO)32YNw|44HA_0D~i_LkeoLU6>xVj9HrT!Su3a%-Vb~1K5>VU3r?CXfl1&UJIuf{3|Wp00vkb5W&qmjcz_|xaSP0B&?*)tN01E% zrZX>R)?$1xU2i$FE=R*jP}@&n|McYL%xWB+ARe#4{^=7zylEgFkHG%v`; zd$V)}v$O10c5Vi4M;1p8$W8!M#`LQzm~|N!ZD(G|{GEv%x(;tU;~M5{M#i1fbJsGP zA{AKROw0x@47ROh)&vz$57#m)o6lh6R$$R!n!*S=tqpwW;RHq{P~Xqdz?YX9lH)(9dj_#>|4_(tYfwSm3pVvG3yv!1(lDNK;B5O=n5)mPMmNX zR#IO8Wled<1z>^c>g$=!MYh~N&fvJ|_HhOUW@*QbAkK!{(~H(Kdo#|SzHdGAU4i?L z-IZ9gK3xM%=VJ2o*W0AdkyN0gBIS;VRC%)0z98Kop~d3hQRi_$eOm@ zonF0>*7~z^OZ)8qkdUk)hPY44@oVq{ybg>c|ATGl!Ae5vuaXCT6wz>ugNikWD~{L%TrJHK5%o%%HJM z(2`W1EP)H)v$R0@AJpyAU;_0=8$gXB@WCw_OdLv}bi@QYq?au#8+3RmsJs9V9&jje zDu7NAQeai&o9W^Xp2s)ly zfeX^TE zCeZQ83ZNa&pu^EYr^SE{W(A!D4GJ{{4(Rb^poJKqbC|*I;Hn2%1RC4m$X4PqV-f-P zY&gJow}FqIVRBI5;$vcB0G+u2T7skR#tS~75PU}gcqs0$6$Uzo1=Jc+Q34<9r2)E{fJuW%MzJ1L@-k^KNhq;`Hr0U+Z(?-kWl>;K;4)*9 z0Cz$qz(=#NnlXWF0rx-I6?q}P6*$hW2pTH~iQZsW1kE3Sm?uCxk3a#Tz~m@_*j5Bu zX3nI+q@aX2$ycEsbXpFmLCpjjYh?o6?8K|U2i+I`z<$vJ1%3qqWG?8)8PM#P29t)s zB1XtkchF{W(87FBq_aYgeqjaeGyFFvES2}D1yFVU6)j_Da+nDcwwtava z=q6d9a#{jJfF>dOwlnK7?wh`MJ99GQ`{{~1n1vblO*h@aEHCl_JVwU?T9m;E8XUd^7cy$8pq*5X42m2IECLUw?PV6{__O{9 zXt}}L>GFG-r6ulw)PNcqAisg`ad+GU7TF%Omw5uC2zXHgWF!KyY~kBJW^qPSgcSTb za*#qtP-h8wNdXFfy3+yXM7Aj)C*In=@&Gd%Bj{|1jR%>7x%+nPPGdn9>VgZ#iTmlc7z#Gs(gSnt{JQbK7mw=Sr+TMJa z`8X5f#qHk5n01($rZZ3XImVp6{lQ6QZAQkU(|Jxa@3ZR$U2F(CWs+0i853ybA&V<` z?-qEB543TF6MTbs%N}UxDsX`LQy~259A}v2IJZDJ4BXQhPcer~Z$889!M+3{HvQ5W zW=lvX6VxJM6qr3-{48@cW83!Pv&^N8jPIwvJjWc#_f!PssP>`ca zmcWwfTP`!#$$-x>fo#48pJT$PzzI6tj|X&G*L1%t%!(ZFeVFA}m<>SGjU zj#inl?*M~9CnKokXrjOjDmj@QRk9qHgWLp~jxqslA=SUiEXDX>y4O`^&`CLYSDB3& zzfWIul{u1e>-IlanKv*=OnDAkq66Bc!tBWA$mGc4xCAUR{m2dGn~ZO#&%4R2z&LyQ z{+rCo_25-bpm`7m$m%9eC&n5@F3`fJ31>W&xD|PLK<5_;G=lDZLQl1yu*C zzCm|DzzkF1Q3Tz^;>ZBj2R;QxksGA8&}F9#;LD*wEbx^hpu18*x2b@n!L~7gOa~1+ zctRL=Km!6`3*Uh5iuRS~Wd*4PU(f0aVS}zhWpUK>IM6=Ir$Hhs^q*%XU{hWVST;a^6#cMS;l|bV?uS^u9OeJ-N9rvNEyPGlFhuGRRh9 zRRJ|WSh7H~0|FDa3qE2_0d-N!9y9YYa$j3|03@pb+KkipgjpPPBnXoOXxxkia$6cJ z=y(?vP(8SP{}bkDM(Lf5kRAY|0;dy0uo8zf(x`yxGiFDm9tTtbXo#fi8M6~;_~G0$ zW@W}1(?309)|YT~8K#=F}sUNFxDT_1VrC9@ynndyqJn0pw{Y+v_^*%R4~&`ysc7sSyg zu1ptt!|Z_MMyLXi8`It}+k)J<^bOdJC*LsZGrpYu^9^KBNBk|sHLh zICJ`%FU+d^=NUojK%?TIBPLEyfAEDlfw5=0<5y-C(6+PP(=)#^`>1~hpF7Q_z^2J0 zfpq&D8~paS37~a{SGV8!%FM$EIc^Mc9w+>?z2D!Mr5HC)7yHiaCG!EiyB2(26$|7T zGf;CB+!)$Cz2-afZ(;ChSr8N8NB?yFV3tRgfSnmMea{c(du&TU%M?FOU+|MzUgQX9 z`69S3WmRBvyaM8V+sHg4t1cmnnh1UW$9yFu@(l-Uh z+rE&M3UD7ZYH4%6Mb@9|4eS&TKal zVzFjod_6r+gr$$|PU}(70(~Y?mJI1Br#+Pz9U-&K8ccIednz(QO0+qrr?-l-sH7k( z0L=}~0N?+^Y{oR@w5I|yc&VWRGspl)PZC^8g4bv|&NzLN0W1$G#MYqLv;|?)mebRD z#aL9NkrjY!+5od@&FSerVl2{H8&D1GKrwIv!oUfqr%wbKh^zo)U=Pf|j?>dGfDG(G zHE;onfh!OOt~fniRGdX699aR#z$GvP7odd&=)wxnWzmeFlb{(Lmw@d7MHy%jg8&n# zI?@51L<>56xsQGN1aTJi`ZarwGk~r?y0Pat17rscvjUUAG&aWaV^5x@1*qa|2YP4BN~k(e$k$&xMl7<_IdD`*)G3wXASB}-uA^tqBO7eQTy0x1?% z#*NdbNwMfKZk&Etie*XKdnQ-#S|SF}L^ZP`gEb=$Xbpy=NSQ9fjmz#<4E$g&OPM2o zAyh;dEW&{#A_NxUK@t%JiwM9(rk|B&31hl(dAh0$%ly>WjJ%+|VGN+lLBLjufmOq; zlmv5;t&|0eAX_N|7D2XB8Z3gaQd1UUWuq+13dXzJwd7dlGc$hKehResfN|6G*GeqL zjB6$rB*I3ws3Z^tb#b)XxN6xd;VZy7)rsPKSN zCXYZ1lfrZpRTek?U2M*2X>ImXz@)&Q>7A-95BOfQE3sREE*N7{U=w&VybGoCZ+8k*&vqX$e$x#ZGr6W^?8pQ0{`A?n*4?%o{+;7`2#M7?s!r zASNFG39$*hVOIiaKLJ(017zq8C}#tRa{5 zsaydXDr3-OKCpB8EOnNWz+WJp4a}gi(*qEaF-rg}2;oAc8eoDDE>wyMtP-?J8Y&DD zm>#de;=s6k`T`9WMWzM2rpw%AF_GBBECp(RFW7a2!I2r%vUFSmy0`t-bbd{iN|7xf zHn{2mMH2L$@;RC;QLr1)|7fz9Fm9S|sKuhhxM_Nb7K=AbW~mlf=9U)A9JUwNz+0?p zv{|;W{eZB|bXd-@oq({pbXoG4+P6)w(q(C3>e)6;k41y2XWMiwJr)(g{%r>s6hZa6 zBP(bjNz=CJ@p>%U8ql#SjV$O;m5d^2rV!kA0FMzt4z?GVI(?HKi)I9*dn0fXEXo2p zQ5ZCA!vH>O5Hw=VV8$flxMUl6>>qR?fa4Sp`vPcJEBLNhCQwsd1AHpJ0u!i(!sMut zCD6_~-B_O`R2*{P0jQ`1jhTS%u>g;!OrNjMG7oDjBfx+~iE;DvVgnX?wi%#S#_Z`k z3|O=v>^ak4Ah9J3S@gKUYM>`)1{$)6Fm9fnX2{|RQ9pb7Rzrl|r-m$AB4G7%SQME- zt5H}%`Cj1jbY&x!r&cGfflkZk)?hkv%|($1v>b*>ffcgY#fuj_ngW_SSOc2$0LMC~ zBb(zMFmJk(F^ehVhv^l@Ea8kFre82-@nSmzlDRcq!Gy(y@x$~~6Bb9dIS`>WCM>#) zOSa!KVY$I5wuA|ENumO$ITLs+g$;E3rNENuC(Kyt1Yf*#S7LGe&tIs-s=%nv`0C~K zaC4SCrnaxskDId?v2}p9jeMN`-<+kG?FJ;VR9LWFfF_*newHjwOyYY$2PA+BA<+1S z0+Zt!2!H!>YZiG%N5ohN3w)Ra)IwrM<~dHdb{us79#}DGUJbD^Vfa^DeLhp;-a7&C6%Zt295 z$-=$@G+W-pJbk4bix&G1DCd?NO9yDg3zSJsvOwt(cBIAha(9+hs8aCerI`ndy4QQ~ zqC?QA7HDc3q!o0h8|c7Q(C{SaGDuK25p)lZ8IuWkY*&E|bPfx`D)`Zg%RN{W98k=I zHCVw1xPk|ZMIok0WTBe^KeUqFlVv$m$Mx+SJXw+$nL4gd7x89^X6&0@;LQ@kIBEJ( zZx#ji9!RWAe*+SGG~LmMrH2tr=}!Oc!y?7FY`T~)i>B2iR?tctQ1kT-xY-AaDi(0V zcMik=(5=6Y0$HHjdKDlNe?SVGn5S3zvV<{Cn0~>RWtPY$(4jY6po#*tu6RGAA`=hi z^oM>dqKtc{Pw`_hVB9nPs2__VVi#+zB#}4P+CNfdWA++Kk_~+XS)HGBeKHzAKbPmyv1x)#)$8 zSd^GHT%FDv&Z5Y);o5YAa27|VwO6MrM6hTwExS5>UO0;_R9t&HM+A!)vgEpLEOOH` zBUt3&Dz-vZoQ+_SVA^tZ`|}8viHwY|wpT{62r!E8fFIikYA`T4u7L2TFNkI_VCIdCc%c8)RrNji9>jCdu z{_6rdr^G=^+x2Jx678=U`6?~7$olby)Q4JvqeKrLVJ@k9cO3_PF0_|%p8_r zRXd=n?k)na>Ep-}SO_wU4{VkO6N?!W$gG`ERi98*L3UhdGO>W}Utn_F1yNQ1qy@z+ z9?;H>zBfl19HHB0xIqFlkOa6u0*gQbJdhm>oFIX9AOSvz00&554@dyI?Et(B;s{89 z8KMHb3*tCPAesdt0*VaB(;yM3so+BduY&~mAu59|W#!?@VBs$7p*5bUqI_=9m>YK}&K$Eq8uzX$5A-D{v`61!l)Da2~$`tK$dkwe2savxq7>GJ@LIj*N~Aj)QgC2y47RYI0|H5pGAooba*(Z0AkQ!f)0i=fyS1hgW;gOQ&FhIEbw@GY#9sE zU^v9g?lKm`pl?j5W67Z7W*Hrs%Sx1(A!Er*3e3>4WJbpyjD^s#WKbm!%KRW9B}RxK zXzPXJnX}XR%2{-yQHIPJ!K3V;A#>111V+%1IcO6Rc+?*3OVB*i704jF8E7aUJk!Mh zW`c&CG?=cO_XPEc!4BU(t(>KZiLn)2LNK<13W9Zv&;kQeF05lj44*=Zi7Rz1D?#a& z71X0(1>F(Ms=)+09dANCOOra%P=yHSQoJk$PEfjqDdqr;U4!n%oh!+bJbg|B3m4B}2fdL=tS^BVsdtr+|jSU?jzERN?HvK$!&I=A~avaDc)H7r3_fq`-yXdYi+-*m2K zmZ_*x@Ilcn%`DoeQt;;Jmu40fR4G{Vak_2`iyLI|7!PdmSVIfTQN|C`-C9{5G9P4P znEtSxrEdC)HWm@ac2Iz+GERTg&N6ZPx>^=B#_2OVS&|sPPyf@&0-D;E=wfkayf;0e zi$#_3-t@LE7F(|8plJfoK~cx1$67M#fz)=fgn=lCmi%rOd&Vu(*LSmM$|GG9#{=uZ z@nku^-gTV8kyl{K^zYp)S{y$>JWheH(=~fov~|vckDn3&s}{J)t_a$eD3S$QvH)7j zAp*Wa24a@LiRleJEcuMzr+?^S@nCD&eVjqy&2+n7mgU-S*&SIFSrnKRLES1A0mu$} zNRClp23=hRiXb*e27xBl=>mN$@{EtC8}zYAFwUFq*~g;8_;-3)A4@1x6YKP|Aj$93 z-}bS9=Kgv5SyVMajY0-cMJEEj@JvL3(NO{1EOy)hy2T!JhYx7RMBw1`sD74k#=p}y z^|Qn<{+-T0fyEOt?+MDKpn1=f2`v7M-=}Yxz+&gK2vj?Qje1ZrtP)-Nn#=2qYY z-TlKUaEytc8M?_F3Sv-T5;!>BZX%06Q^$ho{S#S4K__T0 zo5&(By5j3`hAhVyT96|k6ga@gK5f4>kwuNM{tYuDGiXWO0fubQiNXqupqtV_Hv%a! zIW}xR09wgC3w(DKXf#rTNd$6B31}}0g9eidsACUWECU+U1zoxW+I}u419VfmJLt4m&~gX{ z$7T*+P?UjIhA@HGdw{wYpuOt~42Vmp7(w&3OadF&K$Wltv{eaW>wr#Yvj9hu0+ZvM z%?B79nFY46f}~Uw!7Wb($9l#>@Qxq`h+}QC1VD4apj*JEp zD-gvCcfADEb`2&OC5VGTu>vk3ZL%D{gA~7J68H-;2z+3iMV5d9$T)#*Q16QcOG&_0%!rwk`3d<)ZCGfP02)IiOD@|AxnL)E=;IS7* zfwR*$O=pP$6`f!Kq)za3`57#;8JAAqJ%c3x)Ib59YXhphVCH~sW>DZ>gML70(o7aT z3Gl=^n*y^VBPgG;gRZh;17G>EVkV0WB*Q>ur(c-KV$FDPI?pT?8^#aQJ!i4VFn*k# zHj72iU^1wF12t44^g)DDFT@i)PPe z`O5YNQU*<%!&1!neLB}%77ex@(0Kft=@xTY3>c?Q&z#Gm%k~GP>h1J7b6L6>CrsCv z$I=NJ!PqbYrAyGRT322M1?K6S7J>`IiwjvK8Lv%$ zy^uwU2ieT&f{R#$MSfs0X1c{9P#<`D$|9B|#@W-4FJjrkxN~~VVwN(-ozp)rX0c7U zam+)3(OX&xG$eZnwDC)U$&tB4g9%yuAp>Z4BBr<@c3}x*;pr2Wu!!a$n+EE{VzGo7 zSr@`hOxT4nT?#sWg9+sB>4HmH}Z=KnUX$_MCgTi#1)huRA9cQMOtY%pWUX;QHo@rnJnY^NTyWScWJ4Q&k1G*Cu zR8d!~Wsx^Ja`HInusJ4yg-oCoYHv;+XK=g*Dn9tL9PfZQM@}7Q5CD%`vn#NGR(j0R@3w^jDi;s+@FM=19gYH0O1nmz7g&b%(kOHH?lIcO~STvZL*r(U5 zW0AK5wPQdFXxNq5U3o#f=a@i)49p7bj$fb)irCGVbReBH(26C*f+8L0f+BGioh*R| z)4!}^@n+mQ-C;dTB*&Ls2SBZ_snZv(XE88?Bqs@Qtp-X&plV41l!y?^Hx)rA`AdLX zUZ7=#5}-uHzJVo_@x}Dm4J`VM$ENpgVDVv`H~rQI78l0u>GB&{!Wa*2FWbn{%*fcY z{nsWI0Y+`aaaQ2-xWLQ)p$BGx=J!!fvohVn62f?Nde;_~JA&ZlXy6;?SQK~_xCEX} zFW<_d%f4kVxI;L7^;Q-i&@h?|JF6@^css&|tJ7t-LB`S?wy`*Jti5`i!I4RUeR^d$ zi!x|LZQVA=h?>JT7VYU0+aV)r2HU~oWz)U3vjlKMbCpDvz?JDsx3eskf}EZTy3GlE zm61%ABlIexXVa5*u$VEvoIZ00i-pJqP^Bu7C2$9H$%f+r@U2MGFRHSNPXD!o#g*yL ztLctASriQZymC-r@|IQt_5O6Tz!Yc<4Ov(mS$O)yoh+h~$kJ>m())L^h}I)ZGa^eP z?7}7t9+dm@%0UUT8J7vPU7baN$umod$?+O1Xj3v|6mQix2L%R4{=zavP@Us=ofU*` zG{V+PFz`7tmpT6X|NlQ@p+4h_#_5T>ShN|JPVe2tqOWlsbV3)aqd=BG4?AdOrUHoV z*f^a@;0^eME>J&9BuilH^e4MmEI}JDL?CSeM$pEKb%$A`rM|s&HDdtPv<#XI@7}ta zGl0?|gC@hXx6>1LvnVoto8GjWMICgg7M~)EBOgM$0;3~?CPM@0ge*|PX3%8#^>+IC z-7J<|pjBp$jE;N)2d4||VcE~L<;?WUdstEg&YbsjtOMN%S5{sKS~oS_eJ_iGSroh%vsHzI88)4&(aik3iIm>HPaxlo;1fH`>SI04qSi&6??T`&cAZ z9^5#>;K=Rx=Ee~Qft{d}G}%GT95x1Sfw$~T4vvr`s(0^WsbJhX-DE$@97m*)9N0(? zXn384TY=5-E(3T;IisT(ct{6!;5%eo2;8g%^=JhTurweK2*FOA2N?rykV15W3Lx+p z4{SgPHgL54%mJkFmgyf4vKX_^fQ}h!A7b%i+&sPN5Q`>9FZeVCfsNBwA7W8aYy$C^ z9C-xpv4i%F%P259PMQd+Eo8DBpG;&DxH0|1Ar=LJ6W|yTSPLp$7zBFRrYjs~(FCoV zlmf-y^uWU`ie?wyx>_@U3MU3lh7+KOhbDppAT~4+>;SPr7s!GZ9D>fA$_=5a^h`=?IG| zdupInpG;Yx4eg*=B~XqK*gW0tD2uDiCl+q-QN3XIusDhc!1m~f2yC4`|0v6B&|)>4 zV=OkH-7!_iSQJ3?oMSAh`p~T~2X3Klh4}y%_;L9-gQJpT19)%Dc7x+A;fy+enIQYA z46>D&RTvZ?mE0vzd?{opfIERKj_?-f|C21D^{i%0I-o#MUD5d~(@ z)<+F+dsHJ!;3PX}(JQEqk^nUgbg~@3>^{KY$Rh9@+NzWQw<lvpECL(Y zK;;~~pUDhr?ec*3av{4KQxU(!W z8WX^$OhTqDK^5x-5Wfj@TrBKB{{; zuM>;-bmogJ28?&7%e-TeV`Fw?$r3m`J>nuuH{-$S$KJ6ROc%MtV#D}-df+7%O~xJ5 zt1q#1GImX8z08say2}Qfzd!>mpbi~ma0YZNhyZB3a^LjHmsxf*o}TW1g=L2L4A6Rd zP%t_&D1g@McR={t|6O5`V>F!u+86L8!U?%8Fx+pbd#lw@$U4@TP&c1CfaYYbTS^CE_jG^IBO#FG{Pt7CNB4&q6{ zco#uDNf_@HhzFV;1nc_-;(-oP1M@mNkAe=TcsoEmxG_gS zJg`!b+$9v=0}u~x#b*!??zG;nqYRFAFsGdc@kC&}`yiePm=~zP=s3CiD1)O8n5)3( zxF5t*f$<)LcyQ}Kf_QKXTY8Q%ILg3OE&%Z)1g=a!bDt$o=nDKa67Wbci$KeCp9d_F z{2#U)VGsbPcu>!`W%`x}Ea_|wTS0=;6(6#g$4mxI5*&aeV-`mq@Tvj{1s2C<&`1=E zqXcMO73e%3(8wqFnrIf#20KtA5;W`#UdIkPHi!pwCjkq1zZQ!UBWMXAhrs0NTOP9L zgT~KUK^s6prbGI3VAgTaVO(I=4R+AZC(w|=iRt{0SSmobCqH5-X1aW1`rk(^G9X&| zF^eCF&VJ0I$8_b!^x2PDY7K*s=zfVM3&Ievx&0~07WgU;Oh0_8ihfP)3x28Fa_ z9Unk)xj>dc8feZPG_=S98kz$y*8mkYpnZhkkxI~3Iz~sP5+w!=rX|PRLG3Fh&|v+U zGz(nNHFf4{{0Dy0pr2x8c$g=K>@<~5fVTfpR$C2__ZHd zG(Z7l_>4u7@!#~|XDr_A%Rv3j#aE{N$%c z|9tQ!E5{WewM+u@r&m2^Q2{ONSn!;sL*yUmq#^KS4a|@gzAOq1(`#R_=<eZ3=*A8jxKD*)Emwip4bf&S_6q(2f%grU$1z z!CO^8Q<*zJY|tE_8Pg8XN@~!M2(us~gCa9%i_)Fbp1h!yl+0!zO^ytp^;maKdx9>- zVisUhViu?YweUdan(|}`^s-NT&7z`N3tqkm8dL%G9atbkEzGXG%nHn)h1;OfohhKf z+V<(buUT|Wwz4yDV=k)(Up90A%K~hWd0VHid(Dy#N-MC;W%>q^xmw?_=*eBV;cmsi z04nk>p1n6m}`ZNK=2#fuSA$ty4(o^Jb&r2|sG=P-VsZv38QhQKpW zS^=$eaeM%3!R*+6`#p;eBgj5%X%&loY~XbeTwwdAAO6S^&)75l*CrOl=`NpGOc{Ho zSAAm9tN+X5stDQv4W8*zfDTNeoU%@EPzQ1dIs?g?b}%tAgO7VKnEqRo)spf1bW<@_ z#rhqL3Je0rK;wC!*`U{;CbvYEzzbN*7rMk0+_IMe#XD$6A1K>^cJv)*1vU6ZVAED0 zjsWOnG|&=K2FMISBL~X38n~kaiXg`wpsnMK0-;NxHi35=gBC<6L3$bt3gC_gVq!)C z#02+1K=U#RC@l_VM^HC`pWE@sZt%eCbj8ms5sZtbSAAx&V%#)+>t_}d#_!W#eP+>u z-Zsyu!K9j&b4i|6f@a z)K37(F$r8@1D%Yhz^1?eW^y|+D1y&%1UX-UnR_D>GYjYp#u{Y?N6-`^lL`Z*B;kR~ z7cwY;){TG`oc{m+A99um=&Bk}@0ZB|batqK6JrplDXPt^pvbPktj#O|+5)e@R1d1A zF0*e};83~J*+cGoL`XWn%n{T|TdmLsDnXc`iHIsz+n8WI${pbFX* zGzSCngaD{w26@l1K1&gNx(mzn|Jtmg0tXnfz&-dmPmeGNyk%vWe&idA5oA~hw9FDT zuFUkEMN|I<6R1fE9m#eBm3jgVpgqi>;b_p%4pyFu$W1;7Jc@B>!%vt~Ko0iCuo19biD)#=hd zSP~eYO#97pisK#=BU8O&&-3YiKUrL*dY&BtZOZ|z71Ll~aC~^_ zjE;YvO>h3iQp5OR+iwnd?*M+H!yEUVO<7Wmo$ALE30BXC|!W&K~)$OnE63#lR!PJ8<6f31NSFJ zMz(rTCQ)F@$_7E$L$pw$IFeoDFjB2D<_W_;5*(VrDeOkTWJZkdEB|sbYbp`z%F}i=fADOg9W+5t)94 zjnxf0Jg)#+sAo z%)fyan?UB@KnC!DCrm(hx`Srj*cCxXc7Tq}0JTgxcp0)47@Qc*nFSOW6xg;~GAk%B zD6nn^m1ztLoC;is$(IF|%m$E^%_w3TpeZ2h4G(u}93TXC_PiJt@y8iUp+GlQ-SxB)u5h*#j*be_{J3e%T!u?h-bU*Td?amgFp}X^eE625NHXiqezzHGtjyvP&$wS&9&|1W(A$>^n{yL zn{m^00UlO8ZE$lD+z4c6;BE(%t`KK{Mp>CbWA2QIan(#7R@-P;Lz^Acw*ehd3u>8y zhE^OOfTsI;7$L*y;89FwM+v0!13*q-1s4_IstCLS2h=K21g(FN0nGq1^0N9fZk-;; z%PK8-;N4bEUjqB zf*}brCXMNye5~364_HulG)`~fW1ZuIG$jJ=AA-;L2A`_N=J*$NN(3~lg)*rDn?so{ zcz{J>dJR7-A84rxY{~;RHL`s!KdU(S#K-Nc_*uC?Rl^}cRxif2(|Lth%{148c83XM zWh;Uj6avum_I9)%WpLcxew0Ch)u}#Ii9yr2?h(f&;G8-Ax&*5!W7~9IN!CS-SEg@}WDS+Q ze8b(Efky$f<$}%e2}4e{d@%j4 z9;+5JkHFUH2J)7TsQ%` z3l%g|1ul|6LQ75_U=ZkM1f4g<2%6h{F+E#>Rg-b^^r;H07F-}pA;-#1zplXQB)VrW z=nXBEh=ON7!GXiB#K_Cw$l?g{^K3;{DW)mMrf*kd-3rO4 zBB*QLLAh8Ce7UxW0wZkx6QTy(IRdo|w<@vLGJe=@tjrq3$asEwn+j`@LKVuQJkao{ z1`~%sH9xoG9LQ2F2~}1F#%0qjRareG!RPzJmRN(&>IV(Kf!2G?Qf1ZVxeXeWcigfX zwDb-%(eGuCaz-B`=$2K`uoEkEG(myY@eHUW?*&&TpgNAxaSmv47w9qraKz>4vnp_a z+Vwo3Lc2+gRflow^z~}2#x@9(*+KOay8;`?WOj(jtP1RoFF+9jIh~LPJk8Dw+NcHU zL0y0XeG&DLqYC2|Arn0X$@QVfrJ8el88L zesc|0FWyFG1<-w4oC;h5jm*>gG+3>f{$8DaT7y-JY4g?T&ox*>g?d0;A5gYZU;+(6 zGYCAMzCMIietNDZtButL7H)X&5Zs&6U;^C+0UF7J01pZ0VVJCV9oS?1J-4X zt3Z_3^aev#UzXjBjLg#=3s_Y`Aua*eq)rT=-T-LjBTp7|Si$7r)I8?{4XP-BmJn$$sR&%0e&2{yoALW}Ze!M3 z#ud{$jaiR~fD2O4S!9l&%8IE(iAmtW^h6U@dBGLCk25$L32Xw5t+IfZuTL~#RWQ2) z-opvH^AEB@4b=65bhAJ^&Urv9)IhVSpyKTYyt#2=`g0RjJEld9(*x3&6{mZcvL?ws zU{eGw#{z{kFM|S$B0CQgXvGc4EdsNrA2(&4L@y=g)445J)1W~C8nJ{11)IQw>8%#5 z@$hPw10Sk>#*S5q@!<6LcC2=c zSElRPvq~@?oIb&URbhIvEvp}6&-8RVRtu!7FbNMcPfxUE4S;GSY0=>+J608#Q?8>p zCEcF2lyT$qyY{S6Fa@WdKcdfd+bbvK-+(S0+bRb1Bf;Kn*5P zr&R&eTmlabo;VI}I0QSgx`GV=?Y0n$W`*g=&aAcw6F_q*bB=*c5Z-VMJc12AOBgcI(>LAGomGJi zH2kQ*JpF?WtI~9N7gk=ztJ8H|z|pMW&Z;my&4pDFQ_VFLHQ!uVEkVcDyRt53yfgiZ zD{DO{se(%F+0%PGSS{pkf?M@0Spr)bpecr6?Y#Z7@eGU*?V!E*pt1c|>f~J$FfAnD$=bi{{ za56daOn=DDDm;CG4=W$z_v!0>Sj~x7ZR*QvEVLZ7|H~pv08E37RXBwHdcem-k~8=e`S?umnv{2`rrM=*Q{^D#}1xcOa#)Bcmc{HK_o&-~kPY z&-Y`kVf;DWK7dus6ST4$JV^2K&;bU=zYLBm4j+J=cm$c-1IaTeFq<<^05!}MSiocC z(7eUn#mLB54_eA5aG7y>%x4x^#^2Lt`m=g5ewzNopEU|?bR+ot~wVpU{(KV3eURZ4XyWcFPGJbD4TasjmY z8Z`aS0IK%|pp#H>!K_OezfWfgVf7IO6*7#DpgtXl#Q+{=`#wE2gw+B^pP&v$2hk~% zRR`1yEC^)Gh2#f_ zf?$w>si2ez?RYR~Fl{*F3E4~sx|UYpDX4454Vvp-a>f&MRwbx!0Un=IU^HV|14`(i z9timKHIU&e&P+cW!D;}SYvAX0oO$#(gX2pE#|uZnM}u)Qa5pkCF+z?BM+|R+hO!w! z)f8y18MHzKv}hgDo`SZlZos<&CqOML(6lHE%HT6-ktnMI8(fTK(E>~6>5Mw8;?qSU zS(QK)Arr_3)Qa%=bl*tUO>P@NEg#U1N$wiRm;}UWklqYrrVun02yG5Ka)8#LvS74` zL2I%^wGdkaL3<>I(rnW8{_xseo?Gupp%2R>lm3(dX@sqnWnGPW|bDl z>{2p;yOd|6SPeN~oyqARqFHsBZ(Mett`Ng22}%%w(cpBF9?hDf@}Cj3Dhf1&?8xBm z$RO|vnGYH=9HT_;JYdR>WxX0lfk*thkwFHky zdc?8H;25=h7RTxc8W&6gw-p@YSwm2G3e(TWvwAUoXPdszhE;*>1cM`o!1w8n39JgJ z0I{qwg*AwoM*x+tfyNg=<8vVRj`6H+ z(_bgE@}U{Yf>6?!!Wx1mD}j)8jAspERuH%bbC6>^tHSixsjMC_|FVMCn}44kmBw1i zID7hqG}cfw8Jq#(KK*bytFhHI(AW@YIhiBm)LT$Xo)MJoK>ewE;Ny%y1Az*lK^AaR z^~~M_pw)1j*ry*%XEpQyExI7z3G+Yn$+K9;^%e*Sq^Ge7D37n&^;i`pjlSX3A89@`!hQp z0o^SMI@q6CgUJPa;w&Oo9*|j4CPfy|*+onWEZLyJHPBLc(0MnYJaz#z zoj?6UCTpzlZ}8d&=pb?rXs6tp=?Ph^;)skOSk5XoowtltWctc1)-cAuC=qFy%?jGx z)R)Z~BHzgjZUKRBoK;{Hn8^aJl40EG(;0JEl@P}2RIqAH56)pVtVdZOB>)N(1`W`n zC`IUr!#hrUg6bI1d7%sn44^eq46rp)pk+o3sB5G^Cdo zvFZyvIqj(czK0UByiH|#VLq!4ykM@ux?d0#-w&YfRJg3s|+7elt&JEM&D{ zJUTtEfK{6l9#bImG+06VupwqD;5CzhJ7xNV7FKa_&<*d1y7CUY0)r#y27>7v1+3ak zJrKK?)-ZzYW?VF_kkyj$!E~!aRvETM;L*+L4ii{KrWX{lS{OnGKtOdLs8jNQ4Ro-K zBZvt~$)J`hXsIHD0t-0ZfrbpHgFME#0PGQ_&#Yj7G4(Tp2Y1*YgF6u8Zx^!aGCrNo zS;VT%xM;d*5v!88CXTSqD`M4WdUAUD{36yE#-r2!6tNZx-8|(ENpuXLF;MV9`}M`F zDu`6Kx|p?1`8TLLwFd8{SkpsFSoQU~Ad|wN>()Tkj)Vd$Y@V1E#20W}30h?d+V7&k zBCuon#uDUwbD@OwAi`pBE?Qs8>VPK1TZSQ&jVXkoDh$&Yo#`9PS#=qEr{6DUm0^4^ z{ZBco211oi1#2!sZhHl*8{^XH|0-Bz8K+K{sbn=|d@|jyk~IubM6Ic0HDWwC{eC5@ zX#I`To_s6}Oe~BHpfO=4D~21OB(BQ<9ux${FM|T3D=(8HqvI9O0QCgWG3?A>RiHuZ z9fuEqPkB88k^?v9=YWo~0UcZH_y{ETk--rz7s<#7n%jZwPy#iCco`fKzPM1rDmr~a z6{`>92at13rVCcH>M9?23EG4ME@&VP3hd|!Q?m-(#!xa?B!4Z%|K6u^dP`vNs=|JHjMM9ht;so zWBdwnk!CHc4dc=2X|=3&jITgKhSRUrvKleYoj#|RRdKpj9jg*bAj?cIsAJ`4+&aCX zj@6lW8K{p5s;Cs01a?fnPzR35w{@&$tf1z8;Pi`)tRmBG>RH947qNnFEY)BFuWtZd zH4Pe|g?3JI>sifEJo^KOXOGphYB35=|5(o&!5A~$tARCwF%CpoPrui|s?2nrY5M$p zR%yoG>GF-NYLLk-@K6Q25)&_jBZ#?mdQ>B;EaUg-6^*P0jK`<1Y-E*T?3sS7k<|#r z1s(9a(!ucp4{qruR(pZD;Pn9rzf8|+Vy$570!^XVOz*W~l^3$faby8a1aJpJD%&@V z(;tHBCH-brX~v%E-p#D~jCIqin_0uO|1g4{xVj3UU(-`Thon5R!@VO3|`JDsr= z>|eQ7R&BdK+t~(04X)b^~3vB?BIV4g!_@ zq6UtjdLPtxyK@FK59at3L~$!HIPL*4K7a_w(jLb%XAUq39Gvdl&Z^0{e0pv>tFQVG zP+y+S@gIl+jh3{479KUeJi-9FRTQ+SlebYdt{=%`}*vK$d(s zF_?n_r=W{fY5ImvRvuY-BGsu7R`=rjHpE^=M+T_9x?QYlvTlTo z^5xzHKf3ST^b=jI7ToiY1h~6drENBx@l;|0&(Uo-;|ZFqb!6}WWi^o5x}d2y(4tBO z$SfRa`M3sC!x>Mo`i3*ple$@z)t7+clh<)0hyoq1-U4E50}+t?&7l^R&$ZR zm>tQ-(+zuB4H&;qPwHj0gp`<;i~`f6`dBrm|L8!VDQjWX~wGiX63qnjDibo)M5DMnk6k+FbPzx!C_w869a;E83}Y(C^_IZ)#q)V5)STvx~7_~qzymwr}t9#E?acD2*=@_trd z(B3S5ZpR&nJn0Cp;21#zyWlYa(6lClz-O4Q7#ZQ~IGDj| zK{ICz0;{I4o51SDw1H*%gA7)2cBsJD$4dinq$nMwigFv_69T}0IDik8Kx^tVbv3U23np9 znwRcn0j-8mU=-+^E+9U_5C$8`PKtek4|VXEhWZXjob>^uS2va{Ji z;}nkIJ2yW&nmER`qb&HA%Q1ALBNg@1UtY%zzki{roy1W zz-@~hCkm_rBCyy1r#w)qXNAXx)eKf;X-PZ^DrT^%NSnbFuz(mK6A(4Qc903)AaPK@ zW3l4v3|3b*Xh+*&CaVSWCKm4L3bRXXpiw@aEXN&ZjxY$!1FM&v z4HAb|6%h4E5e0GoXI7Z|#Ub572FUVX$ngfCiT~;9bHI5dW)7hz*{tU8|kkm8QfksrJy89HChr~sLh(S;`v zNIfzEx9aK7=dsEQwVVZA#{ycJ09oS4&M>`TKC2efVI~l*%wdp|Rh#J$ zSX7JuFeA4U2y@cv`{Lf+yxbWOrTOwAQd8> zhc2Es-ERS_Hq)Km)2kP-8fZUeXW-TW+XU(LDKIF47Nmh@bUes{4s#eNK;@INJ6nvAPJ|!TvUa*;M@mVDaznD z=hpO{3t4>`?@ec4#Hz{oeY)WyR!Kg8hz3yA${^rBy>=0+`tbx^G_LUO~W^_aDxW+KcZr}r3`qLJ_{&V1O!zXuo#eqVgRafsJxpfD*r8E4X*EH2KfpU_n`GiObX24 zO_z{?G}u~AP%tt&t_2k%OU@jD#JVm6189*lw<@skXWtOAoDd(F3lcq{^wn79>SMr_!B z0Jhu*)ES2a4d_NYyb5$cMK)-Ph?l`}$tm0>@Peaf3h1OABY{oRXD(ya^1A~%RvfB# z3uw(gWU?J|e}5YR&RKC)!kbiw7wDbQ#+t4=tm6)6u1T2K`OuHqJ)@l;}P{KTlh zAT7woz`zYjcA#CYUrronaI|!sa1uOA2l5#Bv^Q=!SO~y8IDPAKR?rr{d&|M21t7`* zWEE(%5M&QDk%KmrtT^ie5}9(=Mc@h>w-n4b0$kJUSFlPkYCxz^2o(vTq9Iht^a~&* zP19emVAW;(J{@EYxCt!@au1^;rzdE6j{<|hWl)?l2+U@j{$M$Hc~SmK))b{3XOA#| zj$CvE?GogM=urS&Qpd~S2q`qDe_hF{%>i0eA~2DiVY>Y)R@3RRt61eZAkq*a{pp)m zv5GLJOnE&C7%MbKpM9oOedsx5Xj;d z0LK`VyJx!J8djV7o$PRhpc)TeKuCVZf-RpSddH3cRCF%+KM^mFT2#iVsXsz9cL){mJWb1bL-U&m@(?}#ksg3R$k=J5tSXc zz=}Cg5_d#8M3I}H!Ex@5;|z}43Je0EyI=Sj9D80KXK*xzw$=m~9G8Ol$3c6CKxF{f zgbml=$1rk(+@Q>mRj_tYCvO`dJvbxk1y%j8+Uk z&U13Lpm_!1+8zR1YU z%)rmh${_HbotuS0pp=`Lfq|R*`Dsoj(AnJw7`Qu5Z)e-Ws?W&Dsh?V0Qks&Pzujyr zYpjssUjYFIZw3a22doSXoD2*Mnd|}#{veu#fkB0VfkATmmgB7YjFQuz9B0+9m*f>- zh-P45Sir!*APAC$^5-)!FsL&yFqCJelw@S2W~OJ9FmUnin`?+EjnJQD+h1Oo#@bV_1LqHach zZfb0DPG)j;c4}oxet90;%a@rL7^IP0Z881KNmhGPm@zR-3=G^13=9SNnRz9tMJQUm zpjN=t`c3ya#i||%<4$B^V32{kAUP+$I90bGF+DXF>>>morhXAreL;RfaYrbD2iZv$$$&J?;85lH>_`ew-Ho;7?W?*1YLz1^=fP@819<*wW46x}QZmcn;S@Su<~*x6CrnBF_JZ@Q!Ho4VekCIVgAK??Xv)d} z#W)iG9RmY{Dgy&UdQN^)Vh%VQbd&S*N{aGxieY9Pg{sLfNKDQwskAb%hK9OsYFTPt zNwHO4eqO3IOx6%2s{x7>m~>)kNxpS)No7uIa!z7#F(|Czc1-s=!)iCZ=M1ar^lfKY zZ-Q7d)7PJ6Wvf@RJ3QS+KdH2&BtOp%krgg6K$5mzNn&w!QeqJ}2_bo?73x@+<2xA` z7)+7myV1hD4J|-QpnOS~0gD+xT~dStmQK&P$eJwpms@}#oPmL15er26@AL;3S&bR{ zr;A)-O|J(9sR#oDID>&=9F);PDMJA&rpds-pv3@*O;E-LWkekY22i&NoUuWC5C#qVfvIStlFY7iUQyw zE>WR4wXifbFFBQgL3{d@E3Cnc!P7OavKAYL@(3{aFfcHHiZ_s}V1?sTRt5%8h#>Pp zMP26fGgn#V86~H`xypK&aqsjE*I1nypHE*fkzHQ!Illly7y|=C3ljqaFQ|Z>u5z7K znX!Mm$8}bH&whRZaCpsOfE2qh{xoPfKocprXn@HjFfcF(Ac_re$=E;rz;#x6L6{O} zm~qoTTxTuU3}%27y`aDYxdjyG$YK!;3=EMB3=C1zC){9lH-vf5h7HxbAU@c;(7M6^ zCO@6yChLEu2DR;+w^*H+7&Er}++jVhmh|BVHb%3<;#KC=89uzB?eAG}91@B>%@LjEHf z{}T%X11ROgECBJ5E!YC_A>4!8(L!Vw3j>37J(3TPpecxDVPF8|Uzi0cERc#E#!o{F zv3xWK7NGH~(W0z|g@K_SlvZE{&V{xsVEhGW1}tWQ6p1kTC1^nm;)7ZPF!`lu9su!? zOqMB9z-2zAut(@pTNSvAcquU@@$Y?2D8u@%|W(k4sd6IWEPluAC~EY4_U<& zVf;WANF@d1tFSOIfJ)2G=^hVR)$3uxJgf{1;z-V5Wq}m3F!@K!sQlN=4B&PgO#U-7 zq^f}NUotZ=*ddws0!_Y!k%7S+Ij?{Ol#n#EGD1own1LOPkoEwKe-7GSfblOgLfQu~ z{tHG_2ft-xU;q{7FnMk!P)bC~E0Ro*$_S=FjR_i1(9*%43DrPPumOm?6vTw;07Eo> z541G_Gk*#r1A{JdUYW~?>VSD@{P}471!(*wj0_B3NFlfyEd(~8h0sn$1_n`31q*Z0 zE|`Mp4Ubv1;Yni?BLjmilDS71QB!OY6Kbhcffi8pXaNDLksOfBYekc9gYXf>XeSc` z1E@NLxpO5GYT7!>#K3@T;5jt;i%gIT9;W{}n*19k25@r(CjSv^A5zi)bt#Y?@ENQC z5%u4gP}9~|H2EKB@(j$7E(**-Ml?PXh>x5!SU>_uLB_|7>LU>}c`0TF22cYTW`Pnj zY6z+^qdHg%O}{fU14BKioewi0m>D(qg)u`qO)&X*wBn(W88!1XF{5UVel!cq(ezg^ zGt@JEHkFf&5B+Aw)mMo1fG*7P&aS^XJ< zr^~!xwKs&t`+N>aa~RgdT94MGTEYPdmCorsFIfErVJ*C~kkX$abNibYtl8X*&!1Ic*l-xN`i$*sN)Qs;4jW3vk(>WLzK#g`VA5`M>v!iC*NgNCe zpl&r-0Rsa=C>yGSV%ZoNK%FX>d=wk1kE7Wb7(g92n0y!--x|q$Ur-}ln-!8CVHzCR zP+N#@Y^aU&5LR&9!9xg^4?CwH_{M6^Xt({xH`d$k^&QTTQJG$60R|=p28MoT0Z=K- zFv(effsuiMVX`x1WM(E*em0c95XxT+)xQGDUj@~_7Rp}_fZyAuV>f? zHQ+ErfZ-^Ve+tS!12y10l)eO&zYdkZ2{rgGlz!+e0PfelgR1`sRsRjD{s&auA21Dy zS{H~9*<2t#=Y;b4T_7PM=mK%MD3mYmA^;wtQ-G>hhRUl$`C3r@22j2+ls1Fvw{Q_) zU}s=pum_2Q?00ezVBlh4VDJG6FfcIqLk$duY6yjjM?l46pmYM1PH}-mVJ1|4HdGvD zUOv=8rBHJ!pz<{?0t}!w2tyrIpb2U~3sgfFl-~o@*bk*Axd?!}-OHf-l~5mTfbus( z_3wo0-wov-gz^tV9elz?pdOs)PC*U02sPje)Im3(8g4=5A42($p;7P#%6|vd2Xnwj zDE|vo{u@;Nf2cTl z{Pj=+c0l>NT?N2h_*+o^U8n;dLHSRi`d>onw@~r=4^YNur~`gN`F~s?sUH@{|6B#Y zqs44)kPzZ@gE)xS4Wf=8$`^+6MWK92C|}wQ5(0`){VEXodIk-sfVLYX$PA!-W2gp8 zr~%ecaXTpA0m^rV(r!@w-cWg8sCWRxB8Ct*0q`hI3RFJLO@M)qp`L-E1S(MGCIB9U z=z;S4pc>}6K}y2;Q2u(T{6;rOKHdSfXtx`r;5h;1pN3j|9!g(^ieH23zX9?fDF5Gs zN<4If1o2BK|BV|Yk-^dgqdO$gzzpDWha@^lcSw}TK>6BGzMeZIn>s=HuI>;A!a_L6 zU4S7GRD-8N6=b+WQh5WE-wZWiI+Q=l9TJ4Ap!~J&pde&m*bU|HgIaJJ%0K5Wz#uq% zg)5tUJ!nefKUA2>Lx6#Yfq{X~1LAH$4~VgfP`-)>#Gkqzkff#WApmaBIYH%JJp{m$ z9$`>^qzA+q=}>+aRK6O@uk#S72hUtgfC^0ZfCStkD1WJk09bxIl)uXZ60--P{3B2Y zUx4y2LmdbU_&Xkuyzl@@Kk@Jd~dVRi6%3p9!@n7fKgG&98vU*H=L`fE>ciz`)St2`O-Upa%APLQ3RW zQ2tz~K?|Y$B~bnfD1SASUI(>c15|zsl)nw?;XM#_^$hzxA&KrZM1bKOl)ebna2d+K z1~urGCnS-*hKj%Qgk(l$FG$d{c|n4l3rh2OK|)vrDlhH@@t`7@59%{P6+#3U7&M@K z9WO{6>p^J)FGz7?=mm*$GpM)))B-yw-vP>ZgYrF~d_O2Z0IEL}#0M2K;b50AFhqd_ z7#J90pbkiY@{^$QsZjAusCYJ1JP#^f1f|QoAR*cWm2dTeq?xHu{tPI8g_i(BJt)ps zdqMK)PN;%CUXVCH4&|Tnf&}?(DE}VRf>%)fTd2h!q4Za%1HVJ%e?dcl!5b2yOx}__)rbX*Yt+Oxh|A%;0^JR9hC0~m4~T! z^@gMgZ|{1Di+rI5!dhaH-jI?m32Hzp)PPK=gR-FxEP(Qhpz>uKdR#3hTly48!=M1IY zp|m%cu4iEI2QwHLf}swGgc=YHwIBh?PlBpTgYq+={2VAh530Tx$}feQR}JOYLLJlq zc@~tP3ze^f z@*9024(NjNd!g!QL;3T3>mdz}wNQZ#zL0FP9m?MYb@4GM|D-RZrFIR zg_!pp%Krs*5Vs%1$9#T}5R!xP73=*V8VsNU#(t0>vWN1Wpz?uGeuy6=U&lfDiGC0V zIDGy#j#ot0b@EyXhXZYm@$@dKY5QR+s5FhdTLxN1mAJPU? zf%4V;AwDvN@-3k1VQpnssCrmiIUK4U)>cmShd3+~OxH6o;ZG_5ifzsOp zpzZ%%0g!BW3@ULl01^e4p!};)2fl>z-vmIi;WsG%X87m6%u{ z#5{SZyiy=UzfL_=KtB+Y=7L=bK2nnHDsQQLLNC-}W%Fl$F zw*o4^8p_`VmERu-@o@cVsK5oNg8NVnj{+fa_ysEe6KVl(5X6T9L69gBhw`O@AO@;I z`I#0B00XGJaWEu` zoS^dV!H^)2hRVkUgMGx150x(oh74PDLFIdcA!%S*FeEq42^L`B1KGa{s$gv}B#3rE z`MZN5J~|CG@B-99PoeTJpz=SU@_(WFIYJ;7@P$D1%Y{HZs2BoCq?%B^PKW?QJ!qwk zB~-vB1mXiTIZ0xG{6>VWl7`K?g-?NIafK>7Qi{KHWG z(U5vbDn0`hI0rT85|q9c0*T{SP>bF|L*O@*{|~B!Akhfe0|{4}}yw7oq$sQ2B>Y{*zEhB6rOGAO?SN>@R}Yr`PfxH}Bm|L+Tf1o;A}g2iEwRKFd{-vy;%2JD6M4?qn*6b30b zE5?i&F~#eq=ykO)W!CP4YgQ1kMj{6eVuQYgOyO4nCI8Ff$%olt&H1SFMC zih$&bDNqAuK>4$v@(ZB+MNs|pq5N}Dhg^b&5Nz=J0hABxY`%+tq!Cym{0j{s&PYfU@I->_t7l*kjD+}5I1&;C za!>_|k&qx(h0>Z(S{EvB5D5t(GbrCO5|U`Wp?tqcNR&iD`LU6ZG?EA97e+$s|9YrE zQzRr?Ooj4iKpnIg%3lU`z$z%c4oYu=%5R0zJD~J#r~_gAgHZF%K;_Rz3NX}z)+1ks z3fzi>q|)b5{wt`D{y_Qvq4GRYkRarbf@CXDK>`{_6o-mSL1|eitpKH!q3X4ve7z`v zdhnF6HB`VZ3KFC+4K7ijIAUP%jDkdwH5Nk5DQ_mcTzDB1Mfqp z?NnnRX~Y<+-Yf=E^0`9!9x;$8^@)MRxgXTL&=_d{KRgB!r!i0kaZn9OP&zFJl4x?E z@_A74A}GHEs=pFyVGUHi0m^TN(rr-n9Z>bXG0^&d0@Q+OP=zz0^c*NXA1c2T%3lGs z0LEVf4Uz3o`CT!PG;k~il17flK#JZQQ2E<2kSKT&1FipGLj`_775s+M|DYBz#X^FR z4N7xCX+9_|6blI|T1m(9v&FO^Fy-<20l%5KuXF_N(hPhA!=0gM+7K8ZHAEdB}*Ml~mZ3b}}7#Oxf z&EEm#?}94d2jw4#g=7NQ7}GhZ{3WRT6{!B}Q2G{B{vMS75XyfFrC-KE`=;-q27H7D z$ag6JCzSpTHQ*nVW{iVGJzE?kDR4q*9;mor93)8yL;0{}4-!yy(olKXxO#{|N>Bk6 zC=FXbr3TfY83#$5x^a*+Xbe?n8V4yhY@q7wp%%jUE>ONFRJ}Kp9{}YC)k6isp$0@j zY1j(1SSUXMN+&}dkO}4IKpj>9eoT}8=>lVLiu~*A(iQIsCg&jA+3Q+@zA>ID%3@H zpc?K&6}*7*Uqc=E5z7Ap<^O{6|3WQ<@mUifQ3h+Da3(;~gkSqm)W8@hKORaaLDi)}4TMb{=RnmLL)Dc*lq-UW|kC6QS~H zP<|$qp9kd^LiuG-eq|E0(yxOGG(vp=`Tqu7Ll)p3y zQrfJA@;4+w62f*Ue-{r_!6A^q^aXir;@}v$1mZF><$rm0%I8Uj#)u$PKm@8l63UlJhJ^SfXmP6qm4~gl zR)@;#CPPY3{bWdzFox3RQ1v!Y^X#GGu;Si185$$7^42r} z@(-Z;ohsQi)?$dJN1D1T!Lq{7+*+1o+TBMi&#@3K8Ee};7)}^85?LP0%&YeC>0W?;!q6| zPz`cWzI-Yq4JfBV(u5jJ9y)fZlL`p|n7mmkB+g;$_U)niVFPW>PzQLWLYrZ}Py=BL z|AV0#!l86DR35hQKM^Vp+q;npmCuGcFc0dXVko~1%CCm<>tOopp^P>t-33+93)L_Q z%AX3Ap9$s9fyyt0@|QsQE1~=~P#*$-L}Uo%o1{TfJ;vWhvi}4I!R zL;xn>nGQ)rAy9+Ep$5SCF;H>XW{`NO1Jj@m&VZ`Vg{mun(#25uQm6-D{ObC2NN1u0 zs<0cX0LGsPb@5cF0n?%KbD`=NK>5p{{FPAt`gBOqy8)_y3zXggRR`OCQ@x%4{E?8DE|qRhVANj1~u?CRNp%&{Sm6~D^&e=sQ53a zeGHkdzCX}B8rSqX4DTL}T zt%pifKpjvERR9tPb=sSu3frM{H&lHe)PgBc{&cARIZ*z5sQSfF^Oj~p5+RJg2CBY( zBUHg=sDZFVvJgPhm7i0-AfcyVTp%yNODqIa!unwwWGnBs#%HIv;?}Ms81l4~8%0B_6&p;gn z+nsd@Dt-;B|7I4n|9=lE@GuLKuU|s>Z=eQzf?Dte%KrtG{|n_aXG5ZpH5(FQ+}V&c z!w2PyK>6ZOzATilkPTfTpavDtgeuU7@{OQ;3#bKFP`(3H-WkgGgz|l${2(Yl6v~f= z^5dZV6evHv9x9Lv6)4Dtr1DZIzXHmyh4LG+A*s9tN_RjV2HNfg>PdA$)%8N@2~hK= zLDkKGnl~59ub&T90BgZ4g=$;@rB_4cH$pXRh8nN~%HIW5w-?Ia4|UjKDE}ywhV557 z4pk4`uU5}+3Mv3oa29F+%tsfqA!!1(KkX(|J&b<`>Y#^E@h4CRzk>4LW zsCoav{CWlkrW{C+vgJS$4-b?U%7G*zQ7A0|RVR}JNo=t7>~c_f*p5BL97q(ZLB%zp z`gEcC^r19(10E><8$uPDKxuO*Z3U%mp|k^(c81b!P}&n}fiILFkOK)Z7(W6k9u1}A zpz1+SCCI=}>+SR6{;gLot*thswkDXxBi+8=&f&p?ugD!gi?o9;kdjls_d0 z+Wwyo4HDQc%$ZOF=0Y_rfNEF@<*$J9*FyOlpi#CB%HNp-iSq+c{^1-*BNdjY&p_2* z%7OO(uR;Z22Hu8hfTmK0CpnPX4wkLnK`j8sAp--$SEzoNkAFk;v*be36jv@JjluYQ zP`*<=beV?`R3U7Qf&^3ntmKn{%ELA}Dna=gxsb%D1yv8*{G^u)2?5hwNFuh#g(ON_ zDBl69-qZyu;0{&b12xbOYC#B8K0Fr^gkb*kf)+OE`h2KV5tJ^4npv3(Nq>z{@fIk* z2g>h)JALHP$E_S7>Rg)kUSLJc?%Rd5L^eho_B zg381E`T)v*2KDO;DE}Q)|3@ev)^Yw0<^P4M{|~0?85m&uB^mP|q05#Bi4BfCNT_o| z`Mi0M=of_Yg`w&tpnNH)de}xTStwrts!t^kl8m&V>UBUgsOW(00M&ykFo9|`hgx6* z<=aE$U7>srsJt(f9{}Ztf(&M0UXH8~Hux)8R(Gdm9w=P(7uPz@DO z1FE1tse@YB2$gSx%6C9%*w*+isDmd!)lY`1p8@61&J(BypNz2>DzFTy0cPPEs5orP z>w2jCR;c(6sDoikL=HgtF!>Wu{spM|%XyFtbqmVBn5m0c?~FE zJ0H5j#SkiB0#yJr&=P7fY>TgTJ|u}bLdBh->OG)*FQ|k3p!@)+d?=J34z(u=%8$v1 z7OnA6jmc0A8BhgTQ1Lt{T?D1epmY_~K@Cv#O;G*qP<|(r-v{MSfU2Jc<x3e1BF zEP%RjF_ga)%3lGsa1B)bCaC-tsQ3;je;1U$56V9PO$ylNQSFW z3E1|{n@|hyLml!6s{T2Y{|agmZ1?6HsQ7y*{RwK`Hz@xn)V%)?ef12C1&~b1SpZ2i zJOz+AhHZ8fg7PH_Ac;__0Fnq{TYTjTAc;;Hs$UJN9wx5?71xK-Mo{(UVDsu37%ZU% z!j^5@LKVRF2s;%(Qn4r003WCYK~R1uln<*3qM`gmsC){Pp9SUTLd`1y@j>NdIaEO{ zNPvNXp#e%aL+LiCd=Hf04|VWlD1RE%!Ly<27DD;Upz2Jp)5Ln8Co1R0K(6usBYK@?mkD1GS(Cs=gE|Uj^mYLM>{9 zTGR}sVOxk>q3U62q^n4PfdiEPVZ-E;pcc%48aNxOVF8rC7%IOKYVc|(erd3CjNt z<^O{6VTURFFM{sAfbF#BDTb^3*m>7=Ien zK-hAuSy2AGVn~TPzZhcAQmFnFP=~?FgSEww0t+@@uoWU-&j8yHw+m{(0jL3oq4Y5* zeG;O9;T)8I5vu+=lz$8ApnFjI5mX#@guqj%I4pO)1e;gS!0-;L@FQ4&f#DmJ{}ZYK zR%iT$%ER`hGL=Al%uxb~I&LUmumq9~g`qU;=n&BoNYqF|)ytF!FtCDhhayx!1th@0 zzyK>iG@%B|q5Kf210taO=o09_BRAxn2!;fx z17J($QcEClmJ8KT0JWeT%C9N`mv9WtP>VXD7QpzuQ1d21)lY@W&xD4|>=J=`@VyH2 zp$Zm36)c1DS3)g>@i#!l`=DF?HbX6j@pqO$aue*Vvcph5>}Zj*P!GX&eOxVp4m{q5 z8hj6G;1ekSIh1|{b@3ahk3K@hzm!0-Cv0^zV<{vpu#`gLnghz`hSGecknAd43P~fP z^-u}et_q1#NTPzR-Ias#RiNtBp?vr<8mNIrPe{%0?PBo^*6NZbpSK@t({NB|M2yhIr!@yJ4HB`B>9rFB3CGB7acl|kYdrr#7Q zZv{2i7Ag(eYY`1q9}l%42`Zlfbx;aI0jh2)RD1?h9CkFwEU5f^sQe!IXo$f0pP?4Q)c+`h6veQ!Nf^r^X$r4c22@-dO6x(* zH-hp_A#^{%|Ni3QEHcONlLqlmjsJ z>E)nupq_yN=A$yG0Wb|!Pzzud)|W$q7Wg65$F!`Av zc~Jg`9S1Y79FqTG$GFx+EQb^v51P z>S5>I^wdKQhMh;#4^;p=e`YGw2e9*LWpQODFMTw@~~5xqAMY7 zL|8V@s00-}3=H6G4$A-Km5?}tC6d-k$kHoVBAE&`csi7x3H8~WN=VmhF4O^wq2kM+ zK3omuuY<~Of%3OQ`Fkq`AZL>vfV%hyRN@qrz5vy587hArDt;Hre+Z?YLPPKkRQ-FX zy01|F52(67P;sUzNEESELEHaaRggFotbzokIFy#Hg2bT$R9+n_u3H6314dB31(a_K zRqp^5cZ2dhq4KcZ+kQ~w$?ib%HNYR zy>(c3%4wsQOt@`MFT@7D4qdf$~>E z<=22h71XL)4>f2rl->^2uoG(FeklJSRO1mSeH?1w87Tiel!l$?bO~x6Y?byksCwAK z`P)^{?HmuF8XrT0`xTV`7ODYu;L<0k_*W?X11kR)>cIa{K1($uR@kZ`$%Pln=dXsO zC*f*HauKVqhNL52=%OYWr~(BjtpcSrpc=HRA?e8g$~T7cVJG5SKrOO@%G*NaVOs;7 zpyIAjy50k-z!xeI0Ch2p9}aauG}Pc&C_fR(PlkFR6RJN4DqjHQ7emdfg7RyjbOVI0 zXK03MfLYiMHLw?IK|fS}GDHKzG^qR>sQf%AA9e@8l4?lXVGUIMdZ_-*Q1x4(9^M6( zuV-M`3uZ7de1^`fAAo8&0@ZK~Y9LJh9Mr-qP<_{-2Ht`4??d&&4%vDP6@Lab?*&x< zyJ`UjMo_8x9xCt^Bmim^LHU268vjELgzdLuu7M;ft{O-p;)T)zHIT$50_BU>KoX%O zR9qIym#=}OInara;QX&z14&d`P>s4!h5At1um)1kz?NZILDktpNA*z=r2*YiRJ1fT*EP`-36B$2@mT2rcpq!D$fyjCqF5y4J&GpL0mKA3qXQ1vhi zEurdR=G#Nm*E7IQYIBA_r~_agD2B>c zLiN{x_17~nG=Lcl3@uQJ_F71`>4a+Nhl)>v(o>=8XF_S%5{kJ{{z53d6smtURNp$N z_$Da5tyX}68aW#7yNq|C0uP`*cn;;if*SAv8oHmL{2x&MFQ|dAbNK#4Lm%b7CEL4K>Ar>+)s6)-s0@2{YtpQSI7=r{D7#PeNAU=li9iRrdLghW6d|xO( z0Ll-A@*|*p*kO>dP<|3rJ{9VL%mx7l@F@nlPzMx46_hnV@^LMc-vHIn(g4X;tx)yd zQ2D+FNFtjC<>;-B1Hz z{DV+FEQ*dp`DdZ#UVxf+1{{iLy zhFZwj2uTynjgT||n@;3_io*^L{R)#Mo6NB@h3tp zoC6ZGalE z1uDKBs(vq&e*h|f1WKQP%AbSEUu=RjXkh$X^-zVdG;j~<1K63UkD&&u|J_i5Lm&YL28N?h3r|7$XQBK{Q2te@ z`a4kmeJKAKl>ZXy0GI>cL!%7lfbY$aL^zuoucd0OcQt@=rne7oq$s zQ2uQw|6U6u-#>=(pF#Prq5OAH^t-ar+6gj)C+%7@((`UA@U z3zh#5wE%qd6$1kUYa7JDyls#)AkYR$6Jk)lWE&{R85m$YXk^=BM|TXfgm2FW#3p!%n`K^io$j>nQVNL>Rv27hxs)I~d?8umb4 z3^U*W)Ilep@~5FbyaeT6Z3AZ`hFehnU8wvMDE~QB|9dF^6V&`~P`dsXl<}_(l5H5; zAqKLxL-_3NkT~Rp^7*0iu(J$B+9BO<*cE6h?U3#@>@Eh=c1WDV&SJKN@@?C}X{4UP z0cwF8)B+Ev0@!KMK2Qq-q4L2{^^s71G*mtT%1?qA%#aG@r$gmor%UHR^%sHVLAT~Y z6@ZVIW?*2bges_q8q@@(TcHl?gv$4W4PaoH2-Od}fovL-54*ZxHk7{rYR+P){*@p; zDF3f%hh!VD00RTV7N~+Cc9OfhL4oDh-9RM!S0f}Rg4oI32gUZ9s z&zA0hSO}9>>VVW8IvvpZU%vyA$V@xHiGsnR0}>)Iz5`U=4Jz*mwZIQ*VE~jL3YCw5 zIw%H8CqU&>q4F6}^YS{NgH8odg|K{I0@VOJkFpZV*MS;P2UXt$bwCT$huu*5KBzqG z#PLZ`{xqokOsIMD>Y)M)p#rcAh?hZKxCSb}9vWn@M(R#z2*Gw{9fZom4%0Xd)emdL zUWA$tn~%EI0V$~JVRHfZp)Q1_fyYn-V8d`Pp%%hAn;$zMCF5VHI_6GDni1%PM5S0K zL|zHX*MQ2KLiyI6;3%$VfYoNsosgmtb~9j5C!}D3-6)dO2}v8NosdM9-U&&Buq#S( zpz^S3-F&D;rBLw-sQOwczX2>?&%n?I73c&DFfhQ*K=1E_q-q#{GF06(sQ4_XfiMTp zhw@=-UzR}mu%##~q59TB>5U+HQ2vKS!8VWp0|Nuh$Gf2l_e1H!PzS<-_#~7Mi-Pk| zJ}ii@Liw;LxZMfKhL4~gdD;o>|G$C;=^LnqPf!J4p$>wbSN#hr&(H;l3g#|ITysMC zJW!gy3leg|P+A;HOLsw{4yInV3wl<~3+U3Cd4{TAT@04?DRxuO6zP2uhbhL!b}3RjdZehn?ix1T_G5Ib%DN58GnW12ty? zl%4|B4?FpH7L*S=$+vz1)BxB~ze}MSVMqI}gld4D?7JSy-wF+p?NIf*q5Qp2^A17z zN1#4G4&|SO^3Oo{^$h2r0vDkMU4_y&Aqp67L;3fi^kXRf97?~2((j?_KSKFmq5SVq z2mgig|3mq#-Jrx+&%nUm4N1*hU;zdOo^D9$6@c=Ex*@3?b`ZV4l0{de6ZGfuV22}?=%dMVar+^>>XtrlJl->(9;3(9>^H7afq4aI21MWi|`UI-}4OIU- zDE$FSe}d9qp!7E={R3=HJp;oZsKHEv5Qne`LVV642=N&oloo-?i$Ue3ptKy6RuY7S zl$IbQBy^#CQ>Z?3DBm7xo~xiBWQmKLASB4Wp%Q_DkSK|O((zFF6eyhuH82~>FM#rk zp!{+uT>}-bgYui9d{`=(z|6ouSkaQ2@voJF-*dwX`3EH?JjwJAdiGe`}iQk0gfLIn(`6w0!1~Vk}oUEww zf6?T>voJ7NAgTWbnuRk&5|C$QV30=QtFtmNC?N5bSW$yqhLwRq6-oXBnvY+zFfhm> z$-iPj4Y7J&CI*x!;AUcAFhSC=mX(3Q4UMma#9zgVs(v>s1A{4&{0>$I26H6-F;)f! zIRw9+VI7)_mC+oeh~}WX(6S5`r?*)d7?49yj)j3i1z`b$Gz$ZR9unUUga!vO}AAYn*lgc>+~ z#wj-AdJS<%Iix2JDPPRQ1;MNB?ZpKdxEUB2ban0Q?P6o?a>OC!PQEy#94mzK&$9?H zBr-5Cq;Nno4~(D50kIawPv&4?&|+X%mM028KQkND&9)w{bus7shAfLJj02EDQ{4 zNLGt6L-I3By(=>$d%*ZM%&1ORXJ%lqVPHT+0!RRqKVce{Ff%ZK%5WHeIWq%;GLnVs z(D+N485n$#GBkb<18NX2XFyF2vl$@yA7=hV zH2w|H9W0K!uTk!2n5rI9dp81MN0Ml0U`>Xb=#?bsL?0+8fSuz`yXc#giohU&n3Y^WLb5?Y)eU_&j6yz8Nr0L(@H(0UohuVP|g z&_!}UH4|zS)S>aGGNA_XN+w990W+_Q2{p~sTSHqGFa`QdkVL1TpaA#fWoShLQ*(=z zfdM(%o}tOVMU&5ELoHA95d3;@30}v>z~G4F%ZY5L@w5`50jz#88>Br4bI=?%)Py!2 zjlT`eyc{-IRg*KB(ad!ygu!8{-hcG^*I?F9KWk(5RK?WIRK?Zqc zK?V(FK?Z$gL53?zf(+M`1Q~892{PPL5@fieB*<`2Nss|F2ml%Y0CoOB9e+@#|J(MA zTWt0$ObXi5SKeb&s#nm4bhiz(A^m(4C~ct)X=mF(<<*ocjLfYW7)qex28Kq)CZ=ZQ z7M6}q&MvNQE!u(%0t^fcvlt*vKF}IiP+MXS0|Ucc28h=|V)Gan80I6?xq*jO7BDa{ zEM#C{ScIf`F#`j`5(Wl_r3?&UgF%{?F)%QI8Z0Z2)U9M-U|2PM!3|b()&Ef7p(DtE z4D#|7Qu32ab5rw57-F|?xzF~OaeC?_wsX9z85qF!gUnttJ>d+SzGf`H0JsAs3$69n zA}Qf#U|@jBOHZHin9XPUgU4*&>I?ES^GZ^SQu535pv>I-vQ#Luw4kIYF|Rl+zbIG1 zK+o8;SRuJIDKl9&DYYsywMfH2&)7sq!BEfCOh>^$&kV%Ygj-Spbp*`PGBkb$m|u@@ zRT@|T!4E~_2cz*l(D-g>d}}nmB^v(;0|NsesN8|M@DWG=DVT1f@o%E>k1{YYcq6Ib zfhG@XjPWrrFc|2Wni{5M=9Hus8R!`qcAM93_1Df`Nhg91}RBtX^ELd zsd>|-pRpO#Gn_JlPcdNdT;uZXKb4pgQv^9V3lTEH+{=|lM2onpezH*2_U?2y37kUd&bP|F)!Hm^Cq_N2{1%5FfeRpgtQo7e9%~>FarYv zjL!;f2*UWBOps~_#^+~(R4Xw4YDNYITafo>6pFhnshFnovBuQ2{^Mo8Nc z#%E%Jl-)2sXqX1nS%>jK)`0rnFun*A19*@iGcQdyGcV0A(T{-vRu0>+K?O~kN zDioI#W#*+bF#MhVL6g0mNuzvvr51aUQA)WWxHVi*4vFNla>#&k1C-weoEKMJKUK*jGs=@(FaU)u#4KpBm> z1EQb517fZelveEkkGJqK=t39_rXYpW6|~u1w#V48zxNix^wRd&4)$N{is&`sL8Kz} z5Ca3lVNmI9I(_W~b~(kp`~u+75>WRAG-~n?NiC>sc??o(?)Z{{f#DSc1H)?u28K7F z4kn)f1E?q52d%WPatbhj23|lFDQLJ0#s?)5kg->%r%YtGW_&(#pnD23}K*D z$ONgfOE@7D3oQ%`44|5%Wcq`N?8<)M7$B(-ls~?M&Ru0-VE75jG)T44F9rsN-wX^4 ze;61T{xUEy{6ng}{)5yqGB7YQGB7YPP7j>K9>jQW`jScP_Kf$oKbgdC%*?1hU1A!$ zz7jJd14BV#US@K3YKlT)iGmdu0|T<{ER54Lr?Ic9UvpoOVb6U*hO_qt8SdW~WO#pH zkm3J*K?b1*f($AT1Q`q;2r}3|5M&5>AjpvLK#(E(fgnS}13`wV4+I&OJP>5q^gxi| z=mSB9*AE04lphK**gO*MSL(xM)hNg#t3^N}JGAw^6$guUHAj6@D zf(+Ll3NqY#D5%cx^PwOE`y)XH@kfFTx{m}IoE`}>_&yS3NPZ;9Q1D2Qq56>^L))Y2 zJEybDF)o^ZV>-LCX(_J&xOWU1>jPcc$O_Hdpil*k1+X(RFmQm5w*-Y20|WS=NzUm8 zGuWdUO}6*UU|-L|B*-{@<0N*`=|OYZOBs(%KQWixoUwM=Ja%_R$>|>R*sX1a7#SFZ z85tNv7#SFN*##J)85qD33`!0#KB)Z%D!O2NP)P_HTjrg9U>>`_BdmBxXM>E6!T3|r z_|wq%C9IGk<;?8?^V!WA8IMixSir7tc#KzoA((-I0aU+%d=2C81T7b1U|@jpK_LK^ z-~M6&`)M{oFKz*bP*9b`0O>1wO+T`n-CGdm=r0Tq*YR#wSi!!Y6)s)~3INc!#`Xtm z*-s}kUY)*1ki$6fDl?>QdY6#_Jgo)e-$UcqLXCyV8#6&N0*r44El*+m92kGPgAj*4 z%K+W694rxepLp=rK^PurT=7XFClP_X~^loANa%iUy#&3bP zePDc0TZjJyo0|hcUk6^hpM8AJFV2DC>fnhA{S11_n?|0VK@u42k`m zfq?-ueh8L;5+FTqp`|`UJ1ujo9-&Z;mX{@xE`YBo(zW+lcmA*2T~l) z%)N{oL83X+U1T`i82dmvH#7G$P67!!PB)d~2x6Qty+e+}m~rCtJ#rjUOw-vX?^aWs J{!@;_762kj{i^@~ delta 128722 zcmbRIKw;ZHg$>IYS++P#V4U2@Dm+=9iFNXO8TQSm7@sgsUdzS4`6cru7Le%XZyehh zK@9Qq_>9EjjQEr!6XVoGgG3`k%QRyH6Vu6xBBCH2lEtYd5EW)d$tEdDDJjN=$!SSO z1_qN2#6&?RY<|wAFRsjdne8GQJ2Mj#J3luYFS7tU2e+&a2QM2p8wVQ`8yg$1Dcj_H zB?TEHBOP8oUN&AZVCUxKVB^u#_WZrOA=%O7-pR0!Zc*mn0T}Ji$4ag^|ILk-M8|GHX9uJL7(~ewIGA4#rN#4)$|w zQ&?9qpJn^X{EzuOTPyQt=1Hr?qONYvX^BI%U_ng z%)Kl>S++ADXWh+miRlN+I>!Ah`rJ+UOj8)U*gM(Rv2SEw&Ay3!4f`tg4eak&jxbGN>tUS5*2}nst&3$L>pa%~EGJnH zv)p4o#d?tC4$}dam5eKx4>Dh5`^9>ht&#Z>+Z?uuEDfxuS#PuSvTtTN$}*R&pLGK3 zTGrWYw^-_XnP0FyVtv4Rig643LzX`FTTBmGAG4liy~8q*bv^4mwhOH5SU0mzU_Zlp zmGwO9Mb>`yb!_ihUa)Ln?PNR0x`kyTTNh&=%S84oY)@EUv%X=y$~Kj?ne`*nV%9y( zjV!NN@3G8e-p;n4bsO7VmhG(DSesa{vn^u&&UB5fm+cqRwR+~M%s1FpGEZWA$u^m- zoADOgZ`NNdhnQ}%v@!NEwz3^(xyXE)`7+Bt)+V<9tQT3%ur#opWjV*v$abFP0!uSn zH``X07PgHn-&s$wOk?X|o5Ir0_J-v&(@wTsY`fX^u=OxKXT8d@iggxi19Ly)J+=pI z581A;|6zK{_K0mc+cg&ZZsrE|Cv06U&=g(=?_aAJJ+MBVizZ$&}?NqJlRi6fw6INzE-7q$Ce`u z0#8{OxD^-_7zG-cco?}A7!{Zmm>o}SJHjCFkBNa>fywazLzV)A0+R+)fC6Kd5}Uw= z$@1C{#8-gyf>p37a4B#(epm+9Fkwu2N;&NTLATr+vQF-S_WKx;Cq$s%@`E7qA9vEP7N`P^g%qt1lJgA4-A>$64_=d%*UC1BqRM9UiCWJT2>wGbylTDRB!- zW>Vl*;PmBX;N}J~6gVCKAnD>%;B>r$#_s_+2AopZaRfcLf~bNh%r*vY1zrUX1rEmt z%b~7uWKiUs+~y@#{{beVAOu#?umY+=feoB$cYxvwY!j|X=2PHO;B=g@7N(CRehdS* z0=foVUSd;Vcf0|LGEgd0UjEw zd~*=&tI0;ba~St+KJR;ik#Y0n8U7xOO_Lw`i%Z-ANuOe4;8x&N;Bx0>QV>*NSKt)* zI9VV-igEK~?Eqt|KOiO0@MDB#1{MZxq)fu8z%6i+k(Uu1;OyB-+yc{>9U0wtr#}o~ zk=VQ;z<`nQ$K;2BYK&_pa|C^6Ts-+tP!Z>GCIx1Y+mBB!4-OEY%E-e9DpnRSf{GPp zM+OBZM<#)(lkWwWvdw5c$RO}^a%6}S#>9Zb9|3QUdySqjPu>;jJ_mqp!x=e^Kqb-Ozt4d8H4Qsn1h*a*rz6&#UwI5pFAVRi1G2{(=qzuJ)pb+ zjsz|RP!8Jz;{RisEEt=}|C|j}{;De|J2EP$30#=m7^}zlYVw9yU6AJ%Onw-fsnP)| z`M?fS=Vek*bLC}HkXKN1WE6PL#>2!7*0*tTUYs=J^T}Ota*WR>uZ#<0d_E~YpYi78 zg7`O#2PelSOkvzV`BOp+iE@mWH|HguW@LOm*(zC{@%iMaL;~FC~ZZ@aEYm(u~|4Os>2P3JeM&0zW1nOx>P-2I2*9x&nC#T8M!Q5l~gq0WpGs zTY*`DPl317d^1-H}0oPl3g84UDhAs=(+t2gHNsb4JGx4d67q zJu`}N$z-9dc(yxW>B;3;b|P;;eg~`MR$z0y1LjRWnWbY4P3K$+d;$}h6xn!qxD|vI z_!QU`_#B_SJis6Tb~u|NH^}eYpqiSKd-4J;S$;-OUIqm=1xCjkkU}IRJBRVd!Amif6iUo3$4Ri89Igt~T6DLnzkyFEXc(Q8lQT9EMOh5T!ZYE>n|A^Cbr}1_lLY zM+OasZI>pim03U~pDq^W+jYso942}2(&VXS24G2*$*;<^pe)OB2upNwWw|X_Omy;u z`NDj2F2l^#Wms@|^4s!k#+Q=~>qRH$RR|j$z6>^3z>z_p;q+w(YX%MlM#mM5SqhAf z6PU6DZZa#dD==y>tzZO^YZwKdGENq#7v*6CRTlyZLXPYLFDGBA(3Cj~u|xpm_zNI5 zGsqmKECmLEwUZ?)Pe85QUClR{wMtMNX6_8IxpNpDXIwbKATWKhZj~J4%gH`ft}M^l zc-SZ3s}`TUrb+>-`B9ak1We-su*M}YjZ7d{O*W|JW_&r>rrMqLIU5ff_hh{)S*X_C z)$VFAtrNgnr@*x;FgkXCJ>0>ZC2(`HMoj?Y^U0MphK%nvudb3D`N^F1>JSOp$w(4Y&pTK#Kw7kQhzXjA{DF@ z8mSc^*VaITo{4+%gL+XOW>Ca3DF`^S2)vx!(BO*XLluw@RX}>+K781q%lLBg#75D{ zrgMbNmYxNtC1ytkO@_4~HU}s%YcgyFu>~OPy&$#(gnbCamYvMlFTtY^vX)sv*wH`$ zWS)l0DUcjEGiWkg03 zfpP_iHK9qEZ{As0uFzmucy{u}CI`lwlRq^XGrpXx)*R3Hd~#beBFXFkCz(Brjx#QS zk|~n{qvHl}$b;hP=H$=K?u^eTTes*#0|R9KbR_d124 zxL$Pft5#4jfQlOKHfzRro88;07)8J-dwn}NWrKV&kBOHDqPiWfxfvkaL#0y}D zUV%Aua$JYlWS<%?%x*lXW|V`SzRvN0Kn8RM~%KvR|hRC}+!YPhPOXWb*wk-pL!_ z$}e^b`^^Q}1$EC-5F6^AwIDXsJzGF*aRo-l6BzC}0d~(B;@#8L1$K`t%smp|a1ou% z+bwK10q%5thAC$ptQlAo7#$B_*m(eK=Mh-S!V(74;09?h%sexBUAGM5^U0^XbD?R? zuSb~g7d)-$GW|M2M7WN1C-V9vlc`D2*`4=*gs@`1Cg=wy)EUXVOEsc14x2C>;DJCsXI z{@)9VRglpNeZqXp&w*o=8C2)2J~!F14^$e0BquZp^R0zTYA|d#H+eo>5~OnrTvDH5 z$GORWQ6zUEN$xv0Il3QatU{l#$N?nDBj-TT!J|4kv0scw0Ok!rftQmX_G>5{134S& zg>xV_I9KX2Ts!Ar#UQ|=0@5|vegeot-V+QJu7i|7mEQ-k!OArmo`BfAJj#<3`xT*q z33A69BzJs(xI+nSqQFFuiJ(ZEFke{Y4_uipLj$N@VBt{&E6al`>z^ph*LWUQg6J}I zo}av7BFM`iGu}=V=Ic6-2K1u-z_5#Uu=> zm=3`zrVrqXX$7bbgO*?gph~7h;3=pd`2s8pE;c6LngS|BL4||#RAE>x2Q~~|%RN9S zhZ>duGAspA%f)wyPOh8^3hcP)&I*VMToP2hNrDuw0p${KFGiAkGXIoF9)3_75eD_q zK$T*L=;Wkn!k!D^e$ixD31Wj6eO0W!h|hu4s5ZV8arBtVK`UYopkI;a8pZn`4h(M#aA2{R~8j$fKA zI|CGxAc+%55~nUrE}0Pyt-Bu1kWf2)=>UVHl)!8j9%*g`2FIr$t_+AP1>!bdKEU88 zEiiks{7g^-0hA&^sd^o}g{#Z3>5_vL0}GENI91P|3G#j7EY-;uW*R|l0clu?q+u;Y zg9M5Okdt6(bsk)?KEt9*li$w*c?2X0Dk7J_C3P8AT$=1VJC5T?tmPk|($ng0@q4b^-L#D;2q1Y$!qKL@d8 zLA@;oD+W+|5;U60=!jf%p=Za;_(ZW-t@ zOb3ON2BanQ9i$%WruP>oYtDsL{el>kz~m3}l%XLHDm-Su!%LrG&ZWs-^Fhf48jpPQ zFTzR|U53RMCvTh&3XjBDDwF@tw?Qgd-d}(z(`Wd6VRFF&kTO_=e1%KuGW@(S`P>47 z`qqmF7#w*(iHM1t$w7flmw^G)w|D$?;Q)gp8%SIXl(-r|%2+{MQ4n_`h|4W7n+4SW zRsq*>>>5lAju<{<0vk35q?{R~TbSFCQIVNP1ZLOd+J$P2FDEZqn8$c?vhX4+#-`1F zi$WQ>w}Y$)S-`^#N_#w9pwa-;R^=9ebl#pW7M9t50hWw381{j@#?B+c?RezE0S1BQ z$s$WYL2I!@!~6$x%gJw7Xc*6g zR8Qbe%3N?2r@-i_f!;>c0F_!guwd|53F;oEuQX?TK6(C1O~#j#Pp&i^VDeK|fs(Y(I_1ePR;>khoJ1$DUM&Y#EdVl21g84lY9FW? zhcyafFdI2QYIvY(m?l@O2K6@?8$br}P2Ro+H0E_}4X6_c5|dgh%r_6x-vfJk!THJ7 zYZV!vPmWz{&G>xs%(YgG&nI753kp59b*fCy*(N9U3r}`f2g>|D>%tkIPhPT4neqAL z6JYYqItfr8nGxK{ft8=ilf%}7sz^{qoxWZ;aT>%raM?Zs6vj;43XF~~Kx3T(Yr&n# z7mP~K?xZ7wA~UxFgTQi7t-FCaONBv!nR{(EvueFa9czs;gX04BY$Zk&1_cI3jVvW5 zM@B~mfwz;nH^^(=Wd{u*JF=E2u{m-Gbh9h5yYezPGAM#Zf*8!09&? zyupC!2HWJ;4eAOV>{$w20@qm-zzyID>}E_KKpPf#?@(lbtt$?3!G?F_y65KQ;!FW_bA~ zu;J@BiPhg>Q{)3V*pS)hv*q-qPRq9CNM z-@xj~SP1ftf}k1G3pS9T;|sPdfzNE9AxuV)=pN7jp5R(1g*GKM#|PJsFsyAcX9kCh zn&TZPH{=B(wD=<3lVa*aa%C5u$3LwxB6xg^I zY*~&|K<2PJ&IVDe0*5DG+G?tSrnm#HcmYTio8vMN#Vc@lvi>#<#SL)9n?b5LVZJ;( zxo4Y^J*G>3uzVQ66fV1WnbAC}1rw#i{J;{)7`V<633ju$|b z7~G5x2s6ImGUEl@jAtOtypEqi6v7=Z5N5o=WyS-z8Q(#g*&P3ZD0#R$9w5wk0y0Cs z{sv2y0z7%oxp{=akrkS}@31HeL6XxA7SPlSg94+1kQvhfP(nVyn&r3;%#ux1IYga+Of7W8y<0@=dN^>>djI5I+QJj0?W46*S9+(uzgdI1T7Gt@_D zh7vYoIs$eF*xDnkS&myk2C+Ks1W|}Yc>v+xBN#5(!IGs=5BK|KkWQFO_OK|5fGpKu z+5vZo2v(Pfm@%CIxnu*_B_|LrIR-M14W2zVAY8Hq$t9C*c5v3;IOPcrU`Gal-^|6^wBIpgHBqBw}2z@jLjzzCAzP~tITA}t_0kOC5H9jL6;V0y!* z#G#N5&YR@)Uhxo@ut-ax*) zSGisY6v7SciaH?r2b-cU$k;DzigFk{bGq4di*s^5SwkVn_s3~Z+C|ZEU4uIt?K@BLj$#(ng89z?0+pnH> zgH?f1LEMb#3W(-3W4ZvMIn0>OutLHPM1r!L;~Ca0fi>uPqyZ^vl^hubZZUEzusB*| zfl>=NhLyoF%sW|Ok2E`Y@cjkbWZeU0@*i1v85DRFm>p}fG?*Ab^|-hKvttE_qrf8o z%1RoOUmcj?bcNNNi32oTpviQG)tm`bJ~L`CVP-N;SSC}D1T{yb6toqz6vPy`1olim zaUOX>p1FI3L6O~& zMUj)qfyqHZj+eoaMUe|4%mbQbmRHbK(1BRSqy$RPJd;l!l$`wda5mUH(a9-CB^Jm3jDemaPI)MdR+x=k%HR&{%et;J?FoB8?Nbw6Ua=);-@-joj4uJe% zX3h-q3rNoK3dGHzrZc>C$OXzs%%BqN09%&hox4XEgdD*w#~yYia5E9qJe+KGO5Y3I z7E~}L!n_x7^X`Ehj%nOxxN#;#8212f+ym^!>73S&g}Ba`2;*+RjeCUEIA{yx1~a_* zc4xBvX_;Jz4F=FOVF*nVM$j~I11(K}J$-`>)FpAe0JrfE$VN6$NqL7261)!(Rs98o zjaNW6Lj9yqgr82pZD_i8gu#&qWCL;pLj80CVZ#|D8}yKD=(`6_*BEK!0NjRYAREBl z9V|8+K-h2uWP?07)Esxfbwk@*OF)LO3mlmI|B|RC7qrK~1?e$t04qKMX%n&`+Jsw} zL9OUa4WKj0zH<9zK@>v%tp5r_ah7LmJ{o zkQ(ALN-U1e9KMMDoB*h-fT%kGQa4%poIES2-?ehG{W)F!JFHm(%UM7JXpErBYI5~C zX}%Y13S8Na1z8F#jvNBdCoee%TIp~WOny6;X#+|kpaD>YEG1Cqo?C(6l~-PYPl4Z& zwFIPrjYl3dkSAfr^aB(G%w|kqK(vGz(+Aecv(KyZ-ey!}2UQv@3S0tPC!aqr>CwQJ zrJyQsodqPy=*VEk1S-Fs8X6iJ1k9N_K!X!ppajGSE*2RSxEz_v6u2Cj3mqBUvy`|U zg%r3Qg*>GNo=i5lkk2?_@`4N5j1wmFT(np2U{~PI289M#s{*$IyTB80t8N0jA`iIy z@0px;aclhqb_EVc#w;Zc$gDglKY|7{zylx90S!>GtY85xJ{s7v95+Hb@8Bv0T6{p# zIim*C9X16P(3l$=XtZVm8)#veiohJuxXc3NiUQUdsRs`d^^P{x^Y{|JL4o8vqX#SZTj&Oqe#Im}APnV4zv zx^05>6TtfCu)#Z7OCkDUqYV=f`lm3Xb@voBpyjKYf+}dl1MDDB8GE$}JYtC)NTBKv zG++)|>BN@hxCUeks{*4EDAXWB91jqMYzM;99_Gn2H%mjtI20JQnIEu1Dr$$&0}Cvf z7l3L{Ms4O7P*Damkmw3f-Q0j2eN{Rb1gy86R3`M?#? z6wsI$q;zCd&;r>+z@iUui+19(=mWx{FJO!6kt}k20XJkf$Ph-yJs^q+-kp7c(EWx9 zCCz{qF2FVK1LU{;WT>wJLF`2)*7%ERNA+^dbL9D2UjOv|X0@d{zOedH?eR5FZ;R4k_kU$ss%I3-oYC>|E zF@amc<^&=H$Cb+>v6w{s6*nN0^j2pp_|y03)ar<_48> zJPO>f!b3rq2%C4nZN84r<{e;*>lr|$+aAI;>kwh{2Dr_Tp+=C=Sp2*JY%|#6Eop>p z)+WMc(0VFHM^I=(hV#&Eo@{tiw4OlVIxc`a{{<-Em>ge$C`Nc9UVw1-5+)^XXjE}S z+C4MinqPx-VQ8MgR1eSNb1-yIfa}JRc_tw2or0mW1FjRAciw`mN93IjxaNAM9t_ps*&6A)B4{#Ok_#LE;%dzpn5e7#-fy0x}-xjUsfkq4u zG!H?!P@6&PtKh?b{UCj?uGtetMR4wXzz8Y>I20Hac%b%y>Z@;TuDqNOu^piD0bKk; z$_LcazaEtKI@lFKg}@E4H+P^H0^n&Tq(a~ZBCPH(Dv3iKEDm))s0`phDg%(KH3m?% z2JR|q!g5JHdlssLklX`VvjuVwO3{Gso(l-~Tp{Ql=)xCWvq4@4ts?Gp&& z&Onj^Qc8d@HrK-#z+AA%?uxYa8Vy4OH;BQ%3HBY?-O z9RGrJaXWTAJi_3J$SVsFnwKDJt_O_^g2uW)QP{$!Bm<&5*dT-NGZ>L-Gn9lphfxt6 zqcgw>nM;9DfdefegIeSqW=wnVCS(Q1dJQIMLY@E)`90_f88Q@#n1Y&s@W>QKC01xc zW<^TK;y4nrp2Gr5X4Hhto>h-CAww4Ug4~0WkkQ@KfpAX`LH9rx-+~MUCuDBNdbEVx zfH1BFIiA4L1X+&@(v6mop>4bhczIX@E)J3M0A$4!NGmj5cZ1T0m_R+Ov0VVyTY|0^ zvYra07n-aWg7hLPtqi!<9CWRawN)Uk*wb_ZqQ*)=*9%z~1=70+WFMd71`vhF^AT`s zW6-tk0X5Y$n5M9SQu7RGYKAPOg0$kcz=jR#88w(f(6vLBO+i%dfT?8EVDdp%2w95* zQMd<5p$n=)E&(RckUpqa1sY9b%>qqgvj{LLvI^ASWp@;DWC3-zxm|gA6u@0XP*0Ep z#01Z5GchP|E3ld|2`F%b290?X7!|l3r(8S2Akf8V#so^xjuxPnDX1g04HQJ6A-e-? zSptWk$-)92P&OFus#g?OfVku?yCVnOA-oE*jxkw^P@7pGHiHI&xgGbwYzFmD9SvYM zAAs2m8X1DwYyh{}1l49n$1`l8h5py;Srm8`ctMMA7_*eP%|L#210h_Y{Ne#Hi0&!41%AnZ-?22G&zy?h~QUh-G zKn#MZ0XwJxzZ$SPA0C1{mJIP3xZ1&D&;zg{oNB-ZU4W@^WN{P`Sjx`8?Fbrxf-(dI zmQL<^W>)`#4PiWJG9Rq<1Cl$z^S7vKAbxoaawo(I;MrzWHDGfl;8*kG-jR9+#|21= zgg}$Us0M*8+km77yjBEN4cM{+_|<^Txd2n+$f3X{u#t^{71YRFu=()wPDZvDw+}D~ zJY5|0l96r29T0PJ#H+JxCm>Ai*T$+lz)X;r*#)LB^N53nTh$=D50w;{6*L?f3k6yy zH@~(LxdB%RS~)ud%$t1iwKU_R$!}jj7vBQfFR_OyOMwNnK}~~c0+XYHz(2;xuiwZq zewfVl)`s!sWcRn_j5jCme_OP>^?=@(i+9ZSwk$zKky? z|NZDR`RfM}wl5&#PEF?jXv;L=)?~kr3XC@==YQ-4s|aInfoPhn@LpEt>5oO?3kXK+;V0G*O1s-^t8Iyv%pc z^UY__GCsa9&JKrIKwEjXF!F-CwR;$qWyUlC6oym4 zy)V$dtSy@-ewoI|_;PZ=Px;C2-<%m=PVW8|q4j}TN!Fn zOgw_1t&yybj0y^l8^F?R4BQIJj%x0_;ARXcUUd{$6%?`smQLRPBY^h-*nE&8Hh~Y5 zWqv9!ewb|g6SS(g;Aa>pwtj+R>t__mieC*dM?Cly1&R)v-%b)AKqi3q^ugTR0JeDY zwBP;+<%W~B{|K@zfXF!gF<^YYx%iI|qbkD3Od3owO3bdjOrSCt8gV~B>i;oKUiCMW z@zkV$Zc1OkaR&+@IRz%iD{!8Q0+ZttFmH0kzv%|8ED9=$;7y(?3e1iz4`87R;!T0` zloXg8mw3Cm@+q({q^^{W-QUEAT2v2sBPV z!o;Y|w*|DQ9F)WNFl7lePyfoq=&5j%8B*Uu)=>(4VdCZC;RdO>!R90ray5U=GSNN#!!D`PU#N7m^NSsBe3uS}Oo|>M+ΝN2P?=91;-i#gdDAsG7`55HK-iHS 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 QwX;u-QdgXQO`pRS03rwMrT_o{ diff --git a/crates/apps/gioser-web/pkg/gioser_web_bg.wasm.d.ts b/crates/apps/gioser-web/pkg/gioser_web_bg.wasm.d.ts index 370d339..91b6d92 100644 --- a/crates/apps/gioser-web/pkg/gioser_web_bg.wasm.d.ts +++ b/crates/apps/gioser-web/pkg/gioser_web_bg.wasm.d.ts @@ -2,14 +2,15 @@ /* eslint-disable */ export const memory: WebAssembly.Memory; export const boot: () => void; -export const __wasm_bindgen_func_elem_229: (a: number, b: number, c: number) => void; -export const __wasm_bindgen_func_elem_1437: (a: number, b: number, c: number, d: number) => void; -export const __wasm_bindgen_func_elem_228: (a: number, b: number, c: number) => void; -export const __wasm_bindgen_func_elem_228_3: (a: number, b: number, c: number) => void; -export const __wasm_bindgen_func_elem_510: (a: number, b: number, c: number) => void; -export const __wasm_bindgen_func_elem_620: (a: number, b: number, c: number) => void; -export const __wasm_bindgen_func_elem_302: (a: number, b: number, c: number) => void; -export const __wasm_bindgen_func_elem_303: (a: number, b: number) => void; +export const __wasm_bindgen_func_elem_234: (a: number, b: number, c: number) => void; +export const __wasm_bindgen_func_elem_1460: (a: number, b: number, c: number, d: number) => void; +export const __wasm_bindgen_func_elem_233: (a: number, b: number, c: number) => void; +export const __wasm_bindgen_func_elem_233_3: (a: number, b: number, c: number) => void; +export const __wasm_bindgen_func_elem_515: (a: number, b: number, c: number) => void; +export const __wasm_bindgen_func_elem_635: (a: number, b: number, c: number) => void; +export const __wasm_bindgen_func_elem_515_6: (a: number, b: number, c: number) => void; +export const __wasm_bindgen_func_elem_307: (a: number, b: number, c: number) => void; +export const __wasm_bindgen_func_elem_308: (a: number, b: number) => void; export const __wbindgen_export: (a: number, b: number) => number; export const __wbindgen_export2: (a: number, b: number, c: number, d: number) => number; export const __wbindgen_export3: (a: number) => void; diff --git a/crates/apps/gioser-web/src/lib.rs b/crates/apps/gioser-web/src/lib.rs index ee36472..edc8c3f 100644 --- a/crates/apps/gioser-web/src/lib.rs +++ b/crates/apps/gioser-web/src/lib.rs @@ -79,9 +79,16 @@ impl AppState { self.sync_active_class(); self.sync_taskbar(); self.load_md_if_empty(element, md_url); - // Actualizar hash sin disparar evento (evitar loop) + // Actualizar URL con history.pushState (sin #) if let Some(win) = web_sys::window() { - let _ = win.location().set_hash(&format!("/{}", element)); + if let Ok(hist) = win.history() { + let path = format!("/estudio/{}", element); + let _ = hist.push_state_with_url( + &wasm_bindgen::JsValue::NULL, + "", + Some(&path), + ); + } } } @@ -110,9 +117,15 @@ impl AppState { self.sync_active_class(); self.sync_taskbar(); self.hide_deck(origin_x, origin_y); - // Limpiar hash + // Restaurar URL if let Some(win) = web_sys::window() { - let _ = win.location().set_hash(""); + if let Ok(hist) = win.history() { + let _ = hist.push_state_with_url( + &wasm_bindgen::JsValue::NULL, + "", + Some("/"), + ); + } } } @@ -164,6 +177,7 @@ impl AppState { if let Some(body) = self.document.body() { let _ = body.class_list().add_1("deck-visible"); } + self.sync_page_controls(); } fn hide_deck(&self, x: f64, y: f64) { @@ -175,6 +189,35 @@ impl AppState { if let Some(body) = self.document.body() { let _ = body.class_list().remove_1("deck-visible"); } + self.sync_page_controls(); + } + + fn sync_page_controls(&self) { + let exists = self.document.get_element_by_id("global-page-controls"); + let is_visible = self.state.borrow().active.is_some(); + if let Some(ctl) = exists { + ctl.set_attribute("style", if is_visible { + "opacity:1;pointer-events:auto;" + } else { + "opacity:0;pointer-events:none;" + }).ok(); + } else if is_visible { + let Some(body) = self.document.body() else { return }; + let div: HtmlElement = self.document + .create_element("div") + .ok() + .and_then(|e| e.dyn_into().ok()) + .unwrap(); + div.set_id("global-page-controls"); + div.set_attribute("class", "page-controls").ok(); + div.set_inner_html( + "\ + " + ); + body.append_child(&div).ok(); + } } fn deck_el(&self) -> Option { @@ -243,12 +286,6 @@ impl AppState { }; let html = format!( "
\ -
\ - \ - \ -
\
\
\ {el}\ @@ -448,13 +485,13 @@ pub fn boot() -> Result<(), JsValue> { install_deck_delegation(&document, &app)?; install_taskbar(&document, &app)?; install_keyboard(&document, &app)?; - install_hash_listener(&window, &app)?; + install_popstate_listener(&window, &app)?; install_raf(&window, &document, &canvas, &renderer); - // Leer hash inicial para abrir página directa - if let Ok(hash) = window.location().hash() { - let clean = hash.trim_start_matches('#').trim_start_matches('/'); - if !clean.is_empty() && clean != "" { + // Leer ruta inicial para abrir página directa + if let Ok(pathname) = window.location().pathname() { + let clean = pathname.trim_start_matches('/').trim_start_matches("estudio/"); + if !clean.is_empty() { if let Some(el) = document.query_selector(&format!(".tip[data-md][id='tip-{}']", clean)).ok().flatten() { let rect = el.get_bounding_client_rect(); let cx = rect.left() + rect.width() / 2.0; @@ -469,14 +506,14 @@ pub fn boot() -> Result<(), JsValue> { Ok(()) } -fn install_hash_listener(window: &Window, app: &Rc) -> Result<(), JsValue> { +fn install_popstate_listener(window: &Window, app: &Rc) -> Result<(), JsValue> { let app2 = app.clone(); let doc = app.document.clone(); let win2 = window.clone(); let cb = Closure::::new(move |_e: Event| { - if let Ok(hash) = win2.location().hash() { - let clean = hash.trim_start_matches('#').trim_start_matches('/'); - if clean.is_empty() { + if let Ok(pathname) = win2.location().pathname() { + let clean = pathname.trim_start_matches('/').trim_start_matches("estudio/"); + if clean.is_empty() || clean == "/" { app2.home(); } else if let Some(el) = doc.query_selector(&format!(".tip[data-md][id='tip-{}']", clean)).ok().flatten() { let rect = el.get_bounding_client_rect(); @@ -488,7 +525,7 @@ fn install_hash_listener(window: &Window, app: &Rc) -> Result<(), JsVa } } }); - window.add_event_listener_with_callback("hashchange", cb.as_ref().unchecked_ref())?; + window.add_event_listener_with_callback("popstate", cb.as_ref().unchecked_ref())?; cb.forget(); Ok(()) } @@ -615,22 +652,35 @@ fn install_deck_delegation(document: &Document, app: &Rc) -> Result<() if let Ok(Some(btn)) = target_el.closest("[data-minimize]") { e.stop_propagation(); let element = btn.get_attribute("data-minimize").unwrap_or_default(); - // Origin = la cajita correspondiente en la taskbar (efecto - // visual: la página se "encoge" hacia su entrada del taskbar). - let origin = app2 - .taskbar_item_center(&element) - .unwrap_or_else(|| center_of_element(&btn)); - app2.minimize(origin.0, origin.1); + // Si el data-minimize está vacío, usar el elemento activo + let el = if element.is_empty() { + app2.state.borrow().active.clone().unwrap_or_default() + } else { + element + }; + if !el.is_empty() { + let origin = app2 + .taskbar_item_center(&el) + .unwrap_or_else(|| center_of_element(&btn)); + app2.minimize(origin.0, origin.1); + } return; } // Close if let Ok(Some(btn)) = target_el.closest("[data-close-page]") { e.stop_propagation(); let element = btn.get_attribute("data-close-page").unwrap_or_default(); - let origin = app2 - .taskbar_item_center(&element) - .unwrap_or_else(|| center_of_element(&btn)); - app2.close(&element, origin.0, origin.1); + let el = if element.is_empty() { + app2.state.borrow().active.clone().unwrap_or_default() + } else { + element + }; + if !el.is_empty() { + let origin = app2 + .taskbar_item_center(&el) + .unwrap_or_else(|| center_of_element(&btn)); + app2.close(&el, origin.0, origin.1); + } } }); deck_el.add_event_listener_with_callback("click", cb.as_ref().unchecked_ref())?; diff --git a/crates/apps/gioser-web/styles.css b/crates/apps/gioser-web/styles.css index 43bfe56..bee8dc0 100644 --- a/crates/apps/gioser-web/styles.css +++ b/crates/apps/gioser-web/styles.css @@ -254,14 +254,21 @@ body.deck-active-tierra .deck { --deck-glow: rgba(212, 152, 115, 0.24); } to { opacity: 0.80; } } -/* Head + controls */ +/* Head + controls — fijos en el deck, no dentro de la página */ .page-controls { - position: absolute; - top: 1.8vh; - right: 1.8vw; - z-index: 5; + position: fixed; + top: 1.2rem; + right: 1.2rem; + z-index: 100; display: flex; gap: 0.5rem; + opacity: 0; + pointer-events: none; + transition: opacity 0.3s ease; +} +.deck--visible .page-controls { + opacity: 1; + pointer-events: auto; } .page-control-btn { width: 40px; diff --git a/crates/modules/gioser/gioser-graph-web/Cargo.toml b/crates/modules/gioser/gioser-graph-web/Cargo.toml index 7eac66b..e54eb29 100644 --- a/crates/modules/gioser/gioser-graph-web/Cargo.toml +++ b/crates/modules/gioser/gioser-graph-web/Cargo.toml @@ -35,5 +35,6 @@ features = [ "Event", "EventTarget", "MouseEvent", + "PointerEvent", "console", ] diff --git a/crates/modules/gioser/gioser-graph-web/src/lib.rs b/crates/modules/gioser/gioser-graph-web/src/lib.rs index 3bcb260..36c4f66 100644 --- a/crates/modules/gioser/gioser-graph-web/src/lib.rs +++ b/crates/modules/gioser/gioser-graph-web/src/lib.rs @@ -15,7 +15,7 @@ use wasm_bindgen::prelude::*; use wasm_bindgen::JsCast; use wasm_bindgen_futures::JsFuture; use web_sys::{ - Document, HtmlElement, MouseEvent, Response, SvgLineElement, SvgRectElement, + Document, HtmlElement, MouseEvent, PointerEvent, Response, SvgLineElement, SvgRectElement, SvgsvgElement, SvgTextElement, SvgCircleElement, }; @@ -204,13 +204,6 @@ impl GraphWidget { .gb-node { transition: filter 250ms ease, opacity 200ms ease; }\ .gb-node:hover {\ filter: drop-shadow(0 0 14px rgba(255,255,255,0.2));\ - animation: node-bounce 0.4s ease-out;\ - }\ - @keyframes node-bounce {\ - 0% { transform: scale(1); }\ - 40% { transform: scale(1.08); }\ - 70% { transform: scale(0.96); }\ - 100% { transform: scale(1); }\ }\ .gb-edge-group { pointer-events: none; }\ .gb-line { transition: opacity 400ms ease; }", @@ -395,33 +388,37 @@ impl GraphWidget { g.append_child(&text).ok(); g.append_child(&sub).ok(); - // Hover - let rect_clone = rect.clone(); - let color_c = color.clone(); - let glow_clone = glow.clone(); + // Hover + drag + let rect_h = rect.clone(); + let col_h = color.clone(); + let glow_h = glow.clone(); + let g_hover = g.clone(); + let g_clone_for_drag = g.clone(); + let enter = Closure::::new(move |_| { - rect_clone.set_attribute("fill-opacity", "0.55").ok(); - rect_clone.set_attribute("stroke-opacity", "1").ok(); - rect_clone.style() - .set_property("filter", &format!("drop-shadow(0 0 12px {})", color_c)) + rect_h.set_attribute("fill-opacity", "0.55").ok(); + rect_h.set_attribute("stroke-opacity", "1").ok(); + rect_h.style() + .set_property("filter", &format!("drop-shadow(0 0 12px {})", col_h)) .ok(); - glow_clone.set_attribute("fill-opacity", "0.20").ok(); + glow_h.set_attribute("fill-opacity", "0.20").ok(); }); - g.add_event_listener_with_callback("mouseenter", enter.as_ref().unchecked_ref()).ok(); + g_hover.add_event_listener_with_callback("mouseenter", enter.as_ref().unchecked_ref()).ok(); enter.forget(); - let rect_clone2 = rect.clone(); - let glow_clone2 = glow.clone(); + let rect_l = rect.clone(); + let glow_l = glow.clone(); let leave = Closure::::new(move |_| { - rect_clone2.set_attribute("fill-opacity", "0.28").ok(); - rect_clone2.set_attribute("stroke-opacity", "0.7").ok(); - rect_clone2.style().set_property("filter", "none").ok(); - glow_clone2.set_attribute("fill-opacity", "0.05").ok(); + rect_l.set_attribute("fill-opacity", "0.28").ok(); + rect_l.set_attribute("stroke-opacity", "0.7").ok(); + rect_l.style().set_property("filter", "none").ok(); + glow_l.set_attribute("fill-opacity", "0.05").ok(); }); g.add_event_listener_with_callback("mouseleave", leave.as_ref().unchecked_ref()).ok(); leave.forget(); - let nav_target = node.camino.clone(); // pasamos el camino (logos, nomos, etc) + // Click → navegar + let nav_target = node.camino.clone(); let on_nav2 = on_nav.clone(); let click = Closure::::new(move |_| { let mut cb = on_nav2.borrow_mut(); @@ -430,6 +427,50 @@ impl GraphWidget { g.add_event_listener_with_callback("click", click.as_ref().unchecked_ref()).ok(); click.forget(); + // Drag: pointerdown → move → up (reacomodar al soltar) + let g_drag = g.clone(); + let g_move = g.clone(); + let g_up = g.clone(); + let drag_start = Rc::new(RefCell::new(None::<(f64, f64, f64, f64)>)); + let drag_start2 = drag_start.clone(); + let drag_start3 = drag_start.clone(); + + let pdown = Closure::::new(move |e: PointerEvent| { + e.prevent_default(); + let g_rect = g_drag.get_bounding_client_rect(); + *drag_start.borrow_mut() = Some(( + e.client_x() as f64, + e.client_y() as f64, + g_rect.left() + g_rect.width() / 2.0, + g_rect.top() + g_rect.height() / 2.0, + )); + g_drag.set_pointer_capture(e.pointer_id()).ok(); + }); + g.add_event_listener_with_callback("pointerdown", pdown.as_ref().unchecked_ref()).ok(); + pdown.forget(); + + let pmove = Closure::::new(move |e: PointerEvent| { + if let Some((start_cx, start_cy, _, _)) = *drag_start2.borrow() { + let dx = e.client_x() as f64 - start_cx; + let dy = e.client_y() as f64 - start_cy; + g_move.set_attribute( + "transform", + &format!("translate({:.1},{:.1})", dx, dy), + ).ok(); + } + }); + g.add_event_listener_with_callback("pointermove", pmove.as_ref().unchecked_ref()).ok(); + pmove.forget(); + + let pup = Closure::::new(move |_e: PointerEvent| { + *drag_start3.borrow_mut() = None; + g_up.set_attribute("transform", "translate(0,0)").ok(); + }); + g.add_event_listener_with_callback("pointerup", pup.as_ref().unchecked_ref()).ok(); + pup.forget(); + + g.style().set_property("transition", "transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1)").ok(); + nodes_group.append_child(&g).ok(); }