From af98728f3c936dcca85bfe04426d6793ad32b0ee Mon Sep 17 00:00:00 2001 From: Nerry <108566+neri@users.noreply.github.com> Date: Sun, 12 Nov 2023 03:37:00 +0900 Subject: [PATCH] Update --- Makefile | 7 +- README.md | 2 +- apps/life/src/main.rs | 6 +- assets/initrd/wall.jpg | Bin 0 -> 139838 bytes assets/initrd/wall.png | Bin 473146 -> 0 bytes boot/boot-efi/src/page/amd64.rs | 26 +- boot/lib-efi/src/debug/mod.rs | 2 +- lib/meggl/src/bitmap.rs | 81 ++-- lib/meggl/src/color.rs | 335 +++++++++-------- lib/meggl/src/drawable.rs | 4 +- lib/meggl/src/lib.rs | 1 - lib/meggl/src/tests.rs | 282 +++++++------- lib/meggl/src/vertex.rs | 431 ---------------------- lib/megstd/src/sys/kernel/fs_imp.rs | 2 +- lib/megstd/src/sys/wasm/prelude.rs | 23 +- lib/myacpi/src/madt.rs | 5 + system/Cargo.lock | 32 +- system/Cargo.toml | 1 + system/src/arch/x64/apic.rs | 17 +- system/src/arch/x64/cpu.rs | 86 ++++- system/src/arch/x64/page.rs | 20 +- system/src/drivers/hda/hdaudio.rs | 252 +++++++------ system/src/drivers/pci/pci.rs | 9 +- system/src/drivers/usb/drivers/usb_hid.rs | 93 +++-- system/src/drivers/usb/xhci/xhci.rs | 118 +++--- system/src/drivers/usb/xhci/xhci_r.rs | 131 +++---- system/src/fs/ramfs.rs | 12 +- system/src/io/hid_mgr.rs | 25 +- system/src/io/image.rs | 37 +- system/src/lib.rs | 21 +- system/src/main.rs | 55 +-- system/src/mem/mmio.rs | 138 ++++--- system/src/rt/haribote/hoe.rs | 3 +- system/src/system.rs | 118 +++++- system/src/task/scheduler.rs | 121 ++++-- system/src/ui/window.rs | 4 +- system/src/user/userenv.rs | 202 ++-------- 37 files changed, 1262 insertions(+), 1440 deletions(-) create mode 100644 assets/initrd/wall.jpg delete mode 100644 assets/initrd/wall.png delete mode 100644 lib/meggl/src/vertex.rs diff --git a/Makefile b/Makefile index d95ae301f..230ff1b26 100644 --- a/Makefile +++ b/Makefile @@ -1,5 +1,5 @@ .PHONY: love default all clean install iso run runs test apps doc kernel boot refresh -.SUFFIXED: .wasm +.SUFFIXES: .wasm MNT = ./mnt/ MISC = ./misc/ @@ -39,6 +39,10 @@ default: $(TARGETS) all: $(ALL_TARGETS) clean: + (cd system; cargo clean) + (cd apps; cargo clean) + (cd boot; cargo clean) + (cd tools; cargo clean) -rm -rf system/target apps/target boot/target tools/target refresh: clean @@ -57,7 +61,6 @@ run: $(QEMU_X64) -machine q35 -cpu SandyBridge -smp 4,cores=2,threads=2 \ -bios $(OVMF_X64) \ -rtc base=localtime,clock=host \ --vga virtio \ -device virtio-net-pci \ -device nec-usb-xhci,id=xhci \ -device intel-hda -device hda-duplex \ diff --git a/README.md b/README.md index 2c7ce7ed0..76fff0411 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # MEG-OS -***Note: It is currently not possible to build with the latest nightly version.*** +***NOTE: IT IS CURRENTLY NOT POSSIBLE TO BUILD WITH THE LATEST NIGHTLY VERSION.*** ![GitHub](https://img.shields.io/github/license/neri/maystorm) ![GitHub top language](https://img.shields.io/github/languages/top/neri/maystorm) diff --git a/apps/life/src/main.rs b/apps/life/src/main.rs index e5515703b..591ecc56f 100644 --- a/apps/life/src/main.rs +++ b/apps/life/src/main.rs @@ -1,7 +1,7 @@ #![no_main] #![no_std] -use megstd::{drawing::OneBitColor, sys::syscall::*, window::*}; +use megstd::{drawing::Monochrome, sys::syscall::*, window::*}; const BG_COLOR: WindowColor = WindowColor::BLACK; const FG_COLOR: WindowColor = WindowColor::YELLOW; @@ -77,13 +77,13 @@ fn _start() { let next_life = if life.into_bool() { if count <= 1 || count >= 4 { - OneBitColor::Zero + Monochrome::Zero } else { life } } else { if count == 3 { - OneBitColor::One + Monochrome::One } else { life } diff --git a/assets/initrd/wall.jpg b/assets/initrd/wall.jpg new file mode 100644 index 0000000000000000000000000000000000000000..e1747296e0f0b5a7341e83eb3eb5d012e33ff083 GIT binary patch literal 139838 zcmb5VBFf3`aNy(@vNXaP4h>0m^DJZFFKp+qaIUPMM4LubNh~|Gv zuyFqE!NmjO;Q?t#iAibxpXt8=03{)|DGn%S2I3jl!g&)EMF;QtUd z4lWiR0H1&m_)iR@0AOL`;^5&C{4*RI3mXTBg-r>-VH3usQpVG_@w}vFk4P`YrxAHK zIKKl@xgy{|(u&%8fzhg%GCGKungP9`T}I2o?mtz`SpOI4{|EY~83%xi_YdixRD}|N zg@cWYi$jS0znS3Q+J8pkuu%ysU*b~#Ly9QHqhU|~AB@PA3O)!)%RwM&ivg<|c%jP{ z#MJEmTL+N*pFNZSMZlx$Um05#un>XrtYXJUCu-i`JIljK7hyhwEjQH?NR;FikrM0z z48VdFwuE-fTxVbg2m&SFh^^c4- zqFp-9?s}a*)e}OJC2S{huw5rCI4eRRO^gWMi=S)5Mmw8v!}A7M=X*nQHu-*-^};{1 zUnU?}!_VA6Ro|sDtgyv08v)VJdZD9l%TGRhyjNoXri`Wr>mrYEX&wCtZkE|l3RDqJ zbcS`-Dq3k@);VH9n3TG(09}Z^Y+|45p-e!DvvqpDEr+Czpz$o&D>G zQb*Z02ki*d83GyMk|1>KN$KJ!V#!V??;T@3t*)E(fq%H%3IlI-Uia@iHj;9KLrSw- zYug32d;<#dj~EPCosy;UGHASTv&rxZef8c)5;Bx15m$LeO~EY_R87q9P1OJ%S<}w% z9oz~vXQQHpjV#+co+U{+L#^hi``?yH6y9n9&+AgK>-HnuJJg!hSEZ|fq_U6y0pvje zuS?<+ICdl$!fpQpe7u*_0>&Hg;q+dFIn3oGm}Vj}(k+G(LK~`%O*4FAhE^^uwTY@Y z?WigZF~%_KmBw~DrrG0ytTmnOvEZ#`qxix2kJFB9cy&l+xk%Gh3uA^BI)6yYYN+`) zMb~0cvPu!i9j0(P%`}CK*>v&ja=*w#-dM}y{liqn>nu|@?x87s8)PO%)E@WE^I=o9 z2>}W7WP)ZZ?N?!%%87bT<$`QPI3mg{%feypcQ+{sjwBfl@R^zP&?0|ll#xxgV>qNi zQ*(OaZA`<^I~L53#s%io6j(48%*_l~+aCi+*-G#sG$Hreb-^8W`U1I`B z$BrW_@A5v~_T>H%cuJqv1=BDlGfXSNoQ)j+arU-QGe<3wSw$W%Hjz6$g>K$Vgp7Uu z=?k&p)RQ6)7s*h&z~IoBu;#*;xE)|0-kB%dF`;0f&yq*vm(0ia%5^r4`#hoB0%3;{} zsSGMr^(+tq7G{lvqdK>3P*ZCR0GL*>=q8c*-3#x*rtu4s`DhR6f$lGxlY8IeAyniq zP>mzlE1SHf9XEc|l1OjW=;#M`lc}k7QDocHbpMiwCTp5mlL`Lr>ZSX@d>$%doc+~d z={kLFE0PoXtQE>L`SR^o@5}N{mJ%G|H?69TUXeXtJcW4&U38Jn6^wXV0-&*~{GdyI z^jo#3ae=J#Hc9r5ngY6Z8e5hFCeb!iI|T3ASzm><7tgE3Z zr>)Bm?v!5ovBjd2>u&K^z%f=^@5Ph>89fK3`~g|N=hQ=S8tG5z6rld zzoP3)3U3HVrzh3GYiKNTZb9DMEzU~EW#pr~W$TKy{mbm2wU8&Pd7_lUUJLaf0U)-- z1go+fcbzAF+ziPV%OMYgf*hdM#4ig2dQ-w|A=eQG1SE2M3(?a=dXAJL)BIue0(BTo zZA>7t9Ze-2WIMsHJfZ=yrqs-kuwBBg4f;|S^h{pa=hv`Gl`*aDa-PUA;7HiRzfF@e zvz89Wv0|3BNr*($2;8NhKXM5HDn zIT$P}1cO0Xmxl_8y+Yekg@24(1TVv@Nnl+cj{P12Myp$+GtSv;RHfeAbH)xBr=BqD zNtF{FJE1*;hyz{S+TJIeF^=paGi#5%(X$FG8_efvCVJ##;1}8B8#LFoKavUzm(u(xEfQ$6oPoHKDpOJ7jXlaky^G<&=#~}9+F^;v>M5+_C(9%Xv*4(`5 zFT83FU-r?CKqq}d^Ej-BR_sKH$b!I430_NPyece3=>_tS$w5Z}&teAmr5)3h0eJq= zr^YT;&dmrizx_R&CA{A?HC$##QWAa+@F!7Tz~?B1MO3R#7omrC zRzzj83HdYgK?cFal7IynoUh+$wCFeP473a@`B_C&U>6+S=}N!rmWb$V4|6!5=xXJ* zNq?7@3=>o+Ld;}in>+wLl;K2?+4|NzSh$^n8a4r<(gJAQF!LjK^xacdw7U=t-@dmF znc_apD+Ch2sX)v*@6r#V4c{F1gj(Qyzea_)OYvnk0QKQ8eNEcU83U6mM)MhG;;H)G z2kF-9-xs=5g_Tt<7z#RxGOaoqKVNzj5(oR}Rnu91q8hYZC=Awms=ogrD!5LH!p&#pcSsNYu_(C)mb0eFf`c|U z>%8tQf4PfzyOR|i{j!f_Z2gx-d+NOpV-=A+Ax>wL7zj=lY`QcPufnbnai8w+YW=6FD*;Dlx&lPO>DQKzVV%~pw|L*4c`IC6BD|KS1 z^kN<1i-uIes$V}RC`{g=D+||z7jOPP-pTQ z_?1?p*r(sdt?}j`rY6nY6x@GV_7G+wrxdWO1$McJJ*U^3<+C2)7=Jt;e6N}^6ATqV=zPxFrAm55L%I9 zy35J5#)(Btr^o*Tn0PDqn0wtfau&P_eQR3)2BR8yrvFmlpex z!XrMMs#E3L6i)#kcecktcYE!Suv6BMmAQ=x6k=w9@O5wK2Q$Uh^u{D!$SYbJb;8Ds z+4#0G0%j?X`bF9xA^XpNV~_lv>$Px^AX(rJG_jne!{_8xJ$orNiGo^D9-)qx3V*8) zy?MG$4JRgn)|%a_q(2E#OQUFsONUTKUleiHOEsJ!Y@e(CbbXl)7@f@uavPOu(JhKj zk45+){CQyh*xxngQeKvLVRYdsu1tLwD}NLwGbAh;*p6vtS(=)3N}I>ja}1!nbSTo+ zR(v84*7#aLT7=3HZn5a>EH8`UmL&01gHFBB=~-yVHJAAH|gH zdR&0XCxzNEE76Rz z)yvK-v*F*cH;*-Px6@JQ#mkJ;Sv1~#jsVDu+(@+FPSx#pXYebv#IY%UfA_>n-lDQY z0tLpQtV}LHIeL)xde`Dz-(Y!ah`%7C%&KxcV&VBE_>(xMf-{a~!9Rb1O9XSl=IenB zW`$={>A(xa1(vo{kC-of(i%To`*HkCdeqne_Ofe6%D9FNtArn_*t` z)t%&sGI1(fvs%+p$f{+IOWdQV`k5nv4Mk25Agi^U#I_pnwxuF4JHwnr1M1nO8UY2-;}Og6a9&?c&GjBvHo5xvpYDZW%@Zo z`EwmytJ+q^>hCu2*ytkqBr9r#J0}95TE7SE)PYmUiDAgx(6TQ`z=BiGE%h9gl8*`Y-x~HF2oD( zC1rn&Jk@Sqb20j2*>WwzH1>v$Ryw2MhWOBLq+KWPN=DfluH!mx9(U_Jz#zzf&bAT! z<9EU5RPImW9}C!Qh<>*;2BeN&YXd#ce5nh(TBpuq#d!O0T2cE2~m)Hyd;@c4GvxRl5Le1 zAj`kF7boWB_Qelx`ex<~0xIwO$FO$8qQngmWoR!tLxpenCJBo1y4# zb!lyHxyssR^FM&rK;0T=^$*I`CLMuSzB5DCv=wLvJirM-XHKW9Wpv@V>KhKly8UvU z8P=WLOX}Q|Ls6<%)b(^HmZ9uT*Z=}G{pwoT(Zj(>45-@jdX2`p6ylQ8#gSN_kN$OWc&^J;kdi@wq2?4~v+CYf);p9{TuU^~DiWU8duoSGB zvp!I;Z1hQ0A!1f^R!G#(F7q~|Se?K45HY_Sg&&U-{7|x$^hbj{_p~}CNSOh&r1m=i zXPq0n48vUo_BhpNRUg!fFySQ(9p^Dm8l^!aDssx)oCHI~uvw-Dx=)s0P~!HC_)W3BYA7@EifW%yNwpsk zvaRTHiNk)44|z72z$^tX&zPW=#mp^<5^oL-d?Q^ zcPRg`!emwW=b1%P;3;%pEuGg-Fhbj8ShqrhixnDasu0TDTqZ5O{!Gq<+c2vl)|KvYU@^P5$IWr_ebO#z^5^G6!@Fj0XYqQm<_yYhnT5O`movEj_lwG(e`#aPtV{ zmu~Y_Kd#Ac$z(n_ip&ls{Z}FEHM=1Wxq{b3et4ymsN*{t|GjV4OC-)QO=35WC@clh zg|#0S`}yF89PaS;DC%51Dj2zb@9|l1d6f5TO`0Rw-Ge1F=PZ6mOFKoBHaCa73hHxC zITqsUuDd7uWZMZqZJ+veBEN~)M zF#U?mZ}PJJ*^xYIBE!OE9HFnoEUrO9D|`&R6JZq4LILV~MMYu(cYf#m$^#DJ3jp$9 zFpOWW!SvXAIRA!cR7J~Maw_!c@=;E-IXV+QM`haezWZj?$6!JUtMGGZ@a@#<_zhHQ z8DNZ}@HpGsk+^`-U|N6Q-cTx26B1|p1A+Khu z>gb~Ebm9w9t@iA<2$B(!nNYg9anaiN?h=`dWB+S;a-+nt;E(dRn7369E?<_ksJ6JR zSKfcal|P(ix&lYODoZ*Hj^P{m8pDckZ|8R!8&m206(uA1u<&S(W1C;7#fE1_WyR}G;-!0AS?CeVqWn+M-AGrhe7FAYVCpp?Z z)$p|VW3$=h+12-t4gJ#noIMZ)D~XSat-nz9eza;M`iipNiEYy3yXHj(+Hoj3tJ$-J zOgzgCKEctf;b8(tp9PYO^!Txra|D z3#23Tq?b-mfom1kKYElzIB4|3wtQLDmUw&5n0paCR6}o)R7`kzdg@9%hff2XEeMyX zn&b1t!db+6vg5lqx#>n4iqNW^0(+v=O)A9hbCok5U>ds@wKlA*5!DsgI~XfBE5lf# zS_2|S^6#-&IxkL-fNX1y-B)NZ`|t!J&+dhdyD%!#YFp(T#$%naX}7m}u&cu<(CH%H z%3*miZyJq@aqV=b2hINUkzjgU_ELEvD2&izWXPuD`+E1_JZoAey7@RyqZ;d$JcaVMCPH5){WSM`N+|?!i>BU`WV;CM z$o)}!g$;Qs^CEX?2%n$bp7_V+0W_dRS)ctJs%*LG zF{iT1Hltc2^k~3`@ZrLi0Ru?SdxMDx#xntHCaOdh(7tyORW5tVsTJ{g`de z;pm(jY#agK#t|0apYrA0VMEb>3bXq%;nyq`J)t9#R1%Rct@IXw_P2nqoqXKkeP0mg z{vRN$axo)Ot-_JBL>Z-=EQUmKDYx?Cb7 zS6blK-9|{tGHO}_s;T#yri@0*FqR|uUMy(Id?m4|c(;zO_q}A+oiwz0fhI|5S_wG6 zmO7{SDakaQf=<}e6K`vETlc_(pVtg_e$Y;ci$I-FOSFVL3n`t<1)YeVEJ3CxJNS=o z5AZdK^Ja52w_b)-9_)-EK`%cAz*vkAnamhH261JSU%tXR$K&>H#iuiIuoltP-nX~M zw=LoMa<>#TQh26{Ww}(_y=)P1@x*{KTjf81!yP?K6T3Ufq{`WeSA&!6_=vCO^_FJa zb|au2QKCq$1|7uEe;&n;XfSrV1}@<^WU?LTa?F5 z4^^>>^*>bDG7#$H5n21zBuE_6cy`dNn{bBQYVsh;X|2DUTa3vJfO)%1tg~iEU$z6N zAhk;@P#y;&Qo_F4UJ10IZko?elu=*Vx*MstePMLO!rZ^dVkF>7BI;z!diq2kZ!vQr zX1(?6OLk+{~oY#Q?~iVe(h@ftd{D7o!K> zPuX8oZYL$hQwZ}?XF~XipynGeR?{~qonPn4T*3G39{W4C?yUA9v1Xl&c|tW(fXo=+ zcWl!rA>4N0k5>B8Yjb`?MgnK+tg~Jr>hUlpiI`5ti%d`b&VzrC z@l#~Y&_&M=QRi32trx3OTDDI~L=xvEDm*P3Q12TOW(rr6X`77I$%{+*B;jXU|NC?P`Y3PetTh0p#? z;c`65I_^!G!j33eRIS&@01-2<6w3lbZt|Jd6FHPEA*~VKdx9UGtJmEkLh^M;OhrxN z(PaHHZVjD(V_8WBB_$^vqMBWi>G#hpxL**(1s`{f^bDe|2W0hVr!v=KklKC~^?qikR@l-+M;Z#9B03Gj48N z!&0*OI2D_eW{Jig1WlTDF^}{Aa5~0S`_|jYo*sys7}C0xI(O0IM+8r*1m_@)#Q6q7 zlvo(Qe@bNYgHY?tu;ZmZN60)Ydv6%uYLaCGLr80(m0T6RvwP1=k#YW%{S+v$Nw{-~ zndE9TM-Kms+=K6p!G}5feMABdtm-NX1;oOk3tEGb>CTfdy?}6_W4XeORd9(!iY$$b zC%X7*s_T#5r%^BACv(6$1Q#~~oW<7%BKYMgnq1U#hm&ggXTzddM>v_5*D+UBI_uFAuL^KXwW(9eCOi@<);Pa-TZ088`K7`YX-*E>Yj_>h-yf43B(HEuj!DBpJPWR#-!R;p~1!-($DhD3z%GFhcuv_G3v& z3DT=Nv2*v~alTp7u=(nbnu@JNUUoQ_E!Pa8mI2ze*kXYu0}GI zJO=?M0_v3uO+YoLQJjhjVGTksH%J}(aNMK0z7&u}p@xk$!%bz)aTg6|Z`{2&AvEXI z$DxQq3ai+*(nJf{<+H%f_?Lb5w-2VX3m2wh!LMX@o`OF&`Wt(T=c&f6O@V6x=%0?S z{{xs7GKl(^jYte!_#r;QD{GaGdH#iL7uk)%@!7D2$H_`2^?8v z!YVX`OR}m79u-nv^Z9k!YeX;xhf+ftyMR1rS|S0vK>|NRxH-%UDfl5A{YKBQ;r84qqMGk}5qfFAT>!v%j022e4#?5<4{- zK<)dGWtEnrf0*Xfc#ydJ6_Zg63}3bX1usHc7|A6+LD%KW=9&q)_7GZcl#CDCdL1LR znwDh~t$?_JX`CBnzG%B{pPYd*M?*A?H=YoYOY3~{vvtZD5Mg&oEiw+$^{XET4pDjMSH^qtr^Y&(DrU9?2XJxvIa9#vq_{0Do@DC|#^3 ztGSh5?$RCCQxOpM+-eAKb!o@1SqYvc1mUq=ag>SOcK-9M@Q{I>u5%WeOr`rruD@>j ziMVqSKM#~!!!WzinB=Y;?QeD$7rEvPEEqvw&Q}D6%FDC)Wxi9eQY$WE?| z#0e0~{=S{F6#+)(6O6sO`ThGXIIGcPx@1c_v6cZ6XvJRf^AB8 zAP%S(0iF9BDrE|!mnHq^*lWA6H*wT*b+$^xxzwA`T&wO8EgW?Wf%KTpUn4KIdhO<@ zXmla~Q>J<;*312_yOo~DVgb1MfW`Puv=S5b?*s5yfp&Sda(o7$^yPDi-4Wh__9)mc z%R#}>v_xV8%m{^dGRbZz-i6?+-NL_Kla3E({TGgVj+0qD$j=Qgc0(E*tD5xsFWAo9 zK0eob79Zf`+I^J$*w5&*m?}!KqZXyFr$YbdKLDkGDV|xAV5bPBcAktE0#h~?T^OM^ zY7Lm@NxOV?w-~m7`YJR6siJAn-DbRK{iU2c;nQ}*5IsUwYCOfoZb;Rv>M%)25PRi$NX0s_Ykw@gtDV3GlugFFS+BUUT#*%RP!9Wurb2nF&0sECE$ zI;(o9_Bqo?TLf>`$aNlNYj8;2G=CCOo7v|WnE^oI#%85>+J%GS4T&xmztAiD>=WwB z;I0u0E`;FcfpzqW?Qh|djLXRJk2Gy|>M!k>`|>adGH zjT-u1s@a#jA$j@uXhqx+wH7xt?VF~Xg41lh7Z&sD=Iiwho1d4ogR&uxp{FH za9va>W=Bl7JxJ;yU;|^FmAVu3n?myfL0_u$Uy5*7?e;jo zE?d>8wIHc#`exRta=reASEl-RhWpP{JwfhI((&3+z43u_wDi!0-DLgXlQE`|S~^+@ zX9=~qo6EdUy1#3Wf+r6mdCbFs5Quwy>A1*wsE4xibmNQe8ftC&WXDZ}_7)QB*!PWE z{M+10t@GN%T7E5IzxIaSS5CGs@sv9!1Z}#`WS{eOk0Y$L1*-?(YHi@A2Nwz4)txzs zYgO?PPx+Ao!IBcDr}UBc3mf;uYd+}-Di5_V&a77y{^IPs^B{bsSB?Lo_QP$tC0k!$ zK)yOk^ZxAn0Vq!4-WcI|ktjJ&1VJj;o$@`ZJ!@M2<9uw&P+q?>rPikhkj-NK~? z*GjC*BN|$(;BOcOtiI$yD|%^XY7-H2u9_O=QUR3VN(ZU8!7LWIu5H)Zlgj_YQ<|;- zhe_~TVQ^>pY7f#P0Cbh?Fo}l{lufqLi!N&l(MA1$c2~`LyTf>l+ zQ>HAW=1nE>Iam*rV4V|mHv2J;bF zP%>mz+U)hH_}j4zOf_eLDE3C|*6oL!xiXq%!P3s7rOPc>X zt&*3f3x!qMcOhDSO3}UxXq^UMMN}Hg$t+HpA@j6Oyh*uJL}utBJoktn&&#WrJ4JXk z5AyXQT5N~jqf0kE8IBQUygm(qI`ih8iP~Rd53rYQ4=`-#GB3vsRk?UkiF`A%aiZkT zuk1kD`pKw70^zbdQ06Odr!p{xFO@pR zREdu&Y|mJTzL15y4xf?Cw(Q6#+PWA?{>N$6IJ(K`!N>O!riZ%=u9( zp`<_{hQZdZ68;kF#c2~TZ{D+4eZVZ?b8X(HCT^>AX*AhzppIT5KZOZrSgW^Jv=Er| z<;g7fD#_$6!&nVUxd=QlmLEvOu@102Etp5P?St^c4 z`u|+$r8(NKUlkP?IZw@60LdqdM;pEn=s~4cE=Vc3!u{?0<`@AskG?~Pv4`T~yaEvN z$YwQDCLYGo)mc2Tz)FAR0U|!h#k`az>_{=sZ7xiLyLeoW(bQC8W^#?AzaFc9tguU@ zh`QZLhKyGm*j>xl2WvQ}i;`jL`{r{yD~F5ZGz!XoRdCCNpM5X=9$K8LcJ_qRk3P)~KXEIHJ%OZQ*Gy$6_V_YeOIHT_`U7^z==YVhDUV9n4 zcyr$^$_w36qKU^bJ!dc`i$y%b&edYYC8R1E>vBRW)Gh>^(ar;)bBJUju9JW!f{|?A zo?evv>QGz?9p~Ot5E&O_OXpywTO|`xfqtrLLeZ(!*d%OS#O7eLP~FEkd;hv5eHj}@ zulpZ>xGK3)8adLt!zSQOS8LZ3R%A<7#c6n0{w1og`XqEL)b+!=pWT#T$AT;ud+sSP z)$BB&q-j@b3pVoQUtzH!uXqeBnO{a*iIL&5h;G5{Z&egGLn2w3%TB!aO@)Vi&P1^G zE}>8F$S19%`{#(fQ6yC}9HRuADPazz-;0P3Laj}$UdNa(Z znR7ctZ=&DxxV7$J7dMXK!uxNnkSwQKt$pKI52OIgqLtr=>5fmY%hXivETV~tGO0?)JypUP zrCx7^G3}B`SUD&;N2ZEOq|SV=F4h|7gc(Dm=|RwN4g-=?yxFZ3riL8zP&c`h87DZ3 zq)D|`|DwFjyN!;4xazICj7=)#U(K5WYL*I1ugXbYV?(r|zZLft_Gyw<96+EAEhM5s z>+J}d#Co~im&o*b@69-5o!Mz1U_tEWiR9#Jd>(H>Vm?jlmUPh|<-(vdDk|-Ir|;}r z?HZ5BJ3?@H4&Fq`ZBAgTKjqM{OiU~++#NJ9)qLDN-L3>fhoUqR_Eui zE2Sh;6)VoHc4W!pL_D!Xh$hXu3Vfe5S*zp!ofE?T@^;~E^tM5<)SuZjP23m3poQ;5 z3yaukRYBSP=g$M8lv{qr3%nYAweBU%MuHTjtP{EVqe447dEg+40}d(gw$4ps&cSbg zn>xY=T8`FA6j?FK4cGglwi5~PjKKpXG<#MH?b2zx#1pTx)l*#h_*CsUj_*BDm2 zBy%sHKo>n(GIOTk%8U-I`UBoW04Io#Tz8Q)c(fZW(u@hx>DSMp3b{4mP4D~jmKKmf zJn0JLO^+Xs1|J##0CrW!XLhP|6)P+kfdV0GQ}$H|xW+x{R$O4#0zKYl9;azGP7ON1 zbzlt0Y`=!28KAvz4sg3csK2qp1a?sfMJIt;vi=TKE?sP#68_ZER335zwOnZ$M4`2= zQ@Gk%e+wAsj7+v54QI=9k_5E!Mx44^gs(3b!r?1#9fLBahEveemfF43uU>aI8Rvj> zGA}Xyud0KUk_|jM2b!@fD}kj@Ac@sZK{|7+lz~=vc|g8|`%~^&@2N@g<|_kR&v@kI z1jHe+LRjvbPnZHH&$?%}RzefywDjNpqfm$-c?z6{76GsM1``+_V_3Q()X4H0$Hx0H z`|{{#D#oYY>u3gx>OqVa4+h%5!-{{uQ=z>WUN<>-@k`A=LULLc&B=aR&2CW6ucAXl zsw6NXwD6V5M{_Mm+XDxvz%ewoHfC9J;-J=nAXH+18IC8`uCC+qNM4~nbR%)I^-6ut zm5zj!V(%qqsH5nc5=);0w-JW0jgK9g0!sYmG4GEfi=+is^dTLa-gfRqJzTaz#~HEu ztRS?ZNV;l+DT`d0%2Dv&>Rg+f-+w-MbWIG~tH2>?;c#USs+sZ(otH0dKgZnNpl0my z0cb#xS^z48MdW=sTc;aQP8>Y@q^E>=0>)mll8x0~&ry;nkf2RJ@)+IJc(LJYzx@D& zVVmY?l>DlF{e;yd6vu|L@2^`eaxR95q|}z@nZ(A=Xd}D^3d0+NBDHn{t8WTaKX>Yx zdsl_gZUVCIwB;ZH3orzx^fq&jxcz(eC5KuC2>0~K^ADsnt?%HaK_&B}2}j+tb6xI#3c9=}G===a%y) z!ITdev1f`eD%BwXNIV{fdHqN8?`tQldE2hK%Ovm0g2#UAUn+8(pP;#-Fsd=zQ8mm% zUY){_FnGUgmbraM!xC1!{(a|i6ta}rEWzWor7O%qyhI<7`@!zDEDxtH9+%WK<3wY3 zvNitZRQ;7{9zpOQR0+F_K^6nrv=cAU<8*<1$Qw2IgNgM?&(p24M>7qe`(P$<0_9V4 zM*P~}83g()VTyV!3WG3xJb`i#-U=j6=GXH)(sR0Wi2522VsBDRy^`-+i+zqFcDMlo z2fjiPuf|kTz+Y!ykT^zGOZkAzeYTogR;JrI#tp;Y9&X6YC>{B2ECkk<1wu$S-1ylsglUZFJZuZd2o1ZAz!+0 zPoqg-WM8R`#WR{t-(T$d9m&RgUW1B*b(P4Mu?|2w4|$Qo@gk=RjQI3hHc@1274k z5Q>v!6obSJw_^@>Cwms(PS-H?vJic8c07ULh{5(%$uwIW7Yv59kZtD)+QNr$B%JJw zibNi*YTH7}Oh8%;M%$WMQWRyN5;{)G!FM4T68kC9dH+Q@IPzb?=;1N5VH)@H{P@14 zl#}S1e|Lq=@ppjCfbfrwrRb?qexkzGEbg~Lj<+^+gARNBTJcX`wfAckNz#;5K8Yn^f$q~0-@5pYo)<-<9tciLB{oDmy@SclUSEn7n$nBpXl^A!H zKrE!L!848pnI1tohdBGR%zfMnsTEGQ8tu;&dzZBc#m=wo+s(TYMisw=Oz1!{tf*vO z&0~h4+jZNCUxDl>^c~h9XUX4ZQZSMCtT4*H3$+tzSsw}jLMB7w$8|(5YuO&I^!q=5 z4IE!Wrd0oxWmmFNMAfAD2;m9s-K$p)Hp3Xq?QWWGL9&wW+NiIUFuNexHwyi@Lrdj! z2=6y@$`Y4fZ@DU(=6=$CQJdyLa%LWosWS_)b_EM{Vef?m{NPUW+I-0RroZdlDY+YW zS>)Z15M_1dJS~&xHV`YJ;FJ|zK0nO)Jrbxv=h~T`!1>$%x9@%9*yK8qnJE%&s6e%i z_7CMqXqU3gbitw9(pxyu83&#Kab;hOHm6ZAd`u3wU)BP_g7 z^+GDG(2Py|k*nGugD{p=nxv1!sheMDGrp+q6|OH9n(Gz@{>rqaHBaEIcitJ25lZVl z!t5omK^%SR>vG&BZVzyo&8qDN-pOvQQI5>KQ8F)N6{4vs*0cspyy)x%Zlr%4;~<+o z-$}Wke+E3Sj#%ey{wP%&p$&&!Ks7$~j%Z?WyS~x+v+&|_N#bK$ zPu1OVeb&1yC_~czA=ZOr&!5{4dX)Ee{Ws42ba`f+3qKXlKr1pL@Evtn~ZUYcS6 zF5Rt6{YO1Z#!{Q?=R$olkTE7rs-RylxK5;JMzVhNpV>nom`WjBriiB0(iA?^`u>Ot z5t3KW71bqp={|!?ad=Yy12AyrG#=J?pE#A9asK3c939289Qm7&w1A?fbJ@FtQqK!S}&Uk@Zz$Hj6Tv zG1Sg^_fXpcKoyB14k7V+&Gium=#v+3>y@L?lUj{09JSL+PTlMAN7+ z)o`=O&eMxA8eizuI#=*RZHjXO36SHtreB zq$1LJL^Uw~AhGnBi`9Kiy1V{OvZ&G@%;PhsvQPmcLaQbapZED#Kbar0{@0ds-Usv5 zf@M@|x#nTtwP`R!ILr_17a9HQ3q;eK-uwzQ=e)E?-&!3PcTqEXRKX=hL*6hjIaup? z5<#Si@f6249loTmChsLBPTrk#riWkjTdazudi<}YvC2qwN7I2W*t6I65<90S?CW@< zy!f^B$L~2dJX?!51_FjfI*F+qC-u*A`>?c3KV9^HOplVzOdA}9$MwBDq5oj0L18m0 zwEe)P$%aA+KYczCJuaz@g(3f0R?HnAD^l14Fmz#x4iZ+vcM-(c1-@GL^2{BB!3lS`O_aPCQ1(j4zh z^#@OgJLSdc1Gp=aO5uV!0QV+Bwzs`)-Bb2%1MmGIg%mtY( zbP*VInfriv(|DnGes}c%X`H!4u+~Hl|B29t+Rkrj()m%1*8Hr=zb_yspCNGI*>H)z zQeU7&lnv4wMP6YF>4>V_Nh<#A9lkb`nxPsyTc_UW-1+DAhjwXIzN)vta=Ob~VY9Z{ zbbNOIo98p912cL)*dUi`(+4Fbk={*bAwuX2$6EWmYzfZ!O2u9*4A`0`Gn|kQPxm}u z@|upzyLn$svB=Br1`VDGJUZ{>+pAKLE?cAklk-xf|8n zm68DEh-JOa@Od7`nX_TTg&pwNC<9MR&(orG4w5L`sJWE>G)@q+_O!)nSfV@27hCgjF=#k~wZ?vOM#vui5f4Or=4gcFmFoBD|{mFz0TnZSp&@^iXV(8YdH9*KA# z?;A(gT!fsFEt&mU;zujT^9&I2LflE)%VS4w>ycE;M+!ieoV#RZR}V*rhJ7r8F4EJw z&{IkqMDo2zo_l6fFD89%h@B46IL=f)w99FeD9tTN7sFQot{M1uwx9P^1=up^cri*} zrsv1WZp%sj;qT#r{jk5Co@4ZpKg zFlPSg@Jxuyx1c&|G^)b8WKdV73Wi$);zFKZUaq2OqQnpMqw6pgQkPfpQck6a9SKVg zerF)j+V%+S z@yh5FN4xK z34QL(c$K6qeI(<|9+Es}NmLGuwSofS2ML9vtaz+3FK@+eT;h<|f_;B8F3-Yo)Z-^d zf(n?-9q;4KQrCENpGpxU)65_$1EkL1fOIj{2FKEA%2n*x7x4J;n z37U3|U3*P7Bq}RcH(l%JlXmjw{{w75lfP8-@yS;V&Z^X2=SvLX?ceQrgCo^;F?f)S zF$qBL0;7|3+S+Yjv{tk*%Ap*X8?5c-qFJRO>Bkf zhcuY{?_V`9v>4!&fVuB3@e_!M$#A4vHTkzvFN@dY)VL4lm=xemr`m! znjPBlk6wu+K`ZCD#s-{i0{O;Y-M+c$^7yXRQ-DQPuITg{J`*U?ENf*^gu<#?!*A9g zS3O#R%cQUX%BI}L64|aGPKpWWT3mxtVS!yuAlRUjgi)9SRGSEQL|IYK1bi#(Hfn|o zX9>zKR2kD!4wVdB==`I~a4&o=%5@t`hB+XeewP;mFDV_D4-<}=HxlVmk~0zrrugg( z5CL9cB$DCQcm1!RX^X<8ASi_f2`VX11{w;DZKKq4fC1j;eV3-}PGzPJl0cb}0KkK2 zxweyW^&2KstSc=o+9&|aVxji%X!7cpI>#mM(G92ZoX=aI!0!;M#ZAh9z@$4mjfbb! zCc!08)?-FiJMHC|@?1HyWzL*Czuh!Qs3V9MZeK|60D&5BcV2BrQ*-BCG(JGyI*~oh z3v?yz88VZaVFd)ZdYAZhHT=gprs804RqImXSQuXHwl&$Fi;;}>l1!B-p&<)M)hzV0 z?;NikjNx49oR^PR+Em(32Ep);El4B4URMWb?Uc__iiiOG0{Vi-M*DM)>U1zKGl=5N zc@4`?m^ZY1hn!6DF<8MhL>iMvv-x;>$75M#%2@Y16So#iQAkQwq=hh`CidYN%tBys zI^DefTkfZsn55+_z_UZQp-#tPGNZ%FJ+hR#kTudR12xe1K!B&(Gv-brS{2V}+5f>Y&xx@=DjvXNZS(tE$J2k-aT?o>osYyyh*1`-QDFlb$&?7~eDn8Xg zebC@sh@=sc>B1uDq@_wAe(Sb=v$JOMU6F961u5w2RJ zm4i&FswqVQB$W>E@!eAkh>;SiDFEzI^Ut=O$oUOb*kmU;_)<;S7e9ZUA}=Nvp+I4A z(|;rNuw8jbN&zZntCBUhoNNz{ zx$4Bu#}ab5&=W&&Ll9an8rEBXWx#5_s4m{3A`A~-5USa`AtrJbpqD-3Kmnupnp(?#-Q&Gr1pD2|%GD_~Q16mJ${{WA&j{z-e z-n_)I&6oq@r&ZRjfpyDG#$t2tKe*}hJ^qSL%9%Bll!Tw$RKRl9I9*r^FINNf$zSf0 zfhht10LUl{c}G4sW}gltWmK#(PEb?bHK=#xyT&44(OI#rFMqElja2I*H88NEC0U7{ty<4716GQuyu-50bcW1BBu$bMnu5~mMzy0K50p&R zAlUk^LA)q%7~39KK4KvGW~9V>H7!8PPE7v*3P?~Hsn1fyz>M0*P^VLYXm9}EON;08 zoaQpoBzr2dCW3`2X?&_GND8Gzd`0&|d%%#Ocq*S3bEM>Vf7;|@_EsuJY|>RNixla| zZ?M;NbhYgw#cAQTCLP;MQNNfHfgeAv1**DzM=Q2qf$Y479Kql%u&-kYP znTAuaI?*B&IZvNZEl$jqe{pRn#vHtqrny*lVnR+;7ZpEfP-IGBTLP7l)LkxIh4%MWKOk%~UUO-64nR!3}8G^l_BBM(Ww~gVMGk?0~;_6d#Ko@sW z7x@pzo@<})GgN*jtLGx5^M=9#?m1{iP!pDRRQddZ#gL)PEZ>uL$6&Nz5SceoNh@#8a#bL5!omx_Cx? zM|JaCe_~9MuGU+r7tCCi{s*jgQK}vAuNR8pok-&XN1yL69eP6f<;W{o1ug~5beJoJ zufi;vW#&tkr2q%5@H|pXB(FTu&Pi=61URY;EmcUv0Wk!CRsJOUozQ1AJ|aMj(QOnJ zEiTDW0)RG<1VToV*IabXW)n2Bk{lb7&*=c%BOtr=E3bycm6W(7yD|ek-MkypkvA|9 zuTG=b;6$Gen#Hzrvf zy~XqBqQK(}jJcHP1@eUVsA>Rq)wT4BIe^b!Pom+a#kqtJ@fXSsjlc!bm9?;q0&dvG z%Sz^VkVAo$3Anzl4x{N>iZsovn~UPcCx(%xR z2tJ&*5I5<+uuGYRQl@v3q?R1vTO~}A%N1@TV9vwf`$Cg&03gB&ttJL)&ZSk2<~%@A z;Wj}*3RyOA4(O&ZLW}C+uvTKEPMC#_0jL(#f*O|jZh$bVx$bj*pm~|fA}lUU4vJhh z9$1*_NONP#zlhfvBw-G8IN5Ycib7JA0J{JM4vfr3gYyaEsg;^X=SYDfYzXUY&R0ZB*~1SnF&<_g&(R%p2vY@ z>X7NO-5J00)$4D5LJ1=6SAk9LQNy^uYTP4seKpCh}K3e9q zutB*NUi|D{Pg4vZSOp_{n4C&L@c4Y_xrBsJ-0_xRT#%m=v7_`ek zM7Dkvg>1~Fro;T6xl6;T1b50xiBl+8k>$JT6pn>=3W3>)g-U8Vp=Q+y3 zhs;1OQuZ2K?-Fo=jxLIsctey>2Q{ap0$?bbfn1z0LQMmUZjNsS%<6^4>Wnn9x6BDH z)rq-5<}y^L2uexF$xYNQe=xn2aifR+Nw)XA)-Pt^!O2pf9OX4Mt40-EZj-d{SW2I>aQJp92Qj5h4LS7C z?W*@?lu`^cKB^g*F4kZm1tgPA0MuTasi}^D_!m>I41&?ub~gR|s={pHD9gwlwFq)w zeM_DGCM5c^GM0;QfCtk*Qzx%eCsMit3EB{mEo^AuF&-@(*y8fKgJgn7=~pLWBfJ)q zmsSVXAnNBu)qpz1bTIe{GEzcP2_LzbnCEpzJ2hcVt!xG5f+)PGLzZ{?KpnGEmjQ8P zf}tpdAwA}*iK~t;!Yc&Wrvx;}->RxYa|F92Z{L4dlZ-Bq3fZ`c66h71h_HYf;-yw1 z2~p3)O~jIvoQPslK@JUfhTXm@)&}Oh`{z5~f3iPvOFY0r(r)d;bPi#gCTl@n_hw#H zBxY8m)Lx!3v06%Jv@qLLncFZDrKpfgS$3|5;}Tr!+Q8)t62X4hF#cSNCw1M&5E^)OQS!ZUEJxKml3j#F=}uYz=v1F38-q*j<&e0 zJ8BkOuQBXxdYyit=@uw9j`6-9-d`gM9_2;AgCHF5 z`TO1AE63t}omQPlq&^+=)5q|**sYC-!Kp!V){9h& z_}bCZ9@l>reP_<@S)~0lj>`v$kP(rpw1kVaedx;NKXhV5@xkQ}s!79|~J>-HTKj|~{X6-xK z$j}P4H~F*t;wHE^g=53G7@tkwvghLVen3G1PQ}2Z5l&ysU6mzBg2S5SVs?9^uqr%b zt*-%Dm7v{8H)l;j%o1PxYYts2rL~w%ib8M`l&2{nFHQD>3ZbgNEKn^WBmxv(n)Uoe z+R_Rj&PZlqv!tXDDgbV|^=F>RgP_SpDqci^^oD4Ju683ObY!v=l{sdytWKml%bc{l z5en2|0*z_G;t&@jsky3vq^zdQ_Y{nxEN+|b>6je^mTenN&j@><;u|Hocd_{-OxdcK z9V8A0Hc6Sp1{;MsHe!s>l>wPS`@{#=Sh1;TU3|$f1RnPKrcK#7Qm|8PAp^*xP^^4?}`@~kcbjsu7srofL$keBd#8?%bB|4r~x)i z?Xw0T5pCiV4df`{gfoazKxE~&UU2gnCt)ozl_F5XsIsV9pf_K5XAo1p*z*eDkW!gb+CCeaY5d{>ZA=EK169NiYlPh}y5EfaDptyugfC<$$Mik9gc{x%B_)Cn`%d`bu zf}Xq?P(ob-p!_*_lS8ik{u6sa&2-SL=8FmQk5PSkjYg}mt)_7pbRl6`T`O|D)NygT ztzI4+qLva!UY$-fRA_65Lzq1#V8mRHi?r(zVsH|1m}M;~B4n^W5keR_^CqWv0~QV~ zbURh&5XaFkrVO+WkVd|2FUDC2X8h5RT0%QAl?MoHMmWY|p?%T*7WwYj}_w%WTE{CN3}1 zdrT2!E+-I~YeLcjjY|?peih*kDdGeb#@AsWw`VEpKB*%TdqJIR0mHE_81aS;5oAN0 z95EB$t+(?{Qr9%5T(@G~)VmVjI4}juoS)zfgBBBoxe}a(M2zf1vvuRfFagCmtXRlsAd+vEQPb9E)m0$@b0w7_ z)N;C%ROXZ}1*$mILO8%Mlubth_TJge?bv0PdyCz6X3CR3T$HaiQZlQ~v<+5UFCw zQbXtCc09+G+tj01m_7q5#o}oOIG1@IzB+k>zZY zF_8AQ2svB4>o?3zvgxnc?0ugqSammTbClH5;k5img(3xFX?IuU|;>0r;hQ#6`0TCG6y+Dq_@&br)R+$|S&+T>XrLv{$%ox^q08)^d-3PlK zY08_OZ}6a>g16T2ph8y}vqS{Ra*&|l8#gEfnNcnwU5EB>8;eV!3IUuEN28CdbGwSB z%*yVk!f_P@v68L9`xT3kFioE=At_KbAcbmr=MaA%O~VUH^(p%^iED$LEFkH>w{_o< zu@;5aVFsCkPzI#auTt^nJBS2iy_$SG+GLnEn+~M!J#RN%?Vqz2227+NQJJY8by~wU z>oSqZ1$4YJLQAnv7rl3NNarsrv6SFn?xe(JRNScrLfgkEvt$V?maG>-DKgVVlzb)J z8*gtR0mS7ip}!E4sO?!v$TNajfdhv3*K|)0RPl(~`|M$V38M`>e4<*S;6Z}9 zQx?9|kl+(QKqJPMj?e@s5@iQtHgX6o7>n|}98GCVBYXL*k%gL8N?l46sl9z5x$TRj zc*k*`_E%R2v%nxsQ9toEjyKi+0E)djR=HhCXp<=*WzMI%i?nf);;W7X6f0U@pgHk) zAQXg!>1$9fs&2~|#*3wu1jkgl$`dI@+@ZhZVcH=zLx@6;6FrE^<0+^hj;>YpbHXDB%$f~M@(>wf5&d}OOmnQ;bpy~4dXX<<1@JWIzp zahYBC8b#EzaTt1};xLQOoXI4SaW7Dzt5w_{Rp)^b zn&+ua*u}m>xYj1~Ciz`#*)#B1V4$Ut0|MGuzWpm!uZab&B|@NeCI}}i?tXdpf+t-w zehX_)2Rzm1N^*q~7z;T*1?{9w^u&BS-->Eg2s2RS8TbjDv_J6#Mf6t8_LB@oLW7-3 zA(&T9?YfnSiZ0KhrA{S);MC7c>C{|#_)5%1+K|%Bxr&ytbg3i&IIt~i@q*eU*sfaq zNNB_ic!M5*$CTStzj`xf0GWtdP;IFVSKeKXg&sB%1n=~@Ur;!JAi>b*8TiGHRvD)z zT9Sh}NY2zy1H9Dp*Ua*TXp<6-A^~;-X_(LLI{L>&MiCOH7F2|sv~;D3YEylWgK>=V z;c4Ff>!Oob;7M-2eLQa-V-I+ye$2rwUHJl9tjGWbc-|0HsTrhK%NS*AAsgn%KcYtyjzaE>#?6v=#-CTW-AV? zh(a~WqH_+Z6!(S$1x>!q;wm>5N1^__JI+gii}rn8vo8)*r(jYYo;fVAF-xDQS?oBpj*&lrRgkOkCFpl|Y<;fEC?P3=W(= zkrgJk=c1Sj=b;l~VA>1}go|qI9JGZOM6wi;6r89a zskC~xEkq;Ff3E)kNqBdQ<#1-ri4l~LNYuroNbNS#_I^n1CJdmC_FSXVyW#29E`UN> z+&?YF*q~ia~&`$pVBUK`>z-A9YL!sx& z2ZFXJm?)7bl(hl9wS~k~%Y@3&f|x-+x8x%O)niezU@tEYw4{;cr<6JY;G3sNmR6MJ zSPge~`9?s7=R51alCU8KfX=J17(Volx-h-es#P^W zkS*oDzGYd4mL&kNa}=7Qme;O+GjW?B#)!rYk*9CJ$m=%FwMoN*=vQ>5>!=5R@mGjq zdCzhRtRBz+4Hh%{@LHVH z7NCGgGyv4~$~KokKy)-r@1|<$DNNak3z(&AT9*TjJ#7(jAXqC02a$=>t@E38w0Yz& zlq(S-Q=}9~K?+SyVg)yWcc9-8E)8_KI0fv&%Msu_#zu0}&R0@i5%8gF&XuSnC<+0@ z)0T%{4nqF`iU#-My~ebgGCdSe-h;lIsS^nN0UUtku0qsIw+Kx{MS_WlQ znUWeOJNiuTI5vdk?Foq_u#%*^r9>#7GC6Bw6BL?z@4;+vNz2ARBf@8>H-s3u;}?b! zmn$-e2QnDal>pw}uvpT^Vg)PO*S7&|_(Agk&r5u~IqBJB29Yr(Ndy4u?uBX`KMi%} zCWT*an&?9zh80mfb}yNI*v=kqSz@7Tf-F)(}>ynvK?U6CoJcYBcA1hug zsK85@Xwv?e4(^t%T%EKo22Cg zHCyQ&JQ3v*9jf#Fq~lWym@Fo3-ag+o@$DjqJ1tY>2nJb%}IVKDWQc@*L){O%nQh;l+3!f`BVgLc+lBH+3*xP-UiIQakLW_z5 zY0IiYkmH)_rBo1lgcGroi)3K*s$QHSgBz+3tnCKWRn1AIC@XUqfiM** zz0U?hl{j^+S%7d!p{rJe#j$`PbG?o)BxStSxJ))gsmg+jhX&CHzDnw#--i3%q0#KKdXK)s00ZApFfQFeDLPz-h{>Z)YGD6g)3j$QCHxt&7FiPCw z%YA<6PB|(eIl@YTW~kRYKlPafU*O&?R+?S(*TGHCFW$Vl)0JZiU2@rjeO&nh%3--Ljrf}vX-ZB%~;~W^ik%=M-lYC3Du{aknddXU9K9#K!CylB9&DUuY8G6^f12)Kka^?QLM= zB(D;+15Ta@kTp5!8E5m0e4#1COUg=#Af$ymf#TL8{xoA1wottCY8WK+GdAdS$c+2k zh$-`S+{`+LX=zc+LR~<8$By_>Ogg~t(KGmh%eYPLr`AE%{cQsz(d|=a04yvMl_H|g z_@r-k%20Q-h$J?BH*VQ_D)9c+B4To`NK=8_Q@QfJL&ROeo~l3Y0rrgieo{XguAU!m z;ISg8S~F{uTDsmK>J=GzT_cL7@8dV^C&vy z*_e&?`6?G6lIfh4@-NO5JE&RiIfL@w=|?PMl;J_Z9~SdgrnGDQqQ{mpTtcN?Oxt$X zy!^_hQgMVODy^KUES=on>k@Y_FuJI^p)lf4j$J%_`uvrmL6{0wgd$_n*p`2^bK;AP zmvItd);r#)4gn=f?z7b8r;l5qxuqN;@ox($@tZ3m3X+`3CG!ye8{(|3CJKY8mNs+V z`mRa9OG0w7N`vL84D@GeR@bob?B)_>d8MG(O|s6@XqdNb#!;jqb^=B!VeJ`5F;9J9 zs-%F#itE1H#8I^z!DR}Rsns(3>2e9w2s--Z)Iwa{kA+;LEmBO7OC>=$!L5&10infr z%*>@cJv=x7!|Sd``_3S)eka)}Q__1SB}x=!28*|gBl!i#{@&qcKK;}~*_>pWnN&UO zt?9eNj9cC*6Po0y!tpI15YK)KW?-=E%8ki=P9i(mP%%6DM|I6DB$ip(KLu!oEA=Fxik5%j-3uJ=X9s zdFn6cl3cBriL(iqJJ-y6*{=1msQK!~7}X#^O~Y`(&n5ZwH=O6TV?P~Wh_;Tw$c4;F z4VA!plFn7gHY#r6kNsrIP*aTF}s|F2sBJBg4%AUCY(rVJdG6sV-cV4$@MI zDFn61++Ny_Mj%VFa(HbrUelEL_B}Nds4LTECO}G)oh2oh(1Fdk-_kGz*`bN8g3>`A zMm}D%g6_mLI-&=S`F{ROT)Z!c`9sNgLa`MYW@72Q6q$wyUa>yyr z@?i_fi-j@8NFmJ;(m$^&ey3K>MlyR#IRP{(&~a#fVPkH&0|{{r-^zTH*qxlY3o_P* zHv|iat7-=cln8qaI3$TIfHJbQAUnf@)n_;oAZC>|T*->4B>6)~86%8lQG2(zHQW((d*QmLSKfF|S$YvNl< z9mY6oRKsu=T{>>50mmzKfozY?G|u2jUrUGCNWp-VAOhbRH9POf81h|MzU6%dJ{h!t zf#>~>z~*PNGcHuI*&!hTi2)_GuhIZ6KM_|LTMTFeeLhQ{KmPz2G@=rZ_^1IzUZ;(G zBc;C=^4+%z1{fq|+6G5+@=lV{NHYS;$zl}ci=QhOJNdjLzATaE3TEK?p1-+0Z+z3y zC@i5t4w5^iLFrBP-4ZT|x}!jF4jFH+lFU{QI#=BTHPjNskFQ*yvZO5fc%%`ZZ|;2b z`7TyeN(DIzRG|4$(pl5V)1)&Ovbk@~k=>5&-)R>a5U&W^;(N$+M!bn@ZK zBg9jfGb(%^5a}&*U}xL);XWN#(&18>h$Kt}OdD6-$DkcE-d^E)eus#EkGA?p+X4`_7<%fk1^ib zjTzl>K9k<;O)y7}x4h&sn23WNMoO27%u_GBFgOKZ&}ilDLuZ0ZGdU`=6F~#{4zsRO zXDb}0_knPki^7E=Qq?FFpNVY6&gvcK#ubm&cfUmSsj!|w_2rPfwwvmgTEPV?>dGY2BK8MB)(%7HF}FaacKSGcG1 z8I^U_bXKC*w6_QYsIeYBMZ0#LGYjm>rl&OJ0Fh9MW$Uk~jQ%V%!&e* zPeDCTM}C@&B-EL5Yn3dvazPyV^w6Br@dU3!hv8}P3+8s2KsdDe&8FTJuYiM|RdBq(;&25)8J}5cxOz(a@ z*Fs#wF-7HsBvcZs^5uBvA~jx(8H=uzfC(9jL(zu4edCqW7G04UtHM&0caocTfvDmm zl#)%7kPXiFxYxv?oUuvL&*ui}4zb_eEY3+oWD>%)5W%K%l{$psk!1!hS_+)^c#B`J zSm|Lfxe0X1%|Sj|W)cupn2e;R_NUI#(9%GvL zg_Bl<;gDRA1B1JbAwe%I6AEKCY{v+*{{S&)Xw6{+S##y=%sLe8nTDq-$SDqx2ym(g z94_1=sMUGj>3TRtqkkftWF=@SLW`Fv-lFs*8WVS+b7${F@ep9|d(jvKTYJ~YO-*C+%Fej}-zQ`&A9jZ=f9@Jk5%3G08#Dhql7U~wp;~+TSzV!VoB<&no8HOoWpfd}=EM&oNq9UzO zBvke5yw%umXz{WSWVwZzonqg5Z-~2wr2hbj1<=kmy+48H=ea&|yVy@^^C$bDB=607 z(1BjOW6ysF{{R*4QuduQ{H^`;ljr!A*O9mI*o=u$E^U{UDg%Ep#O@jGm|n9umO2O1 z^BbOu%swtu--c+Ye(`i zO+uVaB@QV;M;AR_C?3*)&8_V-Now8+bQl(|?ZQCdhKn_0U1Lzw)C!~F+ezJbDy()|}Uq#d|Qa3oLvz@}D!3 z`Sp7#j+VU1l2!)qymyW!i8m{U-8hmzhp0-Qvaxtk-^0v8Mat5CaaL7hvLSLlli4NB zB07c4pMc0xK_Sd^HOn@vq?{DSDo8HwX-h+5606K?LS%%_mr&-dcvA{)Eh^s9X_o2? zcW)6g2l%ddY^F=Xj7>7KkAx|95Qv;uS#;IxX{bvSl0%2q6jo_edn(f;IjR|wCLoeQ zEp5?o;TB393i1^&mtv|lpjk7HEXwL(XW|l+k_Z|F8foFWIh+_$iD?jhb{BF;UNTUZ zIY&13aa&iL)adoRa5@-etI@#c{53b{=t-MR^N$UiEh|b_{nCCWeB2p<^%_Rzk|bFU zML8JnIp;cM0Q{mCUQe^KXQMhLC5=r;1C{s36S$W&!7I^kv*^F#X!?)N^~rLv{?9FV zl>mf*Y{y?A^^VGXNDa+#SN41HlELdAVfVUz3)$|9c#*mMv2V$Dv246yB}$bXdw~9u5#Zhkf2Kk+)kEbUp)w*#2OGSF1_dRK3Bi! zi&!uPYYI%nk*lZ&;qoyKWC(@ODc)4Ljh%^>=?O`2_Sesr?Q0foRvV~3gYb|5-=E*C zu3C0n*^>gMWtd5FmL=>+d+%?Z{TnFpMAwy=vX6HLkbPtRI5Fmcf>h0p8D`_r;Hs09TI3M7VCb>5!3!nBZNBH#sx z@l;_pa*`HhsE006tqa!vG^NZ<^+AkEf}VIxe|`MmWtx5`1hxk{N`jv%bUO9MCdz?3 zsgaRW`-+1CGcaq?gLfFGF>X_*4u7xD_M0~dwGCW341AmO>j)kK#*>}B`ue1aeUS=S z1O_1K&(D?N=4=$m!FOrB=6=A#;RjvcArdbGRQP8^6R;!| zB`M7B-WMmT!#1X+0>h9{D`We?%n_8OnSieG9Rj`^N&=Hj<1O7?hS*b8ECeN!p-B(E z?;P*q8!}f|qUR5X(icS@#{U3pEPxiyr!mZU>&A-S?DZ7iW=0xmQc^)R3UEO1i;gcC zg1Pugbb=sA+tAL7NjpQ6D4{k0D*1qER%59X_8b(QB}@o@za}lLb>3G zOveC8o$kR`n5Y9wT_%Km;wc_OjJ0?rP6`+ez&Dg>8l}rc>_SnL0WI?l+WEj~JyhN$ ztDiPPmNEiHhcG1Xymd9eU2*4cs&)@!%ux;$Qmze1N|nGCR;I(5$nX1IF|!dRK&?q| zZNjm}YZ5HFz!EOJl7L!ROv7h2AjTk{52-y=A zn4}U-i9d*!HKN5<`OnoVcE_0QzMz9zj}7qct-Z=u2?jUxK)sk{q?HB+gfN0C6O!0* z3-5X$m4KNsM(>e{z?`2#zKtfVh`K&|ki1TFGKP-WDQAN|EoCycIuLuLK7fKr@cTtMqS{s`K~8`8g0G#u1+gwk|`@PL4NCq>}65ad6gJQ%YLd+ zvQ|>3LsxlYyXWZ^=MJlnkl;-H_v(ERBW5WL+LDD01s;vN>kMlH{8kiP0LEbNKkR6x z#q4sWmI<1TP^#_}dT4a=in6>8h(3c~XNes@5>MN-C};aQB}AZMRGF>+0LBS#v~)L$ zc6h9~DtkVFkQ;O3vA-41pX{giRta8h9^>!n9WCQ57n1L1JUF&zd+4T_?3D1e1gsXe zVO~*2@r>x5-p;862T8V_w{D$HlI8m~j1zLL1t_Z@i?75v;;F=p*D&BXg6t)*-=6(4 zR^c`@=?Nf)E)tdAdGr_FhId}O(c?yn$G4v<}`W)!fm z25rPTnFD*@pG%tXNFce?FSL^{?2`S*hyVHHr1B2BrRz} z5EvQa!yDh=jet` z1Sq_V?%kph+JsPb zpW0}VgvFuCR8yhK0rBf}CMt|6fe&n(s!qnktpq3}kUkX)k0_Tt;MqHfaDpwq${c61 zxD~0Dg_KoSRzX)huW0CJ8B}EAxax46JLXtEL38JSPjJ|z%rcYNrBxY0JO1&~-)X&( zitEj*?3xb;0Exc4`6Z+JV$>~6S+v&AO|GTR%@ zW2z6+7nLDtTGGG(Rz`*HNZdS67;b3HDb=Lsz8nl&Q_#+2j)Set+UuNsokGJX5apbf zdl%QQIO+G2GG0;On&(WBy!GGAsapm_q$NRs%sZteBJ~gQ)*NvTCO5vR4+}g$wWAdG2RDp|A>*X_vSc zHpUK-*o^+BdgmWWg4zN?6D>h1U<-qAUw1B1<5G*x zp~69Hknc*@>&7|2aFyxereaR_uR^t0QlJ!^sz3ykrMF(R(A0h72k53mnbWuL>ODlM zm4rf43dKvkMPh;HMGBZ&*?9Hd?2p_q^5r=M(?BTKEd!YHRU1y521okrkuqGlU<9N9 zs~4#ro6I;Q=79|v4ENbBDMxO_AggdM4JQg3#`oa5E7{$&yr8`rir@pjmf;-2t`e^5 zScHB2FSt?(B1(zx)Vm!irs{p~7R8B8%?&x5?|tu@Q9%;`mQu3gyJxQ}-WqLnG7cdI zf4>jcRb~fgt!fHda^<6d%v<<~)TjnZ%%>4H`!1Z#m=_?FfSpg)iVz5MoVA6Gt>qLI=fNqXI;=;t%SuG$&QW@VwU}Bl;z9U8 zSW!R9Rd`j)l*kGo)KD>fd}2=p*H!=zgj?#bn6ZgMOw=TUS9j{s%svC~lt?BqE=D5- zEF7}Z=>UQWx0g8WZ9}S-04=@l>PfpXOI}dMnrry`#f4A=shU`=zqOW(8GMK-Q>ERV zy5qh!JxUzC0pHK%u&I}XoQY~es+tj%z|)UTFA^_lG8GutG#0ygcRqPc>Z*}~T9TC| zif*T?AEQKFP-ImF@4vdKSTvv{WTR9Mr<6oIol`_vOFIk#LuCpEjNHDFX1y!}V5OUf zM8XPc32W1L&+!!wBQ&G~ZoBZ^l~`ONDVPAaa>BNWJ?BJ2Kt1=r?Gms^TG*kQhl^gE zpbCTw6mX23u^1o}0#e)0-Z7|F0xiAoB~M_AcWTV_>qwR&jDvMBGb+ z1mYU$D&;3Lr6VUD?;PW)RwN9pl#Q5H6tkG7z!BtnFy^dTCLBgebeu4juJEhe>(@9( zI&xJ2>bh82IomQ=fxbB&VR{r#!*$d$47Q-k+Q%*_T~Y?B40NDULK(oQ(~Mr5h|P1< zfpT}fmCTuhZ~{`?Tc?h&?yHPE7y%FI&JrCYf!UAXd#VOyoV1`#L~|Y^8L(YA19eg3HgcvVNlHd)kV&V@oL!YbGFKCy zh!&B*k{KHq$|ZAF-@7OygcnzvG$;mn;%-%&QUnDo%sknZSHkvC zx#)U`sB=Y=8iS&{1GC61Lp^E_UU3SQ6P3Tm^|=1uwKGFfIwyTdK#=n8`x=u@E_6HqNA5El_ z)lEBLrfMn@NDjo`ds*Vm;vlY9P;^fI$w=6NPu^lFa^4+zL!KcP(s9hDD`Sa(iG@UH z;m1E%PJCpalpG=7l#{W7X_ESf>wG^vr@#=8X8}`^s#E~8Kuo_>8o~FZrjGYNHH-FO z1(tF@>3AcHvcixWB_C&0l72AbKx=yRVZG!O+^{p1CL`Hdotl(}3ctc@(2F;W69sd- zhb{*Vj{e^z^Z4Ip@hX@}NtpC0W({L+zo3s!pA^6>xL?9MH(q>)rTmFE?Uy=k$j3>V zR2@>9l%q8~y5rO<(r}Gbiz_kKcf;ZO)5Kd@7ees3>@v#GuIdYfh9l@~8_p;nN#YK> z{jMid;uuSTu+j(5Aab$SJb_Ka?McROc45u&TjLwUS9AJ8I*VfAbkMDh_H^sx;jfLe z%Effi?F{TXQWgx%$G)7dUV@wN9EXN$va;=ceprL&uWKJYLh9jm!e%5;jaUi}w?`Z3 zLc41R3Hxv53#WkE!H5c3BvC33m)-byfetk|s!5QJ6|e4pjH7ayU3-tkML^ zY~)LvMp=XqmJ~g7VF4}7CpcVWDMke-T64<_NiM*1>&`9ABv_@w5=PCDh&{=97HDdI znrjcub8{+fU?vJd*(sAWIx_?Nk9do9J6%X@h7yzgv~cyIdbHZ5)Nk~`=gYXD%dM0%S@R$kOP5ch_sg&DC88r z^qGofp-CdHO~&}H0x~GcB{4FRvE5N(9kSTMl16AL@mnm+Kq*c42%{@Ox=bL2^Sei4 zgs@bkmEVD8Y91{fohtnb^6GHSd+`zY)9;o`io7DECwPpg`0pGAl<`< zYPq{R+TrYj5xw|y%}uo+S;OttM2xQ|I51DcGQmA6UQ|pgK=@LXWuXA3gTM!Cm`o%I zBYVA-@wLVpZJ@Bs0xUe5F-BxwRrqPM zD+MPMlB5M_SUC*WhGj=G#Uq=Gc1jy7vnVuOh%L#F%8>l&NEq91`&}F=Gf|man$}_S zj#rpn1d>-qP8m6~C@7jZZ2;xQIh^B=LN&T@kYuUADg~ShaQk_fOjwbU)uu$exr#t= zA73aKjz}0NR-DNoD5G%#yx@Zf$*m^2iFvILN(Ah_qOKR*%%nY<*;!^#2FmR-{7a>W zLL{ZaKv1m&{uD$o*U&oa(r08_jdYQ+O)#RQ=-GZglHEb#C^Ms(i(=v6Sxq7uMU zeIS7us$xA-<{@fUT*@SF5W)r4B%II;8r4>&;2FI9A+dmyODtX$NOc0C!QZbq!Qj~f z0W&M&u-M$zW;Re}c=w#d_=iqjn6A&_jE5U*JLXcAkO_n5(nq{Sk zc7!F!Vs28Ji8A{@K^aRH-^+wdxWeRl1^L-%zy&A($xgYAPh4Yj2uX)ULUv5G0hlC~ zr(2?2;*rg~LKSS12nkpq{4H1_w^b78)fmApLkBIZi*gV#hal(S%X|E$CPJzTKsKmj z3S1OjP`6F*`b9GUNG;qZqVNSohDkv$X0I-!2dGa%391&7a^KZ7;MSKJKsPQr;|t6P zT?xaMVW_t59dLt)A_)i+gIZm|0k=5yhBX3jBqt0~qNI{TGim(6$07>T2w7+(B`PmM zNP}aV(JN6kZUSpdan>bgAvNACN!e~W>PxBUU8s@0FkTwgMJJ@MiyQSH~ zTAbspzR-562Zw6sPWCY&WG+u?is=6UIO=a6NU?&E{3SPkAt4I=mRcBsp=MwV5ygUm z;n$I{)hT3IF|eLCsmoW2wMB{4fJ0t#6s?#;Rs)#{o$Ca+^75Q;9ZW(Vh3L0q)t zoKp|Xsiylikt0Iwem{t);-sZ@5)5dNc3R|?0OqM}9x2TZNNJYltd)bzGXh@XBI=Q3 zMiY{F!OTeu&ZaeSLV1>n;|9>21DjMhv`j`@ZeT7vqU<29S5zS3DKe(al(4*+z_Cy- ze!QZD0wPkEMcS-8U?B~aMAn`$4n&;OV=fsaDN=EdnL(<-dg~MznUcbELpx*2#bpXp zwXM3pC@rk!WU&C)sn_hr93&A+)V~O*;@+m}OtR+Uy`GmOh9OTv>|3fwQ#g|4K1)T; z_q(oQwk26a1q!&kKO;sF)$bh_8@Oh;{{SdHKckozz2nV6H()P5WRQ{+6ylCquJySa znt(?@;zV6>o(09zF_Fv1S(BVWv{(U}570<5f@TyY4ct?ZLmRohn{#qz_l)Ev_YdO^ zu!~>5V4TIE=^hZVu~#Z-?8zzr0Fcd~VA?Y$S1rmPo(R7G0K2Jsp<})QBfa#njKo8A zlMrOWsXHccl;vtAoHew1S9PK$vu7pJcsF3VGB@9+e#8u`Ln25EETO`!c!|5DF7|v3 z__W{lqs6iSC=LdUU6}ZoyDysIu3FL@)A^67{3OX-z*8?GfdSoR+&dcjwf$k-25X(T z+h7g5_k-8Q;(kUtBMPOc5~rmcUysY79Js(<=%yw~o&Nw^0y-FJB}hn8okFfR*RMF{ zdxY6o1F2M_3=$Zrh}ECYBwZ?H(P&39Xb56+ZUahup+jz;5pdr95vFQ$UCX!vr+I+| z9Z`GQp1DW{@2g+s0|3zzeARetX;AMwSl@8 zMumtPLJ0_EXx{$HgoQ9;n6{(o$|Y@4oj3VKF9|Yg`=d7@Q2@Q5Cu?0cT^u&dT4k3( zCoKb8@f@$J3C(m0SVl=Ru#3XX{_0fD?5FXE4-X#-C4^k9?NBR}zLbpxYb`j8z2vYq zt>a;v6lCbOPAFzMnVy6Q4q?#?iIvfmvpoQ&Sz~HPD~1zti1@Ao8M`zP<=oYY58(t= zR^>>Q%f;cqaLz-%k=Vy-p!OVyT+B|&Gv;PWk}IHh>XFvk!J-O-sf@?vO)~*C3Jsa7 zd&NaYkdq0Np@-~4th%l<0BaA67D*fgK|9`Qhzl=p4un^)%prv;ZE!aT6)*zIF8hm! zU^*+$b>e2M5*RhxtI{{Z7P(B8mJUcI!K3xp2vSxtz3<6chDyrwW*J`b2ayo4JvYAV zwS_|RfPg_w3sK{N(a(vYcLtbSCl0wIFa<@vA*2U5I>>-R z=gh$_V$`6QdT#RkM^LB$g**oE5UT(RQiLY=Q3InGRJ@d>poHaM(1axgvpFs_gvLpf z#eis>yfnFW43ndXK;lzj0ZEAM7OaxPxN2+De4@;Oa=GeaCK|F{$y&~7q=(Vqn!s7B zoY8T)RZG~xK(Z7PDhZ(R-w`$Yt;+14HfoTL>Ih3{B7D$I%6tTAz2=gvGKI=icO4>u z<3zYj!OclDB`Q6lfIs7#=N1xjL8M~2UP|R9ySdoh7HH7rcb3F06XqM%Ouh5;fMJ zpUfekB@tASy~-(jPHfKZU>*C;S^=WbbiCI_YNYLnk`!u4JzMJ%Gy{S>`frJz9j55>Tr8=TwSXISvs{LgP2_2v+-1YS3666u0Jkc?#dNzcrR1}k7e!A=7 z6EvKvNEw~)(NQmGNL2wL!w36XCTX}Mh!bL%nUYkZ9BO}vNOGVuys2{50~GQlwd>L_ zBrTc)B`F5M_n*WzB7lK%fmlSS5OQTNS~mD#@(>}abzsnr>1yf$3}S)g-2yU{3&Mg9 zRa4Wd!4K+`w2@>2L6#V+HGE;QN|0e~x8}7|a;LoD-0J`~a#g;l<>In4O$iUH(7-I6 z6$A?_rO!mb9YDV2Q_3J(LL+IVX1x~IX&8cB)ybO1VhA>SYe;5?42qRf+Jsp$Oo=m3abR<_E1c%$ z5NjH8^;F^Trcn+-2X#RD#GLtEl$(S^rDCuMTV+Z~G^{%+5t`(C8eBq}UdTkjV8!T> z6*Y)c6q-(1sd1YzAxI?zEhLg!EXt-VP<1jQ7c&vFWrd8YN?7PDdh2&vYM8ooypaKnzBZ;W3TDFOcg5+i%>nyn&al(LJR<5Ll{jg<%>Bu`p$1k&sci#M*O z9iYsh0fj2CMQBk9Njhc?r96KzVNwd`eK!zyru^kDX2|VUuIdP@F{Ci90Xb?nq5`QM@;vDBH>1d5gb zK<9!JU^;L2=$SibOsE8CT-2N5?; z!;vvvM#5_Ai!B-wX1ei3PM zNUivI$DdK*cT=Q)kv3mrv-WW)mh1=aI&tce;nb^gy$mL9leayenK=rYl_g05z%+;9 z_>j{DBbs4+lJ-iaP=ZtqLphIVRt{VkaM-U(z@R0Rmpja7R5~F&mZt|LDg{7Zl(~Rv zIxK~{E}WcFBuWXEmpT`uayf;@O0ymsAukuS(6Cq%1?cS#$|NdtS^+DMI~HeYm~c#Y zHJDc$>KB*VoPydyn#zsgvYp+b^WMahPcjk48QhLRLqrM0`n z9_UCNCj0xYz5@yrqRGqyFx?zg9}BvbB1-Nf2na|lkSm}*5$Bh$RiXqZ2}qVwn}OBh za!t{RTR8xL$`oqT=Fl2en7W-(6oq_FL$M{tpVlfI2w2@MSOu-i`SXY70HuWJSCzBU zlEpxgsrta?lyC%6@F^YT5TE+%!q5#vkXsBU3>p%9p(z{0FEE_ZfD@4}M6wA|O0LJP z(1f_5lG(V)N~d^SP{3;(xy%77Twc%sG8||dcP_0KWiF}@aR$qmHe}h#IZLFCMI*2V zw>8e<_ZyT43Q9;?!5}{RLu2R@XR2h4n38{RJHP@F)sbT{7|B|kI#G1!Y#Jb5N_V#j zf~%E~WdNjyxa+5mcTQz>vmm-MFiD@4O?P2I9PW8-mt4iumoE*2AS~u1Qs-EhFMdja z{Z}(+Z8SKSB(htDFCBF0ALQjX)Wk4?q0YI8BoaZ@o;n}`qb3)EJHHip^0zqCbik|& zK$aYZ3;aO%w)oIy$cQ2WLa}Jh$rZ5%Di~tuug#7MY6`NKRZG|&pVLVCj$=-1&cflA z_qa|@8fwzY?*UOwKJbO@2Fn&>8{cFK!YW#__Gt#;!J+A)gXZ#}=wW~q^YG|Xl?iAz02I6My`wZu%11gN4e!Bf zG00IFrP74hYx!sfnHdx@gT44Bd(?{+1QT*33R|AJ6akHZ+}IT7d1-^yy*spr1d1(AfcNm9UK06G#!oG^4OLL-AK7YcD; zK7Md9!UO`n?jdOef(=}r9T?om$zuTu_I$98>WD9`4zS+!UPPIaRq?5) z80i?0?GX(lG}KHW_p+0&p!vcOG*9BJl(4Wfq$gX%93v#n5m;sLD`_l6Z0P=0GshMR>~`(y%c)Of|seyPPbH$_aqGAyYeICjzX zi3yu5>jI*en>!#BC>kEMq;wdIsetzwZI!a|Go@Lda1@Sm*12^t?xrB4{Y_3&F(Q^w z`TgN}BQR1INuBSis|$*jRFK-#5l+6*C$Os0{z>XUoLr>wAQ~8);ax9ad?1^#u(*{w zFgGEq1aS{yLqVrCG|hu9SUsH%gczveNzEbQz{y85V@(d{v;>=mZPCyxw5UFd$bzR< z!`Bsz02L(e9vX6o979S5i{~x;r3gx-B~F6krTV-Z zIUttZ8WhSkE<7PfvMx7SIEA@Wk;&sW*(nedOO&Lj6HC*4bOH!l5!Fx`MAQU~q!Xd}dcXz@tG2V+A*RcnHw7tE6jXwfdKP2gc}GZj0>vYxt zB}ZE!kuwVJQj!aUR;xj9sDuK#I8S!W6c7$=QmWoLUymtOVHRIOg&mr6p;M zD#|jka08ouBetC@LgTCaq$t#|wB`Usq6{dR%_w(;8m9ZJ6gEOa3{g0A9FM!Z^n%Zb z-7B2|M4UmHGN^NM!${~Yfn=fhqSsCdl`V-*QE*5Hts-|QmImLag7Wc*e5fvWGsX-# zm5c9WshGtm5FGDlaKI2RD+JJm7dLk>Vp5#Z8S(?1ptkx0^nr!QSShA0Gauqt{i1*n zgveD%!6jf7Bmr=MY5C~!g4O*fg=ap8qpvFqvsgiywZyV#D?p@g0 z5G!gS1+ynJ*os36B&;g8Ad)tqD`{YoH5WVlVw{^@N1A2;PDU%WbDN%0+Wul?m{nU* zr&Mdk%aAiEKq>UKVMRAO!8b9XCT`zKNy;5Z%*7kS9aNoM17wfZW+;rTg7?4i6yyz7 z=N%9$YM^Q;N?>RXk4_LU1tRBl-uw}Exe}!n0G-G43ld>2BNHlR zsZ&{)fB&@PRvOV)(tNOy14A2fOR?6Aa3mnIY3U`P)s9g;ti3+Sf z%&}NdPMNCl7gf+JQw7&55V3q5ezWrE37mT@=i=`K+0VsbJ;w9duxZq~@GZ0tJ&c;Yr{t(Sj_hL3Of9 zQi1?^gxI+^hZoTn7PB&t1lh$|RL&ZMSf|3=(vyhDP^SYWX>=6wxIP@>{KrkyOv1(C zB@1OxxOialk!~7?BQ$NbE!m$X!kJ?)HM3x~) z%6N!zS=tq?HxQJqlP+KYqc=9EAL1LFMyo(M?|(%M{e}{trZ2qIKVL2pcJUTabvELX zH@~N3fw2;h26j4SJ~s2TSDtz)hPNa?p^}gU!e|{JxaZceedDq%V@_M&)h#$F(uNN4ZOqpHc*(Xa%NUmUQQeW04 zNkl89NDcrl`h!nMfpUp$(?$^?#z%YBp0PYnS25t2dJQkJvbBDOUgL{r`z0*@uLD2Bkpf(VooR}4O#X#?J0)l&l- za2J=b9sv*{F4 z-B0v~_oJfc!O2Llfh86P24+k$*f}ob54~Y(J_My}WRbtB+()uf)}<^E7N>M+>lwUh z7C_NBmPpvg29iXu5BVRK_%5%E=Bz13VKP<%WYz{yE*Z#i@}wcC8>%=bA-}S6a45hd zFhF;xCY^pE4MR}Gr3?%gT-;mbURnpL@NxpL&yx=cz`Nf*?&pWZpKf>%f+gLEmuDQ}b#Ud-q33~B+IxMYYxFbXpT zRl74kgdSjohM7;3gIZOY^K*&0<0M$pGb+y2GNsi?Dc5vH2`S%DHKI4YR5-n_Ck~ei z38h1~U&M4Wi=3e9?E*^V{`UG5#q_j;qN)TX5B*6APS^ruU+JsbLi{CV?aTV0T&$O3WOL zr#rX;@dvv_)kTHZm0K|^K_f_t?SR__9x7zXa|Kcf{l@#L7hnV=eo_)-s4TkFr9ScN z4&fOn0$gFp@py4C6)(I9d*0BjaTW-;T|`b=AQIj$7tb{`C1ki1|iILHta6^20p$R(T;ub-?YGP?s>Kyq5Jyai=xzG4)9McdiuaER29kvOa#_~zjz=dE-%e8ULXP-_eP<;U>21|)j4Rc!{dro z@n;*Ku8ea!oUX>bvtq4AKX#R&tVGjSnNJwdv;h7BC(DA3lMy;qUEk6awaIZbm8n_L zPB(SR0SU%Z63HdYQ%8nD0GbPYLqG_BNN7Sr(>0Reqe7l1BloPJ<_tNwg}|Q|RjR}# zNw6AQ$L|0%gmDP66)7ZD#+K8|lrWWxhN)#iC%axS(K)3AXoOQE_9KS~#jW3k6zjE_Nf5 z?P2yPURBHtGzz2B=Nt~=2(Vpn0?bAVT$yB~Wo-zkKRxlAP`KS-SIljBMKZ`!S9t1{ zk6wY3W#sWx-GqqEbCW7UlinZ|P^F`&xx*#Rd9tesv!xY`#1Ur=*7$?!x)2Z!_x<>; zl)agUoJxB!mEE_;DXjM1SE)^nsbYf@vgBdZ84az>Gb=g5)?Qn3Ax>A-UOHe2)I=pfbh}f>`PKJx)#(-yq7J@G7dT5;0KSK=wTv1_x|ujiix{G!rgyIhyB8%>B=73E%fNQZ zAd*3&F)`9A;ZwtmTUAyQVapQ`=?p3xUL)@le-P*>vxi_HmD!WCF!IF!3ecF~b!V07 zv6Qqa>A{JFuw?EgC(MOmOgR$vB$TmT0HANADB>NW+?KB+4~LQa0eZU+oMPv@RN;Y{ zBVIicKuS=Mr*;Vk#Y((<=_4|ikR1ok zEGf0t0V#YXqZp~h%85?sV@w4zP#em6F{(j5nsaf!u`^5@(B_=LO!ujnh5%*(nC|r9 z3xG8O?d&VCvcN$l*0#5)|`T3^Qw|$&=eeo&=STj8lMo}_EyWq$w|tk0BkGt)J80ExI-Ap zYUTx0C=fSV01;&Jb3@u^EcQL;(hNcXNsaHS*+O6-1eH>{Z}EU(bW>xRZWTzw6W;~Z z#;@lRFBvYlIjssba*~#}-$sE5$P4o67%rn1Z6*+{*z_o9nvdSabCXArc##=J?_crl$B*-rWVRLZtGZ?Bq;|;5vKRi z8I(noUVsv7=jG=MDa(i(-`6x~Lb8`4)eU#&3P?a18`sBvD@?@%lIc)23`Ipg@t{iB zr&;-LUF(AoT%@RiJfPtjq{Qi3j7d$F>`l!e7EX&b#A_+2$Ce}$ej*UkR25EesYW?W zYD<5YUU4H#D+idl-t%5NO-j9qy<6=Yl?!8(Cjf7Ix&2nSk{ z&AJ*2lgx-(g(MO|N~x`25K@7tOzt0q1_kOW(6>dz9FTXv#Yri9=>-WOSSl0Rg?E(p zJw2jkG*tn|GMHzr4ZMc{!r=v2Il&m2+N6a#T-;Hs0wCEoAZ+BtAWRe>(vJ!ZDgxJJ zrY<(dOAXQmi z*OgSApy%TU{x1-9DA8M-?y96uTA5CKDH1IL%H_^*h=l1luFaWF2B2TBq)pA7)tF#F zDw%skDV@{fO=3oxa!kl8%ETo{x3p5wsAIz|?L%2t2Y=%pf@A8n7w5 z+=x80k_5<2MmY*s!&jhDMP4h}AmRN!ZBg^p*bj>m)D5O=Jfb<=3;|+C*MJ8}AGiDlV%G3QWY+ zOiT6rMD7wn-v0ovM3p6&B#)E(BujZ8is$V+;y3qpYfF854mAv^=Bnsk{}3^g^1wa#99>|#=8OF~l42oxaJ z91==G;4@CbV&%xDS3fvcvCg`qD>b4D>?0p3Xc;a=K=Y0hO~BoB3XE_|nTkS(dSYFw zFX;>zMnN_tkzL&S=N+wkismiDztU3nnlR|gB?LJ2v^b(%Wylw?wj17xakuA8 zQ6Tt5ec7Q-m3(e7yP_LKc$D|ecM|Y9L76UtP@5D|v0*8E#aUgL)2l+3BG(8&yn3+& z07wAT6W2sTieai)!8Wp|3n^~&AXMf(bnzFsD$^ELzEFyHN5a5*)WkEDT$7|sT);pK zUwbqofElVZ65Q4D5j7JD%vr7Vj#n0tuTENSXM6Bf3626ryW7Ge8m_!R1mlCvboXsT ze!j4n;UnGzFCz~sP)jHzjrZ!&i=0!n?IP+dV&!HzUb=6Nh6ifA`ov1-&BFz+F%AV- z0BIc|@E|T%095mEg(PJzo?t~AQgc&tNXVw63Y91p02=|jqw<6=AR-zGoyUr17Y-EQ zOvzByX7uy%g>$-YU6@J5VJ6R_NdVZ3b=N0j+SM}Sz5eq;j2F6~nyExxM*jehu!b+j zQ3R1Ef25+CvQktubJqB9btQB(03ap_K|m;{iF!X@NK9G;d!^05pf1BGG#UtTP{IYE zp9DyeDz55!urLdqqOf(Yt(HQ}FocyF z8nfHVAnKt2lr4kKQlSUr@Rz+X|AgnL$Y;22(cc>KsQgpd2i_#}d|`jM(oq{{Yu_q<|^jHNQPI ziTk>zys^UD_4)TqM&FjEAQC_Zq*I$3U#dbL7=(T1lZGHKRGb`Fl0jcKUq6V27E{295@&l*MFk%B1P$sn+ zxa-J5;q0*&I85((c3O~yi`M(ix~vO@(S{?h%^zfyDZ-z7!pTOVK%@sOLEK&%S1|#{ zd-^O+FiAp8%)q(j;{>x2fSa5t33{$hI!dyFpj=Qmel&&6=kf&_g(H z>X62W#yvqmg%=bquDWO(u$vJC5O=-gs+G0o3zu>(HHf-^T~z9pW~ffuP+-aB5ZirPxk9bDQl!#fl3qLKBS;RQgw zwxm8_plw<|SB{axgOcSuKyUIwJ);N;9j&x`bnt!Do5J4u#_PS^C0^49Ijjvq93jUE z(Q>ikxa%-BK8E^OB8DC8Foi zH}$|2L0L)QZ^*)Xzh#dS$%0C3ovE5*iJ6l0IjQ3c>M$-7wz~-t^|zX+V|zymTY*Ze z?a$>A<;B9NII=6)%s@<{5Vj(fKUmCcn}poPw#2Ss#m-9{>Fn)Fwk|l^ZQo z%v802u#u_T(u|{ zyAa;~skm*Pg#2lBma2_8-Vyal$x@vl%@?NN)Di}DGl~j*BMO3YOk0RSCw>WXuro8# zq&W%{K0G?)=AeZ!L}HPjul2d<(8J-7q&Z2=e($Vuxy5t{iBw9%qG2TE1v-K^^7_Qf zh*oPvD&*jT*O286T_P^20##bj;{kOr*a>Myi95r3#~bPrRhkG8ua|>D(1egIz_fFh zkYyN4I2GaEVpE(1)N1hD!0Q!~CgaxZv}JBB=jjw}F{0RmMbvZgLSy927?%ToCW|$Z znvs9}RL2dSL1oDr6YCbo7E*ITIEoc6V3zd+Xow&-ROFWa775vN1%^!_g@@ z;?K7K0JOkM5|DDILPJ8wRZFyX@>~7Tvy%YQxhS4zPrC?NofHDU&#>aNz~3Ui{g-dX%l@x z(R5N_Boe#WG)s^(I8yCr>apiMmsxsJtW4nGkl<;)AX=TR%%tKmxl+hU%m)7elu@+$ zsk+k(`28DkXbMENrb39PbOXo`KRjdh!$2FGug48ajh0e|&tX1950THk)}LtcDsU!& zn36zG-+AhgJ=udrBgF9}kR21GevbP>)9n<~C6`#bw)^Yn8{L~W35OG20CA4? zKV0>bI{73Fa@RXKoJ_>H&0`ehfFdls_r9opDZgFpD;2bsK?$0$N{Y1b<)teT6o*A) z#lG-Pf7geEnO0%8hAL5Mb2~xOcPnezZD zNha@hZ9O6mq*@af2bq;ey-F^Utfiga+`VFW9hzZlswLy)OBsyDVPXqju_H~!(5Ne6 z5)%g5lGIo!*0hD>JEA`G^4|Vvz3x=O+?+~}?bM4?=L>_#8r(7Wo7*FqWZ1>~o;GUhVLppM&Gt|3&B1Vry)H=*O*)Spa6oVH-X7b?{R5FjjWQgl@y&` z&K?xdF(ETJz<-h7AwEV*sxLy>E zNhC=gox1t;@I*jDN$o{mkEY|-$~Jl|aRD>F`^&);ymYiUB$^T3-{-u*G|5z_TMUE0 zRW>UYR9BHq8_-|p)|F!biCUwbQcjDNirUj9Am&Pz!@NMC4sPV{t2}lxi%GKbs_`b2 z*qG0zea!g4Hu9ckKiX_Y5UotbHV;BUBgUhu$6Y=ZkAS(Vdry=Lq6qsEE!0Tqk-o5d zKijEf1gsPtz?zrqcAg1W+2=5`J+Q)Iw)yAs{2#TS>S=Q&txTi@(5#Xhb@>lJDEpxX z6`RMB((Jt>=i%$qD6xLgrc%`8WlfH{aOtA#;Y)&x{h-=Jhg+uNd?PrW5D#mm$_BLp z;ch^BJ9tBTkts*C+QLXWXi3&CKqIH&RVUjFH2NxXa|cOtMsOYU29XzVFKxhGEaT}` z2N@QfbdWrOw0@J1wP}_M=3KP9kx(=)#m11H=1+=OaqVC?I7IjkvlktFK1#`3c1-zd zB4Sj!(>AW(IDz5Z(~|6`#k8=1={MKBb)3}LpJ)>$)hs4(NiUH^fqSC^5_wY{Im67t{FXJR_$i+}=8wW+360$_Aj^XL|@s9@!;8=J zM3Fgq?ml^oA(!n(Z7>;=Sq#o*X436@fOpivJSGug>9MeY0ixQ`#V!e^*4o_a`1_SI%$O0y&i9dlE2 z7U5VYfDvu)!4~^Y2KeY2P)vgMUiyr7nPi$4auL)=8zs(-n-4~$P=n94_R zWX5V_?Zi%60@0OeA^!kr8W3M`59C^gEAHi>!Aj0FIp8>4d3epVFmtwXV!nf8ZFwt7 zR+)hSi#>I}8Xqqh^DEJCFh=*i7p=o_O?(!9_5J+3*L^tE&LovGNNOHTBhEC#Y`vpV z&NDDOS#mbC#ekC}f~T=j2GlLDH}MhML=W;_Ul2_E5%cZ6W4K(Yc)7?j&PB;pMqo=Q zwJB}aBJB5$!p51ruRoaPme_-TKA$^8k$X;SqlVhEiUN^2M|w22_~m^T&BE=aS@A4! z-u_CgF3`kIn4lCz94W;sT6KOA7t&)wwJPt%XXmbc#CqT4tqPp9{{V4$XzgGqDW>>@ zG-MZl#72LOEqL<3s=E#soHW;aIImtY&ghJjvChUX^WWdmb`d2~(g<}?%W8Dz93{Z7 zRDv!LOp;FOCZHCC-NnLuj2V)nnOVWP)OEfj>X?O>Q$!ozeygP?2&D%>WSSj+nB{ZEtDpmz zRm+eNpcb*bQn3>076=e#;a8qoC4iHd?;k%w5rR$8f&z|yJxNd+Qm=7-xkcMdLR>?t zN|)Ot5(|M%++o1Nk>{rOxKfE}T+nRp)eb4wlvYRzf6D1s{{UYv)r|nSKu5pOc1fK>-EpmG!k)c6HX_ur)19_A{e?;}ea2H-r_Yo~ zzV=-WWR3p-XoenINvcbl6VHCIxQRqCXA4xha)@A&z4_LWfF%b*RP(X)1(Foni;kT6 zMH@{>)riGo-rL>M6SRuxrDlFQ+R;Nw5EYv2h)k0$Gsr5KtkiRUw1p(MMbVg?_HFj0-SL2 zlIOGpZYHk@iN{3Phg2d|lKt%3QBZL?5PBW_l9wR>kPCrZv-HL|0)))_c&q{eZG=oDAe)96hjeJfnj1ar??|U0 zjMtv-D-?nK4IrG4T=JQ)Rr}Fgu{6$f62Vfz?wZh(rAhK4A%YGV-v0n$>cpi!C!FaAO|zq%&9Z}2nQtliAqO&tW=EZ0JVjH^5}!XGol~v zH3nDlBg07fXRcY-hxV3y*=b&U*-0ua7*>JwalQGNi}+T95UkENp>7~%GqzXD<<@!v zPEVP)W+q`OC{hWcl612ZrNy4(NSNWocTRY_$;+t9IvnFnr%f)GC)!-92~r9`CZIk1 zj61kpLEoyCKWa_1`TjpW(`Rjfp;Z}0vkc2%s&e08K=p)e0yLG-?li^i;$m&!Z>R<| zGA0&#`sFM>B&`Y{5NO7<8WBoXrSEv$ut)LV)lhLIuDhfkA?0X`TK6+^n(^CMsX;4H zQSPxRu{Af`a*@9LBXSsQH@Qjgbt%Kh(@5{*V-cK-=VdZIshn1VqFXx@GgQ6rV^G(v z+2W^!Y#31g0CKA09p5h*&og6j0!_upl~k{4%4wJ;QAjyTgVnd5ewGmv!Tix4(0Dfk z4Z2O^ub+*w7fzM!iqaLEI~2ZlU`1)Yxo$9rfd?ga`$fn31D1Whus+0r0Z^}LiAD^zai4GCX(OB`ofh6b9onZZAT=mIFy{x=EyxpOg%<3$~s7UWn>uuE3 z*ijBK8~G?Zi8KU*KPa?G7qLAeGLSAzO7^m16jG%Spy7p5Xc>sD$EKEQ?NVDIfO+(dKcRmWH2(l;<`uGK z1O{>e@1TWz_(hw-2)Xk3`$dK)9Y>!De&%Pi&c1zF}3B)s6=!f zOn8Bu$7s1+wfjeikfvJK-6hUq4=s4{wWF+XtZ=gP2N_Th49M>uSDdeW^0w8{#iFJHatlV(O2A4~phXf~27CBl&M~A#;WKH!_@67re{Ys^)hG24 zDNa>l;EVH$a*Kiurr<$sik@cBmnD`IN=UC>5aO9OU9I7q04{8gPYs_`SZ%blCo(1w zm1_Q-Zh-0l*o2PZ+`%A6ar*hIWcx`vK>(~NBAHYkAnp~e(Gbea_;eZ=`}XrjpJMR?U$kz?V~YkWiWC;aZ2+0K@=b?>LJ9K-^=m#Ogn0Nq?8$p z%71QZGr!EdCn2EBB`tJen{545%Epzsb8}?cDk;J^CB&V4l9!86Pyn7!cyPd+Q*6rL zd|ah!Mxcn;1C}(JY?Qoaa!+~M@4^^Ug=VsRe+VVbC>en@h9Yc{%?8MhAxbTH7yv^6 z38=)n08*KO4*oEOm$EJ{aD}FDQxdlEfrqk?Y-pQ@#rA4TtT^5rLb;QoQo;;?s7@^e zn%}}FgsyW;tvG}hIjYup7)sa=L~`+IC4yY?fLN5UfUHhAMM)jhs#sy(%pLqgH8)Zr z%O5q+=eepm9b*Tm z1b7er->8Yo6VdHPID(`sETp*r5E{C0`$UfkOCl9dAH+Cg1QX}qG28HlZ?tQe6ck(# z?xAAZHse>|JXmm`WTfsn)g`t7_3Ii&P;WWdMe|-CX-&p3DeT1qm3L{O27p(V=7xPH zv$~Tjx$x0%J3z|DKo{^DMblA_S<8}nQo#fgpiA-f^DlD%a)YPn84LJ zgFd7^p1yI*Q-*jl0`B3xp-TY0zpG7zkFIO0C)$0NgHsu(CtRwx+fEV2?h?E7UH<<7 z!?n^6sJDFWE$}=5z7HVr8=YXip!s!11b7es}@3G3?WWntS#gLTd zN=Ox1$}Pqd-Eds2&NG=1x#JULDpGLafXOBjfXc?jH!3sxyfOTHQC-cUMTp%*+bZ zz-b)rV9|84yMeh*U$k9^bs(sVxMB=UaJa5jj~N*yt831km%ITYsm$$eykWU5Zi;^N z_iDW}YE43qde+>bNFs|$Cy9K)HbEnAsH-SJ%}SRV!FLU;qByaTpQir+E2ASFkP|SB zrklmN@s4LxoRtM|4Z>{9QYNL)mIkFtJfdNQX09F_F*OcJN+7PQ4O4N)ucR3|ByiN5 zjqVYdGRS0*6L3c85_L!;Ot-xJ77~^zL#aB^fw6-JGLi299R6RmN)#AX$lh($Vr4Xw zef|FcNsCf03nYiiZa8(m5CVoF<-PRigib;NkQU@>71r-vVBse4gxd`I@29S2P)^zm z$qI5B*9U*f8ML)SnpAyAUvqoT$RGuKUH}Qf3li!HQw)|9znx!nVoU4lfPbjQFNuFV8$1E^Po$d&? zC>*h>w>jeFYId6363wfM#x#Nhh%V82Sn2Z{EX#hbEv#4OZQ>7AGPY8)f4HzW0Tt$j zZg}X3?3t;mXFJxT=L4MGLLBy-!tyXvq^OV*TG>ovQKe&1u3CgnDk(CLJtGp{s}jhW zx_Q7(S~CHcj8B-*VMm(KV5NJE#Oh1dh98&}d7y|(?B^jwW>bIG8d_17khL=wiV|F2 z1Ol-Dr^?2Js)=_M4_KLGrE>umR?EaHVp}#{)rb~C=XjV3gkqO2S;(RsyJ$H4;$@(l zr44QqZT?f_V^=X{Me`EwE)MudFaZml;D=%c>Aj5A0g*|pCLl9XI6;ioe|AtINi`K? zc;5@I7Pdg43o1}_8bd-612twAZc}`pIE%!o85u5;aoLa%MRJ=dhU4_z9EP3bF0OFF zhBVUI{PWi?i_>RGP#Kf~_?ac!gIeYbCMryvEf&gQKtgv_ezlqbO z`dT%eGw>ah#&%KyCly%L^y=KAxMwhdh4)}+LWjZFe0gnM1&;jjSg<2#i&W-Axc*`n@YdlCn{J8 zO1Y5d%<->`bKz(=T^!o31N-{-zn^s$Ck-`*Y{UQv+yq^(Zi)msxv7M?i6Z21FN_8X@rRWHH#fBW0Lq$L3ZSTPfCE|NG z?E*og6JN#PlG({rkk;p8q^gmF#joLyj6sSh$u^{3p ziAN`4;*g+0%SLKIHQ2YlF}Wt39QkR=r3G(EgvQg7amErbn}mt7a)1_p5kT!iQ1V0r zWr$p)k{r0L1Y#VVa|o~&@Zae;O_rvrgS`QThXpbm>&E;7a(gLh4w9#+C8B2$T;xB& zGu|aRmZ=E}6*{#caJw*3G-|Y#&i9&nXGm}M04+cd<|bP1tDVfK(*&UlmP;i8I^38r zbw(W!N@Tn`r=IFar5+Hw3R6=7&3RinXj-0A`a$M`Gh3VvWoNmmMCF!94DGr$ILxNS z0Kt_^otP$;Afy`xi8`z>a9Y{tU71PAe!zN#5l_f}PwQg)KH}4kb$i}>xDuzHH5J&g&pE5F-&RLTr&2=OxW$IkM zx|iYQ76HP=V&MM(iQ-SLx|!^c1Bja~VJQFtDo7ive=a^SwHneStk)KpX@TYEpUb$m zu&rE~*qo|XWu-&{Sd&&~;NXgGF#zVa!+Xti2A4D$kaf8_53QthG0`e?xl$C6GL^Ls zemAv6IJ7A%&ziHy>^FMj2*eN~Rp7fk2`_^3zxQMIIu}LWm`}oNohJA568KbJ1kw zl>ielXzzEDg4u_UH}H(n8HFmY?-#fm@6=?dk+c&v1qw+E1cFI-ecn+wQ-dK|mlW5G zCfaT{)liI7fD{y*uE)D}{C&6xiDR@y)mQ-sUYY)F`04_^IJBk7s0>S4wEkn9u&&bP z3(c0JA1s`qVYnYU#x%}wfU3-~TXMW{=*UWE0{3zbznC1eHwzl{z&{!kV-hRdId?3m zC5NJbuEVOO7>Q^VAyn3cpOxAsT1q0QfxpUJ-KQ#AlFJ0pB~3@@LkdnRM~Ps9594;+ zAeptCI9imQ;P{APMNIL4T;;y$3ENWAgb<~ms6A;{v+sDPAd*y_$2SNf)8(vvetBnP ziJNQ|DFWr0=v>k$ICO`L4ig_= zNWXf6nHJZ|7nDY6{pqfl0QuX_Cx0cW+QTzsIkfKx#*MQ~IK3m+dygv-wIwo2hyhJS zIN$b&8ZOavw~D0bJ$LrJELPjY%gkmgA##=}Ai2^Ap!1Rki=!VAkDj`3TPbIIOM_B} z_fVpvuKxfIsCPw&3s7jJcx| z8+|>0u927X@=BCktONf5BOj!g8ZU}4G+1So5(LD?n9&)H7NZ9=USddn@r&D_K-F%6 zJvb!ga-^O&iQ_6pspy|82ugz}6%fwxGW3P=s7}r$AQgocs4+foWTnw?nKxw#W~f59 z7lmzU$pYs#K`LpOWT3W0v{X7)4n0zi4p}uw@pyb?KQX~#@Dj*$vQGkI3Wrq8uJ##H zDnXV?LlG6lH(d>Qa!kd}N`MlFlu!npRppKsiCHde_W_76aA1(sj%_$bHk9cKYVWJU z@|xtFmb&N_x2L6(LL0^#-P@XB!nF*&vQ|h@??E&pBu@+mNrP>vJ<_JArD1skG(FzX zGF3_2fB@`B6d;=zi@0*4>JB=mji#B0Hdhg; zil+C2`aF;V{sF9U( z7>c=gVMJ;Za=LwYs!7@t7N7S)JVQk}U>uR<0iqF)#UO&5iWh^+rgKba(;24B_Lmq? zLa@m^L?Gd5gJ&jn20Y1fN%of%lHyW@b*w+Sum9nXApT!N0P&0-1on_H0{agxLW@J_AsV{N{_o!Bf2rSXA%xYfD6%P7m(FI zb!Sv-+Uc6batn=G0HQ`k0mI?`E=ZY;N{T{o?68UAQ7k`8E z8wXOD(*%-TDbn#c$7yL(R=ErzZ9P<6%376TQ;kq`$RLrZ@Q9vR%%#V}w35z)sRfsFP`jGTa8 z?6TT))Bgah98;i26zCGwAxaIMXN)j#8Y%~YqDr=RXu~l(+{22noK}q%BW6r?N=a@Y z!8JlW@C>gnWX@WN5)_xOa1bC0%^IpZierqJLHb@T3_@1hh=%6VDLM3t@xfw}TO$0U za~O47n@rwP&d`y`6S?mQ z=P;x%rEmSE!tPgSHH5GqvVFbGf| z=@wHGI=fD&dl{?>&QkmJgNeE&6&mB6)*^aks0oP$ zIw^z_(sE2h-dA&DZ7dXkoXAAAr@Z9>?9AlreJXDreR@@0k)7|V>)~p$kMqo5FG(j{ z;@7Y@h18w3Fc^%bQ}PCC1q7Pa_s1J()owv{zPAlp3!Q%l0iEZs7HF%d#Dx}&(0 zP<%24jN2ov!M9slI!OYLYA~sm6_RA-<#NDNeF^J~6T(!OnBRh+rSQe0;x_ZI^9 zRII$M*xOida>6^NZ?xWBjm?&wGcy-G z4qCzW35nZtI}tT%%+x4nQEf>i(~V(0+)fd_`6PF=3mJ+rMwr?cxDaF&&_CN>+v%u+W`96%lsu`WD9byQsU5AbbzSosM0)6F=NsB~06rS1&BE zyvhtj#nmOKUcXA$d@$kM43rNR$F>#Y;C%}r^NCu7@4fXk|H;rXbTtI+e7&#at zE`(n#2)eR%*TiAu%bD5B2n0S+-FmU^nuEHPXoF}m#EIXY;aQ_W_>@?`XeMS-Ws{RJA%|qM8qf+Jf*+5d$up| z$4(j1atd#2t(fnY%JzQIiI}a#`hBBBXo+n{fC$US!G3rqAa4=$&{xyJMlnbXT$o%X z0>ZRoQ~pQB2Q3a+=$f6Pl>AC9z7W#rrfAMVFl~cikXu+@LPNvqnvJ@lbcKB(PYx0u z6m?Dgd?+zaQCk>KcZ8noMyQjug03 zNvcUa2#JOv;;9 zHYW_iTuusQ;Uy@a?hg6_yyh3F9bkFj38UHo=~Omkko`-n3h_jN|+NV zW^R}eqHX61AtZ!7k<5Fv6`^Q2td1cG-tMI^33l9JF(k$U72y|0Nj#y0!XltpFhRp1 zK*r`CsPj&xIXDjM<~~q{qLHeYB}`B`zmBB+kVT-CZuij|(SIlM&P>BMm8U znJF$SK?qzznR|vwb2e@eS14CA3@X%A=TyiPD%toV2r|;WHma2n49+Y`hv2 z=~B=%%C8$mg=&OdbhnADGE&XK$x2u#w;|T}sHoz)MR&MC3K{ZH3Cl6{AcGw(anvg{ z?s1m|JFPSX8rY^OWm_E6hBA6X335mje7A|1_N8PA^ly;6abu*8IKPs5f9!(*TOhz=`Y{iobSTqR@G5#S?jC8d<3XY)v05Ky> zgud?baE0TGk(re#An_)iuy8vtP&BGE!6?x;3Zq#`Jk)6lMM0{WZ9%GMX(cS!WRt;W z794YOOfEm*TCol^42KgfKL9j1hu_Jf+<4=ASO6VYlmoV5xmKy#>o zX%&qJbVQt5R9!fdo(14wI)tW~8MOkYsfie%M=~LR{{YgMG=IekaWe=10JJ|c@Nkd# zrYvv#SCu>(nTb*38xLdyIt8i4tqjv!alC8*=#MNN5&o$(rOerdDbzc4cwS3-Bgru! zS#Rou-eQ#lli5tsoe?K&76CIzOWB{RKr}TW13<<|hSo_{W`$``U~*4Hyn`7gd;GKe z{&2jr(NC1_h>^6Vp6i1E(m9}LyEIG2NhQ@WK=6PV?E(Uu`XWX*50qsJBp-+kAQnGW zxo*`T>Igt*n4d@Vh2@iU1u|0RV^X3)S$;6#hoT~xT8*HTh6O}%4*=68Zd;QRk0eoG zuy2G2USDJjPN>ne6jBmYR4sT@OlE-xB8XxNfMU=vB)BWxtk4B%$~G3QE8g)rKe@Pw z*jiSASEgduDE|PsrH)a90nrXyO@K(5jarQrm4>1mFeY6r&Ei8p*DZLFLIZQVQK#zo?Mk;U)R;K>|lw!v8 zQY>#o;k2fuBrPFBLlfmR+bWt;6)-6w^=2lwhiw2d3Ef4mhLT7Ur8`nowz=NXZcB=9cVUds zezz$f4ssf#-W!nPnwjBeBAB0P5(xkh04z));YtI80L!nv{_Ql%%Rs zM6LM?QS3}(!8C|<)tf-lbkq2JK6&S_T?U~j`%bB!{AmD&EI!cw=mx4Mg}wfR@QHrY z&X)a-82qad_m)?L?jS?5EnsN}O!>Ur@)oQTHv6MsZ5HXIZ2ac$dhXsj}q2kf8bSM|}DX7As zU;Hyk;9(2TP>{ThLVUfLg(u;hm1~$diJGKzQZAw1VS3*Xp`PgM9EtNFfBbO2D-wYCNxdYof8-A^3y?x zN!8xagNXe-6%$Kuqb}+2t z-s1(URrYh~vO}ba=?B(e?pFgB?B`~xueDL8SzwYX+qcu0k4>CZ=?luJ%9M@3ap({0 zt*tk_o1f&AmyJ)>AS?jl4ihBnnIRBfgpt> zf(%%3A}kb-6@%d-3KOu@!y=U0uq_AP2B?lHzvP7MNz&a(sW;6B-WqIGTV1aif$~$U zWn)6K1f-2?6cwrUPAgI%f>Kw4#MG)$AXK%X!`Y!#4r$3R-IfFPB>5JH#5$vl9a5Dc zYb1#zXwbpHYMeL?RI`v$Ylk3ki!}cL>Q`x>@>4Io?1Cb~+N%p@P#JRwaFuyMkeXVs z$yp<~u3$#QI-(zj;H9q)r}!1+3>-SA4;@zaWCVf;Yd<*Bv2^ONOQ03f46Q50ECqPR zLRY&i zYc!N;+0)bxR4qd6loJYSv}%Vnvb10^G|M7lg;~(1wS1#<8L3RywBN^mS*%vd#;Gna z^GbK*F}c*{F$6h`0!dpZVdG{HI|Ytn0pcl*Qag#FKgn4u*_={~Eame1#7`8#l8d;y zVIraBtnL zZ+NJt>a{@xT^IU$0-_FO3TUgq_nNA1;%f|oDPGLrNphvqhrIytRYIBK_=EgMqM;iH z0-L4xg%V;%h^kb5?zp)L>DaggCDL-=;b@;esm)07HO6p`_eNT743f+To{iA9wwIo38h!HlHoHrMfWT0NTCq&o2d zD4--ub}as0ydo!xt)qQ+`0lPM5AvyNUkv6aeLS{nK@e{;r2~V z&yu-lC<)F7c_cerlWQ~~sNhVah`pl=jOs7k&4y8)x!Ms8m?ldFDw2XhAvwdI4Za69 z4dqdkYCX8Ii|LB{=o1FXl`RP-bb)FM)N$b|Ue6CMOTG zu-UVZcrF;EkdooUojqYot2-+$hBAdPOO8CcfqUm@>93X52~NkFfS%4;L#6ZIKx%*O z=yybk;sKf7!s=(bm>@tguZFYU{ux?SSgbzAQjcb%lr>DWlKx{s9SnC7uhnr>Z4hx& zsOb5bzj2`T7f_iSF>|t-bkWg@xH;KACmLT2k~OfOL*?h#DZSqc6f!bS ztrf*nRm>k+2qJS{RGDQjoIBhK#tuCY<~Z6AEmD%@!)i!|0mV>rK#1RpQt^^yzEQ-K zj-DJ-am_qcc4bX7ABHWMklH3HDZN-Sr$n`5@Czw?!-iO4PN-BAstw2G1nsGWC8eoD z{{UEK(y6L`Q~D`RK3G$tY{L39SC(}N#W!UOQ?=17GD5*SfQ)F9n%tKpoP4zx?1@&j zhvlBBxg-qGFC3D^DJeV;;s~Zw3P)A4_L9<&0d6L-jUch25GxS1l1kr<93UbX20pSY@Sn zf~XlSlJlDro`N=EqL_>Qa1B%Mial2Tnh*Z~BD|n;dnp>=XuNi12oqIEJnqQ*$7H4K zl(_!tk1!#HW6?0;KlGse5o#bynpC1}5D&^5-T=7@&8#0_(oaN7*qDSBc9RG+dQ>=Y z@COjXkVW+kJ2|nJt-=&+iNw-jChW!uuHK1x%pnBri8LqzRCT;Fc!sBE5CPNA_L7~I zHc)KS7}PPOKRKm2tPSj%FcVToc|@HFgyuC&)NGKLoHY4r1TB@$6uqQmn4Bl3{{TyK zVpbota@(yM7%dAH;}UL-GjU(G@1TW>dZ;{l~f)))TT!L;9T30=M+%?Ufw zsC+C`G}+K51!6ML{9HsNF(wv98z%eyH3-SxR#53V%^`Vo$(2!48$&T0Wpi&Y1&Z5P zSNLi2zB9 zT*Rr>w{c{ZnbQmRlmXV2-MP6%2MTGB3y<3y-Vhv9 zby3dPZ0xlp?$pKG#CBbbuGa~ah3s-hVpMnm6cw~h&jP^$uoC5#QY(Lk@WP=v6@^lA zD-I71vz1bSfB3WW+ zphG{%p@E;|RWehwl-GG!!#MielvEh6%j)fg^DNuW#ys!KlRg!oj;sT&5N zT->bgL@;cswvaGQhWER#wpA673qO2AVbWCtY0NtN%F7jrEGUw%`^F4G)R@o;)XkXR z?K{RT9aLP#{{YD!YpRiyn$TOEE*^zo+yYwbuNji^wwt3vr7?X{BPHjSmnGe*-&ofw zc&Z$ZXr)Qcq~%wg8Ub_*q%{i{TV`xI7~}oyOu0Z;yjqSvg!xAuULo}V0E=Zk2(0`r zcyEtr*TQ4LcYo45GE}gsnBb+hVv*eqZ=SK|d+lOjtX{jlpGAZI?R)2-x18&#`D&EC zlYqgaCvBK5>V<+;reQ0=(9-#xK?lwvAbeMo9ZAV6#9?J9 zD6J#{6osKAFsZWu&J#{1u|U_IH|wJ2JVh3`9+w0I-yr}*fotY(CO{l^3hD?(WdaPe zlrRV475J*I6ya9o)YJ3j;g<3StuiFE2_T3BSRBW3F6t~VYpz(?(^6$C6r?1OKp^Bw ztl)XnwFu)3dBEZg{G@AmceK;y7R~j5dkuBDh!HYo5~+JN2~itCQrdtNUW5?u_P;o! z)+hK%Q9^;2HRt~TZh6~G`^Am>PmG;|!i0%9#ko0wasjDhKuN7(+JlE5a62;%jo*{{0XcPjOx_ z(vuRyE1MY7wk4ubI#M*PiFr~;E<|AEgO`&fM@ZO^E(nB$Gtjl5VnYyEWRPuL@v$R_ zB9|?c0idl$_JB&GUfB|N_+2rv=L7!e4;;Ma^j>qTv}P8kW6p7!Xy;ckjb`W&HQF>r zos~2b{lqrnVNGWAQ#ISsF*`bJwK7(a9o`hxX%`5Zjhm(%HYMn7$`>0FbC{Zh&OjT$ zGzJisl}c|8vvWcw%?;fL>kWmfFv%(1xmBg84I+4BR2;zPS_1K$5*=BAv8A}i!!`>t zm;)0|_uz_7HcYjg%XHR^O<`S4#90GI^CMsDd1kIg*27C9Dpo38i!d%5jX7%&G+uL5 zrpirlabee9x@CJuNi#M^cEs7KAY{v;LO~DW^t}WxAPm)u>r}Q70q`T&6@Zum0Moql z@k*NHr73dc0MAl>u|}{9C{}JTTwosv)Sn%DS~?{vb0^^n;330%t|rqY*#XB&U!E8)a>L6aIR+J`bn%`th32Xb{a zQXTzaMtOxiQ>gi+B}$_ver!fBMy%MW9H3ssWBjE{qh! zsqc~-mUVKWrr410U((g%r%XA95kzQIm;#$cu_F3yKM{0!m8TntAP&Nx^l03+bx{=Q zgEQ)saX7a4a`O=QDXK#vCd&pZ5Rm<%2Qm1KfrmuFtQjp%K5!tJpti3V({DvHMVbYx z+LKg1H1mJF0Y$wQ-D#8y+mn=7Bn=^j z286?fU_v&$^(Z+&bEt#KXh+@H5UXlU%kdx{0tloN3JqH?YR}FpfZCcg14*!nqQQ8T z*~9Jp9vuxarzn>>a}NRY>5mJzYK}h*mm|1h=gtuxexF@(8d&7-Yb6AKVp7srFwIA5 zo9hL<8>iwZdz8n;9lW64by3asree==8EW8=2^VU`#|Q>$&ES~RV;k~F{eKib6{#u& z5J9o<5dQAXLaQjYpYcfjTM`2^R^*?&Q2AsumH9O^h4UssSD)6puk59dM_D^Q23PB4H^Q_0$Rb)lS;o_;ev4s6Dh@97mX_y zEfRffN7gnau`eo66%_}0jVlKoR*7Rb2Z1PJvhYQN5u-e5T2T}Rv-m)ivQUX(ATTUo z%4wColb!G-3`=_=A5Tcqwk4uco$C9eN*IFjB&kK1s+JqB@C%_Zmt?d^B+wGo*3q#b z33YE6vje#zg8h-T-$KRW*abF6h=qYw1w132&> znf(6yrb_l3XUGWy4=CJJ1sdyL7*~5jtG~#sJ&nQA0iu{bH$J)QyuV>~VwCH`%ghsC zNbtWp#vakGGIB@z4}ft6>;T4wKJnJ*KhT>YEER`IAYVGGZ_GFQj}UTq(MSD**}`Cd z`#ZOEsh-5_U=RK!M)`|vAM5E3IQ}R8UV%cVvA8_2{{Z_tV_!^)QT9t>A!Q>3Nw9f_ zw&T+nZ++rOlJ8CK7b*5n0v(5zXT<%E;oeS1vYQcd!o9%-1UL#&B!c{S`VJ6>jN(Cz zYr2=SI5SKZvfas@d*`30K#Fg&y9YUZ01x|;NIUEgKPV03IH>-6`6c2#m%usKqDO&0 zK<~8KFZ54m00CH8DL)exlcm0E&`!-XZo0^Is97(b2{x-K5a25~eI(8q5N zocSqcV11LDG^h!0QZmoV%>6W2RO7&l{FEI_*)BM-{GA(h2mvT0h9Rh2=< zdUcuaeDKj>AvNF45m8mM1LXxHf~6vY3UbjPC5ofdG$xLLyK`ezoJKS zI^GUhT}-{5?82r1C(g)H{{Za+SM#?IJ4HoaG!NoFd-|>-&KDT}0KDMRJa0cdzx4N$ zl2O>c%al2tJ3~oeJu1(7zg33k@zap`sD^Hyujw6kkEeCtu(Q{};syJtO1XzjbrNkSK_8_lk{hXVhCeTt!ZQ4sL zMF(8GVZG;!5iIrI{z-*84+jNO286dwdQN?^G9v1Ey9e3OLv12KCcToVDW{3w@cGnn zJZJnpM*je{0>B^&r04zzw|y>8V0%f)_IugIrAj+V9ovOVP%XWk&i+?uS8+UG{{RnF zMo`8HHOPX?gOU}P3Xk~l<7S0(xZVE%Y7A>%7>k9vlNTBM9sD%bRYHHVxJ37) z`^gnboQDr#Zk{EFj($cLdp*jNVeNbM1jyDSP0jR9{eRhMAmqU2Vl6Pg%ynp=yK&CV z`}r#t`#LW`pZ@?O{{ZzC%jqFBdu{COf>xc7g?DvpirSzG{vkcXi*=1fPJaf{TsUB4 zcFcCT*D-#hCA0qksJjIeM#q$;X+)1U7yIcMzRco|bx*J58k|Q9{yZyB$b9}Eq}!pg zi2ndmc5I~(osWlF3!6HFwQ4w@mX*KzU1Oa>p-j+YuR)M!sUt3<$EJe7UP-^yY$;cF zV_}|#sGv0CZ;R7(SbHt{)jQZoT}+SsmVfQ=@780E>e<>mxTm^0qm+A0e9o+ z7H_jiGHM^1M}|I`U}FUIY#*K@-_y!T-rDw}n>IoT6;LD>a$EpF)J2B@ALdszP9BTE z7zeJTn?wz5AlMAnC)=5_(g46==o>LWFGkcJe|RU^;Qs)bT@=|#fB?Zh0L`ONZ?8$r z6rc6JF-y#>9uTA#VI+7}o*&#P#0MXmQB8r;K#rJO^2%e*d!YXSSYm=%IB5Z>9#~eS z)y3=S4em_U$L6Ho9-9O=)C1Q!8Q(itBrn>WYRP0u6?z~B>CdLZ`FLx_``#u z+=6#ertuHH_Iyb?l#}f?(#WI0l#A|%_gXU~E$-AnhKL6{oA{-EyN=CSyl9d3 zhxdA268ohX$qKg4F=RZ%(_Eqmp-gC)aMXs0XKCYCX`UHGH!7IXP*J4a5FBjs?=jBy z5ZD{hFs8wfTl$tH{{ZqAHw*+0Q#v8ar_o}u*p-0uRNfFpHVqaOsf`ksI%>eowH|Qc zplGNAdL_h(lDtE6dL645Ee<4PEo ziB5O$5G8C&-GRGWHY72v_j2~PjBHC|3p*k$N8K7x#1?i+ro5v{*n%M>?&lg%#1@$* ztR4iQ9JjC}R6E9%u`M!5y=fXy#IVSz?$P67TN*SR~V4)8TK zjVgGoyo@Ozuq^xS0J$7;jA7eKjxaGKE?)O=3$TreY->c07mbMwNWI;Ga4Wn*;zT|H zve7AsEG*U=nlz)$Ge2)F{PRLEz_9g$i7qmYI23>@$`sU0Nz9eyVP$|tUNCt}iF@6W zUaibpHZrhsA%o02wl)wkttbu|ivoP1v8+if{Z_?z*L(Y|nI>2T4^Z6*z_{HUcOk+zy;2t> zU1d}oUAGSI0fIXecX#*TF2&uQQna|cySo-|f#MFu-5rW+ap}!_zaLpElUXy9bIzQ- zpZ#nLr3!}O^T{j>(Ch`LMGip2n;fplupUQ5Z+}$)!F>nE#nxpu4ej18gwv#<;R~pe zhtenI{?gGCX99ZLC9R|k5;nTe@Y6_kxUAOhm+NK4Iy>BJDl7ND_=|VGT;`zi< z=cu6@&YRHg|G)~2=I-gtlb!l+Y4DH(@7`d>m+lj2-%G;C_PSCo@&&B3YCk%KeT!7? zd7U*Gu|2z`dd86+R8UI%D+4-RZ;0n_vHlu~E_Agu$ac}k|D}58>x1Mh@5(;Cs~6b2 z9*9-@OJ1kfp8{75TH(xT==H3iemZrsJy-)#!%IF+hWHy!Lz9*dQ?0kYX{LOuUz=ZV z8Ja8$WWJ37qC_|;p@i4t4Qf%6NIHd!M9Zx^6Yz^w+p1?qXsOg|#qdUyZv^kTpmV(D zm#ZwhrM=`cQ9%itIWrb*pqO6fOytZ|B=0UPRQ3ReU8-nD-PC;?8Vq$z>DZ)+{K6uYI2Cn# z474VeG~*Ok5rwy%c4*2JTc{K)>QC4qwzXTzkRTt#2mfZ+dc(jFFkc1dGIAy zoTC~rgu+yur|3405jynuCy1YKOg;#XmcH#1JLRWLzLsFL{s-CFefiINmbN7=4hqUO ziVa^xT&R(Z&Ibg&hf^)Bt$UyP(#pK#zm_^Em>Gex_aI1}`P|-Y7@oSc{wuS792l|% z6=2h6OUxkRgnIhF^Pe7l5Gq1Z?d5b`F5J8!x0ORdP3qd&lLSo-J?jCfT$wNo3 zmqk4)&%uk#a7%K_Zc|L~Q5_L>p~{y}n#5qpm^Rk9>KHdua`=84+7oK0+GY5k;j5~4 z+*yWS2cku9QvZ75wxP{LqjDG-~aGYvA2d3Oa zJhnIr>KBN1t#maiACilNU-fD=e3!775J_ngW%6RUr9i}|N7v=QB$D>&Lz2JiG?$j~ zm%}db&DVE=Zw#SBx(a9C^a>bP2TP${p`_Fz;gcwbNTX%fSpET`T~?AqK<-3c9WAuN zRL}{ch^GHXS<+@bC%(W1+2|H^} z0(()YXl+j``&N2xgQww9GXkYZ&0XrL4>86{wGD|oV?(bFN>z+=gY3ZFXgVhw!0yX)mZx@Zq8%vR~i3>KfZ zMY-K1DE6Yg(7hMp1Ioq1i+GFd@R932&rL>I<1Tc5J(wmo>*$unsWAQQ4WQSXk6y6fL!Ra|!@(h*Xi!wt{GMwpnHH^KN z$#t$K;HVMbe}crzGS--WQ&kW1L5w;R;|fy9oWFFXEX%5wU*LIQZ;=3#E;RTsCXVD2 zyhwF%8BZ!Lu-FMbL>!1nSopaHo{vib{QyS>RRpz;zCRbk$Z}93z`sMaW`CJe&hmN^M?U_U+QFV09{gMw;H|! z!wMtlOu;A_UCu-Va#I0X`{C)AWWzih5$wMOF;HUSF!$Yg8kHD9B0t+nvn5hsPQt}AJo!mzNIy(g-0HTm1U_Ni%BOl7-Fc3l4f zsKa>4ZY5k_z9JHn-@cX~dP=y~u#7ilP8{~)SpyTDXHx__7ro2;SiUO%^LZQ zff6hu0Uai6*p}0m7#k{=(RTrcEtH?97$RvK9{fQi92{1-CyT%6HKt|rR$_)?h8V1! zq^wGX-Gn@!=L8cEom7k4AYp;S`6NWF8tKRM=>8NJMQkraEbK@G!e0)@N5oGb*6G@S zrY8cejL*_We@=~Xh2w{iC}P!^M(meNP&oDFsQw&RU5r*HpE5&;5Pgd($tR-9P7!D4Qo6#vPejO9CWZ;=VQqK+Jfc{yx{L|q zdt-FIFqB8J8Ac9XRLPeP3T%<5;;5NwY(&HGFx$=Enn;*H(!e3dTy)anvxBmk!%@LF z!EhV1wgB7dKo*ylF9=1d7!HoN#X&tITViUWU8Igs?I>%g`bOL?;}4;FMv8gyEd5hP zTom*(N2KX^;AQU!l9Iwk{a3h2#(s!zr{1@nsc-ng88YJKaDt)L3j{);q08O`MEu0z zm`3YovB7XIhNRSl7K{VQL(^1nbxj6SIRiw2J!`&!Eo*?PxeO2 z38Ql-h2g;jwu!p)rtW+;c6sQMaA~|>e7G3wWkZ7_zH4}a;1`B7)K#9T7-=jPaq_BCWq zO$Hzm3-nhOeKc|S$r^_d-qf4 ze-@wUSHYi4cpwA&t#eP;|I9Mfu+{i8nL*q^OjLTB*~X$c+kQ-$8w~cM38P2J{>H|V zINyz_U>+|1m~Uf4_%g#k*{wTx?}#Alu^-Me?pI=S^&;Q-YjxD+bT8JDk6iqDF;W`7zcmw7-U1@O8aUn26ehD#~PT=nRWH zLW_N{1@n`3UIw?)dpT>dBG6r?N(Ey+8ME=Iwn37plUKMzQ+T&TbMTxW(s@EKGE_)X z-q_n#+w?tQ4L|irhB!$+H8Z5`RI$FMe{DHV6xaxZ3S;m|G9pb)HElOkJuhV+0UyO3FzL0U;72|; z*a9@$n2Fg)OALazfe_e~ZM}otA)YLR_u@6SkXR3;2@-8$ez_-MA@aREwP9clY+5^k z=&Q*diQ3>+jqsdVUYRHb5&r2<_Aa$pdX4DHK z_C_Cn?V~KV_}8M4gbu#f5@k%O8T1wwwv-Ec(j>KRnowd66Uk0FV;5Qigax4P5(`tX%*zh+;j2S1ARpC}QE+1vV=iNaoW+Z6 zHiI`JDv_US7-Q&=%vsi5DRNNlwBYALyM@R|1*ya@fIMPDMutFi{|p9G zlHj!KatvX&)Ir+8egFt4goc=5#UP{_lAA{6IBS!>%xlP&wE2bLu5bJWRnE2E_g6I4 zv&`TR?(WlNczEu{@yGTw|A~QA2bTzT+ulmfqE1T4qP3S)KepAD-4d|}LEep{_{#9< zOqExQj2W?`_$u##>iK4?@JmRnrruBfGB1b2L^ysNnWM1wKC+V-w?lfory}nnRz8Y% zp`O74I7xRb_w=~z=IVf#L7<)u?W)F_CBhIlf#NRl*hVkf zPKx}$@9h|$=e+SZhT3a@h|$3*N;mB>?y9d@{{WF2q(p>HHnJ~1K~G|bD3eIuHCsmw zbV4QOa6l7A;aL^)Ga`Ihd|j7u*hiB+6mt|A;@g`bh%nwdS3v0ekKOvV*69VA13^~b zE+>e*ktJjgrRSbJM2TbJH{#=Jt1fVt8CE^Q2|?to83%HC$4Heg^ro`YAc^sMMa&kO zDMS%kLMI<}Y9JaUcAWWgQAP9b5W=RF7K09}@)#ia(#(z3GacZtmDm=IpBpQe`uR>2 z)5}0vA!@YWWoOG2uhm3hCW8_@5FOmjLZQqRLFm`sgrS=TxF;7A^bGTpjVpxLrev#> z1uhfujkrF%k^wgrS(a8aEi0NXsNv1d4M+D~PjnBy5l)lgEdNx9*{KwA8_1?CVey>kjGpTw7d0nCK)0E* ztMhr<_~2AZRHkMY9e4)bbl|%mWnG;+ET~hU-cdg69A8%HJZH^Bs>) z8VpEJnvm(ybZSt{s79DVC9M%xk{Xi}FVXoz0i;%J9nm@;{gj0m2M0hcOU&{x@g|Zq zs6iv$MACJaT|%XV^W_AInGec{JG7T!flBBZ z(KWOAHt~N*$v30u?HIatJ?M&%d(CP%8p-kzG?}&JI!W`L@*Sze zN;je$h_ww+UVnPjP|Ar_-5co;cbfp*j)dzuN5K%ZNl-9PYZPMXO38jg~^yv zA!m#p%|B>($m7|%F3ZG&!Pjwds5Zk;N`}rT6Nv6IF(UwlaH?x`qRgM{2_=6mG( zhvsLkL_kjkD zZla#`{je-lZRy0E$K?C6gj~B~KuL*=vSFQYd|_F{m8Ibp(_RGsrU;{cavE z*YT;|ykQ>hMpoY*bnwc|U@M>7E`&}sI~W`vzntuqz@tv1)J%*TpB_^JT}wg z*N`{|g{@1%*+%9ln`FIoFZ@IZ?G78g95W2TP`FX34iHfu$qWL&7v4dnn7D7l)<78f zo-AmqPsh$4j3102{P^q04vGkyITmg=!rTsGBCs{=#w0^-7|ZHg>1eXAPk7zmW_1%6 z2O00ugb-xXW0@cAaf2XwW&r4Qi`mE=ul?G-KlPsrfKOh34x$$lJJ}Xo(EqniBdUId zX1d+DzU@5lxs+y-nYgj^IB{`66FmzMoiL@Dm}vFQKu%*&6tNHUIX*ing#H+A-rS1& zg8(wS#eFR|K|#ddHTf$EU-sM2A8~oW+#{LHEVA3Fn z#ist?j)1REc#|lt8@UpUzf^&2EM`~(=yI?qc{C9r-;iPviHr!#KYwuFMIh5G+qGjW zdwMs)D<IZcZ;UlE=7Q2N zRoHb;lRIeeQkZ*8t^-v(qVm)%2n)H8E<>kkHZx&4#BAnT9*xeEM>r%j=GcQyI0eIuho-ajDOFXyL>7 z6o|B2aoya`)9f{8n;w>*FFMYKP-@Xi#>V)49AZP1Ut!tqTw#E%M)>$OFj9>{F^t(+YkC_u`{2|27bT(NTT80EktT4k)qZd6rbk01yaG%AS zcF5XSKYn)@R~5~M?B@I%ylnrq{Bx(nYTL;jt5pcu2*1<74P9*2{_gA{g09eHfqLrC_Gm5wBVcG=3D zA2e2AW*T;CC7n&-jCbIs(&54sUZn66>ZfB41|a()EgLKGr-*Z%R0s2F;=xru)J1je za|PH;S+#X}=%dO7Ayf!u4rmj$mQPmCQZZb(`Dn+_7KLXY+r^whzj z^7$FrCNG>qrVFVuhRSKC(w9~=zmm+GR`Gb_>ihNcZk&mcD-+-a<*6@u&Urb?r&s1W z8nZc)RA|{elX#BOSj|x+!}D%P47-6o5{U(R-Xlt6C&)0k?;DD2Ap?oTbK)H+Vj~$J zCuo-_(}yy)e0;Skvmt*0q0IZbmcCjnQ?nwvq~Wl;H{}4i)0dZ(Ty1z1P78_JmT9{B zn|aPw9(&-6zfM3$%TGMvkj6ozmeU!b+spETCM>GZuaWRsG2Qwzx6wZuJ$79+?W@|j z2mNkuo{d1FDjN-NQW`m{?u20=9difV`_oHOkdD#ntz8iL~ZJ z9nU{lo}k_h4a;Sf@I8Cc^l>ZS^)r;3&`z^Q%TPs8B5m% z#|6I4UO%RT-p*O-A;mj4`e7UsCn3J%e}I3GTGEhD$v;5Z*^ALJ{>r#6Q3Z zhx1=(gBIw#T8TbS%|w|N>qF%2dkUJr7kkzJ0B_v=zg=}8aV7;~SLj-b3CApeQi5OF zu7b&-@nn1{JqsQI!orE$huAaHQ0>r<{tN7ZQK}ZPMHS~AcLE=nd4fHqu9TG@<5yVKim(O}fUU}cks}}*A-9cS&Q&!0rvE{sF|UnQ8w4 zVt)p{JyE8;BdwkZZ#J@BpU>a_LB6`jG0kID&kfk!M*aubA1X+EyDCQd2bhujWJ9AyM-|;m&RAy^wh`0+?_=AIw3zPQ|&LG z2b)kw1-D();qhr=ub)z%o4Qu0j}cOdr5&s}V!^xpcpynl3O;SXA-T;1n``-zhc4UL z#=a{AnS7h2MJm`8*Fa$6+D0}eNDCPo(`Q^gw<5Pv#)NKm2r)HgkqcWe)+tBb)~Di zRlr4o3ZXh;3*+W5ypti*170h`=N9w{f33NI3VlN-)GD_}E5ozCCu2YNUu(I1i#|;M z0P?R|+mk`vv^OGMvMHi(oa^vb%HtXuUHR#UNFNsigJYWi0Hs~EhM{bvcaCuy5r2O< z7?#G{i`u9>`jd53yc1j`JS7yI*aegcT3SXXruX>GkBW(`?v7|e_La1+$?@z_0OI01 z%{m~1&mWy_`5)j1!s{~n_Tj76KS1%fx+?354-mWYyl`u{bqa%3D2=&aZ-jMgoAs%` zLINa;2kdJU?ugKv&`F2h@M;JP6U+k9Vx6*E0s$L*?jJ^B-m)tqi|}Y<+8?TnE1Ttk z+MP72aO3lxXx9Vr#SSF*;49Ntr8pK3y7*F$_-cZ6W-oO$HduzP^|go6FFXz3`fnNL zYQVcy<^d`w&c&a51A_}oQ{(K&Qf@^IirO>6IHTE>-`+lqKtm3DNuMJLTMcWpok$7$ zk(-O%l?FI?g?r4k4jpd8s%Y$>Gn2I8OS!#ea4Zy=Y!ks$Dp#GJAEkj=p>%MXP(2fP zhu!!h4y8Ls+bWpHp}XlMGllCT`U$DT=GDfrw!c0gbuh>1A^isF(yM-M?zqFd<#OMO z!}|$|{KgFbsz&lV`Gt?nSeN?6F2ohz^|!yM3Uvvrre-os7{{;D#;-H3e-B}@@HCw{ zE{+5A&qxt{{gs&M7gI(lk1Mfkf7D=Ouc^F`Da9LvQP@Bo242-o?@FOS7U{sX{B&5Bvdi<7SZU zMVc%WZNj#>Y^?u5nSkN$=1kn^XLZ%n(Z(UMj<;IuFm_xHoRpHegmqS;cTOZKhY*1yxWW4?1hsCxrUs>Z&IJvW=qFH%#mYh zo1tw`ayU%HVX;=Rn>w97Iq&WD`W$z(1(@^HxC$S5Vi zsR)I7UflUDD1Smn^`?@U7%;1A5Cx@lNmvdz@mN~;36u|!QL*_K}yek$W zxJSV9*kJ0j_P1$tnXH<@d(B65%b(BcxcR@9nSNQqycjpT<+P-v0v~%@WHMZ7#F@9Y}>elaz{AN2WSbf)*1S(*>S;pv*_H5u^M}av>1e zHUYcp_JfjMw7fJ>7ZlsSj8LRPMH@9u$W`V038MDU>*eMrz6GFX&{~YCqsHa17>pDt zR9M9GwfT7Z3mFL^%BDA5X>>@tRh) zkOwJ2a%!%YU+Ntg>v)STdty&b#f>yML_3|{&@4VaoNIjd?2EOe{XB)(k&oT{o zJqwvB++dkePIWYBFf8uuC3nU3x7j3`Qu+c1SL(ysT{)7-f|aE$f(h)&U#$RWnJHyi zr&r-#*PcC6HUxCZw}P%P*;kb{N6Hj2sV(;jBocS5v_n!9f>u|g$*81oNQON%{a3Te z(>G#!6tz?$E3B?_mUz7Ahd4+rKzwx5!{yF9{Un>|AU|)ac$1v#hrVf<0 z`fKKS$?kosunId4aXPt5sLC(x*qy3`DA9!vL4oGu+vaC=uhjM1$#S%8M43<(MlJ)X zI)V{6R7s+YwyzVBJ+Uiee9vP@;47+S4sitkIBO>%dR)`e^}H*sp&`}1(;tK!XJ@6# zE+)pU8N&LMw#s4*613EEh2x*MJCqpcoe@v|%-S}_ZF&J8R9Z+^UC?1I%fHfcmJNSK z(@g$>yPR5)5^m6($srEl%q9{f)Er8{97ww1_nLfQZ8_<|5uh^AgS5x+&$!2v{)k*_ z3&}0kRsVhp$fwD(NBP(l|Bh1Y^9YPxY7sk5psg*+)5vkWY{V? z`(~fXwrD%ePjb%s2VlK}UGd`HV))B|(|M}?A7F|3<3zUT@7s6wkHm+de*hl8>3@Ln zFFhy2pAuqHQ@(2^f3jYSoh>u$IRTPKdZ>xOZqK{bq`mWkYd1_iaU=*+UAA1YE;K%v z4Zr*Y%!Yp|b57j$5{Vr7yQgCnaHqZh0f4U{^-mPtBoQ4FeaD?y<-Xe86?l5l-9-Ax zDOCvghG^6^?kyN8dRZP29R)#(d*vk4fG7Pk=YlizhD-uTT_&+#Gpg$7uW>pSgYl3| z-0Rp}1KAmJk+Ji0J}Pr-Iyz2rm_L$lks`03m-?~M8@vR>QnaSvmtdAf&s9Qo^HL!0 zVL*FnqCp_>ikBCBC3bwcb~RLkkqTz7OL&PGOB=sT{?`P=Hr%E(eIBr8d!~a#%_h=k z^50atNi{iKnpz$MBNr~DNIhusIKGmlxXBz;_Ox^)+-8*Dd(;wq|zicsK2`urR*Fe4b(ZOD=WB)}4ZKQP5(I3}PRA6qkr>V|5oF z39JxhenUWrc42KT`6zrigMjuwMzExXkae&j@d+}c<+FASuxV@_Gh+Cv6>c#BAOkpm zljS>hBn9R;%-$MFJKMbaMpxl55Yv_fl99U$M|O9V?e-X|N8*ny0ul3N?si=}!rJj( zAxIYUcKe~7?$^39_4ir`T0dI_nX8&@VOu_gp&)0)seQ^y@c-iNCiIR@296iG^gqW?Fg}p*0eA*%khl zggsSy#E=!g^K`B|6fIr@$C;A- zOg3~j1PngHB?Q)Ryj~Ig8!^}X#Yz}7YpLVidR3?&lDfQ|cE5Xn=ZBb$s(w6Pb zG1(QFo2Uc>KWSikuKFmS6700eMVi+rYpr}@Cz5dSLl0}zLRrep*uC2O&aH^B+}`@O z5sga-5t1()@t_Tj>SUi%zWaj;h9FvK3~_iY&y=O{;@kRxX(yIkw=+u~QKHUqX9 z6+W7R=bJks5$cuq|A?SO#IB^^2{;n-z6KsKaLufZcntcW?g60u%ABnhzv-+i-chX| zu0M@Zw&{nifXY?UUGbxW3$-A1ihLe_@`;%HS>Ldr@e%dF>5=}nlx1Y zDQ?q2D3l47Q#OBrddVH*O3A?WUzTC0!^5^Pd7TIsWHjb1+TUTJ;D~#}I4(I5mKrZG zu@^S{E7#&`JE8=sj)KxBaPZixQu=lP{#7mpbvxZRntmEJcb-v=Iq567r|i1+^8Qdlv%_O>8}K zlrX8{(o)NbgXSdnn&%gns7(IvN$eJbip!L6>=U|9qRK52p!ia!`FCZb%;Mz0L;6CT zEw0-$Z!Ee5m5~Eyb$GBLbZ|3Y@zwAKDi56!e(P3$_LnH?F`X|#w`X5e`F~ID5hm8ws8+vCDlj=A#ZG7jR#-cb(BYmE*$Y^FC1AhEjg>+5YN#vf^Y7ajAv_eWX% z{*&&TNY5-mDR@PYQ$QaGh14=0y1+YMgzbr`Cz^azcHU!c_GG)o-G+yG*E$m2PC9u$ zSEv&%k%|&7>C|1JqKrA^RXuCX3iibdqQ$C0Pk$tVmVZxMmE)HRtDr}M0?fRha@Cvx z`Noe9zU%m+toH7r@|*}R*!rK%y(g~Pz}BFaaR&@mq(Qmoy?I}n8 zBMo%rzRXR1mpdBFrngm;@s1ZKw}E`)FWsKVBP&Le6KWx^`Hd&*(j4F7R>!iT4;jpq z2(-a7ZY`QOi;<0CgQD|W)4&K0zb}O7Xb-X<(W?wla{Zx%7?2*|(;2m_JvY!pV~|(B z$65ffg4FtM_cX}A-=S4aE<4#n{`cH>R^#??(%Je_D$$bwYa)!@4J=XD$9Aa%GajKb zI3znj?y7tUN}|8Nzu2o}IW(Rq>IritjGarYm^n4BwJ$x-o8bY(;xz%I9FplBo| zq?@+^L`5t6a@XgK6mE6v(Fe>DaS`{ChXb-truE5yuFj9ht1O}~)`8I0XBAP?l!tqW z1!fPL4T8-iy{@zEXJC3Yl&?jbb88p5 zuI@x|-Z>8?N3_)#OYN8fr%`ARYbpGzcy@5s_KDsR*w;PjDeL(U;U|@b%rsohG3pvk zj6c2W7gJCVG4NvL&MzvF{9Qei1?dH`%@9Io_mV2KlEp~dthb%lA47CwHT6@#oRD}h zG38W%QI{$2J6yE3=A>q^`VJepj?5qZn0`nD62qoS(K$c4z+2jB?`<}gmH-v2vd4!d$%41-(sL0D9f1&frm?MYidcG`JR+)qsqZmE>H$w;6^SE(0;qcy4*lq?B zWEh6@>~Pc_>PV~oBM2VDQ92h1$a`D-{E@XYRCa`}wl2296aN9i0d*y;%B5#n$uA@Z zxK7GL-8uRdTgQJ_9KW!B@m!q^Z5VMEA?g`pHyS!m&MiZc2qOUER8>sp()QdCj2Ha_ zD7|u!w*(7#A3jVS%Qon9c(ICNu_JT}uJ_?NtAIr>xz`I*2|m&uz8N1pV(u?(3Jc@) zljO9NABldak&mMf0b9ewRXTS*eIw(6kRFE+5Rqh9v6`zSVI5^3@FpaBZ@IrvfKXt4 z(;S`JW3z&xKGuKOb;|gs)3Dh8PU#1>uolU=&oqr!4QXuT-4N$D<>s`EwDWEn`-*q5 zU(KKNWCae}|8|o3n*0MCycA5`>VFhesRn!~b%@>dXjDkL&e9tVo72Kst*7W@E;4Z> zE;&var|}H{1#;X2xC=m+x|#yS*V4SoHiLnQ1!V-fNc1QJqy@S#}?GU`OP`qoD;kC3s_f& zuV0!kb%=WAHRDXe%C(8vu@5{12JYw~Z4R)~@F4_mcq~q!>SeJa+;Vu^Z0BK}I`; z`kwIypaqn^jdUMZ+3@k8s_2fteeV3;XD1U#rd@oyjg03wi&)yh-b3mT4q6diEhMSU zB3le$PDXZ z^d34RIpFoqOre>anyj`)1d{T#-JnOuPY`lqx{zk*2QdfKr+{xiE#e=-%&+&b^3_G$ zI3Xd6?oe}hJ;rPN<$MZoi6}fKdaYb$-vx#r?RX^LM<_XLtGa*M?)tMTpWwirl4q;fDj-fP5QxfHh9BWf z>LG;2vvRfU%}U?BS)+;90xhHn{5fF1#W}iesPY4UfiAQNktKOG6$}?xt~39&#LM-P zYs&Xt;p5#f1r4ySL8;iF64pvEnlj*P8lPQVw~+fiiLR2kx9V8V&dDcYhopB7=5cQ9 z_%$H1(w}KCAc{ZOYB2M}wk`L(Q?_L#%Uv^!88$eTh+4TfNDqDUdt8kqZ>T8i*k5W9os&ThlYR$OoaHvPZ#VBGugnh<#}J^{dbi?F`(nL2K46MDk2_+R7J(QgFP*W zVsWt~yqYKK`tdiuVAX5vzuk`w9Yi0Mb!NMvIUcXZ)zfHnss4Zo zJb~t%H#Q~01rkz!dYX1?KFaqaU7c^RT$l?|CWuy1Dlp??hP^ z1sF;&*l&;gB|Yx;b!#!V>>t1ziB~=u`_V31_;fgy9<1V7xbkz}AEne+Kl&@p{w3PW zuqtanG+MkjixsWSh4Qr#i(U*>8$c~@&Zuy~%QgPTTv3V6l&i?>K7f2N#s08xbWOZ1 zCdPsWw8%)Ziv4hVL@PxFyz|UO^BUMIZ^$7a4NnNjcgt$}A*E{-<$c`~fD-c9#fDGZN!gM*EdZwn%$@P6dI%FBE z+P5*OqQ;RBC@|Sct{^?N%KfqecCw+2A?Vx zu+~k~QZskm0IV)}glcFx_Vu?~=BF)}m$9A*19*I;eA+KnZ2R8x)!d30Qt5twN$@z% zP2HWH>W3E0_bb8|d{z0W-GS1*Ikca??+#I5@K@opFnHf+jP(hCyin#3Rv71`I|120 zid9yhC7{L4IH^{m-5^=)_;V-8)wZn@Ox6{~MR%mastl?gbWC{E!NV@uKG6NSFyaU* zb4Nl<$vfvSQ80hJ*j-noKBb42@w)tB{8*-HmAN_G1tixfN7_s|-{!G!@qfKlgd&Jh zkmH6&Jc9(XeS{O42@d1G7ld}O_Ki-K1g!ydg(6`^x(i4R~1uhYNhh_s0ClI#6i?!+k7#_LqSh~ z_@fadU)pqxH4(!Ol%nA6vD-C!TK7P(Ix^txHdc`d4sDJCH_=hC==#a9HPe5H&nM6FQaR)Ox&q0@tvw~f%ng)km2kGA$ zGM~f5v8fquo(Ftm+(a!oFS1AWNGmli{OP3*^lJag&0XEyu&F@zWouk?)9m9uKFTE6 zurrux1K?ud%LJ~&gc#w)CEw?M)$VttE;xG3bIsv6hwUms6>2$?s4cVfL|m$oRB?+( z!RCO#0l?OQFJZ4#%MkWxRYPERN-&}2XF>zSr@aM=W3tCG>nf1T#v}hIVWXKCbWIEee z2Q5c`VOV<`eRZaq=e7bVVa{1a}CPa6_f-{_Me$Tp4w#=DJ1rRVgUtUcSya zcarLkDQbIha`p(WcZ~@zhcD9E5!#{G|L*6d(GouF=j|DcKMAqLE`?65WQSfVLFcL9 z?WCoV7r7OC3jcdg;5B6%LfrZf5P~s5*^%PWtIAbrg!%LGnMGYp#Va}x=2rr+JG8CLk_hST z>N=l>#z=M7h!XO+v^lmP+@T9}OmA}bf}*h$7{97QwAn4Y&wMp$4xC#BIvuDAO`N~Y zYw*L7liqs9L`uvT*T9oATNb%3AYR5>8mBK#y*xa_oA~UNg5r74NUqkbs3HvTU3xgK&vul&kTCOoOkPj0K z_x(7b&*V7n>L_x0AcCZDf-h(v2IYk&fbmUb)_02<0M_NA&LyEV^^|JME2;2(Wiq0X zqh2_A{CbGb{yS@`f<`C)lSD|Hg6n>%11pLG@T(r}I2CLy4vKrJ1It9{Hf*opmO}rR z!s6OqS6`X_^K|>Fn3SIEH-@icxy?EELK0$*;%Hgt2D+`hq-rme_FVeuytl>#IuW&Z zu}eJH<34h*LqSu+*3=Xao`ekuXDj8nU^!Ruw!a%@ANSyZTZvs_1dwU>tsljFg{)tF zL6nqm_Hb0RX#L*#RI<7fzP)zE5#CnS$Ol-N4@fSEv4{E(@C^Nh?9hw1bu9NzR?y;t z>Nk?0T>$#Uov*z)^4fxxG{v2E?G|@kzugOFQEpVX%%G)3lrO7Yxebg1v)iWB3=WBt z_=Zrd>QbTXhvDN)y+|61kO-QI{x`*E5PH?jUv;#!)=kQLy`sd`2=aw4?*(3zyS9Lj zeBWnQ^7(ybE!ZFMRs!f){wXfv0_Z11@@DEIITr`@GBI$3THnV|d;hmT#S2VD=S0_fxLf z<5{Xbn|rrZf#nSpjl_@s8QnkW0RDPoWipgja#H4$NR6$Jh7N*WT&~$8E)NXFKMPOC z9GNYJI?WoIRhIg;3gS!|NE*pD1M2$2IlB?qv+Q#8J7dg4TBS;Lyuz@3LwIMkWAa%| z<-138acxay>b4_>Ii`aR!gl*XH^Kb^vFO)^U3U=FElOCy~mEGPzBM`WbNfJDI{ zCWm8YE3xVolTQ=J<;DdGY-wp_z<_z~O(7g^aBGb0HamFal+TF6no*uf4%UWK-`}GO zHVQ7hyunnrHT^*FT`}M~WVHE1G@W5X zobXsETs0c8=lB+x5y^nn6_= z7Z|`{`kjk@N{tFl^wSb>k$U-z_&MoKSXjgDOymCm*gz-0cqRP?a6p)jqBR)=+&qar zngaHe`GG2MB&;bZVtCM-gT@igbeLcsE25VViGVrIG5-J&hzKXVf^!BV?MGuFGqWRT z;#5HjSV~d}V?$H(1;{ZxP9h5eu;AR+;%+k#Ps0-tcqio`l0isT3R-1%vGXR3uaZ)M zDK(>5)%6<11wu`j2a1sPbHicM>tr(q`eb0vqgax>ta2o+L`~W&o0lm`3A50?mO5OT z#uUqjO^-EKGNhagsfr+iG|Kz% z)A!g*R)-S;t!9Z4c#igw5+W=+5LV&#nr6vT&%J~I>JrkBm1-a60T$9TsTR5|>%UZ# zeV@d+j&>Pny?_AfCS$|`4Wa}T-_@A(C&Wg)E>{q(iqZnHi4W8 z$}pHQY_bJcFK1vTP5$mMDb!pXO-Z<*{{X)V^Q=u;pnNU#-$iD7HLiSd9e?GS($W6_ ztF#!2nJi8RWuOu#rebosfW)w196J$VZhFF+mCl}vqy4*w0G6^_5`HKdP2wg7U1m&@ znlRW&C@GmcDi)$t6^I~Mldj==!eXf7AbNh1JK5Z!{{V4>0#Er6H78z!xs2xJ66N70 zp(M>oP_Z+Vtg9Ce3)92S05uwN^wZ?3eVQsXML8q8j2(5G9}KT`y|xt$?5U+d zknH~edg;Oj8izlkbHKfVSxZ^DCSxhj=0Vf41!JU2Nx$Z(AcjJXmH7v8eH?MDF9`qi+sFb z`>V;!Dz}DkXdw9!m9n?zxG1K3ONANo;pT;kRPOp#6mXB#!F2K%K@kVU>GtjNg0UXb zOA0AWk_mDhTwCwc!8|F=_=P}}ffIYXgG{j|);-^pm&N^kdM4(nKxZYI&W zL!n#!z0sJ<(mZGF3r^5RtCRt)QsA9_UNAXFp;_L}oQU%hy)S9XC%rmaXvZj~{{S0x zt~8E;5BAVa%x~3QhsDU4qn>6RPUQB8zwxc(oy>R^1$R;47#$>!KkM#QxOL$LMC>3o z%#;mn5OAr`uFr9%Z;7YKD#WQ%%bD_&8}_G81agQ=o1siSme+|8eqV%VX5mOJiSILm zlI6L;=D+?cJJ@uf;dS)h^+EbXho;a(w1PotL^!VzSZ;Iw0O9JQJ%G`bNb=v_{<^)5 zhDiSa_41wE5RW=nR)8zK{{Vsx_7DKYTjw_Yp&JrP>T$^i;YkNrJogXqNIilL%}xB0 zW^5e9DqcU~4V54=t-U-q#Rm}UI%QoMN=O_D z$j$4-(kv^se}MJ;uRgc2Dv|M2CNk~Vz!vcmI+GDLD`R42N>Ib%W(mZACMbdk7J6E? z;&pecE3hApwqAR^gHi1+qT`6`eKPXxr1d12ld!#^P(oF-d#~P5mV#R;w|9P@YTWT0 zAh>6#>*Ao_VS7%^bxU}5(%p0I;d4&H+d*=Qwy^@s?x5y9M~qejfMRL9~r+}pjO1&h#7xgb>$TjP~1hlF9cWNjrlh5Kb14=FKJ{e-ZO#c zx%>&H?A^SHQ!;I!SCj#oT2cwW_|xaCR8`?g6HC-tDjUUp4Y-ZbgT004z2a+R}t3Z0SiQij_wLK|%r4 zc$PbZ-@r*N1!^A6_QU~Hj`qKWpd5%kCJEA{;eDY9SeUn)l$42S02104r9rsT(Hwjv z*jszI&2^t=`#=I67`qE)q|UuWMw!7KpSLHRvhhljU=+wxzKlg5e)Hx9UKzJ7pPHxp zZx>kMYq0kaeF(RVoA%G&qWv$ZE>G^B*2)Nn2jD64pm3}2Q$WpTgQe$g`1T>k*=kG+(WJ(u>4 z13LDeETmL|qTIeA^otHJgEkb#{Ff*FHSGq8HHnPwfBuKt$t3JQXw7~0V9cDPs$*yv zT<+j&tUtVPfAIAEev}WeJ*Yp8PQ;V)>(e_M>Wv=H?eyDe&m;x_&rlq?A9x3e;Sc`+ zEPR4i{{W}`q|+j_o|1C)ymmMFqm}H=+?=!8W0nhL3OI$5YvpfH4PjlyaIGH;Jp#2a z^zXE4nSD<=Ke6~A875TIy_fcf4p098nBpcRIR!IR3;GtPPZe($!aMv2$SKwT08V>W zotsdfoX_K6T}-{3?L?+XRy9B+K#_&LGJie;u+5X&db7QbFFY?OQob7E^6njT=i^b(Thyct%n9kl}GsW|!NOL9`ZoC;3hNG=)MkBwj{(1HsEzx8kQy(spTH#Y-} znXzEPdPxvOO|B-<(1s%&i%2S-mCjit=asWmKs(DT&b#58O@__4i^t>ar&MvR6H$bo ztYI>=emIoaFdW0Nm5R!s2tdvTaTCfADbd z(Db}d#d`?}vi8oGLKe zN%IjmOINf$(MoRQ>8WZwiHK9THn==anlla?gFOeBJNqVY7wwF&IP{jm%eAu^8=W+T zE87ofBmtWYQUR`PG{Q*VQ@C&X!;S}pc24yO4m;YdgHn+L{{XewdGwB>U%SX$UZ!Z>EZpa?H2(QOSIHw;tXr% zBQUF1^)71^t7c-v#N40-0N@em+CQ8}{iV5zf){`Ly;&`F7f9$1a1U)SkTa(-?);~dZ28)H~(qs6iVsB1|DUUnBIu9JJlZV6=g(%Ke@cC(A^%opy z)p+M~nGhp>OVVcwOT&ntD7VaK<7g5NYS}Vzp$bdRc5=%nF#^1+Uz!0(AhK&GU;NghEPo zHZfo&GZv(j216(*uFY$`9`OA7V&pCX?CS1-!)O+Z#&H=;-X@lX`qE7bi~Y3 zi6tdf+^5ywop`h%;wT#tZza&*Wbt4J#mSv-(D~1d9Z7^IWbI}LwkjwDF;NXezmq>L zAoHkn&2c-~mE71M7?HUHqyym=0IHKKZm6jps*5FoNMHdX^me^8Yg#2dD7@A(NIsp^ohuh^0xl>eAM5F*frD!*eb>?0MJ{DvUxt;8K@B`?R8FU)t z4Ww(=sWPbSy`oYAa!v`WoWzk*YoV_0aXefgGa+{W0JL$AU}&b`FRO_ckvD^T{2=v- zg`VTLvrK$6!jc#gx)GrC9$rV8!rS6VeT7^Xf7mzb>qX#bdS}w{r;fEfNsDWonydu2odc5+Li5|-Bgn^Z6Y^(rUfKYpUw_X9`ICGf#E017tzziT|8r&JS;CZLW z_B&}D45f0`=L|6&StWQv5JySo?yHm7dHD*;o zt5NLM61cQ$Oj>DAYgk@X}@@F5|v~G}(T|;>jwSxvL>0I1DVqeW4E@PazAb zpXst(T~_{9$~*aKmWqV?B{>U0X{Z8$NhA|}MQrgi#zNiFDXG|# zhz%h@sqnCU9;b96uHLA-hN$eD+b+FepSARa>3+^lN{N>tNiO+-t;w&6eycOZH&VI> zvw$;AuzJDoo?4llzUDoh+Db}6m)$gSO*E#P;Csyxs&8`QT>;;J4+xFIB>O3}^A6xa zA-kkro^%B1eHs+;lzOb+W>?Hx!^``dNy;Gs_ETyWNk|nHp>hQ{Lwn^6(Ek8#;vEg1 znsgs8x0)n-9kpr{gwz)_V^@H9>KYW|*&IjtZu7p@NB)G{D=6%Qq>w=_E(Q2_!2bYn z;m7ioGwg09&=^37(q=R5e!h#x`f;~2D2dXN338C-tj)*+;{*NEh3Ha$)BI^A&8P&< zlhY}PfIHqyL9>(nJ=+S*N{|~(DSkVl545;-Z}v*#Ur(QZuZL1U)2*14Z# z5%Pil=fmg`KE&clyW`8luY_AqMkD%hv_l0?2vac!lqvS59Rj0$g;GD1e@M~&JI01r zZ0~ReP)}5aKGUU?CmzG9FF$SXx+DER$E1ZKdnizal3lIN+Q$C?a-?iR2iTP-5Ow#v ztUkbFfdtM#IyEIGFLrO91wlV(zXgZJ? z>&vHv_sVMH*_9^8<*xjZ{{W>i3IrUjxZ1aY?~DsO*_8-~AIIM5gV|}#UiOr+YKTvK zYOwZUJKp@3f2HSws)B-8gSfkC$`8G@Nc%bRMk{@;o}XpaGN&zm8tT;g#QpFEZ}#Ss zB=32vBzq|=s2tMXhN^SrQ@$YXFyy-_`#za7^;SssazIW}P(T$5Cf=Lk4&t3Mx(5YJ zHw}~3u`uVlpp^L9CM&-%s(5g12*$y|WhFvU48yy6Z-MVMCenwxQ;&=fl4>>%1Sj?& zJF^Z35b+gLjvA01kt1O2=WgV(7*#G>kPj1E#W>+8&wm7I*qAV!!3a<~vyMMVUwEmK zBZg_sIXgcHl?7x8&Ahp{2t!t(5h?i;nr1UcD+7aEqO8Ftgd_&m-ms>nKw%L^krOK> zVdR!d5Ll5%>!AcW*^;GFjs6^xW=a(9(M?sQp~IB9WL%_8!V-eaUFlFFf%ij}A{4VQ zDp)L{f^`coUW8aw0Zr6|kb+*!$0Yv%x~I%QuznTl&`nxh6ADIP6{7=>mXb<}j_?5M ztH$P1HcIL>27BJ+c_R`Fl4qaP_OOqDs{ACq-nv zy&(Sp`zlphjDn-DltA##{{WY&aZ;3jA5HJgQjcgb>SDYi9sdBtb#W3rGsaF;ZxKny zB=l{}8A$&C#g~}tlUF~VIFaG%f5@tult1F0jkAPV0N|zMvjBH#=?G|4ALdhvlud(H zs~>=vlb;HfBC5)G_2OU(RYp!&x{3Zw-uGlF#BAckVP%%6Ed;W+{EAR`Z1C@Uvc$>R zgg>~+UVt@8f?Z$!Wf4z?H^PlLJ)EU?a1xVN1tQ`X9bhi&ZujPae$U|2NtT5nLESH3lrZ9I9LfiUrJSi3vT$f7sttCx$}B5X zE1mQh1cZZtkmSnDLpXGZr!oHkUrvhWTC8rTb0JN@_;H-Kjcyx3~7Qd;6EM;d6KYl+?iRyp=aay z^@@W~>Zaz?Y50Wieya%C>tz`SJ&01xJtKeK7M=XiBAGV_ep{aF^XXp0U?m_9@IVd| zX11IfK9Szgs!D2p%;DJFFsPU8ZU|lLM|)lE;}bk}Rc7!UILtz!9?M|r$U~-pl4)K3 zUU4JE)#|zj2}ePaBkcYfT9gu$2BRm+!Uw#(i=*!JhEf)%VMztR2SH8TARZye@+l2B z;EZf^Dx@OLNl&aVJfp~_(|g%OFo;1pkt}NDbNuyvjGU3c&}6rJ&1z-J zN$&&`$^^LNjuF%8DEnMAphiRac5K083ub!62*qE}!}bh7{@@QkIFxAeprAgi=|qgg43vr2eQD zh{-JNTsU$i1gZ7wj5jI$QicFzg@b9xAOk5WxcF@clV!A^N_4zd z9FP(bn6r{^2w449TE?oS;w2P^QbF7dNVUo4Q$`|61193#ctr5H=7Dr%j8BxO@8xp! zR17XvYs4mrs0d=BNet)H=Lv+$OhBVd*=sp_;8yKdJG@~_NV+pREddH4okRXa*5|Hb z1;W7?kO-nlrkcRT-B3(fVUsbRDyUytSBc#l5JL-%kj%nPnNG|<{HQ!2hqP*vr5cAM zm2BKbZt60n@7Ih|oXtv3L-SkuP9Z4D11O@m4aKI_v*dwvs{p%16BD}Ha4bp zDU%Dy!c9>pwaN>V-P2gb?HVcapP@nSa}uJ;Qj`yi@9~3-6-F?&-<|!@BLY>M`-axx z$)Fm5XsLwncS~LoXa%M@vuh3>4u}?=?|vz2lQ>l%gUTBdbx2CZVdn{zN>E;|8?Vd| z=E6r)bIgPXJdgnejWaWVVA;uqfE(WWEfZ1?c|;RpY)okAnkL)c^GaUOPGt7 z7*jBmI5?5L^;)f~*@i^Y_pM$qqd9~zfRv4*uk&!u+Kcu4!kG3Mml1WLCB_XGjH&KX@rerh3R`nXi+9wUr}1XG@I1}(59;&GGbN% z$wp+0h+bF_mPpBXVrCK#$HbN=#rQ_R5iTywr@G2}($a&xrqMfSRv|5D3rPed9YChA zz{1cIrN~1lup|q)tKJZ}ql6|L0w!fsvn8C~mme=UPGJ^QZ8;WLjhiJ*1k{6|a_?Gt zK{Z@7Ta!IKQwGaH4wVva#*ft@dB;`Dfw_`X2FylUsU!gWe-OOls>*D1-Fw_*%Pe%e zhi?<%8<^sYnAVtt^x%*Wb!a(_$UYV7@jhYHB54Db`fs|XUdRa@*_lh|x6@CQNYYXbFmtiw4uT#5>A*gyPieXT2DYccql4>O403Q*xQ>(%kF;kZFniWjM0s^xJ7E|@4 z5E+zp%bftf-701%8mi=3|3WA_ru4CGkX z@f}|X)p0mt7*b9ZZJ4D5yM{+xA@PitKPkhe_w`EmS)z$4Nfu3Mx*r>LSWJ168iE5~duX$RJk!A2S$`gK--t2@{u;cc^Wf<*ud^6GFRK(xxKofjfqwks#<_>r6drll-Xze*{+pEKbE(}V#zCZ=eb0?Bbl z0J~NaBFVE@R+QAGN-W)ZbnsxTu_0qCC8*3*Q(n5HYb>=A=B$zj9K>&JBNEVv620z9 zQmRvwmlSOT3}7vW=v9DPjeydDy1%B7d4VO-ewL|#FiUK8FxS^&*chxSMl-^}(Pjn5Ky8_`H`*SOu)$@V%y6$;gh zx2$uXIm+$f8hau~vDk7QltCN%;Q;Z@K=5HPKFCX|f|kPPGY#;kjX5rX!@x{F${~k- zVS5qR7+-un7WZ+IVttqr#$Z%IJqSa^lVlx34Z>`{X7Z2$*8946Q^iV|pmR@^u`;zo z7S<+sh0w}UE~!S!p*fOk`&jD|HId~7LU1`i8ItbyqeP44P&5l8_jIt#Xbyl4e~4U1 zMWAXE6Ni>fn_q?60dY*wB{)e432O2Kt5YB4FzKY>RHpJAsmA^Q`zFJYl%{OnHN#a+LG1@Gb>kP7ZhAHTxPH{1y46Ugb!Z44N4X-gw?NLU%SXZ9-9FP+8oiV-d!Ls(X15I$P3ql$_mAS3S zP>ry_5=00u_3gAxlK`hT`pnPT*J^*Z$ ziNpJ_{^C%7>dO4b5OmXlAOz7S!+ zT?q~_oik_3n4Zuagjc;&$F5L}UY?wkDg2?824F9R8#!|bJ%aeSuxeV7^c>JN zQGyDoI|)orVghPDDl|y(1FEp4i$ug=M3S7+!7e+gBKp(H6x79$N?C>{J#%C)1dM`Apvnah+|$`8}VF>M%-Fd$pIOIcl3Sx$L2d*!;M!JPAVJ&2K(># z61KGUF1^6v?pm?XD6|Bg^8E0iRyPn*Msi8hN7fsb&WmGzRB6QGj&JTP7itFS`rQgx z&WXXO?NtbwHL6sm`W-s)i4fJ$+);h+M8vIGfnr&i&!i~WtOOMZki-qG)~Y!_==$trXko8{zm4$W+q5EszRb#W|bBJ+%Rrmc#$ny zHB`!#F;-9-H!)y!{KSa}i&|4eg@fKuaysjTE+L{}B|c2G1qU>J2#L6bq{6mH0YC(W zHEVt!UlxctO<5%hT`~|uS2NSbAV?ak(*Wk4oH~lzAm;Hh@zqhS7>FS_OF#_1)Ne>n z4unolkf;FF8dW7O1m(W2IQ}6>c5s-GEDFzilHcwJy?W;dmhOm$h(dOxfK!mV#X&W+ z9!s@IYK)ZwZp%VkWKlG$h@ZQ-o2nX(Xp**Pv|ySdQ=P%dj5uE9E335JEk@fjQc6lf zUdasCfM`LwUT{K!clU>X~>vULAXhRdUDs^M#%~e-01v`hNQW^fND}qW`QcysYaSy`avNmGGy=3G)$Jo^Q(@OEej4$Jx~=(50ohJG=m3K zvR+iws>ucF0Mtf;HCkriAY9ZjCQ%^z^|}}X)ok+#Gbg7wWRh5b^d`{ZrVxc9=apvA zm)A|)e-Tg;nIj60X)oVU-FWD1XuP_(fr4crVo@xnQU3rFQw}j`xyTb1`u_g_NmC`u zF2O*GwxrjK>EgmD3z3M*$LpT^z(d)foS@N}_!hUBvq6)ZV!%vkz1k$`hIFJ&K{d}% zLp53co~8?2T2!9UM4bNsUVEF}a_8rln&l>pky`ZrG1k~C$#l)D}iIZ{{VecrDBw-gt&JEooN$u09_)eaj;fNnUx1M0i#-= zHR2>)JjVJf<*aJ__s1~>byL2Jsf5PMN?53X%*stV{Kp&VmEBF*tCNlkR$#D|i#W@| z(F0B`7F8#%{Fg#j(v-xR#EmkiagJk2-4Nym@^Tvp#W6)iv zBF-spi~&saOi4>d(Pe+Qo5G#AL0DsZEiLM5={= zKg905BdL?3Ai};z)Iz(YWvc>14yhdOqD9wbDw-8iaT1CF%$7emiD{gbq%S8Bm8HTI zYSd%$f?EjuJrd`TQc04dOVE8_x5aYQ02>6Um}x!rEhPY6w~7b5Ae_@=8BkBd$bRCp zy$2ZRYoDs;b193q=~+^wg(Q^a(uSWXVN_)+avuss z;R~OM#^6V*MT69^0)}L{f~rX`sQf_%x*$Q(Ni}5(DqOU!C-(uve~7G939u>-&gd08 z49+De2dkRHVSiMZ#z7%-oju;rqST58-szN>f|;Z;2}#h1vt_!jdXP<$I|7m2Nd$FR zrYX%%A#Z54GJDHn?HUGYq?BP3C8z-@nxd}oveT--5Nw>1sj2T3TYGhAnTF(=NzHq* z62b4R5^UBnu@aUMB3EiyOi|&Q0d!^-hJ;GPWl4Fe52j|TZh#*;AtdCM0>5O%R6Eo| zTTrx3(mmxWNn|D8b$a_nFp-&0%_KsKb}eFINI`oz1^U)H8o?7PZm32$RFdahqmwmg{{V7o5OsQnT8cwf|#G(K^%_{(RVP2 zg07de@Bk>8QfWe^E3NU)X;tb~F}F~@TiU;Dc4{z_q~VsOVv7OU(Ibui_K#nK;A4R}(pCAQ4HyrL;LRaBfhRk`m~J#>h<#4ELp27fB)8!lUn z%1C<+{WNnrvC(!mkj$&4U{HVnYE%(OgQ^m&1_6aUY{adLd_tXhMERs9G^9#t*`WXv zMyMO8(45&w>S1ayc|#8LV)Y`z-{On0LS4xlzz{JKrd(QK7$`^}<){JrtS!ozZ$x7e zD_V{2?+b;=<9q$1MCl44K}mlj0JXx%K$T3qM4(gOxptv_Z4oVZMY|*YQd$-cV7Cld z2JrhpxMGykwB@J*l7`SQtsyx_RnT6+su8vdN`hCEf=dx|2aq}?=8$2iPTVCY zI`al_4PUCmd%r+{tWAnk-KB?Es?Om0^+;h!<3zO_94x0BM+!*(>R8*1SC;;Y9w}2fb3TIToAmekh z&gB&4#);Rx;RvpJ*_r9r&JGfEMGCQ?BnPl&aiktvSy*w)QKOVFtqU03uolIrUKq85 z@v*q>ihV?E1EQ7YQ703oc53zHAQpC3keG>%L3V#5&J={f8dgZUTX}_rlMymnhJ~ux zNoZ0CLQ@jCYBgXVcT|Of7P?>wP`f2Yucu#FT#}MP)XS2hvNI{`Ub^ssE((;vl1@bz zxn}^RIJbE6>&6B+%`l~?SiO-bfuPn1tmU~uF*_p+5*)E|$I1}adT~jiKlB_rgM_i) z6Ze;+%NYc<`!9!LqEZRoniC8-w`7-*s-ADNm~@cJ294dlo9h)EOUfLr?5UOP?iCK4 z%1OORp^E#<&CullrNnzXDJdm06#j8m@h&FeLDcPWWy-{CS%^Kw<|ll1Hn=&36F^-; zc1|FY8<-?n^xYjC<}OcnCdYmVM#r8&_)d*aFPMUBwGVfZZ?a-GJkqC80h>`$-FiYA z?a^;{Cp#)7>~uGKyZ|A9wLg&)HI9j!L5&wGpVIKE_@x5n>?>+lkco3&p;i8l%Xj>q678wrL?J4uB0yrhvfrirL~o@YHfG8{BDS@ATfvT1hx` zT%UrYsz&#!<5W)xK#46%SF>9^)J7dQxYitTb${fhcp5i2P$ytvP~;4>tL}z8OUe!5 znhnvbWFY_)xem^B-hUindBmy;03r88OGZ))kZw3{>c%!QOrgmEVh|+-HH}@ken+1O zB+9cG7z`c48K9_lT}8=ZUH1HOcq6)nM+0GWGSak{Vnr>ef?*-1>lAXrs6t#hV17Wr zBq7UpP4-?BN>lIyOuRMx#(~uVP1=OPjCvVrrs!N9(wGJnvL{Ma3P|8?*0e#u=)2%9 zjD<>AcN?qqj#mN_iB!r;6EP`z4d={6i7_d#kh%!O1f)8M98X)Ll(tQk0gTm{d{%0p zkQ_VtkEBJ+jMV{^RJ>Pl)TJl_!m$#|*^9LrNGgz`Map6iq;xB)ooquX-u)E= z9)*ALlxg1P{{U#0ER9z{e^Cj`+Bjt;BCIM3sNOJwlf~7!jf~dH#UVrlxC#~q0bv=W zW5njQQ|3xrq?uq7-gv>G!uM4#jJLna8My3004{5%R#Owx!EH8Z5|^D)Q85lei6-II zQB5L*9Tdj*zciKO0dX!}eBS!QhIJ@;CJaQ$XmGTIoo@?;q~x|I440*1@d(Y5d2Pim z2TvK)*mDW7xdPKZa4$V?paA%NV2lmXCKq*-3YUolkV?U=$kLF&u{IKPQ%*)9BfNkG zyXKvKB7m^uRGbQmbhUs=k^mZxjC3@G$%MA$MKyB)J)7>`zeurMJAJ~BRyl`SSI{^VQ`H?X-`HzazH6cd8_A0LrteOR#hz*OqH}JOIxZ+2yoOp z;Y}uyVt}aZS6lk3)^edenp((#$pbW|qo&9PC14)q$YYn~2LS4Xpj73s%o4pvai6ZQ z3>q{_PgJ!|sVbIGopKZMFu}bF!plAKT(Ck`p!LhqgUcsHi-SV^+IP2UkO`J%B;CmV zct_N?*~Qtf5b^D3oRl*?xt%=>XWX+Dw!e)dpnE;7Gaia3+Bn)nPWCjEGd-)HG&gJr zy~%peQV8JMG)^nI*&XS>=}0}I#W*O-EvgjNxA7MDT6*0PRq21M;-)3%VkW4RhfA(0k5~OYw)m zhyp^&xtkknC0d{u;bBH>NO6qMv3FB`}0D@D^ zB#588H$}PHAG)C)&?qob&Hn%##@pg&h8iO3@xA>ODE5Jp0#XH7fuuz6*OGv$H9~f( z=3IjMlLwLlQbVsO)3lM86*vs`&g?B?H0>2x8G#^Cn`v% z#b_8En%U>|UKq(MaF#A?NR5HRHKO1nn>9wMK?IjPb^1U6YEy=~Wh~|i%0$4@QAbDHf0*)R13D$2?YKzfdw(hn$vJ>k6< zhAS{3D0Oc;x_H}j1BZnx1JyoIMr5f(hx$_RhH?l*l;3%kEuCp4wDN?)32E*4sU+#spj z`HpwIoRulHuDgP%QgHMnq!1W6rzntf*GOm<1t`suf(V#A_;QDb9S|k0ysbM%N;4Af z38Q*^pmN+&7lq-qWhJtj{{Yn9Hzmh3L%~?BtcRkB(UN0wN=|L;5{}hO!SJYqcRmpO zk`^^}gny_ZW~paCxY`FSg}Jk$!#scrR+8Lp8xK&2Fy#nWIciN*lS*$e!Jr^sNP-fQ zkg?tX+yV?SF_MuzH^0hGDKgOIm}taZhVHpTvP#p{M*Dyyc-5Vv$#E5dNDA*IhMI^l zbVk`Pc9Ov~%JjDIV?&m*o@~VCRs15L6d(mW`RdUnAW$!HFZlC{HK8FrQk9CCN`blG zh`(2d3=0>}Z<<-g%mqX##mATN4S}jArQsZ{tWp3_%sIlEGm_lk1=HniR44#YML~F( zqH|8lfx^Kv-;fd*5J;|HI9^$l^Vuy}gso0esv6b2{KPgA5R`#1Jwa{;9uQubMpflE z?@%>wzLxa!Aw|^8lPg5QnO($^Np|u20|FK1Q$bP&Wg)>8AiMAB{_wUo2zN?Sv$LSF z@n~p-b5f`+1TZBhd{jYPPiX`=Dp5H|1hKa7FQiPiRe7M^ArZ$H*O)zWfy+SF2Oy0& zR|Ef$l+n`r&#Rhw1Y|z<9}XJL41>Bfl~k^6tyyzejjKsfiRYorecm_!2bXc(nd*3r$k~> zC6H4%r9#`FVka=3bxb=-ZW%?4v$*AF-3!WV(u$aF7JsRxpb^=msM5^h54tq!iQ*la zonF!67EW}af*1gs#Rm$}lIA>9)bp{+Qcrb2o3W==iV9#Rd!$N_-bz&A!T$h|i{M;H z4lPFH5lcb97Rg|qQcHxWij5ER2M9SV3S7)tHkQCvr%lk|k*e5`qaQ35n1zDRTE;Za zg$!L$%-T{=uIk7k^sFeP3zlsZi)d7Hp2oYR9MLNv|`ALQB-0Jac0T@YAE0I*3dd)gKyAPJ&iQc~xcBY#9f z!5Jz5OfLz8GwXMa3d{i9rzUbjY!b!le%)RsT2)1nCSqCKP`^XR=Kz9-iayi}kPf4i z2r2Q9vWex+)njnp)PV(U@3Nv^ETs;ROOsRP@73aEl5V<~?}ppn z!asbNvI9Go11p2W=?j1bCsc8e6Vp8l7S!vS=8db@$@fIdNKi20v!BZM(@yEaaSjp^ zeGT^?4;V~6QHd}N?{nYLgBSu^OM+FSb><;CYN7FMH@`99h+{KQF*-3MA0DiCK;^=z ztim8%?|(jsk&1NpmXuHzCIMya5N%)i7~aD2u_XYJF)9`rLytJYlcEl*2G`$d-&Bd4 zNBmWA#ME0zprzGJ)|`;9YfeaEHeh3CuCK2sVMVVhmNwii2|NnRM)hV-sl7iOo>K;?z89q++; zSmmvYzG}AneOd^n0@%qGL+^_!1H1tyzMnWa0@%vYkDLGrTBs<>ZeLG02Ag#V^B)#F z+#*iXnn@)}Cif-nUsxQbq0MobP8j8>-9$dUH3UfZ{QA|;8%LDzfoR?EdKvRuCl^=~MFV9j<4ra*GF7^0;SoU_om8vc013m`7G zyg0x+^i)d4aU=f#XNi`ol2vG$XjDu@j){Re?|)TPl?6Khrxbd`oDe42@8+uPrIHGg z=bT1Pi2*vGRuLoikd}K=8yax;Butb8g4_k-fTMH0?ov)is}lRV-w$*qcfYy^MQ9H@ zLtP8yz3;=xn=G0gU8&~+3K`^nh{BKnbCtImK!TbG);GP`2~tY97OAWlDEOt7rI^!} zkkC@jnIz1gEhM=C>I1`ul&X2NsOeD&-s~PK8`T-ZaHW`~6MVI^`TD<*iiinu6d_Ds zGZwpYjR;uXE@mae0#8Hj6bw)`CoTA?jwro5zzXu;*WM@?xE)c>JKp?M^D(Ms1%T08 z>-7LdMKGY}x^q*n7F~^7N{ww53`$;gO_7Zud#jwd0iM`l!{vTWv;a}=0F z5>qANln}+kP%$BnpFc=a;V2YK!>QjXV^DN}91^*Wag{vmAW*RiH2{a#`HD5^d2Kl; zX5m6kWET&mfR2Fqv0TppIszO%Y`_EF71ptx5REcJ!sy}f(+Ys7VD%guu2IbA0J~;0 zU2HBDWELzb^NvTnA|hp9B3YC}{53Fm7dRWeFLYZK(1O0au$UOQ21EI@MfBl8=S0;Vb3n35!Y47xa)Vln!{a)xep%5@tUAJ5 z;$d)FC>#om#flZ-*f9)w)33BJcST^pM3l8*(Upo_s_o|t99Ap=vXk!UQ|MXwdi6-A zA`~J}u19o`RC%7b`9Tgqh*M<%kfnG#_58(WqFj*_%MM#Heq*n^E!OUwg~?006rM1I zIOI_l%`R#rED!^5YjZHoE(jPY23i2_rTDe~06&PVol<}XNEIn;NC%$!!2}||0+K)p z?=uVOePi@@U3`ma7H{y3OzhGSkauMc+K5<_B{UE)f%T16j7hk1MudWCudHk+iOLT5 z`A6F_>Nz=o2wXN@LPP{35L7~0#Z^FCht4(_x;I3Xt1ITX1Uppg7=VDbNr>+=0zuK9 z6xk37(ODr*mkDhv=@4@0Xfcv+Y7%?O0@O9-2??%=IFynCROXcM^nrxxgvmxH5848? zZN?W5R6r;Atxh1MfC50E@Qhn4L|CUHc_yh1OP;zBGS#Ix;tE1aNJ|1~yOd81=C(M< ztr(QuMKq)Gr(EM&Pcd68kmu$u{zHFs8@~5eh0fKmLm1*_#vIv6rJ^7 zlkeNc$H{mGZMNlNtzt)ej@i;IAE`UR3+66 z57`93;x7+d6GO=j<2>cQ3;<3wh)n?{PllHLkbiDYn%!Iu^6B)Tp((IeKG3UpBmC<4 zkQIla=6AVB%55YwHeuj$-MDOFmr7UX!7f96ysxtKH(g(sesj#6C~^wdtgZE~`&{Jc z$cD^7de-h_{VK`fdxrF`g{`2-gLoc>QCQJx*@xGS@~tJlU|H-f>D|X$yTDgwRv3Jp zDgAa&I-3qp|F?E1Jw5GYU{?sjnteWH2wsaIWazT?Z_z`*ufy7}@rTWSNz=DI{!Qlwzq6eRMC32{lo`TEMP}fEM(qVcF>Va z6gBy))<52Q*SBFZLrNkh?&*voENlwUQ24K=@OW}foAMWr4ISv?NM+mwWqx? zVQ#%A3u8I;`32S*lUXLG2V=a^2+78O`{N;5;~dY}*e}1>)GucowPQ+N`&lFhuB-%5 z-q0;YUD4TKaRCRXluIuES&-d}*O3n8h24m`-*wS(kD=>a+prX65dCs2Db!?BGKSkT zH_7;H`TZn?%DQ-nSizYXQoQPnQxAd__M3OLKGUmTmAPlM;#3Q z+s?OF?$m)Ol2&hSD}I#Cvwsw1;Iktg7aBjZ3s&j>`)j{h*F#@%WBDOMY-jR+066KJ zlwC7p==3_dUh&EMxe1rpJ>C9Q^Kbcf+Ck1ZJE9R@w=(^;v(z#Bn>)V#mcQak|1~G22%=LnG#fL8t|Xc>m;yIS=O+GyGo{eD3R~=o zk<^{kr6iburFJdQOStQM3R}C{DxH6~EX8rr8huw7aDZJi?bI`Jp`zs(w>^SBiz|*C z(cj+!2Wl`Rt{0GL9`aOeUmE!G{Tmb9E$g3Z(8~Mq-m(@r->#Y1k2d@Y3#8EzD$f@8 zH)!|a&v<^#vK04V!pP}T&J&-}N98WA`iCiU(L(V8or8nsJUXp#54h;K#j4he<5=I$ zicHIkMBz|VXM2|OJ_)#<@(w6->E$Ecag6Cf&E85`@~kEnEddq(2iKv zr?M}=4?i&lAtrB{9cTnlXztEkV|8Cua5NM&`6JRP0K*@Ep}E1msphO7e(du1?G?WF zJQrn{E)qv+%#-}+p4H1!x2Y-(ycYkF+p@kmv5Rb;4|g%BXPD)8Y6QIm z2cIIj_g=~pn z|9SFwc~kkOXvqTb2a4*{S66pZ57#yr`>?hcIXxx(#_#;XG=!XEaY|fo%MPLg^r(zp z^ssX?`1buX1?Xl89c7-O~xw+pZcC0;o&z(FjKM-z}11CX?b5`nT>HD<>FHTP!bS%kP zue;l8{uoTEREHSjC+qrLf7TEawN1Vi=Y|MY#mOzRU?|6t204Dqcfw=-V6v*T*1qz( zljFxJ%}3`foZ%^H^hJl6DIAB@D9#n&wtA$slOpk?l1 z+r>+9#2==PsR%J!`X4}t?F!h`8&UdAhsRx?EnAN&uD`(c%*if#UsXG?Q_tQ$jOq65MYoa@x@V;2z%CL5nq7{Ayp&}E22?>a z(dMD|61*Gz9H5IhI7w6iy4dG9)dP&2(oUALxd^t}ch>Pi@4ipiG129B=whELH%zp# z|IIFjauKpVS^}&PZ0t;*9~xuQI8FYe{7AM6r z+2RL@H4!%_O0I?$68F0q<)wiw&}?Z1UJ564(|mB&(pJLhfMWHLqjQ)UQm>cB5Eqv# zq7BcY(?|(jb{N%o1W&9A>=7Mwe~npMzet6k;s8S~*JwNL`g=lJ5_Xd0G({6&!AP61 zVk}E`n(T~Gk-`C%F?rk}xS9evVZ+wO#rd|$s3+##5)UftsJt!ezY_DJL5C;ia(hOi z`{!waLXJNNtSl2VD_Sp~Ug;HnC2FbB;NBVt84^UY+`Cr z*!#|V%ShKvOI|i5Dux_L2Kty?zs|nR0bD036VVem3m%>uPes{eJUzV=3DC=xX@E~b z|2^gxrB%@3R9Z`aEWTYiIn$5dRb4%w=cZ)g=7mA{T_%vID^1Kk`oei@`%(q^J5qXqGI9=NN(h?iGXJxvjD{6f^Ep}tB>`1}?I=(~n zmG#XP_0ps8FQc?si;kNf&(J*+y&S}R)9mJe{^6nxJrB9tK4+p>-y_6Ouez7x%;m;_ z^6?8^5-@i$I`n`_JEPa`X6E0xpm~OO-)?BqaJ|q)J+@AW%7Q%hqgHnvPtIiu9@83X zE$k29mB|2qEmTZjo!TY^_ly^IT<#L;UoPd3qT zLw(RZ9iTO-vY;}j;VU6LGeZ61;oP3u?IOU+X5i{;v2pr6nJ=rLLcr$LNXq@4`(Lg+ zb*dLXo87`)T_!^8a#q9+RUflRLo%nN zyQs?K1Ia`BRgfcD+2pSP9fG7D5gq9gWtjagO6#&iKGP>BI>55HvWAJSk{hGw{Q7K! z3xBYDKnK#NYptvSEb5Q;z!UEBz9kz&__?TFsi?l&$vZv_n4omG6<) ztF5eXcjNxTN0{DrZBIdQPdkHxk6?x7GYPBB;vwGeZN|CV$XHXHk=3|oJj>OxL0^mD zQ2am3)ymlNp^?>+D8nz;QqMTfs<+FX_1k4Ys4`9q+;6kHd47Lkde!-u$_7s_kxk#~ zW*vIvN-okzO3icfO(`T^h)%U6?3vmm3yYzfkbII7% z)5R;^5P?Bp;fWm=s`;bH--Y?us_Y<+;=`rir8*k%uGN+Ir0MNQhr5d#U|%8fnNPW| z^Mf@c#^%`giIh7-4?7PKX;JbB$}Rby1#IfB$btO5vbi&4g^! z_;r^d7jJJbU#_cI=Lg?*9e41&z{YhqW|ZatXffZhwKUl*HoM>0qRn1`Cbm4x5(reTVQ0X`gi; zrmXL&_Vl45E8$qLDqz+oSuKf?Hb58qS8F+HX*N;nop{rdL@0Nb}01V()>NG7cRW+1U$|HTUTm*LX=}zak7ljZ|XheZM|147@wHrY|;Vz zwYJL@I_y0MKexYhP#=CpI?wPD5hV~pZf{#<2eW;I&s)5a)L_5>F6 z?1`a5NT)B;hgE##IxuIo=Ob(QNs3?zkG^Vx=v6mJu4keG!=rjL0aPp+Mj6R~t& zdJV-ou7gj4mwp#eYXnX4?;I8I0My6lFEyyjHr(CMG72lfOGKMhi|anty^O z2c)s)1xVCd!rlmwHDZ*UmQHPU50iptL46z&$U2kMEIMi>%Fo-aj<_VIZDlr6=Hto> zP?cRjItUX_)mX18Oy+FY4^aL zE-tjC2x;aH_e7 z#MQc;eKc1Lbt|x|j+=W3WvuzPBg}q1ylLh}Ozgn*CyRo*N^`GOH-;O&#}YANu{IM@ z@Z7sg9Y1`E8hlJSTI=!>@k!>P8g(Z#VlJV2Y&Jq`i`H^%#mj=rO=P{^#_D;lukI1i_sbwC1?fsZzu6Yh>*}G{AycUX zYCT$y9WUFF`Z-XK3c1a$^%0G56OJI!wQH`Bl?+}Hp;P?!^KlBf!PhlDMN|){+r>0B%Z3JicDVRc z-fhfoLAm;L!`+g3|AZvUX}8z(y{VBmI_eo516KGduX1t4!n?{OAd4pBB5J))#-`Cc zY=VuV8qH}w@$Ot+x0{QnvT)IUU%A5Ft*@<6&-mq&s_Mg4G9#|rTC2L!mD!^0u)N|1 z9X6l!Ksn1q?-CgfWFDo%$qj@*Dn?A;sr}Ln(p{!Qm!oh@>6dnRg>71Co6xM4`P+ZS zWDu+}QcBwH?8?FwdeRPH`C2#Fxw0E8qb$=;m(w=9_50!jySJ>lGJePJDX3u`db^Kg z9e-mY_`S}Z6}rNYKa;r2*i1BtEow^4s{WP@uwg?wUK73H)(L|3)Z;6~C{EH7KyX6X zW-OKZ=P3&=JToD14HVTd8FHZ5W`Vllv@ebDExr8zj%$5Iqi|$0`T!&^e%#_TR z2uSo|4sMf=o`qJs&Ff}erKtxSvMeG9bU}IdH-$AUb5{%(LFA7ry~21E!8y*pGtoT6 zVW_1GJ42Te|GZq^Kb~v(bWexgBam)fEO@BCzvB?8F0PwcpMprPznU|1G*`ZWLc^N1 zGQYWG!4nmN5<})=1~up>sUsJgtM_|c2q1r@c|a;KD`i?&4P33lA#A(LcZtP~U@|DP z&(c_)9c(2Vsy$AadWX-SvY+YJ*LUT+(ZiKZ5Gj(EPV%#~-ERr-cMG{J@Turs z8B^Fn6``~03U96W%P;Q6fCE%SoY}37>8npSd;5}7_CpK^W2bzak01^Z)7AVJ2Jai6NdA z?@QIYYY-JtyY@=YLV0~j;~t`%qScv>h1g9`fZsKLXfTb+#7Sq5OjuD~)!c?C$~L~0 z-~pOn#c`sX5gB}mTaT23-uNA6q_D|+PIb!4DLv>XYRhJ&q0((k6@kDM6M<3TVfUQd zFrNaX!tJ)%`KNY-bdHp9!jmpto5sEia3CXp8k%5~c+cdPNSM1}x#y=X!g{vN$73bq z&q=TlYqwxui(8=0FLIC=7X3=)l`zXReI>!RP+k!}tMPo}ncR@J7gc+#%;kUX14S#K;}XIFRQ?C~mV-mn`i@L@Y1 z0iR|6Vs>LFnG|l!xPHH5v;IkvjV%hG)y!S5Gs8M}n?{{WFn9kFHNcV`X-3>HE&yM` z(5uTW4XBsG^68OD!l^=k0-7e6;8?waTS!-J9Cz8g0y6TVcV-cG?dCjpPMViJYQ(+Cj`;c@OF^+?G%%wa0gc_dwj3vN1Wp zdvN56AAe;e-=Yb((iTM%qd;R=f~urSwk8YI6S`G<(Y-FoiJk4^@1{53DAWWVZxsSIx&^#I=d zmAbgrM1zb9Ch2GW`V7xl^nR}ECRMEQ{LZ1*?XJgu0rfy$j)2nvJ!cBz59@WzU~DKx zGHIe9AtT{|KB38%|4lUn}y4Xxb8pnGS`eb1l2YG{{>t*3A3Z5=ISjM4?HtPM^ z&NrsWeq8Nf4txi3NZ5LO5lEs(^oymt1^}X4qKAKQKB_Jj%y3R_uwHZvCI)pDnB*a% zF5KFYnDttdO5?J8iD$Wwwi$G6NO>hVXKk2GMcE|)QL=l~-LguZWvI$i%H9zga=rZV z@+u1?9^Xp(wo&uOCs+zmZ!v#$a)jeR6-cOd`6wvNs2k)FbB@|Eo$&dn{?9$GwbL0^ z6|zf1T0AH~I0+d5y@}RyqXS&L8XuhLOGfZoIO8_j8SvQCM5_D}PCV$VM56 z<-a@s1E@P8r*nBSz8twWBqMU*|JKhp8lPOvBa=A?h^}~f@UizF1ACc}`4>}pm)Jl8 z(jYqFS||yvB(lTZ^{Vvqm|)&$_$ok6zF1ZnVlOI=vkxHzDRM z1-%7deT~+MPE9-QZmRx`BexPJEM#VEJZd}F-73lNJmc`Xbl$U2ou5hZ>3&ar??&ET_Ynpgb|#%NkdAxGli800@`Yi2UnjK_`f)$u>9HGaZnx zBs$*0nd#-!R5u3DuQn$Rg+ESyr=s`_y&4a7;F0fAwIk?oN!d(yLx#p7^OtCa1ztuR z`X4Upi=>?FEoDHW13s!^3A9MsxRgZ7!!{uH9AjE11LdYT0}^`Qt-Fg@0LZ#*6sO87 zm(3M2Yc@2Az9a42QUhVYZ)t8C5*2JEEVzYqJ})O|-2c z-ArWx<~3kNrJ@-a7s;67(n|;5fe=U;N6%7$#U5v`NXEa_agjGnEhXk!du-+}4il1IRK_LME zdT>>SI21pq?NV+6a=Tl5lu_taTfsK?e9mUS84N9uHU|oY4!nnys|~#W6_hFb`o=(| z4_Q%9vU$K+nGJPpfJ?XxrEB;Sy|)qNB_HXa+GrTE&YCUs1Sv?-1oPbKW||N@Ik?9; zQmK-dsyAKJs;xv9;i@~z$T`R1O=__lPnEWEG?>4z#JG6GAC1b4KhJBsO?TPNK|v27 z-2RfIjvi?6gz6V8CHjNYQ01ZE_a8ol!CLsoi{_k>6d1|pbuIJFXA5C4KX^5s21mvN zU@bCrC7NAC8RQE%{`o2)=`ePaoV-!Orz6888S~a8FEeDwlet2wK@hTFmz$pX&+kmV zcPJ&a);P2)D?Q=%A}&7*%Rtw}lEUad9|BG^^X!r_5(*}=TPL%QaLH(AIXP4}(1Tc^ z&?HfwaDc(q_eaC#WJwtn2^KE9LPe)5v`1#Fq%A+uG03c}6@rFyOLUVjunR+}H)JeIocCW(C zz;gD&y8ek?+xgEx1%{KA8DE8zh^rlwz>DpXj`r<2d|1~SiK0O)ab8ZnEc7VEs8mL6feI`%R7tqq* zFwtOki~MnZl2xn~%0~3xizPm8A+aToe4JH0ebT36?e*peuZwHc*P4yr@(9lmlA`nA z6+4C%@#kHpco4@`Cv^oy^J8PISW+yr*h|A@qFg*O-i4?%*C+!Fw-@xv34-@vNa^B8 zV4=$_^}M_ny2v)&tw@*>vrUV|8okISdwcUX#IDe^L5Wk+AT+mph*h}aT;Ztq;y0QB zr1ByoGUM~jw_ADm-LuKz&JFLByz1D(VkLDx)ust9=+bOGO3_NIlJ)0RN-|Pl_22lb zQeg5ewScyi+`9QN?td#NtUzd=-_1eVQOwe(&3mLFd`w zrw5fgIqO>{5!?8OAFuk%CFBlRf1CDHnpaL=>T)1X;r#jP#^Bt;_;MHF>GH(ef^cU6 zG*h^XjR-J9*CTRh+uV`?Ka`Z$RrkrmBjjTlq=f)!7M$8?4u(9h1;}QrfeFv`p66BU z@%Vq~DxT7eM#Dw*8R1~?*+T_MPR081#Pvj;E*`D6I58M{^jmSUW^VQhL(=>|3&qc- z{6Hn5G)L7STzjktY_*4R2J!Ho>9*6Vl!v5#AFf*GTeR(MowCv0dn%20he#^rd6@F7 zZLpZ~s1crSg&Wr^>RXNFNVF{X5%{2~>w<^LdDM^(3Q>C5>N${9b=7}y8Nwm5Rdud(eYJY>B zuBPhGpRvrEiCLcw)BkD(^oM0RC(U&@{9L$G^c&Np5bh8V+d407&nB5SXVJ7muMV-5 z1qH#HYY{_D$GZ^aDe9IRG=sklI)sU*oy;Xlqq)M9qCB&3+};Y!4cB;MUM(hTW;c^1B&XH8xPD5q4Em7E>;TsaMVA+44}KC580K7q{n#-+%uFy~Wsvz+YP|(;meU zWhAMAeYMitX@K>US>hm%#tcgm{P|5A$&3fh^5{aMG94;JfPN zv&iQ=qrI0nT-@Pye7gP#9)-cBJfRkK$De->yCu5oICvAYUQQ_E?bsC|=?(=c7c2|^ zu;XU71>Amdv3o1&Yu}V;HMDEH-15^`f#GuZM9p54H$`)%B@q)HC#VGi$1U^4{m9VF z2bTJIcNO(>{~O+6p0c_?COf<@ZE23p#p$J6yZMY;$>Etk_5-sccjxMi9ZKS zOuj}R4WPLNes&;bu%Ft(Bb!HX*4ketrYy)ES(5|9BjQV5>unPJa8B@rJG=ITe!*{T z9{k7F+=k*L*Nx1-nvqwBpFy9Qvat>3!gB9KS6cN+iy1)RdohIzO=RGi1HjZk7@a8B zd$K6XTBhnl%h=0xCsb~MFlB!VFCGGS``!6**fk8w6=iu%1c|N$( zlhM&X|LHzLMi{*^&*IXpIJl%3(CTNSn`IR1zidT>$smV|OZcCM$Tv5e;I*-<{?Yse zQj$hw76#U&L`0Zs7K~e)$4UK;D_$l_V#A*_C1V5Ox|sCGy5#Jmtj({wOcP;y@d$T9 zWu2+%Utj*Ls-Oc2I1hy7#rKPE%Hv}}rZ-bQ#r}yuLg*DZK%v`%Y8At`XH41ev8OCcMWt1M&jfi8*%NqehlyuFz69kF z#UU-qV&%H1&a672_9h^O`b6W|1UMIn3;D_Pl_j8+YP@T~pi!q3_)pB#@4{9k!Uyy!5*NoM z&ROqoIm>gBXsxWx7H?cY-Ls8)Z%_iMkIt-m^jMTYAy}Gw2}vNM^!x&PZ1CJl0YWKm zH)asXRJ$71MptgE|B%nM1!0mu|7&~WN_Sri=?rasOJ$iMr>2>zZG9qnccKrF#dpoDxhgkQRxyfXYgP~?|gm*fM zD~0(Jy&BPdafU~6f=nm+A$BE@Y&@)yRt_cS*!4Vk(A*iH$;USQkt#OEkVt9rhRF*@ zA7E$Ozq49iowO_-K2i4A;(vj8`%2A(zbc{k2$ByBHP1;cZvM8h*UjRCOL>PsazsqT z;;sW3!c1iMJ6^EGP!5E^6~&^ay%%CPB64j8El6>Otw_EI4K|PsTr@1c&O-wwmefd8 z?SIj1NWU#*x7+uZkWM4MRkQm3jChrY;@3RIJ}}ZKImQMLHBB4gAwQDok6YALC?vC> znoS4O4`ZZm3@-i4>hwhO_4*NKEPgkc>!W_%cuG(7NmBER==&+IVGRRD+ESn9B@c6s zouBsoeqps~#kw=st{nU_!t|9x%}dh81y>pmQIb}uD`MTdiOp`-YYSz%Vm46zf?$F& zmtM+@;Q364uJyI?=c`g#;e<;L--7Fd{W6(%my1Cuk zeR>>-v}gG!fevtNbS$bfNY({ z&jJl}ex#XCq3J2Dgjtct>FQ`toHmhdY6cgN$AZ2O`%LNnR@;&A(sF~c3JM;c#9Hh5 z6egwuo#k$AfH6ys3Kv42lh*R@?QH;lG)^XNUcjHhK5~%kW`Pu8DTCYYa!I+-sUwrj zAtj`%+PTD^^;L9Z-Yv}70;n}=MyTH5&2#hjR>^~a^38Mo%U&=^MLWXRr7W0m9xl26 zv>e)|!cVA&4LL1}&E_hW(5*5E)x3*otrH4=TA1{*?f*W!--4w$RoX3u+u3cmi+Gl$B`93b7LI(~bpnzk^Exo{RhbN*;P zF-gbU;a#8RxeociRU@5=p=5^62Tk}+WGoxTHv z_-Ep_Amm4gTKtRh~?WOcu&75z|>jWDm^I%96kyRQ6g0`#c!R1#7_7px+$xjF1X!+)|{CZcb*f`JH zSdQ;LyTJ$d%p>&CcdaV7HB2|J2ThmQ3MIRB?;2}Z8Oc)s-~Wl%IEUzeLRHVWE($$% zQ80fa9A=4*E~fJ^-~G`qMU-_vPde?*Wpfz3_U)8k9cXDWcT{wWx0%IR?ljRYb8?_+ zf3UqhJpA#Q)Egr>_xj9fB-MvrlJj*;E7e7Mp31|c88!zUod><4dbyk65OFad%AnGE zJeXiO+)AE9cYaQ6utkI`J99%ucldMG>S62-$s#71M4PhWZ&gC7LN z5Hy@*djyK>xKz-5!LDPEw*q%yda_g6hufP^PCajVtTc}9XDOc1A47p>Z+Kbq;e%RB1CVZ`N2?!hqXpw$ZmdqJ8_FRWIh z@`Cl4jAanH%uUo!T-ctudw-j(=Z{k9s)6jg^p zX)O)<(Mz0RAa>%*hR+eJJWx$B&kTd_5y6Sw98d;{a}>fATOM0%>*4yvb6NvNT^Ch4>j? z1)-lVXbvCeElIe{GzR3~#-g3on`?Q|B%?m|YNIHz@>I8KC_NL{`w1-Zp#t+3f4dE; z&#f;CvdYqvOu?akM{)UexX6>tGhg*^rxLUB+E10VNp0+$VmeratYG2UNjF{CPO}K- zT|Yi}##kfj*GZfxPZ^rQx!&lcGitDv#Rg|e$gA*LsE*gH??BpD@pm1NeG{ucgSiFb z?g;)3?`I=w7l}$)mCc->x;?z@8 zf(th}AT~4utgVKZ-lL;S_-PV9M8}f^=;n#0&M(|%AmY_lmlO@7cjiLab%iz4Q&pyTWSD15L8abq16cb-c@;6aZW;#>BR|Wxwa0E z9n8HO^Ha1rNAfxw%teMoF%dirY=cZzULsa`K;wil*bsg>y80x(RD8c+y9g|w z;wI2|^?ojB9FTgAvLO|!g}k*nzx5#fzIa)^lj#F-`L4IUzPYU6s_uiZuohCKF{@8k z=K!g^K^`xk-2;K}t%73#d_=VgOM@Jj_> z*Q=hkXQOm`2j^hfmKFC=ymz3Ojk-~lYJ)%bzKhIC-l0&C7cuuCRav*k9Nyr(e!__O z&74KT3u=ruIqQ_es7?QkG0x@|l)j9*$3JVCFUSOU?tlMMsrGYEkwvAc(LzfKx%B&6 zu%qeYdhZ2ESoR@17wY$&a$X9MsuEeWhxuH6ZbGtdZJ9K>XKH8uo_zKc8CT6YW^mfv zoqxabl&LZ=`lWcS?3hj3t-doUFAs3MkycA)ge7ZBql9q1scQPY$djMRf_~>eE-IBl zq4~?UixgLFEpGC7Xee`;9O0-EQxj4}rxN`coE$K~DfSd_k1cE z6**3K3ftt-BJUrj$j5%JS>U6OdHp@-JrY9SeEfiTm9a8^ZSsB~@?zsj?D+S3ab3e* z&+XzA;m(RxT;|kqtgqMqwd8(juImf!XA>`Iwlpck=xS6wP6!jDNQ7hNV1ZG?ByX6O z){(@P1rNK^>jz2*<~#XHp<9b?&BHj>7z{Qzza-*hk%B>TheAzoN#l%N-!-;uR)C1x zPqtq-^SDc2i~76iMg3X_SvibC&sU)iY%}Jm~pDwIor#8f79KbOt$ozKre0l z3nC8Z$r?|Dm~(XwfG^jA(5=ZI?r!>4q7_?0Fl%EhVW?gYNN>SyhlbwB@C`vrdLVD! zrDHWsZG&4XpJtzX2{qV_%Hm!L+WBHJnYtHVN^*A^{lduv&yezJ#6X)wLjKLr7r#q! z!sA^AI1nmGHz;n!ESC&``#X%_ueK~+NIfP-pXpZLd=5&{+@JofWaeUC&R*Kfc<=U6 zyrq_M4h&g5++8E$w>vM)j}sw~3+MU8NEaL<8q zBW1pg>FO-pzAq8<8!!=36UA`T%S>s%zY`SiU0VdKd=S!j zpzvR4`cA*8xXgLSr^XR?{LnOkp7*-S&t#1j(%16u>pIruF^_`2d^0im*#ECX&&U?n zw+I^h^RyWcxA7>o^4WgQVF*VL?hrnrVo z6qO1Uy1tZD-MBs2BL4bmy_|Hd;ATW0`R5%_z`OX&3tvj%rB*GP9f67U4E&fuFOLZo|B5E0R_N--Ll+;+8O&?ecDJzxJ`l0Nzl4IsK8)(Ni}Ru_qwdD6&B?^*8=)tJgF2gB z%s2A|YWiy#G7f){C8SG#jg4G&~6}FIJ)=NoNd@~pk z&a`DZkW5jG_2G5liZw^m#U3;&RFoIU2Rum|D+3{{{511#u)iPWA2uPQAxo2gBl-`r zZ}=qc;PGi1jD>^qT8?;G+o#qW!vd#H?9bW|8xxD~jq!R{lNCYFP>FY+uYPM=h<7_$S^&)*ipNrks}t4Y+sJv_+Hl zhjHoM2Y*FS{@;r8D4$YKyZg9Id>ib8%%7$};%0`;#j(6Hdp@>FKOa_h2AOZr0j?GojhfH^X@Ht zV}9tPe@|HOVvUpSeTnvR;Ab&=Faw12g^s!Oe}LjpC{-`J@2sxUT4!4Q+p>#SPxuW|VtFQ~>s=;@C@ z({>C`ob`l_>nF>|B^ah%5u4*wTgEuZp%U}>`U3-)UR`O=T4_p>@5D4EqD*X+i5EJ! z`r|J`#+ZT$wb^wsOjieG-d#K02#@yw-!x%nkGNFqv)}gf?|sWLvCQ|^J~Z4blcz9# z3Vd)wpK1?}wQH&Feo=fQA0Yan+-gyi+i9C|WxB>in6=)u?eKnos_%2|WfiU8%cGkV zMj+0zsbA{8vAMly_f%>SDEbLjkuyF6jk=+hXzwORIQNk5Xmxls8>mpp*jO_%uAz_R zz2hDbB5H^DgxI6;r%!zK{oQou@F(<{F#%f5b9RYUR~eW#?r$9UaL(ynXKP~Z$YnLo zH%nM2;e|!vzN(zG4-<5ikJUfn_t%4ma96fpIv5J=4L=tVd)L@okGFYkxaKD8Rf#sK zZ@`mu7z@`$#F%VIw=Lo;6ACiI`1Yn`+N_QZ3hBG)@OpA6Z7vFrTsMFPGm6SsAD*Q3 zWJK^!N=r?+kXs~24ww+Wtd`0efScie+JNA}47CB3Bro5|N2=?`Wk5?#4V<_sed7c3 zDoS<9;li}q>g9IEM=Yfb^c{V}4!3q>qC3jYM{-A(IB2z)w^?7SKc|4&4L?BnskxWA z;}V6x5bN{a3=ttY8rw{qi;-*-z#UZ`R^bIN05ojl#~BMIphP)hQY$B@R|5alA1k!_ z!$6Qoa=a<>PoB$-(brCso7QA(i5L_&jOM80XIN**;i+Mxb;9EPU%wei7LX*?Z)?+8 zy2x#?v%;hZ*dV~4(3YfF8xpUKj(6KU`A0f~DAnFbGGFykQMuz0-uOLINIl3sW8AE} z)XPq(<&F6$hEc*j*8R{qaB_Q_n>DgbiJ;ApeQRscL&yH1P=(*5g9sb~9m0J)Y;3~* zrOm-s?rBA4Z6teYJ~%0Xp}oEWtyfSzr;OJ$ImNMl^-}!?S4{r7IjOd`#uwMhh1CFM zgwM0poL{Eo+O3V!y}UeAHy)zjeL%kK#53sM>D6~wPTM32B;q<5Ez-a)_q@*ZdR;L? zj+M+dp>DRfBHY6+5`frN4;tiwT=`tv1#idft69{_BcZn$CKaxRrO~3Mi}bzb6qH}b zb%zl_L&TJNZUX%8Dd^d45LO9_=)FwEk%vCC9~)Abhyb~ z6n$^JZ7SX|P3iD^ssEy7f!-krjpkibzgKG zkg<#YA+~qunV~(PW}tAFMGJ#1VGWz`JH>d0A0&F+`xQC1oR0g2-``F5=c%0(z~3^x z#_=avUW}xdC6_@;VZS{t3aUJ5IhAp;kN>G~#$}j?>Jm9WlkY|q8@LW~**)+UCJD+| z+{ZYAWNkUDpfeeku$41zgtpfP1;&!ssHAC00LWW><8u%H-jQmAFp0 zw@?rVOQ?)tXWjK}<_u$TnD}Dd4+8RrYPa0fZ;=lP=7M^Ab3t|d)kXg$bsHAZu1)if zM+99}LTmlofW=?eGc&s>-@nUH5HgJQ`|NM{PkgWjcheUamt|{X1Cs$zyeS@=)54~n zLQT57QZN3?*spscFDL7A=k*WHp!CI&IQp2AV_V#B0xkPzW`uWxv9T0fs+$E4q46fG zOJQG^w?Ic!9i6T<{Q8+0V(ZU5%%iAt$%Cdh5gh8JO}S)r(~eYer_hH{*Rm|+ubM5< zYWli)U7x$xH3e`RoJdIB6!`Lbt6p!XTTy6rTeZ@1L(YQsw3BEUvu0JrOqVZI_~P;M zj0n4Cz{9E(vYJJ~NbY`raEcv>_u^52`keP(K`dkW)%{J+VU5$j=ckME;xVO+O=fM< zWg+di=`3yUS8$}cD~Ug#+K-^IJnjES(OEDw`L|Jcj2es>qekf%8{G|pjuFBLVRTAM zNh1gbvC-fdjiAJc(J8Gk0cmLrx+D}qvCzN1yr1HEe)l=&y4c!9c9c^)l`~b>&MZv~ z+4PNG+~8(ry7>=~`O_;8awhBlE53Erl>K7bW<`G1*z8d4tp1<7USqBM`}I|OX^m*r zuPzPlW%d=YzYM44aMD4}8*ZA;gS+`$TNPR@h z#AGcSIPmuur!kVvjo_?E$^*f(ZBvhCb-%t3j2biRFY+_9n^F%y9#q-W{m@P26tvcB zawzQh*xRa5GYPzaT`xS+p44ol?xpAJ!xqH-*3~~q3#-c@#%hLv13W8xkQNV8WMJ0y z>Y6X7DVq|qeIXLP%`q<=3n!OM>8aj zBVQbH5S;`Y)!8(a=~IER*#}r4hhP-xEg2BcXrC_k(Zn1LtI z%etwtEz1wWL=WxL*c?iamD2!?ds~pajy!3BcwaVv)7}#S{E&=3qYA@M4BcDTWdlQ- z(sILvH-kLRa7UEZVj6JAxry6H914i9wwnGCSs*f89vfkP|236VQJ|V9>s~(I0GW9a z8(dJiE0b-E>R3ozKDa#l+V$pZtHbUF`1OhBRZFL%Lk1rE-@`X92>JG00#SldKW(&n z8WvbT?>w&~)S9#xK6-kg>w75mrjEOPUV2xhhT?Yr;iDlv9O}x?GLyWg&9A5Ly((v4 zgd~`wL#YY#X;DPiFGdzxfr3Nq`Q$$x^3kG#p+65vSB;d&Q$?{*rE9|lGc&&y8^il78vRWdBrReH zP0Ks?R1S5Td%jP$c160J|~u)%op>s)W5(xN@4dPky+Zn0p9%w0^KoRwne zF0YKMvizEU2?%4F67_yPc_a9=+DUj=uacPT+S*1=RFNUG_$0bO8Zo=E`4SB}>=im} z3{V0>VZk!ry;8hTn-f*|O0UbD@BSaw0B%ZE3v zU`Spc_=!?}!*6jaPKy^5@`y>NLOc<=;rr@d1S9>Z-4>kw^*b1v+@ORaiC3+=Xz7K| z-EE-{vE6*P$`SC-S#^|_U z%L<=@pUV8TT?{bs{OE4Q!=w=xeBJE3;{@fEuthfzsHbg}B2lT=sQc7m> zWhEMaZUiHaD33Tf`v2PAV3okaV~rj-J!l!<;&tKm?!h4==>-lwa;JMf-Y%-kM=ti? zy*z~O4p-(3pPtN3EECQ2`|)MDw*IX`Yk0A+jIGw2vzK$CA8J(yRBO^nfMDB~3&9}V zPJ80 zdGuv1EZCSf>w%UXgb`q)Nwq0ckPO01s_X@T;1JXMT0PT8V1>R^8xF^PfY(UoioE{J zG7sWNrr0Ln2u@bdioWa~@vt+SRXNwv1>j?yX#Ki>>GBVYmnuy`@7yt#Y_O@mU|Ecp zR`Zwsh(ING1A8+B4p@`9nlbk}>Y)SAG6fa3FTmWf1y|_|E|%xqKK5L5yWrp z_d1xsM|kp$RAv<AqOBvFj}WyWDR9 z3DXpnw=R#OW2{^4`Ukkw!XoLm0 z!9K5-W~sa%d3N$&HL!|iP?+LV(&oTqN63$P-mvIOe3ba(m&qgyYX5_Zk$)oA9U;!2 z8g$SvEPrO}5&IJ>J;n@x81V$3G+PhSz4Z>sQ4f^)ev$whZZ&pDsNufLD7ZPGD?PU- zUOa^nk3LDHk&qfI3Y4gJ_JwuO=|Xe>SvmP}v7#m1T}G<|yMyb?>K|ePo6NQj6EXq3 z@WiDmv56bv-0hI#C;Pn@I*F^EjPs0wMrrIufdsKJKrcm!kdZ05IvHt^4Evrn|EFR z>fgcb5%op0zApHFdtK!Ur938#Oxfdz=2jO(xgqOE>&YpMb9}P3IZ@R;hAHz>8SGE4 zOHJ2sigDTG1wpnH1prAxLWu)U#z@xRX))>W3N0oKM6<^}BB%n2i_ zpsoACx4~-_gUn`Zz9h{@#X}Eb8Xq0BE|hX*)zDu+Yp$y)@Aq@)H~vKjY40wE2S)+Q z^U)$QZxZFMSBex>ni1|O#>(*g{cB9V<168XWi#&3{Pjvqt<3pWVpjhA1HQ5!sy}f? zG>73YtP&p8t{pRA|M2j^0XPAizu=;vt+gcDu8uq*E9HC;eO*J!O$i=!*aP#`t^j0V zl&hyTiuZe(N&Dc2q};cu)hZd0XC5iXx${PqZQ9v$om_^<;HY9LM|G=Fs)QayD?;b&@B4n2pctVx^I7HS~n?DkOIpzU5 z6Sa@`mmV?lGn6#+|ApQ%q&xO&`M~9$lLo>~=P}gEN)0ijDN{5`aJ@jMD~AX2Z%7;X z1ve<^W$+7AW*3_QCWAhSaWy5!f&YYc=iLHyChq6J`XG}=$ZSeWW}b=<(Cr>9Y9XhjQZ=*QEXh)RU2#?oW%6WjdQb}Oc>Wj0nY0uc9)f+nU7 z&qGJFG*>^lFmXVZLAks9TKW=slYVmf@zR$@pDMT)>d;D`-H&1le#Y84o^11K&{3*!F=P}sHp2k1Hgzu%;#%u_#BxqoNe3(MMGy`y?> z(m;YQ-d-opi2J_o(Nfm1l|mwK2Q^Ic9{T!CA%j1GO6M7c@sH&R(zfPz|E%v`()Y{Y z0l%$UzMTB|$M2hN@dFdk`CQ@ATRx|fR!R{^mR0lg5oA|g240@}5Y6&4fT4>Qzp4jCg{{V-5AL6+Kg@HH;O2gI9**h-j&Y4|LPiI~qeu}j#r&AZ6+Ou1dU zZ1#jXh>PJ})F3)MCwD^F@r@vvQQP*OIhTIti&`^m_r;e!?jj77v%7l%=KH+J?yW;3 zd#-)EK^>;FD11xrZ4|18k=0b|>I`86HDHGr0|`9D-K`U{aS3{PXmWSeW_X(62mof66MQu`j@FL|7f}8&78BqGVjD z==58J$F7YfNXo!x6HI8wPeNlxhHFG-D!COcW770;M<2J(7u5pxcPrX0q|%psm83?C zx_3!My@$^x>Z4U$%sL^8xw>fsg-4V1YGy0U0zlRGHV5G z3m!8O(AKS0im|R{pEaY0K$eVKHe*kmgcd@BdfXo?XkIo+MA#D~$ z{@yH!sW3SamsAF1ELB?*WK2`PR_FZ#@Kx~jsxU^Vb}neiQWBgQ!Y*F7;tL%L%MqFf z8vt&3&L=;1+D*hOnooRS-iL9ed=4Reg_#atwC``b;wB`Ig4 z#zO-@y}5UoO=O!6p-s2AEgr49$pASf827{h+Hn0YFjgMD!b6OY{#ZjNCNJLBT5elv z?S!VLTJzc8t^sOYIdYnr)uKA-2JD$^<+!gwuC@-6V^8>oo~da0r&OqJC$B$sGuK<8 zRK!Mspu6@QLa)5?tlms6Liew0o=B`5-&+z$_O?Y7%gpK*Hq*#8J7Odfrx;mZG&{+O5x!PnTP*w*9V7d=0$(R!{}*G%I#d zfOU~P#b+aGZYY?l-A|s=NLxALUdAO?GpO~0j7!ADAw|US==o1<^L&)e878!<)7TD@ zjHo}XDSMEvrqOVHHN#jB^MbvZ$7(nku~GC&sf*ZCI0(7*&^o+?C_m;-IzBTB*(Qhe zv_u~Tf#b&uLls5iL@-;Yhy&}v#L=uINpr)R=5fiZ3B|x8gg|m!)t?Kuo7Eyxuu|kM zYc(jXP8pW#rngu7@}mj~ZT56)VIA@i0@*opc9MOWFJV^pWYUmh^!!*#mH7Dc!*_?+ z!AcDb1ZrPF>?Hz=B%@^q6I4`FuuUwtdm1Gaex!3@u4iU^j7vA@&SH-pkz%N`p3R-yd0aBdtchDEcK9906c?5Rdrf zWEQ<=I5)Flau)pHb*)MIDCRj2t!zV#-{7y1%v-0z)A64 z>oG#z+Vk273 z2;B;sUsCbgDCrS4Nrp$;++cweW9}>85)J!_%^6b8z(Lx(e!6takI6)%dt{<4TCO)2 zuStFXdHd(@Dg-9Suu`3x4~Q*MdqJ%=gIP6yxqm9AtxlxmCo=P#`u#=dk5#T(D>h3Y zIUSVDhcfg^omK1t+9&(I3FIrtl5g2%`jIm>fy0b_D za6I87x!y`)otwK%*i9JQkV&pjT#}TEhi-_dIMp++_3#U=-baX*I_7!V$YYt>-rF8# zU2?VFZG5ou<`rj>oy6>+jF6W0Jz3@m@zI;vpZbuik2A)h^-U*f%J=ixzAt(<0qcUV z@;Z9DXDNutvkVS{uXEpl1oVn8_(FR7Q^m?_D%T?~7vFu8X6E0X!VBgk{BYl}b!HKa zBF4=^lYA6=S()N;my*YfkAHFLgi8K#@2Yg433J$xY>Z6cbMqH<+lwFI5y7|#LK)Q1 zb=a2&`6(Pw&P~?2@opt%9iwMIj?(q1fhqjl?%rAE@837pAmpF@=m#phE155UC;4wL z5i6UMk)M~NMXN5(gvfsWp8xoHS;W{CF3z?Fn|j5iYZUeu2VV(hOrn^T%{gO^0sHe! ze(uaP=GMyJBl(TRdI2*9dL4<@uX{7@`XNeq9s~!g6d{8 zae)a#1rA>6V78a5`kt~Go1R-+n4|E^rUVASzDczoZgGD(`0M2c=7yEa*FwpP>@S2t zu*-q}2!##U=Qb>FJz^{M(no1ec;c@}Xpcxr%z7GeSM0iWaK;42T#D3MM0P zi}DLT;wKyQN+mOrZg5t$0(pGt9U6lbw_X&8TS+`@oU99Yl=|1tfG1$?$}rYCF`(&S z{?(!WC-Cl2S7yylK(47J6tsv0-q8LYdpKCbAJy6IY@$ldgX$PPkQ2<@Vs6lc+Yh>= z!}45G7|4JD*ax}XB^}ZePU2Okj+I#i&JY~h%@xGfHBew8M`~hk>veT5Se*|tOgN+l zuT{FFvygcv{KCFwhMAX`Ls_cDK=|T8k)4@>u@- zSCEOAkL;MU9BA_+f6>Xga#((2mYI?blQ3N>ZJAI|GB32PK)|)A5FHB(yJ%92Cr+p4 zjQPiHe@V%gEmp;QuyLsgeS8g0<=F*xuEt5@?2aJ{(!O-QgO%9Oaj}ONqtRPPR@K8t zD>!l@tEnD~m*=%=@?ybC^NadRZkVwrhb6R?-v~pN&XV3tbi6!t{8xXve#z-*2_`>{ z#VR>nqIF5P?_k1(@$;$)5RCH1+7@0ps}=Snyt_6WqCm=di;nK~6Pa=2Yf>ylN^syE z@~p^231>v*7F{sI_&xOy|8g~>=f>D(~yXNY}OyGLhw_i zw}ry101k6)5pqc2VfSIMYYL6&H5y4Q7O2R9+1iqPml;y%#9qGiHtd$G*AK!v#@Fuf zHm19HX;LEiz4oa|KEt5ML$>xb&FYsCs`9*_AJiS+xjO!l8pi$$u&{Yq+ogS{zsD-r z`+1QWtP&3Hr#Yf(RcqP?S8bE_$MSxE$=aBm+AuhDw4pV8yiy#% ztmHV2#5PeCudFmcW6-obwYLr8Qn^;6a-5S9eZ@{NSdWb2d*oz3W>GURiC)4tO=5{; zWq9ZJKY*wt^PUXiP-0)~!J)#DT`zWO?D|^@7E!E|W(d-&7GcwA%WuKU8jK~eVGTZ1 ztnotUxaOO8B||}}9ixz(LN8P{TEfToFv+!vx*2Ge+tG7={mNSUKKJNL8tn7uEz?ex zom?VjT#p&|3g{08#8d((EVK(Daz}#4p*5yZB{0yS;UUi^Qz}PnuDJlO%Q*jx zm#m-fmpR-JhpDewx&?U;4+Kf=Jv$zJxi!;D2G$m}M;Bj%eCMDKu_C{+OKZv(V1?Zs zlhBz7eB^XWPu&e>6Kc2vm+gVwlVB9*5i!25^i<8c>o&OTcmoL(WR?4xdC!n1%bhDs z-iuzJ&I?t?&0ajG=b5F%rausZEhr5gf>huX=gvNmow(Hc|0C&)m;0et+`j7I2;h^t zaD*PhRf=5S5!tRY=-QNjMN#nCkHF6B3IW_jOk=XXB^N@LY&I|&D>4LRQpG>#g|DOdxshiU8<`&)zftS5r^ONsR zV9p=&u~vi4r29d5k&91=7OWVY6Y=~hTRK;8eC(v9wVswTeRF9ft;+O%5S@H{pCuM} z;mhT>phAUW<^BPhJr*D3Xok?ZnhO_e@X$eS+}NcToF&xMC{SJq_>S`cXKe0#>tSyNV zTliSkVY~MGUu&_ymgeA@*rq#*ZAaj^yfNo#Ba=@R8SeQP0UM7vpGgLG;fVE|XB_|Y*|#M^~vM!gdg zR_4nY3r+SG=#yc_Ud*};zTdj@i@Ig60o@;?&1=SgGxl^Yymi~Y6gyl>pyZvk)T}R7 zKy#jP@JTRf<`IT)o7xabBRV3znl2-K>3($~TwK25E>4^|`+YLz!`2B}1NiuHBZH>h zS#gV^t)@4tl*%nZ%}pVl9VEr%ij=SczddcY^XJ!JVSSWMMwE*HlSQuPQWHnmd97l> zW3f7BC_rM{KRAW43Qo)HWFr8Fr~0^0-lM47HHyv--ohkvvke5T9$g|x5^W2u;|A|N zP=cYh(B_`qB1u+{0w1HExzLWX^&A9rV;&$J5_n{nqIT;)$_Piy`Ox2AVw5mWtn9u% zy-?WmgVKHl(W@TLl*+APTy#0VnwTjDvtc>2el1SJnTsn`efQYusfV`=E};LOKy62V-|FM*PI(dJpK8LFJK zrq|d8Qm-}Hq^ZnReIJc2D@^3%F>Z;T`I;HK4=!kKFa!1bPTT{Yt+YWc6NRpANlMQY zq&~34^uJjekc#<|A#qn4c-Ow7TDqjs$la zQv<9fNIFe1Px_Vhy2JG(cgKRaV#BWd)C1=+9gv=$R{aQ@XgF2G-ied91`%mB!}h^5 zKhL9vCURdQu&yMga(joCNX>!VC&IIMIZ=Jux%>~C^RVIZP{ZW4zXvrhfyYHjWmnA! zhlxeEdJn$IcM(~PTmV)2yRTGs4AAPNgIy^hWT;N(M}(2F83IHIh7NV4#h_}<p=%j&uiVV9O}d7qXaD!7nH0~O z!edHwu%N5E1e{iiGYOv109v96tqAl|#<~SB5^^JI>DkxzR)f=Js~ig*3xwkUEixl? z*!UklB*vJ5gNr_mb2MTePoL}(Y$`5-m`#2w5m4mZ^ZO-XX34GRLJR0_%=)`W-nF{q z^Y{LD^yWaCt{w-Y6z_QeJD2~A^;G$2wN0%7%`kkPFjDi=% z*#Jj#n|_;P5tV7I1OatC|8f8 zC%aqiOt~}JiJ;OOf8W|=2~LMMR#^@Oa1vtyk%DSN<88hGc!giA{c4JK2!z`Z5Okk| zph_|JQ=?MC?DF3!)~q}*pCSKXyqpyCUlaEWkyoZ3m?uB_W{8H;&ikg@GEfmKT<}+K zqVB?h#q#ok#uS)o?YpflxNW>}U(Q8g^qg3;#LEP36QO0Sy zA!G%ZPeNL^Paua!Bbu4hJHFM=D}T-37LS4%Smu56xb5a`VHeAa-i0-6bQrQ$W8|g0 zs|pg8tCu91KLi6PAI3gGZ`KVvxJedo+7TrK_A1LxrK?~Vo{u^I0An?Xu8-9dN+?HB z1N3G&TX+?K?sx$DaRB3P*UX8!k&=_c3|<-L_Y#vSySKMw0Ub5+>%>Rr&>#1`n}Q2U zZ7Vnm+l`IG<*&?pT-ugmP>H&+nQC#mF4MdEsM`pG_?~t zi`oq~V?r=fK=c9AXO!e@FEo$6URWLN;5`UKWtVGM|Ig}dN1EB>D@!a<19O=l5d2SoL z>MI~vh0isj!#(TJGuMy{&ZE%ZXgs&9)pa*vw?2rH=h}f7H5GeU7=yzk$rIk861|NU zP;2^Zudzrsv@ke}V3nhyvx27o2M9j>i_oiLE`*lobn(O_MLkZvW4~lwg*N;RO9^jG z5$4Dv0faY<9L#F6QJp7ZjpmgTz|ia2$>*5yiPb{6z7b-(Us4O*i%06}c_iL!RI+lV z2(L^;w<+zF5n{X?p7rL>3(!Dnrk~j@;MoTuKm!zn#Z7Q?+-$lj9?UEA^+IS^3ei#v zOJ$kc!N&WB^(A0#zLZr5N2S8=5^QWcCb5#+tF1WNTG3Hwj-;EZ8jDz1h00KXJt6sdF-C1?iiE2%jkfa zBOOWHp|~tC9fYS)kmfusbe455X^XL&O{LQyp`p;uh%Qm~sb<*8**c%l?H7%k;N3bE zA4aDhGFRk9I+R1}r23>U>SbwOQ|3;FaH28$PBY0l^Vv0VDRS(`8EyzTE!Fns9t-{S z_rxJ#sR{RGhJIz3xorG%pjABuz$*J!#-;AEfwR;ktA<}a1`x``udTI(Y|_aXZ2Zxb zs%Y31Mq~LZ2G1M{GT%8Lahkq6iU&{9s7POa(0^B#ep0`)|FG4m^}DS2ivLd`5VC%W z^U8Yltc9cw4t>k`+72u$T=v;KEU5qZs7wSx1BQ zO`}ADdk-#nuupQC?OMT3*t~tWB)$hilyq6BxvyD|wRkP_r~2GXm+=;R1(l1KGaEswg!@)~polEkBhf z4DdwGSp~&Wv-ahC!jc(0iXEY89Sr+4qno)kd9(mrq>X~M`7WUj&~nwWryYQ0DBz_R z4jsuAEH9-*QSzlzhjlCwIGZE}^2yPNAQyTTV2C=P-1j?~EBCUH(Rj3l+)9Ra_<1rz zqI{|Hyt*g`**oTbpx!Ijb?Hivz)eqIiFLxodyjuzuQb{0`Fe?V5@|eGg*Ak0^u8=A z$eGg8C{wi8n|br=rTcYS=g?H6(TX)c$3}TUBwQfL`pi)_D8S(KhQRfF`!4IZA^o4N z*K$gsYAR1}yjs%w!p&qmic0_h)+=5q#oEC0K(<(O4LhKUph)4MQkZp_GCU#r7yBO4 zda6FM@BFQbEGumZpbud-F+Sd&c#%kU8Sv;cdU6?w%q7_QI#{xC#TxTA@bmHy$1PuQ z{Q>{2_%GujTjWFADU&`8DHe8qeOi(ysa})dsL%!r-huuWl{UbMk8GBm3WKO1mPrO; zYpODwzO^3A5g1HpjBFZCSx(!1J`M#WPO(73xI$~lim?`+>)-*ZK%9YD~z83Myc3$&313Edv-ngr;8lSM#qf+x8LZkWxvi`} z^Z4gHk@I3eU`V<&FEMub;YP&1ur}rppqzzUDZ*x?fS&iBqKy zYmu6)A2SE!y9-Qf7QuBaPb97Do1?q@hS32EWG{A919<1@5YZJNu!+7M-nCPR|!tmg6F~ zp`sk|`EPcE(JE~MFWqzCX9hU}Dwn3tzJ4K~1jWkBofeUabs3WX0I%PPVnW_pNEo}QC$#A^aHK~izDwqi zD$TCR_2NlV*;wJ)YnR~ex@T|Y=;_+}uRiWsQby3&dGAIF zk8&STm9g+bLK0-TM$PpkxLW**xB30gFB)7ojqvK@v+|)b-+vnrx?Mf-HS$Q{OPfl5 z7V$(9S|qqlsYE|q(|`~>DUN;9cH|m4n4-&4DeD?+{6uw0kbWvVkDJVZ>gJEI^UCsp6c0qpJXn@ri5#$OEYqCkv7#)zRmSP4}G6KKN{^ya??<8M*VgAee z!5vvMUm>_ts}Z|XlP`^gyd0_D62$^b8XxB{tS|3Dt>x9qXR^AVHnlTd2S>{(<#FUu z*HTi#Timx6Hg6P5#Ai`CV=G@i%wL|brNRr}@?LzQNq7s zFglSjMmI_LK4xgMm3##226|oghDuaEp&PgGOet^J**2`e^=dfPJCRDMu~x~4ZZuNw z40EBu_0F0WQ;6Lol0k|k5gNZlKXk<;Co^5u>5l>22aUKy#SPG zm=LWlBnPh=W@ls7RHolmeuqA9^TK|Nbtr}|XxYOnbGNVz=J znGdOH$ZpG8AKHCK6|A#1{rfGF3*xh&y}G8r=nVJueg5O8wXucwjNQTF)evYc-TRo% z<*{jpIKrFMgKv0@rYMpqG%Cn?{?L$~PXE|v4-c~ns`Znm0nA7I(b~i!cp5Fn?F$=R z+GCk#nT$wQlaBk2Ka*q$yz*V6c6}NE4Z!Dp9X8|GXTvuX&Ca?i50{rGUQfr3Lh`!x zGcI-TJY-cl{K)*O=d3$GM{PbK>CXVl3v2FVkYg%3=DxbeiDVichL3JKfTTkLlc1q%9u0nz8oaYEr3(yTKJXL3O$k z$%WfLGE#0sf1~0JFj|+Lg~<_y4$PNE^BEqeaLKXN#cJD z_IsVGLT_rc6Ddk>Ddgzzcr-n#CsleULz2+JyQ|qpKOGyScHYCKXJ+n#) z>SQO2&9z%-K<%%{yg1_F8Wrbn$ek=nu_!Rk>p~u1tY<*xVPq0V1sA5PfIfK}K5A-% zild9=JE}SQ0D{FS6#Q&-dXWHx7n*J;x!aD+2rI2xFobzF6SI7YfOml8`FS(U0i888Kq ztMIdE%Zs9%Y`V^J`f{#}$<3Z`vb!}mk8b}djpvLs$RX|80;@motO>f^@GN{U^LeL_ z;+ZJAP`0OWrQOxm_yHsiSHA-ZK$iwpJLqD`-_~mfQ6`gopL%NzayF}Y%8(N8-regt zOUJsxo5ba7%)X0E?D8pmX2KR=lIbq0yDE`KbAt2+JAF1=ABIjkr|FP<hRmewjuTO=Bs+J!J z{Kiz_l)T+=W}aDt=Lb7jS8#RA{*yxG(Ao}m{{J?ataft-Me83!#lu$*z-hH_(5+uQ zN&1JHzmlQPASDt^(rC6bG1D1*jxMHBkxCj8500$LLRcubxEyvHhSEBGOIEL*vXo#C z1^vA`i?EE7I5_U&N_ku*oii|??J%_rvZnO_2THOsF+RF+M8lGY&wuXf(qI-+DUeGs z4?!MQlSa)F!H9c9dtIgEyIW`1SEDi9S-$g#o4`Ao>*U_lTXdpCA^uMHyj=(*yU zzp+x*=;CG^x(pziPP6b(-W)5ziUC!;90!gvGdmPLl%E$L-EZ*&=0v}1)@!`gu1s~P z0cV7dA-tf%Ev|DA?lIWgV6!>ZMKSpDh+{W`kykc7D~EM4Gc>-+F-zBZ7TW6z+*^-%)6?p3>_en?ba~zaz4U+h12ljr;V9PzC)~DSX{ebUL2{R? zz&P+`?JV8W7Og*8@}{SNo}!GHWqZ_KPXzkAXy zwd0TMHAr%qh*DM#MOhmBq*KS<$2LlFh4V$D5Nv|GCcnronw;qW51@$_J&M%xO6ul* z(B}`txnn%j7fN4s-re(6jkwXR9roe~WgwUFMuYm=q{c1&^O4e6GpzUV=|1&&u~f&-3ip|#YG6PQr^EGpE6kZM%(*a3i8=qi z?sX<`ji7zm6C#=4Vjt}zBX6lkuhs2^YBIN*JzCDO%Iy`ov(Q}kZ4*@4zt^e2CdbdC ztLSZE*+@j22#D(qI4SvFY~dgbj_cp+a@yq6ho_V5;y6eH?()_tIB%rg^DHRH*+$%6 z5&#(%pRtZlgVPycG1wO>^#1GdgVH5ZK;RETa<>`l*#!7R~-Ox6I}g2 z{aJF!#WOF$Q`>x53Po?-wVm`kU$(0VsJ7V^cE#_>I<4O`4>wPve9aYS-F(H~hvQ5W zv1)IS*3|;IiBygAm8Ae$L|^+fTOtp;zjCg#2`=SiHsAI_#wJ)6xTGoRbj9&j zsKy}XbZPSoL}7_*JU$#dE@kZd{1Wb!Cnsu8XelJh)eS-;0HYWSZOML7o(he=aIS5mFKL26#R|{=%fv# z=;)EYv4m^m_;OLgK7EZ0v*sq10C63JHb0ug%W6reyw@luXmL%dE0huRUBJvyYIsC& zi}yNh%48m0lGY>ZOuux(Jhq#$^?Wr!!MGrOF9*^2h&KfQmWxbMAO3RlhO7ln2N4T2 zQfu1&e91_@pKfnz_-)$rue~FjD2wnc>3I7o%C3Vhi7qFlE0-hnGG?hKA8gF)4|AGk3eHB{;hh zEEh!sN>^x>O=mVrs~r@{vpx0ZT(VqWA?7_ix7CK@vcf+x`I(DHSP7lX#-K%VweLKw?_y>Z1reAH{Za(NRwOfxKC)g!6rtQRioEb*U}4Er1(MFL88d83xH;R7_cP|^8I7MoU6n!?@FrreN3Mc%AKSVhc!>BwaG_~cQ_b0-#4$creL5t}^zz|O zngZYBzQ*SpKdIE<+44%H1Uw#=mYmh)9G!iY*3RkOTG$%dm*`TNC6S@ZZ zCDFwgbob(|15i;Tu0G^QSl9s5y9fYqr7o1Fs}zn1BT%B6*0K#QGyC_2&Ga{GE8+9lkU-tWJBk!lQS)^esYJ+~M(5OoyK=4-G~7SFaQVul1l3yVWJo8G<-5(3pk#A*dGH&N6qR~+=9wBtr zS^D%^i1Nz$u*@y+9r<66kY0Xj6)$}6Seby*vo@2v6Lm&;(-=9%VGIjwNCpbGSBh}ZY` zs_2{n`P=mTTFi~PpDn5cIK0k`9OA8LDwwA6SQ z9AFq?<_#>oYN5Dj@-cZzr%vTshH_^PNMh%4x!zC>>4wm`?T2}^u(`mhwxl4dkNx>6 zUWyV=zqA(?SA(o} zZNDI)L%;B?g-j}1w5UYp=Hmz>?irSynmq7=X2wYW{c?SqP4y;8UEZKcB$7=`zE3ot zAM^$jpl^}n`XOeXD!MBsP~F8^&0DslNRSeJAgU*F5x|iE!g{0KhuGA4j@uGvqpsc9Utp@Hlx;QS0*~hF({JvONTo3 zvFIIRYsK6kZkzR|imuo7@@ExbrP;WD0EcgT!p0~o6$SN$`pBk-FkLf6~GfbBF!g~hA66bblopMf}LY|gD-k-y0bx`83+=iZ9v z5vzsj2Zmo$7jNq z2M~Nsd}!BFV#X$eW@Uj%zBol0QIsLjWQW5&mh!4x(Wv@s0ki<@TQVC4f7~qiZ_|c) zTsQ1z`Uc$R1Nx(DHPkQ~T3z!(9mBa&Jc}f7SiUxh^+a)&ndrmr{d}|sse%zIRbCR+ z)MM5-B3d>8Oa^C2#>VgK;H?J5bn6Ab#|!I|Cs&*Mv-Rh9dLdkXf0(q^YlHDplF<4g z{?#q7>l``3+}JZu;b=wR1XU5tO_dY6u56sRb+AdVBi$1kJHBi z%W3p#tESp)JN~x*|7}f4~5X5?ev33SA0yT`QUb! zgew+4JR=f@)WfWj!v9DQ1!N`CD(Zk#Cingq03840@LO9ROFM^yeHVAxYc-v0hbRI$CD{c8*Y-M7CfLD~cRZaVovgi^|hF7=`Dr(Qgvp#+J_88W1?&W30hNyYQN3M)-1`);{apN5fe3(*uZ6kZtM=YG=3v0qIa!?)jn&|BO87{}V?kh(I zIcmIWn+PkQWv~x_DCU&dLe9lOzR+<6oiLd$K_IBQSUBSfU7%9{n}u#04l0{Can8}q z_Z-o4U9P_`$Zi)6rXnaGHu(6Y_{T z7*`~K*;&PZA1HzDfqP=e(%sfCrJ50Dl2?^lC7qmo;Ew8mbXb@0qaQ2vz6nD`p#>$) zL7_0RrW*$7p>zbo!mOi8i<8gk2tp)DzW4Y|1<4m<2vKc79GZ!)hTUTO$6m06U3Ln< zqmwiQkU&)|YxUqD5RNi(R!UG^LlM3pL?#Uxl)_r@6O#)H*xEE9E5L;ZjI;xFqB6o3 z#zkYsK%2tCOHe#zJVs%2=7v#yHwHax7YX|%s1j5g%jNTj2~E(cG^iD;vpg^=P5>N~ z^RU55Q5EI%inZ`m9>5w(;q48cQzd0QbnAS26slZG<}EG-e4;jd>1A1oXR1#fJ!9B4 z8gg7_k()1)_MZT>;(-LQ)H4pgvFz}b0cz!}!=krkY_IGYnSzv(&m8rud{DaSQ-wCx z*@jjbN;GibpE$J|xSa_q(h+3_#d$-0?gVsKy655Li|R02KpG^62S=gPlz9~?Mr+i@ z2#~sUnvg|9KM3W?5p<%U0)ZI=7h!04Mg&1OuZ5Jb03fsKop;}X9x=r77o^5G z=BY{o7%`>9PGxp5VE`0nK~n^p>7*_$so`h2s28YU)EaW?@NtCUol_+yVp-fjq#+=# z#$_p~QDMcQ2u!>dchRfYSB(osi#tz-qfL7G#)MMTqnFD5y>UDtz+1&GWZZzg_a74u z8z>Yjo={F*Ve(NiF#TG&yXUE;tlX-S%}q=G8W zO)V4x5;?)5>Pg+#IZ}V+&r`vopxIBD*gN_5-PCg@FSPHzU^T6NQAV^v<1WQ@*22u~ z0)}@lROWH39#z&L@fU^lEI6$zqa{FrnOQ-jnsIaKSmt+S&<9m~wE}=h;??nvW16d3 zB4toJu2in@H6ZHe?Gn!=URj*h_L*NQOAhTi>aZenPHBO3S(K|e4{^>G07_Xo6^yOr zL~1-l8ze1s!hLeq?GsdXQoNAF5<-VD0I16IkV8}hq!pnO3X2d3)y*IjES{e0UblEm z(nKN(1@vw37KOdGMh#;^Il#jzZU$^sGO;d@=AxjqNU#8VMmuKvZnF9K=k`W$X!{Br=?A-OoXH&N~+K63RK(#N^mr$yTl@j^S6y7 zAh4vkBoHqKP>ZFh1&vtn5Yn&+K&^;|L2gY4sDUdlCBc1T6g(D{Gq`utd^Hv!e1avXn0JnMT%=7z+|NMfqtopZA`%A@ za!U6)!0b<4D1f zWl9p#OS|(Xu*FI21~gikgnz_nZqbMeGFxC*rc5~idinnV5rDj{)_g%mTmHf39@K_XOBWfDU%`iMfS zO%mMqfIH}30O+&kWFwU;#Bzl$PQY?0szB3m

I5ZJLI3(k5l77pE`gI$GN)xb#ey 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%0A%V+|e=HIPG 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
  • 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: Drawable { fn blt(&mut self, src: &T, origin: Point, rect: Rect); } -pub trait BasicDrawing: SetPixel { +pub trait DrawRect: SetPixel { fn fill_rect(&mut self, rect: Rect, color: Self::ColorType); fn draw_hline(&mut self, origin: Point, width: isize, color: Self::ColorType); @@ -297,7 +297,7 @@ pub trait DrawGlyph: SetPixel { } } -pub trait BltConvert: MutableRasterImage { +pub trait BltConvert: MutableRasterImage { #[inline] fn blt_convert(&mut self, src: &U, origin: Point, rect: Rect, mut f: F) where @@ -460,7 +460,7 @@ macro_rules! define_bitmap { stride: Option, ) -> Self where - ::ColorType: ~const ColorTrait, + ::ColorType: ~const PixelColor, { Self { size, @@ -475,7 +475,7 @@ macro_rules! define_bitmap { #[inline] pub const fn from_bytes(bytes: &'a [$inner_type], size: Size) -> Self where - ::ColorType: ~const ColorTrait + ::ColorType: ~const PixelColor { Self { size, @@ -495,16 +495,6 @@ macro_rules! define_bitmap { } impl<'a> []<'a> { - #[inline] - pub const fn as_const(&'a self) -> &'a []<'a> { - unsafe { transmute(self) } - } - - #[inline] - pub const fn into_const(self) -> []<'a> { - unsafe { transmute(self) } - } - #[inline] pub const fn from_slice( slice: &'a mut [$slice_type], @@ -512,7 +502,7 @@ macro_rules! define_bitmap { stride: Option, ) -> Self where - ::ColorType: ~const ColorTrait + ::ColorType: ~const PixelColor { Self { size, @@ -527,7 +517,7 @@ macro_rules! define_bitmap { #[inline] pub const fn from_bytes(bytes: &'a mut [$inner_type], size: Size) -> Self where - ::ColorType: ~const ColorTrait + ::ColorType: ~const PixelColor { Self { size, @@ -537,7 +527,17 @@ macro_rules! define_bitmap { } #[inline] - pub fn clone_mut(&'a mut self) -> Self { + pub const fn as_const(&'a self) -> &'a []<'a> { + unsafe { transmute(self) } + } + + #[inline] + pub const fn into_const(self) -> []<'a> { + unsafe { transmute(self) } + } + + #[inline] + pub fn clone_mut(&'a mut self) -> []<'a> { let slice = unsafe { &mut *self.slice.get() }; Self { size: self.size(), @@ -594,6 +594,13 @@ macro_rules! define_bitmap { } } + impl<'a> Borrow<[]<'a>> for []<'a> { + #[inline] + fn borrow(&self) -> &[]<'a> { + unsafe { transmute(self) } + } + } + impl ToOwned for []<'_> { type Owned = []; @@ -618,6 +625,13 @@ macro_rules! define_bitmap { } } + impl<'a> Borrow<[]<'a>> for [] { + #[inline] + fn borrow(&self) -> &[]<'a> { + unsafe { transmute(self) } + } + } + impl<'a> Borrow<[]<'a>> for [] { #[inline] fn borrow(&self) -> &[]<'a> { @@ -625,6 +639,13 @@ macro_rules! define_bitmap { } } + impl<'a> BorrowMut<[]<'a>> for [] { + #[inline] + fn borrow_mut(&mut self) -> &mut []<'a> { + unsafe { transmute(self) } + } + } + } }; ( $suffix:tt, $inner_type:ty, $color_type:ty, ) => { @@ -779,7 +800,7 @@ macro_rules! define_bitmap { impl DrawGlyph for []<'_> {} - impl BasicDrawing for []<'_> { + impl DrawRect for []<'_> { fn fill_rect(&mut self, rect: Rect, color: Self::ColorType) { let mut width = rect.width(); let mut height = rect.height(); @@ -891,9 +912,9 @@ macro_rules! define_bitmap { define_bitmap!(8, u8, IndexedColor,); define_bitmap!(16, u16, RGB565,); -define_bitmap!(32, u32, BGRA8888,); +define_bitmap!(32, u32, ARGB8888,); -impl BltConvert for BitmapRefMut8<'_> {} +impl BltConvert for BitmapRefMut8<'_> {} impl BltConvert for BitmapRefMut8<'_> {} impl BitmapRefMut8<'_> { @@ -937,11 +958,11 @@ impl BitmapRefMut8<'_> { } } -impl BltConvert for BitmapRefMut32<'_> {} +impl BltConvert for BitmapRefMut32<'_> {} impl BltConvert for BitmapRefMut32<'_> {} impl BitmapRefMut32<'_> { - pub fn blend_rect(&mut self, rect: Rect, color: BGRA8888) { + pub fn blend_rect(&mut self, rect: Rect, color: ARGB8888) { let rhs = color.components(); if rhs.is_opaque() { return self.fill_rect(rect, color); @@ -1034,7 +1055,7 @@ impl BitmapRefMut32<'_> { pub fn blt8(&mut self, src: &BitmapRef8, origin: Point, rect: Rect, palette: &[u32; 256]) { self.blt_convert(src, origin, rect, |c| { - BGRA8888::from_argb(palette[c.0 as usize]) + ARGB8888::from_argb(palette[c.0 as usize]) }); } @@ -1290,7 +1311,7 @@ impl DrawGlyph for BitmapRefMut<'_> { } } -impl BasicDrawing for BitmapRefMut<'_> { +impl DrawRect for BitmapRefMut<'_> { #[inline] fn fill_rect(&mut self, rect: Rect, color: Self::ColorType) { match self { @@ -1453,7 +1474,7 @@ pub struct OperationalBitmap { vec: Vec, } -impl ColorTrait for u8 {} +impl PixelColor for u8 {} impl const Drawable for OperationalBitmap { type ColorType = u8; @@ -1976,7 +1997,7 @@ mod memory_colors { } #[inline] - pub fn _memset_colors32(slice: &mut [BGRA8888], cursor: usize, count: usize, color: BGRA8888) { + pub fn _memset_colors32(slice: &mut [ARGB8888], cursor: usize, count: usize, color: ARGB8888) { for v in unsafe { slice.get_unchecked_mut(cursor..cursor + count) }.iter_mut() { *v = color; } @@ -1985,9 +2006,9 @@ mod memory_colors { // Alpha blending #[inline] pub fn _memcpy_blend32( - dest: &mut [BGRA8888], + dest: &mut [ARGB8888], dest_cursor: usize, - src: &[BGRA8888], + src: &[ARGB8888], src_cursor: usize, count: usize, ) { @@ -1999,7 +2020,7 @@ mod memory_colors { } } -define_bitmap!(1, u8, OneBitColor, Octet,); +define_bitmap!(1, u8, Monochrome, Octet,); impl BitmapRef1<'_> { #[inline] diff --git a/lib/meggl/src/color.rs b/lib/meggl/src/color.rs index 9eeac5d3b..63d954433 100644 --- a/lib/meggl/src/color.rs +++ b/lib/meggl/src/color.rs @@ -6,32 +6,43 @@ use core::{ /// Common color trait #[const_trait] -pub trait ColorTrait: Sized + Copy + Clone + PartialEq + Eq + Default { - // fn bits_per_pixel() -> usize; - // fn bits_per_channel() -> usize; - +pub trait PixelColor: Sized + Copy + Clone + PartialEq + Eq + Default { + /// This value is used to calculate the address of a raster image that supports this color format. #[inline] fn stride_for(width: isize) -> usize { width as usize } } -pub trait Transparency: ColorTrait { +#[const_trait] +pub trait Translucent: PixelColor { const TRANSPARENT: Self; + + fn is_transparent(&self) -> bool; + + fn is_opaque(&self) -> bool; } -pub trait KeyColor: ColorTrait { +pub trait KeyColor: PixelColor { const KEY_COLOR: Self; } -pub trait PrimaryColor: ColorTrait { +pub trait PrimaryColor: PixelColor { + /// RGB (0, 0, 0) const PRIMARY_BLACK: Self; + /// RGB (0, 0, 1) const PRIMARY_BLUE: Self; + /// RGB (0, 1, 0) const PRIMARY_GREEN: Self; + /// RGB (0, 1, 1) const PRIMARY_CYAN: Self; + /// RGB (1, 0, 0) const PRIMARY_RED: Self; + /// RGB (1, 0, 1) const PRIMARY_MAGENTA: Self; + /// RGB (1, 1, 0) const PRIMARY_YELLOW: Self; + /// RGB (1, 1, 1) const PRIMARY_WHITE: Self; } @@ -50,7 +61,7 @@ pub enum ColorFormat { #[derive(Debug, Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Default)] pub struct IndexedColor(pub u8); -impl const ColorTrait for IndexedColor {} +impl const PixelColor for IndexedColor {} impl KeyColor for IndexedColor { const KEY_COLOR: Self = Self(u8::MAX); @@ -144,8 +155,8 @@ impl IndexedColor { } #[inline] - pub const fn as_true_color(self) -> BGRA8888 { - BGRA8888::from_argb(self.as_argb()) + pub const fn as_true_color(self) -> ARGB8888 { + ARGB8888::from_argb(self.as_argb()) } #[inline] @@ -161,7 +172,7 @@ impl const From for IndexedColor { } } -impl const From for BGRA8888 { +impl const From for ARGB8888 { #[inline] fn from(val: IndexedColor) -> Self { val.as_true_color() @@ -172,29 +183,24 @@ impl const From for BGRA8888 { #[derive(Debug, Clone, Copy, PartialEq, Eq, PartialOrd, Ord)] pub struct Alpha8(pub u8); -impl Alpha8 { - pub const TRANSPARENT: Self = Self(0); - pub const OPAQUE: Self = Self(u8::MAX); +impl PixelColor for Alpha8 {} - #[inline] - pub const fn transparent() -> Self { - Self::TRANSPARENT - } - - #[inline] - pub const fn opaque() -> Self { - Self::OPAQUE - } +impl const Translucent for Alpha8 { + const TRANSPARENT: Self = Self(0); #[inline] - pub const fn is_transparent(&self) -> bool { + fn is_transparent(&self) -> bool { self.0 == Self::TRANSPARENT.0 } #[inline] - pub const fn is_opaque(&self) -> bool { + fn is_opaque(&self) -> bool { self.0 == Self::OPAQUE.0 } +} + +impl Alpha8 { + pub const OPAQUE: Self = Self(u8::MAX); #[inline] pub const fn into_f32(self) -> f32 { @@ -352,21 +358,30 @@ impl const SubAssign for Alpha8 { } } -#[cfg(target_endian = "little")] -pub type TrueColor = BGRA8888; +pub type TrueColor = ARGB8888; /// 32bit TrueColor #[repr(transparent)] #[derive(Debug, Copy, Clone, PartialEq, Eq, Default)] -pub struct BGRA8888(pub u32); +pub struct ARGB8888(pub u32); -impl ColorTrait for BGRA8888 {} +impl PixelColor for ARGB8888 {} -impl Transparency for BGRA8888 { +impl const Translucent for ARGB8888 { const TRANSPARENT: Self = Self(0); + + #[inline] + fn is_transparent(&self) -> bool { + self.opacity().is_transparent() + } + + #[inline] + fn is_opaque(&self) -> bool { + self.opacity().is_opaque() + } } -impl PrimaryColor for BGRA8888 { +impl PrimaryColor for ARGB8888 { const PRIMARY_BLACK: Self = Self::from_rgb(0x00_00_00); const PRIMARY_BLUE: Self = Self::from_rgb(0x00_00_FF); const PRIMARY_GREEN: Self = Self::from_rgb(0x00_FF_00); @@ -377,7 +392,7 @@ impl PrimaryColor for BGRA8888 { const PRIMARY_WHITE: Self = Self::from_rgb(0xFF_FF_FF); } -impl BGRA8888 { +impl ARGB8888 { pub const BLACK: Self = Self::from_rgb(0x212121); pub const BLUE: Self = Self::from_rgb(0x0D47A1); pub const GREEN: Self = Self::from_rgb(0x1B5E20); @@ -451,16 +466,6 @@ impl BGRA8888 { components.into_true_color() } - #[inline] - pub const fn is_opaque(&self) -> bool { - self.opacity().is_opaque() - } - - #[inline] - pub const fn is_transparent(&self) -> bool { - self.opacity().is_transparent() - } - #[inline] pub fn blending(&self, rhs: Self, f_rgb: F1, f_a: F2) -> Self where @@ -505,16 +510,16 @@ impl BGRA8888 { } } -impl const From for BGRA8888 { +impl const From for ARGB8888 { #[inline] fn from(argb: u32) -> Self { Self::from_argb(argb) } } -impl const From for IndexedColor { +impl const From for IndexedColor { #[inline] - fn from(color: BGRA8888) -> Self { + fn from(color: ARGB8888) -> Self { Self::from_rgb(color.rgb()) } } @@ -546,13 +551,13 @@ impl ColorComponents { #[inline] #[cfg(target_endian = "little")] - pub const fn from_true_color(val: BGRA8888) -> Self { + pub const fn from_true_color(val: ARGB8888) -> Self { unsafe { transmute(val) } } #[inline] #[cfg(target_endian = "little")] - pub const fn into_true_color(self) -> BGRA8888 { + pub const fn into_true_color(self) -> ARGB8888 { unsafe { transmute(self) } } @@ -582,15 +587,15 @@ impl ColorComponents { } #[cfg(target_endian = "little")] -impl const From for ColorComponents { +impl const From for ColorComponents { #[inline] - fn from(color: BGRA8888) -> Self { + fn from(color: ARGB8888) -> Self { unsafe { transmute(color) } } } #[cfg(target_endian = "little")] -impl const From for BGRA8888 { +impl const From for ARGB8888 { #[inline] fn from(components: ColorComponents) -> Self { unsafe { transmute(components) } @@ -610,10 +615,20 @@ impl const Into for ColorComponents { #[derive(Debug, Copy, Clone, PartialEq, Eq, Default)] pub struct RGBA8888(pub(super) u32); -impl ColorTrait for RGBA8888 {} +impl PixelColor for RGBA8888 {} -impl Transparency for RGBA8888 { +impl const Translucent for RGBA8888 { const TRANSPARENT: Self = Self(0); + + #[inline] + fn is_transparent(&self) -> bool { + self.components().is_transparent() + } + + #[inline] + fn is_opaque(&self) -> bool { + self.components().is_opaque() + } } impl PrimaryColor for RGBA8888 { @@ -639,16 +654,6 @@ impl RGBA8888 { pub const fn opacity(&self) -> Alpha8 { self.components().a } - - #[inline] - pub const fn is_transparent(&self) -> bool { - self.components().is_transparent() - } - - #[inline] - pub const fn is_opaque(&self) -> bool { - self.components().is_opaque() - } } #[cfg(target_endian = "little")] @@ -659,14 +664,14 @@ impl RGBA8888 { } } -impl const From for RGBA8888 { +impl const From for RGBA8888 { #[inline] - fn from(v: BGRA8888) -> Self { + fn from(v: ARGB8888) -> Self { Self::from(ColorComponentsRGBA::from(v.components())) } } -impl const From for BGRA8888 { +impl const From for ARGB8888 { #[inline] fn from(v: RGBA8888) -> Self { Self::from(ColorComponents::from(v.components())) @@ -774,13 +779,37 @@ impl const From<[u8; 4]> for ColorComponentsRGBA { pub enum Color { Transparent, Indexed(IndexedColor), - Argb32(BGRA8888), + Argb32(ARGB8888), } -impl ColorTrait for Color {} +impl PixelColor for Color {} -impl Transparency for Color { +impl const Translucent for Color { const TRANSPARENT: Self = Self::Transparent; + + #[inline] + fn is_transparent(&self) -> bool { + match self { + Color::Transparent => true, + Color::Indexed(c) => match *c { + IndexedColor::KEY_COLOR => true, + _ => false, + }, + Color::Argb32(c) => c.is_transparent(), + } + } + + #[inline] + fn is_opaque(&self) -> bool { + match self { + Color::Transparent => false, + Color::Indexed(c) => match *c { + IndexedColor::KEY_COLOR => false, + _ => true, + }, + Color::Argb32(c) => c.is_opaque(), + } + } } impl KeyColor for Color { @@ -799,31 +828,31 @@ impl PrimaryColor for Color { } impl Color { - pub const BLACK: Self = Self::Argb32(BGRA8888::BLACK); - pub const BLUE: Self = Self::Argb32(BGRA8888::BLUE); - pub const GREEN: Self = Self::Argb32(BGRA8888::GREEN); - pub const CYAN: Self = Self::Argb32(BGRA8888::CYAN); - pub const RED: Self = Self::Argb32(BGRA8888::RED); - pub const MAGENTA: Self = Self::Argb32(BGRA8888::MAGENTA); - pub const BROWN: Self = Self::Argb32(BGRA8888::BROWN); - pub const LIGHT_GRAY: Self = Self::Argb32(BGRA8888::LIGHT_GRAY); - pub const DARK_GRAY: Self = Self::Argb32(BGRA8888::DARK_GRAY); - pub const LIGHT_BLUE: Self = Self::Argb32(BGRA8888::LIGHT_BLUE); - pub const LIGHT_GREEN: Self = Self::Argb32(BGRA8888::LIGHT_GREEN); - pub const LIGHT_CYAN: Self = Self::Argb32(BGRA8888::LIGHT_CYAN); - pub const LIGHT_RED: Self = Self::Argb32(BGRA8888::LIGHT_RED); - pub const LIGHT_MAGENTA: Self = Self::Argb32(BGRA8888::LIGHT_MAGENTA); - pub const YELLOW: Self = Self::Argb32(BGRA8888::YELLOW); - pub const WHITE: Self = Self::Argb32(BGRA8888::WHITE); + pub const BLACK: Self = Self::Argb32(ARGB8888::BLACK); + pub const BLUE: Self = Self::Argb32(ARGB8888::BLUE); + pub const GREEN: Self = Self::Argb32(ARGB8888::GREEN); + pub const CYAN: Self = Self::Argb32(ARGB8888::CYAN); + pub const RED: Self = Self::Argb32(ARGB8888::RED); + pub const MAGENTA: Self = Self::Argb32(ARGB8888::MAGENTA); + pub const BROWN: Self = Self::Argb32(ARGB8888::BROWN); + pub const LIGHT_GRAY: Self = Self::Argb32(ARGB8888::LIGHT_GRAY); + pub const DARK_GRAY: Self = Self::Argb32(ARGB8888::DARK_GRAY); + pub const LIGHT_BLUE: Self = Self::Argb32(ARGB8888::LIGHT_BLUE); + pub const LIGHT_GREEN: Self = Self::Argb32(ARGB8888::LIGHT_GREEN); + pub const LIGHT_CYAN: Self = Self::Argb32(ARGB8888::LIGHT_CYAN); + pub const LIGHT_RED: Self = Self::Argb32(ARGB8888::LIGHT_RED); + pub const LIGHT_MAGENTA: Self = Self::Argb32(ARGB8888::LIGHT_MAGENTA); + pub const YELLOW: Self = Self::Argb32(ARGB8888::YELLOW); + pub const WHITE: Self = Self::Argb32(ARGB8888::WHITE); #[inline] pub const fn from_rgb(rgb: u32) -> Self { - Self::Argb32(BGRA8888::from_rgb(rgb)) + Self::Argb32(ARGB8888::from_rgb(rgb)) } #[inline] pub const fn from_argb(argb: u32) -> Self { - Self::Argb32(BGRA8888::from_argb(argb)) + Self::Argb32(ARGB8888::from_argb(argb)) } #[inline] @@ -836,9 +865,9 @@ impl Color { } #[inline] - pub const fn into_true_color(&self) -> BGRA8888 { + pub const fn into_true_color(&self) -> ARGB8888 { match self { - Color::Transparent => BGRA8888::TRANSPARENT, + Color::Transparent => ARGB8888::TRANSPARENT, Color::Indexed(v) => v.as_true_color(), Color::Argb32(v) => *v, } @@ -852,18 +881,6 @@ impl Color { Color::Argb32(c) => c.brightness(), } } - - #[inline] - pub const fn is_transparent(&self) -> bool { - match self { - Color::Transparent => true, - Color::Indexed(c) => match *c { - IndexedColor::KEY_COLOR => true, - _ => false, - }, - Color::Argb32(c) => c.is_transparent(), - } - } } impl const Default for Color { @@ -880,9 +897,9 @@ impl const Into for Color { } } -impl const Into for Color { +impl const Into for Color { #[inline] - fn into(self) -> BGRA8888 { + fn into(self) -> ARGB8888 { self.into_true_color() } } @@ -894,9 +911,9 @@ impl const From for Color { } } -impl const From for Color { +impl const From for Color { #[inline] - fn from(val: BGRA8888) -> Self { + fn from(val: ARGB8888) -> Self { Self::Argb32(val) } } @@ -908,21 +925,35 @@ impl const From for Color { #[derive(Debug, Clone, Copy, PartialEq, Eq, Default)] pub struct PackedColor(pub u32); -impl ColorTrait for PackedColor {} +impl PixelColor for PackedColor {} -impl Transparency for PackedColor { +impl const Translucent for PackedColor { const TRANSPARENT: Self = Self(Self::INDEX_COLOR_MAX + 1); + + #[inline] + fn is_transparent(&self) -> bool { + matches!(*self, Self::TRANSPARENT) + } + + #[inline] + fn is_opaque(&self) -> bool { + match self.as_color() { + Color::Transparent => false, + Color::Indexed(_) => true, + Color::Argb32(c) => c.is_opaque(), + } + } } impl PrimaryColor for PackedColor { - const PRIMARY_BLACK: Self = Self::from_true_color(BGRA8888::PRIMARY_BLACK); - const PRIMARY_BLUE: Self = Self::from_true_color(BGRA8888::PRIMARY_BLUE); - const PRIMARY_GREEN: Self = Self::from_true_color(BGRA8888::PRIMARY_GREEN); - const PRIMARY_CYAN: Self = Self::from_true_color(BGRA8888::PRIMARY_CYAN); - const PRIMARY_RED: Self = Self::from_true_color(BGRA8888::PRIMARY_RED); - const PRIMARY_MAGENTA: Self = Self::from_true_color(BGRA8888::PRIMARY_MAGENTA); - const PRIMARY_YELLOW: Self = Self::from_true_color(BGRA8888::PRIMARY_YELLOW); - const PRIMARY_WHITE: Self = Self::from_true_color(BGRA8888::PRIMARY_WHITE); + const PRIMARY_BLACK: Self = Self::from_true_color(ARGB8888::PRIMARY_BLACK); + const PRIMARY_BLUE: Self = Self::from_true_color(ARGB8888::PRIMARY_BLUE); + const PRIMARY_GREEN: Self = Self::from_true_color(ARGB8888::PRIMARY_GREEN); + const PRIMARY_CYAN: Self = Self::from_true_color(ARGB8888::PRIMARY_CYAN); + const PRIMARY_RED: Self = Self::from_true_color(ARGB8888::PRIMARY_RED); + const PRIMARY_MAGENTA: Self = Self::from_true_color(ARGB8888::PRIMARY_MAGENTA); + const PRIMARY_YELLOW: Self = Self::from_true_color(ARGB8888::PRIMARY_YELLOW); + const PRIMARY_WHITE: Self = Self::from_true_color(ARGB8888::PRIMARY_WHITE); } impl PackedColor { @@ -948,7 +979,7 @@ impl PackedColor { #[inline] pub const fn from_argb(argb: u32) -> Self { - Self::from_true_color(BGRA8888::from_argb(argb)) + Self::from_true_color(ARGB8888::from_argb(argb)) } #[inline] @@ -957,7 +988,7 @@ impl PackedColor { } #[inline] - pub const fn from_true_color(argb: BGRA8888) -> Self { + pub const fn from_true_color(argb: ARGB8888) -> Self { match argb.is_transparent() { true => Self::TRANSPARENT, false => Self(argb.argb()), @@ -993,7 +1024,7 @@ impl PackedColor { } #[inline] - pub const fn into_true_color(self) -> BGRA8888 { + pub const fn into_true_color(self) -> ARGB8888 { self.as_color().into_true_color() } @@ -1003,9 +1034,9 @@ impl PackedColor { } } -impl const From for PackedColor { +impl const From for PackedColor { #[inline] - fn from(color: BGRA8888) -> Self { + fn from(color: ARGB8888) -> Self { Self::from_true_color(color) } } @@ -1036,7 +1067,7 @@ impl const From for Color { #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Default)] pub struct RGB555(pub u16); -impl ColorTrait for RGB555 {} +impl PixelColor for RGB555 {} impl PrimaryColor for RGB555 { const PRIMARY_BLACK: Self = Self::from_rgb(0x00_00_00); @@ -1064,7 +1095,7 @@ impl RGB555 { } #[inline] - pub const fn as_true_color(&self) -> BGRA8888 { + pub const fn as_true_color(&self) -> ARGB8888 { let components = self.components(); let components = ColorComponents { a: Alpha8::OPAQUE, @@ -1082,11 +1113,11 @@ impl RGB555 { #[inline] const fn from_rgb(rgb: u32) -> Self { - Self::from_true_color(BGRA8888::from_rgb(rgb)) + Self::from_true_color(ARGB8888::from_rgb(rgb)) } #[inline] - pub const fn from_true_color(color: BGRA8888) -> Self { + pub const fn from_true_color(color: ARGB8888) -> Self { let components = color.components(); Self( ((components.b >> 3) as u16) @@ -1096,14 +1127,14 @@ impl RGB555 { } } -impl const From for RGB555 { +impl const From for RGB555 { #[inline] - fn from(color: BGRA8888) -> Self { + fn from(color: ARGB8888) -> Self { Self::from_true_color(color) } } -impl const From for BGRA8888 { +impl const From for ARGB8888 { #[inline] fn from(color: RGB555) -> Self { color.as_true_color() @@ -1129,7 +1160,7 @@ impl const From for Color { #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Default)] pub struct RGB565(pub u16); -impl ColorTrait for RGB565 {} +impl PixelColor for RGB565 {} impl PrimaryColor for RGB565 { const PRIMARY_BLACK: Self = Self::from_rgb(0x00_00_00); @@ -1157,7 +1188,7 @@ impl RGB565 { } #[inline] - pub const fn as_true_color(&self) -> BGRA8888 { + pub const fn as_true_color(&self) -> ARGB8888 { let components = self.components(); let components = ColorComponents { a: Alpha8::OPAQUE, @@ -1180,11 +1211,11 @@ impl RGB565 { #[inline] const fn from_rgb(rgb: u32) -> Self { - Self::from_true_color(BGRA8888::from_rgb(rgb)) + Self::from_true_color(ARGB8888::from_rgb(rgb)) } #[inline] - pub const fn from_true_color(color: BGRA8888) -> Self { + pub const fn from_true_color(color: ARGB8888) -> Self { let components = color.components(); Self( ((components.b >> 3) as u16) @@ -1194,14 +1225,14 @@ impl RGB565 { } } -impl const From for RGB565 { +impl const From for RGB565 { #[inline] - fn from(color: BGRA8888) -> Self { + fn from(color: ARGB8888) -> Self { Self::from_true_color(color) } } -impl const From for BGRA8888 { +impl const From for ARGB8888 { #[inline] fn from(color: RGB565) -> Self { color.as_true_color() @@ -1243,7 +1274,7 @@ pub enum IndexedColor4 { Color1111, } -impl const ColorTrait for IndexedColor4 { +impl const PixelColor for IndexedColor4 { #[inline] fn stride_for(width: isize) -> usize { (width as usize + 1) / 2 @@ -1333,19 +1364,19 @@ impl IndexedColorPair44 { } #[derive(Debug, Clone, Copy, PartialEq, Eq, PartialOrd, Ord)] -pub enum OneBitColor { +pub enum Monochrome { Zero, One, } -impl const ColorTrait for OneBitColor { +impl const PixelColor for Monochrome { #[inline] fn stride_for(width: isize) -> usize { (width as usize + 7) / 8 } } -impl OneBitColor { +impl Monochrome { #[inline] pub const fn new(value: u8) -> Self { match value { @@ -1372,35 +1403,35 @@ impl OneBitColor { } } -impl const From for u8 { +impl const From for u8 { #[inline] - fn from(value: OneBitColor) -> Self { + fn from(value: Monochrome) -> Self { value.into_bool() as u8 } } -impl const From for OneBitColor { +impl const From for Monochrome { #[inline] fn from(value: u8) -> Self { Self::new(value) } } -impl const From for bool { +impl const From for bool { #[inline] - fn from(value: OneBitColor) -> Self { + fn from(value: Monochrome) -> Self { value.into_bool() } } -impl const From for OneBitColor { +impl const From for Monochrome { #[inline] fn from(value: bool) -> Self { Self::new(value as u8) } } -impl const Default for OneBitColor { +impl const Default for Monochrome { #[inline] fn default() -> Self { Self::Zero @@ -1423,12 +1454,12 @@ impl Octet { } #[inline] - pub fn get(&self, at: usize) -> OneBitColor { - OneBitColor::new(self.0 & 0x80u8 >> at) + pub fn get(&self, at: usize) -> Monochrome { + Monochrome::new(self.0 & (0x80u8 >> at)) } #[inline] - pub fn set(&mut self, at: usize, value: OneBitColor) { + pub fn set(&mut self, at: usize, value: Monochrome) { let mask = 0x80u8 >> at; if value.into_bool() { self.0 |= mask; @@ -1438,7 +1469,7 @@ impl Octet { } #[inline] - pub fn from_array(array: &[OneBitColor]) -> Self { + pub fn from_array(array: &[Monochrome]) -> Self { array .iter() .take(8) @@ -1450,16 +1481,16 @@ impl Octet { } #[inline] - pub fn iter(&self) -> impl Iterator { + pub fn iter(&self) -> impl Iterator { let raw = self.0; (0..8) .map(|v| 0x80u8 >> v) - .map(move |v| OneBitColor::new(raw & v)) + .map(move |v| Monochrome::new(raw & v)) } #[inline] - pub fn into_array(self) -> [OneBitColor; 8] { - let mut result = [OneBitColor::default(); 8]; + pub fn into_array(self) -> [Monochrome; 8] { + let mut result = [Monochrome::default(); 8]; result.iter_mut().zip(self.iter()).for_each(|(a, b)| *a = b); result } diff --git a/lib/meggl/src/drawable.rs b/lib/meggl/src/drawable.rs index a380a5b27..9febec774 100644 --- a/lib/meggl/src/drawable.rs +++ b/lib/meggl/src/drawable.rs @@ -4,7 +4,7 @@ use core::mem::transmute; #[const_trait] pub trait Drawable where - Self::ColorType: ColorTrait, + Self::ColorType: PixelColor, { type ColorType; @@ -32,6 +32,7 @@ pub trait GetPixel: Drawable { /// The point must be within the size range. unsafe fn get_pixel_unchecked(&self, point: Point) -> Self::ColorType; + #[inline] fn get_pixel(&self, point: Point) -> Option { if self.bounds().contains(point) { Some(unsafe { self.get_pixel_unchecked(point) }) @@ -104,6 +105,7 @@ pub trait SetPixel: Drawable { /// The point must be within the size range. unsafe fn set_pixel_unchecked(&mut self, point: Point, pixel: Self::ColorType); + #[inline] fn set_pixel(&mut self, point: Point, pixel: Self::ColorType) { if self.bounds().contains(point) { unsafe { diff --git a/lib/meggl/src/lib.rs b/lib/meggl/src/lib.rs index 1b081a254..6c3d24800 100644 --- a/lib/meggl/src/lib.rs +++ b/lib/meggl/src/lib.rs @@ -16,7 +16,6 @@ pub use bitmap::*; pub use color::*; pub use coords::*; pub use drawable::*; -pub mod vertex; #[cfg(test)] pub mod tests; diff --git a/lib/meggl/src/tests.rs b/lib/meggl/src/tests.rs index 4e9bc18b5..222899a9b 100644 --- a/lib/meggl/src/tests.rs +++ b/lib/meggl/src/tests.rs @@ -2,7 +2,7 @@ use super::*; #[test] fn components() { - let rgb = BGRA8888(0x12345678); + let rgb = ARGB8888(0x12345678); let components = rgb.components(); assert_eq!(rgb.components().a, Alpha8(0x12)); @@ -17,15 +17,15 @@ fn components() { #[test] fn rgb555() { - let tc_000 = BGRA8888::from_rgb(0x000000); - let tc_00f = BGRA8888::from_rgb(0x0000FF); - let tc_0f0 = BGRA8888::from_rgb(0x00FF00); - let tc_f00 = BGRA8888::from_rgb(0xFF0000); - let tc_fff = BGRA8888::from_rgb(0xFFFFFF); - let tc_555 = BGRA8888::from_rgb(0x555555); - let tc_aaa = BGRA8888::from_rgb(0xAAAAAA); - let tc_5a5 = BGRA8888::from_rgb(0x55AA55); - let tc_a5a = BGRA8888::from_rgb(0xAA55AA); + let tc_000 = ARGB8888::from_rgb(0x000000); + let tc_00f = ARGB8888::from_rgb(0x0000FF); + let tc_0f0 = ARGB8888::from_rgb(0x00FF00); + let tc_f00 = ARGB8888::from_rgb(0xFF0000); + let tc_fff = ARGB8888::from_rgb(0xFFFFFF); + let tc_555 = ARGB8888::from_rgb(0x555555); + let tc_aaa = ARGB8888::from_rgb(0xAAAAAA); + let tc_5a5 = ARGB8888::from_rgb(0x55AA55); + let tc_a5a = ARGB8888::from_rgb(0xAA55AA); assert_eq!(RGB555::from(tc_000).0, 0x0000); assert_eq!(RGB555::from(tc_00f).0, 0x001F); @@ -47,24 +47,24 @@ fn rgb555() { let hc_5a5 = RGB555(0x2AAA); let hc_a5a = RGB555(0x5555); - assert_eq!(BGRA8888::from(hc_000).rgb(), 0x000000); - assert_eq!(BGRA8888::from(hc_00f).rgb(), 0x0000FF); - assert_eq!(BGRA8888::from(hc_0f0).rgb(), 0x00FF00); - assert_eq!(BGRA8888::from(hc_f00).rgb(), 0xFF0000); - assert_eq!(BGRA8888::from(hc_fff).rgb(), 0xFFFFFF); - assert_eq!(BGRA8888::from(hc_555).rgb(), 0x525252); - assert_eq!(BGRA8888::from(hc_aaa).rgb(), 0xADADAD); - assert_eq!(BGRA8888::from(hc_5a5).rgb(), 0x52AD52); - assert_eq!(BGRA8888::from(hc_a5a).rgb(), 0xAD52AD); + assert_eq!(ARGB8888::from(hc_000).rgb(), 0x000000); + assert_eq!(ARGB8888::from(hc_00f).rgb(), 0x0000FF); + assert_eq!(ARGB8888::from(hc_0f0).rgb(), 0x00FF00); + assert_eq!(ARGB8888::from(hc_f00).rgb(), 0xFF0000); + assert_eq!(ARGB8888::from(hc_fff).rgb(), 0xFFFFFF); + assert_eq!(ARGB8888::from(hc_555).rgb(), 0x525252); + assert_eq!(ARGB8888::from(hc_aaa).rgb(), 0xADADAD); + assert_eq!(ARGB8888::from(hc_5a5).rgb(), 0x52AD52); + assert_eq!(ARGB8888::from(hc_a5a).rgb(), 0xAD52AD); } #[test] fn canvas() { - let true_color = BGRA8888::from_argb(0x12345678); + let true_color = ARGB8888::from_argb(0x12345678); let components1 = true_color.components(); let canvas_color = RGBA8888::from(true_color); let components2 = canvas_color.components(); - let true_color = BGRA8888::from(canvas_color); + let true_color = ARGB8888::from(canvas_color); assert_eq!(canvas_color.0, 0x12785634); assert_eq!(true_color.argb(), 0x12345678); @@ -77,211 +77,211 @@ fn canvas() { #[test] fn one_bit_colors() { - fn array_test(value: u8, array: &[OneBitColor]) { + fn array_test(value: u8, array: &[Monochrome]) { let value = Octet::new(value); assert_eq!(value, Octet::from_array(array)); assert_eq!(value.into_array(), array); } - fn array_test2(value: u8, array: &[OneBitColor], formal: &[OneBitColor]) { + fn array_test2(value: u8, array: &[Monochrome], formal: &[Monochrome]) { let value = Octet::new(value); assert_eq!(value, Octet::from_array(array)); assert_eq!(value.into_array(), formal); } - array_test2(0b00000000, &[], &[OneBitColor::Zero; 8]); + array_test2(0b00000000, &[], &[Monochrome::Zero; 8]); array_test2( 0b10000000, - &[OneBitColor::One], + &[Monochrome::One], &[ - OneBitColor::One, - OneBitColor::Zero, - OneBitColor::Zero, - OneBitColor::Zero, - OneBitColor::Zero, - OneBitColor::Zero, - OneBitColor::Zero, - OneBitColor::Zero, + Monochrome::One, + Monochrome::Zero, + Monochrome::Zero, + Monochrome::Zero, + Monochrome::Zero, + Monochrome::Zero, + Monochrome::Zero, + Monochrome::Zero, ], ); array_test2( 0b10100000, - &[OneBitColor::One, OneBitColor::Zero, OneBitColor::One], + &[Monochrome::One, Monochrome::Zero, Monochrome::One], &[ - OneBitColor::One, - OneBitColor::Zero, - OneBitColor::One, - OneBitColor::Zero, - OneBitColor::Zero, - OneBitColor::Zero, - OneBitColor::Zero, - OneBitColor::Zero, + Monochrome::One, + Monochrome::Zero, + Monochrome::One, + Monochrome::Zero, + Monochrome::Zero, + Monochrome::Zero, + Monochrome::Zero, + Monochrome::Zero, ], ); array_test2( 0b00001001, &[ - OneBitColor::Zero, - OneBitColor::Zero, - OneBitColor::Zero, - OneBitColor::Zero, - OneBitColor::One, - OneBitColor::Zero, - OneBitColor::Zero, - OneBitColor::One, - OneBitColor::One, + Monochrome::Zero, + Monochrome::Zero, + Monochrome::Zero, + Monochrome::Zero, + Monochrome::One, + Monochrome::Zero, + Monochrome::Zero, + Monochrome::One, + Monochrome::One, ], &[ - OneBitColor::Zero, - OneBitColor::Zero, - OneBitColor::Zero, - OneBitColor::Zero, - OneBitColor::One, - OneBitColor::Zero, - OneBitColor::Zero, - OneBitColor::One, + Monochrome::Zero, + Monochrome::Zero, + Monochrome::Zero, + Monochrome::Zero, + Monochrome::One, + Monochrome::Zero, + Monochrome::Zero, + Monochrome::One, ], ); array_test( 0b01010101, &[ - OneBitColor::Zero, - OneBitColor::One, - OneBitColor::Zero, - OneBitColor::One, - OneBitColor::Zero, - OneBitColor::One, - OneBitColor::Zero, - OneBitColor::One, + Monochrome::Zero, + Monochrome::One, + Monochrome::Zero, + Monochrome::One, + Monochrome::Zero, + Monochrome::One, + Monochrome::Zero, + Monochrome::One, ], ); array_test( 0b10101010, &[ - OneBitColor::One, - OneBitColor::Zero, - OneBitColor::One, - OneBitColor::Zero, - OneBitColor::One, - OneBitColor::Zero, - OneBitColor::One, - OneBitColor::Zero, + Monochrome::One, + Monochrome::Zero, + Monochrome::One, + Monochrome::Zero, + Monochrome::One, + Monochrome::Zero, + Monochrome::One, + Monochrome::Zero, ], ); array_test( 0b00010111, &[ - OneBitColor::Zero, - OneBitColor::Zero, - OneBitColor::Zero, - OneBitColor::One, - OneBitColor::Zero, - OneBitColor::One, - OneBitColor::One, - OneBitColor::One, + Monochrome::Zero, + Monochrome::Zero, + Monochrome::Zero, + Monochrome::One, + Monochrome::Zero, + Monochrome::One, + Monochrome::One, + Monochrome::One, ], ); array_test( 0b11101000, &[ - OneBitColor::One, - OneBitColor::One, - OneBitColor::One, - OneBitColor::Zero, - OneBitColor::One, - OneBitColor::Zero, - OneBitColor::Zero, - OneBitColor::Zero, + Monochrome::One, + Monochrome::One, + Monochrome::One, + Monochrome::Zero, + Monochrome::One, + Monochrome::Zero, + Monochrome::Zero, + Monochrome::Zero, ], ); array_test( 0b11000011, &[ - OneBitColor::One, - OneBitColor::One, - OneBitColor::Zero, - OneBitColor::Zero, - OneBitColor::Zero, - OneBitColor::Zero, - OneBitColor::One, - OneBitColor::One, + Monochrome::One, + Monochrome::One, + Monochrome::Zero, + Monochrome::Zero, + Monochrome::Zero, + Monochrome::Zero, + Monochrome::One, + Monochrome::One, ], ); array_test( 0b00111100, &[ - OneBitColor::Zero, - OneBitColor::Zero, - OneBitColor::One, - OneBitColor::One, - OneBitColor::One, - OneBitColor::One, - OneBitColor::Zero, - OneBitColor::Zero, + Monochrome::Zero, + Monochrome::Zero, + Monochrome::One, + Monochrome::One, + Monochrome::One, + Monochrome::One, + Monochrome::Zero, + Monochrome::Zero, ], ); array_test( 0b11111111, &[ - OneBitColor::One, - OneBitColor::One, - OneBitColor::One, - OneBitColor::One, - OneBitColor::One, - OneBitColor::One, - OneBitColor::One, - OneBitColor::One, + Monochrome::One, + Monochrome::One, + Monochrome::One, + Monochrome::One, + Monochrome::One, + Monochrome::One, + Monochrome::One, + Monochrome::One, ], ); let mut canvas = Octet::default(); assert_eq!(canvas, Octet::new(0)); - canvas.set(0, OneBitColor::One); + canvas.set(0, Monochrome::One); assert_eq!(canvas, Octet::new(0b10000000)); - assert_eq!(canvas.get(0), OneBitColor::One); - assert_eq!(canvas.get(1), OneBitColor::Zero); - assert_eq!(canvas.get(2), OneBitColor::Zero); - assert_eq!(canvas.get(3), OneBitColor::Zero); - assert_eq!(canvas.get(4), OneBitColor::Zero); - assert_eq!(canvas.get(5), OneBitColor::Zero); - assert_eq!(canvas.get(6), OneBitColor::Zero); - assert_eq!(canvas.get(7), OneBitColor::Zero); + assert_eq!(canvas.get(0), Monochrome::One); + assert_eq!(canvas.get(1), Monochrome::Zero); + assert_eq!(canvas.get(2), Monochrome::Zero); + assert_eq!(canvas.get(3), Monochrome::Zero); + assert_eq!(canvas.get(4), Monochrome::Zero); + assert_eq!(canvas.get(5), Monochrome::Zero); + assert_eq!(canvas.get(6), Monochrome::Zero); + assert_eq!(canvas.get(7), Monochrome::Zero); - canvas.set(1, OneBitColor::One); + canvas.set(1, Monochrome::One); assert_eq!(canvas, Octet::new(0b11000000)); - assert_eq!(canvas.get(0), OneBitColor::One); - assert_eq!(canvas.get(1), OneBitColor::One); + assert_eq!(canvas.get(0), Monochrome::One); + assert_eq!(canvas.get(1), Monochrome::One); - canvas.set(2, OneBitColor::One); + canvas.set(2, Monochrome::One); assert_eq!(canvas, Octet::new(0b11100000)); - canvas.set(5, OneBitColor::One); + canvas.set(5, Monochrome::One); assert_eq!(canvas, Octet::new(0b11100100)); - assert_eq!(canvas.get(5), OneBitColor::One); + assert_eq!(canvas.get(5), Monochrome::One); - canvas.set(7, OneBitColor::One); + canvas.set(7, Monochrome::One); assert_eq!(canvas, Octet::new(0b11100101)); - assert_eq!(canvas.get(7), OneBitColor::One); + assert_eq!(canvas.get(7), Monochrome::One); - canvas.set(1, OneBitColor::Zero); + canvas.set(1, Monochrome::Zero); assert_eq!(canvas, Octet::new(0b10100101)); - assert_eq!(canvas.get(0), OneBitColor::One); - assert_eq!(canvas.get(1), OneBitColor::Zero); - assert_eq!(canvas.get(2), OneBitColor::One); - assert_eq!(canvas.get(3), OneBitColor::Zero); - assert_eq!(canvas.get(4), OneBitColor::Zero); - assert_eq!(canvas.get(5), OneBitColor::One); - assert_eq!(canvas.get(6), OneBitColor::Zero); - assert_eq!(canvas.get(7), OneBitColor::One); + assert_eq!(canvas.get(0), Monochrome::One); + assert_eq!(canvas.get(1), Monochrome::Zero); + assert_eq!(canvas.get(2), Monochrome::One); + assert_eq!(canvas.get(3), Monochrome::Zero); + assert_eq!(canvas.get(4), Monochrome::Zero); + assert_eq!(canvas.get(5), Monochrome::One); + assert_eq!(canvas.get(6), Monochrome::Zero); + assert_eq!(canvas.get(7), Monochrome::One); } diff --git a/lib/meggl/src/vertex.rs b/lib/meggl/src/vertex.rs deleted file mode 100644 index 2067d42ec..000000000 --- a/lib/meggl/src/vertex.rs +++ /dev/null @@ -1,431 +0,0 @@ -use crate::{Movement, Point}; - -pub type FloatType = f64; -use core::{ - f64::consts::{FRAC_PI_2, PI, TAU}, - ops::{Add, Div, Mul, Sub}, -}; - -#[inline] -fn cos(radian: Radian) -> FloatType { - libm::cos(radian.radian()) -} - -#[inline] -fn sin(radian: Radian) -> FloatType { - libm::sin(radian.radian()) -} - -#[repr(C)] -#[derive(Debug, Clone, Copy, PartialEq)] -pub struct Vertex2d { - pub x: FloatType, - pub y: FloatType, -} - -#[repr(C)] -#[derive(Debug, Clone, Copy, PartialEq)] -pub struct Vertex3d { - pub x: FloatType, - pub y: FloatType, - pub z: FloatType, -} - -#[repr(C)] -#[derive(Debug, Clone, Copy, PartialEq)] -pub struct Vertex4d { - pub x: FloatType, - pub y: FloatType, - pub z: FloatType, - pub w: FloatType, -} - -impl Vertex2d { - #[inline] - pub const fn new(x: FloatType, y: FloatType) -> Self { - Self { x, y } - } - - #[inline] - pub const fn from_point(value: Point) -> Self { - Self { - x: value.x as FloatType, - y: value.y as FloatType, - } - } - - #[inline] - pub fn into_point(self) -> Point { - Point { - x: libm::round(self.x) as isize, - y: libm::round(self.y) as isize, - } - } - - #[inline] - pub fn transformed(&self, affine_matrix: &AffineMatrix2d) -> Self { - affine_matrix.transformed(*self) - } -} - -impl Transform for Vertex2d { - #[inline] - fn transform(&mut self, affine_matrix: &AffineMatrix2d) { - *self = self.transformed(affine_matrix) - } -} - -impl Transform for [Vertex2d] { - #[inline] - fn transform(&mut self, affine_matrix: &AffineMatrix2d) { - for vertex in self.iter_mut() { - vertex.transform(affine_matrix); - } - } -} - -impl const From for Vertex2d { - #[inline] - fn from(value: Point) -> Self { - Vertex2d::from_point(value) - } -} - -impl From for Point { - #[inline] - fn from(value: Vertex2d) -> Self { - value.into_point() - } -} - -impl Vertex3d { - #[inline] - pub const fn new(x: FloatType, y: FloatType, z: FloatType) -> Self { - Self { x, y, z } - } -} - -impl Vertex4d { - #[inline] - pub const fn new(x: FloatType, y: FloatType, z: FloatType, w: FloatType) -> Self { - Self { x, y, z, w } - } -} - -#[derive(Debug, Clone, Copy, PartialEq, PartialOrd)] -pub struct Radian(FloatType); - -impl Radian { - /// 0.0 = 0 degrees - pub const ZERO: Self = Self(0.0); - /// Ï€/2 = 90 degrees - pub const FRAC_PI_2: Self = Self(FRAC_PI_2); - /// Ï€ = 180 degrees - pub const PI: Self = Self(PI); - /// Ï„ (2Ï€) = 360 degrees - pub const TAU: Self = Self(TAU); - - #[inline] - pub const fn new(radian: FloatType) -> Self { - Self(radian) - } - - #[inline] - pub const fn radian(&self) -> FloatType { - self.0 - } -} - -impl Add for Radian { - type Output = Self; - - #[inline] - fn add(self, rhs: Radian) -> Self::Output { - Self(self.0 + rhs.0) - } -} - -impl Add for Radian { - type Output = Self; - - #[inline] - fn add(self, rhs: FloatType) -> Self::Output { - Self(self.0 + rhs) - } -} - -impl Sub for Radian { - type Output = Self; - - #[inline] - fn sub(self, rhs: FloatType) -> Self::Output { - Self(self.0 - rhs) - } -} - -impl Sub for Radian { - type Output = Self; - - #[inline] - fn sub(self, rhs: Radian) -> Self::Output { - Self(self.0 - rhs.0) - } -} - -impl Mul for Radian { - type Output = Self; - - #[inline] - fn mul(self, rhs: FloatType) -> Self::Output { - Self(self.0 * rhs) - } -} - -impl Div for Radian { - type Output = Self; - - #[inline] - fn div(self, rhs: FloatType) -> Self::Output { - Self(self.0 / rhs) - } -} - -pub trait AffineMatrix {} - -pub trait Transform { - fn transform(&mut self, affine_matrix: &T); -} - -/// Affine Transformation -/// -/// ```plain -/// (x') (m11 m12 m13) (x) -/// (y') = (m21 m22 m23) (y) -/// (1) ( 0 0 1) (1) <- redundant -/// ``` -#[derive(Debug, Clone, Copy, PartialEq)] -pub struct AffineMatrix2d { - pub m11: FloatType, - pub m12: FloatType, - pub m13: FloatType, - pub m21: FloatType, - pub m22: FloatType, - pub m23: FloatType, -} - -impl AffineMatrix2d { - #[inline] - pub fn new(translation: Movement, rotation: Radian, scale: FloatType) -> Self { - Self { - m11: cos(rotation) * scale, - m12: 0.0 - libm::sin(rotation.radian()) * scale, - m13: translation.x as FloatType, - m21: sin(rotation) * scale, - m22: cos(rotation) * scale, - m23: translation.y as FloatType, - } - } - - #[inline] - pub fn transformed(&self, vertex: Vertex2d) -> Vertex2d { - let x1 = vertex.x; - let y1 = vertex.y; - Vertex2d::new( - self.m11 * x1 + self.m12 * y1 + self.m13, - self.m21 * x1 + self.m22 * y1 + self.m23, - ) - } - - #[inline] - pub fn translation(translation: Movement) -> Self { - Self { - m11: 0.0, - m12: 0.0, - m13: translation.x as FloatType, - m21: 0.0, - m22: 0.0, - m23: translation.y as FloatType, - } - } - - #[inline] - pub fn rotation(rotation: Radian) -> Self { - Self { - m11: cos(rotation), - m12: 0.0 - sin(rotation), - m13: 0.0, - m21: sin(rotation), - m22: cos(rotation), - m23: 0.0, - } - } - - #[inline] - pub fn scaling(scale: FloatType) -> Self { - Self { - m11: scale, - m12: 0.0, - m13: 0.0, - m21: 0.0, - m22: scale, - m23: 0.0, - } - } -} - -impl AffineMatrix for AffineMatrix2d {} - -impl Mul for AffineMatrix2d { - type Output = Self; - - fn mul(self, rhs: AffineMatrix2d) -> Self::Output { - Self { - m11: self.m11 * rhs.m11 + self.m12 * rhs.m21, - m12: self.m11 * rhs.m12 + self.m12 * rhs.m22, - m13: self.m11 * rhs.m13 + self.m12 * rhs.m23 + self.m13, - m21: self.m21 * rhs.m11 + self.m22 * rhs.m21, - m22: self.m21 * rhs.m12 + self.m22 * rhs.m22, - m23: self.m21 * rhs.m13 + self.m22 * rhs.m23 + self.m23, - } - } -} - -/// 3D Affine Transformation -/// -/// ```plain -/// (x') (m11 m12 m13 m14) (x) -/// (y') = (m21 m22 m23 m24) (y) -/// (z') = (m31 m32 m33 m34) (z) -/// (1) ( 0 0 0 1) (1) <- redundant -/// ``` -#[derive(Debug, Clone, Copy, PartialEq)] -pub struct AffineMatrix3d { - pub m11: FloatType, - pub m12: FloatType, - pub m13: FloatType, - pub m14: FloatType, - pub m21: FloatType, - pub m22: FloatType, - pub m23: FloatType, - pub m24: FloatType, - pub m31: FloatType, - pub m32: FloatType, - pub m33: FloatType, - pub m34: FloatType, -} - -impl AffineMatrix3d { - #[inline] - pub fn transformed(&self, vertex: &Vertex3d) -> Vertex3d { - let x1 = vertex.x; - let y1 = vertex.y; - let z1 = vertex.z; - Vertex3d::new( - self.m11 * x1 + self.m12 * y1 + self.m13 * z1 + self.m14, - self.m21 * x1 + self.m22 * y1 + self.m23 * z1 + self.m24, - self.m31 * x1 + self.m32 * y1 + self.m33 * z1 + self.m34, - ) - } - - #[inline] - pub fn x_axis_rotation(radian: Radian) -> Self { - Self { - m11: 1.0, - m12: 0.0, - m13: 0.0, - m14: 0.0, - - m21: 0.0, - m22: cos(radian), - m23: -sin(radian), - m24: 0.0, - - m31: 0.0, - m32: sin(radian), - m33: cos(radian), - m34: 0.0, - } - } - - #[inline] - pub fn y_axis_rotation(radian: Radian) -> Self { - Self { - m11: cos(radian), - m12: 0.0, - m13: sin(radian), - m14: 0.0, - - m21: 0.0, - m22: 1.0, - m23: 0.0, - m24: 0.0, - - m31: -sin(radian), - m32: 0.0, - m33: cos(radian), - m34: 0.0, - } - } - - #[inline] - pub fn z_axis_rotation(radian: Radian) -> Self { - Self { - m11: cos(radian), - m12: -sin(radian), - m13: 0.0, - m14: 0.0, - - m21: sin(radian), - m22: cos(radian), - m23: 0.0, - m24: 0.0, - - m31: 0.0, - m32: 0.0, - m33: 1.0, - m34: 0.0, - } - } - - #[inline] - pub fn translation(x: FloatType, y: FloatType, z: FloatType) -> Self { - Self { - m11: 0.0, - m12: 0.0, - m13: 0.0, - m14: x, - - m21: 0.0, - m22: 0.0, - m23: 0.0, - m24: y, - - m31: 0.0, - m32: 0.0, - m33: 0.0, - m34: z, - } - } - - #[inline] - pub fn scaling(scale: FloatType) -> Self { - Self { - m11: scale, - m12: 0.0, - m13: 0.0, - m14: 0.0, - - m21: 0.0, - m22: scale, - m23: 0.0, - m24: 0.0, - - m31: 0.0, - m32: 0.0, - m33: scale, - m34: 0.0, - } - } -} - -impl AffineMatrix for AffineMatrix3d {} diff --git a/lib/megstd/src/sys/kernel/fs_imp.rs b/lib/megstd/src/sys/kernel/fs_imp.rs index 3a526c90d..15b5b7623 100644 --- a/lib/megstd/src/sys/kernel/fs_imp.rs +++ b/lib/megstd/src/sys/kernel/fs_imp.rs @@ -26,7 +26,7 @@ impl File { } bitflags! { - #[derive(Clone, Copy)] + // #[derive(Clone, Copy)] pub struct OpenOptions: u32 { const READ = 0b0000_0001; const WRITE = 0b0000_0010; diff --git a/lib/megstd/src/sys/wasm/prelude.rs b/lib/megstd/src/sys/wasm/prelude.rs index 96a1c9ccf..8be62899b 100644 --- a/lib/megstd/src/sys/wasm/prelude.rs +++ b/lib/megstd/src/sys/wasm/prelude.rs @@ -1,24 +1,19 @@ use crate::sys::syscall::*; -pub use core::fmt; #[macro_export] macro_rules! print { - ($($arg:tt)*) => { - { - use core::fmt::Write; - let _ = write!(OsPrint(), $($arg)*); - } - }; + ($($arg:tt)*) => {{ + use core::fmt::Write; + write!(OsPrint(), $($arg)*).unwrap(); + }}; } #[macro_export] macro_rules! println { - ($fmt:expr) => { - print!(concat!($fmt, "\r\n")) - }; - ($fmt:expr, $($arg:tt)*) => { - print!(concat!($fmt, "\r\n"), $($arg)*) - }; + ($($arg:tt)*) => {{ + use core::fmt::Write; + writeln!(OsPrint(), $($arg)*).unwrap(); + }}; } #[cfg(not(test))] @@ -30,7 +25,7 @@ fn panic(_info: &core::panic::PanicInfo) -> ! { pub struct OsPrint(); -impl fmt::Write for OsPrint { +impl core::fmt::Write for OsPrint { #[inline] fn write_str(&mut self, s: &str) -> core::fmt::Result { os_print(s); diff --git a/lib/myacpi/src/madt.rs b/lib/myacpi/src/madt.rs index 4d1b69488..df90a6cec 100644 --- a/lib/myacpi/src/madt.rs +++ b/lib/myacpi/src/madt.rs @@ -213,6 +213,11 @@ impl LocalApic { self.apic_id } + #[inline] + pub const fn flags(&self) -> u32 { + self.flags + } + #[inline] pub const fn status(&self) -> ApicStatus { unsafe { transmute(self.flags & 0x0000_0003) } diff --git a/system/Cargo.lock b/system/Cargo.lock index b22ed8798..b17f50433 100644 --- a/system/Cargo.lock +++ b/system/Cargo.lock @@ -42,9 +42,9 @@ checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" [[package]] name = "bitflags" -version = "2.0.2" +version = "2.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "487f1e0fcbe47deb8b0574e646def1c903389d95241dd1bbcc6ce4a715dfc0c1" +checksum = "630be753d4e58660abd17930c71b647fe46c27ea6b63cc59e1e3851406972e42" [[package]] name = "bootprot" @@ -123,6 +123,7 @@ dependencies = [ "rapid-qoi", "seq-macro", "wasm", + "zune-jpeg", ] [[package]] @@ -131,6 +132,12 @@ version = "0.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "348108ab3fba42ec82ff6e9564fc4ca0247bdccdc68dd8af9764bbc79c3c8ffb" +[[package]] +name = "log" +version = "0.4.19" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b06a4cde4c0f271a446782e3eff8de789548ce57dbc8eca9292c27f4a42004b4" + [[package]] name = "meggl" version = "0.1.0" @@ -145,7 +152,7 @@ dependencies = [ name = "megstd" version = "0.1.0" dependencies = [ - "bitflags 2.0.2", + "bitflags 1.3.2", "cfg-if", "meggl", "num-derive 0.3.3", @@ -352,3 +359,22 @@ dependencies = [ "num-derive 0.2.5", "num-traits", ] + +[[package]] +name = "zune-core" +version = "0.2.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "29ca36c2e02af0d8d7ee977542bfe33ed1c516be73d3c1faa4420af46e96ceee" +dependencies = [ + "bitflags 2.3.3", +] + +[[package]] +name = "zune-jpeg" +version = "0.3.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2848e8f4f29dbdcc79910ab3abdff22bb0bacef8556f2a983b5ca950d8b4991e" +dependencies = [ + "log", + "zune-core", +] diff --git a/system/Cargo.toml b/system/Cargo.toml index 4e73b3ade..7c170120e 100644 --- a/system/Cargo.toml +++ b/system/Cargo.toml @@ -28,6 +28,7 @@ libm = {} png-decoder = {default-features = false, git = "https://github.com/neri/png-decoder"} rapid-qoi = {default-features = false, features = ["alloc"]} +zune-jpeg = {version = "0.3.17", default-features = false} [profile.release] lto = true diff --git a/system/src/arch/x64/apic.rs b/system/src/arch/x64/apic.rs index 914d9b18e..690cb64d0 100644 --- a/system/src/arch/x64/apic.rs +++ b/system/src/arch/x64/apic.rs @@ -24,7 +24,7 @@ pub type AffinityBits = usize; pub type AtomicAffinityBits = AtomicUsize; /// Maximum number of supported cpu cores -const MAX_CPU: usize = size_of::(); +const MAX_CPU: usize = 8 * size_of::(); const STACK_CHUNK_SIZE: usize = 0x4000; @@ -70,6 +70,7 @@ unsafe extern "C" fn apic_start_ap() { Hal::cpu().enable_interrupt(); loop { + // assert!(Hal::cpu().is_interrupt_enabled()); Hal::cpu().wait_for_interrupt(); } } @@ -221,15 +222,7 @@ impl Apic { prepare_sipi(max_cpu, idle_stacks.as_ptr(), apic_start_ap); // start Application Processors - for (_index, lapic) in lapics.iter().enumerate() { - // log!( - // "CPU #{} {:02x} {:02x} {:?}", - // _index, - // cpu.uid(), - // cpu.apic_id(), - // cpu.status(), - // ); - + for lapic in lapics.iter().take(max_cpu) { let apic_id = ApicId(lapic.apic_id()); LocalApic::send_init_ipi(apic_id); Timer::new(Duration::from_millis(10)).repeat_until(|| Hal::cpu().wait_for_interrupt()); @@ -244,11 +237,10 @@ impl Apic { if !AP_BOOT_OK.load(Ordering::SeqCst) { panic!("SMP: Some application processors are not responding"); } - - // log!("CPU #{} OK", index,); } drop(idle_stacks); + // core::mem::forget(idle_stacks); for (index, cpu) in System::cpus().enumerate() { CURRENT_PROCESSOR_INDEXES[cpu.apic_id().0 as usize] = index as u8; @@ -346,6 +338,7 @@ impl Apic { let global_irq = msi.as_irq(); shared.idt[global_irq.0 as usize] = f as usize; shared.idt_params[global_irq.0 as usize] = arg; + fence(Ordering::SeqCst); let vec = msi.as_vec(); let addr = Self::MSI_BASE; let data = Self::MSI_DATA | vec.0 as u16; diff --git a/system/src/arch/x64/cpu.rs b/system/src/arch/x64/cpu.rs index 5c6098b62..74337747b 100644 --- a/system/src/arch/x64/cpu.rs +++ b/system/src/arch/x64/cpu.rs @@ -35,6 +35,7 @@ struct SharedCpu { max_cpuid_level_8: u32, smt_topology: u32, has_smt: AtomicBool, + is_hybrid: AtomicBool, max_physical_address_bits: usize, max_virtual_address_bits: usize, vram_base: PhysicalAddress, @@ -48,6 +49,7 @@ impl SharedCpu { max_cpuid_level_8: 0, smt_topology: 0, has_smt: AtomicBool::new(false), + is_hybrid: AtomicBool::new(false), max_physical_address_bits: 36, max_virtual_address_bits: 48, vram_base: PhysicalAddress::new(0), @@ -70,15 +72,20 @@ impl Cpu { shared.max_cpuid_level_0 = __cpuid_count(0, 0).eax; shared.max_cpuid_level_8 = __cpuid_count(0x8000_0000, 0).eax; - if shared.max_cpuid_level_0 >= 0x1F { - let cpuid1f = __cpuid_count(0x1F, 0); - if (cpuid1f.ecx & 0xFF00) == 0x0100 { - shared.smt_topology = (1 << (cpuid1f.eax & 0x1F)) - 1; + if shared.max_cpuid_level_0 >= 0x0B { + if Feature::F07D(F070D::HYBRID).has_feature() { + shared.is_hybrid.store(true, Ordering::SeqCst); } - } else if shared.max_cpuid_level_0 >= 0x0B { - let cpuid0b = __cpuid_count(0x0B, 0); - if (cpuid0b.ecx & 0xFF00) == 0x0100 { - shared.smt_topology = (1 << (cpuid0b.eax & 0x1F)) - 1; + if shared.max_cpuid_level_0 >= 0x1F { + let cpuid1f = __cpuid_count(0x1F, 0); + if (cpuid1f.ecx & 0xFF00) == 0x0100 { + shared.smt_topology = (1 << (cpuid1f.eax & 0x1F)) - 1; + } + } else { + let cpuid0b = __cpuid_count(0x0B, 0); + if (cpuid0b.ecx & 0xFF00) == 0x0100 { + shared.smt_topology = (1 << (cpuid0b.eax & 0x1F)) - 1; + } } } @@ -101,14 +108,19 @@ impl Cpu { let gdt = GlobalDescriptorTable::new(); InterruptDescriptorTable::load(); - let core_type = if (apic_id.as_u32() & Self::shared().smt_topology) == 0 { - ProcessorCoreType::Main + let shared = &*SHARED_CPU.get(); + + let is_normal = if (apic_id.as_u32() & Self::shared().smt_topology) == 0 { + true } else { Self::shared().has_smt.store(true, Ordering::SeqCst); - ProcessorCoreType::Sub + false }; - - let shared = &*SHARED_CPU.get(); + let is_efficient = matches!( + Cpu::native_model_core_type().unwrap_or(NativeModelCoreType::Performance), + NativeModelCoreType::Efficient + ); + let core_type = ProcessorCoreType::new(is_normal, is_efficient); let mtrr_items = Mtrr::items().filter(|v| v.is_enabled).collect::>(); let mut mtrr_new = Vec::new(); @@ -214,6 +226,22 @@ impl Cpu { unsafe { &*SHARED_CPU.get() } } + #[inline] + pub fn is_hybrid() -> bool { + let shared = Self::shared(); + shared.is_hybrid.load(Ordering::Relaxed) + } + + #[inline] + pub fn native_model_core_type() -> Option { + if Self::is_hybrid() { + let cpuid_1a = unsafe { __cpuid_count(0x1A, 0) }; + NativeModelCoreType::from_u8((cpuid_1a.eax >> 24) as u8) + } else { + None + } + } + #[inline] pub fn physical_address_mask() -> u64 { let shared = Self::shared(); @@ -1547,7 +1575,7 @@ pub enum F01C { HYPERVISOR = 31, } -/// CPUID Feature Function 0000_0007, EBX +/// CPUID Feature Function 0000_0007, 0, EBX #[allow(non_camel_case_types)] #[derive(Debug, Copy, Clone, Eq, PartialEq)] pub enum F070B { @@ -1585,7 +1613,7 @@ pub enum F070B { AVX512_VL = 31, } -/// CPUID Feature Function 0000_0007, ECX +/// CPUID Feature Function 0000_0007, 0, ECX #[allow(non_camel_case_types)] #[derive(Debug, Copy, Clone, Eq, PartialEq)] pub enum F070C { @@ -1613,7 +1641,7 @@ pub enum F070C { PKS = 31, } -/// CPUID Feature Function 0000_0007, EDX +/// CPUID Feature Function 0000_0007, 0, EDX #[allow(non_camel_case_types)] #[derive(Debug, Copy, Clone, Eq, PartialEq)] pub enum F070D { @@ -1683,6 +1711,27 @@ pub enum F81C { PCX_L2I = 28, } +#[non_exhaustive] +#[derive(Debug, Clone, Copy)] +pub enum NativeModelCoreType { + Performance, + Efficient, +} + +impl NativeModelCoreType { + const CORE_TYPE_ATOM: u8 = 0x20; + const CORE_TYPE_CORE: u8 = 0x40; + + #[inline] + pub const fn from_u8(value: u8) -> Option { + match value { + Self::CORE_TYPE_ATOM => Some(Self::Efficient), + Self::CORE_TYPE_CORE => Some(Self::Performance), + _ => None, + } + } +} + #[repr(transparent)] #[derive(Debug, Copy, Clone, PartialEq, Eq, PartialOrd, Ord)] pub struct MSR(u32); @@ -1701,6 +1750,11 @@ impl MSR { pub const IA32_SYSENTER_EIP: Self = Self(0x0000_0176); pub const IA32_PAT: Self = Self(0x0000_0277); pub const IA32_MTRR_DEF_TYPE: Self = Self(0x0000_02FF); + pub const IA32_HW_FEEDBACK_PTR: Self = Self(0x0000_17D0); + pub const IA32_HW_FEEDBACK_CONFIG: Self = Self(0x0000_17D1); + pub const IA32_THREAD_FEEDBACK_CHAR: Self = Self(0x0000_17D2); + pub const IA32_HW_FEEDBACK_THREAD_CONFIG: Self = Self(0x0000_17D4); + pub const IA32_EFER: Self = Self(0xC000_0080); pub const IA32_STAR: Self = Self(0xC000_0081); pub const IA32_LSTAR: Self = Self(0xC000_0082); diff --git a/system/src/arch/x64/page.rs b/system/src/arch/x64/page.rs index c5b2536dc..564364742 100644 --- a/system/src/arch/x64/page.rs +++ b/system/src/arch/x64/page.rs @@ -68,13 +68,12 @@ impl PageManager { match request { MemoryMapRequest::Mmio(base, len) => { let Some(len) = NonZeroUsize::new(len) else { return 0 }; - let pa = base as PhysicalAddress; let va = Self::direct_map(base); match Self::_map( va, len, PageTableEntry::new( - pa, + base, PageAttribute::NO_EXECUTE | PageAttribute::PAT_UC | PageAttribute::WRITE @@ -87,13 +86,12 @@ impl PageManager { } MemoryMapRequest::Framebuffer(base, len) => { let Some(len) = NonZeroUsize::new(len) else { return 0 }; - let pa = base as PhysicalAddress; let va = Self::direct_map(base); match Self::_map( va, len, PageTableEntry::new( - pa, + base, PageAttribute::NO_EXECUTE | PageAttribute::LARGE_2M | PageAttribute::PAT_WC @@ -154,15 +152,15 @@ impl PageManager { #[track_caller] unsafe fn _map(va: usize, len: NonZeroUsize, template: PageTableEntry) -> Result<(), usize> { if template.contains(PageAttribute::LARGE_2M) { + // 2M Pages let page_size = Self::PAGE_SIZE_2M; let page_mask = page_size - 1; - // 2M Pages if (va & page_mask) != 0 { return Err(va); } let count = (len.get() + page_mask) / page_size; let mut template = template; - let fva = va; + let base_va = va; let mut va = va; for _ in 0..count { let mut parent_template = template; @@ -177,24 +175,25 @@ impl PageManager { { panic!( "INVALID PDT {:016x} {:016x} {:016x} {}", - va, pdte.0, fva, count + va, pdte.0, base_va, count ); } pdte_ptr.write_volatile(template); + Self::invalidate_tlb(va); va += page_size; template += page_size; } } else { + // 4K Pages let page_size = Self::PAGE_SIZE_4K; let page_mask = page_size - 1; - // 4K Pages if (va & page_mask) != 0 { return Err(va); } let count = (len.get() + page_mask) / page_size; let mut template = template; - let fva = va; + let base_va = va; let mut va = va; for _ in 0..count { let mut parent_template = template; @@ -207,12 +206,13 @@ impl PageManager { if pdte.contains(PageAttribute::LARGE_2M) { panic!( "LARGE PDT {:016x} {:016x} {:016x} {}", - va, pdte.0, fva, count + va, pdte.0, base_va, count ); } let pte_ptr = PageLevel::Level1.pte_of(va); pte_ptr.write_volatile(template); + Self::invalidate_tlb(va); va += page_size; template += page_size; diff --git a/system/src/drivers/hda/hdaudio.rs b/system/src/drivers/hda/hdaudio.rs index a50647a77..f46d22900 100644 --- a/system/src/drivers/hda/hdaudio.rs +++ b/system/src/drivers/hda/hdaudio.rs @@ -1,7 +1,10 @@ use crate::{ drivers::pci::*, io::audio::{AudioDriver, AudioManager}, - mem::{mmio::MmioSlice, MemoryManager}, + mem::{ + mmio::{MmioRegU16, MmioRegU32, MmioRegU8, MmioSlice}, + MemoryManager, + }, sync::{semaphore::Semaphore, Mutex}, task::scheduler::{Priority, SpawnOption, Timer}, *, @@ -13,7 +16,7 @@ use core::{ num::{NonZeroU8, NonZeroUsize}, ops::Add, slice, - sync::atomic::{fence, AtomicU16, AtomicU32, AtomicU8, AtomicUsize, Ordering}, + sync::atomic::{fence, AtomicUsize, Ordering}, time::Duration, }; @@ -219,7 +222,7 @@ impl HdAudioController { cmd.set_pcm_format(dac, stream_format).unwrap(); cmd.set_stream_id(dac, stream_id).unwrap(); - driver.global.ssync.store(1, Ordering::SeqCst); + driver.global.ssync.write_volatile(1); sd.run(); } else { @@ -246,6 +249,7 @@ impl HdAudioController { config.default_device(), ); } + panic!("todo"); } let driver = Arc::new(driver); @@ -361,16 +365,37 @@ impl HdAudioController { if self.output_pins.len() < 2 { self.output_pins.first().map(|v| *v) } else { - for &pin in &self.output_pins { - let widget = self.widgets.get(&pin).unwrap(); - let config = widget.configuration_default(); - if config.sequence() == 0 - && config.default_device() == DefaultDevice::Speaker - && config.port_connectivity() != PortConnectivity::NoPhysicalConnection - { - return Some(pin); + for device in [ + DefaultDevice::HPOut, + DefaultDevice::LineOut, + DefaultDevice::Speaker, + ] { + for &pin in &self.output_pins { + let widget = self.widgets.get(&pin).unwrap(); + let config = widget.configuration_default(); + if config.sequence() == 0 + && config.port_connectivity() != PortConnectivity::NoPhysicalConnection + && config.default_device() == device + { + return Some(pin); + } + } + } + + for device in [ + DefaultDevice::HPOut, + DefaultDevice::LineOut, + DefaultDevice::DigitalOtherOut, + ] { + for &pin in &self.output_pins { + let widget = self.widgets.get(&pin).unwrap(); + let config = widget.configuration_default(); + if config.sequence() == 0 && config.default_device() == device { + return Some(pin); + } } } + None } } @@ -1005,113 +1030,113 @@ impl> Add for Nid { #[repr(C)] #[allow(dead_code)] pub struct GlobalRegisterSet { - gcap: AtomicU16, - vmin: AtomicU8, - vmaj: AtomicU8, - outpay: AtomicU16, - inpay: AtomicU16, - gctl: AtomicU32, - wakeen: AtomicU16, - statests: AtomicU16, - gsts: AtomicU16, + gcap: MmioRegU16, + vmin: MmioRegU8, + vmaj: MmioRegU8, + outpay: MmioRegU16, + inpay: MmioRegU16, + gctl: MmioRegU32, + wakeen: MmioRegU16, + statests: MmioRegU16, + gsts: MmioRegU16, _rsrv_12_17: [u8; 6], - outstrmpay: AtomicU16, - instrmpay: AtomicU16, + outstrmpay: MmioRegU16, + instrmpay: MmioRegU16, _rsrv_1c_1f: [u8; 4], - intcnt: AtomicU32, - intsts: AtomicU32, + intcnt: MmioRegU32, + intsts: MmioRegU32, _rsrc_28_2f: [u8; 8], - counter: AtomicU32, - ssync: AtomicU32, + counter: MmioRegU32, + ssync: MmioRegU32, } impl GlobalRegisterSet { #[inline] pub fn capabilities(&self) -> GlobalCapabilities { - self.gcap.load(Ordering::Relaxed).into() + self.gcap.read_volatile().into() } #[inline] pub fn version(&self) -> (usize, usize) { ( - self.vmaj.load(Ordering::Relaxed) as usize, - self.vmin.load(Ordering::Relaxed) as usize, + self.vmaj.read_volatile() as usize, + self.vmin.read_volatile() as usize, ) } #[inline] pub fn output_payload_capability(&self) -> usize { - self.outpay.load(Ordering::Relaxed) as usize + self.outpay.read_volatile() as usize } #[inline] pub fn input_payload_capability(&self) -> usize { - self.inpay.load(Ordering::Relaxed) as usize + self.inpay.read_volatile() as usize } #[inline] pub fn get_control(&self) -> GlobalControl { - GlobalControl::from_bits_retain(self.gctl.load(Ordering::SeqCst)) + GlobalControl::from_bits_retain(self.gctl.read_volatile()) } #[inline] pub fn set_control(&self, val: GlobalControl) { - self.gctl.store(val.bits(), Ordering::SeqCst); + self.gctl.write_volatile(val.bits()); } #[inline] pub fn get_wake_enable(&self) -> u16 { - self.wakeen.load(Ordering::SeqCst) + self.wakeen.read_volatile() } #[inline] pub fn set_wake_enable(&self, val: u16) { - self.wakeen.store(val, Ordering::SeqCst); + self.wakeen.write_volatile(val); } #[inline] pub fn get_state_change_status(&self) -> u16 { - self.statests.load(Ordering::SeqCst) + self.statests.read_volatile() } #[inline] pub fn set_state_change_status(&self, val: u16) { - self.statests.store(val, Ordering::SeqCst); + self.statests.write_volatile(val); } #[inline] pub fn get_status(&self) -> GlobalStatus { - GlobalStatus::from_bits_retain(self.gsts.load(Ordering::SeqCst)) + GlobalStatus::from_bits_retain(self.gsts.read_volatile()) } #[inline] pub fn set_status(&self, val: GlobalStatus) { - self.gsts.store(val.bits(), Ordering::SeqCst); + self.gsts.write_volatile(val.bits()); } #[inline] pub fn output_stream_payload_capability(&self) -> usize { - self.outstrmpay.load(Ordering::Relaxed) as usize + self.outstrmpay.read_volatile() as usize } #[inline] pub fn input_stream_payload_capability(&self) -> usize { - self.instrmpay.load(Ordering::Relaxed) as usize + self.instrmpay.read_volatile() as usize } #[inline] pub fn interrupt_control(&self) -> u32 { - self.intcnt.load(Ordering::SeqCst) + self.intcnt.read_volatile() } #[inline] pub fn set_interrupt_control(&self, val: u32) { - self.intcnt.store(val, Ordering::SeqCst) + self.intcnt.write_volatile(val); } #[inline] pub fn interrupt_status(&self) -> u32 { - self.intsts.load(Ordering::SeqCst) + self.intsts.read_volatile() } } @@ -1170,13 +1195,13 @@ impl From for GlobalCapabilities { #[repr(C)] #[allow(dead_code)] pub struct CorbRegisterSet { - lbase: AtomicU32, - ubase: AtomicU32, - wp: AtomicU16, - rp: AtomicU16, - ctl: AtomicU8, - sts: AtomicU8, - size: AtomicU8, + lbase: MmioRegU32, + ubase: MmioRegU32, + wp: MmioRegU16, + rp: MmioRegU16, + ctl: MmioRegU8, + sts: MmioRegU8, + size: MmioRegU8, } my_bitflags! { @@ -1203,7 +1228,7 @@ impl CorbRegisterSet { self.set_write_pointer(0); - self.rp.store(Self::CORBRPRST, Ordering::SeqCst); + self.rp.write_volatile(Self::CORBRPRST); Timer::sleep(Duration::from_millis(100)); // self.rp.store(0, Ordering::SeqCst); @@ -1225,48 +1250,48 @@ impl CorbRegisterSet { #[inline] pub fn set_base(&self, base: PhysicalAddress) { let base = base.as_u64(); - self.lbase.store(base as u32, Ordering::SeqCst); - self.ubase.store((base >> 32) as u32, Ordering::SeqCst); + self.lbase.write_volatile(base as u32); + self.ubase.write_volatile((base >> 32) as u32); } #[inline] pub fn get_write_pointer(&self) -> usize { - (self.wp.load(Ordering::SeqCst) & 0xFF) as usize + (self.wp.read_volatile() & 0xFF) as usize } #[inline] pub fn set_write_pointer(&self, val: usize) { - self.wp.store((val & 0xFF) as u16, Ordering::SeqCst); + self.wp.write_volatile((val & 0xFF) as u16); } #[inline] pub fn get_read_pointer(&self) -> usize { - (self.rp.load(Ordering::SeqCst) & 0xFF) as usize + (self.rp.read_volatile() & 0xFF) as usize } #[inline] pub fn get_control(&self) -> CorbControl { - CorbControl::from_bits_retain(self.ctl.load(Ordering::SeqCst)) + CorbControl::from_bits_retain(self.ctl.read_volatile()) } #[inline] pub fn set_control(&self, val: CorbControl) { - self.ctl.store(val.bits(), Ordering::SeqCst); + self.ctl.write_volatile(val.bits()); } #[inline] pub fn get_status(&self) -> CorbStatus { - CorbStatus::from_bits_retain(self.sts.load(Ordering::SeqCst)) + CorbStatus::from_bits_retain(self.sts.read_volatile()) } #[inline] pub fn set_status(&self, val: CorbStatus) { - self.sts.store(val.bits(), Ordering::SeqCst); + self.sts.write_volatile(val.bits()); } #[inline] pub fn entries(&self) -> Option { - match self.size.load(Ordering::Relaxed) & 3 { + match self.size.read_volatile() & 3 { 0 => NonZeroUsize::new(2), 1 => NonZeroUsize::new(16), 2 => NonZeroUsize::new(256), @@ -1278,13 +1303,13 @@ impl CorbRegisterSet { #[repr(C)] #[allow(dead_code)] pub struct RirbRegisterSet { - lbase: AtomicU32, - ubase: AtomicU32, - wp: AtomicU16, - rintcnt: AtomicU16, - ctl: AtomicU8, - sts: AtomicU8, - size: AtomicU8, + lbase: MmioRegU32, + ubase: MmioRegU32, + wp: MmioRegU16, + rintcnt: MmioRegU16, + ctl: MmioRegU8, + sts: MmioRegU8, + size: MmioRegU8, } my_bitflags! { @@ -1330,53 +1355,53 @@ impl RirbRegisterSet { #[inline] pub fn set_base(&self, base: PhysicalAddress) { let base = base.as_u64(); - self.lbase.store(base as u32, Ordering::SeqCst); - self.ubase.store((base >> 32) as u32, Ordering::SeqCst); + self.lbase.write_volatile(base as u32); + self.ubase.write_volatile((base >> 32) as u32); } #[inline] pub fn get_write_pointer(&self) -> usize { - (self.wp.load(Ordering::SeqCst) & 0xFF) as usize + (self.wp.read_volatile() & 0xFF) as usize } #[inline] pub fn reset_write_pointer(&self) { - self.wp.store(Self::RIRBWPRST, Ordering::SeqCst); + self.wp.write_volatile(Self::RIRBWPRST); } #[inline] pub fn get_rintcnt(&self) -> usize { - (self.rintcnt.load(Ordering::SeqCst) & 0xFF) as usize + (self.rintcnt.read_volatile() & 0xFF) as usize } #[inline] pub fn set_rintcnt(&self, val: usize) { - self.rintcnt.store((val & 0xFF) as u16, Ordering::SeqCst); + self.rintcnt.write_volatile((val & 0xFF) as u16); } #[inline] pub fn get_control(&self) -> RirbControl { - RirbControl::from_bits_retain(self.ctl.load(Ordering::SeqCst)) + RirbControl::from_bits_retain(self.ctl.read_volatile()) } #[inline] pub fn set_control(&self, val: RirbControl) { - self.ctl.store(val.bits(), Ordering::SeqCst); + self.ctl.write_volatile(val.bits()); } #[inline] pub fn get_status(&self) -> RirbStatus { - RirbStatus::from_bits_retain(self.sts.load(Ordering::SeqCst)) + RirbStatus::from_bits_retain(self.sts.read_volatile()) } #[inline] pub fn set_status(&self, val: RirbStatus) { - self.sts.store(val.bits(), Ordering::SeqCst); + self.sts.write_volatile(val.bits()); } #[inline] pub fn entries(&self) -> Option { - match self.size.load(Ordering::Relaxed) & 3 { + match self.size.read_volatile() & 3 { 0 => NonZeroUsize::new(2), 1 => NonZeroUsize::new(16), 2 => NonZeroUsize::new(256), @@ -1388,9 +1413,9 @@ impl RirbRegisterSet { #[repr(C)] #[allow(dead_code)] pub struct ImmediateCommandRegisterSet { - ico: AtomicU32, - ici: AtomicU32, - ics: AtomicU16, + ico: MmioRegU32, + ici: MmioRegU32, + ics: MmioRegU16, } impl ImmediateCommandRegisterSet { @@ -1405,7 +1430,7 @@ impl ImmediateCommandRegisterSet { return Err(ControllerError::CommandBusy); } - self.ico.store(cmd.bits(), Ordering::SeqCst); + self.ico.write_volatile(cmd.bits()); self.set_status(ImmediateCommandStatus::ICB); @@ -1418,8 +1443,7 @@ impl ImmediateCommandRegisterSet { return Err(ControllerError::CommandNotResponding); } - let res = self.ici.load(Ordering::SeqCst) as u64 - | ((self.ici.load(Ordering::SeqCst) as u64) << 32); + let res = self.ici.read_volatile() as u64 | ((self.ici.read_volatile() as u64) << 32); self.set_status(ImmediateCommandStatus::IRV); @@ -1428,12 +1452,12 @@ impl ImmediateCommandRegisterSet { #[inline] pub fn get_status(&self) -> ImmediateCommandStatus { - unsafe { transmute(self.ics.load(Ordering::SeqCst)) } + unsafe { transmute(self.ics.read_volatile()) } } #[inline] pub fn set_status(&self, val: ImmediateCommandStatus) { - self.ics.store(val.bits(), Ordering::SeqCst); + self.ics.write_volatile(val.bits()); } } @@ -1455,26 +1479,25 @@ my_bitflags! { #[repr(C)] #[allow(dead_code)] pub struct StreamDescriptorRegisterSet { - ctl_lo: AtomicU16, - ctl_hi: AtomicU8, - sts: AtomicU8, - lpib: AtomicU32, - cbl: AtomicU32, - lvi: AtomicU16, + ctl_lo: MmioRegU16, + ctl_hi: MmioRegU8, + sts: MmioRegU8, + lpib: MmioRegU32, + cbl: MmioRegU32, + lvi: MmioRegU16, _rsrv_8e_8f: [u8; 2], - fifos: AtomicU16, - fmt: AtomicU16, + fifos: MmioRegU16, + fmt: MmioRegU16, _rsrv_94_97: [u8; 4], - bdpl: AtomicU32, - bdpu: AtomicU32, + bdpl: MmioRegU32, + bdpu: MmioRegU32, } impl StreamDescriptorRegisterSet { #[inline] pub fn get_control(&self) -> StreamDescriptorControl { StreamDescriptorControl::from_bits_retain( - self.ctl_lo.load(Ordering::SeqCst) as u32 - | ((self.ctl_hi.load(Ordering::SeqCst) as u32) << 16), + self.ctl_lo.read_volatile() as u32 | ((self.ctl_hi.read_volatile() as u32) << 16), ) } @@ -1487,19 +1510,18 @@ impl StreamDescriptorRegisterSet { #[inline] pub fn set_control(&self, val: StreamDescriptorControl) { - self.ctl_lo.store(val.bits() as u16, Ordering::SeqCst); - self.ctl_hi - .store((val.bits() >> 16) as u8, Ordering::SeqCst); + self.ctl_lo.write_volatile(val.bits() as u16); + self.ctl_hi.write_volatile((val.bits() >> 16) as u8); } #[inline] pub fn get_status(&self) -> StreamDescriptorStatus { - StreamDescriptorStatus::from_bits_retain(self.sts.load(Ordering::SeqCst)) + StreamDescriptorStatus::from_bits_retain(self.sts.read_volatile()) } #[inline] pub fn set_status(&self, val: StreamDescriptorStatus) { - self.sts.store(val.bits(), Ordering::SeqCst); + self.sts.write_volatile(val.bits()); } #[inline] @@ -1509,49 +1531,49 @@ impl StreamDescriptorRegisterSet { #[inline] pub fn link_position(&self) -> usize { - self.lpib.load(Ordering::SeqCst) as usize + self.lpib.read_volatile() as usize } #[inline] pub fn get_buffer_length(&self) -> usize { - self.cbl.load(Ordering::SeqCst) as usize + self.cbl.read_volatile() as usize } #[inline] pub fn set_buffer_length(&self, val: usize) { - self.cbl.store(val as u32, Ordering::SeqCst); + self.cbl.write_volatile(val as u32); } #[inline] pub fn get_last_valid_index(&self) -> usize { - self.lvi.load(Ordering::SeqCst) as usize + self.lvi.read_volatile() as usize } #[inline] pub fn set_last_valid_index(&self, val: usize) { - self.lvi.store(val as u16, Ordering::SeqCst); + self.lvi.write_volatile(val as u16); } #[inline] pub fn fifo_size(&self) -> usize { - self.fifos.load(Ordering::Relaxed) as usize + self.fifos.read_volatile() as usize } #[inline] pub fn set_pcm_format(&self, fmt: PcmFormat) { - self.fmt.store(fmt.bits(), Ordering::SeqCst); + self.fmt.write_volatile(fmt.bits()); } #[inline] pub fn get_format(&self) -> PcmFormat { - PcmFormat::from_bits(self.fmt.load(Ordering::SeqCst)) + PcmFormat::from_bits(self.fmt.read_volatile()) } #[inline] pub fn set_base(&self, base: PhysicalAddress) { let base = base.as_u64(); - self.bdpl.store(base as u32, Ordering::SeqCst); - self.bdpu.store((base >> 32) as u32, Ordering::SeqCst); + self.bdpl.write_volatile(base as u32); + self.bdpu.write_volatile((base >> 32) as u32); } } diff --git a/system/src/drivers/pci/pci.rs b/system/src/drivers/pci/pci.rs index 90b8bb6a7..67a04e45b 100644 --- a/system/src/drivers/pci/pci.rs +++ b/system/src/drivers/pci/pci.rs @@ -141,7 +141,6 @@ impl Pci { for registrar in &shared.registrars { match registrar.instantiate(&device) { Some(v) => { - // log!("PCI INIT {:?}", device.address()); shared.drivers.write().unwrap().insert(device.address(), v); } None => {} @@ -417,6 +416,14 @@ impl PciDevice { Hal::pci().write_pci(base + 3, msi_data as u32); Hal::pci().write_pci(base, (Hal::pci().read_pci(base) & 0xFF8FFFFF) | 0x00010000); + // log!( + // "MSI {:08x} {:04x} {:016x} {:016x}", + // msi_addr, + // msi_data, + // f as usize, + // arg + // ); + Ok(()) } diff --git a/system/src/drivers/usb/drivers/usb_hid.rs b/system/src/drivers/usb/drivers/usb_hid.rs index 561a5b43d..7300c57b3 100644 --- a/system/src/drivers/usb/drivers/usb_hid.rs +++ b/system/src/drivers/usb/drivers/usb_hid.rs @@ -49,15 +49,15 @@ impl UsbHidDriver { class: UsbClass, ) -> Result { let Some(interface) = device -.device() -.current_configuration() -.find_interface(if_no, None) -else { -return Err(UsbError::InvalidParameter) -}; + .device() + .current_configuration() + .find_interface(if_no, None) + else { + return Err(UsbError::InvalidParameter) + }; let Some(endpoint) = interface.endpoints().first() else { -return Err(UsbError::InvalidDescriptor) -}; + return Err(UsbError::InvalidDescriptor) + }; if !endpoint.is_dir_in() { return Err(UsbError::InvalidDescriptor); } @@ -131,8 +131,10 @@ return Err(UsbError::InvalidDescriptor) .chain(report_desc.applications()) { let mut data = Vec::new(); - data.resize((app.bit_count_for_feature() + 7) / 8, 0); - let empty_data = [0; Self::BUFFER_LEN]; + data.resize( + (app.bit_count_for_feature().max(app.bit_count_for_output()) + 7) / 8, + 0, + ); let mut writer = HidBitStreamWriter::new(data.as_mut_slice()); match app.usage() { HidUsage::KEYBOARD => { @@ -151,57 +153,66 @@ return Err(UsbError::InvalidDescriptor) } } - let _ = Self::set_report( + match Self::set_report( &device, if_no, HidReportType::Output, app.report_id(), len, - &data, + writer.data(), ) - .await; + .await + { + Ok(_) => (), + Err(_) => break, + } Timer::sleep_async(Duration::from_millis(100)).await; + writer.clear(); + let _ = Self::set_report( &device, if_no, HidReportType::Output, app.report_id(), len, - &empty_data, + writer.data(), ) - .await; + .await + .unwrap(); Timer::sleep_async(Duration::from_millis(50)).await; } } + // HidUsage::DEVICE_CONFIGURATION => { // let len = (app.bit_count_for_feature() + 7) / 8; - // if len > 0 { - // for item in app.features() { - // match item.usage_min() { - // HidUsage::DEVICE_MODE => { - // let _ = writer - // .write_item(item, DeviceMode::SingleInputDevice as u32); - // } - // HidUsage::SURFACE_SWITCH | HidUsage::BUTTON_SWITCH => { - // let _ = writer.write_item(item, 1); - // } - // _ => { - // writer.advance_by(item); - // } + // if len > 0 { + // for item in app.feature_items() { + // match item.usage_min() { + // HidUsage::DEVICE_MODE => { + // let _ = writer + // .write_item(item, DeviceMode::MultiInputDevice as u32); + // } + // // HidUsage::SURFACE_SWITCH | HidUsage::BUTTON_SWITCH => { + // // let _ = writer.write_item(item, 1); + // // } + // _ => { + // writer.advance_by(item); // } // } - - // let _ = Self::set_report( - // &device, - // if_no, - // HidReportType::Feature, - // app.report_id(), - // len, - // data.as_slice(), - // ) - // .await; // } + + // let _ = Self::set_report( + // &device, + // if_no, + // HidReportType::Feature, + // app.report_id(), + // len, + // data.as_slice(), + // ) + // .await + // .unwrap(); + // } // } _ => (), } @@ -213,7 +224,7 @@ return Err(UsbError::InvalidDescriptor) loop { match device.read_vec(ep, &mut buffer, 1, ps).await { Ok(_) => { - // if report_desc.has_report_id() && buffer.iter().fold(0, |a, b| a | *b) > 0 { + // if report_desc.has_report_id() && buffer.iter().fold(0, |a, b| a | *b) != 0 { // println!("HID {:?}", HexDump(&buffer)); // } @@ -227,7 +238,9 @@ return Err(UsbError::InvalidDescriptor) }; let Some(app) = app else { continue }; - if buffer.len() * 8 < app.bit_count_for_input() { + if buffer.len() * 8 + < report_desc.initial_bit_position() + app.bit_count_for_input() + { // Some devices send smaller garbage data continue; } diff --git a/system/src/drivers/usb/xhci/xhci.rs b/system/src/drivers/usb/xhci/xhci.rs index a72f1c8c5..85a59e4fc 100644 --- a/system/src/drivers/usb/xhci/xhci.rs +++ b/system/src/drivers/usb/xhci/xhci.rs @@ -135,6 +135,17 @@ impl Xhci { .unwrap() .get() as PhysicalAddress; + // log!( + // "XHCI {}.{}.{} PORTS {} SLOTS {} CTX {} INT {}", + // cap.version().0, + // cap.version().1, + // cap.version().2, + // cap.max_ports(), + // cap.max_device_slots(), + // context_size, + // cap.max_interrups(), + // ); + let driver = Arc::new(Self { addr: device.address(), mmio, @@ -188,6 +199,7 @@ impl Xhci { let mut xecp_base = xecp.get() as *mut u32; loop { let xecp = xecp_base.read_volatile(); + // log!("XECP {:02x} {:02x}", xecp & 0xFF, (xecp >> 8) & 0xFF); match xecp & 0xFF { 0x01 => { // USB Legacy Support @@ -195,6 +207,11 @@ impl Xhci { const USBLEGSUP_OS_OWNED: u32 = 0x0100_0000; let usb_leg_sup = xecp_base; let usb_leg_ctl_sts = xecp_base.add(1); + // log!( + // "USB leg_sup {:08x} {:08x}", + // usb_leg_sup.read_volatile(), + // usb_leg_ctl_sts.read_volatile() + // ); // Hand over ownership from BIOS to OS usb_leg_sup.write_volatile(xecp | USBLEGSUP_OS_OWNED); @@ -220,6 +237,28 @@ impl Xhci { 0x02 => { // Supported Protocol let ecap = XhciSupportedProtocolCapability(xecp_base); + // let psic = (xecp_base.add(2).read_volatile() >> 28) as usize; + + // let n = ecap.name(); + // let s = unsafe { + // core::str::from_utf8_unchecked(core::slice::from_raw_parts( + // n.as_ptr(), + // 4, + // )) + // }; + // log!( + // "XHCI_ECAP: {} {}.{:02x} {:2},{:2}", + // s, + // ecap.rev_major(), + // ecap.rev_minor(), + // ecap.compatible_port_offset(), + // ecap.compatible_port_count() + // ); + // for i in 0..psic { + // let psi_base = xecp_base.add(4 + i); + // let psi = psi_base.read_volatile(); + // log!("PSI {:08x}", psi); + // } match (ecap.name(), ecap.rev_major(), ecap.rev_minor()) { (XhciSupportedProtocolCapability::NAME_USB, 2, 0) => { @@ -333,10 +372,7 @@ impl Xhci { } pub fn ring_a_doorbell(&self, slot_id: Option, dci: Option) { - self.doorbells - .get(slot_id.map(|v| v.0.get() as usize).unwrap_or_default()) - .unwrap() - .set_target(dci); + self.doorbells[slot_id.map(|v| v.0.get() as usize).unwrap_or_default()].set_target(dci); } pub fn ring_a_doorbell_async( @@ -444,12 +480,9 @@ impl Xhci { } /// wait for CNR (Controller Not Ready) - #[inline] + #[inline(never)] pub fn wait_cnr(&self, _: usize) { - let mut wait = Hal::cpu().spin_wait(); - while self.opr.status().contains(UsbSts::CNR) { - wait.wait(); - } + while self.opr.status().contains(UsbSts::CNR) {} } pub fn ep_ring_index(&self, slot_id: Option, dci: Option) -> Option { @@ -569,6 +602,15 @@ impl Xhci { &self, trb: &Trb, ) -> Result { + // log!( + // "EXEC {:?} {:08x} {:08x} {:08x} {:08x}", + // trb.trb_type(), + // trb.raw_data()[0].load(Ordering::Relaxed), + // trb.raw_data()[1].load(Ordering::Relaxed), + // trb.raw_data()[2].load(Ordering::Relaxed), + // trb.raw_data()[3].load(Ordering::Relaxed), + // ); + let mut crb = DisposableRef::new(self.allocate_crb().unwrap()); self.issue_trb(Some(crb.as_mut()), trb, None, None); self.wait_cnr(0); @@ -946,6 +988,13 @@ impl Xhci { let port = self.port_by(port_id); self.wait_cnr(0); + // log!( + // "ATTACH_ROOT {:?} {:08x} PS {:04x}", + // port_id, + // port.status().bits(), + // port.status().speed_raw() + // ); + let trb = Trb::new(TrbType::ENABLE_SLOT_COMMAND); let slot_id = match self.execute_command(&trb) { Ok(result) => result.slot_id().unwrap(), @@ -1141,6 +1190,16 @@ impl Xhci { } TrbEvent::CommandCompletion(event) => { let event_trb = ScheduledTrb(event.ptr()); + + // unsafe { + // log!( + // "CCE {} {:?} {:?}", + // event.slot_id().map(|v| v.0.get()).unwrap_or(0), + // event_trb.peek().trb_type(), + // event.completion_code() + // ); + // } + if let Some(crb) = self.find_crb(event_trb, Some(RequestState::Scheduled)) { crb.set_response(event.as_trb()); } else { @@ -1149,6 +1208,7 @@ impl Xhci { } TrbEvent::PortStatusChange(event) => { let port_id = event.port_id().unwrap(); + // log!("PSC {:?}", port_id); self.port_status_change_queue.post(port_id).unwrap(); } TrbEvent::DeviceNotification(event) => { @@ -1218,49 +1278,17 @@ impl Xhci { async fn _root_hub_task(self: Arc) { self.focus_hub(None); - for (port_id, port) in self.usb3_ports() { + for (_port_id, port) in self.usb3_ports() { self.wait_cnr(0); - let status = port.status(); - if status.is_connected() { - self._process_port_change(port_id, true).await; - port.clear_changes(); - } else { - port.clear_changes(); - port.set(PortSc::PR); - } + port.set(PortSc::PR); } - for (port_id, port) in self.usb2_ports() { + for (_port_id, port) in self.usb2_ports() { self.wait_cnr(0); - let status = port.status(); - if status.is_connected() { - self._process_port_change(port_id, true).await; - port.clear_changes(); - } else { - port.clear_changes(); - port.set(PortSc::PR); - } + port.set(PortSc::PR); } - Timer::sleep_async(Duration::from_millis(1000)).await; - - // for (port_id, port) in self.ports() { - // self.wait_cnr(0); - // let status = port.status(); - // log!( - // "STATUS2: {:?} {:08x} {:?} {:?}", - // port_id, - // status.bits(), - // status.speed(), - // status.link_state(), - // ); - // } - self.unfocus_hub(None); - // log!("ALL PORT RESET DONE"); - - Timer::sleep_async(Duration::from_millis(1000)).await; - while let Some(port_id) = self.port_status_change_queue.wait_event().await { let mut ports = Vec::new(); ports.push(port_id); diff --git a/system/src/drivers/usb/xhci/xhci_r.rs b/system/src/drivers/usb/xhci/xhci_r.rs index eef4efb82..4c5b57862 100644 --- a/system/src/drivers/usb/xhci/xhci_r.rs +++ b/system/src/drivers/usb/xhci/xhci_r.rs @@ -1,39 +1,45 @@ //! xHCI MMIO Registers use super::*; -use crate::{drivers::usb::*, mem::MemoryManager, *}; +use crate::{ + drivers::usb::*, + mem::{ + mmio::{MmioRegU32, MmioRegU64}, + MemoryManager, + }, + *, +}; use core::{ ffi::c_void, mem::size_of, mem::transmute, num::{NonZeroU8, NonZeroUsize}, slice, - sync::atomic::*, }; /// xHC Capability Registers #[repr(C)] #[allow(dead_code)] pub struct CapabilityRegisters { - caplength: AtomicU32, - hcsparams1: AtomicU32, - hcsparams2: AtomicU32, - hcsparams3: AtomicU32, - hccparams1: AtomicU32, - dboff: AtomicU32, - rtsoff: AtomicU32, - hccparams2: AtomicU32, + caplength: MmioRegU32, + hcsparams1: MmioRegU32, + hcsparams2: MmioRegU32, + hcsparams3: MmioRegU32, + hccparams1: MmioRegU32, + dboff: MmioRegU32, + rtsoff: MmioRegU32, + hccparams2: MmioRegU32, } impl CapabilityRegisters { #[inline] pub fn length(&self) -> usize { - (self.caplength.load(Ordering::Relaxed) & 0xFF) as usize + (self.caplength.read_volatile() & 0xFF) as usize } #[inline] pub fn version(&self) -> (usize, usize, usize) { - let ver = self.caplength.load(Ordering::Relaxed) >> 16; + let ver = self.caplength.read_volatile() >> 16; let ver2 = (ver & 0x0F) as usize; let ver1 = ((ver >> 4) & 0x0F) as usize; let ver0 = (ver >> 8) as usize; @@ -42,37 +48,37 @@ impl CapabilityRegisters { #[inline] pub fn hcs_params1(&self) -> u32 { - self.hcsparams1.load(Ordering::Relaxed) + self.hcsparams1.read_volatile() } #[inline] pub fn hcs_params2(&self) -> u32 { - self.hcsparams2.load(Ordering::Relaxed) + self.hcsparams2.read_volatile() } #[inline] pub fn hcs_params3(&self) -> u32 { - self.hcsparams3.load(Ordering::Relaxed) + self.hcsparams3.read_volatile() } #[inline] pub fn hcc_params1(&self) -> HccParams1 { - HccParams1::from_bits_retain(self.hccparams1.load(Ordering::Relaxed)) + HccParams1::from_bits_retain(self.hccparams1.read_volatile()) } #[inline] pub fn hcc_params2(&self) -> u32 { - self.hccparams2.load(Ordering::Relaxed) + self.hccparams2.read_volatile() } #[inline] pub fn db_off(&self) -> usize { - (self.dboff.load(Ordering::Relaxed) & !0x03) as usize + (self.dboff.read_volatile() & !0x03) as usize } #[inline] pub fn rts_off(&self) -> usize { - (self.rtsoff.load(Ordering::Relaxed) & !0x1F) as usize + (self.rtsoff.read_volatile() & !0x1F) as usize } #[inline] @@ -189,20 +195,21 @@ impl HccParams1 { #[repr(C)] #[allow(dead_code)] pub struct OperationalRegisters { - usbcmd: AtomicU32, - usbsts: AtomicU32, - pagesize: AtomicU32, + usbcmd: MmioRegU32, + usbsts: MmioRegU32, + pagesize: MmioRegU32, _rsrv1: [u32; 2], - dnctrl: AtomicU32, - crcr: AtomicU64, + dnctrl: MmioRegU32, + crcr: MmioRegU64, _rsrv2: [u32; 4], - dcbaap: AtomicU64, - config: AtomicU32, + dcbaap: MmioRegU64, + config: MmioRegU32, } impl OperationalRegisters { + #[inline] pub fn page_size_raw(&self) -> u32 { - self.pagesize.load(Ordering::Relaxed) & 0xFFFF + self.pagesize.read_volatile() & 0xFFFF } #[inline] @@ -213,12 +220,12 @@ impl OperationalRegisters { #[inline] pub fn read_cmd(&self) -> UsbCmd { - UsbCmd::from_bits_retain(self.usbcmd.load(Ordering::SeqCst)) + UsbCmd::from_bits_retain(self.usbcmd.read_volatile()) } #[inline] pub fn write_cmd(&self, val: UsbCmd) { - self.usbcmd.store(val.bits(), Ordering::SeqCst); + self.usbcmd.write_volatile(val.bits()); } #[inline] @@ -228,45 +235,45 @@ impl OperationalRegisters { #[inline] pub fn status(&self) -> UsbSts { - UsbSts::from_bits_retain(self.usbsts.load(Ordering::SeqCst)) + UsbSts::from_bits_retain(self.usbsts.read_volatile()) } #[inline] pub fn reset_status(&self, val: UsbSts) { - self.usbsts.store(val.bits(), Ordering::SeqCst); + self.usbsts.write_volatile(val.bits()); } #[inline] pub fn set_crcr(&self, val: NonNullPhysicalAddress) { - self.crcr.store(val.get().as_u64(), Ordering::SeqCst); + self.crcr.write_volatile(val.get().as_u64()); } #[inline] pub fn dcbaap(&self) -> PhysicalAddress { - self.dcbaap.load(Ordering::SeqCst).into() + self.dcbaap.read_volatile().into() } #[inline] pub fn set_dcbaap(&self, val: NonNullPhysicalAddress) { - self.dcbaap.store(val.get().as_u64(), Ordering::SeqCst); + self.dcbaap.write_volatile(val.get().as_u64()); } #[inline] - pub fn set_config(&self, max_dev_slot: usize, u3e: bool, cie: bool) { + pub unsafe fn set_config(&self, max_dev_slot: usize, u3e: bool, cie: bool) { let val = (max_dev_slot & 0xFF) as u32 | if u3e { 0x100 } else { 0 } | if cie { 0x200 } else { 0 }; - self.config.store(val, Ordering::SeqCst); + self.config.write_volatile(val); } #[inline] pub fn device_notification_bitmap(&self) -> DeviceNotificationBitmap { - DeviceNotificationBitmap::from_bits_retain(self.dnctrl.load(Ordering::SeqCst)) + DeviceNotificationBitmap::from_bits_retain(self.dnctrl.read_volatile()) } #[inline] - pub fn set_device_notification_bitmap(&self, bitmap: DeviceNotificationBitmap) { - self.dnctrl.store(bitmap.bits(), Ordering::SeqCst); + pub unsafe fn set_device_notification_bitmap(&self, bitmap: DeviceNotificationBitmap) { + self.dnctrl.write_volatile(bitmap.bits()); } } @@ -317,16 +324,16 @@ impl DeviceNotificationBitmap { #[repr(C)] #[allow(dead_code)] pub struct PortRegisters { - portsc: AtomicU32, - portpmsc: AtomicU32, - portli: AtomicU32, - porthlpmc: AtomicU32, + portsc: MmioRegU32, + portpmsc: MmioRegU32, + portli: MmioRegU32, + porthlpmc: MmioRegU32, } impl PortRegisters { #[inline] pub fn status(&self) -> PortSc { - PortSc::from_bits_retain(self.portsc.load(Ordering::SeqCst)) + PortSc::from_bits_retain(self.portsc.read_volatile()) } #[inline] @@ -348,7 +355,7 @@ impl PortRegisters { #[inline] pub fn write(&self, val: PortSc) { - self.portsc.store(val.bits(), Ordering::SeqCst); + self.portsc.write_volatile(val.bits()); } } @@ -480,7 +487,7 @@ impl PortSc { /// xHC Runtime Registers #[repr(C)] pub struct RuntimeRegisters { - mfindex: AtomicU32, + mfindex: MmioRegU32, _rsrv1: [u32; 7], irs: [InterrupterRegisterSet; 1], } @@ -488,7 +495,7 @@ pub struct RuntimeRegisters { impl RuntimeRegisters { #[inline] pub fn mf_index(&self) -> u32 { - self.mfindex.load(Ordering::SeqCst) & 0x3FFF + self.mfindex.read_volatile() & 0x3FFF } #[inline] @@ -506,12 +513,12 @@ impl RuntimeRegisters { #[repr(C)] #[allow(dead_code)] pub struct InterrupterRegisterSet { - iman: AtomicU32, - imod: AtomicU32, - erstsz: AtomicU32, - _rsrv: u32, - erstba: AtomicU64, - erdp: AtomicU64, + iman: MmioRegU32, + imod: MmioRegU32, + erstsz: MmioRegU32, + _rsrv: MmioRegU32, + erstba: MmioRegU64, + erdp: MmioRegU64, } impl InterrupterRegisterSet { @@ -521,18 +528,18 @@ impl InterrupterRegisterSet { let count = 1; let (base, erst) = MemoryManager::alloc_dma(count).unwrap(); *erst = EventRingSegmentTableEntry::new(initial_dp, len as u16); - self.erstsz.store(count as u32, Ordering::SeqCst); - self.erdp.store(initial_dp.as_u64(), Ordering::SeqCst); - self.erstba.store(base.as_u64(), Ordering::SeqCst); + self.erstsz.write_volatile(count as u32); + self.erdp.write_volatile(initial_dp.as_u64()); + self.erstba.write_volatile(base.as_u64()); } #[inline] pub fn set_iman(&self, val: u32) { - self.iman.store(val, Ordering::SeqCst); + self.iman.write_volatile(val); } pub fn dequeue_event<'a>(&'a self, event_cycle: &'a CycleBit) -> Option<&'a Trb> { - let erdp = PhysicalAddress::from(self.erdp.load(Ordering::SeqCst)); + let erdp = PhysicalAddress::from(self.erdp.read_volatile()); let cycle = event_cycle.value(); let event = unsafe { &*(erdp & !15).direct_map::() }; if event.cycle_bit() == cycle { @@ -543,7 +550,7 @@ impl InterrupterRegisterSet { event_cycle.toggle(); } let new_erdp = er_base.as_u64() | (index * size_of::()) as u64 | 8; - self.erdp.store(new_erdp, Ordering::SeqCst); + self.erdp.write_volatile(new_erdp); Some(event) } else { @@ -554,17 +561,17 @@ impl InterrupterRegisterSet { /// xHC Doorbell Register #[repr(transparent)] -pub struct DoorbellRegister(AtomicU32); +pub struct DoorbellRegister(MmioRegU32); impl DoorbellRegister { #[inline] pub fn raw(&self) -> u32 { - self.0.load(Ordering::SeqCst) + self.0.read_volatile() } #[inline] pub fn set_raw(&self, val: u32) { - self.0.store(val, Ordering::SeqCst); + self.0.write_volatile(val); } #[inline] diff --git a/system/src/fs/ramfs.rs b/system/src/fs/ramfs.rs index 80649df0e..1ae864cf3 100644 --- a/system/src/fs/ramfs.rs +++ b/system/src/fs/ramfs.rs @@ -453,9 +453,7 @@ impl ThisFsDirectoryContent { fn find_index(&self, name: &str) -> Result { self.content .iter() - .enumerate() - .find(|(_, v)| ThisFs::compare_name(v.name(), name)) - .map(|(index, _)| index) + .position(|v| ThisFs::compare_name(v.name(), name)) .ok_or(ErrorKind::NotFound.into()) } @@ -539,12 +537,10 @@ impl ThisFsDirectoryContent { fn append_or_replace(&mut self, name: &str, entity: Arc) { match self .content - .iter() - .enumerate() - .find(|(_index, dir_ent)| ThisFs::compare_name(dir_ent.name(), name)) - .map(|(index, _)| index) + .iter_mut() + .find(|dir_ent| ThisFs::compare_name(dir_ent.name(), name)) { - Some(index) => self.content[index].entity = entity, + Some(dir_ent) => dir_ent.entity = entity, None => self.content.push(ThisFsDirEntry { name: name.to_owned(), entity, diff --git a/system/src/io/hid_mgr.rs b/system/src/io/hid_mgr.rs index 8d43ec453..5b732c073 100644 --- a/system/src/io/hid_mgr.rs +++ b/system/src/io/hid_mgr.rs @@ -560,7 +560,7 @@ impl ParsedReportApplication { } #[inline] - pub fn features(&self) -> impl Iterator { + pub fn feature_items(&self) -> impl Iterator { self.entries().flat_map(|v| match v { ParsedReportEntry::Feature(v) => Some(v), _ => None, @@ -578,12 +578,7 @@ impl ParsedReportApplication { } pub fn bit_count_for_input(&self) -> usize { - let acc = self.bit_count(|v| matches!(v, ParsedReportEntry::Input(_))); - if acc > 0 && self.report_id.is_some() { - acc + 8 - } else { - acc - } + self.bit_count(|v| matches!(v, ParsedReportEntry::Input(_))) } pub fn bit_count_for_output(&self) -> usize { @@ -1162,6 +1157,22 @@ impl<'a> HidBitStreamWriter<'a> { } impl HidBitStreamWriter<'_> { + #[inline] + pub fn data(&self) -> &[u8] { + &self.slice + } + + #[inline] + pub fn current_len(&self) -> usize { + (self.position + 7) / 8 + } + + #[inline] + pub fn clear(&mut self) { + self.position = 0; + self.slice.fill(0); + } + fn _write_bits( &mut self, position: usize, diff --git a/system/src/io/image.rs b/system/src/io/image.rs index 5473a2b81..18c4d9576 100644 --- a/system/src/io/image.rs +++ b/system/src/io/image.rs @@ -2,12 +2,18 @@ use alloc::vec::Vec; use byteorder::*; use megstd::drawing::*; use png_decoder; +use zune_jpeg::JpegDecoder; pub struct ImageLoader; impl ImageLoader { pub fn load(blob: &[u8]) -> Result { - let drivers = [Self::_from_qoi, Self::_from_png, Self::_from_msdib]; + let drivers = [ + Self::_from_jpeg, + Self::_from_msdib, + Self::_from_png, + Self::_from_qoi, + ]; for driver in drivers { match driver(blob) { Err(DecodeError::NotSupported) => continue, @@ -33,8 +39,7 @@ impl ImageLoader { }) .map_err(|err| match err { png_decoder::DecodeError::InvalidMagicBytes => DecodeError::NotSupported, - png_decoder::DecodeError::Decompress(_) => DecodeError::General, - _ => DecodeError::InvalidParameter, + _ => DecodeError::InvalidData, }) } @@ -63,9 +68,7 @@ impl ImageLoader { .map_err(|err| match err { rapid_qoi::DecodeError::NotEnoughData => DecodeError::OutOfMemory, rapid_qoi::DecodeError::InvalidMagic => DecodeError::NotSupported, - rapid_qoi::DecodeError::InvalidChannelsValue - | rapid_qoi::DecodeError::InvalidColorSpaceValue - | rapid_qoi::DecodeError::OutputIsTooSmall => DecodeError::InvalidParameter, + _ => DecodeError::InvalidData, }) } @@ -158,6 +161,27 @@ impl ImageLoader { } Ok(OwnedBitmap32::from_vec(vec, Size::new(width as isize, height as isize)).into()) } + + #[inline] + fn _from_jpeg(blob: &[u8]) -> Result { + let mut decoder = JpegDecoder::new(blob); + decoder + .decode_headers() + .map_err(|_| DecodeError::NotSupported)?; + let info = decoder.info().ok_or(DecodeError::InvalidData)?; + let pixels = decoder.decode().map_err(|_| DecodeError::InvalidData)?; + + let vec = pixels + .array_chunks::<3>() + .map(|v| (v[0], v[1], v[2], Alpha8::OPAQUE)) + .map(|(r, g, b, a)| ColorComponents::from_rgba(r, g, b, a).into_true_color()) + .collect::>(); + + Ok( + OwnedBitmap32::from_vec(vec, Size::new(info.width as isize, info.height as isize)) + .into(), + ) + } } #[derive(Debug)] @@ -166,4 +190,5 @@ pub enum DecodeError { OutOfMemory, NotSupported, InvalidParameter, + InvalidData, } diff --git a/system/src/lib.rs b/system/src/lib.rs index f962f9800..f06cc6c1c 100644 --- a/system/src/lib.rs +++ b/system/src/lib.rs @@ -63,26 +63,23 @@ extern crate alloc; #[macro_export] macro_rules! print { - ($($arg:tt)*) => { - write!(system::System::stdout(), $($arg)*).unwrap() - }; + ($($arg:tt)*) => {{ + let _ = write!(system::System::stdout(), $($arg)*); + }}; } #[macro_export] macro_rules! println { - ($fmt:expr) => { - print!(concat!($fmt, "\r\n")) - }; - ($fmt:expr, $($arg:tt)*) => { - print!(concat!($fmt, "\r\n"), $($arg)*) - }; + ($($arg:tt)*) => {{ + let _ = writeln!(system::System::stdout(), $($arg)*); + }}; } #[macro_export] macro_rules! log { - ($($arg:tt)*) => { - let _ = writeln!(log::Log::new(), $($arg)*).unwrap(); - }; + ($($arg:tt)*) => {{ + let _ = writeln!(log::Log::new(), $($arg)*); + }}; } static PANIC_GLOBAL_LOCK: Spinlock = Spinlock::new(); diff --git a/system/src/main.rs b/system/src/main.rs index 978d03179..4dac01e75 100644 --- a/system/src/main.rs +++ b/system/src/main.rs @@ -425,21 +425,41 @@ impl Shell { println!("memory:\tShow memory information"); return; } + + fn print_cpu_type(device: &DeviceInfo, new_line: bool) { + let n_threads = device.num_of_logical_cpus(); + let n_cores = device.num_of_physical_cpus(); + let n_pcores = device.num_of_main_cpus(); + let n_ecores = device.num_of_efficient_cpus(); + + match device.processor_system_type() { + ProcessorSystemType::Hybrid => { + print!( + "Hybrid {}P + {}E Core / {} Threads", + n_pcores, n_ecores, n_threads, + ); + } + ProcessorSystemType::SMT => { + print!("SMT {} Cores / {} Threads", n_cores, n_threads,); + } + ProcessorSystemType::SMP => { + print!("SMP {} Processors", n_cores,); + } + ProcessorSystemType::Uniprocessor => { + print!("Uniprocessor"); + } + } + + if new_line { + println!(""); + } + } + let subcmd = argv[1]; match subcmd { "device" => { let device = System::current_device(); - let n_cores = device.num_of_main_cpus(); - let n_threads = device.num_of_logical_cpus(); - if n_threads > 1 { - if n_cores != n_threads { - print!(" {} Cores {} Threads", n_cores, n_threads,); - } else { - print!(" {} Processors", n_cores,); - } - } else { - print!(" Uniprocessor system"); - } + print_cpu_type(device, false); let bytes = device.total_memory_size(); let gb = bytes >> 30; @@ -455,18 +475,7 @@ impl Shell { } "cpu" => { let device = System::current_device(); - - let n_cores = device.num_of_main_cpus(); - let n_threads = device.num_of_logical_cpus(); - if n_threads > 1 { - if n_cores != n_threads { - println!("{} Cores {} Threads", n_cores, n_threads,); - } else { - println!("{} Processors", n_cores,); - } - } else { - println!("Uniprocessor system"); - } + print_cpu_type(device, true); for (index, cpu) in System::cpus().enumerate() { println!( diff --git a/system/src/mem/mmio.rs b/system/src/mem/mmio.rs index ff65fcb61..0c8eaa4da 100644 --- a/system/src/mem/mmio.rs +++ b/system/src/mem/mmio.rs @@ -1,65 +1,52 @@ use super::*; use crate::{drivers::pci::PciBar, *}; use core::{ - marker::PhantomData, mem::{size_of, transmute}, num::NonZeroUsize, - ops::{Deref, DerefMut}, - slice, - sync::atomic::*, }; -#[repr(transparent)] -pub struct Mmio { - base: usize, - _phantom: PhantomData, +macro_rules! mmio_reg_declare { + ( + $( + $(#[$outer:meta])* + $vis:vis struct $class:ident: $ty:ty; + )* + ) => { + $( + $(#[$outer])* + #[repr(transparent)] + $vis struct $class(core::cell::UnsafeCell<$ty>); + + impl $class { + #[allow(dead_code)] + #[inline] + $vis fn read_volatile(&self) -> $ty { + unsafe { + self.0.get().read_volatile() + } + } + + #[allow(dead_code)] + #[inline] + $vis fn write_volatile(&self, val: $ty) { + unsafe { + self.0.get().write_volatile(val); + } + } + } + )* + }; } -impl Mmio { - #[inline] - pub unsafe fn from_phys(base: PhysicalAddress) -> Option { - MemoryManager::mmap(MemoryMapRequest::Mmio(base, size_of::())).map(|va| Self { - base: va.get(), - _phantom: PhantomData, - }) - } +mmio_reg_declare! { - #[inline] - pub unsafe fn from_bar(bar: PciBar) -> Option { - if bar.is_mmio() && size_of::() <= bar.size() { - Self::from_phys(bar.base()) - } else { - None - } - } + pub struct MmioRegU8: u8; - #[inline] - pub unsafe fn from_virt(base: NonZeroUsize) -> Self { - Self { - base: base.get(), - _phantom: PhantomData, - } - } -} + pub struct MmioRegU16: u16; -// impl Drop for Mmio { -// fn drop(&mut self) { -// // TODO: -// } -// } - -impl Deref for Mmio { - type Target = T; - - fn deref(&self) -> &Self::Target { - unsafe { &*(self.base as *const _) } - } -} + pub struct MmioRegU32: u32; -impl DerefMut for Mmio { - fn deref_mut(&mut self) -> &mut Self::Target { - unsafe { &mut *(self.base as *mut _) } - } + pub struct MmioRegU64: u64; } #[derive(Debug, Copy, Clone)] @@ -121,69 +108,80 @@ impl MmioSlice { #[inline] #[track_caller] - #[cfg(target_has_atomic_load_store = "8")] pub fn read_u8(&self, offset: usize) -> u8 { - let slice = unsafe { slice::from_raw_parts(self.base as *const AtomicU8, self.size) }; - slice[offset].load(Ordering::SeqCst) + let mut result = 0; + self.check_limit(offset, &result); + unsafe { + let ptr: &MmioRegU8 = transmute(self.base + offset); + result = ptr.read_volatile(); + }; + result } #[inline] #[track_caller] - #[cfg(target_has_atomic_load_store = "8")] pub fn write_u8(&self, offset: usize, value: u8) { - let slice = unsafe { slice::from_raw_parts(self.base as *const AtomicU8, self.size) }; - slice[offset].store(value, Ordering::SeqCst); + self.check_limit(offset, &value); + unsafe { + let ptr: &MmioRegU8 = transmute(self.base + offset); + ptr.write_volatile(value); + }; } #[inline] #[track_caller] - #[cfg(target_has_atomic_load_store = "16")] pub fn read_u16(&self, offset: usize) -> u16 { let mut result = 0; self.check_limit(offset, &result); - let ptr: &AtomicU16 = unsafe { transmute(self.base + offset) }; - result = ptr.load(Ordering::SeqCst); + unsafe { + let ptr: &MmioRegU16 = transmute(self.base + offset); + result = ptr.read_volatile(); + }; result } #[inline] #[track_caller] - #[cfg(target_has_atomic_load_store = "32")] pub fn read_u32(&self, offset: usize) -> u32 { let mut result = 0; self.check_limit(offset, &result); - let ptr: &AtomicU32 = unsafe { transmute(self.base + offset) }; - result = ptr.load(Ordering::SeqCst); + unsafe { + let ptr: &MmioRegU32 = transmute(self.base + offset); + result = ptr.read_volatile(); + }; result } #[inline] #[track_caller] - #[cfg(target_has_atomic_load_store = "32")] pub fn write_u32(&self, offset: usize, value: u32) { self.check_limit(offset, &value); - let ptr: &AtomicU32 = unsafe { transmute(self.base + offset) }; - ptr.store(value, Ordering::SeqCst); + unsafe { + let ptr: &MmioRegU32 = transmute(self.base + offset); + ptr.write_volatile(value); + }; } #[inline] #[track_caller] - #[cfg(target_has_atomic_load_store = "64")] pub fn read_u64(&self, offset: usize) -> u64 { let mut result = 0; self.check_limit(offset, &result); - let ptr: &AtomicU64 = unsafe { transmute(self.base + offset) }; - result = ptr.load(Ordering::SeqCst); + unsafe { + let ptr: &MmioRegU64 = transmute(self.base + offset); + result = ptr.read_volatile(); + }; result } #[inline] #[track_caller] - #[cfg(target_has_atomic_load_store = "64")] pub fn write_u64(&self, offset: usize, value: u64) { self.check_limit(offset, &value); - let ptr: &AtomicU64 = unsafe { transmute(self.base + offset) }; - ptr.store(value, Ordering::SeqCst); + unsafe { + let ptr: &MmioRegU64 = transmute(self.base + offset); + ptr.write_volatile(value); + }; } #[inline] diff --git a/system/src/rt/haribote/hoe.rs b/system/src/rt/haribote/hoe.rs index d084365d3..0b7080cd2 100644 --- a/system/src/rt/haribote/hoe.rs +++ b/system/src/rt/haribote/hoe.rs @@ -65,7 +65,8 @@ impl HoeManager { pub(super) unsafe fn init() { let mut shared = &mut *HOE_MANAGER.get(); - if let Ok(mut file) = FileManager::open("/hari/nihongo.fnt", OpenOptions::new().read(true)) + if let Ok(mut file) = + FileManager::open("/boot/hari/nihongo.fnt", OpenOptions::new().read(true)) { let mut buf = Vec::new(); if let Ok(_) = file.read_to_end(&mut buf) { diff --git a/system/src/system.rs b/system/src/system.rs index f7600fa20..2a2d1d2f1 100644 --- a/system/src/system.rs +++ b/system/src/system.rs @@ -83,7 +83,7 @@ impl System { && info.screen_height > 0 { let stride = info.vram_stride as usize; - let vram_size = stride * info.screen_height as usize; + let vram_size = 4 * stride * info.screen_height as usize; let base = mem::MemoryManager::mmap(mem::MemoryMapRequest::Framebuffer( PhysicalAddress::new(info.vram_base), vram_size, @@ -125,18 +125,20 @@ impl System { let shared = Self::shared(); - if false { + if true { let device = System::current_device(); let bytes = device.total_memory_size(); let gb = bytes >> 30; let mb = (100 * (bytes & 0x3FFF_FFFF)) / 0x4000_0000; log!( - "{} v{} (codename {}) {} Cores {}.{:02} GB Memory", + "\n{} v{} (codename {}) {:?} {}C/{}T Memory {}.{:02}GB", System::name(), System::version(), System::codename(), - device.num_of_main_cpus(), + device.processor_system_type(), + device.num_of_physical_cpus(), + device.num_of_logical_cpus(), gb, mb ); @@ -230,9 +232,23 @@ impl System { shared.cpus.push(new_cpu); let device = &shared.current_device; device.num_of_logical_cpus.fetch_add(1, Ordering::AcqRel); - if processor_type == ProcessorCoreType::Main { - device.num_of_main_cpus.fetch_add(1, Ordering::AcqRel); + match processor_type { + ProcessorCoreType::Normal => { + device.num_of_main_cpus.fetch_add(1, Ordering::AcqRel); + device.num_of_physical_cpus.fetch_add(1, Ordering::AcqRel); + } + ProcessorCoreType::Efficient => { + device.num_of_effecient_cpus.fetch_add(1, Ordering::AcqRel); + device.num_of_physical_cpus.fetch_add(1, Ordering::AcqRel); + if device.num_of_main_cpus() > 0 { + device.is_hybrid.store(true, Ordering::SeqCst); + } + } + ProcessorCoreType::Sub | ProcessorCoreType::EfficientSub => { + device.has_smt.store(true, Ordering::SeqCst); + } } + fence(Ordering::SeqCst); } @@ -336,7 +352,11 @@ pub struct DeviceInfo { manufacturer_name: Option, model_name: Option, num_of_logical_cpus: AtomicUsize, + num_of_physical_cpus: AtomicUsize, num_of_main_cpus: AtomicUsize, + num_of_effecient_cpus: AtomicUsize, + is_hybrid: AtomicBool, + has_smt: AtomicBool, total_memory_size: usize, } @@ -347,7 +367,11 @@ impl DeviceInfo { manufacturer_name: None, model_name: None, num_of_logical_cpus: AtomicUsize::new(0), + num_of_physical_cpus: AtomicUsize::new(0), num_of_main_cpus: AtomicUsize::new(0), + num_of_effecient_cpus: AtomicUsize::new(0), + is_hybrid: AtomicBool::new(false), + has_smt: AtomicBool::new(false), total_memory_size: 0, } } @@ -376,12 +400,46 @@ impl DeviceInfo { self.num_of_logical_cpus.load(Ordering::SeqCst) } - /// Returns the number of performance CPU cores. + /// Returns the number of physical CPU cores. /// Returns less than `num_of_logical_cpus` for SMT-enabled processors. #[inline] + pub fn num_of_physical_cpus(&self) -> usize { + self.num_of_physical_cpus.load(Ordering::SeqCst) + } + + /// Returns the number of performance CPU cores. + #[inline] pub fn num_of_main_cpus(&self) -> usize { self.num_of_main_cpus.load(Ordering::SeqCst) } + + /// Returns the number of Highly efficient CPU cores. + #[inline] + pub fn num_of_efficient_cpus(&self) -> usize { + self.num_of_effecient_cpus.load(Ordering::SeqCst) + } + + #[inline] + pub fn processor_system_type(&self) -> ProcessorSystemType { + if self.is_hybrid.load(Ordering::Relaxed) { + ProcessorSystemType::Hybrid + } else if self.has_smt.load(Ordering::Relaxed) { + ProcessorSystemType::SMT + } else if self.num_of_logical_cpus() > 1 { + ProcessorSystemType::SMP + } else { + ProcessorSystemType::Uniprocessor + } + } +} + +#[derive(Debug, Clone, Copy)] +pub enum ProcessorSystemType { + /// System is a hybrid of performance and high-efficiency cores + Hybrid, + SMT, + SMP, + Uniprocessor, } #[derive(Debug, Copy, Clone, PartialEq, Eq, PartialOrd, Ord)] @@ -468,10 +526,50 @@ impl const From for ProcessorIndex { #[derive(Debug, Copy, Clone, PartialEq, Eq, PartialOrd, Ord)] pub enum ProcessorCoreType { - /// Main Processor - Main, + /// Normal Processor + Normal, /// Subprocessor of SMT enabled processor. Sub, - /// High-efficiency processor + /// Highly Efficient Processor Efficient, + /// Highly Efficient Subprocessor + EfficientSub, +} + +impl ProcessorCoreType { + #[inline] + pub fn new(is_normal: bool, is_efficient: bool) -> Self { + match (is_normal, is_efficient) { + (true, true) => Self::Efficient, + (true, false) => Self::Normal, + (false, true) => Self::EfficientSub, + (false, false) => Self::Sub, + } + } + + #[inline] + pub const fn is_normal_processor(&self) -> bool { + match *self { + Self::Normal | Self::Efficient => true, + Self::Sub | Self::EfficientSub => false, + } + } + + #[inline] + pub const fn is_sub_processor(&self) -> bool { + !self.is_normal_processor() + } + + #[inline] + pub const fn is_performance_processor(&self) -> bool { + !self.is_efficient_processor() + } + + #[inline] + pub const fn is_efficient_processor(&self) -> bool { + match *self { + Self::Efficient | Self::EfficientSub => true, + Self::Normal | Self::Sub => false, + } + } } diff --git a/system/src/task/scheduler.rs b/system/src/task/scheduler.rs index e903a99d8..80fe12b44 100644 --- a/system/src/task/scheduler.rs +++ b/system/src/task/scheduler.rs @@ -13,14 +13,17 @@ use crate::{ ui::window::{WindowHandle, WindowMessage}, *, }; -use alloc::format; +// use alloc::format; use core::{ cell::UnsafeCell, ffi::c_void, fmt, intrinsics::transmute, num::*, ops::*, sync::atomic::*, time::Duration, }; use megstd::{string::*, Arc, BTreeMap, Box, String, ToOwned, Vec}; -const THRESHOLD_ENTER_MAX: usize = 950; +const THRESHOLD_BUSY_THREAD: usize = 750; +const THRESHOLD_ENTER_SAVING: usize = 500; +const THRESHOLD_LEAVE_SAVING: usize = 750; +const THRESHOLD_ENTER_MAX: usize = 850; const THRESHOLD_LEAVE_MAX: usize = 666; static SCHEDULER_STATE: AtomicWrapper = AtomicWrapper::default(); @@ -53,6 +56,8 @@ pub enum SchedulerState { Disabled = 0, /// The scheduler is running. Normal, + /// The scheduler is running in energy-saving mode. + Saving, /// The scheduler is running at full throttle. FullThrottle, } @@ -129,12 +134,13 @@ impl Scheduler { })); } fence(Ordering::SeqCst); - SCHEDULER_STATE.store(SchedulerState::Normal); + SCHEDULER_STATE.store(SchedulerState::FullThrottle); SpawnOption::with_priority(Priority::High).start_process(f, args, "System"); loop { unsafe { + assert!(Hal::cpu().is_interrupt_enabled()); Hal::cpu().wait_for_interrupt(); } } @@ -149,16 +155,16 @@ impl Scheduler { "Scheduler Statistics", ); - for index in 0..System::current_device().num_of_logical_cpus() { - let cpuid = ProcessorIndex(index); - cpuid.get().map(|v| { - if v.processor_type() == ProcessorCoreType::Main { - SpawnOption::with_priority(Priority::High) - .strong_affinity(cpuid) - .start(Self::_dispatch, index, &format!("dispatch_#{}", index)); - } - }); - } + // for index in 0..System::current_device().num_of_logical_cpus() { + // let cpuid = ProcessorIndex(index); + // cpuid.get().map(|v| { + // if v.processor_type() == ProcessorCoreType::Main { + // SpawnOption::with_priority(Priority::High) + // .strong_affinity(cpuid) + // .start(Self::_dispatch, index, &format!("dispatch_#{}", index)); + // } + // }); + // } } #[inline] @@ -194,7 +200,7 @@ impl Scheduler { #[inline] fn set_current_state(val: SchedulerState) { - SCHEDULER_STATE.store(val) + SCHEDULER_STATE.store(val); } /// All threads will stop. @@ -331,16 +337,28 @@ impl Scheduler { /// Returns whether the specified processor is stalled or not. fn is_stalled_processor(index: ProcessorIndex) -> bool { - let shared = Self::shared(); - let state = Self::current_state(); - if shared.is_frozen.load(Ordering::SeqCst) - || (state != SchedulerState::FullThrottle - && System::cpu(index).processor_type() == ProcessorCoreType::Sub) - { - true - } else { - false + if Self::shared().is_frozen.load(Ordering::SeqCst) { + return true; } + let is_hybrid = matches!( + System::current_device().processor_system_type(), + ProcessorSystemType::Hybrid + ); + let processor_type = System::cpu(index).processor_type(); + let allowed = match Self::current_state() { + SchedulerState::Disabled => false, + SchedulerState::Saving => { + if is_hybrid { + processor_type.is_normal_processor() && processor_type.is_efficient_processor() + } else { + processor_type.is_normal_processor() + } + } + SchedulerState::Normal => processor_type.is_normal_processor(), + SchedulerState::FullThrottle => true, + }; + + !allowed } /// Get the next executable thread from the thread queue @@ -449,6 +467,7 @@ impl Scheduler { let actual = now.0 - measure.0; let actual1000 = actual as usize * 1000; + let mut n_busy_thread = 0; let mut usage = 0; for thread in ThreadPool::shared().data.lock().values() { let thread = thread.clone(); @@ -458,6 +477,9 @@ impl Scheduler { thread.load.store(load as u32, Ordering::SeqCst); if thread.priority != Priority::Idle { usage += load; + if load >= THRESHOLD_BUSY_THREAD { + n_busy_thread += 1; + } } let process = thread.pid.get().unwrap(); @@ -472,27 +494,44 @@ impl Scheduler { process.load.store(load, Ordering::SeqCst); } - let num_cpu = System::current_device().num_of_logical_cpus(); - let usage_total = usize::min(usage, num_cpu * 1000); - let usage_per_cpu = usize::min(usage / num_cpu, 1000); + let device = System::current_device(); + let num_physical_cpu = device.num_of_physical_cpus(); + let num_logical_cpu = device.num_of_logical_cpus(); + + let usage_total = usize::min(usage, num_logical_cpu * 1000); + let usage_per_cpu = usize::min(usage / num_logical_cpu, 1000); shared.usage_total.store(usage_total, Ordering::SeqCst); shared.usage.store(usage_per_cpu, Ordering::SeqCst); - - match Self::current_state() { - SchedulerState::Disabled => (), - SchedulerState::Normal => { - if usage_total - > (System::current_device().num_of_main_cpus() - 1) * 1000 - + THRESHOLD_ENTER_MAX - { - Self::set_current_state(SchedulerState::FullThrottle); + let num_low_cpu = + if matches!(device.processor_system_type(), ProcessorSystemType::Hybrid) { + device.num_of_efficient_cpus() + } else { + num_physical_cpu + }; + + if n_busy_thread >= num_physical_cpu { + Self::set_current_state(SchedulerState::FullThrottle); + } else if n_busy_thread >= num_low_cpu { + Self::set_current_state(SchedulerState::Normal); + } else { + match Self::current_state() { + SchedulerState::Disabled => (), + SchedulerState::Saving => { + if usage_total > num_low_cpu * THRESHOLD_LEAVE_SAVING { + Self::set_current_state(SchedulerState::Normal); + } } - } - SchedulerState::FullThrottle => { - if usage_total - < System::current_device().num_of_main_cpus() * THRESHOLD_LEAVE_MAX - { - Self::set_current_state(SchedulerState::Normal); + SchedulerState::Normal => { + if usage_total > num_physical_cpu * 1000 - 1000 + THRESHOLD_ENTER_MAX { + Self::set_current_state(SchedulerState::FullThrottle); + } else if usage_total < num_low_cpu * THRESHOLD_ENTER_SAVING { + Self::set_current_state(SchedulerState::Saving); + } + } + SchedulerState::FullThrottle => { + if usage_total < num_physical_cpu * THRESHOLD_LEAVE_MAX { + Self::set_current_state(SchedulerState::Normal); + } } } } diff --git a/system/src/ui/window.rs b/system/src/ui/window.rs index 70ee4c15f..e7da7c8a9 100644 --- a/system/src/ui/window.rs +++ b/system/src/ui/window.rs @@ -258,7 +258,7 @@ impl WindowManager<'_> { while let Some(event) = shared.system_event.dequeue() { match event { WindowSystemEvent::Key(w, e) => { - let _ = w.post(WindowMessage::Key(e)); + w.post(WindowMessage::Key(e)).unwrap(); } } } @@ -824,7 +824,7 @@ impl WindowManager<'_> { // ctrl alt del UserEnv::system_reset(false); } else if let Some(window) = shared.active.get() { - let _ = Self::post_system_event(WindowSystemEvent::Key(window, event)); + Self::post_system_event(WindowSystemEvent::Key(window, event)).unwrap(); } } diff --git a/system/src/user/userenv.rs b/system/src/user/userenv.rs index c8c809d75..29500e021 100644 --- a/system/src/user/userenv.rs +++ b/system/src/user/userenv.rs @@ -19,12 +19,7 @@ use core::{ mem::{transmute, MaybeUninit}, time::Duration, }; -use megstd::{ - drawing::{vertex::*, *}, - io::Read, - string::*, - Arc, String, Vec, -}; +use megstd::{drawing::*, io::Read, string::*, Arc, String, Vec}; static IS_GUI_BOOT: bool = true; static mut SHUTDOWN_COMMAND: MaybeUninit> = MaybeUninit::uninit(); @@ -36,8 +31,10 @@ impl UserEnv { pub fn start(f: fn()) { assert_call_once!(); + // sync::semaphore::Semaphore::new(0).wait(); + if !IS_GUI_BOOT { - let point = 16; + let point = 14; let font = FontDescriptor::new(FontFamily::Monospace, point) .unwrap_or(FontManager::monospace_font()); @@ -262,13 +259,19 @@ async fn slpash_task(f: fn()) { Scheduler::spawn_async(activity_monitor_main()); Scheduler::spawn_async(_notification_task()); - if let Ok(mut file) = FileManager::open("/boot/wall.png", OpenOptions::new().read(true)) { - let mut vec = Vec::new(); - file.read_to_end(&mut vec).unwrap(); - if let Ok(dib) = ImageLoader::load(vec.as_slice()) { - WindowManager::set_desktop_bitmap(&dib.as_const()); + let mut wall_loaded = false; + for path in ["/boot/wall.png", "/boot/wall.jpg"] { + if let Ok(mut file) = FileManager::open(path, OpenOptions::new().read(true)) { + let mut vec = Vec::new(); + file.read_to_end(&mut vec).unwrap(); + if let Ok(dib) = ImageLoader::load(vec.as_slice()) { + WindowManager::set_desktop_bitmap(&dib.as_const()); + wall_loaded = true; + break; + } } - } else { + } + if !wall_loaded { WindowManager::set_desktop_color(Theme::shared().default_desktop_color()); } @@ -403,9 +406,13 @@ fn format_bytes(sb: &mut dyn Write, val: usize) -> core::fmt::Result { let mb = (val >> 20) & 0x3FF; let gb = val >> 30; - if gb >= 10 { - // > 10G + if gb >= 100 { + // > 100G write!(sb, "{:4}G", gb) + } else if gb >= 10 { + // > 10G + let mb00 = (mb * 10) >> 10; + write!(sb, "{:2}.{}G", gb, mb00) } else if gb >= 1 { // 1G~10G let mb0 = (mb * 100) >> 10; @@ -619,12 +626,22 @@ async fn activity_monitor_main() { let usage1 = usage / 10; write!(sb, "CPU: {:3}.{}%", usage1, usage0,).unwrap(); - let n_cores = device.num_of_main_cpus(); let n_threads = device.num_of_logical_cpus(); - if n_cores != n_threads { - write!(sb, " {}Cores {}Threads", n_cores, n_threads,).unwrap(); - } else { - write!(sb, " {}Cores", n_cores,).unwrap(); + let n_cores = device.num_of_physical_cpus(); + let n_pcores = device.num_of_main_cpus(); + let n_ecores = device.num_of_efficient_cpus(); + + match device.processor_system_type() { + ProcessorSystemType::Hybrid => { + write!(sb, " {}P + {}E / {}T", n_pcores, n_ecores, n_threads,) + .unwrap(); + } + ProcessorSystemType::SMT => { + write!(sb, " {}C / {}T", n_cores, n_threads,).unwrap(); + } + ProcessorSystemType::SMP | ProcessorSystemType::Uniprocessor => { + write!(sb, " {}Cores", n_cores,).unwrap(); + } } writeln!(sb, " {:?}", Scheduler::current_state()).unwrap(); @@ -971,148 +988,3 @@ fn font_test( bounds.height() } - -#[allow(dead_code)] -async fn clock_task() { - let bg_color = Color::WHITE; - let fg_color = Color::DARK_GRAY; - - let width = 240; - let height = 240; - let window_size = Size::new(width, height); - let padding = 4; - let radius = ((isize::min(width, height) - padding) / 2) as f64; - let center = Point::new(width / 2, height / 2); - let scale = 1.0; - - let window = RawWindowBuilder::new() - .size(window_size) - .bg_color(bg_color) - .build("Retro Clock"); - - let mut work_bitmap = OperationalBitmap::new(window_size); - - window.create_timer(0, Duration::from_millis(1)); - - while let Some(message) = window.await_message().await { - match message { - WindowMessage::Timer(_id) => { - window.set_needs_display(); - window.create_timer(0, Duration::from_millis(100)); - } - WindowMessage::Draw => { - let time = System::system_time(); - let seconds = time.secs as f64 + (time.nanos as f64 / 1_000_000_000.0); - let h = time.secs as f64 / 3600.0 % 12.0; - let m = time.secs as f64 / 60.0 % 60.0; - let s = seconds % 60.0; - - work_bitmap.reset(); - - for i in 0..60 { - let affine = - AffineMatrix2d::new(center.into(), Radian::TAU * (i as f64 / 60.0), scale); - - if i % 15 == 0 { - let mut polygon = [ - Vertex2d::new(0.0, 0.0 - radius), - Vertex2d::new(2.0, 4.0 - radius), - Vertex2d::new(0.0, 8.0 - radius), - Vertex2d::new(-2.0, 4.0 - radius), - ]; - polygon.transform(&affine); - draw_polygon(&mut work_bitmap, &polygon, 0xFF); - } else if i % 5 == 0 { - let mut polygon = [ - Vertex2d::new(0.0, 1.0 - radius), - Vertex2d::new(0.0, 7.0 - radius), - ]; - polygon.transform(&affine); - draw_polygon(&mut work_bitmap, &polygon, 0xFF); - } else { - let mut polygon = [ - Vertex2d::new(0.0, 2.0 - radius), - Vertex2d::new(0.0, 6.0 - radius), - ]; - polygon.transform(&affine); - draw_polygon(&mut work_bitmap, &polygon, 0x55); - } - } - - let mut polygon = [ - Vertex2d::new(0.0, 0.0 - radius * 0.5), - Vertex2d::new(4.0, 0.0), - Vertex2d::new(0.0, 8.0), - Vertex2d::new(-4.0, 0.0), - ]; - polygon.transform(&AffineMatrix2d::new( - center.into(), - Radian::TAU * h / 12.0, - scale, - )); - draw_polygon(&mut work_bitmap, &polygon, 0xCC); - - let mut polygon = [ - Vertex2d::new(0.0, 16.0 - radius), - Vertex2d::new(2.0, 0.0), - Vertex2d::new(0.0, 4.0), - Vertex2d::new(-2.0, 0.0), - ]; - polygon.transform(&AffineMatrix2d::new( - center.into(), - Radian::TAU * m / 60.0, - scale, - )); - draw_polygon(&mut work_bitmap, &polygon, 0xCC); - - let mut polygon = [Vertex2d::new(0.0, 16.0 - radius), Vertex2d::new(0.0, 4.0)]; - polygon.transform(&AffineMatrix2d::new( - center.into(), - Radian::TAU * s / 60.0, - scale, - )); - draw_polygon(&mut work_bitmap, &polygon, 0xEE); - - window.draw(|bitmap| { - bitmap.fill_rect(bitmap.bounds(), bg_color); - - work_bitmap.draw_to(bitmap, Point::new(0, 0), work_bitmap.bounds(), fg_color); - }); - } - WindowMessage::Close => { - window.close(); - } - _ => window.handle_default_message(message), - } - } -} - -fn draw_polygon(bitmap: &mut OperationalBitmap, polygon: &[Vertex2d], color: u8) { - let mut polygon = polygon.iter(); - let len = polygon.len(); - let Some(vertex0) = polygon.next() else { return }; - let mut vertex1 = vertex0; - while let Some(vertex2) = polygon.next() { - bitmap.draw_line_anti_aliasing_f( - (*vertex1).into(), - (*vertex2).into(), - |bitmap, point, level| unsafe { - bitmap.process_pixel_unchecked(point, |c| { - c.saturating_add((color as f64 * level) as u8) - }); - }, - ); - vertex1 = vertex2; - } - if len > 2 { - bitmap.draw_line_anti_aliasing_f( - (*vertex0).into(), - (*vertex1).into(), - |bitmap, point, level| unsafe { - bitmap.process_pixel_unchecked(point, |c| { - c.saturating_add((color as f64 * level) as u8) - }); - }, - ); - } -}
  • i&+*Or~5-e@8Zkq?>s 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ⅆ)p}J!-YtM=YYgRE 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[ObOr>(MP2h6l=|tPfBlokg_Mp8 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