From 87635580ccc192b55d7c2a9c1d4f0588f91370ae Mon Sep 17 00:00:00 2001 From: Mohit Ayani Date: Thu, 11 Jul 2024 16:32:12 -0700 Subject: [PATCH] adding python sdk for NIM on AzureML --- .../azure/azureml/python_sdk/README.md | 21 ++ .../azure/azureml/python_sdk/imgs/browser.png | Bin 0 -> 176678 bytes .../python_sdk/nim-azureml-compute.ipynb | 309 ++++++++++++++++++ .../python_sdk/provision-aml-compute.ipynb | 206 ++++++++++++ 4 files changed, 536 insertions(+) create mode 100644 cloud-service-providers/azure/azureml/python_sdk/README.md create mode 100644 cloud-service-providers/azure/azureml/python_sdk/imgs/browser.png create mode 100644 cloud-service-providers/azure/azureml/python_sdk/nim-azureml-compute.ipynb create mode 100644 cloud-service-providers/azure/azureml/python_sdk/provision-aml-compute.ipynb diff --git a/cloud-service-providers/azure/azureml/python_sdk/README.md b/cloud-service-providers/azure/azureml/python_sdk/README.md new file mode 100644 index 0000000..47f30f2 --- /dev/null +++ b/cloud-service-providers/azure/azureml/python_sdk/README.md @@ -0,0 +1,21 @@ +# Instructions for deploying NIM models on AzureML using Python SDK + +In this example, we will deploy the LLAMA3 8B model on AzureML using the Python SDK. + +****Prerequisites:** +- [NGC API Key](https://catalog.ngc.nvidia.com/) +- [AzureML workspace](https://learn.microsoft.com/en-us/azure/machine-learning/how-to-manage-workspace?view=azureml-api-2&tabs=python) + +1. Provision the compute instance using the Jupyter notebook `provision aml-compute.ipynb`.This will setup the GPU compute 1xA100 on AzureML. You can run this Jupyter notebook from your local machine. + +2. Upon the successful running of this notebook, you will get the URL of the Jupyter server which starts running on the AzureML compute as shown below (_note: your URL would be different name_). You can then paste the URL in your local machines' browser +```bash + +{'display_name': 'Jupyter Lab', 'endpoint_uri': 'https://mayani-gpu-ci.swedencentral.instances.azureml.ms/lab'}]..... + +``` + +3. Run the script `nim-azureml-compute.ipynb` from this repository on your jupyter server which is running on the AzureML compute node as shown in the image below +![image](imgs/browser.png) + + diff --git a/cloud-service-providers/azure/azureml/python_sdk/imgs/browser.png b/cloud-service-providers/azure/azureml/python_sdk/imgs/browser.png new file mode 100644 index 0000000000000000000000000000000000000000..396e72e54ad52b2505ff0809bac93334b9d3461d GIT binary patch literal 176678 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%0ARyL#0!0?VsYlqUPopP)-g#(2AHrY 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
BiJ^VkoNq_9lCs6>EPWHNeiN^4@& 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

`m)AK3~FdDHw3puoQ0svi%oPs}iYZfuL z$D(xJh)$-F#qnFiT5l`2(XmBi-J@m9Jqu47v886-vpP#w5LLX?RIf-Gr0uTJ{gmC^ zrMBHc9Qy9U{Og}n?#PheQb(SWp40VkwbLOkIR|Jy@6L>4TZ%*;eino7UV-2m%MZnv6;>E%-)6^ezk&YP31jA4qIC{R;-*|R?)0JM1(%W~v{XQURObdRYHQb`m z77WRDI{q2HE8O~}8<#5m@`R==CxxlMguy6d@WZ*9to|4>1)%A`xF~9Xtz4)We7y+t zkA6CQmTSV}cKMaeZcANA6;~P0myTSG9M?5{S#vZyWv#184f#+*q9rOFyG`Q|77H|5 zY7en-At|=s-VOKDgRc6h@E#&-lNTJ7?^!`t#aBt#bA}gg0ZhjcjWBYy!)_+6=dW1i z%Kbyy78pP{As+9(C66GcTheI>S@IW82&mf}Yrx(AX@!E$$_WD&y9y)pzbC36BJP6q7eclvJ$LKu<7`P7qyfv$> zGNbJq(i_~%FxY%{E!Aq2uQAp!w1*zk1~zbBg4d7&mjhclyCh)S7EF0yIx40M`bp(2sHh-KqfB z4+~_0^Z(fU%BVKmZQB-T@e&+LaV_o?ceg?X5AI$pxJz*g#ibM|?(P=c-MzR4ceroA zZ=Zek-uI0A_x?F!WOP7C(&WwaJZrAC=A4Vmd|YBhhyfK~>g58_W#TI~?GE5KJXvk2 z_FB-5lb4_0q1JRHJ*TvF`oSJ`%;nZG&HY&*pm?Bqr)=*5@>Agf3xb6KYj%LB9530~ z;IxnTr;_J*o;OSkRGZ~Zj4dq(UTpyBEjzZFnwrH*i(mvXe>@7|eJ61~82}&^wujRw z@$vEhfFQGL*xIcpDW7AA(A@zC3I;~5*Te1DXr_2ye}Cve`N#`YJUgv7M3K2bmGQP_ z3-4Rp8XMcNWB&JB1~OglM`|B$$D1N`Ib+0EpZx*_kIyT<ohz-TKIGs}UtBppY#M4W1 zwcKz|iQeQ%2a{90o6b-8$*8xVf#Y_7L@got%`(B}qs=T*MMcdPpB+&kv0%}n%~kK8 zp32@>iY|)4Qt}ykUkJJwFuaOLWpP%m8YYk(yvAhrJ(N(GKr~Q!kJ}@-yN9x(KTnH*)1{mG_!!9Cu zukKf@jt0-hFCzixk8K+ZEta2mKXAO8E*@FW*5BaY{~QbSpDe5Z2enZU{ruJo=15c& zsy7P{mAN;w#1>QJS1!`AhW^q#QTI>x{v_H0rNf!8f7jXzW}*+LjLU_$UmY}GBLd}z zg!L(V9P_zk`eq(qt5nAsz$eGeVaqWTR;O?|Ws$eygFg3;@Aa#Q1jV$Ge0oA_q~+EG zlurd>lF7n7)Sx4|tARvHylvFsE&{IM)rW>$yaLY~bl$gYFO{^FH|x5xiUFIS+;Pv_ z4}C|?=UFm^i{H*P_UY_;xLYz+RUb$|7~+1r>vdyBhPKLp!D+rjerW^m>Ay1B?b5VX zhPE7NbbaCEe7pktn>kLO4$@wve)=@iJu?a~p6i&vDI z9))HKHVMHhJ@U8r_wwHkhu!k%lU>tO1ViqqJa$0D>m^t6`!%XR3|ABQkVGpgpIlV! zVJwEwd0@g=47*#BKxvlPOqa4idy`^p*ZxvXtDEiwRj-pT6ScF&S&Ay9_*rwhc zWxO=Y5Fvzk;k)i~orMouzAKr!yS^-KooNZ(*ruQ~dLSw#;69d5tiPfdltG15{yeJM zdLo+J=ZW*v$xu5HexD)YT6cwU&xKt0ZNJ6jHhdz2ti>+P*<+?hAjMQBS-ZZvGA+Zy{5fxGv9r$G+gq(~^oHF&54<6JFVcTCB0lAfyuE*D=cu?| z5Ue_;c#2mRj+@}GwN#O8XfEh+>fB&pewbTvfYT4WjJ%!-hh8f(>(>3aDwqE5XUE() z=rrR#Bv6PVH23KXr`17{f=4xzlvot;<58E0_Z6JIF~j_F#@b# z_5AzM(NomBl-DF#jNwGA z>wCoIB31%SM_$B2*uiv{*Op30_%lC;3e6XAVV4Ey3sn9$qP13yRZ?g!$P>^LFbO|i zXK5K#e{CyrzdA}jYCLYiPGzwIdLQ)tVxxdmp{UAYN{&npn2%v3trpxH{xZMWtLEJ0 zYm9F{-Th+NmxWK|w3dpLoR`-!V&S9f=7_luIUV>=1w`8#Jy16LJQ(n{##wmk#x> zu>9yG5NyRLC1wpuo8Jb8(;4{_EFa4)RC&%|#@^FSR!+$D8g zJDI*665kY}AiP`Q?^cZQh!P|xe{1kqJEpau^3IEq(nGTA2|YnhTv}#&-UVEEwm08* zVVN_TtNZ%6@l?w3x{X+kK=_eEEuRJ#5j~ck@`<&>?S;mf*o;}Z7t0&oBDlfKq=|^K z$D+80hSKcebaDCR`;)uZazAH@j%DVARtD-l-G_L=*a^;;chgmesd2jxX+~Tf&6UFM zh<1yG`J>#mM!eK0DaCAK6pve(RGtPuw0CRqdEX5m%rTi!f<@wPcN{2(n@U+;k@boW zLginDNM6UZ7Av#xR_y39F^`^zJj~S~-*Uk`yq-g`l>g>%em)v`slb0ZR$ zb;*L-;Hrr;#bIK9?)e>g;*Bgo^&z>{Fn#NAF?wsZAD2F0HBg*-!gOuSO4rXdey!fK z?|vy@$6zR(!Qf*j+)|ity1nl$#~y6T)Q&OH9dozC`$i*!3xrVo!p$qJzQk3tX4<_; zyVds=%cwJ@)ZDp=%J+wtUZ^}>mr}^D*@R39Sw(+*1IY+GE$ag#&tb}!G`A#-z=4+h z2K|`ZJ4%R~rDfb~2k8KH8sH(5IgnazV$b#d{vxCI`N3aW5?z&oCErjYSvM&<|JQHS+x*S^ZL z;N#62X_AETttN5_{=;n7{D#Y%?Q=q%n}nF#TFh;~1bwBmDQ?r(w)?(ElHT4|WE6<& zp?sbXhrUQ*WxO{FPH}RbQhQ-Nilj~0SxGIAM`_E|10nnH)K?EfISQqvoWIe*!x{s6 z;PJI&lM?kg0sh+gr3N&|(#@vYd>r>P9mN!8TdxOi0`Tn^FqX_l2@ZJ&(ZK;uuki0F zQze)_>PX6;A?0F|0n+;b&*Ck>dWZ#3o`o3H*?R0}pd&D=q!tyI{x>t3Zi@%K-O+Nh z7PrkJ9WVfQ#&9+W(M(Joct#FD4$}MxV0eVssA`)f&Du3j6njqTR|#Yr8oEGFG^Y%+ zU+*0$Bpo1!snx=J4yBq0qh_4QILLO@X^ehdp$enLaH{FClHug3EXHqq40mu;OM*v{kAFF(OHH$Lj zE-B~K_@U({(C^3Q3lkw;1B^}1P?l#QXOb~{&RF*GGyaPuyS_4-K2 z+pV3|aU|~C!J$1fIalF+;VfogYu)1&LI+|XGx0?S+{e+=`|_~2>sLa^Kucn%xSwqs zJfdni)>Z3J+|46gh|vtNA$-NxjilOV<4nh=b^cfSM~GUzk`C4|-)K}@UC4Z3Hj>IQ zbX@A)h<1L37e#l3JzoC)LPm0+Z zUA70@5z^eNs!C?vZ9KLkjEi2z+tYoUE!eCA2-S{d{SkH%?vI$?`gnjwv{pRwq z%+&dqb2-dgw*HZMZP9i4F@2@(bKM9g|Bb@6jjV27$bl}m=6*o0TgnN2w|tt%7BxN^ z%f@N#zTT1e%o+04TZH`&TQ}~HGI1veECp9hm0r4@aOQTy*V#xBBtjeOCmU|I?*_{E zGq(b91ah(-lM0v9r(?0f>5!Xs&L+oRrziLZ2A8wXw_i|Lkl_fArY5#FfA9=AtvuZF zfLMIwTAs>(TYbr(sq_}NN_TWUoBNb8PKgNvoC3@^$vn}8`b15}{P}7C_ zxhS1cL;^z??ar`%fZWf({57e61_ooL`dpL+gqRfr-S#8dY%+;;_);}nJQ9+U&ciho z)Y6ZTuN}kS3$)XC+M2smeFU;Po8>0n9g1;+Omuw&y?oX;a~^)y3jn+Cqf9kLk!cRV z_p1KGlBEZWrv~++zM3YJqKxwuW?=|fnYOd(8H$pfW!^B384LM@bfbr!iBXaK6pmOC zXD&{~S?WU0T|H3F@g7r@SeWzBHi5^gFwsv7rIUCagAvM#A^Tl3_+Y`Wvw!jEvIdHQ z79v~Dh6Evi(7}S98Rgz-F0arOe=Gd;3 z#7e0|j@Pj}_i$%C70dkmMd!-eRQQ+T8%zEmhmJxAjg;VXX}1>Xg~l#|l$Gh=QG~KE zTIC(AOweZ+Cs)IDX*LAnSzK)QS#!{ppg47EBi|Zv06_qES$w7Jhlx_9q`4kSNBj;J zbyNmR9BquVnGC^iQVY<5fHy8&;}` z$?iSFsl+>VLmRfcSUCc zjwNl4=N|V8h4};3Z9QKazjR;;!gzSBkm~p^F93}$%cfKqr}xNlr-KQh@(#u)Z4?F# zO>qper_D1dkaB`*r&3$vX&&MCXa0zsVo2(pYyq@Bt1o}}WkJz3LIw}QhI%tAy_AO6- zK2#IOK9EgQ2~cAwyk_AKrwhAo25rL;t~>tXVj~*kPJOb+w#DcS5oG$*t&rZR0D()$ zRk>`qXmUf#L32{9L7)M7=@C#^1j`xne|{h&^iVHQNTSxgi=>Ad>@r}E?I$-7*wI9-J@whO3BMrfTPF-xZTb=PI0NCGgB51#@*`#@V zB-tIE<@4$TfdN#Dz@V#xEU(Vw-q{s?Pw8xPpKwR$XagLeuDg@8t*9_>swl7*QL%ZZ zJeh^p>0b;00Vro6qAi*KGpAjJ^VXElaY3fE)9q~&0PJn~1A8kgNr27M103u&`h5X- zNM$JU-gJZtot<^tf~l5{9U^zaLHk03B*cjF_e&%3o@^&$7*Cko@1`|bxnv!OHP zzVE1G8E3w?2zw`-0DWZ4<)>i@VECuSU=uR@w{4x|yz~GRT+L zHU^l}9Gi^b{I~r)Zg4S1~&*k-udX*b40l_*#xrU zBS*JI$hBRx<`PvqSpmNR^JqnWVgh4(;sITNwB#qKT^E)1cl!DuCk!HP1wdY(ZLh>e zjxWGlOfFQ2u4Xq3$rBBLQhi_zi2%7o5tJsRZ6Ts{5I{Jfe3E=n70D$!T5_~)pLf;j zVhCM)Ldg064xKOnu|L}m=ceR*7SDaq;k6+e0z(K%3uDDl0y5&eION$5ExhHD5M-io z@;C7B(0O9B$yxS9WCHb?d^x_iP&i3xpWnW{zuwda7=uUn$FCv@SMiXH;o@6vhgkm<6>EtL#@QX0C^Z2 z(zb^ID{QT*m}>cOc6>VqtysjiX=)p;r=evV&|^%j*#IH}g~D(^!&)^w>ZCJ7&^%m~ z@|7s7l1qwZV&RbOLP7_U^v%3rrUGl+vYR_O%P{h?A&frY+DCt78m{_bbtU%u+aT?Y zU?#M6E!OzqCP-U7nAJW>Mfti^+`sRaIhjRUnDf&t+v{V@blZ1PG8|1fL1#W>Xv&HZ zVR9PkJv&X-2SQ`9x^mKxELNm$f^VoJ!qAsX!nZt28P!tOI^El-Ctmt@UPL7%dGpR3 z9^Cs=eG72JwN7_?BlIFfQNn01T-<~fJRakbmVB=Z63@{E*y8Z9CyhCq4#>Mtj(Ft%b|I(imED>v_n_a@jKNQXjZR>)TUs4!eK*!up}82-?!holx6% zh}zx|flfOxD`az{Wr4>c+h(Cu??_U2qz=etr`K!=cfgB=M=YK(#sPh^ua6Fa!)gB^ z6gkxHL6Auql_PsaKp7?)u5W1`zVpKWicaFdf8uc(-|!N`DlhQiy#C8gg{$uu*_r0% zy3@~}ow1!)edFzy&rN~#Ob*f!CT{vt!2b4c~R zTltp@$h80!ad;s{%3l z04XS&q_*m;VU!>Z2(#E}e_Ap4to3%U&^f^aFpFr2l+6Zs=2V}n0@QW@4*KHm0ZNnn zANpmQ9ct_cU@Hw21{W(HYx6Z5mZej4Rl9@&5|X-Zv+7+2wUVO3iCks;0P2vab_QJR z@4$FTpv!Hp5*RVVDuxh1$ny3;8seuc{P5ARmm6>@m^ab{yL~;QF z&#yew*u!c`qnyP&1mm*~mkLp{h5UD3Ozsg#f$yIsE+YJ*5Xhfyy*%fzbMnXv~ySr>nkL)`8DK_5_jk2qr~Z? z*DoRXvi+UAe^3L-&Z3_=KaI4%U0ub*hNekhl$+de_Z5N_zt=mP#~r~d44G7XFV>-!s`P95c-lEK$aqRRu$RkUk3r5UdSrsJ$30(hw7G3; z9`=iVP)w#WJq?H;Om=68$Mc_b49uJYGahN*4tk=ph~9M)i>I(5YqF-d9l@;`?~Nha zGgjAcV=g!k&>lAmqOE17cAf|8MOspvZ59fXvj41d>rAdoXJfh*#5}8$k>$u=4yx64 zS+N9Np$MM&@xL|jH~7L9GF3OjnH_v5P#O;q?_V<`j#Csw^s2;aBX zy^OP_As3KH!#il+IV8ka@Sbk)I4ArQWjfsPM@qhUdOLE@HIwYz=;RG>R7|B_{p@z) z!e}DGJf1Uu?fkP#libFV0c7<6F*LG(`fwS2gC?vfxNB2y;d=`*AXLp^W^Qflt##9Zzy`Dqp# zKu+ol*a@S^Aim+0``z%>@Y$AWKWl!0m*fZfdFHGNRyWRHYjR~W+6y686W3Z4GzYF5 zvXT1z>2RDSSM~5Qui@I??$Ahh2jMf*l=+2hS*qfBAHH%_Sg>hA!ql1}q@3JBbzJ=A zz#N0f!tiBj;iF$tcyH2-12M@DSayy0Xj+dw#!p?Um-vu`G@j+d{2>RfoL!!20|y)6 z{H{;wzh63=_R{)QyGcDUGbFCjtiTWjX4h2`+|A~|CXtLbPZYLuH-Zvgu$2C~SXIuSCJAAPZQ4~#57ia?&=fq* znyNsCA@W$pm@PBG$Us&7nS}fBtwGHDKSf8lWT;lu8%V(n}uNAovD-6erE?t;l z_tZeKNDeDsyGAgkt-Ep-dN2~={S}1WQZ!GBy>Y?brdHp65FFy_e5E9tQYwNr#+P`{ z^Cem9W^sMsAspHIdHdV~YQc4U#68ln&)O61bP+q)J9g>kXR$cq6?P@-B??SKY0G;% zg`#TPNu-Nkwb-vU$){5wZ&n&MVxOdrMtHs~tarX~wcTo+I}vo*qV?5EYr6m$l-Bbs z?m4=8{XNv1htrp58A93pTYvba;kCB`Q1l$i)~vP=3S&|E88Bkl_wcLPZ z#zt$^06zSx*lgu)Wk#(t4}2s^Fr*7Q9xgN%dp4K~P91)bEiWne83HY8joEBEgdJa? zG{0siYuUW+_x6}VNeeINJzKJ&!^Arb+~yR}rtFSjvmRjV0=s{(TC{yLqFFfXUh_f@h@X)jKFvr-$YZVZVmekZ~LDd+t`M6D+`#)+l*-_N9qCO|Nd>QxHYRHyk1 zrUOX*f4Wf_!r>Uio^);J|2^3Le|`}9bChz~&ZO%9@vnd1`M)ppzt`yh&pK*jl3iU4 zM6J+22J^aJ9x%CjrPEfsUD*(_yGL#xr5Nz%F9^9mxZODPeKWHv(Z<{rwobPC8WK{I zLG+KkBJyWj{kcWIL3$se_)0BlTjtO2U?fLk0rf4LS+cNNn^+~`#~tdxW1X0uNaWMn z+bu0u!)qk-J5Svk!xMuQLagiF1E>AXW|b_gx=G8fX0B778`F(nmi#3p5jss0CdFDr zhEGFfl=%yf`}a4e8M|6asKOrVkDB#+4M?WJucxUrA zmBVz@7|OG@QmEGVNGZLc6+UyXSII4)J)SLxyYWtdH*Bk)_^&ticERiB6qgrr9}ve7 zE&MupF^Qv3?QmZ92JS@`pjbgiYU>$El?^RWNBqyD1VRluQ~Nbzv?%-6RkULO`Ltc% zTqA#ZT$dC~OYpw=)RiCiRy9xU;3?geX4Tw_%e6wA+i>vC`G9V&gWc@**LMcVff@a_ zXZfFgW@B=?43vlmzu5G?lp(4Y^!A#ovTZ$2=agOjg!;VBwYp&Zmx-dwBad`s9Mc_T zRYcN6aR0;i!d^osi~W-$N~zvRc*Ng>H>g-xSQHrEcg06fmtSeAbZe}>?4BAEvU&#T zsS6C3d-%eg-V3_yv$?zw`poM16kBenNN953RL(-96o*4j@hJ@Fdu_5X9X^XrykV~L zK%jiW@39uoPa)km=WbQSjnMqU&jX{b4x7-VN>ws<=iQI3Egu2uy{Euv|M=m;X7KLB zC#b|c++3w>Yh)T#pm}ffT;=95;2gO)@k@yb7Zop#gh}i5s~Ncm&owc^TF3n940>a^ z`a&xW*WDI(?B+wg3Cj+MMuTTC_pcz{ZH8Y_A6cyf6v5>khY^}&?yqhdJo%SwTb)yc zPUoK<=!-2Uqu(;9^{-*mQhUyGvabi?BWz>ljjV3AC2YAJ3P5D;MB>kPH?xAZV2cf?g*@S=Cs+CNIPWD+{fa(5#6S27TR>%FHygF9{Q3?AH(-OSFcaZ zJXiPoJ{U#pUiqiH%~z!zH!_Jc|J{)Uve&?g3-__)~AQHSy$MPPy>vQ#p`(bf)k|goV5e1WCs%DFATb}m(rY!m(m5l zF^MON*tvUN+r3Q@&Opf?a5;$9-5N@8%NdYKXH1Idg@C^p4d!)N4TmQgoqLBFLH%BQ zQ4Tz9cR*ec{oTAGExVvuy-2Zbtx;jYA@t@f7_+@2$8(8)O8m-_@-;>xo4Anm zM0aHpTTR&Zu%Up*0)5I-@GHW#YfMGMdaK1+wc1+JkT_GK6{dv8lBo!ADx! z(u36nWeQT;HYzSZJhQHG+w3zYSrW+5#^24br_+=0DD$G z3Xh2@Y_|tHp6UC!`S@#cK?xzY8L#$VitJmhU8ni3gwewxv%9Lf_A`%biEI^LW|&>e zWwHCL5EjAMG-eqd+nHO*-MZexczC~lwlbmlofJ9kXMga&#nETN`Ooir5rGccpkf#J z=j*regoCjbYc*806;{i4HvXK}PA9^G)r@vVcOPrD!hPtY#77RuUK4?as-m_}ca1(S-iZW35x6k-|1glHCpz z8P{Nq{I%D0bo^AE2QTi5W2XnxT#e4>gGF?7khhFp|#*u8+$QR=;sL3BKapVj^z7bkI(2awHlrw$0cP2(v&I=gtG zyxiig{K@xLkdj7|LAT6D=ey}^o@qNQ`C8l9N_^&mgp(FZ6}LC~h@j(I@n*MEJ4Lkz zBwUqN1wz5}MC;)9D9Zb$$2N=?{c+Q`WF;BRcHqE|2R?1cERz%4!|v$v&)A4ARrWvk zgZ8IF@w&u>xWWC8w}bfDG!_J3Niz-(N{+w(QsiQ3u_Gq`mSro->hc=Q$jHG0Pg1O- zHJYKf8J@s#8^h)OP;ZdwC$;*ZENG9qJ(vk@uUEJZ1ZJo#9BBVtL;7#T=9BU)P@Mu%Q z9*s7bY>#u2)c!mVC1eDRa9t<>1P|KNOMH)9E&!-Ts0bBj;TSmahQ1G^d0iaYF_Dr) zE2UKGH`_$sU+K2@XsS07QJE%mYy}K|4~D*b9)t{68-;8cS#>$h{E7 z`?)`1g2iFE`fOxSq=t(^Rs5|8=-edn-9cmP(`Vc9)Sw|*?AvEEAU{^C_FqG<3o?x_ z_?wK?N|&G(cTEvQRl_v6^bPw$o{y<0GYdbfi$y)x#i z<$hWL)vjp+ig#DC?QiDN8XY|&PsDLeUwkH{Y4 zT}GL!^jd{IcII~q<)!?IK)s=YbM*}LB%s-LJ^3?GxRU}0un@F5CcPR6Hl;Rj5t=S7 z#WWYs`d+=9J&-Yk8``FUM04C9OC5&hb^CVvNWEA*G3bY8xn3s04Jf6?Ak*@03>?w~ zqg%#yQV$$uV`=@Z1`1c%nIgvQ(Z-H4=2{~XKsPWV-Dua&{V402rNJSH#xf>oqRO_A z4&M{C%O$}GwvA7;?#Z?VrCJM2!a7x6XW=ckD^+$>=jO6OkMm-4v(0mM?1N%>-e-sw z>7C0G33X^>I0&xqu(_6545~NZm9`N05?RuQvQu(R@8ESw#g+;{|e*D4LtF4HdmZ^Hpddnb;cB$(bLrv>|_LN z)-(b4X~BF#=xD6zNRs~k3{(;V(HvO~s!afFAlHz|w#Zq6I<-#N-ZyiFCA=rcw~EH^ zpjy8c3vV$C=nkV1VnpjTFE{`eFdL-m@;&bVA89KtYiz!lVsLF)Eb5&Sa*2AV2BtIZ z;+#YQtovV)?eTsl@IMt{A-XE5`s2SH7Z*3B=Md61)o zHs}~5QAnH*<4xX0B;XaJ7@T=>HUxSUk|H?r?Bde+cp0vLDzW6|CXmPitq4@J&X6s+ z2jC2Ax#fPJ8wV!tpxX}vVsbPxpAOcsS~!-`k+?H17m#p4F<43!DDP!W2i z-o#u^tB^mZGM5!yVqMYxR5Zw3HHRHMro3>lr--inNg*icYZcj%*GjoRNl&%~s8pEn zF4u;Vs(t2gAqlxvn}r(g!qkY~kcP@1>0uE7p|0kl_Z0t*`pKTNAc+0^`7^v#aeN^Z zmmxdz=0pO>0P3od2iZydT8^B&d;Bt0f8C+9_HlapKS|o9gwW+id=(4qqmCL+O+NS{rcKn%^IWDK9+e zeDHR9>CX86hL_z0ttO9P*I)zJh6Cft)b|9)sjwX{4rj-Xw!ZxX%Kj76dH{5qeQb1$ z{|==h3UIK7Afyx~Mg?%gF&N0Pqz5Gy#s5lv{+UaPz>xsp$nDwMztmr@DW8?@lQs(M zvLOHCWBtpEqQSj2I9Pl2pW)@-vO!-2Y7ug7QTqzk|JTDpWPymJK=aRcbV5<){p7{# zc5c?xuV(^8seSR)Z(pA`84uvKfBUPZ^pE^k1P=MnQ^m%OH2%H^c;;Q(+Z)$;=X%E* zxu*W|q@H_hW}?oh1;wi`(*-gbt4i zAZ}-WZEfwS0hmahWOiXaTPFHTIV0U{lh&~v5ShdRDn&`4O&m8WNo(%PLvaPjiUt7H z$~tuI^!vd2K6WnLM)YnMzHVIphum&*+RFdFUcjpGu>~??&&oB-zb=L^6-}Ablk5%T zdL9AWpp~>$Bi=e9)E-Yf_c%I#;Hqaf1H|7QPDlx`AQSkH>L@ksX_eFCdV6JV03Rmf z=^~A>Nb1XO;IGw3z&``4?f%%s4S;;HADDiNReT@7d=2!tPd5{E8|#PHLyH@m*y z?M~$8095S?m*Zsw+hbrn#_tvHrwFHdwG!=^@a8c0hd6@w{L`CV)Z%g+gj#@6e2#9b z*Li3Js>l}kzib8=aM_ELIR*Y+J$8jy*G+~mTq|VD5rhRH>S8+wlldRQD~PzQ@_woT zJHrsj6o|V*aVHu`-F7l1iVFa;<>{1~F0}-4|)^2cYY=3HTJUp*AbIi;0P4 ztE@HL_Qi2$)%+Cs)zskWebOyEU4Tde5ph18rv~f|6)X5OF#jd9Z!1 zsnI@1>pYq&OwfaPG&t^N19enC{kqJ|%w)83%wPZzUd{*Dz0+%ZW{N2^!|(l&kt*b( zGJPOGUwq7%x10y0(J?F;MO3(}unH@v0^ z_uMWC=ew#Ja=!=YXh*Rc^0v&qYvii8^n)7rv z#kmv}TU$WO)bSc;2%E;XmWjbdZFqy(5b&|Z!o{Vw2YL&|TDi+f1SaVWYRu*S5KK%6x|o8dtLtde-Zx~vx%KS2j*z;GeFfK`kN*z0DK09=36 zVNicMZ&@mPvfgD380l3wA8MjE!#Yq|Wa1e$s`2E!>)a2S1iB3l;QW%;^@EW8VFcx2%)8H@&e{>)OAUAKuhL)}^*Z!Li(ABDrH z{yyo?0FOQE2Vfw%S@mNb<#U13waf^2K|sN9x|0>vUpXRF=(1=DL z&{F{$;Tq-qjlGGm$8}lL)v~+lPYGmK!0%`C)D;ukv#l^kftEdUh*fafe0_l3q7%Wj z#6o)4SvtXNSN;i-t6k@z((u`a#WUemOdf~yW<>Hx-#%By_fUT#*`Uc?Wvl!EGDU8 z+}-jxum5HJ1F{hW02k39NXCo)IoWwIpQA}G*V$*eF*_eG>jWkPHf>{`FG1&k2VUVF zIe4m2ZN!stwErb`RQ1P4h4F{A3iiQ}be$t6X6gtZl;=1>^|tdojEvr%<04+}jghH* z4k`^Ejqgm#X(SF@Xo}i$DQEhFqY~6G@xFoy>$JBB%P%-K#`w;wlPm5<%|)-D6CkW? z-!jGYcUAVmj;c2YZ{)vRU-Jr@w2~EgT{z;(rqKt6Ry()qqzk#o8uoh`bx;a?WN1~m zE=&K&@?8gGMA!YjTZASH3l|IZlc!76`N2mO_8=+mjC!a2&x$FuBV6{=@rSm^qOZVJ zAaB+xQZ^Iv3W~UAXr0yM@%ls*ivaPH8s--OL2R^J^P2=L=0Q(R>Lvb%5Eq>ho6}tOygpiJzB8WL2c8;P%oU$ADR4 zKqX5`7H~}elqm5)Aoa=@%YbH{6_Cf6vAlw*K3_vj=CNfC(L%|@)~85)X;OzzR^bH* z8vV`!i*;MUk{SU?1piROl)?ub2b2MpKU#Q<>STZwrtd0=M94FD7T|pU&>zoK$RbNt zlBELz^Sc}!l+2U5*!h#`E0m zjt9<3*~^2uYQfpogYR+dS)vxD8K^zlaCJk+mV{m&84{@iWTZn+axXrHt{`^3ei6rs#BI$ij#hbr_9MQLDP4whjqIUUOwIwyc986q3fjPIic7G5_7z~N= z{SP0vv92v6i|>7z%RhS^)Vj34989_<)w8RHp)2Dgrr$ zy^HJlR$68u0=D(g!PNWECA?p*S0qA|6A9A2S?DPFxeQG@g|Ek)ey65&`&U;LtvD?n zv{Kntzh#(X|HWotN0?Mb=XNk~kTi}Wv^#P8bT(7$D!VbJC9)q#TROq4-Bbi;H8jrb zJMC&Uk}lYfwytLdxKbJKr6HALt-lt~WHa&r23)wMIUgp;L_0`TybNVvd4L#_4M#i6u*9Wo6P(g#r`u;`X- za{vJ8qKN5JL7dyf)?m^HS75x5O1j6XY>J@L0N@5z*h4>$K~6%d?E)#&i~=K7gG$Ja z0J5}3*D8Pv8u!n71SL^s8l4vh%*V4aQ{jcC+t?Wgoott!7p!e+F6&y2Sw}E`>o&Vp z-yeHFVWXV|OBY?RGmoBD{4UyP4#F`X(n?gHed0Q1VUkg=}>5lW?AfXH$+M~2OQMDEwKq`;}REI-^lw40t5@@%73HDsPYq=yAD&Ch?)`@=NCYi?Q zw^nKNN##thW~d=niNU2{98{}=7bI9Mw5d;JQx(zkD$zi8bzNnDdv}hrdp$)lS2430 zV}UKc2q=rAE)ayLJFzH!Rs+)!8fjzv%n-%j!Py4!t<^6A+GpH%#USL7tpIjYg6Bvj zZ&>8%4OF6brI30aH$~UPc?WvwlyvYco~y`>fVR6mz*@Ym}mBsxb0D43m z#L28WgU7I|n&VV@r#a_rluIH;=Wo(lJ2TRE#=OiQc@!CM4MbhlY?&CdySl$3%s)Z+ z3Hj;@HJuPO2g_gas104Z4Mhf&$Qu48NPiZVTm??WrT-WW9LJx!=+Jtk!sVcHj30i5 z-+7P?lkk3#Xhy;;ok$1_xpCo|rWtSIx2hKKQqy%bV)Aa+Q+f=2E2Jq<0I zi=i`q*U;r;C#fN%GBv>#7$-2Os43bwy`CgiYqepC(-6l@W&O!0_VUfU*DjdsAM)fm z9pf=X3Bfg`M8^wU{E>Yr!liL6Jyy}8ET3Fx#ov4)kl^0`z9$56dSUNM{)%r1jE__> z?SLbG%f?A;BB;owFt1e)U?m*L@dMym+D}xjZGR|$-jR-Oy6Vc9Uo%FU>Phjw8Kh51 zNx2DNaJZ~CD0Ce)_ zrJ5nb?TO95T$Y>?f_}o{5h<9&0!55^F8*MR9N-9F{^qt6?9h$)fD*n8*+54R)RVM# zUq-UVB&vLvT5&+wY@etDylwYl!s{lH+Mg}((FIB{ogJZ$+U)^4A6`i5?Bv^@D~0)D z+E3NZX6rp2;?8$5I-0o;{TXbfC0ob?)P`E<<&9j$98!$0R_8Y)aU=dMp~MRHxq5m* z`*HX0jVZGlMDgr-j&}VQzI(#XB}|7e0J0mSVHUerh9*GEjL~?4T~W9QgwUT`0l2@M zPdI?^9poTYX(#Y&qZdc4y=&zt=iAMsyD<6Y)B5ZIo+ooUKfn5M`RZ?Tzh^Y~9kGh# z6H0rBdq1#Sqz{A@TOcPStVg%j_K{-~Igjct7~ps=2jI4CSM<5}LF2k^1Len>?G23@ z8VoltDK(FcW1B)SgB%h;h)5q+IU!YIlR==p0Wymbfb82P3bhNQWnYJM00a^m7&p|; zOhL$4(k2eoRtCy1Nr(Jf^c{S*FFEIPs7}a6T?s+t@epVqXZO9(UJ#;*7{R>1kRP?g z`y%(tq`GNCLmWz@X8~$egy3}b`7%^c3ugK=Hof*Pa~M^%K1np9vEG*wJ+w7~Hsn}O zQ5;EP7`Mm!iZZ!=Mp+QeWcvpqh@dh`MT!KPC}A1-+P>$j9of zDE_7*z%rrOIw;Zlg$ILb7MeoM%Qe!GXXnJJx~zDEz!xuq5G;KFScy_1ow3?1zGG@x zY)r@=4haJb=Xdzw>o-?(i6@_bV=*KVoHRL@I2}LVp>T`+i9U#+lh0{m6;-d>A7{;x z^HlL9JF!9<_4!THPfRaL?hcnKxc}JRV4%r-0TBqwP9@T#1ajglXM z#1eFO1Xw2fnli5QwE$T{gH05F!gSW~Q74u9F-ZceAtS35J9_+fIPRVrW4I^=ZG|=aa)_ZY$UuSAJxMi#H zbNknaf~mzD;%tuPp;1gXzo{PXE02DlvHLOA>^BQdj3KO0j2^+~Rxhuo(aHsyKB=H^n@Kv%fUWR?qzxv~H2@bdE&_oI83aVp zv4F*`geB2>F~v$@X-k1?xsAB!tV4x-)$>g318#|T5c~Beve2wokRCq4R|c15 zd=NbnI(o#k1au(~6b5?%D)z4y8NrM*lty%fAV77G}%34mINa zWCMH6;y)ilS$p|!X$dq&B;@2A_E5+X8Tc|5okS3wh#QUO?F3L7S%f0MHdbbukB-$@ zbG83b8`PLPKGAw03qp5)wdtJB0i_Euf`y)OLZAjFt`NqSb59K6 zb1t0kvy<}nqfd$?2{X;J5WfpJ9DRGkh8?gugr{S7`dP{9s@CBV|)R5Okm=AJ}8(HDi3k%NEuBLz3#kdN00~Yq`tJ(4Dn4jNZ}Y7YKnv* zfa)AJ`*DkPI|i_^okYzpjbTBOA@BhRu&!w}ur~hh7q-7$LPueIT?3)p>F!D!^|$n$ zD_+n5$vgX2n%~v%4Cly;osa1+9_R6P5?i-rel&e`y`OZ&CcR!K#MSnka@cWK3`r3jQ+98Tus}jHo?wT%6=x)HO$V zWcVZMu&xEkAL0d2dCfr*89X%xnKmO=wT$;Td$$~%V9S#G-C~K64+i~;(7kCHrj0nc zW{RF@6tOrXd&ww(W<99WD4a-rI!pe$W!&(T&Z8+Qf`9KYvDOo`;Mq(k>ZY(41Zn?j z49pJkM-r=}4jyP)m(2?xRMyyIsM+J_s_wtb258L1KWF|trpAS!~# zy6i%P_0lEdjvmq888d1&0l>yX4;~@%H!b~&y$?t#K2gF0F+wS;8|JGoj~#Wdl1$xf z{*B}%QU(+#U&@E>{v+cclYuM0s6(rmMNocuERVK*WsJO=wp;uvKqc>UadNGALn&Zv zAQZJkhnViVMd*6Fn@j!SmjaJm?E2CxXqHouE{qXGPHtoDk9bn-C}_KB+2!!}mHVqR zmJ;zSa5m*Iw7mHrI44>JVRcud+3f;>p6RlyO`NL)Tu@%hWdFrz*uz@JeSI?eJjXyx z_}_E#Xps(Vm~f$7$4n2_e{c`}J#U)B`~gZiVCGd${Fg8Kzi0~o^?~z|0lJUHdQsH> z<1zpHLjQY>{{O5an=f!`B_Y}k9vaNL+zcmG@I8?OFmF7WmHZDc_LUX@3fNT!uXlU> zT|-GJpzseGOpi6PPHgsSzOOfu^_#5q8UgR}IBELDb%~Xb`UV_e{~x-(I;!gC`&tkc zltxOVOG)YOQc|V6L%O@AkrL@n>FzE;y1ToZOUFArexK0ade`!gDsPf&2O{-65%PrJ37h<uzZn=_$acM)akv-C^$WmN?Cyg{ zAgb1|ul6p2K4X08pd`z~L0Hvny2#ATbH273xaAd2m4|CpYjgKwm`vs*mQ1#`XvJUl zUc-N}pr83qAv*2>0`~TU1ljwI&;%iR;Bk0-h_-V5BXG(qDrkK8kU^hBH{kge`cdGn@;LW;$;2ldsj#+T*O|Q#uLw)#(Ck zygeV;;3OL1gD=(b@E2kRHv-s-5oPnt`{P=*puTSjeHWJJ`L0hmRcRMXxi(lRRh ztJ5TI3Bwqp;oUhW8~nPEn{t-B*w2GD7{dS>UQcG$LK1H`Xy|(LpuiEsA2X)pz+l?i}lV zwHlY&>o+bn^i7hmLpSWUAH(pCFC}l3*UV-N_5#H&Etf9H&fdBX>o8976A?v&@{Lc;#M^CTzCGM(tgzvVwK7Dn7LnEE%KJ)?ywI&3MkOT4M zo3qVFzy>eO7w{KG{M<8A_K{6vF;{LIbq;i(#X%(u>1Gl9vJ6?s*2FipwQ89DOQ|VN zs>r}XrwBi%>T?U(~MI z3qRWGuL`+Ss8g7ffBjK`C>W37CbNWkZvAL?-gP)ir(%E73uq|lXdCppLkm=OgAW5L z)fyg^tcMm(SC)3_L{|rge_7|eWQXr(Q}A_!WGF^-@o_z55_s9TG(5koKwA2XkG>}& zdB37*7#MHVhmnvnJjf?j05QaY-bPPYl#qBymw-lo~Kj1pr#8fWK#$M*cj zM5&>1m5TB@37cNw6qk*taBf~kt!f=FM!N<7y1olt1aKP6fxf znMPnZ`PNtjl2Z9c6zG=7;Yj1@%qzP%&2lpwi!%GfnR{j5o_#rf@P&Y0o@y@txNp8P zcJqERd^BCFqE|m;sruMJIbf}ibaOb9u0=z6c5mo_rnhv^KBKt;=o^8n%U9nVS!p`M zURgfFrIOVb!xg5RLr2wY-^GQk!HTA?!L2Z!dt>#zjqd3rIxf8JwUYR$V0F zd+Uo$a`XXigVB$P#sj=-CKFl4CX>jI+!F3Wo-*IC+lLTexjw3>AW3|ky6;yu{9A|2jyR!rTaEhaqu5XHSE*pdn$)f0; zk%T>dxg004YyFX`rTFX?{Ewuk3ki+{PQ0VHf@%xdcU`@-c^lm^?e;tH!xKX|iM%aW zteuqHSoOXHn5g0~MV={@h4!{@Uqm?^GhMk&S3I@8uoHJ8OinS`-K&#!NUSv<^edSr z1#=^6kc`cxWEsWR^5&B-4u^ z3#5U=2c8dZ9=Fi;%-5f4g*!>qDjU>PlpAi=yE{QDs1$AHb7pI;9Tv_l@Xu1s3MzPJ zB1r=yJ!p%{5-)(4kX@#I-hvX3%r4@tleguXdDOQSzrLihPs&NBcCWk;ylCD1;6gf2g@5KN=agldX>jtBV|g%QeSYOpfy=Cg<3*6ifuQDCBo*}b zVRQc5f_U~Y3>ZoKqZ^&2cl>n*CW4|^b!afWdLhI$^?z>oO#}etNt777d zWq;b@0I~Nbr>JrrPx*ZKqF0xbK?pg?D%c-qvPy*wSNMy4;{m*DRc7vOOS{qV)4ANj z06iWo+KFZ1FQ2PmLi7}hOy>1q4D2UwPh>FRB$jLDY|_&sQ8tWLM_E%3)Le)BZi`|` z1GZ85nJ;yxMhfn}=1r|G8Bgn9#k1@wxhK)WD!AMwQs^G9ONWh;Q3G{p!5*-P;8MW{ z;?5UfxZ711cJYfF*n9os!eG$tgU`NJZN+I@y-pWhy7gqVGsA+CIL+v%Wrv&toeV4%s!TGS$MdCKmLyf_b{9iC+#tRg%b6%K168FL)k1AwV zyG2iDhE-Z(yaZV!N?L2vuIlmOuS4&alirNPX6TMN;)EdPCV0Nk0u71U#vM>FRM^1s6dYS$v-9=Xt7E(X*YiQ5MNY38T^ z+Vt3PgBIU-H`EU31zxJ6oi>^BUXNw5a%@;)P1JWNt>JX$8Ya#xSwHSz2&&xW9S5ZI zoW+4Vx3oo29xjiQu%d%w;nZ@Uu7RO^Bd$)%r{sCxxG0^#o@WodCX4#1)935l8ubL+ zP8sW7y31OAaV+|D&Gpdag}N9gj*BWLr`huKyvu0!&3|HD8mMiY(o|6@{vygygLwTM zTlow;*PnBS1}AV6XB@AN-XQBdoWx^jjymq(SSsdkb83TE_0fFA=u_9Ip=EqYPicM; z=m1OC#Ab}GJ9%C<7KnI-+*)Ei=d8fQKm4In+lL(q2zF<3ps8OIDL<^k@Bo z;KDFd3F|xwy@DMsG7N~KdT|W={f7zco3*hpTvL6_?q9%R*e25YyB~x*&Ub`Ji3_!Yl%{8d#b8q z<5?rMwS)Qc3r(Iq>^2{7*2jD(Ef|7UUZJd(Ti+@$cV7afvbEa+6vUEwRupf0eEf!p z_`MtA2zgyXh!y@Ns)FZh{*PZ&O9X$gZGZYS>{vTK)6v7W(vKmX)n@gORx|!gpv-9y zN&Z_mW&puhr_fXx}n&;9T{C&QM^RJe#UmF8xJ@y+XOjFS`qCF&g*eCE|%HkqcVr_ ziH><|T3142WZ%?;JKm3J*MG!WNymmgb<=(A;3z?Gi5Sl|JhCaOIP8VXi-XMk074K+ zHAL(TUB^sVvfR-0#@UOUm-{5>sovYO$IFZQg*<&osntO#a2}|w&6@H(Jar@+Y_9QR zn)PlE@9T;do5u}}!!Z@wSu6!C{G=MVb1QymFE-RlGw^_ZJ09_j+oweNvoAx>c>P8Q z<&i35&tQKuEL~#r_%Orhc)j2CA)SgDr@T4Rg4%0swG|DVeoCXN{V>FS%r?~@?{74y z2AGgWl29-n`b1AH1aW`n+<4ZE#i?bnuZ_wbkD2)4fU1(#*gWxk!PSR_D>3{OTfe)* zrdf=Q)9iq%R0SG@mD?&B5KoqsXpjF>6MRHV7BT*artk7s?t}}+YwxZA7c%-Nj(Ic0 znj=LzSudZt<+<@#jZKMpHwNzBrB*oEQ2J82=Cxl6oLM)EPl!3De67yAGj_R!{70p& zdp51kLCQ6P0N&ANvB|WA@APf*jxI7f^V&YR-oaL#3yS;l^Fb+^u%^P@bx>S-e|qQ8 zRTl}DPnpz6{`c)>XF}80b%s~bF{_$b0rSPKTtTb;Cf}bB@MG~l@Luiws<@Xc^Fc39 zky2VNZ^Y$*eQ)vK^WDU-)M>7tFo{*~jgWzjBkCP;33GJVchffj6+OsPcHl_1SI($BBVo`d^mp%F5R2*6!m@>mCnB zwQa7q3pZ1EP0l*d9}x)ehA`-fg0lR?ReoAP@54HR?p7*Vc%m@>vJ4v1^Pz4PQT#JO=y8#-ZMeB0H zxXj)=NC;$zpP{>ko1B-F%r947Hmj12=}9uYym7?h>|F5nKY+GH%}h6Z(xwNihb*&r z6E*U9zwgT?|Bt8b#o72;a7!orJ;!>ii9h^|un_lq7wUZm(2(VqE%y#T)mEOu)FLJ3 zu#)?Y`|BPYJVY}ae{_S67wVx!(ve~EBw0_p}I(EMvD0G=T?@y#Dz%G5<;V#Z@f)XV$&T(zaUbkd9H(Iw!Z3 z(1~5qoug%^-WvKvY3uI)xgr{T;_Qvf0Cd9v~qwi6>UOxA5 zo7w-oDGxz%WT0*Zv!RC^kJfrAH8nN;)yOITe5W2O{O)+govWh9oc9-C(-RM&K#a~h zhhyiLL9=_u>;2te<{c3V3QBSJ&k;JwdMHcair& z!Y|kyko4k!ZHF#50kTQ0>DdYsWyKon?AnQYg3}?n0eEa0)&lnU^@2xLwt^Xu99v!h zqsxdJ>+N-&<`)!Fkg{}{6+zS1pqo%^n2?9p;*ZM_Gv=kPnJsJw%nUx zLw{rhgt1`Yy>%u05`NnxJU0DLpoL#)euDo^iu*!vtv_jBl0oMuG6K(oK?^W|@2HPs z|0huJ&vxuSJ>oo_&>qT>r36|y|GnGY%6XZUouQ0C;8TVF5tvzQ&ehlUrgpdbB6Xi1 zF0bx4-bI3`oF7~-H_1D}V=ZHBV7@Ll0Yv}Nn6lYssFPoFRxQxw>~&@nz=H7_{6Ji- ziylab3c3wcgo9tc#-vdhu+K-102=vMU|dXOgUc0=dn)UIG4@k0?ZX;?R+(PA9iFQL zIIX|Zo*u*Huzh=Xdm}p_q~`URR|yMdMPA)SmO>^gS(mu&Az9zk_5u~um_dT_@&1*PV7I=qd*S62Qn0Iqqn|XU5=1ks=3c0u5y(kh1@rDmSuG z2h*u_z+fxK9#@Y?oPL@Iv8r|U#cQ9}-_+?7wgVSu*=fIuN7{sI5r)~O!a)(CSe?T< z4XE1qc7KMQ2XHF*;EWd{*^P@+VT8z}upTtw>d#_se=%9sB@*76B zSXA681Dg8T`WRvnL`caGM02oD;sS~$`l4v@G5C}X)L;wfgvMpCwE{}{FuT0|jmv+x z_P~jP9vROi9nJfHGS@~cf~Hz(QIe8_FQiqiDPw*)7hQC4U|y;J%4a8vT3PN)K;?%% z2qC8Zl3WXiqqTNs625PqAd?ZcYi)41wG#;iybZzQ;wz$ zM7KOx;5#ek1#Js~dCuKeNyqR)1wRvrC7}P{((jME4S5q*@%RmD5!C&s3AKhHkRzg@ z;(yYF_Pll8Zf|DO)Exopjq${rpoD;B&>IoXZnIT2tT9A^Q}CczkC0z0_4W6ZM9@zo zu$)iycn8Ex$eX1fL_JVTIYhK%x%_zwu&HpGw^KgH!ZWg7TJEsV7N3Lpy5;ur2p-rK zpe+eO%6+05_82)&aWDECdPbsto~Q@&uJ@~E`F_nrNFQ~mFS`3%GP9MvwS`M+s=a;*JYiE;~na zuL?%`PYV6FDrE6q6=I)B6$Ut+yJ-%jrmP$jgu6{R4=)lgWKme^=bJ>H&rzQFC8u(u ze0Uxa+*O{UR_*Ec$e4ga6peD?!6uOq^6MdGf)p53(Wh{mTnGcnj+U&8T!vJ{{?vV_?woO%D!|Icja-&D{Yraz?!CiZ=Ijb$?|&bK7jMgLz2B`>IUWZC z4dMsNNFpx!l7Z^<#HX#*KN>NV)M7p3zre>Uo(qI6M`Si$+w_|$1bWSK*w}Uzzpt;D z$;-PQ?Xpg=W#>POiipmd7AaH;PG1nv-O8m3D#$4Ru|E-9<#s#P-6JV6IwcXqve%2szK2vBt zg@K>pl4wGw_wFidLq9Y9ScmJk)vHPbD$n}FJ?8PhuE0Of`L8Gbo)G3GrH%~Z-`^q! ztMfg5p{)!FxpYs8b^Ju29D|zLP`5p?<4}s5cP6s8$j-uJU)7FSW8xKSRn3-T_2eY$ z@iDX@jp~{jIe|c7d)dM28DdFYgYxMjUqDjchph(nO6-WNtFK+0vFPQo3p5_w}A{m}G zh~yiwzU0c4U->G^Xlp3Q8Y~f$x4t`9#*^=Nx#j{;B!@ulNv6iN^b!sq_+JDpU3?T59ZbE)OW>}um8LM-!9aUfNH3w zZdZlzKBJX^hnk;rSr{y+$D1j)RfP#k@}mffjV42@Hipw;G2;)vljN0@%Y6OC;{zW* zc6tI^{*NDd=k_nJ7E~wL*a*#6N^80{_tz*1AyzQKj)-%!P6RhQ*l($(t}!Yh_%9s~ z*%%!!n8F8Qtx2$+B;tG5gdp)PTND!S&F><645dLtS;r4XRdw1EL`J%FL(k)&1VmaU z$H$*rF`JK+n%BHiakSZj*T=`7cwIb!A(wxF5F0^YD$n1&sGQF>3Lv1&%c-d1Qy+KGLAIo4$Upg5k++n% zUIKB`Oi)vVVUPEzRv)#IVb=Lfdb3qjh5t^?mh99 zlOal2E8zFAv>ad;7RCDqgpWD}#-$l|C*cSfIZb2)D9*pvFS z=P9QRmwbqT%|cMOf25XRI_Lm*bxL4(u}?s+TR1AYq zua^QwA|8I8!!ag+NVY*Bf+B0E3ht{^{J>If&xa-VF^3&EX|8vSxBGGCxyrP(g|c&< z-#d04;2^J;N~)WTDPC!}luN4q)KqXa6>f;%=DJ`sJl*_Wn!{|QsV1XS)1FW-k@#(H z)^VYwAc2gqB6W<6PK|i=eJ>Xsv09RJa;UVrKWAEf3unrGXbo)+*! zQ7%w^@%icA>@#`v;R;YO>h5O#v_+K7MSoRkXCq+y@#||I>T6VOVg{D+w-LL}AH7*Z zTh$#LnLk;+o)MgM>^34z!HTV;OBtXMw8sp8kK%JyT317>i7u**PG=XBq<@7-8k;E% zr!^OFV5qMzpL+X6w0bMkY^v;?y6x5oTpy;lYFfPhZ+8I!)HG^xt(S>I3Cmw!_vj{A zn9ZQXnjSJ>t!}$FHLR% z?Ea`(jiQ-KM1fYO@LjbM4^GBz8PS^B6kDXo%}ewa-b4|$6_G!y3Em4-fP7yZ>F)np z^9%xlVhQcBn{3+v{B&jipON-&%vxV}!a8abd8#|X)jsCV>gFm-W*7dxdVinkeE+`u z6K7f6AxIs^OjNAJ{5p?e0}kCsqjD}fXZISPu<(S%anl` zmam+DGc23L-&;m@?SzRZTF_SIG zQ3>ARM_WjtYG#J)$xJunCmg1!1{aQ;tOLY*WAY$J9hTq12QRb`h#$(&aU=hi47wx0 z^(1oPL>!`CyzFwr(HgSvZq)rZmL5)yj%ucu#!|oM&F`N=XH55| zKF2Mk_!Hv%C+EI@!HWlK5NFii@|8b?=*jV*h(B_XeQT7S#e)!f@ zW}X{53M>-R_}PcPKRyK%NZ7mefBn2!tl+`j-jqkyIhh|!|ewuu4chcTnuz5vLg)ufMU`#aUD%%K1*;hC1E?SLqq zybpkA{yGcV4m|q>sQVtLs9~WDqwSrYF96{n=H_k~$`5+>hh@(zTo1~t!n&c}pz>d= zF$J~KNjRh$TvwjU(y-QOycOfT|!B!&1GG+ z4J#o>dN63ETF5volkH4;?|geMQ=5VgEfVY@Qi~IY?S%KFJ=i0ymg8%PPt#p96h&T( zmW%eX8nf{Tn-D9$;g)c$rGD^{e>^7 zSmXv1H!$k3UyIS#(AWPyEe>XNc37Zi(pP-zCS0Wt85xlQ19^}EEW@Ldph#iuZjU%` z-iq+EuWxLrya?{uv(_M%IlpmrH&rX9q|h0u>cT%xoX2(?Z?oH`>O5zaNR*3D+QSMu)`TTb&0PL8$>4x6phlh}d|97=5_WAGbW$2e-0xxSo! zJlq&eV|6$piDfKSu_}mN4y0|!denM%z0RXhZAmKl20i72cng+a^i-M%5_R-r7?_1l z@+3iV@h>!(i$}mrK>(bLH%_O-q(r8WeEs%{S`+DXciI;$q=J)gfWm7d z)NpzfVY8Y|GOms%_|ESOW!H=+?tOSdDTs~$*d18daQU>Mp+VRpMIS|!v~RDU=kANV znuE}@+!E$V_}-#eCZnZrDel3Phd%JwsX{AYFvZpq7>B*#L}$CB&?_rA+a82tM5jPO zrBK9MsJwQ!UD(K9)y;Y#;bl=R0$3~zA&;~~Z?`*N>qPnQeU}cERu;ustm*aIB8@{D@Ch6}J?69~RhbDTz=1TkY(+gk-CD4OHz;i;u7QgCZcE zOG#SNCq_SRh-trJM5<{3#rzqp%(8sz#piv z?u%&!mzd6o*mwBjtXxkywu$gJJ`D2~HBP0)WOZqp_v zS0{ZBd+th5rsf+XlA2sXw!d#XI5}+xrL}QL3#x32^$5Ya4S_D}*t1;9tPo#3$G1*C zc&z3RhynuEHx^rcgS5D8!4U>V9thHEw_f%|%mxDw@bK`Inx50iO!>W~u)^F|Ih=}c z_^A>_qZ$Ct^HeI%VHtX{be_p{1%|GWs$Ua@T9X!0+ul^USP1p_668hhUP_)s3+zu7 zLF7irm~w_fhaFR0a4o=Z>kaQNw`o!28@L)D7DmND?f+-THaS*crycv zV=Q;FMwfCVJj<|@6dWWSeX+ewI*pflN(c{v{61D~G6@qJq_`v3}cs_D(Vnv3;MXeWKl@bSVAdhF92$)>Y4 z>^ts$AtjR$b)vMX8Jeh#vf?c$3Z+(t&WAOO{4e}|l6$7snVLmARKq5`7Nw%eb~zao zQQ`!r)=SXeZmXc}WGK2A4_mqCU=1B#gfJv}IfN>rx~;>EtgH%w6&ScGR8h=6?>3-N zlt}T6-t{6|SXo+%dlr;&*=#*;J3a;hgu%hTi}Dhcauh?Z*4AX#gWdJ|oT&Er;|gSIur7fov}8ne2u8v(B8)mlF2wbQ`t5 zr`#5ISIFtKQa#k(oX66t#K!OQPu<3C?k#R^7**!|B1b=1qi8=Tq8d>ZS*!5(50*w> zTd0C`ET4-;h?kLh0rXaty4I^PkD{W;c}df0m(mqn zcR6RZJId(rBc|Fl^8Wj5T747)Qj;>4LVfDl?^5_&XW$xEbDHYHI@)S%v!ymeGn1q9 z7jfd7Jp&YMq~TkC{VPC`Y+Q8dsSNqH1@!KlP>mC%NB$6`!hn)zrb_z_lLcpJ`hM)T z$vjWrUwLf7J7^#B%~3{&M%T0Dmf+oqxid*FYJW^8&FRQM=`u>o99xP#!vU{O*2_KR z2^M3&>;f;cgKek6%^DK_t*|hqRS;GZcreuO)fHLLMJ|Ng7Ms*t2j#<#3 zhrb#76rWM!h4H39_wyULhnm1)uh>E8fVqp5ithtikB|;7AaJu|%c2e*`uO`6+tcHu z7KW)0m3ny~Gt{MuO$9^#*(1MR6mUb^8h#F#35brgKRMZ%EG6<;iw0S>d}tG(sGi;w zV9LsUea-BqYZo@^`CTF8yP{5-sLZQE1{^wC%E6K@m)9}H>zaj2ZR}Mwk)QH*zUk;> z^(Ms|okwOP!ATH6XTjzZxd!|+G(}aG<)r=5`cY8GDtsaX6n3HGH$Q5}BFPd9NOakDosNSFOXoO0F#wbRB_d+;Sp~;8r z&#OB+tuSS6b+smN z4fO6)>!O@m8MioA|0%|Sk75Sy7v&s@aZ!%P+kfB!Ds1;W%S)qR!N2Q84PxjezUg9Z z5gdrEjV-Yem67peu9Z+c`fqik$~<6t_E)VSe-u`~{q_CrJtD}X9sCbv^M7BMC!hh8 zErI8O3iofn;I|u(_X2#A^6eKk=)bWt{JfAo?^Am?$J7qT9Q1%r?8kG;sykPOZ*MwJM`|7-R_%+ zj+7KD?~8I$V5C{`bxwf>Oknz}dWMHK^*|WdSRDtsygG6B z($4IzoT^&Bgj1li+MoX$(00MVO?$dnN9xz=po=fGR8UVaZQK<>`u13JIL(miIWg8* z@`g)m0Ht-x&48tuH|cI@MQRC?0m8!8z4avU|9|=nW#j(@eYjVp%8?5kS3;yEj!I7c=TA=X_Oz5 z)6%9X#q_UMSI~nI6MtN#Zx>z=16t=rt!DgRoyRKOFrX-cT6s?fonp4{B;MUA`j&U) zXkKD`4X)A=${dKEXHHGlCNr%eIA;8jM;hp~W4xroqVs(XOepn^-r2!nSv=MxGoND( z=^#D*&q9mLkm}fHwVq=-McU^g?#V_ZJEsY$CgD}a6$q(RL^M$))Qn~4B56OcGOd|u zWZr^zhR;S>e2a+S5mBp9)7?x^kJ}hM?17i+rABiS@?HUD0#C+f`L5m;bbMTThCr#T7B3e0E3( z>tIxe;Ve{#@R9*T_61`ZdtXG4I0vqWORMiI;k^TcSqxi5M91@)lM_ldgy8=}?T%AJ ziHL~kWV0~k$9(hu;8!l}>+oyK%E!Cc+0L&7!3hOZ7S3ZDZrv5@w*MeJ=6@NV;{^D< zF2m6ihVSJMC{y6UVBcs?d0Z7$8y7esf=wB8$EF#iW`~~pxN$w9VY(U6>#KB6NC-y4sWyJ+L9>&fN+VQ9=<1^r#<_iJWlvxs_!&Sp^)+he(Gagg>{u3=9+t3kwMunG&v2S6h{0lq_e@ zFU4im7_5Dnaelp?lq=ms0IZuEo<_+ z$bLK=g0YK+ge$nze8X!>Ln7l@TFF8p&i9Fmk?}dGAltm)&_svxCTa@GjfgpzWc>#) zLmjtBS{iSr3~}JT6M#nF@w}nba(lwKxOE8@;?pFF(DHz+gt%}MH5DC4AQE&m0baP$ zVGxD?v={tZfQT?&6Ucr^OV6t`WMwSEwO`kWiZsm5HxXly6;&0vJUfNQP8V!@N!>HW z!J(K(ylc%`aklMUB*i1V@RQE`}<&_HstcIi17UT zRqw=9t}n)G9L_sWp@bzGRGF75_Zaz7PGrtZ;rxyH$CiWB20N|srYDPYMPZ|-s0AsD z&k7et@?vWCE+E@fTMqL>=&onn?w|WZMpie&!Z21rnO0e-0Fa!3oOb#@cYW43n7Yx% zPEe0OMuM1$gU#ZbPAb*ah83Iqan6zEFR~D573NfH_z(|Qdi>Zz0I%`PIA_%IQXIFU zDaDY9RmGXBEgAidwb$Iq)6-L>Hj|ShBViQh{f$RS%1&Dqk{~U#&&zB*!EqIjE+;me5_il8wabcUV zFGo^y?R~kSrckIvtBTS1>$18k&&Io3IsZa`(y`UFqeQ6>AbL`ET<>xTrDDE(;w>wpSaF~rnI5D=Z>GoU3a8D!NJ5fhIkv;uoV*peK z&Q9|W!Lt#`We!av%FhfKRKo6UZiWJ&cg`2F<=8(G)wfN0FyNr|zAqvEbH(pr)xZA~ zNdgmN8=9Vfgxml8%YRDtHeMk1YAZIo&TU zng9G)@WLAf5K@{t(Z8}&4XeLXoSONbDptXKg@BWvZ{xm%C&cDliE*K4Uj0vfVi4YN zZ1*+0?fXw%F>^f-Jvx65`~Y{kP|IEddx9mEOg||LC8gW2R$*!Q*U%TPPrb`~Ma2aH zhGRH$qIK1!PRK(31Q4|srLt;j4dwLN#%eS+*7Y+p&^HRb?;+{+-kWuS$5qkHmrQ*% z4doRd-zzlyAc({SN?So-2}q~a1`D))3K(k3@=v7NwO1SUDRj^qZ%%P8&-M#LfU0*~ z3-Mm~QM$lEvNNq6rXCykW#biuWhuU4eQYX2M2K*=XR}U!NXeV%=qPd9xj!?FCx{Rit-i%$7Q6;Is*KwA(iF0|1IE4LXWKJuKSp~_!T66x z{CcOec3?l>BYO08_2R6yNu%fA#qaxptQ$L2HGq^k((nu-m9Hox7QJ^qoS3_p1wO_P%e`dgJ#W1(ER zQ4O>Uo7?$zwjFCUxFbp-v6t*O%XaKif@pLo@uwl!!TI%$8so%B8q>2}C_s}T?Shhb z7J?UGQg7B;;DMyoZK8_YXylt+N8&&G`4;KUx)wWIlbkAN-$}2iFN!{9`!M7?5!;Gi zcHb?ER9sg^@XHRKizXR0nWY1qLL&Q_XPFd4P5Z7(A9iq99Esr)II(`g$p6dME&?JHxo-qy9tn-@vcrM+ia zRDq_0sgLeqPdqM11;+l~z7~He9=_|~-OOvNK)2!kn=m-D=pz!s`HHF3lZn~7d&>xq6P@8EQs=PL#rvj=VW9j(|v|;WM#kF~%G`H87 z;q3JDJKs1%v_C&M;=w{U$~eozfzW^~dw^shy4 z{;)GLqiDcxRauHt@Pj*h@P-nWPt`j9X(*Q)- z=aagE_2S2FeAy9&4+*Bt#Ypo4+l6b*eRF(Hg!=72hz=%;F(84pRpyJ(>~?#`hZMFJ zCIt~kzO_%1?Vj8{O(^*MS-`&?GweMT(5#F&UBlUg#6?f7>a5o9(%_1b^W|)L$fAtFD*nsw&|jAEW0!zyKo7$IF4m=UCI^ftxRGv zp2^e}Sv6*3)V*wG)NJoddaJKF|ILQE=CoYdr51Beg>ld+&uva)lE`R?D7C&boIa%9 zCTCA}CiGF)stE2ySXv+PXJpp3p<|WhzByQX!;Oqf!yB!m`as1i-&@zm!H$yaogrkS zrUs7yc(b{^#JwY{E;LK2udiQbI;-?-`v>HQ<-d`iz+>pXnsn4N{>8t&=YwfO+gXW9 zBDP(2r2gpmFAvr2B778J^FKx`q}=I%*Ts~}N-{B7p$A@YB<$eP(x)xFk&#r}FI|`x z+104zvs+`sx@wiyOrva#ds68M!SA(J*Uce?`NtWJL(zVPrlQV}`qHSUNQY0h5b?AI zXNr}Ws80eWD78jXFp~t12H)FP>_5Qd;ZYrL?v;2}WC{hLo{C)I=X3@4%3-dz-oERD z&F(i&@+{BCzQby9;5VpyJ1Y2WvCMu6XW$V?i&FQsLQqe0@bBB)+(bs9Xv78N5wJbu zGdF)@NWpgw+8ORKQt?s1S^0u#29I!9OuZ^mL!ThN^aHqiY*(PD&icwyt&L`M;~GqG zk{EwSCU^9?0wp8TPqbnYw~B{+He5y2tdE_f+7>-%pzIetG7oaLzD(u@YxW;Li>BKW z9!BOd;q=y>?q7(DV&AMwNGZ18_I=1cTV>1S%vzR^T|jc0P~|Saw$t2=#MJR6gK)xy z5%J7AFQ{MGj#pR?kz3IkCh*pumtXX;>8Hg&xX((dl0g(TA&Q3AY2VRo94AkQYp%U- zd&RBBA4MG!_V0HpG7MhVb4tBGF6et@W`VN49pa2(i}^_H?g>7#EZfZui+R2@Cd4;n zj41#4Iiwain0)nujV%W}L>sX$O6{l5@BEmi*ssnv_EVkl!vzGsRqi?CBDOV;%JSr* zBJ%Z=OLB3^r>VZ{Uy`8Z5gl=HhTRImG8ydY93I{}<7-GmP{;BmURL*3Px^m_ePvYC zY1sEJpn|BBba#VDgGdX~-Qm#PHBzF8bS&N7-5nw!-Q7cXIkfQHthtBlz-23Lih8{ zIp9mr8peNZ!DcHM>XPirF5k89#!6v<=$p%W*pO6N(Tk=TvlnUs8xtp&_B!|={N znOASEjX9%_Ru+mMg?e*{hwPVtm1j;5h27wuBN`JIo(8M#I`t+Zf2=e~q3Wju^TSbP z#}+X_%8gnFhec&dtgNjYV?shaR+Ea_x&2=l`bTJK#fR6c{M?0tMUReQOGEd%BIXWm=-YGy&HrUv&urajSRq#wqZNGGt77Qcy zep5uMeQ4OVGgVPoZGjjzX}#iVn{u9t?2`K!MR3Fk#{Z&YFEj8EcyQn}x?OkJPcG+L4)FIEI91m!={?u-2dUsyak=KddNbIZr;iRR_}UhDe!VHdt0e4mQ!@ps5%oe{CRe6 zZF+R$DIET^USx=B<&+IdGB!H7Fo6;Bv#@>Y^si;s%gcSn_drDkSnhxdkFblfQ z@RUHf9r8U4f%$ckjb0W~SLKmaV@w0?*O%0>(p(tA3Sty*9QX&ZqnQ93i^c$Z3BT8we-f0M&*FJnty>ylan#>!U&`T#uGlcJcZuu;7x$I9V4d~)+5C7joc8RkAf`#$VA|KuF7zZ` zu%5)om_UZ7gz-CXTUH{hdO0wqke=JN;Io^&+aArHU4^$?ABcW>7>l$737xC38lT#U?)i!C;>j!38ax zC#!ZMpQY*=MfKuP&F5Z`$!~=m%;nVwAT!crSUG6b$j$9!reIyRJn|5*w-L|64WHDqU)5dgO zqmt7?_4spZBdJCG=1*>30P;KT)}!AKigh(8{&-UWZv4z5!gYjkx;@#fz}hH6n27zI zamV3;F{}riOmWdV@kR@@DeWZ^BtkZm*<~mcDuK8K7%XXB*0q%D7i?L{0)@2eCB9^* zC!>QZV(R#!dfPaTs-=rTJd7k|6g&RwP`bt9v6|a(yvnoQOqKShdn7-?A0NJ`{_d_j zdJI?r@$TSiHT`x$H`o2pu8`>5+{dg(zzzrj$PkW5QS3=C4p!JqTboewYlk&tt*W{o z1s-50C;u{zA$$h9pSnP))k>BZ5jrXg%7{p5R%hkpG;+_#SGl0rkSO)tIr*v>n9^Kx zueM9YWBIc6VW>yz>nC@_(-q^Ml89)vP4x-fCHwn+nWiiOEwoYHC2_TwI;Bx>b>5*| z+FQh|zp++Lhvcai7LGzcojMA2AC(Ja`Thk%h_B$ z($9E{EQ9j!PrId<8wdu({W;GaxKFI@UDWLV>O^em*|miY_Zh-?B9JM`!8Ju_!%D|DK&=0rEA^|UnVg%Ih^_Ag5@3@ zG(*XtKh1Om%7&?Np7^Pnsp9-Yj0kmNpnp|>eMy?~3MNUDBAI_?3qS<66$fTmQZ&$0{iT#;+N_pSU`scB-b`+SP}?IIP3L>X84 zUUCS$0C=j81*E;-T8L(}VPuY6RNrl9Zg=!Fw5-r;o2>>t7?tP^SPi$Y#DqEXQPQw> zDcV~P^mU%rjxd%|TCBgUhD=*1N4Pae-EBzJJjPc@>Uksan_ka^O~gh4(sbJq_!{BR z+nY=OfPk+6>>ykG@CF(2I8L|KOF(I&VSU1iQZL7s;f0LY&w9tr9ZFi-?(dVE5;jlU zdWlWTT;!=n*()((qkKTx9aFh!zP_{i53AKLAje?b+9;FR5vx>t#z}hcjaG@Yfoq;d zrS~3RkoU9BWfhf|E!y5n?(GjR)ac(jCQd|<()72Yj+WnjkWjtwp-Z~);H!YK=9#hx zL)$i>-=(1Y5)Zde0Qx(5c_NeY6HcqE-W&81!>;q=qQ~41PqU+&poZ40pmr<8{dIn_ zA@i#l_6Dul{1=|g8FuEf26)m*8Uc?O1>5mrvYR{yT2cQR95}backWwdTH#y!Qc$5` zW|nt*%?D}st>7>v{Jq}Q(I6A?k$x;eJ?QRVJ`69srA62)kx+-6Fs}wahZx)c@NcHE zVWa(pE|L*$Bgw`EXCAg>b6>LgOPV3Hwwx2hcBXV1N*5KC&dtt5-*U?Yumv=6H^HZ! zAE7BCoM0x$pdIg6UT()CLwBFysIc-j!Jjc_-77GUpC) zWTOIW!%R`otJxZE)rf%#u^WL_2(bm@NFfhuJda+`l9D{EsjKK3>lW?lhmKO_;>*Pu zZTD5brpu+KxX7IeSBwQ0!Lu@PbxdxRCY-00%5awM0`<~RpeWd#`W)QiG45w^FK@Ff zZT17IC{5RUSPXX1c>3y-csK#KO;RW&<7Z3>H4*H(e76oie9xY0s8&g;DxqD^?v1>6 zlPpVh&qHlb6)QFPXmbmfesq=kb(H4xw*|y98{4c<>Rrvw(MtH&T5ibUF>210usrM7 z_5kTZ0N?AE-O}XfGSMtFZ{Vn-Y^J21ccjUyrLT-yJq~F6X-gqzCXw|rH*aDQww1K9 z=fP@hpGv7(Wcn#}t@_3aM}+nkHy78VbT{a{$V!EpW;=$xMQlrZ)qZ310f5eK?=3)M z;+`Ev`lw+w`#(0k-Uy%wlP%Rw%My|&-e4QQ-H}K`9144>$~MaVv!y_cEgHUrpln&) zvlLf8+sM5(Fg5ai(nFU*P$}+CfjmC>b~=rlj>A&xL$Yy@AC4yao~KH5ulLuadz z(JslorPfxjWF0+LT>AqHcFjb$KYD3ICSB}t@43ZqPbT!u^+b2Xhq?^ue!*@*lopE>_f?H$TxpLQ{WHxn+_DskV8*{~i?bt6gI9N<}T>#1%c%+V+ zJK9evAVBQkAK<^A$E8q6*C!{}-g&H}aK z$L{bPA4o5+=-n3CVp)ZvuI3()2!D1<7)sdbfojXF803cO*7anijM zXc?FbkfqGqzo_rRs8e!?upt$vjX>&)&BoD9<%57kHR&M!It=?#m+6np zk1spslKxZ586DCVEO1&z?tyAiKh;s|D*q+Yb7p;9`jAqUOG*dr_rLk)ECvhXzu%|` zAq^3p#o3ecMRtP?;=^>4XaeIs`cnMQ(|zsTUH?T;{;%KB5p9Htxn!J-PZ1Lr!uWSx zTlc7y{F|+O_x^P*NJ%UMUHEi`G3v)ppQNY4t4rw-KxoUoWnoR`ckKV)+)!N&@?Oxh zE?8!vLTAs@NE_%3O=K>*C06jB@86d>jSA^spTfjH%#2fYP%|?VU|i2*-!sU#xQ-AK*``0DDL2_DE$t-KHJYJ=eA)YHK{<~c0XKfRyUHZ!CM2o9gs4U z_Rdd$BD;GY=EuPTA){ImoulBJZ}Uk+WZYAAO|Z@Rq&=mucp?X+lZ85+!mVn;Q~40& z?iqa?g4pcWv71Y6O7ebBe-F$bkOHZWwo~eN1X~@Co%($EURy;(OKV7y*Z8Js{PLeK zpZu=`hWP(ao%lxmmpbwPe^4iyRne#zl*XG57=qow_=XI)tTU3-QXtobn4FwE=Y}yt zQc7ynkQJCfz}(ANOAdI;Ylr=%Ni0E^Jv`9$nEcXp4hRJI!0Q+UrF4L*L&XiRtaRkt zyTv(F({V>@#y+{XUq@V*L}q8$J6)hQK+!R|%k>?NB)c5-&PKF@`&4QyOK2f#wfjiE zHdOMJQ<>0A^q}NZexFrRdFIoy^-J!u{z!v=x<&sUHNbO#`4aP3d+YJ^+>D`7;@1bg zeF=(Z)-An!6m$O^ByF5Bzd3|lD+3t=0}8DgD->5(SJcPyfvyriMUxEUm#bb)Lb7E7Cv!Wc?g0b;Lncx#bYKjEfP7UR&tlH#t< z9pa5;BCckZIMQp*UDR=R7(Gv2y=D})>%ATI;>VVzPBlf}x9D)~pE-$&`+hOvlZNEK zA3E^#O$WB^l(mM(M2D6*^JTP1=xRHoJ}&1H?Fs#LQ}jj(-K6LuC*ERc$)%!ziNI?34LAZ`Hwd|Hni0dIR3kp_Iv~#z$!5o0IIDZNkvHnDLiUdFyLyDx*6& z??E8aHxM{Ork6mmcHdO9HJtt_|CKNlX(*0O^b0@w&@3ptf`F_c(?Yxv&?mQ*>7UKhZ?v!A&y@9&2Ii6sPdkTxs; z5rtEd8e|mo_6cyur?S=V?OFNf9+bA;7R)?mh0Foh!B`y#mFfoVONgYTq)$MhjqAMq z7naBxm^jl4YI}RT-D(Io3_hhV0p>DUYifwCZI}~vhF0Z8@*V7=Domjmipt?--Bism zOUUK1$TUv;N=(2q7U|}m7=ew2k(b`_PaTQxf0tkX;S0 zfd6p3Zr??>|kplO@7?(90jnnc(h+gmAV_C z0LS+{(GXJbpGgeuH2ArNrpBG6%c-MS`P10S)JBiMkN{fxIISe{R^#yI$}0 z<}+@1i>}3_ieS+Xv9_ZTnh0L?g(-GHR-v`g&W2EJAy1@GFOo%FR_j5#tL{U)vs_Y@ zrN7NYSKauAa>x8NjA!~=JAXba7 z$AWj4Xlf-o0U+h5ZEc0&W4eDT1(z3SxeZr90yVlt(GgOq)Sl9GpTYQ!4~DHk9JO58 zL_eT2h~wJ@CB|Nz`bb-#^f>;6njB^a+-5I;PKntpFmJBT-Vo#lW6sq(=8`CjX~%y9 zMoU?W!m84I-pi8U&W(ewnNb(?*=R__l z!?whdpAoUE2@XBgr{g&XTq!Xu^I$cG!mhU`l85tJ`eMP6G@Xn;=6+SA6?>(tkkY2_;eI=p&2?{HC`esBh;o|4c6)( z5fa>P8XM8lY6mAcZT*qZA|MXkt`XUqvrRBKr=hpMY&*?do@qe@l*y$fK5Y2ASs^x!+{Qql~aFR+%&Gk zEkx(G5m44Hg}7a@{?b*p>xNM3r2yP! z%K_@Ou8HHQcyl5+)F9+3R?0$$KxoW)u=f-McrSD9<}$( zb?4dGpINz5c8saWcujwo@|P$&G2rB$ag*<|y_{h>-7^^5#JMZ*PBP~?qt5#xGF3WT zRiB^S&!*jJEBEZRe{h{f9evos+OV{JJY~x@0j5&=U|N&LyOVR;)(20B(>F--ZgEup zHe3~8HW@cZNaL8JLF-F1pLtwQ8e=4&V57OuY7 zYHr1e^|-u-qQ~pk9mo>&p`%cS*JPX5)X5A0;hi4t@DUOx^IXdC3_V61@*OSc`uQic z*TdupU16kQK)YmiJfxv-Z+c9DT`C3b)Rpm-z<9py>|PE$r#qFtlw~HMk~R12$MfSd z=;;PcsR~LY8AS#&6CK_6aao|eBTL7WvY-ejSRo)HCMK6ihz=Pnf`c=i9@KevQne>c z^{5y$yA=l7F+dPKJUyMuM_dEnd#%-hL1-WmTQUeB%mx*4Zd^hB%r_w6FPmF$?7@yG zk}EwsHwrCz`ctvtW&r$>c|36})JAi7Zo=kW)O+gZc?1b!@cWYO@9(E->4iAT`Wov^ zN)rLA$sw!&srw<{lMnR@mgAK!gIGSM48kWU$~@?&?(8}%bxap_VAXC?#Dda zNtx5V(VNS^w%**zYA4mOvBABC>$uTAl&5EHNORR2)7UYD#(@#>ZAJD(T9YDsOBv)vYS){id3074zu28Yd!PEMpM=cXjP&iDR8h_Xs8Bbe8Nc?mi_R&SY4!x zUuS3MHXmlCN4;Ph6$7&2qqFKsc?gun>lUQT+{boQmoap1NGBPi7?Uqa z9OLBv28@87OcSAA;ZFIkd^hcuaBPuf2)|2>{lZ(M%Vzbuv@rA!@OdjPCsrcz?&JRe DWudj| literal 0 HcmV?d00001 diff --git a/cloud-service-providers/azure/azureml/python_sdk/nim-azureml-compute.ipynb b/cloud-service-providers/azure/azureml/python_sdk/nim-azureml-compute.ipynb new file mode 100644 index 0000000..ee9c2e8 --- /dev/null +++ b/cloud-service-providers/azure/azureml/python_sdk/nim-azureml-compute.ipynb @@ -0,0 +1,309 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 1, + "id": "be9cbb03-afe2-4c0a-96c2-bcfa2dfb7e65", + "metadata": { + "tags": [] + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Thu Jul 11 21:57:03 2024 \n", + "+---------------------------------------------------------------------------------------+\n", + "| NVIDIA-SMI 535.171.04 Driver Version: 535.171.04 CUDA Version: 12.2 |\n", + "|-----------------------------------------+----------------------+----------------------+\n", + "| GPU Name Persistence-M | Bus-Id Disp.A | Volatile Uncorr. ECC |\n", + "| Fan Temp Perf Pwr:Usage/Cap | Memory-Usage | GPU-Util Compute M. |\n", + "| | | MIG M. |\n", + "|=========================================+======================+======================|\n", + "| 0 NVIDIA A100 80GB PCIe On | 00000001:00:00.0 Off | 0 |\n", + "| N/A 32C P0 41W / 300W | 0MiB / 81920MiB | 0% Default |\n", + "| | | Disabled |\n", + "+-----------------------------------------+----------------------+----------------------+\n", + " \n", + "+---------------------------------------------------------------------------------------+\n", + "| Processes: |\n", + "| GPU GI CI PID Type Process name GPU Memory |\n", + "| ID ID Usage |\n", + "|=======================================================================================|\n", + "| No running processes found |\n", + "+---------------------------------------------------------------------------------------+\n" + ] + } + ], + "source": [ + "!nvidia-smi" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "id": "247b5c45-c8f3-4cb4-8eea-823a04d3c3ea", + "metadata": { + "tags": [] + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "NGC API Key: ········\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Login Succeeded\n", + "\n", + "WARNING! Your password will be stored unencrypted in /home/azureuser/.docker/config.json.\n", + "Configure a credential helper to remove this warning. See\n", + "https://docs.docker.com/engine/reference/commandline/login/#credentials-store\n", + "\n", + "\n" + ] + } + ], + "source": [ + "import getpass\n", + "import subprocess\n", + "import os\n", + "\n", + "# Prompt for NGC API key\n", + "ngc_api_key = getpass.getpass(\"NGC API Key: \")\n", + "\n", + "# Log in to the Docker registry\n", + "login_command = f\"echo {ngc_api_key} | docker login nvcr.io -u '$oauthtoken' --password-stdin\"\n", + "login_result = subprocess.run(login_command, shell=True, capture_output=True, text=True)\n", + "print(login_result.stdout)\n", + "print(login_result.stderr)\n", + "\n", + "# Check if login was successful\n", + "if login_result.returncode != 0:\n", + " raise Exception(\"Docker login failed\")\n", + "\n" + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "id": "3990ed25-a430-40b1-bd3b-d0e6c4532709", + "metadata": { + "tags": [] + }, + "outputs": [], + "source": [ + "# Set environment variables\n", + "os.environ[\"CONTAINER_NAME\"] = \"llama3-8b-instruct\"\n", + "os.environ[\"IMG_NAME\"] = f\"nvcr.io/nim/meta/{os.environ['CONTAINER_NAME']}:1.0.0\"\n", + "os.environ[\"NGC_API_KEY\"]=\"\"\n", + "os.environ[\"LOCAL_NIM_CACHE\"] = \"/mnt/batch/tasks/shared/LS_root/mounts/clusters/mayani-gpu-ci/code/.cache/nim\"\n", + "\n", + "# Create the cache directory\n", + "os.makedirs(os.environ[\"LOCAL_NIM_CACHE\"], exist_ok=True)\n", + "\n", + "# Define the docker run command without -it and with -d\n", + "docker_command = [\n", + " \"docker\", \"run\", \"-d\", \"--rm\",\n", + " f\"--name={os.environ['CONTAINER_NAME']}\",\n", + " \"--gpus\", \"all\",\n", + " \"-e\", f\"{os.environ['NGC_API_KEY']}\",\n", + " \"-v\", f\"{os.environ['LOCAL_NIM_CACHE']}:/opt/nim/.cache\",\n", + " \"-u\", str(os.getuid()),\n", + " \"-p\", \"8000:8000\",\n", + " os.environ[\"IMG_NAME\"]\n", + "]\n", + "\n", + "# Execute the docker run command\n", + "result = subprocess.run(docker_command, capture_output=True, text=True)\n" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "id": "da55dd96-0d73-4039-a561-aa40f10fcaef", + "metadata": { + "tags": [] + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "stdout: 9a7d3f7cc0fceeb3a6dc5a80dad6e859c8bef94f9963f2e251f374102601d436\n", + "\n", + "stderr: \n", + "Container started successfully with ID: 9a7d3f7cc0fceeb3a6dc5a80dad6e859c8bef94f9963f2e251f374102601d436\n", + "Container logs:\n", + "\n", + "===========================================\n", + "== NVIDIA Inference Microservice LLM NIM ==\n", + "===========================================\n", + "\n", + "NVIDIA Inference Microservice LLM NIM Version 1.0.0\n", + "Model: nim/meta/llama3-8b-instruct\n", + "\n", + "Container image Copyright (c) 2016-2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved.\n", + "\n", + "This NIM container is governed by the NVIDIA AI Product Agreement here:\n", + "https://www.nvidia.com/en-us/data-center/products/nvidia-ai-enterprise/eula/.\n", + "A copy of this license can be found under /opt/nim/LICENSE.\n", + "\n", + "The use of this model is governed by the AI Foundation Models Community License\n", + "here: https://docs.nvidia.com/ai-foundation-models-community-license.pdf.\n", + "\n", + "ADDITIONAL INFORMATION: Meta Llama 3 Community License, Built with Meta Llama 3. \n", + "A copy of the Llama 3 license can be found under /opt/nim/MODEL_LICENSE.\n", + "\n", + "\n" + ] + } + ], + "source": [ + "import subprocess\n", + "import os\n", + "import getpass\n", + "\n", + "# Prompt for NGC API key if not set\n", + "if \"NGC_API_KEY\" not in os.environ:\n", + " os.environ[\"NGC_API_KEY\"] = getpass.getpass(\"NGC API Key: \")\n", + "\n", + "# Set environment variables\n", + "container_name = \"llama3-8b-instruct\"\n", + "img_name = f\"nvcr.io/nim/meta/{container_name}:1.0.0\"\n", + "local_nim_cache = \"/mnt/batch/tasks/shared/LS_root/mounts/clusters/mayani-gpu-ci/code/.cache/nim\" # this should be the path where you want to store the cache\n", + "\n", + "# Create the cache directory\n", + "os.makedirs(local_nim_cache, exist_ok=True)\n", + "\n", + "# Define the docker run command without -it and with -d\n", + "docker_command = [\n", + " \"docker\", \"run\", \"-d\", \"--rm\",\n", + " f\"--name={container_name}\",\n", + " \"--gpus\", \"all\",\n", + " \"-e\", f\"NGC_API_KEY={os.environ['NGC_API_KEY']}\",\n", + " \"-v\", f\"{local_nim_cache}:/opt/nim/.cache\",\n", + " \"-u\", str(os.getuid()),\n", + " \"-p\", \"8000:8000\",\n", + " img_name\n", + "]\n", + "\n", + "# Execute the docker run command\n", + "result = subprocess.run(docker_command, capture_output=True, text=True)\n", + "print(\"stdout:\", result.stdout)\n", + "print(\"stderr:\", result.stderr)\n", + "\n", + "# Check if the container started successfully\n", + "if result.returncode == 0:\n", + " container_id = result.stdout.strip()\n", + " print(f\"Container started successfully with ID: {container_id}\")\n", + "\n", + " # Optionally, check the logs of the container\n", + " logs_command = [\"docker\", \"logs\", container_id]\n", + " logs_result = subprocess.run(logs_command, capture_output=True, text=True)\n", + " print(\"Container logs:\")\n", + " print(logs_result.stdout)\n", + " print(logs_result.stderr)\n", + "else:\n", + " print(\"Failed to start the container\")" + ] + }, + { + "cell_type": "code", + "execution_count": 24, + "id": "ed95bad4-d477-4c58-a0b8-fbf5732575eb", + "metadata": { + "tags": [] + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES\n", + "32fdd3fe65a4 localhost/c3:latest \"/usr/local/bin/ice\" About an hour ago Up About an hour c3-progenitor\n" + ] + } + ], + "source": [ + "!docker container ps -a" + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "id": "ee094db9-c986-4e84-a023-56782d6f8837", + "metadata": { + "tags": [] + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Status Code: 200\n", + "Response Body: {'id': 'cmpl-9f5372bd74444ce09a68b6335c6f9905', 'object': 'text_completion', 'created': 1720736060, 'model': 'meta/llama3-8b-instruct', 'choices': [{'index': 0, 'text': ', there was a lovely little girl name Sophie. She was eight years old and lived in a small town in the countryside. Sophie had a big heart and always tried to do the right thing, even if it meant going against the crowd.\\nOne day, Sophie discovered that her cat, Mr. Whiskers, was', 'logprobs': None, 'finish_reason': 'length', 'stop_reason': None}], 'usage': {'prompt_tokens': 5, 'total_tokens': 69, 'completion_tokens': 64}}\n" + ] + } + ], + "source": [ + "import requests\n", + "import json\n", + "\n", + "# Define the URL and headers\n", + "url = 'http://0.0.0.0:8000/v1/completions'\n", + "headers = {\n", + " 'accept': 'application/json',\n", + " 'Content-Type': 'application/json'\n", + "}\n", + "\n", + "# Define the payload\n", + "payload = {\n", + " \"model\": \"meta/llama3-8b-instruct\",\n", + " \"prompt\": \"Once upon a time\",\n", + " \"max_tokens\": 64\n", + "}\n", + "\n", + "# Make the POST request\n", + "response = requests.post(url, headers=headers, data=json.dumps(payload))\n", + "\n", + "# Print the response\n", + "print(\"Status Code:\", response.status_code)\n", + "print(\"Response Body:\", response.json())" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "b3437882-6834-4ffa-a959-8b1a4cbc4786", + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3.8 - AzureML", + "language": "python", + "name": "python38-azureml" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.9.19" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/cloud-service-providers/azure/azureml/python_sdk/provision-aml-compute.ipynb b/cloud-service-providers/azure/azureml/python_sdk/provision-aml-compute.ipynb new file mode 100644 index 0000000..d3f0ed1 --- /dev/null +++ b/cloud-service-providers/azure/azureml/python_sdk/provision-aml-compute.ipynb @@ -0,0 +1,206 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Install the dependencies" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Requirement already satisfied: azure-identity in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (1.16.0)\n", + "Requirement already satisfied: azure-mgmt-resource in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (22.0.0)\n", + "Requirement already satisfied: azure-core>=1.23.0 in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (from azure-identity) (1.30.2)\n", + "Requirement already satisfied: cryptography>=2.5 in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (from azure-identity) (42.0.8)\n", + "Requirement already satisfied: msal>=1.24.0 in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (from azure-identity) (1.28.0)\n", + "Requirement already satisfied: msal-extensions>=0.3.0 in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (from azure-identity) (1.1.0)\n", + "Requirement already satisfied: msrest>=0.7.1 in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (from azure-mgmt-resource) (0.7.1)\n", + "Requirement already satisfied: azure-common~=1.1 in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (from azure-mgmt-resource) (1.1.28)\n", + "Requirement already satisfied: azure-mgmt-core<2.0.0,>=1.3.2 in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (from azure-mgmt-resource) (1.4.0)\n", + "Requirement already satisfied: requests>=2.21.0 in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (from azure-core>=1.23.0->azure-identity) (2.32.3)\n", + "Requirement already satisfied: six>=1.11.0 in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (from azure-core>=1.23.0->azure-identity) (1.16.0)\n", + "Requirement already satisfied: typing-extensions>=4.6.0 in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (from azure-core>=1.23.0->azure-identity) (4.12.1)\n", + "Requirement already satisfied: cffi>=1.12 in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (from cryptography>=2.5->azure-identity) (1.16.0)\n", + "Requirement already satisfied: PyJWT<3,>=1.0.0 in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (from PyJWT[crypto]<3,>=1.0.0->msal>=1.24.0->azure-identity) (2.8.0)\n", + "Requirement already satisfied: packaging in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (from msal-extensions>=0.3.0->azure-identity) (24.0)\n", + "Requirement already satisfied: portalocker<3,>=1.0 in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (from msal-extensions>=0.3.0->azure-identity) (2.8.2)\n", + "Requirement already satisfied: certifi>=2017.4.17 in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (from msrest>=0.7.1->azure-mgmt-resource) (2024.6.2)\n", + "Requirement already satisfied: isodate>=0.6.0 in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (from msrest>=0.7.1->azure-mgmt-resource) (0.6.1)\n", + "Requirement already satisfied: requests-oauthlib>=0.5.0 in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (from msrest>=0.7.1->azure-mgmt-resource) (2.0.0)\n", + "Requirement already satisfied: pycparser in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (from cffi>=1.12->cryptography>=2.5->azure-identity) (2.22)\n", + "Requirement already satisfied: charset-normalizer<4,>=2 in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (from requests>=2.21.0->azure-core>=1.23.0->azure-identity) (3.3.2)\n", + "Requirement already satisfied: idna<4,>=2.5 in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (from requests>=2.21.0->azure-core>=1.23.0->azure-identity) (3.7)\n", + "Requirement already satisfied: urllib3<3,>=1.21.1 in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (from requests>=2.21.0->azure-core>=1.23.0->azure-identity) (2.2.1)\n", + "Requirement already satisfied: oauthlib>=3.0.0 in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (from requests-oauthlib>=0.5.0->msrest>=0.7.1->azure-mgmt-resource) (3.2.2)\n", + "\n", + "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m A new release of pip is available: \u001b[0m\u001b[31;49m24.0\u001b[0m\u001b[39;49m -> \u001b[0m\u001b[32;49m24.1.2\u001b[0m\n", + "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m To update, run: \u001b[0m\u001b[32;49mpip install --upgrade pip\u001b[0m\n", + "Requirement already satisfied: azure-ai-ml in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (1.16.1)\n", + "Requirement already satisfied: pyyaml>=5.1.0 in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (from azure-ai-ml) (6.0.1)\n", + "Requirement already satisfied: msrest>=0.6.18 in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (from azure-ai-ml) (0.7.1)\n", + "Requirement already satisfied: azure-core>=1.23.0 in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (from azure-ai-ml) (1.30.2)\n", + "Requirement already satisfied: azure-mgmt-core>=1.3.0 in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (from azure-ai-ml) (1.4.0)\n", + "Requirement already satisfied: marshmallow>=3.5 in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (from azure-ai-ml) (3.21.3)\n", + "Requirement already satisfied: jsonschema>=4.0.0 in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (from azure-ai-ml) (4.22.0)\n", + "Requirement already satisfied: tqdm in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (from azure-ai-ml) (4.66.4)\n", + "Requirement already satisfied: strictyaml in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (from azure-ai-ml) (1.7.3)\n", + "Requirement already satisfied: colorama in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (from azure-ai-ml) (0.4.6)\n", + "Requirement already satisfied: pyjwt in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (from azure-ai-ml) (2.8.0)\n", + "Requirement already satisfied: azure-storage-blob>=12.10.0 in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (from azure-ai-ml) (12.20.0)\n", + "Requirement already satisfied: azure-storage-file-share in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (from azure-ai-ml) (12.16.0)\n", + "Requirement already satisfied: azure-storage-file-datalake>=12.2.0 in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (from azure-ai-ml) (12.15.0)\n", + "Requirement already satisfied: pydash>=6.0.0 in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (from azure-ai-ml) (7.0.7)\n", + "Requirement already satisfied: isodate in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (from azure-ai-ml) (0.6.1)\n", + "Requirement already satisfied: azure-common>=1.1 in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (from azure-ai-ml) (1.1.28)\n", + "Requirement already satisfied: typing-extensions in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (from azure-ai-ml) (4.12.1)\n", + "Requirement already satisfied: opencensus-ext-azure in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (from azure-ai-ml) (1.1.13)\n", + "Requirement already satisfied: opencensus-ext-logging in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (from azure-ai-ml) (0.1.1)\n", + "Requirement already satisfied: requests>=2.21.0 in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (from azure-core>=1.23.0->azure-ai-ml) (2.32.3)\n", + "Requirement already satisfied: six>=1.11.0 in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (from azure-core>=1.23.0->azure-ai-ml) (1.16.0)\n", + "Requirement already satisfied: cryptography>=2.1.4 in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (from azure-storage-blob>=12.10.0->azure-ai-ml) (42.0.8)\n", + "Requirement already satisfied: attrs>=22.2.0 in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (from jsonschema>=4.0.0->azure-ai-ml) (23.2.0)\n", + "Requirement already satisfied: jsonschema-specifications>=2023.03.6 in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (from jsonschema>=4.0.0->azure-ai-ml) (2023.12.1)\n", + "Requirement already satisfied: referencing>=0.28.4 in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (from jsonschema>=4.0.0->azure-ai-ml) (0.35.1)\n", + "Requirement already satisfied: rpds-py>=0.7.1 in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (from jsonschema>=4.0.0->azure-ai-ml) (0.18.1)\n", + "Requirement already satisfied: packaging>=17.0 in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (from marshmallow>=3.5->azure-ai-ml) (24.0)\n", + "Requirement already satisfied: certifi>=2017.4.17 in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (from msrest>=0.6.18->azure-ai-ml) (2024.6.2)\n", + "Requirement already satisfied: requests-oauthlib>=0.5.0 in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (from msrest>=0.6.18->azure-ai-ml) (2.0.0)\n", + "Requirement already satisfied: azure-identity<2.0.0,>=1.5.0 in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (from opencensus-ext-azure->azure-ai-ml) (1.16.0)\n", + "Requirement already satisfied: opencensus<1.0.0,>=0.11.4 in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (from opencensus-ext-azure->azure-ai-ml) (0.11.4)\n", + "Requirement already satisfied: psutil>=5.6.3 in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (from opencensus-ext-azure->azure-ai-ml) (5.9.8)\n", + "Requirement already satisfied: python-dateutil>=2.6.0 in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (from strictyaml->azure-ai-ml) (2.9.0.post0)\n", + "Requirement already satisfied: msal>=1.24.0 in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (from azure-identity<2.0.0,>=1.5.0->opencensus-ext-azure->azure-ai-ml) (1.28.0)\n", + "Requirement already satisfied: msal-extensions>=0.3.0 in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (from azure-identity<2.0.0,>=1.5.0->opencensus-ext-azure->azure-ai-ml) (1.1.0)\n", + "Requirement already satisfied: cffi>=1.12 in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (from cryptography>=2.1.4->azure-storage-blob>=12.10.0->azure-ai-ml) (1.16.0)\n", + "Requirement already satisfied: opencensus-context>=0.1.3 in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (from opencensus<1.0.0,>=0.11.4->opencensus-ext-azure->azure-ai-ml) (0.1.3)\n", + "Requirement already satisfied: google-api-core<3.0.0,>=1.0.0 in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (from opencensus<1.0.0,>=0.11.4->opencensus-ext-azure->azure-ai-ml) (2.19.0)\n", + "Requirement already satisfied: charset-normalizer<4,>=2 in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (from requests>=2.21.0->azure-core>=1.23.0->azure-ai-ml) (3.3.2)\n", + "Requirement already satisfied: idna<4,>=2.5 in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (from requests>=2.21.0->azure-core>=1.23.0->azure-ai-ml) (3.7)\n", + "Requirement already satisfied: urllib3<3,>=1.21.1 in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (from requests>=2.21.0->azure-core>=1.23.0->azure-ai-ml) (2.2.1)\n", + "Requirement already satisfied: oauthlib>=3.0.0 in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (from requests-oauthlib>=0.5.0->msrest>=0.6.18->azure-ai-ml) (3.2.2)\n", + "Requirement already satisfied: pycparser in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (from cffi>=1.12->cryptography>=2.1.4->azure-storage-blob>=12.10.0->azure-ai-ml) (2.22)\n", + "Requirement already satisfied: googleapis-common-protos<2.0.dev0,>=1.56.2 in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (from google-api-core<3.0.0,>=1.0.0->opencensus<1.0.0,>=0.11.4->opencensus-ext-azure->azure-ai-ml) (1.63.1)\n", + "Requirement already satisfied: protobuf!=3.20.0,!=3.20.1,!=4.21.0,!=4.21.1,!=4.21.2,!=4.21.3,!=4.21.4,!=4.21.5,<5.0.0.dev0,>=3.19.5 in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (from google-api-core<3.0.0,>=1.0.0->opencensus<1.0.0,>=0.11.4->opencensus-ext-azure->azure-ai-ml) (4.25.3)\n", + "Requirement already satisfied: proto-plus<2.0.0dev,>=1.22.3 in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (from google-api-core<3.0.0,>=1.0.0->opencensus<1.0.0,>=0.11.4->opencensus-ext-azure->azure-ai-ml) (1.23.0)\n", + "Requirement already satisfied: google-auth<3.0.dev0,>=2.14.1 in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (from google-api-core<3.0.0,>=1.0.0->opencensus<1.0.0,>=0.11.4->opencensus-ext-azure->azure-ai-ml) (2.30.0)\n", + "Requirement already satisfied: portalocker<3,>=1.0 in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (from msal-extensions>=0.3.0->azure-identity<2.0.0,>=1.5.0->opencensus-ext-azure->azure-ai-ml) (2.8.2)\n", + "Requirement already satisfied: cachetools<6.0,>=2.0.0 in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (from google-auth<3.0.dev0,>=2.14.1->google-api-core<3.0.0,>=1.0.0->opencensus<1.0.0,>=0.11.4->opencensus-ext-azure->azure-ai-ml) (5.3.3)\n", + "Requirement already satisfied: pyasn1-modules>=0.2.1 in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (from google-auth<3.0.dev0,>=2.14.1->google-api-core<3.0.0,>=1.0.0->opencensus<1.0.0,>=0.11.4->opencensus-ext-azure->azure-ai-ml) (0.4.0)\n", + "Requirement already satisfied: rsa<5,>=3.1.4 in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (from google-auth<3.0.dev0,>=2.14.1->google-api-core<3.0.0,>=1.0.0->opencensus<1.0.0,>=0.11.4->opencensus-ext-azure->azure-ai-ml) (4.9)\n", + "Requirement already satisfied: pyasn1<0.7.0,>=0.4.6 in /Users/mayani/contoso-chat/.venv/lib/python3.11/site-packages (from pyasn1-modules>=0.2.1->google-auth<3.0.dev0,>=2.14.1->google-api-core<3.0.0,>=1.0.0->opencensus<1.0.0,>=0.11.4->opencensus-ext-azure->azure-ai-ml) (0.6.0)\n", + "\n", + "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m A new release of pip is available: \u001b[0m\u001b[31;49m24.0\u001b[0m\u001b[39;49m -> \u001b[0m\u001b[32;49m24.1.2\u001b[0m\n", + "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m To update, run: \u001b[0m\u001b[32;49mpip install --upgrade pip\u001b[0m\n" + ] + } + ], + "source": [ + "!pip install azure-identity azure-mgmt-resource\n", + "!pip install azure-ai-ml" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Setup authentication and create resource" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "ComputeInstance({'state': 'Running', 'last_operation': {'operation_name': 'Create', 'operation_time': '2024-07-11T19:58:01.445Z', 'operation_status': 'Succeeded', 'operation_trigger': 'User'}, 'os_image_metadata': , 'services': [{'display_name': 'Jupyter', 'endpoint_uri': 'https://mayani-gpu-ci.swedencentral.instances.azureml.ms/tree/'}, {'display_name': 'Jupyter Lab', 'endpoint_uri': 'https://mayani-gpu-ci.swedencentral.instances.azureml.ms/lab'}], 'type': 'computeinstance', 'created_on': '2024-07-11T19:57:53.325138+0000', 'provisioning_state': 'Succeeded', 'provisioning_errors': None, 'name': 'mayani-gpu-ci', 'description': None, 'tags': None, 'properties': {}, 'print_as_yaml': False, 'id': '/subscriptions/b7d41fc8-d35d-41db-92ed-1f7f1d32d4d9/resourceGroups/contchat-rg-mayani-7/providers/Microsoft.MachineLearningServices/workspaces/contoso-chat-sf-ai/computes/mayani-gpu-ci', 'Resource__source_path': '', 'base_path': '/Users/mayani/nim-on-azure/nim_azureml', 'creation_context': None, 'serialize': , 'resource_id': None, 'location': 'swedencentral', 'size': 'Standard_NC24ads_A100_v4', 'ssh_public_access_enabled': False, 'create_on_behalf_of': None, 'network_settings': , 'ssh_settings': , 'schedules': None, 'identity': None, 'idle_time_before_shutdown': None, 'idle_time_before_shutdown_minutes': None, 'setup_scripts': None, 'enable_node_public_ip': True, 'enable_sso': True, 'enable_root_access': True, 'release_quota_on_stop': False, 'enable_os_patching': False, 'custom_applications': None, 'subnet': None})" + ] + }, + "execution_count": 2, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "from azure.ai.ml import MLClient\n", + "from azure.identity import InteractiveBrowserCredential\n", + "from azure.ai.ml.entities import ComputeInstance, AmlCompute\n", + "import datetime\n", + "\n", + "# Set up the ML client\n", + "subscription_id = \"\"\n", + "resource_group = \"\"\n", + "workspace_name = \"\"\n", + "\n", + "\n", + "# Define the compute instance with custom image\n", + "ci_gpu = ComputeInstance(\n", + " name=ci_gpu_name,\n", + " size=\"Standard_NC24ads_A100_v4\", # NC24Ads VM with Nvidia 1 A100 GPU\n", + ")\n", + "\n", + "# Create or update the compute instance\n", + "ml_client.compute.begin_create_or_update(ci_gpu).result()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Deleting the resources" + ] + }, + { + "cell_type": "code", + "execution_count": 57, + "metadata": {}, + "outputs": [], + "source": [ + "ml_client.compute.begin_delete(ci_gpu_name).wait()" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": ".venv", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.11.9" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +}