From 3e48718330d8f2925d88519887416d5a7ad7b62e Mon Sep 17 00:00:00 2001 From: RT Date: Sat, 8 Aug 2026 16:50:39 -0500 Subject: [PATCH] Ignore Python bytecode; untrack two stale committed .pyc files Adds __pycache__/ and *.pyc to the root .gitignore, and removes from version control the two bytecode files that had been committed under build-env/__pycache__/. The repo had no ignore rule for bytecode anywhere except MW4COMPARE/tools/.gitignore, which I added with the decompiler toolchain and which only covers that subtree. So running any script under build-env/ leaves an untracked .pyc behind; extract-mw4.cpython-312.pyc appeared while the decompiler was reusing build-env/extract-mw4.py for .mw4 container parsing. Untracked: build-env/__pycache__/replay-mr.cpython-314.pyc build-env/__pycache__/variant-to-subsystems.cpython-314.pyc These are generated artefacts, and the filename carries the interpreter tag - both are cpython-314 while this machine runs 3.12, so they are stale bytecode that no interpreter here will load and that will never be refreshed in place. Removed with `git rm --cached`, so both files remain on disk and simply stop being version-controlled; they regenerate on import as needed. Note a .gitignore rule does not affect already-tracked files, which is why the explicit untracking was required in the same change. Co-authored-by: Claude Opus 5 (Anthropic) Co-authored-by: GitHub Copilot --- .gitignore | 8 ++++++-- build-env/__pycache__/replay-mr.cpython-314.pyc | Bin 15551 -> 0 bytes .../variant-to-subsystems.cpython-314.pyc | Bin 14446 -> 0 bytes 3 files changed, 6 insertions(+), 2 deletions(-) delete mode 100644 build-env/__pycache__/replay-mr.cpython-314.pyc delete mode 100644 build-env/__pycache__/variant-to-subsystems.cpython-314.pyc diff --git a/.gitignore b/.gitignore index 60813275..14c68493 100644 --- a/.gitignore +++ b/.gitignore @@ -8,10 +8,10 @@ # state you decide you never want mirrored.) # run-firestorm skill screenshots (may capture the operator's desktop -- never mirror) -.claude/skills/run-firestorm/shots/ +.claude/skills/run-firestorm/shots/ # FS507D_20161015: later FireStorm release drop, kept local for analysis -- not part of the mirror -FS507D_20161015/ +FS507D_20161015/ # player-created mechlab variants in the game deploy (local test/play data, per-machine) MW4/Resource/Variants/ @@ -19,3 +19,7 @@ MW4/Resource/Variants/ # GameOS run-time reports: rewritten on every launch, per-machine MW4/gos-displays.txt MW4/gos-fps.txt + +# Python bytecode cache: regenerated on import, and the filename is interpreter-specific +__pycache__/ +*.pyc diff --git a/build-env/__pycache__/replay-mr.cpython-314.pyc b/build-env/__pycache__/replay-mr.cpython-314.pyc deleted file mode 100644 index f147979e3836e55e4b93c1b1de86e45f28749546..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15551 zcmd6OZBQIXmS9zX)AR?;_opa80$O~D1|bO}*?fZ$A1Y8G$w<9LcLQzr7gg0l>hbKh zV`JAani;iL_Nle9Lamc0+**4_?e#ha-^`r3n~OLm_U5K!ki^yyv5vTnxbyvzt=XNq z`E&QOs;g-*LK_!%5t|ZOnJ>TId-?L^%a_@8CZisM@DIw4*DJ~~?7yLm91O|Cv!6jC zjFA|JUBF0u5a)35tKbykSIH^GuZmNV3QkQbISr{I)jp z8K6v0s>w_!F+iD-)R87KgETj3IAb1Gfst7S7-?x$NTYKmGP?ld%w!J4S!6E67BUaw zY%(9>ob$P4!O=4q<^(!QvGX|M#zTDtt8UvS!1|mQ+ ztc#$1PNGsOsU&D(*yWg;q#4HTXIhCSqR-8^#yLOZCA@Byb^Cn{jO(J?wLr|cJuZDM zH|HX}QezuY+2~~|i5aL&bM=Imo^?BjLzn33V|3f$!!z~70^{a5myejfOmq*EV|_u7 zr@eigzUUezt&MtpCjspVHw#G2KoQ|{aSMLt4MOU^onT!e0)*Q)mbJ1SF2uN$<{5~H&>#7&&cF~TxWG^)=anUvB zc6eMwH{+r?*DwqR6|Le>K7!Ue=4iK%@Xrtd7t=7qz+gmWfOfpWRwAH`Eues!u|%!g z=kPR&gEly6;D(EEU3B?4R-%<-f-d6VMK>FyJqMFCLMJXKE0Q*gx_9|z-98slyTz>@ zKPk>3G;sKREOg@F#0GlcInXl0_`PC#RL(eE&h5moL>&;2Y}sQp@`Q)^bkc~plCT0 z!vuY2Pmg`p+$j;$jA+zuF$&=lqBYlJ9u%IP-$HzJ+ zM}$m7nO!2ykzC;72Tx|6O+kVNHFX~2a1sO6RL&{$F+V5(P!ph-AO_V0F(@a9wWJzi zP)`tNkXnfKqz+q$-R+(EkCNdqq(Vx&fnJY z`ie#TgSLO$7H|I1u^+Wn5|t1p&dC`L4Yh3Z>z27&M6B4I27RZ9dZf=7jnBsIaK2cUpO zIE1n2{yPV69*mv3)ey%Y6(8ht4t^Us4b&8oLklX5p;!vLO)2cwNPtq)C)Z6!U*5^T zO-4x3F@0YtXe9k9Xo5bppNLd3`=G0BG_hMWu}7<+^cmPIfZ%)8cN+e(A+Cx~JUDm% z+%o>*`L*JgmOCF6pWt&&{Qn~_C8v9mH^5W^lHVdm8EkG7^zsZfx7DCZV)QLp`F}MX zDp{KL#Mk{CeBCX!6uywI{a1nS9~2#f&%rmChA*V8|0?hWai4h(zB6g~Li*tI@kN?Y zT%P|E5~B9rMR&+1Z~&*kR6m-HVY51I1%(?hQVC00CBwG9 z7gY7)Awhx|Fk4ENKnLSUY*BF5i6dZR2*Vu#u-LXo$g)VPC>+PeGImslEUA|3fC;Yw zou_5MhQQpfbeXYG)->%ThQ~R^?VBY)%M&3b@d`2W2d#(Z+`fip0kf(Zv?mFAiuMFu z;szjY3ZiZiG?MXVRfw9CDTJD=xcMeG1eF&wl8~8PpC|*gVeAY<(soe0RD0#%BEFGn zSUmOpmPkcp@SVE%&+)ddmFAVImGRZwU+4capC3E*tHM=1e`tK|zyx1D@efCjEpk^w zOQC2*wDWe=l|P9xF`PG7J~3M#nyqo`nz@zNbuKdy?V+~9A`<`CTKNTPYd&kY>6682 zzJgM;NSm&rV-7Z35F?D)k0P`aF=&~|`>b-t?G%)Z+bQj}guK@>E*1*py;jUMK{K`y zqA<2;$i6!Kz2WHoD0e4xGZe45_1!f?L!5qOIJBtz$=t_tpS+%^T6L@z@m-|IBnH_# zBi1Zr7NPSGm_>TK-RpM-Jt%Fk+vmadPL`PM_8B+Ba>%y!`R#TF7Df_vw3jewrxb}0 zg@-wWvMnfTN72g=33+xqSmK=9VW&Bezv&=Y4ls_zZiizR%R1c-&f)TS>~SYBrIbaB z;uwtX%n_AM%Jic!P&Ht@kqRTIobAeF4B2Qq!iBLE9?GdKxo`~4-Hrg(h>B8PP_-s0 zU4YR8su#9VLz~)E8&CucMQQ*)Eu|uLl$y+-G)=027I=`iV?fBtyrQ(E9$6)Oa|&u@ zCTs28m*HPj%b2WH@O-=iI!ZfM^zHJg5*bG6Ksl$R1Sm?Tx7AR*u!ib|HFPhmk+oY5 z(sU$gUzQ{8mdSW;edRfrzqXtFP#H2sz-ch50C-m5fV*qz&xA5sP~>qt^A z%dti*V4OmWUksBUrXQdvLwZieJqzo_`(Op<5U(|CQ7Su3~fw10+l7#D+kFK0=<}l?L+HBw#U-y%UFT@?|ZTQ z2eLsrbGD?D%9cmU!umc!68Hkja$z?}?E#{17UaGZBg==)d*c_#gOT&oM$Sze8GO7i z9Qg%O6L^8t1d!D1HYY_g9)V&if7jV4pbDwt7NuOT92+{9oROSe>*rDVEh$?JYX4ZO zJ^5VvUbAf2PdR&%SDZRe6^xy`gllD zbxFXj46?pL%8tQ7LFILEw4ik^^m*u6Rsfgkr7_XN3~5J@k<&Wln;n5aLF2vLGd9>G zXpl?O#R$3pm_XpOc3Rbf4$LG5tnpbvE2dmd1o8(0Nf4wE2zjRaQD26ne|?Mw7pPS! zsC-?c6N1in(oZ{46TPpCfuw_GIq;VGIjDe|sgSoDJP4wv8*<>?7F4KHAv56i__-dJ zgZ2Ra2$W14ksrK!4p4QofV^I;H~xm(#|qk{cU;iY?qP86dIaS~hgZ;xZrKU&!XEnX zNp@q_0?~jIRQ>?CnN$pTpG1REP=oh%uv^fJAN%OZo=!nOei=OU-rh@YPBN5{<`6O^ zcZVJMtR)K*Z3y565gpWmYTEDjNT(PzL;Gf3l6fjxp&A;v=W|NNDROo(`6xmrmbFAs z1!!(gz!_!;^#=|{mSs+&@?jK>h(I)lf_g@rXr-480Xq>>)jkg}S-d{{-6)Km_hDpK?|;a#tm*YrNavc0q$}@P%y)XExT9d`J%x!)2qDh z)i0q*!BRma`$|c;XVaYb#9Z-(xgxed#>G3=%#Cjig!?y3E1#4$eo@*O4<;s-E7wYo zKU5WkU)?ZdM_Qv9v6^^&BD7M!8san0!MJ((H>hjW^)um~#o~vm+>M;v8;7qQzJ3Jq zg>Q|ZY}>WA>qnE>owfCuSNAXNzfv9U-B9V?9(rr&z1*lP)_HsOR@p~fqIbFC)BX>? z`=6Yvhxt?Fua5k}yIEKoJsoSlJ$cJ0mREi{@ZldnRbuL_-@+N;`k)wi^f0}s^q)gNkO`N@$Z6N$d?(7NiS4TA}oU<7L4 zZI8}8%Gv+KcwiCVG-O3AH*&A#UeAx>?-pJeSyXNqERm|nO!U+p>LzvTOl&58>H&41 z`tVF*Zh8Lmi=SQm=_SOp<{PcoTCcZ7t7DcA^6uu{D~OjR=6@3WIQYrJ@|&xjzwZ5I z@89)r7)qj@cY1I3-s+E?Ojv%B`*H3k`O6tA7619be>m`qnhiryma`=k#JwMGSZ9aZTsPQIOChMQoT-m)V_Y;@J+{Z^XG>@ zJN(llQT0Yv_M&#vk{`MFZ^{-sH?k}@)YsJ4wTs=rgwr=q-CBhl`dGS<(R)IT;fe67Z^%b#kn4AWJ^k|E-X_DAfGbqBsS zVy2R(Cd`l(JpdfbxtsI8BVO^K>VDO|IX<(IS2aG@TYx=V23tP;448iM3*Zy@Zl}Ks zsa-dqm{5>-y7QS-h)#KNKW_q8^ppmcr5MIi=RX;OVQ?N(PQV>;>TCtI%i$l>%8c(m z_Jry}Zo0Ec-qiw{3s^wggavd{nR5RVDHjpgC8xkTP)=x}b?Tf65bX=`Q=OenVTVqB ze+hjkxA$>&_G~D9!v%*`+88o6TMnzUOUTB8Hfgm2+M#i2ho8_@VFWgX+)ZN8U{2sl zDR89;3o6Qhr*7;eWf|titr}(!s&^Wta8{xOtj$GR&VqiICy;IbD}ncL;V> zAKae`O1JZpp!Cno2)LIyfvTu{p!iud18J&TQq=~rSGUuKwq+&?Rloqk*#80%XzWaL zBqO?iEwg;lf^?E*NwdgY(TBS?wE9KcpDjeR>)L{tB3iUrQt_mu;fs=n`0L9#%cs^# zUVf-54tIv>MLg28k!*Q6n*D<}*L0=f?pQ_C5o2PfMD6s$*I>2kG8ZR)kg=%Tv=ltC zRDEHoiuJ~;)-1Lq-J&wly=?ikFVVeW&W^C}UgFKf6LZZ&b4@&B&1_r5mo$m)PY3^| z`)e&`Dgt$4Fop+y|JxkQkh88Ti`xETkXM!cfkih)ZyCBXuwP^tyNi^+D8wP&cE5&} z1S}BMvw|$JR zEgU$oBIi{y1Qq457|@|c^8bcLyWkSM!8HR9EZ_=$2BejsiSM9y7=t~>o9o3V0gQ97 zr{M%L@Yty{Q)e3Cs-ONY+_8&q0vuqZZQcAg!s?kDV2;3WA&t}`q!t?p_|%A1C#@OL zuBw7M3|dEma@NHO=xqSQu?udnvUFgENhviO@VGfxv~#E;SfY$e!2Qf|)D|rs$<2%= z5iTAfNXtevMnx0Q4rUc|7m8=$kNplrVeB7a7ixZIJeqU;Oq722++!mF8*f(rldQ@w zvMOVT<2h?tO-owXc{5EB{D*BDrtGV8OLGx6YFjhygZ&8ht~Zz7j1E3ASFf9^QibBJoq@c_Y@Qc&@{;XTs}AT$z?}l#9#S7V+-REtm#Nb2 z#dS2&>3#EY*t<)d@pIoF(9_tD^-+Vvuo#7PCIJd)(hb8EqB{1?}-qBu`aL&D;Vw*qAD&H=vnHZCcO*oh)_)S!;niRGEdH z)&&)4+v+pGyeyKs^z}>WrWHfb16sjBML_2#D53>NuPZ#dK*kiB2{DlRsgx^sELVnZ zeRp#s?M)51mosfC%~g)2jb#A0t}z`;xXnsChNsmuK~3}anq(HhEIVM?0L$49vuR{5 zZ5umxD&>ZyQrH2mdC)`t_8!3fr63D;z={A?yaQHZOF1{Uja8a9R!SqoSY?z-*2_-N zweYfH%MGj|C)0c1eqAq9G>nt`(r*B_jap8rVGM%OKwM!{Pf}^lpGs(1m2O7KJ#On^ z|E^FSc>r`tHCaQ}ieGCoe^C6^k@aMQ2yYa>O*TVXFDWM@r6do*!@_2H^}r7MGuUBu zY3?Q+X-nq-rIq)`mr}Q!v#>spu|~E~IuEhlmb>a?dr0dM1Tu>$VFt+9@LDZNDs zXIR~UbH~ndnEm56B~Vhi`+N`mdr2#RIiCrC2ILHfuZdE@octWa7C=`9%-}%Hg8avj z2i^oMf$TsIW!lYYOIhHEk<_o-@0lqRWvK>LLRqHJjv=(<)j^QKqCio19^e`KtZ4|Py{YRk!EA)bLqP!!Q?A4N4Bj| zc{O&DUE-?i7Qa2)v|eh}rMWFrt1=CiDUVPOT$96A`8cs#xeNp8fY}L@Y++25Bv;Aq zJS^Fg6S5cKPVLUKo%QOdj0%h@k;jD#3RDbQleIyjY9bI;c4ZUexU+`;QcS-Q5qDPF@#b=#QZGDaZxDM<$1)4bJIPRX{G z+yZ6>9O|M5vjoc1=%|}Q9!xRpx=tch`h?l)1riy11z=_&iu?{?pjVpG0&$x9? zn75=j4>qazDrv_HM|d6pj|6P!sfmI)58aBR!h^?KkcP_v+#x;j)J|WvBbR^jjY(KK zQz;kb{DQ>`uhknnJbvW=KhX%FH=!+yG~VygBOc4ux}~}ZeWh^`|1ll2#M*vT#23Gu z;Fdd=TN39WDIOj|rN_4dF+4avJ~%o;kiFDk?_@g>G7wv($3q6>R40)CgJ>t1Q5Y#? zn1i?Z=(I;5&?y8mK^omg5U4f)ClSyLz^&^RfDVhTlkRu1bx21Lwcw*?k27acVFtVb z7q3Q+Gsx2t(h{Q2{y6g*C=f3v>P7H%u01aW)PtUf*c*6=q2GLdqYTZqE)~N zK?zqjkZxgU7#)26AZ!YPK=(?HIXG=Mw=x$HT56F;+hj-qa8ZWP0U!(~DRPHIz}){4 z6y1kcuL6E)+v%{wLwl#4^a&w<`;^P@MQFz&?_?N@TjFg$E)r)J`cb~&x-6a66>cZv zgc{N%2Yyz-8<-i$gYONUfkq@5v_lfuOc1Yi4z>&Ud2qzdbaf5Df97>mlrOSHdZSKE zj81f(97o&{)J_-e;X=w2&4&avN5A3n0k=gSgfswaY@P{O#HQV&!(E*d#L3ZqqBf)_ z=G^dO3DiUT2y+ji0ngls*FuW(@ZRl2b6ZG7G@O8B2THb~Ud)8kJ4@6qz&iH(278E* z7Jj^OIp8ADc#VyXM5vVT!jdLxgYd%_Sxul{tPr%vV+|F{SPXZL^biAs@G8F_-sFo! z7~uyVb}u_?M;+SHs7FV>`ri<&#e$AzW<^mFOr6YZ&(aFYZt`Zz)1XPF?%>!xYeCHfOZHw-%c!&M)+e_T${QzEJZ zA!nB#KBT!mIn+wYg5O3XEeAm-|E@t$yWv`n6?EOhJ@yg!@qx8MP|yJZrO?)g6;e-kFbF@dqS9($SF{-qTDrtcGcFr$-r!NZ{>Gv+s*z2^zZ%jDm&rsbz zN736TLXydR4GWj#^8Tqm+__m@ z7w>$~cfaqR_o3=QxF?bqQ*UOV8=RSIGiw=T;hw**w5}Nr-mQtATD_?e zq2XY-|DP1N`W5`Q8ceO{4YeO-KPb3g@WguTq4gNtrc{4cy=Lv?Yr9tJc|D9dwyDZk zJQ>Z6zW%7l$`>Bw^>yp2dKox(dmmp|8#jTDfA!Ike!gvB)y$un;?KJuoq3&~e1q3} z)>U4y_Io+e$y=pSQ*18ICHnsQ&A4xQaK*XW{-}@QdnftH3%uRII|GmG^ZW&dXINg( zt*e4^)6=(#qlVbVV2J$fn{ zjLya=USFS>`&<9V3V!JINBTF`Ri1xTW$^k^@I9ltRHSQhC^8?-i!xDttRmJIx5ZwH z(+PEAIv!fiUhZ3IS?*YwUxinv(p_a@ zd^wvh?|}W0UeWyAy{cHgu-d$OYW4E3rucJH{K@nDdHaSXFXD*k(F51$%k=Jrd`hS>Z=i*?oZ zPilpE6#r*TkuiqDy_l&LU4WUweUa(Ki?Qrz^@hUtj!oOqC$^q1 zY&|RI__0a;%-J>DxrbTJ&`(b^Cpr<^9}C7OzRb$MVZ3IH24fTP{c$$Yk_htqj<08( z*eI*IbMEFj_~pU)T3K_V>QUL@h$g~aGd!o@y5X4_BWk`@V#VdZ%|!yOuUc2_PoLd_ zSWeU!I~7}qvoUX?jn}us{VUAjJKa&u^`ZBbvA%nmk8>o{GowW#V=b{=l`y4wU#%HKh{kEKBo5M z0^9c<8*97uov1h7&gMV3-YFmk97-xN^Sj@a1nd->e0oc?c)2r*cp)a+%w?l7-!Xc>0o9fne^_vA{(YZUmo4&PujgJeO zmim#1Y{DgV*E^SPym{@-Saxs33msga0e$Pthieu$8pFQ;0aPpZFD?9|k zr_26d-<-uUV;u|UE$ly5WuLB8q36a(f5JQ8JV9%>JN*uLPFw}$u+>~(Jze150 zMLtv@?o(U8ffF|zAs=mC+kOlu!A%IB_NzEE%BTM_E>mhK{yL7~(IAgdgdD!o-iof^ zq+Js2o1&s;I#KH1p$OSolC`YskX}olV7>tu4u5P6B3P(6{{fP#Sf{UQV)EIElblPTM})GY;{wX zr6fDd4sJtT;t{hmMwrdag~7xKb357L&L&vx&ScNP?H+;y4%af}km(VS0p<>e90mu+ z26kuW$L)R9WK*Oq$JxDYNY&N#`0A^#s=il!JX~NgV(|Rei>I!Bhs3bopbzEQm&rW5 z1DPO3VF7F!qwodAHH}m1X%$6Gt0~PiL20Ko zlx|u}>8Ev+VOmcarwx>8`kyKD5mP`%SsYkEPZdCFpsbJ@DI26F$_}ZSDumQR6+v1+ z6+>#JN+7jeu~Yj_yoh0Lm`eqA#a4}VW>BvJd~4(e!+RKCpe5jM5te6# zRUyDG3a#8K*+K?*#wU200829D80%U%!_2k_%yrgHW;&6riz}VvEaSRHdVB#t8CYPA z3(Jd)uZ3qBH#6&H$<|$Ok$&<}kDKKJU0oC__?LMX3q>yp3w|C50rMK^Zzi4R zsQwHZBmJ*5lBY@k+#GqL6CkCZG>Xu%<+)5d(#I^aKyn}t&&q3X2+?hYWjMd@2%?$a z$NB)|p zV3DkEc~J)8l*dqJE|3hzu|9VfDR=_xS-|RYTl#q72{b+cZQt{oMGoB zJ%!LkIk~8ZU(6JtoKdcv^z(vWGN2ymtf>!HmF3eP#4wyONk74{E+A7|HrFl@XP3QR z7oIut=%s~!IPBQNU#c*S!I**|HkGZPz&bN|3TsBKGmjs*o4o&!GD zic_j)jnW3gIN*7Yl>uj4Aux;|;OD2YQ#ijqg+`Yjg%feca*W2SG3P)h;DjE|M4KqJ z%(tMV0vr3k@J-0yN745#%=~^!e>Z4Cnmg^m|gzS;kb8CeA`z0B;1T=E;zp&o=K@ zaLvWe*^*n%Sw;`RT=vGrvWp9C$)D5GpY5*iluj9kHY+`pce6#Q1Ns|bM!L+50JzQ7gc{k{?%Q+sGfNun7Ji7Q>QvtAf}Bh}UL=Tqh@-YC=P+a!HH6 zVd&i^SZ?jKJ{QGY1m%9JC-$>_V?Xs1`;|VaAE&0(FdJR&X3m`%jpx>I(3Zw>7tK%5 zY9Ji`6(aeEKtV~f;&BHSBw~>fu1UB@!mmr(Sx|134Gkn23`&iCT}No= zz>(QykJsJ8`mP^&5;v4|^K1agSgF#xHiN|NB1la^XzfN)$16P7nyIe<=)ycCzYAi& zHW!AOo1-B-WwwU#n}cCjq&m{`s|no?Bh_ES1r^d*+4^9@EC_KeEQOcks>9hcFc8!AMAO z*c@MBkTeosp}pbxXUKan*hn6gTqnty@?nWz*6hXce z5=rA)U_3raD=g1}g23BRMIoxtFETegNVZAD9M7_n-tTp%+ZrI3ZZ4@o%aI6~Xc{2^ zYLrB*Fy3o?2|y6w3}ADL4j{iz^9}^sl1E?uFqD;{4g)ZS-v_ZBqcyC4y-9R5-7_`? z`+z#Z!GBZ{nqK_A5i?stwITP-L&1SaPoyIf`0L?=gl?o9r6N%p9R88# zookWWl(FCoOL6!@!a|0Kl*t+{dgEl6&16#b?OW!$&_MXc7xvOfNy1(i>i^*CdspMd zarY->+YP5uRkg9=+auwNAKpk6*g_iU_eNLBY~MJuekM}3ZLW0-_}m1TLfR^gg9Z1Cr@bTtA~%j5S?#ffn4&te3a@&9e=+Lp^4acmrB{OChvXT{m&9(hnG9al)34`w>K0bB* z;X0>tzi3PD7mjg7&Ycr*fZb-)cPa~=E>fsDhEEp3D2241wl}~?wB7kGdXIjLVFs)c za}Lvn4#aTvl8T@GgTA{{7#SHE9+u@+E#2F{X6zz;{s1ZGiEgO;gSvaT_YXR-v^>6+ zHhK3o>LkJsnzckAOA7c)fM0e6B-65w12!=;$NLv04VY*1tfWnwHZmV*ES3nQ?n?yH z{3UgOnU~aaivdaJ@`L8+3rGf;DG8o6Rw8_0Sx8zRSY;kJ8ps9w-{Xb^3=j#Q0U%)h zK!u#TQK6bgEq!tUvOy$b*6W{zVrE4s1|opac~P-1&M{(r{qQa3Eo*3ij_b9ZfcM-)-vNy!09I+4)4%xh;lj{Fq%b_OV<`-Ge*ZFv2E8eC{-!ph-f+TeOI<(ohV|OI&wRi2c(ScZ9!rrm252-`_@rljqPw4nW%3=qp zRCjAZv{WT64O^Cm=xV~!79!#uo5Uw4;~goBEkt~2vZidsk-)9#=*aD}@y>g7$3@$T zP+#ic;rCa6cpxHd+iT;lP(NaEL}+r|7_EyGy;J&i5mr!kzZf$YMQTOU0g*WH4ZJ5P z(`#3+%jG>w_Pw~zbg{B)In`6oIu7bk9{;JrsxZEjpP=!*V1wRQ+${S_U@hUvjs!jq zPKS6>4lmLuwZMxm0uNAwW|_x}mR26&E4ruRt8&g~c@yvz{?7nrK3CB>=bdZ$=X+0{ zqE@hTuA`F-eX{2saMg`oPM>UA52u>oTc8QwijpHJ0n-F@D!vWn+fmYi62zVPXHaqs zl17tcK<40#d^T}7M+&2oeD?!JK22K22sBn#bLa z4k1rLlVQ~MFCc*vr8S05h9?u+{lT6OwC`!7{7;OLzMb;wWO>Wo@|M`u&7#foiSp;S z2xt&wLU_18r8jJ7*R`S5Na4+w6Z(o^U$i>nit^F(j~}HlbxRjk=N_8cguNXdnt0!) z{gc6XU&>k-7H-`Ttz^=AaLalyW=L4uL-@Kj-uKDK&-=dCp-ry`T_iaC_;%OB96;0% z54+{<4jT!df}->@4h#M0Qw<_fSwPrc-^H*MB&upTf+pZwfF;!AK*);WT{z=8=7&=1 ztXIT3r+rHAtjJaR!WQ~YwzrPf?YZf|j8@t>9pgD0PJyBb_^0)jh0k(&i;ljU*{a~= zYgDg|di^Ub?*dnq8$3ryzFcQzcMx*+Fs{Hd<848;`IXJcM@Noh^v0ke{}#|-rJDjyo`&LH1g0O1YxVnl4pkZ`vd%W)JNs! zX?{>pw&Z}tL?2T>?bV`h=zcm`UaEibG>0yczJAMDvF z-uKqfpAJRNd|uoLTTvC7_*G#^sCUO+^p@jI$6FO|RzzlH9d*Z6_?GTX-CNc-tx+Oj zYX=tHa`b1HKfDZwVlvUv8|vBctb1O+mMo~=DyWXuM%{^m!wGZqLmgJM?`t(y(j;rq z%FfN*kH`su)VGH|87~?ehaLRrLxIynS@$LKV&OCpqZqy~C|n3vQbr_=mLE#b2g?w4>@Kp28?mnJRY0>y&&KoQ#G0%Br8 zETz@GHuvgW$QeGL&^m%WQLw;%TKrzm#~tydzd9z8T}iTMi|o16m>|!HWoI5g!sv*} zgg6RFF?bLT=w75yHn<<3%98OEex7&%b5|j9Q~{|va0)}7CrW3_`mhH^}Bra5ygWB9y zIjf+?{+aGWb$ zFPZ1ONZ4k+^m87bUGNL6q?`3G!fikR;Mti><6U5;d1hG&tc2wyehTZKGgu{?+7hfYXC#sN@}2B)kR|L>q~1~s|@$?wns zHokWC)vMq027A8L8NVlN%d3?zF1;qaCj9a4XHvIxSGV+qwItID5iVhzQ(9#{le)RP zy16f``@b+1r_VZC2Ia|!YwY1s$T2vh%D0Y{y)KL7PELbF@&)a(suf#S4T7I_X>Kpw z5^U-W>r~EZ=A4&?8U_A<_ByBIw6reU20SKUvt?POY$@YlDQ93U;Lf4xJSShS z!;jO0{+L%wsdhc5yBIZs|A;e8p?S;Cc#aONlz}y`ru8}6G+@9Pr&XK@d6~g8P2_5& zyQ9#01=kZ@V1t6*3G;c{NQCqCtR9TU0q-*i73e?+8fYlE(x4}Ip2KSs8+;d`Z&xsu& zz=}89umRQJ{{hSk=>p)}g$fP0BHEhwT}&5^Bd^#ak0M97k{n9zLfJQ!^*xUlKGGFF z#}VgvsH=IDYHP|=J$pRfba^GU@%yi+jS6RI=oN8P_D_Ba~ z_F4tXLKXZg=92YXz=~MuVn}UtX@{y+-H|;RAU*ywteS(e%eO7y{(_n8jYA>Tl!nr( z%Ip6d(8-Eu2a-o_IHgbQUrZg|t3UYsL4;5x-vYuus`&{J>R}Fhua@Jn)q?Z!L>x>1 zZRng&A($a3=~P)}hM+;i{(uvje&l_S(So?LC(wRB)k2liWy(6{uOPs`4e%>6@YD0N zQ^r%OQ+d}OaOIJ6!k5*{Dr7)BVMHSh5OTSs8EaQjtxur;|Ag@me2W#Vq>k(fK{cuc z2vu~6yo>(fn<$h=x!)=ZHMgJMN0I-6^H)t5QZ+f}?pS-w#$??iIX6JJMH}()rz`V%?Rk>v zD)1vWpxHdKzG|Ax?LD9x-Fo8wI7mAH%At03X09@Sd1T+KM!(J&r3Tv8p{fPRUj_f1 z)`K;+t(kIyG1eT&GfL)^fME)r4)@tLRrfIbkL0P9uvyY~et!ZPbmy02r)Ld{%nHH_ zgfbW+)04__uRt5Va6+?}Z3RwuaEHOvRPE~Q=7O8Gz1liEloqnht?phJUej~~;-rK> z*Qnn02T5wU0Rvaj93TUxug5KWc_ft&ZvK%Kj*MH#AwLo1(zkHnO$}z$b^Ri;$Y=a> zQh7EoXID{IDv`D;oQ4GSz#ZGZq^;(zttR?R%pPk`*jm?hA$7`Bw9&oZ9Z^TvXdl$z zk+TWY;gBk2b!@!6{&J)@VXYPQwU3*1S$dBH_&jRoDuhsn9-y>4cVhuPA1OhsB!_aU zuiVfLY*s%g!IJvSxjud!3L0^lUINnL8q#))7MdV3lRaVm@&RbdUq=b*Dd{1y0s>cj*Vc5c5dQ-TJM2A= zq)o?*NE+ESBH5H^nKPNF8mS;Zpk&R+@QZ$44#JT%5Z2-6B{So`&iGucdw!MoOXi-; z*AV)$3an3nkPjs|NzzWp1#8;YfE)>;$wYw&a=42Z#g9m)oY)tMK+!gmegV)I0DVb! zb$OAy%7Xj<1<1Sr8C%+P$c`a+UIxm-e)XWo3wg;nl#R=g4B6-#$?TLPf6|dR5>Boe zClo{vNq8gNF9Yeo5y3~`wN{d?6sF{v%T!Qm>vL;!NRTbgYh9Hs7N*h^$rj|btIHOn zcG-xaY-wKO>TIzvr7U;0D6b`%Ef%ISWXzVN8xs6SFy}{-MvHvYA?YDJN?7s0os4lp z4z3%x;R*08>VWL}w5J&C8B8|(cpBx7Ln7%>h?(r)MgAGt$ZM=lTZA`J!5b(!g_7q{ zavBl|hcy?LXJ@XltNaKm(7~NESi6FR`y@5G;3pP^d6Xj8(DzY4Q2sF(JSF+;I;=)l2pr_M4)&tNh61N0bk>x1ch%&8jt+a&dC8<5Ke$@ znC3hzTzSg}vH?QdzVXSpCbCDH|1U89Jp2m|5Y6a%yR14|_fF*&u`f6j?)aj#B4O@& zn+UgkV0_OQdp1d)+&CXP|27dE63ty-nhJl^6eFV7#g;*_ekiejSS%h+87vTUaP^*{ zEZCni7lnInz92dd|EMT(B~f-*EIllmn}b6;I!jVlc2`#xsfz@nJqcaItG&UVSWiqH z?~MggMoWmfS^vYL@Z=B5wvGFD3W}2jG$$HT5$3qKN~o$st} z?>iK$PwCAYrgc-eKQi&-7scX+ZT-Pm(MM(fvFINOwWjWY9@iYXuf^alt1mnkIUji` z))u=MU)tP%r$;Oq3=QvC>>>P%f_>qo*RO>%Z(olx@2o~TVi%AD^UtruYJTauQ~is% z&7K{Lb;G&tOj-_XSq^~b(^8EPvTU4MKNVh0nyT-bs#EP9@rjQceyGieh|U-utKGJ> zZo1d|LcI`=vGKzC3lV+v_)pt^cKpNR$-}3%4xic_NF44JYx=|ir}*M!v42XO_KE%_ z@d__i3!)?Nxp^7gmvwJjsuT!1u{x(Yc|~+ge{P;hS;`}UZA-1vsz5w+Nt^;$ym(m< z4+ccXa?*S~g#tRZEe%R5y;yTr9G?|kbK<#qv3fytc#`I;DVXf#^~;gcq^0JrrABG2 ziyr)G&Cd>gcre-2wbj(M`AnjzN38A@`)Sd6N$k5Ul2fANO42-?vh0tzw=Fe0_L49Y zQU9PEuIVz8WLWXyoVc(izVt`p{CDqz|FK5}X=$(OpD@hQr%G8IkxqHi z#ogpG*QMdU5ZnPfe*b{Q zG0Q0d`Cx99ju#O>*FusP8K#3Oq@O(e10+FN2L!zi2bERTs^Y*=0e3{;H zqZ*t!YUo3NE{N0+c)&HicgyTWC$vDfPhbkmkmyoU{;Y%>LAuLw%n5xPb^Ko;5c-TqSpa`0=urYc z45d7nb{PMcC;{UK6VMW&cr$o18XgZqljZsU4i!H}EnbBL{F;{Io4WYw9b7c^-f0(& zgTaAcIjYu8z}qsRK}(V1h&IB6FK_FsGi74Q@ooKyUlo-BTkBEck5KFr6U8G!WdG;p zI=I#;-v8?i2DMN#l)P`o%(jh_>n9-s%2X~A~i&D;=q2X2$B%kGa_D+$ zFBp`OGVQMHQ>a+2K-+!q4fQE-fC`U3Pw7$rXnU~t2xYC5_an}9b8}9oEG_j@3fVAP zPg#`m@y49SnJleSAXi~ihn0G8Jm{5P;KuwdmRo22|CtAHW?L>--W@X+6L7mVWO%S0 zxNM=MLBHz&efw}DE@|L5EAzsdHvMCOwaOv5K=Ohabp(DYa0G&5DQ*NXFc^<_#`E&erqOA7>$x;^|Pbk(yr;C^eye{Ic_^P3w9Ux9F6 z-XCDsjKT~=R*2t13DV$YRxWAN=%V1*Yb>-BcqA)8NWhPJ(2s-oIBMF4 z$^dEE!r*xLSw^ElQh{#-XZT&q=PYU}%NPP=445=BfN3Zd5L=d|$*x3!SZ9xq|6fq? z0cvppBq*2?I%`r_c~@7N(2>F36rp|X+^grpL($scxox6B`5qSQ2T{S0QZOnWdL9*= zRtowf`?ra@lve-R;;W0_^FuU(r7TkYZo}IRpm+y|cbb}!8v3)A4_h|z|77?ZL$ay& zZd30Y(~+KcN8TO*{q{3ea2VorH=H+}A$+H#GO`pqlql&~H-~gPmZI=bMt?VNoY*)K zI)7C(rNpt3MEwh&wcV>9`)u)E{pEyp3c@7JwlGB9zJ4ZYuG}(Lf@W^6d!LOB z#d|+*IQ~B%V0QF<)d#xwbV>5)7I`#oPmmpARcCxeEPQU;{QM3ysM{EQ2(fJG&{;`8 z10F1oZ)OJ0gKlQV4gQ)L+1dqza8-~u3T`9Oxkj zC&B+;SHN3zJ;ub15ORJgr89<(-Pfpe zMM3ogV>!O>LAMpJd{CpuEf0$21jonl2U;y&^1#-Kmp<^~dc5L6aUouM{}4u)LzlMI RjxPxPpA3S!L6pk){y&N@Dpvpi