From 63f7b2c07a22675c5594f130bae4f0effedc3c7c Mon Sep 17 00:00:00 2001 From: Dmitry Nefedov Date: Mon, 6 Feb 2023 14:34:19 +0300 Subject: [PATCH] Updated Wrapper, improved post actions --- Wrapper/Config/before_after.json | 22 ++ Wrapper/SophiaScriptWrapper.exe | Bin 2396672 -> 2398720 bytes .../Module/Sophia.psm1 | 21 +- src/Sophia_Script_for_Windows_10/Sophia.ps1 | 2 +- .../Module/Sophia.psm1 | 12 +- .../Sophia.ps1 | 2 +- .../Module/Sophia.psm1 | 195 +++++++++++------- .../Sophia.ps1 | 2 +- .../Module/Sophia.psm1 | 21 +- .../Sophia.ps1 | 2 +- .../Module/Sophia.psm1 | 25 ++- .../Module/Sophia.psm1 | 33 ++- .../Sophia.ps1 | 2 +- 13 files changed, 200 insertions(+), 139 deletions(-) create mode 100644 Wrapper/Config/before_after.json diff --git a/Wrapper/Config/before_after.json b/Wrapper/Config/before_after.json new file mode 100644 index 00000000..2bcc75e8 --- /dev/null +++ b/Wrapper/Config/before_after.json @@ -0,0 +1,22 @@ +[ + { + "Id": 100, + "Region": "before", + "Function": "", + }, + { + "Id": 101, + "Region": "before", + "Function": "", + }, + { + "Id": 200, + "Region": "after", + "Function": "PostActions", + }, + { + "Id": 201, + "Region": "after", + "Function": "Errors", + } +] diff --git a/Wrapper/SophiaScriptWrapper.exe b/Wrapper/SophiaScriptWrapper.exe index c6121263de357132955bb3470bdc29842709de8d..e2f82b2bc84da752831c7fb67c79eddd5233d58a 100644 GIT binary patch delta 72302 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 delta 70480 zcmdpfcYGAp_x9XLvI!|9%chYYAYoJJAPGos3L+p)M4G6G2n!ojFk}K^Lj=K5MpQ(^ zjtYo~iip@Nh|1TFV(*IBOL)(7&g|?=0^j%dd;fg-eDdr(r`>k$%)K+S%i@QxQ;YAo zPOZ8s^Sa#c-q-AZKWVMBB)y}iU9|evo8m^At+gua(B`-k&4nr}v1op4O)DbHi_Du; zg<4=fuli@b)324bV3g7n$@^)VFT1y{Jrz>~ud2-ef__mh<(-Q+hvP#r6 zJ$OG^YP#OwyT_bW&{y4Q-e1sF%`y)aunoW@~wfCDVi=u3^S$1BOJ!D?%V%yE9ile$m&51LkY^S-$#hx_V zo*&iiF;}?Qv*wenqq-N&39}|;MCvk!Dp_{{fv(rSY`)^s%ywyBGkaYyNlh`&Eon{d zzPhAMGMIjI`%N@@li02T*18K$OBA~63fI}%@il+G~ z;9he}+kEw=xwmbvl#i&Pp_x?IL|?et%nsg=(66O7HzrJ-(Wz{Pnr*Hv8>mK`2g_RZ z9gRj(=G9hF?BHqKWW9DE$S5YY2k2O@T|yY59HeZmx{FHHYg>^dTx0evA55XXswfOn z=fwt{c-3H$c!NM9@yxyDrD~!1Yq``Re<+1@Id+daHYuA%m9*a4jHWqc*Jif4p+aiY zrnOU%<2TIgP?@J{%u^~)q840T^1o=o2bHbW!t2_Vkl&p4`MreJNc11oip^iYvHdFcVzYmVNr6NZiFz0kARyA;^6c+bZ zg-+{_Jq+fE@`&f<@T8Qt3pP7+h|6=ldq5r;#K9n=%#j`P?LwEEt2)?SFzsB95UFoZ zx8D%I<&`3+D@^-nY=nJv4t*5B34 zLu1=#yi2hRKrKa0Dxpr^@}3rs^6^3&M}gJ>5H-bGjBNwlueQZJTx@6o&|;ZLQ6DRY5boTf}5y zw-Z!PmObvs)CqNVfV)ptXV( zW3rY_POFMUSzFaM?KYTv@0jdhlRq4jKGkj0XuS|?{OFkMXOmm2BT+uDE{WBQpJnua zhAluwpXp&9{lm}zWb~Q-MAS9<=JFmnt-_z@(6#0&8u1WaFB1bkzpwg^WXeXp_8x@z zRWnx)C{6lRjw#$V=AoVe^*z@r|3pfJBTiHqkZ*bf%#Hn8#&3elAL9Op9JBlW69X#4 zEbbRHQ+kp6Z(eslI16Ruf78qj{c__Ug!FF?R`|CZBN&pF>0eHiUL5)tg#ObJa?SkU zER@iHO6aYSHc03OIgW&8`mYmZ28VvXH--Mk5lU!q7E0)UIJEC!NR_#2K-)rvISi0W zGo^`ck4HU6e!34uKH4ZUI1456QHi_*(pZihi^u?p%rwS{Y;xp#`%+}x5ptc=z*#7f zb@T9$Jm2F89M6H{p$AA{ramXe1`fQc9|ewcgc2B>g%UW91MfoML=Kz?JwO68ZRW(- z$$>BKPk|F0p#%nJp#)Cgz)vA?3I|Ss9w334COa`+;=q#!P~ap-D1pIQD1nnW@G}UU z#(~qI2S{M1sZNX!Iq;x?6u7w~l)&IDl)%k7@bd^9K;WbR^Z=SyKMhP*dFKAAwr1rZ z3gvGU3Y>)!%Fm%*La0oHD$0Z&Aa!J#;lwDD$brEWIo**;CBa!Jk<&TytBBl^Be#Se zAd#77J28gjS%(W$(ENLFi)16q5ld)r7E0(W4!sYd^Eh-K^Z*IXG}nnSODcV62vs`A zkxFE67E0tCikuUp8HMJa8#`naLJ5%bBGUr1--hbK0%!noUSyh2)OB7Q3~m4#%y z#T9v;vt_(LzWP+UT+`X|O*E?5iFC76{jrm&>P3!Jst(RViC<*a4bAdnZ(y``EO)bi zAp|THQ>LvPBMuh?HvnRTBfGkMB@eBnv!tdOrQ9>6Fa}7^FfBpPB$Yq|s9kDy8X8c% zLNI3!&4~#g$}{s$$yQ}NWM!}e$dECmeX!kwze>B04x@Irb);NT^VOjNv(4xhX6kUC zs^nOehy{>XOe-9(Kt9igZ%(0D<&ISP5S)e5=yJ1obcXp81@6FsJ3tMPz)agaA^PN- zo%RRKSBF!^wsWKs7@UO?xE%t=(+Vn9H#&3Z&M*K-Xr`Ta+4zW=E%Ka0FcN`dpSX7aO94sQREXHp+p8}p+r8BBIl}p9J3!(0Ex-8uj9U) zWBNx^%s!4#VuG_!V)o(M(kh8+JCGv}gaJSzGacXrxtAmVjL7{Rp+p8}p+xS_k+0^+ zLpbsf7yu+P)4@)V*EsT(gvU|j)Oe)8+%qm)4d?m~haEub&-4_c604c1P7j)QjHCJwbA(cV za284d!?^ym&Z9mb$&p9G03eZ>j&OqX;>g#Ir^s|(wu_U<;4GBLr*h;K9Co|cUPk;eHA~QYR3Gy08?tBJC9`6VxGB^t*@_3HCiX)$i$VF$u03eZ> zPIQ9A74fM!Fp)x^;YcMkI145883=8*JhOwd!QVFW%mcAK`F`O4;C3M0I|y`4(uO6` zWflMQ;G}I+r=1?B{y(}=nlOcLZUl#!w_i{}NwfEYJi>1o6K3c29B1GASU>|5$|0iH z@?jnw1|!OaQ6(RW(ws6Iu@*6|b;YWSn)9J27T>s#g80ym^%F-)nL`n`mCyM}#dj&v z=7!%WGK=SS)qg88$ImUTzl-A5+(K)NaCR}>EL%rM^C#0yjL@xEcgVu%zv;2?`EU9) zqz|sASfSe_Anr*-1?E3^Pg5{o5L1|rs_v~ZivrZ4?Qm2H2+j1_>P-z`W6WWGe@@LV5 zlc{E(1?|(uG#1t^7@WSKX^chY+Y8=Rmzi4^=BYL2-i0}YUoV_aIQ$Yht~NJZQkr`c z;_(95UmRva9YZA&F+aIvvbw|USDUAN=H%Ko>Sl9k?Mc1Ywevu<&A z-WqgFkeZp%pfVd&V1R!BO(K6Ef1mIgbL-;iO$-M52f7Wa&6!L3rLT{KkB;sl^T{Qj z&^TsXBonwMX;N^RVhdHEQ1 ztV#q;;|l0gubiZ-j^^xT-P9N}Z+Q>%!)0w!kYn5@QvwNo^QWsb%{EtOkX4VXH@R$Y zBadCnyOZSC<#*IS5NT*iv&z9*cn48>4ltT#OwC^E#PA*x@KKO9w}}B-6j5jE;e8~o z8$(uFMGDbF4%I4J#_~fz8JswOTxEh5K7z1X_&H6Ro5W?*yiU=QHADYKH(y&>n)Z!O zms)__3I4_$xgw~h@w#pruEGFW*D;-H`X8#wm^0N5&Ld@s*k#R|blvKnsvn zAJfT1Wu zl{w~^Yx}90T-llM07zw-o=24}F{d60WSj>r08fh&`N%lOd}&p6;W^L%M8ouKqEgum z(|@R}7$%U(Y6M4qsd{?oKL|I2Bh7#rKq4_cm#9Q)%XRK?ZH_s8b#VqpQO2pczj^hw zG;1{D0<@#>0z?5wJDARrD1$QT(cQI=_bvlB0JZO;cpSZ6L)S-K#}ke7#hUKO(>>AE z{mrVK$>uHB`RTD1?qk%z7a;MOhIvrK&;Vpmna*>1a2~V(X&uu!yvUye4M2vQ>1?9X z?h$BrDYyZUF2s@Dh2cdwZQyRPF_**5g(*P7F%1!wa8s;NJycmPY#@|yIEsYZVeY-Y zt*XZYG^rkD0NVVfuIXU*y(5reKn9TTOzX@&PgZ5rK?9H$GOab2Y^+MFg$5u#wdS-n z<(yWRKmiaJrWe5_<05DP;==So(&Ula>`kRdYSKAfs#l?koaN8AVj;K#6X%>HKLd@`3laoD-aSOna1>T&a}&+ z0Z67Xz0Aq9%b*2Fr!rl_sj&nafOIO;#Y7{SHtoj#$*z1_%1%q+1P~{tmpV>U&?R}` z20&Vmqewm-p?u0W8*WNe7IG@Xf+;{YHB8s=kgtITAO$hK0hyI{12h0>5eaW8=VV+B z1wdSwuHs}|1r0!4n6BhxTnP<8d{&yx*GV$2fC3;cOqX%ZmO%p$7p7M^$#@mC07*t1 zg*PJ^ujFLB5^8|-4UQr?&?p(NA(cBB!3}_TGF|T2NHTu5j*{_eN62UPG;kJ*2KwvzZD(;NqVO1IO*3x1CXR=dW)0vw?GS!!DG6X^LH&Y02w@{Hxi8` zJ*Kp|J`ji`Z1jA3GyC5Re}MQiy~*+C{LcqB0MbqzMZz6vV^+SBXWn*uqT0a|U2}WM?a%AZ0OG@R1N&@%1|U96 zZzGMI_HTn0ATtd|;pZ^Z*7HnT4>dqW0Y{MpZ#2{HAeDQjfg1qvWV+F@k(u`RU6kOr zJ3>ita2AT=?Tu#I-8|DK-+kPfcE1x(u0P-gK;kjo0^AU@BSA3q>-?`bFi;==SvF6K#S0OG=Q7inZp?1B~`a{@=<_c14);32V_89b&>IX060k32}DzS|MXsDram9Cu^XGos}@@0d$+gBt)bXZoCD zBgq}uT%b6(dB)~|+4Z(8SG-poTgg#y10eC3zRWqAuq6^@#1@WnjEl~I1j@xXI2YeQ zAb{i|)BT)_`=J3yE;4lnK?4vMrtfk>z6%XNe3;T(aQ}!3o0%VwQ6#kut$(;1)sqyyoHya*npMl#QvTx4vXH{R#`{r-a)WUBO0w7Ig z`VCR4wzF>rHvqD4#*u5^{IyuqzFGF_A3l~td*^)hGk4|B@C8VGriZyJ4?_cxu4MWX zY2?nsPtXD+bD4h69sNBt0O=B@-w}0nbSbz2kfgv-bi0OG^+mq_B|`~odN5(h`Jkv@X?-R%g}0BJ9djOk;KP_4~SK#zF;<++!M}n|;mh88J`+q)VA<)`m1yU8q3?kUnL4)M*Fb zu`xUC$#L(cb@9~U2@p@Fil{ruzzu-(0FEL_#+&J+Tz_u$#5g2brn&W*wi%gl07#NC zrCV3eRb^yA1CZjFrjtgdRywo*X(7`z_Dh2XAbw0!9lum)0piD$29L^1fd(LcOp_hI zWM~26$25Wc5}*NyAJceKeNvSZ4-G&P6i2eT_L;?BbnfPZ8X$dzqvIrK5~Auy|92GM=zHr>7cEE`zQw7`rNIa%3 z92;2{9ejbNir*1RMZj4oj($|6@j{1Y0`IQr-4dD!`S1Y9OkkQPGa(NufXoD@xiS-S zp#sRbG0m2I&V~vg1IILrsPweVgq|-RYjd3=0df!kAOV=RbOOlk8r%R#J8|Sp2<)y) z)d@TgPJkUi<^j`goL}9b0Z1uKyE=K<6RArK6~YMRuBq+xG|+`sXblWLJJT#rX^fl2{ZulW7@{?YXdDn z{Fu_?VrpIyGyw5qTFBF`5E_6?I~>VQyMU)%0n`8)5gZ+7+O;N?d)k2;0P$qn%CXsC z9coR}Zu&l&cEyfVvK^d-;#u5i+LiLO^SyrDX;qud-NUcbv@3Ij zQW0<#iep)$inQm7oWB3K73t!{gey+P%7a_psia2ASvr{hd} z-fQ>ZY2O1L0Gakot9jaIR6_-jY0tDurY3z=gx*$ziodPEv^!Dv+@Ai1dm%gZtyc81 z5iUu?;R}$d$n+G>xl^D4NK~fuK-JFiVbB63SD6lhU)m680OB{q{NaFXhXz9d5ErKO z_7WZX`}KkbAbw0w#I(ph5gLF@3moxg+e~}w)F#{PzNB@h zKDYspabw!Yv9UKoZ_|L&*Bfm|8E|kGieqmKxNBQH$T6411~&j=&UBz-BZRp0Mh$RPbKP3yF1@?r5$gq&BxzQr0+T+_og5KKyr`iWFFYb&;TSf(@9Q3 zOoA353Bhy%{L&^s0}#InX2%aD_fCfbATCVl4Kd2SG0*_Sh3RNMwT^}cAUT91*;1dz zCyp!LZ@Q%(Pd4sM0yh9MB233QHj+ucgOo{Q9ie0rI19ybY@k?8)zsL**Hvr9y>4Ei?e}W4hAuTL~>d z{Fq+Nepf>S5I?5NI2D&c1CUh2k!-lH;#9l}YJhYTjv^V*=o#AzQn^zR+yICt(`y_X zNyUnvC>57GLP!9@Fa`n_c|G+cXZ-7Q}R< zQWJ0%il>R1G~RF*+Z*onJPFpr10a)t>8&yeZiNaUlYr?unFQ;g0?4>Ay-8B}Ca3^1 za7@<{bx(r#4j*g7eTxLR1pxpOfa%Rn0NHSZ8vto1j-0u`kF%3X{iW51;&I)1lqbWZ z@BqkUV7h}dZ3i>}DUazRPKG`LEkIhz^da_p2pWL+G2QC;ZG{#feoQyB-)3k4;>YyC zh+o=+&;rEoLG$46vh}_X3V^sVy*J{PaWAw0abtQn7k4)_0P$mbm*aOAv;gsAdOQ2w z4h=y3m~P++xB(h~Oh6pT*84V|fVV*nkg>thaVFrMq;gL{a04KoOz&`PWCE%`X##F^ zgp&5)EELC$jV9ndJOS_g^SBf60VkeJKyU*f@tEH4*vPVS^j}nwO^#410?tBl+|;Nd zTeu>>|8?AoYuMKZw+fW%|^uJ%0Lc7j zx>FX2JD~!|{Ac>O%+bf80!VT&eT=AklI#Dt*T3|bJE^U|ZS@hpExeECTVGysXu^ff1GUxOAPNz0VJs7n{Nm!JWN-%I9-qjF(;5ek5~FnyMbdKMahxG;Uj zDe4($0piDWH~Z~|1|WV+pTzvgei9mh%nuyN9(?n^P50nWlh!>4zzu+mAk#gL4bOoa z{#7*ePdP#vdTXYspn` z10WHZzQVa`jnJJyYjg>8jH?nq?|zfB@=e47NLDg^L$dM>r~s0cO!rGx?uQB>L&EfR zqOPp82F55?T4HD3N*&^CJOpomWFym$d8j{z1|V^ne&nRcN6-Q!MVP)1zqI$E0f^uG z);^z-bbJpQfcP-|50~{HXaM5F^Z=*T0cZe{Ryg8qxpg>JHO;GcN$t)na04Kt!}J}; zhV#n0GaiZcwj-6q0%xIkzTGIX4m#$NSl|Xg%$a`Z*hpgO3CIUL@a~CQJ8F})rJ2f9 zpYzy%jsO4|d#0bs*nb8UK*pZwr!w}RLIse1WBLhE_t^iQ;2wKy$*trhm8ibv@&6hT z05bkezv40Z3L1dKX8I*x3crK~AY+0f*^_^PGrjdrqH;Fn)}UmyJ1x*LPAjIzuPO2i zH*2k10xG*cu9UtZg`f9|4bl%P`9k!iB>H7A{uLWNoO^8LMf42;Jv`vp%8OY!``Ai+ zD@+g9N0s&NLh-dQJ-i~Sbt^AngH_;|@YorE3tHDqVxnROuQ7Q66s) zn!36Mp{dd}2u+o)L1>~p-#rLTwC+J@s&oxPQ>AMVY^C*JrpipE_sIS7y_H1G_$~(D zRq=lpL-PqBH;2B9u@bXXYx?CFx|fylJtiAKP7F-H!|dl9R@U+)l^aLzcF5OHI)4jm zfSiYLl;HX{iu`g7ednh7_K~zp(2O7D_SBDX14s>+{yPxx8yrKw!A?Q@0v z6^lP$1`so*zi{|ppaDpDrblpM^&f!-ApLPfx3=D{0!hD<#C_2NHvnSB^f$*wE_z?5 zI%|`TX)0jVl&Q>&)sbE`{&CFZ@&?XA3CZ+t$7Yvx*sppf8-Fk2Wd~+yIEpQ7MnEvz>aXOkYVM<$Hp4xP$7D zk$`9b$xNp4*6NHW@f?_ zAeqTDgEKQD11f-ICXW1Z*1TNRmcLbz4mCh(#x!7UI9XL?1fT*)HZe`*jLt}f3Lsug zn~PU-r~u-{G?BeB6QKf#7t>}j=Bf>y{LP>ONZXsmNEW7$#5I=I#rc$Bl59`rV}+IE z7|03>oP`o6$=W(dwR9y%3&);w(3(|10c9oiPyqs_IR+9CoP`oFjRV@FZxsz!ajK<^ zeoGhvWb~P4%jjoA1(0?#%_8a^eQQdg3beAv`)2QWC;OA_@osC6cUwdR$apg?l`~N( zQ~()o9MPGmM8>TIN`TaaX&V{0Hc$a%+?W=LR}oYI@nTviUWHHr#EWUJjCL+m0P$j) zBcn~f6htqAKt(@ml1N7~+65$Wjdmfp0T45$`HqdG!ImP7TAm}7Q3Ge8c;+=ugVv6{ zq`}jzRe|~L_A;wk8-y!%)DjMyg%Ykfk_6LEQ@N^K#=jgk02zO#WitL{PywVTn9|kF zJN}PQ$&vBj;2r-Ie~LZ+RrdH-AtFG=pJ{g)|L#x$Wc+bN<9~vT>>do{-$A%|QA-Dk$8>T%S8)-kd0T7#>Xn(-!d4|fc zW_MPJ`anA+2f_{@Damwzq~rjo0Fsh8qLl0}Y0@7`fV72aKTea}eoz6VXdKx+Vqbm7 z(T|iELuCF9fiXb3pXp$ke}ka{ND)j25%rvZ=eBpvzetD6^)}U?T1_`csH~B8V@Dz) zKpM+*gfw;pQ~+r#j;OJx%1k;HN`Taa>2R4z!=VC5jxar0y69x60OG~;B<`XPCqV^} zF2a%BMbU5gokBu)W`G+2@nJg5v60hieg|hMcXkIF?}rD`O$EExSJ1NnW3=@8Xv6|Y zuQNSOdi^x008(qFqlmhDy&D7uK} zbIEu|$|tKra285ynT~U8WWIqL0I?b8I^X1~DbnjxU;~g|XF6GWeKJ%4X&uu^MBTlf z27v*PGA3EqcBN%Zj}vJ+pJ(^(c`yM;?=qbsy*mRcfb=eosCUnm-aQvefRxYl9O>P2 zpaMwmGMy$FJ`E~>crl$S89o&%fYcR7O?v-q5=MHTeuDsOTmv$3!I3eYSNztN6P&#M z{RB^5XIQCyRASm}3Du`aqk9_RyW3jHGgSLl2WgqI7%Br$`w>(qV zO~2@1y0A3>84Un9k!t^Us3{AcHo~Uff(rl1Pr?*9X82fS56z@7QcG_kU4lwK!4Hlj#~q zDrX3A7K&$0T#5rX0Af?;I>Xr;>MJByuYe&ya+T@jlB<_P1*qlsRheE!)Sauj5EuX{ z2uJp*;|A-&lT@~Ty`87m!w?{O%G8uRHK77Xp5ln|^g79%>!1WkEtsyB+*u73Kyrua z3h`P26+pb0UL#)DKm`ylrdLVET?G|DyqI1o8FwXA0BPrycE&9yi7Vr*GX_x}$mM+l zt>Kc5WsZRi3^)rV&a%dNu*$KQ#5#4blUO$lM!=Phfdm9+p#)s%9%@+IJ!%Kt`MC9WvT?Kn0M|#u1J7 zMj5w_Py(bTOmCNQyB#Wkj2qKi#p_n60OG}Top`N-3Lsug*UD(Gg$f{EOmCFYz7Z;b zbn1=vXx~B-*Ju}l8vrq5db49AX<(j&QM<{J%BX>}P&{vHoCX^ldr5;khuNFw?}j1V zdPgncz*#8a)<=?nH_!LT_}>E?fQ&!WyJh_Eh6*4(!SpVop7CFM3O$ap=k|uS)}+xY zOMk>3?ne*+Aj8dcI}dlpcBlX{+&H3pW2;8k_r@NE8X!e8-6lh~4Jv>P9n;M+;G3ZW zh!@ib#p^++0OG~;J{j=)paO^&(|cvW?}Z8=9eA%j;17_*J>cL5K+Krl@7Tz0`J3Sw zp-qldMhKjR;<>5ufIsBe%Ygqg(jM>uqY!S3qfRmV-BXr|Xpl*?Es^n#ZkV6sLC<^= zh5#9Krn_XrybCITbQIG^B_AGz3LqWDbO%vSKKw)#Yr1=Wf+G|@fd~MJz;ve*fty$e zZUCeaOdoe_WcLhi0K|srV~&kcKbh{4)6pKN0Fs|L zqSMh+k}*#~36N$m-OU-3yBjKil!_yJa=16n&&k|-4#of(2ByzSUq1^KK#E}c3{g*C zj~=H236Z&H)tyP#)xCDp_QD?^O=J3+H0?F00MaxZQPW=KrUhPw5+LQ`Xw4X!l=yYB zSD*t(YA}64dgKMD0OH2I}a<>)^7WfHn46u1EpAEqxkHk<=%#yi`I zA>%#UiA*1FllMy>??)(r^fA-drH@~S3Luqcx{s*4kGnx&0Hi87va8={n~d)y%dLv{ z>@j!`t^gSWrtiuaybBdT#sEh&2JdiZX1oI>K06GCOe}B%AU1Eg&N8{`L+SMoVFQp}XZnHk z`Ug+}q;*W+C+hC?GzbiUl<~f7lk?A}ZSog(?|uOjfb=fY&!u-ihYBFQizDjY&m_Y? zgAyR+WQv4uP0I4mGnxyzABy{zECb$6*AEt+7 zr)*AkQv1Ehp48@@a(p09GrpB@-pz6w-Yi4Kdf6<4MmNjGH)u@>Z<=r6j@7d*r}YQ6Rh+D->QAws{=X|qp>>9vJWd}eK(iFa*wyf{;Rs8qgn*DQ5{ znrnSHOO>{qhqq7Y-4uHJgnmBwLb4C}hy~|bc^5QM5ldSX*GUVn(FZz8ptXYIK_ zWl>S@GFvm7N%m}3^$|8+82yqU49Ns;yM!Ge)~JSfZzNJi`kW?e!=)Zg>QZm}>Z59E zWS~H=g+%vRhc8rFxdlP5_2Q_twSSIknUEjU=K2eR^Q@oesMh@YNKEkTXa~Ap-|@<$ zFO7KR(f38X^60A~UU~FQ9gFYD%NDAl zT-U74I!60iTURbrnXX25^ft0%G)w+i$n~;Y*ZmTA>n;+8)=77CwK~qH$4mPzQOO0a zD$wY-5(1;s%?iz@e(Og4X7@&yT8@m~kXYTV$_vS)JDDIMsAXHl#O{=zi2avN>9C07 z*_|?H(f_?uT3N3wQq$^7c!Je(QqXI{7`^rh>%lse-xsAg{~snwaR^GWiAE=o+>SZg_70j>$|sQL z=tq$0WwNEQ{KLmfW9iBYkXN~uTKx>wM*S$utRHdN1>oeA$VbKxSZ2w$AAf)vAeVKf z-xIZ$TKI+Ipf%|%)xzpkuk!W7{Q6qqVR!+gM5aGEUa|%RHvn?I|H;~rts5dK zFMECV7fb-MK4bbPug^07gbE<*GaUJhKX{py@dtDOsWa2xW%2tvQ~+6=F+IXw)&tY+ z#qTfEmHUP9-^f~8yUCh&zX}#YU;w1zOn-HZ zO#wV1l%jEDG;?gYde(s@^l)$J6)F)=?UT}$(IgGv<;K_fk#?r!OC~%4k}pg%BwsS1 z0!Y5#$Y-QWzNAA3keV|MNWRejB22H3LB&5K&NNl><(I|u(&7ypDmyfX4M3`oBYWhd zzbx2-gr0#q<#P0d-x15E5uAk*ifNi-BLf9)0K_KEHBjjZRTKD?x;D}uZD0zJ{$Sc# z`lB^e0O=1L`HWW5AFZGRNPjRbmi{P)3LyQ#G++8-|5CM``y&fB0I493n#_b;5=IiE z-^*pzjaR6A`xUl>S2%mNk}Fl2E8B}4CpiUKk6eXLEOf-uiQp`h@|hyVq&(?FPC0{Bc#FuoQZLbO=-W&o#Y+z4mI=GE06sUS7t) z%W%oGuhNWeGE&_T1|TEFw5yC%SEv9oQaJJ%U1X%XKnIYKV%k|osxwposTkAt;?*81 zfOs)&CtmHK0*DvWGWN4!0I@0Ov2&$KC&%7SlMO4K)9hC(kue<{3yBEMLW$VHl??&i7$8G5 z07d{ABBuRii26eXkRig6&*;b9mevnCfOK0w>!a)JFa7j|1|WUS^h6n<6QKf#6VskD zLOr1Zh!@lDGD6*<0*DvW6J&&Lxb|2h)Pro@BLr>$q#u}8J2o=Azzu-dFs*WIq(8w8 zfY?+u9-%&ty*)zHO$Q}`=$MX_p&JPm zK!y%SK4XN8!U*U9(w|IEl~FhqDu9dv)1mBTeYM&?4-SM4K&pnLCg;JENaz{?>%r^Q zIrL2^)n1iZy>6f-Q1lWq+%dH~?Qx6Vv@=ez`dz9z7oI{|10aPl9p-pQUx6C{u^Hy- zE4p%2(QAO3ak})_=`aOIk1-uDJvJUHfblL<308nVusxKL;v+ z)Eq}X<7}z<+0X%`=1ix{SWkxvAT?(?MZBg!1rRT$^bQkNnv_Df*|kZxzXM7n(mQ~>FA9Qh1-R|%V`#n1ty)0oyvx7R}j zkZxy6?<$d(RkA@&f@v4R1|U_tP&#%Y3EUm~?M6QB(f>;_%9WUgV`cZy?|0#hS0`t@ zIz$FYWTuN84|NJ#o0Euo~ zI(ICy=!S|$H!SIFmJ}bR?;+0R|Gp{o1x|0vJTzHP&}-+@J&(v8#ap+kHgfC7&o}Kz z?Y>R_{?^EyAxDkd%@OaMhxpD=zlZpy(gb0Ph21D@x3IT`H3-Yx#(urFvENu?jp~3~ z$dN*>C$-#Zck1A}Pmfz*$+~>mFu^LGqq2g@a!=B+cHOpzb&4+EK1{Htl67uMBWw5V zz)=rJ?#nl)duQQ?Rp$i0rxg?Y#Jc}sRYX_W*B<7tKYaZ#4SAW>a=R*|FGEysR~^zT zc$Dm$p<(_u-?`SJ?dtaW)!fy=HS#e{K4?_vrfHCNrnq-{9XjAk8oe)6;I6O}o78f@qPY9#@&xpO2|&jeL2^9K)C8Zr=@$H}U29bPQjXyM0gIsY>;f zW>(EkHB=ealRH&bOK(;Axq{mz_6c=XOK&sr^d}_6S@loQ{99yMPtcDRTq2Eo{Rvgx z{7~eV*QVfqk+TwZae=8%HYt#AMY{`JyGsRQ=zo&?U-}eSZ|_#AYj&$R>&hop$3|7g z^QTCaU#Ch?m3bfXnExjR+1)oXW?;l#r!+sQMWEO%G=vEAydM#ITxpJNOO%iX?b zJ=J75`P6g_UzWRl6ZfcTCws?+*fHzOa`E-Fh2?as+83;q9(kE!Hfjr>&I(}T%@vlr z>l1#uiSOd$)Q9D6-<)SuS-ln?%A&~>h_C3?B0iXn!vrnCpCD7rpAa7(r1@HrHG%&N z&R}~O&^Mban`;Td%|ygb)5w`(C$@Y1U}}r_hD^G+<%Wt$pnag@cN%DM|2-HzUm~L8 z(i|I_tZ8EtaRXmdY4r3?%T646Rw6bebVol{)0L*Rn7@tQy07y1nj+QAfm zd}RXtJdxBFb+isWt9qtWW9f=rOX65MdrO&C$LCb9)DC6zc=2}xqG=NzZY_FFRi^*J zf&KB}T4-^KO3|!o&#IP*)Ss2fnlC&c_a$`4S9gRWEcF$qW`j_b7}|FIA%VL zs7myO{~6L>E}5eNF;Dt8Ky$4{^PsZkyhJMi-MacEI!ku34!opBr^S%EM~9-}w)VWNitDSXNL;8!;FB*@f!LZHloF@Kgkn*Euj&rU+!nrI99X;-PgBE3hnx{f znJJhm@x()S!!4nrUyFp`JveNp`I~Wn^O68Jx~W3~^p)w#e9Dqg0{Q6Snb!1IR4)~8 zZFohs9Eed9Yxjd8kqz7@zJ|;W*3+-5D>`*Sn(+`NGA3mvQ|r;$DOLN>*D=!9u^K5_ z#0GV1;cMK_&%Q=a-jx-zS9O=}E|KnzL3a<`OYfj`wU+Evrs`(x*-x+T1ox@(`el(8 zC4@Fo5uByr9ZvG#YFAC`CrwL`yt)bhO)E}RHjn0+2#{vB3eO6qZ)`y{$!tMMMYJIN zXRCv#6!iLqShfXxexIvOH(7u0Q(eyVX1g8de^d$jZ)Fo2l|biOPYGAQt}aq1SZcp2 z?En8>5KZT{Xoz*zel=NjM`yQc_rD5frM*Fq?EbY%-cYsmRg@1k57Ol-(HBgljH$bc zwqHKI?q+;s)UCzGBFI{3!De(d5fV%$)AB$^T_b<38Zov?j8w$fCNUnC7!Pp_$S4No zCdB{=`pMK+UP^25ORbVOX@*`-Av9VU@+yw5XTD%W!fP{+gqL0($pTzhJQ7|lc_h5D z@kn@iA`-enbMd_D@EFxK32iiy@b%r}wYZ55Z8_}q23O)WrEuh8m66kVT2jJU0~ zk=QI~5{TRCvEjCQB+(^WByx1&MUr~15x3RjW;7{`+v>65wt6Jo)*`g*N_Sg5lIW5f zHuV^LZmY+L+v<^UTRjqPt49)Dc1DViE+!)qZfex4nu_PPMnxpywt6Is(H|}etvUWW zpmGNEz^Ro^rgzghCb6P7B|EMSNwiFBL77f3^UbCLbfO*aDB@M!rP0Y*xj6M5)u~r6 z`0BN-sj7PI9jI_R70Tz|8oI{QY|jd1pc=kVCViBaQ}kS#&ZpC7Z>#Pd6>PCQvMHfz zCra&hyra6MF6ZHl?3)i*f4`$D>aTH+G0%dCBsz5?lIYZpNO*`nUeT!=v58LIh$K37 zuc1L|G<73J(Wx7e@DO_n<01A)7Nf^JlIYZ3>24~g{K}?NH)0f>x)I3>pzJ($T3K zv58LIh$K37Ba-OUB}wC{8!_UxdJ5yVdL-Odk0d&EuXVSzh)6IZiB4Te8cp4Z5x3Rj z7M;2go9NVyNTO3WB8g7jh$K37SyJzrx)CF8tEYHwt4G2;REn0ZvfIj)rupCtu3$;i zEsX4gmSG?#)7+$OkX7`7N>F{QvJdFVWtMf)2dXN+uY3Ad3~MxZ*L|S+reN9H?tWUc z^2Gh-1Jzmev+_Sw6aSx_+goV|RcwBLyIibj6Dx*NxmeB0IfGutIY^7=ENl2d)!K&@ zV!H>dy+>4zwd$aHvD*N4rObzG)uS4paayu>44rXu=qQv+kepC`6Dj#LlxMB@h#u{* zF5i0KBefu{fJ}Ov=$w)|TirfZJ&Ojq`=jc8366DrPgY4#T1YF>|s(y zg{`9B{Rr;rDqRO-8eyUogbGO1$wr*@`t@~8X&vrD~eA6)!gZ|qj z#OU>znk*G=B|8Ahu+G+|&(s?0@h|9s4}@pQ|)=rnTsEl^1s=65iVI z1TEjUd`|a<+JC81=x)!6Us83xg~#+S$>SgKNclqLkz+Z1Si8mWH5e}XjtqZ+;fgOf z^sO+QXzi4bcjQBTPcKV0$1Iy@6}XN&PzW+UMLuTIN5Mp%hI*}Y#bFEUT2nqJ!*o=0qjeRD;%EzH z4^M%J?Sh<(rTwmIy7lqTbkFt2Z&fmd`N0BS}Lr-8nIc8HS z_QJ@n%-rv|eoH7=q<%EUSyqo9R0~yL4gZ1E1=jiWVWoUeDX<!bjPE2W!3zfW(9^%@pxBFl|&c;Qo z}j!|>**bry}R9d8|mH>tmObLRRxBRGD)!%N%iEfD^lIXfBB8jf6A`)&5#xEF=IH}@D zqU)-N4PSr7i)z?tT@^8M^2Q0|B#R^A_IZk5?5wLIappVApzuZS~kVXBjHK$+{}yW;Cfax78Df+v<^UTagUGTik8+NTTa1 z*fd&KMclZp9ycdTozT&BRm6+i>hW3>nKX`9bX~<>ojvQSNFXO~9k<2NK-R3ERbl-G zcLO;EB9ds{MkLX^jYznC9j$!}*}tmM%}++SqMNBwiLv4O9eaOO4=8#sd(rRo zfHc9n<#)A+)~B=opv!ruKU7aS9<7F2d;U;^vYh*F?mJdT%dPxB)i@uXv&S~G=KV_N z=NtZ{8>+*sfB#fDsy@pw@HXrGztlx-PC?DW zJu2zleqXSZjIbqcOP|RJp&RYbj|L1F+T z5YsEgib@;LrCI&&p}`%k^vr}xF5wy};Tre?qy(nR#n;syNDP3K!1QXdq7pVrdmu0X zVsy2%r#+W;t(0~xOaM|E)0IR$?XkMtuL3CsJ;b%&>-bXQL%>prze3`7;P}@`{Oe!> zkoZhjOB`2gATa(#kOqMP5TiBdnDT@p?X|f+ zdJ)CCRO#bd3`e48+4t48_~dYj^^MY7`6qOshd(~PHIJtq!OyLHT`y80tGBNA>b!^U zv()URX&c-}fL~9lOx1M$=1$!hY7M?1s)zB2SZKJ$dO+8!)Wy~py55?iB*y3+2JDO6 ztqIV70AJaHo~P)wqsTiu*qWwTpatCwLNJcQUkD1&ZW6 zXz6c>2~GbYaAgiA^h@*|pZao&nB72+srVa3c(@jvLRAmZ^(`?}K}x#qME{;TtM7zR zB~iN9)t1WtpBU0T%gCe|+qT1C*OE@i3f?m6yb&g7#7*S~z5m!Cv zs@&-jy|}t{Q>R9Bw6(`gZpwe{RIU&jF;kvjhNzYFHY1HK_b2s6sutcwG$}sVp6XG` z&Pq!qXS$t0r@)MkdW$ts#M4%h=$f-tyJ#MAvsfUsv7dGPKx`vB7syBf}*w!y8e=T$f-idol(Z zeBnl}L#&^CdUkzHBXNN%09}cwj*Jby%NiN}8XIj4tt!ZnvB7tBBg0o+hP0-Rt=j1l zSXajDDfJT?xzGv8>8SM_o3X)nMk7Od>CZ8|4YBF1Sw}!ueySB?gO9FYo-Xd-GAy8# zELk!(_~;bivGiG;5~!mnc|2nJRRE`?JJ_GG!FN?7!-vI?@;>jIE-4 zgrGgr2Ag~t}=Rqk6e8<9qEJ^qShp871Q*dvGaKv zy~$>b4L;ge+Y^(gQAJOR&Q@=+6=Q?%VrxS(O`roLtBAMH&gJyHBu*PmXS@+~0@rKt zq?BI32-8~%bL(y)LR%+1M6IQBXKWZt06NJL=Vd_MIvDT+__|wh$fkNN#QeQ@d0JG1 zCt@6A1qG>R`<6jmp;PENJ=WWGo7fwO>oh%2r>DbucpE);ue+awVX7Y$jKg38ohV8* zJ)IR5RAqSO+sk#z=**-K>FX3IlB@AKnM>uuB~<&m^>|;HlJIh>W;Vp)S$}0Ztsh_%J`zKX=|YxT1y)5Y+wI8o@Wp8Co$%Ld z@gZ%!D^{yVWABC{v+f?zOU2kq8cSx>ST^!B7LrI~ZD0PVgO#uLDg25S0`72jvFKRtVqO%9&{o+sLg+T0&{p3xJ-H9p zv6D9_*AWi?_psLTG`)aZQcGt8PtEM|ksZ?h2hmM>Eq~Oa14ErLmo`IO3q;c3?VXF9 z)?xx4YyNFvA0XymJ$+FyIsvzm)SiGij7~r>OhC9{0@7<>mAIs2%J5dSj?_Y@|NgXj zWs(*d_=;xEAto}9eR>_*aghEGBJChuV{4HiNe6ocQuV?Het&}u`FxZvXPtDJ)aiAY zqom_h=T|)ZslhHdSstwVU%SQ!yTa2dZK3xcIg(F^4^enp6zdgnRX5S)Lep!i(8=3T zYArBWO+3^C&=bxg4R4~7+%@jr4WJ zG-5Q!C@I7aC!+XA5XCL+1?dis4PE$aDqc27xQkIvfkk;9w87qFEt2q27=mX7`w;Sp z(u`mjv432Y)}8=ONwg-ogqj!{Kqdjai8hc9 z+6~q-OA_nQx4J*R?g@Mb5_Eo{rbRrxj+R85E$zc|=o(5t#z5LYyuJvZ4H+lU6Mj7- z;!N=dqwJlCpx5GqE1*@hK?R4=oI8!G#V?EoFblXsw5IflnJt(}0xHR_It8hv!H=E7 zU-ic74CBJ*m`?ELkW+YO6+nZs8Ea1`ui(iDrd3_#a^rqrH$DSldgXdO$3;CW2H4RW zpDmoSIS6JO-iUM+KRy~nD~s$9{9jPH3J#9pW>iF4$p0}|Q@t&j zPbG)CyW-P|#3iVwPNRLBOG1K+8w(aR7A$Nm;Jc;nVrm;(ENU#^JEiq*AHGxS7SNK; zTeHQD1i{tOmf2swkVKjml{bC9j(*OnE23C>wxkDEUL~RHXxfKqg-Q#Whppr+J$nq# z=5(39=`!8Yd6H=di{%8!GbLTlIy_70BsYW-UpttKlUx&Z@FZ(NmR?y;7Yn~;?4p{a z^PP@XTDWZ|ZSL!-l+r=Uxx~=P6s2Y;K~nr;*ok#=g_b}INV;vHG@6SVO(Kf(B&@ISGC z?tgAy&o%n!zdJ|^Dcz}syPX#5!Bfz`<>P8-e0&`(*F&e0 z3O86{G+MK1V<`?_66p2k5g4MR_~gu#ijxzX-GtM8Xe5bnXE`*A4s^zr!PDrtvK0ww zSCbf|ZIn-s9+KKRuce+ho5ssuq|qsP#Rlrp#ENDyzRdX07{u{q`c}>ijitkqq;_9X zN8{H1nN*$es1Ds*NTfG+|D=8h^{3;?-V}cv87IYO){Ljm3)MKwpQBgQQ$W8S(?ScKL1vZlzTnejR-R77AFJh3DRkcR>!FFHd`s%)s!*v9 zdyE*(B0H)Gbpcu)I+GwVmRng_CZF7s!AYcOm*tX#{gXS>{YiNzSoZ~Khv-XAXcwEF za`5DY;IqV%4kjj4`VvBvScxCRhy`yV(*3b)5QvNS#|0--pj9yHxh0na2dv(K(es}F4>!q`MY~$bwtC@ zcxBzINH&YW<@*|BfofY;FDB%4m)a()}Kq@EtxY@*>^URlo*Nw$!{ z<@-5g6}>#N_4UNVZ+eB@dXsD{fjDCf!Yte9$S^|T!?06*Ja#PWqj%fH9udI7t zlFjO?)w^r>8iav!m*KyV4H)W??I0Td)+-x6jASN(%QyZMlJz8T$<{&kDM7tUIDR+@mlL>T-$T~r zRFCX#qT%>c((eT$^ z+1Sw}yP3dMaOxP64IpsI?u6`HuWZU#%D=EV)?@f9(Qwak9@%E1;ZMD?LE}lboWNDc zQOLTS?vdROqi3_vA*?vVf2*{t>d)XL@9p z6Ai!OmGzlKvKoR&rD;hUJ^*3vbN3=eibe2b0Pc*#EE6bQpvWWyP=Y5dHob8dFLo~d}D=R#QWTOdOzS|-D zn`N|Uwl5~3b4j?7z-1UWgJi=9T(aGe9r4P>o=38q30!umGf6gpz$LpAvTxn8`q=Q4 z^GRqDxD0=VEO(Yi79tv6>XkhQ*^ge?kPAq*g1{9|%_dnl0+-B!to}o?}Y4IuWZUZl9>c#M@wtD+WiV)T-f70fM|G`SN1Pt zooYOGCeiS_UfJ;ZBwIq@s?4X5m0jqT)rZ#+5AXK~!(A>S*+K%B^Y@SyU+j@BB^rLo zE9m?r9TB6}M zy|VhAmy&P_fy;R-WWRf5vzC%wc9-wuxx?Bd@IAGLo$(aQUWQO|szxEVI{tk3o1eB9s|X zvz%mi6S$n4T|=@F1TNV#kp1qJO;|y)^#m@vz)F%0Az+!ki?yz8tH)JNq)kKpvveuW z3eKdZcvcrxZg2k58+^~xn!o0J5{G6Hl<#=4t-d=(b+Y!i*MmE@ROl%cHnE8G+)+GU z9~$eD47~E4i8}qo&|fV5#nGRS{^IE`f&QA&Un2b_(O)wCrO;n<`b(w1H2U+?UkmyR z&|f`Kp za^qAw9z8!ibIyz!+5u@}?$fmUSCWiY5*pnErQNaCddS$52hwL6@$;;&D_T|5w;=jF z-P?STKKIcd9cq`*UIw?-$Q#=ljk-~zdwp6S{n2$@qx)wX-JxL}Za8+gvLhSv)*ZdtqSvF+T0L{_hP*)Giyn>f{z$^MUUTp?440jeBoM3vJoh zvqrYi_E$mO|KzX6`m`H*LvnWSwj&a?#6fq{7r}o&6>f)mFB#NA+tq8yAfI+}@9RhU zwCBmvr`^>HxIFIrOrJI_{`<^CZP2jxV-mG#lYnOq0;bckPn$RVy&;*}v(?>)`?UHp zau}_}jYO;J*m++y)l2(r#6M(OITpvyRR1$(ylrzDh4yK~;vqkwH}L(Q2vSAjNvH1MC(5#j%I_9gI970LhgW+szN zGMUUwGLr-Xgh>!kU^%L@c|^OGScv`7rTO&0lIbCPpA&>WNwN}9&ze+rb=_9F(T zKpQHgxw`Cki@sK>1da=w*FM^KdQYX#fp)}J# zM5VXi2Zd&8)k`9j(o5tw`U}qP`$1tK4dpa<>a-zi;UF_L&6W^VWV49ADqT3pNq{3KaMv?GshAWh-kuriNpAgwQy-f!VP1(H3vQ-PU6lf=N2Y>ZzB02kZlIKs?S z13DgVEz6MZy^$tzy|*gJ-IC{_7jpd5oOChiW1eO|GBwkj9%-Bzt5PJS$?5G_lFbe| zX+nbF#5{@6N)9GZssgDQ5+Rb%0U~jwh%2)}H}MqRY)Ikzoo2H2lA2$EzN_QUs1y-( z0nG&+0{N|;leiy-6zTCKtO{!(pVDg&o0-;AA1VvYNm;{qF_Qn;X?Ix_C6aiJ)0?rNC#qWe_ZrZano|n6Y30&P3reFoT(w<* zD4wA8;J$DOSD`76U*OE#HwMLhZWHcXqvCd3g_~UNvy&yYXf&0o_fs#^%tHNXkoq8Oj)+J@;*T?J3%2R1ZX*j?}dZn`UNaVGe=>7Xgu z&rJ6Z6jzj6W74PkY4nA-sMGo$QZOx5=#Qa7*AEc78uZZ;!G``qXC(@CWb3S4S|rqE z5=nK4P$P7U9fI#S3T=tfT9g{XMDi}$oZWvm>rMvMUksIojzjqpDveML0ly78v`j*G zHdNGp3KLodd^hm>pvyqBQ>C>t&>Dz#(t$UCJ_h;?bp2e?&NLm&7$_eHeGzmUJiRkP zMsaw!_caE~ z^A-xG0bc-K3mlH77XuUUIK<-|%v|UvZoQW#y_s4fG^SkWPDnln%^LhS&VZ=g!#oY2 zhg);q)m&%4yITAj31$H3RM3f_8$q82Ed%WhdJ=R8=yRYSAX+^Ur^7kYr8fr&JqY?i z5pbzcb5Efq$fvdu$p0xAmG8Ps!Aa2BWrDv#L+Qzaw+|KCp-kpQNvh10yfS~yNVf(p z@-xx}P)CX2<;6ntTtZ)mB%-I_d;1GL+CykqU!fi;)oDe7Fw@h7Hpvj04Ek!B;GyYH zF|F(O4AUpFo?|*COXm7N`>tl3F;pa-hKi(FKat#lIw7d@J?ea!B6U7akvcCzaw1(M z2h&BOr$KFRsEBriil_mVdY6l&bGb zdPrV^iwohR9a_WC@&L44tE1BNd{MhEU(`-Oa;!`wJIh2;lDL-fma_Fsx0Y>YTA3(O zd9a_*e-!)HJ2%~JxbAe5-OoSNO?~_$ndVqTaxGBkLaWf0Hlgc7gm!l5^5>XSXkQY# z8BKiVCs+#*x&=-24ifw|nizv7g6$%yaR`mkguZAL8f+FC3*8gY9SPmwU~y}qP2B1T z-8#p0ovZfK?qt!sQ0@rjya18hg7PC!?iehRO)y*tukjDq0{&>dwK$wU}#h918b zB$C2lap+^{PPU80j1E_`uI{Gx{5heUs$qC3lvDVv8*Vxb!;_(`g@|Ms47Y{y1~{E( zlBPF6cRQRO4#QWWy9`dpBGmQJ&2dUQ$Kdot6URfRV`d4+XD~bu%3%m{Jq)Kq`Lta^ zH{K~V9T=chF#H30d>guJq1(+W22Mlwe&`wyr^RqO9=dzc;Rt_mUH2f!htT7}Fl<1e z=Ay?@7~OSH)<~Kjg(hl|AMf~!WE@&BpvNm=z71NahxtU9k3w$Eh3+Ol(K-q93v`S0 ztXYusY#Yp{LHPvCkA(TlP@ZZOwR13RL67S#BFTc`@1XmDO(ZUadIfav!Z5vt{BU8I zx?q@2TY7NKyA8;H--O9!QI17i@l6=19FL=t92 z{YLXew8mqY90n=%%@?VE8y!~jMel~h@l6;h=0|>*F2+ptO&F0x_)7pi7~MmdY=f=h zt^q-wi)?Q^U!=8BFz=f$;+Ai|Na;!)zBisQQYi|_H5bZ_CX9E!h%4Ky5;@;|5m!dS zb>DoEc6{?ijMYQ8@q9u4yO1C&pxk)ENWZ(tIMHeJdn_iKD_D%xqTk)Ipzg%H$kinO z4;#g;TuinSgxY{;Eeev>x(ACZJ8aTsnH~B64V0@iY4ny+Dpf&w8fJMbC~rn`l_9zQ zi5c-QoVGcoehp@M7p#dj$d6~Cn-M6bpFsEFU@>V45$B%A3K8c-{?}W~6}~ z(rJxJJo*KO{VfuMjqth`l+VNP1Skh$>39Y`4#b)`!5|K;!u9?=ET|7+F%H5oy=;}z zI1JN%w2+1tT9I`4aV*CATUfcifbwFCDBOV_zmJtX2cbTL2{{f6$PE&A=U_qo)=%7Z zqR0DTxDbYag6lJE(pq!$_$3T+JfgJ)y3G--o;sBO1?9<5ZjK(Wf^sU958x6q2+Ajr zAA`&?mX!hGN)Ym6S&+Drics%`(<3m(*I;<6CaxH<_)JBl=VFLE1S0?Iksu?Wd>NOJ z`A`l=s8?dG?ulVq3FTJ;#8^It=`^+&^Wn4;aeCD*&L!evy$eoPn&djN3%c*4!wV1?mj;W`!_JZ92e`qV2D4$qE{@#q|*f`KZwlK5bA0yAlG5IDMEc1 zD_1#`O$hZojB#u9cs&-bWQ6){Toqem4M<0{uA<*MbXz0RYcV6TFvR*%7#@Z-;0!Wz z7(#tNl*6zFynr5OVK;XOhQ}f?f5D8HgG;Ivp`K%w_&ts>?uKF755r^O^bJI75p<(5 z#4qdcIvvU{V@kXM<-t(?7nB!4xhWQ(%}`Fm#i;?h_ai?VFe5&~jF7wy1|2tj5h$_EnJ|F^_=tVbI9Hdx};A00>}p|&6!d>bq=;M-tH zX$`XBj}9bK>f2w*Fa`5~a{l`^SYooyAwK#xSR(NqNW_fqKq3uwL~I%#NTkjvEHxLf zOpQV|OvHxMx4)7$3xmZ94kY@2Y_Oz>_Q-~6WW!QqLkb3^@qt8~ScYt9i%Hw~Kq6+g zBO81N5|J!JCjI_EqUYdRbPV}F5r&T;8~$j6B|%F^Hk?K_j7K&!K9EQUd>brru^Toi zzWtRrVQ@%0-u;!1g<>yqI07eD-+@G`Ha?I@(@~hN>tI+TX=oHyI^PCMw8mkp;yaLt zn38 z`SW%$6NhE04!R{6;yN65efukpsLmTKX~MU`61)$qdJ)FB@disu&jpARPr&IYta1CW zFgM;{$pni;Zmoe~-~LKk*ofKG3rn1S9`o3@!II)<(BnXCz$d7~1M=fNbA&94ABH{z~MFkso&;Ki-FKj*d{D!P++t7tkBH`1&?j;*b*y^L|`> z3y~i`q2DvGRcVf4dI_suJT67P4VIYf3Ejr~D~aDK*iE(TGERTA!IA)0LOBSbUWQ>x zMSl1;Sklln7@mr)iV-&!8gH<~iF!CaB3Ls2vaQi|LH0k5?^Jm&4BT(ubwOg_yDkX! z9lWLK&oDF^mRR47Dv|%ujVf_B2D9MbH>x=QeRry)cqBXx#`$I;!u#8uDmL8sx*!qC zLxgVOg5~_3x$j1mltv-Q>u@D(e4|R*dqSpsPDQUTDe$a4`c6}i@k3N64Q6^mO8$Jx9FB(dH#maRh<7- z+V5wiRPBS6&bLz&$wKVue0Rb`(iw-c#&?b-mW}Tmi=^>JO(eg&bFA}>yff5HUnI}w zk4Qpt*E8N*xRqbt`Y(KX740t{JS13z9uE|Hw^cq~3A71)Aw+1bL+CcA&~Esc<~f7l z5B!8)^B20>BD8yud|30DbqBX!VUyPM??QGmGt(h7P?Jhe8KwBPpL|;5bL)rS-1^CM zi%a9+)}3(cT;Oe%OtG5y<*yMoG4N)H&~QIXn1jAcpTM*s=|QG>36U-bZSSM|IcQVD zLdLOr!Fm2-hXwRR_-wzznF0I>SK-V`*I~+tmQOpMjBw|*;^y+e&5N+-Mrh$HB?WUH5V?uwEej>g6`G9>2skMzwjI^@1qG%YDguK@{QT z%304!(J}m-p!hb96|L0PTR4vugDK9-EoH@EO7wES4(zAdsJEB14I02)wwLQwT&jgo zp_j`mzMHvnFV}D282%i2gqJHCIElHj%(4A>0gfVFbI>GjVN}s0%suSok_YwEoHWnN z6|g}kE%b7(fs3_Js`YX)1D7+m%FA6Ucu5PRHD2!5g3Zir^m0EIFV^oy6@*QCiSBL{!*iGZ{=iCI@R#QcEXjVsuC(MH$tK`;vz#hw}KF-J<8|Tgu#AaI+|?&sm*c`_f0Av*WN8_c?3MCDTGx)i&g# zfIND`%Owr5Sqf;)B2`BH;;D#go>bho`R$BFG-a{k`sJAei)hTtio4#YDzJk7{)*zd zgvHY^Im-Ugq*`gs5q*fR zeW18R=BClpA1dyboOqf+`U)@mNWZh@8I&WB=C+Lco3kYu-vWVg@sIthgY0ORWa+Tb}MKssT zO=NB{jku_4zTujr)zCRFcdpNJ?J26^UzEq#AMLYQTS|*ADQ+z**3uy__j*A*Eu)mn zs%#mTEu#@$ZZuEW5WVyDI4tTlu%QtJ!(uiyF zz8X%w4ZM;+M?YUvRr5HzSJ9du6lX2lYF|aWt}E{HkgfI?DByv)+S_(^eBc!gNQud+A5!lokOj(fT0gM^!@$@_xX{BD=9Kl`bw&5DIP5TLjaaJwvu zyTE?0p`t*=MY&cx)>3qk;!c(?*IuIsyj(lie#bhpTUFVFAwM|Q(|z(vAGX(wL0>wosc0#r>Gk&bWolJ+j|wAqvJxdhpx4kW|jnu z&aDaCLrEPJw=rqIc@GtOxwn&6aap;SdoyEe*j}pkay=r1tM_ut%7nY<lGW^hiObFG=rV)5jvNw z3Ukt0(GhN5qYZq4GSI?A!Ci9&N2Usn3KzVdzeTLkhbjLTs{h~A{_EC(=Wk61QEUEsx0UYYf?!HwiH(}_ zL+c?F$JkCb#tv%1*K8+6G7Y65egZO#{Fu7v1|rd$AK=!g4^sm_1;loL&Q(3GUcZjp`dWn zFp<9>Dk1%XpK&#j!zCfzz!EbhbE!YwWO)G18zLcnFHJ(alWF5F9pOEbfy6DNH#Yxv zk=K7!d{2_7DVo|tu*fyq4XkK0;I>FW8E=ggj>D)&Gd0mO=<9z|2l3Fonf!;rVFUla z@}V3F1AWGs!ROrHQHimN?(ZqD{~h>|;6FDb!@&=mf|h{(nM10k19g-!g_T^=*?>gW zklMdt{Z9&JazFT3j^0eW?JkPR3}NoJvR29i#hQS|q9{>)t^f2Z*Ong73EUb-Sb z6jihTBqWEB6QdKvtyek4G#UlTPx&HIr6uVik1Y@h?_xO(r=ku!!S52{3}7+mvV~`V ze}j$xvydE1TGB7QyE7d*v?p*Mt}&4}jcw_tv?BgJs6swOr_!p@A$)$a=T%WY#gtCr zml%j{CDUB0V){C7K&K>criU2sA7JG7~3TvO-b7O2!BwTzn>Tv5rA^J&pchnKuyJV|*;>ljxd z2IGpi8;_#j@uV}NRwXVWwuu=GnJ#qBjDW#sI{c;(gKWqXkAL4Up^W8jA!~}cC;~0lbGcr z9;v_y+W7K=eq$gRgQ&yRZ~|oKH_> z$5W;@vozg&m0QR$-_$0R7Mfeqv)LVuH?^h__nIrUAG@?OY6e{@MHtzmDn?=J-1_LtZsMQr}lEUF`q7 zp(=SPSKXSq%6|*0Zb8*5!+w_3LsIXRywv}M|2|0eL2?Mq9cStc_zZZr;obhx=5wfX z4s|X<-e4F~8f~77A-;woZZPDR>Wlp&=|)*82Y*9OwD}rFJ(6Sa*MOs%Ot7OIgLtOH z5@hW6=gkN>YFLp!C*Ws{@mZ8!F#I#UHsGeAX~K#C&3HZeMaEXf)i7q#WClI2#icIx zxAJf_F*=M|L_>f{<^Ob43PYuq#(qUcO9BNJSuAnJ)#=gZFsWorFwW0tW=S>5aU;`s zyGOj`dF>eqxUn#;Cx7HDE4H?`hfdBNdEf3QqPsl(tZxMit=a-4B# z_-)GymdA4cj_|100FU9x7Rhhzjx&IGMBuFVOx zZZw`Kj$nGOM>A`JR+SXXIIz5fwI%5Z310_I$NDuLUbi(ql>Uje8WNd2@x0Np=UubT z(qw|o(j-^5BQ_1j$pbR!s4+F|zQ6|K6&{X_Mt8Y0_#~I!Yu?Q?BKU&whaQl_)mJ@X(4gO$I5wKGp;PJ57}*atN&tu3zcP>?G}>$ZO8Irh2a_)UID{3 zScX@?d<~Y^8f6}_v_i5%)dA*(JSoX3D@R}FYSuF9#!U8QvNO}vBYB21-*i{{9H%Th z3!D}@mi&&Br%lN|rb#77%vGlJk|R!u)=6ikCTY8Xd-FOyX?idGvU7p)+3Yi+)!H{% z=b0WUX<}Svl7rXt=9MIMRH<(_`hzn~l{a8^-dV|q2lt}6^3t`+IMa3sx-*dZ7@BNzuC1w*CzDX;nMs>)RO1@F2iG|*ZNvZRTA(@71Kkckd!EA`$uyoyO)q3Mb;r}*l-BN2)A_XC?w0gTiL`KJ zXoPiv)+KzXTj(fvTfbQYmb&B6e!V7F*S3D6N>;lyZYPuKHGOt^tWop3w_q(4K6KS1 z=TrUGChT-)a;4YV)5|IEy7L*=hm^v6CDV}bDyEtA5a=w>1)xuYE(3iYbS=|+%^R5x z4Brh&1L#pd`+eLS8-;~_;I>gj=x6TM^ihyb9cXyad3OgI9dw21#2|Ng2bvbtg6W)~ z?o1y8T>`os@)v`8vivnjHiNzuG>j#CgT^vF7&Nsm|2|KUW*JT=gFuPq(rY1;WQ z-hdem!>Nla+90^4moDM&y2SvefTnsW%WJof^7L=AC+rMFXT4MuE*PfKp0L{J`#o1O zqV1yt?h1*vPYmEY+>B?1qyW!!v2B{kZ@!pItAJN|@if}cZ-?D%(PyPGPq}OUT{h9!QfuDhixluyKF~omu#a$ zHiYaB`8Y(g2iqg$EF}36fzBNQjuMH7=DfNV@ zEz$VgdOq(RO*+VQd&W_wy&{CJEE9TvKcVlGbgXR{dbTp-|sijTl`U>f$DkpYv4m;OWuAD)>`rgyh0mo2&Q4$c;1MQU~Hp%`0f9Z z<2=Q^b_abFv?6$Iu-g`6``-4f{Z)IhvrkxY*h;r)rfluaY|i(u7oWbl&%gcCs7vj} zah}lRxV|E5T=W`l@i&&8;xog4*3)aX@!Z4>+~@y&b^e+)A4VEik0O6Q2{)DnlBqVI zo6z4Z|IeZ*viBF6{F82c%eN99<=?;%9L#5#+3o$gi~QoqNTN9v3XhFoezL+tS-z%( z-<-;IYFMrhRXCS%<~<4@?85aM7)wIUX68_9{?!G>;jA3K)egL(HPM-O6yDN=sMUK4 zJ3A5Gb420l7^1c(6>h`zdwrpB0oULAwZe@Y;Z~fa!CMv1;dZ`zN8z{SQ*YM+#hmRxH2SE* zC!={4`BdQ>Y#{TT!l&54t&0jviDw-O@8ll; z+C<@V++l01V4i=;9MZemtAg9y-(-cNAqw*gZfW;Og+JotdTpG- z19=F(o~*EZlwPMRoWx^)W4^+jSl)h-!a*$msz%`x?RfmtpH)mW4?)XU6n5~~Jo1LZ z`7B?%UExx8^z0sm{n*isd=-`sJjgk;^0>ksJv<9OSNLvTi0(MA@Ep#eQjnvJh} z^$|~e+q&x;Jzc}NQ1isrhj_$2Zz3sWxrBwlqqR zGM7)_y5ndpOUJPW1@~o%$R=b3Nu$6Y(~8;|wPikN3c+N-`Y)g&KVmGxAo)i-GC z&Kq?B_rxp>s{MOaOje*J+Q?75gleINTF-=-t1%J&fi7phW&^Pq_@B!$Nwe7umS|0L zIjgvGUHrtD2(5PD12Lbqh&Q_&vwqR|ZYKfo*G@WWnr3g#ukqEK@wNGrVg`kBikbX1 zXLmpT3}kk&6m+kBYf?;{7FYM}q?k*_+A9ymRBPR9XH1RB=RJsi^{qS@pa zDk$tzn0uw`^uhx((-xQR7!wjz5?*K3V+>l|qUo_2TJ4n$er@L4X2#UnX2#C7SoquZ hXiKYGz96<(V-K%B8e7YMYZp|Lh diff --git a/src/Sophia_Script_for_Windows_10/Module/Sophia.psm1 b/src/Sophia_Script_for_Windows_10/Module/Sophia.psm1 index eebcfc69..bb7a3407 100644 --- a/src/Sophia_Script_for_Windows_10/Module/Sophia.psm1 +++ b/src/Sophia_Script_for_Windows_10/Module/Sophia.psm1 @@ -4442,16 +4442,10 @@ function OneDrive return } - # Check if script was launched from OneDrive folder and preset file has function to uninstall OneDrive - # Check how the script was invoked: via a preset or Function.ps1 - $PresetName = (Get-PSCallStack).Position | Where-Object -FilterScript { - (($_.File -match ".ps1") -and ($_.File -notmatch "Functions.ps1")) -and ($_.Text -eq "OneDrive -Uninstall") -or ($_.Text -match "Invoke-Expression") - } # Check if user is logged into OneDrive account (Microsoft account) $UserEmail = Get-ItemProperty -Path HKCU:\Software\Microsoft\OneDrive\Accounts\Personal -Name UserEmail -ErrorAction Ignore - if ($PresetName -and $UserEmail) + if ($UserEmail) { - # Exit if user accidentally set function in preset to uninstall but he's logged into the app return } @@ -7706,6 +7700,7 @@ function WinPrtScrFolder $PresetName = (Get-PSCallStack).Position | Where-Object -FilterScript { (($_.File -match ".ps1") -and ($_.File -notmatch "Functions.ps1")) -and (($_.Text -eq "WinPrtScrFolder -Desktop") -or ($_.Text -match "Invoke-Expression")) } + if ($PresetName) { # Get the name of a preset (e.g Sophia.ps1) regardless it was named @@ -11844,6 +11839,8 @@ public static extern bool ShowWindowAsync(IntPtr hWnd, int nCmdShow); Description = $Localization.CleanupNotificationTaskDescription } Register-ScheduledTask @Parameters -Force + + $Script:ScheduledTasks = $true } "Delete" { @@ -12027,6 +12024,8 @@ Get-ChildItem -Path `$env:SystemRoot\SoftwareDistribution\Download -Recurse -For Description = $Localization.FolderTaskDescription -f "%SystemRoot%\SoftwareDistribution\Download" } Register-ScheduledTask @Parameters -Force + + $Script:ScheduledTasks = $true } "Delete" { @@ -12205,6 +12204,8 @@ Get-ChildItem -Path `$env:TEMP -Recurse -Force | Where-Object -FilterScript {`$_ Description = $Localization.FolderTaskDescription -f "%TEMP%" } Register-ScheduledTask @Parameters -Force + + $Script:ScheduledTasks = $true } "Delete" { @@ -14287,11 +14288,7 @@ public static void PostMessage() } # Check if any of scheduled tasks were created. Unless open Task Scheduler - # Check how the script was invoked: via a preset or Function.ps1 - $PresetName = (Get-PSCallStack).Position | Where-Object -FilterScript { - (($_.File -match ".ps1") -and ($_.File -notmatch "Functions.ps1")) -and (($_.Text -eq "CleanupTask -Register") -or ($_.Text -eq "CleanupTask -Register") -or ($_.Text -eq "TempTask -Register")) -or ($_.Text -match "Invoke-Expression") - } - if ($PresetName) + if ($Script:ScheduledTasks) { # Open Task Scheduler Start-Process -FilePath taskschd.msc diff --git a/src/Sophia_Script_for_Windows_10/Sophia.ps1 b/src/Sophia_Script_for_Windows_10/Sophia.ps1 index 5ff6477d..1506ccd6 100644 --- a/src/Sophia_Script_for_Windows_10/Sophia.ps1 +++ b/src/Sophia_Script_for_Windows_10/Sophia.ps1 @@ -979,7 +979,7 @@ InstallVCRedist <# Install the latest .NET Desktop Runtime 6, 7 (x86/x64) - Установить последнюю версию .NET Desktop Runtime 6 (x86/x64) + Установить последнюю версию .NET Desktop Runtime 6, 7 (x86/x64) https://dotnet.microsoft.com/en-us/download/dotnet #> diff --git a/src/Sophia_Script_for_Windows_10_LTSC_2019/Module/Sophia.psm1 b/src/Sophia_Script_for_Windows_10_LTSC_2019/Module/Sophia.psm1 index 86ba278a..c6a759df 100644 --- a/src/Sophia_Script_for_Windows_10_LTSC_2019/Module/Sophia.psm1 +++ b/src/Sophia_Script_for_Windows_10_LTSC_2019/Module/Sophia.psm1 @@ -8486,6 +8486,8 @@ public static extern bool ShowWindowAsync(IntPtr hWnd, int nCmdShow); Description = $Localization.CleanupNotificationTaskDescription } Register-ScheduledTask @Parameters -Force + + $Script:ScheduledTasks = $true } "Delete" { @@ -8669,6 +8671,8 @@ Get-ChildItem -Path `$env:SystemRoot\SoftwareDistribution\Download -Recurse -For Description = $Localization.FolderTaskDescription -f "%SystemRoot%\SoftwareDistribution\Download" } Register-ScheduledTask @Parameters -Force + + $Script:ScheduledTasks = $true } "Delete" { @@ -8847,6 +8851,8 @@ Get-ChildItem -Path `$env:TEMP -Recurse -Force | Where-Object -FilterScript {`$_ Description = $Localization.FolderTaskDescription -f "%TEMP%" } Register-ScheduledTask @Parameters -Force + + $Script:ScheduledTasks = $true } "Delete" { @@ -10707,11 +10713,7 @@ public static void PostMessage() } # Check if any of scheduled tasks were created. Unless open Task Scheduler - # Check how the script was invoked: via a preset or Function.ps1 - $PresetName = (Get-PSCallStack).Position | Where-Object -FilterScript { - (($_.File -match ".ps1") -and ($_.File -notmatch "Functions.ps1")) -and (($_.Text -eq "CleanupTask -Register") -or ($_.Text -eq "CleanupTask -Register") -or ($_.Text -eq "TempTask -Register")) -or ($_.Text -match "Invoke-Expression") - } - if ($PresetName) + if ($Script:ScheduledTasks) { # Open Task Scheduler Start-Process -FilePath taskschd.msc diff --git a/src/Sophia_Script_for_Windows_10_LTSC_2019/Sophia.ps1 b/src/Sophia_Script_for_Windows_10_LTSC_2019/Sophia.ps1 index 342389d0..1e575cbd 100644 --- a/src/Sophia_Script_for_Windows_10_LTSC_2019/Sophia.ps1 +++ b/src/Sophia_Script_for_Windows_10_LTSC_2019/Sophia.ps1 @@ -780,7 +780,7 @@ InstallVCRedist <# Install the latest .NET Desktop Runtime 6, 7 (x86/x64) - Установить последнюю версию .NET Desktop Runtime 6 (x86/x64) + Установить последнюю версию .NET Desktop Runtime 6, 7 (x86/x64) https://dotnet.microsoft.com/en-us/download/dotnet #> diff --git a/src/Sophia_Script_for_Windows_10_LTSC_2021/Module/Sophia.psm1 b/src/Sophia_Script_for_Windows_10_LTSC_2021/Module/Sophia.psm1 index 716e3200..0249559d 100644 --- a/src/Sophia_Script_for_Windows_10_LTSC_2021/Module/Sophia.psm1 +++ b/src/Sophia_Script_for_Windows_10_LTSC_2021/Module/Sophia.psm1 @@ -8297,7 +8297,13 @@ function InstallVCRedist Start-Process -FilePath "$DownloadsFolder\VC_redist.x64.exe" -ArgumentList "/install /passive /norestart" -Wait # PowerShell 5.1 (7.3 too) interprets 8.3 file name literally, if an environment variable contains a non-latin word - Get-ChildItem -Path "$DownloadsFolder\VC_redist.x86.exe", "$DownloadsFolder\VC_redist.x64.exe", "$env:TEMP\dd_vcredist_amdx86_*.log", "$env:TEMP\dd_vcredist_amd64_*.log" -Force | Remove-Item -Recurse -Force -ErrorAction Ignore + $Paths = @( + "$DownloadsFolder\VC_redist.x86.exe", + "$DownloadsFolder\VC_redist.x64.exe", + "$env:TEMP\dd_vcredist_x86_*.log", + "$env:TEMP\dd_vcredist_amd64_*.log" + ) + Get-ChildItem -Path $Paths -Recurse -Force | Remove-Item -Recurse -Force -ErrorAction Ignore } catch [System.Net.WebException] { @@ -8321,7 +8327,7 @@ function InstallVCRedist .NOTES Machine-wide #> -function InstallVCRedist +function InstallDotNetRuntimes { try { @@ -8339,41 +8345,95 @@ function InstallVCRedist if ([System.Version](Get-AppxPackage -Name Microsoft.DesktopAppInstaller -ErrorAction Ignore).Version -ge [System.Version]"1.17") { - winget install --id=Microsoft.VCRedist.2015+.x86 --exact --accept-source-agreements - winget install --id=Microsoft.VCRedist.2015+.x64 --exact --accept-source-agreements + # .NET Desktop Runtime 6 x86 + winget install --id=Microsoft.DotNet.DesktopRuntime.6 --architecture x86 --exact --accept-source-agreements + # .NET Desktop Runtime 7 x64 + winget install --id=Microsoft.DotNet.DesktopRuntime.6 --architecture x64 --exact --accept-source-agreements + + # .NET Desktop Runtime 7 x86 + winget install --id=Microsoft.DotNet.DesktopRuntime.7 --architecture x86 --exact --accept-source-agreements + # .NET Desktop Runtime 7 x64 + winget install --id=Microsoft.DotNet.DesktopRuntime.7 --architecture x64 --exact --accept-source-agreements } else { + # Install .NET Desktop Runtime 6 + # https://github.com/dotnet/core/blob/main/release-notes/releases-index.json + $Parameters = @{ + Uri = "https://dotnetcli.blob.core.windows.net/dotnet/release-metadata/6.0/releases.json" + UseBasicParsing = $true + } + $LatestRelease = (Invoke-RestMethod @Parameters)."latest-release" + $DownloadsFolder = Get-ItemPropertyValue -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders" -Name "{374DE290-123F-4565-9164-39C4925E467B}" + + # .NET Desktop Runtime 6 x86 + $Parameters = @{ + Uri = "https://dotnetcli.azureedge.net/dotnet/Runtime/$LatestRelease/dotnet-runtime-$LatestRelease-win-x86.exe" + OutFile = "$DownloadsFolder\dotnet-runtime-$LatestRelease-win-x86.exe" + UseBasicParsing = $true + Verbose = $true + } + Invoke-WebRequest @Parameters + + Start-Process -FilePath "$DownloadsFolder\dotnet-runtime-$LatestRelease-win-x86.exe" -ArgumentList "/install /passive /norestart" -Wait + + # .NET Desktop Runtime 6 x64 + $Parameters = @{ + Uri = "https://dotnetcli.azureedge.net/dotnet/Runtime/$LatestRelease/dotnet-runtime-$LatestRelease-win-x64.exe" + OutFile = "$DownloadsFolder\dotnet-runtime-$LatestRelease-win-x64.exe" + UseBasicParsing = $true + Verbose = $true + } + Invoke-WebRequest @Parameters + + Start-Process -FilePath "$DownloadsFolder\dotnet-runtime-$LatestRelease-win-x64.exe" -ArgumentList "/install /passive /norestart" -Wait + + # PowerShell 5.1 (7.3 too) interprets 8.3 file name literally, if an environment variable contains a non-latin word + $Paths = @( + "$DownloadsFolder\dotnet-runtime-$LatestRelease-win-x86.exe", + "$DownloadsFolder\dotnet-runtime-$LatestRelease-win-x64.exe", + "$env:TEMP\Microsoft_.NET_Runtime*.log" + ) + Get-ChildItem -Path $Paths -Force -ErrorAction Ignore | Remove-Item -Recurse -Force -ErrorAction Ignore + + # .NET Desktop Runtime 7 + # https://github.com/dotnet/core/blob/main/release-notes/releases-index.json + $Parameters = @{ + Uri = "https://dotnetcli.blob.core.windows.net/dotnet/release-metadata/7.0/releases.json" + UseBasicParsing = $true + } + $LatestRelease = (Invoke-RestMethod @Parameters)."latest-release" $DownloadsFolder = Get-ItemPropertyValue -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders" -Name "{374DE290-123F-4565-9164-39C4925E467B}" + + # .NET Desktop Runtime 7 x86 $Parameters = @{ - Uri = "https://aka.ms/vs/17/release/VC_redist.x86.exe" - OutFile = "$DownloadsFolder\VC_redist.x86.exe" + Uri = "https://dotnetcli.azureedge.net/dotnet/Runtime/$LatestRelease/dotnet-runtime-$LatestRelease-win-x86.exe" + OutFile = "$DownloadsFolder\dotnet-runtime-$LatestRelease-win-x86.exe" UseBasicParsing = $true Verbose = $true } Invoke-WebRequest @Parameters - Start-Process -FilePath "$DownloadsFolder\VC_redist.x86.exe" -ArgumentList "/install /passive /norestart" -Wait + Start-Process -FilePath "$DownloadsFolder\dotnet-runtime-$LatestRelease-win-x86.exe" -ArgumentList "/install /passive /norestart" -Wait + # .NET Desktop Runtime 7 x64 $Parameters = @{ - Uri = "https://aka.ms/vs/17/release/VC_redist.x64.exe" - OutFile = "$DownloadsFolder\VC_redist.x64.exe" + Uri = "https://dotnetcli.azureedge.net/dotnet/Runtime/$LatestRelease/dotnet-runtime-$LatestRelease-win-x64.exe" + OutFile = "$DownloadsFolder\dotnet-runtime-$LatestRelease-win-x64.exe" UseBasicParsing = $true Verbose = $true } Invoke-WebRequest @Parameters - Start-Process -FilePath "$DownloadsFolder\VC_redist.x64.exe" -ArgumentList "/install /passive /norestart" -Wait + Start-Process -FilePath "$DownloadsFolder\dotnet-runtime-$LatestRelease-win-x64.exe" -ArgumentList "/install /passive /norestart" -Wait # PowerShell 5.1 (7.3 too) interprets 8.3 file name literally, if an environment variable contains a non-latin word $Paths = @( - "$DownloadsFolder\VC_redist.x86.exe", - "$DownloadsFolder\VC_redist.x64.exe", - "$env:TEMP\dd_vcredist_x86_*.log", - "$env:TEMP\dd_vcredist_amd64_*.log", - "$env:TEMP\WinGet" + "$DownloadsFolder\dotnet-runtime-$LatestRelease-win-x86.exe", + "$DownloadsFolder\dotnet-runtime-$LatestRelease-win-x64.exe", + "$env:TEMP\Microsoft_.NET_Runtime*.log" ) - Get-ChildItem -Path $Paths -Recurse -Force | Remove-Item -Recurse -Force -ErrorAction Ignore + Get-ChildItem -Path $Paths -Force -ErrorAction Ignore | Remove-Item -Recurse -Force -ErrorAction Ignore } } catch [System.Net.WebException] @@ -8559,7 +8619,7 @@ function PreventEdgeShortcutCreation .SYNOPSIS Windows Subsystem for Linux (WSL) - .PARAMETER Install + .PARAMETER Enable Windows Subsystem for Linux (WSL), install the latest WSL Linux kernel version, and a Linux distribution using a pop-up form .EXAMPLE @@ -8573,6 +8633,15 @@ function PreventEdgeShortcutCreation #> function Install-WSL { + [System.Console]::OutputEncoding = [System.Text.Encoding]::Unicode + + $Distros = (wsl --list --online | Select-Object -Skip 8).Replace(" ", "").Replace("* ", "") | ForEach-Object -Process { + [PSCustomObject]@{ + "Distro" = $_ -split " ", 2 | Select-Object -Last 1 + "Alias" = $_ -split " ", 2 | Select-Object -First 1 + } + } + Add-Type -AssemblyName PresentationCore, PresentationFramework #region Variables @@ -8586,19 +8655,12 @@ function Install-WSL xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Name="Window" Title="WSL" - MinHeight="400" MinWidth="350" + MinHeight="460" MinWidth="350" SizeToContent="WidthAndHeight" WindowStartupLocation="CenterScreen" TextOptions.TextFormattingMode="Display" SnapsToDevicePixels="True" FontFamily="Candara" FontSize="16" ShowInTaskbar="True" Background="#F1F1F1" Foreground="#262626"> - -