From ec4c91dbda0eb871948335b4b005f2b4ac280140 Mon Sep 17 00:00:00 2001 From: Vicki Pfau Date: Fri, 10 Jan 2020 21:20:20 -0800 Subject: [PATCH] GBA Video: Copy higher priority target 1 flag --- CHANGES | 1 + .../obj-semitrans-overwrite/baseline_0000.png | Bin 0 -> 4683 bytes .../obj-semitrans-overwrite/baseline_0001.png | Bin 0 -> 4683 bytes .../gba/blend/obj-semitrans-overwrite/test.mvl | Bin 0 -> 18169 bytes src/gba/renderers/software-obj.c | 8 ++++---- 5 files changed, 5 insertions(+), 4 deletions(-) create mode 100644 cinema/gba/blend/obj-semitrans-overwrite/baseline_0000.png create mode 100644 cinema/gba/blend/obj-semitrans-overwrite/baseline_0001.png create mode 100644 cinema/gba/blend/obj-semitrans-overwrite/test.mvl diff --git a/CHANGES b/CHANGES index 08ea80017..08af9bcff 100644 --- a/CHANGES +++ b/CHANGES @@ -95,6 +95,7 @@ Emulation fixes: - GBA Video: Fix OpenGL renderer 512x512 backgrounds (fixes mgba.io/i/1572) - GBA Video: Fix BLDY for semitransparent sprite on non-target-2 backgrounds - GBA Video: Fix effects blending improperly in some non-last windows + - GBA Video: Copy higher priority target 1 flag Other fixes: - 3DS: Fix screen darkening (fixes mgba.io/i/1562) - Core: Fix uninitialized memory issues with graphics caches diff --git a/cinema/gba/blend/obj-semitrans-overwrite/baseline_0000.png b/cinema/gba/blend/obj-semitrans-overwrite/baseline_0000.png new file mode 100644 index 0000000000000000000000000000000000000000..f57a5beaf534f5cb5e6d760c5914ad3c96ffeb2f GIT binary patch literal 4683 zcmb7|c{CK>`^N{BN+`vUv6hs5%~F=KFOei=X_OGM#K>-FqZHY9L$VIWAhM27lVuo2 zSqE8WFc`xa%$V`>`F?+Ye9!s*{`viJ?|t8U?s@L>-1EH7dG398+scId4|9rW&$?D$Ndfnti?d^t_P0 zdXmOjSzD`slJH~->Ow+p6^HdqNBFhE^;LX zYUPiobfyFvJ`=(AH-G*$Q>ERC2%|TlQ>+lkubH}kH7)4s#h}gTn}q@u<@6?xPnB&l z+WDG90~v)%!@3bpgc33$m^H<3KN0SQgSq^)JqQ zsE?a4|2^V*G$Pc`1F}T=ysHUMMh7a1!A2$cRUzMujS7L zmH(;g11$!AbZ@{lj!*!{??LTWU`%($_@+%30equo&DG*fD$DFuQkQnc<_}K>+zHEZ z|BVEGN%(y9nnYgit6HeTLEqJ!A~in`hk^02&Inkk(!?o~$AVSsnjfxCzIufG(w-@w zC+Xo}b z-MQK4*6s8_3OBO3>)Pf_yRcYYOoA&JG7z28H44@fWKQKCo0o3>%d}3~QuX0=sLmn8 zmFQ;5k5;nd7qFwE0;abi{OwCsJ}44gx9vz?Q}V5d^8uUH+?;L)_3g*i-q;QF0-iwL ze|e1Rr0wuO0{_J}>2oMk(gY<^ z+{beQt0e5L_oB?&Gv#_)&a=C)$wfz>ECaYquvYs2?r#mS#{DW3E7mTz2e92rsW&^* zctM;?n=sQ&qa0$grsld#ALJFnRKCDp#H&-C=(QX zjrL5pB-BBtm|qv(>?CcqF`!rU?5d!^h~|i8b|ClVPgaW&jeSwjBX zvhh@iX~qN>D3&;eDGgA>vkU5)UrZ@YRCZ#g<$Aho?snO=$#Y!tx;5wRLkeAD+SeXf(40$S`CR~P$84e)rS`W= z*fb-(bwCSL+{$?F4m%PO?GZRP`UYk;WU z)SQ_;12}!L@QDA+L;)9IKu^h0+u?q_iHvU1lN?t{s!_P%*{?%Cynfza>oy+--CAJr zrP>FMIC220MS$iXg`}c_OK#Yzhh5GrwJuZCpt%o;_Vh_Y+^ksAUHFv*;M&l~wx0f$ zy1kIAKwkNYB34nzT~yT7X8jN87Vj@DH*81j3cD5$w@PW*A!1*Zj^@VFXnJv%)N@O} zE**s&yY!)nE&9bphk6sfxYN8PAAB2uKH3db5t490rC7y=(N|bXAVzijDDIO-jN=-@ zq)llef;WmS1SzT_%YBkQJ$fte0;>hZJhPuTBbL2K>4{X;{e{9y@qIBd(U_(+*h9+vB?`DQcEcLK-*)0)q+CZTYKL@3 z+Kzte%NQXn zrp|Xj%KF~Kz6f3kdx}0Vh=gbmErweW%y{T+9W@3gJ=I-%t*;(Pe93%A|3S3W<6Gh1 zRz!4Gc5Y0Mi%)ONEujBe1Qb`jemf0aJn`JFtY6!yhk6Qde@FVY+~ooSncFB-F-_I6 z`Tir~@-jb(wa@|_QxyI+{J2Pw`9mSb1SOe-eqUlbzu`o8frgCd4j1wjRe30t3ta@l_^iPHbk4>xJ z71HYv?!4vLr&O6!je(WgZ!53hdrI93Y!}T-@nZA^P!e-zul#6z!1n9m)(qLc)n2Ad zg9snL>LRVKsFL~=9fNdsEq=*USB&6SwfB1Yd)y&kq__0o+l`0nLGs-(zO{F{G0$PS za+yW=?*_P3I8XP9>8a@Udzn;y*r&e$Q~4*w`45xgs}ryAP>Y`m_aDvS&Pw$(SC!AO zsX6*>d^p(2|3uM84jm%$!b+W{8pDL9>ix7izjV_z&Am(-n(871-fk!+txUYq<%sL4 zr~eQbKOm>2X)8YA!LS(nM{b&&eV_3qNND)fB0BwU+zl&tNfT{m95gjeTl%&1ftWGn zsQ-mFDel0hG&o)6b-F$4xTs#+P1Xiqs%77oI|ZJ+i&OD(S*50OA0f_P!;qhDQz?mE zX|p1M7hqdR=+&r`;L6TVC3j}Bu?8xs0nASfM~^1YdoW4IVNx|?LtZ&wOv68SqzJ9Y z(_fggEL>8qAbbk<<#OLzM`IF5nY&q53~yCOuS;4CY7JXjadrLetmo^}06Bp#O9$Vo zNOd}m!~eZpkiG!7RWSm~+skZWHs<4z&Z=oGZO48jjU8I;`} zZ_<*lg@7J_mI$ODjs2SOkLqn)Wr&0z=v?=5>b0R~!A9y5M!q{O% z6#pXUnEH%r#NS+rWCZ+@GRX~CI47+f>wa*0hS_CDD)i(OLUtYdEz6-_;S$y&W+cjDFARdklefU*x0#v0*IcxlYhQv&+6x_-)qZR#ci)ydS(e|Tfm z{Pp2A-A`pk{)5!P~*~ z-*~L^T0T==#OvgR)`TE{>%@_!qHDi$`t0zR&IStlJVa|3a2#K|HO3C8E4mwPc>G`l z)uaR1=}SRg=Ybd)dOpM`tu+hIM`@jymyGD8Fh^rF{C`*yB&bz2QhdvTfVHCv;qegt zth5VQ?IQqfS+X@U{GlK@`~c5YvNo*&gbRI8I27e7m>A!ePqH;gEx%WVI?jgawVKJ? z&x0_O*E3SotI|B1?Oq&fiOn2Ag?|rrnOJvIk?{?eY_YcCJtKbgc9ia;k}Ly_@34mO zRQJt=1d4ff3T;G?;ybegK09p**7+g=D&M0*6#(N8)vOX@b*%vDF@gY}U?{48JcDkV z$dPHF(UFlgSxH{tmA=?x(FkJ=7DHIy5cd%KYC$)$?zvW!`3v?Jjw2Ruy=f&L**RpC zz&g${=4x{Row13K9Ys@ZdVH+24$C3SVQ^w(M5Y0(O_4)hwZ4(5@-6(?js?w{HMm&j zql2Ti7Dc{LVoX549hU1r;*6rS4{47WaJLUV8a5A)>?|)qnT{q&Dqou}J zRgHCrMG_951VbJ?n5d$N5>Tb_yMJ3a6o)%LZe|(O&0L24mkg*mU(7ZA)5UiIIu%U! zMIS2&HBI-jW0XsVX^rmGD)!2p9>l_=8eLmNCb?D(!T<%Kg8gW~bOdO4^3Bqmrdsil zXu@9%P-CHAS`7ae&ddKbmJdBr@8Gsy8{3#!d8zF;A>kGwU8Y)Dw!R zU=_2hB$P4}Be~pazd5c{g8UMXKabskFkW@DQ9G(b$4r<0G zHjx=2TMR7-{rw;du4NZWd$R{b7sf|~W;-Rzro2x-IVqz(5Kf8T7jN6cUKjrE=&Sd+ zF@C2>RGSjqUu%~k*%BrzIJhnv5C+FQho?c8LCtXt_p+DW9$sJG??Qw`I)C(01ChG6 z38@tUi;}v|BT-}v@)GQdiO}ns_Fr}rmJl36uS*RPh^hy&FsvN7E04?9fGDwLrf^w$_lGf*_=6!Ru+t}hCP{rz4 z1(N+D_6t7un`wWcUXMp_(j6(DHjbOb2F0!6{zBe!oM9GuX~ZV7BQHpjfEAPEp?bX2 zqMCJs=(a0gzJut7hv!7H9t91*%QO)CL1Y&0>_)Z1@+yLlWVfR-C-v}`AL#Z%5qRBE z1M&|1j~O{sVAKFwG6`^N{BN+`vUv6hs5%~F=KFOei=X_OGM#K>-FqZHY9L$VIWAhM27lVuo2 zSqE8WFc`xa%$V`>`F?+Ye9!s*{`viJ?|t8U?s@L>-1EH7dG398+scId4|9rW&$?D$Ndfnti?d^t_P0 zdXmOjSzD`slJH~->Ow+p6^HdqNBFhE^;LX zYUPiobfyFvJ`=(AH-G*$Q>ERC2%|TlQ>+lkubH}kH7)4s#h}gTn}q@u<@6?xPnB&l z+WDG90~v)%!@3bpgc33$m^H<3KN0SQgSq^)JqQ zsE?a4|2^V*G$Pc`1F}T=ysHUMMh7a1!A2$cRUzMujS7L zmH(;g11$!AbZ@{lj!*!{??LTWU`%($_@+%30equo&DG*fD$DFuQkQnc<_}K>+zHEZ z|BVEGN%(y9nnYgit6HeTLEqJ!A~in`hk^02&Inkk(!?o~$AVSsnjfxCzIufG(w-@w zC+Xo}b z-MQK4*6s8_3OBO3>)Pf_yRcYYOoA&JG7z28H44@fWKQKCo0o3>%d}3~QuX0=sLmn8 zmFQ;5k5;nd7qFwE0;abi{OwCsJ}44gx9vz?Q}V5d^8uUH+?;L)_3g*i-q;QF0-iwL ze|e1Rr0wuO0{_J}>2oMk(gY<^ z+{beQt0e5L_oB?&Gv#_)&a=C)$wfz>ECaYquvYs2?r#mS#{DW3E7mTz2e92rsW&^* zctM;?n=sQ&qa0$grsld#ALJFnRKCDp#H&-C=(QX zjrL5pB-BBtm|qv(>?CcqF`!rU?5d!^h~|i8b|ClVPgaW&jeSwjBX zvhh@iX~qN>D3&;eDGgA>vkU5)UrZ@YRCZ#g<$Aho?snO=$#Y!tx;5wRLkeAD+SeXf(40$S`CR~P$84e)rS`W= z*fb-(bwCSL+{$?F4m%PO?GZRP`UYk;WU z)SQ_;12}!L@QDA+L;)9IKu^h0+u?q_iHvU1lN?t{s!_P%*{?%Cynfza>oy+--CAJr zrP>FMIC220MS$iXg`}c_OK#Yzhh5GrwJuZCpt%o;_Vh_Y+^ksAUHFv*;M&l~wx0f$ zy1kIAKwkNYB34nzT~yT7X8jN87Vj@DH*81j3cD5$w@PW*A!1*Zj^@VFXnJv%)N@O} zE**s&yY!)nE&9bphk6sfxYN8PAAB2uKH3db5t490rC7y=(N|bXAVzijDDIO-jN=-@ zq)llef;WmS1SzT_%YBkQJ$fte0;>hZJhPuTBbL2K>4{X;{e{9y@qIBd(U_(+*h9+vB?`DQcEcLK-*)0)q+CZTYKL@3 z+Kzte%NQXn zrp|Xj%KF~Kz6f3kdx}0Vh=gbmErweW%y{T+9W@3gJ=I-%t*;(Pe93%A|3S3W<6Gh1 zRz!4Gc5Y0Mi%)ONEujBe1Qb`jemf0aJn`JFtY6!yhk6Qde@FVY+~ooSncFB-F-_I6 z`Tir~@-jb(wa@|_QxyI+{J2Pw`9mSb1SOe-eqUlbzu`o8frgCd4j1wjRe30t3ta@l_^iPHbk4>xJ z71HYv?!4vLr&O6!je(WgZ!53hdrI93Y!}T-@nZA^P!e-zul#6z!1n9m)(qLc)n2Ad zg9snL>LRVKsFL~=9fNdsEq=*USB&6SwfB1Yd)y&kq__0o+l`0nLGs-(zO{F{G0$PS za+yW=?*_P3I8XP9>8a@Udzn;y*r&e$Q~4*w`45xgs}ryAP>Y`m_aDvS&Pw$(SC!AO zsX6*>d^p(2|3uM84jm%$!b+W{8pDL9>ix7izjV_z&Am(-n(871-fk!+txUYq<%sL4 zr~eQbKOm>2X)8YA!LS(nM{b&&eV_3qNND)fB0BwU+zl&tNfT{m95gjeTl%&1ftWGn zsQ-mFDel0hG&o)6b-F$4xTs#+P1Xiqs%77oI|ZJ+i&OD(S*50OA0f_P!;qhDQz?mE zX|p1M7hqdR=+&r`;L6TVC3j}Bu?8xs0nASfM~^1YdoW4IVNx|?LtZ&wOv68SqzJ9Y z(_fggEL>8qAbbk<<#OLzM`IF5nY&q53~yCOuS;4CY7JXjadrLetmo^}06Bp#O9$Vo zNOd}m!~eZpkiG!7RWSm~+skZWHs<4z&Z=oGZO48jjU8I;`} zZ_<*lg@7J_mI$ODjs2SOkLqn)Wr&0z=v?=5>b0R~!A9y5M!q{O% z6#pXUnEH%r#NS+rWCZ+@GRX~CI47+f>wa*0hS_CDD)i(OLUtYdEz6-_;S$y&W+cjDFARdklefU*x0#v0*IcxlYhQv&+6x_-)qZR#ci)ydS(e|Tfm z{Pp2A-A`pk{)5!P~*~ z-*~L^T0T==#OvgR)`TE{>%@_!qHDi$`t0zR&IStlJVa|3a2#K|HO3C8E4mwPc>G`l z)uaR1=}SRg=Ybd)dOpM`tu+hIM`@jymyGD8Fh^rF{C`*yB&bz2QhdvTfVHCv;qegt zth5VQ?IQqfS+X@U{GlK@`~c5YvNo*&gbRI8I27e7m>A!ePqH;gEx%WVI?jgawVKJ? z&x0_O*E3SotI|B1?Oq&fiOn2Ag?|rrnOJvIk?{?eY_YcCJtKbgc9ia;k}Ly_@34mO zRQJt=1d4ff3T;G?;ybegK09p**7+g=D&M0*6#(N8)vOX@b*%vDF@gY}U?{48JcDkV z$dPHF(UFlgSxH{tmA=?x(FkJ=7DHIy5cd%KYC$)$?zvW!`3v?Jjw2Ruy=f&L**RpC zz&g${=4x{Row13K9Ys@ZdVH+24$C3SVQ^w(M5Y0(O_4)hwZ4(5@-6(?js?w{HMm&j zql2Ti7Dc{LVoX549hU1r;*6rS4{47WaJLUV8a5A)>?|)qnT{q&Dqou}J zRgHCrMG_951VbJ?n5d$N5>Tb_yMJ3a6o)%LZe|(O&0L24mkg*mU(7ZA)5UiIIu%U! zMIS2&HBI-jW0XsVX^rmGD)!2p9>l_=8eLmNCb?D(!T<%Kg8gW~bOdO4^3Bqmrdsil zXu@9%P-CHAS`7ae&ddKbmJdBr@8Gsy8{3#!d8zF;A>kGwU8Y)Dw!R zU=_2hB$P4}Be~pazd5c{g8UMXKabskFkW@DQ9G(b$4r<0G zHjx=2TMR7-{rw;du4NZWd$R{b7sf|~W;-Rzro2x-IVqz(5Kf8T7jN6cUKjrE=&Sd+ zF@C2>RGSjqUu%~k*%BrzIJhnv5C+FQho?c8LCtXt_p+DW9$sJG??Qw`I)C(01ChG6 z38@tUi;}v|BT-}v@)GQdiO}ns_Fr}rmJl36uS*RPh^hy&FsvN7E04?9fGDwLrf^w$_lGf*_=6!Ru+t}hCP{rz4 z1(N+D_6t7un`wWcUXMp_(j6(DHjbOb2F0!6{zBe!oM9GuX~ZV7BQHpjfEAPEp?bX2 zqMCJs=(a0gzJut7hv!7H9t91*%QO)CL1Y&0>_)Z1@+yLlWVfR-C-v}`AL#Z%5qRBE z1M&|1j~O{sVAKFwG6)L8MDpkX|C4P?g?W=n!&H0qMP$NbkJ|2ukmvmq3Wr z0HFsGN+9>#x%1}zx$noDci*1bd(YZG_OG?R^{sE_b2Zfb>&{>QYyHprf9~f>|99+< zJjf;Y*Pm-AEaaJT()GOmi);7+r^t);e>q=Ueg7PhIhg7OZjp!UiOUw9F-aNU#UE3LXg2!Ejfr{_tEu2HPaK8hf+JnF2 zTjan9JyKPE zZXHh-?A0!XuZFG7?SibnG>p2NZbQqpg z>JGVw9TR^$%o``Ts7~kN$%^s3wcL?W{)LF1FpoLd`;serQ*|vnAF%E_pF2TJ>2x;o z0{{?_x3{<6%{fAE3>9@_&ukZJMCWH3gNz`gHP&sJRfJ(y#$cbZIWc$it^PY~zTl0l zV@y|jcKvE^(@e+p(Hebuwz$3#;ZeiuTwgUV{X;H}I`90CL%!WkRo0xT%wm~CYf^c3 zqV*NLgKD=XFm}q1&FQhxysQlt*zYo9|fk_55YrLnzns zm2FV1*;0Tysb@^jI4Vu9ue218hDAZx@1dNlZJcv}NM1dIhSriC%{O1fSg9&`)=XQw z2lUnnBHOsj%)tYZRDT&Cx7Jdmp04fzzKt$D#lM2bKSbb1iU04CmnV>v*6jY}QdX{ey&QLqbqa>cO1Pw{&;}3xzW}U~vX|jMkf->L1D^TTF|qBiX2~Z!a$at~I*$wYnYG4A(5E zjlCn-H@k+I$F&9YpV+URjUiH~pIlc#^S(zG*uvQojyXA!Iuvd54D~&Boh1w2>DN{o z5w&YH>^HJkD;ybOEgTkOkpEotbLSG^z77So%|S|cD>RdmaCYr`9dvaANBf}Bo0Uwb zGap?oR9e-2NN&$FT0~4v--s%ev;_6}%>>Zg9JJGLlMS#zpux7lHp%wXe!{(R(|DgY!ZymbV#{l^36UeekYqpH zN^M+XYG+(iXLgy1qce%(7ZK=Bdp2s22287z2i@w9ilr^3Nu~*pnvFK62^vr4-}&ng zTQpNfw1LHGRkV4;lTgTAT3rCX&MS?^vg?M1Bc+j1955;$u64nO>$nXkc7D&kEg}9d zRQ=zb|3coo=$iSm+_WwaE)K?hX%S-Iol0h-Q*kNevfedI=MC8j=BJg;Y-5?|9i5t{ zN0;EfbE7He3eBI%1|(r*2Ww>|yr~gv(mZ=V1#+WvH|)zg7l#);E=^d{g>`285mY>G znpcy%iPrh#BO7?n<>6L(v@(E`9{Ty-rO#<6y@iwmT{Cc$TZqefl#=UQ;t&3Wb zm5{6>0QZC_BO{hWB17KpAKmwPyp-iH$BQI%o;or;2fvnGl~=Z6Apl2Nn4Eq@Z^aui zvEXetgID6n_d9;vC6s;R&D``02IRdY; z?m30y65K~4jlEBaEzEmb>G=5mH*Z7Ur6|S{PLd;U?Az?2(OizE)uquFxt-s?gH1wi zp3%|Hl!2YuXs7Lqf`C8O8 zGCdv*O(*LKI{*n?3#R40g}ffnh_>XXjmLNpja}YB9TxnlVn}T&z-2?@pkbIyt|Ab`aDJM@Fj*s1l6gS_LlXTA^8ZT2BB(%v|V&YZUH;|LE zJ#vnJwfzdsFqY(9*yA=^vN@?3z2bWeq#MA%y~YsLvB@$E&8Z`1Yma0;vMDV<@C31G5lYYk%Xk@ zzf|$KQ!^XacTI==y^sHQS^WRw+n;ssLn{{}D(wEQJ?f}_;(2T1q4##_rg;Y}C@@g_ zj6f)@+=}t6XH0S`6729TuFuOubzEIj5#C}>LRzN#WH<-*c5-;~y?JxaC)029L%W0X+8ssDc?rqSjA5T%*>qTn%?l-~$7N}5dawXQvWyK< zw}Zcms%Rx*vf|JBOK?rwb8Daq~a*mx?b{cw(&6_E{9^e=k~Bpj4XJg^e{wmBiUx0b`@|wPYH;cP zdxkKS51;IuPe?qX)_;$93uA=V4q$w*WmqL_`A*tUhhBil(vp>fwYB2ox@XYgj{*84 zqh*h`Yig|LQU>THYjvME#T^(rI;SAp;>Qgtn`W!=IV_?7fxT z4`zpM8Rwze5<8K%dCjPfg)8o6N3~`|_cTT#^P|Lu*RS(xt)wDbKwLs7^r)|z%S^PNypb@z1x}!30`j^6j(H}dVcWRH&!;iqe|AfSYEw*s-5|A(359K3H+s6;1bKmL^Rqb9zCm0NIrts-= z>+^0>X9?TO_RR)bYW6q z7Bpm!d>);XbqP?@Fj8A>|9||TfXO5oIP}Vfrs2^R84Xz~nPk{DxxpiWr@CQx70wkX z6h7p0=4&ZbE0~7m(IVfR6?`h4tWa`uF!cP^@UIq)FskP(fuW{w-@LjGqo!Q zbIcQ;*S9xfaP(Ohtd#EMRF$l_Qu$*$K2=&%`@^$afkzvtuFY zt$Us{ou*v)!xUo@QT2;~Arx#95;}~o^AJ{Ai65r|`@}1V&1YEt24e$4{iNf7j}L3N z>=MS)0;?5-y7Fc9`x*B6x%iMGjvOE~;D(GxS860zJJ{_-{_XA(8siUeJq@mtB|%3W5?gTVVR=RoTWe?gjjJ5j=#bo{Bx1>UfxaQ7 zHeaCo@DchAoKP(R0g<32Ouj_dFzNEs_`O^PKjQJ&20_5A_23-8r2%hsMKXY~3oOqe z-Dd6=p5yN7N7fT;CD2#_sZ!ENZy4lib$8-=PX6ywIlXJ=E^qMelpY|hFC?IPb>^3N z*OaIoUePDlZy`k51fMLgDce#nx^*e-g{R=GHtsmp;KRCIk0f-3DWT^MSz?!n2*XA{ zxnX&=?sI|0H~zu=%U86~+bjVu&n`}etw;gL^hLiolmF0Q7Z?aZv-$@$%b&5<0wGUA{Wpl?F>>A$wG-`Q%iU%-1k0P*gp;_vfI`AljDQ6d{D zrdzB$)85$B+Duigoq0B4GTaSWENH25W~8*IiMxA?n=e*z%xy>148&;$LACIA z2`s}xr;8Sf(kVdNdW@!kjUid2alr<`n+J7dlbUw~0=n5qg_z~`oS7RSyQ(n@k8?4* ziq~09^0{u4H}=9aw$mAJ+Zy#4f`^II*6KGtX}N0T%oJ5Gcw9~!?wSw1g9ZsoGM}fV z7o{)y6rad9l2(f?r3GhpBEA+d z!VTeeV{f!rC^z<9?Z~aUE<;ac%#6Kea{huBjndjI6m>VT9bjS*1nr_HyK{8g=RAiJ zXf$h>y_u7Qziz8H8nw#u(YHp&N8>K(cWg>3n3~1vr`D%$Sv%`JFezcVEk9B9KRts= zUjkMYshPa_uJA{=wRcu$ayq`tT>`a8%d$ z_3oyA7!>AoMf^hxr;d-HujNTg;`v4J85@$?5Q&e)yJD>Bt?lfDlgX!YEp?qz!lG0n z;m61L`>A2#AWBf3!@j;P2S{c-zMxclyf)`(oNR(1d~Ii&+@Q4kDP;uP2@|+V`y*N` zT)2Dkb;g{C&Ag|PDx?LA8~Y>UZa5=TYp}X$QDOX5>hg}Ca#TtqH^a`rUy&-&F>=GjMx;N}q>4&xW+e;=4q=kALS zA_7w>vFs!KQb8YcP*rui_aj<(uXc6gSK(@s&K6bryr^yY400QAwuX?*IBODov_KH7 zZ>tA-jPMd#(RI?2JX3Us9JNc8&Ct_ob*|Kj?6;T>SIp|(~SE%Mkg$ojyOI< z?e>1F4`s(#-IJH1YigCo)2FF1IJx{39dMcUMQLnfU1lLZt5yFRG!J>FH<)`Obd13-ROt%}xs!CG+OqYy&R+$<2T+KhqWOj5^y%3mhTk5TKy808<_L+P}LNbTJ z4LoVaZ7$Nr6$0p==(F-3-%shvjia#+B2&~>&h7#4pW`PoY%FS20o$#mYwEg^mq@@GtM2~%-Q`I&%80&4r4!} zlFDPb2VCp}mDGRj8wcADr0&qu&y zqxD*uGARFFmGn`|)V<6oCTatwMh(5>pzg9dzU1DqdXAaBnztGp$v8cj?$%w*b-ryL zEk<<@N>%k~B}yrEyNMUp749e)fL9r@Ko&Le0C*8Ry&(@Sb1l1PxZ{(@PhU%N$cv?H zf|rsQj9+&-FIl7Lhv5Cp#(i>icKlJTECfCnh)CT ze*Ut5{zYotO4BFx!?I68N}Si*bNfv`C$H4Iqo4uu%(Y$bE%KY%((5IvG8-CyXvs3J z+0q@RYzeI{@GpgGYlQWU)_m5laXp=ldEm&&_clV8EJ@ML7xzl)%_a|9_=a`1MTlFG zsOk5sfR%aCC5ts1ZEX0#_8`|t_|I|a4-;gaw(n9_GeN3^tS^~jip|-ahus=+OCmX@ zAnve0Qr{ojRV$3v*nS>57uTs z2^k%XFw=cmp0fFRoXa3FEkR%RUwuTg$Wpf1QsQ|=n0ewyza#&p&TJE&z_~wEW~Dt> z4ws)hQI{+2(fZvp>&<4HSCPo``p^^moz=FXOC98;Kd@F;vNr1UB5gV6_N%S^ps!=H zqaHH&rld$KX?!>9BFA&4OD_q-w3?6?5GA`fbT?Cg-$b0dSwsboj|pVGcjJro>7?@0 z(VVg1-n4ZQch#=UILiqEP22IPTqUl>k}Y)U#biUR0#0$Uo!|G@o{^RRjq+txu?V-d zCqK6_QTa|+Ic7JdEX`vA$&zd-Z{CYY?7O~*y-(mp6GVA7w#37>_7s`s>+aH8_<84@ zz6U8kTW-BA^P>T@V;$1idoy)EG5GRjRvPDd?JSUc$2I5q5|U#D4QlW)IvAerDoyh) zWOBZn*-dnmL7x73XwJgo4#qIx*4?&Z@6$KYyc+y|)lVGWAWxRx!2IA#+~a2T;Y6Hm z?K7sury{Oa?E{M9z^D+{gsq0j^}^*WcVPxXM@pJqscf$-U}^E<9;h?iyvf&BlXtPb9o3gZ`v{`}axkjePXLFNZvKyP;qtB~HDCg@pJ^Lqr z7hawhqRkdR1!R~0w21!DWt8YOZ4yJ}uAfD-{kAn`Z$~u=kM+uuEkquHY$VT3&DM(I z$hNlm#lddzwy;?(zB-Xgy1gI)+ihUlZVPL4VT)I8os5QI*j8Gm=W^||3#0>6GQw+{ z*MNM^^v*MGu=RLo9V=kl8pJ%?0FHa>%f0DGnC| zTg#1f)EmTN+eLigd`>j-7TjQ)nWThgTs8`@o6c#S#d$^}@U+9*1v)IFNr$V@ z*+T<-Vt<9*iHLiw#k=D4f%SN+dSMf4!51jag3HVR)w!Zwd+R)BFERhvNJw< zNR-4|l*zM8Gn-7g%;1o&>B^-X4$`V~X8HNb7iZ;ihAf02)wN7sFr0^&O{T%1WOqgK zCiQf@FO~__*?aDtUVR!f9&Ahlg3BW0;9^yW1(u^vM^2{_vMJD{ zXL93YyN}Yqc30f~d$?%Dn{Pf5p|i4@~sAVQH%Q4hbR$jNNv0dY;&hI;(Fj?l-{Sadj2J0k^26cX{$4B1c{->{oWkm z`glR9_TBW&T$FTkj!HEfVldFHc(t=IUI{I^;2k`7-WtRje-WVpOH~gPHq-E=-v{yX zUpBrJ-d%-JM9KzL^a_UCCdOQ_%Kw3M&#K$`|z7s|jipM*l6?x<(g)6{M z1G+99!qyF@vmW;+$yRfe5{Q+z9TFjPX@$Z4`uRo8MGqP%PTPzS-EL_7YCg{KjvdtW zH*@fcTCw;P8{-_UchgiVHDXdx#h;PfRjNm&oGRXIO~9gUz}lsK+}cIM)iOEN)Ma%# zKVw;fPoun;iu*EncK-0dk}Z8dTQ+y_pcj59-+RWaJ6yjapi0hXws*?yFk#Q z*CwT=O}w(^xmi4!3ZDJP!&E))__hLAMTsAGGY&F?1?qS7CvLGe+xjY^JWW#F9rcu( z8AKuW5-Y(nA%YBjU1F&%M7ebWZFj9gPmrMOL)(XsMP^#)P1_#&s8F~@u-tC)8Fi&)c%m}#0!>F-J1ccmUJ-acNxuOBA085O4nV3ys7nfEG(yKow~mHeYBHk;<=8OHB00V{B5hE zT*WYlXB?lKe%inr92c0VU8!RqkMHk-27ezAU5n4>b_EqTs1N`1+I{S?_L}SaE^BR@ zvUpc%@zM`4DX5kIlFp%q*BxmO;*aA7Fax-2QX>rt3uAGTyxVYNQ` z>uv9UEq|6s5GxetY9-dWm*p){w6bNRp8SNRvoOqU&ra{fF(6SX3VsTMFB`5Ys!P#L zZ$kuEwiEa7p9_pwRgb6hmY?%O8ijWgPS#Qfn|#Uojw)-<%>gxQqwDf8TJsX}m`P4q5h?vp^3s!Mhy$iqFE|P|Xe-LsPlJho2 zGduBZq`mH_SIn|@@tho4Tr@Ne9@C`NB!M!la%@nR#&2JGZz=3%DLh13X6s?;&c-Lb zVrkoxmi^%pZsILkYTK7`|47rWZnu{R21sGmC9O)q**Qst(RdrC`7pm-moxw8limg^Yog>9@AQyG^7Y86E!8lPo`r9%vo_olZ|& z_2TNA^N#p!B<-Z*(@w@*^T;?jJ{4~cQ)ViWYwvDSkjXB52b>Myq+T)6Y8Nh2BhlsX zh0(!$OICNYMQy?$t+ne)#e)!YXEwm)sRx<+)WdjOQ`VYjh{S4;Oo(}pv11a~*nSW% zMlI^XIVPSEoKioOP2*Nfjq;R|d*HHXE6GF?NPB?#DZ{ZHR+Vjhn=vWubicL-{CR5O zA?nmMf3}4qPdR-pA-`yf=25AyH}@#D;adq!j{nrUocI=&7=jsmHJTzr8|SGyKaigU zS8teqt4CSn`UU@WgIy&F9AziH+-e-dT{(PPPncvjg5c^CpZT%~7C&8T1JVgC)z&!Z zi1Q7M*M}yvp^8+Mg15Cw#7>*@Q?yn(F1`2VZcqrLt6-Dl~99!+(%< zpR%&v;pwQ4RdJ0$K3T&_3Vs`LYMM09sEP%aX9HQK&%m(Oi_Q#WkM+#4&U$lwC=~#A zTOu)Vy#StFAoH^uDjCsf_~5qU_UO3u>*6nw(xQVCf>?}?BVvx=E-}(DcB&j^eD-iw zdEhPR-Rwi=r0VxRu$c8dgQ)T!OPA7R&l96lgSdS|+9MGk$CuBu#d%=@4KjGo!0AV^ zkN%UHjl$A+r)kA~eE-z^tFVEwD>l#kBr5XLJ(nG4pB`{J_flmZ^k#Xrx<)N1jaQ_q zQ>A`omemgGaS1Ut;=#J5u{xiqiAc1|Jw`OBqvx87r+=hYz^LUUkcw!(Og#M?^x+aq zxjrpl<6OtAnPk9q7(fcvviYxQu^MpqD*gvNmYA1SvAS&)C+YOMr-U_rrJ|0n=t*j| zItWuHdsb!94f>k%@fO{IdVv{A`^$MaJ$iWi+8TCnj_Lo5{W@?UE@{px2q+1<`X-`# z*mo~p|M>bEBMJpjHu7zMpGVL`URd7dNxbVo75i3;OO=NaitO9%=OMon1??rjdFO1+ zFCCUG5E}TH^DFl_m>}%^*rl@6IR#r=UEqe|{qQR9G{~!zm$iZu;;Zs#9v1k@| zG!l)~*gJ~084@3_n7U8J;{P&<7c&;Qe6jIn@c4Gdd?k%ZLCRF;CilFOJ$2QuDs|O& zp`gZ|Lu9E=sWJb(gjFx->LpW~7|szPP_^{Qy~*I?NZEH`-cTQ~NRoS<4ukcEExpRf z56jxtgEGOWzga9WDC*Xcp{Su+*ZU>f)@iihsIAcKS1UErdt6Gd_biv<)~}>Dc{Yo6 z{4e$U z=U-r$bK@uRJaBpX=>7-ca7FuPqzN|UZG7I=G^bingm*apumYXgJ^2Fjz_>;`2%1QP zM7sE9Y^qI^=WkUSuU<^@sSSXclBV$@4;x+eV!MdrLoEiQX6^#^Ef*~Hu5-{={76~< z*A1!4{<-tD(#9QF)gfh2?{5*)><;$YjLjRjtjqM;F9F*Lig@bQ_Oq8260oD$c{|7f zwMu1>GyB|5nE^=O?b~WswWl+#_SL8ng|fdOSghwr`gS$b?)ca!5aVCnYq;<|WIpH1 z5OaE#%`&Okz-8d;C(l3IE?pbEVl!J5LW7j4S`yv}Y_0-AdjUUIM_aR6F9m2x_8E1s zxcC|LFt#~Kp!dN0z`^_M0n3tZT9El4``D__h6qc;Mg~2FAPV61QKzd4Zn~)an#>3@ z6x`YA`-!)czo}5NQMk9gFi~>89BW8ZDV;^dIE_aGC8%?I=J-_#DodyK`Zx&RGY`N~ zhL?W`?9zre{0(nB_?=k->IC&W@y3SlbUV{%h(;2P=gKh_*7pPGZ_anWC0=AaXZq34 zT66-*A45a8EC!ha=c?U4p++V6A-3(qSc@;GZZEnNoLpuF?D@``iH-k>v6_BGKX&t8 zpaAQRkq!Huez70yF7Y1WgjAE^`h2{SQ+Il0h_>Z9-g3LsY;G)M%>x*a^>R=Rp+m{| zRNC6~-tZ;^nxs@E@t*IkD=BPovg4{fxr_~2_Mj&Bf%}H9^LxwR1@M^@z+M~RSvTj} ziq9j=g!U$eu@%b=j#EYOFtp2wKZ&IPZx3$#ry`A}0o_xlH(yCs|4>qy@fYW{Ny%id zu6u7@DOcT)lR3M+Rc{82+0p|zLSr@YBcZO&jE*ff_h%FYw?!LM=aIkWe@&}h-2l6$ zU9c9-Zv_Uye0=neaX^#qoPyb*4ZsxLiQj@-8LI9yHB}K*92;0FWRpOp>_VLyR^OFq zwv_Ok$zRS+?~>_66b2=`kSSVX<&dAT*;}3(wU(413fGDL^ovPn^8w(s5ps69NxZ3A zQ>IaDo*d`YBeT$g>2k{ltIaL2Bn59~tpz!*CrYdw9vgTS!JOx0pW0bnB^Q>* zPfoK7gdqYf^{I<-VFL#rIARTHl=90P0^UR)%C(BW&>BsI98wyi?sS2Zh~|W-k+ffm zBecbH=UWK{Y3;hb_d}lpYk^RTS>A0c#(TYf1US=TWlN>YNcfm-3M6jyS&~b6!)lju zbz7nqg7T#G5g;eIrF5!l^^IJ&!-UNYuIInbb+0ppCg138Qf#_#(ouEY;PUo}%%{wr zQ}Z>6v4_A^;R%?S2eeYEuiDwOwcR`DtGCRPTh~9bdo-lt5KFL_m-|n?(=5p_B5ZGx zc9gSJ+mOcZ-vP^Wik8J0R(~U~A*xoc;_!#4eOkL_mi*D*7L9Ur@5)*}-GIt&O}2E- zy`rqMow2Ls7NtpQU~iWyS*sy{)Y~@@U8C^Ms*4xb@jpbj;6nqOx=1u@fcY)>J7%?3 zt_rT`;~~h%UiF!nPdVzP)X*y3b!YV};$sEw+`PQJRj($39U+xA^^fy@Ap1F!H_`nm z*z}72di-UnlQq3v=@R#1w*{A|>+33yhaC;G|{(%7o& z_{he-xvc7iq$o%9y!Qz#O(tx?jj-oQrN z*kI&{YchVwE3H#=Z3EL~4?Jv2kZv@t9;GUTPsQFKYC>Mu!c9H$BhQnZ&0BRtI>X_`I|ayg<>!#Of3li z^Xa?RO8Z1%@u29QQw>FS-@4<|A-aavfW_2nF=;dEWWgksvDLlAmQLC=4xDc3h`c9i z^1RUi4H{n=9o@PG1NjJ-tc9H%NrJenL-zP|M^-`IlF?D&K|8w2&H;2-fa%J6*ORxh z9I67{amNl-ar`>EUUoR4@CmaI*eeR4uBWtYrK&(Sy96(BOqlm1!O$u*m>X1MR<+99 zuC~^QJ-3g#w?u7Z(U5xz;X1P&=|zlbyc5Z5g)Gvv^PFk{yF&xo;6J&RPkp{fB_)B79Qg8iOwQ!sw&UfoZ)f?lZetiF% zOxAwY+}`D#xn#w27seX`x3?v4-xcq^g=tB=o&d28tfTM0J=>pZLw%%;EtCw>=XT9k+V)$M#TeH} z2KyZ3Hn*QnntjfJ@LE;BcZ``SGaw6^@7kN^nq%w&|{#i%AF8gpr}a=S=1aa-O*< zK2><-clk0Spswey*6Jj~|2Ut>J;~LsW@7Mz>I0Vw81Z^^DV5>na>a$c@otLI^aKaN z&3WE2i1HF<6=9-*J80QrSWjL!!-{Bb;H67XeN4i$wU*~Els{(Sv8w7@rj@2<-IO>+ zeBEP$e}HLW*P&73pV{a82Sdr@?vXy!mg&dMpVsL!UX@M|#m`G0UGAEvjY9SqgI>fM zo{XiP)j#DM7Wxn}HeRzMf2Ow(WL~_9>Y3^2jBmGNYx`!G)4$f8fwrwRXfc6k;Lx15 zm8109Slj!>599B*OuKY_-98uc$_}!|?|h{SENY)NKurGw#0I>c%wI8^=!pn4`jJW6 z-Jfc&!Yr+3r!36cnFysYSB#r6CV1(t6rbv5^$+H@3~%?asf3uFz%M`83Ra$b&omOm zvw+>Gj+_w(5F3RHIe+Wv(lFB>Pl42~6!&BHJa_VOHO{Q$#Zb1hxb$@M^EW}f4eS90 zX6ixlD#)(*=?m7qn?iB6hHru_OIC@@0uyN?N}(sG9|_wd5@m8wB&)v$SQk|)S0Go- zuY1v9H2M_wO(65s4%2y>4Ko{|HwrX9Dl=sDl(tdyyzgwJ%l#_6oMx<82CL?oOJ>05 zt^*9G1=Y`51*^KJOBJcOQ)Xb~j?~HI(HiW%`4U0#_w%^A;b>DP2hUbrGj6XqD?;M? zYM8*W&9=bE9iKvRKXppE=si?gML(~5W{{ZW)(=H-I=_e9;`z18-Xg8sTTgjPjkhbA zyT)*(F!YoiA!3d_v3OPGZYKp2l}&S_C@%nQ@_Rm)ff7lvP9zME`HrNkpO|T$R88;s zm%9J{ni^U?VlJxDc#m*STdJMnUTU1Tmkq#%UectkcN^>7qvF=Bf2pqx$lbDtDii^1 z8`?oLxf+j`yDYZK#LC)6fD5gG8hos; zZcxEA2wm(m;Z;10q<1I?KEek!r%n_$O*@vPgdSIha?M)!q&wA?{j~6cN(or)C$J_) zjdKjp?&d#^is7?zs5U&)1J>$`=Z;)x)LP8n9|Ki+bzlYa$;9LB>aYGe4?lKI^x}xG z@h@Gt7)l-~8q&d9?WLC=_VXTj77HJF@?S0M$-HUB_Z#uH`hed*y?mfl1P93Dy5M&l zZOj{Vs|2l^=53~o$Bqtu0uSxB;^&#?3@p@T`<^C50WZ*j5;k35y42JRl9`D-jlyGI zDdq3jcN=Z?P7kfYb}FW6$tGSwHuF80d&%rH>PhSeS>mm5>+-oB zW6h~4d02S*o@TMw#!lyPsLYa?zPk1CIop;_P&X|@I+SNVYQq7%v%j1ut^?1uYQ?e1(YrHr zekub=FVwN@qp+EjTl0cNT-C++i_X*qM~z+9kZ(<=I1a>E^@p$9;JDqlFB{ zzP0@9*^kn#GPO&!YvBzi{yzTuNN0%?0-Z0?RqH4q=T;9VP})Z{EA#laveplmMq}SO?>fG z+V9ZJ8v`D32>43;+#Y6Vv$0h=qH@sgndErXWmrBo^ zA#~IvoQuRf9IIv6&a#|GT>OX=I3-0>ABqkMMJTayEIZ0fVoo!LZMuSzzPRVflvrf( zj7xS6at=ay$h|MU(xiJ66fIRSoNRR|C1t65_x7;*qdP01Z@@LT|K`sgL$6k5%z3;d zNOH0V4A9z4ES_juP)( zR|)R$7Wa-LJ@^LiJ5hrWT_MZ!0xJh-si^G~(ff~R?6CKdbZ*mpxq(0= zVf(2W?GlmOFMI9M2qel9NjHNi1935<+lw4nbRKQIja<2^skeZuXhSDjTK>h9?CPO~ zjXCvDfrTorpkY{c(8O-gUPXplIR={%#X6kx=su6OTU}UioM! zB|D%+fYls^$o^X1__=35`9SI}IgOmccpg#eQaDT*yTTrJ>Mh9*A%?zMA|iurzro&o zeiNW11{j+F$o`?w=Pn;b-Emw$AAxOcKf`?-c|IZgYO2|HiP(^B_tLsjqVD}8-srhn z<#n-+k=lK@ziVlre30w6uE^#S7;U9(qD-dBW#WwTL9B7Wcaxqs!vbzNF?V19wZ%@Z zY=HVLvBn>~L1`wCP0CizBAL;tX16H|6kq95uFxD;9R6yGobEGe_^DZWFi1B$VA`lE zC-EfO_T#{@&)c~St>)N7iue#6(aFsoDwmh6?rYT8@FKcAKRCOLiRSv#g?N?L4ii3^p6Cm4^4 z{_69Jd5~PxWxo$lrgZRh=^PJhQfwdGRf?JL^Hk7qmPpHYIuhChVPmbmiM? z9WL&s5vJm_g%_>BAsTnWK~(4cnB@$g3gRoEpL9Tmh8#R#ezE1fqb?ELE=;)ev!~xb4?!gEW2s|VY$%p=E`Fbq4mD(=a{bQOPc$vtL;~)B=xrmAZK$z@ zr=_R{InlG*;isSPf6Kpn-aF*pd_*H2=pzitqHm1quG9+7`vbi!GGN>iU3%uQlGmyp zBp5g%z!i~Kn0ofg#9DrVzKn^N&~9gL8;)xqplT-6*C!LNJq44GT-|0@U+#;=A=6=R z$FtW~<};Wwco2!8GWf%X5qYYQ$ungo5*pPppQk$Y0OBOi9TaD3?}2L9uQ)zHz1d8@ zSgWn+!fWH7bhNLx=Z1MiDVa9;7mDh%vr7lR555^1V($3$K_px#1(gl=@Z>~8pNLa4 zMy)RpC2bO#p&$OqWHNEIDpIc2ZV4EBJedy{TKw zvPe|th%0&K6H3hsWy@?XeC>Hw`lPzdVb%J6X)k}!4yY;dRF`)0#<|ha^_}v>tN(!2 zd)K$KZd@V{_Mes!6nq&31LlM74K%uhzd2iBH2m}|O1^S?N^h?{R4~u8O6cSW@_5Ox zu}lH*MJb|1%s%rJe}w3?*UqsYbv6n6C6GLJ zooBthE^oTKw%%Ow26>+Z$eUlI7ccr$TDh#a*cA`@PSq8XzAXs|inf;=rIu)_1@_o3 z&Zr{ThILy+=_Lokz{C67{|$o{Y2e1C!;nw=@(R}-eIXJDxTEHA z?KFkqVRt3|hOOc&thY2!)HPvAQxM24ca>Woitd}X^lHy;tXdDsA@_^JGd7*n7_zc8 zJe=+{U0mgexI0=d_TPYY5Tmnwq~s>uk520|HOUIh#v&3gj1JQ|Y|E%j${=w`TmPEE z`HM!Iy)`7I+IvzN1wk}|Q=Aw*$F$%14c?&vp|?ZNA{4iv=3ozt03t3S(1~!;U@HFo z@-i@SuqgFnu_9m=v`V$Kb$2h5zk+Q){?`PpaisL zhOy?uCX%f+Rz_zLV@(a6;px;`tVHXNbZu`ubXWWoZB2ab{6%viG6(=F65eR2YlL66X z(Y`)ty0j_#AlP=g>~6Wnsfod=MrEHp^$F$)k4NT0Aeem|e&u+e?)lm3b6!u-fwcWa zkT5(wVE%=)<1H%$FBkZADAm2_MiFVRJUtfgp+?qjk~}t5Zv&2OqbtKhlz$AK zrL^H&dyl9t+tdk=9*k4uE?P=Lc=bOw;XkCvJjq#{Zj(Ku%7s^;@DxT{=JSHx=vZBT z$`(jit!eD@*#ELtlK!>(TO{y8PN*>0hj2onM+kz|hvYTyFNL-7&y$hp!Le>?~*J=m=mm%CNC6pEjX? zdw~9bu%0w+9scvbcTtj_h9Ezgqqv5WypbHapW2}*zox^UyikejYixTI)`NV47MN1}*Q~ASZnSW4CAb&rZSA)AhvwAiHaG-yv z#9m?HsM&z8bBT)y+`u{H0-HpGdWI?2W6_fVvGNdg{mhD_F0m~euSb<9{>EC5(6Ae^ zyl34|At(YN;|4A7+b9Qh$j;>@B{{VYcC{7t>1qAOIe!rCCl{xPBo%gw4f=^R#}oAf zAgcODhloN*LVQV^zAlB4xgSiS0;uM=35kt2V~5IcZ04Ds`$x?^YmLCS$8*R*+Joxj zb82c%0#*vF51#)12=cE;szbuC~@InZCy4$5!G_ zq-Hf-7s=#~R}WxF{k<~hQ^_j4LN~Sq5lq;M#Rbaomqu4a&g30V7wV(Qv#qXPSy_F} zZgsexAtY7pj4AoQR42>*d1qrhg!hNj&lk?6#IBn$@3vBO>oR)gh;UPLeamTyN`P`Y z;iO;&71w^*+)T?|^L<44&r6Y8sd!FZ=dWM2#_cSfgG`Sz?X$-aqS;H0-bx*kHFmH+ zAvli^nB1cB`Y<3`)TzT<4wQ-j04tyIX+AYYzv)ICi9CqqUknV@G7WRo@TcjV6h}I8 z$o^`A3dUflTEsJ#^BgI~WtX*;nv%&8x_S2N)4`K9V&s^t=QgY-H%X7BlTWFnPdwOo zUYiOc=Sijy=@pOTIo@!D+(Jf40FPBK9&pmpboT(!{gUa1WDg~g#7U$}45@pV1PQ$) zflf$J|67vi?ZdDv)#^uAMj0dlyO+YK>6{m!71AHBaWGVrMEW-7nw~?t48U;E8C>^F<`Yvzfq;U%$@Gv|&c zXcb#64UI-xVcjn;0l4)35u!;b;Zvw$7%uuqtt`f;!n;`wF+#NL#`r=Q8b^{v$w!F9 zKG|T?3f(}*rKI3b!cotyG3$-ot8$IS|WwLVBw=62!q>+Xdc>q*1K zc}UdjT6n^gJZ1ln0`XC{BO?Mo$xp)84nPwf1T*W*8c~57;G=7^ zk&MI}8t)qAobJ@=j{XoiS3S9~XQN#yX*Qp7(*S+~3kP&&%dhvFIf~@dPIgB(&MhGy zGNV+p1x5nQFHS{WyR~Gg--3{NiQ8*RwOm*s zVB1ArVRZTbjYDfK0JqTy+vOQJ>(mN|x<1yF&n20qpUm9cPGKrjr787d$Ocx1}8 zmqF(WMGkzdx1FN%)kQ1X<))I;wkb<<1U;waxK0cBrW!IuAX4jh9c$jfr8`)+KQLrF z`#d+lKKE40f3&cX^FQ#?g86u%+Pn_+hdMTr>5paRbT5CfvO;QJU-|K#1&p=b}&^hZ-GMB{p|KiIm1XZ_)) zJDAoVm;T_khco<<)*i|HgV7(&_Q-}mmaR}R%VQ<&K|A?)I zL;jfihrk*h^G9kmGV>3d{h?yl>i^hy2kZQ!&p%Y&>AL-awMH=h(DaX@HKOr{uYcsN z5#Ihd`iI%RX6pj=cZbS9+TQ7{{!n|TTmC`&55aeb`#%cb>7V~7{fA{;Bl`yhxkLIN zwf{)%KbZf~`j1@w0r`*WespriteLayer[outX] = palette[tileData] | flags; \ } else if (current != FLAG_UNWRITTEN) { \ - renderer->spriteLayer[outX] = (current & ~FLAG_ORDER_MASK) | GBAObjAttributesCGetPriority(sprite->c) << OFFSET_PRIORITY; \ + renderer->spriteLayer[outX] = (current & ~(FLAG_ORDER_MASK | FLAG_REBLEND | FLAG_TARGET_1)) | (flags & (FLAG_ORDER_MASK | FLAG_REBLEND | FLAG_TARGET_1)); \ } \ } @@ -97,7 +97,7 @@ unsigned color = (renderer->row[outX] & FLAG_OBJWIN) ? objwinPalette[tileData] : palette[tileData]; \ renderer->spriteLayer[outX] = color | flags; \ } else if (current != FLAG_UNWRITTEN) { \ - renderer->spriteLayer[outX] = (current & ~FLAG_ORDER_MASK) | GBAObjAttributesCGetPriority(sprite->c) << OFFSET_PRIORITY; \ + renderer->spriteLayer[outX] = (current & ~(FLAG_ORDER_MASK | FLAG_REBLEND | FLAG_TARGET_1)) | (flags & (FLAG_ORDER_MASK | FLAG_REBLEND | FLAG_TARGET_1)); \ } \ } @@ -119,7 +119,7 @@ if (tileData) { \ renderer->spriteLayer[outX] = palette[tileData] | flags; \ } else if (current != FLAG_UNWRITTEN) { \ - renderer->spriteLayer[outX] = (current & ~FLAG_ORDER_MASK) | GBAObjAttributesCGetPriority(sprite->c) << OFFSET_PRIORITY; \ + renderer->spriteLayer[outX] = (current & ~(FLAG_ORDER_MASK | FLAG_REBLEND | FLAG_TARGET_1)) | (flags & (FLAG_ORDER_MASK | FLAG_REBLEND | FLAG_TARGET_1)); \ } \ } @@ -132,7 +132,7 @@ unsigned color = (renderer->row[outX] & FLAG_OBJWIN) ? objwinPalette[tileData] : palette[tileData]; \ renderer->spriteLayer[outX] = color | flags; \ } else if (current != FLAG_UNWRITTEN) { \ - renderer->spriteLayer[outX] = (current & ~FLAG_ORDER_MASK) | GBAObjAttributesCGetPriority(sprite->c) << OFFSET_PRIORITY; \ + renderer->spriteLayer[outX] = (current & ~(FLAG_ORDER_MASK | FLAG_REBLEND | FLAG_TARGET_1)) | (flags & (FLAG_ORDER_MASK | FLAG_REBLEND | FLAG_TARGET_1)); \ } \ }