Bug 1514438 [wpt PR 14532] - Port filter subregion test from example in spec, a=testonly
authorChris Lilley <chris@w3.org>
Thu, 31 Jan 2019 12:13:32 +0000
changeset 457768 9780ea04e9ad1127b57f200e3c12b45a89f53347
parent 457767 26eb20f41c4ffcddc140f961f7b61c696cfa3bf6
child 457769 7924d8d2b5c0f2ff4e18e30ea09dbb380a1f208c
push id35518
push useropoprus@mozilla.com
push dateFri, 08 Feb 2019 09:55:14 +0000
treeherdermozilla-central@3a3e393396f4 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewerstestonly
bugs1514438, 14532
milestone67.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1514438 [wpt PR 14532] - Port filter subregion test from example in spec, a=testonly Automatic update from web-platform-tests Port filter subregion test from example in spec (#14532) -- wpt-commits: 41e17ed5e95166373ab692dd7667e826e9331abc wpt-pr: 14532
testing/web-platform/tests/css/filter-effects/filter-subregion-01-ref.html
testing/web-platform/tests/css/filter-effects/filter-subregion-01.html
testing/web-platform/tests/css/filter-effects/support/filtersubregion00.png
new file mode 100644
--- /dev/null
+++ b/testing/web-platform/tests/css/filter-effects/filter-subregion-01-ref.html
@@ -0,0 +1,9 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>filter primitive subregion: Clip to filter primitive subregion</title>
+<link rel="author" title="Chris Lilley" href="mailto:chris@w3.org">
+<p>Test passes if two semi-transparent green rectangles are on top of the
+blue boxes to the left, and one opaque green rectangle on the blue box
+to the right.</p>
+<!-- this is example filtersubregion00 from the specification -->
+<img src="support/filtersubregion00.png" style="width:400px; height: 400px"/>
new file mode 100644
--- /dev/null
+++ b/testing/web-platform/tests/css/filter-effects/filter-subregion-01.html
@@ -0,0 +1,53 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>filter primitive subregion: Clip to filter primitive subregion</title>
+<link rel="author" title="Chris Lilley" href="mailto:chris@w3.org">
+<link rel="help" href="https://drafts.fxtf.org/filter-effects/#FilterPrimitiveSubRegion">
+<link rel="match"  href="filter-subregion-01-ref.html">
+<p>Test passes if two semi-transparent green rectangles are on top of the
+blue boxes to the left, and one opaque green rectangle on the blue box
+to the right.</p>
+<!-- this is example filtersubregion00.svg from the specification -->
+<svg width="400" height="400">
+	<defs>
+		<filter id="flood" x="0" y="0" width="100%" height="100%" primitiveUnits="objectBoundingBox">
+		   <feFlood x="25%" y="25%" width="50%" height="50%"
+					flood-color="green" flood-opacity="0.75"/>
+		</filter>
+		<filter id="blend" primitiveUnits="objectBoundingBox">
+		   <feBlend x="25%" y="25%" width="50%" height="50%"
+					in2="SourceGraphic" mode="multiply"/>
+		</filter>
+		<filter id="merge" primitiveUnits="objectBoundingBox">
+		   <feMerge x="25%" y="25%" width="50%" height="50%">
+				<feMergeNode in="SourceGraphic"/>
+				<feMergeNode in="FillPaint"/>
+		   </feMerge>
+		</filter>
+	</defs>
+
+	<g fill="none" stroke="blue" stroke-width="4">
+	   <rect width="200" height="200"/>
+	   <line x2="200" y2="200"/>
+	   <line x1="200" y2="200"/>
+	</g>
+	<circle fill="green" filter="url(#flood)" cx="100" cy="100" r="90"/>
+
+	<g transform="translate(200 0)">
+		<g fill="none" stroke="blue" stroke-width="4">
+		   <rect width="200" height="200"/>
+		   <line x2="200" y2="200"/>
+		   <line x1="200" y2="200"/>
+		</g>
+		<circle fill="green" filter="url(#blend)" cx="100" cy="100" r="90"/>
+	</g>
+
+	<g transform="translate(0 200)">
+		<g fill="none" stroke="blue" stroke-width="4">
+		   <rect width="200" height="200"/>
+		   <line x2="200" y2="200"/>
+		   <line x1="200" y2="200"/>
+		</g>
+		<circle fill="green" fill-opacity="0.5" filter="url(#merge)" cx="100" cy="100" r="90"/>
+	</g>
+</svg>
\ No newline at end of file
new file mode 100644
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..b6c4bccb63cd850f473a59d9e3c0cf26c699db13
GIT binary patch
literal 7217
zc${5$c|4SF_y27P70FDc!Wh#uWGPvriHVUBK9;PJ6j{n%Vlt{JVp3*?h(UzNlCs3d
z78Pb>SEy`H46>BWh@|wrZavQ*zaOu8UDthW=bZOB*L}|Wrdj`EDzRzzCJ2Hg%t%CA
z2ohkxKQR$7a=k&P9W-bUlC32KUBQ8oC<yuq&wPfUP<05JafcxN6bO<IO0TiOg9%~p
zqn1Y@s5G9kYLf__1uoi}8bKwUveV!}<gB?V5&8rFXVvG!(;I_G&KDtQOB4JPNK)A%
z13@yeX2hd*;UB*YUyD8Eoxxt1ca0f-w!@@W`>p&vr;peq`?w!nH#VQLQ%YH5_&XQv
zv(#b=E8A5@d)+re`$Rb?+mYUTS`K+tB_FF8+^6(4yZL*=x!~bmT)|0`j}{i@rJj3_
zbB6J1y4CeZmOF<sr_!hDMyzp~G~7im1HM7#RK!<)yGg~M0My8+a213amD;5vzqQDW
zw@OATtqo2bO$=Z95I$PfAb0KJ(%gS!imWJ@2S2~Xj5oL*)S_knRyFw6gbcnIX0T}k
zkDC}gZmHYc;Qs-!dP+x&`Z{L3|LIljwE#Ub_Q4fpgWxu`g;OhpMBc)q1I>nuljHtU
zhr{wtSDXy49FDKvPaC?_ynP`XcVkE|TwQ0F>`mb>PCNCjI0d4(LY5QV58sEg<rX-p
znt^JvQyUU?vkzRAatxEfMSGr6_~-E~#~I~P)$-zNQ1Qv_`2$blavFa7*X8p|mm3V%
zmctt2!Y=>OLmWl&7OK0N4Zpt`&ym0TC;U_NzcY2JCAIsn)&!pR%gCf_4qppeU3y=B
z?V4Zkz8+yR78R)#(C}j{{L!k%{1wMKR`TUU*BZkIYs);UYnrKz0V*8*^*6_K%<y#J
z<Zwf&?+IDegjhz_J|1cGkM9ec#fFvl?6J`Xe#Q?^CUNQOUH=m0kT>kfj^Hd3YIz7L
zd3oeoTcf%ew~_kZ6)UB1w3GL~T(R<i?#_l!w|=-Ka7?6|_gTtWzF`|nHcQt|*eEfY
zTJ8pOLUyqF@s<8@^(rfWJ}XM;Is@~=M&(Y={^m!@JIhw2@5OQ~QLhaW(vr)2i<>NW
zgmjsntW-{56R4N4w(zu18D8J-{nj{<S<Wd`eVc>I4pR1LNHQa<mG_yETyBe0kkYb5
zsUSF6xU+hjLnYY9MJ84D9(n$VhOSC0n&6h6rHY@&B$r#WgNiS?zp&NUltLU$WUW}&
zF6=JOG5fUh5p6LdLyU%IQ^e~tYG3MeatwWOy@Az^1`HR2WBQU!?sD9oOsh!c7k%@g
z7#=m9caTT56`6g!+qZ4nSF+vl_?0Hz-}O9dVRv9)QE)&>i$1g4UCutiv}feV+np(r
ziS+FJa;{LhSMWid#WwaKT}Kaj-wV&;mEZ9O1L>w#8MotbyW-6lUYP08GeXDieZU9Q
zs-ZGl%DxgiiMmdvsXV2^2}wiQ(~sZKs2MnnywV=|0`evKWS!QuqJFIL*=O;Eobi&{
zv03|{Re1xn+%#4CkL)?h+=$#^T<FC<7T55-yWF{$J;P0QmZ)J}=jmxxU1udt`Q>5h
z)2Z)9-?EO8#QSX=4i%R9_0c;mqKFJ*gOhK62&enSI>+SPF%4z6n)Wz+W9iRa2B&$E
z>M+vfn@pYQGx2YpRJEM3lnV`<eByi62w-yYkXH{8bqyczmS{adsqm6QJVgqSw<YSh
zt6s^7#of^7=4i)RJ<B9U30o$ch8dv9*stC1Y^uQ0U5Ga46yl*7E%np;d~su;n8$-1
z_7{>fpS{$_NyXPl0H9gB-iXe;Yj-&p)np+YDrUMX_sM@Igl?v^l+-+zBIVOkXxH&v
zq1RI$yK86qkE3rIWtZsQzdA+MGDE4f#^AEac6;TYlo_Axkd`CcO?MtgQYorkln>Il
z4q~s#wDyH7hV}k4lJva3kdB-NqCS~HpVXljj<`NAL?A*l@HK{RkNEh)bV*C>AIi4Y
z9A$c0RUrxyTA#{$Jd-?!z2U4w&!)_M+`jBMVY9SS7)?ACSczA4xtmO1yjt><&ZO(=
z(v>4KT<pbZ#swT9Rt?4Ok4eQ7Wj8{MEmQQ?{n#|s74%jGsVzPjo=qI3q7apkJ)sJo
zcNVvaQdQ%O3!;Ru7<plh1rX~+FFtXC%`YR4z6~fj8Cu;fGE0try(b^ce+TYxHOi)m
ziP9Lcl&zdHg@aDgTh_azoyD6)NkjuN&oRrU5C`(&;jY(>bte%_ddTB3GV1R3^=nil
zOI{od`S^F@L;1fuWkT@tUIsCYOJ9rq)bo>#4YVXBJU=sb7CV}wI{Dqipig-E+k6lE
zcwNUQt}m=bX8RIi`1lzGsg;ySgUj>ra@9kw9aB3JwlVk@?xwB%yvz87T{;q^@wI-g
zH@vm#yQh<WkK3Uu*#76bogK|D<-NkZlZuG?z2QgXuW2tIGg#AGdi2Nj;l6M8r`A@3
z4-Zl*LRPPQzkp%KH-8*wkK2y+An%#BcT707rM)MrM~1YsDJ2SKfrhJ>R%M0_x$&sD
z(CIIa?zaSwb|xmpn1;^Yr+19T3YCbEebA9cWmh9*Q{yhzu8x~wSR8IzOg?#LpA<us
zx_IXMOf_=0pKXIkeSq(OayN%1+MSus?|Jh(uIky9fPze-n?CCP$`Z;7l`KS^>^=WV
z@q-mcWR@#%ozQX~gVjjK_m|xD;0k2*<yz^OHMvLrn*8)#3)-#7Xv%t7lgi=oy77>f
z13CkD7H5Ql#5}VRzPynB*2FL793hBWY>n~4NOOa^oS`c`=$Y+g+EsyGi(I)c)j6gg
zXIV90TBFYup(UZ+oM)D~1vkH6)udl2iJxi(Tkj|^(?w@*a)VbU7P99zK{r#vHjbz=
zV=rr+(QA9_0BJGyk#a}fkKCV7<v|4WiR{rhiHlC17)eN2<0dX)&^-eWZRLpX1utQH
z_FvsvxIs$W$q<@xTbrq`>ir=>4x-vs(Co;1ZOL<xSgw&}?*5yhZ4RJ&15xmE{REOp
z0q<|eGL4kl=KQ;pudXgiKx_MA&Z&A!=!5W+ZPa>}Iws5_HAw7yyRy6d$EPoNU=r!>
zUfX{6VKR`MJ9+P*Q`iGhNU*hzX5sP7;Ipp^tn@BzrrCaPvYj+U^&BGRJx@Our~(Q1
zLbOGf&fWHyrAk2pTH;K?e|4f-dJakKgt1|8x^ITU2VgZ8-G>`xA?knXhz|Nry0B*9
z$eSXw8L6@7RG`pCuiJaInb|-u3-0rQkMoC0w-vz$xGT|A)jHG`*PMBfwTbGPBvod1
zsu+M~tExGRrmEUx`_O&IM{_s~tVz354yZL7eVPXw?uFv_11Op&Y!)l*b<fGtH$%d<
z#^l^{Mb4<>8zA8XD!#Xo^1G&bPr3fRO^_HCNxmd9S$=4}uSvd?(zO2tP+KC=w2F8;
zxm-&M5;j7$y&wf8#MlY|5YY59m7ekyaZe{y0S?b556&geiOfP`QTSscgKyk{zZh)J
z&SD|-R^HBCH$#EIU5Zwf2U7cXO~T8td&shS8dX=5y;Ee0g_Mwrh<~ncZgV)u_wZTG
z@JnHlelA;>yFpo03ky_W0BXQhuB&TCU1|LwCVqbd-YtEip&1tQ&K2eR;e0>Ose}fL
zW9;VS%xShu^b2eyb#M>f1u4ZB<YYK1Sf+gsF7K{LH^BfGVR(;^^FKHLRn*C{N#qW!
zJ5E^&7NOxmw)1s2py7<bQqN-@IVFQP*AGWb*i=pSw80lj3=&kJpG%8{JE>?8Y#cLG
zn^{xH4oGm<Q55_PG9cn0Qb1j~Q-~JQ#aBwxLi(CUlzhfB7j>4q<gbfp2$1iEJuuzQ
zihZdM4q@Qmd`zf6k2vTg+D&iSe@6S0Z;=hQcRqY*u|H(T^%h+KrK%KwAI5a!f7>G3
ze?fM}n6x>w#ICo%E?_^jgMKo9pK#LiZ*}uRnhENK<kr7fo-Q7dJ}uZyC<{b|4g*n^
zST*l2qw+4U3Rx-XeC89v7StWf<R`dM;%#hM=!Ln#THVTOqwjBGiqvIn4MLJgDg!~e
z2X>P!Ofe=mzkeC@pyO<xQvO9?HTLtXZ;iL7Ud$YPDgWTlj~9`pp>4_U=UvE~2C7xC
z(@$ny6Q2&!2YCweyGb!{89Z{}<k_wV@Au0lo_m{jDEvPJzXzb!tPeYxTwd7v(73cz
zNuGN!gOWSTiZCdXA|<RBh)S}9mCbIWy@}rAEr;y3fi&Ldv0mzklG`0HdJ}u%_7-Q?
zD9M&@Hk;}!tSZT0Zgt@^=oG%qsz|RD3a)In#(#*;_0cm&792CM<sXXFcVNcgjL<6g
z*r&pp2O?)X<FB?k>lwas8d$GtI61o!1rY|57dOWoE($SD5bUk(5709=P!HErsedv)
z@My1WiV3nbeXl&{DXk)8BY5LS3v+FjDet~WjXLcA^bBuX&seYe7%>#?L8ritqIuCT
zYbfY>TrXma*hVq|*=mb^rGRD7^F}=FkH|mKzxBG&l|(@Cj-vNOgN*qCq*O&o?jB}x
zkbAQD?&36Bv3P`w_6dxAyXgeDlN}PYRL&dT8OKvAXold=j41`#8GS9umB((#f;$8e
z_<7}4lLgVhdK70%>)58|qJ3WrX?8k{J-#IX#qDvWUE*0cQ|^rr(x(It=*XtiG34-j
zrwj_a-?^NNc}+$=Ha~SBhrDgVW1!^U(VRJ+%?8@N%BXW6HiZ_=+H*|Lqqqw4_IiQ&
z_K$)Xq9PLgX=UjXCKZp(PXyZUljTy0iIR^JB=0CQH3G^`z7kMSko3VM?T8I>zsK07
z<~{MA$Q4SgYh~FRoP0%9ej8<6z!eHjA{7+}g~!W{>o8@L%Q-@!$?F3w;Y1%ys2j)}
z?@nRVJ`uJk6u2Onl3X;vCM!UpVAcJU0V9qG4yv)4f<acKS=gc1^8mY;MM}C~o<2oY
zCV3{Tq@)039NpdHopqSX`@Plnw}`lu<!nNvdK%!$QnOFSYZ&)dmlwVfxyTY_CD2P{
zV)=OMXog+rvk|?naX`XMP@E^UiWUh_dsuHMJmfTgpFUjcAxh5LgxIAk&rjSEb6Dlx
zE>MMxI2-S3bLLT%Cvy%<4zG{`O;=v{Z4_m76TPZI)c71n`dTW>qWVm}g0hbhVQ?$5
zsY<&bDBMokezRG_0L{W2!==`kd%n*bL2Ti^Q5Bu#QE@uJU;>FF#5)MKZxoG+!lUJL
zw7&N%eNtC9O*Aq>G3W{#&br6T8fz51)F)pj{uCn~VyJ*@qmn_REY}9dQLYm=f#C5u
zPjb*en(_Yqy%cU|&`qQ*j(FCqot^4jjGKK*&p&-tZ|zs-;qkOr)S>FHH9w}499seb
zan(sb67lKSOsnE}UUc-Kg?7ya>4vq?;%N${gZ1M(AZP_$6x>>KORUd%gWgp~SE&Op
zmQL1<Pv?*S<O`C!BF4BkC0mZve<BI-yRI3m_3Sl?SE!yT3|BDA(ZvQ{i}<z1ZT&Zw
zUmEs8)9vs;r|zG%<ppmZHE+~2qc-(t!&D~y`P7CGF3EK@#;_@KX~cP>Xvn0Hd~D|S
z=v)_6#`1&^mM3C{n*KtjRtz2-Sn04Y8e1Hvv;8yIF8wMpkImCz1^@=#$^Q6!;n#A5
zyzZ|B`hwzcgYNPbts0-_V{@w`(p_$p;JUHihi19S3qu!!{i{^3nB8n142WZQZJ0?>
zxrJM3JKbVWKeFT6pc=C(T{PiqV=vS*AvkjUN+Y+&bo{cTU`ivi5`qK;Aou3Fa~s>l
zg)Jxg9LG=ju2lLk)?P}s{22-{rwrH&iilyOr=|?)MPZ<RmC<R+Hjlyu{RkRjb=uA^
zZ*xdscV?8nO%klxWE#f*{7b(+Mg52`uYSH+V!u>~qQ6xL{1KqwL~zf_;i3orvXJ;z
zPKPcVIsDKJvBFgxKa9OGG{Ib|oEf1i)OYR~CRFP;ZrYIG#vH7rI&A8@tJ{(o7gzf7
zkx@YIUE@ThD^>Gm^yw=ZqUuough{P>-qgqmq*>Vc{n8-`rVXd^CEBP`!e!}1Eh(<5
zq@ur|$EMs&BBJ1He!jh{4);Aiy<(#U0WC*cMEyzazx}qc$6c<v)tC?Alo-UGh0KhJ
z;=o81g9#oL4++xFq>-)!xB=b<2_tfJn8q<@bK1msAm_Rx_g%>#oyVXSHh?*e3L;{9
zx_FzzeI!?4E5{mPreG=4L(UN6fSk-^kyx}jIEy*lGhwwdMXk@kJbbW<jk5B7C~hnC
zk7Ww}`t8l03}Uay9hR8aFuqqc9)F!B=2;DD;Tz5jFH`|}@oS+uiqO2Fmr0tBlhBrG
zKaMidq+iO$ks<A^r0mblw`kh}WYo_l^GKsHFr5vK1}Eg6Mw;b5_q7x*Pl%ZmcxR1n
z)0UD^zX42huB2@<!}@P{3Wy@82+S~m3TuK&pMW+t$3~A@2*ZZl#@cE*Sy?tYd_zlK
zCy4aU<CzuP>u`cF0=c+^tA`lt7CuZ9qh*QJ&ItB-U+uqk<~&Bu_tKvr(tLi^)k6e6
zsIRGr9%2^2$q17oHvRo*Cm))5O-a2*P9Pyj^O6#6&K-Uzu7D5P_{_8TPBN-~{fkN>
z(4|dBivB~VioC4@fBDPp)hhqE`jV~IrzVSdl4h3J-&+?hIh3<ZnRr`1tl+HxAelkZ
zoHzq)jdAE(JNf{;iyg(#TM@7aZR3gJ{p*Av%9H}PJ{ay%6x;ybpbfKT#(Lq3P>_UG
zg-;|2dyL`NTVt5}`L%A*idoVBGyWyx(fZ1QgI*|trticzv+&Y0-?^m`VRL9nf>6PR
zPGk>E8k{V-mfppIHER;Ib(&WeIsfQ>r`+=1OmTDe;AWV#EwxlvANsL}2g-bvDyzq%
zm5S{6jweU1)<qT^SP`C(n&LhrgSh}pZ2j-Kw_gG;{b86RXg)D85rL6)uGNX}FsXe)
zV*paH>vpvHR5Ho4hUZjU8F>eIw$%aim$k*?RYe7b6SRvQyE3|ooWJISs$7d%7&1nT
z&?ZAWn<#G$KD{IM=G3v{pATGVa^!;oS6ofXlE`0Y2nzo^@H-u{NGjd~04fs%mECC{
zRM!!ifdnAhSwUnrupNJ!#nyJL%2Wg^vT2L{aFA+W_}EZ0$E&_i34=bf>&$~5(ki+t
zr&x=Z92)YUz^(%~$P?-NX3q;$-v;&l$<H=n6ILyv0DxlaRuyCuLu85*K`&KG@5q=r
z;6X&B!ny=_+LwqdNL#n)|MB1Udmt&oM~HW*9AGztpi@_wi`LE~7M6u2PXfzHo<8k(
z=pJ=%@kX=UVriMBM0UhL#c7yCk|dPI@lqW^*G2w{=pp7ceAx&SzB_503M|Y4qt+$5
z|6G^WOQ793>;xO#Yu&PIUDX~U2uB!T^-IXos_oYc$CEzq)nZO8b@swq-Ad+Mc=~)a
z`0PFhc=bzbg!4(3%je(afFa*bq22>D3S`E08nwIlsaq_vxj|YHmYBr=go#Do_Q$Pw
z|LUDk=yS|25^XW!V_}*`JbMEqk$a2h<m7W8DY#4lkczt#Op(di{tmf}B{Bv$F|{?P
z+(Ns9PlT=$G?GkXoKZ0GN}%EO+sDFPfqm`VhcpPT*CRZLmclUk=;nP6z+eTh6F45Z
z(i;-ic?DAe@U4V><%i4|L?Fehju+xe0fCX$e8w6pnC0h}=ae&PgJn*{v%e<^5YXH6
z+BMtFgbB`0uUHBAk=nf9uZpjRN0cf+5=8#a)Wx%}mp&||;{*vp3X*@N`lZF@16CwP
zzB5E5!6TyUYN6M8-uC-|^@#%t1*W55Zt{1RU53U|WiJtWxA7^ltB$-)TPng^pqrpY
zXYS1gyBQlpc%G{X&KXlj0d2zOOfC$S2m2$rJ!*eRm5A@8%{zQab<J<eS51NSp<{d{
z7P;8@?ONZt`(5?#qAq07pq<gj45RzzeT&}VSs40P+!!9{q;U%$@_<~NOABw3ZanVG
zMeHDpC$Doa1xW+|fO|0Fe?({_{fD4W9f4yEs292H+NL->?k!Q|$k=AscyT|>@8t5O
zdAeH3Rs#A%&^LEK4E+PibGHAzDF)EmJ@iH6yLggt<02<OB;>QTpM_z2XS&{UwcM|s
z75e<3v`dvA?e`0AV$$O5K(#prFdK0n^mCYn_>IVl)?9ncWM6t;v2RP>tiGYVx0Vz^
zs5PI=V7Fs?nYVC)TS;pBPW}U{tbXczLsXv?sy2+h#jwsxktrm4wtPaBAk>3b*OJj~
zdAJzbO@t((@Bk5x6`E`F1vfUW3W7vvkFFF#0FXQa2AWa(pT{H;0fz)IP?_pZqGId2
z9={;W`9A`!P7-Br%_K7nIZb-4(k}oaqOlt!3~<|(VkFs5I{9dD;LOo;$<M&Mf<9@6
z-I%*P8=$wjo8VvpE<&pZ;AvlDNFxAWVGRe^WAKN^z`-36ku+8h5kI#19o_c+v!6%&
zlUSl;t*5j@R>EjTDfi4|&m69oDMEw#^6%|c<u#&dDKuDFv=nSd`ThT?{4MqXXay{V
zf%~rG1l>h|Q!UCsw&>mp;*tapLo_Jm1<X)@>7G72q&;q`eK?9CXr{b(b7G0UVUSFB
zFLer@SKg{A3AW)|++NKn!WDVUx3dn2g|o(4UchXEeb56j>l_gy6o3}U@a!YvGd9@S
z0Uh+U00zpqbwN8%0%d@QDhM$107_aXz&*CRoYK*CH5<DHr>m-x98*AuF;e97$oOxB
zp@^;{3t4Tq^mUo>T6JgTQi6o02k;yrJu@Ow05?R~A|LM(*U1n6{P4%va2R{Qb-&g_
z+T!gEgoA-`@2fR`j}6bqJ2w29_z}S)ocQ<utF<5A&0m(@G1jEn)wFt8zIN?r_|Kth
zh9P~|H>XQ>Ag!7@Oxhf{)S)!e{9EUJqHs+*I|Hd~BQ480nWDT<K7uAz-rpw$8eR5L
zHqDO9)8*6kw@ZH++I9F8Mk`t-@Q&gMq@tv|IQ7?mL>CqoGuwnf9{D3AEh;?okEf<S
P1pdrS{vnnax!?Fd!8+mE