From a963ab7d1d8c90df930ba7857f51f1a4bf62f9d7 Mon Sep 17 00:00:00 2001 From: Tim Schaub Date: Fri, 7 Jan 2022 14:58:46 -0700 Subject: [PATCH] Avoid failure if existing target has no background color --- src/ol/renderer/canvas/Layer.js | 9 ++-- .../layer-vector-background-over/expected.png | Bin 0 -> 31250 bytes .../layer-vector-background-over/main.js | 41 ++++++++++++++++++ 3 files changed, 46 insertions(+), 4 deletions(-) create mode 100644 test/rendering/cases/layer-vector-background-over/expected.png create mode 100644 test/rendering/cases/layer-vector-background-over/main.js diff --git a/src/ol/renderer/canvas/Layer.js b/src/ol/renderer/canvas/Layer.js index 5e1f3c65ef..982d688caf 100644 --- a/src/ol/renderer/canvas/Layer.js +++ b/src/ol/renderer/canvas/Layer.js @@ -114,10 +114,11 @@ class CanvasLayerRenderer extends LayerRenderer { target.style.opacity === '' && opacity === 1 && (!opt_backgroundColor || - equals( - asArray(target.style.backgroundColor), - asArray(opt_backgroundColor) - )) + (target.style.backgroundColor && + equals( + asArray(target.style.backgroundColor), + asArray(opt_backgroundColor) + ))) ) { const canvas = target.firstElementChild; if (canvas instanceof HTMLCanvasElement) { diff --git a/test/rendering/cases/layer-vector-background-over/expected.png b/test/rendering/cases/layer-vector-background-over/expected.png new file mode 100644 index 0000000000000000000000000000000000000000..5e2e080a2ae21febb1f2d7e7da661a2a3bd6e4f3 GIT binary patch literal 31250 zcmXtAWmHsc*QP{3x=RG4MY<%VJEaAb4(aZY?(XjH?k;H%2c%1yp*z0&S>Jm3GmL9o z&N*k_dtbE;RZ@^dLm@_ifq_AjmJ(Befq@0T!onaSf)^e85|jVlIjBgAz*J3=?!&;4 z!$^w>tGZ?!Wtx5^8U51;JvqpU5X0~NzI9YP#SgiA5$c7w9@)|4XMAbqRquX>z($Aw zXE>GNqPZ5)UKsbg@kekYL_Lo#>=qp=vwRXG zU7VWvbZxuTB<~wmEO#@6l7oULu3XhTO~3IV7%1YmF`c{n8dp5cR;K?_ATD>f1KZxm z0iK@v=tv2oQjqAIKpCsDd52Z184-+;rJqKVsSuoRvYR9{fBc=oUURG(Ua3+YOGK{m z4mJQ2iGqiRXMLkTm_V<-u1=&<-H?YAJ9>E7XU+W-#@R)GT?vzZoUW&=kq$q6VAGC& zYFG^+Dz6?F)%Et2f}Nc`Va!-NlgYusLFjqIhDZb{i{D+Wcup8{mECr?0SB*C4mtZ7 z!|AU28=;>h!VQ;>DU^9#)OOd=Yf(;D%6Qs=@x9e1$jcl>vr&q3L@ zyP`;EV-a&i@aqqPSK4Togy#J{WNk30gGP{VVsUbNFge({^eC(%dDFvoq^Mh)9!|Q$ ztR8LQO3K_%U^Vshiqvf|_cy_sX#=99Xj*Ig80leLz9tf5kCHYPy=jzA`$D2=&86DEK&au)Ya|Yt=!Q=iAlH5^i1sm#d6PB;s_r6I9lN zK5uvAO*~B>IKS`kQckrE+3Sk_KKzBS&K#_ zRlhvCEoRTHRRO(D_d%7ub?=4u^xax>(xJ^a?}TQ|IEu7;{`kMPtYWMu{$wV_s5X2r zOaRe9h}v4d^4DH}}Ws?KmQroxH$q z(raPcoz7BK6akds7rhwKe}=@&-#Q3)#T5)49B?2`M5u^3-@b_E<>XipS9?E12H%PQ z`AIfrA7ZXBDgLyS`zcDaQ?FRPT=~x&-DgI->+J@s^s7eBUps8aS?sGhw4vNqrom!t zp@;6bUBR^a%}RMI))(u&{%=;=<}`J53YHF8xob)-=8U76{oe&~q)(I@4neVkC{`6Y zU|^D1KKIo@c7Mto5pfWs$?Tx$Hu#7=+Kl*SIHpd0%zhA}-$}fI95{Kh-jk+I>#L)= zHe6Y5UIppLOqhIPz;(U8+;4sPrl}L49qAXcA(1a5CYWt%Z5?HOlbw3}QvBKD$$A8A}OEz4iO(RO!?pPVoy9Y=N|$TR@WFx=b z3~2ak<)~|FY#hkE#OF9qn5txe_LfY@dwg}3%x*tgHo)q5Q?oss{;a^I%9{UUMK6rxV+*Z4UYK@J%4O+1U%{a~ zD#f(gt6Vys+yVlTuhQ$K8pGY)DCM&T=K9{C1CpAK%oQtEkHaU*Q2$C~5dRoSEIz(j z-_gLKK>jUABENU&l~FCuUfX0mt)eaI?(F%++es0=%-@Hhgc7)$3~-ezMf3a9*Y6J~ zrP<>O9++01nX<~{CooP`-;Qb>dKu)t+#d?uKy9LsKeLL`9`o@0jb^>0%)u%n#S7#2 zc4Tce!gh9cAu9W;hynY(VKTRjU95PpWZ^r4VCb}A&Y*2IQl>X`1D%ohU&ey?itMs^ z#q?aLbNhR^DB}JvoPYXZ!^7WHR8+{_Jhv&ds!+sAMPNjR+cw`-2RkUbiORBJvQ~Un zxm5c_IjZxW6^D1PtgnhoR5;VyUnVE0_xV|{P{sW52Heq{5)_Zu!Jf~Lse09tSv9pCyqRUb1jMWI9&dkB3G=kI@B7%t!UK5xtvLKd2yq8XZ>R*>*s zIfcbvFV>qHzPH7)9P7I~@rZ=kM=xG|%og(LokkPDb~$r=Gc! zD|>40`wcXe?;jA|(vBN0;4_drAll_Y}B} zXfZ`{${4a-&Kldyzu!~zqODwab_(!M?JU-h%JuRslL~om2Zo`fd6)9h2CVO#VQ4ZW zn$3H6)`)8roO*@JRQh8{tJHZGN%F^Fd7VwIFTUVl=8^aB*ByuD$yH2L?_BT%zq;o6 z%8<||-MrLUBM-Up;-AXbVVXODtLevrPRyETSVJ7zf$Lf z`8lg@m+D6>ragIQ17yMJcgb3tJYfhX+_`C7?(A_4X-Zd6NnrBZLK8! z-G^D*8EKuya~-3kY%W0zkM$lme~mJDLb!IIoKHA9`{!3y7~+}VOljt6RIfbO7&Gv& z92QBjrfo1vO1Tery3sA?30sT)P3=CtR8y$p;;y6+{%x%aH%}uaBa0n1V){7oDaxNj z_%iblf@hat8v^xJk`tp+4jn@IlCLyjYRqR zVJucwj-UW1l)Yioy;H&3dP8CIkajZ|t;bw^!5lMuFoX#4uuEK{?6QH!VI#)T1d##( z;7mC-g}UAK&}`_dWqme<05t^?-`?+^0rscZ3~^3>JU=fy@d59kEvPh?(Pk)APLaE7 z#&_X^lwo-pIIx}l$D6_at4hkXLH$2gE-ugB|FI|fccvL5YLe)CG|o+(vNI@dl3y;X zHK#@`og+6iRfyrk<&e(zv1_-hC=Iu_oO6xT`g;GZu z3Cp(vs&Bayc2#3_Ak<{hFOFJAK78H_@O0(K5f*5=A*D``0L+T&>aEwXcEdYo{idc0 zu|{mtjQECsYR#WSx_Vx0reg}c(lx5}l&e%1tT0;IJ|2(|Yr|1Hy52ksoVk*k?oEs4 z`!LGQDxsQKT)i>wfFYgAFHK9vu7JaJhxL5APked4>E7z5jh9ZF_`|905uCmrjP^OF z#1S`Btk}V7WAJq{$KLp)QB4PpOLWf!>*11N?1Xz|kP@2xY!^OqdDT!2CEi4+ZNsG| zEd`PLrC5Y_H@k8`zmvdES>lSgSxE^jwU5#aj;9Rs~OtAcM7*&M3(DrNdo(d|K=Lp@-Z3`eJwL7V7gdcKQO{oj-ZtEz zRBZWRMh!KMd%S}$ti|aQO+SlL-l15f3y&YUi1J|Tz2{ofnRQNE0UVLq`T6_@N8R0M zp|x3pv(S|!z)HR{1Q1LM*5}IeTj!NAko@>Du1kJ%{2*9ljvch2`v6r8NRy*+d)&ji z3v@G~gbro-=Gqo={B~j`MUPdX+;&X(&F3i^@{=G4H+=AHEo_JF$(Dn2w=L%LHt&{^ z6{QIqvt&IfKap~&s&DN2k5bh@3?pKdVFFcZq(?6WKbZQ*&tx7SY<~e7Od|PwbAQb?odMh+Gc`JFkVAYTRm5 zI+er<<}K_T9Ru>{I$Y1-C=h%)eH7Opr0BJ@wGFO_4f0;z0PtnF+ONjWX+yHhCPGUg zoIjHzM95OZ=(&&WHrXop9O0;S`r6Xc@=>)gDKQZ*Zj{QsHU!5NwZOip9*VwJbK)X7 zYZ4@_MHmqFOM97ccm_;+M+WgB=OGmNIdTz#l^*1v*TpuZ@#g1Eh9J~ zc_F>uZA-B)oLJQ4_wuY+sKZ#sZf8jTo^#p8Zoqm4A+dC3|_3f+3l3Ajd0T zJeLbO%(Woy%5%sW8o3PCOd4EXCQX$K3S4Bgu<0Q?E2U+9C`l=r{Pz!0GLW*(a88s3 z2VF~8VG6tZhH8yeraH&sNxxX6g{Hd6XnUwFZhi~$1A!rE3mqpLrRbB7jXO2 z`r>D9&qwraRTo!>8bSRO&V+U)QxQ9Vpm(}lNd%+2lJ7^mPmb!AT=o?Rj}i0FvyE_@ z)0L(E{B}LtKBMD$Ikn^PVNNy%)Yk>Nh7&+>rWxV!_9)@GX5BOs`d-besfG=JGxykz=9_OOwIB5^L^7Ie z=J4va#l;s}+)@HxMTTRWX!ZGg6K2T0G z!oE>l@AsaI9~slM@XFZ&=}ZYanwmN4<%_U1ycQZzyQd$ zSv$YK`r){;K9et5FlR34^V~N%$)uPqc(>uCa4eKw6q=jC38OMk6DIs@2{@7eYmDhW zm@{VDH+N-0!6M~Xl@65n;kj=TBOIjz>EMBHCM&|x}Zh(@_lEBEsq}Phr z&l01e7v2J3udS{N1M@5ksu3X@AK%!&q0Z8^Ee#;#*44L%=g|pG@acX1TBt<#cnZtk z2#YBaBWId|)_qpbx${VWTAqu1_00yxktj#fp5M4tiBSc5X;wR4 zBC200w~1jtYdzg@#ifW8jA4Mvr;Ka78Q~jlYrvS5g+fA;c%L>w6P7n^-RuUSgU{pH z>vuxl8TXyuc-J==Nc}MY^T=Oyt{~Lc*Hd9jqgSW6*x^+fXZ^F+vMm2hh{8)L!H;5- z`Q-A}5_&Y<9PIk5`|GEX5Rp8o^Ro+6{wYJu(%%WOH3z7Itw-Yn@pP!7Ky`lFlBA&V zQki`pKZ+@il`ZH+lVEQF(Nj}%?_B-8)272T4Ac~x)ea&O_&JWyJR~(W=|YtP75abw z{?XxvZQFkezy$BGLlM4pdl!O-lMwmm*jX~wLt0neKm-Qn)kW$-@WGlfVbrTQZovN)w`;PJ85xMl=7s%9r5J$3S! z?hh)yh=?KZqp88hUj&1J2!HPn+v%PC^yIa9Hozn747YY;&Xq1j&zzy>`6VNQgBulG zAQ8G`{yzeI{HcV0Onv>8ADwTmZx5dySVQ+s_1(-v^Yh>TN7#)l9^Ix zoAQvZ-lsA3FS$TN3aH>5<@@bO12Fg6dVvVVgf?em31f{DD6$dJUSR$=h2X6?R+H72 zQq{drWO&p;WpvA5bZ~Q3t|+x#8rDNw2rg4toeXLTE7ilLNR$?{2JyTAXvdnXVK>uPI-%jffE%pwZ<4Overs}&Q_;BPOc zgj!votG|EE5^OvLV~p5tJMY@J{`g|!}VM3rHDd|Ymu7$}@5!$w7St*vKH zVAe?F`xTiJ1_{%|x2jbe5g#2N*ETeWQO2$xFS%^nYyE-HhF?D)Bj%`-+G;8KjxdxcPFPr`&PM9RpLOzFcDmFMn*U&pZo*jVJsTZwY9%!Cs#6|?JtQh4>`8-3SMPknl zmdNP?wEJb+{TX>-X(@l{IBskrZp`?M9~zOYR;m6X_@6_vBNM3IF6&2_RTi5dD4QEd zp(=u#A(dM;Fc~6qpgbZmz4hY#k_o@tj?dMb0p|3Dq{*6!{Jh7&Zv{LF1%>YPaj`yI=A=};{4$t{ zU8JUo$45e@W5!}8=Abpw=cn8@MF3ZAm%EQc{F4aQ&Tq_Le7>i;O=Lo(B)5mWUTH-D zXfPQ!Hfmd$n3w=uvnBuVZ-PWs&DhH+5uDunC$gxm7=>bb4F)8Nq1E(VH_+_=9&`Ek z!c1K#1%7vNN#5DnAqn+eXcE91Q&Pq)NKh@G|Mn;N<%2Rq;@*|}md<2*_w#1|aCAjw zRUQy2#TG4-G#Q70x%B7zXGVO!{_(bt3r!Qd$8QUuk;C@cL+^aLc0L!-G~HUa{^x;B z5z@_ZjGELRogC*{@May>Kp8Hf3I0Qx38J&PvXoe+TVwLJ7)UW&iap29Q zL4vz~60F+Y@K{alB?EF3^S7>uBH<4VZB_NPb~ekWp!tHQPZ>r9gpv*0kh~J4TsCfQ z$<7(_M7g-J9UgxEZNP~j+7~m*pwTGsXQeRoE*v}4Ug(W~VTvCl;52jYT`4#rz_+)u?->&>djfpzD>`*hy*8FQ%fsXrL?BAzW?CYuSoNtVpc*_@-P;;_~5T! z2e$0=y1l*rr8%-mH$iAWTA_%%$Kl~;cFlt9WsgV_0bHHO4rM39Gv ziFZL8t#Q9^AQMwlppCk|JPWi{&7C;LsHoU*Xg*dky2T+`H~rPD;bK56xRcO`iE7Mf&X@Qo#6 zi;{o&uZWCvuBH)>V@i7Z*3FvF?#7=#3;y7klO~S!jD);V8@%E7ewp%_=8V+toIHe7 zm#Q+P6oq0MSg=NuBWddDQmd%)h6&44eVVT4unN}B_k%u|r3K-YrYL_dpxZ-XlrLe@ z39@e;@14PlVp+g5*Zv|?98K5v8ccWH2LT(Bs>9i1$D*opoki4!)>a@0Zk?Wn$kDK? z1wyipO!qjlpwpI#PNyADA)1Nw#$$VnL=0Zj0O;Cz#TKb9#gZBfxC$l zj(15RbEjghiYesvGf$JEce~#n9f;YeQQe%zVPp?m@!#T~dboLq)aQF^ch!5vPsZ=s zQ>>VMcY8LMNP8)rm8-;PAZvE`UKo`#jtXh?Ep0Wy?(V6KG2EIV4ImKQF2^UI*KSHx ze>6;+XT^1nz2d6hV1)?TCD}jUU6=+%iBeJTJ0jAHu0Gz;0*}*%+A<5DmIBBWLr!l| z`!je$KdEuAhaT#c&sSBHc6r^P%g>E?CvUjuCO0-VvSTPSr58euRn)fz93x2u?>w_a zazD323<;$UV*Q*XFFMuCqy{)sTxg}2VtGdHly$SL3{xE(6RGxXrFdh-B;urGfZPL) zR^RDYk0a2sZZG$70LbrUi3r`;IX`F9CsZlpF4j7cLP)bLR42Ums68&CGv%V)V5+>-`MDMlC>m( ziQu`iI&|Y{V!~EYRiz_a;&R~pT^=Wy*cZp^!j-Z&KNy4AtMWetvtmLhWg+u3~_rCzk%YH-5e5`Ir;AF*5Ts|^8 zp4kOgSVOVSK{basRkL{6X^rT+&z%fS=D*SYeJ*`WgoPQc{FF%kxY~un`C#Z3%fH=S zX`1+>W9YX9bjIr3N)|K@`Tl7q4vNV}8AYd;1_C{*$FsYOUAxM&fO#jpU3XKLWanzd z*O7nh)Yp*U8VqM8#bpgw&hBgifJCMW4@a~SjQw?n1$jRNK_m!?Dl0D+OPB7-o4EMh zZ_}x)v*C9>>m|IeIHj$520m(lVNDm-=gAc8QsD)e#ZGvi`IrNSg6I8ZD5%l8mKG^6 z5W~Iq+7y_Q^HoYu0nL}2Bc*)^z!Xz>h zUL)!3kGeV`8D6ad@;KQ65!do+qgEXll*Ni!r;u+xXD18q(F>_~yeCafO{>Lu>Z~4S zzj(R1rB;9IR(NtRW^IIRk$RYF`VUcr3>pA$>%*cpUwixS2QJCAD`;~gf-6^5)=-!1 z<_gl7pSXglTx%ud5X=oQvWXxfcnqv_16MlyMC&~0Pu?%fbY%v$QteCq$=IB6DJBs; zH-up`-!XiQu!{ zF~`f%%y48DD@xu4f&dgS^v%tYbs>vFJUO%bSj$Q<4U8%S_iuyzpEVsh@WX+sYmk%m z?=8SO11C%=Yv^q-iMe@T%CxvZEztVrHe$=lmfKxy7zc|Ec|*kjiCkPH;@p)pL=g0T z`Q_a0g=omNXn(04WU^`f|u0gQk%%~&*+aHS=PV@u9Y z#}X=pV3jsRb=EnV>))d5Vr`XZZVsM30AGH+g-Lj7Q>nl#oW}}lw+lih)Bw6VnC=|% zh5)iT@<#I0lxI}jUA8T)FmYZDH;`RlGS>UaM^SwE@BuuDYYcQVj&w0L%1niNJ4O~_ zSt@A{^rtTqMgjX#d*GDt}6ZtzrDZ7=C%O!Uxb%s@xgiyg%4q zv2R?N%&zG3YR2|$Y*17>r#mtX0{%Auiwjr?c&z^)+|%>vIawuBk)it40*Vh|we*)P zgX8EPN)!g#$Iy-IyUU#qiqVUn7$H>`_DqN#fbcqerB-NE0Le-b322qh&^5%KM8dSaz!e#dbTUD<=9W6=oWOkH9S zCjiwKtc31)&j^AP<;9^0gYF`g7M9%smQpci|6ufhnn_-$jL40~{DReV8 z-zV+A@&IKT5u86cF%cQS=PnRXM!8eMou^)&`9uEM`vQ7=Jh$I4gX%v)f-Ze$?hXT( zGl*rtt2imVKvzxNbhZha7f1>TgX)7`Nq{K?fJgx~da{nvK#VH+ua7%C#Xjw-_% za!tmN<@fj~&qpMgq2_^QIUXb7#66Ln{rq4<4Mz{tV0E9*8m!=$e6@}*ETjg^=FOWo z9O)lD*Z8anRgn5I*KU;OXF`{)oA)sg#nNEe1~fQ^z zR4*W|wT$78H2sgu%dJJ+gq$DdEz}&njF!QKOey+g-S$)2m@<1Rn{N?B`zqDnMD)19hbzMzdGdSLt zdstChfKZ55s<%(W0Oz;1t81vYm!eZIxwnUyo9yZN0Se@bviSo##`w7Yeo@qZ!qCWT zcks!zUj^IQ|6m`lHr~JXOCd~N*>H}<_?U!^82wHlPn7|Pa#crb3!u~g-M1qzBH`@Z zyK(E_$P0pAW`t%fm#rC6Cj&cVD-c^Zko>0<-uM72DP-ra-V^{Mbaaf+RA6KpNJ{5X zv=V63`3)Z(G5(i*+p%s0qL2f1yfiTNoK_s{O?&``>zB&4UDixO)>T)F2FF4n)6zjV zc`CcRrlZ4=p4|?Vn{c;K)R`o*fPXMX^C^EcxR5>;{`mFIkF_(|o3OtRo%rc%=iA+% zt3`g=R;&pTq83r6H?-@PK}PBx!cr`7)zlPY>nyQDd6JHm!#PAKkZ@mBkd3C?Rd#C5 z(YIqCx{B0Nz$dI5bcQVT9UL$Knm%kdL~B{84iEsgc-+Gc^u53DY-yO9VhZCea4&j) zSM~zh*wplEV+QM~_dBDZ3z%j=1^S>*2(HqMlvY|zjXZ#t?5U9MS7jvp3t6)X4C9!= z%et>CqeS~02os38{C@ft-19CQlNRGj4Kpk(hQM@@xg#sYq&yG-*U6re`!ls|5LF#} z$_mq;(n!@WI2FP93rigGv!OixUGf(^b_C+SW!MP4sz2K3K~e2Hrdc-wu^l{aK>wp( z$&IzRKW3zqRhs=ytNdXOKR!9h=COQnzCULQQhOX+lS#%KZIgEN_WqHPX#7(op%tVT z*5JxiyLaU6eki*&Y7Y{jr>3WiGW^Qqg)&Q&q;E+#R2?c5-aD-9Rp(OEn-N_{EZUhL zb0A=u@3TTNLIQGhDkJaUX=?)fKIETiLm+>okevA4z3EVuerH!HrYaO;iGUE+2!O~K zWc>e0f|~qM#%MzY!1VY*kGPWVG}z^Shb?q^cUaxc!^=yFDq1)Eapn)J)<_*=Q?pAA zqesOUkm77fgQMRGJx%Xs27G0Qd9TpixB4vD<=uSe!&w$9eAhzlqLO*Xff5K;6;ZWf zwo~@EHP~bZ>hKNSwI}9*HPG#2Uo@_zcsq;Ybfjw9@bOOn2Ik<+2${=r?_R;jgkKPC zh?71cxD&p>mIJJPXk+O9FL9eW8x&(wuJ4(w-NU29`zZ~ypo`}x4{)>+p?BxaYf^I6TQPqw-=TNv#fx28<(_a>QYCJw@V`mQrmj}w96RBATVSp5-jI+1?*O37SbUn{94f+_u<3l`MBp_z{(K?*bi$HTnBX7yL# zGdJ1YN^jKuCJzL=+`26!zz0CFQQm%mxIW*`NGTk;!uO1PZg77(;}@q68<9#Tq&TA! z!}&Qv;M(TO#^%VI~cHrkhWQ4yR6F%{5b%D(uyKq(DElV7&VmqR2e|OF{H1HM}s~H{$;J? zB8#pEK)+T~Oc~d{b$LJw=GZws-=2sz=2kzXs4PY559AL`(mLQeY?I8MLL{}IADaEA z6%e&mMN6&{1qq*P!r*n4(m!-X7abz0VTPv~*3DY|N?x-dvh{FD&die4XnzCyY|Z!@ z-oz=99Q91OCQ4cpCacWwt<7If^Y|#DaniY9oX~-kkXh^Kf-W_+w`dM`Z4-b^0_YE< zlPCtY>xTMNclb~w|5Ay@oqpKRp28|>W~1QAdwgCj`u#j2L{a1_RVir~4xNE_v2hkE zv~N*EKVavU0c{s4F}4Zh@T&n5fK4=< zRkBLxn1Lmuc;wtZF*Ab&%;2NNowlFALK|-BHPzSGf6Su&IIoz+e@AgXWxfn9(Oln8 z!6x}X;T9?(DjS1}SW?!50p}@BtAqeQPyYTb*(O#i`o)_!mU4TJe8=9|zc&=k+Q5oN z0`Y`H{xH943R|@jK0PM=NuU>7S9oDWhi`m`ube6nW$mRj7 z2o^2b;(y5lDPIXBJ1&pdv7NoEdrKQ=gqm-6a30-mT0+%-E@7mEKR{BHvB0*qV2`yL`NDxp9v{Z2+^i&Ct?Y>!`pU%6OTY z)>>9)7u~60XGZev(LYxttwxtt<%eww+q_a2!?f(>VIp#YT3-g6f(!ajQ3+li@Xrw9 zQf+w-Qsy{x#A8Bq{@J&N&SL-w1QT7kd#SPsoak_%X37-y?M{6I62NeuA4u9Q@$osjdm)A?99yg2tf8YxQ(i7C z6W0Dw;0^$5*_X|r`57f129@WWaqQssihgtr!z2B<8$3x_4HkJ2wYSn zWpLq*6Ds)a=DLL{-wx~Zkm@abSTo}Y8MO8Z3fSV|cjrJ!u3|So><`8u3}RhX)HNJyg69`iu5cZIjyC?dRWDbwHkqOYC<965KmlKP4Yf!u8##3SB;3f90q{(B-BLt zPvp*lIuC(|E!S`3S#jLx{G#oaxiNz%zIA!(o0`6s$9V)$iGTs~4Mj?J_U_)ES;evg ziISQVKh#zm$nThluwTD^HC4F8(wEL(gJ$QuyrHnoxRB9>XdlX3GbGA@9FPNH2;b0} z5CRA<(yq_jFjtYten2cG~?QpdcptEcn5!;Bk zFDJt{QHINZ`cBc{vp{I{-sX2XGc|Au0iRia-OH2eto3bRb{3m`krBx69h^-ope4th zYwIT&F9A0-Yt9A~m@32IWNpEsITFR`(|+W*c#AWV5>qlT)f&Ve|6Dx)uNQ{;$+`jJ zRO>r-fAF^uqaFJ29yYue#_Lxr3@uNrPq`{X58Zn(fTF8NI(X-$H7eC-exOBB?K-~V zpmH1B?fuID9y3ROwVvq^F(!<9feJzB4@DRJSTQ`fISwG514%N1^08-ks@Y~HfH1nh z3+aZN8!R~OfWk72je6G$;xdiePkpH&Ylh3Pga|ljH%|}gz@1H!DYU22DV?_vl1uGs zf;DT<245qa{J^gH%qB<^*MKe=qlPh22H-qgaeXJJD+vrY!E9P2IQJ*PN*5>?55a55 z4jD!p{W6i1(vM#hOc-oKh<>?d((W|IYd-+bgs3^xV#v-&jCPi=1Ti*`h2-xzUH+G@ z=pJQ9M*SM%%i#${pzQAgC-v6*Gb5R#&~W# z!84Pjq@-ipN-PXWO?C6Mx@_(3A<^%&>WDLO%kBnsBGVF*_?GV_*vge&dTP5Mcl+R~ z^v1XvoJ()@mH5$uKDN#Vyn5Hg%PHVLe(E0cJ-^Rty$R}-3KP?+$Td}IVZ zZKSR$$spqomUBYSwE$)MMHXg$1~MRB-cK@}dfn479A7`O?QBW3)4`=J^zTgJP zAyz=|tyX$^x}ml8NuU4zrS$FooRk!Mrb0B0ig7)#!W=w(@9x|{G6JA20`w!_nR+Wi z8YnP}-R$ftjy!Mx%U~Q!E78M6?EO@BDh_t*T)U>AFLzUcFE8uQUI3o}=>g{RoYQRS zZ`EqF95h7upfZI>LiVh&&!O>`{2eNxGL=Cj^y9w|`8^&}beMvj9Ruj$myz4-TyC#G z9zF!iN=+G;Ara;283y8{gqsMU&#Jb^@u=;Td72}KJW2Z<5FhBmm^z_({X3NJ9UK{X z?~fM0;NweZJq88_&PYK`9P(nMfU(|8z`U@uCPaYU@o>ltV??+qweUeh87@2chP!(H z#ph>#e}8R*OZ{TO-2OUQG?Rv!Fu%7Gk^m_>Z~>Ov`)sQ#D`%lMGfrqAVu6bI-*EvO zAabfff_{IXH$-7Gdxih(B-Ye8N!3J!d$D=T)uTI~yg;xqPP#DVP%Gj0zEQ!+sY5L( z>c~FI*Yq2D+^`01d0g>94m2`B&)YBe2Z5Lb=wYp>8kq&aWPE|FdQ=w2I$5>5Q0E|t zAnh1^YP4Ehfj;PZF}_GwR5~FYIzIcKK~^S{@L>H$YT@u85}_8OGC4*r^B(<7Hvl|q5d8L){M9)DPRF(UFEt`LdSE|37y7#<4$u@^jy^DA4B=S51 z+Xh`<=qs`E&D)oZjDE64t%3~{U>?;qHv=@`iXf5^e|b1HIhj>A{f8scqB3a4A~u=7 z%$`_2jI}1%v<|ve)73TkJ!hlsKahdra(H}lys^MlJv6d7Qa27Jq=yF>foh<16|?z; z=QvOXDSe)=2tt7lOv|_;neA3#qvG_@h`vPnzAM_-wh-2MV1@N?uK*$0NbcXL3vy+< z-eZp#8k0+}+2`VU3yKdYK?Hjbir6q+w23kxb!XUc=O*a0gzn=_RWj0u7-W9#DsucZ zF`@C_HjqRZ9BH>{h<2?RTPs=-W=U3$*l}4W2s6Lf#tLo2*ndY*{tv$~(I*p%2>_ zg^H-jLvvDLPtsPUj4vAioj>09m-O!hy$h7+bSze9j-5dU!UU*Xzw9cwn}N47ihR?P9!e_K(2QPI-K%B3P!G1eSejC6$` zjvdLSh7$8o(!Af-8kZFW`>w)jY9OTdb87+VCnn99WB)q9f*`T5snB!)vm6=sIKap> zK3C1PPp;zd3cC=yTCbz!>_O1$96{d(qqG_*Aa1tHJSo8b-?t%a)I+FZkwD{o^VU%%HAXf^K$y-8o(F0Vv zAL;h#!hTZ!(#(t4c*BE`Br&tu&4;jNDqXXvsf9xDVr#}GARy0_{HFQ2nwxvnsOa`| zqhFKPDITOTx}a-i!%t2?ATJpBEYtC!6jknnrCJxgBAJjxLomO%;VQB_JcCM@7yX1E zGM-S-Hs45=eD@k(v(Nfiay6JZfc|?9eR}YCn`Oy02C^y>CKu{eKB^X8R|nMHFV7yD zScIJNoWy9TqVKwKrU?*uN9cwZHDrgw3hg2lD9V#wjyNVT>M!Dj6LV-+dwzozD`R`|k4MM!0BEu#?^P6_#uWPP5gv$j0wjkpfTCP1vZAGp$RTyXBGe?`K9BNZok8YzNGUyAnlZBgOTN)wa)K$086!aZScCQ{^avF$c%HBQC|Lei zqie%`0O$-9J&ED(e*Qg`A~ke&PSRnLEOi_KzB5?nZf(lE44Iga2U+wT`&97J*a;IY zU0v}cV`pdQX(xfp=JtA{ZPu_n@-XbaGc--LS*q9fm8!2K&}71Y{3w2WTJ83kdR!(A z4-W^z7l-_Nt9{&o?S=W8CT0qbG_XWw)BWUZ!&fRsDZIOoyfJGd;q(#T6KAv$i#pX+ zPT!qZwi*Kdj%pxJ*lrMF7*@05B&QS&=-y&`#TuomRSCgK#&@c9dT~@_0@}3M*||z| z=O-%LXoOEiUb#D9uqR0LVR6{V!`pwc8tn1 zIb)qIIU4{{5OK#8oT-`(!Z6vKy0$2qGw0&|rp%ZGY$n;9Ble)kg%D8HyqV~&%c#tH zkJ#4K?5U_xTj2j@AVO`h1rby4tp0vBpXa+>&9WB2ehj~j-4uAH538qlYDQHR6d%rtG~#$PQOVWM<0@p~w!&%HH#QAKst8 z;rnadt}f1bJ)e*JCEA1&$ooY#|3~7EN;f0Hz)-`rc(+g{ z-H;cbBH?WJW0mbuJ;jb!Vxal=B(0~X-{hmZ{}YwyEYM|JIP?2mC}Nc*o3f;|eqd`` znm@_{GwD0;M&BwoXq2IqU3h$5P+apLIH$O)fI zsh!BZS$D&cRoWa!#J ztAnbNI`!v%7A_El0#k5beK|QdPxWzg5+5Jm*S~*Bfw*!mkXj6qa2(xz+A_!VoQxuz z+(l?`e50lD$N_)cmD?qAc_=Gb-1f76QcQ_9>iY8i-l2$hA#I4gnKRR0eVGf1{<7Jf4w3K|y-FSKjjWbZ}&C zeVko+^!EZ8zn=eA(k@U?JZ447 z_`I=A9hEb0T(p>{hSN?Jt5NzBf+KCbDt1$HI*G6!sV3zNE;&DStIj0Ag2a;sDJSXB zTP%odiAM6bUFf7d!qHEa%5k*3oaedm8Y9{&(XBKX*{iIErX*lc%%$&qDa-g$v-WQ( z8F|~-8?1Ea!&3{KAG*q;GGR=NRC_u;_a4Ltl6FfI_zNtr5cm>dh1YB2>7{tWg;Ha` zx7z=7K{cCRgJDUJxmn3T=p*$#Vjsd=<68}hG2JrV?7{3D93U8XSS(&;S8p*`j&xC1=FpBgEhM=H(OajRSdz%dHUYY)Ia}m3CdF&c#0ktQsD`tJ zublt>{fkp(EcabJ@DfcZrmpHxD$xA4^t__+zHHDsbp(&^(?9FA_QoiGw;cT~=3${v z^N)*0L2CtDzPI<8w$kT98#s6|F)_?66C%X{M^lcDj$mSf zsmQovtdy~+S421h>Fk1{evgZ1$sPRgv2IXjb>1U;1JZ^1M=B()4AIeHOZ~O$cXv1? z>qAz%a1>K2?7ctDrL}gg(b-L1K6`a7y>Nb#zr;M@&iVJ+T)G1F=+>oLb+!fXS(Z?v zZl@q@4gUT-`RBEG;cxnY^7A;^WvH>QYVwzu+N~&PeCVIi9PljtHrn_zI4xc}uk=1O z&iGPM(Q3*CApxeZQUpA2=bU!gMiUaN1;t5JG&z04kOdOlNAS%`d=C`hctOYQgb4Vp z=#l6)Pfd=vbqf#B17JCaTD2{iNU!n44*~{)H7a7+;s@klRZOw3`r_k9MVF{}<@r0h z#H``VFGm)$jC1P6yryNfZg4ulSG&>?&ELO5et7OfJ}7--h42Q!lAvC9YZB?F7-Fy9 zj9d~tf0=1c9x5l4o4dPW!3fT^^OJECq|QN~+c0nH+5X3ue{R0++TpKbVNyJ7R4!hV`S=~|v@0&dvcWO;q$B4x z+Nq!6l61^_@GPC3o$d2Q2ja`xoa+lN9wyR|vS_-87FAlhDY9w;))RO6 zScJ3Z1YX6+@noWOUW$PYb!CN_v@OXJYy;#3yvlq3M(NU&GaHXXJ7~dFU0lopVG)Q= z_J69d&zP9li z+q~nTkBr#4e`uhiT=lzqiSv|*9FM2KIqjzsNj`uW%|`jB%F4h7w?I1p4G!FhAsaCe z%>%yxQ1V$@iFdHNY7?UBZfXxPvg6uO3^~S-k#Qw$<}t_8#^ir{|utPijs zxN6*9iv*C4cIO}${LMCFz{DHs`CtA zr5%>1WhVe3hB?A{I;{vSti)Itqhy@YhRk<~uLpKNc%>>7+rRY&ogVix*(aM17aWX?{#th%~rfdal@g1g9}+^9JVHx%*fw684i+p-NkM6 ze-XD>XdF-#)0HG3BT>lq;g9HRdLc^1u-HJxua5TUA8DVTlwMbxTHLH2GHC|grFl8A zUnP47JvB4cafIUM9DY0Ja}WWzzVh?uV6`};h-aQJI*aMzG$l2)L%jc!GDPX8HjKy- za?;X}pGyBwjVt+Sm^YM-?b}rwSfy_6gq^XlP!Tg;Gj&fIc}QEEdTY{1+n+UeC+ikyV@3BTJq?<0}_|-4Nly zVAr#;VMpSgV}3=w&Yf$IIz1C` zqh|g#aDZdWxV-zv4{g)-G}TZ=6b!(lv!ZEBUX{GjRY)X2)zMVVjxTk$lLC^&T+h#U zj*a*96^crpwBYwILAg~Y-auhMf{^HpxgAweJH-yASmobze$`xO#>ow%?JLqBvP4n;hW|*ak^l@hkXvDa_pFwjb!2 zuN~I}GhttDpDkRZnEKsq_!JS+-7sO!pDnJ_l7b8e?iE~`PDZJKEnz`Q?a#5%H(lKD zoR^xOoHXMidz1WHe`9NM5J)9(zCq4cznhUhk!vj{6-hkqT5fp$^9A2K1O+9z-IUl7 zi+~q;xJ-r!YowchDUkIO*OOdl8=G*r%ju||dkVH5`jX@Z{1)!PP1cp7jSmB-`0+(c z;DfE+!vktXdCjy>XUoFWb8lV|K1-pYi=gS_X}LIj2*ya=CJcEd;Y+!x{H@T?guyry z^z9_qt4bEO-d{nH%T6y0PWF3m+f8-xsx-`SZ1_)#gPyWZd{)Bl*D%ozI_Pf1xtWoKuUNk;PhgdJqk zp_&Srro0P(LNO&rDofE#o2zK*Svf6uDy!wCFDQP+})!{eT6Aupqk+3)sxbe`tc?5wiAzF zCn}nL;m;RZo3`uSa$!s>BH!;WvYj$k-WFcYvoGAj6a2gVO}8|cnK?p=G4a`*L60`h zRbk*dnwL->k49?p&G325c8FHNvw~_{TkHnMZs>?MP{dZHckq;B7<+4KYb)(CblF0D zzu1SE;&0Y-6uYG7ncpTh8fT));8VHX!PSvJ+t=4uAK3!!C|gId@=15HC~Snt5X zA4Idg_VZ!0?^%dVIvCZ1v!6LRar>Z$N5$e5XmHwt1OK8RK`_{@mi=~MS zRYF;!0y2nFr#@=_^mruJ-1qfN@c1_sv{|k>rd;rZW<&N z5&2}FNM^IJla(9xtL0Hp<`ioFy0woAj9N}el^t=*{<*ZIHFaA@XV^6}IQY8eQ(m6d ziK?X!t4kYGwf}{4sBpJQc-1uq27WM|ypi^{GxDC~Lr39c$mGRASlp^AEJ&i>@Gm5R z=e2yRzu%9RtNSi36TWJf0>*M^_IvT-#lpz6^*S1U+gYdq$QwreROVe1N3@HDBpMuQ zv#P-8b#fw>)c`(H*0JVdGjLlp0ZFT-TNe4%jE$3h7&5KsOW$9|Nds0II>|5Rnz@q) z;364t3vEWf;%l{T?v$+T+5bTr4Szsp{&*Y8F+66(5~*f6E?k;vz9*98Ph&I_4m`<# zbKP)(q4PAiC|?0`I3C-i=u10@2tT|$-c$Q+RrVQJCQ#W@f@wpRqdqpAzRYK2(4Z7W z-Ja?;SOl^F7_kcbv-ZE~&{NcElT0&SqpCyBXpeF03&xG}!>N~u^TYM>^ONOl$;&oE zR#5dW@-ac9bt^`BUPMy#aA1-5CKU{!c?w6@aY0_xGSXTGKl)l0hy z$mncJZehD3jAf)%%|vcIDUw&xTvfz%UO{>7<6Nvi{UlBQE`TERVMhk-*I&t20TS8G zqf~L9Ttl315R%d5QVS4fhNdfgx8`jZ_s$Z~IJ!@C+STH@7XqdsZd=MLf_m(-sa>+LTyU`%2 z^#vVR=(O^f)d=U|tJ&`oL|9ZGKjv)x%S;dW5)pnVkWMO%8HT2O*5{lq?*{Sop@ZlC zura`j+3n;QBl6W}j_^;HFS@U|3WA~yGY-0m zDdgSQClB=Fz9}(Evo|M>y26s_N%dJj`sC!q5!-Z%AHYvw*&|Y&q<|ZGX&?i4uLCrkZy9>T(IP9=Ae!pq{Uvbk(y%1C?Y&==l z?+%0y`SjwFMdaY)hCOT9H}&KCLG-<6C#DC&E}{ICv>|+w-5VP|?TbvOg34-Yk3>bI z*BijoJ3r!8iByCeysD{b00JXw zmrOIMtBiE1v0+wXALLpEXd5^Pw=o4&$-McF@L9NTa zIg#9lzDxQAeFl28AvB|Q{7fYAK*Q^$4B^OAP*PUb)sgY1kcEW*$1E5l4OK;}qeXBV zgP1LKM2_=@S>C*0$(g)(_IE%rwuZ1>ucD7+t9?zlr)1=I(aWio7&WCRYy-Wy=VRj) zlSXSBx6(N^V^tQ7x2vst6&DTzpptUIlZxY7%yORbNDH{Pf@n0ENj+WJ1jN^Hd|<`A zCYkn8mz7qDL`zExIDo>KqWce`Z-Dd!j4z66c`udoN-))CjV@u-H8ALKdgqAK>qN13 z;Kgj(@cDp!UyOp%6=+M%;x`5Dpmf7{|Mm@nn~>9gHk%JaYnAYW0vc7?xPHijgFd>L zjTUhz`a-Le(4UdY$vBd9wmpwoZ^%IazJ_ScVp8R%uV%;1)NT#-_V)9F9OcGMe=g3B zQ2v+a+U@I$MQZaNb~)$(Htvqk$A(C)1(5+SUw*CxvDn|Jnmp zLcYT7-IJ39LZP{qMvopH zCr!rLAc}9>dt>XVqQc&_hE0tnZz&YHTc7Qc+IBdorx+REYAMnf5TlAs%ow~{0N`*y z#JEgbRpl}oh0!(thh_wI8s3q*G~HOxncFPcbXXiY&W^xlY4(V*e;Mb5-7h@aYG%<_y~vzWD1$b{HYWW zFxmN^NfQDW_#NLtOD5HWus?)w!QarSlU%p-8;5XRsma!?`9bx|+9|=ZNdM_ekx46q zlwd-nc5;2aP)v!A6_Yw%1C9p4<3Si9xBP3qd{JJUY1I1IotM9-XgAg1vQvvZXk+)Q zdxq!{7VfR%9bP~muWIR*B-{!1LvQUY!h^N!sqiTZompwgnwAgMCLhPRLIbs(!DJh{ z{ZE|7#lsE7o|@5TO66Z)J3mQ6jODwdE9T8bMuT$=>U5ygvBLgo0uoD-M*Q}EtS%TX zJA_lgq?)xHe_7V>o*A#C#M#5c<5}LYCq(G+3Z#WEFlMlQ{0$!>K9qgUH6>1c&9>R2 zyIV4*f|&Xghh$00IbDnuhhR3e13-)f{E+o0>uL3YkQ52UM?J_EJ|HD?${MyPoss)Q zCB?e!7j||F#~l;djuc)q#;~_?yzZ&unbalbc3;Kh{*`fX0VQ|0PtI2C9^DdD)7f0`jgMliKxv#!A zEm3(=^4Hc8H~RzW$8=}2ulue~-%*^S1@XJzUClr-;k&9`hkT^TC@<;KUjtj1m27@0 zqs*!OaB!nUiSpNlu|qBKV%~6we_=--DN`V1Xc+LHb>5MUmyaFu+_$C#?*4d(9u89f zr@@&72JM3=(jQgamibH!iMsD=yiIT}+@$2DQZ#(R@%>zjbSWxP z<+HwQg2SQzj2(XmZc}1oMEu(xWL8k)*;x|hs$|yDkof{4&ea7uELw}joBkV5nb82; zWA7$#|2(()08X%$1zd8=_@l$aZ3FhdBQ_x&7-h@mI6RmZUW6X)j+$7C&EG#BPmC57 zVetZ|=h8Uypz$*1hAT+dU@d_5vCxhFPi!z=e3ztU5|FU$JU*iy`}1ntkP|yj;SG;A z(-rNusvH6d0?;iBI;6+O#)7&i6oqr7{m~2W;rRublo4eHQTnEhvc%4{Z!n+a4#SB|_vA2-YOyx4Lwy4UR#-fa#&HUQ>}^S}p~ugkgvnYPM? z1}}$C+$;0}%{H3x{!x|_Lw%hXtt1w}exG4q_d7edNu(S?Ns9L&Tt+t|J2SIDoNOEN zctmQ*ZBar=qHWYx7y10UGfzvL0#>Fa5atX+65B3zv~f(Ye5eTnb7=D96IO}+z+sZE=wnWS!#ib#2yU z{7`>CtaV#kWDMUHrsV_7Zl`O-pNz9(mNn3d-BSLfmMqbx1jh|cujy`JO3!)U5spz2 z_7$O@DqG)$G!~bh4^A88ZexfgeRx_z87Iz&9ObQiSGUoVGHS39gKYyPK}Q ze#3OtH!eXz=Jz(3qzrOUA@EuBEKP$n_$jBcItnFI{L`kf@AJVpI-26KO;+8E1hvGd zLdjJWVutH@>16N0OEm2YYZ4N-gIAA2>!tvlM?h5&+zVsriKiW4fd8SF<~8$QOB0JX z3yX?|kbcebqr8VlN3hG*njuc|bPe<*@5-8O@C)UI7j?2k^kTnsSirw#Pr6$cyxj0C z#LsYj*NNT|X*7 z8STzba&%>E3Da2gOA!e24_EI9_z*6x#<3_roS^lGBGj*i`qB=G0ipe&)6+@W7GeHk z?H3D1=8ZF5@k!X!`Q>H{NK+%t_|m|hMN0#;arr%{Y?{*5H_RWN$!+UMVWplw5v#XL znV8T6CYGTWKbWp#-p7Lwdgo~r)_h+IxUHUf8+&j@8%U;SW-e7|(k@L{qls+FsoOf| zHSU>fUywC^?NIU^!+wp?ytTKx)Q@knrv?Hy)|;M&e{ajkIx5)U^Mc)BzC)7eI#8T} zG|vp7MaD%Ka<{Y1z7KA^DZP>ppxbEGrK_1ygOvC>@%f5DLzL}C?2TNhp`8g)X2aw3 z#%&(79=H^{U2_qR%1V#T^!Yco*uKtw@r&O0bp?Xp*3euf0N34>)z#eg1{I*U&!4Xo z#n8km(NResaQZ38PMcEHu@)(;`c7^f)-Qkq4Uge2zLD*vO0_=wzT&hdHR9ex_{Hhp zf#}(z5Bip@iBQe~xR#lc3Se3ISJJDd_W@~39&(u`&pdzh++g%RqQvi=M}c!rL%*Gv z8pN9Cs4J?gdthcv*d1zXs*hIN-gG@zn4ID0VqY!3G$5kzwo9hQsXlFJnoXXom!RQ= zOzu@?1bD6W18e>a7!-*EOTX$`$!OA)6Yj44@F#iMk{$n`K!J}XWZnZd%U5VWs7IRf zJG(iw2ct?xBT0)6Kvy!T>_7%XXUD%s^RX7s-R}+HQzX(|!Zrs$Hu~Zed94|EhLZug5B*;6Ur(0s{uB)_WamKH>a8Cby z7(tSbI^RNHa{he5PUN)hiyF6t@COtfZNEEuR0Wt?<$-2|aR1yU# zwgvIKK?4>%&w^=)_EGC92>QltvdXv4R$mN9d4Xxa@Do?hKFrl0kewDpR3q>F9EED1 zr!l@9p!RLLRIo={@btE~OTA@tp$K(rycngz1YcKlpsHeoSKm+`eOGTrVrDHQYF7`u z;6iCX_YveA*>D363}!tL@zSZQiSVEqj<-3z`EDebQz97~u|*$YW-aCAEF-kQTf0DD zaYC0+%q@`E=m^g3{BK~lXei5DzY$Ay;p+yEQ=WdQM)^<27!^AI6sjPHTBRJ#r8q2y zd{!5ZM=`4WITc)iB5FV|f%QYKR8~_591UOhP*7)>z@`N;8Oz|)O2g^iomYwp;NO8e z6POL~*n$#aCpH9_0Xie*hXJ4~=bxm$av8}wppol*$&koLYRNkU>~L1;ms8O|n?DnD zljSdGw^v7*;5&|%OZ=wI_>S>hgH(xO?IXYC0@|x6XFXw`&AF`2&f$D!3g%+*W*c!) z^#zsq-;VCsI_YKQ_E>EJ>uZ@-NmDDTLZ9*1?6uk^L}`Q3wzJ}!b|>)D=CimfeO|&+VpwH z9{AioK3Sh;P1rgMb4qrK2q>{7PDC1`y!(K%4Ofb(Lf>_8RhyEPgG>U^8zuV2!c{i5 zDF2Rp&EoJ$3Hr@gJ@0^$t}VmG`R(nv7oQ(Pzdca4x@>np5K}hF4}JUge*H9U4!@DV zJZwI4Fo0$F`Q@9ya5}tv!}YP56hB4>K14OcowlQ$^_#pM7M3D-`Sc;q{fmv)jFwCxE8(8=ZB4R%G6hBB>>PxQcT0&?Hq@Uh=}(-9d1e+!H< zK;63$3ZxoS>=;P7oUq8i+Q>pNWfW4eC-+UrQMvf# zjGlfYE#u1XVSB<4Lo4I(4`n>JwTSdaN17i$mpiG7=Irs|ZS;ggH{f}_}ce}2+Srta4;Gr+77vSF1 zx(0fY5KBWQ#qx@{W^gfrRLF12Qn@SrDT1zfD^a;nRY)TC*st4(r{bzYZ`h^8?|iqa z(cC1xmdideW`FC5ur9T|=Al9o)}0*ZH*8p#RFV&u{}^<~ul9JVrA-yiz8F2sn?zf> zbP75b^{6SJaOIs|mlnIXvoR&G7NVl~<%@w9 z)*Fw7cJB)Pk7i!i{<3>LxcqN=YQ{dChh1&{V463*3@+e~QtnQv{|Pp44%K0{t=A( zu(Nj7ju{f8RIDvLDgqT_^3ja)?Hy!?4dYVJr`>}JV+t5T%-=170({>sih%?dki%_x z_a;mj&$O3Z4nY|_GOb)?*{MP&q*+;6g;N`vtVT0xJXiV96f1SJ^R0df;o6^u={>p+acE22Isgr*7H_gsUOLqOZ z35y-z@#(H;;;dy_#oe@zmzE59Q&8y3RYBopmV}_d#wIq3aB^%jyv&D730Pgp@+r|; z+v?HPcO%JhmTCC{6lWJY<8PKU;Ca?rd4tURE=Ko2UXzayzpas~g>+q%3a=wxjA#b? z0I4kQf3+2 zwLi3MyyZOM-p;-NZL{8IXE{r+c+xCD#j5&U=G}Z<2rD@N62%sJIWs4Hr<0R1&f3dR zmjLp_$@*R2Zt2LZ%iHrbnmc#??0zM2B8vJO^AP8B?Wa<+-;C5aA50s_f`IjV&7I-T z(vl@a2BK`P(M@!`!cK({cj0!$HFT4o{?{V~bzCC*s<6MPzhXwv{lzQDfnxc+ zYSAmUOLF`z!T=ChL%oQ{=Rc9Ww-Irn3b@g#xXFjG_(JQ^cJdg6w_?(=y`w}iNW}B_ z9UlxlnDswyy)s~?rwiBeCaD&66jvy+6~oEUWgF%T{ULKlOM80}ec2W3e+~2?v&x?K z_VcuzT@RGpXZ=hCuYbtYWQ0nG>2Yfiy2(lesR-llh9JjGwSGS2P8z_uEeUUj8n|*X zqUh-=z5Zia5ggQQ2m+JVQMTBQrFSU(=)6Q$J5jR2BDy9n|GV&J11Lb;;{I+s(vIgM zdXmmY0w3^{)jv_vWGgb-riX+E?6s0+Zwg`m4hc`S%4_pSpPA%yH-Lml3nr0&TU)nd zyJ2WZ>*zrL0(5pj6!&4qYX}F}xOn||gEfh1y?0J5m>X2Ke(%r*CrF}b6uh4b)qEK$ z1RXe2o^$@k0VO5oxK~{tG51wm#)}4y84RQ&MptesXqN&e(Ja=su9iZR2b*u*6jDhx3KB!sTcl+4_Hy1|`0MV`88vZG1#mk*jnh63!&2IR64rwyWy=+KiyL4xqBVk3n{hYn7y3-aJ()yG?JpRmae z@^eDq%Wmqb8Mvyd1HxkY= z6F--zD5b+exih|-(Y^i}4IRGiqzX2QrN7;Ep_dYMwTSm#{KXdE%jzLuwpcgb_ovH@ z`+pVGw`DbgRJkQ3XtwiWk9X=GpKGf1K%OCWlW0&n0hyATBFL7i$dI_N^3cOeeEYhO z)+RdwiABvv{KLdxfDt&>hOx6Kk|5Zl0jRJhOO3ledHR%d<2spq81I7H$_Yv3lZ+>g z(Ik;OYhNQDm8bEdF#{L(Km0RzsIy&Qy)&0|HidC~3v|ubQW&xt4yeJ5p=D?{1qU_Q zN8O4kJ>iv5rK@Di%pEe*V(f~tpS>+CFnqa8|M!*;$C;J~ZC%fhTnPhK9f4em2|@hZ z*gwksQ>RVtwBDQy2rcxKYupfqF$*<4@Q#dB4tR-@kRY3uvxV}`yt3zo^{r$U{&!T5 zChW-mE$$o#{|wv`5@i1Vf-l}O?Mdm^4D*Z~5d4OD*@Tx@&SjMcn^G_s6x(?R9*AGK zySc%Z_{X{a;aACr^77RbWMKjiw4&d>1COAUKFaUhBbU8py@8+_qgZ?G$FTiN|Lj5s zxsQ{zJx%}eNSY%lBA=0UeN^6z{ziB98Uu{JOkd4*rpG60RGOaT-MM*qPNb~SwtXIM zKgXbG#-IKCy$zIG08((l_H7fplKg$_G2eF!~N@)5*W_U>r22O(C9E81G zuu3%gw+IX9ySR;FUwjtc*@~GAcRxB}5m|WcxZd<~lK~Nx6yRJ>zIJf>v85%K`FyvZ zGc2KVZ0s)3g%LF}PrW=oW{T5CFdI(&as{7F&64bzvU_I}BgS(pXWk6==eubN$dw~6 zg1GOwU(ut#ap_VlRsK-x!o5(fPhj{#h8!)jXnaj#+Fb#u14=;I`s_+mO-+sJ0LD9u z?^_W2^A+;aKUcOci+x7+{QhU)@`GsL^iJ5_?f(Ro7JxaQj;_*-CgkPM898%em`+xO z_1C_-dxVN@qlpWHo}g!Dy?ZFsToHTme!jxs+4FW{JR_;+vLaz_IwcljiFlJ0?z=!Lv0@TlPz*OwS_&T_HW!bve2(3wWf23 zO?ihU-_4S0Q!7HihCh&M-J^#k*?Km7?>L}-4-x0?lAxG;Wk}xKjGp7n7}$j-Ft-SX zTTNsK#-<9-!f|<7UL2n2+4L$ZYsfkKobJwLX2g?>#x4zFO33ZM&B7b>3!<5hD0m7! zoVi&mvZuqjw_5xOG|0D>7ghTMSjMH2Wr583zmlg{17u|#%3?zirLyc|#KZ!>RmX?k znZgulDYJn$!JYTbUN`|BjN5Hac8?76csp%_i2L_U_mrDpQO;{~Zgh+AgS?R+{D%v( zZr_1_3#;XgF<`q(9>H^n>Esw4R`+nz?Ybfl^pU_f>e3*gUQX@K{O62?r~lK+x^T$i z@Iii0y#U=p2>inpL=d?{@ZNU?v?DYuqYHMW10$t!h8}B8HvMyA;@Z~C>jBjw$iMnP z6qNo1Ez_hF>sQQuZ#ufoC=u_NLdUesOoogB9~L00IyU@# zmX3~&aoOQoz!rTUPl_e2B1yPMkY9_xC4%cFrOM-6@AtCydBnu-gELqN$yQg2X8V`7 zwREtC%&q>uxc7d-hpKq0gFO9T=TP=ZY*<*G=%(H44LrIs=0#n8>CrFhor}m<-6C%; z**%(NWn>HoGOr{0v8VR_ua&GaKj#Sl`in9Jm8d^o;MaUDf{*Z}4WaD{>o&h?MtT|+ z2u68_x7GCQEn#8ai>l6ugsrNT7dW{JJlra9Ki5gk+HjGX;%L0|m+AC%W_qZ4NSWmE z&LlQk7y=wz+hW;LIRQ55y74Gwna(C>CJc!kwZ_&OeRkyP`Dho|nFfrrIq)_VF!<>f zjO!B-aeK-nl`W4>ViwWaS`9OiVn!IF=aj&@I-GwRdt-|F|l!FuwPl ztIJQ`n}k=08-n!M;{*KW09f5{*>T*tjxj{|c&Q=BoMzTm^j|37od4P3&4GK|bT3=Num|Jg-kaCI-6b6pRWhA9 zZL#Wi0&)p~tFtuI=>FWes;W^*np%@Iw;mmaqm;C&xZ@3moO`|qsh}5C!RrmsT?=On zVxPhXP);K+`_69Xxl!Vqt%MzWEOAycIhpAjwNwB$BI&|GjsEe2Gy$2jep)5Y5P1N_65SkkQw~V;aGSFO3_1Kp)BX3oI3l{Q#l>T3$J{Agc%lM|qko z1=FcP-J68B=+4aU%dAN7@{kfcMNapc^KN1{p?|)JHY>)$%4>;Pew3O$Kd?UTQ6@b* z%;}x+NG4Jou7dhRv4EQV1$wTbIIBEKNN*6w(uYfVP#_dk;&7tiVES(UqnU{(A@IS~ z)2Oh^fDS%o4fUj!2mZVDHUJu4kmA5IjN?9us~fM0{70qqstOh}lJHThYzV3K@ZM*Z z=WEDPQHql9ZGxltM-?-G6Q^2ZJKg?=L+bPoQoth$32#amJP?qEb7NVibgUt4)y&bK-^)FR#LtET^bQ~?7pjY9np5AM`D+S@`OBYR9<8ywT})l zG1}O#1m^Hfo^V01(IAwLi#a&yt|5BSM`XXyyg~u*@)BKd7FJau$U*|wCaV3nU1epW z$n>U56I#Dx!pnH_1=Ej*J}O+0V$eV&w(bUe^Y>ai zz<2dl7Vwn=mHYDju&aH^h&a6(!wD7lP+MG3-T@&YLaVIzUEa>WiASK-BVeO;xp5zp zRv0aRu6s8VE@PLlb_J5n&*ZoeP1N PJR=lkRb|SgOoRR(RGidN literal 0 HcmV?d00001 diff --git a/test/rendering/cases/layer-vector-background-over/main.js b/test/rendering/cases/layer-vector-background-over/main.js new file mode 100644 index 0000000000..1a7c4ce369 --- /dev/null +++ b/test/rendering/cases/layer-vector-background-over/main.js @@ -0,0 +1,41 @@ +import GeoJSON from '../../../../src/ol/format/GeoJSON.js'; +import Map from '../../../../src/ol/Map.js'; +import TileLayer from '../../../../src/ol/layer/Tile.js'; +import VectorLayer from '../../../../src/ol/layer/Vector.js'; +import VectorSource from '../../../../src/ol/source/Vector.js'; +import View from '../../../../src/ol/View.js'; +import XYZ from '../../../../src/ol/source/XYZ.js'; +import {Fill, Stroke, Style} from '../../../../src/ol/style.js'; + +new Map({ + target: 'map', + view: new View({ + center: [0, 0], + zoom: 1, + }), + layers: [ + new TileLayer({ + source: new XYZ({ + url: '/data/tiles/satellite/{z}/{x}/{y}.jpg', + transition: 0, + }), + }), + new VectorLayer({ + background: '#a9d3df', + source: new VectorSource({ + url: '/data/countries.json', + format: new GeoJSON(), + }), + style: new Style({ + stroke: new Stroke({ + color: '#ccc', + }), + fill: new Fill({ + color: 'white', + }), + }), + }), + ], +}); + +render();