From 6fb850c3d24b037fc4561880fc71c839785e36c3 Mon Sep 17 00:00:00 2001 From: Elliot Thomas Date: Tue, 17 Jan 2023 20:38:49 +0000 Subject: [PATCH] Rename to SubcoreInfo --- About/About.xml | 4 ++-- About/Preview.png | Bin 41717 -> 30024 bytes Assemblies/NamedSubcores.dll | Bin 8704 -> 0 bytes Assemblies/SubcoreInfo.dll | Bin 0 -> 8704 bytes .../{NamedSubcores.xml => SubcoreInfo.xml} | 0 ...orComp.xml => MechGestatorPatternComp.xml} | 4 ++-- .../{MechPatternComp.xml => MechInfoComp.xml} | 4 ++-- ...orePatternComp.xml => SubcoreInfoComp.xml} | 4 ++-- ...Comp.xml => SubcoreScannerPatternComp.xml} | 4 ++-- README.md | 2 +- .../NamedSubcores/Comps/MechGestatorComp.cs | 7 ------ Source/NamedSubcores/Comps/MechPatternComp.cs | 7 ------ Source/NamedSubcores/NamedSubcores.cs | 21 ------------------ Source/{NamedSubcores.sln => SubcoreInfo.sln} | 2 +- .../Comps/BaseInfoComp.cs} | 8 +++---- .../Comps/BasePatternComp.cs | 2 +- .../Comps/MechGestatorPatternComp.cs | 8 +++++++ Source/SubcoreInfo/Comps/MechInfoComp.cs | 7 ++++++ .../Comps/SubcoreInfoComp.cs} | 9 ++++---- .../Comps/SubcoreScannerPatternComp.cs} | 7 +++--- .../Harmony/Harmony_Building_MechGestator.cs | 12 +++++----- .../Harmony_Building_SubcoreScanner.cs | 18 +++++++-------- .../Properties/AssemblyInfo.cs | 4 ++-- Source/SubcoreInfo/SubcoreInfo.cs | 21 ++++++++++++++++++ .../SubcoreInfo.csproj} | 16 ++++++------- .../SubcoreInfo.csproj.user} | 0 .../packages.config | 0 27 files changed, 87 insertions(+), 84 deletions(-) delete mode 100644 Assemblies/NamedSubcores.dll create mode 100644 Assemblies/SubcoreInfo.dll rename Languages/English/Keyed/{NamedSubcores.xml => SubcoreInfo.xml} (100%) rename Patches/{MechGestatorComp.xml => MechGestatorPatternComp.xml} (83%) rename Patches/{MechPatternComp.xml => MechInfoComp.xml} (84%) rename Patches/{SubcorePatternComp.xml => SubcoreInfoComp.xml} (85%) rename Patches/{SubcoreScannerComp.xml => SubcoreScannerPatternComp.xml} (85%) delete mode 100644 Source/NamedSubcores/Comps/MechGestatorComp.cs delete mode 100644 Source/NamedSubcores/Comps/MechPatternComp.cs delete mode 100644 Source/NamedSubcores/NamedSubcores.cs rename Source/{NamedSubcores.sln => SubcoreInfo.sln} (86%) rename Source/{NamedSubcores/Comps/InspectPatternComp.cs => SubcoreInfo/Comps/BaseInfoComp.cs} (65%) rename Source/{NamedSubcores => SubcoreInfo}/Comps/BasePatternComp.cs (97%) create mode 100644 Source/SubcoreInfo/Comps/MechGestatorPatternComp.cs create mode 100644 Source/SubcoreInfo/Comps/MechInfoComp.cs rename Source/{NamedSubcores/Comps/SubcorePatternComp.cs => SubcoreInfo/Comps/SubcoreInfoComp.cs} (71%) rename Source/{NamedSubcores/Comps/SubcoreScannerComp.cs => SubcoreInfo/Comps/SubcoreScannerPatternComp.cs} (77%) rename Source/{NamedSubcores => SubcoreInfo}/Harmony/Harmony_Building_MechGestator.cs (78%) rename Source/{NamedSubcores => SubcoreInfo}/Harmony/Harmony_Building_SubcoreScanner.cs (78%) rename Source/{NamedSubcores => SubcoreInfo}/Properties/AssemblyInfo.cs (93%) create mode 100644 Source/SubcoreInfo/SubcoreInfo.cs rename Source/{NamedSubcores/NamedSubcores.csproj => SubcoreInfo/SubcoreInfo.csproj} (87%) rename Source/{NamedSubcores/NamedSubcores.csproj.user => SubcoreInfo/SubcoreInfo.csproj.user} (100%) rename Source/{NamedSubcores => SubcoreInfo}/packages.config (100%) diff --git a/About/About.xml b/About/About.xml index 7c4f892..6f023c1 100644 --- a/About/About.xml +++ b/About/About.xml @@ -1,7 +1,7 @@ - Named Subcores - eth0net.NamedSubcores + SubcoreInfo + eth0net.SubcoreInfo synthe0n Track which unfortunate pawn your subcores came from! diff --git a/About/Preview.png b/About/Preview.png index 2308319e5424960bc72ed48715bbf1147fa4b005..6e63a4fbfb00a39d984cf5d5a51740e4b2240183 100644 GIT binary patch literal 30024 zcmeFZ_cz;r|3BUm8bz(zw53H=P-@g}jn=G|A|Z%XBW7(H8l^^z)*daTrAUy(rifkC zCb6|@&#IBypY*!kuj~5$3Ev;CbDk$o;yfPb`55wR1X}_n!t>ZA{aBL68E@wo5MO zo5&h#$`%+&MKDVVYsRu953y+ZW{a2j1pou7YK9$DF6yL8&;-(W@F)7w;W+-gvTZ&Ws}1!nJIc4Q28N`!>~>ev2xVA51e z(S*!c2Z_s60?hySh$Dd*pKxX%^8cRn^m_ne+dc2v|Naz3(7pPf{{xZHbeb>&2AMSa ze}(`lQ|$it3-kY``0w8RZ!iA07ysUY|H;UIRmA`H;{UrBh@lIO8c-J;r^o$g$A(8|q5{}nfNqoOR$%|+yR+jZkH#IPrt*W*t;5nqLC#uj?;rHm zHMQSqB*&oNsW_dELPTee7v-};&&Z)3joWb^GS){Eq|CAx3t}7np~sz}GN)D6hmDFw z)mME_Hn&bUt7cZu_-D8I-5O4MmyW9sgFfq>G@b61$)Ej}JbNxjt*?6`rA>!q9#f)X z0S9-6EW9^RTvD1nn4s$<1V`&Z^J>32NDM=NC#JbxuxYyU>k!KFgm$(pWDnh|b~3Cc zYkfS&Ie9fHL1#(rY)4Im-GcU*-f~%e<4#}NxZ`Tek@eZ0b)1gvMSz$oo=0Ne))Fm(tGREStih&?2%Hx9e!7N!SSLMBFBS2$GFMkY~RCUQa7}5 zD5Z4d6ngqQ%|pV!wnujMs9`qPFI432iwD+Xd&C@6q2d~*JhMM!zr6Re>R!>}w>$l= zeRqGx?k`_2DF-u0cHIxOki^-YQw6ISc29qR%22oXe`+*Ks zhRKI%{+11DCo6{4dy=3pXMnW+&4{sETOa-LAYlDr&ji5@@ImSFWJl*g zgy-yGSaw0d1t16wd9|6=xSQY6w$o)8f>+oZG0tKN`Sq$-?YLE~LNc-Wb3uTY zBw|HRzLVb{y7Nly&nri!(*=cYl!{tSK*#uO#-Ew9Q?k5dKr{WsQn9${adqQfN!H}d ze$~eOwC~yY()$Makj|^2FLt&QLci?1tr$jZdgqiYBujoH`HnYqFFjLJJ5o9`czL>` zcIG{qt=Zv=BSd)I~{j*Qblcb8+z&uz(LiJO_vz*MA)i# z&Jon&Z1|B-IKsA(5>ALR2Lc~UaAyt-yLOL}f8ICOXJ zn*et;6gRZ=9a~VmiaJ-$6~KAhJhS4?iV6atYa73Ms9W8{v2tvhNsLbysWf^YI|NptybZ1`D4AR;^7wUeM|*6x|bp<2Yy2@CMRczk3MKA z$2K<8HWv0{$G|uFyxLec+Tg51O>`&-dG>OGowR@)RNKUq{mr(bgxci%X%WOCoGwwVgX^!-`$^bLD z0r+H63LN8$FK?k%C9K}cUVbKD57}v@Xo3<4KjS=?al1?>h<7%{R8(`^<0vUA;nsTk zd}DUyk-y8PS3+XtHCNLcn#&IGD#Oi`7YR>;zj?Lhn{w-SbMzYzLIrfd1#;s3K z0P*^j?Wp|&N3)+Aa|~eS(?yTdf`feP!+ae;>X-~Q4YJ*3NTk4yMI)(?`pU1DR#ZLb z4#P#1e?Y0=PZ)@KA-G$na0rx`7ld;{%(3M-Ssf0gRc&;M%T#(U50@bxoDFb5Z91<6 zyL!*ReOQ%sN16QMh1KjSK4xhkpjx`?IqzKiMeR@f8)xXd>CkBRyhQ9R;au|UTH2|L7?Ym^V<9T`uIUNqvr6n(z!NtmT13sy-jSjRnc2=u?6tskzPh97t(iJN z&n?H0bLRW3was4&Ga6Rb=}khKoNVvp0;5iPnvQ$+BeBbOzGmK|5n=;VftUQzJ_dRD zR$8!=?y}=Cvc_Wq&+6ovr1^cz=jr zeXY%~ga#suP;;{3F}v@vNf`grY=W?Jd1Ohp?L8!1P#yR(FC^)Fy62PA6U9;>$0bO1UdV1c#Gi{$=y3}{?V0^m- zNHnpVS>NkEYH|3McQ8Y4^iPaq2BdPecB*W8IVNlvSA@<6G1jJSBWZflxsju?6HI5p z0HWtJlUZ2poZ_FiR}bDU{Y=%zz-(nS#U;TMAW)6WhJQrAWfDPNsgGSL%W>$9(w>-%F$ z4(gkZ>K9iGLxXt7luTt9HkQ*TO}eKIV9-^gG#5$S`a$Ff-1J4iCD-9xI=TLGQ+S?7S5Bg(oN zs}U?=7DcONHT^*~Iki71>A?aqovQn|4dM8S#`?Z}5$w#L4*4q6 zGax4Sx)pipI<}76V4tofy!~fq$a?2Q`ejj0Iqvm3jG!>LME+lQrX;uv&`^9CxrdEZ z!5E-!S6vd8W}7TKnJBBYK*Le@-z{{#v;q**;jCb2oUKn?%)ZQ<=daw1ak?#SQsO%$?7MHjHCxSmF7bex!JV zJA+FhYlpGz@$ZY~q)}fB8`5gTsCw#UB(W}KDtlyc^(Z)smH4ex%5(Gt;uXE2cKA_E z(E?_0^2OM)3<%B6*s{rp1jzAtQdCU^FMHr@D< zLOvt3dN0&OnIct93B;#r3Ignn4Bv*iT9}j8-?WRdGq_T7t&< z3t2O}1%sQuTdlnwAv=pw34z~g0mLyy((ancMp-`^9ru6*EZczC_P>rTaIE_kV_F%> z?+4y_6RA88)e)871&VptNwX~9@>_B?44&w2%K;EmDBk*_e<;}>Ee-|{J&rp(^q)1e zK83eK;mv|!233|31nD>Uc{dAzM4HC4m7G)O9g5Rf9Ml4Rs`hSgO|W$TQOlx|5JyuQYQR+_7Ku zx&!^CEWUX*)al2@7P^pwv`_^qI3pu7vXZuNC#}LoisepgH?_>}%``@3+hEk3 zDeITMm~zZzq!x&So|x`9pBgZ|W<@$CdYlmLsq`L~uzQyfSa(IQKPkQoI?4G^_mh8X ztnSDStnlU{T+YiTH-9U((w+sZcKTCoX7lT`Bo*odYbnfMpl2(6R|*8yg0Z6)tM-{V zKvX>sK7z3Y9{E7bN=Eit3?PN>kAKLLf0f+!JI=UD4Q##Urz$UhI?&$Rt$blx6ittB zK~(cxm=G3|4yWOentBN1zE_)EWdg(5dNHXkh#ERi`W3(QPl|f!huJ%S)?}@R+dVnR zISYiZtSL%|gR$_ZFWy=v2EU(#^H1%uxf|*Dxb1V5^QI64@6~RQQG}L6^oW$w9Op(U zpSk~5*j>%&biFr6iW5#Ta1PY_+i^gQXjJwN4-0tsj!GwcG*c;nt;%g}@{Ox!WA_wQ ze3GZ|hxu1+eYb{d6v36080gH8_Z#Fow#FX%&~#x!9hR|6d2>v-pGk}ka}v=62%;8! ziz|u9f2`k2amu$0rK4Cc_w~1CvOB8LRP&CFz9iQ4k#E+h)Olb>gR9pf19&y*-c_-TEj&~q0c-EQ zRWDl$1U0Y7Qla@|T;_6gVRXf^A4vKkfYkKxMk2bJ(+JwD#F51i4ZGxnwd6*tyNnG?$g(&Z8T$3jTbfihq8%RZ?{A=1 zRVL+i5squKd+T;*s#z@&N}<~Ew@t;UQ2FH@VWT1gFEH!~c1~Z11H|#qtFxkwj%7dj z6^?(kTA;Q=C<^i*tBD&ayDtRUZUACr?}?}F4q30;a>6Z5rK?CCMO;pRcjh|gZbxaN zlZYsJiw?+ThSSrWBinI;-7nbTB99le_sz7r@Cyk+D!toFW6dRe!`G%;pHf6vJWaC% z^`;A&*jH+MF2!@SY8@9b`pa@Fh@=1lfO0@uAyXP^MxSw*Xh%2kQu}ol#mx=;gXN6>hLXJzzdiwTi+i5D-&McE^;NEoRE7m)i zq<6)|OEvLYYT=v8|A01u^X~@#C+XmQ`$nA>4{I&hc!a+lXe{$p?ZqwI9m-_@g+OLn(8R6o>_)?EAu3ji8Cp_NGl+Q@VqTb0 zZS3Rx&x{}D05E_!#oz>~^x^=Hz3W!V^cUzCCj$|PME7JYCH>jDA` zTT0O(XgGF)N(gv1FB98gJg>=df*s`bqiii$bSsZtv)}-oG7)S#SacB`+dTd30@a(Z zf)aI5Kh$Odi&PLL%>Kg8b5|!yY0cckfAh-27VI0}T5D)h&4Qm_LlMSo)zRxZdsu5h zG%zW!_r_<#!g~Mda=g>%mkT?w?->YT3*Q=55mANG``B9~Ac(591(rg%)$iguq~@l6 zZQbSQ7E%NV<>T0%{CpYdU}qdh5L}Lp>-d^{qCkeA)94&R2T~(lS~w+_Sra4(qp`STbDk`(Yr2ZF|85h6{60>8(aJQuW-^ zb&3}UfuB43E=&tvx#5?hZtE1n&mqWG%kE{(X;@?!-5^*9hvt^Qh}r89rr%6sGgQW{ z9#;qM9~OF_Z&$r|S6F!}sqpz_2BPI$x2zsPy1H;JZey*y|DmSWiC6!mkLO~BWBi69 zebdr=GA2BZoTTIxvm`86b6b4((ETDI$E4O22H|?KZg+L9UB|Mrn$Im>YBktrI1h!s z!{VCeJo|0a;d<2cAVpP-aUn<1YQN3Pu=3z6s1-phQ8|s)G#Ak1*jW- zyC~K*K<76&-yY_WC;u`*TnKf0t@koT(FiWKwi#W=wl#9`&F*BAeM}AbV*81n6qxhQ zgbo@`$~$d6X_Xc0bJw;(1T5ak8CRyj3B126_siS03K~ZJV_MAZS_E&`(7-|RJ=veZ zCpTyoq<>$*65ja?=`?WMa>#oY!4fR1)hL-4{{atsj#XTn9w65;oe9QJCJL5&$nX0U z-j$(lzw(e3f6-*we4WKaZC68WTYvSYLW)l86ep8T&X%kf2P8=-sb>zc-Ch1E7e=;2OxY9&ok2R@9@wPR? zJVH1wQ7e6~gJ5aFFej`*O}XlG`)guYhEJ%wyCqD>1?5%=Wd51<+k4B&Iv<(fZq1e7 zE)rDaKGie^T*))Zo5CRi_OshkG<+90ZFP#-kI}0?4>sB=s0W(*NNZw?d*0iqDSWt_ z+qB+sS}*Nih;@=2@IL>`XU$7*g@oOngsxCfX_u)VeJL+0dVZS%Qnd_mlmH~{hy@Jl z0;F2zXvCx|Q^EJA`GU>_v0xRIPG+RgH<%S{FVI?#e~*bu@9x9y(;F1ey2EcrdVJI_ z3!nay$GDPnGNvQdJSn{S0Ym4QI9Ya7&XazB;jp6IZM}P}&E*%YAww7Dr4!X!%nqh{ z`rd$KLQ#i9Jjix~2QXin@{3dcHCV1Y#IKDsj%bhb-RQn_sEh0x7yjPp(a^J`>&ihIe^a9&6$`~rtqHG9%pof88Ih$@m!-(^i&!g*04$#P zg>%#J22U^_?exMkp<>r=&n+I#+=%$gEE+Va5lD@%2?~qpQp*!t%VksDfQ83M2a)F` zG(BT?eV)kF;Sc8K0fJcJhe3Vx_+mc)DK9tZ6#ik;?ng=B{`i)Q z#vGW+%C@!&i(!tI6T+~5)nrGDAWeP>$`HK<8M~VE<7W&|gzE{)&wWzpKoaUyJplux zFrgdadl*v~H!scj=XFC$Vg&A9&3Xe)HZdUlJhtQcVDQ+~--v(A#xA(}yvOt_d8E*f z8%PJG-(d9XPZZDK%;&I8`!^L&2sYn zJG=JUV6Rbcol7j>nNX$R_9h}9eEzgW8gvnS4g2Z?6BZ^)bJWwO=KgYMo<8r+jdAFV-6WbF_PbB&z@v79m8& z@Fd~G-^T|f3Iwlz!g#E{^3%vD+}E}Dk;*!$*Ga5=JPjA_!owfSc}{MSpL@r6X@`KM zVq|~5!D)sHa@DG&#fftOJ5+B}b1;OQ_$S>Y-o(fC$pzxqB~@~5iGw?&j!jEU^?f)*Fi*6Oc(Eu)YCZLYu;L z_y-@t#*6H)329d4I{B+-T4>!mw{50DJ*lU1d&Dunp%45zxw;>8SjZ`$%~I zqw97VohNz5YtUN~#}&(7XS^>)uOey}t1)-f!Ew?Bo>T60Xc<)c8e@N9?@fhZdB1&Z zVrwsz*LZFx$or9;Cn!N+8ZY%dqc7N~ZaH*!!6$U%cUH^eQ_)Kf|&cWn%5G7Yw{iGA8H7osE`veD)E25a10h~k&uHWpa zA<_Tw3CQ$y8`jqK#q0x$$lc5q@6v+@Yd38@gzf#58ULJ)&nSEUc43xBuV*Y0-HZVqc^%@=*ki6+GKJCum*N<1(ACvQV!e|y40>r2yKY;jYjVAHcmCS>EN;fc- z)yd}(tRtD1Api)@1%Mts^UmIRM~soR&zlg-2I1!dfQ}NMaqTyHWxFY^8|rKaD;|&+~c~xTAXtkAbX#7hVIUTL$i^`vv!Qr)DNRn;VMJZRZ zV`7?nfr%hiuJwS=U+UN0u+~ew76m6~VEM_hPWi#;$iTl)-XdgsZqL$&4V+d#wJ-s` zRPWHCN-+%jL}NNoM&D;4`T7s%~+~$^7fl4^DO5SAg0$-m1GIVW3CxkX5xhAO@_sKD%?$pHbZ&K%6yh*!6i1Sv zAJCc{$acY-&pa^%X$3C>Jj}~@pM5*H%P7?E^5q{;F)YwrqNUXPNDgA{`+JjU?<CC+t5DKQN6|cgZN1LG8|>GV2uty7Ts0|EJj6xm zC_Pyqm{(G}?=n7k@npJ21(E}2Ell-Kqj!UxtMPvvW}Y#%(LKea6`MC@^}Lf&rP|vR zwyi(r(BLMau2AVJ7fqPZ_lPA-Ff66`3luX12}_r1C{-1V(F|9+2pJAWi)4>=bon?O zyk`f?UO1P=ci)&El=s0DHa>n=6E@1%IavL^;Fxb;n6;(zQMFbC!Iou2veO)^OY2`7 z{%M|T)jb2>hbS`vaBv!y5QZXwAjjA48c*cA?D+3V%Fm7&9VXQI(t)Bw$*%~k{`n2_ z@oabGi4)ynzF!3*E9x=TgJD7&;r>z%CltSu*k429XLw<%WE(i2nn;^l!`NB(J!tw* zsM?KX$U7kV^+#?~n)__vDy^Pmmjn228;@}}2kxD`IvuZdCcy6ky zH>_Pl!2Qu=J|>64ygcM)s(ZCQ-j-rgVENkb4vV?fgfG3g*j=gXe;FvL=CV%#5vFP+BSSb?p2?u{eO^K4I0!t{E>_T|W47@?T(Yu0mCM6mILfDpp=+mFbkfXQn*$ zoKJ0R)an7d(i5R4H?sRucr9uyYd-9uO9_WKa{6Jg@PiHWq=M$Q4FC;_V{=e-L&;ZV zv23YmaU#;N(mX=WWs#&MQzia0UW=;r0brQ0Azd-rJeSPUBv&P>k8{svs zA4I8oZq+=ax<%DPua-hcGI3qpS(Abv#}wiop*d9fW0AFp`?9#=>^1R+JP)xGagOxG@jFD>~cmJ+6cwA^Sh%u=zvz+I=ivY8Bm9}M z3ATzB;|;1(RBKnGh6$ln@^=pJ&*U8$|_z_vUeZHO7wec)#_ljFh<2u@VcoHDhC3UOxcCA#5U{nHtNZ*Ncyd zio~NjzL(#0|Md6n0=(lZ3sbr}AAKqUqy`8i*~X#X5E2#h5(v^Sd9*p{dK>v8-pDTR z(G}-3Jj30{Bmk99?DSbe+f}5mqD(Gb5XJ&D6Wkp8pKfkbcqFc3PzTF*yE%fFT&6xQ z6moK?J4+Q{-}tB;;hWG&8eRN|r$4Ve6+xIn`JXg?+jDk(KJunQl!7P(MB80oY>OQi zfWq5`y(#fxnR5a0B;B$dFK06kBs_W-z zbxSowSph$SqCe}Kn)d;r9M(_%rMf9TUAwPL`^Ci3`+dUhEtD9`(axGeT`6G)gI*)T zR+s9ieNFvqE&i>zkgW6^6Z{Jmz38$f8ZZARgBv*cp>1sZp@&j0HRTs+QsZnR+hT5#e z)NNs@4Jiwz)C+kgs@G54ZuXBi3b;QsvZ$vc>pJaj7`DIf(6um<#RTP;o|M$ox}N1M zOp+l5f8JFotz%pJRL!1$J2G!Hwp|5dP5G~Dz;Nj-TJ5%S$u``mT?4yB8X;6k0ElER z+lZ+%8-EESeXpO{E7f6|+rRYt_Lzg)3$C6_0{&MFA#;v#EDNp)+h8PjZLTg<>aspv zf!-Vc0msNMG~4^i7e-&rsFtIIRilq7sq>4F_c5WKvE6v6KB5doEk#iI8ewkdCV-uf z`JuXei}rEkIMMUAPPE}F+ta4yz;3?)K{!T9PtILJeX`n7Uf#1aJ>89u3m$Q^A9Jx$5UYzEYd}0+gS;Ra8dzrESlO?7gxI25D@ey@u5T=4 zP90pjw`gj`USkMbQJM;}vrMGGBum_4;GzYG@^r2&#ZM!zXx^uoXX$4EtALn^J6z(5 zadGh$y5l(%^SFZH#%$nCEw4`;7DmXyq=!SPx&c11ZbXr>5A)p$5X? zoC)_oB~&`G=LjCo6Xr^J>ovOXjB7bLemviRX7;V5Le*ThS2cyLXtY(zyBLOR@CDJTvZW0>LFuniF&?Jp?48#qtmgr17K69e=W4 z{O;l{|DHmgqwrmQ>vf*Fwv0jEx^8PF1C_1WjZFa@Hu9$L>Q%Q}4?FpbxR!t+wqEPO zn~D?RLMEo(4}a=AnC$goE5;+te+p7U!y{FPP}V5I#7Dn7PasGZ4O0iuh05kw&C%uy zSEnwi+WqvpcuCBdO(L!DSVEv*VzY-J>TJ{d$s$a`Kv_1)je8_2c21RRxI*Y=hF0{s znsEnz~#fjQ}AT4Y!=>zX<+wi1TZP5*Q9ZNJr4z@ba(zM)skOSz@g!D?_H zkv}0KLDdHTGtbUo)p%sI76H0FWUK$A2BE*`=jA3S!ew(EoYU@zVRyE=Y0iLi_kUmJ zqKe^&2my2#pT)QJBt>-{ldwpR%{NKal1AgDHjgAPOjK^hrnWU2Yq zxY+JizfIXrHwwtqboVRIG8vuR;rhzx+7o{+1M%SBSOpjhU`SvGXWw6k#EGG65H%r- z5sj+t>JJ{1>KtMg?h&NlZZFC=)xQ5u6u@^2zSbU+Z(C-ONBcGQR+Vf`7NJTAzeN4k zQ|C)LB-^gQf7GqI$8JwyCXD&V=K}Xwntxc@u_LvT*_P~RIGV4ky?d1gNygpc@Ui9Ep>I*XJWBU{-PBoz%EgW2gc|WhAZ=o z5PM43h%bNpedTABI3=^WMmc4Q>7V)}EG40wsw8qQRveH}!3T=op+bLph2@O}XXGWn zhqlFg57xwdj_s1}!hyYP*dl*d)qd8={E83!m{1v38LmB8?NT+>FYRreXWk%QJTJVu z147iUv30Q9F$`M%EXb_3f&l2;x7aXS3Rq6wyQVOfPZVgA!eGems;vDHtM(i~1pS5@ z=8&#*>>v``i5eiOxe^H2evbcxfIO)U91%AX}HOB+? z`7$s3E>|5j1~Vw414V>?EjQXL*M>oQv%cupRhlyTF1g>Xoz#(UGbwJQI)dC>-!HC| zW;V%gy)o74;CxQ@4Fyk~3nNf;mvtRFd~Q?!_rwHoPb-x!Y+~{J!=;gq z?PSH}$$+f8h6)SGera4t%j@->`FcF~nb%fOQ+M;CQE2)A+&1J{ zBoCrTsZa4o;0;@$&7<8~2MyCAC4XVBg+Tah?|3lxg;+z|J4f>+!&f20wWSoo1%34h zb9p_uwiSYb48qqSmxQW6j9ii3w4mxK-JG}{2E=eS{)*^=R5mLFty)kd!oa6%FNU|r zCA|jU@~-+g*&El!#|)vp%odNVh6~<2zk}hTGKW*&gUINshfQ%pI2abgvNvvAo;5Na z=~dB}p1X#LXZ(&9o{-LnQeayWSj3n@1LIkzJOo#afglDK8dII1n$_$>R8HcwwXnZ! zL)GT0xLnla#WSr9%jdQ%o113v%6BD>5UA%{^Aa}Ia1wKFzM5zB0MuxP4QKraU3Hwfq`x6}x=< z?NO+DkG;&%T>T{*oA1>w@*fUJda53B);?tpP31wh?E*5Xj54bNA7)A$GJ{i;r8eza z*qDAa((XP7J`a5Ks< ztLjyd`rgmdp*~@DH&A)ynSV|r*?d=llKM_#(+;&D&VZh^fzGS(>Z`rp!?2?(noi>) z_C@gR1n0A%EyshyOTve$63~~L63rzB9Q^TC+2u9Mplef~dt@Pgb6&oXnh~souQ=&u zQf5$bSzXpVop{rZYc^@Ad*`T>Y%$$H-=sRusxsHj5Liib8tboBS4&p+#P;Yg*%W6qk1K3v%Hl`uq&T zIlG27L#?k>5KX?U%_wlpm!{YGsVqzHh4xSzExd^ zx^VqgJ0B5XL=F@t?}5N8A_xjWdye!vK6v4ZgPEjF^*Z1j$&bnI$;O{0OXlL{7$H^n zSd-5{OeVuVf}0dl>bmMBGx5~WuYT4Qob)5Gft##Ez8?dX8@tew5A_Xtb}R3z5pKYHqVSsSPMhE#)7YK<3AJhlr1 zX5EigDCiyj{MS6k48qU_@!R=s*k8pPNtoB+H=dA09(iPkcJYh6Ld2mw-*1?gT6P3E z%L`%)M6MuZRfhLtte)5V1F{Z99|~hu{F1Cpk5SD}vHoVZ4>)9y1%UYxQ;d$-sF&2M zV({@RR-#dI*S8AxS}4AE;Qc{bTQy6Ts#Y* zy0^$`vQ?_pDTr)0af6QSYsn%VlA^f=C_$Kt&z?W!)g33S-hRLj$r8Zr>uIB<=S%pq zr0e01+y(d``@9_6`rXV-y9Eb5&w75Jc-mE7ySY5t#~fdZhB#g8PK7qV0f^)p!4~yn zPMeY$V_IX6y3_n7RIR{`x;b3UQd^K0xqp*tX4l(eE=1UR+i<9pi~i8ux2JrCbMDTD zGQU_*4C+mfJ0;P7VPMigSt|#`tF}weD_O^pS-#OsVR((&V`nvw>K?LyjXWr|q=qU~ z@SuVX_IB!kamQDDpMkWSM>Td^Ch^i<*F18RA7^*2j!1}!X>*hu+?)CR%`T@1-6u=h zvwX#{meTz6xcyBHeJK<5$`?X$U_t3&-x*@P;YI%kmlO%C|5t#^@5@J@64;14?ir2! z6-9M*{dtbRg9VMxRm!ki)^|RW#{_iJMK=0c`kgs2xRfgGTA>b;f4xjpbciCPbAqRe zEjcg_zI(yj)__!lYv>t+QoA{`iNsv)8P4gZwiRy9T~y;wDx}aOpYenD#?@;BRoN$B z6j}SF7aqbG`Qz%;t|CW!okm1%gwE?Szo@s485Km@JhaI1{-fKV3rg)GeyY!biqP`j z-xW4fTCRiI@3`r}x}Lg`213My2&1(xsfr>w1X1v(Es)J$C${;PPy6v$SbLl8sC{v^ zu&29`(%61E`~?e2@Jqha58*ZZs`#4xVPxF-xxG375fA4|a{VP*?^-|69!7lRmRdf+ zu$3J>3Dy^ue{O9ifD{_{HlRJq-I^Qg=iLH=Rw(zr!w7mxp^mL&RGC%a9Y%i$%bfE# znm493p)P(&%oQUh8l3!UW%BTT;TDWQX}wB$q#K2U%+rA^+Q?Z1X)oMk=2WO1!fa`$ zj2?}=e7?MPdS7Ew5uOW-?ae*?n8#>O@*j399s%LJPKOAjbj3x|{%heT_mAcl>|O@(A* z5+5GpahY7h|C7Q1MNzVl6xu363mse^w_b(MEbbk|mp+tz86|}c;#|5tVqlt$UVmp_ zTV6c-j6~<lkHYtkWHpl}C6pYwA`I-g(#HUVt!jcl zo5FnoJ%t}#Zd0F^ccvob%A;C`ukL>o>QR#X@hSHA;p;DUl_zp}TecEB-cv?>y+?)c0Q2N6yxZmvj z&4=tP%)e)GPQ(~73PcKc&!$*Og?7ESd<1QeX$z8*`Ho;gv!X>G^uJCw*)pJH6-*O) z&nk<^x$AE@}a!+EVI67GU)!qY4#NEguVGA+sBnJOncKdNi z&G`{A51TjkC3dxfrGS276k3piQ~EKwd5fZd+2-1mEGt16i_*ICKizC@Ycq%6=X!pY zn=^XVbsbiT$JuGe%`1EV!v%7~?5*mlVveeW}Wk0ogRG|gK4n<3H zXUcd%EEzxeq1@2~BM-J$>0(4~i4UdWnU)(9OIsK-{A4){NJ~Bo9wenfu6HZlb7eD& z|3nFrUg$^iJ=f;F@|c5jlH$;gh=4%dwK;xWdkVWjH?LCZT`gn>PrN4Z{On#T^$Wc) zY$$aKPM#Ag>B5tv2t)fF5pJB|4q6)l08zLjA{XJ*6sk%EZxwgaGK6`F(!Htdo(Lb1 zE=*-d|6xV@Zoc$&@0Beo%sJ$7Dp_T$GiLBXWR-wR+IYO;aNlUNImDxQI%^-!q-Fkr0E;YbJtEW zO>-vO7RfDPggL=79qdHA-`}LUP(Ovn|McnEmg3)wweck{I#L!@KhWKMarWFgxssZ2 z+}rcXc0tP?jN^UUJ{#NXF$`(0Wh&&9a&D3O#kEX)LOSTGcxTzkt_|~)(zkR>)ut}` zKyD$(EPU5Zqx>oR@DA<=%+^iv0lMO>Alx+Y0+0?xe{z-Wtl?3!a~`|v z2EUm?ynu)q`1mOHTmTzFe? ze0bVZmW~MAK@&w8$mWPEIWBOc2*m=mf9n6W9E6r&tGxz{#X?ws`tAJ>4_+qI@@evxUH_}rD+ddt6djLf+s;(+5Xj%xfA?s+>OnIr`mPyfyUu(-bsn8YW zIz#uIznd8*6)LhZWA3b7Wb+{HT3)M8%<*qBEg%Tc+P) zHb~;|onkSZB}2=pWH?i)9&3xc)zaOfn^PF4vfiq3vW~eNY))a;@uZgU=cQh>OMB++++W@{}#A+40qcd8@6b%Ix-N_@>lI*2K6q_;BzfR}80K7B6Z#L4bY zl;`Q5=vl+u21ND``F~wPi>y@!p_^z@gA9eLVg{Gp>5Xe%tMxH^KJ8Z8 zS*2rm;y3MRe z30b*ech7Qbe8vM_?KUxniygt_-?3ZVJrVuuEY{9xQ?;iU0rI2$PJxM#Y9{&!owkH% z8R|CeUlzNvh?fK3jjn$Ix}U&Q%bt$YISS-%(7DdpT0rwO-m)667Huv(oF&&o(7r5S zKz`7XC`yc;zNtU>c5;a7RjM@s3dVA!wAKX}e(zro;Sw7KR{YUnII8haGZmr+C7G)N z^&b6CdkcPH%Ba@3oZ`rT54s1$L{buZK{boT|7o_Oq)!`^*=MO-=>V>cRzlr@}J%=Du45zt+Hl}|I9pQ zLm8zs^`|K4Kg$RLQp!^!;iWwPnYooR%CBbIc<(>U*kg_&m@|=}vj3SmlG5*G!}I6o z)&DHxe;f4wiw(Mq1-_%yt~*o8zCHNCDY|azu$;g6_h-hm&P$Yb4JuTByEJ6}t3yKQ zF`2^8o!Pfun56WYm^eH8TLffke{ev-a>q}ba?U6fF)n{A`^zasOb0pB)M-4Cge#Q0 zFhRXsyRgZ6_w1m57P_0q=_c}Z{P*9E3B9Do{YpQosmhjBb*}YD^$O;jS$I|!1I{ns zX|m|8|Frb}EwGYHqcn%e6th0)?)^)KhwkIk+$6lB^(xe~U^bBKgb#J?lfG zo!WjxsRD(moM{;HJE=FV>3Csr&H5~8=kEgILaK}E*8g97SN;z5|Ft!dL5m@LDk6ns z5PguwQcAW^2{YEQlrnZ9dn2+H*$YD@WNpYU8X_S?_BG0qwX7LS&w2NKuAaZ)xvuYZ z^-Dis=KXq|bMAA_ec$ik)s|DBIf6@@@!|<-?hs1&IpQSIG7b{a`%{E}8-G10oOZ|!!qU6u*hmJmJTt*9EKalwL_r_aCM9x&awFVDF zlQgagrW%hUAlz?bUDJIp&=_GRKa}fP%bD_t*XKt~TIy!%_V?7pk>6V*jwv7`# z^2&c}H6{44*Oa`HW9|09+pU3#P+cF(rFoCH-nzoLfThE0Wokf?H)OE=B9-49Y^LwTIqh_BUwR~i2zK1n7i;cT(0=7@< z6MqyU4Y=WgxwM3e&h(6GeQ(A2ce?)c&n<8&^a;e>03@rCGO3_5|6?{1dB|D3&b8h2 zC?rCXcnZCQ5uJN9;`DP*&?%V6~d6BxUPKp$&xlDkyzm8Lj5UU@}NxhomAMHKT?*rfhDV21ZW=dQi|y%nQi z>l|r@=$r6zpzKVNEv=ffPa>HuCFYTw^i)T@fxR*OWnM`_OhC{$xzV82B%W_;(l;mQ=Ch>%Q)X_1L#)p^T7hv1Y%-Nguofao|pu&s46h!*k#nCKl zygJhkcL4#fZE9sVm>aD0drNTQh2@`z$&d$rg4)#e(4#k@R~fq(wuTq7azH_8f6zMIV8lom>ZD&y|_`G@nx>Uq#BFQR3KBN4-On!R>bLq1XmQCP^ z_P<%HTCg{R5G|fl|93&(?u+cn##4c`f1r?9y&T7Fq?`p=`?8vUrw>@m{GOsyiSU20 zwdkHXIQ9TIOu721ydcVs%~VL|A|z2^uYq`xoF|%s0nCDasw%(qf#1uzzn2BbLK61M z=-hq&zuvU~0g~1ZPpmLJw(Ko@fT6)3_vP&F^)+84w}0ySp*nv~ioh7Z=bv2nB#sTz zOC5;=s6)sS#Q9tKs4Tkxb+7W~4@7i(shH-qoW`%HPAs=cpw)ih_A0=mM&^DAR&*1> zX!N0xtsz_T$`@wkGB-E(ILjK2g!j?Kb3ru0!wq=q3zITXy!Q=4BDpp6z_6ktuH-7d zrIb7rT*p-^Q)-bq^lV@_!n2yamk}zj_T^T^k_ZO!^%HCs83PCLPWZhs9`!UnxVJXR*a7)ZypmPMpU;@vSU1??c=N`pLqhL|MF zWvu!Xlv!1M$=AklzLC7^h_o(0WU^^Z#;uBO=6Ia6b*?p+=k2fh7W3_K^AZiM z7+g+H@Z>@z0(=sT{ex$8h(jQ4cQ_2jD-!$hzU>e&H3%tuMoidfjW=;A^ut&R$BdA9 z{2PK^I4~ytW=j2Xnjkc{Y9%*o1<3WRy+Ty49cD{F6&t&vl&i#~H~%H|S7_=@S0j5Z z0q;~B^W_7+^ZeVR{E3ED)A}tSgLxxMIe%6DLHd&gzA303dzZO&wzxUq>HwXEhjk0w3(;I-atKCA$XN{5&@9r4vl zy7u;A)CL)HkKfI7g|FWj!)VdPZw!c`{9fI!Q@Umj0MkvO0i7#Ycxe$!cm?q*qF5M2 ztAK(v$chb>Y~be31yc-j+nr05tYo2mpting?_HDPrlSP0ceb)uX$Oc^0tU?5@+XfL zma&;b!7i5n!dn~zInPN4;`loTr*W57(f-h(GmHZC6z1eOpH$1tWbf`{UDl1!3|EO; zv4T11T*Q;<6$c*5I8P#Sl!uQ|>uTqC$f^qY9C*v8$&(+%kH0jPZr@qJPN*y5bs8(I z+m!)ud6OUFWBESi7^KyAhgYetEZF%7j^hg6kA6NMA(U&SoxA|?iNT+rm+|(msR#B- z!@!0MkLGT|OvVvvvi}=k z+PEsMRP}65;tRoPLAO{#0BmXu<)Tx%?I<8Qzk3`-D!FP}$=7T{pyF%5WWweL2EQ$y zE*WF?$wsMjt)h9l$wmFH#A~9w@}ujqhn%lmBFt?CcY5fp74A6yh7xpNn?c6cNquXv zkG+%5wU)scZ)G<7a$4_F#k{=!RqdF*12)O+Z+-+x z+UbCAjjY6tT%mAU#XG+FPZevnmelHB^^zs1nLI~dk_ZPkwl-`4j1k=YoFkQpJ-p=W zuWNj+@K|nbuf6qmMJSHtG$sjZNoMDK;KOgPUDDSb=ge|-Q^tKJapoJl{TK&doibK% zeznhQ-*QbXbPITD2eW%D6ohD7i9+H^y$VtByN0f9p1Loq+~Z5%ffKy;Z=WVg^vf^A z%iv}daO-z5#(y<_&yAXq^ZP27h!ko{!f_Ow=0#$`1m@6;l4K^% zAE9aA?)Lr2+!=}cg+Rol;IL0ik`obniyi?@ukYN?F`cuWlMkk!&UrCnrQ{}xGr8_v zT7G1`AVWBLW=;)NK%8qZXg+1gDL~~dGhs9+pzqf1P$xdQb{`Fa#*z#4x;V4gYcU_9 zO_R84Ry~6+?-K_BIwBNZ@imL7GBE;2i6M7)j7t&+Dt!91d8F!!p?RoweR|$!)%2<^ zt;B#nm7+U-mAfdXK6n+qT)uvKL*6%rXmLRB<+pRLI_Wl3R(Z=<1j;5Qfhk*yxPx=} z#0kT4%|mz01HmQ1=$hQE^Y|<9}(9s zFVlNWGo}6;r9IJ0Ss_?lMc9YwQ#%rvd6aK|lxisYdA?Xe#qAiXf|acL*eNNZn3#2x zEybPv$6KCmPV$^fNT2-Fn;OwDuY%negH}|LRjk|1SqDWG&HLM+Z7OVOc3T1aC0>=B z)hCK#Y$JN0R9?M1IK^kbl&PlCCR5~?zYd1NaZ&ihekuY&K?aq1THnxb{ zTK=4b;J>*e&8b_nHr}P<+1}1a3N85%UoX`eAW4l`JDg`e_u5jv`_=<4x8rF(N{l5> zAce}7>ZI7)L*S}CX2;2(v=knMQb_r_qkB11izLY72hb;^&M?NOo@!Hg-BWjo$mhG< zZlAGeL{>dn1wIl}7p}r&J``9eTKj%lT(ueRD`E;KTC95mq&ulG8%GZj@dnsF@W%;f zc)is_7ID!#L)g2{FpsrY<8{8^{j2E3%jUtv^ZDV5SAKyT(X#~FVV5}{S;o~vkOa57 zEj@=d&>(9qP2$=FbycJFmLVjvDv6ps7l|078LaRv!En`JnViTEKzFrx&r>y}s-~Q> z5teljgaZ2sWC#^4T!?Oe5pB%fRq4nK|L9fY5V2ryoL^&;LTG#@l!7K-j%h1i|dXthnwVq#VYh%4;Tqmw^qv@bWlW68L ztL3Yz%$7ZaK^NkQzxr?Qojxnj)T-N?8A!`V8qluzk)K|i_& zCuV<@XbP1`2`6*!cfM#q9bYmwVSn>i;d^!Vwx?Hnt&+Y*;PSO6FCQ(`^ zWHg%77>gk#uze~y=nXEJks^f~P&o;KIxAcvX1T_%p zj1Z%H6oigMiP!YtVZJfibqyI1ZXlXg?mg9)~#GwGfSZiXfmm7jpD|fMsRvoXK zzb@(BH=zbCgRxeIhqYb1aBHK_;Mc=FtnXvldsX3~RQ671E%iaN5FuAtg*Se3ki@Of z_oK8920|yLYVABil|X;AX*}Ush|V=0p?A++kpyAg-K9$CR&|aEyLI#D_ZOg=wb9tV zWuY;XZ`-pzkC^xcIGW`B!>c7HGzUAjpfNr{iri5DBub@pIjXz#O05{JP&$}HW{uj9 zbL&#@Tx*3odZ(IJRGvyg*jB$-EZ-S+w`=`KFmDF}k%U?USDxu&Y`&#f0SqWt>#@1y z4*hSBag@-x?03&YvD^nBdh0>T1v7#_txewh7UA~~(gSmxvKx8Rpr!Gh%db{#G?E(A zsYH-mkk9x?`DflGE1nlt_g4#@y!-du61iocFKa&*xYOBxMpLFBA=hPreM*p>+@*Tl zUs-@fJzJgFXuezpu9j&t$0yrfL#{lB(n`rHz)f6Ko(hmW;}Y~?OyXOsRQVZ|Ak~cb zUZXb?8Wbj^<_xy-A<+$HF!TF3^)$%QJ!c;Zc1C2+Ev=PT}aYA??o_LxQt3VGIQ+xn!YXioDj_Q!cDJ_YqZ*ruP;=8X@`>bSw4wOEi2 z=>-GnrI=gSw~ZT*%%29tSK$K*-bOkVaz|#!DVH`0VDA{|`DE}mkDatAFMPpQ1}9)@ zU&Apt`!XS4`mu?p9zP3ccF9(wnPpy=_L1TA}nb!MiUS26-!Ky^jjAGx!qK`z^ z6T8sZH%ybblRn0|3e)csZ=Sl?BFfAde_FwY1C--cEbAL&bz~l4*VUO7!+;r8IBS^+ zO5Qh$7l?f*W%sMX0b%UY7a}(d4Lm1PI*o~@>rI9ZLmAsc8P5;5I-11tRa-lI zoL%fKxz;l#7%OROd_g^H;L#p|@cxIiF=1h9bc=72mwU=}J@|XFs%O^vPN0A{{j(D( zh*&&gRO{UpN#iIzB|E7n|Az3TI9a3PLK(`c0DuE-wqsyT*5GnJq@A@n_W$HR>wG=iA!j8hOqW zk--7x(_-9~?p>P8m%_ZM2<8LE-_}Mi7VdndJL+;|+SdJ}yn*WFEd(gSb!bnoOP?;< z6O^O%$vySx)i7L>^*nXd{zTyOQ^GLdkxQBRMTyQJ)5dI}B7UzIT?r-RAhMSDqj$j~ z&M!Br(86wXJJzdqqu~3yoCYP=Y95pxT%*M38~MeKX!fHeJ>k!?z@q>!JbDDxtk}Ss z3qz5mdN&~{p?3GR%8@EA!T_-m91E;@%?6qUag3L_!+@2JEgV=qAVWkM(2Y$609l5!2kAIUW z5(A%Tr9_(;S`$4!EF~K*UEYjQ?RELwyCsoX)P_v1@R(q|{#A zbx^@uAAPnwlFphdX8K(-FQ@zMz%{gLLyuE^D;u`$JJqJ4vD3&4pQi)~q*U~Xj`G%W z`+?<5VkW=5$~0)0bzKpUE!D9zQ8?yF($@hBdBhM&{j6~kiTr1}U&Jqjg?D$qf znngbY!~S999Rab2jB`6!u;(UyS;ZcD{{ceBUz*vm&!~wCtHl?jMV!fwO80v;7zFlH z&k<`biaMT(7K^X5-;a+tYa~q7%#HrIR*aLE`noD~akZ)co!9v8CS+J+&!7EWnV$8c zIQj=fC&9+%BeM$863&HlXUq61Ga0a_iY*hjSg_p)nAD653_*zj2o#;ngP(W2dhA*R z_&dn{s&F4$(92wJV`nRwSOfow6~c-wBR5;<`4|?R2Vvp2yZpW9^;50L?fI>?Ce~z8 zgUfAZq&bY1jUJ6fB>7Xa=fo3l%lZxv{5hETR+enNe&6zdhm>sfqD1KY*5m5rg}}3W zAYcx9tmO}O)M&T4xUqe;gcUT{=;$aM+Jo21a8Yv}!YKK1$MxMw?@x1(YV zqw_UeO|5mRUOLd+)dJLb*#;x+n%P)Aom(%;+3Qj{P?eAoNj%1iZVpz|OJRuTvWb1o z*hLPf;Y?}=yBokoV5@wj6sZ%rnm=;oI|WUwmcI2(`g}7+iV#?f47kAImjC+&NPjtI z4{6byAISp?&|8DiEoI;Dx6b%~_&vWx&E2?{DA*d_rRKl5AndV!n*R@keq4Ak+#yT( zO1dJRAV-KixV`RxzN8JG$M$*oa5dZ>4R(z`ko4fzM~G&Q9dK#LZm+zDa{2>=CbaB6 zNt4G3mwsIcZ#4hnt*w)$`TdEm3w0YenSFq?)%b_r|L9^>ZJX^wX8)xsQUELC09NLgY)149 zys(r$;ts_97pZ_2SZiEi?c`cSllJt5{?gv+URksO3$`sSh4CX|muP^tQ-Kzs4d!2o z0H4w*>YBAW22}vN)O|jq!buOq3Ce=Kq_KEfNA(4q7H_+Q$k#JWN6B|!vR3W3r|@<+ zV@bk$?iZ2{Eff3PG+4-{U?^FfBmVa5iUcZr{MkifpX%}Jwd}BNu-aJ>PUBcw0R!7~ zJt9}s_-TRl#E@JzvmXInDn$J?%srtp&k&lW#xcf*{g>*9w}Q1HzQxQ!-y@?W7~e!n{;`Q+)xLMlHHv*jdZ?BqW8;tSh;PoafB^U3)1im^H^aI7p*6y$eL z{-pk0w|UsO*D!4762hIT7m@j`F-Z$UD3-`mbqc3Rx4VN`AAaS%5q0qV?s(Hc?<3Sf z^UW@pEX_<%-|bDRxpf!D zfo?Q8=M!Zi$Y|??3#CQp(rf3V!da^RVs8QUza5@<@t>eC%M5i`?XMnid*$Lg*~LYc z5uTB|VkNe%?cfq4OMUX;#P!)zEq;+~OF@!8qktW<)rfhPRZ|C=eOa(`0{gnnfCvcO z>6Gtaw>m0sSwJr#rM6-8k%%(h@y=H5W@yitj&G6?!0{oUo3wteHG4xis%KO%QO+K9VYjpDH_rao`RCgNTO-E9K5@{hTPH25#%jME zj*Y?A%vpK6RC@>jT0is1=#<-c?Yp$-*(KQ0YQ@o{%Q1LMYv}Tt6-i?c(f>%9W0|b5 z_;LBrLsF;ZU^Lx-EGCyvZ$Gdl-@uUnPcm?;H)F-lq7#wLz24aUWpU*QjMCtxnW%J_)iQ3M2PgtiX?|{dhdb!{|uX zJ2pajEf0n>&FAWEoOm`?kd5s_md<%m;AH$(6F`YoS%?6J9-oz|%(g0+K*i<>12K`e$dtGv1 z;?bhxi2LK;$qb|{v66E{&k~o%zYyD813U58)_cB_n(?c*I7cXSGfP?-xqhb$1{wS( z$DCy}@T${+wF;vkzw1Y-$wH!dQV91}3a!vXhwn#_!;tYU;A%8o{9 zb!+iL>pa`Z4&f!qsZ9@hQR4}6SG{|Qc9RWLG3=*P9X3W`G+rR{(Zl7WR(feXl%{T3 z?Zb8yn7&jD%{h2TuysG$;J_RFK(%hbw)W+rL!ayez&7oTdbWHVEFUTxW5XYDX-Qwr zV#YtYzaKS&=rJWh9ga23^;+W2tzN4Oq;>3dFSHM*Ep7%3hhjAp)7AfJDwMpZ?Wcok zN8U0q_k0XysMk2c960>ui(ditW-e!<>79-$gn~AOHg+&c{CZsV2kDc)aZ<H6B-#MT&0+6qWA|&9&4fSkFEF%|~8A#G@3SN^nHJ z0NWJbC$XfBH$Io)80`j*QNupCbf<3O>HWF-PM1t4^L%ppU+D5nY-O8xw4cff9vL`- zuj6Xgci-*4@?+CC0U4CJ%q%z!v0%$zG77e_ze(WD?H1+ZVEn@q{;32z+2qOwUm!$kp%7ysfB0P=`xkGC5`RScYe z#)20s-wg)d9gU7%xTSUcPFwSj?Y@!mpOd7ebTqlMun)1kk#7q5^VUjpTg8^Xxad}weux; zuZf`=qi4SBg`mMQ?dtu(9Fx?$P(_d7OPO*8V~z`;_A34QvWn+(=(-+2Tav%i_ia$$ zq~}QpW4ymj^9k9d)Qu*?>JDM=p?#bnLDrwX$iPl;=V>)6yfLFfluva=9uAX# z+q|`Lm++E*jH(IF$!bnc>S-%ofE53kX;V%L_kzE5fdT7V>iAY7Sk0AL^RO5FduD@W z*JMyDJSHYMm)nt)V*sC@IMrd)k}3CzyU{4Euw4i0Huf7FT;rYDd(^tj0exo2P*NeW zrCS@NEvS_bEQfW*L`Ep+^mcvp&e~}pPmZ2jHg?5mPG^vG3kAXr^Y^G}DY*$HQrZSz=c_B=}HSw`an;y=dUb|5dR z@#5#Qtc^W4{MIU5<0r7GR4S9gwQM9=Z?yJR0-MFNgo&yU%wp8UXhPqQ#XHn_J`@kk z-_SU1bfK=7G`F&*d009?@2tYJ`s^Ui=J>aqR=yW_xW|K^c9>HwuOHJ)FZ~o*y*Vx^ zVlibV=QHn5Ln`%`#DBS1$t~+Yf}h(n9ad=`Hu4^XV#e@oQ1CC^uoTIZ2Hu$^f9ZyYkejpPL%Hf- zBBKK`2FzR4vH#1Olm!M2Y3C!?@V`XHA();P8_!Yt|FS0S?m{8hB{0eT_cvFn!cUd< zQ}*xI z*on-V801U;zBsQ}9GQ1_4QJW^{TjRAtJ*WTIAH$%W@Gp%_na!dfxlnlzYplY59og{ p!+&qke?#nVruhGvgTDOU5%lQs{Bcb)P(3j)XsGI3$X6i-{14y*_Q(JL literal 41717 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 MX+^1INkh;71vT<<5&!@I diff --git a/Assemblies/NamedSubcores.dll b/Assemblies/NamedSubcores.dll deleted file mode 100644 index 724b0848c430878146d993ac3b33f8255c8cd17f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8704 zcmeHMYiu0Xbv}1yca~g{D{@6ql0(ZYiIORi+>jJyQ4TGOA}NWr9yDLF>$KGD?&Wf< z-JR9UtfY-BgO+L=s?gT1k;G}-z;*!FL8HP#?N(}Q6slXhF6zJy5GMuv!+8KjgBDGj zUnv5q-?=mUAmzF#P#FD@A?M6Jk9%JC+{erw`PFAgC!!GUTepa=;mOxN1wR=qfgQW+ z&tmj?<9nN~iNo)0npw2mMA5Ocj+sxS%|gNU5-FK*N`-_~NQ@nuPUP*3Og1-1I|J2| z<3xvrPN$z8xLmRJ5p7Pa5`9E>fMWR64~Fne;NFLus719k-)|-aVnjCZS(P?3-}l9(shF zb8xS{ovG{_DjW9qqZQ$n)_$IakYB%12_I@UDVOgh%?_jMI$tixdk>ya2!9nbYG~|Z zT@II#pZS7G#0rybt}Lt=8`xTSv4_4Lv$_cWOL@#;Qo$O&vkTDB{Pa(ny9K zQ_d?Nn&~g_L^RNKZYwOE+Xm3w=wRL#yD(bO-qnrH)f&=$hw~lAy1;7cZgqZILqctw zI+fZrq1I53L2YZo-6s&-b_i=WiXm!rbpvi_-_VX+BK+uP8typoIFf)0TeGe0rh$?( z++J|DE-|&OeQo<)vG%ScD61lB2qS6;xAr0>&`+)59h?)Sj4&36qc*~o!Ef^8$C#_Z zRW)xx9yN+G*Uo(w${$BUD?Xq=4Hrutd|)b%cC}=X-$6r};QR^|DQF4JhV|~I2Bw8u z!#oa64G~pSe)+0=YqT5BMt|(MgG!e_Y+E#Y05)xS)va`6>{v_v=bd{+0bASRr`5IX#%{OYZF3*}n$}swD^bA_Cd+IMyRregXHEY0t3=S(hbVMO8Fm z`fZt=rq@^d>+zO@vlC1ic1rzjslTa<1n%A*mM z`5mS0$q3WW84UkO!3&E1oRWM8UPZ|w=3Z9xqe}ioCHa8z2R0{dCx8?EQeZN@48*uNgkH(D#AOVx4QDCHV3!Wg&!#$Jozx zpBJYmf&CcrEZI&Mfn5x+4Ru(UHqbWueCR2R$#05FfIpz$67BR(_!+>jhQ1;u6X-@y zt-lp!uOF^roQs^o-lnH%7}$*}k0t+JVb87)8!rn%{}M=kO~u}{iEuqddW0q0eJrqW z*D{Qk`C~~At^2$XEh_9;dOh?_5vD#~Ai?XTKStJ01lS{y>mowm3$PTh2Kr2=FDW3&Ggi<= z)Rdq>u@b(f=vQu|zoa+Pt+2ot^C)ZpjM8?%7V1}UkAfo#PAK@Gf)6Wb0hvKI5&uY+!egRMQLc)$ zkq1Hfmi{u`O>xSGlC+BcQY2{&{Vm{U=$`<$&`$unN!OCJQ^C(EII8FmP$THmit>np zY1#zJNqPX#rH8apI!CVnMgh~RoetU;=?}H9(`C>vis$It+SdW+^tS-t*MBIum##5< zQ9;tVeK#GXEd4%Rp+7;EhJ-DChD?N(xGL(eJQh}7-7D95aZNP^s5cVdecq>!t9434 z?emV{Uq$RmEBn5rl*f>r)zpkNBu2Xs^KPua_tSYAq2H!)dY;lG#W+2R`z*^3PdakJ zI=eSJKfh?YN6oy;+ZIOT)Vt0S}YX)|YKOwV>68-UEjc%hV+ zj+x5I6a56887pmi+&)k$q)!acM8TVr>76uu#Lkp*axcwE$Cb&E2^!vejM&yh!7a+P z=Wn#*XFbQHN!#_t&lYW0j+vfGhfF7L7s`jN6y;sGm_uW_?0Pbv9JO;fbhhk*n>;8B z(y`K{f}!z8L6@0I=lT65E0@7mK7T}}7Y|C;;~3_T+Mcygo*&8Od=eCmmeV=uvS&HT z3Z|_5aoEhz{Jd2_w?bOdr0Fe=7cz)R(u`xC=9m;RnuF7>hZo91c1oJ*Ma~S>l0;eQ z&9j4)kqhbxRi1PTsy!vMaA2lfl(qOANv=OIe(Km>!ObDbG@eh%Oh#r#JRDL|B~aLF zD<>V53W(IP4wkGstlDMPHM6pc(U?q?vRQVzMuXBh%e9u#MqF3sQ@Qet<<*N;$&Q(k zdDA&r(=uZ^i2VTGu;m%Mo>A#@0FHBUAOp2t73Qd2Sg^7s$K;{DojoSqv||;QGpFRj zw7DR?@)Qcst#$H~q%=**oOxEY>i89#lMYHY?bSL~7^8Nv>{!{wk7ebHW}#f`GgT^h zR$fgi*hyJA%d6w6IvJA-bij7_fubNqBabVnQU!sMWRM=_%$V6MrmQ-hs-g<&w~*!f zu2emW3ka&)J~Qo^>66DTuga^37t!0FQh}J8%z(mm zjJb`euV&w<1kIn5s!TCTRp;eGFh$8O&W~g=77r72pD8FUN6aEkWAsvTeoV?D4fpN+ z*fj}-zhXJ^Q^mtcfp5WNQl$N+E9-I2OFbT}JN2aHiBMYVR|`e(y->|cJ@k%FFPaXV zz?x#EQL3)zpm1#GSOFx*D}m)NSBI^_DH<~iS?Q4NEdpAca&+-b3k|BSQp;T-*B=`{ z;$vr66eZ*5s=6Xqmj-ZxHM2Iz^?^{5y#rK_z_&5W%oeclT4}f9Zl&(jK->72IG z@-{XngIAp@-(N*gro1M)%d4j{)^ldA1l|!V?bxop;9)7x$dQ7XE4!9kT~sHr^aJC` zz_rVkT&m74e@$_34|aL>=G9)nNtOlArDG}H8fZ$o(&Lhxz)EkWEsqXZj_V!ciD;H` zo+{2`>2wJb+DB$=f4)sG+Kxw9V}sS+_isv`LO>pGg4kHq9>&iR$1%&)7mNqn8$VUT z9_p2AV;!2r2SIS77luCH#X1{3Na_%8$$iioQ)4TGM-@E6PuO0bf_m>ZSbS3o~ zg%UzE=m`>GG+J93jWN&^K4By@5w~J`M8xnS(zktO0~F*v)l3T zRu^mS!f`vk^il}WY=D+7)`Jfe@$+#RKOfWLojTf@5et*1#Q+7U=+nA%MfJQIVYlA^ zk;1J@*ISp~Y+bqmPaGqf;y5%$7ibN zlb&F&y$@fBb|(kmY^<%y9JAbF&MdQIZQLtScAiHwLO#V0Pe@|k?UelAP_}8BtOb+cF+Lhe7r+;8~Phu2SN{+m* zAWJw(=Xw&8r4*L82V{B1J}C?L6-v2W^YR6e%AdXqA$7{2r7sG~-yVJaX7zs@`{rNZ z$WN%hRa|AuF7Cu(?otMXfgPn#dbQ7@M}g8klqn~_o-sF-_eD|De_vDIQkRyq)z>}jkaQcJU!{xAhPGApRz^=+y zr}`!^gZ+^AR#)wf9^`n>_OI7MFF>h)PadQ!(6jJprKYn=rVnxZe}gy+AP4xVj`J}J zeR*|GD5#y>*Sxuo$7cgRB~(uZf%P$bSrAowW9np)R(=$rspe;;-|goRf*%caI_A{* z!L94tkF!c&^(Gp_mmi_BR5=Zq$V{)O5z-p!yk_`>o^QsSwxmo87Lw?&LE#M zJjifXmeUgW!j-_^0Q?!iw8zH4Ptt+&lgjtAGA}NWnJ}8o+ti%Pmyc-_Z zy4yYN?peC%17{10;v{XYI!hg|1!-Us1vqNX~26Yv9dc+!(+Jm5cB z2LPV(wQM&q^~5o3(s7*>FlE~?8az?U3;}sK>By`NLAI6V@ncZP}KiD*rau@CW_FuJ>`ZLI1gRHZBVtkPY_hI?kG8cc^7CTqT6d! zmkXqwgV{l67g*ikC%SP z+F9JrS}IxyY8@wyjR4BH4WhNJ>(*A_>x2J@QGXh6ZL6l+}Hj3L;V^N?M?M z1A2Gd6fNPN5Ou6b^iZHT(4No(-4IAb^!A%#WwXzU`j+U*o||Gtf|^*ruhxO<=n-^I z!>*2wZp%_0N59p0{J>IqPyOY6q;=`G>*n*li4N@3qO zHASS`t;%?1!%F%#-iRr5o!x?w&Ta)*+3Z~AX}AmR-c`-c)f$qx&G|87-C(UqM4g}4 zkYGE9PK9=LFdFR9seN@QF%ReNhOlNM(;|9z0&soD`VPbr?ngG!?#_J|5Cmkx>aFcJ zb!43G_JXse#MJhVH63@hc628}X$h+-467+rA%T91hSc06WE56@)MmIc`73 zRc@M)#}r4Ap=a-b@(T!P#Rg=x?xM`W2Bvb(RZ|A>9n{qj9ABY41ud@G7(KC~iD{u| zi05HNQ&{Dczcf_5HQI@Hvp;v-L50how#}M7fH7@Yl~B4dcdVs;_O{Kc6w$R>3^2*O zhWAc?Y_BL+2d*^_4<`GP+xxcnW6g55WC6blM>bzTEyBo8j)fi z35Bl&w^V85Hu@pUNrMz3$_3`v^~M#u=gEOh!MD6M3N zuVT5r5qw!h=!#(Y!SLzLeS?F_Cxv#A}Q!aUy?+av2RxUG4{Q(_^Fk4~<=EGkX8ogP@P5=wg zx=n1E&kIsoVOQw8!52k{dbmJ>*F}GTs6AN5PK2+EF#V*A%>!$qwOziXfF!S2LBE5X z5;Q25!*474)m!M#1e&Qu7bvbg3+n+RbT?od^((kb!4U-~6g;Zn2?Y(nHCPKQe@elk zf{y^|^c3K2^o(l%17MsUQ|)VjZFG&cVhuKn&xd;`DmDgp(sebz*OknA@hx#bZ4_Q` zif+(7;Rn$Uhvy-~GjzAu7b;LcdOb=nDEVDtBJ{iTZ?q}=ERBewc%FVlUkrSoCd8xS zRXQq8hyQ|pK|iB6K))~ew}4lIKO<8-9(apRiN6ZHjZ+`ufINLbgvH;{lc6!ut|-^U z>hMueUJpD=cTtRFFi9=+Cn8C!>CXXgr+)_AO#cd)AfY8`yMn)=;HaYCPhrrf73C8O zrsz&kPSOOROS9T2ou%ghQKz(&YNyKWi}ZqakvYS?@kNPb2i(G)`Zl6iG2o58-!)<#$gy za?w1qCo?yy_7E-n&N9|nxT;E(D?VfRp`=wV$X6c8GteG}E+c`G?nTc_$ zkduzFkd^cO1f6L!Wq91)SFlp^12kcIvof`vb|13Sg{<5|v(j;8a%6&b?>Ry|)`aEe zWyy4ku+pZilJcAAxPR_Q92h9b_xiB${#&ps3WG*>sXS3*R+LoK# zFD>bqDN@eR_(Pz}bfxp$-h!D;V=JFKBvVWKrR%W|bBAruTrAFwWV1dAibjj6taRD3 ztYigKX6`t~Ow-()X`!2yk~C>}OXF4=K1rH!jEC7Lg^XrlwCmwx(#lLpBelelp<0kA zBfU8`kkWEdy`jpJj-}dDG6Mrs}AAHJ^TX}g|L>9Y@pb8;X8wO$qGsBJBpnSx{RRNu-TlWxi}^Nq|Y zxj1bsO0PJD#B*z%{2(b!Q!;CuQLQ?DWz0zjDVy?Y9V?7cJ709n%+ht8C1!FvXW#uJj|IfG8rscbvji^RnA{4 z!}(pwdL$PRWVd~K+A~rokDFeVS6dO~6+X?k9@3ecF;ge$plzSzG*2y|HQ%OF%rr6mP))m? zpO((UW=h_|=3sCIs`CAcf|TX@2yuUYXN_zD*da6J*si_kp^&HLh-GApuIW}w>Ldz3 zFkT9rxvblz>e})vihHYjjq#dOI{}APTAoWs7IziXo>pBB5v^srhu=h6xrl}G6DJ`+DXV5pybfD2tC*4 zfqVETLAB^GupHX7YO;Y&p^s7=)MJo2iJwiU0cn+_hajC&{nJES8b_Um+#+}`Bn-&2 zZ4Q4RH`q3XQ)zy=%pJ>RBu+^Md~dV$w6>9Z02(szjOc++e645qiR|I)|M_&{{Pw=v zDHs=`DG(MFosl*X5N#W%^^VS9M8u3h zShV7kC0e@D+DsZ=+=5mnwxS&l2V-5D#!9uA47Ulffnt)ocD1yLpi;E~_h%7|i(A1B z#H?-}wL282Sm~J{pwR>^-K+#NOb%@y+L7G8tAAi;Pka=k6dZZ4 zB?~x2XM5t4g$0zh`(<&)J}IqxtwJ`tvauLa@&Dh1pgLbr=}AGkTfMK}n*NV{-}FB? z?DGX*i^|eQp#BU~M|y6khJ2UX@fu#=s{D<@r_GJxn3v5S!v5}m$w;Y=Q_OvL3v?_W zre4*r+aDMKzME6`sij6S|Hc;!{T4dQ9l-B_VIo{3SD&81AlkUAq&dKGnnG&=e`z}m zd;)Nv|5rEqPVnb9{V#h}m(a(5-&fWY#Jl$8?i0t9)U4Y1_F<>XVi&FK=Pc2s?geJB zFY+Gisy)(!9PjY{^HT70P%2=P2PqTu3@lo%X-UcS;SAyb8^rkmF~FbdI3AVtA;tIk2XJ#F=pe?)z@x14JP*IvVm@Vfkl|=F z(&D(?isRn^Y#G2^3eh%bsn_GrP#Su3YA#PA4wdJCviV4P44xq#xiUwLsZ-hep6V*L z52;vBLXQo93hHE5^PJwNKhdCyabv&bkzO9>A=PIDUbxDq1z21}1pd2z6`wzpHxiov Tj`K!cE&fpK`1PP4N(BB3EQ2W9 literal 0 HcmV?d00001 diff --git a/Languages/English/Keyed/NamedSubcores.xml b/Languages/English/Keyed/SubcoreInfo.xml similarity index 100% rename from Languages/English/Keyed/NamedSubcores.xml rename to Languages/English/Keyed/SubcoreInfo.xml diff --git a/Patches/MechGestatorComp.xml b/Patches/MechGestatorPatternComp.xml similarity index 83% rename from Patches/MechGestatorComp.xml rename to Patches/MechGestatorPatternComp.xml index 2921c62..5b009df 100644 --- a/Patches/MechGestatorComp.xml +++ b/Patches/MechGestatorPatternComp.xml @@ -9,7 +9,7 @@
  • - NamedSubcores.MechGestatorComp + SubcoreInfo.MechGestatorPatternComp
  • @@ -18,7 +18,7 @@ /Defs/ThingDef[@Name="MechGestatorBase"]/comps
  • - NamedSubcores.MechGestatorComp + SubcoreInfo.MechGestatorPatternComp
  • diff --git a/Patches/MechPatternComp.xml b/Patches/MechInfoComp.xml similarity index 84% rename from Patches/MechPatternComp.xml rename to Patches/MechInfoComp.xml index f09015c..a38bfe5 100644 --- a/Patches/MechPatternComp.xml +++ b/Patches/MechInfoComp.xml @@ -9,7 +9,7 @@
  • - NamedSubcores.MechPatternComp + SubcoreInfo.MechInfoComp
  • @@ -18,7 +18,7 @@ /Defs/ThingDef[@Name="BaseMechanoid"]/comps
  • - NamedSubcores.MechPatternComp + SubcoreInfo.MechInfoComp
  • diff --git a/Patches/SubcorePatternComp.xml b/Patches/SubcoreInfoComp.xml similarity index 85% rename from Patches/SubcorePatternComp.xml rename to Patches/SubcoreInfoComp.xml index f913e87..a08756b 100644 --- a/Patches/SubcorePatternComp.xml +++ b/Patches/SubcoreInfoComp.xml @@ -9,7 +9,7 @@
  • - NamedSubcores.SubcorePatternComp + SubcoreInfo.SubcoreInfoComp
  • @@ -18,7 +18,7 @@ /Defs/ThingDef[defName="SubcoreRegular" or defName="SubcoreHigh"]/comps
  • - NamedSubcores.SubcorePatternComp + SubcoreInfo.SubcoreInfoComp
  • diff --git a/Patches/SubcoreScannerComp.xml b/Patches/SubcoreScannerPatternComp.xml similarity index 85% rename from Patches/SubcoreScannerComp.xml rename to Patches/SubcoreScannerPatternComp.xml index 5a569ea..cd7cc13 100644 --- a/Patches/SubcoreScannerComp.xml +++ b/Patches/SubcoreScannerPatternComp.xml @@ -9,7 +9,7 @@
  • - NamedSubcores.SubcoreScannerComp + SubcoreInfo.SubcoreScannerPatternComp
  • @@ -18,7 +18,7 @@ /Defs/ThingDef[defName="SubcoreSoftscanner" or defName="SubcoreRipscanner"]/comps
  • - NamedSubcores.SubcoreScannerComp + SubcoreInfo.SubcoreScannerPatternComp
  • diff --git a/README.md b/README.md index 90385d6..0b3bdb4 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# ![NamedSubcores](./About/Preview.png) +# ![SubcoreInfo](./About/Preview.png) Track which unfortunate pawn your subcores came from! diff --git a/Source/NamedSubcores/Comps/MechGestatorComp.cs b/Source/NamedSubcores/Comps/MechGestatorComp.cs deleted file mode 100644 index d1d53a8..0000000 --- a/Source/NamedSubcores/Comps/MechGestatorComp.cs +++ /dev/null @@ -1,7 +0,0 @@ -namespace NamedSubcores -{ - /// - /// MechGestatorComp is added to mech gestators and allows us to track the subcore pattern during gestation. - /// - public class MechGestatorComp : BasePatternComp { } -} diff --git a/Source/NamedSubcores/Comps/MechPatternComp.cs b/Source/NamedSubcores/Comps/MechPatternComp.cs deleted file mode 100644 index 816cb4f..0000000 --- a/Source/NamedSubcores/Comps/MechPatternComp.cs +++ /dev/null @@ -1,7 +0,0 @@ -namespace NamedSubcores -{ - /// - /// MechPatternComp is added to mechanoids and is used to track the pawn scanned into the subcore. - /// - public class MechPatternComp : InspectPatternComp { } -} diff --git a/Source/NamedSubcores/NamedSubcores.cs b/Source/NamedSubcores/NamedSubcores.cs deleted file mode 100644 index 19eff69..0000000 --- a/Source/NamedSubcores/NamedSubcores.cs +++ /dev/null @@ -1,21 +0,0 @@ -using HarmonyLib; -using Verse; - -namespace NamedSubcores -{ - /// - /// NamedSubcores static class to load up the mod and initialise everything. - /// - [StaticConstructorOnStartup] - public static class NamedSubcores - { - /// - /// NamedSubcores constructor to patch things using harmony. - /// - static NamedSubcores() - { - var harmony = new Harmony("eth0net.NamedSubcores.harmony"); - harmony.PatchAll(); - } - } -} diff --git a/Source/NamedSubcores.sln b/Source/SubcoreInfo.sln similarity index 86% rename from Source/NamedSubcores.sln rename to Source/SubcoreInfo.sln index c412069..7e940a5 100644 --- a/Source/NamedSubcores.sln +++ b/Source/SubcoreInfo.sln @@ -3,7 +3,7 @@ Microsoft Visual Studio Solution File, Format Version 12.00 # Visual Studio Version 17 VisualStudioVersion = 17.4.33213.308 MinimumVisualStudioVersion = 10.0.40219.1 -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "NamedSubcores", "NamedSubcores\NamedSubcores.csproj", "{5850B4A6-F2A1-4822-8C82-EF54E17AF49F}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SubcoreInfo", "SubcoreInfo\SubcoreInfo.csproj", "{5850B4A6-F2A1-4822-8C82-EF54E17AF49F}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution diff --git a/Source/NamedSubcores/Comps/InspectPatternComp.cs b/Source/SubcoreInfo/Comps/BaseInfoComp.cs similarity index 65% rename from Source/NamedSubcores/Comps/InspectPatternComp.cs rename to Source/SubcoreInfo/Comps/BaseInfoComp.cs index 8a7bf93..342abc4 100644 --- a/Source/NamedSubcores/Comps/InspectPatternComp.cs +++ b/Source/SubcoreInfo/Comps/BaseInfoComp.cs @@ -1,13 +1,13 @@ using Verse; -namespace NamedSubcores +namespace SubcoreInfo { /// - /// InspectPatternComp implements the common inspect method for pattern components. + /// BaseInfoComp implements the common inspect method for pattern components. /// - public class InspectPatternComp : BasePatternComp + public class BaseInfoComp : BasePatternComp { - /// + /// /// CompInspectStringExtra adds to the item inspection pane. /// /// diff --git a/Source/NamedSubcores/Comps/BasePatternComp.cs b/Source/SubcoreInfo/Comps/BasePatternComp.cs similarity index 97% rename from Source/NamedSubcores/Comps/BasePatternComp.cs rename to Source/SubcoreInfo/Comps/BasePatternComp.cs index 432ceb0..12520cc 100644 --- a/Source/NamedSubcores/Comps/BasePatternComp.cs +++ b/Source/SubcoreInfo/Comps/BasePatternComp.cs @@ -1,6 +1,6 @@ using Verse; -namespace NamedSubcores +namespace SubcoreInfo { /// /// BasePatternComp implements the common features for the pattern components. diff --git a/Source/SubcoreInfo/Comps/MechGestatorPatternComp.cs b/Source/SubcoreInfo/Comps/MechGestatorPatternComp.cs new file mode 100644 index 0000000..8f173f4 --- /dev/null +++ b/Source/SubcoreInfo/Comps/MechGestatorPatternComp.cs @@ -0,0 +1,8 @@ +namespace SubcoreInfo +{ + /// + /// MechGestatorPatternComp is added to mech gestators and + /// allows us to track the subcore pattern during gestation. + /// + public class MechGestatorPatternComp : BasePatternComp { } +} diff --git a/Source/SubcoreInfo/Comps/MechInfoComp.cs b/Source/SubcoreInfo/Comps/MechInfoComp.cs new file mode 100644 index 0000000..9b53f96 --- /dev/null +++ b/Source/SubcoreInfo/Comps/MechInfoComp.cs @@ -0,0 +1,7 @@ +namespace SubcoreInfo +{ + /// + /// MechInfoComp is added to mechanoids and is used to track the pawn scanned into the subcore. + /// + public class MechInfoComp : BaseInfoComp { } +} diff --git a/Source/NamedSubcores/Comps/SubcorePatternComp.cs b/Source/SubcoreInfo/Comps/SubcoreInfoComp.cs similarity index 71% rename from Source/NamedSubcores/Comps/SubcorePatternComp.cs rename to Source/SubcoreInfo/Comps/SubcoreInfoComp.cs index 281e429..981e23c 100644 --- a/Source/NamedSubcores/Comps/SubcorePatternComp.cs +++ b/Source/SubcoreInfo/Comps/SubcoreInfoComp.cs @@ -1,11 +1,12 @@ using Verse; -namespace NamedSubcores +namespace SubcoreInfo { /// - /// MechPatternComp is added to subcores and is used to track the pawn scanned into the subcore. + /// SubcoreInfoComp is added to subcores and is used to track the pawn scanned into the subcore. /// - public class SubcorePatternComp : InspectPatternComp { + public class SubcoreInfoComp : BaseInfoComp + { /// /// AllowStackWith ensures that subcores can only be stacked with others of the same pattern. /// @@ -15,7 +16,7 @@ public override bool AllowStackWith(Thing other) { if (base.AllowStackWith(other) == false) { return false; }; - SubcorePatternComp otherComp = other?.TryGetComp(); + SubcoreInfoComp otherComp = other?.TryGetComp(); if (otherComp == null) { return false; } return PatternName == otherComp.PatternName; diff --git a/Source/NamedSubcores/Comps/SubcoreScannerComp.cs b/Source/SubcoreInfo/Comps/SubcoreScannerPatternComp.cs similarity index 77% rename from Source/NamedSubcores/Comps/SubcoreScannerComp.cs rename to Source/SubcoreInfo/Comps/SubcoreScannerPatternComp.cs index 3ede35f..1768be8 100644 --- a/Source/NamedSubcores/Comps/SubcoreScannerComp.cs +++ b/Source/SubcoreInfo/Comps/SubcoreScannerPatternComp.cs @@ -1,11 +1,12 @@ using Verse; -namespace NamedSubcores +namespace SubcoreInfo { /// - /// SubcoreScannerComp is added to subcore scanners and allows us to track when a subcore is ejected. + /// SubcoreScannerPatternComp is added to subcore scanners + /// allowing us to track when a subcore is ejected. /// - public class SubcoreScannerComp : BasePatternComp + public class SubcoreScannerPatternComp : BasePatternComp { /// /// Ejected tracks whether a subcore has just been ejected. diff --git a/Source/NamedSubcores/Harmony/Harmony_Building_MechGestator.cs b/Source/SubcoreInfo/Harmony/Harmony_Building_MechGestator.cs similarity index 78% rename from Source/NamedSubcores/Harmony/Harmony_Building_MechGestator.cs rename to Source/SubcoreInfo/Harmony/Harmony_Building_MechGestator.cs index b07b1a6..447fe89 100644 --- a/Source/NamedSubcores/Harmony/Harmony_Building_MechGestator.cs +++ b/Source/SubcoreInfo/Harmony/Harmony_Building_MechGestator.cs @@ -3,7 +3,7 @@ using System.Linq; using Verse; -namespace NamedSubcores +namespace SubcoreInfo { internal class Harmony_Building_MechGestator { @@ -19,14 +19,14 @@ internal static class Harmony_Building_MechGestator_Notify_AllGestationCyclesCom /// internal static void Prefix(Building_MechGestator __instance) { - static bool hasNamedSubcoreComp(Thing thing) => (thing?.TryGetComp() ?? null) != null; + static bool hasNamedSubcoreComp(Thing thing) => (thing?.TryGetComp() ?? null) != null; Thing subcore = __instance.innerContainer.FirstOrDefault(hasNamedSubcoreComp); if (subcore == null) { return; } - SubcorePatternComp subcoreComp = subcore.TryGetComp(); + SubcoreInfoComp subcoreComp = subcore.TryGetComp(); if (subcoreComp == null) { return; } - MechGestatorComp gestatorComp = __instance.GetComp(); + MechGestatorPatternComp gestatorComp = __instance.GetComp(); if (gestatorComp == null) { return; } gestatorComp.PatternName = subcoreComp.PatternName; @@ -38,10 +38,10 @@ internal static void Prefix(Building_MechGestator __instance) /// internal static void Postfix(Building_MechGestator __instance) { - MechGestatorComp gestatorComp = __instance.GetComp(); + MechGestatorPatternComp gestatorComp = __instance.GetComp(); if (gestatorComp == null) { return; } - MechPatternComp mechComp = __instance.GestatingMech.GetComp(); + MechInfoComp mechComp = __instance.GestatingMech.GetComp(); if (mechComp == null) { return; } mechComp.PatternName = gestatorComp.PatternName; diff --git a/Source/NamedSubcores/Harmony/Harmony_Building_SubcoreScanner.cs b/Source/SubcoreInfo/Harmony/Harmony_Building_SubcoreScanner.cs similarity index 78% rename from Source/NamedSubcores/Harmony/Harmony_Building_SubcoreScanner.cs rename to Source/SubcoreInfo/Harmony/Harmony_Building_SubcoreScanner.cs index 8c9ed78..ce6605e 100644 --- a/Source/NamedSubcores/Harmony/Harmony_Building_SubcoreScanner.cs +++ b/Source/SubcoreInfo/Harmony/Harmony_Building_SubcoreScanner.cs @@ -2,7 +2,7 @@ using RimWorld; using Verse; -namespace NamedSubcores +namespace SubcoreInfo { /// /// Harmony_Building_SubcoreScanner_EjectContents patches subcore scanners to use our component during ejects. @@ -16,7 +16,7 @@ internal static class Harmony_Building_SubcoreScanner_EjectContents /// internal static void Postfix(Building_SubcoreScanner __instance) { - __instance.GetComp().Ejected = true; + __instance.GetComp().Ejected = true; } } @@ -32,7 +32,7 @@ internal static class Harmony_Building_SubcoreScanner_Tick /// internal static void Prefix(Building_SubcoreScanner __instance) { - SubcoreScannerComp scannerComp = __instance.GetComp(); + SubcoreScannerPatternComp scannerComp = __instance.GetComp(); scannerComp.PatternName = __instance?.Occupant?.Name ?? null; } @@ -42,10 +42,10 @@ internal static void Prefix(Building_SubcoreScanner __instance) /// internal static void Postfix(Building_SubcoreScanner __instance) { - SubcoreScannerComp scannerComp = __instance.GetComp(); + SubcoreScannerPatternComp scannerComp = __instance.GetComp(); if (!scannerComp.Ejected) { return; } - SubcorePatternComp subcoreComp = TryGetSubcoreComp(__instance); + SubcoreInfoComp subcoreComp = TryGetSubcoreComp(__instance); if (subcoreComp != null) { subcoreComp.PatternName = scannerComp.PatternName; @@ -55,11 +55,11 @@ internal static void Postfix(Building_SubcoreScanner __instance) } /// - /// Try to find the subcore ejected from the scanner and return the component for it. + /// Try to find kekethe subcore ejected from the scanner and return the component for it. /// /// /// - static SubcorePatternComp TryGetSubcoreComp(Building_SubcoreScanner scanner) + static SubcoreInfoComp TryGetSubcoreComp(Building_SubcoreScanner scanner) { ThingDef subcoreDef = scanner.def.defName switch { @@ -72,14 +72,14 @@ static SubcorePatternComp TryGetSubcoreComp(Building_SubcoreScanner scanner) static bool validator(Thing subcore) { - SubcorePatternComp comp = subcore.TryGetComp(); + SubcoreInfoComp comp = subcore.TryGetComp(); if (comp == null) { return false; } return comp.PatternName == null; } Thing subcore = GenClosest.ClosestThingReachable(scanner.InteractionCell, scanner.Map, ThingRequest.ForDef(subcoreDef), Verse.AI.PathEndMode.ClosestTouch, TraverseParms.For(TraverseMode.ByPawn), 9999, validator); - return subcore?.TryGetComp() ?? null; + return subcore?.TryGetComp() ?? null; } } } diff --git a/Source/NamedSubcores/Properties/AssemblyInfo.cs b/Source/SubcoreInfo/Properties/AssemblyInfo.cs similarity index 93% rename from Source/NamedSubcores/Properties/AssemblyInfo.cs rename to Source/SubcoreInfo/Properties/AssemblyInfo.cs index e94cec1..0ef5f11 100644 --- a/Source/NamedSubcores/Properties/AssemblyInfo.cs +++ b/Source/SubcoreInfo/Properties/AssemblyInfo.cs @@ -5,11 +5,11 @@ // General Information about an assembly is controlled through the following // set of attributes. Change these attribute values to modify the information // associated with an assembly. -[assembly: AssemblyTitle("NamedSubcores")] +[assembly: AssemblyTitle("SubcoreInfo")] [assembly: AssemblyDescription("")] [assembly: AssemblyConfiguration("")] [assembly: AssemblyCompany("")] -[assembly: AssemblyProduct("NamedSubcores")] +[assembly: AssemblyProduct("SubcoreInfo")] [assembly: AssemblyCopyright("Copyright © 2023")] [assembly: AssemblyTrademark("")] [assembly: AssemblyCulture("")] diff --git a/Source/SubcoreInfo/SubcoreInfo.cs b/Source/SubcoreInfo/SubcoreInfo.cs new file mode 100644 index 0000000..a298aad --- /dev/null +++ b/Source/SubcoreInfo/SubcoreInfo.cs @@ -0,0 +1,21 @@ +using HarmonyLib; +using Verse; + +namespace SubcoreInfo +{ + /// + /// SubcoreInfo static class to load up the mod and initialise everything. + /// + [StaticConstructorOnStartup] + public static class SubcoreInfo + { + /// + /// SubcoreInfo constructor to patch things using harmony. + /// + static SubcoreInfo() + { + var harmony = new Harmony("eth0net.SubcoreInfo.harmony"); + harmony.PatchAll(); + } + } +} diff --git a/Source/NamedSubcores/NamedSubcores.csproj b/Source/SubcoreInfo/SubcoreInfo.csproj similarity index 87% rename from Source/NamedSubcores/NamedSubcores.csproj rename to Source/SubcoreInfo/SubcoreInfo.csproj index e1bc6c3..6ffc1b8 100644 --- a/Source/NamedSubcores/NamedSubcores.csproj +++ b/Source/SubcoreInfo/SubcoreInfo.csproj @@ -8,8 +8,8 @@ {5850B4A6-F2A1-4822-8C82-EF54E17AF49F} Library Properties - NamedSubcores - NamedSubcores + SubcoreInfo + SubcoreInfo v4.7.2 preview 512 @@ -55,13 +55,13 @@ - + - - - - - + + + + + diff --git a/Source/NamedSubcores/NamedSubcores.csproj.user b/Source/SubcoreInfo/SubcoreInfo.csproj.user similarity index 100% rename from Source/NamedSubcores/NamedSubcores.csproj.user rename to Source/SubcoreInfo/SubcoreInfo.csproj.user diff --git a/Source/NamedSubcores/packages.config b/Source/SubcoreInfo/packages.config similarity index 100% rename from Source/NamedSubcores/packages.config rename to Source/SubcoreInfo/packages.config