From d6570e47cd571af2e1c26d03fb995201796bb158 Mon Sep 17 00:00:00 2001 From: RichardG867 Date: Sun, 8 May 2022 23:48:36 -0300 Subject: [PATCH] Add NEC floppy self-extractor and better handling of PKLITE'd executables --- biostools/extractors.py | 109 ++++++++++++++++++++++++++++++++++++++-- vm/freedos.img | Bin 3145728 -> 3145728 bytes 2 files changed, 105 insertions(+), 4 deletions(-) diff --git a/biostools/extractors.py b/biostools/extractors.py index 2748d57..35b4a4a 100644 --- a/biostools/extractors.py +++ b/biostools/extractors.py @@ -1958,10 +1958,16 @@ class PEExtractor(ArchiveExtractor): def extract(self, file_path, file_header, dest_dir, dest_dir_0): # Determine if this is a PE/MZ. + if file_header[:2] != b'MZ': + return False + # The MZ signature is way too short. Check extension as well to be safe. # This also stops :header: files from being re-processed as flash tools. - if file_header[:2] != b'MZ' or file_path[-4:].lower() not in ('.exe', '.dll', '.scr'): - return False + if file_path[-4:].lower() not in ('.exe', '.dll', '.scr'): + # Cover PKZIP self-extractor (with PKLITE-compressed stub) + # with an incorrect extension. This does appear to happen. + if file_header[30:36] != b'PKLITE' or b'PK\x03\x04' not in file_header: + return False # Read up to 16 MB as a safety net. file_header += util.read_complement(file_path, file_header) @@ -2294,7 +2300,8 @@ class VMExtractor(ArchiveExtractor): self._floppy_pattern = re.compile( b'''( FastPacket V[0-9])|''' # Siemens Nixdorf FastPacket b''', Sydex, Inc\\. All Rights Reserved\\.|''' # IBM Sydex - b'''Disk eXPress Self-Extracting Diskette Image''' # HP DXP + b'''Disk eXPress Self-Extracting Diskette Image|''' # HP DXP + b'''(\\x00Diskette Image Decompression Utility\\.\\x00)''' # NEC in-house ) self._eti_pattern = re.compile(b'''[0-9\\.\\x00]{10}[0-9]{2}/[0-9]{2}/[0-9]{2}\\x00{2}[0-9]{2}:[0-9]{2}:[0-9]{2}\\x00{3}''') @@ -2333,6 +2340,8 @@ class VMExtractor(ArchiveExtractor): if file_header[:2] == b'MZ': if file_header[28:32] == b'LZ91': extractor = self._extract_lzexe + elif file_header[30:36] == b'PKLITE' and b'PK\x03\x04' not in file_header: # skip PKZIP self-extractor with PKLITE-compressed stub + extractor = self._extract_pklite else: match = self._floppy_pattern.search(file_header) if match: @@ -2350,6 +2359,7 @@ class VMExtractor(ArchiveExtractor): return True # Run extractor. + self.debug_print('Running', extractor.__name__) return extractor(file_path, file_header, dest_dir, dest_dir_0, **extractor_kwargs) def _run_qemu(self, hdd=None, hdd_snapshot=True, floppy=None, floppy_snapshot=True, vvfat=None, boot='c'): @@ -2375,7 +2385,7 @@ class VMExtractor(ArchiveExtractor): try: subprocess.run(args, timeout=60, input=None, stdout=self._devnull, stderr=subprocess.STDOUT) except: - pass + self.debug_print('Running QEMU failed (timed out?)') def _extract_floppy(self, file_path, file_header, dest_dir, dest_dir_0, *, match): """Extract DOS-based floppy self-extractors.""" @@ -2393,6 +2403,17 @@ class VMExtractor(ArchiveExtractor): # Create batch file for calling the executable. bat_path = os.path.join(dest_dir, 'autoexec.bat') f = open(bat_path, 'wb') + if match.group(2): # NEC in-house + # This SFX has trouble with (at least) the FreeDOS memory manager. + # Work around that by moving config.sys out of the way to disable the + # memory manager, rebooting the system, then executing the SFX proper. + f.write(b'c:\r\n') + f.write(b'if not exist config.sys goto sfx\r\n') + f.write(b'move /y config.sys config.old\r\n') + f.write(b'echo o cf9 6|debug\r\n') # TRC reset + f.write(b'exit\r\n') # just in case + f.write(b':sfx\r\n') + f.write(b'move /y config.old config.sys\r\n') # just in case again (snapshot shouldn't persist changes) f.write(b'd:' + exe_name.encode('cp437', 'ignore')) if match.group(1): # FastPacket f.write(b' /b a:\r\n') @@ -2461,6 +2482,7 @@ class VMExtractor(ArchiveExtractor): if len(fn) == 0: break fn = fn.decode('cp437', 'ignore') + self.debug_print('ETI file:', fn) in_f.read(5) # rest of header size = struct.unpack(' 0: + self.debug_print('Using PKLITE temporary file:', tmp_path) + try: + os.remove(exe_path) + except: + pass + try: + shutil.move(tmp_path, exe_path) + except: + self.debug_print('PKLITE temporary file move failed') + exe_path = tmp_path + + # Remove batch file. + util.remove_all((bat_path,)) + + # Read unpacked file. + decomp_file_data = util.read_complement(exe_path) + + # Strip any remains of PKLITE to avoid infinite loops. + if decomp_file_data[30:36] == b'PKLITE': + decomp_file_data = decomp_file_data[:30] + b'\xFF' + decomp_file_data[31:] + + # Run this same extractor with detectors pointed at the unpacked data. + ret = self.extract(file_path, decomp_file_data, dest_dir, dest_dir_0) + + # Remove original file. + try: + os.remove(file_path) + except: + pass + + # Stop if extraction was successful. + if ret: + # Remove unpacked file. + try: + os.remove(exe_path) + except: + pass + + return ret + + # Keep the unpacked file around (with a dummy + # header file) for other extractors to process. + try: + open(os.path.join(dest_dir, ':header:'), 'wb').close() + except: + pass + return dest_dir diff --git a/vm/freedos.img b/vm/freedos.img index a1b9a865ee57378a0c54ee6faa93b5f7c647e02a..9d9c95fbb7fa922e78ad638a42164814d236b263 100644 GIT binary patch delta 54825 zcmaHybyO8!^yuf-+z$G}B`zHT(hbs`mqsKM5V7b~@1;9L3>5vM0u~m6A{GrIAPoW{ z-QCUO_tsl)t@qE{vu5^LYv!CYv)A4edw+((sDv<%*LQggwhQ^-#Y*t_?C^1?w z%?Ztrgl1?$Gc2JQp3saaY6d;%7A~HE9{>SB;0EW>ktiO39`}PRAJL8#tL*<7R`05R zpfpuhRaHhxRf%eC=BPt6pqgAcCr#D4bcss4aNajKh)VMg@(v93_Co&8%>P%)pNLfO z;}HO$4nl!Iky3O81=7M_4l!@xx4armrF&nw8gky3dfEH()xZd$*~$gMm9@eeDJrm= z(e@R9?n&_j)-;Be0;J|M7V0sTemF3(RO`M_fL3B-p&4V zl~bvtp`SJ4s_D;irmnA_z@I~go!`n8C?(}8h8YIhX)me^embAc_-RrX_0wI#ke*Qy zvwH|@3*bx*p=E!Nvgn!+uzYvl#XB=D0P8V2dy_-Y-Ih? zZU?ywl}syc&XSwJz%d8$?}$*y4Bfoec(LIiWe&yq^V=s4OO*~a8^h<-KRrJ(%zPE@ zK2#g~!B=*!T17p@(uR zaUS<`MUdxDqx&jPQ$jnso*cEm0z}#yB8r`aBTh4(t!MmoyUf<@>XNz{oar<11D0~I zamW<0hTPs?rEL5_GdEq4eP-aMmfr5BoRSl)>8_VHv8A!>U#+KO?do&m27EXDT2{Z$*7cc{B<+=FV@5GP zeubiQ2@hQMo8dNpiwd|;uVt?BkP2sKCTj}09d5ohEb@6NN;zNcp}+Sv`0aP5mWJ<; zmfznwTYA6$Ul07>jkLmqwll2vTKu6q%I&gM45ZD_)D7Y@H2n{3axaUwV8XHvv)c?n z+&{wK!8EJFB9rR?nx+L_Y=1p^<$VzVyon~R9KDHd{|xJ1OzMa90f3%Hw_C#lEY``~ z)ZE%oKo@vKr(YA4RFjuckw7T(dy+X^ESxzkeSO%q0ob*3((c}u&R&l~ditLa0&qTl zetPHV5|`*czCmmPm$a)w&U(^APD(%^ z+A%XNMZCHDMH~c1)$XF+GtZW}oB$O;z1I$)FX-{g;D5Ft;B*%Ga&ScF#zEAPV)GAu z1?-3ZKgbGX5_r2Sk_-DC8@q#iq;eLHqvPp{BmmTkk7mcGuEDNpDl+z90#Cfe#U4eH zk#`+V==_Jgdlt|n(%Iz7rQpw#`yB!5gKgo%qqlaWj92iMxE=&XW}RL(ra&+_Ee(z8 zw;_=@>8+&LQE`vonZ5HRXQ1UsU?V7|CapVTDQP98plz-ekHA47!1Xdb9s;4KiZq~b zO!%KLfCYIhF4VnL zrUt?6m>T`urZUKL{idr;VS)lpQet^e9L`E2Z|mef6hf-p%)(!%w1!fFR!)Fx>lu%` zDQPdWUO1_#{#Qp*{Wo|#BHk%^mY~f~QTw?xpMaW?8Qai z`|NLCnp0KT>5xF`c*}^`-tOyKKR}GhJW)j-Q5iN>0O)?|{Y(XE_SQB4z;Lj$wS913 z`x+`8Vrr3n3jhRL5>a~k_eaOiKw!IwWI%%LMU_*M-BYK^rWhv;UX_!k-Eb|xGEnJw z@pO3&UIaa9Bmvkfg@!k9)sDT$gYG2Z*6~Uqy1j6Dktswt*d|>#+wZn;j?SYOauDGZ zb%R3TJnQ>Fn`qqM*w!M`>lCX%;%za8*rVB_#D+cG%%q$FRH_Ey=2-N^NWj}dexI5v zAtOV{r^&1}*}bu4mYEZODWfPUCYscN^(H6LUYh$n;lF*s=hMDVuEe4TZ$8aq>i9sq zIe{a|Nu#Q+N8hnDyz$HZlSYK-#g5E`t{xlt6E&ufBe1Uxnb4mXo*- zrUt^iSSFiq9K29yH&qo&?73k+W>Qa8r(Jb};dCcpdt>OWf^|te3Z@ zA!)yaLp^63f%!y6XLN7s2$~4V!S~q9tlyxH{N4Tt_k|(ECDCIWn_zb*m__N#!FP-@ z(d;^~$6-u+;TufmdX7DgU=9wB=n^asCnpaN)Bb1kLpA%C`6BrmtoHe871n)4b-+_y z%Rynp+ocKb$6v|x3G>?*dJJF4@%CJGvM=f}vTQ2tao+DK7Asp8w9a4Ff>%rxTQe_< zA!s(s>gbs<>YYm6#|tVVfwnHkl}X zd2fQ`XE*V1BK?)QSv=(SiwP^I2~jyV%L&EO;tAC|7wqWbYkwT~-xXoxmZinSmR-=F zxgoZNOv~EOOP0+P3M5fWJL_yWYd342s9=JbJq&@1*?OIxGGv|45f_>4AJSGxU&O*6;?aMm|?Xk{#8{BrxNp$MWuQUydA-lE zeetjl83P2ED`Q~yO|6nxrvxA~Y7wimDl>eeI&EJ1ki%nNz0dqaJP&RDtKm5%>-E%j zQdU3$;Imh#*)qkUFL0#8qzGv6i@yya4MXyz<5Z4MHkz5+#tz3$L^0@!t~LDk&N~@V z-voX#G0vSXn507&6<~&!Z>7pA$>UP)ofd48`o;f6r?=x_f))1i^SPyg zb#NGd$U8qtYux;zqb-EWew#c)c=`x6 z+P?tro;+7XWEbuD$PH8Au7s1duhs303Y^Bd#&SqV3b28Sp-a!yzCn%6Sw0bpLU^=%)x!O@3Fn@Fh@ zdfj(R?H3M9V)^e1U5hI?H4u39Ieh71FNxwmMy`VTGKFB&?+r)>d5)5zNbN^h%umr5?#R@^FAz*+Gp>$X2yQQt#C@xuspk%lCK=%8<>JA|9~@r>miR?r*}5{#o>){_QD76`&&(_n$`~OEyBMwqAw`&WgrvjGtNiO6OuFkPM%R7)N5dChkPfps>i+$0JkW-hnkf2B&2mA4M#CgK z@;g$4HqMQ5cmG}rFpYy45ScEa&0)>B$yFc4QZh#R2wS*t*GJR0?I$maC4-sXWX7h; ztEUR&q-W#n{Fz;_+L(3sC@?bw7mBP`n{hxJjF8V+vW82+I9eor(l{r+j%rF< zn&yotpiq-1aDqgTO^`mUo}%=WJIrEJP2K?^dR;pWg@;|mY$x`YpiI?`!AdeL>INKR zNo2DnL`vY6<;e~j47Z(3y=^V55MGEvNVe*eUyO5F;b&PK#GHFVCV|nK9}M9@LG=2F z6|)o&qrR1>f?)#up$}f%zdDCBM?e4Lz?BhY^sXx{zOISx`RX3wRum7yglPl*WK9i$ zL$M{o9V;R1C-BH$Ka@d#QcS-4G(HNx*OZ$B6?w70FwB%)aOpwo38*?OfJ{EhW?xuP z-M6^!$>avieEJ z$?_Z#10o&u^xOUcs0KM2vgBQEc<8+HSze;IvgC#TD*Fut$7KVmon1U1k5_uARe=)s z)RPR*IaGgfd6@2`Kbp0;9P(9tp!l5+XEUE--?!U#xI-hQN-nj1Ur>aXXnS$$JFtgK4R6h(tAF07A%G`z7v`MwLGw zUCR+>2PYzzz!W$m)p21w;TN@$=)t=_dB~l)+78HuPP2d6n`3brzZ~!Dt;-WtCJc z>`q85UVj%tBNPmC%ePjTt+|hl4?~dhn2gG-T?GWIM``HsoEp&-(YX3a9 zYl94h5>?~X1)_N&xUe9pel<7tp3y)58xT! zHPpB!hVPjk6AEqsdw_Vpb{)6Lj{XS~4fn6fwo@RhH*&<)PXJ*Stci;RYs_p5paf{AziuSSS;(w_#mq3FwFGiN9~^>pPbGUtgzI+;J8L{`K3 zR7Uo)rf%Nn3;Ft?3Q%Y>QHpwN{PTP)$YuBOEChQr(@Ro1P;Waf&3x+Dtr*ba z65h1y$qVimRxj=)N?s?9Ms60Tr2T4$Yr7OoWV~=(UO9S_K;Og@IYI2spqRjlAuO{x z(_gwV+8B{a*FXR&0dMrQ$A~L6uu2l)tzO^A`cw9n^!?G_*~Z|D@z_TH-^``jmg%1j>Q7iAoh2*RM^c_q`lh+i$BDt-xFN8G z&Z>5pqO+U0gAc{Q;McK#cW)qYU@#a2)R5;<(!c4$%f))nq)_XSkxaov~f!TFg_|_^{YS@GsMWIO7GU z{7?uov$1oykqxS{A;|0cC6}GQ?S^>Pc{`0J(fNVVxD0~~OICj4Ypap4o97)Ludxv+ zHx+VZSzL2sJb|z8#?vF<8PD%|%CMml9ehop88+B+3~${C2rD`XNO6O^8PMCr`N33J zicVGYwm&kS5G$T3o_c9oJW-q#9}H=Wz>fpW%r+;`)KeL6rUb8JZJbOz6-ekuy{pAm z*V7KrFi~z~^9{7+7!c^IF*u1%u-c5Pdy=K$`VLFi1!aLFJw4O%G7Wwvl=jXD zh=u)Pu~fhioSeLqYD|vPHhnw)M1L}MoTx=KWOj1`IMaKA^&9l30pwewj0`+{I~<$X zf$K`|$Gm9>uk6OYq4oUC@d~!IX3GAJba9&2{n`{{iE&Y@J8&aSJaqf%R-V_@i&B(u zcSFpb0(qY~wBJAo_L#Rr=jE!B{$b9iF5#DL@@A`DUYwPU6l1W6)g2p3dT64j3fely7X}9dn{@K{0hOR=T7#QRCgahaMaqb zFHqkQ2!?<>{yM>Y{NP}kX#56tsUMj5Vaov(@NL`@cE0OKcI=P17_Su%F2Ub$Gq_Ll zcqx7!{urV0&PEX2+;7HwIl$>f3lM{Z{nXL|IUja9GV&8VW(W23m?1W`P1^=)2Lnivh!a9&^ zxB!T05Vslo#vkK&etT-Psqk9My*V>%Tk<=Q-NB2;3jtn3C~f8M+2h7Ni3YRmhH_5kx)x|BTYRs=Cf4 zcRD|Q5?#fOS$o82)^DdpBG1ln+VsCb`dfkgW~e2?KWjN_`_CP?Uz{hLn%J5sVvWDC zh5`Bu7965rOKl4r?d(PW1^ERP+if0Ztpx!Pv+AeU>6DN26&PJGn(gbK*l(3G#I0N5 z%0oB}AHj7m*)?$6L?uoQ_9iwbdOsh-+MS;32=kZ}cb{3%KKUDTCr#cI`#3uDzPaaF zJW$a0xxp1F4dgGs6?-n6Bmw}oii;6PqGpQBJip^71c6GiNII)!(gIP6!RTjh;M&dO zPF{=SuGD6QoM3c5T{9d`I~qc?W*#5`*M(@yP4!mlDV_Zggh#Fy)<}P^zb@}idtHg( z9gyZ=D%IrIq~YTHRUW?CvEpS*&cd>6kDL;_`RE#4p&;0>8_QF)$)yTzX^4m2E>bS zwZoPxd#JE$tqH@xKKQ$UDMt|~%`)$RDzlKK0WCSt1U!Q_r%mZxKaj5;UQaCYsTOj&BW1He+C zE)sBb3LD}dGbIm;I5+QWU^V@XWsGH%_xyvG`Cd{(Q@ln;BT#=(Mp zH%cFX?7yGl{rePqt$H4*`n6Y9SXP?%yM&GGi0mH$vh2WE7K!V<(NA_s8__JQQgd zJA5<;DXA`!V9($H@~K?$-Na>Xf>wsAe3D&Fxl}8vRioMl@%Ij;KDzwKE>$3<`VqbGH>}isWj>DiAL#o$Ft?v@65re*8TDF0 zl>djq0?k|DpTQ}GdkS^8`oaQxe^u+9UwZxABBWp&1_824zwo`(Z188%z3T<{g5};% z-n7%*8^7oC6DaK6sr077#;Z0Wj7c&Na|60udvpk7~~8faYGJTp#b za+RG-@519okrj30!-!H`mL=D4mW$sJDoN`9Zn z)Apzc%3hT!iRc>NIeEtUX)?|dq0nT?-*WVCaXi-HK-UG>J-wG6h)X(yt*jDUo{&y# zv}x6`!G$xUn4xk#K{A#cz%ciJv2^EEnLm*;@XavMH@M+5yD^(qnzdn6rf3pR!XR@W zSkI`2J%$~{8E+(K)H)>_0swo031VZIg%)kL9e@Y+Bs@^=O0Q^@^^AD0mTi>Iy)y^lgc6^7 zxKt8V(gtz|fdXQ#0eaCa`ru|Qc$A>Ilz_LhZQ{*DXaHV-KEp`9-5=1j+YjWa7Qvp5 z?@5l1dOJqPTvXYo3qj$P8C7v*qK$D%LokOdTUsPX^Z>|>c2c-x~mSgU@(8 zy4uwTsTn#%9_#O3jUxrXVjpaZ+e_)NzN5=wMQ`EybQ`_8fo%BW4Q+S$a$t{USJ*`o z@Z6yY2XyEy+vRc@PEKV88dZ+am7*;P%J4!S9U|iZ{t$M8Hv%JQ?KthXZM$r%&(1ZN zdTW#S?QC=#;gQ+G20T76ai-u)f~(&&|7k*`tDLzNc5}hkpJ^pv3(fQp&OosEj}ive zhc4*4(eGk9W0Fp8L2laOZ?dglmEF7Hz0qg-P^u2PMdedA$6dqYJW7mMU0TQscz5nA zx=uh;QvXPUJ-X$_QQDQx>1HEL+?@Qwz|-*Lox2ig9c17@6oU8{0;v#sVh$#VAN@_f zDchL{aU$&R-G|+cZ3AV4K}n_XCnsNjK~)9Q0bn%|tDB!rj5gm+)j_D#1&J|_#&+53 z#!zJik`cKCp3#GJ9IrS$&Cty8{{p5+(WmL$*+Y8*Ct5Ggk+RdGeKl5mr7cW zX32np2S*RM$(;rVaaUTJ7*5mJv2!ef;YjX?90cE}n7_>o)7u{m^c5jc--TT$nl3bZ z=&|jFPPAQ4w4aCG#41@l6n%Q#W)CuNzm(=y_{sm1S6314n&<|p017j)QxPM{g)_B6zTjIq{StD`qFa81tVW%11nE!?a5Kvg<9oCrb1RrO$aFbNr5O- z+}IWWZrnbtU8Z1_XW!8-aYleQg#z7TFwQMdkuxsF>wnj;!vW9+j)!Yx$x1RXU({`t zRA(bC&ybvJUuf~J-72&4Th=SMEPF>;Oox!K_kE3t z=kznN=p^X-Zf3H*htDv9t!1y%@yKZB(IpV#vJQEWCvA6%69Tv7IHh3qeE$N;tBKa+ z)N%$N-=^PlI^d`NB~jv*rfAao<=|`q^HSfuwcVmk4uH_*hmG6k!SfWp;o?EQxpKJ?ITb zk<3-`{d!gGkU>jMfP_B&yMGPxjKuuo^;4${`Om(-^EeQAy&~ex7KD!Cn)Lj$2iq}r zSeS$+8gVG^2`fw^N--Dk_+Er?fJnu!P7y()aD8eh8mjoX)R4XhJVI-{xDE-qxPYCi z)IAmIg83rn(q+PwZHx8J8AT*8gkm#=oMRsqa8^K-3hpGu8r*5+KxIa9Iu%DjAX@ia z33eBgYjqSn{du>P@hTCpG6ZH)Lbd5t7xSx~DqBg%0Ed3ufBfmDdR>I~=i|$-0%QP`*Nf>9-hT5b3Z0qW`sRH>1wZ@#EwSUi5LfvY0X$y_wQ)q$Tq=w#}jew z-(C~BN?0g-5CA>6#E4(u`MOI=HwPaed2m7RH+t^T1LaGR=+``{4d?C+;BHG15kv@Z z8owDIOfWQxTVzQNX0N|H%@!O%L~*)fW0{wGPZmVhzM#df(agvR4=x9o*@g2x~G{x!o%fkaG!DlFII=%2ADh zvWiM4TB7+$MlsSkl5mHTm3^M;&Nz_^BgA`^X!)|V1O!7G8;@Prhb5zhr-KIcFBBZ% z!+GjPHC4m-YMg2z!mE7D8vbiSM-~Ni4tB**@O#plIcgMfH_|rZBi7x#C+xZNF593; zFN*jCUYc7W{?3ev`Ko;s8}#6!F`8)glsCpBsrVWnkY z$a3CtVaW6a`5$en-&kCh^P(e$nYdxyH)toT4XM^qj#l7?zw+`c@StTF`%0G%zML1V zgp>`o2(+RaWPtJQt!IZ>ar8CYbgaM!B>|VH(-S;zsk!@UW`8d^IK)+z^Xu$Rh`*L39%wKPEiQ3VZ9+wgM6nD}%Qyf)frmD1| z6m41_4UFz#w0uW9y%#sir*Ct!4icKl@XH-D-48NSr2)UvtLxhkU&x|NO%>!otwNox zK8}f%pe3bSVn>ldwJdA{mD5q2=?m~1@Q;p6YjxN#Mit74YYJBCh5#$v*ftE!0GUcS zJgjoLRD{=k1ERx~VFHcy0bxN`4HAhE3k(e42+p%01l?-_=vOY_zft%44;r__;gzIp zrv?qBvrLVuwog0~z+yj&Em0h7RYz0-sFo@XC9>jfg$VBr4NQ&IE>n60Jxn!?zB#0PPe1J@*A^R0GYY;vAAu$QnqN5+@SF(A|uH40C$F&zJ@QZl%s4)B0-4|JJvqGv(u}4F-is92BP$}B|ukCMlfA{QK zV&@}(X=6B^^OBL%tv;SM(nbWEEi=QQhnb{X5LW8$=xNr5;Cofcxr;BVtk5{!nJ@CnC4T<<^_R zkT*ngOfzW3j#+_XbRRlMkrb7?)Q9!c9>;C}2`mO13I%j-R%6G%I zC(Q@OAV3V0H=B(gN&Kz*J?o`507SWnD@5-{&IB7I4IDh$nFXj<3f(Our|b9l#bV+F zj7%yY<2s%Noq_>~4SAVv!}u(^FGu30rW62#u+Q65z7A|F3&rU2>A$H3fKMZ`U%by3 z;>u(gi|RkLqX1x||9(mTyyAMjPYi3&?-vt*$4R>-?Z&c4d5f*84yQr^z>V_m?o)+# z4`p>Uy4r! zJ*6tW7_0CMH|Q7y00UW6)k*j3DO-0ERkXOm&jQAZ=BHZnl?P-~v~PZc0Bilq?+j1E zw&}nRwD6{f_HQSfjNivD&7V=zu>h}xo=%!2TwAd39#0+xz2H!EtNJ{A2!6lFX7o=j zyO;!=FJ5Qao;5Lm4nxkGuKSz;JVvWk&+Rho_EMX9(_FR|%kc}95#?tv>H}ON-!Cu| z*RYdwB$2I1+LvE^R~~u6l+ft)-GG;m8TEL3O!o-t??AFZ_gi{)f4P!|7-h1#``WdHLi&(|E#3f{07(E<-aE9Rc|}jc$U2f3i>) z=F3*)ePmo`^lH^%c>Cdw#Ovdp#`dEK{z^cTq(fl3L84|tjv$1*dJ|Ph0K4dJ@FE7o zGoS1$%QueJ<)p@|5)*62rt7B18E25Y$KPLz#27MB#Dh)QnLElpKi)+4%Sb3Hi_Rj# zC$d;;kGKTk>7DOijxlUg-`z`JxfbM4!G)uCTP@kXMBf6fqdQEhV1Gkkald1L@(are zksGO7Tj3$r0OJ!RdIz?SUnj1FY7>AhM63lN!v&IV1tck}z|Rv<>bs^0gwY~h@i0Mj zozS_?3?7Oys%7Jhw}6Ig#0SWL!Q~gTnOpTF%*Yf7_Vk;5^3<-jd;QVA0ppaeaLQ<; zNU9FwoR$GOk>wSiUChW~E4gz|$n1WJLf%i~MGm^q1t9A9Q4Mv~bRZ~^Shduu`=B88Zrc&jmngReB5A9ZM zUhh5^YoO&PDV%EqfQ2}_gf3}E#>$}Q+nakU$7z_iuj{SbQ@sqT@@~?FGa%NUS>s(2 zQI(ZKsuDNkB~P1J21{4AXWx?P#*Pcg8Re^*D5xn~W-I;Nx;3sMpe>}T_OMCgpNVCd zmMDMrEp0EGaUtEd>CaGoDa&lb(4t%8##h3GR81ePn^R2)xt9M@oB@E$`eR}#y%-~3 z6{BqkFTHnsAu8R1N-Fdywtk_%%Cn}~r;l#~FOokryS5dlJT7>rG~)N+7{q<U zbtR!$J;;BhDo`-yPKOsFs_@WR{X{s+Ar}%j-1FXc@k`(9r}19&{Jy3Wi4>@v;bJ?Z zSRM<qNKwad7mO2OI;3iDj5U3II4tJ~6&)k48(eV05W6+s?Tt;rTZ&B5D`7dxV9t%6a0Np^i#a~My3%;6!`Lh22ZF}sY;qL#t!no z+YA$`C6s41ig(KY4J^mY;Qu78?tTvZ1eR;Rl?nfLj#*pUeTjE*0S392ckUg)Wnv7a z5_G;toPwj_1UMIvcQa#rO+LmAmRd;|d85OiP0%Hg46(hF8YrSH2Mtt=c7P1dXEdRc zCovNv-3CHxaDqQi`*PGkqJ?95+i;xrQG1B1?{@ZbTqMkOj&H=_kLNTma30eCr?9aes2IU5Us9!6b6#v8l+Q)WR zI;U|j--j5bUBfk2zUvFGff#h;?M#Dl)Yxs+)CJ_Os;%K>#pg`Y7N>zXFQssiMbc%g z+=1QnXl~Y!zV@9*yU$ZHmRo1xRQmOO^0cATQ7?ZS+uD4%u;O?S5-l$eBl59PC>;DW z!|e;w2&vdE7xLhN6$3dQ`TK*e*$A9YYe*VM8HV?33}%c{VizLD{rQIGB~067MfP1B zq4KFu8a|3Z;ZNY-wcv0By!RJeulJ@oT&c1GW2ey|7E{+E^{L7VhNe#=m%9w zQ1>jaG*apDH(U+g&*lTZZAhqwNX1I}xx7Y75{-rw&!R+OVTQXCpfkXJB6c9%6iBj1 zvS$>?i~ODA{lanv5&E}4mh>Nq4HsvM=2QPl;ET7f;{~oFRDa(f^epXc6$JnfPnHU@ z5#j?7yxjDUoE(+fce&ovUvoUOWlLlmkTJ4!k9I~ndRn`iB|zwCuN%|3VDf*3e=V)P zcJ_EqcCWDXfW&^HLv6E^5V@M=Fds%HbwY4Gt1C&{(7V9m#njV#Vtu0GgH$ zF!rGJdU|IqMB731ODAL~5{kA&=8_4gDopSo4GV+VTUnXe(}89ClNM*MMF@$jYMoLP z$JHRzq&dzQyKq=s_5{f6R-PUwoII{x4Gcwk0e$EEu0>tAD*X-ejTzpW*4nR&SiL<+ zv-U77In9E3XY&n)cR>~mzO_MNen|)c#?h^3$^fj|mUVeF5is~aK7i6!e(H3&TC@oCn%nqIPertJJ7bm z87|>Zh>bo9`-}q;KwyQ?aj$TgzzC_NN93eNLUPxslodqa$s`x9ylc|P+h&UIqmkEe z{)&JDMgG$c@jX znbk{-|MF6YGWr?g1Wg7J-)^nG6CgF)chn)_OV|cT=Vp-e+Xo0R@@7g!dyvi7 z6D&43`O{@Nj@fe&-AFCv)F8I&Gu9IH2p*jN3n`+g5A)t*Cutnu#ru)O-zZ-j-kPpB zi%S9?^iH&*z6!%#Tvhp`4>zHXAdYfpmeL|X;H=bw-TMIU4VbPdO+2i8 zR}h7X`%vtNS4(@3#F7usoNj%e)He(sz&^ly^O!O<@xUl~Cc0MeClb3(pck1fKk(w3 z-->4!W-osw6V&}>1+5zKe1HX9`n$&m%92I~onX)oaR2ys6e+AWI-U3t-wbp@N8tFP;|mfO{KdI)hJ21aIIr9hO*<`7Vz*96$45tZ4J;g?Hj7s~=DO zZsbu&nXpw{yAa2788f%J3$c`)fh4V<=%NsC1u^({^ahz86C<|Kaf%ju&%}Zsi=63$ z5W%$N;j!n#VvrE{(>kfjsJ?0Om>odhJyIf`Efo1G0;RG~F3ALpWrsj`t|i~xn`v&< zYMk|X#9QjXtjP9bEyM>&Z=hJ*Yx>;arONRWp0k#6WuaUYDzoDloRe=?AV%Tgcj_cl z1Gu#X(o3hOUVY$$ihs=oC%FSUI2XaL{syoPk11mbuu;D}!pU zr9f3xr+dEOoRQ-zb(lD=Ti+KC?(Ty`df61%KN^WS;i8|6ac36BxMEC9b1;S&Juw@M zF-G%=K1L4XvnbkpG4bNP+*}s$B^VDDIiEkCa%(=!#|O*@y}?rO;&H1Sya0X$-F*tc zciWFZz^Y(nu~h8UA$4pJmIo^UOk$}CsVTUT zsU18C??c9rQJb-~wbHlE{na@RC2nKzriCaL+6yQfyPbq4?zX8QS0POn{=&{y!c*cl z+0nF6E98waoQ`WPqzMKLaR z6Pv2w5E0faDeOs*AAAa>y(AQ4-(WqoF=6-%xQnQTabQx$nQ0oYj)4k65x3=_yf0m$ z2nZBZoj^d>@Puao)W*?X=^tb$7%748by~?zA(PAtaBeJV=93Y z+WhY+WO0x^%OqxN;vXhA&Q=i~ds1E|iaZa%xlkm@vkUGC4Sr-h1D7!w`fopQiFxP_+>l$B`7zhj9YT(D}yzQbRxk8_mX zs0)(rrMjf7pFoH3>FF`o6eKOdCzDcZmKk=Lit~5ES%0Ix3))W1!_;+1%##DQG@_Ht z*qY3*)rNZMwrzOFe)AXbUi~RJUpZ$lIu*uO!Uo_TKq@$ye=FSNu9ksAmQl)XxJ_N| z6dZNRgo*tnPXcEi(+?Je_+!TCFg>kpIcY;b689Td%3d$_2FE)zfNU&U=AIfu2AyPQ zDI4$e*nLnbT%(K#3qd{Y2AQYiMC2u2B9)Lj-F`@8q&Y+%sr`6wAYbk%;Nul-{f_HL zT6L=X*ow~19(!a;gudX3aBad5!jw)*61toN8loZa1os0+ydi~qi2`tR%Jr~oVF~ld zX>v5<)ggZQSAKNAyCXUwecg;rKXv3@Qaw~ESljd3tPX5DVGj{9PzoV=_28g^KWAr| zx)w1kH_Vr&sB#$5aOLqq%$y3|`l(Dr{zN^8S)fF(e;h~H!hg>xz?5jr@Az8k^y9>H zH6uVqvYvaJKnM!qtCy_$8#JbD(cSgYK5OE==fU*)}Ni8J!tgiJCC2!3FNOK>Ho;Bns} zQw+lL&|qShYL`EA&G6d2hWoa}I35O112Tny#Krwq;-F*1>FzF0?f^inO`k*vrz#l) z1;HCCl+cWmTA8Y=Rx@i&?9-71HxiCPnCka}2T;<)qBzpwPa(JxN+=mUDA=UPzEJ`I ze4n%cW*i%XHxrc%O~yTusn3HX%E!RLyKu!UMDOb@`i^eLBE-8OAbAeX16Y+{ao=i4 z4z{1^&N5e^Z(2F;u#f?UjGXIDD%S720g>oZAWe`~!Ycle)|PISmRw^=5n+OenX;9- z@sZ0NH{YK4o(y|_P2o4f$nCx~T~nGf>hkWR3)UKf7_%HMOyp2jTc4wwZ3);W!(?Uor0pcWWlHI8juPyiLe4HX z5g~H25B-*Gkuzc4I5u%p#dux<`fXYWuPlj18W7RUXaG%ueU>>4CzSr;Qp(mhXBVM6 zkMx>+p37x{vMgZ^-LQ>2dN6C{~|OBm8G(iR0l`bHvSEIdhXNWvuBJ_bpL6vL`S z@+Ae6;?p0Hd`M5wF-0Ut(%?HAstGBbVBJengFy;2lwkpY{F`^N|DeEWX`%wk5aR?_ zLtX-I061m_E}Kw*`iNW;c?1O4^U|m3F{MnioAlnQdor7EO4J=Jub;H!yf;n zB~n#^ukXFv61dKH$?$G)Z=JN$k1*Fntme=Nl7$bi2%*fMP_6s!AM+n~2-p53qQd99 zq%-sr-OBR*Dpu>pryxoJT;ONnmlrAYo7ogpDIToL`z^ui^Wh4y3+ixNhMoB5k`A+& z(tpHasi$J-;20s_pSdUG`$3f-swUdJsB3ECOcC#G9z?H1j#SKZmGH8A@|y5|IV}0` zT!+_e0j6Z)t*EfdjG~{K4ZHQ6}ZFO^|WZRNoo`OUTQM)=X;{ebbkHAR4B)*(%| zF4eKFu+NPh(EnxqOCs80GfPd3Ovy(2l0Ss7w9)oax4$__(=Vc}CAzqpn6wpP;_*?{ z>CXj_62Vnb)Zc02n20I3eG1j=F_Pc)miAd+<3nSbVpNwj;M zwI!@Rh(+T?O%T7uQe+2YH+*Ylr*@W8Tl1{*SiM+rGv>>;n{T(CxTwzeoha8J0NUvd z3S`K=hqEivyM{0&7>*B(WU~*|Z#WseEb}rX{h!n{7;Ni-k;e>aiF1k6fVadkA*Q;q ztYZWMuK;EO1H@Vm3nZ7AJHnp+z?zuHahnipoSfQUR|~cTT?|5)IjE0aD622)Vq`_L z;feRo8J>0=D^j8?zxwhj;8$J#;!hP~u$)`9P(1zlC)|ZwZ*m?r6fVz|R&$Dxo_u_? zT9s`t4*&I$ps>)cGkgkASXfm!ch*T&fV!thNhiR$Z&j4au_Tl-w%%KTrzVqPaw2!&rfgTRT;S6*&&n>$IK{0ceNy<%{z;sp;=; zaeiWF7|)kp+PqX&v<|jbY3xBeb@Cr>pzM~E37hQt3r85Po3ZMtdH9#hJNR>>pVYIQ zIcGBQVb#3r8FJXQmaX1F*x&C-wJF-84GDDZgLwOG5w&{++#a@`tp~G_T#4DkK(}`j z+Yg$<<<{jkclI-mix9j=tO?9Jq?DgK@jZJg?FjyLHB%cXMzc0_C!PT2-tSt0tu?O0 z3?tuNn5aF9+ebP4eKtI6KkK!r36Zp8QX?{Z?xX~-xEK_A|854e(u^zMoKJI!^f>?b zPpo%_vT2RMg}K;rUYxp=>pMf<8ZpNR4osHHK3g1TuP)38&Ggfk({l;EuUM!pE%5ac zROOI_$$?>Xbszs?ddx**-1N_ezIce#3FWIVHI&=Zz=6MlG{VtZ{6BG6;rh&}(90r6 z7#YUD!6j%cW0f^CXPpG*l{C|x_l5GiSZ%^#K7|i3ebYQP_7-;^G1^-0hyy~E`M<^! zpvj)d441u9vd7|s-E)Z6C8ao_x`(-M_ehrUTx`?+l42s^8yc1c3<8^SGQI=@KB)7u z7077|=3uhobYfV-6-8hUF)C6QiiJtS_5$y=H3pwlT@qECO8l@vdApSCAzilc6P6w1ASPeU+5Iu%*W^ zE|K*FyD!*(`YUv|;#jt`azbPwmhRsaBTA?#D+Nz6?lz^IrodSXDFze`8=+7vb$9>s zQ|jnJVzprdsXH1$fAKu2W)8!Wj(Ln@?>!6In~V}#6tY4Y(Xm&^mYKarL}i4e{$|+p2!`Co}JuK&%J>!@?Oj9oaQ-oRlY_UMY z6k=AsbkmirL#v_kEBk5W(gf3{QXkQRm#wA2A8ISAKcr?3_6YM8$3re?iFbe7|K=;o z8zF*j7Z%&l`Uw4Z8e^7k=rY2grErL+@zQ5t?20FM3@*Sy({Tcmub{h$YQlrat0G8Z zoJ8+inblc8!1GP*nXR7;d={Q$8c5%SP?Ue?HTZWJ9RnfP3EE|nd#}6(+;iD|>BYT< zrNfDRq0Dfs|E_*X1mID`dnD3Q-GjFby!c)OiQd|JG=gN!!R(bM5dp39IECq9Bn%}} zFmDn#j6hGj(;*Kw>(GP`7KR5<(?17$kx~o?-HZhFgNFxBm-G&FUAAeDOCoNHpX86% zaG{t}YyQ2|sH3>oP(3c(BbZ1_m-(Sc>rh!gv*_V`Y}37-QHA4X+?5LT0^vB!LeOa^ zd?f%Owy_(QxT)%1;aMa80OWVKQfA@YlT++hO7Dd_zu=Ifh<sLI~pIc#dd8){rrchIB-AL6sf8Br^|!^O*c6f;xDRPnVH! zqQuzC$3R8$<|o|vMB>9yj=X_F zz7PeK0m!+owj#dt=l%gM&n0@rhNM2WnQ%p^mWJd|ehG_{e;8ZG62eGuK6W%fl?gXk zL+Pc6FAx{bRi*IT=m}|6JLYzVk`qu9BBY7Szt&q%VG16n7gt-wIY@@hsfq z9VlGW%k2<TH@*h=u1D(GPnZy%%ZOe zWGP0I9%td3nGz2Ux6P1>6POc8lYz+VX2xS#KE*d29w@%> zg42n90-8;KOP_>Gr^j4Cq4pBR>s14;N3w;nb>%$gl4ezAejYgy|AZP0PCDj%+JpN1 zG$RQiRS3{-1+XRZMA4NbEyO-{9{4&V&;4@72zS)$TEmO>H!apHT1|_QWKX6ED4|q_ z?q2O7d)_Ow4{is_`G~hX9}&Kbt~b?BO!wxmy@w~R8FM63=$57T=Y@)MD~hHY0AH#- z-ic7bN^FC4m1vJ?2s8AKejS5GBI5fHJwrX0siCFIbt4J!_$5*RQjOfuC+?`IiNjelD;9H3*^jV&LBpYY2$Qs=`MlPL$1l7jmDL>Z5WmE zMDO}&M1BPy|AQktB!CXv@kSfb`KH>(5uc*IF~64+KMrHUP9s{?kjJV@(5pQpv?fwSTi(n?L`*S*MO+7mH&qymt=PG)BjWRp&e!^kp_@E}b#W4fmdw~0?kA@F3j zXZrvchMAsBVqNt(7fU|8F}J%j-TQrKcm3w~`s~U&@=Ojb@vO%HhhZ=6R^WAWB=h14 zD+{>Gw8CR*y4OW718@8VQGUy%6o%)C8e1Q{7`%q&@)`o={IZZM-yDoTDaCcYv>ZCN znyg*K-3;_$?qp@Dd&C3-~%b>I6`LBYh92D$kDRe~zP*+St$GoNGAiNI?*$JWeA_{teT<|#Zl z@RV<(DqQGso(oFT8ax|wHll_LJW23VB7}D;Y0yrKPB{1@`rSsnzNb$mA>jN*1-vYR z{DMo>xk}6)WX7>C5byCa^natVNM~Txi4?K8M+5@MJjK8}KrC!;VIFy%*m`UWmQToN zgHRlTZeC*SMl>)qux6#kz7s}4+e3|al^+Pfn#;hdv|LY4%~I9*aj8pz*C0~QAo(#g zU8xQf;6j>sFvm}&OP}K#9ofox%U&;G_LAP}`jB-MoG-Vk*0TXk)41N@zdbcL*f91P ze&17pNjus8=NMjZa(O5|kP&}^6%iB{7~0dXp0^Vfh|zvAlFKtWhA)Kn`nVQlK6Bmp z)#rMqkMOfBo9DFvgK`Od3#&dLKoNizY=Mnb$3$vC!Tg?86nOk?*g6UjA-lQ{RhD48 zHD9|Mw*z$wosg3BWNK@8!2L*j+D$$y24S#` z?fktjay1v*jLS>ixchhV$2C{3N23k+i14lg{hEQrJAv!Ka6~)8F!?IqGV3mDLAI&k zUopcQ$6WWDS1zCQM)rrmf=)tyw*Lu~^FJ>|*u|l9%%jHsrRuE($(`&g-BqT^k`tC!#o%}(dhSQ)-eB5-2Z@I96OF>p{e0`B}uThDp95mTH^Nn-LbEC(yIc{?M)*h$y9? z!Fi}D80~~y?Okmia+MNpq@c<*o}{${V0nl9G5l13pe@T&!)?JF(|QG0`d|&;OJ~vV ziI$TMMh6DRGA( zPK0mj>llgMDI4P4sy<8>FpacMGKfs{1?c5188AY`&p3*C$d(@N#yPE)r}OM`r%6sxx*3%9 z2e^|}Kn~FM7TByL1N$`|V)g|zE2#4xxeA)$}>_|I&!Rk9pd0PSRRpxEu2> zkQ=7?$0)8#vcIulC{@xKk&gza!@$T8K`0pX2J}m~{~H*_!}Jfo12lnu^wBYcU2R_G z31VNGx49$P!pGbWVa==?t+nD;(&Q~s%$8oGiQPpfmI7Nl;41=ZFMY@a4)+I88$bok z92P!j5O*?SIYxO-GFy zhK5grFk}+^<4Vcdw7*{cx(2}OsN^{Tk8U! zh^@-Fx_1Md7kW#!7`CoaesO*4Z z3zFCEL)M*4HBtZVpp(a5ccpyz?}k2=jh94%MrA`U2RTJ+e8eC+?f!h@QV8*MOz=8p z3V4P4ga`U$y}X-nXhUyYHUPvu{rZ;9IQP!TqZcT2pVAvPq?-g~uq#aPR$56(D7bFMX& z74xR>XvXg`dnysdxfIh@4=U9z$S~vEyU~NQ9$iD`U%H}>4ZM$!?LMM(0oF)6?}D3_ z6^ITC&Vs%7SjZAB;`c_uenCW@v|b2F>#i7w)^~jQ-6+%_rOncN>}@;03vDP6iarI< zTn?Z>DHJO)3Kl@Yh$T~4!0yLiAW2BQEjBH^`a1tUTEF>Jr6mUR%jNU(5{SqQjbn^H z18A?D9Kk+lutG|~VP%%A(Jc`$Yce)yptR2fe}RXG7QFEoWd#9pT_Y9$Ze%LFIA|_R zWiDI4A?&P4m{@l1o;!jxt*g{1?}kaPI7O?44<1ppq;R;n+dcdi#)w zB$i?HJ={)^bNaF+|CaL-E@@&)Vq_Pj7)*>_YK|Cb&fI?(7kYsK^Bi_&Xg$iv&8Wcc z6yLMP$_RK_7Dr?QfjpFdx+6?NWx8gWv9!DMCne7%)h}?hxLmlc@Z*ecTg@+%9RI}+ zmB2EuI=#E_5Q&BRaIS)23d%FZdH}*uf?+Y!0Zd+t$V0pu#7|@f*Xle5B{>npc#k`%``X>T3$^@ZkPH0Ao567wUBOiG-DjbcY4L3+lomP1 z;iB}p7L<%CDZ6O?Sp94XA$fzxVa3ON1B5at91rWx>TvLP`fiIOAVaSAt$U~6! ztoVH(Mpj51AoTU4L0iQ->G<`_VEP>cVI$gplQ;czc=Z{$EzG^(XV)y3bPR*2k5b@29+p&8&^Ac0x`Nz#|sx3`@VV!n*6%5P{ zR=N3!h@d0!J^5x{EErKN!YpFd*X}Qr#)}k24r!(!t`H#I|CQ>t(?f3el6sM*KQt9` ztRrrjRD?C6#Z5)?__x72i*NN(bg;pOe%0pWq$SPV>dQ8C`v0B$#B2fH4+EXZM`O#; z5#9ylPpRn8E#pxPmUaqYi;X}A4@X&}pG?k}8-)XW#XdxssMVeE((!w22~L#Qar-R`S}1Pls6Q!g?@=pinXmX4DJ^p$JE zP431Z3?tZ^HP0JUza4s{dwHCRk;UOY0vu^#A&HTF2j)|#BGFpQp46PIJFQhLZ zkdp+c8quR2%^|gJ3yBHe7DmR72&04#HFB9Cqr)gNq{N4up&GI}_xmgAmt8wMCUtCE zwzX-qfV#6|?b|GPvE<%r9a+osh7R~+{$uVNB=E- z`}hZsME6|S)HP|0u3Sp22h+lb75}mk1h6t!v3_8TAD? zB=Y=cLgTvuo6|}VRXX|7&bpuid$jDW>b)wi5{3z4Xd@?huE#Z6xO5i-yRQwBTqV?h z7SuXA-aeK+4W+a7S{IUQE-Onrf8Kw}V4t@4ZlUvuKNzvjk%=1$Sg11pV#?@qx!zMB z;&&Wlqyvf2?7W4jGE-Q%1qjfacx z!%Ob_BU#Z{(U+mF``IWgT$U2Mb7(CS#Pk{$;9Tnf%IsqX_h*^ zTQc9)!)Drdi)u(KXZ}le$TeUp*TP1;?8c!k^8=YqSQqH)_Xn@C>bW3pR|FyQxt&}r z@Y?+2R?enQOMrs!M9j&C#1?avXNr4hq7U5<_z`7xjq#GvBTDOiOAJBJ z0xvMj9wjT8K1LUO8&XWasb=&dqBfrfwjIGswz{$2SW~Lt9*lVVi-E2^|EeHZqUBQ1 z_a?q;f1bRZ)dLi<%^jdaOuic)3k9Wcg4VwjRuBzoc9RK- zF6F2zhvjB(K1o6bm+OMN7Jv68775%+;-5wSU_gdYp35HLMoP0?ttl0IoQ? zZM}xQsW{7BjTU)!vHLYRqj06mHB8!%4_PZIu9wkugo}I@8nwolcXQF4M!pU|FCq5M zG^rXKVmo#k>KCmdzCI2NVx_@hM6a8Y>DMy_(|r_Z&e_eR;VRBoTxN>Q5bBZF`DHi7 zqq~2fo6#W!VUUYQ-1M`-+XQzmk^UbC$WPZft+f)_%8d%xmkWS;x6#&n9ybPhtMk5y^S(WSWSoOa$nL1yD-C5P)C#(*uu?)EmKO`>! z>A}PE!SiE`?wmp(`f{v_2DGF(x*B$Wy5Sz9nS}x>n;>4?q0QGQ(Jarr(omh!1n z85lL85JZBHO7)X2(Po~tk8u;@^v`=NpNLpbqC_Cg`9VuamGe%s5D{g~uD^eu+9nC< zTM^4vjik#$>Fqaviiv9JBeV}%S7qrEEnJxk^goNi$1z<%d;f*+o+B&s>)~onb0_#S z!z0aq&af*w&W0M-yvbQ=o&_gXxW2ZRk`v5Zc(vx*QmbxsflryBJlr-p*>S+4Q{AOhrp1O8#2 z@!Y-O?gB%v9W+wckSqvNG+&)9f&C;7!{tD7D|!OA``F6LdFy}g*Po|6Q8illl{R|1 z!kAjvZ^1se3+>a1|4X>0 za}?@>fNv?WdMYSQ4iCY+Wni2`6{c^6-G0;drmyw{nZ^H&7Q3|_zr%L@o^irv88!Ey z1YI_GRjQ57L*R5mV=6s26ywg&uXl0(ovSM+&@P)5QVG(K3cMA67q?>n$8#SxsNgwP zxJ5&a06G2sM%(k|3??2he+E>4y4Is=M?N^sR%`^Ft)DGB0de0KL0~PY66AFJ-ke(D zBmqwUmzn+EBD5R2n2%NdL`Cf#YrQJyRTJQdlh{7lp}leotEFd_XLe0ttnT&);Xfr_Oc=+Z{@Oy+5-FnzZ4^7SQQSVNrs(&EA zh%i)4hr9ejFz+otd{gto9Cs#C>f1Jd{kmwQ0u#j9TMZe7;E*v38l7u-EB>+j>SD{% zB-S`_4cHj$U=MUco|NOE2X?hG_~w=jgxz&md~p%Z^a9QB{YH*IAb>0sb*Hqj9cecN(p(Q$FyB(k;Df@v`s=e%6ByVks8!JYzu|vY&60+vQ01Z*1RSc5EYTv%6*wcZqysuv^ol2D(+!>Sw?qNlMI8F5BD^ z%GZawT_xWHxJeY85M<`#-G5v2;s)2274(KY1VIReIZHq71I12PxG2)*6`Si==zt~W zSQuMU^^{qd!=f1i@WI<`)gr4!_~j4NK9pH3+049FF#v;9Ty`o@WadtsD9{UtyOrC3 zP=h^tVb<@)CD3e6{MDl7yxR0qz~f^oH5KqI^#d^MZpDReFR6J7(;*1I-Kq?}gZ2V% zIDKir<$uBd7cme#jHkU1Xk@ASn~}j#CM_Qb%_drh!=^BXm7^TaL4VKUlQw;F zKz#}Q8T|d@SKy~N+L-Fd!tt`Q`nEjWGD!?q46S0M2W*O^U{eeJa>@2F>C0qKqrR-V0nbuu z2G1*=fGu-6Y;J5E~%mJT(_S03vAL2=xp4Qx;Vgzr?cLe(&q#3Fw zPtGxMZjc1-lW9|v--n3~nwQg*;es}ks1HrhO!{t(iXJ$_NI6jqkpg21Q+M$sp?21? zfwv57l-Mvl2n+sVBNU^A`^ir;%>0k7L>NDU4)Cfjm!bR_J|3S=Du_4z2##b9<77yG z<;Elj5rIHo$fTDr8PLlREYuMu)z}BVVNNy z*W1R3I))TXS$3;JE_hj&n*&I98&y?RQjKHsOp%0J;L;46idoVuETQCl%RW3s{F55Q ztkIg!02PkLfm}~m5teR0E9pDnkUSFYE*zq3n(M-rn!yq1925ulPYm|K_!wDKilc&J zX`lW|WA9P^MuikVFjCMji}k96+~d2RY|YIr0@{+-a^dH`$_-Lcd|C~F(jD48=v3~& zo&O7izoPP@A+VFab5`94>YKvYnG*C2_IudOdE6o;<<6Ds{#1V+p00kpJ@O0n)dQv4 z4_G&aXoeU)>8oxyXM&XOn>}j&GzAatJ zfY2J|H|kL4w-#KALLlK#6X~6|4D6Cp>++{(P-nj*~`67L)2yJudZt=C4;<@;_>fB{(FFh zM>dzeN;&z7&W{VSECQqAJx*D#Z)7oq${+$FhBW+Qs#!>!mn4%K&0+V2O=(J-DqioF zvGIG4_ro7SSBv8Mz}FCP_;Y1R8hDx8y-$3P2JO)ULyG5dJp`cmN7!RryB#n1GSXwM zz?&?$`({@GbhxvTKplUr*exDQ)BGjw%SIR)Q$j4YpGKlX)GyqU5cJYz;6-gg5}my8 z3Leri+>a`cpJI2yveoCF&+Yz2j+Msv0rbz+88|)aFLQH0zTB1sybwmS+RcUX!3&-S z)7$^e0l$Q>CcHcii;*$fL##PyA|y9ikr7u3VAxaVF0K`}!59RnE;U*Sa(4;A`$My& zQ+F#XT|4wqTd^qguwJsTbJ1FrQAGJ+Wys-tela0A7O4Mlpt8^q3`F&XgTbAqrYz!` zyN^K-6n_b`0|ExArBMRiG@`jY?Wf=7+}n;QGH2>TrZjTy#ll{MCjTn39A!i)5tDi8 z0X}`h9NWAw>;RwH{d!bRfa6=QKe6E567qePW{_7_vr3KJz}jHuO59tXi!vv@rJ{Y( z?Q@q7LWe+})+8^!q`Q4_L79eG*dU8J{dkWJqxg%Eyiig+EnUD5iS$4F>2{RD}}2^)L9Nc`}?Tf;w(^&V1m{l`yDXGn)#jjiMax-kjb;M z+i}m-WmAxhQz^!E)goG|eb-W37eE$oclGx6eykZRuOlPGMeQ{R3WbH71f+!?RZodf=cO*@D(-i}yg@?h#6Uy*UEZI3hss&kd^V9cR_7Tdi>@{me-i(7ccJP1-h z51pr*CjUw%>S>_aCS$uAi-^E@4v;JV({IEngoifOR`u>pS6Qyc<+CIXY0IX#TiTZ% zrd54s(J1+j_>NP3W;Kxxjs<+6OA~nGQMX-ON#Cvp)5&Id84Lg1c*T5HG|EHK&9^kdOnRNr*Q;`=*S zTkUDTbPJ>Y+85yjn27QM#sWZrCLE7|Jn^qUf`HyS`>#e_3<4EJX>b%jBrYu?C~dof zsHa;+Og)!z`GVqOU|YU{hC_tc`qhj7(hMPs&cM)SCTQs0(2&RL_n0}5*!Mylj+g&B z=7ZzV#H4)Shd6>Y19g$bxQ3$Bode3b49TfV(r=iGWxGx~k4sIN>;j$LRMV~5z#wk* zs33s1@}0>E;GbzZ(lu3&i=QBv9y4%r>32udmv*iW?ofXLI`yl!91UN@a2I6LexWET z4-OWuT?f8pHoEt-S=gtQo4c#zd_)G(zm4<}Fi(;5`?&Y$m9dT!dgU=VM`Dvj0ZB|# zu}0ltwH~fT!)TLeaY%Xfhmt6?kUOq05`$sl{d8FSkF0_fcoO&o9V;gRry^fwuilbC zNbo>UWx$LfNmm{JzIuxKk!DOQDy@#Oy=Y7)Z}|~=Q>?nEjH({`i(mNY5KM_&ePO_qX3QpdmQTM8%BA#C%cRQ|6T*eZ6nsydv3KLv7wW zFB7xa9I{;X-J9ZLeux>2bre3Di3W%V;b3KA-eMTCFj2K8GLfzK@hjSD6KY{HF4CpR zN~}Z-&J7bPb5{a#M+F9?U1xjP&d#_?L9$0{7RCJM2);OD-+X5yXCWZxNq0jIomC=t z`o)1~F%sqvzR|m>W@U~w)F61rejEL}-0tu*OW}Zr&(K7N@@1vU@O&UtTZ|2lae+z?n&{*><0t?#7E0hYG2)HsRnHf+(o-v6=jpim)Ebe|O%RZH zl(Ergnz0YeIEj=(XKVuCRvCNf%wXP(WPxb^OE7hpErtlw6_|Pn%YbD=MOG}~WDPel<_G)H(?t1iAofPqLBNa^y zNnckRc=k^bZglL$WS|h&VeSVbDH68wOmc za~xtzs`~_0&x}prXuJ*s&Z)*%7efivgo=k&kXn8-J0mN72MP}zRBxH}AcAc`%HhU5 z?FRlo4QcNDmQEZd9Gk)-Uyqx3u7@aPI`dREwrpS|k&MORn70eO7aJ~m>uFgkpneXe zx3QY_09szgr#kj8{w5f>4d#6-g%NmF>~-cx50lewO6y%ObZJ+{_(<&8p?K!su1p z?$AyK9dDaeg7+b35U-h9Qz(O)7A&B=JtD;OXw39mn?#N}5Ye9&{fZD+ABj5J3eoq` z{;qungV*}P2)q|dF$q5w#{7cj!+z8v z-Xi|0@H44)yPqN9Xxm!vQuBXM##c$%^=OB<{wK~mH*I(SL;zCu zx73CFIfLeeBw}MijH>S53R@kdS?z@GT@8)8`_Z%2=96(HHQHk<7-r7pN(?C81Za+rD?b=?0jiYMhn4Qv?b(84@Tsvs-0D`r&`#K2V zskkV^V`>LNs~C@f1cK?sYYhEAMYcRdf3UYrz5)oJQnQr(!*o`0*!K1MKm8jax^O7i zsaLC3gcvXY6}bu9$tE<1V!cu2!Y`%q=2^bPxXe$Z7n#sFJdI zQvV}|X_+2{ZApy0+)7yRGhoQ}H;fm!WB5z`mZ3OR%5YyQf{g#6kq^^M6tLLUsHzyuxW$wC&90(2UT7htH2m+=snCGjVp%za~J_@NvU zhtz*DYW;^p$Z?f=K;3w7M%^pr=^Op`d;A>v`^QoD#b$KKIt7>5r_(1p?M9Mt?WLN{ zIG`+{l7b7?l=VPuQgE19q5CGNs)WVct%CS*1b_d{yw>R6@dVo0&-6U4l9HdAPC6KH zJ2{TiI#K^{xIQcn2`OZ3aND4yD!*Z9VtXEd|HmGr{Qgz1-Cd&CNwj?12_yKpyuM-F zb~j^QVW{7<_x{fF&Ien;^hhQOO*B^FGYpU&^4_PKv8tK-g_g-gCAN&2Z(&QHk5{5; zix0_%=c}SakZAdgl~HU(jnk8cnNUppW%AEwDEs^_1DlH~Qf|xurOnwynk?OAhIlP5HK|;iXfQpx^Tz z>K3XYKuF)3R%8;tY|;aGQeqUXb|77$L1dLU66{}%=m!vn!@g|(QQN)thX;=%wiH0SEJA&xS4KH4S8Ry@=;q;9~Nb1EGwK8B)v>EXVTLk6G9DdvFDA{Fjd>z+>+{K zPCKB&qAV}LJr=5A)<2%8{pxg6p=g>OEi4Mm3JaGx2u5fLvN-tCtHvYTI-`(>JqVhK zXj-coTe@c;<=sh59W=WwGcq5TX^s+#l|@D~XbsWB>96A0=@C)mZ$+tiv3^nC_|%z} zx=Qo#TN7O|LuAxY6je7%ymW|vt)zP?L@?b2FZE2~n93jR6_a?KeWm$*5k92vTGV_VjY;#ed8rZ&Dpr zXk#4l;6Lmmz@v%`Oe_MrXkvhoqA$-Xq(QnvzQZ}YR0o-@6ePlueSi&_K^>Dx50 z96Fg9ppO=S*6*LkX>32S4jTA@BEbA*_&M%ma!mh9f{}0`uB19f#+Db?z@ipXS1b!= zU|;S+Ih*dS-nE*qTMBHUIUxDe*9H;9G;#AK2`)S0<(1WABONxKtsy3lHW^Q{#?^A) zEiIRyL+Xo7NzWTArHTRbFVD@NM zh?Ac)cHa;l1qbn24z2D;z}3?9bdf&BSUVQoSE76vDuT*dW+`1)FBqS4D+r#M%-8a} zAYG3X3lt1Zp-BM`L4x9sfN~N7MW;p2fPoA7^|6*GaNbz0LsLQO{)(4v5awFNjJS)k zeJGQy)WRT&B1$3msjvdZt`Be*JL<Apxj^YoOz! z7u6Z@5*LE<_aIZ8kPU_rF*4IXeG1z8l-#$r&`mPIb>4@;p$3XbbVp-z>uZ8vQS}iD zP{OkC;Pj{BnX}yvNUJITAB&}~(D0p229`?`_{P4;PnIL_y=xsP1>J(n!8i>?e)A4KQZ%aAkPGq6T*xKBP6pQ0K(Rvn&|o z!9b@DWjyMuO27eID!))4Nt__X&$3=yD=``FHVClvT#33sMK=G3l;V!9Ssm=CsWj}d^we)fzA z!?#&-i?I(en5OvNm7?u+XpH?N|5+O7xHdb0$AKe$#O9$4y*bq0eUC;DK@Nng3sgiU zE>n7bDfUW*!}pl_Pt}rT($CY_KhxCmM+ThzZ~VQ!`&wac2uxg1MwH5_OKY>(w{msv zby-ioc_PTWsWZgD3j;Kbogx`wm-uAhvp!O_}cbm;q zgH-!RodH~XoayOSl%vWGdBy-=rJb_X`tWV0YSV<-x+6>Vxg-CHw#{Jw;y=EWFpfoy zR0LaJD%La(l?q86p@h}YDTY<=rxpYTg978x!VUT^T?LlRBh4DqIn8-7|R*L}3>apkr*cePI6>3_8_T|4r4OVVxw zdXVaT{?ps8JJ2-yk{?hdRT4g8LsCfxE|Yp6qO8a>k~kWx9D>ziv>YS9`YUzN zc%*ViN9gx@MKY{%mouKTQN&Uq?vsE>5B&h8q^8>VMI*joq^om8A76qrIKYPpPvzie z-Uk36L4Ozt_aYd1D@~?3iUsx8a8K5(#_22bTd38kjNk`9bJ)lGT@QCgUF|lskXZ-F zYgWa!7{t5#Uj`YRky-@I^4LpHb4mfudr+XzYw4T!u7&M{-7`#pHl;;k_mAiLhHIZx3E z)&XAf(c1DV#-orj3CVdVGreMzh73wX(L%PPt3l1)!i>Hxs@OyaLfNh3)O|?rrOL!W?a4H z;gpW>LLiE-HO-~@SxUTnt6w=n?0Y+!2NC}$-jVDfo{Fz$y2U+RPV{v}@FRI;Aa9mp zU)7>$!TmzQwIA35lRhZ%U%Bt2{c^1-SCR7KLg%Az_IAOLi>wztvNKj75G@dF6VTYW<{Vr(LMP^utK9kKAq#3f?6^(v@aGr>YW&Z z5QBt}%EvgFi};xFxw(Vahk04lFsxa99@G>nK31QaM6F2uPA#P332D@PYQ8`Rjaoy+ z_kXyJ57j5u3F#8~y(2$np1`t9cn7h(Wfx#2utzZ)BF|i$<#OdHwFWv?_vCUUGHARi za-=IpYs#!A_8E+0Rb$mJr%&FYXDQ#qo8 zQ>1a;^|1z~WS`9DDW4DeGd?vw$W$SpYM&yrJ)d%)_HfB5eR<7-&QkpflvasFlUB8I zuQgt)64`p}T@nLId!tnxgA}yXEYqwkbd4#BL3{>T`2A?xs)s$hJb|E9gKr*2N@)Bb z*4!O2b@-Z`?pcV7xgP@&CXxwcAAqfOtUPjnfq-|0zxV((?P;Eviv7+#kFL2kE*T+8 z6#b&7$$!Aa-}W!3yNj$6OP{vqma+vh*z`Kdsi#-@%v=V63WA~6FfR?DVIU~<L^sHjvO&sc(Q@mmPEKE`RHMxwAmO? z5v7P3`=`DMU|A`wfhxl(u;M9kY$1CVbViLgiq~rR7#YWV0j-H8eIkL@K8TzB)uhvm zZuWv|E`u~5AkH))h=;;f71Cw}{~8s`VP#fT{~|+b#tE=uSQXp0hPP5vJggno{BQUI z)?rmegEhcDj4!|jVDH&Z=r?b`Yo6)wL$BtThKCcvxksjY;h-e8#`|e=){W1DbyBa3 zfi7L*0>=1E$;e{1Z{|c3ckd_rHt~Eh3;psN?Q}ART5~al0&?S|?)dBqSue^Xh3PvQ zg*{ci*02eSuG;jUkHs@A?eKvX%nwB6K(pOj~tTCg$n zSxlAn$@dZPi9nV6D161$SCWrJLS%Csl>n>~EU|p=*dQg4V0&^vkC)~?~Lm0@$2+rQw`1RzrhGMJ4REUq_bUXPWH)@ zv!NrU(xd$O$+HUd7ct1=QAof{)T?>o)%YiWw9&GD!@g<8N)i7=xaL1~Jc47Meg2l#{xD3s^{wAuX~pc@K^G)>7tiFD`TdNmh;Jh%qf*OF97 zCL2$O$uV6fj9pT+)8U7ThOlbbs4N@}KIBF`P}b(+Lk=C`_yX0+os z2T?;8rH%42kTa z0uZ^a&VnUYVfX;K} z3|#ZK?fe@Dr~URm{$83_%aEvUM?Pfn2dgN3zF*hb{+#sj>Y}qv8SiW?t?dY0 zsCx-E+AM9AT>LHZc?djWTXxFib`v-;K|jVn%6R;wyZaZRIqGuX{oklHQ5#_tb^+QU zC(2`Nr8{jYrhAnS;!@3>>{PMPz{x zUw8Wcpb)#e0$Z=xK1i$NmAprE^Nyt#GBBC&p7-RjStF;ABf4xS5vwsX7Qu~ekk|LS zyy@XCPGw?u!xxS;c$i9k4*!D3^I~cUx_UI6jWc1~jWcryaP{{)3nQKW`-~Pav6e^o zkmye|rnvIQ#=D_2ndOgh)wh`R@uq-EdX#(o92r=W#t>_q2dheaZkjP0vaRAb zktuq&$SH3u(mBH>Cq_;B_KV5HONdJ5B%+uG$?9A|d1B~OCD=Yu^!ok%C16}CYi`{0 zx0-Z`aY=ED|7ud>o~OMA#HEwt7H97Rpg>+?c)#bKv1%SB9<}E;60Xgo~ z%)fDA_C9M}Tn$|zE-kJuu2|R_5LW|;E1u;e$KB6Ml)bRYIoan2^Yh#tc?K~L(A2xi z)Oa>tNn^CJq_G9g+WS?#ywQkf>+4{Sumy;Ia`MGjyi@hvY5 z!01#NsIzs7zW?h*gKv;EXYb3Y(gsu25y*u$_Mm%C+@I+x_i4yXk|vjS+)hQpn@M?S z#;L)}37@UQ;p-(X;s2Sl{YfIw7{X_)1Ssv<(yY+WO)S!+&*ENE7iJQWs)+Cl@!U(W zC6SzIT%7KiumGDDl;OT9z%Ic~>y5mfv5TvXfTgsOC5{&NuWuN?X5XkTN0;9w2aG^_ z3mQD^P)ZgSQrF%fS)JS;-JCwxbpMK=OviBfTuz;_SpX$i&&r-T{7=zU$3@vS(YxKd zbT`u7AtHiwNOvoUVt|z7E*(+|2m&f93KlO0f`rm7qJW?x(%lUb-}C*;Z)&KDA~ z^!mr|hst-A+i`a*iRA?)UM5~B%kc`)qxM|VN1>;l_QJV*OO70zVtp!jM$bs`cctTR zHcx!AlCrYOGrYrDckWiE6&LI=2i-Z#%tjk+Wp%tK)iY2s6Am+UH19;cMyvrq-;3SG zvygl#yWls<24n+wh8$x04ki-)bCOLWg_{ki@UP{!vNYlM_A~nC_Ry-XS~|)Y1P}Ws zE05n<%%U&ww{HUcmJA-Tb|WOEg~-DfFSxock*e(HU4zVKdhfhe0#+{|E7t?mI{!VR z28=CRgL=Ye>7&PIC1bfs{r(!VjS7H1p^r;n@-V$CY0rY#UC>oA;6QP+rL$A7H1MFq zeRP|9>+s>Kbs&PpnjR1ztVG=5A1fC5Np01u@^lDn_i92-(<`yR9LR^v-_Gbp& zrE6=OUp+W5?w^qoe20JclRPi;VJBm?=oQ%dyuby#Ks-`_<9ma^l))QCmPJ#{LrUIY zQ+1jWACGb*;d2wAq*%%Em2zgY!Cwww5DLD|^@eUqd|6lbDHPXxE!W3Npt2U@b?3N% zsRkko=;Zd!zCh9w!xDO2qUl}hYw#X4Pc^moQJo^XX*}s?$>3`@dEsB(2VAu}`I93c zA`D=4{G{qN)Thml6bxOt4BvjWuFO=-;6+DF;xLNMAcIxOfcYyI-PuPd{r#TPKhH?g zmMNnj3;J?S4rn076d0-Jt|os$>m~h43N(wGVyF2o5W|ROb5o@xb9wB$kEo+fR9l-u z@nTu&vm_k-FEf&{?^i&A^fEhIjTd=sES%f{F>d_sKqT!QGDchQmOi?k!8y)`7(+ow z2mgw1%{-)o=IRLx#p=P=9IHRRVvdzm(eXs350i z`Wb|q6BiZKO^o9$Y^-gqlii>x#c^7ce?zq9q-o88fLXMAQ*&HblvAt)Ic|G`#{TF_ z&rQjLcCl-^1bSuQg+UeZEXwD^?a>AG$?>4rJ}(Jm^C8p$pX9A2O8B$-0S0y zw&Ut?X$mHE8T&bk%LwC!#K}a;sMbBlf!I^(RA#v>+^^e@H>SFmWwMxK&cXvft7IKe zw2rkzyZc!ttQ}{cG&x#;D9U!?)cW(=D~v)X&E(0$Gw{)<9`4lADfA_sF7z3ZfffARP^muEz0 z>bHr(x`{1{FM&pOPQWIwf&c=wafo$Xp3WSrdDA|NotWZrZh!Tz$4OfaxF9aAlZ=ff zF1}e36SM!lon_`=YQXl`lt2Bzm0I5c<4G%vzbtzd5%W)MSt<{W$KVI}kof5Lw7^7!XZa~^Q?47@_X$tW1lh5H}1 zS|#$WcA2;xihcgR!V0MGrv_=mUhGIKc-JEYurEoWkLAm_y7{q6KQdn-B~|t5o%bcy z8Kp$>{c-QE$tuaqTaa`PQ7gxw%V>jFAGL}#Ic31%#)(+Upz@JnPn@QvdF&F%jEfhF zZs_tMp}`DY^mx`{Y>E*9&1iO!#hFj4;7k0-Bty{!)~y4@Bi2g_g?zP`_arJlm8K1%vS`@oRIn;TQ*9>D!aLHswzkd$^+2lWUJgBB@knP7Ccha{4EFQ zy|8hnWR?AJ9)`o?O^j6kq7y-Fcsz(kX6(St*f{4HHvxYkmi^RxDmoCX$l&*=MJkzw4+)v`E;*%<2kl~EZ&ZNo%J)L4Pz|( zNe)pW(VsCE%Y2`;mSd)uAE4W0nxuLq7Q~iCI8KXrm9r?Ni9Zp=!{70-QO|OSb;w|i zm;F{tV>`hUUaXg^cRqytadftm}ARgS}gA*EcgYNz% ze%xeo6+KInc=|!?_G-rw?VdmZmd?E-p!Me}eMkjn)VkrXzZJDt&GE`DG)yB|P3yPF z`p@BSc=_)%OgEd)MCF?#PPVUi9NkpI3zD(BcjW+#+YisOEgJL2ThGdI252$;ti zOY2qecY5qTo=VI$E#;e<(e?-L+5A}JPg&wj&%fYZ5dMX&V>W&;+AVczwt>oqoJ-bUQvLUFn)Z0)LigYs zJfcvz`2?I*c(EzptanTjh3P!bJkdXN0a~Jp3Dt2!E16u@eW^!A3P&44-_pXYSi6tQ#t(j(!3n|S1y@Aa z!HyO4bLef#LGv_hVl#;Li~1%K*%$-2Wx9RhS4J|WH&icnL8*1Mz7rljXv^L|12V0{ z(FsSRQ8BxV!Ra^1c?sB9(nF~4_PiLC$UvsENN(%#V*Km5U2#BXB8^mtn2LZ&8-Jpc z&X>-qqGRWqnkz(c1s27JZ95mnjSf>9d@3+cD2N&pR@FL`K2l@u3)|Y6J7**1a z$ahq9zD3ZV!8@{X4bCMW^WD!Hg~!R?e{`FJXs*^FoT_S=I`TN}LA&h>8)NGCdF2JT z6`o&L=ND=!E_=ZY&lze&)6`@|36w!9lgC{Yd1d`0GCe+^P?X_qF@}mYnKj`%nKzTY zH?x<=Uq#!E-A{Lf&uOxN+qB`NDUOWozDYzqXg#$nye+G!aTJEyZkTIgej-R$U{~iH zXKZUdikKJLi!mp=brdsDnWgstY!v?RPlD3Jo?Q0tO2kHTX}!`)Z+QEL)a#~>{{Duj z#=vUyk|X{bP|w`Pg?*%%pkgiTLqtS5jBc4@aLQ9LI5kls+pTa8RDL8TaYqQdcloks zhQS0Y=E5Vpcm(TM#w9qzlocSb8`#`_G?p!bAH`>_z~t4VDAd4qb;PC3rEO!R#GcYF zVXOX842%3c^L#PgiaRk*FmV$D19W&I_9l1A1}QlJ)(AIY9_V0~H1&E#q?s|d@U?_< zQPEHU3lexV#yE-1q*-{|OR&41^~xQGBC_%+5v5=^xlN?@9C`Q2L`GsDHi`APOot`> z;!*-5psN2i>ddPPeuJoDj>~{OUp9jU3S?|14O%Acy3#C(t@eUWgeeLGFgPt=-hoovO|1-7Yj5!$kS47e#CXibx1Qvr>_*FMe`yJE7jUYNbHUF->MqgLlR6hyPgpDSPp#I(@9WG$0N$u8`Zwihxv!z;L zSQawbSzMWh6TZEDo?t-7iqDFcWN{_8Sjn~5O3IVCe!6@>9Q~GecQs^1e+xEbd4@LZ zHtaPdZ(hXksWHxQw`C0JJd|-{m6LhGijuo!%kU$1QuB$m^B3nii`N^bu0qp&RXK~S z*h5R9=}Du)9NTs*bsdRR>2B&@$qLL?PJP-yV*0vMxH*(h+ zXPAUpopWvhuo~ZyxD!1XJC@d-v7McJODC?GL9^?jKwNOxIVAJVK3E}r*!avf*f8P? zQCs#Ax`k?%y;>&wcbdwI#9~xpQzKZzWnk2L=}_rW9t-=y@erO_a-}yX5k-tmRpU(k z*+Tvxu0wR>{#{7xoiMqAy3KXv?o&$oebrDZvLpPYu(u0RBhNW~!fJrbCjcEz9yA?>hL}lwR zcIy}oNwdps8!NYOM4Tf&o~f8%-3i;zO)MBkchFWwr^?b7HXkHBsly~lAn6i7pilq} zA-va)x~V?K>OAlLpY8mmc74vSPuon}&!U-mM4r(rB+WNYyR2JM=G#xgLy<_4lBkVI z79+9}H%H)cH~0K!tC?Lk92*QxWeWQ_GbULadyGu}-m4YeD?$0woYr%@`~31aR_pw& z`egMr^?g49O+28gMPDI_hZUyi;b?@sa8$fKF*Ydh{%oR=gozxwanOVNy=XZmZqJP7 z-={Yc-wB`lp7DT%o0=xPFc=zZ53LOLQ+|YP&F8Y$C5J`~*@i_8)9^ ziAoniIqpK=pc6J_rlw+e&gg6W34%xSPsbi$G!Ptlk7BxBwMg!a(sL{X_s;x7&o6&t z-ZT|9<*LUaHTe=44iTCJy3j@b|MpO-OHFLB|CrMkxc9sjxEG??_zw8sN&lW@eOVd> zPfSnm4d9Zu6zRGZ?x0O-5<0-wSS$D^By-h5H}W2Ku{R7y9otE4v)f`dNnuPJp#9?% z2TH33w)?S%^V~J_`zX~@qp3gT*+F!x#L0D1?aux*@+Y$US{HIx?ozU5(GzS&OIn=W zydf+FQKc5=j)yfPzND_j^<0XLLYUuDo^%cKuk%xpTE>B=#FK zuf?#T$gyXzF>Z_;r-YmuPWg=PYz}k0Hr`9Z;rSpII(NlIcRfi9lkUB@lkwp&Ad=Xu z{WJRv&4zwDZhrCCN-bB~x7&B~6a}0eHn3+Lyr_VE=uJQ$8oL?#C*z5{tY7j*>t@ag zZL{Yp$qGnCc49J9xC#musZrmOpRsZyqXSN1w6sh5;flN@Mt{!XChwf3A7lM;f!6V`x|MpYkTXWC2HgzSmV3JPzZS195Ab#=cGd)IpyB@Kh z@*{I@`;86M{^1Krw zW?l5Wi#qQPvr7k~U2wH={TIiAv69w&s%Ur;u0Olc}ngmCDS@ z)XRAAi0c|rKVC%0{Q_IqF%YPDfWpV1k&hbT7nB?pcZpf9%d8??`+BVQ)`#n7ecHkSt13&ca&&cTB z-*Zzh%T9k^&pk7^x0zAB?il>E{Ib8qWedi)T!{JyHmlgxaULm4EddQb`S$1IV~St< zr_oh?Bfm$&P?KxoqHRC4;TQA1JxgauHA(t;)h^BsN><)6^*4_O zY}dF@BbbpW0ur6}y(VQ)`xv{Z_TL|naJWylGk`&riyHS&syu1h$r_WKY z13a=)BW$VQ7iCHzk)iDE!v<7T+1vQ*o~J|vKMp_s#uoAMQN256zQ_!&^kJ?+f9CO( z*yqm~PCQ6#Jz;>ORuhc7_#?Y@`KNyjvEe^Qfp5lf{utO+1ht#`Jm*!6qV8m-V((GK zWlR80X^vYkBrfB{`Db@5UtuU_c^Ci?pWz8+a4BdUX!;q{w>iJod~GDACHptb?_Nk0 zLT(?Y(M8_Fp5_wi3&v=widzw<4tU3cohRS4mkKjz4DZLL8($#BfYzMLNX@}$Tlml< z9Ow2IVC1MO1cmyo)ev1w_YLyMs8nyiTu>NqI9L8N>hrK9yY3|Rn}CGzTGC>)!??*~ zJcQ`q;)we5rj(QUYr@e!E_5E9+#5yzDFQ`og1=8e zVczDUh*jhw8jAFR36@D;R<=~8EnaXCr3ivs7a3M=_%$)v%n-*uEBgt_@rF>A;}()H z7miIIab`WD_fBUBWqo;;Yj<&6`uDU=1}N z>Zrt=VS_m%eK^n59jRNhOeIp|Tr=@}FQ7_LA{)DNnRj*1$@#1&zSPm;YBSEbR|0Q~ z9_P!}le!J?!9)P2CQa_EoFj%y`7vqQWBho5)qC~O5VuuH2?oIb)o3DFEpkczDj;atcEn1iv9 zfBCQGI5zbd|H#q3qtoLyEvFNvJD9}Kkzy6z%xiCi@0DXENur`X6l03W2xE%K^luvJ z$EhUBpU@b;4h|)G_I*4v-B!bV1o7(*1{dcsBtG}oh#pa8$~-(6DmFA2NM#MAKvk*6 z^Z(FRbAF60kvs|OUUP|zZ~Bs6ih$c^b%?LxK*-Y*k*Jh>;W)oafHueJ1hqEWG04NRnw7>GtQkFs0X}Nuy_f@6n*=38TbL z{1NlWF2NF^jUqKCbzwQFKPij%W9%r=M)0d-xZ77ayu8}HVaM$ zBGwb6S5WL*PS4F+rStn923Ux=kLk>8D08VS0+UK z%<_3YgZkd}@kFOJfU)4%>(I(y`9SwQ`UnXcDN5$;03V%5X&v1MX=Xp>(0dr>N@j6p z&U!A3j5KXtp|8Bs6nlrXI(j;$u|WEe#Vdl$q7-0BddSx+A1-PC2I)>)U$Yb3ClM2G zz!rCY_VCv8Xc*}m8J{)Mmn;ETYaI(qJ#!gqcdw0|ar!w{rBm`8K15dmCubdNtJ}I{ zS8XRDJ0tsGS-hsDfrYJWvAd3~i;0f2p2_?fIb#yp&gh)1^0Xnbt$^%BlINB zN&D;>Q)AnObHqE?xZnhXvkn&c@>-5F=Zp;f$tEzdtaExoX1ZtX5~?j-lGWAKNH*3~ zvL;zBs+$ZGlSGQvEghAzJYg9{b4fE@S5S3iB8Z)aowaO!84g_Y_jP=)`+G>3i-Mc7 zCLWPdLgK1&n#!UmZ+BrC4(D}kVUx?yT^x&2q zY>9$T8erxwHHv&9k{SRZ-tHag>q!;5d?lEltvn#o_ll3$wQHB%HARGeQP?jsC;bZb zJ#TS_dtLqjcF@UAp9a%cLLOZmTS3C^xY034g?_>!&vM1^At$6rU)}CRYh2Uj5Zqu6 zbG2M%q1w4W$WiLfUNDH}vUv02vk$x(`8eBf?=`we&R~l90%5cHGs%!tA(BX?O2yQl z>LV=f$JoG&t0w8gQrSexYoxiadocwpCP&quBGW;GdMUc9#DS_777@cW0)60e2FRvg z#4v6|67A6|?RZNGxb^94(WlwYb zf+MwhL#p9>EhskJA0#81k<(Sf2lf$irJhT6}`|xSLdxp3^dnO|37(>QfTB z_k8JU|MJ={#oFeny05o-b4s9DuDI=92b=Pu<7yT?hGe0&s&o~U_nwCZr4xMuu8 zNG)Wqu&8QzF&v%Fh@XER?9X?KX5qm1FXi&7Mu0zdiU zd(=_azHOXjdVG(HuwD`uDr5Afi)(q)gVNKrZK*k%{zl`v{fLGyPC~UG2#5U>WKGhk zO>%x-4;Tk^^~7l;v)YERieytr%7(b3tVN1a*m#Zu$h$~T(4ke*nQ*=oWcIFMp zyytu8s=EtRP--dsc-HPk?5t^S$Mk5+$44*SN*G=mlvSPZAZmnZCF;^oBm2re05Zh!pr#)!{yHKac_3MbxRo? z#@ecXR}~a_B*oJCiL^BS^zhbYEwmgj z#0IY5ND2zE%u0LOG3pk!wM<&{4&0Yq99ysE*E7ZuP4 zV^G8_xZs{X`II|h0e#r~+8LAo*IqPfOB|dXKXdq;(Ppgh{}N%~EHz?&N@6o*2j@Rb z;iLLi(Jek;5`=?^PtVm)|iNl3Kbiea|1R1})Fj_M+RSyImBZ#z~d>Em8XIMQjq zva_(Y5yvE6G-`npL2WZ^QQ9`69lOxInEfiboHG<3t$*W-wHoe1;93#;WeuEV#@5NT zdliWWdS6drHvG{%7V*X-$<2K)EvKJ+vH$VxAZLqOelS&4ZvunE#7-GWV3h_eiCBdS zYeuXb`f3GM1&KYQ*j`rlj0--ZkOYkZovWB-0IrNLYy@@}#5W?~&2gte4Z9URUY)bOp``-A1isw1&FB~P(B_;Mfk)0}!g zd{ykz9PEGi`v0~Puv1tk8e9ZXT8ovCg`q(wYl;45-lblzpSBmD0`SLL{pRS_kW`Pv z(|Y&Q|NQ~rpgLyr?)zH1{kGf$s;w{y0YD;8hN{{B3H#LILZfFx?8;=ujZ`4ZtF zsSe%hYXEp>i14%Y27s|-+yQ$7e>!z27px&p_;E&+^zgp z+P$>TZ-W4MWl!Z~d(G7)Y4B|pqv8LtACe^xPs;wbD$X&M?pbDZcu)_(ck>R*CE3mp z>dVm8^CNuFI*jJc3h|dZ1@%h~h*f+atN}WjLj9u3T& zKwssi1_O1TrHHHtC105nWmRVY;y{1lg?oFZJgz2Ubj%sJf7gg>9@8;wTuFS-IA99E zZuL~+LbEke6~&1muayC z0BJ*;;PxUOi%kWrx87H#L=ZSqkyV9x;bmr1@e&e0v{^_LPV=qFd}ktgI5zOb3jn9n zo8sT$ROFrBw4#1Ogg5|#140?4R>pUS-!1w3o7q3q!Z?Jrq|t>^?}GdXTzUX7Jbi2$ zaTk5XBp$jgJ}(CC2*IZ`TVGW0vXjRK+is1ylt!0jSzS$VA^a zxOFX~C{br=@;7AU*8ZzulEs9k;SP%!L2jtslbRcLpOvZCR-a*OUFvDkvqH$hh)(OQ zEi#QZcWW3uf<|5dKw6b?Okh!AoeC!oDtWgh0uZ}>(RRu0OS3UT=vjZ-r6MiyKB?Ezro@CgY-5I-z}RF~sTxS?&%b=wvqXCmcprNF#2(sgQK;J&MH zsQN;m7Pd)V84aNbbM|Z?wU2c#ZH%lok#ajy7SK}6ch+Mwh!F$qYcT{^_&5!_?kyRjo$sezC6rkhL}WJ=8MZ z@Y_~TQ;hYv0E!z2+o2cvck|5^$l`5!cb`FzW*gY6h~|tFphkT$$^BYw55c9foes^i zrnBotPp-~;{b~rO)o4}saHf|GbV0GZ)z?`7l$fv9O$Q@F1)XDm*`4rb1OPt#+Vb3W zzoKj5uu8jcUxfi!I8nt#Y6(g8De6fDXObiVcoy(1iX}4Q{(7>e@+*EHZ2)>7Rq*@p z=;>THpc;x@OXr~h&=b}3(2(MW6yq%Z@B1|!1PwMLStB_ZF=0eM)_Iqe9a>k}s}HRm zw38hCT-_>uT97;K#9V=GeI_|7oIqvF)^|Aov04vtGgAwk`{t$M%+tAD-`mwb!@=i! zSY~pMq>6FX*OOl%0}l%=h90rUf+^yUcmOceUC@7UZqT9Ld?#G)Ru_T_S#U>P z%lmF3Ui@zrLll=yBLFRvoU@{9Y4}Wcg`bxvPrU;m?#d62Hx9Jtv3c{}8cnf&kW&^L z|8DxxxdtoO!YS5;4ge5TD|oEjqhx82L<#1oeqRSgQuc%HRd>sC?-~Cr#iNGJp_mYn zS8od~O7`FV`Kxn2&K^*KGq1$skENp7vQ65{K@}!6Elk6_um^vK9}*XD54HGqa%Zng z8DGVAn4=&FnwBozkRkHX{|%!%Tro(8Sh&U6|8yo4tBHxSsU()dz9#^nzl$qeb=kOe z)iX|az+TK4fSDWKZ{`Nmf42i=(tuwx$1IqPK+IMF)G zn4t;#dqy@;hSC$;i$1Jv_o3Al4%;?O^8ql=lWk6aHK*qAD?RN4ZbK33(HjkwzVdLY zJsmkuatJQC3_w45eR%c08o6Pu-|b4`ER>GerH?t!-wD6`?KS;M7Uh5&O2u^U$7gw_ z)F{+zzYGhiTp(LznV|;m?-C#RJy_$S{x=;4<#h1s?$^s6Kl~Obt$Igf$W(^=bf~41 z^zX?{>P~8BaIv7cmitUrigN|S&!uswJ9C6CpgGrap)%x(=o4diCcr$ryIEhBWrl_< zFWR61@4SjkEKF7kMm6xp1CZRgNT%)%GJ%Zhl<%@vcsH^jWZC>{lW&V!sY$D3{6^0Wn4StBev#7P=}8v>tKDX8n~FRR!2 z9@SXB1YqyOk&wVbR=;mUugRY(-#7JOmi2a~YKJF=Dja9w3aym&+t;W0JsDxb-|EOd z&!V9G(p<9SyMq0&MUCv(zJLjNq7J~9Q%^dgwArtlCx2R?tnxwN^5ZC);kxS2q~Tnr zyS4sA8~}A8JQ0>8q57|aUL#G;m{t%-L|qq|aQ`FtMEl7vC_`ps>VJQHLH-xT!PO>@ zH5CFe!4J|G$`;x7RF7VzGhGw`vWM=q>fD@dWl0?+p7*E^GvUfr<8Q>xa(;Y(cpSAz zf#3;#Rh@~Hwa=Ih^MR=8pA!r`-^He`DkpFb_AWt(hgZ*YeqZ11sbgld3?G$#2xWJv zz1ys_-{YyDjEx^~{5=h&VVSZlX!JV#b~y67wnyS9L^XY;UiUMrhI~IHLUKic)W-l^ z%t^gU4Q9`KcSS$zHqOq72tZ8tL;rzV!5w7yuefHt6&r~4t~FG>wYX_(j4dzZPkX%wAY89a`Fzh4N>A9O`!Z6O z>;QOwT{_ZOgZIgIYgp;pZC42ZzJ7c7)0BD{?aq0^eL#tvU<8Gr8|Ke5r#s?>9ul84 zn^TLIVM$W6Qt;m0idn%ZILRUV`zf0u(CA&O$PvU4*3fCtgu6eS7v#Q zDo79);Fs(uUGQY%-Wp@GTXO7;gm`2qovN5~i-t{A@dIA2f)dD&T=pjm$W%#Lz5=uJ zAH*(s0`LGXLg2YBx4mT78|&Z_R11Jeq0$Q8z^~0k{JP-Qzv6>gZ`$Tknv3c zY{zdmllJP5g}<+wy8odL0?>#&yIU2(6J%;R!Qe?~d9?HxA(}o>X0w8kp%?Xb>-1a-)B)Rg{xgzLPz^D0jC;TGv{iIa;c%R{& zVo<`V@S!8uc-9MY#IJSFuRfivFnTQ7qM+=x0eQ`+)p!w=eD6mh@1fic*m=4afP0w9 z!PMar>Dr}|kWl~z`_L;w&(25E8nyp>tPlqIhr9~L_2IZTv#*r&d=eb49^c2pBy?ts5v!c zWWp-@W}mN;U=>#24!~RMuVa~SU9U?dQ;(lJT;-o7f@86vm_%s^vH zC%5E&oJp|=#Rc`731t0XAJR+`Uaskc(zAv*>t*{9Qm>bY+$|#>Xn!+QUQ&Novh4Ps z3Kw6D>I?+{T#GJznUQ&CO=O~0OmUP`0 zII99uP5d{=RZ%aP#zzQ4kLRAK=pKLB1_(r`#~stHP;381g8}{k0RGEz8p?*9^5-i2 zIP>Ha9Ry%X`kWdwn$|gUEJoA_BOmB6=FB^>{Dx>v&&w)l}Q12|VWD97& z!}S+Rm^9D_Yg{26U19#cEQRufxp! zQsKikFL5-KRKM4*Cd~XzCyap$#*y7pG!Q2iU`%C&3aj; zTeD(ekC+vQ%t6t4$&@6&u;;ZG=DjLjya=pGDlNH!biqfMEB_!>!og!(eM=oHZ3hEK zWBc3k5RTbC)cj(Rr{3w1sodzCBTpL}w0@94(4wBPL?x`iO5URh1@#D`MLbTs;4C^} z9_EsA^FFiInfvHl{~VGWT~5Tx_G}}FHnAF~ETqsHu^K6GpmD!2x-+I78d(1~xhn;L zpYg*9BWax(eY8KZU*ftFuV^(U4WGWZ7~jg2^o^w#=Wx%`F>NS&KOcXezl9wT$_whh#c~LJ)diwkL9F*OIh;`=u{H)>p zoXp#s)dhLoQ1#%>t=qAw-Ox9;Abd|3AufX6jOo0ae0yefNBQnLBtX%S@qkCU%o zls{Q~T2=X|^l|MTgjaLf!`}vme)bd&542?uH8lZH*wNDYC$(j$qhqjmexr5|xNnY5 zZ|%(19&fC!y9Ohf#+@|=60kJo;Iw1mqN7ltP^0JM&_-hz5S~&n z3Ih`YqI)n5P`Ytag{mPDrFv3RK?qu-gsixfrKauh#pP_l3vz4smGvar{_p- z@8oL5;-(JlOo5@18_7gl*Fp~pBwZ2~LsYtX@uWJRI;RtakV27x0XKbwJT6C__f?TV zokf5!j?3Z~?#2AdNiWF$l?j2)-G|L1`;}Qa4>}9(XHYw10Z4z4m(i0PU-PW=^Xu2| zDyl%>^y{}Z<@^7YK7Cq30-*MNb=m8c(vPp6-Rtk@>g|V;aBgq=z0S^&Kb0$uEuC4n zpj}L?A4={?KB(_F++1FS)T%&9$;ZRhjf0Ahm7SB5$N!c={ru+hC#yv>k3W=zIx+D8 z7*utjV!4?)tU2L0h@k>*ZdRkSCNc;Z6AO%0CL$2Rj&Suz-w5Z3Q>wypN}@_oQc%;7 zQjtCFdF2X0o?qG63}Psd^Kh9mS~4S;6hoXGvY2!S{l^nET)Jav$XW*nS3N(^4L$Hx^~2 zC*JRQl*S5((Mg35KD=4l>bvv$V_mg7`f2$=enshryxsp+|4)b>Jgxrk+5BE}-=D$W z-#_jG*{#0%-wy_c6God_yZ%@Yfy(4ti|mBMqr=aC*FpW%`p5Rwse?x!bDzJYc8)?0 zcRaDTw=n;rdu5*2Q3`qx`{EtSlEpr$_v$ESm7*eSc0i4ksE}|t3iZ@q;XPK z^di-TNkmg#Ku{WrvTzm!S+T2JC*=4dy-srTLRf63&FX#5z=hk#+0>k#Bm*%VLlZ3% zT@xKrsFt!wX- zX>;~0)kd2RO77=O%`J7UtPIbY0jvYX3_8-t$kK6haC6v(Mg+-*cm@Fw!guK!U%;g> zFFucJ7x+Rv065?K;9*>E*2DX>n4H+yoNOd)bZH)ZNzILch;&z6^q0Ka*X93e-+cV{ z7|P=x{=F-I{_k07Y0c*spQ?(U05Fi88b|$-w7*|*G__xsv%L$zY)#hw)X~%A?e(Mo zVpn$70H}zcn;3ifW9UV}(9Gk4A45=vEf{L6EEwI|nLPe)a_Z@15n_M(@Njl_p39zx zo@pPDtO1IH6PS>3qruKFE+!QG7=QpIm#KUZ&^V0}`jDu~DN83SbGuWvW{lRX`p^m3%=nyk1nANpogX{XpN( z&72>Qv&4Sy?C9(5i*IReYEOCE+)0DAHgu&O?oU)`)^1F$?E~(y-NLPv;;G`k3oFxr zHoE_E`tW)4FMDGr9EpXCP^NR_3K(tZi1X6%r9O<#cjnw}*Da(a_M@#K_e}Mfa?Mu_FP9nH##C#p!FA zoC$CTzSPJI*X56c6mA4lBcp(pFTckH5eTTL0p2$PFI>cf`-%NI!!L90WEMb}n>+mV zdv|jTH7zN*zB?r?DcTR+9}}C`{qDb)p8%*XuKoP;ZPnww_s^czl@&b&vU{bU%W9sK zzO7!k_ow#|fD|Y{<^TCM*xB6o^JiD*3y5M2By_b7cXjprP1xJoSe}I_-_+Fc(Szgd z*^Qm$jk1|N=>N_<+gll*Et#I1;bEj>cZ5ds6L~p!!*0U?iJ&Ae0RfAcY>2F&l%~RI zS%pyF6a3O8s*3c2keX`|g~QHP)h7UfX!GJ_=Vav7QH(G>$40X|qlHB17$8inQCc^y z!Xj6_JsIRfu7X)`eC^7`<7<~>!aV)2gGnVb8zUE^54AskA3{X)_T7i=&;*uPYFa8N z8cL6jOKY7PpMCwI^kWSo6IoMxSXWh7{j_|6AOZzF7;k9p9{bfi@OQ8MJ-H>rL>k-;F4KlGYEznHd(iOfY-0Q{+ZlA(#z|5KJbS?Tw3@}Q!`!>rq> zccXK2<6~nQn$+p~cyRUh)5dk^7Im2_ik zsc2<&lRCGuT(rEhS)`@1hNfrdqG$ML1-+fi;%s?(SRVn0;d%6Rv4OKFUL@Q=?zA#w z3t5GrQ}R-gGN&|!eIn{!g~{3fwfE)!P;c@7?>BEV zgL#{=FJq^2BN5W2BKwk^a#7hrvd@fRhWFbp+t@PpC0kKaD3_9bNm6m|mF~USMcgQB zD4+R$|BBBKpI^>-JkI0%a$e`0*XwnjkLT-ouGl;OW-H`mVvaWh%$y7iE?hDxsXW7F6% z=fka(vf-r6lFWhRy$795%>eLlJGQx{{c%Ixc5Y7Qm)b_QNh+&;AFgd|`+Rrt{ofzT zHreNYhIKf*U-r-Vhw;>&S8qlEVCs+B(f(KeruMxYYybXr{fiVzSvl-j-QC>f1}K{w zF>`BQHfNTorHj>K6jfjxAO?bG(C9HWNcJ3vEl>jBB38%u( zYMj!gYid_;D(kuEsOteoj_TexZw4NhzX1?&oO}kh0AOh>VC>*@&DGXK!09*Bs}?cJ z(ig4lG5V(e57YxJ4b07i!l@x=$w6m5=A#RQ#{IdnkIDfzk9Ep7o6n zIwniscE=Q#ubI7*>dxl+pDi8L+iU~P*0nyUt$X~K z%{j}DS*&2=WH0WI4*WaGni_vQnA0`>;a>pgo1H$LDBD9rM)U{8?fPkX9qP)rpxn6l?Yss4cVC;h0 zx*FO@x;Q!8nTp{J-Pn(QD@zN=*wVo8(gl4*^RNH_3Z$W$i~v6>nXZWi0QXRL|G*%x zVDDqT0f3X&$=agw+_Ho?unS24^KVvuX)bBw|1%a?pyG|Qr(L>6sWyB@xGkB@V>$P*|G7z$3_P7$9uYmKLShni9>%* z^>y{8jdZ;NbQX5DS>vA-mqb8lk+IW^j;v!Fgs?UZb#+RcIulb%6BDbY7I&-g|} zdHDJ$#q5U$`}ooW191P^_&AvJ;aq+MwuSJegFsjcuQd0OaSUj7)tX0sf$QMM*C#1! zTR5CO0AS&(Chn*w5+Lhz@`!0b7`aR1{7F4cE!|^W8j2DzpsBT+nTmn8zlf1vu)KrX z+ekm3NE91L@uG#*EZAZWuHOa^__aS|gVJJ?Jli|m5^Eq$3W7)-JJ4}R7drEi0hvS2 z&~<37BMKrz2~gV3N2mxYgzhocpf+e2dd;56)_h~UZwDG$+j5vo`Uft7-WmtT?_;kK4336+Zu7H4TJe?$O$xaYA?jemjk)pfDcC^Zbu4Kw1(n zBtR4pl5l69lbSD}%wKg>7 zh0UNV7W&SxzJ;Mx)B9^?u%rEDbA5l<<)XEzjWOn?hO4WA^F>SSh8nDCVr+6jE^64o z+9lBLLT%|09t#O!hen!^KHTx7+%1+fFt5%)-^k=z;!`V$JoLA4{fpTe1Htfb2F`|} z$=AU!86C`sStx%q;eIt{nlES*mqEl}+IwRr6voJlDlmq-Ps;4HC6 zSW-;-;lp1DkdZi4yrIbp$wGn>pX(GiL6IGhQ$dWtC&*^DftD6 zv}%mGw3e`#TBhGG(6S!VZ)8gJ*IQi&w|P;}(*)1QE@5@S2nR#=g*9cr$PQbMmWmS8 zJhV@n8arOl)#2d-41S&9f|ZZZXkMOxD&wRF<3?n_b>EQt##?-nT9Rr&qzB#arnr(< zFgeiIS1zhPEL>HCN2FU$OU}2llu*x*qp2oAsJD#YnEiW?tP^@(f&uu;j8Zhb$iwfiW8Plzc9%mL zx1Bmc;INicm9F-{Bf_J}W8d>=a7Nfn*q5*!GJz~fmM3eHb;zbd&0Vptq#1Z)Q&_gA|oS{Ba0$?BY)Br=+1OH{X63r!+>GSxWNcv#4%DBIgCO^4dWr>FUDS! zNR&fVNK}4Qf7D?#CR!j`BKk=5ndq44S_DAU5mUq(aY5V>Uxb0gA%#cj zuca2H4y1u;gf#gyyR^cz#&o8ekuP*OV-ca6H-eTT=EG`y-CB~9rX|pb{ zOj*_}l$FG4V70P3Ssz&QtmS-szD&MyzFEFw{-62Z3XT?>F3>HoDL^k3Tr2P?NGNz) z2p6gqh8HplV+xZBGYYE;8w#5X+Y7r22Mb>p{!#d~aJT4c5u+%vD5L0JQBzTCQAbf< z(LY6tMXN;{#k|GB#S+D)#kR#)ioJ@1ifP3u#cjn)#d{?{30xvvB3+_fqF!>o#G=H$ z#JPl0LN7@!X)O6rvWk`hrEsZ0>ABL_(v;GL($zABvMXiYWf5g)Sz=jQ*@Lpyvgxwz za+&fo}K1^2YM^^0D%j3W17a75Wwa6&V$^cR26V-xsXSFl zu0$&nD{CqrSGHD8RL-#xd+sXXDpFNQRdH2QRbSPcs!!FpYLrxcvpT6dtGc*)r-oD` zTXVGLM2%%lWlej{_u5Byv3GOpdg}S=RqwxgAo@W2L0ki|L8-x}fzeRe(DN|r;q8b0 zjpB_j8{a+}ea!J#>2ZFOQ*&GM=N6t8{ua>|>6Xxzv?mr%mY%M+hP1A>Zv1ZXdwKiH zbA#tT&*>co9WEV#Xvbj3)QjX!*UsS1oX**>nYWQM<;wK6M>*t9Dy; z`*uflr*&s{cXYq&p6*`k-s<7*k?uL&qu*oFFe)H|^#M>X}JDqpbcg64CzdIO{AA3J8IR5K+!1$B#j`6;U^AkoBmJ`(X+mq^( z#*=}QW8BrR{!SvSo`tG$K@&UDTOJWDc`BUDazFSsh+9Hsl92!^e@vI)3(zE z(?io^)5|j=GmBKYM+qeO_JR zSW#cGU!kq!tW2OQE31T6mDRcb`qmuQMc3`tUDvDD8`k^Qx7PQ+a(u1(+Wd9qo8ULi zZz=>@jK=_-*=Jk+TU%zyL|Wjju!3N?0wwl-|pue>%q?-f zk4uP)#HGP?j?0kCg3FUDfUB0Pfop(k1tWry!YE))Va{OmFqbhN7+*{fCJB>;VPQ%! z&6o~MKjv@D0#*o1!k)u=Vp-TyY!$W%`#ZK1JB|H}UB~XQdBgHJB@}lOXNXVGH=B;4AS@*dOqX<9A^V*aP;11L0Ws7Mua!f$zZ$a5p>z zzlPV~Z5Z9>0}_Y?J3Vh&<=#CpZvi*1YJ#gB_yiD!y;h)<&8yAoOwUJ`W@-4bggEs_<9LFy(=N@69g zB*&x#rF5mPN(D*Lq`IWmq)$qRO4muZN%zQ{koip}Ri;U1Nalmgo~*F!QCWZ4`?Bk? z_Yyb~FbO=dA7f`@7h^xieo5eqQ;JiGQ;XA#I}>*{PG8PR?wZ_Fxe@sj@{aQ1^3M-( dhZ9F0z*tVRW{~5M(M;r6|G(ycpA8;c{|~uSD+K@m delta 479 zcmZo@IKbEd#2e-`Y-VIiVV%@A2TX73NnqT}!nDAy=}g-h#