From 0e62c1eeb10b52242a2cc28da316f5d23dbd9caa Mon Sep 17 00:00:00 2001 From: DullSaurcer Date: Fri, 18 Nov 2022 12:50:36 -0800 Subject: [PATCH 01/69] Too long to list --- 1.4/Assemblies/CombatAI.dll | Bin 173056 -> 165888 bytes 1.4/Assemblies/CombatAI.pdb | Bin 73524 -> 71196 bytes Resources/Bundles/StandaloneLinux64/isma | Bin 0 -> 6379 bytes .../Bundles/StandaloneLinux64/isma.manifest | 17 + .../StandaloneLinux64/isma.manifest.meta | 7 + Resources/Bundles/StandaloneLinux64/isma.meta | 7 + Resources/Bundles/StandaloneOSX/isma | Bin 0 -> 6379 bytes Resources/Bundles/StandaloneOSX/isma.manifest | 17 + .../Bundles/StandaloneOSX/isma.manifest.meta | 7 + Resources/Bundles/StandaloneOSX/isma.meta | 7 + Resources/Bundles/StandaloneWindows/isma | Bin 0 -> 5443 bytes .../Bundles/StandaloneWindows/isma.manifest | 17 + .../StandaloneWindows/isma.manifest.meta | 7 + Resources/Bundles/StandaloneWindows/isma.meta | 7 + Source/.vs/Rule56/xs/UserPrefs.xml | 85 ++-- .../xs/project-cache/CombatAI-Debug.json | 2 +- Source/Rule56/AssetBundleDatabase.cs | 9 +- Source/Rule56/CombatAI.csproj | 16 +- Source/Rule56/CombatAI_MeshMaker.cs | 95 ++++ Source/Rule56/Comps/ThingComp_CombatAI.cs | 164 +++---- .../Rule56/Deprecated/Utilities/GenClosest.cs | 41 ++ .../Utilities/Tracking/ThingsTracker.cs | 149 +++++++ .../Utilities/Tracking/ThingsTrackingModel.cs | 408 ++++++++++++++++++ .../Tracking/TrackedThingsRequestCategory.cs | 30 ++ Source/Rule56/GenNearby.cs | 23 + Source/Rule56/MapComponent_FogGrid.cs | 271 ++++++++++++ .../JobGiver_WanderAnywhere_Patch.cs | 46 ++ .../LordJob_AssaultColony_Patch.cs | 0 .../Patches/Deprecated /Projectile_Patch.cs | 34 ++ .../Rule56/Patches/Deprecated /Thing_Patch.cs | 73 ++++ .../Patches/JobGiver_WanderAnywhere_Patch.cs | 46 -- Source/Rule56/Patches/PathFinder_Patch.cs | 56 ++- Source/Rule56/Patches/Pawn_Patch.cs | 85 ++++ Source/Rule56/Patches/Projectile_Patch.cs | 34 -- Source/Rule56/Patches/Thing_Patch.cs | 73 ---- Source/Rule56/SightGrid.cs | 22 +- Source/Rule56/SightTracker.cs | 1 + Source/Rule56/SightUtility.cs | 61 ++- Source/Rule56/T4/Outputs/Tex.generated.cs | 2 +- Source/Rule56/T4/Sources/Tex.tt | 2 +- Source/Rule56/Utilities/GenClosest.cs | 41 -- .../Utilities/Tracking/ThingsTracker.cs | 149 ------- .../Utilities/Tracking/ThingsTrackingModel.cs | 408 ------------------ .../Tracking/TrackedThingsRequestCategory.cs | 30 -- .../CombatAI.csproj.AssemblyReference.cache | Bin 55103 -> 59442 bytes .../CombatAI.csproj.CoreCompileInputs.cache | 2 +- Source/Rule56/obj/Debug/CombatAI.dll | Bin 173056 -> 165888 bytes Source/Rule56/obj/Debug/CombatAI.pdb | Bin 73524 -> 71196 bytes 48 files changed, 1616 insertions(+), 935 deletions(-) create mode 100644 Resources/Bundles/StandaloneLinux64/isma create mode 100644 Resources/Bundles/StandaloneLinux64/isma.manifest create mode 100644 Resources/Bundles/StandaloneLinux64/isma.manifest.meta create mode 100644 Resources/Bundles/StandaloneLinux64/isma.meta create mode 100644 Resources/Bundles/StandaloneOSX/isma create mode 100644 Resources/Bundles/StandaloneOSX/isma.manifest create mode 100644 Resources/Bundles/StandaloneOSX/isma.manifest.meta create mode 100644 Resources/Bundles/StandaloneOSX/isma.meta create mode 100644 Resources/Bundles/StandaloneWindows/isma create mode 100644 Resources/Bundles/StandaloneWindows/isma.manifest create mode 100644 Resources/Bundles/StandaloneWindows/isma.manifest.meta create mode 100644 Resources/Bundles/StandaloneWindows/isma.meta create mode 100644 Source/Rule56/CombatAI_MeshMaker.cs create mode 100644 Source/Rule56/Deprecated/Utilities/GenClosest.cs create mode 100644 Source/Rule56/Deprecated/Utilities/Tracking/ThingsTracker.cs create mode 100644 Source/Rule56/Deprecated/Utilities/Tracking/ThingsTrackingModel.cs create mode 100644 Source/Rule56/Deprecated/Utilities/Tracking/TrackedThingsRequestCategory.cs create mode 100644 Source/Rule56/GenNearby.cs create mode 100644 Source/Rule56/MapComponent_FogGrid.cs create mode 100644 Source/Rule56/Patches/Deprecated /JobGiver_WanderAnywhere_Patch.cs rename Source/Rule56/Patches/{ => Deprecated }/LordJob_AssaultColony_Patch.cs (100%) create mode 100644 Source/Rule56/Patches/Deprecated /Projectile_Patch.cs create mode 100644 Source/Rule56/Patches/Deprecated /Thing_Patch.cs delete mode 100644 Source/Rule56/Patches/JobGiver_WanderAnywhere_Patch.cs create mode 100644 Source/Rule56/Patches/Pawn_Patch.cs delete mode 100644 Source/Rule56/Patches/Projectile_Patch.cs delete mode 100644 Source/Rule56/Patches/Thing_Patch.cs delete mode 100644 Source/Rule56/Utilities/GenClosest.cs delete mode 100644 Source/Rule56/Utilities/Tracking/ThingsTracker.cs delete mode 100644 Source/Rule56/Utilities/Tracking/ThingsTrackingModel.cs delete mode 100644 Source/Rule56/Utilities/Tracking/TrackedThingsRequestCategory.cs diff --git a/1.4/Assemblies/CombatAI.dll b/1.4/Assemblies/CombatAI.dll index 4d438479b4e4f16b3e6107842130bc5e73a6d38a..521d94b8d1e949f22aa7a32033f1b9e5376cf1b1 100644 GIT binary patch literal 165888 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%0D9F+5P=I| zFqrX*UI8BtZ9>EhiJ+2&CIYf#Of$0(pqbflD{&YZoq41vW|jgxVP+13xYZHQxn_ob zW(Gf_bF>-!1aAEt0k*W*5vc>+$TRc)5h?>e-G+^W5E_MZ z>8NcCY#T6OMdy&mG!}i;`v#Z?;C+KGwmsCf%;gC<%AxK(U$l(_TsNQZ-CdYYRgs~gsdX~9^%si|2Nx0Xb?5g|gwlM^Gw2fQf zDy^p=5k`lgHOVHDp0P6>^NUGSCf>XS3k&K~|N$0G*!4Yx-*i)m*x$x*z!9iyF}l$Ur*RB*n&qO?EmR(uuC8--)p2 z4`owL3NE@z&pJyeClBUmFiX3xHLh)esFdOzD8;5^DeCu@@Fv5n<9(WxaVz@Fmx;_2 zbNU*vmG{V0HP|QCO79F~{C;Q-4V`TDMiWS2ZsD^x9*E<9V|9i{z}>zx(d~_44QkQE z*rYm(D96{(*hz&9nb=1^k4_cy9EgslV+R{_dGxG>4_9HHhlZ%p;s-wrRVR&}wqD85 zhzH+{sJI&7%A8J6ccn?gv7O*);K{WX{zAe5k*1_J%jW$TY3u+fLmQAS&jceCgIXJxL`T%3a}UAqxeQF`eqiu#z2N9m6hu%kP20tNg@o06N%k15Qy>Z9x)%@N0u#!b5Bfn-q2`07;;*SazvfoZ zu9slt`Ub`#-8v1rm;!fCEI;A@qU}xKqpY>C@w}Pow4Jul(lTvXx=a^ly3j%kv`}a% zMfQDZDO(F=2M1b2WjdvZRzy&6K~!)@P*4^@!HWut$R?uVzTv)sa&h1Ad(KH_IuzvI z@BY7kf4^q({dVA&oLt=KXKY4# z;?(Znpgy)!pOJ?I=2zoegs9NEQAjh)p0MZHfxNj{ZR-zoV~E8cPe-K(xI4gq#oy?A zapHF*4zcCrabXpX?8>_qHi&)kIfU?8LH>MT9KCfdq~=doekxU03?}t)!JuN|!O9l` z&!UTkprC`rxx*q<^P>Z1GfFtLq_|^id`a*gxYZ$aIQ%FDMRDXJwTuLieg)F!)2Tv+ zL}0^nWZ(zElyp$nFQ5<$j?bl7u1*vyFCri_I-0Jn!FL82530&eIa;rZ&1KGzb8GFn6jdU_+5Euw=wm+`N~(}#aAuKBTkn(xbe(Vl+zjfid$5t}2`ztSo5;XqF$g2M4|8CqA&EqEhoEiv=PP5u5U6PGHivN6L zve9w>S7S1M_?a9z82<1+VH%__MEjPGK}bl}(g?8nJ;+p->SFm9SHRLxwEAlVMyt?H zJb0qe%n&__<pvuZTX<*6W=(H=|yd8hA*_Ttx#GSm&BB48eDD1NcTx;zo|D4Gti^2PUc zs4KH;7>FV18F+~s4jb&LEyPK9D7~eiz%`4fs|I&{mAba4Z%EK_MSVEF7m6C zIkm4T1+kt=Me8tFgyJIwXW^Gm3{2|*H4(zRHxui;TX@}-$dDT?-s+j7=$BJuI$4ge zK3UF$k3+B&H0I@$Q-B@7)JCp!+D+FL&A8M(y!NDTzI!%>^kjR70n1#nX`ZK)E|O;-BmWd+Kf zV)anCB`T`5D;`-?ZOBafR{0z~Jc#NGO>Vq?o9#cCcVhD=h4kRBIx+a>L?V!g$-S5o zsl5WOqYSlSDR<$$2*qcX7EM{kG_v@nEh+ztefhr;d;vx z=2spHM|onnJmsu&#A!GWsD4e}k#& z;y;$fqxXL;Pj5#CCf;Th;A|{sR4( zy!R;b6^i~$d3VDeBFvcs{kgq&BwoOMK2!9?(@h`X&lddOWY1>9fzcN&gq{T@{qehV z;a0x6g7Gnw8V57hQrl52$T1dbYgz6y_|ejR9fM{7y_hjrUPe)Zskm7>~m69ptoTY^85h`A-SJdl1$y zxESQ+E7@jo*9GUko;F7=<~*Cw9TOnYv6W176CD3^W_Ug&b^YgbJ_Fl%>ExWB4$&`} z4l!^#^DkMR&%No;yl_3rgROY}6O=l`2Nu>lvaWa`#F zJQLh&0Mxio(moLWlkU|B)$?wSYtcbwl&fgxg6ACAa)-%C59jVpSxeOFpYYJIIWVJzH!k9<4oskcJPshv>XsB> zb70t(o>ph#bXDp(%}rcvzeG_|S|>=vFZMs;vY4?L4B?=c_4JDm-EG+PAmx&Z626ba!4&6dhTl6X8%chOY)YaW)7yZI4?_g13(SJk)-U&+_~m)u zEbOt$L*mkX*FTfi5(&AW*w~=OzdS#S`wVAdTAQTFRy7s$3?*K@PoUu+NvI9Z3G`#) zaqJ?Lw+8dUm~A$B8nARA-6ROh%$OFo)Kt>L1n(Z{8Fo!@D<+aslaBnmCWA#4#ruwN zxiU3TR|QgZ4%Q$@Bpq;|)?cwP2g@4BfTd;%I8y3~;+hI?s;ni!=hZ&Nt?q!@k5Mn+ zUCAa`BE5i5Lo6;j5~ng@;++3HC<_> zwGR34jkJofNO%g3$CU#TjoadsNv7RWHvO}d1#)DpsE6VhH%ciedW`zzm`qiNV^LBa-%k(aFH1NB9oOQFvSm&POTTGGOnJDF%&AIf(cyf6BQ_?)FveAd zDxX1|6CR9f#*QCaR2mmcx1nwxlIL<~Hg{CR@9G9?si#mTrFC3HekB}7PtEsZzk=8c zh@C>21a|UkcJII(c4ndVM{y06&AlFW5f!~6hNnMF4`A<7TTHB{`b>rF(x3lINCbcG zrT7EIw~&v;7s%fL`I*_Wb|Ze>MR+P^B>4gTe(uHwNVDG(1^Vwt5uzE3>9NW$@@js& zBTiY}MB=VOUT_H-yqZjl9MLVKY_6-}!P0|zzcIP51q(iVq8}Qm7M6|mCQNc13&D+# zad3qbP%h5-d>p@ugKu;U!Qq|QWNOA&Cl(L!V6zEfeE&snH=eC<(!S8qIEK!73384X z3@8KJS}?%n{8Cv}0UT~hI1Nt`)=qEIPNW}D?^S$v8s$?JRULzAYpfu;xBO|JzPAx$ z?RL2Ci|OqNA}GD>fcJma8_8k4QQ-=47y-1m6JfcXy_$WJIFf0FiPZNL5I*j)c!&w= zBkWb*F8I0sGt+%c{3qSJ5ol7n)c&>Tt0*;mtfLEfQT0-~(#`qvsh8E^Rj&{Dsh8NL zn>5l?y*MC6UtTeb=X<)KMCdTTlkP*D!!qQ`giTn|{UWgE011-rm&kt*4lSi~7#o2K zdS3A#CY~dT|0wxiW`6!+T7}zYsxWWUJuB;`!A3l6u-D1HNX~u=NGtmiX zwFbd~-UbpF80??`97U$`7ZDI2ULIj7TZ1FX=%%Zq-8+wLLgANon)|~?3TddB$Y5Mf z$vLg0WG2DMz}93AsYZUa7mpllSHWVH)wVW$cvG2_678J9C*df-MP*`0^v^P**V2uV z?M=~i*Cr|2Tabw0`@F|*#fKMui#ZwZ!CQbQXo@DntZIY$+!v`-_`~K%sv++Lv4;}I zc=Q$e!4cK3({FRhCxG}qXzS?>cn)Q(*$c-*RV15PY8Ii=J!A?0Y(cy$xY2Yp<75~P zJ{hVfqe&2`Q9j(nLj_dDU z%i8xTBsS4EWS6xcP)K+GkPj(j8bYGguwK@FL?KuDhkQ&S7%$9q6hbaOq;Bb<4B>}z zii#y6_@S73@at{s!%c2dgZm`vPP#vVmxgJYsoG}@G=l+S_>6u6JfGu-by?=qB{5V# zL77r}e(r%q`!q<=s$cmBA_=Sh@}fkX1Jc^_CFnXo7$cYk8k@L|`;OB@p)2Xke13z# z324`%mS>2F5I!o!Y6(qmi?4V%Dq0|}*P6xF>uLZK59tCse8hc~MZ69& zrqv>9a`pIsDaOQj3{mQy8&H-%g*Q~3Cg7|tWb`@o&hvOR?Aj zxeIe)0HFFY&-En#Vw^!uIhXko!Ynmq*Hr|&z}pHoh^W1zu7}YBrVaK_*2GEC{Gy4z zuN9aI;S z*P~FFzNy&r8~M#1X7@_t_knzL|CmCHs6ngZZ@BO|2Aa?x;LpgC?mtQH{oHb}Qt4X` zLqkzko)Y4r@IY5EtX;FyaKd%(`B=LDh9uHnArFfbE8i_>c6H?wGSh0xUl8ZQOOiDcTL&3j3qX50&k+R;)$(7kp$Yqa zVL{`D9;h2k$3@hjTjRR1QsGUWU@kFLl*)5y4HnG#o83@^Vcf(dNq#qlxG93`KJa)# zIFQ_oM9t@`Vtn9xledhzKB)!*W{sI8-Q=VFE%k-X%wy&h{viQ~pWU4sVIkr}+*mIWURACO}kay#{ z&_VMoUkeaXa5t8E@j^g-|4?s!y$6gD3*Or*p(hWqX}{XA5J3SvKbY>p(lsfPYc)zxrmjy>fjIN~ zBp#M{-|~}n`z2*jRxXf5ffto^$0cP^5igKMffto^=Otx%%ZPo<|3w+^zN9Q~8PAjT zk7ZnUNm<@9o+qoZjC8?YqwdX)dr4SlSOqP>S|-w%wMq3*xEjkiQN=f+u5B~D746OV zS}38yThafR@dsIwnm4^rmN(<)$!g4alU%L$la-BpEl0l8!O^h6SlFO9Yxf{)j%8>$ zO|tj?1$MZBM3PNkRGv3`EN>7VH(q%-`y6mL4t3^ehD zt7+U`=!tFvw_^x0=>_WXPP?**ls47(oR0>?DJdul-J3~=Pomt^M-}7w0YB#Mhy~lY zgDuhBUIP(dO1JcIG&dIS&6)J+bi&^t%%poZ%`y>Qf$uZ^mQ2TnqE_if99_O?Zh5&5 z!#$t=QEZ+#Q1kX8qK*!qlGaL*))R@Y3PnFgsZPweN=DC=Zi*LI9$z?d65ZoTA2cW6 zhhFB1i|+;nZwl;_!oB=uo)|*WT#RU6c@%rJ7R50_B<5{drjiiXaXn;FKH?^+4009} z8)Zf%!MB*23;RP0)cLz9xwKX_%c16ls2+m+9tH(d|BC%<0{e)xuH(<;U?@Pf!S#|8 zf>N=*t?7X_zC@O$*;<3{p+fRQYA2alW3474T-Rz6yi}*Hkxpy;(%O)un?6ye@qe|) zX-hd)@nN8JJPi>zcw2ox6Cq?IE)3v!CUF+O*k`EY;rX44=%IlbxS6c|BAfMt6QIK= zI92IR2GIe7u(-nM`Opqf#{b3CylaTlO+l_O5W{d{&r^6f1-n*|1v-e;=5gXDy(jd{ z*iF!N6X8bv$$yMhvU4WahxLvm}}w7o5-(1loZ#^h~IIuj8bW+9E2hVT`wm~ z<-&tV8M9eQ8@osw)EGz~X5{+oua!P7_ZF08&^V1t69QRO)08`JO?x5NaWBZY*{4HQ z$5c0sb2frGu9KSM2xenp^T5NbFzt#cH! zMAcIm-*SxUZMyt;B_+!8&4TP>CFG-jnp=$Ti}6BX%?!r}&iJLUp2a)BQAZ;9!fp0R z*Dc5l53}e{YRd(Is}YFUn8)wjj6C?dZ3gm$S?CK`?^3KqMT&E-kMlyQ4}moV`$ca> z;{PNEmtfom@|ZF#i}si5-sNJNGIAL-hB`k;QjmH+%}1X~f42I+NUd(#b)Vl6fy&F5 zuzOdqCqXy3n4NiCw}UYgSEW&e^A@T&QXHi9()gD@7SX4bFAH~IrVhK_8luLdFPeNMsXUd4?@??ZJ7E8LKQI0w)2hN?R9~Y*U ztV*x{oDON^BB{}J-}v%_8p2xD5NLg74bsMIMMMog7~yxaJ3yoAm6OU`Ho7`5Z;6umpPo+x!_2L5DxwPLBU!+28aiGp`oe3D|RLDE)BEv4sJ z1Kn!xo$%60lUB98cII)s0O?ELnxhwS+(p&U8IjU{HVsBi)jx;N{yD=L>8vB^x*IH+ zK_(`SPBWPX>+rQCTD8Z~X}AIruX9%F9jUn2N_y3Ze zl#N~Xq-?ZaGgf6Xx=6JxBullI)Dmbaz#*X&*wSQlqZsSI8SErfk}v4kSAMxK60wIC@zA* z=RX5NGqd|Xq?J;j0x&gY&ByKu zA?phuMY`{Y?D}r->U21n#uVrTG%H=vXRafMSC8rovGmS);QlfYmR3YtI$^gx>U$9@ z5f^obqx&ajrso`+h9dU>S$A(NIkS!;WTe&+AtPRC0dEFaq*Z>r&6_g<9SJG>$x?y;D=;9C*Y#4~eNG&KmsqR6lM!dl{ zAy^%lRcK54oenD)iSSu^Q!J(m%=y?^E9$87y4I18%j>I={F&ac zI#RT&64D%47_suFVk&PRLZW(fM7Zf;qaP#glknF)giN*{^r3tTWr>oDMW zyJs_TScbBiJdgRn+@1(Y=xG_l1pa8C9NxV>**nAYxQ{cp7~yj-;LI)7oLhXHdyD+V zdA2Ho&9e<2Wk(bJzWY_C)!gK8Lz}$Htt{#~R2^jn2i7H_I_is|iu6>D@6Qa5io&LR zb)+}ewBti>eO4%C21XCJ(RG;S=(J{mw&8S4k|kQT^)P`IDVmpxU~9pCA2L)t2$fXw5|s<z0t>XokvV$W@;Q`bu?PrXku+)sJv~5LPCS` zi@ofAqne8t+7saJX7lp;KFFo@=l97FcM$z&R6Gk03XG0+>_kvlaQ?>#4373Z2^5?V z-VCpmPq8-x!aTd+FLj{F+SAsG{RePa4a4B z==c|KL|{~OD^&c!o-Kmno7o(D5SFT<`uZ`vtcR+u#pJS~JLif{do!w@dN3Q?LR39< zYRVd-xW|P|^pj+1QQYlDafi!~GVDdCXX{g-(VR`7h>}9wMz+!oLHU@>6*l!)4^cKA z&p#L&&{#UKj)Zo`@sUX4n&R>qW%%?KAsN$E&s}MW?T~EYAn6K3j9J78)5k-`O4hxx zC&fvR_UCEE$1lgHm1|)*=m;@GgTO9C=KxDQ&RN05KSgK(;GhmL|6x$rob%UueRSAk z9UeI?OqN-mG%&R=`Q_Y`?jJ%Eik=MrkaZN2=^ujOmBrIug-{Vyt~^=(Apzi-<-toA zC8n6T(4Gzm3U+lvQ?txMF%o+A+Cur{_FBfx7NJ{u!O=I+!Bf)z5dVDIe<&nr>Q;Hht&A?Q5drq4lx433F7{fY~qXI_ldIXk8n+)w39N|Gvmk<+G z4XAw7;dRyv11CxMUS!bw3Ue7cntF;$14jOR)UgkA*Yj}Nwl~ro6)1u~cStf#D zFQj`IR3`bdFZU35T`wZ0!hBztx`IVB32N8xz2G1e~TV%`zRdgCN@5XF0H@1%{Ukzp2B8F(!lgG6%-`-^m+oQhbExz@2%FY5XeY|9uA zgfBkLo{1D}@=PG?wHNO%$`Qcxf%Gnb^Gb--JsGaMqS0FkFY1DVv89!d;I;56wrpcQ zncJniiX%;dn;9l+r{Y%~?Hi&2k~cf|fKD3_GH^ z#4g~ylX&UiAdBl57_I5eaSq=r@P!20_*_uH0U%O|irW>tqi<4tuI#YtBQs>>O$J&jV~LqRhG9j(cx0vxUI!$(9% zvsL-ETW>aJlcb*XjKeXOA0v(PF|w>k=_CD&&< zbG7N9n@@$v^UlvjSi6gaVRg6(pBDL)vPSQDsfg}u%9>W~rq|xb@I+eZRWTkWR0^#J z%CzHaswma2UqflvK~Jh@=C-50-c)U;`c=qN0&1!Fe5f5?YY0UY6_ueSajE%m*pNVG z=Le!+^Vy+wKtV3#3^8+y)!EE`ZB?~%=~q?@82PZcT`0Ip2O-#yauO!)c!L_moe<|A zMaAIbWc9PR80DkCf9xA5`-rB`xAoH%n_A<^YH7=q9W>=o8FQT^mA0=*M~&3iL!_^r zq?vdYA73uvTMzbvEsNNe__MXghanga^Ki}I@2$oD-cOer5bK=5pN=%{0kqI_f&cLF zFBl~6adS+9;&4JI1ARmlQL$aeQ>d<6;>~#%+^!VgQ5{<4UUo@YM73MrN-EH@ZUp`( zS$->J=;XaCWjDd=UH`O*8a!iAZD_N^f`NnuMUwc(3xl{9|9kOIublB<5>@j)T+a%U8SSAYdHs^puETuYc?>a489r>n5ZjdDBQPAl25G7h@DGjSV!w1- zogXW`9hT~vltX2(_4$mF%c<5%sl*CvjbUOTz3^k~e&z*JDxcpn8bdXHrE$kSzIsvX zXjF5J>u9VCUMr=gC|XBb3A%^sgn2!+`flG)Rgy03Nc*bB>A{KwPS>MMqS{(hv6 zmK+q5%S`KerPWfzJTJrrHT!q^X_UqkitiPu}xjhE*}eO(EPmJa-aHw1*_H*|R7&MeJHn zF`7oGqqPgiCsgdoh{q|^eF|vf<#%P%EHtKx&^m4jn26IYAvVc3ZSNN=wn;3`sxolO zG$!BKrDC`~L$ZYq?~VXU)X%^fqR!N~`aZUADx9)!(sZMJbD`P3X@!aGdoAc5(kI(@ zf3ok!8oLkSy2c)WmwGrF*InhSFJeG_VTnLU{6C6+OeF~{fe8oxxz1RKbUz4IRcGr- zs?GDT`q_Y=ycS@VZVKsooMgF~$4xZ9zU_0ULG^7IJ5t}qBK*3p3*tGxK$HtZzeK3# zeo8;uL)l}4;Cylo>yDBcVwy5=<+exis+;T7v~oFCY?D|QWI?6gstFqxSlIv-9pApO zOUh6-@V2*;qg4ECfT7O@?q?gI@+cdix@)unE+^XnEqsv;pffRhsD9W6hM#W(8xgK; z;8A#$4M2aWG4+fi2EUhOdVo_CSqgn@-}mYQ%L3Pv>K+`Y8tAPrPqChD7q#eA)%Q5C#ke$hdlh~X-rLZ63iHL zKBLNwsujwY!YUW4R(g0_CPnwF6^1CCw{4;;!Ac>-Va4dQy%A9ITk8E6la?z4gy!D)!Cr%wb zk*>w{H7aIId_j*JC|PITuUZBOtD{`dP?*M)8F^}UI=*9k z70;0;VC$(E&zJR;*`j$_i8cdZJ~tywi3y5!?L>fdlaj(DZu#Xoc7>JF@J{Fdpn8I| z$ra<-2`>-qsNa)Ph=*9;!~vV9StW!CtZoUcLJL|Mz~Ukw>ij5vxec&1>3$MXR2$eu z;%%PY>gQ?vOZ?qIt&?O<7WtEREOL#cFYXNJ~I7%nKK%4C}+Y^?H7i4TQ5qiji zU69*8yM0b}PKSI737|W*Lh@x{*7wfF$=0CZ3fX@>JINaI4q_zePNoMESfXk*H_;Q^>>MvvRIbk!~DmY1?H1 z!!05-j@*>w-}+gFtBfSnwx+b!4yCw1LSt5u_zVPRg~h2LMltkEGm1S zBJ%gmBmbMFBw-<_7UAYnpQ|8$WZ%+q+>mD{J=_>Wk_+Q0#geh)7DZC5t5~Ze5EoYA zB=Nkxfo+MrB{hc5(3nW6$^WL3>o+kVGEU@H1w`7! zyKF6|CJ}XM3vzQ=OS@ocrP^{zatuT#)0h13hZFV0RC1TFKJC3J|C8EL ziS{K^x&y4_PR=5C50^25t#lpRXTUIuJ8uHHE1+A8NQfsryu*?|?n&YQZcFa`ew5-1 zspOxOL^}Vl3$@=?arPb-aR!p(#Im7O`|)h0S4<<$BCe^sTa$lxDoOaMifXf6C(6%K zu8TnxZ{*m-lF_8|tZBrvuY~xwjUe~B0p#vv2{)lhexy{&gjnM&fqeZb6sy>YAn}gE$jR`4*8m03v-@i4ZL4L zsT^W=c_R5gN2|1ohc6>H3$=z8+Kp;FE1uj(x$Qi|Z6~gT%KlU#mHLhWWTkI}llx33 za@|Q(cb!I1FZTi0*VC1x=h?xe=Qlb~?No7D7ILl*bABR9M#myt^$&K+!w;;70bH)P zyHb80f)!7oWG}%=8qute;M;Cgs_W`(N68+j>Ndc zIN=;YR+QI?@_a>W>M`ygP+A@*(uYx>c{i7$Z`^5qfc>jEJ-z5zO`Chx**Aqd8PPNM z@?nJV$VW)HNbI>Oe3%Hq0v@3U3yEeEZ5bU6Ce#M|8i{rnqXd!3Xm1tKl0_#*_r`7t zzg@Hw-8sFti-^`<^actS-%TadRrF!bH;}?Gpy5nw(Uxf4L^-1goO%!32_B4iUsr4j zzgqObm(nEVhH1oknMQXq=ViDF_I{MJAZ`pcPfHn;GTyJ1nP%%kafcvkAvlle@ zIqvA#!{`?vC*;4#C~U~4@V16W96%ZH&c$W8O&ny}W=?ONc#qLbTo0SXmt5LX=6nKQ zZBPm+1tfDP)}RROX3kxxUP5niY4->-qlKK$y&}XQo!t@r1L8d|Y>d`SCiJPuW6tSW zYx^~#RlNv(g)dG?=12Y3_WKxV_cH1sWoYK%0Z#FY=)+R3$RPBaM%9J>Xnh)?07G$h zWzHa@AIIC7PBbrSa~`^*y+7?qPA}LPzN%l^PnG}QaVec4VCuH$_=l~95)mZeNBBGk^9%V@wf zh30XtFW0my7@g`uv<}8HV==Vr$R(6#tYzA=xP957MqlGGrVZ%3FFQr{H=bp*C3s(U z6w-cyIqM*$hZtrYX0#co80Z+I+kq|vdX?jCozNS#Im&pKY5fWbjW#}GbanWH!#@z? zjZ=(X?5EIaMpHq11GMiLZ3XQOF~h(& z&KVNrThW7Pa|}b8K-+^cxf3ffxK0vi3?wd{}yVJ<_<6LLtOUm_UK}5UH z=*}pK%W%I@#OPsqb4Dp#Eo^c#$Ge;DELv`1G=Nc}e2Oh(66-8Y?)8(>@jR3(Uy#>9 zpL6ia=MkIR(T|*ZiTsw)XHJq*B2P04;nYjy_l(S( zUWq)zXq1-nZ$`grbe3yuOcK>*iTr_)YQ;k|TFCY?O#a9;WxFHf&x{`9R#hs0Wwf8s z82JaMu#WRNR{q5(P@}&YJe5vC_n7l}2VpMH&S#8mE!PM19Yf6DZeX zWuPe(=p6Sb6J(Hy+U7QH#T7D`(Y;)TNz%#)+Yg|#Dv1lL(KheFJcUzClg*g6oa0T$ z&Qy}piQCv58O7)%BbT(98vC<(GKOhNXA5MUpOhKm64~C5#t3;iz`1Ua9sOipFLN24!y1xPESH`A;@u{DFin-=4q43T`%vOs zBTM|^-6sb!@^Jlalp`7S;`Fx4ag5G}QM@PQ1V+tSpZ}6mO&!F9K~vfoVpd90fFZJ{ zCj}&mkIE*7K8Km z5!b;TR(TWLErqMwSj5hDcflRpiQIDu_rU#X8o9CA_q6FCt{(XS{NoCiOG9jHHv#V8 zp&JnQ?c~jH4_EDk{9OY!V7WNIf~YC6kKW zizqFrF{Cem35LR_M_B^;_}htUO$A~T`@bM$>!D?bE0THpsPvgS@{!%XXt%F6p{d$ z<8l+)CW>?YyP7CgQrlF~kW1Rz*3Jp)TX9Yw_4TR@_^H+snJ0n{mb>Pa9Sk6z}+Ri+D3>^d-O*t z-+KB2vCq|at4r3k5=UICfUwyH53;=xHI^Y6ao&&ZmBoTPM~ z01dBb$+~5C54)S#J;LrVD^Xu8CijCeR2M%Ep9#sgjv#kL8*=-MB)3y9;%O5>GM{&n zKW_}VJx7r{W(2t#r;!^~MDBe($=%u_DPUOrR>bNc9Q|EwJBUzrgG1f$e;Y#X?y_aU z5hA-dzI6vNGQ1L;4@6X=7M?A<0i_s$8a0_%br}A#NPxdGG1l&}v zqf}_`A^2@WX2Lzub0d`kHm2Hds(5d}2!vlVh}`%g)JF)eNEj@Z>;pZ=U)obbGddv`4Wb#GxKxaS`0BL~y%^ zKtD6y=B3ubN+U$e{7P`XoKRzq5I?secNf}egy`6_1>&yjVS`I@YzW`b#wLzUZVms- zA*~UmY0$u0VbsMc*>IzVjfmy)~#VqyGQwgyryWE1?$gMvql-7V$vWx)v5OKAvjut4Y*z+D1{VAMq?O@GTa(?lvT? zhTYe)N&bF>o5ks&_r~EgzfR=uHJRMG?4QAIe-5cd-(nUUQ6py2tdx4fPq{xV!*eQC z$jQ`KJe_wha`JfZiU^B{xvV0>5Fd1>=hRz-9nPRXs=mhym6raWJ zMci(XV~DE<9s*BHw!jmlWW=lR53*CgG-W7-bc?3A_t;p%KyvRz?HFR=z;_`(YtW}~ z$*yvYUz&f3dU+z@C-mE@_YSP0c0oNxqS!h37ja8>x`b`<_3OL(q={O?$a`gkb0OT!vDJ;<|{^VS^V{A4V-iz=zl@7|Bxf*~|| zp{KA#Oz84^TxT)1xh39)x8o4FXW2bsA^#0latlMrEeRtxv>CZKv->)`&6`umM0O29 z{%(kix#wav9vF|0^z7Y8W0&FCZHPPhX-Mst#u6>#DfKwS+ANdczGmu#kn5vrEH