From febd7d4ac1b307e30926233797722097138c0265 Mon Sep 17 00:00:00 2001 From: Copilot <223556219+Copilot@users.noreply.github.com> Date: Mon, 11 May 2026 20:41:37 +0200 Subject: [PATCH 1/4] [Android] Fix screenshot from WebView content not working MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Use Android's PixelCopy API (API 26+) to capture hardware-accelerated surfaces including WebView's SurfaceView, instead of toggling layer types and sleeping the UI thread. The PixelCopy approach: - Correctly captures hardware-rendered content (WebView, SurfaceView) - Is fully async with no UI thread blocking - Falls back to existing canvas/drawing-cache methods on older APIs Also fixes the test page's stream lifecycle (uses MemoryStream copy instead of a one-shot stream) and removes Thread.Sleep from the test. Fixes #30010 Co-authored-by: Javier Suárez <6755973+jsuarezruiz@users.noreply.github.com> Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- .../Issue30010TakeScreenshotFunctionality.png | Bin 0 -> 82826 bytes .../TestCases.HostApp/Issues/Issue30010.cs | 82 ++++++++++++++++ .../Tests/Issues/Issue30010.cs | 36 +++++++ .../samples/Samples/View/ScreenshotPage.xaml | 22 +++++ .../src/Screenshot/Screenshot.android.cs | 89 +++++++++++++++--- 5 files changed, 218 insertions(+), 11 deletions(-) create mode 100644 src/Controls/tests/TestCases.Android.Tests/snapshots/android/Issue30010TakeScreenshotFunctionality.png create mode 100644 src/Controls/tests/TestCases.HostApp/Issues/Issue30010.cs create mode 100644 src/Controls/tests/TestCases.Shared.Tests/Tests/Issues/Issue30010.cs diff --git a/src/Controls/tests/TestCases.Android.Tests/snapshots/android/Issue30010TakeScreenshotFunctionality.png b/src/Controls/tests/TestCases.Android.Tests/snapshots/android/Issue30010TakeScreenshotFunctionality.png new file mode 100644 index 0000000000000000000000000000000000000000..14dd905bf0ef74446e837c8297f4e01f424975b7 GIT binary patch literal 82826 zcmeFZWmr{h_dSY%f!H9TgoQy1k`fjoEiEl7Dx!2qqdveRC<>B-gwnMorMHR-Zc-@$ zDFNw_+Q25xSU&%A&i^`J&zEzq>-WAN9@NcRYv1?0=Nxm4G1ueEs`6VI_A$`W(QQ?@ zbU}lTZoN1i-G+)y8}K(VO3iohp99w~X{gZAxg4dV^ZJL5ZV`XwHAqM2AV^0ye3gz) zGMtW%#X71;T?+rO;hK{C1-ez@|FNY>FYq@T?G;qyHV$oG$9O>EVBGy;{4$-wg|k}s z+eSN_+?dRMRs5Ma+Ini&IWM|6Y5-Hhg>Mn)u&Dda9-=b4uZV+n3K?rb^m@rs!m2KaS?w0%4gw z$YSD_Rac>_b()C4?sMAaYqx1_^WDb&JGAH6z(Do8uZkVVzGoU0pSt#Glfy`J#*gfN^`xYqKMlt^OAYpmSvDrB zME2QB)(yQ3b^3c7y7g?6*1tY&e#$9pjAiv;e`i|00c&8+kEE zHymh8(PU<3PRPI4zNfW0J5w_#N;PR4n|N%7!Mi&(FGVO63iqrC-!sRx#L`u767Lqh zRU37#{OSDs{XEMK{hd2^N;*%)H)j|mm6S+nM&wzv4FB>M(3$>Sqe9zSUOzL`u*Lm7 zdH$EbcCq8Vgv7)<9Yqet6U!Y=T`B5sE*hT?ro2&A(9gc{SSLe2AwE7{s4%*}NtL*n zm)P2Emx6Zf-ks-8b0jT4+OSn)qO+8F*HpzbMf@OQ`BVIrjC-4wV^t`h@tTUb^S-&a z>Npx?iaRok$BUFyB1Ii0ibu1nPI)Zd=Q?_{h)UcYpB?TjbuDZ;p`aATKU+*yw4tQ^ z4GTIe-rZXizGq#pD47$vU4O=Xapt7={va(p_UuSYUD^_Ut#s~QYxZZ0E@oXrQN_y(^ca$$k#%UP)akgn;H6f6bsLHmK_YQ+=LGv{4mn6JUDpUVf05<<(%1#8@H+B z9c{%XnRe~^b$>(l1mjW{W14ET z)QNII<%-cRa#xyRr06|{j2!3b-wfNfiK_fA^j!785sRozlNz33Vr5P7=P$a1$Ixg< zR1vZJt&9+;ov_gF99vIp$I^%FHS(60nMC|^DTM}K$-h+>jrczkIL#U?XSB`te9q09 zDekTm&7^bd0o3CR`q{R)lNHQ)md^#_t%xIYu?wcT|0HV{(!^K_sFqLQhYR-?L{eJ>|YCG_`1{6rAf|gIBkV z99zxqe2;&Oqj$WxW1K27qZR$%Q{K<%+rjKx9%ogy@FnTYxgecP!<0Y06+9v$d4?n0 z+nt@AUrN{|meIzGcZIP^yD#RJEzcRm)FqtS#xB{HN9s=H^sc$3{{8tgq#2TX^nekE zLv$0#L{`M2IlZyxqVv1m#9DOM1g)v~o}iTHFrq_Rwz09f)0&-tZ&gy}G(Txt6D6VP zV;XE=)NlId*JmP^m{crHmTzy%x-MUscjDl|vs?D?PPUm?pR2~clY|g4a@$-3wQgI5 zjgF4mX5>g+N%${%%HICm5i&Y@m(QrEF;@V=^{&$;tu5F5aAeKVu&M++)a~KMltkM| zF{|dl!}3~Wk7XfJniQMV{mWZe_-ER>Qnh)IGE~&n)fH7#ny?Eqv;Zu#NE5@E5rx3N;g zyxVomj}fa7CBO?1Aa3(<`MtYNlIknv^1}}wK5Wb|5WCk^){*A)1>4pUcR{aNo5N$F zpM~T;)|S^0e)78V2f6nAd$X;#Vj_<6sVFNqPLNlP`{F~(^o#6MwsA;Z>7$N07Gta9 z5yQ^zq;!{p`^}mh4xt;MC>Z z@2oX%NHj<4$Et;+{^*;w{0Ax2LK($Tz6P6$P5UV!L@3;8Ope15N=EX#^RvJvtCW|L zotYgP9zK{?H)MZj{AZzesFUO?9Nj2!^? zGz&BOoi~BX^HRz=d*~&*w2PKfDDSuD z2habcDZbQd(2X7wcqUo(NV{z_v1|idl=ycW)t-4(&O^2_;x_qlKO*j2YTy?cF)zP#nI@I3SyT<>Qo|v(yyAd%S=6LR4z)v*w4b8dfy8QZH0D8WedOecQ~{d8OQjA znHiZSynV|hB=mja;DLUTgt&?LQ$Vrn`CbW+MCkSEP<;wo1Fs-9`}_m*Ar0 zWPa!7t-Ss1wfC1NteX52VNp?|%!3!?<$0u}N-D1-jBYZB$1j=}pj@HQ?)&+FfP*5Ygf_R-$J2FOUL7Qs~)qLGfjqb{q^E(WlrDDfA@ z*H8JF4x-*0)1+P5*3;9cAZXhVO)1Lf&YeTPMZ_4N4eGEIQyJI)f1b9ol|>8EW6>D* zIX#l^7iIxvd_A2@k3tG@p>o=JbyxtU~QLZlouHK&QHs;Y*cg?1v> zKK*;hH#*(movNOm9_nV8NlP9|mN89-WSoI`W|m~Ug$4D_{H`(CCSuk3bL61s>~Is{ zLSBmmlVQ!pptd}Vf!URQ_5W?9t`;g>MEKzpwq~0dOP@S4G}%*bOp_{JLNuH`dzPpX zx)Ge7OW#h-91s!F1}bSl+V+>OtFOOo5VYWXvnxOdv!Fn*(wxe)nR{U5mhmMO342mLY}<866qp?n56Ukd!f zNg)zAHs_djhQ79hgai@Y&6!3c4sNLLlmz}0vVyI60P`*+)!9zhi9%OVprv`YOyH@8 zFHiTEhQ2jIY1P4@LTH^364Lnk^{XTbTuODk!V4yLcB9+Y>fuD@A$A?1Y`%)%APU&$ zPoIuUO6nuRZ6#lMH-AI5`x}$P?e9o?1dQ*tk#B!H#Ai}w2yCYV{Gv-sSmM}$@4ojgIO03$>{Bx+oLw9;EK>s|0|K@mwiv`4ksqzc@2=j`LF;k?R4l zjRvWUb7N`lv^i&Q+1A!pN$c)2aTOQj>)t?GgC;~m8#KKm_? z+ZNV*WJHzGHMEf{Y-ZlSKMlD!`ZKJigua~rLyw!wQH}3Tpf#zI*OfIP))SnT->@mRV83t z;fSPHPaXfB;Qy<)HzYDL4Qo#=S(5^z|k zZEmccrRclLf%d;ufkh}%{l|;!&jp73T&P3B!kPewc+$YYz*H=CVAVUF3r0gjLz3vG z*tYrNLA3Gk-oCzJi*7mD*}*|UuhY|cS$*P=WzJdQygbq6ac$sYHu}GE#CyeB|NqsV8~)&x*!W*r_B!@Iojy^& z>Hder`2Qu*!?J5|LzIAqrsnK2wTtGUj4Yys&e7JQAzd#gI68XVZUGP>RnC7;e{=Mi zMJjnUW4p}!f%=-`A;{ZRmhZwwTt~qkr0HZx4)pf^`qfDGT=gqE6%6I^4m|De*6ayio_Xb;5Ev;L@21LHV1JjaWA>E z2pAitS|8qVvo3nfuHc{oQKU?yvvHujwrpJ^?duI*J1+d$`RdB@14|kF#^n<`t+m#oRJ#0*xW#>AmqP3ztsBq$&?q0RPZ|kB#w8z}Xg4f(bTj>&(!i*|*nnikB{l z5A;?%;}l40U>$70Z_{zJuMJS_OG%2({;9a*j5_zB`)~EJQrL2blz^@h=NywNS%NlY zVZi5Z04TWNao2S)#wsgEiDw!58X^CKqua1}YS|XNl@P0juo)%zObkI=Ump5rebE|0 z*X7w3qGCIY|CFd#IiU%-sHvr;;JiBmeob zU&MK;kKyzLJ;Afd9zUCk?Qa3(hPI#DpmrC8@xNd*0(#l4;_q_IIwHUrDN5z&}(x2vpFnRB>Kztknqar`HieOgJ66f{%5 zT^3l>=z$C$el7OCM0@qBLlw4Zi$DL_IpAswZz?|_Z>3^ou!!cC7L8E-N1Y$~wn#d^P2x^Uqi z%i=N77)ogW((bZm2in*>v|CaKTD~-Z2s~v*VT!3jtj+EdzWJoC|Cq{4ra?_&9dV^? zTkek+4%kn2f54FwR8UfCK-1vPO#|*30bQBkQ3p!deY!?WCWKwat>F9j?|8r?tG~Al zq4AWoAB?rgEc`NX{it$yERHJz6nW0e>u~p5uZASG5p4T*dttg4xw)qZ65&o~Nuin< z3%}u&VX9$)b(~t994N@9oLhBX8`=27l>W;|^3OQeQ(eEbFukth#(O?=GY1bI+;`eBU9JC^TD0LXbtW(1^hAj!{?_cf zMf@qERYm7aGh7*sI*1<9W2@#u*XjyO{q)~;ShqHS&gIW%mSyhM`QB$d($doPH5-m7 z;D15!SiwatkEy<|k}flY66CILZ{*#htA5>$B>J>^3j*KAQ~~2^0|q--ZRe2sF>pPM zSMN0ll?^k7#3P?M+`Wm2d4(1ur&o3TVpg5$&tz9X>TfvmReIt)812SlC##r%g+CRX zbqmWL^F145C`O2nJMH-yjOFz>`D-2Bzc)0@Vm*nkFd3Xv*B+@6>zc7h@CCM3IPEmfXy32~`LH-luxz&3z+Lh;@T$xJb$a$k&b_ZSH6i6a zn|{njh*?D!hxrR^*v59dEx&z?Se?@n=zpq+qx>`82h-1JXAk^F2d!b~w;R;st72uDHj4x9OwWZ!c<=qt>&>qF zeSz{b__R6rGMNxm`6A@w@#$T!Le84Y6jDEHs!1nwcXywO`AvW9^l1YS381PnFFxIu zpzz{o$o=Xl3A>pA+0|AO6}@bLTEAt{&{5D{Egku1TFIVd;$n6S*j<()GAJ&hTLzLJ z(3I|So8J0Y6yv{wWVQbF>(?`AITswNU#Q6tss(Bgi+J4*)5c_V8TM&puu4J3m@cBq zA);hLX78TY(b0LISyde&yv!|o^}W|Qs_#Gl%!?@ZV=tP)W36-S#FspC03~Ucu8Dh| zWnurGn5v1^oQjFd>yKMRA3TSKh-v?RgI^~{T1Zrjp+?Y{=BVm_lZH0_k>Q?!9QxIL zvK}RM{Q||KLV0(ZQY$BDl1uVIXeyA$nV(M+isss`H;)Cz)~wrqIdGzvTKbzmmMN24GNG_VW{iITf4`FkiS=H|7t>o0uRaq!5I3r;_6 zeAOyy!%x0Zrd;~|%BeHu`Htz=mmh2r|6LQAgcL_J>}+|ghthN{=HZ(h8QQ3@+0C0e z^9w|xesJNv`euTicNvWHb>oi#rQBld%2!|Wg+BT14pa28GVG^qeqBgNN@7`9o|&}MxE?x$(@$WF}nrNrC!ee z3e?jr%BH33!3!lpn+dyrS3@JnV{s_y5Se`A>#ms4a|B#!%D-n2)20*cIMF%Q(wDMK zqw2mms^Z2k3ju=MR$ecHI~d+Z)k?v2MgSG3M#7Ip-#_=ae!0XYs=nd|{2XIuV`CfC zEIGi;eCQ`IuM9h+z(%{pXn_gsZ)+<4#<^$jQ?W(uGRR6e)=&Qyop@+I+JnR`=+-_) z816?k$}Ae@j;SIU7HS}9w%F&`tU1AbVbVdP8b@}h@9PWWzd{ECbF;R7d+`~^Sj)*3AAVfeD+J4P4O!o1;FZ&o}dAcMtmaiHqGaaf6xlM4F$r*KybIfZvv#Zbk?D+O5d5<}u_6 z^}sd0q*9gIeG;~P5~XVRoh`4d;*aAPw}1-e9+f0k;{lV#BKPG^4$mbUqS69_#h{ES zhj%;aI(8f0xN(DNp)@VCNHHrbi%XSB(sk}Gf%&)Y7Y#l_h`n8&tL~2{*pVMbcVzx* z(+PztMjS43fHT5qcCOtjrh&$O+Oe861*TpbtR#1z{@?pvcyGD}7bVt;&{JccIWPUG z2nh>g8BFYz()}q!`u6Qx(ehmT?1znXT)z3?os-lY+_5w=HKhj?obbnU=lnQLb$70*c)}`- zc8&58ha%5u!Z@aiCLATF5vQ~q+KfhUiQ9x^EbWtw$2aW8#ec{7a%eyq#l_EPtfWeF zu}az}t2wBI3!XJ``{S)09M1UH@pkGzci9ex=2Nk5NuS>EBfW! zYZoO`-a(5|?&8Fio6o;DJ&6wSfAth+f`TI>4X#C?dmRQvCXn?LDb)R?*l+xSYM!Fy zTdtltQ0BH^3+6G6xB+g|Iq=wb|Eb&Ex*hTXY~MhDrM{EAQNVVz6OAF;aOJKH3ge*pC zU!8Wh9MO9v=>S*_PRdJUr}dS_u9Z145MIFPUTT?zzh4TaR9L>V08o7(!;X(C?mnu# z$zFKrx5e>>x2EUGt`|yHS7-z@f8iKiRUd?2u6Tr z^q?8HV%&9z)(QH^8!*s=(XQhs!kE`k%8i^l60o#?zc5gX_KD%+Tgp^@T$*uKZtT4n zK}H|jr+XR@+|9VzvGVyr50fz5Sq1H~=Z(EzB#c^Kopu_|Z?~LwT?sa@ER+Mz9hiwm z1c-YYUS3myE~*JQlh3%Mpi&6wwgFh`-s9(od3m2~mN#Y9HFD5S@zHKdRzD9SdFzb% zZP2&+Z?8Tu!2#RY$Dn>o8B+vqI%QE$NMnHAbZOv4}SUomjlTK9b~0Rv6?p^z@l zj_C5=%WA#5PueB7IbE-J`sDOLT}uG_=|*J!YgGg^etayteyiBeZl_|Ig}&XysR9uc zyGWfN;bVkSncaGKTnMZH#A#nbicynYZY0@Fo^l+$5~I_E4Sl~b@o=*^n2rpr^`fE2 z()=G66j{EknQpr}=_IHLLzRJtA6O~|a=S>V5dFXA#e+WEIX!CERG_8e9Q@4#{fy{y zx&{nEIDz{?&o|RTUTGp-C+G!$>cmgBsFXx6=*H3fi(rhwIb@#x@#M)9E%-hNZ^9e- zXTuQ15@e`=am!t+%OU6?NqP#%wbs z@-wKlO%hwfj$6pCF6DHcKVF-#@gG?z2^kQXfoySYaODQq3ZFmUu?+Q6S6Nv(r5*N} z6nyPFpuo*`Szh{%2J6jHm6yQ^M!5CcvMoou#lt$c9#f6lWS`^ih)QPh-fIm~!R2&Z zro(yQl?SI2N)7jsBa`g4Zbmm})4^#QIW%eacV+@qekD!0&W(Npwi(rIMUvK~aM^IW z3?3xpR9pr3;12wIk1U#Ys@7)QW6!Q#uaRw!fsauVDqI`oI= z0`U?~rca+P#8h=59u|K`S}}2O7#|$a3YO<^zJNogdEvr^GwryW7i9pE1i9=eJR5ck zXeLu|Dsa~>4%g9>O3F|CwzS`S*YVq~6?s&oz9!@dp(0PGx!t%C-xYV>eEzgD7rGo2 z|I)6BtZSbc2y@KG+L3hlWK^J*bGl7FfB?6KRnt<)2ao#VVExkOOKrF^2`g9iYFY>MaoA9W}4nVShp~{^sJ-rD*?NtmZdt#*zmq zIr+FWZ8WE?%)L0;W6@mh;>FM^i4MfIKC&($L_)eLFzh7Y*}${+0!o)3Ks=fSgF^TK znjrcSZRaww2gCO5x@aJq&?!7+6~2g0YOB4b(r4fXr2Be69H=|2gTJG6(P59b-0%#M2;bV;*=?peDl2p$Lxf)6&SP>vK;VKK7*CQ)iav_JS-gG9C= z*e+J#n}g_psjiv3)Jk1uzY~(uNM>g{sS?? z>1@phBC64qsr`?G^Y23N{*O8J?>hW{(ZK5s5*rlldLPZqC(E{G9D#-s8kdvr?wn=P zN{G9AHtvBXnEo>fXW%nF!*#RIjC+8p)+c^SFEf2zHtRN42A#_nu6s9*r@al`&T~B5 zI5rXt!VYWEa=|BO#DLwI_$L}&%re>D)IZDx8Gw;zf3e3Cn^-@=SuD5$1MSSmI zD6YMpiJ*re0Fv={HY!7 z05lIQcXgVo zLB%5}*|t2zc$#i~v$n2L|4PSb{ez8{gZW%<1RF{`#@ZpH5uf*g*6T&7w*GpPC+-O! z`4-IJ@4ZJ$wu(o4t~j^e6{T8$GVx&V%Cpd={$;wCCFjuTohqdw=dN{^@KQ8`11qsB z5Gd(AsW--TT!NYf7#%9>e-;&0H<7vmpoS0Dwn7;)l?;O$Bdn;_bCuSWC}{;kx`CRL zlQRp>O%L2_3tVP|LF|l)&vbN8b+F1dX35PJtwKHrThGPE)}Ik$fz$qKZM)YSG--)r z1Y7Gi3jHbfX3ak89Qr4Bj&akyK7h=9odN#-n(%Mp*47-SJ(dbqXkDvCCTY5)ZT2q| z3ExP=93_OuU8Y%(u_pXvd1PBlNy+W`>)1>ciG12LlsNtVl{o=%Elz z4i&&O=R7t&Dxw_)?9h zS8)Gnip@cSgX6l&!qYTP-W1*+i?)1Qs#B~KGuy>{NPsZ`JfluF!1+YS_vcET_4y!v z_?r=28Y5u(hMQ=;nlx-%OoHK$7V*HmNgd-AigfpRefk0v(RI)a< zV>97Su+p`@eI@Y4zeQ|?w*3kRZA!V?otMcD0BqM@wXE(UTqx$QDDhkzFt+G(9XqBJ zWPbZAAqM8==I(lCQs!1j8v%WQP?xC>Taz3N%gnVlW7q;8SHveIn9q&2j*sP#-GB2`9t~(pStP^ois(T(V7^p|-rIYF+Ta{Pe-|KFOfcf~Iu0 zO-9|%6@<|Q?Mlqgb|{xK!<}0X5NM?dEdh1zA^jFb!>wk}4KX?pd;|`ZNSEzQqV@@~ z57)#G2#WIThn>@$Mlf5&0TOnRJ|P8l@IT%dp_=Z_Gihy0PJq!<~gbIXM}@B zZkum;sXK@(T4QZa+SMmOScI<|gf?-miTztdLK$jd*g0?w7C8dS0}LH^fB*x(t`_Lb zMo5^Y;GaMPN0?MuM+5GgtHj6{ZI_z#a-oiApi?AFPDQ``cxKRa-o}o=oJUQ`MAsD& znz@8V{b!c}V5PC!A34GoM@Rv~EhG|>(J*|vP3Ug7+@m3Dh@hh&u)$<(mhLz#$lG2qq9 zzEJEmF;}>i5M0G=UYmCzNpImRw(VDJsB0mV;+U?aQ=TKx5bzyGJi0#m)G_th7B+%M zrk?C_ry4!3;DsIA-UI7CwXj6-GZhbUy`5@1x1zRFq?c)z{>;*T{v=IR`OI@8TlpM! zVZO?1%R`%J*U1kXwpIzeRoCExkJ%AXF4oiJ5=@ z1lQ`9NUJjQe|&ve45$P*vxIhqD}R=Ab>4TVfFSy1x_m=;bYBLrOWNNKGy~sf%1!%v zEGGDhr`~dgYxjeV%7639=duZ$GUZwHhRgVUh&rO|c39&W()9@Ie%8Xx(@%rVMV?j{ zX8B~LI%Ek{)IEI?{MGUBMC0OX?o)>RNkfq4t;-}Q)&)R%e7Taf2pOG84@5HAAAF^Z3uQjOo>(jG>qlNyF*cU<{y0l}SX zC-e=iy*YFa1Q%9!a#4O9J9a75lIFrnw%clhvOl`cV;&zO>bDIwfI6n$>wT}+8 zyBZX@OiQ}h96;W$*WM*kYU}t+*mk?JXjIZW?Vk(C=~`aXGTlE=sD?NTNM(z60?j50 z2RNJx0R{K_1g^$5KuXxP+B0Do%lAu3G z8#7=ZXKwZR$icvg<+=`Y?-vj?Phq3l4+D${v3n$2;-3O%_b`e}asK}MF}P^HkjN`{ zcn$KaiD&r+@s5-oJ)wtbBFIFYf`qY_aDZL`>iL6oxeo_Kn0@!|-Pfbwy#EoC^^xN> zIIOMLVN&@53Hb>&Y%gTlr#2v6T-=3BGz9jWq??dCwI()lx^*|$^gEE20>i>?EtVEe zQF#1$PeTrIDkQ>%Q%m~M!(T3GKb^YV6YVZ3D5TW84zpU{F9U0NomiJI5QUzAJ7Xoj z5J5E@78PyQ%5<9OBnEM^T5`I(ya)_@e>;W?o*6h{>^*V$q18v-%JB#`gu3C+a42@d>g ze*3$hw*Dv5B`uJ@6Qg%}FaInyR;Y0PU*GkAf`O{h3`*xAL^okyY*gK z0lKb|w_cx8L-B+P;EJr?UFCBj?sLnk(YaVdB}dX96>tKtM?^0|*^F z?w*3O@+o(r(-2$^pFUmuV@?2NILY{U*?MHUa!AXMhF(m*Uc0;QdL}YPg9z`Bv=9BZ z&hGk>&|G#+sC?ibfPsJ~*YJZ^x#he4kzy>X&!#YdLgHXWPedFtKWR%~L1SrIhF;r3 z<#M-QzkVsQIoeM3DWE~xH+~(CbAw+Z+>enKox6BE2|4PM+7AqMD4(}Esun%E(g|<4 za)s5;f^Q@9P!twsPHRO|bFaSt^M2j-y{fnVOdn)od<_%4;pk*6Ohye3+$klddyUU_ z!&d0WH(~K!-Pm)a(`{O%q3gkGpS3RABxXjr8gbD>q^~&USBJj_1qPZ1ON2F8-#ofE z;8Xv_MJwvQuMO9pHZ**EIx6?aXQU-mhJOE-)MnzRi@&#LU7QjV%1)#R-ekG&&Us_+ zmehS;>Sh_=B){)#*>jQ7h|^fnRkcF+jMjFS7|Zn|DY+Dq9mUy*$q?NL1Vihx1GK`X zTyssTBiQsC@7lQ((9$7$ylD9Y0$1do6X7_|SBAk7GY8{i=#152?f;xlMhYSP`mU}J z4F*c?lxLe& z+SbZaX^drMn2^gp^;(jb9f`L32QfLf4;C%+u65g`V$miuxe^*RF=n?-#auc zNY!DG|R{57!gHk3 zzlG-N01Heg90*EOM@-@R@!>3nHGeRSY(UH9w-Nx&fq(-N-a!o(wEX5 z`YV8@jm}qx9IN;yL1~-H7V<1L8d4$!26(=yywl^C*?z|K+etYAdV_yUqIk`Y9pkCy z_x9eSUU`$&s~sMDmEPBQcW(yC)hsv`pxIXr7`P@~-6G4m5WK&X-{) zvSfHZb)w6vjlW?11Z2K3%~CKrD7a+vm;sGwxfF=uYO`W@8Y^?%QM5wuE5o?}KgxKg z3?_2p`lZgVRUpPi-0osO}Bg=csQA3{$j|0uOe*lQFGKcKk9;!5|2 zM;#_CB?3VcYi?i@(3G$&h`o+|NPa_KmkR4Mm_-m2Ho&m7&YXd-$pg2zg| zb7F!reub3!C(AEgTYfG%HJg4T%_wP1d3-mUR`u}PFRj~7d=@m!ruQCNyD)&-BwlB< zWA!yGTNz-?f40-Ra>C9Mz80cD!N;@!^g%`BxuqMIgHS(J9QMracoiCYlVLAxA*s7$ zKS-w;6+0%5VR(jEZZt`>5mbq=ACW!jknW+3H7pa8CCXh?x2yj?c``Gi+5NDkecCu! z=Y!f+clYEcetx!|uP{M!I|4T6&&v)(cL)?1Gi=$E8e;B><6-7lR+fC1$_d<%?Q1mn}uW!41VgeN3SU-M1hwt?<|%L)VX8u7~mk|T)PJAggIR1%I#d<$H3|f z(c9w|2~n!I;>>PUhnu$X?;Vd$n_4np!IVCFx1x7jHaKc{4BF&Z)M0>7tJK9obJH9Q z>#ppWLB0voP|-Vq(wXlO$J=v;hU+Th;rekz=PO$aiLo*(sSI3Pn zU5LN?;Vi}O)z_0Hoj;y44n(XLF)ZZAl|Hi44eEU|g zA?YDZs;8D8bxrT?1rEADJO8}8<24KKm8-)pV-kJmDV|>3)p$glSG~!eMN}?k7nzVh#?C&xa8)LHU4<2!FzdP&zop9tsvI|!gP^9L zbMq<9H6Lw=j>oH#zrQ1L%dP_CmalA=3BwlRWPA+MT?OPaVh(-#?pwf0 zwaez2jqgi>3}pJSoTLA;4!w6%xyuyiX$)2vjN-uH}it?RGW)2T4a5^rWG3D~}MtH`X( zB-?jl{!#PU^M}%hYE#pxr;Z%?WFO;Ze*Hrn2HLCtaQ_8EU60x=i!-X*3_CqX80Io3 z8Li=|NmP#b)hV<8E@mqY2y=rg`4)-e>rdB#qLIwg1JTU%g|@1Sg~yn7?K?E2Y~^>( zMJvib_W5PjAX_$#i}}HUA*+Ul1FFD(0A=?PuOYbovEhj!d%QGTyJxrP`s44NuusIzR7b1&MzYu7cG+mlNbZwJ<0 z0k!DwcDwrP*AqF@CsM1NZ5YZtL%6jm@q8d!5;9xtE?qKp&=Gx57B-NY-I<0ljc}jc z&U5jTOQ$^GBx2aS`9y92XdEORw^*u(S9&$I(XN)Y&MWme0!ka6(x2_bF`k;LesRgA zHqi84`xf>^yG#mAALffjdrr_#y3`hf{JSBLdV3);P@X?IF} z{LCAbn_iyMRep0cb(e{5T#ugZ=t7c^ZUZ+n5~}7&DWDlw3=Os_l%$+wm=&f zw6aNrcw+?7(hChZGqop`w^Y6C4M(sH+AW+w6R+79Rc4Q(%78(Ar(&f+uFx(KKi#YF8rJnYH zCQp>N7+%*67t5yDayY@+VyKopl6(m|PvZMg)K_K~fjVuoGF>o5g{P~3zy?Lk+yF`x zc&d&$x@PT`6~&7-a6fx$@*)}l7;z3aC<=V0e;zU${ky+EV*CZ^d=;Ef`!L=|orIhD zcfq;$>dX7lB>Ma4q5U(MDJJ+1y6NBpf&k|=lhlx%jVgrabh(J(5 z_*9)*{UXw0Xs5cy_OYSr32|}qM)?m1KK@?i<__w!?K^(tir=QHiBk1b1|AO%Jq&*S z?u&i<+}T9ceK-dQkn!u3PXg%G^IMmQsiFfzanyRk@5CMBJk z3P7DWhTw|qB;G8N3N)VOaDQbR=}Oi)*h~by*L~*G*4LXDf`dWD^a858n`9>O4Bgj$ zeR@3ZD(yUVLsO!TY+)96Xr&nxanq@Eb3Cx5+x%Ns)dZK>;S?BDjVqk_SzPBP$hYdp z3SX<~2|he$_G2{2Fo|}{R{nIYd4bQUBP)<8H%#s_`C{bCFH+z#duObpxTUlsT~Ao#UR!SEbr?TMFy0lt z8>j;tR}la|>}1s4S@>-dzv}q++Dp!2=Zj6~2Sg^>Cg837oyTNlBQ+o#Sgqutb2GY} z3#YHN_Dwd@d1`lG+{SHef*IC*3&pxjbvx`}5;o=uV48bBk|NaE@UZ6$(xto1989ma zp6+-R2gar}(8@O<7&~YLc~9yOR!YOlU|2MAZ3aOtj<YaigpP^zJJ(ljbW= zv-LUVcq92PXuR#4xssjtwou%#Rezv)V@lz+Aij%zSuift(RiLnSvVwm zSrxjC($bi}#b}TlH;oXA^0#cr`#c1!ZEpD#@?Rv!?}Vkoixhpi<&5bi=LlKPGE8as zo+A&W5ZL9hyx83zu|T4#nEDC}?mC^A9!i8vTk?3 zEv3IwT?h8gWBj@+sV71iSTFl~2SEqYMxZ4YeM*q!8IFzy zpd-wYEtI45e1-*=3G%~=3L~I9texw&mXw<7cMkh= zpEYyo%tz;=bPNoe19vjLPG>tIt*KZ=S+!b>;JPlHo$w@=Eg?ox{Y%#R1WxJr#`29J zE`weg+c__{^*ple`{#H`!)XRT#-%7>l<5SUv-E61&fg0`aTSyKEgd$fq4!TzlfqZ% zT`7tmp9muSchW2Kz2jrBp@YY)wy5+?!X{c&ho5|T$~=fL0ird3H7)dn-~-?^R(9xu z#)Kx0H@Bo=s1ejhECl4b(h0oTiF@Y7q^_~^=UjJ~#mtdilWUe>v|v*UxEt?dkyuHmc-jt0z@5fezrjA>ffxPz|;N|@!4 zelwe>GeY7rr&6ai{9A%QgGy-k%ls)_xi&Ep*7Ub8C|32N8blOJh7rGV99gi9sMJ z{T7tq6I>hYv2Dy_5A{Iyd<3Bxa28LPL;p(p-IqB zvvDF@U`@PM7Ig+wy3dG7HEF!e3C(y2jA?jRL;PodmJv96MO63+9@=i7D#nDuk}-GC z_SW=K3suUsIM{b;#lXq&cr|jpDs-lMX5^I*#^G|Oesm{rEee0_VuO&zBpVSku+JqboEVr zI=A=*hOJ>A4^M~r^SuuYiA#U6CB*4&;JN+GKQND0^ZVY zf!?)tqd!ibzm;fsnzj$NdlLt|IjTMl@3AN-CrP3-JOQS0Y0~_OiShkl0-XaLw&D0{ z$v}Fn%qFBquQltITvj2luww9zcdi7D)E~S*kETsJ(u<-ZinpNDwJhO1dueJd3psdC zBl|nRotS|Au!qpXD=RCnRow(_4+-(#u7M?p!21Y~>GDseet-gjDR&I4B{G!iCSYJv zt$_ygxeq1+8O{l)H}EgN9RAnepU}DL9D*yP$KX>a{)ykSlEMbbw7@86(2F*5z)eLK z9(9r=F-c&TN;rTLUEqd(ajhz>qDxW@33pb~1EMJxhZ7jV$bg|P@~VVM*DrBZUSW;I zmXlF-=ePD&SeJ*Jd=}huVgHwpcYLyrHw*636?+o%i?KIJ-{+6!z4H0OaZXagpNqq} zmwRWliUTG28ZX7Ln)g+cO#ApU&HDIK&5n2;K1@5!nyDxBq*boON0A0>e!xbNUZ zb^5)G_h{UPIN*ZD-(CMhELaGAu$$)LXUso+`g9v(oQvdDnrsXO=%xd@yWZncExe~| z2K)h$55^xa`8D7q5`70TWYuLf!Q&79#2tF|BGRRs{zqZFX%0Gd11y~;snO!m93Jzg zgu&R`qwe^%+j4(fa(^UtWgveUPOF^O5|^Wf_;;C_EIS?Nt_D2dAQEu{f-qrna`IZ$ zHddhv=*QLJ1*%(kY3w?dXH0`7#l3cR;Z4bEGxL&bCpMh$w|?q{>c})p)68e2J`esG z6(zj;aWrf6FI#TU6RkPZHhls;?CiRl+7_QrNM(-4rV1Bkh}t+9Hzr5HUgW3qLPv(h`7c=yIaId zDv2X(Zswo81MhPr9Js`+C1C?b^MlvZq~hfOpZPrvStqnVY-|P%xoA{@_ZY^Jm&dHe z@747Ox@$*MPhqFQi4uAeLA(A|H?zq4)wH_O; z)d1p%6J?254LqG|jqYDMMf6SbGbh+3Q~J30b-zsQ^xGzx7<<*gg8?unIM`78@wOKo z;}XtaA_~Qn734lN{;FQh-WnF=tZHU+7; z9952GSK8l4tbKml?I)P89%LcdR0-krMw7?Y%b)O&D{8s}-qT<2%HXs6f|wCC=g_j}Ne zImVHv3<}=2myb0Iv5z&R>zXZ`6JYG9d_i%FwIso#?Dpj}#6OKM)-CgewQ9K2x!F_m zG{DuSb&;9>?UQd8A3gNa6#sIB?2X?OHZEXtH7Vz{8L>iK;-t8CHa~Vw$+UsF%J!KM znoGkKLzfi{o+w7!`pVMifB5aiB0SW0xw>Mi_8{fUUh2;$e6RMKkovqcV9oQRqj?*VjZQIu$)f6$Hm%*HcjVR_^A@F$0&`SVH32#vI`M~#7Y4w;sX3zaX! zqZn>RJbbu!+YUXlo9);!*V&PsyDeEOf`Y{i4IivG zQ$LO_O1X+elDtLl%nz7%ezQ8T5xbFa?Uj_8m!}Nz9Q-cKs5&N_&$Un$WFeRKU6RZ4 z5c8$?1D3DiN8Yth4^!K$)hCwGKG_Ng*TcQy$RW0Eo-8Z_z5;w2_WK8Q^;q8YJohSE zJl_7vX!|ljU=g^BpgcNN8f0@dE$jlNfHc>8p9)mnDr5sS)VTHrYlQ45_Bm@Q`z^>y zMyloZg6K_yluzoyZ{Ee*4WxHqyPHQa^x=K*^%7)Q8{hnw9{E4iQvaop{vUSiJ-e*8 zc==ljUb8yF(d^Ysou#wj0ur#QQOj)wY8#tIL+;_DhhQs9Q9oyva;4C=fp;}cF8kHU z`EynO84O_=iCuSztNpO%a~?(=XHez@Kg(sEOQfyG7oP31R=molT$-W3eoSO#*|Q_Z z>N>_=H{RK+K1Z3mc8^7dKYHhf*E!(t7>kq+V(MEQDbYTA3aw%I+Jles6(r){w*qS^Qsg5Z@1&Dte~{n_$QJ$vXS8xu!Vdt zL6IJ-F}H1bNwkk}2lzT~_`jT(ya-eqxT*6;9cSjKx~43p6{PgyOYrSJ7pssL-vLg%HOq1dCO3l9X|U8+&C|jke3pge{&vFV&p0e;U12p84wkrYURI zt4LTk&3SyNAj|k9uW^H1y)q*?=H_OfT@Ak~(^62~Iaif#9P|Q13VJbn@2_>8h?L!D zZ3UmCL@+<;rrD-aIgI@%#QQ697Z;e0UuBgpn+LNSCJ*I9WU=<>9_H_(qPD32(Pm)lSW>jPQv2qaxw_ zA!H*%{lcwT^3FC>4Ihg|9M=@$^zUxR32~dD!IO>p9v81`Fd3umb-FQ5lDaujSy917 zbtTA{@5s%y%b)(7k5q}X=&Xo#=<|`E)S|Yxmt8HejcqaQh>zWMGH~4dt%J!k9IqI5 zj)^37-sCHlB|}q1v#%zXXJ%#x&gYLceaMbjohhE2=xw=o0v8-81m|!*pKc>5m3X}WSM11Jw#f-n(eN90!2m@WqUP{(&@Ov* zp?K0cHmy+o$B)|&M9HxSxCowpH;=4)&EHpTjMNL_Ya+CNp2f{wd;KTYvCzmma9O*D zyDkBzT`vA;%x02zZ;Y3<)7Twt6f?i>Q{okrIrj0ROzrok2a=bvotho4g=WgNw+rY_ zYn7#sCQMRj5A^iB*U3F08=-8_o=25I#cSeMU^g07VDpm<;8|AIURqIG33gSpx&gHr zndY=tBP}DddEMv?yN9w&d@aea^VsyGw-$5?s@Zkt-^+; zL3{AQpB#ydbUrRkbzhfrU(x&E*XIo1CeBq%i?VLF&5LS*XXM33FOI-N-8S-LNuFBH}`HkR4>%BPhb zlNNNE&09O`b4-E6?L8rO@Gj81Bd2M`w>!P1I`qDCIyMyu$@#DBTNqvtml0 zC?uts@RsdG{A#m~j#7!~JsYE5_1JX!ly8|squ37%f@_sk1^L6xtRuf@&iH3Jw`vgw zF#i_f?ozG-o5`r_JuW?DrUQclHorbg(~3HDt?tSQ6r&uz$@y0~*k;_RX6js2ZJfi8 zjFs*mUo#G$oU6z*8yU$stfd?2u*e~@l#mhc*$RWl%$)E_<&@zKPOYh;#aDuM2F|kg zItr|OSH_?GHWyj?eIwF0e0g>AwGiIxih9*EW6THW=;D2~9MvDCkKNmSu7R5?=vAOe zL5>CQow@lvuFW>8+G@X6l%M-FcwZOpn>%lIbkJ_1a#>XAc~XpP@tkYC`SFt{Riz#T z7~mt#ihs8<4)f*P49JPB3_D(%sI07Mc^Z&#wfHuY+U=S)A)@!^Mh^v(l+*LBSJJg5co_u~#&PM&Nn<`fpbn){q4iPYHu6c6Oj>A>80Z z!?9g{5ib(W;%l4rwXfT`HfW|AWliSWxSLX*y#NkiuV*`3wI@riRe6QDXR-v_OvR{1 zEC+o0B*82#{f%{bX1zF0WQEi|s95*&f#>-@FnBfJyD%0|d(!aRw6g!SvWNh)S-KR>LU+dG=>Xhs{IR4)$_{uXZEp4jJ|wub8;k6-NJW)*W+ z&vwbQ{rf=`W+z@+p=!D#sNDH2?C+buk-1Ytr<$-^v)B6$Ha|&?XXhM`C*EqY!@__1 zkvp+TcLnIZ9y92A7qP}OueWX6V7gO)xv>0{Gne?x%Tsp2`R`TFi8xH1Mtt;uDbX=_ ze}VC=`RcGY>&2YYNiuI>b#5f(NH?^Frnf#hw%XmfLP}Ska5!Pi^GivdWb^~o`G(?L zAGs>M=giX1j&@kp!s@1g{*IgLZ~C}@v_*Xg9{qBX&f3*%G2GR5$0H0_3@_{KCOMxm zf`O-Z?k^;FBxyO_llH%Tbh+f*TD0%lN>C!TtBld>o~1>rYkywd&(zKQTJZMXm6D!u zSlQW@8CUtBik;F+0rsMQ8XP+c8VkK$y9KjnOKD@fs&Y)b3KZ=`r(GvKjihB{rJHf3 zuj#gT<`}8mA${_R=K9r!Ua=4c&wgLe&s7C>^#c}Dqp__K^-;+jGb;geIjOG=+xk9C zPUt4LjQ5mlS$a|{tZi9ym*$?Uurg!gX20pL#LOkJ(98F}tsvlf!r1lNqWBd$SGB2i z{TR`8y~mDEJKh)B4%*ZED=N&5SecFCT-$jHU{Adkbo@Yff7%SY-8OjQ$63`XwX(Fy z&tmp_ov^5_&bjLrq;^w6Z_kp7 zrnb+xa?RZj$-SE|)w}+N?_TF%&pC%h-m!-0=Z-=`LYLruDl5MGC!gm$g!zFrE!i|l zc;6kcCvMD5={IlUf@EZ5>%XQ7Wn*Lmjo}uRCW_})Whb2J_cx>|TNN)%_fJMJhN!hW zEH{&0C0&Uyr50$?n&n|Vg6%16h^t@ zuw$bW6m*RZl7uCzC6`ySXntKQ+s@i#8XQP}x9InfnAfR7+kTbmSA`YDnr%g7 z5j`t+C0!zmKT`wD-Gqo~1mqI_K94}rhIGOHCcm34+ zw8JL@cxK9(Cnu!#jU91ZuZ+2u`|RkQ-P&6AQ-|XmzR&z*J=q#f(X*W3SOGf9cc%G& z)HjjHshzp7jpWv@^r8i`;_03eXEw*aI(c2);XL}Tq;R$NXr^kab9Fn?MdPS4nwbX0 z>WUZV%a;dRvoF#$u6#G5_Rq4M_8a(xa|>tO=TmQn&CI>Z?9)%}Es`XCUM#J; zQ2d=%?(&kA_UuHrCUGi`FZ9HCTv0XZQtc%dw0pudH`elPb*`4ZmE|mJe%nF>@gO59 zcf$=O5zqSL@m*Sj3JQ%pGoD|_Ehj3+Mc=%MH=O?)>6JSEq}=AY*R$DWm$Xa19&N9Z zzR2zs!un4vI!8LmAGuc;ql(U)&r*5}dU$l0q zew@nup_b2AT0$pDDiLw@u#?Xv-|#xCbk{dO?AFw@uZ1caxE-WcR6e(#_N`%Lu^E+@ zxk{td9LVnXEzEaZ>s0c;)@e8T;G~vCiI>9-PX2aXd(Fc0y*p~9`6VSMw0e8r4f@tG z!0L!PO^iyYZt|a=8jaC*u_=)$Y_hPpXWa4j!%q(^W`;+@wXu*Dmwt4q6T0iXUFWB8@%u zoV324MXA_a!u3@OljjXGgL#J6+Lzkn}AB@|MjGT@15h}F))xIR2^hGJvZ+t3&XTld;=jIRhjGH2)Jk(%j+|fcd+B#;M&NFczb&7zRBzyE+W<;(V!L z6GlyHa#(W4vJaBZ<)t`MXtor4PZrs~>RD}F_X-QkP9gjC#b537n-q_4R%;obWS)>p zmLlQXNzg=GIf}efF)zbtRd01QfOEHIfwKR0t@f%ZxBk#kvA0qt&$iFzD=Dn)K86#o zM(;X*EqX9hWaymVn*?oV?S$(IL5rdhwi6;ZCR0XMql4S~)IeSlEPcPWP z)az%LLx1+9t{Sbqy~9BJIVVxuj)gsQ358OH>9_m0+b~O?l#SpDGM3BrnWq<4Fddeo zYfX!pl2ogxsj2@Psba8pot;UV_fE3muaR-yp~uEVQuXegoXC7B?I4vo8I4a4GBaQ-P-F}cdmszrZyZ!F)Q3vx^i7<#Upn;G3A$u zw8Go&GzvP`(yWFGHR{|6p6q^q*@?(Hu?l?2(lGoS@`G)h z?;dw*mW6!hOXe12|0&2cY)g`)E(P7cYOhu3^?`J4=bmi#9ChV|WES{HhvEKOUfp@8 zg%8U%#zc};m3q&Z&%|Oq>`DVOt#hHNz9b*3>#H`ialYVw@~tGLcGx;@GMuNHOkbx* zG2yBBb^HEc-4@KPSz_Qqy)Guu)Y6XC>C3)gN440=Tb2i|D?LfbhSV5enX@>eq>J|$iA zV($)D!qbS=hV{7sJcw?ao(WDlbFaKLEpggEV7zW*J(=r% zwPj$xV=?=8#rTBpDPp3AlU>m^FLcW!CYC!JT`g<%8Kn8z2hyJg=;wQqUT)CsE*$yL zdC4JYM&nP6Z0c)=zaNEUQdV#zo5XtVw-}Rq`=7c|pinLwhDLka{%p~?Jij-EdTUpwhy$hdM3a_l{*+335NCm{QF^VILv@pfmj5Ra2ad)5K|8T}AOhW;3te2F zjCVDd>HoboCUOQ=MP%-`X1v>AN}G}LTu;??gU^0zV^)T$t1I0Ue~qqdMJTTS{Y9Ox zu_PjkeKRUH_2I4O*B*_5GcP(UcxNZC_$IHDi*&EpPWGfTSE=UbmH=-kod0EKCIK(S4!!;W2|mTxCN3_g~q@+p`!65+AUa&%ny@Mzhg zBTS;|$X>mIpgOB<$kI!hVqwk}?^K%DOxCH0i!T+Q{pv%PmYhD83Y4sJ)H=ylV;`?s zL!HRe_ynV~%B#*o()vUF_s1ib7YaF9fMpODJp1_(mGinHqQ)12^n$|cLt=BIj+{xz zeTY&dvMSZN$u#A0zVWuF0U&=@E?(>yvzNZKAV&>NDrs()*}`kwt~XMW>k0AWbEKlY%^|_VO`Y_v zX-Gn)UL5@4m2@bPRNGmdI_FniP4^0cT&P<#Hy2l3Orl*V*I*J$*GNX%6EP!l8Y^3m zm8JhXya&GPYQ|Y*@*_sAjlNx}LZ(#lfJep`pE6y%;GU=zu0GZ>$k5CVR5UvP-jAcQX!{nTAS`fyWwi1FlB_LB`p!j7p!n{zFdxWfM>Su zzDGK~>gpOzT+Nbn0fgy%x>pFyvf)YLT8vF-4!PPefE~lx)$2wd8-iqND^5*QmCV+Z z%(hbWa7>G=D!(LL-lO!F>FVj7bPiJ7E;k6kS)vN9L#fycuFgO175}Nv+ilni9+9cW z=XR^gaQ{*-T2BKlCVcTho%NrMm8|KmzY{-1mNX?($e15k|GSkWkTg`@d~9)d%MY*d zEzY20KhjiSf7r&LQ$b#t(OQsKlX$zFa7P(!3(C>9w4m2~N$Eys>np3Q#zrzO;Ipq` z=M7G~02@zs4n2}|SXB}(KX3!+^UtKZ^p;;Zrk!Uy)Q~$qJoc@Ni@Xg%>-8v9!nFlT(Nbi?gTq|MU zEGql2dJ|UI7sa62IOXM*bFA;1MD{C#=d>ci;P%`28aDVf@+0ZUVcI&rt-^hNZva8Y zB3OVH#m0|Iuiv}L+qh8@<7T@AE}3+(mA6J;nn4k|@pCs{{H1QZR+MT)?{d+{I9L?FCc&-m){ByPrHHid@UT#-|3X^EY>sZM;|C zv40h~bh0u9VdY9UNq+^|1jCw7aq1Zkk8FSSq`!G{cQYXXfC~H#b2&ewrYFkdL(gpt zTV)I4d&xIN%4MAi;_KUZ0m*OWxDaHd#8;oj|JUU!f~RwpL-qeYy1g`73p%Aep+tg- zum6^~|6AfF_JP|V!Pe&LI+}6*KepgT*#FQN5^)`b!B*7BaM*W zAt-0*&EG&w7?MTt&X}eq)L$heI2NlEIq(6XiV1|w523CJ^)nEbKE91%P7REVdV#|Y z%%5bS39YNEJ4D}NWo1S5)e+pb;QofHn_uH7Az_WqVsgw=Vcdb0jV)zJrnoD=HUd3}+6iV6xmPylZHfY#nbj0SI|8Duzl z@)DTEh<0j1HPFsnPR_vKEd)>B5=_FF5Js;fE7xW8^wy!do@hD*Q+re$7w((j!zX0) z&=vU2G?zlX2DbxsQbM~LY$8Nsy+l=Wikc!we&mQjZ3>Ens3`wSj^X=cK@b{*#l&!d zF?ckfzT)>Ev8I54SWHP7;|7T#8Hg(sSAruQ^i&r#3#{caudEa&6EvM4Lfn(w)8AWt zcL!h+1Z|e%36U;@%5ztls25uyCT$4GM~qb{fZISRRh>8859|^*tAaUOF+mU$78b@h zE(AsZaDJ!~M7yApQv@4Ck%J}V?eH*V2z^wn3FM}{Ql>z>V5$VuM}_=C|rVU;}=dV+4sk<~Ln5#h_IT&JF|g(gU^jyM6THOUxYyL;N)wbZ`*a zyofILK`Vl!ktE8Wq3^th0M-BtJTzyn6(>VZG}WWX1val%FlBW0UWc3w2F4*G$xHk) zMlmM)!7LAA6O71-g$&7ObWVVbEFPPmSXxM4?Nhi3%vV~cL?vbaw49X zThIaXD2aigA>xb?`tPGZiil2A4EriUKz7@v%z7s$#i8Am1R=y^Y*lQ< zmn&_UD~1;5cQR8*LJ|{igbokx84o54{655pnx-iZ2q8BEhBBkw%>S7Zw9C7l*-mJF zgV^?>QQNy{fT7lClE(~(EC$JJc97$O6fs2)g5AT70w+(LASm^4g*P&a#hqSYS7NG` zAjF;=r+^W{WF9dtMd$*6^^zEsBi;x-?kFt2HtEc{25JjA6BCmt*S*ATM|Bam9Y!1T zLqPumM#>4wUTo>lBAy;qg9_lL08?)w?z6Cp4x1KdDBev6UB*~)OS8@if)qmw3XbxS zu4N+B)xEsD6r`jcgV2$Y)pch%c#EI`Y;0Hh!&)#K8y|Y;uR91Hhqo9yoIFN{25J9p z(^k;h5d3k{OFycylZrR{fFlKGq>IcnO!M^MFE-8(#Hc0S^iF{bex(6~oNU z&pMoIPzbU@)%@F;y%-lr!iFa7Tar@Z&&D^eBVh1f^W96r9w}JB(dq8y{xl;@*if9{ z(9J&Bi=ZW_JhOMbxb|yi#C?O#My_@4-KsmH!zjOzfYVb(AlcQh< zCLmnXGz10>LUJ$O(J;4@SZFYdchH(&w!FTm*2cSU|9%w=E8#;$@DAe`eaRC zz_nNAH$WMKd|*xwO&?Ejv(#u#KiN`(o)vpnVA{M z%a?Zw3JMO4Q&Llha+Q5ZC%qV#S60F| zlaoAo^5m7}I?bjRB_$CFq+F!p;3ZhSMj0OvB+r<~U4<3WxW{k|i!9nj7zrd0(hG#Egveo z=!;I{><+_V;WiV#y`-eEg@rfQLSz#{8(cHnpCOKj$;&(HQ0&s-GCJolJ3k*28@mNm zaTT?-b^-%($<5rR)efw9C3>zBB0b#QOKWSdN2K233OOSxI@u(Zs3a@orpiM0dv4An zI5@abmR(0jXIg}so<5Q*RwB0ks-yF6kIfGrJdndH7c8u;n^^mHl9HBVOY{v6Zp&7m z;Ay-gnxew~Oe$6}^`Q8Hf%cODyB?Bct7C!BC!GI$m+NdF1F;-2*Rz*Wx$}H@&zaO=R8(}j7H@**K!_PNwX_IsBb}R@8Y^J0Ab_^~<0fSa0|HCucbGA+J; zf18qGy=V{nkSzkxDaT}0RZ>%jT`hSPdMGR#@(6VGnDt0ad{ z-)P*%w6?ZZXTUSFpO>TfWI)-z^8Q+~qpW0JtXFhXRK}l0)4)p~JXoKwN#8uL)F}HW zZ0N|yh~JJ`EEl+pxG}>Vt;BX#RFuPWtDEynOdsz^N=iCFPfsc)CU)c0k-*^K*o1^~ z!;{aTFmM?DDkxVP@N^$Im~#xJ2gCQ z87$3!8lhUbbLY-dJn6x>W8vZ91|}vKY;EUt#pa^(8T`ta z&CSoikA>Nq%d-W6u!nMNY^)BFfu*9iObrb3V%*A%vIXzO3aXiyoH8x?BlY>q7tQ)Z zq{JCuWL%!rDgCk8%xsFaGn&Hhh2MP<(iHW0LbiEeE zrM>!W{1Q}xRq@a4Bro;TY69dpI^LsbuZKfqMMDdjl;L2k+KJbEf-+EaKZ*6BSjpKz;x|II#x?i ztZdz}LlV|PpjP6wlZczhUD&OU(0Pf^vN2H=Y%eV(VUjNRwU&A#V>4nHl3%?11%-w6 zZEZVa>vzhNo#p3$0*(kAqdSOr6gO|I6#nP7$+HR!O=q~c9{T$q+Pilze{=m&8k*02 zeGEvfaA_IvUr;=vL7MdY&mW5gDS~3UuUk_^>T=m zOJFlAZa(V$g;6_zeKmBF1{xmtiaY`87x7dT(9qIim0`6nT)DDG{pQWHe0+~#dEk+% zgi@dR`o_L_vz6-kc4*t$s;ft@)#JnYi(^E6&JVd-o1NRNf-|gt#llF{4PfA z85tNz;A*vgi_gYg5mjO%e|bvnAwehPv|n|54PWTJN|h8J@rAf8*6=2nPu#k7>n(Hh z18ySbM=2>Ee7pNlJ@sYqhHUuNY^x4}_bZ=xzM+`nJTz?OLDids4pbh_`NK zpRlMX9q#zujZ;VI=%iFtDPUIRH8oF@a+H^s*Z1`Jz|LKelKN!Acb$^#Bs23d0Rc+A zOiCEMX?r6hqgy;wo7yCOT3S@zBqSW?=fD3|jV72ofDvp_qmJSSFtO(W`669$u|HFz zqvBRpnT@tt;L^inVTf(wQyt36xYpsLea6}9h+J+N7+hWpVezUPpWC@-kCkAJUgqul z_iucN^clyY2-Hu)jy{ezPW<`=tMc*I`Sa&X16#}DI=8dKVJ%ojzlE6W)~)9g8U?md zAXbneIWB#OaM;f&%I7j%c5S#a=htWZ%*Bn3*{P_g!nS9@6ic2z?j(Bf7efspYrQhhMKm=(=pG(;<992aW^Ap3E zM~@!$bIn0oiYIeExmhqfyWQj{71gJak++St+3Kl(@59xiAqcJ^a4G?gDtPOrQgj0m z0a`=}LgK}hm8xE$mtU{$=bv>Dft%`^nwqly@Zp1K!ZIrf+Fn1fbS`e5KXU>`4-t;+ zrc2n`FF7>FW*uM*U>VJKTNM=-4?fJ^*c%rjRZ;{;HecFQ4>F<(ZDnO;S#b}Bopnap zgzXVjiI%H)RJ*q35+>rVP}6R#-M)Rh`QJs0tlZqHkDg4@gcdO_35nN3%%SW|O-<#f zrP{T3Z!jX}~x4_wTuI z221ra#r>I%?%j^h$KscbW`KeOQ4n*lqKCw>sUfZs-b)6<0&8F0do-{CO7aCJq-jp!WX%jaY3 zZ{4{g5ixqUeZUPdJ6wBgVxn|f*{y7K3q*U^@i2b}RFcV^ot>u-g@mvK$(VFx?ShH1 z6hfdoHfHq9$A?i+kO~ppyLJ;Cnvuy#DTGkCfKx~I5RNAM3K<0GjgZ2zM6Y>B0*^|h(>$w}F~Myym#gvj_T_ob*GZx^DJ*bb7B zZGA5FC?bL`UoO7gGHUW&Vw73+f@DyeS#?{)+uIf=!dkw$~ zA0*1hL`1q1RXlQY&yhINKEARixWk0+Nz6{X9AXy;j0Luxz>`H2)yo~luwkG;fdvsa zGfQu5IDmAPF*zW(frtV+bImS6MEi;j|5kCg^mI<(5oZ9d#y$RG{oomH3r_{yXzmDj z4889nv_5v~)LsNUvaS5~p{hH=Wj+7?bs88RE~~9It5nJJ@smtwynX9dX=0Cu4#lf) z!!vVpUw{y0fZ4*nIT!J}&1>f^B#6A9`1nN3@ng&3?p|FzffH9zTi7q~+DQyq5^@hB zN;eBHxQd@39Oe;~ksZDyFKW@KaC3x839`f=HZ4EcWKm>Jw)6RDd)%IXU4u1okcSQtjKkWlO?dCuZq~EMC)d zz!2~QpeYgvlvbx_W&(E11uNz?ob4|);JIUMt<>{L*`LWETOGc&thbjQSpocCqbO-( zcq3k5VzL)@1FJ^ZU88Jda0o?65Pd}{Bo6(W8CW5%qF9Uc(MJ+#|ER{%14oatESMG0 z-W%fj7fvQnQos{Wr_iWQMdHSBG?DIN&u_|BN2;TZETgQvT>q=wKNC38I8s2$&k?M1 z;8)vf+1a+pqRwy4!oIi>d$QeMihLu}v;$Ub^H(kBmT4b3m+RymGRo^PyA;WJ?pes+ zzgH(avk%Z+b?Hf;Ro{3JPlPGA?Eg>hF?~OH;jF-hwLq57>%M8nf4;XD-u|D^_`<-S zqvnWuh_4srI;G{tWG}$p0502OQb^U=9Gb@=#SP7i)XR0p3EI%OOVE>IK5?;|K;HGMrk>zbOA1Z~-jVkaG&d zPT-PXK$V_0wu*SX6sC+x`t?EvJSKd`0||>&-7nqU-M|FgtMx)NQ-gyk;97nR59c!Y z-s1|XtFPbm=wqM43ZO{%)4Mgp-%R*oGcxK2T@V4na8DIDtr15*?IMI6>PALbTxLRh zql$~WqjBrKG?B0ZV%cFAAO;Ea&cFG zyiUfA--W%a`+<7~lbaKCCr~Lk2Qz*oI}(YdhldBh{q#WCYLihmoDDl*gCp73QK9+* z0I^@8!teEKuS@jKWT<0m`<2rnQ3CtY_;has9M=!9VR-`B%X7l6*eCAmnLfzi~}`4txOae52%f7Z*y+ie0T+q^C<^x@rV zUFI_pD3`D;#1Q{p^k@6)&`{3tMbs_|cpm+bv9Yu3hj7rxE1bnV`Zp1VEH68tFvu}x zk~lP^_p7&r9&xNy&S`j3a3&Sp@)bFI_5s+pqTju%i<`%F9JpvvV|yaNP%FLL5$Y@N zAD$(wx;o9@wo$>l-rj$p8asO-+oQ8FRlEqd5&3IomkU83ftOxR+TR^vCh*z9rk=Z8 zKY&%gO;5M8Yu)e>X>8kRTAzYI>IWoM#qI2J3kxN9jz9Y71{U<*!H(Uk%Qv9!n$PBI z!~FH@S2+cRhaDa2!M@l{AA!$yciRwG5|iw;soVze#1F`Le+GW3!LeJ$I$JGO1;{sn zBzv#jASWk(3mmuE$Yw#eHYqigC=|>%^zPrc?>6dxt$%-!ZM>7mXSaUAhVJg?!CDTx zkRWQDlWk4;`0-;h*GeDQ=06N=AwjZ<`w0_ucIYYRMVgqE)zlq)o^V#y&1d@ZYQO+? z0CFfjyt$IQUX;P*0%|r_yIEb3R8m4u55*bYk}Wkjk_eK$BO)T~={pf#0~{+<(g+}S z&q$*i?&d3YHkc|!IJAl?9*}AVFiA`3>z_oO^2o$luofYovZ=1UYXtNjayuN!k*HAs zn3GUc3@GH>K+Q&yZk1Zl8kw4YB_eZ#OofH)7aGSVC%8NjSADyfU&5XqJRMjv+ z8SCfIFWyk1F9lNE?X0#DXLx&EQA*RnrnnDfk=q$Jy1L0@SP>ap5Q+5F_-#T70Bo?e z>RMWc@Mb}XriijhLxbg);iUBRa?}LVmL|;qZECVDKI2_xt}8bKgM#u4sV^u3(Cf!O zG%zr@@y@EHwUzh_$LU>`6i81rwT?)bnQ@{}@d&B2oi-H_0M*CbDYXcvhSl+PnLWOD z|NeqPcI$8p-F9gmo#VtVxLZyyPbROR@UtO}aZfhWkR|`iAQ~ZClaI@4ii(eLpfqO+ zzivcRn!C2sxI3oq7g+bAiry0B;OXTeL-riM{rzt?gB3+P}w=fuaUUsq6ZJYiv?dWp{Vf z_+)`ytLO&eX@q~;K@o?eDiC=*I*6gubF76HXigFR!|` zwvm^{$B9)`H`&XdwgoBof4c6cPPS=%L4E zWs$-9_xPgf^#HdFWb1qTJiPW}CTXBSruip9>i-3_bYTP5hu?kXFE^pZAR2_Ui5eDJ@o&)~3KhJX*Ckcf==o7K9|Bu z00Zui_N05A=`1b13mERuDnBqtU^o$(-IAmtTf=2{U|ZvnCcB6c>pX3Gc4=v8=e~VG z!4c@L`2h|{^U*d;$@B2=E=ypY>;;#p5D5Bd%@tpI>ySni>TiAKvj;iQ$1A$HL(~_b)zQ6 z5nfVUObbfuNGszeK=<45Z+=Xp@5h`p5_59+ilFbtkzH(U?*$%S>I2l&-Z?orYQ7W~ z4_@-2`3Q3lQ$TnGQRTb~gMvTD$Gywx9QOisv&so#+LdrU@+-*uMD>sUH1%QLwr5or z7Twt}(!uA9I5y^omC4Y|RdkZocXjQR_8&4~mp%kn3OF=GptA?6SC+T>d?;xMTGXoa zTyl05RNU`W)}o-KQQ%2pj`lMpRn-|@Sz<#)vf(swqZoW2EUgC)9pcg_HtetNLJCBf z8tK=)KN;{;Ldxe}C#q6{#w&m@(VkbUc82U7#o5yw96(abQzi(U1t<{7yxf4%4hMv% zSk#y+_s~W74kb8XT-R1sh_)r3{tCU!AK-085yh7E6mgsxr?=t?BqLXU>1RNLktL{7 zp!4O+mp`*xwIqSk?vTjpJ8|N~K&!Hx+yRKK^$7S1*iSP#I6CS(i^%x9qo@Uh-L_^1 z=fQdB?%n>rg&kLv2yX=OkGv*Z;D?uGWh4G9u&bt78(uLe{lGkNrz!0i@yV7Hh~5w; zo)P}@`7lr}+r(A08NGv&ZEn+vsO!1ks>GX&c+nlV53K>?XVESusi@ePlIexs1Oztx z!_$GIbTdXZeZV*F!$jZW3mrB|t~c-t4;L9K~>cgRN#fFZ~vVk2^`?? zjtre0P%)Yp*b(4XEY}ZSOcYZ%%oBH?e*2A^AEjNDG>xZdJyi3hMDPsftfv`I0P!&~ zi~!Oc$eKC95UY|*JPV*Q!F20TG5m}mUtfR2 zQYUQ2sR&e0{fby{a@u+x{USf1#{xVvs<2Qtk};rcE3m4mDPLTWO-=uPI^ick%?)=9 z`7=dlW*)`@gw6=(cH2@T4G0@k(WrJSv!G1_av3qRnk2`9_N}Lo&CUP2h@@pNKe4|@ z6d%AjoZ{sr?_H{~Lyrir{!LiB+#ZKL7cXAqxR!9z^2-2Ytef-GFGLUJ>!aLgc>M&! zlF+@@jO;8aX*YVgG9ysW+KF~iYll_sYR1^@k2WE!e(>?utISki-`cP$MH0u$fHplt zO$)xoi2`u^iFod(DI2lFXA`3=?RHcYPlElu2=4MeL@|d=ZYnE#v}!r-gAmE(%a_d! za~~)F;Er5+cI9SojjEPb53kkpNR{C2G;Be;q0Mrm#6@Jo2>6D+dR2aGO6Vov(qBO{8Ub(Lhv21N>Naz* zFjz&F{U>VFJ&N|6=}bVCzi=fjZd=~9`V#Mo2g$iZK87XcAHp9tlaUL7-ifO(Mwhed zF35idgQtepbdbOQL!jls9c)1|=xM%#u0wvyfr_w+hQEb$4|6u9I3BJSNJi_6Q5oSdY{nmDq> z%=<{FsHrJd3pOI-BZq_E9w1?0W82-k+>(n1*4E+alxL{TY;513Pfs41>-f+0Y}vp0)_Ri@8g2;t z{X4YxuU^eOFp$OObQcdiA3M8n;a4~(w%!Urc?SjtZh`%nAJn_g$`|J5VEYchZ=t-& z@A7vsEd3kdD^8x&@92Jn2nxL?FB5>oZtAA!@+gkd;R15{V_1~oHZg{&q>#MhKAA_|VnM@1V5z5+kVCyD?<2Rt2 z5jISCViJ-Q0pH@f-H0~0yu3WaEnB4hk2r5HM|z^kHZsoO#R&6Hq+)ZtD0ZY5P-SOl zqeU*TYC@SUs4ChUNRRE6-YRCVpIPalAv+(Q(G@sE7(3_XGkpvp649lQJpB`t?)1fQ z{CfyeA%WbVOs}hPZ_ljAgvMp5d-qP`I-h`R|9b}?6Vq1opdua$pI`76 zd8Bje770AJxW4{yjL6qPD0|$82BfBGIvQf+^5$KS?ODye17ut4!Bd4q>ru0fEXba3 zI}Ov}t(yRg6JU_}LbqLEp^!E0tJ8gQY(W*3m7mZtswd(JRQ^9@o+_^p7 zcAA0D89aS2F43X*`mC@}GSU(WHurWKoT_8THUSfgoDp^fnf-5YK-ab-e#CSlV6OPh=hbp+k*47r?mAW4vhQs*=M<$?Ji5dyl zMqgjS{xf}1tT==Se}DfjBem)lJk93)g=>5Y6+t4>V>)r7rX#Ij<1uFDK+*9t)&Rgi zzj2{Q3i(+zD=Thjs~kCfUTvpdrhQGgF%8lc&Hem)w{Jm%+Zi4n>o3k^7Y`yTN5W;3 zSd7vJUO=(%mALbI-Upj@Tw_Pw%dX2}2cJn>>2=X>sp!&0WKqd3T8sJ z4<8Xg6iC5X@22VG-H%R8)NzTf9)OSa21P$ze{sgcNq0da0NA93o$83-5qf%Gw7wZ+ zcT|abq6JA-c0Wv2x8**>y+qR|QlPHs#TjH?zoFqFqRa-;5`dGdye%L}zrM^N}A01Hy~-VsT!Wb)U}8TL0?GKdhytHS?NQFXM)sippbf)03m~iG#KuF))G$i>JGZ2Wj(g zQ#s>nG(6bb3#>t%?I$9?GW6&M@KX z*4dyhVGkTTzujb4k-i8k*>2nt13P=wX=lKZXy7Veni!>{f^^X{**e6d$s0AbMsL4O< zt)m}`baMmt@}Wn3Wz4|Ebx6qe*R9h;v>7wLb&Jo%pDgYR-r9dRyRLNh>YdWKkCc~( zm-h!g_wdFbgXwkj*JYr{O{C3eZhfQ$tT8wqY0(38a>R(q0=R;1V6?)Ydsf-#A|>R3 z+e%#5v&4Uxpq%L!8VY2HC3m(MyAje07q4IUy)uE$2tYqR+a?}GM$%(a2CWFg4O}5` zC`6o(c&;?1O@N67wa)n2uTqg7*RdhiAq$shJy**G7z7H@JcBOez9|318%S&b$onm&Fv zMy`>;x}ppVATmP^IQk+}a*_D)n z0*4kiBBuuwLZCEq%F2V5t}w1d$1Gwi#*-&^V2+EZB4CMNzL3_O1rl6SBdesW{D0Vc z?{}{IzkmFNLWCwIvs5Zug={4mMWsPjDMAP#nQ3T9A*+liAsHpvyGT|NvSmy5&idXS zI*;Rf{RN*NKG)|wuH*XQeL8u)p3ld)-*4*|5TlTveeoi{ML*&+HaB^A7&E#SEXdH1k3W<~@ne$pV^iVvw@`3_1P3zl zqg!({RaX$Q#^#UC4+@N63JNL9iorSCd}APCyfN(4DW3}ocpG;~vFi#=2Pw)SO4JGR z#c${wFkCv2JDFge@ge6e&|&4{$Je46rcl8BqH?#*Kfjkl3aBD8GgHqBk^KZ=8M3N65?|W^(DF0Nu;$aTzKPb5Cg8Fb#Ou_P!%a*} zPyz-9TlI*n%uG@r2GI>bJBo;Wy{EZEc!tsmPf{qA8;uLF-ES=|vKG=%vSM}scf`_s zZ&EB_hHx9;{LYEGdN5A=0{V*OdKE;?h=d<0B@%U3OS0bQe=u(FmG?nZR+el$*mIe` zeJ{bA*pai8kDeMleeW2BlR^{-aCtZl*1gk0V@4Wbh^B%bmsVA&sHuI8nl!_r6tWI6 zhxQ(lN&L7}6NKi=7(@zxe{C|-_g$9e+6;gEgIMZ!&~iNd1U4JqDWNoo;femlG0n7l zlTj-<&FSf{Iy&|pc#66ivV8~{oGU+qWjKprDP=T&@9c-N2RM>bMHdDKX0h5!L__5P zwM}z(2ot~uNzCC=7vBwpcch4WaSg$ln@`8|p!HY{9wg#C%5SSxspJ_D8b-hm|1nl_ zRmRGwgXZSDNpXyqRNB8!4Hd& z^0G2Uj5SCb#Uf*exVxim$MQJ_cvyKI2Zwi+OON=^beqml%Tv2I=1%7f^NNVzbvvj+ z;FUX-nq0#1^wh94wtQ5M1q_YD_qd+kpD|HDD=B3KMFGLXff=N#v+MCz zw}gtDJe;4#kAF3oMtlZ-liimhg(>ZiF>-0`((uxP{Hs^5(m8gMexN#rWodi*5o}oU z1H*39S){P^9)t#wphN9}=d4D9-Glc8sFCe-=F*7LwYV=|j$js+Yn@;Kcq23lCQz1S zML)ig!v(|x8oR5r!E-~t`7^_A=i-Q$d^i4VP9z`)Jw(3Nx+N zKRpn_nC7cROxGuC&zLr6NvbWy{A*+7k9&9LJ9hm4hf>G7&WH}OO&a{dPV+`q_a0@!6?F72wXQ~C8 zRo38sCr6G{-3p^+42weX?D|a&CM9YQ0la~CJb1uBl!c)49zA+QfN{`B*qRWytz~7s zi(U%|;x=*d^(bw?{6*OJFymdW)o=SB0*Z0(D3;}(6aO#8=>MrH{>P(13;f@c`G4Ay z|6NKOO|Y3D#j0hFtmA8v9WFso0MY$lQ?E~WRY4|2raR@>y!sKTUp-q3HWu3)ma zL}Bxc^O2~{jnRf)O6yTUlRu+>N~<64bH_GMO(xa7G=8h7 zP25`4o=_AoE#X<>O^g`IGah%!_!F%}Z9)JOW2)oMZ%E^=Kff3MB@RCSFnmckw zSRqck@I^1%y{I4HrKd)@rFTOnsvk@(aVk?N(CqjRwsL6EwD3UEQfx|qU6lm;mDXGPI4|AHQK=-jXOsE?pMJrAiN z6pv5@h@$uN_45PR zyP9-Ok~}_C!A?`57gH6r=oG%qWM!q1L-x!@)2jk&Apb?h&c9*mTq9`H;^Mi|4bQBYZezqp&0mX>9G zrwsmscmF!{FY*W_n7CB?4V zaygi9S;hKtEkn{}{txGehD4XQ^Jfp^oA}gtr^fx?qbVN$dY%IFFjuAz{10XT;)J=q zt{;HlNvhY_ApNRh;!UV^lY!+pw$Vn#6OY!&bej7CSuwGW?{h@ng=cY0UK%V7WU8i2 zTbXESKtMtpK}R{8>mr5PbE{WK_*QA@E$GqLtZ-iG^;mv!6FP$N##O3*e0T(yp`pIm zK*J*A0c>g38Pa9sHUPn*f&L1rq7oF9&91W%41SmITE1dWW>N}1e>Z|pHTl^g{slkY z*!kv`OIW*6@n2IG@3=jJtJnV^E%Z#_<-kc+-6%&nLI}#32&UDm3A7W%UwPw-lT!xA z)!15d0mKHhqYf0-}G1Yiz`iIr@id&d3wcCQh$5-roW9(bKlHgIW^a0(3?3|!* zk&)-?`Ww&(EGLK zpCNmKQ2_@VFghs5+W}eOVc?kHA;J=+1n90YAeP1`>7^fl7&ICn;wL62OI>kwK;c0& zbQdr30kOjd3jKQpl0EV`l6U(ObstM4}eVc%*=Pyy8oU#wrtYDnkC>O*8i9* zBLjmHl$7LGXz};h4|Cl0^0L9Z#RH-!oH`XSpM_lyahI-}D^7P_;9%%NQsk_^+CHeBLf)RIY=n(F;BWh~TCSA9x`pxTJ&2~F<{5H@{D7^tltzl)Q1$jE$ zTLG081Z1Elpt%^c5Ws~LDH2#1yRC@*uHzeQKzHN$ zDlS`xjKO}S7?hy{#ZATlDI7X@NKM^}oh5K!LYtSttbXCbRtWre*Wc99@Z(c_@16fW zm8~v3M=M^LfA2H12w_z}Bk_<(Z#||vY`2!{jYX06vkE>3IN&gdee*^MAB`CP;6db+ z!JSif%L08D2KJ$`E2Am_&ug+;5W(D1&|zSI+}jVu0}z8gXo&!2zC7A9VcS zbB~`rdk@mMsQ2%`n@uU6II#|n_;;>z4sXw;RmRbJ#sl0RnXPhnYrLdQ=&Mpqx2^6G z5NQxyz_HJKJLPwx2?a~|slO)1=2ziL90$l)fQ5w@S0DWH$_55p#4%D{UcN`@+b+OE z;FBN;V1tl@7{)JO4z}5K2v9Z034p;ycv54sviORiJ6?0Xg=H?LkrT4adygMSh)P1O zgvM3!#soi}{9Saj82Ouj;T;c1ArvfxxPdL5Sds9Ksx}u&4WVX~AU_Jd3~}mh zU3?f~9ssWI5ViunUw(bPW8*m96*0&I2*Tq!Kp-j9JA@XQ4VQqu7^CP-qk%-6NAkxA zNui3XTDgWK+QuY`$85`|G~2C>sLM$gsVL8 zboc^-g4BsLj*sF8pqa~k-lp{O-eb;xxEDw0cJc7wKLnEBkK(uHV~TFV37mEl3&ZY) zYR8TRZeY06oTi=!0`3(Z*L4LFl65gvH%7Ki(`{`1F2r2Pz0S*XFD}WsJ{mQVwDdRW z1mcYN=nK6cGb-rjx@1g%Y&T%%;0PUUeGtVDFQ+P*fQh6mk%3fPKW13X-+}iFrlzH- zNAVv6;`ed?Y%oBW{T*}r|OrP zl@+}+{CZ*k0t!?4PCG}4Nc$ls^8UJ2(s=Rk`YZd@x!qM3(>m~X25#<>7nPR-am3wdtH}z#JI%DcQyB2^*ZBKe%epvI)kD`PP4m7A9=sI zk*`{8cZ0XSpZ$m9@0ri21{TKd+Bgx!qZI5!5=@eBHj))(;aAud*!C3h>Nyy z802a8;@<&;4tPO*hr5ErQan0L1FRX>D?H9ds55aGkj4`s6kg(@7- zlFcW#4pcr%^Hoc?QO+%naxd8!l*t2}AF0Cs2sJF_kNAPbUiU>h4_BQ6q7+1zM^QkD z1~Tk*XeSElnF1C!5BMM`$-?8i`1zk08lqN2UI|Ho0J%Cf-1Zpv_t}Kg%lPsKK6A8C zU{1k%g-(DKto zDjSqT<=wg1gbh}VOk2jG9}}LNwF`Ab*FIDI*o}1M_#EiB$>&JfiQiuiN@yD|(hL!3?NF zpO9|dFCS`m)}OTM=llPz`Pk~JrF-th)Z|^Imtg}63Lgp&Xsxix-Wc_cQDl;)Zmq&I z3eN#Hu8luD3K=~e#eS$;-P(O|GD?4$5va{aKRY`!!?S(+N*tZUG!N$i^!P+w7~=q= zIKp$DIEu`ao66C^O@c4g%^W^#JTZ6z;GtQT|Lyyne3Rg8l-7?K!P; zCRu6e=*ViL<91mCX#Oy`4m9%clH<^{Y0sx3UIF4wf<|ogySnf%FZp@i`T3r_iWk@> zP+X0C-IHVlF$vhYbPT*71=`Mo#ujFAXc9n35Ox}G_7-}omyq05$;}CX985;2O^h8g zGjj(`O;j~aVc#y^oA`y~2gkXi4Vu{?F z;19~mn9(Br9vB#fBBiVZ?RtA(^-B~*&%`95%)sS&{dZgpq;Cw?*49^=)7N6SJ3X}Y zk5Cz60r~o_1x@;ksKjwPc;Pf5%d!M2*`8GYW7vCyIx21BMoJvBB$NxwdSUQ5A)_-u zCg!_#$`?SSN%hz8ICJ~o{1U_(Jy0)>f?vy?XQ zHq>I^C+HyALZyaIP(w!yjlgb}WBB$^JJ8}2qabC*pm=sL!0#M~4P-DU{$!vmbn-7> zzozw&olu3E)L|C0uIa*E##A|EZ)|`>kkrNGCIw#S_I2P_?HNO2!@31vjXZs#9t68D z*XfG*5V+e9qs8EI{v-OQHD?PEoJ>vKg^U8n2?F146UGg3IV5^xaoT-}jif5kyeTEf z56Wd?cS0eIrCJO~!IX(aS&&93`T($$vp^o6I?EbD`BCJKa}5y?9F$~&GmvZ9a2VVb z&KvY7g+y>lZVHsz*YU)$v5`^g~{Pu?EZ z(3^4O7hKRf(z)iQEeoE@*;IFWhRe?It@T@RmewbKzb@l&b4=tn<&2*v32Q7_nnIl5oroHkXgzVHk&QrVGEz;4owz50wU4C@QAhDfP1%*WKd~-9v)c9>&N)Cya~RCX)`9L%?!}kt9GQ??k2w5exD0CA%%$ zaAHMT2NZRZkc_%wLsC;9AyFhN3D5UhW*~%AIGu@%5bPgLBLzJ2)*AzY(6?9WUSC7< zP)1vZ-Pmxxgs;1c)_}BL5C#(75LgC8YVxR9*O`uoGu^`O8JmO$ z%p!Wh(5?sE5@=Y|Hs2#L3R3pyt{s~ZR)e6M`Po$@2nRwQqJazv2?>&AgwDbU zh1U#dV+QOr96@kQUBJa?y9MO~09^8bJzQUFFFPGpB8`gIYokwrvz}h4%Uf&&3yXL? zZE@u1prk%&(ux*YexYBJ^rMtHpTqL=zgVDVVU7toLcYNL`y@dCw+eBOkjMvO6-0My z%5(!bYS*+i!b@u`AerOBhl2@yrqVH&1|I_+IC9LPA`5oV$_A#2zyK0WW4;YGl03)-w&(L7kAzuz>^T>~rn!NJz?qA#P2M2FL zcNc|odv1DI1$sgv)*w(AmKlYhMbIa&%7ft&C<}p7AV=Kw%NmFqL<{(z;8gWO{RGs7 zL|n`O^*_+fMMD1Gy;}R)Q!;c!#xqqDt>Eqc=j(Bbbomm3%mP%5vEiaRX`{RI$|JtQ>& zAzd&@kOv( zQ>=2N!k~ABkpP~pBe@@8%cMilL=AI0vQmh0@Q$#HqFioNRH0c6iN?XHXP6rZIo zM)xL&$QV*gmD% zcf^rd@x7+T_xbZZnr2C;sj&i{endgKtVR8KFox(<0G-uTRvzcy04>wLq09lH+3ex$ zai45G<9Fx)J7F{ROJi(Fx7kK?N#*G$??NB#(KlDqPyOWkkJeW<(y zf!5f-SCf=d#k&x5sT@7}XujVWc|6(LX5iCF>W66`@Sn#1pLq4i?fI%+fDS%pp{sSR z5Y^Q711z!=Yk*`*4T|l7iUtxol0r8&6^EYa*V`slNE=Ap4O(j+=pbWUE9U0rI_)Cn zIB??%8cw4Oi4o*s#P@=G0{QGzUfQpk* zh_COjiMW)5*mzKNtUA77?V2?nz)PTwJzwn3&*z%?jiX>Au(q3^jyJ|DM2;PlfS5(e*%)&&T^Y13ISWM%$&Oo1A5(Com=Q-Dfxh2 zab#4twaIsiqTB*lm?C71C5CInK{wNGyh5TX-QvzmVT6K=9ovbPVJua{0k{w1R16f144g0_`3&h(h&|863FQ z$5yYwLEO=CA*OA5V&VnrxhVdv5GO)^0Sz9Vk$aM5!+T}7;lZ}Nw*Ip!oE%;#Va?<- zUGf+Hq6yC zcz@>HxrexpV(K*^z?om<+_L51rAyH@Qn>#9c_OH>8OUjhJMu2j5xs|(#Ex&kv%85t zhccBZjOTkMyY}71efd9Twt7cv=4;O$d@;B2^5^kyzrDZB%qeyc(tO_Dq*e8GN1@3( zg$31E(V~})OQxB244w-mTZ@=bhm65#$f}4&8zg2|ff*{Y1JcsnZ7hhwTFK#Ge_z_f zLsIU3Sa!~Kqb2POfGFYjAtvkDMZ;7Q6Xc_*hnNGjdIttP4y{=M6v=7F{g?E8S8nEC zBVO>+r)l%$MAUI}U%NIDT7oR*4j_3%2i$tSlWF!Zm2*D9sPpAwk@)z8E-po16A6+) zO}isdVjo@gOh~pkKu{VPFrjjn!V~icqI+xmuZ_jz5}rVNsnmx{cDJE1w8|fpWrYKL zeR-!Fa0sRDU_Ga*dY{7$Y9ykdwc|pr5^#im?W@x$?#^tuN@CKQ9_tFQqO|?d?*hr1 z?e!-R0!OO{9gr;ndSbh26w5)XV#H=c+KNAAe25W`Nl+D^Wydmr%vjDek5gHR6IFrf zm3S@w7pLR(Z&)5PNZb#@t2WQ%3DmPn0N-3%;dpdvY}kuGfSxC)=q+k}siMFP6y@#s zBx4${abi_w)V|wx+y1tO&vrQSRISz{8PWQZ46Y_5K*rcjOiZ)`4@8pU!PBQ%0a09q zq2McTJrtgyjnd}BB#yA^+?6YTE*VNtjznz?Ok5DzCqolGDsZjU_}kyzFQ)1g<0d_o zq#he}u7?)E^8{6s#`+Y$?1P zxQsUj1O%XIQh;b3tQHSF1m#3E3$r`P$}7tUopYqM;8k4QD(KbIy93W5AgsEs?k;F3 zr({w6N2^htf&Q80UL;);$iQ9!dVW`n$KrRbM8QDkM-NsYKB@p#!b{_D$qcMpbwE2lvDYWl^(d8MWpC5qYK4i*QL( z{?MdBLx9h1UpWq#la9$JD)m%wrYHibG9fG)@Zz0vO+rF$u;jI=MX z?Uggoy8L6!ifCiO(o10{v7o1>ZaQ6DLA{tOqwGfkp!kzVb-l+as#p!mANA8bN1nXh zA6#;nXGX|tx9!}e>6?Vj)CDH77S9q7Nva*q#$gov=r4c4=QGhiZ7Me&vMXgR#3Tf_ z2lGREc&r(4c96Rsbals6mEN%&%B{z_AZXw)Eio72$0dV7&bg&$ou$hszh2-bhNs!fJ>!(JCRH!S`f7N!Y_R zK5L(f{qQO}T7PuT6hYKxtTiz8WEW}YFS;1AvmP*+zzfAjgS;M0^tsmGb)scvFuFjz z?1^s!x$Ls{09Ywx?7pUaOgJmb^q{SWLnMPzcJeUqX6eY&x-YcMd5&zQP_5} zpZofX4vNtNs1>}Jbem80BrS_wYQ%i{?f~;f>X7mCsk&jbN_c2O6~R{lzu9u*6e_)# z8MT?_;pdBD6$LlYLiT*GpZiB~~Za(1R3>bkLYG&p~t0H#S6R=Fym z2{1kE{X-Tb?k?-b52}l^Ufgc<`Eplt!I?A*!9m;@eHxY=gJItgfgj_qwfMU(?L}g2 z%Slzb_7Sj`R|{$X(fRL&n?=R3Eqb=r4w%UYjOMYFS0)}F^G7}=-IBlp~gJ5(t`HO zHEqP`4n6^6;DBsJoDUjBs%u+=@;T zYfHwS;uL|FSo7RAB)1)4y3P%4F@f3g-a2Ql*&(cRB2GJnwcMWQ(TK(uixDLo$t6bT zBNC#Ke)X4Uw#+5$7Iaw^p4r74g8r-?vtF9Ap6OuAlN=t0UteQ(OEij6Qs9;I3kojh z5rAoS$~b{>IW<0#NUrz7J_D50>eS0QU*bMbhkFq{F~CFUwb2;Fv?%w!SM`%^)_UME zQJS-6w6t#L_|hN6`Bw_Dr&nH1o$@edP&^;8Yb(D|#J;Txk#$Nh>!{^CzLqiG9bz%+ zZ)U0RYhiRuz}`A^W)(Vss1tD{^#~F=BCN*CBJspHOHL|?*2o8=3MXO`+}%#k3vt{p zhcp(!NwGOiJ5=T}5;tJ{@=epw7w{=SB8o7MJ6v;MX13OIWpJQk$K41o7{qRb^QgXj ztv}R{Z#j3j4LAg`vJ8wp4FL%Ib-Dt{)nGYLjn-c@gu4T@83Z2)EM3m5m~aB)kb^tfkYF)^FcD088LRzr6RE&clPCrZ03BKe~=Ip02R7D6_gRWWa)= zc=&Mfhmzkg&lbK!Np0oYx<)fVzbM zO@tp16lZK~Ly33ho$CpWtK5bE?s`yZw@dkFeGp~*jTf)3hSn}B;lV4?aS8@eVuLv~ zP6y-IZ>BnPFDL1Z9jR~a>puxVixvhdiU;yy5Es<}nq|zx8MlP^(3PlKbM%WsRhgH~ z%oI`a&zoiFCLBi8`-haZd)Xh!Q0zIH>gqo7oGdg&;fgD>n>x;CayU^V577$v21o?< zgk|cPJ)py#!Yo%;C?}S8;GL1ccyRO-bc5Xw9&Qur$+7!mB#s?}%SdNnXZpEg$9!a@ zU%YztskL$(Ahu5sYo-3;d^u619asb&(Ok-lAVaIyEGap8aO|UwupFuvv#7k0W|NMFCIJJs_ zp%AV_{R0tu(7Yiga+}u$Z1PYC)5tQyYx(WE|95m(Zu9f$Skq+ z&?M6pl0*rlAglA%XRlH_;@OyM7JoTaSZD2L&A`N;p+WH)i_h-!DXz0jc6tB9Vn|uY z?!y|&k%xId9^tONEDG_;A;{{E4b(n={@ezJ9#jvoAEAsZ&n&|6>@Cx0dF9Hr#taBd z?29{muoG~cLGeRvl(d9&o88v-l3SpONof$0UOfu_nK6O{5KBl@W%}PLf*8wfw#={t zXWjP2i5Ph)OY4x(P=PiT+&oA{sM66m>BmO`j-@jxQ_r^h%cthlk+C>KS;m8Td+eq7 zRCSXJBI5~|QKg6X2naMneL)6oB!?tbK6HS3jh9S?(BeW{wZh0SP+Lc5m#`>orB5xy z$}a+i1nLRU9m0{PhVDL5u_+ZoKQX|FLz{gyEz}U-x_hx%D;w&LpDYP@k&I#0i`GD^ zq>RGKV6MkJ3&A{V^wB=JB+I5npr(Rrjd4tmN&#E~;^T#?_DaLFB6IG75L5x@oQt3` ziW$5B2!^PRGSd5il|2a!mAMpH0l^3oF1vIDh>S&8*bByFi1G9qyFYLDEX=id(DyTQ z(qEw{j@7Hv)F+eU`;Yuie?;G$=ieD50JNB*L>3%;dCq1@n#x_*N)3T8M z_z#7Rxn}1R14xy*+c^K-J)AYZPoD5BZCgY)dD-0DlTVf8#S`XM2PR?3lthEA%wEZwtMkLnV1`_5Ekyaf^+; zTuF5u)<{tOyJRMRoFpUyCWr_v35klXC4j@u5d<_SBJSsHiX?<(giSysTj>HM5ViX_ zufhnUFZ2_T-+f$cP0x=v<*; z{8HrcqkOUbv;#An1lAuuyZUADx5tVbGgrR3$I0mY|6iN0@Fo2Gwz5f}jtiiZLyiG# zqHS;O86glMjXzS{NkalU8a`6YK`aZZ(hUY>z<{4Th_;hL6tpBn2U@%srY#(kyIWnS z^<7|aEnb>lT5y-dO2{^~Mf@@`w-MNuGUw+bydNSXy>?cT8@ke+ING;T@@EVB-;9UQB zmq;d}3za4J3Hp#uA8FKq8Ai&65?6jw^0{7xO4?9ESq2Fy_#j_X$8t#I+dnp0(HI$S zy*ARWNKpVQf%j+X8qw3$MSN(!5&k44iBJcC#$LO&LajvzRy?N;B*m2w^O{Z(FQ^HU z$`T!9pycd4_aSK(q5#6K6OjhRStP}-_gD~(EClIQhycN&wj~_XEY~3w6;NUB1#~lz z1}RusCCbcoSGg~W8@SDOZw`|FFH10QX)bRx!P=D(8I#;$AN#^IkeUrZ9}FbP1%~4b z{kaDut#}I>S=vWom|aHn+;bMe2~inE+z)#GJd57`6oc2N5G3%0S&Ni+j5n1JvylNR=r^^FALp%7 zLy82TC_C1-CxM_IJ*tejHUd-@#G~ZIrV4cs$bb-!4Y~^Ntf5RsvOKXaM&Ro!gvy0D zK#m<_2I7RdIS{EMM~Q?)b%3{3Mum#m0MIpTquZFcZaJ)iB!3dT15gc7Y@-THhhznN zgVx>M9bG0~5fm})cxQzOCqyFyNrR{RjF)?`7>_= zlWK8kLFrJjiL~MCT1EfP%cdCD!v&>m|PrE zwkt@GPK8MkOo0|?JP0KX`!2pBnR$SiO0dkMBp45SmCA^vZ}AuR;;;8}2RKVUe%=54 zs9O>~1uvBA(bTbUy60ob*=2BfcRuUY?Lo;q0!0c@(U2@VtgmIM4dASFNSH92Xa$si zv)P1tK`_Q>rSvccThNm%Ha1vEbc*hwJS0)6*n)*eC0dZ3y#j3qL`p9Rzcw`p`|JoE z#XU)p)InA8>B9(kT)S?aCwl%2E@te*z@Q+?@5Q8h(p{1H8wJ$V)&|#V8omP%5U$KyP%q> z5>7Mvm-1DGgZmAeX4V$6*?`V4E0&)^@3+9n;JlmnhzF0`i4EGx)*rW0MODx~|4f}y zKpFV7;;CA+?2O+b{*`OhQeD|Le%?8GXeC99pXc(mC)x9qXx4QU)eluX?{qAak9r@} zHs_5sX{(Ke1f1v+P>wJ|w&KNggC2LEVRD!U?*4m;BwT=X?OM@G2d;sX#uhLU5Luo% z1V?c9u5pi?#lspJ<)INSCB?-ZfK&vq(MF*jF}iqh1(CJj@FwUJ5>fa!FhDPjq#iEN z3y2mX$-P9NM|`G1ll_?x5Mip}9jwX!RAu=HkRTNj843g48FVag3*eO_G9rw_+hx$g zun32AOsKe|FFGja)dNE{?H^e>>cJ0q56Bd`)|8y<7R zrVL`I9cfS)gpv9m%x&xKY%;;lxZ}+)0_k#%JgB^i*KH8yhJezrK7bJj~I!TZ;q=3QYK!vLX0L^to z{g|}4?ZsdmMCRZ!%P0D5+#=ghWuYL0K#5?oh(AP$g{BQpB=>J^Qf0c}kOnwJ(wk@h z{T)A6g+A#Wa!fPAtCX6M;23_rV--OIKt?hF791UqSmHnv;cGaI!-R~{m_sh%R!nFh z0va?@5}jf>Fyatp3_`n(CHaOh6k|}zP6>%K28}&1D&ugv)52A!7@jj)IvurwUoI|< zYE^{x+=>@7uO3mb?Bg3&SDW0r413?V>jN*e<3vQor~{O4A6^;zwC2jwt@IvhD`S6n z=yrbCn85CFG^XgfyX;$6l}H9%IpZ{Fghx6a3KKDlhwH~OhE-q3CH z(F~|ZYCkHKpw}{9ckg~p;o=ymIRisB3`A1$$B`67oJYAhJhy@Na$guQBrrT)su|)yi?%K(ofCc+z*`i7g4?QgK#RQ*0)$)rZ(fx}pC1#jGQRI+)LPo3;Nya*+zI})K z(W9Rw@@9`Bjvn+wD`5i=+X{=jOf(!JFzK)oo|+`VpuW@1H?ptAsX2N!zpQ)42n zBDD?q$e`)G(DQ@3(N1g=2?30Ogbc!_Q=zzaX#9GemkeS<02v8Eqx#wAj8%qU5BvTZ zoOxtQ0*-<}m)vsXftiN<0cj2fnA8e3C~43ahDzDd0xb>sei~69XxL}Ip2_t@u3r_q z1Gv(Tn{-?rxJpQJ72#POAFGoIUxssy^;ZeK>8uKGQaaQqq0}TH#;E4?QN~3*DOj$W zp#lZ^QULY&(y#V{TWIveb6fw#mN2`Ze=G)EYr-VR`OEtjBErDmn}+Q|&fW5`HY&`Z zq=(Iu&1_`oY}AFNO7r!RCw33=dhxieQ{W$&PNrGIw~9g0Ln)eiuQ~ry2L2UPQT&SQ zw#WVuzr7{@75A|v38lyru;eI-RT{{fz{q44vau=p&5DJEh{kXvJaCvm94@NNwJg^W6ZF~RwB zQyk*fNRFn3;T$^@FgJ-eA}UJBO%LrE)-hHj4>llNoS)Efm~b8edw`aPz=iqP0arUd zt@_VsfTx5W7gxX&`8)P+M;!$|kFN0K$wz(#S}SQ7Ovwl#qO^cu7s6HI5JO=^c=>JVBr2i3ka^D{3Hh_QrSKuo(qn^`%_a6 zAlZtL6oEsO9A!9A$(S>eS#g$US`Ba;kc2N(DrgiCkkCCQz^Aw-8AYsAJAn8?d^bI2 z2KbS1o!-R3Pwp5vAe8LwQ(c6Coz~?1%ypGU>IH4WY3YF+_#u=~>0wQi#sufH)07W* zBCs2{<;b89QoaDf4B{kdfFxl6yc#Yvgj?kUBxRd$%6tkX@KAauvw(i)1`=`u0~t6b z_56!P)`u;Uvs$v%%+2fB#K`B(DM^uyr_G4nx|7rk@0N4mep@SYTotOG?9P zN_zk6=SUIkxZaG)HKt_a3Mw)ugo#NR0q?kqdhG=P7y?>6)~k(KDexKM0h8Z@l&)Uc zXW5_Q&}HAa@i$bR9hLHbbEl|g=D-TUUL6T_DR?|Qbw~wTLd6+j2Sct6?n7L9aJ(@1 zm#)BULsZVhw1hSi1STUZ>k+>dfP?@bL&H^IB!Y21TakSQY(8aZ#|7N+P~ZZB#5;jK zmKvuLu0J66MEivW$`*OHvuzlff#)(=1){f%<;omLH?Wxv1vIR-4WU(o*QT%HKZL9T z&flQnJ4%sHhH-QAp~p4JW`o=u;Ula6QF4!Q`eBmW*Hm8Iji|NJ8xo;9xIr{oWo4B@ zL2v>hhM5>z|4nWKi0mY|9aadaCP)kwWv)CJL0>`PbR`1_D68t997?x_yeg$NOj zFXt`-q~#G8x2tpm*y}PsT7sGhl@ruPlb+1&md1~QC6`=d|F+&dYvyQwlYa+qljI_T4+F^seqS>JY5uPi1v9nl}kchp0O;CF*$QzvX$BRbKb#* zg#&vTXf{yuFkpV-gOTsMesxFRmHnxu!N9u%(g$(o*`?g=_o7z#SL6S-a`S3@RoTEm zQDa*1h`Dg*%>X`XKfXef{ff8cua&tm+c&$edHPH$iG+ppk&HkB*x!G#%5yglO<=16 zza_20s(bq(1^p?omG9A@|7M-7Mss|9GZ*hOc*N~FDyQ@Mg6KJ;{W_6a6!YzW3hrNA z@_XTNR7-K)N}~%(azQWFP*x>B+wr1ehW3Z3qewFe5O`cn;&uCWuYKC8rQEV2K9^xV zr?ujxEde_({5-S@AhV%vZ}1IXReuvp4TCowv3ciNj_fEF)Y?NyDCV+~JmN`-wf8tf zc`=pwO45s>x=ysUo~FrY)r+oU{P^%)4a*gXzMv=NjywA`DfzonS62!My5F^ovYO(V|Rr?)F5EYAJj@XLSc>TdDf z_s86QHvJiw%1)h^c$mbB$Z|K5fc zV{3f3?9y)4x}A7O?E1d9u8;GZ7bVV4uo!Ae*C%N_r z3;M~GCp$8E*rj>d8+qB;d419pIfgy67>A-o}8ydi&i8;YqYo?q#H$3A~?KWmHU*J(fM zSL9X?_xc}Gc|He3c;b-I9a2fplD4vIq2s8q~Tlej0naPQi*f?vG^#1~kxXPdudY!vjexbq+#Sv2S&gs=t zl~`E2->doDd)9b4Uh3XGnQ+MIoj!6TSn_>D&;9pNKfJiIf9+%iKI6ZC-C4ZK(UFLI@XzJr zdXJ4;@i*H)CjWb96K3|ZK2AwZ|3cpJBXY9;cdqe(ENRS+xt5@{E8u6wB~IJ#CwbMj zz8PR2Ex7q|XoyuGiR1IhmItX$th;bNRmWytWAlTryPI1OCm3bHN=V_%-&mAy^#ZB5 zty?@plis}M3X^p`J1a?M6AhJ@2J zN7fx?>g?n0e#xa#En0(8%Oy@!x%Wl6mFf{ob6jaBKO#FexDKA~ExYg1gJC zZ`Rr^oEbd5bKT;?0!Q+x=)c9*j?_5;^-z3Smp*;CqG;^xUYV;URu^Mp3QJVz9_iBD zQKC>F%nvSSonToV8T*0Sda%K(&d18pF{I}OR&4HDkSvCH{o@g6fMQ@A%Nsq zoc2~e{xxgQ^D^4Xg<*z}aB0F&jy+rMd|wMa1HFfC0ubn$kBm&rhb}a)yJ-5VBduy- zb8oy*p-JZz=1dvhf}3AT&oan!&uP3ZJh^?-W==cDG!!-mmg}3uOdCi-9(>iR|0y;& z?CP5Bo3VHEO)58$kn+ps0}2+-_1?V}!+&h1w`WucN?d_|Yhum(f(zBp;lU6;25s&7 zNb9TgYImsBqqZiSJM9oV;oqJxUikIW=9%6kH|93i-)0{^IA+eR`*Lvm=aLSKh&=99 z@2V*t?$_t%Vl%&x=h?h`jq2OqI(TEgcX)Ac=WvbR`Vs%(rS*94B66ZPS>)yJ{@bT> z&(^c9yIm!JjSU|G)K{kS+{lvK{9d)HGe^zhPsd$t8cLY?UgWs#fEb5VNZd>_ONIa^h#96B`gd5M$*V_N4V-YQ0o3Hx&T)Z)S^``m09N8SH=9Vz?)G52LBD0#9S8-x95n~H<%smBO5!Y)<&RC=h zTz5O3m^J42;W3Brc}vTTp0S51=W9MrOinNTuz#ywRy}<-PTN2{d7{t$&+lVPz;BK9 z^}p9OK6_nUjB#QU6H}O#BSBPMmYZcxBeo)!hOVZm$+6sSU|>M}ZNk2aqet=a=Q%Y} zb&nbvx@SJ-P_5FGU3`RDAsn*DI={W~#0Ld1(f?b{FE@9wQ!XhrT1v2@A}%_xwRQ2D zy<-ffE?XuDnpttp%Ph=<-f*UKZ!O89l~0I^6SWi+G`sS4b(m)AY4xS*Y5P|()3@D* z9z6>9kow_Of9kNc5s%7^8+PgO(y5JAi!!zK_0iE8Quwq7m%`^~>>6rno)2x4-7Hz@ zY++@tW}$9}NDVQUvrVG$`wy?SP*<7z^22W;r!y6r_L6fV_jy{jO?vQ&V5Zq)B8={VDt29X}SvEfW}E zvA^rvuf+9ok9&H0B0cQV2ado|>E7e4o9b}zbW&Te=u4IDs)v0z7BeGX!7~yfl`1|i zoFfucAuVxohh};5`2++3G^9AX8|dc(cN~v<&_Bt8BIYX!plaL*SZNN z!;3UJIabD8PGb$($$bHT8q$XCX--?`^*_^dukG&V-t^_+!=UaxZP!IiE5k#!B;{;n z3wJgte$45wcJSa7x8&1H@pWA{xn;uH*o3PJZh6^eztS?h{N?tjv0drP-mbs1K^J>I z>@wq)lHAh`hJL?gYhX!)PH;^4x!_0VK5|R&XPryefLUvUKu{{xfmYs`A(= z-?&p24H?eXtb#g$N$$PB-sBn-1Qs*vTQ)sC&+~#{Nu?KX>jPyy_!{?(X4kZpXu~JNy!T zj3xb5xi=#0ajUC}P|ipw6b8|F`Y&`VzGVIi5wX&!l(KVZwVAv$JAWoGz9JyZJNZeY)AJ=a;~ z*)W#2fRtkqQX7t9A3#HKNuwk-RMg^d;&XSip`{^~aYw^Bhy7L!avP+u;zOmJO%iim z416XgOwL+ZBxZMc>e+RFHZ#AX;fE6?GJ{D~%&9Qlr7y8*ELYm9GWlb{6R}O)=9^op z!)sn^mTqJV3)&g3A6(Tommr}3?svMcv3c*O`CBZDhpn>upM6OEnB60JOWG~et#P6} zZ=%p;xO(MmM}2PCzJdKr`gwdI`;2wT-v=I5^W&`QnKO=ZQ;X8#mS11tumAA-v7P*( zkQ!;b&&s{s*15LsxnqxpbFEU9q9b`tt3m?W{vgVG|SvUGkKL6O$9$93Db@HR~KGyhC?@e+7!x@uzVPWpA zTAbR`kTslt&MoX?T_AR5^lSo4wse?(aSU+vs_YTl#fYV`w)f6exsfINPVdg>n@<^k zEI%3W#a)mrYF((qh& z^d8%px-H)uzlZkpymtBPDECx;VIZ&U+2nKES24Xz5z}8EbgDeT3)6EcXr6B!cH3KX zU}tn%nsAfDm8!o-&!spn-F&&{M6pTFhk}8bg0^&W>&!lOpPa2-?&F|_pZAs~ z-_0kb#jP|{tkQpfpO|Lps#==bqmwrJv&C?SCP#$(6pOobeMKH$t@%E3WaAURckLb8 z`=j2pFugiNG}Uf|aj~KvC%SONY~h&{yXn?W123r*lP+(anwrM%e%*WOP39`GpEiBz zJHAcae(cjVZ}t$Mxj5p(W#*56K06eCC6L1 zzVlS{yYEll86Oa{GdG3ARs7P}ZI|E1j;6D3Qj?nWV_iRuWKZi$^c-}|+0zM^obNVS zoviccuxy?k^ve9++#G5awqD%zcb9knrhu&B?CnL3jbmpFXUsoxKH_-(@k*6{m5_$I z-N{B3pD&wZj%qel{~Uc86xf4{Oglc6?AzONWt6L8^jM$6-Zds&>v4o72v$gauX)Zb zv#2rT-2O{I_q~kk!b05MyIG)+%lo<(l{(A2Pe@b7aomUg(i z6LYT^$T>`hg-E%oy{R=1KbOw8G@Fzc{OEZalWgMh1KiQI&9Til!_I`oZL@yn)@j#X zI-QZis6Q=^JXkRy(x#`~#&d?hPL2y7J!hfrhCf;1*=tbVV=3J_Hs|&$I@-zMS4Xo; zOMscVdHKd5y(hnln#S^rG`j*e#;2H-ef-m!wIs-GJ^!NV#0Ciix9(b(?ky}m z8Eiopt8&SAxmZ_jmeJW`Vb}Di{vvimMrYu_Scl)G*&avtnaoZM6@8VFA@n@Ws>-vM z?NYg{#!irr7V_uMH<(Qy>0GS z6mjnzy)pM!3`@89YVD|i*0u_ zTTe@xLByzW$*cIeBW^QYcC%B{++~ap16Nm2WweKik5_K#>79C>s6O}Qms3e?(4{7y zFmhG+Ck}0M`v2Pd(y*q^b!~Rtm9GWi^w>&KhTZKzsWL`pNZhp*0R<}xGHZbZLE;31R27VQV^s}1%xnz1(`_@3^N3TB#dDQ5E4Rip4IPs=lcGfU*9?By1wi3 zheS;lYh}I9dq4MmKhOKF)g_)_fuP`+-tY(N2pq_N1^hZ=BR!yzb^DyluU@yn`YOsv ze*Gham(S_~f3#~z+V(l<)Da09B{xB4@}n3cRMG;=eRY?M~M#RP%x zQiOxC#Spr^VV3B&E=ouXd<#R|ZUST>%T_;s>6SpqWf`4FbV+1Sz0D}mZPZWqcwm3m z1{mKn<}`tvOWJ*%H+d&AGO9Xwvr27wxmUHi5C_C(Df>K{&L#y)-w}i@9APxDU$P(- zUr=9c;OrIhooi+mK{{n-HvdvJB78u6&U5!}T7`Soz+^3Mx>E;eqAY91Ja{@aeW3|J zvxHUUzp^V?bLKPi6>>3L^YU9Y#*O#aukLq$QqK{K`~&?N)5IClR9o_?Ng|(N#g+u| z$s6(G#M!Z%8UjEf6OSn030HYu0f{4B=c2s!Cawj)a4H#Z3baNhd4d|+QZt4fsA?4Y z4U(2~y00Ljpk&X3af5{rp(LEfsLf8ITDBn!R~$;8{5sMrZ` zS--j5Cm5o9HeSOUy9v9E>%=P&ITmcPC9RR?)+G@oIsbSi$I@WEp%Qt{gV}zISKO_u~-Le5;0;rh0-@4yzP~vWkpH9|`K8OvoSEE_5BchQzh9vyF7HM4wEK>AE zM);j`E0A+(|DcWmU{r+v(&Kw$O-8`E^-zW3g~gQy1T52(D*}PQ40raV06lOlV{J|S z{#sO`M}o(z;LW+HO23}1(#bkA=xD89sm(HksWs{u5fZb#RdtReN(G?2QSt~wqoJ91 z%hG0A=*Iu+m|TqNpOxeu(|yK!VQ0@6ZTPN}_xb2EK}{niC8N0Ev_La5U$wZTr0-eJ zQOIW$laJJ{!mnSH)Qc9Ui9UR4bxK1+)85co5#Fmo@1N-vr0Lt;wY4KtVQZfOs`ciz zdqf1yy|a|Pqs%kJ55jlENHiASx3~3vPASpNB7Plv(#EOOHC?tfu7_Le)PXrS`*Za;tqr^ZW{b0`@w9oJ9@q8 zN|vEEs_;G+n9J6?cfQyFxeZ}v+n+9M9LAsDAMw#`fXsLgQsi5U&&F-1DCo7<014D2b=%GIE5q?xU8MQvQN9J zH#p8)e7AB37~x{b>JWxe_OrE=Q!dRh-spXz7xS0XeW9Bo-U3B|i{)->!yVI6&z~4J z_|*#JU9XX|d-m%-Cr;&uOwOARnY^}F?H9W~2Nn$q;*5@PC)^CJk7d~ z9KEl!&?mIYu=UkHw~7h=QtNxT)v6YeZwI3^4M?|UWVytaxp`}FP9Qs691S1(q0--9 zRqe6auh9#G^POQYTbDx2FC}(w+<8=D1ud2+-=QB6Ac%}|xQFeyP-FfwbFPM7r0Cgt zGGe=!M}Q>cGnJ9pPqjkH7U^V^o{mTI&45wdfcUCQWuymU1%Q2{b)Lw%%3Lxk2|d0{ z4z*u9Y3G zItm)P;>ua6>Djb@>SgT5CBdE~7TAEHPuk<3S6=VgtISUlQ9UgH23zmVWNF|Q0{-p@ z1JTv-FeMKHS+7N6D-|nv^~LiWbQ~?Tu#8nzszDhFb`|QMIgqak>?$vHZ8T6&X{F#G z1!a||iN39=sV#_J*vJcb39?2_s_OQy!rfi0pjI6e%VmIz+K~~UzZT?x2+D8f?#<$+}~f+vjWS!!9tXMP$8{`=3%8W*dYkSmDaYz z*8B9%PI%Whlv5Y!{n_0SO{uftzbI+&dk>Tk^h-tpyFmjCq^7%PXs2lTNa_q!F+o?5 z@Zjc{n3#A*eVca9jjBhUe+3#vQb4n&+&F%G=$5~lnAh$xy=28$yIFD5ZfJ586z8k9 z@4x{4I0T|C6~S-ddQB33*SdYzi(Obo%KHZ{=2=v$=-Noo7^MY1F8bISueG5kJs=wc9m=X-c8wPZ~b$`Hjp`xO&;0x)jos7qIY}8&+!x-aoLR_T- zb9t8{R(zW%~7?w>w~pl>6dLcYWB&Kg=DiO-eB~?WhD)9&xLWD`7Z3s54YsvI7d1=Y&{R<_@s7*MmxGhggU>NCDpjNDkBpaCZt0_~|d5J?q4qoujveeh)-IKBR9Z5D zE+>&^r;+4V%`nv=FtekFFnVCu_JMMMXQa{~?L%Z{ChjJWH{;kR(73VRMzV>!v-f*} zP`eRVd&O5L?U%wod`ROg*t0%(=v4_vTuS^Lz0HJXH~ik%T>FIKy;}jxGrb4eHLu(* ziId6=$6orvatv7>qW2($Q_tUVmv({io00c3{8o$mYdzutx0F*yJD-3}ot*`@dXj33#43HesRz>W_KV#-k;=ZZ+7)nufi9QcsyFVLO+2lVOB?}YXOyan zh~y22EhG)S!ml z$LCFqayLTk(`=uAL7cwtm@66KZ7tBz>6ra_On3j1W8(f8RADTo+X_qQ$g|fV*v+*P zFiX7i`qu_V)-0;MM`vfp2#oAhhRwXA>`b-wB_++=K5kCB&jzmMetY5S!H03ZAGB5c z9iZ+FjBvb@5;zqLl4_n}V7$m1Zi|0lV2=l#odE}#ybQSH5luOop(g_L5Y*twdf>ZV zhAI*w|H#71#&{=#Q;+D+C9{>d>t#;ELsQu$dRghjnc$npXZ{ij4m-z7lH$N&N*9$8 zC-10vIzZKP@F(GhYeva(5Ui|-TCZS@-RgNV>Y1!MY@VX1bTk?W+C};nX@5V-_h;9u z5SF^21l+@yn!FFkw(Od&H^szU(o|P$xVshyKHJI<Y^B696|k{o^P@u+b%q zcy?Bt?L`nOe!;K5E=v=~#U(8HF}2X4&NC4Q5+ok}7&T29UM6%iPr6%^sTZ?mK}FY~ zklGrEKf$_egFJwE2^xD+?{P99!aZ1tDo#){v!uHdeP@VW1F9y4Cqa$bIhQgVnJuO- zml45#4lzC$R{IGc_rIWt_og4wr%PQ^Vq@B<+0?q?$!9O5y0JP3Cq@Yq5Zr@wF z~a`~vbMLe_}yxlogd*lQls)5T5!#n9XdVie5v5<#qR ziUO{b&(IGcq9WOHQgujQPvg!nFnH~SWuU(MsN|&|5%@rF5-EZ278 z6H~b_XVTZB^i^^&Ccx%>Zn*`ZMae==VpatR*(lgkB?F{HVLp)kpF2P}gAHDkAKek+ z{ACk0cV>npI-%?%erAJwImAE3NOP2VEY?aK*6H4OEehQFC_xlW>}Rg!(7j3>-rA>0 zzd;y$_zAiXtZ;?w$XPY3K8*8wOBrw@F616n{E#VGUx-U?d)S2CWs{$@Z8i3_Z{ zBg8xO&4;{#=knzki4=l+$gMl7KJ)&j#L=%vR6pCXS~jLe=r0pW)iY& z2X6>928LNZcTFHNb8Z8$l=kN^LFx+OBk9pcE{e3i1 zH6yZ02g?72S97wJn}Bh^gj#Rd%ycJ7r_OoR7)R}@Uj}N%$hJZa7hbUiRDK2CP}nO0 zxTqRd*yo)|fn#;2vucBwFj_+Zu+}p~Yh6p>>MG`e{$%ZXf2%a5Rr0)9Mb1Rh>}4ap3|0hv3@_%EffsVB|pvNPueF#Uzy=F1a$!O zkOz^XexGyM0AfEfbx09@o!v=H-nfbvgC=FE2r8AQsKC66q8EO04|yZ%QY(U*6yn_H zJ6O?L_ax02LgO2gYQ#XDlxb)cYEHR)llwVF%DuJ!aT4P zT5W8s1aWTBL+oHf-+kKFk^{+3F8eB%@xv*8G-})le)2m_zD}$e*rk2WMe2QZ<6J1oNXd=2BvGE5bK| zo%sjci%aX8-GL^aIgmuKs~K!2%_ zkx-n1B1}93BOWo);IW~iH+>b7>ud!%wIop0Yzuj1BBx$O1w6?$PzyQW*-86(r1@9Y z;OLYib|ck@a2IK_@bHL+VzAH3ZcYT(T8~!=Jp@arA|$mS%?8jOk{U;o6u}}>EI8(> zqK*y48}c~qrevOqPLE2fc+EY0yeTh28AmfXJ4sYh3bhO^(87?m#!IJv(;oE-_h(R1 z7W18n_5keA-!U{inQj#&7G5%cED42_DT~l&?iwv4mO}D zfiFD=p$gz@7WU#Su#;{Iv}KG9>-p?6Jc`wE^r@Md7Lu&8s5)pk4f#@tuda%UypehQ zEWkCaYaIVA#10AUB#apq`07&MF@MABH$a^xWOHfNpjIOzC z6>J*qz_K!MOS@rQ5keiFRlCpwT9N1Jz7_W!D6J`@)&E5W6MB%UBUTa}(aN_Mewu^IGa3{q(nln( ztj_2hn5>d5Iu&a{+<71l9Rp_K_Z`0>3O;<{^8MAR954}^`2XBvnvcBL{e)`h|25L@ z;aY-JY7s9ZGD+!;hr;=XOP`i$LcLWIM{l5$=uNPV0<7lJ0tNs$aGhL zz~7r}L0R0VjTxD`fQ$ecrBwhWR%n($!rVA;JPks!DDq?3SH|FPB0{-+!j%AH(I{LU zXn5jgzh?@55*7?Uq~MZQUS7)njgua_uPle31|-=Ube{2~D}1abCkIVR+_le5?;TZu zzklj53qR!^YXu`OuaBC-&xh}zCqPc_!Y0%a^>GQ-HI@1_@?)P;2L zB)7-YmWSc(hbedaUwl_Tx7_z1?}IT$5ayWtpZAv!tw-QGpDdZOiZ;*w?`z!=?a8xq z1U!ZrtLOvd>R#95Xvu8SdKtdYzZ?TwC z8vu0-t0>gA>43s;Kn!m3fu{724yMO>`S3eGExhjEO|8apt7V(A$jQzp9Umv2vVp7$ zrC9;HMe>9sd-EYuQkZFJ0X+-kI(K;(2Ib)wu#++v#6xe#GDgz42*!xkl$%Y!HM56D z5EP@E9WTv3cmfi=l>O3(spp#cS;+_%@qEa$*TnK-hn-@$;TOI-@`rx!IogG&$NI3D zdT1~)NVVnMpiOB1dwfJqGH2mR<$C{Twk_$ zy`OLI=iB@F_I|$oS4gt=Sn?iA-ebvoEP0P5|1FN!dwBi-1ztTpC=$8jJ3YXJQFblA7I!hG(8`I>u&`ofExp}wJ!j=q_WKI(>np*hOX+{pN>zP`D> z{{HeESmFJD9T153@yAB|=LbBdk4xczFaP5VVg7->gs?k-!T

.NET MAUI

Welcome to WebView.

" + } + }; + webView.Navigated += (s, e) => + { + _statusLabel.Text = "WebView loaded"; + _screenshotButton.IsEnabled = true; + }; + + _screenshotButton = new Button + { + Text = "Take Screenshot", + AutomationId = "TakeScreenshotButton", + IsEnabled = false + }; + _screenshotButton.Clicked += OnTakeScreenshotClicked; + + _resultImage = new Image + { + AutomationId = "ResultImage", + HeightRequest = 300 + }; + + Content = new VerticalStackLayout + { + Children = + { + new Label { Text = "Issue 30010", FontAttributes = FontAttributes.Bold, Margin = new Thickness(12) }, + _statusLabel, + webView, + _screenshotButton, + _resultImage + } + }; + } + + async void OnTakeScreenshotClicked(object? sender, EventArgs e) + { + try + { + var screenshot = await Screenshot.CaptureAsync(); + var stream = await screenshot.OpenReadAsync(ScreenshotFormat.Png); + + // Read into a byte array so the stream can be consumed multiple times + using var ms = new MemoryStream(); + await stream.CopyToAsync(ms); + var bytes = ms.ToArray(); + + _resultImage.Source = ImageSource.FromStream(() => new MemoryStream(bytes)); + _statusLabel.Text = "Screenshot captured"; + } + catch (Exception ex) + { + _statusLabel.Text = $"Error: {ex.Message}"; + } + } +} diff --git a/src/Controls/tests/TestCases.Shared.Tests/Tests/Issues/Issue30010.cs b/src/Controls/tests/TestCases.Shared.Tests/Tests/Issues/Issue30010.cs new file mode 100644 index 000000000000..ad7ab549b379 --- /dev/null +++ b/src/Controls/tests/TestCases.Shared.Tests/Tests/Issues/Issue30010.cs @@ -0,0 +1,36 @@ +#if ANDROID +using NUnit.Framework; +using UITest.Appium; +using UITest.Core; + +namespace Microsoft.Maui.TestCases.Tests.Issues; + +public class Issue30010 : _IssuesUITest +{ + public Issue30010(TestDevice device) : base(device) + { + } + + public override string Issue => + "Loading the captured screenshot from webview content to Image control does not visible"; + + [Test] + [Category(UITestCategories.WebView)] + public void Issue30010_TakeScreenshotFunctionality() + { + // Wait for WebView to finish loading + App.WaitForElement("StatusLabel"); + App.WaitForElement("TakeScreenshotButton"); + + // The button is enabled only after WebView.Navigated fires + App.WaitForElement("TakeScreenshotButton"); + App.Tap("TakeScreenshotButton"); + + // Wait for the screenshot to be captured and displayed + var statusLabel = App.WaitForElement("StatusLabel"); + App.WaitForElement("ResultImage"); + + VerifyScreenshot("Issue30010TakeScreenshotFunctionality"); + } +} +#endif diff --git a/src/Essentials/samples/Samples/View/ScreenshotPage.xaml b/src/Essentials/samples/Samples/View/ScreenshotPage.xaml index 2d998fad675e..278019058216 100644 --- a/src/Essentials/samples/Samples/View/ScreenshotPage.xaml +++ b/src/Essentials/samples/Samples/View/ScreenshotPage.xaml @@ -15,6 +15,28 @@ + + +