From 21c38a4340dc53db2ee1a9c5cd71d2e93bb8872e Mon Sep 17 00:00:00 2001 From: muuyo <34991771+muuyo@users.noreply.github.com> Date: Tue, 1 Oct 2024 17:08:21 -0600 Subject: [PATCH 01/15] Bunch of work on mesh sections and program info First commit of probably many, hopefully making the onboarding process a lot better? --- src/SUMMARY.md | 2 +- src/modding-mesh/mesh-extracting.md | 36 ++++++++++++++++++++++ src/modding-mesh/mesh-importing.md | 7 +++++ src/modding-mesh/mesh-intro.md | 12 ++++++++ src/tools/fmodel.md | 18 +++++++++++ src/tools/images/Fmodelstartingdialog.jpg | Bin 0 -> 44864 bytes src/tools/umodel.md | 11 +++++++ src/ue4/custom-project.md | 19 +++++++++++- 8 files changed, 103 insertions(+), 2 deletions(-) create mode 100644 src/modding-mesh/mesh-extracting.md create mode 100644 src/modding-mesh/mesh-importing.md create mode 100644 src/tools/images/Fmodelstartingdialog.jpg diff --git a/src/SUMMARY.md b/src/SUMMARY.md index a32bef8..12d6a46 100644 --- a/src/SUMMARY.md +++ b/src/SUMMARY.md @@ -18,7 +18,7 @@ # Creating your mod - [Mesh/Model](modding-mesh/mesh-intro.md) - - [Extracting game models]() + - [Extracting game models](modding-mesh/mesh-extracting.md) - [Importing models into Blender]() - [Exporting models into UE4]() - [Setting materials and outline]() diff --git a/src/modding-mesh/mesh-extracting.md b/src/modding-mesh/mesh-extracting.md new file mode 100644 index 0000000..1041376 --- /dev/null +++ b/src/modding-mesh/mesh-extracting.md @@ -0,0 +1,36 @@ +# Extracting your mesh +*This section is under construction, and was written by @muuyo* + +
N3EW=U43qkj0TLU3-yUhoP zRp!-|Gdn6++V+=5jw8m6W9oGVHJS)H_;qoU+Jh@0tVB=s%I`BUX(gymx7hhtrU{{L zk>Ppb`jA5Q*f8f9UCHmVtZE(Xyrs z|1X+NuKWFc=b~$PJMsA-? sGQk2+59@jbRZf< zg469(VyAvXcj*DXVXE0!Ctr QkM*?shxS)#PJe(+9q!vZ=3kmzc0Uj7mT0>U&8YJ@FVQdN?|U#deZi zx4j9Rr&wsw&JYF)K v`!*XNx3#)!J;BgDk zXl=^>UH* Es<#fV@RZY!x)1{&@9DdvuR^suxV)?_5 z?=$}IdB*=o*TT!H6pVup5Pb`Xhx3s3wF9vdDYUK3wFpP-f%oZwXaWEFE3?d*E1VLU zfD*U0!wKpZz>Et~Usj8JyoWG@4nCPbgo{EzV#&U~Vu!wE@5kys3^OQnrgF!IaTl0u zgdHpm7S#W9 cV*X?OLMk6L(_zyH4zM5qQnUY)jsgfelxUu z$j{EF09KUK9KUS!*! h zI=VY3_~pmML)C`d1VZ!a^Sk^EKh!9YvLxKF QzwG1*epo?35q7$zlcNRNoH4Tf~t(gas%Arzgb$m^Da+SptZPQ zA8KjufWwpL<|rg2Bm|$K;swQyRX9m3IkOA^1P)U|6-d11B}s6Q!5c};X?6`1Xw_qE zE828tWx4kGqmkcDF7L*eQI?Ft(3Hwh zB?D5Xv;kd|B*mqd)bM=KkZ`bhJR3Im__tKC*W2NwpVmGsFT&I^HdMMx0MOAP#ihHT zGY7iPmbMb(;+Z6FgI`$+R)Vn{e5qSZg2hV1=3g*$=|}PtJ u9;^|`6e?a29sYgk5qIQk4}Eg{0Zt_`C$A@s^Oi&;om&A@x-sInX#Fv81U>- zFClaks3zUq(+2l(8CZ8!Xj3Q*nveDtJ0rb=VPHxotk))1Y0DfDeTSQEbbzLyM_TLm zB+I`A`-fhh%Q+u-2vn0h+zYUYW%`abK^t(gpGGIM-+Xwn&Lt6a#I#ErVG(rx@6-HA zq8s=JH|9LCOi}zpQS69cKX6jv^VkZ}kT_f@ngr4QX}`-c5q52)*Q{u6t5*igpj++l zr2RdklK@=vfxzJbB9Dx|-pJ3xz-f-An5Z7mCnO^aOZINI9<|T_Bkiw{MwB4*+s@0) z>L%YFtYU)e%r@B&yNls1fcV8c@WR`z@W6NGx}-5;CRqkgE!$F+>Sw7dn3MsrR{ zCX0E@bD%1^+&@UJ%nS;AP`Jm8{p>9p`LS w3c+eOD8e=5EZOdbBVP%xSQufo+?1lX9f@ zK$|LhIaQ+suFK#mo9cA9CcTuw36v&?HeX(Uv#XW ^ *M0unkyb{EHcS-UHw)7wp z1g@GAL)5d@*w9 +|kEm@%ipQtb@81HJLs-V#?pf!+ ze?%ZMyxpEoIXr8hYG>Ma5L^7$M1S=RE1$9-MZXZiQ|I;4A}?zcT`}MIXDb8vn58Xi zY{O8%Bcfca0``K@>b%;Uu7Gd8m7+Cn&iQj^wrQ5XZ*B?|TcP>NV<*5*yHF1Q_gK4~ zuNR095}!b5AF^R~ |{i70;lk NEn;wD0x`>7N2NtE=5HdTD%16|?s+={?+^X!?+@&5<%r%G$SpN7Qbi#J2!2Yf~te zETf?uw}@pvofz>;F^J+4$}Nzy{dm0Q1Oi>=KU1JeqP_))9JBVZP1)d>YSOG9&u)Ik z3RU(tgD@@6TXHXq4w|Ym!zHt~$7E(j1VkmG_BPUmw_iYa2Ju#+m=_TxzUx4Q6)LVo zfg8*pxa%&+Ei-Gf>j)&!Khzq3@}%>-Y{?VrhZRuZuyRwvVe6{opzZK!o=f*Z=qZBX z8wAp-t#Hm{*vJ?Y040+@iY5yFz|-H}M;9TBj%M%#hP%}7A+v$ZO(avjIbivuBq#7Y z_as{bvyutxM;2{tud3k>H${Um>w{CF{cTYMf3GAfi&Uzxq}}o#Mhb$sCXZ7ryOP|K zE#IoSBwIy)c*aobx&0#Iyma?vack{hmFGq9T4|)8emr81G}lI-_-*ya?63D )PlBd9nh}}kzZB # XPg5v?T*KCrdrK|o=Ij_A^8#BYJ3hTZI-w$wg>;!r}sdb$J z1oWu!WKot+E8P1$5vH0o%Am)xtR2=|@7 1?`i@%R9!9BhOpzz$x8}PH6f$!?AQT>w3vV9&G2i &ey|etWB_-0S$W;K3mDin?V`nFhTtTzGsUz4{g+*>Pc~X ze7aJ`S}31>@IV78q1{i~7p|sTVBFlfpq&-A=$}Ietl0oUzd@?p9ad!)9tt>6eQ=!y z_i3=px1p)A6XYKlOj}ZEAUyxZnn6pk%XbX&AfJJylyg)5&l=;xl{5%jKBy*zI9Vmr zT09E=VB+IG2*k?S#^=czfcS1^tQnM7WXEnCbB~!J@2X9u!q#cV3!7fuP+ez?^m2br z7-+Y)E`(XX{KI?<+PT#EWkW52S}kA^xg#4iM)0nA^6PQ;5#bceKqT3S)l!zdapT?+ zyZ6hWkcuxbEgA9`L!B=76b`tQ-y_tMuO!hBs%dI9A eQAnm{zX+GE z#%WW<6%UrBpU4i=*sj*>1o4qfhiixM7y2~0aV-e>ROZ}CNF(av`so7VO?8L=9l7JU zcf&Dz!v$Zbf-Am2HY^^%a@7QLv3#!W=fwtTQ{%&&9hMeCHXroHAIjOk-tMEldQbzM z7>d=OcWsY#WmvU$u Z+#r-j~0^ex4le$Mkpw8TtCVpXDAMYZH?_*97>GEV& zo_{LxT=WFuNRoY1MPK-_7QaH23_>UkHkwi$=n<{c3{c>okYcg<#fmRjrph&!yN96Z z9Dy)@;Z(PZ<+G)X9vD$3?)3(Q0jGPYyBPGycHIPA!}n#u7k17Y|L=hkbU7YDqI*cO zu?V5ZDGuN8%xx^R9#Mi{+UHD=#B5)h T pHO0g22P>qEISuZn{Z{w=Bu8kyz4VnjJVrZSH` ze1&nmi_;q}=4fs2#InT8f8gi9Gg9{2z}!{$uf%^OJ}MG(KLVFxrU$M=he{~=P*RwK zw(`0)nxI_|gU|C0XpNYkPdvsM{A5@-!efgUe?$Z#j>IEG(Z=^UBohv*zz%$Nm7Q}D zni7>^Vf+QjYa;SnHzpQue`T_s*LEnWyucWKfSl^}VyX(zkqo2e*(3bNJ_@%0yO{pQ z1H>YWdT)@G=_PPdW86PW8V_*(KH?eZ6<&mE`j>(nI2Mmu?Tl{$pwF$%xps*m3QOzk zHEzfuqRjpc1l|wc+=c!f;%37#w|;_#n+9VhcOl_k-k%g{q$8Uc_)8~72bHrZYrZvk zV(+I$NTS7Mhi^DqiUyE}9ckrMDGeSL*+3ZfPHQXk-!DJKPEpC az}#F0(t2e-6( zys8m#*SkPyxMkYEV451yWqq2&`+!OE>mP!tzN5A!1{jajU}FQh1KEL>zYex?!4bI# zr1uwn#8g@fiKXC3s02^x*iPYv3J}{K)5^u8n-00NJG*}Mbgr)j?il=N5_J9kw2cnT zG5#r0`};Qu{}_SkO80#=S V>HQ_~M|`2!Ga-|j#JN%!R|Ux9@9 zVyc_!w0Mc F zM3 Yjw3MZiU+qxM4yB1wQ`iFB#b=X_1lMG; zAb!K` )YY%Suv3vGbsL-y??x*~MTA(hrS*6lVWqIC@7eO~X&HZzqhxE#g zX07{Uv^SVrvE?$jF)3(@W`W*Dra*u}I!xfNb7FyvMF%kh`L__VB!!$>33!n1yzkOe zyOJ+OcZtH#kt?cAk{s=a=OLR9(LK^p1kjQBVdQ#3aEEXGA#9q?xZXxpIbv?KRz^^K zOY0e*`{Z7#hEF|tfBibL`|12iNqS*pWtEr0MO@EtRdLiJM5#c~-^Ew(yr1_i>h(?x zx$08&8Z_leGp=W|gmw2ubdJAuDT)(r`)IMZiM*hZ`TLY=&+DtPs b@t_;-9 zFxlsE`8cy{0>ber|Mfx*p>_ &3?7UI6L({0?X)g^-Z)+{mmO(;7Ea==L{ch^jpJXlU^rO1pbP34fyfCZ^ ziY3Jd4*9rS%!64=0lQV}`PUDE#nT27Y!+5pl2{G@$nw{i^N4BH$md~>hOE*s<*0>T z&Wx{L_8pjd;g?UL8IE}-*}$B`$2ES5?WRfP!lnw$x@rzTx!(m!sg~H{K%3%{sNAB> zl?G;vXIJ(ZvlCc>*HStz%SxEuTw9pFZL_29Wndl}NDgfuL`L?U_MsxdhOOO7?ZubC zT=H$D>9Ox06*;lU9uFXvHYF0ZPKc|$xdmw7!9hktyV5(W2K}1H-U9tScs<1{)V!OW z6?uf60XwCmK)jy?Vy4rZB!X4c6SAS!7TBEP(lGx@@Dh943C1YlojrNfqGGOPD9b8m zc)K@X2hdG47Qut@KszQz7*+n>-8cZ7+#ueHu@t7~1=4(}VOyL2^`4hi@D)@(#RYHG zNAn67w=+C8O6Z?^Df?-MdoX9KOnGs-sSZ(fD$?p|jO{v MA~l>B0256xH?N99ToR!;z?U)nVVtIp$DA1)!EaI1=7!J9J$BptC=6yMC1)zT8Z z7q{r8++Bf{PuZc6K&CBvebaJ2(?8!jI3Ku|{h{N;&p6x~P0@&+iIA?}%X;Q=0CM>> z@v!~7|2FZ{_QUq)L25ann=EglQN*~+8XWLa8-K``JHpPntqZ#3qB}dA({Ot)ts9`1 zws~mDH(5(YSjjhX;t&(;hhL|iT)kDf%z5Ve^v(-DTLpuLb-yOgs0=PA56 %otWqPE>+J=M=>r8OQzCs{Y)sy7qC3LsXSL zeMs|bSZ7?fcG}vDY~Q*3oe=-z_`m&Y60I0`lwcR8t(7!Iq)xA9;*()pBkO-0_W;F4 z;8Y}~bMY-;c%2RI2H7;`v6yW=qH+Mba5dI&Ovy<&OC^ctqzrDA(mT6pQ2>atlT&U1 z pL;M*tPn37c9P)NcGe|#loF9)-A>Q6&cPg7jlH%9?i|(IM1$M7 zFf1X5WmnPHHNkYUTwyEgx%=dE`WCvcaz=I}iu9g#`Y%}8O_M|0mWD7m-~EA$1@@`0 zq+AO2YL;DZ@93}4+mG^c$2K>G|4)ESO-%c+1BV(H=2v=M?e9GHoTI@WYaQT$-Dx`O zw(^@Mn%2p0{Hnq;q&gEHsd(84s_{@W9Lh6NhYrT9K-C@C=XJIl3xmG(E<9yh<6r6a zCD>uD?+JXe0Q0f(k$pDb2)o=5U 31mf&Z zIUMPX-Tce?(W9wA7x_OX7#c03_B3}I?h`X *v>gS-j zQ6FLdccP-gRzDxIs;0kNjUI3io%y%5Am2v~X7{PcBF{n}4?J`6cmNl6H>G&+mtc3= z@DxJtm3yI=*!uw5ZH3LvYyhdr&Nqtx%lB^eJoJ^U=m^gG(bKpoNJvZ;`o88@&W}z( zqLCZK#g!T#Zr $zfN*D`zD4(-&^yb2(0n@c(wIFu@d9qNBS=?@gga+5!=yA=) z2EJx4o;b~mD>qfe{8%lPdJxE~8jyUJrifA;?4EKNaG i7C@?yx}=SD87O8!^tD6)!_{hd;^2~)9it9A*DU$oE>LBb zC^TZKJ~32k{oV-c(>FVDlVsmv)(uw?KJ+(~R}#^*gVma!TC1vD5=;w(3KcFLzgIoB zv?geGYHQS$A*g{x$2qX~LTGSr9QPbCNo!Es9c#oPGxTQG=TY15on-ZF09z{M#~P)) zURje3=n2ywggT8X6$DG9fdkds? =oev*#0=v+MS%wa=!MDDn zH2~B*D_4@UBMq3wk?kE*T`X)w{27JIB(bA>=dsBoT~6R%-<_4@hi|!`>bz{vfYWU_ zQbq{PpX`3`3u^$g7uUFeC>^x9;G$q*ot#@hz~p+E%&W$Oq4?)7&^VQWHI7)6@y-w( zb2Mnp7EiWGWV%%ChMKJy3En&__>~0`cq<}u2S7etkRU=P^mXHRlh0xl#V*UK;{5^T z^m6%Mi@h1Oo~KK3R6S|`;z?~RS*~5pVK$j2bDs`VQ@x-?8;);+nphll 2lOEzD z0T||BZi4%AFzkWNnPML7oxZO=l2q!=&Rc64qHiDZ#epgK`oYp4Q&rDap4&vmhj|Ct zseo%XHiIC6oJO+oltjLPa94!@a9-03Tmt6r*SFAUH1XQqydksI2=&DmutIwiG= NH!I!R{r+Ix$ zbV=e)*qr_Z-Ak)d-uXn3)>R(8pth%wddSpL`onsIe_TA~xPBjOv7LOzfGkLFIL{wI z?0kHW{+nAzT4nK>C(=JBJNfz7h;yAtx=Veii$-*k;~l&~>uIG*5ti?^mzgk`mta@} z7Zr%-TDcc&zST`)m%dDW_Ex6j+fFN8T-2TB`6E@Z{9%jan}aKPxBAf+Swmg16Tz}8 zqu%bqE(C7LT65>oe$@AXWK!I+w#6)1?iSR@0*5aAQhHJD9JW8bDsbL*{7Mj*&*@4q z*3XsL6w!^*OSp j+^2!7On7DeW1(sPlx^JFY+ zbR(Jq3LY$3$-CiMK!N0e2~oT(NYkZ1C!nBnfm9N4f6yCI{;nJni ?Rj+7 zs}kQu->BJO#lzQ=SucDAly+w*u|7`+PaVXrn_KCq_hhD-s+u;zDF$n+F=N$dsTDOZ zG?Y|bc`AiOUvC5628aSj9QY8b*65UJdhl5Zc%hX-b)w*^B4g5<;6pWGI^Z`+s2VFS z6m_6yh}D_8X%75!F9{8%5mBjOqc-hV{i`Q97ek7!WA$azdwv;o#zPvUvYzzzx0P*l zqFfq35_$HtV*!t{Rf;0*Ok$L_((Ob)W@=Ey4>G&!pFMCtxAE*E8We8QzzuI4(fn59 znLSA(GH*9%;`Wq;g 567{;f!1jBy@#Qa)p zYpMoMZ97tpMZcU~f86L!2$+lg-VYCZv5~iLvJr8h6G_krz2AQ$fCVP1YNJx{^d~Ym zcC*M%<$Sw4F^ajXxg2^(uLn}d0Ud8tiDu2@LQ$s?X&mebJO zQ}))*g$D1^V4a@A2LfRdp|V$#uNi&3KmX}`g((#6#Sv5*)p~J@NbTFU k9Gn-6f9l*o~n`g*}Sxa#U2E;OtjYBV6~kIum9tJ c1fwC#8pF|2MeF(t@F$K~~$F{4l5 -s<~NfPznF= zGr-eCU7|m( jhdiDD%9*D`d zb6UH3pw`K~92ssncca+auw-$*Cp;t^yTLS)R>=by4jWa>V?4C1xiwO)S|2lnv|ZwEpZ T)eq066mQ6+TDL{0&^ zCKc*b5d@_mZYCh}G+L#{dWc)7XZBvklkOODC%f>RSKlj90e<#T+Gp(^0SAL>FI3f% z4~i;K{Xe^%nsa(Q5XI;07;#a=ylL19j-Yb~IX;DRL^;3iCQ zz`aIaeo(ahGAk!ZuaF5YU*40_J iWLoeppbs4$S?}E_ExDQ%M3UK2D@=j`{jU~{ht9!FYQOtYn@WQC} z3a?x>Huj(9d& ~3cXJ}dnRb_jWb zP~uKlTqDwWwx0exkJ^Q3N<7tvg!X54J{>_>PiVh7-4*?2kv)s~%+n$E=XB_9@w?Aj z;C=CXnly+IAoT>X#vPYT!~B)3PfBBTz5E#902khY9wpkSdhkP|hY~at63kky7C2)D z+_L{{X%G%e3tK(8iuL=(yN%aRlSePkxD2Fz7w%L#jnDj! oebHm@FrgnqUPU=^ zTGXB6`6fTeQiC9XGwq{uTZGL<1|jbLS4YMmqaN-{OZbd@9l5x?Y#4Dst>Hb-wi3Q^ zfb=%tM>Y|MG(Ko6`Q7vqSAw~GJb&U7KGZ9@bY<26DrC;C5Hp*o(Op^!RrG`Czd05l zM{6`jFE#@JDutssAm*|^N_OF9o;e9!4Ktc@STbpccQ5_BWNZZqa62ctXRu_Gi9I$G zQTSSMyg@cemOkrfb44&mm#~ddh?!4`t-LZph*S3~oEO^{R{e3^R0&L7dIxnxLE>Ah zBe)ueYu86nm)G}B&xVdE1j1lv&D&e|SYC}|yh&{OUdndmNpb7pBc4AYNad^G|L_l; z9hZ;NPNvc)-aUngh0KjL8tJYSXnm+45xKPc&<%8}f+`y0vhTlws2ZWC*^OP$9L7=D zdDF$=t2V-gPR9qu^2F`Al{k*EO^EYG#F0+8b=(ajRDC3*mt`qJJ+$HXg+yt1^~%0z z&GW%vIVul8rzDl2e{3(mE?blp*E7p#CL>f>pKFcdK$~(;PW#n;X|cC^p_%sj&uon1 z8T1%62&In?He&xOKqJ2Tb?ppEGI|wrb<9*0J!zRg;#TO6HJtVShYkLfWoqby*5 zW8x= OlEhUr3(xZ(0aP(hZBOYC$TJ*?LvhWExl$eh#X+s5K`p}4A0n8#*0 z8bUW++gkGG(0AiOAY+ui4L|kM2pONeZ4OtSAYTr m_-g$>ksBH++FZ=)v)va&P3c$tY=MA_j+TEs!k9^5V2;oh%=jV><(` zsC_wK)69dMvJH<}9mcOeFeO*;=&$$+btv%0L489V@m~w(eE%PcNB7wA0M%L(#lz|q z#f4c<3^EcH7i`ChzYobvlaYqb3NjF}Q3D>DEpV$?tLsRq6sac{^R;1hlbVEz^L>N3 zh%PCY*&ir8>dO|idk^^*`K5V`*OgX
8|>C>I-L zbdZy-NyO`qY{cE)H0eZDVE)YF<4Ws`k~n9mT!YmGGNdz^ImCs2MW(!ZZNpb kdz9Td7S-!tkw=RA>C zt(9O0gYM>qT!`2=D&}+@PuH}?_-#%Fa%XZ?m%OqRg5QOCBlsO{h}O#<53QMC4jzVK z_q>ZIpN*NSE}zXQxn_*#2&UzjX5 zP}*=Iv*$wX7?%wNi4B)N^5K4od|3*w@_Le*dLK4DqZB0TiQgjTg!&;A3v8d~%VaXw zqt<2<3>XzSy4$gpEBJm%FKm-WMf fYsPRr1wd;mP_ wsbPez!lzVu2Aur3v{+HtHz3N!7m5Gm33S zK7&5mY25(qFHuxAp`g%R)*?c>-0gCQ;!l`TJw7do(;n^>=;(?aTw_7Bg1i%1%zl85 zf65VOkz$fVw(5faslBry2ps8sxCjTLdL$qBwSP%pH-Ptczy7F4I~~gZjo0~E41s1l z;Dv|a{1w|~(G=BS=o&}&?7xQa$9*3p98DIPArhi*SZy|;uIY~>D{7E9HznQ;7nQ+c z2CQSEP ^4^m^I6MmKegSEbl5D6_~cfQMD7SbdC)n zR9QB;1c0!<#R#FsXUO%g$`8YcB0004E!4FmlOG=nyd@2I5WG$Top?NFQdf^NvY)Si zJVF#2Ry9S wwMIE*u`+MmjeQ;xSLs!_) odVgvwT*OfF?^s Onh4JS ^>yc}7B51!g#nbtbXeiv3|B>jpHzvkb5 zh*)$_6i)X{4XAJK0HoHxkLQh%PQ+J~_~PPDQaXKMQ|$W&J#%Gqf-^!fz|U0r>Azh} zzff3=;49fXvZMZFjow%K8=;6xVy?U{k$eR=$&0d`I1QOSBrak*74=zu&%&p92;H}U zs0yIFf%Mv_%O+~Dl-H67JB=Ei^6tzr@w4LZPCU2!_$N|$hPJ;~9-0(v%n)u&H+Y(B z%U$GOsZ%)!egNxg$ ZUqtcc8Q=i%ZQrP0%EA)J~oh9uf?&)BmDhrZpEknMi zLiV%t&s2j4SvJL1*{oEZ;}S{^CIJE%o^(g;NRTQUnsnZ!jRp8pt}~U2!hYcCz132M zm{1Sa?Iv6-DlZiViGK;qkdzBAE%&-{GRQ?h{smj<=;b7nSY|_yzi)PvF?x~!-`pr5 z)VOizm0@ x^u-jjGv$KG^_6*KO4Ftyr=PIu!^#PRAsG9u86&rQFyv56 zj+1KE=Z9L_KF95{YBPP%?82sv5~4i^(boCWS?`mi6B?k6y#j+=8<-&fENe+*xV?Hp z&RO;i$(et0_9jb=AVzQK0sH~o>Eh%}dtSHc>{Rwo_53k*)~j#SnF=#z$5bANsR1BA z#n$L_HL- v#ib4gTl^u&9Y61aUc%>7|}N z!613}MT>!w?&LtpqT{-|$MKISRD-A3k7D3%WuW_(2>klpMew^2bi?P} BY+z*>mqhGOMRQjpxoCve|#hK`sL}$qMC&nite$ z)~7!?f== 0Q`vr+qXl)fTyo~q5z9L8%4DV@%W3{b8hl}iNLPJS z_WPy8hw^W#DV28Ga&1fQ!4yg*)42wM);bmfPyj(Yv3utuyMf{db61bRO mvJPzI8~ge*GO-Xr&Q&Be8TKpWoorjA={yIOt{H28s!hl|A?tc0boziBd|@ zhfN94d_QzBno&NIM;n7Emh<6029odTna& A9D?m{0V9raOHqWFqd585T8T;*beagq*L`0Xg=|%`am2x2DM7*Jx62$~ zqRf)zh>9^hDe^oN#&t$j_$7;w3;%F08YZCd!^1dzqBWkA_RZGISi6h=#7E1}%|Qnd ze1HU=rt+*QU)G&9_+>z;EvQ++aqQ?_A3)AVl)mVK4jmBp=wIW(7!OWMl-5DV$ufhA z!WI5DI7*-UoroRFOcvOGj6aX^ZGDPYSL?MM+O0k2N)J>6bw1o4*glDd$t^P&XKIRl zO#E5OmnzoX@_PEYbM7ncj}c~Awd7ugn@MKV_SoJzF~@J>JC#GJ#})ng@lQMR0FvX8 zVRc04;&RUmFKG0j1J8_)+_e{%yU`;xl~}HW$;YgdQ*v_;b 7b +LO~Nq@&91&t)rs) z_kZD0kdP9jTe=Y#8VQjSl#)&<35SpxloF*=kQR_`knV1fE*Wx$?io-RV8FZmo^yV2 z?zwlZ=dSgv=dNd+KQ{Zru!oub*`IjF>-BoW%nlrB4qeJK@n4X}J(a+|{it{c2eW$b zSFy(`jge@1X!3ew(Gfr;^qUkm1+OWd`sTXd^LAceO{?MTW4b5%4fd&K+IJ4wgdEZ) zPxl{&V4{D60 &ji%K`9m6;pp@uzpX z$|BAp(JZaKe_dfBCpdC9z;6@xF4Z<3KI|5o4fRi^D5;}lPxvDG=Obc>dXJPxnr%L& zYJ6+RaYz_1PcKE;EBr?Y9^HdCs)I6z+kw8`PCl<3Jl85o72JxRPAv2YBuce?j~roh zG!W=%q+zM?Rm*nrXP6mFM-b6zO}X606`Mb+#Lm`Ktm>4Itu?weZy!J@8ZD P*xt*x!fCfgUb=C6{1U& zvJ9pS&90LWo3;*0gL3w#)(P(4u9qSjt;7&bv4nphb8PkEj0^zUu=Fvz5Dg!A*O>~c z)%PYsc@0luKZr;r2djJJ#Zs h(?k57w&Z9 WAtLgkn=Z;&+SS=-jHW _Cn3QLKK_Fm=;M4Z@nLN8E)%6WNue`L>Z_x(z z2I8~QTTXsuSod|9rybjurA5x4W&8$(F3Pvf5!C`YqUPF%K5}x$tsM`!G`}!gS1GW+ zDaibUa_N<_NA{k }-IRHvv3`Wxb+s@gT7E;fHwmTd zgRRszq&))Q6Pw>+AUr2sxoMhpA|MktT}BE;!r~=rkNp=Ft@q1}c6AD}v(Y*8#%9my z@D6MyGOQffqokCll8I{`GMAYf@wI+XmluWH@a!4;rt$d$;Fu3NK%o8m+bP3^{E-1q zZ^qj)!0MseDe!`)IgqAtXw=3jQ*yS>f^e^yp|34|ai8`#= CvOrnpYc>b8~L zS`d`}at1~9LFOg=TKJK=IkKQ3e_>QGkz({LgO5~tE#v*NJb$pWNG3_XBa{R%WLj<4 zuAO=_87Ge_%fWJdPveY7*^&v5N_3dR6oqk!J3j?)Wd=g_ENJUS^{@1k&4K4x7wKnw zxv1sDJK}?he3$azL`St-qkI@dW0q>tI6z@xiteazGBD>)Hkhd89mLq2ovfPF>gJe? z+)j*9efqR4&zY0ZNYhn?f+?n*44tkx@iW6oW4aFFq|t%=RbS)d2gz64aJX@-q0al{ zEjV0)Z)Nb|%iTejJ9`a1$_>b)NQB?>E4>=0Pp>`1EFN+**EOlQ%UI(I*10MRsmqHW z%Zi{QeuH#pIe<-@MEl#E$CWzWH4lO&xHf0@aSt;$&v3i|{!)c3YMuT?nq0rhwe*2H zQ;^I9K4azF>+D=b{_>$`0=o3}zF#@%-k)d>Ci`3P&!?SU1L^Ksh|V9N!_j{MI!NFW zM%|*n=fkjHjg0N;2)jIw2Cot}eEbFB*w-^+#P@tAg~0Qz#qteqt@gUTgAWQcQ`qBP zxb;p6y^3fP)UTf52W+qWDip(Z7%Q0~x31fpbT-9s+@sDNsqIqQbWK!7a`11E-L-mG zns?aCnK~x&RV6Uec=73nrww|FJTlcR&hZASFUsB}yyo1Jt}=~|4V3ZrD>t`4Grx zJODMGg@pwN7p9Qczv$FO_;l{Gn1_(1K3r#Wk#>u6iB>LWbw(mTWAwik+G2Wl_FcVi%$BtE;Eu2~Nu@smF zPm~EOG4t2u+Rsyim{KsyLQIjetfu=+BrM2h$su4O5|vOL+PKJPF>8a fGMPL7Ta%v09KMeUCJ|F9lKyvWTGpMrI^Be(GxJdO;3s-%`7A7OG$9 3_ z^$>M3)~WaX29bJ>lcGI;I*q)eewkp=JnuW=;TdOYdWZOHGOH!*q0pzLv<>^5K@#Og zbWiaTv|zE%9j)0z292jHH7Wj;)X;c(l=uGA2PvNw9V(%UQ`!eE>7N?6Lc&q%y|fl* z#|sBP0Tk=U4@UK~N3DZ-(i}lvsT2>_@r(wUH`b|H%iYMeZE)Y^W6V(I870uE%UM2( z);G>{TAJKvi>;#%gcVLVsqyo*)LatB-uM)GFohfFXWj?w+fuYiPdiK91Q5JX_cNvo zI?J@iu^&hTJF(gJAI9U-a7NJ^kOE;VuV(Mw^ik;^abxFHcoy-GRrB394hF`3ZDqxt zqP5Y@N;ao5(cfjCA^5M}-t#G24QUr@L)zsRnHulH{Bwy*3q}f7U>0Q|++X90ZNEFm z6msQJSSs^=$;k-($smYWDR*$m2e;E956^PpKka|=>zu4O2zWG}7=txe!Zt~T_?f=M zLu7MrH}bZGA64WxH>ar;rhbnfVNLR({*q+n!xpc`k^473yqF9i;33F_WZG9^q>w}X zjmG y-xx6Ml%C$>$H zxls9~C?8 7CEdjC z7+0B&HR5c`c1F~AXh7ZT+GwX YFy*bqn&L*s9gG zl+8hAg?W$=8u~t(6zw2Kd+W@81%mMfDsMz%W#`pe8r{x3(-64Jgzq$yY@!3TdP^a6 zrBvPR{IMD{V1N dM&(pKf z?%lM0eM{oBWomBpPIR@U45bg_b*20ds1vK95{u@#sM|+90ACKnEtcw?Kfn=Qya$9} zo{LWmxV;u&f1k5JAlzD_>~BBwzIL0sf~1d;b ~+`dRp_D3=TWMs-4;?(<}BE+Mep&NtWfpvG; ^^U83E_Ay{bWNW*`!u*C6bQv* zp45jREDne4W<2R!gmDbpyXT`fM=9kZuwRghJ$y*F^_Kh1`=1THnzTO_03yr{O9LP@ zRRT5WHSnrg)?{pYG?rZqyUwA}5&Sj;y)m6E8W_iR3=-Fa;ptlFG(|7~K-TbM*#}Vn zQw@||^c&a{ZKtXsvFt5P`Z(@}<#w?MzQSalQh}#M%tA~OlPX+HYQFlY#JqSXSx#hd zVb8{-XBPfILD@X*(zb5U@>&e54Ikys$4?CYX5W0A>P+j!MGaAm`2}Ve9aKjQKgQ*& zV5n#1?Ue<4q(IHx?|o%r12z!xiz*6F3Bvd4Tm#>SNxs)=591U@fHe;+4vx|3yKiI9 zLb521G3rOY$2C5w*WZ_j;wxlrw`u6-C&b!0kdz%o#%Rrc zO&jglAEK(VUV= zi?nL|)&$5W-caLH;vU022%A;AV@|pO*3KNtE_i*hGBhnYy!9DT#zwO2gVvT1ej8(I zHXrfDMRm9Mxrw3RFfobeIJm6ux^I|~1(68NU^hntf0C+atj|$od-}A`+qPjap9#qr zj*P9(A#wFMY?el07Edp9B22&fiM&Jz5}QG{dtnD}w?lt1NcY{4#t-y}z0EABSI_@w zW1Y98L|#Rww@8;W)WqsmdknA!Ph4Uy$FltZgzeF%fR}J-ivvHQ?0QWSM@|0+!3A+; z!b{-O5FT&glEKGiUtRsRw}0w>V^UBnwf_cvr-(9$_!Uh_WFarbU!Nr&`U~|&w1qki z=ft_}gG^j2H@?+(7M(Ss;QIJuCX-z$i_ja9J$?YtPOw5k;i!L33#O#~P9 8XI(S4VVnu(+9-gsFYpsc1MGOuWs=s$Dp#jMAQ knuPTs-m>iZS+1QWm_a)+F5cL@Z0A-L8Xlh`-TA z)LK7{<5cYM_)|ah+Ce4Q9~;m -m<#9p393OxPB z1pYHSlmKMQePdK;7#NHaNEFM-B24Hx*-JK#a$R(M8>NZwmn>Xe8pW-^dXH{okX@DY z`weK1HYRqRLHqT5PXo7GzNT$}b-Ck^HBL5!HAkJ$o8yUITrnRV6iywz#Jy%;XekTG zMj-@4{BI}p=LC?k_my|sb1ayjF(|LAH{tUnU{Nf* y8m0>HZ}Ugr}j8#vn!BHw%$r`!;+JaO8Vs>^mXXclXDRk~Z_BcA5h z>n%2QK(sj+MPovUC&5gAPf0-Q(K_PuG}J{4J>-obA>X-7LFo nbY5$eVnE}0+o(EY~vYb`xpnj}aFt-LbbWpKkfDWfxg zu78;o(N`wS3-A&=UEGN_gj5H$ _aq=5};~o9N!+ zUeynW^FD~x9e6xK$>2_hPl(@Wd?&rzsi&iO*smm{F;sOWpf~f8{2ni4lamTZh{g}S zd=8=>dsL(TnZy#^gBanr(u|1C-+%k)SKav;J&7AXD#q!8|C3d`iDA7zhK6(@oj3SF z)3Q0068Y3OKtoOg5T^P1uMVPsy8yj5;Ey(4^LXGKBVGH=EMV>jsZNia_(q?SkNJ-N z*m#xmH+8qQI%1asxu1Y0siMvb!2Q_xOP^Hf|8}{$6)MYif6YH~b>qaq&Hg3C_m}*h zGWw`JC72+U?)`+j_KV~!)Vbi*_Qi~6^N+Zk2<||@GXH~y|DO*%HTLu^m)3x=%gOQc zteZ>lEysw`zqQ=20n@%c8f2VPa{9L>{cn)ZZ_shBJY`Wy>)+cdaw`E>I}>+Gcq;#D z{rlhi|Fmzu#*LhcuQ2ucInII{(RO;V CpXD@QquwT0pS uRQgzr!ddKt_6l^8NgahCPXgEfxV5j~P?43;8D)=a>-eB%rtfoI|gf%i{ zIs0y~p^#wkz-YuTIU h mF_J7b-cS(Lcfu#94%8U> Kz)gsMVl8RG#3qyI$vjJ (I3}ueR2KRs_3{ zpgXz^nC^iWNWy;ddWOD;)oi<>HxRN=5s!DrOWBfmzq)Bj$@<0SR|C`iGTR9m!7^yT zfGiX8`X&?(tzAr4uf$XFF1|oMo+M$}EYEm4EEb#Q0b{6^COaTDSPSTayy|Ngm_VTJ zv>5KdYDqj~+Mdqwo;MJ1EUedi3D??A)AicA;*a5|P$4V36VR&zuz(QDwxEH-s6)}E z3vL%eKvi>4e!m{<9)s>zF+Ov-109EN4)l%V`Kr!hT!@nyW8qit2r?*YN0QSB!pe;o zUz?jM3*AD d8cE%T vORbWPFbv44Vg|tQb!+`6zHSbZVf21RI(B0-945OsoYt?N6JP0 zR1b(ip+6|k);dM<3o6%zYK5h4q_NZt5l-@vetQDxv#}C>oP1n^!s?eJ&PLm=XW(|H z&3#PsuX8En4E CkplE-9Hqb-8>bp8*HFjV@Jq!Lw`y>*3&^f}?7+g9W^ugxM zw*M_G`i)oWYUo@zskO`3-ylcBPQiA@9}XnN7CXN|kos>O^%>iwqu6mnTgtsWNrtNq zJe_1scYZLkuL~0Ho0HGxPS=en1sRpEH@!z>O2Qk1`}I}xqthhsortrN#;It@4^@n> zGldD%y^Ch)wjj5^JZw+48zQj3WZA7x%HQ<1&sD%?4}CB~J-_9JC9$+*t8=>&C4Mz< zF&}^|>|vysk)=Zq^tE%=&k4-;*mYUfO?%>%6BZy0l=)5+1fPA460C%G2HX#54aj(_ z+4UR5$b{?5j@ksE)x3vv7PINkZoa>x;fOH8c2~8#ZFsXq5%Naa{e7AS;Ukf*x3Q6I zGomhdJI61-E)0H3k9IMsi;yr2?1gx81#!N4^Ei->AqKxx%B5Q_%%Hixt&k(|n (HTQ!q9tB(p=8Qw}Uf8Rs8-iu1L7%?_M8qt%ceI>H(MY|t zsP0ZYOoGN-)jCO=#YaBK09%Nr{5OckR|Oe--jfBu|1@W8tYG4ywGc)Jenzp`q%IWS zraTL?{8GsQ@p5j3yn&^=adIbsUJ}S!JI!6%HSW(xY@`o;tC>B>vtN (w!A;gcud+rDda?4>dnqHJHPRkK1h?&9-Y9#&SI6PUJ7RMqsLoSmRZ2 z89yMs2N>}uJxM-FtrQ|s_$|8Ci;NxT?8Y_=0@X#As=nv5a_xp|s}eO*G6@JP%XP`o zLk;ASBq88K3*D C0WP*W4Cek$ RA3eD~D%YR Fiq)`Su l#xsY6Z*ov~-U3vF;TLo^+7RmHYG&^`8>5B 2IkDIf(ek}F?7u Ipl5;aT{hV(`c z?)Vgyn5?2Pf7PETD*fM!ao;Y+7V#}Vk40t~OWpu7YpWdjBGJ9Ctv|%9uB&9qZKvO4 zt;>_TU(W-c&NINh@dVtP1f7fZ8=sEd8?evc&$p=LmIJOf0N2Li=0a5P@9+Ef`~Tg4 z{~ka8FU%i(7S}yhY|HgDPmtdBRpoDxZ`$7{Z@IQSg*2|i#cD@DAOt3mTI@vo`K^CK;j+cbQ|bX1 zCjxcWV4cxmEw%1q&WYQObd~6fgzHnx{ R%f;%F;|!=^#sGGeUrrGlLv_AfT#f(B8!(5!plWzt_6DuCWZ?X-22 z>Ujh06I5rBTZpjmA!x%r^Vftg7w!#tN1u4t;`OJ(3b+2}g|FqWNj99`owe2@3o-me zI&jZ&%l!_kX?H7+u;4 E%vqMlbE%6uD5a1|_3LaP-W*uBr9<0{- zr60Dd`!ISfuUMo;x160eNDhEacblWzlbwo94b7BneW&=#zsFVgxoQQ%>7#_qM!ql# zi_EoAt(nWH{gFRmBHrj3^(lyUSJA&%JWMk3Qq4U&F{#~8+`cQp(k5sMh}$Ieyp0L1 zXpjGf;hq97%MH%jwMo5mG? dyPSJ>H{1 zIPjqgZ=j~nN5S@c0>x{w#5>KOCwA3jo8B~MOgW~B&cj%RnQGLS)gW#>y=7tOG4p3V zTfUt>UQPLXZ^cT*Qp+6Xjs1Q#-Tr5tj8Y4EUq__)ds&82#PL02v@yRvuM5R*kmYWg z-r?q8ZB3N%fa_F?3d{E+Zwf72(Cyxk&feq|9Q3=dXz9KcaB}wtozN>>#kpEPo_+1c z7t@&+%jUT8Vk$|Z%%oq0v~pb~-!uhY97UX8D|Ryx9AFg5$6w~|o@cTmL()rkq@Fhw zFAwCaxN*z+y12$vSB}v6*r`1}a&M}Ng3kAviLI-mj%onA0g|oe62JpUE7$hBR0*8u zKX|}4NPZ7% Pauj@o!~gea=-rOq)nle@{aQ0|?Kx3Zk5N|5=8m=|$TwqH_tXfl zwZsc8H5taB5@1LE%by778RD3hv#X@vyCh&bbc%l3qcO{LHfg%rj=<6!p?Bl{LCw zl^LW=8z_-Q1y%3!r*LvZ1Q0q&aW^lYxfMH{`~|3cm6GcvF5ouJI#=un(=X1C)Ggj^ zNP2v^;Cx8*ornp>Z1s3JJ#Z=1p@*25M07Wk4*kjjQBK!Y3LmF%qB^5p4d0x~uW6gs znK2xEP#=$g-(GrJCR3nMbyqda#+A3_I szJpSoX3>e?C 1N0}ps&F0gcr$unG`6w;KC39x8SZnY161PQIK!V zUi0+pS|V{S^E*AcgHhF;P$OEu`7`@Q%7XJj7iNtY-(tV_FJCE0yMG~^&7x3%@B1m- z?=c1n7aCK)_wi&9la{2^_)_#F)6#(M`C;eArx;M<2!n$G<(Eo>q~S-LJyLzAd)hvhXOm?Qx_j@ND4L;Q-&1vS2)qIaUPi5t93OtfWwDrJKYX0!BLv9fE{OR!X$eT$v zQheJOmUH>$ej`PCoKC*4pQ2)NhcHx#06ZvDU-Id0+&&}6RNXV2eT^n6t-idaUT2D2 zuc%TpK|E#ZUwjIt#CkvIvm#_3Rid4A0I{yOjQP1M;J?JW*c#%p*>LWz(UXzL_7@^! z|EMJuG%`{HLgM9gW*zpl&RP892`$pz7mi-rPS%fH{doV#CDj7`(PMlZYS(cygnAw? z__cmU)hS)vh>_d+m7dZk@BThhmLq*8uKuSOL6l2~M;87*5dL!xEwR{5`*j#~vgGhK z%4?o7XK6GeN7cqin3L0CaX7|j&=0g;$1B|?r`7naqYjWRozo9NtU!m=2qRQ&JY`C6 z<1wG$m6vmNW=hODvouU$=nw=8g*7HSx%E?9pYrPMcxt!+B|5`<^scI`qU9*oPFJ-0 zdfj}W&5SW(WmP9+$t(p^FQiuWfnuAGqW|p)iSeN<8}w9T>W0tv#e|Fse6d`4z_5c> zhk!_lub?KVe*;g?2>zM09`AE>8`W;mnoma7dyJDe!YPXg21pBK8P&v&HceYib2t^< z-@M3VZu#uHJH*u6o>OeJLwmRyP7(?Mn<@KQY9JY;cvYOTghZNTzKR13M^+kY*~BH^ z$H?~gYn5RJne>eS(W%^5sMO)CIkCoMcSQ7i)zfgW&{F60 lSjOD`v^ILve1v+{XKbT3Zf-sf6LIVng_kY4A->dn1a+JJ67 zAQe51VWB-gTTR{yunVwzc2=G;cFgOHvHr52uU6nIhuX>qia5RX4)Rs<_RFs>zb ?zvsJM@b^U0?HMB$mM79V>f_*i`BT0f0$gOgYMw-vN>edfhmP$-x*#t1b zcVZcE98D~6(CyoO_n~%+-Dyj(+2*8ljo9aj6}h0>>QAVk)XXQ+5$DHY&8wlWUqf0& zN}$Dj6&NLC$FsWFJ`#xQu(@ CB0a%SUzIAvmCV@F;tli2)93D>RYW<{sf1xAe<^m2G)i!+@3yQb6v-8 zinby?n 8C_Nyac^?BOC0`W!u};j?VmAg|I6Pijjyw06p&&AiZcf{d{AP@ z^CP@8KdH;H%RTW%=eeVBo}BHPHR7fN%@lORAJo2SbL(_%kw>XoKL4F4;UN~2LR%76 zk@`n!+dseJ@%sZ_Y1{RkryWqcoVu&ZoAaL(JlA`mNZ^gHe&zo4v#97Rf&7MD#FMMs zU3Ga{DXeM$&OWyCmC3@GyO|SHhmrfcwc9W}+`ojF$k1MpFc}o8iW0gcdXlO1@>vQizby4 z#bd!s`M{@mdRo+C@>ppbT!l6`Ss#2A%K+Rvr9TVudf&*=*f-O*t~;knxr@p3z0O0` zE^PX_f>0DeAMANs8BiB1&&3@ @Un}$@K!+rKv5c}+WqSrvZFL8k%!wSc4}jW~ z&X5Wl4T!r7ALQQ47-}w7RN1xez>46E6$;z?aweGok;?36@jXJ=nUKGknRuzc2zobN z9whJ(RN)NJi4Pv2v)9?`LtyVl#m-h%`eFUlqC{lFC*Y7J)d#mY!js>G=hLAYLzxpy zx5GuFbuH#A>dGB2oem#g>hkyXjy7#rF9ESE`G y zSaz(rKZ_&7mr#v4ZRK%(!WJ$KS0O9*y@yI#C%BlO0n-?+f1I)MThX7^oywieXY=O^ zu3m*7wD*(_(QAKg`G6-zp?9}cIhW^Fzp}se=gAuubO(SNyjnDSdY>aXPc0W#c1C%s z%=cx`oGRvt%_ozw1nDj|F_9<(@qc{(|F{utOQ|Zv;eC_1ju;t<`H*{e3Nfrsg*yr& z88`M3L%mHGZeJihp36P2eO&}Yei8ga@);QWCzL4A8#FuDp21oT*y-NZhO;;KE*jp> z8))+B+L-76S0C~jow2Tm3dOJu=)FJg|KibS1m1rI#LD}v#dcp?KP)rBr@MV;0~K!{ zi!caZpP@aWmJugVbDXR0qYC!u4T466b1XcdL`XhFDR)-K=R;Z3Hd}#M*CQqXrgT^4 zKU#c&d$uUAECj!mnL2_$siu553Atz}kXUT8`^l(>n)ykUU(yT1&i Y^}l)NW)5WVGGi|Tf*JqO zpuFYDJJP18)!5O|oVItgr=NyE_z(<%qtsq`$<&akv7M+@oc01mbn2V{Z1#$iu~%xr z; !f9lu#DyF z%tH6_afZGt$4kA6uhm1;p3y<3%6q~3D%!P#+%O45BvZJ#SRKl_7@=JOhK1D8DHZ!w zz<9$1)|p8JRN3^y<3QP36|;A< cT2)XUh@w?G4S-hlMqn zToEa8uvWW!McQ7VECE?ln^^~7@C{o~26R95j89A3JuK(}>rX1z*N@_d4hM;9#c@Ta zsw7c4t5I``j`?8Syp`L%A^*qO=vLucCAm}P{n@-3FkN3m(mMx!XEH<9Ou7`)mpMr^ z6uF7Sw_tn9dYW2ztt*dEZ0+0$z2chrD=R~eN$*{1)uq#+FXgkzczsyxbM6*pd$AnS zV1eR%j+q0-Rj%c_WB+~*6gL@=WlQciXy@r@s+kovlP7f(D=#py$bIE3M2>0}xLr~) zOZNg|O3ZVe)h9@=P`3XzFRi@o*FYGisw7%nqrNR-L%Azg7r2%uTMt(9l}ir<`bw-h z$aFgS8>ETM{YT>~@#+(FhW9Iu@}lt^hgZfeQ?}FK{ZTp1+UeZssn=yE7y1*0sk~3j zD9&$ZFCM$%;_6)dQ>Wabpb(6c+s?hof~)-fEKjQa@5}yAI^<5}a=>}V*J2gp*Q%^K zw>UXvri*Sfv0X;UB<%4xa)Gpi|Ah7lF8^i(klSaS%p-4V|AJsJt!rM;i@IF?1_8>8 z%A$62$ s77yYe!$P =b| z)a?@Oc>G)};-{ZT4 D^fOS;7;Tx{HYuHDw3#3^BV zA8vKwq!t4lGqdxsy2wWa-KP#Hd&>Hnz3>vJGiQEE=*Mu@G2fyy;f!TjQ+SMhBcr#H z7l3dkka2g*tIsA*e7$?7CTRWMQ{AF=971C`-RH99Q{8tW%cf-eKn?r-vuS^7=-9bJ z-5h0qKWy$2x2cv2)|a0*f3HA&IBt|@a5At=J$NygQv!R^1D8qZt$3^~5jy!XY7c6y zk=bMX=_mR)?VaD_8U9uay9fvK_4^MSqGguw*?B5(HYG%psk$qHh!BKTp>{H-tz|wZ z&5Zk?j=(AM-E5fTXB9X4==;J4uZw&ECf%p_9b&PFU5o+pysw?1p{jAla}&cUYKk)97ubu?7XezCOXS-Jv-NC8{llCWL+ zSlor}s`=DXJ162lN{ZfYpW_?&4uop}WY)LepmCKySS)dL`t>?yf9eJYBQ*`s9OcNN zg+?iA4)7l@PY$f-4{C=5*y3$8YUiats+RNyX@$OK$yn0DO@9qQYyJSYl!0m{kC<*Q zMSmD!cu<@3q0@#Rl%jJIG^IX!b-*YQ7l* So+Kuq8n5G-TkWKDupqghaBEq|l0`bZ@-5rpW~^~BrauP8`DE_PKikc3 zkRR<&29>q(sDW@9l|ly~DJPam(?n{q$6L0b;&NO1X;o{5-2$l#`$^e?V(@D+5wmt$ zXo9B2{oUq)P|jGL3C2FoMu_tq0YqYHu$1mu2g{2%DR{ini?K66DIP22N5D3K=vh^c z4h5Fx>z__j{wx?ulwfE(mnl^IX>-+F8i7S!-Hi8H72m@$Znk(+|BK*i0Sr#+XL0OT zt`&m)nKbh az;g2arpK{d3ZjcjNG}-@j aVowj0hoe3%=uW zBZL5d-WkU|#=-2?$p16|mj%1B!f|_$`>gV@2lG+}XLZd14zP>Ug#$90+z;PR%^rW_ zbc`4I@SzW2yAjEfbRqba`_0U|PgSSqyK9`PFIL#TsfjAdUup2O6xBzk;&CW&CgB(c zD&*{tF#hwCYH|tA6qvyrDn6b_d~FxMS-bC0*CJU_vHrm=Zn4P5sWaQ;JWg4!{)--O zK#0F^a!>u`x{=``%*-Tz=JBavZ9~dpYYxSi9=1~Ek4;$Ld28sm>8G2q68`yfs?od1 zqhokwR7|K_so|b>t&kf1*}RqrW@3O9H$u`Zrz_#E1zqP-6Ha661Xlh3G*g`IM?up6 zF>n4clM1$?{(Uj+|EIn23=&sHaR1a>wmX|G$tATNb;G)^1N)OTes_5{@~=gC2ef@P z{%5(9ygB`|AOR~mc8Eo4I}*55zoZf+c-3<;TLS9H2^g{HxtvrE2lCtjB>PJ4;|SXa zHzL15pL&3uu=1kgr?r9Z71-%gJVaK^9<~}LI5+UT!6Y$rGsg$}-C=&Tn&E5;W-K@G z?L7aw;D6uZukjy=$j`J2A& )s zQrNLnVHAe+9m4M|T*io~ts@#k<&@Xf`K|G^)}$25kDKgvRntsEyO0 VBDWww0CyqEvwYBY;-}Y0D{h0iI9oh91u+rl98t&jR9`S z5mR-0+bi3(EV9wc#b<5>XaW0Hy+WLD|MBauMQ4+bj}(}PPdeqdZypU{1(AfWn3|fc zsC#?MBrIvNs_|7fz4|mXWM@4DFegRdteeksB9~+t(~V}>ruYj)x(Xjnr`zXAj+8w) z)W1lN6FFrv9xt@~ujSAw0>V31y0S zQ~w&CDKqC5>m!_JuD$n0Pa0O_y8Z0`o*D(6@3sc4C84J}=yAi=uME!Y-QkL_+|Ih7 z{Qg55J}VXrm>BF#yXzGTM)TjGq^1s1=&^i4e-@r6wJ41c`@I?=4NAyVo0@f-C9jc!2vs(!7 zjm|7Ruu8eOeT{H+J4rAn`3qYC{yP#wKub1eMwT7T6A ~$fe8iydP@&x;Wf?E zt#00>dqO>h%>&qE#vh4`$=}^R9>n|b9>c8v>cb5e^qnSJ(vM*l$i{xG>>1FmLl)hW zC8P~k0H=3$wY}(mZC*5{`ao@D*Le=op0@)gLX1Qo=0OO;Um{nJwm(ZV&VXJ z>sZGK9*nrXvIc8D_zc1F*!}irA_1ugv`A0K9bYH-l_o`i{T`4&@$j*Vyppo_ZTZ}M zD!|`x@5P0q?8O5Uv>%`t@K3jg+hmM+3>2*0e>%f9N3sC%rw(|jy0xNPeSSbfl@JXS zTQ~f%Bx~;e#ogGP8kN=aj0%3e*`83gW9;j_g4HygKivUmN_wUb(Kn =J7`{mX*>~Bfl!>8(Ko|S!PZlV+?1;6uh zcF9zt(K7h5O#_Yus&wV5O}&&F7r z6VUVj0{sEMdA|dQU{-#GrVs2QI!N|iR~1Ws7~?}^$HDGD)F{e?z;BM_qr6!y`^O~q zB*ruUh8X(CsMfke{!d6F`G3FiUvO9dhrL1e-#6kt6RpSf3N+5^48czn2v>Ri)-jxO zf#R)9`A{eAs>Wn9)T=YT$rYFqq1-~X>BYq00cZLfdcpW?6Nk-nOOJe1QUW|fY Y4A_r;gt8 RFuw)*&l|U1EfLv-)^L9Aqp@8we zO7p} XeI7^dQY=1eMenA*4zl3AL{_@;JuikE9bvjz #X5N0Gwiy>BY&-=$2op1J=mc=ED53 z B*|%>sBW3Y@)b^v2(1TIL zIMI%{InRWQQIUH7ZYDnxb7?fQUgs2BrP@pG742_lj`zT4hyh3SXGdrNnJf(&=L$X^ z%;#$i>rc+!_kP=7RY4?-z{_!9hQ@QjZH2{GHrA(S;PsuS3rOxdoWV020FG*Jo9X zG`uD2o{@zTr2UaTOjJLr@Vi(j(a@dx#FwYmqUE? }uJ(*m?5&dKg}C6NUuo2~P8@ourwTZ8*0aOFiHTM; zc8iVm5@QaIA}Lj9!CVJ(!dcPPuy%>89>IKcrVDXfTYJd-;#LfKGV~=6LmBn@=FY8g zQNdvU`@Z10cBZ`>e$B}FiG`ipGma6yY@1)5LTsW0FIC1*c?lzak`Q2As^?ls5Zs}C zchKII`;4Ml`aI2MeOvot^&xDrLj5COz7DNzio8!d$sz(o$1W|pIwCS@8t0W(vMVhd zLe)Q;Je8}ZBq+{Q^RZaQl$D3__`mkViI$&0jd#0XLrvgE$q4D+pzsFeZHsA+j>&`M z9!O+H-bdxQ=e}(NF6_^jmr)w6Xcf2|k;B`!zRKt?nRN4_bl^5K7NWaO+x6k|LKjD6 z+4Se~`1A%or5Ke7QJ00&9@+a-H( tKX{ zB9K6Q0)G`FKyZA}aVU5I7-iioSM9SK7mGq?QR^-!kFv@zKwz8>&V;=y6_Sr4+u4WB zhn9PmK6@Y|+eiI8JxRosqqA#CoZ|3{`-=`Z#{^(%CjbZ0l?&!Ma2C6nzT*7+8-zMM z6XgBA8l4po_39D837+!j_Ent3C?eIBCTats)-@Zdke<=O=fPvq9;;3*ArIPQj(IId zcq+Uh7w%tZ-@Z>R_a8T>i9|50_LQ?CS`EyFLmo~zB&QK3eOqe!sKILTp0|jd*oOgH zDS$Rv<98a6m9`-Gk@C7AoIU9h@iPVSE#yHe8}Lo=O#N-{p1V*%7vXoZ4yn9R%_9R- z``-8PHmi`o0K6n&f<}Gm?a)lU7cU4~!a-kLZ$0wOT?>f)*+zx1Ybb*D OKhDSRvhHHE6M79$W5s9U$b&h@9rsj9 zWiM)K`g{1JPQEYDB7SQfA1|4rR*lq$1Yy*_o=G1RNP>$w0yXbSE_pjgec2Eo#vyi^ z1TX#u1?mS79m+73LMwaT_GZD(J~~mh6E@biL=179a@>EmnaYr%piuk8#%qWe#o1pO zDl26XcF9=!RS~}9t7&grHzzymEeAU~{2%Qdc{tST`lmhVC=E$8N;ga)OC-x=8B5kF zTO^@GLS(0Y>Ks|JghXVWgp4gqmTHP36bYk-nltt#%VZhMc0Zlda-VzZ-uu*fp8MQ; z{+K_0GvD`q@9+KIdEfVYw@-)9io#hVY;x?XF~qN!<-Kw(U7fM2Lsh`q*Hvll;d|<- zB3n!hc*BA-E4Qu+iX30P%|s+7)wib#<~jeY+<#>hp~%Z7)JnpIA>q@rrfbO4Ui3=& zIFHUXX?Yu@^qUx(dz5oo#{*@CTv{EeomLWQWz;5d+Ka$da=7s}>B;@Vxc=S8yQ{-A zDhgWrPpZgj*T9}<`PD@*I{*lraS?@#d9&tZ7B+27qF6#tIbq(u55 LbutL)9Ef8z$7`wQBwK 89; B=5&{BVZ?_@7Y@+?nor zhI3zXdV*7jw#7wvvCYBvC3$_(#OzzF1#%P%hk?iTH`dZ(0@ebDm> wH=*xSwE$Rej?Nn` 7S4cv?N^hplf z*-cp3bla4eiPsHbrueWS<$C6{7^}G&g!}AS3%r#WRg)FSSuZkU3Q2o`qwkww`9;%* z%=!@?>AOM6LIE2ZOa!saVB|;8cg1k=9AAMYn8SsBH%gcvKu=_7e*~J}DAvCpm?0;v zL0lA=B ?gyK$*a7AN&_~W9{AE8=Z#Wn`je!?FCe}>wf8THqz z{Lv2owJZMz47RDt )3PSFX<>vu z`*!r`xDAu5Ltr%O>9-rse4pU@(7?td^@yHpiIEoqHQty}8><7QRb|s_a5*!D^UFv; zx%m;M`A1Ko # %sDwgJa5)kqfJVDNP2VkBV@pXI%uwA?-1Nfw61VE)QYQZRQo& z(Dp6OHXu!x`@MXLJsVO}g6TartZfmm*w70@GHWh@4Ta_eN>K{e&n1oMx&7oQaI08O z{DDO&T~Tt=#=YH-IE0U1h|?7fQPx0)l55{P?n@e>j+3*?Zd~m5zBQFtTw%*$U$2&W zHNf{HeroRq855IiXj|Zyi{RwZ(;Myr$qM$T2NgcNFVE2+zaZI{WM?RmG`Ih)dZQL) zQ`}|^`;^LN#oL~rUsvs2{|9g)&R;?hdmhbPHU^SL!r-~^Cz;VM-1D=9_iij5l^cW< z7P8OfOL{0Zh2@hRB{Q#MJ1m6Hs0qi=uEL%~p;L~8_p3n&sQ@55BxBlk6{WC6v-I4; zj)gl8*~`*o{R`e$SM!)C`0R9T#78}OB;u-M-%fAu(69g&2{*lvL9D#~0!>##5B@@) zo0w~5rl(ESxG{Vfr&4%@kFZ`C%~KRuN-R0pQIs*6%!Y*6kU+N8HC0Y({NN?4$7bhw zIwj>iBl}zqNXVZoH_;EV7qd>6BsR40D-L5GwtNKu2KpLk!%K>PyKWb@sn44;6!*8V zA!yujN$2cExMekgN~YpIA=>VrA3U3oYmhx+X3pnxt@&U;KxmTUHrtNF7E8E`Z%-dt zlSWz%H0KUbbqCj_tR2ynsqfdxisIN?uRp8Wp_S&uhLA6S%L$&|uwS4Qi!ol`LJAih z!?<_Mz1C@^N--iVLzw59*ic4Nmiaxvz#>~R0LeT6nH_REk9cbaf1^* KmT8?pwb^b7l3l!`M;O`b6G){VJh-`j-A5r25BRXUfd(K+p4jldqMdxSw4ugvi! z^^DZc9-CB2jhBmYS|}UOk}oQX 2n$%f%C)%bMLyS1F+Wwe(HDHg7rOo+UvOSvyUsNd!$K{l#(-%i{(yZb1q z^yizY`a?s49FY_s`-q d)|+ za8z937|3{Xq5XWDI;-vQOV7MjJ<*Sh53iieExmI8{`2Z{!%gdCmE;4vgBr 4Bbp#`}P^H>a!!LS=;Yck3qBHJtPDa`v(f zaJO|6bZxz?XL>U7SOk|#gw}yz{$(3FMV0q>o2MZd?taH43cZx9a`~R)gJ+uKoh9ai z A`*jkA2aYf`FqklGm vVuoJ;H7KL<%;#{nR KYMCZ|D=goeBdMf=-ue%m#dTi>A&?!nZ(Jk7lf2C3?=?yhIL=`dQKafYETfGrz zIsBr`%2zJVaRGm~(+$z17(3Pci`9uvsYLJPCm_B r|m%x!ezpk~c7%@Li?;QCZHrV)+B gV)-_=$B5_XD5;~9RJK;#A!)!( z;?T3R?PJD>^AKmtEx=)Pqd8Uxvlr;Mq!X%bEHn@YzCar6Nc<=9@p4go_ HRT%$z)4bb~!#sdzLA(+RVsd}dM|VJzILb9!te^9)@koX66%INc zU4`0*q8v2#u^F6?6BEzZwyS4dxCV4?H-TZzzo@)V5STQeyf+$TmM%P|OEFfU`%bkqg10p&D_qpP3??=5Ok(?+o(1UQJbu>wFmE(&;bk*|kAS|||Y^>9rA788`sOii15 zyQpWyK7r=-2;a3F{cakZ@}}Tk0!8~1*Q{ll&3vS9Z$W|88_PZ0&vhJw0CBuXmyZSnxfmxqSR0u7f zRF(34*0D=;7j8#53X$|W=* ~Q-S}1xtF2re wrN1ptD!Vg!HeJgt~T95SQ)d^nWr!6MH94q~`e>xch) zPu_nT5r4?0<@iR8_jKv|ZM~Yu@#rDCIb3WY;mlq|q5hbgG1p&5=}9-pVKF*L_Upd` D%}IaJ literal 0 HcmV?d00001 diff --git a/src/tools/umodel.md b/src/tools/umodel.md index dea03e7..126b6e9 100644 --- a/src/tools/umodel.md +++ b/src/tools/umodel.md @@ -1,3 +1,14 @@ # Using Umodel
+ +Installation is fairly simple, however I would recommend instead using Fmodel unless you have specific reasons to use Umodel (such as audio or something). It's generally just a more mature piece of software. +However, for posterity, install it as such: + +- Install Umodel from [this link](https://cdn.discordapp.com/attachments/828965774894563400/926715841083506759/umodel_animscale.rar?ex=66fd89a2&is=66fc3822&hm=f634f15a6a96a056788f88fbde8f72e24d0ffb864dd496d44c42954266315c57&) (if this is dead, it's in #strive-resources in the discord) +- Get it opened, point it at your game's install directory and *force the game override to 4.25* +- hit Okay, provide it the AES key `0x3D96F3E41ED4B90B6C96CA3B2393F8911A5F6A48FE71F54B495E8F1AFD94CD73` +
+Steps 2 and 3 will need to be done *every time you launch*. However, Umodel can be launched with arguments using a shortcut; +mine is configured like such in the Target field, set it up as needed. +`"D:\MODDING\-- PROGRAMS\umodel_win32\umodel.exe" -gui -path="C:\Users\muuyo\Documents\UnrealEditor\RED\Content\Paks" -game="ue4.25" -sounds -aes="0x3D96F3E41ED4B90B6C96CA3B2393F8911A5F6A48FE71F54B495E8F1AFD94CD73"` \ No newline at end of file diff --git a/src/ue4/custom-project.md b/src/ue4/custom-project.md index 339859c..e09b1bc 100644 --- a/src/ue4/custom-project.md +++ b/src/ue4/custom-project.md @@ -12,10 +12,27 @@ Below are download links for each game: - [DNF Duel custom project](https://1drv.ms/u/s!ApT7KvOr_B0hgY3rUBgqs787KHi5_iY?e=xKuxrI) - [Granblue Fantasy Versus Rising custom project](https://drive.google.com/file/d/1aA1WYxkxpOUpNqSi5kANLUhh4Ja7A_4l/view?usp=drive_link) -The Guilty Gear -Strive- custom project does not come with content by default. To get the content, you can copy `pakchunk0-WindowsNoEditor.pak` from your copy of Strive into `RED\Content\Paks`. If the Paks folder does not exist, create it. + + ++ Once you have downloaded the correct project, extract it to your Unreal Projects directory. If you've run the editor before, you can usually find it at `Documents\Unreal Projects\`. **For Guilty Gear -Strive-, the custom project is already part of the editor.** You'll also need a working installation of Microsoft's Visual Studio in order for the editor to be able to compile the project. From 3aeada7bfa456f42f0882900a3cae0489631b468 Mon Sep 17 00:00:00 2001 From: muuyo <34991771+muuyo@users.noreply.github.com> Date: Tue, 1 Oct 2024 17:27:38 -0600 Subject: [PATCH 02/15] Delete mdbook.yml --- .github/workflows/mdbook.yml | 60 ------------------------------------ 1 file changed, 60 deletions(-) delete mode 100644 .github/workflows/mdbook.yml diff --git a/.github/workflows/mdbook.yml b/.github/workflows/mdbook.yml deleted file mode 100644 index 5f0ec5c..0000000 --- a/.github/workflows/mdbook.yml +++ /dev/null @@ -1,60 +0,0 @@ -# Sample workflow for building and deploying a mdBook site to GitHub Pages -# -# To get started with mdBook see: https://rust-lang.github.io/mdBook/index.html -# -name: Deploy mdBook site to Pages - -on: - # Runs on pushes targeting the default branch - push: - branches: ["master"] - - # Allows you to run this workflow manually from the Actions tab - workflow_dispatch: - -# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages -permissions: - contents: read - pages: write - id-token: write - -# Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued. -# However, do NOT cancel in-progress runs as we want to allow these production deployments to complete. -concurrency: - group: "pages" - cancel-in-progress: false - -jobs: - # Build job - build: - runs-on: ubuntu-latest - env: - MDBOOK_VERSION: 0.4.21 - steps: - - uses: actions/checkout@v3 - - name: Install mdBook - run: | - curl --proto '=https' --tlsv1.2 https://sh.rustup.rs -sSf -y | sh - rustup update - cargo install --version ${MDBOOK_VERSION} mdbook - - name: Setup Pages - id: pages - uses: actions/configure-pages@v3 - - name: Build with mdBook - run: mdbook build - - name: Upload artifact - uses: actions/upload-pages-artifact@v2 - with: - path: ./book - - # Deployment job - deploy: - environment: - name: github-pages - url: ${{ steps.deployment.outputs.page_url }} - runs-on: ubuntu-latest - needs: build - steps: - - name: Deploy to GitHub Pages - id: deployment - uses: actions/deploy-pages@v2 From b943b5f008473b78eb7ff1190a0405ba9656528a Mon Sep 17 00:00:00 2001 From: muuyo <34991771+muuyo@users.noreply.github.com> Date: Tue, 1 Oct 2024 17:27:52 -0600 Subject: [PATCH 03/15] Create mdbook.yml --- .github/workflows/mdbook.yml | 60 ++++++++++++++++++++++++++++++++++++ 1 file changed, 60 insertions(+) create mode 100644 .github/workflows/mdbook.yml diff --git a/.github/workflows/mdbook.yml b/.github/workflows/mdbook.yml new file mode 100644 index 0000000..109cc83 --- /dev/null +++ b/.github/workflows/mdbook.yml @@ -0,0 +1,60 @@ +# Sample workflow for building and deploying a mdBook site to GitHub Pages +# +# To get started with mdBook see: https://rust-lang.github.io/mdBook/index.html +# +name: Deploy mdBook site to Pages + +on: + # Runs on pushes targeting the default branch + push: + branches: ["master"] + + # Allows you to run this workflow manually from the Actions tab + workflow_dispatch: + +# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages +permissions: + contents: read + pages: write + id-token: write + +# Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued. +# However, do NOT cancel in-progress runs as we want to allow these production deployments to complete. +concurrency: + group: "pages" + cancel-in-progress: false + +jobs: + # Build job + build: + runs-on: ubuntu-latest + env: + MDBOOK_VERSION: 0.4.36 + steps: + - uses: actions/checkout@v4 + - name: Install mdBook + run: | + curl --proto '=https' --tlsv1.2 https://sh.rustup.rs -sSf -y | sh + rustup update + cargo install --version ${MDBOOK_VERSION} mdbook + - name: Setup Pages + id: pages + uses: actions/configure-pages@v5 + - name: Build with mdBook + run: mdbook build + - name: Upload artifact + uses: actions/upload-pages-artifact@v3 + with: + path: ./book + + # Deployment job + deploy: + environment: + name: github-pages + url: ${{ steps.deployment.outputs.page_url }} + runs-on: ubuntu-latest + needs: build + steps: + - name: Deploy to GitHub Pages + id: deployment + uses: actions/deploy-pages@v4 From 5c7e1a4b18cb179c8bf21a6716ca51ca9af5c92b Mon Sep 17 00:00:00 2001 From: muuyo <34991771+muuyo@users.noreply.github.com> Date: Thu, 10 Oct 2024 23:50:43 -0600 Subject: [PATCH 04/15] Add the tangent importing section --- src/SUMMARY.md | 1 + src/modding-mesh/images/exportsettings.jpg | Bin 0 -> 59129 bytes src/modding-mesh/images/materialchecking.mp4 | Bin 0 -> 5367327 bytes src/modding-mesh/images/tangentdata.jpg | Bin 0 -> 57430 bytes .../images/unrealimportsettings.jpg | Bin 0 -> 130114 bytes src/modding-mesh/io_scene_fbx_arcsys.zip | Bin 0 -> 345383 bytes src/modding-mesh/mesh-tangents.md | 54 ++++++++++++++++++ src/tools/umodel.md | 3 + src/ue4/custom-project.md | 7 ++- 9 files changed, 62 insertions(+), 3 deletions(-) create mode 100644 src/modding-mesh/images/exportsettings.jpg create mode 100644 src/modding-mesh/images/materialchecking.mp4 create mode 100644 src/modding-mesh/images/tangentdata.jpg create mode 100644 src/modding-mesh/images/unrealimportsettings.jpg create mode 100644 src/modding-mesh/io_scene_fbx_arcsys.zip create mode 100644 src/modding-mesh/mesh-tangents.md diff --git a/src/SUMMARY.md b/src/SUMMARY.md index 12d6a46..9413446 100644 --- a/src/SUMMARY.md +++ b/src/SUMMARY.md @@ -20,6 +20,7 @@ - [Mesh/Model](modding-mesh/mesh-intro.md) - [Extracting game models](modding-mesh/mesh-extracting.md) - [Importing models into Blender]() + - [Setting up tangent-based outlines](modding-mesh/mesh-tangents.md) - [Exporting models into UE4]() - [Setting materials and outline]() - [Custom materials]() diff --git a/src/modding-mesh/images/exportsettings.jpg b/src/modding-mesh/images/exportsettings.jpg new file mode 100644 index 0000000000000000000000000000000000000000..46c9a9f2e9c6449e73742810b0951daac80f43ff GIT binary patch literal 59129 zcmeFZ1ymf}wl3O8a1ZW;#v#F7Lul*=0tB}txI1Z_KyZhk!4lkqG!B8_5Fj`--nhF% zb36I>JNrNToW1XU_q{RhcyHWhEPC~-s#R;Qs#^1#bAGcPW*(LS1WF)95C91Y3Gf>6 z2Y6TkSjmB{EdT%&6#zQ`0KfpCB2fY!A!Guilty Gear-specific information
+
+ +The Guilty Gear -Strive- custom project does not come with content by default. To get the content, you can copy `pakchunk0-WindowsNoEditor.pak` from your copy of Strive into `RED\Content\Paks`. If the Paks folder does not exist, create it. + +Alternatively, you can create a [symbolic link](https://www.howtogeek.com/16226/complete-guide-to-symbolic-links-symlinks-on-windows-or-linux/) in Windows by either using one of the tools on the linked page or opening a Command Prompt in the `RED/Content/Paks` directory and using a command like this: +
+`mklink pakchunk0-WindowsNoEditor.pak "C:\Program Files (x86)\Steam\steamapps\common\GUILTY GEAR STRIVE\RED\Content\Paks\pakchunk0-WindowsNoEditor.pak"`. + +This saves around 30 GB of hard drive space, since you're not duplicating the files in two places - and it will also update automatically. +If this doesn't work, run as administrator - I also wasn't able to do this in Powershell, *only* Command Prompt. Additionally, the Strive project may receive asset patches for certain assets. To use these, extract `GGSTContent_Patch.rar` into `RED`. +Finally, if you don't want to do active work in the Advanced Project (due to the quantity of files), you can create a new project under the File dropdown at the top left - however, i've found **this has to be "christened"** by copying the `Config` folder from `/RED/` into your new project's folder, overwriting as necessary. If this step is not done, cooking won't work. + +
+BWK!_-+ zi1O?68c}{7^ZVQBjkSZ@QwMW5dV#0hPkHzdXPN`Z0?<$&p*=!HLwkgVj*f e#`>!hBy@Ci zEDWs2SXhr)DM=|=|8IXD+5v l>R}+dIc6r)TFEmsi&}zvMy!p!_M;e@ONZauFirLPkYJ zK}G*17ZUP2L_r}$eZ;_nMkJ$-{>J(76W;e2#LweDS9M@A@@X8AymcAHA_elVFdhFA z?YCtAo?wChOOpMEV1Jhj3cx`@LR>r)LVy(Dx@m)sS-QF2%(8%;vcA~A(&W;=xTMuq zmWMSr_VC&L8SCop-~+%H3yoO4_c8^3L+pIN{s3qT2K=AjzvqL5<>S2XBFOJ32V<*P zyx;*~3BM)wRDqA&U$E8?(vYwuJOK6{087tf*}lypCa# A# -FttqYvS^|7RV` zRw{|@NpH2WN_T97xkwI=EHUA(nmzhzX6I%HmsjuTUz=Hy#54PicnNw>g(T)J*_ S=Y%ys?#$_O0CXf&S#i~* zW)BfP?r$7DODh70>D%gSSf@*Tmt~slN?;Yc+(#i?PbFq|YV|U6eU;te6}Y3RpSE|` zP`k9R=|a;|5HyH~A?BJG*U-DTx)>m0lyzozS*R|J`@2(jV!*=xu7-0{)jw=VTOI&| zTJX1@ODX;D{OA0q5%r4fo@gt7QpqAE)-Sc <;HIweR63d4QQy6u|v<1MLI4U1oQ`Rgo#|lQ7 z$Le^e0VkfVS3UMS5YYRXTX2|0y}WjUL7n~-J>0+wnm?I0tqrx`oBDcqY7v8G7W?{9 zJvTWy>f@|563#{1sn0P}inYEV;e!R!ddoT|W{WL?)eV-fB=g|PE^Zr1nnt+^dl;D? zQ$s_8GBZ0RAF=EZVPdnjSlEcq)B_;uu(t1x0aj#xE=HC1l&Q{JPqo7FsY8 |ViNajrk1xk@*lAMoJS>0!@ zz-`g@ZQ-(tc3jy%q!j>3J<@}$ck<<4A%#WyYOBvkB Ex0U-k8?Ob z4i)D%==CbP2zj^Eipn`8Humhc6=bEcpuOC8+FzymI_`B9V==w^p}r`7 5^`JOVZnS^bJnp{lNIt6&;CoK>BN!@Re5QLyaMRdzFgCXA-YTt0^eOSHXs6 z74pVOG+Du=#)~SJ=J`wWMxEJ$808C#;_mY~W_|+Ow4~GJ6`zmo^MBm<+(fVMxiaqP zoEY?qvyYj-DA^6f<^UL=ACZ7 h+DC=e1+>ZSRPI!YyIrvb%Wq~OZ~tq zil>;z{=CPgly}6ru7EGoekCV=w6aQT@{(Ti_JO;vhJkjPo~GG%Ik!`+B =L69}k5tKB%8>dTx=^GkAf8Puw~=?jj^K2E z96jso*+p`_%0-xrcvJA2H!$3D4w-eC0DpL?OP(4jgLEtV;MocB&$Qf?eKts@Tse_C zp@D5=bhj(KgzRH%uZ0xlP^H4vyH(QqZ!u#=&pP{wMctv{OKM>X>-OeQioQWodX((e z1hHub7>%EbYu~BcJ^M)iLhM(){I $^ FTBt@zw6rFuI`+cJ$sMxb&o7w2O!PXqeT`XBTr)wq6%Z}W^D~qGQ=u3y| zx9o0x(r@NWg%OYSG4VbN?3Ya)Bo6emz8vi{tWfLwCM9uI>~2D5V3Q(PFGO0?&FM#P zuN4n4*Y$W_5|F^V{K6|h)OCB)?IoE6R&VcD>w2Mg9v deX z4ZMJumdPPY7;bHX^`UJsI9HuuhkLPBG-HSHMRYyJ1e$%XRG0I3p}+>e`s>Eo9XP|7 zac{RrlhZf1$wRJ+72B|QEIZy5?ar(d98(dL4DEyZqM?F2y0QId`%qkymk$6?_{`m5 zA){xXuQabPio|oBl+g&}6*=OUNdHfYHva?Q>H$#q0H`Rv>(=?FI&-w1&c~Pii4X@~ z8VOhL5}i^+l^7xVNBGj^&)flj$J?z}XD@lRTifiPNN^9}M!7-;x=)T7*^BMYw@P?2 zoL}7)Ui<>gYH|RXb*Xv;qCUx dADx#$`T(U)@CmWdAxA!QX9E aW!o1@xcY~N2*$-j>8ciU*I zRGSo|G{N J6R{u62Y0e8s9*Nx%lvg1DqkM}o>GTZaDF?fMYY>K|7h92 zZ06?VUDw3Pz@f|VN_XhIM?Bzdy;ozL<`cYeGWjP46EEp!{9CdwXC45QiWpcWcutBy z|7;r*rdByndvQk&wy6J|Pxj3w3p~I&Wr@8vW*GtD{jwhbbS&`3{s%w~rN!sVH#c TqMRASJ34(KI(;Qpq<>o3F1y2oDK9VyaM<%?&BCm6 zY3<(XF;Wb2%GG~eMl7`G0u48#4L4)z(%64iUQKzVkkw;5nxob~{>o$;j$PFbT*d GnnD^PtT3U|I zDH+oQGHCu_OJ2Aep!NG;Yu21cf2+jL8YSrl;0X&CARkE9I!Ho3lZKZLt;|AZ%GZ6F zDY|P@kUB6K00AJ^dDke{sEyCx#?P^_4X8fVTCKE&4LK~n7W>Jg;e;p8E-$<-P4edq z#QyL d@yUV)Gf!kk?2|8KrU}w3uMnbf z{5b@=KM$<1CKU~-Dv~uVkP{f1@5LncNu0k&6Bz>N{O-`!v`dm=+DC$zcV}vd_%Tt{ zAay^#U1!Mwh*5HO=*@NP{l(oDvP$n%bnjG|EvXPxve30~hyCZGL1T>WWeBvhPKF*% zqV{{J(nJowh5y@`WB(i~K=Jp*nD8@2JjmZf#e3nmer`z2zpuOcpZ%ZG-R@uiMEw+7 zP8C}&zae!wcbfaZ(xbN9h7^?a+xet_YRN!%T=H5VnoZBA2LJ<=$<5BUA6lAMqxtx- z-bwr~5$q%U%JJc7zU-7$zVKTAX02Uj5Be_=Y&fh474)lcsCAMO+O#o^x!s1iha4PG zc~bJCJbH(v(8nk&nUtmvCu|8)JGO}Q2E&aYkh8~1S1dN15sK|=NBByB9f3+bu$Mhw zSHc#GPT=A5B-B!Gepleu*tH4UD~&=RHT9ZB6$BsoDpEC2q|%Ov9ICtWcACe6#lMM( zs)p3p#HzH7{TMP;x_E+yF1uBY!d%iZAY$M_-mAAA%G zx9Zb9o@Jrc)I-MeBBaBg?x}D@)x1BDM@P?i$tTiAK7<}2F8dj=*xNQ$jjQaJ%5W+H z9eD-rm*+bGIM=8_?c#VXYGM2m@|~BZ)};nv7T_tfxhH)U(W6NplNf{gBuZPR?&QA= z!sy6sw434*BrN55UIbE*B$xt4!mAsG8BODqZl^h5L#pF1$HcjC%NEV1M6K%^s1#=4 zK4oM;*OTfjUXdJ7ee@lfV=maTld>*_>Bj>As(pN43}k3&g!0EdYNunv?{V?d95Ozx z?6e#gpn0rvgxKX-Wd&!J?Go>cR}l&e35GmS5)?KH)2pee$kkYUIj%CwvT}*wiljH< z%IhNC_eC&q(_Hh9^{N@LV)<2E7LA|wXG1#bV9U0#!n)=bf@a?=SFdRlClt;yp3KJG zJuBK!iU$COPMB0(iV}Q8%FfDfjECQXkL>R3RLE`?KDB2VF*DglYomQ}^QbkytlDOJ z>U7?)$0DkmGA~#*bol2dkIe3{%}N0Xe%PG^ZA=?6eA4x;TVbtedwm>hQpJla%xJjD zVC`|1YsBdIozcnyhtl|&vb{b>YEP2D$CPPGZxvz r@5?R8$CZhdfPDU#d{j%YJ^w3%%!Y+lsR1E%haMVXVMxq6#|ZAFhmCX zBsNFqSkeip+7?c_OJVFNdfMYv+m)M6ebW9wrD*aaMt60AXa#I;&T;yhPQMiPjc^N^ zU(sgon9CbWs8|B+1@gY#VMdZhcN_rs$&;si9Qu%*kdLGA6W?nq5{t@B>}k_I0ighaTfJujiOzQd z GANhJ`o7w=Uq-|F$M4T0&cPm`{x6smxd}sVZZ#2&k zaPL~`d|2%sFrkwdPwTsr{R_Th`{VeUY-xRo;9z(}tS _H;?ge zw8hzcwzn^z!Z-v50>O;tf1sT5(B|P#PbbNi*boSm%J{ycfZ)`vGn=2t66rGI4`9Ak z6 m-G878~n7hhxm(L z+wZ-BkdE$1YJE#1=cz#I%6=-n`FY6Xh`MY#i)QNSnZ1ze ^YnE-j*oDkYA#*0Ay_inY5H*a zb9JC0c^#^7JZ}3q{z~I3ZD_7-<(nh;l;>GF`-VX!(J(M(r=OA^ja7(UKDsz#HGmrp zjpNJsom8%#Z9M@E`v7clsf+Rlvd9 !38Xu)Uq=6#(@SBJC; zwKP6Kb73@9wMAhHhZd}qTUYH 7}69O*C`}E$c5_(v|2-KNuL(PUDgsJ7#?g;LKN5Z_sS; zce51kwg->*M8miQr@m8p_m!`t9T+RmU9@EBQE0iCz2-(P0wC>5Q~UBdo>#(;3&$Z0{`$IIeC}jTglcSk_trM>1)2cab_4R9Ew1&cK!o z3VP2u#oZUEyNPxjkYWi!7Fw!Z^V3?9vT3*_uRUGArB56pI21!!rK&p{M&p|*tALc` zO(ilH`qbzZCfUJOI;FE0WV1iIfXVY;OBgRg2WTW9%|qCK#A+oX+(rH7OkcvZ<(i`z zQ(u6Ht2f^VIDtF(v&aR>EIYKPy_jR!ZMl~ey?Ta7GQtbzAOVjAmyznJ0ipnofu{n# zN-)?4Y*oD_+56*3Vf?0rwI==kTUA{%Jp7yj*%FiXsRF9qqM;)5dNw|MAP-ZZ>&aST zhI{{)b}zp~bGk6D7LF2JKDn5+x-Skod){xrISR9i5uA?Zi%z0-Xs!m B050Z9~59__IcN^(PzVCwf(liRkMr zC_wl2;*DcGh`<_|tIbVR%1a(_fp_6ED%yMl5!7Wj#2}=CYx^AU=q%sZ=g)Q*581mj z3g#A&8T=q)SZy>(fAZcr22CdmGIYnI_>`>c!b3!~d@3I35%JBl&&`@p-h(G}*?U^B z3I4Utb+)3s2wORDh#z_VLcyTed>B*W^c8)&foFoPCoS8{19=epfV`8utTat`aMDKF zQFE6+^hm}2(d0tOEO6&l%Yb1st7MpyS_8>A7%GPSsWMF8PG2&~8ZWMD$l_wEm^y6H z$7 &nT+am(+VGd3mt ^dt3kTO^2;@AJ&(E z=Q_{Tb{F#VXu zI5Kl+c2bDMsp4Ap;j>*h@#zzkK*bv@@d*URJb3`@{zMT^ykEcf{~ilO7@htmM}^nL z@M%QYY&v&H?c&=rcq@RfUuw~0`i}KP?K0*30f6P7p1tp9a_{wj`uJz_@n{Y^(ZUow zkNH@9zi(4A_vd8gzBYWl5{`^e_K#J@Yg4|}J(goHS&QP{DEI#^B6W8Wdm>O$C|D8y zDMPcyT&!H~AQ02gUM5&ex {aK-GWY<;tfOjPj>+Z-@*25M;{%U|I zViJ!xs?IF^KMZ>ts^Rdf3Fv?RJ?`IWTzMw&8$xLR7YOl>ch9fitQItwbh3&XU$x#g z%k)wJN4)_<`}Z4nTZ>DJj>DNra2VY3&Som5P_e}3g3`D6Mf!zVARhyRR%TsP9A=MN zJ{dOgW&P!+(_C+V&u^kzcZw@kwZa7>VYSM;spcnH(9r^3WIX((aC!3c3Y%2C-`z(4 zI>UDDOO*P*A6ajkzi4Eg()5Agu(p~fd~F`>`gFMn;^MMLF0~rs){>E_o`!pgr#U z^y7KM{%TfJL-W)V=LB>>M!YnI!QAc8^=Rw2mZeO4@TX4KEjCL&W8J0MMGk&4ZH<)Z ziwxcq6l7jr3>rDDql0MY%AMlE*%n1UdCt%Iz^9DSc@6=mAA~QvIo@ag?u6=Bf8(~^ zDn~yqoA~u}mvr^@6 gVR@cqp`~Qc?5#NMf Q=!L wIfWGOK`eByycL^sK2K<*Kr+dV;w@Vx17^ zO5QC?s#Dn-GuCGD^T~XeTIjCrs;@j~6e6a_S(bDA$E6N0Z+VFme)=4`2qTir@cLnf z4Y(eLmskR}G#uwN(Cx`NmT0a0*-6rxp7*{5g5gQN%tNv4JTZyDdlXym78#}vSb{V~ z9a=5o7IR(@%?*@AmD3G{zBHxr*kpbmcjekapyFE&H8I|P$J)eU0yU9$S$s~&Z`+cA z(*6{ydUH;=!k`OI*Kl+`S*tm(ztHLKP%n5%TA?pu3XBSrme6{SiV| 8gl9Vxg*DML}8L*12;(y6F+y ze=^>gZCMvXBdO=kv75Fuu!J*&-PfCeJQzUyj+_K7^q56$yaHxjR^h<)WsHknVOA${ z_f2Zv?UJil<8IJcvHsPjN{VdFn1GezIwVmgdEiF(`*onKn*));$&w%*FW&sx7;T8s z6}r0ZdAOt7)K^ ate*lk08Af yb{RU=WI_vmFK~OS9eAnJ8nQ@8{^`|6{)$;( zTuxk295?26#;M_$@5*_>2hEBNY+vloEQ--XfoQ5*)0dM;2dFNFEo`Xl>ts|IOsS>R zi2*#_PLs2`wtjRIEn5MQb)iR+rY~q;F d7N6y5x}*B& z%}!Hy>(U1|8g~AVhPuiwCpAcr55ZXbA|po`Ygp2+N9Bmy|1U@0fA^iRi0R tW8#U%HRxi>FL%Z zrw+u}vMoDCkEswadTL;6i)|$84FgU(aDk@2#km39v{s$9maDkt0Z5HU2?KL4TdM2Y zjHX6_!9B2+M=V9#W6jwlU`It>iZg_#Bm!fF>9cL?@E)(9VdBJV_X@@pvO8acdqfOw zR7IsyDZ!pYG87k-=tZYyZC#AvrggO576vC4wOjYOW+G^^p#BuaX2N%9D)InGPC8NR zinkC~^WY!06W{h5_BCDffTvarN~77T=(EwPv5N_%y%fQ2;SEqgM=#zr_J@7Dx(U4> z+0~sW97MCmJXNIlyRx@VSzV9Z^3VT=klzE~pz};>?CWo>FS^u;i2D(5eTnFk`Jct1 zH2UFHZ3SP7u{o$S+p`)d@_Ig$KLC&(0DYG$v9}m={#z@$B5H`}K%4)~+4Sp~UTJPN zAkO&`g_R$DWS6pQ?iH;O<>l=wDqmHW1}=^i`xdbzs&L$P8VNoF{oPKMs1^b^onWsl z<=xxMy_{gtl&rQlQhQ0gDez(E#TF{$immjhCdryN#n3W)XLDzoAGY*N%8Y1$<)Elo zb*(qFTcs{3Wb!b*sI8%LgvZAGdL74Gd}?XkG*8l4$aH;s@e=}MIY!<~!5_nLm+pY+ z{uiM8#@-B{B@XIqF%SQm%!Z8?(gTmC=5(0!=M9hez!+XtRd!BkUA@CD7>PQQmmVQHf*oyG3+;6;hMA^h?m%H|jS z%|6{DeC4Y%*9H%OnbW%cg&r?w?X&DF1^=ouo>dfvNx#_=%i-S4np=^J!(NfysM9Eq zZlB!<9=X8HDnk=Fgd6pbED@q-7fHjZO-K~iZIhR@f1HoZPWW*dG>NC|iuM-h+Yt3X z4bBZ|7%PZ&q({cND|!HU@!jb%ep#CiP> rerL>SBp@&Y80zH(K;DNVHC;mjq-uya1fiS;-jv zU6cC8!ekRo`c?1!9nFBNu^b37?fUgcr#8l9iE2lk*tbS}U6*)chw61Rc{YhWdwC4k zP0srM1dx3-*|9rmsKnlsh6-$7##ljhnw>Fh_1#Op?P-*;7G+}f*Ah1ehq{w~EVimm z6}i9*N~6ZQItV7$;B~xAi_C^oD6j_MLcJM3FUnUVTaZi*ks?)FX)vqiYjNZ=^n7n7 z7Jy}WG8rO0EK`|X1!B|1cRcE}DTWP>!&2`KNgn{F_*G1`Rq`GNLllD~uUSqmP3h~F zd~_I(V?3EBYpc8q=k<0JEgp3=HOAP6`*}buW=c?2V?fUJ0-G~mG6UF${}L*(sX_4g z`ask0rpi+iH#ono>{a}^EaE}0`GNhpP9|F^u*}52obF)Kt3NXgvBb*$OBd=(Cq%Fe zjbBMshH;J}??nDG_Wl%M3Kp{#p!zAmkN 3-UIAw73H%hB-Bv9A#eUN_1E|+f?Bl@`d=1oS3->sCGDo>bJPhhPkc>R7mUezr_h?t#iPyI`?6xkJ# zBOcg5c8c=IP~ZxAV_xp-Y%?gKC(6Y|UkLZ7DXKPY?n Ak>(9+bXY0?DH z`;HEyE~Jd(h`yhFUm)jnIJ;2uwC0Ig6^-FZL@1`AHh~`x59@#)XERD`gbJ*^+evv* zZYI84%7I;D;n)%wUz^%zoQFpLxE{Ft5?w@2x3#+IYtq}cx-2M2E=j{`fGCQ$3~5gW zm3DdB`WSnqd+Ed7n?ft?dVi>;x-NWBIC21QZ-Y0rzXK0rcgy=HI=b9DNujHE{yA4; zYWP+byIs8HwK@!Ydowj0MRt1{y(o<78+I*HWlKAn))%6xpI!a&d nw+B%T87e)LbN$o-3IiJ+{J*ZYrvawmq132~dS- zF(Lp4#&tN*ZA3po3KJY-&|ys$dj777JMul&tb$>WBGSeF@O&WOcm$y9OE$lTEMGS- zze_HOn{!~EJE{l&!0%A#UlG*5yGW4U-diDvNu?8)_D#~hC0K}6Vru-1s#RXDZNe@} zlPeqz_Q-KD&l0Y0-^-STiMrZ=lFsQy)!a&StMlWfu0BDC-Y3UT4C3;1bbPA`=+e9j zu+puj{Ef)sjw0(Ca)-|%+SIoM^3O5)=#OMd+gOg7Hp47}Mq(DH#%7fa^z>O$Pyrcr zlbZ>iz_sjl4T@Nt5Viz4tZs5{yw4w3CulJ)Ds_(0GU+1RD>1jWN#k?#4`Ku;D!AOX zR_~W1bnNE h>2FC8`sJhJQ{FK;ST0RL`^#AJdpxWRA{d;b(J-+455_Zj81X`HT$pQ&qm!zdT8n z9*T#&Cl}wO*2>1*N+-KxO81`;V1<+_?mI@s%|kua9_QBvD>HENWRTEj$-m`zCVgC+ zF8C>5FaLvUucg4;k7@;v`EF-Q&~Y64;P)&SPsSJ#-`L37@@IzQj{LEBT#)jT;e@Ws z5Jd;ns?<5&J#r-7{qM)auF`$A*=P>{D )r7^4eesEO2Ema teZi##~J9mprw#FQ4viB|MAOGM*b%(yQ zx3Di{q@X}2&%tdr2__S5`R<;)GYg?g>rR&`=;y~MWn{muE=HzT5MEw>oq=`I9A>=e z$&lpHPeuG@OQxe@-N)P78HWyfgW1+lYwb4xyM{@}?5!}p{MLdsJkwz;T!9<20X%2n z$3PH&|9O1x-`vJ!{dX>0k)tTfs^))cKqrI?l)@ KT5g>rX+TIMHfOt z&YoR8Z(-pb#1MlR$%!ruE+Fj%jUSzJ!7grmD~eb5B?r};0*8C7VFuxwA3^cGJtw+H z!XvA%{8yM79{^e0a7etT%jG*<{)YL*%#xCc$WTtjLQFQJtieif&G)QlUyq0KtCw^Q zP1tv|t8K{Q$;IdVlNiH2*fd5-Ut&LQr%s1n#j{)cabCq1*&z6OjWyq@6TUC08hkxX z3zrV)oP1%f>_Cqv%p!0)X*6|iu;8lQG;yxja=Tl|tMatl=!f@;G|Calh^gzMBv2{c zBvO)bhq5q?^Qqn8Uf$RG@#H=6jkho9xzE)pH0HukVlaoKzs+W`TouC(@eOUX6Rp~w zuoZQ>JBs#IrK){O&=FJn$gF{f(N~H8&rc>8U%8_%k(_H=Fpu$Mg7L&bAsoBOH3<*2 zj!J|##<#>@_9&LxHnb~?Ytr4fnP|hqDv^Aa;M&xr<9Y1&)?U5ikf5iPFd7Ye)nS7} z+=W5UFG*>-MxI9>uu`Q2`vd!&$5|HJTo8!r(%w?5da71=h*1Ht)|i%z6mAVWFtzGx zxJAsAeWg(RUfs+=0yL`-jSy%x9yA;m$b77LOq=ak5$4w2Fj3G ^(&nWII)Y;mNVxn T4(Y6)FyW*trUi z1u}R0ElY;LSBkvTIA%#xBpn^-)*@>@kRM &W7CPAS|@%~wcU-50QVDkT2Is>U$WT3LATdaEXA``(KLE~&EYU=TI#=v zcxYw*6K5YHV)0*`eQM28Ep$pjEE7|I?7#T<%2To+DqB+lleOr?SA{~dAOQF!xBr~q z>?R$M5E08VF`Bqzg{;Ibo~;Q|E6(}<#%|C4vb+?S-2aN-Ygm7{FNM$cBiM8TTz^A* zHvfrEmr1OyM}!FBAX1b5RnZjVt-?|OECZ|@+T(Fao*}4W2+w=1kH{O+a+p1pTBD_| zZkDTvbPkupDugz z?5kp?r51$wjloo1+9`F~3D!M|hd`^>1S-@WnSLk9AO;0=AQ86+Khlu80WJN}V(H3Z z4I-mvj#JTzyc6gO9PO`N`MRZ)AQrWz14>s5b{oL}`)f{>pAUX&Rk3`_c>oK4JoqtZ z<%?+_N-MzWqmK3RA(D+TaDsmpR+HqWTsj&0gRiGL^)g_cB*w6ah3VD%h#0!iCU~x^ z$Y>d*w+Tei-eF9Q*pUYW^(f`$idhGti}bKIQ2UaM&w%l}QZ7zZtP4`)5)=aXK$VR0 zmt8ix{HeWSNJX6DRFx)M2nthjve@2$;*)Gq0Z&r#L$j#53+$kToK>^{k(+;}eEw>F z>6dMPJ0XPpNzyfvil+Pt2l~E599njYW)fY4 QNj&+AY_e6Mm-v!|=guI{#u7vMiSEL;kVrDsyn zxrUv40n_FPC)TEVcDJ?%x1zJVV6ansH~F9##gk>M?9Oz&(v>aoH;&~qhPopxp= O3mtp;&KebVn(SSAQ#N7v z#pTGvSOYDlr#)BZ{M0mdHP|RO-UW}GnlQdsKU;6?kl$X(S4tzazd7JN&^yQ;h%!MW zN@%b|U^&Gl$*_|m`mx^G#(5#lG+FzJ+)LNTC|kr&@pDLa^w*joBVDnN4P`kKb~UYS z;4}#qI270n{`6Tw_NN}JZ3kxu= _a)Ur{p+24)Gp-VW5ePj=jH33 zsc?zZVb2~uL!im7=KYE^jXv1pC;j4BaxYMjeLp)8zF_}OA``Oq6H1@p$w-yV!~&@5 zrMoxXvi<3UzM{g{UH8sIedqf~S97Pn!Ti%1mOorRHyw^R%KThQnmWE{G|jPEI{I*> zYIG4V=q`5L(UR(}4sT~X>$R)TS;0QZFYYQ7a}@+XjbFJPvh1p|YO<1VN(RaCa?2sf zSXi*+U}3WS)Or9AT}k>rRu0ubAX#^NNyX?IwL;Zl#*esj KBJowiqMvaG}92aL?R`h#H^I^luWNAFA-1-9N%qQzVKuGs7Jz^QAFy3f+*xefKY z*$5U4UZ;Hg{$o+U6crua8V6i~X|?CUrM@bPmnK+WVGY$P1*MQp^FVvXhzR(;zSIp+ z<@IbAFuqvWf5uW5R}40@nyGv))6wnARJLTyT)t8T c^nonhIHg#B>&BuQPOswOS}a#+*y$+R`+@uVi^39joXMzb#wO!q z=WJoE)x5=M99uNHs}zBb+Q*J2=bvRsdR%`7WxQ?eV4AY5o&a9y+2baEf!_B|?C<5r z$WrU70Ug@WmLwf-1)_a@%Zz+jC++f^t!r g}bTvK6Q({7H94u8Q)BR zqgYb=y}fp{h$OI|<4eL(#da9cSMi4v$v7TU?MIW{G4v{>+!8a7a15NjJ-LhWIDub? zt%}2v+K*zfz;7?RYK(l-ZIzXkh3|Gt2m5^*=rx>#1Tp)?0Z1%g%f&_jHZN^%a5Ko# z?f2{Io$99agUh=27oV?SuvnS1>za`a -{)_BO!AgE+$meP7HT;#?eU2zNM1ZokFsHDoP7 zkMAz1v5hQHakaPWS>4-r<|7Hm+s{v3Wso;q&41Mp+n=TIA)Fq>(Tb<_)hpKKMz#0$ z-K_=Rszw0{3=#b!yuam%t-XVTmafg$SB0 YnzI=d#|&h~4iEQ8Z3`x+uy?^+ z`X-VpyI@*DF`w2{rT{328)R*WpUQr|k?3t%V0{z(LyYTLC#3e%#PxeBTPHjaJ~ga0 zS5fkbKhBkN8+D{rEgvyrq3-8kd|u;O?LcPURG75Bzc5!QAajoEaN9wLy{01?lV(}O zuhHo$$>p<_am_QJh9%zeJ}bhPZ62TeOKarnN6HWBl4<^>hBk4^Ol#Y;pUOD7oQYNx zt=3faX(JH%#=^VCVt;4X{Vg<3dNy)(i