From 2882c099b499d1965782d81400683d9d77aefd0e Mon Sep 17 00:00:00 2001 From: D4rkst3r Date: Fri, 31 Jul 2026 11:35:57 +0200 Subject: [PATCH] Rock Generator 2.11.0: Quader-Proportionen auf gleiches Volumen normiert Beim Export von Form C (flache Platte) fiel auf: Fels_C_S war 1.45 m, waehrend Fels_A_S nur 0.85 m misst - dieselbe Klasse, aber deutlich groesser, nur weil eine Achse gestreckt ist. Damit waere die Groessen-Klasse formabhaengig gewesen. Die Proportionen werden jetzt auf geometrisches Mittel 1.0 normiert. "M" bedeutet bei jeder Form dasselbe Volumen; eine Platte ist dann flacher UND breiter, aber nicht schwerer. Dass ihre laengste Kante groesser ausfaellt, ist geometrisch zwangslaeufig und Absicht. Co-Authored-By: Claude Opus 4.8 --- README.md | 4 ++++ blender_manifest.toml | 2 +- dist/index.json | 8 ++++---- dist/stylized_rock_generator-2.10.0.zip | Bin 20241 -> 0 bytes dist/stylized_rock_generator-2.11.0.zip | Bin 0 -> 20382 bytes stylized_rock_generator.py | 9 ++++++++- 6 files changed, 17 insertions(+), 6 deletions(-) delete mode 100644 dist/stylized_rock_generator-2.10.0.zip create mode 100644 dist/stylized_rock_generator-2.11.0.zip diff --git a/README.md b/README.md index 0bda2ec..70ca002 100644 --- a/README.md +++ b/README.md @@ -202,6 +202,10 @@ damit die Raw-URL sie ausliefert. `Proportions-Streuung` — damit entstehen flache **Platten** und langgestreckte **Riegel** statt nur runder Brocken. Gemessen bei Proportion (2.0, 1.5, 0.35): 3.43 / 2.56 / 0.79 m — Z also 23 % von X. + Die Proportionen werden auf **gleiches Volumen normiert** — „M" bedeutet damit + bei jeder Form dasselbe. Eine Platte ist dann flacher UND breiter als ein + Wuerfel derselben Klasse, aber nicht schwerer; ihre laengste Kante ist + entsprechend groesser (das ist Absicht, kein Fehler). Die Proportionen werden auf die MESH-DATEN angewendet, nicht auf das Objekt: der Displace nutzt globale Texturkoordinaten, eine Objekt-Skalierung wuerde das Rauschen mitverzerren statt die Form zu aendern. diff --git a/blender_manifest.toml b/blender_manifest.toml index b37d3fb..0db2713 100644 --- a/blender_manifest.toml +++ b/blender_manifest.toml @@ -1,7 +1,7 @@ schema_version = "1.0.0" id = "stylized_rock_generator" -version = "2.10.0" +version = "2.11.0" name = "Stylized Rock Generator" tagline = "Batch-Generator fuer stylized Rocks mit UE5-Export" maintainer = "D4rkst3r" diff --git a/dist/index.json b/dist/index.json index 15dd3c3..e153d8e 100644 --- a/dist/index.json +++ b/dist/index.json @@ -32,7 +32,7 @@ "id": "stylized_rock_generator", "name": "Stylized Rock Generator", "tagline": "Batch-Generator fuer stylized Rocks mit UE5-Export", - "version": "2.10.0", + "version": "2.11.0", "type": "add-on", "maintainer": "D4rkst3r", "license": [ @@ -48,9 +48,9 @@ "Mesh", "Modeling" ], - "archive_url": "./stylized_rock_generator-2.10.0.zip", - "archive_size": 20241, - "archive_hash": "sha256:d092ae0a1cfefed9bdd4fbe1ffcd8160f4fffb00033cec346bbde3d14c755254" + "archive_url": "./stylized_rock_generator-2.11.0.zip", + "archive_size": 20382, + "archive_hash": "sha256:50eeed1d105ad68487e25020fdf28f5e3b8d81e83f9a21b9d33968eaa06aff2d" }, { "schema_version": "1.0.0", diff --git a/dist/stylized_rock_generator-2.10.0.zip b/dist/stylized_rock_generator-2.10.0.zip deleted file mode 100644 index 6debf0897057ce63cfb1df2b11acd1203169e39f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 20241 zcmV(~K+nHWO9KQH0000802)>QTnJ>rIx^Wll5 zMT>o5b!NevXTjozMWSky4xp)^vS!y$*zVDSyJb3P6~V{+p3VO{W6ASdp)~p9p{ z6x7+fs2nt6PcUszOSFDKLfz-VRvjMIR_z4&7Y~k|A7P!mZoaXkWB|zvx;orOqEDkr zzWO$slhkD!MXN%%W1gQk(x}q+=>4qY2z<)R+2>@jd}bq_F=JUH2yHTmqaatB?qF3_ z(-og*`2$=dJK_ETP)h>@6aWAK2ml&Y|6DF*a^vMp0009g0RRgC003WKX>MtBUtcb8 zdEI?$bK5ww==ZJK|A5ujl&Berek7TP&wA?mp*TKcTfUN=WG0njQ4%C`Op&^L*s-_f zzu)c#KmsHv$xgiI)}3=UmPDWlG#ZV5V;p)xG>h3j`}g1f#^AqJduw7RmLpJzAl6B*s=O>TO{ znAt4n2}|_}rL3j3cSiX*&664H{mPDmbQ$^+PM`TCSoj%zJ_{B>2EE~V8i#khV?cms z>@wjg&(bbC8yxpel6<-3QJ0-V|0M9k9?PRCyMEsr@ho48Azeoa_e0i?=0U_=39rBh zV1v)&NKgt*7x5GFN zi*EwrC`*E9UN*Umg9tFCwd!bN${v=y7}H=W))hMW5f9;y>~xaE`4Z>y_rLv<^}gMI z2=2EyN;4mZ7=3f#fB)OnhkxK=Bu_ zRROnt%6ms~2y{L?IXvjN>;q4xJYukpV$&pX765wOzyIz0;Hp17Jvj3&56=2mSABS+ zTwtel?qOr^1ZV^Zz177Zx7}B`Mcr4phuz(uVK=+m9Yvu<9~c6RkGf!=ogHi~|9#ca zX9T2}W^sgXfqC9=*FdJz+iAtnmkNWC0EJ!mp=l5|KX1MneSS~?u;A$D02AqkZL@w|Z&J-l( zq!T~n-Xe&$7XFtGyYrI(mk;!&7;u_%q z&tZJ${ulTmkxUFBE%Go6mcVNz(H)%~j7Hw*^pE}s&zbh9y@yK;3*J75kFaX+>5M-8 z0-rwO$5-y|Uy}Ug-tPUzAAq;wjBzrO*#d&oC5MqgldU-qeH`08(LcQTatP~j<^9(G zeN<9Hs_KcwP#@IrpaLu!)oFIk>&5BU;) zkKzDOdulOd2P&UtD;uB;SatLaJ$ni*K+6T;nsE~s&q_&(R zdK2c}G$C$xE#h9kv0?6Y4Ra+rYM9%l_m`M^1Dz|FJM-`S9*PoQL2t&&Rq=OxI=UJR zulmOxU~$y19u4BO({W+NWImY`3;;uA&Plhs8t{dbzVTHnDQC({N*xyz!Nc;0dAd%cwLvp z<3GC$e)dq^*Ou!8YUddVkr6wW-IyOKNfPio=7C(s$XI^2z^HtSdk0Fq7y1u8abwb7 zQ`etl!5xQV0DcgSv*cl~q(eAb;2~;!po7X@t{T3WjibKq7vmTGIguY5!nqeLIE{&c zJP$wXFYsYEnq=E5=Gp!(ZL37f$T=Xj8XAaR4T^WsBr#8!SSyL1w@K*;uWUx&^G!9_tzI2%; zC20%WpTsB7yf*^43x5w*FigFFy#*oWSMOg!Tllq0YfD=SmI1d|2zmn9YuH7;Sa5BP zkz>M2wZ2O|`hUWX8jFh~1F4$Nf-f#`wqWUW7_3I?Es4)1W@`UcK%kIi061uMTr{jC zPG=Pu6AH1aa;?mVQN95A1ynlNlsfL%uWZL4OyKj8nD6%Pl%|U~kZ5N=upRjZ*%BXW zD>g$WPk>iC^RV@FLJ-UZ3hy_4!exB0QuVCeS{b?XfJt+ti zIloD=+Awgv^DGEc7Zjt!1BAwTGT~19XmIiN^rYQoIGX*IGADZpTBhb`mu8cMgEY2( zmE;DuUec;~Gz*0Sm?c?EAApJK7%GT0iqWPE2j+yQsZ%uX;*TG^!EgHh(t&-u@mtpB z&p3$mv9zeOm|yCm-MOVtJdFLRN5ha!is>UXoVkITV(#j7L5fT6;OEuc>plQ*@e_XcA}GsLnzMBgre@`(bY9l*=T5Q=;`r3Jjl7NQ^YSTd3V3e2Mm2VmZy#`uAVj z8l*m`0md5Oz&2P16U#LW-*1dzLhCeNEG6D%H{#HYvi)6zL7dx9Cqb}ZJ$U4VkRZiG zjjb`-`#^9*ejf0akGTFNEfw zpuuP8Gv}y(B$`|X4=TGU&vaRiM06Yljz)FU`s?epb|gTk@;P>^tVDg|NMWfyV)0s< zRAnnDO1=V>cP%Yj=~#~Y4QitJALhcv*-}2l?cjDA> z+MahYxafNxaPn49;*#C_sF6jihZcvHIwFx;@GM1gs955(bz1SV);JG90E_naS|H&H z#Yg1;R@>}(we+LCKykXx+|@P#C=!p-|fe$RuH zoH&~2?!|pyRmLe>w9qli$T8YNO2i&+5H0g8wJ<5|=_kGCXBW`y=V9jEA(Mjv6H@DM z8^-zk1_&{I>dVTG^>=N%Kff{P8L(xV0d&WTLslKqN7bThbO7M0?%z*Bcm0kO(CWj^ zXPs^~AvAe(Dn+&=5QDc_p36NBKXhJbdlqpQ&h`6kn9gY7Cm692qf*y}$2;)jne?5# z*k)azTPMHUHtcYkkw%Q_`n?($xoJUd_CvPK9J1wlA;zJQZ#gK>uGj9DtvBu$miW_u zbV?%)Dumb^O>Schw}2A@jU53YLxWDJ~g0knw$vxz)7=+o!+|Sf0R-Qs>7X-R-LVDo8^=ngWR=^B~&acDHq( z$x|$xt85{wZIU(evl~H$Ed5m5$Uh6}0?NAq5)3h@0OT`J(oy7+u~0~QA~IsggBu>r zVi-YJ>OAP&M}0riRK*$@ks+`C^QZ04Wbi}7PfP9e)=I)Hy6iKeT#fV6PS$+wjXRnz zee`pu1#{^Ee#>pWgYquf#E>uD2b?6)TOjMLA#Lq)Guw@T&)6e4QO($=Y5UINy3lgNv*F$E*GJ!P%Mj_TZ>LYIiNoE)R}= z^FSyEfu5``wl)|258n0rvxDFJL!lqr8XXQkddH{l_jh(}PtOmAC-4?*VESUe)^k!U z$R*->9lQ9aLF8dtaD*);h#mKaSlS9dpoTq-BdlTos}CdlA=AtNWcx%Mv`UD5865(S zqTWG11Fh<%BoNf+q{$BtzLIU#+(;@Kx66`fF0`$E-02!~I|S{ILgo?@CdiG8b6`#k z0xe)l1{-ZD<*4HdCxA{wsFKgn)l~{DJFbk~Ltu5cP3f#h5y)v{fCDJQZP)|tj%B~n z3BOc=kT=Q494)R6M!28_O3id%eK0i*+k5x-#p`N5j>{sF3@s2CQ3xm5d4Ke-cMRh7 z1)NRyNJx=7(Nxf(@P5?5A;}d1$zm(a!+7k6ob1_oavR6VG>8Dd0FqWgK@jCP5x?S`g!LMF1zcn?=c3#((B<_y&j+1 zD;|5RHJHR+y1e0u*s$i1(tJD(?gGp-NcTaGLg6}xPZ;S^+tRfo z4<@pDjqo&(!XNzsPUW;H3i-S3SLFW{infYX`6uhoW}L(q+BdyR5d0PxU<~Y#qGI4Q zD`HtxK(9i_Y$ihV^!=d)4wbD`z>was7DQC%nU#=7U0jPjU>!Gs7a>Stt#fQ+=vqgH zAw!*x0d7j*rZ#Z3k#<+iq6%6^lD-$q8B`i;xT>_5L(~>;*JY!Upx|>dlSv>Hn<1LX zSTHHysyGx~w3Ue@tuDieFwi2e4@cL-w@L|;09+AFrmvwHW@fe)vWK@>r_~`p3S<#b zB4+=}EsvQWK%fUC_rw8H!9YerQ(*&?;cq$yki4O*xl1HEih=84bC$pi{V|=jGAz;X z)blSo9m1#z`cN!pB}fq>`Xq>EqbZ2Y=sVlp=yjFAz-PS|=s6R|Dx)(=t)E8cO?0VN zw;)Uy&*d5DC5kc?3^j6q1)uECya`GjNQv!}v%%rPS-a9s?O-_-^?Rk&BA5!wB}3<% zk{aJDp@8`1DS2HV_oQUQ?tl|hECa<%`67MYiBgdOB5JdT1)gcs^NLBRqI$6qV~AZ1p#Y%rUl2j&)I{h07H;ikEz zVNq^W?=tcEqd2KxM&pn#xY9x?7Tga#IH=_EsUyps#LEZWXsRBRsSH&J?w6{VvP*%V z_^)nnGWt9`qtD~|KFyYidI{ei0`R`bl>MVqG{YC05&*aq z+iM*6mB8Rl_&z~0ojlc$v?>;C`u+u4s*0@09Yy2-C}j(N1EP)?E$9ppsQG~Tj@v5G z1%ue#03W-n@UgoVAG;gkWA~fmWA};p_$Pbg*78c}{KfPc%*En4+3SHLp-H6b03d7s z|3gM{qjeF29*PM%jn;5o0@R|`J6}Hrk%yEDYb~HC1*~yc-T*$qRP|_+rt&W_C|Rbf&E&6Fek(Zx5_-=OEK>G16yu@(I_n|lpTqdi`YPsQKhMySN!-1s2T z2%*1emZjlqAW^@^4oQCb0R#+@`X=|TNbeR=^lkKhMs2iw0VcyZzAbHC`V@@jH+Jy;Ns-0 z-!|Lm3`^!Vt4;rE8$^Xo&wYetGHU~CmApfpF4ovhp2Rj+`%WlGE?Ti#ibO7Ca->|g z5B<}VcS0{1o*x(scpteUH4un%S&N@ojWXz4OB$f|!V*wsf;Lb)nSHg`Y4rPAtO*4e zBl=b*HP2-t^gIZ$)AQW(DxxkJaFLqzYxk6IlV}zb|IW`_nRr|ELkKWT{3@ z$a9zL*-I71XwI?On~H=t&CXOaTNx=KmE2x!q0=t_pH+Js^rQ+5vODV#d!J3z~{%-Bbd8y@Kh;YU$N~UWfDQEkDlUULq7JuI`UQ>W^y#7a^w@!q-!lg%wS`%Sbpn~& zH(+gj(k}pEjz7r1kNCI3$JLI7#^1{g3+;=KkMg74WSt5djC}zG!CF?nX$0k4Yo9a= zfZCBB&qH!XYIXqqW!tEXi<%<33jg&@I{&dygy-@q5h`x5s?zyc%c@^5>bQv0tRI;(tS!w)mYb^MrmP+rVtb z$xP&fk_Q9F*t9I*Gx#Y-Qx-W=-(zlTKKqA8Jtr8=7su(=XmYd2vquT;1~Urp5f+9; zz#ex7W2FK7Kp>;Y=Qo9sSA%#6-QUIVEb7Vk(O^myqALbG*7yDaZUW2;OL=lv8kA2s z8UQ1ei_1l*@Z?s@-G#9!uP~rJ9K(1~#+0Q|_Jq3A8~M2m#lZYiobU`5g3B;&G7lDk zx6)3?=D-T)Jj|4f6_$pa(lefB@H?Mp)eK;xI1&avcnOwkq2NcZ1+&Q0hT>8{oaHWs zJ$k;%f|G$Va{09|8R}t)lvx3(lpBv!{Rb)L|9;i?js|CgVH=PcFZ=*>;G@CtqCZr! zqYa+)aH&X8dbJ$j^h?7SW|;d%YeT?x}4-Q93H3 zF$Dz~L;B_RqgdROQ6$5EhymGSf0lr504;e4O%40er+tTfkH$Zp<_H@Ny2uE8(p#s1 zo{B>hi+~i)GvNoNpD;I`m}6QxV6?g+71@BaRbheIf93AH-g)y28eWr3{zj()eUGE? zLGfRqd0{|BC5-87Ba9RQ2pU-xVI)n2B9%+5d%0<0zM%QsW2Oe>mjs^$!G7BQOz8>% zWo=`50S9BDDdnc~Spj{-!~WA9ba5Z4`5iU~qQ@l(COrLY=t+<1o?SqGBuVrUWKZ02 zLF7E9ARxk5{2+aPOFtrA8GgfdJ=qC`9?i~Dm@1FDJvrow1;dYe2e1)>u;dAT zIPsK8ECmrSb2>QW8$YG|A4;dFH)?f+G=t1bno%N@69Zy7YgP2 zz*yh+hgbcNs&tGTe5dflB$8*Nk?WSL?94mm_5Fn6iD1((bX*9}TsLh=wB_>`nQqmn zl+ls+fr0Cdv?4mPLCrs37S>TO!VzKmwxkY~$*oaCgu*HQE^U+Uqb@|_0sF{wAT-ok&TgVN9t#z?Qj0>2w2=Nlz zunXFN&y!oOowdL9PcJI+g9#;(R89N?Xh=|BhAuCEZn2_?NKCI}m zW35{7Pms8fC1efMaAgOwL)m{=Yz0PH!H&?-VK^AM^b?4I1k@776culh zg#Uy3@V(rRh{w8iSI0fQ^LqgJz1U>m1Kc0$$R@TND!xoAb{93bu`(4@>{zne*Ln$l z#3`a2Yu1S_J>WUFd+hDm!4-4R;G0o-MBqZB^TFWi9YgmqJGj0Y0H4Br_#udHdD!`n zhGJ8V0zK42D{fZiX;Gtn*2cNCErNs8p0G0~TfWoLq7{nnV%}>3h+=Avt`8%B6|>w!ZQCS!;4uBsM0qcNX?IOQo4 zq)zlN=A%7hMVbckO=h>wHCNVJ*~n?7aR~IU2CD866CO6*dFC7fznf$oz48==@hwB2 z!hF+=-()3!u*-`@eEGMR8Yg+?p=5zgfm7?EBc7)XQS1K? zAG)v&9TaF-?Lse0KA4p^n^U%wyfC2VMHqj{5TYKL;6Zwz!s338K^iGLAVv_PS_a*& z`1EodKanDPSCw5y}*;b>48=bGlA;o^nTi?p)zK)K^DGB_1f z@F^8eN0A0gE6dEQF%K3b;+zWeC@6eb6XV5_qo?^Y46x?C48zxQladK2O|VpYu|oVV zg81RFK_&8uD@{T8n6{9ujf(J>!0Q0)EffKPu7ZStbgBp_1VPb}5X@Q>@<+W;h!2uv z=8@Y-bI9KW;S|f=;6pWC`q34?A+^v4{gGrW5@ZnJB@Dc1Y49DFo}#DJ@QzSw7?xh1 zBQU2j6IfGHD%}V2zvsDd~htH(;>NC+t?(c~n3pMU)qo zrn|5-t?g*;^P*69$2h7H#P|DVv$BM@o*#k(Sh3j!BCyUP4F0>a(4s863FFcgjw#2m zY3O4Oxd8~!KmdV`O<|=HP!U-wZ5WhO1ix$&rUWCPpi;L|0;MA6K(mf5+Sr;~i_>Q} zerAa(HL+`kmx{R>3T95b|{RVDx=Ni^$e!10`H|LS8+*U zSXxyk+XMeHG9w>)fNEL8kV8UB*CUJVMWeO>R!OdCYQPjWH zB^N_S1K`rXGJoVj$t&&4vjY&T4nForZN0H3Oqpqa^!QUti99VV)7DZ_PYb8BLhPYh zk@vVgvdzwZdfP@gw;%t6avey8QuIesvXCuaNN(&0B4Zo)@Z-HJY$T;D*L}OPH(CbB$xcR*#?>R-|w8&4Z5WkZU#z9q<~1##c$B zS|Krm(R_jjdZj}O7Ra#-N|Ir}Vg$H=sW;|;dc9(VEc%?OZ6)sWL7NI4ZllOwrZ+K_ zoT6}`4D<3Lmcmd#Wu>C?H~uV>=2zV#v$p7wUX+k3W!H|TdO1S0vS1f9wFHqdsd@yk z?X;_u*3;l(hvxEiMh2P!CKJ#^{!;Aa5gs?SAh(3$v4wSi^DuMbrK;)+hsw+kLi{_y zBDQdNO{H+8G-}$Z(gd_q))iNJ1BPG9QlT+k9U`tiqBEPkNLc1VGw+GF>3MleR}8LV z%>8%!!@=<4^x~xbSH<^)ft~ zV_h>Ye8|$1L^sOeA;fxSbT&ErEr5#)Xb}AAB<_u<2nN1l2%thy+}$>?&s|-mrDBr% za*{>_Z>37hp6wFH8fL{rd-@b$NK{7WRkwJZvxB!F?YMOP-2PEr!>2F`5>%C5JMyL1q5K zxT@3muf>yjFwW?X#f*zvPTmHH;RvhFg?=;#K9ePUa*GB~YAez1HUp(=Yu*orLSa+M z`DjU@;y;<5qW2!?4rU-D>*xF?Yjx^NRg}ruGcVt)Em65PWkOA>TpPMTNG`*+SOxP! zA|35&Q)KnDfhEc}82-$SdbO)L{XLH&^ot8Nhvs}fVeyONgK7*a9i}uvO z<*0YWnDt0FWECR(W=p%fRdEfy4#OJ0A#?p7mK(4QRgVHT89fw9~s zAY=eC0^0_c#V4T8Q5fgq2D}f5GUym5b3ejN4@Y=>j4K>+04-84F1^{7BnKUQlqIAd9i~o7E%V986^CwLczNQbX32r zWF;#AO17=k#xZWIt&s`U#H!ZuAx5acSBvx+drD9lA&t0=nrTmk)D@tMiWcng zJ`iQP&I7@s&dX~W>x+e{O=}lSfGCE%`?N)CenqixCVaY;%(7_uCN9$Gx7d+TE6QzL zEqT!J@}e+-$?|GbD`!?I9k2%OZo`!7aE(m%bxga+1(!ia&Pn1=J39B%mPekQZ<^V* zynhzUnMi>9!fY%o$TD~0F;D%)0+tirk*1kOPx_)U^F!}eBDLVN3AP(5_4HrsWB-qFjoZn(9b zve>IiJ)x9_P}uDN^MFjUx{okdX+qTvd+I&u3VA}_-33xk$a8>;R|l&r5J04yqM1^> zFp7Dmas0|+zVnl5PgSj$WXEmP1}BSedt8 zDmax9DG4t^Uayf7=cu0WhMlfl4h1pj5vOZJC)sxc!HEJ@m8c|cLI$eLiVQf^qi<1D zq!SNjB5x^TXYqaSG7cXoc-JBs$q-h6H=@|Y7KvtI2>X8yph3FNEWI#v75g0I87Nsr z#}iZsy3EIfq>6(j9v2r^rjos;>m@Al9)qB(VU+6*32lgt=ftb++Cj1N^LFz|A?K80 znusjPJH_jGi-UtwgE^M9N}5gxl83frd6I&7DiuZ6uoE+^ZPPulE^Kpkv}T3B7?F|d z)?y?|gxz2=g28KcYOLnUGow)5OJJ~2D*v}FTDChYj`U+a|8<=BIhD7^+Q^tl)0fqK_gHxo z2?%lcrVNOs5$YFXOkFnQsT4xg!79WOP$4kJ9jPn}qMF5_k|4EiH;C!>Y^vH%n;RRH z?EnSTfC@yw4|nKeWe4MF9^KN7xn$uL>lpA^9?`vZw!vd&qj{iPPTtAQBmNT^w4nB| z7;)qFJ&~shjYpzDr6mcJ16BBR5qc(Q1;aNhgVnOk)?pd*kU(Ul16)@^Hn-;isUBI-)@P$qECSOo+&^fGC{e2gAcYOgznk#lp<;F79x^ z-$3%M5?z^1w-F|=OgdhF{#<0V4ihmPoHCpAILJ5luo%Xt5%AYqn#hnCP8bcu)tvwm}UsCu-t+Hl?p(` zMYx);7X2UT&a2H&?hjZev9xrcAyK<4tEa(bP7(`?+B8o<+Yugn^v*Y(BN#4I*Hp>* zy?Qnn2QWfmLWVPJIvEvTfU$Nx_$SiBVlb+JIU-mFX-S2k?5pULju6;|id~_oBGPU( zMbWr3yr)?k@oPa+yV6?FOiz#gO~^_Rz+i7fm*!#_O&M~wZja(B4EZ#_#rJFxY`g7b zM+r)eG_R~LaH!ql<*k2mvR!~IBK;u6=$Qk6u?hyr=PF(fiHsgL(MxelK}j{X@>VA8 zNHMUevA;Ex^+#0Sv}zR8!p4iDM0Q11+UJ7EK-kX}guN+^o~w<1Hgn%jX%nk~t5rZ+ zy=yLzGxlT;&^HT|Y-r|@9WWPs3Mc*K2IL*sN0fsaOH!k%EDy< zrPYHz!4kfiDo=JBQ{|9M7Vq6`;7;p8lwA@>2n{@vBr0yEnWDcl%0-an+rjW$6k`(N zmpD)wPgU$9&3G>8V$c>&9pV(y79>hNi5g1^uGXm;vbJ@km||3J>fzyms;x2)+Uh|y z0>_z2m$kf_2jB)hn(+`7%c$4?!WW>2CA`Tk!hR9nWV6pm28PE-v%Bcc_I6oa z0Rye4*F2qJM@!HZJ@B4xR`_zE-(J= zjYF6$v6m^GDR97J-JAsUuGEjPd;r(Zu!@WVL-Dd37{^T7KKk5372&s^eOQUh%?hX#iJYVJ89zDq#pq;QA*8%ko#l2p@6o? z6$}D2eLs;3XGL?I2A~*>GQ19NMGV0$?+ub^M1FlW{Z>o!S0A4ay~_hMIW=J54-m9t z0#U|Vt1?KiujC9aFHWjTf!qglGaB6^D))R3WOKgofp~eCdjCSf?pN<$qSoTC+AOKc z-ZJ5{;LF;HVr6n@r%&=Nd0v~OW(=+nk@$4QdK+7}MYIEbrlo9Gy;C?Mag44RkC0Z& z!5lP>gzng&O7VC%Hi}$_IhMWh;ple`y6mvaj+pDZ9otwa7-fx7Q?k;iCopU=ZaQsp z;f~N`NWlic)0opf#~;t}#|0JYtJxjN^mvA?&al-Sce&{Lk$(M1Kd0!jkI&QZCR7Z2486lQhEb%(t?5<#_NYAH86;m^>bC8kSsKi423!OOY%h99S`=0UiWbroitFkM zo$B0agTux~^W$`_BP);s2dS6PYrzwn=-$MI-l0n+BaItftW+6-gc0VUSJ>O$MIMB= zR5(H)lJ(7cqkIN@x2}}X5w#)nmPZKQh^h0;86FS*dKUg)4AzLEY_X;e`xpN9tLKwv z)m_5DgJPTfRaPrnmQJ3IHeQe?aP=uZX(dlR$Y&wYM{e~MIqf$)yU73GkGRGhS>n$2 z?rZ!J|CYb*ZomE+f5pGzS1XH@o$*XfxUk{mnpbH{S#$(Rse(KD)TkPbRr?bzXuFC> zU9J8<6^T)C_Eq~P%A>u8fXmCHH?&rqMoNXC63j(^!L-#B^l}njknE z1^DrrfgTKiRgrsqW3#)s*_|B>q~G6V+TeA6xAK9LbV>I4w3)MrWfL_i#mx#C?9Bj+ zVvRnoav&Q|jozEl@ud#9|6+qY3t@k3y$j|y6lS7=Y^FY* zbm-O#NtUq9Jmvnv9@tP5j!~r>TOu54kw|D@Tjc~GAanxDzyRR(>P)7>vzSLH%`VDE z0PJFgLyJU5D&la1six#HmPKsw7%?n4%sJsvdJ{yQ6*3`7z5wuE+ObXF3Mo^l?Xo}6 zw`kq7paf>3>ebq)S!rORQ8q|H>%A*T-W8lh{tbVmq%$Pd0K^!Ps(>zc^eLi16RZ)1 z$oB<9n?!GsPjF0SK}$cUP3O;o^3)b1*@ zXHMTYvJ!}{FJULZfgJ<&2FT+76q(^$noEJ^Mh&XmUJhTRQS&JkXiJmDX7K@6|=;%!vOglpKuUg|b^paX*-d{b{M+$>X zZdv;e6@lBPS$&`!`8%FStyFAAoO8q}tdC=IRU^fg{_I1Tk!0hQZ7S!wNgVP)j+Ky# zT$e2^e0@VFoQm$(O~Oa{m~WLCC&at)Agcw(R~GFOQ~;i7={mCB^pbwBXa&mjgpXjf zLj0FaJ^H3qX^}riWc03VNF7j34Qjnqs?=bKK1I?BNOe@kRuCf}qRCAH=jhQ<+NKl4TFfE*@FgTSfEGA5+wD>qIt_2KJ(X zMo8F9xj-+JXsc+mb!QJRO< z)$lASD-l<(arep^Ct4$s?pOS#)2&)DfO|Rfrz&YkncTbVU4XGobCmkJp#P*<+R?+( zXTUM}B+oE0JDhb@aR5DuROR1ROJKQ_91RQMsTQ^35GrL8OSXLO!vD-_z*^C2Eg88? z2d^ZR>glVZv}j`vtl6<%(o-)>029Kp1nblEyUaSu%FARiy*~Xx`jVCOaK)nd|M;-$ z&idQiJLIam&r?uhiI>v#=OUh9>L)W5Z2}Z0cIj<^l0bbL0>i4ff`g;X5(i7?bu8Bj zErI`JPV1A*WBe>$SW8J&75ESwfvQ8w5`RM80GD8T(9E$k+c3pi%jGr`fF)U)^i;dQ z2ln0D(~Hy5yZ&*x-^32-gN6e~_&i;L915IVyQQJnJ>;1sc4zL5Ai9fhD_a8)a>t{u z-XXz^5~N|-Ttp()E`Xy7bG-G7stO++KCw|B`am&5%VB&wi|X^^__~R0t8wY z@dI7AF4Rf!%6)SL9plvkaW}x{L)jH!TdrBVkCR(;!Qu_UewL>m{z}z%DtX_ut4?qq zZEwNma{8kq7~{csoKTQ>2ltk3dbNCRgT#l|7no-5oez!=&PqC`A|p73Z%U{JsS+f& zxC|Pm)2@)0q<|m_%3>MSo5O57+n}nhK}dR{zvVWt0xd@e7f1cGGkxpZhkbQ=4(IZo z<<_o}K0!Wh3&sq)5Z4M@X7NQaO!e`tV}aRb{m@PuhnvKbeERUgttuv7W1V*`q}K9w~EsTB$dTXbpJEejq=z za3D^FmPl!h@Q7|M6D8rwGCf(mOf~tYEHPu8rjp_6g?Lg?oeHaG#o9S~etGqK8^fSk zEbiVaYP?ZNnzG1S$ACp~UVa!;U1A*|m9UZUWUW1 zP36{0;nIcYpf)=l6h}p%O=ksQQ6dIVRD&%_sJ1$lnn8Cv$DN#85Gx#EtR6I zMnpq$lxJkIZbeJ6blR}gl4rEqR7VMavfk86PZ2s6P>&v*iTYktmd;$NcAH?P7RPGI z!5!~>HfmG}=w;n+e@4aIIh9Y-D+pt>C|WOip6e7D4iZSK<^CCCS?luEqIlGdP23>$ z!zf>fWu#{as$(oJE>KGhqiU{^*cFx+AlQuzHq}lRV-4^V!+zUnttkz*7<5}y!=ngX z&B%-~RWgbPL6JNv5A=PX;q^viQ%RJ9{m?7Sn;UK_!8E=3L-PRKY zamlN(s@}$2yf$Ikbmer)GF+_n8=1j`74I=$uzpEcY>t^%(`U>?+!cd$#{1Jbm)WeC zbnK|BQ;cNWPFF?|zoh~hs`GI@iaJEKf$BVPrp36I8^a17TqLXb4&Cl z)qY`Qm6rk{aQ|T8e7Tc|e-<05Tjj(!Z{o&S1lC24wvlF~%J-@xiZ}@}QTsWn#iW zp@ivN!=ip}bbpL#ueLz3D(0Gw(f%%NH!0|9GZxypaemY)Ij%lBK$SH_5qr%>vpQpy zryAFMnKcvZFV`z47M^nl&JS^Q*LSHlmg?)ulYYHX`~`GCBab2SZ?Z5>naXEicY)7d zANQ`}Bu{%(Kj&6d%C+V>yp-xFO8L^>C!#4=Uw+JR+7QEPI`(Y;wjp->jgCC0d?)hn~d zNtcbW2=rLpIiar8?do55%&)tj4VzL13>hzA%*?y`UV6} zWmuUPJ4B)Zl4(ZO;Zv=dOSg_WW##M~fr>{oCM>JNlMDC()_R#|ij>vx#_4p{)Z-AI zUBYQF0Up7pt)i-a(D;u2B1luR3TY5HC0uyKK}lPYE77+ zcJvZArs<`hTG#JepHYihxa)3!Av{ zQr?J-O2hf}+12Ug+3#%wj2ghsXIDm)cz1r7qwst6Vc=b!YFC;Rv(bmu)uGTdN~tMb zH%Mq=4)SO)I=$$(Z7-z>Nd)5d!@joHrWBvK^0m;!eC@_B#h$j8stXEmK9%O>_u_&Y zo}?|tx-3IXG;} zXiz+07--G+e2ynVhF8RhUia{BPhD!=w8=$H(N498E9y;7L0pYe8M@PcecZ0KlXDkY z=&kx*dZq3hvh)$5vX)M}s*}F+0MR;yS>TC?@|I;W@2u@V6iw-&I8_@^C19(4RJN~d zr=x>2wV%q@Yp*Vdm^7T0nuh>YrN;WBS9M%rx#e;Zz?s=djq}~Oc#CVDYQ%rXd)mjAM?=ifNqlX1?{pgYXz%F^xBcYGVAxW~o zixUrTyAL+<%5yf<;}U5| ztU+B#@wL{1-pc{vyPt+7?6C=!sGWwTw>#B`-yAOn)U|jqTI+cEr+72Sn0ss+)B4bU zjx;8NfzC;x-Ochxgf`bz5LL>^SR!?0$_R5>%X~I_Xm#019L~mm7#KU7Q zKIp4CZagQ3Cx=(@;Ribj(YC3dVG?BRRG{DQ{N(BMsvsIih=jI^O7+Jp7Urj)SM+IG znQ9-~(oBTZIbARRi*_qDl?pnL9I8hu!Dv2=i?OciXB@^@kMKxj>6v^EITw-K6^s== zm#J`$VaPCdEL|3G6{Cw0lj=)TftEAps?>-@qlyVDeH8;`wu&3m=!&kz(j{OXepIh4 z?MqF$R3cGvO(vHDS6XCb=A5I_nN)t$9?0^TN+B!U7Aas_?iY4c%x6|!Kq-tGl!R7} zx>L;21q4yyVpukJ8K;4ylajHRO(wF8q_DeyV7SYA*!T?^O**={9mlg*Obe6SiT~E2 z?o?j<^BV&BBSNeh@e!lk&)Ez%1fm;M9%4yWu;yTQ++8u)-Pg6jiiEMGq&R8232>Kb zP=($qF#8%Um9Hd78m&SrbgLoir(F;xw{ZyOyKA!p?s|i)G})S)m&n+J6tTaxjYkAq z96A2P5IcrtLb#MVh5=UikT-B7ey-j^spHRNsZ}0Auo@Vu`D_I@{pC$l2P-Q@eCr+T zN8G_+PnWxhUm(HqP_DlpeW#Ja>hm2M+oye)FP3{^>B~a?@SSW1 z#rV~2u*_eOPDD3*i;}6zTRhI2*(tuHrL`-iahXDHUo}gIQi`;6c)bz&4S4UU?76Wq z>Iv|BKpb1r@ksXki_@cbS9&;$@Ve+8Dg`Z#g%po&q1#MP<2UP|_0;h<46yzR$*8pT z)wxjs#H;J@Mp2cxPlX3W_P)!o46qD+z@;oa7kEm#iWIy>@THNKgD={-C)&DWtT9pq zMO35)*~Z{A&4gGk4soZtY*ztCzwc;U#7pMSvcdUrWfLNx;x!*Fy4&g=zdyOhAJ!h! zq|&Q~fL)D3*J2Q@_(k`!-m~THf*%^2L+@MG0;zYUT~xeVmLI7CP(RmuV=Mi=@VR6P z;z9{+%F>f{oM|)^j@QR6*^_-AOEh5^BwGlj$u?x4X=Go@Sm)P}u@^C9Np@1!!C0~{ zV=a{Ig|S46A_g(TG?sY$p6AVT{^xn_eR0n{_nhzR?|t$8#IA>z0o#}&5Mi^8!w6RH z?r)N`I43q*T$CEj^;wE5Z84=4X*ix*RC6y`J8OO9xlV4Pt3bzd)o`gu=u4L~zG&Jy_uw`R=iOoJ6Jn06ekMCVXbVB_uKsCtGQ& zbo_ob1q)B}^SiI-bn zbvpVrW~_v2nw_uG%^eu?O>z-nI=II4vzB@?Ok=MmZNg(NJLzTFDUyZ^?Cr7}YbWV_lBcq!XmVL~+ zv{w^o^r~2E5})juj>XhJca{{m6NqQ5;3-q&xa$lVjZwwJ|lOGFb0d-O)1ngsbn`C@A}JaS3!Ob^o7u9BJx) zjeT`odLe$%3OdG`WQ?F3fb4>u?Z}8_H zgM2$w*(B0NAP*HC)&_a_ECFA^KIif3pP|o*aNZYVW`vqzxrlfs8Aqc10O-p=G6wEn z+5Su3DTBLW`5+D7kig?w+$3>m@EejOeAvY<^cBZM)wufj`T#Za*2Bbp17CvSVae4X z$yC&g+)iZxA7K3TgIrSp)PA!;WxFB25X91g028>Bo$Dk+^%{~d#tD3zmLJ@|qaw`s zw-mmjvytea@v(!Q!%-m3qNG}O*vu`0lOKDOHn}n6C&PT5EEiRr@A*gKE{mu<&p$kGF{joQb zK<#XVb4M)qWME&He(rJGX44VbPfJ&Y2_91=4L%p5f1_{FCra^3INyJw8EL@h?LsKA z&Jh)94}nSZvUEzw(-rwW68Rcg(FIqEGV9Mz=P8BU^>REf-m3PJSsoZ8XityqHe^HU z&&>~i`T1ipSO-Cw2_UvEl~Lb_7O}`110LPGw|m~N9 zRYL01BNz0&H9CG6swV8%P2xJ*!i#1SKARLS%rfWviTVD`Eih3kWsG^|LkK6=Qv_EW z?5{hQL^AX_r!0wSyuDiUE=#pqlM=aVK=1l@P>rPS4(Xc1YV3U3>7NJ(I zh)7`E&_!wTyp2pRP-6n>ht0Do5UOX*uas9eta3s)@eZbOfV058UG@Gz;w=2ovZA(!8qj>3)D7sylqJZwyT_ihWy*!{;w^)TqVkn3kRi}(b zB4vBR39uly*ws%6`Tf0qM)dSW0yoX%HkxVr`G-~tH#t&ECGqAyx!aw~1 zh6k}dgx{35$&M~00(!-$UzS<@VWEZJZ|Za)n5_(*>CM(InIzQ*&kE^XixeIy!HY{u z4C;d6j#WQ!bg$D2ad9D`k!**^FdJj?0?4J(-SlyXs6^7&=GS_AAPdk2oX^Rr}&WF2z{ zXMHOQgQK`ho_m`f^+xn6W44j7yL^L?LaSoN#E8}+@hpbw3lS;@rPaHopNU-d%#htxgy(;T{H zm}RhjE(OJ3y3tP!q`7e*X+8wvTkUfny>?h5PvQ*wYh}hif17E_A(#X@&z>qOAY#O# zid3KGl<^rgyL~iw+_sIQ5Ku71+VR`Gb|$V4n{b5HOc$)xuXgb;?`N3#Bw;IT@wok? zxvw9Hc}@FGuSL4nh)`O=X--l}A(nk%`d$fge7oA;ztu}W43kH{e4P11evis4+>-B_s3k1GXhTH-M^JGa_GIFx0SU zyDF`K%eM5kr$$hpwMfd0S`Gf<=dq0+jbx@O|32`0wl_ON#+mn(lTeF%CIUWOMP%u8 zP6tshJi0t7@1N6>2B=>8+PdB7Gvum+Cwa^3!*6B^k!+}mMBobir#eSwzf@py zD_gB7s*r$2Z^3rV(zknZ6#c;a?;moXXl~=kF`|d+7QG{bG*KLqzIAN#!76*C!ugE@ z(L4RpKvy;Qx)ulU0p;m>&*|<4Viza0lfikQOE;2czEuYB%FvLSyza^T(byGwJdgg4 z*+ON$nHHV0lFy%&eosnO(>Gc%+&fa!HtcJ={Uf%tn-AoR8|6}L$i3nv7y^TS06|T9q`;Gf-Rf-BBU!DQ5PMIvt=o$Fw z{(k`784~TktL5>(d00II402KfL0Ag%qZe(S0Uu|J-X=Y_} zbS`vnZEQ_Z%WlFj5WGjqKdjO#c0!;%AoWlL;?k<9v{EHhMJ8Snm&A_jr7e7Y9rF+e z%kp|=c4yX=HMXMoLF<&!@CeC}XFN;dD2|lu-;NHAI-)GBDR)JM8m%B>J>rIx^WiYC zv}my}tj;WW^DJ20ut-#m(g8FTRMzbJ3EMqdaJNhcts?lC-?RB&XDoSsE0iXGJk(3f z#&+ju6oe05P!&=#ql1HA+&D#{S`&3{lBSg+F3%(`F}(<+m%gm`$!>kd(H$)I*pR9a zo`O1i7nOrX>1^CPU2*UdMUlnfwwL05;{Nc3q` z$yeWIbCSAjqi9tKcg*wiMjBQ69=)G+9Dz@HIs2R}md|X&GiEGn1ffj^aTMfA(;cj; zYP#a{EPsG&WGCD|P)h>@6aWAK2mo?i|6CvU`Q~y>0081B0RRgC003WKX>MtBUtcb8 zdEI?$bK5ww==ZJK|A5ujl&Berek7TP&wA?mp*TKcTfUN=WG0njQ4%C`Op&^L*s-_f zzu)c#KmsHv$xgiI)}3=UmPDWlG#ZV5V;p)xG>h3j`}g1f#^AqJduw7RmLpJzAl6B*s=O>TO{ znAt4n2}|_}rL3j3cSiX*&664H{mPDmbQ$^+PM`TCSoj%zJ_{B>2EE~V8i#khV?cms z>@wjg&(bbC8yxpel6<-3QJ0-V|0M9k9?PRCyMEsr@ho48Azeoa_e0i?=0U_=39rBh zV1v)&NKgt*7x5GFN zi*EwrC`*E9UN*Umg9tFCwd!bN${v=y7}H=W))hMW5f9;y>~xaE`4Z>y_rLv<^}gMI z2=2EyN;4mZ7=3f#fB)OnhkxK=Bu_ zRROnt%6ms~2y{L?IXvjN>;q4xJYukpV$&pX765wOzyIz0;Hp17Jvj3&56=2mSABS+ zTwtel?qOr^1ZV^Zz177Zx7}B`Mcr51`0wt|u$$fOj-t?_4-5guM_sTF?RfR?tA;)! zAjLF`BYYF|dGiKazb@Wp?Q4SI;_St=1j%`O9TSp)cMir#65o4aFoc+m}{229q z3w`{_Ip>JfxBe|M2|u5)sh>hC*r*Gh-gI1q^5OL8-PP#{>%ne?*6HLX050&DC+v@W z=7(Y014`z39?kdI@o9h5SFd3~nz1>*kHav-y^p|h34#Mx%h)vFObjJ*fv<3;ATcMM z_#yWeLA15-zjWB0p9HvsFu*yV!`eo9g76T++rjXh1rhK%Ad)fTz)BJcmRQbxkWATK z9I@6d=SwdI9@wJE-YSYt5!CxQ%ohkbP8Rs8F1!o5S_-d7gUJnx;2&To@Dmc(2nTo$ z<2(1izz>OJVhCxGhgq-$UMq?2=GJcycK7Rlab685S%VKj0~D=&3WkK*zSq`;mwyrSdT03xBl;= zlG0ma*f3st<1dl)TI2YOha3+W3mhb=`Ux>EP9yjs6~}`Y@;e?5ksU=~D$9E2gY^&G(way}-WmhfNu0QNs_9C!~ z>UM-4M`wfUh5T~7v3o9O9H6!xPT1;9I`Nl$mzce9IEOCj*R|X>g5&|}{43aNF&*~>h zoH+e26He+_XHVk0)dI0OOF#rdSpZ1(Ex!rjPbsdT=zu_kwg#<0{BaRJ_WyvQOCiS2 z`3$CmI+c)2uq$bLaNvW)nuI>jXCSa-z;i*kSu8`IWde{te$3MhRIW#o3*^|uhb7G8 zrE~`3aqJxrXE0VrOn%I7;QR?u%-ce(0!gUz0y@Q%&zR>gm*E4Rh`|hS>rBM!x-1_5 z*=6vvhw8qzTpv(7&q#=j*tzV+{76ZXfZs6>x1(zv$12{MZoAyN1ly4>4rZ)iz322r<8U{}S55uU%SO+ETC#xWz)y6Ubh}F7m~KYio=g z6IQDAUFy;Q6L!>CTpSrl)qECwae=c1OQ*wNHCk^;d@eCl`>z55g)9TWL964UVI^@o ztH790h*gzqWj>7Z1;{U;(!r+GamRjTI|g9_pO3_Rw|A#BUBrPzJNtp{$T!HA_)uH1 z88UeS>;P4(g^_JT9^tR<)X#i(8HW#Z&_wk0o}!EdTfqZ`Q*B}e18~G*B)Sk3PN#YA zb+p--n-2erUHJyUj`P+JQ?;wKo#hNU@G%}u#OCU73)d}3mA85F_z3(wm;=w5=RCwuDYP-cm0X(;#G@3CVKG(G z0IFz$g;%)2$Lt^btUWmV@BYzMdnID(yoeKy@WZ}>P{);yioK?xfAa%Jh~~YKREe4M z-=o0=i$Fq;2h-PC=|df$zu8dOjO5EL99`XHeEO{Cp=A^qInm8{NN3K)AyGS?AwjsvNnIl zL8OnRMV-a`QWx#cEq&r)>`y%!hHO$yAEDvQ4b&8KSFa0FTyh6LujXF&0f38_z(%nx zjtgc3j4DQhzn4Q^8$7}_I3ete=Wq?a;kEW4kgr0Ly4?GE8fwAT{LX|C44|I*eV z^+63V)&K{#!8({&u3`9oV+<2or}<(j@iw~=hh~)R?;;H1+G8STo!b_ZIXsh_EJYsM810J%PNl|+tH2(w* zK0}{5NBtww5<0x=6s+-ndU$3KjK2OZ5?p*V3da zTR~Cs6{x&xY1vB8@|6032JK)T#i;gWNXoVMibGP09gn>u5FYp*n?Aq+5uh2}a5MEz zGrj=1H76rK^B3%l4!$`j?+N*BglQOP0&U;y7A2BH;gJNnTWN?O*>QY?3M;VF9v+t{ zgidbJq$O=xUjO3y+&elrdWT+=PoL}jKEUAsR>N7BRfLf`40jT8zu^Ct=RUdEMh&hIJDFeiPVB;DUw6Q5~r=xikG#n@fw71s+30EjS z;@?(j5KQGDtglUD(EF#3?I>_zk>O8g!=Yej>p0MsTpNSjYIT4wBzYBX-aqnt9;D>N z(L8rACS1+QpzMj0yD+gk0yz`(3M%}vE`e=Kf@KJ*+2QE;ZL4E2 zIqD5#L@}u{PT8V`j!{OA(H2r7_Hct}nP;hmNoh|%={-NYfM!1rGw%+W91NI{T7TOx z&gVBki0M;bR(7nvYuo+#jX}?VEz=C3J60UB>X1IF7G0wQ09SSYeiFLtccg$;A9gaMPx-LB4fgjJL@9f1k z>jK?6`Q5f*htrHSVpP}f)xgM23u?0;vTf#&E!PV%4uyQnL3wt)cE4=Balf#{pZ=p$ z8fj1=#O7#n8)LWyoDgX22tbM?%Vg{N{kgwvk*%lqYw@Zm&mPNDGUB;wswHX#^E+W; z&}qE>u;dT$y6sk#49a%GIOqwY1mb^&HF34J-akGqbamAdJ^ij`T|t;}wBH`}&os^6 zl$=!G{LW2r$OAqi{ZtESCcgZG(eCa;mB#GVvS#J$#YnPkZZUlVB9>Ixf#y(Bk4;P|cbz{MM31ljC~slzG*zdplmKx`CAB3Pm7h$@T5pzd>&>J_YFRhItb zme8tus0;s3BmaTXhl@44-grl4*Mr3Q);k(pT=hR*?Y9rk&b+q=NBvQ|YiV|QaP*r8 zLOBTZWOcE%x#)lJuHT;>{N5i5{n*y%aPZMPK7GHxvuk^LelR?Nw_pR)7yGrIlVU+G z5!dV3#Xk)q57UApY%xLXxHrVoR`>xm>}ecf6$4m(7}*b*W(FYJC*q)0LhQ@v5O5Ur z4)PgjRWBuhpgt!}et7VeY^&x*Qqj0wmPB)*ZSCVu*O=QOXnzzkmyj?)Zd{xLb7Bx^ z0aG&AXiF(a9alI3bRt5Pe1@*BQfS$6W$YdTtGjJVXFZBQP8$OpKpAes9%y$g`;|`k zr4od^Nj~Oiadj}l1ual&ru*uHscG2WyT319SMzaP7LjCVfxw7DILXfYqj$Yy5U(%b zY`RB6iqwgwf)0iEqXrI1t_VmLTVWo?V?X3%&(4$EI8LTP1o#DzvN_0W;|W> z?Lgiz1#(ZM)tE!%8Iq&>@D1m~{&(&p63{UzyCqeS)v(Sf&xLR?7Y_ulL0}(pq_wb% z;gc9N5E9C2L!8_I6kueakxp(&)^^z_hA|*yp0U<>iw5*3F)~8Z6yF?x*NM%PDxF%X~PbBvrtoz^;Hp+ypjXa6iI8Mt__-%P$@FJ)=(# z#iz#(eEgm{J1#QSS0H896jcG_SGL1@KiZ6S`l2qs02JzgKWd*J)n^mHU6l}uD9YL} z?qCQYTZ!AsvaAyA)PI|ac=$s5AglskgOjre6O|Dc1&5Rt^(4-W?=(Z*ZN%Z{ z^_)1E#9q3DjUf23IixfnPlLMv6G_s25R*}N%Hb0RGSxVCO`?H`tX?BL?4@i^f8Zc; zS`=jd-S#VT?+ZJM3Pt)S>(6GKq*L1Qy-Sem7Z^VdryT`7fv{49DyevFg^t-wL}2Rs zLyHS5Td8<3yp4rz>aY-8wJM}`q$osI!+O5mn8aJ7+k zSInXcT1S$;7t0w`8f&k*>MOJfT*X zVZh&hdvtv`x*on&I<5rZidaE?4b3P*v$YT{z0EqUj_6V#i+CY1`&Vu$Mf?Ez8X&nR zhM4PDJ$BGFL{T#t&h#NFtRNtBXNr$!(K|Dw|&jH;jy#bQ>1 z6cNBrf@n6Hf<}a{(cO(+SBd+4)_Z}TGa)rGI+N7;X>{I1muhtj!i4c$o`Kq_C{w{u zBL`UU$^OinpiqgF*giQM93GstEA7+{mQzu`S6VHCsi0i4W4|e>@x2lXh+m$PQ~hyI z3a;!9I5CB)P)M9F!h=8vo%uWjwVP869_0@Fqck7zFk8lHKtL%&XIzGfqTuJ_4g*$w zkf-oC3NjHrs_z5^3*^pWIODRxY=#cDTMXr7!jXuZ=9Y#p<#&KVX``(1_6C~4z zSB*HVV!>w4xj;i?k@UKwh#UZ=Y{73p)Dfcvl`snU6foa$TLrpc5W5@TV|NukcGu!# zcSC&aesg^6J`o@PWN+MB+Ay8Jm>q>`FVD#x0~`r0URD1NIdlFW@_`twiwuKMOweg` zcIXnImXy%>`Z0(!vs4)40Yxcbjl=Q=@Cl}>2NONTQ}H##Qd{mC$>e+tbYhap#ASyu zIyd~WFbzbdQqf^Oc_yM&JS~zR0xlC$(R_eUfRt|I#UiWATV`IG&W_C|Rbf)aM3p1` z(Zx5_-=L=>>hSFj&lUYOmr4yzqq{|oPlZ?EMyP~W-S{BU2%*1emZe>DAW^@^4oQCb z0R#+@*(mp}$le!85^Z#DM{P800w%*azAa6e`V@wp6*A^~UOn*`7AC2MX>@jH+Jy;Ns-0-!|Lm3`?f2t4;rE+ps;Y z=GF+yWYz}ODru!UU97R2Jc(_tc8yUCWVB+n6p38O+*i45ANr>!?}T13JU=iN@IG=y z<|h#6vKAh*8fDP8mJ>qlg(aX&^lhMavg&K0@#xmKSQ82`MsT&vS(oNjHV;B9B@t(j zD7W`0V;s*f!TPFM@|sOk=8!mAf;hPvE!i6)xxa3}(`m&_WF;F^)p!rTo5p>#n$j?O z^a8tGl&C@(@kG)``R|LF^8U08;y-G{D_N?M^7Gu~diGLj&H(95`24i19L9mvU zZyG`Q*4ih{0-$!J$McYU&6*uRf7v!F|b15v0zc;y0O-gD9BJ`DdT@bn6~(x zE%StaBHO@h#>q_NgOUdW$I!zp;4}CsM^hI0$=_q@az6WqMm;AOtQp7Y)@X9G$g@WY z?gkS^?-3UHNK@tv#!3VDfj~x)&ukEn(D5txAaek!og5?%BbpmRzM%|u>W)iUED`%euvG0=y6Gc2~R&8deURMXBUtk zNfLbo*%NnM5IK)22#D|%KS-b7k|H?hH*D9Folxk}>@0>aqMfIRg zIZ||?P%0OU^?iSM)&Hm}1IfX63QvrRZ$Ts1Emz66cgpMg3B?n^reWx~5T3bi+LCC? z=Pxqds!^$uB=G|S*Bfayl4OILf4;1nq+Wz0!t8uW9V$^@qlSp0X5e>en{*#_AsP?Z zM;^>Gkp*v_wFo>UI;H+0AP(6o&b1;9-vxr9W0Uk#2(&I)2XW!bc9+{iZV+s(i!EYY zz@$Y4pV)?7&<1>-+;Z)#{jGm`QIQ`^D2b$M;vY!+ibVp6JK_(Gg|vZ1*6GxTaky8L zP+WJX!UV0a(Fx2{48pt=9-8$D?SxRRkrlu)OsKD@ zI*4~vX7|NeL;nyCs!4OAVPrJispryXoNJ{rhXAOMp-|!05cmUYd9abUTUsNXPOU8^ols>C4A%LC-3mL8 z3aF%r^1{+|7nY{A9nF1S)M4)!M>T@@e&1|XR%qArLvR2qHoHIsmeGX4e^=JglvPz> zT)M(B%eXJoj009~ZAkeWXtW*LjB1@$WgK~=CmrcTyU<4FY>Q*Y;RKy%;*0Dt! zTT`cT`s~KfEK#KjFP7N@rOgVd0uBsJcq`5%PS3SWAw@8_ zIcq$M`nS5|V(4f9T>4k$k31-OrG0sJ0Akg_$Ns3TH`atHGwqKae`+a_r-fDcT1x6^ z;dEArJyZ(x9=Auf+1XET+X(0OB$&Zp;2~t@ z5lKh9)Z~QoOGpMa_ZND;fT)GH`+N4wFF(C1PV-V*QIE@RqLRL}Pn40d@=V{jnz!1Y zcAgbmG{tWs_8G~9LMH!80d7Ottr~^Ck?3X#b2WOdaV*%%O;p2*^i95b&`}+7&1Rtk zUSrVsDrr=!6K61*Pw+r5WJ$pSIaawzGVE8302eUz#vD+u7X*vF6b_VOUS7mf7z(JYbf>_LKg*=~RrkoOt!bs#oTNhNwWFzCZ4#|4*ab~3 zL1av-9sz7S?JAWMHMrQJxjLbdfu?}T1T>Mq6nlAu$4xEBE#Y`YR+{v6{7*+tXi1d4o9)No< zdUzpU9C9HNJ7RWSGGd9LbvhPPF8aj^{8$J7@Am1%+X0M~wGPUg7+8Les*)xjzYQ!Y7VyH6E zTe`zc+sasLcmI<~Uqxx4mMr{&#c@xlip;|2$P?)jr5Ga@TUDQdLj``IgQ!4*UC(?T z&9Sl!7d~X^Numn_@epD?Gdi1`{T9H*{Xz)-bQ1SQR0IQGF$7SdsNHWH*ypaU(o(I^ zeK|=Zg11tHXU}#=XAQGrqCI^IFeIvy^r~CD&e_3Bu6A6y-SN#EeRK;dT)6XwyjS~l zcT<{=g;M_U_dnXk;ETIk_np>=tnPQn{dt&0K}!3)#48rtX^Y{tU5us$ZONgGY*3m1 zFm7Ts{%i4M9*i?te@9$m^EN;XM_5!a^rLxM=0~=bXm^`|(yc`A2ScH-spNdLq)=_A zOi$5!4|E4JkdgIsev`F2^`$DxTr!r_H|6V$OV@{M$Sp%PdhsI)0Rh`oo|}iwk&stQ)* zG2i*gw5KXt>GcED!j>uMs}ZCU&o|!5m?PeUyaI2;ebt%s=D<=w+c>WL`uSo zkk@OZ#5t-bykVy+mqS4edc^4((Mk5*Kyac!RV6Bki>`qxvmyfy_2^sF6zRl+naE41 z*jaqvyNtsJ3f{FyMlysI;EgCYu|=X;7{dOa189)$GfOWFUBx~Jc?L>W(eVV;0aZ26WaPTF7>N>LH<*lI z@S2?(t9kvVaSI2W?xiK?6IlZ2W=~mu3~#ANHPR7DJTwVPeyAx`H5>72WXqs7dSMUH zgXhJj2!BFkTys!d109)(UXD=QX28yo8u`4VTY_r#_SI9CFyZxDHt)uC=ClrdRR0AO zkTA&1C{*_n7%Y^^|80ww?aqoL{aDX`9VdQHw-;dPUreOw%i_&@th{IjggAUt2E@_` z^@}m4E*tVx3L)xX6=Dgf5E$c*RF(x%&Eil=kXpAJ#B_T$RqdzEjSb3nfC6ej1tQ>w zJM^)#gYh(vZs|f~vha#^4EQXM=vqSC;4!n&JkTvC@8sqY|A`D*P3P8n0xSFpP{U7N{v&~QL z4_GI$v~-{$QM(GQr@>`T5(|skG*3X=5gvQ=&NrPS7%o%SRLS|hdNvpbFhXHMhBItB z85LiEv35Q9C(^=VFsgt#B3K4#Nrj;7tLT%C5ZHx^U7@HV(rz_H(YQ0bhFcr)Ye7=G z(pu0=Pmlgh$Vw2vU~fa0=3*I58FIF6kK!r}`82=9_iPbtyX|C02}+GLudFX{sNLe- zynk}CU4Sei{UF8YnFD~a3Wkq`_Jy?riHsgL(Mxd&MM*Wb@>VA8NHMUuLSbtt>yN0u zY1JsGg^d?QiR_B3w9f^Rfv}$|2zyf+Jy#q3Z05e5(k4~|SF3=ude>YaXY9!ypl=o^ z+0e`*J7jcMg1lJ)Hu)nDF-TpA^vXMPm%0pHK3w@=sC8@SWD5M`Id5kdoxB#DZPhw#P+x<`U8$`}mKMKLBJeu)F6@l?ew(v0VVE(UGk z)FDnGZ9$^clc=$z;A)+kA!}PliYZ3rrXC(1sM;#?psgNMBXFFVbXm)LIsk6aqZtoT zv5b2CFMI)dSi+l(REHSPqzn5+c$3XOBN-STBhBujH{07~bp;HxvhS3GF~ytc`gBd5 z-Yu=-m=v~vRbG2aVjG5@?m6f~Y46ZaHnoAmYT{xNO1Qk&xi=1Bvcz7dbf&-ok9Bhr z(7RGU!tw!JJHsk63Jk@|ZeScYaky4e!EyUz-RNcFb!U6KQM@`BD^mj9`XkqgR9X~1 zX(U|MfzYSKJ0Q+X^AwM6yw0YHYmadjtN8=Ypu#4!M>6+xV$*2 zDg|;M(8YIjO|0DWJ&?`$!Uy8zVe0)01-oCpe~DU)ziP9jDtpU>&w?*&CyJHHp`AX- zx8!+klA1BNLPX*}x`!@nW9znvcA(F+l+H=Q=Qa7Sn|q+kQ!Y0PP#ar4Zak+1=>bKw|2gFnA?*~c?D zTXs9Hyl;TyjxNg=&4Ah>tVvF$&CoK2`jNN|uNE_+DrByc(+#K%Ui>%Z(btG7I6LDo z&q@IVWe5rpNtq+0BA9Ja7YMr5nL9tE#DytPOOD9i9 z8!yNcxcU^Iw34SDK5t<nUQvDv*Z zPLP9v^!vL^8@%rCRz7f&F3CQhHgguSY@#NmxLF~Cy%}IpO!A3z>b#WZ=LJy~%iXbl zt~iA9P4WhZ4S7oGXi&P>t)B&V1QQMW;~<AT-C*-nAF!6j^J#&Kki~+>W`FY z^X5lc4rJr0(R(vGzSIHtUu=N)Nk)9@T`<3)FcTGIGxhPLL$_W?vV?8sDfbulz=oP| zj4IvO65&vbL_!1GDklH|p%YjJ1^~BLXEGI@#XLf3c2Pb8y5+KQTaoBUMI3H0)s#HO zvWP7nBZei1IVU_yZ-S_^LM9~17XaQ%JGSXtA!Q1+UG@k17Oi_0l)y|>y;>VJD-BFE z$_6QDy>|u4yMnXGzu}LRbcUoFfEXiE70~65K1CF0f;FNL`MzLqh)b7h^6CK+b+j}i z1d|%<0i6v9nb+h(&87EBVq|v(N|Zve&rXJeK4>DtzCsa7gG2qMy#kML;LP;NLz)22_0NqT*oDm5jEMGsDPKK-BoDMoW5^lB@kU-!cKq#I|k|v zkj4KgGQ+ntmjca=8dSNx9KJ}S=2I%ty3T}~)4gZ+XrK|@pA^yBS6#9~J_mU}2gGAx zXS@*;JyS|778Rk<(VH}wc7*6(wZ?DgCAG%9zj~^V6b6~xvi2V;0=G@G`an7IcRZ0= zso0D-=ZI5SAIIdXMv5){*@rMA$;K<&RL*siIOKyIDbRtt`=EZQZg06f#ub!5HiCH-E}3Y6&yAHisa_%EA!^i8YMB7cs^=v~>6 zI-r^w)Ox8@slgI`ilh~g>ZpvZAVxk!lbZz2(ZO+lC~Taa7fYoQr3$>kl~;H<(JPWV zYJ5c{me32PGL^U`%O03rJhHO4isqp|rl{f8iEJhf>_r2Okg%C@fnJpHdSbVu-AVI^ zAsZ;J#f?gEA`}%*`+v8G{gcztRUf6e_VvZ_p#7JkG!Lt*;aO5vA};ER%gQBQS>r@& zB+~tg-*mcFD+X{cXZ}0e!4NwxOPeWi>6<2U@lv(0n>Aa5RI-w=-pUi1}l6j1u#S3dG zsj31Wf+J9MNLk`f$Q$4iOb?nlmS!8KSZlf5W&*GzOOu{z_xHfQdwY6uI(pYXF87<* zA$`zr;0T|mOOQi>lWVs$6uXB!v&8Pqy%9ur@oi;m07C9~^wm2gm{Ec>ESrl+#M%XL zRAG*{eoSO=X>v@~ru}X;^fhe4dtM+`EVXjXG8dUjG`9Lee^tt*>+w9sU zU<(Z`_W(D(_ZEHxRF>$CfQp2F5h!9FM9y}@ZmYgi@l=37>mq)j>(+%jDPFm6j-X?_ zS|IKQ_^SQ z67S&NvQ4j+&ux(S@cIJN%)Rr$@xfV1=Tu|_r|?Y))gV=Ze`!S%^IlRv6`+9>62 zbW9bzLYz9y^-n6Nk*s{8_3hY}x2_*l&qgHkC!I^OBH4@Rk(%|%x$gIXSxg^Zth%bK zR_00jQ06Cd(AVo+NGsNJ6)$^~h~Fb+Zci)qh7qj+PuUOThZYXRsn8NBtq~s4&1Iq_ zTv?_kies5zKG>gUETSbjGDoIlodFvRk zD9+0dW2#H61Edl*5}vHJDzEKou!xV=QZ3zFHKInz4x+q<$FX3$cv!3_*2_#l;0` ziD6XDH4?kR@&W|Ak-?_g$zrSleqz{f8?7~^!4`vVi)wfjfvXvrF{VmJ@gV4uN44~m z;YI8p(;y-DpDH1_#G5Gmaf*MPDw#s#j*WcbcX4x7t7Vq-iZks6Qe})&@sc2gM^5p$ zV-wShl1=^La4@8rO^1~ACUTkQIS(_$8#5dPcrW7(kfGapq987LHCENzn2XmYESs*J zPFaSFwSFTrn6TnK<_p#@35(4!^J@BxnTWe$u+DgYI_EN*6_bt~b#;o7Y}@I|DB`zN zAVam*E>@8Vw5l*DUdGZkE9hxS%*5d-6IYN$`|ZII-dL{LPS#eDD_tyxbq<}$rfm+m z5b-N3+5tW;CzYXthBlrCN9!ke^!e$RM;C`GzQv-O#A|Me-lWmHV$k8^^tW^14bwm*-K_+THN7cCY)rYRV9U6)RT8c|#?F}Vq zAjPHo{}uv6S4kp&t$>cj+ls=`>8e*yOO3Mkwa+VFkYOn7Jmf23Q{-fxX7Pf`f62B? zD2%+wGN|P#*`ZOqMk-piN5hjtinStWW;!p$pOzeCoy=3a(#)Yq?mY=rCdA4Dz58s) zspd?BD1|i{KxdqJV-SSWnorEU9t}ffqF}MI6_SxB%0=sW{VS9(ooiUs&yDVnG40hB zC|1Q>(=poLrR^pKU2VofJ2%dcS|!KTM+c~~hA3jM*=Sa0tnyUjnlH0vV*TZM<;22s z?!fsWuI~CS)y7hNU3t>4H;TW24rt^tME*?{#wku|yX;NIW<` z(r>Qm@q3{lU%=>HCTqxnKtScE1w6E;_vq$d*zO{Zh4`q72a-W&>3^|uF}6y?V~7z@ z2@WwTuh2#~bCp=8s$Dys z>yG(#_p@PB%77u`1&o<_SD)N{4qhuXPT2QMG|?jUoblZL^SJhNS(6JUsh8+gq%2C( zw>%H21!oKd(<-}=3n_{*+HarXVJRaMGP)-sbMX-zy_4JN=N__S42)ejoq z(O(2<3fx7tg@bkyH#G*nb%d8ZwTdbv%ciEPD%Qu}|4^+76V#4g;>I++^i%8led{x7 zF-tdy=$Gx!9fM>hK>}D4w@`V4Vs+A4P0T?a4MwLI{kH9; zG$DyV+_EL300nVq=y!>8VP=ow7Cp}jzGZI2U8y{N= z@B}&WT~oW?%XaZ%+%)AQcm~|lN|X~~_=|CEMrD(<(qyOJ1V^bi+5N1=OdZDy;OxB* zezM%dkg`Xf$V_6%=|hpOP!t2zvmB?sD(|4c2?^my+$0BwO&JY}2MhzP`JT`5M9A=p z7}4t<-tDPNt(!Kvs43d1_HaeL$tj4dQ7S`s+OLn>wRUpuA`87$-%GF5okNyBB2?DW zX;*d9cOD>Gr!WgV5mDZ zJMnuH*%$3*+{ZGN_z(;BqAkq38hB)#sx)1D*bl>wyK+MQ7t4f7{k5U*RlE)r z)-KkU?bNzVLeMY^%|s!hV0`Z=eEk-aeH^80!%pi7Y*n&mrd`lDmSj!sjv-&M^!b=8mPy087Z410Sq~e(L8D1WH@D+>_KIm?ay#+gI@F!Yi+_GYAb&)NH6uP^ zl>0fG!G=I|gUUlJ$qLpS?2fxD2D|&ZHdv7`mXs7HZ8rh#G7YNGTLorcqowkd1WBV+ zXoYSyME$f2!sIp%!F+dZcEDY4kd-D|bMq1zn~);*x3=+!V2dNipBQ4tuuKS-QpYgB z3Lo+Yj>ON^TPSt>nJl%+LkLy_Lp7hR;HJO4Y3g8QrHF66gZ+p*80_hC7x4=uSRTst z_v3Gb13zv+fc9X;>|edHwqAX{Lu3225A(%xPb_^|$RECw&7c^+x($~33(|?`W^Yk4 zRe6iYc{4l3m$bBYr8F*6$nC3U=}=0MmJY8sLcam;9hE&dHby-Geh-LaOFACOo_}$A z^zKRzXAxc(-9x3IrLmCW(JgeF>1q6C9kiZ0{)Pe8Um+Qlw!U?oXEYpKx5tr)=)DJn zh)x7iq7M??Fr$p#d(UXmnZzhb$RLQ`M;Ud9-V;XeElLIvy$eZrJ@5T;*R$^3=fhrS z?X~u|z1RAmefCdQiXKzd-1DhAvyybJWW+y4%&i}<lPJR}SB83b>Dpk##H{ z8F_47iq)r-gT6e;V)o@V6sxdhJSIFOCC|VEbxv4;!46#@2xAYP^0ytmnL;TBqF$8WbYY!TO+bMxB}Wr7|eReE1$zchX7NGzHtd9anXQX=7Wxt zrc(E&(e=UPu(dcVK^@ZK`lpVy6QDksmA7kp3^`QMjS>*2WQH>zM2E3!K{n|_@Pm|u3=Rc zYoOto=D&r76{Bu+)L)+3g?2)1>SRwO$}z;6q7`=J;YiWM1@StvN+wX%PUI6)BJy}h;G_*RJv0l z+O>If;m?iwUf(tQ=6yXg)RMcvMy^7HDOK0ep}wdG=R@qKDhya)L=*)sEAvXzu@imw zzDGicJFb6$lrPKV9y>4pf&|96tqv)-ZU$ekvD_bfnRQhGozW|W*(f# zu5^wOe(wH3NJ{=dUD}%?sDK zhj3;N8S0usskKxlf;1W-bVUc%)`i#wl!-%2lNcpdSdvk`FP??~BBy8oc`C-Gjhq2; zY_-Kw13Qe@x)HvJ(dQVk-fDtYS;EiP#P{rSbLiYco?G}}9|alPj*nb%RFzYR!618eKZb$pDpVFC&Tsr_vV#v+Sc%Z5JJz|!d5Kw=+xVuQ% zz=+-OLInCfiK^$rR>bGwQeRI3itNX_1(b#Z_>}i}&0Ynyd}>|veC~FAHGFm6GIb5% zJ_QgWaBt%Uv-5-*v>cx;&g7L`N)uLglh$mKkVN2}C#DbNq<+$1KuFGhjS^{PetYlI zF0HM~bcAKx=p{G!k1fY*7#ZKYV&6dDP+ln?yoX0+p)W({p11o+|B4OQeRr<_8}Qer z!va!ZU@S|FWL?BN348p&oJ^OxcYJ>JiV3}zr@zy6hzj5BDo7%(U9)dnl}S5$J^2c? zzeDxq+EZY{fH283nF;#L+kPH;-0J>v-I-13&0A>!8@o8yt>LPqB=@AB@Q*cggr3^J zUKnp02;H^RW5wst+mIRhbi+ zYXt&<8=9J)oyofLNzwz~IgT^5IxEHfl@U)nD%N5;MXu1XkUY8ZAS1Ffgq_*o1orn( zG|*)`Zy9iuE}I2y(UVRZor4NT5NRGud_=OdR2qiFYlkoxz5?jbHvciRLjCdww(|KV zvYe`hTzseo>8F4qSOV_74e>$~^0M1n3wyoKjH=zVF?Thiw#sd$x9Xzz&dTnkuLg=6 z-~aoQ#OY`HXvy~lhxZiY@kGyn{z%4j*4DL+i*S&_V6FZ%)MtJ2BBH?RR381ea9h$f z*>y&5$*2+EDCE4Er-j4{F_L~Olw}LGE8e=OvQBCaz&NZNLj?dp|XLGkcu*Ugn(*_@G(BFPs%-1a1P^n zvajEJLkS3bcshI`W~pNXcnSw1pVJk00zXr5QJlkdb@tZN^e#}k31f0l!J_Q!z=$eY zRb!8HagBz|oPr&n`eQla&&TTO6(o14v@RYp91iP%(!zRs7{wLZ6!*ddVY?QVL9R~3 z3>#x^lIoB{4hW@Dy_>1DDeX{gWo(;aUdP<>tD+~OYd+mSsukmZ%$95v5c4(ofqc+R zh_3!(MEJ^(vC56|6gu~eaityOeJH<@MX%ap&>}VzS}*LkX{e?$?gaLPnLX&* z)1;IzcXl$y0$jHQt$%)ch!C5h_}$I>g)%w_+<@!3lU_nt?v}Ddw<=CEHASU2DynSd z;YFg6ZAK^r)8_X!?uj06IiGxE*{7k#=GLuwqND+bw2|OO z?V_~XIk9EdZldnZ7OC>`!hI|$j79!DN@XQGY?p&J_nc&KpVv>}Z4@|bj-A5FU70*w zXI9qa4Pc&(y=!#EJ9ZAXZp!i}gTYXWc%Srlj)R(;H%=5>OjY;td#RDo=Q3>8ptq&e zeq7(#{EK`6e)o7bEy3;Pi*3wsgPB!b2-*eO7>dqRl=_UQ)ahF_|3N?JLi6U5tM-KB zgAW}YD6%EP4ZJs>H9fpHv+E>!P*Z=|L&AYrB$}yGoi0DDKW|~JsNXjZJRe%V{S(Ct zO#jH;8WT2WdJ!yCCewf0bxZRinl?{6A90~zY~-=U{5gilw?eqNWL-r8a^yAIzx{%a z?Vhi4xk;7j=ip5myjsRbst5Mq~wSXcLY;AGnRD`Pz4z0o^^ zhN9t`>=FmdPj^q0I5tjZj;`eWstRI$=LvYz zl}B49l8^TXm!h2&C{79&z{{QNydx}3@l3s*)bGa^3SA1*5N7kW0>0M3(1F*#eH-Qm zu7e(wB(Uvw#9xw&PH&=2~xeBn7{W!iJ!^=BQiR5S~x_f zS~<*;(Vb!eNVISI>S(~foCqpSABCtK22V6R!|1=6$)?r{r$G*+=nTg#-q|w?FN!kn zi1Pln`B;P_M4?Jm8dzhtoSl8vW^=PweWQ~ARIe~{tLs5{=~%7}6$Ba%Dc5fQw)^Xw^)fVUOI-(BKbe@3#{7y^QdIoxsjFr2mdDd!E~x|7 zPoxglMEgU56x}!d-@sw|z>a?6kIc+gJz(M0nRK>c^DZyAvb+@zVN&=o!IA71io+A$ z{`l{OqNRo4@+m=fEoTlHJB6D=O6F|Ur=)@;d5p$edgOet<>V1pquO`00g|BUfdf1?tlN4| ziL#R7?l)W9+udyGib%%Ey&q2iSIScjr9y9?_RFCXY1(jZE8tB1Ze@AR%c&&s9g`BH z_K}YduB{&1v8Rv7zuU(@l@n^*3#ycd;8YS%4#IzT=xgB<(Bb|6G`w3r+kXuc`H%ZQ q*?9j>@o&D{|0KY}!$kVrV)p(Q?M+{c@ZLW`g4+{v>&f)~x%~%G)ctq> literal 0 HcmV?d00001 diff --git a/stylized_rock_generator.py b/stylized_rock_generator.py index bf53df8..a7f3243 100644 --- a/stylized_rock_generator.py +++ b/stylized_rock_generator.py @@ -1,7 +1,7 @@ bl_info = { "name": "Stylized Rock Generator", "author": "D4rkst3r", - "version": (2, 10, 0), + "version": (2, 11, 0), "blender": (4, 2, 0), "location": "View3D > Sidebar > Rock Gen", "description": ( @@ -310,6 +310,13 @@ def _build_rock_mesh(context, settings, index, location, rng, name=None): # der Displace nutzt globale Texturkoordinaten, eine Objekt-Skalierung # wuerde das Rauschen mitverzerren statt die Form zu aendern. px, py, pz = settings.box_proportions + # Auf gleiches Volumen normieren: sonst waere ein Quader bei gleicher + # Groessen-Klasse deutlich groesser als ein Wuerfel, nur weil eine + # Achse gestreckt ist. So bedeutet "M" bei jeder Form dasselbe - + # die Platte ist dann flacher UND breiter, aber nicht schwerer. + gmean = (abs(px) * abs(py) * abs(pz)) ** (1.0 / 3.0) + if gmean > 1e-6: + px, py, pz = px / gmean, py / gmean, pz / gmean v = settings.box_variation if v > 0.0: px *= 1.0 + rng.uniform(-v, v) * 0.5