From d3654ff761ac332108cafd84134e438221bd0e14 Mon Sep 17 00:00:00 2001 From: Nikita Shaforostov Date: Fri, 23 Aug 2024 20:21:37 +0300 Subject: [PATCH] (Issue #3573) Container limits doc and RN --- .../10_Manage_Tools/10.4._Edit_a_Tool.md | 37 ++++++++++++++++++ .../10_Manage_Tools/10.5._Launch_a_Tool.md | 36 +++++++++++++++++ .../attachments/EditTool_25.png | Bin 0 -> 2484 bytes .../attachments/EditTool_26.png | Bin 0 -> 22688 bytes .../attachments/EditTool_27.png | Bin 0 -> 22217 bytes .../attachments/LaunchTool_46.png | Bin 0 -> 2311 bytes .../attachments/LaunchTool_47.png | Bin 0 -> 31020 bytes .../attachments/LaunchTool_48.png | Bin 0 -> 30430 bytes .../12.10._Manage_system-level_settings.md | 19 +++++++-- .../v.0.15/v.0.15_-_Release_notes.md | 2 +- .../attachments/RN017_ContainerSize_1.png | Bin 0 -> 2420 bytes .../v.0.17/v.0.17_-_Release_notes.md | 20 ++++++++++ 12 files changed, 110 insertions(+), 4 deletions(-) create mode 100644 docs/md/manual/10_Manage_Tools/attachments/EditTool_25.png create mode 100644 docs/md/manual/10_Manage_Tools/attachments/EditTool_26.png create mode 100644 docs/md/manual/10_Manage_Tools/attachments/EditTool_27.png create mode 100644 docs/md/manual/10_Manage_Tools/attachments/LaunchTool_46.png create mode 100644 docs/md/manual/10_Manage_Tools/attachments/LaunchTool_47.png create mode 100644 docs/md/manual/10_Manage_Tools/attachments/LaunchTool_48.png create mode 100644 docs/md/release_notes/v.0.17/attachments/RN017_ContainerSize_1.png diff --git a/docs/md/manual/10_Manage_Tools/10.4._Edit_a_Tool.md b/docs/md/manual/10_Manage_Tools/10.4._Edit_a_Tool.md index 6225fb1933..a9c0dff512 100644 --- a/docs/md/manual/10_Manage_Tools/10.4._Edit_a_Tool.md +++ b/docs/md/manual/10_Manage_Tools/10.4._Edit_a_Tool.md @@ -4,6 +4,9 @@ - [Edit a Tool version](#edit-a-tool-version) - [Run/Delete a Tool version](#rundelete-a-tool-version) - [Commit a Tool](#commit-a-tool) + - [Committing features](#committing-features) + - [Pre/post-commit hooks](#prepost-commit-hooks) + - [Container size limits](#container-size-limits) - [Edit a Tool settings](#edit-a-tool-settings) - [Delete a Tool](#delete-a-tool) @@ -59,6 +62,8 @@ When it is complete COMMITING status on the right side of the screen will change #### Committing features +##### Pre/post-commit hooks + In certain use-cases, extra steps shall be executed before/after running the commit command in the container. For example, to avoid warning messages about terminating the previous session (which was committed) of the tool application in a non-graceful manner. Some applications may require extra cleanup to be performed before the termination. To workaround such issues in the **Cloud Pipeline** an approach of "**pre/post-commit hooks**" is implemented. That allows to perform some graceful cleanup/restore before/after performing the commit itself. @@ -97,6 +102,38 @@ Consider an example with **RStudio** tool, that **Cloud Pipeline** provides "out - (**2**) post-commit script is found at the specified path in the docker image - and it is being executed - (**3**) post-commit script was performed successfully +##### Container size limits + +Docker images can be extremely large. Therefore, **Cloud Pipeline** supports a mechanism to warn/reject users from creation of such big images. + +To configure that mechanism, there is the special [system preference](../12_Manage_Settings/12.10._Manage_system-level_settings.md#commit) - **`commit.container.size.limits`**. +This preference has a format: + +``` +{ + "soft": , + "hard": +} +``` + +This preference defines "**soft**" and "**hard**" limits for a container size in bytes: + +- if user tries to perform a commit operation and the container size exceeds "soft" limit - user will get warning notification, but can proceed the commit at their own risk +- if the container size exceeds "hard" limit - commit operation in this case will be unavailable +- if the size of any limit is set as `0` - this means there is no limitation of that type + +Example of the preference configuration: + ![CP_EditTool](attachments/EditTool_25.png) +In this example, "**soft**" limit is set as 1 GB and there is no "**hard**" limit. + +In case, when "**soft**" limit is set more than `0` and user tries to commit some tool which container exceeds this limit, the following warning will appear: + ![CP_EditTool](attachments/EditTool_26.png) +At the same time, commit operation is available. + +In case, when "**hard**" limit is set more than `0` and user tries to commit some tool which container exceeds this limit, the following error will appear: + ![CP_EditTool](attachments/EditTool_27.png) +Commit operation is unavailable. + ## Edit a Tool settings Settings in this tab are applied to all Tool versions (i.e. these settings will be a default for all Tool version). diff --git a/docs/md/manual/10_Manage_Tools/10.5._Launch_a_Tool.md b/docs/md/manual/10_Manage_Tools/10.5._Launch_a_Tool.md index 07c4a636c7..75d754f7e4 100644 --- a/docs/md/manual/10_Manage_Tools/10.5._Launch_a_Tool.md +++ b/docs/md/manual/10_Manage_Tools/10.5._Launch_a_Tool.md @@ -5,6 +5,8 @@ - [Launch a Tool with "friendly" URL](#launch-a-tool-with-friendly-url) - [Launch a tool with "hosted" applications](#launch-a-tool-with-hosted-applications) - [Instance management](#instance-management) +- [Restrictions](#restrictions) + - [Container size limits](#container-size-limits) > To launch a Tool you need to have **EXECUTE** permissions for it. For more information see [13. Permissions](../13_Permissions/13._Permissions.md). > @@ -204,3 +206,37 @@ In CP platform next hierarchy is set for applying of inputted allowed instance t - Tool level (specified for a tool on "Instance management" panel) (see [above](#instance-management)) - _(global)_ **`cluster.allowed.instance.types.docker`** (specified on "Cluster" tab in "Preferences" section of system-level settings) (see [v.0.14 - 12.10. Manage system-level settings](../12_Manage_Settings/12.10._Manage_system-level_settings.md#cluster)) - _(global)_ **`cluster.allowed.instance.types`** (specified on "Cluster" tab in "Preferences" section of system-level settings) (see [v.0.14 - 12.10. Manage system-level settings](../12_Manage_Settings/12.10._Manage_system-level_settings.md#cluster)) + +## Restrictions + +### Container size limits + +Docker images can be extremely large. Therefore, **Cloud Pipeline** supports a mechanism to warn/reject users from launching of such big images. + +To configure that mechanism, there is the special [system preference](../12_Manage_Settings/12.10._Manage_system-level_settings.md#launch) - **`launch.tool.size.limits`**. +This preference has a format: + +``` +{ + "soft": , + "hard": +} +``` + +This preference defines "**soft**" and "**hard**" limits for a Docker container size in bytes: + +- if user tries to launch a tool and the size of its container exceeds "soft" limit - user will get warning notification, but can proceed the tool launch at their own risk +- if the size of a tool container exceeds "hard" limit - tool launch in this case will be unavailable +- if the size of any limit is set as `0` - this means there is no limitation of that type + +Example of the preference configuration: + ![CP_LaunchTool](attachments/LaunchTool_46.png) +In this example, there is no "**soft**" limit and "**hard**" limit is set as 1 GB. + +In case, when "**soft**" limit is set more than `0` and user tries to launch some tool which container exceeds this limit, the following warning will appear: + ![CP_LaunchTool](attachments/LaunchTool_47.png) +At the same time, the launch operation is still available. + +In case, when "**hard**" limit is set more than `0` and user tries to launch some tool which container exceeds this limit, the following error will appear: + ![CP_LaunchTool](attachments/LaunchTool_48.png) +Tool launch is unavailable. diff --git a/docs/md/manual/10_Manage_Tools/attachments/EditTool_25.png b/docs/md/manual/10_Manage_Tools/attachments/EditTool_25.png new file mode 100644 index 0000000000000000000000000000000000000000..b664c125d28cfaa77bb87a5a134ae3e4da6405b6 GIT binary patch literal 2484 zcmYLK3piBi8y`w*r`*cOu0+`_&6I67T_|NH!-yCY?t z#%;!BC=tufNbW6>5kt+8mKo%>llA?Neg6CG_dMV2J-_$&d*AnY&pC-?Cp!)Fw`dd! zrD0F9p`cJID`y||RmkdkzitrORIX6$2q<31rg7x5+8=)$k3yBDu3b8(hC-=EksV!$ z0D!i(HUN}!GI6J5K3gdb)>Jh4!OSj1u=2Ezh`j@5_|&q-UVt6QXVh*%@SK@|)G z7UBrAdboiQl-r{Ol1eJIQUa7cxeye{?NI;)9|5o+F_`PjgrLmMIUq(1VxWMa#QKjw zIb6*`(!9*79##TbH3NcxQo@ghplH4rk(m=qlt2N*$^kwj5TeF281Ymnkij2NiU;^g zS^fPL-~074C0Lr1v11Jh76m?HzAoh|RHq0?)60WQM+gbbps~lm7(K69Dwl&ccnTjvsj6%O9h@qd0#|YnIU0>og-CbE-#2sU zoaXm(N>xWwJG-e0X0&%8Ss~gKBocbf46k$=Zw|o3>_sG((kVPlr*o$9@GLK6z74LS zb84P*_z-_+XlMub##cyRetnq)T|uEV8&{?Z#`G8sg<8{KZ-aNe?m7ABR;0mR{aeJW z;#K)hlzhLtf!m9P+Vf_S{PKmN$o+Zj_5jDp_#P*cYKg~s%Ybq99NlC6ILOp%9=k=G`@JD$c!Hr z8|QIOnz$X>RpJuVkjKG5Izfl}%V7hR*1}9r$z}9CsH$YhI3B|<*HkDzO}_Zh;RtdtR3E~*f4Z9#--@lu(|s6hdqSL2r@7s}2TX=aEN{q6`?1WeIcL>$WY|#wMJwmo#7%LL!S%JC zKCKe__Ux3xMVAOSgSB3FPT)gkwAtr-D?i3`U+p{7tFhmfTx;K^*R#D$^v&yPQ?mhi%?3`Q^_`PbHya z9;Pi4dw;m5*AhcaBdB=UWVw zJ`0~4S7oR3P73Dn7OOtG>JqV-k%Xgae$m>i7~x-UiQ@f=Yf1`e)qqtoTOX*tAQXCQ zS*=s6Fp9VvY@BLkhLagK)X|?6CY)X>UTYFM8o>V2vZ3cHnjQ4+`v=$cvSMwu4AmCC zqFJP;YSrr8RKqsvBp2@Z);QVfFWpS->DfKyE&isMiT<(2F%9LOQRA{xzHyS~0%OnU z<9bV^I<%M1KP~9O-i_6@jceqR|Lsc#voBgR!`Q8@d&}0M&HuLQ|8a!;Y^(V-5(mtj z#?r%%LSoK&s$Jw`Che(YDBW-pwSzn|*{AL2zaE=y8%M^2b6L-SgxI^U#1V3`t=0_L zG;qmpu}e{V?vXHumlHTJw$SiDfiA9lDLJaR`NZq~H-iVzwJ$lQpz_bd-!{JK^zBQ1ADh47o3no}Yh?4nP!v(*EY@~kaAU6@Z}^4Z zhpDcb1cC5~r&&c~o;z{tp52SDl+Jyrn*6_ac0Y{>%m$ysu$hB1qR}6S9^;>yxHti@zD?9rw)t+Iu8nED4{&{7XPmST_*W+S3N3^7D>I zI8=rflD<>9k)9j*eemrtep~R!!ZGuP+r>CTTBR{~GUb{5WS^QG`cbsH^*)A)ChG*v zFQ0n_w&7}D{?|w5SX*fYIE48{V~DPWF-!Kb7_B00Y?Y(!o?y3nRu$2#r0W8o)Ww{OfA=-xz|(W*2tn&s#F zcX_$(yn$J(XIZ!B>Q>ieA9wP}34&V8y1hha**xu))5G-z=ihwlFgv5R#?k+j6LF}; zbte*93Ul5)`G{;+iE8(#(5MQXoSt}O(5=}oJT9jbeKUy}B>XRD0IV8 zvtGt{aV9>xCQmN4vSXJIrI@v|aj literal 0 HcmV?d00001 diff --git a/docs/md/manual/10_Manage_Tools/attachments/EditTool_26.png b/docs/md/manual/10_Manage_Tools/attachments/EditTool_26.png new file mode 100644 index 0000000000000000000000000000000000000000..03deaa20cf8fc0221e10bf0892045bb5f2798895 GIT binary patch literal 22688 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 literal 0 HcmV?d00001 diff --git a/docs/md/manual/10_Manage_Tools/attachments/LaunchTool_47.png b/docs/md/manual/10_Manage_Tools/attachments/LaunchTool_47.png new file mode 100644 index 0000000000000000000000000000000000000000..cd8e12da54a02b392dedd2fddf1a759808dabe27 GIT binary patch literal 31020 zcmcG#Wl$YK_wI{BNU$KmJtVlhy99T4cXxM};1FDcySux)26wlxu`}fTpHoNb+`1p` zohk}8(|e|8b@y89`SqGGS!q!Ocx-quFfashF(G*{Feqg(FmNq62;e`3THZ>)FK`EW zQ30@u3EUC$BB6h9bPbSn23B> z(|Hjx$#65qILXDx`7<-i*x8VhoP0X;-ytBF0?PXL*LNs72$c6j4o(k>`2EO5W_VR2 zY+c94$G5IsHca~0%ybK@6Ta_RQ0V>mxZw(=|4Q_)F?388^nZP=2kzflA)-K(|GEnt z3G%;d2O*0P{%ZtJ6v_9m5t;y|-+%5O_G>3_U&E zcv$}(##)yT*S4tdb{9*z8>M>X=sMx`8~=OtKL+9dG(xD?!9)fFIzB!PYBx4k>ok}B z-hisvjj7q_Qn|C}LntH73Wn7|d!$fZRiq>9re$$?hx6G>$w@t{jf*oq@Z^g1&a7uT0pm`E2^5mC`1F2qLLW=&Toj*OHltb9*DEF7Hl?jkkGlM9GuT)e2f z&QrUB{$&+f#2-;JNOcBF({uZ6a~Bd4pEj$xh<~z&hVIv$w@?PCoiLEhm+=~`BU~iw z*xl0hA$X@lX@${KtWj-Twh-o7Z*1tV>1X?Zx{5#7s9~Eh(%+p&w|`o$Hc^J zink25^i>Ud4!}h>R*jup#K*=CkBU-abg?`}8De(Mb3e`Rz1OiPiEj&-7&@$9skU%_ zf>jn7c;dKTcN!c4!4v%QT(Vodox|fSLg)R-SYPRj72G@3Y)bY-H{-dNu}}xQXd-E^ zDQd0LfnLk=O>SIz+4g3Stc4R$-wBkHM|3BM^(018>%1?|Z`s!TguHn74PR58 z&Zlxcs$@%Diz+mzQ@e(E&u5RiiOaWl_lzfb=|e&_ju@RH&Rbk4>Uv-a$R`A+R^*mE z&Q-Ny)S2RH8_!1qpYzN{7cAG?7?j2_MbaoM=I$nTvnU9ObJ=_LraIe;D%Gp*bJ`5hT#nm!aZu2-e#YMg=g z7FMewy=S?}wv3O4t9CSZ!Jr&tF??t!*|bAx?$>hLu)f}*vH2h~W`vDpk&~k`{!Hhh zp`l3sp4)}+!Z1B@+de#NYd+NF^B9Dn(j|?PiN)>s zshj7ap%^7ZCWgk{h0L|iF@1{5XU_SAy96PEVgk0`naXR8x4 z)(5eL)DeyOzb~tnx~oS88KK6Ex}lS5As zQ5Moay*NXMoLp`Lp$LmsA8;<^vVpx>aq$`u^O}9$s`N5*6(*|p*?m);r1rT|uPsMq zZXv%Bq}}PFFbkuOvp02@%4u=xEFrN-exku+c|H_aA!VvYeeHx>2D`lDiODPULLWh_ zq2ZO$o~c#SCgnbARgr>I;LcjrT(xiTt#yn>y|HuxxzgU}ph&xDB5}KfyTDv}>E^?M zuThwZ50ypJWG<7+I=RynS!Q@rZT||T!Ns5ncL!G`LO)_sl0NebRD|W?lcm)x)6D#m z?hnc#ds_Gy$2%RX`WOP#uN3Sq0!3%hek)|-?#@w6I@CBr6!kiUbsC8#8avY@gy9~6b8>)4ja~XEN1E&owZh~8gYg$7ZKDV4oObtlwVf4 z-LVNF^qTU0rndd=O6`gIo%d!u%tH$+^O5Z5z{UKhikn<;R!~e=u9FQ_a>1gS1_(b35z1*9Oi;FI0W9qJ($yW=y?yjoHa4 zAoK=hlu0e!3}>-l*l428JTBTXxHojOlM7u~ZEtvOKFgbT(`;qgJybwg2F8`Bb2^OG%7OZH{Yf z9S)3;o}T|@*KOOAGEf`fEWMDMzgtyyX3eYH_w9&0(4Xab87m$ULxu8CVvUT zguRL|ML^lU*8(Ebh<=jf(Q)4JBEvcGEtGyOpl6*5%zBl~?o_yQlKNl~6%Q+VWG?*l zx4UoII+NNpea$3dubdvI+S5(D(mZh|_sz9x&}0_`S_$cBxGo$zRoc;F;6P2Ks=rzsUKUmZG?~6U|ZYRT-5Z_ zhApPwhw`n6xzubVvq|?N~#*EF+RdHF#Q|zMekt7|t+wRu$u(bCq)Aq{t5fVVomAg=_V?qrJG|d0@ zWdXZJ7`q@&FZ$K{Kv8gNOeCA!YGs~VKSBi(PlmN+Fj|w~i1C6wvZf%W2{b23*K&uW zIo7IBmoMywiGd*9gs>S?mkV*{cGy?ew_{;w1$3Ms%RlW3cRCR(2 z4psG|&4rS3M9f2v&CJwKVjn2% zIj1ll=*7qQX$#&+0@~A(kn=VUhsK;3uZ|MaY78=W^Y8-%snyjbBjv<-D0XgU&+xBn z_A;U*#Cx|GHcbs0oTi$-nKk7(Jr9(GMUYKxZeJ;Ur>M>TUS9v4w9yzAGSqZ1l5#!X z#yQ#)R$8#V@K=2A{0wT~gAKmVPOtQU1Kjh&Ana%=mCYZk7pPO~lB!?N{P%+hPek8h z>_Sv6O6~B3&gECPb}UmB)#Z{r2uwDHtlEUl%!c>R4@D>K6}==zx|8L9^mB$bQllph zpxg-aGID>qa|E?VG#iCB_Mo6pOOBqeHc_35JU$uxX!Pc@)G~9jFK?|I>lt z0>>wY!A+50H-a)$e)JN~4G|wgI8}WVd?;}OcqSiXfTu$>Z zU@#^|(iweCMNt;O))K-Y7}^mU3(I z^$_Iw!X7%zo`FbBYg>92!4)PO19*ULcdH=hSfXMl^FEY;xB(DaTc>7j%I-J*5+XYzS zcG*bCcfC3e(ineTw--JM+?JBdyOgL4{q-Rv^JEBNBo_)JjoJta&qJ}FtAd}{tVmu#XP^&Qt2;xTCM`?kX(oRJx1 zK0*V#)~);7qcPI?8x}@uY1HiI;7|%w{hHMIk5B$F9>tzlUsAjtOc+Q4l5k|!AC#h7 zXFKnAc0?+(D+^)xW0JL5J3ueg!7i`esg*h@%nI#sph%0<_{vzdXoL+o~P(^HU z>qMa~YcjSyRwMfn>s&K$JYB8{|CCLc{31Q+XTk(AczDdSTf3?|vhPlL8D9)MdG(fx zF8pI&aR`20a;j$O4GFmKw%nYS5QJ`gcnCWpK#-3|JtTM8HYuQMOR}r&7y_|Zf57UE zx7*3h-Q;E8GG-xYYovs@9b666n7*xyXhRF+e!1@NGbqk#bg{2Yept>uKp1t3A@_Cz zW!v<$a1MwzdlCrhJi?C6S<}&gj<7Z{r6WkA??$* zGu*G@(oyT`$on$pk+j=vl{CmMIiiXZ*ZX&>nWvJ4 z=z(hZh3nXXe_u+f=3szsk%0Rt%Ex`r1R*q{`0*0 z!!l0>tqg%7s=3QEK`)T{cU(`RksfEIGQ{AtSaSLFETTjYkB#E+nx8R$q19~r^XgL3 zCY>m#udPjH6F@?o>t<9u`L{0yM_)qKP_m3=%3$oCE$_1dNnH*-NqeB^plHmuda?ze8%=R@q$P8N6Rk5BWzhDb-tZAJi<-BSG{?S-V2 zI_qOim+zuSXg&8&`ISFy_6UGma|4$5}KU zTX?qC-zNT%j{2Z=A#RZt`LVoR;N>(Yejp$tN~$!oiB*rAZ|9})UiLs6OVNaCeafYQ z*{V%tgABLegJSQ3c9RTDhKF!_n(=v=cB{=ZGL~rfX?At^6I9iC5Qo(oY|jpx>s%dT zBF!)e$U^ZzB-wHjfhDK{VkkH4r4R0A7i{0rPxs0R9SZ4;BbP| zC?}Ml+L~}u)tU-yC1S$95$7&Xudin$?A{#s^S(50RJP##{c%Iq*$i0{|Myr9l|@0>+RJ<;KAr)r*%>4e)GUC44!;H@Ix<~0~D zc3~@2C+j8@!8rmks z4Y7_M$v4XgOB{=dU2f()ht#BwyOLe_b=4}hT91;kcQ&`k)nQ$enT6&4e$}Qll^wa z`3q`3*WZ(_G8fC}^sAlT|1igoIzmEyhlj;!sbAk&obeg}`+i9mr4i}adfFz;jY;bM z7xSZ~pfIwpn11Lbplo*wtE^A`+&^@@0KE z)nK#Pp-7U*W2n!v+q$l?kygF#I}s5P8ChXrAsIRO@RR%`U=$ORgYEu^Gv`){Yv_4f zD7o>2`Eox$zmH#NvZd|q8I0-e9CqGV&|rVFFU4e`MT*yp6Qv;964KMu#8%r_Y>ZFi1KWL| z{imHz$}{Z#{=T8UUhN?WFzwLDmaXnm_!YkHpDp`lI`6J33I+!G`IHY{US60{P_M4S zx`(79Y_m-=6kXw%MS3RmzMt&>aL!E0s=Z3+8@F{ zRL%B#63))|pt}>hvT4-Fqpt#U^YeP{qe;}I%H`?}mRJyAY1d->OV(~~>=3<$Qt9>% z4p)0BIyy0^i0%DM_FDS-#27h7W83Ybqf4fuq9Kmr*xl2Djnx>(*#;?HW`3D}K6Ncj zvnmd>z!4pW-J*sdPGKt#LV=R9vO1m5)PH?n;4>Ha}OM-TF&3iiaTUTbqht;K{!KteLW z5R~AP`V>*A-5w79L02pw4kp+Q^HMhU0bkR?vCnxf-kDojhs?aj}T2d}~WM6fED|V@4=IM)tVUW&%wUAyA zI)nGBL^4)?tRa?|5|32rej1D8h;N}p5gV9tovecFjtTw>LBvG}_6M1yeETEhSJ#iz zX}BL1d!Mj9p?Ww&=yZefsJ<}SM#{pT2$o8J# z*g3gq0Y-=%yc-gEHsvMeUkGCQDfRcLHoVU85wchjRp?CLqkfQlR;hyHjAq322wx(p zWz$a?aDKsqI{G=;-UX%JtMYM0lpUKCh%DE}B7~7S^uM~Mpdr;h-P_yS)8%%l3J<8` z;o)H-78Dg3kOp)U4e0(zrV%!Zj5NxR-a>{UEspH|FhGRqkjsyjYxGHs&NqRGKqMcN zl}4uncL#M&=p*JqwoyX1Q5d`_!ifYd-D_W!0t2M+G@JV&DJm8UPGUi!NY`m_#}Ad5U? zHH^X1cL_rjT`f|CBSX6UnyPaTM8geL~ z4AxCFToK8Bt-W#}r7Nt|cv) zj`{g{d5Hb*1SG_fUi9t*wmSNdg+}Bs#mp6rjbCy*{h*qN9}(Z?3JbS;C8 z=ObIO2iCB#uT4pB@|xqgLA7yzIXA+^uZA(UzK+7$g|p-8l(P zw?XI@BMYmCX(xT|^m%p^&V>>J+@Ek@obB+#hYuyD(flleJp8;@)@qaMJv{R$n7eSK7AsD6Hm!ZaG61{y)r3z#(PgZbFsb&QpL0p z(MiBWO48kHHQN_Z)W`DE`6K)U6B#yzG9Z1FqBkDLHIfh)S8KG!QxAB4e(w6BK}XXF z^QqQD_2Wq{bYMtB0}FYb07$@IFhmYE;{iWE#{e1{T7=foei*tkMdX2wuV4GeIMyyo zl5JURN7YAHCE;Lk&I?-CAqs(96);SYJ|!mms0Lxk3KuG!UwJ54vJ1p7c5q-0?AkZm z;>OX?nQFH<{(eYh{qo0keqmud+h(-^;WwlW82q$S+u%Y0~wXhYuIO z%AyOcjbczWD%@cH)Oxq#Hzm@r)8A1;kV_FaYfiDNrF``Q`(pdOI_T!=3x~)*Xo^=zrroI1Q%l@sKR<9> zBgvgz#+cLbbXGfmGE&kZEeBUlJ5RZ2gD6V{6_s!ElBUQeAJpU3n1Yt)<`h#A_|AiR z!@Jj@L%eC!YM_V|Kw%TQ{e69XSj~Sh{tymPy<2Onhwl)`P!bapF|FM+le(KQ1oOhf z;T5|~VSDjqN7rOwNxrM0?AYwWMw-w?Z8<3`V~8*$(`fbhaxyZaN~M0qJR71`6~W0g z)D5=dQWrVpht2m$83>+2ZB9oNw3W=`QLjY=O;Zh=+n3^SMB)hzPEi(DRt_Q)?Ci$H zp-?fW3v$4?qJuM`f@@Q8>jb!Fw? zJaSf-txytAl2RZc%27LMVFNurKC=1UGDi(6?UesKYHQ=la%s{N9T^?nb0?noW`;Ve z`o+X|8QY)u-etYTY2Ph?FGw-qd{`<~x58gAoF$H8Tv+$4Xc=qy%P)+5FAGzQR$~@_ zdo|J*rqzT6Tix>74OpTs?UYhgmv@16Xx;k3iLn4OekAT&S#51?A)!Dy zKt-7P;o#ww|NhNxw=JZg5RVm@;veci7@|MRwG-#VbCWuWhK5E5&;Yr^E*b9U(_R_A zXWRsW(C@cylu#&-eQ-iI!JZLc7+$6Xk?5a+W~M#wE&2i&5>;}V2>AYSiTd`=Q zfY)A22=RO+BO8Gt2;sX4czmLk^v%yc$n=m-`V0&u*{5C7H_RB}saj-sdZHg;L*HIY zeD}Y85HJr0q^IH)Eb%lG9mI6omgD9&73y=ejF1p1F9Nr>&}TW_NIs^?p$GSU0w6GS zXGIDr^aBrr-nj@A16>sny?^h0w*1faSis=le4u>*8a(!9{S@NYhsu2n+1v);YT4iT zI8%xLrIc#=d2yp6gQvU@I1Ql>M4wzY#7C1wnlnLy8R-o9uYfgP--_q< z*XdGqsY)eGM?#=EAZH;VAI6&Q7|Sgq?xlY^b4hYq&u)ZINgJ6a zzeX(F2k+y`&4(UJzt4;5j8q4d!~3&UK*dL3Q1>_jK;{=XYKkxsMvlK6{r8NFjOFEJ zZf@@O_VyBB&0<vO*-PpwkH`@X$-p82QJ$e7KcAG0jQHbk`CP2U z*Nc^9C-s{crh{0DE3{ag`Rg?F?M%297w0aBOxV+sTtNTgPxv5 zMMQr7{7Dz}X?AHT^!774Iywpppr`?`Ll^h!SD7+gaeKQLK&zH(jB51F%}ds;RYoJz zH>EQ;lr%I}0hJ#bWSE$l8BGm@ZL{fI;iYi3v*Y>Fnu_M|vaj>8gA|mM(+BCSHu_pr z*!cJ&=K^m9LHqmrGc)pPA92ECVjgHjUjP_Eo(xk!E(y7jM(EF#OOzWkLWg*A-8}nMW4w}SzdC(2_*ED!w^6Et6abjR#1j~iArOoLRUmGC`6NdCo zPfbnD%+%=j!yDooekKJsgzWni2u=zc2<2E)QDN=q$V5a0u5)ZIr4x%AD_(^$^U)k& zI7G^+^pJXmWo2beO|EAv^WwCW z()ZubopwH3VO$Aa44FN(Q@>ZK!#i7%PHw1||M8S>d;@wBSkzD-Cnz=p9OGjMu$eVC zCQ2B&gM*E|vby^9h7e^P;0Ze(l43y~c?AW~)!%?2nhixAk_*Kc5>648p(E-RNg?2X zNJwX{{^FXL{nMaJ2w3#h27@CbBXm{_m9%Q_3xZ7iwfd*Mqs+KPn&i$D0wSXRisiU< z7_!&-Nz^Bl7} ze|soWgN&&PCZHOxvjd%Idfw|3aB4c7wbmz?AN9O>T zd1FJnxpfSbVwq3HY!vIUm6o0!mtZ)%@h|~>lVH{Sx`XG}HVUv;TJ5&b&!^dLIQT=( zMrr#=nX~RySG!XpoOi7|zmj-sEh47g9+~VlaOSeS`Gqo5e1J5oqL~r}4w*5DTBAX) z7sfE>55bSmfWJ8;X6*#TN!lJhivzbMQ#{ZZ%8v)`4)eFh8He#mU)P zQ}a1pggq%&8dz}+K~14}eT7DX0EJFC;G6ozxK>P7_KO4r`Puwc_Zfy=qbcb%9fY3K zaZ}Pa!d`~3sW>ZS_+A>F+j?XzObCaBl*LrxIyyAOXBlfj1vvPZ|3tz-coE^wT}a-g zy0Nq|&NXCqAPxWt?&!z};8mT0ygQ#+X_%0iUQheJTf0oN+1}Jtj7KxD&wqYrXNQ}H zz-@GRn7;wYouC$aT88AVC85!Xp@#?ks?chE?Jd9a@)Drd2tc zhpkAaivR1$#f6*8n1xt26R%%`?wo_{e0_jx;q@d#H2m{%uUb0aD6>W%gQ|7 zm6ae&qVu$}sO^6A^=3mQ%hu8^c76;^s)dH)4`#Ty$LH{WV?~p$;e(BC$)X`3AfT>} zy$ve@GxQBGnkEpKtgUI_t4(JtB*e&yX;o~v2$u-Wh7LkwMW)EI8Pe`lp_!|P+$r&Z z2dRN4tAZ=l)v#YAAXDTv&^oE7rTSUV_cO67Nkat)Qe0oZLeDPL3#2}3I;D1i~AEgjOfMmOEon8_o8C@ys?QZ-=GP9v@8Ty~?NXsAURodsVKj`JHwPk-wzgQCas<*5TAF{D5qmYB>oIUf_WUkhVX}a>$U`J-! z9}JAV{xaoRMsUH)m#2qPEChq0Jiw$%jNmWpn=g0_Fl01ZEw?vWZ@8$K9i4x-BT|@? zP7K^n4hb~)Kaf>n2t=e>m5tpJ*QRt)!N*BzyKX@*<7Sgvussg?Jc}+DcP4SC3GeYf z)$+yzfQPa&1#jS(7c?EyCKx*3`S#SAe%6(4(_vOfrr_h#IcP^0|MN~Zea}x=M1<#V zPC<;vzLT;=MNO?4*i+!_Y^g{7=iu6V9Qm23!&aF+ex=?2zGFUH`9jvLM#CT&F&)yw z2n}h`+yG|Jo?B2Li~)TQ*keYsATJNnZoBltH>}0XBv9WP+ZjLZ($OzeNt1k@I_@n&W>gFqpKe)Qca1rl| z85#hoIGs0dIGb>@*%v6BATdPfKu(2QygkJpNtOaTR5wTSiNr=OM%Mm~RMX5&9GK`}c2P z&*bN4q`kd8SFgjI5LpD&hjkYM5EYViUyCV%Rj$#Amy6%1BXX!>dY>&uheL8JFc zV{8X8uztvZE(#9u6m*g^En5}kb z>)|>-@PE|FFW~)MXaWbbjTxQA?f|3Ls{m*tsKkS7a>@fS4+@ zIAT;^<6u5RARo%iUViopTds@zR=+>Ax6BDOmdrp{61n*;4x+Wom4NiQUUo06l2_t4>%+c;~Y=<=RnDI2Fn)xdV z3q|1DhYxI7ESF*d8d>=K0#391>n@m;u5vYd^|0+B%0FJKN%Eb(f;kByFMRO<)T-*jv8@@GC?CwE4s z&6GKQI?-pHUTLseMdlqlXz)ug&`@2J)R{?0bd+(HMQ_gO74rg=*8N? zlOcu__f;S2ccExd`{omOv(G0oE38tk+bKcw0hL;xTT!1t7H*DDegurZpw26tPNG>; zgpiL~KSxb}))>lZYW}KMbD(uTUAh9^k`g0I@zB#shR}PD-pdB>6*1%|S>RvOEHr77 zXOH?Q*?>1Q)*EfI)VW$$-n2@et*r9Z#$ohl6%?jR)eVPyAOZ!jZjh$OmRnsa*R30u zEwADA1~$c%BEp8g04RhY)@|P!%75Cq95kvvN}1*$mgpKWHm7_#U-Me@h6G2A3ncP)s~LCB}yZl}^z7(|N1Rcx)IDWJCbrE(J+~JdQNP<-h?EHjQ|;@HW4q zy$DlUUyU#2V6GPjir?I3HCO8_EjV2;3H#S0N#KR2G#GD;P}6;(d{fF-F-o2y?xo*n zj;5SiE3m=!I%W$j&qWP?QO9`Ej^CY!sr7rgL~d)$yIRo05n&s9 zz0-NCR~Hd-7@72`uv((abO63{p7wUv`I@};Xxxq>O-+&;2B;n*|19X-M}CHwIN$wC z6TeU~&s~z0@pOtaV2!U!JyRi1GhIGF0oi_DtXnkR?8xZdu7cb@uHb<14@DF&>MRZn z+T8+swo>`q9=NF*;F16lFLdsIBgXS~<8!SBd}b+fs07D864t287eZu6?Jx7i!c*GDv?T53~B8(91L0^`YvZy<=G=)R}Xi&k; z_UzP$N{-`~!k;&{dpxY1Ij4`4RU!jPuS$JNsHYx)eZW&gP{jCOvDzwvzM1P)r$v3S z4+}Mp8U4);TUU)wZ9H#TKqx{8fWE(BrX5&T3pX*`nZPKTCT%^@b>QrHFmy1YPCs{- z@-gu?xuOrvxrj%M-KP5x&(1-iO!v^ul#uOHB`e^VEo`$EFMC9&0M5{_QBx z>bx1Po6VXjDf!E!0zfEuJYXz|b_Q-%g7DPeXy?joUj;1Ib27ZNapa-jum2Gke>qcA zp6vOz=Ct6dqWXTBQZvjahqG-z!V2j5wyUE_Zt}O+!nz;mFefWHliWTn8so0VJddnd z9(n5HW7)nq2!zG2l8tsv8c&?uT1B0lQLK*eB}g)@UIbnz-@RUELn?o#E}Pr~`o)*_ z*G1;3EMunU`2-$rwJx+5W|2?kW&p5rn1%riitJQ2b1|=fS)k1n152^l*7xZW?72D{ z%mJ_3`y-q7=bekKO+V^`tjytVshMb6&kIz_`LR#xFNY5ub=>0PlHKdaNYuKs+{+jh ziLE-XJqw1+??VDi!64s4)_OT+EU|-ha2hD5jMwE-jVw@^M__W>i^8NSEne~oCa5xg z?>H7zQ1fcBBN(ET6PM5;?bEoM?R?**5~=g;WRZ_dTgqMso!*=AWq_!Du1(q>rl9X- z)wKQf#^*-M0&m?_W{!4!p0;XmG|DF_N+N6#I`yiQX}>UwOVNNzp6oo%1&N6731dE_ zV8WI8#pPggp7WH)abV`6!|t&4oCnH!*}hu(_=&ybT*~LcHG%@u%Dz3a@Y~oeGWBKk9g9$?@--6 znUlYz#@2yWHC%4#`0yfzE!s8sWW8n3y1z=lB~|vz*3%KcDAgkmW*+ON>S^g?dq)hd z9&xURKgxGfHr!|+#{)K*tDBqE(B;IA*h|SE95Uy*LR1USuN}UeZ_4XF235Fa2od}= zADGWMxW}cii*cR6pX0gTxoCgRC_1N|kC(r`-}JJMaekZK1kK#%TZDAf@II9e%;#6~ zSW{&j%38J56}G#p+DIYcAjsg+sm~&M_T$oJjK9*As8!56W<3x8Xr4U&@>|=R#pCUR zLs_92xkjg{9zP76B z((Sk0SnD9(2FaW9elTV>zqfr_fhdE5N?taQK?C6DRs%1I<6k&_PF`i#l^ zZ_rQ?lAf2jRkQ8eENA4)yoc#0s8$W^xz5X$#BF&L;|-che>_(d*|uAMmLel5%y- zFEFS(HdV6;w7GE(XJ!gi+=M;yzqxiYom?*Vs7!j{`wc%CU%H%237mZiK4qw^#Wj3j z^Hx|P-g!GNtt?S8q_iqefuHJ)9+{C>B4A(M;ktFWwsGGlYNvC13K=IgyY#q@8Pz^z zv}$o{zd&`hR^i=ju%?+o3aZvYu%cjg^Jafy8^3M5_@hKZq~oQ;ock99F%1p+Oh(+2 zEd;#f*Hx0R!r?g5&80NP&PJn~mrNMsL zs7-PvzYRCUO!89lP*%Thp&oe-YB3T6m6VjZ^ge8qua)~84=>d{SczG?uh2J>@Ozy6 ztvDj@A-I9b`Ig0QH!achj>( z*3EC7F%BEMH@mD-NyHHKrygcUKkR!>Y(jRqvox-F#+57F*4Wqu-@_#6ZaU` zZlN=$r>BR6grEe*+Ugq^$VGFUot;fjPahqbhf<-=oOX5bnVB5{>J8X$|E>}Rl$TcM zbkYRbx5HTxBST>LX+ks5Qsztm^?_4}x&qio=jTaIas)xeWEOfDv-?!z`AspUA7+;( z>p@wiM|K2@&xm5TI;mOQDrW6*FeEB3!5B9qV27QFSqa{)X=`nUYmxa9kc{VS_HQ>% zZiCbpsPYGD<2Mb($GtLHtDd?&A+@Z-FDloQo8>|v+Uq;`%@y~FK`XJ~4<82c)XO?| zvgn|GWrM0(_{A=2V>V|s1|u-Q-L-FmTlhb|b%2^EZuPc>i+&$*yvQ8m^X{B8D}|$6 zc9(v8*@QN^JZ`QeLAKoV=XoF-S2V7>%wTUU$zXmxS}cROn_8iid6o9&Wp#&^lW36NWM7J5f56} z*MR7w*sc~dY})m^O!2?&D-n)$JZyM~M&ou9lmD))?DTxRPGvON6+osK3TKFbFE+-I zu<(T`fTD}~e34X8*j%9)4^#dXLfjaj@IWPu`Nl^E5i2Wdd0C)TSJ~3a3fL6`7yuSF zwg9%!ho3OVe^UOi1qS_Q1V^=4C=-{E5YYTxQZh0zk@Q0lDE}#rga;}_(^;$lIjI3u zBmVrXZwP2dU{6?DI=T+*z0#MWCKuP-r>D2q<$NtnWD3ji)2wN8P7XM|_h8ftj(uL-wL?5Y>mDM_Nx6IBe{1cmqoQoz zeXq129nxKrf^-cXA|l<5h=3y9APs^rC<=m#v~-s=BA|ej0!oP@AT@NyxrTTD_TJ~5 zz1H4mtuue=`?7H6nftl#>-t`w@AujGLcI`fZhd)BDch*a`^n*{T&BqEoY9_!>6#LG zd&aTUjwb%emu6XZ7PK#DYul=k9yk7 z#2#rWscTY+F)?i-!dp&!LFvEU24%7 zd+PN5s8ePK=5apLYIOlDmg=`|1+k9o?Ria~iH|(mviVYFGl(9@nD4CGaJn3LHqa&-rC{ZET3u@=-ld@` zZ8R#gu=Sge{4X(M&x>@AmV+h61NKC1zYJd}m9G3@WL%Z(MfE<3yRa7Uay#UZ+j}Q_ z#y@X1{jhi=$v-3G(lL24v%h0wv&I~6{w>Ws3odq>y43Pe1 zicLy5c~(1dB1vA9T#^xFdfj`;DecH#v+WIChJ(-pv7^x4*+&^}9kc#l-yJ+3<=58o z4>s0d6q`;eQW;1Hu~j~6(`dWAlD*K9DBspXL-WCx)x6C^8{z5BeX23>>kLyR>S)i= zbtz~N@eAd}xoB1(O7wT+F#GCce)9~Y>GEB=<{MfQJlYW>2b2)i>6vzEDr7C0O@+T795m+|^f+QoIRw5*%Qv|h7$#%vR zuTejbjl{M2*%3*ACkexJH#aw6p&Q-*;0s^ayyTE%uP^)Coy4~5z1K35oJ1e)-UzI) zO~Bx)l0L>=G1Avpm*&>c)O<$OL;!gNV@@Q`j%(rrZ67G|WJki@e+3|&&L0;|XsO** zw6q9qFZ+kZ00ZzOK9miao*tJI8W;Of>{F7<_6 zU-h@K8_**$2JRPe89oGSh;(Ef9|uOzc&LcPd;v)0t!VWm0L=Kn^pB2$BFB-Alh}LX zr+dR~!m>w7EM>5D>BTACm{H+(dYQIMbuX~brqhGDM3Sz$(rQGti7A+GxTgASa5KE| zD8@l;?^CP7vr$Mzo+QZPNr`vu7YcpAouY^Kb0_+qW zsyAvSBKR|dXNP~klWq?}T~Hu}pbSoo9vMf%qqsRXpPGx6Bzb10Uq6P<&pWVZfw765 zrt{6N_X%5v`vz{#Eo);Tur$ziE=l~!s5@2;Cr)=PEEg}A6JJVw;$6jqGvyiv^3*}y=!%T?PQy2f+OpzJYjj)Bk{E4BFGUGez{)oP`u z7j7TsUJ%|1MwW;k8@VT14}vipj0hv~_yGb_zMW*iS>yRvw>XTlLgj#u#1bd~nD>2o zExmBvp7jljEdwI>7-j}?u6@}wlD^Ty}X!pg!Ct#kQ4{Qdh?ADhgyKwGsXUy-oGO=T<*cQBKDwQ3D+ z?pBK;xiD8Hk9UE)xU{tECu3C)B}~87Ij8x10eo+_X!Q0=?x7MAGH}ePt*tF9BOdx? znMbgU`&fU-vti$a8QL=f5Vlb3Rq_fyLDI`(VP_>d@Hjp8Lrn~?4Z?@%ze@-6XiW?m z@0C$*Bt$`3M7;jh5A`alR)zj) zvnG6H5kh(u(th#TjWoTJb`#L|g7)9UqxzIZLf~EWi<7?mVVpR>I1+*a0ICXaCVFFv zdgj^2>z6U}#NeUY3Xc=-Fprjhj{{N$V4B*) z3MQI8dN?rNR=D5yT}uHyK4`mz! zz6hFu=9z63J@(4ajm9Zh?EFhZ5L8=(>xAu0SygrO=x10&Mq^d*9yX~?%!fUjKykzC z=hv0rI6FHVu7*<-6@7m1$DYa7v1A>DlRC1%um#jRR#sxP6brBaCJk&( z3Ejt0LEZXyb=9DE6771@>c9E1+K3(fTe76P@#ZD~1>alwz7>&KUteEYIXwID-JK|K z0Ya(s?&bGu!ou!{+xJi||9I0bjzfKURd057R#*WtsenM!e8G2#V1x~}KMxNNnEZzg z!o98iTIx9x`EYrZ|EtEWTdI+dA3wJ1PI#V@l6}j?g>NYX5ps$i^2H7nmbSDo#yyy< z56un&d?`Nua^qCOHILbjNH`+1PoUz09iRzx{Bcj1jvH=_(Hf%NO!~<)hy+O)8G0Zg z9hxLw-*QFh@n}qq z(NFnB)Z6*Y($1I-y*LM*5UaC+v)}5sEZ6i~K`y_zNJG~bKZ=W4h0R8CY+nr{2`63j zIKmP;&0I|lEP@f2A6%=rJHWWS!_-i;3cLJxbAY%m;pXKm>@fTrKouDn8ag!J4yOd& ztM&dwEmVow1#jLkQv9Oafd*RWiF~Es)_gZ(Kry`Qk`h9Wi>B#fIaeZ>=ERlp0Gm_6 zQOeSbyEl8dr*yX4FmT*D8j_no@a_(IW*(m~R~~-*PZUug%G;wVZLjR`#}4ZFk5y(% z8gWN;z@12{Ip(*b2KF|LyooI~iMv53CLWX`n@0nIvsN&ruRGly2><^5=WO}$T=dx^ z*Q-u%U{i3wV?(+^tAR_*m^^?1f4DzhuE0t%9J6z!nJ605ghN)AVFb=4u!?m@m{d9r zWr2rbcGjkON!gK|pTDHlipi*^x>`NRxFt~XhXVa)z$_$H5$)At2GFMVAV3WePKSZw z>(@{EZD^$fP7ZhA0D(ne(d_^2ujdU0@*8MNmvW){2uX(h^SCR5tX7#=t0E#Iz(1xw zc<`VLYe{`jnC{~D$H{N=C~P|%eVhJ#`Eu)Oru6o5>&EzA@b=z(D>&H-u!94)hZ40- z7p5DxELlpASJp#<@1U4YKZ&0mcQgnm%17>p>WAlsY}L(JysF*bAF^`_&3hfN=VGT6 z4m_E5$i|-Bv2*K-2K!Hfr(1V#^1*H9!Q>jTmD$)R4JKGPxX@xIm<@(wIvI14!1UK} zKsbWOlL}C-g0c`wTZ#L<+wZPFy(zuDy}Ud;*B%b^^dJo)iet#C0c3}!-xqESc9K5R z2{k4p2b2sLbySa9>1Ij9z+4e~!NGz@{D{SN2Re@JZRSm|fr5{iHPKH**UAbZCT3`E z9^c&7l1=NMuwCi&t+2*<3_N-^f`j+BnVR`|coZXl{4k{-&`KAxNkkqFhKPi15pqCb z`az*>NC_M3`aPN{`9Q_F5A%bYaL;V0dU|wB~Bvy#73 zxKJF-mbD&)44N+e`pB@#kdB%Oa~fviJ6s6azl7gNB^RcHaw9MVZ>jmXi-NCl{U%#Z(hhrj%Ki)gktI<8*Z&Of`KUnr_K^ zSQ40vIeNHnm-vg4CMV)=#;Xc^ ztG;9GPZA`jt2O2~($Rf1Vv;iVU%KqwFC#JdeaJ1lqGH~3$LDl&V%}|cTKYTwA={Kv z$e@FT)@tI}X>{xU0Gqn==m`woy6I+P=GiQ<-?LF0GgrT(5x=Yq4Q2^K9q!|TOHb3- zFQl>|8U*ZL<5kv3gE!g6!CIN3kM)50jYjOHjZ2b%R7ZM7_=YPsl(RL4i^NcevoPf4 zGPJQaAn)W|&AHKrMf6tG)`qe={&1L$%k~s1KR5pqCE3^R`r{|zXJKAL7(W!O z+tyFW15TGuh-KChZw{v7`}#7@x|8Nq;>szOPe%~PY^tl{i?BHU5Ti~7x%Er5zfOLQ zpiazvXJ=^<8~dbPwWRrJk$9!W3U=Dgw4r(6q$}b?(o@Nhw1mIpQf%zT#-WPQS6Aoz zbPPj+*8XivF=6BVF+F%9r}K1Yho7`h9A@8pRf@>51p9gKhN7At$#8NoHtk^$W|3}F zNr&MtmV7m@6e0L#SZc{p^=s9NamKjmlRw9erR>g0>Fg}xW?5N@{j&kr6Q8XK0ytkU zslJsCBbC8fb|)}_lqisSB4=;GeF)xzWO_+=Wx3(sgv+*_A#0P8vA9_^HI(7(ZCIa$ zyy5s+n#|?u@H5{9`Alq0YsA(4!!!#<0X7wwskm;vl7D^u?iXg#Pt6Y*SB+oR)uAiX z(Gs&l3e3q=YSBCL(s=q#Q4T$=r`ui!F$AZpM~796c8)o57sOLb1bVt9W8DyyT0@6B zWQ?~HE?usWIQFyZz1MD|q~_gdVEN>Fhm z*>~w`PSIwKHofbxFWR@`dFF$k?%LasKhKSbnB>g$^^=iEYkrd|hko#B8yH|l`S)Df zB#DHrAACQ{AE_d;&{hF-a|ha0@nV^1d}yufOhW%BmvtyQ$|(~QN4K}Pp%R8e_MIPr z{WU+Q4zQVLXJrNAqyy*tTH5DE4H$Dji_(X@x^-7c3DcYYdBqF!8=IF-W}j!!+&$qN zoJIsuh40tz*C(EJWrsALHR7p+B0@5xHtcH)Tf8l7zo8IYk@I<+22L9#K_LmbJ(tu8 zR`1_e=bX>Im9hT(mu%Qx&m}zK`z3P0AAeTx8%U{05V_JHr#$90l3QQ@^5kQB5@m?@ zJ_4~DYqhsX88&0JdPdhE;Cc93PhCq_AaE^mj$@nTMEUH`qa&GG_Z=8PPFe-xB9H$j zcE3koHe0Msn~#qvAqZllC1Con?or=8eWg1Mnp&H&HJwK-qRFX$U_s$gQ-AJZm6tf^ zQIoT^5PIl5@+>Xw2b|3-r#m4&KH|c$JGRLPvJ9}^lh^@N{Re{xV_ zW+V2C{1+AL?SKGj=papfRTkG2NEGQ6xlJvQuG49hG7U;Aya8t<{LIAm0w!5h^(>cq zo_KE(SFp&jOdowtq{Ps*$_Un-{bps{LBfOy?cIDce~mS3PQmmWMiGG&!zN731k6hO z%6_ihW23;N(XmlcF%jl!=HDz=PL{Q;>g3cO7@RJh?S3Cn4=?Nihj#JR?YOfU6kFJh zgPh_c-l-S&Myj_M(NV58SZSg_c>>p6WT;iYb2be%$#}U9rY_Pge4+xtemKvtTRiQa z=6D|OyJ2O*V!D}K17^R^pKpjna!20FFnV^gM+d6WBnXfC{{3Z2inxTtyBAs!Y2#Qw zl(m%GFZhfOy{?~{JodqDxog?7?x$wB{#np!w;n%&<@9N;$-=a3+&vfPnXwE=e+|;P zapR^-{G@4=$}|hEo8sE0FpB<}J8uJ-d(E$)o7sQR1sBUbU)SDu%lA}DPw!Q?Ov^P? zv-+f+KvBg!)(*7Zm(7)xnd9weWI80d?A1M@Or5ETa))ky#k)I&&hG|?C!aP74`gRd z2ZXL>$sI;1MsT})S-6V~e0n15u}R@SZaj0_%z`Z-6f+@&JGt8e2n-$TK-S4((2RQB z5YD&WvP;(IH)DU8A)k#nCy?DrS*~9nS;3KFCN6o3Kh2-Y`%9FALxqQV3pjgU!&Y6OB1%m>(_!odq+?RV4h%t?)B0{lSjbHs}x){Fyc*QJn&PPP0J!&9>|cbgG%6d^NJec zpn$7fKrFP&D&Qa^WHUQtyxc9j_m8=rv7;sFN6rUR_1{NE!VRLLqcV>B^6hMG?aekR zBs`?J1jk$ss#>=udX4POH0{mQeWtY|K8W0CsX+}S(w`=-60iC08~I4m6RogO*<3;1 z=b35!F*5Z;wOnr=^Lsf(?4RR?%H*$Kk43Q^FG?RJB92LU*g^w0KXCzD96#?Rw}&yI z(lfc&J&BQMI`MT?>$q`g{nIr9!8d_Nov7ehniWCX z_=MQ5_SVhm+#@m9m9?cVp2db@X%UIJW|Xo>I5e+W2R(+mx~zH^qk2V{ynKAj)a;hgY5IymLYK)}Cs}hjNFD-LjitHzMsffhJO9 zp@+P5;ppSD$cihlGZ7G@u^)K-H^I~V_5#0A3+F$Y6ie#Ze$HJH?v{Ny=T*>R1vXT^ z{{+TFj6wGgubcl7JZ*Z7o~Rq*VLIxmBA6Ed?s2+hjY9LRH4@wAOQi$xrW9SRXIjc4 z0qZ00{OUcFhVexabh~R)&UF*_#nPJ;jj4kr*7GrSn9&+S>L<01#HO{0I&FR;S<#ca z57p)S4}-sxk@lyxRIudF_r>+z-l_^kyHb4F=!cq;XZc`l*GejM@-_R9$VeRmn0W)gWjz!{L^qfVUuSxL&8?v;d zWVI)W4Y)d|=_`D)L5JHtJuzt+TieTsXQxCx4*FYVrKM}*$`GsKWI|H@UM(np1U=zj zTYDgiiq=mbu08)%VeNQ1Fjxj7m4kzWx2Na3ED~gji;>>5PrbbXofx<`_|ee-tZC6J z(mrd+1?%g6>!HZT%+}V{swxjSAE7k{yN7opL+0Y~!B$dI5`g*8JOeI}>WgaLLncFT z4IsGXR6MUF+_IXQ=#wsJ=3Yg5;o{;Bypc6CG<<xu`O?;|Loz_8DjvvAo6h^E^dzUBm5s`ZOJHDAg%-nT&8?r5NjGo6rBWP$x$WEs#J{Ty!%{Gl z5{b^q$pOv4K#Fwp(|mtA=$>^@D&33!p;HgsIB1S63%)Z7KEJ!3L^B2Z?yXHx587R2 zZnNG+>k+m0>F`Ni^bH8?)4?dCQS<86tGql;3R^RE3~r&iNTRoN>ZFy1*D8N?mmR2| zws#J`4#IPEbi_Mo038V2OtIJ`UgbV99N;}(lo7sMC@PM&kRbpOjZqpsnt}B5qQXL` z{cbbiw!VK)yQ4$%?Y1O%#0U!uVIu+JkLxQNNfut$ByhW_x3smp9W6g&w((HEX3H91 z-BpRB%FWC3pHYa;#p6-Gdhgyn__b!Ge3Q@%L37y90J7C#N|*`P-(ZPMqX(FJN7FUT@>G6n`+uJp$5?DkXzd zVh3E`zP>)t3JePG4JUk6dksO_^v0b$P;n*qTApuM{l&Kv<*8%D#l@NA0{5RAS%NQs zd$TKtSf)+AxwX|QFDcBP1l2CRps%lQO52SpDX49tfSg=_Lv_#Jy?NrHw>qvBOEX^b0U?rlmQrLiE-DVjt8r?9QK*R9! ziTrydEZyGoduA;G-U`U(y(xkr9WYhWdVsiYW4=cEm?WStg3Tzx{>P25#|_mW8O<(L zbTfY71g+_gKF!^JeK?(&pj6D^a&KgCPnx9VGAuS`5e@g*oL{U-5CRnR?_qayUUEp- z*whsNUOCHE$}3ljbbkj+CSKArG#o`s&<`n@mUG_5J_E-A>&tBTkGAOz%ZKB-2114H6E47ga`(y5tq^Tf@X!l)8PWW zd>DS!K)8{MI79#py@R}|>S_wjBoBaBbjT+TKMDqiYGs#0_!b}EaRx4``|D)wM9 zri6`6>v!x!R9)g7j&Wk6qkV3jpIjZ8&kot9Ctbwo{GH{#5i)d%_$RcD!rbl+TMj>z zVGTsGY8~yFaHqX1F7E5^w*V^cKv^Q0i<1+bFl8(vAyE&8nQELK71-h!SxJb5r-|f9 z6JQH}WEaRvKlJsSjm6K_e)(2<_MwD;c|G#kv+&s#o-__blgzt3&MmWLS;V*NxGd|; z4`wMJBL8^Jv;;W`p{wj4=Y+M|e3B88F9$t(3*_Dnqa<}0`D#FZX09rV-i@=6?RX*| zR=khEKjv^kMk0fxWVFd(pMHx`Sb+8~!(%Sm=w{Ij>-l*n*hHED=PKp-;*C-KA3eBY zJ@z3`v`_-Ere#D$MZsPNz}UtUP0Icdv2=a`0RavUj@0%KA1AV{pnK~p84_CPki=k> z>8s`E{iTf{sS{#Tq@40VUk$Wb{PcabP8YH;_8DaQJ|D1{vV*Z)#?i zB51|vd;I8lD>G!x)OWTUUtw{f^`(s2)tG-P3SdAqH9RyFdi?Cwt0v?ov9(XR-ni(> zTb|9|%dUHZE614Q3M+YN75)+W5gm&U{-RLYH*e}+Cm`}Blz!)MEaBm-uf^}kQkkwy zfP=1~hNgbGH&Bi5F!8R?df)EfulOl=F_z@JRu(qcW6xjz!)v9TEnrU+Z3lsDo}Mf+ z1tWJ3M&1dBHV4c`UIF)TmLz~8JP3qUKcDimwVzoFW?#Q5jveHBih8+jXlIk5=N@5^ z5rbo6SD?lxC9Sy7LYej-^%5s*+Os@{(D%1w&$i?4e(S>=px^(MU@z)1=J_h{bSu}) z>UcPT!hj^cktCFC`b5`r%d8~vjnS45Q!RD&^E#RJ>!Ju*s8Y7@TqDfNqoSjeLRi_@ z4uX&|j+TF=4qkI*$TjY?^?vsFev}cs`NY}jD)`*5LUrg2hGxjJ>xbe>X2@#^_o(Jl zN{}JK`{zqs%b+d&6rp@v_K~f^^&fQFav_^v=?Xm+Ejw82#`(1E(YJc%+8pb{%pB>MR7L|Ir26fMSNI>1En6!Ef3W3b+m2@ z@pE)NbqdrpWgI$wVR^Rvr1Y5el2}Fbn}kn}DI_jVud z=a&q@$c`0F!)G;Q*X&sEi%-qqhHUd~Z`u`o>q{%y>rI~BNcw%bA!sCtANk{YhC$?yrS3NY$2HBYU~*YT?0l?25~Q^^>*bl9LJ(w zD}3Z)H5~*V9Vq{V>T29-)8AwX+GN2uXx|K>>;g7umJQxs^=&f_n*90(L!6iW`1r4T zcjC^(Hyj!}bYcN|I@r%}c;Dsjz>5HTX4!+qjPVA;(;p`TP5Ya@?XqmrlCnktbu|Y4 zSLFy6n#PH9Ckj8421^BNKfl=>CriZ79-zIH}evFXn^6O(>tfFOfZR3dM_`_l08+iis<2+QDBKYczR zm%SSDWAm-pTm~6?2JvULM_+0S2Ug7k>?-MIs|}?26Q6o4aAyymG+}8qo_2L|_4HfN z#BMHPoFw5m#0%+abw-OVk7Ue{%W5@?nFx$Eoj1_hoBPnCZ{Qa5J%H!SXc1 zzpcaE=BN#KYM^BFESKSj%=+R>())f*LUb8`ldjtEhr}jX29Iw1CNek+aaNa5#SA8t z@wZ;Db?Wx*oJ`!eOXjBd56=b_bu2!d#G}aH=jYQk0IdcG*VjJ~{}$!q!leW?2k4E* z_;~Dqv?)pzzI!KM1L+E-r2Oo@w_j+x>-{D+B zIx%Zgv8AbJhll>f02jx^j*c4MGk1FN{5i;i0xT>F0v9tAD!M2J{_8r=#8XI2zO+sN!B!0gmey!LVnX~M+pAx`XQD4)*UVqTGksL$zLbPgytd~ zm-q%3fDvM@(=yHb=l_oK#fZtfp>q4}#A!nvY#5<0l}KJ9?b$K>^p!Fr=rf>gfes3p z#4IGF^BkxBm~Rlk3^*&_Alrx?!Px_MUK6r~^b6guXm*bBC=TAnskPUyZ&p+sdN_dS z*n|q(vK+dbY+B=F;Oy)i6x5ssSun73z5IYD0%th(ccnKKhB`X48!Il)CRYuOjG}WP zt^ov0r_hU<&z?Q2DBZJoXdGeA&TC6W2lU)_Y1B`sup^x22?OLleV{~F2w%ZQ}SLiV%ANy|u(b^A52^lWu?brwr*Z)(gBd>UlvGsU>u&ZQ zzwPE$F%a#BP7@UnScA_e8~{+q3ArN9mMa#^)%!CoulIV%R5A0ozcyWHgArUtfz++W-E7GW57g$ZoV01L`)k zdSP0AzA015oV%X>A0v1jSv>gP;+FrjM$Xk9R#sb2PklJg;guAMmV_QZrlqH+r=gjx zIq&jW$ew08J{2z~N`_I`>^Gxt4vpjTRhM7~7kC;9pK`1tt=|G@u1HEn%qYkSnE2)qXDV)j%cz-%NLkdcu=6O#Ld zKBBp_px~aPW1A;v2NYkV1yXvYLdT*R{T=geU50Dohvpqh>ZUvDu@%%Ubz+QOGP8y_ zATU@Qs;jH*@7y_{@5Ql{BBX{6SDdZXnC&(MYv_)CAVxHydmra9F)=Z3FE5q_X35EV zH-JzuH9-%#UDen~H}jwz?;s!49BvL%#4+Z zNvwr@4TOlz)$Q(j_i=J^rbSZ(c*5N_*9KcYFe5Mox*D|HDJ1E&M3G=)Wi@UmIZMXK%& zOhfugq(dY**DdRNK%NNSgjpU?*+|t3N`Zk_aCOOMheuhvP{Gpfuya*$j zn|6)RDZ?fN?V|+e;si9G>yN!EdgA4K$l#b+#4$`lNk7e=Gb8TVDFWQVOnPOC>GB^P zVF`&CS$r~KZ~Xe`b42!xokG<%s*sEh(-$9#a(?%>rJJD8+!** zU=|-i*i+SX0E5J?uRNL3d^=C-;>wD$UTRmJW+#pd1LdGl=Ns6S54>Z8I`iDBD_Q{? zLMvk#6=P4|!oh`{?)H{C0xqTU&wQTX_6}= zzh%?-?8CPXw{8)sZc&T4PB+nH`(5q_rUNa)%}RHTQvYGQLSr`gvdEf3fZS1y|GFGO zgi%$C3C*m+`_RlLkpyM?TE1_EMMXl*kO&9^EEBa^cgmg>x~{!Ze8!WcW-(%H?~4`? zU!uglIqmE`fGHoQ_*wClQm;CsG0VmX!8iQ5zyG6;M&Pot^xwaKQ{{u@TXc&WW+#fw z88AE>uwBHk&hq|Nl=pf+t&+wZQ+52kuifv%!@~=^l;1rv+G=cS z!f#?QEKFW3ZTE{S;|vG{r3JRb@1kD zTk%lWqo$k9SaFMuD-`+HF=;MT*!QQ2zH0(47F;!j*w5M>ampC~-huE!m}62G*wOO0 zf@`GbdL`a9C$&ELhP1sq{^$>wzRvIN;!>QM+5X3!#fZ7JrmoJ%+uOGF+U=r}5|v)v zk-O9KPurJ-pY+*Hb4mXFrnvn0S!J!EjZ6wL2%hW@{E#S=VqOUXM}``~7PH3sDpXxT zf-*BdAJ@tXG&e{|O6~H&ysC!%=83ZB!kk*VIG=C`C;l>oEM0eHg}?x6OA#?KThr3q z>YAEQS=QEzOmhazmv}%r+0>yScMz&?@ZaId+hE{=yrpmKTR$oP;t46WkYls;oMMeT zcc!APNp`8Yfp5BJ)HifNoG~i|QB7>#%IzLZ5*ce>|X%Y=4+ zv;;M(-P(F|9KH<#&idoD9vNc-HL@9w{$9Qw#Z=W0dqcTr;Zq7v6;|%Kx~j3fV3jZ_ z8^?M?3Hd^~3TR)3B&YnE-!n4u!*KRd;Olc2mw;s)BCK&?UH0+2X{Ts;5!ldLMV6r{ z=KS|*LSIKm;ULrNr-nMwmyB$v`V+A*FNJ>&bCYR^@UQ1FoT5h%O4*2iwJ0wSXGS2& z2__!k>`FjAO@+laLN3k#j# z7lXaT$%v%wHzT z|EwZev|Iw0W`W$VQ{ySfPbN76HQXCg^I)v-#B;{&2CT6@q@9*Dq*Xv9BLx{fks5fN zIxcTU(MYacyi8JIab2&U`TCM^I1;yu<^9CN1OVDbA-+?#!Vpw?NHzVmw?4o@KBP#= zJfXgSah?fX@#EiHc+#p;>oh(_6SX?%mnwk)?_UP!1c3VMuN=o#WRX;gtKmGMxyeOvgp`Bl%QGnwpOE4S8 z6Kdj*39+%Wb$YDtajAo2@}B%lnd^ygF8HV5L;K*-CGCGV5Iz5y|Ejc98aWNoS+afL VG#g|DPdL7yp>j*PRM9%@e*us$y+r^3 literal 0 HcmV?d00001 diff --git a/docs/md/manual/10_Manage_Tools/attachments/LaunchTool_48.png b/docs/md/manual/10_Manage_Tools/attachments/LaunchTool_48.png new file mode 100644 index 0000000000000000000000000000000000000000..3b5a1b289ada8c8392ea50fd3a46280457c34d77 GIT binary patch literal 30430 zcmcG$bx<5%6fPKo1_&D5A;H}txQ1ZCVUS?Ko!~OKYw$sXySuwsGAIC@rSHa+*4zL-L?1DDy`W-P(7 zBB7JNvMu*>Z4F-jEHo_imY8!n5-ifllGU={8o=O2Mfq7lVKkn&IlZJOom6E_==>5A zadTf`YMWsj__L|96Q8P+x(`U$0Drb_B717rGyM(7%hkzu3+D z(9!MZ&*~8)rHlW*UHdVkLAp)y?-@kvDsr?7)PE!SbFCo#-=9aIK>P14XcDCV9ta@~ z6Z&`42Vq?AfA667VSfAX9t9XZn1AJa_l(y~-*0g$0(5U?sv3tyX z3VusY4zk0<#Oyfb(rs>H;ozwGYwNt3l$NGboTs66vI=X*JK9t0*R!J%J2GVO4g4v z{hwgySqTGL!+H+84Ey}+n(U6}esT5LrZzi1n{~!#DswdHViN5vRy_Ogmfn;!DvhYe z9oB!gk%xnfMV8F{A~BXBE|}Ub6a>#Y5n``R5_}*L1aCjkfLP-rzgl^16t|&aD!+%ukbVFG-3C8sGa)~DC&D{7JYhKJs_D?ABu59wduv3 zvI0EtdF_%yT2<6)N|?~BF*?P#!xGZwzNP4MaHErGN;FstGMN(}G?#cqpwG!mXkEjw z@SO>f>kB#?bbYdUW>#&XwCwlDfe7j8*#=Lko@JfwFQmRB@m;a1?8Z-bO%oe7(27@2 z2!oGRhfBZ3og|Y~pByi|K&+wB;3bm0&x1Al20NemUb+d%txCqG7~mkQr89%a^-Y;D z!shbx;{_BWzGf2^qrbP2s?H;GOBU)cW@of#~0Lz7$o*oje6F{`$Oe_ IV_Pd*5dG}9|^G~u&_A%J4=MFP>=7_yPaUQ zT5mD?Wjs^!bOSA*Om@0w&U%Q|8p=_pX`7GdFX3#p%0Rpj7Ev5Gr-$cKE#oxX57|qu z8u{%H+msK@q0Sk1{b!T1gI_wos>m`OkI~AhB{a!6YB^tQni$!-HoGYpy|CQ4a?;?; zTrVMw`xb$ORbS2wjya4#*9PTxK~3j}*ChnFa@76O@uJ)lw$CLoDy~xQH=1U5HtU0Y zhwmY-bymt{Q?n6@RU8MDMvhusE=P~aCc}N?2YR;1PPGw~So_IurlG`-GTbIT)QoEn znqK~93FbdoEeHK{zg9@}U8yUbd;4OJYrP9w!?9P=I(zbcqI#l~ljmpG_9%W+YSKJ- z={{aQ@iS|Yc@;=C)SU?aK=}HWZ+7@+_d6) zaPA>VBa&oHdL!6?N?xDi2^xDb>t=o-*R-;&WIA36^jGHt(E)zJUga1e<|oD$XVtu; zh>2Xsk^4Q!VSWK2Lm_o#&BODQ9@Apudih7I%r<-8Ph30$SyFYsuS2g|;+2F<2^^0a za;oc{#XD^@6V62W3@rEr++m^m48K$o3GTQFvQ-@P**E7JWeugPbK&2lj~V5HU|qk zd*Q63ScCbnnFPmr3UT^WX7!pLjU!jfo6uWsKYxjgy=zBFcU7&G;im28nLUfy>SJ`{ z8^2o0k>eE{O`q-J!^s(=MSfR&(zkl`*{dcM=0lD8{ngssH?8=YdvtrggdFYVC_O9~1>??*4m{x%Gpe|97|Dv_~pyV*=!Ng?*eU(8eM4`8*FomNSs z5T^6!&yVa`Mth^|;F0fiTuB?>(YR3k*uMMe$is}r2y~T$UuzX_3JPe&NlV7vGvlbU zJ$hW60gv@&CMlRU3)oc=Vq$rhZ}b%^IWDz$WO)**QKGcHc;*pXGmq1a_gUSk8#epj zL(P^^FSNe9s_d0(bpu_IkgZL9OCtQU9``OaF77^vlYwZGqD0$8-9Xq$Kz)_Tnmep_ zOJ0KM6eUeyI$$L?XKU|dd)nlufhE49(>9xK^VZQMZ13ly69sJ#rODyL2K!W6>0zsR zt=PCNTf#8k;({lJFYWL>%bmrd)qkdygLnOyc+2F=eirbHs!Tb z_z9t&HuB&OO&*sU-JM=o&)}-@7T=GP(6wxB$2)39Kg75xD_Sh&NnU#)#lvcZ$R z-5aC7|2+L?DXntg_Vh3HwDQd`p^W>&h&<8??dr-cpWc9u>V`oXL9ig#}Mu6CI^9zP8g zMbI)Q#(y@mV}|+}W>ewJ;Meuw=Ts;}M5FJBh>nv>WWWY6jc_oVN~=N>$tS?)qE5@B zB&&(`&f8IGcbORpz+EC~4Hqd@SBGIBhxQt22b@UCxfC>#@YZC|t7%WN&aY0#X{zoE znBpbZ_1K|G$j!Uf{I16O!2>c#Klu!$`?oM!$Zqgt{Dg1LcMw83yR$ocgv(_~aPx7g z1$ucpVR*m1(crhp_kf&Tb+c$QvH0JT$Dxi>l*g^mO<;$&ol4;*sO3ZE}!*??pRuaqVs6&W!>#KED)0wT6|Ia@s1 zDr#4)BLZT*9BRF>*4xt>z2aJ_(`v>7%Ev3C`tE;6HmsKp4fz7w!C?1t_g`D@n{&Z$ z;1`M*NShA63Wwv@8YG&3>47LG=!KbFZ>AaNt5thlAETuEs!leAU>?F$N9EFJ>R+Oys zb9ECKkmB~!G4x398<%H!zxW_QyC zqF7UYX&f;36M_kBM^X7J{(@(q=-|@E=K>Y1MSPwqW>j*lH{HRx4Oee2%Z>TInx8MY zv>5cc3%0kS#efp%#yRm|CfD3X2n;`$T)px%pW3Anim+BoZUkuU|HS$c~EAg*b zc0Q?N6#_SJZ5xhO>k>-wZ|tqnQc>CG2H#!wSyD!ThUI#AHzrvn@o`!``EUkwFBWI& z^TAHLR7cyM76Ff>1TVRyf?A<>3RL8o%#$vA7F!Qj%UwjWDmzRmvoA&FR~Pazdct5; zAFH|9bl=3}$-Qy?Odnc9XAP4RivgBWJwe|z71Iepa}Ts@zaq9?Y~Ai%S#c6Wl8vbl zUI#m9ca&{x2@)8lp!DDSDaF3G_0AXR*u}=ghQ-?gF6-&|XCxiF<%WR|OVQR<@*`hD zpgp|uNuGO^D%<-o>#)%)Pl&d7*!1j5pOWhaB9J6}5xiaB#7vqCIH-`YnISrvu=hSy zeIeK8d(Nysd8Q9~m?VGfZi9V?n-cHs*5;3kwUs<0BkhDA?M5u*->bFOV{DT$<;Fz9 z<948r|GF2L*M&Lm;9@rwjf}7M&G~((S&}W4PJt(x{dTv`#QbnPrbXFDkCWC|R+M6! z1wQKQ^Vhi$NajU#ZN6+gojz&Pcitg!Kfl7PGAiU!Ot)pUAB`;alo;xBLr;!v^a6KD z$;pCZtr>s{c56K)4H7atDgPM0l<)!ThniY9Y#D5N*5Gj1S6n--+6XL*+C|mAJK~b}J$$Nc31`FR?xtE*>}{ICZ-ZkL%9D7fk_xwl@i_OSH<5!I z_bs5*>eY?ER%xcmc!f}Z(G&c@0vbW9JV%4 zZ=*0#mY(9kl8m~thy``OVL6jyaz7?6McJ9=d9Q!XG9_5YWml4LlP5k#5Pw08^mukD zyz1xR6sFnWP9pmK4t{vbidpV{4{w$3dB4woCRp}l=uzzJDD45so56)!Hj_GPl~30p zfvN zQK}#y7Pi4})}9Vs{xYzZosQs0j^qzo0b#492{aMS{xqn{;+k&t6i(>C>yo{A4Dgf{ ze9n7bo5%e#U^%~?*|0mtQ@(O=$Z?#MUhQMY|GS=vj+K)Em4KPJMOUZl9Bk zZ%7bfuk6l!^MapN)yLV3{0E=mP>A7JxL&EC>veL2+sach>=44VY+Kf{ooin{%@f!9 z(s1G;cZp%kj-l;d)~f#bz0eC4dXB}qERFxzxWjCXuo3Z;8W>hM zFy(XGKE%5L=M_R!c(UVTH!oPZ$;lfvqTDSw7cVcXCuis5UA8mN^fn?$xVmHW=lsMh ze~u>-{p`)5>^0e#lyD7>kdH|J^~nH4I0zjQBKx(r$T3WEczIkSCr9_Q&0jCbRP~*} zr*V#DJJbDG?5isA3e$M$)!2ao>5<7D_J_b(&10m>cCT5tplmqyUcuwS%wHj&F+kyx z&_kbu*baW%t<5dQf&9;eqtWm}#Zu*G zqtZz>&K+Xxgv4-MOUEQl_6LPbPIJDiIc_e4+HEJyDjbc4l$H}$`9?cKEt4axeVhmq zHsV7I3(!?}%ew<8$X;7bAn(m!2CusY4_nJQ=K=LdCVuU8=ab%egW6P)>GtS; zO`tJKwC#ss6#Sxk!8bE4-$)2uPMyr)w0alcz?CmaI@6?4TLN!#tiL zH#?NOD;GBz+=Xe}>#kLtG-{;7FvY*W6YLB)i`ZA1hLS%9>dGT(&2fYE;2;whWMt&* zoV&-CzhnK=p$@ZeU!YyJRsv*UrOb?U{(%{d<#`SSJjP~bh-C^^ij4jh6&3wo6frn^ z`}zR1WqLTgp%ek8bgwjiuP#8FN9y`&UO~h5p3G5(d!Z?HM?%YV;F{mu=5G$I!tF&6 zB3GaoDcHar66n2+WB_a5WX5Lrsb`VDM?!Hwv2+aC1HN7|9%g(TDH6$MfN+wCgY&$(T z@WBvJv~IbIhrDCGh54H&o_iMDx1*D54I%pMn4Js9ZHuje>)pA!DJ0ofQ+m7t^+Y37 z5xi%bG|%I5cW26V!2kqb0!$v)?g9bq%S7-04G_%yq9?$q+i-i(UI_qj4992x;e?q%XqcF692_}D z@$Y!Otn%^d^7EF|q1}RZ>#Y*4CEy?0aG&BBH0KCjw3j zgy7~tr_;eWI%oJKxqp}_H>@d)nYH!U*qFSuv=Wk$XsxM*MT#+u2nYCRJk#9DikO51 zHLhLab@k}fxP1ixChFqia&>hD;Ejd<0m3~1rf6<{aC!OD*w`2hZkya|cE3CC?+*es ze<_cKm2^3yS-C6e!nsvoFc1zqr(*2eDa4y zCh_D0@84w=nJh8d*V}5?#u}K^2&c}?~Cx83maAtRRH;K*o8x=o4QB@*0_?d6zWO!I6d4y8h+}!*u zxTAOq9S{wbe3}?fM$Ev#fSI>{wW_vuIInYHwrs3{cC&m;Ow38k4KcQZgM*%Ng)f4e z^XDHRkdPFx3#zKv`?^@wUXdp~p*UwD4kK74PwZTNT|pQYTY!X3W*Wcn25{k%5bY5o z#{BvM8~-$f&3W>=?J#A?@Q*VK${3yajLQ^iu*-d*0ZkL7(`~+ytzVz&U*S^odTjxP8uU z)Unj93ZFGC!J5fix z;<}oe@W{x7`1p0wze;v%o&KGjoeY|_f7P?7a3`hxOsuSWFC&OP&y;A^nN8EeykXyp z_9orp6quhC@4_(i)RVFA!abhYH4Zt^T`xO5_P#3 zl#t2V_Hpq~3|@iu$|fucee z=UYV1Z8s^B-sCoYqj3No7`|giCnNCoR-XpHgEsU5>s6Q6y2FHUwRQh~z`+UhrVnt( ztX7l$e&*>Uu>R zkda7CNGSF>KUhRr)EsxEKMFtGfZ5kF>66L(tHs4dg&;;fOxzV+{IWkJ$|fcz?K3~H z-MqD<7&Qnw8r98m5$q@PDZ4&eyxmY&Zl^3qpGvOnKFO;xJ)Xk`S8)8f8D6A^>jyL#>)){P2eQJ0~jyz01Zg2$+9-bZ=I<@1;MbTw@S(jyqo4@WGJDq8vP9V+tK-jld9a zv|ESeftUVdkfAn*_KSB=!9;?z+F*s;-@sqHD-TKvxoXC9{ish)51rNkz19aV$JSJA z9T8iv@9bS~8u@iUeFSc9g*F&oxN*~-iP?MRbkgTqAp-8znKdV&BN&(1Vqh?l(u28kMW(p8(XlTG4(6tF-nFFj-0gu7}ufTxY59%GQfsKzXLT`!*n!gDi zGzK#1kN!Y(n%?jtwX)t@7>(BYFMTJ3TiZy&0e=lrqene#1@1m=vMn`z+$Yrq; zlMb$39p|%uOD~Hsk-5jy+?|g~`S&@ZpQ!WDfp0C>NwYXC(3=9X0#{u7Fp!_2ngX7B zY};?qp3Y`nBDrAu@UY4iF5maThuX|dAfQm(N1kO9=DWZ_T|yD`P>z4Nr#Jt-vrCM^ z0qH5#1JQ1HZIow3qzGQ#ZYEB@RWEe&E=T1iX`n(pD&hLgz@*x=eHfn8rBei!ep4a)pCicv6{dWB#Ts|)L!OwGW z--rXS8Wsto35Y|R%xy*nmEwCSxUzGe3oq1snZE|%gEOcVmzZngDRJ+tx5@7+nHSk% zxe>OD$68(+myH6rNP4FsEW8r!tefpZ;sI6EV$adYxrayE;nxso^R*5!|$};8savi3#hSt_7a`i zY%PQ7ib``Y+_-dOh>?6gnb*BmSLMs+I&MyM*HUEvN8yW9)P$q z#drA6S>Ri}Dw>ep3Gnf=VTKh1B*btZ^e@BKTD#$7h7^$@L@0p@=Dp+NXn^*X)Ydw> zyKB)VmbkRfA&(T|IdOzFT%4bSK%jAib6-DdYutH)7J@v^Sd;1&I@x7B>MR3!(S6+xn07^9sUFI+e5+EjEBI&S% zAM1IAw8TR~`zh$x)X6;ba9%gf-f`voX_SheSlJuq%N|u`yZAaGl$txKc9>f7w<#;{ zP6y763&^8@SZ*uU*q-46$YmwHS=Vc0dTPqgx7F>&DjTI4idszVj9Alvw=fkjGQD?_ z-;HvXsG997c~{_QI>cmU-`kZB!+Fj5T4hkKxTULgXt>;9PO5t-j3NQnW0v-s*DL6C zGiB+Va-|8wUO>Qf$nE8WTSEz3m5kM1YIqHL${WnbAsy^+OLjdtv_OFRg!>*;CUo(x zNVh3Jz_A>$)+bnXqhZAeHt7`J&6r37suC|ileJ#N97uQ&_%PmOzjck^W%XFL=`J6_ z$SKE?aVFHn<0r?|U--U$e#}Q&-LJ>K`XPBFfZE?Q_HX~+c73PpO8GfL+A^J%g~nv= zU*}R$b;z0>$)Uom5w-LDGU|ad7k8V^>V*h?b(s8gjEtkBqrGe2a)c$U8iYkeSE%Xf zyQ2Yh>QU%r7jWN>Zn4`!6v&{Vp|P7LT#+OE9=oAVvB=KFCC!0}-<=0jGC&XMv`|%z zABH2H?bPeJ(}E53ELE>~OQv)mJgVC>H8my9vxfbbw4WYe6HKgk3gx%9w$|2ScQHgx zvf|F_nb>}Xz0sYyF#!vdGdkkYK{TU9KgyCxC#FgwcFw8$z~3G= z(_`d&&3uCbBKub|ln*HQypa^X%N_KHPYwi{TxDNi8q&rsI+}S=I3|=eG?ETsbrnoa z3)oSh1bCkRD{64A@M#;gP)P)mQmMp{E{T0l+M!TvF-as3UH+zc@%eTI-l&XdDl04h zt*NZUkW^wk?nIZol~AQ&Vv?+yaj?DQvY7KijcUz3t2b*_VbxYtT)#l%I{c!d5|<+1 zy(6{I%|6pZ)o$@#82zEi<-+K~-dD(9+4p!rJW03IM>K>pns!87_b6{3Zyv{;e)wQ! zoZfN70%oi7%e`qWP03n2$hZYn#H)o_t>XBVqcWk`^%rIh%2$_zBqB;)2t)dtFn32$ zn=gsqvQ8nwPY-5C$yf_>bES*t5}g*;qlFqHda_q<801fO3)C8YpH$Y2ZEToFGqw}3 z6lJBQL$yc~l9DvOefw)|NUXe!-GTKVB_=5T!&v6Oy6%6+iTRKEVam5CCyVa?Az>)z zmGnX`G5)-ao=Mu*NA}I+0zpu&tPKP3KOc3I774v>2;{)GrPJqO*F-(&Y;o8IU_B4L|&!MqaJwk7Hn z>!Y7f=xJzzgM(QLfkpW@0I4)k7G+6B*4EV}3kT5znWO==HzGgr-415@t(d7P%`2lw z9OZGQ>qOuYuKPsz&Ob;bJwXI5noEKd@zXgLli@uusNpRcd1k-gs@E-l(7Th>NU;xZ zDA4?IFFr)cB*ezz_5e$WMrecQ_hiHG5&O_jc=Pr>3Q8eO=3mn9$Ih_s%Yt{CF^Y1) z0+NWqkG9Dp*gx8fn=zv0f%!RaZ2$m9;!CUlyQmMBIZPf>@fg6AD8sfszTifRk5{1~ zvXDs!_Y=INdWporka36t!xY>iMVtJ_^`?&HUQXa1f@wPgQohZ)-+g6Y$Pv8&p+vgR zvb_Kzc=v4d5d<)z5cM8QsmRIKtwl5a_5XL=ClO@%8%%WcyROw=Viz3RF5y8J+p2z+fG~b_E4t$0dOWhibY4Ynu5~US&e~TKt=wF$42e7)SC(*ksSg19S#7 zEC_sw=)?b(gNv(8uicLp&~MW2M_~PAZ6Ble?k>ZA9`*G6HE zeDa@fE^nPCg2hSC^a!LH|!c3o0?dn)6z;+5%Tl$0Pfkp%upYQ8~}H1C@gd}f<$ly zh!)e+{z3kRammS{3~8U87y%(@vJ?S9yT5UpwlZE>l(?v*L_EDrtHH;i!bD&HZ3EI% z0yZx%FCcOnb3IX@|fcSW;pk{vWv*{({Qxm20t*WJksA4b-4}mQ% zE)EL|E1A<$4(l__=vFksEns;TDLd=X;Dv4&o1;rLhqL9r`W8T z=4QTb&Pyebkacvc%jmv5mVDxbv20`CH;xdGN4!_+S=gust%e0*WQ zn<2B+dwYA)(dhP%`(vA%o8#l(TwEIb;Kicj=+p*#tP|Vm5i1a|zP*nNk9))?A(8YH za&Bj5l`%7;RgAhsEK8JV7ozU8(AU@3)BD{Tkvl+>`~2)#5S-#`YMNbEhKlztET zh4rVCH>bdvs;1%9rUNU`Jr{C=mwV9etFoqN1XXUImz7zuXa=O#c8Hy$Gzb=nsQW ztDBcY(?x2lK#|goB}K1}GcOVEnj$9hm4!g;ZwI>>Z>k*oue3BqJfn8!R!&l_qm`DX z%uJDe_<-DI3bYJ1D!G&>IH<`#pMrHL{kSADNI9mn9G;T5&k?U1P|fj3X3PW&QtvVx z_nc~Cek^R2nHQ1F{;JJK%-s_xxp3i-{Xh%YMi6y3gA|NUb#--0O3F|Ilaqr38FMkH zX3!PVL(;UYqpTd8kTAQv9DW!Jfi#*<=CVLjZt}f*i$$9Ox$1yh*Bp zm6_g_XB{PFpZI6tlAAuz?9janu}y@j+KaG#n2A(!IDXaDi*j;(VQ#Pw$v^MZniC?# znauF{GeJdOX(=NYms+VrGAiB~#k+n>_e7!nH*9tpvdTgnNmqGgWn->9NkWMYu2=ix z<561LMjkSpit!NE{u&z~8~*aO()7f9XZs@7lILZE$h&z69u96ajXxCQFvA6pxZm*y z#AoR5XV>zx&GFp(%c6~xc)=?3(217|({l)CuHcgoHOxO9PzMrkm>|3&)slrq2fE7f zM-u5*G;o(3r;USyBWVEUpF56{guP`md*sOgAl*na1U5h=f*9@0zZn=%_`nY;wAIw8 z>?2Hx-3tG9!Ai-dw9x*8quRaS)zu|1cA7Yjf2yy{(iflBn_9J~o{G`OKQ7my&dJe1Vd$#VMEz z-B^GE4F6LAEqXl|9{|+l*$An7^-yp;eTv%J{QCdJ!F*liOKGdyj@%zJhB|8j{n7F9 zsz6&oL&IgWKN=`$NlOa8!W9I+yQoIJ)(7&(jg1XEdvpvWRe3qNYi^ItlKgyx`R(0_ zEOn#)TUtZzXdKGs3&(HKE(&5Z}VCtxNcfB;%fO+8MKsmr#KN%>ajndZ^psci^c z6h4zLLbp?YLd}to@ZIw+T9P<=CvVlTFM_Bm_pET+Is}LeJL%xo77z62YEwjoWOr8fKtl^uG) zvRqy@vjmsac&gan;cXi|7RNgVLelCW5Xk<%+2f7S8L=aGnlhy}D&q}L?E$lnm(}1A!ZcKT=TCEqVrLaa8Qx3ku za%7nT`XVYSn#^T=J)5-E_bB>dDdO}52p8jj(qJ2H#l^*OH@#DM$PmfT%%}VWX|NXV z^RA3rYaWxHzrmzu>enQSj{D| z#AyQ8P4tsV{7Ui}L>oJa+D{DX@=pB)xHMey)KXO6!A}nJ`PKAyJEv=1KV#v3N6=s+>!-~+)5AO#lgSu7^hX#>+*a^K@@jW+g%-)ArsT^U;#X$x z8Z^+bg~5+poTQ%DgwXJON=bfT`;Dwd*MQ*5h2W6HQ_bN7JuUcd=zDzmWhW9-B2n-D z>dW&@i)hfad0C55Ep%DyePI$rhJu2ExUWOz>x`&nJUli5!9#((2jYNasgwAPnYsCF zv4;JIaa}yjKkr5%fs}a==h|c>uQ(~-(2}oxe@KWk)U$2+?*5x|g|05c4z`e-VmvmVsIZ$ zz}1UyXJ?n)oeYCpwVfw$RZ!-6RfKyWJ+!+*5y?l6*N&f=?Ww9d)97%J-7Tu3f~9lP zd?BaY)y+`1eZBhhDRuR(5`Ebp(#&W@%-abXT*8unE9e-Vb85B0_bNz z{6i2#=Ob>A0k`LR_dCD$V045Ip@6FnQ4xPglC+goDdfD;cr0xv{DLP@LX`&~MBMmW zs@g@ODW){cxc3i`2m9OABKmVL%pk$;_+gKadfY7cT>#aL7#AJ|+QfVHyTtfv4Our) z#L7GqPO#t)PKFb7h9_tNn#E--nM1#8 z2&ZVBOk!r0g99&7%|3yD=awaCNgJ`2_589s7`bPS0H5{XC>)<0M!`3<9|B&Y&8WQ_ zuuq(ygPHmHCabL;+i|9IyhaM@ii(v+BlzY!JNC~oF572)B$BeGs=NUX70D)+H^<9C zB-{3jLW30y#pbz8rh{J_sXph2ERE}Bw*sy916XU)ggFfoc&dbpxcGPo4&q=V6h>CD zKspumlJY-~0tFP2Rx%63mPf0*#%|ajO{;3pnjrk+E$6d4q9pfdy$6ZyyDvrGpJ+3E zQXq5XdcH2dXY&M~Ok;!*jf-mV2I1QA{} zwLLW1J>d?|v#K^+jDDUDD>G`l?P1E4jYJXs+lQR-%=Em@G{_F>S`$gwWQSzaYXD7I zL(7?^P=2>-zUw&yMTBh~_1X6<|0av~-#Mb*bVL;;v5vkiJDyazW}mLLs99fl)WV*j zq8*NsYoKxrguL(0&C5LpPwM-gprC~q0#B2fzdS!VHZ2=f4bX|6e6Hl?{VPh2u-Z8i& ztDb6tw)yYr6~5^KPrcF~kb2y_gRoU(a%;CkK|M4_5dxNFqKgNA1ekw6$pqG3wN)QJ zB!Q`S|0Q0Vue6Gg|28gqyB^KT#^#$WIxJKq(i-za9r&Tn3=f?F;R02m{#Nj1=cPZ+ zdIo82ij^F~z`=o4){GM*5@1M70R?;3A|yuU4OCKLr#hsW{_BDmXz1d&ubLcU0nAA( z+V7R`K~4;S6bjw1evAAS`#{tbybE?bf2sGXVP`&$RIy zw%-g=Rmq`B-#7brC+6#&+^%;&EL}nALWm2M{;$LLcLThW4-q=<3bJ041@jgQZI4K= zF#-McOqD-T1LEl5)*pfE3JrNl02B#Pew~!#x-L~-GFKFt6T>S?Yjt*JY zW*a_^pC=Hy>>o|fSeNqaQBxwnG^xfQOyg-?a0hdf`O?h5Y94V#iKa+tFUH`V% z*($QOCaD0x5WfUz=6KfkmtOnYO?fq{7}SXoY?3lC8>T{#E(|%MFeA>`OVoGpDZGq; z7+2DB>hNc_U=jEe*vzQ4^%fzki2KI;6b)!CP1gVjc_T~dvjB&<7}DC|es$SmhLIH` za4hg2{s_2QfT7`M>`iT0?~L6)vZ_J){J_7A;29ER1vB;*-5)It7T9_~`2WiRKx%TH z++4W8s~3sflz(&%YI0x`#j$sEpLSOtkN;BKgn6t(J+*yrFuuiX`}_!ciWOCPZQ3DP z1G|cDc>i>Q0^Y96i`1E-R0*~^&Aez>C3d@P+Mp=(0+282Fcx4mMB}52EO|abx<_>f z0l~Y59ja{soT<}6z!}-zooJq17j@n>Uhe0$Js*2P&e&}ZHPbzF6h`PXy$If8+$*G- zuP*oHoh+Au?`xzB$J=^mH{T=rF9YCSV*#)^J?x%lqLNLFZ$h$D7OR!9MIXpGWD%3(c|R@0mu}6Za2k4=viJW|YW=hxaWz$J%8^ zk8}+;@NG48+9Lp_H-QXnUC`fV=kAHZTuW3>p0k0~I;q3?%Lm&rPoBoP#DIjzum?f( zsh8v5I8N@{F~{7|tp^*CW@D{nJB*h~n0Ag|QZvTo1)A?6wCukWUz*1F&O#jb=ljBA zFz$K6=Z#~GQn#G9RBER9xPVS~w}+f)*~^tRzd=b>^4mYnZ!EWwKgC+(+J zxlU)sniK`w8&%^pJp1&NGhY10-q~!Lp?Nl^hq9Ucw?kH*kJE4}n;qN&u2sD*X$FPQ z<_Sv#D*Wv6wZpvIfP!Qjz=V823CwD3eLkG8A|mpBNlNdWRDROn$T2NFakp)DaC)ma z&d^43(`~i$^05B11eEMbdW@#2+ue$t^Q?;YDx4_ zsm$bt|7Hob^*V_t?=m~K^=J zpBqT1&9_)sNir+av#U3oqillXMI5ajb`LSVj_3xhg?O6o_iPOEyA9%k_++YyYK8*&?l-y$jGG3-20!a~uA??xWj*=B z%ke+dCN=$`@6*Bp{F*qQM8+u>E34h}F;+^u)tGg9(cOQ4vq!d! z_k#XKEoH;}#4HY!MS?-Ko;|g=hhuhn^lkj>*qf6 zg52dsd*2DrJaljICyyV8jVGQZ1=6XLbI~yjm;$j&2P@t52|7=gmJJj?Fo`Yk;pFT7Fs(+WB$xJDsgmWpZ)$K$BEQpi#1nB+-JJ!3oQ5l&E)N z^xBpiK*{^b70IKz*0>$^r+$kD0!g=WbZ$*`b@OQ_lC#Q16~MGJz$(t)HZCeHy{^;$ zmXwkLw0400`||zOL1;*bzJURk<$|)J;xB-PXO}SK&)Y8upi@AP-ihGP5CKY@R@ zRUEv}2ZnR>BL&&2DotfeXLnzwsv?K5^zY*U8k*uR)<6`YK$(X)==yB3;zZMg_z|t`GR#Z}Qb94KFKcCyyCfM#wM5YJe1CDO(XMZb2nq78M zor-^t65NwuVgg9^X$S-WegHNrg2)$cpuIyanF>(fZf|dwmb5g)DYNGRB3=xYJTZ^m zCSb{SGx-3&rL|QDamyWjL5viJ{w)uZVVbH)DgbKL(pW6ikW7@Q|t0*tc z@X*OAu#Q^j9cbZp0dv84YRl&DMez_yL!#`nefn_2cgDwL4;*{duH^0+-KX#)~&kjCd8k%HAshBU!ETVQHVOpX@H~8 zJmBX?p!(YsL!<2vVGTvhH^TmE?gf_v!yJxr5}%XXP^ugQSMuqt)b{nF^(zD6LMMs^ zu;3^kfWum@ucoFZA|hg7uyK3K{fG2x6#F;$KA1i-+OHnC%oVm9uS~=4IKbLFJ4JXn zrpCv;2J@Nu_?m&*b-Bq26$OQyhD-vWF~k8tFBX;*k_`ZF6_e8q{=TN-<#jz-X)%FG z74BmWkJr@HM2}H^4?^ zQk%qccdBaDAw89u*jiUBC@1~SEvYPvd{KjJI=v$ZZ$%Lg3AIFGK!2vMR z40V^qgK1Kq!^=D#=@u}n&c_zcALNT3{KKjgt0)4;a^9C^L_av7Fnviu0SiUQhvUV%vXYYbCBi`AyRVC>UeVB?@itO&h&r0^6Mw_c zJ&Z~XOG`_Aee$p4pdUYSBv;?IQ=&0P=~-|R-1{ba>&8S!lTrDgfyV2n#MpnmqZ1=7 zPK%54H_evZ#B8r7NH&pQI&4_ir(DvW3Oey5E#UwdxQ zz*37*Lx|Xn1_m0Yoq3aLcXo)s;nb>FyLZ}IM+)9&eNY|nH~j8#=GhR_msfKG1|k}m zdN!G?XgGy_|D;ns{^6eeNsvFOxb0*>k_oJm&OyBM_w0*RSAm+Z7wrI*yF-KTr(D~$Q|JQBf%r;Uqx922W! z1IDrL3tL-K;Amua1rfK6kSxBh0tc2O8r*0Kk8jlE{CrYuY_-{R;VV1}O`5KYEhRC{ zCI?SuWUYG+d zw5wzYq}&vSI2->GTN1fw!`^4mgplr)zftj3?r(;{98<7_dbM5`oFAUOID61&Y&`_nE_@XHt&%3RT4q=u30Nt!ycOKhy zzhbxN$N$mUSBFKpcKvQ?>7k`V=~hy@5u_ABkVXVlP^3F$q`{&T>6TOkR7yf5rA0cW zI|dle8uq*2^M2<#*LQvA_?OBsGf&+2TI*Mj*A>CA@xsK{RZMce#?)ShO^M?V8VCz5 zn_ruI=clJP+`~=VAVF4!h$9x_l1tYKE+T0(n1vSzau zvdU?mzm@v-?W;dhw~cnbPh5B#5kWZfj95DMSUIx(ZQ8+tJo2#3UF<$}o$QjXe?122 zQHf`r#*+aSl|X)Vbrtr-va+RwG=QHA3JPGel7+=dCbJP(w_JN1Ppt~t5#Be~othPA z@eb?GeT-cjT#S}2+iJr3EKcB$S-PDlvu2pKG`(~xs9WB_e#O~nmaqUy{{ z>}T8}A_z^qvfSKU{4kd-d{CAei%3b`rvJ7iIcWfshrX>qrO+i#O>0k!QYy2#2_X~S zy{J%&)55HE->dU|b%+l(wI8i(SC#7!C(X{Sr`r~nCXyTeIgl2aHabt)C-YIi^QTEN zAFWp?px=E+O=YYu!>^w1l$dyN)eB4EdcVlyPdC&0nS4S80*-gKFQ%a8qkYj4fN+mKSNw7$QDnDa+4l_g!c?ps0D;!fH z#t2|uq*7wPgcUEJtDCm>m46j)b*y&C_oJeVOZmlm;2+z59@YXpGVA4vl@yN95XR~? zn9M~ks=-(ohLKfVXp@Oj2u2`ZVacniNWfo!Ui@dqMzfRmM%&YI@i#Ej2Q5!@*PQqpqra3P0D7k+N9<1m);>tutKImiaQ) zcbvVo{M@$&ksM@Ox+jm+9bMV|kET7|@LpoiNWrQL-;kA&l&ukz3h=r?j`@BfSYekh zhE7dQf$agpcZ3gkuRMHwPGmmM^J})>*!}_96Z>>e zAw9{I#Kf}@owIXU9lGyTg{?x}*bB>@~~ zXSb!QESW8Xyn%pf-V=?n5h2?m{*LrPvj2CPL3BaB_Z=L(8m4>FfzeTROfq$I6D!D1 z3j4H14Z{Hvxrir%b@;)3^%p+$09MMt?L2%~+%%>4gBTPi;9StZ{KLw{W$TT{_-2Ft)b05ur=V%dsr-Zxa$+ zc9#tMHFb5>! zaVm2n_&aRodL>qR8|1wj@8Cusqixbox>>#+8wH?W99cLA!&DJzwiEE3C^*Bo!J)#Wf zMj~Fk%b~JvwD-)J`}$RmC!JxZ&VMtg?iB6Oaq2$))l^_(W<1v4wo6)KB6^?j@m!t7 zX^H%=(=hp?A0??$hJO%w@kGL=HVv0FOBX0GBLetLhrTnr0(cR z-3HMi->u{BfD;KyB52*>X2KqQB_SsM*4zx<8Rs9b1b`$}qmLgBxsveW#YNgWD|$uT z3aDmC?)hB@0@c?-7IJX^!N3g54sQ+YTICUO)cV2VU`he85J+<)aDs2&KU%~tSFy9R zn;gX2@L*$XYyo1KyuL_l&RSljC>=VL21S*x!NI{FKZ?(a#HxW>JSR7okC(TUcG%;l za(BEr#@qusi_Oi)E4Ve$=*%i8qj^0baGt65J91w^7_gvX)i%78zZV!5J|cg#qj#=B z+eA%*JdOOYRI2i`%iOik2=JxZGmg!NJ(@-dhSuIR4Id(5(7HPqia1>eI3+Xpo0F$s zX88EKeD}fJpMaBG7FN31xrH~femQj|LR><$m#|MxPIp$V||U~`xT1#VG4+Lyh^O0t0kA9ph-$-T zY3953%fzINwmijn?rOj(Kko~tU!hH&#b0Jx<-K=5j@8Bu1Z+;>R~h|w{P>sLKGxiP zFEb-uz1n79IBA-UKUS?BGvng&>X+YxgP!?Q3>H2=WxB?FxJ(rTvV0cFem!t{fXZF> zT@OGnlm7%m2GYJ4s#``}Q-y*AAvRGcjo8f7pf&*OGUYWICfD=NCnR6|E0IH9O33z2 z;=TJ4+?<>(9rZ}=MAa=tndcOg)08gA-UmSZ-fN4)qxAs%_;*Xkhi|IZ z(H3uk&_1Kr8#gnjEy z8!T!b4!!S|*)s(HK=+OGrA-A_a303tBq~U?2%=4t-(2!$ zPi=Kb19)-f*Oe1?i4`XHI1|g>(NUkBMg4x5L2xMI?+`8Y#=P|M8f9?){21z>VZ=En zrQl@IcT70EV#<-T@&O0szo&ywNzvaanQiQ|BLAXIEEXCI?7rA?(k4D<`ccDEL5fqj z{}nZYR|akN*Y|Vj_BJD&+9l>Uj6Z+0^|bf&^duPQAt3Zvsp&jQqlnYhi#gwafq_XG z!sx{BG4;&kP8vLXQyCQ+k{WV;{oxsKs?$aEWqa>&7AFs_+`iHlg*Vba*r9)ns%@5a^R*5p7iY)6tUG@&uM>u0F}jIbN~vT!R$r%Y%B>ulD!$ z*exx&IU@g>nr&i1m%26A7n`LO6&0b;XwrT8Q!-*=*5}5$YKI(~`5-$Lv9q_=(3xc2 zh>DHrnGm`mKZm)wlsn!d%@10!%n;-`GMkcC#5ev?}Ix-;*C@o>(Xl zwP8c)%fofjz;a1{a~wV#mzuERH{VKl&cW08RBvj)!nl!~1=~+-X8w!72TSp+{PYIJ zD}uSVK4W9YV3!k?cb<@;Df~4|laohHOc5q=n{koo?QkK}G>$5#CX~hDELWDIq3uRB z?I0DZTK?EiMUN-#xm!T?sOZC*wa@CV9B~0Z*S^TFF09)SvS-BA6I7-a6c&PyYp6KI z?ayf^f|9brZTVIf>kL*E2Pl@H9+UYlwOrKv1H+&KIWO2(u9%FLS}8w#D3Gl5qOr2O zLX&egkDBjR8_NyoPWgCvE-*0M_+h7f{Q=g)49*P8K)&TgwL8m;o@+^U61o-#pV{xD z3%b(wC5b}W&=D_jbI1L_VloJwRK}EnpPHSWl6CMMlc%cVZ1|6r-fxMPFg|zTlcF@Z z;fLt6KV+~tVz@}M{_ujEY%$N^x*7vB{i_>%F4-ewU-x5On2GPR%@zsrA5YYwkSbIv zJm&>my6{Ejp=VKHE;O_7I8QBoRXTF$mFG^Mk5H*uzxsq8l02;Q@H75*u8|4K)|kxj zhXTddNutYXB_|Ka!nQsUWu$cI8%!JDpz|wx%7a8IVWkmNrGnBW;&*p4CAVhUMBn&) z(*)&IXs6wet}a1w&;X{4Dd5kh8yYm!;yzLR3@yktT-&$MePocABm{K0_lO!ir^--q zC%=EeRIsI}ztX9zCSt_J(a{k+*GdS&LlwzSYg~<1wx_T^TcN|1Yy8xkcXoCxjz<(b zaAa19co`7*-gKUqmuwR`e48MYp+@{j!?BN$s>8UpDZe7cLa?#z zajxE#izCsBH`Ylj=;&zwRa!d;+O+Vx)z9k6nnlv`6_PyYY^AY()dCpmOx6{U%>7=+@?&*nY$maP?$phMP zd5<5(qj)I%QbKRR<(SxLpY^M~>{>d>o|Bnn;b;aP0uWk1God=r>T(6aa&uvqrczxbV&wqg$&Fd!TODWs_Wk=7+!+#2Cs-PZ_F?n zgpJ>ymDAkXTF664OBxOl4eT;qxNL10?MpJ{aBc2e?`r}vG7ESnTQi~=2m5u;xT#nV zSx;GU*@)N>Y_$2fY@~J3(wwM|ImPfSrKHYIh->Ap%J|i1 zlO$^0%9o)K$bAGjn%J6}D-`|(a9|E!DdTGGp#RRyd9l|m;_sagVp+5o=JRmVIos{D zVq(Bz z4xtL=4~3fUN(qVq`0wkjaG`$uogn-Q8_uTy<=+>I6TVC3nSlmre<+NLc_pY(;I$F3 z`#1^y{URrL(ZAkFpWG6zQcBnva1o4or!gvwAVr1hN@6h5{?FOR=?h!Ii!Ryyrz{2h z1kR|j!oC|iuaoyLakhUfWc4;vt4t=d7JU8VkLxrwBWd_&W*JXCn9egE1^@dPLhq>f zuT0cUI8}{45cdiLG1upUW|i5ndqIs!Zvz;Ew#eRL73728Cxf-&2^@Be#hIDP0x9@KYx)y^TnGF6At)!$ zOFrvY@JHYnt-|00yu#y%>zaB5X$F_%N!HnY;OXn za564go&{_4S1vA+e`2%cfmn^5-QD8b6*)j?3kh{QRdG1c?@vO?Dyx1 zo~I}K@h?zEM?{2#r8K;Zvfh;i1%&Z`X=U@oxwW>mfSBw{dwV-hAQWb9)i}3LgU5!+O{EA+F8Y|V62LN%FU1u8npfgDwuYC>FDKb-4^+G2J zdowJ{m@V$(u{o=x%PjKuF-Hj}Mm)5^ANRhhidOlFhL#osBje5N3bwT0-pj>dVPRDh z{#SEE9Mz`)iTUI_Avepo&bJ6)lJAh2$Jmo@S-Kt@9@cuxy{T{(@F+Rak?k>?Ch+iB_wDwy?Ds}DztQsL0VUhUOq!qK9{^}GQgqEdI11C zfAcqd`2)rC0-Bnd23)0Lc%c~}&UGceR9^h-+4+3o0BSFhqX_FuxJic#z6-8%A9!pI z8R;1q<^)+Ky|%KFwBt2 zc#@4v<<`{Dr^FTKu?uNj2TVlH|5&o%jkH_4%#Bb(y{(^GLSk30B&NKrJFxF`>Wd4G z3!_O6sP`7?0l8-9$%lDHE4i!b<>dy{xW2>EjZ?ju>iVbOo>6*o#I2DBf%uM{z3?v{ zfzH2qJ0DwA$$z_o7t_)lr3}2=>%o1+LA768ac%m^AfdcYikkjnLQ`Z zJ+Nl^`sp5|>cLVV3pi-{Nm>1yv|2+jniBBM_~dPmmG=JZafhsT0@bKhbE0P+QTnd1vUWT|X;(vT2q&>+)SY ztP#9RE+|#Oh~?GQUAo#INi5ZA;3z4{%~gM&S&^U?7ZCTbNJ}3{JrGsg0;4vD03^ARHebpMEV` zYx0q0*^R`OHB2Uio8Gy;#QOA4?p^?h0F^Slb!&ch)>1n*5#m>de*Sbh+?s>b04nP&f0#pn!2kiNvHBi_ z#77E$4Va0RfUug%`$K{-?Q2|Xjb*8WO8~h@Wn&OFqLK+Z5CHS6d0ce7y`>$kO+oQ~ z8gf0e6b=mrx&iW_7-rdsL73s57ISczwNg$A?rGCz4O=*GJm%A%VFCa!hDoD0@UWG1+ojti374^y4PwRPrP}6!?0tLtxqv+%32r!I*!bfa; z(!B41`wx1K!QXfJUKeNvtUi@Qy!yW16`P-5ef*0ClH!8NvB;)r%+KN9HYa12$)ll! zJbbAD^V&HY*~3I&)g2VBt0$Zs?T@ay+cJCMephl7L3mAlQJCWAY|pvvFLp35S^%{) zEbjhLWvt(WTj+Dq5MBa|LZKWc+-J(djJPeLx_1ky zd`6Y`-u7OOJql8jKKr=8AAG>ZEu?$2I)N&Uj*issNjCo2K;xdr z#_YcAj2N;+zpY+K2U-C_DY_GgDw>1*#he^#%YtjlEMMdB@$qYGYHpR7GkG4fskKV{U2M)f^DtNc8BGL&JC%(MQl?;khS;aj2BY*O z-;2j>%MBs;1J>*r?_9?ad8Y?MEGP3mj&?&f-M&t`HOaR{zqEcuU*+=f-`?M|EeJj| z4koxVj2fIfFuPm**wO!wRph-74_UZB2gy%@RG3Q1lkLubkWj49jsKC~i&kg$b6&XI z&1b>ui|SQ3ug(G+crS?+4&gmOse$JJZVIWSa=N)LSKKMRT7eF_$2_|0T*ACAF~1XN zi>l%MywlEMA@6=nZ79trWEDU9!>%kl-kI?^XYhpOvgu_L{Om{Ng{b1CF3lv7f;I|m zLl3v)`=1I!vM*@m53UyqBEmS--U*-i6w-6*mcHye)fW5i-F5!sBe#FNenQ+%ZpQ3a zv!UhUzL+#oz52!3f8V&I-)sHPzDpFPy0^LXyPu>>EcPfSskEIAn_~Q^wk!#kEpfL5 zP5I_4l+nSj{mXuBw2ZL`Kj8bB+})LQvqs3hb^T}I`uL00_i`h*{oFmDU#ak!*%(<8 zeEBvxd?xzm7(-``3RTY891?uZXsFiY@%uW4fF1swW9;RDj+Qr7-(O6R`Z}D~6mwoe>>Uck&$NIN+Wf#yo`>dpNLuY%>Hg|#M{<^zczEtx) ztDcmV^(DcdecjPA)h3bAT7xyMtpkh*)jT9p0V3R-zaGvL(d6p9agk(nEZf|FqW5!b ztazSQiN3W4_({;MklGDkS#-2Jn)dBP3ZPXJRXo6 zY6XAR(t2{aY6ZI=2i1kdco;vTNeJ!TnX`JkjKI)qSOObk#8^$BOnnm{e0+Qm>64m}z@8hZ*J^BY4i69S=g*)0+KW%B@95-GmITfS z{VfK9ZIHsBXVNGn`Mmm*HCA3K8k&Nnjj*6^E?;^<>eD(29!oHmz(Z@!j3x2@LgW;U zO=R+^FJE4&fZGF3JP@qi(B~sZe*H4xQ9n@BR`Sx-)wQrlt0ovAPmPO-GO2;x6L|Rs z#gmEbjfmTqPx%Q3RSA`f4E}zuPbD2YHx@<^v{vS|-6;_-m?aEFfl~#N$*#qjuDD+< z?_6BWYx;DTn~Muy6K{^)mIsTM;W9cn=>O~JH0XltzISw}?8V(Hf>Fdr=IZE0qgohQZ5%8tER>Z) zOf2hv!a!KG>_^Q=!$$i(BC+`?jC7w1*(6`Sew~@@)$mq#>k+OTBIfK%pyB;s@KD_I zJlP$x@SMW6O$V-#y)y4^MX|{T!V;k`I~2j~0P<(|gmN1i8!vA2ekv~)&0?({BxNYb z%iA~LP&X@JAR)03qhe1eE zp%7UDs?h3cudy08OePaM_`VX3vqMWm&4?a7DN+dgtDBsVY`8%x78@S#qV}%Y2-@Fu zDMIL)9cBglAgv&`FF&FY%N_qJB;b)2u*=UX=EH4g<&J~nPFVYtDRo1DRp| z{O{*a{r3`%##Fu)W_gI90ZfMD-^kaCWK8G|J3I$r12_>0zy_qGzQcTp`4b#KFV+F= zEU1+?Bxyrg@1Y%TCe@G2?)Kk+#uR$j=`^)VCfpbek=<7O2FE|k6Uk2T{~^IS1AYGI zhXXs-1MxE{Hsrfhl7oHB`hXhN%q&@e7DeY-Q}%zhT~v*pHED1^){#7;Y5$K$LM_eH z)6+})pP!a56uF;y@bIbA-w4fhq%$h9D>rO>A+$VPF8)2vj1Ew0o+eqKH3RoAHZske6ffJ8OarXMNON zUij_?rq3%yXOGr6GOmPqv;Gjjl|~)! zJ3dp(nkBV1>v5a^6zjXuVI~JJ*g`?t+9oXNO>|9>f)=uPfqHz6qI!Oj<%WmHK1`ma z7MP8J+j>&s00RZU%8ioUFdYq5-MXeChiin>NG9BP-v2G=_^Pa%Ba)NpsX!}cZN1R- z268#LVL4U9g%mbdH;I$!>+i>0qZcnblL#q!M3__TK zf&xpOwLV<|OYtsF)ZX5n+w$P<-X6?PHq@7~rhef5(XuA?j={T2n}u8NKQJ^@a=XH= z`>ibZ>%g0)rpp!b_V@#(6-ZD<)_Sa~;iu|w0dc-uU)GA9KqpFet3k!Wf+e}}%2z=I zL#f+Mg;sJOLL#EMWr`!@^%;Ac0CjcsZqOIY*_2#Tgd)J)n{+p)w-!d71)Tc;o0 z6LB}N7qPE%NQa=>ECG6m`k8zs68(F>zdXx|*FwvRl3qHc{OS`P|wHXGUwN+Wd zRNZpo*#5dHoU9HkJZI%MJW4o@rlW%0cxdM4UrNnj^XV|W`R9&s!K;?*8boxhmXq)2 zNrndjWndP+$jJ#qX92F$;Mem3C$|^PyYct14%Kzmqhey%lUQ%EK890b181o%$>1^@ zn<8fsxl5_E0cDQJM`h7-+8jb`Ev!qdEcDc}R?Pqd7X>>MImwRBldMkupjXzMWvPsE z=x?oo^;^*LATQ8p+tl0~cbt^Z@LDBMz0JDMy-t$1~l(5x*$(vUp!2Pc(L)@+&)NqCp>ECP?doyJdRT zFS6_rVSfNQU?snp-#p313q^u`Z8Gz22~XY%RKAzwx_^J5<;mf@vNHYYSNMniw4x7B z#3maKm=r5RH_odNHmW0lT-?O?!EfEX8S3E6pdrP((Wjvzq2vF-tBHNvBcoJ@GF~^G zDoEJ8bt41(6n!p&*|oK%G@bZQ(c3aa7ZopYaj84K6tSWS0mUc1_6!3i9DCs6_9XQm z0ukk}&*p93o}4coLW;mp6eIT3t6sw9@naFxQx&eE&upoHWwN@psXm6iI4^`r@qLrR z_2L|d;n%&6sGZU)G!R<6Y#u$8jiMFOo}`|Ajbr}I3G3K1 z*mn;{uIeEE8(C3uYy<>>HN}RQ1R)n&CQVh%75(?Uj+MUgAv$?*{BO>_z->W!LJkLb zq5S@(@qj3WE-x+Oubjf{7`@A_KPxN0%kOFh7PfVz$;Uck+G4g2<8=;EXcgOK+$z9> z|Lx*U($5hC!6=)psv$a`G0+h*OLbyzk^PK>h)zC7_H9c6MonL>m+MKN7kQk)9!y+9j<3b{B4ZiMW`CD@F6NkAgG zTqTnu!d4R4bYI6bJ?^I{l5kpgZOit13_T0ku7Wa;ZqUQ&+9ULnz z4OOi2yGvm&1|aOBL@O&9WOvZH`f6E!%*w(kF~HBy1ob`uQGF2C0w5~gs1^OQIVjRl zVeQfn>#=Py&Lj{SWF2}l29Hcah6IL&7I?rk09&qztxAGQx(un}62q6CZn^ZrM1_;T z?gc3@ds@mqxhsbi)UEU`#lh0@FP2@+{fBN~!&6;RCrlWD4*GhEcympO#<{m3NwwT#eH;z|HbYGNIf during the commit operation container size exceeds "soft" limit, user will get warning notification.
If container size exceeds "hard" limit, commit operation for such tool will be unavailable | | **`pause.timeout`** | | ### DTS @@ -279,7 +281,7 @@ Settings in this tab contains default Launch parameters: | **`launch.container.cpu.resource`** | | | **`launch.container.memory.resource.policy`** | | | **`launch.container.memory.resource.request`** | | -| **`launch.insufficient.capacity.message`** | Defines the text displayed in the run logs in case when an instance requested by the user is missing due to `InsufficientInstanceCapacity` error (means insufficient capacity in the selected Cloud Region) | +| **`launch.insufficient.capacity.message`** | Defines the text displayed in the run logs in case when an instance requested by the user is missing due to `InsufficientInstanceCapacity` error
(means insufficient capacity in the selected Cloud Region) | | **`launch.run.visibility`** | Allow to view foreign runs based on pipeline permissions (value `INHERIT`) or restrict visibility of all non-owner runs (value `OWNER`) | | **`launch.dind.enable`** | Enables Docker in Docker functionality | | **`launch.dind.container.vars`** | Allows to specify the variables, which will be passed to the DIND container (if they are set for the host environment) | @@ -291,6 +293,7 @@ Settings in this tab contains default Launch parameters: | **`launch.serverless.stop.timeout`** | | | **`launch.serverless.wait.count`** | | | **`launch.system.parameters`** | System parameters, that are used when launching pipelines | +| **`launch.tool.size.limits`** | Defines "soft" and "hard" limits for a container size in bytes.
If tool container size exceeds "soft" limit, user will get warning notification when trying to launch such a tool.
If container size exceeds "hard" limit, launch of such a tool will be prohibited | ### Lustre FS @@ -312,6 +315,13 @@ These settings define Lustre FS parameters: | **`misc.max.tool.icon.size.kb`** | Sets maximum size (in Kb) of the uploaded icon for the tool | | **`system.events.confirmation.metadata.key`** | Sets the **KEY** for the user's attribute displaying information about "blocking" notifications confirmation | +### Monitoring + +| Setting name | Description | +|---|---| +| **`monitoring.archive.runs.enable`** | Enables [archiving mechanism](../11_Manage_Runs/11.5._Archive_runs.md) for completed runs | +| **`monitoring.archive.runs.delay`** | Manipulates the frequency of archiving operations (in milliseconds).
Operations of runs archiving are asynchronous and performed after each period of time specified via this preference | + ### Search Settings in this tab contains Elasticsearch parameters: @@ -338,9 +348,12 @@ The settings in this tab contain parameters and actions that are performed depen | Setting name | Description | |---|---| +| **`system.archive.run.metadata.key`** | Defines the name of the metadata key that shall be specified for users/groups which runs shall be [archived](../11_Manage_Runs/11.5._Archive_runs.md) | +| **`system.archive.run.owners.chunk.size`** | Defines the chunk size by which the data of completed runs to archive shall be divided. Data is divided by users count (runs owners count) | +| **`system.archive.run.runs.chunk.size`** | Defines the chunk size by which the data of completed runs to archive shall be divided. Data is divided by master runs count | | **`system.ssh.default.root.user.enabled`** | Enables launch of the SSH terminal from the run under `root`-user access | -| **`system.max.idle.timeout.minutes`** | Specifies a duration in minutes. If CPU utilization is below **`system.idle.cpu.threshold`** for this duration - notification will be sent to the user and the corresponding run will be marked by the "IDLE" label | -| **`system.idle.action.timeout.minutes`** | Specifies a duration in minutes. If CPU utilization is below **`system.idle.cpu.threshold`** for this duration - an action, specified in **`system.idle.action`** will be performed | +| **`system.max.idle.timeout.minutes`** | Specifies a duration in minutes.
If CPU utilization is below **`system.idle.cpu.threshold`** for this duration - notification will be sent to the user and the corresponding run will be marked by the "IDLE" label | +| **`system.idle.action.timeout.minutes`** | Specifies a duration in minutes.
If CPU utilization is below **`system.idle.cpu.threshold`** for this duration - an action, specified in **`system.idle.action`** will be performed | | **`system.resource.monitoring.period`** | Specifies period (in seconds) between the users' instances scanning to collect the monitoring metrics | | **`system.monitoring.time.range`** | Specifies time delay (in sec) after which the notification "HIGH\_CONSUMED\_RESOURCES" would be sent again, if the problem is still in place | | **`system.disk.consume.threshold`** | Specifies disk threshold (in %) above which the notification "HIGH\_CONSUMED\_RESOURCES" would be sent and the corresponding run will be marked by the "PRESSURE" label | diff --git a/docs/md/release_notes/v.0.15/v.0.15_-_Release_notes.md b/docs/md/release_notes/v.0.15/v.0.15_-_Release_notes.md index a3e5dfe368..97e920dacb 100644 --- a/docs/md/release_notes/v.0.15/v.0.15_-_Release_notes.md +++ b/docs/md/release_notes/v.0.15/v.0.15_-_Release_notes.md @@ -288,7 +288,7 @@ Two preferences are introduced: - This hook can be used to perform any filesystem cleanup or other operations, that shall not affect the currently running processes. - If a corresponding pre/post script is not found in the docker image - it will not be executed. -For more details see [here](../../manual/10_Manage_Tools/10.4._Edit_a_Tool.md#committing-features). +For more details see [here](../../manual/10_Manage_Tools/10.4._Edit_a_Tool.md#prepost-commit-hooks). ## Restricting manual installation of the nvidia tools diff --git a/docs/md/release_notes/v.0.17/attachments/RN017_ContainerSize_1.png b/docs/md/release_notes/v.0.17/attachments/RN017_ContainerSize_1.png new file mode 100644 index 0000000000000000000000000000000000000000..769291c1d2f73e7626b9b6f97c4b51757af8c7e3 GIT binary patch literal 2420 zcmX9=c~sNK77ifFQcyt@S?Z|@QqWq3A}Y#DWRXRdkN`iFwG|~Oix31A8c2W_kq|aP zD~%)Xbed}12#gZKi->j=H8h*-~GP1_skzd_H=jB(lF3K zAP`#47wyro7s2zYnhI>=YO`Ztrxc5JLLnHVM(^Rxwrj{sNCe{7Y|V`jRRlu$o~Ike z0RS*EG6H}?zQh}2w>CC3wz9`~OL7GO0(Ln$8rmAsfr;gUq1M(RfgBd=fjN>J z=K%#yq*5lT!Xc=9LILKQl9QX}fMTK?g2JmNq(I7q0ThS_X`_WeJqwXaI*pSZ+HI`(?!S{fb<1$MchvwuPTdjq=IXgQmkw^rCG$K6OCMVm7 zv_V1p)K+Yuf(XF)D$;6o1gvFS$+E{kGoobh7D-(LK-f%05D18}QLxm6h8NT(Aprel z1QG{sxR6FAAP7|25&)c1$y7U$*gh$dtRka62?4qp29A;lR5YQq9{`DDvYptz!Vt?M zSf962St}7N#MTi^LM0JOg+NHG7!XJ#V1z0|MxmRV`oSoznTn=1(O@|Ofz%93k4hE> zXhhn;f&|?>+RrKNZ>Ewsqi|KQHX6POv3-@nT0vR?ApR5q*TRw^sYD`e1xfwHh*}$= zwi9XXZ8Rpt*;Fdmbv*TWo4eJo|si&PPrdC>u*7!18TQ0Y0g!W zJKXf?Ker0kzc@?z9n!q^FRLBv{LVsUmAkLXY(43L_SJWG6LIXPcaQn8*3W+#YI%C7 z#{bv3e++~KmD>T6!XW*s{3Yf3V_0tHPlKt!oKR>ew*_nOw~b>IfFDGn@@+ovf?6%a zsUo)&`qB3z6*zXO=aoCte>xc@?$L1ikf@c`#A6@zb8;;K`gLp5XX?f=XWV$tShk5}m(xSC025 zHtLp(!YhA_y7nY-@{RCGW>2Cp(_fUB)9?9PuIh$n60eLd;<3+n+%oB`(Q~v$`|R#f z&MNnRc{z1>K5KoWXys43rh$D=Ro<%g8w6HipQM7Tu1k+kyN=@rkZ|m@T^;WhT&WFUP(LUv z*BY*9dv|1dyP7@Fc-?=h7wZ*;(R=MqH7;625R<&r_XC@rysdZr$Bxn4QLw}Fv&~NiqU$jd@#DRgoc}$FZoL%S+dYTds zi$Yw_>1QsTCkfgkJNJLHaV6k8MZ@)B{Jbr8_obBfOw84twrXtJ&U0=mvP0QJE~m>x zhgdY6{i0LB0rH^>npwlyIR##+KqkBQZ-+GYjU>MfpIi~Z!X!$`GZl)Rb zI69urykktn5PM91UM0=UEb49OU|?3n%DYEgVXU7aSf z&NpA_|7D>bhrSsheJ9RcGMfF>Z(qdSnjH?qgoIGlhn*I>Nt+K$bjf>uR3VaEGV~4I zWu{)&bidb}uA($rXLWr1PQ#Rot6G_k*U*U<(I0gki}x7vZSIq_z6$kQz*{RF z-4k#7hUIm$)cJ~q#$LMBcDxK5@0VL>Wc(aws}wCzZ+kd@5H*!Ma=829Gj%&v$k!GT ztM!lFvEpF6qw2K{3On7R;o7iomAJvh9|!9r>P1F09ICoai{|oR;M#Lj>}jVDeGc4I z^|zACZVQ5f`nV%8!6M?t>pfB*6RGkHaHs{rc*I$8q+|?!o^w*m6YlEvRPJ}m5lp*+s(ozbH>-?ZH^&3@_vJU zKVPG)i9J<@xnzcIDgB=fsX5bAlI6lB^v?bK^tKrDGJfNxCoO2_KGnj|O5Ql{21aXh z5yHCpT%v0OpBEk8SMWDpPMYSK=lvYYuG`~Fb8>xcb}n6Z&xd^Lv@ddhwMIF;@VNCE z6!(voU1v_#L^@SJ_M}H%sD3QV7j*|7sr27#hK+hL{qs);%un2>Xu&@v1j50A5)NVj literal 0 HcmV?d00001 diff --git a/docs/md/release_notes/v.0.17/v.0.17_-_Release_notes.md b/docs/md/release_notes/v.0.17/v.0.17_-_Release_notes.md index b72786236c..b9a5acc993 100644 --- a/docs/md/release_notes/v.0.17/v.0.17_-_Release_notes.md +++ b/docs/md/release_notes/v.0.17/v.0.17_-_Release_notes.md @@ -44,6 +44,7 @@ - [Cluster run usage](#cluster-run-usage) - [Cluster run estimation price](#cluster-run-estimation-price) - [Terminal view](#terminal-view) +- [Container limits](#container-limits-for-commitlaunch-tool-operations) - [AWS: seamless authentication](#aws-seamless-authentication) - [AWS: transfer objects between AWS regions](#aws-transfer-objects-between-aws-regions-using-pipe-storage-cpmv-commands) - [AWS: switching of regions for launched jobs in case of insufficient capacity](#aws-switching-of-cloud-regions-for-launched-jobs-in-case-of-insufficient-capacity) @@ -1571,6 +1572,25 @@ Required color schema can be configured in two ways: For details see [here](../../manual/15_Interactive_services/15.2._Using_Terminal_access.md#terminal-view). +## Container limits for commit/launch tool operations + +Docker images can be extremely large. +Therefore in the current version, a mechanism to warn/reject users from using of too big images was implemented. + +There are new system preferences **`commit.container.size.limits`** and **`launch.tool.size.limits`** to manage that behavior: + ![CP_v.0.17_ReleaseNotes](attachments/RN017_ContainerSize_1.png) + +Both preferences have the same format and define "**soft**" and "**hard**" limits for a container size in bytes: + +- **`commit.container.size.limits`** defines limits of the docker container that are taken into account during the tool commit operation: + - if container size exceeds "soft" limit - user will get warning, but can proceed the commit at their own risk + - if the container size exceeds "hard" limit - tool commit operation will be prohibited +- **`launch.tool.size.limits`** defines limits of the docker container that are taken into account during the tool launch operation: + - if container size exceeds "soft" limit - user will get warning, but can launch the tool at their own risk + - if the container size exceeds "hard" limit - tool launch will be prohibited + +For more details see sections in [Tool commit](../../manual/10_Manage_Tools/10.4._Edit_a_Tool.md#container-size-limits) and [Tool launch](../../manual/10_Manage_Tools/10.5._Launch_a_Tool.md#container-size-limits). + ## AWS: seamless authentication In some cases, users are faced with the following scenarios: