From e41dffb329e4a6fcb4e75fb501843838a499c4c8 Mon Sep 17 00:00:00 2001 From: Chris Wilson Date: Mon, 14 May 2012 17:46:32 +0100 Subject: [PATCH] stroke: Don't drop clockwise==0 lines If the join indicates the pair of edges are parallel, we may be considering the final segment of the spline with a different tangent vector than the slope of the final edge and so lead to false dropping of an edge. This has the effect that the line segments between 'arc arc arc arc' (a rounded rectangle) are no longer horizontal or vertical. As path construction tries to eliminate joins between colinear segments, this optimisation should not be required anyway. Signed-off-by: Chris Wilson --- src/cairo-path-stroke-polygon.c | 14 +++----------- .../arc-direction.traps.argb32.ref.png | Bin 6380 -> 0 bytes .../arc-direction.traps.rgb24.ref.png | Bin 6380 -> 0 bytes .../close-path-current-point.argb32.ref.png | Bin 2324 -> 0 bytes .../close-path-current-point.ref.png | Bin 1675 -> 2109 bytes .../close-path-current-point.rgb24.ref.png | Bin 2324 -> 0 bytes test/reference/fallback.traps.argb32.ref.png | Bin 4070 -> 4156 bytes test/reference/fallback.traps.rgb24.ref.png | Bin 3141 -> 3332 bytes test/reference/halo.argb32.ref.png | Bin 8726 -> 0 bytes test/reference/halo.ref.png | Bin 7297 -> 8774 bytes test/reference/halo.rgb24.ref.png | Bin 8726 -> 0 bytes test/reference/halo.traps.argb32.ref.png | Bin 8726 -> 0 bytes test/reference/halo.traps.rgb24.ref.png | Bin 8726 -> 0 bytes .../rounded-rectangle-stroke.argb32.ref.png | Bin 951 -> 0 bytes .../rounded-rectangle-stroke.ref.png | Bin 569 -> 833 bytes .../rounded-rectangle-stroke.rgb24.ref.png | Bin 951 -> 0 bytes 16 files changed, 3 insertions(+), 11 deletions(-) delete mode 100644 test/reference/arc-direction.traps.argb32.ref.png delete mode 100644 test/reference/arc-direction.traps.rgb24.ref.png delete mode 100644 test/reference/close-path-current-point.argb32.ref.png delete mode 100644 test/reference/close-path-current-point.rgb24.ref.png delete mode 100644 test/reference/halo.argb32.ref.png delete mode 100644 test/reference/halo.rgb24.ref.png delete mode 100644 test/reference/halo.traps.argb32.ref.png delete mode 100644 test/reference/halo.traps.rgb24.ref.png delete mode 100644 test/reference/rounded-rectangle-stroke.argb32.ref.png delete mode 100644 test/reference/rounded-rectangle-stroke.rgb24.ref.png diff --git a/src/cairo-path-stroke-polygon.c b/src/cairo-path-stroke-polygon.c index 919e7db08..88527f5b2 100644 --- a/src/cairo-path-stroke-polygon.c +++ b/src/cairo-path-stroke-polygon.c @@ -1052,7 +1052,6 @@ line_to (void *closure, cairo_stroke_face_t start; cairo_point_t *p1 = &stroker->current_face.point; cairo_slope_t dev_slope; - int move_last = 0; stroker->has_initial_sub_path = TRUE; @@ -1069,9 +1068,7 @@ line_to (void *closure, if (stroker->has_current_face) { int clockwise = _cairo_slope_compare (&stroker->current_face.dev_vector, &start.dev_vector); - if (clockwise == 0) { - move_last = 1; - } else { + if (clockwise) { clockwise = clockwise < 0; /* Join with final face from previous segment */ if (! within_tolerance (&stroker->current_face.ccw, &start.ccw, @@ -1102,13 +1099,8 @@ line_to (void *closure, stroker->current_face.cw.x += dev_slope.dx; stroker->current_face.cw.y += dev_slope.dy; - if (move_last) { - *_cairo_contour_last_point (&stroker->cw.contour) = stroker->current_face.cw; - *_cairo_contour_last_point (&stroker->ccw.contour) = stroker->current_face.ccw; - } else { - contour_add_point (stroker, &stroker->cw, &stroker->current_face.cw); - contour_add_point (stroker, &stroker->ccw, &stroker->current_face.ccw); - } + contour_add_point (stroker, &stroker->cw, &stroker->current_face.cw); + contour_add_point (stroker, &stroker->ccw, &stroker->current_face.ccw); return CAIRO_STATUS_SUCCESS; } diff --git a/test/reference/arc-direction.traps.argb32.ref.png b/test/reference/arc-direction.traps.argb32.ref.png deleted file mode 100644 index 280c09b6e58a6a0e31d24f260e0a2e88025c8c3e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6380 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 diff --git a/test/reference/arc-direction.traps.rgb24.ref.png b/test/reference/arc-direction.traps.rgb24.ref.png deleted file mode 100644 index 280c09b6e58a6a0e31d24f260e0a2e88025c8c3e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6380 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 diff --git a/test/reference/close-path-current-point.argb32.ref.png b/test/reference/close-path-current-point.argb32.ref.png deleted file mode 100644 index ab3124b79b6d1dc44303977004c014c1bf1ab1a3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2324 zcmZuzdpy(KAODhE7AYi`BBhHTQW|O)$!$WpPZ;r#J7teFmLBqRkJPNi5HrekZgX2C z6bsvUl*>pinPG%2w>*1(fBjz1>v^5`Iq%mwe|%oAbI$v`-zWK|t%U?g0R#Ym1kBRZ zp3esSJ}xTAAB#qvO86w~eci$o*!#N`P)eQwfM^fQ^r~Z2?h@Y9(!ujsdz;nueLCLa zNHyQ#T(=EQ$w2-A@^H&ElcC-_(%zs!}~tI_w6-XU--38@h~6 z9Tyi~ii~#Z`C1{CVtk@Hnim=~EM+fkvhviy!2wL}^E)6UI9juC8gEt1!MytNhK>*=R?pdlw2HsSG)w%QYrPNt_*D!o>Pd<)0 zJS;0N?1W-#^`-2tOkIOz4MnlFY_wA-B+{$yu|xcFXCBLJ=spH-wtOMHAlngYQ*1ye zMYESPGCAj>6)hp;FQ)Itj2Wt)Bp5Wz2lic4w`Wy18@#y|K%h_zan^oNB~Zd*r2cM< z_vL_MZ)p=%7$p4bqr6FXkZ~${wih#A0;fov#ao}DAgUO(pA-!rnh{b>zKcOxQ|5sj$HL0-QOIhPwlCi|GnS3XhoBk{_DCaVEVU^69I*z zV{nEko;*cJe!88MAgx%J0SA)~ZzlyxDOP5bYLiG?Nej}7r5UAaB)hGoThfY!8A+Dq zvC4Ud##i?OXs-{8Ol}VYD2W26MjnQ<^)c*9r^wGta)izt|}+$4Tm7 zqCNytz(9B2!{FX6cwA*sv0B)&PiZ&LnX*0JU0K>dVW0s8wpFB*r7#H7B zbg@Z)lsVT$d_G~{O;UxSHh;{rKUbll`KmA{Cnwp|F27p*m58~HgahkVHV@8GbIeXY zm6Ml$T~+1MYwzh9%O0*UJ!zMX^vygdBxq=8=vdj-HaWfeGY0CK?d!_jjFD6_m}j$# z29%&Njn98w9U)+`*qodkf%d8J*4RA+tD3JGTB^0Crsl)8wobxn*oW!Wco9j#_GIa^ z!=FDNP}ZRSSe^bLP*7H;zSbcTmqkcSOcZGMt0l2L5?nnzig`AQ^73k@wGg+meYbj} zdCT~%QgYa&U^{nd%*Dlp{(6Z;*Ya8@`Qkl5An9?u@Mh87LEYo2M-2H z5LCd&L=dCj*8~7`NI+priz3i5bpfJd50OfysSD`n=-l!l2agB>uN^^Hg>c4GO9Gk9 z^YbFQ7>)#40Z=HDUGi<5FyYkTrdQQdcJg98BCd zeO=T}&7=KAVb3=IQUNdW*u}Sx59u(>($y9yZ4Y;?B;Ws(GD)#20~1Tv5eS6vqlO0E zG%XcEb=?`C6os&@%AwKG6nH(d0aCDL4rZVv^60pJWP!-c(A$se#C$^q1qE8s zD!ZxrfyrJ)S=lwou6n!YP0Dx28bappM%^dFDM5jOwD|c3W%_U0uPkUGM&5VsoQ1fr zAAUemi$4DkljTpNSQrdO8|5#k#hjev@V2R?g#w*N6E`A3m5!_cW&Y zXFf46l9rYZHUxD|h5K(1U0#H56v|{+pLsSoIJj@$zTo#aLqe9mem&ul6SsnZ!%GXm zcwrpRV~NGWy?9Yjrr)1$lu^cGw%n&`;q@iTo!R^#+u4bkyNzT$9$O;r&8DHknvsPD z468ve6bizT3T&{P$a$OzJo@W?MBogO;T`n1Hs;S9(03VjpJt1Jh-$#dt} zoUpmqs+S0!YEULEu6)UWi$yJ3lna&f9i{W(zemdd;>Fv+YEJ}uW7O46Ix?02%>iI$ Lwx*RPUU7c`;T@!& diff --git a/test/reference/close-path-current-point.ref.png b/test/reference/close-path-current-point.ref.png index 9d3fd248de35b12c402467ff81a4f49030dfd555..3ae4900313bc4fb44d0aa370691f4efe837b90fa 100644 GIT binary patch delta 2079 zcmZux3pCRW8(*(C^_FYNG%qSyA@`vuw8-3rOd?XrLJNzz^-s$!mxXL*3E7G-ciD1T zNRr%ULuztKE^C&uF&cV(=l#BOzW1E(IluE<&U4Ol&hz}v^GlOv$lW&vwk_IOpY*^! z!c>sDF59TR8TzjRpWN>xBtq(Dxh z&i;P#uKkJas&~L`Sd>Q5HYbx`?$RCyoQ%dVTFg2KqGtKu=I{0`cw{%nx4d-D{uFJ* zfx@@LAid5z{asm){|(^p@IT(ml+{=nd;AfUJyG$;J;cGq=*2|zY)`YzzN%|kqu2^OlL#iG*fe+h9ddkLxkseFVmXzcx&}kDo-8a zcm%07fDK6fnc|arg{!^@B|OHbAm-!LVko;eECkQf< zI4d&@1mMP76rNnz96>GvCz@yH zu6E@d`hjgODQSNpT3d^Yh=_1-NDJa-4+#>i{M(bHd(26Wo;#(I+xdJxNZ-I*^kL-=>~)c(J~vWfclCWETGA?a0Uo9X)PecQ0#MybhXJia{cgyq8!Ms;s4@ zaO2#cJoU=*a!gc|L@WELi?k}8M&FLAG&C|K0glFK4psh2pof6w3qb~+hUOf@e)mtM zGgyJ|dJcu8K=Vvn>pa* zvZvGLj+jw0>#L9*uRTtqf1m)Q$vS_RuHK5^-IfqPJ>ThHbxO)dmt+zVT+b2 z4E9ANK2_|hm1|FRD|VfmY){7FaKaDm$+Bdwniq6^suR!W&?T(={Kk`I)&9kp->fj% zWzU{z|0zRuyk;L09lhF`AOV1GEPm-Kv;>B4g=yuQ-C8>e5{g7%m(hLt8YfIlBth5d z0dm9&aiukB#AwpeD~abEX3iUt{N{!54|?)~{v%)wp7Y|~^J6>o3v z0A9p2qY9O35HB~YgJ^tguys-g-k4;N_?{EVZG5Aki;ksAL)_D2Ifr|%I2z1_5@E0M z0$y_zQO^yil>mK-1dP7ocK-e z1PrDildR)02@0F6uCCTMGyBK_SS$`lIjw^U-WPO~Vnpf@3SsB*a4wHGwbU0_Hy3l} ztL==zV9#R48`m_#-#~880 z4n$d8UtizAz(8VR;%DLjb+<(!exrNu)EI_)*O)bw)HXWm)1fgK0%W~Q1M8*7vTd{o zcH3}m_u7jjLyj?tdVcBHx@jv<8GPNMf}t@^ws1I zBoYjo|5zU!8Aw;_FsryQC@Gq|R ztEPSn_6F0cTpo+_A;tOhK^7&bg`glZHg;}^l0f7bF1)!9eYLFaotd(p63Hx$xAsH} mJyz>F5P;3AQkosOqcuAS6`{f@>C6f+D+oIX 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 Lwx*RPUU7c`;T@!& diff --git a/test/reference/fallback.traps.argb32.ref.png b/test/reference/fallback.traps.argb32.ref.png index b7ce5736336bd1709c6577bfa5e4bc3b77ac99f3..c0c5f467675da99401a2083eb74413adc2e63a94 100644 GIT binary patch literal 4156 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 literal 4070 zcmcgvi93{E^dE+?jwOsODWQ~QvNW<22`PrMH<%(@_I>P(QrawyEYU(Cqg2K=W*Q|+ zmdMVGm@$!EF<*nUxpt90zs|LnMK4d>4`0j-#R_wL(j>W&> zR`@>|vG44B%E)GynXZa)ox>VpjmaEN6MJcARTb{WE>%W(fb$*x;XsBhS z9c*$k94UP!PVb(3~HCsV!o4(qW)Ng<^~%?aBJ}`7-3pn+idQF z=8~^~TlyW9?CpuGc4-Ca8Ovb2#YPw+1y=fvWM__7v9SB6NY1!ST8@eNRbj%jbcGoy zjMs<-6!vKa$r&i{yrF!#ye>zP)>4?8_cP4QbJHnFXB>3!bI7Y74No&+W1(r-O>f{;7?of+-tFS7+d#4&rd`akY4(Y=S z>{|9yKm(iNBFZ-23&kdDgghR0IxFcgpBu~`^!)O6rO+gZsi%DEv@zp-sMz|oC;#MO zs;Z#fO0!f&{1( zL-9OiS8Wwb7B+_kK~JXFFK5kqin*epz;hxB3|L(w&QDEak&gRRm5|klkW!!{jtT z68XL&a-d(#bZS*1==-)W9p~z2O8vA_=wJJFF;xBfmZ)$N*I zBruPJ(HihfRwHx-yF}@A1Z0X^v6SIdRUKS;A2*jz3Zu^=<^@I!7pyFEH)A+O0tl|U zm$cYtu~mvmNoN$^hNRu}FiXAZ5m$;4dlEb^dpF|@VR?=mG5iigP+-O?0ww ze7r20;y8EpquEQDR#p}^(@l64vO+uun4yluEx^bo3ak>>ket#L7E>8s1k$D_7K>4htpfho__lF6|Jmz@yx zF6Hg*V|C6kKC;VEfz!qGVdhPLhIxYij_Biuua4;-EyswJ1p5zn*DiJcwc)}M~`y^H_!CGmY+&qmUky}g^ncO0cluobK z$J8#_j3qAZ={C$VP9g^N&=Z;P?A+knvxP$tv51xBEw}0hu-5*153O{$Sdz`Wc=V0EW(e!!m^aa+TMrF&ifTC1GMs6nnMRynX6uk#kZ? zt9GAgG&IzX_%biJlA)mFRkx0g|0HMx6g)N*3QgJ@$G{i(;%f)J1|l;mF*X|1_u1sY z_BVmBwwcjxW))vkrR%cmMQG18i4{2-NB#iGN^sL`NJ5nE=FKWECo6hg?VL^+ggT|W zT@HFL7#~ALFkU)>x04N>d!`xH8(yD+zv_5&)@!fZ+NN<#9bWO7^C(1>JU&pd(50Ic z`y<`=U0A95X1JJ*eqYwKRW&zk4w@U>K`$(ah;4lTP*~4|23$~>t6i2 z^xYLD=uLs44r4-i*7d#C*Fup($ z+MVgYDG6ah~;RT5pt`n&97gmZ^aLE>=ddhZ7ogQzfE5{r<%KLqtM|5Ee9pB!9yVV z-q^M>aOOzkFV!Z-q;ITydy+w6Q#30 zh)_^T?Q>~2@s$JH++6F}?HzqPZJ_UK7;AJxD(_*~IpD~38^r6|F5*g~5f~&RzpX1h_-@b#Ht`wi!Do3nJ0x-1piYz+-9Z-}D-p6rSLYr#F) z*i68VOAfEBcAFX{Ea-j!+J$>q&XZrno}E~C!$+qNl5L-PtneWi&fw?X4plRxCUVt1%^IpZ^fR(4|t;;L3xm8 z@hQBrVZ%N(5kU;g_2t!p`uj+y;f|#S;bW}^NvG4uy+UEil{1pBbo}mIvN+F*`|9Kb zXNA-&Q8StHjd6N8(-h=9TLMV;H;BKfq?~o~Mvs12E`AOmwldm=YhZtz`JCAnF3!57i@4CyE72F#do zftiea>k*^rVew{?(-~_SH~0EWFm zoD8hGLahee0P2x`tP}B1=)rl<%-<=f%Th1cR)1gSg5sIEzJ!cBdb9X}%)9kNf6!Y^ zz#pbH#>STk zSc%hR`E+pJ4ISY+z_mo#dbwxfjNsnE##?PjqDB9gfX`uWL4P@0oMF?482%t1o;N3x z{1U_JV>;`PH>R$VksO0Rd*TAXPFi_xB-D$TRzKt1;Hg1ROkFc}`%tUID?#^fcM?;l zZ!i_CpR5%>lDXins+FSWiKtZ#(E;@)8Z}yG)?Q>acKZ54} zNwk-va}TNP?=ipCdDf}u(1E`?%df=qZUFW7(_Urc_CBw~5}qk)b~+s(BQsu#b}cg? lB1*Qo_*?&f<2;0Ie8loZ!S~S2G~nV6va+~nUSsB&`agoj=63)9 diff --git a/test/reference/fallback.traps.rgb24.ref.png b/test/reference/fallback.traps.rgb24.ref.png index 16d3c14e474ad124768bb122272498b8afac33cf..18b6a7c836b898cb2f2e194a44eb5cbfb9ae6d64 100644 GIT binary patch delta 3190 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 APyhe` diff --git a/test/reference/halo.ref.png b/test/reference/halo.ref.png index ebe0c6103a74863f93f571710f6f9fd5abafc9b4..a2b7ae159a8ecf5801ffe4355fe2214eb7d3a238 100644 GIT binary patch literal 8774 zcmYjXbyO7J7e`c(7Le|ar5hxqVd>aqm#zf_1nH1gx+Ink5l~=#F)%O))YX*q(S0BKw0(hzZZ$Xmn4&u@ zYYkN;jK}|uFD>6wFfbS~)Rp87eRB?T?M)3;7b7c+DY&?`UcDsi#_A%sIVKQsoPxY5 z+@)USP)U*IVrN&;5|8HHRu}OuREZChxiWvL`>H7f2-=;v{`dan$Oshj27zKhTkrO=a(oEzLJ1{vh9LPqg}%h z-d>9;!=mA6t02rtdG7$);DdD(sW) zOr`VBBhT-I{hHDuGZ)i+7SBHj7qYKNk=CLivbFmF8hIb11dscBABoPv%< zZ+&}Qx1F8k{Rl|OZzpPH`DVJ4#>(xH&)`#Jt##pwvo+g-x487}Kh6dhC14zb3UmHc zqf^1b>&uFs4^fi(TWy21%}M8_cd?|>!SNA){~RUxTMntznQv=zTb%e&n$J4;hV57k zncvRK1`%QDBK&Ls5%cQUf20!ol^rtNv&1Is8J3GXy6t@f0l78x3}5y|sp-E5o;TN2 zy`@Yxf6)Th z^rY0_$l1F0C;nHa-%JbF-Y(p1zvH%@=JC27y|)){S=~^TM2t@5GZc4vQ6Ch!ew^wI zN4Bm{3javxI^?9ova2MAlvW$m3H~;bb$r@w;s$yE`YO}_TPF}Rz8$aZPf5(Neb*&f=|3QdIDfCX%aMuBvgYvbAhpbhc zMlP&%4EP>~HHdvjenbPHbZg$leJbmD|PoG#S7V zXyfMC-!L858u~Z6hR(vNJHOzdvFBLRgRzy^2#BcBt1aGgGtlyqm!W>=XV)IT`O#3pEk|Go_}O>Ma)srL!SL@H zNxQ(Q-l2pJuNT?gW0laA@LLYEP=RJKVTmVy>vD{HesY?o=NuaLISL*(5x;#Cv{r2F zek5_|Ge*?cUGf=3L0HlCD0d$aN3j&8*-O&bYl$UXL`u;AHkUG^Mu-sO_hi`X5YhGEGa0N6J)+PE_VKaWW z2Tjoop_v))U|-6q)H8jF#d0&F=h&?4Q(DbGJ<<9(6?RT1v3F$Iz#G)|>wq z(ORVMbK8?eFWPS3zO247=ZFRoUHQL3p_g*eaPfl4%*>EL%&Vq927Lpus03O!9~6Gf^|I>q?9IQ)!5Xh>w3o(d_T)Xo zUe}qli=z-7mQZg>%X#|khyBK&v9?={)s`+{0tXi<_PSYAt5V80@8(7Nw(vhQIaGsZ zSf)f>qrK75@|(8bhHcKWdBBAv6<73fM}>be*+qZfE#u=GQl@NZIbdD^PFMSMgTa{e zwexgsM;PC{Ff!Vb;Wzd+XCR`G+PHwoTYA&ouC>?Ig zp6=>JKwVp*3Z?mE!@j*&?*doF_m_^65)qIAtxDDel^a@ELkVA16H*)1jc41e3 znV_xm2vdOVbZ8;Y++$~~36(?w3<$0~>jmC>2&6&Et)^JXecu-gN8&;=Kl9qdqoIH> zjn1+;a)2xy_WHCV2zN$wxCExH|E-+G?G1&vR71>VufOnjj$6k7BM&|?@u(0`98Pyr zKCcP?lQ`>PiL~jhD@=Cf4eOMVy#1k#Lb7LSGU-LNJ5OeW&gg3mOR#Hh@ylD>J7>b1 zrgrL>{1}8kaLZAq)MSVc_nFc^8V5)brtwI|K0OV3R=2H5V^1QC5oGDe81#47PI=E* zg?{7tZxSu*65&igIVGKU1Km%Y@w#cEvD!tMv z^0GMWhN2xyb$^mN##Rgs{}CKfeDlGAY`;M&r#BBut$HZAD_thNip3S*rPgZJ6GMkFoBZgz?-vmK;olf|OkXOji%3D{Ia{g2H z*45Joi8R;_F}bP&mI?pH=)lW>k@2%~v6AVG=R=hP4c7@E=AwTfO#`aR z2yv_dyB$G8-C>N8DK))mL+EQ1a~w50HQb)AVP^(Z}3pJAq$blH0(?1e2eX z_G4(w6Z$CutHax@razMrlOY_$gk7q?aWazLDjg|j%`mClRr(_c+IC-e>Gnq0{-&=@ zMzv_XQ`JbW`I&Au7-PuDn+>+75{6swL2Y4yYY!+qSodNdxnd(r*W#7j+ zqec`EQ&;{X?V%-HzQ7mpMP7>z1+?@^xs#;)@E*2Emj6?P+5<|BnKtA|RXLaRN7b@o zK#2yi@Ol?e<=B4fztpH6*p|w};$AsE77bwolomIC^q>~Sg)R?Q@S?KXlJk9yMh4>h zB9TMlTliGNj=P~cCjo#kP|0+Om|#)re+Ie}WyYJ-!uN}{80|HPZDN7cXN?m$R&VnB z${8z>eq>#xwL12?WL|L@g2`b{Rt*`|{1Isv%t)G7pd0U-^Gcoct5c^A}jK;`B zLJE3!BJ?`5tzcnIym~*s>De%ve6;Bs>EG>5z!OQKhwM#;GCA+HudMnO)|iaHfsrq-bJ#i#TBSz;sr zljNdNihu`x88!s^p3BVhXb_F|UlP_TeH&D$720>0L&N#y+XZd6H!rQyFFs-y(Uj^DSZfen@mcD>g`l%!uGy*kCd;W`)Wn;rZ&iktp{r+qf3lE!HouO*L+?qoJeW@foS5%C;C*mo5kH?4Zbs zM&ff#>Y2Fipyv!W^9DcXEk`~odM0#pQKv6oJmm0ukMAJpf4FUH$T|&eA<9%{-=YWX z4js%!6={z23Wu@WRn}or9;jD@&Li%tqUuK{nQ@I&*JXF`KH!BMXQoA&(I&{9 ztq6!Mfg6Sn%*hQVdK`t$rQTm~$McQbvM7oRDp{iwU74Pib*RYEL)If^g;Kl?)QGUi zhRYrXOcUYvh>u8r+Z<^g>ubV+kf3$d59XIa7kIfBa7fFj4?4P3I`>5cSPVw?Ko4_m zC`05X(tK?+Tob?B#9A~rlLUdr86It)_vURyR?a^W)o6@Mwp&r$_|uZpM0H!CRIJBB z+|-_j^usxa!a^!Acd@QmGm@wjb4}y0d{3@l4AEb8ZrAh$+_0~-()YSry=evL`BAR4 zL(7G7=F%+g-0sB+AGhsD_>}A|-O?9$Y3GDuTnTG#G~0Kz97#{L+kXYiwqrL5_6>Tn z^3kM7(C*Ju-cKbG@AnV)hC8shv$zQhi``5oVpIwRl&(YA>`Im!lEN-os>>APB#B%M z#PJMrk%lGv?u!{Y4yI=y6-e?7-|Dr!Cs;>}*%sS}u@4 zAs$BA++wCr-BvDL7(@}iUn7na(w?N1GJTYpe;?{`y18wzn)VRiMN!O z`sBPMTf5+>5fsl3C^a3=bDP+*>~mk7kP1PDuvo7Q_q7EXP&^utbv; zm^MTf3zp~NoOBFDb>WMdZ#sxb-ip+AuEyTg!ERK#cc}mko|H4fG6uJXW*v5UyErLF zsLbj;FmC#hyKwZ6gRt=sIL>y@&&3H8`6W^}`n*S{GS3oBW&_ddN8;_gVT~+Q8{jGZ zRxC(ow!5ZXiS?txfJr=f=pq&6KP5QRt`;P%@_Xy+*w+a}D{p7EAd>1`F2hE?-R`Af z756VIGtJG;W#<-T(>Lvgc>yGqP0Oh}G6VrqlnF-;*g*Uo?dUCM3cg;i;Ewl^BmGL5 z`5|-{Q`Ow(lmO9e;{AEI+Bsa&hGS)j0UwZ1_P4C)vHo9bg31Zb_%nZh2E|=lm=@50 zPi)(r_h_1tm!i-RNmA7m)=MT$?*xVkBX2yhkn5UpX>#Z);#nHLt&`J8-v-UrK<{s9 zUcxai@s{f`jkCvnty@Rg#a@dw2<5rUhn~NNM~6VmErkof{jRDdjduFb-pgE{$qy8P z^sm9NKe#DEyVa>4r`8P|#FLqlVP0o1)N_Ho?t~1(>nR<{11>9a^Mg4b_X^75eM(#M zUG^h|kx+ zaPy~t*8R>eqUH=+BmJFYRT1sjbbtqPAlM^wA~#T>R>U!2=)l4cfXy44aZ9Q6n<{k2 zq8X{M99l>U%`m|+Uq&Y(f4S=>)3_YRl7V($ugO~ZE9!p=U~|2GOEFjLDBVL6t-Bht zm?-`h{Qea3Lf}Ma(ds;;&Z501Ea&)tdF!ja&rsg8GrN$Z^<7Pef{&Jw4|48&s4)^{#CcuN9$1?f9RK!QigAI_W zhe!({lIg|SVjrJ7rD|?P`Y$D?mrR!lmVu1b=d<)C@!>Je0WROcD4oJabpXKc;Rz!} zp_Q{Q5CXS_(D0LoS7FW+X>MT`j95=+PYm>Yb^I1EmgKfFmBPl_Kg7n9KxcIOm)XiK z@nLRS8xw#hRMbuE{;#X)y90pVFANG7>Dl`Q>>L$M3RhUnODLvE@+sxzcXmmPr-C*> zvMlXG3)#HMe|Q#^d&vL1Xw44z@F~}*yWqp64>FB0blT*;F{*xxOux#V4fybFh;;Zr z)*%@iT5q%rGEQKEtpQv1dcY%a+>tpH zPLp&f$u|WZnG-TQce4i}t#GuXTMrCNMHV(VO~c1QT=1mM<`j{<-T{HV#WRgym)5~J zmpN$ahV`@pCL-wICAZQBGp_?5g5Cn$?H$e`V*a3e_l#(ASI;Hj_{o#(jMl^%F9Bal zr`Oj13QhGD^L+{%0>jP9ZE=vPHNB4$=Xw>764l%@s82^0yQvcDuZQurytj23ylXde zek{n*4JsYTS|_B^Da)-xVoPeO?VMY?(h)&JgzD zQ6KHNkQL>qdXqP`|ikBe{CHX`J-$l_MQ%Y;y+PjiLBQ+0LtY}{uA(Di%Lx5txpLG!3i zK^ju7>~evR3m;n)yfXyX^ z2TKi1a&g^nsaG|i)mzCVwQ_>!*O~XDj%2G}Blf+rG7{m7;TgX(Anc)dYs^+p4uR8x z0^%cD=2(hJ%DJ~JP3MQnx`&&y9kGBgJ?Dy>SIECLGFiZ=bKcm8wQh-+nH&?!^PJXd zhZo4RSRcD0oB8xykQ3+)W6+;+AOyM(#Y@* zSX>GNp|hzKjsI?H8_>zNu88PXC99CD_-cYBO*KZtxodhRihhMn^D_gO1feQ~d@b?V zjyOwh1fyf0kgvqhw59hz(OPMoNHZ|C_qmubgfqIsi{|Mjo9mCDuIyBKOu%jRiv|+Z zWA5xGn-ny#-#+oid7p}pa)vIae$v8RUmZ!`k3w6ymA0)XRgv_4@QvMMBjLxa-#2FC zVh)KFQe8JBtgra&kkgBOGi{&1L#eG;n5fmS-HkFY_-$ica ze<#gbB*V^H`~J&EytWa9(tvm7-WMtE)ia&s6VihtKG^`6#?RatBP!9d7;CT0p77Uw zdeR8*97C!1m;LBCZJ4(#;T~|Hj7|9=VP?+p-08NjXWoG!138%CpF^ z>q@&HOQ>dA=z*#V;YgNks$4s(^P>vOl}Uc5w>l=`wS*Bj;u1fd2JD7R)%t)tgWeJT zQbX`UlLD!tscjx5mr;tY>YQlhr#$1E6!#{X@&(@{+j-MMvQqx@bX|L1maXW*172Uf zV?7Q`fM^*IR_t~Avuz+OE(uAthlJT;DTjWCqcM73+N$d7%Ngvs&pbN4DLEkLk(s6} z?F8c`Qf^j-aUsx|98M%pICSnH=FsJM8 zH|{Vw%9wfq=9zO;i!LSrHdgoK_Ucu5W?CL-jSm)1@=de0TL0=JTAINhN;RBE#)u** zL~=!%cFR4%KNMN4MrSlQy%>}K3Q^SYs?(bi@4blqc*uJrtW?Y7B5NOiqx5_2>kr*;F)nb9bF6k~(Csllog@l;vQ4#L~sy+U9G z$+o{6HU&uD2HaPwsM`~AozFinJUuV9AJ!kPGixXk#4~t1c&eb~t36mhmY9l6m^3e8 zdDfO10pcJ8K*?O%_|*G>^FMYhdDw2b$_#GNi{~L#bkhbm2=RrGx!VU>WAWdQRO?nO z@7x7?n-%`er=2uyKa+YS2LaPlgLh zhDR1#T~hzTqiE1L>^SjL#{?*zr8>dt1=M6?ril>A?w=FJ;(G66)5A+-u-C)uSf#>^ z#3uhxP(LWF!fD5cDrb^Cp3bo^!AKQ1OAVzRtMr69m(m%xbQK*IBgLlkXQ7B^U?)np zLrXJG4(ss8vt+2~*4GK9n#^|h$hc%sa2;Ty5Ag}49wAy(s)CmvHyp4+yoZ*22b8&t zVVWaCJygjYsd$ovcm58Vn_tS`C3bjG1d8k#n#pmZ?LswvCo>7m92kpQLdQ{dIE~W5} zKW;Q5x?7bo5g(@X?E)ROZ}g-%pNedfU5ztGBrpTV@Nl?>vc4VYJ`w=qsn@DVL^*mv_^JCT-pr6CMa$;1ck&mQ(Tj9r021w zm3@1CizrYCb;4G%gaB3x1g3O*+^Cs5z&dpPK?(==1M;)NW*Y_~58b(-GHpwVZEx-e zeA;Q_II6ygpo^u${yAsMjAo^LB(Qd?A2BMZ?LiYM;&?-H!DRvWI{)%AV8P>FeC0Dm zndRvl1?%piR2B$FPHS4y*__1(JSbOCF z$J%&hXwykDSNbKSb+l^x+kqku)@HsP;I{>{gvRhX2&3lYe^nqD*vOG}l0>$L+KJ%7^TPDz5hI&`NJ-@pXEjMe>`dbQ7eDV1&x9~ekygsm6twUtRX%>l^r+6vS< zNPm8A`-jbHUl6uHJ_oh5mzQyp`Z+eP{P*nJji>3h<4tp&knV|}^7>53zWd|v2ctj6 z(+}-urPk1Yov{ipl|=Y18=zZAZoB>b?W--FrY0fH3n{=P6woqaW;*EC#BKDv+MO9p z6=A3af&0aQ)<_nvs(5C1z37h(c$-J=(%T$q2cMx8#OY5UGMbs_Md}75$g%c}4*jKf z3-N{^oJ(pI1LMi@fByo2;z;cw`M5a9v8$uz#G|t>H{7K#;9$6 z*{)z1u=;@Zx#Z68H4KLTCDQ_5JmOQ(VA%k^lV3@Xl}87h7~Y|Ca@%;fIEFA*x13Im zoz4eMQ-brd;M9V2#w$6(f~3~z`6Ey)HUP|{_+rdR5>Y0IT%L_egDDEKt2V5^Ig!ey zk-;+G8PI(Td1v?D%LZL`v+=;F`oOv7JH*2PiInvX=1|aE>5J)55E&)d8cRMaN-D3*VPVAj{fN&veT0#(|aRXi9ipBvt~wbjn326`zh7>43>d zmvz~341~siI+%Usnia0BDS9m-$A`RFw$5$rlzi8J0Q_7KV^k);SP?8UgS>bLc_j7m z9xs2OzZ*fBXCFOlcQwmR s3geXBjcwZdGhYs&@=EnD{=a>Up1bw752zVM{}_UyuB@$8pLMn?WdaLw!N)d&5Wouh&K~N+f+*?YBks@6D=C0!ihW_9#;-3 zI0z*7k3Aet_Bk^-dCW`#{66#H!`azq&z|3`*=wD(*IGNPy}g~jflv$H>6xBHKSAH; zYCxtZ5Jx1+cb>`gB>D;Z1y_SQ?Ge@pYbY-KZWLFCKSiSGF#wMmZ_#5!qVfM5jm99V zf~s_AH^wP%BzBOnhCAoT2xho*;_t4<2t?3hs0!ZcXnK4OR){wWYw`%jJT)D_?@sdR zyN2Uj8OTba3L{ZU>W{pc;-b0$RiUIFO^?5mKzk{H2vuu4d`?xNx&Te5q`t%F5$y(L zVU4`tk-s+hI$WCDJt}2ks@8TGO>re8Yuzmr)*P9q;-WN{C9?^&P*iv1E>)o-zo(kz zI9C#qslvhsZaq|36Q@;=QB;SUNCSDsP(TGG4djVe1tp@fq@MCdys^M0rnHl_ zj+t&EdMtjs`6Y(R3!>-|(Rnwc{ISZCddk8S)}Y2BwG?h*$~tB$dZe%>A>$5FSi?(N z+cK8E%{gH_7sOsLxSFQFP(|?zeC;+KFt}PDJy1^Rt6aR1srBTaqQ7ErwTz{2aQ+9J z`WV-rtFMx{I+0JF=ZatOBjc^_1a>(c`UL{lr zt`6#3?%~ciIR9C$njic9ZT0Pfs}o{do@CMcoK{c%Sp9W}TqRV6p%yfqT8e-?8pM}3 zirv9xfEhFcZX(UhFm6%MC(|0l7sgXTNiBslW9vdK06~0()aodH0*Bk(?i|V+(R9{P z1gL1nP;Mf16hv?XItrlaR5sx!P)t<`6%pJjTKrF_<&=sWRkUh~il`RfL<4zM6qivZ z<{!pW-so1*8ptc5qL5lYfeK3UXsB$W%+onvNw~V3vaj-&d8|5vcULlh7Hfme(}DAN z^Ak?YqWv`9H*Rqeo5Y7d>myiC{u!}%LoJhlw>US1cMl`yu%?#6+*o6%=eH#zF#zm89-OF&GjR9qpi5mxUsE&dv ziUn7zShSl_*YMOtHm_uU8w1K4Zx}$^YUZxztgCqTGG2O-%cs*)*)+aWt`Z7X-Fvu+ zcnM|EuDA%tJjGP`2?U~kK!~}Ui20TX?joxFZrnO0TE%WgDd^(658xMl0{AN^QP7*W z6V|9~qKq;P)hwXKXkp^hS6o!B1*oQI3Y#=kK>Vw?aOWuC5vD)|C1E@os;UUN(*=(a z+!5R!!a^c7)Bt{W4uPoON6<^CYOS~1f>rk(18BR22e0Lc-L5Im$EK`e-pxF8Tl4|o z=lmG>HQyh^LF1NB86mhr=O@~|i&;LKrVp6}tYCrYvw>;1@|)9mzj^y5f~z^KnZ}04 zxh|JR^8{L$ZslqjOYh;%C%6{a$kfAJWf@#u$#Z)dzM8p$t7&YwnTIwoZ3EL@mr>>+>>;e88SES1fq+mG-G-(!hMi;C@pt}3aP>DXIGcYsmJOxEjX3|K{Is;lXyYq|tuBuhuZMr87r@0y!%opusea=w9)n105 z%UeBCg#u!|ap%M@N3sW4GTY{1q;_H4Hp~k`Os}R$tZIrYZqoV)x{0W0<&^3udJIjc zfua&B#JdQT)B^u3MVhvhMQ2{8XDu_=(U&qXutP5-L2bEwmLTUr}y(+DH z07|H+rYM(26)l9<(5*ts!xoMS9IfIW;9TJc z%(j6Xx|_R}vD8KE7yQUYtVX-V;A$*8=CayN#B-Rd`?>vDuKEjKJ%P`D!o6>D9?-({ zZH&L2`%ATQ4{LL2T+1vcTsiV%84|jOkzhZf!IT!&8^{ac4d5@$jX!$>B~;|mP)Kbl zUOmT?M*|&oZaJk9#T&q1$r3LiF}FyRNR$HV zgw7R=j%+#`SM0 z^FGM=_SHQ7F(+Ni6Tqj803PP1SCs31&%ahvw3y{)t`@WWP0o9VGmQl`jHjObG3=bc z)@yi5JZkJ`$hUdsa$elQ*!#Kt4}51QW1Mi6aK%zw=)|>;_+{kMSVsX+7LLoffwC|_ z-FtDV65pJ7@34lZ3+*m0-C;Zm@#k8xCUMwu*HOgcp(^-h(7K066dgtMH%u#!f~K>F zkzxhaV+5N~(Y%DFu*st$j0P1=XmeFT)0H|3a%l|V1p@dDvu_hqG*n|%?gkVWQF8V( zWEvYv>fOL;yf0>(gsZorZ9)8B;{UGV**8I6Z6x|@s1e*ts0?c;=mpdX zlV5QWh~Ot6ChR->7!bGa(S>`afVx&D$3@|=WD6TEfIoL~=VT?}>I()x!?(Z3{|I|) zAvKS4T@tR|incw<4X3bW9;;%w46cT-e?n}%;OZ>ae~bSWpRt-E1zo(#Dg6sy6;d^X z{loNk${Sf8Idlcj&tXjidE$+hv-mn5e_h)*f={pEsh7Fb;A%EaD%w+AV{o;dar+py zfEAj~F!o)^bDNkV{v_V0oveARn!}pkaH|up5(<`gI*N-DDoQCAPNPbeXsE)vY#^_l zEDvGvSMlWKCgLXIC(uroc!>p1MH9}XcCv)+6~SGRA2%c$d>!7`or9Z*aC(XUMO163 zV#O|^x|k~Amx|yP+BVdJ9>YganC(KF6wivgA&j9E^Z3GG-75@8llA)qUI%C1)GsAK$$gJ`s|M#dz{MSIBA%!&vZ<&~(VKkJ~Q`yvE z9N{=FtdSdQ7t#||h>5ElqI($mIYWEG)yaG`l+U*^VLwAUgz-A^MWRS$w zm-xRd+IKP930H$ScnVwgGJGdv%v?=iYa0VT;$-JsB@--6n@!?lcvLi9UfYvHRZv_V zo{ao%RHZ{7VRpp-?;+HZu)lde?wt6;x%qZ!aPw?cCBB$xdi;kA_WOF>!*Q<6=tQuN z<2bs9z7jTb97h>C51Z*K#CCyXCnX93ImU4mbJaV76^RmRp?Uj}z@0=;72G+@7#Fuf zjzJtFT=mq(vW6BphloBao+aC-M=OpguDUN+ktjuV-K0r^I|ttkywm#)YhA@L$W?b# zp{7$*XX9<^HpK3g9_xNYRG-B$%T<>JOOIj1G}=N%GhRlch*!~2#Wu?^f=;;_!KagH zJ(-Wh>vM*F#L42djq#r|G>wz(Wpquj#Gbq@Qy#)%kHRcZ2EPYXxvf;0;U*$NtTr*l9ORw`h+PY}R;g&AykKvtCo2+hHJV-36h+B-n49vcPb5{q z0NQ5LR7&})T)dMpcW_?{r)z=W>X7zwRBP!TS55`XmMH~Y#CeL%<}N|fm8pgZ1FxVY zgg2K)V!DXmO$8E3RT0%KO!pHQ$e}I`IEvj;6nIJ@xVnPpRWv_=5wXqP;L52gwAu;^ zx)C4T_hER9G}Jl@+(h)4Cq?gNfFIk1xXSMh9;yY@1CJL9rwKZPwx^kX`) zi_s(5qoD6%bT@AAT(C5q@(w8>$)rj{t)keRU}HcpPz|&l9D^=SVUrS*f1+Q|k$jt%<&~^%2Cex~-eVsph37x=ay+6^U z5L`VQyXpu0Y6$!9gqA%wSxY7rsW<;nI875Nm^ z`NjX;IlY-#Z$RP-xQ{!m8Zd_IKJNHAKaL^CptLdILneL5q?fsLIg5v}uaMg7c>Dm_ zy+7T=sK}?N?zI2pzuFkkJ+3+ttUyFw*h?w5m8v`%oa+~ngX^$!Z$ZQo3F~Lc?B0pN zGQ-N%1^lg;DyiF6CVZ8@yvONI#@xrSC%EKt^O*a+E%J;%c>l$ zuyS=951hl>=9YG{7O=urs*XOck_nb|xw87Jil~-+=!z>|ki@)xYC2(!#@2X-)6oZs zt3e#JD#1s%@vnTv+;S9il~Azs*paAv0jm)zDj-OW?i_;6@#HlDRUvmW9yM+Q1|soP zr=tc|uCC(QlljQpvX|jM=I7FlM=@8)s?A6bI3kVM45P-28Mf|!5vA{)PQmH;-T2-8 zm@+G@T;0UOQlFK~|Cp1c#-o_4gj+hz+dEu}vJ2)G9YtgnJBO&^HKmHmrg&8hQ6j9r zL*i;8oAarc`aH@FT^h5$bCpoABok7UD={O4w|h^5qHf)kDk9M%^-uZ{WmZUB&0&qX zeig8l2`_P3H%9KiTqRV65?NL~*hp?q-dNL_`CvS8AUL8y;PsG7tzDgkIrGO7;6=* z*SJV(IhVHzs8i7=ShV?)ME zNEAZp?TPgpNL-!CJA?T`>hl4o0#n(zoW&ROYPzPDNjM7hOB9hOY9t@aQf0*$c1kS= z$ll4AZ}6vPW*j3@MWPjJ&;HKutf0iYZ|LN%6vYOL>PV>=IXNV*tUt4lIC%!mPjhuw z17Pmr?lXC(htspg-Q4vKXQpCg1NMR?J?4nw+h(X}*6kgUC}9p;D4^~$PB8Zo1>Cwf z*W}35!f6exl{y?^;A-YdQuQup)KTyn7j0+U7YrW9_On5q-cIILVvVUzhXO3n}YrKpl^hA7m2)Swq?H}r+D8KZb<#&IH_B>C$H zoO(GgW;VI<0NJTtuIPCgBMmj!&Y?6n9(fpQiJyIChBeHlOHk0QaZX`8W<995dQ_>l%Twyel_;=o z#peu_!X!K8>Td4p;oP3)YDuuRG5(Ky)3{6>SN5uK#yCeei?Z(q+&MJ(j>NNir?c)B z2K8#qK-&zTARUScOL23lhQw8(73)!M*vbUsG7VgfX4gDcNsW(jy*XPybzJr6qe#n@ zI9tIC#nsEzcC0}b*65v{RBZ1#5((BiW|}Y4z|~@wTlWAYJ(xPK>;+3c9n|iD%laT@ z8+(7k;BL=NhOP5Virz8G{iY2PS34PF+fD517)Ui&zzsYqwY8@} zR7o8d&+2rhsfCWRjq&5zW^UZi5VL{hoU6I4zML1$El;w@ELgT&0XOo9)ba@@ij(3D zq?9XrRVaP(9{L_7WnpzsNIyyu9u(}jjpW2^7e@}I8P<2S`V_>WCQe3^xU!bT%A!MQ zPg|~rvF{q5l5Tv8YxXhBxJ)%yjsyz_Zh}NHXnIVJBeTkfBx;H)o&sft)oi!UDkJVI zD_83|OKNcuGp}LJx%x8yl=?^|I&8U`&r0hCKziI)1`<9MO5RxG+$;lZfmxSv%ZW=#gzdAOF-gEN*)vtXP*i<vtAPrn4 z6fDUmwQ55JU6K;pWG0C$+t3E%h$w7Rd%khuCI-?Ucykk%e2Tur9c ze2lb!*;W&fxcV~xyo{HmKGJfP2CfncmgM2EjZ=`Mq(n}6iXT~MhBX2Qi(o}RlYi4z zJ!m!C)9ht1L*nW)PWUrlm-5JGsZ#*p(&3Kh+^SdAniLkG!=oHeDf@0jfdB(6T;#Gmm~ zsn1P3JdF)bM$6{FGL}k>hZuN2x0_oeuCUXCTbWQ#zHym0u969sIKRaVab|OeK4{`t z<>XM%ZPPBwDV2N;>pSKm^ub+cTUfdJHQ$#Wr3Z1amO`mmh!xo!c!F!Kj)oc*O37go zS7X^Rm(|i;L44`ib(YY{CbZ<74dJ!QmY+Z^g-QGf9>TR0+SUQAWQnCnf? zu5-rqpn$~Heuh|!v!BKKSGo8~o=Y^yS*(AN%dh5XseL!2ma@#;V&&?39+L|HwUd<* zJ&2P-nymHX6BTy1O{VY=woS{?QD(AE(yh0g&x5A$A#qB%bYlR25!FZfC~PWD{t40t zD_0M2oAsv%G%@>s`BoFNqvRYQTO?D=W7U;BXLT{OF<>sMB?C+13V4Sz&){8iOBhcc z4aQ|Ux$1ncuryaDtB_jT`nDp)-eJ|+LTV+cT67LI>pS#uvg_POmMZ}(S3l&J6WKhU zl~T{yG|i?7XZR7nkfh4W)kVA}Nfj9~+XXt0$MUGM^`N8V(a`M;L>;AwYRLzw9b(N1CIs*M4QSuXAVI>+Y>y@sbGo88J4cHZ_qj9kfl<1)=$ISTZvE|8te zLbfCe$q54Zr?APo^H^QL(;ag&`-|Bw!OB$(*8)~t%M;eZYsv9C7hb|EH7vBgg~Zix z_AX$B)a?&^$9#TRnz?c$Sc;1VpN(vlP?1N2!{kAs?`@MWstZt+&Uc-46iJl(lpYkY z z(K{Kll?h=yFYvYP*e4y>as|A?C12sM=9afP$Gjtyey+NZ{w02kwtQ)*l`QG1W>j2M z7sQPcC%evl*=(1PgsXP4Ug45gxTLECCgSRJ-jk$?OfOe-HJL*2)hn)BkIJUv_)ylm z(|vr`*$L9dmDSt+1%n^wI&(|$M}awPD5}oD1YwOxl*U&3YL@Ptcu{=Y$K61LBGbtP3i>9dNDl#$2U&5kskqNM8XTe* zxdQ4akg`%YGf_orJFJT`#Z@m)gl9_7uUED`{h~ovdn#%q^MXD#L;$B?8!<1104;_Y1Q<6|g2v zn7w)e4diWPs&Sb?t}-lG(%Noow)Z3VRZ1aobqTMW&U;dyzF@WsWKyssmrSByQEAsX zF`Nn0&xyqPe9c8=DDTTz< z8N6$aKJ8P>6`2yONc1S&bxskiTv?Z^{S3+YuCs*92v#?CoxRhKQTLU^RW=6}vs~&U z@?(w5zQ9!m1WS*}MuU@G=ZsfW%LuGo&1Lmic1YcyXh=W$HCO3gv8*ncPT|h!6HKKa{hF(E3s%sk?pi143#MpB(66~lt6*7o zQai=*U1#U$Q(UE0u)6URJZ5*D`#V?ZHr|ip7(s>u{f^^k#c{zpj+EfIU>!$Fa9psC bBPIBM?Ri`nAa1uy00000NkvXXu0mjfu&@&_ diff --git a/test/reference/halo.rgb24.ref.png b/test/reference/halo.rgb24.ref.png deleted file mode 100644 index 191ee479466701f8c1986c08c3480f9e3d3f7ee2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8726 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 APyhe` diff --git a/test/reference/halo.traps.argb32.ref.png b/test/reference/halo.traps.argb32.ref.png deleted file mode 100644 index 191ee479466701f8c1986c08c3480f9e3d3f7ee2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8726 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 APyhe` diff --git a/test/reference/halo.traps.rgb24.ref.png b/test/reference/halo.traps.rgb24.ref.png deleted file mode 100644 index 191ee479466701f8c1986c08c3480f9e3d3f7ee2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8726 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 APyhe` diff --git a/test/reference/rounded-rectangle-stroke.argb32.ref.png b/test/reference/rounded-rectangle-stroke.argb32.ref.png deleted file mode 100644 index 3f2a1fb2cdaa1b752b549f4ab8fdef4a5242a97a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 951 zcmV;o14#UdP)Y~sNI*7Qmw0-~~r5)T{JBo;1 zoTNn!qN1NeRLJ57Xe)wrk#3zu=_+cKBz7n~561N5#h2S8_ctcz>i_ROo_iB=LM#@G zJw0JSEnwGR!&*mohE38#S(bfyd7){#*Xsdc48x2@BOqWpoqm0N0Rf}Yh+!BYz+^Jn zY&N^y9t;LalDxdUG#ZVt`2Q>Zn##fot~be zHYJYR?QS-kYZ;!;=lA#bsEx=Y9*?sutHdzNvbVRlsP!u$7K?ElC);o`nMAEzIq7s- zp5aELK@bFL*~%dZf~IMyhR5Tv)9FO5d0kFUPR8T0B*WQk7PZ>VKv9&qVTNJsb~|dR zo5A65tX6FPPOIH+e|~<#A9Qzjmq;XhKHt`)iu3;dUa3?XjRp`i91c63&c(&W(ox`GK9x$r zzv%9PQ5w2@^ zHA9fIUBiEnbq&Mg|KJS6=q{zjtF-P?T6HrFgNqg}TB=KFybdp+!5N0Z%aZzw7Eb9U zaM4o#4C`)Lg3(>kT6bCcgN9)=n9{gtEuq2xFbqy@nCRDtAB=dx0i;|UD3iRt^Smj`(T;8l>YemP$p}8yuG~vXIGzemp8-3 zVo{l_?NKNcfV1L;&(6+(@ia}BN+o5=w!!1$W2@By0)oLH?+C&BTRuNOUteFtU-R>T zcqkOw-``gzbWcJ<9!#&-t5&PcW)lv3eSH;qKwR@J00K=O<#HLd)Xh+>R#)8#7@o~$ z9*+mL+I8`Iz4Q58lHr9W8nu3Fy!^ElFO$ijmaUwpr>Eb1X|UNc8jS)CrcgUA$8i)z zsc3g?Fc>I`0$NK&4F8~(hH00}Rj=1Y?dYy0p1;!q`1jI-ZnxX-_xt_+Y&H{&G@H#9 zi$(C1)oL}F1m3h@G#U>N4+V!a&P zbG=-JRm6T-y0q%}HMNv!{nCx$VKGs0HC%SM_4HnM+s=zB+mC+e+y3X&%^p8tdt=hMLf3b}D?6YFstqL4X3K8|wd7M;)I$e}5W|&Mq z86YzC^ivzT{){p{B zNgMylN{c+JjQiex>Z#HB&xP5E*#elj#JN~KY+VD(c1k>b_>fU(M}!X3YsZHnTC6LdSKiYTT-`yUWYgeER99_u2~#{?t1E*5^OqcdDk8 zodFo68w_40BwjgqXhm~tAUpSBJ~200ogOQ~5{#|2cJe7(bxw!188X)|={@(fh?R-) z0hb0(KJWaqY0r`(kC#}r-no0-(sxE`Wbwu|i!Z-)c=w7s-AK~I_ITmlyz4PW+7*?R zlD%#dSlLS&(t;oJK8lZzFDp4M=M*^QWJ*%XDUbb*e_pvUnD|!L)|OhmO0B4_zP;UA zVNcxp_wV1&^{du9nNqa*ri9S7`Uw(OtjsDZOGMuP{CV@`jc1u=vybl)klD5-L~8Pd}x4HZ8U%$F@*Tjl~Rjh~R_siAP z)t!6(`De|(xb?cGmTlKxt9lwu^hntp*|q4?&pjXe<>n~#u-T_M?-GHeNa=m~LY<*; S>~_8kK;Y@>=d#Wzp$Py9o_Fg2 delta 527 zcmV+q0`UF82Dt=~HGcu_Nkl zI^1a40a=#4DGUIIv;8B_bF?r3NGU@{{yvT=JuRGNS?HJ-A%y6<&R4jqs?Y(ifKtj= zSSb}c+I5&5*tT%fG@;{Mjmej63;WDot+mgJw<%>=`i#VJN4v@W6d^=#)mPFqbqkke zX?3xM-Th~m^?%RfUOvYG<9184zv$<=UazS8al$+NQ;l6yqT3I%Fm+g%IxI{b7N!mh zQ-_7A!@|^IVd}6jE&9HaZ|%SeQC2OdS@c z&f$gKnRo=hX$`~RxH`_H!wI{e9)!BC9aqQiA17QC1%EQ0&AHufj;rVM*>19uO`}U6 zK16~z0IZfE9$g85F=o$YhA674@)8Ds9p*)2(OOSV2QJh){=jzFx`g8@w*2Q(^b00>D%PDHLkV1m3q{0aa7 diff --git a/test/reference/rounded-rectangle-stroke.rgb24.ref.png b/test/reference/rounded-rectangle-stroke.rgb24.ref.png deleted file mode 100644 index 3f2a1fb2cdaa1b752b549f4ab8fdef4a5242a97a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 951 zcmV;o14#UdP)Y~sNI*7Qmw0-~~r5)T{JBo;1 zoTNn!qN1NeRLJ57Xe)wrk#3zu=_+cKBz7n~561N5#h2S8_ctcz>i_ROo_iB=LM#@G zJw0JSEnwGR!&*mohE38#S(bfyd7){#*Xsdc48x2@BOqWpoqm0N0Rf}Yh+!BYz+^Jn zY&N^y9t;LalDxdUG#ZVt`2Q>Zn##fot~be zHYJYR?QS-kYZ;!;=lA#bsEx=Y9*?sutHdzNvbVRlsP!u$7K?ElC);o`nMAEzIq7s- zp5aELK@bFL*~%dZf~IMyhR5Tv)9FO5d0kFUPR8T0B*WQk7PZ>VKv9&qVTNJsb~|dR zo5A65tX6FPPOIH+e|~<#A9Qzjmq;XhKHt`)iu3;dUa3?XjRp`i91c63&c(&W(ox`GK9x$r zzv%9PQ5w2@^ zHA9fIUBiEnbq&Mg|KJS6=q{zjtF-P?T6HrFgNqg}TB=KFybdp+!5N0Z%aZzw7Eb9U zaM4o#4C`)Lg3(>kT6bCcgN9)=n9{gtEuq2xFbqy@nCRDtAB=dx0i;|UD3iRt^Smj`(T;8l>YemP$p}8yuG~vXIGzemp8-3 zVo{l_?NKNcfV1L;&(6+(@ia}BN+o5=w!!1$W2@By0)oLH?+C&BTRuNOUteFtU-R>T zcqkOw-``gzbWcJ<9!#&-t5&PcW)lv3eSH;qKwR@J00K=O<#HLd)Xh+>R#)8#7@o~$ z9*+mL+I8`Iz4Q58lHr9W8nu3Fy!^ElFO$ijmaUwpr>Eb1X|UNc8jS)CrcgUA$8i)z zsc3g?Fc>I`0$NK&4F8~(hH00}Rj=1Y?dYy0p1;!q`1jI-ZnxX-_xt_+Y&H{&G@H#9 zi$(C1)oL}F1m3h@G#U>N4+V!