From cd2a685ee8b4558ff42887d3e7d4d8e9e74620a9 Mon Sep 17 00:00:00 2001
From: Arkatos1 <43862960+Arkatos1@users.noreply.github.com>
Date: Fri, 7 Feb 2020 16:59:10 +0100
Subject: [PATCH] tgui-next: Mining Vendor (#48991)
* Mining Vendor tgui-next
* Formatting
* Revert "Formatting"
This reverts commit 2eb35516b2f755d78341915a4b57b2b8548195eb.
---
code/modules/mining/machine_vending.dm | 110 ++++++++++++------
icons/obj/lighting.dmi | Bin 78579 -> 77910 bytes
.../packages/tgui/interfaces/MiningVendor.js | 64 ++++++++++
tgui-next/packages/tgui/public/tgui.bundle.js | 4 +-
tgui-next/packages/tgui/routes.js | 5 +
5 files changed, 146 insertions(+), 37 deletions(-)
create mode 100644 tgui-next/packages/tgui/interfaces/MiningVendor.js
diff --git a/code/modules/mining/machine_vending.dm b/code/modules/mining/machine_vending.dm
index 8003d039757..990492992a7 100644
--- a/code/modules/mining/machine_vending.dm
+++ b/code/modules/mining/machine_vending.dm
@@ -7,6 +7,8 @@
icon_state = "mining"
density = TRUE
circuit = /obj/item/circuitboard/machine/mining_equipment_vendor
+ ui_x = 425
+ ui_y = 600
var/icon_deny = "mining-deny"
var/obj/item/card/id/inserted_id
var/list/prize_list = list( //if you add something to this, please, for the love of god, sort it by price/type. use tabs and not spaces.
@@ -71,57 +73,95 @@
src.equipment_path = path
src.cost = cost
+/obj/machinery/mineral/equipment_vendor/Initialize()
+ . = ..()
+ build_inventory()
+
+/obj/machinery/mineral/equipment_vendor/proc/build_inventory()
+ for(var/p in prize_list)
+ var/datum/data/mining_equipment/M = p
+ GLOB.vending_products[M.equipment_path] = 1
+
/obj/machinery/mineral/equipment_vendor/update_icon_state()
if(powered())
icon_state = initial(icon_state)
else
icon_state = "[initial(icon_state)]-off"
-/obj/machinery/mineral/equipment_vendor/ui_interact(mob/user)
- . = ..()
- var/list/dat = list()
- dat += "
Equipment point cost list:
| [prize.equipment_name] | [prize.cost] | Purchase |
P7!i_cVw~ev_NOz}ua`6>o&j$P zCj%M19#N8iU;Ck@q@?s7R`7?0_dd$p3}it6A_F@7(3l6bZ*5xUYjA_TFaf~RdWz}H z=r;)<20FdkfTi&!TcJP-o5!Lp)w?T}QFTP+18*d|*~h4@tI6S-2`&W<_=KV}%{A>7 zXsUXl5e^ZQjo*}Du>TmEdt*mI$!OO$o5M8nAY>gNahqITt|-?S!-Zzk`&R$Iy#VSI z8(Df%{t&KLm~fNxUXNhmchW4Alm;NxLS>5 z`}=B~ODqx#Oru11-bSh<8lce3oZLP8hpvz2Ta7_fS`8u%1pEs~oBFh#gKbp2&VtmE z?TS|T(25)hv!~@$laZ0p>s5B+Li&fwJ|zFYh9^%?S@9*gTt)jJ@m%r%q#Z40GRMWL zt?K}b72=sHx4D<}t|x2~YWnhYl<}SNXWFw`Cf}k3a?k%ZweZyj2z*u&VZf%M;r?a@ zQtm>Gz-wj2`${dzqC%cCHlu&H^RoIepK1tt_c@zy-%1tl)TtOG)G(s|;VErx&y$W! zo!T=utVjWEjHB+p$3Awyc&UQi0R${t?UUGPnQ~|U$0_uOe%W`w^S$s!E^v7A2V^y( z`Iq#5;syp}hTc20K-Vz{cKEoKg2sy6QjK^u@1o4C#ImWz0jJvf|MeLVqjmRYH~?K9 zGasa_m;(twk!U$UoT#VzCH1S`eLFSx=W+toa|gC#-xZ5WOA!G)e0-D5!LK !LQkvU8jvMmG%n)%=&dv4>D>Qx3^21XK(-= zN%Z+GJtN~cSuxa|NM?L=fYym2+rM-Uf-vV#&E#ieSz?;d7CcvrZVS6M%SNVJkU^7s z_L`M-^V0VbsrhQv4+uO>hWEZ23!k>-vGs>J5kj-ZKne|IQRF3QoA;3&Uh#`mw--<} zStr8*Jn#F&Bq{ZO_>3V91yO;nHDsSQ3( RF{0Te`hSx}{pqb%yq{rJ@F_kmcMI^wat?6`64h43q> zzw(u`+Mat>wY(B?){LMC7Un|Y#<3#(1&cx8ER?zCIx6m5vLZl2Z4Ois9c4qP>l1w= zRR|5~zx1ULzW)m>pEGGf7wjE0qdv<+a1%tp$pIiWG>+~3&(D6)!XFcUK5dUd3-8=f z?s36c?G05tf??rJE!~% @ukYRB*xzD+Ff`3O?FF l7*&jI=AHP`T7vz}E;$~*f>ML@e~ z0f|-T9L#pDj}BF!M#77E_J-r1&qY8hF4!u<^Wg=9-{pPQkKeQ#=;$S2x M)MY= 6zmp^fM ?|et4s_ zFT9`Ygb2_FNZ|rMKf7Pi$?5{Hn%Zq9A*qh*Tvbh-Ev?%F-XqdSkVa5sN6 5hy>&|f>s#{_Ne{`X%)C)Pd{HMP#yuU~s#j4b6d zrn>D-u6#=|{5;W!CE@?eWkk3aST3n(vvz|Dkm1~qrmSXz9pHd|`E#IsY7r|XyIH*t zCD1OtAK%?IN+&vG+f@LAI0@xgs7CKOUzVh)I;STlDx^avWP9R7ka_`x9E*yImV1ON zX{^RfGb0xA5zWLSPQ5w&g$wD!L4Vu%bjKehC6%@_9EU$j$|XQov|b5?ZLm2CWR{66 z`W(4kF8WmT?o+5}uf8C&?%ACvF~x!AudhXxgm;#HC1_+a%%>ouqkxtJuBw`1c`~A} zU!PO--U|IAnJTk(W3HUyVl)A9F?JewjJU7PpDpsyJce6oSu>TY);zioWs{w0)2HY+ zgup?D)K1+bgKG`*br-GTVuZ+jz-=cdc;$23lrJodNVU#9u8LB7X4LAi}0oIOoxQ7pz8Wyai2HUq@9)jzC zx8#Y+tz16v-4F`x`e*Q6!vkVnT=R`v$yF3sa{{E_C{j3JO+%U1r&QN)qdD^*(ykQ@ z7ADZ?M_|YD%Y&Khm4x@Gp96ad#QY?wk=HN7r?x`hEX!68AY>{9_HIcs;7O_MTNPCI zI@nr=*og&PBN)m#14At2+lbG7;V9rgUUwgrIw>>1p9I?~Om<5{VgrjZ{d_VV@(Lw~ z-C0jGp7bM!Mnn|9S(ch|L@NpabNd)D!05ej!^UCTEs~rYe(XS@SO;hsKN(`({?2pI zi+*OA`dzkSsJtiO?!brro*+f4joe_{8+m(Wa{L9b|7 s{%Jm&+&Ks!KYtyJ^IHq!)2gX!wb60^)( FB9TiiUD%%a~DO(uwMC-_*mxuA*$JS|2l_n98;tB6mJ zmvdJPyojR6n8)>go}SukDI(ha#t6pfOO<=)Y2ahGji%hC$s0~@MdU?U%?YE%YNhqc zZW^9pi6S5dfHYVWKNTpuY(I`oV8o8h?dIpsM0a>ooX<|vQLUIs yi7GFGXMr65eiAN_jtKI}Mc&HnmUfiPk)zNrub5h_@0v_%Z}8~pz#s2o z^MPb1trG6PC)s6Z4uS`HF<3OOAF{O{(mBX-{TT$_#myL43<-fHrGWXwSj-)|@Ipfo zgrK>&-yqqWf?im5^zUEh!HU;AVsN<5AJH1y!Cx9I6j&9A87HaW#1KG(Io?j`TicTU znkw`+D8U6IRY< zeig 8|=X(C7z;bn|zo*Y1ul|v(g^x{PIJQ1l%5r9> zaKIu~xV0>9>5P^RGZFh&PGcV3IJ>`j#f{h?vvxj(9sr_#!NUd8s3I6-S)sXIoL^$! ze`O#vL9Dp=$V+0(?iiR5Xo)NQEKjMK#{0gvfj;@CncM9s=o%Z$q5 Y zINQok)`l{Be_rI^zLcG35Z&z{xkTPCO q79 bKq`hQH9wtDldETv-4f^ zlou)f+rzDqws(FhO1*G_NPz@^D9;_Ey~9|S(-B6#tf>6YELv}>@3+HHP!qJUW72 86(E #%BNO3E(CnRA0vF}?LlNQKUM@} zjqBIZ)g|&dAC<)w!BGLl4)!I2n=u8mX|3^V>sP6$qkXal6EVMK&!=|n07CBfm==qV zkipr_ oZY+F*cVTs%206yN&9cQTRaG5eq4;Fl68yRIq8(-%n9 zn^X*Z(HQ&gLCo&QUy-vrC1Y%MYrTR*pOpZ?JD0+JR8)xQ*k tV#w<4?W&i#USUUszviVcoS4$aoXR-y zbcsYcG2uu9+6PZaX&~tN;vqC>%bub@>X%;qRs2WWr;tx2grxSy4WIXLZe5{EYDsB5 zE$%5ezFcY8Wr#`(`Q<}XG_gIld4WL?WncTUA%8R_NkQy$WMre6qF~X<)&K5i@dya$ z&nZm32JrCkwP-okiJqaOcWtQ!rmvCOfW|YJ@HKpJzEZ3RtqvC7uyz$r2!K{3^Idp6 z9!38_4*a>t_Sw^df9=aaF@?Hxyp4#gNaoTO3@Di(ZX`1}6f&H8zatO3Oo-EQ9|l_m zW}nehpk+E+4UGQ5YFt=-kqi42q83oJ(7V>LcLx8*Cv`AqG-UabU57)`m;(WbJ@q`5 zQVuTalgpE$7qfn4vY-~@q%M!k@e;4to7fMNAS&!^4#BAcJ+CK*+)wQYOc>S5!TFLK zJx?hQN*CI#QO--umg)((TJV?wm+2YMa51TWva7|(QGMINW2?4>nKN{#ilf5e<+P4; zF@03HT9JJoPCNGO?IpicbcOrjh|n1Zn1X-G6!gftxKS$PRAVk>a`MIr=nO$?xUrzU zXt}?fGbM&nn=0~hcoiW8av*Uu)nLOa-|b)Y6cU;=1g7bAt$#A@E&CD?MR8E>RjsQP zM&uTQjAwL#zHT5iw)l9^9JyB!Fk^Vu{oUkF_NX&CJy<{%Vbb !{&DASrC*d1Z lx@mtBBM_)< =^Y$?NyMply>f_28SbV)l zA6Urmf6|=h3kFYJ;LX=GaLuDhc;Qvbk*Xb6IvW(9XZqMPuElOh9Kdc&8-W5xoaOdL z75vB^=OmgR-h1&)O(jgYWKdyHFoYP$T%=`)KZ~#DsBvtKY+u{+>7fO81cEX_HcK_Z zu>oD3t?i{cM<5p9!TwvttrHEI6O)|NBt%2A1uBoyp`+=0T>w{$DH@aM*ulIF*G~2z z!mrvV%Y>^B6?al%L?YKEzWQk=O9iy2<*1@A4|21CVFn{z`DhR_&G0*s=_BtXoM2to ztc3ubo;--(`x$|NEbv|7YaR`iw)e8NeMm_o_Vec#Wg-%JQByFI fLv;jr-QS2e$&?m;EVjP{R(pkH{CI=E{piZD39H6p{;bv2INM=QTZ@q3D9# zr@8)syw!PCRh9i?*O5F7)HM?jznE@vW5Q>BM@SU91A)bmG8|3)I7 ~MWTq(p7sbB(aHUs<+A z-d{q$UdDyHd+m3 JgB?QuBAmEQ^izsKfPF{nxEAMZ9cS#rA!N|{dmn+fOKRget&aIm; zoy_>C!(of?tdT&q@33q7r2l@&R)2KE< K&@3a@#(n-p4`Cf_mW#jRv7P>N;K9ET{Wzg*)J^j+Q>0FA{R-=zpFA_* z{1#IL?PQKq=Lms@!de-QwH~Fz7*!w>AN)#PO(@lq%VT+cg5aj+iARIjessl2=t_>b zi!eR*N*qf9OByXGM_f`JKyc+4ObC(rjs%F}@Ll8)U;V<_^nEptR+70Cb1BQT*1`Wx zqY-;yN2C#Fvil5IpVV%ZhW18|eJ|OWuP~{z>D#-A3OaEz5KB0>rdQ6|KdywmCqTG< zwOhBEZpU=|+!biba+Mmhbg#b^AZ#HJI5=(SjXi7^6imY!P!gRvnWKK;%h_^q8RkAB z>(^4zgAynvCl#Picj{8TV(a|M*aSed zdj=0&dqy_vxyv6DvrAD?e z?>h33#6*SzS`f{)iD*>O@iE$GIssZZ$n>`CIcucc>FD>fYJ0{bFQ*I&?5{yHm1OZ& zsBT=8aO2ln7h5Pe#85CTAVFbg&Whc(N{u;ZfYSvlHnw-s7{K=D2AX7Y?`^8Xox*Gj zFlmfX=mO8XMOy2P?JZBlU3Q tS4?Wpkdk5?<*iZ(a@}eDYhvkQM1 |s!=(bqTIhp(o|yJORk1?RNZ$zubB&WG8B{1!&D$iw0|rRb>uc7K?s#y$yR z4szh%%DJ$pV7uQ9T4-YDcEG|RY=Q<6c>b4$JuK>oY&=7sDxt(>h-5gnq(z07;B- ztL|o&%bh6k`+B<{fM?d$Z*-I40A 29ZP|D39YXrK%s5vDHTadf9*S}{FNDvr3h^mRrad;- z>;&(0N~SMq2n+(5M^DgHcWU7|ScuqnqfsIKT#*ACK{ELt7vqpJmC!w^(Y@__Ehb0s zMaL3|Qm!=(DU3Pb0i}%69-fC@S hJHfS^Q&npFksvN*&|s8DoyG+Xm!d*?H99%%U39{84^tRU@MpJ%nlcLhQTe zj^09lY>;4H7flWKY)WRZ=A)MUxqJq;3Y`g%IY>C-G4}n9aC!6SST^*)&!81wp>(aj zus8Jg_?$*u6qW>z>0()Z%`PdQ<*{hR1NZyK;6yS}&F-@x$5vfgQIFVvs?!Da@>7_i znkrOJM?U)D&{DLL{Qt0Sv@c*S=hK4yhjbo033GE=Am`^#EY1(Z3b);i5R>z7mxWJt z9SHWsH`?8o-j%c3(GzXE?iAF1iI2Bqb}(B-?yRz6`>RR~@n-NWH5zG+lw=rbdy>Bv zvn_@Z!O!fMmaeNH?shuBB%-u=6MubbR8bR qe?$j?J6N!M^qy}v${&dLXh(-rKobo=SL_ Zp+rG;}=_0V$32v=Ym9m44 zbKroSu`MZbbYx=i`*IkG{iiwi2Hqv##II2@o_-=VS43cV%uI8hJCWN8A;^VaDJIO( zJcZK>nXM1~zh6IU=!eLIRq&mH?R7~-p>Zjxml#~jL%d67Cvp z&K4zWvE;jwatPZ{RQGGYQFM(&Yznc8)S$22Hu#Yb-uJf`X!rW6YexPzh#A^khy+Hb zOnSJ9#&$TL8COR1f4qGgM*X^Dd;d(%+A7ggYIY)^^>2AtJrm{_h}fg@9|;-yt|&W> zmF_fLOsTW4ZN9Axn6m3#BhywCscSo%ODN_f-}9J)wvIcj{GCE!^@lb3Gd;TcK+auE z6v@0)p#H0U^w{@qEwlpu>ZVw9{)+3@bs4WW(X898Jg0Bd^@Oz(jy~Ubx$^o~CC2Jj zTU0*1f`Z`j@bHZ18=T_raLEF0&zVlnvXy^11PCG+!OjAxPuN<`EIS|U$KDm3?R@C& zEHbfDCpLU%XjMP=6*SrBY^)U;M-FE#+oo~jxK@uc^!PF_-=;esJAJ#iBC#h3&G4WQ zy=p;o%$VId_KYTHe=%sWn30~Ia@Qxjl$*01u*QMoEO6tQv;H?*bXxh31)9CKqKg)^ zlN56P*`!Ddw&WJeJKXlc4+;2XLt{3uIkX=^pN$9%dV4X2Y1t`mr$tG1*IQ0itx$6n z3H|P18d=5A>B1zv6ZCf~3w$A3V`4k1X=$smsHvR69(!=NLhsmov^k#1A-oX!cj0=$ zfF8F5F*hd%0E}z(-m?=PZ=@Klwtvhd6!z}al@&K33;0{$#K6kh9!28+EWa2}#DO1} zzn{Q79I5;yIm~LUu@<#A3A7)Lq|fi(#QH;@2da%p_!+v|;SwW3SXA>VKD?_(1`N{* zY62> #6O7Vt#MT15Rn%?5cP%*1);6ImRDr_ zs4`SL1$OxLMYrcKl%$x0`0mJ=${;2 Q}blYz4FZ z60!xDtVB~@SJg>ig5x0PCW1=&F3COVg_r75Gm@Wihk4r0Pg@~izS@rje|_U>QNGBW z)4_y<=RSJw=Z?d>nZfjFFlt*klO}V9Z76tE7c4$h#x@_NQB+e+F*8ZB7d`J+%O^$s zDMr~2UxmR>Xx7mJ1K>aENDFkC1IELIMQ1e{&3f--(~-&`B+tAMSjtU@qMQ;sC`(R6 zW9M|mAn>4GApxb(yZ!=&UYb|__A#G=?`X};T^O1ipS#|=9LJ8t7zal8_T>-pdF_K# zN^ST{hm&11T
9NUr7)YM$J;TAu>yKm)bOY==iO8Ucv zK?Rw#!Hv7r@ba7PIRpPW^6*pF2kcX8kzTL>dO2gEu6isrLNBtmI&5nH?7C)PG6(La zrH0z h*lH{@e-Zb&1;I`#wta%+)DsN!}F)p!uLEC$yRpaH~&; zY;T6(954XOAR{n5^@t)o3s}BJKW@FpY7vKn%YM; I&K?>X+UoI4hU~`DheY+rUW<#z?N+CfukeiR-t)KiW5dpM!wEHKusHtUZ%1<= zP;0qHEr-fwVnAfDmCe8T{h`l#@Mqqs1uf@^i&z~=4tg)Wm?pTuwe~lCg?_Nys@aLh zyZ6#9tM%WM!i#J;vOG`wLJnghWMO{?9@Fpc1flP7dyc|KO{DDXu*&IPJlrTh&(gUS zj3W6aR3ULkK?=w{|5lcel@;Tk!TnI>fo(X3w)}$)@ICEIpNG~9%eY%uq^$kOM+Px< z4nOC*kzJRGkzKhE0i?g_YewFEDwnYV r%8SYVO8_}d!k)~k`c2J<_XD>Av zG(v+ tV4Z+jU3+}D3t$CB6J~t<$TbSZ1hy`)zh8~>m2PRI6 zBAt;cYzW6Ue?!&fXCo<;L{<%P3(B@bb7PqeF(@m$J6Exxt7FZCYlA;68Y#nuyF#+( zN4_Y`lS6o3yDL~ ZQ$pb8Z&T;N3IL6eigo#qTX)$n0#fihi$qdOj@QP3n(XcBNP0%dD0J0jKm|oA1 z^a%O;pnV!w>F46#h}Wr<7Xxw%3JM6p {MCQ79{xw-#`7vsK!+A+J}f!yW%g zNy`0b@j2z2TJRm^R7XtK7BHW4XaaeammHQ?-}-ltZp*H!QdOP1*GZTq1;(XDD8VO; z!r9NXd=++D(=rxPQN_MPEZ`hh+dqMb4LkOr%2nZFX*w`UAp=(nf|<|avHzl9%yLuG zT+lR+rE|Ew)?UeaMq~SO@GCW?)9Y@-=d?3?UGxsl1Ki-C5exb@KD+JPLtH!Kx3ACb zg }Vmd?HIgpnp`1#q{ zyvBTS`0Ku$3t8BQ82~7uxBY)iePvJ_ZLl@&5-d22J0Up11Hpr9Ah^4{xD(vn-Q6{~ zy99TK;O?^QH@S6h)%SxcU}txBrl0OUeNIn5Co@*$mT-ksIsO?}Ivu+S95Wt4cZ+Gx z=wZSY^9wsjBO9)py`LTs6%|z?M(fd_+#D5!KIT*oVea6aLN@*&byHJGmITpD$BI%~ z5);knmB>x3;LJvlSX9HF_)(Qc92f}8I(p4&Rov`~6t*rVUm49q-`iA;MZm_L_s_p? z{MkVYP4|Nm@t6MHH9-4gXoB0BtIL@i7Ajqof)m;t4esis{c?t%HC|mtkIAGKx)e5F zI0e!nU|SP(g@g kx|w6akKSfXtYn+IZSb5Zvoxg9ejOc#Ny_geJ@`97 zQ<}7>*62j&y3;%l6d&oBZT2X)b>WU)yo9w g#Z! f!chJxWilrFMzEb%H_4CQC_sV-c+bX;;AM?Q;iqo^20efK$SXYFZ3zQ87 z&T)rBZy{&Fz>7z~9xu~ry$ l&9xy>#nhgD!z8jd_I^Dtn+z1jV|BA{b_KHE661o6bD=7ORrgq*Qha3Em ziS1_+f;;t4!`h<^A|AJDsfj1^26D*wBvNQdF9)LW4}@VWgV|9i{6L 4=PtR#R_DgM#qSHYdZT|nx0DD|Pu|uQj z6X`-thqT6;LqiqgoecZ<6ee3eNMOgY@xgYp9;FN)p%J-HC~~-#9}74@nu8`B^$Umo zTW~Ty!Vryzm#R;*y5Sa!m%9q<|DDSOt1mxvJIwoI6S0RhXG?u4XsakAO`QN)sgaWW z%a7#W(N+&nd3RWwz`5O2SdfwFKoU|n YX)?Hv3jW@ArKF~=H>ScByiOdWd#DHf1km*3~Pt9Qr zg+tp5M~mtpN^3BR7TA*lZ}@Szml@VLbn;{E3ck_j`i{$bW-E=$jRiI5ZsBqhG=F`B zCYlhRoD$HzvQCNZhVqtPmgm&(^q}4IfdbEb;#U6FZO6uwtIlIY{DPvxY&lAs+%g1R zs&EU>YtN1+LGh2i?@52ZfFq0>Hps*O%%gBNjoehfCH)mV z?9tMfxJ$OG1}#tb2w{GtLub-L3oE5Ls-oFOj+;otk%d?K_N6?1u%Jd_Y$;7SDY1#B zD^rjdiJ{!X@uv42VoTE$y#0$P^5pa1v8Y3ix}ULi`T3o`)PfGeZQL`-F+cMi|5g z)Wk}0MN~F*ndk;MYbyMG{ZpGi$b?rEr>KvTUP`mSCaPyh9QUop-uR;wY~7AyM~F=4 z&OOuuuOrI!gj8MoFnRW-f~!+TZB`Y_Em1x2C5v;*)!+md=*LQ!r^g~V&m$hmk3WXD zVTunR5fscTC_Fh_qO+jgH8?-YF6CMpI1O5r#pqTZn{5$pFn{8`dcNT@GyJk}q{ZE~ zcKZr@DO`7qVX#VUZ0Cg@W~@DKq0)kR@Fl%DPaD{|97887raD?|=_RPIA$5`ClrC|9 z16BFTuLJY-FDEJHx`5_uxmMFl6EMO^zt(&v|FI*1VSuhf?xnK#6ms`NZuoz!5<){q z^jA`S%j0#PjulMn-9D1N=73nM)1%}^lPBNvH>*U?%kv-zZ!5C$LKFG>03Nv&CN>#| zBU$`q(8o_gnt{u>h=z#>Uq7QrevE5kI^XT~(Kvsd5G*Z^nm$SiUJN=<#Nx1lu_VxW z Zm(^q3MNBDbNUE9sQ)&5L4T& zX1Q8BDv~Jf1HW(H@j`dk5Yt8dx*U9INRSbP18OB>?=c8NCNTCAq51r)@|-IDCV|@q z*MzE>gS?m#i_%ZgOk(W~|3HBBP&>xv#SZr&kNy>jNcy#DaVx|O5ysNl&HsLR$m$O# zo*1fxD-k69bqaoGVGX2M(SNu+ecp Njh2yq49|k(&PwLSgiYjF;5@?ErRQTA3t?D ziqLPPAp4z^Dd_UG*sXvYS&uc5&k}0IIt1x4-UNx=PIEVGNZphlk8GAm&nO75BB8$9 zM7^5);lRrgimE)15Z-iM>mjvz=;B%$AB$f?dS=;8W6wtp$ek`^UWTvFG;d33B*Y{1 zWG+7Ft#}-t?NNUV?(dR{I*N=GQ>lOX!r_zTZQbu0=ZML@c2#=H^PQg1F-Ej=2k-2H z2}@^&b#+m!g^7dJb*=L*>5Jx+N2Rrvapn9DiVO+!33?4eB5cBubac4zrl%dS`z@<< zMpd8AcHI{qcn%D;H2FAR+Jn5ZRR$ILmh8 IKcX$*O*lKV zyIRSQvY5SIRPQ+wx(vEoZ!x9nKruw(YPwYEt9~Ei8;>Ptyq+4dtxHfCI8qlsb+%fU zJfCQX ?YEBjVB5Cewyrw%OSie=4HT5029{OW{4B6!@y#-W{) zGb|0@$OMf6JA`|BAMr+8kf^!a*$0AN4-mU5T(a*tNRVyqSwzsJnUr1Pnpe*j*0_ D7&)C4Y=t{}Jgkose(;Oiamw&nDPu4DNp1nR|J2!uCM?etS?yR<#pCL@Nkp@_ zGODlSJehD@ma`%I`%v$nc)P?E?pvbZ{kJ#t(eLVWe|10VG(T$O9iM9;i=X3A!5j~v z@m(YuwXIOyQYNFq>>CYreUX!m(5Up {EFW1&bb+7u??;5 Sym+}}Z)r|c<#BJQ>*)9S zZmA*2f 6J5)2Er)$$r3X%Nym1i25XX3a;i0FkPg_KhalXWU)86OL}0&O;2^)4e} z4b~gwv8DM^R9{e;7aEV1;|kdjRpVP&8A(*yJdB*_6SE@4#!!H7|0@4@a|u?kxR#uL zV6flMWloJK0Wo4~$-fntzM@f9tfn|sjtPQNfBk^}Ug>$)jN_8+a~<&eQ3%}$rd;t} zhn(bixjnWS{_}25m!r-!&KeQMgiNkfWdv2wlUV9iWKirlY z`i_^-%KEKyekU21r?QcaWRCZ s(1z-|m4v(JyD0&MXc}%~Zk+(C( z4hq`AxI#VdZxXvSPFTePf#Id@45NNgv%uDgHY1!mNWltDVz1eN+O~K(*HZ!&rclHm zMoiv(XP0Tzr24AaoR>FvF9T6-@+Z6#l#b|(peR>g>t;ltlX3HfudjF1%14Uz|Mb_w zdbqc{*54tt;yfDE0Bk!!w VZ_k9c|;TTSAReTw*d2iBoJl+r7fb cYq@po4&vIK(4Y_lFtR-Mg2{F*rReYDGdy{F@4=LX9p83Qo~Wkd%1Ij85o zCrX`Zi~z6Bg5^Z$MymrYj=lIzZC1CX=1hKG=!X%4^jXv97FnzZbfg-n>e$s_{*5n3 zxNuVbFz~^!uyd4l+ndhb=`FqkE$2YIt6*fUd=fWy9)5JpxrF+)oohY>jQugBqNDm| zdU%ZAt>kVn$QHLin(?8$_@t{_%HoIoBJOqvmR74K?AZ~^Qb!5WvUzcpM?e1uzr%e5 zPH1BS6+^pHAWZY=FMqi _|C_vz3g3&Qww0%|`4adBX5T)>E>5y8yCQWYP8U?Z zp(x2o7i3>Z#o~7ul;qUA#t8_N>q!|bNU^w$@gDK99TtZZglhNe-VHzAm?TTX$GXRW zj*ob+8Sh+wjv mxp5r$qcIp&YyS`(Y>2Pum`{=Ij_~t-o9&!A-B RVFVt`1SGl&N&IUsXBZb%o(s7V}vfk(mR^;5)Mz|ks045uRyH&Hf! zk;-%Db12bTwJ+hOJ!nq$(*dvL_!hnJ2)EBVRB{hbUAWe#fuqx+VYKo3A(eETjyn4D zfu<~qXA9oqMd{tV%&Pq`<^K9pIP9g?oO3r)SJ-F( +^zp`OQz+nl({8ZX2z3EFh6Zmza5n7>hhm@O3Gnl9af&(p=?eN2E zMHk3kAabLS!t+E}-Sx7`jyz5tp7APS@V$#;UqMR_lgI0C%15HjhfrL4#oV4;j*F?o zz |I%kr)?NT(b z{PLNaL1k-1Yo3d;F!S#exs1bxKvyH-zEXKlO?BBwI1?BwUD6zJAeS2SOvy#z*~b~% zL>SY4OlQ7S%^1oFh%NZsa4_2_u%C(hEc&C%>&tiwtC@&f;z!U(I4`* (XSjW8I66Hav0nHTh)V@LJ7E98D!808|% z12z`Q3{F`qI%$T4Nk`fJ(RYG lp2Lc^GQXp_3fs3H?iQni0JzLEK}u`Ki8B zQ^DrB>aMi?n kQFR_+@_uH; z!oWTWVv9>_uOPC1UZX5+IO&pCe_^vx=#pbvYq2}rJ XW46b`ckt9g25A6_!KL%HoQB24(Lav?F0UiZq#L-$(P4(WG z+ZEms^$O3PBM1$Rt7@fW>!V&X{_8P|E4c}O_>reZ@N}-q$S($9ttlGG@@I%BksOZ< zM62LGs)CuQ_{dI{4_Jy&mctbF<~u1^!(ABrs#Q6Hq5rfv3R*7mPhKx`hijFX52-{a zS){nQSaUDrB)KeB5L8;}?b3(BIt!)y%eCqz#0cgKZ(h#F=pN>9oOF|NRK$OlJ(fc# zl(Z@sNf;_&BKa{mVvSua)^~?8J|!i#CeB$kn^K=(_w9Xyr*EAyBH+}azHM-o6dn>bYhY_x3@ z u8~)>|A} z{Bc4>b(&h7!$o#&HP|UzjL)VAwMQZs-j#eKl=$a!T?tT-8#}u9)t%ER;Sqns$B5R# zZjD>?33xCM7eJ)Kpe3Gcq}KoTjkY~RvrX=f<{_55;9pspG*3k0xduucRXdc|S<_7o zhYoY9*K7{65&v8T9+=BmSt53QZxgy4N_xIM l8N|T*O*F-7&!8EcMs%Z6A5?` z8fsyd9F5T$PhdmX`=?2ekJN&94V4?3W*Jd$m52Q|WKmp-&v<&&X_MtLOP~pi=JV6p z(89#n;?m%5Ri!9paTVb&fAb(OcH7kJFf!T>dxEsEuMR5qX5D(Eu`yJ?8~5l}tkW;t zep~yV%Q$--6WE-Ez7AyT-Xo3q5sD-<(X?fLR*u8V^BY+ iw>01NGCG)uU?cMjyT*3gqw^+wc6phe_Wf%1y47&64w@p~6CM6i z63E>*Qjez!MsTt@ja7}un(7&Zr<*241=?})M0t_8qM1t0(~l6b(w7okaXHFF7s138 zhF_EnooQq=XEEfpf#t{Hro3F^zAlXb#POPK>4KT)W%;=X-GPh?J-qwz2V*Q%N_u&G zE!BWZuqw|Y;HHUf@yL# +9>n-rF`Ye!4~fIm>upBN~98UnK$Cho*_pO z=;Jp>A*7Ot+M7w3={8u6b0_!_v99T*6-Z$g1-GC0xOlgBmgB} m*B16p((){;sei2d9&%Ff@o1QZVG}KJXH!)N{q68i<4ZpWIn>QT7=TQ& zJo+>8Mii0ZzX!2`8M~}6O?sy#6imK{jbdTL#`7x>RS%ELQK^aZ=nDGvSNvm|B9wNj z1}4BP9E>rk7DXL-jL>K{nU7~y|6=adS(gcc$4@s-kbzw-n;2zI(8wlMARqa+8 ?u2{8Vy;qY^KL&d!(H0(&4ay9+kbg^YB4OHS zZ_&IBTtw9YF;zugFfCD@ySh{ R0`XyAPdibrA zc0%*s2QLwojymM-w`#A6c1>Hszc<&PdQxb;D$o9DL-uI9J|zw?YLZ1FVj~~J!UdjC z`OEwV#ZN(DWY$mmH+!<*PF!$#9-}_SrD#zUVcwqlx!isQE}w3UA)cT^&D^5MaX!M? zk`_*BKB`)wW3$CX=<;h-z^xL4aW4=t^y%YTQFXnMU1utoZ98Ll{A_bYQNQ)SUXD7^ zlTA8(*G-zWO^L>n;PVDry?B{6T6B`~Qb_qZuo;$6DB21O`C5cgdG-clPN50aVJ+po zo*cv_iVehNSHGNUO3TOY3!(0MI81o-uc2yEPke?J%M(mbZ!6JAD(Iv6Vkge2fvvk8 z{;7TQs`y=(tu7dkMHHdKM`@omg(`xRvEM@AL>;#%Av1UMRGNU=v2T1pM+BosR0I7j zIN$(@T^&~qP7x1)9+MbLE?lO8!R_|DQu^9P5@(hVBl8qK8ohW1F19Qgk97N|ONkAC zB~s3H2!*OohvA|~k?QbxT*mr3gK=*X>vcbn1MrGKhGad7X9;G`o+&%Jmo(CKdvowp zociL2wsIsj){mko%40~;3lyZD>{ryeYiUPxxc%L_3!QC7+Jn()M{&`DilYt)S3uoG z)6W2FD&lAEr{TfrZ(%`@9?mq?BU45F{(rpyf}o~WQJK)iuFAWk0;O;1nnQ{)gx)#I z8tlD4*E|>xdNt*FQ(FT<;C|f)^CYe1JYV>01cQm11(Flp^UW`r;>&^YD!U@Kp#06N z@EtzQ?u_+x0f(R0YBGBDiBoP-encev;rX@+H1G36hBmw{!x8P_4WLpOV we;Mmb@~rq`>207cGV* zKF9V3KWcZ}Q+VhbwnDc-nN@zi(BX}Y!0(@>#Kqx(@)qMd4v&|FcU(RG_( h=mxI{LS=1%YnV9ga`o5*CAc>| zVMMv9vJ(7sL~qa7VQ3b*l$r$9DK|;&*4T-Ai3&*()nPdNxzM^b5s)>Nv4nP{{EI!s zt$cqoqo*c5d3EU2^r7Q&oiiF*NQxvilE(10-ANQx8%F}6@_p%OuXipAaHLZaxX%r2 zXy~|uJvOfVwZey3aj~~PN2~O?$b&>RIXtgkw_$QA`ld#1=s*tSA(YT95EFs+x+@aM z7i5pme&X$k=;?EO%jbZ}DJ4BIdh;~)`=rlVjWpx%+RG$29$?{FOe3CiMI86Dt&*`g zDp@rUrd5Sb{emAHMYxkx%oYBgh@WRVGf$mNYNI)WjR==cR7joLds@}wP%dTSd2Q}F z;{H|WPs9xtJ@eQtTY=@m$?ZF94&Kvn&+FCe To z0mi-^aot%jvYx~C+t{att1safr&yv+&@tqR&YM@IDFRfCyYh=9_%H7o@2bvgyAf*r zDFdAuoc<| w-lNJr c;Du9sg=vi zMTg3pAH{vreqVNVPL1 9Y>aNEY3mG57|bMtMT~9($Rf!d-nUd)+On#n_iZb zR!IhHZ8|r1&!*aNdx;D!hUT%_Pj>Y3W0C_yjn*?6pF^p^<}%!iC+#0~GD4?SB$rbj z+4n%f7M_MDjW*uma}TurbNS7nT9YxY7~;=hnAjf2;<3nkWcHN=w(~hDlS5ulk74Yq zWVZZLm>M=@?dZevV?J~wsd1rb=7WUDbS;v-w3<1)gWk8_AB8$z znt%u`4a0Fl)_Km?z#`gu9G?`o(2|Yz$5RY-@q*Koxi{H)`m@2$j=s7EpTZ4V(lr&p zRIdLD_2)G6Va|oUOJ>MMpVdS&(luan^{H;2y3=S5KgErLmW}q?y9fmY({Faa|GrR| z?|D+vsWBLzp{UZ5514~93w+bO_0LW22Aox$5z|j7EEw~7*n*v!3B;HZ$ei(`3zSb3 z{Eo0mS~LfU(L{Z4#E**w^TQsxJizOF)tqaT1E9-J9yiO;!J~2+#x;gr!mQP85u$Sb z5#D;)bI2L1(fET8@cPYo #fe z@-6ke#DZb7f#ghbVo?Od@NkDdCI3o`1p{-VxabgItI{)>yB$r2W3Kc#
MDS<1Ccat)M8VpEHx8rE;8#U3qe|Q&`HdcY)%j((Mk?R@;jHKaoau7zn{VZX2jR} zSGMi(T$IpO<}-2wFf@=90653;P7zrf2Za-J(q^ &N`#ncmnk%;I{ zOXR>N54}8gG;tmX17qk7r}1K5rJMp?4sbNRZ28nr$YoZ0O7wH-v|f`QhI48I9Fr0@ z&O_FADf!f&zh?a-Do)NZOXc>a30oyZo&R0}7#={o=Z!Ce59960dF9Bl(^%3iyS!?% zJG|$O3=p4feznoH&=Ru#`d#4LW?N`>3L@?1ROZuND4Xg=E0GTAcAiTFwrWQ*uf|T_ z>jxJh!eOk3v62>g;}w6zFyuv!dZcot6QTzTtE!;(C+#f%%OmcLfTfap0{+p?0!Ia5 zunI5gWc27Zzi?np&;EbXA5V&ZWgz?Lw)@owY=jSv?9wrwK7Zn A!u#rn%g#+%4I3?`06PB$v zF7Y3G64LIHh+GYE4Y^!I9^L&|cGh4*SO+F4ajEYr;wPT<<4ay3+2;6>GpuM1fsd4l z^{J7h1C8DybuMFxHEF<^PtWuMhn69RwkvrB3^pf(QQcgCH|xpe;DlFp&y5PXeKnsr zZi#c4T~4mbQtw^{)DquMb-7MTun!z-t5VuNBtHU;j0A5M1*7l(Jm;PK?jCf|l^BDw zh2&3U#@g#{b}5ZdfNh*sHX}sm)<85iP1p)%CRQ!_i_0BczRSq5z^sMQ!3ca<+uD6e z^hjpix_IOG8mOQDO>*_$47c>Gk*q_QwV&f)sj^Ih-i3d;LGd2uF2U{=c<687ADP3_ zZX=X;VT=H>Km|f`O0*7YGX^4@ESjtQTQBgxn*C;N;?9HglAG0d%&-4&h=KSxH=*3o za&{rn`!4Y^d+@>8H>HH9`_JX|vZb?Qo8VdetR5Up_;Oksm3d^yU+d-W=+T3)DAUzy zo{ljIj&sGGf}MM(pTS^OsI?%faVTRxV!E`MpmWVu7$b5r36!-uV@e#F?Wp*%A!Guq z53hu}E21IcQJ(AR_QqO#>=_Y;$Fy-L_|XkfJM|y(sBj87u+ruq$UAgTSy`6893yt& zm#2FYGOYF0uZav*9@O~G%#eB0tGW)E+?g4svp+hZ%^FX9NVd`P^}4qnZolcB6<^YC z77wi%edFa!s)?6>+!^7FUN1;15rBV?a57 Mudp7e__ zw`+i;FcF67=L`P}aGfwfA`Wg5B*O7$>B$U$lV!5~I7+>qyJ$cogh5F`Qu2dR%h-Jc z*qR*8l$%QSP2XIITx=q+l2m1{#7oPfH0#WIvqg8Mm2Od4gSxlMl&`iS*&Q8wguBvw zC8GU33irqOy^Ei9+LAtLW7R@!eo=zks)ULW<#yP3cs{c}x^v_JBnWs%Jy0HCFL_dl zQ&Sj=w?;%3hgKettUnltu>L?bEF(h$qqCdVB?}#VjUQze{Z@DGgNsF(uu*1V7D*kC z6x+n|Mkc+=4Y16|#$hG6EHB46mBJmoQ^>;ZcILZ3{u>?n__F(zb5ca(_3HyY2Oae$ zM{T39L4LUn(lx>COl+Y;CcQhxDp@j&F}Wb_=5NtU$qfyEs(^skvjUVqRluq>94XpI z`H2N%SF==)QoGgU_LKQBtHiIwk&Rk=6gdu9s2X2Gf={C_d#j3iKI4I4e^H<-+PSF^ zf8X+NUKH~xNK2k5Ed(wygPGyP$;DN;#b7ZNGcyD9ffBLv-sd#u8$7$T@49Uo*AUr- zny7H-&vwMAynPXhsxb<_{KsN|Y*_*BUPL29P&Fk^v*=q-Wl9!~ijtvpyNOGdwdTw$ zs+6I$y;c9R-#{IgzHo7aSVR_keC(Osmtyv{+I)@SdXsT8gl|i)C!?IrotTes=d>w7 z$#!+gkL2?}dM2`MQ^2zI&vVfqZy!g;RCL)nKv9hJ ;3NRqhjZWxy zF%>b~=MLOwGwi!8i9afG4m||Rxo3UjVm+GrhR-}T c$^k1`hSl?H0b$(+U^#Vx=6C z%$c)@6IkUf66Rf_r9+1j%$YaEb}we~57RIEKeU|h9sb?yjxB%Cr?F2RKgV4za_GH= zO6txO#?8yMOe>E?sB9Tmuw FraTn1t@u~BAbS&c^q zhKG#OQ7bMp;WoiqSe12^Dj4o%Jc8Gf(zsMJN#CU*t{2a!p=@P`OH~fpQr`+KJkH%f zUG5sfr4yBTFK1T}mr2NqN%-)Ge22}+u?ZrXDGbQxTj5hO36D>azANB>%vnclgLwX4 zY_7RPU9^GmFM062M>1cVQ1`uEHy9A!F@~V=0eL~hzh6vOkbJDpS$RJ3i1MszK|amV z!~QFJve|*SNayWMvxsd&YCe3> XY&xXxLB#;@r9uUeO{JS=N^%Rn_mTDX;9 zYXZmA!)&5-frH=2PBmoo&7?nKEL21kSc+4F+Gt!qEHad~N?gEyfJ=FPoB!cLoj1~& zc5t4A6r*Y#>yu}-hr=Uyk6*y|9oXgFYQerq3-B(9Pqc?(|6MG7ipBrwST icYUj@8%muy z{0KgpfP7!So7YoJvfU N z$Ndt#-9Ld;=p!(m_AsR9?eWR{xm>Nn$D=jous?Q*A=Na-iD>3QR$PG2I<1aut&tF! zzK_xhpQqB?!s>@(g4)(>=T=xrw(RD0UpIY`_@2McijAjdeY>j$+*IgBHLyCA%t9{Z zw_aa1WWwxnN>OCf>iCr!E3XI$XPQoZ3fgvL>#RWD^2qQnjjLFuN&%M`oqTWTo*P}K ziCDcZJ3J4lYE9q%{0Wjgg-H(ycpAaN5#1oq(D2euV=GWc_Tb#%kbtJLS3!y)fR4uj z=~`$NOz=D|kCx~GbkT5Q*#XV;(O$WSph*JG=&)W^>IzeNoFmWG7~=Wu20`%Gl~DFo zEo~((Qj7F&FCN$MFsW%V0u3tv!kHu-?5-I5y`2z_b*ix06iILc(r5+LD7u72UYVVg z+8t7m1-)gG>NmP%lU;eXTse9L=+m>s_fN4k{B=&AF4Gs3Z0GY3HPbfT$o z)1c}feHCUw<< |ncV;O23Tz5T z<^nPps2osn&`Z9#A~G1s4<#z|sSR1&qn ?R)K{bjNZ zryvNe=rMP3Oq20yX1-eT(vjzov#DpZZ>eP -jQ+WNqzCbs@ z#E`vz?StDMGJb(t+8wf0EEbC;>Mk$B987!Y_nBsZSHJ&V$w d)@^kuj@U8>K8f^H`={{ z7yZpKw2}j&0{S1U{KVRpj|(JtItkAX=J}~>R}!!9$wrKrA1Mg^h9dt&7D!gGn-opb z@p!9&ge?nk^Cgiz;zc!hc2H0lywc&`%q1#L`eU>^tI(yoV|obG2ZwuDQW4ClKFUAq z0TS;2^7#2byj|%H?6l0s;*y~gzAEARv$H>EnAtt}o)+3=aIgZJfU5~lOs7bWqJhk~ zZbdTgBca+oOGw+?X?7MPXHJglYTt>RegsnTx!=j4-mds6ces6QolkxAr1P{q-WI<_ ze{RIY^YrN?$81H(B{J!Mo^K0xN`w};o%*KPY2_wUg+6Vq_pYZJyj@odkD#U3zxrzk zPd8SBlfxwtK5vbq*0nv>qG%b}f}@qlmx)IEm+$htN^g%fOI7x7gBn{rRa~qO-SwS$ z&ja%Xb1itjCl5#E^GXcI3?A${w-anSnbIl=PuHZc8od6q6%f^DW!*DhmYI1k$D6ui z;&XBQ 1uFS=vyQw!xdT4$ zucZj?j(RuRSR@zvoX`)!t_MAUw*tt&yg_-wm08XUyIFn2T_itC3#}&l@LyD(wVA0` zr>{U;$9=Vp^EzXxq%oApN>GXwl5?@$=E8K{?K6LeBu`+|Dwem*5Bnm(NwAJcOvy4H zi`b|HW*bk>r=Diy&5YY{6x5y}&JVv|6(Ca@3%hYx)B7HvH0v?Ttw;6ieAY{$L>HaM zGgatP;*^|pE?Fyj7iMJ(MDZC+>pk8dnNDyG9oPy>pH2>it6?AXBVuWayS+}Mm+`bK z+n5B~j4hKUUpk4@7j0D%1jY4IRRs2!j=^h)bANl87skeU>>_mQMu~ijBvUvSmn+v2 z8gh<4z3d*!m}aguu-H9-$^_fIz{MkYlPfbC9_XoT2)b*~>dD+(iyBUw_`p#Qizgi` zzRhK2Ugz3B>xTAaau7}B{LFX)OlFHE=-Zx*O*3oxd>^)~Eg5}_0+@6s?2EQg|C8ub zIgg$EQ~aRhbig)|nko4zw();%_G?i^AqlD}M) -j3Eh!t?$hnBrZI^C )3eQdF)qDybE?LUlA=FECOq#+!ST`D~s?y0inA${;iX1BsmW5%1lOIb95ND0S+ z o=mkoDStEJ$GbQ@)vGhqMzWj1~Gw+#1h)mu-zISgEo@L+!NfCLhO+SwmG zweqDilF>aY4*o87yspOLyUf>^Q*Zsx*07oFT`tvzv?-R*OYak9ADfD*!DEIYQ>Dt_ zu?H0Oj^q`G3tnDV@AEH@a#p0AuaNck(cdz(b*h)w41^V>t;go2Ot2KW&A6*ns>1DM zfr!~=!xj`zhYt$bw ZTulWT{#=mRfXR_uK!LZ zrE6Ww`7h?Dp!owU!3w8_blrRd4vmSj*P?N1xRtLV&DpOLN!(T&R(@NT7U9FGson G^Wv5lJnDE z8g4P3s#&zoho6dKFTI1YbuRk+ml;8`086k!#W6{?vUV01wtj2C6Lh0A>TVzT=XZ|A zeZ6I+d5rMg+<#NCgr1pm#KbH(D`g`0ilD