From 156bef6f4dde00e9fae6e81f88681c5a2bee8a1a Mon Sep 17 00:00:00 2001 From: space-nuko <24979496+space-nuko@users.noreply.github.com> Date: Thu, 4 May 2023 21:49:58 -0500 Subject: [PATCH 1/8] Add dist/run scripts/workflow --- .github/workflows/build-and-publish.yml | 64 + .gitignore | 1 + litegraph | 2 +- run.bat | 4 + run.sh | 4 + src/lib/components/ComfyApp.svelte | 11 + src/lib/components/ComfyApp.ts | 12 +- src/lib/components/ComfyQueue.svelte | 84 + src/lib/defaultGraph.ts | 2668 +++++++++++------------ 9 files changed, 1492 insertions(+), 1358 deletions(-) create mode 100644 .github/workflows/build-and-publish.yml create mode 100644 run.bat create mode 100644 run.sh diff --git a/.github/workflows/build-and-publish.yml b/.github/workflows/build-and-publish.yml new file mode 100644 index 0000000..8ba851e --- /dev/null +++ b/.github/workflows/build-and-publish.yml @@ -0,0 +1,64 @@ +name: Build and Publish + +on: + - push + +jobs: + test_default_inputs: + name: Test with default inputs + + runs-on: ${{ matrix.os }} + + strategy: + fail-fast: false + matrix: + pnpm: + - 4.11.1 + os: + - ubuntu-latest + - macos-latest + - windows-latest + + steps: + - name: Checkout + uses: actions/checkout@v3 + + - name: Install Node.js + uses: actions/setup-node@v3 + with: + node-version: 18 + + - uses: pnpm/action-setup@v2 + name: Install pnpm + id: pnpm-install + with: + version: 7.26 + run_install: false + + - name: Get pnpm store directory + id: pnpm-cache + shell: bash + run: | + echo "STORE_PATH=$(pnpm store path)" >> $GITHUB_OUTPUT + + - uses: actions/cache@v3 + name: Setup pnpm cache + with: + path: ${{ steps.pnpm-cache.outputs.STORE_PATH }} + key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }} + restore-keys: | + ${{ runner.os }}-pnpm-store- + + - name: Install dependencies + run: pnpm install + + - name: Build + run: | + pnpm build:css + pnpm build + + - uses: actions/upload-artifact@v3 + with: + name: ComfyBox-dist + path: dist/ + if-no-files-found: error # 'warn' or 'ignore' are also available, defaults to `warn` diff --git a/.gitignore b/.gitignore index 6635cf5..702a941 100644 --- a/.gitignore +++ b/.gitignore @@ -8,3 +8,4 @@ node_modules !.env.example vite.config.js.timestamp-* vite.config.ts.timestamp-* +/dist diff --git a/litegraph b/litegraph index fd56d0c..115bef4 160000 --- a/litegraph +++ b/litegraph @@ -1 +1 @@ -Subproject commit fd56d0c4e698b7a5bfccb1aa86e15db0f16120df +Subproject commit 115bef46a58616395d7d3b54a1421472ac28e519 diff --git a/run.bat b/run.bat new file mode 100644 index 0000000..53da77d --- /dev/null +++ b/run.bat @@ -0,0 +1,4 @@ +@echo off + +pushd dist +python -m http.server 8000 diff --git a/run.sh b/run.sh new file mode 100644 index 0000000..c673001 --- /dev/null +++ b/run.sh @@ -0,0 +1,4 @@ +#!/usr/bin/env sh + +pushd dist/ +python -m http.server 8000 diff --git a/src/lib/components/ComfyApp.svelte b/src/lib/components/ComfyApp.svelte index db027f5..23296bc 100644 --- a/src/lib/components/ComfyApp.svelte +++ b/src/lib/components/ComfyApp.svelte @@ -11,6 +11,7 @@ import { ImageViewer } from "$lib/ImageViewer"; import type { ComfyAPIStatus } from "$lib/api"; import { SvelteToast, toast } from '@zerodevx/svelte-toast' + import defaultGraph from "$lib/defaultGraph" import { LGraph } from "@litegraph-ts/core"; import LightboxModal from "./LightboxModal.svelte"; @@ -95,6 +96,13 @@ } } + async function doLoadDefault(): void { + var confirmed = confirm("Are you sure you want to clear the current workflow and load the default graph?"); + if (confirmed) { + await app.deserialize(defaultGraph) + } + } + function doRecenter(): void { app.lCanvas.recenter(); } @@ -180,6 +188,9 @@ + diff --git a/src/lib/components/ComfyApp.ts b/src/lib/components/ComfyApp.ts index 56667d7..72ac37c 100644 --- a/src/lib/components/ComfyApp.ts +++ b/src/lib/components/ComfyApp.ts @@ -108,7 +108,7 @@ export default class ComfyApp { const json = localStorage.getItem("workflow"); if (json) { const state = JSON.parse(json) as SerializedAppState; - this.deserialize(state) + await this.deserialize(state) restored = true; } } catch (err) { @@ -117,7 +117,7 @@ export default class ComfyApp { // We failed to restore a workflow so load the default if (!restored) { - this.initDefaultGraph(); + await this.initDefaultGraph(); } // Save current workflow automatically @@ -344,7 +344,7 @@ export default class ComfyApp { } } - deserialize(data: SerializedAppState) { + async deserialize(data: SerializedAppState) { if (data.version !== COMFYBOX_SERIAL_VERSION) { throw `Invalid ComfyBox saved data format: ${data.version}` } @@ -363,11 +363,13 @@ export default class ComfyApp { // Restore canvas offset/zoom this.lCanvas.deserialize(data.canvas) + + await this.refreshComboInNodes(); } - initDefaultGraph() { + async initDefaultGraph() { const state = structuredClone(defaultGraph) - this.deserialize(state) + await this.deserialize(state) } /** diff --git a/src/lib/components/ComfyQueue.svelte b/src/lib/components/ComfyQueue.svelte index b844a12..de2af8e 100644 --- a/src/lib/components/ComfyQueue.svelte +++ b/src/lib/components/ComfyQueue.svelte @@ -10,9 +10,79 @@ const title = app.lGraph.getNodeById(nodeId)?.title || String(nodeId); return title + " (" + nodeId + ")" } + + const entries = [ + { + "outputs": { + 44: { + "images": [ + { + "filename": "ComfyUI_00052_.png", + "subfolder": "", + "type": "output" + } + ] + } + } + }, + { + "outputs": { + 44: { + "images": [ + { + "filename": "ComfyUI_00052_.png", + "subfolder": "", + "type": "output" + } + ] + } + } + }, + { + "outputs": { + 44: { + "images": [ + { + "filename": "ComfyUI_00052_.png", + "subfolder": "", + "type": "output" + } + ] + } + } + } + ] + + let _entries: any[] = [] + + $: if (entries) { + _entries = [] + for (const entry of entries) { + for (const outputs of Object.values(entry.outputs)) { + const allImages = outputs.images.map(r => { + // TODO configure backend URL + const url = "http://localhost:8188/view?" + const params = new URLSearchParams(r) + return url + params + }); + + _entries.push({ allImages, name: "Output" }) + } + } + }
U|HbLm~_0F#Sf7#81yLWD5kLN4Zz z_xvQOoweq3$^C_{+Js<%F-Tfe&0~JBz_V#QTr*0ZX9=(3jZ_WRgNVn-Jh1mrZ+@TG?mhS`5;YLF>$97eGC z+W(np#>VerJ_(|N-vbKTl>Riw!d{cAE7G`!EEX;dg*oKrLK o~Zs^Hu*X;dE z1_ke@zY!Rjet;9cPlY-N%>{h1ZOdceBGKW_ESWW_hgD3%+zhy6|gXA!p0jM_xo18*@vj|jv^g{48J2-`T=Tx(i5ys#J%AorlcB$3S z5(BrP)B*50jM4@qM9ecKDHhQ?b+-{2QmedPxktKE7?sE(S@Tmwx`Dr$JtF{zli*HF zxN a`0lYa;mMp?D;}9*gbx}fX@N$6 zPN`ANz5KieyfT-Kz8_Dlze>%4h6LNaebdChOWb-cGC+_9>j=DL!%TKKG_Ql>kcd31 z8#|}047+jRySEi5M0GG#Ga7as2w}W$yawJe4b@HHlZz7$0=;@sB_l<7KWPGDCRjDW zXMOp>8{)iACB&>C3PMMf>~L1Dloc!+;?7urk9%vN%%4@v^~x#4aTqNgnq`M6`=xC| zZpBb{^1Uyqa;0bpkiQ{itNZt()Q0qa51*c6WqDDyo9Xv+al%8zp(>{jjoe$c#c(r6 znBh3Oy2O+)`vEdpOr;$p0H_K_U@?vbJvoYAU`Hly+A2+D7E1v%NukUbfS`pCF4pcO zt&`(&ig9D27MX@Y5BbHy4Q$cW@swj~UDm?&*UmI4ZQ{-Nn1zPKv02|syplQTTWaI6 z6UyT(uLNJvZwp#O;zJQFnsoG9Q|0B#UlJ6^%a<&+sIl!mcDTxN*! zl|_$H0ad@x(B5-+=Kb0-#p8t5^v3JaY5;M_h183HMb9$MT2-2b0}6}Iu2KV Se5y;CVc`nM VhxZxV8wSgBHf{2wN zdL6J_P@joLiRF`73MGUa@*CJ?SOTGRH}xtxi8L4$5sXU6WvcqnRxPk`B-lCT{N}wR zt|^#*#LQgL%J%KLf7=Obz^ZYpa_ESSlRb8TEdF#OanR14O4RX4*hF2G;3gPfu!zhQ z!HM$|GMEd>p~OrY+z^+Ye(>@>f-&a^iZ>9aH&!g@Nz9d%4sxc@j*{Z8cqqPsUH=uf z2jKZN-bED7VH1fw{*8h%cK`e9QuoiIXlujuJbf9gq)QqYIZX`!8J5y94=BBMuEi6J zi$pl&oCykaU8TjR1d`xuTd@b-9yZK4dII{ 5p87lwjFhz6`OWUcGI6L+rR99D1~=6PYZ}&=&cId zdUa`4rx(CkRgWh@j~_^w-?409M)=u=nU9q7st>clgPd1GtHbsjyY0CnA0mB0lwmfg zHuK(98nnsk(mnOjS?{#o*+j8{jQr(Ib7;B^+R(lgt_Lnk<^H4AfjE{WuFt5G8-Upa zb_T++1ykym!jsKp4$1%h4H5~-i>OnM#+%&;6XGG{CJD}Tu*t(iW|}@sZtMwh+ECCT zxpnE~CZA5|giRFE!T9^(fd{AsIQrn>HXI@}mMNRn%!b_6lA_Z=p l||oV2Er!=e$P1Hj;}kmHUrrM`GLp`ja2H&8?CiTi;ce! z`b6-G>kkPkfCQZZ`2Iz~nSQ{_i;KVoDn>IMSeT09TKkb@b0N1)s)mphBMB-C1eli? z{70+aXe<|3Z!@B2nMhIdlH#wgr9coeH_`RdXNBa5 zD!Wf=x+-LmZj`^c6F1_rRqbtJ4kLl?Z5 ~=In1HCw_?CS0SZx#egm^Y7 z8>^k(hpco^nQy>fe-{tjLl`r_ogS2?XwGQ^l}KM32vL1PV|*sn$>|q4Y2hMrrs|uS zreJT?%wads*@b_c!9}PD&=JB^XFUmLUQjlBvfOFCizWK !0pf2nuO+W2(zYl?8i1)E!(&@g0PSz )j#uL~C&mm)nYFMEB4;I}Q)-@07|)I~z#8Y1x;c%rjd?pa`QWqUvjXEQ5&e{v zx!UR^J6DvyfOeSYqO<{*>`4s~q2kFu)J#?)o45WEGY_bcsLg)jtG==cUZznDE@9j* z_wf_>9U{L+35 El)0+#7ff11V4f6ue zgs;rD&tZnokebbQIG ?fw)C6)xD&2%`*>x=X+Qg1R*@`Ky}iJd;yHm2 z=X_46pd4Mkwz;hcwp#ed!btN7Gy?yL3bUcgy|u~hGti0#SNDj0c|9Ym*TSzQc`i;G zSYgt(waWALfocPb-SylTIv=BN2#JI-LTzdVyKRI>K+?E919;$-g_sXYf{mTZU>m9k ztAZ$6f8^eo13f HpF zhr%J}XVzBEV!0{OD&iqf$tYU76R1Wf1fTan(MpOT&PjGY&t6mw);bZAN*?SquWNBa zgc6A_2uRtfF!jp{tIa;P7o#a^v_z>bRIkL~w2>Bxi@UW)qavM(Sfl3$6BpbaPGW@q zB>WuZmLvsHCM_6h{_tb+G?lkxQ{Y=g@J;ELjP1~gpB2%FWsE@k+`js7-vNi^$X*G; z3Y2)Ra;XaGKCQ}VYV$kK&z&g1`(;5xC9W0a78b(FpdQ z2wEGSm#Ef|?d53)+xb9L%ni!S`b;964YUhNLkVWV@6Hxem#CRA;z*pw)QpO_!LKA{ z!zWZwY!Uv|D8=<`pazQ;t=L&Pq|VZ#7e5Ac6(B)u7o(Fjp3ZP`BR687$+SyRh6X-Q zLA&>Z+%~P*wR~QHk_SmH>?3<6*akF*Smt2KPYKDPQfyhZE+9Emly CX7b `Qn!ZS5T@XtuKx@;5(1M& zj_ftNYsRjL%3|LZ^HgVr@=*(w5h|(=w@iaE4{k2r`L!}LN6$kcgKG}y1m~1JW)8DW zV9_f;0-}%yTtI6y{8cfFgq;>UCCgFT i^pIQ@JCTw4rR<>Xidelu#T;DpEyxA~}d3!N_csNd|lPJS*; zPh eLtn5nJokxQzrx!=nS%=%0lkV$D3>&&GA;?vt%a M^8>fu-K3fAr zV+y`iB$Ns;@P?`t;!Mfsz)fvNg=kXYSag`ttUH0vEBn0o`EheeGFeKS_Y24>Oh 3)ftDLVqXr7yPT7dl4iF8FizxvBe5Ob=O2nbx+pbQ}CK z55S&@MjTIwVCS<64EY+8nTuL}z%;#zauE>;w>X^*uGp)VWviqz95UynY|w{=GM60j zmcnzDk2O`iAg3S$tS!TH-^b@3mdef{GF=;8K%Li*WJt)mD&%Gri7U cn40~l^InR7XfgO zLFl1W*R7VuYNAd_V&wGD@K7Sl|gJ(LZvOAt4m^NpdI6##$j159)j;sRPwNl}4;| zr?%vR--dYY8%6^`Q@J~`j^3$rSRi~{(5k^K!OT~;jPrj;5^rb`(4BEAu4e~+Ham-d zC=6^jYL8-vvj8W~cT^L`i&uc(3M{Ejx(Foq`CLJfuPYv!GA+xkE{QQ+mSRw(Lq;G@ zE)rV6Va5gyXUpFPn7~+b=v&|}lp{J4N!>{f(IR#d9lWlTkd3c$mB1jGbhboFg9HVw ze-%N(Kh5iA6l@!&i6e(Q%ny-c%slb`HVwO)??&J%nYu6m4xudqxCD73v&LF^Oo5-; z!oiH-G%}I}kR9R)Wv}C?Wt1 IlOT>{%7NW BTam0bKbSb-UHk)kDIq=!gF?->9@xthC>Wt=I2#+bO6 z4IGt9`vQ$E{7wAPwue%_2$j;%@7}xr7x^ZveCustwL?n#3jE&BO79KA!n5n#CFFYo z3UNqcdM8kbxV&m+t5pk7$sxl9_2LWIl0wMoj|BQVxZe5@4-#D#z8ywqO;16zQ|`IG z?6nQNQg{hz2=qIgKlffYiRJ9`vFcIQ0nV<1SKjQ+7((F7VHo;t-B0wWPy;6yZgUU9 znL-p#ACK`2P=xF*Kn?v-prm}qqP|*Yv(Rh-TiRWefJC}(rb-RYAdH~__nvn$8g+g0zw8Qy4M1Ib>o?lG>^m2A#%B_oRWM !^RJm=4l><&6MR9KN;S?EsS(ZLp0;;2AHn~1?=)Gr54qF zmw_V0*EsW`rmlg?$)I5doa&-p_|rwh40F$R!+dPzl-O0cC7diJFfu6!1VcwX#nI ~$)kN^i$Uq7jgw+%w!7#tRWYqb`ep-WRCc$b3vxH>HAf#7Za}kywA8FLh zD*=%VEt=KmDu>|Q-^q_bFv@YbA-EbIx$Q1=H}1JqWEUjGV88IpNC%7Qs81Gape!yA z6uQp~E^B>>^LpGWQv*@^5(x|IzB+voY6N@j)j)!2Gw1Vc&dod51@XhTHVf}+PY#Kz zrDEVH2LnElV>+})OAQMJde(&VSVHeST$7R_MeBty>1BdncdxJBPv8s1fU`tNhoA3p zu2W@Z-mgnY-Quo;dHq9g71Bqw^ew3^_lI#0JMqU~>$H!(Wj_>Yf@25bA>CNmGQpl! z9V~s#p7J6}sxL6G(Ya!rYO4q)@iuCvgO 9_2))l2b92AP6BjONTda8wjN^B_nG< zc3CY228+uQoOPvXeS9nXvYd4Vmre0L%yLOW9p?nwHSm5adp1%1 FZx&Ou4ABMIen=sc_CA itG$RK+Xz-IJxxXvXZcrL%e90q z#>7Rn8J%LTD9)r<0aOyBIR!BY%)EMwf)t5qpRqpv-TQ>y_+eE@(m~KN1!69r3;z4H zO3josrvxD;;Jv{L5vjl;{Zz%uue)#79P)rS7Q4cRmw8CWCrOWvO3`S)SL@B~*2-be z?ma}t`vU2ZT?wBwp G)}7L(D7`Q1}zw1^_Cw+bphjk#~J Gh3l4UFmCtltOT8xOymoxY)^u@lh1 z*woyHm*l*yiv(zH#7m;iCd(*mCv0qHF5%%|tn4ADV(4LM$Yn&r&j-un#{CXpZS15E zbhEayapZR6CHWhd`~CW_ZUz$I-y%+yyd)a33P5372V)>BJu5vUov53+3o{8HERe^+ z$b?%-MC{)X@1J-{%$%I;xEUB+U0vy2S?FyYOc|KCxVRV?nHiXw>E0#i9Nlf4^xf!e z97+Fz_!owVv7@1bxt)`_tqt%mOnn1eXD40~lJ{}ofB9!^CoB8k@HUSBX5pO=1~+{> z1}1t&25W1E-!&YaL|xuN{_W8JRl`x`{UIm@C1XchX9q)LQ5RzyC(_>`j12!<-_F^= z>hExj3>l2AjIG~A9p9}o{b5pEQdZ%=HU6T&)ZE(cZ>@K-|B!StH~ELGKYaUZ lE3V88`&C~8*%@A$;i&a%w){LLdU^w z#6`!-WyncqV8U!dXQ jiZykjiK>hQ19UM=I=Nr?98lOT ^FKmr#tx3}wfGk*6C*t{>)#`PC5HPwoOf#V|Ekn?fWQ0Squ~~IFxGdnbx^Uj zwc;iD%PHVrntvBKkmp}%kuZ0BmvH~9=Ko#w%EtEp`t+|!U}gUI5D@rx;d1L6{>zA? zzKgNZ--h1x{xxK1rf*|v{653~T~hzmZ~lKtmjM$C6B7#?6CD#5lMx*&hmipt7l#2G zojxlIlQ9zur-2Cz$DinqwkA%l`VPi|rtguyNAq4ne@6qP`Zt->f6BX>8UMu;BQpyf zBO4tfs|qs{H#0N$J1oP$gJt+@PXAZ5JPiK_A3T2x{I&?Z>;0?meQ|kTs~G-!vHCY( ze^L1Vu>Cs^{|_y^L;uIf|BB!L(Dfg>{#OkAuY~_oUH_r$f5pK6O87t3_5T}Pu>Tx) zjBVa`K(6nHnN@4dqW6Okq=B@!2;dx03#jDvAk=#Afw7a&bOZn}$^UwRNGg$Cymvx5 zNy>^s9Y8>UVv+_=ouL5$K!Bu(po-h_&yLYrBS{CcB8z>>?e+B3uc~WiG90@2TZW?a zjCinJpnBbOZ=u;jJt0H@6#C|XA!IU9iRh>?xHU5;S5>~VFJU_---A=1!a*TZ2vzdS zQTIL|ABm_L^~1RGpHa%lsy>+d{xUtde(>UJS`ZNt0fdD$&K^Aj69FWkaDTLo4-!6o zt{VKdSeXAbzFVRYaGqzE4vnssrwyO+7~kiejk&>>`P*^+87%X6-1&0#_jf1mh6R8h zU3ciU7z#_1%`c)Sk3YcSx@1cvR+h~zV~}>BepdUhKaK9WtaxrbJ-WBm{L?N<-x%kL z%C7G1I(1x0kYALaN$5oDtM$5UD&0SyUmhRzj8!+i99=%&AKR~_MO0AhY5dmiUG&eM z)~gp+CVemGAL_k-?H`?+T6mtHuk#;FuBgi+ogAF@{?_ U4KXI{AbC{%oUbao>30I&>V2_0eQxg^TC(I `JcU3meUr4e{bis>+L=soY_9N^PYEZFUOZzMPI^@i1c*n7jLg!^#5sF zPZxa`TU%Z&I@+^?q1VNEMRZH&)^~%Uv$q~kTS)6wdNsd01-IdCrTtfbr%u%*Lvq+q zmkh+|=w7SOIz8<_%}d?~TerID9ppW%)+froX;8pQd2uKb5rba4cU`UfKh^Sn#fMQc zgk`(ob$e!b{(hLwyL+8)i}@eC-yMf;g~lYmC*(adz8{k5$iSRpII6SNA}@c-PH%5< zu(jno=^bwu@o(o(NDTiI<{~uLQ^)qH^E|tsO?qVl>A ->?V-HZL(+1vMj z{4{xQEKaWc!R#qgU#O#J%PL Wp$*LLJnT7;KHRwJ=70OA zRBJ9?p7qW4n>wBs->V4k$KN#h==gX$eJAYYpzs!C; z%Jykfr`bPSQ&XAzL%TTA+VcO@jq%0yXzF+?=2|8*>-v iYEiG{@v~7wN|h`kk8KE+XIb#Fs|1<$>wn%i*8G z`1|S^ZE!<$(1(V#^7Ab&!|#J$BUC7-e@^e33)g4%=cn)=8+@`WK6qUTfB1k2DN!Z( zo68y+_tx9;ue 3A`Y^^`F-Ayj8yxzF^+}_k!%Np;k{SlNG!hYxZi$}-HGnQVa{EDe<7N+v=3scQS zN3ZR^shtQ oRkuM%5G1o;B z;Fs`#uzk-s*DS&rhJXGX_VFv*$zwP41ZsqzyP*HG{3gB T_v$N~j9PERjbyHC>|l@;M@j+EPt zjfq(Aqs^MnuX3cfyROGk-v{3pOLl-=Ojw3`kS84xc#w^~myU?H=e}!vh8ark2LX;4 zpd*`Kp=NPxyfD$(=h*ma5D`^U )_PRUuWuX6+wm-nQCc+EEZF zilZ1H95ELwrw=Y|L3qI?awxm;(K(FYBgO{EWUrG*P~bTNKp07Qbiy9PhDJw470W{e zf)050!9xyU_uQBS#5nUzrd>#bg ez|YokgonJQiDEcl(;Hjqkpvw(@;@jOm;Kz$OBsnyl2?V9gFM9W zaY3g0{l+-s6=@#k#Se56iM%tl{nvO;+~6~RFTpD4T+b*7DAz^h>$5XN5bD7pFn sZNjgg#v4@Ro10FrCQD0r9F95^N&NEFRzqe*hFw5bA)mb44|9+isC?x0@ zuFX(5AJFwhCPa}*q+qw~?x5dO{VB;5)aaR*614Y1t6*n@3zKy1(@=>vT{kkyB!OU1 zL3%<;Xh3TCkj7@kZMJ3QM4@4~Wa~i$E(3UeV`7d%kclFk8@x1qfftNM9g$(GsM}eJ z GU5OpkC-#!d zscfq*QUakEC(SU1Uto7w#iL5G1cPE@?IGYfT&qnZ!nCAX;^Mgkcjm+a4Hp1tDo~U! z?V8`2mA_^n)+X85JUF(E;bf1p^N46PwGeq)e)64*aCT)ODu&wH$|{%W1$*cxfky(0 zd}l&IkNXzp#nS`;Q7VZKOwi__K8wTCk4_8w+4QL(9NM86eY_1D1U5f IYYJ#7Ui^hTBG-u@PuD2+gd4Y$ z?sq^|qR4%3g0P)_gWW4^j-0S4QbXDl{A+jhU5Zp1RI=5bA6q9VTW+Z1D_-jpca!EV zurVFMEv61UmE*UV4|!o}-l|dg{iNAMR~otL`H-uQ`r^BoC_98EQwPe~z~gDN)%_hC z0@9>5Lei!Tz*SMdn^<)w^W-cv#(Ioc5M1FMeL+d|$0|ZAN2{@u{^7RWxBKL`mB+0I zf_{$2I2@FYyXtlC=l5k&5B!gPTrWTThpT}V4*s`+ @#b0 zTR{N5M3KKA)+9D|(Bfx3G1;j2pIR!FRMM8+IT(R<)V0L5V~N3PuBLutGZu;=Bn576 z&FWwHdZ_`Mh$Je9)58_E3DC@|!U-5+e#46 < z6)0*CvO|pxu|F7iS5J5&)^W(OLlbx}e%h_H9rfjhnIND+7q2Q>8oA9c `)f zAtdO=3pjy+PLtxM!3K5UC6vQ{vmx{wdf$@~y= tcwCK;(#mZ&%^-r=WvCyMYS_4S!SIB8(rH*)<5-AFe0HCJ~6u z2Lp&O+sJ~5)Kc-r>-CVit{T=9_K3yp=bjnpM&%sxx(-bZ#e2KG|74R*vS~6*d|P9M z1C8XW5dW2$Z!&?AmXF$8t~4n;1E+MvZhk}&9XF?eM<7B1^O84yDw%>z2M~jw{P@1i zS{2jrtd8-11ZY@N0h*n`>SzLqcMMVTwd5E;D`2n73^146PzcX372;J;X2!%N+dCC= z&P>T>0WtJTKYH3X3vj;k3A0aLd9OpBiL{k#s~daHcm%3^|BOSdga=AOCGnv^B43AH z&^+&h2zzNz-)iJ~e%N9emZAqz>09io=^22}ykJ;~vCHc4a9e_#%-xl+gTOUibv=?R zJ* (^r#Yr z=5H+!#ORP_p7jY6a-<3>)FeykBzYuuC{a~$R@P>+j@mBeOI+;3JcuZ#t8$4eqg8Y7 zJ8mTTY(4r#2H#g2IJB?d2&Tw2RzIqy^Bt}bwJ&+TU7YRQ?kxvRr$Kw%aZmW!74No` zhh5l6>Wc|Tl;z1;8?#dbw&q(B7bWv3>b1{^mnEbC7dZ~BS&Z`Q4?}ST>Leb>74dka z5b)u4u{p4i;go)!U*r|-s2cHxI+8&YMAHF3oAC13ho;%%KYE76&h3^uQhxO-LC$v; zmdHI7L-`;oB3$9Qk|@9d*Du+$y8&rBE}{0tIeM2MjWl@ uM6MOR<&k^K~q}1)^JS=UM7d!QwFe>nNZouk% zGso-z?uw^Ky DrcfImFatn<4k$ohwd mO`+6u<8rjX z#SZe_q0t91b{$gnAl-ZS@An<0PXY6`i9}T5)!5$+B97~5XE+?JSZS9Rj ?JV{mR^H_( zk#8zL3-peQ2cx>uJ#?2inH*U|Kb;jo3bU$;vVu!zFs*w{c?sA (Mvp!@EnJd+Z9Oj0LHA+F|lURnv2=Wv# zKpxgDbWiNJMU)qSMiJTF5L5b2{gGyAQ6-NN&Kj{4q*_rNT#x`ZC)YQ}Pf-fD<_CC; zpQxOHk_jP5sKt@XDn2~Q8Kyl1xB_3sk2D1mP5&}W)A0_8h!kHj1<@coJXP1v3Tm3Y zVnEu@Kouu6A|*KxTMjp9lw#$l?bBI#pS$arw=)A(YY31s1xBeLKZG)PKX^59G0kMN zO7ay#BZvBd;{9gviLYcaC;FPPa>J4R3Ph$*LaN!)sA}6QB+AmUnGoLa1hkS!j8~DS z1j`36aq}9I;T98F3al&Op!6X87Q33cYV(!kcRU*=66}=Kb|ngdLSoHGE%HYl-@g*A zT1)0dsNt>>0u&Q5>()W?HE2N{rAv`02(mxyTqHs!9m`P5N_IDIz>{H1_K`U&&J>VQ zyOz(~w$o9a&J8tp=va~$_@O2MXet@}&e+Rl2P`p;IMuA+bxCQi%5X1e6+H2oE#V2u z(g!~!i^>kI9!L~XFcf+k&J1?ZL%5vfl2}o))g2~{`AC)@c#LmG>*&FfLyNNq6W??v{?;z$*)}0WTNL?7p ze(FgC|4eYLI%7v9H3BTiRFOaZ<>1_u5jkx0Xy1fz^hv~q5IraHKonk$UoP4!+oFpL zB2XD;yOAVDWqBc}-K#y$s;nT*Io8H;B`y#u&&*Px-?=F|4*(P4)&RR3I&^dyb>VYD zm^qBfw#1GR*ZdRo%+uBeQ3DxSAih-@rB$;@GAzxI SIzQfBm~56%|5h?5rPmrC}!;Z2-HkU>nS(B>M-K0?_fQ52w))xY@2$j)?IJ+SikK13?U8j?J9VZ=&R~dJO zhuDcK!LV2Mc^WqlVI1sv)Iadi4P83MK2{age>ZxrQ_>o=LTO2_ZS}rBPne=xU{Uax z8Pb$^Z4XHhA}Ye_GcuZ>i-Am^)@3nyuz55so?#^B?C-foX$soDd&`65Sgib5- xM7p6;P7i>gnbjEs|rMR%VGW^2n-q;jZ%)Qe$_* z+o- 2{OQ}Jy;-DaL21eAFYTycJrjDk4aw)emie$BcP}0* zz83?gmiT`h r6doLWhN#QQ z7?>*~F?Ls;DR721rAknV@T(((!uPQpKJq|D{MKClRhA9`g<31K0!%ztwyggMS|BY} zF~igkMA5&E6gf)q3)m>A >9e(TEd zj4b{o7gKWhssJIN^jFrg0nQpp-|C!y-!Y0IyP?Df5V9wx#vyl7Ijr6ML9!IO_gxwR zi8+Gx{;XvDZ1@6cUZ^&cwRz?-A+uLHfuA9?(sec^b#!0Eg94}lyixy}mw2iW>1zmx z?ZO>SXxxVocojgLUHZfsTN_Bz& 6V01>VMF-#rw~ z4s0*y7EE8)=X(_LNDku(VHmU`QzXgP&`KXyQ@1j5Jzd?Zm;Gn}YkJUe*7o!&^43|$ z(-Q-KiYrIx6zQQP$O5S!!a=x`>1h%j?W!D}--`2{LmxvHZAXRlaT%?+0mB9W+>AVt z0!P2`qyG+X2v+X}HUpxHDxe4qiXxc*)TKNSi1+pQEPWWRuM~?sjuypEi~h+TZvWQ_ z@kk(sOfOfNFR0%~W*X3~_51+jvg{l+<8$}-zZ{;p7Z8FWrk`;egev!%MZhW%>2@`0 zcYR{$I6q=vY5O|Uik`q#<2N;HmT=56iw&B z2PuJ1Yh}&eyi$BT#cP1SZDUA&=5=QO^Yr#-e8S#RA=b@u*dPW(nYHY(XVeN#pf7LO zugfJRn#$+e7dtT`Sp7++^e3Ya^4Dhg)DXtwAlc&eiwcou0zi@vgj-ER)*R{0@x@JP ze(i)~5RN}8Ed#Y%G&V9tmS|N}e%)kteth9dgN~kxSUL{-_E9zvp0JaeJ7rA?Tm3{U z$lZhOAZb{GKfSZ ^n>7>KSeA )yaIIpcw1Mbt;=uRjiGg8pB@`=RWL|o9=Q&?lM6^Aq z!ExN=hFXM;>yUA>e(`GOOO7CT8TGedsSqQz2WOe34Mx53h$G_ZG1i4tf)l_PQ>{j- zh=0-0MEn#eQY&r5HY|#DW$=oE*dWRzR{*DYcP`8Gvz<^7@A+Loj#8rmV`{G_z7p~J z-t2^qD*nt(i%+j$-1Uy8Dg)7K#U#3-Yg0);eM!bd`kjCil01?ragK5_hRwdoFiryn zX&f$7N>Z7G=Z|%9tlmTKFz6q*2H+y1LuYC~`%!YR&-NPWnLnJ91)+N&ReR#)p+jVf z8n_ok(2|b|pR(2|T0Wn<{ qZ8OgeeY)S@!u!HuCQnNZMOcWz3HQL$EZI=smDp-HlV-HTUOyH59y;r zr4ut@+#?E+n(zB`xjJ4_oFvX$Jj?S5dVy;-8~_ZKiz#8TOSZRbtD-(Dh6!4v^!>I% z^QD30*&ZF8Sh)b^6j-$4?9!K#{W)kE0}!`lN5H1|tSz7MPe$^TM %Kv0wJFG z_ky8X7n?PC;(hb2e)4gq;cp@Kf|>B*6WGHws5tCAoE#qyF+g@?t;rF`0VizM>UBGa z9kvwtW})|Xb*n~X406YxE3&?u_MW-Pvw*$x;#N5`^uRYSPp2eH@ooGVcfz~B=d^Jt z=lsqC5Jh3UW28~k+EQ^`HH^JG6N++uu7RBkG!sxZum9@0gc+fxWlGJRyJgIG6s}$R z7xh-%de3vKeUTF(a+a2&IxDOQf*pR|xBEwsjmNFqz3Vsa#b?yu9?v#Pmn;jmbCSeX zGXGxx+orq)@>&d>i`-6A1sV~{6PzU2!L=`_M|s)MqbBTL1AZt}e%#HIqT0pF0|{;M zXZ{J{1U+P)S=B^$&kID!v2Z)RGBd?$@rGY8BfhRNCr8TENrxirDa#tQ*_{88!Inmg zE6<&x#q91ez<9NG{@S@_Dwpie{BAqreM}}>xd{4{7_az^3u qSS?*O3_~ICQX~jy#X&zPFEE(e25_ zg&+IVV>L~13m!}RZRR+goz#|CU=rLE(r|njPejIruHZK}M-8xfXkn%q2NacmS-&)n zqFCD todv{H1xh>2#JNtemj_NvD?#J$Kn^EivL zR&pyM>+;n>bhrDL`KI0b4!p>#d*3?fZ8xlA_Zs6uSFBRv0bww=)Rb_sQ&9UKwy}Jn zmQb(AK;9t`HDGt_xtA^A%;!j2PxAc+KrFO0l$ VwaO$phLLOpS)tm_k#Ny5)Isz7O;z z%vTGa?M|O*Ev0k#e=I=5b!lZAQ4!#eA|ttL@A-M63BV?aN!LkPm2%q$+}3J;aOTmi zS3z}xeJo8<;(;i{WYd+x>X?-YjF1fVY&(Z)uCQ*{mD7&7{T%VLhMM?uzu=ld^MIIy zvB3N)D68o-M-IbgH+_dl5qQF2Rn}pr*w`%pcwg)SD=w96D$rF2pxupWoVs#HKcP`d zVjKCY= &mYL1c6G&T{>s!XL`+g9ElGv#~OLjBk?;XS7VG;W|bF nP3bng@FU ZR+zB$pM*~o5X!2l2=_eM|(2pwGt#jXAzOFiDt1p|#!zZ ^%gPGX_Uye z%MZsKmmo?XAIK)vAjw6uAgf{2XWdpEEU3}Tlbe;VuFWdz!3IsyP_+Xp#bFBEv0%IO zzo3smKphuAPX$7t5fBaC2U*I*(%#O}sjB^+3S2NaaNr6Z&dXY1a*t7HpB0tr&!Wai zx6E_B_4@f&eL;K;4TD2GEoT$Sa#<>Ddcxnr{FPFNQ{aXJ*oRcCY>v|N@*b2cn62Rq zC@F%H);j!-qjspZK2K4|V5x ^<<~l2&xkJ1u`Qy{pUZNElE}lEN@**GR7^u znDK<1W3q@dXbv8+H}-Rq{S&(D1_IO$OjNY8kHC?6(@^eo<;@TfpGR-khvAjO+-=Sr zaKN7fq-X^|yvhvodpv4(ZxEED?w!T-`$7H%I;xnWtE-RkpFbB|jMw_{bp=`!GG5(k zpwEHwl@(mXhJ~qB{>{HWnHLCRdyNbwChL|EcoVly#P{{##tXQ%?*B-Qe~*xWg4T{^ zA6)sM*c*p6gG?Rn=mDl21%9^DVj4@(`K9$W5RTeOAZKmDhZS6ba6D7#(=l83eB;G0 zlH1SvTw|5|3%LcU%IeU#VBAWWtT@bZC2pTQ{$wvRyEEof)j6*QTBp7uo}*^ib3v@f zH0|o~%GIS)PQ|f{WEuu^4I&oA`mA`ic6xgGI!We-&w~|bp~ikqol)k8D<~y#jk~^F z^M4T#z4Slzn;bSM#DEvik1wMSQr=Kod>ZRDA*-#ZNvZ6a=gF#yjq-l*{cvG`;UA)E zXq22xiIv+WTMR0j)hwAMKxZFv=|#CY?F 6~QR;z(7laDK|ycEjKhb9Sao~ zTg_yV5CB3;1=Q(Kevw;=r$-7Wc`I@cXo+VIc5Z8aPL_q!Bg=&@`kZ39kV~^z8(J$$ znM98*#hXzfK$T>o|7eECbU;2@%`!$pL}y9h2f}b!St%{HdiQY({S! yUP(`hWsRE@EKJEb;3 zY5PEHFe+|Q68zgvLnA;IUl+m8ID^dLl_~QhbJMQHq?D4z;k?CXiSSj*c`hc1lY-e9 zA}hf0?>XTB{auDJ`l&&}61y6@6Q_j2O0v2%JLhu=c7v$aYZde{Ot(Wr=_P>Hw+phW z)x1 (fRDWBMe8Sd zueu`UgeSeBgfDG(mpA`NRslvmZR-}hih)W3@g|FUz8IV{FCJj^24dJFsZvdBIdC1C zhDvZpYiVbPOmEjAjVBi>vmj?p@-VY_7$(~4>)z|P>9Q_Fp>J4~9IaPQpYMr{dHacf zoy|v8!%4Q-+jgtOJ46exzD0De#z3gXw=~DZL7eAWDo;<4Hq3|1z2Vgw8Se9mIZPP| zEGQc+#J1e+k(BxsSs|#g;J|P@079qHncmy(oHWTCl|M)4(X`2>@iHc84axuZ4zgtA zx4#&8MH;a3yw)_NE`Kg8ywB~+gh8dpXykh#$A|sf@tm>`nq;Sddc*pA3asSK(d69i zo<(o5xet8lBHZW0qxag1##?kF|J#=>vkifMsW66_G6_Lx4_F<&X|66UvQX-X4M%W| zVu5QR^{Z$j`IwpfB>-Kzc-Ke3{!5Ra*M5%mH&Rl|&W?=|*J+ec ;)NzFL=d(xZPNfK*@( z{4A3O&)3iXYc5e_tp*58W0s#f3X WzpKl)&9vL6)|ZSd`aK2b`hd)s5VYMA zqd)mc>qd@!pl?gjXPCgu38$Yy;5VCVgjbS3^;w)srRdOO>UkBvXCN-Fg8oGs3`WMX z1#hKg#p>P$nSsKks(5Z z2OK9z{s{($&G9w4HGg!vIq%ZM->lRz6Hv%8;jqsjzOP8e%8o~bs370Bw#c7pM%d!J z+jY`IpV06-sC*I8lWxUA``Wb@v3gVSG|=Zyk}+G6evlLP_`M3}jB|oA8Rcdh4`6Ns z`>It=SL)){swLUZJ-K8&K jM%xg_{|<{4m?k&D|aaR)aQ$w=~q z^v#)hpF(W#Vj^BU)3j+sKNtl}OjJ}Gl)O&W2 %9GRS%6VN0XPsq)9+V-VA zDf@ydwni+Tw `D# zPxzd#Ihb@?*A41m`qz&p?KrLK#d)Qmc0 qS!OccJD2RjHCnE?LQ;N)t6)em zl7RS-L(n!7`tKgXFGJ4z{ulmj^7;o~T1aea&e>)E{={x@c>P|w&r&g*@r~A6(35z% zE{<#qck$JYzs;4i?bU@C?fToi+2N4-+QY|LXRskUiAcFEWQNHS*K>mm4Fb bMKm(##r z_AknVySYDYS^g0HA)agg|6*r#9)|xo8p&t%x_%J7bA)B1!=hV3R)2T>2hY6D==?XD z{F@ZHZ`1K_k16h?Q -DvduixnMf_75? zvsfszjGZVqW5s(v^vr$GHf;EUupY@a sPSw9EGvM(bj1^aL4VnVpS z&QISk3VSV3Rh5?f3}~VQmzlx8O^xsn4YdwyZ>r)9R4>L(G*X%Ug;V>b@F!S5^dcUZ zR>9_U0Le^I!!@*uAqwM~$n-)Xa9_3%_(zO81D~av5o#k>vrXa{`hMyu9M}QQty@AT zHFUb~o?`?Gvz^q5_v%X!wCK38(^qOB#TO7$f1Ro$5j#!G+7OI>7b8hZw#kexk|vUS z*3fC3p0(*19Lv8NvPcKcO0B%k=5^T{rdMX3F%c+HJ?Gd-$oo%4 u){az6`rq+A|b z(Tg>qRXL=alk+VbSS1Q~uhm5_TMGIR#s%jgJS#2AUxkeqiCs1B3c2x6Eq>0v_(@<| zy1z7Am~wh>n~AndDW$sT_Jw1M_#bTeMa{+VK-r`1OabKg2poL}GvXSj5tf5;;v6Wl z{{(`Q^m``JCSUgKAD85%Nkk1nps#Bi7en48JICaY=<_Ig^laeOWnk;2ZFJ?I9ZJbg zTqv=7 D_WeE-$E*ooXORV;~GdHgWd%?& QD(^%^1q}VTVF(T?>+mO8YCEz2*APQH @xVOS$o$4FV*zXDAd z@Fkw`JuPM@#H*bDfMqn24A$7^0B&AG`>7AxUUgXPpG*6BG2-GdV0nCS14rXoyFCN_ z5+HIK1E4VVzs}P*SGf^A&*7u&@td62t;1)8XOgKJWN?(XZWu0h$lH@uWgqfC9_!Lc zZ^s!>cY;V2a^^Q%bDMSHTW6q?C$16-xFw@Tb>#GS+5m!*VURhPfBCu|?Nt%GScUmm z>qo)oD=fHCQo_e?p#ZW>I#1N1JKZTYQ=8<4N;Hat#6}4NXH~Ym1tN-nO3|fE%%`;4 zH-3W%Ws3#Nr)Okb;BMJ;XC)Ty(ehF8^G-xkrn)~)hH@;7@Dg>H$x4c0qFg|Wo7Ns? zQ`$6ExHp{&Co&vu*n}h8^SQ}ec-L0y1Ajbw2)n!XdbDBSC~?kRt_yW%DlFh*U<%o! z1ANh 5vN%xI&TE=KuIvxUBL@Ubw-JD ztrnLg^l(ubUB7)9Xf+LGIXTxy4 l3E+uqVaaV=|yAMv>yYQ@SGs` zMm?0?z*7P$K2!_HXA+uPwTT~7Nx%(5me#E2zghzO!9ga%&fk3nm1j}XsF(F1wgdUL zoYL)K2(X3OLk$jM_1|*Br#r%>s05#C;{CD3`JF}xlIcJnL19FS0!0=1tX<%(vBWeY z3E>ldQ82@>Ut_L&72X1OX9^M2nvkGFTCS3KVaJaT@^*z316tKy>A6QHe>*`{T*7{J zCu^y!454cnqJ4q1#nnS1Kj8eD{Tzd_<+MRxsT9Ok#dN*~l-?QVZSQVWewU7c!GPf- z;tlm&r(I44WfX{h&-{r_+g886x~Rc(!rfespS|W4lRnKcXCQFolqXHz@$bBPVegHd zuDb&8N&XMz8U^se>j8b~kSZrbiGx#n`%w1NMD+`lxli(+iO4$lX-Qc60{~#U$Lsk; z)p5zcR5I|#owuwWq$xbccS0kECcJ#&;-{2A^$ @1D{Ac`o&X z3S4o!yX1Fz`4KLWujc6}+AWotN)+{y)+C@2Rk}htypd67EEr@-Dm?-^G-oV=LgtqQ zq@l@Qh>4~cl7q}8yt*$pt@KHFXzc**L>d#&hD-4-ZUzF{t=vB+lv)^~1kx0X_G$r~ zSW3WLz30U~$FZ|aD@#Ft?Amiq5m=V{E6RW>O|-A04w{KlzWD%=)@Vg-^%rSVSg!R! ztKV&VH$nsD?Vkx;@Nf*^TQTHkbLbO9l{VPcKKq1&kjS0jrD}24B)(DCv8$~|eV#To zRgS#PR?DxhFEX9yxY8PLzO>|pTP; 5DC1<`vyq$Rm(GV=325$J!O z^h+asc|dSn?+JL{8}5BOVioFVqW1O1Og#CEKBOn9a+*6jB>8Yo8hC5ij6`49n$;Ko zz#p2W9!~ZsYce?i#GsGj4Ee_SX%Q^R^~oaaXC*GVnw#<$P}I7Kymc>b@o5ob7LB zRFu0bq@JvTnNwIosttQhLQ}%u=^fS}rI6}bcs8sI%puAnVoC~Kux8`w^2_a^8HP-7 zf*DSz28rSnqr2#vP)^%f!H- wlU_gT98npF{%-}^fc4sNrW-bCv-#N{F< ekJ*B84q7SC=_BUVA^g z=XHc^Igr4vYAFI`Zq|_!l_Zg(9WaS05%h>;k#SGESJx$C$SW!O*iPKuM@e6HhkM@v z@3(=EMlXFIET4%$_gnQDE30KoerMN9-TV0a+eP5pl2O3RF=!Zl+sp5kis49}2pS#~ zLQ$hB?1`2ps!Y3WVz=r6Ja5fXoV<6cQwiKKsf)j^p~n1TlJNUrI3+Ridy)Nd+$tm$ zByZx<#eh $ zVdB4+)GIfD)iR=9Js^okXwZIGE=h*li*|Fec{c-!&dpWK*qom`1JBo)*IFXEp+O#aYN;fc@ZyeXt6Q9jGRk`|>lTe9 zWmHh*wrZz){G>#*Uo7qZMI1=#QtC`z8^c3#_7N2ijLK~-8uVxK=uOd7n!x$e>SC4= zK0P$ajsPJEmXWzqrTbT0lHXq#$@*I>HlCi1-jI6-Zm-qQ)-4j)6}SC64-nwQk#LV_ zndLmEsV7k2Sq>1?s3j&{-#H+L(0_<*eZw``7}#C6Wv;uZE=GM4B4+I_SlfEO()&fc zwoW^w{uIKOF{)`RiiaiWKD)tmoj%4x?B&tvc+Zo^#$RtoWR!4>?-Zhh`E4Iu+=%PB zCL*g{r6kl;vFY`OKW<|iMhQm6k9+m;eLn~F7+K8^&Nq^R`Mee4%GLyjT|; ioYB0zqO>y*H=#=WJ7NjbI8_0 z<$u_c4`ZUCOL}UC`=*yUNK0!f(1pk {seMiBH*s0KS{ol@F8SQ9oodYg zEAD0JvY?WB^gD^>pxRuY5U&e7J))nEB0M>Mm_^X!a{V`ltW1z$*Zu2)nXlg_oyl)rl 34Vc&ZZ?Bk4_G09znKW>|e0CslB*}X_%zHh5zE4}7oRE-Ii9dVl za$K$Pgal=rEJ{0BhRVo(H?77BY8N(|@H6MKB-g3FN6S_&I~(}&bv+BUa6Umz)oyN! z>vngqB %nYFRGf>OKoC&ozOkq$*_}y8EWXQksH! zq{uZjc}4cN30p>sBmIvb=WHx6s)J6XJmX6-m#3#&bPz+dMlthpoGcDcc+B9xlh3*1 z6RzuwZ*z>--!*N85W!m{mV1p~D;6XMCOO7*G#%1}h7~kPr?Tc8(}*#ZG*cKfY^JBD zmD)s}K!I mu)?({HaT@7EhItM3QzFVU+tz}wdq`m@Oc$H437k0 F!GQOR_gC$}$GN<>)!vuoy~o8QgAG&$=uy-h #Bg94V5v8gM~Mf`G}iE1me=)`hWh@zFm=8I2$IaU?_}SQc`8~RbX!b zAgCPW;_r+vW_slY0hYJ*G6;P*LY6tFBMcw~t3ae1oI_xjxkSb=686O%!|VQN>6oO_ zbl>}QthDm!(#^-a=Vsma9 {F1c}?*(R{T+LF7IK=4 JhNbCO{aHYhk4Z5UGr@=CV529SCsz7JlR`668iLgT$05fAN7|f8-b%?BR|>c zjY}s^`>f&(;4&4ay7dVzX08g~(M|5pZtk2}YxDsJ%52t;(TV@p7obOfmE_~6NIu)T zyW)FtU4@PD-w^7mfE8?%`_-jVbj#a?Fmzg9O4D2D#G5nkPv$L(Tm?7TMMCeXz+=k! zQB{gLM~;IH0kWOa;|Zf|4*Q!L?(dNl?4f5{5rO@Vj~v_dFMz%&KLUkH;po*FGG})M zSbx(Q1vMhVBM1nfUV!`scrYB+9iheS TN^k+Am zI}(#x{SU_RZ>7ecdJx!Q5zux=PE*(HAxG~)a!Z{P&kOsvk|L|!SAf2vZlmXQ=41EY zfdG5oJVm;NjT+}@v!*%hGQLEFK2Eqyv9ipKKfYUC{K#cqZG_ZbrQ2QjlRUP2JFZvi zqs#p+Niu3Ag6;PR(GFz~wh^6^6onNFffs{CeS`WX5=27G@1__E=0YV?9H${_rDkLr z{cUfaS|zVpqPEc8c5Rs}cyQXilxgP2HH7c_p`Fp`wmKJl ky-Q z-cd9OL(*-D)6y(y&vTa*`=&UpP6my1)LoyV!J&XsMNg%dnxA@>%^oW2XXr!<5=sN> zqbM3UA2)6($dXPD61yZqXN>3t92lCC{F;tHiFU|d(yjICAE%*3C0u8~iYaf5K&LVw zGRu&Wg8!Z==65bB^J%wUe>wIF8@a%M78$2{1dqPcI~Pe3o}ZO!SDfk;=T-}4f=1l{ zCiOl~`0;QMvVL}cHABQELVRFxq|gS-_uF1MLY8lig)+La)_zrKf=tH}TFu6}zvrKi zvrtWxw{~eht0bb)KJ`%RPilAawNB@Y$s8vB*O@6Q0x@?K zNEINl>>y_lUs zxMoV7Lid}q)7BZuKLpn1dy;Zn-ly53zRASn0}Sf?m~egc&zj1v1y5%ZjZ+} zT?ddL^6Aqj;jpp$f}zh5oHxAq44hVbLmz{e?3dQE>kAtY$TK2a8rF-USAc*{^bpv@ ztO!} K z<#n}wyKp;>zWzag-KTCmeB6Fa3phKU)VEx2xib@a jI>yW^SfB8-a_n)t_o;dzbn0F@hY1Y;C{`-l z1j_`7#b2YrSx6_W_-mj9W&blsL3HzR8z;>A;lQ+xXTTEcMH6$KxU{F8nVab81O{u} zbnmh6eo0#;Pe|w#{b1*DK5fqrjQ|(zA~!E$IVd69?10#0Ux>ziJC%~B)+uW2ync1# zG~Q8VoR8>_iKEhYhY5=GG9F?(d|N@w0;YY?S4!@QHQ?jb>A74?z9d;hspt1!$hq;p z-&Yeyv-hHE{T}g?D|z7tBt<7sYub;U0pEp=>}n+i9g?s`doVCba}7cM0fKOxe gHw@+fm7Mc1{7=$U>!k{PA{p&s`DL*c5RXd(rv#QI-kC*YIDBt(ypp#qgd_qgbYg zsXc$U|DkWht@roaA?$^sAer+Jq&Z?S@{iQ^ao$&z(c_>+?2QYYz?1E< ga^^7~S$r7!sR8fz>M3OS xX^1cig}CYHX3Ws-h~H$)dP@U-4tK$P)gn~4ApH?i z#|JkOp*z!QVL;P??0nNhWS3h~9XlTNwm05ehUKDAQxM(WM-I9^7SlmTz)8)hRk6gB z#LL>6Kyv{AvE6#nk(l~|L5c=wU@Ys5a0%*}2zO`{US_gJkff5D4bvJ~1#;=o1ORmY zIWI7fyea ~r=;YlKp{pbeU~# zUk)#dl@`lVM)2YUBeGDZ1lLhy`$q9!M5J)dV$G56!|M1sJ`7neY^vIyY$>v+vodJA z3$kuH&`>>RNo1AowP%C8K|iB!OCW<0zalCdJ?s4BTxd`J$}!X=K;@}4p+>fLT}3>o zA!N&ToDpI^n(l@xG`pIV4X>pBZeWKA)}vF)nZD7vH@ICB?4I$ya}v(cmh1rdBprN9 zy{HeA3r+x$MQ>r4d6HIX9j@awu_#Iw(j#Lw4UP6TgX YI7mGJB2U8s`wB)6YgO8H zy-zKUes@o?W5xV%A*+!gz?0D7;knn>#2FFq+ova|+v^ZKZIyeYr)#{f=Q7g3r~OIr z6<6SuLSEqWQ^3>On}X334A0xsQZHoxoH {CwEe4CxbH_fjUYdv&oDOs!(InsGj z+ Zr3t%MI@&m*;w}pbaiu7#WS6^uB`qHe)G6{_qFhxv;O~+LYXF()A&JWILr -CFOqfVWw4MMd9kL24LI*?(gVydZLc}wp#ATFR&
taU=u zWtMVSj_P!z##^9&Gv72G%nmNsg#0jxwaChEz9>%OLPIZcsS#^AVn(K8GU6f|2K?B| zeW0>=awjEHb;0C`z=#gd^7tl!-Mczw7#pc!q+aQNM<}r644qzgKVz#r8BZbA=<}B~ zS44Mh-{D|g#cIdcuyC^hal$#Of|4X2L_$M&DrQ;A{n&+(EhYJt-A|V{kZ5NX#&EgM zf_VE^u}?)Feh~_Y0tv&||7dWdbi$UH!@L~RiNxVhV{VZgngT|>Sgfi3KE*v @ zaAl=m(O73FHk^_MCEta9sa6{ _nAJG_|RakhrJj&c5%evfI|))Rf!w7F6()- zQ&O;vxmsg+?Sv9~GQnJZfwpI^wvin&TtVQch|mdx3~@hZ7huRH#@6-X9wE)Q)}%X4 zhSa!z@U)<`*6j1-poxVG8TA2IX(JoKf?UCusS_F#%*F{Ql31@4`kJo%P$Ft_xzj&B zY2ku@Y!;^7lO%Y*xNmV+AeVIx!I(*>Gqjwo+@85#bWbZF>WM!{h(P8<9@PUk=TwYd zuj^h`*8F>WGd+ONe_+LQba@ksQEsG&y&!j6XRo093&X&@vcPK)y2$;^fzjKYXYc(< z?_2C}QQ+ONo3HCbWZuJJH{P@-m;ZgTim?CfKG$^Rmt8;J1~Tt9V@n*QSaMGcHMj%i zPgdeAAMQQp+11WyDr}z{kWt{{0ebqMMu0z |=I4KRTm9Ya%!2V)M|O%B{0){(X0w<=tNw*!z^pkivBbw>bIF*a?F+1`mI{ zXKX}#ig_xMO5CGmI^3aUi<(;Cyk7X(jgs9 kLx{8(yz*L` ziwk0Cb7bYepA|hd(7PxUo-Q$a%+em_D=H4_2jaI{{dRvq hgKUw$TD2nuxY~ll* z_DB!jj>0@dL`b$q4i7&+yI9t84l+#Nc1VW0XWnVsck+u&RSV2kC}{&hvFEju*~&6m zqz7|$+mOdCW f_a+!+x!j8Dp@( zXN5U@47n`fCAEQ*3`N?L!Qv@0WQ_7}_BCg9=nS0`uU_weyASHekMsQR_k?Kry!^%5 zzt=`{=0cE7?|^2+pS=7%1Ks~^tQ)-M2I!ispOu0gIs f&RNl-)#ThgbGO%dM->tps7PG6g< Qxw=@W@%i$J3|-yq zU$j}7Xc&ir@L?f<6W`I0GX59`3HZC_Arxqgv~vWS#Fl4tD3Vf|t3Qt>o7s%*Y)9E} zqC;%_+q2gFAUvF>L!gaoibv(mU5O{ZP-nk9ETxlN$nHRVQ&U33d6qeyiTqDHMdGju zIBTVFda3}g{RepbgomH=F;Y5kibQFPlaq}ZtW2!Ag1W+oWsqzAymh__|7Nlx8G1p% zss3M=3Vg}Uzva3+H{`Hg%XUleoO+@nXf>U>uNbj8%2TTR_$TT@#PPS0)3TIO@$$bZ zO&iR>5J+f2rS;TN2obg<-s0nNf15(ov%oauPm$D+GXK*VDWy?N&(B0r)FC H@Ajn_B&H|D32IWxO@?sVPV@TPjo&@rUFD<=2EHIfXTv zg;K@(L8&k)<$GGsf2Ols!daoaDatZXyXQUa?oERkyHB?FyWLsOJn@i6^L=W+G?>iD z23QK>V@szQ;@5fTUt*H04lX<=zu6A!?c!-m;8AtFSCpW1FSsb`K)>|Hpo6$}7hI0c zD>HdLg2F<*@wG$3GEB9m84LHazHBYd|7Mw>^YP=O;Uu4*MC$5Xi&zs4kNF!nux65G z<-l;h8zvq%)g47< isyv_AqGrnJ5ymbe%0Yy6eGu7$hbcRc8D$T%yGbxcJ-_hmvY=eyIcQ{dSgtpeG%@eW?AfMG1K(`Bmd1>o1MEt4Pg62PXvPq`%KXcQgnlee3 zx>O@p@}Fg5Xa6m=(e-hNsPM-636~SamL7}|nVw!I=Ns>(oKAoeIg4w8sg{A32~r%D zyZh&9%G}uF)t1X|t+y+s+d{%O^d=v K5=5zuS>C^ry zR|M|Im9VDolyl|Auqmmi0|Q)K19*Kd%mNfO^kg^pcMY4*Ui3{9O)O>9Otft!wtgk@ z{)p^D`txicb}bfCc1vS!I;%Js-XSnz(+gYy3xa }}jjz2(j@+To-M`a^sZ^3zqo7`?%pDYjPV5)TTJRD>6=>J zr |=Quk;(&Dw%`RCb83QnT(7WhIy8+!J 9C=<;DrkIm>hsp5iio zM$Rm`=gc483zukcm{C0n#YePHVfT{>V_WeLzMM|q?zv(=meN=>7x3C1(Mr}9ZW0xi zRHyxB#Ep)^;QNdMdK(2hClzxOqJx#8f->PHA*N5FPkL+pVZC&j;0 Y}!`qF=iV8>L@dsC0$}!H7=xt(*1dFw|r7#Mm3VLl|{rp3PLuoCoJp#tk zMR9F{Jy_W5f nuaO&=ayo2?B(c< zUnHU$i&CrrC5n349wJ6;sYkBzDB_>*LX$J4Lt{Y}ZC_~CD(@$^fGvp|@a2cic8fKh z(Ex|d-(vHbFn{Ir)iIWTuB505jQ*X$$NcaHGm~5(C-N#pZqJI2;C63w>kZ4P-+r=Q zBbiCDa)^zj6740+s4ZQ+cSswC9BnlNS5%%o1W8oT<1Z(ysL64p;GYutln+=Y7>wg; zxth |E75Y+*MYLT(A6AhRQc=o}UuCFosU5%AC6N^+4;XZ= zD6X`H#|$d>%`9=TEePtM{~@EyV6pv;$mE#X%kJ#hM@DgY=O=M>;o0nInp|EX1w-nM zF5(qi&9|1p8c)k|I!2_=qU*$petJLIgH{G+&4ZN$EJ_`^Nhg6S>SouEf+8Iqubl5w zd5?hJyM;RcS01plYx}XKlAADVWuwUHssq+Z0q;=Rne+-_bYo*>GblIc;v+HD-*~x; z_dkjjxo-;Gb$r=oJ-hR@csgBJ?S&}3Zvyk)U-DjEMc(UPU#7WpdhTu=Sr5zRMlF}* zRtl7!_rX~LYtN=RqJ%IZpUA9m)o?;SH$@~|y6C0rhRH?tfrFbkn<^8uI-7mhY#8MG zq2ptJ$m!kzb3j5DsWIWPID -DiI^o5S0A}o3RQ! zt$tgetq0_VnZ?L8b1-Z{%cDxoZ}CxMe8q2Q-Q-Qq3L%JHrMkqYyxxP&LS?^9xG|&u z_enA=6zsqD*mJ`cqc*_~OWY|1-v|=j1%_B-b9w?QD{VbdaQJq)>_7T)$i#W!AoTJD zE0Y}eO-iWsuamhtPu>lP*}q|rq9Z;Xrf#mXozd8uyS9~l+B{b*WIm{s)S+#0=*Lny z74%e%TrMV47|yd)gHpBil1zm6>*_U9{ypI&8Zk-6cH#g|KXht2A^!_^(%!OqpDVa7 zw0TOjs7>CKVl2~YL!$<4s!#Hna!CxCFeM(*PF)v>7x@&)y?%xY+*3Rleuf;~-kzP! z>Cb%hdEGr+9%FwO5$UnW4WXg1KaG)O3hK!C@|_Tk2M o1&Ux<_)?HWM_S-4M6b;vT*rCiY_{um_ z&$Z1fqHFcB4?er=&YovCjw8?N#E>*^2#8$*$$~0p*eoFOonRy1P~8mriup0?i4>Z1 zM|LRnNotl)&A>OmDj kZOA7i+Ho{39~d#F>amG6D+!E9)cH_%B#nDDpcT zI2?V)$(jbtK4X=c_9yebYDXw1=p~B^WbK@?>4>Kb2NGKa0N*-go;f%Xr(%oQpy`j- z_!L%|5t;_w1J$7_377W%i4xIM(-JUqj0M#HH!>DSoIff^qQ6>DrI)AM>! ~3;cb6c+-Q9z`2ZFo1ySux)6Pyi~|5V+o zbI!f 1pl)yg)QzdwdqYj+kum z?8|GW+&M0t#4j8_DMo9tv3npjnUnAdZltV2Q1MZ*cDu#z94 H z)^wx%c#pzs!18X6m}95d3t8~GI%DCcH6e#&Yg8AWcS71Z#N^qER-QW&p&FldkO z*DiXKk>APC&kPRj9YSIWYf2>av+U5%#Ncx(n`dh2kn08@!la4^ylza;95aGaJ(~I} zlmY9Z36|yIX;HdN3X{X~@$F~k`^3GkP^`wNk>%az`KF}w^8>+^KVThLx%!3)R+Yr6 zN^p$gaW)JJ3wztl{s_-dz_5b<37{d8y0BR{dn3dV2A+%>RK<)7L%4(zKrVXb@Um(* zv86b^G$a=gA%`-4ET?35y4^1M?$~}Z3BWslO3(c~Gg5;mJOuI3*;oQa63mPu&8=KW z_XHSC2)5o9hqg~B-@8-ZlLVi|yY4fHa)_p0z1N74w_Y!cd>^m8?(I_bI^A+>*Z4QG z xDXPp^%2HvXA3GQx0&&99r) zBAiZ2C?$pdUBb<^A?Il2aNoaAQX*dx(fyx|w0^Hj)NfA0%})4(Xk7$ca%l{)e@`p` z!WSapYQ_N?Ou&SUQ5ApvGG=bTkomm9h*6rSMvbOMMtTc9Va+H_+@BRk2~l$EtwdT5 zd>gDeIc|x>CL3$G%MGDvg}~Gn_Ah nFR5V_UK=r&bZGBE& zp7`PI%oV65Bf#@f?-GIuLz_XH!wL&JsGE6obj}S~*^Kl(H^HiSJ;Y!xZa8@EJOlUh z2^-uwZEfZ>Xxuhg8xBgX9BpNz#?8KdY4|55k>kS$7au IhjtQJx$>sQi4{mgx>sV*y(}eSL&)RcM;f !H`?qn5RZ|u+<7KEFYW~kwTy--%9Zk ?EDp5 z-2WW|nyHxPi)m26-S6A6=s%GFTR@c{^Sws8O|0&EEV6TW`%!*5FIv8$F+Zr |Htr6EW_?Z|_*R7jG5!`h6%8h_O4sU-wS~GcwZ^;n?=7MK>JWj= z)n0JSuOGWv@B(^X4!-Rji)PYbO5o7i$#DtK6~9QT0IDo3!_`!lWyzE$#H^^#&2i^a zcbb(nj8W~2N7fObcJ{x|m6qfW*}YLR-(LbT!b2_%TnK%l=9v@&Ob14yv8Y+|h6E6i zdW(ssL@3A?W5xdR`uY>-RZs-aLF=x{Q~fGeIp4ij|505S64m9!mIV+%`1)7B0P5$f zEz{ZJpsN45kkic4*t@Y0q%LvlNkBFyVk9UMASZX+v}Da$A^0z^iM#%nmi%_LfKO2R-1q#Hb=Bd)mlYOXV05<+6twjVJL3rOJdq#J zW#C1I{~Z}(Uu#(g<~I3 PRf|#Qoib5wIhe}=xIG%Fw@CQ6><36U1dU zey0`n!AyJUTpp!~j!#T!yzH8d_eM!|&fhrz{ZzwxdSCnAojhd3nrp*Ar0jIzhXxcg zV&_)!*)5^n335Dk+8qj|N|kT@ct=uk_12J@RMUFvM?QM(j_`f6waPh &FvaH2%PHFd2ylvhmJiJat 2)LHhj<JtgHl z*O>OW`kpE4kMpYhn<(@2v8OGyUS%yjBk;XE7|Y0bz4PJ`$V`{04izPb{Q*)@S+Ajs z3=S#=?k+|RvzFn~eKuh{Z}$T!x4 )M2MX5OU8Tw8$yrS^ ZM2de5_F)#0%vmy=va z^(#v$1$c%K)#a~x;7;i%(ZzI#9SHY*JNtRgBF7F)5Zv;IN5Q!%Afc 1Gq96Uw#iaz_43Na z@=>tC<)O{2Mn*uY !{PqolSUdD@LQfE zoHhNnTf7m6F{u^ywuaq5j3<=#b~VaIZp)zL%zJVB@C)K6n|NW-O PSp9$7KeeN*Z9D?ve%c12!3^o@-4fR_ z3uIIcFy)$!C36E!&7So&gZdo5^T*?KT>zb2{bKoWfu{9icU8z-B;7PX*;$kyAdpQn zs(xBHmt+p2{3Bx#CAn#o)T3}ZI-jo=n-A!-?y|6__4*4S&MiQ}icn+kQ^_WUhW(ai zH$pJ!OZ$ErY)VF!aPtLIskw2GW^r+@UERK+{YA#j=`syr(u!~GWr^&?ZNd922E?)$ zGy7-UU+DK;qaR_k7>IM}qMDY@4gs0;)v@^*YFR=6V>Pl5-C=j7Tjr~pArL-J2dxQ# zb1C%GJNRJs!ZT<0leB9>OjvIW1lqZ|vCcP5hWjZ_=u|ScaiQxV@8&Y0ckdX{;m|Ww z$-n6Unj(>1Ewq7X44t#);b9W2031>M-ze}DxAul6>@VG>NTa4$JA-UC=k`&>P6xkw z(ex#ruqP+&5AWd1EOcS@cTrVRLzyJW&LI%JPZrzQzThu14{b5nCo~&twx%^v f)TZ%w}^KWD*F%t4CCGw&-PtS1}N zQC>5RR5h7ul`v#aV9+oKqot8H&u{70&8G0BUY~VC7oaA^7*{i}v$Si5Xkc_(nmV|A zv-AVW3x>$8D-p`YNpLA%%WC~`+KBhzt`AmG0IBT4cu=?{m}`teIZd#XJW8A&wx5oJ z68EhSn-kG4SM7}%U7C5?-;Vo!G73Iv`|e?{TUg3cwRGkM$&KgD%@=N5R$DEpLl|Dp z^P<-&Wh9DbLOA9W) D453GjEhyS={LJe+<`EI5uN^0_vtIoR3bEOKlT z54;y^OS$S|$`l0eFKleMQ_9F7I|P0QiLQ~^afbSFk93dEd+tiE&DYCXZ&li&(8Z^) z(v>F108^KX|CAed tD>N2V zCl(4z6Er!W4&<`xaJI+TJNE}hFA?`TL{#^#cRAuX>V=37HSi*h$-nG>?Y8ovGR=3H ze2 VjN4rE=|Ho8I zCQn5At6|LkNg-J+UF73rz30o@0k+Q@Wef^R*ZqZU_LN49CEs?^5`*k+uz$D)g36ha zn`0U`%m%*Nw-Zd#Y_E32egucRxxSI{kstAl$~PTJ9G3W!5521<>4l_|&tFD~S?bs> z^(xnBVN(qWAv}Qp=1Ot|tmk?jJ>g!wI$KxhhXy7fNnIlB4)OVny3<;IRbJ_>wgxh& z9(6xlJ$hQKrVL>H&7HhyV^A;Wy-we?+?*gS$b-T)Uluq!C^zf!h`7X#EAHQ!8{oO2 zkmZBB_fbfI)-BC>PL}#Tc2noYXKvDs-P&1x`7iLRQD<-Ani`F&5vIlpX(-o6WCJzp zV+*?L83CIg#dCtGn=f3kiH-^7;_p_q8JE; l{`Nv0cDWKGwrD0kWqH%Qrw>Y$83aeew3UM{(CyL0o18*;m~>)Qz}t zORk#3=Sb;tOq0~?IHwH|=c5tt#AA*izqbB(=c8m8R^X&$!JXrM zG_IZXC=X!0LcP{DQzu-kJuOPWX0zI~1UJB?elYj xGLgjMdWYydGQjv%?66>X-;u)PNRVZg*Ez$tFcadL}ppevh-# zc)CT@zAK`5q4&1e2wp{=Bb862pY_KXvSiwrcjIrRZqJh12Ni^JK%f4;OpJ z4<{LNA%~{UVa?JhRFe+stK-|+0IV$##MV3)4YD+c52?cnz}ibXRDjyonhHi;5Q532 zgw78OG`fnD-NA#tpSgvrDb7+M!I9pCg0X4MQ{axrY<~Bvhy5||jp6K~N?Kp*s>s>K z)x&F_e}k@I3pZaEdD7k5+|50I&E;dOAe)+fbJpu~4N*)H*l<;T&Y`RQ<&g49u;cVf zkbi>@yi4?UlLJ=vJzu%_7vlr|UbTsz!9mjEnMxEB!&sHw{_zgC`tRoL=H3Uc*8S4k z1zV5j*G&NDb#VNo&HnbH7T3b1{??Z7gP8z5iO<=5p`_enjLQ5oPKbF0ZYZ6Y45D-o z7O`Q}y_>*P$s8g^zn$6`s_1q!zOjQ*;o>|^Od1W#r}dxB_2ugR%SlC8CL!Sk2E1uc zdXG-(9HxU1zz1<;gyIZl+OWxS` #sXJCdqN^Dr-d?x<%?BxVJud1}k=J&PJH)BQRULVK${>^LB5M#<4 zKDjSkOU@DvQ_aQUDt|7Y*IDC*bID}Bc5{(dmK#r8ffnjZyN|A%5QZ6X&pRL%5jg8+ zFlePX90YBDkssxj^!>z$D`IgtOd3L>;#AR}V5Xi _Pcwc)<)1!)2-L}G= zT>Zt>eb*iFA4w&pLp5;-y78?US#3 v6%$K4qFk8rVz^yK;;gy2c zJJHv^koTzyyP9X4uFtN*jLrX~K7Qid7)$B|bn>Aip9!=?!&w6){00}GBp@fC(sota1u ze>|H-(>5V{l2k>7q9I*i`OekqTVXnobDH0@bOa|vJnej5r#&Bwn%Xh~9YET7GI=a8 zPYSnhy;vDv5AZ$)_vK=Wd=z-jL1_q;X* >e z1XT(^lGzy4V@XL`?mt_a21_o>+3))+e#y0cVngy8lA#`TG|zOx*cy8rHKlH$xiM}V z^{pPeaL@|lzc&f^uf*V~#0g *WiG3y?6k^w6$EhpVWP(Fyd* zprWW)TFIuTdkSVFkjaWFrz7DQ>(imx^`NRzIIy0XU2` Lcc_bx(R4M z!KZciR*ZxR6B;bBQG|Nb&^(&RA*LP4T`#g_x?5Y?98xhlrb{WJ_z>1rcmL=urz0c7 zNM^^WkqDyG; kwkDSbErz- zfX ?@LiVVD_4J93A8lXASw~i(!>GGoE)S3 z2z-2tE-UFPIa_hRM=D&2f%0a5qSUhhS_}o8-S~hcZuZLT+Jj5QU-8q=&ord%DP&^X zt~y`#d2>onF=`57S)Hn ywuN$xW zx_KXiy?j&mA5QJ=y&gBkiQZQ~o+nICfb;49HaF-6eE7l|HPkiDzEOeQv)A%z&?K`= z>_ocNf<-AQrgsi41*Y!!SoxAoC1(HxkqYS aer$_j$enO97b&Si$P1`kzws9fLkN$hBn{>+{7Yq2M+@(j zmcpbN5iy_nqtk{fyjpI~iJf3eAYD^pJJ-+QoGqAqQ=h2Prt)x3_;cLM$<4)Wl>W#4 z)!X6HrocMF3R}avdG8!`T%r(&?2=ipP+1FaV Mc&>o_lKnmF7PE3Np0-+fb zs|e7$U*W t&R13^_0@`QYuOsnglxm?d1USJ-|sE%IVYWseF`B%)wj<)y&}o-o_k<#7)T%}U;> zL#_|0X3O~DSCCZTq!CiO4-aviMN*0vVTiYRqZJVxC=eg3w jNv;=G%Z<-e=fl%Cc_{!tNUW}kK~1h-HcLjBHU&afti+9zK!{-q zPHq1O5R>b@`GTt(FUa9GMi_cwhgOVQ2V1b!dLWsyu=eg*)pg(Gd$91+_I*7E%=vNk z{;%w_iv1~j_#pb#RSb^3|40*i?E+u xQVehXWmt8A1CI3SK^eG5>A4rTa&-f&zoooj7j*R0F?BMUCDEn8p&7mQGu~9ZQ zwB9}3{1FY$g@G_{@^2WGU*9MowwenSG9ceSMw-{3H>ic3fKU~H1!%H7H`H*7m%;I{ z<3#C_DK+?Aodi`+cYGuVW9_d56PTX|rYi49o=NWo$xSBF4I5@x5Hpf}Q4Go);rAcZ zsh%bdda `0&Isng zRHR7{J6&a1ijM=tvOJ$hn?0(mXxhfj?LeJPXE!0CJTW3J-}L}O5MrZ?>$jhc#T?-p z3JzS{Rl?%+d5jFw1E&oe^C<%pR6izkI5+KbzP5<4$uJ%2@zjUWv;_7jqXUq?mvPgg z-@esbI7A%*bEy4T#VQ*lGCRUT^Q$8$6zT_{OKdRNjuk9sVQg#!v?@t6XMuN#shWk7 zX~m3KO@{E4BxPk%TssXV@NFdP>~m~2)y~rNYje*7^lk$-jlJWd5-Q^xNI>j|?B2m% z!=!@I#N5`+P<&~?L&=X|dbNCL6@?MJ7*yir!?0j@KUYr2 u@VaVEGCE=S zIh)%rcQfm9uVo`xF(zZbvCVAgB}W8Y9c^Xz;33gWe+PfvsZSstZ_2VvIA{;z8wBoP zJIP6_!uYnflp;@?2QfrSaUox ucfe)<0P^e}hT-s 6)|YX$gjvsoPnZd+Y>HG~KP_tk*vZ zwu3p}{}K6kjCH*{c7eg1;;Pp4hm>Z(*+Kv$ZEv0w@fih8e>+_=1Lt20OMAt_jeOZ7 zcfG@v2^>TwAnAI~I1d6~W!9>u%t=Op`8XUxjW9wHLaU(n_v@~AO)4&)#g>Y|W9kn# zw>wnaK^}Ia{C>2X>ympr1^2!gxwu75&C`mKw2t@ppNC+t%$=U^LwLf3aa*FNF49Ji zG|vi^>Uw5fm}c5|`ctU~%Z_SRdTx=lKZu9$>T4ch1e+5Y-(ELD*5c9-gbmV kIqZ&L2Eu1o_1$UU0&*K4Xw6~XDv^C=14;$iMdT{GFr!r!W76J5c3phF8|V7 zmp$@@*UZQW#|ocjyQY_k%BW9tU}J)xLcP93D$9V@UalDaD;X*veTx6#w~gJW`5Imo z%iZ3dq{PJN9d1c4h_KI62)S|qt=;KBY%n{cs@(AU24uC%47L3FHV}!O^SYgI<#l^l zw Ai N+_?rg_RsosL=jH8r50g##b`HhyFnKyIDbtZk{w~`w=2g!OmYO(fIj{d%h zic3g@2^pM!umrFo8=9fF;Of>O*Uzh+Gg-KG{F4QM*5vcJVx{o3@#(RU0;mpW!!C7= z$8o`@Bt&*)AhHhM9B`SezEg2lhj-&^PMp5N!Tv7Ad0=HCmjA)pIQU-Wdr*ZobCqcE zvAFe~^l`!np2`q pCZ`c_5VkOsm~mGp}Nd>0ZRO88li4R?Dn02wdfz$zOR{^^ N*n-Q>i+ynPg)ZgA p+$N{-tiuGm?MzU*BhaOLv@n=meZsGX&5lE$vL!=0FQ{IIJ zN>DDr>K<#nfX0-PT5=gI-^N _JZY^IC_A `^~Fb;o6*2r_>D1HJR_|AEv?8S%aVz8U6gE{`6{SUX`T4^lhfID(m@NOstO$( z$#Q1*VwxpH=)+XkISw2p=KR}}hymFBbTGP K-o486z)rdxVHE+a_o74X?|@8yF^Z z8+!ZmDl_2X2pwyX^BF0Ns??u6vniJ%Q`;_DiqX-HUU$d$_0dY@w_#zuUH8Jmsj|(p z5HSqJ8FR7mX#d{3+^$dOCN5U!X9FdW+`3AF8cK3HaIS<6v7^@#Bve|$VKvsf`%#&` z1v||orcp~2^%|2b6z0wpX59pQr^!2E!9Hv@xg2vRG3XNHd) H4&P|9D< zpOv#*tkYL*c-D0`);F(rqfCn~PEW5}ro69jY2{ycUpFov9$p?EPETEichIiEv5+kNdj)|xaXwhPP6S=ddJOV<7cqo_PP@j -kT^uEN9XL*P+Wgz#6gT45xe8l>zN`4;RT;GoBdi8#2L>jQ#w`1zE*LTHT^?V@ zYKBRYUC|mL_!C_Y=B^G>V_;!E^hfVyVG #6CL7+{+74z ffcD9)1wJo`_*@0Ccj2^${iT;6N z>F?MK1Afbl$Zw+?1j^?Kwz)gpJzQRZ&zfuiSicomca9hNg N1AHt`QBPAM>BRAdJ`C+saelGyVVQ8MfMIM#WhE<_mE&IOxbDwUcTjt^(cdv z^c)V$j=SRntzlA6na;^YG3i&PHdDa)Fqx_DdjEQo2rbuGW7W6pXen~+2*z?uJvEu- zxm2EtWI~Y`_{tN_--h77Y*kma)_F@xRybWw+Q)T^nXiW$BsI_!+0(jysRlLj60pzB zQ8c>eAI(^SK1@>_C!qBg7fpBXUcnC3!aLZ871cscyY3M@dpLrJ>`CL`?1eL>8esM7 zIA@`X$oKT vPlE_c=NBy;uKjOb`s`yF1`H)o9i7zxkzCRW!6R9__U~3BTDXnMB2xv#49e zMi8)ohFq}Y$+Xc`vs0){Vv3TmgheEzMwYn0XW;4F1CN1nm@2Ip%|0&XSr!Pgtn}R5 zWGj%!LqEOwP(8zbDut*L!El$0LA5IA(NfW8EUAW9^x;iPVGl-{4~HO_u&LC+r3rd{ zdD9CjohhIsscu^c5N!z^{UU*p4yh{v0e!9xrRWysJ~8 OLK zZQpE}_j{O<4C>ef;(J&n3QvO{xo2F4X@l?YMsIxWFI`cSj39g;7hA{}GA6#8*v}Gw zfI!Qt@4rs~aTQ&4wTX;qwlTnl*SzxlGyhGKq?W`#y)8mxKm-l_S0)M5avy8@lG(yd zG1@DH(G42TDa(roD`d61J%?hHSxpdk*r@vAY@wQ~ X32coS`4R;#s{+E42ry?3S=1lVvvoWc!dO{jL64_zxCw^+rP z99yq&Rg`?4YW6&9RbXyhTI)E3xShn1^wx{G)iqmb9S=9AFG@tC6*pevH>_xH%(CDU z2Cg(R%+l%(j#kEy?g(2^VX}6mkkAoY_A-4N{ETo0;}=R_?D`fa1RS(C`2V$!cNf-E z@(|Os_0@N+-uSsyIjv=qgwGX?CWViP@StGvj*PBO7z|%x_^=?5BiO)WlP=+5O;5rT zMagfe*k<#2zU-fPGH$+J_n}nTR<7oDc)wz8f%h%0<|cZw5-cz4*NIYweApXM^aMOV z4k8(Sb^;lFcf5g0)~hNYEn`goyV(mTExE^`xtpF2c^m5!SKFgK3-|k#jU8SG-;Y1@ z0&lagb2h6Ns=@0sQ{KMQAhIx-sPt3u9AEA!Fk8;V F$?J6m4gqn=JZrxDFCUs!Z1+FOp_%D%y;q;mZ(J`9j8Yl&S^6a>^ASGnPp&HQ$kG zjvtRnLx&fpEwTN9?P-fww&A?-SYeoR$2ZmSn8n?JVIc)1kBFy|Dj}01q8ocA7G)%4ePmED*SnuaQDrDURsnlb$(;SA>>X!!@M!G^orDQ`Dp=NH6 z%5InV`O2?|Kd&0p1j`#9xfxI3lY~WRJQlIFA3Gj#C#$CpU#dQ?Y<=8O_qeps19oxj zE~}Uc0*h(+6r@Vz&D1Vt{78E{CSIBWa$te4PhOr9;u=?DUq%#yi{y9WM)hs6P}p5B z?K1|=r-X5m4oZigNhkU=0hBQTHy8A1inI-V;iViq%h6aak8@?zEf+X@?(? kmmut-txH}`~45PAaLK=}Y_!~=m&?Ub*`k?`4 zBV2{gCb=AGS7x^KEV {No zpePj|spk3ckFGmR9v9ko$coyJtIDB;jW@~Sr~gA}B@t=VLlveu l1x_q4 -2sQJdMuXGV>x;0eGPjyYTE#Wyo5Oa$Iu@<6NSny0JlVsN|V}u%tey zlCl-fDTtto;+mhi%;}~6fCSc~2%NU5WQ2%DMsDlefX6OBm8{9rY(9ACoL6khu=bLY zzOjqHg?|jk5sXfYk9Jg8Dy9W{SA7sYi<%HgZ>w|fwcZOF-m^)9psDLsmwGA12B_DV z|4C&9EpTrw(oZrWL@8&yjVyOJKJgT9CknFVUu>hAEbEi2`^td(#n(DG2t~}AUc9IC z`YzuQMU?uoa18s8{1YB=&>>QDoqx*Vue+Q@i5^^=>w>K>h02k2VIclmCb}rv$`D1D z4aGFiSIzYX3^@|I;Il!%vLni|sD!h@VneX4>oJ76oa^gHq^r_?oimq%oX$%P $*N)bish9@x?o?oqxrgOn-`YyFljyS;hV;YqNf(G1BBd f^(QuHqf#=vGDlWb%~H%MiHs*|!_0IbRF+O`0{l_QZ!?49!(O>0 zK6 *lgM>{dNtKGBpQilo+vWbII)f%mTTf;uSYCajyaAKvhVdkmN?f z7 9os!ryyQ5 za#dPu6XAqkETVTy)WQ#KAoLH=c#L+y>2=N}9a|-m(Jh9$xwL>BgY0j2YV$w)h2f1i zrIw(ar?HCKt-W)0XSX+r3qGxeNOb=ad5b8;^7{Y+N; OE87`;x$^q)^ZAA3+6%kkOr z)Ka)q{*;h>{1fzj$$9%L&-Xmv^oBi|#ShMQ?Er(X+PXT kU*ms5s6sZ~N?T!7ZrBj3F|m%Ypg c%HhIPt-1gOu5 z5s5qz5mu^cbZbUFzjq!X@nsE)#1g4r1jIT{6Wc&39n`OZM3+bfX{gk8e^@uPraNNV zvFW~EuJ6xq`g(>wMD4syT1yHO85vqS6UBkaxnBR^zE8LmQuruR;J~Mgd}A)j@-+}2 zy}0GE@hm}ekqe<;ra)zMcV66t9yW$=-DMONgY)hgz^VE}4g~54feNS+?rc>f5`n~x zxGvn-#4_QauR-(vW@@!zc#x$f7$hJgPzX)0lH!lL`GSLYpRV&N-FBrABiPM;HE1@{ z6jK>pa%)*L2xBtp^osoc68T{TkY%0jnW?