From 353cfab5b10933f213fc4d895231b6d44fcb2d7c Mon Sep 17 00:00:00 2001 From: Simon Ihmig Date: Sun, 15 Sep 2024 12:53:29 +0200 Subject: [PATCH] Fix LQIP color bug causing invalid hex values --- .changeset/tasty-ads-guess.md | 5 + apps/ember-test-app/app/controllers/image.ts | 8 +- apps/ember-test-app/app/images/aurora.jpg | Bin 0 -> 47787 bytes .../ember-test-app/app/images/tests/image.jpg | Bin 12327 -> 0 bytes apps/ember-test-app/app/images/tests/test.png | Bin 14918 -> 0 bytes .../tests/fastboot/image-test.js | 4 +- .../components/responsive-image-test.gts | 94 +++++++++--------- .../helpers/responsive-image-resolve-test.gts | 9 +- packages/webpack/src/lqip/color-css.ts | 4 +- 9 files changed, 66 insertions(+), 58 deletions(-) create mode 100644 .changeset/tasty-ads-guess.md create mode 100644 apps/ember-test-app/app/images/aurora.jpg delete mode 100644 apps/ember-test-app/app/images/tests/image.jpg delete mode 100644 apps/ember-test-app/app/images/tests/test.png diff --git a/.changeset/tasty-ads-guess.md b/.changeset/tasty-ads-guess.md new file mode 100644 index 000000000..41f71c99f --- /dev/null +++ b/.changeset/tasty-ads-guess.md @@ -0,0 +1,5 @@ +--- +'@responsive-image/webpack': patch +--- + +Fix LQIP color bug causing invalid hex values diff --git a/apps/ember-test-app/app/controllers/image.ts b/apps/ember-test-app/app/controllers/image.ts index d4170a91f..e6851f4a5 100644 --- a/apps/ember-test-app/app/controllers/image.ts +++ b/apps/ember-test-app/app/controllers/image.ts @@ -1,8 +1,8 @@ import Controller from '@ember/controller'; -import testImage from 'ember-test-app/images/tests/image.jpg?widths=50,100,640&formats=original,webp,avif&responsive'; -import testImageLqipInline from 'ember-test-app/images/tests/image.jpg?lqip=inline&widths=50,100,640&responsive'; -import testImageLqipColor from 'ember-test-app/images/tests/image.jpg?lqip=color&widths=50,100,640&responsive'; -import testImageLqipBlurhash from 'ember-test-app/images/tests/image.jpg?lqip=blurhash&widths=50,100,640&responsive'; +import testImage from 'ember-test-app/images/aurora.jpg?widths=50,100,640&formats=original,webp,avif&responsive'; +import testImageLqipInline from 'ember-test-app/images/aurora.jpg?lqip=inline&widths=50,100,640&responsive'; +import testImageLqipColor from 'ember-test-app/images/aurora.jpg?lqip=color&widths=50,100,640&responsive'; +import testImageLqipBlurhash from 'ember-test-app/images/aurora.jpg?lqip=blurhash&widths=50,100,640&responsive'; export default class IndexController extends Controller { testImage = testImage; diff --git a/apps/ember-test-app/app/images/aurora.jpg b/apps/ember-test-app/app/images/aurora.jpg new file mode 100644 index 0000000000000000000000000000000000000000..406401e608f75bacf47935a4f86100aa6ec042b0 GIT binary patch literal 47787 zcmbrF1$5j%(x7KNW@cuF*fBFRGcz+YGcz+YvmM)snVDi{cFdF*SOA`}xxXIB6KsQ6*cVru4M^1-1WZ0q6b_*Z}P!RW>|e;Ew? zFFSt}@Po1cvc*67(?4wf$%22`)Xv`Y!{%?99Zl^_|MJiWN4mS2eK1J&gTvje%sf8$ z`v;TTy4hKM@Y4sQ+nE`;007|dfAy|rCYB$}_`&ebs>&iC%nJZO!(03Z8~+Epnt6Vd z695o#aP)Gvvaoa|rZ%A=X5!-FB$hPuur+garB^gEu`zNsB^Gh8b2PH|0s#Jb%ztwM zQ2+Xt_`}KUOkC{j^vnz&?*EtkZxjDz^}mO|b^A|?d!>KW84z>o-@1S2{kP7c7y#h> z`Qe+yf9s610Dv!H008#-zjfq=002@b0MI`BAIF3Fx4l@px;k=y{_Nr5!C+-(!tmFj z|C0Zs!M`m3*YF?vWB9wjfBBAB)Xdz-&DNFpuTxDNY#rR3iCr9xOw5Ss|K~>h|D5qZ ziuE7m_@r!RZsu%e|FJ9ek5*=7Z}Cyx_NG>@Ru1;WR`&m^8vcLG_8(>Vi~nrbAAnZ+ z4nQ|x03gqz13;Hk0B|%o07y6gBL(=cdXt4w2mC$rG>A_A+3r91BmE!i|6v7|@bMSS z#ma*CuUbS|mDt41+5InnoD+Xn5CB*J5&#{510V#D0jL4=0A>IOfCnH55Ccd96acCK zEr3421YilU12_Xb0KR}AKsX=hEynbBBpnwQKG$0O;2uJ~>12O|Sf&4%*pe#@ss0B0xS^({VZa`mP2rvei z49o@=0jq#bz)oO4a2z-fTm$X_e*o`*FJK@rcrbJ@0x(Lj&tRNjLSQmrs$hCx7GO?b z-e93%@nD%?#bC8y?O^?2lVD3=yI|*FKS2Nx90(Ic0-^_Tf1w5wr`s06l|4f}?>GgVTfafJ=g_ft!Fkf%}8Uf@gzQg13VYfiHsZf!~0? zLm)ulL(oBRLr6hrLRdg}K!ii2LzF|bK@3AIK^#H+f`o*`grtJxfRu#Pg0zP8fsBRB zgKU88gPeyvfcyys1%(4e2gL`a0A&Q_3Kb5O1yu{x3$*}s1oZ?B2TcUc3@r|=4Q&q{ z44n>L4c!C10DS`e3WE$o0mBWW0AmW{1(N_%3eyEM3v&eX3X1|u1HgV>I^fOv%jgG7NOgrtw;jg*emf;5YC zfeeF8i7bL_gzS%;gWQR{g8UN&4TT9s0mTj_7Nr_x9OV=h3Y8L74Am4h6tx6(5cL2J zghqxYf@Xpif>w$)jCO<$iB5$sg>H==gIrj|ft!yzjC+BHj>m&%f)|a~jJJ*thEI#HjPHYAfFL@35It2^`Cxsk!qO=<*c0ct1eV(RZSkTje$HZ*xObF^TzY_yiNIkdBMV07$sR&;rE^PeC-aecD? zRQzd$9-dx^-krXNevbi@L6#wy;S0mnXY$Y5pOZe1etu_UW3*)~W!zvwWs+tJX6j

O1L{cXy6RQxj~b#H$r`(wpEdn7C$(_3th73`p|sVt%e8;% zi0P#19O<&@hU+ftQR#W=jqBs;+v;~4AQ>1Lv=~AdY8X}c1VUFHMsW8yR5OX3^kyXPn5SL6@$H})S0 zAPWc$I0}>qtPFw;vI&|FW(-aaehASB=?WzX4GcX9lL)H`M+|okUy0y}D2N1)w2GXG zVu{L%dXF}Zo`_+LNsoDpHHn>wV~Wd+`x9>-Ka;?oke>*dXrH*8B#=~@jFRk~e2^lS z(w<738lC!(W{@_X&YE730h{5Lv70HI*^xz_m6-LGZJE84Bb?Kai=P{n`>0$Ji-a$KrjI$FkAR#lE$9#j6i!oFg+Qn_-dileHk z8oxTB2CT-d=0~k=?OdH`T}M5AeNh8uLrf!}(XH{U$*^g;S*CfQg|nr;m7+Db4XrJ@ z9oX*Ge)Glh%Wj8O$9$)B=Rg-vSKC*HuNB`&zU6ddbSLz{_JsEQ>GkgY+2`1I(Qnaz zFkmpSF{nBCeMo6&W>{u;Y(#uya8zitcZ_fB+c@`l=LF}(mr3@?_9?chwrRHMwi))B z_F0bEjybNmu6f@1o&|x0{zcKnk?&I9Czs@x=9kr$S66gbc2`YTPuFbMZr9z{UpE3b zAvUA8khjve@wbb2Xm%QQ*>}75ME9olRrWUyOb*TuT@K%lLXQ!S(@%&_s!o|tzx@#Z zF?XhOc69D|{(2F9iE^2HMSazJEqFb3qj__5>wNp?F7_VhzT$!PVc@6Y&+T7!zg{1s zpKzWkpE;jLUo>7$UOnER-ZFpF{O)>}dEfkF_vg=_4L~RW3=9nPA>iO3h`$2$aRY;d zf`x+qSYVN0;b1>LNQfwi2p?Z;G!zsxYB!7Eo83t>Mc_;W)#Q2+*%|Ajq}qgE&+NXRxpe^$@e%*qi*&V&Y2ex z6iZW$Qo>}Y{DPm$45{_prWDA@GtIpT*6ba=h6p#$@^_R{8Knj6pH@h*} zL+6=Ivg_X9#cMH<3_j{-6e4{t3x*;Va!L3?R{lxa%Z*)fnT%bDX0-(r2~6-C-lZ`cHf*CUQ9W)MnsF>q<@wPDjxFSgu6FG$6Kjmd zB&adSFAezFIg`T-?v;nU>KHSrSsul>*Zgml+-L-af|)V1wb7QBRUKa?;G>xerS_wB zHP@{umm|MyXkMF35j#oc87Eos^4U3EJNdCc*Ku%JEy+H+W#V)^Y`8)8cdZKsRo)jC zLuRLy&gWp{pt6vCHFo&s(UF~TY7AW#lNo_#vxQG?zQAt2*hSMFmB-XRulZ|($<8fh zOZO7~4*r_+jYbN;Qa3n)uBBq6RIp;3w7N8GV4cOCl4T&5Fo!uYKSQcjCKI%7z0c(3 z%E&vX`mX7y?t^PBr;TS-nih7;o5?H8N5Atz|S=gw8?}k&Y9l*N;hbQkfYNA_#`=K)XNTCer^oG-?N{vPnI8J z_bZDCFNdIzLc&`D2fI+-;PT0z*o)ItuG|`RwT>B?IO(K%5tGX|2`bi)*(`?~g20su zzcM=sA{N^g>g(AE1I!|_N>EGifPC^0c7Z&(k6mP}kKIeQxvwP2uh;oJ+`46v1etC! z*>NN|1rz_Tz3Ah%sfVLKYCC`3!4Gqk-wsmV^=V^p;mVa@n+-b^z~BSS&m&h4^5PAd zVxqP1lt&J%&^z0TM&8f*#5wk1qK+DgS2jdV^zK2wZqo**vM0fqouYCVVc`40jLF!m zr5B~nqqwwDKUum^-b;osz?d3JVy+X5@OPJf6A`^6{>_lV-lc%<-Z&#xjHx3^(VnPv z95SSvCJ;a|Q|ARDnSiU;NY|{oRi@coiJsXkTEZQp9uKb>9H`dAU;dQm>)SO~C zi4}Y*6y!AK*2qG51xBZMvD-D-zyvNTK|ZAHy@<*FFvC_L8R^adyUc501@1FWrA%r< zT8+X>DI9Btsr^a+IUSXv`B(p_p*%cR0iu<0Yb?#4R$0?5`YH9Tk={{JW3a2(+!$BC zOY0&isr;d~dHnR0`KV)2yg#;YQk_L=*Ug9??z*`1_*IRmjb|QU*ipfcfEYcDrtCKb z_iekgb>_WP4*gJj&+yy$a^IM8B0LU6o<1EmOmQL^ zLspg{sK-t9$;Wgs+}zTSW~SZc+fICGC7t{ zV@X;~l*m6$WWqZ;MqXJalh1R%KRK4MSXuKul6J$J4;w*MCF_MDw;^6v<1~tWS1CF$ z5L1O55eer(j@ERdytgCE=c3GiaM~VPmupM#9ph`yFJmW{vJWx`cp64UFjqD5`7k!{ zIBG)?3}R<5PJr8*CtA z!3QbVOfeS}(E{U&TPc-vtf;4lc!&l2d^jmB#u<3U#1P<$u#-khkF?KQDAU0` z^SL$rIM&fur<>FySzW}@v_n^=q&M9GVh4h@HqVM6%bs0jJd9&T>GjViYLHVl7eJIb zwM1x^`Mz_?M$LHFRgyY6Q%xRfqav#L6u%kVs4^SIW&I7P1;??+bFa>e$!e|wfjwm? z_CJ6gT2J$|!xXYj*Q7MAc{eBZFhq!mZSo~?SA5?B1@JahyZ3kHlWSy+@vGDjHCt{_sVPV&gMzWilE5$1$1$;^#ij|R%56dX>d)GaT*iLxB3X>2+O7ObwO6>vrFJjV1BNKyy!1d5AHaGiY%F*&MuJ_E)a^6 zoHE2+F_E*=2-HWm^GhZLaR#W^<0dAPWk;Z2d%*_ESz^Eu)1U9Me@;V@DX1AsuM{eF z7Y?sTlF8X0g6ACWeoDu%WgWU)@1!mU(NSh4=+Y6pbDJU}#Hij>S8u2xn1#HG#OgEb z`Td@oGS9Jb0#-l%@I zvus8^gPB%FYXI+82G$jMy;9^)qAyH#D^r|;uuB$QXx}r_5ER&L*tkj;OyqE?uU@l` zU_&4O)m6@lio8!}*(_bPafeOcyMPq}ZT(`R>vtLOw=sr&zk?BfC_p3$T|8>O$OJ(j z`gv9Fat(i&;ygBv*AVlrrS!;?cABW%#jN>EO+IA!Cx?|Ald6p$>6UiM!}y|33%PGw zx>~c1IggzhfApGxQk~#fbEoXEZZIXLws8xa3Gk?i-b<*RwI9unBxmjl2Fi;;*aSR` zc-Gytvakukg07?&A&&MYzL0-{daci6F8qOvH&Z=GCgjxI92C3dO=`@-pmlki;Vhhh z6S#)ou7JTeb9WK5Naqu=}pztZ=y7(t{Oku;84cs*Q7L7ik^)MDWa?;}_4tH5o}8XN>7()85f%liKa>Hn5kHI!l7GjaYK-a>Ey2Db6=pj0k0!n<`z?3c3YX zIB>^)&`s^2FYAsaqyuG+%Dy*Lw9)yjsB5fYwbkjM_I+FD!FR!kM^BHXQgGAmRT{qE z0-c-}%;2oLZ)8m2FFI(P65`ET<8B9U*Xc1OC@fXe)}p65bo!OYx45>CY~x50V;=Yg zv#n2sOL3e{jrl5fNntKWQH?A$HPDF$$)}hdK3>eySrV&LdogiPi2c&N)TFjsedDU8 zz_%0bUS*W_K1a#IUcrE^DJ&1j1$j68c#-DTnGR5xSK~cqZ%>9lb?#~=Ywtxe!X1^i zKiXci8t7~HT7%*PTTD9^V;{IC0~J)AV@z^P_jT6JZC3(~#Qj`rF6QwhY4&4P^Lt&m zqvr43mGRemX)|(c?8l|Q*p&RR8pDZCUkhdD3#Bo1jk86x!t$R#=aU0-`JsZB~q-}N#FxV)fRNW^_%|3_psTTv#+CC zPr3aikGgLGT_kr$p0>O+ET!>7DdKf?p8gJLh3Azz^ZRTJlL`;-gPFr_YHb%)w_H)( zs>y8@J|f2J^98YN6*BIS)b1M+j<-ENX|DE1OT0?&?oL0swAOdXzw<8?iSd6rF>oeX zoO&V=SP}Gw^yiiM+5K5V%Spw7bI{ zcIt<2pPKk;5UI67Rc!KhQ#9&A{{Jke5mx_vgh(Elu8P%#x<)Rr3*A6@EDP*cD^~vhwxjRjRt`K+MGpu@aJgU zdn&Y*B*9%_e*OapH>m-yUt72{U#jz4pK4kA#fRWNAQGB_GszHie1q;9k#2xkQ@=P< zE5N^Sr3ZJC9~e=3#WR=urN%|twz!O;VuOpGg*NbR26HFpGuu!85`mUGhrnlt1wSO? zgBOO!p1`(tQS&bX-IU4%JXY(`%UbL3LICyoIL3Cpvk?9?8AVBNf*kxGwQQ>APbzNe zh-PLp#+xH$2c~U>Y?5C}+BW7}7!bpQlI6pwIu)zEzL*^a*{-y~hn2I&H>u=Ata5D? zj=5}PVK|*`caFPt@|8}yMXx6CSG`@G>j$u0%vmb1tQy}z`Xyi92k}QWkq2bN zzj)6k_Kt6XPTxb0>H2so1bg1D4N|r0t!`Pd#;4Xd`M__y5oP`WXnmtzTqb_^1e}l& zEg=@1IXu(-kP;yvI$mwOoI<0$Xm{kk(FWexPquL>T;#hB2JXb1ADRkott#nJb zr)oOXD9d1LU&Iz+ZDoy3VI^HSr|uTJJ(tii>d6xnYdIxsf~FT>1tuw~94d@#*5-Ba ztD;_|uK7e36n&bD+L)G}o+|BDie~-E5_W3Qq^_;&p08orDpu2N{OzIxUE08`Fv8>1 zp!gjxW@g_%gY@kzW?JXrzT2N^JoocDUhiHsF9Oke{N>v-I4D4*fc0G|s+?$jJ!0R$ zg>I)($6s&3D(NMS>L~NY>b+n^fX6!9&Ob)YAN{j58 zb?7PP6*7EPI0Q+A9=~{@C8unEDwGzw;)#YduRT?xWY4~4^i(cAKcDeN^^@2Jy2`>f zrGicUREx>efVF}dTB@D{oKW3#rgk}ETW;BY=h2Gp`E0OJpd(+ZyPWrcXa)jVrA?yJ z3%wbVox0`zq=a~@>P8NxQyl~vX~J@6r|P%dvu6du)nsB<`W)enJhKMc{Ur%8Ah&eb zcWom*uIa=dYkPHU(c%60>7S;dM7g>o6CP48<&1zT2+CMv z4>&bd%{Bal7+{(v!hgilo8qC)Ge`rgAj(UnfTq$I%oS~m29*ZJY`;(j_6Xy7DqTF) zP!LN!*qK>ZYWAlF zLXQU?_Bd1FU4^vH@YBIhcu{M+@VbqiIKQnAl%RqszZw1-VT!WUqXf)XcBP9{ZoX+6 z3X6Z9lrW1Vt!*WW#e@mzqAe?;-j1ek&XG=mOZ|KqhL-*)HvsW_6&> z4k2el?X$$t*$#_wMo<^~o;R~XMm;UXmiv16V)`mWSo|tzHhUgbPm|@i$hiUpq$$&IV!YUk?Io2|9Q9EXs7~q)pCB zcO^-~CSzoi&)rGEHtc-qUr=TceI&n3S6xyNMP+gfIo_h+uX;u_NM``JTLP@K&~9_dvC2uAlC$~MnEaXlcuv=oya z5y%$W7Le|`HD;v@#iI2nau2+RX6crV)`u;?Lw8Zs#I}!$oa&F>ri~6A`bD`s4bMhR zz04}))p`Y8EE5vBPB96P`i+-}y^S{gZt(vZ_VifpN4EUUMu6|ep)P>mRpP#z>;ZJN z(=0GWStj*RcRpwxB`Uo}U=+)+$^}uIO|8|MEKt;Dw!)3B8L@U1vLLnhd<&iTnd z;yzBB*T`oTowP#kXLx%qbK-;3V2P*NN?^F+ij1TZrtp~J!JA#Ls>SqBVM}&6X|fh z`j}$pR5h{cs{Y9K>OJH6E7thD@wYza>3R8KY%sxl5Q4I`on3CM99zmwd ztNl?``M#-sVV)U(!`U@3M|cEm8mXk?0CKr%y)yoVUOXIzj-_UB7PTzT`f~M>l`yCz zUUcJ!Zyal?O$4J4ucrG9t>YfGJg<*5U&%)VlpGlV1pluX=s$y?f5V7`7vxiWeUqvXL= zfH-2XMC7W~O|7v`o3^^0WM4oK1)Qw>#N?&=^7!5nPOT|+RNC@Eq;cSE$pA@UpoMsainSbY3h zps6qC{7bbeuA6p4;&(MQ(#Ve;?DyE*LQ__g_TZ0_Ra09PbwOtrRwpe1mfzHT5th`P zNQk=LMnV#4gJCLdFDK&TM}i@rebEem6xGEQs1;W!&YP)Z*W7n&^vOBS34x<2sYa7v zh>}&8^3#_o0V@&dZKYyY1@JAe<1E|LFeHm>_Ir^7aiJm03!&xb#RxED;`^#A*W)Vz zb8};vP^+*t`|YkmYEO~x!MM;LlK~=GgQH2*kcBNNR7iAnw}~Nd4C`R{j}~HOXC8+e4DCb&HrRZ(g&fHawub#B2mzr@ zUks<_w5Mxb8P|>O3Q#Jq20#LfBb`Z*BLR#fc*AujoRDmdEioxOUS4%c&kV`X+pw^M z*+KjB8b(NsO6VH6)n(F=B_-9R=vI-$xY^;k(atW?)YaBUg=D5q+$2QU<2Z6hDM#2; znS6~KxyzQA-?(wsy(~$dK-L|%2cpPg$YPwzb)iE;TdWAFLh@oL(v=)BTJVYoQ*$v+ ztB=q4n*}7$=^Eo`R6hD-C~s}fNT_UmVZPy$O1RMM9qH+vWo4~GsyaI5;pOF&nB`~D z)Wy)E#B+0fBcpN12@LKjloAg(Tw%?aRVLAdewOt<)Fd^CHXCH7;L%Mj_iB1(xiXS2 zlBCsXA1w%3P7XmtR0$keTa1bA8}0}*MAqR>TEa0ib8Is=Z*b=0*!Z(VxwMuJ0Acl0 zQZp3ooO{QDm5`E=O#~`5X_YdtsLsZ!hz-~m3`<-bCHMHqm#*PuHB^J)XH0?~HMr)%vkEV@HW`hG~h>T4Hm-YRrTR)$` z5Z*v{NL}CCgbJE1c2{4}Li(%EPqi*N9+NCGQ$lgwXWp25lRKx0>O>&qPi``_0~Z-9 zHORK4R;HxLgOM26&xAV!?;b@AaJS~cqHqT;p|YV+jS7dp2ZKWNJ~F!bq7I7&<7Kkf zg|uxFdUuBsp>wCsNErK6E6BLTmNu)$TnVuw$4R={eIrb;=yi8%LU~2MV-tC5MA?N)l}Jae)vK4(e_-L1`=X9wqZ&&tv&{Qy zE*L(0mg!n0M-9chh9<6QikP6Z#TnW=~#=gPbV2oGv+|Tj#rF>(l1Uz{Zq6|+ zM1fgzL0NZIiYyzCZxlaf4Daj0LdqMGw==jhaf`Mu^>*HyoddCmgbhg<}?iE){-w<^$QXQn?>;+5*<;P*!F*MMJF?-LF`wz38>IuTPyHC*E2U38n#@J3!X z&(fiHt3qvp4|5Aj(6Y%+$gT<1tM$^c(Mx*^EG(1NCFq#_u-Y}dA^D#47xjZ-E__=T zSvwYelDtgVxRt#yP+LB`dfrJ9st_*RWH0Dd%ZrQiT6QwwaA}E-fzE`N1!acLg#_dfl=!g$02ZB>2&zSmajuLtBJ6qwCs0=7Z6Lgw>v+uoZSCrv14~^k~uunnE z*cbZwO>id8uFm^n(NDka8AnHCJ*UPa+O1YQxPHfHtRh|fIvzJy_r7XE`&=sHC&IRg-yv?EYb=uw0WC4SA@jSK#@s)2b0aO(>s>_k#r(edL z-3`8Zg||OWALNl5J}2q&xjU#%Doye9=!SJo9H7`st^>_tMiVp-@kJFxc{? zfbM8AZS@W2XflJ}uRAXe({Y0gvil;UbST^*fR%~f$h^cBN`IuHy3m)yrmjFc~z@top0 z#zZ(P^QIBNdVRF>w$YoL(r5ZqRcw!P6#wxdUnp~Y`^`q-V8+>fM!qti2 zc>ltTAqzi9&?1=lD#Cy-TEa7w3!>BqTr`XEGCE9GG%=+5F zcmxCfeD>yn0ORgkXA2hfJ=uN7&UXPGmf_>444w?)-FM%pHp4fArJZqnHra&8FzF+P z+>;0iL{>#M=dZ15#V|ItTn)BKv)h}QcRo3v9E?*?GC{DPAdM~9@&iaZ_4zLBMRbXb zoM}6PZY8gl*4wNvim|^FKC(&Qy()>1i2yWARF#%8IJY7UD96ZcW0Mk03YjPwKJ)cV zE%Xle;HS%u`#RDmBL6gU=I&i3N?gPKeq^RWSnHXMvDLb@=EPe+(W4vE>5OEvL9Wbn zD}_Flwj?vp_8dPC+~@fs<;IA&)-1)*T@4T0JfDRpYyi(>}eZacD0GXtnci)>iZ4I z>m#(ib9^{!ItxX+Y0s0G??ZrL@r|D<$(>|vB>9*VD&+S}KsH>SB1q8Hx zPd!}`fft90lmi@K@1XiMrCk$8h7xy8QwK`$Yi_>-m~T`JJdwHWkh}7SkxbcpyA?L& z*L)^U0*;&VlKYWeOilyaxV{*_Adg=O*j?Hya~$@GtGJuLY=#QO{!DZ)eL|(=(uqeH;^c?RZnTPksfR$rY((x9*YT z`Eo7ASP_6*pxu)2b!^ne(+!&AnaXb%!s}qp2wr zRprdwF&-UdNbW~si&YgPF(d8@-ud{?=3#J5+ z>bfNUTu`WnB)W$+IUG6ZylRWrUvSx#00plRMw`bz84JjUS2BGk`vZvXwttZ6Rb<*koUZLhoCJV9j0e?d+WZtJ3>j;oAY>*-TG9 zvSe>vwV$tOPiuEgLj0B{ zY&J8H>EH@qJ48km?7D_*-=xJuD%==mYCbkHD>rV12t~oO2pIVTXgo2&WQvF%7b8$i zAit72y>-UzIybhI2vWn}A6fqtA{4vWL&Y$W0+rl%DyDA+VMf+XliQBVC4UCpdU<*{ z`b`ywgX%C>Q-9r&yE>?jwBoR+ParZ2rXH1m)}8x_YiZFyj0pC$`o614^mp|wJi zGX-~Vc(p%i=y*4w-}{#GYFR`itN050&EqW*y`1Fi<%BEXLiaMmNO&+MBjo$Ii#61i zIIV#jeJs@QcV~HMjA)FHS0yLY@F|(cosr)QVP+pxtpi7}Jq~jbQAH$AhH*`2Aqb5| zo15@4Y`x0A8QTQmfm^3?geVFjsPwB`bETYB-l@K0PAq&K-D2w2&AtECs(0Gz-ttAS zmcK^)65v$rCIDON&)DjRZWen7+mmki6^=LV51|j9#VOh zokM^uhg@GmLi1#QD1md@G(2H34cQk(Gh8l#pN_^f?vV}CF7>_1hyn{4Aq9Wz7`-`f z*LaFHF2L%kt3ox?koTp*O_Q5nw~Xzlt|S!v=BLm0sM>QyH#(6nFb$SuWF2uDBI?>* z)JxFCY+o@0l83VM_pCGhCBMH)FWzZ0P_cFCb~r+)Ro?|z5mj5@o{JT3%KJ1XFh9-$ zSecRy>Drma9gHwF6KsOoJ2jRlbZz_PconHR6os8dg3oKR#7Tn0wqXQe5E(s*U99a` z!r;afTty5&4ba<4k%3dhZd!!&|FqKS#emOHplpCip<2QzHQ+)WOhd@G)z3XaJ<+2B1Oy{InOVuY zvPW9fEoa0H{wnwZxBlsBaTeyIaw?M)yU4{KW!87W{=) z8;+c<=jKtnT5-XKyIX^kFXbcfIj*|!P@P7Uc!0=O4LOz~+KLnIp@w48Y?Irq>_v2I&`ic$t? z$%hfC(fXHvjA#aP4o$1MdYITMs~#TFzEdAotLy&m+52TKp7>679ei{f(mm%Nz&a-r z=eQzTjD0xCG!Cuq$7~~E?m`TL${*E}&1Q(!s#?+^O=v)|#lY#0dDyPP&8{yD+F_ZbSOHF>iUG1yq9(QG%C zO2mg>aD~%ki2uN_tr$U++s6(Co0?;%yBLN|*L>E>U4}qnOalfee=HO--Vi=RZSv_g2UVWKR0R7tD-g!O;84a>Aj9T> zyX_BwRY~rUDk>nh%be9TbB5Bk7Jh;x8Hf2oF`NAR`)@2)<8L>DxfoO+h?K}E);lZ}r8?V%RLk!~+n?j%q~3`eEZNG+I}uJyUmB9{-b*K{#>k>Uo>T#D zN`0HbNcd^OYcpP2T;0dV5yjKS_8R+*2870+a>O}1Ira?&f2DIEM#elSm#7}qS_5>e zdcIacOQkZWrPo)VISYYBup*5#kWU;~9!90&iY=3m93QR-c43_sE1(-6v2ub%kk3kK zHe@Jf^Dr64B$QW(2$xG{=#PgD`H`p>Z{Vmo`v$$x271&@l_y1g^CGz#!&2Bic%e<% zA;A)8^`t%}VHX@VyDEkudk|_2JuZLDuXQfXykEo+$Dah^1LQ(^jNmE~aV|YPRVt|%q*&g zm2?8^k}{sIICcJ(SSQ>5otD}kYLXC+pLiHS z?ha~!i3qkHoIFinJ(@?9WC-$qn()!=^MoKFWb9-^TfCP$po!R}!+E8aO=z($8)v~< zQ?q_F>vrL2vJJ4V2CAA}qD2kX=!xjGl{7~taS#>=61L*34 zn4^3KBQzK%tlFGlZn>o158SKTT+s`5(;|dfthA=9cIHhruW*02dRy$QaFM^K@=EC} zIi`M&eiQR2?M0E8Qo2vQ<_^f?-fHee5y=t)X9NGvMKTWl5uQBFndiv1oSLn!I944U zLbHfQrKcGTK21ohk2vl2k3PSpd78VYd`|Hl?=jtBl)VRE90m)Ncdy8&W#Numg+@@e zFf5rh&~tL$55_ZeTAm+fEx(te2A{D+-?oaXBpH{ws@#pyVaz*%xv{N*R>K$lE`Ras zUcp`ZYd$1IDcg{dw$PKByG$&RnA$ZMhP&$f`IfpJ%i>RYpSZ<@p{^<`IwXN&(?_Iv z6{0;1ktes307(BD(RYL$wW5N%tM{@GMO`jB+SNq$pnDGK zf)mD6d2Fz|a|G)SGd{b{`7Vi;aF6zZE;aQ2QZfoGe6eh;#$n@Gc>Mw`?h+8U9tb52 zkBlsL7>Hv{f}A%^XnC)v(fupXA0>247%Cb9M$S{LjFYUYv66$i)klxLJn33T)x!h{ zLPGLMv;tmTp@>mon$vusDa?jiNE%QwsVLGn)5Bftwk8rGMt#N*W){fhjxG(X7E!cg zD8qr7(S!;-uU4d~ls>F6Y_8pP(H4A)Ueq*~UbKi_Sijn$felaXkB*+N3C1P9p^NZp^Z8!iY4z)=ud7aX~j;)m@ zp!KBeY-SP93Ld-{+H@B$*_Yqs@N+;gqqepg9{A*sJyvg|GqRzV)^mE^5;<|$;kRV8 zYu4t??n@p@Fjvd&)Khiy>jsk$s-^S~;LBbX8Z;aR)pbJKAAs$X3-#D)`_|7tfR9l* z6*2(y_l=AX`FQu?AMZ8*QAn7OKgQ!uLBvT#P5twGw>SU&v7Z1*xU6?oZ7s9Oj5lf? z0s?XlF7cG)S#yKI0CdO{6Ery~R>WZLHeT7>FcHwYqSt&_u~T+c#^iR2I2VO*tu$tZ zfDhh8*a@1cj3}Rk!whO*hrpj@=Tl@TauUqg+=%VQj)^Xxv=sgJNF=ip+d%Yse>|f^ zJ8yTqmHm2NKe#-0H#A98!b&qy7Vhm63AChK!G%p^qr4~saqCJxT6jTF96vV+I0<-M zvsk_Xy!9VIFkC!xK4c`@*!)}wntEgXaL71qXs}1w((XLo0r)sy9Eul_t{7JSbMT-| z)WL%27bcE&I+s zbFh8Ks2P|Bfe697jA9-vh#`rw!CmGjZQ{X^*bTedul3qWSf5Kqk?p!xqxjl(l0;|_ zhbt3`8x+9#43gKS&&5IVLT2+YH!%@GDA~Jd$WM-qBsbH{baR_B8=1wr$~JHb;!roj z{w%!KCO)&DPr?>q${c&bJ7m&^9)!$O97DtrvLqrT*-m8=k~nj)pDZFj_3MYmF!N3k3;>CTSs@t{e!mr0mg1%=8j%<> zw$r?`UFr*WR}+O+DzKJ$3?WPM+JnPuWmO2v7{W3wmfGT0{RORCKer#(5!W5aNqa%FP@1#oxZ79u<{n#@AmalqH7n{vt#a7h7+2a3vop z#PkRItfZPU!Iz8z<2Z4~Z%w3V1=Fx(teV zi}NGFn|vUC*VX z6~j0|$|AtCGKW{jj6Du%T0R!z@LLXc4O?(y0O=0r(`AtJ7VG4GW!=Bt?}X^6CyRi zL_H%d6C)~gxbfgYt(LaLL~PGQ#;AM|Np)q0cM^SQqZn#t-)ic+%?E2tO z8Z1+Bc2LmJgp6j0Xzh}9(Xe(p(qhZ_isDMPAnGdurd0MU9_O@q5xBI3 zxDe7^UO3jgn7M=6tTn_S)fmXgveLK7k|JdcTyWiqW$0#bL57bZ50MBlqST}kFgbAV zFI?%aLKlZ|X_UcFbLgk=w7gRDJ(xU*J_(c(L)eBfBG{RdTm29`rqeAe7sdvW>aMsX z*<3idZP1#jEBGT~bMQ6d_(|~SY7Jv!UWF$HL+mxg^~7&Vneb@ z%Y4G092YCvd$^ZF+Gz2=TuTJb$_+8(Y_5goS?__JuZw*Oj1`#hW`w3@#PU#9Pr|h9 z*(SpKn9>>6uUU%Xy2q2K@1dY>L=@HeUK53r1KiucJRsIl$Rrt-L_2&CD{HI3f)e}$Cy3EgB;w)w5Xd#e`|x}enM{-2z{3f#@xpLuLNN#>Mudgt z@d*j|SBLOM9#5=eZ-ZV26xN28PewK1Ni-onh+fBVp%~NUu&yZdDolw>2yWXg5W$49 zW*+|lIsJ)v$1g|c?)(t!=GcMCb%We;WF_i_$3avST9ix z?F8K}-fBLz8T>oG8?7zr-}4rO?1KjSQOun40Qy z$-#%8$fSGAExofJ_9S#OdPG|szTX1S$V&$5s%&k=1T7(Nf})9ou`*5>_zVzMW2QCV z7K6$R^%?h%Ty*2RBN)*OVv{FZ^PL(W0cP-8?}A`l4S$8x@Y4}a{dpVD1qQxgNy~LmMQb#!j0rh2E;M&dI&8ThXMMCrjaH>L@84~OD(K1ik5`RC}NA| zj5=#IT=^b*ZRhBff!@N`JLQaA35l12Awo>?LD97qtm46O8LE~zUpyS8y_T|YkkOc9rbOE$I71`%o}Bje*@a$KD$O>R&a%}Hf~~!Wz+uv=v29|m|=`T z2va*>qgMn7Y+eOPA&dt1claP_&(S8+8m&-#Wf*G4MZ}knVFrjXa2JO`?Ncxv@PqMA zX|4!*`Aabwn&`xYIhn|?c;ou}jg24u&VwA~^!*Upn(e2gOwmoEw}P1CsZFCtOy}9} zdZUX!gx6lgn}t#d`#cPb;Dhi(>Ist)<(Ly=m){*BW{a^nqoIeQDr|ik6BdM9h~p}i z##~5{`5V$sVe6TEh(Ex3m~ddfgnx-+3pNm=7S0@F&9p=h8ygB#_vTM|9=f!jz(tuN zyKHU|r0u`h#F=NoLa4vB1y}j)kXGvGt96>_(YHiJU|5}%F2>StCUIl%PArF3I(vT{ zTY)SI=^hJ0!eSAjFs~(CDj1qE5{NqE-flxr$CD8V&OJPW;w<-=-hN2&#h*C53f{~Q zauiKDRT{w+!tiF;)Q2?45;1OeSjE=oEopij8qy2$lf=NV+5MG`zXGh96A5@VFG?;5G2CceDzR==qsYClOO1nvj5H+A5O0IP8q*KJ;XRFH zdKqAsfe$T+yh0gX&!NV}GhRf~XS?q#cQ*LK8H&h~VkHnG40+ZyY6=+=PS}|=Pl6K> zVL_t*0Aoh5$9)@?>!Ad>L5gvzcy>S028^N;gHWkE_XX_c@WQC{HxpvCt@Hl?0#sB= zdpxgV;%VuWBZm-gZ)=6cOI#Sna+r;N3+Cao;Mc~lMZ==OheW*vE=PiXa8W+e403Is z!0g02n|_FFGT0jC{{TXIlJdmP`+?}YLXNtJ>b(j*XM;$QDlwdxl)fR?v5=Wb`zxQ& zd>#hV54i*_qEie@qIy3@%P-c*LVgr5;RLuLp=_-1B`$VtX?Za*rKY-mjpWZRv|k3C zm|yxbNS2gFFeJ>T+)F0s@JiC}do40+7G(1UT3L9|mUKE~nE4RWA>c`9-eu$T^3lo2 z3^bDCJ-nK*dW5cocswI2cq@a5zi1snZZ?KazK8UNw%mV1VYd%iA6duITd_H)OKqf* z?Xj1wTzufIG_@~ZLvymXjFpys1(r9gh*PLp)ns@L^f|(oV2#J2aRk9OYmclYTG5tN zisftMVoJhrgy5{`qGrO;su7&S$+z%ZRZ6$dz`EgiZS6K^*58&*i!3Gu3!9&@KqR)d z{=<1~mHhBfs2h4)=*N25j;d0X@;1Q4v2<(n#da5I(Fi!^+J+FMDT!hg6?^(9XVHg- z?ACaK{0PCg5P#~3xEXhpBEl)?Yq#l+Cl{h)knLageRkP0%rDDhOyThf?YTg`RQ80t2VxW*Axk_)Hfreb{Uhu8Ah(eoY)C-3 zYvA|D`Gul+LP(Nk{^Y1J)!eA zt-8KYmOfwlGgxOo&qGGxHj(x4XM&a<3`@U9{@|Nx^pt+GI;L?JT+(Y8Bihd{ zyboHUrc32chQ-Dli;Bh?6;EQ-16bD3#K9tQ1~}0F00XdMlR%*!N@;%-{-&q-GSjVi zjzZ3&Uoc=Z`_t@OEXQbUl-BAJhC|!-#!~ay+wdywQZOf>EjtV$F-`37ZZ4|B3F<{8Z^s@#;&25NmDf@sK3a*fLEHchC8rKGEmo_KPF=7q)hP7da z4)>{umT3+<2;y^NRN)a%p?ly#_JW~1TR(5fhSOflQ>N*R@csH;iLjN=v6mDt*-fv| zYab?FpBeHqaL86OGg(5Pr1KcZ_H~wfen{Z%pXi15aQms3rFVg1c`8xyzA^KE`IK+0zf`kAJ1?q_O4E~CG&Ryf15Bs6vMueE1+gdj87);Wr4-RVogSN*Hpx1Z8Mf2@ zi-v~J6>>;ZzKqz2G=sBdFPlV^jE#&qX;jNL#sQz9h%c|`!#JOBY_&Dxp-Ft)p*HI9 zOqOb+?B3JD5@u&MmqHZHJZy4)rr*e&BFLTk8&@85GNkC!8n%UQBI*p8cul3`N(uJk zbnG7sef?q_WuC#%bjO|drJnl z*lRD6!o7*!*P1$Fjiyf>M|s)mA{0udB({%!$nrRKCc`Z6_yTRQ6wLNghrv?qh?%e? zLfX*X`TYx))5uk`*o(SCrfP!2M&P5pF}w(6$&HkiUuCFdyp~-JZB;$__#iDX^-2EB zonGB^#Wc1lrT(xdp!2`j&X=qbesU!{gSz_l1!7#Q(G6I}d<5a}!I76a@<;4VM`YKJ zvP&-yBHHWY*>S8YE{5E^L|GU|LU%Cv1<_xTFqv89gQ)ja>R$| zgzMP2#>Qr>Kao!V08_e}6oha(#EFD34V%;KYpo4?5=@zlP?UKnN_W!`S&=JAR&*vQ z#$b_U5si$iT?-cz!3|UIqx@heONR0)+b;x|uR;19Z;J!4t?CYCv@F7+j8;7qe!Q>B zV$)bj7o=7?F0Q4NWLu$N=-TSgl_p-go`h4d3h!gnSHTu}F!er~ljM;kfBE2$(~@H! z{Y~_CtLTS~S0$FRVzxMs0+~Jq2TITICp>At18T8p8yikdlJf)?WXAshu#ic|)7ePP zDyzcN9+fRp#hFt}$Jm~w@T}WEQR8AJ1#N%eY(abX^o62^^na7K?L2rMU12PEE^Zsr zd;SO5pM43TGW5I~1b^6(i**?GB<+3-jF)NKdml~`m(aVSz?dQWY-uT@E6LF`_S+RA zcT=eg?EsaA?W5H~tFTzaei7T3HZ{)hRp{Dw$%N&&mG)jCa3S$`be? zzWewRO$s0E#pZt5S*O{d_T4UP^ebQDWK<@R2(R8md~tXts~W0#M+DasvFNrF6CY=& zZEC$o*i}3pp3sOOu+;QdQ=Lo*6zcC#WaS@JSuT|b!<}rXn=%fiR_d0P#+a$c=%cFZ z2{AvDw6tDR*qSN7{0ZW7sbuy`_1Wc;$ASEUYZFT?{{S-u>fFX%>`l*>Z)bwJGFynn z8!N*f$o&r4a$NQZkMt~3KDR=}T6Eyj=rK3Z+49~o{gG|hj6sRG{zb0+`Vq|8Sn`BD zcJ4<#wb=uprxSqFDNI-J9!UDhkltGOGQZzAEGkI637a$LY+Wy~$Xuw>b3u+t8dzw* zch9CSm%umY4b&Sq{Kz3YJJ6&|uLDf#dJstoF9bqL5pcmCNFY<5EGaVYgJ?FyJjQU- zA~`_-mDt}U()^m~{P37MpN-{Uh(GX(Jf-?El|NAR{{Utl5+VmFH>jV zlgK;`5$Jxx_7{*()BZ$D5ajLr6>f+7R6TY4i(l*(Px}biWMT9#gwx{!KlvDv@DDA8qXtHD^zrvlQT z{sZ(E9gU|4_*0;PaJ4fuL7dPU{{WyagZ6gBPi`7yk{G5N`N7%C z<3qb5mLSsbBwf>|k{$`r8R-eJi_mbsj{+OE8}~@dA0aB)jl%WGL?j?edND7NC4h(6 zm3D5zDwyCq1F#ohUF0+maqeOsbaaDImdwUV&d`v9jh>AGDqNp)E~mmR&2%piDAvVD%0Mo`zufKTAU;pl@h4LCfR%9)Mi zdK(56lCBPe*?TYxLTHAg#)hdRHzLgoQ`zTbh}`&NlMjDF8qwgyhd-2PnY|KwEDnE9 z=z3R5IMjH*$gycv6@r}mEE7hzQ0&bKkfQbm<;0R-42QFGXVIwNy&bH%M6QP@E;zVbFw+e43Ly(;K|@af zi*p<8J?Hu%KO-JQNUeB-B&X&pG&eI3FfXu9%^@LmVh^-pY;Ejm*wN7RG&m^NEOUp< zMzrpC#Q!hw?_qCp#AW3+2Z_-C?)cC*md%y@vN z8f7sd`mcxm7<}I36ILXZp{)vyg~G8x_3cRpczGO^CI0};3lo7j zOjD$+c6b=@8HCS?l5p7A_AXQ5GL+a-mxQ=6w+zUk!(+Xf3ELCh5;55UjHNW-MThuI z%LY1dLjbrWkd#ZGoXPAFO@gIv;-_!kd_H~0rvGn>q#2*9`!(-e_&!Lb@~E(gWM!MBr7A#f9kxTbq} zd@T3y>&X8ABj06v8oNEi64^zw0ba~vG(sU3m!isNdU`uVviLKkLm>wlI!}ki{wd$% zN>K<%*e@aQz<7Qj?p`U~?TD@m4~oNMV;77B&ZUZH;C}da{6m1KA@>|#!upPuf*(ppr5~O29Rd0jes_^@ITPF=z~C$DdY&(l%bZZ?5j}?h z_n?ZZ;H&OcVyP78b+urQM?u)5!0Jjb%Fh;FK+0F3A?d9TC)<2E&IJ z*rJ?lI`}SEc3xcG12W+CJX&hBI?^bo6x7t-3JS?4SsLbW97ZG-^rTQZWDTnw9-N%w zLSkyVPkW~_OC$`91!IzkbY-ZbF3@vi5;ef|dU`09xuiPW{{U{HO*A7&$Xw*tG!xAf zTJ~BjK$UHgvIhfc#m{r!Bc*KOVK21Fe#n?uK#awQH_*00S(drNN4@%(^-)gQa?V+0 zn^U+;xckPcJ;|G-dxQ0G257P+ytVl}`#qlDcj))NMw>igCY;JwswEP1j+%XDqi~y0 zH6N_XT?u5GZH_qTa0(=#*RVR?fI&zVGzDu@robbpcK-k`lj^*yQ@#n@KThAeo%m>U zzAFyjNGetwQ&CTMu8>$Di%Q5Kno88|vFv(}5|_Xx{{TMH_#1pRz9s(v7T*tNjYGCz zU0?x7ssY0*kx^%?F#(FF3U4J{mt~$s-prcpv&FnvB{((Ck;<)QcCUlYaaj8B#mvLi z>oAyvVg|w?uV5uLqy}IZTZTAcjx?=O%O&l0ulBoicJA%t_Kn1D->url>%UtkGW%6= zT}UfCuwLbL#g|DoQpKv+CGm;;cYSnvk*=0U?$G%ZK4YQtZ8oRTvTGM`&>F!`W1^A?;hrhs zWIvZkG|D%@smkiR-dPfl08*+EwV)12b7g{UB)S&p+oWcVnn4h29vrUiTD52@2&)JI z#v!~8Efi5{i_#G3jhEB000010s|2t5Cjq+ zF+ouxFkuA~KyiUGLQPOnd%{T5VU2)F2m|v&CDSWOJ|PaMTdPib+O2~eQ;Z-qkNN>QhmuTqeL;1 z52+M7&F2f52(;X<^AX5;V93m9h1`lFdJ@ibPhH|mk!&(D(!*@B7^BUJu4UWF6hgxL zwkOT36r8+uTvy21CEL;c(wu>3lCsFSfdO5qK zIO$FtK`$MM{_@AGE}5P`|#Tf0du=Y)=&ZpBujR{{X{m+R|UqX;6>L zBUO~D?K{z2;-g}PD)OrsT1_bZ7M$&^^thYXb)AfhB4R9GI$utDyRtPd<5Ez6_KJFQ$Q7X{03p$J0J zXqphe3F>;2CQrEfu_2KY5QW%Xh=@Yd*MT8-7jiwwks?Hi2$cEZ8#0#fzK!jEX3C_O zzK!3hv&L#Z`CNj6lajMnOr`jWE>0wI;JI($euMu23SXD*H~cw%U%4;9{{SKO8_{_< z(d(0@oj8+L7hzP5k9n0QR=xMxwBG*mM$tW+Vy8;$b{->YqVjK4@nYp$cq_Bo6rc9D zHvXA5$V@@O9HnSX;AwM~M4f-C3 zq3ABc>@6I54GK%(Iq+CsT4EO!jB)<}|HJ?w5dZ=L0|5a60RaI300000009C30|XHg z5EBIyAQk`G00;pC0RaL5=rXW7QVddH^!dF;hri{|G16J`4ArFC^MLFk+J zaKr0Hjpo)N+Rgs}o$aBU4z?>RhgMiyd;b7t9~iMd0FqQ^yBFmX&5mcf804B+weFm(0F)XgOWi=XHSj9sE8=VJBtFbIcPYfeWtul)W zR;37twS~IFmu=Z^frn;0&KtwwuFNZF($^q! zVzZ94Q&qK$dKf?Hu{AFgY~3a-$Su`5Gu)ZcX<98|UW zu;RH&GIAK%jZ1!pXXpO_I?}21Hj3-PU(fiaJK-pqZ9raBLY@=B8mLBe+rYHQ8GNoK8sD zn}QM0aPpaRe@$|$K&)((!RQyo_>MCT0 z@It5v|HJ?{5dZ=L0RsXA1O)*H1poj5000335g`K*F%m%_B2i&7LQ-)PFoBVw1S3F0 zVzJ@yGgHCQ@&DQY2mu2D13v-q*XCZ;{q=1{8T|ZjU)(X^$AP`E`D&N<4EPqyYW#}) zoC?1#{7)O&+a4=hy{w}qMsbaoCJb!KDejgT>Amlt3&-W;Y`~90J5%taBs(4Qa9Ec1 zExkW0lEhW-$wnDtOv#g}?9MiHV%U#i@-yGV@3#gHH?tl-`!ejt44fR6%B`<%`*tgl zBLyC2uff=|&toPwwc%T5YdFr?D9+6*9jp%QSuwOwrQ2wTq+pi5ykQvTPaZ5$XL5`o zl$P~F-zev6*&b$gGPcJ%Bs$xIwynC}3I700<*PU=YL)gCZC(i>;Qn^^Ff44m7(#ns zvXM;5XKk3r=zA5lwsDj7Bci&buTi`%Xq=?_*8}i0BBe&bg2DRPA|z`&`LV`>^6KPHZL zp>JC`CMA+nmT-|6zb=};URxz@QZZhOm^@@&QCHIO_6*TH*Ao}zm=10n|+>3@4@imk1J`Kk%v@i zr^!jA+Vf-44Mj_-G(%IXt4kd=q`5U>{{XXHNRn@QCDrV7k0wUh6hws|O&Ybsf3h_) zx^MNeNOQO!RZ;^L2(dcWrKQ;ceYuEimzg8uETJxW>7fNb9`=1o6u+&=MkC&+m zu&E6yUB?ybnD|U^!zT#Z7=m7{Md?m3SM21QG zl84-L#EHTinB+nnSH2-MM6xE;JDsMQm17sOC%~iQq2%ed2hMq zzr^fD`sWC9$~0#b)T0@Hsig>Ie!P%TmmCS*^Y;|>Q~v;r>8gn8E~@fI`0O`cTl*f> z`V)Lb{>0oWjYS-3nyuzPu{g!SCfO%9e3fIhf>&em-ydV}`nkHnHrsJznzl!$Jth1x zO%1o#rp~GKtP=DjJ-h8<;N+%rL!sjs+0izUeTKUY4q6}6#YFA0ZtQNdYR3G}CbWOw zCb!gTK6M$=xon%q@=iZJj`1RI=QS71YW-}~Uq2?N)Jc5IpVt2Xar%qtKgy47yA83D zi^~2DPp9}bAJl67EZ3t|w5-+t0E}s8Q0Z6rjQ;>J)bl2Y`jPTBxkP@GO?-xv`5CA5 zG9UKY3-~4c5SPg>;M0P~>}P^aR?8#tq}Fzdj|24E1hX$f9X)Lha&l|zIK?xs%|}$< zpwuzk$6TdJ3Q(jhc}}ZUfsO<8o>&Z=I-PvP}~2y6$=vE;g;1 zINwZ~`wf$i!pQ62X(7XtotcAzymhpa8llkL}9m7+Xq;vnYA=E?g8=5aE<5 zu9=PueTHyz`Mmg7g9jUVVfu(fdUz0!lR_5BF-c^nYiup3#^3+M045Lt00RL40s;a9 z0RaI40RR9201+WEK~Z6GfsqiQvBA;d@bUlJ00;pA00BP`Z^K}K2G)bx#aAo`5iuif ztrQC%cFO{UzC34KWfoB1Ak~Y70hW%{IkQnHHWuQA_<+SyvWUE|672xRP7$r)R~EEk z`-nJpX(bLs7ykeuW|mRA8$M&#(=l;w=*go)SC;Ke&)~Cp8@_&sq%}iDYq`>D>ylD9 z9;UQR6_UpiR>GkbGz$%@X1-rg(?ot@S2DBl3kR4zq4dATI}c&hLwzpld=javfZqNk zE8I^mH*3%FY;aU?Tr|{YS~yrdKny?GnVePwiHSS~Ou^_PQGu%A?08cQZe00;0OwgX&ggbV!)OQMHQ!{UgrxKzBzOC+pNcB!u9ADWbUg56kt)60Q9 z8B-zxxIiM)C3Yk=Xsg+9L%)JJ3BRAH>?I0X_#G(r&i&EDF%METCI0|%p%i%T*W5S$ zh6kcptA6GPqT(5ly~5#Wc3b5D*NX8_CQ8CB@MWwa33HJNNEq9{PG8JRT3BGKqGy{K zvVo8_*Vm|q{d#}r@wP;+`IWO^$M=dNeTBj4^Ei&RcKAMJ7xOK39eW+!LDJkPxG&7D zAw@xYYtmN>*^0Id_WuB?fkv-7+(A`eWYDbuUxE+L#X1MJ{{ZBmwDR=xEqngOCPP5^ zzf$`!8%-}t_=<*v^$MtX1r7mJQ~|itEW|_r_v#`5iX(`fAQ@8&i9^2yne!6C^WyFv zwlpRAniU<=y}useSugXD4?*TLzyP;L3xTu1y@j_zu%$d^&5lu-*+Aq*h_$3wZ|JB@ zJh)vwTo%4+Zo|EaX37hjlr-Ezc?;dPEg&J-V2{*4?C3oiJ%kE1gRsh9%|~ze`GXDQ zDCpE5WESeaJ1r{k+0-%#W#59KYRR~F^Tt`oD}xf+yq?l9CMNtuqA{ANU`XBI=~4I) zvnmuHKu|=hlvi-%ywTxq?d}jN_OXMt6E>045i%HVBVm25zyT?5N?%Sj;g`u);*HV> z$Iz~RY5`2{Zy?Yfd8cYI2woS+Vm)6as9|VP+p6^#C@5z7_=-J?Qn_)G30RF+(-UD; z)qJm(cH~B|fz5*7PAN?1UofM9S@ZEc>9n=+016elwJM*9!J<&{1Ki!u5&764RA_~T zSnrk&x^Xlfz*?50Eb0aGES6b!UlSIAL4c**wboKu3reY0sams(>U7n!aqA zcN|m6u|NZlrfoOQ%B6q;#m7|3{S{R#^*9&H49Fi5GYOReEuU(DKn=w_{^3wU>YP2z zCC=cx6&pAuFWqtYb}wVL+Ty=9M0~|knvDR6V3^ABnE*N+?0FC^A|K3X>G>roczP*r zX45Fp=aNDWSx&kNIz^3Vo7TXbES6p8{k;1*@Pq|9=fu`8kD*1pJo+3(O%a2@l zgyr{fHo>+Ubc1Eor%AA^7pEZ6s{F>TM_19YYbY(XL^Q|^yMG@=pRtyRMCi)cYRZiV z4#l`axnb_A4{z|+##C(xE5cTU*;*KV`GpZzhzLv*JxZEqxr`q*8tu*WlKo8|-BYUG`Y`o2tLewy6ncL2a~Alf*~I?q1}p zyfO$Wx_=wkkw6Agn)TXa@B3SyiB_YJ$G94~RQ9vX5JT%eDp3SFXT%oN<5BEw&5HR@ zDqSkuD(u80@BkrERsR68f&zrTu9Z{!XOH6T;rO1iHlZ-fIjo?p7C(|VdnrqcZ7~XK zE*N%IdDc4af{Irc&m>w( z^^duZ%~FV2v_9pY*aqf!f#JfY(|o|wvbBvYw%MB>*q_8*%BiyH=DRrjz@`f$+kqnO zti-HffXvFjpSUq-RA9aHQq6oz`hyi1AVsW}oIbgrXR9xUS`0z?YTGiif!t`6-koK+&l}>961loHL$uaax*0ms&)AnQw@8 z?(Sk)g!$R1k4cLzI^98zY;q&D9t!4@MupEL)*wc_6~6%8RPzlg`Y$?`lk zc^^k0Q*1RiWzKnG)v1=Oewf!P6GRQPGe%T3z!W~>3wdw{Qc!s+616E8Uu71C>N3py z!pW`_q!7~WZQfN&eha>A3q{J8tER5579%?;Oy4)|TKvlpUn44ct7hJ@(rkm#h>8 zYx5cp60(X$!5vqeY}snR%ov5BuSy8{lDrI*J7;jx52;QJ+WT=KsEFI$DKLB$4 zTqGy-MQFl4gbJ5h!&X+@8o!x-OZfFX3X5nJuUv`9`5)ZT*>c zSWh@yaLC%%>Y~-QDe6)s(xYicqiA^a%hZ9o-B~JL#@_uShx;4Ik+ln_wiNa;Bj5dk z+!02^tKZ1N*4dj@zRfUamTw@B;|dW42DBb(JFSS);?S8&cyDeQ9{^f@SUp)NZMYU5 z-{3kjDq4*N0veWu-+=mr3`&Q%m3MH~>hSpT+@ZhnX?g)_{LZ@@1w*I`DPZaRc+vvW z0LPH4O@mRDYoTWw4Lr)5*69FUKSTzBQgt9D(mq+ok;@SRmJN0!a5AO4U4-C?EqM5V zdYXS70>TSTm-Q`R{7N#Ec_K)lbF(Vh>uH*PSZ;aEptl5=ygv{kY^O>!wt1Q!MaOJ5 z^ODwI&QF)w8}96Im(NgU4ac815ER#w)L_eN1JPAqv50t2S5lK~3Mnr9agHo5PzL?i zHd|Yo@9Gq&1-vG`D1E98SR^jV$U2Wk6n`bx`iO%SJCAMt<^qZ3JS-* z4EF}P0$1npT#fBc)osQE)=E&8Te7(+c@PDM-f~cKy+WZC{X(kM?DyoMlr@Jc0d}P{ zU3OsrPEiCB&*AfI_N2uMSpgs*oF0_M>H)kb&a0N>1!z8HcaIlZ7t5H`sbtDoI7M2m z$?^;1>6st-0;#nw833o_xwk4csE&>H+k<})Ys9{2(=A4WcH)=ew7RzsN$7{_&*lQhBZSpl4 zl>}@pFKSZ*U_EcDmxM5Ahxa8*mbnK@jBcEbi`R)+tq!{r{xoBF*U4?3iY*amr zt7SujSIx`QSK}NSZ-Sj3L0;VSdxph@ zzBP*|k2`QYnL>41lKnjA3;dZMU6kG zU1vP74j?h^hy!;G5p8PG`B_coz`65x;!w^<3cr}jBI#4!4XFMTULYP zHa;Pu(J=&L!6}|PY!bZGb1hG5e{1nlg=@`3dGSmLB66XD8&&IHJ(d=tMh%766kkoe z)M`XU0jM-1#hii;{Xj*typF0oe{qL%{y{=HXNb^C9xjagmxVo?_A^?SIE1jTBYtDo zx8D@UHBsn9aDE?h?B>gW(Pf_M3NTY}KQpe)Gj5MPH7*v`>jbKME6-#FAei|PHCO88 zBRc?;Kr{?J*I$@gwhFcN4<8Jpk0nC^y!6E;PA?h$tlLevsQ#liMqFJ?y&*GeG@NQCtR=#=d`1pS#3trE{KRA2Wrn*)4L!I&e=Q=l3j zWydxr@hDoSWga1U!`!-{x9CbL`w%#rExg!-jwU~YfJ@TKvzA2<%pY>8Os2FmYKB*L zWnQIhR6gL_0p{dKNnIPt^Dg~+u0w@fCiv&^-oavIeMIQ1s3Hc8!4-ktESbPWTPzx) z;_SM}4WO@oz(oOBe&tgFqzIiTg{L35ZD12J)C?-gMM!Uo<)`*)EJrc{fAS@){8=pq z#Ys(GS?+oHoftYwrQvz*uAo=A=)6y)ryR%{!}t=FYQFDdBATyJ-{VDYpe-yggC4O9 zlZj`&AmjUj7^$?Co~3V)Z^JsFH5$1sX6~vLplQy>s`V3^Kvh!4?zSO08iMDetXm!) zCL*m{H*jW_sFQ-m_}b)J%3ZDRE09rSqQ0O6wGZ41G8B>SR#a}=?bnDolkkR`OHl6s|(_V%bcIE+zE~YV{@Ok!b+ei>Q}}C2|M4d4_Bs zCbuvd?zt+|2|y72O4UsiV01300kX%CZRAs&l{S4j8J3)w*h&f?5i%l;EA3v1N69Rs ze}OI8(c&s#D5Y;;twQF-vl_a;nEnv6<;vLc0v(n`r6QcUO5xJ9Y^1)fMMmY$yAo*|VM_>?@tCb{Ai zYBU|^*hf)FC_P&!94w~1lOrL{;wyays_==^lCA4K41l5=F?$8dxSDb}C1)-NgCNU- zp9WZv5t}I)AD4entBfOdji;$=P@B9(6~w{t{xB1ewjD?d-yWc^5y^O*Sy#N6E6h_+ zqeYuavC$N+?}UkF}*k>nCq z%q=Iu8SubNyiq7NL8$iFp+mCdIeUXUIHi0<0Q4(FbU=>@9joC63Tgx&m+)P776tle z7~bV)3X~Z}d5Ux}_bX503+xvB&c*v#u+9vyVudWa8uvY?cld(9ubG}Ag9f>B-Z2(h z@H~((B92{MbA3u*cQi|Yp})%$Ax0&8Dv@??h<&?(XmmM}YqT>}Lpl zs1o2-G*PO^DMY99u@Iy9LHsUDWF-S7xI{2+h=~rRr0}RfauQg+gW?&s)wVtV0LYFp zl%5gv@QgCPF29I9{{S`e4@ms4#B9)yImu|v(#Dc`wJal3P%qc`Ye<4s2)A)oV2fct z65zMz>Jq~0;442dJR#6Pru`WeZO$-5pxyN-D2lfVml%lEf{OJMBuY`oc3WVm5bN6I zV)atWVJtAeiN6>12S;6-zx`FdN~bh?bzs91ozQGtGs;m43)xxwiM19!iV z<1P)+V?k+M^WH&)vVqx3fNo{vMZYXM3y8OB8mJFl=iDUo3Dx}>0idQ9QQcZ;sY{Sc(bv_%5_zofR4`Tej1%2ltrJ$cJ6rZZ*dD{UJ_s984T*3dyIP`B=?L_V zc#VB!;hVlrh$9K@378z6so|aV=^z=pY)Y@#na*H%IW>3k9Ap|Q zyxS4GfNu|^6+)kpdpRmGp(;1(2(%+ib#%yNi8S zQk!me&AYOQ1rupNMYUgtxF*5wJg8BHj#TI4GDx_ z?6FiW}E`-I43%#hS!!Sn5IhXyO*`QuwvY<#7cL!b^AQ*zA{>ctn~~hhRNYEVT@DMEfjzf>Qvjye&A48WIEK3s3iDu&ip_?86yNJ)fxt%Ra62N+iq23 z{>zk`0+D6A)_RUYlcSYVu!!iJ3vwkfDVupdW;I}xhYIZ{esG>#hHb|6oGa89SF~5D zmnPXQNGi3ItheN-BC>Iafi`-8(EQ>G*a*7g0jnLlGv+{SWC*f^BA`=8wJfvn(Ai8k8Z-}q_JfWi@9N` z!j4Aa89-K12t7s5UdziS(l zhg;(DrapAmjhd#J_?HkEjVk;^rDCcTB}Rx^H$8rOu{ zH*7_q*|w#vz^`buWTx7OggYU22AE=6)&^e)E4IwqrZSlu4U~>@5jszVi(2tk?;)fF zZbcvfrPYUstQJVB2Y|buGu1@j@+J;5ijQHlC8>tiWphvfi`3oSK>!y3)-|z0Fj_5e z%g?w4v}dqiNN$ThX^eG6D|+}~LoG-4E+BPY&B4ny=pB?IEoM3J!h;sl%{^BZC!z`oI4dg6Rt-1BFM ztd_L`iFw!_qF)34%uN0ZiCgg>fU>;mkX9RPRODZYl8KKPX;pc#VOLkDn38M3hTO?@ z8FIUFz!XNW!i*(~zvYBw1Qj$#t84D1OkwR`tDF<&TbA4>3`MbG1_rKC-L-e*S>Dee z1JDdg56>9u^bg4&VeW-l5TvNIqE*0YFKXZ{0vj%u^ z(R@pgBxtG_<=g_Ngt<|D1NcjvFqc7g-sBH(y?*5tqtA#zvuplEh7O|;H$)@7N)Q?* zmS<=r6c#>erb`EiuYqa+!1B9Ydj0geB*`YkXVogw864OkMAqqtf9-djR6!ai@BQi=PB{yX?0W~5FD^*n%`J45qW5;fRE^QLGZotrdTyfVr z?pyW}h@dDh4$&wm8b*@FC6NGNCfKoe$lx_DH3|$Y9hWSda#lr5rsT1gOWBf;uIy9_ zv9*xZA-R&fL^zyel-$7-PEsrRgO!_mXWGUqtKP(xN1H$vq0b07(My#pS`BFw4mimm z-yWg6h2vEyTcG(;iB&7BEPHm_^U0UEET}XDZdqeqo~#jqEKie(2M&tp{p2~={;nrb z@~a~dN|i$Y0J*}zScX#;xUhI-#XA}aB_ zK94~S;5;x6Q92OXHKU(I2?3}yqMuiFE`lt|zzAGe02yF%2BPN}D`*GUC1=!g=rrJL z-910#a8P^?%g?#TSXM$NGSV!K&<&_CfgQcU(k@3QqTJt8U%Gm z`q2moHiz&+diQXaN}o0--VP9CXhwAxcjP2BDYZdo4?fCfge%&Y9RH$Rd4li%v5dA^c$v8hYx%GMFgq3 zu*>sNVttwpd@m!QV8+jv(HW;VypJM;%WxL|0ERMzSEZnpbbFOi80=ny;C)I);SWA; z#H@%4fR2LnS99V4M(dV4ru;)}Qs|Y3!d{}`uL`sE7Jeb>Z;YmZ0nY~q3R8U!MG|68?+fe9_LMXK`2br*eR0_#iajdIwT7AY4L)lXk z;erWE{{Y_%x@U5fK5B{NYSZSX1bp6xi1ZZ2%g*Vxy#!TsE5p^*8PMKMWd>JW7Zvw0B61v|gN)W>cSC zo&pUOA;f)60>SUH5p(O|fF2vtHA0VkK8fY!_XR)|!`xc6U1?0f4dRy<*?gDc)i0b& zRUOq}Mk-05(O-#VAUxm%F?->){{R+~4FE)>1wePTqlnNdRV~Zw7qLzS`RSX07f@pc z{7SE^#+l%Huc&~Mnj2T;fkhNdU$q|mM4|gDE#U@$UklKT^I5TXMo_hl-N)G(RAmMB zR>3uMC8r*E&jd|?1yEEKD{oj+y!9%qEVG0{!aSZfT;Ebmg-(46v$E8UKCg9?Ln^-$ zWSEl`#?5CKZw*AZ{-8YXzN_#-B2gZ-$CAMYQcv6)X0FXDox z6_DM2a#xvv=wXShZdlI&40@K2E$WQuYZB^HAB16q(_-GORkI+gC`N|)@iJ^3x&ZmM zHCI~Jf#f3A)xfO{?t~$wz~vg^#0W-KZ+}d5MV$`?YzE{3dshon>sD`BLHtliyD&D! zK~)&HlDR=EY2H_#1gTiRo}mmW8l{7+%p>E@J1EgYv;p;9hYe`iMDz(zWm(#FsLq++ z)6vND=IsWD)aIkLY_}&?GLQY5rBnn%ZmstSHCDQf^L!?`wHejNa?*$hy7mBRcYE1L ziy_|c%EVU-Y`@6%OOvvTewETxsChzZembz+QchRezzL#-1UlN&Oh1wRhfu%Dg9{67 zz4cQZE3f@CSpr#Ur}T_2o#^c>6^c!c(_mb>ikegiH*gtgIZSKV9!Y+sGy999N`E0w&m|Ttir$RI0A|7X+<`&B&Wb`OCLT-K`}jwPh>hL(aM&r@AJ%jc@coUo+t^j=d#1o~QiA zTo3@e@ecub3{S)+wHj+<@-g0kI|+-prx~lNeArb=r0(`p^9M@p?`r%{m@gzl%GK*& z`z}+S1*&`mv^1p!{U^4FlT`~(6p{^A4KamZN6frI>C5vMUOhS9uDNk{>TCn@f8wD} zCy)G)llg!AGUPkqlk+}tcdE4THz}S^n@4V*7+gd_RA7T()S?hSNjcKP0F}f+G#uvL)=@-czS@Q zB8@GOzN>GVR6$l&;c$UJD>q_#!9=kDs%pP-jqPfif&*&#h%C3+6}eF>*Tg`TdHq1D zp;Y#h)xg$soqgNv47b84C}zf*r7^_{r`13#aVS?{(p$mCci##;8 zQz`kNK}gJgGqHB0N|Y5N{{R^G$_S$LXCyz zu>zqkj4FnqMuGU2FNit9mU}YIn!q9ahXj7=-#WcOEEb#%0 zo>WpqHy;h2I>FCk#av_vyk#Nr;xr1<2<~L!JiRiA3OKg>@>4I*Lj{y`g5m!F4)s}h zHQ|=gQr?fRxB=Rc)jcNhIdAp%Klt=Mz{d^NLy5hc09~LTAO8I<2(O??iF9wjU!8XSLZG6Hl zco$mr?pUDGcBiLhL=+7_XE@l5sfYcq%m;IdRo&?tK*2@szD17hp&}1Yn8iy-lyI_z zenxjm`VF$-U4E+9F3+3s04CIEzl$4=bP9Ry>c1T&oX|42r7QV0)A;x%msOVEX{ zurxGrT7=9G@nFjnfK;5RC+Mg06gEgq)RQ` z7nnd#ZQVN578g^)WN}@V3Z(}@mTJ9n=fb|xnHr$^=-*cNOo;_(NS)n8~m zG~hMQ`6z%K$aoryv)rL>y*FUjRJSO)f-7Glli81w#TLFM5jwtRkf5w#U?)x@LL=2z z_`~Y9+fZHvCU_%gCGPNc8(~6bwJK^ro0#b;@gMH!EDeQLKl+C4Sgbn44`uMRDxrd@%?W;F^nyQ%{E%cKWLiE@ zV*-^~b@DNt7Ytx=A)t13B0fn)SPW&IDOY-;En1oZ@=TP(eX4vECBBiheHs;&v?!o{ z5{TFVpjEd1ZU*}fEmwS}&PJ(CR|-{vB6%}a)^B#^p-`z!zGLkW&~xEeE78EN>9z4J zrCRa}c*jK^6%@$DQOFc3wyL(m+j4@wNLOLy>~CFb0-v}Xgw|@j3eu0TmdXy}L$P{W zLxztY*nDUU9=qRnE|GK1XPqVN{C>Z<`Wy=K*-MLYTv_H&7k=HjZOBF2ho7h=De4t3 z-7wwM{R~d>GK&SlFs{sgRkE)ho!jm#(RHGO@d$$PE51;ug|$mON_eirs{XxCL;>X4 zrhX;lOZavx##WT`5k-0Y#6>TeX<@LIssfpYMymYIF*#p|0lfK1<*(eQcjgCekIc;l z?@;t?Uak5}b+39!i`n~+hyf1cg+QSK zi={(?#hzpWf3^Pr#$FF&Nd0UTo2jqqL&1CO{{Wa`rZTOmLB!~h{E@0ant&4F6e@;3 z7F|$vX?Kvn!zq2dT*~kOZ27rK@&c0f`3gM!#rucB?eAaGN8GwoZ{D))xubS7c=06r z8490m2*Inyl7=SNL3?ErT|uP22P4N$su$|w?hScoBQ1dPocs``p-8YP>4(I*%S3uk zL?I26eO4ESQgf(;x!Jkftp}KCEgdOSk2ig8l4L zr3uoQ7Z@+p+K;M9ZcGg?8H*-uPV(fNUKis`8wx+msSbYtZujVoL&D595L zu%2)qP&@P@rR@p=?~Q+mhKliWt>4bFDRpO_U+sva3N^MG*Lv0uq`rsYgnU!pqy9$L zgF%-91&4=Uxnxr~h_~eVN9>&9Du>SJ`-_zQ8E5J;7JqR94!t!tW_O)|QAf)GK}Ef9 zBAkHLm-RAeJR?{s0IQ;J<{7K_$n_SSeM?hbEp3JHUiiPeWrMtw->~ZKz-EW~nYwx8 z8lnD}I-})+ydo^75+59v+%6A{h~7rJGw6)LA5-Ffqpg34Sc|X3{{Z1Km;Nyy{Nr>t z_`YSZQ~ve&&bvc`fb(%KsvF-hs)usKaRJ46nv7(N? zVSB;k_SiRN?u+C^QYzrLpVTW<{X`r;NlxZn)9;%(D_5j8OZF+1=o+itePTPZUR7SP zQFqvf!Xi!XKHvByU8U8^u}1vLmxrqhi>B|({{Usk7x7=|hJu0NLZB6#a)Y5);6U(^{&D)%PRYEkt!BI4OcsFoQ_HCX&|KGvhL z_DbEtWOvfy4o61Werliv>l|FLt?U4=PIv^KM~=mK*9mmh2ar6IDMu!ooAfrKcgo)aH->yP(37nbPT+EV5qE;sy$hJ#gT zDE*ZXw{D+d{{SVRvsYotD+ky9Vnm?u{{W>+9w&$Y0Fk~WdjA0O6@Q_B{ko zTGS2y08nok&9~i4bm(|tWLNTi#&J|tvQYfJ%$|KLTns%E)#@DEJ%J!-_bFyKd&n*PPOEy$s5%5_Bw9P`!aDv1yq6!!s zpp+q}vgX)W6=lcgfdb)Tnk}H+ra zaO_Z_O0hS?j_XiD0@CN%rbdE~oBU3%eHr;<+fRX_4#H!*rp4NBnUC@(Y9AN>0QMt~ zQRFDo{;s>fP{R>e!hAn%nf;S=T9ruI_+ zh~MyE2%>vQPpU0S`WMXUF4#i1Wq(8lmwdtyY1Fp2m>~n4cb;Xa>(gh$`~qW zx&ji#It*y8t_4R89^f#VSKJpVQlXTF=Jtr8szJ{Zgfu+;kwlinxeeVB?LZ2AM$Ugp z7X=G!+7?(I2q=ImJ;BZOn3YI+&d5y68?cZ3A;tGfe}?tWyNeY zTp3+NE>%mOVzv+qaDWLXRJ*|65sby#tVL&4ly+4VFci-XO0S3W+|x2@P(zGMLBBqt zC5NVY!N?)Cmx8n1!+;h7nEilx^&=ES4YnFL$w`30#f$ z7OpvR>eq-SzcVRGeP|Hd;V2aH2nQM_z|k%_-hEH9`0}&B_<*dtLYDKadVv7&1P9r2Q$4AjxC0dR zGVYJ?mdeaQX_R??fwFEat!1I_Ww&Vtd5J9*n5wasK4JA{H!;ld>n~B?9;MM?%CZ%N zpDaW2zOmw|1B{9(&ijCs9vuz^zDS`un5a6dqwDsL^38=0s$jjtvHt+5n6{KJ>!1G0 zhmqg;2F9Bb!A~AkNsVFqB5k4^5p0O84c$y024mdJ;q61u6p7SRoeAFpdgKI&w( zRv;Gz*X7z z{E?MM2V!1j5s)vWuBQ=+SYt)%Gp;GvR1cWMWcK*t!g&c6RcuJS z%n-0RX3R23fau`$vGaSBu)DfV&h)rTNDra_h_7$GT*Cl9MYsdb@F7hdP zt8K7EEzg}Gt=*|$LxT90MNmM-=$@e47hhBNOr}ompeMo?2sK-U7&o^achu}rC>qO( zg)-Z*^=x((Kt~E-uH3BZRI&JP%nWXrD2q>-Lsu|2C|L6X;aK1B)8;ZKW=nNCawY6H zuH^16#1y7dmie*JqGUb9&#p5l`y*)CSga&$8ZH_L%g`*SB|$H#SeKJ9#VGGLDj4$gj(dI#4=H^K*C)?XzZXV zwj=h#?M)aDT^D1_^Rgf0gWOntW^lccjG|W~;xw^}d~y(KB~18Df}bqi*lGq)>|7;- zwaAP(52*Ah93Sey47=p7puz+J3uDe34g)_~#7IF-qCY#9f*>$hc-bw@si&5p@FQ>= z&qRGY7h$r94LwYv6SoGo3ir#3bZf)-fmfNkA_(GNF&e>D7SjF2d-6;4Oc!?xkHl5+ zekKn&Efxz4xc33(D`lOY8o9dkORqvIY6F4$n7o`fxeZVhKw$WVGuN0Rk1)5D{lQTi zQVQvL7slVzRIec4d_+9_O;Y8aX8u^7=MHb?Y1wU?rN*^-#mfG@K`Oaw{{T?%6lI;1 znQ;*>l8FQ+9@07W2K!T>fhA4ByjV4PS>2w75uK93DhRs833QV5Gv~}pYl9xf5qu-P z1K}x{zQi&q+F=^O^(^ZCpvDkt`VPuo-**v4u4my5z@|RzvGwK)X$~=V+R9-2Bat7Z ze{$99U5FhvTiib2OO~bzXft*L=k8=Lv`P@0(6%qc_5ML{N{l-T)X8}>sx^aQk23e4 z$6$Q1`^ASN{7-W}+0Xdeypdt8-M>?ZeAKtCKe9LGSIyTY#MnD?ChdDsJ}%SnmPN4@ zdnk!j7chb>5XWNqLpsN>lTAmqrJJ@?H||io$(4w_mu zBp|H>7C9W)YZ&DlekO$v+c{tL8?^T1aU$NVB`C+_{{Z#JX>&n+{{TsHUdBeRV;uDm z{NVop-}Wo~Cxh?)Lyz1u!X9KA8rx^5%(}nCyguTNpvu+?6^trsiLbH?O_rp(t%sNz zeMU%6xx?`-Zp9Pt)OIik@Bd=%s7yC`s$F(bK;xr0-7T<9Kd|4kprt9c~*Mj`< zh_Rxlq{+URv+Wt{%wx})Yc>`)#8sOcb|pIqHY-oKnI$*GUD(`jpW#Ksd_7zkyW0qg z-U6eq;TT}YHG+XMQ>+kJv|K0Ah{adLTK&scPnkssN~6t1MV*QG8t?q#j%efvE4PT6Yp@rKz8%!jbs@N!pqEBOqY z@s?zdwreNWUu~B89ApcVZG+fON4Eu#EExX)#C{R-e4jo87>GCF-#!D7S!8jyU{8Jo zk0hKWvT}R%8L~;=jE%EgnE4~tRrRxltCMUvLhQEgTFLPY_Xu4z8yD?Tt5jH?s&*c=)58RIR|C(U&wY$uWzXZf%Ow24`Z@?ZL^2S|TmT>*O_Tgxdypv46;d$89d@D1$Bp-bE%V7B4$Jp8Qx3HXr zTTO@Hf^_*wSbH0J4-3Q^gnG-jwhx9l-u0Xu_owHOZm6KL65UB`m&Usx*-j2XTr_MXaO5Z^Zb=6r6laoVsv3A70oneE--MHHGBEZB zqjHRpA<{g<8Tc~W(iyUT4Os~ZOheS1h+1H0;c#?j#UH!NAn^YH%N2Gy1DVa5rt|Te z4=+-~$q4r%KXVKXvoE(#Zk@J1NOs$Pre6F!`(nlP_yEW)m5$0Bzgj$)3l<6+y&ez% zwX>v+{w86sV8ljYGDH5^Y%2cGw=z9g;9mSFLtd}$VLNH*g1&6O~FXS3OjkZUcQ$qLE41mQjk zEQ9;5z=6>#viK`&bG$e`Wxk+0zOe-q@AXwyaxw?WmcT3=(G( znQvoqe+s{Ze&hYlm|ZgSferoYKV>lXf1umn{ZOlzh~ZQ7b{w2@!-fQf)wNwM4lc=2 zPazY$ODC}OK$|c!TH$a5;?b;O_WGKly)K4uoS$In^=aI&b1^)#!||U#+5;eFTD7^; zywCJQzt$h`cE!ti#82VoToQM<+x-QagTY_$d61W!YyBa*+P}izPxN+mHO*Fkb8i*; z1OAH$q`-ej{{ZG@lB1%=`MfL$8=cs7Hz1we-!B1j>pdC3CJ&-LCX81G86UG2KgYz> z%n1$5x&hKp0sijbM@~5>TZ?ZVZB9Zsaz~UGKf6bk7>_7nsPYt{KdAzo9UAPRHnqSKW zW9m}OJ_sjWv$E`tPT1w?XnA(T1CKP}Bf8C#V zIC&k9!{D*cj#y-QWXqGuTgO;mb~@i+ayn_ZkVcl&zQ`J0uhj5+$iq62c-v#WnF}sn zHV)^@VvfVVSP;Ft{KcS0-1@MS{{VJlVEruW41W`BK*Q1WIW9lZ-hWXerXR<%&_*7? z`XeFO$8XW_LzXPS+0yiEx4R+4j${^K-~6APzRU;S#^L3w-+&qxFdj*Kj!bNB=E}*< z);ZJ2FYb03(|e&Jnu(fpUI^fM-{E_2hz)oQEJR{C$ucp6*~_;fw_$;PTMkSH!I!vB z$u6vv<}-+;+4TPaKLDS1(&-%^p+Kl?M2r%q)WBdnRW5HeO5YwShCHT(?Ya=ftGy6S?poP+o0y`FOmMJeahN;RK8~4CRBfK3{XT z`Fpa+cO#5GU;o4aB@qDt0|5X60s;a90RaF2000315g{=_QDJd`kr2V5vC;7H|Jncu z0RsU6KM*lJ@9>q1*(u@%y2MVwf=UvZ6-K7fa?o9<;EG2YoP9-gAA}2THsYNiTNcG! zE)1_$J0qfNki?5(WMSqoi())O3WtUN02AdfESNFd*fkMX^3elJkKPt9y){P3fM)Z@fE4aP)FRg_=4*t3Y%9rmeS*nuv)*upAzG-ZN*38 zTDRsqio4=1`H#5?EQ=XGGA1WKgQ%^@^Rm)34|4X|99axBm|n_Lky3TYw^OHi7!t-B zhy&;NRantqV3CT2Sb!+(4|BvEJU~*XG_r;>NtwRlu(qhoh!DaB^7RBJUX}Pk<*mvUu#j9JM9SEsWo5-Fzr+TrZL`p0 zMvF*GH~ zUePFm;FRj@#3Kbh;OG*;nzTEo3cQGwn8h~7lOtk{(j=uLUH30zX&^Iv%Cz%& z7x*w3Ym=#YF@YKq+L15j;oT4+=gd72>W?y`WgvNom0X3FD9zY(xS6b+sEA?!MZ*aL zhnY)HF>M(b6@x~VwFw5vQZz^2$9zEr<_X{8WW9_9u~hmJiCO0d`(mN)G&LA1v!=xK z;X4UwCyB4xA#}!Qh0^(hG?hCLlG$WKVQ9<{j;$gH3S`w0O6wcA%b!tOPax%a@dnmC zQPv3DF(t|*sYNRSui__x6i^Csa4imynCsv#A5epl(&410{^C--L=$@ykuaVR#AL9k zl#Y3+c^qSr_1OKzRUoNwI~A1%CArY^;-Xk!JMjwaz(rd3EFy2Yddn+mjc2TbD+uJE zZBcPGgjJHq=2ob-3aHc| zL36|8>bX;25Zgv&Hr6FYOKl0Rd10z;OSo`p$eTM;MOfDS{{R~;o~6dh6v2=d<5pc= zPA3LYQkhd*lmm&?@n_5Kpr_!i{$-e1eG9@}1O8BH*;CIY6K5H|KBG!xva#*Twr=jB z5F%RqMgG|V-x7eWhy`s%RPD{aV5w6}xl+s2Em%z<9?up#NOy5jF+dHBpon(?(iBCm z?cmK{$W8r5=_n)p24VTiqp=dNZN)JhV44kZ`6JT?V+|30VgyI*iH{6>;)G&;Oe$-WirQE#ejtRp?}OFYK8y8l8<2 zqp`HmnU&dk2@b84v3`VUB-CWWS8f|<_FaaB_AC5o1bUGza-J;Ii#@)j4V_PO0_Z#t z9a^bZYyRd!4_7q+g_R#p6G-kf90Z{X6vhc{-#|gMbk*DXxq518Za83?dlShWCggBO zrrDABk@S8TDzcO)JfaJ>i}b;Srs)_K8(T-1EDlbi4}u)k67MLHbsQFDfEVTx57ar=QOUozTNZ`|&@ zCh3W8FQTOduJ*2>RT@gk^Fyj;Df=oHd`E6m)HtXy1DUs*K1hBQ&6|I?q1Dy%{{SV} zEIk{5myV31$?iOEl}Sn=F?^m@Ytu9EuHm>NbRJF>y+u3NUTIL=F2MNttDC_<@+Yc|=duwl9UgRA!5c!;t76myXMvxD(6{h1&1>jFPB~3gJt8 z9b>qNR1;|BHW2FJ^R@9Fu)hNK?h`N-9zw zD%7wAOF<6HQe8rZ@8dEuLW1g_cPbX*KVKq%N>^E6r@UbARt{zx5j1-k?0+k6D?mM{ zF;?oMZiT`Pd{>FHaws>2;?)BtrVv-w;`v|N6~`;!{SZ8Uf+Ea*i2MusBC#Lh0tK(s zvej>@B3L)-lA%byRD~;#TLh`3382@@Py)TR+1Rznt4Ouua11xHcBe5PkOos~-g~eD z4xNMpW6g~w>*fW0zEAlL{{UhRsCU@}FYz(Mr~d#w&0wjT2+cCE&Ow87&&!}L)flosI z$yYs7UZQ((`jz69n@y5j69RdM8u~mr8a$DpyZ(Z z81^VD(Jc{GOdd5TILx?iQkt+Vc@Q49B#%U1WG+P_;9JzL@)3_2WCbSuK>gep0#vr4 z4~jqQu|eTn-P=?&(N&)e`+fvAyO@_**wY=IlC&9QB)a1mOs|-Ql06#{;vL2P$BJ4h z1`{o{byESfUnXR;sOfvfe88=PQ5gDIO_O8IK)?~>ZVc2^$ebZXFOx$rM-cEs5(A)= z&<2KTvdnKMAr)h>B99XwFp;jY$`BV$#iJP#g(ob7Xd3Kf=AX7pj96erMNf|qsHB4W zWp!!*S^_Ne7!&R?{!lH+Z;8pdMQq_6K`lmOAYqnap*tvvbGcAF633H6Af*VA^pfmX z1mU)LOh^@XS1pSxc0Zd8`G-QcJKJfTP=bnlWkSJIY^T&(1bq6qw5uLI;IG@TSh)ru zm!TGy%Yfe8z8Sd3;xTZmR}KkKM!>+@^*K(zQL_VNu)^)bUoZ?EPZP{K2yewt+bev{ vpHVdPfiE$NpE3DV!RF1T9PQZz0xIhDCkwTyDa1uzyHVqFn#kxHDU! literal 0 HcmV?d00001 diff --git a/apps/ember-test-app/app/images/tests/image.jpg b/apps/ember-test-app/app/images/tests/image.jpg deleted file mode 100644 index 40c3c1e39d89e8a24af797ada5adac46dfe12624..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12327 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 XmN`0=33nk=JbTp1bPNOD?fm}%_`R3e diff --git a/apps/ember-test-app/app/images/tests/test.png b/apps/ember-test-app/app/images/tests/test.png deleted file mode 100644 index 61c21fef4dbbeaf97c6b911c287ccfe6c206116c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 14918 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 y|68j6Z`A*rGykit|8La)E%2+4{;M7sd new Date().getTime() + "#" + Math.random(); +const testImageAspectRatio = 640 / 427; module("Integration: Responsive Image Component", function (hooks) { setupRenderingTest(hooks); @@ -37,7 +38,7 @@ module("Integration: Responsive Image Component", function (hooks) { assert.dom("img").hasAttribute("width"); assert.dom("img").hasAttribute("height"); - assert.strictEqual( + assert.closeTo( parseInt( this.element.querySelector("img")?.getAttribute("width") ?? "", 10, @@ -46,7 +47,8 @@ module("Integration: Responsive Image Component", function (hooks) { this.element.querySelector("img")?.getAttribute("height") ?? "", 10, ), - 2, + testImageAspectRatio, + 0.01, ); }); @@ -60,19 +62,19 @@ module("Integration: Responsive Image Component", function (hooks) { .dom('picture source[type="image/jpeg"]') .hasAttribute( "srcset", - new RegExp("/images/image-640w(-\\w+)?.jpg 640w"), + new RegExp("/images/aurora-640w(-\\w+)?.jpg 640w"), ); assert .dom('picture source[type="image/jpeg"]') .hasAttribute( "srcset", - new RegExp("/images/image-100w(-\\w+)?.jpg 100w"), + new RegExp("/images/aurora-100w(-\\w+)?.jpg 100w"), ); assert .dom('picture source[type="image/jpeg"]') .hasAttribute( "srcset", - new RegExp("/images/image-50w(-\\w+)?.jpg 50w"), + new RegExp("/images/aurora-50w(-\\w+)?.jpg 50w"), ); // webp @@ -80,19 +82,19 @@ module("Integration: Responsive Image Component", function (hooks) { .dom('picture source[type="image/webp"]') .hasAttribute( "srcset", - new RegExp("/images/image-640w(-\\w+)?.webp 640w"), + new RegExp("/images/aurora-640w(-\\w+)?.webp 640w"), ); assert .dom('picture source[type="image/webp"]') .hasAttribute( "srcset", - new RegExp("/images/image-100w(-\\w+)?.webp 100w"), + new RegExp("/images/aurora-100w(-\\w+)?.webp 100w"), ); assert .dom('picture source[type="image/webp"]') .hasAttribute( "srcset", - new RegExp("/images/image-50w(-\\w+)?.webp 50w"), + new RegExp("/images/aurora-50w(-\\w+)?.webp 50w"), ); // avif @@ -100,19 +102,19 @@ module("Integration: Responsive Image Component", function (hooks) { .dom('picture source[type="image/avif"]') .hasAttribute( "srcset", - new RegExp("/images/image-640w(-\\w+)?.avif 640w"), + new RegExp("/images/aurora-640w(-\\w+)?.avif 640w"), ); assert .dom('picture source[type="image/avif"]') .hasAttribute( "srcset", - new RegExp("/images/image-100w(-\\w+)?.avif 100w"), + new RegExp("/images/aurora-100w(-\\w+)?.avif 100w"), ); assert .dom('picture source[type="image/avif"]') .hasAttribute( "srcset", - new RegExp("/images/image-50w(-\\w+)?.avif 50w"), + new RegExp("/images/aurora-50w(-\\w+)?.avif 50w"), ); await render( @@ -123,13 +125,13 @@ module("Integration: Responsive Image Component", function (hooks) { .dom('picture source[type="image/jpeg"]') .hasAttribute( "srcset", - new RegExp("/images/image-10w(-\\w+)?.jpg 10w"), + new RegExp("/images/aurora-10w(-\\w+)?.jpg 10w"), ); assert .dom('picture source[type="image/jpeg"]') .hasAttribute( "srcset", - new RegExp("/images/image-25w(-\\w+)?.jpg 25w"), + new RegExp("/images/aurora-25w(-\\w+)?.jpg 25w"), ); // webp @@ -137,13 +139,13 @@ module("Integration: Responsive Image Component", function (hooks) { .dom('picture source[type="image/webp"]') .hasAttribute( "srcset", - new RegExp("/images/image-10w(-\\w+)?.webp 10w"), + new RegExp("/images/aurora-10w(-\\w+)?.webp 10w"), ); assert .dom('picture source[type="image/webp"]') .hasAttribute( "srcset", - new RegExp("/images/image-25w(-\\w+)?.webp 25w"), + new RegExp("/images/aurora-25w(-\\w+)?.webp 25w"), ); // avif @@ -151,13 +153,13 @@ module("Integration: Responsive Image Component", function (hooks) { .dom('picture source[type="image/avif"]') .hasAttribute( "srcset", - new RegExp("/images/image-10w(-\\w+)?.avif 10w"), + new RegExp("/images/aurora-10w(-\\w+)?.avif 10w"), ); assert .dom('picture source[type="image/avif"]') .hasAttribute( "srcset", - new RegExp("/images/image-25w(-\\w+)?.avif 25w"), + new RegExp("/images/aurora-25w(-\\w+)?.avif 25w"), ); }); @@ -169,28 +171,28 @@ module("Integration: Responsive Image Component", function (hooks) { ); assert .dom("img") - .hasAttribute("src", new RegExp("/images/image-50w(-\\w+)?.jpg")); + .hasAttribute("src", new RegExp("/images/aurora-50w(-\\w+)?.jpg")); env.physicalWidth = 51; await render( , ); assert .dom("img") - .hasAttribute("src", new RegExp("/images/image-100w(-\\w+)?.jpg")); + .hasAttribute("src", new RegExp("/images/aurora-100w(-\\w+)?.jpg")); env.physicalWidth = 9; await render( , ); assert .dom("img") - .hasAttribute("src", new RegExp("/images/image-10w(-\\w+)?.jpg")); + .hasAttribute("src", new RegExp("/images/aurora-10w(-\\w+)?.jpg")); env.physicalWidth = 11; await render( , ); assert .dom("img") - .hasAttribute("src", new RegExp("/images/image-25w(-\\w+)?.jpg")); + .hasAttribute("src", new RegExp("/images/aurora-25w(-\\w+)?.jpg")); }); test("it renders a given size as sizes", async function (assert) { @@ -265,7 +267,7 @@ module("Integration: Responsive Image Component", function (hooks) { ); assert.dom("img").hasAttribute("width", "150"); - assert.dom("img").hasAttribute("height", "75"); + assert.dom("img").hasAttribute("height", "100"); }); test("it renders width when height is given according to aspect ratio", async function (assert) { @@ -275,7 +277,7 @@ module("Integration: Responsive Image Component", function (hooks) { , ); - assert.dom("img").hasAttribute("width", "200"); + assert.dom("img").hasAttribute("width", "150"); assert.dom("img").hasAttribute("height", "100"); }); @@ -290,13 +292,13 @@ module("Integration: Responsive Image Component", function (hooks) { .dom('picture source[type="image/jpeg"]') .hasAttribute( "srcset", - new RegExp("/images/image-100w(-\\w+)?.jpg 2x"), + new RegExp("/images/aurora-100w(-\\w+)?.jpg 2x"), ); assert .dom('picture source[type="image/jpeg"]') .hasAttribute( "srcset", - new RegExp("/images/image-50w(-\\w+)?.jpg 1x"), + new RegExp("/images/aurora-50w(-\\w+)?.jpg 1x"), ); // webp @@ -304,13 +306,13 @@ module("Integration: Responsive Image Component", function (hooks) { .dom('picture source[type="image/webp"]') .hasAttribute( "srcset", - new RegExp("/images/image-100w(-\\w+)?.webp 2x"), + new RegExp("/images/aurora-100w(-\\w+)?.webp 2x"), ); assert .dom('picture source[type="image/webp"]') .hasAttribute( "srcset", - new RegExp("/images/image-50w(-\\w+)?.webp 1x"), + new RegExp("/images/aurora-50w(-\\w+)?.webp 1x"), ); // avif @@ -318,13 +320,13 @@ module("Integration: Responsive Image Component", function (hooks) { .dom('picture source[type="image/avif"]') .hasAttribute( "srcset", - new RegExp("/images/image-100w(-\\w+)?.avif 2x"), + new RegExp("/images/aurora-100w(-\\w+)?.avif 2x"), ); assert .dom('picture source[type="image/avif"]') .hasAttribute( "srcset", - new RegExp("/images/image-50w(-\\w+)?.avif 1x"), + new RegExp("/images/aurora-50w(-\\w+)?.avif 1x"), ); await render( @@ -337,13 +339,13 @@ module("Integration: Responsive Image Component", function (hooks) { .dom('picture source[type="image/jpeg"]') .hasAttribute( "srcset", - new RegExp("/images/image-10w(-\\w+)?.jpg 1x"), + new RegExp("/images/aurora-10w(-\\w+)?.jpg 1x"), ); assert .dom('picture source[type="image/jpeg"]') .hasAttribute( "srcset", - new RegExp("/images/image-25w(-\\w+)?.jpg 2x"), + new RegExp("/images/aurora-25w(-\\w+)?.jpg 2x"), ); // webp @@ -351,13 +353,13 @@ module("Integration: Responsive Image Component", function (hooks) { .dom('picture source[type="image/webp"]') .hasAttribute( "srcset", - new RegExp("/images/image-10w(-\\w+)?.webp 1x"), + new RegExp("/images/aurora-10w(-\\w+)?.webp 1x"), ); assert .dom('picture source[type="image/webp"]') .hasAttribute( "srcset", - new RegExp("/images/image-25w(-\\w+)?.webp 2x"), + new RegExp("/images/aurora-25w(-\\w+)?.webp 2x"), ); // avif @@ -365,13 +367,13 @@ module("Integration: Responsive Image Component", function (hooks) { .dom('picture source[type="image/avif"]') .hasAttribute( "srcset", - new RegExp("/images/image-10w(-\\w+)?.avif 1x"), + new RegExp("/images/aurora-10w(-\\w+)?.avif 1x"), ); assert .dom('picture source[type="image/avif"]') .hasAttribute( "srcset", - new RegExp("/images/image-25w(-\\w+)?.avif 2x"), + new RegExp("/images/aurora-25w(-\\w+)?.avif 2x"), ); }); @@ -383,7 +385,7 @@ module("Integration: Responsive Image Component", function (hooks) { ); assert .dom("img") - .hasAttribute("src", new RegExp("/images/image-640w(-\\w+)?.jpg")); + .hasAttribute("src", new RegExp("/images/aurora-640w(-\\w+)?.jpg")); await render( , ); - assert.dom("h1").hasText(new RegExp("/images/test-2048w(-\\w+)?.webp")); + assert.dom("h1").hasText(new RegExp("/images/aurora-2048w(-\\w+)?.webp")); }); }); diff --git a/packages/webpack/src/lqip/color-css.ts b/packages/webpack/src/lqip/color-css.ts index ba85a07c4..b0d13d561 100644 --- a/packages/webpack/src/lqip/color-css.ts +++ b/packages/webpack/src/lqip/color-css.ts @@ -26,7 +26,9 @@ async function process(file: string, className: string): Promise { const image = sharp(file); const { dominant } = await image.stats(); const colorHex = - dominant.r.toString(16) + dominant.g.toString(16) + dominant.b.toString(16); + dominant.r.toString(16).padStart(2, '0') + + dominant.g.toString(16).padStart(2, '0') + + dominant.b.toString(16).padStart(2, '0'); const color = '#' + colorHex; const cssRule = `.${className} { background-color: ${color}; }`;