From fbe5f4a94c01ea43e517d37675aaa52f14731750 Mon Sep 17 00:00:00 2001 From: hammer8130 <154071436+hammer8130@users.noreply.github.com> Date: Thu, 24 Apr 2025 15:11:52 +0900 Subject: [PATCH 01/27] fix:CtoE --- routers/postings.py | 19 +++++++------------ 1 file changed, 7 insertions(+), 12 deletions(-) diff --git a/routers/postings.py b/routers/postings.py index d4a6c04..c30bff1 100644 --- a/routers/postings.py +++ b/routers/postings.py @@ -80,19 +80,14 @@ async def match_job_posting(job_posting: UploadFile = File(...)): "total_score": score }) - # total_score 순으로 정렬 - sorted_results = sorted(results, key=lambda x: x["total_score"], reverse=True) - - # total_score를 제외하고 final_results 생성 - final_results = [ - {k: v for k, v in item.items() if k != "total_score"} - for item in sorted_results + final_results = sorted(results, key=lambda x: float(x["total_score"]), reverse=True) + + return { + "matching_resume": [ + {k: v for k, v in item.items() if k != "total_score"} + for item in final_results ] - - # 정렬된 결과 반환 - return { - "matching_resumes": final_results - } + } From f8d6e9867037527bbf40e150d7a9d40788b852cf Mon Sep 17 00:00:00 2001 From: hammer8130 <154071436+hammer8130@users.noreply.github.com> Date: Thu, 24 Apr 2025 16:06:10 +0900 Subject: [PATCH 02/27] fix: poetry run --- Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index 9bf1fac..4ed193a 100644 --- a/Dockerfile +++ b/Dockerfile @@ -36,4 +36,4 @@ ENV PATH="/root/.local/bin:$PATH" COPY . . # FastAPI 앱 실행 -CMD ["uvicorn", "main:app", "--host", "0.0.0.0", "--port", "8000"] \ No newline at end of file +CMD ["poetry", "run", "uvicorn", "main:app", "--host", "0.0.0.0", "--port", "8000"] \ No newline at end of file From 0815fc1ddb9b5286613925b818b9ec149a479cb0 Mon Sep 17 00:00:00 2001 From: JungWoochan <154071436+hammer8130@users.noreply.github.com> Date: Fri, 25 Apr 2025 12:19:28 +0900 Subject: [PATCH 03/27] Update readme.md --- readme.md | 76 ++++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 75 insertions(+), 1 deletion(-) diff --git a/readme.md b/readme.md index 5c1be2a..c2316fd 100644 --- a/readme.md +++ b/readme.md @@ -1 +1,75 @@ -Rezoom AI 파트입니다. +
AI 기반 이력서-채용공고 매칭 및 코칭 서비스
+ + +
+
AI 기반 이력서-채용공고 매칭 및 코칭 서비스
-_j@@p6?k(qj9Uq*K&%}9!i82N88?7JL#0oTbwoZv5Gb!-G+b|$xV=&) z?Ip$X>&C3GpJ9lRBev|$y|cTYb!P^%l^u43S~FZ69!K{I2SWdH6*}h(PWfgsmy&l= zICn@<#>pS?c=oQy3`nasr=0E%sXRTNfrf=zd^+iWuI=(V=Dhx6F%j`P{ofoIfBP=} zn^WWeplc1c0LH*q2<@(b!2oS4-#pFH%1Vxt*Wu^xjM5H_@1IupIQxQnuL!zHfY(M{ z{;h?zMSgL#b8j{%9-j3YaWwoy?>5@Gf*n<4{Tkg$8kOu&Uwas|Lp^0OZOkY6Pb&mw zdD9PfI#pPVdHN5Mo}s~@4iGt72+2OYdenJ!klO6x#v1MP#*X5V6#bm)Q8bmAW*G?Bf!D1%PjSUGN+DITa~ z=-Nfd*%28k;U%IzQgoSeVY|t5?qgl55o>1g$M>oPj+{1 zQ$w!YN2tBv3p||8UAnJVEwIT7;S(bI; z*wwc8C?jNZhZTe9Z#P-C%8pV$$&-Uf$3xZ;P2~6c1TPusBqh12%Mnv0l}<|eHunvP zk~U%|9K4kDro~h}H6LE+G%lV8NV2S2g!0!?RkfeBL(@U CQGQPP{L4PeH7(KzWP^HcOjZt8yZqWMpb zcur=MzYqk|jaol8s88&_VRKpUp~P&;7)7Vfh<}E hu#jqjWNC2+dZFEJNaa)%D^q1oqxFMk&~6A-zDX zGL{>W16g@JlZ`gNsV)y@L9KN#h{xn%Q+70v&)qdhD@gM;a?6IT2a4nBaYFnP)Qhcm zC(}RLl+B+IuJTNLEaK(kx3UtPywZ)nbhErEZP6|Wo;A!S%$*QT9etQ}FCDp-c3>P} z&D(JzezTU)Jl>XHoWiR>UVNU^^hnG`YJk}HkV>C+Mqyxhb)^!1--S(Q8CMcYcasir zCMKKH5`6G9KI~mC30sa4EoFI|!xtD`J6&(r<#?Qwrn-))^33ISbf)Trdu-N^);6=O zMWw(Cq~dvHGJNEK5Dp2~fQL;|nu@>QwMX?@pKLhZ0;Vn j0)6MAOS78z(?;aA8_qGn>>^@^wqdsAVqN(_-kaj&? zD3O)Q)>TbuaaIc@+1O HVenRlP+pir*sKhkLi7f2uZkbP^vz+wUW9a^d zqX7SAlYwu(UbrE1Bx|(B@|+6X`z!wE8B3Wl*64F!jhW0M4@F;Vvd2~2v9VALs9! zM6(Kq^C_MB9sM<_S3oQ Kn>-L-Bf^S&?mYz{M= zO>qW{1>QwJT|F?Jo1S<%X=tCy$YmGh{bE}@-2N$*msoIb@X!?a`N2u;Er0{$M&?+; zU1oG?x%_2E)aa9C@Qf9~zQ9&(19B;o3el{>`R2!lF%$X4Qzfh+K@x> W5hw>VhM5H^S&XE9J2f#3UeRZ{nu&p5w9?f(52ADCWI zy-BF>0#$4G@N2KBbYv3uT=mozWPJ;sxug2VAeHNQ%eNO-ge6istJV_R$H{;1BYRLQ z$ce#evDRy+^oHyuR{O!t`QPEbR-8@>&;8pekI#YCSbdN78E*lcBiLZSbMa-!_Jf&9 zR8GWA*o8CGuKS&FEL7OtN_?&q*8z~7$M~$pT^tkw7vn1xW6407nD@UXjBz0Mg zV;g*&B?(Pi^oa?0Ax}iI({j$p<~(-YDA1+|hp>WoHz_ubSCgZpN&Ss^vDp{u*&Sb} z+XPTwa!|1I_o%7z9XZOeBd>}4glbNjH9jIXqQhUR1|(P`gMP&uTG}yIq?}YCV{x&a zklkaDsUH8?+bXI#AFYeBA}w?F{L-QcH``vgcjn7E_wp) `R)mRKbb z>BLCG5= q%-HN$ac5rvcfmb!1gL&A z1d-Nxwf}46ox6R>+x_6vv1Fz=RFlvZ!+G{yES-wGUF}0osi9H5N}U42iz2( U s33o6u~!YIP8Zb34Da*z5|AjS>;m6vWF$Y z#Z5AmO!y9?yYWJpTX7{?v$ZDv&C{C<%}3Fjt1_yVCT6zI!fKT&s|1nSp=eN0>27+4 zxc_rNzgTyu!{<=$ Elf!gVKE%fgFeM_n+2zN%zk7o_{|}jTff^kNcOH zUnNCf`d}ENwXZlJ L5q&FGE7~*!tVfE*1c}?fcKQre1^g3Ht*Jv=}e5K(4;jk*W zmRBo*VGKU1?|?)`VBjPesvygvSARDfv*HKN2cLkBl`!m(m4aJ9C-#N@7nsQUZV;LZ zhQhwEHFSRBFi5P#>8X$_iRfp&}B z0^Sy3vt>Z=`dZRuJPaG~It+vji8j~=o2AZC9+X&K$Q2IJLsS1W5Lm`*V}q bYpS9m^86Oyb`5a^h$`{`lZ*B3JEcxN)_vB99sAhH#~NERUK zE4<7C(j}cC-Ina0EwIWIOFm_ydcRzz450M9M2qNHsW;yNQJr6yE}@hDa}))^5M_Gq zVK-9fpjo>yPtUIm60Uj$*;Z}~!YX9mfxyt!q5~3ZzvACFP-Vm =#tg?0z0kd(>koETios7 zG^2q!a0_oVr2|cKQMuE*F#a%GpN_e5k9Jb&^egc;InOO+!}Myoc#$|I-{$N@SnbR{ zE;Nv_r41<&@~UA5P5NuRg{M#>Q^-Tjh$$_WG|3A$oXHggG&(Zs)t+N)hv4wP;X)RE z_uQJ49r c0B| zK-n)g=A~QBcNLQe7h{1H?VHpERAutD=>A}b;Z=nG *%(;ptmlB<(t3 zhz$<`>piI;Bil<0rk|-fu 91blmwDWpxwC9}Qg9aHIFt zQ=TdBFtgAaX8f5FuWIt(3BiJW9e68yR 1O{p`B z&4icCmU@4NgHm<30KNVv2h&OWQa+-^g=Kf?3D`4rU;bID?)(#pfQ@6oMj!kgukbIk z)ZB7`m7THKgcwravhMj#^Es0rrdzFD=tQ#XgU>fO1yIc{t)eYp-%hR7T+Dghl&2>C zN6d>PCvW OkKPBz3!L} zsL)LqhBHtOWw16B&?6^1)0^g9_j*Q~#L4}wMgE(C%V_Zq9IAJ*M`G_`lr3V2t@Cyk zafElF7#R_>!@+CMa8;GxTepCOkF&ew;!&Kq32^FjqL}(g-3vd7x{R5lt-R}zxD?xs zv%Twq0I!XDw^kqovygoZ4wk$HRC>d%3`qQF(G*7*wfb1t{^RT`F7Wg%z~z#{?YCL) z59N-r)ml3{DLlsFx8Q!zN*d%?vjwZzSliwL#`rA7X>a<-cVXufbKT8rPY$pd$_}$l z7wGqAz^ijC^OP66ti8q!#7A)VmRT{tVowDRQYX?!O|xr92+~?Kns4-DG7c;ocdYXN zFApIgXi5UZs`33ccH+Uo0EHu)`jHepZ@kN1ZLw4e-8d%w-2F-GTR?%x3s3!0cpjJ6 zkYGO(?LOFrIdi5jz}LuD$k+Z@)I2#1znxxgDidL3F@eo|cnyo43+nv_#=jX_xJzvE z&>;2Yee+Vv)NOy#sj_R9?=Bi^Z~|78>uCsR$^S$<9P0x)6{HIu!ZPt-R?Ed*A+Q{C z7Ec9hh-y!B`0>dmuR=F^E01()e|X$LYAK`U7I0d0mG#_>;nO+T(m&PeeD{V7t5vUL z&uLb+UOyfxv{KnJv9ww?8(~>(&U;(h#ky`w`4h@?Q`d%%W<)U}Hm77|zTJfOTxAaM z=U~Pfz9dmgr79$_G5QOr?xH=R1~=g@US-R_Nik%kmOVw_5x>C4u0@fmi9=ztCfaxo z^p!>{7yD*wRt)Ip39Dp%n%dV2$MiI|<1AhcekR5#6e%}z&&k+De@b=C36pUt=f!4h z$my3a`~3F1yt>S!N>07|AWqIn&bFD~E7;O9ONH#3JdhbBh=g^_%(+FKTGgUvv@){{ zq~p5zpH`FqP S%3TO>(GhKS3QlB23GH!lP{UhcN^FJ9OF+> zR^wd3>6a=4)qwU-Rtiv|5;1LzXcGkNL!hyPQ_+N**lfj}U%@9m>~*NW);FHWKlan< z5j+S$%wsifYHU-!h%O^twC<$nPuFC GHrhuX?AXh`c~|_x6%!n_ox2t^Ho)eLXF9; zo{oh=J_YBxf_~{~Rq~K>zK!LN&FYj%D;KZp>r0=iF~f|Fuy2Qp%EKCMF~>7n_4`3- zf*mlx(5pAL2$cwi5!dDF%!ed@oz7QNBglHQiROa)A+>!UYsql>x#GfeSsRmIs1f7G ztHtWc_jC5b)c{*~$P4AC0&eqsYwJyK>+4bE#VVz1ECD-42Q-IU19PNL>nDPVf(K#b zay)^S^{5JDL0C=Qc)?I%(nerEy;LNXdASZ-$DG!x{DKtcUf4%O?b8Y;0Si}Xup1x! zYSDcIK|2M(%(>y|jg!XnglM;l(~ ()na||jFK(UyE@n#C z! 8sTZ%2D&RI0Eb2Z(> z^^QKkXA1Gft?&=VK7mhz+=>?Ci<41CDPPrnb0yYvvf=L@@5Ld~VDDB1e3D|;^e5|r z%}uOAV* SWv8zu|un+aVQpWIb2#Y$k=PkiIC4%+FHXHFFk3&-nl z-2nsFWNlUNQ@L7b6qZL6VR)xRm+zny6>C#fYlgIr{oKSU@WQ#Y`57ne247vg3^1Cf z-dqN@-F1Z35WKfXY*uiX{E8QNTzfC=-P|u6oVs;aT|#^hVX~KRRYt~=iVP`}nzXO3 z>*eBWEYx*BT2_d@1rgl>Y~4OW5XGlvCM|qL;0T=wc-ERh1ODMdhgc!cG?_dCSv*#v z%dT@^Is|~3wv rU!g5F# zcElh>;-zUh^09l8ug*qVq|c)WrmWf{tPYjE|JC|h+St-+$*Qn+bx2(-e)CwAkBU5m zu7}2twVo@U*v0ZL-|rM-#krx$O lFQ-j?zjK^hq>Y>?Qq&q|P6Gj^^W|PKVKWGAEi-#N2 z3A&DlLLts%u{2ir7&35rOFemCsd@XkzwP~CCs$@wb5gj6@io84Yc9#rE@=oYdwoUx zFInry%3S&=zs#fEkqE|w4Psch*KU}pnUJIj6;9K26 z_5=EeX&6=ek2|Is7Mr}jeM?rU&t&4-YWJ4wKVPYIXUAC)Yli2fH3`%fbujs)YSGDh zSO}-;{TwFTmE=gYT=+aK9Pt>+Y;@D|IkgRf(59C5=vZ}QR4aob>X}<$E3~pYe)tz? zs`(e`bB>2>;K3Jal;L`q_jw_Fr|PgLvRsJz7bwANi0`{j>8C@Bo7px2#42JZeCqQD zvRz4~d1Wk%e5aU}H>T0w wDAh4E=+P2C!RRMC`-XtfI0+CtLLL0yUZt z!=E3gXnkSSdf?~i158!23{FAz?PGat50KFwDJsW^{DmQr_Ly(!r1>0_=lALUN3ZK< zGV`0=>+ADwRF@qhVI`|>M7pxNyyM~5qGx2oBkU;-xMNhQ+%t}ce5+)$*sWG*LDg=( znp}Z4luis}v7*IaTwO_Lr==LZTGmgA8`YEi2{=zHGw@0W!k)Ks p zL2+-Gj2_R>svQ(@4#d*kO3o9M-ixf&%`T19T{`<_JK^u*TEAcC+}}ue##cl-xx?Fk zy^sPCgN$x;3#cc3G-@i)z}nf+g&?x)U^G6Gtd|ULdkz-f-rR!N(|$Y`p!#5txHQd^ zJ7jPpG(=fmatm-t)`7Kdd8Ud!w$SGK`sgF@Dw_<-4MWyc8edixH!J$R2z6q$MfY)Y zM;~FhErX{ovK}FyCPa8L5+@K1dAXB>)};G7)IRPYT;_SDPCkii$%jaT6CB7~%T_`q z!dpaa3JdeuX|)52oqpWm;IGFoTD!3c_UaFdm8;yD{%kr{5FpcfG><;?e!T&5E!Bzr zoHF6vRF_&0LD}f7^&M=(=vv52d>K^{#Lv7w)$P42HIHKUSaVVhu?c?G<+^e%2`z@a zhJ`R3wZlIC*lFYR)U?uVbx|;rTqmt-eEuvf0{{CLP70}BEfFhrv@!~Ktr_Tuv`<-W zeb+giHkX=Bcs Z(}wdRsF?`}stZ5*ekm6zT!@y~~-+R;)rcZ$6$vnfCnE(s~$z z-y04f7Jr2Zan092SYJhaX%3yv{ oZK^+{iufZvSr@K=wy7UD6;SMISiqBY4>Jzt0&m`28R$mI)f#m@9S7T z)b+&oAxOw)zwy!o>rVj+pF?r5o0Ry;v0%Lk(rE5{ZTjf#5eFaXCtZ(|Wq#>j$Dz=C zD(7rBpFMeNK)7fN>ET>4FK|?FM JIZfnghT8OX= ?4#|oL`H7`b*`sdwc^V=$sHScQ9kZeF&Uqk-;KBSVTh=aOCw#DcibXO z4LTQ4F_t_6t6@K;r@w_-zuz8zKt;OOaOJQy^6_HsXrC83sKO!?qBPo~SfJo$%E>*b zcBhKf$JZ9$m{fI`;1{1PZEY5dQ~#2wiq*!{{IOVH0M9Dxq)~Hu%?`g9dL$S2CLtWd zgwneP?pm@S>N0QA@|8-=)Kf8m$=2zwj1LpPG|HVV1b0A=!Ez670l_EOJy$o&f%6l_ zRoH+ZJH7*z7tL7XLc6KyM=Eid6JFv#_)A4T(t8z0STC}sLnrWP39Hpi_0jUaDs4PE zpt%LWr8je`YV^g|clJ28AMxb2RL}fJ{PzE!zYLR~E2g6X>ewLi2mgb*_Y7;Y+qy=h zpjZ$@ihw{+Ktx2OcOoiXK&eurA|f>)9Rg7hP^y54(jwBNM!M8UZ$jw3CG?(9LLi0j zexAMedH1`&bDcluoa?;jhZh=QvF@_wnsbaX#{y)rVQ-Xuh>XXeczfJ2h $h`{F(gU=VaL||GD z?&}W+4K e z7WX*~g>T7o!uLSjq*yGnC22H>ht%C>#({p}R0Ms5j=A(&POEYF#P;qTE3z4iVo$Op zE0SuP%k*3deId;?KM)m-h|C_CfK*hfvII{z7sT)G(M6{ik|@5wlGHZwz`r=jJ{vAS zkh7~f_AUO5S75RC`?#M?l77lQ%3HvWL&yz(m*2ZSY`IWdN{I2w=5`xBS_`~NmL >9u) zjp!Z56k08qddg{uFz6*9(onoy6&4Zl*qUV*y^(SZy0#n(*>E31d@|WG0Z?!lB{E(4 z7*x{!nD*GL+RRmyG;jw<1 j$_kj(|2A(;Vl)#5xIcG}(ri|+5Uh*uWm>oa6A;5km}$3TNtQN19LN}KMw4Vh zjzN*d+cZwIIRh$dH<)tv7a$b;glIlT0rK|mezw3umjhE?$8K`-BC)h*`-=6WI5#A| zlJeJO=7uBwahaMFG4wwsx&5D${68)exVfhg|8;LQiJ|`&b4>W_X(3iT@vFz6Uw_?M zA0)mBeG;*f{sg!RJzy>HWd3iHe$}@DIGOA+=M8VgFw;1e{~iE%+%7 _a=Q^cbaA`bm>fq~Co6EybKR2avt83U+$IVckN~?g%XHc; zJ4!l&koy>2Fl4rQ7$FkyM9GH|TR6d)9mgBTr?p%0p1# a6jjP3bCqThg%?eG&S@p zl$g)FI=!ZMt)=VP< ! z3b1X7hYT>E3pS(b4;+W0s^_mGU#H3IC>Om7Vh$RZrGp{tF_Fpb@3xdz3k47my}B Q>FMS`wg5-tNhIG(_Gik$l7M~oNr<2SU zYABe?WL35`g>I96FhkHNxP+;iEG<@9Wfuh3oLkSM2SP;GxJ+TLpkS9Ih~I5)F8vGx z*I_)`6?k#B%-#HUj2dIIvlPa(aF60@IpL9ZOFVgD}-&i(fiQcKifKaYFuwHaC6q z^@fIXoeq@$G&6IvU%vi_3WVBVbKliuOxp}oTHDwRujz0A<#)RrE#$OnP6L&lG)(5A zJO-abyb@=E8hBRLn0{~9LEFn4+_XA%E8x^ejg})3)VP|B>obG++Q5Ak9>&8}p)rdW zC58QUu97k5;x-)i%u)eeXH4GdkI3h>zwQ!BjGrYWZl-#w4wo15-WOradco2mv& TH1^b>%+2^Y+o^2-XOgKDhm%n hMmt@_q z`r_rp2~8e^ui5G;_7TExeN{zm#kSL`>+EP=+fQi|@QZ=^q5!9$V-VsH%;-3KDZB+k zy55lMajU^KBfHThYkFZ}J8TV #X@>rFkf_XA0Vk!U*HcmlCaS6$=?W;eF*bfax3L1Jlu6N+gj(zSCa=1$F1Y? zdIR;~Rd{jQL;HCjYLMkINZx60&~#watLOHvUPC0Nv@UdWInv#lP?Koa!5 IbV!9EXTC_xl&6c4e0{6^B{hL$VUu1~W6ieJ$Ep(tI8 -k#%Is~&C=%pp#nlC1E}b|@?2{%to&sgSoH9hcwd?qgt1Z2(;qwTg8N)W&W* zIH7u%dsSJeZyFfZj(9Gcre7PX(`0-Du9{ryD~Gk?4;`WcUI(r(LnZ`%r}Iz~C|=lU z1FT%^w&2Kk>a_X!UrWhjB8C}%o}P?N^>bx%pYlA?U#Fdo#kV u zK7Gj5K2jSS3e+H|CRFHA9e1Hc;P!hjQ9t_1-SvdRCJx>+(d-vL`kngp@vgw>nv95d z!kfJ2G82
iBjnb2!}0X|4dp>Lj-`p;W{-oW?hu z6`IyLc_mf!_Kapw1r~{)wNVAqt+PdlIdvenxi&g6WcHQ2JOMtm?K8c);2)o9^5e%) zMPj8z!*VO+Kfk*l0O|MVw~zRfNB>F)cf b9t| zk({v1tQdUeqhzwp=N$#lOg}+`m;7EPxAdxoeVwE7=XuxP1M<+1z9F>t>Dj=7(}o;g zYQTQak@- x^ zJ-g7b;nF_M>#+${2Vjd1Wi>!`VF0MA8ncj;4^X#$OUz}R?CMqLqS~>hbfyZ?9h2$l zl_~{HxazH>_H?>FWp&xqqlXjOpUhyk0!gpV{}4LQZWWhmPq%8#%Vw5#JvAkwRON;+ zXST4<6lI8tq?mjsDG}ERGa0CL4sJdqvEBw!;b^7} RP7X)e1&*#H2=&3 F90G(l}Q(Jdxwe#-vu*e1SNt@AKXE zq|2fU7#PmZ=krUobNNlzC$tUOKy?Z0Pmtxz8;+{V0ImsWR>a}jUJT)Lk=;Ymoq|5{ zhG#gMx7zDoC~Vy2zoci0$80d*QB5|20~Ou$BkIHyANB=4JG|YlfZKXpS=>i?RF>#j z(`b=<#)6YEqpO4Weftw%^~%h}e P>SaIlx2vZVt@|Mw>{-_8ns zP@jlq;h(3A;t7^ya+))kI6pTNix >elKNn@ZIBHbdP+n_rM(@M04O~~F`r#;y^s4+DWE|E|155fJZ zNiVLUNNV1k5R41_^y%FL$p)M48mWVt(Q;#x0 +Ma3r$C z3e4G{^2E2@lE6FM9vaUk$1OOZg#Hr#{<|Pf9=d&pXW3hoXjV(jK)-}s2 wYm; z{}Jr7-d5t?hUfF2y9K6Fy2&DNu}Pcd54677Qp`KZ%h_}2Naf1}C8K_drei13>3qRh z>+s03$+he6G}i74eVEW-kY9(I1_2uctMYw<)13a-BHz^Vnq-U&a?<;qoC6m~_idZs zO|7*@$v9;IB&DAr>19B(d-jqK-akexjy|e?@ScpkE)N{7#D~h+3*>HYuCXrunmyi_ zyGks1|E;1jN|VP?@#c@Yb2X&*`jI&cOWU=kRcq>u(pYoj$B#_Mm1g&pFJmDacG%fa zH0M4NoMv+Xt@$M`^v>cVvrtw%>r%&ny`)6viTCuUowt-nQ{nf3_u7jPNi3}*FhtD^ ztYa6ynHMF`Jg(}9F8v%Pwaf5Qu-4Y$)X(vz*s>qRPoC#DIc9GSl Pn6%DL%lJ3@AeL%FNLS)AuAG_PP%?}+ktuy&qQqw^PkQngEIw`_#lkfuq+iesp z*RB2Y@UxqOZE{yt)K-k~LEl(b%1uo~hkoD|XuNgN4%pQJ!^cn#ntc YtGLX=4u*KpxcEKNJk`=xoKKzuDzKm*TnrdoA%UBq6gkJ zQ1w+n>$Qoomq(vxt7n}-dGk=Trk{=jrP}#5)odIm(v@6p%hBKi+gDNq5Z>K^|0j{% ze~raG^yt;!9xrOzx?28^7-E9}(C;AycnNF)ScCTVLLgoKt4fP^-?ckq9@@VC$pwyv zQ^}_h0LqJ?Mpw-q(aUT!+$13YjmPy|B4(4hjPh1iTIqLt?jMOKQxKjgqZuwiGWP zm5W_T8f}_z^-VV*Zz7uVoMz7hVqql#r^2!3d<&njqZ^B{J9gJfAXo#$kh%LY$OcVK z^9&Ni+fxJ;?V^#B6W~%p{a_GHB3@GA;6NtflkJV2k;Cy7i^zDNTvDn=0$H3Q(zo3( zZjZH=RQmWDC8&M9c`c*yT+o-|HOSf3$NBjWy8vL*`Yzp0u`P`aKz_c}0ALT`l4=it zX6M`h5X>5ZzkCcTE6SEPFn@mKQ0hk8W74baUCqbGpfi t~+%9VsXKv+B=bJ5lc#6z9>7Aj+>nx^5oa#LtdHXzH^7LN_)KAmKL(rV1un z5!{-m!KBBk{J`@3ipVEDI|f0kkihLHOa}rf#wp2TkP*I_hK51*&J@h&la-UGqf3}i zJ%|}q&0)k(P0EL$zfM&78|K`m*dK$0{m80_(cZjcP}Zsy!v<@6FvS6oaUDYTjJ;+_ zgEakJVj!@KMjIW2v LLEFs+pb09@kY khO!=?51au zl$lMo(I0lr7yGIm|G0c#gF|uBU o9WD--tSeG7ZD%CBo7^e34# zt@=%*5r^~uD>e!M#(nCRD4~@N|FhFpH@@esO|*uE+R6}f17Nx1_vEzQy>7O1GaLT7 zd-C(VDm^vc9}YaRl3p?Z=f_kvFe5s50Xl}(ngUxsK7 zRwc 3l@guP*@ z*5+b}AX|L+p+iM?945PXpo})G1_m9R+EngduVW_Oi&{nSp b1uorRd zyC^s+jUoWNf=mclkA8m&H?)QMLUxn?m0EpS>H`M>#H8ATBpH$R?i~l(Jqvy2KL@Z0 zX53=#@7Z^%0)$XZqTq<>qVwjW^Vu!vVuY$f<8!H)dtoXCAE+OK*d4*=Rp}j?t-u6B z-(WwP>4#M_yY`LeW;f~2oY@#Z8nq+eg`e#Mt}`|~o@8W|zSJdNuIUH!dv!PdYy!VL z{ZmR|m)b^qMk8CpX`of|pc%SpiQt4AAaO!bGte=P?T5M!MeeoUt8``BwW6arGm4|B z*~|sMatr(qi$7Cby=26lQ!FfL;5`+K2oXsIuHySye|M(l_pgq4S0%~yPpYv`H|1m8 zO5O@ae4XH``6%h0{#AyrDtFScMuwWWg|&Bw2}(JCY@6iLa=yc#*QgwP2Gs=Nfxjkr z=TBh5_s~~>$a%89rGIQSsits1eCz;uQ{jZOEUT*;XUD3|=ks*8Y~v# _vg7MZgdAFBa=R{yj^l28`{10Gf1KY#rHn`MRHRtW(}qZAoh zEMX_1q_<)ea}UAC>bX}O#>%u#M8VD&rN$KPqwdD5N632111?BoCOWqz3>`b;v$?ce zRUWO0VrX2H06e(u$~xJAf%H};C6eC!_G6cv$Zk_Xy00v13w&QucXMy(Fb$Zp*>e@N zPTeS^+O}{*!=GyJTkBvRhE6`$_EUUNIM#dOxuhF2-*Cb)=sctmy(hbZAW4QFgCg?E z0xooljSoIH_Kfz?Bb+L*TJ;Yt&UP*O*<-KR_4W+|*FRW?%irJ#JadF9|BNqKmvGYB zH>YPQCQ#Y(VK(=*2O$Cc_oMit_wpZoO3`*fb?9eZOMq$SVoFwwA6p^cH{ABU(s&SU zUrg%0+mB* DcK-$dftS%88D}kQM7XG1r`fT0kOJlz-YQ$dKU)Y#D? *hWFIq4**!u^UFx{A8 zeTD7p13h&&1f!~=@0EEeN71=yKbg$j_dO$%e&2Tvw#I2CmlejQr3Pxd1|EF^-%9+N zYR?^k_fb=4Gv@d&v%P ;JQ0N1e|%poRqyY#Y?JRg9z?jFO~h2yF+9~vx0#bz?P#@s zk1T69hEFwkS4-RWga$97=R6Sjym0C%V2z>?RR0)gD8A{pc9DffAlF?WnJG}hX@<=H zMlw@0aW`PCEfY3Kl__^+d9xSyx|n+g`OUsi*r{=KTm(97LnICZBrUIeGh34PYaFGf zJAW9QiPFmWEc0YqgIx=pe&-H@P64^f)Fch%at(z@(O^QNH-^Q0MxglRVnkC_1(1^M zCoMoo`D^ei+2g*ZR}x*G&&>Vl@(wpKY4c~?SD>EqLsIUHHe!xAw$OMOKvlLoK(JvA z7l2)|$_s##0x&cst6|ap0zUKMM4&a4rZvNsKbR!#PynDH$DkcyfPZubI6llKno5Nd zvS_0}fy`qPK|Vsy+gt^hPdPk{7Fvs | zG2{ZkkRF2$S)-_*U@kcPa?HCV77-Yy<1IOPF3!kg;xTAb)Zp+aoJM0N6oZ1AW`Sc~ z;Sz3=uiXo*{~F$hatG7cfW${zBj#oRVPwo`o*DbQJULYdC+aXDrQq>g!98Q=GdV!h z9vnu}&RKe0Xn``q^Wv>+X6$Y0C@f|j?0ef3Hr6@u;0DI3=C5$!?4De0gqL^HY2D7; zDVFD=w311%?;h$)!Iq@?y(gA~E(P_&XtP74aI(lP^_+^qqm@7tGH?+cN%IC|=1u@5 z%mhlhHsp>EvTO^oybK^I1D?fn#Irz-D&AHPFxv=WT0~4Okf |Ca>)eLpw!Vj zM~DokJ??0f=LhRGs{osBEA(U#J%tBPos9(ifmSe1&mWI9W(L-%-@>XrsVtd`>)>JX zZH4!c-APHm(dAW*(6f$ErtND(USa|*KUZ**8v_=dF2o;Goau5Vc8mn|UWpx^m!;Xs zw;p_Am+RVdu3p@VvPz{c=4*~{^OZT^Q~(OJP;l27wmDx@mB2ZD<%ga8W+S_QDO?D< z0vEtqU%pr6{dx9bX;_y6=hM=*h_~ EhW6%Pt-7(0D6-YbTVHL*z z{R04Ips+CzW9ms#_$^FxI``L1LTrS2QBhWC_*W;;?|2hlpG#elgWD1eq7ej#{xtut zPjb$C_J-1V)!i>%BP*brdov89#lUf##S^@U)|EEVdhMh?l_hR&9R>XhHVbJ5v+nfF zQC`S1zPY%V9~12@h|7)^`@0F^AMJ0INWH$dyr?$mc!RErJ$sIszHx3^@bpP*9XIZ^ z`Mj63705IgWw9o@f9tf-eTGxni&G>X8(T9LVfz>EXYuw;@4q;4S)=PlCGGe4O%xg! z$IN?^l9{ptzdJrk>zleSqQqRK0e&=_=FiK%UL!qG_F?&Eg8pg>@+`u6n-9)1RJaHI z5Dew;)q5YN@{Ec6O93q5@dprkLYMZQpJrZxgu(T)fnBm>WY2QNi}&WyRhjxBhMQ}M zxDB<1i)u?~soSi8eOl3QR1qxj?BVs$C$h7}iaaz0_8}U8QE`Z?(o-y 67%2fY?$#JaA^P-buq+?8cHvSfX zi%!>Rwj(Y99v5_!`@?NX_~r+M+2F6cISna!)c8$SULi@2Zu`_T1Pr6oJTplcy%`F_ zha1B{q_*8od`z|~S#;H)GuNsFv@J;ai8k~XW!$@^xi%%G>A~o6|5`U&1ef5wbER<~ z)p*r?$0C^N%-h@z4V;LFmPUP<=Fju;)W`Q#4Te?4f`(>feVySlcpnWs f@y-(UA`iU1K`&Kt&U3LkJmumAjHmI`+P4u<8$Gc? JA~?(al+}QP zqb6SH)>!sjB2Hf(Drfo@R6(KA68Fv7s~zEJqvf(d>@JlqLgW=HPZh3Xp;PAdOeNKH z;9&{}4k9bi{-^e<$6+4j2OZIj2q93=mmv1g(`!{y^{sodJ ;<$u{t0~Nr@m`~*)+5crp`!BHSf9%)8d14G60xU)r-|vHu zNG|h%QcW{_!N0|( Kwsx&>1_jXe^S&5zJOpr=17) zz_X7=@qd@yQmN4fNlkea}CF#>7=E!rTy*3 z(p(>BxP@}w&3N-V_iDI7Q{6l^ya_#SZ%AUvaa5$0Wf#{R!M^^mvT}l5*ppKVa;wCt zbyeQ`agX!FL0JNX!m4C4lG7h_&7n GNY8kFwwFK`n@c*Y)T6 zBWT VOMcmGM2cEt(Dm!G>#1nA4|d^mBT z@#94;87yE?^0F4pN*afI5GHZgKNPQFN7TN{mM}KEDV$f@nyk=Ac!9gOqw?BMFY4cP z&AlZaAU0iBw|Nk_^kqi7v(acNt;nYojZE4ftHR68kA@*^(ZLO@{czjN_0qK&!3gNZ zQ-dy8FRiS=xUgNJdz@LX#@Y#H$e<3IXgOhYv%AnYrb!{AWEg2&AFPyk{#sVb*ZUwX z28Ps2D(l-SmNq0PN}DY?Jrm2Tp_R}by|rBN2>{7FIfUsZ8nmhDH1@R`@y$FO^QFng zZ1K>o+cI)x@y*6%2@*;YvCa}*R*Wod{V}BC2pO!Qm%aRizSPK(pSY#vmV)S`G(}H` zCbNiC>B`zQsyIS7Jq>^>8A%^-NDv%6n9%Ga$L;A4P{Cu{s7-Bif!OYsEMYvwJBl$~ zn*KYn<4Htqk_bT G{r;rYjw>&ca2zU+h6uLkr>+rujQD7zq3_Prn7kq&_m0lXdIFkE;dr6 zeBZ-8&*IfVp3Ad9&(^8T>r3xT7K7oxFn8xXLCguB3TQiP@kbH39q@ d>i*LesSpv{e5(Jtb1qrK2f zt@)N?7R?uO3fx_sOM3*a6Q4{DMSVQ`dmEaue>g}63i3{xFCDGH6G|09Nr~$``60Y~ zC^h`e8Ur4K!I1LV5w6aH2&zqe+Hq2#R{3PtM8&Dm>_1bGB2`vhhe^Ik;?QmdnP- zU9z!a0nji=*}YY8)%Po|G7ZD6>(qq}JiajXvF83&LHgHOA{~43sBjtd_%iWFWj}1G zmQ V+FT;LQ_p-k6nvR5S*EE@3KfZA&TF3oU%I@CwR4))? z&4B7~v;}zpfR4-VP{inOFkS~>kd8 u!926T^2wA{Dgo0 zPr?FZeq{Xkhs!o#^nPM@D?FE?Pfe}U!wKOLp@o!yxq6RBNk*1z^_EI0Tv=_{q>dK= zZ8z%~I70 y&cul6i@690J6R^Fp3z*&rV~;`9Hvn$G zr!y){=%#6HM S-V(SmwCi$XzbgCYKf)s!Z#;aafq1`((f3$$ z8u|S!)5hkY8N4chX*2W8+}i54Q6y#H2n$f(W!w||Co`Vr>{q@aFgpG_-3^jbX}|fx zvvubXQL2)I@2Y^BeG%PqL6t}ONVTwAkVH(_&g18?ryCpXhA`3?C|cA!R7H=0mgn%6 zG!^OaYe@X$(+1r8+FE$gn>(kK%pAZQ%>-d$zzA>_W0CXNSkqB!B~q*?dpkuw=H*TE zVU5{aZ_I>h;#vcGeVxc0nX4HKH%6-}^p233kh7|{0lI`!S@9?)wbXoO5}gp3W5u#O zp>>w?sS?knD-F!|&H!`$gLk|r?b@aL#?3!!4;4uf&WALkVpX|@HnZ=H`6e4|MBihC zmuih&M3X1GqK@d+oHn|_Bw7e{pXRkYwxO6In~AUR40xirRqlGA**S|hf$byCLDq=? zdvG_b;Toz6J(oYbMq@*aZXN(+ApAa5vw3z)beLuzntBYXhdc;0BGV)O4Ld;HCFD}l zmNyOodWt)jmXHmQIvYSycnu1?B9Q-v9H93Je d2=H zA&m^l2l>0=G05{?zzMH5k@>z(hOwH2+%S|GpzqJM?)Url?0Z5myo!^7?&sV*`<7-P zFLE(w`7>p>cXAH4fy9Exx7$@kN0o(^CRUFY>+3|ayD;M8jCS3diDPA=8~|%_(~tj6 zJ-ForZWGeRccBE2dbbyC*36wv>A|HG )I+=(nzH`E{sD`R6GYl5~oA!W1edQP~o z3|uUeZ&|auuWf4sw`>z}W&&^3sMy2h8868I+JuM*^LQlhucsOI_O4A#;MO>AyGEY5 z8h;lhLMM1bxsoB ?>l8;A&r~5trMomEZ>^twh5l(qK32(a4Hwg z`ghtGc=Ha=TwD)~RB)GoiTdk!WO@?n3BD)kT^-k)d4;sz>vgjT%^} 8M#O+g(w+8S ~&CM*uUtO;-FrOJ) z-~3=>OEOzqiaiGLr+}eXA$u&)Sh=n~+8~%~{u7HFMbKvxW2ibR2hrDDwpNCmy7eMu z1#OffpAf?(G_<;s@82?dan&q-Jol^j$J%>edY8}XL XP1^kwhUHH~*o)J87P$G}ytC| +&252w@Sfr5?|Y)l+nec~@@?Y&O_5{J=kUqFA?gLc*k*(9UDCX9pst~$Y8p>U zcHG$KUqRU(sZ@hQE|VXVM7ODt)Js-7W2+5xBvayqZnXFFehUms7$=5Oarjnz?~0ph zE@4Gg+CrN-d{ZXH)G1)|_L{=;>L~1dCmlagsS^ByeMREI$M0E=mt; %WH*28(esL7U-Iu7@fOS($8>JOsqZtZitjW;Y~?$)igU|EPJANrb5mv#4W60n zdD>4KhgW9dj*ubyduG5EL-vAelNjuo5?~(8ACzTS9wqA+n!mfLSSU$XBM}pl$m_k| z1Bsn2LB=$kSxaJV&Ykj&Z6agh3dZh19rsUqT7AJ(9~#(B)SYJ#^kF#NkkJ-%J1s3M zHch{n!~Yd#(2|)XniQ5*W?DxI$ZzzCv8`%|cz`KmH##!2#v)_E<={=VEHwmvu&G8E z*wxO=h!zH2AAxb~7@Bm+C2@j%C4V++Gz)x2b+(>*4| YESP3r)_P{i4 z*yR23ASPN{5Ew81KA}xjY8a*}1XsIiUQzFyq{Yb-d+nOmLmt2qxxLFw(5!E-JV<88 z>!yBTb uS_1r0EKootTDiP2=tWkcm{fo6Ju}+Gy*DtudVvMUK6QTb zqu*)C-%Q`~j8YevCz2^WR20R5xz%9e^SVK_YJVo_`frD0P+haesK _my4Hw35OsMAmP +)+gM?W003Ek^4m)aoyhCT@;w`)5d>H4`nMVayp@BE0A}g2M+p=C1d#EzwV+!Um zY!2ys{bJk)CPOcuh|N8`@F!4v4kW3q3_2^bw;Y4EqiVK8%X5%;ARvG@&`b^%fjQX) z&Z@@e7d{9j_NtO=J4^z~yg_l3w9Z+MhBK727$PmSm}J?;Djp|WQKU}%^;LWEneQiO zqZqd|i6lqzY?C4&nyxc(k}bj(-Pav<+4^c@*(3R6(frCQP}x-ld5{N&6P42XJby3` zU*Sq6rxU@<`fej;=;x!M%2K%`@n%JvkgR4R&|Xj(Gca>2-c e)P7I+ULIqyLTF%QrF#4weAkB9+hqX zjVz081a#}*@}&yg`Dn;*fZM*>PwO2p*Dlh&CFR#(Pe*D~MsNGDA25dofmgsx6k+OH ztjo1o%|Tm@vo6lRrdn)0Bo@ES*?ox*NG6>JO7(uS0i4xEyYBMsluTYNjoWC1J>=^m zK=@T$;hdS47^$ZtGZTSiG$Rra+MxXb?F$zw;Ih8V _ z74M5m-vjf&%?KLN_5}`*GK1!Is_c%0SpASH%k%iFE58q?MOV?2DOiRGnl$|OfHdOF zYC+x_$5E-ZHmj8;lK_iO){@2}Kf8H_r8?mzRaR;# T>1|siaoB};mMoZwKVyp@@~?7X<(}8V5lkT<$B|d z?j*}yA(wKBLADc6lo5ZEpakJZ)ZB6;x35y;!Ni`T6^GnKJ>FVvIz7fH@)i0^lBe$q zgp8o?-azq1+u!@1$J@VU_PvB{TErRiUVzj}hOYO$s~|aLk4askkA8LaSvys>`Zq;A z0M 7^TYdC18U?87=z?;Ntd`W-ppO1T!Si5eT^)m_y~|0gASI~s2QM28>+l9c T~&bI#h?H1&7wH_jEIYM1bYu!7V9F}K|G8_t&0MC2T zZWX`*_J2%^(}|qeMS#o)I<6o(Adwrbn(mU5mYq`gxIA0ZIeOLaH8l~vthagv)TT!7 zG{_<(${cHzE>L3gT4C4IZ$D&(-qd#I6mVRAs<6SlTO`E5{Juv|7b_2q;R^)hg z`)*ndiGl2B!kvH?ga8zkZFq!+f$ZFa zp8)=?1fgE4hyk+EQWPO5 C{wU(5Jnaf;cWx^qmt=oG zwt3qfG(geJnarrDiNHSFnNkwD5HELeZebz)iW{FTVYDrsmr$I ~&vpN~QN{fIPp8Ci)WyW2h^4=`(yd6wNS84iR_mv7Co#(#Pe >)SfGI|@H0OV4d~vAo|_^D@esS9>wbZ9oF1x$hY;GiA{q*-Ne%kjf4IejxJ_ZV zq(YlQ056HZH6R4`04o(5t{%GNr+^_3?r9D~ej5BYC1@Rx;Qd1h+LrgX5|nv^{qJfW z@*mYY@;|Ee%zswv$&2v6s&&Xec>erq7%wvk5J3Hd=>JE#uJTv8E@V0^qbqi)&2m~} zXV#$XoohU9%_K&eukg=Zx^<`o#g1A>VZo+dqBS>OF2W($IiyR=r8l$`(E`J?T29 z7@bmjmxnI-Aa5{D^Ob12@iMpLt~WC~+ >?rHQG6jFxk7~;#Mw?T}Dvn*gl@+N3S>rrF&Ln$Uxpl#% zg9shp)*V8*qRN>=5iDNfp{hcI-Pck0?$*8w`d7@^QtLCd?jPD@zt-27Kk(q}x+zs> z*DVk1wb`gdn*OxY1(PoBf;LM8bo9@`4TP B($Mfl <~&n{vb8QZJGNi|Pb dnc-4 z<5!5)1Io-9>T}F|-LTB@)kW;U{-^L4Oc{9Fq*vHd?b#@nv=%;#m1k=@Oei_2ofV|@ zXY#qCS8Y0Jg=m}hX-^X|u*G1VdTwiA)*44m+NVs3sqx-2jrk$T_zTvB-73Ob|6b*f zZsuXR8ZOaBqj4M|8xsssMe%CxRV-Y=`8w4bjRSHp2ag%_W6ysV#rlCat;vdGv;oL@ zSLy4oHf1Jd$u@EDIogujnTfGw+hF6E0NJyTt^9(-*L<@dZ y;c_U2 zA?rt=fq8wjTI1CdE)iP1rRK5U?pw}C5-P$&Ja=WfKe&DgS{gRMT&0B!9fOVvR-j`B zM2}%<>ODkcx@_euuW21g=}3jkr_b=Zy}YSmT#7Zee *W8#`N<~V9J5{ znoDN|Pv8chVvfd72N6J uge zAyk|<&k;JSS7Hd*m5~RvnEC~5!7X<=_kjo^ybcK9n13HtZS0aC`f@az$7>g>3i!%e zu77@3VYtyP)b__e>oGrMQ!6NOVTKd`5PVTpj3P-2xR9?BO3X=^nmh(EjEfC*UIRam zm`$n=%J9v_^1YpB<|E0q9(23aphGWo4*rombx$}-Ae{3sjLkMK#74s}BAVl8J-5&P zDk(k2L~TePZCMbM>!hu#4!^n|E&u>dLg7uYupj|~clNdH%7mA@p|-J-51-4o*H)YG zZHVrK{4SZbc93%NuiLR+x7ch+&fahN<{EEq>Fqul%%q}?%7e^hB3WXp^GKRlq0lDW zj#}Zm&Q~Fqc|r9n0ZOhA imoFTmpcw;OLoPqEt&&hf|pq|l`k `9*ck50!i>>|0obAO{=aZ}G_M=F~^G2`nG;YJk<`lKO zL71W>OPrDK7o+%O=5`&Wf2Nn~K+n9ObNZ-s3hIr476IT&pUoN4YIX|h+}f(jkVC_~ z-Y-7uVYK|=yh`caDapEhRPg53x4L)QFlmqWc)2!gm|7zjUpOT3=~@uiuZj_XfXAkc z1J)O{moH5^azvMT(5020IQU=ey=PQY-?uf46%`Nx=}iShKzeV9h;%7}g4Bpem)-(| z#0E$g5D*li0@8`}PUuCXh9aR8dQGSSlK38f|9;2)_&(2g?ilw215SW_&fe!Fd#$ jk?sH?(zh1GILMtBQk%)%%?(B;N3e|-8#Wx?syMwvl& zw|!TJ7i`En6+6L&=e%Fe`eF@h%sLDha|ADnKG>H``1CNdjCC|!Kj$IGInh5|RDtFL zqQDRTY}ot%EGyzq^YQ<|U;mOuJ+QVc8mWKx{fOT zldTwTw9>lL(4d*n4+I0ltJqGOe^kZjf#B$`s@O766?*~xM_g_g3;BCo9`z?KAEES{ z192eJEUh1 ACWI7VpX9Y_kvyxkIH6i@wS426WWOJO9%Vad-`ZuY zlP-UX)6~CG43 M~ zuSqV`iLSVpc@vz8HzvY)Y?HNhH@BPk_x6g-g_98tanrsU9e~vfNDoK{3V *f;xc1yV2owf(z53dq1O z{zZ{R9`Gjqrqa-|{!IlGOBS{Pla*uQ2zW1Dq`RHu7b0*ZJ=jW;p+Hg(tzrEq&*4Li zuv0@YS(fxKl~pKL%@y;kn9}L%tVs=v*On<3->%xJkXpIO;*bjfs%(hHt *`su}i`lkHT27Y`CdISTlW!vq$0} zpB25@r)RUz(iTjIc!|12bK0W{o10NtE>xTmd KV z)Oy@%YZ9bAER)LF>gKXj@sn_q!2c=viBH@r#2=11(*hC(e9^g}sMcE1*q5GFl~O=! zM3`{=gq2QGb=1qQAB`cpLaHK5(i}3YxID8@mP;7Jv6}5!mp-WO`>$hlc^#Av1TTpd zZ)h`G4&faajf?Ud3+#+_cXX!A)O HbR^=%+^g?^Vt+{zOnU-N7nhbJ?({i1m z{dFfgcP&rivQ%NvrtNC4|C5y#g?cT1hz4rKdp_Ubv5QK7O(uS #tFmJ=GKle{uK)u;|oWuOa`>Ez?2#p0I)r9STS6ytccV(jY!#fhA4Ezko& zuATY>|5Fflr?KBuSeBv>u!!qEOdS#rCDx<;3(QzbtXl?pIl4LhOqpjO;+YYl2O)jB z3fOW1w=ugz!MhpCF-(SO>@1I;RmCJ|ciBIAcm?22+Mra(>0c}n0BSmyr7aOLmoBR{ zV9_Bmu)ZT)viK=;9Qn0*S3|l3;e;C31G+#YCzPxo^xGC&e(TZqZaY`=#!=ZolUo{@ z)L?Ka!*ve925(33G+xn{z^{#y?%_#_3>WNalsc4{m`cCfl7}6ckJB}R*zWf*ydL^g zzR`DI^HQv!d68k;lwc=ZZWJ`ajeH?Xr>Uoi#o{(fezXXgZS&b)X7g%Zsvz-Y!pw;c zfa5sz3J*`X+Q{Z+`_$M${LZtgH%X_u5=*AhemcuH8k5Kg=%swbuVnx_`P^xVq(&?p zgRUWdmAR2-QRR85W(#iqpr;w tLD{j*PP0`;`YAA>}Cn zj8*qyWpDq4zu+L1PW}0fvoVe|XOs(qD-nzsmII4k)R hWbb&g^$Z11(B+vBhWEv$xa#Uu_OS&M!Wy=l2kzpmp{8a!_n zKpG6%L-qPZx;IL>OIi3fpq2Tyq{f49%a}x+ppJOWMpRwR%J7u<;CvT($???#Bh~iy zw%&>xF;~l^d77vULJAhi>bRUu`9f6UXG(vv(*4fYUIozDi#Uk)moNOmXVL&qvr=LV zfzq!(NTR`cFc3}jJyx`okDmfq*6C zqEBP7u*~NrOzBS55+G#}7(=qEgv|FxaJ-!mYk>CHGq6dFclh5!Cgg&$eWq)~BZ4~0 zve!5))N&EeoC4?;tstG3x(GFW(iu^h_*hCyU4e)~`H6z)6a9BBQCzMopP$foJrZY< zL-M?YW51hX>c8zK)uE~yy<(3#ME0v6Jj~5E8svxj2p4CY8Cy&)?;%5v?*#zHSw?9% zNd0q(YV`Xq)$dAn>uDP&PiyEyC1 {-K)!o7WGBg zd+WyQBH}u#x$TS^fJfTO$wI$pd}TDpAv5 1U*^D<)#u#Kj~PTQNfxg@+uGr+?_5LNH%_TP3OXAy(mPy{ zxl$Q)9?6`HJUua?b@;$LP-P*p8?;nBsNqsR$WWuzLXkqeLUX`Ga4XNWWsV%J#Vt*{ z%qmhAr+-nF&Nz-R<#wTl?=N^kl59XjV~_FfMbEqI$>~`T>z-ZlwXbNk-&78U?DRaO zQ+Tn8C7Gd~Z(3*jI{AB8Y!i`(I2Yp2oyZvN5o^QzA1*a&m=Joy91~~PC3+ap!sLPW z)1e0%5`VSV{!`EUALFm}Kk!;l2?^=*yr+8qK+A&4L rP!vI1^%hm4rUA>IQp51=!1_)XO~pSb~71@DZ9lP(K;04}lsAMpr{zZti|%L)7i z0Q}7AgY2hyJ Y-kysoRzJ`$FIPEF5Z>vhSmT5--GVXwBbv?pM>H#Z67XM<;$sLsq8bIr!07); z<2r}vO8S=s?4$$nM*+4?hPfb*4U(ED&5#`dz!ji%2eFd7-bg_HA$b8TvA>hN6wr~V zEcDGF1w jG8}{y0?DKdZp=#=6xri_D}sf z?NE3Th9F3{&d}}=#br-0&&x`*?PBE;bS|uio~hK-!2yI4_Ru_wbf Uqn*@`|QH3BMKLDV mKRXhi%B`YW0Z3MY4=ETf^snj z=NBd^AGyc+jtVf6Y~_X2SxKcP!9S!{y4&2-_i2@W-XPJN}i_QbTOF;lH*TISUu4NO#==!ytO>>dKU^M9FWL9B?vo9tW7)0QV_{KX{N$_LR_Nhycu zS)_n71b-jQwrVOlkrP=ihn4EB^hk{}IdpZ@0FotVXr#U_Lje?h|5dBMy{p2r1goH1 zPclIZgcaA-{y(Stw{@-h=eicb8`3S4fB|N~cv?zc()1>ZL_@i_HqAZoyk2OIEUkfg zy5mch!-^<7^{|X{IWcG&3ZBw%GK)d9TEbK|1OK{J){qw 8{_$amV*)TG}$E`DbLuPU}*X4?( z+m;$Xpolw)T-%Rh&>=A4%-Rra-NL RGU{co_u#zBlAPF1sl9=1n-T2ZbD7F zI~L1hU6&v*TTaTc+L74`l*6X;BHKP9kMOuQ1H&Zb3;B#>TL?C!8+XwL1=HQ-%up>O zYZve4;o^Ud2@!OEP7|rk oYy-{W*x85Odyu$M;zjBWDVS~){&VwxpzVkym*IY6neXBpqT&`@H!Vov z0G&FdU=1DzXvb<>2O`(jI62MT-37Eo=hXQVx|$zdrA_9?Q!yV&&ZFL%z 7!u1FFd_@+=?|Bxz?z#=PThR-l{)NOFA)^wB;&Y U*#++mS*flcWY`W#1i$P<@Y-3x!32R3)cBq#@A8 TNSuERs|6r#iVfviJPk z+8#?hv3lX%esVk(ordRZ5T2^Hop*Kp=(ONlFC}DucGFv%HyNz7Lm+BIM>|)!8IX7c z=In*CeGc>hz8a&7z %SXkAVVP31%_A zkaHHzawRZP_@H2-$0f~OL$90CrMKQmcl|m$_wdu{pi7geo5U)fFM<)})_V6ae&u83 z&r&w9p_Lz*HxoN09^5w8#I$v8UH?&f<<8M}ZCOsa#ED}Hy8r3T$){L=XGTjhz;8$S z31XhR7e5(c6jxb2&JOKBdfS~nbEDOZL-`v2>82|expp6IQ>2JAdL!9G+bWKqv1Y>Z+)?o z?yRR*8Ct2%8w`1B-mD-n_ID0JJ6orPh?#RUv=-QPpI l=zdJG91rO|+zB!KQvRFjs=12||Hz&KtiQ_HYof=i# @nl7CaT1yLc{Q& z?BXhdPiM-3G) $s(_7yrWsmqj~qg&8ViNmgSP)=L^p4R!}U_e8V#6NFMgF ziWq5w!Tn%s=ZXu(_F*{vbg^sX=C|5~D{bd_V6foP9ak1(m!VZxKTa2krW7g5^GBnC z4v)N5FKV43V{GVvG}GKQjsqq~861-#TN;%OR }EXQ*S>{=SzEdbU%tATG}gt z##b@V7s1mv!y-t0GayL}C~T$=7xfbWO#O|e+x@57>r3@z)Q;`#JZfiSRAaDu{kzT~ z2c}#1Tu(j??T|T7lD2{ fgQA{tsyxR$W z=nrOuNf$UPx##7$n${+#=T6axxPD~ajbFM(O0}Ae$x-Z(?1i!>7Fv=(1XaoxA3Lu( z8bj{h053 193K6S}g>T9vxXKVLVRvlL}tcrtt ~)DsAho2u&b9E%6uI&Qs0AGlTR5g5G! zriE4+5***`0gA|RnW%3NOVLSvsZCpU_Or2*rk7t63Yr^l4$JhY0xF5+;lA5d=KUO2 z@Xf3v?sq~*%pXyATt#L@^BTw*Bu;lu=a1@P5}lQH9j-qL_xp)={R{zzaRR8iz-> ?dpH@kWuSH7Oj7C@wZ0bAr&Fl92oP6 zDb8?2T$H4iZ{6eXFr0;H>_dgzekY|BWOP@@m+hf-TU DhiJCK`-* z@Tm)hVf`GOnyI>wGxy)gi<$A$V(P8ux+#1x*-;sh60vZv!qrl&PMA5*cvf`Yq5&uS zhNo*dzBq2)kP8~#64aQ-8nz+RPov| F`ZsF(C z^rMU!JbYI-F=27h5(tD(YRR1rAW 9Eur&dagbuW{_@87{)cDjorDZN0j z8_^aC)0>ZqG111{UbtW5j1psB6dBgydj8B|&z!13p%Q=CDl=&f&`zByw zF)z;LJk1*HTVFM@ES=}8 6+`;X0lp$$SnR4rNK9}0`viSjtTRTy)gIbf4;?6?4K>f?giXSl z;+w8xGTGHrw^8e4aH@2huJmGM8e9&&Y`?Roy4}fpRYekyRp2Mw%&)cbDX3L$g1aD=1w?2)pncmQrTjWP!Gl3meP1YTm||-LQSoO z*G>!v>aPdIu+$Y=TfI+Ke){PCm2Z=*DPDKl!zS_UZ<%pp?~sf-vt*@1lVSJ$B6$dg zNx!zyO;0!cL1~!1cfXr=iKUMB6**YL#z}zK^i>TGuRM46^{qzq2 k95+ssm>8XjY#x#dXCg0R@0e`#F&I7qapX3N;IkSN7IqVzya!0qmq?XRU5Y!hZQT*?ZI=w zF;It?jGy+DMqh^g@O8dmH@;Js10;Q3Bn^{pl|r~l76i@Gv9u2uyFr-=p}qB}DCG|x zeLY!T-cO}6zn_(3ybmKCn;du@fH0_ijJLIO{$x76OBta!K4d;!t94-N{P2e8=i2lO zEpL~cS)@3>@VAjJf8eQ*4}(3hpYKtw`$#YSqoSeud*V;)oZeTak@th$O hU+h-olncT9~T^0{qTj=y(dPTy$N@Vs&e{19B#h^Y?F!M zl#Unxq|jUX>ihl?hEjfVxVJ0JoGoNtjLt%Hq98YxV?c^f`X*5orT)nBkHNoghFyFP znxe zyuNC4onX>di->j?e@=q zA@J)FA0+ja{kV?F zFCt&Z@yOQ4!quu;jpc}~Csi}fOHl81P5CD7?3?o1->DZ39^v6nuh=nzdV|GWl_}gR z=pyP(WW{1_6>hAbP=(+t!B@2-FAy=tXv|&+ykqB}Z?TByY&uO{zDOclpSAz@qZGc^ zE6#%?V>|{1MsRe)-AIbu^(lsa{Dw7l(eF0DpYG%|q++r$#2?Nf-)^{X7jN#XDsN=m zXiPgke1vbcyjbp9F~yZkVE^KmOsg5680xv!>CU!^lOYRgRuftA88hv4InG! hTIxLiC74TWH9?-LjZx}Ce+4XHUQc-iChrSVWeIou2Jkf%^8?2otm?VQDhmuh z(cUsvP$@U(*NEQ6K6=q*#SoWUul1Q&XF&W+xrwKwWVsw9t`Js-)N@@D%xjhO`9FqD z1gf9rx;%9&=~lbi4BSH$<)M$B3%#_Pm|KM3IoftT-kMHVPG=2=3qsY~dwpwpBlcpf zfs$Pgi+st?r-s{dL!PR=>cHn!l+8tgLvEUT#QYSi>F_gC--=Rnq`CP+`?rstYM(A> zo~LJP&0c3!8hx4NEIDDWr^5JaZO0}#{^7gA7&jK`M#KAd4NycF%r%Q-RDusHD}-s| z`y*g?j{|q=1#JW9-gnHe@teJ=)g2Nt_BvGS%8ii~a}`Y~KCJBN8uGIW^qXo-9<(?? zgQZtI=!p}01m@xr9}f|AkF4o_TR(v=hJ2li YdZI1a-93xJ zqOU!HCPna4$^9m+>w=$66*q0n@aU!lV%_Xa8<;k~I6`Gw0Id +4l zr6m4^gfU>Tx>MHkKv=7y2GQO@bZEumz_DCp>@;uLMEey7FOJa3<=dW;2_Y`JOUlff zxqxX`*#9m0@b#>0nfFwG8fw#E6aL~C3pw9n2*t(G#jz2=mIKi G5 iE{+j*{V0b{pWxtRhkv^7t5g<*^PN~c*j@sSC8z#!s$6qXA&-UcuGee za}AaUnU=f{v{s5=vfQ6pu)n4EF@v#8C4j<7(+1hQ2lD`6CT|3x7CiU8UL9~>*XraY zo)ZLo=}}K7Gz`U9DIsuiQtRPws@+|@RxF~`mI%1M$HgM>=M5?HS|mBKhQIy^LOcch z6N62Aq#Whyktce0onQ+0KS3lc>Sz_0y)<#altD!k((@RUozRAUdDGOpu2OY3UwL)^#bn6@65G6_p* zPQ$-8dZWGr=+rmxS|b}EZe6ClWQGMo0usG%%U2f`_rL2^Y(Up un&{m8+(2^f_D$VW8_-cSVa$b zd4kgDm<{*@(CYyGm|g)ZRtIo<0W_0V73fRF2SCj; `U30NjKEtVh?{{qBw6`3 ZtdPO(}JZ?wnkF9RS8C{e%`!vV&YZ>Mqx@)7=xanyY?t(H3va3QvVS^hUb7}px&;jW4 zKnW?>BeYQ<#2aVfW&`;4f7YnlF;$(E=1nd2YFZuM$MKA7Kr4Li+dC=wq+@m<3qkMk zY%bm=(SA11Z|!Aeqi*fd|0inMfDisR)UxG2QA_kcK+BT9)v*5pEz|x2Exl|ICwHK; zFj=BFj+fyGuwYB;H%Q#rIb^Ednd_{HAArlQFz)~@*7VvL sFpwc6!riXxzWcMV5|h zGBtgDaTp{5jot6t{*G;RX4|_gj~wPbS*wFlNht7)v_m<;_*7_rz|6@*NOEi35L(}5 zvV>9zx+r&q+^-p%8E?&dJZaIF{W(J}QiEIf`!z~fjrf~@IKemVZ+dH&^)vJoPpw_5 zymS2IB{A5{)ruQQG6o|0V%u9RJ&^F;n3R{xormG`7r~}H`^H1MkQ;V|79aqoc;&H{ z=SJYe-F&-QX{zM6;X3tFM;+Pfi%1WdJM=cxC1J_Ye%d7E6G+IX#(v;AqU$|Bgc#N1 ziV|F66dxEHo2g`N4 `%7?Tk-5rjue%|V$(TO{tcOg~De-Zrf zgJIhAHx=J@DYjtkLE@^<>~=JSfxeR-%hwJPik&O=<)%%i*1&@Ojiq4Y)WypV*Xs&S z{jy6TKq59_0-5> )}ZHr7&5((mGP|QW7@=@Q}SG8RT%y; z`MCmTQV2>g0)=zhtJ4(8#x`mOE;;bj(<1g?g0pN_3PstB!Zpa!^R5q}k);KyG2qis z_oe<#j_HyJ*(vp<6v_udd|TrO99V5NZ9{qJfpvUjWT~R1cK|DZoh!}fYF*~P0&{5f zT6PLGn>+$&J{#Zag63588On%xbDZBjt0b)~!GlKe$JL~QdXlSxhrp86fnk^KEwWP) zZA(3*-RlURc>;_R#YAy>rrP)_a8!#DzcTa!{??NelTKary^xO2GLZ%=sa8>P!E zfCW*p{33aLTw_>%pfBH(N77k&_V~pQ&b6=g9SyAqOoL{o StQ0@$T~t0$mfDBir^i@W+!1o!_1Qk1oDg~bR(4kQU(V*IBX9k`|NY%=yXe(Z z5wqxvSR!W&*8jErZH&dQ&P6SO=5t-$D(|TJK}l5_S0}s!p6UoZd+OZCR53()RJ2ae zleS(Pv{aXQu9f_i;hJ$Kd-v{TZ$q`Alm~djaK9*AFygawKvfQVb#+;+&SfQ7yHC5@ z1C6OIu}7|tm$UJpv}vKiims$0hoPe4q9;`^A6*wwd|P81o7rvkBsNEJbAak9)%kOx zSFOjz*Q 48rxY-vx5zm0p#N#%;o{PTMls|8z(*OSS zg4ve`X8mH0B5QhYEEZkWqemJ!0N1Na%Pq$_Z}&g$r4EigOxbAJQcbx1_SBWPeM7I4 z?`p5 f3jhUU-j0yn)q{9`)bd#?U=1!lbt*jt1=He43wE~ aw;j?YFVI}emO ztE25(6HC{yPdNFu#V#x4!Ffn@gA`8JxV+Vr=%H?!JA~rIY;2gZ+G0`B4WBM*&XP5{ zAPr`htl>Z=4C&_-hr89LYYq_Z(%J%TI}U6V29SD<3G-)nzt)7!kLo8h%NXB|*M9R# zsyN?MjhgLRtjH%wC@bqB7S?!;kkK%2smGbSZHw8qD-C0kajTX0IalvK@%a21|H+r{ zTnBFDMSt?&KRVo>fC&7mxhqX<09n@q22qWRoW1n=!w$RddncB8URAIGkxEr54Z9Uy z`aKjKw9IO3gW)sK*|YMMtM9|d57n03gipUtT>7+-@jBag_~EzFx9&n~ZCH7hrb(zE z*Qnr|dO_FOb no5!rZ<9 z+u}5Ua)o@uuKS)nKXrChDprk6l#M#}&EC4@`v)3(Rr_QomeJ+3RmA!2@(b>w<%qY_ z!b61uwbgZ&3bsQF+G)- PO{XTSWZb(7BYv9X>@y<$3G zi7*As3$LBevzK$y&>AL*E zumuXQP>`ilR;ws)c#+68xHXyeN?~~*Z9VsEVq$QNrsO!6KB^f|K8PXnAJ16I6}jfR zVAkom=g#u)kZ0@e9BC=^8LH}=K*o3HerV9@&C$u)y?G5ZFXy}Vgqa uSnfKokUR>ULpmF+=uEniWx4r`Xj0tqS2i1803c|tq zoC?cv_(7XEKMic~)brhr(1mE9>L=$p-!=<-bzD5yab2dP*1(t?Y!U>1l~h Ik@c%4h5hw}^#{sNTnt_Y(#x4L#F0$lrY-mnnmzyceJ0DVd@pKL;%3 z^4K{UosFbU@kp60S@*}seVBcjRsu9`EFGdSlicyB){p6@k104yxjEFFCkwrj38Srq z-fZ+IyVz6}Q^yF=S;RzH3*(1ODSB$F?;)9ryT2Sk)% tum!9H+&eGEUaLXm-wOw$uNaj45sOY3l>jFZO?-*-DQ zmRht8v5o3THNAT*Pm}mY#g`hZ_46F8=S0s*$)@Dw9=!kSaSL_>lnv+Yi?Q_7Hoix# zddHKE-s0G$G%YgPV(K?lYN1t4wwE)V==DN<`nQPLZ@g=ie =7F0@z@v ziGK2FVd8P)iNJ3vzoRmo59BZ|e&6u#E M?w?~M(^iuTqAaQG%{SJlSH^P8V0HNAj8G4c$STrMI0lo1*(VjD@h9gNho zF$tAh?Myw8LC@VL0!$7tg%-F-7YI=g1f&`Lfc-Rh$D$FSW`= jU6Z zH5fNz4dl3| wE+raF&UsQSZAzv$770HSuh zBSp`wZwBAl2*L>h8CX;1KgZj)76HZslB2iTe;@8|qw&7nb3;df=%)0!ByEVYi}A1W zm&W)rUYI=t@e&{7C_)Xqy!$xdY)p{r%_rQ%9i2>bfuW~&TYbY8V+SW^1!WH$fo=mE zsx$_e``g~nH#4ht7fyzr8`Z_tbRal(2*WD_i^mO)%3A?*j>bjg3NaHfg&7bpjK$A2 zT;n|^08@%6S~SXMzH{k36}OPnKI-}pV`6&0j)vAV;Ek`{_BGPtJRAn^2Jb!u;z}QY zhcjSTv< cNVefC8{`6P z1RN8Dw7Q&hw0L3+&4S_%@@vaOIX7&s3}u!{F(tXCqM_{}ARW07J5a?jU2q_G%%?+X z32j@=_+JM`Qih9=qztCfVwiJ2F|#A!Eg!NisG@yGv*=ws>-8(a;=-yg_KS90Y%mOc zlpj*P!rn%UTfRsGk ui5caL%!fZO($a$!xJA%c8sQ{`eu*kYakIEw6z^C4?bRxF*JB*jjdj< zQ4}G@PJcGja|~el;&|>S{gRs0?RfOz`{>t44=apyb=$tpZ#{vsb`Ch985)^j_g+Ct zTb&Cv&h Ps`{|{GSA!PZ0_`e1Z`9tGjP^f@j8z@JRFVsOIM#U01&fRnTR72* zf~g;bNDWE&ENYz >ZLaX2miN@oEElb1Iy z#5>RXwm;l0HASPuFT}tPa6XE@eDB)wujPR__mI uq;?C3$5^0VXJE?{uZ>3Li^Fa9MleN+n}*Tt{T--Pk>cINh^e;426p z6cjW|s4{tc3TR{gns=zqWfm?~XF&|mZ!~PM%WL-9e!+&25@}R oWJejv|=kR=Q(DnyCK#2BU=I4M+FR%cEU%wnE3TQ1}?Dv4AD87 z?O~5Ro{yb5v8n&GWL2$MR~}?;6<8v40Ga~c3MA5r5x|dl!2)n3UjAv+dhUO}{*SG} z1!p0B0jjIU5AK9!0datk{3SM6H7brIe{zLbr$vmLpSgl+C%b9`CB(o7 DgW;w4$Hzar*%fc`I?QJ6M$bp}kMpz|4d3?IYP rJXsdpejp%2#HA$Wq znoJ+`!^SW{EERxNJWK1N?