From ab0cbebefca52f902c973c026d6e6f7d852c6680 Mon Sep 17 00:00:00 2001 From: Dongho Kim Date: Mon, 2 Dec 2024 02:09:27 +0900 Subject: [PATCH] solved easy --- .../__pycache__/pwn_utils.cpython-312.pyc | Bin 0 -> 1476 bytes week05/easy/client.py | 89 ++++++++++++- week05/easy/no_test.py | 79 ----------- week05/easy/pwn_utils.py | 27 ++++ week05/easy/server.py | 1 + week05/easy/test.py | 55 -------- week05/hard/client.py | 21 +++ week05/hard/description/description.pdf | Bin 0 -> 128630 bytes week05/hard/server.py | 124 ++++++++++++++++++ 9 files changed, 257 insertions(+), 139 deletions(-) create mode 100644 week05/easy/__pycache__/pwn_utils.cpython-312.pyc delete mode 100644 week05/easy/no_test.py create mode 100644 week05/easy/pwn_utils.py delete mode 100644 week05/easy/test.py create mode 100644 week05/hard/client.py create mode 100644 week05/hard/description/description.pdf create mode 100644 week05/hard/server.py diff --git a/week05/easy/__pycache__/pwn_utils.cpython-312.pyc b/week05/easy/__pycache__/pwn_utils.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..0346b95af9c66d679a49aeb9e0a0474b9e7ad8e7 GIT binary patch literal 1476 zcmZvcO>7%g5Xa~3di~W+XktSgDXL#73UR4wK8%o(v{EP$2OtvaslKdMyRXiM^{#ol zmTP0Aidu*R5&{GcR2AGP3P>EdfVkw$#ZiEy3pY5x&Bc)@5eMe2y-tZ3X=mrn`_Jsi z@Av%u#6%j<-ud9g%4ZV5uVN8dY!nO@FzA8_Cb6Lm5|RCY}~KG9br+k8#wH1GQfv&SAJ7b;C0d_8@N7hk$yutzH`*;GCTusKYRxKc%*p* zxJ=**G)V)l$ycC3zLXoJAhkMaI6H>pl-%VG2?cdJx) zsO~i#Bivzp+~FmwY8f8&*BN!WRk0l14kel>)ja(w*4G_F^wn+4Z;lJs3b7z5J|l!d z++>DpvOw{CZqNSJaL{UKs;zGrE5EDvIoD!vn=ZfoYl@(3bsjRz2hxr~eiVenI zdHm@j!%2&^hNFdtbiURMCPj;*ky_c|&VRGw$Msgx{SNo8Ltl-ha{IISPx2q-cW2M; zWzN3!+OU)JH0_x zPLNJ!8M=iiFGU1QBsk#(1ru1W8SE^eWS|AgyUt*R0zj zRyFO_x^9nlR8O3hQDy$RYw`*F)aNij4_p;auoyZKcv*BE*jJ|RN+~5bkRd)DMm!VA zjEH?qfB;B9IQSY}7yL26CTYV>xFv0kG6dR$pGV057g|&D$GEm3s=0|b@|L`jz}Cks zf;>_ZXevzwflfw31bUL(KTqsPim}jg4W5^ zaMLx6I_Jz>q^(4lS)_*~-8yy2t=lGbT%UT(F-M*7dKk8aw?!P5Qsb862TFrmJ_}^T zH;6Mwu*_39H{wfJFfr6?p@@$V4o@mb;aplcAs2r;)A)EAy6bR|1SQ>5=Qdy7ywpq6 zA7ZEPB(i-;PL=l6**!JCqvk(-^oujM^{x5axv!>sw6sT;cIeVBz3`)Yv9Cb#!FvaB zI5{i0Ed8QR^`@WvNqtJtSvvHl@Eh-)TLIXH?8=P1{SZN4K>p+)5ngo59a1Ew;$o~J pEdsB@9i~JNW1r6Q|I&4kI&oKE{`~=C}1#|~ bytes: + gap_size = block_size - (len(message) % block_size) + return message + bytes([gap_size] * gap_size) + +def calc_hmac(key: bytes, message: bytes ) -> bytes: + block_size = 64 + if len(key) > block_size: + key = hashlib.sha256(key).digest() + if len(key) < block_size: + key += b'\x00' * (block_size - len(key)) + + o_key_pad = bytes([k ^ 0x5C for k in key]) + i_key_pad = bytes([k ^ 0x36 for k in key]) + + inner_hash = hashlib.sha256(i_key_pad + message).digest() + return hashlib.sha256(o_key_pad + inner_hash).digest() + +def calc_cbc_mac( key: bytes, iv: bytes, message: bytes) -> bytes: + message = pkcs7(message) + cipher = AES.new(key, AES.MODE_CBC, iv) + encrypted_message = cipher.encrypt(message) + return encrypted_message[-16:] + +def cmac_padding(message: bytes, block_size: int = 16) -> bytes: + if len(message) % block_size == 0: + return message # Full block, no padding needed + else: + padded_message = message + b'\x80' # Add the 0x80 byte + return padded_message.ljust((len(message) // block_size + 1) * block_size, b'\x00') + +def calc_cmac(key: bytes, message: bytes) -> bytes: + from Crypto.Cipher import AES + + def shift_left(block: bytes) -> bytes: + result = int.from_bytes(block, byteorder="big") << 1 + return (result & ((1 << 128) - 1)).to_bytes(16, byteorder="big") + + const_rb = 0x87 + cipher = AES.new(key, AES.MODE_ECB) + zero_block = b'\x00' * 16 + l_block = cipher.encrypt(zero_block) + + k1 = shift_left(l_block) + if l_block[0] & 0x80: + k1 = (int.from_bytes(k1, byteorder="big") ^ const_rb).to_bytes(16, byteorder="big") + + k2 = shift_left(k1) + if k1[0] & 0x80: + k2 = (int.from_bytes(k2, byteorder="big") ^ const_rb).to_bytes(16, byteorder="big") + + padded_message = cmac_padding(message) + if len(message) % 16 == 0: + last_block = bytes([b ^ k1[i] for i, b in enumerate(padded_message[-16:])]) + else: + last_block = bytes([b ^ k2[i] for i, b in enumerate(padded_message[-16:])]) + + previous_block = zero_block + for i in range(0, len(padded_message) - 16, 16): + block = padded_message[i:i + 16] + previous_block = cipher.encrypt(bytes([b ^ p for b, p in zip(block, previous_block)])) + + cmac_result = cipher.encrypt(bytes([b ^ p for b, p in zip(last_block, previous_block)])) + return cmac_result + +def decode_message(msg): + return binascii.unhexlify(msg) def get_flag(): @@ -12,8 +83,16 @@ def get_flag(): sf = s.makefile('rw') # we use a file abstraction for the sockets message1 = sf.readline().rstrip('\n') - # TODO - + print(message1) + challenge = decode_message(message1) + hmac = base64.b64encode(calc_hmac(KEY, challenge)).decode() + cmac = base64.b64encode(calc_cmac(KEY, challenge)).decode() + cbc_mac = base64.b64encode(calc_cbc_mac(KEY, b'\x00' * 16, challenge)).decode() + answer = f"{hmac};{cbc_mac};{cmac}" + print(f"Calcualted the answer {answer}") + sf.write(f"{answer}\n") + sf.flush() + print(sf.readline().rstrip('\n')) sf.close() s.close() diff --git a/week05/easy/no_test.py b/week05/easy/no_test.py deleted file mode 100644 index 326d68b..0000000 --- a/week05/easy/no_test.py +++ /dev/null @@ -1,79 +0,0 @@ -import random -import binascii -from Crypto.Cipher import AES -from Crypto.Hash import CMAC, HMAC, SHA256 -import hashlib - -KEY = b'1337133713371337' - - -def pkcs7(message: bytes, block_size: int = 16) -> bytes: - gap_size = block_size - (len(message) % block_size) - return message + bytes([gap_size] * gap_size) - - -def calc_cbc_mac(message: bytes, iv: bytes, key: bytes) -> bytes: - cipher = AES.new(key, AES.MODE_CBC, iv) - message = pkcs7(message) - last_block = cipher.encrypt(message)[-16:] - return last_block - -def calc_hmac(message: bytes, key: bytes) -> bytes: - # Create HMAC object with the key and message using SHA-256 - hmac = HMAC.new(KEY, msg=message, digestmod=SHA256) - - # Calculate the HMAC - mac = hmac.hexdigest() - return mac - - - -def calc_cmac(message: bytes, key: bytes) -> bytes: - c = CMAC.new(key, ciphermod=AES) - c.update(message) - return c.digest() - - -def calc_pure_cmac(message: bytes, key: bytes) -> bytes: - def left_shift(k): - """Perform left shift on a byte string with overflow handling""" - result = bytearray(k) - overflow = result[0] & 0x80 - for i in range(len(result)): - result[i] <<= 1 - if i > 0: - result[i] |= (1 if result[i-1] & 0x80 else 0) - - if overflow: - result[-1] ^= 0x87 - - return bytes(result) - - - def xor_bytes(a, b): - """XOR two byte strings""" - return bytes(x ^ y for x, y in zip(a, b)) - - - - - -def check_challenge(challenge: bytes): - return ( - calc_cbc_mac(challenge, b'\x00' * 16, KEY), - calc_cmac(challenge, KEY), - calc_hmac(challenge, KEY) - ) - -def decode_message(msg): - return binascii.unhexlify(msg) - - -def main(): - challenge = "f681e8625406c40419ae7771eac8f8a2eb6a6fcb1fc0396ab8fdca793a27c93a6dafbb" - challenge = decode_message(challenge) - print(check_challenge(challenge)) - - -if __name__ == "__main__": - main() diff --git a/week05/easy/pwn_utils.py b/week05/easy/pwn_utils.py new file mode 100644 index 0000000..a0d1c2f --- /dev/null +++ b/week05/easy/pwn_utils.py @@ -0,0 +1,27 @@ +import asyncio + + +class utils: + @staticmethod + async def read_line_safe(reader): + """ + Simple implementation to read a line from an async reader + Mimics the original read_line_safe functionality + """ + try: + line = await reader.readline() + return line.decode().strip() + except Exception: + return None + + +def log_error(e, client_writer=None): + """ + Basic error logging function + """ + print(f"Error occurred: {e}") + if client_writer: + try: + client_writer.write(f"Error: {str(e)}\n".encode()) + except Exception: + print("Could not send error to client") diff --git a/week05/easy/server.py b/week05/easy/server.py index d2d5e0e..8c127a3 100644 --- a/week05/easy/server.py +++ b/week05/easy/server.py @@ -68,6 +68,7 @@ async def handle_client(client_reader: StreamReader, client_writer: StreamWriter hmac = base64.b64decode(hmac) cbc_mac = base64.b64decode(cbc_mac) cmac = base64.b64decode(cmac) + print(hmac, cbc_mac, cmac) if check_challenge(challenge, hmac, cbc_mac, cmac): client_writer.write(subprocess.check_output('flag')) else: diff --git a/week05/easy/test.py b/week05/easy/test.py deleted file mode 100644 index 4a572c2..0000000 --- a/week05/easy/test.py +++ /dev/null @@ -1,55 +0,0 @@ -import random -import binascii -import base64 -from Crypto.Cipher import AES -from Crypto.Hash import CMAC, HMAC, SHA256 -# Crypto.Hash and hmac modules are forbidden so needs to replace them - -KEY = b'1337133713371337' - - -def pkcs7(message: bytes, block_size: int = 16) -> bytes: - gap_size = block_size - (len(message) % block_size) - return message + bytes([gap_size] * gap_size) - - -def calc_cbc_mac(message: bytes, iv: bytes, key: bytes) -> bytes: - cipher = AES.new(key, AES.MODE_CBC, iv) - message = pkcs7(message) - last_block = cipher.encrypt(message)[-16:] - last_block = base64.b64encode(last_block) - return last_block - -def calc_hmac(message: bytes, key: bytes) -> bytes: - # Create HMAC object with the key and message using SHA-256 - hmac = HMAC.new(KEY, msg=message, digestmod=SHA256) - hmac = base64.b64encode(hmac.digest()) - return hmac - - -def calc_cmac(message: bytes, key: bytes) -> bytes: - c = CMAC.new(key, ciphermod=AES) - c.update(message) - cmac = base64.b64encode(c.digest()) - return cmac - - -def check_challenge(challenge: bytes): - return ( - calc_cbc_mac(challenge, b'\x00' * 16, KEY), - calc_cmac(challenge, KEY), - calc_hmac(challenge, KEY) - ) - -def decode_message(msg): - return binascii.unhexlify(msg) - - -def main(): - challenge = "f681e8625406c40419ae7771eac8f8a2eb6a6fcb1fc0396ab8fdca793a27c93a6dafbb" - challenge = decode_message(challenge) - print(check_challenge(challenge)) - - -if __name__ == "__main__": - main() diff --git a/week05/hard/client.py b/week05/hard/client.py new file mode 100644 index 0000000..8b8039c --- /dev/null +++ b/week05/hard/client.py @@ -0,0 +1,21 @@ +import socket + +# Fill in the right target here +HOST = 'this.is.not.a.valid.domain' # TODO +PORT = 0 # TODO + + +def get_flag(): + s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) + + s.connect((HOST, PORT)) + sf = s.makefile('rw') # we use a file abstraction for the sockets + + # TODO + + sf.close() + s.close() + + +if __name__ == '__main__': + get_flag() diff --git a/week05/hard/description/description.pdf b/week05/hard/description/description.pdf new file mode 100644 index 0000000000000000000000000000000000000000..6903158223d0a3f5d4e21d5096e6e43a394c6b29 GIT binary patch literal 128630 zcma&NLy#_9)T~*yZQHhO^OSAdRi|v*wr$(Ct4`VG+u!ZzzoR2=4{i>2roXEP%^7|*R6?VI>*HY|XDfH)ahn#{^Oy*tQO_zl|_5*)LF zoMm{K?vYJ#E41uVw|WF1cRc=v!zx~n)ozLG{b(dI|84)cqkqW~dGY)LyZ7w#{pkAY zP7H%tqKWKqanx-@MVd@CaV@EYEs|mCT>X3JnRW0;hnMXpdsFwE>~|F{yX`L~-(DBx z*|cvf%gay)wfv6TEyMnq9rxGq5oAM!1P1i!0eq}hN(mV%-4aUO{k<`Kn}Nm;3K|rQ zMn_z>{FS+E^XKv|zk`O?js3b;E~DH9h2L?VxaxdIltWb)lYZOfj(j^X{{37Fr}}!! zu2zEsr(OV&(VjLmJc{3{ms@Q6?=q>)neW(9+=djXOp{#52FnoDiMmvTZr27wn)%hs z8Ef7cCx=LNiiK0YhlArE2*kD9(HjQh(u*o_y;WGw+1)ReI~PK|{g#g*-c9yud4s}g zjW3qB#M5klD{GtH`ludGVn|uWb`CvA86LQZn_y{A94my;;w|vytajYxmpS|i(5~V| z=onxEw=zrlyIam&gUVf*(2M1V4*|DJA~!YEEYt24uOB7et6nR}*RI0eIi1R0%-C8Y zsFmv4w-zd*iA(EKb^SB(eZSK^y~8aCReQ7g-K1?Zb**aI`tFw^b!=xZ=}=cE8zqqV zwqQfIo=RG&bXl50xfs-H7GW$ChLtL^=FSimzNR7)28~qqB9j@icvvyPop+cH^}4`& z*L+um*(?1msNLkAD;zLaW#I?ew*^r+42ad#02edlKKQ7srS*jF1~H*%%&ND#ogjkJ z!n&#UA-Co~>>L%__|Bl|?b8QMBE~_aP

TzDTjzq5h7w$M7M_+_y1*FVYrRU-ZyR^{(ZmCLv48Bp6+ zGD79T%qvdJd+nntBrF2<(d@U}|NRTk;MlU)#6O-U?$wpcDX**C=Jt5j2~R`pkP5MN zyCiYBg|$+-TTBo7yy*?%&ZdX)zHjggwwvps> zQ^QZ|S$P{V9v{&D6KR)!tmUg=7atx#f|4g~W5va9?GqpP5bg+wwDx;ae6Q({Km1J2 z-&tn+wfQ{s{KUNVZ*^Sy!8N+4k6G?j*(}j}BMbEjXqx=B{M>^d{P|FB4TM2xd^tI~x!pXF!DJ)#Bvsa6F-1qS z=80f2!B`bznJ7^kSvT*`ec(PWN9$Q93g@+bu~yv15y4L4DV%~6>w!Q zY4YHhkeq2Arx>*YxBTrG>|q|a-*#RU^6t`k#QRo6hFm(Noc~SNexp|>{_l3% zrH|^DMh)mUebc9zYBH}NX@V^>^91Sa&Tk3*EZ8`WRi^i--qL1nQ^VmmsN&@b1B{uy z>HiaL|GEDai>#dgTRt)qak6p!Pgt@Lv2${A{LjQn#PmOwh=YZb?!-&Bzl5VlGfWvUG!VnUjEy+q$MZik1MTA7U$V-*GWO44k`V4mN{5jXU zu0CAmHovZ$=d}@Wo6{JS#xU&R)kC^Tfw8zx(AR}cWey;2dp=|xPFDt?T-U-0S-YP1GWMkoq&;)XmvWOoA35p*bk&K z;L!%CAw8bN2d?oG0;o2GI)DIGk9Yi0d2@3CnSlD{fk44n&|j9{{XaFjhI4&@c?!{U zgD@_DB+|b^sHdPU>%jyL1R!2o3&ivNOByL!i;UQq>Rwi~0YH0FUo}12A)HI7^&r3D zgy1|l8tNfB1T5??ZrvGBvy*eEwkuO|5e8BVG79z&5RM4$36eAi;Fd>=4dfPt zG3k^H_tQ*G4fz563Nc{;p&_9GM?^$K0*Q%-fC6mVV<|y^-Nb)ioPIY>2s`nwycL`|SW<`9 zM^Q_dEH~pe_D#?!|7pODC|8%N4b@Z8s9sn_3rIHR7+DUct_A2RvfL_GUbl5;N z3ScnD&`$DZhX?Mm<~6tLg0S(2#e(&^n}{*wa6g#3Cu4$ZhD1dAWk~rQ%7>zZ^TXfm zrrh8*GCAPFG-c0czRAg-G26Cw&U%5f=vRJjj*R`1v1)@>=+)5j&n+>3oOW_e`&>@r zG{_qMIVQo!I@8EJrFiGLKNelk^0G&HN9obw=($ITK2Cx%MYy`zD0qRypGKp;e<4U2 z-OdtOurKIPF#AS*Wf$qKNPcBU_Dya4t?DWCt#tu7>JAolgj^fMY_KZadLrjWB{ni? znL&{@7lmYUGJoVSx|5U-VY+|Ws*Qo8EL4QZLUp`q2fJ67_JjG(D5-Qhj`HFW!XMPp zgW&@`B~XjtaoF6xZoMb%*J}58MDC<2RfES(f}k+a*1X^0F54nMG{GD4obx*n_DpQ76X^H6!P* z;g3WyS|qpXWWfJ7gE+a1T)5vDv4(5W;aK`B@=V}4ggzOhU1553UKrU)%DB~ytk^tX z!6*BzKc3E!UJraFu=mD_00E&tDJl;mnpe;>v-@}acE#?b<<`V8_8Rft?$;O-okh_>b zn-;pu&ItbehCc=2C@gNi^Xq24OOIl9_dHr9Z?XrEg7>|jZsQ6jStxMhStv8nz6WiD z+%L12za0Ka{w^dE&mx0PW!#CZwNhABL2$;97p^}O--0h5Wz@Dx^7}xM0V(8N_ zN60rwYZ7ChETW^;;;_hEK8Z|FT=4xaCSZJ=ywVTUpgf4m8oPMQCoH-QnA52B+_IoN z7tGrq?etcp@i4CveI+23!naw(quh}5rM;O;R+WfnFyHGtH@OlANM~1AZyAr>HP;sY zzAK-Gf3G9JQLfBaQx}*eq8E4B4TVU+4$Y_zQuZqPiQr&W%KO<|g58{SXc3Sa-YGtO z470|=lv7A#G3%7XM(;g8ht(etS|}q*1(a?Gj1MK-=&%jo`_@R}CFxO@33Jy(A-8+E z@p`SIeBO&{Hkmcc2axz#NX-WgbPaa+_*{Oj?hLK(|lx)nQ;1qXFy+5ldsSX>B zr9$)y96tSlCrF!@fqLydW~)$KL7wwY(%JoOpjp+22n*W|mvYS0-z+)xAH>*;M^p1$*K}~I z*yvxGF89QMm8@Y$TV(QSa^9`*6u!j!SRb)LQk7wVd5haov%zh?g54Z7Vl1ZZVK0>v zZS|~aRZspRsII0}WN6(9Gi8*)?tBn`R~%|_%P1B6vo>-W_s&#NygxHuPTNWlxpNE^ zm#w`zcAqA+)zTLPH94~%b*wyD_#GaeIK|1W6&%WX;$v;iD>t}2HJh>j$8@XcE7dEa z1KlmrXe@LBl=LmXWoN!ZgQCGD7lJ^^RFX9{?9<+!op9D8N#~hC)qbcmV0U^qAU6{XeH`YGwnbd_G+^UN#8v)`p?A|r)YPb@&mW(@j;ba-R&b$#J6Bj#;1Lwv`<0}CmK{vwT3^>4CJXGl6**IP8Nz*)D&m1J~5pJ7W z-)P}@xO+rID(R484*YE2nQcm$U5%N?byZ`otBGP$!sfitMVbW-^Lyi z_jQYLbK}|i4#6=k5j24pK>0F%=MoW)>27jAhh-41nLN>lZGW{+d|XenIl>>u)CwSp zoI(E`!Tb#2kwjZ|sI`o%8m}hN)41=Hl8Nm^E&DciRp!6EXx>i&=SBH~>W+qEIr$v= zZrAu*oHPDdqgE8F`F8d^n6xP6FZeLe)#2{o{a5-ay|(u+il_l=9O}m?Z`<8Msp}%$ zWY4iDf=o_+cH0OEKNg*nk9%UHSB%}Iw8$I7(%Kq>+{J7}-vcD%ee1?RjB&`znB6h# zxB(LzO0i6~a*(Zqit=+pE`&}(C|G&3P2W4z*EgocFN4I4&}lIO+txc-Kn%Ym0uQE) zj+vb4kM6#nD!*mxCd#rMye zi|{?(TA_h938ew$w;KdaOiH(yJrNQ z&d2je5g+sfb`Df%tPue#yga~BkwkoId2r2%%O9)uT4>R?-|Jw~>=miCb}Z8P7toW} zb;crd3jcx0hub0GYC8SAJgnE0zpf+Fm2>!N`8ra$Ipe`ROY_P$&UovTiV?Wmo1A}- zThrPm*+OO-NJDevNeb@B!%vwTukrbgt>v!o#|g&j+YE6m#y_6?fSV;bvlm@%g1QX^ z9{ULI--Ed1VzTWVpY~Lj&y;Wz3i*3BbxSDx$ouVB7;;Z>aabvhv(ufB`6r_1+`kQ@ z2_TriOkF4>g_cvNo-c981V19qcl~>*m3z~Oa&6;n_p?%&?I zAjvedjy&jOBc5YX>wgq1!NW9rN-8Mi%kN7B$TV6tYNrk7I=icjOq|#c(%#W$HIEy{ zwsl7IlFGfX7?2ahZciHlQvATVjBRwk{swuA4O%}y4v({>&~Ej3YVR(1aLCk|!IPql zKSc0}uUo8?ECd{MwIB5uhkgU@S0g~ydGze{rLT8MeHdANU>X|rLl7MkKjJA;raK=S z=?v5ob6Cx!dzX(zL1Z!9l39&6-k=QbY1m@FzQbyE4?`@EYpfVEFA?=U2F~6kAegU1 zAl`lW7&A4Uvk%3mJ%6AC9StUvq59hj7|i%(8kv2C5SVU z8O8v$mu!dHFS<3i)3WzmLuN_wj#Nz;RVMSQ`OrO;{h473rLVYYG6nf`W(3szSKcu3 zSq5XKT@Q1{*xpCh%~`5u;D{0qpww76GAGkZCx)TCXG;zLvlgReeupXr_`wn(@R zrJ3mbD}PTsR)w&k%*)@2tek#A;!`tRgF9J44L*o5Z&sgav5(hJ^%O#F#*fAL&UIFK zM6~;UROL=&9%(Y2>+s c-ILbFn||ja2?NWx#y4N&8jMg4xeq2y_m*S{e$;D{KE9Y^fRVGjdsj!0YcyKdvt8?)1-eKFdrl7 zDdBE*^<&0Il|Moi{b3|Y>~7|-Aes117kropUr zh*!c3byXBI$+ert)n4%pvh&$q-t@J?-C3sE$s|63bM|QO>URS;4eg^AP-dlze~A@X zS?AlDgD_6o;doHV8V0PH=qEbr_XhHZDgRv@oDvWpm*7{vA&|PU4bPhhPG8o;9r-1}}@Ip!Q24D~5J#yDZIWxi&_$Pv$@~s_^LrImBgW%yH+CbBOMp>RZcwVuQ z2{79MUkBz5PREr^%@J$*8IqviO{3dhdxf#Jj;`1t7TE)`GQwte;hVoP*V+&Y`6y=i zll&~JjKsHaQ-LA4O-%Mrsfxy(t_SJ11NYw>l4ai!>wzN23jEUOeupNE2qiazcQ<=* zEv)49v#to)ch6Au62>KZY-}lNEoxx@%L&dNb0g?gXJ}M&vtU2FiQFvskpui@`2g)Y zU(4Q$siCjyT#>Q;Z|X1-A-8q^oCMe`lv?Rmi4s7f6hm?2Q^xA4hrg9ctcmHb<5f|gt(Q@ zM`bE4!L&*{4GWg9N2(>~c6xk=k?X(a7Sd8@S-H+9kE8&{pDQBU_z`0w4G*v;?_Rb9 zWYf?{7x`toCKIv-$OQ_1VC269vi<6)0+YMTH_2G~OVnh>*Vmv<;_0tkRL>(wH1dqC z`~6bX=?Rl7-RGnj&6jPh z<=%|i>8TC8nzK2vHJ5w@s)K&SnZ3;OQz!0OzDYWJ)eUKz#XRmFLysxuurnRu3K7hz zfrHB%Fsag+JhCSqlhV^x>Kk0=C3|E{kJcvzsF=P_ub2h&EfuNBv595i$`o1U|Ewg; zuaztp$S`cXWX*8%F23tLISGhGC1+FL*6e{3hmlP^uh}NB26covl0>;0zKZexmCq!g0xraq?zc-1=*@On;-CYo04qxBBB;rV;jx zmA$3UT;ToGk%3>3HAc`)UN?!?H8D>l<4j%AVUy%X#pjOKePmt;Crk(T4qD8Jyt~%O zz%*e`v*eGr<}4D}JfQdUnM3(nP0%`2gP2?mEr|)uB{7h$wS7`}fI^cc^^2^RrfL!> zC-J(3kk=zCUN8Bc1i2bfY89S0DUdb4^wBe3-PH$T4swLEPY~A{DE3W`h2&8k$E)+H zpp8Nk>g4l8$}Ihy7XS8)_g>=I`({z1RbU227`(YWk48)}1pY!M1Om_1a3mOBg?8?}hcIA9H#wUSqvRv*CQslgYw*ii zvUFs_mBOxs9LDFIuDPY6SKs05z*A&3Z0uH##k+$8(+(<2InLnC!Nt{O%477ruBn^H z_oVrAo3B@yK#37Gw{L|g)M5m_Jd=WhUKAw57r~c=IZQ}>E}uhZY*N^!NoU-DEb26- z5-F75m)R(!^N*&bEA+;?G)zMECB#4~EBw}@Kf_!q%b_Ix*_*ji)bZb!oL|Z4m5D_A zr{0@<>veF8F;&}zqjLBojqK^2NAa>;w>C7GE69{?ar?>BSUt$IUC9XY%ZH@%&c zwQIGkqYLRHCM(v@mBo0?+4D`Zt|CKYCM;0KclR0 zdB40q7MEH{8{c9YxS)n;cbcMs=;X3!Rfs_RAirxy z!7H>6E*k0x`Bh~8%uul>Jg%y>vfQkPOKgG^%7?dEl=X+Ao32s;JbQiuikxeOFEO!Yn+X5=rV0S5noFS5;ukkejHnS{qbLumT_ ztXkEwbON6MgIH(R7X1#n{=9--bN{32k#uRCqq-*AO)8I`soOul5SzuRlBQe(0ZCvU zBgIY*v5 zE^g{kjFFv7O*#cDb_EY?8R=m^)+#=u7}r}}+1p9|ZnNmLSm(v8lvNkdWvg3e8rnQn zJU3_jcV7z0Q_>hkv;zA&3ScA;GTj4`xZbNRI{vt!+Zc+k*)g8C2=JXi6)X$I43}{O z9+k6R-cot3F@h8R4e4Ku#&$(1{;C%MfHs^cvj2a`$N%08U?yVbX6O7L!ofns!otS> z|B{gZFZ*C&#cF<_h>mm-~KNtI70pRE{Q~AMs;I){HJoy!{YfK z)~A`8kFVOAleyLx9-liGXG&s94V6+%4$w>>a-mm-=NULTJ|J!{^n~0-epc9CsEIYW zfuVts5eP*EhD$Iu_ePM-XzXqvFQ6QTG$3)+bPq{NAXrpXPCjlS6iY-`Z_O-VIX>V= zAxsl?MMxsnz^Qk}0x)OyLQZCPe@)OE`kL#Yl{fvG0;OORV1jMb)#I^A|syMqeg?)hF+yvZXkQ>-G&<}HL?eMCvfGK+*2=Z+OEi^ZU zW_btqeM|=Y8NPJen{uac=bRpZ?86u`ouAPLV1ncV4FV*NEp2=-8gP@7a|h-&ruM=v z>}~8l?=FmPjILrEKBr&*K(iHpLkbfKt*lO7C?b3WROS4p{>xtx7rLWeZhm=XcL&_X zVQ+Wy`25sz06J||6MCCdo1>ouNkD-AX|xRpUgrXyXQqA`GkY5TwuE$4;q>l&9c(U7 z2k%vz%pV*bKBm9qdkz^p^8qnXAONv);s##$NsZpjiV3^B-__(E0#X!bE_)Rih$t1u z09n?!J_+5uZvnEiwb!#V0JYtj)ga~Fy{ScXD*D%ewmXvdfN8ow1|SNc1!SOSrdHGM zL4^s1AQh&yv`gYI>U_*P`E4b%Y7RWw>gWlZO-9R8rO3i}$w|#U#;yrUyP{o2ZU8>fZ@$4?V%}9%QDkbW9yIjs$Wrt z8{=<*=b=}Owt=^}Z*mntbG+?7Rmj2u2y)zj=D-L3 zH~P-!5YPb5R5fL3BNe^yyWa6_MrQ8-!_wT;4%E=#0u+;*6T^R)xn~g=nu~uh`zZ-a7Z9Ew($@eEm5X`k*L4W9PY(;goh1Oax{E8wHZV)W{EpBjfHjfR-Kptu z!OVMKZ|3gtZCr5w0wDPxxg>-Oc)~yi_VQf*4;%uWYj<=2&s^u^+{qfAKK~#ZEC=K? z1>9V}A%9c;x{Lq^3LzFye=qS(q;QV#^b*%>DDnj~fo0`nAGW}$3dvF+TT`1nQWCUj z&2d00H4rsW6D1b`kx`Bo-=*VN8dQiAJWjs4^>UZ`9<9k~TaIri?ja&->w1#u1Pk+1 zsroY)l;nndN>T7Cc1PIpG?O=mA{7WY(@p&}A2X+!eZ#--#ER9In6YDS{e026kcK7G zXN{A<*yHXUnc{X#Z<9*+#yGX#qs+!A>tp?kfQu2;gpA@CgtsE0UR3!o^RB-$OIG~i z(kBYdFc_t5uB#)A!GwPg%b&7InP3x~h<7NfGGnCwU2%Rn^ZQeYxICHGtb9-tcqYd+ zk#czDHZHW}2fAc^_c!q#eBNFnaS)7J;=baUv0IPMYK~qr_guaB2pludiq2jolJ}sO zji9pkVs_xgM+8g1FG(-a#MZY5iWgjsLiJrY46EBYa_=_fL3&f0a72{CH`;F$cNuBD zEv@Ot^oxt~M|`rUVko-=@yu1SDmd4BA~4U9EFrH9U++=@Cr6x{U$|1=m>nyBNu(KM>Kcw+sw{ydV9cy9vP^Kx?R@yb~B-Y|1Xeov!F-b2!ys_ zO~e`HGPyJPNThGrWVzD?`>-5o|KFpo@RvS>s~En2&1{VQsiXJq*_{f}vf(&2GYBMl zqflp=6u6Wu0P}Wbo_veu9=$KC-VCK2e=i6KG*7xh@o^GJF~#Jd)V~v~L=r)~YL3Rf ztOO00q8WwuQA?}dWykJQ$8+mq)4+Ou{kSdMt~88h z*!T^rvM-K$NBE?DoXN1@Lyiw#LP7#coi^ucVN}>NAz?5~hBbwcS9u$7T(#1Lx3GI_ zXvm!S+DaIzW$eHAX?nXVY)~c+vSWO?y+r<&fKMI4&(?8o9fX?op5Xljnh672WH9h~ z+IOEB!-PvvL^UxMLENOg6S&YTxhh7DeQ0@N_FWR!0VbI&%Dhx0p*JhkJU8|#Di1!( zzxVyGZnwxT%S1 zn7rNI9-FViqQWf6ikK3I<%q)`TYZ#>H?$yKgL|Cg(jNhpZHk{@mUNiZZt5r#a>-Po z<>afc->bA+QO}%&k`i9$-^|RNg~919PcaS`c39w`K;ZD5P!-*I{*_$Evvsa|lMR|S>;z9^} zFmzW=B(aY1`_U^NCf1+3;r7${yQ;{cTaBAFX5k?r>{1pWcH|U1UO?Spnb(E}OhGZh zVpO{A&~iXzWL}DD3oX1ee>48Tb0*Bqy;sedH_-;}xgh$mx$Oazj(;4E`Z~t(rm*hk z*k{KW=GmXmjD^_2&?7~qS@TKcNzS57o#eRt+f>M$$E=EDuAU*KYd6i4_E;Ox zPFQSCa|SmHuvKUCtu=@J_!r6hY`YK^v-)VnwYf#%wM$L@Q3JTad%TiiA~g0#hmN;` zg%Od@EtYHkd<-W@pMD0rY7Ft*F?``5mdX3q0BK5kgbz0rWnf9RBs2Eum9URyU2QTH zfWjyem9L&jP8jOj*kQ~xTF4=$?CE@6G`7W66{X>#uR2Fb?OQ>1(xqYB*>LquKF|0#4d$<-5ybbl@LawH}F?% z0FM^FE7K{KFbG@!s9_3<>0KJZbWOqy24+q{Psxx@M@7WB{ig{MJsim`ZtrVpGbTUO~TW*OTO>J>}kK| z8UAn6D>*oF(69YvD1+M!%~deFBwjZ(I4j1JFjlJy{S@wD$Kdg?O(*BHIfrhF+DdQc z?KDm_{}DFkBo4LqvY?6o01kwixdkzmV<4=Zf!GZ=SpF6|9ub~=)t+DCZ=;Pn1vWb5 zg~9BRFx9+HM1pk*KySY2?smuqmxear(|14rLHyH0RS&YR&f7H1Wc(=s-w;H|Uz~1} zldJtHv^h%MM8gfa9PPvP$Z+#EgpKCggRw5N-r_f}wnjlT_I(f%UBe0mG`mBhcDY%U zZtuPe1#Y~LvJ`f}>IUI@{C9Lqjolj*I@B3&6``0g1nZ1W4!E86O`j{zSf@ID&d3m7 zk+&P;X0-O}L^-e&AA-)Qg$R78Q=d$rknC5tbkDTf)>Iazuh7yYoy=GZ#CJWr9=}zk zxX`!U0V~nZmr^G*vTM|EV8^)BQ#LM_8Dp>EO92g%^5<&h6b92L&II`Vhn#r>1XL8a zg{%jNR)>F28yLc%zEHrcWVLcij|bVwuLimOtX+cDrrtd}%HQfWm*5@LWiD?bk&i77 z(J|qav$AFyt$G|;+B&j-h;6i zkYU>}cR}65fw(=$YHkpWh-YS8WvLGu_4uq^&dpMZ$xQN zt$Pci_~&wU>xNi;w)T*}Qe=gL=_iuJ^L4enUoLGGeAJg2o3Z`Ro>7q}3)xHi6sXC+ zs|DO_Y2mZp_7sQB2QUh+ZPF1LMz|ZJEi%4tgfZdlqdDW)iOpOxZjFP?o3`gqYhmrS z)=QQHlU_XsN1NXd5BCPSyb9plK}h9rWSW-Y*!tJ>^n8fM(If*~PMmw^PrZC+_!$Fk zP-)eZg%+zQP^!}|B^pm?u4`WirA%m9l1y75-%PB!bI&;HY z9x06)IQEK63={omS!9_{Q$XwtSfEA>I)cGj?M)S@KsySCI4&Z>?FygB+3P3Ct%fO1 zlA&LDk88lctOTfGM+sC6$TFg9T+6QRuIDEpiXB8k0KC&0%uG9&Pch&c92hIeV=fr{vzj>u6-I|HR!g_|Q^aDYdUNWql;! zf;~E+|Gm6FLw$Hr6ipWs|J)v)t?7kuA?1H*NgRZo3OHY@2aN;Ci07Y1yr=~2V_*RF zskvvj!nxLazVkqx`O*0BmlGO3f2_c)r9jj2#$O!46M}-^G6{S%t`nLtH`Xh=x^h^f z{aCk}MG?XCAH?oNr4VR(f4L9R4!;=s53+3EV&in>%Y*p@9VF5J+ImD3V9dfl!bJUw zB>OOyvQ-yFpjJ@UEtmj9>&zwnO6}e=U((AI<_wN#rtL-B8K`@f4;-^-7yL1h#0wV` zx}3CQ0zT_h$MbcDhsjxR4~^>%%wauh#t5o8%fsOFn?3*SbL~!0JfFGtxUS<_uix?_ z#W}iKm`r;~rNqGDENq7bmKT`TCL5$yG3^s!=gYw@{T-r}*TZN=^j($ELs)V0bg0>s z6FN5;6_xF$$3$C9HYBW->x^zv+m#mIOmx_KQXtVpQLO53e3vH5yz+EJuuMCaD z1>9fX(wI52M&j4c0$zTGiS>N9SKrSiGqsG1q@Kvhjw*wLK1;mL!85~8v-x!3YPY)C z!XsxB}8p&r07c2zv%@qwN4VHh*48;f^}cX69Ac;KH_#h`gg}s75h5iS2_z*ZZO3*eoK&i4JYyXBLgy6SSfm$Job?+ zX;a8v>s%#|g!}p%{3`a6zPoFt?v~UzQ`3fzy)K+b+f)MW=wg}DTOtr0P4rOHavI7w z-R_Li&2P#$aT=ejyEJ=zkR_84lxc^>dlBeFrWna}d0wP!U>kV3xIVTo=h(F2#2KYs=-wsFriLxj**6sI`LQ0!bd z%hpvWeX}5e_FuD>dXwAWYO}?0n0{rIL?x}n;^UrG9qbHIZ5 z7pol^HEVE!PR)j0i*FogkjM%>V0bzHuGksBGGkuzWUs6l z7(}v#JbWvTV)di8I2dS-OML8o481(Y3A(8Y#LRQT=WYgO+&UT#O5SR2q=n_EdZRoaTC7kPwqJ1ByN?skJPHw|=^FD8 ztKq$oP=&@}nk3OD4{N0P@)eL4$pCw)w!G)L=Q3Hp?5g!;RC6v}cXJD%E7l(6QzS$i%;Gc>U*ezQbOjul1k|j2c}ilb%Q% zcXUyM#F8b;+z|!D9ah)U*XEvu!ONPjV9r)*#7ys)^11!sEBUKRkxxQ0 zUW|)WdJGr{Z*=|r(}-#} z;ctQ-i7zK2J$~*IrE5;Lig7suShgXGyL+za!f{w?t4Cw|Xo6sGgnv#dM<~%%)rjks z-L_KA88VczlEHtLD`DPK(-CdF10a*GAql~e^sj|X{iW6-Cp%mZxN-*JPoc{lGE^(m z3)@TU3xcgm@axUl9_$z2W@sb^pBrZtq@Psox&$PelfKOYd|0GJ1^bHF0zz``?7N+u zlON-mgGJi@{C7SVY_uH01T6EdpI2}p%lQ;@2iwt0O0yzZvHFp-fsZNsI&c4}Ph25) z>i7^NR}yeLxvU@vCDq@j_@{yOTN}GDn^o`4M4hi)MLC(IhSyatd$Eosa-rvMa$Pss zD@n8wqW#sdHJ<}zQb-d~i3TI0G~=g=QFJVjH;CLqD5hdU9V1cj3-+!?c6ImTu9WXn$>zIlVB? zUH%TojgXJ_XIUYfj65;I7VZmJEdGuUMhTG$$`>m->X*RNmISoEoK={ARq9Ws*G7>$ zSifCG9_C?HhRcc37-ED(h~qSr6?8A}6IXwMM|C$10cHwYR!G5k#l_og@7AUbg}N~M zMv^+T90c#iK58cpTV*m1#I5`424~3Hdqh-*2LTP1oatK2P#>1pBYFZ1|GR$+jHE*t zp(jjf3<*YNhAsu3#=nv5&S}T{lW+>}W%&!)Fc?U6T{k0qZ2H5^9WER(y3Y8ddauGV zp9C1K4T+Wf>zorfvIA!&NQKLDv;ipLFf8dcJyLHB;W25LsLS}VzB%@Q0sK05O9~AO zooo@AL*v;@2|<;7jc`gbVyBxkcQsRMsbF01xtfLUAhErvN%8Ra$7t<)*}ov{Gy-Wc zQhG&?YH(2}yP8nkX4@&XJWt@p$*5cTaN3qyE8Pj*+tKudNC7+6Oif6EgY`|&3r9@h zQC0PIpN9f^o+?;=Fp3VDmQR@hb);Pm>=)}jDips8g{0HA;C+gLhOq)mUPJwnLrfO? z2h`hH_r9dt`qJVi;Q##23@+Llfz~I3@LvqwIuhQe1Q(lAk12}_7q$v&{Lg^B?SFOS zORd@nU*4zQ3sm;0i0%4pDd#N`zifVwIk^#II@IATnzYqtj_KNtOeThi$z``fL9+(b zFJc%6s5x(B?e*J0yMBPEx`qy{m+)fK#Hc&fp|aegsRAG_sQ`~`jA2FUk>;G95Qo5_ z+z07Kd_dvHFA|iD+`_KSONI13nDbAxXk730**DRV@GIP5R06+FD$OLKQXiFMw1lDi zP5Ts|2d$j(qR@VmIE87@pCUY9vsU2u&=W3lbQLz2>0N#;GGf@70){P$Lz7^T7Q?se zhr+{$QB(H^a2|us;KMI4^4g^@!#H+KXi*1ozKcxAAB+Y)oQ9 z`7Q2BQjN-P(HwF(Dc^}tRQ}ST<)R!@vE9vPw#7C?HV@34btH7UNj`tizl;CkOAjut zS7Re6-5)VPx1Fz{PplcEFy>}6w_+4o9p$+>;GE)7PTVn6?;kdQgi)eR%-?KyG$Q$;^WESuSxg#!+5}j}mS8(h{6UOD-4$;bUaA z$qTM3Z)=zG*cU+Nlb9QO6%qw{^;O4#kQ|U7h{*M@h`^8HOu%Hm6#i(d?jA<##&P=> zgjfC@tpE78m37?mY)ZW0XB>prIOR|GuYY=}0OVIR4GZn~!wW;(v9eFPGg44cERPFx zYd-7urof!vsT+PO^kI6rKi0q*9)_b6&Ba7(EKW>eS+;1Nt?{lToN|y-dlTR9Wdv|6 z4E+wpF6_rrUl%4Z1y4F^g~G_pn;tpcyyO!-N;ZYIIyb3w{|*E3L(ow{3*faLY& zi|xTY=D57lOSYTi_65e6@#RNQp@eXZCd4K$zKt=?cxvay8Xqdnj@GI6xgoijHR+C= zIoYL6FUW0W%SD!zp4UGL?aD7p7GmHb9XJ-z~J)di;87Q5Wqh8zw zdZ3ht@gffkwmq6iRjo1o%G`mAIB{<5gdJC~&gWhc$#!ixt}1Ia)VA#yESN`EFG}Rq z@{w_e=Cul)Gzz8~6$>)R0UU-WwNAIIAF~i>jDWT{iop%y-ugA`FxwV`=c;0(R3L*8 zcI@720%we69OQVY3GCgUBAMcf(gR)N&h8?4G$~1G$PJGtRLK`jVA3gpjd1vO4uNom zqlI)}19{fBVwvD*d?o4b{k;nw6tOrh@LS~xgv_#5p~8M9k4~TRs~8o(l%!d{JW-}K zdH7za!l&EZ1;mQ#U$H$2Tv8}!Q8<)&`gx70IX{Bi8Pa+u#U5JhOott^1Cy%U_R6cc zjsJ_WdkWG7*xE#0c70{rwrzG*mu=g&?Jiqgwr$(CZF_p}`A?h^apqz!^DZwkR%Wbx z^GW#&VJ#?BXU9)^s$mt@@uz^VKga1ZB3*&1B95YV$ZsV$UPFS{FM#8QcuHN51X13VM47zrjr? z##;*K!Ao?j`6axQ82n9B=}i^k(d97(8PS!Z<0-5QhWfBl8}foMH@FkTfcY*s)c(D~A>H6ZWq9zWnurEX z5=D|t@lPyZrQM@zl;%=}YfY$#k-Mm`*L zwuhEU%(XK;HnzFT?)Vmqd=d`bo&sHz7Gw53>+{4G@cac^`lKQZOb2j1ll+NQ&mk%y z5*|}!!M>f^o^l};X@cE?Y_WS5N$l-gMQ6!4TfMCaKd@loG*lwyJ|!TsgcF|YL0}EF zuMmDt+Pu=B3Cu$wmrSuama#8FgYmG`xNUfmBr!oCRERK|qvY*$y!T7AmFTZ6Qa}1- z+X@+{;wXCAmcg}w-dgp}GbAg5W{n)fE={UG;L)>W<`dcYDn zl1id&QCk+YPI+TiY1hcVfgP&*n6(H3|J*1X90KOn&ps|my0K?WtgHfocq?ZIBmNuj zT8GM6QuuF(`DN1c@BShOy+AXE{^GdWp>~VcWdpYL{@~)w3K7)a@Vq7s62J@NRHt91 z)vF;DTwet2m_@)Ivd%6TNXQbuRfm1Ji4A|`**JI_I|qxg78>=yOiKtsQY@AHmJ;}UBgWpsO!mEf@UDOAuhS{s*y5By6gT zpD;Aj8_Z-fj(%rZ-~Wwza?+2%!1Z$`JWe|8w(Kb|bJDr2(YZ}P0kwIbV4Sd>brv7U zZ!El?P-+SD2I)#(g}NEI94xA`jpVyKtSMkH+I_X_IN&a3a5d(N5Npra$2sX~XDsVG zuc2?8Z|3VFSbs(r2M^+GgOA~4s3X$AK`(;0HD@&5MrYus&RNjovtRMn1L290qG^(b z^dpkpz8cPN-d@1Q$t!^i()tX&vE)MFJL{CfrN_vW`_gmmBf>@?j`8u(;V35c5Fu5I036FcKU+FjP+g}B(vVfz&~)W9VE%#_hM zM5ua1!eCr6Ip_<+E4xVT>jv(?bA@5Hb$d4X*%e);;I;s^IJg(_=&2M1dkf7|Dbz`? z#Dn9(Lk+fu`0`4zL*xeMbw8tRDKcU(L0TmI)`Ya&JWHJYY9eltY=fkQ0ea*#C-8`d zQ(9t-NkxcpVm4lelPnNSJtL{7gzaP)@{>+BDL1Qw zPP7v=Let#nMzDr?-8A>C@Zva!Z;=Q1iZ02FqK262;G;0lexmw>^s_*x(&|I>d_!z= z?CPmwcvtR^V@|YZQAjOfzpuQOx2Z-_8MZB4(L)K$42@)OO*tn2@-75z&;$d!^rfC` zT}f)ubMX5eC1U=_Nyljt+u}wTxS3q4 z53}!SNN&Nh*&#?Scsp}hsErELMjlQADy4R#fDdaN`bG!2~!B!1q9>GNFG> ze>CYyrrJU?dB64S1dm8NnkmTf)*S|O{TudEzyaxr>A@qyK%i#t)cLG$qR zTZDkb2JO>a$E;i-M0)7blB5vP=GzJtg^i6H}zvW87oR;ISc37Zd37~ zjFBLxuiZBji){7uE*U;etZtw;?*oKXN*1{p`LUtrIGNUd?Dh;_zZO0N15)8Udu($E zGJxlPyYHd^A%|2;12D}V-Q{eE`xSxz(Wvh};bcA;d|0sfgmLv4CMYuVz!Rw*DZ)5l z@UoyuEB+LPT&mdKi}>ZkMemoBeXv`*k0jd~K`HXm2U;Disr%Xp)O7A>5qeEhZ6yFl z%6Tx?0)+nSBr($qASrSo1Z;8tsCZf*g89`s9N$+_iA{Q+x=?=NKp8bro>+ND%u3#H zkNb@+5m+uVM-*)X&v9b{+@&>c$MfBK%bgcP<}8zLQLc5u8)ZIUkhnME|Hw$21itKf zgaA!pp85iNoseB2%FLc2Lh0Jsj%aKjvxIgK<=X$GBg!dZQRF6zK80SvB2em*nDIV0 zp;$GXeh}VakI*EIbez@Uh66&BPwBvQv~8*a`jr#S)lH=_Pr7%6nby)A?qXG{|0!R2 zV{+dN6%>@rr)=U9MagLeRX!g5O}@Oo@U)% zQOV_JCT`gI9at3^mo9Yk{H$i7|G`$p>3rISXuEg)+{#R>=^{|N{B_7J}!x}+vJ{kH6rsJxt1ZZEKR#acRb|O z&&oVc0hHqn!+-V-=H6ZeWnVHt<2bdY(L=MNap4o2YVL(@_LXmcRvO+QtFa>~Y;^ z`W&8JuJ#KegHU(_;T>?vaadYEowy;BSdRn?Z|g`$6EJ+&Up6*K__Ga%x_+hl_7n|B z-UW*;0ATAa2of2cwRpU1F#c(uzwA#WAbOY|tbk0|DyeMD#~e3jNl~<5tU6M6(3<_d zkp99cV3QseV%*K_7`D^voxDLFfZs{785%)YL9^D8?nYH}+ao^CfwfKa%qhT`86$r$ z)7K{yL+B1XvgAxbC^Od3zkjSrW)v)jQnc6whi9VLtOjKdP{l|pvdFu)9e&w2&C|S> zqS_NBUqmD!&mPhz(bB?G$e%tfc9h6AGtq^Ku?u_d#PJB5{RFV&Q})DRa7t%C<3s zFr=qIKlFmhmF1a3!=;CPPUc=)vvU>8NB`p~BvTp5x=TnD?ssPW%o$a_9{u`WMRl&Z z`t~`{gtHOGUQt3Q8mmd)*dkg7{>^8eSW#hs7Q9+rG_^|)MO3_N!>E()kGEKcEZrkJ zwE;oY7N&b|9L-Q}`#4qhev0O$y^kahEad~fWVpT%9 zu=%59U4F(`8eb_-ZHn0CzHp;;-xD^kRbpI8c)%C4Br|j`etEODMx<{f9`Ba$sWbV) z@L&z^BYJ^nA9>{EFAVBZAn71owSm%R?Nw4;v|nd`<|?0Kd0>G$)g zn$YmAqdd$4#-GzYOd(ZlipvF0it!Eatv=GY4&mAO1C6fRI=G_Uzb{}0ZULXMkdKoe zQA-Z67x%t6T|-K1awE}&OXnh-$uo*(%Z`7)1|Kl$Pde@NLocjaWKFW7Er@*OpM^J_Kg$#g#op1u)A$Pb+<33lwv>TK@ckMStW zKR`4zz(68G^?<@zGU9=J{1E=ww}lFwu_lS=Im2eTH5h0r3qAv0M23KS4OQBpj`m8W zmR{{El9lDKf;TNTAT7-?ZwP08t@=kqduU+^G%o}R0!3m$Q9O?^uD+{asd+W+nU@S+ zX@v)o!cc-xl64HRi5)I|h@Jod`4s0ucv?2y7QDoVOIh|OYouC_WAO@k91Uk?k@ivF zn><|S#Fe%v<($vbi$tg`C7Cm^Q=8}I+_bi3ZCB6a)@|wwEhsn2Y++>N#zB4LCDe57 z)Jd-Zm{5Wsy--Eez z$Iz37%aZVo@pXfVe3R7b`46HA7 zn*V^(%juXX9CxDzh^HoLjKt*yOmvptn1kG0t3V*)@ebkAc*^GVLfB-$$4we#T<$zo zg@_(AV6JF`+Xk5)iHUFOT#s(OsC+t=Ry+05tB^H6J=(CUmTcv~Q==O}%UoxAf}<2Y z%Tez3uqb&fkZL&6Qitnt^?01&MPVipJ`l|-v zT?(^3CkIp;95cycw%2Ab)T!A${1})!_bB&BWgmvvuG_FGys|vDIL?( zu3IFRm38OZ@<>JXx7&P+XJN_=RmL;t=wE?No&|hp&qwRgoL9J~NQq9sES2a5Bkn2xNYg{4$V zMHqw3m_=NRcb@~{u?;nW+V|F2w5eEYU{$?BXX(OBO1t=99Q(%C@Q_7=F)@DaE0V(6 z&ntf(#s(bcrWq_GI;v&r2lOXdP9mSHe_=jDQ|kCo?GGrOwiu<1#e2y1eZ89w{%pw( zi&m0^v0<;-JYz^3u?iM4vKlEO{i_|Bw6G@gf-6tj@PH|ntJxVC0#q#yI06tovU-q! z+*qYsGFg6SW|QUJ40wyi&R_j9ijEU9{V@_JNEDZ)XM`ha7!a4ddaIsY;{)e~(pl3K zw$`Mv9!RbWH$a-CVwFQNQOW9Zp$Q=C@75~MzRtk-#v6k%uShA!5Dy^DOnWE?Ge>K3w?miKbZ2FchsyUB}7U>7|yJ}ogCo0As;gIyy?K9Tfv#W?6p zJHdpyV!Gb0H7FH23kw<*t&-g6vJbxONo3*CP2msN*{u>*2TR@*?)Qso4^UlhiXkdD`W*wN-l-c)bo!cUl-kNSU>JAfel6d8 zOS(4jDOeuZ8(Ja9U(@>IPDP&TuMps?hwp2G!tv~~H1INS%f9R2B<+)>{pr;|7Y#p9 zvG2W>i#|EM_J4Cvsbx%=w#Jc?tS`Sf+9(;hOAE`QeJvE1&fC%8o&eJyvC$WW^R7-f z^^SfPfTG>LF%KXJjRsX<5T_8uraO04Q;SqMipSQoT+;;sLH8|1!P>d zqfE&a3o6`=Y0dVT0a2=B4AfN<{)m5bpF!wW^h%vp6@?x^pWPH;w?2P6); ztK1Z>X7QKOEzE5#+OnU&iYc<_c=njjarQHIYU~wRMLc?<`^rDjh+zuV-YJsTnt_@~E#*r$IVF<+N_?j9IpDK#8?6Af&X{@{QAkDDcMx2=f)M zZ#`J0{s{=wPurDyt#kF)4!8rROVEW8$gDaP)$d>8*Ip{gz)E{+DJfr%*NrpeK|Ng| z`F=$V*x;IRYrz59eLmI{g>yDEYH8xpC_r&enGx{1oBS5 zJ$k-XT|nG9s8?7{N#u)?xuHgyuZuj3hUf-ibHGx~<%rLfATal^tL9qo_ ziDID9Fc#vGc|@F=uPS(BBb+bg2$?uHcbg+D=QE*00fCFS28^2kd@0<%T!&U=*SWWL zb7i=v=|;~tt->N%oK+Y=*U>4NiS8306X(8h#9~xa-pf>6Sa-iAl$%Zf%QH2k=*i`f z3sHi1*ARpU&PA^y0(#!)bE4)xppHsUmT4fx!L1FGi$OiA%tzcAXHGplAsIbwe$XDs z3+BdcSVs&_xEqlPP&Qk38?VlcQ!+X+wR_oCi^u%TzHf&pkHU7yDecox@w|hHg5*6& zLEuC+otU7P{CZI7-$i(ls#0jYy(?>e=3zl>G>Q0Fv!Q0-)%+Mwri~|OIUmE7E@6`5 zF-k+{2(>uIQ?Bsj4X)jq+;_@rGW5_ghlH!|U!xVHvcy&}*h*V8XD6g!6tmFfY+BDh zby9e@PsHZ@Y=I;|kf$npLuj<5U^<4S4dZ{wWdbwPnQHYC!dN+KOn-E>*QG~v>5TY; z8!6HnbeB65Q2eOUa=8-ERAe?8uh*d%M!a3EuCgY#{PZ^EW9KFo$+O99icN{ZPP}I? zdRVNh?+j`|>y)9XFo>8BG4TLC zO5E1QJLt_$&_qCp;!pYXe8|VyP%>CA#2P<8?_RN7Y-UdR%&pm3ahce{kp4(xAY6nq z`y&q9$@Nmc0|&E6g@lVA@LP?WYx$_@`8k9j7px4uE1&9?EK6F%OdC{BoJE|t*wIIo zgC&8WT+ahdW?|I6uZ+#`gvqPGsV^2R&>(%7Ewl$4LBxHM{~V)KHU~_%GTi1sX}U{% z?JD-ALC(}L%4%o-wzub7a)jIL!y zAdJ!GN2YEnn`;!k)zFXbB|A69(S|7TwaGnQ(W;spGY9W8AL(6J>3b{YvPDA=w}Wn- zN|P|JzoivZd2O`w0E+UsUyK_<>dtdnW{gm3@|9uYtU7k;yy5qi(=M|$#)`Zu{o1J$PamdEumQN9 z{^`ZHh&GNN!jJN8nrko#5Gz}V+CTJvweV$h<*1b0f(RVlPM;&?>aHH0VBC=MelrVJ z))FL;5fv<$KE;{t-cfYhk=CxYz+iTcoqLNuFGq+3seW zB2{C|p*onoV z3>CBQ=vstdtzDC3;3-Zq`WX=a$W*eoqUFMw==hl!lrO*BOF$^h?!k z^kLAn7D^A~UWhps8UvE#4mAc`DRMDO8#>%`PkX2W)Ig4aM@bp5T9~7@zV?{7kFo{s z{9J~NFycVu(hA_nMCS-A9c1~htKhP(^;+gAK{qW2Y!ZSU_qw3;Hlg2Vp4~Neb$}KV z70^p~oHm2ZOV(T$=OMpmSu+V`Tq?Jyg~X)4Z}pFx?qs4^ai#;9GiChxl!abdi^862 z=^rAYcLh4p(iy7s`u*Y?BREVAOO7bv+nI6S<69%muqod{__aThiI3+3I@r3u_Syvd zPbkwyAjq=O%k}BnkTy8TPCW|$5ZxAQ8&$QasTIsBUMYXk~(s3jn8Wck>w z|K#Amk*YIWj>|uWn<1~dDWyfB_nppIV3+)wNS>61c7U}D1FAU#4eNOm%q=hR8M5fo z%e!4rm->l;g5C(b&hpRXek`%jq77MZVZ?%P8|1-7IUECW0uX7fZ(FHOC2F}rZrG@k zJ<#H}kbF^E0LCz%eUju9kqkz?jzeatX&&AXKWywgr;i*Zn)N3NeUHb%vlKQwrmo6 zF|fJ3LQX7s-Lsk<;-i=3c(Do%^J^LUkg#3xYXa|#+Jqh#xZ&OkJ z@@M6vKu>E5yV5=*YGdKi^9l6j%DK+s_ERnW_U31eh5C!Hfdsv8ysy)LBS+LcONwq0 z)!fqW*6?l|nI4C4b;`?+)qoomn?(^>F2wzhzTr9t)fpo>2mP4wVsO zK9E1M3ake+f&nTIFdR&*$H4@mp!DZ*s(4KQTZcrs#D*rA+KD$ZDdSUL&p5unxvVPAwu4lyq*Q2neoSh7y})#SnRp|nl4q0045GZ z!OWi8j;cei*ph5{b3S~qu>v)Tm={f!P#Ltj{2$f9oa){GY+X5RH8;LD9le0eaM~s_ zU4X5kYPB-W^K#HUE$sZ|q9s*+pqf3)38fyzq3zW7Ngyy($O_di=m~-^iV2P!VO~04 z&&)IZ=^GR;-NBnn`47}9BTF_`6+0^O^XcN9W@;W%lqfzuRJI0|aQ08(CJ?35+C7)@^lHROEN?)?~Sj)z~xCZrd&oygjyG zSQ)|)o+@$*;25#tTRI0Gv-KVKv|cPRk@_bp;$Ck?*I7rMj(j+4@gBoC98nzPXp|y) z$NMI$UGZwtc2+>HszemxsO~p%=B`O(a-zcIKp#oOax@m4`iQ~5)y?dvM7M3NjIuaR z4>K2wZ{zvl*roJm3U@2}Md~1#{mVz5FRt%~7mpynttoX#MGbeY<97)1C;?I^k!J49pjFozn_5EZLP=mB|CXIJi)N+X@8%a8Xipt_|QPhB&u2V^n|fNkltBNrk@h z@p$ste7&_XS3*M*9_O1S*cQ#C4wjIC7(GK-wN|fA`#gXV26SYD)~IehGX^6cTvJ-+ zve95Hy@AMK2ym)7o(q*EY_&8^oTP33O4muQ`<~}c7BieL(i=`mEAZpa%4c_G_JhU* zW7gfYR%o|uE;NYE2kz?b4)no;041&`x5wuu;hg&1dzb*Y8=Yj7{ApmDh;dAmW_qeq zT5Ao2;R=Z!oDv~*@?A^z+qzw^1u?_lnwKb4y&-_!zR+?@o2B+NC)}m`Yz=fOv@5(A zCjP>QRb>8Q_z6#zumo@^_4<492LrBX>@!nQ(F$0N=Y4rL=-|UFuH`j4qf$BunAMsG zQO+*0`Y_;C9z)Ee?r{%Lx->)B=m3H~WAeTDOlxSvhIY2XXd;_#3dUqe^giUacYK)N z;`SSTr3W1(1epxvRB?}q+%q{I?2QBa>GVRhP5AG4`wIL`id}3k%6ZtYiTq~sq%$)G&g+Z3* z7^1bFeMQML4>rzLOVOCo*V)bKagKVKMwLie^8{3im2?bJVjY5}uidaETFT$Rm$GqT zFhjQp(*+t)Hu4ErsqcPN46dc%Ln~d1X(sNAR&mj8HL`jd&QF!PzpJ%4g@p_*LT2;}9sj0$b2P|`(=#v|M01*uhRUHp!Je*o*^8aW9x2Za zTpC3KzYM8HQDB9Z;h|NccXql{8pF;D*OC@G`i8)hkoE06JM;5@Q{^kt(F|yWcDH6J zAUEX{1+VemT!oph_xRDvO)vVOKW-61Xq$gA`etQ>K&j#s82!-w7;*T*Js$E1FwYi@7_O68b8J!%pvKUuFP`ZGlYA@P za=du`)Cn)tWp&O~Zqm2ATm>}beVv$id*DWmjb9mJ{1=WJwH}sk6|R*(dbAD)H`1XC;ztsM9eyoxZwF1EU}EWCA?OYER+$7^~`lr$S?s0GHv{H8d8 zI0K6ofRrkA6pCS3Qup%RBGilFX1R+mBMfo}@5J9m|SpF4GtG zvbqt>(s~Oa@jPl8K!(yW##crLP@euh^xxt07b*+1x2|+g?8fo_(wqFGFJ=;xR8zVA zw@5XFJxkPqZ;UbvR-jN`h_^zE9G^iRY@zr*nUCtiONDKvaMNiR4OZ}J%XqOuZMu>V zaltyasLn?z`exk1$9ZgD;o^Mao^a5lC@r$~Fl0=fL6Q@F7;5fe9JoEQQcJ zp)IM4rTEtfHHUd0+xmCJ3o*}siWENIe1~9)tggu-X9==+4ona0{Rq2Kj9!R(W?2Sa zBtn0JeAqFr_-1<%-VQ0?GFL-?E*77k`7E!`8Ye~VuPgc#V<26N*;2GPajI^v&h;&B z%*$v8dp<~jS1IQiLJC^J;FZVnLG}+@Me;e9+W>9eL{+rMdG>pN|JnB-f9Ygj0Uv?h zAp!T|AF{a6(^CR$fq5!5H6=i3Pn2PN)8vHFt!0`X4g;wuO%xRXZ%p2gh#7!T)J1Ka zT+5RuhMx5qm8=OYVUMA7D1JW_FM6|NnOg8zU<#ZNgAi2NujMdI9={W%3x1X|T^7V5 zA%@brb1@;|QD;}e36_&paN{u7hs+N7s!t37=;Yo&rT4$zG(?os3JomyyfF?lao&CCAc4CBipHaoUTE#Yd?LL^k{Q zrX+KxW!Y<_G3i>~eAu2hQrKw2oq4si#2DRE-~dW1ziG0VigMi90E!~c2LKO1J@GDy z?gs2EV5cc8Gxw{K>cUG$SWlr4egfuYEWCp3jyh~^Pl4eDYwapGL4p&)1-doM;f(WA z(3chZfOU{i`W6HDEalOjZ@I`1Ioz2F?7F<)zf9(Bj1w8Hse@MPGNz>2>izheaulzs z1k8#he2w1Tna$S4J&JnFbjI@eR4@__zExwXut2#9s$Uy??^w`mxiA&0g1MOm6_hjh z2XhSbCD|^(G2j{Nfw<5}J(+T>#%apzxq&-IZ9ei`GU2%D5%!MZso_Jhz+!#I6{^9_`?K9E>PXT;+NxO?SK^d+_Z9c= zp=D$JSt*sBa|dytz`Pp1EaKwDe&YH^Y%P>@4xThu58-6>^>8im(@vv8h$KYCZ;eih zbRW@(q`6DAg9lVFw!FOTZDee9_|ZSY>?rneDGs5B50#y%!$H5;wYeUj2D1BX9%2{w zUGOJ2F#c2zi|a+aU2H+5MEaM`cy;JqcT{{&l@J)`H1x~&yh5+y3;Xii{|+)+z9Uz` zSgXuav@ACnw*DNx3gi;X4PO9nUI}5td{v~$)+Wx1SV}SeAu^|o;sdpIWx2sC;g}H| zy0gF9Y-mylchR6&{nk5mI*YwA#0SrQv*`PcwKu({VP?V8Bb{gmrS5$62GIkgWTMUb zKKl>`F-jnlk|i#KTNjAG;J{_2e8&F;Nq@K~R!6uF$JarVEEg!}(yqxAj#nR-Q4ZkZ zls<((g09q)Epg_CuDLAU^mmqQj1D<8AOe!eG)$hxB=TlecZ?U}4Fff|&rlwDxB%2n z@^}rm^iPgov4&!g=bMbjuN1^6*_ApR%}t4U=M%~~<5MP2&^|v4G4jsuV%w+>E*iTA z=%tO;L41+FX~@QmqlP5vExc!6aOeq-8Csxcusw+#or}osM9~W`&ay>u!VW^-ic!$f zMS5k5j?O#)^fFPtBXY9nznSfNFpAcO^{8KnHGKOFLMRZrb^DviBkUL2t z=>#XOv-5jW5p!{bT+DcyR~dJD3+ZJb(^acY_{^g`f15RBz2?c`OI|6|?a^YGjm{*u z_`zOaBm)I5tc96}Xvsgu$a2#?O{9!~XxNRO9I3f<7SY$1uJ3#4>hu$QumttuyA*m3 zwoty;y|s~C3K=sa{paFuoCO~x!l<8mhaj}z92sOQNqbtDHV_H((jVbJe2lXR*z%b^ zJSl(!7vP0T84-T1jQr!&cg!|Ej6l}{GGbe`nnnkmA~SQ<+|p=X1b0SkP+$$IY#a&@6Y=oU10b9^Az%2e2wzxZy#*~T? z$V%O9tq}}NhWcq>BK_PU6&VJiCv#ykt9#x=<#SZ9-FciVpl9+i%g1DF{RK&4q1N*K zLmD1FYycZ+mjrL~D+-h4$T5kHY0IK9UpCc`W4**}3^Tw(pn+c(lNPcZM)Ex|T{H!q zg2zYuGnJUCvLUj4Rxhk=HI2Sq$~sWUmU34j5czD^mI#EB3nchqSPV*UNKqow!O>9f zghsg6r~j`&`G6J80VtNDdAAf??xafE15@a*om`jew)h{-XJ_Be3_zENv(($`#y7#gb9Oi+tHCt7(dCDyC{Zt(fE1% zTpMpJspK|yTX#5Rmo`M_`Dvw@i_%i2z<0@ct;Wz_fsn`M1UC5I!-m-7VzI^$kCI*I zpdR!Nnc1v0Cc&5PzfsyAI37WWLF~|Fg7;Ht1zL0bm?t!c?R#%zrp`MZkPvleZd>1N5QQ8e%jf5b z#)&=(zPwB3pW~PhIA=MN!gLMiLwBI}LjKLSS-~F4%?oym(?nUkuSeFjBHbPIJm`b# z1kVS$(K%87;LMQEp`a_P5s{G!Ky;z-9|)rE8u)WH+f-Ia*~iqpl4wJJ3C0@K(ACC) zbAAYwL$AEF0*Y;CY?JC}k*sza)-_}VSqub%AfTq6m|uqoni?syJ-TMWs97Oj`JY(j zMKV&)w+&>6favv=SmC$DjD1<8wpwFBm@qP@Q4{uOT_X+> zUMQLo&?~doWIJ9LxAbLfe+=N^1X;#i5wBmpJ4~RW(-Z@S?G?-h~c#erLw@1k{I94Rs


dHzSP*K*3Uz(x7Ds5IWb3SB!&k3RE(-PLGC=jF|jKsJ@(e0JR z^U$0>-wu!#a2w}H zhe}%yjl1ON6pY5V#mcKee$?s=qpim(;lboF!V?EEl`t$O_)=cddvJ}>0uf@l=`{4X z`EA-{h39XgK0;7?%)@&WE=h2~3qc^ISW*JI)f%Vd;UnwP_x%vGKs z|0qJRu)YSv+O4`T+Dxj0SjQT%Lj6R*2&aH{{7bUGmX%C$Rx}%#*RTCKl|0Dq>qRIiy@8K~}H5;bVB?L_&=Hs^GE|w$296U4?v7WK;3UQ^~hx z#mF&nq)nj;0euq+M=q3On`8}Mp=)3gi1R(4Darq2luvaHiko0Gukh+=sh<&{8T;cU zaqd9UY1rYf#;YHFOA?f5-~UTAU+}ipyv4Pt2#MOChM>%ay5>($`*0+bk*G>JWgAx! zgHyNB`-Il^Y`?{2%ChP8E?&`M9xZWILVA)$VJ3V?L~<{q(0JRHOUBol&P^1Z8b3c; z!1~UYZ5Bkp{p@2ptY{2IBNTgVIuMk^ad66g?YL4&W%@bec)V%*Cju!vu|7(~w&k)5!5 zFyHpxC#!;H6BgE=U#W!H-L_+Q@t*=J<)Wehc6ChWd<@1JWP20%?l4VB?=I#l5>(44 zH#&s!)Gk1Dqr%h)l!-WL1+m#PS?Hg@H4GtY(fdFd(Kc&u&b|)ALx^b+XGeGBJg1*& z_QZ}e_6BsIk<**+9H^ir4N)7!nJxwPPFZu)xfg9(AOde%;V-{dV~s9^I=H?M&xADt zFJ>vXk)Y+8`8nTlfm4kL)MCl1>(al=2J-A>aE`?jxJqY(cxraXvow7Bl>E=~NWxDr zb2*=+K_!8IP1vPcrp7Ctn008;NWC?bqA->o6XI(3K%Y1{LO&^}MtG^_Z$dyiD3BZ4UUxYWHg0FE82U`c4@4n{lmsWUy`w5G8)_H8QXB<~tTV351=4gp7&2 znJ&R`Y?N@vSr3c>q-WjxJ0R5pzFZVuo=_7qzcZq(VWS(0w)>dJYJgRAonqG!(;P%V zc7GFjlK*0+EQFGxW>jwD%hUZ~X;bt5WjFV(Y%@u`BK_FK2vQ&_TR24XtC&zr8!Kul zqHJ3wR2ybs5XdQiYr$MWm7)$oO#R@(@fJsLFB*rX#;tDp({{6!xdp=vm=NpKz)DZX zJ`oB+g8C=R?MU%B16S6SligwEWeZVPn|_=i!>W!YKN##ucBI;AWGafygN#l3H_*F& zmwb8<3WHZ$w#_rn%GPKw@Rx=kO=$9H5^lrp^`&~huSAjO(Ry%bLHJ2&=!=G0QXAhO z)d8DrDAp;LtE@W;utTA=62keQw9!7I05SvlR7_zyiuwg)TENA?2qNW0wK?ts9#hW1 znYalRoPjl&+~xPb1ZUIJ4Fqk*_He{R)ehVaUV3MTtjL#rB6adVvj{+{ zC1wF*h6S0Pu-Nmp`v~qqGG$%-8RV9Ec4424h>1jNJAE@PK1E3gWfGu+t1?Ce+-N?B ziS+6&WyvYu6?l6Rd>1513nEM~7D3{QcYs-V(YeOS&#%2!CQN~dgAXMBd15Ha#lEk5EUIfJiM$Q*r?L-jCN8yK^b)+SzMsSJW$E%Mfbd@j61Ml0;9s`ET>Oc_U(mm_qTyi&|NiI7@ms*=8>c;dU}XByy2~eK z>*rxG`btNq^BaTXr`tve(hGwIBYvWX`hOedJ*PU~IqAt?0_+|J;1?Y3a{TdgIS2*`B3U zg}yc9-|rsIuNlGr8s>foUvY@CyLyd_Fo0>-;pU&c2FHZjd!P&|jQ|R%Xz{B zgfG|)tyK_#*dv0(_nn0Lui5L7FQccIcaT|@28YkE8t{sf|*koySF zKl|W}!g3^<_!2i+Zp!%1W)|U~zkNM!}uCD$Z4`H=a{`f!P z;Qt)+8=!YdV9xeHZ{TCVG?X7gQVdS-sXoG|mFTM*khEXeErAQu7ec{Ld-k_RMPL@* zfBA3%j)xzZ1P%x;Ess-XAIYG%f$zKb8@uw$q;2Vi13Q=~mrKK(PQjg7ST4-y`@5%3D;&||&0}J+2 zK=TnA5M`&7C7ihpbfeUkS@SyLMilV*o=D+tK4(lbb}O z%@Q9v=b`%!t*pCW@FpJfj&bC7AiB9H25P8r#KaKi%X`kf&-gEheqotglL!9%a5-Mi zTKY1)p(~M2Hy>gE;%5SqiiQMGWx@+W<2DocalJADu|HuDIa;Sn7Z|#vT%@uO6#sy& zSdN~@v03lS0=kkGyfiwW<_*7OE8)pxUDB)4BvjJ{qRs2x-|0-Y6cwDr((#;gC544*EmHG;Y?B(>c4ZPrONg| zzj@2M4L~GSys*VgETWQ>CE(eLgkRj*@Db+*d8SYrn@R|&yceTqhSZOg1 zIk|8@QdY@l(066>%Hxz121{8WAKWKe{q$N0XsYR^p_lr?l15u%?KH$%N3HO zE*XhvN15W`GfzRxS*JH$1f_sw2LTDC^>41F47i>SeSceb-ghpl1};f^Ph@~D`WUgK zYu>v4 z%I+kH{JKH{{cOl?W1qs02iUu#$)WDCnS~ zi(-E@$-QMB&Ol*o06#xlpol5r`Hyj@W;ZakLLCGIs=175-?dD8XBW|&tZpSCy}JLB zhCN!?ie~?8#Px|3VD!iDi3tw5qu#7`Z>=3X8h3m%Vxa57-f3*4Hbe^k190ckC_xwy z)eU? z%KI~^ZzKJ^iOaG^A)FIX_bs-SGNF~%gL-|kuNET5sJb3G#z+`uHdgbsSY_Wf<7@!` zU9^+;VMN@M%6XEkli|*fn`>NMj28i+la8b8(nKy%>Y+#$8_6A?FpZpj`QTA9@jlE+ z+}skajHHS7CFh^o*f{wXt#af6r!mk)6;h>?y^mqoQTVA!8yengt~xD7o51;3V#|Sj zT(FM8K4fb+q#4nGG;Yft%)KYN$AcU@>lixpHfHSEjl-rsG>{haj0$M&G-C3yN-4Br z;C_R(pG>Qqw{sxFyr?&k)WFcj&A~IYOniWnjVv`bE7yjRSQiaC@5?DxhoMTem>gU`SOY;r2 z74h@GYWy9a#^70UP9oDBjl=&6%A{|X5#~YhHHbVQtqu~Xk8|b0(JMc;xq=`t?Sdc2 zw75A#0fWPxAWYiWnJFWV#b1fT?fRML=x0-4Z+VdfNp3zHZsDH~wBY0CisTUB+jJe? zGa!O6>;~?Dorx8rrrqGhmO@dYT<~o^faFdkT!2Gv>)4Y|hh?Quo?=8Fkd_yT+tx=B zvva#54Dr3<@5PL<>Sr!)))ApvaMi$FT*pE`l3q|un%2O_YUeXfeuc2oGRJ-xIVxtxwjbR6#4~PaQrp%=xTxZUJ5EcQl}C0Y;3GalxF}Z|RY>sgmQ>?G!-Y{ zLd1DZGlD@o{EZUXfut5Gj_#&mkL)k;Q$siuxGK{BShV47e;VP-4a_d7ia(xr43?=K z@1$u2H*wC0Ij>3PXXb5)>yqUzAG5Kzi55hS%}j`8P15+lU_3cA%JofigS$Re*rUPI zDG9*9ryjzI_2yG-#azUhCO*g5)4Z^V+Ts~aM{ZoUufRGb=tP$07{8#ArlRICPgp}YRu70<3qnBi zy*V_qh-#vMCN2LEAQ39uQT|;d^mD?95M+^+M}Oi(9#T-5t4(I8b{kmwiPg7!Jm!F; z5Ak#+%8bvw@4&q2RedprR`2sL6=JyKRT1zICHC&n`8WCWe;YKu%67S}KB9FWHVgsy z&!x$o{09y;b1+jgjaY0v$ZO|$^6(so`#5WS|KL36b2m_2i0laRF`2L&4r;2*rw+*F zuIc>hI(J*HIzVtv)1XcKJf!ABW-}O^_GoxyOj#`rPnE{AUpIBB%a=D9tiic-vztYl z8&-W;CEgu!k08}`R0Yp^QDfe(_9jobMWpqn95$+7u;=3=N~?#0+uJFPr}5er=hDu( z&)Fb&^WMuXq;|+tbI~g z!DlGDuH+bNB|E@=;?$^i_EUoO*-7-5ASt7h?Pj{(8jLh$QsOd|AZtepU>?{Z3Hg5B z?i{e2oqew!gYjeoh7vyVfz&W;g2}+8F%vX%R}U9B9bN00K4mHg-<GOo)wO&E&6 z{J#42a7%i;%k`*vQ8Z)=l2XlV+_Fz(pDL(Sc!TYG%&j6HM3WGdpQ$-&#=HP2%j!Z9 z6}1WiNSPTl9Zx^Q-goWJO(BnzA5c>Vmf z(U7B0Vp=|+%hB{xGhHFGgDM#Fi!fp1ENY&|8r|a~?Ra~fb{_xq0Z(i!WlP0T5W~!T zlVw*}m zG}~g2IGG?whZ%%%)bnI1B0ut+k@}rIz&5D5p8wbVy{ed8hMP#E#3%fj?L69CSm<1b zRyblM!r9YlW&8<7!Y;y%r;;r%DEQ zM(`>@pAorOAgfmB1AnN7UxE4HN_?H|^b5J0qMWFSCD1^lQ?_AkFcf08cBoq9E@qx` z{Q+$aG_^1H!-(RoxG}@$9oq1n{FE`akDMSwE6mdyN`Bnv)|@VyNyy+1^o0>KBA=Rt zso$LkL_NR#k|XJG7L>tZLL0fe-tbjAuae<_Z2Gq0XpD-ZJ>=5$&8R}@o;vtaxi}Fz z8j{sDC=5@Zm6SVvyp4uMbaMy)DSqG-n$$qNOf4z5JMsm`zMpBq*nprS=ikTW(mq=< zP3p?2t$QeBf{N}_BI33ch8G!o=bfMd5mxWq6E9JSj16i_)**5vh2fd@(vB3tB{*_) zuWHPhYGHj|8_Ub)I@0U*SZ;H|orRdS{9fP^v2&n5T02C^;xzx9S+8p!5$4dNGpEgm z2$R?xsB>&cA5yHjiOtr?tF!)cq4wUfJjf1b5EOL4EIvyB0b%354Lkii6U%TpNm@C8 zXsTwRn8ZaC&L_y6U|%fYQ}S^DA?&0~mqs;>+Q=x{Bp)(epTG}fAGv^AaY~z;K8GK@?ho0M!e%xNKVWrjPJK~lRICw3obxXEcMUF}?4 zW=qQQ3aV%P&*4I}7!qr_V|F0S;OomN*qwv=6s6|kITp#smYnB>({9afAn91?^S({w zS9yx8PQ?!X!A9@+6iEs-g3l(QFVoJ;>;x70TPma>P1-Zzd~6-#@+&X7dazTqTZeBR zOextc!j`^jxeF}HVkj}Rj_j6nFHR8hkLT`)Bf|xpq++9Qpd_ws7>QchkNTBKBG*$3 zbZd5(R`^j>0=;!2+?CINNW_>|t{>10j1i2q%U*sb>TX{-e$|Om$YMHATv8|`0RcL* z`|(jrp8AX2(Q9Ov7ZPB_=mpW;K0VA@VQcC*N*Ck?I$n^8+CJ~6x`weg+AI(M1m+t3 zBOrSqoauP&KpKsuD{(hV7URH@#d`1HPz6mc@hX*eN8?F)8p25?bN&%&=~NDG(9=}3 zjL@v~BBMd^2fn>7<^0f~ZsAWHx~8K?4m*h(Hd=BMSAbboMw4lm4MCBzNhJjNm9n1Q zw6p&nyv~Q(n2-y)O2@#S6i%@B@BdoQ-8FtMft@4af>TDsXmaaH!xWYDQWaLz3D-ho z@?Yg{Wpgo>h+_Nq58_;ItUK}){U=GG%8o+5(yY#GmUmUzfIojI-jNL?3=P$QruXN5 zT=bW0DjC_I*8D@Q29jg!AyAilT&7~?*YbGR+d0y!VSW`NLSQnctGC`UQCpr%6K;RI z(+#vNOLp+b_^B6pKm7_P5Cqc^yy2L_!pbVDPFetiNldeQVguEzZKp`5tR?`H2bnV z&P`ShyX_6>Csz_jiU+1LjHLW}PTg%AVso|1J$l{C#mXfN^q++L0#bRsxsS0{a;o^4 zFq6`wQ!D+D8#O?!+uy`GlLypr(H;e6SMqa)0E;>NeeWjd_a4n&#+29B z7h@`eLub(&Ay)Uqz4L3DSgw~$RLL+V>#8lnhuFppC?E9t2sqB`w&1=-B44Y3o)s3d z1g8-m`xj zl-WN~5`DzLujfx;&(gLm3aIo)%!p}CaF>~nG-liI_QL!NSQk9NrtBHM7sVf`)fI_- zlp3};gMl<*aR$%TOIQzo+KHhaKy~ZOfx`Atq^(P9+n!W>3A@y3ZH{IgSh)`0ZYrfG zPBkMqqlC&2!N*fo7If7Zk{^d%TYqfjAsqO%vLzSR{U~8l^qk|x&6ct_1cF%IH(#`S zA#kTv$`5uY`o@mYMV#=h--k2Lw+RKY*77xLM@aQq9~S!c^3@s+xQoxP=O8R=r5`ds zv?GDo#z)y$ivC-W(}R_+APhuFT-$RXa~KmNdaQ9Sp>ri@dsa^xrD>fBvko7UxWx%K zC7Sin`N)&&h~-A@Aug)#=>*h2u8vk6GA&ic&bK^C4A^8ExFI0PFMGw-{OoC8hHOsP(J&#D^xTNIU!qzTjU=IQJ&Dai^G;I2%E^aM;oxpYL@pm3v5}oY9cSV)rxq+J zckQi-U>23S8@MB8$mfMvf1!f(ZT-4&+~P5jZcavFWmH>a#B+n1peEW?v+5U#l7YC? zAmcmh-}(yuGprl~z@P>4lb@n1RzB?)oo36ELeL*k?)ddaVZWW7Zb&RXG&;mPeR*bJ zUPqQVs}z=BQR22f)uakZUTa4fp_c0@idv)!3kTUe4kO9C6V*UfP8U5Ml`iDv1nDmTycfnB^ zKEHy2L$iYI$Z8{&(4a4X;L_$40>bDN1FHNXxFdzlvT+&+dFJk;)_>73oJ`HMC11y@ZxDa?_JLr5? zt%VPF2N`L&v%dDsB4torX(^zVYlOHJnN6fh9$m!RL#F51(TmX{)4Q4&aC=$s7B#7_ z0e6e@0na1<+dX**fkZk&2{P--C~Z>jcw11FRmgyoLD0B;3X$8P7PByOfUi;A#e@b+ z_gbHE3YM$A$zP>xuaCg!2oI{gYPkr_qivWcq2gSArvtpWD^#X}ve?Ji%9^l2)p&CA zc>VFPq&IUJu&BD2I`$0*`7yr8bREm4?_W#XZUAo1^h^Xl%B&Kk_*KT3UPdO+{UDx( zJG34z^10uVcD}}_aEjA;miMO}p5T0pjX@Pf&pnCD_M|hP&_f~WoUcx7PscYRTGGidBU!ChbWCi1J#ItJ7N!rVLOSDMsTJ2y;EaBwjPj&te z^PdcDBI%i8Nac$t9)jzRSgsb?>H4V7Wsim7@cF-ELnpsI0kK(3y2+`hojUU&b4b>H z^#78)`{~oOA?(4lTUXYV~WPP5FUa9lYM*QaZsG!E#~0dTJy*(5-nkIZ^y;QO9# zLXf1Wc|M!CtyZCx`f}Sb@?20|Me_J;XHb_I-wvOq{U74HTi^&Sy@Z6rXX_QUTa6xD z220t3hyRdMb({Y>ehVn|PQ7-9$+3fz@KkZUlJTMv8+`@L`)cN1d`S8Brg0_socO(7 z%Wd#qU0+8I(=ww415L>e8fVaJswfnHz1HGXql=_rN04q<<-f+Sq3jOgHT6ki)8>=Q z5At%2>q&7bfQE3Gv2Lyep`3;DC}=wKOOtJQ+1%|Mop>WOgSP9f)&g^=TotR;N@4z`X1{7 z`@J+3=s;Z7-nUyg1Zdpiu*cJ|kYCs`|Kj%#R`#d?0yfzNSzBW0!j{)__(}l5t$=zR zeZ5IC*$q}g$kY&8by{<}3 zu89l*c#Shl8nNFOCoAm3=O4BiU;1l?j`k#3hBP4(m$JRb4lWUj+M6Y1J5V z_NnEp&7v+wrt$e)9&gStXtP#Btd^gDZx+7;KI)Y_*nTd#>*iWyDS=KX_Hf^^wGppD zn5O#iQUM;8o52d*u51IUp5G~eoawzhPGV}EZY`Eij$Rs)7y^;53+4|SMww!z-i_ng z6Z0!AhFd3X(z0iOlxBQVvduCC^oL`VY98g}HSfAsr;HmGTT8!WQN$Tk4-Zo-f2;{_ z#~P^#Z1ZK(u763ju;GIgzgdkSlOs_hY`Mb{Wx6qw32x6@e!alZfx1I#X1@GRN{RiU zDL&X8xV}d3Y>mhO=xV*Xm@ByI_}roWJVbA%O!wxmE8L=KMAy5aWWA&P^Pb zQT>V-Mty^s`^S+lM{JZlU=S&0#H{VkuAkg`X-@Oihi{EU#wZ}3vDw|?p=uzr?@Jpj z_=#KP^9}^lOHRClac9m_d5Jlb(=uCK zFnLO^AR}F`0;TSLoTMb5YA)6elZpEJ{KH%LmDTQZO#5*JfHr)IsOm}P+j)b zDZ$kYrb^730PXTExRS#CU|@sW3j` z%giS%>haCz?Ar`EhQZm}&IUw!6Q8>sJ>nc}C-{wHMz2KCL>Q__^&ztFlRwsk zG(1-;GDSq>=!qFS>mS;1x#dF?-rcDes!601yg3eN(BWkLY=?Y5wZEovmZsVYb*n6{boLrU?TYpB8bV!u@XLTF!A}ZFj?=tgsE%ThhXt>d3psBA2}HgR5D~)c zmDQpuY@uP=pt(MIguPmJqh^6P50A-=)+xrEwx3Dncm(b}Gg6Z!{BrIv`N zH2}&Vb`=k3_%XYFb2AsW5(cwr%`Uy?tr+dtAaELsbu!88MketH6p%*LYG!Yxm%)z0 z^AEJ2%Q!Ovxx2$)`ZU#(1fv}`ZbcNKAq<J#P^txEa#KMW|Y2#z&y z&M#V*d5lte(5m0&HR>VdU%fVZ<1`Sa%sfdlIy2H z1)uT-3V*U_`c0A_oM|s=1lUM3t_f}3QabmVbhe-+%SaC7?+8cdHj91|OMRN;6}TWF zqH_8^jIQ3s5<1$018_M0dN}nUc(5#eRVm(simWoD*X=wz4U4gZF*s$9!pQzKNheq1 z3yc%5xV>Wvb+P!P%rm9%^NLM&sNULV*O^bTb2#WRoVho_(~&(!YWEBm2ol!Np3u9C z#rj?}g8h9NZh6)q<#I{XU`J6<+NsHF0+2w9IsS(-myOal@Rd;1)hsiLWvUHT!QUz^ zSDVcl1Hhl%DVk2<)F*vEACcmoHHpzGoca}6XTNya^Gi$d8Wp9^6z?kNu2bs4KSaG4 zIdzwT@!t-*eC}*{g7NUl1_9r7)U85e7X+#m!TIO$S=x7T+0kV#fjr0C-}UxUmgHx7 zXMQx1-oduJcx+X<$B%hGE@s;I!qKu@-v^pS6aGrYQh=@lu+U)=$-B~EgpUws3hKxT z&PrExWfI^lk**J3IIvWX^S1@sv`+LD30aXyEjJ6qz%{=hs7rm6rIKv1d|Ka8Xjb`W zi0z3*%`+9Zft_$0g~=l;LDSt#@@E!QgM(%bF}|y5y2GhvDfa#;n0UYj>`tKtI9H(s zOYIf&kIO~C?4BHZ;O{lqpkdzf&@CYNwo$r)Vd(?NKK?@B!Uq_8SG?-#*z12qsV~@@ z$9^iW09#%1M-W8OGJ52*haw>3aT<0S+Y2qm%bCm2u2o&COZ6?q7h+UdC%Ed} z&RH-D)Ksc$p(Z#%7rs2%3m5s^nx0y^fX*Ru^X%MP75Xk}hN2?v?SAK%SXjr;-p@-A zoxbhT;jbQg8)7Eb^CgbHLanaS42Wwfq73o6jiJb9juYlDbAJ7ymDT7MxHiJMS}B&s z^$p6XFmWyM2)YaTw!O6m9VCu?8?m7H<>=Ua$(|sbsCnR~tpk4fTTKM$9;Sk33WI10 zr@A$sTP4(nRl~x44#Z;d5lEqo?(p5xPYu7#b{81IackAyv~zdrE|Vfnv63}@)}M3Xuv3WRdcojTDtY{SQdQRWv<)H#EmO3-qu za5iR>e$4wEQ@Z|o5DeHs?Mlv|^UAjp7)|EofDns_WXt-fu};Gmb`hgonh^*nxH8j6 z(~`RjE#PY{Y38fydIWC~iLbCY#axAE>4aY0-J82q&^c464gjKjVSdBpd}4l1Wn6cb6flcK8x-wQ&9CFM9j~tN z?Sb!AjZJOtgp5*zAEa z@3nG(Kcunnlg7W%kiSqvMa@Mc=_{K9*gUYrlX5axF#g+?m#6i#_dfBSCgde$rAsnh zWXIy4hp&%Qz9iSMRwT=~$q44#2%v^ve1^{gt@sOv z7kqA7%VoaAEYVEo%+~4jMB+)*{jc~xA39S_!_}RQ*7i;YyWk@{FEMB8C4g%mY{Z0;~ z8rx+P^&i?U4Z6c^<>hN-c=aN#imCgpfgFa%B&|cw`9BJo7%6)e5MxZ%nub$b^{dXh zD)=VqU(z@DMT~@z5+C*XWx7kHnBiVAqKQn=K_Q5lMr#pY~lCd#zCdAwLe;(9Y%>VZ2h*qNL~&!`Nvco$rIvVdMX zG@bUFSaI(`VCK4^>OygH$VZdDc9 z(a6Dndzpv-5U4L1o%HaZ(VM|+1>TNG7KGzrrgl!*)v{>NDIYmySUgN)Q|XVB5e&-;QU&|7Cn z0#sR=%c|8C=Z|ufp|P|_fpQI;E-I(WR$H6>GzGg&z$eHZX45>}UR02!Imz{+)8NWQ z04TP_m=0Rdrp!R7cjF;to)YV@-if&Bc)0jxzx$2(S#C|Y*uVDdq;IN>Q!P2H$c_#Q zVw`&!FuRK-zm7oUK&!*x&kHHwo2k8+XFUcdr}U0(8n+JE7JgS9#e?D(D^g*AGB3bI zaSa`6jO5A0W}`~LDn}oj=s2R3y}y=#7IZ5hJoZf^YgzHimE=$f4e7~pI^g-cmii8j zC09MT%s>1cj+cfG`#Iyi8LW(fIYg?L#XK|ui$1J&`;z-nDylP(*KOhE1;N$O_9VWN zTylPV|9V}sppR>Y zKuX-;@m-9`aP^OKd8dY~o!`E)%iXT`N7CEJUi%9D(Krn+n!afb(Tj-0o5%>VvCd`O zf^WrO&XerUGC%9S2x@<#FZ=*$@J15?#UL$9Jwpr|1IFXhq_7l~<$^J*8|mjio5Lbr zv+0jO=9>R_>JRDXms`b|%zyTi*oK_c%r3$76Lc+Ff4T>W#va?3vGF8N|JYxgWFaVW z&%xk8)cb3_B8R$2AYq4(8f&z>>9NK$Mg|{ziObxB6M#E6p%I$Eng5Ns2Rayx*iPK# zZfksn>o?{sb6$5JD>n6oGfC~bw+~wLGsM2^y`XUC4#U2$NqBhY&N@A=JH++Vl>pmL zvB`IGmY}~0bui&r1gCLlV@jMDh1#w1yRl+S-P}xQ4qZFXI0^ApP^1N^RXGKz6d3+1KvY2b+ zUb$dTEGl!AZxAHRdb|kh+V*39QkPwy%y5X8yu6#aw=~ee=ojV8r}VK?%$%0X4KDP+ zT-&>-8Ar`QkW8L*L(n#K>~j?F<-XTMj6htt_aucq^}$jGC*L*qwo4172g~Fbj6`Md zdQ?@MVnaG5?;QY)57PZQBWpt1Yr$mJDmB7IY(%5BFXe7B+5+1yE)CV1eQ!D2GmlvszCiB-3#*}TxZUdTIvwXFMHRP6m(&rNP-bNXMC z(zc6<+Ex7DGRoDNg7H7D>c(||bCGFk+8R@^@F#U{^wIj4#ddUg7ojy5JVYN16ujp; z8~&2%61|~I{~*;w=GEM?M~e*6JWM006XXPo`S1rvBrw5chGf~(gh@ZDD)W4ZaC?+f zp4~*6$gwXpK@C1N5X>yJgnLqHa-&1kT>8fPNhgmHRX;ZL8rXa92)L>u%3U+Vk|`I# zj5GwMx{%9d7>t@tS%vd70vA9}i6}fwv48$=R~oso3isrFmt|1uoduWEhSlR>QQC3x zIC{C=7N=6tkAxRteqf1txl0+rj~d>!z*1N)bZ8X2*!WTHf2N7><}%|g&c`%`P};?j zO*zFsD6#$0yPB&IU0>gyl06M{<6|9zIQxokym!k$IUh#Mf3PNuJO; zpYW0ck(Dt^$IcgpESo6&J(FB`f;ph!RO`HT9Ga0nhUh$Ry;VfoJ#P4Z9DQfJpg%CCpW?T;1Z+*^(^N+Ah*uv~sO zNWStKfqx$+Vd2u$p*?kQv=Bm9IW~WZ2(CfZ?WTpn4qrjl3m%}19!@ctd`qdyY*-$qh)+2>xxqilT-ya3hRr& zp2v!;EY7tbNXZ2EtD-^aX#ZHau(h9As9SVAQ$r=m-T#z{NVKxZ$`3mQwl)p!kuC3& zI6J<1_O&dFYv5zW=6r>^qgIo6Cr`@g3$xiNX};}8-qvk}_HL?{oFNG4q=D_H>^YH3K5*IrK+Yl%7@Dps>xydPS5t!|Xw@RC1Og1T%FYaZ9rU^k3@mz*WouMz^Jctz-YGXe}!XGW}=C z`_sy#L42Xe-NW$WmBBl)2L;h3#eNenIz@bC`(w9}G>-@Qt+HeHkO?`5={Fk~8VD?W zF6U``NLm}vKp1w~t}KUNS96$cc8-U~hIxU|b11fb`)Q#3X#L(ah z%;oW38K z01g6r)lNzR=igIwu}Qhou>5;%+fYI_6LUE?a&Z1ROIOpY!g`m-@T&Oi`I2kPQAGZ1 zy|S=Fjgs4t7L2{N<&Q2oM{zfJ80 zk_b<2a#^;Ao?kf|3x}Rva`M8grd{IN{ma6^vN#X;?}I~dh76tU>Neb$eJc0QKGl7^bGG`2YnuA z64KbW%rLkHW+bObUl3Jrnl3Oe?Cd+Pa={-|D190NRNaQGj5`rl9Cd|(R6M0lSo*HfxI=|GOKa`Z937U2;m4MFX) zi6W6Z`bfX#p!8$!?TyBb@WJ~F>RuFeRquT5mL>>|ua~dtig{YRy-Z&YC?^cq76>4l z2+FN((QSlu$z>-S?9YF)uo65hGSQ_)ALZ=TbJYq~4y6v3Px1IwyPTSS(lMF=EhK*!uf#vu%oYQ)NL3d+L2{y{MwtsQJUxDOsK?KW z(k53!{Co4kpKRG)q`FLU-%KjIgnokM^l;r(PtihYh{{{45mJ5frUH*TFrH#1R$SYQ zPAzHGM9f}vDmgh0#|-roZ+#>jnwu%HVbor? zz6Gwf$@WrpI2xi?+LlYhaniTYV|}LeChF#Zc6-$7%8lxwrF~_CS4hM~G$I4!kV*01 zlmOGMX!a+j6(W*&WL9A`E9FUijD(+eCZ&dO^y5rw|7!Ce<6YbrZh#B5(kQt(2yaSu z%fw4=V=Vf!jQB5UvhuV2+vGwSDRr?^us5gQ$oevpC&w(bkJCUU(nR+?>Klp~DT_w0 zRa1CrooBL7p{}VdVT>NQoaH$=tH2WlP`nsWW#4@2EV_XuB>*|P z5ftw0vQ+c()D(uV#)Cv$MY>Q86&MqiOSG^4XZLH$Z$Ks_j7zk49sc;(j7=OAQfmYD zY?e5+YcK!`)86q*S)8vbYa;b+{JFN~g@|-at7#4$q6MibVlO*hO;%~yYk0>fa;fnu z?*4_NR&Uf`nUlLXE6470FXbaCJf5ma~x zy}0M_khmgdP5wUTo?`9t@EC|wl~rs54V-k^YBh~zd+T9=@Pi?*IV37CFJXlTlFm5a zlM_xo$2G1oW(wpL?%u)VfR7uEV4UGU9-Bir$hwS=bOuyfecErROrfDTQc+U9xwYj^ zdg*?MOdi(Z10{n`VpPVmb;$$zw3M8kwm7x5DngD5w8%}`v^-~2bu79p)8i|PEg)2; zY8pN95(vLdM~^M37fCf?J#;oxHqP$_+)8}f-|F?^uuiaToaMPnO_-fM>0)%~dwzzC z;+nQHg!Vl1zqZ86@9j>5GfkkUEfHJxeJygU!OWJqe**DNv1iP%L%*+Japq4_4b&Yx zE%2(FSC+ugj6mYPzITM)su8KRa{7z+J$FFM@pm$lxkwFg``Xd(pueq|wW4j%%gwwL z6e8R6V1^tKeQ|2Lbi6C#%JP{Rs95>p81UM7U*uehb+7!!>ueZUSuTr;?vWGnYq|8D zqRo{dHkcL+CCuflLQb>)V#HuTQx;qUC?8 zHxdZu`iX83nC0KHA*Bxd%tjxF(k0Jm#MCa|4<05C)vrh!O3v&kHwGJmIi#iC4_YND zd?|`)7>^~sEk~3#Q9tqrg;dCh0)zF!3zxG7B^AdcKkcVIEfP8xVhX$Gkv5sK4ndF{ z`jfx?ogE>WS(~Aij8zjT$54Fw<`esReUJa*u4RuRdnyojka`6xx&kXkfAFZ5(_>c4 z<6;(a*ov+E*kcs)xUW?g`d(LjW?ZqfD&)qhc#JW%*j23!5z!( zT!DoB+grF;;UlbV){bs4cUZVVR*wJJZ*CAzlRIy@SI)Oz-(vA8oj$YLs?T2*(#j&J z;snZZ3<|g=XEPI1qXWS4Ny=cG*lUdqjMTtWIySL505&o-G&m3`DMayt#AecQx#e-p zao~NYHUNqYj{c86&4vaCVg(?Q05^d#_EO4$bzlN;7dEAr2Jj{zi zKmsa~dMYr0DrNwZWfc{F|0FVu@^PWeR)g!IpoCTyz)em-f9}ZOU$xCX#gEfxGWTD1 zLwga9zc|aMcFqAvi0^n7G%-267<6mOm<8jOW$Ny4dvg#4Z2&jKtjNaLVrOo)M>_V?N( z|H@x;2#ep%suugNWfT+hBR~ewEJB8<;G8|NpwquOxvzSiLpnCLN3k}6tiOL3{@7R> zTALo<akN^JJcUv9q|zkGcFF*Q1Of6{MkX=JNz0_5ZX;A8q!``Czost?#-{a2t2(ovL< z(UOaQca0xYa?`UQCRUc_a0cFUkPJ>PERO;Pp4p&nZ+C!tHTJ=_P%eMg8UWKWZUkrS z=mEXa&Flj(#}W75f}DH68KHjBzhXH6W(WKc&;vA&;Euo<|9)dT)&ZxL{O7atukoKx z$=|?z0T`zK1nm`3eq;F@05Vkn3fd_y{pYn&V)@T!^euH;uWPf9K z`!8e!*zBk7=_jy{?2)v$_pr{@rlW!{WBT>GiH7T+S+r> z()^Q}{=(}1A_jlahNn;Qf9=su{{rk;eD$eH!{uukOKr*&H1JIf4Incm1b# zvmCy`eX7?l@b71?;vekga(8|;|7i=;{WlA?^B1^}_4pOOYp-YLzcE;k?@NQ()#URJ zck6$hxrhhN$M^39Jgki_bTPNBCq;VzY5+w_G&#<+xYb-#0Jy z`d)vD0grQnKk)X3h6&y1#NgQ20f{%mTe~Ly-CVmGXOF+|`pNxwef@Hq?UrBYzrGIu z0Rrv?kVA_+<00(hRHc+9%i=W#RWMme*%uu^+4{;{a8{JQRk;A_Ebh@T6bk2ihv|Z< z5J{=W3r~`d?bNF!FhfnAn%1&4IX!HuNZV|WiBE(AXvkPIisnkt;|bc&)K?_MyeYF2 zYg7mCc?)Q3VlWEWyhsOjcU}=@*&d?ZGGt4%)?bO>H)PRX%Txcc^hoC!a8l;E0C%q$Pk^vo)3Wz-MR5o-Gcx;WUg3Priw@=c4Vrymlj zt6&i7IA^iGG5L#7!+S!|6yc4?R9mrYfh{7RGq{2G|84MV2Nq36nT_+9D3uBF7o=<= zRL*A)UH0w~#w zy)@jKuLrCy?ejeDbB$%5T3UgW^;oxOF>}4K0*MU`~N{8|RliEMB=E!&*7j$mj=QQ86!E|>8K$4J7a@3ww<^0InOnb%@iRR;4m zbTqtbnTIDH?f@K^2{FPBExQLR*_4`B6X3@v(7{h|ga^me+5*Jnqyx}iPF3#|4>XTr z6}1}ETd)MyoJgx!&>&yQYWu2>I6~^c=Qo9Mq5LoX!!L^TPFCon(r9F69Wh-9+Dvd0 zbC$Y%8-VF+!gtt}$^zL^=TVU$okD@*F}(SNxbeG2IqRRXl)>hOGpFA*CQX~kUZp(* z%3vwM$&0_(7AKBgoC`LgHQ{~r=IdnCoJ1!dy~$lj_y2_Yi#o(de6Edvzs_tU{oCWp z)ICxXxu*fADw^>i>`&yUg_Ybx<7XSx-c2%-miFNujkK5N9S1teK5D9U-@0&0opmF)2A2LDU<RTM|z7 zu7-biqcFSAA{fxc@iP}YyYChc&SP$I4SH19X1|w|OsVT2KsuC%+8goUTbL34b*ir; ze(`OdkLF*&ucJ4aGHhFu%rh}x&89Z&MVVbUFY!kfxuH(rUrw3wiqWp z3S642%+v#njap#{@7y5z`ma3lU)EykWm@p}+cIeJcxckIOOCOE(eo{Y9HGu7;C-Oz z8|jx33Qn*aSd~S$zl!0f)uEl{UyLJYz*j^)@wcTTiZz5&Ht@{~x!_EKgemyQMKN4# ziX%|awUIv&=G|hO1@}Goy08tiRz!vzkkpWIhCpb*?iOcSUrh~|A)DA*eb<336j2M- zp+=v-mp3UAa>@|E#*I6Fxg+&k#u7Kz-n5`t4Qd+UQcG>>=gvPwW@)ZA6uCE?o0F_H z>(wG%T&-kJrOhH=5{5i^srwS10UMIassNXYk-}p? zB@!m$i@I5`g(c#W?4!RJ^f<)8hCJv#*_uz@Lwec0(9_S2|It62fz2f_7Y5re0|Rb% zvt^DDhrcN?rk$dGZ=dI2E!Veb(Xq=7o8-DX{#wDY3G6m;jhRVwLp*nN0lI{aMyP99 zNO01F9XdvSy1O}0ciL&`zowW=eBiM#3ixcSbP3anL6}5DJj*GaIiV8Ry&Av0O*`4Y zRc~jnpv{z4GCE*={?7juiiRNa8SN9sc_&8PyQ5Em+`xzA@86aLth@+%IF%`j`Y1l zsTG)P?Wkc%Y249EcYk)g$7&lh9A5xrcrUpA0k%n*`cday|M)gQ>jyh$^wWYZM)bQq z&hfP{e!_;z2N}87O^6i)kszjuCG1FJDDE4B5hskMPy3H#_eOP{1gJva2BO58@g2PU z1EtAt*02Srs`$ZvPIBAJp2YaQ)8Y^-LLI zQztc`qemKO-jm*`c8_ZUtVfK6cnYgP)FLsXARY;@ERazZ8bf?wy1TXWn5k>Fa1ET1 zQYA+kIOK72ENPEbuXE)rD0df~XNkfQ6>>sevfkdv*-^*uzl>n;I$6N3=M8vQBBH*U zGxRMyMOICTXCFG8o1sxF(>>08oRBc2eAq`&xhk$rA{tHDGa8d-I~Q>*PAgl)`9rjgxs zR!4NY4PokSvCgY_GjbF;dv!=W@gT&oWIc?Ba$Uz-<`~1-Nhy9nNPexU(1j#MSn&;$ zVXmx)X`(0Tw4J!VWQ6N;b1O0LbU`Q(u8by04j(jb-H%SqXVtL0Ji9t6&oLn!lu zxs#I`G^VW*)ld{1TQIHd0e_Bu2tRxEEqUNFifIEZ+u_s8udXxdNzHQb9$#M-BLk25 z@TM9{wx9b>oQXyQ0YgGy0r4&fT(*#@%Sr1Ic^0{)$AaV8Vi0ux39`GbDLm``3&+VO zmen&ec58rIui@y`sRbG&VLQT1`QZh8bqPO4EnAM9b4}aHOSAi0z z9bQh!{|Mx#9q;ry%Mu)kd@0XRGz?qed&qP*;<*K=R^hXi>S*b+z0<?DH@h80xdv z*6iqP<42cNKMDtC4sz_{bj&fQ1kzCy8(Jv>Z>3)R_v&j8rjC2jVZQp+JvDcZLUKcb z_;`7kYvDqf!VJqn=E+#*Y&q&wdu%bCAK$lxeJlr!M9`ht%Wr5RfJIZ7v|=VJ?y*(OK`Uaj)8t1OpatXHM!wpzsfT!j z_~t16ebRFD66%5*bYPWvy>K(8H90OrcUO{9WC^El)Lv-p8Tj(s6N)*Vv5}Xqx8(xw zM^tb5oM)u`T)VW$UhW553N}T_wz2e%QULJ0045-uArNz7xC2aE2L_c?0l}sr>w}Wm zhlg_&3mop~Zk7#dMWq9<^%HveN=ZvXI*D~?1lyue4Z?N90vWKHtHtVD#_}zPb#{Oj zI_^#jxPjQyjkinb&5bKFt)g^r4BABLZR|;7M5hKS4E=CY;Dwp<`7A`m3BC6=>xS_z z5(9QOSoR6AzS%H()22VT)+D>(iDr-$K{sqRc5=XMMxc4Sq}JKzFIQzV<@rL};4xgG z#BwSQVEv0nL#m1z=8*g&0OOSI6b#cboj@=G*l+{5bcn?FEgE{u zE!7E{j*#Z*De@SLQHGz9sqT8yM5&R)gW=x2Tu}~G@%w$zRT>L_j-@E;ZfVLT4+Bk( zT=bFZaB^_32tg)Kdo0Tm`|5h_oZV!p)%%|Wo`!~Qc@TQwgF&k!Z`mjx>Nxbb-p+K? z1fd^8^SaXN8awmZnZCQF0+iU&oopY^3N7|=Z1Zy5*V1>G;Gk@pI_BJJ2@40ZUB34r zpEA?Zr1~{*Y8LFb6ywuP>$aV}(h|%V!WiBC%@obTI54WLoJD6z2)5Lf-7Acg^16eJ zJv(e<2q1tEFSfPvPJBxxejFrFaM}|*M@7=h-IDMErUd7%w1x|B_0mmF59*oMUJtY}+K_?(Us``MUG zRwxM)&pEN0sjhlgtD{I|zrR2bZS|*Z5wl4Fbvr{bhiRkD{9(hSq@JqW&>DvD*LdiLv(;-q$Gpg2LrS29VIHD|IbVZ~apHC1sH7feI?g6t76Mn~BDZN9Qz zwdVW%z_&&C2fQx}a{MJG4e^qEO0%f0-7jfNVe{x~UETvXRQB2A!#kX@-dR4fxDu?0 ziwe`A)}fx|JxFQtcv+-boQ?YO7T$;o>qyM#kq}dWDm2|+Gu|(kP}5F zWZe_RAL%|u^PX%m4;n+y6s&^TD?L6@%eSju0^n7S0cbU2waJCXC8KiZHCeT>gD*Am z7*EN3Q0@!##(171SieYR0>m;Qta;F>_Pa>cqU{@19s31ePkGPy#mka>_3*+97H?%s z_35=s#1v2*%I$kKo7ea+sdr^x-eD(g#h7Ktu-u6LYLqzU-&IF=q8c2bb1u2)G2w*%2(bA6n4%y%_9HSSG_F2cVwfp8=1 zghQrsHpso8z8Gx;u45U-sK1G0o73Yo@T1Gkrm0z&JBh6iav)e`nDBsu^^&_Yj87@U zs1!D8<6@r-$XVtRzK0gcPVdDl9LD&OP+abq|0}Wl6R?_Z=u(XmpgY}5!TdAcB)m0c zAD1Ce*?p0xV48$|o^aO5VpA zT%?ZswE}{up6p;GttpL z$l}pnGZ`gB(}?<|XgAel3gB#nrnkKM@S7EO5JXHB%>|9!YMsf&0!i0QSHww6`v z_Ix=t3UqGmeHQdgHRB;{mTytRIpo3Td1zPx?lMmm_-)`ya6aW~!s&Irfp?p+pLTDWOq@{rYS1bu#fvplwUA?NK-|Q{1Bcv8P4$R0b3x=KH3N zEA^~yZw9L~PlQFNiSoVZhz`}Iv-n|A?LP5$p_vN}C3f-g`?cFPi|`VJ;v4Tls@!56 z8-@Pp^2NM>{L#+4j^e3-Uj=rPdmni>K1uZFSqi4FS8FtvU!B%c|Jn{Xt!h4N1D)|qY8y3NBV_tzyC z%(&y?8xJiY^}TmD-XnnN%W45n7kuTyJRjjr+N=n_l9XdpdBED_^A}ap{ro{t6#ksc zT&+c!*ehs+_X%}q(N?IjhXn61x%{@pyw&{2%okdn1Y1f$$>x;eq3=J*P}xB(3@2?* zcy|X^bNTcWuGo)8$TIOzhO9PWuMV|PTpQ=2Xw0RGWHHb7U3KuAttXR6ALl2gP?X>) zESx5+&LL=4QJkI@(XAK*T7<#ALk?f04b91j8(P4w0#a!jLRnb3q8mM!Ut~mBr8OZ) zI7@&}Oobg5MK$^uO0x9$Y*Gh&8N4-_2HR1dL-ZmA_$Pu9$ZCi%3P&;KjJ&wTLrLEa z{9-W@UP3F#b5wmM>e4{%UpX6U(`=}9yq0Ul_l}T#wW*votB!)5OwZP=Qvp6Uv`yK5 z-=WR2?c08)7<=I~P~*vFx%ai~;DSIH3p) zURo}?-xATZg`@HW#;svOY6}#|aQxZ@I-j;_XM%rJAJc9j*n{$F1h@4K+p2 zU5WI_@_82OnnUK$g7^9~8rMyZ*~GBiYL>z)g0)O8gOhePafy{q1aB(i31c|DOs?ukZta94nTVsaI=2_DpKm5S8d&l8%tS;ZW$Gbbh9H_wu zw#||t%z^McyPj;n%jhIrIVqDSH|%&V>OA`1$d7#h!pv4|IL!wk5teX6Y-j0hoK`M{+{!7R|X;a`;+hE7KzE&63o zr=no>JIuAaekDbZtSY`oIfuAPPxR`IkG|^r-Qsh_eYKOVx>l?oMRN!~@6qciDFse< z&$qA6wu!&UA6zdjIaE_u$dhupsM!~o=~b0$n|2a?#Fys+<@(`)v(U}XblS}?w;7`LpwK{i5E+S(^|pF13xli zvh?I%7mauo>()P~yZx$02@; z66Hj_jE8}8#W)-MkzQ(S?{F(Ix4;EQEw6!lCWaE!Skg6E_#N;RBehqmwd zi;0dW#17r6N4I2CJ4~URn376+%k~DUc|CNnDqsP=n-e$U-tu4}?&afT-)63lv|28oOdD0cEZ#L?Z`4R3^bqnQlMf286#uC7%Z9&u( z=AE)i{}a4y%BLsu(ZU{wGyKK>?Q&`=KHZ;Szmy3;@+|Dn( zGrl`mNaBh)BC=u%OID(UXw22Jw&Vrj{a2!&0-Y!=E6S@HdEPX_C3HTUfHJh51{Uhmtf;&OywjGqB zRF^0Mg9GwxGM($Pvlf`;c-~~oINQw~lIM0~i~BGbM_m0=!{($qes4g4Xyl{a0jX;G zf}86ed40nHY4Iz{H3^gM}e46-o013 zK>d8UhsgKRw2#@zj04(Cu%&|^&j+uS&U&dvdHV^3lmf0%lm%ee`o>o5esNP1=kriA zAJ)`pWyQJOj1DRMDu8*?7qmncmlHSV9g>Y@Km>zwYNDlg&z1JWitk1cFc{zIt{zOU z9eYO??x8TpwNMdSl=y0Sf0jtA#dOIOI)1PcN--@bmrp)EZ3o0UgGn$Bf0=x>7g1T6 z>uPG0H_a?z-|I`b_S>F&FSh69AKdA;QZQ_PCWWI>&_OV5q7)h-U@WafzMU8Q#<<^{{_^43UpF zw*Ahw(CB52P*mrCT*NwAGUCn0V+z??Vy-uky=YVh=_Ow=IyFR@4_4fVxBBvHP zTh+ZdODvD>*$T*sgG%ag^U3GYeR+%*DuT^ge>oe!90IQ#r=pWfNa(z_Fy75ItD}% z?iXp+4;+Wv!;Z8P6AoImrYhLxWu#sF)z0zns#{XSVR2|-ZCw<};D~>;7mI=RZ8<9S zx3T-Q+ z5!c(@KjEmKzMJn*C2#ESK8I!z+(F_fw#X9*eC#H{hh`!NASeD<4ugGSAuaScsyQ_< z+eU6@8R&pSe?Qb)tX_Q0i-)_+g)4827?nfAF;HQz$ouQ+=463oSpuV0*Dv2y{_8xM zTet|RKl*qud#s#Nyv^1555g@ZVdEg5Cc4guJ6)P8W_63DU!(?QujBA*!_9(QUkueG zO+>>(&*(J2$wf44B5$8)R<-atj>gidL}!30!{K|$;3y`}nL1Dz`l{6VXX^-}XGhZu4eaQ!Sp$SAQaoVC=<~xhC#kfHE zLr9c-23Pra)~TYY2yi(_4IX}>myIRw{PktDe)Um#;QHg_F{OYtpY7{sp-5Td81tI2 z+WGp&d<17aO$WQbKOHYo`h?Sgok#TSEqVRoP#lse{B$i`Pd?Tok(`%(;X*23PiHU; z3VUujXW1>T$iB}{d|pmsv?Usa^6y_cC?2DQvU~8Ig6}oi2FLL@x%6r7#M0K4!ZBftOaM^+(n_0~i8wx!gs zCHqfP-lUO)T)V!0SuPHv)}2{mFgu$Tb`DCR#jpF3GTBO$kv;=FnnK(#T(9;UY5L z1%Am~qH@5DZQ9g1Q+yyZxoBdSI;qEtG44jJFthWsYM@Z5#_F8L2{Z9 ztkMe@Xm}}?wslTaDc<`%HM+@K!uvt0NH*as=i|$wWh8|;+?qP@K;Jk% zo_Cz>DG#GwRxG0bjP;@ruH-EXt3qs01(#0RGn*bwV;I)ZOjRM2guHbfpr&&tcs898 ztO5+X>sEi{G=kaHwLkcT_CC69_Ksc!XByJ$$nR5ht!i+ma_|8s*qj>N211BBRw?R2 z))2IdzLV4po9^OE|5gyloAP*8?kiX5p@L6D;N zvM~Ml$!U3zAV>6k&5>H9zmA;?zkQ^+Xtk5{#Zmk{sw)5M?yBNz@6&QKw)htc(AY0o z-CZ-jhA^IZz*QEwXl-QZgY4RPxkh-bjKI~7!Sty(mmYEq)+dop9Gdo-+n%mD$T@8* zPZQT_IaABVCFfc@a%&u@q51FDY*at=*1F~`z&?1ZaU%261)?H2yPa#{lTQxvKM904 z^R@4OhW(I&8|q!6m9&6eSUly=&qXMZyN;THB86G+(`2OkCT2 z-Qbpf6i6#3XG@h)jEg@(PL|$1N(G;>iOh3(xc@pw&@5j?gtL;YL^%8^q%Z$L4faL` z_Zq7f$=ili^=SAMlj4WL()v2|%`b0PLcx`-(n|k3FgohXlWnnVsa{w13FQh1c`X}6 zadtjciidBfr8kxr8)XDbt8(0Z%pPUqX8I$JZkQ1VaTa|gvHc$RHgo(@!)w-zE0{6< zwYRNX&4YD)B*SH$J|ji;1W1%F)e*tTl=5+*j}cI3x1iNJhj;M!U-ZYioB+_s%b5ag zKMs8R(_XVqkZnHCJLqVnoKz@YHjNIFWED5sH;7@lv>u%tp06Oyi;0U6_jpKNCv794y zQiL&uee&$fjl5k;j($V%9$hVm$S@0e_G|E%+#LYC=R9$3Y&A!utR+Nn>X5^y5f8*r z)8AHPZZQ0D*U*c~`q{P-PcnBy%ibp!k@r$Mhf*~z87{|TUrMfC@^TmT$Kv@6--{bZ z8P*zS>vK6>(?I!$jNVYR^085vpW2*njT!NelAgKD!G&+6^lIA z>(DYF3)R}%!}3mcuaL#Y;2O(SDkuYQ~Sr^Og=xio-7> zlbJs)8TF~4Ssh(VlH z29Y2w_mn5Xlc21}Z%u~zl}^`+`k5CzoF$bhe`hWfFR*YCx?!@y6w+%2;6ElSX*k;RgM%6dF%EZM4a){1SBV|-=eqMTruEtrcr`ag zjsy*FD)l>9a45@=q>_kj2kOj0U%v2)&)8(-%kwv~hiUD5!n#)Pb}oy=EQ_*CK1yqQ!2P@JTqU?(%(8 zNC@FU8?VQ=f-+i-lPWdL`#_^e%dLQ02NMfc7cF*rj$c5+VQT+|Fhlue;%V_(eaz*6ujE~Y0eir%BN6tE< zunn)`tWObdlQWGbUH`Nz!_>cVJNt7YEJAy9ryq7ws0rHNac!|YID!jKP@hhCx8DoY zz(IQRD=_Qmh@GK$?wz(Bul8R1I9b|3qKf~6m3+TXF55uoSq>8rmeAPDNDL`Gz^(PKdL)Fh) zZRP573EpLW{-$i%bmd_Ic()jy`jx;2c66D7FaB3f`roEe1Zre3sLK~1+$rQWGl2SgkWaS@nnJ3oU0Jl$j;gB7G$BQw zPsSex629%X`x9)DsCpfDyRW_o^MFmv2SI;f#)8a2NZWg&+5mYFy*9jJ*=xvG_}~mW zszM1K#occo2}YFF6CJxh*T`|+@P00l7+89ZActu4$Z_lr;tVz9fR!x5&g=VxJOFkLkgaD4DyTni3fCa|DS zLdNse)M}2cOVVEdYFoRTA88pPM&u$VlJJd19YE?DCBhQ#;52XXk7QDl{Dv-#Z{ZUk_v*Gf^52meQqg-|4^;zG+bjb^MFyLaw zJk)_BTYTP}*2yt>)J1oXy3X>#<{N>wF33Vt%JbUYRHCZqy(trMb2_UNNqp3G9YY#k z32eHN>b6?B+auaCai~ZdPUxaD)>$W#daSQLmk+>9a#jhs_CJY<3hF1vQkNDBB6M}q z=E(PnVp#hI{Fq5Kp==555WNaJFk7+>zMO7Zl_jk9{InIT#myU*BazO?#s2`cdhi7-Pl^?r(~~>1B)%Hw zx@RByDe=Eh?c~ik>oz((q*IA7>&dpWB91|EqGiBF(aP*i6Qqe!ihR8fp)TnG3j{mD z6?+GUYGv$Vc0T`|DR9`JCUNYuz!lQ1N)79`CARDozyPy?LVfaOO*`9r=Ecvl!=_1Q z67o2wLVc*f96jkW@GHmjwJ!*C6ETE!E|zI1cw)9@L0xc3SJ}Da2+;gLI%=*3r)2#b z;1NL1jfLQI{$x*6#Rum7fM}O_drBzj(s*D}C#@Km;u-vQTV)iSv5%u3W1OAxcM!!NYWZ-#O@OzyXb+ z_RLtrVM$4V8gj3iNY%r4%4d2mbEeiuqDaGQUr7kH;n7dFE!J+)m7pc_!-bGCw&EBj z$Q4m9DFnjfLBxX&5>!+JhVB5lrxc+n63v(w93Qov7wbXl+Bkgw`yQeWozVK65B}U}3jS+@KYS zmDNSP^ii8}_)>&Y$6rfEQH*1L7W$VWnbd z7ScMHpeEg}9G_WDq6u35SORgNXp$D0p~0v2ycOuePq=oZnAuEILWv0jzf{b0fu5le zwZJUGcN@lBxgAUKUK^HR=d>&#p(6DoIj%^GXCjwe7(-{nd#1k7!i)z6BzLU7nCR^} zPC~S}i7#_HYCNyJ({T3GO_(&rVnkk}kuH7OGm83SO#F|tHg}q;Tcb|+8d;7*SKe+8 z2=XyN4Ilj(uc=Vb&Xa_h#BueFU}*i%!e3RPVXV5oSpu|32|^!Zk0Fn@0kADtX$41s zI0e>AJS;c|Z)ICT;?GMcy3ZN~MDXQ(&M`7VL*YRX`sH_m?_~#kAepTF`Cyd64X1yS zaDks`QNU5X4h2#0d+RAJK@cE8c^WK2Pp75SUx>JiL^!6PnEA&pYG>aCJbJymVPIzv zq18!YjN@Vr$IwUU?6?=-ZGsm;Kh_*jLD9@MypW1_r zu%Qb5<3M~rP8fC`c`y_6Rr^`)$cMa2e1K-rpA{q<8od+mDUN{C3Qz1GrIt!UninV* zMV!40bxid>Ymh!tYutPYrSfcps%>(ay=`%=QCCk-!dOAh2&zxDEO3VHTRp*#1IsM5 zbsd}_yvT7El8h(~m)`8x71?p`hYUD}sLW3}!p;3Z}<6Yxa>tLZ1%d}meKRZNVhC-)2|W6-(+nF4a9=rkLF zFW>o!w4?+#i#!Hg=86+Lh9 zWE}wtf{7D�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 literal 0 HcmV?d00001 diff --git a/week05/hard/server.py b/week05/hard/server.py new file mode 100644 index 0000000..78bc2da --- /dev/null +++ b/week05/hard/server.py @@ -0,0 +1,124 @@ +import asyncio +import base64 +import logging +import random +import subprocess +from asyncio import StreamReader, StreamWriter + +from Crypto.Cipher import AES + +from pwn_utils import utils + +log = logging.getLogger(__name__) +clients = {} # task -> (reader, writer) + +KEY = random.randbytes(16) +FACT_STORE = { + 1: 'Rumors say that the most important secret is secret number 1337', + 2: 'The 6 security goals are Confidentiality, Integrity, Availability, Authenticity, Accountability and Controlled Access.', + 3: 'One of the first Computer Worms was the Morris Worm in 1988 (https://en.wikipedia.org/wiki/Morris_worm).', + 4: 'Cloudflare uses a wall of lava lamps to generate randomness (https://blog.cloudflare.com/lavarand-in-production-the-nitty-gritty-technical-details/).', +} + +SECRET_STORE = { + 42: 'Answer to the Ultimate Question of Life, The Universe, and Everything', +} + + +def pkcs7(message: bytes, block_size: int = 16) -> bytes: + gap_size = block_size - (len(message) % block_size) + return message + bytes([gap_size] * gap_size) + + +def cbc_mac(message: bytes, iv: bytes, key: bytes) -> bytes: + cipher = AES.new(key, AES.MODE_CBC, iv) + message = pkcs7(message) + last_block = cipher.encrypt(message)[-16:] + return last_block + + +def handle_message(message: bytes, iv: bytes, mac: bytes) -> str: + kvs = [term.split(b'=') for term in message.split(b'&')] + args = {key: value for key, value in kvs} + type = args.get(b'type', b'') + number = int(args.get(b'number', b'0')) + + expected_mac = cbc_mac(message, iv, KEY) + if expected_mac != mac: + if type == b'secrets': + # don't give any info for secrets + return 'MAC verification failed' + return f'MAC verification failed: expected {expected_mac.hex()}, got {mac.hex()}' + if type == b'funfact': + return FACT_STORE.get(number, 'No funfact available') + if type == b'secrets': + if number == 1337: + return subprocess.check_output('flag').decode() + return SECRET_STORE.get(number, 'No secret available') + return 'Unknown type' + + +async def handle_client(client_reader: StreamReader, client_writer: StreamWriter): + try: + remote = client_writer.get_extra_info('peername') + if remote is None: + log.error('Could not get ip of client') + return + remote = '%s:%s' % (remote[0], remote[1]) + log.info('new connection from: %s' % remote) + except Exception as e: + log.error('EXCEPTION (get peername): %s (%s)' % (e, type(e))) + return + + try: + while True: + message = await utils.read_line_safe(client_reader) + if message is None: + return + match message.split(';'): + case [m, iv, mac]: + m = base64.b64decode(m) + iv = base64.b64decode(iv) + mac = base64.b64decode(mac) + answer = handle_message(m, iv, mac) + client_writer.write((answer + '\n').encode()) + continue + case _: + client_writer.write( + 'Invalid message, expected format "message;iv;mac"\n'.encode() + ) + except Exception as e: + utils.log_error(e, client_writer) + + +def accept_client(client_reader: StreamReader, client_writer: StreamWriter): + task = asyncio.Task(handle_client(client_reader, client_writer)) + clients[task] = (client_reader, client_writer) + + def client_done(task): + del clients[task] + client_writer.close() + log.info('connection closed') + + task.add_done_callback(client_done) + + +def main(): + # start server + loop = asyncio.get_event_loop() + f = asyncio.start_server(accept_client, host=None, port=20205) + log.info('Server waiting for connections') + loop.run_until_complete(f) + loop.run_forever() + + +if __name__ == '__main__': + logging.basicConfig( + level=logging.INFO, + format='%(asctime)s %(levelname)s [%(module)s:%(lineno)d] %(message)s', + ) + + # "INFO:asyncio:poll took 25.960 seconds" is annyoing + logging.getLogger('asyncio').setLevel(logging.WARNING) + + main()