From 20d1aed7424f843c1505d2abae65f5212a56f685 Mon Sep 17 00:00:00 2001 From: Joseph Ferano Date: Mon, 15 Jan 2024 20:16:01 +0700 Subject: [PATCH] mov_inst and add_inst procedures to avoid too much nesting --- .gitignore | 1 + asm_files/01-03-41.asm | 109 +++++++++++++ decode.c | 251 ++++++++++++++++++----------- implicit_use_general_registers.png | Bin 0 -> 66271 bytes 4 files changed, 269 insertions(+), 92 deletions(-) create mode 100644 asm_files/01-03-41.asm create mode 100644 implicit_use_general_registers.png diff --git a/.gitignore b/.gitignore index 57683ad..ff23a1f 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,4 @@ /decode /.idea/ /asm_files/*.bin +/8086_family_Users_Manual_1_.pdf diff --git a/asm_files/01-03-41.asm b/asm_files/01-03-41.asm new file mode 100644 index 0000000..25a3407 --- /dev/null +++ b/asm_files/01-03-41.asm @@ -0,0 +1,109 @@ +; ======================================================================== +; LISTING 41 +; ======================================================================== + +bits 16 + +add bx, [bx + si] +add bx, [bp] +add si, 2 +add bp, 2 +add cx, 8 +add bx, [bp + 0] +add cx, [bx + 2] +add bh, [bp + si + 4] +add di, [bp + di + 6] +add [bx + si], bx +add [bp], bx +add [bp + 0], bx +add [bx + 2], cx +add [bp + si + 4], bh +add [bp + di + 6], di +add byte [bx], 34 +add word [bp + si + 1000], 29 +add ax, [bp] +add al, [bx + si] +add ax, bx +add al, ah +add ax, 1000 +add al, -30 +add al, 9 + +sub bx, [bx + si] +sub bx, [bp] +sub si, 2 +sub bp, 2 +sub cx, 8 +sub bx, [bp + 0] +sub cx, [bx + 2] +sub bh, [bp + si + 4] +sub di, [bp + di + 6] +sub [bx+si], bx +sub [bp], bx +sub [bp + 0], bx +sub [bx + 2], cx +sub [bp + si + 4], bh +sub [bp + di + 6], di +sub byte [bx], 34 +sub word [bx + di], 29 +sub ax, [bp] +sub al, [bx + si] +sub ax, bx +sub al, ah +sub ax, 1000 +sub al, -30 +sub al, 9 + +cmp bx, [bx + si] +cmp bx, [bp] +cmp si, 2 +cmp bp, 2 +cmp cx, 8 +cmp bx, [bp + 0] +cmp cx, [bx + 2] +cmp bh, [bp + si + 4] +cmp di, [bp + di + 6] +cmp [bx + si], bx +cmp [bp], bx +cmp [bp + 0], bx +cmp [bx + 2], cx +cmp [bp + si + 4], bh +cmp [bp + di + 6], di +cmp byte [bx], 34 +cmp word [4834], 29 +cmp ax, [bp] +cmp al, [bx + si] +cmp ax, bx +cmp al, ah +cmp ax, 1000 +cmp al, -30 +cmp al, 9 + +test_label0: +jnz test_label1 +jnz test_label0 +test_label1: +jnz test_label0 +jnz test_label1 + +label: +je label +jl label +jle label +jb label +jbe label +jp label +jo label +js label +jne label +jnl label +jg label +jnb label +ja label +jnp label +jno label +jns label +loop label +loopz label +loopnz label +jcxz label diff --git a/decode.c b/decode.c index 2111f9b..0ffcf0b 100644 --- a/decode.c +++ b/decode.c @@ -100,6 +100,161 @@ static inline i16 get_data(unsigned char* buf, char wide) return wide == 1 ? (i16)buf[1] << 8 | buf[0] : (sbyte)buf[0]; } +bool mov_inst(FILE* f, unsigned char* buf, char inst) +{ + size_t bytes_read; + // Register/memory to/from register + if ((inst & ~0x3) == (char)0b10001000) + { + // TODO: We should add some form of error handling here + bytes_read = fread(buf, sizeof(char), 1, f); + char next_byte = buf[0]; + char w = inst & 0b00000001; + char d = (inst & 0b00000010) >> 1; + char mod = (next_byte & 0b11000000) >> 6; + char reg = (next_byte & 0b00111000) >> 3; + char rm = (next_byte & 0b00000111); + if (mod == MODE_RGSTR_MODE) + { + Register src_reg = d == 0 ? registers[(size_t)reg] : registers[(size_t)rm]; + Register dst_reg = d == 0 ? registers[(size_t)rm] : registers[(size_t)reg]; + printf("mov %s, %s ;0", reg_name(dst_reg, w), reg_name(src_reg, w)); + } + else + { + bool is_direct_addr = mod == 0 && rm == 0b110; + // This is a trick because mod == 1 and mod == 2 will displace one and two bytes + // respectively but mod == 3 wraps to 0 since it doesn't displace + int bytes_to_read = is_direct_addr ? 2 : mod % 3; + bytes_read = fread(buf, sizeof(char), bytes_to_read, f); + char* eac_name = is_direct_addr ? "" : get_eac_registers(rm); + char disp_buf[16] = {'\0'}; + if (bytes_to_read > 0) + { + i16 disp = get_data(buf, bytes_to_read - 1); + if (is_direct_addr) sprintf(disp_buf, "%d", abs(disp)); + else sprintf(disp_buf, " %s %d", disp >= 0 ? "+" : "-", abs(disp)); + } + Register rgstr = registers[(size_t)reg]; + if (d) printf("mov %s, [%s%s] ;1", reg_name(rgstr, w), eac_name, disp_buf); + else printf("mov [%s%s], %s ;2", eac_name, disp_buf, reg_name(rgstr, w)); + } + } + // Immediate to register/memory + else if ((inst & ~0x1) == (char)0b11000110) + { + bytes_read = fread(buf, sizeof(char), 1, f); + char w = inst & 0b00000001; + char mod = (buf[0] & 0b11000000) >> 6; + char rm = (buf[0] & 0b00000111); + int bytes_to_read = 1; + bytes_to_read += w == 0 ? 0 : 1; + // Same trick from earlier, see comment + bytes_to_read += mod % 3; + bytes_read = fread(buf, sizeof(char), bytes_to_read, f); + char *eac_name = get_eac_registers(rm); + i16 data = get_data(buf + (char)bytes_to_read - (w == 0 ? 1 : 2), w); + char *word_str = w == 0 ? "byte" : "word"; + char disp_str[16] = {'\0'}; + if (mod % 3 > 1) sprintf(disp_str, " + %d", get_data(buf, (mod % 3) - 1)); + printf("mov [%s%s], %s %d ;3", eac_name, disp_str, word_str, data); + } + // Immediate to register + else if ((inst & ~0xF) == (char)0b10110000) + { + char w = (inst & 0b00001000) >> 3; + Register reg = registers[(size_t)inst & 0b00000111]; + char bytes_to_read = w == 1 ? 2 : 1; + bytes_read = fread(buf, sizeof(char), bytes_to_read, f); + printf("mov %s, %d ;4", reg_name(reg, w), get_data(buf, w)); + } + // Memory/accumulator to accumulator/memory + else if ((inst & ~0x3) == (char)0b10100000) + { + // This instruction uses AX/AL register exclusively + Register ax_al = registers[0]; + char w = (inst & 0b00000001); + // The manual doesn't refer to this as `d` but it acts similarly in that this bit + // swaps the accumulator's src/dst position + char d = (inst & 0b00000010) >> 1; + char bytes_to_read = w == 1 ? 2 : 1; + bytes_read = fread(buf, sizeof(char), bytes_to_read, f); + if (d) printf("mov [%d], %s ;5", get_data(buf, w), reg_name(ax_al, w)); + else printf("mov %s, [%d] ;6", reg_name(ax_al, w), get_data(buf, w)); + } + // Register/memory to segment register or segment register to register/memory + else if ((inst & ~0x3) == (char)0b10001100) + { + // Manual doesn't refer to this as `d` but swaps like in the previous instruction + char d = (inst & 0b00000010) >> 1; + (void)d; + printf("mov regmem to segreg"); + } + else + { + return false; + } + return bytes_read > 0; +} + +bool add_inst(FILE* f, unsigned char* buf, char inst) +{ + size_t bytes_read; + if ((inst & ~0x3) == (char)0b00000000) + { + bytes_read = fread(buf, sizeof(char), 1, f); + char next_byte = buf[0]; + char w = inst & 0b00000001; + char d = (inst & 0b00000010) >> 1; + char mod = (next_byte & 0b11000000) >> 6; + char reg = (next_byte & 0b00111000) >> 3; + char rm = (next_byte & 0b00000111); + // Same trick from earlier, see comment + int bytes_to_read = mod % 3; + if (bytes_to_read > 0) bytes_read = fread(buf, sizeof(char), bytes_to_read, f); + Register rgstr = registers[(size_t)reg]; + (void)rm; + if (mod == MODE_RGSTR_MODE) + { + if (d) printf("add %s, [%d] ;7", reg_name(rgstr, w), get_data(buf, w)); + else printf("add [%d], %s ;8", get_data(buf, w), reg_name(rgstr, w)); + } + else if (mod == MODE_MEM_NO_DIS) + { + if (d) printf("add %s, [%s] ;9", reg_name(rgstr, w), get_eac_registers(rm)); + else printf("add [%s], %s ;10", get_eac_registers(rm), reg_name(rgstr, w)); + } + else + { + if (d) printf("add %s, [%s] ;11", reg_name(rgstr, w), get_eac_registers(rm)); + else printf("add [%s], %s ;12", get_eac_registers(rm), reg_name(rgstr, w)); + } + } + else if ((inst & ~0x3) == (char)0b10000000) + { + bytes_read = fread(buf, sizeof(char), 1, f); + char w = inst & 0b00000001; + char mod = (buf[0] & 0b11000000) >> 6; + char rm = (buf[0] & 0b00000111); + int bytes_to_read = 1; + bytes_to_read += w == 0 ? 1 : 2; + // Same trick from earlier, see comment + bytes_to_read += mod % 3; + bytes_read = fread(buf, sizeof(char), bytes_to_read, f); + char *eac_name = get_eac_registers(rm); + i16 data = get_data(buf + (char)bytes_to_read - (w == 0 ? 1 : 2), w); + char *word_str = w == 0 ? "byte" : "word"; + char disp_str[16] = {'\0'}; + if (mod % 3 > 1) sprintf(disp_str, " + %d", get_data(buf, (mod % 3) - 1)); + printf("add [%s%s], %s %d ;13", eac_name, disp_str, word_str, data); + } + else + { + return false; + } + return bytes_read > 0; +} + int main(int argc, char** argv) { if (argc < 2) @@ -123,99 +278,11 @@ int main(int argc, char** argv) while ((bytes_read = fread(buf, sizeof(char), 1, f)) > 0) { char inst = buf[0]; - // Instruction instruction = 0; - // Register/memory to/from register - if ((inst & ~0x3) == (char)0b10001000) - { - // TODO: We should add some form of error handling here - bytes_read = fread(buf, sizeof(char), 1, f); - char next_byte = buf[0]; - char w = inst & 0b00000001; - char d = (inst & 0b00000010) >> 1; - char mod = (next_byte & 0b11000000) >> 6; - char reg = (next_byte & 0b00111000) >> 3; - char rm = (next_byte & 0b00000111); - size_t reg_idx = reg; - size_t rm_idx = rm; - if (mod == MODE_RGSTR_MODE) - { - Register src_reg = d == 0 ? registers[reg_idx] : registers[rm_idx]; - Register dst_reg = d == 0 ? registers[rm_idx] : registers[reg_idx]; - printf("mov %s, %s ;0", reg_name(dst_reg, w), reg_name(src_reg, w)); - } - else - { - bool is_direct_addr = mod == 0 && rm == 0b110; - // This is a trick because mod == 1 and mod == 2 will displace one and two bytes - // respectively but mod == 3 wraps to 0 since it doesn't displace - int bytes_to_read = is_direct_addr ? 2 : mod % 3; - bytes_read = fread(buf, sizeof(char), bytes_to_read, f); - char* eac_name = is_direct_addr ? "" : get_eac_registers(rm); - char disp_buf[16] = {'\0'}; - if (bytes_to_read > 0) - { - i16 disp = get_data(buf, bytes_to_read - 1); - if (is_direct_addr) sprintf(disp_buf, "%d", abs(disp)); - else sprintf(disp_buf, " %s %d", disp >= 0 ? "+" : "-", abs(disp)); - } - Register rgstr = registers[reg_idx]; - if (d) printf("mov %s, [%s%s] ;1", reg_name(rgstr, w), eac_name, disp_buf); - else printf("mov [%s%s], %s ;2", eac_name, disp_buf, reg_name(rgstr, w)); - } - } - // Immediate to register/memory - else if ((inst & ~0x1) == (char)0b11000110) - { - bytes_read = fread(buf, sizeof(char), 1, f); - char w = inst & 0b00000001; - char mod = (buf[0] & 0b11000000) >> 6; - char rm = (buf[0] & 0b00000111); - int bytes_to_read = 1; - bytes_to_read += w == 0 ? 0 : 1; - // Same trick from earlier, see comment - bytes_to_read += mod % 3; - bytes_read = fread(buf, sizeof(char), bytes_to_read, f); - char *eac_name = get_eac_registers(rm); - i16 data = get_data(buf + (char)bytes_to_read - (w == 0 ? 1 : 2), w); - char *word_str = w == 0 ? "byte" : "word"; - char disp_str[16] = {'\0'}; - if (mod % 3 > 1) sprintf(disp_str, " + %d", get_data(buf, (mod % 3) - 1)); - printf("mov [%s%s], %s %d ;3", eac_name, disp_str, word_str, data); - } - // Immediate to register - else if ((inst & ~0xF) == (char)0b10110000) - { - char w = (inst & 0b00001000) >> 3; - Register reg = registers[(size_t)inst & 0b00000111]; - char bytes_to_read = w == 1 ? 2 : 1; - bytes_read = fread(buf, sizeof(char), bytes_to_read, f); - printf("mov %s, %hd ;4", reg_name(reg, w), get_data(buf, w)); - } - // Memory to accumulator - else if ((inst & ~0x1) == (char)0b10100000) - { - printf("mov mem to acc"); - } - // Accumulator to memory - else if ((inst & ~0x1) == (char)0b10100010) - { - printf("mov acc to mem"); - } - // Register/memory to segment register - else if (inst == (char)0b10001110) - { - printf("mov regmem to segreg"); - } - // Segment register to register/memory - else if (inst == (char)0b10001100) - { - printf("mov segreg to regmem"); - } - else - { - fprintf(stderr, "Unrecognized Instruction"); - } + if (mov_inst(f, buf, inst)) goto handled; + if (add_inst(f, buf, inst)) goto handled; + fprintf(stderr, "___Unrecognized Instruction___"); + handled: printf("\n"); } } diff --git a/implicit_use_general_registers.png b/implicit_use_general_registers.png new file mode 100644 index 0000000000000000000000000000000000000000..61f152e899feba89fbb98695755fd684a79dcef7 GIT binary patch literal 66271 zcmbrmc{r7A8#gNR6w54xMHvc7B}9gZ%8*p%S&>;(NQNvKGo+$Skw!%3Bx9irkrJiM zQ^;J%uz%})_ji29{{Gl|f5*3u<9VK*(pvYr?&~_w-*n!QC-t?rGV(D}P*7|=rlWa^ zf?`Vx{+Xet#P6I9@jZtBFnH>idQ(uaye0p$<<4#vehLa;$GcYhb z)Q*#vmv{Fz$At~>*DfE9zMP?Q_41eJXQYKroH`}9Yu9swjKk8#2i$wh3knK;{c^r^ zX(=X#Im9nFFK_1OoA2G-zKi1>H~9~imXz$=xwG?$LD0hJR@dJ@USD~CYp0!^U7qB> z*@61x+7=+ zPn(%3U0Ypz`}XYR+!t*Ot9V?J?W-jeg8f z4cZ7ebLNb~YCQ3XFwJVpv17-q^LEL}u}58*{#Noz`Rd=_VXJY1D&M*ub8~aY@*Rj8 z+ogAZ|Ff*DtdZ;Y?%iu>Xb=$*q0bal@h@H~FDWSrT3_NhoP~A5XPWQ6z_De^77dL} z$33_K!Edv(cjzbvEPJ}_n&>GK*U&kAdcTrV#etR1&Q8A<(<=*O6WgYyr`5mi*tzq{ zRCh;L;_Bc1`}doeo1Zv#j7YkD=Zu0*8lwuc-zo$S<}9*uCDjTkG`sF-`VbLnp9;pZEXCT*}8RW zfnwmAuWyZhx-x?#?j81m`^~1oLFourOUoa_?-Rd^7vioQrQfz~n_kA@Yu}15m@u8q zHR-rmYn*SjRp_vQT-gx^$*AWqUI@y&@_sIG{Fr|EbNgA(gF?}+moNWWo*Ocix|@__ z?BYB-J4@i<5ju3)_4si{{g{Y|{sev9BS((-`YKdC$1=aWLKB~o;^O9ZlVDcpaLmfe z>gvbbw9j2#Z5gUU#Lw6R_&TDbyE2x$WF5`SzIEl9zrHkigK+BP$>fbNt2h27^EXyr zRtBz{9X(2We|7jh#|HD>y?f{9=huG7(a_Lr-=2m|Z+zy=wfaA5tVawD6Y2*7>YamV zs}h@jzPWnv@L@rZ`DiIE!;Os%eADZFckbN5&HMTDCw46}J^cgKn$Me2Q~&oA!+ouxSh=% zZ@*289%p00(d4BajfT_rQnx&h`Z5u5aXP-cckV3p*HZ1#ff+OTIOM`pm*)sx_x6THt|4NQ^lpp zDqDLshpX60#}o8UocMP`d*)zj0;e z=K#;1lQ^g6TavLUTUvBU@sW}5@wI~fO_z;+J85CDHs0~j=!yQL$B$VAl}%2a`qbL0 zXKH#+Jmuj-(ZE1n=7z_5DSxJVjLgly-|xJA>(=1jJ%Joq4Nq zAQ4hps{&T!LTk&hSwiVp2^!6JrHcv*;_u!)N`K(Mfj5Ecd{O*-d}2FxC@3k7j*epA z1bxarMtN02&Dq)c*s;j!>gvKmIiJqp^73+2m5K@_td@L=o0Aj$#LCJF-UIjjQ&-nf z`Y&Bw?%#^vfB$}nNVNU@)bPWH4>kr5>g`@uT%P{c6@3z4AU>X=`pcIuXHK6UzskYR zzH9exEiElNX5RLTDgrFxyLK@K?v|7s*t}0ClXU3Pug}knp3Ki=N&IThJR&P78?>>8 zD%nZr`sMTIQjfl$ILEX7wKs0u=t}_^zSheEp5B zSPUg4rKP1MK|#Uhq&C=d~IP2=bb=20up`nKl9}?>` zkA(X&OPZRRCL|;j{B2D+Sl*bFo-ViS+iq)v|LsHg{fxHvdEdprDOESXUL8X6mi#Ir<~_lmssTR6X*Xh!JS$}fMCTw?}8 zii?Wsx2Zk6r#l+OwOd(5WoT%~IM0k`kD7$mT;x<36AwWHOO$V2Ewg*~A;0+@pFKA> z*6*g6ojohIYu7F!5nrq0zR|xV5q>tdT2WkXo>>VayOyRV_W8)fL}d7Ac6PRmRpt1^ z1Vd=ZksHh*B4`@Rb87ULCcE@3Ew|H-5HuQNw}-kaifsj2A;{HLd@t84k6mxYA@aX(t=hSKD(UtRguafDlm ziRPuQJ#}GB>Pc)GzP{6_>YhsUL{#TXmo8Ntw|gK+Y9D+TZN9c|b8MVn-Zl7PJ(D1D zxWB)>yE|gjB5<5r9-m6kTvMTYXK!!M#l_{v_-kSUXA~W^mM1$Rg5F{qDLx^A?Tzhh ztgE`iOz*2s|Af|$AInNh&&%=_TtT@pG&C&8DJW>~=wK@=K#%PD&+Ffx>4y^JDzNW- z%LCOoAP$$V+z^8o38LC&=H_(N)F(MF;ZUw|9k8tml>$E znQ0$}k?(r#DU#M7;6+d8b``(*;Ygs%sq5|&eevQ&+1SE!&D>F08*2*&Z?(`wx75lt~rf?9m$sC<-nC;XbdZ;1d^A_9bkdsb2r{9guKbOGyJD57(eUA4Ve8 zh;jEcG#vFeB7>UGpQ$AUSm@^48^=GUDu!-cVdinqAJycpSUY?6Z21i|T>tNC4%q)G zDJe{nn^q1&D*l>0J*WZde;rmAC-5G*&!1mskqfWi(q|P2;QrR=$+KsY8czWw7d3I2 zO>ujqxO=$CHy1c*Fr}-hX?&nQTvAd}mY%qCXG!3?f52~gVthXilL(2ElXGxz@WHM6 za8}X#O~1dDF!7+Kzln@w;M^RFQOsCo^)#j?y@&0{3F z7rC&Y*#-p#p=e#X@>k{RpWfG3@@cO8#oD4}x}g9Azb=nN68z@|X*RZ_C-U)qyFYr( zTqjmdIR!zHc7eR@T3ZCHv8%l_xr$3aO7Di}^GD&MgVWO0%eE(!znK6fpxu*Ag9 zNDgt|sHwhcA>xkRyL0mM_Y~-tH$EuG!TLcL%aXbTayXFYU~g|^ZJiMxPY@8O^j~uJ zHDF?3D47qTr2cs!=WHG$6VpRh&7|A6!Ds4byoMT%ojBp>=s5HS=Wg+pVkqs_EY*{g zY~0*O>9G>7=t)5SK+F5&gLS9ALS|{6k-# z(80qpGVVQv=dgvacC)4bMgyuZl=xhp`T3*w1z51=`1$i$f zwRCgZRVnLt0M0fQI4a5~q(#NVx_Vt@fK2)Mftn2b?Qpu))wjf`F@hEDJamZvidB0x zhpDm_?> zwz;`EsT~)rr>8ezHH<3&r=lmKBBs+l*Nzj!#i98ebnm5SVmd+(lv>C9k2@gbY@XT3 z(2&uoQ-l5ep6jcZR8>{e4Xt{OuU{yzn_@sJy1up zXHPy*CUUzG$H5DE*`CYz0L{byoL|EUm^1y7%`_6JujvSFgLun=b~1$c)v5P?;O80d6Y4 z%baVS``Z`vy{G5e@~rLLAi2quKj}H#?fPe?dXr@|45t+ZAY{)I1`aWSO>6(Zzgul& z)%@PPd4pc79m8vQ=FFpK&lIseM_C-5oW`f8RlEi@Ws*|v+&Sm!%6x54433LO|${|v0Y}-&{oMTI}y5VUrua|hI#6%G?IAsi~=JEci(Ag@yCDz*-V@ z<<-9|7KJ8KcR@jZi|HIc?(F0g{Po};nf9)(DnJ4JRHk=@*U(X316@5mnul@Muh+f4 zG9wZ7{OQx+EBBv1eG1}(7my};Z=7Xh)>A;6L62?d$4$8p9t0Dd-Tx59_UvIzEgKmb z!8JA)@%R&Xf7BTTiSPWu2>o>=rKCt>+ftst zyiyB=N;oXYOxpKAWMt%aC7*Fz8mcKYvU*Y1)~x~SD`Od)TG%Z%bdpN1UcFlOxa8#( z;-wgs^`W`B_CQI{=7z!oHpIWBNjj=^a4ws?&~09x$54U5_U9qrprN2)0o`qgUQbJU zXIE=OPa$uL|5yG_^WA|)Nqmci%wIJ6_8-4LJ!+o*Ugjs)|CNgOjEl2#&8{!lGRko> zii)Pz)N}8aOpq)*r5J<#ig9MI99Eq_f{1?kw2MbjaZ<-Y*2cN zI~MgUDqEMlxBIbW=6YS7##3&h!-WfxLK#rFLL29DO^e3kiZU{Um>Fu8=!#29fXe-p z5Bj$B^U|I!fOx^lsYb?^u2Y;&y)35ICROQDl$E$(9?cU2Iy$-yj@GKS(4UxZq?|f+YWBGd5Ht$g+}xaR zh#(i&o#A1JsI0a1bw7(L9JbmoqwD|vmOt?v`M{;X#`_Lh7%#8SWY^YzuAc@jzG{pU zYCIou_}VJ(e_k~m;71eQj~+NeGI0_T%5eEgM&N+PzCPEkU3+FNes%C|D_CJlP6CGM?B|{Pd}=s-`H4j+1Wor9>1s#oXfJ{sRX9 z+Hc0haCVpCE6A$P3Z!KW4%(%QC<{X1>Vx2rrgByO2Qk$upe}& z(NW6~M;vu1eXo5(Z7AK?#|-OJr{?EJP8jiFCqM-B?fme8k&`ics=&4$g$p#$H#Tr( z{+z!GL~~r@;_YajJsNGORT`UG8X9$cin)7uSfj6>K27?;0m(|Odc;O~>%*L! z=qIz6KnC{iWn-mS{QV;(h}P4}>L*z1oOuv#^&YFrU`w3YEhlIyt82IYL1FiKs66{` zrn=sd(b8crTIy^m%hs)7MPNFiub%=QfU11Ww`OHwxpA-$O>JPj`}G5qQ86*Gfq?<2 zSsI4-{!nu~Ay1IJ5MX|$s_Em<%e)F2gkAG-wl~z#TP4y;d%zjiGW8OQdF!ht1Ky5f&d3` z=`YwR^as>|s%!t!l`b**j}wW+$*#Q6Z{WKw?(Q;DQWhpA<(^KP{D>q7_~#rPxTQ>>xH8_`E+F80)X3Z0dvkR%AKxNXL{f5P zs%PKwHAu|B>h&JLkP62ELax&=%?d}|x%1^+G!Hn&zJ2>3qnJo>f2@pr`&Ls_^kIB_ zJTxymCXsK}^69ajIKeUp!7XeUL$O(Myrn}WT*zJ883_{9qut9def z`1uTkcNJvgh2`tVuoLoRD7T9grX|kLUxcoD?AZGcAC3dvkx0}PZ<5uP({)qixAvBy zz|5BSpjJT@!_kxStUBU2*tqgOd9uUImjkS9{C7RI__FX}P1nJUYQ+vXEYDQ?u)S zf%8+SP8M6dyyl)i-^CpbEL80Wv51s)Jx?;8W+Uuyg2XLI}4K z5<)JCn@VvfzJEKhs9a6Ge9XS6r+|8wmLcI|Xx398XR$sKc7@`#o24bbkS8=&)MY@5Yu8i~-%~Sv|7d^?DHOD3Xl@S3@a^~lz3H!6 zx}nk0uHW&Wsq6A-Vq(;lm2ih5B4QsFue0l>E1Moa{=Brbbm?KhTZ2DzMpjlV_D(oP zM*oYGUTow5pg7@`439fRIR0{!tG>Q|K)_m=8{>>9m+Ak=0+4O?!#W24HQ_%c{>OdK zP7}$2#QE^yf?J9PJo~gb{B3phS{Q-VZbsxYyU@|L%^DpZq{%~1UnU72+L?4sY(jiw z`rE%VeYpXE`Vc|oEt}f3G zKmm3)Qb#htY4e%}q^C4Kdr$H&809-`J7vf?mx2`E#R>Y|C(SZ@io) zu04S?OE+>s1>X~;1cG_V`H>o+=q4ak~l+M#f*E{Nu6eF{ec$*-z=_e@Wo zj4v(yvoQ9tzOL^6AttG+o}M1GY08CuE}6qY8!d_A($dplhn}op@xTCQG?~Tst>A4~EfQoNqXc%(aw*Cf##r0Db z7RozzPzOR8SZlb+ue?o6H`xa2MD;~KBq_d?xWMZqXn+S~2Z@8BtSm2Ez|BUFz_I~{ zLWDJk&#b4nRl^Agc2?qDVY-a?r~1oaiu0`0e<3I6)JiM(`mhX1G`&yOYRQ z%)v}8*Fa|^+qO4aQAcYFIdMeDV0V6=PuW+Nv$xW3pO&GYpC1-^A4H|Sdqdt0uxUV* zkH3gr^^~sb2OAgHfdQ&AZ-88SB6l>+1eoBmGvwT~u~h-Zi`18Q?$}YhRK0A##>3<2 z;ILy>5K)65aHIOXBBGbvAM(^ND2#s*hlL}J{huc6&3zRj!+peO++uXrX5PE zALzFP7HvJiK-_Z>o* z5`ZUMU+n4?zjXQX<0nIZy-%HD*B@r=qTJN|~6L0C%~e-v~J4C&!WCwiC`n2-BnI&nw^(3jODW`dVH9 z@bn@#my~MafCIg?io)wXtnYwp*NFVwJ!IC}&a31jaae-e6ars&v~>;c(Ab3mvK3p1 zV;_6vjo$)oRHtzf*;vp7X=rNLQwZd2Vhhf zr0w9<2s-ttrbZ3lkGMlbq%P*I`no_6GGZc9F07928+-~aCtYLwDz4PXHcF# zJ!xblD)QYOv=|;Qn+EjH#h`mxPeD}bX(}&Ga%bBlK*8PFHaa*+8Cjl0C*opfr%~PL zOOXJI-1PBd`0WP|gr7FHwY`89HkO-{GqjCybV8pJ5+J%XiFtEvf%T(RU;Nq*!#tIEedQy9=$i=3Q{^+H4HhK6icEK#y?DnM^C>$qFe zM32UtG&Y7i#S94LD-HmFOWS|&pojKi8EAlj1Wk8|3(rScVO+v67jZwb23W7m^ZNH@ z&uAPu0u7a*0e@p;?+x;edS~aQAfT4=2tX(8g_Zb(PZ4 zF*5Q-ohF~_7y0>{A5}Nuox@O7R8k_xsj8=LY~>d-NN=&{sL>01%7IIxaY=dhYyx%B zIM-w^oT9>!G1upA*lXLQQ_%pyuW#{gDBcV&Ux+6yxiJ5z^)Qg=4XV`+Mzg zz>BF_3CCH0v@rV*n3r;Q<&_yLFb$-Ne(!5b-W%%p?%(InpAqFM$g^*}fkSB@rbQ3i zl9~vCz65?P4kozkFccOt+`V$fRRwI0*24#YXE3A^g)UM2W4_Tr7(QOFdH9tAB zT#6h_zbYRL?ExVbs*FVJqZ-H(Vjnltfm4LGMF?hZGZvANIqcbA19ITG%*4!`iZ)fP zn!x?L9&3Po6|$GH8{Hb)7O5x%5W-ouf9RV=O&Nz7RQvl1Iw2rqzSWy=A3iw4j!_Pb zCwbKUH8=PJVu)jf7mPeOHk$MuuP-U=f0mZ^Lx!*0FE~TSvcmOeCE2IyUdj#&97L&2 zO-%(10eB*lMRXJ7DUb`KCvtLgHw<+#LQ#AZuyV@A4QFC$lWDUEWv6h1$tJ;fby4z1 zc+Bkjz5N&1*Cy6XOih<2I<+-4vJPnMyF6vWJ-K=1Bp`4<_jPlxmgK$hfncwoQy%TV zM=v-#560yVOiu3JxigG#(c7DYjV<$pEICI3PH1p{Kf{yWH&?GT#S^g%zuUVu4o-L` zgv~LM+5yJVdGPwTI6>uM?5}VNNt*n#CH9Rhq>~V!m=DYHB2RN3X(e!JHQMy$$3FO8 zMF0(Gzem);p}>0WFS*P7a`5KT*y^(^S`Zx>sTeo_KM=yDh0GOPgtdyE1`|%;e73Kj zA5=_+7KpUfqy}hHSi!f6ju3tzdf)|x)sxxZ6ALn9++EGz=X z+sOe)VUmJC8?@5ek4dvzu?i#G7O887t&NStEt%%V6EiaUZf=fX(F#r&8ykbi*AJ{g zafi|w_686h^?lQMA1yO)Faeo0Y@n0w?(X2H(3fXBKxRM38r93pk-akJsiOV>eW%^1 zguw$IaN^Rn_JK(bST?D~?sxtyVax}}#J{;Hi#`Pp0WbL!X~-_^qG#|;j47>q#)CFL z;EdJ8p(>%#`p+!kq)Z<=M~c65hs*bK|LR`AbZpHGY59-`D;$qbGv$!+=Ki z;JTwHq9HtctQ^jtPge~h?6;S&3b{vYv3L_Kn6Q!_*>=QwIrB@@)f5ViHpQ|dJ+U2<}ECWCI2#O$k-P+<=V3qQ!sW&XG~ zL*C5{=Eg@Jf?CGiU817aN~;!k!iE+;Zn4gh4n)n%54f->+rDlind>>Lsciz`+1 znJ^74%RL9MT(eUB&ONT=XwX>8z0Rt~?DvPRmU}X+MT}ng>Ab$miA!9QF;aeqv%2!+ zgoK1dal_Z=klb3&6%`iNH4h3Xc&gc?BfPNiovyW|#mw7Dg9#oH9K*fv0|2DOWBCup zIx0m%g-}x?=R}*kQo!yO;+mPgkm4U zT4?br|Nhl$bDjU)`wAwq;NbuT1&VeQ(1E|@g{7rujf|q>;u^0>klG>fJl0S9U~hNh z(c;|6eHuE)j$HtTw6V+-lG(q15vL6`DLW+&ka*=sJVRe_>7Tpbon?fJnfLM#=&K3S zvOEE*s^o!zW!C>i-}rx>6wo;&E(&wC{M9QkdNUJ~_RjV7bt28?a*wR6Z2YZT&!PMy zCAwmay@G{w=-Gnd12);G@@?}02=-%Z9(sD9F9dxFRS_i=R$%=HTKq5se7BpA7xJK3 zP?7uv6))~+5grV2+;|Zd_6}V?N!py7i)&>d`=JgxHbm>~Xz}N(LaN z?WTpK+fD-pQcyjZkd0yb`1tr}m)Pil zs(2yEIwEj=6-)vkbaZ5-Bk3@}+@~*J^mKIk-*0~RsJ?UiHe!n)nCg}JF)=Y_HB zMPT7SV(~r1$dU`C#Kdlh&ToNig0;wc*`DdQ=1af& z6%xaT4^jUKyiWZ3h1;ME6s@uUvH(`GfHy5QRp2dQJ&9~;Ejq7JQ#Ld;(GO06R<6%A z3VC^XA)-=wdD;xrRpTjI=Hi{2atp-6a}i1muLp#xZQh40G6Jdh9KUpCBtpcdPyRF@ z;^O3_6KA92bP#p%2N-wa`xp=}+ijg)2xnZxh(nOI!C3vrk8xEdJR0LrgQ^GRe%UAj zE{PumGqYqKZi(3o)LX;1SWZ!C52Hs#?KCvZnC2Ss|;R z)8BalH_bxgZT)u9hK7U=x%E}Od38rTND$~9W(Oq|)%Vj;5mN>s_-;YVl9ZW68cD`# zIywN8Z0W%PU?@IDiY%Ck=2BZVEmP6E5G6X#RPkhPGv9 zwyIrr9Y1oFd^JtY&54r7s5PFD@Db`5QMjiLG4MF~k06L)n{AAr#W0Qs>;K2Z&bnm# zr%zCxS32?_7WN5}KOXvv6t}7Nb+vJlkA8yQv10=UYilb-H3vK~_>loK*50uMYFEvt zAGp4;#@^n_r5x2O@(DMiqWBaqX1{u+s3OB1pPZ~<-w=b^*gHaB}MIy52`8z**DM5)-sXDkf;+)6Q;JXJ@6$Q@o+I1w}8nqXA?=4m6e`RMMcQU{)1#}vrkHjndk#M;Otr7$u4Q`Xb6;< zXGc9k&`a{o%VN_9Cnf--UZHBQuKK4guP(WqIMEEHXyc!#9l8^@wAtdHY4eb)0A)_c zhVcDgzI>^?X^b3OS=nE}@@oHFq~bOPeG~-rU0tU@>c9JQr$xfb6(O~>wn7IqGtDlF zoWczmnEQ6PJvp{$F32l0eRje1=$}KG}ChMMea&iL3B4@FPB={T%0KIr| zL$hEEq?(E+TVmIqJs;sR;Pvj^BP7n`wfjR@f$)y4jTr{~e(0e!eS#l?%=FYT*WI#9a0dtachSZ43V)CLGL(g8LL$o&6A3P4j+v&x?n zOai_v$W=hmg5UWxzvY8^x*bNZy@v5j zf*JpF3>gahmnHyX1>A3L-rTBXD8Qm^Lp^x+Y9T!lhC(XzaRVVjjSBKZ)}(lNwr%8n zekSKEdUpLN3UfzNx+{9FrsYxc78pk$jZ+K9TkoFSP9-HiV*)Ju>K<4MI#TrJ$ISy=#Np}btto`FE*O)stnj&q#Kn%fF5nk#NRdK??+&!WTeluYLl(5h3`OWo4TPA%o=+G?W_{V;(;qMJ|0p z63CLU{W7$4PkV2LR16&|>`!XWd-0-yoA&{Hde?KU(|H?pfS7F72BlEz9G%vA7W0`F z9q#F#hg!Zn+Gkh7myQl~dKy|}L;L*utx6S>nv)TKBK! z>(?uQ>}Z%_lT;$`=qxOp@tMkL+XcUe!I$}Yz^Pq0Dhuf#WZo^9B_pzh293i0d?GM<+&qh|3N*pG{(+`2`1kiX`95v21! zUnW;hP>K9Q(xa?OXN=91cOG$_P##}sV#?ENitt(>Mh0>v;HF`^EL@dKllykv&!1%b z)+Q__riHxsgTU!RYfpJo~h#CJ^|rEob<&(dLj=G4@-FcfTvBo zC&okLL$n>ND}6)A(}WD}!4VNUSS53N)6nRL`T4BkEHiKdl%O$_2o^6iktm7KibG;+4jvAzeLzkL4Wj!2ZZC>(YTdhkKUPqM?}^ie3z8BN zWC;4Cz$BME@wANqun8~YzM{8SWnjNVe@urQ6SowEk?@oha~Nj;n=lDMett`q@rxzC zU!dyW>(u@28|ZHGdk49DEr2Fa%NW-h*)*{Gux;L6MK1D`wY3Ly;N83beQ5xlH8(OU zf_5q`jbs!?_1-o$MZ9;wlnn&j+M9nDCyYR?mhWoND=H`;l!n178}KS!F^FsFkVwao zYp8S`M^3;Vn#^p*>dMN?o+-#L2%g{y@Qbv=*Z7DIuC8lej()oEI}Vi$k*~1tw5L$R zz9A74vAQe+DEdg2U7v_RV`TVd1_i(=!;FYwIRN39TUnT zlhe~T3CH#Ik=I>8@q`KzOBnQ2P#%(nRE1POoU9YNx)^#PE2bX_5#a@ z<^zcVC>*6HXSJ>=x>QEqQ@XV4ns@sHb#mtDNkNaR?9Y;u&kulxFk{{sQW-46n5Zac zSJ&Rcb0=JGnELkrb>XHrSffWP6c{{>ZlQFRvg7mT{je|E+N!*UXp@>@Flh$xcrYa=7v%|2ig_V`yCJpEoSZ8P-_K7B04;tjdv7==bv^abAs8C#*+&M;r z6r6#Y*ez;X-PWzKPdj^M#w#=y0s;cSw~LF53yP?>dw9%X>$7fG;*=+kgk*_v9&fpeesEi z20hKmd5zICpiorygYxnl-G5S&lb=3+E?>rT^d5NDGr)j>hn|0Du)1RBl-ctE}! ziOI=2eJ$_b4@^umlAfGq3Vy_!jOiK;Cv+X`oICOHHP;5@=g!PfhKx^6E@VS0e)QxC zQ%mLfRz8++j&0lEc>B)$q&&K_@_%FjRN$W@tAAE-9Pw*y`ki88N{0>=^-LiPsaBDm z4rd4b)*3Ai*uZ!aj^W~$9vo9!2X^9V%o^Z2Kl~|f=?mKY(JSNUw}KgbtJjzFU=&$J zq3vZlDqQ--`TKH2WMqfvmxW$?+3n;>3(U-5hoqyb_rCI0uVU~~ifpQDpDuCviqP!k zO(xK%-+=_o&Ub^n%iC=EGL<2sG%F=Xbz;v z2M-=#zk|trYUON&2&&Hb5%IP!Ek3^Uo&3y!7f_^pv@MmevoMoeesP4cJNj#$`B(ov z0>IleH1J_$Fu5Ve%beSW3&OUmfOQJTaKnY5fgu9Q$%I?C3egG5Patv#EZ6^H)K!== zBq$FMW-)O8janP#ZF1QNEA8C*uDm=7!N=H zzx9+K$KljdgjQnL`@WRH4=T@}h^t3#2qy7$KoV#NU-G?B-mDRaQ)E6)-=)OtyVs*ULeGXFktU-b6-YM^K<1=fg%9jM2b(} zcdRwwEO3NDioBkUDPm?@sAzFW6%HMO7dX!w3&)>4%HQi%`+dKv>Lxjw<$XIT2@Nou zKc+2q`ypucZ%Tk@;9E&?pXgt^pbNr_wBb+Eik!0J4@&Sq5G;&)TD-dT`;D3-wi_$} z>^=nf&|$^m^6(95Y(ge}zWE2}U1Lezuc%kfg5Y8bv_fENRV1Jv}s(O3M(~77V05_HHuX1Vx@fYGeEI^DA2@X5!#sbaEu#y4CMT zc4t)HJbrwBV{K(I2!Woc!}mV4wZ$H`Wkw+k-lmD!p1O6r#RD^x-OPBd0fu8geL^fW zj8kytI-Y0&gf2{iz=L}gyxXJgb#Ru%I4@*976JC!*A%R7_A`{;-V4x=K!MI+gG1=X z(#EUz$K+2S33E6`=QzKj>$e&|-D^!lB1HEfrt7&V8kIlG;V8>U>u zQ}l%uxUw>reH9JJ*SCLLMl#+83OUlPc;UGYDm!+Ns{W$nQjR@=WOq|Y)k;q<51kNW z=6GQak*oaq5f}!Dl8$@ilAAHwtVhG!w|HwCp1o07xDwFc%wy1Amu6?NdnKf$!`>iR zA^U`BEG{}4w~U-jt47h0KuxNYqlm~w8WhMaE6WbzKEU7jZZ15$gG_ZAZ&ts2+41e$ z{dabA`Lq;wM{t;CGo<2EQ*+@@=H;cK+8bQ)@i`4FQCvLyKI7J{to-~qy%!*}${$`l zdQ^fuZTcy!JWg)i9wHzYmT`kdgks}D2{Y{xw9P|IFys07fKxt*7NUT{PgC|j;%89~ zCxT+(IHm~4g=BnqUH}fXYD+M}$SI5LPhALhcuWzsjSEifkPbFesu-XbI)z3URs= z08^MzUU}@c<0Onk96eddO7C`-gq=Ba9D%m8y?y!QEPS%}5r8!t+OOFN!KTjU!u+qF=Cndp3`32ZPiF`Ropq z#Y1eWcSv#P=oxn4{&VlK>eZmlD%ifIMSm@>^Vk~s={N&p|MQ7ALC&C_ob2p%Ma3G( zlK`IkU4-Fw;9%O~7!i-`2=^5xY={yP)}Orsn#0^E%jN3?WO4DFk*TMK4+WKdgE?S? zY%UMQc?jnHfgpooPx;lR(sSVYqenY+SF;n-(lETq5E$qKd;`@P>*r!?yTx!5Zu8Tw z)&y}v;036Fl&Oe6ZMHQvEw8P3LxsKe?lBtm{<6i>uQMfn0sjO4QGTV>JAQnAX({ZB z{sbn%{;jUUNsdfkh8GTR4gZTrc7Tk-p2M%*y9)+DjPl~P=?kxAk-x${Wk0!Vd5W4$ zMmpBwJZC?K`rY(_ZZW|$$&ihnp!f(*f`?1!o61TwJDYoy{g}&xg;yZ9iBTe)FqB3t zKcp3a0`EUlrddU#HoX+BKjC}ctY&0^nM!d_f(j4HhoK{0y?S-EPMtJ-eJU>+@%y1$?$R2gd98L*|Ra05d>!p&$ThP3PqTBu4aU zK`mKEXpXQaY(WiyVM@zBP9$ika`L;|b@&H4D91Sy^ z%wW)aG1H_{tcxmy^dR;ndCb`c>)!yxVUVtT@7Ar03!{3eH{aReG;iX`34|6}N=Y+Q zQ!umGS{tB5DB2|@2~Y#G=s4DPQPDCxtyh{*4)8o`6*0%uI@`2xF)eN!yj%=ip_9c3 zs#H`}rLPXsgxOOnDJTe&9_!xI*h6o2Mj0~hK3!07R4ogs8nv(oW8(> zPb_#$(r2BMS?;+97>Y?Aa;X;(u&}UbIbTHl#B8FKmX-z+G{i~$_xR-QO@3ZxT9x>( z#u&82YdG>;7KX_*tV`gYI?{9L3j0VP0DO6Pco%z4S4D|qV&TBGYek>~{M%Tv12D*Gu0@_d3s67iieHs;d z95Wt%1LgRwdI5L{azzj$5JO1bYY&W1w1k>E`25q4QjpXL!l2i#2cod5iNq~E!GMn= z!^6c@e&D>oes~tj(6O?jqTSNcKQQG9=}~|9;wv=I7L1!?j0yAhWktK0W!-LU=ezTXQlpQsf*9YJ~5BP^8JhI!&#t zs=^+^2t*K>>?;*WLUa%n?ZgoO7B9cxggqW&Z}7BqU-gzZS6{6e9$z#v^fCp|2u?N5N_ugE%fK5~5}xk5rPlUk#%6^qGp@ zqqDDTLGQlQ))L9`8oV-$%3E4)=MD1fE_H+C#2zbklYplE4U>*F4LQ%Ag@uRzTVA$d z!ozJ`YcHz{`-q_y%gyf53nmYy1bMIEJyI4P%N;ntrSL3!DM2Gycl6fI6XTNo@4r(z zBm~q2aoGJg$NfKh3R=wn;RD$Ig=T8&>>$vqDq34U3>AXM!y6Q|DFpi_q}>dH)z>bO z|L4QnbR5kM5V!KhjYHjl!$OLe_Q5<4atv4JhmWOy$qzd3j>W>0$uK2|@i?rHvCocqvfRL~Um_Y!8JfNgwlL3a0PhKxmL#zll0;r1o@Fop%kS38gnxwDh$N^T{ zUA?)%PsAfL+Nw`(A}#=Z4G%Hc5WU}}k0Qj0peU@q-@juydR$APgdl}zX8Im{6H!fc zda<25zr@NT(IO1N25K-uz64)ds95{JVUY*N+*7n*_)8k#C>(yIV(#6&+hF&SpaD}9 zW-)$3A-EMV0MC9(#&bmGK30DK7g7|6&B<}$|ENoWpILjk9bXNN`D-2fMBiO>U7SoJ z31%)J2eIWf(ANX?(D9zA=xEeY_|q`+%wH6gmdZ;?Mm|wULk|=d;;p*n5(%9)IbNgMgIJxvrJtgQd8aL>ai?AJ*)FmO7Mr4l!N(i7!g&c&qT_LR4Rv%1#}DA zP%ju{GWnE8>X6pE(u&~3ndQ@%;%U8%Cq5W@e)#PUqX@$rYFxrd|NC$tb*PYO0lPP0 zAMfj@4J9zLu$(`Hb`KK~58CM~X{%0yT7+}MFZB4)Bex$FUs_w;fOmTLtAb?#-JlCp zy`#0a9|Ge-cjta}O))%)2?x>}V?Piiw4%8?oQm@=v$L`7b^BI4JL?HbDOg(OI5GIv81lv6 zZynNT`J#CK6HbX|8Or)f2ltW`5W8@~!=pEmI06V1J$&Zm$p=|kl%j7j62-;MEkgQ( z)EjX2Q_N|O4-aPpGWC7{3gP4DKU6gcS?1T| zy#_c_3cTU~jykOa&^9qX4&4H7G&K>#ii49AW0q>5x(EQLhUI+4v(C<*y`>7Ma_j$M z?M=gK?AtbOL$oTg5(-6SD5OHtKxwJW;X;O@A~KXh8Wd?zGB%i!Bq5in6e&X^Dv=VJ zXfPF*p$rMB_jkIt=j*$@AKvxhdG0F>Yn|u$KZbqZkNx0r;`{sd=|j5R;u1t#gK86i zihxFf@NIANF^u*<^21`jKpZ_j2nN{+iIz34`O`^?G9CM<|0pqSb^I?u|= zUNtmyfYcTC-M-w*oZ4&ID7w_0ZaLM}1K(%wc#)UaRo-^#Qo_p`{Q(oF5wLQz1At6U z{7XT=cubgh#n@;-J^CVO#L1#dOH$9y9>@oL=V5$$3G~LDH*n3OctWT~Fn%CCcZPpH zY?Tn3wpB94tb-4D!UNLMJ_CQ9KQIeS6`jK;*$1 z!ITC~OIlY_=z2C;I%F?P#vfsmmN5tH84qR8?n-@1VT^DC5biCC-Wt6a(r(4D`H= ztIbu%yzWPAYO?$votgf^Qt5fOto;T2bsMU>j<<|x2Z^h0dg*2qKN^*CTqF|J851rU z;$eWu{V3xH0uz_sC1y^)?rDsfpgNozi4290LWsJ)Hi&|gK8tE@w-`}hj&Qrs2sa(b zHLWb(t!*wo*@`A9|9f?xCH?zHqag`Y1NG`U$>F-m5+}y&x;P8}XBgizRkSlCB<+WK zRObi*)UsNEZ-_`8)zi7JSZ)AeGG_?CsTHvC7sP=mP?%uq8q%YG3Wpl{{M7eHBh=KA z`453sIoi_N>TNx+N^yyDR+MGGYrmWhsG5X`js05nF83%~rIw<$n2s}OKB!RO1ziAb zaJQyo+9_0pdQ+ME;+Ha5v8BXhgX!c`su8!hejkZn*3_%6)dqI;{DoHMk|cYxw)umZ zsaXK4GiKblAsuo+k6Ee3x%(P?cj49N>pZYUAI@Wn2$UvS1EI}ataamGNeKaa(94(oX^OpEH76w6;q@P*w>HF zd~MfVE<{5n+tI(9D*V)Q<;x0;^JMEWD6ocp>KasW^B3i+P5vdcy3}FqZQJt-a5?*XR$ALIoys*pBI_vhLIr-WI!d?`H7& z_isXXfFo7YGQ}ld(hm)cxce{wfZaIu)9cq#p)MM7pNa)eWA>myC(sI9`yrFs`TiMr zm|&^4dNiL{E=fJ58U#Ufboq@|lpsm1`Mi*-p-@9EE(XtCnciZVadaz#BzP_w z19LGEcCixyAN_fr(^#@1Q39f0L4u;DBwRZMW+tI@4TB8n)m%+_n{dm16J;m}(}x-v z^;f?Nyt=`3in!7s8pap;et|8bOUMOF@4NUOHJs!^4EzWJhXcid)Z5&wa4-XnOhQ){aw1VtC1lMBD;c zM{u6iWU-S|8B#2L`n0EvOf;H6rWg>hWDamVk7n@9nY%WkM@Nry4^efGQ|`gVMK(V? zY6*ZO-UTX^Rh8pke9SOUzf)B;Kw8sXgE=*#B48p`o-j#g|NVC@Lv69|{qg!#J2;tu zLei&5ZpF4%xs1ozdfGHC#666RKBpttNJNP4^cNs~0FXWC5&*@s~#-9D-9G{WV zzx()B`=MG|hE4_HB#Jpl_2U2ixA5V^OF?f*#uK-^KZwBP#KWnA^{ttI`|%HQuPneS zN=oz$4J*(ut6xQZze_w>WZpDUa*l?99`o(q`|p>-2N>_)smy>j4t{jNWR-C=+-^Nm zoySH~w@mbIsw1pjnR|KZwflK_uXsL)GG!$tt?xVRtgZKNHajW*Oo4XGe5iJJ(}jGN zqa(R0Z-AkifqRx9A*DzHm&ZtWHhcmN_3dKb;q#h*;USv7eg$lV6g_BX>d{z&=Jjg% zZbe9fP2zf@1s+L3K~vn_^>zu=9C}v>7l?JffIrp*+2v#{2R#rpFeuPGdiSrBhRiUU zVwgEYX-fK5+qQR{eF`!hHRkl2PlxDzEL$!h+XeV1qJtQ|QziPzg-$WTSnsYoyy1F< zfx4MgGH^U`ab}}OgH6h=ZmTrT5vI6lI3PrF=M3csnbu8=i5ci)Q5G;sq|RUXlKTdF z%e(U+<~QX>{HCm;^)mTW+%XfM6E1b#777h-vwEM5*_cHL*$%phe9O^_oMJkI#m}HNl)}GD*wG0j-Vl(go^oWtch1U(>E@bsty6t-8xfs02v89a)a@aW(j(40n( zU-V=J8^mb*7EdTNXv>Mch>LBzH-#wXb@y=qa#=-#zyRR^W~@Eau7*OT65l0j$oH== zyz13o9f)_bI2f^~Mbcrir68G)`T*vtyQo+M52kTR=;{Ozahn zlH}-k4be;CKvu`!emm*mBF#)7Fh(Pm0Bnu#4PSzbXm{sTaJAUo7taTCqPF z37tfi7lz1wyu+_j#JQgHE z_IU;g}vDe%8Hw`S@+jT?Gdhz32yEvsV^|Oy19PwyCA-uRVE} z$gSDBxbII|d9TOOpjhKA>yVi`R~sC8N+!E(pJfUhwrEJGduK8SjwtJ`{* z!zTshG(t(!UfdjI_0 z^yie^)|i6!TYd|jG8zB|P)c#zTU##Q*u#AA2AgMH>FC_Xr3I|nrvq)+lhR)#QcLQR zT^H@Kmk}q)u8T7!dw6`K;iy)uq&nJ>wq{&<&*7d06MD?rv?&FY{^wh)74gv1ti2Bz zUTu3+7=RXwPhP$(KOT`QcI}t#GIDK3^Gv9z?fCdidEmfNy1EBe1_#gt)0oDYc*!40 zzj0&5OhhPD(MFicY>GncP8DBRRK)25o)E+rDkHuV4e5Bjl0#*JA6|(k2<7y0a!_~y z!CY}4buUh`rT(v+)Hijn^(LyRyENbIoT_lJpnaCdkpjrR!h!;Tf1N3x{B;bcq#K_F z^3~Ueyf4qr?v$jIO+Z6d7U(*AkrM1Twq2kLsAy{|7P@s$Qe63p63V5h=M4nxQDAHb z4=#wA_kd@bXGh&^sDe~8Id{mVY{`MoVGLn-^{y0Rduq=SRi|%SFp8r1{l2Bf3rV5{ z>0EwzQmOxuUJkhYkgqfBhgJ=zyw)rFg^G3COfxfGumx|bviEN^{r=R~YA}{Ce#d_&(meOsX{X70!ux*!gqx#An+|JG2 zhyF3`G0@;cwO4CeYHAGWmf)VXan%gnhDAktC!3o$rodd2cRVUuKK9$^ z{VyPz2N`oIa>iPMS@mX`a+)ghpzenbA4cysaeG@U6&>+uty{#fXlgY;!0TRVK?_?Z z%~-JD2{b7&rMae?D)W+q`}DaAT>fdS1I8}|KrA&!X=yR!9J14y!RHeb+y-6D`PdIM zBKF`x4>;UU@55&?+(O$SR=_s1EVJYU(;pjClGTM(2wwd=l{Ip8!h7^|cI~g{FqullYZ=y{RyH?~KFQ7yL_ zF(*!#a^f~y7_3^rRx_JXj7VurH=`YSLQr6@Je#^xCX0!~X$ zWE=Vt0h*U=`f6awUmLJ))8!GJB3@iwt7z*3SET>$gK1y26z>r)h$mPFny*8_71r^n zwt#k};;_M%AMXe*RIWZHZ?iCqZ;$7 z$is(E=s5;vWc)-)2FGw5Ny_8LDS$5A71#uTE+!~Z?XCPFv9mkQrw4;$vId-;7iFLN z3v~ehRm?I!zQm05wT4(V(Mzrn0Pftf!oqjLkmAhAqGccgn<8Ll@>ci<&z(7Q4>Eh0 z|M)^60QbYmI`DMl#+OW0$jZoomdgCoy%T>xXQ;#RnQ6C}0*YfaRO6=$YDAwKDVQOD zSq)ELa`)~ko>c&Tk``@DiAu=(*TqEIjScp*cNSS~+&E@vJc1G>^gtA)04{c{j}sQ)sG){36ytkKC-{ow0(79UFz}ap7GMpAMqxW>@vFe zJ`7)rU^D6Kr^Hl=^**PYNA|zy7Cv&f>rgo(wSpm{X{UEZO-pHh`*0v?T55QY`^ha< zDehYwfag&*ApuX$xI`h9D7+eANW~K1uaMzXxH+?tuxxz4ZN`a@xw-lkPym7=`(zn$X_ zfC$Mpj_3H<`+5z7ezO<*h)Q?_3vLAGI*hO{PAa6e`#5&Q}+k0}2UUpvI zN-9KZ&AB;v7Ne1Z|Gnep55ehj7FQgV&+nmXr&&j~G}TY3uv`wxnRHHGR<n#nB%iJ|RiO$vn5W$#}5mD-*!+3w1mBV7GiATl&kAUGz0t^6h?_4|LGOxX<@T);drWu zNt0BEA94SRQdj^gUkm}DA@IV}Qa>!_*P#+4q{8JLfB55qh6#?*JkkYU3mo)Nc}=g$ zAH_tn+!^vM+J8SmCmvtArs=kqS_<$wy`kZhVLlz>7LO-Ryu~~Irh4A+yA+`O3&oTE z09OY0(%T{Z)cYQ#(06%1Eupk-(bD`3Gv>=>&6S~4t zS)F=Qi1_U&Nb@pro$ti_mloxa;sXV#d5ab$UcOv&r9k5!4a*IUi=8STcPcM02mGOR zQ>Brj9|}JmJlm>ShRGcLr77IFhY?7L`r_kG3iXxmygC&X!l!+p*@4ql+-%f7Pwl)GtbH&j-%NTK!`LP~b*JzD{PK zUi6LYp?Ppli}RV=eVn*1#}mQY!4cGljn8%(+rNhuC_qeD4DvFz$E;nkqDx-hhJev) z9hk#r`3Zdi@>F3&8oBG1^ArBJtOzV&u+b(bIz*BZFeNlVfI=u5*b^mFMU0y=M8VKy z4*!T$+LUp-#LxlicMi`UWnhqICQ~pC-PGd|CRsCZk;%LR5lGLrXKCu-+-n83X8|JU zf}v218^yZs1+MO8Yb?KT;KW>#GerqeLrAtT05qT`Z=zmM+M|2ge>dbp_N#9FL1To{ z@^;^7zw-c9q<4m8M#F%Juyl<+9GadR%%1D;IYHW493MJn3VAe)FbsjC z3r#E&J@1`-N%h6ASJQV%eltHHlEc32_SU{;2OaThw1aI+Ow5mdd9`TQo;^{$K7RZN zJ+RKnNuSLlm{U<{fd^U(&b9?q1X!D4)X5p9ltVwNGj1FWA+PY`J`Z4#y0?PScac`H zeSgq^y$~;-k9|LILPVE(T{*d5fF)=)*b=un%1`qC~i{z=mbVf;pTTVrV^5NtE z(?wAxZc%?|KYhB4lY@zOlUk4K=ADUn&5`{&eX;XM^Jl6etz!?=_L6@A94bd%J@Q)N z%k}QvyN85^zRLaZ;R7=h8#X{$j!r%n()J(oO|ZT7?_ zzj~BCy(I+*F-dFaP>bcKS+FI{sKpN|-i8O-$)qHI>|T{O<%;(EVxR%8nhWAxYl^J9QjLMcr!oib>$=s+lk`FOLl>pwO&EidoNeGr(X!9C_x z?@d-0bx}V}mP{z+6tPw9C*>AJe#@rKVTeCvWkZ64>n65HnX?I}8Yhzp)4?3W!s<6E zPZL{^(tvl6GvPcZz4A6a13zQ7^;1$8N3G|zCTi(;hXw-HbfAcwoPy){Fblc!WC zK$?8fV}=+Dgo*5k18XTM5o=C))jfS7B7d`1UBW2OirvU9i71`^^N#h(54wXa!6Mv{ z*e(#vkH@V0a+q`~#b*j&T46oWQPwp)G(M8c74f4l@;y!(b&hcYO z6C0z>JUqrTEm-%)jKXTx4@S*fBXCV@#tPe_?CJT6_6VqkDoI|N(TFI|MZYrHrU?{W z5haLO2WY96UNhStrXV)}=)pP(2a2AaRmi!9YW{QQA@d@8#hAr4U0qv7XhFB1ZjOqq zSKn;MQwNp#3_>Sdl}Mkgy9Nb=ng*R-B)FAJB}b#Z>M%vv3ZoC=Ss+7AAci}j_JGYTpa0&t98%gE>_<*pzJ?I-uhhth^4_R5Y; zBr}D&M=NM{W&KwvHD|q{GGxbFxLM+hZ8spX_-^yikF))tjb?Dgmn<>D#O!0A2R+HY zk!rh;5BJ+Mj6n>W(232KS9PqA5#;r)=r?3?+Xou^X4(C;yHT6>nD0_H`tI2KIHS6IDP0(Q;bJ?e|iU|Y)R;NbgIP5Omg@3hZ~5Sd-Jgrl!(pLv|M zkyJtaGe!U3|-@h+p1mq7t)bP_;Hkdn!W$)LBoqGcU zI-izC`sWJ?f>7JtOyCLp+iwB$N{zghPoapZG%5+B369DvIqcQz5gj~b${6>$$tY9O zz7Od{$2MpKD+s=#o1^oCsBoyhvFqb0T5#3VH`cgK6%n(s5~O6)U6LYo>jpsZ9A*b9 zyCRa4B$nygr6;>ojwR)BPU*2B#+A2d#?{Ck4|UP(wOLIhF$mMZ*yq_I5eD^l#uX>0-|yx ze$kO}Yf-hB-*O*%5qCG7RsQjw~GSaiC>9peK14#64h8!#RdqpnBLx@s60^czfL z#bO0m=8ct(oP4e?r!M_s?HJ&iUPf@U?+zDd1Q%WKZ*R+B_lWNRtIjc=sjiAOV^EQ7 z_4N(v&hRO9eoCzC94C(Al!Vf)83i+D&OD&TM+y)VK3;z5&9T4-)gIwoxpwgBvAYgh z$N{t+i0eV6Q@kn^^oH?FYW*WPQ5-vZv@Q>sZ*U2DDgA?QpuvFytxp`!Yq_H7*dTH(~RuK#aaE&U`@Rf?|uHu4CBAEhHm81dD3q3 z@-(M{>8^*r=(C`t!fQTVpmaAeFgR@2TUohc`Thzwb0{4Kg=1f&WZKe|-C!b5vW72A zSb8Nn8K=Qpem^&nI*$CIq~o=1r9Ab}Q@p)Fxfd^AZpu1GhVNZ$|4XxL+KkPbaPY&1y&)@v-#u)d=mzrCpcVWU ztu~SaTnBg=&UcJi6ng)4F5DixQd><%&Z9?e>qhaRm0_r2lQDgvoOW2|-09EFZ?fT3Z`Ej5RXk2x?*pV$t03^(THbmJTr- zdQ)!yU^DCX@l31kt8-U!pJ5b~v*TE&%4JQ&fQo>dm@h2aaceA(pZykud(rqo~n8#Xv6s+I&& zcmyw6g#`%lY%~3gGJbx3;PyU>nI24x&Xle>sX$9@Dd^}<*hyQYO(H0ytxYAjUrsoE zI{5EyG!hJkB&SJr@>VeTh( zdWuo}bhlI8qrLZJMxRRVJ5{|c#)ei2n48i<^!~U@d!Lmp>v%x7Wj2)#s>wOIzL5unv>4AIjQ+vg(sm_2)++AgG$-Ge&E zmb~*2SAxuQBZI?}lbiU}Py@`c$Qf6k?eDtV1+N+^8eLsCIQoOMwQT@@QszPwwn~6} zs+-TGk|>_*rYO}ptOTn4$~8T$__B9Bx_335We~9q5jSUcpB2DOkM2Prh>Nv9z4(-+ zm-X))PXJnefP2~SSA2;dk-3QV6q}!+61(!-zdv*AKMbzNv;yikuRr=NZy0Jrmet^3 z96Y6UG6lBUqLpBCz@@B_LI!-G!vO^l^{MOjH9H9O*ROj4h;W(35=y7KlflJ>%&>3n z(4qWCA3(DMkS8eSDR|Sahm09J)_C*Vy{r~YOmwESldRzl)-8AFYPt{cXF%82WD$J4 z1ft|e^k=aIiOcJ?tC+)}k%3pEX0Z~n1Bb3-jB<|;zp##;&OkS+9?3MaI<6x3VKVFY zf1!o}Xd1mZ`6QtUvh3l*k3<i!(T!IWbOaunGd>)Rq_Unvrwqx01qU-Sd~hDXx4+&1WGm?Qus*S8Hf#7&`O=sU z8hfUQc_Z~;{vO~2F9t5e5>Oe+MVIl5@aTV)HTli*{eV!Oo}ODqQ9ttGIG{WjA+lI& z64bXh)peE#lb2dr1+?~H5)+gZ74vSxN)e+0Vq_zzZ7ZRte)cA2#XpZ$cQZG2D;JPo!m{g*i571CXo*upXZ!SKTSa%fyW z=Q#b=R$r*lOUrK$SdJnLho|9;;Jl5kd#q}=0%em(9a|qR3;@KCVDM2&p`+p9ATLe( zLOQ>GB(44pzLC_ldAkXj0Mv4_=mkhsF+tZ%OKX>%=Gd_eHg4dm3$yOMQ45fp@)pf0 zU1F@6!p&0k{V&Um96;gocU3g=2E4M{td=aPWZgjX)3?w8-umV1$LQ;SC{K!W7)5N^ zDeXi)S)2$gK2AwDt5anL1^gqT(+SNz1fk1S1;N6x^o^1 zxpy8n0s_pbZ)p$x-ojnGv_xNbGo7uYwvlR^$i$R8`jK-+tlbidc|dqZ)zs7&|8>S==HnK* z=7A6ca~CWSVlLy+X#Mg0m@xc`d14t-HnD_MO{bP_$2*@r+m&A`iszgzz`z@)2%^{} zA5@(LrV{_nQ`3G15ObHD?TaQ2P7Q1WG}kldZSC>mORfJbSb*O2o{&0RKtT4lWv|m1v8~G zXj!!d2B?;nZ-8LxZrlaY2w!7%>=L}2y8gCb9;`)#!kD{{7`FMDRAOIE9!T0>*Q5^X zQZ_~Xv=~N*XCLGUo`9TRM@y>}L(Pl_Q%9jBTD@8r78^c?|G|s7Er6@;Ne6KOfr3Zn z*G)q_DMIJBqz$W(%%nv&?-^1Dok{;%<;HPqXg5VB%rUFC0$|QY<>>bP(kd-N! zBlA6uqrN`qTDmSt!eZ^vQ0{62_#(k^?qUekbx%hIhokpYg}WkKVK{D#`CRb%AA;4wNk#*SkT#mL+U*yvkKmI znb=$m9fi_3PGHd|p+Lfgi!q+D1_pvp2h8UrhkbjYlCTVMBN?``FPp z_?KyzLJFI`75eu#f*Gd~w%DyhEhAAGmC5rWRH=4$v#u&GV@D@IASDp5wd>dK5ewza zf=&%G)tla9Kp?_!dS!Q%p0}PetyNKx9v>g@_2IMf@;t2y%z0A|(dh2bmDt!Au#jyL z3l)b`K1&L4SGqK~HItsczKIHeaVdfe=yqTvnU6ae9TOAvDqGL}^DSzWG)K;)NS#1~ zn%J)AR3(R3m}}NGT!GNAEAF?fQ;jXLt}P%tc+h?wmdo(5uB4=#N1_~w4iFkbWqhm2 z*Xo__B#;*r+O)+FQ^`KwXB^o60%KWam*vmk6NSk4lZRBlJQeGZ%$CVp?HlkNpfC9; zK~r5)z+_Wu6fs87_sGc9ugOOM0-(`$%VNpzoA*9vxyL~<53s{m$FQQo+D^OdZy zRq(I3LjEwJRGp&7pXTSdDmPT82Ye*M=!!j9C3^&)&T1lSWV!BInk!H@3Q$Y;*O6ZGOL1bg&|<&Pg9Gi2W` zW@H{WPM>zNu&{_RxcV-aaQUUBW%#0%ic133P-k>I1bFT4$O2{>-+q-qd|VwI78Spjyw~kssQ*4QO)^5}0sqtH`X<@{hK}=f?kE*O$w3$ud zO*bNOC6GbrC@(*}L-XcNE>+`C>SHN$NF_#xa{uKZTAMRo!lI7i!a{Y?DOxl(rCl)C z^?|tn0$Sqi7|aqLKAXtBH8gAmdve*vF7>^tCWk*3FJ;Ljtztj{=|Aud31>Ox!3?>A z58$_H^m(0>xfXtr@7@Uo;vw!h12L;XB3s{Di0_aUx`$_bsan%j7}jM$j*T8SF6z>; zu&_eZ@&&_qOb`#bySqCKOk^Wk|A7Nv;TOLEbp|vK*twrf+MK6lW%KbP`*sA&410Ss z2A3xV`40v^`PtY{*b0I98L0Nv=;$S0{h#^bzBM`05F_dy^76R7x^6zSh+|BVaKy_k zhd?mZ!r~6*{{w&joF^qM?bSB5_`w5Y#6X#e1^@lGee(^ql&mM)Q?f?G4^^`!nL(p# z`O=benVB_cM=^2@4V6ATJBlb9ZMtnM?(9dJyMMgG?Iq7aFncBkCL9rF9`}#Z8ZkmJ z&-<UT)JUz?Ab;urayY)88LWp$4sk=|Cv~ZY<{0Ki6)pxDb%dYksS>jGK5@2 zmj&zOb`=0^5mAnLNUF8kioSP~W;a-+B#*rjIxD_$EMLoNvfoCniuK4#)8k8+AP;=7 zRlm!C!!0fChqU{c9WVZ4!QTzsR^O*j?Y`ps!}eMI_ip@f598Q>7RzopxqTRKsL!Nn z4HgD~4w|01i3GIPh3}3RFgJ%)#JBJf!Z&0Mid96mK7a8`2{*<(r)R8UC2+dI^+zWg z2k?d4KE4BFWp}$JZq|r7a%AdHr<)2DTk5CU@=v8fb4$DZ{UaiHr{08#k~eU$*S*}w23e8jThIyyRB{Yxcx?gSt2 zV$6dxcI+mYBjVZXb(C!M($VO>CVVQi5dPwD-ko6FIY0A4>7_Rkn za(Ydrj%Su1tAy>?!pzbE?79R(=k{zT4myK0)h3L8=lIzFG!-D;lP4W`M$BHn@6*Rj zHEaKrx#s5e2W-$m&ZquoenUHx3M6z^6+M1nBw7GM9d8^P1o=qwZT?I$)h-t)#aa)3 zK7$AQo`1l_C1$}SYf99kMfaIG;OU|AHa~F8!o2jtyC;|HgwbD{+at$yc|HD^nZK#d zzgS>S#B}pkdK38@${3*>ND9}1j5t+9ADP>}&n#GwJTz2pTpi5Mf5RwO{q=wU$*uiv zIRBF01S}odS(|>b?XUYJB9g67hRW{#-2G7h`VP1n21rx0vdnxQt!8ySXqJ-F5yk}> zRbv93=>_`j_{1M~etUw>sf{|%f&l8X!o-@)Z8ODEl1A`s8XT%Kx?)lWYgMScO`cR{ z`Dby2HXzhxz3rL!csB4z596kVZ|n!S)`%|Rq`+W<`OHqe*M+*(S)`F z&w@ZTjx%257m)JC2wgP~=g*Ki5rHp%m%a+?qQBFlX=J&4>~9>@PZS*-Va(9|gzHb=UYsj%)^#m8FH`g?M9A zSqAC`bdI;sT)0pK#mCo!PTabEdx`cl;awH|GZAkIA zf%5m84Txm^zMVv}5n0wAIm8e3VwtX+XIQLPdrxE2OT|!4Q}a4*5;%Ue{`zHXV)7Xc z8i1Nvwq3AT!Wn#bo^kPR_}oq#eB1P&88Vp4IA_CO>UAiT?&t7c{k zmEhCza<}TVhqbk4rl#%SErR4{{dZy!GC_t`86A@_0*6w8LQvSjR9fG@k7u8{#%1U0 zfAzSAVO+y)etsYXjuUO?&D)5Ol_vz8Yw-l&2}E4%U-0Aj?{Z!WDF${#xCFyMGvmMO zAtC+wqGwN@4At%P>ExV#d(g-xBqoN6XH1{|FYAWZT>y@t#k*fnfV>y*foJFsL5+8S zK8xWya=J{!d8q9savu7VA!K4Uep5LFc+)T35yiaua~`JNJl^!C5@yNrpZfOeP=^e z$d?~u#(}C$EFl=W&j9md#D~o-X}8#c6$3&{@5#-G7d!@75Ua~$mM+`P(v5K)Bk`3Q zBjfR@&rA}8RTXPW`vL!m4J^dL#0f;>=r#*_0;#e0eYCbV(**59dNg?6RVv-?5x~q6 zv>^7^m^CZ7V^&h{$~dJ@mMu`lufKOWiYltWamsKY)Kh&c1_eBCqbcH^z5c}w z3Oc!T7WKK~C?Hx!*Rm5Ujy0faLvvbE;?4yD#K-mzmWXF9J(oWkKUgL0P-Nswnjif0 z6H1xwp&bzjlIH5flZ`zw29-GYCR!Y}@)(}~gros>J=qCt%4Cwu*;ZZN1o$og3CyVH z-F69PEe*4&YiAF?bXLc4j7ex}bp+WlGQI1{qg#LVXEXW7KPH;rRFD|`Djhy|u16qX zn3rSw+rR%Ts2mRUJ|6he*^yb~WfiLq_J&B5mA!1pl$o1quBA{LB?y*3a`Qz83$Qty z>%KE0LIDui*>;}BO#V5i?{l{Xi;%xRw|h|V|EK>idwECfUgPTB|M$n3S-$pi4>05@ zujUJ3En##O@r&D~n(E7MLKZ zJ$E${Q$OxRDGQ>y+xK3gQ0uT)_tiD-E{%x`1RjxkSQogz*BzJ|GbH$i!uj+ zfqP+^YxUm&EVGi44+v%olGmRPp7QzRfXqLlZ0p#S& zd|R}UC=e+Tj?gpTjA`q5=RNd)R_8qSltk|J^e_q%Fw}Gl)Znw7>Xq1mzycp$-Q#9~ z_k$4`CgGjI($5xT)y4CHLL4ta2Utv1Me5!Rmbm4A?yrYx!iLSz6Y?Yx;%|0Cv{Sa}qA+ixJk3rw$)K{yVVz>qyEF zwP1uO2-~4H>4dY6oN zEiyr}25ih}XE*e^$PWZ7o4A$0pi~6Fs~<4j>6s4ag8^#BLPnTm!a!{z9>D;A;DIM> z5Q!KO2oFzZo`kDAxAy*h#Hh06{%BN?*^4Dy+lsYFxfI!Y-mj7eg=fD}kU)WXz23v2 z)8YI1sOS3@C$g^&H#(ZlA|Q&ix2kz(3NrmW2HD?!n4k3Rn};2h4!_Ns zn3Yffm=-VzaP#>ST`es=43vi>QGU1fYvv4a>{jEdK9$tN+{EB;niaO4Q|ue1-VheK zJ1t$fa0@|7%6zD%=E_xgmaw9IfcKz6(@H9VbDi>hh>OgsGij2aO4JS4v}P$GtOVEk zR%g1O@hHr@uh-Y&jufa!mJx@ZGJqTezvM++b3oib(YfoW=U?(@X%O@$?0g@?Kmz+@2 zMqJ_n$%w3ln$Xp}DYex&8xq&>Hm8htq zl0G#yl3-c;M$YQg*CCMAE9;nc;@$B!J&c#(KJ#g^l=&=-9JcrUV~d?SDKgjEARLcr z8N;Gy$Ge=gI1C@sFD-f>$N;e8nia0De{Mf;Ig%u}e(+t;Ad9c8*vYKuetmo(&D;^0 zN?S(|YFGUiI^Ri9EXNsxCNM2O4hwa|w%U&NP%$9iy@$|$e2SZDDU9Emi)P1}#;)nR zgy68L+gwNQ>^ak?n~T_pn?R7}1>;Lh;mwQGo3OV3($rK}-PK$S48S|U6Lu?^1mX{L zdWln5nqP{O;FoVHLNOI}34SSq2rV6GJit^@8jQP0l zWJhe>fmpR&xR$U}1lenLJOL!udXBaA+k5S`p_juxJW|yx%FlNewxr!)I-{WyMGOFo zbi2cjJ$s6%U%~KTj{sE%!S%kF^|1?m93O-H$^u$ubEY9+Te0F4V-2y^2lns3w{`>d zWN~G`Q)R|h_V#hs9a)2S&~ayGn*Ic*t!9AA6v}Pz&y7cWcu%bEnmOQToK&{uj{a;a zmWXQP7i41V2}{n4pQ5B`^(%yzPPxW&Necls!Jh@I?&3DZ+0j>tinx1e&M=I!SbO05 zbr}#Qa^iD%%mVWW+HhKK#`7p(tA5`xwxsh$*G$Kq6VR1;Z5vD%aI8`XiP3D@Mt}QC zmi7P{!LaH%38hV0@@ifCNfb)Cd;* z9NrWuefgJ~9)V!6*xK*#(WBmM2d54JlS68QgM{G2S6jRKQzc|jRN>I1LkweAWchcn z9F93Ohu%q(pks}m#WrJctsKZ#0x0?dkq%@+z^ zKELXPrwk{s5(?qwR@zz4Z~AA?e%?x|4Eb5M6sFwXLvW-0||wQ;i*7WWQBP z+H0f8q*1+44pwfOpIVu~{iF)edB?5VyS%fjtLr9F3*UhVdw_z%MxH*HaEMA$0(ixz zln$@A4LE^>6R`GKu>vE5e3a2fVI{~C^_0EOu7{MO%qL$BG;}`+r=6O*nXqBlb9-?8 z^Dhidei1r*TKDVrck$4$I;b3|RB9_ zO*-%Ev`tvEOQ-?0=kxGC2un1{(i&^luaAj}8b^T#*8=Cv6SMtK&&}DM<0@`?xg`$$ z2fPq$ftCQmlV=%81C@k+wOh)BA%7i{h)9BSw~LDks|ENqCtA<^32FPLQRJW}EFsL# zzm69I3Wi@O%YXkqz?e1r0}7qk8PNYcRt#f@3|UDI7ng?p-8Xyq@H0TDYL&&`yJz>( zgI1hqodre4?obdoR*vFi{CLAH8!iOXa;6@Fg%01}>p%jE(H)wx6^LGFKR0dN`U|3h z{4LrkW#0Px_syF(6{YG4tta{?oj(shmmONypkcO+C>K-cL}Y4eZXOf;fF>10B1dBx zbz+l2WWd6K*4EYxSb$Q27{qS<%qe4%(`Armx?Rj=WoueHA`62**gkV*0sr-&zMkw? zy0G5CP0byNgWymyT2qte#Vk!0*sA!^BTd1ifj>~6$F#TKeC-h`sm9 zGu_h3`rbcdqwJ=XKD2w@zj{~4-(p-0adVQ+mdm%aP&<3NM+?ccuE zXT)zVKeBgD`hM|R-0eq3kCy*l@@Q$VKQ{#X%5i`(vh-|rrF-=Bqaq{Mji1qBQqq2h znh9?+)y0E3C6piJ=-{n8j@A6179bo;N6g~-1@*NjBA_pOk{Ff*PqOj*J(Fh2Crc$g z1A}{t_WUSvP?0);^5}*TrJpvMnQT8|(RZ>#XTfw|;gNmb86i^V|9mOdAvzq@vWJAk z%O29vLWvC>+^OuLh9ayx$3)K>H!cV)D4UB8W24i5k_~cfcRP2WdyJm-mcpmLiEl&t zF1hM6`e^GZ>EqcRFF_Kuc4OxrqB~$tEOz)bGe9u67w+sx^~-7uB!+ldU;8XTMEp7- zd9AvCkmuy`wKmYz`td?j{Xe~I?1Hp#l@X~OI6U_9FAgNNbd3JwpNEvox@y?6X)2_ z<1YeBf;c7J78HTI9g95ftw2|B#;gtJ7K{kCMdnjO>1OUQT%t2%prYaw|2vetl$G7u z62-v>j~*4}qyp1~4!5&Hb>qp#pl_j9p)-L>Of7#4e+y|T3IOQO$=X$Z7_bl|8I z9FBD7!gcw*E*Ew@g+>`SVFGS7B}R)Y!2RnwT|_SUt5V&d^2G~Px8hD#hvVXep-jLG zL1m3#Ve9wzJChW)@227}nL>mGNo`bDk$OLKpLWpuy;H}ksbv=zZ@}Q=h2Qeb#AK|) zyoa#2>&(?`XjwhSwlDU&Ta3<|{D`yyc)$ML?9Y1EwM({DBX2PfrHnthW zOcF|TOl=4qzBj&*binc`^hD|?R=|T^RkZVVgQEBE+EsUZE#;ax|6UQcDRrUq{x|9A z=jQdH!qLU$fz#M4PF7a;kn5nks%O%>0v+9)p^SUbbk@R2ojM1Ah7T<(8$q+AYiT|2 zk&0P@9#o0FNzHY)!HcqG1e3vuYk@w_9O!B~C9#K(*Py}{3x`%cplWZWPo_Lc@XRy< zIPmkMcx>i$e8j22zHIbfC+wzwT>AFGd=?wpup=^i{{hqhSm31A?!0>5M%|?`+Z3VO4Y*=u6Mgh-2PWgoXRoRO_n^~e% zqVaQ1xRcoxh2LTG>z10`*97l3->V(J1^O0{ZOX*?B#CvaR((IT4bDFn11wr$`%BAu zO|i0i3$&)4!9l(mlKsY|$4xYXja7Os_#MA3eL2r?iMCr@?kIMvC z8&XoM%lh?2*FLo~08Vk1yvLLu^c%dr_Yewc>K!C6R@x~_V@^srxcDv5BV-(1 z_&2}#FAgI&Awa=4=2{1NP{mw_7zR7kt@cjF-3pSKZ&Y1-0_ajf;mVp)4HQ8(-EiB) z1A?(tNUp5O{e$POTQ_o2{YkoI-K;i=61F$7tRtV)cZd=q$@tG2Y>ZPo^ckgFmiFe+ z0ZpUdJvnjh#pbe4MD*-`UJ{kHJ1pQSlzW6Q^4qTr(6*$c@yUjp%X+$0v6A|MEq>%- zVo;X)8Hp`;iqb*>z3A37n2Z`Fr|!X^=zh^)V-JzKJ`(ygDQhge#YB#$M@GEjr{C0I zni&7X6XujsZs5QePvd}D`&&zhIX9NFdF-G7$8vz}&pJB)d+8Fz_=_tmr(U?m^l!>U zR-b=>Y}o&$B9I>Qe!}#>bxo)^^3b6( z4aYtgV{rp9RhF93i8Bl$JZi|yM6r?*LU1OKKYJ@4PfZ)0e(-}D8%+RWM8i5+;$2sR*-Ck!Ox##-fHvB+bai*m>&aE z!0m7P9G}w(38@G>$fa3Zzss69Q$aun__w}2p=!Qhfrro-E9sopd^uWIH&p5GR`)`l z3wj!kOJ!9Rl>nY$3+S`YQ*ELA!>$BdW?@qRQG>@uN5>TN;2RNtuqvrJZj1XaJ4P49 zQHB;ojvhYz-fwwKcvsy>jd{3wWv?9}A@_KSY;WH~|H)HgeN6w|0kd{7!@y6T++r%4 zz{8CY+IO8qM4{Nxojq%XIt-}(+ZQGoU(G&^iZM5S&kG7i3DHz*{o#0*ivw9e)G(L`6l#C(}!#`*{uO=(Y94W%MS{ zQyKz7GjmRlS@Ra42te@9Hw(UW%sQSgmU`e{zHEoE7_abvO?@>MfkMv$Jg0n2J=k=6 z+b%JCly{yk5yf+}k*HA-5bbzTO|ddgpPI8~4&jk#BzSEhaHvTYXis%@VW9=WW6%=( zOE+%b{Hn?_3s8*A$X99h%D6~?)ynp>c&h&rJoMV&ru31rBdLsz8*e%P^xHk27!WE7 zfvYJg6y{s;kCjZL%9uFuIl4C;BnQMgLCxjhfV%F4={6Sg99Yjr7$OLCP0HabNX~BIn37kcUPRuTrKs2lJ;U$j)y@P6cilUqryN? zjESM49n%D8xnORPh3V+*|1l$@?$z(Oj%9#2hz)NKH8tIiJ`CQ7L`P|7%hKn}LlQ_SPZ-ADZ!YWbk?Q$>h!X!`RXKi))h zjA|0>0cM}^_+J;l1Y4Jlh~k1dJ{dhVh2R@^=)=Y#OLm`PJdlFoI#y(cD&yB3WQP?J zmE_6vgAj{Exxa13O~0RGC5;#W%#|A=pjW?I@u2KpY9*}1Vjr(HAI5SXy-Cxt1JbDu zv*5F-Bu}2Egr%bceQ+-r-+b5C5?wi8$IZISFrUwzJij0lg7!xiForoUx$J44q!@3l z9|*tyHvWh4{$Wvqk*OW&qrBI^koQ!quNT(Az3}W1q1{D~5{1gUGm#@W9Q7rMhfRTt zg>5ENMz>EDWWT4h^!A^75uq(9xO;clJ|Xk{9U#Yu>C`z2%kDwYXxo@p^zO=(MIaJf z+Ti#o{?O!OT}fgzLI3pWmN9}G#7d54aufncrpp*LhR&{kD^jO1^;=8&7R7VOXrK*8 zj$B7Z7sbQSUpsHmxiuxirD3mjo5hXzh)Jw$a|68DnUth^wAXp(0o(wjo&+}JLPyz7 zbo#VDm8nhu$A*Fpx;|(mXODmNYiljNd)JcMTb+s~!A7@`)~z{3TxNB;*$u9RR-Ykid1(mP{O9JF;TE%!6a&|HD~O zq>dZ}cxdCsX0GO=b?Etp@`mOrryjhr@fzq2F9Px1VZ;&chFvTK2&kX17X)<|i4mqJ zlUxW40c<6Z+EO3)~ZpXu0PG=3fBGX>Hea|CLpnx zYLdW!`jgTFgX>; za_-7Oc-|q|F@ws*L*3L@CU}3D(UA36gnXX*B9vwWK*nn7R7BCGd8xD!^|z1aIJ6ml z%P zq6hm40{qp(Z{y1U?OVsp39p@xwgS3a&zhw_VM6}6t^{7*E#pw#q6+WiL{2(LTdy^8 zBs}P_5hDt@3X6BZNa2P-msrwU9x;fkW`E0DT}`c% z;Lhvt>FzJ=_eMweKXD+}eRf~=2wg49!{L;A4v9tZ&w@HqvmBfD42o-Sf za%l%dH9W-tA;d&M6+xjT-SL2Sy6lL<)jSAuE*AY^d?-^gd8)5|og&&HfphT&d8+2lV{(TC)EPVG!1+Nuej*aQU=SjeLWYCae;keWx5viaxo0!sf2`#U!VV> z_Hp=f30ec0MC>}bBa^e1-6}e1GHunWVRxqCM27z`B^*_>`9cP_vO3x+0t7BC?O0J^ zp^vXG$5~Y!U2JXpazBn7Kg&A{NU#yrh8JhZF|hx_a;sm@S;NO^X*Kc;@<(@1eKi-qWY!Cr%U?k)qGqT3X)h)IdKiDiOlM zrcG$O*zUTN(W-!e9ExE;lB&vt9feK<`u7KRyqljtrI1iSjVf%bXIVt;_TQKMJKEtj z$b)3)Nj_hO2IX+*+0WPx%3}L*E*izkN*@{~@^ZkBPh=myRTTDS1z+M?bKv3KyBsj5 zIKi$us<18X)xYXfLSTOZqdLA6>3VdGSO5ao6Gx#!r?jhA>w1O=`tj0vAID*|1CQrY zb1MV=HBTMA+okRowgjUT<08`?%{ito*kjbx)G%1KW1%LD5=6qGOP5BMrwUUaTqz!D zQ9QARn^4V0Sbcpq*;ga!5yfM6FLJM8XD&{|QtE2K?8qSqz>9l9azku0Ny>|?Th{fs zOzmFl*-<%m>#pzCIZ5FUZO*H6yxt3yetWvPJ^wgWsT1jS@18yDuZ;waM}hz|Av7j` zx0!>*7@ifx;15@Cj-5bV5b8vC4fyQ?2Z08Ue<$&B3!u90el3Q)@j)#3Ao(G-+i0c0 z2GXz7F~U?af%`IwhMe7c!xChaoh`xhQs@}Uq^*egxBq%?Zz!RY9)Ze&6mW>#1# zYWL5wWkL#}kbc!0+I!-QIrE;-FJ|Pbb2%L{*D#}NCrduKnVz0qqeKuTo1C1uyyq1b zTK=k}-(oPcF_E&iGp->rIO{}S@;oKSq^(bpx#hQM$pEs|wZ3`X) zTtEz?fKMD9as7hsVJi!NG-%?3op5{qPi1EURrCJ8`y^~Cb_pj%B`S0(bCk+XWk_ae zpd>PcP$WajR+K37&|sbt6(vd|(s5E5%g`tlQYnPwzP|qVf7hMXf8D!(YyH+aj&^(a zeBQ(JJn!etP3=)O-)lTAY?hlM8OP6CGvJ6}sDbN@`bUy=r|_naih@w9HQeUhvlczQ zFpmXfj3L6$qT6k*n)?;54gL8J5w5VdmhHM%pIeD&O#qe{gU;E0dn-vArCY7M*Qv3> z5Lr9tjWEMU2_9Ry3OSb(uu1Bp6q*H`pc%h;^?^@=65F){l-|`>4M)!S@-dsQF|4+AbiB=$lhl>J zHlhCOpk`jB9C8{^MhM%Hk+w%#K7W46m8HfRW4f7(Yo9y^Db20m;9RN%$2YqnoQqj% zGJKS`IOMbdew4guy)K*PJuf|K_Qtc#hK1pc8mDJFZP}RfuV_{EU}UcX4dfO-s-}$n z4^zqAQZaS}HD1Q%lC|ADyjF}Fk^M)<x-&0+EkC=XDcCOE|LrAC? zb!Q5_|!H%tH^qEc{ zUjluZ6bmNq>ANFVtzJEE=1kR*%VsQEq;(K%phDk?Ks#S~|Cen}+6<$!9ff%27>Bm~ zUEjIz)kqkD@mvK5dYCsxgPN|_kkeSgL4aB_wVe2%(7B3%LKiPB^PVnC-8ZMD%EY4p z|0PXNZ>PtGgM_>mU_J3)qgFiSGoiLzPuauwL9hfuqwtj+f4uquPlC#&M}N;{%eE^& zn7T_$Oqx7>dT;?my^0m_x9Aluert;^I{@z>Ic|e57M&u?a9y7~sqU?!f;MHGp5Dc+ z_b^+i$l)7JG5wn<+1wXD7wUz$T`y^Ik43r7MWtG6|0mic6oZx>SQU1D^_m zYsj7H*UrDbVZJ{uHg<=%K3(4ow`I$S*FBcIG#!<_e~3^OoWn;3kbz48~Z7JztXUonp%|(NpNr15>_tQ;J&Q+Gw0v z*d%ZUP-rce4+{gq7Nbu@9Xce~)&F>iNY=JoxA)(UQgLEZ(yF<`D9^x<3(Iom>purI z5KE}@?(GB(h`D2ZGCn>$`l6DcNW;7pKJx7%%3tFnnG8N!IQi-1#~f{_F~E`I!<<-y zbAM~gn;YMbIHxxR-}MROB%T!aaxZY ztEdI<)*E5UsmMl#k=s*d zx8$w&{MF$zMRblVUr%_^R%Y92{53O|xFcqvLaVH*N{|J=sr4`W_NtPyLZrpqt?`ZP z*LT>2^5@i9#VH)YqTecX8&pj#`XNlaq;v^64fHIQfDhwNWFwl!F3;1<)(oK*rIxum zY=()ou<^y2if3nGxAUqP*#TfPvp-=by1~PwJb1<4g2)B==9-LOop0i17vAoHCcPg^ zn2ZPUZYlP2m$;j6X^r35un>sK_zbE6PL(yG27DY6Qbc=mSp^JeEb{amOnwa{(Vb{t?1G?NyZQy318L6eg4xWMyeM;Q>3)w9Xw+ z)-%W@;~`-^iy(u-;$<$EIFeZrJnkbRitg=JI9m9hT7b|#7|qjF-+HuU<;tIUCVZ=Z z^+NC&c#0MJ2HqtHx$erN-<{I$KG?9cq3(p>oaU6`b}xiU6X^_eNOWH5sk7pm3GVYA zX0>vq6H7jlRZmafxDcy7m?qZUz<_vbECU{A6A51#%Eq-7Bv5L>OtIG&1$fdkOf560 zS)2#C_B5jAB8wZ)?NUfN=nI>q(87S*Qk8HNO}5m%28U*nT)_+oCuH@q6x$js&=}q$ zf`XNa#o|I-6NrTuD?_UA(ZKE1Aibj??0EPPW0OTTubaqY+;%>xNs}jU`u1r7wxR?v zFc}nEstTRk?jtWm>s|2)Th$#6%rtN1bbuoEC658VLZV<`p8xDS;gn&AZiD~fl+kt~ zS?)ZInN-<|K~d~c2saBP<6sOETtI<=QkrX2T+_}%E`-TB;zOZA8~Xe?D)Ks51BT9c zjR5WE<@rRk$Bx~EcQb>Oei(}hxog4gfq-Tg6h+?K_VXq0RUex@_cKriC=eP$=@CGM*0)ZgZJG6mDxx#lZY~MW~{<-qx3A+v*0)PuEPoY*D z;2Yp*<=`Mt*Y{LBevfK1xdLsgzlx8NFJz@x$mDE-nR0Pp2(dfIUr#b4}#}ofk^5GnfD~!ji(S zC_3h=n!#6h?Av#3_O;n8$-{q0P%rR(SXg8NA-J{`E0uo*eZh7{__e{2pU6obg<)z=vkP}QNTHbS#t*z&Z6@e$;%{#_bKniZ= zIjXUot95&1yL`H=>AuH<<zeaENokh}Tqr?ykK17`P8GKN==;T?twDfu> zx%P$=ynbKmCzEUU#TRd&ZWMm&WWE!G^)@42*jhvmosdABMuM6&sAQYoEDxqINUyKb zw{GrIO;iNxhqwHKJ8S11SzkWCG6Q8IiW04QDk;shx5seA>>xs%5=5T&PE1O0u>2dP*UMZN4-qpO-{FhAac#n>R+HZ~WyPSjZ(Psh{^e?JxG;Sh*Wr{5ha zpj;%Pf7nAUs>>bRuDT7%%hS^7-h&6C9=ra{&u3%_6in*}jxnHo+@=9i*e9<8Tw5@Z zEh+5gBBP*&S6A%T|7Q0U#L-R~wHM0oJ$cg8j8E-uZZ0}BtVg^XRpONU_uu=g2u;QO z?;Be5hYrOql1U}T_D9_r!hVaWAi@j%=t^d5xH66R21uzg81LyeBE)xRAXR|O;rEHj&>bOeS#YUt12p* zw$5!gZ;TBF{Wozt*+wx__t1ZB{NB`5lLf|@iy=$;1E5opH9A60RVItG?>p}Eo zI+QL+GOD>w$cm3QdOus#r~P>2l{Z4u!u_CdIa+@U?-3C(X+U%@7s4h*@h;usX69I6 zl{g`AAFH-@Dpt(ywMM=Jn`7Ze#-@nVx^N!FcEb2CaGSJ{PHBRSB!!c0)6nhwLu&s{ z39Biebz29$>{`(m52J;BU0*X{?A5jgLZ1bZ#R-e+6fut~cWfL!I^=X_3O-v|T5_i4 zq4@;`T^hQj`%p0$9hf&~j@%$Fib7{g{A|9lin)n^^sc7nrjPyR0cD1E$xf=m@|lp| zJI9=7I5*++>A*3qkvSEd8>~_M4VU~5F1Vj3OMwG$mtRnw^{AlV~9FG+6BHbson+tI!xO#1Qmx*h+ltc9N%EPxA2}v^rZ@k56N~2j7EvGm+lasJ$!8zVnXL-aq)t>*n`(%|+<+e{wILwc@Czco z7%kGxjCE{0^sTUnwLYA`H0LQhr363Q^s5{8=r?T7%g(Okd-hIXfM}hngRdK2j)lJk zAzVU25egktk{g_}7wNXFQB9vgLfg3U8_Wi!1BMg=s4j1D#hs4DX=9S^XN^&bf8l!vQJ1_j&aLKi%$yV&Wh(yp>5EUELuODUri}cKxv! zgc$U2-4|624Z}YpTsg5PGBPsu@1JE7dd6Z?smW{x%TJsL?K7c}(hybk@QF{E<%&#i z?C><_ND#{*%ow;EiOaG(Yasze1Odd{<>deFBN02IK;9IS0+<=UqI=HL>mUbAl1(>c zJte^L9Sm9wfcbdgKrR?W3$*{YZyUY5d;zw9y=-`WtE#+QrYVrHKuy|W_Tq{IV_H^w z^sV-M>>;P-Q2JZ#R6ke!pgwziq<@x(fS+Wu7H(IJQFfyoZhFft>McD(5Gdx3``NO@8oRlc)xYv<244 zeiO<*#9CU0-TO__xp?;MUH9P>jR@1aI<@o^jTgDO`#Tz|KcWdgbLLD_cP9{hy0rK+ ztNRcT2;@H~E|VRFvJYml==$OgTmq2Us*ruV!@`o{<5^j+c4Zg1${T9cYZ>j`J_L1@ zM#~OMG#{JM_F29(s(~zzt&OL-OR2qN<{V0)KE7iK7n=2o=$ky2FL$uF_gJ&$H|@MY z1yxp3!=h?H9;jq8wU!k)uNG%c{&0SJO!pIEG)A*-{CyWI1)&eQ)#*i?6E=}cq=nEJ zjlJKH^;;IS3sRZC{yKX6I3vT>G=q`V44QUO{ti-LJZ{|QAE)>o7-(b5yPhlnVDND- z;7D+qK%TvuHve&VY6B!1xv3K^w=wHG4)Ph4fRKw*&jFiTVGZ8Z~r;~px)UbPFOVfJ$eYv=#_FVp>tZe9kf zrS+DIKjuT1Qwmzoe9CXvv^z)Mj~|g?xpFbAWM;3vqSNcMlC~+OyP9&S?7Rm?o0XDw+#`KA{xh6Oeq+(;p6-VmkAL; z;=sReD@kC7h_Q6;fU$^!guzKq*{*}Ly_$Jh#a+c(a%x4x|Jp;RkCtfrWSYfBUR?W+ z57+1nctG(Xi7t8d%5rH0!vlDQ_UxG`7$RD>PobgPd*LFGei5XW zKw`{g)agNL#U(gq{eYdLzVtKg6ws($cW| zkmXvS%B%2QFoYH2b$*P<-So4H+v~pR+ku@C`V9+rTHp!i+@~QZOiuEm>7KSj;+5o7 z%jrHI7~HN{@$&LtZzr6RXTd20w#lPo+1?)DUeuxk=7L6@rmtn7Yj~&L)`?)7Z&zT+ z&S(4R+1T-6R$G_CuTnR9Gy6(q}w;}^C3i*)qnxt``vU{knkS7+}m9MW=di#IW+ zVS~S*&shKSdj}`0Y10J0kWYgAo#I6e&lg~v85&yyE)QzP^hT=oI9x5NA2N;@xl4>| z-u#Sh<0TJp_P{@6p$`QOduNbIY?#%iEP4}S*Xj;O9iV%@t9c}6o5rgm2g;8PGaqqI zfZ`O$ct{wqyOiUMdiTwid5LUZ*i4G3sO-82`&RNU&OF1^FJ&+z5q17D3SpT^VQ`H9TEYUsGS4?12D_7>GXkHFUa-=9V?% z%xrL2kSjVe@OJr$!V=>WCSeIOm5$wmud`i>BdZ^N@ZiYx?`+%hvu`8h?iks3AcgQ& zC`7$KP90r(+|Li-H_&@ShH%YFgw0zv)2mu5a=JvWQ)l4G{6v1xOEhReJ+#|@|DC_t zDvce!eqR!A-dywLGldCm6gz}1?Y<2jq(q|9li5p^L}kH-d!f;yx{ihnqmtV8qh;`m zpZzN2FJ8OW?n4sMx)^7E1?6|mzgR9q~z5#^d1V!paRGRJ~l#R z%KD3k*f+j2IW2z}Dh(nZ2>~%5%1ny17RO1QL}P0qx!9mNEvEL`A3;9@le8-O_BV;d z6sr8a;$_*x%lM>j_=O4_T~5xT^YU8!zPBv&S-e8F!o+f>ifu=I#~Y%`z9u5F#-4({ z$e;_iwz_G*+P(W4j$gx@tRS7DPWQBCci(ITHXr6_K|;msv-_(A!4AzD=hH${eA}F( z8ns`y;x$RNu&ZmIvwJQ7yE>WJ~wW(m+6qR70-p9^wEbz{cNvjn z0cf)K)0xaDTC@2k#%QNtQEXODXjLtr=J-Q(T=c}O+}tk5y<=NOaHEZe3*aG_X6@30 z%uFsm#{Et9t4EYzYT9PAyfmw2gfjp_kU_`q%eaHTzx)9D0QX20#0>{~uooh~kKh;p z=5o#c-G>rp8plt~rvYV#1desv$tlwQigxB`#ELHkjo&lqov4}H|iEoKD2 zdpC36Mpr;J_3j=((^No0#|{v9_%O4Cg?xm!C3ozactPZ=3I90BR^)y@(CUupX`i{8 zs_HMyF}V%(56W|BTHhZylI&DbUAGL zEl;LoBK;CzQ6Rj3CNtRgne-sm*4XGhT0(skrxfgD&~!- zK%)LB=)f5X4hnj7V$8Mcikm8YMDIy)HGqu81FtKM~?=R)0ARP z-42GAd^dA}Aei&3pt)3%V0u~WH_EAopyFlj-i#A=tny3Z9GwoJ5o=4>7>U&jT^tEnI!p zTZ$C%3fH}K&muCJiDCmRW7Uz^QNqnNuXy+F{<9V20-_DFRZ=zokn!uQ+MNy1`G}cb zGORf=ckf9)gbFhX(PKxBbg3rYhxfLpq<#>g9e(8--zjt^2uRKwMhMX;SgfZZ7r2M% z$FU^&mVv+B`b$yK(VvJT`M=uQ0H^e_3m*1KmG?`AlzGn#$;m^+8IC+L957O1X<0Yi zRd62_76UR!PV(jpX9Q}1l$7xO%*cIVVXJZ=4NINEe{YP(Y#>L5ruamzfHgoU%%n6J^kIc zgw-E>!qP(cOsK_M-cGl@2TLB{@o8UAD@=r^X^H%%rh8-*6K+XKb7#-4s;NPhK7Mr~ z%oI13R}JgTg9vM8mJVXPxI;=0krpf#L4XuXib2#w1qVIy>g7uu{4=M?d}pnF#f4q` zioeR}cC@8HhN9uzk$?{AD6B^co36adWz6aTD^h~A5vO_`=s<41nsy5(3D24jIxXJq zslxacH37`w_FEl<;YSU#J)IiwvLWpt^SyR~<6Sdl;tkEE812##Tg{~5Mv-IuN|02* z70{+|B;plb+(nTEFV^dqsy4FmCwHm#wWQSa`&QBk?l`d{0y$*{Zv6v`1w9=+#Wgo* zEkem%Z5spEvR2M}j@JCs1S-qUpQ)Dl*r?25E<#RYnS&t@;&!zDvY$CZCq}L8EvZG= zGeg#T1G-1%>w@-E=^CA+LshY2I#_`q3VODJxR&9XB`Yl?9`QI8zSpA!J$<^U;jKXgaM9wrUR5kLk%8^LXjxFjqL`-+L@Rv0_UjfGf8;@ zlmyk5WD<#f%9Qu?eXdoIV$ba^3gg+um-d2gV@oVow37pk-^DFZ7YGWl;cZ-B*e%{V zatzc1J51Y-WAIv4Ums@jz5Zs|k8cezCZ^MPy%Y=zh6PkcNFpUct``W;_HKBy< zkxhUr2-nAs7||@R{#qIn9lgq(uOG-rSOg6NNW|sA5FC;K^h$`T4h*e717U{bD%BrU3R2hbh=__+UkI`s9DFrzJd3+}^%E#s z(<$B@Nq);G#LWQPfWueMpJxh*eeF9HyRjQ-sHUbXk-p!pS%^C*!s}t4jJ)xCA>T0auiGIq@KBAX z(rCE&vPN~xYG;!qgmkok==%;FJ{+VBib{+SU`nz&h5uD&D| z1LVNq{xFe4MbOK65T`64?*?j(a!s)*n+#!A3cnp;YY*cing@{P-5xs z-C4l`yep~Y1d=lI9z9Cm*btqTwgvAT1#|PMu|ER>1MYWNAJ=)aK|=+=1pcAX{VoXEDNqYjJUR5P{Q55E+G84oX#^1@9WiF>lEr^-ouq zBx0=g8-E1KPpAR*aT61dBV9r8FF5P(=(qr$P}M1cwt?zt{{EGW6Jo8arY8T~gP#Gg z;1DliheGcUJR?APIg_USV#x)8md|lESo3o`LVD0(9bvHHURjxjAEJF>X9S-%pI3@O zJ;@k$b$bD@3AF-Mg;6+GgJfFFyoDv86~iXad`fi;ZwjZowg-XGsA!@GYa?M0jOs7Y?P~xV0$lO z7Hz55T~R>e@48lXhnryrzMtRXyes~7niXLuA|v;7(!33F{GrQ`Jo$e=o=H9H&U2+;-sz+>g5_~V9Fxudh5cxyq5SAhLZ z`d?zt&2a@)SQs3Udl7~NkVQ+EQZLjY1EkpI$~p!tK3=N+Y2f%kH@b|LTG`e-cG@wR zB^a@y9kmg`Ok8_*ZGU6W#+dFEr}bzc>qrN@6p9#9iF1IB=jhaggovDqHoY&7`3u)N z{HGS6`npgpkZ5sdeleYi^P~6N*5(QR%E()UZFyERfjjvXS z=QK4puivntvo@R26#eXZzc^DEnz>&u0bZfFUv;TZ-@eFLh72COTa4;tqmR!tv`n|Z zySkI769(T%NT_hU7mkK--`w~cHxv-CCZ!2Dyi%Z32M|4?4Y~GxUELy8<1-lGVlrbj z6Qf#;ZF7GPq5tx2b0w}$@Hg^*{(#ZRtg30C_x(o;t?waiZjj;VM1{*aYQ}JV>v&79 z?yq9xb-bmBGWrYSrE_M^4Dh&_zK41XO8aYBM4gv$Bqfp%_g=;uo`*NdsleVQKG~UK z1?_=8y8MDE+}5Ta2V*Z^j?djOl|38#_wCyk+ss*p-)Kb@2w8)XW`2cNW7OSOtCJi< zg#lY0q+<;CCifV<-H~W(>Ua$aE*iCyd&zPX=*3gq0C4$mfBn-CQ5bbfuiG{SP~KHm zZ*EK}*lVCE<6OGGARA^isru84!WBlU{fPf)cfW3IxHoj7@A7Bsb`v4TYo%N?!vq+1~mXEs)g$d?&;Su_$R^HnBbA!jm{kr09I^$Nk z6C3S%1Pm0v^gwuQ?$}AT!shYvjT2z~x>%;uXa^K7*LFhNh?ick%VLpSc0re8tpjND z|92Vce>oOyaQ2DyJhnDm**}mU?f!VVwh3lDldeq^RI3G_XRi`B1M)z9QrH@EL=uvd z&o`X1=ilbcIeX>G>-OZ$Z?IXM61f43zO&EdBKlR}hXt%a(kin{nkSTJ-ng7^AwDkf zGmt%Xp|QEu{lxL(d^HRnF|z1IIY=Na0InnWQi{#j!7|3l=_fU}xn2HV$xK1+!G6~p z=EFRTjquUw9ctA_=!zh@8>8#vpe=x&%IoXj_`HOTL!PsqV&ddwCYLBr7-qZuX^)FS zaL(9`pVZH8ZY{bkZdda*-7R}Irs&zTt(c}?NHpA{;VScrU=Aeav2-aBcO#sKNQ)uW z$iz;{N&LaL+{@i=#BA&Q_%1z*)BO1#g_gek7YYT@DSC&;&8gtHno_f$Vc5?L8$8uq zGIbFzE|T{`(}7kDg@ENdW-!PYcS7x6uH_iQhB66MA+9OIfvhbdM9HsrnPIN|i(mE` z%E;ZN;_-R2wr(ANHV;eE;Qg>GUsSYH*HurE3KKtGd6ZKX{UW2iV|Q4yTRVp?r)j6c3*#5%fHU5%OzYQ0`8axUQTMC|v{LJn+}QXgg!@HNlI_8Hh73mzA<|cpJYcWn@E2bvqAYv!=FMU^xAO4(rCq-l*dczVEzym6jN_&hSyA!a_o_qYN=}j1CXF=hkoR zx`EUiBS(6}Sc0>o@|vIGbqWuaBlDpB_$eU3uT4!^m+n#VVg}sK8|G#5YY8XH|M1n7 z;vK`R1p}K}LNlegTfYx7b=xUZBqG(meUlHpuBL#d#^1PhZGfjMrn)J@c%vZAU}D7i zPEij8>KxM6@856DI!&n*#pb7*V*?tKykGavnY4lWf=VZ9OXn>;{*1u$ra%u^df++t ze3x7Dt^-Xl{YRo)9${=XlK_u5-sy`dD+)7m5g{;~tTP{bHrstTvv3ss+f5NyF)wpc z*vl*x+Xw2S8g1KxVlc{Rk!-{CC8%=J{642!xW51J0a}_Wc&39x*V~l;e8G`DZ9#=- zRL!0eqPQFSk5239>wBV0$R8YnGe#1cR#F)M!FIvnLx*OnBw;QWnH@?2M-%UHu3qrL zn@!VG2y=_`qxxd9XND|D{1gc!c8Uif2^+Vq)0o-o1dT|!Ut7R z!_4_>PiIKBE_WALprN|zaJ{oh7tXCvI3Vrzi>~SKE;uxMb?!E5RMO-FI%H`ru7Ny( zovI>UlLn+?#)$qkIA{*h)$QU3a5Yl0>)``#*v}t7uoB^68)>Yh)q>JQygk*O^?A)* zna@n#!~4^h)Y8evEyP9*%w_*NysA~augAx4Uk!!DWx%`1A_cb>qSM5Q?syAo%9KW< zmfc|?z>H_H-J!gNo1k9<(w{SH7RZ&Qo!ui=`vi!YZ|y#kPdXreH5)_egQ6;%@&rM~ zq|>AUKtCSQ(ft{-?)!#Dm?g%KBD=37rJ020(^hyfV91bh$U4wdxv3h&=>O#a zi1b%whq%5D6bJfV?QNT+;mni%@yoWbCG5|Ca-wb#i2Onl-Y>q_niiQfHc0 z$|4mjzRvDiEj2Ozl`k>3fDQu=r-Gdwv**gmljRw|+e4SI>r_~Ozz37F2n|-ygf`nX_iGTDC+ZZovu6 zOfpzL_G}1K)%05+1pt@jBn1G0o+>I-DnCC~>pQ22J0GpjJYif)G3?*FSFcW83|L)I z_-J^>pGxUXdz}%j;`s~WjT<&x#kgd}itKK}k}5P0L{hXBKj~d5B#?+Ad-dvxBbflW zF|2vLyxbLS63PYYPV9otJsVnmXJI*lOVKHi`pjk-Eu1=$s9gcK1)R`-&hz1xhnX}* zS&rI$tbTc3u>^%60u?|Hh!uQN9~2anQ805xxZ&e`r;E(TnD34V+q;+0`L(6x?jYJ` zLMZOxzt>Lj5s@y~^gS25f#Kl5rZyK)Y+{|I{(c8X8W}D7Fp*z|=E-~W zQ!`MQ7E9!t23Q+hVcv)lau8YVapP{^x^---E4QL0hl+;}Q?MLkhMdowlFIorv-rzx zVu+wO<_h~THuOc|pLqtE{Zc-4vL5dcEd_)2j;wH_yMJ-FZ-x28>2B_nxbz>;{o;Q8 zrWqb#bfs6&n7gY3xv&ix2~5SaDjR1D=W5=ZGt0foU*uGH(VjPv8+$x?{Mhl3H{uOZ z{hQPyX2pWtNKtVyavo;jkrM(&gE{j3lTO?rh8S${wRC63ALHWbX0E7 zpFdm|3ts`M1>n)6JLG9cOi7h#5kRTrxxMo8J8o{1imhgHsA(`gN54WQm$6%03WQjj z&pp^~ZmF^!7~gX_a(Y3v51X`Vu*^nH9GS?y&!0o99h@pNeQr{>r)Vy#z~=4~SGFc= zVPw6W1`fF~ZeDl1Dp(l$k|GFo8_asa-jTX(E#Bko5aQg#YdgnYIK8mo$RR;>iXKvh zB(Hum#jvTdu{Hg2QZCnp2Gri7mt+~EILOD)n`N=VFVhPrYcNyd^b0N+3h`qqpomKu-BRQSrl3I~Z;eii1i!lvPLMK<> zI)?Hivq-4^uWt5{=a(3F}kw%=zaYKw@2#fEn@R*qvW$1w$0hiy-E;Z0X+9%)Q%#yBBJDWc2(Kuq3`sNL$9PFkCC;6lNI@o`g z<;*!O+Xm!l%08D)kCKg zNm6PRG|VE+yU z@JPj!vz@r+X^^}5N9yQm!~u{pIP z#4VuP6PE!YbEU~QEXIb+QMzn2ckGS+dU}#xRvmi1?R!yj&}7}@&)fVzHolu?tTIxu z{9Chq>C%m5I^k;;Qd5*Iis4(0nh~5J(gIUmSAS<0bNHd^ox3k_bCcZZ5ei-&KPHqU zG*AO4XoWZy1zDTHcc7-2NqdH$n&bg~$9gJ+p1s5WLZ8n+(Cnp|DQMvbJ@oSdSw_K_ zFfzNPs;+K(NBcO9B2fRA;IDiec{%K{V!f9pHkK=b>BA^G`TzSTr~{AkGr>6+ie~5T z=SqVxpyxw}J5hvPBH2SK-ZV#OS@_P8X>a){&tw1TZKXa=lC)jOJ&az45Fz)ZaOK(f|8xT4Dtn26AIzDaU z&%x$3Of#Em>*`J|G#+!%LbJU2`xZ0*Eq#>2^K;*HJX+qKs_kG@4HL++RXEOwo7c7y zv>=X}OzQ@YdR)*+In4TJ_@OwBVs+a^V)p<&tic)^z2NEFe)iS6f!7O@CSN-?e2)X@ zsjM9Cy+~hXwwj!Skpe{@9U++fzTyik5luJkvwiwMPaSmSWn_Aa<-j+@+M-0|4FFrE zr3)wTlaAY-vd^MS0)_P-{Ccao7A7O2S+ zxyeoFEhBSx+56Y2<)jL%j9U|!N*y(5h%h&O>~D4c_Z+q38F{VAjY@L9^TeUG0JYT)Cj|A6uJ&lgqRaCKjL zgffB;o{yBjb6~mWz;iSdb{7iJE3NtbeG8NTFAwNGue-vQ0q37aeq_Y3Z)b|DeoUHV zxni`*-ioPy%NA>^bQ4UX7A{0abo9Uhh=m!>&cZ;Mnp!IQ_Z9hq1dc+Yr4;@SX!h>G zpNUu|!H!@z#9mdPVNNp-W+Q;Mkuz}4DvRrmvcm)C*cZ>ASLTz)1Y?TBho@|qQ~qSw zxj_9x=%;xWyQW$5=j+u~?8&FPR6|zz_uo-WUC(|74#jXcN`DORQ&YN65X%P0XnBJK zunodlPo>-1{R#mV;Zadx&1=?_BofG%P^q~8=5LM34VoseBNjorJ%9Bo^yl4aLGu_$ zq6nPLB0Qc=z8t7iA~E&tX1mDcyi)|V{O*KRxeqfq!jFZ70R102n>&1|weCSUCP zpE#Pa2T^NW)au2HbKHkxc|m%Lvdg`*J9BbZ>L8{pE>_c*fhmGCm~E=<*Sq(5MxCqI z?FbBP+{TU#65hmdX{-&!aBFQR3KX-L>1Ow;no^uUAw|IDv(EbmdU~%-G@eHuj)MDV znriLZ?{okUbl{fQmPSEEg~+izR1oU_4^ht<|rR*GByEav?7sCr#q!`RD= z&zE~#+T2Cv)Zl}YX2LD!;$5dKc>rs!+)-uJlmS+!X4FD*iSg`3 z?T!kDkU78y7hVPj8e^MVTJRelG(k)ulQI$fs-S>5lTgiFi0!2_SYNj~W%&~wXHci7 zY}v*)OQgjo_8L!YD(63}EvpO}+`g9nquUFOQntsFVh7(#?TXc zncM0-DJbaC1K-HY*RLP&tbF&*`oa@Np5U^)mNrn_vvZ}=Lu0(3RJ=bTB5U_jf=bsw z-ybc)k~|3(w+z7c(84m?g_VrryYx?tD&+ZpA##g%49?<3|4WL#yAGS*3}`W^l)DqdmiamHlqdt!eHW zSo`VI{jsI6W@`npDU=`{DQOsf#+^Ac!ZZBdtyFT5>Eo4bAjQ+af$a#LcU)mgt^2Pn zX67T=OaGQ{X(%Y>!+-waLiPTg(7L6a;Ho4cT&2i%PZVj<{Q#?9y=oAs$?4u9rUIs4 zTZ#O%B3R=O%bSu%>%>9-vk?4!ef^*yxe|7^jEgd(@CF9t$LU81y;{-~XM?L=ETd0* zLP1Bm%e{YJXcV+21{Ki^50El<%KR^nHmbn^QiLuxe$z7tj{2l&a_@qCP%pOH)@h|t z20BtIb81U|mj;#)snFAz&8g9r4m zzk~qb-=)__3?I(mNr`82bo4?2d!fo#OBC$zfDrIgV7hag7Iog!ZSaEVIZ8ag@)BtP z*J^f_nf85b$s(jM4v#H;5jBM%OJfZp-#;b~9v&V@3sCJcfxvEikCtR!r^b`?i}H@x zN~hkwP4qi==1h*Ok@b5v6F6#$uh2Qr^odTPHx2d1Hs1D35j4|-Yl_kt%a&cNI7yFi zM>MP9y=V|{NwHncm;jvvhG6u9=q0u=N6_&7aspieBr+xTLH%QhCQ%(iieGF_ zhR4w!u`Tu1t(lu$ua|I$prrV_JOoYCy0^O~^=lk_qH=;T9%m_l2eZr%`*vG1psLB2 z2=esxReppc0t7fgRI%yA?#z-B2bS&ud%Tq$d>IgdewhK1q1u$d00ABeyjEjE2Ahq{4#<#WZ420OmD|7mrxm zZf#L{-ZQ+up}`PjW^E-~?H(Fts8?@aDa!@GI%o-}Z<63<%vu!Hfom}^x_coz=+nme z+#S>Y4d|xm)t-Jv@x>xpBp|Kv&@AHl~hy?PFL#LlVPRdv$nH^^A>j9jKgw{ zh}zA~%}obuk21PH!=p1XzVTAVx2Gi~gLQR}U;|J0O()MuV*(k4ukBmK4l!2-_i{&3 zF-CD6CGLn3v2k%x+r9fz|APk(KqP7p9h%Be(~4?pRqC}i z-!1luEo4>aK%>lii&Wfpcd)!4jgF$)5PK9B<$EEnCg0?(ddL6GN+B~jv z@hhm~A5ZO9bdeIQDs; zZ2M;J1vgsb=JfZu?zZP2ElEO~gnSjKW}#Ny z6ch&9f7BT?2s^L+9>ri^#IKB>pHe@6Ugtb(;X+~H6M@T~8yhkG2g!oDB?AqR5~zcM z{oqPKl`4aLFAJhqY^`c<2}@a+K}5LBgUS){B}#8?Y1^+~d6VZ$#S2}Av0Lnp5D*x} zMsopDKv)C#Z;gCAY1;ObCf_t}E5OyZyJmQO-7oq4tIq)2#zD?!fv9Y(t#R9QFZMt> zf^^~cD<#D0Bjx6qL*IVxwBLHnCwD+Jzvh6^zT8V zpt=VQAO4w8_;efql(mQn7bwBDj9j+_)LE0_p1gdyf+ZAXs%hg6w%?xx+N+VT@HvgQrIA{jjX=ih(tCNRg?EH?o#Yevi<(SSjNmXPS)>Pkr0?olk8 zxXucgsSt`{2~}Uti2)znn;uw7B-Vb{G6#10;I11}^dfHx79;x!_epXts>7y)Z`Ck< zz=$SWmxBPejMdj|y0#0%yL<3@8m@02Z$VS$R4_HTZw}g+Pm5d6YCvMD@z}9U(xoUbni8mK^4+#rGxUf%I#V4Yn5pR& z_!BTNiuJeo9qtD!BxRV?`~ z(&E5^d@Jdw+H`3sc*->H$n>DaqD0Gv>JH}z_6>VSqZ;+jBVoSAwl1sbgJH_pXZoq* z&khy?ovI_Qq`5&I`W25c_rph z%jEVTvEzH}{7dHa5J19|f6* z&7Z8+19hJMPUj?(;$3%Sv0j1lLA9@~lhAAd4WC!Am)Tx4SxK%bdM=ed4T|pbA{ix| zzbKKP&MoAAVcmY>j*EeejO?(<6DJ5uk9kcfSBk*;@CAPS7~;N&A)6!bS1e!7_QaLT zmjf@Q!S5BP{=hMyu&xDy3+v-59l_6QI1{TqGWz^`_6*aO)zx2+xRPGLuc3{=r4>(1 zUbOBzn4ppbWZq>?t5zv57K-^>&QCs=pw~{ z-}`K?A@*7Ov3OWpG1VF+<5SO#2keko(sR=ef-Vv$L9L{cMU0A^b}#5R$VE%0YWoPY zMqks&X4=EZJoml(r+CcDRDBj?-Emx$V3!uU`~m^VDcLhC*u+gCvD}g-2nXJcFm&GI z?!?D?q575$(8M21>jvPaa}C_Ia=$Zgk%M2RHR1)HH3eSd!9XyM*-*&Tay%uo0m z19xibX2{{5=2kkAU7EW{AkuKIZRox1@9nTN6z?$wM_Ot#Qvn`aB|W?Cq;EBmJYeJr zb1?j1v{+1f`Qk<|@AMEQ3UEfeod8?> kUk>kojdT2e{6LF;)QvTfJC5Zk$?%wLWjFDv#5M500f{U7sQ>@~ literal 0 HcmV?d00001