From de9f7b747873e82c1b77bb3322a73a7abf14ed1e Mon Sep 17 00:00:00 2001 From: KazushiM <85604869+KazushiMe@users.noreply.github.com> Date: Tue, 31 Aug 2021 23:24:17 +0800 Subject: [PATCH] - Sys-clk Fix: "Do not override" in overlay now works as intended - Sys-clk Fix: Now you can completely disable ReverseNX profile syncing by removing "ReverseNX_sync.flag" --- README.md | 12 ++--- .../contents/00FF0000636C6BFF/exefs.nsp | Bin 167756 -> 168735 bytes SdOut/config/sys-clk/ReverseNX_sync.flag | 0 .../sysmodule/src/clock_manager.cpp | 4 +- Source/sys-clk-OC/sysmodule/src/config.cpp | 1 + .../sys-clk-OC/sysmodule/src/file_utils.cpp | 51 ++++++++++++------ Source/sys-clk-OC/sysmodule/src/file_utils.h | 5 +- 7 files changed, 48 insertions(+), 25 deletions(-) create mode 100644 SdOut/config/sys-clk/ReverseNX_sync.flag diff --git a/README.md b/README.md index fb920700..aeca6394 100644 --- a/README.md +++ b/README.md @@ -1,8 +1,6 @@ # Switch OC Suite -Overclocking suite for Switch **(Mariko Only)** running on Atmosphere CFW. - -Support latest Horizon OS (12.1.0) and Atmosphere (0.20.0). +Overclocking suite for Switch **(Mariko Only)** running on Atmosphere CFW. Support Horizon OS 12.1.0. @@ -38,7 +36,7 @@ Support latest Horizon OS (12.1.0) and Atmosphere (0.20.0). - Choose RAM clock with care, or your eMMC filesystem will be **corrupted**. - Once RAM overvolting is available on Mariko, we may gain more stability and reach higher clock. - Mariko variants have much lower power consumption compared to Erista, therefore **GPU clock capping is lifted for Mariko**. - - For more info, see README.md in sys-clk-OC. + - For more info, see [README.md](https://github.com/KazushiMe/Switch-OC-Suite/tree/master/Source/sys-clk-OC) in sys-clk-OC. - **Auto-Boost CPU for faster game loading** - When a game launches or is in loading screen, sys-clk will boost CPU to 1963.5 MHz (w/o charger) and 2295.0 MHz (with charger) for 20 seconds or until the loading screen ends. - Some games don't utilize `SetCpuBoostMode` at all, e.g. Overcooked 2, so Auto-Boost will be unavailable to these games. @@ -46,8 +44,8 @@ Support latest Horizon OS (12.1.0) and Atmosphere (0.20.0). - **Fan Control Optimization** at high load - Higher tolerable temperature and smoother fan curve. Set `holdable_tskin` to 56˚C. Previously it's set to 48˚C, so by default the fan would go crazy (80~100%) easily with a slight degree of OC. - **Modded sys-clk and ReverseNX**(-Tools and -RT), **no need to change clocks manually** after toggling modes in ReverseNX - - Add `/config/sys-clk/downclock_dock.flag` to use handheld(lower GPU) clocks in Docked mode when Handheld mode is set in ReverseNX. - - To **disable this feature**, simply use original version of ReverseNX rather than the one in the repo. + - Add `/config/sys-clk/downclock_dock.flag` to use handheld clocks in Docked mode when Handheld mode is set in ReverseNX. + - To **disable this feature**, use original version of ReverseNX and delete `/config/sys-clk/ReverseNX_sync.flag`. - Disable background services, less heat and power consumption in standby mode - **Remove** the "Disable Background service" part in `/atmosphere/config/system_settings.ini` if you **use Nintendo Online services**. - Profile-aware clock override for all games @@ -98,7 +96,7 @@ Support latest Horizon OS (12.1.0) and Atmosphere (0.20.0). 1. Make sure you are running targeted HOS (12.1.0), and have `prod.keys` *with latest master key (0b)* dumped by [Lockpick_RCM](https://github.com/shchmue/Lockpick_RCM). 2. Loader patches for Atmosphere: Grab from the web and apply. I won't provide them here. (Or build AMS with `ValidateAcidSignature()` stubbed.) 3. Place all the files in `SdOut` into SD card. - **See [Details](#details) sections for more info.** + **See [Details](#details) section for more info.** - Be careful of `/atmosphere/config/system_settings.ini`, **you may want to edit it manually.** - Remove all the files in previous OC Suite version before updating to avoid conflicts. 4. Dump your pcv module. diff --git a/SdOut/atmosphere/contents/00FF0000636C6BFF/exefs.nsp b/SdOut/atmosphere/contents/00FF0000636C6BFF/exefs.nsp index fc4df389a4329a450591e0edf4d67a11ab72e0cd..75d8a80960ed100c4cdf33b51aea80804ae79551 100644 GIT binary patch delta 53298 zcmYhj3s_Xu+Bp8Mwf9^Z7={_{C^N%FL==!gK~0B?N`k3?M&>yVH!q0_f_IcbsVuD+ z7q$JVC7PA+Sxuq`=~$srS$T@k%ub#fFLf-f!vHFy==|SB=lh;N&$DOmz3%IM-}T-% z=U!7EcvIb&M71xyH~x;0f5S_G0D!-n{|c}O-}uvwrzsYS5Hbb8mL|aH1>2@}-1vLq z`dqrAO_#IdZ?_g6z-IsV=if`J#;DyF&wsrA z=%^pGhEs2D+3@%Wek~R1eoIp4%CoOr>J0gC>z+?W&I>>JW>Wp34LKtY9Liaw-hU#t zviq0fsk36jifexolVum)AF(X?%k?Wqe{<{$rj^Bz4wfpLRM#69DtMYbUjKT9wWD4j zI}fEplS>F~y&{CQUKPSyKgIWE0eZpsSjR!Un+!8OBLNzJ6f}-~0EQ!2rVP#UL=tcq zA@btvIoV0Je+U4%BG|SoKsjF+zW7e_9(y7wM2qDCB0SjqQOo^mNjpHsu?V?;U3nHX z2^5?ZFM?O;o(xast_)A96&$APRu7KoG0uc03q%xIpyaUClexocfq)tdgzK>|*8&BX zvCzH@0ybDcC%3?W{==3B0yz48z|${4D^PpS6rARYpl{{x8)re&QSb)4@Vzc`ZidHn z$?CZ~gExRyUf3^?)|uFWKd&q-1R;1-Aw)D6!p?51#}tv_xmpPN@r5w6s1Taw5Vs0A zq=-y71(-P&j;1F zP7}dhPoVH0Y?U&o&hF=!ii7>02~9tFy}<)`ox$h+Yv8znjc-mzutr)v%@mIF&e!mr zbizSvdgKwPvQj84B>ByLjs#r-m~D^%Zs^1&-{BCS<4}mcBVazC>7*s63vgfL66sg> zVueWr#~*lSa+QDBJJ{osG?-y%Z7VQRSugF2E+8#!h$EJy3aQI4hbEgJcsc=&8)~7& zrUuVkqB}E}oUOyhx&ZLp$Dw*@7spsVfYW3Z9Y+PS3*#cW25xy51=U$pvo0| zAk2pE{XSMt5y+Zx%}9AEh)Y{ZWxA0-DhM8*POHa`6E>4+h&p?SL-qtT84<*`lB8@< zHUdcl(~*p`FeEc!&t^oh$)4okEx#`UgTJ8hhX#U_yqd|?smV`ffI$PAO3>QCq_^3? zJUt_h#u9Y}1Y1vm%qUvoW_UJ01K$ECD^{sajEFQf0)$5lK?C1IFOs=G$pjjC5zh!a zrGA9G!0xFZNm(~tBinev>y>Ka_10T9&Oz66q{T*#=D<*~SiPW=!~M5mL>^h|m&>n^>}>SAHl1ckcoy zydva40WVz~0dCC|geG5IJ%#k&*a+X{KL7KSzrroLgrL?O=I~7>>)FS?nWUV_{R-r3 zu7g?oBwOqk6?0DuO-H987jag6xTjSl$_eoFN1rPiAlVO(fUYPktk` zDT~TPcluw7_&GPUPGmmXiR1&8rQKZjtsgW+1Z2ZiewK`QW+K6Gvy&dBeLh#PDKx7c zUt$v*PEwZ-=>`!zJGJ`-Hz^K>!djdzI0Dw#!l1BQ>sB$O$I2m<(sV=OU7H%L4>=6=} z%Rf?x5-&5Vv-%bXaoC5)V@JqC}_ma>b>%x-4V6arNwYo703%f}2MKb_(7&c5e zxmE$X$!Fzm8W`UvK+{KRs6r6MpZ0jqkvrk+8(o~xri^Aox`}>yio3BY88qF-`VAVE z5fG*4#Ew%n)q-pT1jTLucO0t@h_18Yev5IxR@`HTKUl7M$ywQ*NUxWqyB>O_+un?H zK9f-og>f<{d|8WoB`BF(J`NGluny6%Mre@r2l2VAfl$bg)m_05|7`$t)J=tS+XTE2 zQISUBTVytasxl>Voh|kr4rODVvU6_+(#%Bcl^~R);$y2{jo=<(^+i-6`s%PdAPNsq zxaqp)E#%ZW9TygXEkE*uD)PWvco=p!`#OH`g{E18DDyv9HnJpdL_h zTH>SeMMVO=3HQB)dATS}3x&QB6A)vEw*Gyeu*IJLrz8q(%^X^CKI?)IURwM9zS5!c z^QUow-8iiU+=!;@6Tx#9rNQ>CvVu3%fj-d+wo@Nkcg(j;Jb!(n)dL{zMB?n2k_QFt z*sjDy`$t;sI>%c$49D|(IAtyl$4Liid<7>?8>v;fRYskf9Pob$vXuGOtzoAmOmbPgE_HsLUlc?!|@QV_CBx0HVLtccYYi>Bsmm^ ze9U%t11Y)wz$-oH#f^x@@4S|m`6{s084WafR%F|0$^Gi-E$d>F{3hLgGIJN*%@N+I zajfz!qTg`9{(wt2BgX12bU+KZda{BT>%&e5KwU=(g17`hycTi30tYUlr@vA_(^byL zt~T^2X}`|s<1i`D>_xGmD~^SY3vhRjU`v0brxVCS=5J6`J=omA)d-s+Hn4eve60&b z-rZ86Q|9*n)SrV--@`5j@Pug5ob-qIcN-z)_>3xkNJ`bb0VsWjPD z4bE{z2#)8C-=K%tt-vHPP1cvrj6pf6y>z_ipE7^3UwiPjw~(XjCkj=7YY;=Mn^1*A zx(#gI;&1Q~%BU#Hk{@jTY>+hvMT*b++JJo=G|t$sFb;VOIkIeOYlq43UmkP6QS77k z07pCX4UQ!(%o1!iPi?00Q|43}#y{Bnfs0yDIdDUdjWS5> zLLpax`p>*54WLq)x)8e*Tfv0P!JfdT6?v22Go=QiYYb;vo6g zhu%1d{hFCVC;9GC8+tZC2D1CA8#1;m^wU_;D!NIe5~{eCi>xA^4|Rj|*b^P3sQ4t8 z%FhONvjt(X@f*`%jO}5zu%OfAc*9^6a!S?ER0P35K%6ThdAer>5|08tK9RMAnNv3e zoPsV9Qc=tymFZi*Ho$H~1AlA_I4c(`WJ^#*s>-2C!l0=7ByTrwcerJ_i;T+uZHg!s ziUXv&ODHgG(LWcy2692tDH8L=;NJ!XIST&;~5vMOLZ#g!#mJDz0^!_&zM zmKKp0KM=%W;zEk>hC>G+SgitXC*0a$M=C%yHI+jrs8b=ZcO(9qvM%162pzf6je_Cx zMq%&A*sV@zx$&@3FgNLz(Gn|e{z_Z7K_7mJnyqpy{+dl45lW7-q7gAB(=^qP+?;@JDIWGcRZc49Pg;e*X*L#AiI7DvmX;ND~%dxEHAukIX zE?bCtYZ;d9ec(NDe@vOy9l~3lz?Of-(zQdprGB_&HI_YrW$ZpL3pJpon~t3ev8dx7 zFACvBAy_mAi!OP*byyb6%kE;&Sy*;=(0c-nilM+{)aN3g>mrtCVfia}y(dC+;*rof z+;p;%g+U4{2^nc60sJ2N=RLyk-*>qnP}74Vy&J56zeuWG$&E{hqazhcN-ba* z#r$J}s3wHP#TXOI6&K*j*Esl<*TI3((Q|lxQ=HC{O&Ni1XijoGsZhp_KSa`PKDy79 z2DUzCWW>VpxVDGhRMdI8!IPiY4$#7urN0i)bM#jX6XBTeShNMb|DusC|_`r-LRv&+X27J*>UP3@~<#4AFH?|7` zwxd$pTK_0CH4=>zdKThj)i@c)$ND57m7p<_zNNC}jP&U;uq3|Rv#yt94Ib9 zlgmar1-C3dvpE?pukjASV9#HRN-WZ9Hch;z+5rmoL|pjDU*^J;*6TS*a@rjrw-JgG zq>S{X(qYd*J9{OrOZGbQfIV#S=&cIz1My9id+hq?=(?F$${DCH!ljmy4YbFY;&^== zSNQbt7sXn7fPIm&bM1%Fu`rqd?G(ocwHEBB^IPZTAYx%1!alH*I%+`|SPPMHwV*U# zORR+fRlA5t#;(;La$O>@buv!G4fHaZco?llNC|9Bu|r)%vK>a+?GUN7gDk%@#gT;t zcc{dBe}%o5aFaf;HQWvXtxa+oO+`EC_1Io#N8H50fZqTbjW>`1l|G->!kZSavU;|w zp`{)zXKEuBoYMxhS6=+iun)!(yABDb2(^$x;tpg!W6b0n8#gAOJjv?Elmz~mguta> zxrA6tLlQu4(b~ZV$IMb?2DctkcG39ewpj_gh-jXilgj=%c801ePG~^o7j4ba;**!uB5`<^qSyaZ(4=lGegNJ$sW$?5E^6qBZs+NeUE0A-UM+0c!`KsO6l&H4V)O+^zPGix-rZCK*O zn1KGYkQKX-9Co6aV?-Mqi;E}j41aIpVR0bi3i=mZLPYD3KwEbqbr6NU=OR<2WsdGj zMx}62sK-HF(t)t&E5$1G6XG(RCj&C|t?y)=)gm`}Un8>BX|WSNY(O2a*2=2oa9wc2 zjQO}l0>|xg>)Tg_V52GIwZ~|#28eLdeP}^$(Pm1Mk~yf zxqUrR;2DQ!x)=e^fp3DT4lqu2tjvR^BV@M^95>HJ0+oThPq@a3vw5n+ER@=NOknSs znZHc--dgOH=?ZroG*4?F=H+=I5SwW;fT7F)LCprxFE#+NLVl;waWK;g`X_k373&MJ z-fjT%oV+CBe#A=b`IR{5l`O*bo1U0fmN02bV7+~$qru<4xA?-8%xPTjCIhMzW}g&J z$KqoPzC;o8sfMTZl0ERj{M?4anQL9xiY$ie-XL^m)yk@aC~uRX@x+&jpPghq*HC zwVs34H~K)s#a?Hhjl!2`(cEmQHRx=1Lp|zfMsS?ZU8KCHJYJ6-xYcU5LwY`LsR`ei z-_a2be56P$Y!8xQDPuhcAuT{fste4ZiAe zkpQ?9w9$~zob?p9ivns94rvtNc=2U2?*^p*kW-_g(eR2*a1`*#@Oe))2gNN&|E3Pb ziU^|PQLJf3w=mLResLe9XB!4|pXGqTh7I|+kvI^a18|f_u&oW%)d(o%<3!#v!e=-{ zDjx!i>+*n{CE|W~rI|Pq_>5#f6q#L+{y&|t!$=)bykRsPzYgh#>Tr7>;`VAGD$=z9 zc4KuguYR}(3L>$=@d`PiaDwmDwkDk;!ym%S@LGmfr9T8!pgn6(E#@%!27L{E^7s{D z(Dc_3XgZG`Ew1`-K86NxT&OwMFAhqKUTwM%qp za9*wfEZGB~ZypjN+)3nP9$OgtNjVK26&c6F#UhJa7Rd^x>ZcVEB!A>$r(EKD!|EP- zy_+&s{xXuJaQoVbBh~(DKDs|z*5ktNmdG4wov-C{76KY03 zhlC?>vnm>9Hme-dqajbik|xk3kt&X&Kr0zik_+tYw6wYgg<>GQ#D?7CaUp`3To2Cy z$ySkbu%J`zD3_gsKUQL29+2QVQXk0!aSxbpk{Vg;uU4CxZ@)1U!9X;6H;@+YXXfl^ zo16@OmLPDQVLCtT$YS`$f3cBFBO1Gx1$tQ&juJBAFsP2AIoavskfAps8|UKfE?U9& z0?g2$i{b+0aPO22#0dHS1;W^SRzq;F4;j+-&q2Xm`@2`#>Gn!|_R;LJb@I61?t7(r zr#+uLwXW#v(GO3qi!q-bStKKK1v!X}N5&Rmw-t5>R46HW}f;7;&ubQkc^_=-QmmNyX9Cwjf} zq-K=$ht!>qG^4lswqE&2zZ~7bo(Ak^N2P){KZeaucY$GX7X%1hFc8XBL_XH%xWe_= z@GWdW@ST?xvBoT8-Jr^Z3q_~hksz$+J7}u3=a=Af1nf@4TT_xff00q$7uLwBOE6@5 zP=#njrrpa;nao8P=gh;nD!|SxT!9fUYpPrQ?y#Ev4uX5xi|lB=Bxk48ozpA<{1XFeMe5Q}`xJ94-5;279euIK709wuA8bC|09uQT_LELO zbOLD|Pvfz>i)3{%4YJXSwb*0>1X~?x;Ps$${EYRLGV{&*`=ilJ(VYU~COj?@i0Yj&|VhkHTkBqgL#}Z95r;Z0tH^>JR$T{09g^U{r za3gWg!P|f!wpM3mc=%rK-~m&9fH7v|pM&hhnVD2$WIZ#d(3}Y7pA#b2SVF{*5o|(E z0ZC!c=PX1Y8p{3~ISC@iAPaf4dist~gqC6FKt5WP$Ah;ST5bM#RPql)Lv^3`_-#ag zr*DR>d-AsfvVZ}ldSGLq2*=T0=>?eRFbw^4b{${w`A4UbUZ$TlL)AdBKR$!lQ+UW|5WV*;ivk`;`##`4khLYe!JND}i$1y&8m^(PZSr~x zZxL$qmHR9ERMl8tlR430ms>kJF_2!3&vjd&#UMv=WbfpSRmmHvPze*eYnUs~tmPKN zE+M14%{;LtbikMS&kl?5N{tjb_ORPITIlm3@4V2H@$At)TwFJsIy+vew3C7w{!%$R z!AIR`ppCwyRvh2W4$t06x>?d=)igrS-gs;*?G)IB$BdKnL~SqV!mr`a_QF}wAGUOn zv)s>^MLPS+a3GOH*>7}{m$s6Y;sEfBybKM>PO=U+)6Ej+#O8Fft0AI!)6j8IsgybF zS0_3U9{Eg@CJuy9rMy4rM~t`suPgjHv`~t7z0gxU`<>w>7r*#bAGaPK2?=Fv&WzA_ z+fb5ho`5X#=|WoiK}%GvwQY*hE$e2t=e$I-MfS|xu~Ev)a@AZ>Xbh?ck)*Ye7p>4zt|swZI?x@ON5Eenr%)JiI*5u;v^xM zRdS%@v5x9(>5iX6on+*AXB!qrHaZDeT$1i+^|(a&H78lMi>)X$k0wqc?19LqoJ7TY zhufVb19hXSQwd%To{F*Y zVx0#)g;+<7lO1ptH_m}NwP=LFjj1;uw(u&jPj(>nHiu=fRYjW>w(x8`l}^@Mw3aHz zvZYUy&+Mm`n>+KXDcxC&Do%<&+gqG8Z6GiMw_k&iA+H>gk)#UwU_2hh2OLC|7rAkK zj=bt_I6rz_`ziBTI0Cmcdf{5yw1_n?Jb*9OCqD?j6Iq@li!c3RM}BEs%bM*<7(Hwg zG5sP-aNs8w1byiRL0cOr%lH9tdrOtUSGQnMhT;ropmznfZ_($9X#JPF%t*v5|1vcu z=s*a)LmICL5yMN_63UknbW8RIw-HxlV|;yj;VAaiU&gBQ4`#xkD_b-)GUZ?6WiqQ6 z)W|0N_0^)YGlM-AEVhWcJB7XqrIJ|Wa*L=hIUcUDh_96TZ`*4c*n0lEKiin!3$ci? zwSg8f{8Nh<9EH6O_$%8!Y(cKr$QgqvT3*tRtQ5uO;>98ob|Y(AJVV^TAAVdsLPVy~ z$h?cUsl29uKcj5yS=+MY;f5uXbF||Y4&-Q$*h?l4Gm7egnsi;4MYucubj6E36c6Jf6^F4m7w>(VQM*#mG zY-WB-hWxjq+rJal{b``DvT~6SymX{bud?Ag>{H0!txIDA_0#=n)m@ykIc<(elkW(^ zF1emgjZIJ69NJM7>_>$EUSq&tU4dv?WGe@+h3SQ(8L z8!Gg@tZT)5Ty0oIoXi~Na7D106;sAtMVB4MKm%6*O2YG`ch1Js=0_ap-^eyB?!>2m zG=bPBxaL?phRNeZMVfA3$y2tI)f9FvjR*uDilkvBlEnaEz84$W`$n-Oi z8rZWdpHZyuI>Iei7O-kIxyx*;%<>C91mscdnN_^w@m0l&J_8cfZGnZY9#8jM*kh|r zSW&q;)3>!m4lSE7pll>gB|Eb^jhtooSDSpE;glYOBJild;wmR9B{YBw_%6#TM@ROy z9TE(x_@-M1)w^iNSeg$Bj(2V~XA533jPUm=v%`C#InE~AK(frDLzYMC?P%HA@VSvx zF@4n|KD(OLr~#N|j>BeFQuRZf#v<1ml2pOh0F70}UHG6S6Q`SQlyP?E5JiPJABwFXV`NxIxdrZIcaJ2iSyMC z`OMRoZBS^BBns8r_X3{w>la9$&n%oG^PuR+(y)_j&@f=3)#*aQ@_e?Sx+cFDY&^38 zU5OZtZAR*UP636^(g3xy^n3~m41!_msTj(?QlWm2ACCHQFZ3LI`)Gw~UdGa|`VQ`y zk|}fSAG+n&C!o79br>*_HOr%%mPhUA6+Z{tN1f{f+}~4Y;q!iv*OG!dRy`FR7ou5f z%|c~w^&w0l9Gu8}*GAB|R5oVqTupCQv(?8iNc{bN{Z&%TPHjk@*qw!SWiEvS&RIPa?7L^+`%JvzP)Z}|cb5!-XB#F; z-LS~hJ1>Cepp$gim$K-MkK#D1HcrLgw>Q2X?osm;OwtWJJsJh$khnbnzP6pgz1Dmp_HH@Wi-bQU1iDrqlf@_HgUx)E>q@ubWN#{8)&6gxHYSAHXKt$7||$SfS}>WKgy0 z_gJkxg*H?6o_*9LxuJFYG|YJs(MyYq%>?+;)Et%s?$m!^F*k&QcOk8BwR&FQhCd#+ zr2}4R7-jnUSUC^ObUwnY^^0)#uhwVMJ}tXaAEX)MFhRIOKsO00ezI+oM^>l`e@37` zdW7B&oePfZUT-hX=j5##U<`Y5+bExHT;u6SL69V}UEAi;b0Yh3+gR0N-cPO}K`e6n zMAf)!vOS~$yR?;Te?a^W0R~T8Gttja(}FTs)zd-h!hG)I*NA8DvfWRg4|E#k$I#c$ zwFh%F?XbyppXLZ`{WC`06nVC*PBr?7C>|E0n(1MYz4c5|$UOyz@HMny=HrHqXzyIb zJu;E?J@alhD%3y$XK08*pA&v&iSeO=JRpN?868F%jC?q4bPj1Pr(%&>r-*^t1f}P zxw9nlmPWilb;ZpADf-qOMe>E6=vvB;Ci&e6x5jKgX56*emtpRsgCi-+K)meDU2!C$ z?Vr06iS`yf>#Fk^9U@pAAqC)IVJ}XZV}q{SSSApA&kZDm1ZY4kbi3*_qwRuNCYS91 zH`z`c<1iTpFgkw_iSwr#o=e=1ruF+RKO<&1L%fbya*lO$vx6^2iYV?HS=WnpV>2#_ zdkUc}!&CnhM%~bT+lh+9v^sPM@J3}XrIJpz_oWCiC@MRMb-XkpRh|>Tk#Xl6K1vtT zwhOIW?w+7X-v=$wbe&6S92k)IkP>_T>)clKZLAfMwKTF98t0;A{bS>3LwEC`qI5vk zh6lqM>yE{<(#XOcTl7~KpAxE;V-nEfZlUUkJPrDM+KxK5lR!860c>(i9zZTyiYmty z*X%o?Y&xr@XhVF=ZklvLS9qUDTKaJb0|JeAZ3o90^e8SUA|aMNhQUDgH69vhNdk7K zXA3Q!Z&4F4y9#xM&udkFm=BjbbbNN5rL26u4pZ~8ramErbhB?On zI5&Vak}Q0D3|+;IqBunm*;A647}*O_r60rjolp?&c)VyyUn0})d7n7jzS#3IMWf)w zeI8j&nAoXe&+p$gj$Rr`<0&FqY=j2RR|1X1(V%uy?q!^R*(;UJ;E67s3lG%J8Ccvl z?bQP$D)CdVgx(3GrY{oF>x9lU2k-d``h~bUjb5f+Mh=)sFN;3#USRJ%1Y;@siK+op z#nHWH=k>oGSQXa$aVB~k&^BHE4L761ZgHTrzG zA7?&xGg=?(I3YXCR=@WhtqEW`$5tq}@FaZ9(PO8M*=gShHnnYx3XbdCk8|GHR@rug z(EfO~@I<=cn!KZJ?}?v@?t6Z)PhvNI|68Ymwl%gdA&A4fCzBMJ=uYs6v~6rh5D}D% zYFN(uGklvP97b4+TAmZEBiP>eqps0AC@F;hQeX&>8Tf)zz|Ccs8MA@1zqY!qle3_y^aDUM=0)KDxq>3(+<56ZhpGF8Dw(tOv5MU|J?x*(c8${zDxM?;o5iA5qA{7;sK9Lz|=T2 zYnNjbKQal!2Bgg72DbLnj1hfm+A3ySPnJFK9=D)G=i(M;ugZAntpRrN(x$L`iUv@$ z^61n@R;Zc*&+Kgg`Oe}yT_#rfeF7a2*=ygMv=edaLEP@$%*l=r7R|o;ejIVNJ^20$ zYOaXVHeuB4jYzhgj z4{u_B{nus1GTQnv=0vw;{&<>*llc}EuBzdOwpv#&rCBj;tFCRO^oUQ}A3v|bBe;f@ z{CkRw^W)&QL;rq?;+F=@@3%1JP$cFICZbj|?zifKnO@w{^{V_TDe-qwiy zFE(Ow>ADvQnjtrOY=?;F4(c~tV)2mg@5uFBewf3ES{$GuW9k&qD?i0CaRoGq_}(_~ z+iI#R=@%IZdOXozRA9K>c(5EM@LD*1=A!JK9sj&qbdI>dZ z=_NxSgp@ww@L-}tC~wd~NRzo63hD#EVc#z|m)&3H$J&sIaVWgMOp9htpW?x0=_yKD zQ_MlFO-kJ-P0Dn16QSOOYC{CjKY;p^_qgI@F6HSbr_(Ta2Gj_;5B!OgE0C%BJ~6%| z9+TA3x+=!l4%g?T|0j@0^+2i(X@B^=Qy`BJq5UD=sL$gUP*v<65XB@a&5)C)j9bMD zRJiagMGN}7Md%w8+##RgGO?&T1F!aOIVmC$HS%xl+o(fRjNnHzfrd0pm-;7gYN;zN?@DZSL_Ll)C+QF8kbgR*Z9SH(!Hq}GrUWhM_A=E;^x zYc(WEy#+|l1O${u*?vMpju7oxPAl9?huNd87M--(k9 zTwt8W_`alWEm?~@p5ae&eY;IyJ(hu%C105Inm-AS7*(up_7y_NZSM#!=5}KO;gW5O z2l;|a+k5pJ7pGrn{4#O-pD~Ife`E`2JRWxrD~3*yMn^{r@ke#>2Zd(E?F4DJ zo|xrOWmQ3;bW%^yX+K^1Sx*wfou+83CsH6cc@;q5cpH9z!3CU4kj5B@F|^<37i0i+ z$lQN=e*M?vKh1`~QMUWyN2rvHA13V;1 zzekX-)TB3*6cXKMg{1w=2;!j{q`k&rr3LTOXGSt+6fZ$?Z7ko1A@@lco)gbwCV@s7 zMjOR|4;#e;|NWFx(wRuPh`?`b-((^!)Ca#m_?uH0n1n)K8WT-sP)o41Hk#zngkb5T zXfj63+X6_JV@QG0%7cm=Y$>q>lLujUCdgX3 zyJD^f8L0ets6(oXC1c5ebRd>QVg_QH)D=sLM84#9<0#Tjh99LL;>cR@Nj_!aX!5wY zh(EnMnp`m=?KN^i0k!;-R&*DFaFdHm%EPdH5NAAz;?~Y$OdWa-D*)G22asgE9oPQr z7@`s~y&CBJXQ>^&`3b=Nsek7`ZQ_ibF2TN+YmLq%GB_gB2<}oj6bcR2!5F;iKz0+o zIEB1?7mg`e5{aGkNhcD?6Y^-Hr4Zh3NFr;6cqbUAIo1{6cZQ(f=W_Cs}$Yg;;fY_!%E3fxv-q?pP?CBq=Q9CDJQN7V^Ccvv}QMd{xqh zR5FfUHnkr~C8vb&dCe#}jILz&NOb5RsS?cMfL)k2We2G~ot)Hbts_bN^?9~nUGE-{ zQ;;`aY%)m^uVErh`@_k2{%NHk`94C@sK2>=Cf-TRAZGq9zF3UM#I!*lz*iRn z;!%aTTPE6M+0n+%jfF;K`@yLsNlBdTJu}D&5<4K{bK%D=N1nqopM)-}(-_SjNHr0- zpf~g^(kvc@Y@)p-hvX3Al=>beH3p{6A9)lHI~s z``C6(9=U)$+ONzepJE7WyuJ26ZxWnNG29VtZgI zA{dvRT~79p&h~$mlPF4#wv%Oq$;cV$<&`9voN51TB~eh^&)2KTeu7j|QAMWfZRi0< z7-aHjO&A=%h{%z;sz^Zu;vSrs?Nx=DlC9N2Z12@G(}pz~QaWBrSwj|**QFQNkkqlx z(ydnZ%d_?l{ZS;Mh$H(N#5eZc#l{z@d?z+`tf%;05-I?PDD+CbYlszlCRdZk1B4Vu zH6=Uu<3zy-xBAkQ_Py04l3?NDT{J{sk8GV(2I}HkY*U`lxD3Xk^U~rqFk@DJj?LSgUzr^OQntL$Y<1;CS|TC z(W0J@_SAY(9eB_XKOm@E2e*S~&p1yCCaD~xsqH_n=Naz$3<#DAHhAeSykuSun&sRyweW{KMddQqu9$Go%WYn%-i( z&gL#?uiH%GiLpSyFXpZtS1!&%y(sI{Eah!wh5~`#Y2FF7wd|^Ntd_(DDwN11l|&gy zl*B(0@JY0S^hYh(q)tq;4Zw8msoZ3#atj%6SfzxChJA;_+vr4M6ld+MmiOsn>Lo&7%iyFwx z=*06F@0(b15?P2f3ez=RZ&^F;42s&bx#U0m>&Mw>NlKqKkV$lxTB1*rvC2IP&A3u) zh)kOFG>IG$^@1F88je6oDrZ6g_z_oEuFo#wi@*EjQr**JmgVY1mqKimW07K)T$v^# zIf8ImQSv2bcQ(r~4X-PAFQ#*tK)=&6Cr2ae$`x)9>A}-vr}2|feVG1t-`c^w+~O(i zU>8U9tXjR{OhRCU=DhM#g)ofL2-M+6phsv$v{3qzc zM~8_iA?ZEo$>+#y@n_^1?MI&@?+_6+xkl-)J4uM>;)R=blIc{f%SfW49aGdn>Ux3f z9yOpd0(69o!gL^Pv<@%mN^@L1ljcCfZkRh-<(e{;wCP3C5Sf98U4W928EM5MqjP3H z;P1vfCG6tR(UhT#Y?Vnzx&bmmR|A zqtcGu#DM}NjFEJzf%f@~v{95Cs#lOp_e!H*AycsPl2^$0f(kpI7{Z+HL+v?x$r-BY zw&JNPb>T49bSdana%SvylRf`e6w&gezs|Sg(tZYm?(epMfmCjBe}}CH(L~{CuiV0r zWUrAT>JF0@zeYw2a|3orFT6%(`ZaX&y@A=$sGo?ib-hLcNq765*T~-m<(Qwn5ek!W ziuCaz@*NkH`(GzUU;h6fj#E{Qa=USgqy5v@QKlL^S{Mf;oP<7ecGuF}T=Ma3J6@m~cQj~oGaqO|QSnM%9TrB8E7wlFqH)2{xU93s@F zk>2?Nfj2l-I{g@lR{l4erA0dOCCQ5z@Zo90wAJ;x=%5%Z;?#@YpJA$K*PJ7S_}DcL z*HZAbA&s|({DW*4g50FAO=X;L@7kYz@FP&0Y$&GvST}iw(82xflX_68R3?PSXUpkP zW&7ImYAn2CpRjND9?MgxkFQv$6L7{7AME+C`<+F0ufb z!>2BED1~AQ>Mw%6V)XqWu1#J=qu+$MHW~ff?_D9w5m)VH*UWYF2Ate zSfMu6lL*nUyGVP`j&*=xAnXlPUmGbkeo;y0#Cw!tVItQ7rO z#%B7>pZ^ocjw?X(;8LLE|2v7NPEnfjJ8tbLk(z%elYFW=u^x}b4n?~3^Y3KCnC{YL z8J;X7i2V~H0o)u;nXW{~cD#%JnfFSKNsjB7G(HT!XZ|25DknEdU*_OE^9LF0-&2CiI8@T zMb77)l6yIGYk#(vTo)9*FON^G-dHVF4UkPD2c7hv0b(2p-+&vP-H=#NTv4;JAUm(8uTv@!qxMcMjV{($Q zy1X=mB<2_1A*u{Mr8MUbnVO$fxO#O(BdnXdX7!Tg73Co$p!yvUH-MiJMkdSyk^*!G zc_yaXSXzObnFsZ2$HlBQ&R(`D24qU|7FMiYSH5P=^0Hb`jRDzQkV*f%Lq;zAB&%|5 z=IYheHGHZg#MedSNg(Tl?CSCw;{qTbLW4_y@mveC0kYlZe1Fh_Eb_jldR%E`B|Ns; zSiQD%nQ?CEIvinbMfoIS%-T~TRLG=9?~+IKrlpmM^3yQ8eC6sj8v$09uRJ3Czq`a} zbn6zEE-PNMbor{Ki`Q0{AVB9VS+cxzd2xj?i@LqCb$u_|fpHrT*aC2tp{N z&o9W_32GMz{-X9U1#@MoNntHmv3ym8QeUkEbHN-YBv-F4ErDbydyvFLCO%q5gh0QO z^gpE)E7nxk%&9D2RZw1CJx>{k*q2E!43g-1@kH;p2heM|zhGl^etFf}^6Co;?c<>D zf%&UetXjQ(m9e;TrSZN(_)Iki_qbtD)X%G4IkUW`n=US2Q@F8mDGAUTMWBNua;B3c zOThO?pDmHg@MFkFSl>URQrtdUXtX|6D{uGc=_`iLWbR^M!1->Z& zF}d=xbvQtI^-1FP#bsAk@_sAIHyTI9RF5*^X+ZL*x+l520%wU4@;N zmxTgZ?W3IsihfvI&HI&=FDYJIQDclzYiJH=8}UEwtpGu-%wg!iIe3h1~54}Ic3e-RW-|3mLs^=tTrk2#T|7Z z3{aWX_dPs%HRT&>#+6pDGs7|72oKrH%7n^WKGg}um6eNYmQN&WAOQzown+)Pm1{&Y z5!pjbMOjQzN<|q~Bpk+nNEZV7genXmg2oPO5lZ9!Kce0SE~+a11AorFckaC0VVIW- z%=j3YZxxD7Cb?J5*Gz>lO((sAyJ}FS#4JY}u}D)Vi(P z+AbOLgH`LRL zL$PP4R81J2F{R4SPH4J`ToX6b#5?^tv}_d*qg7m?Kh4elNJOfOv#usc~VB!B)-`d>Oy98LkxJ?mF*D5S}!8Ht?d*4EbCQ<T=Ft{;f19l_!?pz5YHX zn?4;B8`f988$Y?Sx?E0B&xHT=BWyL@VMi20>Ngf?E?Em{!xV7cbWf6yreY|h3o7!q zU=U13ue_)7Gs|;;r_@xhzq@{oi{xT_tiNjIrhCxn^&2trkj7$81it$!>-}6l|N0H} z{vum!2C3p!6&EPz^Styi3O{}Ns+CpcD{C-s93=A;2hlg)0n>NU@1jrAchS*eBvx?A zP?O_@!xt@ohu*{Xu~jJ0tgq1})JiqJ!V~M%k~IEnn=6eOx6p|{|Dyzh^@hdJ5h&S0 zNy97@tCJ}y1z!ng5wan!yV^RWM5PKl5^b+ZNz%PZZSPBCJp+`R7YODTP#R}@9Az9y z3Oj@}Vo_R>O`=O{q$JyGv=eS@TMkNZ*>nhlDgbB>BiS$xXJ& z6njd{d;lJWR?=k`xx?=&(s3*K zJxj%+lP;SN<5?h;%1e~r0D4;Kr0N_hU#ng=clMi{3)B6p?_1v=_wsZNz z8;lz{decb%>XlI4s-|ORuc`Kj7?tkF#9ZwkT{U{s=uNg3k&9DH$=TGXkAT>r_|&4* zMtwAcacQNgF4yz%F8w>p2=7h9$eCW7I>I@@PJ_0I7?Jqwl?a8N&M@C*i|zQCL8T7u z?rjb=pG4?i@%#;U z4V)6_e#!uRgBj$yiVAanC1?UEBP3@3npyJCtGk0?WjTmefXSVZ9VA!4w+a_gR;H4x z3UD>xyX|y(4bJnCvW|}^$r}(>3w#~kSX8*~L+tQP7AYk(XnPzRVx;_vspahk{}y)D zR%EIT2jWTIQ-M1bpO)}Fkf~F`H6jUbAz3oLE#W9l!WoHT$kfl#6F!v)lk*jhp71|* zO<$lK@n3RO4N*3bT#ITT6VC5|qJx}svD0XDJ!^BB0H*vjGFf6ZRyz;mSl=?3i4ESvW{tLSywZ}w>q<(2awdh}QFutEa!d_M7 zy0EI8fTl7#JHtK)yP8ua8|g`m7s*EGFvhEX6(iG>!x%MJ#YofUs*q^*3WoKyDpFC` z8ysp4noylet4QxPJZIU}-dB+U@gc*$j||K|IYXvTjcEU7*Y~-B|Bu1$3&z+7I05y0 z&a^MW7!{v$A=BtTF(hJneXBaz)m#SbHd6{|86h*5ex8|1NqfPJGN~_fu)W*N?A|e> z4YmK`+GjFdGjqaxDvb1R%}B=dy}>TRZv2ntX}B=if(cN=CpG9{i55;P$-+_bJ$Kz` z3r9&qCrBG-L4VLQEaV_Hlw%<;X?Jj_eiz44D=eIieHP?heZ_+OYwt0s_#_)c@?RFz zuT{1(p<<<}q)lhoii?quTsDT*ZEj2gw_Cwa%e5l5bvBmQq(O_Rn~zz7)M6a2k6(z= zky>gEaTBd#yk5nweYKSvs+QTA>Po0?qZMgu59N{T;XJB)lsT$TqC72DlvOZRljac0^cg3q4lq^x zRdyZMtY~oG_ne9NAEr^=5JP&Tk6b^h$h@#ITiFJrYO;Y;#f^I?na9R?8jso|bqd5K z4nusL#UWZY(^_x0-7cWFx@M{5nv3_s`4k#d?yw=N>Rn7>Uv1<1s6}ZvLIB*yIQ@Qh zwTGJUk?b@&{V3}->XSCqui66KVLV4+(fXYYjjA1oTz?&yKcZgVL}TEh57%Gu{#!G- z-bGjsQtsyl`h>G(|I9X;YkPoGh#!Q!|86VhsqeW+n$Uo>N*Wg|9JNbvq0>_}P9vKG z)Z0)kw=<;8M1|&{Un#jP;;gechIKBx+~}^QspMLgZOm&Am22EBR%v%hD>WqStHtzF z$4nd>p?{F}Fe>E{)Ufg>d(|hHT*bXQsGpsMmUcYaVo_?Q)NbbhYpxyn(hAVy=Ab_=v2#V0PNRn~AED^0>=yB+ zozrZvqd)jU7369}Ydq9Ibq_Oz-h|3|w1HetptZL*&_jorTK%0pQxd2$qbDQe4HUN< z#eN%#K;2(BqEWh2K%d<~u8&a4elYq3@Mp_0ce?2z7C30Rn2C}rW{CJ%8AEBL&44xS zwwMgrh3Cx}ZmWVAF321=ot_tif~oV_^(_GJ612=R_Bl#pxI34Rr_hL1F}grRl&Llb zz0mgnrWt&|W+LmuHQZ=1m>bnyF_b{+Z<#=S9c|Rj@wIoLSo{N>@(fz;eeQsLF{onu zXUxrdl{2hgn})t895jiv$ynWB2tnwOmI*0E@iTD&?O=S41BsamI8>YE00Vsi!}eka z*yzidUVR8DG+}H%j#6yJ^DC7`w8E8Zvkbo-9n|w=yiLKdJ0V(QJqKxZOs3xF#4ywz zMx{K0Ve;sBI{i3v)PBVg)hCA064#SIr@CfN%(^QNJoa#iZ!hOW-sgmZBL9Uk^1CXX z?%~qtKd|34gtm=r#V~hKp-|D=ky^34)4bA+(C}+6Db+u?`=lF9sP?%j3q#(+Bwi2Y zk#?tt8#w&EOBw@R4U2M}?v?a)@m%~3@u;-qMz%eu55=X{ zmop4ibp&aLFoX_6lsh}Ul#kr`Xc%dJA9z_u`Izrmm?6nJ4h5Q#!Jsz92Y%L@ecb4` zGNCVrF?x_g?FBvxA?act)F!pohvd{oAKgT1rw_dCJw9a2alx0P4cdH2Uxiu~Pg+7E zCxR0X;GdLuRCD1OloOF<>ykt;*OsztT?PSO3O$Up3iK893m13PN_4X1>O{1ebzLHI z71A~(A{8yfaqNu@+i?N|wYHDrnhw-pRvJ%rorxHnHcY_}VI_@mq$Djh4`R(b5yC8q zlbgz}HZ2K-uo@#BqUJXCX?b?~IFN+gs`*J^X)jKC!ZaAmpl@Z8p)1{+#FDq3U9FKR ztq-rJx<`^wE!JnC);x4~ z&xjP};fOb~Z@|lwkvUUCGOAGjIaA7w$;iIkoQyFlzs{6;x52Z=fZt2z>gi3!FtL7Y zz@H?e2GmKPCv(U7AEVSS7`9$DlD}qPzGm3^tr6im!{NF(Nl!=twfq3P%1={}l>9RT z4!6fi{tz-O@5b-1kOI{L8QW{XPqQoU8%FnGV+hL$lKsP3yc9C56c6Xnh3qPe4A?N9 zDJ2HH#K12#;AMt;hvBX;+&c}od^iS!+&G+|{hPN8M?K2T?3&vRc%K0uG~iA?I;R{p zqWzX#rOR+%VZ3~7I4Z$>oG}Tn8#I43;5Tp!J}GY*m_M5`Ch#P|ak$XkF9|0b(A4F~+yK#x^dXgCLPBAdU49swLb-y3Am6*nG z(l~a-cxIP8X&Akkf%PwWZe^_d&-$QApW#PIVrMcdJ=c%YdV?4-`AiUUL4B*6#ToK0 zf(%&9$k-Anv!*3}bmQc5Mu-Y#E>`=$vAX=VxM7` z5xraC`xPF{TZ0pu{piZ^`*7xgv>t|SA99|wk3-DK_6hUQKJ`PFWzi+bB8>pvCyxM; z#muU;h0%(Q(H3n4$Q1`BN+*Pr2g6rKLUG7`JX3kSQ0IIjkYnGl5y+w?6`2~%G37C! z9}9Y{0$t-U(8q_C)9G}MLg5wvka=5mF zw)qT9EzHfk>mb#2aG-Y|!k)qN9CETB&kHEv0T%4u-vD}P1cs3J@2um4<_rq+UI)2) zL3ftblWQZefbl_CnJLaP3VCqh3V3uY8!~0n81&gkk!KWn{iC?}BS(R8+&I+Zc+}QS zqo|m?n?VaP7=Fkn>Cghn7vAZ+p#=DjjYc2yzB!utyfqrDVDI(ONXkcJXgzs1jA4B3 z82Xmt){F)0x`*AkwFZ2z0oNGtIs;yBz#9y>)`05_c%uPtGT?dxzHcm=p28W4k{&V; zZ?o(D%UD!K+-C;n-|WU+HsH?<_&)~xUjx2k!2dJgFAVrgcD(~*(Lz2f5~5H5#?iwR z_sBTlT}|x9J!-&@8Svu9vf~LPkL21ZXPiz6m_V9W>ld!#!rW-G+M-Jris9L1!O(wf+exxQ=o_YDzFG zT_ox%{U#|k3&_(BMb#}dGYx0pon!zOy^7n1qvCe8^#fQezp~j z$Uuc?<1>(7>qJI7GrEADoPl!rrZFNWi!*AP@iv6tM=)`*mE?8~P;)bA307JRC+ud| zvA$0l6Mg+O8X{5Q}uOEhOANtu#bgN zI0d8G;h%y~-}os|og9TzShy5VK>-{Kr(m7ptC)fg;Ak{xwoZZAalCBc!}Eq=TWlW) z)%bmMzv64&Pt!>4*-tn@aD6{|um0nH&Nqy`nlRa40Hq%D0_V;70us0TU*JrQe*rXd z&I^Rzww`IU4eZ)#nNr_mVCtDt$1VigF2t_f_yY7@Q^yM-MAr5)3w7TMQ2t{+V^VE^ zG5XaPkck93fIe?ZIDm>z@E-tP9(e#tvyx%JQx4E=WU4&?rb^ublwE${07`Az!kC0# z7&N~;fUGD_Fh+fnUAg%H8c=CHKq0W(aR7o$dC3UqJiul8mSNL%j;wrdMEl_Yk0t3K zv%qO(%)zPwn-7AKrWvsPATnwlbr7+%(d=5sGTxWQG>(jeELNs5K0eF9-wHQGYR*9j zD7~JEtc@J3K75cSleOz0Dp@FhvhnRoHA!JmWbqK0V$hwG8dikMmyn{)HpmAx9hrrYN$RXy| zbck0Xzh&6k#e~``hd7_V$3Qub4x0Qrd-XRDAu-cGn9Sb8iRvF23H2Ysu+Tnbyy>$N zdg$MW(1`YdLlYARV>w8r&|$VVjXR9OSSKCk1SYd zD1%nSuyx*Hr#>hj=CsNVBM)lDVN{o?7Pf#o=H~keM^t}`)yjh$LBka7`WbYVpC3l$ zYMt=CjL{!ri}3G$POew67JBV4XZMc?>V^<}6CrQGJn#W$$n+sI(LVx%{==v@>wh5u zubiT~FE~^mfF^L2DNJ8sNPmsk-xT6ksa`}zRBTJQT#(1ndjE?kv6{xNlJO#IIEzCs zB9c^o6259X_N|%D%ZYsWH(BSId&Owq&)JIV>K9eDw`L6vwME9V~KX8sbKX8kr{J<=Rv8xXM z0W7@Z40!wxXksXBLZArc6A@Sn%@Y`VAwhNMzTFWV@wLhZ1L+brM(qkl8+M7fa5#yC8=fcEroF&?57MO@_jPqhztFtrY z#Kblj?}&np-5KREkjSt%nIq}L8J0&xF+If1Kqj;2)9KqdTEgw@#=;0+m&1^pJ06De z6|0edkRktdcQHDy9A&S7VQnSetMF91>EkM9s;=h5OtsNxhpmhf6r8^O*Vu6Z3~HvKuRh$$O#D`8tNKi9x)>a5 z6}OP%xRq1*BfE}nE3C_oGgiSmpAF=iu%X&ClMSJo-6kL*oe*Ymj8%O$0YRUIzUZ3C z#EzU&o4_VsF}wI42ceFiaZEjA+epZoYY)uF-8SUhcM?4{<*zn@IptF(as1bY{9<27 zpk9#dRMKzN7|zkS1mUe?q?E)#)T}5ZxzR4Bklf9#<9j>TS@?}H(ij|tLJh})UMq+d zHfS!f$gsX77M!6Z>SAz&6C_rN-LPYT%*MrhNcb<#XiXnvh*+Vr{I86H0f1SexKNDeco-=mvU@i|Z}O zcx%234Ao+n7)jbD7k*Ll8N<(lXs3woYYNo5mPD%Z=*P zZg;0igRyR||1BJ-Zgq1Jo^%UXte6=>_AfV=dw@wa@^E1! zc2$!H_>c+}`n1QxJ$}50xns|=ZmI{>rok$C`Zf<|=XQ>uRk7oNcp!qD#ZF4j4I0SnZ)`Bj;g)EoUPdKJpC3! z>IruBxASPkU-VZnw3w&b7>DYyz7)q9IvOWrm{X78g-z2qj{V0t@YCL4SbsAPBU$Z3 zGQYjZ2y8%c4l?37?#=OBm>KcFYq!O7CT?d}o5>hGmub`>W9-H8T$YM>EMnBgcrl)| z7Y+I&27Tz)hUYg1qt19P*egcBtL)mlIWjZ|kw{uf0@s;8fs-7Wz|Alwfs-7Yz*Ux! z07}Pn4%M@n(l?VsVJU&kvZi|dAuW$ zE1`^|s*f?LwlxuzU=71M-p&;Iu2k&jjoiZw^}UHGh1#7cu=PU8oCjO7NQLg0%-PLI z<}Q_$%o(^Hlh#besyXcHxyeNs8Ofaa<;f6fdMzdvQa2`Je$cijqi0(WK|&m67S@;1 zhmUf&wF|TQ?=rCUA5SUV?=2}DOG^=$VJ4>_A#HjJC!NiBZ6fyq?3yWSQ^atxZcRZ6v}Pu^wm_=3adhhrKw*Z|c38~zL5(o=4?`}sukdvfS%-bi zFa6tLXrE}4U+k1)C{?USAyTpY(Qg~`ZsX0;hJ>V$&DU-oSUZkIJo;djw6n?=QtPOX@3$Xb0GG}_&#xm&Jf*ShXBYENuB&3)%Vc72Z+G>@J}j(yusb1@H}W^TVZ zEvAFp8GK;@xp9VBgw+W!;q+qGv}8g?&F@7VWofT)k!1~UD?e-mb@U=jmc6}5+VU(K z`+2BVwnM$(Y57erQdC}HSos5!DX&A3`*Sa5C`%9YqyOM`F{g5tW17!$gqX94V2MA= z2@N~T31`j2B4Y+dLC#q;hNa*vCpHJYWD#Ul4U;I3A<=z!cumDd$uE#s%ljNMl3hzS za7*#jB4gn%CP?Y}pb~eEa}$3KwPQ&>hdIp~9zRi2gnaW|i#c;*7;2aWKh2x*pnffHy+c6w-3Kexx2{{N_h z6E2Gr0t{+#>XU7v&8QFnzK;>Z;-4SL0|ajiVXW3e^p zeEAA$NTn~>HGKg|rH=Rl^lIuC$eTJAs`a=pz(oy@pCl!j>*jrdm}+?LBx&r;bv0ig z6}29f@Boxcww^a`rMh2!fsCrptj5@U{tF%kFEYYAz-+_MOp+3%!MgD4lO(?rvdx!s z6?yj+UqzrVdx9K|+$oJFlxPmu-$9=i;JC4--9e2T=?=TnmD!xa>t3=ZKFQ{}t z%5L@Nb^4W@IA1Ah{KbOX8<&*0X}4V+6iw79!uv?l#kx(xWW})1zuc> zelCsIUz>p-AWEueVX#FivQ^XMTrJN6D?>Bg#fF5;bn+}1MgKy^h)&_D1-ZS7&as)S zA5RVZtyPpCXpu^*2xq}4xNm8>u zaqP@+88azJzw^F46fHwU<=^!|!q;3aQme?fp@_W>%GGAs=mG*$@oWRCH?)PcBw;Vl z0zq0a-R;~X;fv#18XT1hY$326prC-GVvl{VmfvOxwAfm$D?a-0EN3hWK}DeJ23?oH zJ!R&8u_t+NQhrNftFNHVyCY#WGI{p>Axc zuv!h`b2DLyj-j}GAHFmI`AIyu$%?Lb4Ml6z>pMzP1aH#V=u(Hav7+uE(`cW7<) z++F6KmfQ~0ZdK}d|7`As^SKv42!dPRKKfpF;D;nZ-DcmRafF?gUFPMx)eaN$sXF`q z`3oOh%*!WtE`F4JE)z|pk{-vw+J&gWhHAn^X#y!A9vD;`JQqH%PM?Tp+X zYml{$-w#DOi^_`|xqpUpZkEP|(uGtbf7}Ih=IcYzQjjV?E2MvA>{0ic^4g@l7Nu1# zJ}F+{&Wo)RTJ!o5nS#rWz1(#8D-i35C>26iuBw$rQ|H1&jrvC5z#oUAYfcEmNZ8j5boB+p9R z(v^wZzO|rEVvW4L24Ova8VW^^_=U(3o|1NYfxF!{;44ma%4c{3U>`hXCx)VhwYWWD zk7chpuSH${s-l-*396W$#c@~K{O2L8laGlroX<-@tT{Op-PS;rMh`7)AZed)<#mhg zIPpq72-9mY!9vSQqniWTg5kJ0K+Zy+PS+hGl~*ju$=*di@RRR$H}vK#|x z#k=SMfR!h+Pzj1Be~mJ#!e)|39s! zD&>KB!5osdNZ)vx5U&;SIzgg*w4OWVKCwsN>&a_zx4MFD&SmdXJkB77#2WSEZV+2~ zhN3){m9A`3s%T29n6rhR<7UI>F68goA`fy_itr2pxB~JLu9?Pcx~>%OvF)|ywW&Ky zffh?E#<5cRpztol*{e2z-$mtk$mY=Lp(yL4N}w2-ln=B?J47hRo$IH!sL~1bsV<~+ z`OHwXY6pw!)hFQ%zLzZ!3I#bbfW>K%%5xs;z|kY`?48kB?ZZAM5L zLh3oki^Gmvq){Q4YShSeD=PPFDQ1<+w90Nn=X-yjWWHvd+A5ZuRNTeGB*`vS^I_KF za~XFrLwVHx$ z$__a%ER~&;yt89y5P}Naa7P+7eJ~WQz%TAfUS*K-TAZ!1`E8CJF?nHoyA~kRLGx94 z?k?+2TcE?d+amqU5TW!-J*Fmv}Uz}Fj?LGOe?Wll2b zv%ORmVA+Z@S^-WuQw(JU|A`q?L8T76*N~NuXGs~MyDgZrpXZ)ZVuwKbq*fJGrbR&> zr>CvAhSepLgs3qMQVH^2@-Iv^pi~a7?NLOZ6qwsGl4|T9Hy~^PVOcDQTT*!f6q{AJ zeVAC=4(L$}31_;L|LNd`+niw1hCC%9l#wl6kux13~lIP_%YPe5LkC z!98hv$L6(+X&oJCOWiT5)b`;=?P9Dp&wfKv7K6Iu-;nOfW>IRwWENL}2`ve~*=Lu# z%&VIaeDd-!`)(dc?eLt?X~hw|yYcSE`?yZadSf64j_GuU#m;3QyDkq!`wpsVsvI}F zoi@&Dla|}g2216Ux!MuyCw^!=WuN2PQBc#YZB|cy&}s~k90Xk4t2hKnO8~C|O42^t_AS6)Lfo`^A@)(QphdZJmf2Gk38~i=9{r6-{qlc?qTPU%y=zXG zM6)S=QM1X61Hm0sc^ttt|IISH9>^xKUsUI_B${Uz?qw)&hqNITr!p`9x7lny;|GI6 z_^$nTDB4gVq;_c$YYof)Ck&}ogP`Ioeoe)f-#GdFafoNfW*|GRV5X9?6mdlp?^)Do z_&viFZMOMm%h{RJW-B}!XtT{ZyDE>qfk>-mS=?sZcKkLhE)TGTb>p|#=HPZ7eRE_}O z{AGqy$`Q}=01URMt)_WJsxja8A@IbPsj;4g_-5#i5_-;$7&u{rHXTT{$oPH00H$-w zQdXq`S2~bsv3kvFwk#@?$|7Jo2l|D3Zo2FV`eQt~C1fac^$55=0O?wZ2|`-61zyZe z7RYgd+ok7UxS?Yl0Xkzai%eQmY!# zFdwzX26?Cl4AH=YJ)cK=^&CeEHVLGls1CZ(>R%}uF4=oFz>+DiRc=uVmF-w+Qq{Gg zXmdYddh+C_Ta13X1?b*u^^P;FuynxFa}By+I%M@hSt)dgQ`X0U>_^0QKjFr^xLFNS z+%g>hKOt=&KuFQoLs2L0@Ak^e6c4(YPKR0O;~**pzlO2;N!yNPJ4BmQ^8VSta(WLH zPK5}&hG>PQ^c>Tc!JqMsQm-#d3h1-!$Mp4%1{P zY-cQDhGmqtSeEd)=DGm{CV$)K8PzJb(n}d&s_RGy*QzF!BTLj(N)}_5uYsrk+o9;S zPJtiI6`fRoN~-BHePZbH?M!+d<;T$pF(h!YP~5%Q;u|9FNstn>`MaTL57nAo1^Z)E zd~Moq+i(SF|M$(p^DHNu90%>=`!y=27|}#=^UEl1DJtuvysj7_SH91RvsQ@h^?W!ffq( ziI*arwd=s20RB`eSq@snJJL&BucH~9aRGe)@dnQWbw?0ZOObA;Qf8Z6*aCri z4U5lQjWgYofbyq{NRvm+l4GGkdotdQzqLk0j+Y{}DE>&j8?kaj+^D@QB| zvR~BuanOU3#0-kfmf|*KC!(g*Eh1@MEuf347e8bn43)hVev3I0EwKnSN8Do! z^>s&LU*}ruv3y|Jszr28{Cc`-4eXHH z6lqad+F%R6k}JiAp2^ip!cwm7T&|XB+R%@P+3~fK*)U}&DdMy=S4w-fJXyzS6G_Tvqc zNLPr9dkh}M8@c8dX+pdq344sxEF~>%mJV~b9YE-DUk9yFhJh43ym)tkM>^h}P+@97 zlmqyPFA~kzFNrNAI>j}S$E`iPU7)=e+t5Mx#$@Gcg%0`}`)^zy9K0ulRbc)Y!m0X) zS!LlxVK;?4!L24K5><|f?I!@Q0qkrdDa*8oJ9$A&>~1W|cB;EfQuz^ak=uoaqvlc~ zQJ94O2X$eGHJ|l_ovKt;>^7<;8w51GNF3!7^FigIVG$)IBs+z*Oqts*q&e;4WtOct zbxckENUt|Gi==VVyjI1C&qs;wIpLJamRT zJ|(%wx-r#{0X-^GrOAppX?B*!keNk5HmByOp3qSpEH=a2lN!m4aWBY-HJZK^7|Upk zyN5}#q_iJ|w*=nqX8C#UbUY9i*s`Qov_QLzl^5!FwoaKfwmzq_VF1LZ#yA!8b1abc z5fI#C21s6GO`4Ug8PiiXaQntaqW)GK$QhDmVa;&Yhh}5Vy#_(8X_07uaJVS6B+V%y z!^YGMbkVp-bblK3YZ9L)iBqabPpCfzeDAo(e!rG#PAGB-eJ)FSQ+NRQ~&coU^8!uba|C}^N75bUX$y+5B;!QN;%TnDuk8Z zbj+4m(3c?gC2iOSzcW2Y^58pbbV>M%()gkK@eYjj2S(8P?0`eX`=WZchi? zpB{;(70LpJ6Q?=uZd}zal|8146OLVFqc92dPmDxQ77A-s%vEF6+Jq=uCZQtF0ni;7|R%-N(HSiQ?Mou{5=9HwG zPB=V)OzC; z7Ks)~-ME=eF(uoo3c^z5xjB!@=0WuvJuLCSl`y#9>plDaxeq^LF3pHkgr9`=Gnahb zwE7?rC0VC5SizSAEY3PcD?&Yh%F<}XCA>>H`9NGCm>svMlueAguP(&9V^efSaX^KSCfDy}w~<0oU_c7VL` z|72q);Lv6Wv=aatAkg~ouGgs*LYS@quH8cNl{n>;cNHp>>|_1p&TfxgdBa%R9d~n3 z%j=Fal!MH%=rma*$6Rz6u`A#|QX*vN`@tew%mrxllTs$0X5Os`J(vj#Ll*iUE;1u| zi}I~>!x&_&%LA-@&x@GGN=swNSYO~2GIdO^QG{P!3A1wLd%2(E2h}xz`R|p+tWAc7 zQai(oM^X`MbEWu94P5la(3<&nvAMHXQiVIm7gYDY`8VsJQHHVRvDi}FT<45g8C!$AN|1;sdtLi%FB_E}_>>ysr+z@lDC z_{lXP9lU8fn=G%)f?l*O{(53KbB;9KR0>pYc+(syJG5imSKa`O99%znEl((|zf#(^ zDLa0tgtsc~zfg8=QFcA9?0!t?cvRVDuI@p^j@cyCc4_-uR%hnEf41PLV%}nIVJR@n z219%zW_fMV`)7$OA$bBi#hhy{)h_)fz*d`DctfM8?@~+CQ()D(SIe z()hDH|IglK+NsXIa6b4TKF=7oa)*`Gg;nDhv1(lRn1~%q*3&jaPYz)c1#;0O?BhJ8 zkJ@Fb8M(b`BE->xNVKNPhO5-2+l4e;-qCKlW2dstc0M=9G$U8bchZR5^KBl}0rz{g zI~5iY-H27QFz9gS4p@~}hk0h}sxjYQ2EKJ+BwBURESlx7BrGiRdA(fJ`yO^HLT4Rx zQhi3BgmQo=U2KA7<;I9j2ky!u?+sg04m|y^k(S`yyJ(xq5G!kRa#`jRY^N(W1Aj7& zJk2^;AW`?jd%TKP9K#!G+KN+n?=L0~SXhc_#Wi@_vuT9|yZy8c;mH|>X!K;<2oJ(r zkML5wk;sY~yvy)z#Jd>pR=k4^A3_w z>{C#}#i{aA!*HCP=$@NulDef4tFsZ%z4*B8Og-lVp5u!n(S~E@Z#*{)=;7bblafQ1 zO-hM*(78{rIlaxfBR1@4kJ)M8rR}zLSlP}#-`4wHUZpY_n^22%QD}Y+bwDSW@? zM_+Tu+>{54>IDdk=GfF7CV#>TVtMI>75mtpl6_+H{SHtAcZr=UEf zVP64XAS|AWPE)o`b5|d{VNMDH(O!muQ%ohs+`L(RUPlU5z#lBD6~a$v_QSs!{!Y;O zPYUT|jQHg!F?{@2);X=QEzSjO_g=(y?>shL=k~rA=oQbiJPdMh?kLLJ6hiAxwYq1` zH80|TJEoC-q1+rhf4mkqAKTAk<=+|`#;Mb=KrG)JCu5{$0q(76k9n>L$rr)XUs0yJ zbF*--v|TT_B38}XDa|^c-$9~U*r!O>Ok9(T&VzUjo(@E)SQ*(ePAbL+7BL~QU8eM|9k@Lh|nJxi8bQ1n%iXtVARy8M)}`?Lbf!xzb; zZIq-mr6mg#CqS_#6-P9uR>9}5isVdIb4 zBv0Xhr0lgl@5tch;yuk~GRy=gIn8PaxCWEjO{1lpH*xb$lGtZocO4=7S07YMT4fjy zdZ!wjDSnK1``ziW@+H&uOu!9yW2Mkz{az3I7fK_8wlkVL_q4Wf(R;nvsFNncrstu- zL`So!rMPuL+x#8#!bR0dv{^StUZhN@}4>!0i&LKBGEqOx-#eqKMqcz^HZb4 z@<06OgNx_-j2(5yK2yu0)`e}wI~IiJx6j*Iv}^9}IUTe2lGflsv&+k+6P*-B_4iM^JsO#Vuz@;#7Rxy_2wVHf``v zM^C9Mp;*JnTLfRu#z?gED-sz~wpYNr4c^8}%C(qqXc10zthB)dcv#HPq-qzws)P8# z(+Rrc_rY3p35v0HRn(&E=0exteme&;3O`Zo$Y_(e0Ryqv3PNMzyZ&T*r7{DZ_b10l z&Jtp?9K@c}Y}W*ZrY#1(>?aKga&wF)c+D4oXO-aDS3;*0H1=VH4*Ud@WtxiVIXJ6D zoqyfw34D%oyc3rqEVH38-ca3+z?0EXYJbj;Om@SQ-Ox2sK8eepGYz%x5>SN=4J5ph zC*YNo^P>)zfYJ`Z*4$9#gcb4rSu958*dA5JXoWE}EfmlK_#pl+T)inKqlr5$;VMvH zZiqxLUMEl93C9}4gwZw8y{$g`jj#kAeIBG zFX7$rK-LYhd>x)9{f5cjejD=fK$ll85&>+;7KVigHEQJGj2zX)eUu| z$f<%=?6)PUp70ws+shD;1M-gRLTOd?g#(hjFnLs-)?}{ShM>*|6*Jo1Q<5`58Bmns z35PlV#}VS+?3Iir>xIX=IW@*|%Iu!oDn0Ax^~(vAFu1uUW|i_GMqpu&Rq06hUcmx_ zE+eF3b0k{N`FlNUfZ}JTnO^q8S2zQ2gWeyCL@)OVSH`a_ zaGV=pMXD!%_oWGQj0BC@M@SQ3#?G> z6}MaO@a!43H>I#WA?%eFR#+Bkxqav6>!jS|u!YwxmAs)rG3#94{IIt@A(t&=n)IZZ zgkP%+=Ay(+{hHjNtS$vy-_+?exr9ui~3Mej;mFJabxz6^1$MvQTZK@KQG_43TYU)zZ4mFjk#==|4%OJNC zzgpg@lqBb2VB-T${PctqF*D(XODnlN^Oj^~9iBpyX&9wX}($=E5o2)gD+i~U@zf=rU95W>{QqU0qES)NM>w^EY8QM+tTlnyX6&L zz*ShRr{mqZrAFXH!!tR6?Z1F+PT~t$EKTqp{3TT2vng_S*4IX^nww$cM#9R0DVIl! z92f;<)|NClPtA6x7)60r z=XqY?!|HBW-2HGUWIPgk`mKn{ctJv72}i{)`sP#QUAk<$(17 z{F_^`Q(NLPJ#&+1-AcFgpkxc^VxRaVvk*PLEfU4OjcBb#p_ExZE(KTud|@~eEjAxF zUA6WoMY((C?46z8I;*8Hup_^%AkZEN2diw)n5RG(^e0V`1L7OAY`__@TW7Tu z?8pxX+XEbnHOfx#%iat5U+jn`hTmE)jSIb;O`=#lH5;Az88%8DA!v1RMg7)-C2dmC zEy*I}k`_4@7o5e^uDkwK2*PV1Ot*ktu)d%zHzp;Q&%y;Z<42YG#9V++%vF;5EKV%u zYVtpXeRxc&_`y>C;YYdll&uBkPmBe4Hy9l`6j>d;?iAvrH7?-1ZBSa+ZVIcRUGh$4 z>4o$6Lc&c=kj{%isno`}Tx~Xw(|PAF1Y>F0`3uG8`Vx}2|9_T{<+mN)C9^Rk@51@~ zc_jLs)kSkK7ya6vel7fu6;g5*ZwTm>O+b2IN*-sP*DCi`$H z))}sSJiQ=37#>w7Wvxh`3sKscrkWd+a1ih@{Hlq*SzcQT_(W%+c|{F?ZeH->eOxC` zYcVD8!ucTlu#c@ij(2BghH|DEjCg>K4BT5yTu>EE1ZgnfsIpO>}r80bW;Cvid9Kj{1BK zQt-o*eDpXzRf|erTUg8$uqi2*>o~ymnYUY7`)=aM5AseWjzE>j_f{cB-%)SEh@DbM zm9p}icxPfY)^6t|sYI*nKydAEkC@E;G0#JjpkwnOkGr}q`_-nH0;ncSGo10u@omiP z>5f04?}OqxVl@3OBgvA3dsbt`$=JBHlIbi08t|mg2fJ5JO>xzZ@ef*f^Cge>Y63f~ zZMHnN#pLf+LJ!7G&HW(w>74!l?=g-Y)?xmScPo6Fqw@XGS+sTT2a(}o7w){JM>sx* z?DuRx2=3Qjg+?2cDvhIqfuLJVvx*tey(d)nB6Q2KE*)P;dGgXJ{$6~4lwo}aUz5`2 z*I@OM(iK>RO=WYX^K^*qKzX~B4*9_@Q!Z=7waU{$P&WJl6MIvT%yGeI=B7Z%r&QqB zyo91*`+_<^(fK+S0BR}8MJd;8Yy=3f6`-I!ChW-DrR}umc35}Y*85Tt^7C!@_ThBN z`3nmeA7qMjx@YaVz7H<0#18@ApJHyG%^sXso%Li&)KbWv*&(K@WG2$8iysvBotw27 zUq*hNqUV;-peSTBL*54$^Z8x)!NmjgNG?YUUO1m_uRKzWjQ*)nbHn1g7_(=qaK{)E zR}TV;{&YedktO9U0_?K*!)orGg z1#F@X_@~_$gk84pTp&h%DGjA-2UXSI+BM=+E^|_#EQwR0e7~g)w_}7apq>X=>!zYg-d{`efL=0pKlz% z%5U+v4qyHYdM*dHftY4lTc^icTq1eFTBUe}@PvmBg4?qRZ?p z>@vUPN3?!~T>SenGN0>$Pgx30^zYE-gZ4oeboq8ufQ4aThq=v?$HH)7huAIEU=U&9 z+izY0L;JZt^G)g)`?Je9q=GGV6Ucq>lDV8kKw%uNa99yCDL4U#7*2SZ3N}R1UC_>+iK6!9%bXE-UjscH_zSn z4{2uZy)$!X=FZ%CGk0dNhP_S@w<5!n$k2BN=OY|a`w_avXo4k@uulOvbjB$&A2IlO z-PS+SI@mHY*>cFc1#)^8v##mo)M23G1`oS^ikjZM!C14RX6<+9CY8HER5&+k)mtR7 zWgd!nZc?hcvJW{P2d;GPx^|KuV4qc__iTsZ^80^oeyH;~<)5n_vGh>swDE+MeHH3c zK-S3Q6h@OS;b&OHx*6v*_-4#H{FkysuR%Wo?Uyj#>kFlQ2n8--#U>^h+iA_tI$DE! zR;3s@dlH!s0z2?NzM+eRjhbdG`mA~|jwYit!&oDM@G%P3l6yvv$I~ZmItG1K&smmP?-O4Z4ywwF;`-_vEXsW5p zry$-7@7xLj{a|7q9!`H(2%BzAmuB&MKWg|FAwvg%mp@cEu0+|On>xP8&AzoN8Mp2@ z2~^@ke-%4vnG{N>D=l}5?SOly?C)WSLF5uBS_|z`)qk`g)NmJCu&|OlZp+p1S@}>m z!r=lwlADEf>Xabq1E}!Pb?sn$%-98yy=Tm*n>rl;JoxJYDI@sEjfD|YgP61@t#)Ng%$7P6|HA#3f1uNu_eVe)bSIQQL{r~dZ(@g96) z(L*={)Nm)Z<~Lh1&4;W(%lUXWPK2EQB|F;(+J4YZ{0{jkG6vw^tr8gqMP;o?vj>N& zTPg#GjGOcgnV<05E*J~@Z>Bq8`&+wb95IWGqTOvG<^RG;jvV2} zLWQH}wTeGec0{P}HN#T;C}%sSF0bFf+3OX&m8=oU`9xd&JzE|1xNWqB-S4UB?-dKE zxPi1fbO~c7F4QzEa^MnDoJnHh=yvU9WKsHbR@T3s3J6?v5WP`n;4gmam&~)~+HEGr z>&!SLa^)HrYP|L*lV&WC#P`^?;UnkzL6cSAcxXpx z;5wFN6E=3W=3|3?)}=?x#yiDKyl2RqwnX|)#3wJ}WD53;F1`PCQ`NnF@(ddg^MF<2 zkc*hDcTZm2YJ4A`ZR9vojA_@ku@aF}UoiIJ>71QZSjb7yiaj%NV2hd`Z}pKc+!;Zu zXvK;@v4V7LU(44N&w(%0A~R%nDSz>^0A@oXytH4_p`NwHQk3DN7SygeW<#|vRC>I{oq%Z zr*QPn*;pq!M zas!xdg+ITsT*R6!=l<%AV}SKSAZN0ckF9?_crqB*ZTdq)*0k*|u?f=on=ST#9IkGf zx?HTVUzn-r?+~bt54W^*Sy~9~G_qzA?Gb&v>u2><@3qPHwf8S|hCUyzd3-Yrd#vQ@ zf^C>-+QKqhbR~j3g9wdmD{BKQW%lW^l%?a?i}d*yPyrb__&s_!{q0?>zLRztf=8%f z^h^Swteov$&_DRJ7(5L+;hN89W84mFZ)zU7k06x zI1jLWjvY`Q!{zD4&m`C}_w$Y2&(60l+bkq*U4ZFZPu-yKA1iY65V_@uVcmfAx@i1; zfQFBiN0u7TN%j3}4Z50q3Bcg{_AY57lX-o^FB5y#&_Qcoy+ix-}L zNRQ}sE8&lvC{M4z`p1}HeG>q)C(3<`n8G^5hvdpN|0WhuHF_ zFbxrBo7CHqJN4bAl~H_qjg_^DsNo-!e%-)o6%NMk#IF-ak8_57yFn3ptsGY>X%15Y z@%i(jsruX>47%a%Ah6lj%Clyv+jVFJf$`VMntYH^F46T>72PYIz$9XWg3XTm-X<-^V16E!QW*5|w+Kz~UAsXV%0;kMqdWm`Hdoe8?x(E9 zhfQ|>S4Pb|u;9>fAbL*$F+o_SQl8n~GGv-p>1F*NN%qQFdgvWbtNk#0bR!P;RPFErQ+j*S%-zfp{yurx4`zD-TRC2yUd?@m4l&WZ zuito=y>kzS(!~aPl;CCe7m}bUjF+{5cY?!!1&_xs-Kti)>-U}mV)ANvASjwHZsL>Vho+}9;en06N`W=ul+ zcI)a_oJqyZca_iutK=IyDo-?<*5CF1C1@2h-?3|dry%IYsi|$&Rhan(h<&fn?^yc? z$a|-e{$!&z8)xzX&fnxW579dg8rcn!t_&N#ipF(o+O)0=b%V`zfMx;ehcQ;WWSq9q zML2TX3Re4o2{dWiC~P*{rRCUW*(vJ_9w&7!OEb_6Fq zns)AsLXGQ+su!S4v!+!3*o#ae2sJFwauqnZRJjX*zyb|N!r?i+FhHsRjQ1l@S_mkO z>1*e~A6R&-if3!~UIRv1r0s6S*aTDk%`r@y7DcGu)x8MpTcl0Rm#$UsTZuqokv3?e zZcBAnxUoY_82$4O_2}PzWE-BlK?hYgllJ z!7TMY98K*UAbgl?Y6on#6{q}$F}$^qv)xE@6JXB8nl=JE0JlUp8TVqRJigU(zT;8W z1=h~bG#KKBezBy{aXx9=J`DQAVnwR!8nM=Fe4E*OdI=6&J$xGQ!eTACkQeFBX#|Rk z^OQSDBW_rnGlO*O#oo?P`%(;&v>7O2euxYsf0o+8?m>{1mT1~b@Z(`TQnzUUH-r#2OP(1AD!NqD1~7JtwprZ|Kz^wf zvzSAq_KqGx|8N8At73k#-SH5_3>F*4pmg&f-7r86u=CkNXmP=wUZ7&})*Nx^6PW`D z7F)HMb@uKMwuO&>ZsSU1{1U7tueBH_2%W61yZeN>ZWX?}pPRFqnnsLhn{&?2aTWm> zbv|s{hgxgX0&})hZiM#3NU9xf(m@Ud;SRQG8h@0$N))6Y?*k;&*3NZf$ru8|xJ}>y z+!2rk#41eW8HCOu6egji#umvqRw$)is}Xs zC6V5;-T15sur2&yB#LdpgtWH--qB^+Y1JO@9HJe!i?fR!Nd~Usdm`Ch;7d5Dq_3px zN5FUEIG3kU2~^%#>h)6nBsx-wuf1R{rk2Sjwun}P4+8f zn;ZW0)`!`Oo6c5w;a_<`%5XBqJ>(Or3gk-LaZ37I@ptkR`J@dwYDYWhGI16(ed=LW zdkfZKNkZb|5*d^*bC{NZf#^I&9@|Ho`mqDN-7L}>#Jz(R#F6bM(wC_Lr@YN+?d)dqIYQhPq8i*}dHy|^qg5M?0+s}Q z90oYjckyv#1#w4Dz<;cvx2p%l%O_7 zJ};4KH?3eq!m&t6LsFrSiA#18>RrAT)ulLz8d*+VPPjST+c`ja1ZM>!#N|a_j_2RQ zhqWJ%4g?*~5mx{nlDdn!g1B@ja!gr)4h@i;@DW$oNtyz$TqH|L1fT*AE4iXb(-|bL z7+l=f=^7A-*Oo9>0v_+FhN~DxG^_%`Qf6pdcA~ez+Vsm zWsckWEA^{M2Mw`Gw6a)i4y-GacUSI|Qh&m;`N&>r3?MVPe{8ZG4>W>fU zHBudU#fhS3kV?q|ni1fFqf}IfS^#YpZU))s;3g1d0&X_LL|ruJ<`tP0;UvNZB;dXy zCFxZXcn6G@fC*wGoQ3NTQ4g_aC?}Fy08B>t)i8>w0GS%)qCz~8SKVCH2QL`(>WBdE z6UlxJsrf-T3pW5a>!%GtC$Tq0si+PEkpvf`PNS%dYTwUqM1i7!_zPSJ2uI}%Af2pe zx&%A}2MV;YAqk9L6+R?01oBWsYRCYH!7ZY( z{BUuZO+x@RBmo~pG-MV+GWiEkkTCF*d4t}TiIiC{K*~ASZeU)to1OfQEhSmRh}ELR zdDKa&q5*X>2~eOd%Jm||(6~ha!c~yI5>ic~b!Xv5eFTrJco~n!bV037JlulFVA$i^ z09L>m$0#JM9FxqGIpdqFUGfHUPk<=#9z02SQm5eoZ=O-GAZoZebw>1Su;~fBg=i!2 zM1Ba|C_I^WoumOw+kXN;PLRaM;hTW3^bS0Nd4fj=b>N)+?epa=s z1b_u{jjp94wkV>Sa$6dch@jVg4yg?xTEaX)Tp3_Pe<@nb3J;2=mV(H_%qIyRRdnT$ z&H!BG&2fM@YO^6e3}e;Ik;iZ?rkaZwb*>}G3taQ8&NR>2be2g4WCAR!u?XQ#nWvB@ za|IARkIN{N7MNeTkiQB|%e^oaK<~LBMO+aC(ace_f%B&iq77n58Kp#Fc$n}I24@tr z5wjsz3bEbke|-${uS6uh--nO_*!85`Il^ZpQ4k2U;5p!@eAb3+xD(O@fGB%OPn(Ze zQ8Ja_z$Vy@ppY`)Nzy0^HP_88y7cEzP*I``N)`YP1rEXqRL1qzP@2&_(HhVlf`6Wn z^*$Y`(#JP&q!$9UQB*iAKfstML2<56i{J<%h4qHuUaLNyr2^nG!bqlo>YUs zu~D>?$^##1(L2US`qrnI8z;}w+n!?4?J5aVTa@y! zm_vI;Yr{;aT+it5vuug8waC<2@0{krv#+Wbg@s;5>vd8>$S(2hs>;W{T&j=|yzTZo z$>PmVeChS#8#g|>mVMhlW)4JN#g<4@VA2&EiG%`1oyYm5mk>=ha~1U|Ef)EJEzn6P(4+7S#GzbO1x3u*kbJ<6eB2pmoh1546heoj!!=%z1d&!&C`{0f zHX-E!1*l%oM-}P`>~cdfB7#4OtR{abR3RY26eI!A3{prWp>_&j5|0k4NqF3M_-S)I z@D8?F1Be&{Dco=bgToMoDocQsJXnC3xW5*J?!qq{g)V3sfO4SfsKPwHaUY_NQ1m}F zJA%2wfehvhsH*{VBsWz{7?qjyLkBfCjvB%ztTGhc})c0cX(E`osfi|C_k?hv(th?+~lW~Bmh-$ zN}sPPU>%udgoG4+1b#xeY=`4`I_92VW<1O=W_ww4z7B6tfi9S2Zers8UCMV$_aiecy}V)RBn+-u+kNzD}{AwdG*Gjhe~Ar*17YRrq_ zL{jrn!bK8D%YB1SFynDLotWQKaNvk|sU1Uwn3Qt`^Lt`*QlW<&7$5EKfM^IcfNYT- zxUqSuBZ91PW)GR+YJ`MA%_R+D-X(I!S&$K?K2k&r#e zvL>8YP*YihF899O5Sqym12AG3V=8J4!&iFZ+w2M2lwSKC7Q-kNdYa8Y@-$nIk?ODB zmcMxy{LQ=YZ{9`!?_I}LIp;{P`wnX~V8|lX>4%m5*M0seg@+N9MBkA#{ eS*r~rkypr_Vae$4)1N)fnxt0QkZ$}gYx_U+Oj{cO delta 52259 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�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 = applicationId; hasChanged = true; - if (FileUtils::IsReverseNXEnabled() || recheckReverseNX) + if (FileUtils::IsReverseNXSyncEnabled() && (FileUtils::IsReverseNXToolExist() || recheckReverseNX)) { // A new game starts or the real profile changes, then we need to check if ReverseNXTool patches are applied isEnabledReverseNX = false; @@ -379,7 +379,7 @@ bool ClockManager::RefreshContext() } } - if (!tickCheckReverseNXRT || recheckReverseNX) + if (FileUtils::IsReverseNXSyncEnabled() && (!tickCheckReverseNXRT || recheckReverseNX)) { uint8_t flag = 0; checkReverseNXRT(recheckReverseNX, &flag); diff --git a/Source/sys-clk-OC/sysmodule/src/config.cpp b/Source/sys-clk-OC/sysmodule/src/config.cpp index e9ed175a..099aebed 100644 --- a/Source/sys-clk-OC/sysmodule/src/config.cpp +++ b/Source/sys-clk-OC/sysmodule/src/config.cpp @@ -84,6 +84,7 @@ bool Config::Refresh() if (!this->loaded || this->mtime != this->CheckModificationTime()) { this->Load(); + Clocks::ResetToStock(); // Reset to stock since we can't detect if user set "Do not override" for specific module return true; } return false; diff --git a/Source/sys-clk-OC/sysmodule/src/file_utils.cpp b/Source/sys-clk-OC/sysmodule/src/file_utils.cpp index 8f91a1a2..751db251 100644 --- a/Source/sys-clk-OC/sysmodule/src/file_utils.cpp +++ b/Source/sys-clk-OC/sysmodule/src/file_utils.cpp @@ -21,7 +21,8 @@ static bool g_log_enabled = false; static bool g_boost_enabled = false; static bool g_boost_start_enabled = false; static bool g_downclock_dock_enabled = false; -static bool g_reversenx_enabled = false; +static bool g_reversenx_tool_exist = false; +static bool g_reversenx_sync_enabled = false; static std::uint64_t g_last_flag_check = 0; extern "C" void __libnx_init_time(void); @@ -131,6 +132,12 @@ void FileUtils::RefreshFlags(bool force) g_log_enabled = false; } + g_last_flag_check = now; +} + +void FileUtils::InitCheckFlags() +{ + FILE *file; // Only Enable Boost for Mariko if (Clocks::isMariko) { @@ -162,7 +169,23 @@ void FileUtils::RefreshFlags(bool force) g_downclock_dock_enabled = false; } - g_last_flag_check = now; + file = fopen(FILE_REVERSENX_SYNC_FLAG_PATH, "r"); + if (file) + { + g_reversenx_sync_enabled = true; + fclose(file); + } else { + g_reversenx_sync_enabled = false; + } + + file = fopen(FILE_SALTYNX_PATH, "r"); + if (file) + { + g_reversenx_tool_exist = true; + fclose(file); + } else { + g_reversenx_tool_exist = false; + } } bool FileUtils::IsBoostEnabled() @@ -180,6 +203,16 @@ bool FileUtils::IsDownclockDockEnabled() return g_downclock_dock_enabled; } +bool FileUtils::IsReverseNXToolExist() +{ + return g_reversenx_tool_exist; +} + +bool FileUtils::IsReverseNXSyncEnabled() +{ + return g_reversenx_sync_enabled; +} + void FileUtils::InitializeAsync() { Thread initThread = {0}; @@ -216,23 +249,11 @@ Result FileUtils::Initialize() FileUtils::LogLine("=== " TARGET " " TARGET_VERSION " ==="); } - FILE *file = fopen(FILE_SALTYNX_PATH, "r"); - if (file) - { - g_reversenx_enabled = true; - fclose(file); - } else { - g_reversenx_enabled = false; - } + FileUtils::InitCheckFlags(); return rc; } -bool FileUtils::IsReverseNXEnabled() -{ - return g_reversenx_enabled; -} - void FileUtils::Exit() { if (!g_has_initialized) diff --git a/Source/sys-clk-OC/sysmodule/src/file_utils.h b/Source/sys-clk-OC/sysmodule/src/file_utils.h index 336e63b8..7cc3cac0 100644 --- a/Source/sys-clk-OC/sysmodule/src/file_utils.h +++ b/Source/sys-clk-OC/sysmodule/src/file_utils.h @@ -26,6 +26,7 @@ #define FILE_BOOST_START_FLAG_PATH FILE_CONFIG_DIR "/boost_start.flag" #define FILE_DOWNCLOCK_DOCK_FLAG_PATH FILE_CONFIG_DIR "/downclock_dock.flag" #define FILE_SALTYNX_PATH "/atmosphere/contents/0000000000534C56/flags/boot2.flag" // Just check for SaltyNX boot flag +#define FILE_REVERSENX_SYNC_FLAG_PATH FILE_CONFIG_DIR "/ReverseNX_sync.flag" #define FILE_REVERSENX_RT_CONF_PATH FILE_CONFIG_DIR "/ReverseNX-RT.conf" class FileUtils @@ -38,10 +39,12 @@ class FileUtils static bool IsBoostEnabled(); static bool IsBoostStartEnabled(); static bool IsDownclockDockEnabled(); - static bool IsReverseNXEnabled(); + static bool IsReverseNXSyncEnabled(); + static bool IsReverseNXToolExist(); static void InitializeAsync(); static void LogLine(const char *format, ...); static void WriteContextToCsv(const SysClkContext* context); protected: static void RefreshFlags(bool force); + static void InitCheckFlags(); };