From 2e2611b6e3d841ddac760a351202d5cdc18add40 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mi=C5=82osz=20Matkowski?= Date: Tue, 2 Apr 2024 23:08:46 +0200 Subject: [PATCH] Ignore m_SerializedDataModeController in Toolbox wizards; minor refactor changes --- .../Wizards/ScriptableObjectCreationWizard.cs | 41 +++++++++--------- .../Editor/Wizards/ToolboxWizard.cs | 11 ++++- .../ArchetypeAttributes/TitleAttribute.cs | 2 - Docs/createso.png | Bin 12001 -> 18688 bytes 4 files changed, 30 insertions(+), 24 deletions(-) diff --git a/Assets/Editor Toolbox/Editor/Wizards/ScriptableObjectCreationWizard.cs b/Assets/Editor Toolbox/Editor/Wizards/ScriptableObjectCreationWizard.cs index 9295e08b..a7bf6bb0 100644 --- a/Assets/Editor Toolbox/Editor/Wizards/ScriptableObjectCreationWizard.cs +++ b/Assets/Editor Toolbox/Editor/Wizards/ScriptableObjectCreationWizard.cs @@ -88,37 +88,36 @@ internal static void Initialize() private void DrawSettingsPanel() { - EditorGUILayout.LabelField("Settings", EditorStyles.boldLabel); - var rect = EditorGUILayout.GetControlRect(true); + rect = EditorGUI.PrefixLabel(rect, Style.typeContent); typeField.OnGui(rect, true, OnTypeSelected, data.InstanceType); if (data.InstanceType == null) { return; } - ToolboxEditorGui.DrawLine(); - EditorGUI.BeginChangeCheck(); data.InstanceName = EditorGUILayout.TextField(Style.nameContent, data.InstanceName); data.InstancesCount = EditorGUILayout.IntField(Style.countContent, data.InstancesCount); - - EditorGUI.BeginChangeCheck(); - var assignedInstance = EditorGUILayout.ObjectField(Style.objectContent, data.BlueprintObject, data.InstanceType, false); - data.BlueprintObject = assignedInstance; - if (EditorGUI.EndChangeCheck()) + using (new EditorGUILayout.HorizontalScope()) { - UpdateBlueprintObjectEditor(); - } + EditorGUI.BeginChangeCheck(); + var assignedInstance = EditorGUILayout.ObjectField(Style.objectContent, data.BlueprintObject, data.InstanceType, false); + data.BlueprintObject = assignedInstance; + if (EditorGUI.EndChangeCheck()) + { + UpdateBlueprintObjectEditor(); + } - if (assignedInstance != null) - { - inspectDefaultObject = GUILayout.Toggle(inspectDefaultObject, - Style.foldoutContent, Style.foldoutStyle, Style.foldoutOptions); - } - else - { - inspectDefaultObject = false; + if (assignedInstance != null) + { + inspectDefaultObject = GUILayout.Toggle(inspectDefaultObject, + Style.foldoutContent, Style.foldoutStyle, Style.foldoutOptions); + } + else + { + inspectDefaultObject = false; + } } if (inspectDefaultObject) @@ -129,7 +128,6 @@ private void DrawSettingsPanel() } } - if (EditorGUI.EndChangeCheck()) { OnWizardUpdate(); @@ -237,7 +235,7 @@ protected override void OnWizardUpdate() protected override void OnWizardGui() { base.OnWizardGui(); - using (new EditorGUILayout.VerticalScope(Style.backgroundStyle)) + using (new EditorGUILayout.VerticalScope()) { DrawSettingsPanel(); } @@ -250,6 +248,7 @@ private static class Style internal static readonly GUIStyle backgroundStyle; internal static readonly GUIStyle foldoutStyle; + internal static readonly GUIContent typeContent = new GUIContent("Instance Type"); internal static readonly GUIContent nameContent = new GUIContent("Instance Name"); internal static readonly GUIContent countContent = new GUIContent("Instances Count", "Indicates how many instances will be created."); internal static readonly GUIContent objectContent = new GUIContent("Blueprint Object", "Will be used as a blueprint for all created ScriptableObjects."); diff --git a/Assets/Editor Toolbox/Editor/Wizards/ToolboxWizard.cs b/Assets/Editor Toolbox/Editor/Wizards/ToolboxWizard.cs index ca125666..0ef5db9d 100644 --- a/Assets/Editor Toolbox/Editor/Wizards/ToolboxWizard.cs +++ b/Assets/Editor Toolbox/Editor/Wizards/ToolboxWizard.cs @@ -7,6 +7,12 @@ namespace Toolbox.Editor.Wizards public class ToolboxWizard : EditorWindow { + private static readonly string[] propertiesToIgnore = new string[] + { + PropertyUtility.Defaults.scriptPropertyName, + "m_SerializedDataModeController" + }; + private Editor targetEditor; private Vector2 scrollPosition; @@ -84,7 +90,10 @@ private void ReinitEditor(Editor editor) editor.hideFlags = HideFlags.HideAndDontSave; if (editor is ToolboxEditor toolboxEditor) { - toolboxEditor.IgnoreProperty(PropertyUtility.Defaults.scriptPropertyName); + foreach (var property in propertiesToIgnore) + { + toolboxEditor.IgnoreProperty(property); + } } } diff --git a/Assets/Editor Toolbox/Runtime/Attributes/Toolbox/ArchetypeAttributes/TitleAttribute.cs b/Assets/Editor Toolbox/Runtime/Attributes/Toolbox/ArchetypeAttributes/TitleAttribute.cs index 593e07a9..9a60efa2 100644 --- a/Assets/Editor Toolbox/Runtime/Attributes/Toolbox/ArchetypeAttributes/TitleAttribute.cs +++ b/Assets/Editor Toolbox/Runtime/Attributes/Toolbox/ArchetypeAttributes/TitleAttribute.cs @@ -19,7 +19,6 @@ public TitleAttribute(string label) Label = label; } - public override ToolboxAttribute[] Process() { return new ToolboxAttribute[] @@ -42,7 +41,6 @@ public override ToolboxAttribute[] Process() }; } - public string Label { get; private set; } /// diff --git a/Docs/createso.png b/Docs/createso.png index 013b547b0c004d6e07fd71043285a2dbc2e9e944..7f936200f7a4d61e316f1d3495b9b81d604c3258 100644 GIT binary patch literal 18688 zcmeIahdb8q`#+wLO?UP!TQ=EyMBHTG$S!-8>@q_}=4})*vTj)=tAXq-l37tQBgr1w z{7$_-HP|6z=3miyj0>#EG7m)ZJVDv;6JxHadqPkaqw;!vmAY4xnhBwQdE=%o`d>{5HfDJjrnltTeYrV{CPx5RImltzMgVV z0i*0aZr$^2*b6OUY-Hcw-Z98#Q86sLbm>wAGB;N&UGnbYNS=dLQq@qT*knfTST}r^ z7CV;MrYoM2O=o6yHidJuJ!77muY~39fI{$bV1a80FH##f+F1pehEkzci+iA7*?nHd zfrszDx?KV(NB;ASdq{hGdkmBOJHO5Om*&--hrhqRx!rR%mYi9^#nJIeR@TcAZL8`h zf;aSe&HT3(tY7a%kkI;XFBTYn7;Omf$x*m(apOjv&ngoG!;9CqmY16!;BGH|steq! z(yxxMb&Z{sxc#~G_Ls7nRE^u{_xV)2LaAp85$KKwd8ElPs`G3F{QQrII7oUzDV&SY zu&gKy^6u8c;In7X;u&S*=|xedR%ln(l~e)ql61?5tWg_}>jXM@Dn`CO=L3%5qN%pLwH$hcb+!|ucyhQ|>-7_xk)AGn=j&_Ms}FO%HcYxHT(-BrShABO2|A&RlB8rlI{sN2 z^9-7unhLQxZ!hJ&p!eq1r}p+%Z?}cC1y-k(zAZe=I{|t|pD$%M2)Uj{?c+%MZ9JPt zYxUo_PnEADXi{qxbLMFN(G19c=%mrKAiSq!*QV%@R<-Txr;f{#}x^C+B|q^2(%e##pcUxShVlOu)9<&c;Wo69` zn!k3c^!oV`>i_NSFFLQ)M~UxW&8r9)mQ$kA3N|S6vrsw;abm*9@AG=1mXy^#S7KbA zt;KQ?VZe=kEB?2d4{qr3(onNv;x2S6vp5$eC1z&UIS+HA=KZb>%Fa8Uxv7s$azdR1zsNa>en|UZPnvk_d>l@V)b5{y`kna zveIBx^C}70S%HJ3^v_cXX|wmu5-$>{Y;rq&k@FcAdz6qFqC%T@^X%y{R|yQ1o53j! zjI7od$*Wzkot(}}Nl8gdD>f{%RP>lpfsfUTijPli8hkVoR?eTlRvvt$IWf|oCTu&9 ztHj-nL;FfuR#tZFoLAJ*!On}}h3+JFY#i&i;bDUnQC{BXuu=<|;YYX+50aCqDv6#d z1~Y{n{~9hr3ocEF>7Lgb?%t|NTVcT$Cev4B$xsvaSt)c5KaQHDA%5`S!Em9r0k1@- z7~69ecefkYE42pQKKM&82Ui|U?@weB`VXe?%ZhbC|ZlSVQNsf&r=``A&;_Kx; z+{`(7D(%JD1I_5xc+EQWDKwLu?^-gCfnHQx+|ocEF7bIPs%JXvakbo5CSAnV*4Cam zbUhuDL3$rQd|3KkCrOhR7unp`r(KUeEAai@-ObI-tMtTml6{maruWRX?^}Fme&_w` z!uj(dRdRSvOdaF3z4_hpET;CsiT6f7wS*C%J3mkapse9UM3OUJ(3Er?k5cxqMk3He z!^hg+W2pHQ4wgg-2na}Hp&vaFjT;>ug;rVn?%n4S1A=^Bv(x2{ZH48`6mt$0k0fK@ zG-_^+;XUW7MWS$W==Cf)KR>^zsYwPS)RSKsbhO{#zb&F6dy#QjJ5xe6_Au)ch2mj| z(nV2f@7-Zt#SSGeFRuV;*SAL459MKyH< zgWOij^L+-q1tV;q>`(yK`Lu4lm(mtf2?3`a#p zZFPz9Mh*=R>t@UOg+>*>Zl#Mz(x87unueMq6I?6Me8QvU7sgZJSrQ$kAsJ`f)7>G)8yq*Z(8V15RLof)CX$TLO1=AZt6BmR z4@peh_c|W}GUPME*Hp_3rlzLx@$oyWlg5jjuoj!JCp^>wmVxULgY)?JsNUyfA42b%DcP7OA=^RTON%6&WeD7O_zqR>CJjybjhfe zxA)dh&W}%}^Z7Zc^TifFzx)j zS>i-5;)zQ32P3NsK$DESjB;(u%xCDYX-WisRei(b@*d%#{(At}F?&;Hu_QEB_!-PIF z(8Bx?QdfP5B@AejoshulSCj8Ha(#!KR;&0#xcv@TY{N+x-%&-5GC9u z_@87e1_vGPuEWvvT^lTBnnAE8B_){z&-J9(3|UPt*w|kr4^B>-S z{78dA?Qj1sB5#62`tnAdQHe!^jPua5;UeAGFsME{0y1)Poom++nlHzKrLDvyH`dmg z^B=I9moQif-5IYD7PPmqVO!yiBuY(fHs$l%JLdeY+^au+ zgdaBd!e*!X+H+pIWIfuNo3KuzDeN-sa6bPUOuu!ucFv3goVd#&>Q^PaSH?{x_V@QY z+uK?Cg$OQSP!;je^GvMHBkbeS0MIED$AsBfH1}=9(TgsADbLBsh@mb$UA<%!^xWP3 z-{s3oOYS{2=1*P`$mwB2Ub}vOCr(UfEu7M_8!sa01Pz+3H%BK^f{d0?lMjZ=3x1^V z#!O{On8-ONxl2F9itiu%fdj3ow7FnXd+jl26_-<&Qss;1*I&fs_kO>{M1{XyUazH# zm&m+9p{SY4Pee-kdi?sh5EPd7Yjxl3shb25tt;A_c<3p&#bV{?IE$C@Y=$ZLyha6R zsAZ4XnAF}UmyOGBGD;?lmcrA~)6+YB5DCQa5HC)Sygyp``lh$9j|{)>Xet78U|K0{ z)fhT`4wL5a9!1JmQ%+?so-cORB|=LX$0sY~EO`toAWG}K>v24QVvJUrE(&R|Pfxc+ z0`iK&lT*Rs?`#AG1*O$Rxm{C>y=V>Jq%<+#pCL|SaFZWO@~sojxYyK#rE4eyl?r*M z4Nm{#(NU91PC7VkFvZwCXwgO5nQ_csZdU~SkvN<(HQQ|=@pMi^0Lqo%zmG8pqkA!@AdJVOP3Aw^%ZS)eG&b2EEhrjQ0 z{P;AQ;X2=rC3*2Mx1?k>d`3x0305Zf_z=2nZUxj9le~XaXGMh&-!P%*M>tG*_*WI@ z8*4s$QsO1-h7tEvyGtinn2&z=PZ6hn=X@@;_U=r9 z4K~Wzd#d??b=yPhD5YMQI%jcl(Q7+9w3Sr!^gN=RQc|PJr;Kr0fohh~OkZC=L()x9 zf%&ZF<42DM(o$0&R-XBWl-Lh(M&iWBdRtUjJt(%hN@`7a6^#-DCg`&K_02z~A?7ND#SQ7adI8`-$#5z? zntb+pNSMNh6ZP2t!c5V{QO@CYa+a2s^=m?6Q`^Byqr&{H6%odl3mNHl8tUtXw%8-j z8`2CB;*;tFo2YSYe;XxSNri#IKPoCgL_~zZpu~oq_BQ6Ozc5P4@!=qkVK9%=9z6k+ zr&=d|aG4-(h>%G!C@vt1LDH3bJCIIa;E=?C-Sd#TDFHg4(A_HpiRU%GH;)fiihS*O z)^d@AK-IS!H(eH?Wl^DC5~%*_MaTs9g-GPcNI;$E9I>ZrvXYlu23PTl1j1A!|E#^8 zUAKp2vnDy3qeuPhdUnLw>FqeXM{cV$18Erb0S{T>PHiUIrnn<|mdxB_q+r#R|L_4eDnk4$?Y0Ix~0fh7N|8VwE~?PkasL z7#}RZ`Evc7cIN4iy}N&KPfLrmNJ@p7h&^TZPP*RPVZzM{I9aP>uhd|)Ery{A^w+KC zW9WrkO=Txc4lyp1hWaE7)gtD$UYyZOrnW6}^6q@== z&z8TRX}EFwVTiNg1P}&P?TCs>LFPVReL8?b0F6Dwn$9C2S$IY4NeymoZ9Uq{W%PCd zxkaO6ZS^MnL7AbtY8LA9&HCLx-`r%OE5YQ2MQjY%(J|G#c(XB({`~n|Lw;T}N!N+` zu^Nxr$)E%6l1$&@!#%*mpi?L+D(3gSTotvmx5qzs4nzuaq!{<5ORCPFzAnGH{pD#^ zmSt1W%aNA`RwvOt@|w;Z3gXvGOq7m}P!bXG(lRnVihi)IhGiC}$=9^AP(aiHFjd1C z@&2U`!_=`aqkx~A9Ll=HvZ+zOve@an@4=rtw{AVx9~8MY!abhLO)UWJMD;u`HSX_& zKmc41$r#{Sr6nbI4py7ozP@(0uy|@>_s-mVd!)obqvIC-pPb@x81F*g)8+g&j*kx3 zLy5@9Qi7dYQw;z~3frg{8d5z62I_J5?)Jt8oO-6`&d$yNa+oDtMnmyQ%IF$n`^SSk zJw0gz%)*a8WXT!_xj%Qh2=E*Bpz75t)%@`Iz1>|>COH$sPtJBLH88xS@H!Ppxldbt zHq1%^iORrI5$(dk)uxl1pnZUDVqgfcw#l}O932GW2#jZURSDN|ZU^3)Yh5?+nNp)E zxysC|SIV1?TYD%uwLp=owuq5x`P6l(E?`Fx`H5Zj;Vd)_>!XDQr+l8!2-m2W?(J!5 zbnBc~JXk(_3=0brmNWw)$VE&><^mQ@aARZR+b-A93Y?uLB_*X%6)(ks{xeAr z&Cd(bpkWdYHK*WDsPcACHotF$>xDyGczIqe_Z6UYq(8tFm#0=#W7yEPzCd`>_#1|saHn~ zHJvcDrZ^>2enugyGi6dtC@o~r@t)&$Hxp1{O~0vToF6!4p-#zSbvUE9x)WJzOj}03 zzc9Z1+A62U9e~IB`nsQ=pUp{zT9-DdjI@0ZmBsBo(X;L6?$vqy)Uoh(i70(j)!&`X zshz={5-2qe$OX;a>Z;vu_&vCi9F1>x9cf)kJ4xmNT@)CNql1HuVe9Yn!XcfdrToGq z=#xU7AcQrJj8J8G9+{3J^C*uzaYxyjZS-vUBW^iVz z)=1$U73d-4NDl?1+xE1i**3*_Q4AzZ1SdV{NNtDIJM*4HAw)6UQ=U^TN;tDT4nlOF z(I^(yJhI-C&T+&S+EeK04F_v5%HtlKZBN2Z_qZ;-k3ll`meR7b1$#mrBrC4Ja_F;r zG7z6{n*+S0&6`-j6V^dZ=_pfhSoEyijk(DHHa51#{Y5^$gTTM^&8^^(8z`I$9K;dd zU(Tmvn^{kYmC$2Jg3f}F9?LJb!Ih=cBEg$g=<@E%+=ZB7=5kTRR*`KNs%vOHB3MCb4;cB?Nb(Ns4g*8l?@nl)3}Q|pT(~_^#S(YE*86RuzLS}LmXqnR z?TWwA7${Ag;fUu;u9YE16ah!xIs!PZ$(UoacP(`FjU!~u@77nE{Jcx9;{848V|Nq z?BL)aBA}BK$Ojg!UxctqruyfN3GsWoc!%wfEpUK^JldUSl2!-u!fNun@XmfgP$;18 zJgrM{4ljTS$Hc_sJI<+_9jCge?QT5y?Aqgd%U|4 z+Ae#xd7R$5G4xb0OFbZ6_|q0iak4v0QBa1RSO!rwi4RMfae7Mbo<#HJCTOtp&VBqk zWnf^>w4gkhPrCpT8}wD!=)SG;ibvNO zC+5cKAM0vgI{nm}JnXc?#fPW*r>XT{73+SP5Ho8=c6Qlp#_6JR7)6C5jnlcGqX3hun|$khCF~-MAQDkENU1eH4@2tG7v5R z{ZYoIJ*v2v+we=N>Fna-;{T-UM6J$!^iiC1aEUi18KLN8n@0PFF52t{+{U7zSX~wE*kD?SkjE<_2shn<^tC1J>8Q zwufYZXUT|(TR}K^5Oj`^&Q2F(HT(SXayLNU`YM40;lB_a8SZOSN*8rX(#{`rl?_xw z*RZuf>HhH1x&k`N#~j7-G5PIl(J8$&>8P`SeKiDL3>Aa-Gb4)>v~08hf%(IS50qRw zR#*DFyRWcwUbLaX9v9FUosYOtcdxd#HZQl9nREwQI1LQktLltmHYhd*1S?GZ3^l5^ zE@MNLwrT|%c|U&GK_`%&YrU1WlBUT%ypm_35M;o0D%_4#@nS}7eU1)cw#9XQ{8$EE zo32!Qn9vKco*i0v&S`MGAC&WojG<%-j0q(x2f!mo&`_Kt<*^}K7alkg*R{5*gQ$kI zu@c0H={^RYV0bnr8x@k?4l9VDn<43*YtBkc94JQT11Y!0zVcbU`FFSoG{s$yiHSKC z(h8OIb#&rQ?7UTQG%Fp~k6xYS)F%|+p!qXdph;T*V*oTju)XBv_J;!}wzIq}Y&!%nTPURGuk5z%+ha(AzY5bNpbY4s-f6_J{poIKx` zY5C5Z$oWA*+Ip_AfWXV(ljBjN%_w~n6O&AdI~4@U{n_%dLX>=V4h}s>>{tLikw>`} zfaPjxq?YagB+Cihh>j3@#C4tKR4y;&wn19U%>4fSdueI>`E@=?NlD?$ExB%PZV4RC z$=$uZFHB!KbhADSjSy32m5}({($ez%JL5OD&USsMI2oJ%Q8i8;2+_r(VZp43^rO;OI4wBGGOItf7fKn@=_@Oqqj{;um7Y-zEspbF5$Qa?e{+6x) zfk2mRqn%X>#!Z86@gh?24@X8k1$);p7f3nSc>93CJ-d*j1DZ<@tA*9LhZV7wilK~k zoW2?YswYZ47#@RdhB zzHT4PtjXY$BSu7uxGwQ5bW$L4&A)FjsuO^g`I<{WVs^Dg^Td+pM2YK3=_I>C)|peY zU?qi4RmDE}k!Zw&E3GeX`W;y|APIh+6b;r``Uekus*xJ>Dn$E*y|3G-=fqZ_uBElY zd@1*z+jiUKK+YnXyiao5us`7mP=$lc!H2BGYg>E042s8FYwtIW%Y{7lkNSRpaf9at zj#`!0lM4-evMJcIM6V>0{sXk|sBSx~086X&NzN^-Rm4E&Em66l;I5BZ*c6N4UW#W~it{*Zan_>CR$?*{= z78|$iUIN>)kMMWhI#?~YtoQX>S?p)fJ(iW3Tlt!=$W-fl@-tF5IQVEktki$syEBfS zQO0}W>zm&jbG-<|p3s>P<6JPM{?g3d=}2azr0e0voMwUR+44^?Xs?%m_|bbABT?Ph zpO};+40QR_IKC*g1`3GAi_flLQh~`De6TE8;L7NA1c$>J`WJD1p#99o(ZS?NC%eIv z0Ly3N*n|XT#h^nVL@RW;A&Vewr*!NQXQCKHPj>cX%jv}zw{0ab;IO?SV~_|uIobg) z1NtNtv;Cc|U)T;dE-tm>cY2TKzsR_JeO&_XSuE}431IUX;zX?&tUz4X*Geb0Sw|atGZtvD4_)AgZK-Qb}!y;jzCym zU>zoW{BU4EudQ__G%TzmGI6FUmPP>i4+C$vz`L!JEw{He-3C*&_0~+w1q}EzbRu?y z^C%l*EP|HkHdZyz1@Wl!)2C0py(F8Wh6O;_iYF1iFk$4J+mi|9yQV`!LmQ9xZ`)Cu zjWmca=eb-IwrL-)_3HRpogwQ=kJZU9#x?G|bFzMG;)wS0$>#ocrg78B@vLsb7p7YI z{kl!vY~CiZ<|v~#x32s3-UBcX9Xomh=!tQe1wHW6pd){e7qNA6?TSpz&}>yuD4WoT zlyw#`#x(^Sf{tVa7na6exlJ}=P}>6`d5*yCOcZ%}dls06l>vZBvAqSumD;TR0k~(P z_m)h?EiRi>T#-OBGG5h!mL7QjK3J@1aiA{-gyz;;?N%{pA_1d6^k%P}@`9QHE;=|m za;=nT`@}NEl!eX%M;$3X8OoLqXxyD4q4M498JKGurKY2EGWo)P=_YAwTU*i-Y~aY1 z1zX$w-MNE9u9v3wm(oq%EgYERJZA3{yfz-VeuCiBijkX_^!PN? zu+vVQ)D_GqBXDbEsc$mt;CEQ6w1=?cWS)%k9gVDW@ehWv`Td8iMipxY?#Su0EbrId z^ZAFnogQ&CKEa8A0-r`CL`Tz0xTKL*0L1VM2vAc|u{w_DQoD7F7gMpgU z^xb@zDF)SSK)@3L%7fo{mFm%=+2g13tjB+_4b_yxs}liRhvRPue(SFYDDLJ@E^c+{ z9v?K818DL6G+j_OLbmqR%fllb9D9+8{(cI+TtxXM=ohnp*rcWDDcH*{3tqbES)<$K z(V-vrD9yaw>nf1ZPU>)%7}Zn z{R^g6C}}pHI1H9`3Ve-KEnBW{ZIu0X@?uOW*2fmV?%~I_!r;gd52vrhnn{v^0_(;Mp=WCy1X~SY0||GdW0Ns*4Kj$7 zoh-gjOW|mt+uu;PxOU@Y)w9d3$#16hd)-dZ-pU%LDJCUOR zTk@2o;`dozx3+4l7?yjnzm0`L@_uyx)yH2 z(xTeN(DuzIMHcCuLTSj*$UpD+@Ewk`*bxE=!Jl zPqgpL&(CEdhjp&_bh+t}t*7Qld9rj#)HUx%8u#?xtAHI>D&jixK2iKWu}5l2zI(aJ zmI~u6Gat>LB};46(%GMum zy6&U;>170-U#Dfpd$g;>iLVojVu`-{LwEgI(qSE9o~$?E7m$u!C4lrFB$kt%3%jwGwyub zwAR=^X=!Qj{=M?I{|L#*m>u`%yc~Zv_+m2Xo39kt@kk$+ZqDSvFWRQ-&iy%Z4K@CE zC-ScLGs!DYzn%U}p*siSVkOad<9!BETdFl~>y@a?3*&7zA8*aM8x?3!@42}Fa};&> zKv(-7`u{%2Nrr#rq)MO{`IZ$S?-;5|{k*AuxaazzLOgy#1^^qkPQD`vrE4Fj0fMN; z_cd2Rxj8sEk)GB*FZ>E~(@{0oX@g^?=J>8Yp%_++OUJs9GhHL1D0w;AVU>Z>-1(l< zu>Hs+yoBQT+rXH>pTm>r)SC|sx&*JO82R0ozUgw|-Tr{j&*O|r;fC0L<6;{baVHDk zrM(jp`)7lNBqy4s4trhC#lBWp;~jq>Dh)Cs!tBNcDmFI?oF6A?nK5) z1~I*6TXy&}Cz`J|`QgLi(We(r8D(`2cCEzaYCA3(yF_rTe16G59334Eeku*7=CcvG zW6c62L!4U3a_j13nY?O=Zi>?7t=V1K17E1d-DE4s7T4>0^O?b1CEPd_ZrixFkw2ea z7%#eZSIrNi$%%>0-n!7AieGd-oH|dVTEQ@?Xa)ZO>fLH+5(Ic}QhRiM!$WVJ*OnmI2rrA)D_RdEeX|4$N<2oaS-a_czA1xBO|-MsG^@ z-7mV??by@IUae zx^3Kr<$3OPZ0K#qn^hS zUVwC0I1}}``NvgaaQBY7Y{ka_U2aSeSsqB-I5?@U8 zPs!Z4FGR-&YZDF3LqkEe!6z$kZeK3lefmf_2{%S?OWywhq!51m{3!`XzTkM!{r06} zZ$k^;J^tO@-pDWWrKYd`QdO#l+KS@Tuh{bGb%jron~MrFn~& zImubzmEreyeIdriI9(DQa7k+-x;U_n?*^ml*-jrVDVtNOkNQ_>V3NSudw=T}XrF0p$)If=-5CT|v@)X#2Z8pmMWQFtMIDnrR1&`6VK|SVu1?U-zoeNO9vR6;9R@sB zD_sP*=ueRCAWZga>{XF|(Ib0lOwiG`F&Z3{q~$;tj&_k%h^H*ghXtTTDyEjqomcz|%cI!)777W^rj#yfVph!bN z=0gs6!O=9YBO@YMo54-F_h-qpjm8f`B!MU2mw)z)Vzz7qF)CEkP1sWn>>JNRu?#ss zPd&Xv?*2^4%PcHs@bMDz^KI4D2|KI6Y60mlACY7LP8jr@m!_}Inc9ykw}=fTX#sC$ ziatxHdb(lV_hMKv`UVEzReFQ_k_?7B12gmGuX9UWJUk_kcHw66d~WnI<|y`_cwth! z3bG+^Proz4nF2rJDlHM|9TrucI|GubyqjuKETZot$%J8Pk(5~!dAue ztq_qy1WJ(Fkkz6sj#2Zio^vWH9hiShLi~$rud-TDSjfrAiENxpi7NKBGHe;e#);rt zBL@$3&71y-MI`%pQ6i`b;&>sPipoj4Lp~fe5!|@^t=cW6hysCLZy9A%RQe`Th%h}c zB~?*T4MCvjZ}Y?JoGx;4_>j~4N0+9jr!_jPK=L#w)I#%qmWG59EZ_I<-y!1f^P?M4 zkfISIg8^wOlH@DMHPA2qrdvUDgFI$pVj}222YY+d^w`%I5Y*4$GlA#NP@)S!=~h)y z;imrWz5G>NOpHoCJ}%DN+xv&ww-lkfNPPJ3+&NIlL85(x2H)vR*>^y5D(M;zWia5Fg*zv5+lquA;8GofJ@eOXRSAHA`G@7!Re^>$Z?GI>skmJu--MgCK&~X3Wy|?;B z7xHx2e?g4cWe^+TyeJp&=R-@&Gz4V8_vpsL2ak-5Km;uMGRtWJ1qRkTJ$aP_MgZJ& z!G`3$gc~lSO-_=bztB)IkVGvTDS4Jwhz9O{8kR44sox*@YY=!I*oTE9(NV{(ZwQe-;)f2(%_?~PnV{qU}r-b7!?9*n#D4tJg`rm z&^9Tl(TZST=H>F-~39tH7Sy@>(t5zoevq9iO3VS~uBgJoxe5^i=7Sg8>rlS%e zIvV>4o(9_7{@xz6lnWT}Sv$m^Lr47{2o06`HzmTn!8&H5iG8j60dwW@+$FQ^8E{>D{pG?!Cf6K{+-6(|Sdf~!_WU8J>8hg`5*yzE0 zwb%`q_2+eVO^+X-ML1UoN^I*=m4j<+n)zXV+pY}3Mmf>YlP4r-dS_?@q( zMpp$cMC^@YxG-SXJ^Y~;$}M-%{xx^+MwXmk)u}c2XLf!bwozhGP;o+BShx~0xZEt5 z2vKyP0}zrtfKc+O^*N_sS%B~a&*lO;{3N3{4$5W! z;6OJ`$a-nC5{ti?_wMd*cmYZRdGCcp2V@Jp76jJEp>j^s_S)b%#Z#Fhl|We=B0Rai z$O(xiMY!w{5O4sJOLQuvt?n)iC?zA%h0fk!0m3D(@ppGg<{-lu5^@GQmde~Uk3xi1 zS$^_|h3|FMe}#hHw#w6MAK{5%VYrXrK$clHO_W|3?*96_x&0Du_+1Sju0y+spckBnJwuxbP znDet!QntaPYKo4Ep+Hf`2^bw8Tr5O1oJ>J8o#fSJKK=Ge)gZCA_FC-zCrZD1C?lha zYplc3oygcUR6F1S2Ht|x16=^|(l^e-ox{TbUD9WU8$rHbnVMp0Bu>@Hmcbk!ZuSFQ zy4<*{TtbPs|5QH%1vy?|W-=Z#?Eo6;?*5hlJ4fthQ;@uZ!p+hvmvjpUL2iOsD`VH4 z2>mabh7Frwh#V#iDAO;9+4U!s0`(8V9`SJa zTSD;*CwVoQuN9tN-h(pEk@IU6gO}3R_=$p>PsHTp68>$I(1#&HuGj2T!=D4It*#zr z($dxC2+>#Qns9}$Jx)VR-y_NS6cZHFr3{@~e4wQJ!mS}t&7*$B@75)0vGc%vx#3|5 zf+Y{814HYkPl=3FdoYPriGaTna8rRZ2a5xgIb8oKf{YsSdcK%U;BG~J{w%a<73%ll zTgrq)Z~;Ln)+1zeqNFLQX~EDR({a{f*YbI8TrP;~3{V)xz!jy!K?p7G|5@gn7-V5>J8y>7q`iD| z3;5f<4T75FKYt1~$O-Oz!NEo-!qr4+U_D5C%25Wamw1`_0*QEm!@OJG_1 z`1q7czy-2F^^S!NbR=Sz`VZstO{33z_;wGq%Za9Ov@&9nTPY%>h-Af5C=X%^f^^qQ{XX%{_2h#6D(9t^ywb&kyAX<(4X`)Es!U{RJAr1sqChY8Yl-c>P$_Ski9|k=q^% zTU*{}$Y-_#eO0YhMi&i&nV2|6_zOJy)4-}28)mJ0wxtC(HquxOsOvr0>oilid9iln zt74~%jH(TRhR3RsE;^@ciD|r zSgRkUp2H$2POU9fdgGTcBnUlAInAP?__-S({VI8v5EsH!n!JGitDmCqUC+`C!NF%Z zLcHQW&GVgdEn{vGOjT7C_^pAE3II==ks?+G<37pKY|gdcK%sOoOBcr<1As@hfc{*>lJ)dLqkK*CB1jotOsxAb&F}} z=&TGEC2+%SK;tYF)R^)#+;B6ohGuiwvauaEc1w8{z5v%U+ayKKClwB5qH^y4p+Dxc zvM`A3f-=o|`gHvJ_rcH#rC9$GSPv^d%0%bzyw4L8jllh|H=5;gVKxHORdIwVk^kCA z2v+uzGIq8_g*+lWycj&qo|NKuH8ps6cu`Z}PI=tB_Xld)+q>PC?=uIRh`z>f@fAt8 ziFPsk`+AE;6+w@oM&D2Nme@Nu&@4vH#c8om1LDm%`MeEH-Q<}esnGR(z(G=cY-}Vw zw~*-fv;U3W;Qmz9-X&a^eYB^u?+``Aizj!({Unq~9QsR3v5oy-wt0H3@PFj~MOi3_ zOuqA&eOLuxEJ=XXBT-i4Y{~EfbZQ{i)-3SFm#nuFrMej}Js5GuGYNUt3g{fTZ=(1j zcPPaWG+cGszZ%2;6&(H_{`&v@^8X~q{Es{Jzf1MMOZ8vjp?_q%|E-h%zm)m^vL@J> zC)wFSfVe5`&M{q-Q|Sq_Z-(~B>pNx+4`eAq9eo zdye(=LJxHvBn-LP1x>>VH2k_x8B0gJv)v^Cp-E&ZSCF7-^h{1pwzai&b#Xx^)mh*< zjkg?HquzRWm8lXp`mzn72=<#5yJrcyJ2CG+!MJn(O?d`r&8EC zfX_rFqL7sV>UWw>>dpoTXpP^V0!eBh;~+X!c!QzlB@i&l^#qtLmIJ)vN zK>QXlmZ+`fu4Qi*L#KoU*rl5c^D<6kMg?xE#Ky*6mF1Mj!NCCx<$BJ>J{>jx_P<{w zTj738b9Z0g^~Hz3;>*h~bBZmBX{f6&3>Wp^r*`p$3k$H&0A8$*lhf0kGf)}k(RW=Q z0Qk4NDxuA8Qe}4y=Ak=Fa`54L7of{?`1pCHI{C1DW8c0N6%<5Q<>WA@c6N1v$Yf9| zWZOxajsi{i=4&SeafUg)Q6>@`E(+Lg6rU5d!{&oc@lEjHRC5dWXD(?X`;p3Y&08Ao69u$*aa6+82p1B}a&(m8u1(?zYg-6N>ew|9XN z*3{IPh~QF?GqKIJi2OT0`5UJGSJwSsYVGpkrxRv02j;1?(Q^v;SBuVEQ`J!^Q??5I F{{R`?AIty% literal 12001 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 F@;^pFu@?XU