From 38bae6325160bbd36141cc8ae2b964bea4018b34 Mon Sep 17 00:00:00 2001 From: xxalpha Date: Fri, 6 Mar 2015 18:52:04 +0000 Subject: [PATCH] Added cybernetic implants and surgery. --- code/datums/hud.dm | 2 + code/modules/mob/mob_defines.dm | 3 +- .../modules/surgery/eye_cybernetic_implant.dm | 31 +++++++++++ .../surgery/organs/cybernetic_implants.dm | 51 ++++++++++++++++++ icons/obj/surgery.dmi | Bin 13681 -> 11902 bytes tgstation.dme | 2 + 6 files changed, 88 insertions(+), 1 deletion(-) create mode 100644 code/modules/surgery/eye_cybernetic_implant.dm create mode 100644 code/modules/surgery/organs/cybernetic_implants.dm diff --git a/code/datums/hud.dm b/code/datums/hud.dm index 39d63400ddb..14e79c51f35 100644 --- a/code/datums/hud.dm +++ b/code/datums/hud.dm @@ -20,6 +20,8 @@ var/datum/atom_hud/huds = list( \ var/list/hud_icons = list() //these will be the indexes for the atom's hud_list /datum/atom_hud/proc/remove_hud_from(var/mob/M) + if(locate(src,M.permanent_huds)) + return for(var/atom/A in hudatoms) remove_from_single_hud(M, A) hudusers -= M diff --git a/code/modules/mob/mob_defines.dm b/code/modules/mob/mob_defines.dm index 6a4aa3f319f..ab645c61223 100644 --- a/code/modules/mob/mob_defines.dm +++ b/code/modules/mob/mob_defines.dm @@ -161,4 +161,5 @@ var/atom/movable/remote_control //Calls relaymove() to whatever it is var/turf/listed_turf = null //the current turf being examined in the stat panel - var/last_movement = 0 // Last world.time the mob actually moved of its own accord. \ No newline at end of file + var/last_movement = 0 // Last world.time the mob actually moved of its own accord. + var/permanent_huds = new /list() \ No newline at end of file diff --git a/code/modules/surgery/eye_cybernetic_implant.dm b/code/modules/surgery/eye_cybernetic_implant.dm new file mode 100644 index 00000000000..31f5e74c552 --- /dev/null +++ b/code/modules/surgery/eye_cybernetic_implant.dm @@ -0,0 +1,31 @@ +/datum/surgery/eye_cybernetic_implant + name = "eye cybernetic implant" + steps = list(/datum/surgery_step/incise, /datum/surgery_step/clamp_bleeders, /datum/surgery_step/retract_skin, /datum/surgery_step/cybernetic_implant, /datum/surgery_step/fix_eyes, /datum/surgery_step/close) + location = "eyes" + +/datum/surgery_step/cybernetic_implant + accept_any_item = 1 + time = 32 + +/datum/surgery_step/cybernetic_implant/preop(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) + if(istype(tool,/obj/item/organ/cybernetic_implant)) + user.visible_message("[user] begins to implant [target] with [tool].") + +/datum/surgery_step/cybernetic_implant/success(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) + if(tool) + if(!istype(tool, /obj/item/organ/cybernetic_implant/eyes)) + user.visible_message("[user] can't seem to fit [tool] in [target]'s [target_zone].") + return 0 + else if(locate(/obj/item/organ/cybernetic_implant/eyes,target.internal_organs)) + user.visible_message("[user] can't seem to add any more implants into [target].") + return 0 + else + user.visible_message("[user] inserts [tool] into [target]'s [target_zone]!") + user.drop_item() + target.internal_organs += tool + tool.loc = target + + var/obj/item/organ/cybernetic_implant/implant = tool + implant.owner = target + implant.function() + return 1 \ No newline at end of file diff --git a/code/modules/surgery/organs/cybernetic_implants.dm b/code/modules/surgery/organs/cybernetic_implants.dm new file mode 100644 index 00000000000..eee16eaac1e --- /dev/null +++ b/code/modules/surgery/organs/cybernetic_implants.dm @@ -0,0 +1,51 @@ +/obj/item/organ/cybernetic_implant + name = "cybernetic implant" + desc = "a state-of-the-art implant that improves a baseline's functionality" + var/mob/owner = null + +/obj/item/organ/cybernetic_implant/proc/function() + return + +/obj/item/organ/cybernetic_implant/eyes + name = "cybernetic eyes" + desc = "artificial photoreceptors with specialized functionality" + icon_state = "hudeye" + var/eye_color = "fff" + +/obj/item/organ/cybernetic_implant/eyes/proc/update_eye_color() + if(istype(owner,/mob/living/carbon/human)) + var/mob/living/carbon/human/HMN = owner + HMN.eye_color = eye_color + HMN.regenerate_icons() + +/obj/item/organ/cybernetic_implant/eyes/medical_hud + name = "medical hud implant" + desc = "These cybernetic eyes will display a permanent medical HUD over everything you see. Wiggle eyes to control." + icon_state = "hudeye" + eye_color = "0ff" + +/obj/item/organ/cybernetic_implant/eyes/medical_hud/function() + if(!owner) + return + + var/datum/atom_hud/H = huds[DATA_HUD_MEDICAL_ADVANCED] + H.add_hud_to(owner) + owner.permanent_huds |= H + + update_eye_color() + +/obj/item/organ/cybernetic_implant/eyes/security_hud + name = "security hud implant" + desc = "These cybernetic eyes will display a permanent security HUD over everything you see. Wiggle eyes to control." + icon_state = "hudeye" + eye_color = "b00" + +/obj/item/organ/cybernetic_implant/eyes/security_hud/function() + if(!owner) + return + + var/datum/atom_hud/H = huds[DATA_HUD_SECURITY_ADVANCED] + H.add_hud_to(owner) + owner.permanent_huds |= H + + update_eye_color() \ No newline at end of file diff --git a/icons/obj/surgery.dmi b/icons/obj/surgery.dmi index 28390abff25c460ed6fd3a953c3d46ccdbd18091..ac54bf1759a06717efd82da9f162e47f5f532d26 100644 GIT binary patch literal 11902 zcmaKSWmFtdv+dv>90CMLaQ6`0odkDxcMl#yAb9ZL?(Xgu+}+(7bZ~ghch_6b?s`9l zS#(d=sj5@8Yge5PQIL~FLncH9fk0@|QesNL_r}`?5gzzU$Y`|*0zrN9RMBt|Gj%q0 zvUG5-r3KFn15vBr}Nay98!XJX7$4iN{1bPuV_ zIR_ECQx?*1lyxWrTdRNYbpuQYnegwqjp#O#B$i; z$AYu4>k|V48&Ybo>LJ)JAvaC;@1x7wgCBR4CY;T6LO0@BIIl}ivK(%m)*W--wOhL1WAhtt9YcIrg`b8%&s+NLonFg;PG?b|C-3&8NzH7Tl(#G0LY+W$B>fFe z1`bn79Ia33A^=~(1Vh5W?D^$Agi9ywM-$7orvRxy&q#vpgV+ zNcpE~WotAxl$#q}KZ(R7Bob&svk^b_PUXq+Z*Of~*Do~m{>GVrE0nG_&qx!x-C(kS zhm<<`=>8S(@jN_G%$aEj&8EpCjOZs95YU@(UB@C<5+X9JFv_IU{}y8j525(14w|ZOWbu~&7H@su+Od!Yk(v&4vsiC+hypuQr(vN^(Ng{^#m6}W1G@tL28El)!g^_1Z5L%mL$r{Hx*ef zgcGn|1O64wnQWZp-mzGrf=-qci1&|VJn|NFp{M%xL6cU5lJd0fyH{#+$6^Iz>1F%4 zTKIcbk&uW8+`+-YyZif#iH)w(^-AH9zpOvaMw3H!c1*-00@%$)CQv^00vo@Y{hf@B zZOWxeui2%@=%t;fc-ii7Di4p?uK{C1r#(k9a#DqdjZ0zBDMTX>}Pj)tq3~fJI(J&SP0j(Q& z&DK-UVj|NCTw*+tDQx7`A>w^zDczMc%%PcTrezlr$i$pkvr|%RL4?QIiSzsxpls|> z#^5DIuS|)WJlRA~2_R4@sHvS-#-k>4B&vLS;O8pz1>gUcg_q#J2y|w*7Twy~l9H37 z0=E47)gC53zWea_NXnO}>#|p}yAjhVBF>!36L#eSIn()a-K})5v(1qtc9q+sYUnW_ zF%VHt0`B=U$af#tFGP`0+e!ULu785OZ%*A}y$uav5K)K>u9g(*_NG&TZLn%-AzZAp zPNc2w>+cV}A>vd}Lm~WP)Qbpb(1R`**Md>>?Y#lR*b=3&8yPou(@II+-Agn&aZ2=q zq`*@3xZP4M5(}O<3=9lZ;n6H5T&c$5WnzaMY&iAS$~^v(ZhO;J&SJAAdPl~Rv6dal zeRntfc^|&@Tkg7*5W8|5wQZIoD|U^KM|F3L#CrJp`hF1fed^4WjwNxBkvJBTkwFG6 zE-vPqVq#+M&fOeN4^Yg1BfN5TLz;L$GS_5^=>oAv=>y_2MgFxWxv~-}Uj|=QzzgqU zWcS!nf7t2py3wAZM9m(@@BUcq<>E;2>o-{3Tg7>qEcdlgHM5R-1-{!AF=gMA=QjGS z{e4Lro6_^Es~p)xrn|?-*gtHrC^Do-9oU*Klt#@kZovcEi z@+|=n6>@1j;*XHi!|8%3-6=P2C>WTQ8Qy!9nd~erMWZx zzlKLpv5AQTz^*+q>a}|4>*?k^u5BGv7y2LLyWmg3xihKZ0%^ zyif&WZx5CkMnEGpnM5~a3ZtvNuRbyv8XU~>d4%K_;(z#{vkjTsQi4u)zjw;@Hi)BV ze>SMQEc&}1^(~o8NfE5d&K|Y=RX}nkP)%HO9A7+Vk_LbxG9clX*XA@3FK$?5+9J-@cxN1A~I5 zawO3K`%I?`kCmX|;oXX6#`Y2Kha@}t)qLhiZgW&sd%3Vw1q1~JU3gYMXC^i4ETuZB5JLd=e8ejj_IWfLs_lo7}mVNZG_ViVPWhc1ydFJ9ZnT#yzcOsqQUR{ zS!KWkyAe~Je{GE1SYJ$!89s4w{XJW4sWBbK+Z#zTR=(fBgD$q!fb>pbtCX!cNbqLl zO`?B1j{4wbUZ4YeGBdY+cBm>AkDh5ho<2IXgxL2RlN_fm)=iZxL0nX{@3C96#te$( zBgYJdp_mw~Du2ZRkU+3@5}mi}ei>E916bJDJ%Hv?Qc{`j;I*f_?I>6{xahRB(HlH< zDMnU3uIU=r+>Yn^zIE4=g{oSc#TX=Ps!FR_x-da=TC^;)$#gF}GUji-G3e^P`lr?l z{*SIr+*+vcKixNPiigi}xo-x*E%W8ty#HcsM~NC+T){&HubQ^gWV))}_oJMXCF+RM z(q2^*55zC0)$j3GC$ezK#=--R`1M^?a2x>_c(T+lsn_`^Dq`|`-WctdbGe-^^_A~jX8{?cBYFz1g=DXNt%+wUrk2jq2{Vuq`X3EooeZ{xtV z=dKJ>$E$C^^W*LJ#Ds+G`D08G0}Oan&mS1@ffxs9@JkKg&Kqb(5)zX4sPONIc{mD> zL>2jqy&(c!s`u@8Mrh9atu|KsCCE2h8y5Ge5lj6AZWBz_x%jxtFI(H&XoL|Gm?AR^ z?VNTiT%dQPT%Gl0+KMtV!WF?WSTe1A-!uLEAmDZR;RMDD2qeF@HtuSFJT@)Owz!SM zUO?gE`VzXhJg^EjSgi96J-XrF;e%fF&hff49S)6{;Na%Jwef=HDqhQ1jsdIi)JydL z3Fx1-%_!pCbE)N^UJwr1hm z<$^QESy>YQCBg3XU!@`Fj?-Sw#)e^d_(7Wx6~4N<+G4gCH$6T5J!(I)rZsrDbaBlP zQ^8i>({;`owA-w(D#PZ53ug{MTj9OaOeLAWdAg_A{bh=+$nB{cfWL9E;5Q=BaHgBY zyUulDes+ukWtZ|#9kcF7dp?Z^JsyKb=2;j?n)$vO9rVi>yZVtYIlD`#O)$baTzo!J1PFQiI+sW9?xNZ_+Zn3SU59JZOkj%dc;C{ z_i$2!%}|V4N4+QRY_1QR`6TrK6e!RfuIe#c?f?nE_dxLA-M{ssm=U!nz*=xZ0)*ZC*AzG4R6{K|d)f**9#cJDXk+al8lIdHt_ zeD1=te?9JUX^3HQo^0u^F|=$lJta5iK6&)Hoi*CrRP|jvU}Yzcc{wy+!x`^bN%*2Q zZnjkV1+;MDI%|lvMEzxXNnJg+Sx`Zn!Wn`gOCd#?7vT9#La|4DjbzB=gC zYPso%@+*vxrL@5DJR=??PJ!{o7ScR)zO~nyesNI~7S^Rb$#>a}>adk?Rl23#0kWd$RI#I^k!(MG zJxb8_EQs9skmZNF2PXbiHeFHYukN=n_QN>1=~nBLE&fXl)AvHW&zDKcvEJ4K59m?h z#C=_>(p2~P{G7enq*Cz}JXv&3M>9oM^L6&?YuA3NB7WDClHG(zD7EukPEUxQKYzHT zH9NfQAeHO23=s>s|D{mb<-K11#H2@8?=p{<)ut!(FiHL%)e{<;$MI}Mx?HDCq=q*+ zUfM&sT_2rfcWIX_C0`#m5^r4Za9&GjJe5z2pEK@BA2JCMIV%%XKw(Pf`AKKchm7Z3 z?Hp0F`gi!vfnmEPQs10rgF=-$?zY0zqzg6cbwd11i)k2Vow>GIpoM{Qy>zVAT!+4; z1c3uF?dVopwyWk#c9bw^a*4(z#5u7%vw(j665p||m@bjTcVg0q-S}GXGv#h>#b|JW zhz7TqXmQp2xXQ+IY~ ziT(7dhM4+l{uR0ppSpKxGlxNRwH@0gXx71gshgKc-ezr(AKDzxTmf1r3$4QBJaDy= z!jexgW-SU{^i^R?%e?98L!HcGW;K+x@LyVu;xDJ;q_ai6>|?zn zP3EjgX;9WYHEUb<-^F@k9T(R5Giujo<-NdraORSy_omj5Gw{3O9;vC6db3st6(L!R zmuZyN;T8w(flp%;J{MvocetB8l*^UDc~cB>{c;e^kf^nDY;ep&s)q*PLdbku=`!9+vwODkn{dnS=FtqjyE6TkAMIn7LRj-SpS4d z>v^UGW_>2pSQQau4Y=2b`3^B(-2H*DH-@ zlPMMzz^_F&{((gf1`80zzU7suE*Rela0Re`J3wdL3P$J z@_zCkqhH&;rS&VA4!z}K-35afMg^>*120Jw$co-pCNo>Xsj|6uHyQ92??@A zuS^^tK8(K(_|UKQXip>f6Lr&QSFt!eEHiUmcMs#Bz-;LV^gSqr{`!#_wMK6B#NH4$ zVFk5n>&qF^oBG#Lxi>H&P5Qeb9WC=$N^^5EMByP6WzDNq9#C@NE!EZWXFx)tJCzax zD#ttUXviIycJ7##HnvKv!dzr{?6ZtTo&Oo9V2YSh^q((l`L~k8=P%04z+&XQ#^)q6 zDE?W#wzPAJ4zzZpeck@InR+W2@JxND?9W9Rv`mbw62pXrs_bG{QGOev_~{NyJ&I{* z?YX`V;259okFZHCQJWVE)&YFlmjgS0crvh&Uc*J8yb<_?a-jGRU#`V^e?c$Qh8X=! zAHI0R^oL%VNK`VKa309S5c<>cs1EDE{b{kbLxOloEk&*D42t(705 zdeWS`JLyn%C`V1L&@WP^;jor*>smGgdG!}Gn>#6a(+&g0eoWmhx>JS@rEki$VcO-^ zY6o>+x6m1L(auZE5Coqp=a%iPTI2os5ox&ls{vp&ktct|147PpqJyaZ5Sk&2PrKr) zLF?n~PXFMMIa&=Jbh_`}w<^ePJ?yUzbknPxG~nOOf6`dlh9KD7@g_Opr>5T@J*OXD z4Nu}1@FWb{85g~5lclQcL6GnMa8aXp^3S(vTD#)vS^?@EBp?fH^Z@8->Zly?9*GqU zPrDOo(M%BZYC6ZZa_I0HJ@N_-W0uDIe~W4T#D@IVUx$y#3V8&V%$T=VEc|;YG?s4= z)-3o_B46E|eK{quNzTac4#}wH&$fpCGUh_$@`jZwGHD5@?rJU$9UyUCi-!Z@DP%9) zpF&f=`6&?2_}65RfHqDF5Im+>e!u6HT6p=16YcuMkVmXl&3_LcM8u5PJQ+ ztS@m6!nBk z!<@gAPgU1l3_=CV)NtoCoVH?|?)8P#_H=ef(Se;4 zywAgs_oW0mLDKWjFI`KfKeV|0s#f<3!TL!ut|#nqb0p(fMB-2Xh^`3aB_%hpt|e`H zTeFf8i-V~jPaiygA3Tg+TeE@<%S5F*#`5---6B!{5n^Hbc|pc^ z6f{Z=P_`vphxuW6yGu4Ac5vL)&85YZY)$1^)@qk+*Wm~R|zc)y53;OYYW{dJ*F=oibTzz*4@ASAtS z#L2;L$Scd3zGDK>On%^?eAdE)>*hk=Z0hevsVW0M`$qm{?hn4*_nsMDZ|R%K=%p-k zG+PS$r9Q|!dtq|NqSo(&E+qW|${%YEK3(shgj`A2jmf{&l|n~$P%?x=?mW5KzQgj_ zCn9As*Brl`lqV88|Fw(e#9n-!;ej8hh+ztFD)KMAt=MkZj-MQw+*kFw0=6sda!IsHb5&sDA|CGExe@vV<%piXc@ zGIe%z&L;}af-NLV`3n^#DrW2)-ZlBT69in)>A~z)G0j$S)*ooauMfuVm&42*=dM$l%WV64=YG%Dv{Y6rcGk1}*&2ac9HyJ(gF5pc(thlMS&xfC9Fof6Szr+i$7 z(hX!34Gx8CNd#qn(}oe!nh=5eNI|Z}agHvWk!Gev<%kA6EhZ&VdybX_5;BB*x?Z#d z0e8E43UJrj%O>;7qOqDWoP^3zqVZ}Kkfg)#K<%HfJ3F3~6J3{*GlXf2{Qe;xWCxmv zsedP>$;q&G)JC$-&({OgpT3YAl zgYVO-o)E6>65(EXip69-+LP#nCG*DV^3qsS3|Hub=hLc|(2b1RUmryO=h5`)gFWqx zw4khw7~LzXD#3Dxx7)bZUcYnU7*%E@>_U!}f%W>(E~2BOXA^!UGU-}PCbF*w=Ve4o ztq=h85^?Ui{qg+#d_zW$B-H47|75Y|vu{1w+S=NI3lAAN`L7%bn+;MCz=M_7bcK+z zxJHDV`@1iJDVIK%gVZKwX4TI7a?|idMMe2H@NMbr`(u-}mdb=2EONe$Ubk;U>HlZ+ zJQhjJyU=QhJ?xn(!C?slPwe-w1M9x_om#zI$MGLN?D@GR9NtT&PlXTpwGj4edbNID ziUMGTr1-s>_cdlPI;oky5|$t}g@T5L#-S)TH#ZIr&fm4$WAjuFK$|g;%fSSc|6G|i zFv<`9)B$38mD}2k&E$f3t6A4DFiwvX*AUh%X>C2s+-|R9*bUuoM+qvasE7f?TLckD zd^1ts7iy#P2h4|u8+Bx42&Fgk=fYgtIhUWLk z$k*zcnx?faG8SA%B+l@b{!xXDS=pwGteX*e2Y@^u!x%Wp@aR0#_o#>6(r{z zDFlP&fs#NB4$CRnpIxBN{sEVK;UUk^bk|jVjf~;cj1+5wpUE2$aW{ONWE!jL)^BV^rotIJE1wq3n@< z+)$)G*NUKbcCR7B$Sd<@M7GQIl>GdwwGkCvLJI5cC-m6prPe_ctBr=U<{zXVs*FPi zt`En?f@C)$d$Lj;pW^k}JmX6Op)~5Oa1Bbo60n&dqTn$U`XYpO$56`ZKqM12g6Z^B zadCN0;bhnvnrj0iB|@U2DrQg(BkA;g!Zol4$VfvBy}rUY*-lQ2Z?*pm7Fi5lwi0X2 zb$g${fa!0^x4Pnr&3LxJP(*OAKsCtN*3{L!#L)h?P3|DGoh!f2fo4C)@(_<>148=BDTGzEl5d`WS1h7)-`&fkpYiso-_( zFZ;|rS39i5k{YuZ%)Hypc$-mUn6WL--6ghU|B|_}ZB=km#E`>Y=F~}YJOfm9CwHD) z%0=&ToMDl+H3vN&o_ON#leh2sD|%USehXv}Q|*2q&cLFoB2~ME`;5ywy<#tv&s){x zg^6y>TZeZ2dk(x%f%^6?K-WUpRUYT^A}=K=*kgZBk?b*``7_U` zN%X}Lo5TlAiC{;{)~6LHGStz99mfdPmiBo3Ay5AgXq$UadC$jp?fau%-P%Ly=+S5w zW`V)MEvlc}+@EA9&1J3i+M}f>_84gO`NfbeB+RVnY`wi#WV%a}*y9mJ*_nJ^crb&^ z@^^)ypzLn=kJ+1uzJx--!2e!}AfkWXQ|e?}y1V;*1qYYPOe0i~bfQLG0LV3657g9o zcye_~9wejrC}d({Iw*AjidpjzrC`(_Yw>$wmmW@3*J6fa*!C9wG1WhSkY>gf^&8dP zd|)qp@uqC*sOg@MjO|~C)34G}hKA;UGwRJJt0+QtMn>_+dH$w_nCF<$!XhF8+7bxh zyZ9ka%HO#;l1PY%4#QxLbq^0sX1o(U5kJM78#!bRiK)q)1CH2LH31eiw(kQK6s6i< z%*}V}je0tzNLC-L;<03)egMm0&Xo}XIyAJrDkGtz<1fd31Wa>i&+N2iX1j@2^h$v4 zx6r_({fL2qk-6fypJt;R(0F}+TI3afo7{}8j{bJOnHr$oqT!H%&HMTkc=P< z1VgiYm*&V(ZVAwkx*MxH`5lVY9)>sg&+wB~(dK5FaaY6V%}r;q?x?HMhv%7#a3Dti zDAWrAPG@pOouLK}Fo%&mO70Iu*h)z)cntc8zdqW~pg&x1B)JpiOuOvf#1BY)Hy{M{ zL~&4c!GG@{M$~B4sMT;p$Vg9??~nQQ^qe8j(zMLXP`%X%6y31FRY*iXiK%9am+|X3flY|?2olhzc5;4#aw!$ zk__com>JK)LVt(~?qzm*5t5XLr;{qmYw3-UGPqz^`nh*%5)ErzLtLWKc3(rtL zGB#5yWf)#rr69g#Yv!nCI9E05`r#VGTJ`$r*`TgOCxGY4>5@6$w2eJMDge-n|ECBm zrKL;80z5+Vx}p7Pt(kkNkmkk57yAthhScGJ^i*^_m}?I1M{(`#^Ac@6WGN54X^Ud@ zb5gH18>0|8{0VjeYo9HNKJ!VIQR^Nr# z0GwoNdeqmY*#UQ5JWS)d+xLvWYN1wMwOeg`bb!}4FB@`x5vhL|W1GtK$-rU0yxZHC z$9#X^jgpT~$0R?$xXqFUzv?SAoZTFa--IbvnUCj27N6B@?81yuq43kcUjaR>-rlNB zUA=&{h6(w!%m92Ko~$nCC2Q%32uVL@Ga$bqiWrcDfv(5>#O`aF<)S@+Pr^C}0`6Jd zX=uj>G<1^@2Y=)F2oMd+y4zA;bsX+WTq3~1{(hoYSD042+OnEN2go+jpZIu6XlUrT zP#7QA{e{GCqd`P1VDI=&erv>UKiQZfo2TFb7z`CQ#cXSW+*B8(SQkKrFr05y+oeTF5 z@ni-IGeu&pSMO5H#`nsj$xVqSY=ih-BE<#b21gZ1_baCLGAW!(Y&0s&|Cu3v>5pl8 zPchbKOSCl`TT!m=t$jK$Sr`p=>r;*F(3TL=&hQ49vJP8vVU48a^qfLW)9m7+3QM6at+Pi#tEMkDQ?yu^Nq*eveb645Dt zrLwbG=uDuA;3ar+CmW0Di<8~5*@&^Q2Ui;v|0Rn)ZrKg2@4|+A>=P>w7}W&_%XxK` zTdFm@N;b4xomA)1tju-@VuD+H)~eeRu^u=6^XnB3ulgcm$L#FRO26ec8l~0e=}7f= z@2~u;YMeEflXS0~TDI*5^y^`O!^K`kYhg+(b>aU^GXE=B%CRK2^ei|C&CR=t{=fao z|Ix(sT0z0!F_&}DR27>-sC05L3)rK6J4EE`g{#a$W^VPFkj&t}unkDnH_+v_0Tp`&P+P;$YIy-?XryvGJFR849xGgC!vy4Az#)y1 zhYT_=zQDIa`~1}_jPl9fBV%dY9aiz8?Il!vI*3a2jOqv9yhTLPE*)BK1FK{@0cP{o zHcYGMZY1`s$EY+&XHxRpn1j zo_FrJ{3Gh?KRv*qgXiefY;I4}yHhR_eSdpBOC$Y{;`L4Mg0Z1IEadE41bC<2C&_@a zA^|k5tj4P*4@m~vywGKKb3NEa7F_o^jvqdqoX!V^GTb$9GaxpDGhLsVMQv?yMl zVs|-Zd4cF7-b1Cob;#ruN&k{pcb_+lQ^r5Gvu1kV>(N!I2|t99`}c*SzRL>g(fy+A zI*tZV7GFJ$xnV?4bthz?F8=JX)koX;HkWfZVX@ih-(1hG z)^2j`OIki)F@Ha}B-H(xaMEmw!tj_ZQwG?rU9vxP-R0kl+)AER!kph+Pp_PH(a4nl z4*)3|bqWZ?c69K&wyliAfX-olW!~Mnr0;8^aKfVLmxe<@PhDd^v$QNDjd)Hlg7WB~SnnemF4T3ZgQH0u% zBEGhTzX<~5T0myg_}}|f@gv@h2A;F$oBaiLtpJEN-f7=2vqO*!j%1+USE_DY)a+I} zlwAb+6-*X@_vXIEq{@MEVknh+5ONKA*0>z`%$HcaDE&;sb^N%uwPr$Dyi~fSY@%lQ z4Lk33yHaOy%XyZ*CR0Gmr&d1x5<30ELh)eDc?$?9k%H{Gfsu@7l_yo22%&p&K5t#g zCx{-XRBvs^Gqjjgu{JT2Pe3M1b26L*Wec1Em(j6!Gjar-Ccr1aCdiy!l~Yz|Muv< zqwhmMz@|1!=9>0RSrw)zFM)zYfCK`8P^2V9m4WB_>klG4@SA|qY6AoU6M3p?I*Xb* znK)X0bGEd%1A*MrA}8DIU|8NEoZnw!;gl*Sd~aS+CMve`*AS$-&?Dc8jWdzEuL$xI?vy)HPSRsOB9ahtgfYuM zEZlsD0OZURRBYz4}EttiFJ($I;F1`9RJ%sSFA>RS(0-mw8oV`R~ z?^_0K(|Hm5T?iQpI<@0N$52|A*{l;XEg8=<(dpn$;VqMUnWMLGhVRU&A9hJRwKLtO zN^VuQQDk*SIIptIJPFVK`?hT_Y)txNYzBN1TX& zO|MKse1x1F;SdmLXVHX{2caS3Fno)SiejJNTExIq_E+=26lJ$kMI?e<{Nq#WRP=Zj z@)nZ{>pda2>T@AYxN_l)6&ni+%cflgBMTXv1@#9t6xCjhjDgx{S1NXP^*T!q2Sl=; zdsCCFpwSd|F+`(j3syFN7_WuKxfqyQ*r-zY;&?2rv5Yn?$O-pEjrrM9l$;cogGN0$ z1qEDZL8k8^F#&-U&JuD@h$WWT;G9*R9k5+r%V%4jpH;aJ8> zZf;tZ`PeFhel`>iI%?Xv_Ucdp^YcWCz_(@o>UIeiUQbLVpJp*` zRYy>!u2VMjtEPyZczp7z=&sJndG6#756eRxS%XI*pO@=Wn}B@VDj?YS#nT$xKm=5E zfPG@#-n=(Qb9-U!K3X-dWxqKc$Zrm3FfT4H!Vlr7ftAsOf3*8Nsz;oLjgKo{je2%{ zhYR1?tEM?>ghR&BOn}Y^`zLPlxL$J-ao6`(s8PJIZ=T6pA{1}ZFwz*G?H7LGJ$<^r zvKEz)AOyDSh3s2Qvu~u-StkJ8#v~z8h$iM^6+00XQ;HXsRhy)fv9KtdZ*nTQcgp1V z3HM=&;P-j>!N_N~ej{k&IHs2mX%)S4wHDRff!n9MNKmgkS*U4Pczjh-Nhz*?oSd8} z!5gzz^+ZKMVf+yty(jwo@Q#o>p3Qo$+H5qXUC^2L)AjwHUaBS!1`&}QaQc-NH}k%q z_yB=x7isuk%zo7#ti4HVkyVcLT&CeRUv6};S!>thJ@14~<8h0se$mhZ%X|1mSuE8P zCED_vho9LqLvn08dqBCAL@?{2nGL^t=W5LDJt4=oxBGfIZl%gDRq z=9_N(oi2}xVg#7M-y{3hK4{ym-!9Yl*ty1~tnt$5?gZMiG4zVo%M>oYsF&4`MFt)G z02{IadTOob-WwPg7@L@Y-LvftGWM4mh5_XWMiYLA|9QJSCwB)ES+&tbKE}B2jLSJDX2io3t;vaI*vujb|G_LScd3s}}`f zQp>Xz3Lj78AdIH6O#vJmwIx>#X7RZE%Kv;l<#-}4A(0wfFbOD{|Hkr5o1 zw8}P(**p4`or#ZRE!$@n4Gm4OKZSN`HusS$Z6uZXk%rWgV zgkPR?Qxk)uTE0@N$*uqWN{pBX7wrqZ37WZ>QF``_(6tsxeKUH5_zFlq)g04?j zR~Wj50^yYwufqAEPfqKJ2)d2m$SA~rl9H2u-{=X&BqWqkR74}>u=~5VmU(^cT+Y!f zEF5sqmmFVCeXtc>_EHWE&T`o53knLVv|0FEGFFpFpx8dH@3F(SN_+*A$^4u*0_F1( zC>{DO!f#SJ(z_W zbBz2WaHxEN)zzQSYFnJoGeMWy0Sk*X6rd~a7I}* zN?$V2(b1g`r^8SP*)@Hl7=QDvXXqV)@4lR6#2R zXo~I4^vn3V*4~y892|`I4n7DCFBm;Xh%^YD>)nE==GtRQq`_FV=v!^D_7S=30dYp0U zT`Nnv2(6?2^8Nfkt%R(kpFhX;ifu6hQYb1aVzr!nCgd|tSiYcT>$5wGEbZNBB= zSS{)H~cOHwKXmE_bN zwJ;m!@^uS(b%ugkpMQM|n<^gndFFOC$w^7n+70KM{UpA^6?3rVxcVM5CgvCbqF(8Y zMOP8Hum{j}YuCx190Ti`jb+&4{LTqh$0<=SBPS*8G$K|kDplxnO*kLwcHBHFR3cLs z6D0~WomrmY0Mqct`2rB-Z>u)bl03PEC@dn<3*f^3Y8wxrqdS*7!ymXD|DNihC#d@; zM4tIAGOVUPFr{X@I-DCC7ZFb`sMe>dN};RQb&zVaWw6G$#~igvQjdV|{l8Xbvpd4~ zP$hL@9;2Id^RJ<JUUXYc=`I@D& zTQ3NgY7l*NI$AXE2g92Sg!doS=+W~>o<$qyXc+3t#P+`y_;kz&j9?N(Z!U$PWNu?U znj2&=>H8GmlRU^8J#C|cHP0MoEXkdNo{{)c+Si^>iY_>&Qrz?xw02L>wJfpaLe(_G znK>%f>!0=O!Zm_R;_m)2{AL8{<6m-Cy)AhA-YQJFAK8H~DKi`ru=TgmY=#$n-fi$$ zWq*s_d~+JqH;S1fWWS0Kg}XJdH8yovb0G)|g5TvJ9gKk|vgzoy7O^Qj5y@{6Y^va5 zyZ+8G^?pt4^XX5z_Q{}v*i;QeoQ(hxsXJEtz9AFpAPO<}S6d&F=nY=3Wb{}mKm%xQ#xNvl8KTXxwP*`xbHM`bs>I#3l*Jk#2E zAXgS^{j?0N0TWq!-isa~9oM)ZB;@icfc6bZ^x~P08)6Oo-)sH{3!!+sG$!(u1{b|r zh z&@?*@bY8Z72W1t7P5noz;9w3(IX%RPh+;B)KDD;k1j50osrlgAPDb?S)eX^2vEI9_*fX5#^sbh;=`z2`>BIjZrs58BDhj4 zsHyowR0d~wmqo6}k*hAJPizU7M$wVl9D}f$cPNx|q*vyCR)3MsdCp0S+Z8Kk!avi% zdU8_UY3C68aHdRyvRh}9=i5FWSJKt7RR?PtBd^2)z{8aew$(3ZG>6N{_T`i5mS0pcs@u zL%h7a9M_wh_!BIUH2DQIFwp*W&bdSu5h|K2V4h9GK(nnli4L+`9@t7b<<{e_qqw>h z1O3b6>GO5T?}iy6DgDUtjKP-ahckwd(yjFv@$IQbfesmZn+iHFRPnZ~d^+-QpDq%6 zx!H8nQS+{Uqt8&1@hZQ=oNzi)FXSnl+6Wx_s;xB^4f9~MT5FZioC2tz!Foi27dIn` zh19HC|MENPAir#e-#ioD{H)e$nSm1W>-vhJFtE zkj1+3x!aH$h-_k5Fm#EE_;hM2-^r%PHSzD_VL{p5<0Ed1tD|G}s6HC0`-XXM)U)le z#l*#*5PvD}g0b}7YkWQhX06>{hguf%)V<|Ak2!9l5fHgX-yX_#0fqFf%O-1CUucch z#Ld<_I)+YoJ2uOcIT*OEQ$4SBNdAJJ$)*3&2(jXg>*3=huc26PfiW|)Ia#$MMV?#F zluRORMT|1!F>N9K)?XIZK}M!hu|NMo>cBWUDPPdPyCmVY`q(oqVyRx zC2t_&db;Q*F+Ej~rt`^C67;u}T<#7=KC{RvwU$j~FB^K+$9N>iH3#R*rK+FqC++{n zLxX{X3&^rxYc~UH_W)6xR;zmzR_Zo;E=Xo$4f@j1=z6044+waV6jIsc;<0p;l`)c- zlLQuXf%tUyHi_9F5hgxfy0`zkx(SnhtLCwjmfFB&W1Qeej9)Me36EzTnbvc%WH;4| zmRo(1n2Gx3+YX5{+O*{bkt(FPEwOW_7 zeo@Z|Wl7#cgH=$Fq0j?Mi73sIKZev>a`7l^bc+6Pu?USg;tSY8`}X0T(H0skah&JI z@3?2ygS9hCSa^}O_r_pEp@0cQVa2_$Q{YAG)|P^$+DzF;#ziZ*xo&Md~!h~4`MG^tGKJp5WuBIQ{&CQ|VH=$vRwNG^J{PsZ< z1ltiH(S9N*T%txp(_Qiafpw!IISeYyhRsYDixmkgX9W7MjGjZe9xt5>JhPbFhq20Q znQ5a4N)@4LrVan@P&SX3))0NfnP_>UF%7;EZ`Mez_=K0@CWZ-!`}t~EUL4OPdmB+& zOTcLHV9a0c;=Lozm)S+8AZ~*>KgJdW&OBw9WmW;Y4uJtEX`=nPdu0tl>a5W)x65Gi zn)#H7*1E~St;BvC$N=Eu{ov9PHsve1LTd1WiYo{f-=E92x|8=r(iQlSr z=IFv31h2QgEdvKrOHH4>Vc!b9t@S$4tA%@pQ%KEtzbDDkxaj+8AqHedU&Yh2$JZjS z);_#hf8s#!=$a2jMEFtJYyK#97!aM&6%a-Z@}!>1u1y z@{3?9oJA9FMYFhecb+P7?Ts+@ddt|P{{>SON`5y9<`vPR!K0Jwom%Z<62==!=M(7> zT~hekMU8ahj-5fi+SW7v?}?|>f2=hc&p265Pl&A67}{?Nq}n{g=-13mKH>cOv%P70 zyC8xQ9eX;aH2d~2 zrv=p7?D~EGr=#t{G`u$ub|(bM6!q4Z-8LT98cIq%{;RcRdLkhS?Y+&JX&*Y6ib>-q zk{W+`wy3K}Y2aFXNeUiAzw$eg8d!ws(4(|~`p!Sah@6ysEf*O5xT40p!YA3{k%-tNlorH4~i?Bl^R7&NSn@rSllB%rn9kEmlvjhyl)I?Gac){X6|1xV~th zm z%&9#bu2JYx01~P+Q>09iaT>j9mSuA4z?%fmQyk&$PLO&brth zX&u-4aQ<#7oKd(?j_2*8PLvE!yUNK*VDwcUppDsro zg(_tE-}C)`^C+PorPdLOmGzfS6Sbt|i8Za(U6X5qEC6{ivbs`J z^(N)Z5>+N^Ph;2WTnR(n_6G9qy#GB#mx60rf{^_8PE1_rHA4rc{C|`6|23%+32nT+ z&7yE79Oe08u>X_#mt0T@D6}u?qtgJI_|9I<9|M62#yx7?|upfzi3S8L5~?|DhDTt3=sas-v@%(*m^s9?6Y$X-`{`MODV;RSpQTz)! zqwP;uAB84$otaaZz8qVuVEWImglAJkL}a)WnOU>4vzXc31I2nQMzZ(|5Lr@GMxpWr ziRWxcyRwHHPmbMR?G5uaP-bLg?B93-g`D6T(fwUQNkhlRN(fV7R9U<#DxK5IoWIWI z<6%jKq?DA=QoZdiECvR~$YUft?B3*Lp-RDfJG=Z|RJYURK_Fy&`}Qpv6H}Can6^YG77gBAg^%#eD+R`S1)o zB+LX2r9o3-H+3$1ae+!wP@5Oz+{=c6!*03pBzI&)*3rpnG}G()6C=Swz8oP)yWZxl ze{?kJ!omVx#ZLE*Kp2lB0oGokIa`XUZMyH`xxG@)>?>o&pakD!yn%8rB{Oq05OD{g z(S&zL5%GXH-OouwQ9qD!aNw@gS>vI=x3;$ah>D{6Kb48&0}9NlMSD zTV&Bi1r4<62x3=R%%04=cX-Q8;YHU4W)KHwlhM4!GLm@%PxnDCEj&0kVP4UJI) z_CR%;Y^WAmmV2qPa0O)thj+s?3tS>f3z6ZyQ&bcT2;~X3v%B7(jkKOCCj+6nxq<#y zRfK z5A0|P8wD-xp!d&)i64FqcE^ku#PhQ#e>yyX9577^u!V55?l&6LIns(m1tLx4&;%yE zW-R1x5Q9$ryH9W`8QzytKv_`_0*4h0D4E6riJmcG@wqgz>b?s;R<2F)B)K!Yw5;ri z?Fw2V&{+6MEVHS*O~G;;?IB#wC*CYs%zXJrF=`_t1)aGFukZc}&M-rP!*<469n~f= zKH8fmZaa#%_3K;9_V(R-=SSW2EUTdF*ZN=+bv}g@Wdinp6~X`AGld~nN&7qcaEJY6 z(flab#IH9)^@&UO4eD(V5 zV7Go3@ddbzDF4K~+J9ISd=VZpxM1>nS8WsThQZaKhljcyAu|7kr%6JsJ&!sdB`7xT1A4o{*dIvfMn zdNm{jkAH-oH)wPR$=r#o#vnBpQFYR{zW}dhdR`Wt$8VMd4Me#k1D&7}wco2>%!*>0 zxf%gQckW+og;Zjx@DyWJP;m1@A5jU7{Obd66oIOFt!E0?pL!pmSNI=esxunxK>qt zF`dl>AVj8q_Vr^rFxo4MNCcqGwih9vG!7W<>AJsun7gb}>cbijPF?nUM8`}a7h*nYs_9LP8t7FWO0QHZ!Pf@D`KDV6>GGcz-l8;nHQ>0fjo z&JapHH+!w9yGO$XGFW7qex>T1khiJf(+bLx-EU8;_5zHa+)hZo*5q$l^bj8VohPlr z%zOZ*#|IWNmE@O>6N%F>!^j)#vR`er`q&NdQhF(iRD)W?H~=dPt|Y@<>D}j93Xd$3 z%o!V*oW0M*>C~nFgz|?%*f6v5KoN?)xOsycB+ShY4@D2&PGb zjwUBlj%D@;yxj1ba333%qugWs{=n4dJm0UZ|MlRB?|hZ~ReO_x;eeqP2O*X{m#Y;c zSsl#U=aPsgHGTjv(+>EnVz_f^sX%y64nV+TKQ@@i&mcWbJU|v&b-rjOs{{yL0wzZ* zkNSXqQtaB!hu*$X0Bj}*`k>lOjMwiahky>5;V)SfJ^W(xYSiTjeH$J830)Gn8+=`H z9)u9J7Iu#W^z{(m=aI3TiH}Si0wB5xzbNDXVECXsLn3ZpKqC3^*6!(G>UC#m6I$lsXDB$vM40tL@W$FE@P?@?czWWAKB<&1w#VxPUuaBHo9rHNKg zDxEbf*+llsy-pOv`V_U?6~4?-0ScgsYHGjLjKy2O%oQNNMmCtd6Qgs({nqi{xy{sx zYKaL6O8^7OSEA|lh1rt9XFg>lhvA0(cpSE8DsBl}-blEpGe!z+U&RDIl z{e2g!qJlk>&o_A{{af0oxfV6+&2d{Igc z|38C@;Ve?qxMR(VuLE{JtbVdtvq!!5`P;DB?)(Jak~QCuY8@3I+cyjEh)9@e+#orUj zxC}$-s5^yf%#smsN+@`*o8N^lG8{d?vbUKNROitw&z0Z?nvEK}P0Y)LnH1XH8|=Kn zV>1o+Fmy=E7KB1MTj`Y5A1#ks5acX7S?8My&qn@OHq8~;-7`OefviNCF$d5MHKG5f zvsmOPgeSE_X1uKlK0nLAq`7vZ_;QF9317FlHoW)Qcn2fYrT^~Vou2OKgv0hWZ7kAf zyk;Xa79HwL1Ik0TA_>E}sF4@8?@2El!{wF}r&?71Q{ss-H}r)C&3ftXbe##*E=0ZS zmbBSD9-fMDkwhJ_@4P-1dAD>~r}7{e7}zE%JK|=caYJo(M+Fp7z>@om*elC!;BhO1 zkL5;?;w60;X9mqwgMuN|_w!9aNkx%qJanCBn-uSeF zGuqd@mw_@yZa)788uV%(bl}?tav-;t-!TXOQm3D>({H^0X%TbYuQaR6 z)uoe)lTzWaHa{vnL6b$Z&%84Zx!TBWZ43X9LyUqn#O$YX7+i|ERFOeyq32#?33O$b z(WBk`u>Eo~vu_T=c7;_1D5a+hx1SJR4=)@cAx=ouQCG^r6_3-4w=E_eSrCL|O19*X?r>O~q$Fbom zf7r9uT0O{JCMm^maj07N{<&z2XfUo{G}mvJ@q#-$#|*Zvf6B3X{$n*C#{SafVq|2z z{_<>-dZp3qRlv!M(xqJ{X*m^wJe;WZKpL3qZG&M5_+?1|vH&mr7nmNno~gCQf@=O_ z{3$JZJ(CO~2IxC)o6iVT%{gqChzfM`SaLRVV%Hup4LLbJXMGJ)-Su>|pUZPhRk5mA zSb$rWA5x36!d{%>?YIQO;1|rf_)IX5cy@vKbZg%#OZy!3!w0>Sfm`MxV322#ur9pJ z7uxM(5I%y!|MzHdm5TqnUww;DqYJF(=Q|~B`IE7FF29eTxRxzv^utUln^5rFge9gz z0SL45vx>CoC(WZ@+I>nOq2`hgsv3Ty5CXNBsVeiGGdhDP9p*}f1MCt8SoL03Tcl*o zCCzg=l{%0_Y-=XSI&4jg5+WA5{6_ln>v_&syYns}d)L$a{cZb<+2I5GXvk~&p4{>H z?a;wq+nDankw(V);JU=9?PrN~KDY8}eg;|I7~kKE?deU4cSJ6*25e^<0`?Iry>UuP zxwV!(ozIV9btVJ=z$(Mf^3%zW&5I5fJzHwku1qZ_qrUe=ZR? zOq=amcL^=sXV*wJ@RqZCkb>j8( zHynyuP)LI={uKdg{fPzcBcL0kz8AJ9dNN)hC1ZiW_;U8TL24gt2uBj`jr4i()$O9d zJVk{~uNk;m8dU6~u?liFG7@IoHVp4f{L2t~x^;|0$(8D;%BuTdTLe+9?>+tOv6`J4 zRM+7%UR};?Jzi<={B%3}q2j#=VU=T;vZG{5^GeE*Dm%Mxo8@%6=!5I&QWF8Id&P}5 zGHOGpNIzL2ALWM*mpn$>thK?Mv1xn{DwnS>+EDaC>Mf*d6e4cEdK0f3}a_u~WnR117;U{bwWaB1GRwWREsGj0{i z%KdT!>#scIzArHy|D5DCU;3rAUsF3wmB7ZvV;IH)2y^`!`U+a`V>?!222^{~&Apbb z4&2at`Z}NKsVcPOh9ozqqGE;vRHkn2+i`>Mp0#@Ar!)}#qH*FGC@Z$@OPn2}ZTOBL z(DdS-p5jxs5ekPp4ho|>r9rUyY>CE`$=~B&L5rg!{T+?ECYpTGf$)K;eP#K*H;1iC zUSfl_MZ~TXn=@aJ^%efj@*xT;t?!LYwYmcunZ!itG2#w9-hAp%Fu0*u(7DZ`IoA?* z%)1#;e_PpFY#;>)J6pVgg9u{UvhzgwYHfgxI zA_LLpt{vVdwU#aU{Sl=F{gc)Ojk7#D{Gf%qHMxqGMMBH*bAcQ(bANdes6obk-gSJ2 z=LT)2fMbIhZ^J#r$2O(?B`FTKUCYOMIE8(q!b^ZZK;CT&{KwHHsKuC6(BsvaUS|mb z=DuV^VIe_p8T`p{cVtv#Zih~Gt5Z;zAJH-U8bPmH`_h1w7A9W9R1e;zx-z24r!C2=(Dy1 zqzw&se#1(2`j^KUWBvP>=H9)F*{;QmwN=!M{)*JwFmiDln*TucPX(mUk7_xKIN zW%YcXemfp0Wl3|p#y>*H93qb1`4qn|(F}%1>4}UKni}&SPVRcAJrS;|eD8mt zz80PfI&;ABb-hXF@V5FK8zUyRY3sXr&~k3->cz!|$hsH25F!1-{@RiCUql(n#9lu~ zndwJYJ4nD)aYfJ41FltU4iIgpR~m51 zy~?l)MyzC}`h{q1JleXpz3dn7Nv*g@%i%C14$31=pw;rS zQoHY$=2uyJF@~VrS|9SeO}L+oxLZ_xyB+VLVCO&gn2Jc@K(abFxJ9sV)oHehSloo& zffWl3LH+%Y!E8D2gYfTvCu@G<$#W&cbdh+tM%q~GPO@nat7%;Wp4 zOS+=CL+t{rx5-_;g|3X3+z%at-bAb8w5}R~Dz*~?`Ba8hE04*cxzOAxb9CWzpq+q? zR2vi$f;4jl6l7yW!Vu=$+@d|8|F1&oy1O(Id>}YdT%=}q6!@wD86#t4UnF5%TwGv5 z0d-STQ)5d@&fF1KQi}AiIXR}4pwL#Mz0nYNFE1Iev}`1$n6yTP&tC@R`k?`hRgJ*0AgWz{+hGvZDm@QT<5%Ko>U0Uhwc zR^#h+r2Ev8?TAfe>vbQl$v8xaOL%I^6-EQu*enW#m_6rpJ5N>lYIczFHS9fegnCTg zW!Z7fh%D)k@pBl;i}`lEwnhYl`6{s1`Tpfb8mX{a{QhDHDGg8aYk(V%jTOR^0ZN=G zzgu@!7HK2vO6t5H@CADazU7_UZ*7DIpZg+u*M7)IfAginF2%XFija8>xHUd-5v_n& zag!_|m+{PEID7BJmGeF{!}<_733S9j`z}ko2RE}rYis_FXT|tM;Jb@R=Iz7X58$g* OASp3<(Q;wK@BbGNY#u@Y diff --git a/tgstation.dme b/tgstation.dme index 89df2df7e99..d6acffeeab7 100644 --- a/tgstation.dme +++ b/tgstation.dme @@ -1382,6 +1382,7 @@ #include "code\modules\surgery\brain_removal.dm" #include "code\modules\surgery\cavity_implant.dm" #include "code\modules\surgery\core_removal.dm" +#include "code\modules\surgery\eye_cybernetic_implant.dm" #include "code\modules\surgery\eye_surgery.dm" #include "code\modules\surgery\gender_reassignment.dm" #include "code\modules\surgery\generic_steps.dm" @@ -1396,6 +1397,7 @@ #include "code\modules\surgery\tools.dm" #include "code\modules\surgery\xenomorph_removal.dm" #include "code\modules\surgery\organs\augments.dm" +#include "code\modules\surgery\organs\cybernetic_implants.dm" #include "code\modules\surgery\organs\helpers.dm" #include "code\modules\surgery\organs\organ.dm" #include "code\modules\telesci\bscrystal.dm"