From f3aed5e32687d8fc18fe4e43e2eaf9c49a320c56 Mon Sep 17 00:00:00 2001 From: Stewie Date: Sun, 20 Mar 2022 10:10:58 -0400 Subject: [PATCH] fixing 11181.pak3 and adding preparing Menu File function --- TOR_Test.py | 6 ++-- ToolsTOR.py | 4 +++ ToolsTales.py | 42 ++++++++++++++++---------- __pycache__/ToolsTOR.cpython-38.pyc | Bin 9685 -> 9774 bytes __pycache__/ToolsTales.cpython-38.pyc | Bin 22303 -> 22504 bytes 5 files changed, 34 insertions(+), 18 deletions(-) diff --git a/TOR_Test.py b/TOR_Test.py index 0eed23f..9a8f74f 100644 --- a/TOR_Test.py +++ b/TOR_Test.py @@ -12,7 +12,7 @@ import lxml.etree as etree tool = ToolsTOR.ToolsTOR("TBL_All.json") -tool.extract_All_Menu() +tool.extract_Main_Archive() @@ -29,4 +29,6 @@ tool.pack_Main_Archive() files = os.listdir("abcde_lauren") for file in files: - tool.extract_abcde_text("abcde_lauren/{}".format(file)) \ No newline at end of file + tool.extract_abcde_text("abcde_lauren/{}".format(file)) + + diff --git a/ToolsTOR.py b/ToolsTOR.py index 47134e1..6ec56b2 100644 --- a/ToolsTOR.py +++ b/ToolsTOR.py @@ -341,6 +341,10 @@ class ToolsTOR(ToolsTales): print("Writing file %05d/%05d..." % (i, total_files)) f.close() + #Copy File 11181 + shutil.copy( self.datPathExtract+"BIN/11181.bin", self.datPathExtract+"PAK3/11181.pak3") + os.remove( self.datPathExtract+"BIN/11181.bin") + def pack_Main_Archive(self): sectors = [0] remainders = [] diff --git a/ToolsTales.py b/ToolsTales.py index 93fb7a7..46db661 100644 --- a/ToolsTales.py +++ b/ToolsTales.py @@ -295,19 +295,6 @@ class ToolsTales: # Didn't match anything return "bin" - - def is_compressed(self, data): - if len(data) < 0x09: - return False - - expected_size = struct.unpack("$+FxMY#Jb@ z`ebWvH~m}ONtGq3#Uc411Byf$7#LPE6@h$pi=!kXHM6KVITh+ZkRHj&8@QbrZ%zKf z9b{<^5^x8(h9fmErMNt^B%{azBxVUBtU!bwNS38IH8s0PAH+8R5r&iNdBh}diKSMQ z6eT8?#0Qt;7gfdwj2jaq?*%X(w5b7I_e%z`($uDFk*~ksU|? z9E2=I`S~TcxQk1QGV{`l{qj>%i)=xXZXm)QY>Wo4s?aU|0;mP?`DtmzsU^22$MZ@s z-kMy&t0Z-cy&^XU6af&Q`h&EBg1Ja>^A_GKjQ)_|0*QhHGK7JFp^78I*GIuhp}Mw6 z2V@DWYhFoFNX$zuhQ!k3>-=gdpr9#&ga=rEK~ZL2 zNfF53Md0uQhh!*3DzT_I^%i@2Y6-}%MNuF@mdujWqFXE_sW~~fSkf}{Qi>u#!rUdP z6(u40PM|0)vYMPIAYTuP%c1~~<3WLTOCT?`JRYP98VOqLZ?hGY>);@<2nIFm_Jn1O-e7juzzQjt2y;o$HG2fa3k3kvWeXlmvaF{}qA zaZRaPY{eO+C7C(5Sd#M#DvLxwo)9bsrLBO(k_^Y9B^e`oyB5#L6OTkf05SXaEr=Ai@+xn1P5%AR?+Bq=z>-KewPLwYWGQlxK_LK{Cc5 z0-O(;K}tB%Q%lMcb4pV+g^?05D6!t+$V-X`ML_W_J`fdOoLQ9`pOTqeQse|OqZgzd zTr_}XZgGO_a03PRE!N^ptE$xETa5WdX&_bnAgOqmV^UL!TtT9OVA0Y%BymuRxHY*< zR8at&Q^27QCWIz07oE>|V6(f}bjFAhh6U0!3|Yb{eBumXnqQn@Arm7*iRc0uFrQDH zVIdC$= zr6iU(W#;)q%e-5Y>m=mr!66Td%Uc{i{^9XXo*}`vI6XYwJ-|$G<|zV4KR7Po8L$W* ztG9U5Q%mAgD@s!HiZk=`API@Jw4flhs0g(%DgwuCCCG8C$vOGOsYNpw>OrM?QEF~} zS*oTWB$`3tdy4~_35suVm*kfu=0Ktw9KE+Vi&AqFGxI28N``jj|z(x|6TThFO4QG?~%DN0X^Y3=~8 z&jQsv`GA~+B-l!@QZNCxvS9K@ImvoZa;oAsG%zwTR|pRA4~i`E0U13FM1a!UOC}I& z3IhYfO9v3E3`DE|5tBg#s5H@3gjgpB5&*{_C{HzUP1+21S|(x0!}O7ga=M( zvq55@bX_!K@@sj?cu=8Uv<@T)O1qGX0aR*eN`Mp5E%xHn&P;3J8DW+zE+z1X% zQ1z(E3=W$jWss-}hya@iCcv%{ne3n}!nk3wvT~y8Ly$Zo6(baJW#$#97L~+1=H%>{ zyi(b}9uy0=cmn)A{X$%Wg5zENT#7b;G_MB{Ye2+t5OE$vTmTVZSAlBoTLQ(|nI)hM z2lae0B-wC-RH=eOn-x^G6c>S7O+|_zQE(Lk_R#?l_aOs=Hbc=P5c4reJ#Tz`a!z7# zadK)-PJBE#&>;jrNQuzoMJg7ImXmL*Xb6ByGH`+d7gDDu3#+OtgWC_>t~sf>sd*(K rMX9N`m|R0{aphFx=IEt@OHjd delta 2851 zcmZ4IbJd$Kl$V!_fq{Xc!rm-tpW{Y8D`v*1$)3#mj8T&-nKK!=CO>BWz|GCTz)-{w zA_OMiV+mr6nrz5w#wav7gH?u+dvYtQ0ykJv46I`F2G%|%M()Y>91>dc3=9mn*fLTR zQ&Nkf*z=OyGILUkqd3z*RB&ch>Mh31TP!JwC5cg!8#&|zz@~r+0gy(q$&8$0n~!p^ zGD$^o1}CTHrG}(dltl6P7iFer<|XF%CFZ6^O@6|qDWCv$wsB^ekPq9&i_k#>>-X^{aDvJ4CinnGZ=6 zz(L4Tl%HP`#a&!dl$n=a?3bUCT4V*1bN~@HU}H3RRfVGX3!oOn=clC=rB+#rP{k49>!V<$P+eQ3 z3GyVXYhFoFWfU*e8~$KBZm|WIB$kvGNAY+i79{4S7DHlb@^yZ-6j0C#cfkV;@B9&NFoO+8rJ+%bn*CKzAAWLRRYSAs0lGL1>TP$grc_~G{Air{# zq*j!K)S?iO z09Pu=L-Bd}DXF*EiXqIyW^o3D$CU<3cu+PtO@V_%?iL?3OqLZ?hGY>);@<2nIFm_Jkb!~W7juzzQjrSC;o$HG2fYS}3kvWeXlmvaF{}qA zaZRaPY{eO+C7C(5Sd#M#DvN|bo)9bsrLBO(k_^Y9B^e`oyB5#L6NIkf0@q$N&+BAi@Yl7=wsn5aC}B(!-mapIcCrT3j3t%Ckj5AQ=M? z0nP{6ASE2>sU>BJIi;zZ!bpi2lvtxU@{-~~5l|e(2cqJOGpkbLQ!_MV}VA0Y%BymuRh?-m` zswe=?Dd5lt69SW$i_T}9vDsa0I-_3-LokCTpI;Tfo}Ru-Vo9QYh<}j2i(^QU6UbfQ zhycY)6^p8YX-Y^DD0-@R^i_-XRg3jhQ}k4et2kl2;v%idArcx|n$krTApfux<$_b2 z1jr;%tlZ*DNi1>7%!8F-QIn5J$kl^G5)?PLIDGuWV|@usJi#HUu2q~;Z8=I22Y25V_SL26MEYT;4@j;kb)<5-h(@{3b71&bir z2NXoNIH2jcIEuR@za%jS5@X;Py2V+PnwyxJmy%j^i?z5Uv8be|6=VzxC?bpOKuk#V z;m(VKW}||{l8h*>w0xPIl++?n0=~tTUs_U7S^_De zpfSZQCCBJDSxYK#bG?)qvnohblMzyWfJ*WraJ2&xEdm#3;tUK7ag%S!hA?VP)|U&j z0Lf@FqlJPdQ;`TLN^(HOEn^Y5=mjZ67?C-7ubh9q3rL;?q4^d^aY0TdsARdtk(5}R z3i2wrK0$Ud$Y78wau^vHidh&K7}yw?7+(JW|Np-x<1Oaw)Jkw^TE%T>U}R#h5FFwk z6j|g9(o_y2K#A@p6NpvHP|v{d5)>^(@gROPh$sOOpt3?!5#lUqkN`M7K{>`LGtV!z z98v&)eKj2vFD&JWIoaSu0nW6y*uYVda*M4vzo;ZN1rnH9AeBr-ppq~(u_!qsia)I0 z(Z|yz-p$j;HQvwB*Yy@_dQpC9K@m95H-YR0Cnj*p1SiEBkQgZ87gd4`<4(;1pyF1x?1N$OrwvG!bM~Kgc=k$)!a_pb~!) zNC=c*i$H;Uiz&@0iW8Jv<4YnC4S3J(EAAySN1 zf!qiVV^Afj$qWvhA_b7BB8UJR0VY7^+!6u1#xW-c+R^}3^u=o?*C;2dt_3MaWDp`&+#S`G~=@;S}6ddpB=Tg)K(%cCm+Cjt|5V06UECCT< zM}n&JD1qYa%o0!*hK5BkB(;IsmPJaSz-I;3H^oJurc{v}NH4fv0ef&Nh`W}7L7Smy z9f-Leq@FiEJ~=0`xHvgACnr8090w4B7oa(28NFY=1CJ9HuCW?GNw(IW!%6RHu)T5CUbBap~W0Yn} z#AGKXE1r~)7KSLpl+a)X&B)CSOeRd+x0texZZVY^tz^74c|Xe{>03-?hASCwv1b+M z=LIE}7x6MMFcb-Z2*JrUtjoChK};|qFj<$aQ69_$6B2M4Fc+*xdh%H|Ujr~7Okh>R zz`&rvz`#(DNX$;o z&n?I=PA#fp(k)%dc#Ao?JVleENO7_dmmQ=2)UM1jUvnSCPtO z177U_F_2ca(!7Gisko}h6vSXmzQvqhT2d4P z=HwJff$RqdEtnA4T*F_*$e1wsyMSU;0!YpbLWy;OD#gtocizOqo1VZNAV#>%tadMGh3{!m`0|UcnP#7^5<%29>Dgtqe zz&0Z6P6Rn1iGhLP<-h;`|NCij6@dbW6 z1#*05UP*pY2FMBlM3@u>fsDAtkAwM;L6f~G3?u@I?_2!ECHX~_@t|mm zPtH$Ch4?4}Bp(VQK0^0&qU~n)nFnGE;2WO^a`reuxC#hL~izzAPGe|hZ!__k= z*x9wH3*=%@bQLo*FfjPKdE8>oP0IkA?i=jv1`6CHFwfP=o#7U9YEn9wmzY;ze2WD{ zg1N44ZmzdjQq$5>i$H-^%*4RJuvh&SbADOQOEv}uhD-()P+qFH@yujlVPF8Klv^w% zxy9MHn3FQ|G+A!(q^Fj|7bIrKmsA#{7J*X+IH7=oRg(n~@3+`8i$Uscu@q-kp~N02 zZh1kbfYVZOW`5oWP$2k#>I_B!MiwRk#>wxcT{fG_+-Izh2YGuXhyY~{uzQNY;Q~&- zw^#}ivkkzcA(%8SS_m>8By3bP1I$b;NX*t`L33$QIw+a)AUT&Svp7C6Co?@SHRTp7 zs7Ncm#hsQZQ&e0MpPE-vRC!CFATir8J|i_TCABCX-Tovm_{}xl=1jiV~Ac z;++$d3Mao+NcI5LXGK;ZIga9joXnEcijrF#Nr}a&Ak&~V99SORC~*1!#RAx(vduFT zQy4u#h5ap-kkpD2aJn@xD(V0k&16tf1PZxZtghgQ;sUAg2bbu#I6YD;!V+^zQ;TnL zcqJAj=A{;=7MV?URW`E#RX{}u2ePN9mVjcl2vjuOVofb6N=?1R?wXUD3yOYFp>m5k zBekN)cJgLrRW?xhQWQD)p0ap7xR&OGyR|3^f}uC^az!68!f;syNd!^AdAF38x4ge4q*m;!bca#hesh zdW$(JKIaxwlF==WlEidyx&-C4^!S3rqQu-=Tp+>X)I_JE%*_ap@ zib1si8v_#q3&Sr)t0Hj83yyeDoEL#p#5a)fp!g}O0TrVBw^+e>8(hNPVk%0##qQx6 z5g+2{ev36Xu_QU89uhm?cmb7ox44}BeSQ7?KuU_VL56WMGB6bBfLOX9LJLH+gUsdw z$5;_Khp?4`3XS4hd|=yrGV@ZMic%A^Z!zU1-Qogg2RBe0LW*COoXot`TU_9fwn>lA zNUgZVSbU2WT>2G(qO?esk%8eBQ?d~x48TDI3W!_0ph60ivA{-tntV-vdI%^HYcdvT zGcqv13&t#HX%Y`oe~TZiIzFu^KNl>3ZmK|WYGP4xMtovU4!Ha*R-Sy&U@PO9$>oMd zjJGDQGL#d)2J-bS5Wxxx4v?QgE#t}e4YjR6oLgL=f~YbcTsUwQmn4>y7K0Nk*zI5f z>;azSqSVBa)Oc`VsIl3_h=oxNBnyjtmdujWTr~F;fl`m%4T(+1$x$ZqfuO?Z z7DsVvGN_+WTx1H04jxcfBpxbOqye(A7Zf01BS3B{as-Kiy~z*treA(aYJ7yRkHzLw zCMt}^U{xSuCA7R@&CE+lttfH;Ie-zIk|2Hu83Oip;ABO!ay^h1O~xWn&_g{APDm>m zi@+`bNh3TSI{BEHA0k^7d4UbT#RGMDJjfepwnTx#3e-OVT6`bg9 zv4j1ZT6~K&Ex$A` zGT!3LP0cF>r`h;|#1d$+0}s5M$vW1XR6*)tp@v8&AW=k^6-{Qgi8P7+{7-QobH z-FVkLX!kZ2Bmvd|Cg2tnPwumk7P-X%>Y&E^rIr^(GBPk!F&AkkO-?iuoqWkgr``?} zimZ-Bx%r?@a}hkjfII++1ym!OK~VuK<^&juY(Z9^0ckSiid- z1hKA7US+FU4{myZ+8ITKpuEBk>g6ToM1w*^0Mu3kr4(rIw)hsbk&-_-$WB5Ood5WsDYiHs+z-Arx!z97 z1F4ko%uG~{k^_mY=4;1US1TyoAQ;SOCeL?9C6z%DgtL+bIrGk?q#D8EN zU;?az7ox*4CkLcw-{f?M5<`&kB2eIKG8Tac7Qo8E1XvG0L{BiNhX}Id&}1IRRLy#j zD;huqSS6SME9ZkKcg)EF>o_`jmSYN0s!^z$hT#+yrHG*tt1`#bF z0-J@La0|~&-s3cp@z!KN=WsVrZ&8!I2<$m{)3pd(R49Ye1bX`&X(R>g7ce0(`L(kY z zUmQ>r3^EZ^qTXT!XQ?6ykbozM0Eb^Th?N5(z!{J;H76BXI6nc|_7p^bgSQK$MqqM- zhdASt%`-d>F!F)AKj4}J+(e(8XeKqe!An^k)Ku4GgtU(#6%p7)kdhA`x;m3jd3kVx z)Pj2jlLOeLCYyRID#NS$A`g&-V5`9dT&LsYN^eJHuo##C*-_*TR}5F@Jo&D-J!Ykd zsDr@08#HIRfFd1MEo$->g@F7Iic_RUKd7q?DdRw643MF`I*>YWoPlFB62t|?e5xit zB&xu5B(zlH0GEQGVk#fxY;XsSCod_!AhjqyDJMTU`xZ-aNooPOdW05|;DV16R1wFQ zq!yRl;>j$IPfARQPtGsRE4ekvS1kIL2v}=8yo!Z*4>ZtsizhulKP4Vo8H0VS$qb1U zQ2kvr1>_1)xZM%~4TBUHq$X!3=DHP`9iqR6 zt%g~gVIdPELke3Bb2eL1O%1~W4v1(9dkV(_mKx?17Dx(bLm+Ni0d!uddYx6~y{}spa~&mtX2Ie9G5^(JKMu z1yD1k2%KZ%KwNOUCmvKkiUdH0m*XKL6!F0&iA5#1c>I#$15%6Pogm3E7?d3C7$pehugJA(f3gZIC8ip*Ug^UXs85wFAvY1^MVzp`+OIT8v7BJR;^T z)*7g)1#A#jp#(UIv-njBV@bwUta^HS)wSTprzU%m2`FVk)2to?1Ei$~t}<4DoV*EC z2|}iCiok&dE;qr1z~qO4qM{w3QV%p5!oV!V$i*bY%*9kCJy}p(c(Ou}hZfF82tPCw zK&=o^yJGs}NkK{0IF*Y)mB;%gX6D5^7A0q7mZi=DSq&QXWniq52V3bB>>dbdm)sJ9 z>Hukgs=tM7DX6hjv<2ivY)uv}$XttiVs7fZ$+v<7w7{k^7PaEizyX>y04ZNSIV40` z6jX?So6?$$A)u}pDCZkZ?g>%lQ3RPF4kobbQejp+iM1Ti~Kyw#Gpn-;>DIl@+AObW(TXYD- zItC)Zt@dXi7HDV&JOogr2M%&jm$nF;O~4tZ4&*#=!>$R$LbUF{-fstqO#~6(%mz;; zMVmol;2_-!V(kDCJ3$0ExgZEoHYfsBl)?-Q3{1rllW&HqFa(28I(UW=R?K8~OMc8RI6)GHzfDnS72hlRGrUImM-gF-kKf zY_b!R6-zLKX87g~CKD#^D5h+qD5f%_m5fo7kFzY2j$$e^T*(;4o>iQm7nE3D#Ld9K zP{a!&_$IfoF5~6_F~J1yWK*_Ac`y@92*YK-T(BOo$yeEY&A@yxfmICy1A_(w14A(j z0|Nsa0~LJ0h^fg6c2toi z$Tw_B@gOUsI8qWzAS~{b)Z&uNyhM=g$gZAT$-T|n4CGC75Frb8K~ZXAiY7b6JPVL8 z$j~Ay5X%}wfP(TCOG;u%BC=5+8T-jqJS)T;Kuksk28LfuHa;&w(WS{%BsgA#Qu9)Zgg_#oP$)_VxrGxH$nlwZ zCHX~>AS(nAVNw(XG9rq}BRq;ZIk5oj_M#Y&_Gpk!mgL-&;-VBVGc6}Ey(kqVl?LXQ z6qgi4v6K{-um>_h%Kc$JWYA46s4I!Om`=&`kpKT%Ft*qL@>Y(!spMyaMAW77z*My1Kc! zMzN%(rKJ{uLamsIfq`MKdK7bhSTQ6x->+wSjbLvfSbUsVhj#jxVV!NJVoV zv`i=h<>V-~%;NZh#OzxvAcqxof&2%~xnKfR0^i~l2AKu7^8={R_nX`#<-hs7)I-Ml z0FahO5CKXIkSqrZn-Flui()BA%r*d%hG5dTs2-f=3lg)9iYmd(#Dc_ZP4qAqqx&DWr~VR;#2cViYlW73KFvo<1J}TcEChQLOn`h_)Xl)aU_N=d?0=P_W{{`aK}08r0ILBL zV1=NdDx9n(pBWa#mReDen3tl-R0J>fHJQOKkK#>Egj5{yd5O8HQM`Gn<>1-_%tg-X zphAZ`wW6dbF}Wn(IWehj@=N(-4^S0ZWC)VuC@#p!EJ>{>xy6x`Seyzn4O(e}<K2poD#k)fF6$Tp$(x;F=v!3Hs$s zP}MOXL_7cyuR*c_lNHpZRX}AHxI`>!1qn8Qq}f3%a29C+v4SVZt4pwf%M+K$wdw|p zb(7brHyMK(AmA9(WG(`=C2uh%7L|e2gB=Sdz%J&rNl(p7ttcq6`!zXP!^#v?vS|tz zDT0)OOL|bKgWCYNnDdKLZZQ{^6y4(RPOWq;D#|Z{Rtu9aY3S60>$NzLzPX^FW68<~ zRmD}A1)8GZ*nl*rf>IMxAOXAtlu$U+GV>C1K&hh$94MgL4B}336~~+uUmC@n6rU5t zlw=geQIePrPJE!!E;Xq4B<72jgWL!X0WbjyhN5{43=A7K@7H|8#I_M6eQ5GV9cwMHJc!U_0taFgQ*j13 zP$2|Zrx*hR0}s<=F{Lm=7V~+J%`I7>YqP2pah@*Rv3P|5s5TObp)IfwXh{yvO!v~I>B2aRVVk-p|0>x2$V1s=!^HQCPQWLYI znDUaMxWGx<4HR9F(vBr3GcPrY3lgZ-@foQVw-}3~SizM|5h(VGu7EZ@73SRIAwCNfe~ZW;azSqSVBa)Oc{=X1dwIkcCkVBnyq_TP&F+ zskvzGD*`1H@5xz4oyjjimV?x?eb zjR3i+=pBg5J9(qA2&3!fW5z0s#$aI(u@YLAux93^q*fHY1=+|5PC7*(X@s-mCd-w&~H8Np!<^(i>ztYj<#TM3dzXi1uU$keYMECwdNf(^gL19fUV$lYkRq=Nzn)Nujj z8*np0ldb4IC}=oS^Gb75ixNvxZ?P2T7nR&%0c*bi@*245$^{9hpCAE{V{UPQ(qwTx z*qU2h;8F?9j^ZxO%PcHS1t+;EcCg1&i*K=}<(KBAMDf8oJn>*YA_g^?A$|l~01jJl z!VxS=&CM@MjZY~p$jMAjEJ-bn0Qmvbxn*EtVdU7%Xa1f^8|?o#3=9k_8E^6BrskD` z({p@5VhObL0ht9(PnDB3tTw5F)WZT8k%mB`h~TZC{NF0lh=q}X0US`bI6&z--Zc-} zJ7xt*fOUWgxCIT9yR4;oqBuaE+<3p#@*>8`8?8N4Kvh%}t7B1aKB%9a3<^cCCqa&e zL=vho6F|O%m2d(KMXx|Qrhte?AmToV0M&iqMnlm<5La(zK5^9K zYFjA}q?Q>d=AyWuisCa5Ktwl6URDK7#AswQI*cu)bX987@q@I&+jgL;RcG;w}1heN8S z49Hel5CK*RCcw)1Aj%zca=@6!Fewuf6Oq-6lNnr&7Qs_4)PN}V)ST4Z z)Vz|Fj73l3X2FdSWkzaRh%gj^^Bg#*fioF6_e}+Lm5ZiwSzlaV^be#5RKVO~1!u6LOCW(SAOakI0w5a& zK?FEEa;D~_LJQ;-AT=vN1UQUUL25vOb4v&siSda^$tjT1{Uay_?LgzMOahET%q)yh zxOuhvN=9x_PX}Cd76nd@_jFJPbxk!Hi@?PRq^<(H87&$uCm-|lU<0Ww(wkhvCOg^C zOHmnK{}+9RyA13+kjuca?>D*B%TXCD1|~oj6n%p$hN}yheACMwv(iLVOW?i>nwtVa zX#!SlYVsDjg3JX)c@enG1p5foRfZINo*-FpS1Sj^0!Jx0!a+SRaKfmEb+^EEXgoNE zqBubHX*{S*69R=fsQVSgla~} zMh1o`kpRf3XFQ~X8y^fB7mecaONtLjEsA#nc{YkA806X443n7x91TJ7ugM7Ra}wJar!DU1u4YFJX3BpDVmHZw9Z)G#byu3=fo$jDGA zl)@0qpvml4#j2;LS6y2KiZ)G_B5-Q~T=;`(w<1$U1_s!m71-}WC8-sGCB@L*dNGpM zO+fAj=Rz<6_JIJ*2aY*8@gQF`f$|hco&j2Fa4`unR!L9(7%V*bQILlg&Ki;*Y7(f5 z1XX&ylS6`&M6oKLd^%W?al+)M!D)ez$}kF6i1{XF<~bH6XJnS8Mj;yrs-=s}LGH&^ zPjW#9_}vq8Q>RRx6B3{WHkGkR36};A&`>o<`P|83p~|AGK?wuYHq&Gb(PRWS-82m+ z`-Q6V+yKd30}&S(CfA253Pf=il;$OultKo7&ofNk5Gqoy1yY~`B5XhesN^lO2eJG> z1b8F?G(uhk>ZTTzgT#741ZX%7GO9QM#09teR)JWcK0LSsS#%e~1@(uDz=bUuBS>7Ki}n9Z>oxG6QkJ!Dj(tS%L^F5CMv4NFD{VKuMwq zRG@-pwTi