From 698ccb414d78b8eb4b41e66d476375c6666222b3 Mon Sep 17 00:00:00 2001 From: justin Date: Wed, 22 Jun 2022 17:02:57 +0100 Subject: [PATCH] Record whether a mouse click is continued or not --- data/sound/insert.CUHRAM.500.wav | Bin 89322 -> 0 bytes data/sound/prime.CLIKCLIK.500.wav | Bin 143370 -> 0 bytes src/Dodge/Creature/Impulse/UseItem.hs | 1 + src/Dodge/Creature/YourControl.hs | 9 +- src/Dodge/Data.hs | 3 +- src/Dodge/Default/Weapon.hs | 1 + src/Dodge/Default/World.hs | 2 +- src/Dodge/Event.hs | 12 +- src/Dodge/Item/Weapon/BulletGun/Cane.hs | 2 +- src/Dodge/Item/Weapon/ExtraEffect.hs | 9 +- src/Dodge/Item/Weapon/Launcher.hs | 5 +- src/Dodge/Item/Weapon/TriggerType.hs | 5 +- src/Dodge/Reloading.hs | 11 +- src/Dodge/Render/HUD.hs | 8 +- src/Dodge/Save.hs | 4 +- .../SoundLogic/ExternallyGeneratedSounds.hs | 592 +++++++++--------- src/Dodge/Update/Camera.hs | 9 +- src/Dodge/Update/UsingInput.hs | 12 +- 18 files changed, 350 insertions(+), 335 deletions(-) delete mode 100644 data/sound/insert.CUHRAM.500.wav delete mode 100644 data/sound/prime.CLIKCLIK.500.wav diff --git a/data/sound/insert.CUHRAM.500.wav b/data/sound/insert.CUHRAM.500.wav deleted file mode 100644 index cc625cf52ea04ca103281411918ba3d63cacc887..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 89322 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%0A0wy~}C?aZu0HNI(ly2j)H z{r#S!owr(U{F$*Pt8B)Sj2Un0|5qwr3LhP<8y-a^gEJx)hTjfxFI8AFI`>-q74yyd z$<=c+u0I*0J$E0Q@gcuynNzj4=v(fWO*^3M%9xeaNxv7ovbH(up{Z-anZ5rVev%UD z6Ie)iw-uty)0u!>aPz=#?|=jpB0o5^S-n#D!edYkzZ8s0&Aps8t1i=&RNo6 z>m}`8+AEKfRiA|%uyzY+QgwE<2+Q-_{cbkvo1($#L$eoq5A|=Jz4F5sx%0_Y>0rwU zZuRA<+P(qNrmv(9+O_ol>5}D{T01{qU*K^}ib!hrcze>6{BQL_?~am^b~c~hVQMcm zHsI^%^MTTv&abEERnI$`?2#}4!}x}KbYZ)I2i1m0`;=N7QL)zO3i;k;-3LpjT+?g` ziJ6HNI79c(2u$5#Yvt40+T0drFXQIrSD-yieNj|RUzc+*E#*^c#@_sp_jT?Kf6^!0 zY|eFDvMu$=^n2?z(mN%rbg4C#>A7#zzHUFJcYL3mHdWrJv`e1%ZgyTfTdr%c>|;*# z8|ppHIyGQNU_jt&_lmhoa<4ir=5Htr&HFyDtZ7$K--N*QPTEl7@;`VqDqXh32+u)& zJA#J>n%%4BH_s2XuJl`Do#68EY!Ug^v!|3=;!gRSWn2-JL&L*QdRHtcnL8~1VMd$e z#8(?X^~!aoSIJtK{B^vZd(d??C$TU=Q@wxo+npEhs1~u#?``hc#Qn(~^SWexouBXf z!DptvsIW^xs#l3H&EoW|9QHWOztn-C%U<)mpXxVqpX4mJ?X=RRF1?haqP*NW+&td5 zR=`nn=iJrV*`Ivh^hvz^yjSd-&zmxXQw}7~d8KAoG3pooYgt^XcjSz)T+<|v8KsVT z#u=MDES`nd+@j5?9ZgI9SDI#Ozd3q&tt~104D~-BJjpW7E7sdk!+l!2Z!tPr%~G!Y zyf!HRxSs9T$N=1(NAyJygB^*w8BQ||h;{239?SpeNKRwDjlOL8ns_?Ab+k3oMMUU-nW%DcMTg;PebFw6Rysfu( z*3~-CPx1F}<+r> zH$1zV>lci1dU-f>45Az1)ch8R} z3a^=7(Yt}~G|y1K@_vP$-)p;bv*Z-Zs)B~u>3P2u#OA)vxaN8}gxyZCmUS@A2 zFZE2JK-_II0iMzyc9FHUSFGfwc}nZ^60=4Y1m!%;-jipxZO~iUU)YYwCAh=zwVIV& zQ-DRBdlwszihjd`eac?X@kP-)$9Y#p*Huf3+Zd&(`x=j`Zj!mFRMBmgM`NYH8sWKC zzwGjGd|}(fo$3ztlI66co?hr)AXm|!Dbw7x`((R?$<-`LdTV=kWum!`X}s|q%*n=j z$6hiFbM!^hkD3Q(;xPMh{gtu6{++A4^Ry$52=d>Rjuy>TTCM3-$CPcl;r_EpHQI2) z`PdwzoWOTez+HyL_~7bgY}4)x@TiSi9oEvbR2mV2b7lcH+=Mo-gSqW;U7La9^# zrQX~bY#wRds#cO0INkMFQ>3xM)q<#!pXBz^cw>YbO>VYq@i5OeM&nhkY@K0x;FwM( z(^bb+a#+Ynkgq!08=p#GT$b;HI=xyOT^utR9|X+ zTyxD|n}g&Zxf5!otT0--=E@ti(nV(+vff_)Q68&Vxt}_!k?kyZB3`41Hs7eNbkM7l zOF7EuYSQIWu48&rqY_bNHC)MZEv1qxUT$t~YmCy0G`rf)?G_Pi$JBmA-&91A%)BtWF^Nq^dK;sOzjs2u|u4~3% z{MPa6WwkOixLl4hzE#$fVckJ(so&Qtt5u`|Zol@*rOc=3dN)j|M$Bw|r8{xQ8;rZI zKZ%0)L4R$EQ1(eLl!H<;rK^%HjWIuv8|yGBE7CJ(Esy^b1#wB(~SefMxW(g zHk^#974)_&L$^k&{VBR*y>qWEsHnRZqJ$cg$(;RL>&`vOuX>J=MC5TBbu*FvE2Ln3 z06A>GO8M$mB23&(8}tI#2RXu|o9I8O?<01ux$81FhV7N@>L~Jl4@>Qco4c;kPmrjK z(#m{ulyb*-?^@zGBV{T%`g3lbf5q!=##eKIJJ@LMyDmw8sMk$q^%Ze^H`EI1cdm2V zT-o1f;>vNv=+~qe`yu-_eX#S9Ba+z9N78G3u-;V7CMLfwIV&UR8oNn%np&9}>D9S! zo=w#KYPkkC90pQC;q)9w!3%ov{H-lp*#uz^Fu~*?g*I>>!qSi?-J|;o9Qp zB~?~t6aT%O`$Z3_w(&^$Ufs*RuwBmN#(BQ(PG(VOshXN-Iz={9E)iQ#h`D<%Usc9P zjpe$^Dt)Z>C(+e(D$oz%CHv0x#L<~73XL4PBxRP`6G_!U`JlhlH!5S*t;%a6q_@b_ zUNSxaUD46FtSl4FyF>p^`b9ZR%=afjSn@+I0XR%%ZKQ)O;|ddMTl#~*JT z*K&<)`Kj?hr|*~40FI5(W)l-tReB~@Ct~0Vl>;KAL~S?m-qoe1#u1(R?Zf~ClUtEP zboUZ@y!x|JWGvQyA)6&ocHvFCL)`TaViJy%&H0e*%5#R58!j8!_m#-JUrTJUCy|Pe zv;@~1y#ZM^;-0=5_tQ&}u37Z7o-22zPxK$gJY|kjnJk2(@^5r+REbCLeZN(+`BbDuwqn?5h4rQBHkLH(Iqulb6sy34=o-So|RBs8>uIECg? zg8r3u)YVpRK!3)=u9mKKWZQnJPaqz@nIhugewH`NZ^&nPNKTNKdO*&St0@PGg-w$$ zQiGu#u?Mq=Q&}cEQq$* z9=(k&?4t{j=xd2-50VUSz*|Zq$hkcz{X)#?3ZmD-m1^?O++9(zksH9zu5XN|MCFtw zZpV->NV!^)Ynzcmq+=N(riRfw`UZvRlU!q=-~rNfxr*XR#BXyl%_8KT_<64@%@woJ zR`b_I#rfOhL#-jk;U0PS?X@lX1mdD^Gsb6PI(kDStW^C*&=GFAbX04x_POOVE0|g4>&-rlhX1+a+f`*KSD=D={vMS zNA14;fE?IdG7+kf4?`}4^NwqvF`3B6DMWIX#kajnDGMEMgBP;oPh@J>m-}%yJY1P$ zcoT6`0*YToo%$=}y@(EBRF0#M$~t2Y8PEyTmV2+KYnP2&a!%%viF=OtrjE#vTXG3` zAW<|^h>O{7R7Fbs!p(AXX(PE-qJv}^}O#OTTPfqGm>SBDhiPQ?&!ApG0hzJW$-A9E_U!?p5+@TQu!f!VFq~BH_((+M zbDfN5Bu7{B22T(H8A`3ENFY>)x(98^6e=yvgO5dJkDWxQtK8pDCyQ@2{gDkVn!D#n zdg}HC&pAX7`O|Su^v>&qH0;WnGV~VQ?WYh)Lu9a?uKz=ne;cr$Y}AFq@~PT$5?UET z&gNmVIu5blL?Tmx2NEiQsP8YS=5U_g8@;Fj@sM1Qr&O(2VvHa^F%7$BKO873lsc&( z(VU3i0l@DO(KIp@A?8rqpbOOv2lDL?WNl`^gY{)kq7_$C9jB=w$)Ab%dQI-bO6u+n zBwwB$ZDjvD$qLl97;O&q2ENfpQnTZCGQQXAQDnfBp_ax~wXw zO&6{syQxIacbA$_9pNc7d0lUXcIYDQA;K=7-L)p-Ih|Ss0c3T4#_CuD?)CyX zPclBnlgBlUh_)PJDdLHfO{G@H0;6I%x{Pf z+05OM3)%Dr9TrCx$sU7zRkYSz;_VZbXJ+jNz& z$T&o%Y5;M_F~$q3_uM01{}lN?jk&8^ORV21>JPS{Dobf9hx|#D_b&HlT7G4R93L-^Rb;q5KX_ADl=QC zg=$Coo+nmwJ(}@rxV$}i_ijXcw=fop{1b3bM=|Oec^ZSrXl=uuCXk7`0gZ5$XbXC= z)1l-qWhwgMth`qJUD1tR`VuUWGsI}WHNGM%Y7TveK9l=WhiK+Mh%Q>L|BhWDI;5GY zoFuIBWa9Vwkx?-SOYS+c;T<@vPbT0;vTC;wO+O5opNAz@mEBQkNuCciJ;6HYL#>%1 z)O>hA)jA8dVt?Y9Khl}@fqVhoen)QzMf+1F;CpH{Og9=)jbkD)ixL=oS`ipF{apJK<$hy(8h9>*b@%7eQq zWSHEgjzY5j4QGmW;O{r${d0-IuSV?XRjTD2rh=R3nRkKOV6U0omv^3#i}r>*$y00r$cgB)`Vo(oe7!+yKeW)rs6Fay!mZ!h` znHW=XzvN(kp$2!z~()5=|xbkGv3hncKC!$U#z)7{SINzfMH8^w| z+T#F~9e#wmPQkZpWJ#Vyv}PE&yMxJ`>V||o1HOFGHzD#IX{N4grKrae$*zK^MR$jI ztX9A!nmEvB)PCGZjBuW@1f70IK7o{a$mwrB83&JyLSmxIQ)xzYMf9b9+Ye|LJ5r!5 z5+;(U;bzFId*o?p@K6YG=AY3ydD1*Nl8C5wNcBTy^RUwbd38z1)b*gRRu-NTN>7 z*Q{X!m0eWgWPd@nRWW+O9X*j516lDws)f8as9wqGC4p)<-Qk@t;ha(Ax_nLjr(61H zEaj2X0Aht>$n)4sWbAtM^cf)gp17`K#MQ(R0sS}fZzqr#i-yZYlKjC+yvbl`h&?hD zzPv=f;1AdWcd0aUj}yQ+PA$F2yC*IjX;?ta>LjsWsw@4@&Rdc#cnaE$qPE>2qH2!` zy^J*Y2AQ!D=}PSwB+Ut6)|%XvcqGQq{jy8JCxS}HQFT}%Jf%G)v zXEfqcBGE+Gm2u1^`g!cdMrsI@|6w^pNcB%ovF|}1o=<|Zmuv|3bvMk_h=Dt zyu(?gK9y1@p@$}+@oyldMnb0xq4G#%Nhr7*g9TU-36Tj_+oBmtA#v6qsY*b5tKph5 z?B)rh`|*4&B$F+n3#@LbY!hB?>yq5rbz>93h#5iTm}khQ%DD)XYs&r#`1qP?q< zgMJGv{7a5lDn06~#1)N(yASeQ8j|-UQuzQF5p`^;LJ5Q6fs@76YENNH6alIAMhi4g ze@4Fnm(Qnu;|Juq=t&}apckUMhOxStWLiBY&$S~b4bda20TdxDkQMN7ODb-Tgdar} z-9fwgThy@{1n$3ti%xM$iooJk(O0va+iYje^Psdd#2N=MzUVV7IzvxD0}N!0 zefYm7<1N_+_YFWEiq0<$;hCu=;Qf`jQmxEd>Nf#vZfbN@uvgy^y-puYhg8^XMz-$*&+o&zm%1FNbj zFrLDW+|U9~;FCDUw1J6vRQ9SsX7vGV)+(HKjv=EKv(7!t{tgN`3jLfwvrK`W7O;nP z)WH&6W|y;$Bq-x4keZ3DiO|V1{0O|L9x);rIN=g9J$;hxFaBv}S#3D!k#F8AyJ`&IY z!F&_I$?YMO-qV|-X6@DPg z=?HPs)u8MT*hh=u*m=;_#A3Pk9ICqyzUIMiqu`-*y=GWm(54-V}YI3?$n? zq_XJzJ(JnL;6J% zmnZn2$QZxDYlE0;DYW&F9hF2&o`qME(K(_!n*lcR*|(^Odbus9 zMqxU>z8z4LFPyd>IrP%S1C(GD-La!Y&ns_arKp5liQk@~mp;LN zH{q8k__awfNBf|OMCXK0thF8QHH2D9@zyq|Ku0zRi5SXRSztk&O;+%|4tL!%nz5RS zX!Jv1@Cr2hnOui6&}|`fBr3P>V!susCbbmYje*BQ+1+B+ZU&p#Xuf>1dj2yy1Fg?c zM`LK}85MUe@X?Q)$%pfKRaO{{4z0u6RjJoL2CRRCvtp3Ilfmsy?3QdWB)W6F#QL0w zj4PnR!_P>tdr11bKr9lU!A4d(8Ym72Ho;KuZoCp@q0SzxcLe)dkDOdo{A~bxsgAzN zXNFlwHYe2eH~x&P@Q5865?u?zfnG&;rzH~WFTQIH9tI$LmO(QW_$i8~3aP?Z3cAL# ziDdd0Jl-Z#KvWU(L<^09ZU%w>)o`ci0u}@mSMk$c>=n_6CXe&BAABfdC*DO97Vyk$ z;5(c-%|O2y5ZVMJbAd*6sQwFft$>%R{QnxRtq;c$bB<@PIlAyaME5*{>Nf&oClHMXVrlH^ z9dp+N#=Eer{^IWew8BmHaT}~DaC`wf8V4m!Vnx&7T+z9{KBK$AzonswRCYauu}!Qu z7Om4BX|W!faD!Xo$;A`ad{sCumQl+<`!W#EMml@)tpjS>i~bcFunyc?3}obwc|=qi5Z4)9EXKmCFF0nUg=pw8Xwr#jlf z#hZcfP7x~z1}9Xgf+7!q?+jK_5eY9UC#SQ^C0HiQu{?ff%s4o1Csxc!ydlD`k_fh~ zNT5EP8P+13KVX%$ES75T!N?JGljwnWm^0HNXyyi^HAlj@b8_#8j1~Q&)_|djjM*P* zu^^)pf#?xV9vgtxdd`cTz}hJ+=#Tm+MmULfeFF8@VJ4B^KN(&xkBpCEB!PjaoYqFe z5rshM9#5V`PyGmmkHMNM4V1QXE?myeKZ+A1HcU^j5d#&9s^adPJTLKcJS(UP*AGSd zw8q}A1vgiMUOofK1V+3J<<4Mj32?&$q~La_U#vE+SbF#Zk4#33W_KCjUG#PMjQ^k~ zSUwIV*F%ClNBRd-t@#en$pE4;VD@#f#1j6cGRU=g@RaD*G6T51gjUw!OUFNo^f2&n zZbJvuXC4P~BAS0Q*w0~B6pQ8X6g)O(PT?IWgxW;6$wX+a0=!Tb&fLRETll3;u+tp4 z?>}(li{4$sdZ`xz*91Ttb>I+*|Jxv6;(^gBcKR4^@?2>8F<5*8cHgkR`B2>#JX-?! zSRT1N8wr=mPMRY-nj>#TFH0wL?c)Esc<#yOLvo1o$pNJBO<P0CQ=1?ch~aqd%nceJK?~^ z(DOR}tOqjv(P@Fj(k6q`NDFZLi*z0QK1ZrdK}x)U+qt=ArUL2@_dzfG$M2Qc!yoY5 zDlqaJ{3iVHQOG?f9G?p06)3L?vZ@{X{s{GVg=bEHvj{Mh${OCHH6p;qY54dZnVpeH z{?2@|1qh6X*L_$~8+b-^E*u2awPn0C@LCqT?GGp=7wNm5pJLDjbFt&sVbf|rDvp1J z%~t@-qQJNC{11W8|0uTNpQH0S@LLL0^Nc&RBY23z8Ci6(dsciJs|7wpb-v2T0MYBj z0S0zLJq1Xyx>$q5S()fTEKZc?S-I#{BRZc7i_8NU>3sGQ>B_}+YB2UxGoacR?cE6uivY%zcqglvR z7gei|Kv6PxO4T^UG-H+u?8b&I7=ru>=Ph!%;cp!c7Y(PCX2nUsI)ZV8X6?ob>$B1X zup!R$ec4+h_#zF=ir%3_BOrtNqEjA%Pd~WlD4h5j`6GH-ny^pXa#H@8QCdMszKov^ z?X>`=AF)qFryr`bf&F^WOD6njgOXdbk8W^hMIa$6G7o^py0AJ4*nfnc8exBOg9%@X zzC}B+LY{-O9O&#m*#DYY?x6dY0}FAU2m}xPp{>zWQ=h^dv8;0sw44m2MQ=d&~ z)?W=6r?V=5q_dzoPptkmz(sTe{gM$yH=&2{fatz#1*ZLhR2a~3hqK(EN6|OiAFKy4 zlfhb@(7ZqE@P-alB&p!zFBs(-<4AZfa#-I?&Vfv}BcMd0WWllkkL~t>c_PZi7uXD8mgoRF~QP;IJcD@7$4c4)tU1N6g-x zIU?DskQ(_&S{*2H-@@3>p@%$XN&*Wh=-2O9`A0OyS!liyd*!wRt)v01EUd>q@K*uf z*JpNbXuAe$E&^gs@EeF6Z4C8MzZ)In&by*FOe<#1K?YpleSz;(a9Dvi%KzYLGKJVA zcJ!3_e z<#gas0!VCyB7&i`TX1s@-#h{u{>3IpqZ!>3uuCgHD&hw48udMa|$ z1ug94?@K7^Ix9K|RGh3!SnNT-zdC#)`j^H*8S(7*3Un^ytS{^Pz)vbG%Yff&L1!(| z{Gy9rBOve|JXyKJSOUe4=DW|#6^i||nz`bT@xrrV!)o=$cbLFEKzq(%hoC)ib7*1S z?!Y<)Eqa_ea=}e35Y&K=@YV?K6=&@l%ov5l^n((PA&nEkn1Jv#)*gsevLEUboz~;P zG6_D&;YchmC%Edx|FJ-*0VBNy5+&e2ae{vZJ-&cK3V1J>KkpeK27V@*nfX8Qv*&yMg!Y2;i1&t`+6+QoLNKeX=v&dJ5rzzMY70XRVP zIMa$x9}Af$fn6lCvXYGa6#REYUT3fa9ZvTFw>994VB}f>>%0l?h(5<2@LM!oCpwLL zv+qr;Q}h+jLX(JRuLIe5ETwtKVH@zwgXgRBeI2OUhTTF;2M`o`N&}|~{CNf)yaJm@ z*p@2#)d_?|Z^_qSNO<(Zn5Pbu&Le1V4}9hYf5gGN<)E57 zd{%_s6&-d5A@9YBwiNm#16Y>8c5jF_{1zG$SP*@N{a8&7R?l<%5@XrhV^-$QI_B_Q zA6B#hsUM9*Si{Nj5S;KBEZ0IlcjVN%9a~-W>)Qv#jDpfV__;N{7h&mVp%*UEZ|D+U z0C&!Yx8eCBw+#0@q7ZmQ8kpci%z4P zu;$-^#WdE~6f5ORu$l+|w1ZQt6l;)=oD^;nzcK>)3WFPN^3F3L^b)yqnQ3cd~ z23PU?9s&(fR|yCV01qF)hncw~;4FF_wk2YUx&+AUKcPu#XmyG3Q4< zNkdvCBUweqTH&KP!&^uAUv#e)I?fx}_!h3{0Zzh^h~Hz837_sr_$Cty5Y~J=)cSyx z1f!ofAbA}8z6k0Z1c!?=aTNMajORekSm7L@V>Dp$k~Iea(eqGj06cIN>o*-q_6dEG z&x#ZH|0HV>UCEzAeb12!!prT$C{f5}2V<86m*vo!BY=}9@Dy^F3cFy@8|^Oq+$msI z+=|!X`O82+fi{DIPYt-RG<0p@R3t2gK;)7WdJ)HNgkP0+WdVZ6011aJKkN$@A6SmugV&6k7v!4S( znQ+l-W;8)-E3n3dmu4-K~tgy$4jz!a1kGQX6RRJZp>sw*#@d%klqw zAo&^oZOS@6GOFlB?Sbrh#*R*KqjHLoOW@Bs4=?z_0XrF|CKlXoZuJBu2p^;!FW4tO zxxs!!r+XK$eh=S?zA&*!#}+`+3RQX`DJ~&%UIIlgcu$Agg}g3;dPF=#8z}8GJIH2k z6?{}+z0purCU_EX6MFd`Z@s}bILAy+;ei*x{tcXPhdD(*+E4r*&+LA1(PJQffSu&A zW+&^s0JMCumAtU`eG8RCvtAS& z7!OY;F>+}nxac4s4irPd&1bk;XWgg3RVM$Q2O2whSKJ)svF|8W`>9wXQ;!&4tAI`^ z1#CV8IX|#s;79mSY-YrND1*ptgrl>K!l@ z1e8U$c0W#oub86D}VELT6J&^7~=6He2*R1y5O2N!>N(Kq6JY*<_1u8o&cbJJ80!MFn4sV+aARf;1^7j=moCV@ zkMKgHVos_KO?bh}5JnN z{A)mc9l%E_GXI?5FOY>JeeJ?{J=@OEc9OwkGzPY@PpnP z0_UFGUj!B3dwkDn7y`Ug}RwMj;R$$@*U)zAgLpZZK z{O|#o)qy?@II;rI58ycuIL{Z{JYdA(=mz2CD}%GeCryDC8 z&iUvQ`0HKlGwOjZEsquch@BAY2tK0NgC8^~WQK&CAA}Xu8SQtA(S+^k#4_s28gjsF z08sc3snVP0JlJC^csdw({=*70i=|#9EA%Nor+cCmk~tNIvd)TFB~3X&kHTZv9jU&B zwRHl1HSl3|0L~5YIJJdy#M%EPm=q`MT&Q2zRbAi(;s2k77o#<>s|dY{uI+;vZ5R}0 z2UZ#EyFF_u$9ZxpaDC63X9D$5p4yH-M09y>$#+7J1jDz&w-Czr!Z#BPw#KkyZ?I6S zSYtN?J0tk+|GlAw#y3HaE~xz(^ytGgUliLw)p_2X&&%-kKt?W$ww}OfojC!{!;WhU z^jkC1EY>OP`3U6ZJLvKMJ$H4eAq2=*2j1dbRU0aA3~tO&XBmF##~y_*zAn3P=WlOD zEDbFC07D@!OY%&8-ff2LE6tv)z@iVId`1?DdsrLNqz7ZPWL@QfLqjZWEBEFHfc19% z?}=6$#0tA|cPwt##pz#x;>10!nfJ56fFJYbKx3t$k_dJyC`D-J5JnWID+ljNY8_!kJ&37+)33RpBux!RNxOE_@yXk%Hb(SZ6*7VRR{aJ4 z3ke+w9hQY+tk7^YJSl99K%n4)dqeqDJQ>LMZSaYI!#?VQE#XHLaeTrv)gCGpv?Sn^ z#jb>fSpqsw=lw2>Dg0ce;Ux)J3D2#FX!2(!H*BbKthoZP7g1`pS-0p}Eo7qL`~cqY zXM7nP)d3Q_8Le+^At7C8H}MsWrfU4lCR!4AlW!TekYj;;?c#Uaauzd0S!y zv^(F4XpV;H&Q!QP8!dj0u`d{c6n)Q$%Ex+3 z0OG;GpcUM74agKg8#2)8h9t~m$HK$52aSH6v7Vq=mjZ!z{B#isdzIhM@V=1JzO1%1 zxar4w$rJ*=Hr6M2$^(u#0R-N#o~!)pVy|h;p%y<;0x74mPjMgN4}Mz%vrp{q12bO* z-nZbZy;zk^}60sYdz=q5Xl;T>_~V_`fMeifM) z583%SM!3QMqQ~`h{uY2$NAWHN7TnNtpTJZRZx*5_#4UYk_9|BJm_KKW&vN3vAeT4a zax&V^+~i4P`99!{*R1j_>qua(*Nl?IyvfCH>a64~vp!*E`{0~7bgzg<7QQhdbxJ~w z72wwvU^|VKk=evP&S3TL#$FH+)Lg zI}&g_gI8|_tGbG1u#UaIXY8d|p&`Yxydu)59~2nISU%8+xY4#Vn}|oa2*e&T`*z+H zck9>Th7QQg(ntvrp?#B)oXBF~?@#9~6T12o@XFxtc4$f5N1x>9+N{f+6MYCYB6eQ^ zT|5DKAUHmo84f@Z$>8EIPMw$8;~l8w4)i9xs-KEaJ|V^WE36ob;#Nih@_|rZ1^zDp zT2FX88A=y7F;1|!j#cL%7vHj;`^7L#2D(+C`T!(YI<%b(tR29z92k9q<@}_WB5v@h zuy!vnM=JZ>5B0p^xdL{w7w){k*jDyi8tzu%dk?II2qch@qeXDUTPQt^=Y`+<|1@+P zT#1a5|NF(9JoAD-31ICtv+jUaj=)U^fNmZ(uM6nBVCC^pNNzDr#sdjq*C(RGB3OM% z=p~i0pRkty6?SL8Rb5vYz-{n=M+_LSgNd;rOl2@bNr0dPObAqjAfQ#EwvnRJN=Ru^ zDT$&!^re47q`tQ=mD;E;q$NY6BuYa*LeR4j*r+wtgr+BA)T1O-i#FM^m>t4FDV=~?^GnL6nXy% zuk%#!23$Fc&hw~j^gel_ z`J(0h5M4?amO#lhNK2hcPT}^`hE(yrDe84%18Q>8qY?u8Ah!zo5-ZQOK1@#R0$B`_ zO~2kxl0cqRe%zInZ2l6qx!mvjNxsug)J8V!IBHvI*=>C2(c*2j^?zW&UPo{C=d!AO z6%SMCy4L(-v&vwpp|CPn%%m6AztA={N@uqtj@0??<)6611y`%8B*_lYi@5|8sncfbe<}K2gh+F6I zd%U=6z-LE|(Qe)+;k3`}_VQ%!;A<1_`Feq}RCFdkxs7IIO`Ns(1omyA9^Thy)=Am9 z=(C=mfd`pa^yd)tCgb~(nPep}Sn%$b?8K0M51_w_RUaXvOZa+G&wqpaVEhD5zs$mo zupj%O<1O^>FZ6#2y~p_KvCfNrkF(rY*_<}Ce9hvVDr{jD%^Yy$S#tUkkB+$Z zJ2U<}BqWx)#3Cl2+N0Ndtra}U#15ZlX=yjXs_~N5{S=ycgP&_L_7QYF=&u`OmYtWQ zewXk8*#S$P?!5d*Kq!GxcW1T`5}FAgPh{$TNoJIduqVT z?8_yVok?4!h;+~L6V-NyFUeZ3LdQwyZ8WD_gfE=nQ_k zyE1%bhpC$Oonb@DWQt0P_;8w>*0Cr?pos6$T=5YhB|AT^5Vx}gqo==FUPQ}_){d{2_L-6wsB;2Q6m7m;~ zKW&ymNh2I@*Y7R#Ey9ZteKvSyzhWQ$#&eJDh9xr_n^EVwMs}+LLhEV6uyJb8(*>Ki zS?V|Nq+P3naF_g2Z((=F?DAXayaWv&xT1*0eHYb+4ynHJtp=Eh*qeJgrTr?uVB2*3CLp zvtRMYSx1kvsgeYLy}(TcHWe;*;a3OzUZ360$}KkJuz zJ=Yld79aT{eQMI*$7p$+?Y)YMCbP+t#b={ptcD~R!zsqN4a2>-Q$oL5ji3DUbzb7_ zg0=&wU5%oPv@++bX2RMI)YY=Jo+_x#W^0`~vN?mFZBgyZpgIV580`- zc^F^bho98&1vgXlaoGqXB$d6*L{Z5zbQ#|>PjEC@lErXzMSSxvUR~gY4x;NA%8#R_ zw%}?r6uY~Cc`RbZcAMWU9E^02nMEq5hH>xT-Y1VZL?Wrbiw9}Kr6#WxxWAA;?uF01 zcd`&w&9v(;W_=A7_OX;V*qG0F`0Sgv>m#e!R! z(6ts-kE?gO*Z8BZ$y%|DM=8OZ%i1?UPQbV^0N|uvZFPn85 z9T(u~8{8_>z7Lm2N$EQg<6r&NzyqaXdMVzzAA;7gLzQe>qPLmeKcu&7u52}{7C4M< zOo!4dtUx;n9VWwGpOyQ5I-2gL;W?YM2*LxFBme4)m@77b0Fv;kxTS!K_Ru!G@j&=ot}Za@i#do zGEiWw5`JbHw*@shRTX?paeV{bik&=1y4`f6zrdfT%=)gzSodf(*8dtFq>aSa!C4F5 zwCShc^%*bq+a)m8U|vINX_ms|O{0%9Z};=3H^FE>3Dl5PIV@bGrMVNqe*Y%|u4Ne> zK+^`kZKu`MPsz9yvKAHXQ*G61ME6(mFVRbCB^n{?aE?Xtc*TyqW*?q-8}$T)ku zYiQ_?Sc)}xG)r%*P##MgYn~iq50s`_ZmRKu(-u}OXVvCwyAYq-efA(*v&r|vc$8W7 z<7x5`!}NdD9Qsj`Pm}jw40&5ozuEs!sA7MdY&VH;SD~tobmEDRYC8$XK85Y90m{vB z7_Z_9XW{r_ZGM67PA%IZw#2+rm*;7tP?FP|^IUtHRZ0Akny6aT2Cb29PNydlS|;l? zgHQWX`(b*}f~M(Kg2UDfEA*RP`(SA%{%l6)QoKCPvaK!r@d7gG@xGD7dW>9wj#L-L z50yd3D7i1R(tZw4C*w^#Ss*VK?*i&_n)((5=l`29cBqK*;*oQH@%X{zpc^%Y1XPuTya{7NP@(BclcAsx{&^uer1{*`T9nItc>}5R`mY_Cd2dcfwzZp(dHn z0_~U5fR*@=EZ{k>oO8M@zc&|U;msgCmlqh!PR%Ghx1*qi{-wqyr!$uuv0G;30X*%( z|J2zY(<)p$%!6HW&4~BcS(_1(y@^BF5vYKc^Kj(i-{ z&tVmAv9nn-ma}w|3oK=2b`$4&j990?c;>7pO8JIvI+u*@AS9Qwcq2wgrCTaZdhxZ{ z2vueotzH2a55j33K87dlewG*`8LHHukHw&=lFhzaJy|aB?L_ZO^_kPcVfVHqtzjo?7TqOA&jep5UCw5?5wbo2uwrbflRMG#fjWpz{k%1XGEhCqdemq#Hd?el#n@Sn;f$ zCXig>r0nH(8#%l2$xY{ENb0!<&@ia~*r$8QpaDmk^)u}A3cMTfZSXK2C9TCg5-(jR z!Rt6P9W9B!N{te|NoDR0z2zK7AB|~*&8*6^AJps9TRt0r#GHi>e%g#US$|noB!76x zm?hp<7kWDzH=>uzNo<M<+7)Eigxnccqa#kbTaWTzq=Nj@MxJ=xXpEWRhJ zmesJ(Y%Vo=PF66d2eQ6dB2Ow&VZB@#otN6X(3`Q`lN0kREsP54^IlMF&h z5H}6|SvyT2=VaNZm{GI&^y5wPl8Faq`z)Mjb8VHe5&_0P<;?J9h%NEkL)7(|m^}N5 z2T?GkkkB|SgWFW&PA}QIW#_KFB)VnWrboAITmMLtzh8Lag(aJQ{p?eFe*fgtJD+=g z_nv2-UGl4Eep|9-`;Luw{C@q8U3dJx^N}C;e#ge_OfBzNwt8{LeT$d>cvnZqn&k=s zwmiITN1~ve&piM1?pd8r?fG3v$)4RSX0??1ZsUqFrlMrrBp1|{&XVo@`ESf|`uDqgW;T*@PJ$q!qJoNwfQnhfoC9FQoISJNna&(h!5q#rpqK##F`=l4 zh=3p&$!THP-3i_O{=WTK{{io%KkV$xbXPq&)l;>{9e&6mLGQpjdC*CN&%gAVPK`Xz z^S!{keWHHZ5O`^?k$3K}YleBd2Ks>SJTHpvHTmGL&tiSXKVDOME$B6)cZE36Xi*&N z)!*io5g3PidF3Bt>&BS*M@3xgAqel@6lZ@g>!0>l&6`^7*qda#7g2Utp48YL1 z<8TIk`{%fZer&IA4nm`@gWU8EoQ$8))J6psMuR@!<$g0f84XE=H``NIAN@7PwsK>9 zHawi}GN%12Y7?W{jBY-=1E`AfZ}M1#sd#UZn+63ifRAa8eP;Z3Tr^DpM=&;-b$oQM zMG6$DW3#)TP8-lYH=@nDEhoTbTTC2uMVdMZC}L=z7=}F0jN5)@ba7G=#Tj9n7Y#GI z&n&Nl3ED7IT3F@;XNm62>9dT+!*Ue$l-W&Vig0Yt6@$Vg*z6AW+tJU_i>IBWAtn6N zM+q-^<-O6E*X{4N?~F1=LpK()Y%AT|>BiZf+xE`p*_N^&W=JTAc0|nospU8;Q zV0+$uYh!|manydAju|v?-|VsZHNN8;V8RCHGMeG@) z0rWL{=``HYndhM&Sm0^wPW#k;I!xVXHiBWl{T=R3!`R83(;?m)AB{>jD{vu2#&bqM zModzj1vYEsW^@=h{I`F#5sWW(r?cvzWI7|NS)gAeb#zW{|Lcd*(MeO$zSx*x<$OHP1A$?{s7A5Be`fIT)6K`|+;1Fa z9QPZ)GY%ZWM&?CHG#3d*j(BIb&uD=@+8y>?lsswrYLqfwKrw6pQ6UzBF--~_|DE0# zO^tg+iZdtDO-x`q?Rdy1L@&r9PZgqrQ7}yaOj9VZ*?nW7KW2GXIS1xcJIO)dw2iAS-48jtc)P zYlfTgVOt$E$pUZVrN!13GZ(FelVYQkS$T`l>^Ud@MQz(wQ%r-6XGIA%c{SN{GnoVy zX}+x$HyW5NarVM&kilTtLy<2g*~Ukk1(`Q)BENiZFhI-VKL?k4(s8+Xw|h$Dm;4*o zix$N&G`=~BVsxH2--Ps=-niI_ahxULE=Ldd3SXT(nXYVaBlwOP9Lxq8T-kO82dT3F zXw3HX&;Wmp!AM2_Wlw?u_(FA}Epi5Amob3UL1D9-jo5ZhvpH^t;{AMLkQYCL#`ezO zK*Nl;?p}LW+G)anR)&W zyG280F}KB>I}IC?9pY1qV2O@^$;Je4WZGl}P8o-R3<%vg+j41J*)Z;-hfY?C-#RKe zm>IDsJ-jns8ZGQ@!=K;H+EINlyKMZoZ(Ib3q?^VtmRT8S=*IeAdYP>@yJ`2?a~1gZe^*Z8A<2J-Lm&tt5j-QLd4G zGCH#{=AT^Tz?cSy@zPlfUZJk(PLc063wVKLk*Yk+tQMEx{Y-X%*q+(;31&4+oCg1$ zK1Mr(;_vtu`3GH#zSv+dentdf5@`N!+iV7y9DR#(ZLd3w=WIXrr|^H#lf__`D>&^n znKcR&^ObFNhIx$2ri)0H(-7mgX@&6@{y|Ykdy^la-d5fm2lyPEOyW#NTvY3#J^S9M zhc$z8raK8Kw)g2*WYgFED=mb(5*>Ezt*mH&jFcxdT z7DJPv73Ioo5_C4(=_(f{cSiN1_91UhAIvfuF4!RZu84(E9hmsXw@x$RdR}si&$hVR z;sUFn7A=j#!A5r4RirqdCxdG|YFv_Ub5J#M4DsJPQQO3|x$7@?mszRJP9y)@?rn3)4`tPiEt}?YRS2 z%;Q*f!)WB_X0JTu?4f(!@Pgler!+7+e}v52W%N!f>Mp2~nHF5o#C=B=nMyvh_@l@T zA+Iq^+KQCJ2NbP=VP>9STl)&EMIACem~LAg)!oau;9*?m34@!tofUGtH~(t)8*Jd~ zV02OmUU0>IXZ$isaj$Wh_vVv~1AJQ47RO0OVH`(!lV+f`S=|Ul8*DL3QM#Cq=fTBE zdJ#4a^w;=?t4Y7JR@-W{VFX+@iowOFPPci=DteC2tjlb_J_9XG=a3TTvx&#?^yYQ= z9;!03!=K*_0_L|npb7tscLs$)SEP?o$*h}Md6)eG8BzmvjVGq3CKp%*o+|Q?`Tv*m z#zm;@tb^4b_?)}Vq7-?;r_5>6SzK?0rhE>sfXb{>aUIDp0$byNX{t#*5^GdoRPMA_ zCpTDvqJI3Z92h;#AK-7z+L?3$5A-S0!Kh$1j?bZsyMx(Hn*Sd6x%+H(lP^bU8`0eX zhVFMaufxj8vVE?pH5$v2k80f)sd!89J9lkauIP$sO&#U|AaC1-=HL56m;NU3D zY>r|@i{PZ3@fp!U?2Z_sY9z0P8}Cmlvcinj4s9!Yz{aSK+ROrP%tn#_uy%+iE74u#-08&2Tb5)zXGD`)AOsTo`FEU) zSegCK>P|)_)^V%Z7E73aHvdjsWBf2!!52Q7tu5xdj@p0E=)t%M5o4IuH;V%;txD_i z4e&Fc;bhq9y^{#zqWyH5!Dz;3qn^bCWE618Aa|UxaZL)1QU;50Shou%^WDy#yVs)i zx4fiir<|{MBiShYfrK1tA{4@P?^6O*?NVtO;Ew-VH$6|Ve z*^Otfz^CaF&2zZ~Fd4QMBREPrd%+VxP{iJ>Csbrq#vvYX`7hLVoN*Wfp^J-)^?7FC zPB`!A?WEnPZB%fShsI7)o!7J(pn}b5@r`*J#)THhzmpi}Z;aC>8D=S<3!|WWh7EGK zy$3)ppuMA@Nf>i564r<+v&D%HPi&uY#HwvJzOyb)5}DaP155V~9s;rBTJaS)jQ4hj z*&~a~OdCv38P#!#SCcoB2AhwOz?y&Vb2w`hF7gr_-KRz;ATWpwLZ0U`X)XF#9S+#OPv}x;(^j!$xo% zaK6GM$SM@zTZ9ofnbBVP-JWHBCpkciPMHK6b&5O%HXFg9G+u0PmyCns6JmoH)Dq>Xp%{a|>=36XBE?QWlh~WY)wxz34 z3^^h1wpY``?eBA(DnekCM_%k7I&6|*5F1q-wZQD})U^?q$Hg{41C~HSrHz;cX?Cka zMla?xS~$uZ=H!J&0qAFvY*-lmv58Lm9aR~}Hq6K!*e;;6cP^?k zyXT-ck3~enEIh?CNRjJbvHR^?XbzMPB1W;#7>BuwJp_g~&{($yR5EYxq{GRYd)C2f zI66$twwTlzRP;pV68azqW}|r)e32x0%hQfpCM}L{&Jr6Rin?J~A-hIbCuK%q`xe~Y zKX~TugqzSCkIl?R6XzY6sR(&icM#+9EO0`n;z$N7yei@WCd_YGaku?LQn;V_%x>Vz zZ4K4@7WW!oinKMV7@v(t1_7fRe*Cmp-|%1zlM0KP&1ajpLh6mb+yz9)M$x|5v&axhiST_oKfF!MXxQAGMt$eh^PfJhs!OP-)T4!Ym`Hykt5(@9_+vA z5by0Co0U6wj=Pwd-%J~M+QH}Whm)q?;Aec`3C1u=b0<$4&n>dz9sIEM2(z_Db%&!p zjc&V|k5PyBreTZ;+=h?w&$L!UC!aG5-x?M+zU4?ooQu=}B6q*VTds%EUWucu2Ie>n zM*M>x(9-1BEIBwiZDTf`wW^Z!uv)Cn(?%_$p5fy(#%RPHe9ot4>x%l13@|(Yk!F56 zx;PpjVQ|oK91cPY(=JDEzBL=e^Nhr({BHcSIZRTVZE$+c49pDAfz$Ndfnu7B{;BWF^lrvialr}dsg#tj#sBp>jho|^wG5`;p z1uOEwaB+F1SsSxU<^wHa08*o^Q4YGe(fMs#J8P6QxiMWZ9p)M1C7&A4u&Z#%(Knk= z7U&FalLE6U(4%M#jF)_4vS_%QRM=WeQ7)i{Q3w7QzmPa=1#mEi%~Yh2Ngto`gv|mK z%v#v}h9mOhq`+V?x#Jnb!lWAfje5?)m_8Xl(QHQ_gVmlgIGm(f4XDU_tg2z_e2Brq zOkig4n}4>90uCF8>>i>J$6NOb7WORn8kYQo5>VLk8`EOr4YQ*K++(zM+_I+)H=aYX zV@06cZ5|GspsRHh5HI1UojzHVgdc{UdC3cwG^bgBmS>DwR+(~s%P=qw7(~E9%*Q)$ zGK&MmS$)n}tcaQILpqU2(_z*`3~!49>^q7@cPlmjA_f>>t=5EhZU^!0fyN zH{WAXjB;jqpfXeiBJN@^B+B_;??n5 zUG2QKUURR7w=v$RyW_a4*H!PDX$*(L?d-MpI(nVG zI=y4&Mqc9ts%5$_r~9@hSZvj|S^dw)WujIyueDdI*BX6N->awJ7{4msr2o)pOT0N= zqYGZN)ZGoeCK}n(Yr}-vbuo9;=x0>|JFBK}a8q2Z@zY*YJq69+P?=_8oEkw=BI)MZ ztf#l=;&-UDN$;U#rB|u(O&Zc(xqi><8>m&Kk+Zs^HZB#sjGfa};+5&H60bJ-4j4Qy ztIxrdaWaAh{Vhv=D;3X?W{XwfiA53EIg{^x@ zh6OkQ8KV=sf<;~tD;5J77*&t|^*nc)e+O3fJK)X1!>mEMS0UO^#bfm$ax-k?_|%4dXCA^k4*@&gdRy1`fR1y}(L_1t#c%s`7x-$A-PxE2v-JFbp+@qtw4@}56cR))ZXMQLQ zm4FPoW8=UUxX>pDC-*@aM=c;_WZpv=MqnicON(3}FMMWxhzPn=8d>qzct{=)fjJlf z2~;$S@QHC93C`#_zD0tdMVa1nADEe(AV-W3U(56zoC7lOW-P2XvIJyUP;?jQO#&@O zGM>XBFhYk)6X-2(K;lhG)A}5!pp5x8W(8Mdz;qu?fyazw^o5>41_k+?S7s#kL^7Gt zJSMsWyx4ebEU(NCr)(D8E}GQSctC+1FfYI11@RS7-83Bf00B^&q#>=y4ER*&HKU)< z6}f{uz{hydsW!0;SVw49o4iMgvk6Sdzv-i<(9FyUv<5p?3EcRMpNt5G=mPJMa9fq( zX&{6`Xd9A&tU2v8Er8c>h2C4JVWXjizyZz%HPm55<}&+-bP@}pT|Cb-SW{#IT!4;u z_79taL_;6oM;;ugLPEIwMAcT(KW1oTp)B;=6J3iq)@G_b+D$;}hGAQsmc=cTJ6K*mW z5gD3ba>J`}C!c%{Wyunl4Z8|=j4noPej0pGj^7P7_(gOG_42|IEbD}0b@DsD+B`n- z#8!>ZEWl}!gS=v$&|SD?U2Eo}puK4YvICYpTc>e}Oz@TH0XD+)t5RB0A--ezkP*{V z@QU@+)`SDZLK_4T5IVXUB%$I1y9}C&#KzWB+=AYqEhb4&*q}834Cc@VZjf)8-Voue zj@RkuCdD}$^eObHOTNwOr^yTNu}(l@_5dzIWhg|vf#jODzzgOv?}ME(=}rk-tRZ@Y zoiypi0$}&C|M1cD!=7M#M@u9EiA6%T2*M45cD-ZHqWmrN|LY*`SNK%|1n@kRp?*ts0rw z2s&W%!5n`FzIa76zf#|#F+gC@fv5e39-yyC{Z`FJbjaA?2w&g?JjrU-TEPMo>*7_S z%F1|Y@(PW3f>_iz3I&m<8a-L3@y!MyozM%c%M~j$N<1PmO0){U_|JDHVdkNbc}A<# ztn0;rjS23iMO6tr$nqA!wl(1o@oE^CC%EII*nbMeus>UM7dU~tNfZ3QUzB=8?NG-5^VcNOv0ORADqTeW&a$YW+=@Y?1W3S7EAu+C} zI~)E*_Xf%>8Y(YphJn~lk(|T3Rta29g&i4qYrRLV(KK{^qy7^$ zAtFJo- zc>Q$^NOJ52!XHWx_73*CdEHe{*pTQrxjOb{y*M>j`mjJhR|(Qaq6)aM-mcQ+9rQ_SL4y6S(C^KYe0{FqT&N3s3NF9teYNxzi$r`4 z{~GHl>@`}pSsH=80wRkRu)^p}R`%7hk`2j78w4ltVw3PR*wjGKwUIXOBVF#9&>Z{T zO0YE6e{4ay=!H!}23v^s%)^sAh>P8X2~pn)(RjIJZ+iTTXf-q8JFyXR2+nl|GrK zYpSlrf(qPr)JTlm>91>7alNN7#craXP=Gv)S|k<@tHtU}d%@IIPwS0vU8QepMFDgQ zI@U?=S4g*JX_h64A4jf;H_&dPq?!5-tGX=V-8?}&UC^x-2R0`-?>$45soM)*BE9b_kbwOCo1WdcM>3lCEdtXA)^#C;0I))I+=I3G@r!y1SqPwtAAEm4bevWct~7bo_$; z|0a(2()hb-erzoMYM^(BU^+nWD!jF#)B412Zq!eBTOzpnd&6{H=!N5XlkWQ@Luc zCz1b!k^pQoI#i>d@D01yRq!_!y~ujewH;-Jh`oN&-1CGVGO?3B?V|fSNiw^LqHRRs z*@A15w0gN9B`(5lBHfMk9rg|xMgH(t$O5t92EmVQX{iwwN_#)oh1`w>UJwJ5UtZTTu4Y{T+o_Bl)vhVeq@IdD4eK zV<0)LMX`EY1-eR4VBgzm zOyU%>S7J9LrmtY>tgDeOyszaTdC_2tXojw?6U8=(BAcXV*%*Dq{$aDB7x5Ifc8+BA zYhB;#!WS%;oLcTtlh`8c(J#`iaq-)_W4cD#n)u%XBxmR8x>}NUtarSq-b~P?5;-~1 zJ3;d_^uAZLORPIB(X5{|${hXvt+?`~c>8JmSv*BE&JcuTAe+Ro`GRJS_ykX5Nz)2_ z|BHBB6YnS<^^oike02sXL)CPhwJ)DQON{hjlU$PxjDWizEq>t6Ko^B zi<5Zb<@l9Ejt`QSAF2x<^Pl*&_^f!CxHKgmDq275J?&L{TfLM0ll*u6_xx$Ww4imm zO?qVN!qgD|7{9TuOM^>-y@GzhY2L}+715Q^2l)^3^K0kVo>_Bd&9B*Cvj=MY%1miy zc>1FB#Q1~w>%tF(W1=IXp0Y)!#;3*)M-N9CKjlA~c_On{*`8&0WbVrR5KWCTxzgNm zx|ZdaV$iLmYsqt&F_|4w-BOSHkNHz2TgMkpER4tw z%bu1!Bl|}F_55z}?(uD@n^WhPTvT##W~7q6$gha&$0rv~DD=thll`LZv$`(|Ulp$R zulB!4eVe)}b7|&?(xXdM01<*T;o4(U^ZlY`@> z8#Uq9@czR6h2z8H!;|Ba`1^i1F8nr}8om;}7@gvs;SCSY2`PN3=9r6D|$E3ulB?(b{N&_n9{| zI5udIs-Nl~^bfj9Ck93bM6ZUgg};aM!ri0YqI6suKjuB?&G#4kB|$2<#lJ0)Sz_9+ zgm+h6k4KM2)1sfE+0o2srabCy{x1G-e}uo*TkFm8e(^r^#>@Uz#n;9+3gX%EnZo4_ z?`^M@-_-B#5Ax6OPV;)iJH>BDZ$=MDmQRaLj;2IkMPDmgyk1u8Ywvq+fWM!Ah<})W zj(3iCU3^`9MtpiaB0fKE6*rCh#|OqoOJ_UyT@-qU(z(&z4Z6sIAB`W4?~eZ^9Um7z z6+a=*qs+_O=pE}H=RYIeBwm>=y?-!%AnvPcZ(aOOjCYpw;1lmt?|$z-Z;9;x?eVSg zow}}#Z-@_#4@zv~SYguCZ{^SRe)T2^(s#W7BzFJ$_-f7kxUiiqEA&C)FP;@-A9^3i zqNKfN<57wo#t62%mg}o+r8LjJ8?=|mV-kshT-W2aSU7st`=^OWp2aC=VqtBv!qy3_>vYFreKl(rT z-}^^-N6CjTiSN){r-x^S9SiLXl~KLu0nzdG=#A(B?_TeulG937l`b#+TJ~pkv?eNz zQ}Mgu2VuW_-+UY0pNUdY%cynKNXez_07<&q-u*_%bLvEfHyZL}#mKNuOT3RVP@g&F>s+Q^XT z=xAxUJbYIpE|y0mBDh^$It!gqUDKt_VW0$xIx@lT9b*tkPmp&q~YI2H%N-`&tw3%dACd68~f9| z>E5T}P4BpmzMB`{=-nvTO1yjHyOQj#iL~G##lJ^MFXt<=yIR-BlE3|g`_cLoKT7Vn zpS(JC3;e+pN#!hEtA!gnLd;DpbbvP~iKAwS67x0N_1?AK7}2ALB%L)xaRep&(^FCyu))sv`29BP&k*k0^ht zDE_3b2jhqI^NGYhJ}G+66&2v2pTzE+mEl~W@m}{H^`1~vbc{yYG2uP%lCwUgr^o1e zMpkixFeVFT&aS%iM(<|t74IeQChyiHk0Zu=PqcYjPrV$!F36verFmSid=d9k^nbr- za+j!kj$*mP#G#I|hpf!66U~V6{?tW%oK=sXq_-c)%6zMwlB!w*Nfedq?y?VOc_XAD zw}=X_dC%xNQ5W?q>H$l|vzO!N6ziQA|3kbUB`97N{M0$f?a9f>KUppQM%7?T*LczIMbYw8Mf_jIlZDA-X~=ZZ zY_1~Uwec>>E_=)7Hqb@g;An4%C^XDFMVf*R@{hisC7O@Ar>%EHF**F6nw1_SdJE8d zYTxTMCUpzyPn`u9uhb@}1ufF+99`Bwv`$uu9-nfL?<{{^CX9a29kY|%@<;iB-(@?f z`cOA(D{361Jn%GW@-@=2BfTSJWts`1KHIE z(U{x@ILPr><-iV5!-vnn%vwoDS*v|z+YXfc?XBOa!1Irsm--!5t~tt(mWgYub5MV# zPm3B3wOMkSb{b=M(TbYaA-b@`)GWxOS%04)PW&LO$;HXs@n6)R7wY{i(SaH@*HX;_ zZCRs1e#nJ7YINjdNB!PevV!d(Uq?GckuyKnW?qSlI5k&!Udhb6DG(Q)qmEd@H^Cp zs5?-@X(QOEf3a@RPZTAG-a!{RH+Bd6gB|@{xFZ|Hb*#>{mA@Dyy6q>g(O%FH4|Uda zRQstxQHxtH`m7O!s>EIFIQee}&D&5kU|!;2^3R!~#;4L;Xo)N@5#;zEXpaq|Eq zzOgzHY?t0fanL`5{KyI}7u z>?;$V;FqaGpkvfFdW%A=r6GsVk9A6FCetMwQ^YgskL04%8>*i}gXq9nIQ9(hllmFKA^%oC0)G)7zTh*~S}S+m7X z;*ZXkmm;>l(7Q<9_>d&NXeP-UBVTfjBB+n#Eq;_Gn<^i>K`?d{mwSlHJw?wy1@U|G z{^S~8iz_e40=}n<`KTkX5{FE(B9A3lC+bk^ME9{(+=rdU4p3L7&asyy_DFf2ev(3F z=_BbqP*MrKS%Yb%`5TDZ(END$luHHo(cW>ole%OsiBTqtlb^{VQ-@h3d}qjZV2!8+ z@%}4e^P{9`ihe`i@nu!w0P70W)ToUj*T^lkaaJZ-eZuaeL#z~hr!iOyVLbpD!?#gw z$42fgEcksFUGRvNW9mKJPd_KMTk4B@=)%Xdn)!uv`V6Kl(~5h_kSntQ`XH z?~>_pivGS3j5FnHsPEI?0(~3kE~6VY*LI2q50%$BN#5}|QL#@_>t}tO*o(d>R>84N ztVYle!n(u!L`OG^F3t5RRmF57+e8smM5&LnR%*PC75lNi$9e>77;D8_UwXy*0P)La zVYocGh&5Ov`BIQik%W_DVE+fpJD#nJ7R)Bz}C`OBO(46Dtu4Sf9l$YOAoPS$UEzASm+-_d)9=o!SoP-r*%d} z@eYzP>V>NWb)}x#P0#ibXMuB1afES9X1^5_SkfO8*~f+wO;M*iLD%`Ja}sm2Cb&*? z{aC*2D{-1Qb%Nw`v0$baPLBcg+D_tFA6;18`pMNmpR^bKGpgCI6XnphCF0&fS&+HH z;2ZI3Q4$3ZN8;yq*Ympw+g+p!`wCX_I`o3o$R7HX?u2jjBz5%ZlAV_nDZV3m;)!z-x8M&5|ZGKPTVOEb$N6aP;$6J@LNc zTKp}s1FNXED$-b1r*Q%+xT8npl9MGLpNT$rRMwi|$8N%m+UGi5*lHwdk}h&IY%u<| zwX}rws8-S!;3GylQj)*FC_#QjEQp<89jl$jq_<|0Xh_d_FVU!{_N6`Z#R+7ni=JnlnKc9Sl(l}=(dmd{oq(0h zMxqZoWj$KH;HZ)0%#*GCRkCQESk$($9;_>O(x}~aq0jWIu=dnV9A))`b@NWTfSK+j zc*QHL(ZobZ%zu>q{gQC)XT?(!rJ<{oQ}hs3_E+`m6xsV@Wxa^>`iY}Gl-X?+?2AO3 z39>UE3bt9wAy{wesqec;CYlNs)?DZ+>6pO5>J;m(gXL?e@snHNds*|x-qshNiLJ14 z#45yQ*k5Fd_ywCoT!zOdADJbco+vpWjwb#%MtM5xd_;^Rq*?f>J*AVxj=m_#8Y$Ld zoILCss>iVAjlX6s6dDp0+%1lssfyKostX(_`CjfVQ$}@*$GY!WU2`=5c+EOl*B`1y zKjS~^->f>}ec}D#>&oqh`NRAsag+G1@XhcJjrE}afS>aVKJmv_;n(47ns;%qIH>h% zz01SP!=vLN@vo_wsmFEAiRMIS70xO&iW*1Ig>_ffFj#T#>UU7}=2f5Gh2HUA@nC;| zPmS{=*{@qAV;fa3dLw!*S|ItItjgX@>EC71WvWb`6b+J1Y7o>9La*Q*5D$`mZH+tm z-Te!s#W^WtZL}qNPWkF*{&;_+vg!U&|EOcsE@Hj^5yAg~s)|G6BaGjaVI z)&1WTJx*3#a-e^xKVNcrpK4Fl(S~Sm$qY5Li^PG)y@w?Q9YklX+o_^+l7E8#mTIYo z>AFTWmR`{=(c!udi4RtVa zK=p)=RCRdJe^jd;$N6KuamtsM#Dyq~E{ZOQ8i}8`YVNF;7cQ+;3%f*`GCdw7Nv5ad z6=@G~CovCp@_JQCmUxT37iBr8L|>@(_^#?uw|Gw}zWX-%GWtjwc981GNBT$m!~$>2 zTfMDor0PKz>L;lh9~KUDO1CiQJjGHeHz10Ek~$yB?~GH9-6{xdXB8L#o_7r`jVi)vm&xJw&Xj zu>wcD#d!FW1I3&EvQ;beJ9V;4M9Wtt<5wxS=5soQsaHa8`1y?J^_pzp^ibE|lGt~WgKkv}OPdRp*&D2@}^juj8@6Kv#&#ED3xh~#WPOZuq3PZG92 zYi|7e7CmqMKux4Qy`?Q@OCtU$PFAFT$Ms)WKy*o;Je}X*9&K~33s(Ss6sxRND`tHAE zsmBW+;xhJt^^+cv58!X863~T41(g~EwI$YVu@~f{2gpXSo=V1njm0-af`qJ?ddb|x z%h2z!Sk$*JYwjU-Chx`jQd@2zyzw?(AK&GdM)R!_ei@d>n`enzfB%*_4# zeuZr0!Lm)n@@Fch8lt+-D#ty3npyIB+1zAl8}4kf5+<`{3Nzx&4+%E#*%d^z2rpnBM|c*Ao-!w znI5lq6@&jM*`cnmQaq*JOQcB7g8Wl+ATIezS<0)rz=yi~8m%8r(=}2TbbLzJTe9P< zwPPR2JB}64PEoc+uNe2-C5-Np^~Q!DtZPSI*zmsb9`Ssw2e;OG;Rso&L**Y^$8EIE za=E_!LDDcWQTr#c)#Z|`Vd6LbiaI1caO}2(R^-`-$p5}8 z=suPoI7Yv>68DD-25OJ!@JdPZcv*}mWD)O^ml&a#sGF|+wR%b3OI&!QG_;%GJwRGT z-TnmOm6d*wv!AO7>|$N)Wf(1sgMY&&P>*3P5IapyZI!+*lFwmUxt!$vS5_JwB`e{1 z`eBBvX1!drp!$EBqUw*6cyqq;!ghjxqSs#QnXA0@$_-DE9q5JSZ$WX% zdMbJ{LLP|iKNi(nh#$Ah>g}g%Ctb)YwL4Hr>xhouJ@_p z+NFxr;9w|w$(j}Rns|DOR`eN@wP|{~4i!cpDMJlC-#^no#itwp8{N}KvG~1OyLnx5 zdyi&c8U2~WXBj{3@8$2USocj~RqAbsHb#GH-F82%MIRm?AzyZLvaa=kqKjqzpNdRx z_4icFLoekmS~=RJIiHV4M{h;%L_bR3@gJ{BlIS(c>6+|M_BSh@zAm~h`bYSW@O1ST z@V>&Y@N1M?Tq~bIoCKY3*F|jkLG)3?+V~xkQR*$1%d_Bn9`zsb=lXN}TXf&1Xq~zu zev7d8)VJS}jo3|VulV4uaTiH1wajdMXLL_AR?zkEd;0$j?hGolj-821;ugBrdF#A6 z{%oH$r`}<&@Rjht;bD?S^2X1?3E?5(q2VRbCDF683svgbspr@C>18}19vHXwTl%M_ zPEQ@5IyQBSXmUnyMo^uqPPNqf@V#~S)-A~Xk=-NOQ+dXgXn#FHUq^3$5C8kr)YP(I zWkALHoU-%FhBZIEd4mSc8m!7K%e`3pYVDWNrNb==lJv=aSf*;8eE zsAuK)%_nR=G&eYRam8g7Ez6pfMOiO5ZOgPR-`0LxyGSx!KWH4>7u^+g&Fz?bCVD3N zpkiFb^$q^fprv}4hUJFka$cQxYWeBq-=(LfpQ{~H`@+UoHg?_8VM}?`Fxsi2TgBjp zhcs+g*}n3`%Hu2lY`U`P@@C7LJz4LmdLIWL2E(gIRA05`sx=L&8dQzSJ(IgWdv*4v z>RYRuY;ClaeutG6D=RkE-&FtAvX{$#P;WqssA=@R|B-)l=B7+9S+#UFojstof9=aP zuhy*Cx_s-}nsqe;aszVDNq?WrJelcT(YvB?d86_Y=}VN0a_?t9$da&jtLqT@Kx|- zP|={W!8y8)504Fh+&E+74I8fBFmL_B^{1>mY2B9_zudS_O~0C1>b_~$v~ANPIv&~a z$7Vk?D+|hlr&3R)vW>EhJ}ddGWYW6N*Nxir%%*&0w({lruhoAq_g1b@=Vu42Pw5@; zsMp$^){d!tuC}bawEVl$X{B@OeybZ=eQfo!`O*0k!sEhm>QlQqxH8yMv9;pd%HfsI zm%mhgQ^j=^PY2HjlQ&P;+_$P<)$rU|x$>HNHG?-DylHqiJe=R~kA^$9?9uY$`s3?I z`7r-@;qk)gvN2^9h0=oeXX?+vYYtk2-rthCDOH)RmpwQ-C_1#o5iJgBKdAj1^~Tm4 zQhr!@&z8Mg-rf9;=0}D@!{1i_yn4{4LpNPnxU_Io)sU*5%XV7!@cKvA*F;;RL773B zicDpuW4e91M|sckRgG3O+O6^KjR(~0UvFgQ;>?r56G3TtdHHAQ3F#L%zO-@2)!kMv zu3l1of8Bj`k8c^ZCBLP1OT9vaLeF&1bmw%(bR)lsKUmi(>O*-ncqn)?H8yprZ1I@X zi>W|O9zUgjN>5Wi%vtHP)Ay9#T{^XVsse?eay9|Y$5XE>eQyx@0kUe zqf;YgvwjSI2#!e&P3@}M!KL}j^M~gL z=ikYXQ)kW|d1+GZ_}Wiu*A&(k#uq**yq$YDH!gZNTH&o!w9wAGA$3D)U}j+EK>tAh zbHzS=GJ9n%NS&V=p+3R)vSYKCrY}$5D_V4s7yC5)B)lSZMQTWJOmJFwa=1FTK6jaV z4sQ)_52?rB7~L4H^jG*@O1qU-1sj3|;iB*qQF~@;M(RWPmc{-8|Ld}E%6==GU3R1Y z5C1VmA>@U#3v&u>qxRCEi=zp(pVxj`_i^1k^{>s7ZL7>yWc|pOulO^3M7ijeR8^`v zs0;GyDS9yTNTz+dZTd4sD-G1QcVzyE{FS+@bC(t_F1!=H7fp;liKr*`3;G8AWYfA8 zx)ge;SMWMTbx$aU7?M6Jy?c7kbSJ-~-y!Z0znFV5_knc#Bl(4eM9$&j@S5oAs8Om( zYTt@}6|>4`m%rt|;Zw_P7&HvVslV^sy7TKM=044x>7VV_OI4=UM606lg-L}Y3I`W% z%-@m!$)D=qP!Gb5{_WAEd@ zKd1Tpmh)4g7w*xZZ-Z_-ciA~LsAN#noto^_u&hDZgxZOidVK}Pk(@n>>`LxZ*l8Z~OQBUaj)Pz+34f}66V)0Rno2_rW{(?0l*L?fOSAR59 zmtdDYJM8&ekGVYtWe&)sD@!X6Xuf~*=Nr7xU_`qS?ON~La_9Zq3}|z3>7dejB@Ig+ z%KSUCzapMT>K>@ufAxUXm(9CmUcA^_^1S>?RyDtW*4|ND*br`bzV`XrHjP?0I=Ah) zZEr8XqkL|5PWE%fRGE@=$&B(}%J(kYtE_#YL*c3|S8VCEb+@e}YR;~?rRvVAma7}D zu2|P_-H7;{_~6n*O3zbtKeKFR*~T^-+BE9gr0dWg$MmRclWnt8U5~o6mz}fh_GPy% zJ8a1jOGd7`VAXD!Ju{8l)@$3URfksN8-LjN{T3g!nA>zt)5@qks@k}9uj7D@Wo?2sr#CvM(Y);3?4BF@YZ-S^UaPuc-7V|JSAAIZT=a5uZ~9;9wq+g599MKzQ_C|;GB4G8wcdHnhBv#p<*hBt8kRIXC^a}WvT#x1_Ub#U|5!h7ec!6S zRh{ZO)eX%Zn@g!5@r;TyEBZFvqv1T+%p>xL<=@J_o$X!Ny}%mXJLz%h7u3IeV(O$+ zt!ziR;(`s!jeLDW=rPAdNu`oTaOR_7n|ERvEx@}E|nnGQ^E|pDX7w4Dcmj+9N zoy&TbrOQjo=akGU>66+!b+BamP1PoPDjVpce4v@)m|u0xO#hNTBXf3!)s5xq3*IN% zBYLmy!@3nU%WC!s_YG$UzXhAr^?Zy!#P3krv9w`j{mMm|rJ0Y_%S!EfbpF}=g|!#e zj?7(@yG`A!BXqSbv{mQ#lEO@XhAOiM`B&$!%)gv_H5V1a!oTGY$>ken8fMz)x-qyZ zAXon+`Y^hxaDCyMy2*9>)E!XwK;fQ3Q@@4ZwzN&@E%k4yKd^FOR#n0wYjaigVc|?N}ZjL=pt^XXM|k7gLLnX@Q!fTXxB)K2D!)ckLRBco(meMnx+m= zE>ht)@NdoBn7J}_O=?vBiToM0XV>19y)(OSzJGqFZ1?QCy7hHms}DKK#F-n)uP=Y4 z^7YC=iXEORdAfugGE)7Ty6DOIlk;a4PA?ph8j|`o^K)ihYGdm6)ZA2upkr`N?yB6O z)rVKFs9s)ubj`6f6Kg-NJzlE_Ut}g_MwAUN`&Ze$WqXzGUiwPvjnuJP6{=Dse!Y4> zuT};)C7i6@@Bc*C23G`k1^*5P2Y4qJxp!mkRG3q8V~;VJ-L!)$IbW(zeo-_pY8Q8oj|+#WcfC(^hbj@f%3t@1_KLppzwj?ek4(R; zUi*2 zTb1gTS~JF9DX}^EBIIXpXq;UFU1splK-#ZzF_av9;xB}c|LXb)BV%^e*`xMFZnNu zTfNlVe}GSo`Hyg6cwKar`lwfGNg^M9A5II`X+s&w*ZE5?CtPy;=3xTcX>e zFwBKF%bq==DhlgAt(7zHq*~1hs_RS^ob|P?2wu(9xn396gb%11bhc`K|Ii4RX&nUH zK%esks;}Iy@7PcHl&V0By+z5MpseZ&Jw>PK>Z9K^=p7vCAK_DvI8^n+A+og>D7RQB zSsfs|oztq~cj1p=OQN;NaHTvIXX}`=M z#l9<5js02msn;bz^idz7su=6=`%5;D7Ob1)ALy6w=I^L|6{8esl#346#x zWVap(9}3H)Yn`MM3ltkas=Xfcfz8*YQkXYTE1w_hTBbTdy`YgQ6{mJ5_T9q6qJ9n1qrtI6ePAde9 zbzP{c>VGv4Hg-fbJfc_lLG>;7*Qzc1U^p{@+-JE~EKkJjaOcEJFxIo_mteoc@KDpF;sU9~>@f>yeR2g3tsaFh1MoavwA->$W{ zIu#?1)IJ8fuCJ8^R!SLWMOoG&=xbl#%~NOj3*M2cR(=PJ+T+6B3oZF_Nr>Z zZ>kPU?UuFcsj7sZAxg8x^KY%WbWxwFJr6^M0#i!=&7#J6cb#ZB@R zSI9=ZBxzwC0{{My*6L4Fb@Fu8;YSKj`b}nfGn0Pw&s9HtQ95&jJT<+A^!gkxKBW~$ z(&6~DE^5xK;aQK(s-$=7Sgpq&A0HS0Q}*c!J^No_$QsL+y4Fd~*m=sjBE44Qbg^fN z_4`TQWL5SydelJwR2RiaLC-#p^;#q0YzF!w*;hf|>g$q{`-LUzOLwbo&OW0jB=6Lv zyUA8uCA-O)66}$fsJZAdIae1vr*CPNWQy7|XSog5szfL0*c{0iYq3pKA-+U(Yo}^3 z`x598Jxb5fC%{?|d++zudMQ1$^f$dP3wyol-KT1HdX<(+o?FP)*J$-0y^bXn!$l{0 zqM*!`g1N71z@ws3+R5@@w0FFZbmkgS_GI1hvPNLPdx>V~B?+eTdYiPK-780mMw4V& z7fS;7@E(#ZQXi+E@;t4bfE#|}GS*Q1da?yGwSsqrs?!;*QGKI2LX%|O>p1adPwi>h zo1PH$I{a7i$J)^Kf`a~8YT z^r&poI8}aG`@TSQo}~RGm+6}Y;ymMitLt3Z1NJ4KqyB=IWn<}I8!V{l%Y0WfM4w(& zeUQF5dNJuuMXu;sfPSNdD=Y8prDu)yGf5HqGO%T=k<-h@z9ITX*U6%>=cI`=Xr6xK zgo%GBMz~qFfu1jRPmGn;ju8fDYHWJukbTx6S=}8ada(YE{m1@1ulKC)(`(2YJ$*~` z56~0xsO0cIS=;L*bw|j4(GS4-AH8_=DBU9+y;Gb#Np^wWc{-xlS3u7bYdiE_v!2Ph zByF_*0Ij~zMQ;ZCZdjYfR?vw}uj<~qIM-lL;cNqCDYN z$>ocJe6;BFxTNKY_+ioOU9G5Xm49O`_)Lx7MwX*Q5ZsvUYd!sraj3MonI>x zy{12izQ2prCpAQNc^}0Z2Pvu;rcsbiVz@IUHLShRBhGp)=kI{a@3Ob-xVTgt{Fg3z z(>dve6M5K6L{9;GJhj`&0Y!i_0gwIpD{f?+TEq=R!RO*lAdk} zZ=o4=yT#%=dW5cW@*MlJ7l_C7#&S{=y!%dcVttVgReI7^>Qi=gOifnJzmO&UR2KS0 z;Xgg`Y4qMw4_6i-*sImA(o1}))Ot7PDbyFQT8cM2CNaZdNjJigde=jeQX+cM3Ac}A zCoO61q~G^awY0m|!s|;vznA5iEGX6p!lmk3`&D?a*1B<3%>EhZOy2`*ia!XNPi2>o z9s0Q+6;H9x$U0|pux`g0Pwc#)&*4D%%RNMe-4r{u5PZaI^yM9(QQ67gU3as$fqr84 zVQ~Hdy$|edpuc-JeNV3kYf{i2UVSZF{sZH;%`%~f_>&@&n=q20+>f(GC><9b6I5)x9J=pfw z<^M)Y`#G0tXVDK{(Z6zr{N<%u%VqBa=c5oKavm{z;(rp}^fJL`&U83P-|irrRwg_mDmS%u1`n=#b>!D}r^Sz|6oSnp)DY(+d0Ic{pdL8K7qK_7xrB{XZYW7rr zENR1EvbM*4e@aK_D@MOq>po1nM~5!!t;i62uIR&L&(v*-BHqgB-KZ&~{=}O9SRe zE;ui0vuH3@QnE^MPY+QdqrMAzF;)nhTKRacgVkTep2iZ1wZS)d<_UXlBCJtAFWjTC+ik=5fo5_XUbRc8kM;Ot3ej{u!%?BiW5 z2)qqr=#>4eUS?!Z} z@`}h1>(Zg1$KSQr4D_auFJRy39sf}md%Ex^bpO(iH%%H0&)GjlpFDEGzQ998Bl?W7 zrSw#>7EW(8@e39Ndr2P-a%$&AtxS4N7z01fZok7tL-t2t3^g@ zkiBB`d9Zhb9y@$8J>Pq4c4|@dwJ&D|x1` z9h*(;HCfXCnIwo4!)6P1_A&8~{)z?C8TMmzl5SvY=tDODwnxGT=z-qiTRBgX(=5M~ zbbTQGCU<173cVwEA@E~w5%#B}tQ2;eK6ChsEO0&-{o%x5_yqQh(Q{3|8@VF3oqaj% z*P#;*d%_+U`V)zbI4{o5LbRP-baZ#nsC2h6BWDbi=^aqwf3cO=Z{(Meu!TGc?U5IF z&pB|M#EC7YCWbHSC0V7njsC;d8W|sgZX(O{%VCG{&tOLXI(qV(Y}xzLvu{La`lLC5 zi~580pS9J9JITlFBPw@J=)wNEwZeIU_(%+4`;iu^ucwWk++7lQxODR{QOoxJuy2KD zKGF4yB#1rw;LTi}LeO*Y$*xaPdjl6^WCA%%mI?_Kz^hAFmJ@V{GK_;i@;&;xEA{%4x;vm_^-R0ld z$p&3G$%+0Jctq^Nd4-&!1g+WG#yigcVP|DC(Vmkc*@uVz;~~50B0nN_pm&UY2%MP7 zUNdwLd4X5R2=N{Lg6!!*x2S{QSJ?-KKg5?1=VFJ^2jX$|ad0*jdkE;kx3i2m6O{7+ zJbQ1}XN}^}R*Da|h*LAACo2V46LBgfxvNu5hZRpL zu3|6M7t*Jxl7!{@9G==)0_X?!64_*bAU0rtAf_Lg^YMtI*++-&kk_!*Le#__9QM+a zXRyDJZd!DYdJ*;yF0#*n8UQ;>m=7H%2R>34_71!`(_w}@IevpW3HxL5dvu-BKZ>ri z|B`!%+2DI;@rJ&;wVIa`?>H3?Z^s#J?3I8f#Leu_;dCVWF6q0YvlX2sj-i*Ay>j5j z#V$|mKDtkghtFYO6#azwQFLgc#$vxDF$mIvE@G$1s>x%q!^DQjC;MuMf1v?;+&KRi zf5e=~t(|{XlI#T|24fE+XNPfGB0sT9*e76{qeubki#;Jmp*P&lvTB#~YO&{xJs;#% z#6i@^+0De+iJZDc+=Q-TtI55w4a6LrbOsNoX^`uICw)@r89U+Vxx+4y7m&+hL-32_ z&g}mouBFoyy&-17r_i5_?BOf1%fw*VdF(xP6#8M=gUJ{_$S<A`&U5Vh?t3;1$qjJ`uh{0gs}1He9N_Eqscu%K_8E5{hjORhpT z&be-!gUP-?`lIP_Mc(PnXLio=K*q>yu;s>2&RDiyc%JDlN#l$g_HS_ZFuFrbg}kF# z#J|WPdO)8t`{a4v?RCPoz+d7bVy@+qN_J7Sl1#9-0b0|$j-SC7?WZxI;Ud9~OyH&P zPsAYTC9xCdMIZ<8h5crcXh}>7FNwv;sW=Oj9G92@oPmkG_MGp_4to0csiWbm@e9Z( zz02gI{6@Tk_XBt6$GLInDtn39$H&>H_%-&iA?uE|@QHk-lOXRQ+I5i5L0_!?V#z-I z#{OcHsa0{>3TH)N$B`v;gYzr!MW*F;4geOWrK|#R9&sQtOYBVFGrpPg8Nm&oiGKxO zp4mwe7O1%@kzO-#<}jxp)QKLzg8awgGpEFG&Tq>^HpoM$gK^#%xFFB?d29ok&IrIt{R6Ee zP9%@u8$11lzX8K3^_;7W?cr~za26;zdPTD5k$t$t$Ve7>GB$-Vs9P`}=dWOe+&Q86 zQuq&y@QFBzvoYBJOWZ{ihn_+|Vjs>F;eNQre%98a48EE84c%i;7U#Kc)ZF-Q_Ua@1 z#0=)2nhILrElGHU2D4WldgEiTo)%lPv%0=uAX>-IG*2W8nZs5y7qJg^sDXGxegceG zYBYc`h%fDI;B|t8Sff0#FZgz3fcSO|?-w@NX{t6w5DWE(46}qEG=nwS7KT#`WT>Pi~BYHs(?c8tdJ(dZ4m>2uTywD6= z;An}ipeOd%5AX_Ey{ppQ_O~?f-z9>P(`=A4{D@g=I;X8JZLamI(vh&A*1^pln zA&-nCMbOU90O#Z#c4xGaW$2+8a_>aX;TE|ab_y=SOJY`+=U^Y$iv&oY;cNzJ%uMHUO;Ey znQqY?SOfmrQbsZgR_GVl+L<@lZZrxGb9Mwd4Kjm2vRVY^%i|O6Z*mdyng0ZuK(^2# z3A_llp8j~SC$=EA;X;PcdH4y;|?AJ7WQ`y znu=rKV|Rf)kq(s{&OQL@&7viCrMd25uQz{x3$7BSWToX>^xx_Y#Dee$8%B(Yu5dmE z@hcXvndYLhi@yaQd@B7CP@PzYJx%#WnMLvSI zLoc2+ZMVM)Obo(k#AckMgKuLlY$~{|mktnt5oeQoke?%~#L?Ih_VQrwfs0q3Wi&=0 zhapEnFZdRoqnF47Jj4ECThUEyATb~^Y=6Uu__Z|A58@lN!=#%`uT-*$|B94zHxyEvTgNDEQi}rJdIsDEg^)|8tDnR6-@Q=B` z!hEx73p#>b`&OAYHDC7hbFLTXFc1f^Px2Q<&E#^#&YV-ic@xwY$Za_vZ;mQcv-JIR zWpF>}Cug*ArUNwtB3RBLA-BiRQW-&xsp)VQ%>>nJsE1=;u~+O>gzlV2#=d3r272(H z+#4T-Fr-q)stHwRTRJJ3;lm-4&B?A~!K3bi+TehS5!@Y?DgY$8ApTZ(t_*rrlF6>yqT`$kOY{)P|lEi0r#fORGMV?@r~#uH~n`Ar&`vwEnjnmob} zTZJLM;V#Qfh<&j>Hdmc!gYFW6lnQnr=dAE5X)@Utbl|UZ+9`F+O-+wD7#MknzX2MH z;mEb@ybB^p=#5_iN^Ai!4{&g%2(OkKafUyq{qT2Z?C&Q68$J))hmON%Y$Wqw56Ejc zdypOM&>PQ>Ey2^WmO`x*t`b2KgTQ~z0)(f;7T8!IvUtw?z4=_e#gBqHktC4gA)qu7 zF5loki7&BYL;~0!a3xnw%O;RvfF1E2HjJ2p@hlGD8z^8g3DFqi+h2JkzJm{}DnLJr z%jyz4V)nA~|7@%#OK8hzaFfUizi$|TA%2zJ*!Xzl9+@YiB+ezbWo5moK5eX7^_ZXp z8}I>Y>O^1y4Zs|~Z`E*Cy`et-kaM!?3l5&(9CtDjJ3WW>J91QFQpPY(Lv#TJkvaa} zAl?uUkCdai_)lV3{^lt$H9agq&$v*=#bfx%Fv-c`HgI8^SobFLBB#V};lG)el`G;$ zY^>D~=+5BmNa)Pncnx18aSk6jOnp5^90_k3i>SInKgnb8JorGYHWEe#k94tS0S7tt zkMF39#Dayp;VYF8AmQ73nhn_{vL-?^x)bv-qec1_onoiJnz#sggO*4W77IwY3rS-< z)*;bNyfE@ZK7rnW8*ma20xkaEVjOe;{h`W6L_sb`%)Ra30E{GmR_k%20h93%J)ovY zHjZv!Q~BFR$aOx6hp~>(6nX$7wg$OlPVm6iAiKmU#5Ldp{@4y`{Ky@eg6ieo*!t-Cuj=Pg>Po((R%VNM-S_T!(w4KoxF07)rhy~X~x0| zK?@)RZ)602g>5kphF#`4{0g21T7V_kLUsHYP(yp7>zsZvnjX>kMs?%}Jd6Y6xkTAW zg*`>ygg#(jfCAnSgYpb;;-RQ1U<)h`W(|({w&-(mX(+_scR_~D5915)sBi)OhCe`q zWj9X+b&yi(Iy?={vC%*W2P{tpCd&kge|WZ-_gWqZgl0dm8TdN>3LW_*e8oSSY*;Rh zWn={GJ)_~l_zal%tEc4n=mT*S-UuB=*7*%wnIB64mc$F3|73Y5CzEoXDCh8@VbIF{ zeib?krr3Anj_ir&$&c_8NC`ZqE!@FK6Y>L>Z`hX123^B_a!b$}5ILEj&; z0R@m7gNDcw>7nw#XYd{yhwgKsz34pl5RK(KFa`^Q6dmF}T<1=!Q=mg8*?aacN))hmJC$xYs?A7OfhprGHW31$o-u({(i1M|S zmeTTZ{XrQ!(gzOE7eD?s9^+5l6Mw@a`kxUed6V%#^i9GUbEK9SOU~7e!n-y2rB^yc z&!7~YNzX|Vq+|r8pjpo_HRtPSft&C-xyu$=nVAtSg4g&PzlKJODtXS-a2nt_sDWQu z%eCdpw2hN^3G?{dv_EzUTWBHah=s(I{HiBJcRWD)JXi%Cj3-wt$c6s04qVnY$&#Is zM$hKXDJlD4(WpSENhH^mR@O0J7*@r|@H-hkx(BwgfYg!n7A67Oh{?}lv| zuepmg<=T{X-~n%utKqnk@4Da{s`Q%FW(%p8tO4eFuaP;0ahAM2pV13BvS}!v5l+%1 zN`tlJmHq1h1?1??#Ga%def%X);fI|X1Kp$OKwS-jl zhg)=-3=)&+5E-PzGtQ^WWZ|Bc?9u5ybdx#%=sV9FkH|4s48+C8rx#eNjl@+x0VT$P z9-2!+#)wuw#wkYRn{#F0e|_bAl#YriX_QY=uTTZMVG*AAl&p+Dd6zaqKC}+~YzZH= zL-Ibu+0?6yh0u!^K8ycE`|KuBTratvhHrRa3`r5MOWy1Yj`>%Qe7Ao2!4^)^Uwx-6 z{73QK5c<&iodx164WZXLle0FFaawAe-&(7&Xv72iv&hc4{fLWEn$~Qz z_?AANU9y$@7r#Wp{uZz1+&<$u^yrzjh!Ks6z8E!|$N7|=(V*BoNZ&0@@jj?0K22WJ z6?Yn$mU6~`-#kpBrF-}UeW4AvQJY>Q*XcE&)EMVeR>ToX`dGH@WzAo)JT*inxZ)+#Xq?(@x*;1YMP`CKkoCb zXT=KIm50j8ynmr_>zzo>Rm`jSru@lBgC`dKXROW3TTRcnP1K?VUc&5=H)rt5 zegd+kDJZ0cbSp3Z#xrEktK%XRP3$8D_Szbwap^HVl6Qm2Re$5Y`!kNseXJQN;6PrU zPacz4Vj{ZIEBd6R9cihgMNaG;&SiU|1+&eJQ+P_NXCeZUBy${c>6H$W09nvBdPRab z>~EY&EfkODj3hZk<|HR#f+qe>FQ4rgb4pr!TA?{G!-zA!^B$EBw6ua9=|6k)xeHC~ z(5Q`;=3DdgIV*z5sMBh4INN0V{2_bQitqFYS<=s^_eY;^wFl|hZSs~hU_8404SD}3 z8&;h*o3&r9`nsbv9xbAQJ?bMz>07#CJ;vy?kP$m;GdlX>CugUAhf8!2(y%*{NnWrd zIDkWFZrQrueXf6_@GXSWR=)4^iP5AlBGXpf?TM6^PskL>5r}JB}V;k^$49Pako!%gs6pVdLZSD7tleve)8RHt_S8way^6BwvNef$S0m} zhI36SwSyl|Eg}OH;ttKoADSu-%SgAi7MOfX51F#^cl!BOw2`gikG|26>x#yN!}#xS z6o`)SrKQJYZNwSRWc_LyNrretzj&L}%UpM~lBf@{baJQ|qtB>?e&~}&V+rh=w?jex zn{;0mOt1xXjH&aoL&il4`fQ8!13lT>VgDojHd-ixdTSZ@Rf~JF>b>Z} zPs{hxzl>X~dKiW1hQ8%Gpik(5Z|S%1Qg`b?4bPA3=t;Wu?0+rI_Z<1?k#-ojXi2+% zSd8CWvUXRC_Kb5pm6C7|YLh;*ao?p@8^1X_n%sly?oNr4AWBhZk5PJ6{KAK%m|Tn^ z?LWR4)A`gLo`d%Alk~=Ywf~zVC8nh(W`)+9Xq3J(X7w*FCEAG3(?jB{@#Cr$43w~E zF{D1UjBoVP-#J@=iD{w!HruxP%+Grs;+kW*J6BDTzVy&O_dgb7JQ+2zYR}}VhIg}x zhx&#iITJSbu!jbhpbBf(9!fK|;e+V1PtnY4^T2+`H4jR$k85H!dapp*kF86KH6JzJI*?rDYU}Uz`bb#SXMcG?FVf#-IKmSDJ7& z+aqt>N3}7*K3vxao}x{V*Q#?N*`g8|6a^;Map@ipK<3^X=HE7T}ZKR#)Uvn0g=*$Cq$D=BN zm{d#IiuEg2flo2C_?Puslb~7T2s?b55vo31=&-Itu12q2`*Cs{WNq{~X|$;$c^W16 zg=oP#VXku}(gq>X4}POJ*Zy*~U$3|=c4JHEV#P+DIGeL38k+HmC-8xWa5^({o=XOcPzCPth}3>%~*K%AfON*oVXEv5Y~h^xfq-*6tk*ADRf9 zo`d~oya1_L98^oB;5ld?%HS%BX%anP=`Bxg^@W|JAI}vJegLnHDLr#M9?z#7d6tao zwSljY-dNp{c1b$=WP{0xmXCBFdZO|8fjp_jIj8YCUS;Hzvdp`2J1rWvh=s)0VnkyW z1<{=JM=&orZlq8MWnxiWg`BwpLi`pJM|^3?OZ+T0_0~*8E5b6`oPCfm`G^#pgW$LFd_~4s-iKM~YrT)7 z3;7;8wLasX^jyZKwTve9PlH%D>PZ{lAOTwOL1gM3n>f__T6+bZYxv(@VDIehWyZUF zXT?wDdwaBIOiMocA~*8&8%szJt*?>z9S4&J`fLwdEB0VBY1#JF@(|FAMyDUixQri3 zN#uO16=4~pF=>Had(UgPu+N}U`YH6Km7$(ppp}+rGjY|kFqBu&J1Hlwk}@8eCzy-d z>uk@bIfqEY94+^Q(I7ld|HuF2dk@yBr(Ai3Bi^Lq_ky6tJLt3*{w;M)6bCt=H=Tze zMw%-LiRiqO6S_%pqLv6G5uT;e?F=)zG%;6M;eP-V3(M$FKJ7}Xl4*C9-cESL5 zmA(`Lq#mK1Rr_2d0Zn<*M258F{1(;ZoFj*R_FU!)IXy4~qwhwGFD*~+OqBV9Q!Mre zihul1PxfTxUNU<(=oze``4Go^k>>G=_K?$M{IwU3L|kwWms?hodyL=!9vCrt(2BpF zV#jEs0c?xS(It9Ah9Vs6cVZU%$n{EBXe|z;hT|H4gyz%=@`5?y+txc^(T%-z_HElU zX#EfUqL$nnXcxTLLhPI?>M1R=WilKHs%o)EXj1GB%RSy`VN2*V9ulyxm<{;9v#8dr z*hpGk+MqrAA`lqMgRwGtNMiO?t1D^mv~k+k==6mB@oK5s>m|N*)=u6CXIh=nb?#GN zyeGNZD`&@CT9PxP(_*X>!WTJXtD;EmO{Oi-4O+oC{gDYN*~3j<_A^^~W8rCM_|Kl` znX^>Z6YY~uIjG^KmP%LfHdm@>I7y6*;qiN;&SAYCRNH^f8gs{ibyNA(oCvcI8_mv# z+2ck#edipyGi#7Jb6KDbda*LTDE%S)gLU>s$|*5D_QI=)O}6%}I}vHOxg4DT4emKN zhbuDjPsAZ!B^QgR*3(RZcjXI9dmR{*W@yq5$D_99os8z zhdutzj~2`)#QfdC52ruu;&q0oJhnf@%7@R~K@Xs|y4+5Ruo7~yiUws!ipI(-;6$tl z0M@9(Y8Hzo`-AD4b1U*P$a%#BK|y=F=EieQ6p#TMp=aJ;u_2ns+rv~R9oUW4HFBj5 zPMyI-JY~D;b*So{Gu%9nZnq6h&7H{UGhYiY^onCFAjRd6?v|N-Y*$EwKLrKoyB=7PU^fC zm-ERk^d(01$5=C7hN~h$z8+%8J76Zs>dX+0Th2n~$Y@^90YpCo@wrnG_+-w~8GW0l zJB`W{Lknk&mx?nmDkm==bjh7y|5NV8;Y0DA?y30)6X>%uw0wJOE>COB7ncftm^rBY ztR8Ob?6t9>!_0!epv~e=`pbr3zt7crdMhq@^5owzZrCB8p4?NL#92_4nz|4`Lf--?m{H~tnUt`YL%PrUyUEx;;y0G#EY8Pq#_PGa$@RY%ej-?5-z9$bNV} zXZ7T9_#iap)fn5SWAYHWi+`318a@|iyH*a_qaQZqP6`NS?oy3&>`RTE1T$X#!x<;O zjgP@A*u@Jux3*qnEa7R*NWI&Jzw}GK7953e7+04L<|3+KdkmZV<;13;iCT`ETz8U!= z<$aT(MB5@rIb)px)PGh=oDp=-ig7f853FX%;5z9|4h!2TB=V)8V52~qrDKn$+<>#g zZk%VI5c)4W#z$kgEAE6?_N&U>C9kHuLm3~6J)805ys@)|@~-gf^0zz?Ck5fRy6kdz zi3`j@dG=PkNpA9_-Vs#{ovRa@II*{RjP5Iuty%b7bf|C2}_ZEHdP67xG*e}jCs*?+!*9|S) zA-uGFa{SRnas52<4BD@|Q{;X#-c}wPvDuH~`f6NP#6_xdJwDa;O#FE=GM^q2l5HQ$ zDSvB7;`xvrzaq!oYjHl(`APZFa#gz2c3R{*-6iV4$tNyL*tbK&PYap-Hu$uC+t!i) zRaN45M%5sd&r-fSXSZL97VilgaT-%DM>Y1G88r)#yIIa#9^ogE2m7#~$qb9$(ql6s zrxVSW#8K*8?-RDQO_*ZfGUXe?0tDwYwVy8Um`!#Xh6qo!u ze7-ucdq<0RMQw~z;(~#EvRc>Y$MtMnXuK!R)8Yf0g4cYMxf!3Wp6xzynaj%me0SuS zw3;K|89%&p@Cp{HjeKp${m#(KmqWAR5?{|JS(}g-m0!L)?tr&u*H1@Q9l5L3LzOT4 zjj$7^4D6~kI~D!N`zhA6#t1(}6EImk&X)C~9-y50TLeEg3LP>pQakg9kt6-~=uea< z4%R;(!B?nqE4mX0vcDHYL*(O7-}&6gL4QPKMV52$z0esoG37nJEv)s`7@hfoS&OsJ zd^-B9>RU502hDY*jxoH`CO$g*E3RY%R^3EQ+Tb(HDa2vs=FTpwU8x4Aj5AIVZyqB& zAhLAs5&1&J8SqUGo$CXYejWJon?M~kn4b*0B2)R_o&V+UjeCdS&0b+^n?}1L$rXZU zn*_JM9N##pYz{4cb^6`B;Qr8OH9TR$qhnbw{~7(seYIdL56l|j1Kce#6}uaw+=@F# zdwYeh$Tca(x-%|0A~VkYbc};)6u%$3>fN#IQBGCUJN}rbe@VL9%1L&aPa4y;MP9_ zx$YSA6V9YR7aGZXu?6{ctaFLZ)DtF&e5cSBquVH?vt@j?MsShtZ5chR6k0hN+VOH| z-XFrk{yO%5^+B(Se9q=*E5w*K3eNMj==2823aGqM^m4tBxVI^MHXkWxjGX1_`Qp)f z@thdgO2>Bs@%IdUFn+6HTZER#&1+3Up7&iM_Z+`0zqL5n>XGa|4@X=ibEgQ+Y*EDQ z?7W;{c=BRg@?e^)kf+?K^2op~Z8!sZPssJm@N;aP9laZW2VpUS(pb({dA7b5SSX88lxhQTvM7jrq^nU%PHl|l5wet;dHz>+WbwvYI$_!>ODNLR8A)R zTQmN3>Rudkbl9!>xZ4CT;Ds6^rw6vn3ogcXpNPR6^_Zy1@WZflb+o?|{!<>$8{>(m zIi~1p# zMGeCx3riIqEIwF#sQh60q4J~Uo^n@tyW;l6mx?bIf71Tb_Jzd-#jP9LHjb$uRX-+t z|10HxmyfF)U-?1%;q5n-Zz?|-H8WQzFJJyo+na40)Yq-guPv(mGji1LTl!k59`&X^ zF3l>vSbm|b{!~xo&L5~PuB|@2=J2D{N2+@U`m9}AyELabyQt3fRZ&A|&yjsc4jlgW z@XYFm)g2=`+Oe=x;he&mh0BV6D4tySS>f}|FT}NBQw_hZ%3GIbmp?5(AJs+f8o6U+ zaA;^~>&DiNEu(e}AO2x|R{ewOyVcEVTh@l^gY}`tKtryFe?@)LdrJ3~ei?lp+BmGy z7_JY0c5t1+14h0*GOulZ+xI&U>-s5c>xT0~#@a@C*F1mlw^!`=*r!}TE zzE}8Opyv9!Y6tZn*uVAs?dLx_|H1i(4;?jhMbuO&M?H_J2%Ipu|wzRLFF zwjI~m+1=Sy?kEqnkF@Vl*{-rhVXMMMBO8uPUOaX2M^VS?qKJ-v7j z(R)PirIRn6{AAaYU4N_HQTx%*F+*e^=Ip^ zR9~x}(m1K{qw)#mZ92BRM4R<-GQD+dJdBCnR!V`NHxu?a#JW){v5YyVb#zxrv-Uo;;o-&fusYV3X5KCAuf zQ7h)7s2B8M)Q(!ExKeS4=FZK+NMrb|p?8OVQ#+^j`^ME#ab`wir{b=~cRJqeXm9Um zf3*H^eUrxKjm_IPX%+`@5D^Xb0& zgY~~gy{;V#+ZQ&E+Jl`@f9I#wpH!b6dT!{}>P^*6qu%sxfid3+-Fm(JO8MuVr*xj$ zacW1STrXb|HM8!G8kDeXx8||?rFQb?fk+8g?d~w3-1=T2-IFOYOyS8 z4mNKt{IPIy@zmm_QTrsg(s-->cKzarb^a1KwPsYY`a#5YYZcZke4+69sL}Ir;f>{<9l)HgO)7+0EDIyh=w zp58pGxoz`{&8wpB-#4Nj+L}>S=d7rOyI$1R**Yr5-5b{x;kSNT_<7-@@_XfJ?Mt<< zU0%KXT+|SJvi^AeXE8^4CoKDG#jh2u!KwxKrRI*!Z#BQuoEeo-4k&)F_;lfk!tsGI zU4=^FnW&v~RP6_~r)$sFZm!-~y+3MbtyY{~ytRCDd8Oj2#VZPz7w(AqMQVs#81oOc zo61q4TOF)RninA^+eesXQ?UvYXiO-K;fBf9~{Q56yr`PtX?p0lT!8!|$ zT=auQGPwSvazbU--mmsPzVxF@AF#~#mRY7}iJpxcUu>M&e@6dKi*{YKYyXb@TMTYD zcxK<}eNPQNGjv7w72T^%T7A+r?N_x=4;elbHL)fQP8p(V_-&oMt#%pqZ>5WYd#az)VA#1y!W`?6MCn2t=hG1_jcX; zh0i^H(Q%8`nZM5b8%J&$xwvsrVXG^}yv#n(H?YFCJSo?gOK~-TQ;@56&L=bYP#seFsl2 zo?JX~{E_4LANS31H&p&qxwUdrWzXWi#pRnzM)lScn-iPe%^yX@z4xNJ`Xw-brRobGB)7h+<1XkJ1^Ubp;>z|_;D)|>nzOVyUGZBpB)wtwSWjeo>7zB;~oPt@5x zFzjt=)J1Dn>(y7I&iRw!m(MKyqSVtqzWx2m2bD`YF6=lpeB*oNcgyEReDv4S?Im@k zW(>bGeDCnzhvk(YSL!a!Xui|@UG0L}p;4Xdc)9_{jt)FOXylNQ8*10rRtn6&VcZSl-W&J+xLZ1I>A1OhQ*+6Ir3S7V zxMJY2s36rF{`9wj!5ah*cj?@#^Vp6fI#!6fna!wxbwS~x!bfV;S0AhXr}1Xv#QIO_ ze;T-P;I62NJ+ty&W$TWuJI*VgTb>bBw9X6v^Gx$!v7}!wtsm8m_82TV z*8F4ppW63m-?RPp!e0uf7SAa51TR*rtzKJh?s9WC{bZ9*P8>dI_}8Uhm#&MM{{8I_ zv>!eBhm()&J*sy`@Ni*cVPmV>*0oy~-@N#q{`>n!qITqj_Ng(=t9Q-leW!Qz!s>-u zU%hX=`a1P1I!Q!bn*X*ggqu~5;Lh279O+k!}*`g|Jl%qLu*#otQLpM z!&_CisG6rg6E&(=jg`4)NB%Xkb9LwHZc*d$lSR#w|?J8 z!?T9fj=rVqFI^L+^i0`w+!o`?)wb$Ji#A)dxNm;n;r&1CUv1IKi(VM{_sF!V6Q}-c z#nVx! z_Po%udUf^cOHrTxcgtP6+=P|JuXJh0B^}3(95-@z#CNYpomq8h&K`H}xRbkn*0oG+ zx!Sz`x&5*qpU{0m_dB(BYPZe$>#VE$ujxNN@b^DaWxHo+!qE2z4jx!CYPlX;IJWR+ z=Np}?b+6w2M9kr*)~3~VE$&kMapAbaFNS|H++Hu&Z;u+e4;LRQ`njg#x{kHm*K9wj z{_}cA$nlJ!Uk!b+zFB={)b?v@6dD~P?IT|-f3duI?-soWb{^2Vdem6oH~i}+#Z8LO zH(qFLJ+S4#DGN_u_|2#jK4JXS@!Rx%vG=0#W#xMNaC>*upMAUdR`KM%Q~GXPaN~k? zhSwQ>Ag&oIa#b>KeSKlA{VCeeVb+r?t zw#sKm*NU1-o3-5%b&h}2aZ$(g@=E2MqUP_agR2d`H1zz?`omuc3DkxUH(TvEtmD|I zYu`P-ef)jB5B2`Ka!y6Q?_=u6)DIgubmWe~I|qkj-qMJooL{c&Qu$`bejW8fqcDGD z-bnjk``{)cn~vbm32~|ObwTO3rD?^_6sL!cTwJ-hazObz<@RQ|c~QHrY_3W50 zzFl~uaBBJVvNh(PS5K<$6E$YP(%hw4te5J48~)qy-L<=GUoU^Xyk^&$UFr!xU3{we zqo@^nYOD%>uDN#eD>s!e_F`>P zeRAEJ@8hL^lvXZJFW*zVv$#jZYt}9sQR`Zry%!>O+M~W#eY2D|=Lq51-myZZBUJH3nC&uUg+A=9vqkPUZ(u zKl+T?&uiYP{X6Czb1U;Im6!uOTzIfxZTGIYh6=-lOT)iESbMPcYU7p0Va3CX`xN#r z9N##;u|fUw^=s-^)y@0W>)fgErNZ*{W$QaeEmwH?m5#4;yjT9P{C?@((yhhYiw{Jc zaeUNM`)kye{CDHkhBb>dqfYOBF?ZRsv3ujE{U`OmGw1C&Yt370UjMwodA}SuePF}( zjoK%c$Co#+Z&klNqL5=JoG{_vQBU}&>XFs!8h>g`n%Fz>n@fLd>FXw6H+kR5`%HeQ z^P$dFXH1`Q;0p)7aBk`B(gRCBy!2^}lN;)p4o@AL`sdoswd-czID7lvt$Lqc>V>7g zJa7AX%fGzx%XcsM+k)Rsx_r{as5gJx{JZAAI{wA+kAD7%&sUZ!EcexsJx6vP-f?(n zaA@$jg+E#Nwc?(|d#61(?b7j=jNiApcT`3FWpl;erF)<6c)6o{PS>3O&VFb1mn&bX zEZ4bAXFc@)miAlP`-T?|e}3i{W`5E)tM6w^oxD_IQgzau^Y59z+rnKJt~c@X6IYnJ z%+zBBj~iTS<`Og2YQK2V#f#SHo!(novSZ0t3NIF(ob$|_`-koudTQ#^Q+Hfx`;~T` zvfGrMhqfPj=#$4jxoY@|;eC7e?OmmNdiRf`R^a2Mr%OwYpECZ;3Fl3Cy8L+gXZ@%4 zuQqp;x!VrxFmTeupG@ptt!K5}CVh3%DIcEt;VUyjjVyjG@KK1@-_eG-dLV2Zm zE6uz8lfQm4JX9U3bhLN85WE=b9qhflczN;qksC&~30ZujzJGmTVC7eb_87XU{l@lE zPr2vZ!r6t+Mcs=|n|JcO2Vx#s>L_-+()@SxuKL||wVl6G*u5~W+Eu+E;-5*=CQgeo z_T#@;-lDu`dH3>nD+gC@>bRlfcb%7Z{;7O@`PP^pZX9#YXJXChvmI-9>{Z#T@<_)c z9Xpr5R9=2~+2QvVzrVO+q%$^?)))VB_BpdZzi^#}SA;e$Sy-}gZq(rYVf&BTr&m^} zTwMHp@$uTDwNr=A7}}=3Wqp^ZM?EiQqJNHhxbw?%%U5?_+1*{5Q0lE#s>?K1YP=eA zvxfq&U$4JbAFPg4muOCI?pOSF@wc7l#mm-W@0U7u?)a$oVeMai&-cxk|Hk~m{%Zdk zwdu8!2TmTiqyMh{$70+U4PQFE``lgUzWed}A0IaRpxG;otUU5btQW;9L-X~h2Y+4E zYh82PTH}_EpI3VR-E;83Ap(+_QRb%y!4HW-gsr<>kGGBWAinh{=&b$ z(Azz(`w#D3`CjdW46aPN36pPvifAIYe7R;VE`=N+ECUs2in7Fui@sy#@ z3=J0hi#rx}EL=T!&ERGc=l%E7_dk7q+<(W-oc{jw!>W0LME{Zf2iFg-&nnI;9@2GC*I%aoZR#hJKbTwyjJ&Ap*Im0$+-KrDwYO^9 z^ljI7VAprLPW;SCpNT2J_!WyQ7FVrLuTP7yRl6EpThG~Y&I)g>_}0b)n+#kw?&5LR zw%^eHjfmGT>c6o6&N+9_sm&jrzgA(L!i!U%pZfmtA1?ooWglJkuAaMljvqR1==}K? z%s*-ViSsK1odd`B{IwVnOx*`MCM=&(6MpHOIy78vKyU26m`djVx z+TQ(N>wmacsk_`l8yx+IJe?ZMi4c6YMRR4E<+v=9pYpZ{%s_{KD)|3Af zm%4rD*DtJ}6EV)8+W*-8$MTKkt>ewbS8IFKR*iUPslu{_n~FCUr3Fa3 zeEs?QI;C|=J63kAbccUFtNE+uNUYV}({pFfo4qr7KPrA$JTBtMb7IBopT#GOcSe2s zYRq$XuJ2S|CThrU5UX?h#Cy1M>}ObYbfs7m`*PFz#J1J#s-KBKJs{+&mRJ7V0&^$+TME&9fyNsGG{UmI(ax5d7Q{o=Z>_CW2Rq3;bn zGw{^F8G~mJ-aK&4!1o7^88|G~A&!oH5xW$3D(=y~cl*+nB`eRhKi~dV>CMvXjn^CN zL^bV?J7;w+tSqX0CUAShp-qRr8gbKi#~m{6yzaBQKaJYO>y55AdTrM=UAs@%bHc)o zc^xZgnw1p4dI{FV)+tFU@{# z_Sc8^k7Mrj!UwgFYG>7c6|=8T`SZr^A7HYjaW`g!+HyASF-q;t3S zueKjqJgT^3*yR%wpPIPzgwISkF6JOVoA}d-+fUhX%IV#wcW)K%HD=X5shwE;X|>QO zHXg1&RG(0tP@Phn8qxT3wI@cN9l56Vhgw&mw@`>l!TF{0OP{N*UtM-^$-y<-KiB@m zv`40`JbCrW6HDVu%MLFyywSjB1M`MH9{TF=KEogNzt=yb|DFElhW<5l+wg6}e+-OS zH{Q}N=$hSiN5?%KZx6mXID6jQd5Z@Z4?bFaw78%$zj9ycfzp+M3BRdcRNcF}M|Gv< zO3lBO?<_wNIB?#`uSX7yb+uU?A9idWG337^Hd=n%isQaj`ey06SSx<5{Brrvu^ztC z@N&aj4Q(@IJ#%`*Wsd}Qp3{C#`&;E1e1D`YJ1imXnUY-acLlEyQ=VN>@V0eYOl+2du{E? zxUQ)k6&Al_Vd=u-@&4yG<%`No6ekt0Zr;$G9(MA2%(uKRTXuB0(LHN>)E>Z zEiYYOwyd`O@v%!`@8&+uU1M&ueaB9Loh^)u_Q48K0Seq+7H z&7~Vl8wG}Y-*a75N$qd;HO;fTUlq6YoR#h(ffplHy&=RQJ7x1zHn1vyW*C` z3rZK4jw&BnUa7KT<-)+`Z&voJY~H?k`^uH+l~v3 zUl{Law~9FWx!Nozus%G=k(`s%qc z@9S=q8umKb&-qc?$8A3f{5~PpkFSkUY!tNpws~Q^H<;c$HZbTH@y7Yd*n#uq(w9n; zD^n_Gm(MPbv<&MaVpJMIUd+g45Q*ltN6aO^!g5B7>zPU!==XF7sJ(D-Y@4tw-*Oz0z)D3Na zY=dzR79TENT>4#UrHH}ol3zb|b1hw1u23vAVs&t4+ljF@vtx1RK+PW%?=9S2z=Oxz z9&I}|)&zbRRI4lR9rl5-e`=l3zq4YOz_;QJ%8PLgHijBk)vv6d(Kw^AQmnh#6Z1g4 z8*yG>*O<%NugE9fRR2?0U~m18@$VL~&+USE`}0!FgGSebr! zw|7*Kx4yf5RCTu};K;ZRjvaQ_$Ns64q7Ha*v^4si=69R3njbdRvVS7>Y+T#CG2Y-E zG4@VrD8>^b82wqi7ks(#Vq{pmxTq9!tZ42s3T0famm{eFI-r?KN))v=4V=sig;IG7fi0fjv z!nFAIKOwsxhh4oBZ|$_<=jC_@dr|E3J0tq}hWGHX7sLKg7yC4v>uP`UBb&Km3{}}dra_sb*T$mWEJhv9?r?l7d^0?GJ-Xr#Z ztRL?fC&oLo=i`0f=J77k{uO&skB#-ABZ8AB#uZylVmt@O$Zm<%xR-CS9i81(-u_G9iJJH6B}*doU9 zTJ!a$y_a^_92Gl1Z;3r#-Y=@;dq-&4(XpztVet9p`2VdDJN-EP!u6r$JI2nPyTZcN z6mQ15*(HTb!j=y%+!gOzKW_V=?I-abbKk;lg?HlrUkUlBHEFlshM_OkQ+J4cg3q@- z8*hLPkCm*Iqo(GkvGeq@(1fRg<0r(M$kFC9qsxv?A6+e0_Od z4ans{AD@c%48x(T%a5)Y==!Zdte(+-G#_i)E4pIr;<2w<&Ff_lTIwLOo3V$28dUar( zaUU8oWsl#F|6LwCdUgwq?j9WYRP2b4EWKxFHX~&cV&UwB6FC?rdl1r}6fM zzy03m_rii73$)!aMtj{DeyQbrL&(!v4rfoC-Z~}t^2_-1Qp71o7mh4^7}EN6TziKW zAKLc)z>rErV&e;s2XbB(cy8bKPh#;-VjM#h95jekO*yn|@H|cBf%w;hKYkwz% zemXaFTGa49BrbK$?PEP4E;)JNgT1fE#eUiYW4z``wPrmK{>j<~FgfhI}83HGSt=ei_)kedxbERNsg_YUc$mJRko5;<)U8Vlzhs z{@f7SIy@nLWo_RWU zJKJCA)T3rSoadl~Fg z{!M5EpI|TL%;t>dw}K1yxIPwkF)j8$*^TK0>E^L>OB}LJ&~$J3lVidH)c~vEkxYJ(Fjl;H9j@@haHNPJ3Iqb8wH+qkd6Z)Nk+9r6qW!z2H zpO4FKM<;yuk9#JCeZCR4@p$O1^VMIExzMrkKEU2;`_SzrKP|2+!=f$=y*wiH_1iJO zJvFZDV_&e!)~g2vF9bHN5!cj+3wDodpV(J2b#%gLduZzev9s?xVO_tA>ySY0?P7j? zQQHNvPyCw9bgw_Tad;9`^WP_|PMRCp(5Ov8Q|UxSTtBIQEe4 z6r5QvE^7;WhDK}G`-iW`C4RXr@Y;@E>+Q}7I`OBT?bTr~&eiM?)Tp-mYS`)J@#*a$ z$*W>q--=P59`WaSA-g>TM=p=Czc#ju^!c$k$9V*`x}90F$Jg5bGx6`=Lx=6?bv{ZQ zVehVe|M1TFlmi1dj*9D$@LgHwvK;c+HYC4Z{J!+qKF&P@4W5YI=G%w=d^v2^p6sIo zja0w1PtqBuhk~nWhpLIWO5m{*&pSm+2S&T!j^KqU-<^#3ce-OI%(?AjxjqTGpF|_XIfzRqE zI}hZXhjWo?4?i4Q`jha^w+4TmQaLeVNcTBIaZmKUPT;aLd{>1WPYBfUPFy~A`&#WO zy&-mCJ`=VlR#P|H86#tJKJ1V2-HFlq&2c$v>ui=YPA)a8PmR958&Y%b=b_LaJf&Cc zZ?Cv^jq9YK=(g~n=LD+IKXv4t3$q{GnOn7*>?uDq^b^Ki5~y-PtP>p+?W$w$9Gt3E z_BUT0mspz2oXwpQyJek|T0UfLU#&BZ_r`VH=&_-ldj(gHiU{ZF7|Fbd{APx3J`&^o zQ)tLD@tYb z?6nWqd7VAtIxMd3g^F&0I zYJ;jRMIWDyF*rHsk9yHg%=78aaX3eFXUP7Akl)Mkw=*jT2d46i_NCK3zRMXKF-IYy zL+w5myUndLddKFRkkh`-?K@Zbg}@WKwyvPh6GfYvX5BpFZ;Zm%XgNF&OI1A;l+aXh0w!? z!@u1a_@Te$gSTQk=TGks`8olI)|Y}a7lk!H7@F=Rs&lR49QCc_oDh>aFJR}q^DN%? zk;l@pR_E-c^TBHEek-*2_@Ms#aXG_bud&hF`z))Hv&MY4b01EB$OkSi+$p%SbLhn; zAvrmDK8c>y0453ZzBOaC&H_76rY5$$JkA6-olYm6HM=YH`NG(vc~j`6J>#lTPY zWme5{)u6&T1t+xr8QM($?em6XYFs<3y=h4IOL4)A)>#+lURD?z!OGEAJuq%oaA+hj zVzr=m(}-F24fN#Aei$0Nckp+;pmfR@wy1B5w%6ldHl;rA27$tSsJ%+t#<*3m%(|_a z7spw!yMs1!7@0ntM=>|eGomA*IdemH_XOS7#U0OvCwpUzSI(~eCwlUkJ^ibMjmc2w z1ki%OA(hmg4r=ZTtj4qDVpK~87o8p4C}=)1MsP^T&yMuvf~sZ5_%&gyW}dUYPD8E} z+DfL*@;S%H?luegIpaPv?or3y*;jSoJ`O23!Tr_XCcSr_^_{SAXVLZxuF;PfL9;a_ z5hUCe3#khH_s~R@`DCM-7*EQV@!zl}~zYR*PD&*RKEJa(q&sPKAd*Qc}V%f;pFg?iTX!HFWV&z5nC3Dld-b4-)N-kfz; z_jfSvel2wGo{+-pV{?~HLo1w}fype!`A5FjxnXC9UXRO}UcS#6(O1Uo^zDdqRtZh| zMsRndm}7hz6gUa>c(iUMZbpna&t5xA;f#f|Eim1ATv;v>J!g!aD{;2P86op#V-o{x z9T)pW%a=pH#nC&&WgOPoe;pC!?Qy|XXLZFca2nF`V@?R+k8?av#>GFt9Jw#7Fgeq; zNzlGq;FdE`|BjJ4%V=ItrmFj~1AAy*jZd89z$1DEk=c}UkLGeWhh?(;%z`o+y*T6D z8`79QHWH^-_+wb>3_X2!&Q{J3=Pu-2p_9%_Y!tHFGrZ1vF(xt7%+M8Qnq2t$Mo5rH zab8~j3TM}yp@x-YCPr}O+3S~s@)@B|<=~{+sIqT3pWGGlTqb%ijIGr;ADOk+2SWRt z`uT7S>t!-f(;K!p=jYrK|1Fl5=Y-ChztJUQ-Ym4iIkt`Ba_)jQmBXglkh96MV>#a| zrXXwQ%=koSh1rR-G^z_eH|F`DjsMMwcIU^4-wA7)F~(mqb}Cthk<9w1PEudAswU>l z(9Wmg=~rS5Zw94mYKfSdV|d~$7(R-??6c%!?hNdDFrpae$Fru~)M$4!^mMtHQN)@; zV7!bI???Om6THKFXZ&EDbH2{p^L-n}y>N=nz7_q8G1#;7()i{4v6{rrT9KRcK+du` z8>dF6TAgo&?m4?m7rb|*FXle-A!zrt&@_2{_$R*aA3^&qA-|{Me{#`?ht!9a%?7XK zlF0luS=UWI9G>m%kby{Ja@dzx+1@B;)8tl=$4o8}Ht&42IU?UGCXzb^&BnWLAf$F(YV^XMx^W z*K|%(=7ZTW0`;w&_NPPEM(v@7P0l>)2TlC6d=6p_^`gZpbPOKAV{=!&*iTlulNn?} zP~=Rwx4G-Z@6*QoJ)X&Fkn7>H<}JcdjW%f~3xsCPb#uQSirzZlusD(AX8F*6fR89N>HKNB$C6ChL%Dyl54((H&lWcIXj5k{SD&W9M7desyjy9YR2+c;%>Oax8svoK}_|2XzIE_x42bK0_QHpRX($?)Y&`d z^=O3g(g$PWdCiTSauX+7d&G4bB&(G(e5mI`oYR#thpceQT7>he@YPu5VtOyybFR+X zv$KQFuJY<)NEo2Xt@T^B#7>;O<@d#G3*vVfbYvS@GR6rVao2oN>`%{SUV+JSo~SGD z9IBin)=0<=ZqpU{J3b7$p)Xrji_SWQtQk||IkSVMqX)SX@#+a{$UB*CvWHn=#&iBjnqWbl7fkcmnS5#qF+yUEH3ccXt`F432J_yOecDAKX zJRcxF*UIv7pEHWi8k=>=mtfw*=dvH?C%ucHANr;9^ah@iv6xTXz(o;By!HMY;B|2TwK-=Sw7S-UO#lfd30-)YI(?G=bS3tfnBUxwibR%PK?dM;;pf< zZ8E1v@J-C}TKvu5WLB67K}lnbzGB?TCf1Hocu)Fq=;ljtzi3Eq30kZle3rk643pu>C=KD6>>tQen| z6T;G2!EIHF;kQ_i$B}JGK0#|l=5l>uR7rezh9zu@El;}3jxZn_lXB}0GYX`r1!v2_wV_`s8=$t#?4?T=dQORF#s!4yMSb zAtx3*7ca0JbS)RH%5SC(y6DbCRJmm2^vb-e@?FSBBe#+qCuCq=W-Wk^5{ZfR#AW0y zo|Gv``{s^#=sd3T9AXL{Pz87R>Rhlh^x|$d?KydDfg#VO@ja`@z@%r8&u{N2<(25QiN0acycw`fkmrwQZSHdpkk3o-Yj4gWj z26_!w(IlRgeNH|Y9OEs;1I7k-#d9P8d%Q>HdGJ_2vg*+V{@mIq37GrBIyh=f)`g74 zTnxU@Rb$bf@xyvC6-<|b%h+YlAU9e^|L`kw56NxMH%tlbkUMB{NX%?W{T}uA`Zyx+8*~f z-H%f^HYq;q7^4Nx*}FV(=GWFWWzAV5u3VRrNv#^bD{H(!7dEpf=%e56hoeh}zO4~| zcnT4YTpHp8h$EYqwQ%zsd1&xh44Ltye9$zEM}uQD!OUnlp8a1gz06dp9uQ=fTZoN{ zo70|2IkRr#vOLLJs|U|JV!Uc9r=E&U;Dd{uX#*X2>YW%~!5AnR%!@nZg6s?J=O;gn zHr4f!8yjBmR%TvVdt2U~%=KZ-ijB>VG0zH4eKIzF*tm3H5n3`Um#B3lI6psd=KZnz zWE>G0$)99BlAc-*F=yo`VI)*$$9N>Zl=Ft)^9=hieif6w-^myUmtZ2#Am0=Z$#+<6;HM6rrX?gEN`E4OD z^(fzucGYmPR;f<0RqVboJ%U-V3m(f4X3X%FG~oo?<3Di1Jl1FInpNTz{(6SRiu=v# z$biN|AsNOXhb(jQtNJ^~u`r}HKU$QAf-WF7!iXZ}aoy z0n}R%)XGULr>H&$g2$Q5j_t^yNpn~`dlao(?+}NWmqW<3Sz2W-MdD=6=knBQr#&~Y+hb*jd!xTOwZ9|5_$uZWpSgW2L(w-5$^aXxGZ75ofyLn{3Eo}kDvukv+ zdws|Y#%HrnV-=&O{=;qD=ATB#=HGNbBcQ&}>0;=?((#mRQC2Hxc{y~|{B-u1uE7V? z7=v;01KQ-v$iowKL7YnlX$cF*;v5zUH^iRaRb?Jsx$>>Rh%Pf{uqfF2l6ir5G~zYB z+gh&gWONfpz;e%^C-F_>R1WIJc*~60CtP7+DB|t#QCux@lVh7k(Q0<+A`7c3G%!>=o5J-s>v|~x7AvQ zu8ZUMju@f26#tj`c2SzKdDfEVZODWclZTP%n-1fzHrN6`$!A3KW0)ph^1Dy@18Zw7 zeC9vMUj9lv!2?f`zQ}});3xkK_x#HSV0QXwm?*Dy`XO>*cRr(go`k;nzE3 zBx=Qo`s5HD9piy{Dh*?|8TG*FLVPNE$y~;MBXu^y-psp29FSamiYLCMr#T;>UC9r! zP1H9Y+|nN{;`x$x8bjC6k+BomTB((T)O$QL$T{(RB{Tp>_-*5~&LLAQzFC*_ZbJ5S zu?$Q>8NAMM&>NVO^#L;9G(ED4!k5!6caXcc4J;H-#24_!DESk-B5yoJdvx=Ev8{MS z{M!>$iE-sd6?Yjm8Cpw$N7c~lQrP`xqE+|e2^)s_=}X{5$_wI%RGYEhVa1Q9<^RmN zRNfN-vJ<+ji(kyug!>|%&&^kKh1>sP~V^K&;uGp`yfBx zEY36E8H(}3#bv@Kt?^icSQOvZW8TD*EHTDs@`ROI))L?EZ}y-~oHzSsX)Qc6R{q4N z8GS>@aWUfYK|37dUsxi`)tbNQSk{)yxS|+$lf=ZJE%SA=F<5UsMVup&hG4uCT=56i zndg#+ezfXeZD(KjOFMXsjBOJq=pr08XO@?EZagFRZcp%HYTU^W;81_)YgwLvTdlR58fi> zXI5&R!aN6h(Xy^+A?N;dLO)_ETuJ|>=7_l+YScXzRr25&TNxKD%=#v>AX{G+|KhB- zJ@t5=mBI}c40-s9#B6#(TlhX4&Z-+D(T{tLBW;X6K-tcq8G31RarC1#u>iTVFa5Gv zH35tct+?&o4qM9kh0;mJA?^uT%{6fyhOf-#W?UtnbrUm*kE32R8U5hzvcMMU&z&ZFCK^jV86P#a6`?+%vUeI z*1kB_oFLy{`QKpB*#37i%y`DugQ5KO=N93 z4)1Yr0G8klY+>KzNgK87ZkmfHB$NND5$fs0wu~qBld}rEO#RGxMS5f2h+TN+LI2eD z;nB11hJhEHrB#Z zItW$SID5_c0=p)8mX_`N9B%P_FbQV6ThDaCUF0dgBIEofE4Z~V5`VKkVn$EmWF8WY zX!8sXnh%l}MDcmfmlEH_QdZXzpXp}Cv8~8Z3rRN)uozkaA2MomKYe8Ztt$~%TWJT` zLQ0el^2>OO#~C@L4jEVaNHW&5HJPj*?Kk&|k)Q_2B`&zjn5=owWNWRgh~)4q-@CRV zPTEZ$jDb{hCY4kq)^L5h*5^;5EL%cSNx^yhjZ$F$3@#6$6km_#4YDCct8qtRI>PJF1%^vpO4Rs80D zG(&WB_!lbXH)0pmstuSucm}uOV$M6QXR`{@VkuA-#dw!~BK6sbS*jRB)RWpumvA60 zR^9KsV3fA#viV30e^QSVpL3R!IxMQqxkyIUo?#oQNjQtQVi%q>y?D~;(~O|VjAU>M zCt)hu@VI4<`Zq#zJAL@k0$phF)4%K-4>Cee6its{I(h1zbBOJ+5q0(CqC{0^vK*nD9kmDoML^C)|t2`^Nu|{KslmE@N z3YG!|=>=}(zvhp*R>G?J&enJEfu+(zu~qJqKt*y!v<0npVC4z%Jq%s)6023mhZ1v3dyliy2+B!n8+_?ft86hJONF> zhr|xgp^v_~Je{(nH97volJxqyChOTm1pmvK653kG3+F_J5IQxLbve;S&bXE_B!thX z4K7%D5ieK+gFNPGbd+}T&sst+-tpaHBis_5+k2M#+}!PRV=)GL!Y)bA2vLr9ctb1c zA`b*fGX84K?r2qdJ=|mssCA`WGuCs5aqE%KpmUIrePrB_*h`;LLJvrQ)bx$J`8iLN zSgHr{kXg1U2_KD;m3xb9y**>3l)EwVVL5ltzsWyQE&Irk;0#K|#KxK43-Yqj97Xy~ z^9pek%wx}~ku*0E&iHsSfAivr9Bcrh)4{}kzQ(g8m63z-k_WD`-;CLkF1Cv%YdPjI zW)dyG7tMy$aYLj-vuTp~ULtH-nYl7PK}r}%KUow`vH8SZ^q|VxtGz08-C9WQZ6Ke- zmexC1Yvqakp3AX$Ix!E&6De|>8P)hZ^@e;s=bo0#>53NoF9?eu`W zabHZU7hKm${!hEU=L58tPm-<{a9Hfc!bAW$PqwO`Yb}WrTGY4RTKBRnZKIQ>XwC2b z)w(#8gmK%diu-92TKIeN^Z)dhsdeP+*~C}6M$6HlWt_ups6(5~p0y6e%oXjfCVjDy zxYNAbs;j*bw34pj5>DtTsYy?l8ZMT|wKX1He2Z#GqIc~ZuV?XBkBKOL$<~W|AEjWXsv?5qR z$|-A4;YZ2^Hu}+e`u0R*`w6vyQhPSpl2MA!(q8nXkHloO<{Q;Sm6Q_MLKHKC#MzA8 z5{FktknB6V~6X1Jj4(t9J0i-C86)s0k;m7o^4} zmZg02zSPXrQ*m7W$@k;*oc_Y1d>@$@19fPXF+nYwOI9eMCrOLhMQSekGeWZxmzF`o z^n)Fdv`>vcaVB*H2GCREApv_laNQ@kLAP>FM{<6$ZmCgt?|}ByfBKcQ(PASKy^%1z z$Z;5f&+tC|8L8kSOu>ufw@+|6<&kp%e1YWlM{CE43iBN3tgqJSM#tWPd2{5=x>-PC zPp-7Gtn`2B`!ar|Pk!|4qOHEizm{xreS;KPTWSm&@nl*QI>-Y6A4aQ+i}x zV^u^%tp%es0zKsVaAK9u?X$>;EN&aqM^wNwG^8i;EG^Wk{YU2CbSEQVl=HdlO2pJ! z@9;T9!F#+-Ys~nTC5g*uMYiJ(lr3N|Isb0 z4ZhJU{u>+Kcmlo{zqVNe&Cq@;Hed^8qG&`BEAkAyW`FvJN;w7`G7_z&=QD@n@8~b@ zi;GsW5>KonStFqdEd77)ztD&xKWr)6qd~2Rmo?`%Db?H+VO`RA=n+kZN$GcdpQ{hn zj#A6<1I>x@X^HG7F_f&5DwqS?X*>SlQc{d#o+GQ4P9>72o@I22`?Q(-#2a{?XsJ!| zO8(+|OE**g_(N9tJc`mf*cP8+?BtlE$k-zJg2!Z#nB+55YR3pzEXgG1=o4bH2czSc z(3M`$eJoDgr+<1(ruddRng~cbS}~@yri{x;DzTTQpi1v#8n?wbAX>Ih^Ze#Hqeh+e zJgw?Eb<3yXPLyUFe%!n?MQu5JLE!ns9wq?_4Td9jYpC9efFkE7nB+ar@XSJyn_xPMl#c+Da zof+nY#+itrz0{bL1Y2Y|sXyp2R(&R~@QYog-KHnUXLCbznpv<)+K_uJtb^eIslgJw z)uSJB#S>g7#ndj+byv#LbNqBhhb?Vn^{FLVNWJl#A3B3OY{3Y`c97hitVFx%sdKGG zPqZ|BWlQf-keUU(Goqufv@Wgmf1J>p5kUF0@1(l5&MB@$r5MY-?2-S@H=``U=txkX zJdE~GobsjzEF<^XLW>+t_M5%~H(`!3^Gz&MTjZH|fDbtv)GiG`L2`<^bvU@*^#r6FoyWKe+He|Hota4Q3dhmhsQisi!QF#9CTNcX^G(;FMolp7G;K z&a%i>j3GA3_aliRX*qh-H;sU)EP-y|1w8aGUG&}mG#=86Twp5w_Zw<_?kOBg|G<_= zCfkB<=r@wYg!CmDrShz}lPKhwT&pn-t>`~(BHL+MpZS;72sWI^oD|_VxshedPH`Ru zq@h0ale@8M&%dp4S+zioXw*#2dy+&vIEQw0wS0H-D5cExQ$)XvZJCgsq9MY|&U+K0Ck7ei9urR>2Rl^&1|V3A)#3bVJ+xLdKgu%@`n& z5O=gjgN?$!WCTr((f3B1^r20xn7{dshLEx6$e%_f0-y&j!A$s(Ez!spCMB}?#Q$(5 z(N~L!qbTC9)9a+HS~!<7)QdPs3pqoepFVZz(}>;c>BKP&|b`WXx#HKl)F}1;OzdzGV!T(GHqu1S;SU z&GLKB5$HG^O+SY>IpQ3Td+|mOsR6LgZ@G@0d_qwoSNf6Uxv^_StfiOans!oS=_dU} zbL-!X2XHyxP2^Zon`s4`@q}kd-JLmF{7ntgx;FKc`lFT96tfT<#UDF(a)+-L6P?`e z`P8bMJNm@)MxE4?7aRSb#iy=7NG;&F?{kfTL=yS*k)zOuUQ@&IPn@OS>@B{GZ%IiX zdew?geB+b!8}z1S9~r$Sjp#*%=gB-#0hMe$<65|K27IO!X`&iKYE z0(#S4Q<`v*{h`O2S8AD2l1w5L#MEob9gp+w#29M`x$aEY6PHLaXMw5xTGN&`Q@-#g z?M+;hz2dxnl1nWeq=|Xw|6&w;LbLIv?vq@~8V%aRZIOhrWCR2+a4mblz0^0)!g6az zxwj|nG_^aeE}!+ev9xR*uTvlNfc-OVid28mRn=eN>A~` z1C{ad4s}_7%sgJ@t&S@4_FJ>)Sk$n^1B9&vo~+v8^@PqC&$reo9GffiFl1%j8CEZ- z*rfsaF-x4*fU;~wcg2j=FHbO=!)_7rg6s06%fr%lfGIgE>dRbl8;g0Cd}e`nEV=>< zo6}TlODZs?82xn4D4L>?o`|V`>pQD-n9ZTtJAY=!owG)_$7{WEt@XV77F93jx(jC7 z&94@&8|eGiFTP=`)>J7(u`k!~W850%?!ewjE#cQZ$VJt$TGM}uwT=;McBl|RP#*m> znoTNH0n{K{M#01qMZ&YWa$08CdMOiyk(W& z$N86kSXdER%3ECGz=>R!p~vVKZ)T?-xcu>gm}Q#cN!>s}HTBz)?1eJj^j+mDPE9Oda%7~LbgPG8;B4|P8@nP; z<(F+$4?Vr{+Rh0RF_eBNQ035|Nc|@UmgF@x^CY^|^?-V=x$6Dw!B&6Yd|qS28Jc7X zGcbGFA#?AnIF^}M?+QN!SKNCyFQlUC zEdD98JXhg;))B;K7AyF{W)V}9Xv%nNKu7Lwa7@`{J|2yvx+$Zsk%zM5N`J)G%dsQg zVy@qE6)pBNsoR%Ip&#U!PXX;NYr+9pG?4DIWYn?a0XQ8c))Z;&F%L=SL z`IO0J)H&B_ptaAM4JRL>_w!ws6rIwH!gW8>D_&w8e|5=qGUHl@!$iw?2$}kxKBjWn z6NNbJk6CW62-?FL0dcF1tCUP9lqv_+c59HzR&7JxxM#xi67#U*m3G%%!XTdZU9PxC zVYL+(qt;AV%#K$`(j%sQ_VT&zKvkGaPnhipLhMwBbP{`C)4x19SLR@08xMLMZhE4o zU*G_;dYW=8pm{YH3onq=iSV`lt%6hAqS!LdJcXDR>hTqdZUAee7+DfLTTc2Y` zoO+Fla|fL56a>L~HNZpQ^V6k>AeRknr!s8Xoly)# ztuM6Kw_GtVH&Dn3eE!qbhtOPpd6EU!z5EP29PrdfS#qo{tc4w8eJJeP#e_XJ%Y)cO zp$DiW=S8X>VU`P=sv-!>QL8gtj;|V0Y}Ej(S#~y9_x-+5<8e5;$wV`FPHK(VE9btf8>l@xXubTSvxc)l3^+bl@Nm1}n znM~D<#Mv>ntQcmxH>NL`#Hd25)a<1SGtG6)yK$?tlz@R|Y)muQTE?;0+CrbkEzfc< zMmdmmc-m!Sh?3I2DLIsccPC+{I9)3<_3AjNyQJ`Gz<7U}XAV?6c<+2_q}ETq@hRW* zFA{Sh6y^P{gxaA8W#sgmT+YRhjk#op6b(f0Ru zalyI~{Z3EJSk+aPJ6lgWyW_({3}CtH?vwMdItz`@#m&C>yqAO4;*OUKoUDFvQN7S> z-EeD5PYY;Eu35z;E8_I>iE`y6O^c`u6t?6QLZQVdb^KY$D zVSY=qzttBmtAWnbE)XZ}jH%T%uXT*}!mTeD79Ah`PDSe=PH;XP#ib&=>IGseOJ?&e z3VjiBG1&t<>bC(ro2&n{TQj34%VPHjo8oKDdk&w^S?+0!F_^#)MC}Kxxgr#Ck@gHo z&AZp>&Zn#|Q{7X@eX$fZ+pN-u^D3y^?;RR3?*$P>$gnZ66@}V@2@}w&6t7qkas1(| z&TRB@?%H^4q@5ULLeTxn*$4%7v8J=+#lEiJI?6u}t7s}}b>13F3&!C;MW|}1v)uYp zy-;oUDAs?!U)|rfp=CMMTa0f#HhTcRuOAUx{)t6QI=^45*;4HFr*UWjr2$?6Tq$4V=69Tx`T(u5(*1ULv7Uf#9aqH|8B$R|qB^LX`s$5UFAq~} znDU!io(`UZphE)sXDFXAq730S|cSZU;|2C3d&qS;2a0c;heYBF`&q zDJot?42!t!LsC07jIVmC$?{@$zhy0kDjpN9`^z2#VP&`4DbIdZJJnPk<|lNb(F2Xs zyHar4qrsm0=tMGDuVmLTcH2#KA33!wzp~#P`P}F1qz&43UVO$_Q(6=73kyUk$&pU& zOn(OsH!N5S{mxwLZV{M;4~oEv{PkU%W1ZYJQRB$yvRw|%q72#c?yPK3x^p^B?^Sdo z=CA7H(+-!Ox(8$r+zQt2 z;#8t4iZFY;h{g<8Vzb^jMvXC#wp$gjB_bG{QA_>ZNbi2viAO66i#>&4!y1%T|8;t{u$ys|Vk;1EMT-Wjm$NoGfAG|!)D~oz(#0wAB>eBTzaZjOjup(wn zZRk8cvu(aHkhy{n`wF#B8LfS+8x+IYLJEQ^>}v8{WaElj=*Zx;!?d-8Be$m zdS~T6cCqSC#E7k2J-=A~VvKKm;fe+KesDI?}v)#7wH%jW!s_>kkbOn6tR*`OI1@E8Laqz94l?R{0UYD}qk z?k**rLuhB@o$kF-KW(lG)RfQFmiZm)gLol;3YMx(>Z+d&gDce} zMN{OQ8r`b6GZP=R`%Be0eXruH%WC*;Hkoo|cE@ zNB@dVd8$u4=DF@qIrT+9%Vuj|Hk@U{fAJZDVu!W7cmF6hS%%(~&1U({5bk7LOuJ%i z>WLMcdo{v2K0C`^2;>iwYJ>hTRCllI8I=v*%x@+Jm{FJQ|)}IE!K+)&+y3mbjO-w7^|-Ehpl*760@Irt2p|juhq5nWidmHkyg#UJ6m?D z#eB3!fJLWLdWfX#3oZWN?we!rrB+#BR@qtWw3ZT!dc8O(pWXh zYYaOc8u`GtxZR&qmcC52Z$*z)wJb84&Iato#ryUpkYm3yJXWKwJDTm{W(lXR_5KX` zdR^8-U+(>U+&`n6!+ILg+3N|aA8%WE8iQem%}Xtg;)y;XXrH21rpQq7;2Z|<)T+{1 zsx`_CXR^gweR*6J&vY<7VPqK89}M;cX{c-cG(Rui@yl}ha)TMr zCv0MaVfn*HDl1D<^;Yr($Zl`{%w1z)k;BLHi9_)OpHvXvEAT%#g{5o{=Wysl0TD zBY)d{7OxDLU3V|nG37Js`6+q|mlH~mA=lzUkDCgq6e?9J%D%7ZNyS!n*JR#n>oczF ziP$d-kAtsh#9ZuVQHFOa-}%)7i)MvF6k%&5#IaL`9s4f^zdk(Idl^}DJ!2KKRm%9( z3_ISPRV(c{L}u=GjgazbG(Op<9tw?Xi0k#O%~H)_5kJwtpvLK9X;;@mhZ4qdkYD^Ept zm7gbhfGJfNxg(z;!YP0HzODn=dX?&R_q8WNuIf~{cc%xDZV=88h>>qRu% zpA{Z2stPXG{d|6W`SlJ}dxG?<+wteTsEug!=3S1qW?^A#U>YzMuBn;=V2~M+@a4tw z*vdXkxP;a7slGdA%WrR()6;9K&bX;w<*#0FPq6UJMmgMjImPSyRkY5e`l3$t<;w`4 zWLifMtEilhSuw=L&g%rQ#;Z~JNzr;!JFK28*$0SArLY7;{L4swa9ZA674z<_A&a|u zYIvtROhcstu&7#$SncD9S2msFS(g!$EBv=#)MaR7WBZ)iahImdH%2|_XJT7EQW%e` zj5m?r40J|m+FSZ8JId#r@(!Vqn(gO)Axy9#q`iPKT)D{k}C zPw$JaoM0sU=GC{-xj9+uT?Dg`zUhP&uNdQh{){feVGB))hL0Znt1)=_yR}s>1k^M_R~3`pS2>{p5|F>@=(v?J%tFUcBXTN37HjAjare z#ax!AP^iroWBY^{DevYP0Ub;6edmsaMLq@fUS$;{t=2o+iIioweM(J6;u{0?46*Q@ zI*fH}gipp%d4C(ylV2m9U;Z#FyVd#n%k&(6@$b$A!|CqolP6wfklkSjS(VHpU#+*< z8&78W%wl=2!#oGii?!v)(XwHN&t`b{$GI}WCXQ7&1&O@h{<2@!A!8!U!=Dz@M$B}E z-|MX`);lf-_2_CNuBxQW)sD-n{adW1JQ^zcz4JuXab^~4dLe$@56ZRU-H+NO zQFz@HLw0gwTikt~dhv&c>NowvL3g|IelM@_?`M43Wykm3@5s7WE1a=?j+?rdGd$_T zyDw8^-NCiIQOO1$Gj#oLJ*Z23sL@#P{%3Sp!1Jl^uaph+WrPQ9Zcv>W?+szxr zC$`!Nr%iY;wmqPD`u`31Z8}(d_p7VmYxQNcs8v+?b)^cE+3qMy zSH}#4bBv8w+tYfrEF0bB#PMv{|IxR-is1uS=;DZ1{a(oxTs=+xMCBA|vADLeHlUcLb5KP=rK9&VTCY`XKTDTjxX0&Kjq@n5*Euc##zns?!-EtPFa&N zN~-T;%*;CP=iUTX*5 zGsdoKq2=G_j<86{R#U$#qmx-%>V?LHGX2Talt=@7rioMwq3d3$p^oF2B|o#!Pe;zd zon4&)+fc=!wcPq*MXQI3-b_)Ls4fhi*{i#uYqRhb&fJO9@HNn>VWBluN*c+wx)VSGrY44KNI9;6U$kpN#%r87&4mKY~ zUbl*8A-p{S$3=Z1PU}kR@9m#q!BdFDYX%{?Oah6MV&-V>^D?QHMnLnHsK2;0|$ z*R?Fxo$e`}9i};B6P8}(zbX;qknkld;ghj4)Ocr&o^BTzKiCtym)yv5>R_Wjf*F5O z-M;D6MXFmGtX7PIbc)+NR^=fLwfj&D{eB95t=X&mZ&z^hikUrJv@SccCfj>dKjp6u z07p^5?+B{t>@1c0>ml`?MYQf(tX0MCa *~eboRZ+*G?r2_UmI?Oc%S>06(|v-x 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 Creature wasdWithAiming w speed cr | isAiming = addAnyTwist $ set crDir mouseDir $ theMovement cr - | crIsReloading cr && SDL.ButtonRight `S.member` _mouseButtons w + | crIsReloading cr && SDL.ButtonRight `M.member` _mouseButtons w = addAnyTwist $ set crDir (mouseDir + anytwist) $ theMovement cr | otherwise = theMovement $ theTurn $ removeTwist cr where @@ -70,9 +71,9 @@ wasdDir :: World -> Point2 wasdDir = foldr ((+.+) . wasdM) (V2 0 0) . _keys {- | Set posture according to mouse presses. -} -mouseActionsCr :: S.Set SDL.MouseButton -> Creature -> Creature +mouseActionsCr :: M.Map SDL.MouseButton Bool -> Creature -> Creature mouseActionsCr pkeys cr | rbPressed = cr & crStance . posture .~ Aiming | otherwise = cr & crStance . posture .~ AtEase where - rbPressed = SDL.ButtonRight `S.member` pkeys + rbPressed = SDL.ButtonRight `M.member` pkeys diff --git a/src/Dodge/Data.hs b/src/Dodge/Data.hs index 29c9cffc2..789b7b64c 100644 --- a/src/Dodge/Data.hs +++ b/src/Dodge/Data.hs @@ -88,7 +88,7 @@ data Universe = Universe } data World = World { _keys :: S.Set Scancode - , _mouseButtons :: S.Set MouseButton + , _mouseButtons :: M.Map MouseButton Bool , _mousePos :: Point2 , _cameraCenter :: Point2 , _cameraRot :: Float @@ -487,6 +487,7 @@ data ItemConsumption { _laAmmoType :: AmmoType , _laMax :: Int , _laLoaded :: Int + , _laPrimed :: Bool , _laCycle :: [LoadAction] , _laProgress :: Maybe [LoadAction] } diff --git a/src/Dodge/Default/Weapon.hs b/src/Dodge/Default/Weapon.hs index 4aff687e2..2b685e125 100644 --- a/src/Dodge/Default/Weapon.hs +++ b/src/Dodge/Default/Weapon.hs @@ -20,6 +20,7 @@ defaultLoadable = LoadableAmmo { _laAmmoType = GenericAmmo , _laMax = 15 , _laLoaded = 0 + , _laPrimed = True , _laCycle = [loadEject 10, loadInsert 10, loadPrime 10] , _laProgress = Nothing } diff --git a/src/Dodge/Default/World.hs b/src/Dodge/Default/World.hs index e050327db..146e83891 100644 --- a/src/Dodge/Default/World.hs +++ b/src/Dodge/Default/World.hs @@ -21,7 +21,7 @@ defaultWorld :: World defaultWorld = World { _keys = S.empty , _magnets = IM.empty - , _mouseButtons = S.empty + , _mouseButtons = mempty , _cameraCenter = V2 0 0 , _cameraRot = 0 , _cameraZoom = 1 diff --git a/src/Dodge/Event.hs b/src/Dodge/Event.hs index 5461b7aa5..5ba985f19 100644 --- a/src/Dodge/Event.hs +++ b/src/Dodge/Event.hs @@ -67,10 +67,12 @@ handleMouseMotionEvent mmev u = Just $ u & uvWorld . mousePos .~ V2 handleMouseButtonEvent :: MouseButtonEventData -> World -> World handleMouseButtonEvent mbev = case mouseButtonEventMotion mbev of - Released -> mouseButtons %~ S.delete thebutton - Pressed -> handlePressedMouseButton thebutton . (mouseButtons %~ S.insert thebutton) + Released -> mouseButtons . at thebutton .~ Nothing + Pressed -> handlePressedMouseButton thebutton . (mouseButtons . at thebutton %~ f) where thebutton = mouseButtonEventButton mbev + f Nothing = Just False + f _ = Just True {- | Sets window position in config. -} handleWindowMoveEvent :: WindowMovedEventData -> Universe -> Maybe Universe @@ -106,7 +108,7 @@ handlePressedMouseButton but w = case (_hudElement (_hud w), but) of _ -> w where maybeexitcombine - | ButtonRight `S.member` _mouseButtons w = id + | ButtonRight `M.member` _mouseButtons w = id | otherwise = hud . hudElement .~ DisplayInventory NoSubInventory -- note "sort" on the inventory indices; otherwise @@ -177,8 +179,8 @@ wheelEvent y w = case _hudElement $ _hud w of numcombs = length $ combineItemListYou w yi = round $ signum y numLocs = (fst . IM.findMax $ _seenLocations w) + 1 - rbDown = ButtonRight `S.member` _mouseButtons w - lbDown = ButtonLeft `S.member` _mouseButtons w + rbDown = ButtonRight `M.member` _mouseButtons w + lbDown = ButtonLeft `M.member` _mouseButtons w invKeyDown = ScancodeCapsLock `S.member` _keys w getArguments' :: TerminalCommand -> Terminal -> World -> [String] diff --git a/src/Dodge/Item/Weapon/BulletGun/Cane.hs b/src/Dodge/Item/Weapon/BulletGun/Cane.hs index 355fb0fd5..495b552f6 100644 --- a/src/Dodge/Item/Weapon/BulletGun/Cane.hs +++ b/src/Dodge/Item/Weapon/BulletGun/Cane.hs @@ -149,7 +149,7 @@ repeater :: Item repeater = rifle & itType . iyModules . at ModRifleMag ?~ EMPTYMODULE & itType . iyBase .~ REPEATER - & itConsumption . laCycle .~ [loadEject 20, loadInsert 20 ,loadPrime 20] + & itConsumption . laCycle .~ [loadEject 50, loadInsert 40 ,loadPrime 20] & itConsumption . laMax .~ 15 & itDimension . dimSPic .~ (\it -> noPic $ baseRifleShape <> makeTinClipAt 0 (V3 10 (-2) 0) it diff --git a/src/Dodge/Item/Weapon/ExtraEffect.hs b/src/Dodge/Item/Weapon/ExtraEffect.hs index ae32bd3a1..e1ce36a4c 100644 --- a/src/Dodge/Item/Weapon/ExtraEffect.hs +++ b/src/Dodge/Item/Weapon/ExtraEffect.hs @@ -32,10 +32,11 @@ import qualified FoldlHelp as L import Sound.Data import ShortShow +import qualified Data.Map.Strict as M --import Data.Bifunctor import Data.Maybe --import qualified Control.Foldl as L -import qualified Data.Set as S +--import qualified Data.Set as S import qualified SDL autoEffect :: (Item -> Creature -> World -> World) -> Int -> SoundID -> Item -> Creature -> World -> World autoEffect eff t sid itm cr w @@ -119,7 +120,7 @@ targetRBCreatureUp it cr w t & tgPos .~ Nothing & tgActive .~ False ) - | SDL.ButtonRight `S.member` _mouseButtons w && isJust (t ^? tgID . _Just) + | SDL.ButtonRight `M.member` _mouseButtons w && isJust (t ^? tgID . _Just) && canSeeTarget = (w, t & updatePos & tgActive .~ True ) @@ -171,7 +172,7 @@ targetUpdateWith f it _ w t targetCursorUpdate :: World -> Targeting -> Targeting targetCursorUpdate w t - | SDL.ButtonRight `S.member` _mouseButtons w = t + | SDL.ButtonRight `M.member` _mouseButtons w = t & tgPos . _Just .~ mouseWorldPos w & tgActive .~ True | otherwise = t & tgPos %~ const Nothing @@ -179,7 +180,7 @@ targetCursorUpdate w t targetRBPressUpdate :: World -> Targeting -> Targeting targetRBPressUpdate w t - | SDL.ButtonRight `S.member` _mouseButtons w = t + | SDL.ButtonRight `M.member` _mouseButtons w = t & tgPos %~ maybe (Just $ mouseWorldPos w) Just & tgActive .~ True | otherwise = t & tgPos %~ const Nothing diff --git a/src/Dodge/Item/Weapon/Launcher.hs b/src/Dodge/Item/Weapon/Launcher.hs index c3e18c3f7..54082b8d6 100644 --- a/src/Dodge/Item/Weapon/Launcher.hs +++ b/src/Dodge/Item/Weapon/Launcher.hs @@ -28,7 +28,8 @@ import qualified IntMapHelp as IM import ShapePicture import Shape -import qualified Data.Set as S +--import qualified Data.Set as S +import qualified Data.Map.Strict as M import qualified SDL import Data.Maybe import Control.Lens @@ -320,7 +321,7 @@ moveRemoteShell cid itid pj w vel = _pjVel pj newPos = oldPos +.+ vel newdir - | SDL.ButtonRight `S.member` _mouseButtons w + | SDL.ButtonRight `M.member` _mouseButtons w && w ^? creatures . ix cid . crInvSel . iselPos == w ^? itemPositions . ix itid . ipInvId = _cameraRot w + argV (_mousePos w) | otherwise = _pjDir pj diff --git a/src/Dodge/Item/Weapon/TriggerType.hs b/src/Dodge/Item/Weapon/TriggerType.hs index 11a92c77a..64f674e92 100644 --- a/src/Dodge/Item/Weapon/TriggerType.hs +++ b/src/Dodge/Item/Weapon/TriggerType.hs @@ -133,12 +133,13 @@ ammoCheckI eff item cr w -- hammer is down? ammoHammerCheck :: ChainEffect ammoHammerCheck eff it cr w - | _laLoaded (_itConsumption it) <= 0 = w -- fromMaybe w (startReloadingWeapon cr w) + | _laLoaded ic <= 0 || _laPrimed ic == False = w -- fromMaybe w (startReloadingWeapon cr w) & setHammerDown | otherwise = case it ^? itUse . useHammer . hammerPosition of Just HammerUp -> eff it cr $ setHammerDown w & creatures . ix (_crID cr) %~ crCancelReloading _ -> setHammerDown w where + ic = _itConsumption it cid = _crID cr setHammerDown = creatures . ix cid . crInv . ix (crSel cr) . itUse . useHammer . hammerPosition .~ HammerDown @@ -304,7 +305,7 @@ useTimeCheck f item cr w = case item ^? itUse . useDelay . rateTime of {- | Applies a world effect after a hammer position check. -} hammerCheckI :: ChainEffect hammerCheckI f it cr w = case it ^? itUse . useHammer . hammerPosition of - Just HammerUp -> f it cr $ setHammerDown w + Just HammerUp | _laPrimed (_itConsumption it) -> f it cr $ setHammerDown w _ -> setHammerDown w where cid = _crID cr diff --git a/src/Dodge/Reloading.hs b/src/Dodge/Reloading.hs index f5086dc3d..a134fe820 100644 --- a/src/Dodge/Reloading.hs +++ b/src/Dodge/Reloading.hs @@ -1,7 +1,9 @@ module Dodge.Reloading ( crCancelReloading , crToggleReloading + , crHoldReloading , stepReloading + , tryStartLoading ) where import Dodge.Data import Dodge.Hammer @@ -33,12 +35,15 @@ tryNextLoadAction cr = case cr ^? crInv . ix (crSel cr) . itConsumption . laProg Just la -> cr & crInvSel . iselAction . actionProgress .~ _actionTime la & crInvSel . iselAction . reloadAction .~ la - crToggleReloading :: Creature -> World -> World crToggleReloading cr w = case cr ^?! crInvSel . iselAction of ReloadAction {} -> w & creatures . ix (_crID cr) . crInvSel . iselAction .~ NoInvSelAction _ -> w & creatures . ix (_crID cr) %~ tryStartLoading +crHoldReloading :: Creature -> World -> World +crHoldReloading cr w = w + & creatures . ix (_crID cr) . crInvSel . iselAction . actionHammer .~ HasHammer HammerDown + tryStartLoading :: Creature -> Creature tryStartLoading cr = case ic ^? laProgress . _Just . ix 0 of Just la -> cr & startLoadAction la @@ -63,11 +68,11 @@ rotateActionProgress ic = case ic ^? laProgress . _Just of doLoadAction :: LoadAction -> ItemConsumption -> ItemConsumption doLoadAction la ic = case la of - LoadEject {} -> ic & laLoaded .~ 0 + LoadEject {} -> ic & laLoaded .~ 0 & laPrimed .~ False LoadInsert {} -> ic & laLoaded .~ _laMax ic LoadAdd {_insertMax = x} -> ic & laLoaded +~ min x (_laMax ic - _laLoaded ic) - LoadPrime {} -> ic + LoadPrime {} -> ic & laPrimed .~ True --{- | Start reloading if clip is empty. -} --crAutoReload :: Creature -> Creature diff --git a/src/Dodge/Render/HUD.hs b/src/Dodge/Render/HUD.hs index cf9b4874b..e06f73b0c 100644 --- a/src/Dodge/Render/HUD.hs +++ b/src/Dodge/Render/HUD.hs @@ -23,7 +23,7 @@ import qualified Data.Vector as V import Data.Maybe import qualified Data.IntMap.Strict as IM import qualified Data.Map.Strict as M -import qualified Data.Set as S +--import qualified Data.Set as S --import qualified Data.IntSet as IS import Control.Lens import SDL (MouseButton (..)) @@ -125,7 +125,7 @@ subInventoryDisplay subinv cfig w = case subinv of selcursor' ct = fromMaybe mempty $ ct 0 0 cfig curpos itcol (determineInvSelCursorWidth w) cury <$ it selcursor = selcursor' selcursortype selcursortype - | ButtonRight `S.member` _mouseButtons w = listCursorNESW + | ButtonRight `M.member` _mouseButtons w = listCursorNESW | otherwise = listCursorNSW curpos = invSelPos w cury = fromMaybe 1 $ augmentedInvSizes w IM.!? crSel (you w) @@ -134,7 +134,7 @@ subInventoryDisplay subinv cfig w = case subinv of _ -> mempty equipcursors = IM.foldMapWithKey (f yellow) (_crInvEquipped cr) f col invid epos = listTextPictureAt 144 0 cfig (selNumPos invid w) . color col $ text $ eqPosText epos - rboptions = if ButtonRight `S.member` _mouseButtons w + rboptions = if ButtonRight `M.member` _mouseButtons w then drawRBOptions cfig w (_rbOptions w) else mempty @@ -251,7 +251,7 @@ topCursorTypeWidth ctype width cfig w i determineInvSelCursorWidth :: World -> Int determineInvSelCursorWidth w = case _rbOptions w of NoRightButtonOptions -> topInvW - EquipOptions {} -> if ButtonRight `S.member` _mouseButtons w + EquipOptions {} -> if ButtonRight `M.member` _mouseButtons w then 47 else topInvW diff --git a/src/Dodge/Save.hs b/src/Dodge/Save.hs index b645241f9..a2ccd16a4 100644 --- a/src/Dodge/Save.hs +++ b/src/Dodge/Save.hs @@ -9,7 +9,7 @@ import Dodge.Data import qualified Data.Map.Strict as M --import Data.Maybe import Control.Lens -import qualified Data.Set as S +--import qualified Data.Set as S saveWorldInEmptySlot :: SaveSlot -> Universe -> Universe saveWorldInEmptySlot slot w = case M.lookup slot $ _savedWorlds w of @@ -28,7 +28,7 @@ doQuicksave :: Universe -> Universe doQuicksave = saveWorldInSlot QuicksaveSlot clearKeys :: World -> World -clearKeys = (keys .~ S.empty) . (mouseButtons .~ S.empty) +clearKeys = (keys .~ mempty) . (mouseButtons .~ mempty) saveLevelStartSlot :: World -> World --saveLevelStartSlot = id diff --git a/src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs b/src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs index f7c0fff25..ef2db3196 100644 --- a/src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs +++ b/src/Dodge/SoundLogic/ExternallyGeneratedSounds.hs @@ -1,171 +1,172 @@ --- generated at 2022-06-21 17:36:17.190436966 UTC +-- generated at 2022-06-22 13:32:00.899109782 UTC module Dodge.SoundLogic.ExternallyGeneratedSounds where import Sound.Data soundToVol :: SoundID -> Float soundToVol v = case _getSoundID v of 0 -> 500 1 -> 500 - 2 -> 2000 - 3 -> 500 - 4 -> 1000 - 5 -> 40 - 6 -> 100 - 7 -> 500 + 2 -> 500 + 3 -> 2000 + 4 -> 500 + 5 -> 1000 + 6 -> 40 + 7 -> 100 8 -> 500 - 9 -> 300 - 10 -> 40 - 11 -> 2000 - 12 -> 50 + 9 -> 500 + 10 -> 300 + 11 -> 40 + 12 -> 2000 13 -> 50 - 14 -> 2000 - 15 -> 200 - 16 -> 40 - 17 -> 300 - 18 -> 500 - 19 -> 2000 - 20 -> 500 - 21 -> 100 - 22 -> 1000 - 23 -> 100 - 24 -> 1000 - 25 -> 40 - 26 -> 2000 - 27 -> 50 - 28 -> 2000 - 29 -> 50 - 30 -> 1000 - 31 -> 8000 - 32 -> 2000 + 14 -> 50 + 15 -> 2000 + 16 -> 200 + 17 -> 40 + 18 -> 300 + 19 -> 500 + 20 -> 2000 + 21 -> 500 + 22 -> 100 + 23 -> 1000 + 24 -> 100 + 25 -> 1000 + 26 -> 40 + 27 -> 2000 + 28 -> 50 + 29 -> 2000 + 30 -> 50 + 31 -> 1000 + 32 -> 8000 33 -> 2000 - 34 -> 1000 - 35 -> 2000 - 36 -> 100 - 37 -> 40 + 34 -> 2000 + 35 -> 1000 + 36 -> 2000 + 37 -> 100 38 -> 40 - 39 -> 2000 - 40 -> 100 - 41 -> 40 - 42 -> 300 - 43 -> 300 - 44 -> 2000 - 45 -> 1000 - 46 -> 1000 + 39 -> 40 + 40 -> 2000 + 41 -> 100 + 42 -> 500 + 43 -> 40 + 44 -> 300 + 45 -> 300 + 46 -> 2000 47 -> 1000 - 48 -> 40 - 49 -> 50 - 50 -> 500 - 51 -> 500 - 52 -> 1000 - 53 -> 20 - 54 -> 500 - 55 -> 300 + 48 -> 1000 + 49 -> 1000 + 50 -> 40 + 51 -> 50 + 52 -> 500 + 53 -> 500 + 54 -> 1000 + 55 -> 20 56 -> 500 - 57 -> 500 - 58 -> 1000 - 59 -> 500 - 60 -> 2000 + 57 -> 300 + 58 -> 500 + 59 -> 1000 + 60 -> 500 61 -> 2000 - 62 -> 500 - 63 -> 2000 - 64 -> 100 - 65 -> 300 - 66 -> 1000 - 67 -> 100 - 68 -> 2000 - 69 -> 1000 - 70 -> 200 - 71 -> 500 - 72 -> 100 - 73 -> 2000 + 62 -> 2000 + 63 -> 500 + 64 -> 2000 + 65 -> 100 + 66 -> 300 + 67 -> 1000 + 68 -> 100 + 69 -> 2000 + 70 -> 1000 + 71 -> 200 + 72 -> 500 + 73 -> 100 74 -> 2000 75 -> 2000 - 76 -> 500 + 76 -> 2000 77 -> 100 _ -> 50 soundToOnomato :: SoundID -> String soundToOnomato v = case _getSoundID v of 0 -> "DEDUM" - 1 -> "SCREE" - 2 -> "BRDBRDBRD" - 3 -> "DEDEDA" - 4 -> "CRNK" - 5 -> "CLNK" - 6 -> "WRR" - 7 -> "TINKLE" - 8 -> "TRINKL" - 9 -> "BWAAH" - 10 -> "TIP" - 11 -> "TATATA" - 12 -> "BLIH" - 13 -> "HMM" - 14 -> "PEW" - 15 -> "CRAKLE" - 16 -> "TAP" - 17 -> "DWAAH" - 18 -> "PRUM" - 19 -> "BANGG" - 20 -> "CRTINK" - 21 -> "PHF" - 22 -> "ZHM" - 23 -> "THUD" - 24 -> "CRASH" - 25 -> "TAPTIP" - 26 -> "CHUGUGUG" - 27 -> "HSSS" - 28 -> "BOOM" - 29 -> "HSS" - 30 -> "TAKH" - 31 -> "RINGGG" - 32 -> "CRH" - 33 -> "UGGAUGGA" - 34 -> "CRUMPLE" - 35 -> "CREUH" - 36 -> "SMACK" - 37 -> "CLICK" - 38 -> "TIPTOP" - 39 -> "CRUH" - 40 -> "CHNKCHNKCHUNK" - 41 -> "TIPTAP" - 42 -> "TNKTNKTNK" - 43 -> "CHPCHPCHP" - 44 -> "SCREE" - 45 -> "BRAP" - 46 -> "CRSK" - 47 -> "CRNKL" - 48 -> "TAPP" - 49 -> "SHUHP" - 50 -> "DEDEDUM" - 51 -> "TAK" - 52 -> "CRISH" - 53 -> "SWSH" - 54 -> "BIPBIPBIP" - 55 -> "BEP" - 56 -> "CLIKCLIK" - 57 -> "KRTNKL" - 58 -> "CRSNK" - 59 -> "DUDURAH" - 60 -> "CHUGUGUG" - 61 -> "BANG" - 62 -> "DEDA" - 63 -> "WHSSH" - 64 -> "HNH" - 65 -> "BWAH" - 66 -> "CRUNK" - 67 -> "DRR" - 68 -> "BRAP" - 69 -> "BLPCHCH" - 70 -> "ZMM" - 71 -> "WRRR" - 72 -> "FWUMP" - 73 -> "BRAHCHCH" - 74 -> "BRPBRPBRP" - 75 -> "WE-OH" - 76 -> "CUHRAM" + 1 -> "CUHRUP" + 2 -> "SCREE" + 3 -> "BRDBRDBRD" + 4 -> "DEDEDA" + 5 -> "CRNK" + 6 -> "CLNK" + 7 -> "WRR" + 8 -> "TINKLE" + 9 -> "TRINKL" + 10 -> "BWAAH" + 11 -> "TIP" + 12 -> "TATATA" + 13 -> "BLIH" + 14 -> "HMM" + 15 -> "PEW" + 16 -> "CRAKLE" + 17 -> "TAP" + 18 -> "DWAAH" + 19 -> "PRUM" + 20 -> "BANGG" + 21 -> "CRTINK" + 22 -> "PHF" + 23 -> "ZHM" + 24 -> "THUD" + 25 -> "CRASH" + 26 -> "TAPTIP" + 27 -> "CHUGUGUG" + 28 -> "HSSS" + 29 -> "BOOM" + 30 -> "HSS" + 31 -> "TAKH" + 32 -> "RINGGG" + 33 -> "CRH" + 34 -> "UGGAUGGA" + 35 -> "CRUMPLE" + 36 -> "CREUH" + 37 -> "SMACK" + 38 -> "CLICK" + 39 -> "TIPTOP" + 40 -> "CRUH" + 41 -> "CHNKCHNKCHUNK" + 42 -> "CLKCLK" + 43 -> "TIPTAP" + 44 -> "TNKTNKTNK" + 45 -> "CHPCHPCHP" + 46 -> "SCREE" + 47 -> "BRAP" + 48 -> "CRSK" + 49 -> "CRNKL" + 50 -> "TAPP" + 51 -> "SHUHP" + 52 -> "DEDEDUM" + 53 -> "TAK" + 54 -> "CRISH" + 55 -> "SWSH" + 56 -> "BIPBIPBIP" + 57 -> "BEP" + 58 -> "KRTNKL" + 59 -> "CRSNK" + 60 -> "DUDURAH" + 61 -> "CHUGUGUG" + 62 -> "BANG" + 63 -> "DEDA" + 64 -> "WHSSH" + 65 -> "HNH" + 66 -> "BWAH" + 67 -> "CRUNK" + 68 -> "DRR" + 69 -> "BRAP" + 70 -> "BLPCHCH" + 71 -> "ZMM" + 72 -> "WRRR" + 73 -> "FWUMP" + 74 -> "BRAHCHCH" + 75 -> "BRPBRPBRP" + 76 -> "WE-OH" 77 -> "FHP" _ -> error "unitialised sound" soundPathList :: [String] soundPathList = [ "dedum.DEDUM.500.wav" + , "insert.CUHRUP.500.wav" , "tone440sawtoothquiet.SCREE.500.wav" , "mini1.BRDBRDBRD.2000.wav" , "dededa.DEDEDA.500.wav" @@ -206,6 +207,7 @@ soundPathList = , "twoStepSlow.TIPTOP.40.wav" , "seagullCry.CRUH.2000.wav" , "crankSlow.CHNKCHNKCHUNK.100.wav" + , "prime.CLKCLK.500.wav" , "twoStep.TIPTAP.40.wav" , "reload.TNKTNKTNK.300.wav" , "reload1.CHPCHPCHP.300.wav" @@ -221,7 +223,6 @@ soundPathList = , "knife.SWSH.20.wav" , "computerBeeping.BIPBIPBIP.500.wav" , "tone440.BEP.300.wav" - , "prime.CLIKCLIK.500.wav" , "smallGlass2.KRTNKL.500.wav" , "glassShat1.CRSNK.1000.wav" , "eject.DUDURAH.500.wav" @@ -241,162 +242,161 @@ soundPathList = , "shotgun.BRAHCHCH.2000.wav" , "mini.BRPBRPBRP.2000.wav" , "seagullWhistle.WE-OH.2000.wav" - , "insert.CUHRAM.500.wav" , "whiteNoiseFadeIn.FHP.100.wav" ] dedumS :: SoundID dedumS = SoundID 0 -tone440sawtoothquietS :: SoundID -tone440sawtoothquietS = SoundID 1 -mini1S :: SoundID -mini1S = SoundID 2 -dededaS :: SoundID -dededaS = SoundID 3 -glassShat3S :: SoundID -glassShat3S = SoundID 4 -tapQuietS :: SoundID -tapQuietS = SoundID 5 -fireS :: SoundID -fireS = SoundID 6 -smallGlass4S :: SoundID -smallGlass4S = SoundID 7 -smallGlass1S :: SoundID -smallGlass1S = SoundID 8 -sineRaisePitchTwoSecS :: SoundID -sineRaisePitchTwoSecS = SoundID 9 -foot1S :: SoundID -foot1S = SoundID 10 -autoBS :: SoundID -autoBS = SoundID 11 -healS :: SoundID -healS = SoundID 12 -fridgeHumS :: SoundID -fridgeHumS = SoundID 13 -seagullWhistle1S :: SoundID -seagullWhistle1S = SoundID 14 -elecCrackleS :: SoundID -elecCrackleS = SoundID 15 -foot2S :: SoundID -foot2S = SoundID 16 -skwareFadeTwoSecS :: SoundID -skwareFadeTwoSecS = SoundID 17 -insertOneS :: SoundID -insertOneS = SoundID 18 -bangEchoS :: SoundID -bangEchoS = SoundID 19 -smallGlass3S :: SoundID -smallGlass3S = SoundID 20 -whiteNoiseFadeOutS :: SoundID -whiteNoiseFadeOutS = SoundID 21 -teleS :: SoundID -teleS = SoundID 22 -hitS :: SoundID -hitS = SoundID 23 -stone1S :: SoundID -stone1S = SoundID 24 -twoStep1S :: SoundID -twoStep1S = SoundID 25 -seagullChatterS :: SoundID -seagullChatterS = SoundID 26 -foamSprayLoopS :: SoundID -foamSprayLoopS = SoundID 27 -explosionS :: SoundID -explosionS = SoundID 28 -foamSprayFadeOutS :: SoundID -foamSprayFadeOutS = SoundID 29 -tap2S :: SoundID -tap2S = SoundID 30 -tinitusS :: SoundID -tinitusS = SoundID 31 -seagullCry1S :: SoundID -seagullCry1S = SoundID 32 -seagullBarkS :: SoundID -seagullBarkS = SoundID 33 -stone3S :: SoundID -stone3S = SoundID 34 -seagullCry2S :: SoundID -seagullCry2S = SoundID 35 -hit1S :: SoundID -hit1S = SoundID 36 -click1S :: SoundID -click1S = SoundID 37 -twoStepSlowS :: SoundID -twoStepSlowS = SoundID 38 -seagullCryS :: SoundID -seagullCryS = SoundID 39 -crankSlowS :: SoundID -crankSlowS = SoundID 40 -twoStepS :: SoundID -twoStepS = SoundID 41 -reloadS :: SoundID -reloadS = SoundID 42 -reload1S :: SoundID -reload1S = SoundID 43 -tone440sawtoothS :: SoundID -tone440sawtoothS = SoundID 44 -tap3S :: SoundID -tap3S = SoundID 45 -glassShat4S :: SoundID -glassShat4S = SoundID 46 -glassShat2S :: SoundID -glassShat2S = SoundID 47 -foot3S :: SoundID -foot3S = SoundID 48 -pickUpS :: SoundID -pickUpS = SoundID 49 -dededumS :: SoundID -dededumS = SoundID 50 -tap1S :: SoundID -tap1S = SoundID 51 -metal4S :: SoundID -metal4S = SoundID 52 -knifeS :: SoundID -knifeS = SoundID 53 -computerBeepingS :: SoundID -computerBeepingS = SoundID 54 -tone440S :: SoundID -tone440S = SoundID 55 -primeS :: SoundID -primeS = SoundID 56 -smallGlass2S :: SoundID -smallGlass2S = SoundID 57 -glassShat1S :: SoundID -glassShat1S = SoundID 58 -ejectS :: SoundID -ejectS = SoundID 59 -seagullChatter1S :: SoundID -seagullChatter1S = SoundID 60 -bangS :: SoundID -bangS = SoundID 61 -dedaS :: SoundID -dedaS = SoundID 62 -missileLaunchS :: SoundID -missileLaunchS = SoundID 63 -gruntS :: SoundID -gruntS = SoundID 64 -sineRaisePitchOneSecS :: SoundID -sineRaisePitchOneSecS = SoundID 65 -metal2S :: SoundID -metal2S = SoundID 66 -slideDoorS :: SoundID -slideDoorS = SoundID 67 -autoGunS :: SoundID -autoGunS = SoundID 68 -oldMachineBootS :: SoundID -oldMachineBootS = SoundID 69 -buzzS :: SoundID -buzzS = SoundID 70 -fireLoudS :: SoundID -fireLoudS = SoundID 71 -tap4S :: SoundID -tap4S = SoundID 72 -shotgunS :: SoundID -shotgunS = SoundID 73 -miniS :: SoundID -miniS = SoundID 74 -seagullWhistleS :: SoundID -seagullWhistleS = SoundID 75 insertS :: SoundID -insertS = SoundID 76 +insertS = SoundID 1 +tone440sawtoothquietS :: SoundID +tone440sawtoothquietS = SoundID 2 +mini1S :: SoundID +mini1S = SoundID 3 +dededaS :: SoundID +dededaS = SoundID 4 +glassShat3S :: SoundID +glassShat3S = SoundID 5 +tapQuietS :: SoundID +tapQuietS = SoundID 6 +fireS :: SoundID +fireS = SoundID 7 +smallGlass4S :: SoundID +smallGlass4S = SoundID 8 +smallGlass1S :: SoundID +smallGlass1S = SoundID 9 +sineRaisePitchTwoSecS :: SoundID +sineRaisePitchTwoSecS = SoundID 10 +foot1S :: SoundID +foot1S = SoundID 11 +autoBS :: SoundID +autoBS = SoundID 12 +healS :: SoundID +healS = SoundID 13 +fridgeHumS :: SoundID +fridgeHumS = SoundID 14 +seagullWhistle1S :: SoundID +seagullWhistle1S = SoundID 15 +elecCrackleS :: SoundID +elecCrackleS = SoundID 16 +foot2S :: SoundID +foot2S = SoundID 17 +skwareFadeTwoSecS :: SoundID +skwareFadeTwoSecS = SoundID 18 +insertOneS :: SoundID +insertOneS = SoundID 19 +bangEchoS :: SoundID +bangEchoS = SoundID 20 +smallGlass3S :: SoundID +smallGlass3S = SoundID 21 +whiteNoiseFadeOutS :: SoundID +whiteNoiseFadeOutS = SoundID 22 +teleS :: SoundID +teleS = SoundID 23 +hitS :: SoundID +hitS = SoundID 24 +stone1S :: SoundID +stone1S = SoundID 25 +twoStep1S :: SoundID +twoStep1S = SoundID 26 +seagullChatterS :: SoundID +seagullChatterS = SoundID 27 +foamSprayLoopS :: SoundID +foamSprayLoopS = SoundID 28 +explosionS :: SoundID +explosionS = SoundID 29 +foamSprayFadeOutS :: SoundID +foamSprayFadeOutS = SoundID 30 +tap2S :: SoundID +tap2S = SoundID 31 +tinitusS :: SoundID +tinitusS = SoundID 32 +seagullCry1S :: SoundID +seagullCry1S = SoundID 33 +seagullBarkS :: SoundID +seagullBarkS = SoundID 34 +stone3S :: SoundID +stone3S = SoundID 35 +seagullCry2S :: SoundID +seagullCry2S = SoundID 36 +hit1S :: SoundID +hit1S = SoundID 37 +click1S :: SoundID +click1S = SoundID 38 +twoStepSlowS :: SoundID +twoStepSlowS = SoundID 39 +seagullCryS :: SoundID +seagullCryS = SoundID 40 +crankSlowS :: SoundID +crankSlowS = SoundID 41 +primeS :: SoundID +primeS = SoundID 42 +twoStepS :: SoundID +twoStepS = SoundID 43 +reloadS :: SoundID +reloadS = SoundID 44 +reload1S :: SoundID +reload1S = SoundID 45 +tone440sawtoothS :: SoundID +tone440sawtoothS = SoundID 46 +tap3S :: SoundID +tap3S = SoundID 47 +glassShat4S :: SoundID +glassShat4S = SoundID 48 +glassShat2S :: SoundID +glassShat2S = SoundID 49 +foot3S :: SoundID +foot3S = SoundID 50 +pickUpS :: SoundID +pickUpS = SoundID 51 +dededumS :: SoundID +dededumS = SoundID 52 +tap1S :: SoundID +tap1S = SoundID 53 +metal4S :: SoundID +metal4S = SoundID 54 +knifeS :: SoundID +knifeS = SoundID 55 +computerBeepingS :: SoundID +computerBeepingS = SoundID 56 +tone440S :: SoundID +tone440S = SoundID 57 +smallGlass2S :: SoundID +smallGlass2S = SoundID 58 +glassShat1S :: SoundID +glassShat1S = SoundID 59 +ejectS :: SoundID +ejectS = SoundID 60 +seagullChatter1S :: SoundID +seagullChatter1S = SoundID 61 +bangS :: SoundID +bangS = SoundID 62 +dedaS :: SoundID +dedaS = SoundID 63 +missileLaunchS :: SoundID +missileLaunchS = SoundID 64 +gruntS :: SoundID +gruntS = SoundID 65 +sineRaisePitchOneSecS :: SoundID +sineRaisePitchOneSecS = SoundID 66 +metal2S :: SoundID +metal2S = SoundID 67 +slideDoorS :: SoundID +slideDoorS = SoundID 68 +autoGunS :: SoundID +autoGunS = SoundID 69 +oldMachineBootS :: SoundID +oldMachineBootS = SoundID 70 +buzzS :: SoundID +buzzS = SoundID 71 +fireLoudS :: SoundID +fireLoudS = SoundID 72 +tap4S :: SoundID +tap4S = SoundID 73 +shotgunS :: SoundID +shotgunS = SoundID 74 +miniS :: SoundID +miniS = SoundID 75 +seagullWhistleS :: SoundID +seagullWhistleS = SoundID 76 whiteNoiseFadeInS :: SoundID whiteNoiseFadeInS = SoundID 77 diff --git a/src/Dodge/Update/Camera.hs b/src/Dodge/Update/Camera.hs index 8d7f3c2fc..d472e294f 100644 --- a/src/Dodge/Update/Camera.hs +++ b/src/Dodge/Update/Camera.hs @@ -16,6 +16,7 @@ import Geometry import Dodge.GameRoom import LensHelp +import qualified Data.Map.Strict as M --import qualified Data.List.NonEmpty as NEL --import Control.Applicative import Data.Foldable @@ -48,10 +49,10 @@ moveZoomCamera cfig w = w vfoffset = do iscam <- yourItem w ^? _Just . itScope . scopeIsCamera guard iscam - guard (SDL.ButtonRight `S.member` _mouseButtons w) + guard (SDL.ButtonRight `M.member` _mouseButtons w) yourItem w ^? _Just . itScope . scopePos mscopeoffset = do - guard (SDL.ButtonRight `S.member` _mouseButtons w) + guard (SDL.ButtonRight `M.member` _mouseButtons w) yourItem w ^? _Just . itScope . scopePos newcen = cpos +.+ fromMaybe (V2 0 0) mscopeoffset +.+ offset offset = rotateV (_cameraRot w) $ ((newzoom - newDefaultZoom)/(newDefaultZoom*newzoom)) *.* _mousePos w @@ -80,7 +81,7 @@ moveZoomCamera cfig w = w updateScopeZoom :: World -> World updateScopeZoom w - | SDL.ButtonRight `S.member` _mouseButtons w + | SDL.ButtonRight `M.member` _mouseButtons w = case w ^? creatures . ix 0 . crInv . ix (crSel (_creatures w IM.! 0)) . itScope . scopeZoomChange of Just x @@ -133,7 +134,7 @@ zoomOutLongGun w ifConfigWallRotate :: Configuration -> World -> World ifConfigWallRotate cfig w - | _gameplay_rotate_to_wall cfig && not (SDL.ButtonRight `S.member` _mouseButtons w) + | _gameplay_rotate_to_wall cfig && not (SDL.ButtonRight `M.member` _mouseButtons w) = rotateToOverlappingWall w | otherwise = w diff --git a/src/Dodge/Update/UsingInput.hs b/src/Dodge/Update/UsingInput.hs index e1fd99f7d..192ca72cc 100644 --- a/src/Dodge/Update/UsingInput.hs +++ b/src/Dodge/Update/UsingInput.hs @@ -8,7 +8,8 @@ import Dodge.Creature.Impulse.UseItem import Geometry import SDL -import qualified Data.Set as S +--import qualified Data.Set as S +import qualified Data.Map.Strict as M import Control.Lens updateUsingInput :: World -> World @@ -16,7 +17,7 @@ updateUsingInput w = case _hudElement $ _hud w of DisplayInventory {} -> updatePressedButtons (_mouseButtons w) w DisplayCarte -> updatePressedButtonsCarte (_mouseButtons w) w -updatePressedButtons :: S.Set MouseButton -> World -> World +updatePressedButtons :: M.Map MouseButton Bool -> World -> World updatePressedButtons pkeys w | isDown ButtonLeft && isDown ButtonRight && inTopInv = useItem (you w) w & doubleMouseHammer .~ HammerDown @@ -34,11 +35,10 @@ updatePressedButtons pkeys w inTopInv = case _hudElement (_hud w) of DisplayInventory NoSubInventory -> True _ -> False - isDown but = but `S.member` pkeys + isDown but = but `M.member` pkeys rotation = angleBetween (_mousePos w) (_clickMousePos w) - -updatePressedButtonsCarte :: S.Set MouseButton -> World -> World +updatePressedButtonsCarte :: M.Map MouseButton Bool -> World -> World updatePressedButtonsCarte pkeys w | isDown ButtonRight = w & clickMousePos .~ _mousePos w @@ -49,7 +49,7 @@ updatePressedButtonsCarte pkeys w & hud . carteZoom *~ czoom | otherwise = w where - isDown but = but `S.member` pkeys + isDown but = but `M.member` pkeys rot = angleBetween (_mousePos w) (_clickMousePos w) czoom = magV (_mousePos w) / magV (_clickMousePos w) trans = rotateV (_carteRot (_hud w)) $ 1 / _carteZoom (_hud w) *.* (_mousePos w -.- _clickMousePos w)