From d43911b23e68e5687afc69eb417ce8b6bd7768d2 Mon Sep 17 00:00:00 2001 From: Jeremy Tuloup Date: Tue, 13 Feb 2024 09:45:14 +0100 Subject: [PATCH] Create a new notebook with a specific kernel from the new dropdown (#7255) * Create a new notebook with a specific kernel from the new dropdown * update smoke test * Update Playwright Snapshots * Update Playwright Snapshots --------- Co-authored-by: github-actions[bot] --- packages/docmanager-extension/src/index.ts | 8 +++- packages/tree-extension/src/index.ts | 37 +++++++++++++----- .../notebook-chromium-linux.png | Bin 12988 -> 7726 bytes .../notebook-firefox-linux.png | Bin 18466 -> 8056 bytes ui-tests/test/smoke.spec.ts | 2 +- 5 files changed, 35 insertions(+), 12 deletions(-) diff --git a/packages/docmanager-extension/src/index.ts b/packages/docmanager-extension/src/index.ts index e23a9911e1..d3bfff9a91 100644 --- a/packages/docmanager-extension/src/index.ts +++ b/packages/docmanager-extension/src/index.ts @@ -40,7 +40,10 @@ const opener: JupyterFrontEndPlugin = { const pathOpener = notebookPathOpener ?? defaultNotebookPathOpener; let id = 0; return new (class { - open(widget: IDocumentWidget, options?: DocumentRegistry.IOpenOptions) { + async open( + widget: IDocumentWidget, + options?: DocumentRegistry.IOpenOptions + ) { const widgetName = options?.type ?? ''; const ref = options?.ref; // check if there is an setting override and if it would add the widget in the main area @@ -54,6 +57,9 @@ const opener: JupyterFrontEndPlugin = { (widgetName === 'default' && ext === '.ipynb') || widgetName.includes('Notebook') ) { + // make sure to save the notebook before opening it in a new tab + // so the kernel info is saved + await widget.context.save(); route = 'notebooks'; } // append ?factory only if it's not the default diff --git a/packages/tree-extension/src/index.ts b/packages/tree-extension/src/index.ts index 4d9ba65e7a..4f61cacdfa 100644 --- a/packages/tree-extension/src/index.ts +++ b/packages/tree-extension/src/index.ts @@ -87,7 +87,7 @@ const createNew: JupyterFrontEndPlugin = { translator: ITranslator, toolbarRegistry: IToolbarWidgetRegistry | null ) => { - const { commands } = app; + const { commands, serviceManager } = app; const trans = translator.load('notebook'); const overflowOptions = { @@ -99,18 +99,35 @@ const createNew: JupyterFrontEndPlugin = { newMenu.title.icon = caretDownIcon; menubar.addMenu(newMenu); - const newCommands = [ - 'notebook:create-new', - 'terminal:create-new', - 'console:create', - 'filebrowser:create-new-file', - 'filebrowser:create-new-directory', - ]; + const populateNewMenu = () => { + // create an entry per kernel spec for creating a new notebook + const specs = serviceManager.kernelspecs?.specs?.kernelspecs; + for (const name in specs) { + newMenu.addItem({ + args: { kernelName: name, isLauncher: true }, + command: 'notebook:create-new', + }); + } + + const baseCommands = [ + 'terminal:create-new', + 'console:create', + 'filebrowser:create-new-file', + 'filebrowser:create-new-directory', + ]; - newCommands.forEach((command) => { - newMenu.addItem({ command }); + baseCommands.forEach((command) => { + newMenu.addItem({ command }); + }); + }; + + serviceManager.kernelspecs?.specsChanged.connect(() => { + newMenu.clearItems(); + populateNewMenu(); }); + populateNewMenu(); + if (toolbarRegistry) { toolbarRegistry.addFactory( FILE_BROWSER_FACTORY, diff --git a/ui-tests/test/mobile.spec.ts-snapshots/notebook-chromium-linux.png b/ui-tests/test/mobile.spec.ts-snapshots/notebook-chromium-linux.png index 9535be4aa87ccff3fea7d250d92a6daf089566b1..fee2e35a27596141abe3e1e3066f4852d4abb1fd 100644 GIT binary patch literal 7726 zcmeHMXH-+!+KxKPMMuyuf=JU4K!>KF#DIV$1QY=QF(6f?2?Qjex9B*65fCCMB2BR& zEl3Li1f}-~2p9qcrGyq*=q33!Gk50d{qC9{cdhTox7PgFD|?@F*1Pw4&Rd@64e^4Z z?#}J|wnHG0ooDq>CJ@NxA0dz}`~R^STzS8q^$h%M!kg%xhGe&hk3t|4BWF>kF8Xz| zd;N1BdVi_)baavBIVZky%w^8$Qp0~qHNTho6h3L`a!=m{b+@r-=#g{di+GEBG1tP! z^pp547)rsFBs2uy~as2Zdyu+CI}4I7NK`dAhaPs7+@x zgakPWzwE_ZUliPX_-PM!NSWZ@aOibrwv0c!psUlCuwET5LT*65u?{N!bc;{YZy*x! zB&8;J`U4-*#K!N-Rt+=XyH!%$>9BcAlh9lNzp*#3B?Bkk`e^xeW?J}XMQN?1wZlB; zT6MdW(333*h^gTOkI6ATw?ew3w`PW5t%Y(na8MQaZFI2luYgX(5*= zsY)diDx?ul40I7ddC3ynv6Qj4RI6P!{KWN=6I_K)D)S-&=5-y;U8WI2E<9(;6V(Lf z1&S8?0s|K(*B2Nb7*pI$Y|e*ms*X+Oks4N=^%A~4q^yz~Un*h@)vt$1_?TOh>f##_ zWiyfCO2s1sQQGb_WhKi(x8>QPjN?#IrfGYkdMS^)8ZN9@ygFGT6|(dN4Qn;HTlHig zk>Os#{&+@EbA7J8@tLOG`hT+)_tT@w|AE{z?PLRzMLhs*3akPJ<%5bd6|^PkhTmgxjxxLjgN|uV0e@V z7q|6`l)D&Rc6A66*9!9Mbn84V&_C>fkht-FQ~cv&$Ni@JtvbCYI#g4KM6*jKi(MM- zh}igjJjK_c7!q11=3aD#((A*(H7e#UH13UErr)UCDWYH=%|LoLH^ttPwS4KpEHlzt zwtt-&Q+g>G8Q;WKSdxjeGSO7nVI%p7*UUb0t;W7@+s=Kl!D(#G=Siy3$D)VcEp)qP zj4HaXz}4`6^BtI}lBqI_czObUab=uLyZb0_bz+9YqLI<86z<$>|E5k$kEF=e26?jA zIXF5>GD*HdnDFWAk6mmeot;x6N2r4Xgm5 z#f)0ih*w&R5QRky-~lK&?oIb=qm&n^J=i1AIGcd$Fk?e%&3%c$<)JthI^<$Nj(zg%R@w;VHLNr0eo%S_xRSD;2-~ zn8X=wZk&4uJg=w7lj=EBE#j1Oe0eYizuKxR)l9_l8KxzWW8C^VEgED3k2_S69jO=l zR)LaN6DlCl-S6+|*k2`N)D)5!Ug~nyHK8ox1^rpxLVAhC9*1Pw@qviMBM+U9PZkZd zg?8BzG^3jKHQHV7G`UTxJMS3UUYEH%u_xttWs0ASF@Ps-DEf>5lGCKhX`(9%fFZ#HcD=}2uXXWYssHtOgClfYYZHyp<`lXj}P zd`jEab=Fau_DC!~EF#z;K#Y{uyA@xU95cSnY5#%qoADJU25#8)I8y$~iL9RB;drNp z-o*Z(aZ6@HB*r%QSi8PeqnIi2g1;qsh6c}li`yNIA2U#+!zF$W)Nxf^yDr@tWTCR% zDL{$sN?vH-QritR97LKcd>R-A1!4B~x{4%cY%41DH44Ux#p=SO>kSaSv79JzS?2nr zuTx8+g%}ZT-)?}AC^9iLxUW8zcAoasI0?_{A6wH)^zO7EXUD$Fs@5AU4GdQ-+?#76 zd~DSnJFb3M(!u&7*|H+~xl+cffb;iR0H48JO{Y6l&#K+J7e&w=U!7dB`K@R=w8O+H z!0_wrbE1%(qa8q+lFMg*ZBSSALL1esVq5JCw}9k z*gp~J{;Z8Z%z`N>$HuL$PZ5}Qa2LV)x&jOl91ULVZ_`(9u6Mhwd!4Nw zfAqS^RNuSCT|tvnmd%Y1TRSRq8Q#|L*+h#Wa?9S9T0 z4L!s>^4*P>yZ}2AFgG$bFftKI&7}R7gc6e--I|b{Yzot+4^GR8c8g^;#7~A9+}D^a z>JTEz=s$W9NH$V)kHKp2R6yZg{pZFS+WGrMrcpj@U)5 zGDCg=t)+fp5p7F(Iaed?b+2K?D|P%_edTu-Lyo$A&KYa(o%Pg7PRCcqXCMmp7kHKcb->)sbXauvmIqg0+79;aFKLC@Z-$A^LS zuWn-FX_~&E3OGE^e@E_QBjYo|mCK6ONq0-nacFRrEtI|h*X3L*^jOIHO2N8AkAQA! zfsPO{c`q^1exi`!P7hbfbV`u)`FutGN!j}+TL`rhzT!unFKnw!tjKm=fiVGR2m$U0 z=EGN%p70^+m!jWiI&q{3`%)(R6}D>cX%shPj|<3~#;)$UzVhIgQ0%L+azxnu~Qtx2jY3ff3w9ta2KL6I{0N#y;N#i^80BgzP9*QkviXLDdsxZ*+<3EAAKh=?exve3n*$N2EyL#CKdp_sYD;>u_ zUKLcyU7rrqoSHt-2HnAn{=9+s?y8%?2kJgEA-XG!_cq%Lfy%2R|aaMcs(pFU*LP%pd?R~atw#3GxJ(pcoz5d zGLMkVi@iqEBT!~{3(vH%VXcQa-G@kNfhBL?&pw>~gib9GJdn=kr2x%Z&o_k`2VUyK zN|We~*|vzVj@3koaFj)0!H&M5bG1RBAa5{ekPPTS0bJiN6?ZB_cUpS9n=hMvNEQ#C zYYi7sR?-dzJZ;0@l!LzP0Fg6utjo$&2UhM~y$3Tl*&EpF-Nj~>1JS`$hNP%Lx9|xB z0YQ-g!JP4tjE;%QU+cdu*wVn`r0_~pN41Y6)pjK-C3@C~vJ&xzlBLzcmTu+i3ui)q zM2^0QX?P{7;WM$JIe@#pmZJJ7MA4)G>Md^h@ym7$&Ja94vxPq#hcwZ5O%d59TpaPY(JFr z++lXGzV|ScesX!fIBLXIo8J`5h_$uJDx%Qp+-OYit9vLz>D<6l@L5FX1U2VA`k-Mf z#Lf^YxdhyBQ+&a52ey#oS;k&C#t5zw+Z952y zNEQ0J!yB&ptT@Ser_2p1s9Z@)XnQNtTptp;BpfzN&vRnwcHBY)ugvu{*QvO6X7;4D zh^l_QNYXptUi2k&OcdAm#4R(ML@AxZ1ftEX@A^`VLc2wYR!wH*v*EUDUxAuyj`ZgY zV*!Q^c>A>at*6305HEKXcyFkZT;pUlvW!1F-n`eq?)qa)K#`nV1QW}!;}XADV0_80dY;&yYAwh zkx+u~>m*WLj`?~+2gWwZbP1<{fnuyYb=(JY$v>`xeO}d@)%Ab4?Q468{6If?HXnF# ziyRte_L;z2$9FuIqq}4PLN)l{XJ`RyYPl7}#gvg4@xFv-1`Ikxmqrw`83xERrDN$C z>6C|=UvbHp=ob-CVH7ewj4;=UQahg5hpl=>!4WN<^Gd6oxiGfOJ ze8nB?5I9aoj1E!~x>bXZp)2^hvUF1ALT)6L#6Rvs;AC3&NLi81m)Wm2%HbIkXa=Akbx?T8k0;-UYIzt;&LyKfN(sogZI(zeO%4XpIoLEU zaZ04iCXoH{*%_egk_}?QE5f8giU!N8_3T|ka@yKn>U&U!9s$`Y&oOP;Q`m!R?A8+p zf}E~7o9LA6?})7_R)1#ew=TPrCqwcjB5 z1kzWG%59X*Pzth4XuEsJ^wk77I`D9jE(@n5!26Gq4&LUjEpr4lCUTSs%Z-4G_ZjO- zm?gb=H`^f3U!%rwQ?;*)mM53yE-(zrS9_;G@B`sJK8#ra>6Mj2C`+(1@?sGV$dZcs zf7#K%24N%NKS;9hw)g^6zcm)VQSvABEZDdC1SK_m+}NrSqN=h{nPquD@z;Z_*;-EE z&7MW8HQRD$Hu;IZ!fI zeA=hKR9dd7y9wS$-5=yP7~{s@0~Jk!=TO{j)|v-vea=&{&OXptTJCD#RNrBKnXzzf z49!s=sEKU6b9&LLSW=j%#SiZA`@aXxP z8Q%ZtG5t8D=1~G*>6WX)xIowp=>2RobiBKSdv!VF#80Es`#WVwBNpl9a;-$(d)t?j z7b%k&DiVGbfPV}jEyGbEgHlVk)#Z}B+TP#V!caX|C`@!EzbgbSiRb9Za~_$r0wt(5 z7A>DCdJ?|Dc>cw7Am$yUB0k9F*748UTB`F@jL4>wkuMJ18aamNmPl|?rqsc+|#_n zm}~9{fgOPUHomc%d4Oa-%hg>EIpH}%mRgyY$kU!FVA>W3(U>Pn2kykss1Biun{ofGb+ifmh8m&iNEdmGI_W{2qu+ zfJs7r8z>R<)rz^U1*%&EX9x2wcp8K=#Pt-MyZRybl!#^#^RaGC&oP#e?dtl=#toyr zg!O3}Z$`>;vt4r(z~P^V-}wFJ1;EtR1#a`hQ>V*1BtMax$>`re|2LWmz5(f*@o#rQ z>k_s3+wogBbK}DmUxRPpI((-NMS=hzDVocdtmSYBp#kDsfj84o{#U3)1HB9td?DaKzeE18{b9=Qz*2`~d%<{#0u8QTVQR$sqdH zn9o7Sbfej~)PEb$>j1l#-HZa+O&_lnsJ)0|@Snm(AB1o0Xp!gG4C)=o(NvyaOzoxg z5=(>xc(a0;(&7Yh`1Z4BHn+Nh&K^(#@tT1PcmoyhZ4lR&@Td9vjrI0H@7jPqQXo*H zHXyB14QwEGikz!4xRO8a0{w55WA`CL{-NVf9EiDV?3MC{Q*F^F=Pu_vx4OzJy5&M{ z7MQ#_x#!Lgsa;<|i+G(t-jZ`Ez46rM*6~Q$@J&zAZz_2@sYv;M*kScg|CdG)iEnq{rHJ$YR(EVD|y`u*;AWuFQ8;_~VFkCB>g5jz4-ChL0Z3eI8+;`Z4@ zTRVm6RL@p%w`b|AeD-qlmHr~vU#{#b_2_a-C0_kv9pHbRvKR8qew5jLUM31fM%y#=)mKm*ymRe@YS#^~Wh4t9UQP$bh z@fv2mR0nPM_LMf`zkjpQX#S-lak|iR+K(pYwP=SdP9Aq?++<<&Xq&cMZlPEWCp4`J zn5k;d7fr-w&U13|+14~sw@j)a(LK!+E>s*UE00V{z zy(vK-@0cB|yRYjrR3S5(41brMqag6dr`OGkP^P7Gu%wOX4TjEHo;}#W51K z)#P#F>*iSDn4sIc3X6`#TkNu!z)41NMWYW4-6r3qClgN|voKmXTDSO2b3DQM0ez|0 ziDH#!TbsqFL7CVT{&GzFzR##wJb`0W+!*zH^S!l8W@9NzwzdKn<5u_<3`uK?3^5hd%ih&W!WjqaO#OxZAL3;btXRJfx%wE zaG+B-pBi%V<9kaBvmzdS?T=j#-dd1&F{%oqS0Z-AEzb;2#M8vC;o~u?W~T(R!(DlH z1QjWM&3l5Up2ZhkuK!Jij-trTr`6SqPAJ|uIvy)| zyvNe-^>-&+S`!YU+ib*%=k5LIyA?{fxrMXUb9E^poEO4@-nzJR8ONVxXYZwp<}!S1 z7LKEy`+Ae=*ve=WV8da&8o!|% zO|G=H<^Mj9froM-V zxVV1dUD|Dh8fmsxz^qvw@T_Dfc}A-^H$5=(_V$*{N8rZV4d+@jqOhX0#@cK%>{KCu z3*`1x6@eSKI!D9NBun{xsJ=s@m2;Ncv7td_{cg!dD<8sz<>b|Jh{X=By&%rc$FzuN zDu%}hYd7HLsw$j_+`Qkf(^O68uw)hPFt&xZa!h8!)`A|s7#_ZDWnmQGAg71ge4DP< zC1~^LEl!~a;X$0yjicDOHgMvgGKsU5 zYUnFvEYj+6%3QxYrEPi8mjd%iod%uC>vN8B<&DwXv>Kh(IM(P!D4u}+&x>jb1s%|~ zDmbZ-!EeGz4(>4UKN)QVIjdY-9@Hjq-cJ{`XjHX3aqzq$izsEsvjZ2bNmKn z$@SDhC)Ui3*~*Db$U^XBdW0VUbnXIC>EJI%&2ejsMv|4$U>F-(eq(Plt8ADta>1=h z283%e@=7UA;*VPr4_x`#r()!GGfO#{W#gV2yZdz97(3b5akPXbSuWQXO=fhJdiJWA zmir9*z1 z%`nmi_TbT-eG#3fd1s_YSLQhMqeYHY-gyUy)L+-h`poy~8Eo~bo++EANhPuQIPr)) z*MZ#pc+U$ewH<*$UOCgiaJs-mqvFGFZp8Cj_5EDJ7rJSuf+2AHEZo{2C#k5nE7L5w z#FvGgNF(|b-%CGeZZP#!yp&JQQ&dQXqK(^cXVpJmQbmz0X6et>@QYwhXB~^&{OK7p zPDC~5EF~o+$<$w$2qz{GXgN4IpsGPh*>8I&Ow-Z7;~44+=$Ta)&ifa_1?ZQwfCXPT zxc*E@S9ESD?z)+onS@J||Y^YArp|f~O3*2thXz9J> zHfS7I#__e3-`NtPeecXcpf;b%1qM^}r%=sSjBY2B0jJxi`-}OVr!}8dRT;=CUjHfP zo(CZZcY6lnEXQVgz4i8=ua|X402GZ%RDb06O+5+xdbTBG#*-FXihw8jYl~fcm?L?G%$)qXB$aJOLD$FU z-+Z~n{-JA2+<0mrla78rQ#Lqj>`V666=kF&t^#8(zy7jP$YeT!Dh2Ryt^e)Isp0BC zR~yKIZOPR~Zz8v30n<}3d@7?+JzXSY@zs*NBLM2@>VTQO`5R(f%7+6yJH2UJ3};F# z9~}Pp$C;!z?y{ESSOjY)hWkSLN66PQ|n_Uf`w^bB&(TI7*G>%#fV= z5VchQ^Qfaxo3o@60UotUFHJ%SZy5}pNR3e`2i&y9rQU#U@H~KmA_?gmP-4;S0v?HP${+#!FKztC;r~ne+-s=!(hDvGE4UUfWhC_`J z*v0fA|1Ps_2L4xNHYz6E*`$U5_RZ?mHDy*dd1d#K#cen`aiH9nwh+$x2`C6rB$%Th z&PE^*-f*j^qlU<_w2iGqG9WmZT zk@$bQKD{|{mYe*x4`AD?xJ?)JRq;J-(~ZW9@1~&(KJhsa3oiM!%eE6$;WBc~gkA?= zqT`w`a&lS*eQBu?N+CZoj0N`5vH9$(z_~OeRdjT8Os!@KE4}2kUX*5(nqr5j5Fl=6 zfMjXGXjM^g)>(OJH3QggO!dkP~c^b+$@RLp{8}va$?mY0?8Y;Jn6$tkyuMV@koZcvXwE6w;c=`_;Lwt?0;sb^KHr!MFuk)Fou=(Gv4XOF0NQHEI_-0l{!@ zo3P7;D(dq5;h@p`+!Uu}N5qto8b$OM&1Q;tOs)8rH+SE6ce}oOazx0GiW!U3{o1Gs zW^4HE&FgDTGmQyHeEJ8d{ zS@`w@%9MS`)H8jcFvY_GgU_Jkxx@S$9mlq~zJGoWw2f&UFE&57Pyz2;dbQ&p>tr^( z1uf{5VsY^5yC+^iRVyd|jO4vqujvBHrx|i(_u>Pf>M}gfg|Bai%VQ720Zb{_uq6K> zE`l?6$ow`fmy>n#w=~B(PAIn(HYp{;%+g1bv&w&}h~8MFfrhF)d8OeV@HhmuZF;Ps zeS!|C6b(R#wwJ%IE56$Crx%P={mCccNlStbz?(BEhYwmi2D>st`E7`zKr!Z?`N6A| zH99aWFuA<}n7n;76r;{6FmhY9sMvekv{ezO!NYjY3R_)9gA@_==9-7}7_|vQme3q= zRv4rjCJ`Hl_bEG;?ToUK&dW<5B7TMB0HW6SK-)r-OsXpB=MaGg_FU@8vCh}|ZRPbQ z3;T(|zTQCF+Fembe)k#I`ha}*_O&Ct0xC}SEXc(k1p*t@{B*Q?2AG_ueLNw|=Om14 zZ5Z}4El7Xo1&X;JX%|1ATQ6@k|5H0Kfl|_4rYt?y+A$G8&zjlOn8}AH^69C(YIm0~ z{6G@_MS%^f>R5+*q=%4p2QlQM9rewncr((;&wnu8tYM#kZ`W5tkTg*0`AMU0aq#b8 zD{WT3oM&6w9KHLrIFft6z=a;I!_;tO?ED&2_SIb7st=4t+M6|8g4v6UIaX8eUv$~B zH1>gk^bb7xM?D7f_pfCzPo7s*Vy}FM>GMli{0j4T@SXna*C!8PFvtFnul49M26OkH z{*#WByqg>dC>3WKqq^G^*%QzqcLAY|8aKdvX!T zLxI^$7&Ix9L(LD5{H{7Y3(i9vYi%|#mNLW2+6C!-&!Z+F z#Hh8)14e=&{1i+!M8@j}Q;dTBpqn1WSYU%wx&D*yc7j0Z`{14127%r)fGm1` zFF%tVgAQwfb{=}pwWWxTA*dH8y9s!JPe5JKHYKzIL7 zXNS+XZI=TQXBX`Pl+ujU4`lu{govN#8>VjRCmfG=A1LvVD=WRW&wqAEKU`LxIXP42 zJ*YceMQ9nS#A`b@-qSI6TH0u3Y1!o>|77Wr7KBu%thlTzxwFKhs}n$LzldH0jBm6l z%4sxkpq41upk#Cyc^bgkK_`|a9`Ey406kJc$TCJ+2ZYDx7As^~ zq?@P?)od;_r)s|=jkM+mLCXY%u0YU_!byS<3&5>SS@Z+bNWSXNT?RJ%{kkXE&5(&S zb!x?*{Y{IGIw2cP;x!!Z%KI#JoRvNue9v)`^WB)!^s{9|2e7mlmsI(J^;K113*)5=53r)io1w!rGi2nw33&CbhfL#KzY$&`;*#p%U@@f5n0%89zgL?Z?r^`z`A=YaSwzRS8M}-*+WKXKE?k1Js*(uOrbL%THve*aZJE1>7X3 zCYr{{&f$Tnoe5wQ3{eNGEgHF4`XCGV;7PH;A!X=+b0CvWgpq{=*vvp_OP2*MbuMg< zD4ZZmCPF`MqP$Hw=zQMVIv%Le{_-Ke(}>`sssqt=19{ad^o!OGu|obt77zm=vRp&i z+7$W(R#3U*7=;Kh!d^63rc1ia5n)B+>(HeMunHN7(tyNum97aG2$VsCOc}G>lz+c; zl4)|_P!n}Z5CfEF?5;ZXEp*A=7LFj{JuO@MgwYj*OFHO$90{EbiiZp6kS23fk}#N1 zA?eJj-A`O!a**TOQXej>m+-ubI;M?j>H z4k9L6B@w(6pE@BM85O2hO3{}nv%}TyKu7w)zR&_nmIAX2SvtHs7NLI@wU5zbv^_eX zmH<+*#B4o0Gk9Vgot#)_j2c+ym-Ic$p*=l4Y`B|efm-nFP^D?-WxHaxwo?co7~XT- z@{3Hs61n9|@0~i}!evFdfc<7=gT?Svu`SuSFAA@Zyt=21!!|_7TflU9^RxCP;6|vU zfC{+If2dcU9A!f8&P10gT|-17rj=+z0iy@WM&y1d7@f?ms_|vjnfc)y3oajt9s_G> z-k=vTa^$WW0W0YTzc@yv*NGg471Ax(&*B|VA1m{XpS2`xNFMgMn4Vp$W23ywzN zuqg4@u3h6j(+t}qos+K7S}8ajQue@Zolr7S%6fu>H>sJo&W|*xmpg-5-vyWuZ%<}e9=&FrJ)nbMTHIzk%VX;`|>+&A$->N)o{XNXQ9r0rQP2 z+F^Ac z#T>*Yp?a)Hj!UN1OmOk48yPuu#)V|5L~~;zxLpBl*_G`An*T4%!zX(d7?Lj47`)Kg|372NDc{y$8jxFm$6w@4in;9?zUd z>;<|t@2JNb>pYJfb#a~SMx;Ww>jeISg4y(n!y-TIp36?u@w5uRv{mQYh2!_P#{#Ld z{xiLjX*@4@P87@vnS#3VH%8Y3p#DJIF<>0_gy3GlU~~u^js?=G8g)xF=(qIarC#2B z2t%y$+T;o3>>huhhyXbgSPvjd^P4SBDL`SL!3IPhoM*JKM4lHYQETK6qpj#CW(SVS z)6C3F-cb>nV-Nw)f>dZ=JtRo@APJsIiJvaAltZ>1d6}Fr2H2LBh`BZb2%qh*(dm03W;ZC?s1IZ|K1QIBV*n9}y-iS#$H zL_Ot*Zcl?}6FZvS_MIHaHT$^;U2i)0JrwZYpKIy4oYo4O|L`7=8@YWju8IJK;XjcO zKpWjIU^A*~wdDZ(AWScfmf836GT%cL4Uwg5!J?_Gu3~ovNWnUuIYqQ(6Ec%*%e)d{ zENW9$UaNJcn?!(UEcDxk{stVbLNsxJ%Q$xy*Z&lO!TjwSdKaKNa873MFqqj|kV~|P z23I5u3u{x9wHAQx!F|0iD&L=Ih}*h8r!GYKf4j0ZI%#QMY*$$Z< z(OV4zyvC1Q0b|6>;K@>d3SO0ykuK?Twp2`8`N3j#a4VQR$&2C1x=UHlO3`RtWeT)N z;uRfs-TU|N(OTK3lgor&FP$|7GIjZ!S~egWPQ%eVquenK^D_W>YarKCfP*&(p)Rq0rSmcOVPNJZpAowyET zMSy*i8!X%Or=G?zyVhsrP^$z5L*63h9CW!nkygSk%L%zNVGcPdtZ^Ap9i{mR`E<0rVCe{L*@{gEi*1?M=>oN0K zZTAjC;mBHk=Cz*Fk=*6UA2wrdmJ;1Y46zkoV}8`0`tHBpOZgZ5{!iuq|Cadw{Ug~v z({}@<0&7a{qG~xC#&FTH!KJF{EwXREalNkuN1Q|KVJvE2{C; zw0lGvl|0sCI;NQjyx@(3LObmTf5%)JR$YHPWD{dLEwyZzW1Q;Fwc5|)^5vW5XsdQ? z+K9F?=CURJm^=oJ8V|PdD@Q}%8H}|)1-UQ6I)`+2D8(khxtFDar z9AlRP7H)dwBDWAPTIvhN%df+fowRFJ0;fa>?;$<88u|5Y)*9nC#lVJLLT*c>p5QFz za%AzFFB+0hv)cIib*ax@mV1jEn80en*_)wy#Q<`5+tcu`ejZUy(bS`Sea**n{%vhH&XlU$Zy@;A&+{O_Pl z{)beyiAvhNRHGM} z{)fB#TTkfUU*#O6KI(y;_d5^FOIas^vvtjUvEew;l05+xqOgyZF=|x_zsci=!Y-|E zzT-2@-1>{K2OuO9zlF+4*8k6)B$B3asj9LGgQj4nWt zJsNuAv zUqhu*j~uvQZJhY_zf50%3;uud`$@O$?Zp9afn+L{V+H8JFV@!bCDuYuRlu*Os`Yz(T(^F zv$9&iQM?_p-?ro=VQuzyH&}-&tHos*-@wh(p~HQX{kMLOd4A@meONtb+5=t13m*9|}jzG}+ zpX=YM@|j{SPg(s-ch|^N^@W;crLX(j)0910rO4aE54pN0(r-#@NKHqHJgH>OSGO6? zB}-W(i!kQMLvL>s?qW_LsMZN$hVD$g)83zC$%8>I`B5L6#fX-ao132FpHkNcgFWQgV;HN==(*Ln=qO%TJwx;|=zZgHHt@Z4*u zr_3wEXZG9DuiOR!a}_<^yBsm6WU~fJ*7`lD>>ZYjOx-RY$ZyY9tt>)+P_>{uwuM_o*Vi{Ul!r4@e3{?u;zX0d8s>UPL)O7_6)#{*)A^+NxBc!tmfrfD5x#-9 zJAW~e@_I~cyU#Mfv8-{Onep(U?o+XId zl-lchXOx??Yy|Y(&2?~?qwcbi5i@mkpN;R4SX+}TWOsUeTTbm(OA=z4gFF-#jC2@& zcVFj>@6E0eY*fuMO_fV+@m+@hAo9Q!*+ULtZwG^Bkly2Ceg;jA0VwEl;Oxo9WIVbSZ^DODTZ@sWU7SewX1>l;4<7XGv1(X3 z&VzG%+dDp<=0S5nbKcj6c{ZJmvlpMH=h`|@ zxz^{xUFO}cPCljKWt$eQ< zW=OW*@an4hz^Q7#WLj`*X={cwv2`v*m64C7o}V}2C@|xxSF;KD{)pG|-sPqI7_+;Y zemeyd1tkx;G%9cDDQd&yQ~3-;%Erq~6FUX^Oi}AsvLvCtDWcW3Yxf7l@?qHUUc+e2 z*f&~w&E|MoeLj`hf{;3adwjA`63Q294VE{Mspw+jWmIF>x)q1!>|&bN5HMqy_NA_k zetkZUJ+MkbvA24tG+m=5Ny<@)T;jd=N2H**5h?n6kULf$aKV7#`{(a%zMg%+_mj)% zIA|@?x9n*2qvoLVzwiUpxl6%}843R&{p1yh^TmmXdR;Td2$oPb%+L(m9u?x9=%LJt zYkavlTl|6f?Q~=>kJl+;;CQNHQNqYg1!XxdK34QpEE={hlRM#B`_02S^*+Y~-Qg@P zdO>H2WmM$*Cg`cKykX zdSRpVkHu^eLTKr>u?V55p^YE2`IZ-qz0 zG~X3el#;syaOwV7^kkih0kLesB(qNOj#|}3W^hZ7)cXtW1C=qtt3}<8apyqKeRkg-Hq%e!y?OMrcrAl%tW4>`} z%qD=#-KX|~<27fD&U&GhAC2B+@3dlB00oTF@0YMet_OBMTYlMsfiF71VLg+|bf3=a zI%kr~%I|jObj6|#PDCR%Bzw=|FTa^>I}}_kVW$(QrhpFuODlr2Swp)gQ3mN3OWfgJ zbwiefCWjlG6y1b#4kr*wSGz_Q%GxzPL~@Z>?<{ArZ10ckF)>tg++Gz~?Xe+x-{(gm z3oOO5b>iHI>OwvDXR6DnS~8GYty-}5RK<`lx?-!dy=52Q=;|EiICX8EW=tCV{O&ic zrfI9<+n4EBr$JJ>BQM>(dMNPljRlIoU)>LlzE^A0$fT1x^@lJ9$5d$&ETWg$>i8C8-Ky`qN3WhKJY(&^##!bV!;Mo zSST*2N@5CRM{)JsIH5G#d-M+HI z-LdGL1yIV7FWk3-@6U|Hg>TzgkAT9Q@4r-r^tOH0mZ~-AMy7i?m|7$3T^RT4d#1f7 z9a%gJmWp<8>!7Juv)UfDt0sQg$7E{mQFqo_g`erQhOX1euS80M+9D^A2il${YSC!^ zvn7pw(_i1%H9q0P!n2`iPa20I2LUv=NyCXOV6+eFwvIE0vsl3 z)uxWv|9LOGV@+zq5eJxdp0~r@;kMfwOGo^S2xY038jd{MdG9JAlabrCam5W!2zQ1z$nIvOHigadQw-n3@Ubo#}9!~s3e zi5RKgYPpi_qqBgr1+UL%NF34ii)XTa2FZU<@R=2idpT=n)Whx@W1oFWiMAT{)Z z5g3Rt6awDD_Wk4WGG0JEXvNHB>~Y1uC^SA`o$kL|qV2BG<86?kqG-1+u^Kph|FCo5 z_z~`NmSrZ^S<~8MoNETpuPL(2lQA4;R8|rX0k%7wV5o7|_>uUyq*rzxcWRgI*3+|^ zb)P$P4h9Z?-TFjCQ5*EFX>KR(i1)b3h9;;SD%Hp>ygnN3#&B%Uqyw4~8_f5n=l!E& zWV&DfEF^ZQ@HF@I+-2>z#GP4ep*S=(>1Pq`uV;kP$lT#J*=u6W+lej|=8@K46z)9c z#>LR<-v$=%(^nmqM~uid&0@LFT@`;!8)%BFuMW}2qfLeZunle`o(o>- z(4jJuNa;Wd0A*rb6W}?%IDy*TtRga^K5BF07_BL!c1+?UCpCDXG_*~Q)CR@nk<+5# zUvEXVU=&u)q5~syw6b0dDe1wZk1IHRejcZ>^}0(Nww!83b)Fg9s;GJG{NDSd3#sz- zU8gIZ1?Cmg)k8b;Q@KQI{~)&i`~W3%Yo*r~FIBf%=#de^YzCbC@>0K9nd9m_o#kS~ z>H}f(o+%_J6PmK!YnB?;=K4MAHpc-Y0|Wzma2T&`yHL9xHcy#ofuv~q%|Bg^Dc_#V zj-$2gHlo-B9KxiaX$N7*D_yhrUQe0=_a6lOcO7Vud3yE4*Sv2E{&Zi{c7R{L(}`hY zeI=FQ^Qo%o{)2&mw0u%s)eFp6%?p>FqBE*~YLm|&&I7LBf*Al5@vvaP?Fm{2Yi&*y zOH22SK|7o^w}NY!B5>#uLA-xa%Z0IP=Sw@rUfdChLXSBGuJvN^_X~`*VEv+8q^+p1 zmC25zg&IX9wEh9Fp|$^&&avsUnjxA!SdeZD-y?-G;WD?1g|jtD*0s@7d@@f^?2YrT zlJWfx@IzdJHLKkgdo&PXS`@PQ`{9IWP)9s8V{3X7@;MW>pHZBv3E#q4b7k)MDR8nA z&t&bqSdRtVn!aK6G&Zzh_U9wrfG6G}~=0a(|eW%*eM{ZrMD>iCwS?n)*GKy@! zPJqfgU>)Nn$az1Yb7qws;9mR$x?OX;DBnt)`r0?JXU++JYFt7g(ygz&rK6O2r0iuZ zN4&r}C|?VL+J9rSFtZOu6qgo`p7_*ptF?Kw;b+|YclQs>sC)ND5X4WG^-}j;U)43F z!MGpiN$3Z6q|aibNdDsC;JBIj%y(%Dca6e6H8DZ;7}utZ%a0@yFlXn1eq!=@4gTip z`t%Mtpp(S($*Vc)@kr=cp&i^y)>LCmnYyVDIE}X*s6wi<#hN8Zxvygno)41KjG|gD zWrEE#YcG`tu6k`%)zEz!_^@Nlk{C3S{00-24kWco9sOqZ$mqQ7Pl!Q(3F>eHj*_9O zpb3|x#&({AU9T9zf6U>-&0aSqG$rQLI*FJJfa+*?8zkZU3 zilWCw+|Jlb7^1ver!;Qqa5Ig1||U2be&Ixv4+&=*4wgM&)7b z4+^*~95+#xd7ssF3wM5$Eq7k?NX0sTePrI(qGyM9d0K!P06ZHLhJ;@YG`2e)1 z`TDEna_UCC41XM2`XqPKELVM8uLTh8RdP@Vp5H=5JIY0*BaIjloiGpO!q%1Jr;Z3& zDxbg&IC%?M@(L8)wGptO#|v4KtXXq8$D}KTHH|!nlZM>;0JoOA;4rWWYHC=q_R`Y@ zK=gn+Fg2|xl2LUT$otV7DmYjI>|sH^aUI{V~&#-S|>Bq4ciT^@~6N zz;;))VHV!K=75t?fmsl=I-RsBLF4fo44i1eoDSb!>Q!f^^IG{_cW5wIfmYn=!6b^9 zcU6P{tT-0>gHjrGn`V}VM^nRgep@HGkta=Wiy5Tf3W-nvrDgk8>#B{CS>X5n&xz(S zLMZlAP0mfA^a*QRnM$cYX_4;pMVGN|365gtU^XyX=+*vI zpd1lYx({%wd?r8NS#DEq*9=;p-)Ru=D1SVIGhw%XfJ04fLVZ1hLDq<62H2WdnQQ># z%9;S!28kqzGTVuXzrln-C<8VXaL5ca39o%<$cYd@z?%&-3k``HNaRJN5_~vyer}?r?PQE3N8v^RKCDVEQj7qujPH32Ul4b0xirArCX9bcRD3+Gu<+N8W zb_Ay}B14>OynETtS#P`SbdtciW2%KuuDW``<@9?jc9VImrwU)t-fY4o>$ojJ8Kb~ELx~y9WlG_Y#7zb$KA?utPUBo4}`BW zxwbDSh3#z3)vgcDc;)q6g9DxMmh+5CI;cZav8$A3t*lr2ZV`$H{z82InfuJBLJjv_ zI?!i@oQ>`Ep4f8?r6C0barp5A^TFBlcn6}i#amYpMm@;wSoGPu7~#G`^9pBC$XCLp zjbVPsko*3>8JG~l-@VK~9{;UF=?R7--0i!@L+f2C-dbvRtg-Q&O!)`|ZM*7DO*J=* z8fl;JxmvdO!k7NbiSUAp5J2|+($M?=KD<&q=DhiqStBBIZmGJ28a!Lr9y<4`)s#KF zK3a#m_epeJzd{tEl!WSzyJP}#f z_p@s4FH`ZZXCZ_|Kkh%i-21xxHuzd$VOXGnD(hb&bx;_pQF-XwLDi0ePvzxMux|Ne~!@BRH-tRsMerkNTRT13%Fspp^&SV_=^%du+f z^&p3{YkVtPQO(C@wD(86eVv1W6iaabPc#2vM}ryvZBi!$;TEOk3go#UvCy(>o-8tc z-sbEH$adVzJHy%DeZJM>NxRjP#sE}+o3Q<6E8$Z4o(8i922%$R&Zm(~97tc+Se+hz z&Ue~{rx)={sIwSO=%bfs?>i|6GRL-u@G^B5{bs)b3qzU;ytc3MJeh}Xix?yOu#1NK zp%2D{uVeV3QGOnPZ2{9(O#in;BEX}IcVbi6J$Q(#Pu}A#+ik-i;~)NUS8IWx*_mtD zUf5$39@|7vPP z){nZH`#aoe{AG@9zfrn5AWFIpKSCd6an6mm6Hy+6H58Y&L$|q2#)bEiLTbZi8S?E{ zW33l-U_))}+slvbUCh_kzJ1?b23;c^6503P@4!FQ$6tlWzsr)pc7UAy7rpY24%nZg z{uzP)BLXJ>YyZF9!+*MK|KXJcL;gAHpAqY*mo*L2=!{Ah>|Z zg@wob(uIFnSlGB(SPn>X9s)kGLFsL>ut>6)UpRL?)Ny%&qfR#DmhsBi^{4EdazW>h ze2$%b!TT@U6OClv!3h5XbCm)MQq!Y{57t?p1|8$HIAv;n@(>&RK>^~$-kKP#G9QPV zpezy5A(TmqI<^vtXH(DF$3yEIS57G9a?y1>v9+N!#fQ6OK{@AD_`1esZcKQb| z`Hz9lNIA(fzF|KEKPT{?UT+?>Ug1AY{{=kn>aW_Cz2%i5)P9i8+>2|$9Y5?-7puno z8h8kLBWQ$r-oj-MyBN5$74csMEBY%s#Uqx=u|~Vx5lf#qo*m?(5<^-<5{>t_rl|zu zmez8~Ybqx6e)@L5GF=jdH^=>3#2N(`Nz2*)}ho&>E zz<8G=S>ev((@tyIBiyK+??s4^##u3s(BvCD+^GHaqPR|@%}*GDF>O2WV*Xk#f!mlm zeKf9RJEvuA^P~M^QXeeGcz@Pde1Fbq-)%I4)D-ez!_lk$u;}F7w1a;4i|u)8o0fe$ zoxB5YEiSfvoR`lF8eB1pSvQ;QrnCt)uhcX@BaI(|_um<9-uURxqusP%6?cGF2eS1w z&PZdaqE~sgn4lN5QS20@vs8{jB-~lLJEtE_grP*lR~~S1$4NwQRa6f(PYoW4T6rWP z%4@LFy4p0aRM+q8r;gj|&=w~K*EaO;D)kP342RS$-XZBx*Nkav3peL)kJJyZ^m!P; zxR2BV?+&>K={lDyRv)xYiJ?)X)X!xoTOPoSG;dZ1U&b4aM}7%7Om;9GngS> zOJNhLYYkq0_hu@R6fqT{Gd?z;WkB1;8eh+^E21Z>NZ$4}$Ol{@ds>TevgUkRpmC zz9nehWwU ze;w`kR^>I8-Fl^Icwp;3+}Q)CuvT{MIEWZcX*jCe5>1_zkO-c*KjL-(W4t$H{JgMx zYIl-?0OH&Lvqy@dNeRv6#?aPnXzM`=YgI*tzIC%=q`I-=k!=F`;K|6wIVFE#Z|EA; ziMHW1yEt!?xR|XtOhyZJj!fF7WHhh8!2t0WgA_O?LH)&XR2$uGrS&6v3nL+(zft1xT*9Pj zf1}J;rYmy6(&=`S8Gnxc=m#@?);>hc-lCI4$joOB2?J4RmlP%o8#%wN@0Qr}CM4Oi zWvTuQVymg7yqqI`);pF~sXkMiHMKnc(Q7$z5_`YRX0P01q#3-iYTb7x@3}22TxgHn;NC#GgdZaflx@Z%zOrP zG6rz5c5diQJSGg7+cX**MGURzN=fi%^Ff%b5tbem8O)u|F>0>jhf9SFEFf)Lc7Ei{ z{Tw9MIZR1}-~uu9K?h!6D)BH}4CU|Z_6gpr+)Fb{tPG8!?M_M9JkgDJ-`Xq$>{3_i zA2}-$N0*O6H)4<42l7^@adbrRu5fe6WNW!>;Tvi0g%P@&U9j%g3EC~&{iFK!^x}J0$FAM!bHkF%7^>#}{vd7Muf{fO(u+K=z_pwii zE&GctiG&|?*~QGM#B8fl@uE3v4(BfXcZP?Ax=}pm8r3_RZoEKH0*Q1^UW*)EtzRzpTU-J*;0K z)1R~4eJ=BAQ5YL03eZ{dNoYm`&TZ+rX#1^^1@iF8VfC`)`&K;z6BiMR9;u=EG4pu- zVw|rkM0BWoKQ-}blB7aOf?D`A0`m^(Aks&qO^6z6mvm+H3D5BIj@$la|DKE@U z>K4omNbWkzvYAi?zOGK{vbs0Gl2Pe@LUGxAh&eXQyaB(LfS>@h(jVrL7X92ZeB)hV z;t7g5+XZo9SHo+tv0lgEt4iSJ0Rwn}+HGa9Oc!l=YJVA&t#%==eC?r7BP6oX^H%QJ z;~;2h1TYc(d<9ry-^9j}C<6BqpNq=&4EtUvuIc#QY4_)dvJ4o1NJ?99sLRci~5IcC=DDvC11i#kg0Yv&*t8O zN^>iSfuKU6{oanSP)fs;VZJN$)#cm$U$mrEEDx9r8)9u?=kn4)?ypbEf7TeMFHCZx zmZor1*Fl5b#V;z+ax+h(Y!bNCkpN7X}!*V|M>Y1dnCTfzFD z7hEKEM?r$nw#@vzXkdF3J8&mmv}9}qU5-y4vS3Fv+JwtTrRnOTuM}bVd(?hj6GM)R zfV2q7E?{}`X-N-5nB%2iR*B4 z9>39BH=v`76oJ6rCt4P>=@FxqIOu*$8H_hbfqfm6{Vb!MF*ac7FvCA<)mMeby~ydf zA?Dl_u(;Izl6z|Y7ImJ@g!tNNC(gdZHN+dIzv+~@ATq7d431B&UOWTP%Ls?s$`7ndCJWJMpb688lM zWLqN2(By>N(vNFVx&baV|H7R&dDJzsn!7fsdsDPMor>x=v#L`KIM=B;IYVXbwsKu$ z?lIU>fBvPl-%2qkar1Uvp$Xh2*MFAbMJ;3%v2LmA=qq z=5U7n&QGqK_c(7EJvSw=0~1vg0znNgq1@Sn(6ZxMokw*!Y%CK$I~3b$f)%wfp_VX^ z+IlMC{gAnH;73@8?ax8!c+XfVj7Anqx~%-$%aQheKx>xODc;8XvUmQGE7nhS-{T+V zHTVNMo)-UD8*k`b2wr*FX7?qh4x0Xb*2b4mh^>d$ijK^^gmP7Hte1KO)GayQtp zxHT#D!lZ)q?JSi_T*V2v6e-6AyenDRAaJ54$iT0Zr0$gl(cFD^&zsFevkknM8juQ3 z{`OWhXNX+?1lDPQl=%P~1{OVq z=4o)>fIyC;rnVj$-mk0P={?WaH)-eRc_cjtQ?3EV<8s4{x!8tyE+k@bd)PyWF-rIS z(*&wPGxoXTL)iJ&Dw$S-W~E`TlJIoTyE_AWLn(Y2&vc02;Zht{`Bw86QpJ+_9&?Yl z-~2r&{C<4=cFyjL3y4>1qcY}7sqAadv@w{Y;a?whNLHdzm?T1xc_3QEA>J*Unn@Vj zB{q}wu#^1(w8X>QVNj`r2NZe zuHqPttAX}xCMD`5sa>7VN~~v6^#ndZ`FrpD0mKL7p+f_dYZY`|tu3iM$wktnY)ur| zyAkyeV%iFY=B0n+;?}+DmZ_5p0=AHb_iupEat1HvIhwad{Wg)%GrD;TkN+LUX5v=m z0J$Xbh9FQ|Fg-N{OW(8!Qqpn(iV)NNqGVJqqpfXjnagM)wt__qp|qyhSFH0B6}{1?D#N zIAp>&Ql&o2yvvOhMEej4;LC;VS<881=^lH+(E~|Q%8;BR+@9HyKC+9VOJPQZP1WP6 zsTT8M_`Anb`wt=v(z_C^?_Ii96u256r?I2~O>!>h4k^llLb35G>i$C|VN0I?7qupN zxC%eT>b>5sj3)ORVZTTU>{lEOc7;4Kk@J+h>=p&9u<^(HfrTpUJYw1J=EeE*B^MxF@v2fvaD!cA`6TW*cl#obS3l^voQK5xCl^!q)vlB7 z_5z^0`3<$X>rg_fuBdLZ8+4SzXayb^H6#>PmDZX*+1;3&7Am8P#X66s(02&ej$)Rl}QQT*BZopD^0H&_1q#Ng60oh!ri7bIG zaGE%3BMo5FHYCC!6_i{rS`{v}m}SPnm91-o*XbWoznv?qiSF)4pVp2U>O7-PlOI9i zwp{;FMx}QxUKV()jygri?&Inur?b3BPQ7u2J5S_Cjeumi9h@pNn#=AHXC<`DTfF9l ze&?#;6+F1~rxDf?LM|+@bw`!`K_VQptX4j-bC$@%4Fr4dT#?I}7myFTkTv~l3|UwD zW%)Shrhge1w}Oijxa3)}t?XHd$idZ6Ii%WZqbAZq&9$Y;SRzKm)~#Sl4y^bBmY^aB z^s8v55y6_ux7&3Z}ZHP8h-b5=H;=R3>x9Y1tlOds2gNv!C zo2IC@Y7<|0`@Ug7lvY9ZRdt@#)3uR`lNBI%cnv17EDK~UiLl_bF> zixb|n%%9w4*P`xsUJIA`1hOnUPlq4u!yg~;A?`PL`-13j?mt9t&yAht(fH1{z*2t#)QG97rGlN@f(B_?eHX1zPnJ)mqQ!kKt6b zJ`1tSePer)@tDP%K&!T47{SLNJ72gsxf3cKD$CZ#u+hPxo%)lirL<-LnBD0UBXu3w z6M_oX^uZ`dOM?6A=36ZGa0Dam{ayeqY)qdQs{h*ajz+WH8wdg92`{T64AfXtKATZ~ z!Ie2YwRK;V1nb4=IU)kXtM4=9?cPx2o3{r$>=*Dzgxj{R?YQ91z9VCh)+zx&2Dis8 zQw9`^Kd>hqRJcUc4xofltqF<|e z)T)<7wX$+N^C#2OKx)+HqQ3o*^5ES!P71UQqD{=s5ZQO&ekn{T(y4TPhxBB`m{>Q9 zpjT}ea;F5=+iZ!2bn7sqHcKmuoSO#V*m?j!or+3qKGSOsa{Z^ETjA0D)u*&mbp4ln z2$N_w6J>C1!^E;yMCTq*wR;R*beA<@lxXBAVnCdJU-hG!x2MYT66UVuuf8CUSHNI= zc~NC!<>gNvyl73LJiC=GGwp0?X=*6QCthJpuV#_{n#&DuNcy`Q7qxv&1C?P}z1$x9 z<6|}MLLcA%T(@|*IT)3l6h@~KU8ig|=VVpFx;3ls^nP5TSMk%r0E!5`MlN>R^Qv2U ztYVP()NqCmIr=vGIB58$K)S&~?#Ds(zm*|- z))anpB{t>A(yNR!U`0Je*FBE|m_qT5cY&!|LY&Z|>~D$7!rwCcfSu#pOHX3kzu0Ht zt~mmy1ShJ@v1a07cu>ba-e%wRTf-`MSuO6$l+U+UwJLsNDDrccP5Vvn^XD7aHVhCy z2UV*zPw95cgwB({Emfdnrm{y$y^MFhArq&6HB*{M0dyWV>ff^0(eRGW6N zlC&_E)lrGMKp`VzB13`tRJU~T6&t1s_4ZrBf}u8rl<;t}E^s!~BW&d}$59~A6tF85 z+dBvz5rhP7s}o})vGaBM8URDLDBoLt9aI5rPDYT(5p)Q{O99wK2jA1E%`uPAB^L?( ze8nO&{;)jT#+l<7OQ)T|=}{M?7z6%oV`KIM=&bE(&dmK96No3IZeFuYH(#YJxVrdx zSvE^%l;%XYhsGZcGQ z7+#hGNRr?IlV;i)ibh>YaH8JT0qCS5AU+gfzp!5W#4_#YV1s2(8xco9UJ{WmGvYjXXf$?=!beSo$VQ9fW z=-i3i+8-|`^x~pQu`oz2e5IAcD1cfWRB+ ztrUO(Iwwe9M6=`q_)U}nHiTjwM4>bLbQE0LQ(b!hBUvW`s7=+Ws~Ih#eo>3|M^W2- z9$G+Id~9{mkQ9au0H9d-7M-X~D~F(aSNi>rVly3|YA)k^~gUOln!_@Ygf4azO=t*+P5edQKxv+cm~?Fdbd zKq4RF<3iiTg9w?9G4qq?mnsuqbMMu-jaL55U*KzBKPAa=5v=g_&wY;;WpJ*eLP(o{R<4M0@TUZxPElCjTY>A!hcfEFzv*b`6ZN12+|GoKswrlrk}7j(?!5-{LWpWuK$>2YkFPx?@pM)o(P=X&@Fb8L@Q>JCh7 z2Z%qgb&vJE@xh9IAm|i#$Fy(x!==V+)?Yfcvz`G18}{$QIW`mPmtpuSpq!afCqVe% z&iQ7%!7vuz1Ab7aJyP zAn2`?rf_^0*VcQRs6Qt;ZI?8m4+mDLLHk`IR!Hs2{l#gId>>2579bDN^$FKXg}I&% zwQu&tb>C~F6KAsO+32~p76(Yz>=WDuVd!uK5lwg-mBm#j{4u=CL|p9z z^Dp`@0@}FbpGn{4VyA0=9_bPTjiPVPy*hFrHU3CSTkf?>&SvOc~vWc_XIWjSaufCAZ6H8)n;mKh-`j zZdkGo)V{nX#C0ct;h_ptS2qe1^}Ix#yU3{t(dnn}^(BJw>;_R@^MJO@gtq0Gg4AqI z!aSj?P6@p}_c8}$7iAS)Bhn8cL?(Wl&OYh651eNNhC~5J4dNz$fbyKqN-;pjLbPg7 zM_E|j>*F*@rxT{xFNTDt2Bm$fsb&Xm4RQ$I$lrU>zEK*|6!l|M4qGvmX}m+#0KT4TPUXC2z*9Vq$^yCNT-1~&q`zbNUa+L+Q_3g1%z zJvXI`>`VxoeEH{u+N+BEwl<)U5c-Z|cV+u^x+qu8+NiHFb*wdMo1KeY_zbq+L|no( z-(p_XElbYWJ@z#6HIOC|e1Con(@2Wx&D*bfJvAu7B`WNzv+z0<5t~Anb(bp>|3bQ4 z$H$PNB>K_Wv8YlPVdpN_-dNn_o<6jf7T96I!uF>|oK%54YnT>i|K`ka?1PW*@AOAc zy*1;n#7?A(@ZL#)JDWw8sI5suS+k7J4=r5d4?~2FG)&&V5&abJHQ?O!S%3Fa4~}b& zd`FxW-=5idWqa+U*$1d8KA{3|fsvJZemCr7P;$6a4e$^T)GchDK`N!d$w zTAWsGF9~~i*ECt2QrG#MmYZC-9zv{JGtb2B$%_IB0{0rBEjR4&wlF6bcNVvPgUnf1 zl*g-?bH}jNFsgsMW1APQ6&fC1bzSV8vzBx`)x@ z)aCBToOM@I!BvnfsyUN~yAqXhDYHMY94&#b(v*UDd)ZdfY5@snM2aG< ze6Vfu+8XUN(!%x<*EQ`0*lOMeYidW9wt}%pME*@Z`F5Fs>YAk|5B;C4S)h(s77 zgD?If_3H}|a6dV2aFd3EB2oVz#Zl@=rqD3BI?;(m(K3pB}c zexS6nco%NPYz?rpBYAsO{}?;K$vpjM zPZt6`dQ|n&kntuKxW!q>yV%G)#<-4w+g@_~=kwdGoF=}nA2L3#5;_L@Sqt1>pbz27 z5l-&vO!p8>^vD$JNr^FQy-j5N{ShuDc<`vmQgxob&%m& z$#OYh4w~rk5)G!S?*NX!-_#_+Y^4H@&&K)Q%x1c}6mWd~4S z3smEG{7I(FivM-%hl2gJ2-+i}s+qakI6h(||%hJLqnWKg59=vG?j$EIPG02T5GpzOOcM2N4ia}Z%m_tV845ye-q2|t6 z$Y`+slsV&tKRHWsS_4LFqtzOhQq6dP7FdGFc|3ZLoZR zX4JSbnIXZeH#K$>GZ4WrC0vVbQ4U-+=A!k2F~KDkV1gVkBPZJz~r1MD0ZOGP~ zc@eL6)N}@-5*0?74(HgPUir1?sba_3Pt%%AKCZRSAd z=>x6pEdetlEDD&#Mt_quvjwBa+qm1!Or`~!fq2`QpG;=9bb+q@%W4Xj85X(e1jJhu zjKs9hFr7Ee2WK6ZW05ExTKS<(No2PA=~ng2xaG{8*bXrEKRFR*|E1F` zKM9|Hilq*$U}(BwV;|99CnLC>4Db)sBbOPMk;XhwKZI781AcJ!G`%}rRzio(kRtoD zTdCHyY`dfe!pfEi%A;-?9-$-x>Z!i*ze5ZR-vh2Ql~N|l$&_A)w5JR?WP#TJN;iJT zAH%c}6__{m<{3ugtUVx=%cZr`ObbN=9*b5;V>DiVe9-zecw{_)VIOeIgH~`$ngyfr z6##kn8Ww$Z7(tK;I5u<2LYC3EryvQgn%L0FWrRQ<;MP9>H_Y`_1#rWk#BdP?)nlIr zoH}3o?|;PLFekTfND~k9CfFL_(lz_{%vkURTv*dEiC~7pHqhGsc%2yu|KDkeSR4Az zcHGhGqwz3j#{zd`E6S}299>yLiq(>xN5(@&qio+7j1X(9nR67>+5Y|;Gt1sop;ts8;E-N5#ZFtXbDZo#{jp|RDE=2o=9uSox+dM6WQG0 zpPsX2?6Fj%22P&E@@qZ}hFWzzljq2}QMZgc2&#QFwrnDJ+?ShYyL!4y8i~t%nRNB> zY4GLG5cC5{jjCk@rZpEYK|Jlc-dfSL9wXQh&ouB99{TN}j%PA5;J!pfpVJ`V1@ByZ z4%2;9C19tlc$xE>U1qcm1Y{!J3ky7lBf(>0C(IeyKr&gb&OP9JTPJ=~( zyBxE99iBnX(A#=31)oq>OgH(mzkQj+lW!{A0kCc=xkcjAXlT971C5-T znM-s3V9k1Wyib%cXxKPei5V8`XMn)vU%k)hakiE7kvMaQXZK>2{_mL~{FkI5e_z5B zsQ*r>;a{Kp^~wK#g~#9M`Wsz;qwBv31^Bxd|1QSAi}CMbWdA=47yru2Us?GpD}QC> zudMvvJmUGQ!hcoxuL}QF;s3cR96n=ymxYDn8~y(R{J(JM{#TLzD)L`N{;SCUa~1io o3Nw#&|7$LB{SVzw_9e7+e!Wm$i0TLa_YaHtMe7Tt=OGXO7tQYcegFUf diff --git a/ui-tests/test/smoke.spec.ts b/ui-tests/test/smoke.spec.ts index c14c24965e..cc564aa202 100644 --- a/ui-tests/test/smoke.spec.ts +++ b/ui-tests/test/smoke.spec.ts @@ -27,7 +27,7 @@ test.describe('Smoke', () => { const [notebook] = await Promise.all([ page.waitForEvent('popup'), page.click('text="New"'), - page.click('text="Notebook"'), + page.click('text="Python 3 (ipykernel)"'), ]); try {