From e1a97ae66960be4c0f885676911050ae46407b82 Mon Sep 17 00:00:00 2001 From: Ed_ Date: Fri, 20 Feb 2026 16:12:17 -0500 Subject: [PATCH] progress --- attempt_1/main.c | 169 +++++++++++++++++++++++++++------------ sourcless_snapshot_2.png | Bin 0 -> 58027 bytes 2 files changed, 119 insertions(+), 50 deletions(-) create mode 100644 sourcless_snapshot_2.png diff --git a/attempt_1/main.c b/attempt_1/main.c index c6bac6a..86cd567 100644 --- a/attempt_1/main.c +++ b/attempt_1/main.c @@ -64,6 +64,20 @@ global U8 vm_rax = 0; // Top global U8 vm_rdx = 0; // Next global U8 vm_globals[16] = {0}; +// Execution Mode & Logging +global B4 run_full = false; +global U8 log_buffer[16] = {0}; +global U4 log_count = 0; + +// UI State +global S4 scroll_y_offset = 0; + +void ms_builtin_print(U8 val) { + if (log_count < 16) { + log_buffer[log_count++] = val; + } +} + // Dictionary typedef struct { U4 val; @@ -144,6 +158,20 @@ internal void compile_action(U4 val) { } else if (val == ID2('R','E')) { // RET emit8(0xC3); return; + } else if (val == ID2('P','R')) { // PRINT: call ms_builtin_print + emit8(0x51); // push rcx + emit8(0x52); // push rdx + emit8(0x48); emit8(0x83); emit8(0xEC); emit8(0x20); // sub rsp, 32 + emit8(0x48); emit8(0x89); emit8(0xC1); // mov rcx, rax + emit8(0x49); emit8(0xB8); // mov r8, imm64 + U8 addr = (U8)&ms_builtin_print; + emit32((U4)(addr & 0xFFFFFFFF)); + emit32((U4)(addr >> 32)); + emit8(0x41); emit8(0xFF); emit8(0xD0); // call r8 + emit8(0x48); emit8(0x83); emit8(0xC4); emit8(0x20); // add rsp, 32 + emit8(0x5A); // pop rdx + emit8(0x59); // pop rcx + return; } // Dictionary Resolver (Call User Word) @@ -162,6 +190,7 @@ internal void compile_action(U4 val) { IA_ void compile_and_run_tape(void) { farena_reset(&code_arena); dict_count = 0; + log_count = 0; // Prologue: Load VM state from globals[14] and [15] emit8(0x48); emit8(0x8B); emit8(0x41); emit8(0x70); // mov rax, [rcx+112] @@ -171,7 +200,9 @@ IA_ void compile_and_run_tape(void) { B4 in_def = false; U4 def_jmp_offset = 0; - for (U8 i = 0; i <= cursor_idx; i++) { + U8 end_idx = run_full ? (tape_arena.used / sizeof(U4)) : (cursor_idx + 1); + + for (U8 i = 0; i < end_idx; i++) { U4 tag = UNPACK_TAG(tape_ptr[i]); U4 val = UNPACK_VAL(tape_ptr[i]); @@ -235,6 +266,9 @@ IA_ void compile_and_run_tape(void) { #define MS_VK_BACK 0x08 #define MS_VK_TAB 0x09 #define MS_VK_SPACE 0x20 +#define MS_VK_F5 0x74 +#define MS_VK_PRIOR 0x21 +#define MS_VK_NEXT 0x22 // --- Window Procedure --- S8 win_proc(void* hwnd, U4 msg, U8 wparam, S8 lparam) { @@ -303,6 +337,10 @@ S8 win_proc(void* hwnd, U4 msg, U8 wparam, S8 lparam) { } } + if (wparam == MS_VK_PRIOR) { scroll_y_offset -= 100; if (scroll_y_offset < 0) scroll_y_offset = 0; } + if (wparam == MS_VK_NEXT) { scroll_y_offset += 100; } + if (wparam == MS_VK_F5) { run_full = !run_full; } + if (wparam == MS_VK_TAB) { // Cycle Color Tag U4 t = tape_ptr[cursor_idx]; @@ -334,7 +372,7 @@ S8 win_proc(void* hwnd, U4 msg, U8 wparam, S8 lparam) { } } - // Interaction: Reset VM and compile up to cursor + // Interaction: Reset VM and compile vm_rax = 0; vm_rdx = 0; mem_zero(u8_(vm_globals), sizeof(vm_globals)); @@ -361,53 +399,81 @@ S8 win_proc(void* hwnd, U4 msg, U8 wparam, S8 lparam) { x = start_x; y += spacing_y; } - if (i == cursor_idx) { + S4 render_y = y - scroll_y_offset; + + if (i == cursor_idx && render_y >= 30 && render_y < 500) { void* hBrush = ms_get_stock_object(2); // GRAY_BRUSH ms_select_object(hdc, hBrush); - ms_rectangle(hdc, x - 5, y - 2, x + 95, y + 22); + ms_rectangle(hdc, x - 5, render_y - 2, x + 95, render_y + 22); } - U4 t = tape_ptr[i]; - U4 tag = UNPACK_TAG(t); - U4 val = UNPACK_VAL(t); + if (render_y >= 30 && render_y < 500) { + U4 t = tape_ptr[i]; + U4 tag = UNPACK_TAG(t); + U4 val = UNPACK_VAL(t); - if (tag == tmpl(STag, Format) && val == 0xA) { - ms_set_text_color(hdc, 0x00444444); - ms_text_out_a(hdc, x, y, " \\n ", 6); + if (tag == tmpl(STag, Format) && val == 0xA) { + ms_set_text_color(hdc, 0x00444444); + ms_text_out_a(hdc, x, render_y, " \\n ", 6); + x = start_x; + y += spacing_y; + } else { + U4 color = tag_colors[tag]; + const char* prefix = tag_prefixes[tag]; + + ms_set_text_color(hdc, color); + + char val_str[9]; + if (tag == tmpl(STag, Data)) { + u64_to_hex(val, val_str, 6); + val_str[6] = '\0'; + } else { + // Decode 2-character dictionary ID + val_str[0] = (char)((val >> 8) & 0xFF); + val_str[1] = (char)(val & 0xFF); + val_str[2] = ' '; val_str[3] = ' '; val_str[4] = ' '; val_str[5] = ' '; + val_str[6] = '\0'; + } + + char out_buf[10]; + out_buf[0] = prefix[0]; + out_buf[1] = ' '; + mem_copy(u8_(out_buf + 2), u8_(val_str), 6); + out_buf[8] = '\0'; + + ms_text_out_a(hdc, x, render_y, out_buf, 8); + x += spacing_x; + } + } else if (UNPACK_TAG(tape_ptr[i]) == tmpl(STag, Format) && UNPACK_VAL(tape_ptr[i]) == 0xA) { x = start_x; y += spacing_y; } else { - U4 color = tag_colors[tag]; - const char* prefix = tag_prefixes[tag]; - - ms_set_text_color(hdc, color); - - char val_str[9]; - if (tag == tmpl(STag, Data)) { - u64_to_hex(val, val_str, 6); - val_str[6] = '\0'; - } else { - // Decode 2-character dictionary ID - val_str[0] = (char)((val >> 8) & 0xFF); - val_str[1] = (char)(val & 0xFF); - val_str[2] = ' '; val_str[3] = ' '; val_str[4] = ' '; val_str[5] = ' '; - val_str[6] = '\0'; - } - - char out_buf[10]; - out_buf[0] = prefix[0]; - out_buf[1] = ' '; - mem_copy(u8_(out_buf + 2), u8_(val_str), 6); - out_buf[8] = '\0'; - - ms_text_out_a(hdc, x, y, out_buf, 8); x += spacing_x; } } + // Draw a solid background behind the HUD to cover scrolling text + void* hBlackBrush = ms_get_stock_object(4); // BLACK_BRUSH + ms_select_object(hdc, hBlackBrush); + ms_rectangle(hdc, 0, 500, 1100, 750); + ms_rectangle(hdc, 0, 0, 1100, 40); + ms_set_text_color(hdc, 0x00AAAAAA); - ms_text_out_a(hdc, 40, 20, "x86-64 Machine Code Emitter | 2-Reg Stack + Global Tape | Factorial", 68); + ms_text_out_a(hdc, 40, 10, "x86-64 Machine Code Emitter | 2-Reg Stack | [F5] Toggle Run Mode | [PgUp/PgDn] Scroll", 85); + // Render VM State + ms_set_text_color(hdc, 0x00FFFFFF); + char jit_str[64] = "Mode: Incremental | JIT Size: 0x000 bytes"; + if (run_full) mem_copy(u8_(jit_str + 6), u8_("Full "), 11); + u64_to_hex(code_arena.used, jit_str + 32, 3); + ms_text_out_a(hdc, 40, 520, jit_str, 41); + + char state_str[64] = "RAX: 00000000 | RDX: 00000000"; + u64_to_hex(vm_rax, state_str + 5, 8); + u64_to_hex(vm_rdx, state_str + 21, 8); + ms_set_text_color(hdc, 0x0033FF33); + ms_text_out_a(hdc, 40, 550, state_str, 29); + // HUD: Display Current Token Meaning if (tape_count > 0 && cursor_idx < tape_count) { U4 cur_tag = UNPACK_TAG(tape_ptr[cursor_idx]); @@ -423,29 +489,27 @@ S8 win_proc(void* hwnd, U4 msg, U8 wparam, S8 lparam) { semantics_str[13 + name_len] = '\0'; ms_set_text_color(hdc, cur_color); - ms_text_out_a(hdc, 40, 540, semantics_str, 13 + name_len); + ms_text_out_a(hdc, 40, 580, semantics_str, 13 + name_len); } - - // Render VM State - ms_set_text_color(hdc, 0x00FFFFFF); - char jit_str[32] = "JIT Size: 0x000 bytes"; - u64_to_hex(code_arena.used, jit_str + 12, 3); - ms_text_out_a(hdc, 40, 480, jit_str, 21); - - char state_str[64] = "RAX: 00000000 | RDX: 00000000"; - u64_to_hex(vm_rax, state_str + 5, 8); - u64_to_hex(vm_rdx, state_str + 21, 8); - ms_set_text_color(hdc, 0x0033FF33); - ms_text_out_a(hdc, 40, 510, state_str, 29); ms_set_text_color(hdc, 0x00FFFFFF); - ms_text_out_a(hdc, 400, 480, "Global Memory (Contiguous Array):", 33); + ms_text_out_a(hdc, 400, 520, "Global Memory (Contiguous Array):", 33); for (int i=0; i<4; i++) { char glob_str[32] = "[0]: 00000000"; glob_str[1] = '0' + i; u64_to_hex(vm_globals[i], glob_str + 5, 8); ms_set_text_color(hdc, 0x00FFFF33); - ms_text_out_a(hdc, 400, 510 + (i * 25), glob_str, 13); + ms_text_out_a(hdc, 400, 550 + (i * 25), glob_str, 13); + } + + // Print Log + ms_set_text_color(hdc, 0x00FFFFFF); + ms_text_out_a(hdc, 750, 520, "Print Log:", 10); + for (int i=0; iE*WTT`yQ`{eRoTWCYj~@C=qA92^#$ z^yg1%9`GltNIp1b*&VZ|!P>br;-T}nP>QJ!Egjul zg?7E;_CTd>GkB(Sdeq|+90HcVf6i;K+Y`^H)8;$yYJ2;I1mG1C#>sqj&P9nguR~V| zk>Q$cUPf(jUb4L4`OjD5!cQlWwAG+&ucH_M_=836%fr=v3QZTE!C{19`j8E$0J#gQ-PqK?+%qdl?Q@?4FedonAdb zD0{#a@3YR~WL9QrJ?N56wb1i<@19z|L9>0<4;g7@jf&i@JvAeX+mprPxwK0q1nB2FrIhKgN)ppG{(g zBssj~l$C#3%L#Zo+ zjc^lSJmLv6p9w!zI_{9U{d^roKiV&A?L3NEa|Jv%TWQqNp0}v8QyO8oZ^WKH;ycrv zDhW!cn1T` zO7fbAyBH)H#NByh@_dgfYs8-##4j4eb(cV-!!zi_Jg|AB_fp3S8iO=V24fl%tgAlL z06yk@6de}j*z2m)Z=cKj%!x+8X1mtmx!UGhPHedDb2Yl|Hy)<~KR`I>cyVzNO~jqf z>3PX4o9uJFiRA5e${CV1P+4PWFDs32bXO&`+rviLsK+SKfTLLY3#V(Tv0M-9!?48G zho6W;$7QyF7~w6Hp37rIkN7@$^1jTAT(crhWK?tT>)_ z^#_SOm1_c$`JO9?W@#)#D8qQ9wBc$GX6Wbqhbyb~dZXSp*O^)0c6YQ-e9|NG6M9M> z_M=s$)h7_kWsD_v?vu6Jg3HZ^U^FQVa$%nXB}&1M#(l%=U6xgD!+Ui{LW+~JW*SWN>kJ(gDQ@HgU)YF(3xzA?sIx`lge--zC7loG z(;qTY+B3E^TTUPX?J#o)_F($bAN=C9e5hKiggM`F5yB5#oGQZQve=WO4Dq_@D~MHz z!m|90OHDJ`q&KQKo+Z0jq9EhMIg-t>9Y85=pw&>K2eb~hWt2vqL5kqme}A(Pm`t57 zooBn}#)_uWfmM;T%I`3?f)w(W^kyS$72u{5(pWyv0)zz5Cs)@*eLNe_xw{VRCCmLT zhP7oeo+=&M0PV@&4K@4V;>9qQ_I*L&@llK~YGR<4dt`3h{XD(&lVxLRp5FO5UT14}||Y%vTe#AB##tKF%;w^6UsGTWA!PRcQpIp)$Vkf{mTd9(yvx|4#qh1( z+o}Su99=JeDto%5B4mnW?)KbnJRNn50uJ5~?MrIkyu5%lI|oOtGiZ#O%;(!^*=+N= zo9<{jcQCe!PV>Y*Yo|l2*bf-yE$_S;~xR#O}gM@rB!nHhaD1}>^K7Kw!|6QI0IN)iN|MiKEAmLQalKxM>ui(Z_^A+3 zn*?<2Gj}oUlEegGQ+yToui|m8iR<@rd59d>LR;-QD8E6tH7QNyIOqOC*xi^T0;f70 z>1l*4Y}w;gO&g{BmCRQ;c=x;aELu{FCVmmc&(w7`<_)9<|Gq0;iE(ei$KM6BW$LO7 zxKqD>|IQN+X?gaH>|3CJOtyQrUYeja!6;^M0OkoRotvZG9`o?pua&0e2nKz*iuo4C z`kG=x6CR*h83=4Ooch$?C0(o=$3^)Xu)RsCn@vw+U+y+cqyRFrtaf1*HGO=O&Qk_csnVLKsp+*vF^fY$c_xtd#@vL!2d z90kP0dG<_}Yk9upAx@*ofQA!f^wjTWZ*M6#65%*KC4Vj+$6hMeEYbC=)}-Sq#lZ`N z!JYEdKX-|m)DVsA$C{Z(u(*HWK*sWido9RJ!RVZFX}fArT4~h#hAAlm8eAJv#ip+Z zj@>0)-tA$4gGUzqX$3#r9$jNtTT*C@YlcS!bF>UJCV1Nqsh4n&kC`^uxXL!TO^gYn27VNgRI;P@{yTTgngmvByH)hza2rsbV84!X_#FQjcs>h}%_YvxCY?l6T zbv7d|6{CY9LMCMTK88f-VSfEhV4j>25|RcxQ+XT@6X!nn*~0HIOJq?B)7MOE7?zdF z9DLUdhOxD%k6~$D0xZXTuV%%5ISOO$pG#$s5r3}+D4r^p_}rCZqb5}&af|+RK(OR% zc}+u`(~#w<1u-(Y{E-t%Y8Z;@~18RN3ZBn#Dj`N?LYur`(2KO9YkU)0|$yC2HWw+^tt z9hseqx#Fg#e+}FIvH^!&7N7eEK7W=U4 zh3P{C-n+@kT_<3jE3?FsRh1qPlWc9K43C@j^-)Lyx9S+2; zFH~C3m#YUE{-o&ZybK%{kdw)x;SEb3{-DzAgru7l%0AsDv%LxYL=~4cJ_g9iaL@a& zZ|rzWYnQB1ZlRYZViU(WM56O?e6sh>BvvFYB|(0(?_ynKwQZKF(M7W-HRvM8K>D6k zW6umS_H~Uh;pE|!j;!GA{kA7RznF*pBo$FGQbrz!MnyDHW0cR`syi#DZwGYnV*7!g zANS3=droYIq%+nxebE-~iC}dOz6v=88=;I^0Z5mr(4t#Kp9`-usNz&dBHmbWM3P{Y z!MK3#-Dg=sobR5)nLreY%(0j#tdc@eC4H}?2ISJM>uUp8R!v2%esgoI8qdz?<#GlY zTPC*56C1|M(_hLHk0_*}9Eh&$EQ*vYFCa?5PQni6(amr!V0f|Kbd4~Q6C-&2A{WO| z9KnpLI07Oq-#kiU_Ii|ZC~Fj_^>(^toPhB0xv;GTu?2Hyg!z+-r~4@vF^v) z%>QctPVc7Rihbv z^V3>gtk4_p&9~AYLgfe^V+bwB`CUT@3wZkOI{wKF4N7^tsH{2+6Bwi_h0}P6;|uNX z4&Jf^lutSHY+1u?@kPT-rmaNM*&OlRgf!3N*;=3V3_J??r&2AKl*s0aWK(V&I`zTS zh%yd~Wv-?lp}MB->(1Tj3~6l zm43q2X|k3GO%BM0Fd85?C`#{*sG*Rmyog!1*1=%m0}S>u1ZI6@ljT-w+{B=t$3z8+eAcdF5n^GN0-(8#PXhIIL1rX~^4%0h?Q`M0~t7%~lh~#^T zDGY8Y0B(@l(AO9asd!e`kRJI;9pzk=#At+5CA$U_W+insnJ;*#s1gkEOdwHiw9-9R z^)DAm zyV}~B_)-xPA;0wCro_Qz4BITouN&Z4)ht`ZBJoih#6y$bE1WJhlCtYZXaQ4om^H0- zW$aRA?scE141+A=wLnI;f$<7jYt8bGp8ShQ7(N8=NlkzsLAyh#90iQoVopw-rE^fp z?`2yyeBU-i4HU*+?pCE_W3q+3VMcwV39|NvZ33&Dp67?F!(S=m`j=g$X0j2WZ(H{l zrK%v6>jMsxgC9NnIlhviu|g0&+R40rBo^FJB(crz50a#jA0ho{jkJ9ex3H*sdAuVS zQgJMs%Y5v`6j71`DvV8E?W4tREQ>rvVKCMy<_KTkEA-nT>XiFD|DhK1gKlT&G-*$;Z6 zU9a#A0XQmaGKL_$SIGVt?#A*8?_DzfN3DDX1%+Y(X^)ds4zaBiKMu(K$f%Y(dt z^^@Q7)xh-RE`+6PB@d*FHu=cO#Rc=>jcANVC1HZ=x`9#EN~&j}P&(oE47#MlFSApykR|^4zg)oKyEJIeLf6aF zA&1Ta=rmR;Mk%VMA$QPSXH%&VE2uH($7dVDA;}Bhr)w*#i_N!{v<%@}%ps8k?5J_W zDXazRNO-sy!Kduq&zHYj9QO<o9AtKhF=(%cim>S6&JxIJ17AsUDccx2az$qHEllj#9eR@!2bI7@k=?@OR! zv@kc~N)Kb^iOi6YrVoleiRE&ubX_>;2NmKCC&!&PBViz;E0bY=(3A)jgZVt5E)5h# zlurnA4sxUNU5P6Z2BOaPB;{_Nk|Ux-9C85N#xP`xwTFbH$>t2uT#FAG*u z7b-XG1}=WFh_zf4l|`fUv43Xi*NZ2c4)!pTy+{lI9w?S0KVFAmSfzcEcCl>D&buGW z5$`i-P=z;YPB?^h?-j?^{J ztyQAk`5s_#BIvz{%Yi<*8>70Tv5GQz|lA zYZFHO6IJ?v$BCbML64#wVmw4Fr%KqqsS{oLfF)3wrEEaN#2hde4-Ky{Hn1dTFY|iy zjccmLr#-?@056QE$d`x=vQ;}jS*%aSL%o=pYd`Cf9j4g~d`CGo=Qh+})v%C@l0O^s zV^EMJUFwQ3xX?hzyQ{-Ayhib1xJaeL?Ct;y9$}3j_bDPHI#qTG12Ix(h)kO%%z@Xx z%^GdoT|75=6efr&^u)(R4+SX8-g%r*?>y?s+peW zg(-#Q@^W1x)vS*VM#0@@U4vwPR8#i^53rO^{~YG~WRWu|?)=&1BjQo*xy_dZI{ADv zQB#*|efL#~a@+`Zf&&wrN5LRYrCfS*9g_(VTLb%Rqs6amb?)QYz?Ua9Y1L>yS?ZJN z0P4B@iLyVJJB;Hx-{% zR|N-Gx(K!%l9YB}AOpqo#I_XKjF{8oTdUyA>*(O4Jkjznr&2sjD{fA=5yBz40MzW7 z`}wJnv{Ke3kQufe^BW?Bq$1H#Wj=Q>$*i<9uh$5nPP7v6h`vZAw-JAou0QqFXt8#z zhSIJIBeA-~sfsq`#8w2=JBkfb_)YCegH>$EeD8_b2Mwc@^KJ&4warLAmSKy!i@j6_ zh(d^fZ2=NI{%K@DqD{eyk$*s5JC?s_2`cQsNnN?z#CVs&X;|IM+*$xFh-keXG zNX3vn9j2@Uh26f3d3mLOrm9^!hXJu+E=V_90}YG^-9LOLf%su)ciFaLNn=i5zef(< z?uIJxTbYSn?7^57QR&101R?TiN;@k<+XL!DXTXMh-%Q*wC(r`8)U zIf6DR-K$<+ygUUJp5Y;@9AgHh-5D&qQe>el)whU7sW7mcNb^}GN(rS1H9(TXYzWsV zXQ>D=w#H#hnnMkQ#qg?VN~0wDmNB~tmm#CIT#ddTEg+sjt9U98s{-PQ(#VWk$jbfs zmmX`sR+DTfZcrIRwiD`K))2RZiE@B5$#~>F1Ey<~F@ps^e#B>g(cRZW>v4w|v_>vD zOgNdAJ?26RiH&Lfb@V)3o)n+90t7xQ2eZEsvr9w+qwAOSb=EN;!p^q2@d(vyzO=l| zfbJghHKm<$*%XaBr~OD-n)vNOU{SD4KNar7;90kNlso6Z+Emf}Xx8z3Rh(YASF2L9 zF!!mhs4FWiUEA!UTs{k9Wh?jk zBI}gRLthF8ubqAwy;C-0xT}OQ0pVZf66PM z@jl>m0BSdI8ml+-a;s_P^}P=3{5#xgFr!+RQhvcnuZ*p)-jnm)mn4Ife8jdGM`1i*hVw{NSZB`&SW!vrm&H})QAu5#!>XB z<_pvESh0LYN3Bb(S4tC+b`!v!G^u>v$8znRHLE+rXD{pH*&(4>>6upnUkSeXEEkdN zQCNPM7E#f2+DWVKIScnJX6v34(^<1zmz@&WxxRdnuV!b=QMQ zJ3#{@3qK>kf1|J0YYXda#~u)oN7lu6VJFg@h(>w!-5(Riv9uf*V}I|Rd#D?zcwW!{ zqIEcDBt87rhc!z2UP&h~=;EmYn?3K1k#4y43NusGpUygk0f6|2@en z!Tv(*LS~LyZR?cvW-e{x)E@Z;FpV=rZHhlRHzx;}*3>nV_$cUt2*V9O8fHVN!aWXQC{OUU zmCrw3IOWdVGOU}4PB3TZD%*|K@s4ZNn~W9uV2*(0W`20!A@+MxySE&1lej^?n$2nx zBzmmJYLKvl11HLsd%5!x<%{#lB!C9{#%w+82C`C=rgY6`(Aea12lxcY{uVc!NQ7$6F~TP3n#N_C}I6g zXMg7o2Wt@^ijO?jWpap}c@?4jPXX=kQ&++2Q0h?d?!HX`{?{HJxrN!kD6-v& z0SO*C5pRR9%Jy|k2ZcWq<-dbbviKLtA}b1qV8AP)eZASTQl5b|^w5F3fqfjFc><(J z&Z3Xtc01vS9HuBr75DXqs>|wA?0=@3jdN}&-)KGCGu7|+Z22DH7lZ$-?1wR?fxj8( z?rDEXv@pw$^>Eim!^-x-R2L)L3|Lzhk2NR^3#6&bOA9!cn3 zZGLw6@lPbYrl4>Npq7gHdPsH2FLp64=5|C3Apdbg8 zz-h2k3S1EK{A-Y(uJ9HzUk|sUurFa#u}6h1j*cYaza~@q1SgwnjPb6D&olOY;&)+45 z{<^X$GEL!Iu=xCeIuQ|^%=}4!?=9MYd=Br2YP-~cB1_<>0JnspA3#Cc>bWWgXo$*F zPItE?hyQOgWHrg3IkG7Ne+#RhXq1}m^@k_5)>2uvYcb)+k%Qz|lT)y7|N1?s#a|?a zjZz_YQ=Fm&@o28n2C}ic?gvE&|1x&@8)pcLa6%!XaHwAovHcT5*pLE6BSZ1oGI<-6 zKfFaW@%L9n;M>nK7Nh&ei#5~~RYj3mF;stOC=yJ@!FtbnN`F0o6g|&1glOK+LyH|2ct_HbTFy@aZ;h^VPNw? z2)p!=pg9SQyVH`k5@A(_?RqYISu7`+^k}bisy&g({`>^7_Ho;s=SWF#cUlbf5bP=DoZlx*X9FRv?*lU= z`M~1SaaVFcG<;T|)y1=Ppf0_dwZaKEqx=!4*X5M=~oo- z-q3J#lTMV^z{eM}ZowPTI%d`Nn3BPm{Hy36q_Au*cts z&Z8Gqgrg#L8Eq%)uGY3)BRA}72d?Upp9t$?DLedJ2$&68Vy!X2$TCNJMRjf-EQpNSzc1nsSKfDT0@*(iK zn|oxxwbiXZB-H$qeu5u+bidPpw4{bM%>S~TeVXIfdbZ)Pe>ID;={D@a%yBl-l~q)| zN{^al{hKaP&FtzG8bDg1@o-iyeg_cZRyn3GP7xHAC2~_ zgw~%g9gIGo#$YP6G>2$rV?Xh3~H;g+xf8Pn<$i89F%J)upi- z-Cu0bGdVWL22kooR6}olE*=OBN$+=Eny7@+$1~l0=2Na8AN4r=c2=8-?eqm(Y+^55 zHw67wcM6Fx59}X$xzBEA6B-E&g>8>`pk`-=NrksPo|aekCXv5jA+CwWaH=OrUVr=MxxV+R8w7Dant#dY?jF-J ztrYOlknVhva*ddNd3xBgNU4B+djePAo&xR_t7;Jd#8O3Sc9N@_n%P%_rEdXAiFBni zP8x|R7Gc)2^>ii?7(z#XA|el$ty5(r(ssf}y)nGLtpqXtt>~ZsK8K9r46%jx*tmB% z?-bzBD`wyKE#$pq3|{r-8xLR^RL`Feg5)xu?|*lpkBVqlFWTY$iR!xB3u(-7vBY*5 zVX!^ACF0tHxS_m5_sWo2UHYvT;q(Q^zHK}2LKUQ#alP=W^9XQ3Eqf^63$7~Ius<=p z-CC-A>Vj_m%w}KHy_$-*BPiuWjV}r542jCHtT_J#VI7W=#a};3ei{@MHrfgr4Ef01 zKI7O*JcCPqspxwre|Ws$CooXvLL|HwW6rIM{$9jv>o=RUk$QVfCf~y!BRia^FrM6e z`?kpEfw%Sw2oXDgdtZo9nXbG!efSxCr=4q;+c<|wh^w6OWV8b*KX53Kp1iBwF5kV1 z0lYF;Zs2#?KQHpK2PzPGb{O^cvrg@Bv)LE6n#qK2W>nvuK7X6NbeK9MvR+{M9%A~o zX`nxqrc61+?w)V-?bq~plNw#2w?22<0gEmF{IvyPuAET^oC?bJ2&G;Q3==)0IN2X*wYvP1!3cqnM8sJf>WnS7#1) z?+w>8hd^?ReuS8}r%wKPwo)b=W@Eq5xm6~qY zHq++1khQ8iSB+h%BB5!sP<(dqKEZq7vU6j7_DRmqYic8#l~^r0Qo1BK-79xiv+;xpQ~-*rIQNVPD3#4memGkQG*o3!Jzdi69h*CIbJwwFT2-GM)kYtIdlXHv-M!EA%FQ>RYcfD;do0BaW8 zr4DI^Wa99K|NIMc|BQm%vQ%+&ORKif!=GNz{W!kdWK;JSld^$9dX31stX`@j$?99j zsP@~NZR9&k_zlFsHd@Ap8EW z=F_IA=EP4p`%&ZzRR#}aOZ;|%3%sG~i(o;#Mz28EZ)8hp?0}Tk=yvp*Um(>#&7r(7 zFcqNm?#H8RZa+P*-92qeB>1EGHzCihO3XX?_&vzw7+_!>_3^LkyRGIz<}6iI2VAD;s6iq(C(i60H3x@jvFnR8L-*9~GL3jA$*490#+D{# z;PEpbH)W5idUaVVA3j!n8VM2dHd`fb;`6VA*73(8r`sYpKbRkihNE9)80zxfl|Dq? zLpp1=%RU)Y>dy0-90ox!Z>sS%T!70{o{H>R4I788Xqv!#B-ZJu@F+&S{%$+1>yi9m zG!fxy6OPJul=2_lYla_k3>=vrtp8Qll1!HV6FuUNNJ&tX9+COwd^yYAfm;A+8a z{U;T>nDe>GesYXi4*Px46Xd37-Qt6lF{$wEo0({#YGLteywJnx)_jq*Vto@2x8a-- z1?m;eqL{N`)TrhmXa&jAqOldrKoLGJBzK3t>N)7xL!q= zuw`uNNTFDwnzYL2eHrUFRfvM_B`kOfS?bx6Sj~OPO0HID3=U-g6zwqfl3V5vK|QbN z39_F0g3oeg7>(ZOgU6A^kJZst;#-(QF^X)gR;gL^FWI5a9OFL=hf3}XX?CNJudfN> zQh%qEPgmP~?>j$(&XIT7lb~;3vg;3R+|z6We9tcLAY1eF>C+a6hlZqQGdY8xGyR82 zks0LaOh#7qYKLV@jqAHLksE7B{}|+4@f}+EY(-lwC2>X=@}qVa8*gBUim;SvN`}qv zmPkY2)S>1+E${^o0~2H6I+8*_O1nmcCOJpStHd|cB6#z z-A~UQ3gX{G{JNJs)yoSs%w(ob_6oxeDcq>T#_Wc zT)Gol5(?RUsXL|cOFwV5&ARd-GC4~8R3Ihv?Tj_rBy!AFw`;HDq5#EvTV@N2*pwOB z!<60b!x71$?NL~uD*+xaC+Ke7KOtpD;dP%>#dNRU?F(x0E2=4JG67*ar@5?#iB@hmzD?Wo zB^i_)DF4pPmD=BfWcIH0mYIs|oHC&jkvmB|+ zpNWh-6Rofse5qUYl;YLO^I5FielTV;+?(^(YSJh9=XmcQiO}hN=XNc)WgKm9x?cr0 zxRV!9m6DK|y6tMcBJ$n^gIy#Z%)wgRBCnnp%5$C=~? z`u9hVtmMG+F&lPULG2N$+` z9Z7FqPxwKi20YXpRTJ4O&+6bx-OA#b>3^eXg8_Tc1q|ItN zaedd>O=q%4HLCDOsMX!p7GYW#dT%dYYzD%~n zY*O2H!Tv~#IfECkol%TLm=hFsYb+si1GYBEoo_4SsmHYa(V(*p^<^(D+_ zeeH$zsO9d41o1FPH;JynVCZ)2(Um%!(t1jkY)32wBbHdo zP%CM%!R$SZ*{E*%yu(x%&G@oW=gBVMf_*#wWqLaxC@iw0Wa~PGe^O8A= z85w5I$^Ac+j&y9q{TTrz>#ly_-ne5oKI*9O>Sj!M)J#~rce@#S(LDUfWYOie`Cl$z zvetDB?eOtrm;fShKDW1yMuXBEbs$C$=wBvI=~5EMA)R$O-{E(r!>}(NgB&NIKV?De zSgJNItD(A2TSMa7F28P%tR8h)t*3NKU~u2ZY2W?*8?*X2oC9Y$o1~OzKS`;qavy<$#REA7>Yl*2c_C{10VY1WM=@yn@|J+xyrJ& z{Fv{DkO$l0=I$&3XUMZ_;CJEp59-cf+czdh=Bvk^IgraFy@ABZc&CFpV@VRqLtB>@xpqbOV@SKWwYhr`M6$%Mwnj?oL*)4M#tEANd8l zO=Ke5e8}VH%29~Y%=Ys4XX61}sG)=*70AG6t|#%fmW^J_HXm||Ux-4WrG z4Ed>%pN8)Sp65K7U5hNop=XVE5H_`$HjAm2WPCJh6K_18wjP$vq%m^vra z2iayZH`TsHatNF8lt43vJq^o)+$2U945u(9R!mjOvvBDNXAh+cMWgOAz26kmRc~vE zGGCePE(xV-B{^|j`-MJt^aZ})^3IV3A&+yjGS}jT0&Jize z_NuWCj(T}~JcBPKpo8_Ju~0SJ<5CKn#f(&j=*~O#hzZDH_q-1EV}ba(k%y7%K}n3Rr!n{!q!rI~aaHr%>Y=y17%xh72erS34H=VK zR4!v3JWS@*^*x5dN_&ZzY~9CCalt2Zii&u(C3CUD+%_ve08e+_+f_W1w2g~`izoVw zVw*v1fk@W}bDhxhQXKC-N9}dLdlO2NTQD)tGWLF7vrfD|vA;D0f9;LmanumK zw%1Kl_EQ_=zkIH^uOM~2o!u6i9Z zCG@%iie@CO3P&`U5i>NBXEF)Ov}pK@%qZ+Lv)tcutk_`Z5_ zwbB6$OlCSmPd#p;*&!VU6=jnZ;&){F%d2XUMp_cctS1~f|7-{|SD83XYs&yVcucfT5zngugN>$wJ2p`+l zmh_YUN}JL61Bqv}n=iP(^ROGGmBSK|B%%6hA-V?0QbU`II)X}d(W?R z@^A>9zL|W?yw2;DeYvrNiW3mZmB10MR)riJ5nioQzbT)EB>2&JZq+SC`q8+Pv(#uf zhWGAdx><32jJ1rY>KW2c%-o%qo_bz4r2D`e+zz=pCI*fgahwjww-yx3Sq_6W+`)s? zQb0kOW4rc68EiD5-*J*VM)r6-4G(yt-eKL~v@8_QEb}Rl-G1M+-nmFm5csH5RiP6q z{OXKorrA~HA~?{Y`ab7Ek?+K6!K%Cv#OB*LpIl3&9dG;gV~aQ=nF$nW8$Vr$oeCJYyDS1QuD za=ccbF(KxpdcqcaBiiGBL(pwWM38$G5D2aS;j;k`TR|4%+BMI;hSU72el7%e)dnBk z*YZ=6I~pw4RL3h<{jz~nmNNA({iQ0c-UiwH&U;6Owwfk#{5NAAXGo>2RIdF)#7O*+9Dw(l z^BMF{_3wqv`I23{P}w(DCx1?E1|K;6?0h1ohJx|duey0nLAWOAes|U0Mr$h%>_28A zBeT=Eyw~bp4t;`e*V7}Bc-gW<+`;wZ>_ErK>3R#1`unV$x_c_U$4OS%?BYk*wYYvn z#ZleoxldQ*r^jqypPNHaj^ANF;#Ic(L%+zAVKZT!?&|$vw9|GLzw-r|j_6CHBX}gu z;ra9GL$H%zW1O%Z^GdVn-iU=r;h;1?NzMQJ?YeJyb_T#1Tpx+g>S2AWdX`zpr&<$d z+I}@a#`ZMU;=(n%S;Vew*rfz-vNy8mKvuuL_NO__dh(W-w$L3i+Ds}s2n$)vtst^@bnNUB;E!Z+ zyH7^AV;ZnDjaVhkcQWrDHA!$;2wy=w^Snky$j^D>`DNYocnqY(Dn=_ex9)O)ZKnt7 z8Sj~BOmm)%@$@Ce1@ExY?I9#>BpQCQ`$YBbb&FjpY`*QcNfL^%qL!To4n3&~tVU z?`nAupL(x~Kn_+fw*ZIZH_VC6USyohSN*nzdv0|73Ye#f*k1qKwn2jb_?`~|mKphq z`mC-vr<^0AMJ|{%{ik<|*T0O#nX3k%gSjk(r)#%#}&gc%~Mndm4S9$EhjKtA}7!D|=up^O!<2{y1ndR1NGZ z&Tz6>Sw+Fin*)96in!5H%;#t~(W>=|>sKR8VTy;E%Hrb@v#pS*&Fb)kCw*W$mN}$n z;2HRNcv(MXUud?w3@EKUkJy)~<@jLI(8WNX^+xkxNaAzbTs7_hpT1GRZ25XzNG%uH z(t=IoH2&^#hsfm5DThLfHZR!=rRHGk6W8qVyk_sfMkg{($=*6{L!aoXF4CKc*+-b- z;4fMs#K~5mpcH_2K}LYQYq>ZDPb0E)4F?5Z!w<>ICJXbPu7w!2f`k{JeHUX1U#0;K zsQ(cSi2g<`EG&c-a_j121D-TDP9Q?wZloOt>k3*nLQkMZv~1s-EW7q@VUL6JU%mig zgJx4meshe#qb{e7`U5}4XgmG4bcIo&Cq-v)Qj@Ao!+uAWFg40Qlln|E(PXFV$EMG= zffz7>ckenMg09>3sGkT2&3?3+mx5g&@p`#YKjw8RxkgL$N=_NiG-+>G>BN^a>2*Q6!d>y zz-sC&HJ(@IusXag)8o;^r+;My|F(Et2$#$T&u@3|5q5)11isVHj5_rHj4TR=0<)=T0xh^I-~Asr z`5*Ddc`2z~wG&u1-8cm){J)J~N5DOzz!drIu=c-%dkM+^w_aGs zcUZn;Ec%~CBn~M4?{kWugvo4tXnkz{kpC(f{*LPpTM^~!*MEol#o}N4pI6^SbKTEi zilf)R1dac>753Ml9?Ed)u#$x_R*7~!OqpSvihTV)0RgQ4C+3Z~05fxQAGXOcJO^>cVvf{?8!DgaJ9g$3OG3DTp5Ylvp1uumoTc7}Nmw2J_!f zoR|7nr?4dlE@Kt44|6=4cPsqp@+q)bl=&fc*;_|ajCuP&7kF{{s?ACMbpe$~u~YB$ zFUoc64_&^ZnpNRn)piEe>{Hi-cQSU?^MT&P@HgT=(cxjCw{pN1@qeZW`@DV8V;vNP6LVMQl)&AzB)G_45mv_owOKIp|m@Lam4b$_;hU)f%msQiw9y z2ZJ?J+>YoR^g+h&$Y~jkX=clkP%f;ij2(PPaKhpxsQ~rna(6d$Wf6V54=1>u&pulZ zXEU=ttJ;pu1U36KgR|>-4u<+k-3K2@xplCL`j_vjj2Uy)r0r+8Dv}-8j6r z2_G7rdPPtGAU=+E>&1p~97U2C=zZtHDH4w2iH3VLi}Iz>)Jq0-3<)Dn*SF#;TA`cs zdC_E3H}lb6IRy>S3GvPLAM05`_xELkM6A2dzJ@f0T^LmF(lZCq|Lm{wzo=~ohReiB#R`>obzWhFIyG0%4z1{+sFSb`L7NV^KM=U-3gHrZaRPW1;GAVRaAqYb(ZS@LDB#wWoJ z-7miK;z$EO9p$p7DwV(Z#xDu^C~+q@^R~~I^ptZZzlg8xOfH(t1H2v;F>=-dtQ2}88n0$$DsoINow}nJI}I4Mpv34{7+Bl!6dBue5Cs`X(uU@4=s~$ zLiA|{cOHY+U`#w;zs13?JQ;z7@lWPkkyi{Fc` zym!bh59>vH_N9+~Yon^Pca1B_=E*~Imt;6%H6t^|f*d_q%B^>Qu2)9VglCo*NI)w+Fdp1pT};WIvOSxbT( zvrWnsY9S2K^y^!;WM+lNDAQIUvl(SUoRi2^25@84A{1|PG_D(eq~cfj@;UdY-cOjR z$5@B&)$H&OHWk$CA%*jJxmpeP^ygoDBc>5$i)!|1a&KvHh7SDdmSD_xaVX+?!(o>e zsF7FxxZ&iAKzt-6k)ujqYnR!aVxCY>=fX2Ot|Ro?vI6!^SjVp^UrT&61vVY3;5OH0 zYuChXt#7&^G-~Yv6Mm&lwOoTbIgxM?AK9LJE-#S;2&$ABId;6coAKsW=Qs5&+ph3z z`JSR9<|bLKt;V<`P12A%b#rMgM#v#VG3bzA%GKo9&)p)ExgCzDmVD=10NQ}xZf9=! zXM}w?jqJ7g?sOq5A2&Byq_|i9YbKF=U8=`sg4*5UlRs_qC*KYsq~7E&-I<9)(Xo^= zyYHNk)5X7WM7TI>TbZB(yY=P+#!`x7&Zn`0X`c_gLTV@BaFndwf*9 zKNj<&T3>yM)Jx^Qcr88;-n6C8^Dr;{jizQ@LTE}Xt(c>Mgt^Tt&!X;d^KughM-zLY7ki@I)iu+P+AXYc zw+Cbq==ouaaPZF&W;*SjI|vgQm%MsYJa(d17Zy;F<}>YzQ8*+SC~A3QNnBNVJxv>5 zQa-v$c{kOT_(VZ=lZ)$1z@*w0)~1^F6H6H(Np9!IHb*)gk>Z9p6b^zo&WWw6VY%8r z5XXp+($eD9HuDmw)q4_aO?OxMoO`x~4Ijvf!T_CN-f6X&NGhexMoHgyuQ6M!?ZaY5}6()SEJ5Yt7%db?^sV#8xg*b2V ztRa`I3b6o%(dxCL#8tl+a|V>8`5l&*aHcQK$Pd9Qho^(G|W6T(< zWnJn|j>)ATA=rt|4dBFZn_5<|OJjLNm;y%no&+N^nS+}PFJEEDWlJ&E z%W>9qiXSyZnAj{upea-U{}YX1p#-!a{HFrksCr#G1rxb%(3Pem_lT=w|*S z(uL$bVGbg!I_?Ep2{A_r%x#}XbwLMXdz-jyA5#|4L2WoQz!H-pnu-u?0pa=kFgVn+ zG9)jkuvh=}mSO!;>Im9{{SAyn5w-`Yt+(3s!fFO*Vy`!qGB3A%!tnP!jB0z=jVtPu zQ@{J$OX~-xhg>kR!VfveBOf#QEwcjp-3<7Tn3@PR+7%3S?I`Z!Jk9s+{DTExbpw*P zx2(C>a_W%(AhlCKpaPJZh0^ssP{n$JmUQg`@OUNxq(gdt0gv@GF88c}Yl5%=2|9Qk zr9tgs;(19r^!_2O+ovNkP`Iu$*hTYC7(X5ZTFG~K%gf~m3f2Ea{_aUQb={OtGjCr3 zphOcFhH~*!162NQKX;Y?9IPP5!0n?!vArJx05TZ35E#0k5LSl+KV3o%KHw)zyNs{k z5XdmW*Ho*r;bpyvCOCRjQcRTeub-C1f0^!F3t{V9~! z2LQJhr8{!9Gl#@$+IvP{s;2dc(?L{l4B8_R7b$jjovStCUA4|A9-mIxTIcMZM6=MD zF8LTv5B(3N5YcYT5Rmm^9V(=BJ1tzj`1L+57((b{_fW>;e4kE1g`K*u`(|xqM+5BY zH~HcH@y-Se6v=(xO+%WD_HI;2aU6#@TXa>VX1@#_$m!kmI#Rx(^fIO`{pwtE+a*{N zOrf+KMWaul>!&v`{G(Nzk-9}l=spwt}>MeNG^f^;nnS+(ML|OH>bkav(_%)M&WX(MpzP<~wi_oD%W;zp%h`rK0yA>UlYrH0$-CBsi@I#YM~jMTK@I1_H}&Nyp-k2fxX-M|me@ND3|$+=MTP06Cs!+xU$vNU&CTSsFz@$~yi9+$ z$Nt$m@eTnY7q^sUIgOdTZ3kTdsU}eo%Oldbd@=&hvC6deuQZd>a&Jj@T8qbKy3X`< zEyisjxbFEjuSyZc3pJ@_(TNTFxesXN8|+@~Xx|=eQWMix>W~KC`{w`kaHcUP@6NaV z&mPU29Fe2wTLmO!eI_Gfa~_r8MsGtk=U&*mYGSV^ zwRcd(n&G&eCRVP9uTf(3i>KtdvY$eDr~D_XvjPz~#0F9l-&K`(vXoV{P`jIfwzFJu z%ata(27BKNgPdaIIFvt%2M-|Y51d#mGHa1tqsf*WTxX17&<^0hyW^lE-9+($$T?ap zMD2MDu< zV!cDP+*Sjr=QPK@3EOd0^6lXdu~8L}LmzD*ZTnf3I7kgKb56`fwNOuo1nn`dnr)~Y zHcoGU7W|3xfH>MfYmSAWCUmKL>#n@)J*vo?uDmWgn1&$<3-~$RkLf}vydSPTdZQYx zr)R&*?#0l*g@Gz6+hW^Ev6rVSl|#F)Oth^V#wxGkq)nDXtL89Mf3X(8LeO{jK2<=Z zV``wgT;@^;W3O*NG3@hqrhW>^*TOgl9~HG zo6&PiwiQj9FHM&|er&?u8{^gTWNo4$i+Cg&D-;%!U{14&G2&8nt7M-pdtPQqzODRhh1}Nv2+EPHOP`yEKI-I^X2 z$ft=cy2pVf9`YLAo>Yw~@Q{kh@sa)R^nBSvi^YB?EZrPTOxZ@7w8NS{J5>$Z%Cx=_ z!eoEl#!X99S+=Hy5?6DAlc<*^!pOoElxmY?a(skX#SC;QnPI#ku`G&TnpMKPubcB^ zSt>Xk>ZP+6-=F*aVrqeILSg+AX;P;I^Q3{?+hCk-4lX85X4c2-DylH!Y(@8UG+mO@ z8OF^AG1uCQ=xT1mKBceA@Tz>JN#lwn@GZG=NcOY z?qGIuI-0Jwb7R${5ewgyNt}CT9q8ohT~UtGxF30lp#G`tQLf)2j@h6fbLvkT>Fo8_ z*~{&5Vj;OZKVyq_JaZ%gN`Bur+kNrkV$h_f8LA{HZEHc1<;#%yx^DpeMh;g+T}?cSlRngO|9 zs-yUg11r{wnP>9&C*{vLoy$a8kvS2|hClLEv-6RDI{c>HdGaW=2)(&S!oPCxeAX9c ze0*FP{hn9jlNC?(aTzyW+ld?R!veLaPzyU!{{9wXyMV$6hRH_Cx)2_xjIG zR_~eTXlcIJ6fL7`o;bprHR2U_6K5%YD|;cMuJqY=+c7{<`*qQC9%ue&sn6C~$raWX zqTT-O3$lwg&n-XLS>~Dw_dcCcu*tSqe|itQv#kX$hb1B3a%v&_mXaP@AXg*WX+GL41IMouAep~E=98;Y*T1R}%J=JR>&Yyc?Kk9-qtATjV zl9rjd=-;_6;$vA8Cp1(Vug3jZw5Z})rJA-XMh>FHLi|TI7G~QIm)#v==$klQnZBBa zNA%P3=ZPD+AB`ENwTm^cyGk&HiphtyAvSGX4|%01UoE3wn^Y7(K3qnv)-QCTS)<+g znd(hDjewRupVp0`D;Y{@)~Lh7sNit@# z^K;DCJn)I44)^6H*UwP;z>7K4zdLw~j6C6%N~fZCEjCUivpkdT{tlXSCr`rChn8m& zQP_4HV#~j8rLN|6TvzJTxYgJxrRyL#S8a4io%+(2v*gJh3zh8K;UW&bHsS5qSCfzW z4F*bQP1}s5D8xA{S1LVo;!;1|e~1y9qG zaWNERmIsmQI$Dx9ImG&7D` zU7OL-X7`PnYElGUNw?DALPu9@eofnEQxYCY0K5{ewNQOe`n`-?Q6K`jjmt4 z3dX|M#f-9kez^86EzwGWC741^R+xB;$5JMuxbH`F=j>cEEJ9Ac8S+~ldUj*b%Q z>Ib=1+sSK7dJeBP4s6BET(M)(yTvfQHb$H_q?`8&Jc!V<7m%~oe z!d?%5$8?oS7d6{Qp&z%j@fY%Xx=p|JXxBF*%aGxw8$XXGW74jl>#UB7iE(6!9Ge+? z^VL;B;bgDCZLIn3pTWs7XyJuoTN3cwu*p_!`Bxg;i<>RelkL6z*rqp9Wbt~IYvr)9 zGm+iO^~m(14Lq6Z&$aG6+aigKSPf9d1HneT zBxc02U*-6OY#(rEaGin@xdeHOwH!wUbUylVo`bLiOc*~pdMyM5aXq$X4%BYRi@B%@ zG)>1^9~}MMWAl@jl@>diOJ|#VSFYu!g1Qfo$7b6-;m5Q$zC}JjB)1(#((y=QJcTjH z7Ep>ME=lzE1)MtXqzceeg)oYatPSsf{fxyRw}ki>B9k>3@9Js9VlN6;a#rf13V;em zyHpbK1ww(5;33_kLbjIzyLSWSQpo;kzU~zQ@S*DoG|$eQ;l+<&+j6=e?qfMhM4<<8 z`hW9)H30fGmX1EXaV~4*ClJ7cLtuhXG8x{7O9;>B0h}{3Kgjb5nRT$}T{H|03K2r5 zL<#JQmr*51mpud&n!Qf}X}mgT_^`j7Dg%61)aD^})&?vIH3@7=h65`>U|;c*cs2h& zn|Hy7gz#Y)d5}PCAc3^rlyBh)+8Y15kJs~>A6H39z$k52n8WFo?VC5VQ{(j=e%W-y zZ1PqqcWSQjK76=oxb~#8S|yzM!S~yUaoB5f-HokGWU+E^cQ2C{yAqt7Z z>7S=IVI+k}!o}8aYw0I9JA3(sdlKssluI3n7nHL|m^`hzS3~{49|iPW!n(d+vtLv2 zAh`*m`50w=f0mRjtx(=OUUdyuTWcsQ794h5>$7HvIX2;GU{Y*AHDz~YjS)oy8_SiB zW!*qe@0rtAKiv>Gg4Ze)1ch^H@tb4xj}r>8=hCR9a>OZ=B$g(^q=Zeo_Dq~#vmf9(r8b2x2tSf!)GMloi&dk^T z(YhwNSID@|LO!#W$Al8qfjJ)?c*~bDDKjYjkQpCU084T}ibM1>A0nd>t zOY{7T9=3Oabw3H+C;b_~;uFf@!bz&HbZBfFnV;l z4p*;@^f@(`7T3p4QI!U3j>dDDICW&NUZ0RA=QNdXz~f!4OvBq#_=)+>G~mu)km={9 zPgl&y@o}(vUYjJgwP?TZaxUoM3k^TQp(e!0LLNz+LEPeQjf&qCgvrRpg(gJ5e~RL& zGnuw1>d)mM5>-J@T(2m z584?Y*~2}eQZ0XDIHB-)kl5h|aahO_=WQ$BdrCWPN(6Q3SN7vRS{+|&3qzdcrWG2Y zQBN^{V@*{p{q2Nq>ASg?$J7R%LRXs?e!p?1T?gHFn&~2`Au_32PPS_4ceB~Z-V;BV zkhb~=5yvbfjEV=#UZ?v7*N@zY3{5Z#dPCh5=IX1^q*#!EO&dw4pVObKm1+C!nML-7 z+VD%P84{A4@ECDj*-gHjv>SJHm-hu_j?yKk;Y4gucxyyL4JlsSW8bKW@fSDX-)GgK zVyRwPf449~Ot*i`iuM(EfLb%Y&R2)t=v$baPBV3!ParQg@rZ^(i|_Z;4}+NrPv950Zru}&9coeEvERZ1dZ6s4AHYHn@6ttc!i(x{vj zs!2^NK^aN^B{lTffb@0x*lVKb$WP%ASa8MUCZ?M7+llw1bu1=Tz1po$WYDIqx;yq(BWb^YB~IG`O10~Zaumb; z2#oy0QhxH8_l}yqcy8#U`Woj(OOVpGt;DK@Jxr`KFaQwIR9UPfVKM*d63TQ=?Bgqk zyf*{tuzmf<(&k^V6HfWPLWtRtx`F0bvT=wn9RDz{cOgW zVZEJUR3l~iU2=@7eI|IUL8KG;Rw4nR9gWOLj2Zt6C85bIJg=~^(*2vy=?x=4R#cLQ zvEs^o9HzK-Vcqf@5?h|LhSNEy;4Ob#4a4D0QqAQbW55vWI=nbxF z)f@4P`eAv6nW7Bysx2ICl+00vm{W-d;c-r9*tK=xyvlB#%%gTIFqKQLu#t&)2ixsU zA1rgD4QNbgNBEnGOPg)-S`xYHJBx}o&s%W@84>;9oN+f-A8!qhMp{uhwX#%CY&qmV z+G*LbdmsDrm%I!7$eICpzsR;P*K%TH*UK;}C8p#++z-rFHBujbit130V&(f9S2W_| zhx%@zIy6wPcQK1RvW+Z!u1@H>8P#!Qc(E4nVTdq`;a$;*^#^UsrUmwEQB}#FGYi&@ zm~Z1Oq77b@grNn)$8tRB6z83*U8TMP3NF5m1RG$wEPO5#%J}j0aN_qWQllDXeiTdj zx&kiMiyL0DGt(|DW8@T4lUc{Ul?iUu6(Ws`{oHCi2t2n;bOUN_XmKp;0^6nAdnCVL z>7~y+`@UJb_tJlAcdP>~IOpg6CohCxNr!tYk)&4tnWH28WkbHreiGkro@(Fk=3lgW zXa2zQ0tkYU4~QgY;`|pRxaDq9zlAW`=4h8D&oT9Z+e8V4zJG~B-r+`5{=(L_0V_&R z`kRezuN~ADNYy(7TT9J=3tpRDG8dIstuX&+t;@SnF!h=%Kb)^_7jq+kMx|ZDiE_VFi_@_u_7Cud?1ISy{b(=VY9ci6}9<%*-bQo_c&P z-Oqd}gfq9JY^eflcxDpp{Aj!_xi53$M3m*n&=q6<1=fWyUDk|&U!%=VKmZyHvCNyr z*Je%f@hUg1bZv7!ew0}-k!D4!;c6Nj`aZpM{~eKu0Vc?(N7tz)Jg^Lu$R03R#{Hd-f|^;M6Ffl3Z%da7ZK+3NIm=Lc_9eP`83i`@Cl>>z8*`dX;{nyx~`!6ixJE2mgur$L=bk}2 zuH}ao;i*-h3JsLD2XzTI^DFLh+V<#5ak_nXxhjDt>bUStz`zZOcSM6p6@QQN;}!s=*SNW zD%(^)#N~B#IB^P|q~~tg;&T_w%n8OvbIai(AMMBxUpYLTMw;7;OD5yCqB0wHy(*`O+>b()K1^**<`f8hjT#I(=$an`+rti#^f~n$uTiVq<8eGzqHrdL% zTC^^vPLXMegRFU`BbKDjlNdF)?rZ%7y~XNuN{limGP)CvgptPI8JHQIRG9b8s7D)a ztXYMy058Bb!l%g9A%5!t>&TY{6B{?oCni(XGt~p z0%3QLgX7qk{Z3b;LjizLZo=0x zX-Ro*8wT?{TpY_FpR1kUEVD8$V+dHct7yNyX(<0A;>x^_hDK6PJJ~1Cc8OzpJQG(# z)nd3i?mHEC#!q9}S4Ii%@j)z$9iK%WwuuPnxvoI1%XNSDt1Rtn-NG8Y*PP^xI{J@A zCIh#flLI&pnMmHGw?}dZ+%@1MbUgVQFh(s{egBnXQL?T5aKT%YW=u>O>ZXDK#s0Nd zr48TV<3e3xkiZ|0Tj@p?Hs0MYURmVoWe;6s{qz>G_7ULCP<(V3Ci9AtwY?FBe-Hb= z!~fy8fhN$>8JigYgNffP@rzIk9LNm<<0NCsKF3ZzB6Z(fcC8jHNyT(bWke`_l~6ZI zH;r$nC&UEpcS;&}5auXK6ESO|U~>66Iw4PHeV4|t^HX{@exI6gke-ru^7HM7TV44+ zEOdPw#OrG83Rx?@WrdCC&PDWkZ@csN5D;F%>O>%zsJTq{;bC1n!h51WfDi_209iI4 zd&}<}5Lj`ibQ?Vdgm8#eP>PDnMh@DwewKnT*M{Q;>nfGtgTa{xWPhGR2{aIXHA~`J zY++Sjq|?rlc0%d^Z3QK`Tp#5^czS+h6x19zYf803aTJ~7bfwVE4(T!PS$mfXB~PI! z`d0+JyNDhDD*E~BA$BR~BInF2gVF!}UdmB=@2Qzh{Y$JJRLAFd$N2;N0c~L$J3iHY zE{0OWG)sB9_8+ymn!LzBk}U}t2p^N?(L6PxkPO_FzleGg3uH8%tUQQL7wlk3Xh|oh z;~YnV?_$uJT=m^OWV5-|wbhK)uUEh-zf356f}jMaVwcoGuzy-E>xuwQ{OU&(E>?WX z@whJ|OY>P_zxa}croD|xrs+n%4IPyqMV4N(Fh2Qz!bD8D->i5%;UwXlp{#26t~Zvj zj4#@LYfmlby#RqrL(cs)Z_{E}C|IcG+Imx;WPlTzEHtRD++;uuQ(EMDrpT;qis7XN zv6Kl_OzZ3F`ZCH!R_vt95wC^5Ac_J#*I{U(l`odFe0zp-g8iiVVe@LEsbG}7UMa}B zkzZk^D({YHPOehY9gNtG3bs5t;8we3G~;9tbSv=fD`n;1vBjk^H{%`4Riifo20c^P z*DLk<`W_k&msN<|8)zg*Rq{))Ae)zTvn2)5-)9W{-Aj4IH_ZBEeHfpfL5$K2t7#vCuI{%b&(AXwrepa)k5k#O1rzH@ibd z+qK!U)|V8Kc5~8q5{nmkAKLf$1jJ&qH1&&w7%cnka)rpTu<%Fy&hlUOx-+uF^NmgI zhmJ)zMlkB3;#aFsYF9d{iKm*qFm8UBW4`kGfWgsXQ{S(pX!=QeE5_P&o1O=KM42OT zk)>p{^D3`DhV#t!Ah)l^zaie-jF=7gJe>TRbf=v9TIzYaa3UcW+XkpgGUXG8gYBc1 zO7C0QO&hZ#^ZHeXMd9~~)I;J1`CDZOn3>NomBIco*hs6d4voTgueN2-@ z>i%yjT6aQLN@&m$F`JHC+K-dMG)s%36g;ykDpg1&)UcjXL~1g2yt>DBl2X!}6!4{w z@m&@pr|lIcA4|qzvG;#X z17fyJJsJa^rW3_yd^G7oL=56iLOQIp-lKAD)REF=J}lP4*a{Z!x5=alU6RkdkwuLc zD(PKISo`WNt9a*@zmf?Jj(CW|mo@8*OSwG%&#idH2X`AcG`>VBD{STQEq{5wyPwTvE_H`_+xi3{Q(%CS&_8eRfnyNW)Z*{q2Ibi}25@`>d%}_wY+$-3O?Z@z zVOb#E(MnU8u*s!^xsAyyXapa>i2XD6thcy?LZONrEHoiYSGP#{cwB@ma-otp79!>TURfaNN^m_%&oW(qdZWc`GR4@_TlU>MUhGWMZz_17=t$QU{e{|A zHJrUm!aqo=kBnfn;VJVmXRfj9$7vs2YhK7Tx)mT+N`Z7|k9=ZcQ}T66JUU^8hUQ2@ z^npZNsM9r1SuNiHG`!>co@3!5VKfQv-m2Zk=~8GTZ2g9(Zp27qk}ZErF7~rIjx!gU zu3_`T0poOBix2M`T2R$4CF;h!(@+_-kgtHsdK&sC2lby`2ow-5lvgv)N$rN{JAPT% z)C^b&UR{06Rr*ui1>PAeB0v?lkAAe!Rr^t?T#RD5r+{`#%~xP9raRRk_OfMk2@AK4 z4W#J0>8CLg8$@fd@qcK2&Ns0+EQQZ`DPd^gf0P-z9l|D)$z3;ngOWiulRiRh+P|Gb zKPTOTznf6JUO3x{o$qj>8@=lx8HMLsf20c6W*2|`PS3(Ix5@HzmfD%MQl^H-wBq^p z5=Q-!cV4@TXN%+Wt0;I;J}6~p%rg~#8lu5jM1fTkgY-8ocf}{+#Mw}v^W6!*=&(@0 zZ74Hmh}1U5-IlRG@AF($_VWi{>g_hwkhbZP&&0o;7EJs{)@?%N0&M;7S+}jOS7%tu z`2WCKi`|W2lmn0NQIJo4>JBPlQM`c^7{Zvpf{9{RTj45$%D8AVaO2J9{k!-%VHBBy zSp#{kt)s0)6&P}0o%Ura=VeFT~d?||b_$t5_XzE}%j zr66;(vfi4dQNn4XRmw{`n)e~CKUM(t#{N?ql_@^-p&q7yPry&yx1ulUizhyEbH{ls6h|DRB+W{ymJvXX40bT%oWPd@9J#l9UX+Q3p7-)kcW-HA#^ zzDaxA$t|oN$rI1gX)}i&>Z=FLYlz?aUd~WW{lIEyFZuONd^ISc|4T<=wL|$8cb#fm zMRoNNe~;df;I!KYy^@kk1{BVMm7n|K)x-pG=vw^>J|X#b7new3;1-M*Pisp_OIJs= zuWpzDDCvy2wwC)w{l2ey{ zf@MaEyg-QzKUBHbecV=PbUcqbbX^@@bHpW49i_59`~bJ;aFp7bf92TVhys@P zWb4iQoNnl#7ga1!k2=#H*K~t5LBJ&MmCt4d%+ccamfpi(Yh^lESnnt);$-}F?q=mq ze7h}Y*Mc&>c(a_g*^P8O*Nt?ic5{x|=xO}7Kqqu$HTdhpLQs{m-^!DL(*F*s%wDJQrPg+42x^)w{|B0~`b0H0y@?mpgR^I(S!32{0vBkwb%f{KpVI6fm(yZA zwPEqFBVaVN+=&mC$T25QPQAGCql~U62x|%)?F%D$jC5FTjiSi51!XQl72$aX5IEL+ zD4ms!w{elq8h3@?0)PSe0faluyIBnW;0tgL7%pBe@+Qj#RXub0!h}b3CssMOFumd)Pi>xp&d{S#2e(3c_`Err+5vo04pr(5|1RM)2a)QIenIdaM~#HDWDbVx_g?)g>(OaaNh%n z9t`okw6f*u8E6IlHPE;TJRq@#_!?i{BnB}M!f_BK=yeF%>J?=Sm`Wm;1+#IC8BhAM z#oMlCd}PRtU|*tH?UU?h62WAOAXWd}>30ych0R0(_MXAZ_Pw_1RtR~2?X(pHMHqJH zc3X{{Ad&R0gPE{zsIT24VxAE5G%24~6#c5IOoT_a!>yqxl>%=^KGK^09Q72u<;|;+ zSLER~3hP$rp+*pwz0ugY4gSZ16PFcFAvznQCOiv+R+`^!`Y-u+QJ;I)u6s5(v{ebB zs^qqCc^7Q%rZ|uKYkXJ9ILI+?EavVpn&zubd9w3B3qBDO)lAIsSp+GHxGai&Hc?!t zsaOi~DSHrO-A*EzN~lC`$*@;#KAEL=Eo@Rq@kS<2xIYoMBRR1Fy!oDjsG-4*U4)n~ zJKIW&&ha~=CF+>%b~K{IvCU~m z{nUqtBGXvT6ya(}>)S{jU?Wuwy_it90zyLeHL!|JA$RMH1r=_tkxbpYR$k9D=3bQP z>hbY$J@5J{qLR(imlO34Lo)JF>}S74o+h4rm#{v4;bZqrO(*)kxEm<7#J-LnOIS!- zxPrEN5xw2gGT#&QUJ<_rlc9dtZ9->ontX;%qkk4W&Vl&lHzg9Y8CO_;V&>SIW_<`V zgPufB+iLo+4x;<_da#LT#5mF=yK9*V`sk~V>f&yAU+=!t=0MymK*#W03g2S`je?&e zFUT`36Om8p7FhHYcg!d1Jv+DC1#@k+J6-;Dzg7>ipf;vF_i@1%<6`^$e6?Lz)5z-G z`{{=hq6qd;xAiyrnSh|s#6g*QodT4+3ZqzrPP(Rbs~{QAhXo1t=v01obxR$nXn$=< zi4epP{C-(QOj)@wjgLZ-g6;q(BpgTB;Zz^j!eQo&T9{!PfekKeMh%;reQd_wwOh)| zHLaF!l~0a&4-uLKXyx0HVIQuGQr;v{L#bjFAys>mig_(47m>*KtkS?0$>aG#%9M5R z22*L4r~mC14a4eoI9`)+5&`Pn|rB z0>Qo9`bUI9t*LtE9*%%yYyb6^3H?dp``?^d_lM&W{s%Yw(=$8^;wxhv5RQXgk2U)A+J8_Fe;9Bh9 zg{-tCgM}oLXYkfc^GF`%3z%D0Z{W{Y%1+55L4+LQ@3d5xKh6d6GvM+7P))9h+#Pu> zqp^|B1H1dyNd*Fh7T@*@qn-C@K6J(0PYNh~o~{x7@*Svqd{#(`SPV^I^~=5&`-B_F z+*}}+g^UR~djm3->z6uNMNU#KLIx+WM?}K}PiZ-KZgB9t&{ADJh8^a=mH3Y_K_z~e z(OswrfdQ%TeE+W-3Gi+qFC}3Dj&qdVYDC4IQ!2Mh=u-;MRkS zMKAxb<_+FHevE4uJ5P9OZ|BZdmq?sI-5GV{^gI@ftV@ z=>I}G@PX28;fv=GKf&zlQ8EU0OfP-aJ3A!k+?ylQL9BVk)5wpv1ulE~JI$=1fl0ZB z@U%rR5cTt22A9e)&g2({cuyI$UkJpAvb^_j_3|_^P7g0w3ewSu)NtP}Pu6e<9f0xB z0ro!svDq3PP$Tptghdz<)NiDq^UeOqh~PPbZp3%d3jsDTxYYoC6ac#y8mYfNMZ8Qp zdLiYwCSL?o2RAA1WlloZoib=0wgomd{ySUyhysDEe?@YHc7>A+BHlZjNTBWc=PROT zb0nZC0UM?TmP*rstRn6VUdZB1bA;)}o4Q5P$RCvcqfYK5w}IaHP~$$t%7f$iJHL{Q ze*mp8g@T=^(EGa@aKBEO1fv1*5T9b@t<`%TH=Qepy%-4vs4Ds(#PM&hW6;KpyZm>+8T%+nIe&huTLskY zI-`C+3n7qQ;Qi502SLXS!k(EMa##M!>1_E#ODroiC<>5_&<$cC473=W+VTl?U`~u1N+K(RHdj5ce+%M zo(R}G8H;sF!MQS#d`J53$_yC-lA=E2LHM85}w zg!onQZDs1e9;gc1X=LXtcbaOLLk#*;0d@`2F*u>KZBKxFcM>-NKvF#<)U{5QM}O50 zbS;ViAM`F=5>5)U;-BY$0UlPcVT6DC^aoAj;TJ-OWuWIG;GNqs2~=-~5)s{S|9mXy zYj5BdLHHm{4oG~Ofj|g-aPHdNU~4G$rozBUc3^T`ip>F`+CWT=&p*Cb{kL1#6G#PA zH@!w7#-jVd?ZcmmWeu_pfvcic7fRskUQ2ed765a@1-=;F92Cgmsx+P-YjQ!v+G|*O zx*xHl8`Wi20}AhB0}@CvSYdUP@CJXA7wBugpet=%k@VB9#`EFY&PmS&4q0ymspx_P z7|A`P@6VADp-JWeZwcOMiQ9z|d5G7kfO0+7FRB-WoSD)X>ekB0T}j-rkW>!jGDfhX za$#a5o=B6ElYqMud(Gb=T0O(yuAY?}x-%s8EP!98QG}u8<+DEAIuXC4BOcN{R#o)@ zyV;E40xrDO*&8y*<^;HFlDO1w-ZK2@O9-RILHW#dA`T0;?(Q=2GqdZ~%^JASpf@3uiDB3i+DB5%rMS6^Xs!d_2%VV{~ zl9BQ^moMoNVldnr%omW&{Pfr3`_mAh09gWIlkc?X^fK$Ji zJV+>@xwF-zIq8(SBwRz)qTKMj&}!q9Rp{1Atg{1&7jr5$2))b%wR}@5YG~M+EDf`r|LbyA5H>V zI#5Xxoxumo2PEKbs!K9J_X5qQL|wJ8L%4iu3b-Q|nmSJipk0!%LbNAN7a!R}_uAYd zNkP4k6-by?KqFZLoLoaaJ9Ylth)L{`JPZr~gIk65@GcsF#E5JPXz_UE(#X&AuY;6< zq84@>)>He9h1)+@31mv}zL3c$77(hOX~( z(rgV#ETaToM&ktyg(>{yZb^0_uT;a`=mQy>qB7jfxn#(Ijf;4OdN5sR4f-I$JU@`b z4M0v+vMi^U;h*e#5w< zVRf&8GTEbJDP1rgPy>1$#YFy=?pMk#$9!4bB;$~FR3Z93BSjxZ!226~uay95YHo|Z zIwz#*$yqZ@kdm?DqyCl9Y4GNq0$xwPzl6tjxpf2?Af!MUe7f@h`uw9Rh;lnkIeMTC z32+jB>4c*CLAM9sXeX#Mu!s1&F+_Sjn1dzPIv5{a(#Y{_xD7v5&^(6h&5BFU!G~dB zR+T3sT`Bl?Ru$5Ogd_-m&k5Pn7q00d=m0r#;F9Ore2&k(gA=J6C)EEg?fn6$sG$2HrM~!2JuH>d-+{bZ-`=8qCxUbZ#yeqa7y) zjCVo|FghJ8Fw83INbbiCBk{j^`vfcpw|argS6y#Y1*r2iv?#=cW*=U zDYyz;B^UMlpASxdy0~czz4V{qqQ`*NJ!h-*dx7VhM}0DV-VPkJj~hmPbL3*OuM0z)c7R{TtX~>1$%h$HjE?<@&;K8O;1i~Pf~Js3(p@tAW!E<;P>3MJ;QHU{ayUE`1c9;v1%0a3pGw({OTM(I8d z5Id#)EG9W{*?f#{`xkAY2ZQFxVy>TEl?YT$69MlA)RQbkrnq$P<;wy=i9=EbD-cxJ zMBTqD<|Hye!y34mCs%O(=@&i`a@tmw?Ejim8RW5+jA+i|d^a~&r0+bS^AJeir$6d{ zzu*c`*JK9tDE(&O$mVWTU)V4tQkV~f8uYN3Rwn*EF%O(xknYEb-vG%7nGb&J;&=k6 zbPREQTJPya<7HHC!$38nAgH;yoMd+K9I_EmWmWJSM-sPSBgOKv(ZK51Kr{AD7$yI? zhGGvmfZ&440tdZ5iVH(KZ|(%*zzH|()&58T3A4 zuA2(bvK;q!e-!(4<|YHqQzQ-RwW(Jb+?$JqH$c~8;0_}#NzM*0aDRechj-fRzY*D~ ztAQCJJtji<9}(G^CeI)tJYSHn*}4DkScQZ^>*&!>uVbAZ>~PKqu$TrMP;d0Z+EWKq zM~v|FEOt7i0=yZU@4EMgVPH!ZIF;h^TH0S56o5deSiq^0|B);S6xlZL3xatYK?LsT z@3t&$$QicRUDP0s`@=!EKLV|R=1>9@(o2hputS7-U1VUDm#uWOM z$z59B0%J{q;`6W`4;e7;xYN5OT<9FQARA1YQ@-jKlcTvTTsqX*AT()Sy`FOM91cMxK}7$ABM+&*x;yU=nR@q^TVr^>n*w_*#h z0z~ii2i={iBr&9AG6W6L zF1er8n_gHBEDV8(SxcB3)f)9|lxH@Kj%*2<_i*xH;ln^plKi8?;EGhJQdIsLGjbWz zc$3;YvU-Z~ecIQU4`|#-_q0i(Ov&*8LFi>r#sM+^j^p1I2?P~5es7o?n1C>ou)Iw# z)C1}dB=8%GtueeSg=ld_MZcp#!cMsz#DOQUkg$0Ci)>{ud@YjdR)TqCB6T6=h^QR+ zL>TF?+FGtjnf^e+Ck#b_G*F5zR!Fo-*g+9zC=V}$EMDE_eGbRcV4g}r{xA7#uSmk` zs^&I**UV$*-5(J`w+>5g6u2m4nvSRsytU4{Vk_B-6%xxK`HrJ2B5OcKKH912b@0#5 zM8T7pmJg;)*wmbD&jOZ&xr1-14c|sC_h@@2J!H2uS|UC5Y=Tn1cIk-CIs|oM_insI z$}d-&%?8^{#wo@E3B`qPZFq8w$|kkmlahG?lT*K#Wn3rrYSJHK@MKAene=2yRvK+j z;s^=PeEPI{SFc>Zl1o5Dio;PY0cE9c$|b8sw_PW${LnS$ps7OV+F1gj-0jt^WTK^v zWp_r=wwfBXVeR)v5d*g(q?1#RIysG(e{N$|qGp_&mY2t8xb<@^fzQEUfO_@i z&{qAYYSCl9Lrq_i+4))Ng$aS&Ht8FA{F536Tci0EM;|*~c`bI^1IJ#O9n?=z+Y0ve zMQ{6!$QS);s$TCaN*!An+8)K4aj7w)Zf!z0lz%Hs7B2pR;^$kL1c$W(a*er9A3~AD z!G+r-A4afZYkBtug84PZUhTZ@tmWBg)*0(~-i#}_H=%KNetRaG>{xL|KhD0=L9en) zxkOy2yLu_Jx;WI!RQ#ZTZM0LssfE0APbhtKOhSWcu;RV*Zl5f1e4(tdsm$nj%|Pw` zQK!ytm*aKspSFa%+XYxZ6YmA|#5I=?R_@$b9WK&ZO8QwI%P=TP{W&=GV3xzY@}0!( zudhym@x3>&R#i7!Q%mU7aC{*}T#I*0jAYvXvNU$D);6I__4;Ap4QA%_fmqREnvF&H zA*~AQR%%?lgO^h|^!^2H#4d}kwvF-~FxmAd@S37p%?B|llM z+)?JMUGoYzGdoz1sj$Ty`_iMspeC$NHI;n|=oex&-4yu&rY3DlkRJ?14Z6&JaFh1~;%f`z7Oedef)N4thnuw`>(_wJP z^_-~9%O6(eiH<^P78*;VjbZYfQcFh1I4BMq@tgh56-zn%CkNvt>ssxuE83g+hCgkc zJ|-1dja7$cO06b!$EmWiPPcfV*S%Y3X|lf(~o+ zcezaMP0SgMDzV!YIGiDJJ?>I`Wc|T)t|{* zGj!0m!YuHk%E=zk&&L7QzyA%;+HIgYROD-ypD6pX7SEwl*22_=>NyqTgOEi zbPdCRpo9pBl1fQRODU}gNJ}>>QqtW^2?~-*H%K?q-O}B;bS>S@?su)IxA*ft@ArHE z+28K9bIqKYbLP~XIY$9ZKsYO3YS$?xH?C4;{zx17n@D@P^76{cU>Tk$Av!2zwEO$M z-#Aa-=G;Mnst}~;x_6LaL8fg$;QjPLQ)dQgWv_La>-(j)h!#b)V?mDDE4#Hm^SC7P znYVq>30URCa~PMFD_=#QGRQG zIUdqoZc?6l!5nryuqG*;L)xP@+)1O8wjj%3V+;OwJvun%QSWyksU#t35mGyjm$0Fd zjcf8ey$uvS?$rRfiZK192lj@M_P%R9LQ2VI>`PTU;3o#N1#a-CiVuEep{u2PchR?2 zcl!!dl6{8++buH1jJ*`}k)ioOYIN-J)L^b&g-)F-PGx$IsDjpE-{T%uJ(pe0i&*zm zX~=P_bd5bAQw^pQEBg6a&9__C%2DgV zmgiqVU)i0#zaQ@AG8h2ae=oXNJ>1^T?nHXY)g3Fix@^5;a-NzFxHC8O5_UZ+ZpQL8)8iQ(F>IekLUA8?oFX+{pgg$?+I3k0M zgvs=X^2tOytL|DTAC|BXaN7oHNsYo@12il&*!RUT3|= zcbj)#&0q(~;iK|=M*B`a!yx={HH=)ln7;`7cJ~ugZ#m+I%f`sbQ^*WG18tG6FCT4f z{aRe>;|Q7;`3VzXjqXmV)j+a=@9qjp`U;Ynd~|t}hYfU0yxkwPU#$H#gK1>;Hm|O^aS8S3fHU0#RTDwLK9+5+OVV1 zBxs~Y=u4M&k%UpE-Nuiq3i;CB+hp7|`Hs7;tL_(&n&C?xDM^!oh4L@E;BzoXTgvtv zPfmHceY;_&+}4G~@Q7Fb`?6167upt3NR4BEf%!D#^{HEZ{%i#o<2mwM{po4f)1C1O zFKhG@*AKbjHK$p$PcG?-K9Y0yOu#~3D(DGAr&`;<``V?ysL&!3tGsX~s)fomXp?m% zjsYm5aGhKF=meo0JE9B?_C8 zjMUl=F6k0$(mz2*t(zTR+|Rglg!C}Cf)x&pB5?}yg?Mu{YjoUP%eRkyR!lDBuhoM2 z;7m<)94Bi9Eio>#uE#Znu!mGz7C^o)p7FpDd|p~PV%P~zP1KRp5Fs?CRIVS*y4&5G-SBag_Ji$&URfwu3wVqIlH#+UtZOW z;=7*3pWNLA7t7@>FHUJ{*h8JA3N0RMWN<#-e*wB}Ifvz!-MZJ857p}-^=(MG;~qI; zI8c`{uDzW*xotS~gfTONe#jvZI)J#EFJqZ#N1>>5=%t!D!VyvI@?LQYdW^rb4J6LX zy{BF6@L|@ilOex&KTAGch%WO{flu@sw6Il6x6?G1>eJHkUAb?G=V!+aoPi8fDMTfX zFWBtE-Pc4CbOc)UzkG@9J%v=C-^a?Gt|qhPWa%2sQP~IuvP|s^Y!sXpa@bd}dv9s| z7$Ll~L~Nys^`hor)Hfp}@6(J7?S$0UL8MbC`JC+^klR_9v!-l^}=mxd4L6>#9FpJZLtr;yRETqn*BX4IYz;%HgA3a~6so zXX0E9n)or2>ey7C>mRn(b3Q${4lT$l=zzRwWwAC7$zxyxaqtcNUG39rU%3$@cmX-X zhzXGN=?Gj|d9q^-(xSc9D`&Y=-K2kPxznh&6ImwiuWmQD-$o9RxD136ciPnJltdLz zLcO$GJmB4Wd2QE>tFz;@FZ)ze#!1guoqWrM!C+KmeH~8Nef=onZYdqcq#c=kZjlJQ zCvgl%bUJY`na}L~qpTSg7g2(vTduC1+Kn4udetuWEj_9V^bWF2jujMA`jR>gf&A`n zdXFv4QmE3TRl!S3G7TmvypE>t&MxbE*ZfPHhgx@58Yg0~4?`Xhe0ZL5ZN9Q7gvG@R zTTQm%XK~Qm^t)6^TDE-U;qJEVVi+v;aAy^*8>dpzo5ZH=`t+0-)_4^hqRgIAWnI<7 zQS^1A(idJp!nv*Ku5obh8k|tH9!t|L@f{_q9NR>U&EfitT~GX|-J_w4-8s(cmF<8CG-)JUU_lG4Fmtvx-lqoAj1Js? zd;vYnlQMl}_fZ_q8<^UZB)GD@7PoWjd-WEy$*VLwmn(vHQVe^Nrw$$MT)C?W!XQi+4nYH-TLC@u8 zqp6g2ZnmUL^7-Vnch{h(`Teah@z)$RQMaz0D1tnyGY#$4dHkUPxQ{{t(&2|8vK>7q zGV24?$KINlM1a+>Vk#k-Ql?`~;O5^&9#MOEHm#~=mlv^1AM6?(C2@+UC&LSKXNc$w zx?^E}?@{f$cgOAZg0(U>HkS*Qf{|2%NtYMGooD%~&`RI2ZuW{D`5^I=!e-6}vupo` zPjhEZ<7l!9mwk7b$5>R>q}IKTsi!luY)j(pnY$aQ2bGt6#F)zaJmAIjK0sj$DWv09 zjr8wUNQ2mC$w{liUGxSf;k1h9!NkvkJ&O0d;&$EPn3>YfXW!a_O_dy7udnwzLjyL& zgW#V9(b*op=}t-7Gs9^Ww~11f59NK&6sp5&#) z5o+%NOA^2P)!7%R(z{k{N6l2#C0TmRiG6AN?7D#u^)WInV;0lt%Jbl{%p9&`9akou z;YB$2h@a`Nx(~0Y(KZa;|KHc!htaM?h zvTJ0a4Xrz>!9~EA-Qc}FvBx`i_;I_(qcH9*-4#%lV}tMNl=j5n>Vu7F>Z0+*{)TIZ z&Ba;y@%n_*JTTRYifhTC(x($veMT- z=2V)$GMny7k390QSjVEXBT$FGNlzEk4_)5l?jG-3B9PWrTDzRAu z<--}wJYl+A_u^Y4AP4#ZS9Lxiix`PdMFcCHcW%);o;MRnH1+TDP@-tQ2cJ%E;6idnS<|CkZoPq0BxD*v>p+ z%Gm`prx;_xwtZ@h+^)B!QO>t{+Omi|Ea@YQ)n6*Fh1`A^7<*&v5&3d$4wwUZ{(s;Mdpo zRrrtMQ)GK=0%(u$3{TD#KNt7b99`#{$^S}3yO)S?P8?@gz>j_V$LfkdG#%uFhVGDx zHWa`qREf;JT?v^o$FVAChOG0ON^8L9W*5l`!7~^bA!Y&xqjxOp53a5zIgI)}p!tt4 zX?a3F^w+}g!OipgJhKna$IpN?-wbgAJ-hwnGx6;biD!dYkEyESOENcw%CnZaqT#NQ zQk!G&@85Xhi(F4POUNIy>#t|E8}T<>M0_V`U>$?Sj3;f)9rnG*&A@>B1$nz?)>mJt z74aLa2ImK4N`p6g1;|74j4SKyVHsvm$KN&kN>z)Q%GUGSv=U;8)w#Tct*&|^-q?T$P&&k3gpDcIkjf_ZEYhN z;48;*@FA&99=UIuau$ookF>6*ebl`(djr?&eygPxbrRoVPTS3N-m$ z7gP1bLfjX#4fIGm)fci`+JvlM-L{{c5c8Sg@y~iN3#2i8J42Ai z;^&iovx^;H18pe}T-}oVP!dM>6}Tp0o5#lc7^R;c6tATSU8B4WV9zdt+m&fuV{Y*g zn#F((a8BG^q+9M^3Uvy_LVaaO>16`H6F69E1xUA2ol!$Povzx-^*W!d@XWa!rb{@c4fwW<45x~-lB~B2l7bSS!zOX=)$)|` zdiZ8KT?&+{`?K@x$TK{#$ZfW3r~|KEua4K@nAb>}M!noA(B4W&xmthJXH&6ogkcEl zpO%3KbAdj4)SO)huzviNlYtyPe5S^2AiRvW;M$4lNx^8oH#v!|WzG6gOW|GeYl%n( z(6v{~na7Lu^0uq6S70o6`0SmFA-e4hJHm$b1N(2C+7_hz2Mhc7Z9-SVb7B`GkNa`z zHiNLh0ztllCv0#ag_+)5CT3dqsf)S7ua*+Ch}qsQ!*GYlR}4W;(sz=+3pv zL1CZ$nI$A=>hYPkJLJ5bpHD(*K;_JQ{JV#RPx=gx`wqupV(pU`@YA4>nX)}4BB7C61Vq8wJ)|u=Zck>#RLwUhxPb6gX_;0 z<{p7QdQ2M!$d#W2`=?ERDNjDau{e`P`=oL4O+qOg((Tp%;o96tYYZ#AZK~>>6i39| zF!+4zJ4)p94?B;q>L%lJg!Y>~DOtg8yh1q=yO-^OZhNz^{4g6im`%_#r4-*Wz=^X` z=zf0eaho=RVWjBGsL811SUUXHu<9=CqRL?;h%q;_@PdOU1^R=yq`h?Xabm+oR`C0v zCPcBn_bhX%B!OF?ASit1LbRwzUDtNCu5LU!ZC2Z&K>OKNd`jExt$v%WJ*XR1)e)=8 z4v!%VB;I!aQq@@ESA5}K27-G+r`zXd^5g@`6L?Ea;)jeUHXFhPcXu8Sr&*k7R^_GJ_omt;mAkuBr4qSu0E>jwDRzf{?!9O*+~3_v^WdzM@r|3VAT7z<3iE$E zF;zaFX>eL$Ih0~sILlLEF?BGO%~!Zr#VORk{krah&A2$vnTQKWgC|)YQhm(V5Bmh7 zS7Q~O43;)iFIcmiuvx^rln6Iryehx&s^5+qDNGv5k;!cfinXgZYJ!Eb0A-p<9pBv3 zn>jXT-I?bz3}l>qa8-IW8ypm-IAymnQf{2uhO-M4MkPtqbT?fR>z#7gZtYjg4PS+j zftLuE^fKPwn;syjtaWXwOMp&o&IGWmt1w_&ZaBbAU_0;DGz>3n$@ynPNBnf z=EE5fu>wAe>Sx>W6V*$WGo!re&Y3!OyquOchgtR|m*ct9%Y&BAZm#D0P?gzBatn@60ukgT+tx*= zyBSjT@VIi8M}V}O!>(K;wEQ?%ThC(IDJcz;~4t5`qvb2Qb|+6c5coT1o$vOQI9 zGF!PMm3dUW;mF?zcaK}0V61?QWR3RLSy(`7H?w-BZu4Ym4n=MQMJdy@8pIQvGw>mm zcj_&9cRzr^XP3}m`^~Yy2Y3_k?%+M~h;hXm_aH22={#dK;%arL)?O_PFO$ z?&QP7F=EDAYX*p9DP-)}S+y^r>L>gOl0!*^lwF}xm1I0W=K~`H{fANf=5HyT&B{!; z6fI)*1|#p}6mMOZ5bVq8KCq;DV5C(S+Xpv&Z7^g;w1G9mnzUrZG<~%+_^j0mcM&Ca zi*arJqXYE)ciZhFC>C_g;`u|_t@}D|v!k|a1%%;`TrL^y2UnR}4X2el#wwqNTQ7Xf ze;XN6dC{j=2ulyDxz5M=ta?Q;^ETT0{OVI~)x!dHRhN#6_vhvAb3b}?XF`HQzOoTS zDskvo@CO^ai1%+i%V@Z$u*PU@hZeIW)PyU4w*}uXfr!MV|Fj7yw(;jpTyfD8bgOgJ zpAC@{*q4|bEtPMn+XZE$oFM{b8Z}WAER_RYAcW|(q4|jrx8;FZM?;6eF2R$*2I@cE?ilD48weHn zD2d1bgyn=5&{%Yu! z__SJdIMK=JXx*2t$JzO?UPyFYgxtPkpNZVnvNzMgsq1w3IN;&0OKwg&zyO5(A-B2y z4SHyVqpW)&qNDdQ8K3^iAA55^&X2g+U?kA0P5R%b@}7uTy?2@S9s@DjU{+6pKgZ$! z3Df#@813~IztIWt-~R~Hy6HUKuLl0d7XW6!oiYcCH~v@17UCFL7;)nM^~-%np8pQp zc0%0Tu*AB#78i{6_12%GZePSP^+*#C1@;5i%BhO#7KWOq?l>cgPau+)@B`r_O5lz( zE|5!?<^dSEfbr`*{w5~C4@5!X;+HNZEFE^rOH6RA`ReLf)hWr}h`nEJ_xupCK)QEl zB&mm%6>DbTcX3~XT=1`)g=3FU0`>=`vMcT+6 zcDa~|VR-nv@+Sp1a<&KG10a3Mf*<=;eDs-|!WAK& zZl{3@wKi_Q(Q^{=*<|W^Bc-cvK0mb=Rv+FTXQG0w`S?7>duFR7p|jS|mC;I__{Ig&*ZPi0eQ@;-s^O(;Z z%}&8U`Yi!U6P+g>5R*c6fA4UpmA>hJ7D7ppQ?M6eSn~MHsvJcB1xCdaMW#sd`gI6_ z%G1z2c8Z*0}6cFBoP?bG<<*?Xc6jl%W7%k+$2o%_DVn!FKcH>%Z?r-7FRYMDkuu&27|%|w~b{HmF{x+SU2Dbe~`(y!gx+!7KTf22Kd%O@r% zV&-=7s!c-|ox~X0gJNb3uHNlpoGKV)>g?1?HOl$n*Pdl3OgBkvV-RZAKfbb< zVbP}`gSGBr0Z0j&OR&Tx31K`{JS$#bF%9_%1mEvbau$njdqucbx5$&-+|KCNW2vmR zi!^bE@zvT`thIrkv)_S=I$rbEFRn)vT|uFATV9m ziw}Jh2MRMtd-rBk{x)kKm3MI9`^|MZ!$Fx{Y2?R~Re)ycMJrBhmMq02UUoU7gY z#0Eai844(!_CezZ7;Vc#3zqG>Iw{gaq${M730bNQn{47(JGpZ&9Or&OA`>k9ggP;%QU}4di@Gg z4g>9TKQ*@=JP1LofjV%$xYqrpN=qwiL$G_DKU|50>9u-4V0ZwlB8&8bYd?2 zw+zaR6Ei5oDbvIOHh1x3SVfrbMXQhWZ*C4p4_B`~%ft#CP8!)9Th`xQR)hG_4>yp~ zDj%<1W;k)N?~`L<;FS@Fbx67!NvD7rB@6UpCu7hEW71shl!R7cjLJsI&9_DN^8y2l zNN%}pgi%Bd%NZALR(Z;%ymY3q8e7eMC6y4aTbjb3%Edy-4w8+Re~6B^P%OM*yi^AM zlee~TC9=)*9Ap&5(#K<*neQoUbCXXIA+H1p=cDcjT8_AQU#uM*yAW`*$HQq-A4KFl z)r0bGTWW0YwpmH{4;npjJZRvcb*A9Wd8p^Hw&I?`8m;vqx&MvMg6gyMfe5qUARo1&eugwc>QGGke&l%K)RUI@g!{{F5ivUBAd-+QWztP#t$ zwxICh%}-Tv^rpge^6)xhrq%8dX%YM7oUC=$#ryRk%A@+9S#50^^qB|_SC)wl6n;iY zqW|A>()NuoxUL@i!330TRS?_s7tM&QK=`wMho8Qa@+3en552-IbgLg|Ec(HKw*gbg z7$O zZHjai;SpY?{M|7Q8|CTa+poA7ZC%nOVcq z0t4yFO3Rh zCR9bCJ3>2|^zC^1T26@h$uOkNQZxd;&3@IMwOUtb29*xXz z3OCyh_&;iWu;&NRTOx2HKxEdV>a}2^Yp5ODRa&}STDl4)zGZ_|LF(hcCBhD3iI+zq zDUZOV|36aHp7@tUSd(MR?poQp)Uaz9?UMcyRYt9UZa&ZJA_*?S0II;Myr1KpLz>wtJo|oX8`?1Tm~h5%soy0-7#x{xrMu3q(i^li z3Le#1cOGAUJ}y6tHMe`h7J8<$_&d}VH_B5<3-ZzukTshqeq~e?Zu1^rjQVL41;|D_ zB~4oCTU|2)&*xNf7-^|)|50X(fRJ>m6XF9KxE&hf!6A3#l@YIw#obX6;5Mde`C7i( zH%rWJ|2|&jB8#QsP%6fQxrsF;Vtq_9`Voot4(-t@*P4J z)T`~Ebhp?N80duf1nf5$6xFOw2o+1OS>YDZnhN?G*$?@)jP6Y;B}qRa0R#++Jd)dI z;LakDqG%t!K6vY2#TlWbqky6JDZ18a{|0s=^#8XKK)~r!48KKObSvb4u3VrZlxXB< z^1qw=DI(R~Tn7gsuFf$UmjbsEon9s1)6pT=`^ohE*Ik%jX<*_JG2Vajq5O(_M=;|n zMBPSv*Ps8|G(fN^kc>i9Y1pezn8FFQmhZkn@zu$6i}d#>&Y|ov>fX!92UP-jZp@io z6!?FDP65KUML89{f`#YdTM!I8C4<<#{ffvmg={8$T^S!An#TkfL{vl$7lu$k{ zawmR1AvHJF44G=*J>+v+ecsYDaAcf-R7``8iTUbD0Czd|RB})XZW#?WG72&cDTX>@ zcC~G8Xt<9VPlVFOY>r2QrgFtjjX?kICpDai*QnuGcU_p6I5=weotT~U1HQ@cU*PRG z4{TNM(~N)Z*^40Votkl@L^~Z1Nz#AB@nZ!w*1{y_o+_>|5;7|8UbQC=aB~!%$1rTF z*0|}xjxLOka&k*9vL{~s*R!jkyQa1roL_eWzMo(_5WjJ8Bt9&o9koAuH!lzg1)XAk7-bgNEF_W3xWd3i z!}PVSs;ZM2+t4!Ie5)m?nv~$(yLCoc1q;nGA)kyAt`E0|WUwvjdOCv7M%A>Nn*1}9 zm^`li1e_`j6jk0;+CG)xdBHJ{jEs7vtEHq zuI(2`2sXKl)+hsB?S$aHGKvnR<%CdIQhFjLpR9vi7S7_L=wvtNUiajcw8@vO^F(NG z-7Az>kjZ5POXJK2b4S(|$aXq$5<-x)XiwOb)P63%Q#NWrXUbRXm3KV$*RLI4Gh)-i3dG6Gw@(HF-6b>E%iRS#rp>vf zeS~ejuDktxv6)HWW^U$(oB8z{)8eoVhSB!uVi>`>No@U*)plni2E>gbk-l-ACURE0L!_b@L4uBxMhPoakT!HRXVK>;?A3ZZpuYGBA8CfST z3qIWLWDO>pDml)V!(5rUpzTc*a5V#+_c#;jStbeax#_1Jidt4}_x-fOd&I}$2K$J1 zxF$_PkYQWy=McMmuX^AN!?Cwtt#S|MYDj&I6<+upr(Hu4|CP*jdq%JJ*P?e87nMXt z$NIrZ^mo`@HEORu|9n1wuf1w1QSfQki@bba{{T9<=a!%qK6f-zgT%wuFZgp>4q(;* zN+uQtuI(Mbt*KEuKbw>p6o6Hyi*L6YJ)JQp;L+5KcDUofL^Ed;xW1y%@yzMs3e8s0 z^4pTNw&`V>fR1x`A3ufh6y(%^DU@rd4f~!cdaCMT;3WQSG3-Qc%O*GIlV)tZCq}as z?_fu|2XwmIoSnm+;{AJFSk@Ht_Fgj_4li!I>TVyFNRoLBTRfyPDIH|`If@mU5x1Q7 z{DxV)%@uB$R<;x+6yj~8-(Y$40yruCnDyP-+FB%qgz-M!fSkL)^ZEsC@W^~+rEW#9 z+S$ASgEd~{k9uzl8BI>Qz8EP!na}QFQA~+k4sTggXNjhSD352wcSwo1v?hvF7Jptw z^(C>TRkYq`fA^+q=2IAz4|<^gV~RN!&AYGGy;GJI*YE(J`=ixa5xcIyk+ko(sF=LG zBD11(8A=FQ-dH2GIj167$ zx=G~KuuPvma6cchIfWBY4qTOY(FpMHDGNakQ2%AIyBB-)x~<|Bg>&I$*6lpX%}!E7 zUo+G-Ed8Zr$RE;b!#;GcR?NIKCUANa2Bxp}Y3Xf;Su{y0hIc{>~DRk4*8;fLC->i7VTuz!I7J_Nr z!#y7y{>J-wYqr;NcdATav(94-o$}!$m%}}rV6pbP<*jrQi3vv5Wo^gWt@&9p%Yl3- zJ{7jI(TRmd!wc6#Qg!m>@pTcg^dQ?d%0RCZ4v#Kg6>7WHchlL9bG*td`ikeago6%Y z8cuw|->Y2Flz8GS7Cd|njC>8?a&O6BlxHQ69ypg9=*C~Aw6yFUkTW~VV7n|FzZ)M9 zJ!xB3xrQ<7N~2F!3?K9;u5yvTW(vYnb=2t(g;R6XLJPb_OOC9^gy)w$R| z1F>}Gc6;X@-b)Cdv+5+z?ck$oV7a~sBR4IaFIZ-D}vCD?sW~?o)vkz zAM`Y4E8fbKWqU3tkNqsIV@=VUwx<5DRDk5ts4DbIyzZ)|x_jH+woGC=G90#0DZn&Y zyT}u%zE9<-Iytjub^s#15ouv$c<=BKvcXFh-KoqjJ2!03ixfqB4rlaBQ! z@xd2dLL39&UI-u+?7`At zd2uF*Ttcc`JMp`tg!b2mXrv;0$V?(tM>-u}1c9r-enerBM2|_P=-98z=_w-;8|d2? z&CJ1HA6XWV^iO-3`10^8xPw$RHP-Lrmx&r2U@2ySwG+$AtG}n=oy0zM4q0X_NDazB zFWaj|S^3F|W+oTJLc+P8k$RThAMx(ZG>5+;E#PcXSv&jAN%JJfESDghI{0a#gVBEU zf+&=6qo7jExVkd}jSeA`F3|i28c_L(fbHC!%9o_gBbvi^_m0zK1{9NJSne8KFbSl(Q z)TVpwNu!i$wQ^D|dUuDA!i+Ek>~ye|&L{+P>Lq*kVT0@$FM}lLxR)<(Znn&*zh;`d zV6GTmnp$pZ5|t!#OJS#)k2zazdbf62Rz{q!mIjR`l&$UV?s&L@aI@d+D zzVC(IG;W2~Smd420?fz3ox{Ux%EnZ!+Ab6Og8BQx+R$`T$;o1b#`jGj=ca@TI+~z5w}U|W zV5DjCVHMLAuBwmE?h*-ED=p^ZuQEA18JY z$uV2Da8ob}BIUPI+sJz$YOgh2d*b1KV4l7-y%yP1rDvvauECH>vUcgFPPj3A>^)~;M8x0j$ZPvZx{AXT^tIRnqv+iwBxfB&lJZU zGMU{bQlTiJFxld(z?xi|MC@We(dHk3kW9p_dk!{Bt#PT%%&6 zAhT|}{FM)c<>Yc(eL7K94oj=Oq~rPOj(Z;uO?+|6=$5}cb98sq6VE=|)Q%ggFFNn# z;VE=o>b-s;?x1g2zyHz;ceSV_>{Ys{$6PrBAD@(t(e;#!xD>T^$B%CXppPnXHAYJr zTS0O6mZvS^i|Y=#ozping}|nDxAZn6gEnU;s#!B9UKqo?>|L2IM)ri z9FAtFR3vVXbsZGjI5WFu`c9kX=9-#AaD$XUZr3hlB}!Ikcpn_Vo6&;Lf2P^$VEH}b zXM0VT=1+BALbUd<-8(;HXkSD)c(`w7dj8?PzynN2Lo-wR_Q2Uyb4KohC%;S>#K#9U zVXpLm&)78#N5zFg4N8p7Vvy6bgO%<`X7~zzKt>x$?tzftnT+-@CjWolqL{Bh31``u zyy)6JwU{|Ofwd%gI3L7W%DP)0v3g9EQ<}~}F^^xrp+^6p<9WmI06nP&VJ==B`@Wm* zzU=7)?g+U%UTRvJ&sClFx7!>{ZEkj(PhFFWE+-NYb@aBNB+kBE9j`{(M+~d;V9yY` z*jlPi@_U;hm#sQEhve)o{`F`^fPY*$e^$%c<8 z{TIiBq)kbl(Y@2kOJV=ZxJH3avJ4r4)QSJY?mql>Ek;BeG~Pa=H9!Qi!S1{ZiWvk4 z#ucW`!!Gv20`+c}KPrS~L_)28n`wnuZ>yc$u+RZ4&ph}+?o_P5+7lXcs^mWU+${53(cQ;m=Mi%tDhk5@S}j;5OPpS2>%$lY5(x!58gRj%M3sYhmm0 z-m6NgMQPBCf^N23!1Y`<07l$(HP4}Ry(cb!1e8RR?4Pu?-L6`rHWl%7Sqfn6{h|Qj zgR8@u;e{8jUo6zb3b_JErXKw^!6AD>kq@b!@GYw9*`wWIOmr{4I(~98zYr;-?zIqX zUkX|7@x1d3WBC|oqP5{H?nS-SUpzg~C(Qdf?B$XG4$+8!A-#cHaET4+gW}UUHdkUh@Ij1{G^Njt@+m5=l?Vl=)pSi{QjDnbcf09B-RTM*GI(sBK1)ltN9ha~ z*ZQY%Z(n+7qUP~sp$|Ky{+w(#hg{4!7`KR1ObgS%y~|Is^5- z0pAgo9>_h=mjmDn*~@APX|3?py?UB=%|628?9N|9%eInMBtvmm=0>$uhP2=O@A@=% zyBgqkx<4O`go25>{t*d9fK?bebhw)52V~W`U#S$qoAu#sfZiYr&8Ea(u_HkUu}*k>%8oy{XkoxkQ3R8p>V}Nek$DU=?W}JFQ34*Ld%qRNC?O{K z`(LS#ng{154A+{aLd$yF#z@T`4po&5ape{mlw`zdWVAf|y;Yc#PaTl*LOgR&(Z!@t zE?Qkv4-ZlfWj_V0K5&>H8}5UVN*jt^LjjN0FZP#nAJ_+@4!Czw(CP6ji!aC9$Bj5f_>kP<}gmRtFSWy61D@DV?$+oMJO5SsbQ*G#} zLCfepGFCHik#UFraPF!7z%(dMpvbi63ld5KUNZ1TDS+%DT5Rlp`EN2AvO#))%OcJF zn>x zhV5&dFB<1@yVpBB;bab!BT?Z?;NPh^5#SKwuQ+JLL9NxQKJ#K@xLNvN>+dPdgOCrm zs1zyYMUjQHryf|wbI>L4M`z&3|4b&08ROKKZLCxSmgDd8;Q`CntAdLTEFU4!k(!#J zq0`d7#$HE~nB=P9g>_g^cIt6m?~q*7W23exEsb~yA$234nBNgv6d+8aSk#+P+U+qf`cz*$lE()EFKY0;x&-uGCo(^KMGqZ zBrm#yQ(@MHdDl@k4N7ZtoBxJXl3yW%n6;JO$h-kiWQ_~~!2u&2o(Cz)w2*T+UW6M( zNX7olzWu5Dk9#&&RvvyfZ=~qMl?mQCh!wcZV~mP4OvHcL8EH`T>O-}J{K0Q2+{g&v zR7clH9(9B@`5OI_h6u%{GS*Zv(*M64v!4Gij#){<;~ng8l%Ae^C>TOK4QC2_4TZbM zO^TnVN+SC6RiA&^Ze;JI{X!nB#!63wC-erkVcg$~*PI0^raYLJRJ4ry8jvO^avW=c z;NK6h2JjG6mK=w61mPziM!0`x9}*pA8Jri-w{is41*XgvG^7^}k(*66&trUgoQ=1RL1<_IJs>B0B2le}`Ls;q42^`uNVhn;q!Mi;yu@tgivlwS!JX z20NW!OT2f{dXT&Z!kD}^E`;hXZcTNG_-8z;y%O)%R`k|!5^(Yhg;gmxz$J#zjf zJr@eOP2+zdRHtQg`n28Af#J;)tP{4y*#WE2_LP)5(bGBrGT zvO$nARY_sqPcIvz7JsFdFhr?bu8bvlU;Lq5O^H*_Udqu!dsQt((?4zt08Lp^!i5D^ zSIe)_P#`JKWoKSGp2QYMNzs(D-Y+f@|N+AXN*eP#>M=7o?VzV^^hnq59_T z=`E_|n9vz@Xsq&hapwOfDS+-P8InP@JiM%|yt_*4PVILe&)%v?bU2xN_snr3>fUc& zoy-d`T2@@`Z~AfT!W+o{(Q;`uhVy0mu(*zm3F?z(LPnZoY>GfCicn zwE-Tl{v&7xD3Z&>B?emORe#X>yodK6dJq;C1zJ9xy8G(o zJT0=$f0nos=vM1N{I9{zVv){ozJvk@V%?^#`t=L(0byv=LeG)}7D9RYCEK5&5Q7d> zdlE=Rjd3hI{R;u``0NMJ1CAw2HswGh()eFMwlM%vZrSfgguqziG)mqtQU;1;N)oar zmr(!dVSWxpKLn6H;Ve5@?6+^QdxKOL02eE_tz`f92s{?f2O63{h!+^k=%a0H$^b77*%fm0UER#K!c(ZX#cxtKumZz%WSCXY4z(HsrL(V&n^H6 zrE*Fiz&@y_1WGC05WoNgXbfTQ0{{7Kk8Fs5T?3e2DaFEnW`~5LLAcj?cFdd5M|eo} zUyNgq0a?&~KYLrr z$Uq#zL!;Lp{(U;{4Xl}9Wp-K`2J**$41sV@ozOH{Y(T^R)!GD?;`Xl*J@Drh2|cE* z5B@T{M<_FR1MvWKtL1^7|B%I=IC5D83#{_a^51QQpn%7KGGq7V^&Qkw8sXAEka$`G zPtR8CLm&P^Q4LDqubIEi2D+8x`TXNAvopuUOE3(Z8|6fzU!4z?-8uE%EGTe7hth4g`g6AS}^wcUM28Ka=!4ZTIx#Y8E#uv9=i^97$dwYW zUn(_j{C*Qi4=zb)nN>o2GX{)FcnA2$6TuxUirCTr>B|!1Y_s~Jy1KftQP@K!srDbT z5fS|tU>Yw;nY;=ebg)>nB zwtO>oK4u4+l#EPJeM$-yH#avueb%U~)?e~2r4o(@RxJ$0CYy?o$!2o#>~m3bb8}_o z^Q4}zw14m{Ed1S*w+5Sxzp}D&Vjo-2224XkLmS4x&MwdLVL9s2pC$V>s^>V`@`3(O zKRlak1r3d-cZScpzp?7ns;R2-81_VKT2#?cQGJ|yK|5@fCFUvopHZ&f2(yS$J$Z8H z-v2k5ircx{Z{}=kYHDhG^7Z7&lf3Cgn#KSARPNl=+1u;u<+ZDMc0GsB17HGrB|O8T zFexhP))dX)ptq_<&J#GXIZj>?p%(rC+Ha%I6^~q{q*FAXf;Lo2wizZ$Q vSbOBywg37I3=IGO%iejq8^~Y-#UV2TNB8%t(%BI^fFcZ@u6{1-oD!M<5MSrM literal 0 HcmV?d00001