From 5ddc323bd4ed5a26bd57c17391eba2713639887f Mon Sep 17 00:00:00 2001 From: Nightkingale <63483138+Nightkingale@users.noreply.github.com> Date: Sun, 5 May 2024 20:06:41 -0600 Subject: [PATCH] Add special Nightkingale easter egg --- Makefile | 7 +++---- data/nightkingale.ogg | Bin 0 -> 66765 bytes include/audio.hpp | 8 ++++++++ source/audio.cpp | 30 ++++++++++++++++++++++++++++++ source/input.cpp | 12 ++++++++---- source/main.cpp | 3 +++ 6 files changed, 52 insertions(+), 8 deletions(-) create mode 100644 data/nightkingale.ogg create mode 100644 include/audio.hpp create mode 100644 source/audio.cpp diff --git a/Makefile b/Makefile index 701c78e..5c03b6d 100644 --- a/Makefile +++ b/Makefile @@ -61,7 +61,8 @@ CXXFLAGS := $(CFLAGS) ASFLAGS := -g $(ARCH) LDFLAGS = -g $(ARCH) $(RPXSPECS) -Wl,-Map,$(notdir $*.map) -LIBS := -lSDL2 -lSDL2_ttf -lfreetype -lharfbuzz -lfreetype -lpng -lbz2 -lz -lmocha -lwut +LIBS := -lSDL2_mixer -lSDL2 -lSDL2_ttf -lfreetype -lharfbuzz -lfreetype -lpng -lbz2 \ + -lz -lmodplug -lmpg123 -logg -lmocha -lwut #------------------------------------------------------------------------------- # list of directories containing libraries, this must be the top level @@ -188,13 +189,11 @@ $(OFILES_SRC) : $(HFILES_BIN) @$(bin2o) #------------------------------------------------------------------------------- -%.bdf.o %_bdf.h : %.bdf +%.ogg.o %_ogg.h : %.ogg #------------------------------------------------------------------------------- @echo $(notdir $<) @$(bin2o) --include $(DEPENDS) - #------------------------------------------------------------------------------- endif #------------------------------------------------------------------------------- \ No newline at end of file diff --git a/data/nightkingale.ogg b/data/nightkingale.ogg new file mode 100644 index 0000000000000000000000000000000000000000..5fca1b3c550998b647d376b69c5171b198f1d6ae GIT binary patch literal 66765 zcmbTd1yo!;*D!hpEfgzIT#LIGcXx_A6xZU`B13`V?oQF-4#jD4cP~=hp}5Z-`n=Ek zefPg>-MiM!%H(7xJ2}ag?46v9vZbXO00aCdY)bxzdOFo=n3f`Df%HU+XC@OX>{ z0AK)sF(n;ZyoD@XLBdyBuapFt=UfkKXi7q851wfRTkpRK8K>E60DuF)v`A5T+p;#J zyq0)0QO-HM)=E4@WQbw!)_9SAUQ(NWD6A{A{V+;L^#WA~9!f$$M20*FTlG0H2_gT2 z2Tg*Bocqa(GMtg=zvX;JX748pP+;H7k5}T``<55Qw@+I)F7}eCZcffCe`MEqC)dcegorADxsSz3)Cc--Gn#gAA^N-s64wPrUJ2y?%~= zr%na}awvF{Ht2HS5ah1&=E4SkDT4vbo=HN66!(TME>E`5!luGHy}_!q!G5TQai|96 zFA7vZ;GRbVT{x$RHf{5W<>l;;eG(hQxR3h z9%oKz7tTHx0cezVl^94+7`aeD|Cb5RYzF`lHliLUq5&v1RGFrnxwKpa=Uf!$prm-F z$p3rr|0^%hiI8VnB-wypaKya-OBOJ+TfDC?#8Liv6BHrj>n2&+c-r|0FIw7GPBC`+ z)Q?d0beg8(l=QzGv>V0Wfbx=VFtsNqbv(^wR2C(z;GdiqW;$Yd@g%eieLKo9*n~)5kxm&Z0 z;}N9ivj0{ z-!aeiDF{UB}aF#8bWb5hnd%6CxJg&~f@29;t)E~peo)^BII zRPf5!7Szw`G881J%Fz}4qft<%l9|PbBH;g3k}oOFgLFkut@z)JJEa_ZMLhAp;@BUe zcbHVrIKj@O#v!PouA${_uaoSy)EHzi@3uPUvpN@Pg!|?H6s-Sh4ggh}z`r_~U=qRB zml2>OhV&1E|J58P?7mo{fmllU8cM}U#*s5l<#WynEXjAAifXS7CSJQu;h3wvHJIWu zpVBa&aW`LRFxPAJ(P{XP!u+E)t8;GuOLLx8%R&8RYIs0;qT zYYen@hEs8h6H3@b0KkVXg>*e>fhuvLN^*yi*1cqiHV%MM*HIhblHOg-T?rD>>F81*)z^unG4DhiZFp! zV9JjI(L1tP{pX$}fGoBb$ymHZ?9Lwns9^%3L4P=6U&$F@z&s!zoYIR#_Dmpd(~DCP zn>;M8F!aqBhhmmRn1Y(d*OLE$X*6kn!7SPmdgwA)ve#_3)bM`jKVad0v)w`i`4Uv^ zDV5a}(=5_BM>s=sZNxOFMmRM71&hTr1l3#(3ip~7rreq;7{!wWC!k>Qe?jQjWU`7% zplz+wtT83kf^6je7pM_b{PCZ*sf7p5<~m=PKK&PrGtl|M2nzt?3R6j;xrdmNbLMFk zFXv_y)EYu_8L<8XzSfvYDlTMF)6m&&u0hek(a>l}EwTF-e72u|1Nd7>gQA9cs?8w# zT%vh@&40jRC|C~#0RRj_1i%2+pa_(NATTWe1g~o+LCMxv&8Uc_7-g!HW)VgyJ0&p2 z`Bf*&GHsmmow|lq8kBO+mJdKCfH&n2L$6u+UJv=f?3 z3pEQR^w1v1{wmm%x<*ogbrwxnu2ot|Ny#|pKgCdSf_D6jT2j)?4CNnGw4h}MxM|y7 z&zSqo6)y#pu@%)c4CdUPeUkrMfUe6#JkT`{Pm~5<1Lu7n5-th&Ux5O%g|PLcyh9eF zqvDhkMWRYT7PBtSPmq-4>8YU2XaL|_CkP< z!@0j*8M26ntarB}<4?wS8wAAxcYCFq>;j4h7}PCFjJRLEUiG z5_LJ7@*cbb_2L95$R=0pA_oOc6I8Dgbi=D>X$xH0q25;c2=9&=)bG-L35ZxZ0sw#2 zd$+*&-0Ds!yI=q>sI?c9d-lpO$P4gHhuMN-RG*zR^)R+xB2zTz(4jsXB002!os0mC z=l(`TUu3#OLB|?6&fAybf+4n(VLHtF;;Typ+ja)jDS>$wa6-wqGMwW^zq(+^$rgK}@zIe(?H7Fy6h!)(kf6)J{6$rcwjh66 zHI^+9YS^H&4Pz?|j8T;YYEo?A}h=ig*W#_f29V1oZvlKzcYD-s-V_F8K zg1&rl0iG>mFW$x{8>U`uQ|O$s^=#-0^shR=n4W=#h{KeRB8$mROINs zCO{_-l^-$MzaZ7Ky{CG%`BczaXhnh??bm0#f`sS7#J?4)a!61ZO0(x8Xy%{vZxLMq z^hMCZzeSjG&mOv}+~1!6#gjvRE}|=d@)N3;V1R<2sauJoLI6e@n_WR9=t~(KpbC}# z=kY+%xFX*DeMK12KmGn~`kXwEfwIhbl(zt? zLs0ojkfDRhmy#Tv;4?om0~0>}WfUFVC7w7fIg~gD)nAnOUKG?#+oF>PCg|D}Uz4zZ zqb-P2JrS%|QMIA#UHK$WRXeF`+qSbJPfypo`0<3dF-}#12?sF7{0)G=8+Yx$ppi87 zhmrsWFo7zMIEt9eKXd%=&gOsiIBXyQ3|$uhkY*J_ZJkZt_u}~0-GELS*KP~5{sQ&k zO^I;|u4xmh`LC~kt-%{V+XR3e0J`6marGK9nBWD**)XDtMu>(snfKCeQEtyd-xRN{ z)}Np{tP@7%sz4`2SBNRrn~)Ecd^*=j-BH0tb-9;ND?O4B*Q^e5rIKd`u;nVTi`bW%`SE#A9Sw=4KDyssOfzR4zaS>=HU|%5)qS- zl95wTQc+ch+6ZXC0E7S_?lsw)v{c?Gv}p7gjM!IknDJN%*ibJ<&kxbC7Mw5o8(qJcJy=A??w;LCt!~ zetAfZ`bV;QZyCF=`R-v6qsm1fd*YzF_W_bv{%fh<=g}*;&6M|g#05U$$Hy@~m16vx zQJ2Q!uFY{5Q&+jA3;2j@Ua=*=YbpmehWhVodF?hof)CX9G#>ql!nCJxVkiF>!iWSzTZm3GYT(hU`Czj``jP7uxBcFPdembDHS;q5B1_7d$RAMMWzPG?9~UINBM08Y z^LDkZF1jmIL!VltB@P4*vUIdYIhx`u4Z9{YN9$GA5&g0o%|nk#OtOOIM?ERF3|-=} z`x9zA+z*8^VQG#s9EZP_huT(GyQ~>E7e7VHP1)EwIGjwiq&W%*c`q#}UOK4X9bVYZ zwXBpIsSV#)^bIRL-dC1r5{!+&pzbRI4}Zq(s-(|foNb4T;2(X9vshV=Fi71?tv_y- zrK1WyM*7LopjX?fo%ns4IW&BAx9_^bW0fzHR{FM8>cl# zgy1Q~biApB*~UlLE43npi0_(3Q+9<53T&JPrIBr!ZJ9^i4~^!gHSr&@gU1}`_Py0Xl+v#+}JEyN<-XT7UZG+I^7g#G4*k*hPZQ#i&x4ZVu| z=3z!UQecF(Nt5_39)(*yV>zIZr+vi1(IMEZyzwrt{GfOC#}NN==~)JxTV&S;ubbh! zZg!@(SF5|1=gWvCt_xWZ&!@+}z!Q??{b=5z;HgHBikm^L4%McXdnR*C3FO$eOan^L zUIlvydVxB5qAVo7t3IOeDvC-ml@4YMGNr5&oBpwIhrmb6hu6G)nm*;T{DTXmaaUls{pLDVA&JW_;IvPPa#N-Ig?RV3H1yyECu--$cSPfDh5Ee;6$uJEo7 z9->)&A9o0#yGb`z33T-E{wvcdoa32=;Fh^X-N2tw3gLH$6;8!T$~dF$adJ_R47vKEiD%yvx=!a@T-_-VbZo6bnMEF{}2S^Vl5OB*WhQc*p#4$;eXw+!m zr9c!XEju2)l6ajgE~(m>`RzrQM`j_Ai+zWdhud%;;;qWLRm+E()U$(~%AG*Jsa_90 zR;C5Cw!Ms*;+Y?=IPJB_1o>#8rJD1a8|A^eg$bJ5sWNLrcUPpz|Xz26~IKUIqda0==(^JNw4g z3W~JpaR_o`%4p-DCh1QPHAi292f4eEYja=e_mg5yKhNKs*N4K&hopq03)P;cIZ`fg}|I8^i7hW(DOQp|){IuWw{_bxM%K_HUk-ZrV%tZ$GrgnZslEb9$X0 zJspf}9j;tQSRY#lPsjXuEcG%b;vQ@5rSuQb!jSjczeU&&FTJ7aI>pHt%?e&Zo#lz2 zscd=gGK5i};x#b4@92Y)OdUU?vr~h@12GLunAtjt>y7wjUX*WYaUgn(q;qo`bb`>R zhthE9x^kiWMUnB4I4ye+O*mRILnOSV$*a+<+_zA=z3VdhqE8dOJN=AQO}Surx+SeT zgOj_S(fq|NKftlz)P6l?)=$4x?1x#61;l1N6j60}b|9weHLb6FL4=Rg zm3P5@EGn8D9LXxbz3otw(-i1YpMlE((6V0i%w`ADymxbWYl4>$ri~HEci2gteXRF z{zypXXIqq`V6j(T!$#AkdNC#KF|lB+3B_JfRS~{3!^JF{Fcle$k~DwaBiC!apFa6q zSV452uO~mb+%IG5L>1?^HEA?X`397iD=XBkreC|9%!2@98G!Z4A*QMa!k7SCSf#?{ zyUpG_2r?qwph8lp-WvPQY)8;O^II1_?<%^6EZ*faTJBau}c%APv;M{W3=dw zYYTt;0&%rFvTRv?g1fr7;OaxknJx;Wbg<#*!;o|{T+6B{-mtBEEi2lh-HLyNQ!;Xs z`t4tT5S_iUO zWjoSfQXtJ?Z3ZyDX*61~0uDP33;^akdt;!i36%H~RVLUP%okg&0rfU0*O-QM@+@|$ zTD1fq*E{2j2@p5igH1w+q9UVI5L;5h+-SI_K*Ii{=o|R&8rJ(-FV?0weaW*#e#(RK z&m|dY(GflAq7zh)x_Ci6>gYO8mm72>1#N`!>K9y%NI~jjsO) z%j?t(&3RgXG1rFu#1DXtacfTbk+KlUhD!WPU;_@prJ2oQKxy((=*h*x0%@KtjjeFi zkM)VXw!y==&ZQia8qUP%N#Y_|hu+`GCq+@vN0zDJ~+Up}P0ljKSz zJr>6H5~vbc;xsqb0TJ>lL6W1KpHaylFUQUH%--VX+db^%1{cqxI-R@lROEm0y=vQRHZ ze7y__7yw1?mN9(>XFXPM?sj=;cC)zI=6W(r)6lLclih%K^=z1WM)zy`eJ>gen}GJF zp0Slz*(XS25~d8=8?R(JS|kOX@#F|s zn-1YxpX4VWqm$m(fg_b6g$J~==FMhTL$X4=I}|qKBFd;>l@i=h4rB~pIHN#! zA}f$fcX$vs@FEq%GDY)OGcW6sP$IClHUk3EM5D8#W7FOO;jh9XMEt9c{#bf+0R%Ou zu*a)7OtvP!vvAu5XxLvE?#v#KFAY6yc%WYOHZ~FhA{NSiGk`YYMw|0#agwg_wqLfH zsuS};@`1y|NqjmrKUvdHm>)Yb?lVp4dme|`H%doF-pV3L4?J((mv7-N8@_Hhzjxg+ zbn$NZVc@SD?Xo_J{8Q%3fG@5BOY!Ul-!12;=8z9HF-j^3rDE^8&W(trZ&h%}gJZLD ztX@Zj|6}P|pF#8wkiroD&72L>$TS@5L_cMyy!Q;CGol=Sp*Sr219 zTM`KXR8l<8_}u765)lmPW=hFpZ4M0PwAJQ}%-)nQ2U~DvM8qSJv30-!DSX>GETgnr z#MRy73;UIyr^C8)(tJf^=PhM8%F7LiGD#|ZIc&v&4v|@;a(n;nYkP4&x2xTxo>vX6z zlVsA<2K_uuY^C4Z_wy~wmvw&1W#tNsO5If$&wh>dhGUHR4%y-NKC*O_sSSrg*oeMY z8&#{aK8-O$x=`hx+kEj$(RRW=6mjzOl(Ullsh6fig{bgbNhqR^i73U?wExRN;Hx#+nWif&O2wj)QLtRozSZ zn;VWf3rP~^CeEpBrm9~w#cuVIgYx}bRxab@-C8A=*kNyWTjn%R!EjZ9Be{%3A#rl= zrVtZ$kRShLz~kzKy=1@&f$ueFzH@Ctw^JQ{n5#rR=72h3vYx=^*4jng0YkTW^+73mPU5g#KfrGo3G-b zUn}xy^hJP9VqD-qXEB2Ra~1a{T- z!ZofyNidz%xQYON&j}NEX-Lws(18ieXIPGB9P5$ga4tWbd)y=$19V2N7{Js!=teTsi(5 z`{W-DYS@9aezKLq{zDb9TD8Y2Z8YgS>Sa8DHX2`OH8Hybp?k%2Ei%956Qnv=cWWB@M5X2+j%{t5 z)Q5pd;#n%nU{25M3~%^7@b`A{hwt9+vgjmC?pJR_7q?R5@>~dfV?@9Cd4!%CnpEvx z;#zJD8KU3pta<>Rr636YsXr396|PhK3hC72)eBOfOenqcs2S+Aw;4}4odFZN_HwMj zfwg7PzJrXZL$ku5S4u!(HyDwnwxKy#gC32u6Y#GdF5@l6&~12a>l<~abvWwEvh2FV zslpA20DW8*z8iV*Z(ZE(8g>8y-lU6CjX~7_-w7V3T=?3Q3AXHpYuN zt^9~d1Ym}0^YJ5}J7G!(kzEc3tb5xX&zIJ0U;hBzh{C>t>yM=I?2U>{#R9r4xjNfL z;(86+2UWt+RE82So%>&$ofRMeIgSj~4;iZ$J;#W%m7<+89V<02o8+#kiIduPsjZuZ z5zbfS77rUu3)~&?9?#EgZqteRucfC{Fex8f7S350cUmUbRgIFPkL?G4`0UY7Mzrz# z=?gI>vQ5`a>rb6Tp$mMuQaJZTjZ@mLq&<-*i9mQwL^G#fK>6j`+&T$=az_uXpTTJT zoN4Bv*1eA0a2}4lY>nUk7Y9E(NQ>S<@-pSB59H}3#b;|F+A74$^1hAffdglsmkLWV z{BI|*A`5E?KX=Wu%&q#G-A&5Oc>1Z|vrTGRa`7-z&}geau>kFjln9VW4~kRVFw1~W ziqVHi<{#@QLaK$HVEuqZ#cXmjY<&C!ptiGX8-H5ZUQByoQ0sS z&9M5<+fYPo$uAb);!gd13wIE&2_fn7sDSos5Wu9~Ta zc#j%`e>g{^sd!S|&vl2hDqI|!Wm6FFYl4;6R|wKAMV4dy@G^At=q*8P5{J`5_FIw< z2SXh4Z=c$`g7j0m4m!1q&_Ty@3M3~M2G3fZwMr5o_SnQ@3L7mW+P z&CY5Y|B~?M34PTRUF#DA1u!)@LwF8X-?EK$O0Hf zX8O)Mx@18n8)Z$X$9xbW!3xOuxzGSSa!Cto9x&E$k|)2pHJa4kmwkO7H!8g7p7-#IGuozEwkz6=a49|yVA${a<0M37u&b6z`Er-YGjIX&Q_L|M zrVD*moe>M-o?T)&)A_ax{Rv$0gC|_oF#6=P@x7r?&b2GpX-!HfYjV?O~R6*=wc zmXUb)ziFOK=PSf!_#+*fb z&{MHbod6v@Gu|GGI^#%SEf!rI4jpJn_t;UrZ1*9nWEeXUPsx% zqyetPOk@LBA8nb2>Voy1neVNUFmaqyVDm>{^#^`$otT`syhOh8#G!uj84@5B?u!oh z`burQBxgvUzRLC^I{)Po=6HgkRKRc@OB|M>bO%R`>{zeTsKb=X^6(IEKYqUsj1bfr zTn&*;K&N?|J#+qzMRpq!=?61Pgcm=7t{HQDt<%nXB_~LE7VQ20m-{IakajEV2ix(o ziUl~O16F{TMiKA~qN6Y=&^cmO85w#4cY~$^Oj~kgy#(HpR=tB=gjLzg-9!Q+DdnUr zpx5Sz>=v7iLW8(4@tNHwIhVPOA~|~51he!IU3jlE%8z|?VU3+9?w!$LJ2EZ-((L;2 zH{}?sS!tIMFa~$#QY*6S02xQ7pvUw;O&q&;k~*y-eJ1JaM#lpDaNlz)WXkuT9J1AG zS+X@kV@f|;KZL~ml4bw0i@JPnYpf=r55aEJ387V2L9sd%v#TB;SYs<+1&|05klM%Q z;ePSByZq5b(v_NY|0DWd0hgKsd-aZ(k`yZNr}ZsLtPo7n8Z529MdUY%=uAl@`Je2} zrR_+AQye{i77kj3Y0~AT<_E-WzJoItIxTnA1%90z*rri3pZlaPxLu5N9KYH3O>8)G z-fG-eWAR&9Z=GFluZc$;Ypk8Yf53++Gd)|yAKp9>knXJ(biomu#6G08)JbeN^wk|& zHzG}JPcEY>YSZvs9ZS2)Q2v;I+guZkA*RN`l5g+K7SiIA))NOi*_wD2o<_YjT9APl z;lMPV4YAJI<0oHI!4#?2G_FJx7VhTtJkp|l+v6WKo99i1=w!M0RMj)cp0t?z?egoP z9mA{d=r7a}h2GLrfmXgVUU|3@{82?TO*(-iSnjm!#vZi6Kco-tM3e|&^|EnjUz_(9 z*l!w`3s|=^@%!-O+z1vBT3B-!?c6{CU;f5g>qQfR*yey9XpBWsSMFGF7T;|UB_fC@ zr!eK=L%*)Zf_=w-zI5Xy$o+if?vG&(cQApGtt^4Jzo ze^*$taBd<;pWqTKwTKXc_~Ph;E?Pd4MuU2L(Mj#_HQOzsLCDA25Ws*wv2b@(=m6aY z-1Y69tC{5hMp7lhl8T;{y#u!&_j$N*3pJp&H+=6TiLl zgOj=QW$4M9_<0n{i`|0ctzX@?cuIaGrGZRqZxNIES1T%UTa+kU@i@{R5HD4-RSsV( zE3F2G_+;-6U3l=R?Hj|=TJndC2=oJChqwG0?c=NS2iaQ9=U!Ub+P2npZACaPr)Alc zATO?pV8@aP8uZ4(gW_$cogn$}KIfN23Pi~D#QNoV?u=<&q3_S}Cn-!3FVN+KD~xUv z5p-57rBts6bnri|Dp_a<%6IAeS=T6w5Pt!G89|*UIP${+;ZV%Eu6|c@oHswqN?14l z(r2x4$XU<08jGLAU)meVb~Mp;ES+vOmSu3X8jg7OK_@9WdBV`rTp-E3VZ`vWdBN+; z?puP(F~Q`KWq)$YW5l>bz}MP&3W)ac-p5K#9BzI z0%`BwD~SKSwZ~us-{vX}0>&SQP4#8v%BgD(^eA%Q37upSp)N)p5@eEdrP)oT9cPFF z6!^_IlX_?j?JO8o5@utHr?3J@B5xVOgiE|n8&}T`s27#6?~vIfhb0*}tv>+mTL_AWf6t`OvP%Tv)bN~Ly(6iOpnn+Cv%hgV%TBdfYpj0g}qa#?+zui+M{Uq@ty?)}pvprAUjS#XT0j->w!<$%4a zkA>JAt*mN?tniC0PC#9%FQ6h>?#WO@VVLXsveny5Zk=@KK6}9{WPruVzs7Was7WkO z?aqAflzL~oVSEIQ5)knxn-&-O0)g4o9u7bIe?b~|^B6Zi@)v@cQ z)Cr{*>b6EYb;b#lX5-% zs?g5FuY9lu*|oK887ti$asBLiR{ogNe=0w!sGjN9sNh6b8Voyz->?|!FT zFqjZvolTaHiJi-g10UcXtxEGc%F(m9`P$*lk1^IQ!V9(%msysYDIFEU?kX(FQw~~s zPfMT?tIVJtKA9Z(jH&MN_`qWV!@>MncNf!il8Fc%7fl};>m{pyPY~Fttgz5ye#HEB zYu;5xMGEzyI4jA3BwbKblkeCzQddGAP5SNo^_Z%mtzUb$o~pugE@eAo*`#O)%aslW zS6d!l%U5?UmGL7Om0gMMeIo+l@fg9k(pN+wWsBW%#FN^iKK({i22F& z>!T~9<4W&RCbNZdD#4}ev9<-@&;9DbX*SME5Ss!M>a^hMj!5+c0?>rmR*0tmJw>8f3sF0RptUzxRRtd5T+gZ zn30iysGo9`SKe#^25;elnC{a;GuqH`vSG?Uwp;9JPVL><>c8`Q=*YaKapD{R(&RS+ zNN{_Lr)8^N43aO~uzY!g3Bc==>n)i}_u?mNSSDMUso6-&DlThG6$>V=cts=UZ~YwU z6x}!LwUtXgUY#AT{B;O1ETWnIdi9N|%HWA1Up~J{zx^cs_OxnL2Cy=)x=lSMHDlA1 z`4zHP2Jia@a7~Nt;I6X%{EDoV(DVEGQFfR1&g1=%AV4;B2%vB(TX&!}&N*1%H}iFT z+H`(^VY)P02z}};)GHwoo!oz*Lb&I<_CEwCpn;f!SAkKg6|F0(v!9Zow|{;FP(Nby zWH6qY%<^mUt`-#9cYo3M{a!O$5=(pi;UOqs>q)tH!gZMHwzcEYyVWza((*GI$C<|# zLD$w+MYXxzwunD-yr!X4g9RB?QiDtN)m@PYdzj2m{MG$esyMo~vQs)7@GLV^vkL>9 zUiM{vwCto?Y4YCmk#>c8-egSo;Ss6Wu@Z|)2QMVrgQ*Kv?TaKU&Qs~Pe3-Yc+mo|5 zi=D0*vc9i4)bdZ}u%s^t3>B%aUNDWoMG{_3udXzf&zZL|F3m0bivEEEqrO0b{u$^= z`eI>BigC8FhsgWJ)|-{*Vxe+ZG0iwlTMxE1SR3|Jusl0R93gMR?)6(e1`<*1ltFakT!1?U$m*y-MMiBoVcj2hMy zAu?MY7|*h`v3deK=|exq10oymHFnF}h9_;9n>DlAC$9#=%**cm@T9!!1n03e)tEKD z-6;4Qny=FpHfiTzuSpMlz|{&=6!qaVm}k)nDF-?Fla9UMnSDTIZ&cGylt2d-YU{$P zWk|D|P*R5Yi!6T!LRcQP|7_a5-$)+OVac=_ijDq5FIaL> z{Gn5AB+~4C0H1R&CBa_kN3)oCkE%pPo^LH^YzOE$DwR>>AlyguL1Yz;pu?<)#SaBC$n z7Yxf|2CSVrAy*+M-21`-C=a&|BCy{TfQY5u@?da@M(6U~A{?L+JZYarS6r+B10Z2E z7sKtnIYxVbu)o67>jO!8ESvw7gF+*`K=pILhJA_sZNWn+Op1FDVM`*rW4QnU2djA< z+^cVhiF#x1=0`DzYkJ*P?ckdI2Wi%(Ysv=wZ$L7|i#sAhsnd=Q`d}cPiC40XGls zs?J~EPQ3<46uwjRulhx+4UMi7i}plSc<*(lE$aeIC2#it7Xec}O`9oVxl2AenV}3H|KwSQnVK6%nyOz|phm zy?l#mgAxd&kJUeboFHJ<7xb_V!%y&9Was>;KO&2xXCPj~>zcg+Ub-_?c_B>(bN=mS zy%7htxx{r;=BB=HMu0UzO}*VGEGElC>5;M-6QsaJGxNtP&H2R9sqRhLv-44TFJdg^ z7ROPKx0c!TtzP4e?d+c;V3mz_=atGAvKdDe@_$j#w>ej4 zT3rftUFfaeAEjze%`qDMRE?Q1a_ilVQq|s_ZkA3dpXgY8*Lut>?b;I?nSDSZ?3MnN zc;c|ZpznSgzgJl!!I@xcTo?v255Z6n1SnaOMf>$vyX{&9Azwx-?Bcix6ArZAhP7+9~c=J9GtXt*?m{@}q`gHOG|B|De)rmHDwGYp7YhwE^gQOw?A&tBBt4O#9sPA* zWEsa0JI#`qu{U~%#Qf*##u4UBXVPGCOKf0v2|# ztaCbL!cWUmFjdE`OK@8!OoHy-5=r~548lG=rtfFsxMs39eFplK)HPWOW@2AqIedI< zIns3Q_q92;gyX&O5}5A^7Hl)+tB^db)sTN2?1n5#a2|q{yta{}5S(^=Omsy?AO!<+ zWcf!Mh=K-nM-(%HF(;Ys-;3M?(o=@q{64JX_FxU{N|X5B>rC!PCrbVywTVY$4_p2H zV|jV8`>XE({qlKz#SpcMSXxVaUT9Rr^_e{m$7v(V+~ZI>jF>3wH+X>Lg+i0ZK6Il@ zD&Qaq8uODDK7H+%Fnut3@gvkih%8RsmptmQ!E)Ot33ltpXqfdH`lSj#&u_v2h6Z&RA+Pi!3p;Kyu zFG;zo!*y(ngKc(Tb9z<7VQ6jdo}{j0X>0dg7{1`}(nkglOGLp>-yupn@4}P$PX2Ue zDEIkUepq)!qp9ci^g9=2T2s6E_Xr32H^t}h{6`?@J#3)zPgmk=2;@Bk;st@YKp+ed zh!g}O41sVO;$jDAQE9)h_2yXp!a&7&Nxad?u+BaCI(w;Fl^#6T$w@v~_9zm~lHN6^ zJ@0d0KGDHKuB-^^XS-!Ny+&;vMFMw_z*NCD!gro8q;VYqFTu*FHzo>8coDW-mG?p+ZO6;Q=6)41MmKm}sO>@LV8By&I{RV^Kf)fl zpx0rhjCz@U50wDU`qP|VMx+hhnvUc+TKE!dRAAW(e}5r+Z(ZQ;Mz@~xJs9Mok}%Pb zPOL!+jt)B7CO?~albPDCa1~Q1orL|GjlrA1l%^TsgKaSF?Rar zw`$oG);%2&J&&MB?&AJ7%Q4g)SAG)2RR!*sz z1!>pK0Me9dvSwEzLeYVm9EW>5)$-3zx2C?#@?+#8Xj~u?xR3uAO=lU_`$>c%0Gxsi-N9rL3hx}2Mc28pW?WiQ|oKZf(+_^1tZzt#2k~D>kI}QR(hY)b6{P; zUp4835Hm^NpOo*rq$CoWaDxl29Ip!EnUSCH;asBK6c_p=^8o_S@0hjS*U1^V(@W zBOuIkh;5JcG9*^*$jv1D26qPDBDyBwpK0f81<~sB!9dot{>fa&kk- zb!PfB=QX>XZoBbpX=|&g^fihqK$}wXRGDil+y>o-MgA31M-;1SFRNsei~(ULtm`n%Z^571(RYTfw4- zo1{H~XU)b9>BjxpON8k4mAlhvZS=MD*+>#y>U;n`FkDm4G#y1_bm6oE%i5^+2oSpo z!aj=&HZc*uI;HV@&?ih+!NqJZboAlXNAZ7U!7i>h3$=v z1~8LY0?*XP!2;MJhkhA5kk_?_Xpmft6{3ji_^rvPYTs8)`QQh3;nh`N!znq8~K%0Q8$Ei7|+G;szUSH^Oqic*JRuDCvT~-9((8Q{qdR-#0B8L1_>mbJ;a8S3*a#Y3JC5` zy_51O&18{-l_VY#W3SnV z1w7oQ46zXnD1&VYKglSzi<-)xGEjs48#DNH=0p`UWA^?&eW|fe>qPu_wN7LCui)l) zKOxumoLaCMJYuVyKiKTyFVy3$Tbp% ze6G?-=H7?K(=Yw{V5lP65(_y!IH<2}OijYO`6Fw!rlAJ5Rgq63b+R4@FHAKkTgHG_ zp-Bbc0F?Td%#-0cS6>^=2r5w-&gISe7X&VB;e7yDnB+d5jM=SGyfL92)A^_kX6lJ zwIK9rh}kDnr4M)=zB0@@xPA!4yOe!&)V017KW(UUII{JAW*O-<=9tKSpA6acDHy&( zo{Y`j_=m<7C_tG+Mh1Qk@Ye9ezZN%XoSLGbz8v@H_l{lIUttqWKNb_kB zcSvXpN*7##t6%D84|WPQ|1x-0RN ze3qq$h#uV4^98UfM*#M~x_4}3;H-wU@Pwe=R9_Pm6$gcUCOcXwbHWSpSa#x4F~9~M zhO|6$6EI*~uMBsT2VodNPGsbw)Ba+vQ)?yf_jKM5M;NV`x3%&!YZs9|E{64GZoR|t z(~yaHw);Hci<)*=s1HEjJ2RZEZn~VPHLGQOMqdk-J|;Em_`BTr*{fTTw7)#ZPD^9E zu;eGi7PR;#XSJq9+O&e@>%EZVbp}^|m{jsEBsJngj8_)hEODg=!iDDiWwau&wg}_n zY3x%iIF$+w${|6GZ4l*F-ZgktRwCGQnRiHK^cb%i{YX>HCA&y4A{ooQZh>Q0895+u zPf+G*`EQTO6{tkN5f}rx+lor>odq#yP*&p1SvByNrqdpGkh$FsBb$RU-pzFRUAj?E zAIZzNr`tKZ*BK`@VrfC-hDfn^o{|}yfi>!LosyGggreyT-nX~dn!~@g?r^pSHg6Ih z3Q8vY@ixETtH%R7EY(8e7_MXwr*m|0hORr(ytsLk&rhYH^9C5YWF%TC_DeRq)5zPC zRPwa$fgz=h`I$^`!mRxO*=@$lnwhu*;^1kOBZ;q0Gc=JMf2~kbP;``pxOuW?U$*A% z_M*#gsR)B@a}`9|!g0-M%uHH)yXnXc!tt{%g>0KpaoU+ir7mv@-i#dH{mzu4@Zy~o zX8wnE<}tWfChMA@>>%;Ch{ufCx#eq)IbcJa!es}nUn^usNI};{ zz!j%TyEB^Z+XtekNRplE4Pw9|L&}9vrrGzghwkHzUqBWX)lY{2?~0rqk+I$b6Y4+X z=2d)OF0Qu)aX!pXW~+1hI%NxuO6KY$X&6*h6x9sKluqZ^&%D)rK3V5Q^_d{H^U>z; z*9x4Hh^~M>lMBPR3Q5j9Y7!pM5bPW2?Z%*d=`1DaWi7gACIb>qj znlXHG%2IN%H-PyuTY*SjCFxTS&Jlww-PG*UD|4?OV^DFIb?;=iVsj~b5vEgz-MB?! zdIpK`dOl?RHv&X(hb*O+^QX8oY16iS>6?n~3(33Li5j!SkuTgye{W{W2P^a-mPx53 zP95G6X-wqTkwp+r*p*`hvhD1gO2wSFV~pE;+TRuFkcLnl`tSjj!;pF#S5(O|Op4f< znl`NpjIW*=_$eg^*O1m8w}IGP3$QkEiPXy(SB)8%Ch_|!cI#TKF*%lf|8NqlW|_M# z_6?n#?+>Dxq$E}iwy|N9K-hA~`5et<-h9FK+H071&r%h#FD)j0Y;&~g{rnwAB`G+s ze(X~Zi66>@ABxO89;&*1Ms`1GbL^(h(qMwpia$&JB7bvoX<(?lJ%+X+SeHK)bSDUP zJEB*4gH+?3!zAJKoH$%WDrvkcbRO{Z&S>i9p3(BJaKAMm0*e*hB0xFh2YNM`V z$r1xy>0kNas+ciKIW<=@xO-OS!k$*_IfJc9;d+6iP+82jHA5mulO<4Nx;O5Ht*-dc zcaWa*FmRrsMY(%7Q7x^ReFB*>vSQA=BvmLj?VpH@c#M}7f)A{M9U!kw@wPknU+1;V zs(R^mAof1{jt<*vIqt8RS6`f*B|VU%IksHFphnLR+4Tg(6|3$cWC#vm&nnPN!%IE$=rtKKM)Qh!ku{McS;agGGcSB3e10a?1z3? zohVXo2-+zSQ(%ICgxDpG#2edMa#uc9fgs}->r!(}A_y_YXc49#qU4w_w=1;g!T$u8 zIq~JiZ=%Ni)qf>1Tv1nie{FlKQfLX9?H~I4RvaI_8fVI3HupXt9+t8{8gQdW`pOm+ z=aaa7{SD+Li#S;s4_;W$WJrg>as^KF62LzKOCwakgHKZLW1I88t4_aaZFkU&Xt(iF zdj}t$1!$r&K0xPT9?f^!wzia?sxCcGG$@PKT(kI*wrT?=t<}M&{$l!yx>l&Q4eb~4n zaJ>gTXKyp7&xNU8_QIo-^d(6WB(1zEbJmVY_3%EO##bx@(z8_A2+epTA;4c6&9 zT6zq!UcoikB8z079G~U)6l{<;IG_6)VwCx03c{=xcDC#3$&CBLyWj`+(OI124rx20NZ>JaF9QUpKN< z@i-{i_py%?mjvPRj0ra+Mpvdr#yEWGoo|{oSt>-;|B!4x-^WODLZHaION;j?-IUqw zEp(e_FiLBFzYXZj!E#R*f{0xUy3_|cM;OVZUlHPgN9H~dO*R|nGi7M+C`NrIw|Clq z9%e>*+&dFRUL?A(={ydyW%0m~x=jTQq?#F+jtgSb68zx9un*jomKCt$T9rdX@EvbQZgh^h484{+NY>` zM)NLWHcrRC`8HO25-THpCuhEykzV+Fs`%OFczJh83t9d(8V~eXHI~G&$p#3KZg!T! z(0q+G@PCMw&tx$ji+ydaV8|QkAKg(pxOkYnSz>K?_$6q>&si31y?A$_z@Kh9C@u!< z?&W;XMXWRs3NhOOu596I8f6%_ey?!D=}Fkg@KbcYXAzxz5olys$NauQhU zZXh%$xu_WeQ?ipqL)!2qA|C@0701YuON3f)1QJZw`cEpb3I0=kDHF3JKyPU%g5boR z+01}ep1ycS+!)SgH<>dAA~`nw0eUQBTu{%Lq`f&5$Q1VN8{uIFBL-^+`nyH`H$>;z zvzDWwHUn$fsR-U72F2Ksq_*#ys*D0+ScV>$E%w~c?!Poyvt`7ed+3mU`nO8%)1q>t zYvl{E<2!S;F*o$vN#QC?JbzH-AyRAbF0gcPxW<_1Yqf_Zru)+h*29|LpX>7T%|i zpNITBa2bw&`RQK|m&+)(%td~F5Dh9Rz>12Gu|A`)ydZASN2`KNnkfi(rBO$dH#6dg zPh?qo%EEkg+#4x!1B|wO*E@oc74(c_#;xdaj^u%G-dTV(^xTtuZE}f<`HxjKD@b!9 zvokQ412MjrV)OHqaKh`fS?-DFdXXgKE0>86(nsgLjTIdf=Lge-VHIKr+DxejUW~|; ze9`8ZZ4Z?|I+k^}Wv^);hT3uHEo1Pv)Q0k)04xar5Zg4-9QT7vSN2Yszke}1=AU2E z@-;P&$@!{uh-AhcIe3d$MuVW>zA%v>c3bs3N%ikTWphL0qPX76Wq!f6{3|0`_GKp- zlg_6%Zw1dr2ZL8KhZTO`$AK~Af;Wt)jvE0{DFx-dkF0)NhW~!$gU{CdJ-3x}Wv?jr ze)HJaRrBd6wYMdV=j`S1ox@=5=!T8LTGqe+*Q=3(hkJ_O)3&?$I}6S*Kkv%fBWs z{SqH@H8=8U#=Le*`e4Xc3qIC`2V~gx;$%M3e)t;Wwi?)zNnstV;39W)nu#+yK<@tH z6J{f_VmqyAdM*Ua2f-3)Y-iR>y& z4?`F;+4Q$bk8QA(out{&sX0?vNP!8YOaHrTyX~`w z2p>&kG|q$^77t{Yuq&4+Q`{4`UeG-XkJx|AlEz!GIprnR8gmbMa%pR0*k1|^gGE|2tH{_gnctjcU=Nu)MgVKjmlG9vzVV( z{1xxZe_Lq;3B0t_q@QN*u?kx0SiY)yRaqM-YbzYN*`hLOn9;;ni7Y!mhnj#Y&+{`% zy(yYOJaq1EEqCG#WhKA&zkDkolo3;CebqbA(M2ulV_L~Q*nTz{VfoKjFB)^6_QSbt z2j$#jGb>nLC%rW?H|b;eC*WS=<$pxHwLk;WER{z(EDx&7@zY50_cTW^BvraVp+u4c z*M9^;d-Oi%$8F_z@EKaSsf|7D3I|D?_4dyz1U1@zkkntQ%S$Zm5QXJlSbb#=i%wLz zWAQT0EUVj{a5ysCKeQL%gMrD8g!(>KVy2>oM94Azm!hWdFLa=fn$6|bn}^A1{J04J zlQr{^e0Yorg`S55h(Xhpwl45TPMeaHzt91we(T@fW$+}gh;MG_I)M=Kq>kr%8`Imi zh7wDsFTy9wKAYV^^cN&IP6U|mat$QM2maZItRhJfL+GN7?R(ETBNV?*$c~BFfnsp_ zlT?hYK+cS~_Vx%E+@03OH3?8+!Rrt~D_=OTaJ`XkdUy#>4efOH;w5D7Ved)f;M3Wf1;-?{ zI$3S5)31coR;K7fWm(aeO@`pS!H$V3RLcA;XA+JA; z{DJa2$G|{O%eC1Iv)HTF=dAs+3q~ zu{rD!?D@Nn^RK>-Ggo2-^~B|Sk#Aazj-ExBdmaM5&Bw_%!G0voK)|{ix3NfQWr^X@ zY)xc8|9nj1gQAUUP2Z;jU2T}d1cpxVUjRktn{xF1R=(rgpVDDX^&#biAq)}8l5yqJ zrR%dtd5esTNuaz*H*5dL8DDP7_w76+L7pwVysRf}w4tSG*))MB6ll;)ZT;72%vP<@ z=X7gns(BW5Hv-@Y>rRxaE1V_eQCjQs!C#aU=2|w81ete28LBgJN8|$5ExCJQmW^)X z85fKow}@y4CVb%Ll=Y$sKnemk&3Pd|lqMz~s;e@60+vKq>elelI2LG+*NjP6f--Mi zY@IwU`voYKfRN5&i@$<)Lu`oCHm8vXJ~~dy*Q?78B=PjNfylF#Qn#6_FXbyG8l25~ zL<)F`;id27j3_PsyzpdenKMk#3ajXORI_(3B0VeK@wfhvE0fj6_w(nKzSj5XAI1vK zFG|~t9nd0V!EP`+eVB5bJPgTDs7%-`)9zzem{jrYN5SJ{<@&DfknZHdb$1DEu=W17OpoK$zKvGj}T;@2xg&VEgNOrba6 zfY4_4ye3Q`GKjNw!o6=1tPcJ7$Kh^`>&r5O-KCLr(KyxliLZoo8#&@ zo#dWWPNW$I+2=iUwapY!4UXr&wMiI~mv&zJb!Rv_1)0{L(ObYG%$ErEnhI#9dHi@7 zuM;nrGd?VwqKIl7-cWiBk$vjxIp3m zbv4unF6zSIq84pH)oZN7`&`NIM!YPVtYmT^L>K_yuR{r(r=4t#SuzQZPhMk|Kun;X zST+ud``dERqKv#0q|pPt!WfC92s*92)tV=B!{SzhVa|SrC}p?oFxOGc?YeNlOrX}Eu@jnzLHh%mS4C4^ za&dps(b`}L6+`_k!Sp}JUw^6`A2V?Dr^EWLM2OONRD&r8A248bn!uJ$H`yXS?P2Mg z>n6m7<4{N#e+zad>X6bCbY!)sgFP%S);~BjwCqrT1{&5`C1`P8oi80%ocqnfTszW- z${FPy$!=EkoO2#`1c>;@kadMBT=y7DuxOIGh+@DXFztrp_w(i;`H%%|? zGQu3E)%9Di5oHo}hIQUX2AiX6w!*~+(g(^T>Wj9DQUQk(S0DbE@`(K5-p!YH`n0h-ZJ)X9w;9A-3@{gz1L>8FKPwNAEY+sEkG@fcoaKA4o+>xiY{7Y7 zDUs}ZorMDI6Mo3Ng$I@IM$U*0Vl^3I?seUzVW*;Z-^|Qju7Hh!(aT0I-+uC=TNpOh z9fpn21#l&E&hiO-sY<2Y{nRR|n&b9$dz$|KW}xxTtRFw_s0fJ(3j13xXXmw_6wH3& z{RBxNy4RN7@?9ra9MDNJ!lELl9c=R3kyO-F!8*?7;PRI$0(=*vbcdf=n?y~7GP4Ok zjH`SKw`lwQ^z&)|Ia|9jZ#j>%)A&PP5(jKWf>|N{bnQ)P=5)6tP0`2kLHRX^A=V_+ z4l%`Q`h0_pU6R$DUhwY$%M<@45@Sf#PMVSP=cu+|N8)dWZf^<#&h;OaGPT(iH5I4`VucZ~hUlEV=6m#{wmfXmd_P{e)htl| z{<%a((}}Pa1wdgC4L%f4tIOBr`W$&YE4b`2hMesvGzILoQdeOGuOwgsn3nV!cyn1x z_rVHC>ES=rK;bB?XqY3;G}wr{Jhl@1h8Q4YWZGB?-$&P+aRdw@Zm`AfK;$)3tFhhQ zF8CUJKH!J{f@-9LC&YgBW~X3&ot5!Z>1DabBnYZc>ntMHw=1u*^!mb~1SbDqC~5wm zPVzsY1-uF*UU_09RpWANSOQ%-cy#20y(J`R}tdGB^GV_Sk$#H4fpo8Ymsexo&BuGrJZ3vU96%$ zG-4Z)*ikb4<2;B~Oyoo;%M*!XcdrZDCF8of?CFT}4%UK-yx#D!+SpC0*+bd+Tkf;R z0{*Vvb8R<{P2`;?N1L%H@` zeiHvfNAt?|@1s8)bRV?`X6#*Qb$XS($J~nVIPmRIe>64Ju+f^Um&&#Qw}#geNzCEk zzI)3tYG$srC2pWDYN0h?ScKmsYEuuwF)SRmkC(3tZf&gQUzI60x_#IkDN;Uf-PI6Al*C_%V)+XMRB!zZkpf zVO&)ga{F5r3o0*vy^kS_EVq&v^7hq!yI{id}3y}w|SlHr! z0(y)A)qlGy--B;W5eW6*K=mP@EctIyhgmNI&qC-Lu#kFsW+S{2Xv36VPkuqf)Vbj- zc>i~Lxc^i+T+T=mW84futr4}JVQP7QEOqBBFSDh6M$X-k-1_G<*l>r)>s_Dy?RxWZ zhCJKKSH~U7qvpotM-`%jzu5Z}FkFr^oO;ba}df%0y56=_$E4j@uK9_f&e6(@jkE_Eh)YROyciz4owodbH zK9g?xgF}1eH;=C^NHrs!A1QAZn6yyKG&f`^4N}RniF&iGN76zs8K8FhxDb)1U;k>m z86Lldpc|_-K@k6wqfVLcDY~qNH05_u9!CVAsxE5|wfYeL=9QvR9R&tXAeN?0><#_O z**Tq0y+Nw+2LfP`l+l_JrSZ4_6tMx^&MhxnW>&X6$zKr;nK>9RbiUTZ-12239M0Ij z{4s@qzU9ThFZkiIP-}94uXVG7>AxXAsaLQ6z5*BSo90bQ!I8cy+j>6Z#koOpqRt>z z?TT@4P43yE+Oms}+#n7*Lf|E$rQ;0ZCowNm@g|TF)iP1Vhp-JI3Q^F#vIX8_#a+J# z7liquJLA#J@KeMPvxKPT&Y(mr@e#Pgv#_? zr|0?me*YS)7rmM@Y0 zQ~Zj%EhVRR)tO+@z^jbG1$~!Gh!d@zT2Pff;-k7 zB`ar_IDGFLb+m%iXG)_PMUAP^F#&KBLq`9^%9Yc{=*$s=Ej5cDqq`&V@TcevL9-{| zDBhXY@?!hsOvvAsPfu)AJA3b5d@o4z*GaqncUrgQUT>I;C0ush^)is1ob5G`;)10= zxwS%mIYZSy_hlu%aPK6;rvnmixU#c%9Z03w+INK>8veKMJDu@8pXqw~Mp1%wYc;qE zUQpV_1wI&PucmVI=BaMuuCt%vnJ3PiGZ~}2dl{bR*G+?uk56|QZh6D5JKci?8N zKj_2larjZbL;BqYiSXDs<{3iNkK=Q)cxKIIjr8x^q|l-43AU)nD~rH*+rTVGBLd4Z zADfH-uuqPtq~OXWXrRG?fxW9fMw;QMad4LF!X{OY)x$s_%vxG0%`i1@C|&Kjch4bw z__|q4PpvaR=&^taaECrk(O>8E+`h`zX@#G)aSE-4vqW@tFizhjWJoi={lXuA$v{p; z+d9ocp70y`JuEj-;C$O#_9KPGyu$0zU(sa0kI3e*nt{Go(*}S`9tjWyzk|A90U9B~ zH;$yg7ff05%?`KlqBaY;XBX_42vYqqe^5TnM~A`0l4Ue;Uf}@Fs4bLcu>t zFLIzX3I&gGan;%Gfdt8GH$K}cNl0H17GnqQ$&+#$ZMhdl0Pqy_*2?S;jUq9^*fybIOIEk`2rKmPSF={0!}1kPn>O6x6_+Nyq`fs`&k0BJH@1*pM1D1R z0PvXVG?U>-wdtU7T}m)S;>4O9&~L+$tl+61nS~zl;Il%Cr+A z2FX=>cbWR)zNneaf^s-Hu&>XZg9_T-r$q(2YgC~dl@bSp+oB$YiZs>+y}Lv8GCs|k zr|b$3`DDR${%}6+UAF7tUt`{L>^?kTg+^#iMU&!X%a5lwiMAy;>s|cp$(_x?ny`R* zmb(ze6t#x(E*koAv8s;-Xvp!aKLJRfo{+Hl8m`X5K){DZI8|pH(y|UCmU)g1w4H!& zw|5{QoKB((Ki3-kcd~;(r+YwtBWS)Ii+Pmq-95Gl>jBRn6C0*YpTqV|dpJCX>Y0;} z(%yBQSzWLF6{qwtbyJN4e)6ug^k4pGEl+tuwpL(rVj)A=ue-vTM#s1=dBR=Tt)&L#GC9EIk;-s69leWaFpT+bFg zK49)4jQ9O^%!;E0g~(R(BZD(!Q*rx%NylaoL8s+$d)@HvHl2#wD(z{T$e(nrWAVTw z`*(raeuGCUFgY!yD>l^-;uZCRQeFZto*%iDVhHradRWOU# zg629qv0eZj1VU@?-ry}&u2g(GwBdqsPA9RDc6I34pS>yseWzO6q)Djt4={|ug08*` zv^XHDBm4E)+WUyV$~?@PpyC+o(BuR1d|{FLGj?0TNUI3&fE4(7d;KNU0C=g!!AS&g zW9r6(VtkxK#GK0%+3tIJx){%&wfGLYUg&|;^m$U{z@|Ig+td}e#MZSfZRuhnj#ap# zNjSi>J$)+vwf1>#A|@S!K0*?_kDe0=Z|!Q!_vz6Dk={1*g4o*#moXWIH#M_|bwL|9 z1GZ|{NnPN%)P#c5X{z}0a^XqrC+n=P&FNfUG`@fq-xqTL0CVa>hCV^klGm|> zw{BSSB1$`Tf)oBJ{9bj+i1J zut@*Y!TB{JX5Xz*TrF4^G2a^WqE^-EXV%W^5wQf0CA-%ARLoJ0LBPR`>896MzE#ld zv3Y8cs#)-S)+@%tcVNMSl(8)crY;tPO6oP@{ERzvX%~QVVyRbO=1v^u=&-!JJ8I!@ z;#+odfloH-6PT6ZC!SaZykv;$!MyJXwq&Ynf)$}D0-~We2Xg6I;Z71I;9Z6#(b6?|!QPf97vg3Pr+k(JvV zOVjnxYJnnkRpr+O2AeekH`fQZWPbcj5USWme(`zd*<$*6VZP-av9-jnIO? ztWBH=0P5Wlfxb8)zi>i=nkk6xV>x}e?h#8rO63pFudT#vV zb^I&hyQFXW3~@WRZGlX}Q9CwkYyJw8n1}=IWko`{U#3z5;d&WLbmq5gSU&v~>39#a zSWks!V?WE_gsDYHxH~MLTDkaCw`P}&p?Y%+3M0+47ZRU-{QCITKhTulsc`0vk4~OD z(SLnMKuGCQqkRq{LLv1|r`ivS?TZU?Z&O&JIL+jlik~$X=6E|eUqs1c0nL-LV-ZJAUHY=Jz zj??S_uIlPO56z>HFF5m18>P{$nhT*X8cPbbLvgQe!lJ*G$p<=tCygf1H9s2*f0ih1 z-tv>&1mCX2fU?KZpvFb{z>xH%pO~CeD?*O$lJX+cF z2OI^0J&1Pr1K&PV^LL5;MmfIYULk$3Dd}WdOKbMfH)I$03t5e})NO00zedu8n5clH|Ze z50(bj*~^fmYEkE{ULQK(3kiVo?||UlH;Ce6(?!TDn&B)3?@x6&JI_L)UUm`=*tnx^ zx}NtpsL*lV0usKu#`l5$ELHvf%vvhCxNi%WP~J%-*lN%JVkG!;Q}yk`uvTHK^cU!@ za_1Mv(M=;hz0}zJm+{=<;0Dedr}!5;74FW2Cs5>mq~(C4Fwh@ z8G;U(EiMX%Mmd0g+~jP?|2DJ~m(}s)0N!6AV5N|_-ye0fXi2kDV1alP(=l@>{Unzm zr55OdGb(Jc^fGE0NA-QbbH&RejN`4~8glU-BI+fpR|VTS|KErGUt`LDEt}#P;T)R(Fst+!3=sySjlp>TFZPmv!2|>o zc)l}bZF?}YM^i6+sjoJX7DF}~xeK7{HBMdphRAopJF7in9m_}it#r2Dqq#P>KYPHc9DSvMIZBe`i$)``DOp6 z47XJI|K-s-bV4WZ>&k#E;}*mUlsMsDG8CZoTCciW?qV#r1 zrc;hqcfa~k8KZFU756_vcgXbR%GT`LZ)7vnd%4%W@&iqQ?JYaBiaUgeqHL*cb^luQ zB1D-a2(@*#Y?s{Aoj*8~O7i2u6HBH12wAV!n9`b`MEB=dNbq`6O38oI#!vOAZT_zvKj zEOt+z-%HYat-@_5H3{yQ=HI0TK3wImc9_K;`H4I%>K6YJF=JYqirj9m&cG)PsU*P$ z1k4e*XFdQBQ@M3tlqaLX4Zw+}Wylz_6j1sYclJ*II*_PK-&02qQ06_OT-H8;mN4Ww z-Z|Xj#Kt<3M!4bHN#1BzOltAmwbIZg&Nr39Xuq<{Yb93k`QM(Luvud@vllx-=2;Ua z7~D3Cm-hd5ER|uViYy3Tn2SQ?tFTcbCf0Tg)t55(r6d%OhoQX!_37+}Ntvs2q}NWM zcbV7U<05A2%>JI>^Np_ zf=nQv#Z#GTo+X(*Jw_I`2R~7%-F3)-R(Rz?{5;q2LJeOaqw(~ErXoQj87qC55w%IdyB>MD zWagHsd(~CGuM>{bnU|GF{T=j*Hg3frw`#D)}pUs1{A~ zgVr~1IX+sMgb@+0+H^}l+7C>`*CfNs<~Wp9&uM{*wg?z5-!>c{5<)Zpt-)>0-s_%u z9yfCyGx|GGd%Iipu!oDEVDNf4oDv79ElU&I&uv5pX#(QR;lE?fITau11 zpGJeFW}hGF;BBA7QDGnMb3A~VQV|e=&lpPj(Lr+ej5>Bi!)Ss!TKNVV^Wc|-I396Q zS}hNNkciKupFuf}84T_g}PoK4#hcd%?Vxv#D+>fCGQ4fZcKabr3`osrsE6KHp?~iX=Dn7vCktyDF8N|bVzbclnpRhdq8Szi=;`X~+ zL#H-Ik8cjoC%wXurc!lBA{!xXAaD^CAGuquCN)h^`?7n; z7nSwG%BmPNr&RLVZ*T&_nuve?4gSdt9Kfo#NECB3d{#7r7UHDpXJiLGhAfVlV+qV|c)Wu3qPsa_q)}S_%KB>SjZU zNa*rDZHSB;9Z-KC8j=ZIcJpUMP$#9r>WmE-B)dU%BioY&9}~BN!rQJBd@2L585bMc zalK5+Mq^U6W1jn8Derw>X_?3@c!^6?b~tlBZya&LMxsBQF!?p1fjaU7K+`cJ|<))xuw|Ee8*Cr@S}e_-yYp_4uO|3x8=9-)v1xSs3j&kak)CMks!L6UG_R z{>gDNmTKRNvh>UhsoSGmGdkXL_`ZH%)83D(LcL2R*BDnaru-2$ya#Ct_yCE8)bKUz zz$M$~A^nmKBb!~r+&CMI{6;%5m3sdwd0Ty*z=F~Ofo)f&242|4ksfM`Atf!t;g=S4 zEnPv?oy?X86nJ!xvL9afAyk)f;}rieMM&ssy7hC5xX8*>L;ej_z{S$i3uzrdy3iwx zhW%kz^y6yiS%WrJwRDiiJva8kN&$LXz@A(yXoqLbbVbUTvD5FeFaqS&yFP{pdA!q ziq*~O`ZZv0wm16B2z;IZ@^-nNl)A$I{zJkmMKOe8CXp%NiuvRF#m&f+`#tI0LR_F~ zv~u}_Z7J|5M}malkacc-tw*l*kLo1VZVq* z8R0Y68+^ROrwJjl^d{Hk*UWcK1fv)6Dr+;SqHS$2*o{Mi*tG5b(WBt&Evz0NUwx(p z>iVmbz|TWhDy*v9{;5M5J7`1?x_ocJ6MJOfB9HWWG7qV<=(g!w$T+ddPnTbEI)HtK zJ5Fsm=K8+9M2tOCqEV7k?@J6rC%|aY)`xI8{%hX+aMQ3h)?65muF3h|Ni57*IJcVGIwu{vsC@*$$9TWK`7g3lOk9-7VAyyMGlA7 z6mJ0$8k@#Cb|PA8Wa+biQ+y0ZrbS7hl-_##9c%YUl%7$lZU74lim!bG-44gFmq zR*!CjV@53fedWT<6G=4N zy!kp11`gLFOr7I{g6C>(D#j_bE~}0JKkm zdYX`7!slo02VHwJh@i~NQ=`mB;s;o+>jjbba6Y0fh~S>V<#C43&UQYngUWgQB~QZi zxt*iVg2?`$tnuR{f|82hi)Ml3qO5v#WA55CNGd#TN!kj-^ zj?`_f*DBpQ{JHRc=Y79;*|uHV4rLC*tr78=ZF_2@6dO8bYcg<>ufwei0D&VqZC@Q9 z&cD4hF5@?T4>uhz+u~K>+O+9NHu^O(u(a3~H_~h-$(mEy28nXB5ckX&RLMK`WMDct zol!sg(-^>bm$$O$?HADi4tK+*pq33fyb-6i-x#;jE_=KQA(=&~lubtV`xLYHX7!k^ z@$Tgk&w=unW&-a~jc`tM_wz1{cbxPm<$4c8^92t4PuV30lafYz62=AvUU%NIimT(Xb>FI&lRl3is0&oq$ z3_I|O=^-Jt2r?UA^>(ztUg#s(jiv>#eN7B3UpT?w6|_F&17FljH@Y3OwaAR{jrVQ5 zS&jA+voEYijg2l>PfU#6bxP?$`0Do>dsFmt17aqb0t;;ShwXu_;>c1*=a*_^iEulX zsRX%nq|}QiH>;YReCwi8E^vFxuipg!#G<^qowpRP=;gc~a||ZqC4DkzziRQ1VrzJ3 zR=PrFja$=RT$aEgO#@*$Ml=;HDOH{%@&&i;eE?ls$ra+4*<*#2l)?YGyx>Sh5AH>z zyxIgclu*d&cxP%hzIy2QdE?d3ptC0&k~LSzyww~PwL?*J&gHK4G>2>ctxD1=+*L*l zG%{EubveCvL(boQZ?)fRmcYg`ai>?VV~Ed{P{Zkmx3TM@Cg07NNlhC~aK7*s_;J1Y zu)yAWr{zdeD6}S?YCi{*RGQwp!Otz0)LPupHoBy<#Js%EmDFOUGlrNsZBUD$ZVi6F zKVb8{?dY6q|M=yaNcNrjeCu^U*FV7|vxA{a$j5BvgQe3_Dn$0K8HWNnf3aG;Oergr zq7vojOn%_Q5z)wg=6*NX@OfT&;)dG{lsJ)2Xrb!eQ@Ljcc*E6A3d3%ovfZ+3%K-{R zYj!;OkCtHX^yycp&%lQ&KJt(X>E9oh)A)vwR?Ai-BhxM&X)yFc21o1l&^0JOEC)lq z^ZBNC7d|%nsBmSu$$ypctr?#2(L3*$y+=-@ZSy?fW$eO>2sKIeTh_MQ~r0&-hyl0?UU+iQO|{?M{A6cw}qIXtRs#8_pI z{(9bXh|r1LEe)0-LP!2>GZCvVw-C zGAjj_(SNO9(L6e-U>afJ!44mef8}du7tA5 zt77l23z6Wt4+u1W#4E_j=?!shd2ZQ;2@(a;#M+N!Hy=+)d68i$JB@_+zf|+X`XE11 zJcP3nd45mcu9%N#T8J9K+)&utbi^GB5mmk*x59egJ-9fLspz4C3`7zs0rXuN`hA=A z?VDX9F2iUTs{S;m@(=5Zf`mN8Xb!BH4bABU=)3uJ9RHh*5AKWGyRYjhF!?*sLcQfy zr1;iN+a!_Jvy^FZxbxb#(tP@Os~Ljs_`b6gnmNMW_vBRE&O=AofCPqKRrJwa&apFT zBTk1IIQkAC(Uy7hD{S}vQT3KdAWm~nl&&$Pvox@H8OW>=JWqq|(JtNPNdF2x?9xm( zWa>1{K5zd+cDVNBm&&Zz^NmqjC&XfHz?|hTMJv@IE|TmOvm~eRNi~+Q_?JEke?YbS zH|?fcjb@VWJDLR6w1GpPdpeHTuIpr#2QeUiP-rBeU12$)h}r|sqOXLW*ZHgGQq zVidLy(Q6|p}-V-`^nnhkZ(JA)9oc98tRqJ-KfshdNlEbz`QG*lnVPPN=^BAk4)QV3r^^ z{BvNW(2)Ho?#}3zj}GUTyd_N1)KG}G=PvDmRF*&Yn7M6>bK z{`wAvZLY3=p)dK8WD7;!NpyjNV4fBgF2ks&j@!qyLS;6C;j7t5qCQ$l@D5)5N8&kV zK6kv84mLC%@H>3udd9Uk>@)Y#r7Tcw3D5%^-OlpLc-9A%PdA=C;K5V=I7H)LGeE|~ zs&FN~*^RvPuq<&Y7EE?;d?<6%TEn{gqE$3j2zEHgI|jID`D|B>Xy3K=k0Rpyb*g4x z2GHImdf3I8A%yFb0yvo;jBdcL?{2k!CA5Am06gB?9ox~2id1lAm(kKwQcArZwJ9_n z^kz8?mp8Sf9&i45#ty8VeJ}bT7H4=-9{ua`zDYs@)pX2-ujNJjQhYTxov$n7oxziY z&CXJ#EMdCM3LdDivutiVq;%2?>0Ogk0*OkXVPWUrgVBNcUJ_d^sWxi3#pmJ;^RaZP}K@(jA3S( zKXid5Wp@Sk!01O+g3h6`643(ZN-rbJM;k?ZR5{~?R?pu1%glEy-b~+Po2z+OOpnT_ z0GB-m*gJFQ6v~m#g^zNl#$?_7T<_L1**;eX z>NE@W9JRCSnb$rcPO23hts47-TVgpJyF6{v4TCv-O-ooIE@UnxlC^~$^q$!?(JIJ` zo0)r1zlG0x3sw1fEg;*27BUh_P9=AShw1ZPr@g&3ULv?8MmEIt*XDJf={_d%MK)kK zRU&<(n$s)&r?@he-NG&p>SWt(-x7q7dvxQOe|(Sk_%-l+<@6s- zJAH9J2KS8LH7U>j*wHqz0*M~YHc#I-KVP%#tWA+*SAFo05_k*d{dUzhm*b-)Zuasr zg8svsYreg%g^)bmTjsdmlP~az5fPx3E|Kqap9oejF}^|;%>aqdJs$4)0r!6Yu{_^@ zJMe?bNb$lrS?80zduFK&053lI$T#vLx2#Kx0FZPX7tIOLEPULB$!K0 zGZ##KJ5vbmb^}&Vb4?wF@;Y+@4jy`Vlx3VdNM`RZtdfT1`Z)*Q`MLjrov11tx#dpC zAg**dY!G{c+83oSZb;e9aNd86P{gw_oRMbM_$CZWavzkgQ!>+NOLK-E^)twBh-u>3I!x&P-Qp_6#{>QkV+&@lMKlhPf2OpheuR{_xI5|uEVDEu)G5ADqQ-4H zZve|3mOC;=>$m|}6SAv@2fIN#!=JHaq*%`=s=VKro9uAwSIn;SDxO>)?u0EjGmN_o zP*SdfhXe4%HP(hmq$}ych-fbF6(bHWkmk{S;4X8%<`~I~<#DlD(@`bJ;b}L%vaF5y zcOpPfZv01X-dB5bj-Y!^4aV@iXdNVDiOPvK!F>M3#@fu6D3CnIMH=PGtW@kc1oP$3 zP-1e?6q9-}H(5ketjPm1Khl-{XjrjF>5Ryh-G@S7NQWAHbm+GASH!9pbW{~pvI`lI^3SaXqeQSO% zD+iY33@d{2=uG-%HRPQj=IW+kP%-i9!pksk&$|j5y5E(YgS8jC>nMBRlK;ne>!(C| zNr0AHnnIWKM>)Z$lkPqS8(_0Ze`&{v(EQ*107W@5)^%;-Nwx_`AvsYzq{o| zX4SXZ8&pS2rAcEL+`lA2N#U0LZt$n6Q6b>-7T*p50YviBT*!sBelmm1!>-3Ys#Z7S}_gAr2>;Rypn zl;b`jZaBEzT~gqf-25axamO1NrVn~by<+{$-2IM#qHJ~RS}dbW+&W=lsru`$>LVC+?Q~M&Sie3nq>f5D7SlGNaLV35oxt>X4Aa5{|7|Jc*ac|mM zVr{rn=t~Tg{I$Y{Il`v6(_s3yaO}hkD2sEE0H`VGpLPm>i=?{M0Sm=;bncM>pS~kA;n#DQ+b5pYp@lf~T#lAM*d!rM1U%;BEoaBhdi9F~#w^Be89=hAe;Pw%&DLmMWd7 zPVQ7~KLX?zjZPT=;9ZZ;)dAC&J5nPi|9z`uBzlqLwJdIix{CMh5k}`J&TT{Y7-uTd zx@FY{WJnV6It`ZuPC$>8Y!vj-`KvxMwRrIFo|`Gy3f6(oU2oXVv&O!-l$?VN>}nM9 zTT584LxgILdFK6@IGp8Y{@|T75&s!-|L~RuY;JHg6^x$FHyW&QV=6`Y}wP2z12+>rx%t~GR4&px3g?#Efb5NRz?XUWn0HF__HfyVL#m z3&mXZ46Y2kw(qfub+k{Px}Dol=%}=#?$*+t&O1!TE=1TEt-AJ1=P%!Tn!K) zTjumHwpM7&J^!4E5n~rcjrW~2hKsQ3%W2q_HE#d)m zrnUvnC}LyIM29=5t&{`_iv^FMTDqZwY6BTutveQtA_iXM-8c<8RC-t&+tfX48B!A4 zgb3x(d*hV&H-I5V0gY8<&2Rfa2=)PI&6Q+YIj8quP{;tZV#X|c*@Ry|GlMn9nEqEw z!Og1s@A^+m`Oh5il%h2mN1LJkpT;R6ES49GHNj#ju~tym1FKtsC&W<6Z((!0&lwqP_|=OY$MQT4MRA8xeb> zgyCpT!Y&vaoSCTWLAF(@vh)}JM$?e!1x9oiyTHq@=|lBAsntSiZSvm)U%g{XW2Cl} zu{z0nFH;6kbEc{m_(uKx&*uavoBxA<<>$Cb{CPCa)s*M^YVeToX>K*vBLa1b@TK@o z|84W#hs-6)pYhN$*ZUXVH!UakOYve(Oa0ly%)H4-zy>*lp50UXeUj>v-3JZWyCjF{I|kq z!<*BTEY}t?XE=u>Zq?XU@zU}nz%JeHP(V+!@xmDo2wk@||KMRZ0K+Y$7<15@#Dln9IOJ_9*^Rm6Ivdmpo}mpeUx_d@VWiZ&G0 zRN{|$>y}pSAe__~w=|zx6Fz=9e4k|LEU;&Fr|!jXoCB*H5A$!hH2iHNhvfYAap+^t9b;A=m3yJE{N5|ez1@vIq@ z&*N&sx3`gO0AmorEcKT-!u+F@x0zH&_K3|(^FMBC3nxxDdFy3VKqN5{uw>c(-)?>E z;u4tEWOj{*AyL?*mLh<_o;Qi$v(dQCI2nizw9a`wi_yK9P*;-Uf6$<2VZ2 zG!Pa;!wNRULNfv_b^qSgekkyD?;L6j3yb~m(t+?Od*ggPpRe+TY}x>58}lk5!;2ZG zEdCgM=Qg|!SsDoqXt{~{v{$0hmVy=yH=iT={;L4>seCRuF1gTm!?3DlohDrq+}(rc zskUs)yq_$3LTGGMh8)^^OsNjgsSjr+-6@Mf4o7u(W|*pvv9*%*CILn9d>++IU@t$P zKH_oD%hx@sl`SsdC)Ur$ z*L3pmI-1?lHR%ChqlVHlH1O#>Ajp3@aS_>y&kH1)TPEZD-P32MBMZijG~L^)yhZ%v zH(ag7G=0hK)l>k$8-iTEM^F{`^z1-KkmkE&O!C}Z=zv1tXMOlK(yUV!y|of4L%pMX z03wQp^)6LG^{g~E-|lGc_HIFZ!;f;6w63Sbw{D-zmF{O#qJDmtR9-FAKNQeUFdK)n zBXKBG(!_6*L_p`ix(Z0|$2r~b^wq{ts#o=vCtmCBBTqmM=eSSqT{aEJ-GEJGtq!Tr zt(Cr<0uR3Reb_x@zgR5)9AtGFeA1l{bhn-vfCvC!k9emG%Yk6RU&~#>BXTQ2IPTBc z^7CzCzf@WQuL;B^lo=osxSb^PC~U?O{VX#7hpU@1)Ue;1MwGkWj+)ut zSa}D#QJz=`)d@gcU7xSVI_--V&2l{ZO81I0)q>dIgz}fp&Pqob(jURvL}#Y!s-``| zF!|K&EANazMqh@z6anRlff@_;zr_I|s&%3;cFS~^1pl-mxdgGUBNyv#Qc=N7X{EQO2 zhewVwbzGXIW(LZ#%cXA8N5`-Xxty2NtpcB&1j+B00~VA zii=EPcEL2?K9JjQsbSZWfl&_@?_oHkDtPME8PJ6wh|dW-Kj$ZyYM18tb4ZLE!P}|& zgYkis!v_c7)AH*nS+-3ZvY78|FeWSp37I9R$v0)|AND9;J|qKjw}5n^MyNcs#hWmaX}c=v!OgG(?)kLCC^)Ac&X&^lde;6+YB zd=n2_>>p}ZnLLhzM}sB#E#ztVyA=dz zmW(@H2FGqLz5K~&==^HSmsf(3>py;U8C*ni*YU8G-gAm3Q#JLQS0u{~VW13$A0x4 zb(skKZkrV8mq_;d1Tw{b*iNj?*{_MHVRD^ltyo#j>{i7(0BN@W2 zV##@ipm$%?s}_?+YpicbddNcwgw>p>VA4WZfAkj?Ul<52SuK68Dv@kCHHPtBH23uk zX()Ui^x*ZY2nGPtJG>p1-7Aw@Nn0>k)f_&ZXhk z6Z+~|CR}6wtxB-q@+UUbCRn)%S>Tv}j)N8ew_s3^8jgq7KS+T?4FW4lmpP8d_&_xj zOaO4OzBzPybBpH;#uF1)4v&|^BV){TwW{1yBI&jOvjSlELfRZ}Pa%9D;>Qt#|A$s6 z`oVL~IYfU#=PC6;dh6TUO=ZK-g*7QDX1}7@_`X+nISOgYrB4_FY!`b10qv(Rha57S zrp5ANF2d;>H#sI2ZEnKR%Qvw1ftOCC`EnmQCZxd9Lw5roPhY;{9*$hScIn`}v|D@EwSs=xnpxV5yF)w?}Sfbzsr!=i^GLqlTM{g?u#*B2b;50u} zBDnK+t7VL~EBqDB(&L$3l!oS*tz1u`Lg+B7hSFBGm>{>~7{H+XU)1jWFtQ;Nn2L$)~d*p;TIXXz+eFzA8 z(VWh8QXur4U4L+OPFMv%Dw#v>0b2bm)GTD(KcRWIiu^oQ&+&y4tGymQmqJDd_B=Q> zcJ454f1yrL9j$D$l9;dP8BOh;%9{~#)!opNEm!5d_-YWrl+MK zH$^YALZ`7uaFlkAG%ue?TfxZZupQLqC5@w3zCCOJ((M0`;E+xptNExZcm53XgGEQB z9sa!EVPJDmBeuB7O1${`&sH}*d{=N$byn&7tNw+i>usIQN6-(y33Ec1tg`WWkMS6B z)1B-_Fqi+3t@yZu$%CdKaQD5Txh%rtT=4|FQt;ZUX#_~RZ2 z6#?B3E(B{+b+pq5^UtIAk&;cW3vME@P5l;d42|e$7|fM;uFfd46j6M2#nHrpn{lx0 z5q%+%(76>JUG~*tZD9?0wN32N3zKkOb2-HzgXl7bjmQcmB)1ws98tj=YkMkjpu5lg z{waC(&G82K(vy+Fw z8cF#LHUkg9oeYCPoOqhNA(Tr*u}crnL`$1Ux=GsITRX=7d_f=T0y|%~3AU9U0pMJ9 zTWF;@1(1e4LaN>>A^V4euV772v9w)m9Z%lpR=7Mkei`|u|E#!w1*&&wo%4A9((MZw zap#7@Yw@Gzs_=L{0aE;cjePSdYs_{RV<<7;H=c{%YE!#&y$~{J_!ozbT@Q8=_BNWw z?o;`wa_)&I#x1OVp!$?c*D|k!n7~YJdYs2M!NkMX z>(ST` zw72ruQt!r(knh3G&mmm>UvGuHgZ9r459h`+uVn{cTpCXXhYq}x6k|FqZqG~h&S>u4 z&vpThpAuVc*NwZ^S5QN?Mg_NA_GiUKuWN5*7xMBNH?#j;H*A=VjZn{uFn^0TR98G0 zy1Nl9r3AW_k^`Ej!wBAWQ&)$R0|3g)h=B=^B3EjrWK`noecS(|MY81|qf6nLci_IU)bgVlw#c-oX2u zgv@Q-!gJbU6+M%VNi$zG?@MJ}jXdCK8r3eMI0RjyzxfWhym%rf*1p+EWp|}H+d_~= za^-b5S1753Juqp|Na!vjuC&3#6hZX=br@yw|I=Y`%MIjyQ|4m%AIz__m968iq90hS zw4;NaxxHOhPBIPxoV!)mt40O(9rmkOA z84w3i+~3*#!?l9_X*Jr{`H69#02`KtM-T$c$^zhBK`0a^Eeq(e0|0~d9MdUViBh*1 zQ0^)BZjIR5asqeo!!GDvv89e##zD{%#}B-) zTRx&Ey(>3muU@5|zrxp6BVOfw?Llqgt57;9Z&Y1OPzzqmz%cu2%Fou!JJez75Ipp; zn~(!xU7Ue)tvkr!x-Ah)K-R7NksEWoASQ2ycU_xf1R7ZGfnSNS1~dHV5p5a%X~gKz zeTFY%pA(KaKg8fQN{s56US4pVcwKGI)|d<3*k- z$y!~Y$fO8?#Ch*~nJjNjsKTw%PG2P@&W`iyb*zNJB>cwle;1SRm%Yjqf>;8RN}BqM z9J8ij@c2*ho7ESmIlPdW%EGK33gH)_+k>I|Yudj~yrVp1>(fRtjdqI1@6HjwV=2bT zz(zXjeYLhXA`MrFEyWy z+c@sC06_NEvn95Zhv>7G-`X|d7<@D<8g+$Z1$m$GE#@e;&(mrGxkG&;(5v9ez=5tl zZ5sJ~IT?uNj2!CQG0TtOAU>49u(sPSf3n#lGZry8MuMLJ_U6D=rHJc8=70p_;+UBXMpd(C0IMRLct4Ub$vNYFfW=nB<*nbRjuu{!@3hK6%4XZAFL!5e2SbH$UNs1joaMLSN^rjY* z5U+AEk$f4KDMyfr#thK#6*D<>ecqaA3o|f)Rr`Kmb9~PjViWjGe)cnF_34kZOU}@o zSdN4*+VkMgJ%i@M55|f;FL#k|%jz5%XTKVhWvd$q@~<#Rv=De~-Oi}xQ1zWHuf7{g zh+^!7g?=n@C8N+^HaVo@R=-9v#I6Qj_g_TCAZN(GXq1o{_D1i>WSx{e<_XmNz6w46Ob!(l1_Y^B= z{qvMTa@bpJ_MRw_x{p2R4P={K=c|?_CXR9+uhBL1kmF zo~raO1(&3k3pLQt+)qr?Nt!tCVCe7`fWO6PW%1W)HTLQ-XNq=3j-q7W7t5BOGc6ujw&MpE5%`d;gEy z#m4*f;qgDS$^&Yf9rK1d?dUeUwbFv~sx0Om)Z(w)E0lJ;dz#};jG1?oP;u%%-?oLA z!V+NY)NGsTyW%@}7UeR3^oPt#N^ZsKZj;V0g%c{i_4m=YB$!#rU7w|`d;fzT=@jKH zmOyYXD~4xW!#OCvlWSE;qqGThCw=?$SiC#cv|YQOnc{?XRVB@f_SLka!ocS7$&Om5^ zjx_p0Sa02k6{gMUT-PjJm`HDJS33V=Ak_%n zusQ9Vt`kHf4uqV6W!fUGxU{i+%Dp8 zrF_2lLALdOBh`2xTt4bjC<_QZ@NK%mHYR6_ou1Fal&plS-}ApXF`-w#x45&53aym- zD5upoI^p0=KjEXLS{F~zt3R=oo%dW%H1bK7!>3^uv-V!Zs9#&f+4)gB^e1EgLx(}5 zkn#(wv4_fr?Hax=i z;LpXGvoQ;G{V=026bs*t95OvmvW>s0bEio%DAaFJG@I!2?M4$jPYo)W|OJ8fF&Ki4X%;<-V?TZ zR50i}XuRohRAZv-;Ajdqf9nRrJWh!FqPl*Wj6Q-$tiUqvb|)PXB|g^`<-Wi)Q@`v% zE$u8t479#>JMMUV>zR6*r8_-At0s%|9gN?uYbnP=s=;$Qu!9)2#4cnIKh)_Y|%<^vf(w{u*A(P)VGk$`C*-;C5PYH-vZLuGRB%Z#9CuuHovh(s!%yc-ijj z(+2mqbvG*q?duOWB&*1yHk0R8B|v-|;wz7MtGSj}g*LbEvEIjC*R=DGp1uGR(q;YW zd~vnPG3sAld6uGlG?kSbe&goL#Q(8pXM|H=<+Y!IbL4dY&RNk#3wBgD9l;@fc_IMy z9x~(2@<&%9mh{h~hHX%?VS^z9hg)YDWdhmj;f@DWlZkab z2z0+^6L1#Z5x&tj+D~>fUKQE7HjtlJ==gzGs|321c^Ro1cycO;5_GP*-{w2BHvA(7 z_WbZ<>26o9-9ViyIt!c%OmBr<8HN`g);;K)bpHv-T+GXxPYG2>D7doD!>j}ucL_fm zSmU-6+bqBBP*>;gVhd&EV1ewkbSPRKHk=;}4d36pp7w1=!nj~G)JGVuH2aY;iZICz zkvze3?os)VZUQ2}^l_)igk-yZZ#z9mwmre@-CIy{049afZRKFmS6l*fqxMau-P~ER zk8#+vDIF1*Xv>s_U|J2vdIX-d=B~^yoYlmkZ+j}JTe!P|rB-Xi4$2~`v`5{~N{au^ z^bB=}?cy6i-G{$*StJznUj{}FU;2yfjDoB%^ofF<{`$d2FKS$Ni!)8i5{pl`_MyYA z+N{gBT#KUfEr5`)6)H8j>CB$#x!}&jyT)@#Nmb~v(GndN9o&?+aqG9B#nm?Rx}th_ ziHt|XsG~fTyMj~)9AfUc7fSc6&O)JUTBza!LoQ{b`qZX97H$>6^raG6e1<$7FX_>v6P6la$G(y}?*@vl~bUwPr#YeJX|>Pb(?;W3)+A@#PP zAw&Ake9*|xwLi8O!=|BCiz^B7O~E&H;&sNJD5d_#36#|;oW7S|*|gOUK?$^FfHs>G*{4U|#t! zw5H^YlRXb!rKSr-QICnui%mo{nv}YGfq5!v+LU8C^qiT8%FCO=y1ka+H6&U z7&^;RQ@y?Cc7JR?$$4)JUULCY9e(iVjhR|A9#aKI?%_|bP+r&cLa(>GeQz((jxmH8 zP77mY^$I5$jMC!Mlzna}x%bs|^Xw3o7P{yCT@W4eq^zJ_dRg859KtQn0ySA#iAa(2 z_sOv`6C(tpmroKJu4R-B8%C#OJ07^&Dg-n0@huDFb5-#lEk=lZeBAo4aUxyX`L9K} z(h8^R&gUG&rp7Hq$34fxX;Dd}?6lECe>k1nlC`A)yG^IwjQm@X=fSG$rShjdr%={H zT60rOyi$?1YPHmM^dhNjG29;QqHE$DlghTp6P&0b&e6aZ+AcQV`sSUy>oyrSLs1}0|kHF`x3}EdRN-H8Mu-{L~Uz#qwz?%M+ zbAl7&0!!PYM;r^!fri%MXN6ya<^OvB);MzG7IY|tjTXv34Utf-G}is~ z))U+RCk(31>R#4Mb~JVNM)IhTwp|eg0+9}%di)BQ5;I%^Ip-5M>(7vzcd~JHR8qUyP^;WS>)?X>-;APqkh-1t< zr-yx0PY*Y2ICsj~b(RMlx0VEW=V6eC)r&PEXt!1KdewNviU_n`6`6#$Rm4!;d+zrA zCxy3ZOwegjiOKSYC3*7bC|eZD7A9zQYp}SPXAi^@-RO3C{n}6^j7{I>)}3wLojoh$0j2Z4sBn;bY>n3|IQdlnI&9!An8`DGwFm(Fka#G0;deWV zZ?L`ae$XfBmg!)oqnwf46kF@NoagSoo3(cNbo(EBShlm0V2`jwyt}6{yb9EIdGuqR z=l$$F^A*5J-syb8Ng$#`w6qH=ZvJFX_jl3V0_G7tB4eY2CwqBwiGRU)27lG@z-DyL z5u}FjBj@V1c@zrctVK?2)lLz+fSq*6!DsZ=E&x2&yg~o__wR9pU=XUE#xV*V3^(8x zcau!cQS}?S>&YHYaX++96Ko6CUrz3PaCiBN$Hcov^=q>Uj^ZmxMfxcr=OSjk$c(ik zA@G$%SguX1VeY3{hgzRy&t%b_8nXsDSXnjjec=Gg8cs0k&>KN;c9foY+ka(k-mNmm#-HA}>Y&Ycebp;P5OM_$lk14iOnsO1SDfV)H^rk8aM4n;+~(dqVKpu( zw2@2p3As%8z6-A74$gJ))BQ@GyKHkL{%(YI(eCvfUqTcd%~(qG0opSA4Wn-^jXqN^ z{v`MfShL*zv|X`*uSCR(xjDuUl{|wNv_{q>QD?+x{_Qwhg%Obv7BE z=goUx&}K;%z+zU)@7p)J&5+1|q2Bsy#BL;36SS1pnI)U?EH*Sz!rYvAb2R+IW0F-8 z7Oe}0RS#B#2aC!fi-IcsoXHX8Bbd7-_X`j7UqE@p&v9(Ft&yyEGp&Y`l{ zDLaFQ8V=4T)ou*b)|m&C|r4E9ybi2rT^m_r-i+=l(>$R|bvdj>xDn-^EkIs-k zwHRk9*a^({Q$Z>zd3jR49lcRoR{e5~;<(_MCe`T>HWchz*7FIXW1)V?Cx-98h4d;r_O0G1 zyQPMvA1q0rC>D3%n?bldz?358cax)#zsS%vtGn-V?YND#ju3gy9!=z&QXPo)gXEd z;MV>!0MY(zM@i`!dmfKBnJLl8s#2#BM@_7b1@O&em0mTRCy)$h?4YY=MY4O zZ~(y!$aEhZ0P@WRc$&G;Y3Xj_#QQ+0Sk%uK!1(KgboLI)im^i-MMYKuX5~c^=$qvc zksyEmNuExI(Fwul+2fMV`Wk}PG01l}8u!|1&9|r27H`MR`pa5=?HJ}?O?nv!v@HMl zbQwOKi3dP?5?vaEOVN_olxj4*Db)qqECiINu*fW4+fbW}ljPA4U-JOBc+35xtYj;9 z%O455EplxPI&9zgsodg0wxf!J<11uawI`ZrQ@hdr4#8yF&8&;1@;(n)Dz(R*CHRlK zGP<1W+L=5%&qK-(o?y9S{)F5OokOCbi)~M#`beli)J3BalhE0AxhNBghIYGnE%RLm z)eLG7`Y0WOuw{OCr95btL^jzxBTe}>i!bo#{|kZkE+3B9 zj6F|`HS?Y6Jk~G^vLHEIl*>8uQ&me2_F3$mzWl)YT39e#g%-);eE%ou4xE~xyZsMK z-E#{9%`n=;B0x+Sh=28fRgS@d7HBVh_Krv@17R`#WM~a*Z?)HirYGVmcBTzhw234`hXSP9$qV+fM9-r~egl{mbYjF$Z^eaHY z%tO(Mo+oMl9a=)j=8lWWU*|OVhKj)O3>`g@v>C>Zo4+_7oMkCJY~rW%m^m+J*V}B+ z<9qo0o2}d-o_sI&miUscHb1IF9X8|M#UN^pe{9M$03I|UvBrAiZsaj7$90QN@^kox z^75+D+5W!$Y^x)t3K{QQbarlnzhhG+YHGoG#?n3eOprtHH*YG6m>|147-46#JkHjx zT?A2eoe4n_dYV8-$9S4PIke2l9fd)>7aRySUhZA8>9lK|Ht+T4bjm8WW-|WSW|`A4 zO-nJm^%n`XT%@%q_(A_p$*Dre^tCBD-JE-pTO229`ALneC>$FxAPx3UVv1fE@Tw@O z%3b+qNQPLJNPka%KZ%Y`V+F?1mlj*ujqTKFDKMy`lv_qgQtHT_{E?a9ti3ymQ+!6i z@~)88JcZ;TQDt_9_c>2OwFZeei-^@eG~sBS<-d7Pi8Kgs0npsx`&Dzlf?SNvq8Ln& zmlvcS{g^%G!Qa__SCh7X&V%#MbPgS>Ff7+)h+q(2Y&xp^*ki&pGM@j zpQVJUnu){WcepLUnyDCcrVT~b_qTa%M1drGs-D^6ZedTfwer=S=uQzaeDh)faZ^DP zG-kV9k>~rmIjd0%BawO*Q4P!9?v@C;IRIA{-a7>N+!)J2Vo}WDBjlHyB|m zbG90Ael7oP!j$KBX3zACr;?RuopY|$67n`nH0p_aOV~h+mBX{_H{>F(XbiO8^asD^ zo+SUCc$t5uEZIfUqm%ysiaP6{sKWOBFD+6^Nn;R7ONcZoC5VW0Ee#^wxr9MT=h7i9 zB_OfXqI51uEWPy7D=e@q%d$V-_cz~p&zw1bpE)znbMEK5ulxFJa_3)n5opS^->3|H zNiPBULD6I03Q(MfcEG7pa$87nny3p{&#W$GRqOSgy!KYfp>(HhJh#14Usitjx0->Z zH-GFz#K|;fy_DuV67ve#*$)GS9G_lH2J%r@@GAi*GVeEdb&T4l2O&IPi*dQfHde{4 ze0-r!#`L}IpO7gFwF8Oqi* z?rv?@hQgwj9u$}pJ@mnAK}>Bbh#IgA)GH4p`XH@sA*YaFyBsF1r%XDaco{2M@d)T~XN=BsV8P)6i38cKgXmSJtV zA3QyPX|4DvaM@)UW|Fe+RSOo%U8LLw>2=oV)cb&NZ1*4Xi{f3pPODVva~F`id3fxh z3&04%66Nb=n7IwSv6tbRaK5{QEu4Mqgg0M1aeQ?m$8Y@7j_AMYIH=g+4}2}E z&Mkc8How~NpGJ*T7t1GQHbhPA&FNdvm&8asD&O<91v3&;bpo z=>3!}iT1Cm`<@~nelEL?%U8cm27ieLov2%W7d8D(IA)W65(ZX?CsIx@?Meib&?}NryU|(9_NIjxM!xw{E?{+zFY+GYIdFRY z#n9ZyUdMn?1{kEeJX>ke&3Cqa#Rg{qWcYk`;;LMx@+c;{(^(k;0BepK*pUKOIhGNe zev(&tzWn>0Va`VR`MvAfA+m}N6lb6#z1zVUho|M+Zy1^S+}5_=(UW!SHgTsJfI?Uk zz(f~)Z{eyQN6#bHq(Kq}0AIEEi)T$l??$#El}x6N2IswLONsMbIbEu_TM>@eu;)pt zCcdCM>wo7={suf04zfUYVqd0&<-HvZ7BOHiqUMf<1Zzk$@AalB1w+0So>0R%3-;iw z%7Ab#ABM!$38-1EBAxf{+5zH_tDWojsI>RC4@zfj6KftD(61nqT93nyvr1vw$E-&@ zFv}|f=-jYniShb>p02n~^tCM1^E4mhBW-Vm>EioE6Lzy}wl+XQliFx|4@Uyyi5o;L zPx`L@1kK$;?@O*a!o9KY5wLL~ubhXlDHQG)Ut2-3>hd&+^$2q%dbuF{VarGgkry(S zkA4Fa<6osHz~!Gn!vZX_n_GJJNDJibr`ByVu?~YJ)17Qp{5UX-j#f! z^WK)!cV0lL{8OFoDm!DJ{p)-Gm(Ah!KYfAbW(S38X|~+x3yl8(7~=>8#iHEI|ALGk z5eUpcGW{d}8X7zI9tv7fO>d@&&`!x`cb0<#?ssKqw5*)yLKtj~;jZDDMiyWBlVDHz zm2dvQB$+{P13LkudSCNf{}YD=lZfN9B62KZGp)_z^ksu@lvXKTF5OyefPRUk zm;6`?5j|etkO}U*{X|_guB=o9lMBv>h``ktOKT^Bb@gA@Q%nFQaZCDA3vw z`9?{HwlUd+U#FDORO*@+xpMC_=ZN^ed1{>$*IN#o2AMdWjKB2{MU!+(hB)H3&Yc^% z2;NTTlA{rc{F~eDw*lP^sFB53({r3dvcUIttXJT&cb2CELqXK*cG2Dz6yE+Cqd0_j z#Ejs#lJ86ekE-t5Ho_C9xfXZ^#@IRudY8Lb#04!m&&p45L-BMuiKBhUEu}uU?VJD(QE8QiK1Y;U86qfrn|c1mxMs|V(%kR*)`W)iGl3)^?slD%w6Mr z>0|vVF8^yIDk(-&pS0X;9e4A!0)-^y6#rl-ariTKsd_zw_rytv?;CW}XHoupip zLR+?ren&dln+-_#D3J{xa)nfm9gjMGedP-zeP?X>9#kQEJs~n}r``WVs$&romF9@P zf~}~(MTz=W+Nl!($$mk(WLq>pZ9Hns1k@NP@1q0VfQ;M6k8{iKSa5GlKB!Se^~`?Q zL^d+3z3ogiaHnqFCbpueaQglhP0ro_26$7nWC^_HzrnucCuR!lK4Ksg!%4Hon zBiGBlnnwC#&-2@v$5pB?KVyzwjvE9?9>1Oc$*WFf<*01c94PQnIfCuf%reKJ{XWR< zSdxu+-pz2;@e{gIYQ3fLEaZ9D*=CP?S2cJ6d`Js9*Gq9x9 z(fv?w=#mx7iASDEl>78&52Ew^H{a*1xm`>F5HTwPqTz*uSTZDrD(s#QQHZpvC zD+xRk2G8+I4^!5+j(0A_WV!>os{g#+_EN1{J;3!ez8 z^v}dgD&~ALWyw)07WaEPEcdii0FIdQON4PpZa;E;SLZriZVYY8Ok>-;irVk)_b96e&M*9@+vxQ z$Jrc_*LF()A)*~JD-uewkMC|KK7DBc;WSn^bw+x<{kI#iPTfbL;_IBFs~TaytJLAe z{FfTqO=}oC_?9TwgKI(n=o!_esX~|(;ID+qp8TD@RHcvc#6)k?MHm~EN@ab2sH!}d z^SYz9aD6a9AJdD&im2XwKmXgtE~?!qbLpo{zBjoS^+1Ef_9eDrdMSW_fCDGAq@YR*!vBHv-*ybkrwtbd=nm^gf6a!CKi{oN-Bako zg4gx`y>fWqb~XOhJjnh2i;##N9`@CT_Pp#B-BmVt;-st|2r|hd>ZR6=Plnu(OkeS+ zAYP(5pz$oHDtvfgBNa7RRPg4LuK{jH_#*wz@lk~0YF0FU@_}q}i%t;nX2PEn+HM-< zJm&CS0Kj8~%?jA9j@isiO}G&oQzSMZ1douP@YmJ$u>F;L?0LfaQPj1Li_jinT0_6> ztnY_(wpm>~8YX({CUfrEdeDzqFn4J~3t#iV2QLSN+J4L3V;zdFmR)8rUL5B-yh_-Z z_1#21B>zf$d;LNsr`#>i`{3E{XX8qxG(hd$S>xC|*?~zHoXq=I)4kg;S9^SjluFUHcpo)QG@TMbn2i0>9&e25q zP@%P=+97M^C<)#zDfj3OC_#gFxqS9G(xn#nQHDoBhQ{~};X5>UX3KHe<%2bptBv7U zN;@tKyAtLYbM9ra6fLrmE>lYbn%wdaJP8`gHZW5MV=n{EM0oul(MaS(_**t?<4!xn zB(w|iAKBbsW<;jo0e>IYY6;h7jJtM3H_&;CUUgNV}9d zPr}_Ro;AA&%37I#Ez!qTBb9B%t_#^`c$}A3)!Yys3=K;C*ZFlsp+d1FgH1lfjh}xf zt`^BzGJ!T8>HS-u=CZ!Y#p&&~kS-Kjoc^e(H z!;NH?BN+#bgt+<2SND*44+yZ2qQM0IK_5(FC$voKOTgjRzz^qIak4@sK;)1Z;cm|de-b0 z^lTiQ+~{f7Dg8D1#e^DNDUNOCksja0@fKA&Lhlu|*AHio{zhLpcu^=K0t=_+VU1OT z(aUxYOn!UP_hG2`yJG0Rf%jQJn^Wv$IL_16&DW&EaNj$2sQ``(PMoWP1Yr;4H(3&! za(;iTHR+fQs&%|+-sO%Nsw+t&X-E^J11#PN>0uHamlsZTdEdfkBm6fnD?x3eMrS@C zLDvU1jnG1+XQ(yBbti}_rZ@`s%9u5ryO|4NsTxda<%sUIn0gU;6tgoNWC~D`s&m2L z*}kWcK>NZdOt0Z;Cr6}FVZG-s$^klJs}5fQEhAJ_B+6jT_MJ?_aw5(!9mRb2xG49Y z!FxU43eG_1;3bw$>wcTuCh*qZ2fy=6$)+%;e^*=^3E*?TT=D%H^e${ghob%Hyhlqo z@r4w5!LF+8@itR5|EO5?E62xY{dNFnnVpUn$(nRX_TP&wFQ~T zX?Ty$bjPsKpnL2T%^Tt$oJ1T#I$Tfxuw8@Oa2vSjTk49ctGzmN+>`6SUNFK|V?VAq z$74=Rdj1}GI=b@ET0JCEz}(EyQ2DZqm_JODfS#c3hm zv5$9}jUg_}Sd{Y-=neN>#mQ6uHlM5ktti|Vtp1woD53^p9;oSWRrNGs$Ng)g(l2G# zluUQYbaNBg%eYtuA1}H};p9P~5H2s40y2gk+K;;drlKz(QsTA^q50BZ4gKDHjc=Z6 zL2#E?v$zIdUBRE7@x?Ic6xnrUE=Dr4tI^Nt!GYw3SIu85X(An$O*Z}cn|;Zf$IkZH zCbb)#8b$^W?`Q`v&J*#{&mx5e6r!_s>>y9C<`}S+HT9p-4H@^EwB?fhtOuw=g z95mLBJN|Rmh;J87qm<)iJaK)$rryH?Xp)hWo7?axIO4NMn;g;4^Kb7_90XhKMlMD9xSi9h~uN?vd zPhaG?vno(noir4L9FN|m+QXZl^5|&pF!wdys`4Y%f4#+^64^TJ%o&Xv-hoKV9)I#Q}8?as*637qHD-yBS!6 zdPGf+g`3Z3EBJmN%n+Q&n-8`DktMQ{08n{ zcVY@p3pdTqJDlrxqq@A0orjy6+X>(R6 z-JYhoA)DwvYSwPV%ZT^-6(_$DLRA6M^NpTx7R;2&!h>+B&yi32Zmae!z<*N-K8lMMI+xYUph-7^>p-7ftU(h3fU za@!undn(9d-ELjx{>qxi9k&YUI(K4FXFy7Q-W+pp3lwU&Wh`+e^mKAyyhx6jYwap0 zv4Ad>n$a;F-$Q%A@G}gTyWF!0$-t8A>8}nbCST-ELWM0Qn+1n{v%ZNP^j>iDTn`*OS>UpKPDLv5*Ul@-$im^O{W6)nJ*3z2Q zzXYBtnpjXn$IUAL*y7#YMnaxFKmM^~zMjBqI%Fk!M!MnL=1*ix|q#lLM>t3t}l=~qAO8ob10&=r{aNC>S= z3S!Vb0wV(8>2a!M2m!=iKNjFRM7(=`2p`AW#*4r7*>=JI~aX&6(CTXc+e;q$^B zE-3&dq~{kSMdudZ-zudO9osw8f0CsA*Z-RNdBR3;(^lLU^7WwCkti^N>xQDBAOJm|H&e7?U)umjB!GAPw*2OljT(SL(Vb?YZ6|k@)B3j1s>Z%z5yr4E%Zf4A z7jlUQhIyEj$H~T#tjiq2K>+w~6Y*aU#O?$6>3 zX5l+qP73(6ztFtQBkVtu7ioDG`5E;(u)*jLW3C%_e6pf-lZ$F4F0eJHUq0Qf0L)ic zFb2=ZR5><8hj=+feH%Fc@zG{LRR`#X_`Exf6y#=L?=kUZsAL<%hv5(Sye?$hvmE(; zzXvScyWeec)NUD~bFuJg+p2*GKGUi1%C^4euXJ}M#D~}3#5E++Xlo4=ZqK>D ziYSVaI?cmXTwjKWaaqNi#3m)#Sbz&p&HN*aTK6*=gKtxJmCi!QQ;+dM9E({o+j>%OQa!@^kry_Qj$~d2By}ME@hL^m#Mp9g`~H8jnlWi zCu1r%;PN5bs`ck^dl{TuRk&ay_1g7Kk;ik7R3{%6DvQ$ddin5SZi9ErhE;; z*-MB9N2iN0j;)*IWgF@eub(Neve6m(37K+X%q`0u+a`_mulcc{-raaX%{o^XSIGD15!1rZ; z%imwwebXr7so@vBUOB%ja;L;#?kGXM5hU7HYxyN|d@i~nWg2GpL^y^0<)I9G-*6|gI+`pTnrIuxuJj!3a z)6qjn?5udZ+P|Du3^nZMli6dc(@xf_2cd8h&iU6@e;ZCCjNmON``58D(>zV2TAuG?}AM1PxZKli~+5Hw>N@U@F&f_I&UFGp=V?^!K2IhJ*v zci|;XP&DmI6d3|m*|UX_{fjj2dq9#=1pv*hQAOu2avxSX+5sM7KwZK1LB|;9VHZy6 zezB)Za9^1q*Q}+>94DQUm7ic85W;Ip@lNV(@4H{+0wij#v2lGPSx&S?y)9_UW}Irb z&*J?_&KFp{D&k9*S_;NV*Ij@7g-1Rj%-rB3=mq%-R z_MW~mCVyX1M5eHBN1p?zu-zy(&fJ*cgJ6OZ!oW|Lb0k9v&f7-f7mR$=?fomBtgkk`-W1WvkY*+#9%e)nb}cP(@KLc{S(F~`89M* ztxU?_0bOLH3W|~B=VpS95|yO4X-^=(BJBwJ%yG zXOBHZ>N@83c?9QXxEQ>CdRwn{ZtUF)7pSB+APYQpZrGUciKMofet4z*?)0o6`b9pA z(A~&-f9+EP@JF1g@rbK!^MlG&(}xB9a@BG?dLX=Fs=48hp#|}QNR*44XmDvV$IH^- z-5Gb`FmOFks8={}`n!-w0r4auyWrd%KbXo5upnu#pWf*56w zZ1bBoMJ}#@14U*}S)XED#s3{afkrDHxb=^|6IaSyw=WU6VF&=M8~o zQc&qU+q8~My$HSv|IBo5h4+WJ*@T%G7Ar10yKpH$DbY_hT28vvrsL5&Cr?D+5_OI{ zBY~XK1#^&4RvJy@cu}7yCxKyq7j%3`WHmKZ?~Q*Z~`juoOGDgr-u6jPfnFB zqooye%u^FME|Y2=Mirpyng49ZxY@avYfu`;wGXd7*N+%`3-XVnbA)P~wx$oq@QfsO zbyv~)NW;I&jAEY>3Uv@9J4b=rQ>s2*_p^egt#n(`1YN8;1pOaF+B(iyFxl;Yl8W5q ziJ}|1u3+}U^2DKJqoImYwXE~D7YAAIce2SwL%M!hh&iFQ?^&zg{eWM(=S*@@EmsGT zdOGgk|FcfcKDjcCS!H}|&>zrxAFwHvH~ zvQh%PG*rIi1l?wBA@m;LwvCb9i@v9A+oQavzpL6Fif*rj;Y9LjkG<9zeUMp0mq(Oy zq+YgwtGw{GtFyD%fVa)9uAU~jraER51l_GgCk=Vhl<4sz;fhYtn?61hd! zvQi5!`Vkx8K6C5Hay4D|qIb^3L}Gs{Db%PYRguD-ZIizCW)!&Ns{`HtxO;93|bmT9C0y%k%y$P8K`JA=t1ElqS3IY z4n4Z?bHk9fU7X~SwDqAqSFsLZucrP>_pJ@0j~w7Zis36)-Xm-}#;vP>ih ztU*49kcM9u#&z6v{1>;Y;eWBbyh@a=~;6~pKXP`2gGQjep3;m@1hp@2I`gz~El=sWW6K2m{9 zEF6QIXmMHYLo;(rfSwYN_eR`v>sxANYCOy0 z53_~6f+w{Keoggy(#CuE-Sx=Q#-Rj0VyZho&!_FAF(3J3$~2s=6b(Ym6f|Lf zf7N7t+%lCF>lag@Sl!U#NE+LnHnyDg~nL( zx&z9~XZA-#I188)AXjKg)h#a!$fui-3_lMEKcbbGl#xgVboYPoe^aJxQm`@QbWJz> z+UD(=oPYn(A>j<2*NFSI8?=QtZLV{;Ebcw9Cw^J-iR7JHxup?r<>ig@VwkZcZ`r9Y zR+aT??!^ZhnC@>_yiJkmePb+Dc+X4rf_r(5=pW-M^d{{h%vjE-Uw1jo5cU>y-UXsG zk~6jFf@a?zrD)LF2m@xlg_di%o?}B~DE%0Uz}sZR%!;Y@4IF6_+31@0n;>O+M>sK4}yd&a!WF zUUpyfvBY|2!Rz9WW(g7Q&t42HjV_xKLLcJX=P@U~fl3dp*I2i&RVVUD%Ub0^NFGW^ z$cfj@3H`QTH*;uo%)(I0R{uOYzA$wyOdojfklkMWUzKBp#>Cl8CzWeKo#zQJ^qq8#Na&U--z{r952q0P)Sm?ovfkFAC8;r}90q$SZ{w2Zc;lBl!h z19bnXwDx4P@S7X*0BPBkp!=XkQe}UG4>c&HBC05~;Bvd7`4dIz3(H2iQ3~7gOYvW= zXJ7Jl1Z*uoKLv^Oz=iWiPz?v}u6yMV!b^ue_vfPim|Z^_m~4mE`tLjliU$cne&>qL zW)+B9QNq1Ahea(G88FyQGNi`|-_;iOtmOOWpnB#-(~q&Pj%PAkDXt09&#z+ znzEPvH6;S$qLh~+%lpoG6UlNXe|nu`_d~eOhS(k+zM%~pjPEgS8Yl3*Wfifd`2^QMB{Y$6_dnxCH71Q%_d5Z@0bMiht38kBAILdk zK!h!qG)^m+uBo0SlV-17gQGG2u2N3XUN^J8$$nUVUZqI z9oM|=kd`%-x&M02(BhHL_n)f78HX(-7wZMMdlg7hUT{+nWZM+krP%ZlvR4zc81gXb zopGt(&-Ihb{wGG&0&ugs$$M~&5x-8B|0|hOu(90`SS~>+OF}}7fXP|MVFJw^s%BwL z>}^hwO42&x@295_P$cn#Z#s#iWNekgwH<6YJZ#G}ME=a-<49H@^eFQeAr)@Lv9V1x zGsIJm#m^~o3+YKF&l7JmngbECm)fZ)s{$09Gp7N3?)sU+un0HN5L_e;e1;P>I*gXY#Ila(yZXmZyAjXTu5#I32Phxs!Sagp3yE>zVz_^ze+|}kl z#NsZexYzIFc20{s9UJNO_ibM>`?N<$|HVG>!gkf3qVl&RXIx!zpr5vaq=`l*A%}Kn zW_gHxHSTq~AX0{&PA2I1_Gv7N_~xBOe(_YDYy5Tdfzg2wA$y+5I*!NzBhn{(w^tsM z$H))tG3fsBD_HDR=TeN*-a6*1ot1z+!*+}<2@5j8{eSuHA18u#g1yTE79*ZnLDNw! z4kr$3>m*AD!=gMnrFU;@oy_diy6sKvByia?@Db9Kj2g}m>tWD5a$M1`?kG`}2iH!i5Jsbt*<^0WNDdzE2`ro@aO?2iv zb3$L7!M&TiB$AW~DEv4F?QNz~CjA%w+IWvF=ml6gO~p*#dth4F27;%ONYA~@3rggW zL5Z?uWkF0~=!LZe_fGdZGe1t4G*=b$RIM0!dbtz`9Dx+Q8(g-Ska*{kom-PPe|>GF zrB7&KobK5Ht4P#H=TLbHukphYZh{RL$$e zvgk6ivdXPEhhbl#;Ku!sVc);KKWEhCjoymYN9H9}wwDh<@?VkMB)O~cDbF$VJp_c0 zS?*fj*Z4LbbLT0WY*%;0+@D2`S0-^luXWUzn5U)TUZ8Ad5*)X<8LQd!*&P{RRAGPa zIO0&iAH=KSqU-J)!m2JEKl{##IriOqCHDy{v&1pA99RcA<1JFveJ#tgwQ2Rvoe{f)Ij3j=V2- zcd{m4U6)Bb7P{7c3LEXxA(;X{Q}md8j-fnDU`i{~TsBAgjx*?l!cBkmI)mJb0Lqn7 z#|7hxGpU_Y-=y=pJB{~e9``7A33v7lo1p>MJD`2q)+Zz$@IvB%eHBq0&Fz1mGNt9lhRCJk?~P@BFwlFzl%>Htzo z;}D3;Y4Ns5axRT`DIoal4+W(=sLYxU^~AT5cV)!YVaP!oS7(-ZO|;^}$ohtqEE93srt2zHfbBf1s;G*Fk8mff zF@J|~x97xscIQuMO3BNtM>1m1=0n(4)%RVDY9+*Sh%1zv|hXE&HbC9q%Kyv_Z6_Gn3qSO%HRU&GSDWgaXV{9<~QU5+gs5 z_ltFgWQ*2`R*M=H7TF%K*VKhj47WnnnPb0p*%w&R(JKbm%Dg?<)&I(+sI;B0Cy<)KrE>YcYmwx4WH$;)CzgNi`Ww~*s!yZE+>6>MiaXb?`*1U8eS_e5G zI{_qTi^U$jod?+sUC0k}9o5U%!<9aZ_tVGb-@; zYwbpbiej*r7V09}z#YO)@=V3I*r}Pqx_G(oft=-qO`PhbJMz|@5nlOH`?SBvOO*#t zQDMuE#(o`cf9p^R3p0;caADVKL?yDa$q~NPA2^Jz2Y0{~b42>t@TFLWe&E=-H*|T$ z+0>%vxA)r7)}Ky?!=WVGw_C_wvnsSD_l^LAG{&WD|E_;$*2z zzM)Wwveg)3Kye^DsyL?lVwwxmDAXwbEC+V-rDd(_R;N*y554B||muow&Sp zrj&50h2Jy6^}pE1j`Hex(v&?w$@xNnUDu`lD+DE=*+{eK*mP|--6`_0Htcf4wf?QZ z#JT@x;Lw09A@@g4N;$O$OPD?m zxs(VZ1c?rf5(?%R92PSwOzwy)`G^fyMnuTf- zooSgM@#&DfEF=DKJU^6to)qH zzg_-nFG%p&Z7aSmdbd+#Wl-P20obw${w1s1VJ`Sei@W=SY>Q=!Sv{I+XN4$te~2Qw zxVDJgV2j>wn}-~rq9uS%_#AIxGUHfp{$-m$;pn|m&{H~xa#kgiEVO;NJpW_LQ6K{}4U`WKT8T7$`^MeTeNHwgpknQP+rrKI?&xT{ef_i4%k+4veqZ9tO zjc3;Vh<0Et`i`Z^bW=5lH^H)8G`Af0e#P?25GED$rYvq>BrgT7#gQM{+H3M{C9T(Y z2!X|BypJ9K66^r6IGRE`Ag43@c9+YaOEXd45%Y|VoH9A55U&VKLyL>c^?O#O?hkoJ z`o}l-$7np3y}LZ>rl{Fs$ZZK)5$c15y5lOIK49ZHK8p_gb_dzxe1lI7FF?obO&%EN#fi}273FR-mr#*Ll-N# zVEQ}@(79A;F1HIu`SPZJr#S{|Pxe}uf=WmL_pcTT)!g1mV=L{!cgf#TJ8An374VXULBPK9EF^D(&pvLPL>xiX zcON?}cOn*ZEsMSjT}z)~gigde^o%TK9V+&Whxq{2K+uRy|M^3FCTU?6SFGO|N(1H{ zJ))f}_iBk>F4!_r=sh=tdY%S{xw3iZrv_xX1~u&dd6p4loO_e|oM>cUVi-cE{IHdn zY_I)~No_|4rtWB{SQ`GE<8O+8t9!O6ZNr}*!Ig02T1AZU&KIs=LH@4RU;g_dAM7xY zfwbwV*Ojz?6wzfB;~ym(p1AB9T9N#_-W=BebPHbn9S)D3vsjsWq*w91iDZr~+P|x5 zI%K8xTc^Y*$nfpKE2m{1qBsP>F-W$EVX*%Lm8Fc_zgv)wBEyxW59sb$YQU#NepPt^ zuLR<7*>6-8i3|V_A;v=D6{%lgoqZH(_h73=1s1jrWmcbnOrK$v>txii+@V`QSrV3= zc1Q>bAlxXjv}nEFmWh2QU!9x9jb^p~xhzfiRwn1b%~0cNn1``L2l1=|6GntZ$or01 zM%8w(?RAIDhRFi@!JTlGxOr@hnx6ppTIcrP>Dw%mr)X^D5Qnmwv$oEbC%Qe<+bYY! zeUt*q5wDl%>hsopaM$LLm@n_}P%K^BHNhlbSubzA`%lf`U%5y1jc!eM-G(0v14RU6 zM1k9t$lO7e*G}?TQ*d~{f(9lujg~Ww?44otTH9q_lBX+ixZ`e$p@9Dp%Y4&J6o0!fNp{PW}JR$M3Xpx_~Qop?n!2Ut-0W7roz zuErSK65U#jXWK|t7Pv*nAvmzl05GQyHo!13*RyZAegh!WT=DzTG(~Pij9BdhrT+YwAO#E#p5?%e{sdiy zWl}#R$;?4V_AQy~y!u>A!0DN3Rjoi|GIQFcHqMSVRmsE#M$#I0IvnW|VN7!kp@iM2 zA-BUE@Al;b!z+(w0f0ws#*6Tl7Dyby@H)qyN&uk9bS00}dGo?kX7wG@)%;t;hd8Un zRREjxzwI)Pn{WF6ufqEkZ5MCgqjrw?yo-uFz$rf>oN EA7k6t#Q*>R literal 0 HcmV?d00001 diff --git a/include/audio.hpp b/include/audio.hpp new file mode 100644 index 0000000..07db615 --- /dev/null +++ b/include/audio.hpp @@ -0,0 +1,8 @@ +#ifndef AUDIO_HPP +#define AUDIO_HPP + + +void play_easter_egg(); + + +#endif \ No newline at end of file diff --git a/source/audio.cpp b/source/audio.cpp new file mode 100644 index 0000000..3774beb --- /dev/null +++ b/source/audio.cpp @@ -0,0 +1,30 @@ +#include +#include + +#include "nightkingale_ogg.h" + + +bool play_easter_egg() { + // Initialize SDL_mixer. + if (Mix_OpenAudio(44100, MIX_DEFAULT_FORMAT, 2, 2048) < 0) { + return false; + } + + // Load the OGG file. + SDL_RWops *rw = SDL_RWFromConstMem(nightkingale_ogg, nightkingale_ogg_size); + Mix_Music *music = Mix_LoadMUS_RW(rw, 1); + + // Play the music once. + Mix_PlayMusic(music, 1); + + // Wait for the music to finish. + while (Mix_PlayingMusic()) { + SDL_Delay(100); + } + + // Clean up. + Mix_FreeMusic(music); + Mix_CloseAudio(); + + return true; +} \ No newline at end of file diff --git a/source/input.cpp b/source/input.cpp index 6134139..2016257 100644 --- a/source/input.cpp +++ b/source/input.cpp @@ -24,7 +24,8 @@ int read_input() { VPAD_BUTTON_A, VPAD_BUTTON_B, VPAD_BUTTON_UP, - VPAD_BUTTON_DOWN + VPAD_BUTTON_DOWN, + VPAD_BUTTON_SYNC }; // Wii Remote buttons. @@ -32,7 +33,8 @@ int read_input() { WPAD_BUTTON_A, WPAD_BUTTON_B, WPAD_BUTTON_UP, - WPAD_BUTTON_DOWN + WPAD_BUTTON_DOWN, + 0 // WPAD_BUTTON_SYNC does not exist. }; // Wii Classic Controller buttons. @@ -40,7 +42,8 @@ int read_input() { WPAD_CLASSIC_BUTTON_A, WPAD_CLASSIC_BUTTON_B, WPAD_CLASSIC_BUTTON_UP, - WPAD_CLASSIC_BUTTON_DOWN + WPAD_CLASSIC_BUTTON_DOWN, + 0 // WPAD_CLASSIC_BUTTON_SYNC does not exist. }; // Wii U Pro Controller buttons. @@ -48,7 +51,8 @@ int read_input() { WPAD_PRO_BUTTON_A, WPAD_PRO_BUTTON_B, WPAD_PRO_BUTTON_UP, - WPAD_PRO_BUTTON_DOWN + WPAD_PRO_BUTTON_DOWN, + 0 // WPAD_PRO_BUTTON_SYNC does not exist. }; // Iterate over all 4 KPAD channels and check for button presses. diff --git a/source/main.cpp b/source/main.cpp index cc58d03..34e0e7d 100644 --- a/source/main.cpp +++ b/source/main.cpp @@ -18,6 +18,7 @@ #include #include +#include "audio.hpp" #include "backup.hpp" #include "input.hpp" #include "main.hpp" @@ -217,6 +218,8 @@ int main() { } break; } + } else if (button == VPAD_BUTTON_SYNC) { + play_easter_egg(); } }