From 94a56e3c2bd24424d6a1a8525da3989926170a52 Mon Sep 17 00:00:00 2001 From: Mustafa Kalash Date: Fri, 3 Apr 2015 17:42:16 -0400 Subject: [PATCH 1/3] Adds a toggle for allowing a target to use a radio (handheld or headset.) --- code/_onclick/hud/_defines.dm | 1 + code/_onclick/hud/human.dm | 3 ++ code/_onclick/hud/monkey.dm | 4 +++ code/_onclick/hud/robot.dm | 4 +++ code/_onclick/hud/screen_objects.dm | 23 ++++++++++++ .../game/objects/items/devices/radio/radio.dm | 2 +- code/modules/mob/mob_defines.dm | 1 + code/modules/projectiles/targeting.dm | 33 ++++++++++++++++++ icons/mob/screen1.dmi | Bin 158264 -> 159026 bytes 9 files changed, 70 insertions(+), 1 deletion(-) diff --git a/code/_onclick/hud/_defines.dm b/code/_onclick/hud/_defines.dm index 3a5f4032a2f..44973d3f0a5 100644 --- a/code/_onclick/hud/_defines.dm +++ b/code/_onclick/hud/_defines.dm @@ -66,6 +66,7 @@ #define ui_gun2 "14:28, 4:7" #define ui_gun3 "13:26,4:7" #define ui_gun_select "14:28,3:7" +#define ui_gun4 "12:24,3:7" //Upper-middle right (damage indicators) #define ui_toxin "14:28,13:27" diff --git a/code/_onclick/hud/human.dm b/code/_onclick/hud/human.dm index 92fe661d002..97b07e6154d 100644 --- a/code/_onclick/hud/human.dm +++ b/code/_onclick/hud/human.dm @@ -356,6 +356,9 @@ //mymob.gun_run_icon.color = ui_color mymob.gun_run_icon.alpha = ui_alpha + mymob.radio_use_icon = new /obj/screen/gun/radio(null) + mymob.radio_use_icon.alpha = ui_alpha + if (mymob.client) if (mymob.client.gun_mode) // If in aim mode, correct the sprite mymob.gun_setting_icon.set_dir(2) diff --git a/code/_onclick/hud/monkey.dm b/code/_onclick/hud/monkey.dm index 76adf0414c3..7314e8692d0 100644 --- a/code/_onclick/hud/monkey.dm +++ b/code/_onclick/hud/monkey.dm @@ -231,6 +231,10 @@ if (mymob.client.target_can_click) mymob.item_use_icon.set_dir(1) src.adding += mymob.item_use_icon + mymob.radio_use_icon = new /obj/screen/gun/radio(null) + if (mymob.client.target_can_radio) + mymob.radio_use_icon.set_dir(1) + src.adding += mymob.radio_use_icon mymob.gun_move_icon = new /obj/screen/gun/move(null) if (mymob.client.target_can_move) mymob.gun_move_icon.set_dir(1) diff --git a/code/_onclick/hud/robot.dm b/code/_onclick/hud/robot.dm index 48378fce7f4..e07d5aaf201 100644 --- a/code/_onclick/hud/robot.dm +++ b/code/_onclick/hud/robot.dm @@ -162,6 +162,10 @@ var/obj/screen/robot_inventory if (mymob.client.target_can_click) mymob.item_use_icon.set_dir(1) src.adding += mymob.item_use_icon + mymob.radio_use_icon = new /obj/screen/gun/radio(null) + if (mymob.client.target_can_radio) + mymob.radio_use_icon.set_dir(1) + src.adding += mymob.radio_use_icon mymob.gun_move_icon = new /obj/screen/gun/move(null) if (mymob.client.target_can_move) mymob.gun_move_icon.set_dir(1) diff --git a/code/_onclick/hud/screen_objects.dm b/code/_onclick/hud/screen_objects.dm index 0cc2ad33652..377473093d1 100644 --- a/code/_onclick/hud/screen_objects.dm +++ b/code/_onclick/hud/screen_objects.dm @@ -122,6 +122,11 @@ screen_loc = ui_gun_select //dir = 1 + radio + name = "Allow Radio Use" + icon_state = "no_radio0" + screen_loc = ui_gun4 + /obj/screen/zone_sel name = "damage zone" icon_state = "zone_sel" @@ -485,6 +490,24 @@ if("Toggle Gun Mode") usr.client.ToggleGunMode() + if("Allow Radio Use") + if(gun_click_time > world.time - 30) //give them 3 seconds between mode changes. + return + if(!istype(usr.get_active_hand(),/obj/item/weapon/gun)) + usr << "You need your gun in your active hand to do that!" + return + usr.client.AllowTargetRadio() + gun_click_time = world.time + + if("Disallow Radio Use") + if(gun_click_time > world.time - 30) //give them 3 seconds between mode changes. + return + if(!istype(usr.get_active_hand(),/obj/item/weapon/gun)) + usr << "You need your gun in your active hand to do that!" + return + usr.client.AllowTargetRadio() + gun_click_time = world.time + else return 0 return 1 diff --git a/code/game/objects/items/devices/radio/radio.dm b/code/game/objects/items/devices/radio/radio.dm index d6b254cad19..dab778dcb90 100644 --- a/code/game/objects/items/devices/radio/radio.dm +++ b/code/game/objects/items/devices/radio/radio.dm @@ -202,7 +202,7 @@ if(wires.IsIndexCut(WIRE_TRANSMIT)) // The device has to have all its wires and shit intact return 0 - M.last_target_click = world.time + M.last_target_radio = world.time // For the projectile targeting system /* Quick introduction: This new radio system uses a very robust FTL signaling technology unoriginally diff --git a/code/modules/mob/mob_defines.dm b/code/modules/mob/mob_defines.dm index 9b17a182aa5..831798251a2 100644 --- a/code/modules/mob/mob_defines.dm +++ b/code/modules/mob/mob_defines.dm @@ -29,6 +29,7 @@ var/obj/screen/damageoverlay = null var/obj/screen/pain = null var/obj/screen/gun/item/item_use_icon = null + var/obj/screen/gun/radio/radio_use_icon = null var/obj/screen/gun/move/gun_move_icon = null var/obj/screen/gun/run/gun_run_icon = null var/obj/screen/gun/mode/gun_setting_icon = null diff --git a/code/modules/projectiles/targeting.dm b/code/modules/projectiles/targeting.dm index 4e49a785e76..d8bcde56a92 100644 --- a/code/modules/projectiles/targeting.dm +++ b/code/modules/projectiles/targeting.dm @@ -153,6 +153,7 @@ last_move_intent = -100 last_target_click = -5 target_locked = null + last_target_radio = -5; /mob/living/proc/Targeted(var/obj/item/weapon/gun/I) //Self explanitory. if(!I.aim_targets) @@ -218,6 +219,12 @@ I.lock_time = world.time + 5 I.lock_time = world.time + 5 I.last_moved_mob = src + if(last_target_radio > I.lock_time + 10 && !T.client.target_can_radio) + I.TargetActed(src) + if(I.last_moved_mob == src) //If they were the last ones to move, give them more of a grace period, so that an automatic weapon can hold down a room better. + I.lock_time = world.time + 5 + I.lock_time = world.time + 5 + I.last_moved_mob = src sleep(1) /mob/living/proc/NotTargeted(var/obj/item/weapon/gun/I) @@ -253,12 +260,14 @@ target_can_move = 0 target_can_run = 0 target_can_click = 0 + target_can_radio = 0 gun_mode = 0 //These are called by the on-screen buttons, adjusting what the victim can and cannot do. /client/proc/add_gun_icons() screen += usr.item_use_icon screen += usr.gun_move_icon + screen += usr.radio_use_icon if (target_can_move) screen += usr.gun_run_icon @@ -268,6 +277,7 @@ if(!usr) return 1 // Runtime prevention on N00k agents spawning with SMG screen -= usr.item_use_icon screen -= usr.gun_move_icon + screen -= usr.radio_use_icon if (target_can_move) screen -= usr.gun_run_icon @@ -374,3 +384,26 @@ client/verb/AllowTargetRun() M << "Your character may now use items at the discretion of their targeter." else M << "\red Your character will now be shot if they use items." + +/client/verb/AllowTargetRadio() + set hidden=1 + + target_can_radio = !target_can_radio + if(target_can_radio) + usr << "Target may now use radio." + else + usr << "Target may no longer use radio." + + if(usr.radio_use_icon) + usr.radio_use_icon.icon_state = "no_radio[target_can_radio]" + usr.radio_use_icon.name = "[target_can_radio ? "Disallow" : "Allow"] Radio Use" + + //Handling change for all the guns on client + for(var/obj/item/weapon/gun/G in src) + G.lock_time = world.time + 5 + if(G.aim_targets) + for(var/mob/living/M in G.aim_targets) + if(target_can_radio) + M << "Your character may now use the radio at the discretion of their targeter." + else + M << "\red Your character will now be shot if they use the radio." \ No newline at end of file diff --git a/icons/mob/screen1.dmi b/icons/mob/screen1.dmi index 5196ec25f8d1cbbf97ae7794eacd36a828ce4fc0..4dae20e2e6faac1673f4caf92c8f3ca3af2eb5a3 100644 GIT binary patch delta 22067 zcmaI6WmFtp&_BrF?(P-{4#C|m!Cixe1cJK_H13)}NN^`11P|`+uEE`12ZovDdH4PA zp0gkJOP||U>U4G4t@>5tEJn>gjAUkj-e1qiQ^D55#@*i4)854y0l_z`_`ABtKVJOE zi3h`YHll181^(H^D6i(EbO0c^cD^|?6kUVbHZ zp!9q~y6@YV3Sd1os-_y~10G~9Sj%4j3<%TxJRz@&GG3=X$9rDjrkyx;poKj%chpu|c~frW1bOE~J2 zrODCWfjJp;t?$0`F=+xO*nIU>dmvR+3{-k65wFr;%Eb&aFxcB4RQjeHGeH4N8wGPdL-|cpK zrsrbEeR9n9StUJER^{&bsQi$Pelj!4cnOmp`T(RE(+a04-kLF6)-*TLM%UNn2B<2o z!q2?Qk)tuHoN}0V*lzM8mr^@T*dz42MsG-{i{f;CXCTP>B;f?c z@#Hx7AM@?^3al#4GQ4D;9ML!+0I8?hd zy?^bYh1(XUsQUJY)L}?50($Qh|h>o5V{K>LIy*9tUUMuC7-`D#etnNf^`mHvHzyN%?AZFCegZ#=9105%Tft+fjndtwqQ$tMU^ZB6_)TzZ0sYfF zzuLt7jOpBYlJ1;&n+p<>$;2_rjQO&zzWInp&NT#_sG8tVbJy2Hx4;j?zsHjYaw~ql zSv{-xQ$rd$MJSZ~2c^Kij9B88YfmrfiPE10{1v#BtxH3T@&A$cKpGK+(k_Bn4{DGLEPz=oyqc$xf7aa3mYOC};z)ybCAQ5YbKw)%1XT&WI21FtFc(;T>xe1_dmsm-kLXYO;Wy5FLHLEHvp* z0^MjS1pRAy!-%kD%Lm`4R!!;q2r+!2X9lpFI@Vvo-nJbrhLf2}Hc%q)+4_$h=Ph?&T#^3;*!J+81x-=~hrQjg z2x$c>Xc)I;ntQ50Op;rRF&N?X zL{FB(W)m_jrq+fh==vSJ>De8kmu|_hWn&xy{gwO{EQ5)rFhf!`!-B=DFSa`-{jv2B zbu!NbZ)N9mzV~ar#CY{{aZZcW!YI8ditx4YZnGs5`q+};#<&!9wKk)Ak{k!hKTR~2#&(?`>$+sw)R5xvHiKMJs_B*|94)A zc9MQpJ9DU?BMIRted;w?5rg3@{S%@ooTOoGVWc~9S_=;X>~(*?)3tKtYJ9t)Tv|W4 zz9L{TS0vKrbb64A$jpYSoMKG3i4ShoK;5QXeXni%D?>_oWBc|EZeDo}CRb`R7E3PY zcXx5@vUo3)(47FU;&F$lYwp-=G=`n4HQc466EuW$-&~W9An_{qrSRLJAi~d?+7euC59jkNE zm6|RPmgr>gL&8}udr!!ZU*fz%Gkz-JhxZlJm2flaPCcmGem=96b!bglS(zNiJm}XK zT$LN@;{ih*9FWCHz)v)4+bbSs02TfAh);O%Hr@ju7}^T9E2H!Za>A^GShKCKNr^fQ z|LP4wGXL)AYd9`!9rRBuzW^I`L2nbizu7906>aB7hk)y)VTLgrirqM=CoLiCNp1wO zB(cdU-z-8#E7IDRZ_|oR=9~JCsqZG!8-*=1yYsx^+G+SMGy3OM@$Vx! z%fk@=(8v9{XS5>c5K*VRM_C%Bll;Q2E+BCF`6s2dyR_Ui+foxw(6g1~X<&O+ttD~| zo$*u=l2zTAAlivj*jKX+5p9_Db`+>=hY(YZTaw`ko_7qXbwUlNzje-EFBKpC}&2AbB{y^p6`r3OYl>Eug4!jkA zpnN@Ac3N~*{`T<6YwG7gHAc2nGa%RWS7t_3%iana=}-1Uy>p1)mSvhpc#cRVB_~4@ z`@1%<|L8UyfqEW2h|7JA!}no9~E_bCxfusyOmQWoM{NO0#kQ@C68LvCvTrJP}mMR`>^&rcCAP0z~l{+#+X9J}U(LZ{~gaaj8)46b= zwid6^*9R+zx-6ajNeF1ExUbk{{P6}CzyBh#+(zU5DB!sK3v0m{f_*fy2?03i`A|Px ze&h30d&H+LFYq57@&rQ}JY1rm={e}iyS?(0+V_he8Xfw+uJA$24xn;bc>J{MZ?YCx zP9xDqL<2@KTJJ8M+XLjwLBP{s*sciA3Clw(7yh5{E{fEtN zTv&yJ##|t0NB8=b0v&q@uf*KU;HzDABrX`dAgqzxG3!L^GS!QIwmYh0dQw>KG}bhN(?!c_$RjdjWio-Q;2H2!RQQ6 zDIL2oac>mZj*G&awas|AT-B)`xd+1(8LXacr`blmX=ypD?rq5gJ4!Q? z>0Y|$1U&<`Iq8Y^!E{$ANE27k z8IolAVE^d77M4$RLt0yqo-pAKiwJ^^WYwT>3Q&BAVX=`J<)NXvx_@YJ<63E{CHRZ{ zcG?rPlZuijjz2}C8qOW$dLUaB!>YHQBN>4(#EJzXAkvNk?ui!G+x=>@r0fYF?uTvh z=q7zMrG@9_^j~-Rg1%^y8vW3HKl7O!Qdo>BGkZUAp4KtZcz9v+Hv-LP=*hW_ivt0H z9zj(>R&R|OJtGN8?<_o1)6sfG0KHCLnJWG}r=o$L=Z}bJ_FU~J@2>MZ!7cXmCo?tD zWH;L3>?=qCa8$64PuA~I+FFB25Nlo=J2?=ov+V%d-3cb=Z8q1T|KJ}kGCZTn?;@Uw zWIf*9RHh_EPg0m~6_v1@!p4m&iNEYB^KZ8HMX1f1avNS;k(nLgcY`cm19+H8=icupM=cl>QxjYUO&huP@`z&knuJN z=L|UgwQpdGRXU0&VCRQIyJoCu(K~Sd?^xTg-u00hA~&Pwd#>Ji|LpJIBjqfmH<8Vs z+1R9LplkM4(r`}bax%o95k-Vv=<74((bp#?1OQ)2V=^00JvRB&wD@=%>*1;_yv)AF zxwog?KTD|5+m~qMZsB_D#Zi9rk*s)jJqCVpwZh4oY*KhvI*Mt7=^kvoL#If*7Fuqn zbT$of?B$SX|5<2irFoGHM8|<*PQ#(XV8$udy^9!s-pu6g+Ee`a9JNsppHGZsv!240 zw_e%@#pF$B7&!V@^N9X-%6h=vQP)88gVqh%)doYAPwC0|nMw-CCJS!%aEjQC3!vk^ z72%$_%)a;AK@vp?En9idhpW;HDpd>nTiI3K6pVA{jL2BEk3T9#21T>FW+6A`*iZV- zx!>`ZP(u_0xALYB#d^;at#kp^=Wh0zE|D~xW>}M1)s@mYewpdMQVemsq|0lQ#d)2x zmS@ylrs-nY6D^jg3qThWx7_*Q2ed}v^(7LiW76H@AEMK)Alxm2w*QaQ>&fesDE$1x>|7a0tMs2o+8%@E2 zHoqyPzTmT@{rSWdTGL-&D@wmAMdzG3e6R7@YDGk(%Jkg7t}9hF7*XG57w}Q*>d@cb zIN{q^R+^AgLlXPq*I&e?4ciF^C zv!NEvmJFl$Ba8XGTDo$e$gVO{kx$JhaK(^un(98mXKOuyrDmT4GD~h_ z-fmpHQ|BEA8g&HduNDF`OWju!L{U^Rtwn~+@ttsQ;ew{liqaz3O`Fo&;SbLsWN39| z%GKLJy(oHf>_JN(&IcX4$r%h70yY&55nT$s;}Zhy(t7mPx5LnJfS7056E`~2QIX9b zzXJavn}JJWYB~B3F(cyH>J+)~)@K#??b+(b4B8Ntn3IeeB=`&m4Ze@4h=3oI24kS| z@EGDflsC}$sR-sS{CFj3IiNJ%A50$d(}Y~ihvaXLX-n_sG}H87^V79EQ8hXKHDvnckw#I3Ug`2T z%AW-ApVpX)HZ49vB{1rmzj42>qX}2j%cat#4YPI}N$=nv7EG$iSv3?Zxf02e=*`|y zN?U^2zGH!7ICneV+pdsk3_QIiAV5ggR%`vEElEA1wN`up;Iaf$f{iWpRuOq!PN6cf z4A~qlv0@>z3yHY#YO~fAmA{?mRGmRFw0osz6*X`te6`w;@tv1O$_TAP_{>Mrv}~4^ zWAQFshKVE%V#}bvIOltrCwmXtifCcUKCoi#hM7fvxz~yp?UEzum@77^PjnOb z=QVQ6lxeU4r1w_NsgxtHwFGISgEcGh|3n)ZZsdLT0}tul5BQyl z5xb4-naO1lG4;EJH{io%wN`HyJZVpyYvb4fqTeXfbldGv&pplH(#Gvmt}4BLYw$}v zzl!Ma#L6iiq3}4}h2G@*t#r-Y{6=vPhioIOL`^6INm_nP=zjvX(ImpYpOQ~)vjxF| zB=^NkeeZ6KLJE3!d&)S`y?zd`*6O;C${Qk68*D5%)uhqIJ``|aTuWqHd1dTnQr)}p z;NmFc81rTjaZ6W65DgqztEG$&RPniIW}JyRu4CS}T4;WnB=e%v5xnEK?eg?gK^x?@ zbc>Pz&Z>^Sg8n{=^7;5Fo9eTbP?5I!HGez`6GY4ZoS{ax`uA%Qz243BuY-zrV;c|G z4v{Gd#OOyM)k7Lgh3_k6QR{F><_zx;()?|gRs z)JCP=Bx_h1#;1=cUqkSeTMqL}*nwiek{hU|%& zP2Mem#TJTanOjSUb?Zya`1c4_wg299LA4qRVhxWRa;SX9&-zK0cf5x7?gZDh3Q`f<*q|dk_JBX)TcE_QT?=5CG-CpC@%P!(1ouoVe(WZJu z2E)xwiZ)lIVn`|ss2u&kCVVvcy>+mR z+;!l9l9sYQl_>Xj&pWs%{k{aA=6hdJGMq45H)wio{NjERUBlf;o&7idPpGbdwI)6hsz3-em3;7Cq`p8uJ8g-vlp~T)M0^y!-#h~^P;Za) zR!ulBWsbqqP)_xGE-vIFNbf+=E571&i>Vl0UL2n}m~(X@+EqSAzTIr*^ewlSOhLqa zG>OGAPmx%V{#VA!eEHmg$kEW)W8nqU?R2!_?HAv!z*yD#hwm45BfftdDKT`DYf*<< zw~X|sc?#2XSu@u5PlV8_PafrHz(F|Ml^BN4V4zA`VCvz6?&Wg$C^lx<26sqLKwkgH zw@vEUQu+)#Uq_nW?f8@E>o3NUWA)>2#p2`~Iw&~V7xaQ^S$ZN9cmonSpW3a6)Wk^E zd?^qa9y}@?(^|5oBlvS8!lNDW|~R{qW*%Wp80ZH@Q4bv1C|S4OK}&4W^(Xrg#2;iwwFS zH*9fkaBiFhwz8`7C1YXWfLgZNt$pkz1a$A8IAn)k~)8IvrI%Os@Rpi`WwR+@CxIwv~eANF~gi36f0 zqDndtYRw(?p4iiE6YMUw?KuexaihgJNqt%9kHEpibRGY`tU`E!>wSJoXMkz$lB&n< z{Q6N#Q1I|xzy$E|Juc=|j|TCQP76S$@f5*q16C>AiE>5>WUQz z%G~*&r|qh;U@&hznmZ`y^1Y-~+pdM)tM?y9fQVY!rzkG9O!O$9F8a>*>R;x_j*_o? zKt^ze@(Wco#v*_PEBK{`H_>Hk-CGaq z9?WU;hwzwgw|o8UdMaXA()=px&XDacp#G>Mf)+Ugmqv=tDl^tQG-#FC^XUV)s@Ozn z9jyoF1l!j8KcUg!Ea^mekqYT%5XNUJFs9o^vWX|dMc+aL@QfS)vJiWMGJ(QoI3N^g>8uI!#y+Xl4@=8fS{4ax)B;#PJb=4G*)2moO6h z0?I2a3XrUOZK%h#HPcW$ICB6bfKAy(u&;@HUus6{B;tYt5sWEu_A~0<^t%x4 zzj~r|vWj8yh+EUm%RB#Od8ts8y5QPupeK;O-cm#xHQ_DvUhnm6$f1s9e&zd*`*!$~ z=G=-ZKHU|A+c-a^Ix`~OxtfF~C)>cdDDx1XT$@$s8BD@ZlwilPftZflH0t$O% z!}TocHmv^Lx^GO_ZVZ@Nt}yNK)zpac;_96pRP5Ksa3S}+5prDi7QuLNrlo4(CdlErKsIir3X-L%strS^rq+*Ia4Z1~T+!C)OLQF`NtgdpFsl7_c8RJ`ROd&4h=e!VY7 zI+_yf1~rLoxT*GqC7}c<4h9bb`-}mANs$DE3N~4(B~LA2+7R5 zwUUrHqvUEnyCQ<9wDD*5$c~Q5TxcZu8|135qg#a?5G+}4-1vgdzyM0O<;~`NbrI^S zTlqHR08#}#ay^D)QpqZ1gJJ`B&llU+*$duDWZDb{f3Xy$7rn|feI*0vj4;x{Y#2~? zd_81PGb{*PjXK>;18-~{JMG-in4V`4rM^@>aKRj*O6lpkA+AyQXob~Zk|`HLWh1N}jrT-cR61QIoY{&Fq9 zrgHv%DcWrQTq!wlmb4Arz7W^M>u4Hzr@xW2dg-S8%QC*LxY-t4qk!sL0^BHgH<;SI z7b7`ae7(5r^A5qQ8^~SJDH^oy0?7?GdQ%B(lDNLr@IqueOqvft@*R3~`Mo^nG2aVQ zAjwq*XkhyZ)?TpOO445ktN!?){7hS#%zke{ z;PmI!!fd>TyNuM>{{KxmWLNszWbP_U1h#@W;(>3Dmo0 z$(Nh_{hW8-6^epI`m*3Q^eP=sg=vvc8e%nz2r{;XJV<1i1L$#wyGY&X z4Aa44M4w$i#XA;h|41`DkU6XLjMDl^Yk>!}M7YXg<&R{$F(c%gLiUwTjuhT`NhQ3lH4z@P1QuvzQD*@u&3vV1ZDt!oEIOmO4-u{x#is8i+zTS z&iU%!=-i4CrVDBcFQ5+Z!szT^*2xpsti@a8!Uu!Js)4f=R}og;IgM9fu52Qm^v~AP z`6MDpY`)W?46`L!>~6=)hrs@-B>xjGH6nL1UaKcpK9%A6ckkO*4&0jJ=l%TYpNcKq z=f9Lg!IC|wA3un|{$37rSjrwvl)ny@#@p$Up5+gzaaYy`$1+w?Z2SB)@x)iM5il$4 zdy|SWm3d*bDJ(yd9P#>F3HSqQ=gi^lK!lgkz29x zW1=DIWmOf_u=k{?-D!msW&SNS>1Pe5V+@m!ruL32H7u{Sk{CtKs;PXHB^^bS2mi~f z(}bQuPk6e>P7P9@1%O>63B*71U9(~&GqFjr4{{kmb5VO@VW<VJQYp1?8f(nll@Y9&HJkMO~E^f%C$gKJqlesYW zX_bfV?Qlp%>UF}?x>Xb=S!<9f$ISUpCh~7QH-hk`;r+AU+b+`fX%X7puKnF&j0AR& zdxH|LvO*qYfSa|vsVyxs;K;7MIPDkK@xjeIK2XytTz6pMmIEI7XXzXc&XpFi zMmMT=#@u~{snH^%E7)D8^txb*EELb%S!D?Dd^AfGUMT}P@QYAlTstQSXOOmjgI?L> ztA>B*`XY#j@ZZAa_0AO^Hf<|&46xb#N}J#d2|sYNZIQY8Fn0ZsnHnCtvn|}d&ny?K zkPm$}N8zKH)>ppqmB{O8^f_~|ecXvm9odcZ%FNgnsnP#L{BHL=cWo*91*&OI?A1`rPlto;`~y4*tA z0qzwYbi^291_ekH2DW9<4|(;{LAc~zp;21MS>Bx(tXUf&gpG$uIGivO{+_6S=%4OO zRy`6AVeZ6^S-hW9(N46)d*xM=JQ?U4o`9bD`Jip#-l#6^lk5HCZ3D!rt-_`$d!bCr z9rTEF7Z;@Tjr?^NRQ*DpJhvHm{{tZe-~vrg@b*TDs=R&_#Us#pjeVICE6qcoLm!_G zSSP1Ko;YO}9N;s8q^>Xu0pSk~G@YSRE|L#AQEZEj1-(tGGO>aSG`wqzNtpl4W z#dKOh+q=0b0bSK2xns|~;&e$XHIe6Q0UvKFi5Zr%lhtgdeB0iKBb4IQNy&r&mJR7- zF7~^j0mm{S72Z7PM$kVW(d9q27-AxzG>f<1Aj^1xgdUzr#=w_kUcQ0v#R6;)nP;A* z{S|1$?~d+Igz1eesHM|;>vKLj%FEXQ(!>`x6C-Odp_u-SgY66dXdRHZ|7 zLH);5wi=Y$%FH3_g!IbjdsJ1xce`CpM7Yd}JOgwf90^hFUO>S-&N>Uf_L?uy9jSkc zCgGB;{J0YSpbX}3*o{9+*uGu#aFeNT{Tr$KF?(pq-|)w!&xol*!SZ0ZBQClMT2T$L zmX+2YG-7hI;}G=5G70=p2z;iqXWg-+rk@Fk3niZXFkhH{K{?_a>VpITZN)$OU*U*& zc*z9ML)soF!_IC)+T*QfG0E?qbaYvH^JP%gO-aN>b6Yndj^K>Gl1C^Tz_gD1M zWEY!eu&hKpCo?^;qr2cg_`F)5s)O(V64=wF1Vnwy=IB983}{=+f-v-55169)Zr8YB z|I8p}l8WlCqsnjH5vceL@QVTSz4i}x0T|(bi}p3w5O-n)+f-*@$D`9=VO`z|cUH}S zSzz|SBeJ9~s3;@|0lQb~!x5sW0px|Bb*bICgMDeoA!++5JH8JNA>=BKF`Tf^oNpzG z0I_{0DgXewn_;Mla9_zgGwS3BIzjiR^^ET#R9W)$v!L@1hSE=b(!nd#_)K$id%;b3 zLNXYmfq5XaE82`F8KeT_aUd^b8nfwyjMh;G9sRc@N5u6vfxNWNtXDXV9G&keN92aQ z;Z)F1V~&=$%a3hPF3WGMtT032{xi5}sqhBw?f~FospN#@Al#oL&0ng*I`52Bs{XN6 zK@UA#a0#bqBETsy9^U$R?G~P2qYzhuLG}WRbZ^7L_t#FQT>F6$KV_Zh|0alt9ym7R zeRlSlxD^W68u`Bx8ekq~~+LVh0 zlHlL1#9$Qmi9iT6b2!qxQ7gBjpmB9D-1>q4MI(SabLU4qUHH|6#cn$g#BzG&-IiZW zFw!M_$CgeS4f1%mQz9K@*<(xr85=rIiqXpj?X95s5a8(B`;}*uUbu)`~n2IV(pAb`cv;c>vZM^_pp$~E6|q@lU0kJ61NF= zn?*6DKdo=jiPt1L1?)&Z|1%xS5~$&3f`6kad4h+FEuM14TdYT66qYFQ14e6Wi=z+P zx^7FG1v5fhby)sk>>NUxU394G5i~Iqxsp+DqyTq9dc*QVbvB8$MFu#Y{E z;oNZ$2>Qs|hz)708NO}L!M zrPLu~92o&MS*!D;<9*A;nF3XJ?AhPvel-sV&sLO_hiBj#Hf_46j~B<`Mn4N`w!nK& z7>m+o)3o@z@#z4cxbN2~#Ro*yuUR;tZP-kjYzVi5-~FQ8J{Tr%Az$Sb=|Jy*W)7 zQ==6ZOoZ<(sk@Dky1$tGo(**PyZVazvED;YZqR9hLw{HW#7mI17$7&mvF%1iZX zcY*^I=*6eRKMy8fywKRYy(Xbkg=Vt^eMKVNozU9AdXxnd$1(OPSHCuS85G`J@T7Jm zbAFebA8J7PV0mdsl$Bg5cHt{wZ}W21(?qF#cum?Dn^XWndw3jq>Fx-)`L^J>kyKjk zc=~V04`XIb<>X9+a;uOWriUB71X-M|WBCJI@J>wVkrf%CDWEUiYVVRZW?eMEmwUiQ zV3?`y!_1rpw<&2VR&LX`j@;Gg-*UTu?y&&a2V#0noWtEMzbdGGCo^|R4k;1s$0?w? z6^AA0B1w$$1_YH-JR-wZTiFPkEMPsA`3Pn2yho z`Pp4r53FFGf;~dBy@iD7!Jn9cWZk(FzH+mVFHFz^sr@TabIHnRcuC-)IL+h3+^0NB zGSmr3#NvHzY<$e|Y0RLQIv)vIOb6VXK|M~q+jenDV8{zHAkk!p!V__9KDO7oZtw2o?~=D3jbx~&qz(Atz=(9Z`=O5*`318K(|*W0kFR%jkj2S|MOqcsX2Fl zF|?J#=j2SOC-G>k#fx&)-#08$b^qT1{D<)-@@`SDQ{y!Uz+~}n? z7JX!}dqo+<0C#)858Ikb6CshAm0<`B_NJSee#8kh&g%vK$ zeZh_R&re4_S|%^73Ry}`x9Vrf?zQ2zClS* z;F9#RHxP__VeJ{Dy~RYgBB?9J60^jo7@Y)m-TpCRT*K1D8Svjqc{Ur(*WQ!xZ3Qqw zonITppOM}NyaNj~W*(SyWnyOfM9_bgp8F?dZVP;nbhUF);BXZGkL49 zur2|TB&BhzD|-IUAZrUp=QKIA(8iZ6PF&7Rg4VgryQ-0?cPkNJn4wQOsxT8m*4ouf zR_iFhTCP~K+@3A9Aux5wtDw@(bB+ytH*c0B^uH6p7610>4X89mBZ@)pF#>+jqkBAL z0#wp-lcWcE%ee36HjCN&OOfb$c*yLW^L%U1{(nxs2dw*-?U6KyvT^0ZsVf&O)*kxB z&7Ko96Y+;qQEc=?xZd$wgO`vkP2FG3_MSJ*g9z}svI-CB-koTfS{1IeDVBlqFK=w9 ze*KwmyqQgadYzkr+wdo^U5S7OtCi)ZS=?3TyiYb@ah%`FeUZum zc02iPCJKnX4o%biQ#wtuSEaf8ZrcO``J84T;I*>AhyAvkEjJ}Q5HSb+^A5oA?=JRcGbF$;yc^{}qqWU4-Zjq{t zt>p8Tg}@!z%CnTy_^agcZgl5?#t^fdl&py7>%Xxb=efBd$on>z6Q(y})YV?ju#=X{ z<09E+QWXs-%cYf`vY;WSKx`UGcP@IN_^YqzqF;EMb>GA!YjVVsO#&ey}KZGlrEV^VW{2J#femKuGz@%|3~Y*nyh))@agVb{yBE0c%gqxA2d zI_6!_Q>XXC=Ao4dK-6(XE}JmD9{MjkD-v}k4RAb#c2rr4Pam+?T5Cz$eq`F|Fba6G zN-(`Z%>MT6#MBcfmJhY?@m{}3PMdDoIYY=tbMse+TPFN&(he54IM2q;P-;9Oba3woJ zh1Jz*oSYLAfsVro2GL4{AS_Z;!k0>EOs#F7F24>+kwz9*%ZK>JWH5E|KNCD5l(+A8 zI>;)WOE!IQ9>Qt{4T?=SJTbM9uiGVKKG8YtZaJ`A-?#|ZY;BIEE~4~A&QB9f;$t>u zPlC<)$v7SIgb~_6Y>3S*I_tpFgN3j@x$X7|IpE6#T+@E}!JFC8;ND*s*$P3?I=<90 zXLl7vS&Sg2Q<#)v7ss_XgZQ2_h}vXOn<~v+(Y3JipzU;wbMD3pc5GaARUL_T;wN7R zb^Q-s`sheYc|-ZM%pwx3EZDJREitD8)_tCqOu!I4l32;Hu+iy zE^{Pj)7cR_@2FLJnnUo4#S+SC*Mw%mhfaLAtP6M>iHfA1uBZfX?;hA)zRNE7V|b&!r;g_q}M zj{*s(GsQ%AkB=Wes{I_v?D#YGuD3ET9xc3om`q5{1zj+&KPCx-RpXWCBo&cQV+ zE1E)V^80Vce)>vQZ+LCHu>DV?)2xA6JVVfk&mokXsAE&1xqzs4j3aUqyM{nEnl1bzO|!g*PR|btyVXm>fHI_I z$kHNH@;saJr_#eQd{3oKezX9MAFOKF^4udO=S>u z;PX1#0bKIz>eRaLlg2xatuIclH!z1o&fmN`-o1vhsRV=Bt!U9$W^O!3NHDHNcz=|X znpW6-9|#!|kX&^i09_5)CQZBk!pHwPg!R9N&V1#h6bGbK z2lX%nN#g&}$GjA))Nlv$e!^$8vB7s~m3u zfsWNVh-Vdqe*A+)NRcH4ymu$2HkB=$I zP3YmHT{u$&pBqj!0054~K$EH64A5F~EJ_5lU>l z?{DCKOV>ShsH>S1yXf&V&qg3Q;ibSy%6UNk8jU&8!X=Aj8_e9jLU`#bVL%!mVM7=h zkm4Y$#@02YCGTMpNPlGROg=ZcaJWz- zetxn?`|@t@Q{PJ>@49_N^%M~_Wc=>R!XD+~HYh(GSQf*5NcioU_wpG)U1eSFecuZ@ zfgAl3k;{YW&8KLnygELI%yH?u1+nWhjsTq2@&iFuK&+8Z9>nJioL*LzB8ru)=d3J* zR`lC}POd1ZqqrIVU;V-|!i6xU#Z+5A;aBmPM3V<*1}b3xdmEn3xGqp?D0rRD)?e*x46NC8Al0$h9T&U1^wxTmkZ z7Uj{ey_r`+HYzJ<6_p3Z>&|+oJ-nIKkAX9(WP#K6LoT!Hqk}q${{=#WI-fxDl0)~o z1XzS}7yI`Ua`dKf@6t7#{LWgs>@a-%sZL|Wdd@SMvL_cAh~VO1c%TNgQ1!aVo32qF zgFhxD&sV)^`}YA4zEWG;F`^!ixzb5gR^v9$6S)&T16y<=Fh2`eGiuF*AwWOZMj*nX zaCF$W@nheh_jEz#x~KH%UYhg)nAe=>kn0k2%wxK(1rI3;D-KQ02i!(F0|o9=%!mzZ2hbx4e4U{XlFp zo+XOZ_JX$>J)|;HB7GS`6eAoQ2z?_Ty>*(q{iCD9@{-j@_J7HuRezoSj|pC_Xfb+uNut*rKE!|d z6bTlIAvN=QT$JU6Q|nUwSbndGzA(D+UvgkJQfnQ3*>%zSAwmrzwk5Nmf6K~FwkFbB-I|3dy$L33Uuug(U&R{pbrp!cxCbNn!X zXKLTrlDKDT3R#i#f^NedP)NpG3lq<1FVKq75w_|xC+v!z`&^W`p{!^vKi2QGSD-Cu zNpYFp_Zx0285cCsnIF~Qlg2sx9id81l=;zJ>-`gw+n|ShAAkdI zKC2feszJHIZDHf9n;qr43tVMiilU<}+_^8ZjHBQ`t_qW@wf;wIy z4nhCaw!ff?1$-b8_HcSuOQYAN0e}luMlx6#t$1BmkBv=XfB^{4aLf``|5rl78&w~{ z>0&fG24SW7KCr1(%BkaBY+_=~QDa%g(gV%s@P9Hq!r%v7j;JhTyA@wo@rfe|rs0tt z%=hGa+T#|(8oL}V>)XH(kyMXsRG5p4%Pvo$hT;rz!O1M78 z?0?M$sI-2f^pV?_8<}4d1g)uR{y*^6A&DNN!kKa3`9ijmX0DRL$a{=&Gx4CCXtB2^ z8|X+vjc|($25hNHGU5xL!47jLcMGu7`zk>8Q%m}t^I|iHpJM{pWTS@Ad=uKG;x4Sl z4V~+9M%Z)tY9m9=-9Pl`naeXz;&HilUpSJdDXe+@Xmk7QvFT&aPLlr~VUISxiR!Z< zD?$*FkExHa&@)0C?0sr-9azrFV)nWEmO8JYAzouHq%6j!A0&Fe;?c)Z+3KzrW&ynP zTD&*|g>l@$g@HfuVzm9%N-_oU0Dfu70U zlY2JGDZ2M#0tSv5;S=Wx-d(`XG@_6=LuIAI z$NpZiiypG`-`kbac6+TBbF%2Pk4pUEmglrQ$X55xJmDLam4X9KBNFvWYkc%V=y%Cv zaM<&Ev8NAJpBb;*WL|o8>s#LD*QQ&ocG+PMLY*86`RG0h_oitn}m!i?Ve%@SEr1?4XwiEn+GSG`hqOoI?4`0xSO=XOh{_{}k<58qsE*bE>|(Ow%f zbz*z`i9rvsZS}P79u-3|^+kx)FH%FnLW+vVjmDpbJgg_}y{QxW7G&QLGQ-0Eo{=57 z+ho?cVOd5Oc>)aPjz#>8Ol_-WOo$~n_7}y`TW-F6eR#z}m>xLcy$?YR$7;WjLBgfV z3wa�)}oN!uskGhzn!)mJtn!4?}l`rSH2?%}6Xc(kS?21|y{HI6gu0bY?$ODXDjS zF3pbm{l!Kue&N^UQY&_+8iA$8IYS95SWnO3LMctzQ6Z5)P_<^`mg5kwG>knU1I8YHE=y99)X?((HuVrY;MDd`jh zB!^~TBqWBC9`KCsIqR(N`_}jT2lsleweM?RzkP2eEX^N{1|%r?2t+--+sy$(AI-3s}m*}fi@S}aQu#$<2RUI#ZU z2<5ycdFz4ulmorT5>BUVI#q5toHV?wdm*8nmduR5e>ZNV{Ljhtx~9G@Q0x`o?$p1s zfCKdp1k`MooYx8%&fdq!y@AJhsNQ%$5u`6l+4&tqOXY;_J?+R^ID6D_xamFtgL@XZ(>0`xoG_5yHo$6a%bN4)u9~p8@X+1b@Gg&D;}}lAya%y z6E^TYs_FrAUviYp2d(0YiX^GoNAMaCGA@{HC|#DSw0u%L&gaoe)CWIlXjzjZh4%T&PqXr>ejFr7CV}_D=S>@5`@qYt5xq#J z3C0^HY17A-vK=mh)ynGSt7bU^JDSWoI-?L>3yKP%tJtnJ9ycR3T_3@q3uQS`F~~lX zz3t5<9R{$_%yYSJdsk*#rsf)RuZA=BkFp~}6_xQ`Ksp#lRj|!yn_`Vz^9kZUIG=Fb zyNy|Q@!C?r)8$EEa4OR4IqCw%O1?rzHEY0i^*gxF|tP#M`{!08ZmHF|ALt5+z^t&IIE)Tvv#_=PBW_tDu|;RHqFX>M}&08^3NzS>f>`nttZd%%P06VQOe z>!-t{f|ZxO%WLCB6J!>GO<0X*v035Gu2xOb@TQ?CFb32iY5 zh<5A``e8V}>~`KhThEd6sf3%AId7ZoXjpvROhg5(8yiz`v|4A%*WI0G1u zNdZIGt$72n$!B(j8ntEw=x1;m3zGN{%Mp_5D#+xH5?wjg= zY{Mwsh2TP>embr#m7UH58v0oEU0u1`q`g#8uZ%YKs@)JvbMfwx7AI{jCp*K`FJF!j z_D6&G@P6!f;uT96TFFExR7&=YIJTLO`KD(q>otiBB%Q`N_DwWWk|<@x#ZBy97IKNj zo2@;$4D8O5@qbAi&IqM#G8gM0?a8}x$iZE|L%Mj(WIQt(nA2Yeh8k_+wZZtOD>P$I z#2#f}S^iVjlG8|Hn0vO!MC1r;xalP&!|a$=6IP4d7X`~ta&LuB2Zp|S|6(fU$!lva zBp4JSD~X0R$ot9N-`}Vl2RN@`nKgU4*S47BF;fTk-?94;C^Hj4x#>+-JtNxP4G{3& zzUyVumXbCQFTfRiQ`4Y48;Y^W*hIT))EPs|IkB0qqTl4a$XvB@41`ymJfMfs(Q9p} z+)9_~5n{M2l;+AfL~PL}tvkH-(7iaxKCPW{P1_zejXnf76seRnwM55o;733uEnZ{$ zz8s{w=!XOuZg!Zj?a^rj+VK<-kto?*YZ^353t1$+2VBy*1TGF!srHGA-pAOCJv@Q( zm@xVo<8t8*{M&TALQi@APY&aZERhxIo4yq~P7d;F$gE5g7hLg=BW0fmB?C>+c}P{m zx+sN%uG3k+G~O9kIqKvU^;z+HZup5}hmTQqy`APX_UQMn?>%MR_a6*21+-A%j<{MI z2eK5})>#N?B5Lb-gGfUwD)kOT!tR&+rtRahI}=}DPOd5`HKurn4!6xBIX{_#!T$AG z*`AHGVIJ>GD;=MM=({bK>TBo7zMuORw!>1)ISj?zl;jNVtyj18S_kgBa8Dma7$0`( zBZa8hv|_R92UQmdJL@sGfWf5<|4g|6uZ!oY=Qff?KBlzarHAnL&6Fy4%zq2LdI%cx zuoJX0f?8}#YF2QCvh8kuvDA9|MEjqveq}fid!b*bEHZBHw5XYYWugCJI$t8DQd5wG zQS60LOPq9Cn@WZB6;JLl32c>DzDkh!u5UfKl~EVX-~e*aX;Wy%VL;1>OEo#2#BHwu zws>2y8}F)x-DnLsgla(*Re3qKe{QL-<7^Y8DrVud@})6Z!1e&7gfDR7=h1=drccyw z_Lps~i$HyN>G7lt{c0CvRThtxbuQMc1cj>*)I{P1UG;vu5ozhu~x&V_$<#Zc)g|@^7kAL^b{O{#x4=>N)Gf8KH#tPPgIRpZgTr z0^@a9jMC+J4DN5Y!VoztJ3Kyj^#YYeR)jRo>Cfx zmzG=j)4Oqxt;K>n{wkVJm)Jz+awo!~dKYhFhs?hG@NOE{oj5DdBI2&@vmgv_B3vME zalLy*P*30eJoQ3GG~cAsrODXJU7{fBQy-S)CL)qL>N&s7zG(%S_EaASx=eICJns_E^|zd{zLERsWMVD%1h0=~e$64Z;b9Se1WSO8 z-=lC1Vu`zc&+VYVzf}FPLXPf4<=}s3Ud!)Wqh#B(@z`wXF@@~I@RBDHaLM*H5v}wLxO6(3%%6~xc-!!Zu5SElJK(m_wJw-q2D|xv0_T>5uTYf^lk*p}K(vNOe zf)@h8UNBrS@h>46!oO>vZgNf3Kd#hAhJ=du;kVfS{ms2#nwbSyj)UNz2%?_1M`<*y@~LiuBjQ`9`*Y4h zgRwfHL>ZdVD%=v>9@^MshY@NZ+mdW_wf?ls*1gY5+BFix-OxFkCvR~?e}FT@9QoyI z%{xoR`wydt%a7%I>j%bH^oGRe=a+9b08BOry!p4i4RRB={qFl>HXDF35mX=QPQzgw zS0Fh(^#}t4|L32@1avuJ-KyWIwJU4Sj}K6pJ@3K4jpT>nKbOP1%W{ENh3Py$N##wY zBq|!95387`F+E;-#$UYUfB9^|IbD-cIbyUbD}D;KurD(F;332OTPJ)8FipI$W^yQ_sQI<1;;7YU9)Af4W;7!eNHL8_n5U9u>tI&E~FJqdL*K1rx;O?f+hG!S;%7*?KYC*l3~6H*2y2E z3(R@Txw7tMT)JJy|9A$jUu>3q5Kt6xt&I{iY`m!3KqpZ~DIQk?-NYNq#=Icd58zAr zOfqCn>Wc#~xVHY2Yt%Yy zO*i7A+sL92@z+EO%)c*l+Tbn35r^hHICe=W5?$QFcIA!A{oJ-+8w}UyVi4Q}^fU@Ad5YY zUU%tPuU2@i+-Z9BdwuPCu+?MM1I6EQfn1VWz8t3JekR$hnDaL~{0Bq_%52aGz;U*c z<5F(4wTcL0V}wmp?5UV!-oJeTqI?i5O(mdBH!Bc^R}l|ouhL|#Pzl&;)|At%dc0;F z;3swKe1tsa{S1>jxTRn-o}Jin@RJnpUQg0r%3goBBdmjz!L#lpe>)JOKt%8{@_lkA zsm+O7`+!TcT={S}Rbdp51McxX;FFo&{?`yPh<9woMt3+K;Bbd;aH$AVb$T2m9?sm< zt$Uh0blS^qv0RT0qbA)qsHiWxLrOqgwpaO>zDB(2e+b)^nctIWcW{!L-;>96avy!{ zLTXhi3>$8q<15Si9_?ro8mXLL1}4xXe)MXIiJ5$DIVm_~8fZ-qiE?uVvZA4Z6#e52 zAIB!#FRd#Rc6E8_5*55i$wKGXo;*=K%6n{ESyNsfY`i&l=_QaORR|7@l&R8XZfJj# z5g^PANlm4-d}#bulA$^HT*bf43GN?O$`Z49cju&NzgfHW(F3nwA$`a1<0tI6ql~M* zUWsO0F4FJjpAM7RHdanRfW~jJN%Y#o8=*rstK(m8XOvy~@Li2FF0L6^7gGkSqdvJVqLmZ(s&7|e`;YyJ}3 z>>DcEF6n58TG~H##_a&1cP<9{+M9M$5nTU40OF$&+3nUs@!TC7+5QEVz7w7acP_zD zdy9&`6-D*17F^Gp|9(XV+kXj5p867yD!e<>w>LK>1B(fSH+ zT1=7u`+Q=rc^mUj`0*>|f;KDpzEm7MMl|9uESqcsbDjl`R;}zKGQ>(xu=I`C?BJD! zJBF3AwIr2%q2LjpJMkO$*y3Eal;f?!tycr)k8vjppZ37y=);*Ih-{(;b_UV(oh<}T z!Oa|Fxz0N*DoV~1J;UwY#8r4rNJFKjc|q$-&ylFJD5 zg2V%tUyYa_<9{;t&Axt{5kbtt25&xkD1z?qxXy8vp1$q9qZ}tjiDz*fPm3F3!xxTQ z>{KLtnN_wZ>b3E@4@hRs)5f^VFu^Nf!|K*YHFxdP(N{qN5Etmc=H_2+Y7@Q@g=X1Z zBWF;_*%GydqEUvNfbg?3{u&Z;9NO7?;ZedG1E#?nqEGJ@QnL`#TdQ0-Qcbnjd6R(J z#7W=!Wxb9*rv(va6n;vxm}*4d+*8gKc4SkwXzm|Pl}n#apZ$<0ZelE$E*fIS@JJr>N<{obzU@lbBzd*kr|Jk%#(;9HLnsy zMN#ISPC5_zfZq6ESE*O)-U9_qJR7IYoDw2}<8z$4b&Vg-Qmuv!9mP=hV3x-&f`jjq z!dyey_6CmfD(ua#Jks`xCVCYVko7zsGS^ftx&F=oh= z9;lgBQC=FoqrR2wRw$XWzweH*Y{2hnV9`+4WO*4%_v~|O;)AK*H@tc1WQr|zV5(ok z*U{Mx7iQ|X=;GLPKh?fwqS!KdnRDlRTh54H8UxjBdJT+T1n!wtef%2Ljx!$^EH5*V zrku+RN!bf`!;gKG7UUvL=IHMW^P&Z*%BLHuK;|S5*#`nHiY}#hUHc1u+r;>J)ZQg? zv>Cg0n0&Vv0BeacrjTL{8ms?^8+_EEkP{ed$qoC-{v+;X+r_)UFE_^@#36KvwjEbI YdTaf=-$kPPG0@+um+CL- delta 21299 zcmZ6yWmFtZ)HRAjaDux_LU4z`OokxA2_7K0yGww^Ex-VQgy0q+xO;GSLV^T>J3$5= zV3@f)@ArQ9u66(Ps;+Z-b=B_b>T}NCUH|7v>#rxt8~|mYuA%p98!szQ2X}7=H&-+? z|LkuWy`FyrNu#IX&wgzi&RJr<;b+KXof}pA^gi%rRC4RUxZ@R`3dCu?yUD_rwBW|=sTh#FT&jm}aAqUa2S9(orNcZ=Fq#_<( zEuxxVT(`C-tbdk90wGT+SmC0C{PdRuzl6o zL05czHFB65=c)d)w0UPp&9!g4MD66{r;RJIUo(d0<`iyUCqq#ji_J(|SFHY(>n-bm1M`L|W<9sL$2JT17>lBp-;ySvt%) ze>m@~_|^Uc%Wv?dF7u?)Of|2 z>S2q1Sp_<041#C#n^&9WKYmsIDXD%R+-JB0A+o)EGfWLROnmuH{`4BBq{U>}azlr=Bo*izZ=kc*jAEl(2P)lc&DhMha9D2mxlW-%*X}ax|v~j&9V7ME8&O*>x#) zj8$3;!S5Hc>A7(KDvZ5yiX&o=X}6h|(-*V*!JNQdH`FzIWlSX}?>;trosDBo7=t%8 zmo|r%K>M^eU}$b=0o-!lJeOc+vW)#jAIMUfzm#`BYti|UjT@MD z@bY<0WkFM$l0(>uc3}Ks(Pc)1(g9hCf_wEAA{eG2%;fYzw6adp010Vif zf$3S`0h!T5kg)9@p^h1&j)~r)j){>&4fySPyiM~%0-)bFE0~j2p)C1iG*e_gdhQIL zXcAjJtdjoP|B7wTq#=Lc>=1&8(k0@OeZng=s;^+BCwKEoVCUgIPf$gm4^E=4h zO3Oxk*}xpd#fD~Xc$_4wv|2mC;*O6(pgH`BySYSK+M64zHGUd7;=%&Sn}X&|M$#>u zNCKQ}jvKc%wy61xCwJbF1P2(A-+;44SX_`9*94XuWh0O(`kXv}|L|2T+-}Cdh8-Ow z{ws2giglZ4y`4N$a^tluzFhyX!JIV*!bb&@B-rF*>gDRVgC%F~)R!U@5w41!jSNW; zMn5nM8&C++>K>yyyG(zZ8Xxin|ZRDO>yMZbjkf7 z5S^vRCW!bVjLU4TOFp;aufRQ9CMV9YeYYw4Z(@*K-5Xou0$enuf+k~P#M3U4J2dxD zRV3xe>9kLT4TG{B2a?|Vg%pdy^d}GIaVBgviG^nkn|)S49PaCb-GNb`Gx+8&$y7)V z3EGZAMlfS%@&L#}A2H7gGmhcOYvNG4 zNP396@YxKynA!XdBY>s*Ov{yA{bh5v92MNIm^+hKhl(y@y}4J|Om?B2jz)~%=Taa6 zr8f5}np{g?`w8|ysIH#=81>O!9l_tQS@Sg|!7g!rQ8r`qOT(q>9GUHLu8FkM{Z*fH zF}?IuQ29`4m1r>WVkb=wnUlwIYs`+W}iyg)oV&L5|G=?p;MVBv$gna_p^`Y*Jt8ku?L@L4os~hRxlVS=HIklU7c9NS#Xd%5V;oPj6} zXQs5stXKZr41hG6$aGjPAPQSMj`ILVNr$Fu+;-uTymI&&M=;9m?1{>FrzL-8WlY|^ zWCZP2V!q{yONPJ`5Asy{!@d^C2#V`~IQlO`3=Z>9K@2_Kh$j#0Dt|JHE1&c7&ITTZ z>Z;&!%nt|No9K~V4(G*m^k_dvK@P1#-CLNvB7$;e0qR)>;@FaMp}mC?@JCSY`SDT8 zGFP4oLUtx<^zLRSgnhU48{?R&g}D!Bl2#DiuAwJ5_uh-~OVGCz9|4V+k7`%_pI*m= zQ9^Zv?+zR_R6N1)K61Z47UL};HlMktj5;c}AJF^%OA+P|YR|4QOIz$7lxAKq;ZRU6 zKr9q*0Gix#EQy$GqI$a_G8=au!iTFHp${FsKBQx~EL9pE6IU%u1@|m0`9+lBth9U~ zziV;ASr1e$Gw{83=)xAYdO3k#k&J~dKLho3|Hd!4=ntZ6gM`tvKds@$U?RU2hm}2d zYcJ==`uwkkvluib34rg&GUjj`(S8*S0N$dKK&?SLb9#jOiISl-r%ZESja>D&rr|t4 zss!*9J8z~pOTz4r-B4LR_f&cY?lC{-6)kYO2_y_AANL?B75%F5i7#_WROt1W9TYye8 z5M2Uk#m%1NvPi8$VSDqsYufQ){ylq$Q};ee*$cjMt2Z-ypwGVH++XC28tcz;aySUP z&dNU8D5X}6i#`&x?J&%g@O+2 zI$S9aN<<^1EM00B+ZCM0Pe&;$Uhr2FP?GE>v**Hn&Yp0imB-fbL^2?H;&r>76<@FD z!S|?vP}(a$R~lZ%jCI!AtaVyQAsj>JwO|?9Gl=mY1Z{ZFg;O_r2Sz5jXmGyIpMx1h zDx%_W?Nr{Sy+40YVBG!vCu~FgkdDm#Mm*D?4D(pREw}TnMK7J?_B8>3cDx*I489Zca!u%FUTT0BKGfa5owuCB9goE zGC_~rub15>TlNl1Ke+wl=?V=q&?9%POgr^a`pFL-H{_Zzl7JX-7QcvG)##w;*L(_a z!O-7;@)Rk2zY**bxvWRdYJJBw$7kK6Fuoqwt~M$rP#=0l$biuwePkw0iRf6@pB>l? z4s^ju&(>ay#(b*B+DT18UB{emj+J{*zW1{p2lAn3m+P8St4MhB{?=R;SOc|%nFSdN z9GRC17b2jtSHj$~P$?}D2K+SoBIY@PH*dZ>-*lM@26Z+TBtl*mkS?n7!X$gX+G1r) zp_4(T*nznVzkm1$AuVY6;6nD37>lEif_H3|5{N2+(S;KM&fQ>CUEMfv4+^&^9Si;d3O^SP*7X9rE_Z34`q3wpvm%|G z96uKJAT`Yw9qt0;LRq)2$Qla2Bu>wwAg8Fer3~l<>NrM)qco%!>ci1NAY`yJImy2= zC7&?fehTn=BeZr*vW{fy{Y~5$CakQLg1g&)4p_>pMtHHUvC=>zH1hUZJ!|_qj-0ht ziRpuVcSu0sny#K+VdPWnM=$el8n<8d*+(S!OwkHMg3vckm%fgn> z&{)vkyndy7IvJK9B?-3CXx$mW8PbR{=WT52IeYWgdhqoZqu8=@3CB|n`0;Asip_cE zhfmnnm-1hAkX=Ao`@Y0L6s$u>Upo$O7}O9yvk?21+zEYWCzM98#PlbN^W77VG@Dgh zIX`~ff$S(RpC$(I^C56QF?}>~70 z7(M&y9}T@I3I-SIpou>95dJn|*IdKV#}<|AxtGY>AfQn%Xspw3Pv~kH=5^V8c(C6h zE!6?(s;l5%9Q>3e{WX{|$jg#e)AewBR6Qq%JmBKAY;oN5bhW?fhvh$6)C$9%DEq5W z@4JUqm*=3Fz55EqG?3^nEhjhpk$D)YDX;6D5pZAl_sO=f)rkS z<2l`SXW$HMz}K>rDQUx%|7y;u)?bNFRvXmqQl(%zJ8;mjL!_>=5z(>{M&fjk1aI3h z=j+ax?cr0e&)j_K*cPaT2|cOdd>4snDY8_v!4x2iffs2$;Q#k_=5haTR%n+)=6C0- zlx1=qDZaQ~*lg_e>8CSnulejo=&-ra;plN10W52{Z1#i32|g;W7fd#x1%X%^$P>Po zeORkWOvmpIbjPGS+wXb@DX;9$e+3~_MzC#nTad>-SQ2OD<2F2b_R^TRuk6hLBk4sN zUI{c_Sr%HJT8>wL2^wJ*((`L8|8X9$z$6Pdq-Kr}k!O;mx&D`Y@z=#c*gOF_9ka&I z0&IrPgckdL{o}W~mjW7bAbq=Y8@Ltvn$dks*RTQKb_(6O){dPt>MyRvZX2m2T9$ZU z>?=>y*&9!k4DWi{r}Y_p0K#Hh;N#xza`v(M9dd3qvQ~a6t{6|FKN04?bET(X@lUr^ z?q?5Umi2X106q_MNY)A1gAI!q@_{}f1K?Qxuy5X(WB(TJkE5z|*5lfWig@=9Bc%P4 za45b@cN=rN^O@G;Bl?pi*+iw0#j3Eh>$hIO*VKsp@LHF)<>J^vod=>JiwbmefiRf# z635bV;m&Uexhx1QX2jEsvYS-$L zDhPnwq&qQP9qDwkE6y%z(bMdgWpqD&R%)zirqLun&3X>Z6wP#rj3zArd&?CS<_hH5!W8=Ay;5`A2m$;?Hz;%U0kfjQr=kxr zNc0JA0>#CRS<|barYiJMknem1y>t0?z@e7xtife`q&9qQDo|8n@ha_CUXT{FLU*1S z+`}Ar_^cw-*#}Q}FqH6eAVMGt$Ml#KuWv@%14c&FI}cs23%=rE`pOUNt9dm{Zim{B zXr~q8Zs4P@F|7>f{JmOKVR^nDc6{}Ow>tXD?=-BcVr5htQWA^ks=;A)Eoc*T30jx;{qAw3I{2lstFlP^3_Ka8LBj z_MSG`TmM`+`qlTedr7YW3&ZpYF6AjX;TwRJI96wN+KtKK=w!NrXut|Q@$l{7N+xh4 zlxDDIS7PDfcRh~uHTV{f1}Wvgr$@V02O}C4yI}C&^T`Nc%7+Xy;a!d_w5OVcLKxAq zl7$SQ$KUq??J&Rf`@n+1_{6VG{PV|-mVb~vhulf=KCh!Bi?9TOZa$w>?5*Vx5z1;) zGxG@s6*}uIyf-4%s_TuzjFT#;{;6Wrz|l`(QkSk3#hANjFzvVMV2%)l+w&o&;9W;c zZ#l31dz(SHN6%__UJ!g=spg8uC6d1R#IquH@R~%H?D{xu%FA+FGVSYMR=#PPa95Bz$49 z+Tmm#mw?^&_)&lB{=%rgmh)72qn-9e$mP4;I;}ry-xP$;8Q^-ygsp#n&lQY82W-DE2 zDf~93Df`HI^HyRDJ3bW(Evskw)yv;Kp)o2#VoK(&9A?%uq8%c62u3Ah4q!}=*sOQj3Pu2NYp3006!!2;kRHOde7LmrHdx_NbUicPh zZi&jYux7`W4>Ye7QYg$D#)A+k_z0y%su9QTrU|i&*p6lul#DqM`t>Hv?Rb>Sska;l zFF{9_lyLBA!(xu}1Fmkgsn>?~Pdf#UavYID`oOC)SeL8QMJW+vGG?tcnwb6tY~kE( zgKO&7cA|pb&g5e2E9~oG1+%>n!xl28Wm8q9k-WD_-5E{E(v-2SuVhme?U!2!ejWe3 zeZh#+uNfhm70RPalqNBRD_8mL+i+fL^jDH@AwC*!h<_R4UlUU#`4xtD&IgM%V#CgF zpXmXO6oLg>$mI+x$i)cDp7j`dg?ZjU>S)`}P^9~Mi*#^mpu=k1jE zhv)XJ<@VwA@$*0KOG#6*!k@lPl*wC3Yc84J`swOr5=1R}rwQ@c&oL%Dr`s<-gy?3) zpY`SDc(B^UCTF0%S&)imx9q}Emrk`|q9p;+c?tIH!77}(+WkfHcJ6~(hHYv7_cd9) zDw|MH(B(TO#`Z{Zv$9^LH7S<8PCQLBZ)|FksBcdY2DNGMEluW}@j3atoj-C^%%}@C zgcCaAlxif81w6+4oU9CyS2mo>!9{3~(Iy^^Hi^mm9cu7$!aZmJC)bmfgcZM1-WD@C$5b^1zTZ1-C2#wRb0X`g2*wNf=`qFyF4Q)hf1CFf#{}=kdjkBh5nE@6 zKWVO5jt1NDjpZkOl4D_{|5hpT&;e|TP-8@0uQyb=-j2ucR38Z(QPL`+pI0PMaGr( z8P`Ar34z1UMV>7>?e4p-JmLh!E8k=??}+%GMsnZGUo@Fx%8Sv`yhM1_dI7S!`s3lj z2b=l$lMt^z>nXBVD?D`Wk~Rf(p_)VQWt%H<%gDoJe})k^7b$~iJu0LCT*X@gqtj+G$d@BfCP}kGBnz5VS zC)zaL+#$*`GtWclin=?3n%-t`4WiNDI%IYp#1tVLk7|{vl~@b8;>j@&{?zPWoPtg( zcR==i7GJpU{Go^n9^rk7@{f5Ppt8XlDB^=&9JSQB*-7Of(t})wyQd&W5UtiA#qug@ zc^j!rIv-3p{_ryluLAgv!NQE(mXj>*A#Z-S;;Yrj^$%YZY3kW=Tx*N@vd(M>d6}`& zv(3-bOpK!u;B~sfx5XDOTkDdScTX~ZE}uzLJ{%eu?)mHff@Ir|%_x>iC+@df#BGe@ zGoPNS0xqL8eheAn5#QCn`s2`FToeknkXzz!L#vl152Fin)jhxum!=ir^0267C#&F~ zzav~HDBYoVoC~0_nC{=FrI_jWGS+$5de5%!TlP<*n6NURxP*Ynvf_Qik!^1>uSf6t zKcCP%&=E@1%4Yu!lcG!Z5Hr#7nX|di+#1fR$SnzQF{=u4qM{ZsNej8(h%_?Epe{a| zgm{}*VSh?r%ZLHY0&8=f*4);&=Qf8O>4Felm1tj~7mr^DUvNU`4AQx~eDn|PR~3t_ z@in^$Q@^5ArBz$x{7Wl$!o|xBD6Zdtm8otp2R{~1-k1v+WhAaj_Se6)5T$ir?Dq-t z{Ype?j3iYu=Ale6#Rn%@C4B{^?Qpm9qCIw~R?sYEi^}Z?mSX z?6v)KNSG3EJwJ?pP1!+{BUDSu#N#nK{hA+l$V$gb=btv;do019pB4SN<*7IKugntY z)U?HNInyTpgV{^W1Z`7@sV(V*0GESS$@6O2d%tR5u>T#A1a7xFxRf#Epk@bmmg`?2 z^uL<%uxDD<|3%e5fqe<-Z6v5t0Ammp-s}pjC-ESI~n2R836HvXph0 z#3!Fbnx-5Rm521rPB`^la^duoT3`gXYr540NY5LJJkLVoi3aVwgy1)PSa!4m#$QG1 z0hQ|(Lkl~-dDDH++a7pQ#=^+hPLHHkTSdd?Wo}Wj_>slhs^xVK@cvb9J(;8SVzaum zKtZfY_2v}Gm47h<@x*Ls0Te1O7PrXs_Euzms^dZXtlqPG^6D$RQB{x}16$ zh-r=&ey)6j4k1Bwa7tE8HZvf0o_uK~ROA`4;+(blu~`bOYObgk>c_^ZD#dtBhU>XF z(aJzXLZSkDqGYAoiGdsZ9zS^0EtXXtO=gr|?k=;NW_zoL2mfVj2NRUBn)zpFKf1Bp zylU+pST_oNr`~n8zr#k)ky8_Q*B%@~tc;XoARe)M@)uB-}O{!nBXyfQo^~xUL(Ee*qLAjtMMYLf|Kpb~l`OMA>oJ0XgGaMtL z>1|&o%@zyKlBpfBvY-k9e=%Tmv>ixwn8XRu>91dG_~I0I4eQ19DXJ z9opQ?C`9&l|1v`RvdWM{Q=P#H@nf)VY;8G2a~Jv~xwKl^?7nYio3fdh1lcT*$_B~J zlr@&wimmO>DvnQH(wvxYJ;O8Y8UGIIdjtb`d4Y1ic0SH#2R}$3C@2H4ENo@tDY_LHj> za{;X+<}-g`DON(24!zB0KatZ8H^mcxKoZY{2RIW+#BvMVDoGG9YrKn3xObKIGSawH zu;UvWonENVHV^!KUGv5ng}6OnZs?>&VCNf#@TpSe8m6{A{Ap@i1GL{vAs6Z!&8!aq zzV9gN2`H$m|I%>V5n#Ro>JY&xvF*zP5)h!1UK012c)b+sL+{#rb3}anIne0PdTG`n~*SL;TRRUK`fWuUf98XN3KGC-zi_qK!d; zg~LrW9%Cc+<-F^s;qVn|!tvA-MUiMhIbU*>T|cSqx`)9vdYy{Q9$6Bt(v@=^$hQ@@5Znw*3CJ(cKTNM#NF*_Y>-y$!NQ<_k5po6?J-VRVAt{D9YY}c;%71C?2 z(R_G;^}ebieeV{{A5( z21gN`eBWROIhUMt(b2g%?S|hw!G}>!IFwVJ712}t&xnhFJEf(d_adm2uU=B~?pZjM zqnq{|#~pmyyN?(LURZ^_iQMif{7r)CR4+*vcfSquAY^Fei2{1V6@*-FYes*D zTy!10InK-b6S5WXo~`)HK3}&X+j8F0tnvys6l&GGs*A)X*kt42?p{TWCMjZcJLD-J zqPDX@BYVJYeCTQ+==PHv($=*aTFjUW zRP!G|z`KX}?`x5G%{oPh>B69%O?{BgvPF4nJwTMqrbuQvr<^%3g z2B-GuE$g#uE*N@6++`jYsG(cW^Sv<0EvoB-I5JdGi<&j6(F||tW);5&dkv+-Nb*>S ziY4zne~{EhGJ1qlGr0c-e%IY`C;k#BFERzD7hIhu7DH4+FNFwU7R2*$vi#sk3Ih3{ zVqi-^Ig;YZ)@~j{rFDoLN@T(<7JB)R*Nyiq69~D!7Le?`d>C_EK{R+yg92~8+L&$k zw(6KGcV$SjY43RzlwG+wmfyXQ%hOzSch0{;!;h2>?nFe`@(1PPQ0&`Zg@s0~IY;6( zw%iq?Y2`OeDjAUKN|;BinJ$e`pH}zo0XMU&jMOYkit9zu3$?*eewr@gfDZ~y+8+drI*bzHg!wLLuEWW7Fu9b<9507!p0xw!?vVc;yp z@+@1;;Myi;R*=~{8H@3$R=DZ{>NA>@nji}8O5xX8-NYL6g1acp_+d>3xv@5KDrptC zW$5xjj(B9(Pv2{7LPW|q@3{!lHN?*6AH!1eI6C@4sBRkCb3&SJY-}9ja|p#s`g^?o zPSkfRm;~MTvgMuL-~b8e+sdJZCv{6G9)5bIv~Wg-gt zGB_Q4mnPjAaISeVKd5*dO@7u?$7`7sVWEq6nQwqDuAsF`h42X>=nhta237_0`kpK` z?QQ+W1`81@Ya_U-4z2=W+oNu-sB78DY@w>8G5qbriXJ`ag7#ZZW`Km|A2#|9=8t@c zLlZ)#=V<4cWOHh`@r@5nRRcpZduSu^h)49c^5s@yclYet@hQRM{6l3mcLL53T{|a4 z@f*`Sp)2*xpK%>9iWdzpwjEW5Rbh1pZu=)n*DNI_#CRj-eZ;sE?G4c_$fA_?4kvqr z1-spvQAEit3z~5YaLa<%aRcARNPLcfEqi(gP5lrf4QG@IA`Oec4GI_zr9tG;oA%%5 z9Tx2YVW^OLaL6ZkhH!PXZ=Qf#2+Qv$u-|B1k$0Ai82L(jcQLNNq9;*#Y=|5dI42jgrI*9m@f zLoapuMT|6Bse2XAVzFTvmvyme9M=MVR6Z2xWg+cX!;s8t;8*H=Un8Q5FRMP=`sY*o zF|3EIXqsNpyA}plW^em>m(msOtiv))&`qn4VwOT$H67ndvJl99-%IKi6SSa`#FcL) zk_%FGodzsI&~Bwz6#smiME7F)j!8Wc&`P{=t|+m$AstCD1+*rmdItQXW=er!kWo5w zx~~>Wi&9U#*NrJ<_{Rx*k!Hf~9)YT)_34CFhp^vs3C?9vqmJk|CAybN7dDb`WKYfAx5zBFiydl+G&Aac zlp&fhzVz4b<^n~pS6=SN!caPFB?k|LEw}Y#%;dza9%EniO*ehlnR||RmMAHInHdL& z9Z_+>z_r&8)+UZ+eaWPv@;Ofoe+ur_cIu8#Chz~!+wv)Zoej$k3R;X(eu3>5sIvY& z47jz!B-l2oy;ZV%#XJBE=(v|Q*!$c$$A12t^%&x5kCCi~V_(W4t=hjo%!xDtU5Koy z==ZhYweC*8FDXPZpFp|cGP0a!zj_$^IW*gmr!I&X!7IRX-5~+!N)Q|Qg_POtNAxeE z9!5cIxHqx4Z4KskpFm6KWEjq9?V-28&Mz)Bt_ch!J%kUrZ7<_UTi-?`SM2QLXQrInw{Bkas8XfsE#q~kJoHYj7 zjP7FB!T_ic$K|G%rUe#4(T6fzw$8q$LhBvEzi2FupIi+T?GJzJF(vDN^Lx^fvIuf{fMR!%qTe%by*P)!J_v zk|MmeW7ExN$xB}dL|-e9HNOYI@lXVuh%B|U${^!C_WqEq~;+S@6GBw zeJsY^8Y%igGxL*6?rv6$pDv)M`$Ugf4TsddjaC2Q;?|ohJK<5~(9sm4Pf*NMf_Su2 zQ>_ECY>+oLq=)x@cSP-@dnfWW7X=-rkPA47qsyhmo9!p88v(%n@BnjMzqQk^oo`_T z==>e|KQT!rYA+(XU!yJ7TgiIaEr{e#3|&cRY*XKeiTKa3v_t4lU6m68%D94AYazGO z%=J%M*MDPr;VFo!n6U8yo*shiip4Y`A`==T^QMz(c_uMvCd99zjI|y|gV(xqpbWVe z3C_g#{12*0O3WR=O5Pics0mn>-`l2Q&1)=o;4QH2`_0taSLJn3h`9+&E;C6Bwct5$ z1#|wY6dV{1W;+Sm=8^ua?asjA!a3sn*rje4BJtTXt76}ftG8~yQUUv7cwm^0%ui0Z zBv!?`b4j4o9mzKH1rZIOsiqX#V>g(sQwx{ZrRuG@=?0n=2eP3P&)TI?2*N#S$irG5 z;;ZX*$EeAZEBp0n3e42EH<-_)f3g~gt9218bKzNAlnZ}Zub-uF+nN6!3Jx&m)U1?B zOfnCWW+9Is#SnrHto@xCDHhUs3U~YZJK5d2J;kpJu`3>8bEz2OzDxm634M0}mg}fT z*VnY0?E`F)oozTk54G1DV)|}29@Ey;Zs*(qYDKs0_AD;$GkO@~ZGOu`w{3)X;h0Hy zjoR#5gb@rQjyo}VN$&QHngY`jk4V`YOjrpB+#eB8GCxBcbA^1ue7ZILcAel39CS(b zgM#^oLd~F(n@6N;$YbtK^?2$ws8n-%--aRpcDi>%g13c;;QbCSOdGg-%zpZcq?XDg zMZzB!nKbUezaVF4!yIk@j2pWOf}h5?ukoa=v=7KybIw}2owo_hs(Kw_dLw?cV!jQv z?x3bJ#_fOkbgk7#w)=b28{~a>ot2~0A#PIt(3D~Wh#x8V0vMtB~ zP-Y6+r9+1J%ARXBbyxnc1mn5bYMYj04jvm8RE*>A)>GSh!hU&C zvdiV>5q?1%Z%)>d^&ZP_Jrn$xWFz~iKa(_P77*3pp zX?d1cGqIZUf5il%h0!j7Y9mDBMFXDlVWU z`6@oy#|x(?ejc90F-x|UcVK==Ol?*ovhh+Oj)Vn()o~#u#nr9KKfjBF3&JnRnVl@5 zTXUi?$M28!91!ULa|k4iCy5Ih9L`+af{Oy`o$nllHra>rzQ7I1KQQE##2Ki{&JW@$ z_oloM|H+7}4Qg4kf(lFN4*&@T$>dA4bx^SeBc|_OjNDa%Qm~k!8E2-|BfA zC6IebXRs3DV{(F}(mD?6%kcZ2iy9QW#hSsc3E1Yt=`BEX zQ_xp*wliDfvGb@r-HE_S;ZbEWnO5C<-{V!odA_$5bV-Qx_a&&J(s5 zPU=2?b`fAT$@^sai|Nj0lgr-j6)g|XqbMjTtT9mvt;N5LPCTRe2X4lNxrupY>tMuv zC7P_8GR)(Y_hP*;s_x-Oj<3<;dqu$54tK&^OHW_pvEj8ECt*IQhI>M05$LP>=v%sn zCNO+`qY^|Bes8Nh%poOHLj9QSu6XYXQ&nm3jj!^;wDIOAl9S$e`VI-bki!r2JtiDT z_0y@h3S^hV-!v1!6nglZ_AkRqJ!t!*+UAy_A{XvJ84R}G$OXYQzmw1bwqDJ@e5Meq z&AXlU73P&WOOHEH4USTBzlGnlB8LvnHQrDZI5NESPkz*wgC%dg!FBBJB7pE+c=zC* zymrqPslO=wHyiQV(U)^}%uXdmB7JkGnwwyyLlc1YsPz&XP=cy(^jo?Op6|`!Y{@Ds zvgU<_TY@zL1i*T66byh%6Ru&aSP!Sy#;y<(l`B!LyHjXZ%4ShjaZ~^l^yWfDYB@zh z0~S^0soXm&UKtVPV!=;~D`6mIxJYGdVVv=w@8s-gC&8NK@wk*mCiOhaoXgrIgL~#b zZyL7ZnJhmlq(Vi_2+jX?2;6=}y6%R~S(o;cvIh47Yir5J)T*nK|F8YtObw8*>T#%_ zvxrTeRz&TE)pQSwnW6sSr8pZ2Dn`xyB;;-Wl7!n_q7P9I$#r8SMXwXZR|od%`|~~N zZE`2iH8@0bgDo*5%0>BQd@zB(BDjDA*44|EZ7&*$@u0&{>n+p?^L%ON^_BV&0N*s) zyGa6)slS-6^Xb4hGZxw$S4Fk3cyo=EqGbA5yT`r^iC_FEEqYcn+3c$(95{|zkloY% zSwt4U?fU_Lb9x4a6GOV*+)wXBuk-%C3WYy=EpTVY!lL6Tl*6ur+M{6UHJ30E#?M{W z(9>bL_TNZ)`bXt*&&_#n)u3w{=oDDXv7_FGnu}s>;q-jgFTaj{R9G~3*n90y`!#u< zmR?QJFK~~s6I)4hX5mRC2$twjRZZnwc^aClm0FXt=2_6pJzIJ`VzIMOs#71AyhW)< z7&}lWAji^xX<2=dLg1H>t}r(7s1nL+GIx$QAyL$}zP(h|T~!)e2_Jvd>_aPDGlm*8 zUCmEgxY!Dx=e+9mbIVaX%QY}+4tZ)Cm|gOh%SoZ^d1N7MXQ?5v#|ze7H_ss_KC#)x zdDON|c54JbqOTEz6=xRS8XE_twPBkv-Y_k!3Cib!%SiQS*`8-AhQn!OJ8|^bxBduy zo#91hac`g$*fm|UUu$Lng;>f$4>gX$;)Ai>=>FF+HWLr?uQOh#P60QX+TmZi#!j=i z$?!%Omc1^4_eO#rYmi*E@d41&&^_xHBR^^;K80_!9TR>)f-(eeT&X}G#4il7FJ1VO z2L+}vngvh$s216*UY$H#GCY%PZWMMNk5Z#S34a994Zm!@eAa>u5Kz5fcw+4Z=9);Q z)SOhNPL{U#oSiDP3BmUO;}D%&>f{e_qJ9Lav-@;cv6H4MR6l=-QK}QlmT_Md_Y&nV z^2J0Z&JJh@+xaN5QBM#}O#9kEOP*)l1G06MXwur4bi(3|yQ5y#!2W>uk{Xp&f?wpE zLAeKYHa{s6Cbyjfnr){t-WdpXqu~Vn&`rl%(LncQbwj?M?R&mV;%IVZjrbvDRc>Oe z`1@xK<0qm6hS(suj6B`V-|jFyzCCSOFgpXEMyRzXSoj*y!cXzbRDbC9rSdvHLu^e3 z1@x?Qx5sU#t%pMjA_6Hlv6f+Y+9!pL+1QnPj2lfRW5NO-^9 z^zJNrg}wg0e$Y#%&&hF_R_;Fwtx%)Eq6`BG#LC zaR>uL|0U3oa{e~m4w#!*IpUVrwVIVZa&Sozd$vOC9=N`__Ur7Ngih+-PR!dE%tEMP zXN${1j>?2?vb)Vss_b;@M>za^^1;iLeQtPxVq)#*COe&$)(|?xYEYFvUnYT0mwaFt zPF_kXx2_uNHPRgKDl9w{YQ6D=QnPf1_UHbSTRfoR-K*~{w`X>Ts9Yw)dy7ug7ev-4 zr%xcvNs)ZTk}c%Jq=DqtFFFdl6Xf(bdJ0={mQCRMui6=eYDR*X`i#wQ|3Pur9nF_C za@JfnC9(~tA9-(en#WaTID$J$JQA*X*cO5FnCjX#tO$wUh^n1Cr7pybQewW{4WpEh z2nWdD!?i`Q!bnZdj-(lU6_`WucPDZN;!EeB;(dR4J0tyE6+5g}P3A^)nOf)$nUuTCGS? zt6L80I7y-mU=Cl5bdJhmQ=9)db!jL!(*OzH2pMD1a5A1MhFCf*I~-(CN+QSr1#C6K#=Otv6IAbue=vJz?;b>O{?h04{%7c zhIE6roLKw_mA_z4Ap?jiLY^!2Frx4O3)5Ouic@`+{X)=rzgc|$NyTNP*mZL+^IAm# zuQw^H`5#j;UH|+QOaVmx*9PFdylRX<1!hVTDyn6Z{nV&bV}}kFqL1WO{5l`e#=xJe z_elcyIE`x~9%F#kBtj^G}U00fMH|p>X{l5eD+q1Rc5?gz~W|?Gb0aoF-V1@O-?&nN!OaQ}Z)TG6k|lt>Vwr%RI7x^Xba+kAu9O zXZl|65s;o4)(9FC3t%&Yp{CyFlym*>(I8_g!J3T-v!@iRgBAEEtiscUk==jpXc7vd z7M5bc#0jk9T|euw`FQj{7-;6b8z#lZ(OVSm#=YMe8@5xc`Z##>vZ4L!xXO`x8l)}t z4@%)l^48N`AM<*bX>St&i}$!(%hzhdS9Jf|wIT!%Uq}lsHQPy7FCa?(kKf88?H!*K z{5iSmsiQPa)2r0!6rv@D{UA7Ha>C8J)8S6*f10yQrvL{Rglu#}rtawi_A3(5hv>WsVdBTvc&XGDA`e>VV? z+VW2N?h$jaF&pDmS@)){yoE#dmutS`8c&@xV;ZYBv32ciaxZek_b_G{ddjd~C+9S0!0SeOMB@H9E}AzxHgUQA$yR zRwgPw*plNbNj2Q1!}nJ>(7Bz@uiisPj4CG!#nSHOZ zvPNSgd(~#V?qLIvs9atyKb1gSjQSvUCrRsU7dpb7LYU3ohK!Bskamzz{Z_=pzPQn5wv!)vL6ZlqDv@S>NdORw zL1?D#ZYlWXJjfSJ@^0@CF+tuj#UHMR5Vo{vLF|B_L9Xj>nZyKI?TDflA(qE|yVktG z&7zh1R-?bzOXjW*U8tWc{}-qAk0*MZqzP}|YO4?Gx`X71;TJ zFIBU|zbAzS54icVb-s6d7ox6O`5pERkj^^?!(2p*SdemuTh1din44EaU)+)8h~=Ns z?HB+l9z>yurQFe|<}}q~vhwnGfunn`+Y!$d_$w~*UNiAbz$2-Wc!ay^xfQOp{%F+t zr}@5qpRBNzrtNc(L9Zkp;b9ShvZ*i&H&sqkY}RV)cg=n3oTjofYChbqdG5<|lVO_f zGAzD(mil}zN<`*P{+0Hd%W9f_+D2(X~a16anhbrER2jF z$k-lEKeRW2BhkK?)~2+k z+1Gd>W%psMd1~t6*)r23s|YmJK*vVdBO!XfN79b(gPDZ}vf5`7$OxV)o|TeJLs*p7 zd`sns@_R1wvLi@IfA<_<7$?o%hO8+mQFr6W+ysxr$#Y-QDv2}rAO`Nu@U*b83I!i> zy<#yIx9>@Ro_`>5ZZFrGoh}&jlD^uSL|E>OrPpz5n)-y~#Y|JP$pMeFdB^E30h~4C z;q}@D_4$_5e_{p^)b!o{y;&uEpX7fSc~x$_iB`As=UgGIb*saVan^1#k)7Atww{Ua zhoJjM4yNJ2&3!q#!OOFy>3IFC-RCEv|7i|}nhAc0#WSUqXNIdpDR;|K=YFsVfG}T4 zpjHG_kzL!8p8@#fgBvkKBT4M>-?f>RtZ9ob+X&FB(8sr+H#~~{mKzBoR&f?OD_aP z2vxte@C<~@Fx0}o7#A`B7Z=sexRLT2R44pJ{KQ5FUIis7%`UM0RAvryn)v;_T#hpmZblj}W*FbYOEj$ZfQ;E}H;&}larH66aPAHRynaE+;SwQYG5MwY~ZQ$WM%Ek+aw z@w^3g%QD|b5?TbQaJWh%wM|`~Ot*Z||K>c7PX?H>A~0$lp6A*}rp8VfozzKbVK3?> z*1n$@{$7r!-v3R}qg*>&T*g#9fLK$vt9tpQc-dB-QbjFtdl}gu<&F5Cy`;A<N?8R1qV035BuiV8I)OE2kU|JHY@x&=@aI9OgP}e=o+f%w83#CBCIS*!XbQMnxnU zhZla@;<~f9>VbxsX^B!Q*W4VEU$)$9^;;j66iqyB3Mur;Q|mb?)Tt{tjOWR_2ADOh zH(UPanNcNCJjGIOSMi60&Jq9rh}HE-a*Z@VDSI6o*W}8~rxN*w{p#bP{b{P+&(str zKD5v=ewoIeO(EECS>CY0^trDsK13gf)k>e{W9QP#p@%MC2k}4`T8_O`XJ_@_MYY+q z!5JOXUiG>Ht_ZlSKB3%`nbw0I@!W-g=r8GG)Npff04=~Tn_lzpF0@n=&d|?5+|^X| z6$E`rsZPGqd=bn<3nI^JNK3BW`HSq2Q~Q6hhG^iv)-S|V!m90+NBzMgJG&3c2j{CJ zkL^=xu3F$dILB3T?__METDBcBf*3-}0WEH{i{>#g7DDPR>)?(x=Dhee>*<&}tH*bt z8rSiyfjny!Y?e>Y`GPOceSp~ua5lX^IN|?h z>XYxdS>^$rlD#p3{Xb<~XE>W-7fvEJL2ZiIqbSuPMu<^bs%EQd?-4bsHi=QAW{WCn z)7Z7Q#2#tIZc%$HHA-*ln@1OHL&wanoIrq8GJMHrR(Wd=h7%WEdx{(%C zgNA2gOF7@?tI?FQNK8_K@F-G$#Pd<-6Cd>F7lvOc%n8nCVq;vQwDdaL{VUKXXz;1@x zq9omJ!g~_@#8)0~L7kq6ykZ4eN5Di1kf-8Xa;(=u$JLE?t>`h0aUkPF3Ruxd&G2zH z47!%QpkfL8R~CVLnMwrm=b(Lb2s%`PWH1OoGL*-l3?pQ>?bc%SDET-%VE~jJftJ%J zk%Pii!Rs0zW84Yp;`i$`1w|kYFnHfPopGAkKyvp$jQNPxpLWz`Q1(3PWpP0RDPTJck)N z=4oWbx`t0Car^b)?<8W32FJla;dix{gEJDnZyRdiy1iPK7O+5i-^W8?`)dmc*)n+L z`^@W*6ExSX@Ownd8TEr^9n3A=SDov+dC3p^p+;8pMbgKps`KW6C#W!diHQF;WB7rW z@+bIAf9>ukVC7S{^WDMbxH#=hL*~;A$bVzLRLt$kR%*4=wDwYj|ECX>^Sb^#GDMqq zFY8FrcLqTcUu2zE&4lh1oGaKVkpeXO_4S#~%|$B#QaDf8P|D}1^22T}!DSysVDMK3 zZb4krnRr05XSw_;+w@tak`R7svikG0Es&-V7#5~5fCb$g!Q9)U!uhTKhP{}zrrv*WcmcBa;mr{di1;YbAW zC6T{!0>e=`{(#kZaRCvRlMyqA{g~|54*ADMb0-7rfU?qW1^YJc8kS2;jce&&ns(yk zJv1yAn;H%Heh_Y9_(SE z%av)nc2DI$*?or!D&O+5kLE59CelJNVtq$lO#PN`R(4dYZ}|@TaHdR%5ZpZ^p+qI5 zx;xt{^!m1MmX)ZOZP!?yr`a&*v~0yrVmYK74(iW>yuCzb9z9D(#%#8_Ef<>lC};J3 zm>&nW=Q0Fe8m5M46J8p55I-CG=C*f#l>+lVjMX(D+SxO@+1;>mesOJARihd;YZm`y zmNg)b`wf-kjmBp1#3OahI)^x*}YaazT6 zd}VL6_cr9~KJ>rrb>g7q{m>(H)2fkG1^opD3B$W4`$=ov;`u+(UisaMwOnMCr?@R= zNXxZ|{7HY`APeGkDzj{;0>FG;=6R(vMsUg6JGB*-joA%ovX*7_Qm3ef(R%aap*~+< zw79k0dO-cW<|kbY&bMdNsZq33mSnIlMi8oD&qXt~WmMUVW}<_<~klx#_X{$-u71 z1ofEj(E#-y{aVeiP)g`{r#y*#?mz_RmZb*evv6y;Bg0qlnRKLf`;o*GpTwuP@zY#N zDC|MmB*X17X+|6_v!0VVo95fe81uEv-Bwv{r5bxLfFjl0)I^=;sQ*KZR86uTH{_n(A7^ibvsxIYJBj-*I#T*0NjcPiLv zcm@vDj}lU`$I50_i%iY9-CH^7%V=7ezN2uOK`m<0N}hT-nBEWd=V61$w|WNgGK-hz z%ahF_gjM9^Z}g!9s~lu7SHrcgX9KPUQk~xn)~YBgQ{GShZsH{iF?jGHqx}ntU-ilo zoUl7Lw7ruRez0ypK9Q?dERr;9ZChkMQ>W>a@bZz}$GMySPqO-0zt$KQ0TkGkz1iEd|E6YnKMD(9oxXL^a0$p2w zyeHdk1i5}unHIxU#Lc!hf*K<-Qyd+L@?}U)0s^mP&1(7;<7;qE_B%h4xJ&l80zQw; ztr6X15H$Ur!DfDr;B~ktiy%PA!aFv#l|b1|7Y6T2gLR@n7oREG2X^s~zYFs&5~Ji@ z6%lf(gzz^IKr{U^|Ld)Z`-A985g^RC+eAVTQhKN8)Cy_i_Ow3r(VzN^nDXq! zle!bzl{d`|#R$yguT-vE4BA z`p{4S@l`ZEZRJ;#Qbt-$Wjp~;+ko*=o@2ei<~H;MG?A(OThK4*Ty}eTnTRce6k%s5 z2i#3`n9Uw>DQk}0uqKthhmfAg zs4VpMLRkwEFcCl3hc3X1*DV#VmD}w0-rn^8TVN7XqBL0bt(BYKx)Ww^wVq!(cY`V; z>Yq5$C_hY~F$!~!4wVq282dz`XqA#x*=w#Oih3WRdkC#lD$OlZdmt3F_S&A%)Iwqr znV>9GLp17Nl#)6_frnbgx3Y3g);}NgKP<8EQASVtOKdJFeAJAm4B1Z6&6G~@Op4L- znP9EXK}~{B6spf?zq#r)cS6Psgr-(LOT+i=wFAqh;i0qV;>{|#t<{#lKw-ZQk^hDg zHv&z?ve8q4?jlMRt5{CkmG)e8`x-UbVGh#yBZyYQrd~oT0081&e|}7G$o{^Bj!IQF zkB-dw=Fa;r0|>;3B)eH_A&s4_35E3Fh}Rc-*q+2oQZO^c81TgK$}RW(@bXry8wCgV zW@tgofkao-iEp8;X6F$S5;ew@i(f(WS#(Y1d((SU<%=0!W?yef?gp2$O8->G7x$** zUwRIayo1Sp$y*)*EaIA-^>?0G+I9T1q7T0P;;)(sJUsoyolS#60rK>OJjk(fJBrw| z%wpQO@2B$>g2Rmb3=?Ffl@7Rsiky#cJmjJJSClkdFkbpRB8_HETWFT!;fI4@w^qkD zO2QC67@>=bca0YY=d^*SuMg-6IPx(J)* z>_YvM$o6;Sdjk|dL*1%r%fQ`>oaxD_ zTtosI4^ZO?^=xQg)(6D((8wHo&6@gsaYPX4juU|_;AE20v|kPOJsI_86g6@7C`|XR zyDOIb9L?->Evq$(hi79V#!^dBh~sNU+>P*3^zcM;|DCo;3m z1JYB0t$v*5HwKVCAL{jakIrn$I=Fq`M0Kmfk_!Ah{m& zAm{kOOCl}?<06$d@(D&bR7JV-QN%{uc0dkGcpGT)N$7c5;jHGH3a) ztmdt3O{Pm74E(}OxZF$B{F;Hw*Q-29Zub$%?I`jeE2Zk+Ne>LS7RvU3o6~fyYg~vg zFIAJ?W=*MRnIMB2KR3*SJX^|KflYTmT0q_k#$Qce3AB@X$i(-UzAacQMV+bSRm3(& zM`QhcYd$2bsd-WWHtvU+4scMM@ZII>1zAh5P(>i`rR* zasaFIsJd_ne>>Bw72U~;uBVv`axzyj-%xhOuf??{j!Kq)mh2x@56wlp*Z?J2s7ShU z$c3Q?2X;ux^JbD3n)Q>#K_2<}ficHW{m|uA4aYW_=eyUuyJG?+PlfJwq&_@Q_?bwM zuexTmQcCFuUQl0L4>Q z1vc)~m|#!*2CIl~Zd36{SbukNxINkI+%e-s+-0IYSdE4$2P!&ORQAUg^Kd|M`;O+1&HlYQ?S?T_MIg5VB{B2$ zA)fK}4RKX+{KtCb^1GddZ*+E@2twib~c;AmD}I zxcV?gkNq;T)b-DtT!-dg>fv}#WbV(2&)-EUky<$nwFRTXJF9XW`fk<1VSjLceow8~ z5VX*aT@OPUH?Ww=jMrSO+ds=X2_jw#Z>-AH3BbjkSB@lM?uWl}RA{kC$Ud^w)Ulg_ ztYGqP@Zm;{UsC^IGKTpEU;GjS(mi&XX8>YHl>)VdM05L6vBPz)zdqTKSBlL#@MA}J zy~=52*tt6Ab5Jy@^L8mgZL>e-%eA$&sr)G}ciR2o6(MNEg+O6+w6fkCp_Fm_X~)N} h7h!sT&cRCJH}#Q%i`mUI3qHW*b4OiAtwO~z^dErNr= Date: Fri, 3 Apr 2015 21:33:33 -0400 Subject: [PATCH 2/3] Refactors --- code/_onclick/hud/screen_objects.dm | 45 +++------------------------ code/modules/projectiles/targeting.dm | 28 ++++++++--------- 2 files changed, 18 insertions(+), 55 deletions(-) diff --git a/code/_onclick/hud/screen_objects.dm b/code/_onclick/hud/screen_objects.dm index 377473093d1..734dd33cbec 100644 --- a/code/_onclick/hud/screen_objects.dm +++ b/code/_onclick/hud/screen_objects.dm @@ -432,7 +432,7 @@ if(istype(usr, /mob/living/silicon/robot)) usr:toggle_module(3) - if("Allow Walking") + if("Allow Walking" || "Disallow Walking") if(gun_click_time > world.time - 30) //give them 3 seconds between mode changes. return if(!istype(usr.get_active_hand(),/obj/item/weapon/gun)) @@ -441,16 +441,7 @@ usr.client.AllowTargetMove() gun_click_time = world.time - if("Disallow Walking") - if(gun_click_time > world.time - 30) //give them 3 seconds between mode changes. - return - if(!istype(usr.get_active_hand(),/obj/item/weapon/gun)) - usr << "You need your gun in your active hand to do that!" - return - usr.client.AllowTargetMove() - gun_click_time = world.time - - if("Allow Running") + if("Allow Running" || "Disallow Running") if(gun_click_time > world.time - 30) //give them 3 seconds between mode changes. return if(!istype(usr.get_active_hand(),/obj/item/weapon/gun)) @@ -459,26 +450,7 @@ usr.client.AllowTargetRun() gun_click_time = world.time - if("Disallow Running") - if(gun_click_time > world.time - 30) //give them 3 seconds between mode changes. - return - if(!istype(usr.get_active_hand(),/obj/item/weapon/gun)) - usr << "You need your gun in your active hand to do that!" - return - usr.client.AllowTargetRun() - gun_click_time = world.time - - if("Allow Item Use") - if(gun_click_time > world.time - 30) //give them 3 seconds between mode changes. - return - if(!istype(usr.get_active_hand(),/obj/item/weapon/gun)) - usr << "You need your gun in your active hand to do that!" - return - usr.client.AllowTargetClick() - gun_click_time = world.time - - - if("Disallow Item Use") + if("Allow Item Use" || "Disallow Item Use") if(gun_click_time > world.time - 30) //give them 3 seconds between mode changes. return if(!istype(usr.get_active_hand(),/obj/item/weapon/gun)) @@ -490,16 +462,7 @@ if("Toggle Gun Mode") usr.client.ToggleGunMode() - if("Allow Radio Use") - if(gun_click_time > world.time - 30) //give them 3 seconds between mode changes. - return - if(!istype(usr.get_active_hand(),/obj/item/weapon/gun)) - usr << "You need your gun in your active hand to do that!" - return - usr.client.AllowTargetRadio() - gun_click_time = world.time - - if("Disallow Radio Use") + if("Allow Radio Use" || "Disallow Radio Use") if(gun_click_time > world.time - 30) //give them 3 seconds between mode changes. return if(!istype(usr.get_active_hand(),/obj/item/weapon/gun)) diff --git a/code/modules/projectiles/targeting.dm b/code/modules/projectiles/targeting.dm index d8bcde56a92..1136f832275 100644 --- a/code/modules/projectiles/targeting.dm +++ b/code/modules/projectiles/targeting.dm @@ -14,7 +14,7 @@ set category = "Object" if(aim_targets) stop_aim() - usr.visible_message("\blue \The [usr] lowers \the [src]...") + usr.visible_message(" \The [usr] lowers \the [src]...") //Clicking gun will still lower aim for guns that don't overwrite this /obj/item/weapon/gun/attack_self() @@ -70,9 +70,9 @@ if(L) L.NotTargeted(src) del(aim_targets) - usr.visible_message("\red [usr] turns \the [src] on [M]!") + usr.visible_message("[usr] turns \the [src] on [M]!") else - usr.visible_message("\red [usr] aims \a [src] at [M]!") + usr.visible_message("[usr] aims \a [src] at [M]!") M.Targeted(src) //HE MOVED, SHOOT HIM! @@ -86,7 +86,7 @@ //reflex firing is disabled when help intent is set if (M.a_intent == I_HELP) - M << "\red You refrain from firing your [src] as your intent is set to help." + M << "You refrain from firing your [src] as your intent is set to help." return M.last_move_intent = world.time @@ -95,7 +95,7 @@ if(firing_check == 1) Fire(T,usr, reflex = 1) else if(!told_cant_shoot) - M << "\red They can't be hit from here!" + M << "They can't be hit from here!" told_cant_shoot = 1 spawn(30) told_cant_shoot = 0 @@ -172,10 +172,10 @@ if(!targeted_by) targeted_by = list() targeted_by += I I.lock_time = world.time + 20 //Target has 2 second to realize they're targeted and stop (or target the opponent). - src << "((\red Your character is being targeted. They have 2 seconds to stop any click or move actions. \black While targeted, they may \ + src << "((Your character is being targeted. They have 2 seconds to stop any click or move actions. While targeted, they may \ drag and drop items in or into the map, speak, and click on interface buttons. Clicking on the map objects (floors and walls are fine), their items \ - (other than a weapon to de-target), or moving will result in being fired upon. \red The aggressor may also fire manually, \ - so try not to get on their bad side.\black ))" + (other than a weapon to de-target), moving, or talking into a radio will result in being fired upon. The aggressor may also fire manually, \ + so try not to get on their bad side.))" if(targeted_by.len == 1) spawn(0) @@ -196,7 +196,7 @@ I.lower_aim() return if(m_intent == "run" && T.client.target_can_move == 1 && T.client.target_can_run == 0) - src << "\red Your move intent is now set to walk, as your targeter permits it." //Self explanitory. + src << "Your move intent is now set to walk, as your targeter permits it." //Self explanitory. set_m_intent("walk") //Processing the aiming. Should be probably in separate object with process() but lasy. @@ -323,10 +323,10 @@ if(target_can_move) M << "Your character may now walk at the discretion of their targeter." if(!target_can_run) - M << "\red Your move intent is now set to walk, as your targeter permits it." + M << "Your move intent is now set to walk, as your targeter permits it." M.set_m_intent("walk") else - M << "\red Your character will now be shot if they move." + M << "Your character will now be shot if they move." /mob/living/proc/set_m_intent(var/intent) if (intent != "walk" && intent != "run") @@ -359,7 +359,7 @@ client/verb/AllowTargetRun() if(target_can_run) M << "Your character may now run at the discretion of their targeter." else - M << "\red Your character will now be shot if they run." + M << "Your character will now be shot if they run." /client/verb/AllowTargetClick() set hidden=1 @@ -383,7 +383,7 @@ client/verb/AllowTargetRun() if(target_can_click) M << "Your character may now use items at the discretion of their targeter." else - M << "\red Your character will now be shot if they use items." + M << "Your character will now be shot if they use items." /client/verb/AllowTargetRadio() set hidden=1 @@ -406,4 +406,4 @@ client/verb/AllowTargetRun() if(target_can_radio) M << "Your character may now use the radio at the discretion of their targeter." else - M << "\red Your character will now be shot if they use the radio." \ No newline at end of file + M << "Your character will now be shot if they use the radio." \ No newline at end of file From 6e710ad426c9dac89a983d075b71617740ddf386 Mon Sep 17 00:00:00 2001 From: Mustafa Kalash Date: Fri, 3 Apr 2015 22:10:23 -0400 Subject: [PATCH 3/3] Fixes switch operators. --- code/_onclick/hud/screen_objects.dm | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/code/_onclick/hud/screen_objects.dm b/code/_onclick/hud/screen_objects.dm index 734dd33cbec..767567b4b03 100644 --- a/code/_onclick/hud/screen_objects.dm +++ b/code/_onclick/hud/screen_objects.dm @@ -432,7 +432,7 @@ if(istype(usr, /mob/living/silicon/robot)) usr:toggle_module(3) - if("Allow Walking" || "Disallow Walking") + if("Allow Walking", "Disallow Walking") if(gun_click_time > world.time - 30) //give them 3 seconds between mode changes. return if(!istype(usr.get_active_hand(),/obj/item/weapon/gun)) @@ -441,7 +441,7 @@ usr.client.AllowTargetMove() gun_click_time = world.time - if("Allow Running" || "Disallow Running") + if("Allow Running", "Disallow Running") if(gun_click_time > world.time - 30) //give them 3 seconds between mode changes. return if(!istype(usr.get_active_hand(),/obj/item/weapon/gun)) @@ -450,7 +450,7 @@ usr.client.AllowTargetRun() gun_click_time = world.time - if("Allow Item Use" || "Disallow Item Use") + if("Allow Item Use", "Disallow Item Use") if(gun_click_time > world.time - 30) //give them 3 seconds between mode changes. return if(!istype(usr.get_active_hand(),/obj/item/weapon/gun)) @@ -462,7 +462,7 @@ if("Toggle Gun Mode") usr.client.ToggleGunMode() - if("Allow Radio Use" || "Disallow Radio Use") + if("Allow Radio Use", "Disallow Radio Use") if(gun_click_time > world.time - 30) //give them 3 seconds between mode changes. return if(!istype(usr.get_active_hand(),/obj/item/weapon/gun))