7|8e3{9KOZvJ2G=GO~4G>7#;w9(aA)jGWll+R^ZH;cTVMX?IO)`_j<$L<$mdd z1r&R!(K}g7w?;|4kgJ}ArL+JK#e6B&&kh{Zbi=J)S+X-lpf za{Daq7hini5G7I-IC0fZU)l>uBxab#+>22-oIO6Si|$^a_Ns8b*q+B=O&6^m{j@u9 zAocZXwR~8|1uo!o+;UBrpD;t9CghC_7OQLSJ=f*O6m4RCOt`fZ$I9V(J{dPZuL3tR z(BU5uQs9CYnJ-LVr6%gv8ySh(h|Gr~F21_L3YI^eU8)Fsi@fq3TDn!V&6VS)5lnM6 zuCBX!m8J6@CgwD8*R 3_7FIX^yzqN2th$+a&zRzB|By06RGoGDZ>JhkvEVt;zOqw-M( zAN4m9$ZrJ|+1Lrbeb^SNyu6$1*P 5~^-=}F&|>E4An!hiG@2--CE z cl3pad-wL!*{OGx8&APfUwK9>Jfms$ocr9l4*GhR%tX%SWgC|bxCHb^ zaiFgy9RfJsMrV>&@5hE6j={Yut{BENe4KUIm9w_~TzVj}SIPs^|5Obd>=BczCWc#* zwsO?^>yIb}JgyIl>f4FGUb$1(5hG4EMcC@wy *o*-fgdD>_yZqE1ozA!N_x{Q%-o_1VvX4Q za*mD;1T}M#=&u<^;NWe=gbr{}Lp;*6L~MWeO?9RI7CG8D?Uql!{*X9=_EYmXgTmg0 z+nZU8Q3i}!S()+`TQ@p+-;}QL&cUtKeeMTC(In8xcx^+a^41{r_&Iy1v(OHWGud^h z@B+cyNevk9VrO#F$7{S>am;vTJX*e5RB`Z>bWl0yE>w<;m>xKwbHF6Ki>YfQP`Tr2 z7VuHvcfl^D_BBI=z{Z>e2A#Adsto>b0G-Y<=}+j43DAY${fAZD@&j?SC)m|zlg~jm zU^>mzGM2S=|K_ESmKM>AAiS0Eaxvr`t{JP9wwamFB+65w dW&qO|ne3soB&kAok zF(W@O(N=l^%3P%5TprYeBb{rHGM6utT|y2sDB4bEkg!wwJvmd};OAwM sq1gHYaEz|fUp>jm_@U}FC^^r||K!UOYU8qKH8FzrBqeFh6ce@dg zp850wKd2bjc>g8o0^CWp0~$N*{5=(r?ryhc1YAFvq1@}_2E~?h5AXcOVsyu9Qc$at zen!X(9wXk^%rB@T5~Nn?2rMx)nQ=pe?Hk0uRQ 4QXGn3?whgkEFS&hR2)C@I4 zA`+R+%*AhZy_mAatig9QlEck(by2VTeaD}o!{AZFZ(DWcPNNQX6d?ZQ;)0B6{>AtZ zUam<*V>b3eLsu#K;|$}JX g0kB%N`0wol8!?kp+roEguB+&5tF(T@ zmsvVG=kMXJWYARByhdWiH?~V43$HCw{MsXzsA{OmOTTdtl|RO+J@1n*k@9(^m*U%) z&97@duZx6qH%M*Hhu_XIO!%M2W)(NQqrf|_*@sV^aaey~3!D MJ&D$ZyP zDIj(3fE#hp puu z1xvS^Z10%xs~d&JnRl6Dd%}~Io(OQwIm$WAUkSgUvhVwaagTmK>?bUxLCRraE{jcG z&l7R6nK|}QRl`G}=Ivzhrx#%LGx81Up3$1=s0wIp%{DabJ$LtDzk4KQU$^a*(gP!< zymK+OakFbLP&HTx!+rQ7EBrE(_Zs#cm6;*gR|MzHC%DhN>K70wSKxp-JXT>7 4`PkZV*t}Pive<>qCY>=vA-4D W$Uz;;TE2@?b)tFgfP(2KtM?0Qaq66Khxvk$ix*ZzD5m z1FQ(Z>m%Y3M}1~DFeXP0%AHra6_y1;+AC0NzmM)UsUdg?e8^8!&1=#>|0L)buMSiA zY3at&sx0?xb#P9C=jhq6gRO< ^~hG45JBk#^mD88bHhN%KR45|QnUYr`> z^YG~vL6?YWETxm9SN;u>;GK;5p8lcfF-u5s+z *|P=McvL@5jllW_yMFH}n&{ z70h>RLvbfExSz5(J4l63JXk6%tL!4P&O!og92_*Mr@` _(Yk`g}wzOG-aC_Tf6h>HV}vdwMHNggmD3m>-&3v*F@-A*c>#8 z#tEYFNNv9qYrx3!6&AwfCezK_EdHNqjC{umf!RqRM*elv0dYw`Yc!xA<6h`* qHKlXVPkSJlUFW`HuU?azmFc=@ z*&6?TBh! i)0Tk^szgi+D+=F~by(f!i`x?=`y=dhmgk`U z-+bWWDx&Xglr^0oCq%0soWb?gW=R+lP^CN@3?8mDK-f>c=o}NHxry>W`F=aVcR^T3 zw&2roJ%++po$@MaB(uS8ovMM2W##UEv=?2=9%u7AYn2y}{VCFI3r7mIT^|fW$X<{} zB`T>0)G&E5Pc%fciHx5V)%qNnr|UaTO-{ c*MgI2{J329yPSxn#_M*42d2CAvaM}=^f~{n1*chH zxD{`f4P1>eK#oAnE1#FRGi`9?i24z^xr?6 2 y6@#Nc|Fm(@4&%82rkRZSM&}5~B^#A~<1231!Gk5s}cPq=v2nuB-;$NbA zdU{H2rWSuS#Y;8vN@u^2Hu;z^0Id$~HbV`Ttg!en|0YIdCAk0 teS&(I-Y4`>^tN4 xkT zwG^RPDo7D;nu8SaFhhR^sLi_Pm6 _lNo{E8nvEKP_RYN+H;YSB{XHO|L ;LIi%{wuZ`(WG=Ba+p+73E5^aKtjQ9})j0)t`cuj?tdrgPfZAjy1$xM@uW3 z^x+2pPb!JvgYsLdod-MtVnh(M6VFfK0C?$-$>nGYpJ%*2ZD}@UU5nyN-^CYX+++R3 z;y3d1LU3H~hg&*;R9>7{ne|WRLJbWK1|(WMbaZ}45W0=4bdd4NbgK62WE$E90zYGo zA6%dWfjMO4AZ%3RuG3eRFj;3 rX)dZ-NXBM{seFG;m(0 z+dl*D3b3q3KEje`1ddKhqk*7A7L{{-ccDVRAJ9gO_WE-vAP&t~oD=9bAh}h1tXI=B zHXST>f9K-HYUQ1JlNyN4UtGI=+l)C3s;02CI;djUyO&)iwX~L9NRN6fiFzR(eTc#z z>&I{o{-K+O`SPSM&X`7=;Np}8D|*a2Ruet<=n8~!-=(uvfy3(~x(I~n01bc-?+KNQ zK)Tntc`{(bTe|MUOCCD9$mOf?uz4*D=VQO @U>~^$er?<*c9)$JD17-4rN9S=6=1f`2GOVMw44_|;zMPn@)k4RI3w?m>23R= zH3Gb4m+4m@Enu>?u< OoACDHaAK5DDH( z(9(Ln Ezdx52mg6-UOf+_~t08Sq&bGb4Tl2(;An)LmLXl^2V2C^ZjniI6%&4|)P; zTeV!dCi~4p%Dfu$?&eKZFmniYdcWn3KS&=1o$CF&rj*1l+0doJ^Gm1X=*de5XS~#Z zJGaKe$sO-> iuuo}<$_%_C4Ef}B#9>Ye{+;>`5 Fi}+=?@306meTc3?cz0V_`JHivpIpfH&)v#Zl$P4{P&!7R@@W7vE_^)d zvzpwnO5eGQn7OGc9LV?!Q-L*HP+4GLbj@TQa8TCmE+D0FdSL;|-tenUi ;>1vBG zk&Aiv(49`2z{|YWt&dSXWBIbtl=Cg#RqqjMikZ)b`7+x bx*>wZ`@uD~GfFD%!Qxa qkKilRZ|_|9A4 zJ~g*Be|8?%1C^s!xg_{QQGrKH8{g9zJScN{tYhNTyLgdObu`2CzPQ&^uB@z-+po_b zZa0^`8bAp<3)$~nCI+wiRRHNP>%kgt1nA *y*7@H z$^H2H1_o9i8T7!?(@pM0)z1H9mnSMv_yKp_Y@of4CVb*MCdgwkAbhn_g uGb&e|`@}9bJ9zq0;b~JG!D{s9 i&i~0c)bs5C2!WLc!Gr> K$|cU@PC=ODgPy-ow)-Z22apF*Sv|i7R=;dC%-;)d@Op7G@6Mml zGMEOL^%U5?vk8I9pqDN?+*NpWr(<*4Y)!HF#~*`G^CF~W^s*&>o~V!Tk@*M0Dx`a+ zbM=n1$)E6$!Oz5siVCpW6D4-lj&sjue*OAnK(q=*KI1u%&(*a!{Qlg6n>j+hS%2Ya zj1O3K{;P|csci7;u$r!^vjM_H_x&skB6{OT3>>aP6?UG95H7!kD>Mo}R(5}*-1n%o zIRc59RmZ%;Uu?%+V3)4!SSLOrTU%SIIpTqu78UpzqJH)4MD-L@@?ARPA;*)IHg4IV zb;uCxA7=kz9m)#4?g!^oKoGaW1DLxiEf1_;EUn6_(eE4l1b_DP3_dq-tKplm0rrTm zGH7wLp~WLKCc$-=5QKsbGB7)J%S?tSI=J2}Z$_-PGX?PN18i(;maeYVlg!utVrChv z1_lP-E{|3{Y1Ro}ym(PRx?TJ9sAXeSJkU0#)p8_Ve^s;^Ze(GyI7>uSIw0;z12*lR zOA6J`YxdmE8-^7}Ik4l+=zwkTJ^y7%x_~vkN0=gX2gfhMbIEVh;^A_p?Kr%`t6jTU z*hKzhlyro2PF<{_Rc}F^_4)w?QGCC&tQozz5d1-%O>qeq3^qJpYveOE}_SU?ZR^#}!|e1@%<{IQe% zN6hXWE{v8GsnfeF_WmW^ ZM1f&m+j+)uCv$yC>&=e_OIWP=q&Kzau#B1E(Twdq{2<-K&KtdlJyXttG{9P! z-`qVwa921slD(?+r_J|Y2Obl??|*^eIcNsM0KlNR(Ki1{<>Bi#@P}=$J*)W6FNQS7 zMM;0BehKWL0W1Y5i2=(yGg`;=aLQ#z4SiB;YL%|WdIsokG&h@}$B=kj(jmgW(oyNg z0Q5U58K45b-!j !Y_ax@ShhH7RrE;_rJ2e!? n>Ik$Wx))2An- pMga1>fyIYER;PxO zZ >40ZTkUwt9R-~6v2FTA5tb)!-3Z$@Xo->h7yJwNv#C!rs|o=SvCLpVXx zgy)~%N0D%)luURzI#v)$HRhmZse&}9j9u=GkKpfU+kLdg&&uwb5wukcu5^{G_YiTt zQSmn=w1JK(1FE75M0bb;0e2L$(~9^y);T2{gnde |8I84iapmIUC>$BHJoW+^ pA`xa4SC$!K9#)up{{>1o6k2WXmJE5J3VO4< e~GIlvvM( z4HBoC2FH1I%1hoxKcKC{Qp*-^zi)rBZNvpipO-U>HwhOA2-QrS7Wibq3-wZUI_7dD z=VohvsEgniIjVR4IPZ0sbeCkJs5#WIaD?W~q+J@FRD&(}PpG;T1xh>m??%O2)EW;7 zRj<_)dND$!w%c{15X0k6iFfTa`l7@8wsSfae8*CJS4I2Jt+tt35okAke>pCDOb g7@yGHg`NL-h3$Qr-5K)UP0>V0alWrY)^i5*UxHpsZPapP47z-bKPdBm zv{`aLUS 9%VR^X1F(4sF_}hVJOh0# z%`@edl%i3Cz(C-SuhOT@7(=4mxUG4L{6^TGe #d-?%8ev3xy66;vEyL^*`tk!{O9 DKxRhMra1STr2=3GjtoO1;1 z{z5e^wbEaTA#7gOF&tmoM_Q~$l5Q-Xa?IUUlh*U{k+GO2UM)yzCB0jLPZ14L@|QYO zX!#Uws#qVbd;^(SC8*j+p-*uk%SJTU*X!sc?ASB^U1T%<0PgOlBEApA3{Y^w%XjIQ zLSiR7=vS#EkXJ7=HKET+4;4pqN7{x`27X2Q*}K=a*0kQGRVs#u{|2$Y;##!3xHc_Y z@_w+SbiP{t6__}B`}IRb0C9 E~BtLtF*+A{JE5#J&|tV)Vc5y;lA`!~;brHahIdA{xb%k!=NA28}s zJjb1ccISX^&tOjCSD{o`^ap7h>`c`AU-_5( z;*zlCek6NyJe90m%_dBham@-nlz)NH704zQ7Xa+fweXW6aAad>qwrjz3GL+G04RIA z)nBM5D)Hh3{cmuqWlKjf{Snxj)$Ch$bl~07so)(F{NZijmA``FG#2P*_PITqN|Zw! z3>N909M#*7uYIiHt~d((Y@d1*=;-J~43_89PEAUQxxCE0X00iSWZK947NkW0CE+ct zLIO36|7I=!7n3>qTN6xiOqb(lQh`Rae|+Ups0mh$XK9?VLI2lm_ fY~!79sR5j?Bj%X7kaW((_FU+p3IjCD>OK0 {cq2`p*x2X3_y@OGD*bz=MegW(Xy`i2E4Bj&y n&4VyU<1Ou#4p@&O`;m?k{Jr?$9#!ls5jc3x z#Uo3Ajl^jdG*h%1SE15sR~awZgR@pus+!TZ5rLmKPyd|@ Z<>c;0tp=WHTST2)u86 zG9y!I(qVkJ@TrmC)CAtXZn7M}|EF970$g!b6-@>MIa-9s@@N8+LefQ+ti&gie{|FO zF&jd$+))9HKi%{rs3VvCQB%qd8kE~F7X9?=585uMCo2rB{|wdO=r6x}Cn8T2N!~NP zS^0LnRLLL2V)ARQfW@TetC92FF?~7O@sr({w(aVh5DIrElh(%3RjSnhx4i3mwL7t8 zytyhV?OnGS*k=Dq(Oor%-i;wf1Ljy$xpHTY`Iw`i-$CSZDfmuqZu4vKUwVUPNP@)j zd$G;nkJ17T02fhIgVx)b)GaFWTwbIccJM-_u3lJ#tAm+^qtl0473FYgdawW(LH3L? z)nVKZ4wuQ7IRQ}#OjH>d(5e4>c8&EhGs!>ZRzchR_+Ncb%exCyXakh~5}|)YPX*PA zP$8h{kwh<6pyG~=7%F`PjU%uVen)(jZYq3>-OE>rzdUD&o23iN6pW0rpNO)@O4ApY zm5uA`JRuD!LC4|sx}N2}lB#nNaM0LNj}7|bX#G8n4t%y@3oYKyWwG(S6jC0KMMAnj zt@=&nKzpxyZI^emarUmL^@pB>OXpN`x0z(~vdm76GVkmwjXg(ZTbA}2;&;*_@7%J% zc;X>CYR|~wtNf>bP1Ay>>iFEHrndzKMx4hBdt4Q2R#LeAa#}0?C9EhJ&{?<5D64E9 z)c>jEf%M0!SHXI{@7;j~`0SJvxeReMpaYHTDF!w4=a9>88bCti?3acYs%h%FojU&; zYr8-S3!DqVH?gD3)_z=kWaGbRmQSv}VCO=-@?Dl6eK^fec~5Yc@T&I0k*0sBr>9rK zXAFZa^rwQA#+q2mZN}w!_1%RD&Ss4uldv6q@l5L}s4%>HAa-B=|C_)2PN)8BGS~lf z3kaHr2ZGr-RV}S#SS=f 7#BNL-v12z4R0(tC&ki* z8Ijx)`tL||1fJCQdrJ`z3Kj(Zq%hO9f&iL*?sq=r&bv8_rL5c9t88A)QgYx>uUpaX zsJVQX!%?zFWGYrPiqAti?BOLpz`V>CotqXbJK2OCcDfK7PXNGMj7I^aTn!)I@yu>v zx23jXS^K~tqo7L{h<8;-OZq>QK>{vt5}ajcutTD|)4>Z-^S#6-?s(qOwwFz%_m;-w z;BCJ>H);HT=an6L27sDS#e=2p+l9Mxa9@>*D7k}`|JR9rOs$tY2vk7i5F%aE^#JyT zgZ=I0d6_RjyV4F$DN6@{P7Vb9`h>~B&q21S+Y`Cf{BYchKW*Zzz=cEXUhUy>oLLES y2%hzTlsvpW4o~WzEawl^`Ii;hBn*KBZ0$=>M!bJ91kM8n zJHhPy>NW#>tfnN2f90P~|NiYiU;j9L`TgtTmCZ%#>E-nKZ-0M$SS0pzdO7{$)8j*8 znNr{W 3UB{@2dL68R~gmH;D6Geze9hUe`$y)2w?8w zooXLOwL%#Y=|vsWp%-<4JJaB^bcn1BVRmLiz)ax+tz{!&Zk9fbjGXA5019`ilcMy9 zf{kj2PAgNmcv3q+U&OHG%?zH#%tKpWsSu{b44F-y`IXIi1z~*4W Qt;eSqDHW~l>{ zK`|zhUEmbq9mY`O2!9rfa*;cSE>}ncF%Dgklr@Ss>X6IYTveb3v!fWKuCe u&skddF~I!VQBcSixx`g`#RefW<5F+FB#4XUF? zHLfnfv8yra8yYw!uG}R!=;?1b?&v>C0DPt>gx%Fi^T!(SJ3WByCPCVQcW&pfJ+5?J zhe Z*`4?(S| z5oFOx9q;}m^>dy%WbKKOQ%LHu(sex~fkxvU#Y}gHQ4mSdl6t3lU}>|l>udo!mo=I; ztrD `GP559f~8bY+Tl1(L4^%2(PJD#7W&sW6+E) zi7tY0k`XJ*w5)6cdVKFVR8H)4n+=HpJB@j!EK}-m3G^q8vT#T24hLa8$GO8nc<)le zABVe|S*Fy{VDt_nXqKK1q~e7}LFPGyMxjo~&J`Mkf3EDveJL~wp&4=^$puuQUZf)T zx{#@2=Ch*!$RSaM9CG0(fim{{JByGKk)}$KES+pcyDCMpCJKq6p-YhhovKvEV(mtP zWd~ZK=sEL%Ct7tjM^;s5b9CCG<0t`I*-joyly{+n$?`6BC=1 z++YO7BC3;QHF!?#A*tp`EW_pSod^O8*N)F>Js3FN@?i5BZo%AWC^l^{T7zyh?Ae^d zf1&=Yb3k3pjzZvU(pS9k>-@H&GiB$u6)Y =(edSFO;f6oK79e7T9MPCVD;i>o)oF-lcn!{YhH0y+i zuwCH5Yom`60IzSq1oD~kFGyGZ4o5PWD|YLy2a=cTF$-EqI#hWqWRdHkaJq{iE8I~y zM(#Wc9_tTnG6&m3o6w=|&~`>>>4)1meD)iM`Nt(mho50DEA=DqUsldp7kDdne;j&H zyrC$F&ra_7AJf!}I`kBgY*GaLR 6+#ss}rp3gtb-hV#*_Q#jgm*2lW{ul5D%;;>c#Vdjbh6e$L2Lgr%1BM3#wg&|@ EJ^A@wc>n+a delta 1774 zcmV &*63il)!|o*yP+&`}65W!hAyr+jx6h%f zz3l|E{?%;;_*hLz6#vRUpZ@jhzrX!{`uf|q$19tQ*3 GXX1+vmrJ z#4@G6{l`0XK0Tj)`swi@iuvjJ^z`^J8WrCD{RU8_VXiW&mBIg@zx;sye?HR?Q4qk~ z#XHqLjB154BGQXGrb9340C%RrXXy}G8N%$$hJcyE1zO8S!rUx<7#TUyI{_5#R3}C0 z5d|C74xLt}aPg#efWC-f%bOWIjhTnGzEB}di5W7RJo5{i^9sWFmd$)%$7V*&!6fp4 zuFfR#phk7V@itq_IBpD`f1XL?VM)^AFMA;YKRpdCt udhDM{1s6ommvY?b<(@7jIY#a{=jM&j7Mj}>7e_X`-P =TQ{Er z>TxfE2nf7H0oQ0+U;k`_zdSxf&a|GMPfwqoK0ST9m(G}v2?e}U1-emM&eR9kt!S1y zFc}nMBH0B_5#C@7HIDFSu_zb0bLet~G!Wy^6-im6c%u%vtj$#gYA`#BLFyX250fz? z7PiqzaW&v1Wy70Pf5aJXut8_HIeE&e$O;+xd9IUG%yxGa0Ik0jkI;wj_>bu^Q)^Hi zHL7uS365QjQD4!(F>&QC!9h=d!*NIdUIO4VMIr32PMY7>fIsK~Y&Qwg7QAyihwX8t z>pD!DVFln?W-?yUbs@>(WV{~uaT!M_vrKT#oU}pf!Mt74e>V7_IU?keq&TukNqq=v zO^qOnPU?8~C#j$F%pq$}jGRJJkCm?LAqg}Z?6qvi{ye03;}ys&Xuheh)^JR!WMS`jC8D~&-j zx+J;?!bwJ~EYq^G4e0T`;ZQlT(`_~+2JAHEnX*i&!zIukG|Ivqu{#`u@f_z42jRU- z34a{!YG#>IM}yHDjG$S1I*^JN8U>l>6dHv(Av;%Se-yg1Blo4yD1>Ing(MeHg?f>S z-0MQ7ikZ)j0w9M(6>`XhqXf#>@9!)^N<^9}MY43V7451N$(kr6hK4Rh3UsPc8H=?W z36>pbiK6Gs1D
99Evv_3$M-CC33}9=qnW@Q)|9LZP(^&NI(4Le?Iu~5%2AUrl$APb0 zrB1_yWzNR&z%vKzavYf28ONXmlJLt3oiL&pHRx#q1~q&L(}u8^6x4D>_qleqF(`!r?auu9=K*yVe}#NRsP%6^0b)CXFMm z$;@Dx?Q_LH+So)5-n~T%e!({wyDEzmcogi56tpqsixe>5^R-3^*lp?*x{Rub&3A%l zXq_q=)H>r2ZMsl}4Xx{J0vTG@SE&bvf28+3K-+=mq*wHn@D-klU%_eORiHV{RZO!^ zcnI4C4!kycF9GoS`b!|6DgT0WJDvZgqD7|jl*ZZahQKxl63eP_Oenx^8RJzoOOY>e`3d> z2gMtTg81y@p8uGpUeuwdh-8x@;P-;PY!n_5aC7+xxn;fxxm^k9n?bk+UXpZ3hj&kj z4!mOBADRA%#6!~VP5bHj^!HDn|8d_ddKWs7AKm8@kbVU^^jjQ2*rsu4k`=k!R|#EB zs2WFfP_-=%Y_Giiz&V3|xiFhhN5;PkYJH~%g$tVQ-ER*nlV~B?L=MnkDR9H#M*U5o zNxcmJ`4Eq@QBTGMy;q*kA7<}ApML%Q>*?!n-yZ)9;AYIoGSTABgZc)C`UU}q`UV1r Q`UV4s`UV8I`UV9xJ>bA?1^@s6 From 1ce82a4dea144d41b7c257d28d6858d4219fdaf5 Mon Sep 17 00:00:00 2001 From: SabreML <57483089+SabreML@users.noreply.github.com> Date: Wed, 11 Aug 2021 01:55:01 +0100 Subject: [PATCH 09/18] Sign teleportation Also a small refactor (Bigger one needed later). --- code/game/objects/structures/signs.dm | 64 +++++++++++---------------- 1 file changed, 26 insertions(+), 38 deletions(-) diff --git a/code/game/objects/structures/signs.dm b/code/game/objects/structures/signs.dm index 896ed8e5134..398e587145b 100644 --- a/code/game/objects/structures/signs.dm +++ b/code/game/objects/structures/signs.dm @@ -1,18 +1,15 @@ /obj/structure/sign icon = 'icons/obj/decals.dmi' - anchored = 1 - opacity = 0 - density = 0 - layer = 3.5 + anchored = TRUE + layer = NOT_HIGH_OBJ_LAYER max_integrity = 100 - armor = list("melee" = 50, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 50, "acid" = 50) flags_2 = RAD_PROTECT_CONTENTS_2 | RAD_NO_CONTAMINATE_2 /obj/structure/sign/play_attack_sound(damage_amount, damage_type = BRUTE, damage_flag = 0) switch(damage_type) if(BRUTE) if(damage_amount) - playsound(src.loc, 'sound/weapons/slash.ogg', 80, TRUE) + playsound(loc, 'sound/weapons/slash.ogg', 80, TRUE) else playsound(loc, 'sound/weapons/tap.ogg', 50, TRUE) if(BURN) @@ -25,50 +22,41 @@ if(!I.use_tool(src, user, 0, volume = I.tool_volume)) return to_chat(user, "You unfasten the sign with [I].") - var/obj/item/sign/S = new(src.loc) + var/obj/item/sign/S = new(get_turf(user)) // This is bad S.name = name S.desc = desc S.icon_state = icon_state - //var/icon/I = icon('icons/obj/decals.dmi', icon_state) - //S.icon = I.Scale(24, 24) - S.sign_state = icon_state qdel(src) /obj/item/sign name = "sign" - desc = "" icon = 'icons/obj/decals.dmi' w_class = WEIGHT_CLASS_NORMAL resistance_flags = FLAMMABLE - var/sign_state = "" -/obj/item/sign/attackby(obj/item/tool as obj, mob/user as mob) //construction - if(istype(tool, /obj/item/screwdriver) && isturf(user.loc)) - var/direction = input("In which direction?", "Select direction.") in list("North", "East", "South", "West", "Cancel") - if(direction == "Cancel") - return - if(QDELETED(src)) - return - var/obj/structure/sign/S = new(user.loc) - switch(direction) - if("North") - S.pixel_y = 32 - if("East") - S.pixel_x = 32 - if("South") - S.pixel_y = -32 - if("West") - S.pixel_x = -32 - else - return - S.name = name - S.desc = desc - S.icon_state = sign_state - to_chat(user, "You fasten \the [S] with your [tool].") - qdel(src) - else - return ..() +/obj/item/sign/screwdriver_act(mob/living/user, obj/item/I) + . = TRUE + var/direction = input("In which direction?", "Select direction.") as null|anything in list("North", "South", "East", "West") + if(!direction || QDELETED(src) || !in_range(src, user)) + return + if(!I.use_tool(src, user, 0, volume = I.tool_volume)) + return + var/obj/structure/sign/S = new(get_turf(src)) // This is also bad + switch(direction) + if("North") + S.pixel_y = 32 + if("South") + S.pixel_y = -32 + if("East") + S.pixel_x = 32 + if("West") + S.pixel_x = -32 + S.name = name + S.desc = desc + S.icon_state = icon_state + to_chat(user, "You fasten [src] with [I].") + qdel(src) /obj/structure/sign/double/map name = "station map" From 6f1e103b6fc64f0f6040e27f79814c1a75449d26 Mon Sep 17 00:00:00 2001 From: SabreML <57483089+SabreML@users.noreply.github.com> Date: Wed, 11 Aug 2021 02:40:59 +0100 Subject: [PATCH 10/18] Vending machine construction --- code/game/machinery/constructable_frame.dm | 14 ++++++++++---- code/game/machinery/vending.dm | 2 +- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/code/game/machinery/constructable_frame.dm b/code/game/machinery/constructable_frame.dm index fbb6a0ad3c3..6d695141fc9 100644 --- a/code/game/machinery/constructable_frame.dm +++ b/code/game/machinery/constructable_frame.dm @@ -231,20 +231,23 @@ to destroy them and players will be able to make replacements. build_path = /obj/machinery/vending/boozeomat req_components = list(/obj/item/vending_refill/boozeomat = 1) - var/static/list/vending_names_paths = list( + var/static/list/vending_names_paths = list( // This should really get refactored at some point "Booze-O-Mat" = /obj/machinery/vending/boozeomat, - "Solar's Best Hot Drinks" = /obj/machinery/vending/coffee, + "Hot Drinks machine" = /obj/machinery/vending/coffee, "Getmore Chocolate Corp" = /obj/machinery/vending/snack, "Mr. Chang" = /obj/machinery/vending/chinese, "Robust Softdrinks" = /obj/machinery/vending/cola, - "ShadyCigs Deluxe" = /obj/machinery/vending/cigarette, + "cigarette machine" = /obj/machinery/vending/cigarette, + "ShadyCigs Ultra" = /obj/machinery/vending/cigarette/beach, "Hatlord 9000" = /obj/machinery/vending/hatdispenser, "Suitlord 9000" = /obj/machinery/vending/suitdispenser, "Shoelord 9000" = /obj/machinery/vending/shoedispenser, "AutoDrobe" = /obj/machinery/vending/autodrobe, "ClothesMate" = /obj/machinery/vending/clothing, - "NanoMed Plus" = /obj/machinery/vending/medical, "NanoMed" = /obj/machinery/vending/wallmed, + "Emergency NanoMed" = /obj/machinery/vending/wallmed, + "NanoMed Plus" = /obj/machinery/vending/medical, + "SyndiMed Plus" = /obj/machinery/vending/medical/syndicate_access, "Vendomat" = /obj/machinery/vending/assist, "YouTool" = /obj/machinery/vending/tool, "Engi-Vend" = /obj/machinery/vending/engivend, @@ -270,6 +273,9 @@ to destroy them and players will be able to make replacements. /obj/item/circuitboard/vendor/proc/set_type(type) var/obj/machinery/vending/typepath = vending_names_paths[type] + if(!typepath) + stack_trace("set_type() called with an invalid type variable. type: [type]") + build_path = typepath board_name = "[type] Vendor" format_board_name() diff --git a/code/game/machinery/vending.dm b/code/game/machinery/vending.dm index babae081e9d..2f24cdab313 100644 --- a/code/game/machinery/vending.dm +++ b/code/game/machinery/vending.dm @@ -1644,7 +1644,7 @@ //don't forget to change the refill size if you change the machine's contents! /obj/machinery/vending/clothing - name = "\improper ClothesMate" //renamed to make the slogan rhyme + name = "\improper ClothesMate" //renamed to make the slogan rhyme desc = "A vending machine for clothing." icon_state = "clothes" slogan_list = list("Dress for success!","Prepare to look swagalicious!","Look at all this free swag!","Why leave style up to fate? Use the ClothesMate!") From c35a72b3ba964c920e9a23667fd6e1c7e3efeb87 Mon Sep 17 00:00:00 2001 From: SabreML <57483089+SabreML@users.noreply.github.com> Date: Wed, 11 Aug 2021 03:10:35 +0100 Subject: [PATCH 11/18] Blob and Revenant orbit menu --- code/modules/events/blob.dm | 1 + code/modules/mob/dead/observer/orbit.dm | 9 +++++---- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/code/modules/events/blob.dm b/code/modules/events/blob.dm index 65d820ce43f..4f15e3983e4 100644 --- a/code/modules/events/blob.dm +++ b/code/modules/events/blob.dm @@ -27,6 +27,7 @@ var/mob/living/simple_animal/mouse/blobinfected/B = new(vent.loc) var/mob/M = pick(candidates) B.key = M.key + B.mind.special_role = SPECIAL_ROLE_BLOB SSticker.mode.update_blob_icons_added(B.mind) to_chat(B, "You are now a mouse, infected with blob spores. Find somewhere isolated... before you burst and become the blob! Use ventcrawl (alt-click on vents) to move around.") diff --git a/code/modules/mob/dead/observer/orbit.dm b/code/modules/mob/dead/observer/orbit.dm index d5410015f5e..be7154ad784 100644 --- a/code/modules/mob/dead/observer/orbit.dm +++ b/code/modules/mob/dead/observer/orbit.dm @@ -31,10 +31,6 @@ update_static_data(owner, ui) . = TRUE -/datum/orbit_menu/ui_data(mob/user) - var/list/data = list() - return data - /datum/orbit_menu/ui_static_data(mob/user) var/list/data = list() @@ -96,6 +92,7 @@ ) if(SSticker && SSticker.mode) other_antags += list( + "Blob" = (mind.special_role = SPECIAL_ROLE_BLOB), "Cultist" = (mind in SSticker.mode.cult), "Wizard" = (mind in SSticker.mode.wizards), "Wizard's Apprentice" = (mind in SSticker.mode.apprentices), @@ -120,6 +117,10 @@ var/list/antag_serialized = serialized.Copy() antag_serialized["antag"] = "Terror Spider" antagonists += list(antag_serialized) + else if(istype(M, /mob/living/simple_animal/revenant)) + var/list/antag_serialized = serialized.Copy() + antag_serialized["antag"] = "Revenant" + antagonists += list(antag_serialized) else misc += list(serialized) From 29d4f2b3fd0d47258114a1e8d2406fef64663eb9 Mon Sep 17 00:00:00 2001 From: SabreML <57483089+SabreML@users.noreply.github.com> Date: Wed, 11 Aug 2021 03:42:44 +0100 Subject: [PATCH 12/18] Hybrid turret inhand sprite --- icons/mob/inhands/guns_righthand.dmi | Bin 55726 -> 55708 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/icons/mob/inhands/guns_righthand.dmi b/icons/mob/inhands/guns_righthand.dmi index 2c541898b08b5921830dcef8c030dd7586dc7136..32c27e7d57d5301381667a7e530e34c80ae6c1d2 100644 GIT binary patch delta 14571 zcmZvD2{=^I|Ncl(DU$3WRLD+at&pwAzHcG>PO?v~7Lk1?M99AHyAj#9WG6c#*^O-& zGykK$-`{_E{_{NJ&YW}Z+;i?d=kvbj^S+A836skSOD2*bvAlb;6i0{WTc!QyE`-`d z$|t9+ejuG^zGEG&S>I0ldZAJ1-MI`7Y0B!xue|RGih}BHe5xg?ne+SQuk*}5B8Va; zpi1@p-NyCz@vrv&+zq7#gxD(!_U9-wStVIlup$fp?u zW0RA$q_niOuHm)1qF~TeF|3%o7x~nqU&2b;d?i(|CsYEPb`)UJem^zf!-o%w-}-*g zftFiMb|p(klh?U1)YQ~?n%;zgtm;lAe+{jEYcd4!b+Ba;7*tqC9*moXo6a`9mJ)ul zHd;7T^t>_X>(|=_dgXF7B>d>dPui7r*FKZM#;cuDwOT!NPju1wn crM7CVo6<{yf?%AR@>3jnUX30gB#C!N2eA?1x&m>=V@J z4RQT-Vh@hOg%%YF3lhvq8lD$t*?eO%HeetP$eF%=0b@0(TAxWe@Q`{O<08Vauq5y1 z`P-ujyH)Zc?Az`#)6&k %p2w@% zI}=u^m%i9Y?Y*|W2eb2N>F()i%TdeFUq{dc7q ?u$;%Xec_)DMEBJgDv`d^gtYB9LHvdh$FL ;bFTMIz5NGpQ?mHD7sEMf zQrs;eZSkL6>ZAAC4!^xy$j9WCOxWiX6}7kclc=eyUoWL*`XPWXMrG@#;14I-n(nTD z`WZ}~ihs-A550MhEiaEhN-X(#ae&FX_NZ=nJg~jJovN4}<#_32D ae z1>yyzq2uLqE){Q)^pr6PEsS^oA*#k q4{)$wC&Y>bte znV_+}oZoq_`3tov3i2NxpyK&H(eS{Sg6LL`?D+Qru018CeeSxv{CqWI<8bh#7hB0B zLilYBHs-#)dokDih9=G^Ss2KoW!n6jmO`QMapt(=frX;W-3$x4L&K? #$x4-FxVPPES%V zueH)TQ9LEVk_1u|&v6+oOygA1#LG_}Uu^hoveJ%K%%^+>Ix!f`*WuOF(viM6xCuGH z>xxK}h9X4lX^NiLz7<> t#F0AOeOzHf0Ln|X3+z9?Y%#= zk~j&&Z=cFnHpf+KnC%@O?qzd!SlxY1yneK^ShH4C54+FJwYIj#zt(ujH<%utGtk>R zOv>~q1l$Y6r_VR{vSUu6fmv);#{yfby-QN`dfOP7HQQJpyVonku+6$P9tH_tLrc9o z*kwE@+)*86P;3|8MMmwAAX1GOUg7ZAq^^g!v1p`PBIG;DfUTup#;+WXvdk`E1qD*1 z-4CL^pqW6M8XXrL(V|p+S>C<86a>NCbfsNociz24s~l*0^qT||%X>)+Ez16638sT! zr!PGnE7a&iQ{3QZNWPk!RA8CuppW{;@* #A;=gs?L>sdZf;dT`Jk%UKCN-8-pK zK^H;6rD%d2gQKodF}yrg)A?H^H}k@5VUh7judz(=C1kEBUeY~BERR4p3V9KQWMg4r zu?>$Rx&pHtNa6Oyp;J$A4BWwr`3ck!9pOv?JGoASZ!y*37z%Q7ayPPWIzDg$3rqT@ za#!}P>!1w0=>L_mSd9CTlShxV3PgYTNf`|l8b(JH5 zC1b%OR|vJ09rowHg&le5pPMby^Ui_EdXD$+- | HJ_uiw4%_KbN%T-wNYG7ez{&rZYd6E(Lxq3p6 z &@gdQrt*tiU?0eidk=$}rtW~k>K55HOOr 5=v2kZjg0Bv&@Z;TOUf>*rOh^NyhaGdF*7wioVa;p% za=rQMsJo_*v#wSe{JHj -#Kyhh`s_WkRbrLQsi`zWy;IfOt zE;}tB;S$PK!NA|>!nY z6RUN!+3nD%SXD$8eDhjs42Q;dNa2~xEiiEFKB#l)Tj#(Q7Q-)W+=n^5H&KVn3-Kbh z?T+CX!)v@qr|R6nn9bOD4K+SBsC}84AnxHfj+$mP+bj&{P;VE$K}q?Mx9R8{dSxI! z 7jOiNGL0RP z)4)&lY%o1E5;yb`>>fFrpHJbgJV?;I_k{ZzL^tw^OJFzhp)WgFJGLE28{*!1=ZjWG zLklPBW~_Ad^aktf{^*5zJu) !tYqg2D9?e$4n z2bnC@M9<6jrAI;S*wD}S^e_gZVBCCTh~v&;0vMt3O~yeC8Ny8jHn+-(jEh1R>_|sm zK$G 8R>~`A=(h*ct=!&tXco28YC~KA1&pmx8a-?ZJDV8< zt!#7SGleueKPYm>_xZKYk(X0g-j`=(^ltIEf|9%Yt3#N^tVp-?F`~?k6L;{Djc*~1 zt$=H=rE{q?VXyoRyO JE@?SUGp?JC| z0j7;y*xNgcglSz+OCw%ab7gA=x*}1#(p194bWw>4thnvwNb>Ov{GGhr*$iQ$)J?UQ zyVc%^Tle+&p#8<_nhS$RU;Iz5Q@CKdDGQA1g%*^34SY|qPO@7mjjCEkSD9t%L;Z`^ z9uM8WO-lcv2f%i1`O1RO4M&memrX_^v5R&jXr~1>d=o@}S=dljbhfCB1^Tj_&IAkF zm=22MP)UC=))8590yYFz;|b-1CB3N<#^rfWqaHSWtJ(i?E91jNWXn0VSGxk&uU~im zJ(m)Q*mZDlAAQV!fHO{SYGRDu+;G4+u$Q%idD1I^I6Ks9cmzK@Hcl798++qP?#3y{ z#35s$#Q+u(RIx9Xs`?gPa8-9+UXDJ3uzAvB%r;g_>)K l@h;F zQc_-cP4aeq=PHEhF-9Qcrx66(+>C2$&|1bq7qzu_Wf|x+jLR6&!vK~xAAXw_9B6_& ztovsFv{m>1oxC~{O|xY4x6(J|_rrqi3q8; @@SuJpTl4$-9Ye$qiBo%-V*go{$Ylg5Gbmi0NyEc)@ zgaE56zu)9bcjTG$FbtVG7dqX@_|W^-q5r#_8hw)q<%EzO`2&QuE?gc!{ADKl=D>^1 zp{aJ1f4n+xpU~8|irxmuKetUK!*UL`)a1-JtP!Dn!0#U5`UG_5+dL`FUpf%U@{54= zFH2B=f0ZV>7kMq3>A4}at5^EMUl+VD?mtMU{Kpy6FS6!8)!!#`cj*~3;D>MsZa6$v zDd9Z0^4W{!iLGs3f&|p$4ysH4Fs;W4Kh?u)rxQrp*l;BAT{`0% ^=Q L{(poTweTj?0`A|&-*=6y5^?$Hh2_v h;mXxYd}<^f2erU(!sWM@gpLxCGc9bblZ_ z#am(3jU^u=ux?XBk>_->=lP(NF s#XX&B|X> zuI0 2(x-cpTTxH05FzzCT?li|W@7k7`6-u(4Wn)na~Ym%Vn)DC@VQ1#?_<2?gH zzYZqaj7Hq#xrS0t(E^59Ce*A~@2tL@2F0b~2Kv5_R;R=YE1V|`pE?c;@RD6FjVbjS zG{HD0 PBwnRt5+UcxPbyLM zJvZMTN?&<;a>$v#;w Z>jovmnYoS&%k(X(Yc4{%Mg=*edNDdJFN{ zx_8!O{q84x!K-rwXOGg$OVp1Ztp(p&c52MkGs<@(YA@~D^WIc0^=u<~l63eIk`Xd) z4z*-}{X{i}v~fQ7E4aJ9w>ormFy+KuJR}w{l&xaGZ(pz7cv@w-UWZ*vgdcVEKC?ev zqJT9wTp(dtI58QSa _@9?hkyEXGzPabS${?gQFARCb`}u)N)AvcOo~@J*q%Av zwpwftjYGWh@!5i=kdOqJCG61Yq^cUB^#tN`PTt$Gwa~z|rph}#ai@GQz6Yk ~ US=E%Uobxpg$ zN&bvRv4FM8M}-|s#D5&7P)AqWVpXk7xv-%+vv0Cc(A{KiFzwlSc>}zfP>T_2L*tQA zYWam%%!Ojw)A8ZrhcBiKoEA3gx55J3r%JGe!Un&xR`u|2#t%l5ju!hH)ssr j+ zM|a}i-CG@a6bu=a6M1=g>2KD#Irk@|6;#D03tHatm=;@FUbey4Szi5_`dWy^E&<({ z3|H)eHUe{VbJO?V;ss%V9FA$i&%H^U%~QK_uwv!5H_tln`>3uZ@-IJQFPm`AEhPu( znWmeWzqs#6z<$#%aJVlC-5*dJ+aGTslW6cREhU$gqlioK9XfoYt*-uZh#ion?_dkD z18`j=*SP)npxNAXmD(Ri8Ft%lA#pn>?Z;3`%X}-;-Z(RJG?Zg@)b;Stbe=?zTlB8p zq9A0)hi|3{b~KakI?~$riKxpf^dc-lY?j&OKA@UI$wFT(oGkAbqA=NgKD0>hb>;>k zh<3*Lk!4qDXAVU-Lx{nuAAR-iCnVL=5U(VU%z{T$6Y$58@@pT=qNjNt5tcydx3Ny* z_j{|S+Rno?p1G1PX)x#j@I(!y7FXivzBsNZ##U6^FSQ k{xb@#VOjTiCqNn@_nm321UxeeRL4ch5 z@$I1km2p}Q$JBa(|BLlg2r2XW^+Vs)Q{Dt!vB95aQSe9TY9jQO82UuHxB8K63(Kzt zGYTfAaPW`~CR?;DxkqTRJwLTx{1Pmp3dU7<@tT48p-{;AE;5)OLhmqm&N@su#0va* zuR+>Qtf1><@cG_7RM9cEvuLdDDSu+ ERr+4WB)OW??)T^RQ`94Y#nlIjW z9LR%8P99D3UQfEZ_|P87u+7B%=>GTFB5j}E)MJ`UOpmU!8;v<#a3+`h-n5m^J(Q(_ z+{f0sQYYcZXV>;q;JBh`qL9ERcfeJ@t3byZ_LCKtc6N4XPN$7`jPc9HESm%vGW?#( z!gjNi$m`?#S ^(ibNH_$OIumY{Et(*M_2w}JKs7_I+i?EQzn2Gln^w|aTuGZsGb6ar3JWH!feOzj~{*kOuixuGiYdpe33@tbWh_74WH!X zN$%U+p_?ynv0P>YT!Vcn#3+8c-ed7BAa3JMR9$u-gK+ub?3W`CXTq|{v{?X1Qm`q< zR8d&U7OGm50Dy0?J_0F%635ee@+2<<%Lj)IG<+t0#ig+$ PXva@^SzBLn?irdSM*dYvkS4i1?B@Vft<$k 4KK6i5^y!qi)k%}e$jrYLH<7s^P)Lm%MD#?Lw%&4O13)y*K?s
1O*2} zAs?`*O7U?}MkKO;jtJ80)CRepP)v1UTH1VB3)ZRoaTO4T*81RZqp@N_KUb*iVL=i< z2s`k_!z^rZ<>Bo4JkT`gU(@t-7MJxS7jtv-_xtc!@=w8?At6`JO29Vn=|lOn&bJtk z5DYPIg2A<|8!-1td*_jnr* sw>k(Sj9Q(j1pd5I6>JxsC?be>F8+jHj>58ALQb7x zl=|XR+|S}xFrrfPRrM?MVmCChm1B({Wx5HHrCg2d7vn$Dbjx1lR?wlic6WDU45416 zYq}`@QP3{g(YM~UeP0iL%Q**Q9W5}x-oCMqdG{<-nwk=0ZEd?t%qPm2 &I%ipfWyTL|)U1xo(;LMCE*|{4bXLONT&O;c36Jj@Gh>t$^-604Wgq zri%mk >3Vn&{l;`sDp7*JFS{wgYpp`q6H_A$OBsy=Yn z>KN?BTiTYdN%o}9k}t^2ZIF97J1^a3)ROQl$N1=DX=OYDV_?Yo6%$@Q|1&db7fE#M zmxq*3npap|(IGo_yOoLexvk9Lsrv5LXNbmNY8;#&OkG$!_?)Ut IaCNKZ2UDoevuYF+4GnxfVI))n-h9u zIAn?xbo1hSe1P`8 nInqD|r*@vqwd*UO9r~bYrU8Z1rbm-0*h1 zzr9>v0|*Op@67upRMc@^YAH~&3VW@A0uMnA#W@dcZ7owskM>M(DJbCjnwfcl^0B^t zVnTGR|L4VaPz8Mg!cEGzkg43nDi?NdtdFab@zBVx_x^=|62*s#wjb7AyttQJQ1p24 z>sINIrIJvVekhDc(!_5BE*9-S(hEOCYFN&=py5V+O1k6SKxr9CFayg4Z1hX;v)$%P z5N-3#Yc;KZ=stI~*vj?Yta3S8m=@5S$yv3lOH6`FN@D9Xm*maD`Y;`!xAWum>buBu zw@A;qXpjAVMy0I?l0>d3^RyLDdbzmDPmnH>>9&Vrm)qG1hdBj#kJa^Py+f;+IXOA+ za&z}ZZOwy@>k#buOU`P;3%Zc+xXc5?!#lo6y+c%s$u2C=*YG d; A=y*N;^->aP0J z^Q4MGP2n6#P1kJ^5DJSS$b#tJy=4%%p|`g?5|Yk_1#OB_M17j#Ig$+S42!s;)-mGG z;Me~)`A!GVu=!S<=G+>-(w`Czw-{1<9O`=ZQE;S&vy)jmQa0SW7g^%my6 `gkv}*LNsO zNx0AFcyG03!(CCF@zY{Y|6^~$yJ&i0R#s^SabE^mSy^?YUT{#*_tM3V$jHdF^>lWy z{Z!#B;&``?P1TM;{^1G&wZ% _VK?IbTJ z_n`*2ouRO+^Qo=Ks6HY(`rQ+|79oep+j60F{?TkI$Eb&|k6%TCa-({8JptdfVm*+K zFDs9j^y_kr$Ws0sWGWqyKJYX1r|nt7@{wZvS@`el=@~K~w$8Vl`H_|&=9U)}1*v!b zYyLnMv%=AjZ;86IO-fI-gXuB6rSw^ha>lgP*|h6=E`}cDx{6G3Z^p2v{yn`&LOC1~ z>8xjqlcUN*BiBz~e_!D(mr4|KyT{`L72n49%*=B3K&Qw1`j(b=U%I-2yZFjw;rqux z>+gU}rW-YSQ)VlF-hB;m3ky?!`t(T`>HGS}iX+I*3x}Hi)ej=1YzgDy Hw3Tt-TfF PMc*pzasCBk%_UyDH}>EU`HUC|WjZ(X>8kpD6y)>-h}x&P&PY}TJ7P1CrkeyB zrNMn^lvyNmR7d T+SZ)xH^>0DlDwi&6Bde z)2G+@B{nAJ32jX!U@L>wPR3X0?q39QMS6@=PNrgf(9w}6U^M3+`aXZ20=Q{KMePSg zC9MR=b5zqG6JYg!e1y(EuT(fTX^zHOfUB~A$Kmhq4=x_Z6kV{RWu8_*Kv>Wy$-c{n z-wefgIQ@5pI2qpu%o f?}eKr+ h{$=o3Sk!MX zK-UESu0OS}CjVKL(QM&qKw`WOMdsKx|NQwXGA@gR)@-d?_W?Z&M(K4Xrq(69bcy}< zvVRw5JGQ?1NiTBfs%{NLn3cK8;-Z@#QwqS^-FTtTY^}~$X~b*L?X<3FZA@#}HpADW z-?$ UFFJ+?N%ontXS!^)p{2FvTXuWd)xLU#XjRB=c^nD>6p%^7Chv<^9P**7NeKB?&pu z733|4Pdg&DBT^xU$qJjv*B?J7hR`_-hgM);BZXFYxw?&i#U}&`?aI62;)ZuS9IJ!h zViEkH@% _CXmkDvOMJS$h$SBI!i$$Z tYXG7kMmi~G)EvB)uopEJM_$%8&zy#+n#H(qM+rtC$U%|}9S zGBMPikK^$(Gu844oR80J5f?s7e{=;|t%8hLhOF9BS%vW8oVWrmJbmTT60|bN3gTDq ztQbhyUU^x+v- 3^&YWkG7MJvT% z%^l%Ps;B&Sx~;lh-Es;GWr6E#JQX3WpU6|?V3%kIjv&YT&S;I;3?*?$6uTH&QmWF=p6L+v&A$`%IzTSj|AA@HP~{-p}M%O&_&OO-OXbFA_hC zoFEnz6_q+`-Lm|OWo3l(qAadG+Ufoho{6<%F0F_9#*)MhJpapzJC%tqonJU@HPxVh zn+}f-^Wl|EaNkUEMjhBzVl-J;BytcTi@=#}cC^+j?C7jqsc{{9+6VoPU_KhzoEBMq z$y`kWVNTqedxN)@kol4h4&28bZOlSKLQ77t^~;MIs#OkX+sewyC%F2{OARmeT>FwQ zXT;ZQ%Mnnep*^CPKij}pu z=W<+vZuodl6UFyXKEt)Zhx{8~AG1K1t_ eZ65MrgR)T{G3qx-SAY!J_!YNqt02%zLoq z6sg~CMEQ`7cYeKXKhr>K{5tl1P*4VqsK6zw{*<;3CWwK2n)k=6pHS$mI0NY*7z!n& zd}Ne2ahSH|Ee?*ZpWe@lh1>t=KYjXi64jTqGcwkd!_KP{_bw6wCNFn+JsgF`R yO&Y37t#js?02*Fs(J9>8)dJAb1!l&9ga7W z4`&hO5ZmRI@V)_Yc;s{;vA@;6o;5R)=ZsnYq3J;prLL~3R>$dGgx`JnJu_>;8huz5 z+l!ecrw-T+$_P|c`ZlPPBxb}(1Vi -jT2qYbpD$5uWAf$h#tsP+z-0HyIRPbd^t|?B+ z1ZR}rgXPX^!?uE4wZ4%nPMSzw1^mhHfjUj>&^ocwIZa#UwqBE|AmO3-pZ8U$Too)wfGNyo_D1o7JbD5D178NNxG{^6KJ3SIm27%G zqcK@_rt>YQ1nk^O)E`@~XNDB6)z$Fsph~qYTd-3d*yXYRA86cOfi{}He@_ZC9^1DA zSP-qghthvMwtPQ+!)rBm*%bQhlk x!YjoM1iuTkF~+>xOUC6>8&bmZeI1M%ke*g%C9WQbzh+rV zNmPqFo?N;AuxV}wJD!YJa*f~snf52VvmZdl-qdG0iS|E=SVoq@G&9~n?3frt`(KOh zW-Ek3NR@MCHHJl5byY5~FBR^5_X}6?n=UIY%gLq_HP4F=vxt#r&@-AX%*ZVc%kHtz zgSg98QTUXp&`acrc%Mzfi?Wz4PH`ABKmPESV~7>*^YuJzu^_&r8BDRM806?ZDD$f1 zt@~H?U2%!d{UtBva|o`T{V;Wp5~jn@qxLJ8x=}wZe_E%+2reh#^8>0gv(4`^366aF z5GQ3VmVrgeOP4M+6=wp=PUao_7! ux +hShIdW-Y>Pb_u*e{GUjn9imX9$hkN_n?CK2ks~#Zy;Rq~2tb zwWRe++dGmarP?>N~XySl9Ghcm`R_6q~Y4(NriR7|q)`KrPyf)JW%t$k1CA zLc3$2A5t67;48DJ(xlz7U6RXO(-+W7E5; )0<0Z1brpvkD+84y>c4sT|ZwOK@N!WK@i&>w!8ZV0(c-7zR(--X2HiqnU zsfTOed_ABRHF1owQ$I3b1a7dh^{Te0*sfb*PT#%$G_glidTFU>&9vM2DQP?OmI?O3 z#){u*IWe&2;MB{`F)N441?CsDD_!E9t?<{dV-0w3Oj~le9rohU)TR2>x4YbLUyhmf zbea#3YGy!&3@^;gGH2d70nE2U{ReNZ+uGR~3}0P2!S{uze4DK5%O4rlT+E2 xnIu4Cxt++n=P_*ZYPhbT z-QuFcHg*y;lFj30l(h5dO3k!>KDJWzHB9DKh>FzxmDK2Zp7!OJZMvtAxFHPSpZxuw z1PO~Qs;7$kUe&&M`EqQZW y`a^= z!eY2Y+~mi*XLVUhPZXX?VTz2ND64CXDYWMs!+?=b28=aECx-RT9ZGp&CpmTXC@6D3 zMCbNR(tsLP9#Z)*Mp*@g%VCa_H=Ma$ag_B6{OW3?C@iOfhw0b!Epbjv4>G-h!6nyr zm$z6Xs77;bmuzHz04pAV35a*@M5g* 7pL>#W9Tsk-dwm{mD)&1vN9?v>V=TQ zOh_@MF&@STX8YY!`&&WE&p)I<2R9m~gpM8SgKxJdTUl}60FE1WF|5_I;|a--@48r- zpGRa2v~MCaOuCLFt;>L1Ni~A0KV)iE*{m&YLpqca3Y~#r`2-9GhmX(*nDgC-VK5kV zmAAEy08T$#VZ6eg!x_zg$o!5tqbiFIW>P-E2hQlJ$6&DtB^X2_=E(<$%ekTvF?`xP z>1g~M^WfQ^Kf6o<-zTxsZl{9yqA`$N@y8Hr3wNW(0ERnYl%LaMJZeXiC(4WIMKw8l znP5~+d>XEyOmBA4E>E632^?>$o&Yf|(PK&u2xMQd2nNGNd6P2*Q2Z|Xh;6?oE|e*V ztIiI>anqH!2+^NmEbI)3`%}aNs&$Ive6ItdAfl>`%J)%LGnxSStS=Zw3 8kI z1#CZGE&Jc_i{M5vJqLTlHTMi`CW8*>T<)kyk`jnPM2imv_V@S6kw-!WAh?W-jS>3I z9>V z?T3-A+}q8l3+Th*dh>7C(={I8n!?vfLsTe# (Kc;E@NG)D<@a|po~Eccvmw! zXs`U=rdBYknNYmhchSgN<%$(18zAPWP1d-u!t9bV5)&c1;o;$5d;5zs)1KJ*^RVWy zo8nyf=X~u5@QvYcv&!2uJz`Cr5Xix4Fu%c!j$8Amjb~mH5XzrG*B${!=9$HWd`h7r z3||R%tj-Ps0QsV?;_%GEs%7zR_y4r8PHp7IEt~a2pn3 +3CqUu}$bI-H z{MBBG27buy$lxeGCda_%d|p--5rjX4$RvGT&%<0?Tz;F1hcK3tB88miBo)`z$4jLV z2NPDm`Pa7X9@+ _WL9|_D`f=e%Y$33a zxKic)a#RV;!xrk_u8c+Y$|eA8OMs>p340|B`SEkI$1V6zRw;uaqV#=(R;jP4oLx2b z^gb>uylB|%=A?uDdc}#-4e4O!;#r5pp$09bgvf9H_~!zQ0VOnM{7n@VH!?FbzmY24 z(5?V6#}B{w9~0=@5}m}kj4TPeRf^a_1VJ<31{bQ(koENA4?|ZY%p*f~j?h3hV1; zS5o=WUpwS~Y;GvCpe(EfgW}h4CLXxO$329m)u8P>lF1AhsD7X)eHXV{y{LPwLwa44 z@$tjNA&WJq`0+!P1U`ar37n^D$B(+OX-8_aS<2%1YgA17`KFlNWuT&MohvdkSJl@K zDn(K@>o&Om_HrmKa0LivaYb>Mg8**QUU>1J_wXXHse-6S1P*70L=xi!+Tpe+00_{t zy6S4DXW+3k>4X15SST BdlZ_MH ~h`Iv#J zhY68blVKDRw0(|otE<2k(gAbatBURFsSTE7dcJpFDTPTH!^4`ogYRk0s&V?=aRa4x zyS(QdTY70}%qlJ2i0qr$V;rGNOA-Q%u>U7!*Zd3315qDq!KbgOS7ipfdYXuhCsf|H zQ{Xs}$^nn`m6T}pSJ2%LS9PmjGg;0_DFT=6qiczvpPnIPe0USEgG@*Y%;}ZDNMX-k zM^{@TBps-Pd9iSq?v -QL(*-DjI9sFa@Xk_gjMQ+7G77j@P+yIwDWq zhld~d8AU^HVz^Vyq+BVeF1n)O=A9%oVtXnz&hzI|JQpr;=~u9ib5QulesPpKpUC*W zV+OA{JT_+bv$2u8{^~05#+==6KvqRwIfqBFwSX145Nn*xS;&zjnhMQqLZw(CQoX;1 zN2W*rJRRFb93U$_4g$gVs5^?2Mo01rghcn@q2PW_PFgfA`mAQgb4^_k{Ij<)MLjYi zWc(S~1yO<^wV@sg9KAtXH}O63-%3m^L?B$l@Rb@uxwIR5WG~L#Soy`p#4yEK!WSW0 z#>U0#AAfj4yQ+E`LavVlHq+wae@)8sf`45WWLt@4{P?ifnB{ox#A4IdZk8&{xkUGG zXYLKQ6wh R2t`*Md~oC)IlT^im39x63avBkT_ivic9Ai>5qOtn9 EbIzQz*V=opNv$R+t0t)!PlY6kZepm2u4mfh zI)0uAe;uWm>XXlK*FQ8iQ%Q9d=aJ=_T1j_>R*9}iY?a0P`UU$J!wOMJCjKN8-R>K~ zg%?#F-Z~CZ_qOCR-<##QmdSFzUBfX?&@p0jfvF{MhZyz8IKN=3XjjL%XAdVaZRxwC zYXzwl?iAM)|K@@j-{Yahd5JL&5_LSuE$N@@4h=)Y!>9Dorx9ZLV{8XKW023@muaqB zx0){ZCMK1lXM;X++z}R*YbSYtb_S-VJqHtQ1l{d<0?u5)mFQkQz2C =%0aiZ*lE6@;snP~SINcmMk4T>+R{QWAbYK9mNx zW5xxlr9KhT$jRM)GTU?}km?9_J$G+1Q2Oz}(9n~SBB%g!nFMb!`5c*dVo-` &B(@ZFoAKfh*j)OqY!+UzWk z&?6*vhSl~7xWUuks#p$KB(M3_aK4O-i! 8lx(F@L%hc!a30=>L3zu=q%E}~0tB(_-piHcy3sGjW ze{T~?PA>4++S$Wandwxdyue`(Q o%geD935(<)y%y7*dod;;A5hqfCUzkO?rV`Rz;(${}S=J4*oy=mr0 z6?Q_ub51&zL+>E}`ZLh=;?mN9e)G1v(-4{c&lbN- _VuKdP00nH?3q zmBxN7&}2)&0fMRUgLC*rZ1a*;Yj2JOl(~vsF?JG4PDz<;%uYnI|3Wf*q%1-OEA?N- zrot|p#6%~J=ULwt5(+5JI>9c&!1u`@Xny~IY=C<=*q!o&Q;7Z@QBk(Uothwgtr1Zr z1!~O0N7}`}a*J0y+Z)e>;m^GJL5?@HmhaiWjzbOxlF@kKMel)Sgq1XECcM+ixZl(D zO;kjLm7DvVx093Lt8bYfL|;PK@UcPg=#t)^G^8TEo~tyLo65MYth{GaZ)s&UG&UA2 z8$>bNMkyU8WU0H_;zwfqE%QEYx^75r?hVW>4VMP}hld &JG&N|49a} z %~JpB3oInQLi1Z~ 50QCiPYHpNesL2w z*y}-k`t(X=y)bkVivu&2S#GlJQy$chT){wMF>mog5R!1lmTTssU@a4A zE8*VmloRr*x5t?%I5NTE05v`-dc`g{QJ0crY2W~ro8f!yp34Q-8Fx ;Lv9UH$qvNa;zUc}TOn>jOW4`Gx z o%W+cp*_g+gu&VtXR5Y7zJ;{+V!HWZ3@doOFbg!G~}K1EsI;{h>62S OO_IleqsG6Qs>Jpyo-0x)P<2 z4F@wzPOz~aZ_7)uUgufCF|bwsdrUQuoc2=84JbA` 8e8X+p)ZfkdY)i8J0Ow9i8`s6g9VbHmL1V4U3xu)9j|(1KT^{D?jbU4zvXMdBhkg zUXC10P_f~yG{Sx)Lv}n^v(rIs4*f+tm+*c1@tn7LYFS*h4PHnP!`*w+?ZnDLRn*wA z7@xHCXlVKae h=8 zMxcM*CUEqdv%VMX9mBq2r5uZe`U#j)^rDU@63Ii@LNfkk0tYqgNW1SPTFf=;?C2LS z3H(z|D%{h=;Qd`w;b>?E^G?vDGtl#{{?=-b i8k)!bnBL7v6Vt5Q@Z3^YM=fV@rTM|3N*cVm zJ*T>5D0JlQ 9Pa1Va3);KzA%cIHRHZGsq z?u+Pa@F&-|*UbKXH8NPGaBkxudckdVB*5*@Y^6#iairL>=G_^Wxu1U12w&!b_E2EL zYXwDXl=qGxepUu`S(Z1|Uo7X>rr_zKY)=ii85A1o?}-^o?8Y>$7nmujW)eynr7t>B z7lEE%E|zaFVTILmrd4sZjszK$c7dbBk=xS+J9Vm217cQKIq+=L8*%{J-IT~hZ0eg& zI6SKiCEQvzc)!GFg0o4V3muf^mokLZ{9eK~XGhEV|7=Z#uWbBWx8AR>C&d^x=h=;q z?p$&>X`Fc1xoBUxr|0akj~*ceJ)?Wu+FEAF?1URhhBB&3SIWB+T`N95OY>NjX6Ll} zTEc%3_jr(DO=+Sxj;Ev19mguN9zpB0XQ<}d#m&uq$ X?fW62^r(1b z*k)T)KppldNa0tKqZK+=RmCG}|Htq6n(l6e-Tm3_xA@{~a3GZcn9ix>w^G(a`}<$n z+S)p0U+GC%*JwgH4Lj@WLDsgNB;z8e5<6cup=!lxOLOy&_9AzFezj&8Fto0t=-J#! zNLBlD3CAR`c%=dSUS43uDzXkA@|`euazWbRvxDmJ4ng^No|xD6z*SBmlEyP6*i>WW z=+son>FVa)L}f3H5-pY@7oRZTjpV17j)z5VWFWHAxa0f@=oA#KuByt)p`8Awfho$7 ztW14HXr8Z+sxuHH{PG6E$X|-g$&vcp+-T^lmne7eO{Om<$3fMs!~3wRi&BBQu5Zh~ z5+Bk*2#>j`jn@_T5vvkFdo6F2pFq4bpu04Jr}Qv8h4@+6hK!F!mVhBUjiVgg7fpg? z(axI(D^R(~k055_;f$Lb#M0V_KT0hSzJyz5&3kPi7?^9Exvd1(@TE7~pO{={j;vEw zl9iVa9Q$me+pyBx-F-2XhQAX_DJ}D4#o6~&-Hret12@uqcfg`R*Eclp(&Cj-5z7Q` zN(2}?^8wiJ+?=4REgA=HxH4bQYfXUQQD~EG=~PJqdgbc0zM;jFCr{d2E>StW8Po{# z+HiQWN}%QOD-b^?lpGU9DYd5it}bf%=G {9AZgZoJNs`s<< -)w7=|K>j1OMxR#iZ*bCLpZ0)~^jE_N%%#qCY zfXT&-?7tP 8=XM2(8;<|J-%(TC??ckNyBgw9!(yVksK^l6emvbgWt z>m6*~9!M8YsmO9`(~iTfmaUbPLy{<@oG; 18n}svJ?|ACJ$cglm82nOs|Srq zO_ejA@F7av bvlxml*KI4(Rq9ASjV>SF&cVTA#(YaNs5v?OZSHJe2o zcLRB_N#b+%%%vTPD34!MyzmbR1g)U)sk^#^1v7(Z7po5Kcb3&L87ICiWvJa6+X3jS z;`aEE% ucU*DddnD2?HdDKYpwJb6? zIJh;G)99h3-lx?4Q+;1<4T?>#j1<#sWk~xL@yMm6`#bM?vfi&)0a%~CVMHST5K#s< zsm`VcJ*{l+)G}lScjf(gEBN6lL^ni~`I3KKzocAn6s_>^;T1BslkyLbx7@QQlw pZ_kEgkcL3B!(4T>_N1Msd9_#dr!{`Wr= zHMx7_%u2!jeE`l-l_;hs2Io}_hm+ncCwI!U4++GQy@HY!W0a)|w;foE@wflj){_+3 z9d5fxY%)bEh%rVK5Ryz#$Z8BakMxh*fx{-?3D$09GUM-B3hDsT(+ZiF6jia{0i8H6 zVGtD?JAXI Q__5vEE-*^!5 znNTVki$&TK6 ak0xR~VL3`(tY>hKFW?~s}O03oBH5s&b# zjaNYTcn(a}* eiIa;`Xnws-k`2) zRbEYv3OEJC&(zD~<0*@K(h#)JDQPQu``+v8_iS1s@|kG>yl(>fpn >)lCLEIm3Z}7eKqN>IK4Mh-8sRRwpC21E-P9!U?P6joZrWXb(AaD$UIM5B7UPV< z=*X*4k(W0z^uM<_I`d?a=a4?BYp(>B>8Us9!?1)Y!LAtZAP7<&Hr4qm9SWY%@B~ z502Bsr2xj&hV^Eg@JkK!IR%Qnaq9_hkrZ?514ZDZ2?1m^uU@x0Vh64k&-m!_aC2`8 z%XcQ16m5=fEf^D915~YO3AnSIIpfba{iw34>d%oaa$dBZ`l2#fYnM^wK@lV?#z0>& zZGKF>4EiDQ4yJPJlPm(s72I}{ARF_pI4i4-qoj@WkG(^bmhc2QVt*T1QvD`-RZzrB zUdiMK-L2!H2oq;OKkejj-zm~l!tS?(YZtT-8Voq8K?s)r7z=CM^}7xpUUpU0<(3_M zQS#na?aa55vV{!4N|B`F?#Gw7G11`+L!e$P*_W9x5}8gyLWOAu?!$ T4miX3qaAggu55aV;Zfi6n2*st}}?*ewxpjyypQ=HhUjdILyf}L6PKF zg?&Hwqc@Z3kEy8J)S;)-conlk1mk!^H3zQ|NqhsZ@-gpQ^H$g#o;4&vkT%^u`Ii`o za23-DYlge<6my3PF5WK>Lm(ua_t9X`!rMCJT0{0$yP2dJwg2H1(i%AFbRRw7Ov9Pi zc*DYxo6GmUeV>9JRvkZiz!?Pw(Tx;z!r@fhbTt!wGUl?ctq c1YLiSIP=r zHInyXJaYPNlGAsXgKg}Z{G`{$*lNx-tdunvnWf2y7ewPxLi=c8tLM+3XD*cMo>@dC z^;+uoh&yp?p-W}&-}l=sw;H{UOR~tW3KWn0GhQ7x1w|wRXGRbuWRPe9g!@=@>Fnr9 zq`crTQo6XBlKK7i%Fwk4)YDn(S2FMW1OFj%yJ=htcHD=TWYz_gD}`z^og?bYx@e&N z**LQPelEe}3KWW=netOrRTYDL4{%h?lG@>il#%V{jxKkG(UGlx4p&uXYgJMEEG`}j z`KNE*ptyD*w6?k1ks;6Ap}f{i6Pli3){|@+K1eA2N_b~tT^~-xK9^C1c{i-T+Rxy- z;FO@RxS-?9AbK akU0R^P&p;%9K&5j+|t7s;r3zY&n6 z1^4i(>}+hZyatW5Dbo80&%O1oTeVYfm38eTt! KloF+2NgGwD@#+PVc{q {?HRd3>G;ZMc=AEix*ietN@ z45}-=M)SrfOk?`ddc&=TQdRl1N4;P7WzO-~6|2d0OsN|(kM9stuH=kw*geR;pIPTx z``0;sSxSLQoA(;&GF &mQ8TBawocO;@MBGJm@uIxBM*YRu<&Yrq{6~`rk<~WD6qZ- ze*M_P0lWf!>I&1!4%-^T9oiyd84pjILH!fPePa2TkMK-w`ta}zZl%OHFbYOK%xd6X zOdh|p3OoljEub)ApWSf_S~2^~PkU+ss`;GrG7qmj9`n7VGDerr*Wj|+3Yxqz>%Et~ z+>S4>ZoZJ8P;F=?X+eLZp ziVNERlrc2nDXu)1_e{ClFPKa9%>j)d)uo8GghD`csNttDi{|-fshM15Rag<>KwB$o#B5idF(Rl?kVk&BwHM(?8{Ng3K^XbR! z-M1r{;Nv;x{O@BQYYEhNsFDI26y*!3+!YbY*K>BM0<`&RQL4q9W-@>to%`EIj;C%$ zC8IGSM0t}tvwoGmwyP^88p?gXfP_uCk^PgxiDH$A$?Sa^^W5MubZXjHoG~Kh8b#2C zn?!5xxzoQk-F`_jMcRuoez!`poXM^K7#D``qsPqJZ>uFDw|FI(l*_pWkqPsJ!<#5W zcWS0cPQG4TWK1f=9DwH;Y@OSDRVrLwSoE6Rgjm(-D#qA!70VpYTV*jA(c9Jhq^L|q ztjdU(W jMda)hUo)kw7WHQbPj5@y5Xd!ukoS`_`af- zXJZ4b^YZdElb}OzMLup69LQ_R1Ij_8I%+?hkLVF%5J+&>(>Xn>G!!OI$HF5K#HSU< zrab?cf*4;R@|vuMhQ>o_>^(Los-(C$_6VkXfzi>I3(;JR+5+%^Ap9-Bk?hyClPwe} z K+w$r(4 &-uCJB4^t>1Mt+yned5z=S}AK K1 z7Ue-u5-6t-A53NHHWwB~jru30l+OtZ_ojP!3m1 Pg#{uXw^R<)L z<5T8Bwlre{>Son;Bstqs`r`Gk2^!BURVCY(qdgD6wR{XU(a ^UdJ=Kd0T>pvI5#4_^`;5F4P +_MS=-7xIaP1#g7jh%GVhNa;+NTI zt&H@i0TuL4N{BRJqw5%^>FjJo01q}^Phd2Jh7yn+!mY`$8v~y~BMV%NU_H9>iBe~= zV8x^S7o{{|G9a{{t4{d|5%P|iTS)<%!|dA~;k&&Ls1?jVCTe4RXZA46zc(RrncR%G zojHFQ!BsoL#xg#%|F;ul_0HOc=p8+`!Y?c;Dk~ozQT3r?w%dAqW711lc $a|cO zg0s|{zTH*ON7wucXEwM8Rnj%t+)~m4X(2PEM5mA@S4XcS$czmhr5|0u+^4SM)vtfy zb+DA*tT|b2G1!?5(&wK^r(7qscmIq(z;bx?-&=n*UTtwGa**M3z#Y%0Z}~VJEIadI z-r%nUvpbKl1hN|oh8O4XXO8@%!9cP4-n(wE0P^Cy>MxAC_BXqGdhW~1%Rgc YrS9ei(WHCMtAuLptptfOO>?RdoijmJ&7j98DzdP$mI$8*r&u3 z_pC=vO^QY?7+pU_s-vI7qpj7i=Y+X;6-y;*_+w {NSo#3u z`w>$Vev_qTLvg$%=EGCA43YepQkk8d >oUE5Ppc&z9i8#o6ytWfQCmTX3oi2a-n)5F$NBpM1CU;LR9GOBaZY4@e!ktz z)KqIrG8J_Gyf5+M?{&?#WWv3k2Z12;y1*nc=31 2Hc^*7H_VC{bpkoEBmLx`x}UGFtLX*H1}_Tl~6ZK%$PL`j%5NX%5M>i1kR zoviZyv5mMlR*zXtL{zcB;b1$-sW!#(M!>O2u&8C{_dq+@%|K+Dq!ZsvtP=A%;emAU z@#~AZfr~*G6sVhw1>s-6$k8A@h3< bTQiglVtpjnGU#V zCqX*6+ob0l?cc)2C1<|xm={lva}5u#2*s$h6~z3E=78QGkn(!&T3=FhZq*l>5P;Le z@q5-Nq=gAlQkNII?$Xc^Mkkbg`%o!GWLjXIPRRUh?c^;R$=h8CX#v}$PqCu5Aifs! z_(Ka)g1J7`@v*VNIb9JfJUoiy@3M1qA4=qX`FNoU2R%_C7FBZr#6ccxDT35~NeS;} zF+UP|5sh3139m(v^D-fRMK|t#V?!ZH!0h-nAsflnV`xTw&vosgfdNx?>AA^IuVZK> zJ??-S^=!%>XxH&^m$j+aJ^Mt%YLHzwwP2|^5i@-qG?pA-fGjdkF>mDfrbqF79UCv( zjw79(f+2(cw=dfSY$onpWry-U{9}GPWQ+fKDvTG!_`B|J6bu?-NnZop*q~sJz}Yo( z3qx#VSd1h}dOsN{4ZX*^wsymNi~OLZ(fz=gn9zufJRq2fJo@obsf~SoJ#HTAIrKEc zmm4At`UVE%eSD C*VYV`;koxaPN1L$iIUC_CAQmJ}G^{U?+RC8uXl2I5W5kd5(iLj_Ug%BLpRe z=D%$o?>5vRhk0LYOl}Cm6p6Tm%5%8E2d9zbhEM1DfnNpxsMaz9&R51GQKa0|I7l=% zKmU+;v@zTE#45 $ZgY(MF%uJPZHvuq~gT3|0ukX&x1<)9L*dniav!oi8m>67A zQu3jTpNs2a{ NsYs`b-YMSW zz=(Y=ThUb4r_o23FV*`f$(6b+@68kB?%~M*gDoC0II 2GE)B=L8PqjRPDU}ly?C)xTIlv0mHAD*>d94> zK~40I)gA|DmpXcQYUB8m)sKATAoZG)m6NNQq36lUpJhntH;9UB$Ef6_)eprZ*E34- zWT9I$z%(a~FqDjB|7)9FPys!Enjv+~&*yA+D?wKP!VVIWq;VERqOl~LT`+(YxVeQa zY%;X3)9d!cU*>oQlOj$&yWaW=k@@--?6tn2nC#nE< 54+YR5sZ=(Yo}P> zV?`T2SulLq+k)8LB+@_B8v(J7^G1LEHSvQyvl@as7(;B6qnu*j0Z)XN!*Flby|O-n z_uU@mXdI1ux!wufx}NF0q3LU)T>8cWGJm~PB?C@xuD#iZ%!}W_uP?dkj%^`xmIqZ* z;A`rTMm)Tu wbyFoWt5(i|k?}ZJ6G-{(b{u6hC111s$>lGg#@fE-Flbbg- z85$Yl-|TuEV;?z5uB@_$L-+RfdciMiCj&NnEhehT3(CtCKz!P6=p_p#;b$AGBrC87 zD>XE2CCF%0dhe=jtu7A_Pqo*z`Z7ZX5VeZD`Te}la(s2S7!2cllOsFdt(EeE@?uCm zTK2*sW$h&SV|=I|$r<2Y*D=3?8XFrw0Be_7$GcH`y=MMw&|Hrw^%fkdVzT)&4|jfx zIS{55?u^#CB`#K(ZwE~|%wJqySx$s#1mJH1@R|uR>K#6)vm5iO8K{mb_hz%w7WRvs zIHvF`xmaoI-_Hq_XueeYx(^U0oZ!uAgza}-hDslJdrOkuxN%)dN(%7dKNNFn&p+GX zEO&Nx9vzjdgBci&O%^88z~mRN9MtUZyV=M*I9XC;Ry$c $#_UcaaCGf-&0<7Z6JP)89g=H#*)@W!wEu-Tp zvB}lvBNtr1Qd826w1c*1@Cw7|5kc72i1_s-ak`7ZMv0?*rZ}xl`^RN2CpLDh8(Bup z9R8%^C&8J;>^qS6IPdK2bFrTW`apY^InVw*rV15q?y*L9p=RRU)9UI90+uh%Kg$q* z7b#5?yIF6T2`ywZz-#tm?Y{n}UZ`KYuXC^}rm7wg8+%1@1!%;?immc;b6=&1+I6Ba zx!FZks@fFtL{KCiyJ~`0euBJ~vM^s>Q>q^D`1QFlulYw@coW>m{zr7e=NoPoCqknB z(lA?MtVl~e0eo{6fPV_YYoQ|qS0?ed!^f@Pg1Rr|PM2}Oy=)2}j?G+|3RUA}6{nRR zJyw)e#}ACT6Erngf!0nz2U%NcIsos2c4}O^|G