From 9ce47a574a7441e345f2adfe00602dff0c5badd2 Mon Sep 17 00:00:00 2001 From: Clark Wang <107419732+OEG-Clark@users.noreply.github.com> Date: Mon, 6 Mar 2023 16:28:10 +0100 Subject: [PATCH 1/5] Add files via upload --- inspect4py/build.py | 11 +++++++++++ inspect4py/cli.py | 26 ++++++++++++++++++++++---- inspect4py/resources/python_mac.so | Bin 0 -> 548888 bytes 3 files changed, 33 insertions(+), 4 deletions(-) create mode 100644 inspect4py/build.py create mode 100644 inspect4py/resources/python_mac.so diff --git a/inspect4py/build.py b/inspect4py/build.py new file mode 100644 index 0000000..ce5d043 --- /dev/null +++ b/inspect4py/build.py @@ -0,0 +1,11 @@ +from tree_sitter import Language + +Language.build_library( + # Store the library in the `build` directory + 'my-languages.so', + + # Include one or more languages + [ + 'tree-sitter-python' + ] +) diff --git a/inspect4py/cli.py b/inspect4py/cli.py index 1890ec4..c4bc479 100644 --- a/inspect4py/cli.py +++ b/inspect4py/cli.py @@ -595,7 +595,8 @@ def _f_definitions(self, functions_definitions): if self.source_code: funcs_info[f.name]["source_code"] = ast_to_source_code(f) if self.data_flow: - code_tokens, dfg = extract_dataflow(funcs_info[f.name]["source_code"], self.parser, "python") + temp_source_code = ast_to_source_code(f) + code_tokens, dfg = extract_dataflow(temp_source_code, self.parser, "python") funcs_info[f.name]["data_flow"] = dfg funcs_info[f.name]["code_tokens"] = code_tokens return funcs_info @@ -1263,6 +1264,8 @@ def main(input_path, output_dir, ignore_dir_pattern, ignore_file_pattern, requir path_to_languages = str(Path(__file__).parent / "resources") if sys.platform.startswith("win") or sys.platform.startswith("cygwin"): language = Language(path_to_languages + os.path.sep + "python_win.so", "python") + elif sys.platform.startswith("darwin"): + language = Language(path_to_languages + os.path.sep + "python_mac.so", "python") else: language = Language(path_to_languages + os.path.sep + "python_unix.so", "python") else: @@ -1311,22 +1314,37 @@ def main(input_path, output_dir, ignore_dir_pattern, ignore_file_pattern, requir except: print("Readme not found at root level") for subdir, dirs, files in os.walk(input_path): - + # print(subdir, dirs, files) for ignore_d in ignore_dir_pattern: dirs[:] = [d for d in dirs if not d.startswith(ignore_d)] for ignore_f in ignore_file_pattern: files[:] = [f for f in files if not f.startswith(ignore_f)] for f in files: if ".py" in f and not f.endswith(".pyc"): + # path = os.path.join(subdir, f) + # # print(path) + # relative_path = Path(subdir).relative_to(Path(input_path).parent) + # out_dir = str(Path(output_dir) / relative_path) + # cf_dir, json_dir = create_output_dirs(out_dir, control_flow) + # code_info = CodeInspection(path, cf_dir, json_dir, control_flow, abstract_syntax_tree, source_code, + # data_flow, parser) + # + # if code_info.fileJson: + # print(code_info.fileJson[0]) + # if out_dir not in dir_info: + # dir_info[out_dir] = [code_info.fileJson[0]] + # else: + # dir_info[out_dir].append(code_info.fileJson[0]) try: - path = os.path.join(subdir, f) + # print(path) relative_path = Path(subdir).relative_to(Path(input_path).parent) out_dir = str(Path(output_dir) / relative_path) cf_dir, json_dir = create_output_dirs(out_dir, control_flow) code_info = CodeInspection(path, cf_dir, json_dir, control_flow, abstract_syntax_tree, source_code, data_flow, parser) - # print(parsers) + if code_info.fileJson: + # print(code_info.fileJson[0]) if out_dir not in dir_info: dir_info[out_dir] = [code_info.fileJson[0]] else: diff --git a/inspect4py/resources/python_mac.so b/inspect4py/resources/python_mac.so new file mode 100644 index 0000000000000000000000000000000000000000..bd402c040531aae3c0907b09891878a936b22238 GIT binary patch literal 548888 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 %y`Nvi zGHumgK)K1^;mlVK3%D zvIc+lOVp9|6vrP;LN9pCdXuRs=|JUjYvsewLze7I_$%vDSPIw?8{katyqJfXvv~%L z1pe`jE6Cd$pS{aKTwsts(a`S)W!|502kd+!mccyn)rTM_GWC8t28AMw%2)V#xHmW7 zS9%Ke5F?+I^-xW5Ah4}w4#bS2xzF$L#~aDbdH&`sEqgyR7qJ4jx*Pp6_3hh-cQW%C zs^1uWyY{n6(8iUh&ToZ&u}^<|;?c!B6xc<$&Ar~(3?w(sMZa8ch77{_fx*Y|e=I+f zF+U93XH`~xHpo8^HC^hgzHR?}%vE;(mj0~#N3wRdsp$Mi#xE@RTPNU5n3D(|lgBRQ z6$`HLnTZm@4V!&c!^WQlsThR9J1@>#jioHNhsyYj%@*9oI~X@WbzKyHmVTDu*U}3C zpV+tefqbt*$A}?S2(6y?VsL4xqmp2}9ucr&^tsS`^ndEZSXR2nerfTZ2)>y4mxeny z)Oo=zMBM9wFWe3iv9;+V^p-mlYidC=#7R?W-hi8AWpKfG2Eo{T&bJ3#3;7q^1pFf& z?P{cq^k*m{{XqGK%S*A}U*ds;C0;=DyzR_Q=nJs|Y5UWL40d9R&$Um~L(KYm4u4Yo z^QBYR1rNNko|Reu4e3*S$@jld^sxTS`hp@kp2?t(xH}gAq5t6{d)H1MXSi7C^%{J;2)4379nZf+!Q=b5j@F=cNRAVM+M&knN6FYFd4IJP7+W)Ul zXidVcPju%Uq+FN?=Lh`*`^_4kO?-lXEIzmT96!0RP9phpkRP<8KGB_X+}!nvGmxjj zZWegU-V!6?0UiI_U7t8!rtpmA8+PyP(aq*BVg7T~C-ycudBpf&l1I6iy$#*NhzYr+kugC^6b_pkbTR= zaDCzi=2!CGd0wSH#tcajiW#f&PJh$Tz$4lg+RKyt!B0Vhe5beA7mrU*ncHH4R{lnQ zeE&2a+u*=FAAk^-dcRmIMquj`Pkh1`@~uxy#eN8Dt{Sf`Jy_iI$I{&S2FLpWK^yZt z+xz?$I7VoxFX!`l&DZmpPe1yy$Qs!L8BIB)_r4NjL-E?oj=bsvR%k_d^F32<4tFrKL>l%Li6VtYha$b3WA-t zFIKa2&7aAeh&#}IX#PxQv;SxglQu?%B3v%{CYv8N^L#HWKeh2KbNu-*$f%>opM2(r z*>giK(Z|mV$s1iG(E;HTYukV}CvFuHZ6q;Kze6W-cggJnuZc9G(a61~>Qi;(Hkr zK!1LRco&+F6*&K^p!mm&E*738=`Cl_*$?`A%c}|3edfrRg zB$&VReZ*`2zm4~ej37bMgrV9FpiaGXX)qra)8~+H%F07I{F;O-L!5#99emK|%xr`i zXBs4S;VM~7tcugvuTu9ZuDz%tb)ebQd^ zV1=jl#PkU-EMv@M4FP8a_%rYGOt*WLG;`$d_W{}@KhfZW(j+1go1n) z<}b`jbA)_!JU6k(^Dccs92YYO#EETR^uKV4;P$u87w<(je1pSTt_k#Q{7w7oCu1zH zYoWjU^$Yj+4Ci)Sv7Y`>9{s63@Vh~uKaU4Q23(Y>Us~H36umhW*%a%Qyn#es%@x^j zo3pth419}W_IUXUduEYLo4Kbeuf`?EXT;~5z4wIDv6$eZgV889E)c9|`TKov9o_MM z)7EPZj+?!4MvONzncmJ!Z}T*K;dgtNHk8ft7MkTgzJHmwf!q(xvO&YO-WY7Gz;oA1 z|AXLZhFtE6C(lpgww*llc~EBkR(CT5Yx{@tEl@_S{OUGTcf7pWHOKowCT8=!6Q4rO z-~!*?4zm3F^$oK|w#a*m({oecUx>epLHq*zWoay|oqiDajrUHy@kTum3%`H#?|^r2 zQ)R*D15cWF*Gw-MDq3%sDX704qorx=gHj547l>PB$1xX1USu-lB~6t_i?_MY$<0r4 zEgF$RE#<1M<50^nDEvE#C3G|Hc$>7I`-;6dsT_&$H_X$^&PQ zQjTu@mrHxFmE<0DX=%Ti5y)$fO8Y|Zw;V$;4O;R9v=DeyppWc$7#DA}ero&$>qW1M zun;s=zs5iLzT{s{{_f9@5Ik)B)c)Yl-WWqX`m*;merc{Pg@|g-d;CwP3SquVH3Grg z(N7S+(E_K2M8s#rFUge_%b0irPEJtqE%qMAHxrJ~2sY^(kGuhRi?-C}OFdc6g|z>G zTgx`Od6f!Uw$ZHuZxeWjz}W)t5_q@3dj!rAc)!301wJIOMc^X>9}_qa5F5T{t=$J7 zM((|Aqpk4wf+IOnwPL+=*^&JETq|bw%Z~g#e}dC2JMt#}#DpEWfIsm&2S>ikpYG;Q ze1uu+t^5f;{)Av7*ZA(A`P0Sx>5u$r2;V&mpK!(bw-!!PDx*W`O>AGUqjv!7>3zTn z^daCBS_)W3p8;0V7l1u++EN(}r0)O+(GP%o(@%ht=_JhHZlm7-E~G0f%INQOdu172 zPg_)#(Wx{8@F_YU@LGDWTQ?d{2htVg-RM5LpWg1)owlGYX*=4!vO8Twm(d)01D|f7 zztTNX9RqkOHToRS_c`7M6<_A_^nmj_ z1Ab>Z{8nL?i1J(2Bb(m`WBDyqx2{%ugU3O6>2_v^>UIrZx0TRf8TG>dN~#6yNy7mL z()NILG!n3$b_U#=b_JY3V*n@9SimW?vuL$mw0bJscBk&sAJ*Gk}b~N6BSBu@g%xds4)X}b@yXjwaFKlIA4*Q)EtIw{$MCLVPK`+Ys3 z{jSrFF(yidNi7|+erX=!qZG-A|RdGKpul(FHCmToT)UPnuO`h!HQGbLh~-1t*`eu|8?bB{%xKUS@urQfLej?r>Q#VWPs zS(x3F(ZzrR=@P&?x*V{ct^%Au*8xtZ8vv)!hTyD{eg;@gKL_kdn*a`=%>ehNL4Xr! zSHRn7G~hxyTXelQ^5e&-5t_Z2eiZ#yz^+fFEBsl{rNJy`yCVFG zOyTs4F0Rv|!s)hIoSrV6?kSw!;^_3sF00e+gwq|eIGrw>?j@Yga5$~$vYd_(PIt=U z^bFy2L*aCHhtrL^ET^M{(_OMSJxe&`4;=*P(p@2h!1i3uzL#xQ&hiyq*T2 zdc;+uf%wbSq;3_anq+H8Lr^!;8q!|aE2dSz$@Fb(jc9!LTIxrGX&2PD8fY~A0u`>^ zP~X~}_MmaJC+$V;;lj{=fbddEF7|7ai`9KyoPxY%AVpPl4+Q09bP!;rRBNl~Fnq42 zBLI8SuK)+oF@WKU?s;Nwo50d8^D|YQd)eG{W65MLriaO`*B;qsy|%4Pru}?n^YUwO zR7J-FR);D>R|#K-#`1MYC+6!!;fq%o!hBsVd`*qz>y#q%^{Ck4IeC;gIUq#aadxk9Va?#We z;Ojgx6-qM`4A1zpD;p;}vjx}Ra<7TB#akLacD8VM4q(_8FA)wekF~|i0-d?MbdK0@ zuJHB8EWZ9Ce2tIgYyVEn*LlJhdskRr7YbjO#`1MVC+5qIAnvMUv+!kNhw-uOG0et} z&S!@l0juawS^D~;@U?5Kz8Z?8uhsmVqp(31H-6*e- zFx@EcRgR z8Eu8v$80{IZib<{N)joq7tY*#up=Wy8oK&xmad}K3fxtK>~X6&x=P|#H)i?OH8M{9 zfT*r}4RjTt_J!UOGLcG0HyFDSatPCe*UrarDS?$I)ZU9Y^z)JB}7CcN{&r z+;Q~ua>voLosy#@x!po=6wd9;I~(rX8l}q_(x{-sSG#gmxQbmtNrS8B#q!*Y^<2qV z&z6k!E2(#Ny^Qt6EbF^SxH1{*b&`jd&ic}*wMOa5eTO7kXPvn&{&J^`eMxfhMavyW zuPt{Ry|LVJ^wx66(c_Ri zE~3=|FQe$S^$NWO9ZQ{pizLg$=f#z=|+hZ zf5UFdtLPR)hg0b&f4BVM!A`cx&i=Jyo&9T{;SHN=d2ePS9Y70myn{Nu&391Mmy*l` zzmWLXS@wLT!O>UC9Y^0RcN~4!sW|HAM}+@_pO;aTH~m{;fqA=T1<=2@|3=MpeC|m< zWN~zo?6Qv9U;Uo!ujX^d<~k9=-D_RgTQtgxiEjDCwatW=p8zX~%9)pLfD=QJ?vKJt zRE%2?@Ddg63X5-r^1`~9NG?Zi)b3bbqO8l<)e)dv-xB;SKI>asXW(=AO|6dHnX7vF zoA}G$0SD6UfOYf_zyBVU}Lv9{&KG~qVAC6t+PIDzICR&B=LRrm#WZvbRFyah3SR4=sbGS zEUhqJI*WB_K4Z=WTpMq0m(jX_m9zoiK-vhfjy46X_uuZ`0-q=Q?|AosM*30}U_W_t z_%{E&?n}f|_Q4G9CR!2x@(i6PUZd}JZ(OD)1g__t1?axty(~w*`E8r|roPAB-ptvJ zzE4Wd95s?ejUP4T$+Km(s3aq!%Sp$KBg%z2Vds2A*UHd2J6B2Ubx+t?5%yD0y#d1~ z>2wn-3ZI+vSdVUWEB%u$MBL@~|2H9flFka{-C>Pu;Y`!yr{@&P#j1(9Sh)yXn2Opf zqKnr7^)0FQMHlY-QLBOeL9~Ww#67)s712ewes;UBi&q0(*jh&4fQ#hsM5!*!yK7U0 z3-|5o8N!A8-ZgVkMQaHcZsn{-xCpPsKkRdHa=?YHR#-0Fw?PYg!&o$ zoj@1K{UVL=VtsHFJzi{6!tp|NlD~hjf2ZLe*2|OoN5_qN8>Tqw zyYuIQEh!BytR*GqA`S2US*&*-T|)0pgPWhna$~aEe+W;-&TZQttJqJ{h*j24lEGk0rQ$w$Q+zxuu+Dj(I<2e6g~fx@+^4sb)- z9B?D*hjZ)rl)2T*dc~YHw?bJh>ZiT<{8%~dZY$cFwxOXkjJCzEGHg#fQBB!ObQpe7 zp&aw(8q8{w(V3r zxWCC_evQTa4oelHP8qE!wbyL`D`^40meO6R*YT~rF{wd#aDO@KF^NgP&k>V$!LNT6 zGbSkyh55rTI+ZOI#=~yQ0S~(`2Rw{h4tUsWIpAUZa=^pHPQgR2dGWrWY;D>Pa6>u( zu+;P7WbyvMP9fK1JRH=icrd$TZj$^bpM6+|fclEiuB%-o|9MSvhw$Dj&VQ;=fwX(D z(%pHbdT1{Xhk=KFbOhj_5GTWhlf~fV0Sa@{IXO786L6q&%J$}61RSUj6qf)0O7^arUn=RyDrsRpaAGHre=;BVO_%53 zw_Tot-*tHoPVEF7XdG&{$nSQe=;vVugi0AL6_&?qAt(DpE>~t)j4+6{26pj zp{r3LS=d4QY1&(7xC|7B*WYv188+jVb8vkp;6Ssp z_QoN%()p9DwlB@G+Wyxf$03dBw?dMu(`|t3(;a{t&_!4QXr!N`7S&Au!A{9@={>r! zd<8^%!d|AH*bO<*-@`B-Z)P7zH9H<6I$K_Elu<; z&5ohvuEezH8#?XXVeP(w*F&=H@Edru{dd>wdw1#n8kt&SVQ&Y!l}GoD;P5WZV(rdU znYVX8_^whf9SyjU-WN{_zkxc}m$`lK^g`!-|KvNsRp#xj_TB^A4!>3RE3ugQhy&-9 z`2Fi7(W{?O9bTuIQ{=d%wvxm@bG`d;dXfE8=}ueT_ZL~-YU9b{%74T|pM=faRAL)X zVk^CK#Pa)#Y%3~r6Ib#%-Qht*l*-U9dlOMEkchGy-Xob+BAKU6`|ce;dvaSZ7pqy& z0k+=W_jlZP?pF}1!|&Wb;M=-=(>~qbuhh7hgzmUEj*3lpdskT8Q;NVB0$+>dn=f5sd&edL9$&M}Wh|I4nq0G~>m)C^$Bf2E*B%V5; z188sWn?nyFTMwV{ce2p_K4?FW!fy^0>y4ps&CRXP7yS+NVcGH?;4(WhAu)TiwNGI^SH1fb!v6k>W?Xn{0fl7CKZN05riq~7aMlMzQ zcLH==Z*P71u})N9PCF0OlMIWsj*^C*|2D^*VP28#TND+}=-DFYL@Gn0Pov3&(C7LgeXaq0^13qTmBrJi#?SVSS=n>CS7gN9u7vqnSdOk= zTp)hYPu9fMFW45NCPqZqq->F(@I2ldtHl@}?x?Y_5F}FBW;6RliJ|?w3nM zciMR>*W`#{ZR~~nc;G6g@g!pp=7nSF8j$n76f)C1j z2mK9>IGOPM^7Z_a2`i8*SIg;y{UXjM+=X_f1{zJjpfR)?jiudb4;n{%(q4Gd?8|dc zQ!MS-iKXXR{i?ll?p9btcu&_s63t4xgRZ?)ZY2_ zg?ho4S>wqWqMy#4Cw-kobyF9h`r9n3OPMFBP5zjN7krjshagbt8(lFY31dv(;4x>vM4^DnDNW9FZRc1^ahN(W>MN%G0v#U>Bz0Gmug zwUPB99U$u@nc4RhW%PIY7@1k-`S-=j%vSL$T1jNRSg0;dzM}LdsjBDN!Cb6UES27< zT_5jY?XsTU2b@6eZ&|u;&khq048J{Ftlb_;Z`A76b{kPbVs_jG`KljJkUiG0Jmeu}m0 zSmm1}{$4BemNxz-iD#bJLuun#lJR1U$T$2}TCvBABw0k6&|8|yj@oY$`HtuS`6jX7 zZ#uw!lhC`O$hWlqmW1AwyBNK1b}@VC(*g2L5+4S4vH0+12iQZB{NWLiZ)x*~B;#AI z-9?>we*EVSkZ+Rt+goD4rJcVev4#5|^fa?vH1v09_)=)-8AC&_#58E0nj}u%RYE_`C9~)7tC^~|??q;{ zF)~}JQ^@ST63R?i~L_ z|OC;8{$FQ}-ZQ|K1Do$jE2&|UN_y+qUT7U7*Vo9?6g=|O6t zx%3Da?whyulGyL%UCe$<`7V;mH;Mhe*a7yNWV|?2?4j$77aw#$ zJWJwlUw1Kj7nP7+-Gdzei{uYT%v}$3;TP-yCx?E$a;DgCcrVL{if$4`?Vgr@&M4!Tt*7*^t+a&8nr;4n?@zloATbz8> zjj6fgXukPu5?{}CqFu4~wkDx>`x4rs+Cvh0x9tFWlf06l7};kfJqkFG9tW(WCjjf| z8Ndnj0^k(d9C9q9tpO*Kd)np^IecfNpPSkk^_-KNZt3Kv>*mN!Yx2rXlgwWS2+gIf zza+7VErj0Ej#o)?|J8-w($2S&*u%diMwHeblDtdwvCv!EcZrhJ51$fxOItrok`J7f zBc|C{HrL4y-ME%JmgSotCh@l;JHX$P*zda?V82P|{k8+>P2z9=*8%>Pgx>o*fZinj zc3=niTN3%+*8%cP;%}dKfWIXfFSaS+c%gfY%_-K~K~k&H4#?2oqCWzjMeAY3u93FI zzJsWfw1=j)$2f_OKkZ^VUcZDo)_HFdpP$nKKA&Wsev!zxG&PMh#8{KA2Z&bT#dP!p210~e0j<-?oVts>A*NnGQh)_lANt>aHwgqiT+hL!~ z1niVaZ@f*CqwL!O<5!aR$$JXDrG5WBiF~)}0Qn}F!#piMRN5L{lKkMD66Oc$^KOp4 zs*_`PlN_7heT*6hJIA|^50+47ItC`u@thLUn@h*;JnB1%>->&wl#Y|XW2-Vtk~h?f z%u16tD7{JI_;8HSTiW=Lgx)7QApR!F zA9C%FDfU`&l6>+9k#A}9$s~I>o)vmayLTf=JiE7q@hsOIXJcm``#+iE@Od;*bDZSo z(den~djLyRg>27?4ILcSZjQ{O%jT@tBp*{bKk$AT>S}TYkUIvM!aQGO53x zw|cvOL9b)5<@XDLY4KKCZ2A2hs5aZu+;U&*rFtvJ~p<=C~WE3q>esE$mlaxM%t?Y&mtauqDH?oN1vl( z_&h3g9Wu5kuF}VLYz(&JD%Q_q1Ya-j{9!6IxF($j-7Thn0?wclVz8f-ct?#|&S`@8 zFu^-p@SYN*(UXgam-&tInB@FwJUu-I%e0hqs<;|saGjYlu9-2oW~7X(8ShJ|rq<6| zeQrwSlo^%b9>Ap@pN(tJRB^GtD_@yw>S_7A@^yZ!3}>av*Tpe>U6`_MTpG*QC8_dt zMGRk;r_9$iv3y;XDqoB%+UC>6wO=f*15)LS^`(4e`d3=|iXPW)h_ROIQXALIIL^P% zqvQDBVz|C3HN3ZHjpKih;rEurcr}j2XVvNCNQ&#gSRXtnRa@marnZ_r?xY*XI8RVq znSPO0o}hkV?DG`IK4-^ZzbiF6;V~$R$F#>F&V{0IrIib*JhSuXdw@MEi?}7@TQj&^4wOjWXJ7v=e9h5QQyqQmCpP{ z}=`YE1dmVGRW~K7X#FBQ+Dt>jN*zt#RrzlR-&Ycc%^vF4Ilpd4k zz+wB@%fZWWFA8t+xTp3Lzs{15P8ApD08tt|AoZ~_F3zMoAB^8kkgg0lXHyww$Fy{F zHqJ$(aix=s>RWy0ji$BaU4}HQVhlyQpPwiu#~76ncPy8M&6oFZ)=R}wwG6T{=%sqtuH%!eY?_hNW_ zKQ)ZTJ607QTVr_qATdUbY9Ga5`7qU3V|eQ?ys` zCXatnSkoK-48{S1k>h3*#^iBRrTHnaMETt(k-JshowE7mNngg``8-8D%ukfm(&VR9 zc)pI|=i4qQx9?;4`7uR)mc`&H>k+jJyZv@u(IeV_y2s$rSw>s?%+*gTfhWqYt7Guk z9qsw~Y0nruy;8)pQjFYcQ^Zp$eo7S&R*BJ1pA_ZRF9y%*DdJf>#tzm@5l^Z3DV4pk z+@?gF1CyrQO2yB5F?O(Sj2*N$jxKNhvr&xPHi(g1d&h-R`A@0x(d7*f=hsp3AkF-m z{WJ0Nj+r-%QuoUgORCqW~jFMZL^Ttx);XE;lpS0&$QFzjvXL0^k z3OuFKPpR>bCkv+ly{3sHEw$K;9at&4Fz zJ_=8o_4w^$>}`0DbtB%b=ie7L=knw?`izXhvSVskc8-x*eQH>CjlnWHH7sLeBsL~B zEPKT8vS(^oZY++YX`e`jTPx`F;mH_?!?a-7s=I~oDhTMxYV$m1T0Y_)YR0loD##!$*EzP7K7!q)Ucc$Be646!!jd= zm&Vkva2$;C%JkwOkAhJ)mfk4H{t|^HJ%5=QgQY1oy>J|h;w8N})*ORnR%*PkB}eg+ zo+a~G8-*qLSgWHLN6RRGNiSM*rWM6YdYRURF}$3gn)cboq9m4{ja?jLW0$1H3rj3Y zFX>5)=RZ*rOK<*jX$&uyrzWv0Vz6A58kX5H{&H7pGm~p#c)2b$URYvL+D}hnH^lJr zx72vyd@RaelILS>&41jP&rLEH%AWshS+e=h-(&Q8OKK9oGX~4;sbTqN43>YShJ|B# zlqaMY)9;PJ@~_l*c_0SMeW_t7?wfX+1M$carI++Z4xVF2#g6pm*sPZ*Ea~ax;TVbi zUuxQ)8^g<^sbS$!FiQLBje=ayj?znd^=uvmqj*Vg6y)k`6qfX=vs{&k!jfK9f@i-` zSkjyQ@;XD5_S0Ku;IT3aOL}7^k1tVJ(i>km1CG*5dKob1Fj2gum%|kIU1}Z0IERVi zCA}PmS2Lopq_>*E<4Y8l^u`yi;YMLeuZGK`Sd=9vAH`P2N@y7!O75Bo|6*Ag%?GTc zCjfiWGk^o>Ilw{wn#p)sGkH$dOmwwm->lV=H*&6)Jk^fX5~Z&e6!i>Ixf|AQ%4m1M zO4=7tS92x_WlKTp^)wr^nR|lOoNih49aE8OHD|Bx`LE^_O5eI7xxG6reQODQ`*m9S z&K3GbbXxj85&OHNWc20ZzyIz)|8?ne*JRzA1k+a)T9a)F#g}5N#unY>&DsxfF z+N;^4kiT4C)SN{r%g1Nk3UTqHv7YvF15VAELL<6&!|t3<=_TZgHOT(9qU~uXdZEWU z{;$9F!jAENvSV)@8X&(DQb$8*bJ?l0HElyfX&7xw!)XWFkw(x++L=btL{c2DBN|y8 zuZD2Ek`j&+gpV-}AIM>|_^2VnNqe|BAmHOI;bSKs2lHWZFdv6eH^{5P|GhlMls}$T zeeZe?ILhgLz)JcEZ~%P@IFNXh8BAXS*3q|sL+N|KVe}*5wp4}~Fp74DJ%30a^ynrU zY{lPR(8<^My9I4Y%kY=AdP#XVx||l!Cq24DldQcDd-MRMR(J38s1jZ({NMd!O)Gtd zj_$w*P5~>a7vKO|32-2-0$4}=0Eg1*fWv4_z-@_h@KLm@&{tV$=&QzGrmqkFGJR{~ zFVnY)PhTx&G={#OmD%*^FA_3s6UpjmEM_WGsKM9Ko8_*K7L_N{QLV3|b+O;Ak~RPw z7@8-o2QJG(S(VP$HUMu`kmfJ4=0)z_wv8(DpAEVCsG$MCTuvJUR?-l_0kjq1K-vbd zj)nscrR@QS(T;%I($0XRXq4zSX(-;ha^?!W zeZ@Za^!1uK-W$DgG-U4hEr9mxHHyFNNS8mytXIP^>ouF>Ft7RQbz(@b;|tWQVvDk8 zwbE=W;`nODahCQv7*X5K+|+xDA>~Pdl=sg=%4*M1eCO}AY|qAP*`BRbSSCgy*%sZa zjhxKnUWL)HawH9|ovqjg1#S*l7#%A`(BV>1(*_laS*_4!maf$MIhc$sT1(6|f9RQK zEYo}?K8E%22K*YC5VjJ5Fg`+bzRB^fo@?~VVl-&^Xe z|G5^Yx{snnEl%e)@s`)e!RK0DE~^XY)rVpvE2qN&E9qFk0dxZ3KspJqj!p&~N~Zu0 zqtgJlrPBdN(HP0Ar}%mGQGQ-M)z7P^`FZv2eqMbXBxB||M`z{Ll`?BEqarU{~f3^Lvx0H<+XGt&6YXFgVaKE=@ELA9;bOUAG7=?>A8S{n}mYD3kClY3LXHQ zLNkSeH-&<8aI*Mq_}yYd!JPpG_l78#5u%_^MOzf)Ye}5HSZ$juxc!!-5}zde9xVJG zE&Q5UO|$UJtC|bxbdmT`KEHshjkE$2@QS}->s@~*B)mQzfdU+64FUb*AwR*I=%-3{YZRVq6oycQn zWEy$+Nn?@inUAVPM%ja@$`ob^E9bO?VHviNuLq_R%az}#O4;quXq{gvYZMREs)<`A zabw=!Lmv2Tn;xh-y%U(Gkk%M7Yb8l)49erf5@jBhDD#X&nHK=3(A~o0MG|F3NmPBx zk23RvDDzw>%G?#=v8K(asyvzzQ|H^6HT)zart&ydc;w$29Y`~TM}u>Y@OX&u_#e?@ zqtD~%0gp37Jl+%H@xeCr=thnjx*zz;=|R9sdJJ#?EdU%yPXgA_vw%ZsA>c529&lTF z8E_PhmdNptA30k5$nmrvIbQT5$G`l@F)xT5kK~LTCL0?RiX0z`#!qn~haJUihO2SpWwkT1pydr+_ zy7>0l1b}BXa}Qa(3N?b*&PP!oH^XcVRT}h?z}8rnPAf7e#@)zEv0N}cB{nzyLjqh~A!1oO-&tcoqW?%?9dZ{Am2zYfFSlMTA6yyJqtYm?aVy%Q1F(krZL4IAGI!F z=e)K;F}|{|R3z+3W=F7Gcr{{2W&GK>epG(1dA-%A&G7fHtPMPgvvNa|t6Pm_QKP6C zKgSnk{LByc#G>F<`A6wIyMm=wkXf}-tFWsi)+%;`{CPb`vzu)Br%#8iqgpy9w@HWk z_j}^s=lG-Mt3AqP1)NvAU+IxKC(zZY_KcZPl@?QDnN*Y-OS$jgZ=?5Gdb7L-c7MaqEiOcOT@OwX{N6xbK>>u*}-mxB5ra9K*~m{ww~G_Us}*-0v3^ zcf73}R1{mukMH8o=myh&Wi;{tD`_d<0Qv%OAbkZ`N8bSsr5^x?(NBQeQa9{#97Pjk zM)yB|#9D&CymRFn{N=2Ms?5%nVc2cMJDolYW_0ghrxQmi&boN!^>M}wFF(1wR}_2D z*kq~)|8nM%ZWU@RjNN8cpuK*qZy)uja(5b(SFMXoC&`Wxtt>^&&2?U#S=(J5da!xK zW_aJF?O2qbe$Fb2e)7ZpdI#cut*E%8>RhJ6wM$VdTq^T;-1SAltvO42xvQ;q*xZ$K z7M+#k&Rx@|!`3=19h}3()1kVEAE#d}stv~H??(ylwCi8WcRcQWii$hl{)~KR65-Lg72x^ONV-MUkiGRA!x9 z=X)GmCHrzE(G<)86(TGoNMyB8IAyuP>VKz)~YAm77_%6GiXw=OE~ zsJ%O8*UtVDyVBmZqj597KCrj&o%Vhm#U1b8e=17MR^0LV7N0|K8xHPgwS{;exU8r?5Rd!P4#fTE4#fSZ zqT-I)xo7t5{Z{-h?LB+ye_B6x{V(a8gSwU+wI6B)R5f$IMRr*18-pvt-&VkHIju#T zP+O5 z75p#-xz--z^Orw}Kc&4xOywRQ!!9nWFUR99&VJ+k_?}r5zSY;G?Cl0w%}8Q({C1kz zH{x1dE}M&wqk9)6j_N*xDE`&cbVWb6Z}$}*?M_>}HjrzdL4Nu^yD0ir-0^YsilW3- zU3-a=wUx0unvJjIwHMtt!Zwu8PMv&lWxj)02rk_v6UCR>knaAreCn=rcbr%?gIi-u zads5%H)j^bZ}OFI=ANrUn9G z(xCE>kGBUE#plCoKQ{*ZY3yFV%sp}akO`R+M)KK<;;xt3w>{kbG$wm>-}tauZ1iqB zm05fZ@(7Vx+BIkWU5ix_lggHG9n26}#r#Wucj)eK2Q=l-RXwc1p?j~`Q1dydC_WC!9tv?#dq)o=Db#qe20`OKB` z)9=BtI*wEiISO?&RAIYkuD*>7yC6f)n^R%zIr!b-!u|D|sq zsVv-iNGbK4pD%4#6kpOgN%lH?vORnnfA}}+rjYI*$UIG<@cjcSv-tfctBTBuwU;fv zHZrX!{-J!whT= z$6;QlvhysBJyGvgE8kH#-Loqce^eyQO^-Rb($pN3n((4#_drQoh#o_zHauNJS@1?%hNgq zC_mgS9fE0pUIh3!xE4`Ujt7PUEElBrqY=>)r`_RZp;y-}Qu=vcf$<<5JYg7vEuA3!ixrb&H(mJ#8 zgx7E)YceKPH25v{f*M7IpM1?y_&sG8OPdemO0hI&0IrCxsw{bu9$ z!SDBJrjq}hlg|;>mES0tTUooK9W&yPywl#o>xHsY(F z=sZDxd#AlQ{j?CRrzNCS^Eoq%Ua`#NbD1@ur1>1r7_21hj3L>GdS*xxrzezzYK`+{ zOKTN+O)@9dUU_z7d$qIpWD>}p-J}u8xK?LrwY9orv~oskd$m=yWWCNnuhw%L6WV}| zMNzx!b!YrumG&KlaiMoL`Atn-)#ouk>Ma7b3(m-`RBWX!nN&D0w!PX)Te4nx)@x<0 zvtF$=+jleCp6BtnuM)_Py=mBR_FOuRUUNruvjWuKcy4Eq*;Se}Xytsw+JMb+lG#91 z#ZE`H_PtA^Sx%I{WxvOAFisHWQ^2F%VNnmY@2NlKBO%?$};= zbtjEpn?k+LOsQ91=d`r)I%gWR@#tvE!qS-e@T#PhFRx0bAz!Wv+g`aUoJOxapR&F3d@7AzKM9Q` z9|bj%WKkx2#$#wLtn#7}@q-Yp@25m-?p`%^7do02r`O!tDh{oM#sk$BR|>7Ya-}d0 zd*$)V#sNEiC9|xfLbOgviPr3xm4+AasAwf%N5y0k$emLrwSnweZxRXUthcRtTjsez zg;!v+>(WW+&u4YsNZidB+cQhgUS&x_uX=L2wxLqc{V;Bn(A^Koq`>*T^$MpSG261xIV+QJ5xX%)9iI1*O2wP|dr7HqNMJ=6YAK{qw&` z8FXZx`jAbJ`)h5v=YOsRTZ_;cbJB_s`$hV_@>pbhwPTT$d%l%;w|bSmZkL8naF%0f zwHaA5T8q;w=T4SZo9QN_m9ui&tIf)j^~y5{+pC>HBGvHg)3CW-mFZy<^f_Z*zesN8lm9A9Zq^R&@0{KlT{n~0*o zoWWBFZhL;Mi#zu_b5Ym}!D~tpZKJD z&#ViiK_}-L);{<5b(GBJGwUyD(7AmmE)7q`mNF}4Y0#OuB4heYCeO@0>TCOZZn#%t zPijs1kDrCN&udz#fwd*XSR)svlvC6VcbP@j9Jq9@M5EuB+Rv8U0Y zK6g#jr|OC4pzMvAep={UN&B^Rf9t9G7A)f{bR1<}*&eN~lK6h+jyJXcBz@+dD<+G3 zKccp2ZR-1Sr89}`XYR{O(x>X)zL#n>wWz%C)7~`paXhs>+IX5oPn<_snVz1=r<6_} zpDmqsd@h8}Tr$=3L{z4k-jvTANBedCRQpvwEu>$SK@Vp>=Dta-GSCb+$R~Gx#xY!`kWDp*Nv&< zYPs{j!sMxOg=^c~LuPKBG_K^XcO;W3*W>IMcyuZ<&D?#OB(G4rKRgtpY;9M^ltSix zx#tsw>0ar~)Vbk3d7m~ukE&34CgDBzI#DuP${a`2;Qio`ecHNqlDv0XsL#_ zo2sKEbY|`_?W}$B`jCwwT0co#Vbt?yVG3z^?=Jhn8BsY*U$KESioy zg)-ZJO<6Ka;@Z2_(&;H!Qkc5T`Ka1@d)9LfcRVw@npa4VzjS)c-b-6Zk0&@i+Nwqp zEBe5(%lA{U%VPBCTF?6lX3J{nHfEX=TCJroDlg2^wP))?+;iAU3+q|);7=S)eUyr( zra9JRYmP~*>0qZvTNzE#W9IIv!sENjajZk*n4r>{gvK+S9#2oD$IN{t$+_m01sj3) zNFf5(hkD#Og&w&gXldLrg&w;*`CC~k`P;FMuI<`X66+c5^r*Y23d;!9!Y75~xPJxu zEx#c)gf^#%m@%1i%D?Qvy_Dg%D@M^@(HHg-OJB=+n7%&j5$@}H^u=#wR-i{dF`0YQ zzP3Rxb+mKPSB+2CNdH~)!Ijy4MbX7P4yId#$2*0`dZFt!pT`?>^2ikR^EtF<2%EnC zC4D_0eHk9-_YESGnpH&Jruj4+or4Brmui*TldFCmem@t%7T6y3x&LO^My6K&gXefftt}bpbLyk-`Mpi8KxnsSfg`u~r86*H_sn7LGleVXqczbddkv z@PLYV>sH)f3hwV6+~4@PKg+;j=gObyY)k(7oZ90ovExAn@yGb`-$Z< z^3?dru}u6k&*<5`+RAgk?rqCce*vWe&mo!t!r}pYQcu8s)C+I`)dFsXs8vSS(YDao zg>($yHS`SP*iCdZy^Cmc1O1I|r2nIr=@p9Z)$MO3!C-nd{hcg*NA=px_usPWd}_M+ z(XdJu4cErfkYBHToL;|&)Y_7la+cq!eSS3bb7=Tg9y(JRR!>p7YdSP=)NM-+J$wzX zjpwRqU3q#vz`=BcM2HQld&Rszn4erWa%lQC58dR~>j0-$W6L~hUl{2jD(#I^l=h}s zG)#-7AwSLrI=!x!hYs`Wb+FT`kym3Zt$J435Ik2#TL4zlR)AHs4PZ|i1~`C*18zmX zlQ?xF`n!gH?MJA)Ga{6p9OU+w-P87h;S=evt)8+Ys2l6Jr+)N+^b{4}bc}NCKHlP$ zi+J2S=7C##ikAoXR7LUfsP=t0zNh^9i03O_nwl+*1kKg7GhhwX1NNm|0sGNtz_n-$ z;Mz16a0u-IxH;_!IFWvVTEo+{4)pa2O@$>rfxO*RA(HpEY0CZmGUfjIrrh5?Dff3# z%Ki0DxxXILpT@zxVNX>w0kE3(0j!~40`{f-0oS5QfNRraz#()n;O4ZBSYCgzyrxi3 z`S)=sda4Tb^!oyPIy|c<{zZc)f($QznxGZ*QV0|htM>@&1px`T_4e1_jc2C zI{K)hGXa&mZ_(d>DQpEvXzCfFDSzEH3T3Wkt`X`fAKlH6K4v=H{YfMqw#+2lof@Jk zNl#p_ww9T{oSL%a)PBosmOf@Va=KRJG%iF_67Dt*^^`w%=Vx&jrYZlPF3jqwJVaAI z_GDyzu_GrFGutomKMOUNIX#UKiHB)QBJqA9?vnI$XsD-r+Qi z=zhSy^bp_>Y60Aw_J@Suqz9|ZkuwiQW_&2{txds{)z zE=WN0lk)7X1>t=<0p4d5Ji9Q#v(L-3cNE0$iwW?)EYIFm5Z*<3;%$!~ycY5U6Pw-u zo_*+D!2Rg`Se$PMaY}chxiimJJX=E_RQG^~=?eHn(wdk%gLR);QqAkzX1#nO*1F9s z^<(MlQ@|ngIpF5fudWpLg(vGi6yxh(R!fyx@D4_6_H(UKeOX-%3}#(;F#0ohwOZlE zim$8fdWne@+Q+xCeHebe7n;A6K9qmPr98Qqew4OWRtB5ODk_#yjgggUtsJ;gVh&VF z%<Dsac|#LxCER9n^k+2eQr)Ab3{t8Bgq{Fv zXa&H&^mmEf>Ud)rO^{gnZzs|5ZrSY8}xoA`=yA-%sdqW~h_29sYxUXz0(!Qdk z%YCtR=cnJ5+tpeFh3Mx0=uV8JtXLa>9ISAC?nc86AeY z?q;+GC|rxy0^Eq!0o;@-yLY4W=~B87yL_&o4+8t|kGs{hK41-P2-uf?2H1~&4mgN5 z0USb`0d7t|LPtxmnry6pkld-0JI3x!WLq6JroNTktJ~k^c($6h1RO-ekpVBs^SQ0% zxuNphaq^tni0Y*h^MBom!CF??JXu~w>(N5M^=Vr?zXAQMdl@y;*;pNHqIanYf6t}& zf=KDsB-F#%k8~G}YCB4Q+trk#wb7oAj;>`yMVbez!;!|7^$wt$M>j(U?^(%L-XleB zJB!@@8j_p(R;JvPKNo+!;NKOnFD=0+&QZmsA-nBp!8=Bt7z@~sZhTDm^qA4mTB!AWw;tu{yLX_w zK>>|sp6FH?nMP}C(RQ|^8{1j4Pum|e?5r)`)#nUm9TUxt6C)oxp2hpz-lB^MfP?6K zu>sYwI|p_-WF0eyY{kl-i81@2m$m4ZfE&^NfSXczMvPG%XmsbSMt#Q}rIn*h`?C>` zDX`k(XEmE~X-P4XYF7FWWAS4R;eg8ynWPQ8r=hoh30S7>~_}6sAq-cC$hD z5qHFi!eQt!ICAkgNqA)c&!0zQ%ZA7H#G!-yj7Q}XWg|?p+DLw}{}6D2Q4DYp9WHj* z9=eY3=~6kHydkWE{OCAR==hb;Q5Q*vo0a`qp7@VsgvVrLgl+k8E*{;!Pn5pjN8fMI z@qXXRN4EW%i256O=C^?T=t_yJt4UmK3)iXg+}py(?=tu>w&_MgHx>^HvL<&dbNN^q z_MjO`b_}p~%l?py&Zu$m_Zf7y6^|9S9pA$7NByggfHn9^x;ys$1cMn&1=%$n|ElhuL6WqXtv5t@X?X25>*DP;9_ zoAy2{=v%qTwy5((pJwz^dvay93GivAeWBof-rwt~oL!8oRdfkpU%Cu%ExH15ZCa~G zcdW5LLmvm@^VPUsM%MzC)AfKo=oRqs8vPs+|21ugJ#@#>)d5%gqXwWWsDDN4D!LJ{ zFVzSA+Bj=QXpXeu(JV^pH~W$q97uh%U^Dv#ZUvrdx(!fw3akwZKcb0JzgDc@qL#p( zV6p0*zBQS5)B{{BcLQ{?gLzl z9t2#Qeiq10ts#3{U~ACKR`nZY4NFk%;w*bmAj5}&r;O$TR??$@J?TzRb~XJQ@FaQ` z-2H|Y0iFn2O>OOQwAzQB1l*6F0X&K}LEF!1KJ;TM{;o_l*D`x`l?&HGpFX?ja&Wl5TG z(bDGf`wm)F(|dsGDF=uR_YoV`@y6{}vtZ*jDjBxfLG(UgU-AIgq7MPrrlDCjn?2T8 zo3+_5>oV+{xni5CD7cpKF-9ML?@GPzLD55$29|=xYFZN5bF-a$*1h^zfCg#WJq zRr?o-_77-B1p5Y0XGSnL@|&2?9#!RxD7mQlPN@08q2@@TW~C4{tkFTCx{|B^pQMi- zqEW>W_u0QFZX`B<|SNp#R6-djL97bdTG!n`9Gumkt5~f)qh)sGu~(1}cIAcCa8I zioF-G&@3p39TdR|s9*sV8)8ENv4Gfn0YogQuYAv$$z*qjT*d$Qdhh$YCb`et@P-Or{AkpS$-qIeMi5jSlVP`v3|DKey+#QI@O+d?7K3yPeonNb-<6jva^16 z(SEMces;o7ChN)iDQZr4#E;A->!*|UbBy-0d&G|&|Glzf*Y$6VU3c9^8}?&!4YYUG zN6&~4tJ^QDJ0PO7eJE;7dr?P@GPVx~={}s0>w|lJSJarQ>?<+rr;qk?s`k^Dcw9e4 zjp<>!zcq9H?Vs(_z&w2_YJME4ee})s>1Z8`*-wtm#S&ia4bu7}oLK+*%y_&rb|-2- zCjYWO+Wp9m$q=nKV;k@{Da!bNO`Y z$TiPjwIz9!m~2~TX4^XZZ?si4dwpfwDk>(~_o6WswQotjWWL&%&dtVjek3NFs|$55 zPSg8@924CAx2Szj=2IEYEY{D(+Rre@Pn+DU+-R)kmHVZ-#weC$)#WT}=El0HxpyUP z%JIyOQ&DqW#%W9T6B+j{v6FcwcDAo$bmSv)^T_W1Hm+!2qo2T-Jcs=(D$izY^N(HB z-_=|_)Kue$ruLtVvl-zDI_7KiINN@h^YTRc@uj+s+{@U?dD-ft{rFkGdNi-|Y(IvG?j-LDO!cS6}F`JfW%x35~%rRKbjrLq^Urlb_&b`E9 zUYFZGZ*F5|%>DQd&%zJtmL`+E)v7AjyXHMy`^tAtxxe$7!^8Nh{g-1gS6kT@rqP1A zx`)iiwOk8E|D?8kI%3r}W>wTUJfmya%sz*dR8Q)? zxE^CEGc~-nEXv0V+Q(mw_={O9b4~IRQeX87%YN!LmIKsWTHT;Fv0O&qjFr*9u5FiU zt7$Q-%|DTk?r+PfQ8V|-c!7RT#?F_&igpEcYv*R~+ek?@Lyya}&Bn!KU?nzX)O)&3 zlc!;^3>d5Twbh3at5dX<-KWhvTwl=AZR!NB|3|8ivqx&1qffO5v#*xrKi-*r)%NFe z?fFZVZPnK-`>JnQ4pbFr<;~n!?9ToczKd+@M)PZC$r|dGRqI&R%zf^-0jZ4oNozhL z&Q)rCHbT2M{}S_FbkBax*2~v^G>^aQ_HF;8QU1*PTJhtk8NWZMk&eAL_%&l0zAMO2 zwlOk3%YG`wGQRf}9kIo`T zwBu*yxY?Jl+iYJhD)#cRsAT`y^7hSH)y5v}QT{QD?t2w=yMNWg%2?ITyLabrA)1w{ zx~^@(%%AF%wN+cO?5k?A9H_R}^T%2hHA;12zE0Qg^_;1%EX?e`mHG0KGM`iam9Kg+ zU*=vCa~Fy6HBk0G}1$IRf2 zG9D&U_cpa$d$4lPKS)vwq6>7=9HlO?|wMSoW1>YM$p3!1*F8_R)ejNapHfA^uRrrMV! zzgk7x(QD`fDYbF!pN-4bGh^|U9*cvr{mrL4#L*p!&oau4(-Pi`F=rXG|CnQJ^plql z=u4Q_!*$(HXmge7=lC7)C%U5|x+9!=(Yzh&=#JO*%>FsZ(G7{{PR#1;r!M9kHnhC` zeALblxfV5_N`%+%BeWkgj>EHlY;H~NMq<%doxyUT+DYfm>VN%&?5qebqI(PCT}<`u*VRwB{$gt`sZ0bmf45QAR^382qOU3*;m(ANx6l| zSE*z7RO^5EW^*#RS&K__TT5B;D>JkhX4Cjx9`S2iyjLIn&FAjs6L+gIbyno5^DLu~ zQE%(kPLH)Cea@(NwWf2d&wF#%;~=#Pjj!U_>CUmBuUf6^RHx3`+&KAqv_I6E3$(`O z?Igav(ny`mFC#VPu1_1W>@^wnv9_;?eYn?{jDCj3&8X3Qkw@d{Pp!Vv-s1U_y&$8$ z&C`wU+5r|ZOz0Mg68YQ5IP`)|B$$m31wWYkZ(j{M49IA-Rz6b>Tx zzS-Yeuo3)%bz1$(vZgwSSuiCxZYSwI-F)(GKH;`?e#bha{?P5Tp`Gx^v4^gsD#%P2 zf+jo)`noK|(mirU@33n}o$&Zz?ovrpC!uyDw%c;CU8LJF-{3ai-L|on!8)VL>DGQ@ zzYAkCIjx}e@%j6ZKB`sHb>c@tQ>RLvI`ed$YLPm2FO*+8Yoz)+dtnW2S(BxE6s)Z^ zb@OQIYfZyEnnqgFB#)-4)@++c^PrBnrPjxLIa_O5<lf9dwzXV|SfyKH%yJ(;B zp33aasE%3_KN2m{b@qtVvFD=6`bac|*Wl4}Q9nHgI&1qY>C38I|INtkg{H5%oV_+2 z8B?cgo;uwr^VQxg2dP8x_HOQ6B){0!NFC|yO+B&9sQt939kCDh@?pA%=JyuNFD=+n zG5hjmS|88l*7~~Z0PQV4UVZdYsJGU{k58tT2czk$cGbPK<8`hcuk)SpdQhKH%sp1- z?kXGCb=W6VA3P=1ee~ta+(;gxV>NNdBaYtfV(xRX-rDPSI_UjnSGo^@t48BQi*jh;8E%tj)E*yb`wKbXf)a zTF#D>TpwoCXx&2m>g`I(GHQ(0oD|DlS3Nt%p|P{WdYhoFuVLw)?XROOqpsKbrm?ZT zP0x1os|V)y4y?DGbPgx!I`JIdNSUv0VmU~S#anpX3>b@)vfs$Gp5&^sjk-m9GS`k) zV~!5Dqscf|_eNuWlOulI=&bucRmTv&dNpZ|42Rh ztF;*QtC_|aC)5vkbFYKUd_FGEJ|nTU zQ9tR}GCDTfmtQDj&u7_;=*(U$zYQHd3z*+jmU}jg{&!vHk60a5QQkEQ@8`AeB3YmI zJyt7=&uAOdIMT`gkhOXrfAWrqm6MJfII^@K^>h#0jzhLdnxbxXt zHaF5wx%b7&;!pNcD_^Spg?h3ptBhMzuI|`xg&gg#Jr>5tc}{Fh?YER| zj53DOhOJYJ+|*QcSccZjn;4D z*xPSz+IVGNMeW^hP;O5KGP%92JyN)@bwH|=)9n<~?Sdr7M{|Vfh!lD;*CAH7JGwCb zPDtV2T}NN#Sj#jx9^KvFqI4)-+g=2j#QW)p?NMZjjj9FeBlP*OHM|Tub*!ty2 z;YgVG8EhZSw_>bxWz2F+%;z|yFqR2OVVu_>g?+dVDQx}vm^29~jPu5r)Sj!Hrn&vh zyjx=6&)7N85`d@3fH*FV;BA-XVQ=Cy>?JsYcM z-a)oH^Io@=p2spA&qc9%i(}HuG3iyLaO9W7q&H%g%aFo2&3pN_^*7OldzRwJ7xw)v zbm5-$PE1;f6k5I))0xj6YzyzlEI*7{evB0M!F-p**83D)n7_|sUd(G0Yx!kN_cc=3 zqi>PI7S_b1b+LNuk;3-O>lWL>hM46~G3l3>^lMD|JtqBu6pp8=6dgeyDa=tarVC=y z^UUdR#*a0JaKc2-vvT{xcAV?MV+3j0ti zrZb=JSub_a)z8go^I43F1Y zYc}#$ZKE_yTx0ukFV5I zuv0>*nb0_?)QwO%rPP)12b>*H2aZcCz6Gt+0U4#9g`N5M{(fjwR;fv_5eAl1YB6*u zueeu2sqz(+Iu|~NgDcV&w5)_ZY=R+`m0AIvswj0IRIjSkCGa&IS`B+>UR|kcU?Ut` zL#bDw!&XY&3YnTpoeC?VYc1k|8nu8rM~7Ec^t=)KltZ*ttG2LYW3i zod&C*TSKKDfUUMx>LU0O4r-*-0%+P;sq0`9oY;i8Vb5)pnhq74Ds>io2tAuAH4ADq zSL!_Y2=?9^4Yp-vm6E`U#AzqU#} z2sO4RFR%(awIc?|v}cUrA*j9s?Z7+Gv4c{#!0&M6j!G?r#ycrB3Or@#_u+l8FM_i%7mr5=V~;qY!sJppyQD|J4shE6@mHGBds_Eu^%d;*>Kp&T~C zp*@wF1C{nw>STBcn(v1#d<1*!uhbOy84f)FTc~s(w(t@(?WNRZ@DX(GjbHc#Iv>O~ z{04^~tkhhnatQr^*Pulo+JKLs`JqY;gO{LEU$)_4*a(OAqfMxA7-Ix4K%>LSE4&Lk z_9tI33)Vr40ptfhfQ|!|x&hX~en%*EH+%pckE9&d!G1?!4^Kj^qm>#7OCWs=a|WJ- zTE|ij_e1(P%Hc_Pk06v6WP9%5mCG2?;#|u~o z`wU?|!7tGJWR54GhO!^SY{(2#YF`)!pF*?Y%u{#^+ML4v1nnd^wi=pfoatcqt z@6cx~xrXF8j?3@}lpoKr9~MCM38V*}hk92lbvnEX+g!ukgEyhowHy;*I(!VZuVb9x z3U~^BgjN$dH^5D>6f)N{Z{SRL06v9AH_%VG8eRZz5_1yHfm!ew)Sb++7OsFN;Rk4O zqf$q~4e$zhQ#fwJFt`UkgGM(g)epwQbFdM1yqUQTQ(-mKzD22CFdF8=_t5-SrH+7! z@Dgl--EQMJ4iCdx*zR`D7cd!?Lzz418=MD^!Vl15Dlx(h@Cta-h!IA>bXW=1?j)Zu z8lHlmVf(u{7Qi%E1(m0B?tly7QTP^`-pzgk6X8`z%}{Dr7zR^e1(cb|Si-3=9o~fs z_b9a&oB{X1YN&FrQr+PkcmO_v8u!sATmW<6GpKz(=XkgT=E7G{{{eCXqv3J*4jMhk zaSg75C*gZ&I*a2ZjE867M`$sdafWN*1=t9!=P<5t1H1(Pfp!mZet{|Q8h8(rM>q*? zg{6>sg#N=Ym$Ka7Wk@B=h^ zoIb!fcpBD2(8&kfzM#a#Y$ZYuS30;IJUvX@DO|o9bV?V1M}c_ z*#8ywUziO)!M3k5zAzTvfb?q|E8#3y06##>CBz92!dhtmI{AfrVJ$R!gSiYd;b&;G zl-OYsEQPAelsW{)z$;L3IWkOxvs27CrJR$&!Z(eNDn08M@%FK|1ofGQhk2PVQxkp7V|gX3T- zd;s--QfdI)3U5R0pJ@js!wRVO3$er1@EVlc$augN@B(}fZGUCIhFP#0%Ke57jEAN0 zJ2d~D^EO-r_reNL{~>447cPPO;a#Zr2YrJvFc&_CN}ISYgu!qP%!kjR3a?sshZA5D zJOkfCP0v$ZU>MvBD?sr%?RL-?Zh*I-5}zq|gu!qPya4NK3_JqwL#8%;gd^cfcnIEupbq~78V17UFdJ4vvM%K? z5H5$=uo9B>cy9;#!zg$V-hpI&?4du5g4wVVG7b1`F&GGA;1PHqG7Tw*fp9s@hW8-Y z8b8nP7*Ta+WIaJz?xdVgYI+zciLWNf38IFQ0VGgW> zL~F(g4uuP02D||qp>Z4L5S$LT!Xj7)b=rDrPdFaN!9(y4`~gk2_tZWx7{B`pr#&&kAh;Z+!Sk>lD(=8B1bV=+a3S0T^I#dQf!ZBB)eQ!~ zZ^nr`uUU&w+g_=7tmM{dahDYEvSPwOK=D(-I0Jse9gXQoWG}(pm zfst@CEQHUX?5^A!1AX8exDB3zFQGz5_G9P==fhN31m8gA-G~wT!$oixyaa2Y+V12P z`oigO9n6L$@GWHa;8+FS;8?gAZi5A|5`KZLIx(l=U>E`8;9htd-hyx7cPQ7HcPODX z>xOFT$s=5i)yvsv)$2?l2HW!Wg(2?uYsCGJFKoh51W&`8@D=<4)%NAM0o|cLjD&G89iD*K;ZxWM zmG|>h3+M#>U<6zR)8HXk1S{c7_#Mjb&;AE(pbH!f$HSR025y3xumE0$ci>z29V#E- zsjZ;{bb-EbJe&z*;3l{io`5CrF|32+ft*vJ8FYjL;aC^}7sK^%7d!z=;A8j+%J$;8 z1#O@U90tSTLYM&4;2~HDZ^Ear0W!U554MGlZ~zR16X0AJ4>!Vn@DwbC58($04q`ur zR?r#tg(F}nTm;v_o$wI60B^u2umLtf<%2nPL3`*9hrvm3I$Qxa!E~4n&%rYI4Aw#7 z5RS#r2s%J#I2Z=Q*)SGvgE{a#EP?mnYxo5+eK-z5Gw1+apf?;1!{I`h0Jp*Y@B}P| zx8PIQ0REx$0UAIn=m`5jA2D`Z~*j& z6X0~X1jfM>xEmgZh42cz1E0Yf_zg1sJXHf4Ky&B-d%=M)08WH6;8M66Zh;x_2s{Hz zU=@4`KZ1W4=XIzDEnp|;3ccY77y@U(D7Y4GgZtnycmbBd2kU52&*6Lc1Ii3wKY=FD26lyRa1acHli*Ca46cD&;cj>s7Q$<=625>9unEc!WZpnC zXa^l(Z|DQZz;HMZu7n$48ax0`z>DxEd<1J?BLqiq9E7c*HFSi%p${Ab!{I!*5^jKL zFbfvIOYkOq1Z&_o$Q;Rj1C60A><&GlFB}8I;XJq!Zh&bp3l_kO@Fsi&Yv4D?9ECq< z46UF8><&HPKR4}2$#b(a3kCSGhsG71`A;^EQ6KsF?3!N zb)Ye{g!a%8y1>405F7?a!SOH*PKWd0Qn(7PfyrE2NJ>UT70|Ve#I0;6;S#TkYhH)?vZi1;W6K26YcoLq6 zS6~^u3m?K4um*mF-yv}v;{#Qo7Bqxr&>A|xZqNmKLT~5?N5Wtj3M1iMxCE|*t6>t{ z3U|SM@DMx>3*kjr0xRG>_yoR&@8K8N1i>J#iJ>~wg~reVwuhae6Lg3D;SlH#$H0kj z3Y-ZSz$h3C*TEFH17^U3Fc%iUbMP`Og?Hcs_#D224e%TIgE{s;!v2H`osjhQr}#I01&k8E`&a24f)pko(KoHy{ZqkVn8e4H=N{LY0FG zY*&OzSXKkMH=#Ci9oF?&*M|ns5V;XFfu?xgma-OXZ^yb7>o%<0!uD*-uS|Dfdq>tg zvzEs$tanA;jrH!VJF)J}dN1e--9g&f8}?y)U)KAvJ^*^bL0QDtA#5KC{fMJK905lo z9}9!nK7qO?vOXDxQ#JxlWBUv^8_omi&xP1s#P+3ZkAlnLO60MWk7IiRT*H`L4>!Us z=x(QMD(kyo24(WNkM%5gn6i2BI5zWHKgGyDhp*?67r|o6Ucv5lSPt@doAoNn-$(x; z>rdcwkZ+90Z*_bRKjP?lA zO+58kSBC1!^QyC!{bU=~vR}ydR&2|DQ;~H|Y|61+nYGksfAF>@R_c3FhA%LF#Gi>! z{PMG$? z)8%F@`*#8x`as+A3x6CNB@%48kH(W&3_jaRWKVt(N$g}TNIMdrY}aDD3UwuJ*;#Fk zR<7L0wp`|^jB`Egq%RGzmG~Pn2GWOyv`?8H*CzDS^dVeJzp4|P8QY{+mHPFtlXxXV zwolP*)4x=%-&VHcZQ@Q5dkWt^vCDX;h|~HOos`)=OFzZd_A`{Ff0BRc+cwyn_><%# zfj>EJC3Ajdn>dME{=1CXA0#$8#>u`R>)MP5YjP0e>Py=q+gPQ3G+wK>@f%wcYhB&G ziK8BVqV0v-NqzsAiNnOhFOv~xTDN5TA$|kOLOGp_sV=^ay@@p%i`21WC-F$TWwAHy zrD)sq-ImL}Y*r_0iN)$dIjm=5&FJXd_~bth*m08>rCs@T$goW#hkivDj)7}$VhQk( zj@c0=#{$kT|Hi*a$IUp%C@>UeOpG?S9T_08vRX56VHIs}yg7x4MU`)E`Cln9v6=ql zb*K#_;=I~i;s0CMrdCmPopKrXf8depg2|q=AZI@LHlfUS`+r5sar~>mxw;bPT*1+&v~z*+FCW@nAwD5W>eKnHRl?xg=)zaTr1U@>$kRCyUBlR z*@0`f9o0@;x$VLgTSu@(@xbbvIXUGu1un zUasEmR}ZKMxq_Rm=BS5wKBDGw9rvhuj4Qb(xRP6-p5$8YX|+&2qn_o8?s@eB*K;p& zJ@=A&nJYT^-%?Ass(V8%2NtKEIXrq56pbq528m z#r}+Iyf64YiLdxJ?KgaG`yKc2uH`=se6QB?KZiDO#rKo?S^c8;kU8=gO7@4+n;Ti* zNXs)=&%p9N_KEv+on@3Pqo#eBYwg|97mzXVBjXU=cE=})U6d5^znSP*{GDwXW3dk) z4IodrXV}`ZpjNfp4rCjP+zt%p@ z`KnB|-1@X@*!WhG9i79**328zSLw5v z=Vsp6`D53j3y%X~Tv5F}M#$Q1n|4fHGe=E3rcGlPA8R}2vbOc4U)DD4k1Y%1vN47} zO#7Q(D@uOCKE(BZmOJaOC>!fD>OX25)!XuDncbGP#o9&J)~=|ssNVYdZ?E09-8MyU z+qBzq9Jgh5ZFRPOv^?5Ibh{{9Tb|EW%JQ{u+p}w1*ZPXCt&J^nZLJ(#i>*2Th5Mz| zOSwI_Nm+E;+L(1Eu173#zBcEoa;(ictP-Do$hO$XImg<{`(W1A*vNZMI~#+HPetBmu)65l9%G|r`L@m2OW%shZ#;*t4>PthmU5l9xvl7Jc~LRh zaj>TidaewecnSF!5E2j91jo+FHM^Ealcdw2}Oq@t1YDE&F!sX)p);4yli|!lNpV?<+-kZv*Tyh*1z=6*hbqi{f?K5-q_l>#7Br}+pQD&kJgprR#;bF2U$Ct=P*7Sms#8P zYz#IgQy#Wq>xXu6Kc?K+N9#%)CWde=V`$54|7^UWeb}G;Wl_E9ug!b7-rUBtZQC!Z zUZ}VIiu)9OXk*9F#2MAuZEI^~JNA{C6T5R9k#&4q&WX~79J>vb^?A~i*?Ao1K49SPYl&}2H%4{9mpJ+a9S#%xM%eF;qqT5B)v36E({h7KZ=Vt6B&!*peb2B>z zc7HQ=GDbE}yVJhdiEPKq)RQ`5XU8zq8(ZT;>V&?GtMBB_7!pUuE^aAloj+&eSzJ>)VW#jVtVT zXdA}swk@*MH{)nxHL=M47q(;dCRV8<=RO;g*h*cq7Tah{W^7GgLmRt)+cwSEn=vtd zOkAd4VcfROXnXN(6Km)r+CLMEY1596*|*F-BF7|~ONqtI%`gVDubRG_cA|Ng{0Y`a z=ri2s`F|9gIZZ#!IK_{HW*p4%In0a1E&GSvmrXn3CpvB>7O^w!$#K?{NnfRoY1eMc z+Qwk)>|B)g$}%_0Xsk|T@omeEEb)tPJD$>p+4o($s2tsvK1i%mX7`;?FMTxql{ms! z>=>FdDd$_|S}$uu1=bbxc+1-Qls3$^*qL!PYtxSC>{y#|FfoLFWn9FE_%!W?Iw>>b zZET`-P0XRKjn~ZmXnA~F+Aw{IuWdiYkB!H*3vFb75x>S(%B3G}{8BD)n*CI^CBG&f z+lKX7Cbut}eX(qItc?#TGi{oEB;HmuPCK5~Z@89yY4bjdy|poOB9tXYlRr~0v=bW> zj~NG(AJJPmzTcbNn>g+MCAMY`*to2JySA}OJ=qVU@tJmvFW0XfgXnly;4TI;_EN`e zo8yk{ugQ(nwb*^i#v}D@{!DDfk83Zn8BBb3Ullu>t1`KGj8CJp{%m|E7Sn$dr}bgx zswuO2(b-sK+uBN*mF>2yB}VB_d|pY6@wmmmu`zkHb5eZRwv8XLGj*+hJ0DHCJqDPz zqvLDG%(iXDS?q0_rf*_rZQ^4bx0Sd|+%|TpAMcm#zwJ*vMzIZjhW)o?qPN&KL}%KN z{tKZ^v|P5WpFiu5sUvZk*rWc9&W?Ymx3;2>Vsm4CSe?jLXMEcI!R9XX9o1Vurk{4K zWo>dNK8?}>mXpE7k#3`TGJYW$fzn(fe^$Wq7pw=xYl54q{f zJW%9rkK%?Y5wZn(%iQT^Y8!3NKsL0gDK~<#)LzVHPDz=rA$HjfBFNgCRd`?1N!;bs zhU0GEm|mLO()+inG7`1$VD8_NSG4B-t@7lmBKL2}y^wOheoNkKY{flZjVNo0wcNiY zcQMO7+V${IhI*~|WM~h{t8foX4J_pTt?t~v6)wAH@89Ybxqqu4_iy#p_iyzn^8T%p zxU0+FzcrNmxB79P*NNP}HG=!MPT-!dBe>sdF!yiuS27~!bN|*c*dNUOUWalA*Z}SX zJA|@v+!;2G8i!Hyy4-UzcW}w`y4+gs-n+yHxqs_z?%!IbpR0Ar3SG8}U3GZCSTqYX`lSZKG|jZIWJRZ%@2;=Gl!eI(I`7I(z%+WjD5ZM@swB zu4udIvLn1By`#LNy<@y%z2m$=-eB)|?*z6_@`kWJ+8gE#XL|(YBWPoUcLvDw9PeE3 zJk~?J3$d>2UE*De?I^a6@~-f%L_31@k=PHz%Nf+a&YS36kB>>-Wba0Aigy#XH+i>G za=UkjH`SZw-Ra%sP518hW_UAs-s|1x-Out)Y-XdqAMGRFTyLKDsP`D_N4@#p0`E!h zDV__xXLvs6J+C#-p?S%B8QrUtKJUHmz2PnOmU+vycE0yETT8u_-YV}s>b|e}2)j?b zPpKy*?`vI; zF|V>Okv-;BXZ;>^Hsa+|+WU>|2Gp(YH)1)LT21{oyypI+#4KJ~`Qm>bzTc;G2mdi| zN52*Reg7HldzrU~-^uUn&tTN1Fs@S>sUH3wl-%d->+kFLKzkt1-u^-U!O+J))bH!} z!=ks}-yh%)^pEh5ksvZY3m-8ABdIs>Vc=Tu^xtXf69)- z>mFF1MCrcB(*A*Ljq%6&j z{u+O+zYcl5|AW85|Iz=+|Jnb=-$?n_$p4{y6Vh5V-}=eKCO=3d6JPpe5@i$R66IM| zO#Dp!Dv7FzYKb6GBe7MYW}-~u2Y;(X-9$YsKKCmozQN;vXtyf*a)~NfR7-s4*G>H7 z*GsfXv`uWEXa{W*9eD1v8SjW~lH2o<%6wg-?#h#RzIG5AnVR-0ABv;{0 zq81O*<~-_;qvf&0I!cetR>_*lF^SsAIy~zo>n9r|8z#3-jz!lbIe=)ya$=%IvSqSK zvQ=`nS35Z`G0AI}Y@gf#`-aKhiLH|@&~!|iJa$TUPTuDYOms^T3?vU)1G)JYLcxjLv$T+o39;U~s zK0W!>Yk++NzG79IzKXTT%qG*nTAv86)Xs7h3b(4lyj40t|Kkq=k0(+7c3M<+n%&Kl_PKif3~+ZG3|gwZTv`$jzr%++mD(=+X}yA zKUH7H-5@0yXq4I?`}Xw9jM)^gPO4FADt_D1MgyYV8gKQeHyeNT8Hdi=V-vOpC!gin zCDoN@7oM{0ntC>A)?HG)QoU32lMSGc*7Z*P>dBV!yQKQC-M~MZ?PuwKuT+E7@u?G1 zC#Ft<6H`Ok9?p7%mPTsLiK(+vXY)Kabso{U8y1no0%Vq+X_^4D$TcH?&~9RS6zX`N7-Ndp%V% zs1?)>>I8LzdO`i5L9i&bbT?CYrN@ zml^j{g7c|+JX{=HLY_f zmf+UlwxADXQ-f*2oxxqfbjl}EdP{IG@!cOh5Ih*n3T6j$uy{ClB$yk_L#jiq8(H5) zD^FoF1?fSSvUNW!*1QtD8oU-P30@E02$oWBdGKbiB6ur!8{e~nmBFguyH%>Q6ZzU!r#E8xThQ5;R{o%^4oDk=Mzr)t&^-Mg zXhg};sf~>CM?u&0$HdXY--g<$^uGA+nm#|MlpYhLh@m-U+YrOCLBI5%piKJYpa~X( z*%S8l`viOV(z>+KJbeP?ztPK$Jbw#@(~h+EOE5BBL3{W)ey_z1LUV?UbYH4~I{dzh*Js6pKF#QhxrU$F=ygL1U`h)a`>8J3$nCFY>&(kB( zeU<(i4-comORu4wb?NWZ>(f7^H>7`L>*w?@>5VKmvfhyXBfW_-FXLwt@IyMtq%)aJ znaqZCBC{!7AyYBqWu&Z3rW&N#PGo9f=Tj~KfeW=}kI$#l(hL-sOzXZE318QRzjJ>uzYjC#qVsA+dHO@}aby#;-@4r)5TB8DK9_im(3o z?TBswtzLq(F+D2t3z1!+d$$wbI%LMPeFZ+G=EThPnHyM6)?;%;=4RH{Q^SnpFO0;- z^z_W#ly|1q-kH{!ONjeHmJiZ;^bHqz$L9ai)5ac;IT7oFwJEHlBaq_VF!Rp2ypt*K zILf0E?|AV`u26&T?bqgAviiIm)<{%5nm|*&1<7yY@*PO?XwA1E<33{phOSb&KnJQnnx8qm(DVU7#Na=;ioKH{Pk^hYWalX|t9s zBP~i@nUPZa?569;Qfe7Vw&h_ZQ`1Y^(znb{Mra#;J(=scp}Ittiy#$rO)TQdVRUkI zQr7(PEl19C_4-%d+2B`rlcus*$WuzfEu)kA-EG&j-)KbH#$&5^Trm~GmS?(Gw(3Ew z58)k0e&LsIq?*S7-kX$%$@EbrlIdgk-mH1_;QO@S2C^;J5~fVnB1xuYZJ#}~T9#7F zNU|*tE18;{<+G)0Qzy!gU}PV~ndvYh+j?}pmVK${N9oD*ak)(I&$p$wG}HU*p^>H3 zGLme|!%8;OwsdXk=Mu_v7?BRpSrjrY15(tSw%Pl8nf|blX?>n9nWOjM+?+mutu39? z=7=v#sb!D)oR$&!@6PFu3Uj&y=ky7=8Mz-< zFsF-qPOmDV zOc&;KacBCSLZ(abJ+k7wA}dpP-@61eU7S~BZx`lt31+%D=k(YT%5>q1OwQ9M=iVce zJC3&WJ+hus6?;LR<`I?}*?ekgOV@Ibbk>knalRXB;|p7lZWZ1mlhOF^ernmUgwE52 zYj4SAaUQ*&E*!o8CFkjdg-n-Vri=61`^^%{bm8bNNAKdy^y`I8m*AW(&hvDG61pNQ zyvi!>E3!I;O#e&f^vxx7^e)Wl;-1sb7c%`XnbR*6GW{>fbj!kd`d^aiuL^Uz1T#G> z_X)>7{D;~t{e)v5ImKfy$kRN+QX`vBIBeA8hWmtdxg^PQ7QCG;w*@NTG_r;GEO@?RIeDPMwf zx;U@Bzb_oUOEA;L`Fi@$63TSp^>lH+%DSP1GF^B*EtxLPE3$bdldo~LUS&eQ*rOxG=Bx&$*_oJa49C6wvHdAhjI(|7%!J5QhTH~y!5BN06P{EQ|N|y~BuffX*Twm!td}neLUXdJyYF)S)cG z)3IYsJkw{WvnV(hE`W)Ya-bb%VN5-K=gC6_2TKmzu%yUiE+!@R+S0 z*6VrdakW4_t)5jcXnC<-zM@{y>u}-9N-YVMn{6#sZ>qPQ(v_60Rx9<>ULJjzwJ99E zox###nq?U%2NiUQQk7H{wyHr5Ra4bgbya=UQ2nnTy+0|;=|7p%suUf)KPzPVPcyyc zNAEAPGyZGV->G#he^5VV%QmXt^_Dq$Zz_?a_ZjNLY&3-{vg|;_R;B0Y?R)lBRw2`| z6laCflj&q3(|>yOEJvODcP#%mFHQ-tHyQ>U22a6<-M9(uEJ6< zb*xs_ro`yPS556p{JGE0*p|&cWvjfmm#Xa*^;D{R-=k(5ul%3N>XL`%#^se}->FvS(P~O{(XM9$d#GE$cQXF%7MXE5T zZN5wQobLTUIj6V$ip(A>_F%RO`5xvI4$bIV4_Sm(Db&d;*)N3dn3r6bdOdp%>B-r#TPe`naTQTjHJXMWp4 zre$1;>*&3ocR(!DbNs^5+ubiq$DHov9TdxStHOEOP4wUREX!8?U%Vna#5**W>H7r7*^SbX=>gsmu}uF|xFT~CT}qDLM|sD@GW}%X=v_)P zeVjKqmg!94=v_)PeS&vVEYrUi=5#5|^vT|^Sf;NooTp1^rcd!sjb*w|;oZ=PEu5!IX{OKe&WUAuM&UeNN;7?)cR?)E%e=z--fpT($2%t%d6&d8{di$cyNNC( z@0?ubjgDpdlR~CTX{N96u8L*){lcrPQkvvmgx$?IDJJn zE^XHQHV?8$az!R<``m0m@)j8DysE+#nI4wnx+1&JdmxtSM+&c}H`^^s#}(NuZ%!=J zjSHVzmeNc=?9Gj3`n^=)=Dk^yNNC(pJmPWo{VLBN#WYNlxF&A z@0nPpFDkqnT1qqhocBU3)1MZO-la6tFM2P-F?2-fOW;Ut2g&Z?;>Oj%)ANy``~CZ!BcGlxBLlw<4D50fjsJ zOKGOx_TG(U`agv$vQnDqRo?1YrpFXAT}m_kf%j1?({B~d)1@@ipLn0eGCiq~=~9~M zFTAf}nSP*f^e&~D{>J+*mg%X5IbBLKz1I6amg&z5bGnpf`UmgFSf(E<%;{2^>7Tug zu}t4l$aE>q^l#pOVwql0$aE>q^d`^a{{)A>@4b5=)1@@i2|pFf^zDT!vQnDqv|lEc z>1u_0LrZC<%lQ>znOxpVWhNleAlvTA=8nZ=HDzGneJZ5 zbpG^4N=rwk_by~QlGFT~r6bcl3z^QJ-biWb$n<`NOhf3tLC`hY^F^QSjbS~@b_ ztB~nPPV;Y;j!Yj^$aMbnMoLRZrVlA(I+D};o24VuhZZuOKfRIC(vj(Yg-l0snt!u& zWcu(zrt_yaQd&APZ8{Ww*Rt?gRwTvQ&5T!;ZyuNT%Cp=V%Cc47tD;M5AcqgJkVh5P zf|X6FEX9-2mGySj7JF#VomFSnWh2k1ESmD(UQ)HlM|ZWiqwA@^Fn`!K|a1j>;y}CtzRn<0SuN z9g(#t>kacy@=x)H>8BlzQ~%V5sk=CJ&p(>!#pLz%RJX+9)Z)~rqZPc=sGFh53 zk!(r0Wpq-1f7>+`_hKym-g2ZK9h0>)7)_Juv+`!zcs`37XXy;OEtxqj`m)|REYI^V z&~_L37de@Z$|lp7=r~-DR=&(1?dY%YFY~YRuh36B9Ah0DTRXbW1pED?na%`Ctx6r0 z$OM^SL2^M-*3tH*OesMgBH5B~%jl&3v9@a}?!{RAy=8rU#5I|2$hOIJBQlv>FuyD`qA2J>*(8gt-T$*cKT_DV@Jm(pTAA1 z3IAxOH!*|Pr-mdpr8cEDCO0N!9gRcEloI42k}V0hj85vGY`do7UW~=xTaMTBz+~-e zwoRt5%{!-!)wNh%`zLc+^kuz?+V2h8Zn8hwnbT3(WO|CWFDmw%{aa&4Z>4VcZ}zA9 zx9g`JjywOgX-Hvfh2#!vlIw&+=zE zb2=)UIX#D3ML!<)=Q{dF{fGU>{YUlF?)dW^n|%H{1-1XtIo*k~@^-<8iB3VMphl`j zO4iXhq>S@ocAkr5OTsN2jCetrrU-aV@|20Sdy8nv5)PG$+?Qkr2Z1VYQ82lh_A^c;H zhUB$La806N&@d>QDw~pZv@t1Te6pDq$(Dp$#$M`QXS=52UZNhibbEy!9h0@U**2Me z_fInYE>`dA47zQYYj4q)^;T&QtF_$+{s&H`qq52LM>-DIqm@7LKXde7_@DS+`CsU# z9gc4t8(TZNUYFY8ADz?d$l+GO$i%wTy40=7Ta&Vmwl8H$3GxuhmV{eIC-qOaT~l!{ z#^UcS|H(OB-Yd-M|D8DMSIcb z*#Zn@)5@M2qN|4LNqRGsKh&=-Lb<+?a|N?a{hVA`UytTQb)e≈m?ZBOLh=N8Z7a zAJwm}!upRn^5c#y|7*?kSqGweIq@`i^gHPx3;i#5^tbA3{!o9CqrchFPj=)R9J#Mk zf1=Un8dz!cIeESl|9g&ploS7n`ZYtYx@zs%o6qCy{-D&ej{mIQ3?9qgMxS#y&G9e) z2P-<>2N`?4l*Mk2erG4%cO3oo&Ul^T=w~?kNzV9<(68je{_XF`JskOXM?TY$dzk%8 zMH}u2&%v;Vp z&FhExnzwvm5%Dm8^V&0y^OiH8^OiHO^OiHe^OiHu^OiH;^OiI3^OiIJ^OkcQ$Xm|w zAa6Oxg}mh)AM%!SoXA_w@gi?I$Bn$@96$1wa~zR!kVm*ba6HLd&T%ELAC511?K#fm zwdZ(~x18fnUOyaP@|HhaL_Ar0)2&FqI4Ha*lU-%Q^1lE$8@`x18f3a8%&TIPBqSFqgC zH*)l!I(pB;)8AbCZ5{mvN58wHpXKQ5JNi~m`?`CP{qSC=eod!-1*iUQ zj{Ya7{$7sWyf+z+M@2`Uas0P)^uIg)TRD391Ufpec5(E59R1FYzN*vyPL5ta4U78U z%F!=#@?FN!KkC$P;^;qd^yMA>YDaHATnNYWCP!b*sW0!@N8{JiDU$yoj=q^wf2O0~ z!O`F6=-WH`ZJhDl+R>X&{lorj@8~NyuWzb5`iGqM8#wyLPWyX0`uCjqzN4czcNv87 zb#nCPbE;5Z+0kF*#HYo`_po;#;I>UT?*Up>gXSH>Nj@u zPdNJ8j^2FQ9Qv>2=y!MOcXaf(JNlN6zM8ZD)^PO8oca|U{Tq(HlB1VTZ=?H93rGK@ zqp#!W7diUv9R10TzNw=(ci@EMx2vPC@AO}bk^H~t_^;~JFYnav;OMz!mq*xsT}NNm z(KmGT!=3gUIriZ^9fSe--{jnDUN)M6YtSR zuX`zrG0ym`H2u%%$2$7&9eqQmy}(@W6@GOa{B)m`<%X+qc<(*%+*JFGnC6a{aIo9pYwN`(;suMX4s#no%XZ(T>ZO^KG)zq zPJgO8@qXg?tK#V2b@Uyb_&;#sKiP@j+?N){ztHiQ)$3AOOgH*m{Ii_+mpSnzobg@m z=s!08^imcnC;r(^{AW1vn|pA=_@8t9W%W7#GmJhL|6NY}OPu)DIsO(q`ac}~R!;oS zIPstA#Bc5_3FCjt@t4)>Qd!(<^tt$FI`LoZ#JASi>!mC%bM$K*ePbv7IZphiIPshN zCBpchcl>4bx>OeT7=14OJG8&>b#L}{u`hYjZ%Ju;rM7qCUf}ro!P(FDb?hH;?2mKC zt&>w<;^4fZm$Ep<@%O0Kg#9*eZG>{djAO3;$xi*pO#Pg`z0>}Ej{l>aalg&+H^9-q z<>)_g@dp&xPL z`Pn(owRiNlJN5fH`tFW?Z%5zQ(Qo6#*Tm6Jcj{m4=)W-f-1zv8zsF7fb9(o4pawB} zFEKA>pObUr`J~ZjWzTo)9a*WhX5Q!OzZI*mR9B~eJx%{|@$TZ}cb(&}m7~AY@&B6R zzp68SZDajcs*KbAJ5K%ej{hee{k~59RYsrd&rGNO%TE1le{&TrPd7&fk>d5^a`8P*y=H#=rBe!wn znNIz7jy%JWYdZCJar9q1@(zxCrz1~upA*fj{Ye} ze!-EybL2ISJl2udJMs^XJkF7?apY?qxxN#BEl2*!*yrY7z1aTgdD-)4ZoZx4_&>{$ zPjTeoG1*JJ;>>Sz>JR5f{QTwluKgxcKNs(|v3Qm0AM@||x5n(f^sC6jBi9?J$Hv3e zdx6*=n|s}xleJf_TeSW-M~|Gcmc&&emmWG^ND`-Jr!S*d=yrX3$Ik?l{efeT`K z+H>Sn9eK1Pw{^}J7iiD6J*7H3$GZ<=`BbWUZ2Xk^-O+zzWZkMP$~pPE&aofn$d5Vo z%f{+^Ubg=^|CM8UrEYQj4R+*v9C@fC&vxX_PJg#|yq9A?A{L+LW$y#Y#WURL z&)trkaQx43^iyN9=ez!|i|LiRDi#mlmUiSL9eIo+uXW@(CO$jfo6XM+j{Vh+{G%gZ z>d5EEWY0TKw`Aw1m%0+Ud+vDS%1T}2>~Ei$@yN!@?}o?pUQ+yRANq4-URTD()APs2 z<4K-@Ts1tNX}MZXR!WX{(f1KE@%9sEJNly?z1vz!-t^iurTdZu7AIrRjJ1HwF6 z**2gqbmrl4G1=4hJ2~}{Z9f9Xzm;?Tk2LY-#VGUmh!Bu=LbeP zzy2q>Mp)0tx&0%nSBiNl^|JnnC3allTXK&4fbpBH;Q7yLIrMv{(Pzu8Uuze}m$l2b z>-lk6sX9)(jU4$w(~hklT*6kru>V%h>Xmv@hZ4qV#zQIQ9h%L@lle<|81F*uDXf2& zmObB;Yv+{YS2V8Ra%v0+>sdLMze~|akMEA` z$^6_djLXV44t*WPbx+RUm1rW@L8&W{yG8U_+13xlp6f7M-^x~>6#KTJ-pW>=mj0a> z>RmY_`qRVyyRx=F*{P3g{U>ESIKSEWtZenE(QKU->a85ppW^6Uc|_Qru8(Zn3&j7~ zq29_d{W*?4A}21Rek4Dxto@zq)JKl_KhM!eEYS^ADr$v8B*uIr*d|JNL(Idz7mpOXmn0}O_N4ENm zv_Cr3yK?$!^e2V(R;E-QULf;hV5r|rmiqle|3Ox^?I*{In^5n{sY}rA9{P9XGBUp| z4C}kHZtuvj{${fHKQyebuX{pSsUuSud`Z3t4KTDTpyU+e1 zXn*p_8+X|;pzBBhW)X!Q7bPY^Cf!ym6feN zBki3Lsh^dtUZ3A0$73s7y{>u>m}psXJwloKYqWCmzBfUDMqgp_i<2X^YUrB+{W*D_r>Dj zS4Cp)TPU?S7LQWznf}@VR&P4;GDlwO$Zq{H+LLv+c|4Vzc;0aQJ>aA?`iCO6D zg!-(!dArJ`dvc3jte=f=UC~C?-J~z`_njQJjXlo)sB3vBfIs_ z*DZ(bAMCV$gHwN!BTshZTa2uumW3P7X^y_Oliyj6zKPlYbN;S!^oKe1=No-)JWqG} z^M>}6Q>#j*ey*URBbRsNa*piQKie745l;JMo%&@QIpfG_Bj@_>#xvX*kDna-r?h_a z{g&_b5NWR4s+=>@9$minRn8pDgGay|GZD9C%=2nJ@?*o&t2Yo-}k&L60b>hC^5n=&Z?7fdD?{9^@e{JPgsRspqK;ZiYmhrQ~-usI5 ze=6eNE$~kSzRO_G-ZDQa!Jnj;=8FB0o`~9lrwDesh8E z5&D)}*r~W)=fjWxYm2WGkB5Fe)B8Sxf1BXnF7N>&Kbu+Dsklzaw+j7F3;Yj(pWlQP z`1xOJ=~wCjV=tWw|96D2=hFf|WZBn=T&-ie`ke|J^ZBVPp#Rg7KN0zRUEs$A{^4di zzNcWe$j={y{2LZ_oJV!4ZvJTR#?0G2eSA7#Fn`+%`>eC{(cX;6Pp!z$Cq?|-1l~)e zKiQgJQTq}279szVD9>ym&-iC|^vJ??EB|fWU`}{EmqH+%5QD z5%^z1{u;qwF7Rd|{Y8TRg2vuB>zqfvxH+YPde^Zz$sdV$e-in4MeyGh{HUmhCk(`|zPl)zI2-d^NyTj95_S$roVpC{i=$nPZZ z%_6;L1pb1+cZ%{{C~&Kg|3L7!7X04}{!xOzmDR7&*lc0PG3UDILQ$PL5q>`=YU-6N zzF?ODS>}4 za9rRafqx_LuLOQa;I#rDD)52A|34@AuL{0+-nQaFDt|NT|ySs?I`B{WuJvh!y7M9ON)84VrcZ|r-&7xlEd@H*AdNk+z=}d6A=l}M+!HJwE^C8mR z#2PQ0i2Xb`Jp&-*8?ACXkrhJ!-z|A3(o1}5w>p$Xzhm*ux8j23`m&|Zapd#V=UDL_ z=Pp~m@?yeU1kyX)lBZ{Yb$N^JX3s~Q$P1(=nC~lup0uz-pPi2g_RDlEW_{I)??nEh z<-Pt3n4aU%uM(|nIK6o=EikHWoVREsrUDD{jO-w(0;$Z;OF@~zXS5VyV@=jVby z(<+BjmkYn;um1V*X^qPAFQu*${Ij(F;&N5$McLwTnun8y;&7UeQ@ERNdIw6}Zww3k zCu1j_I>n3pP2|I1dd5wRpLV#LUQv9nJ<9%;%0-tSPuhP6i?7s(u-8Wd|F6cLJ-l?K zp8Z6;2Xwu8@jU;#tAzj2e4I2C%hSA^!u|5RNu_J{uu>O^bV+}p{M2^~yiE8L&qI9u z^h}PBe_hDu1^&FdBR$X?5OQ9+viIh`L>qy+l!m8^Gv>6MfmQfS04So zW~;9k_ld5!N%vr%uhR|S$c3gHZUnWX{>#?i=EbKux8UDE@mm7?T`fMS?1- zhjP9BUH|3V)nM``?VrWrRF9N5KYv-FU*7NhS(n6@F9`Yj1pifm-w@?LOxUwo;2FZc zn+p7xrO&BYZRN*_Tx4O|C$R0U?|Y^M=6QS{G=+YT2z$LuVeG?6yPfO)p)+8=tL^;g z`@x`nFSP98M7~2heZEtL`#BxT;oTOWo>R5-EA?lAKN9vkUhpd{zT;dY^j~e|kG}Y7 zu$!OAbNVmej||rNB1zXToC@3SPK8}g>VK?soQQ0vcZz)9WML=rJmq6jpxz9o^K~{2 z`m%Q5IQTwwhn)}oezO1mH9hZQ^L4t_emNt56!tJ!`&qyq^!|cncY0P)V6J!H zeo8GAes23UjY*pC*TY*nKD`4Y{L_TH^`g{mR(X`VMc`WnUMcc%YL%VO9|-xm0LW+$xZX@uhhFDy=Sx@S6-e+<&(B-^0lmW_ z;$nN;Y1JF88;No(5cU1vNMVqi#`ha1V#59MwcG8c z;tq-XnszMubBkdG^^{5ug7?&o7b=)FMTRRYfx>0YMO@zXW; zFLZ9Zl`cK&A@b+?+rNa|BclC1tg)}(-B+Ju-S5*oS|Xpl0#6rsOMz1YZ!WOhH|6(k z{Q9MH6~+DX%YuKJZl8WR`2KM!{hqPP@96u=sq8xXa-1Ge1gO~}oj(iyPlf$n75sYz z|24sH66KyJ`k5mH|8T)SQt^U zTYs&WO62EbwkY2hg?-)?_4=L`A$M7bISzf$n)1pjrd z-?xK1Zk=w8TS~nz^1*%;w9^Ly4~le-6L_sC=Lv%Uj^N*G@tul1rMG8bzVwPtpWdgk z{GXov73G)nhf74hZ?e*%b6YJxa-6G${7Rw!01;oxe?#l@?d|saQIYT4gkN1L(*3jM z`+D5@;_=peQK@f>cqd!sp?8Qye)+w}V7*=_a6;tkIuZY9fzK87xJ>ZR6Z|%d?>Og* z^#37n%#v5?pMrme(Ep*}rv-mgp--;&xb?NCRbNg7_c=N?C-J<{vr72MCW3#Ez*PdD zC-VIT!Ow|ud|vST1b=7C4;*Ju=&u*^l`Ayg_czmT(0o<+Tb+n^j?nufk*@*4zuw|I z72IF$cNTF={tHpxl16ur)_1z&?>K;#1eHV^O-BaDJEi*eO{0 zol0IG*~{l|!gz^?X+Kf;&6%S8?`8QBz4I>Q?-cU&mi=jMNZ|LZ@+$QgfsYpYYeoFm zM0)=e@^OLR5&pWT(D!M9heiCmMgDdW^4nY3sgnKK459BKfo~T2PZIN<7OOs$dQ+6= zPNDC1ftQH*FAM&Nz%L5iCgT52JMe(07?7uhc&TzDrP_jHtig3H~m^-n$BZ zoxqS9@{r#}xAKP3>bU#D9d^ zcmE@DIeI1^8J#^YuDQ=0SCladOU)9qn&PnHkTE7Vir5Frtk(G=?_+(>4>9X3J|53s z#d$6c8IQivWu#YQXDXcikAuULC=NKn)0+@R#Yys$OFBPto$#ak&UJAP$#j*UN2X*ZD&$tF)XKJ0wg9rf>PUAdGnrLt zMY^z@lIlJ=%1Q%h)U;GCfU{6o>T|SRR_*h z`_EMe%~cKbKat6VDc}$ioI-4g2r>fIcB9(7TW>X2W zSt^(9$s`Nuo^FM}eCp)hRCilSB`Axoq!&mAAtNR7*;JdZpG2YOq*Ql}Dy$-XWY)e^ zF3-wXbthF{N2Vu91znL$7s!5O@s1=Lnk7*cpbT-vt3-QB(>+xp zU!a=pWX%QUboI3NQcX~BvXC;7^W-0ylpm6Z!}uX?KsJ}^NUtQv-~#ti@r`4_pA0IF z#a5c&4=8_<1?xlLSw+V1`a|&Q;SOH|3m>UzQGuP9bb;Ho=T*!?t5MM*&Pyd}JS5Y0k-EHjV zB*#$-GKn=qe>NUAu0xn1umd)dy|M@;VtRgitV(nQwa7t9Wqa~&V)+zXnjOP6u^(balSD3+O(hF8G^)s< z#A9J_Fe8W;8XOC}K+)-Y;j+{B7{Sif3lyE{dcte@h8O_CiCv z*5hHq;wEm-Upy)4u^z+k6cYt9Gqry`jJiEB;ssh^I$zCGN%~dOL{(2n=zs3y^(05R zb>;m*bKsu#Riu{3@3tQ5ue`R&e|a;#z&PoSovO2!W;fiBR3_Eo&c@6zqsN+_))T2i zP+mXk{z1KnJNM#Ac|v!2y4&O~Qpd^ncJSmZ-%I_t9xGFM)tAiBjFI|GnnY6zp0n(b z*|ULCQ+V7=6so)TtKPSJ-)f#Fq}ubwd0)Qe44f~+9-Rd*>Hzb zt<+P_=I=Sqi(F)4=xg2T-JDOT7J3D+ie9w8$k}`iyW8m5+Ti}O*he4kQ{R`+i z(5=m5)oM4;deDWS$ANZ&t^oZy==q?7pg#tE2=oQew?IDv-R5><&)q-|1Z@C43iNo; z6lgE#8KCEbUJZIH=sloMfc_rzEzl1@EABA)*a>t`&^pjVLF1rF&;saLpx*(#74#m^ zVbJG5M?lwt{tI+7^LZn+J?O5WdxO@39twIiXd3i1(2GC^L4N`I80br&Z-V|W=+@@3 zRJALp+s<4XL-@gYn?UaceHiq4&_95>oQhD73oMN11cwV70R zC!Hde%H?`;^J^OW)X^tzHo)9vO_Hrl_%Y$(?U{I=>OXSu{dKq;E#AGNONp>V=gO4{ zI_-o`o}y!03ab)*G1Y&gA8q@F_Ei}=QmW9~nrP*d@p8(1O@+>r;A}5kT9}qd)J*TA zBUgHIO@&2E6SKUtQkn{ljg2$uG!#12=#-Q$PlL_~m6l^oizVpvp4PT(Hj&QrAxm_k z9vwNB;v-l1FeZx8Zw!D4qa;&1J(0+-NM;i~y>!r2I@i{lN#+u*bf8Nr*SLhTRZ~X- zSt=s}n+i*o)+QPoVaZ|(_Ye7I;IbN{#)Sb-kVaJ}$F?W&&vmaLb0wCf@^p?G+3e(* zrk-K2S}MA+S)x@RQAfuR_H;Kjx7IW^GOw^a*RvuKbOmg z_`){kw`l&-!Yn#ori;!TE2MO^m7FC$JdDnzOymmPEZXm|Y@%&tGU1+QL+4rX$&!3_ zA_<)13$&&>`5ZKTG9_^ad=8%`mgw!K!+^*GQtce?QlHzAOQme3gFaK2kt5vbQ1-e~ zU2WM_1eKGZGbbVij!GwJQ9%;fRfXl0r%B{+>U^g{_4hcWRi7`EN#GEj1RbJT(MBh0 z(vfG)d9|dS&hF`{R0EIE85I#aXGgWAa%u8$I*5n9FE#M^=JW~m!Izoog`edVay_fm zHyq-;!u*j}nQxqxzScWFXMZZ9B4hCIUq?O`ul`M>vU1=FJ>c|@U_iUu4x?y;S*l?twKa#B;a;mGVqt(^@PBa#c#j0DP4TPc^w=~dS zu|cPwW#}&sk5vyiv1pb7g$#x9j5>}IBZbv1EXwJ$WTOKP{jt`enDJ)CP(fF{VqeUAAoNRThfnzuHJMkeW8f_t!oSSTPkp2%>#qy-n)4|cR@xefB zQp#NZHB`sr+5X6|LlLNK4b@7`Kb6i9iBzgx>9bb_qWjZ9G~3YOBkp-5wZQJVB=cOp z`D~kN1CH)*PAoYKc-VZVNL>fa=gIJOzsm=H+r>D)WT#4#ehbbqnGZaS^G^6{DV#q( z&xfxwf!*_HZUJ6{^J(4z9s!gZkAUojK0;tQDFYsjn)TTM`zeD zZUH_QxF7iYz=Ljl;343Bs88Vd!@zmqxcQ8+x&^oe_%qb-Sbo6e1Fr?%a!bRHtupyP z9XJkr8*mo5Vk;xx4}2u>5b)K&@l%YxH-U$Nzp%B5zZUqrz|m8U{9l1%zz5SoK-zx5 zD}h^p9|s-)-fLSUKLmUV@G$VBz$3uBMvc6pbEo(^6*va`8(=<{im!vVGx8(A=L1J^ z9@68$e0~*Q(d~`=An9s#}vSoNFuPXJc~{|z_>eBdXIz82u+!2Q720}lef06YY|{f;L7 zFz_+J>I{?qdBA)Q7++5U4*~DAlZih9JR6wL3*)O5xaCZPuLAA|eg${{cgpy~VDvu`CP4f6SxKV)1NZ>`hkxG z9t1uOSbfcu_g3H-@Na)>(i65P8 z;%9-s2;2{RBk&sFM}hfVK)&8_`M^8uWAu#xPX&%%XyluKv>a18i8;4JWw z2O0Sx;Ol{hf!_trUSaef8G}6Voxti!!{4d~=>wkwJPiB{FrQD!*WR^8zU3-|&jRiT zeg=3D_!HBN{2Jg4@Cfi@z-xi`s6&3QHu}E>JOcbbz|ld&pIL9@W5DMF$ALct9s*8I zM}B~R39PO$`kWbtKLC6@@DT9bz{9}NnMQssa1uCnt2E4<;M!p5O517vt*c;R72 zJ_~#&@F4K6ha3JH;I9KKoNM|PFrWL%*H-gLzS2KmbWdRSoY6VJ?zy5z1H0#ocDnL7 zXY^EH_q@?>x)|q-eizt1cl36bk8?(!0CvwCeH++4Pqb>j$*+4Z>L*={^HBE%cF#9G znDHh`pT*1NJqno5?%xClRl>_E8dinYqFrU@S*QLOGW-nhi1M}IveEl4l&+z5z zNnk$9m#R+&j98t z2h3*y^K~{bp9##@<-mM4Fke3a<}-r%x*wR&3g+u+U_LXLuQwReJ@gQrh0NEcM;Pp$ zOS?0$dp<3D-L_7@KF^rtsr%K~J#RM&?4G;3Mq?WPsGsEPDf(?o3N_a*0`E(SPodxL^xKbqd(f|% zeh1KRD*XghLwesneP(%fh0cOd6DOB%N5#_BZd)uefdWQn$K+v$5X>0DDhr10}pCz5^q4=%VS}{^_|?R}Xz(k3RX5%JHWJo7hw9_@gh4fg;t`78y6e-;p8< zH>YEb&8@M<#(6TQeL9(d7ArfYZN5=5W;Z|bmF9E}<&&NpAh#=3<$=6fk7o!^t)Yh~ z=qqwGVy63OuRM|N&`%^3CCNzzUDWMf#@T7uN@N?{KxHKwRcUQwXlf z@}zXiwi%5-vP;o-rh52ur8FAwhdHg*JF$khaq>8=CXh#Z60DH!?Ct5*4}}$y^jX#% z&4>Dy&PbSlx;vYYP3qc{g`_f7k6pgCLNbnkIV8g}Um#Z<@EGnA$CNfWu6SbNHSc&~8@)qZ^Gv;^Pu zx&AY;%HocLKYVBBSj?46XV5N)-x<+u4t<8Xt&pIPIMWC58so$Y=6OOUnW44!tZE`l z&_u0ITV+{Le_#ewI`56H9+|tb#kMMj%NMMa<{D}RcU<4A36gIs-Lss0x>$c3ao%19O>U7}AP z#hU9Mljt6VhaR-y5<}0}^CG*fkeK5dL_*?^Z=~?=1Vj9A47uHqUZ0*U8R;7DJy9Xu5AY<3HCfiOz2fWZ;wDi~RYNlD=pIx8$ zEP5-$eC&69lG8~tmt3(vv6&>+x~h=MuTPLurbP()=r|-NVw#!Ro-Dm(;hD#_j=SPJ zBiY`Uq;(>HRag6axNu$mq;ytD3O@*GR-;sQh;*<U`gLoN{P{uIlZS7@RU-5HCmzV)n>`EWDK3zjpkgI z;oULNuCDPl`Q^EE z_eqW89J7kXcH5XCzHerl^zxX#r|9WU;l8420W}3P;iU!d!00tfo2aFA2(Kw6@)>#w zi#~h4yonX{EwQwO&YMHBXH7OtVM@-81FO!~7_)vG)FkHd`*Uo9Ww~T`o<1;6uW?b+ zT_W!Y*LQctCYz;S#$#no1#QK^2tGe6_742jZ*6a~b*Y8!X(21{qgO^)p~k+;L$w*E zfEN3tRji3dQR(?kYgwYG;2V(j5(|1EZc{^^n4{aOt}ebswi;3Kn~e61fNPLyzN?F> zKH&B>NE?G!79Mkw;pnSwlcbDXj zsr25#pmj7eRCM#-`p!%{OHlxiHrB1_dB9&^}Ctm;1V? ztSGI%Cv-RM+)mmTYs-*Pyb1^3@@lVa?&QmKDr4=&?5Q&nDA|z}Ri(E}71FQO(uxw6 zETob2##Wf2*bl~FD3ozbEvB}(#f08gaPMYWmRpyC(lk(zi*0DLEyWT^+l)Z2? zrZ!W;{fgdxE-pohp*P$^!mJ=So=R9DFklpCVzhpQj5_um+~N!xA2d6<)OAq%w&w*_ zrOxzfA=vjemv}jwU%&QOU7Oit@MvF+tH*xPpE_zkvS69lx&wN7dLkG1x>GBf7H~fi zAJfWSq1Y~scH3Uh9HltEXV;LnJ!a<#nI>8FVGYV=UKchdH`h_$>CImB9T7h#kXVuC zlNH?8+Y_C=Ntz`UQYpFIP6L@)u2@E^6|uz9>4_!u3)XENA2UGD2bc+=I|R8sa_NH* zxbb>(W2!W3OdoA3K?MrT+sU8&xw}1l)bSG!O-ndyi>YDN6h8y8%xyr6sc8lZHKvZm zTj?A}r)sTz!A4_BOfFQ8BTaU>(O0j=G8}|!VYALiljC&e==likXXHjrt@=R`^I*w% zN?Fw7x{=2^@PxFQQCum!OaVU_CGL7|AI+M>7+L`jPwr;4b%$8$hFxyWPiXt8$l%7W z+;WfaZg;dBPa3(YOQs %42yp;C9HI+d~9myWMsAzoE-rni9`sT*vF&>K3w&8@fg z*w#DKDs2&}x4>XS9X#Cu)Bm^?qCM7-TfxATX5na>N4ZI=cl+j$_E=h_J%KV_SK_u; z+)QoU8sJ-My9NTIcj@d~maf&7HVr4t$Qw1s-e@NJtkQW6Gxa#`(n~8AGb&Sw<_5mr z8l~5F17A9cVxJy|OK+%0hfUWvunuVsG``cF$cVi2Pv<-N)90dzM`?S7R*BbuCgd{m zJ{&Wf3DvEqvx&-#bqh@J+!@7$hD{!{0}p~g=h#}fm$xyjJCv@Fu*PTKwjfg_2P#`b z>68Lb7>3=?$hl)_MWH@Kvl&{Kvzv9;WN*A`ixwcJZ`cAv>2#?J@$ZSbZMpZe<9mqZ9UH;J?Z$2#q-0wc?l4M*@sJUfJFKy9gnWn0rN`E92IrtOGvbA4 zzM}}67)^B1V>J7ig)+X!(CZ;HX;_^ZoRllCNy?(H{;zsmRdt8ofEqW zVzNB$<(1O<$FlBXEhbI0+w>-}8>hn@(`rrW;)_;i>^sJVoN;OmUCE#XH{xusR1(}T zZ{QNpI15=cez|kGkEdJOu&H_Q`9tG{uAY!h&3gTQsh9}T;>L;`o!rV#B=EXwHq)31 z)Z-}X_;Ds{3A8(<7iL?REaY0U6w}gYqq~yp+R+lAl-pC5Hd_Jb%zbEmy#?i{UCEQo zV;1%^ZADt?PH$Wz*l(&emafa+t1){CPe^-Ir zXIkt9eD}FZGew~{`}1AAb(Kx#@+o=^xiyp0@B0^pQn#7aoQ`ygP97&jk71?T=rm_O z9>5Pwb<;C^2&H2HT6;2dzCa<#?{yi)2!l5LTB|t|J40(3>15tZh>jjeboJ1Vk&ah% zt~4D=PEV|s;Ms{}bLp;RZWSGuuAi`LH?d@q4K@#G83~i0eCp(0ep5NGK09w7_9~5~ zVnrb{i$ZFOh3e~zr0RWh=DnI0lHBP5L( z(~HxX5t6@I#pS52E!J0CSDcsHx-hxovenkjBG)K7t9&Y-VbGiGgp(UL=}vaRk&GJ~ F{C|9yKVkp? literal 0 HcmV?d00001 From 14daf99a47140098f4e59d17257cbc5b94c4a4f4 Mon Sep 17 00:00:00 2001 From: Clark Wang <107419732+OEG-Clark@users.noreply.github.com> Date: Mon, 6 Mar 2023 16:28:26 +0100 Subject: [PATCH 2/5] Add files via upload --- test/test_inspect4py.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/test_inspect4py.py b/test/test_inspect4py.py index 72376f4..641b1a5 100644 --- a/test/test_inspect4py.py +++ b/test/test_inspect4py.py @@ -481,7 +481,7 @@ def test_data_flow(self): output_dir = test_out_path + os.path.sep + "output_dir" control_flow = False abstract_syntax_tree = False - source_code = True + source_code = False data_flow = True path_to_languages = str(Path(__file__).parent.parent / "inspect4py" / "resources") if sys.platform.startswith("win") or sys.platform.startswith("cygwin"): From 9c090f081ac3e597e086777bf765edf80211704e Mon Sep 17 00:00:00 2001 From: Clark Wang <107419732+OEG-Clark@users.noreply.github.com> Date: Mon, 6 Mar 2023 16:31:41 +0100 Subject: [PATCH 3/5] Add files via upload --- README.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/README.md b/README.md index a5da5a6..c3341e5 100644 --- a/README.md +++ b/README.md @@ -70,6 +70,12 @@ Make sure you have tree-sitter installed, C complier is needed, more [info](http ``` pip install tree-sitter ``` +Note that if the ".so" file is not working properly, it is recommended that run the following commeds to generate a so file for your OS: +``` +git clone https://github.com/tree-sitter/tree-sitter-python + +python inspect4py/build.py +``` Make sure you have graphviz installed: From 71739bfbf58365af469b9c37295031d7ef753535 Mon Sep 17 00:00:00 2001 From: Daniel Garijo Date: Mon, 6 Mar 2023 18:56:37 +0100 Subject: [PATCH 4/5] fixing remaining test and robustness of the app --- inspect4py/cli.py | 28 +++++++++++++++------------- test/test_inspect4py.py | 4 +++- 2 files changed, 18 insertions(+), 14 deletions(-) diff --git a/inspect4py/cli.py b/inspect4py/cli.py index c4bc479..d3215b5 100644 --- a/inspect4py/cli.py +++ b/inspect4py/cli.py @@ -1255,24 +1255,26 @@ def create_output_dirs(output_dir, control_flow): help="extract metadata of the target repository using Github API. (requires repository to have the .git folder)") @click.option('-df', '--data_flow', type=bool, is_flag=True, help="extract data flow graph of every function in the target repository") - def main(input_path, output_dir, ignore_dir_pattern, ignore_file_pattern, requirements, html_output, call_list, control_flow, directory_tree, software_invocation, abstract_syntax_tree, source_code, license_detection, readme, metadata, data_flow, symbol_table): if data_flow: - if symbol_table == "my_language.so": # default option - path_to_languages = str(Path(__file__).parent / "resources") - if sys.platform.startswith("win") or sys.platform.startswith("cygwin"): - language = Language(path_to_languages + os.path.sep + "python_win.so", "python") - elif sys.platform.startswith("darwin"): - language = Language(path_to_languages + os.path.sep + "python_mac.so", "python") + try: + if symbol_table == "my_language.so": # default option + path_to_languages = str(Path(__file__).parent / "resources") + if sys.platform.startswith("win") or sys.platform.startswith("cygwin"): + language = Language(path_to_languages + os.path.sep + "python_win.so", "python") + elif sys.platform.startswith("darwin"): + language = Language(path_to_languages + os.path.sep + "python_mac.so", "python") + else: + language = Language(path_to_languages + os.path.sep + "python_unix.so", "python") else: - language = Language(path_to_languages + os.path.sep + "python_unix.so", "python") - else: - language = Language(symbol_table, "python") - parser = Parser() - parser.set_language(language) - parser = [parser, DFG_python] + language = Language(symbol_table, "python") + parser = Parser() + parser.set_language(language) + parser = [parser, DFG_python] + except Exception as e: + print("Problem loading language file " + str(e)) else: parser = [] diff --git a/test/test_inspect4py.py b/test/test_inspect4py.py index 641b1a5..a14ad9d 100644 --- a/test/test_inspect4py.py +++ b/test/test_inspect4py.py @@ -486,7 +486,9 @@ def test_data_flow(self): path_to_languages = str(Path(__file__).parent.parent / "inspect4py" / "resources") if sys.platform.startswith("win") or sys.platform.startswith("cygwin"): language = Language(path_to_languages + os.path.sep + "python_win.so", "python") - else: # mac and unix should be compatible + elif sys.platform.startswith("darwin"): + language = Language(path_to_languages + os.path.sep + "python_mac.so", "python") + else: # unix should be compatible language = Language(path_to_languages + os.path.sep + "python_unix.so", "python") parser = Parser() parser.set_language(language) From 33054f558d092b1a554f4490b410d4d79cfb3d19 Mon Sep 17 00:00:00 2001 From: Daniel Garijo Date: Mon, 6 Mar 2023 18:57:04 +0100 Subject: [PATCH 5/5] preparing next release --- inspect4py/__init__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/inspect4py/__init__.py b/inspect4py/__init__.py index 2792152..9123cf0 100644 --- a/inspect4py/__init__.py +++ b/inspect4py/__init__.py @@ -1 +1 @@ -__version__ = '0.0.7' +__version__ = '0.0.8'