From 81e9de94afd8dff06dd0872eee5aa6faac12be24 Mon Sep 17 00:00:00 2001 From: veganzombeh Date: Thu, 10 Sep 2015 23:27:17 +0100 Subject: [PATCH 01/44] Machine/device mimic EMP --- .../mob/living/simple_animal/hostile/mimic.dm | 23 +++++++++++++++++-- 1 file changed, 21 insertions(+), 2 deletions(-) diff --git a/code/modules/mob/living/simple_animal/hostile/mimic.dm b/code/modules/mob/living/simple_animal/hostile/mimic.dm index 78b669e2047..b7a3d10f08d 100644 --- a/code/modules/mob/living/simple_animal/hostile/mimic.dm +++ b/code/modules/mob/living/simple_animal/hostile/mimic.dm @@ -36,6 +36,8 @@ faction = list("mimic") move_to_delay = 9 + var/is_electronic = 0 + /mob/living/simple_animal/hostile/mimic/FindTarget() . = ..() if(.) @@ -47,7 +49,14 @@ ghostize() qdel(src) - +/mob/living/simple_animal/hostile/mimic/emp_act(severity) + if(is_electronic) + switch(severity) + if(1) + Die() + if(2) + adjustBruteLoss(50) + ..() // // Crate Mimic @@ -181,7 +190,15 @@ var/global/list/protected_objects = list(/obj/structure/table, /obj/structure/ca icon_living = icon_state overlays = O.overlays - if(istype(O, /obj/structure) || istype(O, /obj/machinery)) + if(istype(O, /obj/structure)) + health = (anchored * 50) + 50 + destroy_objects = 1 + if(O.density && O.anchored) + knockdown_people = 1 + melee_damage_lower *= 2 + melee_damage_upper *= 2 + else if(istype(O, /obj/machinery)) + is_electronic = 1 health = (anchored * 50) + 50 destroy_objects = 1 if(O.density && O.anchored) @@ -194,6 +211,8 @@ var/global/list/protected_objects = list(/obj/structure/table, /obj/structure/ca melee_damage_lower = 2 + I.force melee_damage_upper = 2 + I.force move_to_delay = 2 * I.w_class + 1 + if(istype(O, /obj/item/device)) + is_electronic = 1 maxHealth = health if(creator) From f31bf757648825103ef372c409f1f7e779a6789c Mon Sep 17 00:00:00 2001 From: Fox-McCloud Date: Thu, 10 Sep 2015 19:12:59 -0400 Subject: [PATCH 02/44] Blob Rebalance --- code/game/gamemodes/blob/blobs/blob_mobs.dm | 6 +- code/game/gamemodes/blob/powers.dm | 5 +- .../living/carbon/alien/humanoid/humanoid.dm | 5 +- code/modules/mob/living/carbon/human/human.dm | 22 +- code/modules/mob/living/living.dm | 4 + .../modules/reagents/newchem/Blob-Reagents.dm | 229 ++++++++---------- .../oldchem/reagents/reagents_toxin.dm | 4 +- 7 files changed, 133 insertions(+), 142 deletions(-) diff --git a/code/game/gamemodes/blob/blobs/blob_mobs.dm b/code/game/gamemodes/blob/blobs/blob_mobs.dm index c482f9749b5..abcaba4cf18 100644 --- a/code/game/gamemodes/blob/blobs/blob_mobs.dm +++ b/code/game/gamemodes/blob/blobs/blob_mobs.dm @@ -101,12 +101,12 @@ var/turf/location = get_turf(src) // Create the reagents to put into the air - create_reagents(25) + create_reagents(8) if(overmind && overmind.blob_reagent_datum) - reagents.add_reagent(overmind.blob_reagent_datum.id, 25) + reagents.add_reagent(overmind.blob_reagent_datum.id, 8) else - reagents.add_reagent("spores", 25) + reagents.add_reagent("spores", 8) // Attach the smoke spreader and setup/start it. S.attach(location) diff --git a/code/game/gamemodes/blob/powers.dm b/code/game/gamemodes/blob/powers.dm index 52245bde71d..4a3f9bbdf57 100644 --- a/code/game/gamemodes/blob/powers.dm +++ b/code/game/gamemodes/blob/powers.dm @@ -276,7 +276,10 @@ last_attack = world.time OB.expand(T, 0, blob_reagent_datum.color) for(var/mob/living/L in T) - blob_reagent_datum.reaction_mob(L, TOUCH, 25) + if("blob" in L.faction) //no friendly fire + continue + var/mob_protection = L.get_permeability_protection() + blob_reagent_datum.reaction_mob(L, TOUCH, 25, 1, mob_protection) blob_reagent_datum.send_message(L) OB.color = blob_reagent_datum.color return diff --git a/code/modules/mob/living/carbon/alien/humanoid/humanoid.dm b/code/modules/mob/living/carbon/alien/humanoid/humanoid.dm index 5e3302042f6..19b3c07c8c6 100644 --- a/code/modules/mob/living/carbon/alien/humanoid/humanoid.dm +++ b/code/modules/mob/living/carbon/alien/humanoid/humanoid.dm @@ -355,4 +355,7 @@ In all, this is a lot like the monkey code. /N else if(custom_pixel_x_offset) return custom_pixel_x_offset else - return initial(pixel_x) \ No newline at end of file + return initial(pixel_x) + +/mob/living/carbon/alien/humanoid/get_permeability_protection() + return 0.8 \ No newline at end of file diff --git a/code/modules/mob/living/carbon/human/human.dm b/code/modules/mob/living/carbon/human/human.dm index 7d464ff0f22..149273f6351 100644 --- a/code/modules/mob/living/carbon/human/human.dm +++ b/code/modules/mob/living/carbon/human/human.dm @@ -1759,4 +1759,24 @@ return 1 if(!silent) src << "You don't have the dexterity to use that!" - return 0 \ No newline at end of file + return 0 + +/mob/living/carbon/human/get_permeability_protection() + var/list/prot = list("hands"=0, "chest"=0, "groin"=0, "legs"=0, "feet"=0, "arms"=0, "head"=0) + for(var/obj/item/I in get_equipped_items()) + if(I.body_parts_covered & HANDS) + prot["hands"] = max(1 - I.permeability_coefficient, prot["hands"]) + if(I.body_parts_covered & UPPER_TORSO) + prot["chest"] = max(1 - I.permeability_coefficient, prot["chest"]) + if(I.body_parts_covered & LOWER_TORSO) + prot["groin"] = max(1 - I.permeability_coefficient, prot["groin"]) + if(I.body_parts_covered & LEGS) + prot["legs"] = max(1 - I.permeability_coefficient, prot["legs"]) + if(I.body_parts_covered & FEET) + prot["feet"] = max(1 - I.permeability_coefficient, prot["feet"]) + if(I.body_parts_covered & ARMS) + prot["arms"] = max(1 - I.permeability_coefficient, prot["arms"]) + if(I.body_parts_covered & HEAD) + prot["head"] = max(1 - I.permeability_coefficient, prot["head"]) + var/protection = (prot["head"] + prot["arms"] + prot["feet"] + prot["legs"] + prot["groin"] + prot["chest"] + prot["hands"])/7 + return protection \ No newline at end of file diff --git a/code/modules/mob/living/living.dm b/code/modules/mob/living/living.dm index f6113e61694..ddc46419e7f 100644 --- a/code/modules/mob/living/living.dm +++ b/code/modules/mob/living/living.dm @@ -937,3 +937,7 @@ /mob/living/proc/spawn_dust() new /obj/effect/decal/cleanable/ash(loc) + +//used in datum/reagents/reaction() proc +/mob/living/proc/get_permeability_protection() + return 0 diff --git a/code/modules/reagents/newchem/Blob-Reagents.dm b/code/modules/reagents/newchem/Blob-Reagents.dm index f3b65c9d1b5..80c36713bbe 100644 --- a/code/modules/reagents/newchem/Blob-Reagents.dm +++ b/code/modules/reagents/newchem/Blob-Reagents.dm @@ -1,188 +1,149 @@ // These can only be applied by blobs. They are what blobs are made out of. // The 4 damage /datum/reagent/blob + description = "" var/message = "The blob strikes you" //message sent to any mob hit by the blob var/message_living = null //extension to first mob sent to only living mobs i.e. silicons have no skin to be burnt -/datum/reagent/blob/boiling_oil +/datum/reagent/blob/reaction_mob(mob/living/M, method=TOUCH, volume, show_message, touch_protection) + return round(volume * min(1.5 - touch_protection, 1), 0.1) //full touch protection means 50% volume, any prot below 0.5 means 100% volume. + +/datum/reagent/blob/ripping_tendrils //does brute and a little stamina damage + name = "Ripping Tendrils" + id = "ripping_tendrils" + color = "#7F0000" + message_living = ", and you feel your skin ripping and tearing off" + +/datum/reagent/blob/ripping_tendrils/reaction_mob(mob/living/M, method=TOUCH, volume) + if(method == TOUCH) + volume = ..() + M.apply_damage(0.6*volume, BRUTE) + M.adjustStaminaLoss(0.4*volume) + if(iscarbon(M)) + M.emote("scream") + +/datum/reagent/blob/boiling_oil //sets you on fire, does burn damage name = "Boiling Oil" id = "boiling_oil" - description = "" color = "#B68D00" message = "The blob splashes you with burning oil" + message_living = ", and you feel your skin char and melt" /datum/reagent/blob/boiling_oil/reaction_mob(var/mob/living/M as mob, var/method=TOUCH, var/volume) if(method == TOUCH) - var/ratio = volume/25 - M.apply_damage(15*ratio, BURN) - M.adjust_fire_stacks(2*ratio) + M.adjust_fire_stacks(round(volume/12)) + volume = ..() + M.apply_damage(0.6*volume, BURN) M.IgniteMob() if(isliving(M)) M.emote("scream") -/datum/reagent/blob/toxic_goop - name = "Toxic Goop" - id = "toxic_goop" - description = "" - color = "#008000" +/datum/reagent/blob/envenomed_filaments //toxin, hallucination, and some bonus spore toxin + name = "Envenomed Filaments" + id = "envenomed_filaments" + color = "#9ACD32" message_living = ", and you feel sick and nauseated" -/datum/reagent/blob/toxic_goop/reaction_mob(var/mob/living/M as mob, var/method=TOUCH, var/volume) +/datum/reagent/blob/envenomed_filaments/reaction_mob(mob/living/M, method=TOUCH, volume) if(method == TOUCH) - var/ratio = volume/25 - M.apply_damage(20*ratio, TOX) + volume = ..() + M.apply_damage(0.6*volume, TOX) + M.hallucination += 0.6*volume + M.reagents.add_reagent("spores", 0.4*volume) -/datum/reagent/blob/skin_ripper - name = "Skin Ripper" - id = "skin_ripper" - description = "" - color = "#FF4C4C" - message_living = ", and you feel your skin ripping and tearing off" - -/datum/reagent/blob/skin_ripper/reaction_mob(var/mob/living/M as mob, var/method=TOUCH, var/volume) - if(method == TOUCH) - var/ratio = volume/25 - M.apply_damage(20*ratio, BRUTE) - if(iscarbon(M)) - M.emote("scream") - -// Combo Reagents - -/datum/reagent/blob/skin_melter - name = "Skin Melter" - id = "skin_melter" - description = "" - color = "#7F0000" - message_living = ", and you feel your skin char and melt" - -/datum/reagent/blob/skin_melter/reaction_mob(var/mob/living/M as mob, var/method=TOUCH, var/volume) - if(method == TOUCH) - var/ratio = volume/25 - M.apply_damage(10*ratio, BRUTE) - M.apply_damage(10*ratio, BURN) - M.adjust_fire_stacks(2*ratio) - M.IgniteMob() - if(iscarbon(M)) - M.emote("scream") - -/datum/reagent/blob/lung_destroying_toxin - name = "Lung Destroying Toxin" - id = "lung_destroying_toxin" - description = "" +/datum/reagent/blob/lexorin_jelly //does tons of oxygen damage and a little brute + name = "Lexorin Jelly" + id = "lexorin_jelly" color = "#00FFC5" message_living = ", and your lungs feel heavy and weak" -/datum/reagent/blob/lung_destroying_toxin/reaction_mob(var/mob/living/M as mob, var/method=TOUCH, var/volume) +/datum/reagent/blob/lexorin_jelly/reaction_mob(mob/living/M, method=TOUCH, volume) if(method == TOUCH) - var/ratio = volume/25 - M.apply_damage(20* ratio, OXY) - M.losebreath += 15*ratio - M.apply_damage(20*ratio, TOX) + volume = ..() + M.apply_damage(0.4*volume, BRUTE) + M.apply_damage(1*volume, OXY) + M.losebreath += round(0.3*volume) -// Special Reagents -/datum/reagent/blob/radioactive_liquid - name = "Radioactive Liquid" - id = "radioactive_liquid" - description = "" - color = "#00EE00" - message_living = ", and your skin feels papery and everything hurts" +/datum/reagent/blob/kinetic //does semi-random brute damage + name = "Kinetic Gelatin" + id = "kinetic" + color = "#FFA500" + message = "The blob pummels you" -/datum/reagent/blob/radioactive_liquid/reaction_mob(var/mob/living/M as mob, var/method=TOUCH, var/volume) +/datum/reagent/blob/kinetic/reaction_mob(mob/living/M, method=TOUCH, volume) if(method == TOUCH) - var/ratio = volume/25 - M.apply_damage(10*ratio, BRUTE) - if(istype(M, /mob/living/carbon/human)) - M.apply_effect(40*ratio,IRRADIATE,0) - if(prob(33*ratio)) - randmuti(M) - if(prob(98)) - randmutb(M) - domutcheck(M, null) - M.UpdateAppearance() + volume = ..() + var/damage = rand(5, 35)/25 + M.apply_damage(damage*volume, BRUTE) + +/datum/reagent/blob/cryogenic_liquid //does low burn damage and stamina damage and cools targets down + name = "Cryogenic Liquid" + id = "cryogenic_liquid" + color = "#8BA6E9" + message = "The blob splashes you with an icy liquid" + message_living = ", and you feel cold and tired" + +/datum/reagent/blob/cryogenic_liquid/reaction_mob(mob/living/M, method=TOUCH, volume) + if(method == TOUCH) + volume = ..() + M.apply_damage(0.4*volume, BURN) + M.adjustStaminaLoss(0.4*volume) + M.reagents.add_reagent("frostoil", 0.4*volume) /datum/reagent/blob/dark_matter name = "Dark Matter" id = "dark_matter" - description = "" color = "#61407E" message = "You feel a thrum as the blob strikes you, and everything flies at you" /datum/reagent/blob/dark_matter/reaction_mob(var/mob/living/M as mob, var/method=TOUCH, var/volume) if(method == TOUCH) - var/ratio = volume/25 - M.apply_damage(15*ratio, BRUTE) - reagent_vortex(M, 0) + reagent_vortex(M, 0, volume) + volume = ..() + M.apply_damage(0.6*volume, BRUTE) /datum/reagent/blob/b_sorium name = "Sorium" id = "b_sorium" - description = "" color = "#808000" message = "The blob slams into you, and sends you flying" /datum/reagent/blob/b_sorium/reaction_mob(var/mob/living/M as mob, var/method=TOUCH, var/volume) if(method == TOUCH) - var/ratio = volume/25 - M.apply_damage(15*ratio, BRUTE) - reagent_vortex(M, 1) + reagent_vortex(M, 1, volume) + volume = ..() + M.apply_damage(0.6*volume, BRUTE) - -/datum/reagent/blob/explosive // I'm gonna burn in hell for this one - name = "Explosive Gelatin" - id = "explosive" - description = "" - color = "#FFA500" - message = "The blob strikes you, and its tendrils explode" - -/datum/reagent/blob/explosive/reaction_mob(var/mob/living/M as mob, var/method=TOUCH, var/volume) - if(method == TOUCH) - var/ratio = volume/25 - if(prob(75*ratio)) - explosion(M.loc, 0, 0, 1, 0, 0) - -/datum/reagent/blob/omnizine - name = "Omnizine" - id = "b_omnizine" - description = "" - color = "#C8A5DC" - message = "The blob squirts something at you" - message_living = ", and you feel great" - -/datum/reagent/blob/omnizine/reaction_mob(var/mob/living/M as mob, var/method=TOUCH, var/volume) - if(method == TOUCH) - var/ratio = volume/25 - M.reagents.add_reagent("omnizine", 11*ratio) - -/datum/reagent/blob/spacedrugs - name = "Space drugs" - id = "b_space_drugs" - description = "" - color = "#60A584" - message = "The blob squirts something at you" - message_living = ", and you feel funny" - -/datum/reagent/blob/spacedrugs/reaction_mob(var/mob/living/M as mob, var/method=TOUCH, var/volume) - if(method == TOUCH) - var/ratio = volume/25 - M.hallucination += 20*ratio - M.reagents.add_reagent("space_drugs", 15*ratio) - M.apply_damage(10*ratio, TOX) - - -/datum/reagent/blob/proc/reagent_vortex(var/mob/living/M as mob, var/setting_type) +/datum/reagent/blob/proc/reagent_vortex(mob/living/M, setting_type, volume) var/turf/pull = get_turf(M) - for(var/atom/movable/X in range(4,pull)) - if(istype(X, /atom/movable)) - if((X) && !X.anchored) - if(setting_type) - step_away(X,pull) - step_away(X,pull) - step_away(X,pull) - step_away(X,pull) + var/range_power = Clamp(round(volume/5, 1), 1, 5) + for(var/atom/movable/X in range(range_power,pull)) + if(istype(X, /obj/effect)) + continue + if(!X.anchored) + var/distance = get_dist(X, pull) + var/moving_power = max(range_power - distance, 1) + spawn(0) + if(moving_power > 2) //if the vortex is powerful and we're close, we get thrown + if(setting_type) + var/atom/throw_target = get_edge_target_turf(X, get_dir(X, get_step_away(X, pull))) + var/throw_range = 5 - distance + X.throw_at(throw_target, throw_range, 1) + else + X.throw_at(pull, distance, 1) else - X.throw_at(pull) + if(setting_type) + for(var/i = 0, i < moving_power, i++) + sleep(2) + if(!step_away(X, pull)) + break + else + for(var/i = 0, i < moving_power, i++) + sleep(2) + if(!step_towards(X, pull)) + break /datum/reagent/blob/proc/send_message(var/mob/living/M as mob) var/totalmessage = message diff --git a/code/modules/reagents/oldchem/reagents/reagents_toxin.dm b/code/modules/reagents/oldchem/reagents/reagents_toxin.dm index e338766553f..8e56b431ad1 100644 --- a/code/modules/reagents/oldchem/reagents/reagents_toxin.dm +++ b/code/modules/reagents/oldchem/reagents/reagents_toxin.dm @@ -405,7 +405,7 @@ color = "#9ACD32" /datum/reagent/spores/on_mob_life(var/mob/living/M as mob) - M.adjustToxLoss(0.5) + M.adjustToxLoss(1) M.damageoverlaytemp = 60 M.eye_blurry = max(M.eye_blurry, 3) ..() @@ -564,7 +564,7 @@ id = "frostoil" description = "A special oil that noticably chills the body. Extraced from Icepeppers." reagent_state = LIQUID - color = "#B31008" // rgb: 139, 166, 233 + color = "#8BA6E9" // rgb: 139, 166, 233 process_flags = ORGANIC | SYNTHETIC /datum/reagent/frostoil/on_mob_life(var/mob/living/M as mob) From a04c6fd83c6a88fa679fda068f661621606eb277 Mon Sep 17 00:00:00 2001 From: Fox-McCloud Date: Thu, 10 Sep 2015 19:52:17 -0400 Subject: [PATCH 03/44] Phazon Construction Nerf --- code/game/mecha/mecha_construction_paths.dm | 100 +++++++++++--------- 1 file changed, 54 insertions(+), 46 deletions(-) diff --git a/code/game/mecha/mecha_construction_paths.dm b/code/game/mecha/mecha_construction_paths.dm index b201b83993d..5e684b9ddef 100644 --- a/code/game/mecha/mecha_construction_paths.dm +++ b/code/game/mecha/mecha_construction_paths.dm @@ -1167,95 +1167,99 @@ /datum/construction/reversible/mecha/phazon result = "/obj/mecha/combat/phazon" steps = list( - //1 + //1 + list("key"=/obj/item/device/assembly/signaler/anomaly, + "backkey"=null, //Cannot remove the anomaly core once it's in + "desc"="Anomaly core socket is open and awaiting connection."), + //2 list("key"=/obj/item/weapon/weldingtool, "backkey"=/obj/item/weapon/wrench, "desc"="External armor is wrenched."), - //2 + //3 list("key"=/obj/item/weapon/wrench, "backkey"=/obj/item/weapon/crowbar, "desc"="External armor is installed."), - //3 + //4 list("key"=/obj/item/mecha_parts/part/phazon_armor, "backkey"=/obj/item/weapon/weldingtool, "desc"="Phase armor is welded."), - //4 + //5 list("key"=/obj/item/weapon/weldingtool, "backkey"=/obj/item/weapon/wrench, "desc"="Phase armor is wrenched."), - //5 + //6 list("key"=/obj/item/weapon/wrench, "backkey"=/obj/item/weapon/crowbar, "desc"="Phase armor is installed."), - //6 + //7 list("key"=/obj/item/stack/sheet/plasteel, "backkey"=/obj/item/weapon/screwdriver, "desc"="The bluespace crystal is engaged."), - //7 + //8 list("key"=/obj/item/weapon/screwdriver, "backkey"=/obj/item/weapon/wirecutters, "desc"="The bluespace crystal is connected."), - //8 + //9 list("key"=/obj/item/stack/cable_coil, "backkey"=/obj/item/weapon/crowbar, "desc"="The bluespace crystal is installed."), - //9 + //10 list("key"=/obj/item/bluespace_crystal, "backkey"=/obj/item/weapon/screwdriver, "desc"="Super capacitor is secured."), - //10 + //11 list("key"=/obj/item/weapon/screwdriver, "backkey"=/obj/item/weapon/crowbar, "desc"="Super capacitor is installed."), - //11 + //12 list("key"=/obj/item/weapon/stock_parts/capacitor/super, "backkey"=/obj/item/weapon/screwdriver, "desc"="Phasic scanner module is secured."), - //12 + //13 list("key"=/obj/item/weapon/screwdriver, "backkey"=/obj/item/weapon/crowbar, "desc"="Phasic scanner module is installed."), - //13 + //14 list("key"=/obj/item/weapon/stock_parts/scanning_module/phasic, "backkey"=/obj/item/weapon/screwdriver, "desc"="Scanning module is secured."), - //14 + //15 list("key"=/obj/item/weapon/screwdriver, "backkey"=/obj/item/weapon/crowbar, "desc"="Scanning module is installed."), - //15 + //16 list("key"=/obj/item/weapon/circuitboard/mecha/phazon/targeting, "backkey"=/obj/item/weapon/screwdriver, "desc"="Peripherals control module is secured."), - //16 + //17 list("key"=/obj/item/weapon/screwdriver, "backkey"=/obj/item/weapon/crowbar, "desc"="Peripherals control module is installed"), - //17 + //18 list("key"=/obj/item/weapon/circuitboard/mecha/phazon/peripherals, "backkey"=/obj/item/weapon/screwdriver, "desc"="Central control module is secured."), - //18 + //19 list("key"=/obj/item/weapon/screwdriver, "backkey"=/obj/item/weapon/crowbar, "desc"="Central control module is installed."), - //19 + //20 list("key"=/obj/item/weapon/circuitboard/mecha/phazon/main, "backkey"=/obj/item/weapon/screwdriver, "desc"="The wiring is adjusted."), - //20 + //21 list("key"=/obj/item/weapon/wirecutters, "backkey"=/obj/item/weapon/screwdriver, "desc"="The wiring is added."), - //21 + //22 list("key"=/obj/item/stack/cable_coil, "backkey"=/obj/item/weapon/screwdriver, "desc"="The hydraulic systems are active."), - //22 + //23 list("key"=/obj/item/weapon/screwdriver, "backkey"=/obj/item/weapon/wrench, "desc"="The hydraulic systems are connected."), - //23 + //24 list("key"=/obj/item/weapon/wrench, "desc"="The hydraulic systems are disconnected.") ) @@ -1270,24 +1274,24 @@ //TODO: better messages. switch(index) - if(23) + if(24) user.visible_message("[user] connects the [holder] hydraulic systems", "You connect the [holder] hydraulic systems.") holder.icon_state = "phazon1" - if(22) + if(23) if(diff==FORWARD) user.visible_message("[user] activates the [holder] hydraulic systems.", "You activate the [holder] hydraulic systems.") holder.icon_state = "phazon2" else user.visible_message("[user] disconnects the [holder] hydraulic systems", "You disconnect the [holder] hydraulic systems.") holder.icon_state = "phazon0" - if(21) + if(22) if(diff==FORWARD) user.visible_message("[user] adds the wiring to the [holder].", "You add the wiring to the [holder].") holder.icon_state = "phazon3" else user.visible_message("[user] deactivates the [holder] hydraulic systems.", "You deactivate the [holder] hydraulic systems.") holder.icon_state = "phazon1" - if(20) + if(21) if(diff==FORWARD) user.visible_message("[user] adjusts the wiring of the [holder].", "You adjust the wiring of the [holder].") holder.icon_state = "phazon4" @@ -1296,7 +1300,7 @@ var/obj/item/stack/cable_coil/coil = new /obj/item/stack/cable_coil(get_turf(holder)) coil.amount = 4 holder.icon_state = "phazon2" - if(19) + if(20) if(diff==FORWARD) user.visible_message("[user] installs the central control module into the [holder].", "You install the central computer mainboard into the [holder].") qdel(used_atom) @@ -1304,7 +1308,7 @@ else user.visible_message("[user] disconnects the wiring of the [holder].", "You disconnect the wiring of the [holder].") holder.icon_state = "phazon3" - if(18) + if(19) if(diff==FORWARD) user.visible_message("[user] secures the mainboard.", "You secure the mainboard.") holder.icon_state = "phazon6" @@ -1312,7 +1316,7 @@ user.visible_message("[user] removes the central control module from the [holder].", "You remove the central computer mainboard from the [holder].") new /obj/item/weapon/circuitboard/mecha/phazon/main(get_turf(holder)) holder.icon_state = "phazon4" - if(17) + if(18) if(diff==FORWARD) user.visible_message("[user] installs the peripherals control module into the [holder].", "You install the peripherals control module into the [holder].") qdel(used_atom) @@ -1320,7 +1324,7 @@ else user.visible_message("[user] unfastens the mainboard.", "You unfasten the mainboard.") holder.icon_state = "phazon5" - if(16) + if(17) if(diff==FORWARD) user.visible_message("[user] secures the peripherals control module.", "You secure the peripherals control module.") holder.icon_state = "phazon8" @@ -1328,7 +1332,7 @@ user.visible_message("[user] removes the peripherals control module from the [holder].", "You remove the peripherals control module from the [holder].") new /obj/item/weapon/circuitboard/mecha/phazon/peripherals(get_turf(holder)) holder.icon_state = "phazon6" - if(15) + if(16) if(diff==FORWARD) user.visible_message("[user] installs the weapon control module into the [holder].", "You install the weapon control module into the [holder].") qdel(used_atom) @@ -1336,7 +1340,7 @@ else user.visible_message("[user] unfastens the peripherals control module.", "You unfasten the peripherals control module.") holder.icon_state = "phazon7" - if(14) + if(15) if(diff==FORWARD) user.visible_message("[user] secures the weapon control module.", "You secure the weapon control module.") holder.icon_state = "phazon10" @@ -1344,7 +1348,7 @@ user.visible_message("[user] removes the weapon control module from the [holder].", "You remove the weapon control module from the [holder].") new /obj/item/weapon/circuitboard/mecha/phazon/targeting(get_turf(holder)) holder.icon_state = "phazon8" - if(13) + if(14) if(diff==FORWARD) user.visible_message("[user] installs phasic scanner module to the [holder].", "You install phasic scanner module to the [holder].") qdel(used_atom) @@ -1352,7 +1356,7 @@ else user.visible_message("[user] unfastens the weapon control module.", "You unfasten the weapon control module.") holder.icon_state = "phazon9" - if(12) + if(13) if(diff==FORWARD) user.visible_message("[user] secures the phasic scanner module.", "You secure the phasic scanner module.") holder.icon_state = "phazon12" @@ -1360,7 +1364,7 @@ user.visible_message("[user] removes the phasic scanner module from the [holder].", "You remove the phasic scanner module from the [holder].") new /obj/item/weapon/stock_parts/scanning_module/phasic(get_turf(holder)) holder.icon_state = "phazon10" - if(11) + if(12) if(diff==FORWARD) user.visible_message("[user] installs super capacitor to the [holder].", "You install super capacitor to the [holder].") qdel(used_atom) @@ -1368,7 +1372,7 @@ else user.visible_message("[user] unfastens the phasic scanner module.", "You unfasten the phasic scanner module.") holder.icon_state = "phazon11" - if(10) + if(11) if(diff==FORWARD) user.visible_message("[user] secures the super capacitor.", "You secure the super capacitor.") holder.icon_state = "phazon14" @@ -1376,7 +1380,7 @@ user.visible_message("[user] removes the super capacitor from the [holder].", "You remove the super capacitor from the [holder].") new /obj/item/weapon/stock_parts/capacitor/super(get_turf(holder)) holder.icon_state = "phazon12" - if(9) + if(10) if(diff==FORWARD) user.visible_message("[user] installs the bluespace crystal.", "You install the bluespace crystal.") qdel(used_atom) @@ -1384,7 +1388,7 @@ else user.visible_message("[user] unsecures the super capacitor from the [holder].", "You unsecure the super capacitor from the [holder].") holder.icon_state = "phazon13" - if(8) + if(9) if(diff==FORWARD) user.visible_message("[user] connects the bluespace crystal.", "You connect the bluespace crystal.") holder.icon_state = "phazon16" @@ -1392,21 +1396,21 @@ user.visible_message("[user] removes the bluespace crystal from the [holder].", "You remove the bluespace crystal from the [holder].") new /obj/item/bluespace_crystal(get_turf(holder)) holder.icon_state = "phazon14" - if(7) + if(8) if(diff==FORWARD) user.visible_message("[user] engages the bluespace crystal.", "You engage the bluespace crystal.") holder.icon_state = "phazon17" else user.visible_message("[user] disconnects the bluespace crystal from the [holder].", "You disconnect the bluespace crystal from the [holder].") holder.icon_state = "phazon15" - if(6) + if(7) if(diff==FORWARD) user.visible_message("[user] installs the phase armor layer to the [holder].", "You install the phase armor layer to the [holder].") holder.icon_state = "phazon18" else user.visible_message("[user] disengages the bluespace crystal.", "You disengage the bluespace crystal.") holder.icon_state = "phazon16" - if(5) + if(6) if(diff==FORWARD) user.visible_message("[user] secures the phase armor layer.", "You secure the phase armor layer.") holder.icon_state = "phazon19" @@ -1415,14 +1419,14 @@ var/obj/item/stack/sheet/plasteel/MS = new /obj/item/stack/sheet/plasteel(get_turf(holder)) MS.amount = 5 holder.icon_state = "phazon17" - if(4) + if(5) if(diff==FORWARD) user.visible_message("[user] welds the phase armor layer to the [holder].", "You weld the phase armor layer to the [holder].") holder.icon_state = "phazon20" else user.visible_message("[user] unfastens the phase armor layer.", "You unfasten the phase armor layer.") holder.icon_state = "phazon18" - if(3) + if(4) if(diff==FORWARD) user.visible_message("[user] installs Phazon Armor Plates to the [holder].", "You install Phazon Armor Plates to the [holder].") qdel(used_atom) @@ -1430,7 +1434,7 @@ else user.visible_message("[user] cuts phase armor layer from the [holder].", "You cut the phase armor layer from the [holder].") holder.icon_state = "phazon19" - if(2) + if(3) if(diff==FORWARD) user.visible_message("[user] secures Phazon Armor Plates.", "You secure Phazon Armor Plates.") holder.icon_state = "phazon22" @@ -1438,12 +1442,16 @@ user.visible_message("[user] pries Phazon Armor Plates from the [holder].", "You pry Phazon Armor Plates from the [holder].") new /obj/item/mecha_parts/part/phazon_armor(get_turf(holder)) holder.icon_state = "phazon20" - if(1) + if(2) if(diff==FORWARD) user.visible_message("[user] welds Phazon Armor Plates to the [holder].", "You weld Phazon Armor Plates to the [holder].") else user.visible_message("[user] unfastens Phazon Armor Plates.", "You unfasten Phazon Armor Plates.") holder.icon_state = "phazon21" + if(1) + if(diff==FORWARD) + user.visible_message("[user] carefully inserts the anomaly core into \the [holder] and secures it.", "You slowly place the anomaly core into its socket and close its chamber.") + qdel(used_atom) return 1 /datum/construction/reversible/mecha/phazon/spawn_result() From 0c99103f0e77b1cca4c1f793421002a65d37ed32 Mon Sep 17 00:00:00 2001 From: KasparoVy Date: Thu, 10 Sep 2015 19:54:26 -0400 Subject: [PATCH 04/44] Adds Vox Shoes, Reformats Code Yet to test this. Added Vox shoe sprites to match every Human one (excepting the old magboots). --- code/modules/clothing/clothing.dm | 8 +++++++- code/modules/clothing/shoes/colour.dm | 5 ----- code/modules/clothing/shoes/miscellaneous.dm | 14 +------------- icons/mob/species/vox/shoes.dmi | Bin 1444 -> 16433 bytes 4 files changed, 8 insertions(+), 19 deletions(-) diff --git a/code/modules/clothing/clothing.dm b/code/modules/clothing/clothing.dm index c24d307a01b..417117cb65a 100644 --- a/code/modules/clothing/clothing.dm +++ b/code/modules/clothing/clothing.dm @@ -303,9 +303,15 @@ BLIND // can't see anything body_parts_covered = FEET slot_flags = SLOT_FEET + permeability_coefficient = 0.50 slowdown = SHOES_SLOWDOWN - species_restricted = list("exclude","Unathi","Tajaran","Wryn") + species_restricted = list("exclude","Unathi","Tajaran","Wryn")\ + species_fit = list("Vox") + sprite_sheets = list( + "Vox" = 'icons/mob/species/vox/shoes.dmi' + ) + /obj/item/proc/negates_gravity() return 0 diff --git a/code/modules/clothing/shoes/colour.dm b/code/modules/clothing/shoes/colour.dm index eac5aa33530..f2a89c662dd 100644 --- a/code/modules/clothing/shoes/colour.dm +++ b/code/modules/clothing/shoes/colour.dm @@ -3,7 +3,6 @@ icon_state = "black" _color = "black" desc = "A pair of black shoes." - species_fit = list("Vox") cold_protection = FEET min_cold_protection_temperature = SHOES_MIN_TEMP_PROTECT @@ -20,8 +19,6 @@ name = "brown shoes" desc = "A pair of brown shoes." icon_state = "brown" - _color = "brown" - species_fit = list("Vox") captain _color = "captain" //Exists for washing machines. Is not different from brown shoes in any way. @@ -72,7 +69,6 @@ icon_state = "white" permeability_coefficient = 0.01 _color = "white" - species_fit = list("Vox") /obj/item/clothing/shoes/leather name = "leather shoes" @@ -90,7 +86,6 @@ name = "orange shoes" icon_state = "orange" _color = "orange" - species_fit = list("Vox") /obj/item/clothing/shoes/orange/attack_self(mob/user as mob) if (src.chained) diff --git a/code/modules/clothing/shoes/miscellaneous.dm b/code/modules/clothing/shoes/miscellaneous.dm index 53a322f1eee..e630d8f839f 100644 --- a/code/modules/clothing/shoes/miscellaneous.dm +++ b/code/modules/clothing/shoes/miscellaneous.dm @@ -9,17 +9,12 @@ var/list/clothing_choices = list() siemens_coefficient = 0.8 species_restricted = null - species_fit = list("Vox") - sprite_sheets = list( - "Vox" = 'icons/mob/species/vox/shoes.dmi' - ) /obj/item/clothing/shoes/mime name = "mime shoes" icon_state = "mime" _color = "mime" - /obj/item/clothing/shoes/combat //basic syndicate combat boots for nuke ops and mob corpses name = "combat boots" desc = "High speed, low drag combat boots." @@ -55,10 +50,6 @@ flags = NOSLIP slowdown = SHOES_SLOWDOWN+1 species_restricted = null - species_fit = list("Vox") - sprite_sheets = list( - "Vox" = 'icons/mob/species/vox/shoes.dmi' - ) /obj/item/clothing/shoes/clown_shoes desc = "The prankster's standard-issue clowning shoes. Damn they're huge!" @@ -121,10 +112,7 @@ name = "laceup shoes" desc = "The height of fashion, and they're pre-polished!" icon_state = "laceups" - species_fit = list("Vox") - sprite_sheets = list( - "Vox" = 'icons/mob/species/vox/shoes.dmi' - ) + /obj/item/clothing/shoes/roman name = "roman sandals" desc = "Sandals with buckled leather straps on it." diff --git a/icons/mob/species/vox/shoes.dmi b/icons/mob/species/vox/shoes.dmi index 8aaf18114b23afb92d0b262778846491698222eb..ac6c6e7a68ed976159b635e9ca075d0aab38ba51 100644 GIT binary patch literal 16433 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 Date: Thu, 10 Sep 2015 20:19:20 -0400 Subject: [PATCH 05/44] Adds All Vox Gloves, Reformats Code Yet to be tested --- code/modules/clothing/gloves/boxing.dm | 9 +-- code/modules/clothing/gloves/color.dm | 69 +++--------------- code/modules/clothing/gloves/miscellaneous.dm | 19 +---- icons/mob/hands.dmi | Bin 9323 -> 9224 bytes icons/mob/species/vox/gloves.dmi | Bin 10360 -> 11986 bytes 5 files changed, 13 insertions(+), 84 deletions(-) diff --git a/code/modules/clothing/gloves/boxing.dm b/code/modules/clothing/gloves/boxing.dm index ee3e0849d80..cbb355ecab9 100644 --- a/code/modules/clothing/gloves/boxing.dm +++ b/code/modules/clothing/gloves/boxing.dm @@ -4,22 +4,15 @@ icon_state = "boxing" item_state = "boxing" species_restricted = null - species_fit = list("Vox") - sprite_sheets = list( - "Vox" = 'icons/mob/species/vox/gloves.dmi' - ) /obj/item/clothing/gloves/boxing/green icon_state = "boxinggreen" item_state = "boxinggreen" - species_fit = list("Vox") /obj/item/clothing/gloves/boxing/blue icon_state = "boxingblue" item_state = "boxingblue" - species_fit = list("Vox") /obj/item/clothing/gloves/boxing/yellow icon_state = "boxingyellow" - item_state = "boxingyellow" - species_fit = list("Vox") \ No newline at end of file + item_state = "boxingyellow" \ No newline at end of file diff --git a/code/modules/clothing/gloves/color.dm b/code/modules/clothing/gloves/color.dm index f33a56c9a0a..baef9e0ff01 100644 --- a/code/modules/clothing/gloves/color.dm +++ b/code/modules/clothing/gloves/color.dm @@ -6,11 +6,6 @@ siemens_coefficient = 0 permeability_coefficient = 0.05 _color="yellow" - species_fit = list("Vox") - sprite_sheets = list( - "Vox" = 'icons/mob/species/vox/gloves.dmi' - ) - power var/next_shock = 0 @@ -25,10 +20,6 @@ item_state = "ygloves" siemens_coefficient = 1 //Set to a default of 1, gets overridden in New() permeability_coefficient = 0.05 - species_fit = list("Vox") - sprite_sheets = list( - "Vox" = 'icons/mob/species/vox/gloves.dmi' - ) _color="yellow" New() @@ -40,10 +31,6 @@ icon_state = "black" item_state = "bgloves" _color="brown" - species_fit = list("Vox") - sprite_sheets = list( - "Vox" = 'icons/mob/species/vox/gloves.dmi' - ) cold_protection = HANDS min_cold_protection_temperature = GLOVES_MIN_TEMP_PROTECT heat_protection = HANDS @@ -65,27 +52,20 @@ icon_state = "orange" item_state = "orangegloves" _color="orange" - species_fit = list("Vox") - sprite_sheets = list( - "Vox" = 'icons/mob/species/vox/gloves.dmi' - ) + /obj/item/clothing/gloves/color/red name = "red gloves" desc = "A pair of gloves, they don't look special in any way." icon_state = "red" item_state = "redgloves" _color = "red" - species_fit = list("Vox") - sprite_sheets = list( - "Vox" = 'icons/mob/species/vox/gloves.dmi' - ) - + /obj/item/clothing/gloves/color/red/insulated name = "insulated gloves" desc = "These gloves will protect the wearer from electric shock." siemens_coefficient = 0 permeability_coefficient = 0.05 - + /obj/item/clothing/gloves/color/rainbow name = "rainbow gloves" desc = "A pair of gloves, they don't look special in any way." @@ -93,9 +73,6 @@ item_state = "rainbowgloves" _color = "rainbow" species_fit = list("Vox") - sprite_sheets = list( - "Vox" = 'icons/mob/species/vox/gloves.dmi' - ) clown _color = "clown" @@ -105,40 +82,28 @@ icon_state = "blue" item_state = "bluegloves" _color="blue" - species_fit = list("Vox") - sprite_sheets = list( - "Vox" = 'icons/mob/species/vox/gloves.dmi' - ) + /obj/item/clothing/gloves/color/purple name = "purple gloves" desc = "A pair of gloves, they don't look special in any way." icon_state = "purple" item_state = "purplegloves" _color="purple" - species_fit = list("Vox") - sprite_sheets = list( - "Vox" = 'icons/mob/species/vox/gloves.dmi' - ) + /obj/item/clothing/gloves/color/green name = "green gloves" desc = "A pair of gloves, they don't look special in any way." icon_state = "green" item_state = "greengloves" _color="green" - species_fit = list("Vox") - sprite_sheets = list( - "Vox" = 'icons/mob/species/vox/gloves.dmi' - ) + /obj/item/clothing/gloves/color/grey name = "grey gloves" desc = "A pair of gloves, they don't look special in any way." icon_state = "gray" item_state = "graygloves" _color="grey" - species_fit = list("Vox") - sprite_sheets = list( - "Vox" = 'icons/mob/species/vox/gloves.dmi' - ) + rd _color = "director" //Exists for washing machines. Is not different from gray gloves in any way. @@ -151,20 +116,14 @@ icon_state = "lightbrown" item_state = "lightbrowngloves" _color="light brown" - species_fit = list("Vox") - sprite_sheets = list( - "Vox" = 'icons/mob/species/vox/gloves.dmi' - ) + /obj/item/clothing/gloves/color/brown name = "brown gloves" desc = "A pair of gloves, they don't look special in any way." icon_state = "brown" item_state = "browngloves" _color="brown" - species_fit = list("Vox") - sprite_sheets = list( - "Vox" = 'icons/mob/species/vox/gloves.dmi' - ) + cargo _color = "cargo" //Exists for washing machines. Is not different from brown gloves in any way. @@ -177,10 +136,6 @@ permeability_coefficient = 0.01 _color="white" transfer_prints = TRUE - species_fit = list("Vox") - sprite_sheets = list( - "Vox" = 'icons/mob/species/vox/mask.dmi' - ) /obj/item/clothing/gloves/color/latex/nitrile name = "nitrile gloves" @@ -212,8 +167,4 @@ cold_protection = HANDS min_cold_protection_temperature = GLOVES_MIN_TEMP_PROTECT heat_protection = HANDS - max_heat_protection_temperature = GLOVES_MAX_TEMP_PROTECT - species_fit = list("Vox") - sprite_sheets = list( - "Vox" = 'icons/mob/species/vox/mask.dmi' - ) \ No newline at end of file + max_heat_protection_temperature = GLOVES_MAX_TEMP_PROTECT \ No newline at end of file diff --git a/code/modules/clothing/gloves/miscellaneous.dm b/code/modules/clothing/gloves/miscellaneous.dm index 70cbced27ac..79871b9afdc 100644 --- a/code/modules/clothing/gloves/miscellaneous.dm +++ b/code/modules/clothing/gloves/miscellaneous.dm @@ -15,10 +15,6 @@ icon_state = "black" item_state = "r_hands" siemens_coefficient = 1.0 - species_fit = list("Vox") - sprite_sheets = list( - "Vox" = 'icons/mob/species/vox/mask.dmi' - ) /obj/item/clothing/gloves/combat desc = "These tactical gloves are somewhat fire and impact resistant." @@ -31,10 +27,6 @@ min_cold_protection_temperature = GLOVES_MIN_TEMP_PROTECT heat_protection = HANDS max_heat_protection_temperature = GLOVES_MAX_TEMP_PROTECT - species_fit = list("Vox") - sprite_sheets = list( - "Vox" = 'icons/mob/species/vox/mask.dmi' - ) /obj/item/clothing/gloves/botanic_leather desc = "These leather gloves protect against thorns, barbs, prickles, spikes and other harmful objects of floral origin." @@ -46,17 +38,10 @@ min_cold_protection_temperature = GLOVES_MIN_TEMP_PROTECT heat_protection = HANDS max_heat_protection_temperature = GLOVES_MAX_TEMP_PROTECT - species_fit = list("Vox") - sprite_sheets = list( - "Vox" = 'icons/mob/species/vox/mask.dmi' - ) + /obj/item/clothing/gloves/batmangloves desc = "Used for handling all things bat related." name = "batgloves" icon_state = "bmgloves" item_state = "bmgloves" - _color="bmgloves" - species_fit = list("Vox") - sprite_sheets = list( - "Vox" = 'icons/mob/species/vox/mask.dmi' - ) + _color="bmgloves" \ No newline at end of file diff --git a/icons/mob/hands.dmi b/icons/mob/hands.dmi index 7f27823e9a6e75a7d387596a4ca0989343b0c23d..ca38284b11c2921b4a49b33dbd0f5a7b72f435d4 100644 GIT binary patch literal 9224 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 literal 9323 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 Wmm@AR?g6SX$mEKpAzJ_X{r>_ix*?(f diff --git a/icons/mob/species/vox/gloves.dmi b/icons/mob/species/vox/gloves.dmi index c3d1b6a5603e32613d077988622d6793d2f533a1..c12466ee543ecf94559346a7ded176f24fb58b5c 100644 GIT binary patch literal 11986 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� z4MYTab;jN|J^Q=sl(kckfi}DFD+Y;Efwx`_9L{~`vL_{8(5g^*S14~npxUhIQ77UD z>i!i=2)ji>wygs~(aaX$V@9!J=hYev$xEEOM=YW^&?v4qc}Gx&GFU-*xPNl$q1g+) zO)*hm97WNZ0TH#nOj29PPNK|bhw@WH=KHzT^ND)iQeH(OQ?3+SvM;yG#Ey0pnsV(7 z{rYBbLD>;KAqidZbUZ+Bpe6Z(zquEvc}s-P za-(?rBPKcGyG3G>hota(<5WMw`mE~v|WpFW-aWz0l@Z&?M=O=o#L{aO_v~`-iMJatt zoKzp$>xW?seotRkZkXEC;q6cClPYcRbcdK$Ikudw&BkbB_AjFvHOa{zQ~le#sZ<9& zlWxzUzU9VGwz}21x`i3FZ7IXAf^}x?D33blmhEtycG9qm1=FP`sc&ZapQQG> zSVU&HS>dT;D2mmqoCHjidgm)NwA^bPhQ!wwXmZkdHKMI%C!=ZM)<4bh40rZv|g!0e;9OQ z==;b8-r&e`z{cr0yWO58cUt=9!Sy!zc&QHko+Su$L*gpsG$Y9T`Y$8@XVLF}X3qaT z@Mc89NYFpS=r^+4pB9NjREB&b>#6Zq9DSRBS><&1S??WKfMR!f|B9q11_B~Ee!rpO zRh;{q_H2@8y|S(Z-xaDZLnm8Ua;7N9gN&X zv+NCT?v@fExO1jKzkHBAmEp=%ok&VeHmIy;9$dk><24%2wXbS4*m*!I|FCeYe28@4 zYF=qMg^(vZ;WXy4wUX7Lh|JhYeXTV#S~*M|kM+Bl-s z`uM0K>-W%gJ~gtNB|RjfqO^zK%F3uFZ@|wN!DJ@PumWTlW~s_=3F46wzgw)mVhJQp z7!sbBsSnt@M{HiPy~$oA+u#I)?G|d-OYNaeS$f-b@Y=lQ5<<#SD!N9RvEAGC^I zz6F7a<2R??{FMIq>IRk9PntTx8h%eaznAJ)3a(k9ULPzF2!npVJ~U)_0I#Rem#gC6 zjp9*}qo(c-PPEP?+T{m1ttw&Sy&#`;M;no_c96{W1qbK6jg=G~#ugC*Rlu)RzMJ0xj1BX;GR#D>!pYyTLxo7h%EH6zD-D3F?Uu^^erQs?q7 z>Oe{-0Jq_4f&?JNu8B#&FdH0rAg*?-TdM!J^grRGFh33r_ZZ8_L$MU$S)r-a=>6s=ffuIFQPYr6*rR2rSpYR z%^9|wrJpB5WiAnHh)(+wHmubmbzOOLMG-~=Y3-EDoBIeEuV}zo{Q@K20SK)g>2E-* zCcom^z6Bfs&~kuAAVv*1!bFdzsNm4@i)mwZZ>oIms6nmO!1+EfhTLmE;te5^euQJ< zHN*p3xkK>f&Ip*I=9ve!bYB(`93E4e6De!z2yQ8kta2Mn>%9B^q&6G`ay|+V{XfuY z{vEsl`9i+1%#%M7hT{Ehp0Z~Jqd??^$2Gwh53)>Z(qLrf*-*Aex@z((KQIrYe?^Gg z{{umss2tZv<3Eg<4t;6A_>7j#kpm8Q4&3QluDG@*!#^#1}&mmnmn z4BlmbL=Y+xk1xHhgBaVxXgl@otsr1`d1r0$T#~&B&oxDCI(mJw#Mh-r4LXfNec~kw z16rx^wiYJw%3duWql>eeRe5v&@LqWfB|LJP<;m~58oHWX=dE|BVE~2Y!^UvS>6{*3VZEypT8c79iE>r5& zd63Wc0J(~s=lXLL^ZXHE@XGwJbVNaTtllccKbQ25J=nC`c4*Jzi?+=}Pyv^C~89 z`lGT-hu4;35{F^CVkXZaqJ8;3;Uq`@5)u(hV=!9LG#~1dOkHogY|YOOxSJUDb0$qr z2U6t7EQ`rQ#*nR)Y+YmZoJP!ZS3@H>AKUg0L8guQ$1kp$rcXU(%cMy&Ik4walaIiq zlQ?oc>QE*DU4L^0Buje02Drnq)a4AOO1f8c+y!&DRxNnkPjszz5Ra{Lt#0S{kY2x! z6mYkZ&|jYa5pVZo-cn_wy+InLzM%DS(0zW!=W*3k=?K|smTPp-vE`nuKB%VOH#RY_ zApC~dV)@FB&{FYi#$B`HHPXW>olkM~KsJdaWL6t{1ADHAZ>1_hgo~7pwmN;~vq=PB z;3|<61!v=?1NJuCtnue)P}+e6dzs$ADtP~wXyj=l2n=8#Xw-QE$a2W<@EicnII%RK67{2}1ryOTZx9_Fd&T+?TL*wmbm?^e%-sv$6D5Z}Z3 zct8B`jD>A9IJA<>NO8<`ts7DN!jVMZE$@{*v-12w^Xj`Ir*BG?m2|&AG!llxKLonP z&M$v1UMctx&Tr0-96OVU9M?eWJB`#@waHL%4OnLuIze$sM=BXSzmiW;zBKA;E!o!> zYlJfLp?EmZ`+_S#QN7K#XMbKHl;S#AetKiw6)0S*(QCC z4f+@MuxxF+HT~Vb7f-mEG#NJ^?2aJjaTJ2^J8xm*y|dqk<=(HW%f_B#pH5p9%0AzT zZIxp(%RPiCgC$3Wzv)t>D19&v5ahs@W8Y@itme?h8r_W4d*-NBnT1bYod%|~1vV@k zXlszsal=UwBcWc?l@5pW*OFm$BkWu=j9rJ>I)IGPw+I=7>n2l)goRV$v&Saby9lXc zH#T4u9U9Fo_){cFl|whtcKM-;OZ9fSomMnTaQ%6^wuV+WPw);{FEK%6{)vp*>UZUN zZRSb2>xPdX-IeH#?e0nX^7Z{(a@+e$EP-{iLfKdN#-=w_tf{YF-LYjpC`kn9$?L>@ zs@qCNS(4?uVl}TwG;_l}L7~2zt855CtrOpy^*7jzHzL+)l;lW$1@14Rvo^UopmR)O zq$V9>*|u1i<)Jt;pTluN)!?V|UiYB7&h4iyHt10Xchh#qCJy z>OYXrWz`?dK|eP=WiqkRQ%*RP9@F1~Hxl zvGHw5pA=vkofNtNpV>^;^hDY@J3Snz`c|lR&l8yi9W^shE%j9YbgN%OYJW$kO zCW5on6W8SwrcSVSzqD!^-yX=Dx1Zfb9vgy|#J@?w+Upxh$W~3csgrls-e3(JE45TQ zOg>{)*1qCM=H5N6CVvw8huug5kvc3!GU9ImmNIX@U__rhv^qgronP9Gl8+;rvn`ngLP z7mYXCJ?Yh(bqw#spcMcnOCUn`(0W5V%a`g_C@VFF4Rn-~DMW%I7|ZM8&ad3@!nm{tt?TrqGC+98mS$RZgar&@%MAI z&0WwoWn3=bhZ~{DU*g*3#2&v74u2fYcx%57a12j#!#`9!yyx2Bl+RgxqhNX`2|<}O z7C!ah8dxp2U(5j4H1&;#V+YJMGdI)KlU(Am3g2*a4EOgx7utmUv<}G|YvMA}=O_*f z`;^OX;W&CD6}4!P4^(*u(V}U7l@h57`FREJe$j5y3fnx;=Yj>`^$I(@06njm6=zr*Tv# z;z8LL51LPuqkJ#N4L{4y;)HzqICLrQ-QqqOUI~nTUp|aAwx@JA&Q)ex0p*6?X&ht6 zUcdgq(>Iitl#o9($;&iDmT}#Bs(&A2y1wF`zJoT-jR$OyRT-A z)z3U38wrV~e;0c+S^x9LS2EQL7X84>ec%pdq4vmRXbEh;$Q#NZtvkQ|(BeYIkLLj` zt@(Q{FR|qBo!>9VY!V7KMk$4g(L-SNiJa7wln)DtWE~LbhzRv80Iph%RAU>w5EJGr z+tyZ-6^q|xnXW;}Je}XU63i-ejrA6!yY9))OfOvzClmYaf~!a=IBk1PmhM1RELCm= zpMLFp#16>9qwaW>mpESythX439AB{V%~7T#@M$YuXX$0pnZf5ei3?Q~hQDz9d8IVz zig(b)1w0QjrS7g^Wj*ZeP2r5H3f>m8rOemrL>RRAiGy#bjFOsQwOeQ?KC5Oe=9uuM zBmA%0)fu(!i`?9sA^{*2tR@r{YeZ-tOIA_r?cW!Oi}T7R4)Kz3X4ruo6GQ#G8#yns zbNC`V(l}?5h|$_!p2r!Oc?~s}t9c1%y^{SF9(;=~kB6 z4Q(-tDJj%Xu28zxXfD~2_VP`P6(wLr(Lf&##7UnnJBHHeEc-m6k(`gPU()f0Lmt%pXP z@6RXKCHj-o=T#6r(_Ia7(EN^0N>XG1q( zntmJ&Gi4=4%2l$V+cx{dFx6@EA>GsWxxEBm{LtYg2KM9Fk@`u}*_Q@XYP>U3xeYzK zdI&OKSI$eXlaCg^@?PjlmhHu{&n5A6H_i7hT!E4n4rZ?TAcYv9$siJGB9vnQ|8a)R z`%~4m_z#U|-3S_#t=G&okzLW5MuDT0OX{Uxm}?NQq(!{i{ob<~Kff3YUO&SlricjC zyakk~5lxxk#RAC#3C`-xJt$GSKl$@+<9YR|l1Iw>STH$dxC1Wm+wMcep7Q3+R><)$ zO9K@>Wx)I)&HccQ6~684gO4c-q!=St> z=m_9hR=3oF(lu3{&NC=#{9Ty~4W&O&4-Sryyth~u{aseT2*HoC03G^v>cIY8 zZYH`{d3lE_J%lgv-s3xMOvtX#)uu5y)!yG>aJpRP|LCUu024e3VqB&#M9(sK4aY@$qE-PKY`^$ zUg1S)(gB*eKfgX8aYd;%bdUT)y%U3QJ68)xTh6yNfMN|G*Rh{Fr)$U)*;Ib`Yh`6J za1Mkb&vb&3@!m0+O5)0BE8USJ+3<7~&s8XVzb5Qy+WbSg8b}t;*Bg}C`yuOXHIiqZ zXwBJ1V}9ZDo!{*wukbaPP{2EdWYDTlxvG~0~ZK%|aDGHt*{HE%Z z)!0sFYniFJ)*_TP9GE6I57!nY;h#kox_G?ZI}~>D@kp0>mo?L-eKG;5aKU{eo|Ia0 z>SQ)TJ1{hLs1*)=1o5cG6leMyOl#c3sL#5U{H??^*JQs}#lZxqh(mSx4;O_He!_%H zUi}jT8WtBTfSQIE-{d5dl8CnrFaE;pGSa&`#Iy)%)ABNl6_xgHiFAd#!Dn3_DJTTs zFM(?H&u9Th0REj*R{tZaj1Qdy4t8`iJO^s(zkzO8O8WuY@5B}vkma5kGlOb14)ise zQ=dUM;+<(fqZU74ClaWtfO*h?$^`?I-S8NPgR@GO3)L%IWTnW%ptl|FAfR-~8x;~> zeEalk#VaQAhe2g5*kffvBljkp2UuPr|2RYO2z>?wGAi32>*29;xOu{q-NLRPa{>ZX z1Kibi6v7W`Z_FV1O8`OX7Tn1W3Zm;%2l*9T*%c7^pN^ePQx3fp<+6JbbtnY{{HQ5u KDWdM0`~Md((#@v; From b11b9fd2f6bb82920433b27ca6ccd13d50e9d5c8 Mon Sep 17 00:00:00 2001 From: KasparoVy Date: Thu, 10 Sep 2015 20:20:45 -0400 Subject: [PATCH 06/44] Reformats code for previous commit --- code/modules/clothing/clothing.dm | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/code/modules/clothing/clothing.dm b/code/modules/clothing/clothing.dm index 417117cb65a..f595f557822 100644 --- a/code/modules/clothing/clothing.dm +++ b/code/modules/clothing/clothing.dm @@ -163,6 +163,10 @@ BLIND // can't see anything var/pickpocket = 0 //Master pickpocket? var/clipped = 0 species_restricted = list("exclude","Unathi","Tajaran","Wryn") + species_fit = list("Vox") + sprite_sheets = list( + "Vox" = 'icons/mob/species/vox/gloves.dmi' + ) /obj/item/clothing/gloves/attackby(obj/item/weapon/W, mob/user, params) if(istype(W, /obj/item/weapon/wirecutters)) From 6cd2e27c0b0e7bfa1351213a0047c225120635c3 Mon Sep 17 00:00:00 2001 From: KasparoVy Date: Thu, 10 Sep 2015 20:26:11 -0400 Subject: [PATCH 07/44] Removes Typo --- code/modules/clothing/clothing.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/clothing/clothing.dm b/code/modules/clothing/clothing.dm index f595f557822..45bfdc86367 100644 --- a/code/modules/clothing/clothing.dm +++ b/code/modules/clothing/clothing.dm @@ -310,7 +310,7 @@ BLIND // can't see anything permeability_coefficient = 0.50 slowdown = SHOES_SLOWDOWN - species_restricted = list("exclude","Unathi","Tajaran","Wryn")\ + species_restricted = list("exclude","Unathi","Tajaran","Wryn") species_fit = list("Vox") sprite_sheets = list( "Vox" = 'icons/mob/species/vox/shoes.dmi' From 862bd0f2732b5de50e375253b45bad3242136ec7 Mon Sep 17 00:00:00 2001 From: KasparoVy Date: Thu, 10 Sep 2015 20:50:19 -0400 Subject: [PATCH 08/44] Fixes a Typo w/ the Vox Shoe Sprite 'jacksandal' Renamed from 'jacksandals' to 'jacksandal' in the .dmi. Fixes bug where it used the default black-shoes sprite instead of the jacksandal sprite. --- icons/mob/species/vox/shoes.dmi | Bin 16433 -> 16433 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/icons/mob/species/vox/shoes.dmi b/icons/mob/species/vox/shoes.dmi index ac6c6e7a68ed976159b635e9ca075d0aab38ba51..76984ed3ffc58381387fd22df9ee99cc2ff233de 100644 GIT binary patch delta 372 zcmV-)0gL{zfB~_90gyU>!EVDK5Jb=MSD@saDrs}|rAk!gko^P>`t?0T zYSl}ZBhu5%!0d{RdOv-fuj+U?Hw$ud6jiGZFS}+{+>otm)!S>cvgnM>&qKgw1jItI}i6Z4e<2)siBZg>yWYZ_M7r6kYC(3D8 zP0E@EJSB_rT_6Wa^$Gsqats)j0H#8ASOOSXFFoSmuuAd=txzqHMJQ75vFnLslyQ)& zbU~h=ggRNOXtDRRtY#QdUV>@n$;)C4E_OW?5qzNc6_`iJ7Fpy5%&4%p!N%l?(-+vwsA zL@v|JF3HRGtQk0fce1v2MaJ5Qb;+6c)@>(6VN!KotYLLUeI1w!!vAXD2Rw`VL5~ zy7W9+`t<#0{XTi4-cKLrt2$oJ&4Qd9Mb)aq%dS}!H)N|?_4eAVEIMQJ^N=!RRIOUC zo7Lbrsa74D)yNPqsaEZOf!>3@i&U{LqwHcTQKUR*oTnsm#1M^t9QwreA{W5)L^Qt|yXF#zC&q z1^ERf)X7psi@l#^n_)zG38tARFUuHQ?0PC9_(1O~FprQevd9gXQD?VQ>^xCU+l4+w zQd=BF=mz@U6J@z(jN-n4DwhrE4MkUQW&Gk5>SZ`A2}RL9G? S`38_+E6jv}G_bRt0h2!JlD1+1 From ee8eb6b29885da841553aa48be762b415e1c5a63 Mon Sep 17 00:00:00 2001 From: KasparoVy Date: Thu, 10 Sep 2015 20:52:35 -0400 Subject: [PATCH 09/44] Missed a " --- code/modules/clothing/shoes/miscellaneous.dm | 1 + 1 file changed, 1 insertion(+) diff --git a/code/modules/clothing/shoes/miscellaneous.dm b/code/modules/clothing/shoes/miscellaneous.dm index e630d8f839f..7221e0c069e 100644 --- a/code/modules/clothing/shoes/miscellaneous.dm +++ b/code/modules/clothing/shoes/miscellaneous.dm @@ -74,6 +74,7 @@ name = "jacksandals" desc = "Nanotrasen-issue Security combat sandals for combat scenarios. They're jacksandals, however that works." icon_state = "jacksandal" + _color = "jacksandal" species_restricted = null /obj/item/clothing/shoes/cult From 42095a09ddeca41e05818f1330e85dd3117d1304 Mon Sep 17 00:00:00 2001 From: KasparoVy Date: Thu, 10 Sep 2015 21:10:28 -0400 Subject: [PATCH 10/44] Missed a spot. --- code/modules/clothing/gloves/color.dm | 1 - 1 file changed, 1 deletion(-) diff --git a/code/modules/clothing/gloves/color.dm b/code/modules/clothing/gloves/color.dm index baef9e0ff01..9c364775343 100644 --- a/code/modules/clothing/gloves/color.dm +++ b/code/modules/clothing/gloves/color.dm @@ -72,7 +72,6 @@ icon_state = "rainbow" item_state = "rainbowgloves" _color = "rainbow" - species_fit = list("Vox") clown _color = "clown" From 3e72c4cf8344d311817729638d8977f62a24e806 Mon Sep 17 00:00:00 2001 From: veganzombeh Date: Fri, 11 Sep 2015 11:09:10 +0100 Subject: [PATCH 11/44] Checks and Argument changes --- .../mob/living/simple_animal/hostile/mimic.dm | 14 ++++---------- 1 file changed, 4 insertions(+), 10 deletions(-) diff --git a/code/modules/mob/living/simple_animal/hostile/mimic.dm b/code/modules/mob/living/simple_animal/hostile/mimic.dm index b7a3d10f08d..dd42262bdcd 100644 --- a/code/modules/mob/living/simple_animal/hostile/mimic.dm +++ b/code/modules/mob/living/simple_animal/hostile/mimic.dm @@ -56,7 +56,7 @@ Die() if(2) adjustBruteLoss(50) - ..() + ..(severity) // // Crate Mimic @@ -190,21 +190,15 @@ var/global/list/protected_objects = list(/obj/structure/table, /obj/structure/ca icon_living = icon_state overlays = O.overlays - if(istype(O, /obj/structure)) - health = (anchored * 50) + 50 - destroy_objects = 1 - if(O.density && O.anchored) - knockdown_people = 1 - melee_damage_lower *= 2 - melee_damage_upper *= 2 - else if(istype(O, /obj/machinery)) - is_electronic = 1 + if(istype(O, /obj/structure) || istype(O, /obj/machinery)) health = (anchored * 50) + 50 destroy_objects = 1 if(O.density && O.anchored) knockdown_people = 1 melee_damage_lower *= 2 melee_damage_upper *= 2 + if(istype(O, /obj/machinery)) + is_electronic = 1 else if(istype(O, /obj/item)) var/obj/item/I = O health = 15 * I.w_class From 15fc8144e88aab8963207d40c0d8eb0e0324ec52 Mon Sep 17 00:00:00 2001 From: Fox-McCloud Date: Sat, 12 Sep 2015 03:35:22 -0400 Subject: [PATCH 12/44] Protolathe Materials Refactor --- code/datums/material_container.dm | 34 ++++-- code/game/machinery/autolathe.dm | 2 +- code/game/machinery/recycler.dm | 2 +- code/modules/research/designs.dm | 2 +- code/modules/research/protolathe.dm | 122 ++++---------------- code/modules/research/rdconsole.dm | 172 ++++++++++++---------------- 6 files changed, 124 insertions(+), 210 deletions(-) diff --git a/code/datums/material_container.dm b/code/datums/material_container.dm index 56750520095..6870c3d303b 100644 --- a/code/datums/material_container.dm +++ b/code/datums/material_container.dm @@ -48,10 +48,10 @@ if(amt > 0 && has_space(amt)) var/total_amount_saved = total_amount if(material_type) - for(var/datum/material/M in materials) - if(M.material_type == material_type) - M.amount += amt - total_amount += amt + var/datum/material/M = materials[material_type] + if(M) + M.amount += amt + total_amount += amt else for(var/datum/material/M in materials) M.amount += amt @@ -93,21 +93,21 @@ //For consuming material //mats is a list of types of material to use and the corresponding amounts, example: list(MAT_METAL=100, MAT_GLASS=200) -/datum/material_container/proc/use_amount(list/mats) +/datum/material_container/proc/use_amount(list/mats, multiplier=1) if(!mats || !mats.len) return 0 var/datum/material/M for(var/MAT in materials) M = materials[MAT] - if(M.amount < mats[MAT]) + if(M.amount < (mats[MAT] * multiplier)) return 0 var/total_amount_save = total_amount for(var/MAT in materials) M = materials[MAT] - M.amount -= mats[MAT] - total_amount -= mats[MAT] + M.amount -= mats[MAT] * multiplier + total_amount -= mats[MAT] * multiplier return total_amount_save - total_amount @@ -124,7 +124,9 @@ //For spawning mineral sheets; internal use only /datum/material_container/proc/retrieve(sheet_amt, datum/material/M) - if(sheet_amt > 0 && M.amount >= (sheet_amt * MINERAL_MATERIAL_AMOUNT)) + if(sheet_amt > 0) + if(M.amount < (sheet_amt * MINERAL_MATERIAL_AMOUNT)) + sheet_amt = round(M.amount / MINERAL_MATERIAL_AMOUNT) var/count = 0 while(sheet_amt > MAX_STACK_SIZE) @@ -159,6 +161,17 @@ /datum/material_container/proc/has_space(amt = 0) return (total_amount + amt) <= max_amount +/datum/material_container/proc/has_materials(list/mats, multiplier=1) + if(!mats || !mats.len) + return 0 + + var/datum/material/M + for(var/MAT in mats) + M = materials[MAT] + if(M.amount < (mats[MAT] * multiplier)) + return 0 + return 1 + /datum/material_container/proc/amount2sheet(amt) if(amt >= MINERAL_MATERIAL_AMOUNT) return round(amt / MINERAL_MATERIAL_AMOUNT) @@ -173,9 +186,6 @@ var/datum/material/M = materials[material_type] return M ? M.amount : 0 -/datum/material_container/proc/can_insert(obj/item/I) - return get_item_material_amount(I) - //returns the amount of material relevant to this container; //if this container does not support glass, any glass in 'I' will not be taken into account /datum/material_container/proc/get_item_material_amount(obj/item/I) diff --git a/code/game/machinery/autolathe.dm b/code/game/machinery/autolathe.dm index 69d6df5bb50..9b4e2723185 100644 --- a/code/game/machinery/autolathe.dm +++ b/code/game/machinery/autolathe.dm @@ -121,7 +121,7 @@ if (stat) return 1 - var/material_amount = materials.can_insert(O) + var/material_amount = materials.get_item_material_amount(O) if(!material_amount) user << "This object does not contain sufficient amounts of metal or glass to be accepted by the autolathe." return 1 diff --git a/code/game/machinery/recycler.dm b/code/game/machinery/recycler.dm index 72f4d0bc0d7..0fc00e068c4 100644 --- a/code/game/machinery/recycler.dm +++ b/code/game/machinery/recycler.dm @@ -126,7 +126,7 @@ var/const/SAFETY_COOLDOWN = 100 if(sound) playsound(src.loc, 'sound/items/Welder.ogg', 50, 1) - var/material_amount = materials.can_insert(I) + var/material_amount = materials.get_item_material_amount(I) if(!material_amount) qdel(I) return diff --git a/code/modules/research/designs.dm b/code/modules/research/designs.dm index 3ce13d94677..d625889a71b 100644 --- a/code/modules/research/designs.dm +++ b/code/modules/research/designs.dm @@ -45,7 +45,7 @@ other types of metals and chemistry for reagents). var/build_path = "" //The file path of the object that gets created var/locked = 0 //If true it will spawn inside a lockbox with currently sec access var/category = null //Primarily used for Mech Fabricators, but can be used for anything - + var/reagents //A proc to calculate the reliability of a design based on tech levels and innate modifiers. //Input: A list of /datum/tech; Output: The new reliabilty. diff --git a/code/modules/research/protolathe.dm b/code/modules/research/protolathe.dm index 4d07d25704d..3d0c23ddb44 100644 --- a/code/modules/research/protolathe.dm +++ b/code/modules/research/protolathe.dm @@ -13,15 +13,7 @@ Note: Must be placed west/left of and R&D console to function. icon_state = "protolathe" flags = OPENCONTAINER - var/max_material_storage = 100000 //All this could probably be done better with a list but meh. - var/m_amount = 0.0 - var/g_amount = 0.0 - var/gold_amount = 0.0 - var/silver_amount = 0.0 - var/plasma_amount = 0.0 - var/uranium_amount = 0.0 - var/diamond_amount = 0.0 - var/clown_amount = 0.0 + var/datum/material_container/materials var/efficiency_coeff var/list/categories = list( @@ -49,6 +41,7 @@ Note: Must be placed west/left of and R&D console to function. component_parts += new /obj/item/weapon/stock_parts/manipulator(null) component_parts += new /obj/item/weapon/reagent_containers/glass/beaker/large(null) component_parts += new /obj/item/weapon/reagent_containers/glass/beaker/large(null) + materials = new(src, list(MAT_METAL=1, MAT_GLASS=1, MAT_SILVER=1, MAT_GOLD=1, MAT_DIAMOND=1, MAT_PLASMA=1, MAT_URANIUM=1, MAT_BANANIUM=1)) RefreshParts() reagents.my_atom = src @@ -67,8 +60,9 @@ Note: Must be placed west/left of and R&D console to function. reagents.my_atom = src -/obj/machinery/r_n_d/protolathe/proc/TotalMaterials() //returns the total of all the stored materials. Makes code neater. - return m_amount + g_amount + gold_amount + silver_amount + plasma_amount + uranium_amount + diamond_amount + clown_amount +/obj/machinery/r_n_d/protolathe/Destroy() + qdel(materials) + return ..() /obj/machinery/r_n_d/protolathe/RefreshParts() var/T = 0 @@ -76,33 +70,16 @@ Note: Must be placed west/left of and R&D console to function. G.reagents.trans_to(src, G.reagents.total_volume) for(var/obj/item/weapon/stock_parts/matter_bin/M in component_parts) T += M.rating - max_material_storage = T * 75000 + materials.max_amount = T * 75000 T = 0 for(var/obj/item/weapon/stock_parts/manipulator/M in component_parts) T += (M.rating/3) efficiency_coeff = max(T, 1) /obj/machinery/r_n_d/protolathe/proc/check_mat(datum/design/being_built, var/M) // now returns how many times the item can be built with the material - var/A = 0 - switch(M) - if(MAT_METAL) - A = m_amount - if(MAT_GLASS) - A = g_amount - if(MAT_GOLD) - A = gold_amount - if(MAT_SILVER) - A = silver_amount - if(MAT_PLASMA) - A = plasma_amount - if(MAT_URANIUM) - A = uranium_amount - if(MAT_DIAMOND) - A = diamond_amount - if(MAT_BANANIUM) - A = clown_amount - else - A = reagents.get_reagent_amount(M) + var/A = materials.amount(M) + if(!A) + A = reagents.get_reagent_amount(M) A = A / max(1, (being_built.materials[M]/efficiency_coeff)) return A @@ -128,30 +105,7 @@ Note: Must be placed west/left of and R&D console to function. I.loc = src.loc for(var/obj/item/weapon/reagent_containers/glass/G in component_parts) reagents.trans_to(G, G.reagents.maximum_volume) - if(m_amount >= MINERAL_MATERIAL_AMOUNT) - var/obj/item/stack/sheet/metal/G = new /obj/item/stack/sheet/metal(src.loc) - G.amount = round(m_amount / G.perunit) - if(g_amount >= MINERAL_MATERIAL_AMOUNT) - var/obj/item/stack/sheet/glass/G = new /obj/item/stack/sheet/glass(src.loc) - G.amount = round(g_amount / G.perunit) - if(plasma_amount >= MINERAL_MATERIAL_AMOUNT) - var/obj/item/stack/sheet/mineral/plasma/G = new /obj/item/stack/sheet/mineral/plasma(src.loc) - G.amount = round(plasma_amount / G.perunit) - if(silver_amount >= MINERAL_MATERIAL_AMOUNT) - var/obj/item/stack/sheet/mineral/silver/G = new /obj/item/stack/sheet/mineral/silver(src.loc) - G.amount = round(silver_amount / G.perunit) - if(gold_amount >= MINERAL_MATERIAL_AMOUNT) - var/obj/item/stack/sheet/mineral/gold/G = new /obj/item/stack/sheet/mineral/gold(src.loc) - G.amount = round(gold_amount / G.perunit) - if(uranium_amount >= MINERAL_MATERIAL_AMOUNT) - var/obj/item/stack/sheet/mineral/uranium/G = new /obj/item/stack/sheet/mineral/uranium(src.loc) - G.amount = round(uranium_amount / G.perunit) - if(diamond_amount >= MINERAL_MATERIAL_AMOUNT) - var/obj/item/stack/sheet/mineral/diamond/G = new /obj/item/stack/sheet/mineral/diamond(src.loc) - G.amount = round(diamond_amount / G.perunit) - if(clown_amount >= MINERAL_MATERIAL_AMOUNT) - var/obj/item/stack/sheet/mineral/bananium/G = new /obj/item/stack/sheet/mineral/bananium(src.loc) - G.amount = round(clown_amount / G.perunit) + materials.retrieve_all() default_deconstruction_crowbar(O) return 1 else @@ -167,55 +121,27 @@ Note: Must be placed west/left of and R&D console to function. return 1 if (O.is_open_container()) return - if (!istype(O, /obj/item/stack/sheet) || istype(O, /obj/item/stack/sheet/wood)) - user << "You cannot insert this item into the [src.name]!" - return 1 if (stat) return 1 if(istype(O,/obj/item/stack/sheet)) - var/obj/item/stack/sheet/S = O - if (TotalMaterials() + S.perunit > max_material_storage) + if(!materials.has_space( materials.get_item_material_amount(O) )) user << "The [src.name]'s material bin is full. Please remove material before adding more." return 1 var/obj/item/stack/sheet/stack = O var/amount = round(input("How many sheets do you want to add?") as num)//No decimals - if(!stack || stack.amount <= 0 || amount <= 0) + if(!in_range(src, stack) || !user.Adjacent(src)) return - if(amount > stack.amount) - amount = stack.amount - if(max_material_storage - TotalMaterials() < (amount*stack.perunit))//Can't overfill - amount = min(stack.amount, round((max_material_storage-TotalMaterials())/stack.perunit)) - - icon_state = "protolathe" - busy = 1 - use_power(max(1000, (MINERAL_MATERIAL_AMOUNT*amount/10))) - user << "You add [amount] sheets to the [src.name]." - icon_state = "protolathe" - if(istype(stack, /obj/item/stack/sheet/metal)) - m_amount += amount * MINERAL_MATERIAL_AMOUNT - else if(istype(stack, /obj/item/stack/sheet/glass)) - g_amount += amount * MINERAL_MATERIAL_AMOUNT - else if(istype(stack, /obj/item/stack/sheet/mineral/gold)) - gold_amount += amount * MINERAL_MATERIAL_AMOUNT - else if(istype(stack, /obj/item/stack/sheet/mineral/silver)) - silver_amount += amount * MINERAL_MATERIAL_AMOUNT - else if(istype(stack, /obj/item/stack/sheet/mineral/plasma)) - plasma_amount += amount * MINERAL_MATERIAL_AMOUNT - else if(istype(stack, /obj/item/stack/sheet/mineral/uranium)) - uranium_amount += amount * MINERAL_MATERIAL_AMOUNT - else if(istype(stack, /obj/item/stack/sheet/mineral/diamond)) - diamond_amount += amount * MINERAL_MATERIAL_AMOUNT - else if(istype(stack, /obj/item/stack/sheet/mineral/bananium)) - clown_amount += amount * MINERAL_MATERIAL_AMOUNT - stack.use(amount) - busy = 0 - src.updateUsrDialog() - - if(stack) - var/stackname = stack.name - src.overlays += "protolathe_[stackname]" + var/amount_inserted = materials.insert_stack(O,amount) + if(!amount_inserted) + user << "You could not insert [O], it has no usable materials." + return 1 + else + busy = 1 + use_power(max(1000, (MINERAL_MATERIAL_AMOUNT*amount_inserted/10))) + user << "You add [amount_inserted] sheets to the [src.name]." + overlays += "protolathe_[stack.name]" sleep(10) - src.overlays -= "protolathe_[stackname]" - - return + overlays -= "protolathe_[stack.name]" + busy = 0 + updateUsrDialog() \ No newline at end of file diff --git a/code/modules/research/rdconsole.dm b/code/modules/research/rdconsole.dm index ff498b9f511..db5790d643c 100644 --- a/code/modules/research/rdconsole.dm +++ b/code/modules/research/rdconsole.dm @@ -297,8 +297,8 @@ won't update every console in existence) but it's more of a hassle to do. Also, else //Same design always gain quality screen = 2.3 //Crit fail gives the same design a lot of reliability, like really a lot if(linked_lathe) //Also sends salvaged materials to a linked protolathe, if any. - linked_lathe.m_amount += min((linked_lathe.max_material_storage - linked_lathe.TotalMaterials()), (linked_destroy.loaded_item.materials[MAT_METAL]*(linked_destroy.decon_mod/10))) - linked_lathe.g_amount += min((linked_lathe.max_material_storage - linked_lathe.TotalMaterials()), (linked_destroy.loaded_item.materials[MAT_GLASS]*(linked_destroy.decon_mod/10))) + for(var/material in linked_destroy.loaded_item.materials) + linked_lathe.materials.insert_amount(min((linked_lathe.materials.max_amount - linked_lathe.materials.total_amount), (linked_destroy.loaded_item.materials[material]*(linked_destroy.decon_mod/10))), material) linked_destroy.loaded_item = null else screen = 1.0 @@ -397,33 +397,17 @@ won't update every console in existence) but it's more of a hassle to do. Also, flick("protolathe_n",linked_lathe) use_power(power) - for(var/M in being_built.materials) - if(linked_lathe.check_mat(being_built, M) < amount) - src.visible_message("The [src.name] beeps, \"Not enough materials to complete prototype.\"") - enough_materials = 0 - g2g = 0 - break + var/list/efficient_mats = list() + for(var/MAT in being_built.materials) + efficient_mats[MAT] = being_built.materials[MAT] / coeff + + if(!linked_lathe.materials.has_materials(efficient_mats, amount)) + src.visible_message("The [src.name] beeps, \"Not enough materials to complete prototype.\"") + enough_materials = 0 + g2g = 0 + if(enough_materials) - for(var/M in being_built.materials) - switch(M) - if(MAT_METAL) - linked_lathe.m_amount = max(0, (linked_lathe.m_amount-(being_built.materials[M]/coeff * amount))) - if(MAT_GLASS) - linked_lathe.g_amount = max(0, (linked_lathe.g_amount-(being_built.materials[M]/coeff * amount))) - if(MAT_GOLD) - linked_lathe.gold_amount = max(0, (linked_lathe.gold_amount-(being_built.materials[M]/coeff * amount))) - if(MAT_SILVER) - linked_lathe.silver_amount = max(0, (linked_lathe.silver_amount-(being_built.materials[M]/coeff * amount))) - if(MAT_PLASMA) - linked_lathe.plasma_amount = max(0, (linked_lathe.plasma_amount-(being_built.materials[M]/coeff * amount))) - if(MAT_URANIUM) - linked_lathe.uranium_amount = max(0, (linked_lathe.uranium_amount-(being_built.materials[M]/coeff * amount))) - if(MAT_DIAMOND) - linked_lathe.diamond_amount = max(0, (linked_lathe.diamond_amount-(being_built.materials[M]/coeff * amount))) - if(MAT_BANANIUM) - linked_lathe.clown_amount = max(0, (linked_lathe.clown_amount-(being_built.materials[M]/coeff * amount))) - else - linked_lathe.reagents.remove_reagent(M, being_built.materials[M]/coeff * amount) + linked_lathe.materials.use_amount(efficient_mats, amount) var/P = being_built.build_path //lets save these values before the spawn() just in case. Nobody likes runtimes. var/O = being_built.locked @@ -513,40 +497,26 @@ won't update every console in existence) but it's more of a hassle to do. Also, else if(href_list["lathe_ejectsheet"] && linked_lathe) //Causes the protolathe to eject a sheet of material var/desired_num_sheets = text2num(href_list["lathe_ejectsheet_amt"]) - var/res_amount, type + var/MAT switch(href_list["lathe_ejectsheet"]) if("metal") - type = /obj/item/stack/sheet/metal - res_amount = "m_amount" + MAT = MAT_METAL if("glass") - type = /obj/item/stack/sheet/glass - res_amount = "g_amount" + MAT = MAT_GLASS if("gold") - type = /obj/item/stack/sheet/mineral/gold - res_amount = "gold_amount" + MAT = MAT_GOLD if("silver") - type = /obj/item/stack/sheet/mineral/silver - res_amount = "silver_amount" + MAT = MAT_SILVER if("plasma") - type = /obj/item/stack/sheet/mineral/plasma - res_amount = "plasma_amount" + MAT = MAT_PLASMA if("uranium") - type = /obj/item/stack/sheet/mineral/uranium - res_amount = "uranium_amount" + MAT = MAT_URANIUM if("diamond") - type = /obj/item/stack/sheet/mineral/diamond - res_amount = "diamond_amount" + MAT = MAT_DIAMOND if("clown") - type = /obj/item/stack/sheet/mineral/bananium - res_amount = "clown_amount" - if(ispath(type) && hasvar(linked_lathe, res_amount)) - var/obj/item/stack/sheet/sheet = new type(linked_lathe.loc) - var/available_num_sheets = round(linked_lathe.vars[res_amount]/sheet.perunit) - if(available_num_sheets>0) - sheet.amount = min(available_num_sheets, desired_num_sheets) - linked_lathe.vars[res_amount] = max(0, (linked_lathe.vars[res_amount]-sheet.amount * sheet.perunit)) - else - qdel(sheet) + MAT = MAT_BANANIUM + linked_lathe.materials.retrieve_sheets(desired_num_sheets, MAT) + else if(href_list["imprinter_ejectsheet"] && linked_imprinter) //Causes the protolathe to eject a sheet of material var/desired_num_sheets = text2num(href_list["imprinter_ejectsheet_amt"]) var/res_amount, type @@ -836,7 +806,7 @@ won't update every console in existence) but it's more of a hassle to do. Also, dat += "Material Storage" dat += "Chemical Storage
" dat += "

Protolathe Menu:


" - dat += "Material Amount: [linked_lathe.TotalMaterials()] / [linked_lathe.max_material_storage]
" + dat += "Material Amount: [linked_lathe.materials.total_amount] / [linked_lathe.materials.max_amount]
" dat += "Chemical Volume: [linked_lathe.reagents.total_volume] / [linked_lathe.reagents.maximum_volume]
" dat += "
\ @@ -854,7 +824,7 @@ won't update every console in existence) but it's more of a hassle to do. Also, dat += "Main Menu" dat += "Protolathe Menu" dat += "

Browsing [selected_category]:


" - dat += "Material Amount: [linked_lathe.TotalMaterials()] / [linked_lathe.max_material_storage]
" + dat += "Material Amount: [linked_lathe.materials.total_amount] / [linked_lathe.materials.max_amount]
" dat += "Chemical Volume: [linked_lathe.reagents.total_volume] / [linked_lathe.reagents.maximum_volume]
" var/coeff = linked_lathe.efficiency_coeff @@ -891,7 +861,7 @@ won't update every console in existence) but it's more of a hassle to do. Also, dat += "Main Menu" dat += "Protolathe Menu" dat += "

Search results:


" - dat += "Material Amount: [linked_lathe.TotalMaterials()] / [linked_lathe.max_material_storage]
" + dat += "Material Amount: [linked_lathe.materials.total_amount] / [linked_lathe.materials.max_amount]
" dat += "Chemical Volume: [linked_lathe.reagents.total_volume] / [linked_lathe.reagents.maximum_volume]
" var/coeff = linked_lathe.efficiency_coeff @@ -925,52 +895,60 @@ won't update every console in existence) but it's more of a hassle to do. Also, dat += "Protolathe Menu
" dat += "

Material Storage:



" //Metal - dat += "* [linked_lathe.m_amount] of Metal: " - if(linked_lathe.m_amount >= 3750) dat += "Eject " - if(linked_lathe.m_amount >= 18750) dat += "5x " - if(linked_lathe.m_amount >= 3750) dat += "All" + var/m_amount = linked_lathe.materials.amount(MAT_METAL) + dat += "* [m_amount] of Metal: " + if(m_amount >= MINERAL_MATERIAL_AMOUNT) dat += "Eject " + if(m_amount >= MINERAL_MATERIAL_AMOUNT*5) dat += "5x " + if(m_amount >= MINERAL_MATERIAL_AMOUNT) dat += "All" dat += "
" //Glass - dat += "* [linked_lathe.g_amount] of Glass: " - if(linked_lathe.g_amount >= 3750) dat += "Eject " - if(linked_lathe.g_amount >= 18750) dat += "5x " - if(linked_lathe.g_amount >= 3750) dat += "All" + var/g_amount = linked_lathe.materials.amount(MAT_GLASS) + dat += "* [g_amount] of Glass: " + if(g_amount >= MINERAL_MATERIAL_AMOUNT) dat += "Eject " + if(g_amount >= MINERAL_MATERIAL_AMOUNT*5) dat += "5x " + if(g_amount >= MINERAL_MATERIAL_AMOUNT) dat += "All" dat += "
" //Gold - dat += "* [linked_lathe.gold_amount] of Gold: " - if(linked_lathe.gold_amount >= 2000) dat += "Eject " - if(linked_lathe.gold_amount >= 10000) dat += "5x " - if(linked_lathe.gold_amount >= 2000) dat += "All" + var/gold_amount = linked_lathe.materials.amount(MAT_GOLD) + dat += "* [gold_amount] of Gold: " + if(gold_amount >= MINERAL_MATERIAL_AMOUNT) dat += "Eject " + if(gold_amount >= MINERAL_MATERIAL_AMOUNT*5) dat += "5x " + if(gold_amount >= MINERAL_MATERIAL_AMOUNT) dat += "All" dat += "
" //Silver - dat += "* [linked_lathe.silver_amount] of Silver: " - if(linked_lathe.silver_amount >= 2000) dat += "Eject " - if(linked_lathe.silver_amount >= 10000) dat += "5x " - if(linked_lathe.silver_amount >= 2000) dat += "All" + var/silver_amount = linked_lathe.materials.amount(MAT_SILVER) + dat += "* [silver_amount] of Silver: " + if(silver_amount >= MINERAL_MATERIAL_AMOUNT) dat += "Eject " + if(silver_amount >= MINERAL_MATERIAL_AMOUNT*5) dat += "5x " + if(silver_amount >= MINERAL_MATERIAL_AMOUNT) dat += "All" dat += "
" //Plasma - dat += "* [linked_lathe.plasma_amount] of Solid Plasma: " - if(linked_lathe.plasma_amount >= 2000) dat += "Eject " - if(linked_lathe.plasma_amount >= 10000) dat += "5x " - if(linked_lathe.plasma_amount >= 2000) dat += "All" + var/plasma_amount = linked_lathe.materials.amount(MAT_PLASMA) + dat += "* [plasma_amount] of Solid Plasma: " + if(plasma_amount >= MINERAL_MATERIAL_AMOUNT) dat += "Eject " + if(plasma_amount >= MINERAL_MATERIAL_AMOUNT*5) dat += "5x " + if(plasma_amount >= MINERAL_MATERIAL_AMOUNT) dat += "All" dat += "
" //Uranium - dat += "* [linked_lathe.uranium_amount] of Uranium: " - if(linked_lathe.uranium_amount >= 2000) dat += "Eject " - if(linked_lathe.uranium_amount >= 10000) dat += "5x " - if(linked_lathe.uranium_amount >= 2000) dat += "All" + var/uranium_amount = linked_lathe.materials.amount(MAT_URANIUM) + dat += "* [uranium_amount] of Uranium: " + if(uranium_amount >= MINERAL_MATERIAL_AMOUNT) dat += "Eject " + if(uranium_amount >= MINERAL_MATERIAL_AMOUNT*5) dat += "5x " + if(uranium_amount >= MINERAL_MATERIAL_AMOUNT) dat += "All" dat += "
" //Diamond - dat += "* [linked_lathe.diamond_amount] of Diamond: " - if(linked_lathe.diamond_amount >= 2000) dat += "Eject " - if(linked_lathe.diamond_amount >= 10000) dat += "5x " - if(linked_lathe.diamond_amount >= 2000) dat += "All" + var/diamond_amount = linked_lathe.materials.amount(MAT_DIAMOND) + dat += "* [diamond_amount] of Diamond: " + if(diamond_amount >= MINERAL_MATERIAL_AMOUNT) dat += "Eject " + if(diamond_amount >= MINERAL_MATERIAL_AMOUNT*5) dat += "5x " + if(diamond_amount >= MINERAL_MATERIAL_AMOUNT) dat += "All" dat += "
" //Bananium - dat += "* [linked_lathe.clown_amount] of Bananium: " - if(linked_lathe.clown_amount >= 2000) dat += "Eject " - if(linked_lathe.clown_amount >= 10000) dat += "5x " - if(linked_lathe.clown_amount >= 2000) dat += "All" + var/bananium_amount = linked_lathe.materials.amount(MAT_BANANIUM) + dat += "* [bananium_amount] of Bananium: " + if(bananium_amount >= MINERAL_MATERIAL_AMOUNT) dat += "Eject " + if(bananium_amount >= MINERAL_MATERIAL_AMOUNT*5) dat += "5x " + if(bananium_amount >= MINERAL_MATERIAL_AMOUNT) dat += "All" dat += "
" if(3.3) @@ -1072,21 +1050,21 @@ won't update every console in existence) but it's more of a hassle to do. Also, dat += "

Material Storage:



" //Glass dat += "* [linked_imprinter.g_amount] glass: " - if(linked_imprinter.g_amount >= 3750) dat += "Eject " - if(linked_imprinter.g_amount >= 18750) dat += "5x " - if(linked_imprinter.g_amount >= 3750) dat += "All" + if(linked_imprinter.g_amount >= MINERAL_MATERIAL_AMOUNT) dat += "Eject " + if(linked_imprinter.g_amount >= MINERAL_MATERIAL_AMOUNT*5) dat += "5x " + if(linked_imprinter.g_amount >= MINERAL_MATERIAL_AMOUNT) dat += "All" dat += "
" //Gold dat += "* [linked_imprinter.gold_amount] gold: " - if(linked_imprinter.gold_amount >= 2000) dat += "Eject " - if(linked_imprinter.gold_amount >= 10000) dat += "5x " - if(linked_imprinter.gold_amount >= 2000) dat += "All" + if(linked_imprinter.gold_amount >= MINERAL_MATERIAL_AMOUNT) dat += "Eject " + if(linked_imprinter.gold_amount >= MINERAL_MATERIAL_AMOUNT*5) dat += "5x " + if(linked_imprinter.gold_amount >= MINERAL_MATERIAL_AMOUNT) dat += "All" dat += "
" //Diamond dat += "* [linked_imprinter.diamond_amount] diamond: " - if(linked_imprinter.diamond_amount >= 2000) dat += "Eject " - if(linked_imprinter.diamond_amount >= 10000) dat += "5x " - if(linked_imprinter.diamond_amount >= 2000) dat += "All" + if(linked_imprinter.diamond_amount >= MINERAL_MATERIAL_AMOUNT) dat += "Eject " + if(linked_imprinter.diamond_amount >= MINERAL_MATERIAL_AMOUNT*5) dat += "5x " + if(linked_imprinter.diamond_amount >= MINERAL_MATERIAL_AMOUNT) dat += "All" dat += "
" var/datum/browser/popup = new(user, "rndconsole", name, 700, 550) From ce768eae26a738e55d76baaec0e596b74055ddc9 Mon Sep 17 00:00:00 2001 From: veganzombeh Date: Sat, 12 Sep 2015 16:14:21 +0100 Subject: [PATCH 13/44] pAIs can no longer force people on help intent to pick them up. Apparently, pAIs could force people to pick them up by dragging themselves onto a person on help intent. This adds an alert which makes it a bit more clear what's happening, and requires the person to agree, similar to the give verb. --- code/modules/mob/living/silicon/pai/pai.dm | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/code/modules/mob/living/silicon/pai/pai.dm b/code/modules/mob/living/silicon/pai/pai.dm index 79ead634085..fbe63ccbee8 100644 --- a/code/modules/mob/living/silicon/pai/pai.dm +++ b/code/modules/mob/living/silicon/pai/pai.dm @@ -554,11 +554,14 @@ /mob/living/silicon/pai/MouseDrop(atom/over_object) var/mob/living/carbon/H = over_object if(!istype(H) || !Adjacent(H)) return ..() - if(H.a_intent == I_HELP) - get_scooped(H) - //return - else - return ..() + switch(alert(H,"[src] wants you to pick them up. Do it?",,"Yes","No")) + if("Yes") + if(Adjacent(H)) + get_scooped(H) + else + src << "You need to stay in reaching distance to be picked up." + if("No") + src << "[H] decided not to pick you up." /mob/living/silicon/pai/on_forcemove(atom/newloc) if(card) From bb18efcc08660d9ddc403b26f345b99ed1c2e4a2 Mon Sep 17 00:00:00 2001 From: veganzombeh Date: Sat, 12 Sep 2015 16:30:20 +0100 Subject: [PATCH 14/44] Checks the pAI is the mousedropper. --- code/modules/mob/living/silicon/pai/pai.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/mob/living/silicon/pai/pai.dm b/code/modules/mob/living/silicon/pai/pai.dm index fbe63ccbee8..b03e690f6a4 100644 --- a/code/modules/mob/living/silicon/pai/pai.dm +++ b/code/modules/mob/living/silicon/pai/pai.dm @@ -553,7 +553,7 @@ /mob/living/silicon/pai/MouseDrop(atom/over_object) var/mob/living/carbon/H = over_object - if(!istype(H) || !Adjacent(H)) return ..() + if(!istype(H) || !Adjacent(H) || usr != src) return ..() switch(alert(H,"[src] wants you to pick them up. Do it?",,"Yes","No")) if("Yes") if(Adjacent(H)) From 21d36362b708b63b0d5b5efaa5bf98cb526c2e17 Mon Sep 17 00:00:00 2001 From: veganzombeh Date: Sat, 12 Sep 2015 17:51:15 +0100 Subject: [PATCH 15/44] Fixes non-pAI mousedrop --- code/modules/mob/living/silicon/pai/pai.dm | 26 +++++++++++++--------- 1 file changed, 16 insertions(+), 10 deletions(-) diff --git a/code/modules/mob/living/silicon/pai/pai.dm b/code/modules/mob/living/silicon/pai/pai.dm index b03e690f6a4..7ad2b3f9d71 100644 --- a/code/modules/mob/living/silicon/pai/pai.dm +++ b/code/modules/mob/living/silicon/pai/pai.dm @@ -552,16 +552,22 @@ return H /mob/living/silicon/pai/MouseDrop(atom/over_object) - var/mob/living/carbon/H = over_object - if(!istype(H) || !Adjacent(H) || usr != src) return ..() - switch(alert(H,"[src] wants you to pick them up. Do it?",,"Yes","No")) - if("Yes") - if(Adjacent(H)) - get_scooped(H) - else - src << "You need to stay in reaching distance to be picked up." - if("No") - src << "[H] decided not to pick you up." + var/mob/living/carbon/H = over_object + if(!istype(H) || !Adjacent(H)) return ..() + if(usr == src) + switch(alert(H, "[src] wants you to pick them up. Do it?",,"Yes","No")) + if("Yes") + if(Adjacent(H)) + get_scooped(H) + else + src << "You need to stay in reaching distance to be picked up." + if("No") + src << "[H] decided not to pick you up." + else + if(Adjacent(H)) + get_scooped(H) + else + return ..() /mob/living/silicon/pai/on_forcemove(atom/newloc) if(card) From 54fc3d9aa204dc0d914ca71fb0b56504f1d0ad35 Mon Sep 17 00:00:00 2001 From: Fox-McCloud Date: Sat, 12 Sep 2015 15:59:02 -0400 Subject: [PATCH 16/44] fixes --- code/datums/material_container.dm | 7 ++++++- code/modules/research/protolathe.dm | 16 +++++++++------- 2 files changed, 15 insertions(+), 8 deletions(-) diff --git a/code/datums/material_container.dm b/code/datums/material_container.dm index 6870c3d303b..cf8d3100b05 100644 --- a/code/datums/material_container.dm +++ b/code/datums/material_container.dm @@ -60,9 +60,14 @@ return 0 /datum/material_container/proc/insert_stack(obj/item/stack/S, amt = 0) - if(!amt) + if(amt <= 0) + return 0 + if(amt > S.amount) amt = S.amount var/material_amt = get_item_material_amount(S) + if(!material_amt) + return 0 + amt = min(amt, round(((max_amount - total_amount) / material_amt))) if(!amt) return 0 diff --git a/code/modules/research/protolathe.dm b/code/modules/research/protolathe.dm index 3d0c23ddb44..d4348ffb505 100644 --- a/code/modules/research/protolathe.dm +++ b/code/modules/research/protolathe.dm @@ -123,10 +123,12 @@ Note: Must be placed west/left of and R&D console to function. return if (stat) return 1 - if(istype(O,/obj/item/stack/sheet)) - if(!materials.has_space( materials.get_item_material_amount(O) )) - user << "The [src.name]'s material bin is full. Please remove material before adding more." - return 1 + if(!istype(O,/obj/item/stack/sheet)) + return 1 + + if(!materials.has_space( materials.get_item_material_amount(O) )) + user << "The [src.name]'s material bin is full! Please remove material before adding more." + return 1 var/obj/item/stack/sheet/stack = O var/amount = round(input("How many sheets do you want to add?") as num)//No decimals @@ -134,14 +136,14 @@ Note: Must be placed west/left of and R&D console to function. return var/amount_inserted = materials.insert_stack(O,amount) if(!amount_inserted) - user << "You could not insert [O], it has no usable materials." return 1 else busy = 1 use_power(max(1000, (MINERAL_MATERIAL_AMOUNT*amount_inserted/10))) user << "You add [amount_inserted] sheets to the [src.name]." - overlays += "protolathe_[stack.name]" + var/stackname = stack.name + src.overlays += "protolathe_[stackname]" sleep(10) - overlays -= "protolathe_[stack.name]" + src.overlays -= "protolathe_[stackname]" busy = 0 updateUsrDialog() \ No newline at end of file From 25c35343dcbb88eb08b6b76da2fb12ec345ac01a Mon Sep 17 00:00:00 2001 From: Fox-McCloud Date: Sat, 12 Sep 2015 16:22:39 -0400 Subject: [PATCH 17/44] materials-consitency --- code/__DEFINES/misc.dm | 4 ---- code/game/objects/items/stacks/tiles/plasteel.dm | 2 +- code/game/objects/items/weapons/table_rack_parts.dm | 6 +++--- code/game/objects/items/weapons/weaponry.dm | 2 +- code/modules/mining/mine_items.dm | 2 +- code/modules/research/designs.dm | 2 +- code/modules/research/designs/mechfabricator_designs.dm | 2 +- code/modules/research/designs/mining_designs.dm | 2 +- 8 files changed, 9 insertions(+), 13 deletions(-) diff --git a/code/__DEFINES/misc.dm b/code/__DEFINES/misc.dm index 031c8a12f60..ced91ac0287 100644 --- a/code/__DEFINES/misc.dm +++ b/code/__DEFINES/misc.dm @@ -58,10 +58,6 @@ #define MAX_STACK_AMOUNT_GLASS 50 #define MAX_STACK_AMOUNT_RODS 60 -#define CC_PER_SHEET_METAL 3750 -#define CC_PER_SHEET_GLASS 3750 -#define CC_PER_SHEET_MISC 2000 - //some colors #define COLOR_RED "#FF0000" #define COLOR_GREEN "#00FF00" diff --git a/code/game/objects/items/stacks/tiles/plasteel.dm b/code/game/objects/items/stacks/tiles/plasteel.dm index 5565067505b..d40434a1d6e 100644 --- a/code/game/objects/items/stacks/tiles/plasteel.dm +++ b/code/game/objects/items/stacks/tiles/plasteel.dm @@ -6,7 +6,7 @@ icon_state = "tile" w_class = 3.0 force = 6.0 - materials = list(MAT_METAL=937.5) + materials = list(MAT_METAL=500) throwforce = 10.0 throw_speed = 3 throw_range = 7 diff --git a/code/game/objects/items/weapons/table_rack_parts.dm b/code/game/objects/items/weapons/table_rack_parts.dm index eed1f37ef55..0d26649dbaa 100644 --- a/code/game/objects/items/weapons/table_rack_parts.dm +++ b/code/game/objects/items/weapons/table_rack_parts.dm @@ -12,7 +12,7 @@ gender = PLURAL icon = 'icons/obj/items.dmi' icon_state = "table_parts" - materials = list(MAT_METAL=3750) + materials = list(MAT_METAL=4000) flags = CONDUCT attack_verb = list("slammed", "bashed", "battered", "bludgeoned", "thrashed", "whacked") @@ -21,7 +21,7 @@ desc = "Hard table parts. Well...harder..." icon = 'icons/obj/items.dmi' icon_state = "reinf_tableparts" - materials = list(MAT_METAL=7500) + materials = list(MAT_METAL=8000) flags = CONDUCT /obj/item/weapon/table_parts/wood @@ -42,7 +42,7 @@ icon = 'icons/obj/items.dmi' icon_state = "rack_parts" flags = CONDUCT - materials = list(MAT_METAL=3750) + materials = list(MAT_METAL=2000) /* * Table Parts diff --git a/code/game/objects/items/weapons/weaponry.dm b/code/game/objects/items/weapons/weaponry.dm index 2440e4d05fb..e80dd1d04a1 100644 --- a/code/game/objects/items/weapons/weaponry.dm +++ b/code/game/objects/items/weapons/weaponry.dm @@ -152,7 +152,7 @@ obj/item/weapon/wirerod force = 9 throwforce = 10 w_class = 3 - materials = list(MAT_METAL=1875) + materials = list(MAT_METAL=1000) attack_verb = list("hit", "bludgeoned", "whacked", "bonked") obj/item/weapon/wirerod/attackby(var/obj/item/I, mob/user as mob, params) diff --git a/code/modules/mining/mine_items.dm b/code/modules/mining/mine_items.dm index 1c6aa5a4500..377c66c1b89 100644 --- a/code/modules/mining/mine_items.dm +++ b/code/modules/mining/mine_items.dm @@ -58,7 +58,7 @@ throwforce = 10.0 item_state = "pickaxe" w_class = 4.0 - materials = list(MAT_METAL=3750) //one sheet, but where can you make them? + materials = list(MAT_METAL=2000) //one sheet, but where can you make them? var/digspeed = 40 //moving the delay to an item var so R&D can make improved picks. --NEO origin_tech = "materials=1;engineering=1" attack_verb = list("hit", "pierced", "sliced", "attacked") diff --git a/code/modules/research/designs.dm b/code/modules/research/designs.dm index d625889a71b..febd1a02a1d 100644 --- a/code/modules/research/designs.dm +++ b/code/modules/research/designs.dm @@ -26,7 +26,7 @@ Design Guidlines reliability_mod (starts at 0, gets improved through experimentation). Example: PACMAN generator. 79 base reliablity + 6 tech (3 plasmatech, 3 powerstorage) + 0 (since it's completely new) = 85% reliability. Reliability is the chance it works CORRECTLY. - When adding new designs, check rdreadme.dm to see what kind of things have already been made and where new stuff is needed. -- A single sheet of anything is 3750 units of material. Materials besides metal/glass require help from other jobs (mining for +- A single sheet of anything is 2000 units of material. Materials besides metal/glass require help from other jobs (mining for other types of metals and chemistry for reagents). - Add the AUTOLATHE tag to diff --git a/code/modules/research/designs/mechfabricator_designs.dm b/code/modules/research/designs/mechfabricator_designs.dm index 62acc4f884b..c3d48fdb88e 100644 --- a/code/modules/research/designs/mechfabricator_designs.dm +++ b/code/modules/research/designs/mechfabricator_designs.dm @@ -947,7 +947,7 @@ build_type = MECHFAB build_path = /obj/item/borg/upgrade/ddrill req_tech = list("engineering" = 5, "materials" = 5) - materials = list(MAT_METAL=10000, MAT_DIAMOND=3750) + materials = list(MAT_METAL=10000, MAT_DIAMOND=2000) construction_time = 120 category = list("Cyborg Upgrade Modules") diff --git a/code/modules/research/designs/mining_designs.dm b/code/modules/research/designs/mining_designs.dm index 1fc7a9075b6..9bf221cb5d5 100644 --- a/code/modules/research/designs/mining_designs.dm +++ b/code/modules/research/designs/mining_designs.dm @@ -7,7 +7,7 @@ id = "drill_diamond" req_tech = list("materials" = 6, "powerstorage" = 4, "engineering" = 4) build_type = PROTOLATHE - materials = list(MAT_METAL = 3000, MAT_GLASS = 1000, MAT_DIAMOND = 3750) //Yes, a whole diamond is needed. + materials = list(MAT_METAL = 3000, MAT_GLASS = 1000, MAT_DIAMOND = 2000) //Yes, a whole diamond is needed. reliability = 79 build_path = /obj/item/weapon/pickaxe/drill/diamonddrill category = list("Mining") From 89ead581678eb3528128047d8f021a6c15c9257b Mon Sep 17 00:00:00 2001 From: PJB3005 Date: Sat, 12 Sep 2015 22:51:10 +0200 Subject: [PATCH 18/44] Fixes light sources getting destroyed after their colour changes (no updates in between) leaving artifacts. --- code/modules/lighting/light_source.dm | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/code/modules/lighting/light_source.dm b/code/modules/lighting/light_source.dm index ae9df7bb702..808f4d1dc3a 100644 --- a/code/modules/lighting/light_source.dm +++ b/code/modules/lighting/light_source.dm @@ -11,9 +11,9 @@ var/lum_g var/lum_b - var/tmp/old_lum_r - var/tmp/old_lum_g - var/tmp/old_lum_b + var/tmp/applied_lum_r + var/tmp/applied_lum_g + var/tmp/applied_lum_b var/list/effect_str var/list/effect_turf @@ -107,11 +107,6 @@ if(light_range && light_power && !applied) . = 1 - if(. || source_atom.light_color != light_color)//Save the old lumcounts if we need to update, if the colour changed DO IT BEFORE we parse the colour and LOSE the old lumcounts! - old_lum_r = lum_r - old_lum_g = lum_g - old_lum_b = lum_b - if(source_atom.light_color != light_color) light_color = source_atom.light_color parse_light_color() @@ -149,6 +144,12 @@ /datum/light_source/proc/apply_lum() applied = 1 + + // Cache the applied lum counts. + applied_lum_r = lum_r + applied_lum_g = lum_g + applied_lum_b = lum_b + if(istype(source_turf)) FOR_DVIEW(var/turf/T, light_range, source_turf, INVISIBILITY_LIGHTING) if(T.lighting_overlay) @@ -188,7 +189,7 @@ if(T.lighting_overlay) var/str = effect_str[i] - T.lighting_overlay.update_lumcount(-str * old_lum_r, -str * old_lum_g, -str * old_lum_b) + T.lighting_overlay.update_lumcount(-str * applied_lum_r, -str * applied_lum_g, -str * applied_lum_b) i++ From 61a9a8723256b1f919add67fa13c4cf5368eb897 Mon Sep 17 00:00:00 2001 From: DZD Date: Sat, 12 Sep 2015 19:43:23 -0400 Subject: [PATCH 19/44] Lightning bolt spell progress bar --- code/__HELPERS/unsorted.dm | 8 ++++---- code/datums/spells/lightning.dm | 23 ++++++++++------------- 2 files changed, 14 insertions(+), 17 deletions(-) diff --git a/code/__HELPERS/unsorted.dm b/code/__HELPERS/unsorted.dm index d399cd3de67..968e80da2f2 100644 --- a/code/__HELPERS/unsorted.dm +++ b/code/__HELPERS/unsorted.dm @@ -321,8 +321,8 @@ Turf and target are seperate in case you want to teleport some distance from a t //Ensure the frequency is within bounds of what it should be sending/recieving at /proc/sanitize_frequency(var/f, var/low = PUBLIC_LOW_FREQ, var/high = PUBLIC_HIGH_FREQ) f = round(f) - f = max(low, f) - f = min(high, f) + f = max(low, f) + f = min(high, f) if ((f % 2) == 0) //Ensure the last digit is an odd number f += 1 return f @@ -778,7 +778,7 @@ proc/anim(turf/location as turf,target as mob|obj,a_icon,a_icon_state as text,fl else return get_step(ref, base_dir) -/proc/do_mob(var/mob/user , var/mob/target, var/time = 30, numticks = 5, var/stealth = 0) //This is quite an ugly solution but i refuse to use the old request system. +/proc/do_mob(var/mob/user , var/mob/target, var/time = 30, numticks = 5, var/uninterruptible = 0) //This is quite an ugly solution but i refuse to use the old request system. if(!user || !target) return 0 if(numticks == 0) @@ -797,7 +797,7 @@ proc/anim(turf/location as turf,target as mob|obj,a_icon,a_icon_state as text,fl if(user && user.client) user.client.images -= progbar return 0 - if ( user.loc != user_loc || target.loc != target_loc || user.get_active_hand() != holding || user.stat || user.stunned || user.weakened || user.paralysis || user.lying) + if (!uninterruptible && (user.loc != user_loc || target.loc != target_loc || user.get_active_hand() != holding || user.stat || user.stunned || user.weakened || user.paralysis || user.lying)) if(user && user.client) user.client.images -= progbar return 0 diff --git a/code/datums/spells/lightning.dm b/code/datums/spells/lightning.dm index ee2431f0f64..af331645970 100644 --- a/code/datums/spells/lightning.dm +++ b/code/datums/spells/lightning.dm @@ -10,7 +10,7 @@ cooldown_min = 30 selection_type = "view" random_target = 1 - var/energy = 0 + var/start_time = 0 var/ready = 0 var/image/halo = null action_icon_state = "lightning" @@ -20,11 +20,11 @@ invocation_type = "none" /obj/effect/proc_holder/spell/targeted/lightning/Click() - if(!ready) + if(!ready && start_time==0) if(cast_check()) StartChargeup() else - if(cast_check(skipcharge=1)) + if(ready && cast_check(skipcharge=1)) choose_targets() return 1 @@ -33,16 +33,14 @@ user << "You start gathering the power." halo = image("icon"='icons/effects/effects.dmi',"icon_state" ="electricity","layer" = EFFECTS_LAYER) user.overlays.Add(halo) - spawn(0) - while(ready) - sleep(1) - energy++ - if(energy >= 100 && ready) - Discharge() + start_time = world.time + if(do_mob(user,user,100,uninterruptible=1)) + if(ready) + Discharge() obj/effect/proc_holder/spell/targeted/lightning/proc/Reset(mob/user = usr) ready = 0 - energy = 0 + start_time = 0 if(halo) user.overlays.Remove(halo) @@ -53,16 +51,14 @@ obj/effect/proc_holder/spell/targeted/lightning/proc/Reset(mob/user = usr) /obj/effect/proc_holder/spell/targeted/lightning/proc/Discharge(mob/user = usr) var/mob/living/M = user - //M.electrocute_act(25,"Lightning Bolt") M << "You lose control over the spell." Reset(user) start_recharge() /obj/effect/proc_holder/spell/targeted/lightning/cast(list/targets, mob/user = usr) - + ready = 0 var/mob/living/carbon/target = targets[1] - if(get_dist(user,target)>range) user << "They are too far away!" Reset(user) @@ -70,6 +66,7 @@ obj/effect/proc_holder/spell/targeted/lightning/proc/Reset(mob/user = usr) user.Beam(target,icon_state="lightning",icon='icons/effects/effects.dmi',time=5) + var/energy = min(world.time - start_time,100) Bolt(user,target,max(15,energy/2),5,user) //5 bounces for energy/2 burn Reset(user) From 9886775a613b0d0aee601defb1f52eaeed02fb34 Mon Sep 17 00:00:00 2001 From: Aurorablade Date: Sun, 13 Sep 2015 00:06:30 -0400 Subject: [PATCH 20/44] typo fix --- .../mob/new_player/sprite_accessories.dm | 34 +++++++++---------- 1 file changed, 17 insertions(+), 17 deletions(-) diff --git a/code/modules/mob/new_player/sprite_accessories.dm b/code/modules/mob/new_player/sprite_accessories.dm index 5a27db7e008..febe62ba4e8 100644 --- a/code/modules/mob/new_player/sprite_accessories.dm +++ b/code/modules/mob/new_player/sprite_accessories.dm @@ -1272,118 +1272,118 @@ name = "Nude" icon_state = null gender = NEUTER - species_allowed = list("Human","Unathi","Diona","Grey","Machine","Tajaran","Vulpakanin","Slime People","Skellington","Vox") + species_allowed = list("Human","Unathi","Diona","Grey","Machine","Tajaran","Vulpkanin","Slime People","Skellington","Vox") /datum/sprite_accessory/socks/white_norm name = "Normal White" icon_state = "white_norm" gender = NEUTER - species_allowed = list("Human","Unathi","Diona","Grey","Machine","Tajaran","Vulpakanin","Slime People","Skellington") + species_allowed = list("Human","Unathi","Diona","Grey","Machine","Tajaran","Vulpkanin","Slime People","Skellington") /datum/sprite_accessory/socks/black_norm name = "Normal Black" icon_state = "black_norm" gender = NEUTER - species_allowed = list("Human","Unathi","Diona","Grey","Machine","Tajaran","Vulpakanin","Slime People","Skellington") + species_allowed = list("Human","Unathi","Diona","Grey","Machine","Tajaran","Vulpkanin","Slime People","Skellington") /datum/sprite_accessory/socks/white_short name = "Short White" icon_state = "white_short" gender = NEUTER - species_allowed = list("Human","Unathi","Diona","Grey","Machine","Tajaran","Vulpakanin","Slime People","Skellington") + species_allowed = list("Human","Unathi","Diona","Grey","Machine","Tajaran","Vulpkanin","Slime People","Skellington") /datum/sprite_accessory/socks/black_short name = "Short Black" icon_state = "black_short" gender = NEUTER - species_allowed = list("Human","Unathi","Diona","Grey","Machine","Tajaran","Vulpakanin","Slime People","Skellington") + species_allowed = list("Human","Unathi","Diona","Grey","Machine","Tajaran","Vulpkanin","Slime People","Skellington") /datum/sprite_accessory/socks/white_knee name = "Knee-high White" icon_state = "white_knee" gender = NEUTER - species_allowed = list("Human","Unathi","Diona","Grey","Machine","Tajaran","Vulpakanin","Slime People","Skellington") + species_allowed = list("Human","Unathi","Diona","Grey","Machine","Tajaran","Vulpkanin","Slime People","Skellington") /datum/sprite_accessory/socks/black_knee name = "Knee-high Black" icon_state = "black_knee" gender = NEUTER - species_allowed = list("Human","Unathi","Diona","Grey","Machine","Tajaran","Vulpakanin","Slime People","Skellington") + species_allowed = list("Human","Unathi","Diona","Grey","Machine","Tajaran","Vulpkanin","Slime People","Skellington") /datum/sprite_accessory/socks/thin_knee name = "Knee-high Thin" icon_state = "thin_knee" gender = FEMALE - species_allowed = list("Human","Unathi","Diona","Grey","Machine","Tajaran","Vulpakanin","Slime People","Skellington") + species_allowed = list("Human","Unathi","Diona","Grey","Machine","Tajaran","Vulpkanin","Slime People","Skellington") /datum/sprite_accessory/socks/striped_knee name = "Knee-high Striped" icon_state = "striped_knee" gender = NEUTER - species_allowed = list("Human","Unathi","Diona","Grey","Machine","Tajaran","Vulpakanin","Slime People","Skellington") + species_allowed = list("Human","Unathi","Diona","Grey","Machine","Tajaran","Vulpkanin","Slime People","Skellington") /datum/sprite_accessory/socks/rainbow_knee name = "Knee-high Rainbow" icon_state = "rainbow_knee" gender = NEUTER - species_allowed = list("Human","Unathi","Diona","Grey","Machine","Tajaran","Vulpakanin","Slime People","Skellington") + species_allowed = list("Human","Unathi","Diona","Grey","Machine","Tajaran","Vulpkanin","Slime People","Skellington") /datum/sprite_accessory/socks/white_thigh name = "Thigh-high White" icon_state = "white_thigh" gender = NEUTER - species_allowed = list("Human","Unathi","Diona","Grey","Machine","Tajaran","Vulpakanin","Slime People","Skellington") + species_allowed = list("Human","Unathi","Diona","Grey","Machine","Tajaran","Vulpkanin","Slime People","Skellington") /datum/sprite_accessory/socks/black_thigh name = "Thigh-high Black" icon_state = "black_thigh" gender = NEUTER - species_allowed = list("Human","Unathi","Diona","Grey","Machine","Tajaran","Vulpakanin","Slime People","Skellington") + species_allowed = list("Human","Unathi","Diona","Grey","Machine","Tajaran","Vulpkanin","Slime People","Skellington") /datum/sprite_accessory/socks/thin_thigh name = "Thigh-high Thin" icon_state = "thin_thigh" gender = FEMALE - species_allowed = list("Human","Unathi","Diona","Grey","Machine","Tajaran","Vulpakanin","Slime People","Skellington") + species_allowed = list("Human","Unathi","Diona","Grey","Machine","Tajaran","Vulpkanin","Slime People","Skellington") /datum/sprite_accessory/socks/striped_thigh name = "Thigh-high Striped" icon_state = "striped_thigh" gender = NEUTER - species_allowed = list("Human","Unathi","Diona","Grey","Machine","Tajaran","Vulpakanin","Slime People","Skellington") + species_allowed = list("Human","Unathi","Diona","Grey","Machine","Tajaran","Vulpkanin","Slime People","Skellington") /datum/sprite_accessory/socks/rainbow_thigh name = "Thigh-high Rainbow" icon_state = "rainbow_thigh" gender = NEUTER - species_allowed = list("Human","Unathi","Diona","Grey","Machine","Tajaran","Vulpakanin","Slime People","Skellington") + species_allowed = list("Human","Unathi","Diona","Grey","Machine","Tajaran","Vulpkanin","Slime People","Skellington") /datum/sprite_accessory/socks/pantyhose name = "Pantyhose" icon_state = "pantyhose" gender = FEMALE - species_allowed = list("Human","Unathi","Diona","Grey","Machine","Tajaran","Vulpakanin","Slime People","Skellington") + species_allowed = list("Human","Unathi","Diona","Grey","Machine","Tajaran","Vulpkanin","Slime People","Skellington") /datum/sprite_accessory/socks/black_fishnet name = "Black Fishnet" icon_state = "black_fishnet" gender = NEUTER - species_allowed = list("Human","Unathi","Diona","Grey","Machine","Tajaran","Vulpakanin","Slime People","Skellington") + species_allowed = list("Human","Unathi","Diona","Grey","Machine","Tajaran","Vulpkanin","Slime People","Skellington") /datum/sprite_accessory/socks/vox_white name = "Vox White" From f68518e3c143b650fb6e835fbf5451345b456182 Mon Sep 17 00:00:00 2001 From: Fox-McCloud Date: Sun, 13 Sep 2015 01:59:13 -0400 Subject: [PATCH 21/44] Table Rack Destruction --- code/game/objects/structures/tables_racks.dm | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/code/game/objects/structures/tables_racks.dm b/code/game/objects/structures/tables_racks.dm index 7c973eed7ec..0f10a583e06 100644 --- a/code/game/objects/structures/tables_racks.dm +++ b/code/game/objects/structures/tables_racks.dm @@ -848,6 +848,7 @@ anchored = 1.0 throwpass = 1 //You can throw objects over this, despite it's density. var/parts = /obj/item/weapon/rack_parts + var/health = 5 /obj/structure/rack/proc/destroy() new parts(loc) @@ -914,6 +915,14 @@ visible_message("[user] smashes [src] apart!") user.say(pick(";RAAAAAAAARGH!", ";HNNNNNNNNNGGGGGGH!", ";GWAAAAAAAARRRHHH!", "NNNNNNNNGGGGGGGGHH!", ";AAAAAAARRRGH!" )) destroy() + else + user.changeNext_move(CLICK_CD_MELEE) + user.do_attack_animation(src) + playsound(loc, 'sound/items/dodgeball.ogg', 80, 1) + user.visible_message("[user] kicks [src].", \ + "You kick [src].") + health -= rand(1,2) + healthcheck() /obj/structure/rack/mech_melee_attack(obj/mecha/M) visible_message("[M] smashes [src] apart!") @@ -933,3 +942,7 @@ /obj/structure/rack/attack_tk() // no telehulk sorry return + +/obj/structure/rack/proc/healthcheck() + if(health <= 0) + destroy() \ No newline at end of file From 3689ce807723961325d0be58a5102a5565b69e4d Mon Sep 17 00:00:00 2001 From: M3hillus Date: Sun, 13 Sep 2015 01:46:36 -0500 Subject: [PATCH 22/44] Mining Outpost Remap v1.1 --- _maps/map_files/cyberiad/z5.dmm | 518 +++++++++++++++++--------------- 1 file changed, 283 insertions(+), 235 deletions(-) diff --git a/_maps/map_files/cyberiad/z5.dmm b/_maps/map_files/cyberiad/z5.dmm index 560dc3ac26b..6c383d087eb 100644 --- a/_maps/map_files/cyberiad/z5.dmm +++ b/_maps/map_files/cyberiad/z5.dmm @@ -1160,7 +1160,7 @@ "wp" = (/obj/machinery/camera{c_tag = "Mining Outpost West Outpost Mech Recharge Station"; dir = 1; network = list("Mining Outpost")},/turf/simulated/floor/mech_bay_recharge_floor{icon_state = "recharge_floor_asteroid"},/area/mine/west_outpost) "wq" = (/obj/machinery/computer/mech_bay_power_console,/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/airless{dir = 5; icon_state = "asteroidfloor"; tag = "icon-asteroidfloor"},/area/mine/west_outpost) "wr" = (/obj/structure/disposalpipe/segment,/obj/structure/sign/deathsposal,/turf/simulated/wall,/area/mine/living_quarters) -"ws" = (/obj/structure/table/reinforced,/obj/item/weapon/stock_parts/cell/high{charge = 100; maxcharge = 15000},/obj/item/weapon/stock_parts/cell/high{charge = 100; maxcharge = 15000},/turf/simulated/floor/airless{icon_state = "asteroidwarning"; dir = 8},/area/mine/explored) +"ws" = (/obj/structure/table/reinforced,/turf/simulated/floor/airless{icon_state = "asteroidwarning"; dir = 8},/area/mine/explored) "wt" = (/turf/simulated/floor/airless{dir = 5; icon_state = "asteroidfloor"},/area/mine/explored) "wu" = (/turf/simulated/floor/airless{icon_state = "asteroidwarning"; dir = 4},/area/mine/explored) "wv" = (/turf/simulated/wall,/area/mine/west_outpost) @@ -1235,8 +1235,8 @@ "xM" = (/obj/machinery/camera{c_tag = "Mining Outpost Storage Room"; dir = 1; network = list("Mining Outpost")},/turf/simulated/floor,/area/mine/living_quarters) "xN" = (/obj/machinery/light_switch{pixel_y = -25},/turf/simulated/floor,/area/mine/living_quarters) "xO" = (/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor,/area/mine/living_quarters) -"xP" = (/turf/simulated/wall,/area/mine/production) -"xQ" = (/obj/effect/spawner/window/reinforced,/obj/machinery/door/firedoor{dir = 2},/turf/simulated/floor/plating,/area/mine/production) +"xP" = (/turf/simulated/wall,/area/mine/lobby) +"xQ" = (/obj/effect/spawner/window/reinforced,/obj/machinery/door/firedoor{dir = 2},/turf/simulated/floor/plating,/area/mine/lobby) "xR" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 6},/obj/machinery/camera{c_tag = "Mining Outpost EVA"; dir = 4; network = list("Mining Outpost")},/obj/machinery/light_switch{pixel_x = -23; pixel_y = 0},/obj/machinery/hologram/holopad,/turf/simulated/floor,/area/mine/eva) "xS" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4; level = 1},/turf/simulated/floor,/area/mine/eva) "xT" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 8; on = 1},/turf/simulated/floor,/area/mine/eva) @@ -1252,9 +1252,9 @@ "yd" = (/obj/effect/spawner/window/reinforced,/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor/plating,/area/mine/living_quarters) "ye" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/door/firedoor{dir = 4; name = "Firelock"},/obj/machinery/door/airlock/glass{name = "Crew Area"; req_access_txt = "48"},/turf/simulated/floor,/area/mine/living_quarters) "yf" = (/obj/machinery/atmospherics/pipe/simple/hidden,/obj/machinery/door/firedoor{dir = 4; name = "Firelock"},/obj/machinery/door/airlock/mining{name = "Mining Station Storage"; req_access_txt = "48"},/turf/simulated/floor,/area/mine/living_quarters) -"yg" = (/obj/machinery/alarm{pixel_y = 24},/obj/machinery/portable_atmospherics/scrubber,/obj/machinery/camera{c_tag = "Mining Outpost Starboard Connector"; network = list("Mining Outpost")},/turf/simulated/floor,/area/mine/production) -"yh" = (/turf/simulated/floor,/area/mine/production) -"yi" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 6},/turf/simulated/floor,/area/mine/production) +"yg" = (/obj/machinery/alarm{pixel_y = 24},/obj/machinery/portable_atmospherics/scrubber,/obj/machinery/camera{c_tag = "Mining Outpost Starboard Connector"; network = list("Mining Outpost")},/turf/simulated/floor,/area/mine/lobby) +"yh" = (/turf/simulated/floor,/area/mine/lobby) +"yi" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 6},/turf/simulated/floor,/area/mine/lobby) "yj" = (/obj/effect/spawner/window/reinforced,/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4; level = 1},/turf/simulated/floor/plating,/area/mine/eva) "yk" = (/obj/structure/table,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 9; icon_state = "intact"},/obj/item/device/gps/mining{gpstag = "MINE2"},/obj/item/device/gps/mining{gpstag = "MINE1"},/obj/item/device/gps/mining,/obj/item/weapon/storage/toolbox/mechanical{pixel_x = -2; pixel_y = -3},/turf/simulated/floor,/area/mine/eva) "yl" = (/turf/simulated/floor,/area/mine/eva) @@ -1285,188 +1285,236 @@ "yK" = (/obj/machinery/status_display{layer = 4; pixel_x = 0; pixel_y = 32},/turf/simulated/floor,/area/mine/living_quarters) "yL" = (/obj/machinery/firealarm{dir = 2; pixel_y = 24},/turf/simulated/floor,/area/mine/living_quarters) "yM" = (/turf/simulated/floor{dir = 5; icon_state = "warning"},/area/mine/living_quarters) -"yN" = (/obj/structure/window/reinforced,/obj/structure/lattice,/turf/space,/area/mine/living_quarters) -"yO" = (/obj/structure/window/reinforced,/obj/structure/lattice,/turf/space,/area/mine/production) -"yP" = (/turf/simulated/floor{dir = 9; icon_state = "warning"},/area/mine/production) -"yQ" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/turf/simulated/floor,/area/mine/production) -"yR" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor,/area/mine/production) -"yS" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/obj/machinery/door/firedoor{dir = 4; name = "Firelock"},/obj/machinery/door/airlock/glass_mining{name = "Mining Station EVA"; req_access_txt = "54"},/turf/simulated/floor,/area/mine/eva) -"yT" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/simulated/floor,/area/mine/eva) -"yU" = (/obj/machinery/access_button{command = "cycle_interior"; frequency = 1379; master_tag = "mining_east_airlock"; name = "interior access button"; pixel_x = 25; pixel_y = 25; req_access_txt = null},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 5; icon_state = "intact"},/turf/simulated/floor,/area/mine/eva) -"yV" = (/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "mining_east_inner"; locked = 1; name = "Mining External Access"; req_access = null; req_access_txt = null},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor,/area/mine/eva) -"yW" = (/obj/machinery/atmospherics/pipe/manifold4w/hidden,/turf/simulated/floor,/area/mine/eva) -"yX" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 4},/turf/simulated/floor{dir = 4; icon_state = "warning"},/area/mine/eva) -"yY" = (/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "mining_east_outer"; locked = 1; name = "Mining External Access"; req_access = null; req_access_txt = null},/turf/simulated/floor/plating,/area/mine/eva) -"yZ" = (/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "mining_east_airlock"; name = "exterior access button"; pixel_x = -25; pixel_y = -25; req_access_txt = null},/turf/simulated/floor/airless{tag = "icon-asteroidwarning (EAST)"; icon_state = "asteroidwarning"; dir = 4},/area/mine/explored) -"za" = (/obj/machinery/atmospherics/pipe/simple/visible/universal,/turf/simulated/wall,/area/mine/west_outpost) -"zb" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"},/turf/simulated/wall,/area/mine/west_outpost) -"zc" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/machinery/door/firedoor{dir = 4; name = "Firelock"},/obj/machinery/door/airlock/maintenance{name = "Mining Station Maintenance"; req_access_txt = "54"},/turf/simulated/floor/plating,/area/mine/west_outpost) -"zd" = (/obj/machinery/conveyor{backwards = 2; dir = 2; forwards = 1; id = "mining_west"},/obj/structure/plasticflaps/mining,/turf/simulated/floor,/area/mine/west_outpost) -"ze" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/turf/simulated/floor,/area/mine/living_quarters) -"zf" = (/obj/machinery/atmospherics/pipe/simple/hidden,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor,/area/mine/living_quarters) -"zg" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor,/area/mine/living_quarters) -"zh" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/machinery/hologram/holopad,/turf/simulated/floor,/area/mine/living_quarters) -"zi" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/turf/simulated/floor,/area/mine/living_quarters) -"zj" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor,/area/mine/living_quarters) -"zk" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/simulated/floor,/area/mine/living_quarters) -"zl" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/turf/simulated/floor{dir = 4; icon_state = "warning"},/area/mine/living_quarters) -"zm" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/obj/machinery/door/firedoor{dir = 4; name = "Firelock"},/obj/machinery/door/airlock/glass_mining{name = "Mining Station Bridge"; req_access_txt = "48"},/turf/simulated/floor,/area/mine/living_quarters) -"zn" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/turf/simulated/floor,/area/mine/living_quarters) -"zo" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/turf/simulated/floor,/area/mine/production) -"zp" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/obj/machinery/door/firedoor{dir = 4; name = "Firelock"},/obj/machinery/door/airlock/glass_mining{name = "Mining Station Bridge"; req_access_txt = "48"},/turf/simulated/floor,/area/mine/production) -"zq" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/turf/simulated/floor,/area/mine/production) -"zr" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/turf/simulated/floor{dir = 8; icon_state = "warning"},/area/mine/production) -"zs" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/turf/simulated/floor,/area/mine/production) -"zt" = (/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor,/area/mine/production) -"zu" = (/obj/effect/spawner/window/reinforced,/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating,/area/mine/eva) -"zv" = (/obj/machinery/power/apc{dir = 2; name = "Mining EVA APC"; pixel_x = 1; pixel_y = -23},/obj/structure/cable,/obj/machinery/vending/eva,/turf/simulated/floor,/area/mine/eva) -"zw" = (/obj/machinery/mech_bay_recharge_port,/obj/machinery/light/small,/turf/simulated/floor/plating,/area/mine/eva) -"zx" = (/turf/simulated/floor/mech_bay_recharge_floor,/area/mine/eva) -"zy" = (/obj/machinery/computer/mech_bay_power_console,/turf/simulated/floor,/area/mine/eva) -"zz" = (/obj/machinery/embedded_controller/radio/airlock/airlock_controller{tag_airpump = "mining_east_pump"; tag_exterior_door = "mining_east_outer"; frequency = 1379; id_tag = "mining_east_airlock"; tag_interior_door = "mining_east_inner"; pixel_x = 0; pixel_y = -25; req_access_txt = null; tag_chamber_sensor = "mining_east_sensor"},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 1; frequency = 1379; id_tag = "mining_east_pump"},/turf/simulated/floor,/area/mine/eva) -"zA" = (/obj/machinery/camera{c_tag = "Mining Outpost Starboard External Airlock"; dir = 1; network = list("Mining Outpost")},/obj/machinery/airlock_sensor{frequency = 1379; id_tag = "mining_east_sensor"; pixel_x = 0; pixel_y = -25},/obj/structure/ore_box,/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 1; frequency = 1379; id_tag = "mining_east_pump"},/turf/simulated/floor{dir = 4; icon_state = "warning"},/area/mine/eva) -"zB" = (/obj/machinery/meter,/obj/machinery/firealarm{dir = 2; pixel_y = 24},/obj/machinery/atmospherics/pipe/simple/visible,/turf/simulated/floor/plating,/area/mine/west_outpost) -"zC" = (/obj/machinery/portable_atmospherics/canister/oxygen,/turf/simulated/floor/plating,/area/mine/west_outpost) -"zD" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/turf/simulated/floor/plating,/area/mine/west_outpost) -"zE" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/item/weapon/storage/box/lights/bulbs,/obj/structure/extinguisher_cabinet{pixel_x = -5; pixel_y = 30},/obj/machinery/light_switch{pixel_x = 6; pixel_y = 23},/turf/simulated/floor/plating,/area/mine/west_outpost) -"zF" = (/turf/simulated/floor/airless{tag = "icon-asteroidwarning (NORTH)"; icon_state = "asteroidwarning"; dir = 1},/area/mine/explored) -"zG" = (/obj/machinery/conveyor_switch{id = "mining_west"},/obj/machinery/light/small{dir = 1},/turf/simulated/floor/airless{tag = "icon-asteroidwarning (NORTH)"; icon_state = "asteroidwarning"; dir = 1},/area/mine/explored) -"zH" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 8},/turf/simulated/floor,/area/mine/living_quarters) -"zI" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4; level = 1},/turf/simulated/floor,/area/mine/living_quarters) -"zJ" = (/obj/machinery/atmospherics/pipe/manifold/hidden,/turf/simulated/floor,/area/mine/living_quarters) -"zK" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4; level = 1},/turf/simulated/floor,/area/mine/living_quarters) -"zL" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 1},/turf/simulated/floor,/area/mine/living_quarters) -"zM" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4; level = 1},/obj/machinery/light,/turf/simulated/floor,/area/mine/living_quarters) -"zN" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4; level = 1},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/access_button{command = "cycle_interior"; frequency = 1379; master_tag = "mining_west_airlock"; name = "interior access button"; pixel_x = -25; pixel_y = -25; req_access_txt = null},/turf/simulated/floor,/area/mine/living_quarters) -"zO" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4; level = 1},/obj/machinery/camera{c_tag = "Mining Outpost Port Connector"; dir = 1; network = list("Mining Outpost")},/obj/machinery/light_switch{pixel_y = -25},/turf/simulated/floor{dir = 6; icon_state = "warning"},/area/mine/living_quarters) -"zP" = (/obj/effect/spawner/window/reinforced,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4; level = 1},/obj/machinery/door/firedoor{dir = 2},/turf/simulated/floor/plating,/area/mine/living_quarters) -"zQ" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4; level = 1},/turf/space,/area/mine/living_quarters) -"zR" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4; level = 1},/turf/space,/area/mine/production) -"zS" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4; level = 1},/obj/machinery/light{dir = 4},/turf/space,/area/mine/production) -"zT" = (/obj/effect/spawner/window/reinforced,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4; level = 1},/obj/machinery/door/firedoor{dir = 2},/turf/simulated/floor/plating,/area/mine/production) -"zU" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4; level = 1},/turf/simulated/floor{dir = 10; icon_state = "warning"},/area/mine/production) -"zV" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4; level = 1},/turf/simulated/floor,/area/mine/production) -"zW" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4; level = 1},/turf/simulated/floor,/area/mine/production) -"zX" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 4},/turf/simulated/floor,/area/mine/production) -"zY" = (/obj/structure/disposalpipe/segment,/turf/simulated/wall,/area/mine/production) -"zZ" = (/obj/machinery/camera{c_tag = "Mining Outpost Production Line External"; dir = 4; network = list("Mining Outpost")},/obj/machinery/light/small{dir = 8},/turf/simulated/floor/airless{tag = "icon-asteroidwarning"; icon_state = "asteroidwarning"; dir = 2},/area/mine/explored) -"Aa" = (/turf/simulated/floor/airless{tag = "icon-asteroidwarning"; icon_state = "asteroidwarning"; dir = 2},/area/mine/explored) -"Ab" = (/obj/machinery/conveyor_switch{id = "mining_external"},/turf/simulated/floor/airless{tag = "icon-asteroidwarning"; icon_state = "asteroidwarning"; dir = 2},/area/mine/production) -"Ac" = (/obj/machinery/atmospherics/pipe/tank/air{dir = 1; initialize_directions = 0; level = 1},/turf/simulated/floor/plating,/area/mine/west_outpost) -"Ad" = (/obj/machinery/power/port_gen/pacman{anchored = 1},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/alarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/turf/simulated/floor/plating,/area/mine/west_outpost) -"Ae" = (/obj/machinery/power/terminal{dir = 4},/obj/machinery/light/small,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/mine/west_outpost) -"Af" = (/obj/machinery/power/smes{charge = 5e+006},/obj/structure/cable,/turf/simulated/floor/plating,/area/mine/west_outpost) -"Ag" = (/obj/machinery/atmospherics/pipe/simple/hidden,/obj/machinery/door/firedoor{dir = 4; name = "Firelock"},/obj/machinery/door/airlock/glass_medical{id_tag = null; name = "Infirmary"; req_access_txt = "0"},/turf/simulated/floor{icon_state = "white"},/area/mine/living_quarters) -"Ah" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"},/turf/simulated/wall,/area/mine/living_quarters) -"Ai" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/machinery/door/firedoor{dir = 4; name = "Firelock"},/obj/machinery/door/airlock/maintenance{name = "Mining Station Maintenance"; req_access_txt = "48"},/turf/simulated/floor/plating,/area/mine/living_quarters) -"Aj" = (/obj/machinery/atmospherics/pipe/simple/visible/universal,/turf/simulated/wall,/area/mine/living_quarters) -"Ak" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "mining_west_inner"; locked = 1; name = "Mining External Access"; req_access = null; req_access_txt = null},/turf/simulated/floor,/area/mine/living_quarters) -"Al" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/turf/simulated/floor,/area/mine/production) -"Am" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor,/area/mine/production) -"An" = (/obj/structure/disposalpipe/junction{tag = "icon-pipe-j2 (EAST)"; icon_state = "pipe-j2"; dir = 4},/turf/simulated/wall,/area/mine/production) -"Ao" = (/obj/structure/disposaloutlet{dir = 4},/turf/simulated/floor{icon_state = "floorgrime"},/area/mine/production) -"Ap" = (/obj/machinery/conveyor{dir = 4; id = "mining_internal"},/turf/simulated/floor{icon_state = "floorgrime"},/area/mine/production) -"Aq" = (/obj/machinery/conveyor{dir = 9; id = "mining_internal"},/turf/simulated/floor{icon_state = "floorgrime"},/area/mine/production) -"Ar" = (/obj/machinery/mineral/unloading_machine{icon_state = "unloader-corner"; input_dir = 4; output_dir = 2},/turf/simulated/floor{icon_state = "floorgrime"},/area/mine/production) -"As" = (/obj/machinery/conveyor{dir = 4; id = "mining_external"},/turf/simulated/floor{icon_state = "floorgrime"},/area/mine/production) -"At" = (/obj/machinery/conveyor{dir = 4; id = "mining_external"},/obj/structure/plasticflaps/mining,/turf/simulated/floor{icon_state = "floorgrime"},/area/mine/production) -"Au" = (/obj/machinery/conveyor{dir = 4; id = "mining_external"},/turf/simulated/floor/plating/airless{icon_state = "asteroidplating"; tag = ""},/area/mine/production) -"Av" = (/obj/machinery/light/small{dir = 8},/obj/machinery/alarm{frequency = 1439; pixel_y = 23},/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/simulated/floor{icon_state = "white"},/area/mine/living_quarters) -"Aw" = (/turf/simulated/floor{icon_state = "white"},/area/mine/living_quarters) -"Ax" = (/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor{icon_state = "white"},/area/mine/living_quarters) -"Ay" = (/obj/machinery/light_switch{pixel_x = 23; pixel_y = 0},/obj/machinery/hologram/holopad,/turf/simulated/floor{icon_state = "white"},/area/mine/living_quarters) -"Az" = (/obj/machinery/power/smes{charge = 5e+006},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/simulated/floor/plating,/area/mine/living_quarters) -"AA" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/obj/machinery/light/small{dir = 1},/obj/item/weapon/storage/box/lights/mixed,/turf/simulated/floor/plating,/area/mine/living_quarters) -"AB" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/turf/simulated/floor/plating,/area/mine/living_quarters) -"AC" = (/obj/machinery/light_switch{pixel_y = 23},/obj/machinery/atmospherics/pipe/manifold/visible{dir = 8},/turf/simulated/floor/plating,/area/mine/living_quarters) -"AD" = (/obj/machinery/atmospherics/pipe/tank/air{dir = 8},/obj/machinery/firealarm{dir = 2; pixel_y = 24},/turf/simulated/floor/plating,/area/mine/living_quarters) -"AE" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 4; frequency = 1379; id_tag = "mining_west_pump"},/obj/structure/closet/emcloset,/turf/simulated/floor{icon_state = "floorgrime"},/area/mine/living_quarters) -"AF" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 1},/turf/simulated/floor{icon_state = "floorgrime"},/area/mine/living_quarters) -"AG" = (/obj/machinery/light/small{dir = 4},/obj/machinery/airlock_sensor{frequency = 1379; id_tag = "mining_west_sensor"; pixel_x = 25; pixel_y = -5},/obj/machinery/embedded_controller/radio/airlock/airlock_controller{tag_airpump = "mining_west_pump"; tag_exterior_door = "mining_west_outer"; frequency = 1379; id_tag = "mining_west_airlock"; tag_interior_door = "mining_west_inner"; pixel_x = 25; pixel_y = 5; req_access_txt = null; tag_chamber_sensor = "mining_west_sensor"},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 8; frequency = 1379; id_tag = "mining_west_pump"},/turf/simulated/floor,/area/mine/living_quarters) -"AH" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/turf/simulated/floor,/area/mine/production) -"AI" = (/obj/machinery/conveyor{dir = 2; id = "mining_internal"},/obj/structure/plasticflaps/mining,/turf/simulated/floor{icon_state = "floorgrime"},/area/mine/production) -"AJ" = (/obj/machinery/sleeper{dir = 8},/turf/simulated/floor{tag = "icon-warnwhite (NORTH)"; icon_state = "warnwhite"; dir = 1},/area/mine/living_quarters) -"AK" = (/obj/machinery/sleep_console{dir = 8},/turf/simulated/floor{tag = "icon-warnwhite (NORTHEAST)"; icon_state = "warnwhite"; dir = 5},/area/mine/living_quarters) -"AL" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 1; on = 1},/obj/machinery/camera{c_tag = "Mining Outpost Sleeper Room"; dir = 1; network = list("Mining Outpost")},/turf/simulated/floor{icon_state = "white"},/area/mine/living_quarters) -"AM" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/o2{pixel_x = 2; pixel_y = 2},/obj/item/weapon/storage/firstaid/regular,/obj/item/weapon/storage/firstaid/brute,/turf/simulated/floor{icon_state = "white"},/area/mine/living_quarters) -"AN" = (/obj/machinery/power/terminal{icon_state = "term"; dir = 1},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/simulated/floor/plating,/area/mine/living_quarters) -"AO" = (/turf/simulated/floor/plating,/area/mine/living_quarters) -"AP" = (/obj/machinery/meter,/obj/machinery/atmospherics/pipe/manifold/visible{dir = 8},/turf/simulated/floor/plating,/area/mine/living_quarters) -"AQ" = (/obj/machinery/atmospherics/pipe/tank/air{dir = 8},/turf/simulated/floor/plating,/area/mine/living_quarters) -"AR" = (/obj/machinery/camera{c_tag = "Mining Outpost Port Exterior Airlock"; dir = 4; network = list("Mining Outpost")},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 4; frequency = 1379; id_tag = "mining_west_pump"},/turf/simulated/floor{icon_state = "floorgrime"},/area/mine/living_quarters) -"AS" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/manifold/hidden,/turf/simulated/floor{icon_state = "warning"},/area/mine/living_quarters) -"AT" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 32; pixel_y = 0},/obj/machinery/portable_atmospherics/canister/air,/obj/machinery/atmospherics/portables_connector{dir = 8},/turf/simulated/floor{icon_state = "warning"},/area/mine/living_quarters) -"AU" = (/turf/space,/area/shuttle/mining/outpost) -"AV" = (/obj/machinery/power/apc{dir = 8; name = "Mining Station Starboard Wing APC"; pixel_x = -27; pixel_y = 2},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/simulated/floor,/area/mine/production) -"AW" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/turf/simulated/floor,/area/mine/production) -"AX" = (/turf/simulated/floor{dir = 4; icon_state = "loadingarea"; tag = "loading"},/area/mine/production) -"AY" = (/obj/machinery/mineral/unloading_machine,/turf/simulated/floor{icon_state = "floorgrime"},/area/mine/production) -"AZ" = (/obj/machinery/conveyor{dir = 4; id = "mining_internal"},/obj/structure/plasticflaps/mining,/turf/simulated/floor{icon_state = "floorgrime"},/area/mine/production) -"Ba" = (/obj/structure/cable,/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/obj/machinery/power/port_gen/pacman{anchored = 1},/turf/simulated/floor/plating,/area/mine/living_quarters) -"Bb" = (/obj/machinery/power/port_gen/pacman{anchored = 1},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/alarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/turf/simulated/floor/plating,/area/mine/living_quarters) -"Bc" = (/obj/machinery/atmospherics/portables_connector{dir = 4},/obj/machinery/portable_atmospherics/canister/air,/turf/simulated/floor/plating,/area/mine/living_quarters) -"Bd" = (/obj/structure/reagent_dispensers/fueltank,/obj/machinery/atmospherics/pipe/manifold/visible,/turf/simulated/floor/plating,/area/mine/living_quarters) -"Be" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "mining_west_outer"; locked = 1; name = "Mining External Access"; req_access = null; req_access_txt = null},/turf/simulated/floor/plating,/area/mine/living_quarters) -"Bf" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 4; layer = 2.4; on = 1},/turf/simulated/floor,/area/mine/production) -"Bg" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4; level = 1},/turf/simulated/floor,/area/mine/production) -"Bh" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 4},/obj/machinery/camera{c_tag = "Mining Outpost Shuttle Airlock"; dir = 8; network = list("Mining Outpost")},/obj/machinery/conveyor_switch/oneway{id = "mining_internal"; name = "mining conveyor"},/obj/machinery/light{dir = 4},/turf/simulated/floor,/area/mine/production) -"Bi" = (/obj/effect/spawner/window/reinforced,/turf/simulated/floor/plating,/area/mine/production) -"Bj" = (/obj/machinery/conveyor{dir = 2; id = "mining_internal"},/turf/simulated/floor{icon_state = "floorgrime"},/area/mine/production) -"Bk" = (/turf/simulated/floor/airless{dir = 5; icon_state = "asteroidfloor"; tag = "icon-asteroidfloor"},/area/mine/explored) -"Bl" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "mining_west_airlock"; name = "exterior access button"; pixel_x = 25; pixel_y = 25; req_access_txt = null},/turf/simulated/floor/airless{dir = 5; icon_state = "asteroidfloor"; tag = "icon-asteroidfloor"},/area/mine/explored) -"Bm" = (/turf/simulated/floor/airless{tag = "icon-asteroidwarning (EAST)"; icon_state = "asteroidwarning"; dir = 4},/area/mine/explored) -"Bn" = (/obj/machinery/light{dir = 1},/turf/simulated/floor/plating/airless/asteroid,/area/mine/explored) -"Bo" = (/obj/effect/spawner/window/reinforced,/obj/structure/sign/securearea{desc = "A warning sign which reads 'KEEP CLEAR OF DOCKING AREA'."; name = "KEEP CLEAR: DOCKING AREA"; pixel_y = 0},/obj/machinery/door/firedoor{dir = 2},/turf/simulated/floor/plating,/area/mine/production) -"Bp" = (/obj/effect/spawner/window/reinforced,/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0},/obj/machinery/door/firedoor{dir = 2},/turf/simulated/floor/plating,/area/mine/production) -"Bq" = (/obj/structure/closet/emcloset,/turf/simulated/floor{dir = 9; icon_state = "warning"},/area/mine/production) -"Br" = (/obj/item/device/radio/beacon,/turf/simulated/floor,/area/mine/production) -"Bs" = (/obj/structure/disposalpipe/segment,/turf/simulated/floor,/area/mine/production) -"Bt" = (/obj/structure/closet/crate,/obj/structure/noticeboard{pixel_y = 27},/turf/simulated/floor,/area/mine/production) -"Bu" = (/obj/structure/closet/crate,/obj/structure/extinguisher_cabinet{pixel_x = -5; pixel_y = 30},/turf/simulated/floor,/area/mine/production) -"Bv" = (/obj/structure/window/reinforced{dir = 8},/obj/machinery/alarm{pixel_y = 24},/turf/simulated/floor,/area/mine/production) -"Bw" = (/obj/machinery/firealarm{dir = 2; pixel_y = 24},/turf/simulated/floor,/area/mine/production) -"Bx" = (/obj/machinery/status_display{layer = 4; pixel_x = 0; pixel_y = 32},/obj/machinery/light/small{dir = 1},/obj/item/weapon/rcs,/turf/simulated/floor,/area/mine/production) -"By" = (/obj/machinery/atmospherics/unary/vent_pump{on = 1},/turf/simulated/floor,/area/mine/production) -"Bz" = (/obj/machinery/power/apc{dir = 1; name = "Mining Station External APC"; pixel_x = 1; pixel_y = 25},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/simulated/floor/airless{tag = "icon-asteroidwarning"; icon_state = "asteroidwarning"; dir = 2},/area/mine/explored) -"BA" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor/airless{tag = "icon-asteroidwarning"; icon_state = "asteroidwarning"; dir = 2},/area/mine/explored) -"BB" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/turf/simulated/floor/airless{tag = "icon-asteroidwarning"; icon_state = "asteroidwarning"; dir = 2},/area/mine/explored) -"BC" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "mining_outpost_outer"; locked = 1; name = "Mining Dock Airlock"; req_access = null; req_access_txt = "13"},/turf/simulated/floor/plating,/area/mine/production) -"BD" = (/obj/machinery/embedded_controller/radio/airlock/docking_port{frequency = 1380; id_tag = "mining_outpost_airlock"; pixel_x = 0; pixel_y = 30; req_access_txt = "0"; req_one_access_txt = "13;48"; tag_airpump = "mining_outpost_pump"; tag_chamber_sensor = "mining_outpost_sensor"; tag_exterior_door = "mining_outpost_outer"; tag_interior_door = "mining_outpost_inner"},/obj/machinery/airlock_sensor{frequency = 1380; id_tag = "mining_outpost_sensor"; pixel_x = 0; pixel_y = -25},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 4; frequency = 1380; id_tag = "mining_outpost_pump"},/turf/simulated/floor,/area/mine/production) -"BE" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "mining_outpost_inner"; locked = 1; name = "Mining Dock Airlock"; req_access = null; req_access_txt = "13"},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor,/area/mine/production) -"BF" = (/obj/machinery/access_button{command = "cycle_interior"; frequency = 1380; master_tag = "mining_outpost_airlock"; name = "interior access button"; pixel_x = -30; pixel_y = -25; req_access_txt = "0"; req_one_access_txt = "13;48"},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 10; initialize_directions = 10},/turf/simulated/floor,/area/mine/production) -"BG" = (/obj/machinery/door/window/westright{name = "Production Area"; req_access_txt = "48"},/turf/simulated/floor,/area/mine/production) -"BH" = (/obj/machinery/hologram/holopad,/turf/simulated/floor,/area/mine/production) -"BI" = (/obj/machinery/atmospherics/pipe/simple/hidden,/obj/machinery/camera{c_tag = "Mining Outpost Production Room"; dir = 8; network = list("Mining Outpost")},/turf/simulated/floor,/area/mine/production) -"BJ" = (/turf/simulated/floor{icon_state = "loadingarea"; tag = "loading"},/area/mine/production) -"BK" = (/obj/machinery/atmospherics/portables_connector{dir = 1},/obj/machinery/portable_atmospherics/canister/air,/turf/simulated/floor{dir = 10; icon_state = "warning"},/area/mine/production) -"BL" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 8},/obj/machinery/telepad_cargo,/turf/simulated/floor,/area/mine/production) -"BM" = (/obj/machinery/door/window/westleft{name = "Production Area"; req_access_txt = "48"},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4; level = 1},/turf/simulated/floor{dir = 1; icon_state = "loadingarea"; tag = "loading"},/area/mine/production) -"BN" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 9; icon_state = "intact"},/turf/simulated/floor,/area/mine/production) -"BO" = (/obj/machinery/mineral/processing_unit_console,/turf/simulated/wall/r_wall,/area/mine/production) -"BP" = (/obj/machinery/mineral/processing_unit,/turf/simulated/floor{icon_state = "floorgrime"},/area/mine/production) -"BQ" = (/obj/structure/lattice,/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1380; master_tag = "mining_outpost_airlock"; name = "exterior access button"; pixel_x = -8; pixel_y = 25; req_access_txt = "0"; req_one_access_txt = "13;48"},/turf/space,/area/space) -"BR" = (/obj/machinery/computer/shuttle_control/mining{req_access_txt = "48"},/turf/simulated/floor,/area/mine/production) -"BS" = (/obj/structure/window/reinforced{dir = 8},/obj/machinery/mineral/mint{input_dir = 4; output_dir = 1},/turf/simulated/floor,/area/mine/production) -"BT" = (/turf/simulated/floor{dir = 8; icon_state = "loadingarea"; tag = "loading"},/area/mine/production) -"BU" = (/turf/simulated/wall/r_wall,/area/mine/production) -"BV" = (/obj/machinery/light_switch{pixel_x = -23; pixel_y = 0},/turf/simulated/floor,/area/mine/production) -"BW" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 5; icon_state = "intact"},/turf/simulated/floor,/area/mine/production) -"BX" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 8; on = 1},/turf/simulated/floor,/area/mine/production) -"BY" = (/obj/machinery/mineral/stacking_unit_console,/turf/simulated/wall/r_wall,/area/mine/production) -"BZ" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/grille,/turf/simulated/floor/plating,/area/mine/explored) -"Ca" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/wall/r_wall,/area/mine/explored) -"Cb" = (/obj/structure/lattice,/obj/structure/disposalpipe/segment{dir = 4},/turf/space,/area/space) -"Cc" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor,/area/mine/production) -"Cd" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/simulated/floor,/area/mine/production) -"Ce" = (/obj/machinery/conveyor{dir = 8; id = "mining_internal"},/obj/structure/plasticflaps,/turf/simulated/floor{icon_state = "floorgrime"},/area/mine/production) -"Cf" = (/obj/machinery/conveyor{dir = 8; id = "mining_internal"},/turf/simulated/floor{icon_state = "floorgrime"},/area/mine/production) -"Cg" = (/obj/machinery/mineral/stacking_machine,/turf/simulated/floor{icon_state = "floorgrime"},/area/mine/production) -"Ch" = (/obj/machinery/conveyor{tag = "icon-conveyor0 (SOUTHWEST)"; icon_state = "conveyor0"; dir = 10; id = "mining_internal"},/turf/simulated/floor{dir = 8; icon_state = "loadingarea"; tag = "loading"},/area/mine/production) -"Ci" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/turf/simulated/floor,/area/mine/production) -"Cj" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/simulated/floor,/area/mine/production) -"Ck" = (/obj/machinery/mineral/equipment_vendor,/turf/simulated/floor,/area/mine/production) -"Cl" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/turf/simulated/floor,/area/mine/production) -"Cm" = (/turf/space,/area/vox_station/mining) +"yN" = (/obj/structure/window/reinforced,/obj/structure/lattice,/obj/machinery/light{dir = 8},/turf/space,/area/mine/living_quarters) +"yO" = (/obj/structure/window/reinforced,/obj/structure/lattice,/turf/space,/area/mine/living_quarters) +"yP" = (/obj/structure/window/reinforced,/obj/structure/lattice,/turf/space,/area/mine/lobby) +"yQ" = (/turf/simulated/floor{dir = 9; icon_state = "warning"},/area/mine/lobby) +"yR" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/turf/simulated/floor,/area/mine/lobby) +"yS" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor,/area/mine/lobby) +"yT" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/obj/machinery/door/firedoor{dir = 4; name = "Firelock"},/obj/machinery/door/airlock/glass_mining{name = "Mining Station EVA"; req_access_txt = "54"},/turf/simulated/floor,/area/mine/eva) +"yU" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/simulated/floor,/area/mine/eva) +"yV" = (/obj/machinery/access_button{command = "cycle_interior"; frequency = 1379; master_tag = "mining_east_airlock"; name = "interior access button"; pixel_x = 25; pixel_y = 25; req_access_txt = null},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 5; icon_state = "intact"},/turf/simulated/floor,/area/mine/eva) +"yW" = (/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "mining_east_inner"; locked = 1; name = "Mining External Access"; req_access = null; req_access_txt = null},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor,/area/mine/eva) +"yX" = (/obj/machinery/atmospherics/pipe/manifold4w/hidden,/turf/simulated/floor,/area/mine/eva) +"yY" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 4},/turf/simulated/floor{dir = 4; icon_state = "warning"},/area/mine/eva) +"yZ" = (/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "mining_east_outer"; locked = 1; name = "Mining External Access"; req_access = null; req_access_txt = null},/turf/simulated/floor/plating,/area/mine/eva) +"za" = (/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "mining_east_airlock"; name = "exterior access button"; pixel_x = -25; pixel_y = -25; req_access_txt = null},/turf/simulated/floor/airless{tag = "icon-asteroidwarning (EAST)"; icon_state = "asteroidwarning"; dir = 4},/area/mine/explored) +"zb" = (/obj/machinery/atmospherics/pipe/simple/visible/universal,/turf/simulated/wall,/area/mine/west_outpost) +"zc" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"},/turf/simulated/wall,/area/mine/west_outpost) +"zd" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/machinery/door/firedoor{dir = 4; name = "Firelock"},/obj/machinery/door/airlock/maintenance{name = "Mining Station Maintenance"; req_access_txt = "54"},/turf/simulated/floor/plating,/area/mine/west_outpost) +"ze" = (/obj/machinery/conveyor{backwards = 2; dir = 2; forwards = 1; id = "mining_west"},/obj/structure/plasticflaps/mining,/turf/simulated/floor,/area/mine/west_outpost) +"zf" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/turf/simulated/floor,/area/mine/living_quarters) +"zg" = (/obj/machinery/atmospherics/pipe/simple/hidden,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor,/area/mine/living_quarters) +"zh" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor,/area/mine/living_quarters) +"zi" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/machinery/hologram/holopad,/turf/simulated/floor,/area/mine/living_quarters) +"zj" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/turf/simulated/floor,/area/mine/living_quarters) +"zk" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor,/area/mine/living_quarters) +"zl" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/simulated/floor,/area/mine/living_quarters) +"zm" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/turf/simulated/floor{dir = 4; icon_state = "warning"},/area/mine/living_quarters) +"zn" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/obj/machinery/door/firedoor{dir = 4; name = "Firelock"},/obj/machinery/door/airlock/glass_mining{name = "Mining Station Bridge"; req_access_txt = "48"},/turf/simulated/floor,/area/mine/living_quarters) +"zo" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/turf/simulated/floor,/area/mine/living_quarters) +"zp" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/turf/simulated/floor,/area/mine/lobby) +"zq" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/obj/machinery/door/firedoor{dir = 4; name = "Firelock"},/obj/machinery/door/airlock/glass_mining{name = "Mining Station Bridge"; req_access_txt = "48"},/turf/simulated/floor,/area/mine/lobby) +"zr" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/turf/simulated/floor,/area/mine/lobby) +"zs" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/turf/simulated/floor{dir = 8; icon_state = "warning"},/area/mine/lobby) +"zt" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/turf/simulated/floor,/area/mine/lobby) +"zu" = (/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor,/area/mine/lobby) +"zv" = (/obj/effect/spawner/window/reinforced,/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating,/area/mine/eva) +"zw" = (/obj/machinery/power/apc{dir = 2; name = "Mining EVA APC"; pixel_x = 1; pixel_y = -23},/obj/structure/cable,/obj/machinery/vending/eva,/turf/simulated/floor,/area/mine/eva) +"zx" = (/obj/machinery/mineral/equipment_vendor,/turf/simulated/floor,/area/mine/eva) +"zy" = (/obj/machinery/light/small,/turf/simulated/floor,/area/mine/eva) +"zz" = (/obj/machinery/portable_atmospherics/canister/oxygen,/turf/simulated/floor{icon_state = "bot"},/area/mine/eva) +"zA" = (/obj/machinery/embedded_controller/radio/airlock/airlock_controller{tag_airpump = "mining_east_pump"; tag_exterior_door = "mining_east_outer"; frequency = 1379; id_tag = "mining_east_airlock"; tag_interior_door = "mining_east_inner"; pixel_x = 0; pixel_y = -25; req_access_txt = null; tag_chamber_sensor = "mining_east_sensor"},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 1; frequency = 1379; id_tag = "mining_east_pump"},/turf/simulated/floor,/area/mine/eva) +"zB" = (/obj/machinery/camera{c_tag = "Mining Outpost Starboard External Airlock"; dir = 1; network = list("Mining Outpost")},/obj/machinery/airlock_sensor{frequency = 1379; id_tag = "mining_east_sensor"; pixel_x = 0; pixel_y = -25},/obj/structure/ore_box,/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 1; frequency = 1379; id_tag = "mining_east_pump"},/turf/simulated/floor{dir = 4; icon_state = "warning"},/area/mine/eva) +"zC" = (/obj/machinery/meter,/obj/machinery/firealarm{dir = 2; pixel_y = 24},/obj/machinery/atmospherics/pipe/simple/visible,/turf/simulated/floor/plating,/area/mine/west_outpost) +"zD" = (/obj/machinery/portable_atmospherics/canister/oxygen,/turf/simulated/floor/plating,/area/mine/west_outpost) +"zE" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/turf/simulated/floor/plating,/area/mine/west_outpost) +"zF" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/item/weapon/storage/box/lights/bulbs,/obj/structure/extinguisher_cabinet{pixel_x = -5; pixel_y = 30},/obj/machinery/light_switch{pixel_x = 6; pixel_y = 23},/turf/simulated/floor/plating,/area/mine/west_outpost) +"zG" = (/turf/simulated/floor/airless{tag = "icon-asteroidwarning (NORTH)"; icon_state = "asteroidwarning"; dir = 1},/area/mine/explored) +"zH" = (/obj/machinery/conveyor_switch{id = "mining_west"},/obj/machinery/light/small{dir = 1},/turf/simulated/floor/airless{tag = "icon-asteroidwarning (NORTH)"; icon_state = "asteroidwarning"; dir = 1},/area/mine/explored) +"zI" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 8},/turf/simulated/floor,/area/mine/living_quarters) +"zJ" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4; level = 1},/turf/simulated/floor,/area/mine/living_quarters) +"zK" = (/obj/machinery/atmospherics/pipe/manifold/hidden,/turf/simulated/floor,/area/mine/living_quarters) +"zL" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4; level = 1},/turf/simulated/floor,/area/mine/living_quarters) +"zM" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 1},/turf/simulated/floor,/area/mine/living_quarters) +"zN" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4; level = 1},/obj/machinery/light,/turf/simulated/floor,/area/mine/living_quarters) +"zO" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4; level = 1},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/access_button{command = "cycle_interior"; frequency = 1379; master_tag = "mining_west_airlock"; name = "interior access button"; pixel_x = -25; pixel_y = -25; req_access_txt = null},/turf/simulated/floor,/area/mine/living_quarters) +"zP" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4; level = 1},/obj/machinery/camera{c_tag = "Mining Outpost Port Connector"; dir = 1; network = list("Mining Outpost")},/obj/machinery/light_switch{pixel_y = -25},/turf/simulated/floor{dir = 6; icon_state = "warning"},/area/mine/living_quarters) +"zQ" = (/obj/effect/spawner/window/reinforced,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4; level = 1},/obj/machinery/door/firedoor{dir = 2},/turf/simulated/floor/plating,/area/mine/living_quarters) +"zR" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4; level = 1},/turf/space,/area/mine/living_quarters) +"zS" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4; level = 1},/turf/space,/area/mine/lobby) +"zT" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4; level = 1},/obj/machinery/light{dir = 4},/turf/space,/area/mine/lobby) +"zU" = (/obj/effect/spawner/window/reinforced,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4; level = 1},/obj/machinery/door/firedoor{dir = 2},/turf/simulated/floor/plating,/area/mine/lobby) +"zV" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4; level = 1},/turf/simulated/floor{dir = 10; icon_state = "warning"},/area/mine/lobby) +"zW" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4; level = 1},/turf/simulated/floor,/area/mine/lobby) +"zX" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4; level = 1},/turf/simulated/floor,/area/mine/lobby) +"zY" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 4},/turf/simulated/floor,/area/mine/lobby) +"zZ" = (/obj/structure/disposalpipe/segment,/turf/simulated/wall,/area/mine/production{name = "Mining Station Mech Bay"}) +"Aa" = (/turf/simulated/wall,/area/mine/production{name = "Mining Station Mech Bay"}) +"Ab" = (/obj/structure/extinguisher_cabinet,/turf/simulated/wall,/area/mine/production{name = "Mining Station Mech Bay"}) +"Ac" = (/obj/machinery/camera{c_tag = "Mining Outpost Production Line External"; dir = 4; network = list("Mining Outpost")},/obj/machinery/light/small{dir = 8},/turf/simulated/floor/plating/airless/asteroid,/area/mine/explored) +"Ad" = (/turf/simulated/floor/plating/airless/asteroid,/area/mine/production) +"Ae" = (/obj/machinery/atmospherics/pipe/tank/air{dir = 1; initialize_directions = 0; level = 1},/turf/simulated/floor/plating,/area/mine/west_outpost) +"Af" = (/obj/machinery/power/port_gen/pacman{anchored = 1},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/alarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/turf/simulated/floor/plating,/area/mine/west_outpost) +"Ag" = (/obj/machinery/power/terminal{dir = 4},/obj/machinery/light/small,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/mine/west_outpost) +"Ah" = (/obj/machinery/power/smes{charge = 5e+006},/obj/structure/cable,/turf/simulated/floor/plating,/area/mine/west_outpost) +"Ai" = (/obj/machinery/atmospherics/pipe/simple/hidden,/obj/machinery/door/firedoor{dir = 4; name = "Firelock"},/obj/machinery/door/airlock/glass_medical{id_tag = null; name = "Infirmary"; req_access_txt = "0"},/turf/simulated/floor{icon_state = "white"},/area/mine/living_quarters) +"Aj" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"},/turf/simulated/wall,/area/mine/living_quarters) +"Ak" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/machinery/door/firedoor{dir = 4; name = "Firelock"},/obj/machinery/door/airlock/maintenance{name = "Mining Station Maintenance"; req_access_txt = "48"},/turf/simulated/floor/plating,/area/mine/living_quarters) +"Al" = (/obj/machinery/atmospherics/pipe/simple/visible/universal,/turf/simulated/wall,/area/mine/living_quarters) +"Am" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "mining_west_inner"; locked = 1; name = "Mining External Access"; req_access = null; req_access_txt = null},/turf/simulated/floor,/area/mine/living_quarters) +"An" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/turf/simulated/floor,/area/mine/lobby) +"Ao" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor,/area/mine/lobby) +"Ap" = (/obj/structure/disposalpipe/junction,/turf/simulated/wall,/area/mine/production{name = "Mining Station Mech Bay"}) +"Aq" = (/obj/structure/table/reinforced,/obj/machinery/cell_charger,/obj/machinery/alarm{pixel_y = 25},/turf/simulated/floor,/area/mine/production{name = "Mining Station Mech Bay"}) +"Ar" = (/obj/structure/table/reinforced,/obj/item/weapon/stock_parts/cell/high{charge = 100; maxcharge = 15000},/obj/item/weapon/stock_parts/cell/high{charge = 100; maxcharge = 15000},/turf/simulated/floor,/area/mine/production{name = "Mining Station Mech Bay"}) +"As" = (/obj/structure/table/reinforced,/obj/item/weapon/wrench,/obj/item/weapon/screwdriver,/obj/item/weapon/crowbar,/obj/machinery/power/apc{dir = 1; name = "Mining Station Mech Bay APC"; pixel_x = 1; pixel_y = 25},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/simulated/floor,/area/mine/production{name = "Mining Station Mech Bay"}) +"At" = (/obj/machinery/mech_bay_recharge_port,/turf/simulated/floor/plating,/area/mine/production) +"Au" = (/turf/simulated/floor/mech_bay_recharge_floor,/area/mine/production{name = "Mining Station Mech Bay"}) +"Av" = (/obj/machinery/computer/mech_bay_power_console,/turf/simulated/floor,/area/mine/production{name = "Mining Station Mech Bay"}) +"Aw" = (/turf/simulated/floor/airless{icon_state = "asteroidwarning"; dir = 1},/area/mine/production) +"Ax" = (/turf/simulated/floor/airless{icon_state = "asteroidwarning"; dir = 5},/area/mine/production) +"Ay" = (/obj/machinery/light/small{dir = 8},/obj/machinery/alarm{frequency = 1439; pixel_y = 23},/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/simulated/floor{icon_state = "white"},/area/mine/living_quarters) +"Az" = (/turf/simulated/floor{icon_state = "white"},/area/mine/living_quarters) +"AA" = (/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/floor{icon_state = "white"},/area/mine/living_quarters) +"AB" = (/obj/machinery/light_switch{pixel_x = 23; pixel_y = 0},/obj/machinery/hologram/holopad,/turf/simulated/floor{icon_state = "white"},/area/mine/living_quarters) +"AC" = (/obj/machinery/power/smes{charge = 5e+006},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/simulated/floor/plating,/area/mine/living_quarters) +"AD" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0; tag = ""},/obj/machinery/light/small{dir = 1},/obj/item/weapon/storage/box/lights/mixed,/turf/simulated/floor/plating,/area/mine/living_quarters) +"AE" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/turf/simulated/floor/plating,/area/mine/living_quarters) +"AF" = (/obj/machinery/light_switch{pixel_y = 23},/obj/machinery/atmospherics/pipe/manifold/visible{dir = 8},/turf/simulated/floor/plating,/area/mine/living_quarters) +"AG" = (/obj/machinery/atmospherics/pipe/tank/air{dir = 8},/obj/machinery/firealarm{dir = 2; pixel_y = 24},/turf/simulated/floor/plating,/area/mine/living_quarters) +"AH" = (/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 4; frequency = 1379; id_tag = "mining_west_pump"},/obj/structure/closet/emcloset,/turf/simulated/floor{icon_state = "floorgrime"},/area/mine/living_quarters) +"AI" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 1},/turf/simulated/floor{icon_state = "floorgrime"},/area/mine/living_quarters) +"AJ" = (/obj/machinery/light/small{dir = 4},/obj/machinery/airlock_sensor{frequency = 1379; id_tag = "mining_west_sensor"; pixel_x = 25; pixel_y = -5},/obj/machinery/embedded_controller/radio/airlock/airlock_controller{tag_airpump = "mining_west_pump"; tag_exterior_door = "mining_west_outer"; frequency = 1379; id_tag = "mining_west_airlock"; tag_interior_door = "mining_west_inner"; pixel_x = 25; pixel_y = 5; req_access_txt = null; tag_chamber_sensor = "mining_west_sensor"},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 8; frequency = 1379; id_tag = "mining_west_pump"},/turf/simulated/floor,/area/mine/living_quarters) +"AK" = (/obj/machinery/status_display{dir = 4; layer = 4; pixel_x = -32; pixel_y = 0},/turf/simulated/floor,/area/mine/lobby) +"AL" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor,/area/mine/lobby) +"AM" = (/obj/machinery/atmospherics/pipe/simple/hidden,/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor,/area/mine/lobby) +"AN" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_mining{name = "Mining Station Mech Bay"; req_access_txt = "54"},/turf/simulated/floor,/area/mine/production{name = "Mining Station Mech Bay"}) +"AO" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/simulated/floor,/area/mine/production{name = "Mining Station Mech Bay"}) +"AP" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor,/area/mine/production{name = "Mining Station Mech Bay"}) +"AQ" = (/turf/simulated/floor{icon_state = "delivery"; name = "floor"},/area/mine/production{name = "Mining Station Mech Bay"}) +"AR" = (/turf/simulated/floor{dir = 4; icon_state = "loadingarea"; tag = "loading"},/area/mine/production{name = "Mining Station Mech Bay"}) +"AS" = (/obj/structure/plasticflaps/mining,/turf/simulated/floor{dir = 4; icon_state = "loadingarea"; tag = "loading"},/area/mine/production{name = "Mining Station Mech Bay"}) +"AT" = (/turf/simulated/floor/airless{dir = 5; icon_state = "asteroidfloor"; tag = "icon-asteroidfloor"},/area/mine/production) +"AU" = (/obj/machinery/sleeper{dir = 8},/turf/simulated/floor{tag = "icon-warnwhite (NORTH)"; icon_state = "warnwhite"; dir = 1},/area/mine/living_quarters) +"AV" = (/obj/machinery/sleep_console{dir = 8},/turf/simulated/floor{tag = "icon-warnwhite (NORTHEAST)"; icon_state = "warnwhite"; dir = 5},/area/mine/living_quarters) +"AW" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 1; on = 1},/obj/machinery/camera{c_tag = "Mining Outpost Sleeper Room"; dir = 1; network = list("Mining Outpost")},/turf/simulated/floor{icon_state = "white"},/area/mine/living_quarters) +"AX" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/o2{pixel_x = 2; pixel_y = 2},/obj/item/weapon/storage/firstaid/regular,/obj/item/weapon/storage/firstaid/brute,/turf/simulated/floor{icon_state = "white"},/area/mine/living_quarters) +"AY" = (/obj/machinery/power/terminal{icon_state = "term"; dir = 1},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/simulated/floor/plating,/area/mine/living_quarters) +"AZ" = (/turf/simulated/floor/plating,/area/mine/living_quarters) +"Ba" = (/obj/machinery/meter,/obj/machinery/atmospherics/pipe/manifold/visible{dir = 8},/turf/simulated/floor/plating,/area/mine/living_quarters) +"Bb" = (/obj/machinery/atmospherics/pipe/tank/air{dir = 8},/turf/simulated/floor/plating,/area/mine/living_quarters) +"Bc" = (/obj/machinery/camera{c_tag = "Mining Outpost Port Exterior Airlock"; dir = 4; network = list("Mining Outpost")},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 4; frequency = 1379; id_tag = "mining_west_pump"},/turf/simulated/floor{icon_state = "floorgrime"},/area/mine/living_quarters) +"Bd" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/atmospherics/pipe/manifold/hidden,/turf/simulated/floor{icon_state = "warning"},/area/mine/living_quarters) +"Be" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 32; pixel_y = 0},/obj/machinery/portable_atmospherics/canister/air,/obj/machinery/atmospherics/portables_connector{dir = 8},/turf/simulated/floor{icon_state = "warning"},/area/mine/living_quarters) +"Bf" = (/turf/space,/area/shuttle/mining/outpost) +"Bg" = (/obj/machinery/power/apc{dir = 8; name = "Mining Station Starboard Wing APC"; pixel_x = -27; pixel_y = 2},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/simulated/floor,/area/mine/lobby) +"Bh" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor,/area/mine/lobby) +"Bi" = (/obj/machinery/atmospherics/pipe/simple/hidden,/obj/structure/disposalpipe/segment,/turf/simulated/floor,/area/mine/lobby) +"Bj" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_mining{name = "Mining Station Mech Bay"; req_access_txt = "54"},/turf/simulated/floor,/area/mine/production{name = "Mining Station Mech Bay"}) +"Bk" = (/turf/simulated/floor,/area/mine/production{name = "Mining Station Mech Bay"}) +"Bl" = (/obj/machinery/atmospherics/unary/vent_pump{on = 1},/turf/simulated/floor,/area/mine/production{name = "Mining Station Mech Bay"}) +"Bm" = (/turf/simulated/floor,/area/mine/production) +"Bn" = (/obj/structure/cable,/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/obj/machinery/power/port_gen/pacman{anchored = 1},/turf/simulated/floor/plating,/area/mine/living_quarters) +"Bo" = (/obj/machinery/power/port_gen/pacman{anchored = 1},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/alarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/turf/simulated/floor/plating,/area/mine/living_quarters) +"Bp" = (/obj/machinery/atmospherics/portables_connector{dir = 4},/obj/machinery/portable_atmospherics/canister/air,/turf/simulated/floor/plating,/area/mine/living_quarters) +"Bq" = (/obj/structure/reagent_dispensers/fueltank,/obj/machinery/atmospherics/pipe/manifold/visible,/turf/simulated/floor/plating,/area/mine/living_quarters) +"Br" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/door/airlock/external{frequency = 1379; icon_state = "door_locked"; id_tag = "mining_west_outer"; locked = 1; name = "Mining External Access"; req_access = null; req_access_txt = null},/turf/simulated/floor/plating,/area/mine/living_quarters) +"Bs" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 4; layer = 2.4; on = 1},/turf/simulated/floor,/area/mine/lobby) +"Bt" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4; level = 1},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor,/area/mine/lobby) +"Bu" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 4},/obj/structure/disposalpipe/segment,/turf/simulated/floor,/area/mine/lobby) +"Bv" = (/obj/machinery/mineral/equipment_vendor,/turf/simulated/floor,/area/mine/production{name = "Mining Station Mech Bay"}) +"Bw" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/machinery/atmospherics/pipe/simple/hidden,/obj/machinery/light,/turf/simulated/floor,/area/mine/production{name = "Mining Station Mech Bay"}) +"Bx" = (/obj/structure/ore_box,/obj/machinery/camera{c_tag = "Mining Outpost Mech Bay"; dir = 1; network = list("Mining Outpost")},/turf/simulated/floor{icon_state = "bot"},/area/mine/production{name = "Mining Station Mech Bay"}) +"By" = (/obj/machinery/mech_bay_recharge_port,/obj/machinery/light/small,/turf/simulated/floor/plating,/area/mine/production{name = "Mining Station Mech Bay"}) +"Bz" = (/turf/simulated/floor/airless{icon_state = "asteroidwarning"; dir = 2},/area/mine/production) +"BA" = (/turf/simulated/floor/airless{dir = 5; icon_state = "asteroidfloor"; tag = "icon-asteroidfloor"},/area/mine/explored) +"BB" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "mining_west_airlock"; name = "exterior access button"; pixel_x = 25; pixel_y = 25; req_access_txt = null},/turf/simulated/floor/airless{dir = 5; icon_state = "asteroidfloor"; tag = "icon-asteroidfloor"},/area/mine/explored) +"BC" = (/turf/simulated/floor/airless{tag = "icon-asteroidwarning (EAST)"; icon_state = "asteroidwarning"; dir = 4},/area/mine/explored) +"BD" = (/obj/machinery/light{dir = 1},/turf/simulated/floor/plating/airless/asteroid,/area/mine/explored) +"BE" = (/obj/effect/spawner/window/reinforced,/obj/structure/sign/securearea{desc = "A warning sign which reads 'KEEP CLEAR OF DOCKING AREA'."; name = "KEEP CLEAR: DOCKING AREA"; pixel_y = 0},/obj/machinery/door/firedoor{dir = 2},/turf/simulated/floor/plating,/area/mine/lobby) +"BF" = (/obj/effect/spawner/window/reinforced,/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0},/obj/machinery/door/firedoor{dir = 2},/turf/simulated/floor/plating,/area/mine/lobby) +"BG" = (/obj/machinery/computer/shuttle_control/mining{req_access_txt = "48"},/turf/simulated/floor,/area/mine/lobby) +"BH" = (/obj/item/device/radio/beacon,/turf/simulated/floor,/area/mine/lobby) +"BI" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor,/area/mine/lobby) +"BJ" = (/obj/machinery/atmospherics/pipe/simple/hidden,/obj/structure/disposalpipe/segment,/obj/machinery/light{dir = 4},/turf/simulated/floor,/area/mine/lobby) +"BK" = (/turf/simulated/wall,/area/mine/living_quarters{name = "Mining Station Break Room"}) +"BL" = (/obj/machinery/atmospherics/pipe/simple/hidden,/turf/simulated/wall,/area/mine/living_quarters{name = "Mining Station Break Room"}) +"BM" = (/obj/machinery/power/apc{dir = 1; name = "Mining Station External APC"; pixel_x = 1; pixel_y = 25},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/simulated/floor/airless{tag = "icon-asteroidwarning"; icon_state = "asteroidwarning"; dir = 2},/area/mine/explored) +"BN" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor/airless{tag = "icon-asteroidwarning"; icon_state = "asteroidwarning"; dir = 2},/area/mine/explored) +"BO" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/turf/simulated/floor/airless{tag = "icon-asteroidwarning"; icon_state = "asteroidwarning"; dir = 2},/area/mine/explored) +"BP" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "mining_outpost_outer"; locked = 1; name = "Mining Dock Airlock"; req_access = null; req_access_txt = "13"},/turf/simulated/floor/plating,/area/mine/lobby) +"BQ" = (/obj/machinery/embedded_controller/radio/airlock/docking_port{frequency = 1380; id_tag = "mining_outpost_airlock"; pixel_x = 0; pixel_y = 30; req_access_txt = "0"; req_one_access_txt = "13;48"; tag_airpump = "mining_outpost_pump"; tag_chamber_sensor = "mining_outpost_sensor"; tag_exterior_door = "mining_outpost_outer"; tag_interior_door = "mining_outpost_inner"},/obj/machinery/airlock_sensor{frequency = 1380; id_tag = "mining_outpost_sensor"; pixel_x = 0; pixel_y = -25},/obj/machinery/atmospherics/unary/vent_pump/high_volume{dir = 4; frequency = 1380; id_tag = "mining_outpost_pump"},/turf/simulated/floor,/area/mine/lobby) +"BR" = (/obj/machinery/door/airlock/external{frequency = 1380; icon_state = "door_locked"; id_tag = "mining_outpost_inner"; locked = 1; name = "Mining Dock Airlock"; req_access = null; req_access_txt = "13"},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor,/area/mine/production) +"BS" = (/obj/machinery/access_button{command = "cycle_interior"; frequency = 1380; master_tag = "mining_outpost_airlock"; name = "interior access button"; pixel_x = -30; pixel_y = -25; req_access_txt = "0"; req_one_access_txt = "13;48"},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 10; initialize_directions = 10},/turf/simulated/floor,/area/mine/lobby) +"BT" = (/obj/machinery/atmospherics/pipe/simple/hidden,/obj/structure/disposalpipe/segment,/obj/machinery/camera{c_tag = "Mining Shuttle Airlock"; dir = 8; network = list("Mining Outpost")},/turf/simulated/floor,/area/mine/lobby) +"BU" = (/obj/machinery/vending/snack,/turf/simulated/floor{icon_state = "bar"},/area/mine/living_quarters{name = "Mining Station Break Room"}) +"BV" = (/obj/machinery/atmospherics/pipe/simple/hidden,/obj/machinery/vending/cola,/turf/simulated/floor{icon_state = "bar"},/area/mine/living_quarters{name = "Mining Station Break Room"}) +"BW" = (/obj/machinery/light{dir = 1; on = 1},/turf/simulated/floor{icon_state = "bar"},/area/mine/living_quarters{name = "Mining Station Break Room"}) +"BX" = (/obj/machinery/hologram/holopad,/obj/machinery/firealarm{pixel_y = 25},/turf/simulated/floor{icon_state = "bar"},/area/mine/living_quarters{name = "Mining Station Break Room"}) +"BY" = (/obj/machinery/power/apc{dir = 1; name = "Mining Station Break Room APC"; pixel_x = 1; pixel_y = 25},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/simulated/floor{icon_state = "bar"},/area/mine/living_quarters{name = "Mining Station Break Room"}) +"BZ" = (/obj/machinery/alarm{pixel_y = 25},/obj/structure/closet/crate/bin{name = "Garbage bin"},/turf/simulated/floor{icon_state = "bar"},/area/mine/living_quarters{name = "Mining Station Break Room"}) +"Ca" = (/obj/structure/flora/kirbyplants,/turf/simulated/floor{icon_state = "bar"},/area/mine/living_quarters{name = "Mining Station Break Room"}) +"Cb" = (/obj/machinery/door/firedoor,/obj/effect/spawner/window/reinforced,/turf/simulated/floor/plating,/area/mine/living_quarters{name = "Mining Station Break Room"}) +"Cc" = (/obj/machinery/atmospherics/portables_connector{dir = 1},/obj/machinery/portable_atmospherics/canister/air,/turf/simulated/floor{dir = 10; icon_state = "warning"},/area/mine/lobby) +"Cd" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor,/area/mine/lobby) +"Ce" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 8},/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor,/area/mine/lobby) +"Cf" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Mining Break Room"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor{icon_state = "bar"},/area/mine/lobby) +"Cg" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4; level = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{icon_state = "bar"},/area/mine/living_quarters{name = "Mining Station Break Room"}) +"Ch" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 9; icon_state = "intact"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{icon_state = "bar"},/area/mine/living_quarters{name = "Mining Station Break Room"}) +"Ci" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor{icon_state = "bar"},/area/mine/living_quarters{name = "Mining Station Break Room"}) +"Cj" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/simulated/floor{icon_state = "bar"},/area/mine/living_quarters{name = "Mining Station Break Room"}) +"Ck" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor{icon_state = "bar"},/area/mine/living_quarters{name = "Mining Station Break Room"}) +"Cl" = (/turf/simulated/floor{icon_state = "bar"},/area/mine/living_quarters{name = "Mining Station Break Room"}) +"Cm" = (/obj/structure/lattice,/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1380; master_tag = "mining_outpost_airlock"; name = "exterior access button"; pixel_x = -8; pixel_y = 25; req_access_txt = "0"; req_one_access_txt = "13;48"},/turf/space,/area/space) +"Cn" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 8},/obj/structure/disposalpipe/segment,/turf/simulated/floor,/area/mine/lobby) +"Co" = (/obj/machinery/door/firedoor,/obj/effect/spawner/window/reinforced,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/plating,/area/mine/lobby) +"Cp" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4; level = 1},/turf/simulated/floor{icon_state = "bar"},/area/mine/living_quarters{name = "Mining Station Break Room"}) +"Cq" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 8; on = 1},/turf/simulated/floor{icon_state = "bar"},/area/mine/living_quarters{name = "Mining Station Break Room"}) +"Cr" = (/obj/structure/stool/bed/chair,/turf/simulated/floor{icon_state = "bar"},/area/mine/living_quarters{name = "Mining Station Break Room"}) +"Cs" = (/obj/machinery/camera{c_tag = "Mining Outpost Production Room"; dir = 8; network = list("Mining Outpost")},/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/simulated/floor{icon_state = "bar"},/area/mine/living_quarters{name = "Mining Station Break Room"}) +"Ct" = (/obj/machinery/light_switch{pixel_x = -23; pixel_y = 0},/turf/simulated/floor,/area/mine/lobby) +"Cu" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Mining Break Room"},/turf/simulated/floor{icon_state = "bar"},/area/mine/lobby) +"Cv" = (/obj/structure/stool/bed/chair{dir = 4},/turf/simulated/floor{icon_state = "bar"},/area/mine/living_quarters{name = "Mining Station Break Room"}) +"Cw" = (/obj/structure/table,/turf/simulated/floor{icon_state = "bar"},/area/mine/living_quarters{name = "Mining Station Break Room"}) +"Cx" = (/obj/structure/stool/bed/chair{dir = 8},/turf/simulated/floor{icon_state = "bar"},/area/mine/living_quarters{name = "Mining Station Break Room"}) +"Cy" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/grille,/turf/simulated/floor/plating,/area/mine/explored) +"Cz" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/wall,/area/mine/explored) +"CA" = (/obj/structure/lattice,/obj/structure/disposalpipe/segment{dir = 4},/turf/space,/area/space) +"CB" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/wall,/area/mine/lobby) +"CC" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/closet/emcloset,/turf/simulated/floor,/area/mine/lobby) +"CD" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor,/area/mine/lobby) +"CE" = (/obj/machinery/atmospherics/pipe/simple/hidden,/obj/structure/disposalpipe/segment,/obj/machinery/light/small,/turf/simulated/floor,/area/mine/lobby) +"CF" = (/obj/machinery/vending/cigarette,/turf/simulated/floor{icon_state = "bar"},/area/mine/living_quarters{name = "Mining Station Break Room"}) +"CG" = (/obj/machinery/vending/coffee,/turf/simulated/floor{icon_state = "bar"},/area/mine/living_quarters{name = "Mining Station Break Room"}) +"CH" = (/obj/machinery/light/small,/turf/simulated/floor{icon_state = "bar"},/area/mine/living_quarters{name = "Mining Station Break Room"}) +"CI" = (/obj/structure/stool/bed/chair{dir = 1},/turf/simulated/floor{icon_state = "bar"},/area/mine/living_quarters{name = "Mining Station Break Room"}) +"CJ" = (/turf/simulated/wall,/area/mine/production) +"CK" = (/obj/machinery/door/firedoor,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/door/airlock/glass_mining{name = "Mining Station Loading Bay"; req_access_txt = "54"},/turf/simulated/floor,/area/mine/production) +"CL" = (/obj/machinery/atmospherics/pipe/simple/hidden,/obj/structure/disposalpipe/segment,/turf/simulated/wall,/area/mine/production) +"CM" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/machinery/light/small{dir = 1},/turf/simulated/floor,/area/mine/production) +"CN" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor,/area/mine/production) +"CO" = (/obj/machinery/atmospherics/pipe/simple/hidden,/obj/structure/disposalpipe/segment,/turf/simulated/floor,/area/mine/production) +"CP" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/power/apc{dir = 1; name = "Mining Station Loading Bay APC"; pixel_x = 1; pixel_y = 25},/turf/simulated/floor{dir = 4; icon_state = "loadingarea"; tag = "loading"},/area/mine/production) +"CQ" = (/obj/machinery/mineral/mint{input_dir = 8; output_dir = 4},/turf/simulated/floor,/area/mine/production) +"CR" = (/obj/machinery/alarm{pixel_y = 25; target_temperature = 283.15},/turf/simulated/floor{dir = 4; icon_state = "loadingarea"; tag = "loading"},/area/mine/production) +"CS" = (/obj/machinery/camera{c_tag = "Mining Outpost Production Room"; dir = 4; network = list("Mining Outpost")},/obj/machinery/conveyor_switch/oneway{id = "mining_internal"; name = "mining conveyor"},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/simulated/floor,/area/mine/production) +"CT" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor,/area/mine/production) +"CU" = (/obj/machinery/atmospherics/pipe/simple/hidden,/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor,/area/mine/production) +"CV" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/turf/simulated/floor,/area/mine/production) +"CW" = (/obj/machinery/light/small{dir = 4; pixel_y = 8},/turf/simulated/floor,/area/mine/production) +"CX" = (/obj/structure/window/reinforced,/obj/structure/table/reinforced,/obj/item/weapon/rcs,/obj/structure/disposalpipe/segment,/turf/simulated/floor,/area/mine/production) +"CY" = (/obj/structure/window/reinforced,/obj/structure/closet/crate,/turf/simulated/floor,/area/mine/production) +"CZ" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 5; icon_state = "intact"},/obj/structure/window/reinforced,/obj/structure/closet/crate{icon_state = "crateopen"; opened = 1},/turf/simulated/floor,/area/mine/production) +"Da" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 8; on = 1},/obj/structure/window/reinforced,/obj/structure/closet/crate,/turf/simulated/floor,/area/mine/production) +"Db" = (/obj/structure/closet/walllocker/emerglocker/east,/turf/simulated/floor,/area/mine/production) +"Dc" = (/obj/structure/disposaloutlet{dir = 4},/obj/structure/disposalpipe/trunk{dir = 1},/obj/machinery/light/small{dir = 8},/turf/simulated/floor{dir = 9; icon_state = "warning"},/area/mine/production) +"Dd" = (/obj/machinery/conveyor{dir = 4; id = "mining_internal"},/turf/simulated/floor/plating{dir = 1; icon_state = "warnplate"; nitrogen = 0.01; oxygen = 0.01},/area/mine/production) +"De" = (/obj/machinery/conveyor{dir = 4; id = "mining_internal"},/turf/simulated/floor/plating{icon_state = "warnplate"; dir = 5},/area/mine/production) +"Df" = (/obj/machinery/telepad_cargo,/turf/simulated/floor{dir = 8; icon_state = "warning"},/area/mine/production) +"Dg" = (/turf/simulated/floor,/area/mine/unexplored) +"Dh" = (/turf/simulated/floor{icon_state = "bar"},/area/mine/unexplored) +"Di" = (/turf/space,/area/vox_station/mining) (1,1,1) = {" aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -1648,56 +1696,56 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacacaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacaaaaaaaaaaaaaaaaacacacaaaaacafaeaeaewvxdxexfwJxexgxexexhxixjwRxkxlaeaeaeaeaeafafafacacacacacacacbkbkbkbkbkbkbkbkbkbkbkbkacacafafntaeaeaeaeaeaeaeaeaeaeaeaeaeaeaeafafacacacacacacvPxmwTxnxoxpxqvPvPvPvPvVvPwXxrxrxrxswgaeaeaeaeaeaeaeaaaaaaaaaaaaaaaaaaaeaeaeaeaeaeaeaeaeaeaexaxtxuxuxvxbaexwaeaeaeofntafafafpepepepepepepepepepeafafafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacaaaaaaaaaaaaaaaaaaaaaaaaaaacafaeaeaewvxxxexexyxexgxzxexewJxAxBwJqAaeaeaeaeaeaeaeafafafafacacacacacacbkbkbkbkbkbkbkbkbkacacafafaewhaeaeaeaeaeaeaeaeaeaeaeaeaeaeaeaeafafafafacacacvPxCxDxEwTxFxGxHxsxIxJxKvPxLxrxMxNxOwgaeaeaeaeaeaeaaaaaaaaaaaaaaaaaaaaaaaaaeaeaeaeaexPxPxQxQxaxRxSxTxUxbxbxbxbaeaeaeaeafafafafpepepepepepepepepeafafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacafafaeaewvxVxexWwPxXxYxZxewvwvwvwvwvwxseqDaeaeaeaeaeaeaeaeafafafacacacacacbkbkbkbkbkbkbkacacacafaeaeaeaeaeaeaeaeaeaeaeseqDaeaeaeaeaeaeaeaeaeafafacacyavPvPvPybvPvPycydyeycydvPvPvPvPvPyfvPvPwgwgaeaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaexQxQygyhyiyjykylylymynyoypyqqDaeaeaenuafafafpepepepepepepeafafafafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacafaeaewvyrysytwJyuyvywyxyyyzyAyByCyDulumrBrBrBrBrBqUaeaeaeaeafafafacacacacacbkbkbkacacacacafafaeaeujrBrBrBrBrBrBrBrBulumrBrBrBrBqUaeaeaeaeaeafacacacacacybyEyFyGxrxOyHxsxOxHyIyJyKxsxOxryLyMwgwgwgyNyNyNyNyNyNyNyNyOyOyOyOyOyOyOxQxQxQyPyhyQyRySyTylylyUyVyWyXyYyZaeaeaenuafafafpepepepepepeafafafafafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacafaeaewvwvwvwvwvzazbzcwvwvzdwvwvwvwvqyqAaeaeaeaeaeqLaeaeaeaeafaeafafacacacacacacacacacacafafaeaeaeqLaeaeaeaeaeaeaeaeqyqAaeaeaeaeqLaeaeaeaeaeafafntafafacvPvPvPvPxrxOzezfzgxJzhzizizjzjzkzizlzmzizmznznznznznznznznzozozozozozozozpzqzpzrzqzsztzuzvzwzxzyyqzzzAyqqAaeaeaeaeafafafafpepepepepeafafafafafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacafafaeaeaeaeaewvzBzCzDzEwvzFzGonaeaeaeaeaeqNaeaeaeqTrBrBqUaeaeaeaeafacacacacacacacacacacafaeaeujrBukaeaeaeaeafaeaeqNaeaeaeaeaeaeqLaeaeaeaeaeaeaewhaeafafafafafvPxrzHzIzJzJzIzKzLzMzJzJzNzIzOzPzPzPzQzQzQzQzQzQzQzQzRzRzRzRzRzRzSzTzTzTzUzVzWzXzYxPxPxPxPxPxPxPxPzZAaAbAaonnuafafafpepepepeafafafafafafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacafafaeaeaeaewvAcAdAeAfwvaeaeaeaeaeaeafafntafaeaeaeaeaeqLaeaeaeaeaeafacacacacacafafafafafaeujukaeaeaeafafafafafafntaeaeaeaeaeaeqLaeaeaeaeaeaeaeaeaeaeaeafafvPvPycAgycvPvPAhAiAjvPvPvPAkycvPwgaeaeaeaaaaaaaaagaaaaaaagaaaaaaaaaaagaaxQxQyhAlAmAnAoApApAqxPArAsAtAuAuAuAuonaeafafafpepepepeafafafpeafafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacafafaeaeaewvwvwvwvwvwvaeaeafafafafafacacafafaeaeaeaeqLaeaeaeaeaeaeafafafafafafaeaeaeaeaeqLaeaeafafafacacacacacafaeaeaeaeaeaeqLaeaeaeseqDaeaeaeaeaeaeaeafvPAvAwAxAyvPAzAAABACADvPAEAFAGvPaeaeaeaeaeaeaaaaagaaaaaaagagagagagagagagagxPyhAHztxPxPxPxPAIxPAIxPxPonononononaeafafafpepepeafafpepepeafafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacafaeaeaeaeaeaeaeaeaeaeaeafacacacacacacacafafaeaeaeqTrBrBrBqUaeaeaeaeaeaeaeaeaeaeaeaeaeqLaeafafacacacacacacacafafaeaeaeaeaeqTrBrBrBulumrBrBrBqUaeaeaeaevPAJAKALAMvPANAOAOAPAQvPARASATvPaeaeaeaeaeaeagagagagagagagAUAUAUAUAUagaaaaxPAVAWztAXAYApApApAZApAqxPaeaeaeaeaeafafafafpepeafafafpepepeafafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacafaeaeaeaeaeaeaeaeaeafafafacacacacacacacacafafafaeaeaeaeaeqTqUaeaeseqDaeaeujrBrBrBrBrBukaeafacacacacbkbkbkacacafafafaeaeaeaeaeaeaeqyqAaeaeaeqLaeaeaeaeyavPvPvPvPvPBaBbBcBdAQvPvPBeycyaaeaeaeaeaeaeaaaaagaaaaaaagAUAUAUAUAUagaaxQxQBfBgBhxPxPxPxPxPxPBiBjxPaeaeaeaeaeafafafpepepeafafafafpepeafafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacafafafafaeaeaeaeafafafacacacacacacacacacacacacafafafaeqNaeaeqTrBrBulumrBrBukaeaeaeaeaeaeaeafacacacbkbkbkbkbkacacacafafafafaeaeaeaeaeaeaeaeaeqTrBrBqUaeaeaeaeaeaeyavPvPvPvPvPyaBkBlBmBnaeaeaeaeaeaaaaaaagaaaaaaagAUAUAUAUAUBoxQBpBqBrBsztBtBuBvBwBxByBiBjxPaeaeaeaeafafafafpepeafafafafpepepeafafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacacafafafafafafacacacacacacacacacacacacacacacacafafntafaeaeaeaeqyqAaeaeaeaeqNaeafafafafafacacbkbkbkbkbkbkbkacacacacacafafafafafafafafaeaeaeaeaeqLaeaeaeaeaeaeaeaeqyBzBABABABABBqAaeaeaeaeaeaeagagagagagagagagAUAUAUAUAUBCBDBEBFyhBsztyhyhBGyhBHBIBiBJxPaeaeaeaeafafafafpepeafafafpepepeafafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacbkbkbkbkbkbkacacacacacacafafaeaeaeaeaeaeaeaeaentafafacacacacacbkbkbkbkbkbkbkbkacacacacacacacacacacacacafafaeaeaeaeqLaeaeaeaeaeaeaeaeaeaeaeaeaeaeaeaeaeaeaeaeaeaeaeaaaaaaaaaaaaagAUAUAUAUAUxQxQxQBKyhBsBLzVzVBMzVzVBNBOBPxPaeaeaerLntafafafpeafafafafpepepeafafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacacacacacacacacacacbkbkbkbkbkbkbkbkbkbkbkacacacacacacafafafaeaeaeafafafafafacacacacacbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkacacacacacafaeaeaeaeqTrBrBrBrBrBrBrBrBrBrBrBrBrBrBrBrBrBqUaeaeaeaeaeaeaaaaaaaaaaagAUAUAUAUAUBQaaxQxQBRBsztyhyhBSBTyhyhBiBjxPaeaeaeaeafafafafafafafafpepepeafafafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacbkacacacacbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkacacacacacacafafafafafacacacacacacacbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkacacacacacafafafaeaeaeaeaeaeaeaeaeaeaeaeaeaeaeaeaeaeaeaeqLaeseqDaeaeaepMpMaaaaaaagAUAUAUAUAUagaaaaBUBVBsBWzVBXBiBiBiBYBiBjxPaeaeaeaeafafafafafpeafafpepepeafafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkacacacacacacacacacacacacacacacbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkacacacacacacafafafaeaeaeaeaeaeaeaeaeaeaeaeaeaeaeaeaeaeqTrBulumrBrBrBBZCaCbCbCbCbCbCbCbCbCbCbCbCbxQCcCdyhyhyhBTCeCfCfCgChxPaeaeafafafafafpepepeafpepepeafafafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkacacacacacacacacacbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkacacacacacacafafafaeaeaeaeaeaeaeafafaeaeaeaeaeaeaeaeaeqyqAaeaeaepMpMagaaaaaaaaaaaaaaaaaaaaaaBUBUyhyhyhyhCixPxPxPxPxPxPaeaeafafafafpepepepepepepeafafafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkacacacacacacacafafafafafafafafafafntufaeaeaeaeaeaeaeaeaeaeaeaeaeaeagaaaaaaaaaaaaaaaaaaaaaaaaBUCjyhyhyhyhxQaeaeaeaeaeaeaeafafafafpepepepepepepeafafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkacacacacacacacacacacacacacafaeaeaeaeaeaeaeaeaeaeaeaeaeqNaeaeaaaaaaaaaaaaaaaaaaaaaaaaBUBUCkCkClyhxQaeaeaeaeaeaeafafafafpepepepepepepeafafafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkctbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkacacacacacacacacacacacacafaeaeaeaeaeaeaeaeaeaeaeaeafntafafaaaaaaaaaaaaaaaaaaaaaaaaaaBUxPxPxPxPxPaeaeaeaeofntafafafpepepepepepepeafafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkacacacacacafafaeaeaeaeaeaeaeaeaeafacacafafafaaaaaaaaaaaaaaaaaaaaaaaaaaaeaeaeaeaeaeaeaeaeaeaeafafafpepepepepepepeafafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacbkbkbkbkbkbkbkbkbkbkbkbkctbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkacacacacafafafafafafafafafafafacacacafafafaaaaaaaaaaaaaaaaaaaaaaaaaeaeaeaeaeaeaeaeaeaeafafafpepepepepepepeafafafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaeaeaevpaeaeaeafafafafafafpepepepepeafafafafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkctbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkacacacacacacacacacacacacbkbkbkbkbkacacaaaaaaaaaaaaaaaaaaaaaaaeaeafntafafafafafafafafpepepepepepeafafafafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkacacacaaaaaaaaaaaaaaaaaaaaaaafafafafafafafafafafpepepepepepeafafafafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkctbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkctbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkacacacaaaaaaaaaaaaaaaaaaaaaaaaafafafafafafpepepepepepepeafafafafafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkacacacaaaaaaaaaaaaaaaaaaaaaaaaaaafafafafpepepepepepepeafafafafafafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaafafafpepepepepeafafafafafafafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacacacacbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafafafafpepepeafafafafafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacacacacacacacbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafafafafafafafafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacacacacacacacacacbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkctbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafafafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacafaeaewvyrysytwJyuyvywyxyyyzyAyByCyDulumrBrBrBrBrBqUaeaeaeaeafafafacacacacacbkbkbkacacacacafafaeaeujrBrBrBrBrBrBrBrBulumrBrBrBrBqUaeaeaeaeaeafacacacacacybyEyFyGxrxOyHxsxOxHyIyJyKxsxOxryLyMwgwgwgyNyOyOyOyOyOyOyOyPyPyPyPyPyPyPxQxQxQyQyhyRySyTyUylylyVyWyXyYyZzaaeaeaenuafafafpepepepepepeafafafafafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacafaeaewvwvwvwvwvzbzczdwvwvzewvwvwvwvqyqAaeaeaeaeaeqLaeaeaeaeafaeafafacacacacacacacacacacafafaeaeaeqLaeaeaeaeaeaeaeaeqyqAaeaeaeaeqLaeaeaeaeaeafafntafafacvPvPvPvPxrxOzfzgzhxJzizjzjzkzkzlzjzmznzjznzozozozozozozozozpzpzpzpzpzpzpzqzrzqzszrztzuzvzwzxzyzzyqzAzByqqAaeaeaeaeafafafafpepepepepeafafafafafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacafafaeaeaeaeaewvzCzDzEzFwvzGzHonaeaeaeaeaeqNaeaeaeqTrBrBqUaeaeaeaeafacacacacacacacacacacafaeaeujrBukaeaeaeaeafaeaeqNaeaeaeaeaeaeqLaeaeaeaeaeaeaewhaeafafafafafvPxrzIzJzKzKzJzLzMzNzKzKzOzJzPzQzQzQzRzRzRzRzRzRzRzRzSzSzSzSzSzSzTzUzUzUzVzWzXzYzZAaAbAaAaAaAaAaAaAcaeAdaeaenuafafafpepepepeafafafafafafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacafafaeaeaeaewvAeAfAgAhwvaeaeaeaeaeaeafafntafaeaeaeaeaeqLaeaeaeaeaeafacacacacacafafafafafaeujukaeaeaeafafafafafafntaeaeaeaeaeaeqLaeaeaeaeaeaeaeaeaeaeaeafafvPvPycAiycvPvPAjAkAlvPvPvPAmycvPwgaeaeaeaaaaaaaaagaaaaaaagaaaaaaaaaaagaaxQxQyhAnAoApAqArAsAtAuAvAaAwAxAdAdAdaeaeafafafpepepepeafafafpeafafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacafafaeaeaewvwvwvwvwvwvaeaeafafafafafacacafafaeaeaeaeqLaeaeaeaeaeaeafafafafafafaeaeaeaeaeqLaeaeafafafacacacacacafaeaeaeaeaeaeqLaeaeaeseqDaeaeaeaeaeaeaeafvPAyAzAAABvPACADAEAFAGvPAHAIAJvPaeaeaeaeaeaeaaaaagaaaaaaagagagagagagagagagxPAKALAMANAOAOAPAQAQARASATwuaeaeaeaeaeafafafpepepeafafpepepeafafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacafaeaeaeaeaeaeaeaeaeaeaeafacacacacacacacafafaeaeaeqTrBrBrBqUaeaeaeaeaeaeaeaeaeaeaeaeaeqLaeafafacacacacacacacafafaeaeaeaeaeqTrBrBrBulumrBrBrBqUaeaeaeaevPAUAVAWAXvPAYAZAZBaBbvPBcBdBevPaeaeaeaeaeaeagagagagagagagBfBfBfBfBfagaaaaxPBgBhBiBjBkBlBmAQAQARASATwuaeaeaeaeafafafafpepeafafafpepepeafafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacafaeaeaeaeaeaeaeaeaeafafafacacacacacacacacafafafaeaeaeaeaeqTqUaeaeseqDaeaeujrBrBrBrBrBukaeafacacacacbkbkbkacacafafafaeaeaeaeaeaeaeqyqAaeaeaeqLaeaeaeaeyavPvPvPvPvPBnBoBpBqBbvPvPBrycyaaeaeaeaeaeaeaaaaagaaaaaaagBfBfBfBfBfagaaxQxQBsBtBuAaBvBwBxByAuAvAaBzwFaeaeaeaeafafafpepepeafafafafpepeafafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacafafafafaeaeaeaeafafafacacacacacacacacacacacacafafafaeqNaeaeqTrBrBulumrBrBukaeaeaeaeaeaeaeafacacacbkbkbkbkbkacacacafafafafaeaeaeaeaeaeaeaeaeqTrBrBqUaeaeaeaeaeaeyavPvPvPvPvPyaBABBBCBDaeaeaeaeaeaaaaaaagaaaaaaagBfBfBfBfBfBExQBFBGBHBIBJxPBKBLBKBKBKBKBKBKufaeaeaeafafafafpepeafafafafpepepeafafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacacafafafafafafacacacacacacacacacacacacacacacacafafntafaeaeaeaeqyqAaeaeaeaeqNaeafafafafafacacbkbkbkbkbkbkbkacacacacacafafafafafafafafaeaeaeaeaeqLaeaeaeaeaeaeaeaeqyBMBNBNBNBNBOqAaeaeaeaeaeaeagagagagagagagagBfBfBfBfBfBPBQBRBSyhBIBTxPBUBVBWBXBYBZCaCbaeaeaeaeafafafafpepeafafafpepepeafafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacbkbkbkbkbkbkacacacacacacafafaeaeaeaeaeaeaeaeaentafafacacacacacbkbkbkbkbkbkbkbkacacacacacacacacacacacacafafaeaeaeaeqLaeaeaeaeaeaeaeaeaeaeaeaeaeaeaeaeaeaeaeaeaeaeaeaaaaaaaaaaaaagBfBfBfBfBfxQxQxQCcyhCdCeCfCgChCiCjCkClClCbaeaeaerLntafafafpeafafafafpepepeafafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacacacacacacacacacacbkbkbkbkbkbkbkbkbkbkbkacacacacacacafafafaeaeaeafafafafafacacacacacbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkacacacacacafaeaeaeaeqTrBrBrBrBrBrBrBrBrBrBrBrBrBrBrBrBrBqUaeaeaeaeaeaeaaaaaaaaaaagBfBfBfBfBfCmaaxQxQyhBICnCoCpCqClClCrCrCsBKaeaeaeaeafafafafafafafafpepepeafafafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacbkacacacacbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkacacacacacacafafafafafacacacacacacacbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkacacacacacafafafaeaeaeaeaeaeaeaeaeaeaeaeaeaeaeaeaeaeaeaeqLaeseqDaeaeaentntaaaaaaagBfBfBfBfBfagaaaaxPCtBIBiCuClClClCvCwCwCxCbaeaeaeaeafafafafafpeafafpepepeafafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkacacacacacacacacacacacacacacacbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkacacacacacacafafafaeaeaeaeaeaeaeaeaeaeaeaeaeaeaeaeaeaeqTrBulumrBrBrBCyCzCACACACACACACACACACACACACBCCCDCExPCFCGCHClCICIClCbaeaeafafafafafpepepeafpepepeafafafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkacacacacacacacacacbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkacacacacacacafafafaeaeaeaeaeaeaeafafaeaeaeaeaeaeaeaeaeqyqAaeaeaentntagaaaaaaaaaaaaaaaaaaaaaaCJCJCKCLCJBKBKBKCbCbCbCbBKaeaeafafafafpepepepepepepeafafafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkacacacacacacacafafafafafafafafafafntufaeaeaeaeaeaeaeaeaeaeaeaeaeaeagaaaaaaaaaaaaaaaaaaaaaaCJCMCNCOCPCQCRCJaeaeaeaeaeaeaeafafafafpepepepepepepeafafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkacacacacacacacacacacacacacafaeaeaeaeaeaeaeaeaeaeaeaeaeqNaeaeaaaaaaaaaaaaaaaaaaaaaaCJCSCTCUCVBmCWCJaeaeaeaeaeaeafafafafpepepepepepepeafafafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkctbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkacacacacacacacacacacacacafaeaeaeaeaeaeaeaeaeaeaeaeafntafafaaaaaaaaaaaaaaaaaaaaaaCJCXCYCZDaBmDbCJaeaeaeaeofntafafafpepepepepepepeafafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkacacacacacafafaeaeaeaeaeaeaeaeaeafacacafafafaaaaaaaaaaaaaaaaaaaaaaCJDcDdDdDdDeDfCJaeaeaeaeaeafafafpepepepepepepeafafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacbkbkbkbkbkbkbkbkbkbkbkbkctbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkacacacacafafafafafafafafafafafacacacafafafaaaaaaaaaaaaaaaaaaaaCJCJCJCJCJCJCJCJaeaeaeaeafafafpepepepepepepeafafafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaeaeaeaeaevpaeaeaeafafafafafafpepepepepeafafafafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkctbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkacacacacacacacacacacacacbkbkbkbkbkacacaaaaaaaaaaaaaaaaaaaaaeaeaeafntafafafafafafafafpepepepepepeafafafafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkacacacaaaaaaaaaaaaaaaaaaaeaeafafafafafafafafafafpepepepepepeafafafafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkctbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkctbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkDgbkbkbkbkacacacaaaaaaaaaaaaaaaaaaaaaeaeafafafafafafpepepepepepepeafafafafafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkacacacaaaaaaaaaaaaaaaaaaaaaaaeaeafafafafpepepepepepepeafafafafafafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkacacacaaaaaaaaaaaaaaaaaaaaaaaaaeaeafafafpepepepepeafafafafafafafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacacacacbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkDhbkbkbkbkacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaeaeafafafafpepepeafafafafafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacacacacacacacbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaeaeafafafafafafafafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacacacacacacacacacbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkctbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaeaeaeaeafafafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacacacacacacacacacbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkctbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacaaaaaaaaacacacacacacacacbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkctbkbkbkbkbkbkbkbkbkbkbkbkbkacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkacacacacacacaaaaaaaaaaaaaaaaaaaaaaCmaaaaaaCmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkctbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkacacacacaaaaaaaaaaaaaaaaaaaaaaCmCmCmCmCmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacacbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkacacacaaaaaaaaCmaaaaCmaaaaCmCmCmCmCmCmCmaaaaCmaaaaCmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacacbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkacacacacaaaaaaaaCmCmCmCmaaCmCmCmCmCmCmCmCmCmaaCmCmCmCmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacacacacacacacacbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkacacacacacaaaaaaaaaaCmCmCmCmaaCmCmCmCmCmCmCmCmCmaaCmCmCmCmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacacacacacacacacacacacbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkctbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkacacacacacaaaaaaaaaaCmCmCmCmaaCmCmCmCmCmCmCmCmCmaaCmCmCmCmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacacacacacacacacacacacacbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkacacacacacaaaaaaaaaaaaCmCmCmCmCmCmCmCmCmCmCmCmCmCmCmCmCmCmCmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacacacacacacacacacacbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkacacacacbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkacacacacaaaaaaaaaaaaaaaaaaCmCmCmCmCmCmCmCmCmCmCmCmCmCmCmCmCmCmCmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacacacacacacacacacacbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkacacacacacacacacacacacacacacacacacbkbkbkbkbkbkacacacacacacacacaaaaaaaaaaaaaaaaaaCmCmCmCmCmCmCmCmCmCmCmCmCmCmCmCmCmCmCmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacacacacacbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaCmCmCmCmCmCmCmCmCmCmCmCmCmCmCmCmCmCmCmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacacacacacacacbkbkbkbkbkbkbkbkbkbkbkbkbkacacacacacacacacacacacacaaaaaaaaacacacacacacacacacacacacacacaaacacacaaaaaaaaaaaaaaaaaaaaaaCmCmCmCmCmCmCmCmCmCmCmCmCmCmCmCmCmCmCmCmCmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaacacacaaaaaaaaacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaCmCmCmCmCmCmCmCmCmCmCmCmCmCmCmCmCmCmCmCmCmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaCmCmCmCmaaaaCmCmCmCmCmCmCmaaaaCmCmCmCmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaCmCmCmCmCmCmCmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaCmCmCmCmCmCmCmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaCmCmCmCmCmCmCmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaCmCmCmCmCmCmCmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaCmCmCmCmCmCmCmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaCmCmCmCmCmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkacacacacacacaaaaaaaaaaaaaaaaaaaaaaDiaaaaaaDiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkctbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkacacacacaaaaaaaaaaaaaaaaaaaaaaDiDiDiDiDiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacacbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkacacacaaaaaaaaDiaaaaDiaaaaDiDiDiDiDiDiDiaaaaDiaaaaDiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacacbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkacacacacaaaaaaaaDiDiDiDiaaDiDiDiDiDiDiDiDiDiaaDiDiDiDiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacacacacacacacacbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkacacacacacaaaaaaaaaaDiDiDiDiaaDiDiDiDiDiDiDiDiDiaaDiDiDiDiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacacacacacacacacacacacbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkctbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkacacacacacaaaaaaaaaaDiDiDiDiaaDiDiDiDiDiDiDiDiDiaaDiDiDiDiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacacacacacacacacacacacacbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkacacacacacaaaaaaaaaaaaDiDiDiDiDiDiDiDiDiDiDiDiDiDiDiDiDiDiDiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacacacacacacacacacacbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkacacacacbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkacacacacaaaaaaaaaaaaaaaaaaDiDiDiDiDiDiDiDiDiDiDiDiDiDiDiDiDiDiDiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacacacacacacacacacacbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkacacacacacacacacacacacacacacacacacbkbkbkbkbkbkacacacacacacacacaaaaaaaaaaaaaaaaaaDiDiDiDiDiDiDiDiDiDiDiDiDiDiDiDiDiDiDiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacacacacacbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkbkacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaDiDiDiDiDiDiDiDiDiDiDiDiDiDiDiDiDiDiDiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacacacacacacacbkbkbkbkbkbkbkbkbkbkbkbkbkacacacacacacacacacacacacaaaaaaaaacacacacacacacacacacacacacacaaacacacaaaaaaaaaaaaaaaaaaaaaaDiDiDiDiDiDiDiDiDiDiDiDiDiDiDiDiDiDiDiDiDiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaacacacaaaaaaaaacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaDiDiDiDiDiDiDiDiDiDiDiDiDiDiDiDiDiDiDiDiDiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacacacacacacacacacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaDiDiDiDiaaaaDiDiDiDiDiDiDiaaaaDiDiDiDiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacacacacacacacacacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaDiDiDiDiDiDiDiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaDiDiDiDiDiDiDiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaDiDiDiDiDiDiDiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaDiDiDiDiDiDiDiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaDiDiDiDiDiDiDiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaDiDiDiDiDiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa From 58d40b730d95e19026a052fecbfd09fedb8a095d Mon Sep 17 00:00:00 2001 From: Fox-McCloud Date: Sun, 13 Sep 2015 12:33:42 -0400 Subject: [PATCH 23/44] Changeling Swap Forms Language Fix --- code/game/gamemodes/changeling/powers/swap_form.dm | 2 ++ 1 file changed, 2 insertions(+) diff --git a/code/game/gamemodes/changeling/powers/swap_form.dm b/code/game/gamemodes/changeling/powers/swap_form.dm index ffbadfab21c..be5df7d9a67 100644 --- a/code/game/gamemodes/changeling/powers/swap_form.dm +++ b/code/game/gamemodes/changeling/powers/swap_form.dm @@ -50,4 +50,6 @@ user.key = ghost.key user.Paralyse(2) + user.remove_language("Changeling") + target.add_language("Changeling") target << "Our genes cry out as we swap our [user] form for [target]." \ No newline at end of file From c94e274446bc74192f78711136730bf5510b493a Mon Sep 17 00:00:00 2001 From: Fox-McCloud Date: Sun, 13 Sep 2015 14:15:14 -0400 Subject: [PATCH 24/44] Mech Balance Tweaks --- code/game/mecha/combat/honker.dm | 2 +- code/game/mecha/medical/odysseus.dm | 2 +- code/game/mecha/working/ripley.dm | 19 ++++++++++++++++--- 3 files changed, 18 insertions(+), 5 deletions(-) diff --git a/code/game/mecha/combat/honker.dm b/code/game/mecha/combat/honker.dm index 9f68e36ba7b..d8ef8c8b9fe 100644 --- a/code/game/mecha/combat/honker.dm +++ b/code/game/mecha/combat/honker.dm @@ -3,7 +3,7 @@ name = "H.O.N.K" icon_state = "honker" initial_icon = "honker" - step_in = 2 + step_in = 3 health = 140 deflect_chance = 60 internal_damage_threshold = 60 diff --git a/code/game/mecha/medical/odysseus.dm b/code/game/mecha/medical/odysseus.dm index e6c169e843d..5bbcb367291 100644 --- a/code/game/mecha/medical/odysseus.dm +++ b/code/game/mecha/medical/odysseus.dm @@ -3,7 +3,7 @@ name = "Odysseus" icon_state = "odysseus" initial_icon = "odysseus" - step_in = 2 + step_in = 3 max_temperature = 15000 health = 120 wreckage = /obj/effect/decal/mecha_wreckage/odysseus diff --git a/code/game/mecha/working/ripley.dm b/code/game/mecha/working/ripley.dm index a50b3e5d225..4b07ea1ac89 100644 --- a/code/game/mecha/working/ripley.dm +++ b/code/game/mecha/working/ripley.dm @@ -8,7 +8,8 @@ health = 200 lights_power = 7 deflect_chance = 15 - damage_absorption = list("brute"=0.6,"bomb"=0.2) + damage_absorption = list("brute"=0.6,"fire"=1,"bullet"=0.8,"laser"=0.9,"energy"=1,"bomb"=0.6) + max_equip = 6 wreckage = /obj/effect/decal/mecha_wreckage/ripley var/list/cargo = new var/cargo_capacity = 15 @@ -64,14 +65,15 @@ max_temperature = 65000 health = 250 lights_power = 7 - damage_absorption = list("fire"=0.5,"bullet"=0.8,"bomb"=0.5) + damage_absorption = list("brute"=0.6,"fire"=0.5,"bullet"=0.7,"laser"=0.7,"energy"=1,"bomb"=0.4) + max_equip = 5 // More armor, less tools wreckage = /obj/effect/decal/mecha_wreckage/ripley/firefighter /obj/mecha/working/ripley/deathripley desc = "OH SHIT IT'S THE DEATHSQUAD WE'RE ALL GONNA DIE" name = "DEATH-RIPLEY" icon_state = "deathripley" - step_in = 2 + step_in = 3 opacity=0 lights_power = 7 wreckage = /obj/effect/decal/mecha_wreckage/ripley/deathripley @@ -97,12 +99,23 @@ var/obj/item/mecha_parts/mecha_equipment/tool/drill/D = new /obj/item/mecha_parts/mecha_equipment/tool/drill D.attach(src) + //Add possible plasma cutter + if(prob(25)) + var/obj/item/mecha_parts/mecha_equipment/M = new /obj/item/mecha_parts/mecha_equipment/weapon/energy/plasma + M.attach(src) + + //Add ore box to cargo + cargo.Add(new /obj/structure/ore_box(src)) + //Attach hydrolic clamp var/obj/item/mecha_parts/mecha_equipment/tool/hydraulic_clamp/HC = new /obj/item/mecha_parts/mecha_equipment/tool/hydraulic_clamp HC.attach(src) for(var/obj/item/mecha_parts/mecha_tracking/B in src.contents)//Deletes the beacon so it can't be found easily qdel(B) + var/obj/item/mecha_parts/mecha_equipment/tool/mining_scanner/scanner = new /obj/item/mecha_parts/mecha_equipment/tool/mining_scanner + scanner.attach(src) + /obj/mecha/working/ripley/Exit(atom/movable/O) if(O in cargo) return 0 From 84a354c9eb7c1830d130cc464d199b4e9bc99a64 Mon Sep 17 00:00:00 2001 From: M3hillus Date: Sun, 13 Sep 2015 13:16:21 -0500 Subject: [PATCH 25/44] Added Lightswitches --- _maps/map_files/cyberiad/z5.dmm | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/_maps/map_files/cyberiad/z5.dmm b/_maps/map_files/cyberiad/z5.dmm index 6c383d087eb..06ee178d2b3 100644 --- a/_maps/map_files/cyberiad/z5.dmm +++ b/_maps/map_files/cyberiad/z5.dmm @@ -1425,7 +1425,7 @@ "Bu" = (/obj/machinery/atmospherics/pipe/manifold/hidden{dir = 4},/obj/structure/disposalpipe/segment,/turf/simulated/floor,/area/mine/lobby) "Bv" = (/obj/machinery/mineral/equipment_vendor,/turf/simulated/floor,/area/mine/production{name = "Mining Station Mech Bay"}) "Bw" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/machinery/atmospherics/pipe/simple/hidden,/obj/machinery/light,/turf/simulated/floor,/area/mine/production{name = "Mining Station Mech Bay"}) -"Bx" = (/obj/structure/ore_box,/obj/machinery/camera{c_tag = "Mining Outpost Mech Bay"; dir = 1; network = list("Mining Outpost")},/turf/simulated/floor{icon_state = "bot"},/area/mine/production{name = "Mining Station Mech Bay"}) +"Bx" = (/obj/structure/ore_box,/obj/machinery/camera{c_tag = "Mining Outpost Mech Bay"; dir = 1; network = list("Mining Outpost")},/obj/machinery/light_switch{pixel_y = -25},/turf/simulated/floor{icon_state = "bot"},/area/mine/production{name = "Mining Station Mech Bay"}) "By" = (/obj/machinery/mech_bay_recharge_port,/obj/machinery/light/small,/turf/simulated/floor/plating,/area/mine/production{name = "Mining Station Mech Bay"}) "Bz" = (/turf/simulated/floor/airless{icon_state = "asteroidwarning"; dir = 2},/area/mine/production) "BA" = (/turf/simulated/floor/airless{dir = 5; icon_state = "asteroidfloor"; tag = "icon-asteroidfloor"},/area/mine/explored) @@ -1472,7 +1472,7 @@ "Cp" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4; level = 1},/turf/simulated/floor{icon_state = "bar"},/area/mine/living_quarters{name = "Mining Station Break Room"}) "Cq" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 8; on = 1},/turf/simulated/floor{icon_state = "bar"},/area/mine/living_quarters{name = "Mining Station Break Room"}) "Cr" = (/obj/structure/stool/bed/chair,/turf/simulated/floor{icon_state = "bar"},/area/mine/living_quarters{name = "Mining Station Break Room"}) -"Cs" = (/obj/machinery/camera{c_tag = "Mining Outpost Production Room"; dir = 8; network = list("Mining Outpost")},/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/simulated/floor{icon_state = "bar"},/area/mine/living_quarters{name = "Mining Station Break Room"}) +"Cs" = (/obj/machinery/camera{c_tag = "Mining Outpost Break Room"; dir = 8; network = list("Mining Outpost")},/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/simulated/floor{icon_state = "bar"},/area/mine/living_quarters{name = "Mining Station Break Room"}) "Ct" = (/obj/machinery/light_switch{pixel_x = -23; pixel_y = 0},/turf/simulated/floor,/area/mine/lobby) "Cu" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Mining Break Room"},/turf/simulated/floor{icon_state = "bar"},/area/mine/lobby) "Cv" = (/obj/structure/stool/bed/chair{dir = 4},/turf/simulated/floor{icon_state = "bar"},/area/mine/living_quarters{name = "Mining Station Break Room"}) @@ -1487,14 +1487,14 @@ "CE" = (/obj/machinery/atmospherics/pipe/simple/hidden,/obj/structure/disposalpipe/segment,/obj/machinery/light/small,/turf/simulated/floor,/area/mine/lobby) "CF" = (/obj/machinery/vending/cigarette,/turf/simulated/floor{icon_state = "bar"},/area/mine/living_quarters{name = "Mining Station Break Room"}) "CG" = (/obj/machinery/vending/coffee,/turf/simulated/floor{icon_state = "bar"},/area/mine/living_quarters{name = "Mining Station Break Room"}) -"CH" = (/obj/machinery/light/small,/turf/simulated/floor{icon_state = "bar"},/area/mine/living_quarters{name = "Mining Station Break Room"}) +"CH" = (/obj/machinery/light/small,/obj/machinery/light_switch{pixel_y = -25},/turf/simulated/floor{icon_state = "bar"},/area/mine/living_quarters{name = "Mining Station Break Room"}) "CI" = (/obj/structure/stool/bed/chair{dir = 1},/turf/simulated/floor{icon_state = "bar"},/area/mine/living_quarters{name = "Mining Station Break Room"}) "CJ" = (/turf/simulated/wall,/area/mine/production) "CK" = (/obj/machinery/door/firedoor,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/machinery/door/airlock/glass_mining{name = "Mining Station Loading Bay"; req_access_txt = "54"},/turf/simulated/floor,/area/mine/production) "CL" = (/obj/machinery/atmospherics/pipe/simple/hidden,/obj/structure/disposalpipe/segment,/turf/simulated/wall,/area/mine/production) "CM" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/machinery/light/small{dir = 1},/turf/simulated/floor,/area/mine/production) "CN" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor,/area/mine/production) -"CO" = (/obj/machinery/atmospherics/pipe/simple/hidden,/obj/structure/disposalpipe/segment,/turf/simulated/floor,/area/mine/production) +"CO" = (/obj/machinery/atmospherics/pipe/simple/hidden,/obj/structure/disposalpipe/segment,/obj/machinery/light_switch{pixel_y = 25},/turf/simulated/floor,/area/mine/production) "CP" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/power/apc{dir = 1; name = "Mining Station Loading Bay APC"; pixel_x = 1; pixel_y = 25},/turf/simulated/floor{dir = 4; icon_state = "loadingarea"; tag = "loading"},/area/mine/production) "CQ" = (/obj/machinery/mineral/mint{input_dir = 8; output_dir = 4},/turf/simulated/floor,/area/mine/production) "CR" = (/obj/machinery/alarm{pixel_y = 25; target_temperature = 283.15},/turf/simulated/floor{dir = 4; icon_state = "loadingarea"; tag = "loading"},/area/mine/production) From 1d3bb826a06706188fc34dd683364e6022417ddf Mon Sep 17 00:00:00 2001 From: Tigercat2000 Date: Sun, 13 Sep 2015 14:23:04 -0700 Subject: [PATCH 26/44] Add sorting pipe between cargo and disposals, so only items destined for disposals will sort there --- _maps/map_files/cyberiad/cyberiad.dmm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/_maps/map_files/cyberiad/cyberiad.dmm b/_maps/map_files/cyberiad/cyberiad.dmm index a6961205eeb..db4449d96a0 100644 --- a/_maps/map_files/cyberiad/cyberiad.dmm +++ b/_maps/map_files/cyberiad/cyberiad.dmm @@ -3477,7 +3477,7 @@ "boS" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 8; initialize_directions = 11; level = 1},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor,/area/hallway/secondary/entry) "boT" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/plating,/area/maintenance/port) "boU" = (/obj/effect/landmark{name = "blobstart"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/simulated/floor/plating,/area/maintenance/port) -"boV" = (/obj/effect/decal/cleanable/dirt,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/simulated/floor/plating,/area/maintenance/port) +"boV" = (/obj/effect/decal/cleanable/dirt,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/disposalpipe/junction{dir = 1; icon_state = "pipe-j2"; tag = "icon-pipe-j2"},/turf/simulated/floor/plating,/area/maintenance/port) "boW" = (/obj/effect/decal/cleanable/dirt,/obj/effect/decal/remains/robot,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 9; icon_state = "intact"},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/simulated/floor/plating,/area/maintenance/port) "boX" = (/obj/structure/closet/emcloset,/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/floor/plating,/area/maintenance/port) "boY" = (/obj/machinery/atmospherics/pipe/simple/hidden{dir = 4},/turf/simulated/wall,/area/maintenance/port) @@ -3531,7 +3531,7 @@ "bpU" = (/obj/effect/decal/cleanable/fungus,/turf/simulated/wall,/area/maintenance/disposal) "bpV" = (/obj/structure/disposalpipe/segment,/turf/simulated/wall,/area/maintenance/port) "bpW" = (/obj/effect/decal/cleanable/fungus,/turf/simulated/wall,/area/maintenance/port) -"bpX" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/sign/poster{pixel_x = -32},/turf/simulated/floor/plating,/area/maintenance/port) +"bpX" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/sign/poster{pixel_x = -32},/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating,/area/maintenance/port) "bpY" = (/obj/machinery/door/airlock{name = "Unit 3"},/turf/simulated/floor{icon_state = "freezerfloor"},/area/crew_quarters/locker/locker_toilet) "bpZ" = (/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/turf/simulated/floor{icon_state = "freezerfloor"},/area/crew_quarters/locker/locker_toilet) "bqa" = (/obj/item/latexballon,/turf/simulated/floor/plating,/area/maintenance/port) @@ -3609,7 +3609,7 @@ "bru" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plating,/area/maintenance/port) "brv" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/turf/simulated/floor/plating,/area/maintenance/port) "brw" = (/obj/machinery/light/small{dir = 1},/obj/machinery/conveyor{dir = 8; id = "garbage"},/turf/simulated/floor/plating,/area/maintenance/disposal) -"brx" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4; initialize_directions = 11; level = 1},/turf/simulated/floor/plating,/area/maintenance/port) +"brx" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 10},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 4; initialize_directions = 11; level = 1},/obj/structure/disposalpipe/sortjunction{dir = 1; icon_state = "pipe-j2s"; sortdir = 0; sortType = 1},/turf/simulated/floor/plating,/area/maintenance/port) "bry" = (/obj/machinery/camera{c_tag = "Locker Room Toilets"; dir = 8; network = list("SS13")},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/hologram/holopad,/turf/simulated/floor{icon_state = "freezerfloor"},/area/crew_quarters/locker/locker_toilet) "brz" = (/mob/living/simple_animal/mouse,/turf/simulated/floor/plating,/area/maintenance/port) "brA" = (/obj/machinery/conveyor{dir = 9; id = "garbage"; verted = -1},/turf/simulated/floor/plating,/area/maintenance/disposal) From 3ce1e989cec532479a735058ec1f61ce88ed9cf6 Mon Sep 17 00:00:00 2001 From: Fox-McCloud Date: Sun, 13 Sep 2015 17:49:36 -0400 Subject: [PATCH 27/44] Materials Consistency Fix/Update --- code/modules/mining/coins.dm | 14 +++++++------- .../reagents/reagent_containers/food/drinks.dm | 6 +++--- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/code/modules/mining/coins.dm b/code/modules/mining/coins.dm index 16643f8842a..e8103eebba6 100644 --- a/code/modules/mining/coins.dm +++ b/code/modules/mining/coins.dm @@ -25,43 +25,43 @@ /obj/item/weapon/coin/gold cmineral = "gold" icon_state = "coin_gold_heads" - materials = list(MAT_GOLD = 200) + materials = list(MAT_GOLD = 400) credits = 160 /obj/item/weapon/coin/silver cmineral = "silver" icon_state = "coin_silver_heads" - materials = list(MAT_SILVER = 200) + materials = list(MAT_SILVER = 400) credits = 40 /obj/item/weapon/coin/diamond cmineral = "diamond" icon_state = "coin_diamond_heads" - materials = list(MAT_DIAMOND = 200) + materials = list(MAT_DIAMOND = 400) credits = 120 /obj/item/weapon/coin/iron cmineral = "iron" icon_state = "coin_iron_heads" - materials = list(MAT_METAL = 200) + materials = list(MAT_METAL = 400) credits = 20 /obj/item/weapon/coin/plasma cmineral = "plasma" icon_state = "coin_plasma_heads" - materials = list(MAT_PLASMA = 200) + materials = list(MAT_PLASMA = 400) credits = 80 /obj/item/weapon/coin/uranium cmineral = "uranium" icon_state = "coin_uranium_heads" - materials = list(MAT_URANIUM = 200) + materials = list(MAT_URANIUM = 400) credits = 160 /obj/item/weapon/coin/clown cmineral = "bananium" icon_state = "coin_bananium_heads" - materials = list(MAT_BANANIUM = 200) + materials = list(MAT_BANANIUM = 400) credits = 600 //makes the clown cri /obj/item/weapon/coin/adamantine diff --git a/code/modules/reagents/reagent_containers/food/drinks.dm b/code/modules/reagents/reagent_containers/food/drinks.dm index 97c2693e439..375b30faeae 100644 --- a/code/modules/reagents/reagent_containers/food/drinks.dm +++ b/code/modules/reagents/reagent_containers/food/drinks.dm @@ -175,7 +175,7 @@ force = 14 throwforce = 10 amount_per_transfer_from_this = 20 - materials = list(MAT_GOLD=800) + materials = list(MAT_GOLD=1000) possible_transfer_amounts = null volume = 150 flags = CONDUCT | OPENCONTAINER @@ -358,14 +358,14 @@ name = "Captain's Flask" desc = "A metal flask belonging to the captain" icon_state = "flask" - materials = list(MAT_SILVER=300) + materials = list(MAT_SILVER=500) volume = 60 /obj/item/weapon/reagent_containers/food/drinks/flask/detflask name = "Detective's Flask" desc = "A metal flask with a leather band and golden badge belonging to the detective." icon_state = "detflask" - materials = list(MAT_METAL=200) + materials = list(MAT_METAL=250) volume = 60 /obj/item/weapon/reagent_containers/food/drinks/flask/barflask From 7d8a144c7ebb9c99d0a291c52f1728a4be758e9a Mon Sep 17 00:00:00 2001 From: Fox-McCloud Date: Sun, 13 Sep 2015 18:01:38 -0400 Subject: [PATCH 28/44] Death RIPLEY buff --- code/game/mecha/working/ripley.dm | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/code/game/mecha/working/ripley.dm b/code/game/mecha/working/ripley.dm index 4b07ea1ac89..576442ac902 100644 --- a/code/game/mecha/working/ripley.dm +++ b/code/game/mecha/working/ripley.dm @@ -73,9 +73,12 @@ desc = "OH SHIT IT'S THE DEATHSQUAD WE'RE ALL GONNA DIE" name = "DEATH-RIPLEY" icon_state = "deathripley" - step_in = 3 + step_in = 2 opacity=0 + max_temperature = 65000 + health = 300 lights_power = 7 + damage_absorption = list("brute"=0.6,"fire"=0.4,"bullet"=0.6,"laser"=0.6,"energy"=1,"bomb"=0.3) wreckage = /obj/effect/decal/mecha_wreckage/ripley/deathripley step_energy_drain = 0 From 5b407a47a894a7ca0af946816b8a83e7727f9ea7 Mon Sep 17 00:00:00 2001 From: Markolie Date: Mon, 14 Sep 2015 00:32:18 +0200 Subject: [PATCH 29/44] Fix skin tone/color selection in CMA --- code/modules/nano/modules/human_appearance.dm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/code/modules/nano/modules/human_appearance.dm b/code/modules/nano/modules/human_appearance.dm index bf5e03a924f..606dcade9c9 100644 --- a/code/modules/nano/modules/human_appearance.dm +++ b/code/modules/nano/modules/human_appearance.dm @@ -140,10 +140,10 @@ return owner && (flags & flag) /datum/nano_module/appearance_changer/proc/can_change_skin_tone() - return owner && (flags & APPEARANCE_SKIN) && owner.species.flags & HAS_SKIN_TONE + return owner && (flags & APPEARANCE_SKIN) && (owner.species.bodyflags & HAS_SKIN_TONE) /datum/nano_module/appearance_changer/proc/can_change_skin_color() - return owner && (flags & APPEARANCE_SKIN) && owner.species.flags & HAS_SKIN_COLOR + return owner && (flags & APPEARANCE_SKIN) && (owner.species.bodyflags & HAS_SKIN_COLOR) /datum/nano_module/appearance_changer/proc/cut_and_generate_data() // Making the assumption that the available species remain constant From 8afd2faa7c984e6ee6942448f009655f51e1854b Mon Sep 17 00:00:00 2001 From: Fox-McCloud Date: Sun, 13 Sep 2015 18:59:36 -0400 Subject: [PATCH 30/44] Fixes Autolathes and Stacks --- code/datums/material_container.dm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/code/datums/material_container.dm b/code/datums/material_container.dm index cf8d3100b05..8f84812e49e 100644 --- a/code/datums/material_container.dm +++ b/code/datums/material_container.dm @@ -80,7 +80,8 @@ if(!I) return 0 if(istype(I,/obj/item/stack)) - return insert_stack(I) + var/obj/item/stack/S = I + return insert_stack(I, S.amount) var/material_amount = get_item_material_amount(I) if(!material_amount || !has_space(material_amount)) From bfa70de3a0962cd5bbaa44aac6f62440aaece543 Mon Sep 17 00:00:00 2001 From: Markolie Date: Mon, 14 Sep 2015 01:32:49 +0200 Subject: [PATCH 31/44] Add Sergeant Araneus --- _maps/map_files/cyberiad/cyberiad.dmm | 2 +- .../simple_animal/hostile/retaliate/pet.dm | 23 +++++++++++++++++++ paradise.dme | 1 + 3 files changed, 25 insertions(+), 1 deletion(-) create mode 100644 code/modules/mob/living/simple_animal/hostile/retaliate/pet.dm diff --git a/_maps/map_files/cyberiad/cyberiad.dmm b/_maps/map_files/cyberiad/cyberiad.dmm index a6961205eeb..cb7fd96e5f5 100644 --- a/_maps/map_files/cyberiad/cyberiad.dmm +++ b/_maps/map_files/cyberiad/cyberiad.dmm @@ -204,7 +204,7 @@ "adV" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/power/apc{dir = 8; name = "Head of Security APC"; pixel_x = -24},/turf/simulated/floor{icon_state = "dark"},/area/security/hos) "adW" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor/carpet,/area/security/hos) "adX" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/turf/simulated/floor/carpet,/area/security/hos) -"adY" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor/carpet,/area/security/hos) +"adY" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/mob/living/simple_animal/hostile/retaliate/araneus,/turf/simulated/floor/carpet,/area/security/hos) "adZ" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor{icon_state = "dark"},/area/security/hos) "aea" = (/obj/structure/table/woodentable,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/item/device/radio,/turf/simulated/floor{icon_state = "dark"},/area/security/hos) "aeb" = (/obj/machinery/space_heater,/obj/machinery/light_switch{pixel_x = -25},/obj/effect/decal/warning_stripes/east,/turf/simulated/floor,/area/security/podbay) diff --git a/code/modules/mob/living/simple_animal/hostile/retaliate/pet.dm b/code/modules/mob/living/simple_animal/hostile/retaliate/pet.dm new file mode 100644 index 00000000000..17d764b9c1d --- /dev/null +++ b/code/modules/mob/living/simple_animal/hostile/retaliate/pet.dm @@ -0,0 +1,23 @@ +/mob/living/simple_animal/hostile/retaliate/araneus + name = "Sergeant Araneus" + real_name = "Sergeant Araneus" + voice_name = "unidentifiable voice" + desc = "A fierce companion for any person of power, this spider has been carefully trained by Nanotrasen specialists. Its beady, staring eyes send shivers down your spine." + faction = list("spiders") + icon_state = "guard" + icon_living = "guard" + icon_dead = "guard_dead" + icon_gib = "guard_dead" + turns_per_move = 8 + response_help = "pets" + emote_hear = list("chitters") + maxHealth = 250 + health = 200 + harm_intent_damage = 3 + melee_damage_lower = 15 + melee_damage_upper = 20 + + min_oxy = 5 + max_tox = 2 + max_co2 = 5 + diff --git a/paradise.dme b/paradise.dme index 12deff3c44e..1100195b20e 100644 --- a/paradise.dme +++ b/paradise.dme @@ -1462,6 +1462,7 @@ #include "code\modules\mob\living\simple_animal\hostile\tree.dm" #include "code\modules\mob\living\simple_animal\hostile\retaliate\clown.dm" #include "code\modules\mob\living\simple_animal\hostile\retaliate\drone.dm" +#include "code\modules\mob\living\simple_animal\hostile\retaliate\pet.dm" #include "code\modules\mob\living\simple_animal\hostile\retaliate\retaliate.dm" #include "code\modules\mob\living\simple_animal\hostile\retaliate\undead.dm" #include "code\modules\mob\living\simple_animal\revenant\revenant.dm" From 145d1dc5ec39b7bf28fd0899c612c9e10deea6be Mon Sep 17 00:00:00 2001 From: Markolie Date: Mon, 14 Sep 2015 02:04:07 +0200 Subject: [PATCH 32/44] Accounts database fixes --- code/modules/economy/Accounts.dm | 7 +++--- code/modules/economy/Accounts_DB.dm | 6 +++--- nano/templates/accounts_terminal.tmpl | 31 ++++++++++++++++++++++++--- 3 files changed, 35 insertions(+), 9 deletions(-) diff --git a/code/modules/economy/Accounts.dm b/code/modules/economy/Accounts.dm index 9dbfb8c2d51..493bfdd1e8a 100644 --- a/code/modules/economy/Accounts.dm +++ b/code/modules/economy/Accounts.dm @@ -92,8 +92,9 @@ var/global/list/all_money_accounts = list() P.wrapped = R R.name = "Account information: [M.owner_name]" - // AUTOFIXED BY fix_string_idiocy.py - // C:\Users\Rob\Documents\Projects\vgstation13\code\WorkInProgress\Cael_Aislinn\Economy\Accounts.dm:94: R.info = "Account details (confidential)


" + var/overseer = "Unknown" + if(source_db.held_card) + overseer = source_db.held_card.registered_name R.info = {"Account details (confidential)


Account holder: [M.owner_name]
Account number: [M.account_number]
@@ -101,7 +102,7 @@ var/global/list/all_money_accounts = list() Starting balance: $[M.money]
Date and time: [worldtime2text()], [current_date_string]

Creation terminal ID: [source_db.machine_id]
- Authorised NT officer overseeing creation: [source_db.held_card.registered_name]
"} + Authorised NT officer overseeing creation: [overseer]
"} // END AUTOFIX //stamp the paper var/image/stampoverlay = image('icons/obj/bureaucracy.dmi') diff --git a/code/modules/economy/Accounts_DB.dm b/code/modules/economy/Accounts_DB.dm index a4a27209d3b..1168a3f4bb6 100644 --- a/code/modules/economy/Accounts_DB.dm +++ b/code/modules/economy/Accounts_DB.dm @@ -131,9 +131,9 @@ if(..()) return 1 - if("insert_card") + if(href_list["insert_card"]) if(held_card) - held_card.loc = src.loc + held_card.forceMove(loc) if(ishuman(usr) && !usr.get_active_hand()) usr.put_in_hands(held_card) @@ -144,7 +144,7 @@ if (istype(I, /obj/item/weapon/card/id)) var/obj/item/weapon/card/id/C = I usr.drop_item() - C.loc = src + C.forceMove(src) held_card = C if(!get_access_level(usr)) diff --git a/nano/templates/accounts_terminal.tmpl b/nano/templates/accounts_terminal.tmpl index 7397eda8ad5..5722383aa84 100644 --- a/nano/templates/accounts_terminal.tmpl +++ b/nano/templates/accounts_terminal.tmpl @@ -23,9 +23,35 @@ {{:helper.link('New Account', 'gear', {'choice' : 'create_account'}, data.creating_new_account ? 'disabled' : null, 'fixedLeft')}} {{:helper.link('Print', 'print', {'choice' : 'print'}, data.creating_new_account ? 'disabled' : null, 'fixedLeft')}} + {{if data.creating_new_account}} +
+

Create Account

+
- - {{if data.detailed_account_view}} + + + +
+
+ Account Holder: +
+
+ +
+
+
+
+ Initial Deposit: +
+
+ +
+
+
+ +
+ + {{else data.detailed_account_view}}

Account Details

@@ -100,7 +126,6 @@ {{/if}}
{{else}} -

Nanotrasen Accounts

From f41f0a59feb8b71b801e9904bf7b8d7ef2caca8b Mon Sep 17 00:00:00 2001 From: Markolie Date: Mon, 14 Sep 2015 04:05:20 +0200 Subject: [PATCH 33/44] Guns update --- _maps/map_files/cyberiad/z2.dmm | 10 +- _maps/map_files/cyberiad/z6.dmm | 2 +- code/datums/uplink_item.dm | 29 ++- code/game/gamemodes/wizard/rightandwrong.dm | 12 +- code/game/machinery/vending.dm | 16 ++ .../game/objects/effects/spawners/lootdrop.dm | 2 +- code/game/objects/structures/bedsheet_bin.dm | 6 + .../crates_lockers/closets/syndicate.dm | 10 +- code/modules/admin/verbs/debug.dm | 2 +- .../admin/verbs/striketeam_syndicate.dm | 2 +- code/modules/clothing/under/miscellaneous.dm | 7 + code/modules/jungle/jungle_temple.dm | 2 +- .../projectiles/ammunition/ammo_casings.dm | 6 +- .../projectiles/ammunition/magazines.dm | 26 ++- code/modules/projectiles/gun.dm | 80 ++++--- code/modules/projectiles/guns/energy/hos.dm | 2 +- code/modules/projectiles/guns/energy/laser.dm | 3 +- .../projectiles/guns/energy/special.dm | 2 +- .../projectiles/guns/projectile/automatic.dm | 217 ++++++++++-------- .../projectiles/guns/projectile/launchers.dm | 10 +- .../projectiles/guns/projectile/pistol.dm | 38 ++- .../projectiles/guns/projectile/revolver.dm | 9 +- .../projectiles/guns/projectile/shotgun.dm | 38 ++- .../research/designs/weapon_designs.dm | 8 +- icons/mob/back.dmi | Bin 75215 -> 75876 bytes icons/mob/uniform.dmi | Bin 295510 -> 296687 bytes icons/obj/ammo.dmi | Bin 18228 -> 18488 bytes icons/obj/clothing/uniforms.dmi | Bin 71347 -> 71568 bytes icons/obj/gun.dmi | Bin 73105 -> 78179 bytes icons/obj/items.dmi | Bin 89014 -> 89378 bytes icons/obj/vending.dmi | Bin 85185 -> 86680 bytes 31 files changed, 318 insertions(+), 221 deletions(-) diff --git a/_maps/map_files/cyberiad/z2.dmm b/_maps/map_files/cyberiad/z2.dmm index 8ffe65bf82c..867577c5a14 100644 --- a/_maps/map_files/cyberiad/z2.dmm +++ b/_maps/map_files/cyberiad/z2.dmm @@ -1147,7 +1147,7 @@ "wc" = (/turf/unsimulated/floor{tag = "icon-warning (NORTHWEST)"; icon_state = "warning"; dir = 9},/area/centcom/specops) "wd" = (/turf/unsimulated/floor{dir = 5; icon_state = "warning"},/area/centcom/specops) "we" = (/turf/space,/area/centcom/specops) -"wf" = (/obj/item/weapon/gun/projectile/automatic/m2411,/obj/item/ammo_box/magazine/m45,/obj/item/ammo_box/magazine/m45,/obj/item/ammo_box/magazine/m45,/obj/structure/closet{icon_closed = "cabinet_closed"; icon_opened = "cabinet_open"; icon_state = "cabinet_closed"},/obj/item/clothing/head/helmet/space/deathsquad/beret,/obj/item/clothing/shoes/combat,/obj/item/clothing/under/syndicate/combat,/obj/item/clothing/gloves/combat,/obj/item/clothing/suit/space/deathsquad/officer,/obj/item/clothing/under/rank/centcom/captain,/obj/item/weapon/storage/box/handcuffs,/obj/item/weapon/storage/box/flashbangs,/obj/item/clothing/mask/gas,/obj/item/weapon/tank/emergency_oxygen/double,/turf/unsimulated/floor{icon_state = "grimy"},/area/centcom/specops) +"wf" = (/obj/item/weapon/gun/projectile/automatic/pistol/m2411,/obj/item/ammo_box/magazine/m45,/obj/item/ammo_box/magazine/m45,/obj/item/ammo_box/magazine/m45,/obj/structure/closet{icon_closed = "cabinet_closed"; icon_opened = "cabinet_open"; icon_state = "cabinet_closed"},/obj/item/clothing/head/helmet/space/deathsquad/beret,/obj/item/clothing/shoes/combat,/obj/item/clothing/under/syndicate/combat,/obj/item/clothing/gloves/combat,/obj/item/clothing/suit/space/deathsquad/officer,/obj/item/clothing/under/rank/centcom/captain,/obj/item/weapon/storage/box/handcuffs,/obj/item/weapon/storage/box/flashbangs,/obj/item/clothing/mask/gas,/obj/item/weapon/tank/emergency_oxygen/double,/turf/unsimulated/floor{icon_state = "grimy"},/area/centcom/specops) "wg" = (/obj/machinery/telecomms/relay/preset/centcom,/turf/unsimulated/floor{icon_state = "grimy"},/area/centcom/specops) "wh" = (/obj/machinery/recharge_station/upgraded,/turf/unsimulated/floor{icon_state = "grimy"},/area/centcom/specops) "wi" = (/turf/unsimulated/wall{icon = 'icons/obj/library.dmi'; icon_state = "book-5"; name = "bookcase (Tactics)"},/area/centcom/specops) @@ -1598,10 +1598,10 @@ "EL" = (/obj/item/weapon/storage/box/syringes,/obj/item/device/assembly/igniter,/obj/item/device/assembly/igniter,/obj/item/device/assembly/igniter,/obj/item/device/assembly/igniter,/obj/item/device/assembly/timer,/obj/item/device/assembly/timer,/obj/item/device/assembly/timer,/obj/item/device/assembly/timer,/obj/item/weapon/grenade/chem_grenade/large,/obj/item/weapon/grenade/chem_grenade/large,/obj/item/weapon/grenade/chem_grenade/large,/obj/item/weapon/grenade/chem_grenade/large,/obj/item/weapon/gun/syringe/rapidsyringe,/obj/item/weapon/reagent_containers/spray/chemsprayer,/obj/structure/closet,/obj/item/weapon/gun/projectile/shotgun/sc_pump,/obj/item/ammo_casing/shotgun/dart,/obj/item/ammo_casing/shotgun/dart,/obj/item/ammo_casing/shotgun/dart,/obj/item/ammo_casing/shotgun/dart,/obj/item/ammo_casing/shotgun/dart,/obj/item/ammo_casing/shotgun/dart,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/admin) "EM" = (/turf/space,/turf/unsimulated/wall{dir = 2; icon = 'icons/turf/shuttle.dmi'; icon_state = "diagonalWall3"},/area/admin) "EN" = (/obj/structure/rack,/obj/item/ammo_box/magazine/m10mm,/obj/item/ammo_box/magazine/m10mm,/obj/item/ammo_box/magazine/m10mm,/obj/item/ammo_box/magazine/m10mm,/obj/item/ammo_box/magazine/m10mm,/obj/item/ammo_box/magazine/m10mm,/obj/item/weapon/gun/projectile/automatic/pistol,/obj/item/weapon/gun/projectile/automatic/pistol{pixel_x = 3; pixel_y = -3},/obj/item/weapon/suppressor,/obj/item/weapon/suppressor{pixel_x = 3; pixel_y = -3},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) -"EO" = (/obj/structure/rack,/obj/item/ammo_box/magazine/m12g,/obj/item/ammo_box/magazine/m12g,/obj/item/ammo_box/magazine/m12g/stun,/obj/item/ammo_box/magazine/m12g/stun,/obj/item/ammo_box/magazine/m12g/dragon,/obj/item/ammo_box/magazine/m12g/dragon,/obj/item/weapon/gun/projectile/automatic/bulldog,/obj/item/weapon/gun/projectile/automatic/bulldog{pixel_x = 3; pixel_y = -3},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) +"EO" = (/obj/structure/rack,/obj/item/ammo_box/magazine/m12g,/obj/item/ammo_box/magazine/m12g,/obj/item/ammo_box/magazine/m12g/stun,/obj/item/ammo_box/magazine/m12g/stun,/obj/item/ammo_box/magazine/m12g/dragon,/obj/item/ammo_box/magazine/m12g/dragon,/obj/item/weapon/gun/projectile/automatic/shotgun/bulldog,/obj/item/weapon/gun/projectile/automatic/shotgun/bulldog{pixel_x = 3; pixel_y = -3},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) "EP" = (/obj/structure/rack,/obj/item/ammo_box/magazine/smgm45,/obj/item/ammo_box/magazine/smgm45,/obj/item/ammo_box/magazine/smgm45,/obj/item/ammo_box/magazine/smgm45,/obj/item/ammo_box/magazine/smgm45,/obj/item/ammo_box/magazine/smgm45,/obj/item/weapon/gun/projectile/automatic/c20r,/obj/item/weapon/gun/projectile/automatic/c20r{pixel_x = 3; pixel_y = -3},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) "EQ" = (/obj/structure/rack,/obj/item/ammo_box/magazine/m75,/obj/item/ammo_box/magazine/m75,/obj/item/ammo_box/magazine/m75,/obj/item/ammo_box/magazine/m75,/obj/item/ammo_box/magazine/m75,/obj/item/ammo_box/magazine/m75,/obj/item/weapon/gun/projectile/automatic/gyropistol,/obj/item/weapon/gun/projectile/automatic/gyropistol{pixel_x = 3; pixel_y = -3},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) -"ER" = (/obj/structure/rack,/obj/item/ammo_box/magazine/m50,/obj/item/ammo_box/magazine/m50,/obj/item/ammo_box/magazine/m50,/obj/item/ammo_box/magazine/m50,/obj/item/ammo_box/magazine/m50,/obj/item/ammo_box/magazine/m50,/obj/item/weapon/gun/projectile/automatic/deagle,/obj/item/weapon/gun/projectile/automatic/deagle{pixel_x = 3; pixel_y = -3},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) +"ER" = (/obj/structure/rack,/obj/item/ammo_box/magazine/m50,/obj/item/ammo_box/magazine/m50,/obj/item/ammo_box/magazine/m50,/obj/item/ammo_box/magazine/m50,/obj/item/ammo_box/magazine/m50,/obj/item/ammo_box/magazine/m50,/obj/item/weapon/gun/projectile/automatic/pistol/deagle,/obj/item/weapon/gun/projectile/automatic/pistol/deagle{pixel_x = 3; pixel_y = -3},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) "ES" = (/obj/structure/rack,/obj/item/ammo_box/a357,/obj/item/ammo_box/a357,/obj/item/weapon/gun/projectile/revolver/mateba,/obj/item/weapon/gun/projectile/revolver/mateba{pixel_x = 3; pixel_y = -3},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) "ET" = (/obj/structure/table,/obj/item/weapon/reagent_containers/food/snacks/grown/lemon,/obj/item/weapon/reagent_containers/food/snacks/grown/berries,/obj/item/weapon/reagent_containers/food/snacks/grown/banana,/obj/item/weapon/reagent_containers/food/snacks/grown/cherries,/obj/item/weapon/reagent_containers/food/snacks/grown/orange,/obj/item/weapon/reagent_containers/food/snacks/grown/corn,/obj/item/weapon/reagent_containers/food/snacks/grown/mushroom/amanita,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/admin) "EU" = (/obj/structure/table,/obj/item/weapon/storage/box/beakers,/obj/item/weapon/reagent_containers/glass/beaker/bluespace,/obj/item/weapon/reagent_containers/glass/beaker/bluespace,/obj/item/weapon/reagent_containers/glass/beaker/bluespace,/obj/item/weapon/reagent_containers/glass/beaker/bluespace,/obj/item/weapon/storage/box/autoinjectors,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/admin) @@ -1611,8 +1611,8 @@ "EY" = (/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/turf/unsimulated/wall{dir = 2; icon = 'icons/turf/shuttle.dmi'; icon_state = "window5"; name = "window"; opacity = 0; tag = "icon-window5"},/area/admin) "EZ" = (/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id_tag = "ADMINCHEMLOCKDOWN"; name = "Security Doors"; opacity = 0},/obj/machinery/door/airlock/hatch{name = "Chem Lab"; req_access_txt = "0"},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/admin) "Fa" = (/obj/structure/rack,/obj/item/ammo_box/magazine/m762,/obj/item/ammo_box/magazine/m762,/obj/item/ammo_box/magazine/m762,/obj/item/ammo_box/magazine/m762,/obj/item/weapon/gun/projectile/automatic/l6_saw,/obj/item/weapon/gun/projectile/automatic/l6_saw{pixel_x = 3; pixel_y = -3},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) -"Fb" = (/obj/structure/rack,/obj/item/weapon/gun/projectile/automatic,/obj/item/weapon/gun/projectile/automatic{pixel_x = 3; pixel_y = -3},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) -"Fc" = (/obj/structure/rack,/obj/item/ammo_box/magazine/m545,/obj/item/ammo_box/magazine/m545,/obj/item/ammo_box/magazine/m545,/obj/item/ammo_box/magazine/m545,/obj/item/ammo_box/magazine/m545,/obj/item/ammo_box/magazine/m545,/obj/item/ammo_box/a40mm,/obj/item/ammo_box/a40mm,/obj/item/ammo_box/a40mm,/obj/item/ammo_box/a40mm,/obj/item/weapon/gun/projectile/automatic/c90gl,/obj/item/weapon/gun/projectile/automatic/c90gl{pixel_x = 3; pixel_y = -3},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) +"Fb" = (/obj/structure/rack,/obj/item/weapon/gun/projectile/automatic/proto,/obj/item/weapon/gun/projectile/automatic/proto{pixel_x = 3; pixel_y = -3},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) +"Fc" = (/obj/structure/rack,/obj/item/ammo_box/magazine/m556,/obj/item/ammo_box/magazine/m556,/obj/item/ammo_box/magazine/m556,/obj/item/ammo_box/magazine/m556,/obj/item/ammo_box/magazine/m556,/obj/item/ammo_box/magazine/m556,/obj/item/ammo_box/a40mm,/obj/item/ammo_box/a40mm,/obj/item/ammo_box/a40mm,/obj/item/ammo_box/a40mm,/obj/item/weapon/gun/projectile/automatic/m90,/obj/item/weapon/gun/projectile/automatic/m90{pixel_x = 3; pixel_y = -3},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) "Fd" = (/obj/structure/mirror{dir = 4; pixel_x = 0; pixel_y = -32},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) "Fe" = (/obj/machinery/optable,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/admin) "Ff" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/syndicate,/obj/item/weapon/shard,/obj/item/weapon/kitchenknife,/obj/item/weapon/storage/firstaid/tactical,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/admin) diff --git a/_maps/map_files/cyberiad/z6.dmm b/_maps/map_files/cyberiad/z6.dmm index 2a236529f0f..f62ef2a1b9f 100644 --- a/_maps/map_files/cyberiad/z6.dmm +++ b/_maps/map_files/cyberiad/z6.dmm @@ -648,7 +648,7 @@ "mx" = (/obj/structure/table,/turf/simulated/floor{icon_state = "dark"},/area/syndicate_depot) "my" = (/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/engine,/area/syndicate_depot) "mz" = (/turf/simulated/floor/engine,/area/syndicate_depot) -"mA" = (/obj/structure/closet/crate{name = "munitions crate"},/obj/item/weapon/storage/box/donkpockets,/obj/item/ammo_box/magazine/m762,/obj/item/weapon/gun/projectile/automatic/c90gl,/turf/simulated/floor{icon_state = "dark"},/area/syndicate_depot) +"mA" = (/obj/structure/closet/crate{name = "munitions crate"},/obj/item/weapon/storage/box/donkpockets,/obj/item/ammo_box/magazine/m762,/obj/item/weapon/gun/projectile/automatic/m90,/turf/simulated/floor{icon_state = "dark"},/area/syndicate_depot) "mB" = (/obj/machinery/door/window{base_state = "right"; dir = 8; icon_state = "right"; name = "Telepad"; req_access_txt = "0"},/turf/simulated/floor/engine,/area/syndicate_depot) "mC" = (/obj/machinery/telepad,/turf/simulated/floor/engine,/area/syndicate_depot) "mD" = (/obj/structure/closet/crate{name = "munitions crate"},/obj/item/ammo_box/magazine/m12g/dragon,/obj/item/ammo_box/magazine/m12g/dragon,/obj/item/weapon/storage/fancy/cigarettes/cigpack_syndicate,/obj/item/weapon/storage/firstaid/tactical,/turf/simulated/floor{icon_state = "dark"},/area/syndicate_depot) diff --git a/code/datums/uplink_item.dm b/code/datums/uplink_item.dm index f6101b6dcd2..98a131b9070 100644 --- a/code/datums/uplink_item.dm +++ b/code/datums/uplink_item.dm @@ -217,7 +217,6 @@ var/list/uplink_items = list() cost = 12 job = list("Research Director") - //Stimulants /datum/uplink_item/jobspecific/stims @@ -245,14 +244,14 @@ var/list/uplink_items = list() /datum/uplink_item/dangerous/pistol - name = "Syndicate Pistol" + name = "FK-69 Pistol" reference = "SPI" desc = "A small, easily concealable handgun that uses 10mm auto rounds in 8-round magazines and is compatible with suppressors." item = /obj/item/weapon/gun/projectile/automatic/pistol cost = 9 /datum/uplink_item/dangerous/revolver - name = "Syndicate Revolver" + name = "Syndicate .357 Revolver" reference = "SR" desc = "A brutally simple syndicate revolver that fires .357 Magnum cartridges and has 7 chambers." item = /obj/item/weapon/gun/projectile/revolver @@ -260,7 +259,7 @@ var/list/uplink_items = list() surplus = 50 /datum/uplink_item/dangerous/smg - name = "Syndicate SMG" + name = "C-20r Submachine Gun" reference = "SMG" desc = "A fully-loaded Scarborough Arms bullpup submachine gun that fires .45 rounds with a 20-round magazine and is compatible with suppressors." item = /obj/item/weapon/gun/projectile/automatic/c20r @@ -268,17 +267,17 @@ var/list/uplink_items = list() gamemodes = list("nuclear emergency") surplus = 40 -/datum/uplink_item/dangerous/car - name = "C-90gl Compact Assault Rifle" - desc = "A fully-loaded Zashchita Industriya toploading bullpup assault rifle that uses 30-round 5.45x39mm magazines with a toggleable underslung 40mm grenade launcher." +/datum/uplink_item/dangerous/carbine + name = "M-90gl Carbine" + desc = "A fully-loaded three-round burst carbine that uses 30-round 5.56mm magazines with a togglable underslung 40mm grenade launcher." reference = "AR" - item = /obj/item/weapon/gun/projectile/automatic/c90gl + item = /obj/item/weapon/gun/projectile/automatic/m90 cost = 18 gamemodes = list("nuclear emergency") surplus = 50 /datum/uplink_item/dangerous/machinegun - name = "Syndicate LMG" + name = "L6 Squad Automatic Weapon" desc = "A fully-loaded Aussec Armoury belt-fed machine gun. This deadly weapon has a massive 50-round magazine of devastating 7.62x51mm ammunition." reference = "LMG" item = /obj/item/weapon/gun/projectile/automatic/l6_saw @@ -399,7 +398,7 @@ var/list/uplink_items = list() surplus = 40 /datum/uplink_item/ammo/pistol - name = "Ammo-10mm" + name = "Magazine - 10mm" desc = "An additional 8-round 10mm magazine for use in the syndicate pistol. These subsonic rounds are dirt cheap but are half as effective as .357 rounds." reference = "10MM" item = /obj/item/ammo_box/magazine/m10mm @@ -460,11 +459,11 @@ var/list/uplink_items = list() cost = 2 gamemodes = list("nuclear emergency") -/datum/uplink_item/ammo/car - name = "Box Magazine - 5.45x39mm" - desc = "An additional 30-round 5.45x39mm magazine for use in the C-90gl assault rifle. These bullets don't have the punch to knock most targets down, but dish out higher overall damage." - reference = "545" - item = /obj/item/ammo_box/magazine/m545 +/datum/uplink_item/ammo/carbine + name = "Toploader Magazine - 5.56" + desc = "An additional 30-round 5.56 magazine for use in the M-90gl carbine. These bullets don't have the punch to knock most targets down, but dish out higher overall damage." + reference = "556" + item = /obj/item/ammo_box/magazine/m556 cost = 2 gamemodes = list("nuclear emergency") diff --git a/code/game/gamemodes/wizard/rightandwrong.dm b/code/game/gamemodes/wizard/rightandwrong.dm index c8f683406e2..e98517688d8 100644 --- a/code/game/gamemodes/wizard/rightandwrong.dm +++ b/code/game/gamemodes/wizard/rightandwrong.dm @@ -1,7 +1,7 @@ /mob/proc/rightandwrong(var/summon_type) //0 = Summon Guns, 1 = Summon Magic - var/list/gunslist = list("taser","egun","laser","revolver","detective","c20r","nuclear","deagle","gyrojet","pulse","silenced","cannon","doublebarrel","shotgun","combatshotgun","bulldog","mateba","sabr","crossbow","saw","car","boltaction") + var/list/gunslist = list("taser","egun","laser","revolver","detective","c20r","nuclear","deagle","gyrojet","pulse","silenced","cannon","doublebarrel","shotgun","combatshotgun","bulldog","mateba","sabr","crossbow","saw","car","boltaction","arg") var/list/magiclist = list("fireball","smoke","blind","mindswap","forcewall","knock","horsemask","charge", "summonitem", "wandnothing", "wanddeath", "wandresurrection", "wandpolymorph", "wandteleport", "wanddoor", "wandfireball", "staffhealing", "armor", "scrying", "staffdoor", "special") var/list/magicspeciallist = list("staffchange","staffanimation", "wandbelt", "contract", "staffchaos") usr << "You summoned [summon_type ? "magic" : "guns"]!" @@ -30,7 +30,7 @@ if("nuclear") new /obj/item/weapon/gun/energy/gun/nuclear(get_turf(H)) if("deagle") - new /obj/item/weapon/gun/projectile/automatic/deagle/camo(get_turf(H)) + new /obj/item/weapon/gun/projectile/automatic/pistol/deagle/camo(get_turf(H)) if("gyrojet") new /obj/item/weapon/gun/projectile/automatic/gyropistol(get_turf(H)) if("pulse") @@ -47,17 +47,19 @@ if("combatshotgun") new /obj/item/weapon/gun/projectile/shotgun/combat(get_turf(H)) if("bulldog") - new /obj/item/weapon/gun/projectile/automatic/bulldog(get_turf(H)) + new /obj/item/weapon/gun/projectile/automatic/shotgun/bulldog(get_turf(H)) + if("arg") + new /obj/item/weapon/gun/projectile/automatic/ar(get_turf(H)) if("mateba") new /obj/item/weapon/gun/projectile/revolver/mateba(get_turf(H)) if("sabr") - new /obj/item/weapon/gun/projectile/automatic(get_turf(H)) + new /obj/item/weapon/gun/projectile/automatic/proto(get_turf(H)) if("crossbow") new /obj/item/weapon/gun/energy/kinetic_accelerator/crossbow(get_turf(H)) if("saw") new /obj/item/weapon/gun/projectile/automatic/l6_saw(get_turf(H)) if("car") - new /obj/item/weapon/gun/projectile/automatic/c90gl(get_turf(H)) + new /obj/item/weapon/gun/projectile/automatic/m90(get_turf(H)) if("boltaction") new /obj/item/weapon/gun/projectile/shotgun/boltaction(get_turf(H)) else diff --git a/code/game/machinery/vending.dm b/code/game/machinery/vending.dm index 1b3f89af28a..6ddf7d7f79e 100644 --- a/code/game/machinery/vending.dm +++ b/code/game/machinery/vending.dm @@ -842,6 +842,22 @@ /obj/item/weapon/cartridge/atmos = 75,/obj/item/weapon/cartridge/janitor = 100,/obj/item/weapon/cartridge/signal/toxins = 150, /obj/item/weapon/cartridge/signal = 75,/obj/item/weapon/cartridge = 50) + +/obj/machinery/vending/liberationstation + name = "\improper Liberation Station" + desc = "An overwhelming amount of ancient patriotism washes over you just by looking at the machine." + icon_state = "liberationstation" + req_access_txt = "1" + product_slogans = "Liberation Station: Your one-stop shop for all things second ammendment!;Be a patriot today, pick up a gun!;Quality weapons for cheap prices!;Better dead than red!" + product_ads = "Float like an astronaut, sting like a bullet!;Express your second ammendment today!;Guns don't kill people, but you can!;Who needs responsibilities when you have guns?" + vend_reply = "Remember the name: Liberation Station!" + products = list(/obj/item/weapon/gun/projectile/automatic/pistol/deagle/gold = 2,/obj/item/weapon/gun/projectile/automatic/pistol/deagle/camo = 2, + /obj/item/weapon/gun/projectile/automatic/pistol/m2411 = 2,/obj/item/weapon/gun/projectile/automatic/proto = 2, + /obj/item/weapon/gun/projectile/shotgun/combat = 2,/obj/item/weapon/gun/projectile/automatic/gyropistol = 1, + /obj/item/weapon/gun/projectile/shotgun = 2,/obj/item/weapon/gun/projectile/automatic/ar = 2) + premium = list(/obj/item/ammo_box/magazine/smgm9mm = 2,/obj/item/ammo_box/magazine/m50 = 4,/obj/item/ammo_box/magazine/m45 = 2,/obj/item/ammo_box/magazine/m75 = 2) + contraband = list(/obj/item/clothing/under/patriotsuit = 1,/obj/item/weapon/bedsheet/patriot = 3) + /obj/machinery/vending/cigarette name = "Cigarette machine" //OCD had to be uppercase to look nice with the new formating desc = "If you want to get cancer, might as well do it in style" diff --git a/code/game/objects/effects/spawners/lootdrop.dm b/code/game/objects/effects/spawners/lootdrop.dm index c41f55fb7c0..778d3b74dc6 100644 --- a/code/game/objects/effects/spawners/lootdrop.dm +++ b/code/game/objects/effects/spawners/lootdrop.dm @@ -26,7 +26,7 @@ /obj/item/weapon/gun/projectile/automatic/pistol = 8, /obj/item/weapon/gun/projectile/shotgun/combat = 5, /obj/item/weapon/gun/projectile/revolver/mateba, - /obj/item/weapon/gun/projectile/automatic/deagle + /obj/item/weapon/gun/projectile/automatic/pistol/deagle ) /obj/effect/spawner/lootdrop/maintenance diff --git a/code/game/objects/structures/bedsheet_bin.dm b/code/game/objects/structures/bedsheet_bin.dm index 1c4936112a2..dfb56842ac1 100644 --- a/code/game/objects/structures/bedsheet_bin.dm +++ b/code/game/objects/structures/bedsheet_bin.dm @@ -45,6 +45,12 @@ LINEN BINS icon_state = "sheetpurple" _color = "purple" +/obj/item/weapon/bedsheet/patriot + name = "patriotic bedsheet" + desc = "You've never felt more free than when sleeping on this." + icon_state = "sheetUSA" + _color = "sheetUSA" + /obj/item/weapon/bedsheet/rainbow name = "rainbow bedsheet" desc = "A multi_colored blanket. It's actually several different sheets cut up and sewn together." diff --git a/code/game/objects/structures/crates_lockers/closets/syndicate.dm b/code/game/objects/structures/crates_lockers/closets/syndicate.dm index 5f21f2d0c84..52c789f9c43 100644 --- a/code/game/objects/structures/crates_lockers/closets/syndicate.dm +++ b/code/game/objects/structures/crates_lockers/closets/syndicate.dm @@ -44,11 +44,11 @@ new /obj/item/weapon/storage/box/teargas(src) new /obj/item/weapon/storage/box/flashbangs(src) new /obj/item/weapon/storage/backpack/duffel/syndie/med(src) - new /obj/item/weapon/gun/projectile/automatic/bulldog(src) - new /obj/item/weapon/gun/projectile/automatic/bulldog(src) - new /obj/item/weapon/gun/projectile/automatic/bulldog(src) - new /obj/item/weapon/gun/projectile/automatic/bulldog(src) - new /obj/item/weapon/gun/projectile/automatic/bulldog(src) + new /obj/item/weapon/gun/projectile/automatic/shotgun/bulldog(src) + new /obj/item/weapon/gun/projectile/automatic/shotgun/bulldog(src) + new /obj/item/weapon/gun/projectile/automatic/shotgun/bulldog(src) + new /obj/item/weapon/gun/projectile/automatic/shotgun/bulldog(src) + new /obj/item/weapon/gun/projectile/automatic/shotgun/bulldog(src) new /obj/item/weapon/pinpointer/nukeop(src) new /obj/item/weapon/pinpointer/nukeop(src) new /obj/item/weapon/pinpointer/nukeop(src) diff --git a/code/modules/admin/verbs/debug.dm b/code/modules/admin/verbs/debug.dm index c1f20ae4d53..cdc89d056ad 100644 --- a/code/modules/admin/verbs/debug.dm +++ b/code/modules/admin/verbs/debug.dm @@ -704,7 +704,7 @@ But you can call procs that are of type /mob/living/carbon/human/proc/ for that M.equip_to_slot_or_del(new /obj/item/weapon/cloaking_device(M), slot_r_store) - M.equip_to_slot_or_del(new /obj/item/weapon/gun/projectile/automatic(M), slot_r_hand) + M.equip_to_slot_or_del(new /obj/item/weapon/gun/projectile/automatic/proto(M), slot_r_hand) M.equip_to_slot_or_del(new /obj/item/ammo_box/a357(M), slot_l_store) if ("tournament chef") //Steven Seagal FTW diff --git a/code/modules/admin/verbs/striketeam_syndicate.dm b/code/modules/admin/verbs/striketeam_syndicate.dm index 6729f81a27c..0fff922d086 100644 --- a/code/modules/admin/verbs/striketeam_syndicate.dm +++ b/code/modules/admin/verbs/striketeam_syndicate.dm @@ -160,7 +160,7 @@ var/global/sent_syndicate_strike_team = 0 equip_to_slot_or_del(new /obj/item/weapon/melee/energy/sword(src), slot_l_store) equip_to_slot_or_del(new /obj/item/weapon/grenade/empgrenade(src), slot_r_store) equip_to_slot_or_del(new /obj/item/weapon/tank/emergency_oxygen/double/full(src), slot_s_store) - equip_to_slot_or_del(new /obj/item/weapon/gun/projectile/automatic/m2411(src), slot_belt) + equip_to_slot_or_del(new /obj/item/weapon/gun/projectile/automatic/pistol/m2411(src), slot_belt) equip_to_slot_or_del(new /obj/item/weapon/gun/projectile/automatic/l6_saw(src), slot_r_hand) diff --git a/code/modules/clothing/under/miscellaneous.dm b/code/modules/clothing/under/miscellaneous.dm index ffd38f192a8..39aeeced2be 100644 --- a/code/modules/clothing/under/miscellaneous.dm +++ b/code/modules/clothing/under/miscellaneous.dm @@ -11,6 +11,13 @@ icon_state = "blue_pyjamas" _color = "blue_pyjamas" item_state = "w_suit" + +/obj/item/clothing/under/patriotsuit + name = "Patriotic Suit" + desc = "Motorcycle not included." + icon_state = "ek" + item_state = "ek" + _color = "ek" /obj/item/clothing/under/captain_fly name = "rogue captains uniform" diff --git a/code/modules/jungle/jungle_temple.dm b/code/modules/jungle/jungle_temple.dm index 320b0fbe9f7..1ecdab55973 100644 --- a/code/modules/jungle/jungle_temple.dm +++ b/code/modules/jungle/jungle_temple.dm @@ -159,7 +159,7 @@ var/new_type = pick( 200; /obj/item/weapon/hatchet, \ /obj/item/weapon/gun/projectile/automatic/pistol, \ - /obj/item/weapon/gun/projectile/automatic/deagle, \ + /obj/item/weapon/gun/projectile/automatic/pistol/deagle, \ /obj/item/weapon/gun/projectile/revolver/russian, \ ) new new_type(C) diff --git a/code/modules/projectiles/ammunition/ammo_casings.dm b/code/modules/projectiles/ammunition/ammo_casings.dm index 18cd36a7fc9..647ac2b105b 100644 --- a/code/modules/projectiles/ammunition/ammo_casings.dm +++ b/code/modules/projectiles/ammunition/ammo_casings.dm @@ -183,9 +183,9 @@ caliber = "a762" projectile_type = "/obj/item/projectile/bullet" -/obj/item/ammo_casing/a545 - desc = "A 5.45mm bullet casing." - caliber = "a545" +/obj/item/ammo_casing/a556 + desc = "A 5.56mm bullet casing." + caliber = "a556" projectile_type = "/obj/item/projectile/bullet/heavybullet" /obj/item/ammo_casing/rocket diff --git a/code/modules/projectiles/ammunition/magazines.dm b/code/modules/projectiles/ammunition/magazines.dm index 7fa2224cbcd..e47acf7521e 100644 --- a/code/modules/projectiles/ammunition/magazines.dm +++ b/code/modules/projectiles/ammunition/magazines.dm @@ -116,6 +116,17 @@ ..() icon_state = "[initial(icon_state)]-[ammo_count() ? "8" : "0"]" +/obj/item/ammo_box/magazine/uzim9mm + name = "uzi magazine (9mm)" + icon_state = "uzi9mm-32" + ammo_type = /obj/item/ammo_casing/c9mm + caliber = "9mm" + max_ammo = 32 + +/obj/item/ammo_box/magazine/uzim9mm/update_icon() + ..() + icon_state = "uzi9mm-[round(ammo_count(),4)]" + /obj/item/ammo_box/magazine/smgm9mm name = "SMG magazine (9mm)" icon_state = "smg9mm" @@ -163,17 +174,14 @@ multiple_sprites = 2 max_ammo = 8 -/obj/item/ammo_box/magazine/m545 - name = "box magazine (5.45mm)" - icon_state = "5.45m" +/obj/item/ammo_box/magazine/m556 + name = "toploader magazine (5.56mm)" + icon_state = "5.56m" origin_tech = "combat=5;syndicate=1" - ammo_type = "/obj/item/ammo_casing/a545" - caliber = "a545" + ammo_type = /obj/item/ammo_casing/a556 + caliber = "a556" max_ammo = 30 - -/obj/item/ammo_box/magazine/m545/update_icon() - ..() - icon_state = "[initial(icon_state)]-[round(ammo_count(),10)]" + multiple_sprites = 2 /obj/item/ammo_box/magazine/m762 name = "box magazine (7.62mm)" diff --git a/code/modules/projectiles/gun.dm b/code/modules/projectiles/gun.dm index 61fb6ba0020..dd115cad91a 100644 --- a/code/modules/projectiles/gun.dm +++ b/code/modules/projectiles/gun.dm @@ -43,6 +43,8 @@ var/can_flashlight = 0 var/heavy_weapon = 0 var/randomspread = 0 + + var/burst_size = 1 proc/ready_to_fire() if(world.time >= last_fired + fire_delay) @@ -124,9 +126,6 @@ user << "[src] is not ready to fire again!" return - if(!process_chambered()) //CHECK - return click_empty(user) - if(heavy_weapon) if(user.get_inactive_hand()) recoil = 4 //one-handed kick @@ -142,48 +141,55 @@ var/spread = 0 var/turf/targloc = get_turf(target) - if(chambered) - for (var/i = max(1, chambered.pellets), i > 0, i--) //Previous way of doing it fucked up math for spreading. This way, even the first projectile is part of the spread code. - if(i != max(1, chambered.pellets)) //Have we fired the initial chambered bullet yet? - in_chamber = new chambered.projectile_type() + for(var/f = 1 to burst_size) + if(!process_chambered()) //CHECK + return click_empty(user) + + if(chambered) + for (var/i = max(1, chambered.pellets), i > 0, i--) //Previous way of doing it fucked up math for spreading. This way, even the first projectile is part of the spread code. + if(i != max(1, chambered.pellets)) //Have we fired the initial chambered bullet yet? + in_chamber = new chambered.projectile_type() + ready_projectile(target, user) + prepare_shot(in_chamber) + if(chambered.deviation) + if(randomspread) //Random spread + spread = (rand() - 0.5) * chambered.deviation + else //Smart spread + spread = (i / chambered.pellets - 0.5) * chambered.deviation + if(!process_projectile(targloc, user, params, spread)) + return 0 + else ready_projectile(target, user) prepare_shot(in_chamber) - if(chambered.deviation) - if(randomspread) //Random spread - spread = (rand() - 0.5) * chambered.deviation - else //Smart spread - spread = (i / chambered.pellets - 0.5) * chambered.deviation if(!process_projectile(targloc, user, params, spread)) return 0 - else - ready_projectile(target, user) - prepare_shot(in_chamber) - if(!process_projectile(targloc, user, params, spread)) - return 0 - if(recoil) - spawn() - shake_camera(user, recoil + 1, recoil) + if(recoil) + spawn() + shake_camera(user, recoil + 1, recoil) - if(silenced) - playsound(user, fire_sound, 10, 1) - else - playsound(user, fire_sound, 50, 1) - user.visible_message("[user] fires [src][reflex ? " by reflex":""]!", \ - "You fire [src][reflex ? "by reflex":""]!", \ - "You hear a [istype(in_chamber, /obj/item/projectile/beam) ? "laser blast" : "gunshot"]!") + if(silenced) + playsound(user, fire_sound, 10, 1) + else + playsound(user, fire_sound, 50, 1) + if(f == 1) // Only print this once + user.visible_message("[user] fires [src][reflex ? " by reflex":""]!", \ + "You fire [src][reflex ? "by reflex":""]!", \ + "You hear a [istype(in_chamber, /obj/item/projectile/beam) ? "laser blast" : "gunshot"]!") - if(heavy_weapon) - if(user.get_inactive_hand()) - if(prob(15)) - user.visible_message("[src] flies out of [user]'s hands!", "[src] kicks out of your grip!") - user.drop_item() + if(heavy_weapon) + if(user.get_inactive_hand()) + if(prob(15)) + user.visible_message("[src] flies out of [user]'s hands!", "[src] kicks out of your grip!") + user.drop_item() + break - update_icon() - if(user.hand) - user.update_inv_l_hand() - else - user.update_inv_r_hand() + update_icon() + if(user.hand) + user.update_inv_l_hand() + else + user.update_inv_r_hand() + sleep(fire_delay) /obj/item/weapon/gun/proc/ready_projectile(atom/target as mob|obj|turf, mob/living/user) in_chamber.firer = user diff --git a/code/modules/projectiles/guns/energy/hos.dm b/code/modules/projectiles/guns/energy/hos.dm index 2fbb0dfd730..a0f182dfd99 100644 --- a/code/modules/projectiles/guns/energy/hos.dm +++ b/code/modules/projectiles/guns/energy/hos.dm @@ -1,5 +1,5 @@ /obj/item/weapon/gun/energy/hos - name = "head of security's energy gun" + name = "\improper X-01 MultiPhase Energy Gun" desc = "This is a modern recreation of the captain's antique laser gun. This gun has several unique fire modes, but lacks the ability to recharge over time." icon_state = "hoslaser" item_state = null //so the human update icon uses the icon_state instead. diff --git a/code/modules/projectiles/guns/energy/laser.dm b/code/modules/projectiles/guns/energy/laser.dm index 16141ac7da4..ae5d288f8aa 100644 --- a/code/modules/projectiles/guns/energy/laser.dm +++ b/code/modules/projectiles/guns/energy/laser.dm @@ -17,12 +17,13 @@ clumsy_check = 0 obj/item/weapon/gun/energy/laser/retro - name ="retro laser" + name ="retro laser gun" icon_state = "retro" desc = "An older model of the basic lasergun, no longer used by Nanotrasen's security or military forces. Nevertheless, it is still quite deadly and easy to maintain, making it a favorite amongst pirates and other outlaws." /obj/item/weapon/gun/energy/laser/captain + name = "\improper QSJ-01 premium laser pistol" icon_state = "caplaser" item_state = "caplaser" icon_override = 'icons/mob/in-hand/guns.dmi' diff --git a/code/modules/projectiles/guns/energy/special.dm b/code/modules/projectiles/guns/energy/special.dm index d3e132d6210..cd90145a6a1 100644 --- a/code/modules/projectiles/guns/energy/special.dm +++ b/code/modules/projectiles/guns/energy/special.dm @@ -132,7 +132,7 @@ /obj/item/weapon/gun/energy/mindflayer - name = "mind flayer" + name = "\improper Mind Flayer" desc = "A prototype weapon recovered from the ruins of Research-Station Epsilon." icon_state = "xray" projectile_type = "/obj/item/projectile/beam/mindflayer" diff --git a/code/modules/projectiles/guns/projectile/automatic.dm b/code/modules/projectiles/guns/projectile/automatic.dm index f4c1142039c..26f73921bd0 100644 --- a/code/modules/projectiles/guns/projectile/automatic.dm +++ b/code/modules/projectiles/guns/projectile/automatic.dm @@ -1,25 +1,55 @@ -/obj/item/weapon/gun/projectile/automatic //Hopefully someone will find a way to make these fire in bursts or something. --Superxpdude - name = "prototype SMG" - desc = "A lightweight, prototype 9mm submachine gun, designated 'SABR'. Has a threaded barrel for suppressors." - icon_state = "saber" +/obj/item/weapon/gun/projectile/automatic w_class = 3.0 - origin_tech = "combat=4;materials=2" automatic = 1 - mag_type = "/obj/item/ammo_box/magazine/smgm9mm" var/alarmed = 0 + var/select = 1 can_suppress = 1 - fire_delay = 0 - isHandgun() - return 0 + burst_size = 3 + fire_delay = 2 + action_button_name = "Toggle Firemode" + +/obj/item/weapon/gun/projectile/automatic/isHandgun() + return 0 + +/obj/item/weapon/gun/projectile/automatic/proto + name = "\improper Nanotrasen Saber SMG" + desc = "A prototype three-round burst 9mm submachine gun, designated 'SABR'. Has a threaded barrel for suppressors." + icon_state = "saber" + mag_type = "/obj/item/ammo_box/magazine/smgm9mm" + origin_tech = "combat=4;materials=2" /obj/item/weapon/gun/projectile/automatic/update_icon() ..() + overlays.Cut() + if(!select) + overlays += "[initial(icon_state)]semi" + if(select == 1) + overlays += "[initial(icon_state)]burst" icon_state = "[initial(icon_state)][magazine ? "-[magazine.max_ammo]" : ""][chambered ? "" : "-e"][silenced ? "-suppressed" : ""]" return /obj/item/weapon/gun/projectile/automatic/attackby(var/obj/item/A as obj, mob/user as mob, params) if(..() && chambered) alarmed = 0 + +/obj/item/weapon/gun/projectile/automatic/ui_action_click() + burst_select() + +/obj/item/weapon/gun/projectile/automatic/verb/burst_select() + var/mob/living/carbon/human/user = usr + select = !select + if(!select) + burst_size = 1 + fire_delay = 0 + user << "You switch to semi-automatic." + else + burst_size = initial(burst_size) + fire_delay = initial(fire_delay) + user << "You switch to [burst_size] round burst." + + playsound(user, 'sound/weapons/empty.ogg', 100, 1) + update_icon() + return /obj/item/weapon/gun/projectile/automatic/proc/empty_alarm() if(!chambered && !get_ammo() && !alarmed) @@ -29,13 +59,15 @@ return /obj/item/weapon/gun/projectile/automatic/c20r - name = "syndicate SMG" - desc = "A lightweight, bullpup .45 SMG, designated 'C-20r'. Has a 'Scarborough Arms - Per falcis, per pravitas' buttstamp." + name = "\improper C-20r SMG" + desc = "A two-round burst .45 SMG, designated 'C-20r'. Has a 'Scarborough Arms - Per falcis, per pravitas' buttstamp." icon_state = "c20r" item_state = "c20r" origin_tech = "combat=5;materials=2;syndicate=8" mag_type = "/obj/item/ammo_box/magazine/smgm45" fire_sound = 'sound/weapons/Gunshot_smg.ogg' + fire_delay = 2 + burst_size = 2 /obj/item/weapon/gun/projectile/automatic/c20r/New() ..() @@ -52,9 +84,16 @@ icon_state = "c20r[magazine ? "-[Ceiling(get_ammo(0)/4)*4]" : ""][chambered ? "" : "-e"][silenced ? "-suppressed" : ""]" return - +/obj/item/weapon/gun/projectile/automatic/mini_uzi + name = "\improper 'Type U3' Uzi" + desc = "A lightweight, burst-fire submachine gun, for when you really want someone dead. Uses 9mm rounds." + icon_state = "mini-uzi" + origin_tech = "combat=5;materials=2;syndicate=8" + mag_type = "/obj/item/ammo_box/magazine/uzim9mm" + burst_size = 2 + /obj/item/weapon/gun/projectile/automatic/l6_saw - name = "syndicate LMG" + name = "\improper L6 SAW LMG" desc = "A heavily modified 7.62 light machine gun, designated 'L6 SAW'. Has 'Aussec Armoury - 2531' engraved on the reciever below the designation." icon_state = "l6closed100" item_state = "l6closedmag" @@ -66,19 +105,17 @@ var/cover_open = 0 can_suppress = 0 - - - + burst_size = 5 + fire_delay = 3 + /obj/item/weapon/gun/projectile/automatic/l6_saw/attack_self(mob/user as mob) cover_open = !cover_open user << "You [cover_open ? "open" : "close"] [src]'s cover." update_icon() - /obj/item/weapon/gun/projectile/automatic/l6_saw/update_icon() icon_state = "l6[cover_open ? "open" : "closed"][magazine ? round(magazine.ammo_count() * 2, 25) : "-empty"]" - /obj/item/weapon/gun/projectile/automatic/l6_saw/afterattack(atom/target as mob|obj|turf, mob/living/user as mob|obj, flag, params) //what I tried to do here is just add a check to see if the cover is open or not and add an icon_state change because I can't figure out how c-20rs do it with overlays if(cover_open) user << "[src]'s cover is open! Close it before firing!" @@ -86,7 +123,6 @@ ..() update_icon() - /obj/item/weapon/gun/projectile/automatic/l6_saw/attack_hand(mob/user as mob) if(loc != user) ..() @@ -109,113 +145,78 @@ return ..() - -/obj/item/weapon/gun/projectile/automatic/bulldog - name = "syndicate shotgun" - desc = "A compact, mag-fed semi-automatic shotgun for combat in narrow corridors, nicknamed 'Bulldog' by boarding parties. Compatible only with specialized 8-round drum magazines." - icon_state = "bulldog" - item_state = "bulldog" - icon_override = 'icons/mob/in-hand/guns.dmi' - w_class = 3.0 - origin_tech = "combat=5;materials=4;syndicate=6" - mag_type = "/obj/item/ammo_box/magazine/m12g" - fire_sound = 'sound/weapons/Gunshot4.ogg' - can_suppress = 0 - -/obj/item/weapon/gun/projectile/automatic/bulldog/New() - ..() - update_icon() - return - -/obj/item/weapon/gun/projectile/automatic/bulldog/proc/update_magazine() - if(magazine) - src.overlays = 0 - overlays += "[magazine.icon_state]" - return - -/obj/item/weapon/gun/projectile/automatic/bulldog/update_icon() - src.overlays = 0 - update_magazine() - icon_state = "bulldog[chambered ? "" : "-e"]" - return - -/obj/item/weapon/gun/projectile/automatic/bulldog/afterattack(atom/target as mob|obj|turf|area, mob/living/user as mob|obj, flag) - ..() - empty_alarm() - return - - -/obj/item/weapon/gun/projectile/automatic/c90gl - name = "syndicate assault rifle" - desc = "A bullpup and compact 5.45x39 assault rifle with a unique toploading design, designated 'C-90gl'. Has an attached underbarrel grenade launcher which can be toggled on and off." - icon_state = "c90gl" - item_state = "c90gl" +/obj/item/weapon/gun/projectile/automatic/m90 + name = "\improper M-90gl Carbine" + desc = "A three-round burst 5.56 toploading carbine, designated 'M-90gl'. Has an attached underbarrel grenade launcher which can be toggled on and off." + icon_state = "m90" + item_state = "m90" icon_override = 'icons/mob/in-hand/guns.dmi' origin_tech = "combat=5;materials=2;syndicate=8" - mag_type = "/obj/item/ammo_box/magazine/m545" + mag_type = "/obj/item/ammo_box/magazine/m556" fire_sound = 'sound/weapons/Gunshot_smg.ogg' action_button_name = "Toggle Grenade Launcher" can_suppress = 0 - var/select = 1 //1 for boolets, 0 for explosions. var/obj/item/weapon/gun/projectile/revolver/grenadelauncher/underbarrel + burst_size = 3 + fire_delay = 2 -/obj/item/weapon/gun/projectile/automatic/c90gl/New() +/obj/item/weapon/gun/projectile/automatic/m90/New() ..() underbarrel = new /obj/item/weapon/gun/projectile/revolver/grenadelauncher(src) update_icon() return -/obj/item/weapon/gun/projectile/automatic/c90gl/afterattack(var/atom/target, var/mob/living/user, flag, params) - if(select) +/obj/item/weapon/gun/projectile/automatic/m90/afterattack(var/atom/target, var/mob/living/user, flag, params) + if(select == 2) + underbarrel.afterattack(target, user, flag, params) + else ..() empty_alarm() return + +/obj/item/weapon/gun/projectile/automatic/m90/attackby(var/obj/item/A, mob/user, params) + if(istype(A, /obj/item/ammo_casing)) + if(istype(A, text2path(underbarrel.magazine.ammo_type))) + underbarrel.attack_self() + underbarrel.attackby(A, user, params) else - underbarrel.afterattack(target, user, flag, params) - -/obj/item/weapon/gun/projectile/automatic/c90gl/attackby(var/obj/item/A, mob/user, params) - if(select) ..() - else - underbarrel.attackby(A, user, params) -/obj/item/weapon/gun/projectile/automatic/c90gl/attack_self(var/mob/living/user) - if(select) - ..() - else - underbarrel.attack_self(user) - - - -/obj/item/weapon/gun/projectile/automatic/c90gl/update_icon() +/obj/item/weapon/gun/projectile/automatic/m90/update_icon() ..() overlays.Cut() - if(select) - overlays += "c90prim" - else - overlays += "c90gren" - icon_state = "c90gl[magazine ? "-[Ceiling(get_ammo(0)/6)*6]" : ""][chambered ? "" : "-e"]" + switch(select) + if(0) + overlays += "[initial(icon_state)]semi" + if(1) + overlays += "[initial(icon_state)]burst" + if(2) + overlays += "[initial(icon_state)]gren" + icon_state = "[initial(icon_state)][magazine ? "" : "-e"]" return -/obj/item/weapon/gun/projectile/automatic/c90gl/proc/underbarrel_swap() +/obj/item/weapon/gun/projectile/automatic/m90/burst_select() var/mob/living/carbon/human/user = usr - if(select) - select = 0 - user << "You switch to grenades." - else - select = 1 - user << "You switch to bullets." - + switch(select) + if(0) + select = 1 + burst_size = initial(burst_size) + fire_delay = initial(fire_delay) + user << "You switch to [burst_size] round burst." + if(1) + select = 2 + user << "You switch to grenades." + if(2) + select = 0 + burst_size = 1 + fire_delay = 0 + user << "You switch to semi-auto." + playsound(user, 'sound/weapons/empty.ogg', 100, 1) update_icon() return -/obj/item/weapon/gun/projectile/automatic/c90gl/ui_action_click() - underbarrel_swap() - - - /obj/item/weapon/gun/projectile/automatic/tommygun - name = "tommy gun" + name = "\improper Thompson SMG" desc = "A genuine 'Chicago Typewriter'." icon_state = "tommygun" item_state = "tommygun" @@ -223,4 +224,20 @@ origin_tech = "combat=5;materials=1;syndicate=2" mag_type = "/obj/item/ammo_box/magazine/tommygunm45" fire_sound = 'sound/weapons/Gunshot_smg.ogg' - can_suppress = 0 \ No newline at end of file + can_suppress = 0 + burst_size = 4 + + +/obj/item/weapon/gun/projectile/automatic/ar + name = "ARG" + desc = "A robust assault rile used by Nanotrasen fighting forces." + icon_state = "arg" + item_state = "arg" + slot_flags = 0 + origin_tech = "combat=5;materials=1" + mag_type = "/obj/item/ammo_box/magazine/m556" + fire_sound = 'sound/weapons/Gunshot_smg.ogg' + can_suppress = 0 + burst_size = 3 + fire_delay = 1 + \ No newline at end of file diff --git a/code/modules/projectiles/guns/projectile/launchers.dm b/code/modules/projectiles/guns/projectile/launchers.dm index fee2e2fef71..bb12d2865eb 100644 --- a/code/modules/projectiles/guns/projectile/launchers.dm +++ b/code/modules/projectiles/guns/projectile/launchers.dm @@ -3,14 +3,17 @@ /obj/item/weapon/gun/projectile/automatic/gyropistol - name = "gyrojet pistol" + name = "\improper Gyrojet rocket pistol" desc = "A prototype pistol designed to fire self propelled rockets." icon_state = "gyropistol" fire_sound = 'sound/effects/Explosion1.ogg' origin_tech = "combat=3" mag_type = "/obj/item/ammo_box/magazine/m75" - isHandgun() - return 1 + burst_size = 1 + fire_delay = 0 + +/obj/item/weapon/gun/projectile/automatic/gyropistol/isHandgun() + return 1 /obj/item/weapon/gun/projectile/automatic/gyropistol/New() ..() @@ -36,6 +39,7 @@ icon_state = "dshotgun-sawn" item_state = "gun" mag_type = "/obj/item/ammo_box/magazine/internal/cylinder/grenadelauncher" + fire_sound = 'sound/weapons/grenadelaunch.ogg' w_class = 3 /obj/item/weapon/gun/projectile/revolver/grenadelauncher/attackby(var/obj/item/A, mob/user, params) diff --git a/code/modules/projectiles/guns/projectile/pistol.dm b/code/modules/projectiles/guns/projectile/pistol.dm index 108e6977e11..c5ab2fa7c73 100644 --- a/code/modules/projectiles/guns/projectile/pistol.dm +++ b/code/modules/projectiles/guns/projectile/pistol.dm @@ -1,56 +1,50 @@ /obj/item/weapon/gun/projectile/automatic/pistol - name = "syndicate pistol" + name = "\improper FK-69 pistol" desc = "A small, easily concealable 10mm handgun. Has a threaded barrel for suppressors." icon_state = "pistol" w_class = 2 origin_tech = "combat=2;materials=2;syndicate=2" mag_type = "/obj/item/ammo_box/magazine/m10mm" can_suppress = 1 - isHandgun() - return 1 + burst_size = 1 + fire_delay = 0 + action_button_name = null + +/obj/item/weapon/gun/projectile/automatic/pistol/isHandgun() + return 1 /obj/item/weapon/gun/projectile/automatic/pistol/update_icon() ..() icon_state = "[initial(icon_state)][chambered ? "" : "-e"][silenced ? "-suppressed" : ""]" return -/obj/item/weapon/gun/projectile/automatic/m2411 - name = "M2411" +/obj/item/weapon/gun/projectile/automatic/pistol/m2411 + name = "\improper M2411 pistol" desc = "John Browning's classic updated for the modern day. Uses .45 rounds." icon_state = "m2411" w_class = 3.0 origin_tech = "combat=3;materials=2" mag_type = "/obj/item/ammo_box/magazine/m45" - isHandgun() - return 1 + can_suppress = 0 - -/obj/item/weapon/gun/projectile/automatic/m2411/update_icon() - ..() - icon_state = "[initial(icon_state)][chambered ? "" : "-e"]" - return - -/obj/item/weapon/gun/projectile/automatic/deagle - name = "desert eagle" +/obj/item/weapon/gun/projectile/automatic/pistol/deagle + name = "\improper Desert Eagle pistol" desc = "A robust .50 AE handgun." icon_state = "deagle" force = 14.0 mag_type = "/obj/item/ammo_box/magazine/m50" - isHandgun() - return 1 + can_suppress = 0 -/obj/item/weapon/gun/projectile/automatic/deagle/update_icon() +/obj/item/weapon/gun/projectile/automatic/pistol/deagle/update_icon() ..() icon_state = "[initial(icon_state)][magazine ? "" : "-e"]" -/obj/item/weapon/gun/projectile/automatic/deagle/gold +/obj/item/weapon/gun/projectile/automatic/pistol/deagle/gold desc = "A gold plated desert eagle folded over a million times by superior martian gunsmiths. Uses .50 AE ammo." icon_state = "deagleg" item_state = "deagleg" - - -/obj/item/weapon/gun/projectile/automatic/deagle/camo +/obj/item/weapon/gun/projectile/automatic/pistol/deagle/camo desc = "A Deagle brand Deagle for operators operating operationally. Uses .50 AE ammo." icon_state = "deaglecamo" item_state = "deagleg" \ No newline at end of file diff --git a/code/modules/projectiles/guns/projectile/revolver.dm b/code/modules/projectiles/guns/projectile/revolver.dm index 68007f5bd26..1e92c89e1d2 100644 --- a/code/modules/projectiles/guns/projectile/revolver.dm +++ b/code/modules/projectiles/guns/projectile/revolver.dm @@ -1,6 +1,6 @@ /obj/item/weapon/gun/projectile/revolver + name = "\improper .357 revolver" desc = "A suspicious revolver. Uses .357 ammo." - name = "revolver" icon_state = "revolver" mag_type = "/obj/item/ammo_box/magazine/internal/cylinder" @@ -65,6 +65,7 @@ usr << "[get_ammo(0,0)] of those are live rounds." /obj/item/weapon/gun/projectile/revolver/detective + name = "\improper .38 Mars Special" desc = "A cheap Martian knock-off of a classic law enforcement firearm. Uses .38-special rounds." name = "revolver" icon_state = "detective" @@ -154,8 +155,8 @@ /obj/item/weapon/gun/projectile/revolver/mateba - name = "autorevolver" - desc = "A retro high-powered mateba autorevolver typically used by officers of the New Russia military. Uses .357 ammo." //>10mm hole >.357 + name = "\improper Unica 6 auto-revolver" + desc = "A retro high-powered autorevolver typically used by officers of the New Russia military. Uses .357 ammo." //>10mm hole >.357 icon_state = "mateba" origin_tech = "combat=2;materials=2" @@ -163,7 +164,7 @@ // You can spin the chamber to randomize the position of the bullet. /obj/item/weapon/gun/projectile/revolver/russian - name = "Russian Revolver" + name = "\improper Russian Revolver" desc = "A Russian-made revolver for drinking games. Uses .357 ammo, and has a mechanism that spins the chamber before each trigger pull." origin_tech = "combat=2;materials=2" mag_type = "/obj/item/ammo_box/magazine/internal/cylinder/rus357" diff --git a/code/modules/projectiles/guns/projectile/shotgun.dm b/code/modules/projectiles/guns/projectile/shotgun.dm index 744c7758029..dfcd69212cb 100644 --- a/code/modules/projectiles/guns/projectile/shotgun.dm +++ b/code/modules/projectiles/guns/projectile/shotgun.dm @@ -104,7 +104,7 @@ /////////////////////// /obj/item/weapon/gun/projectile/shotgun/boltaction - name = "bolt action rifle" + name = "\improper Mosin Nagant rifle" desc = "This piece of junk looks like something that could have been used 700 years ago." icon_state = "moistnugget" item_state = "moistnugget" @@ -238,3 +238,39 @@ return else sawn_state = SAWN_INTACT + +/obj/item/weapon/gun/projectile/automatic/shotgun/bulldog + name = "\improper MLG-12 'Bulldog' Shotgun" + desc = "A compact, mag-fed semi-automatic shotgun for combat in narrow corridors, nicknamed 'Bulldog' by boarding parties. Compatible only with specialized 8-round drum magazines." + icon_state = "bulldog" + item_state = "bulldog" + icon_override = 'icons/mob/in-hand/guns.dmi' + w_class = 3.0 + origin_tech = "combat=5;materials=4;syndicate=6" + mag_type = "/obj/item/ammo_box/magazine/m12g" + fire_sound = 'sound/weapons/Gunshot4.ogg' + can_suppress = 0 + burst_size = 2 + fire_delay = 1 + +/obj/item/weapon/gun/projectile/automatic/shotgun/bulldog/New() + ..() + update_icon() + return + +/obj/item/weapon/gun/projectile/automatic/shotgun/bulldog/proc/update_magazine() + if(magazine) + src.overlays = 0 + overlays += "[magazine.icon_state]" + return + +/obj/item/weapon/gun/projectile/automatic/shotgun/bulldog/update_icon() + src.overlays = 0 + update_magazine() + icon_state = "bulldog[chambered ? "" : "-e"]" + return + +/obj/item/weapon/gun/projectile/automatic/shotgun/bulldog/afterattack(atom/target as mob|obj|turf|area, mob/living/user as mob|obj, flag) + ..() + empty_alarm() + return diff --git a/code/modules/research/designs/weapon_designs.dm b/code/modules/research/designs/weapon_designs.dm index 3482547f113..c9cb01874e0 100644 --- a/code/modules/research/designs/weapon_designs.dm +++ b/code/modules/research/designs/weapon_designs.dm @@ -112,19 +112,19 @@ category = list("Weapons") /datum/design/smg - name = "Prototype Submachine Gun" + name = "Nanotrasen Saber SMG" desc = "A prototype weapon made using lightweight materials on a traditional frame, designed to fire standard 9mm rounds." id = "smg" req_tech = list("combat" = 4, "materials" = 3) build_type = PROTOLATHE materials = list(MAT_METAL = 8000, MAT_SILVER = 2000, MAT_DIAMOND = 1000) - build_path = /obj/item/weapon/gun/projectile/automatic + build_path = /obj/item/weapon/gun/projectile/automatic/proto locked = 1 category = list("Weapons") /datum/design/mag_smg - name = "Prototype Submachine Gun Magazine (9mm)" - desc = "A 20-round magazine for the prototype submachine gun." + name = "Saber Submachine Gun Magazine (9mm)" + desc = "A 20-round magazine for the Saber submachine gun." id = "mag_smg" req_tech = list("combat" = 4, "materials" = 3) build_type = PROTOLATHE diff --git a/icons/mob/back.dmi b/icons/mob/back.dmi index 26e8c26f508fde21fcd71ec8a85b08660306d66c..5f07391063187d62c10df4436e312e23bd666b6b 100644 GIT binary patch delta 12416 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 xy?hl&EBKGc#)c9nvk*NT+mnBaMJ`-{JfD-TTMo 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 delta 14783 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 literal 18228 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 k&MlF+|8D8<2aK@EJHZL=65J&uxce^b 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 delta 15726 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

=DIH28tDxScn?ffK#StEf}d9XzLyE znCeC&`~hoec*89|V-C{Yy42YCcEQPObWH&^GOTbD%57A0B=j>SeE0zJtG(76YXj7m zEd-n|{xF3sHAG1E!U-T+w;2>i}%vIZVZ(~h4`G<{o1&oC1K5bk*hZH};JOTou z5CW)Wd);wUo{4Q%QC^NPW@i_P>ic#dP)=6qNXtsg0H%G%H%&CMd-bUa0P)Xqr{XfF zPl$sPpe=}&ckuPTxn_?&9V4TM0EdIq^GG~>s&c)-17g~me@6D~o>lmA%VXy|u{H9% z=LVUCLUV`ds@hzE^gwgHo4Uh z^7}zX*o1jvZ_vUob*R66bP)ytfvle&q7LKY9w-(OwQq6Wwu$!&-VlcI#plIgK&zOk zG7tHyx&tE=NLZ7*(ZHOUJg-~Uq9VHCbkozdX9pg0Nl)3H1~p!IXOXb&O;y6qJ~AQO z#3ACUxt7|1fmvvnOL{0x7&!k!fA`|2z>Ut}YRi!re+K{xxZOe^@d2qTSY`PR|!c4bgF!@2jIUWcq|kscy7{Y_GD`i zu7ET{BZlBYLmK@%AB7ScX!wgQ;U^X{ z@7n5EyR?PTYo!B^-gj^*t`Zm)9(y5BPjoTia`UPS_r;D;xgjHpIxhG5wupqkGL(K2p@eGdWXEO#9p~xE&?C)?)THu$4xODo8zwrrMT9SPh(9B-bD@><@nYx zAr+i4!14ZcJ!Qw2Ots?-cYV-*WHxrYD)+v-Y`F|A$1{z9igOj|Yu@mew97-X8soMg zM^B3%m^HZM6!ygV7c^k90~rbf^zMX_9?##;2VDbnwS~LsQ!ZrDb_RiQKdmJ0n>Gb~ z(C$6yKLB=&kw^fDN#{AxgHXo{fma8MU}7SwXESXsD;@EQhG57QEVtN*1b^lJefeH_ z+)*AD+MpI#`t-Z(kCc;eLSZajU0v{=oxP;a8y)i)f~{Gb)VgNJHWui@93krUe!#X>5k*)Mtc5KCTc^-!~sGt9I9z;OgKQ8 zW5z*s@u4`6@6dx)7-i489`khk3sY_l!Obma+R+zFSmcR>p)b_85v2NMv}O%Kg{&tl z?N}{%2QA9r6Dm!)Df8tPVt*fz={S_!l-=!nLq0aev~UEdzB2l%;vy}3{yc%^(tEQg z#ymWLPCPQI57c}){p|V>b9W#&Q!KO)hGrDM0<@vp=xjf+RA~^}pOTg~ym#%_fhWKJ zg-hu!=i7RRbTRLvJm;q0zh6O-f!CMVns483w>YhIe0HST#3Q2GA08QzF7UYnC{YdD z)ptD}vBh>rVm|h+<(HNcdigZL&ZeQ>*^cw|C4dli`!3CL3;4%i-**kELbLH=ReBJU zy-+}e2kJ9;K$_b?{xuZb)zy8UlCt{=5&y>uX#BdfKiZ@|5F8fHj|q!@%3!sReBz(V zNGgLq%?(t5P&4KqrGyz~QAwY@9Ys0uEGw#DgTJloRq?DJhaxC7LkRQ6@EU>PShem= z7I7u3do^&b16Io>Y04j&p8mzIhBuLh^WGg>%Ch`+SvdAtVqVqth94*9Yp2}ui)}=} zo~GI0eh&-YytmjX&~u*2Owt(OuU3|mCl+v6t^eS7s!>P6M@LizZ_Ty%i6**bSVKwT zo|S6gZY6Rd0Z-I58w>*MeW!*@pg8pMbWhRTJiqc}_p{!XslOxx>8Kk;OA~;wu;2*9 zh{znAF+*B|Sjv_igPa|%cg)o^HYR>yWku=a#e&85wj6amsoL@6@t3Hmu6NZJ6+CS# zzK?^{_TD__6(d|S9SEl)f;!H3(K-LP-A*=pX%7cv4gXz7EU61$*0C`yhs73JKqQwQ(Lm^opM6Pck;e} z|2EmHuB3$Xi0PL&62PQ6X=(3sOwS~+!o%;#EBLA$$bkk4#B_@qHdOxl^YWEN8c>&( zHt`WkMzqH0Mrby?j0*1pSfe4an#~eDn9F}fqI+-sx8Og&sHdYp%hoE*!4<4=ov-NeMi>lM$nWAC?3@Is;K%7)Ed9G2^+M4hs z;bFqs>deLw?=zO1tOdC);)fqQcPzUjlEGQxhmFS35*ExYkj0@7BXxl~_xniIWB%#P zv53-Ag9Tl|b>CH5DgTS->82)Hzk;(QcIlBPN>Rn!tQqDU$4O$@SZ|-jb9p}YKWws^ zJENbEZA6_-`TuKu&Vh)>3qq_0Xkbgd!)%QcCV}b+!qkUFyH;L-OxIKe(j_k;c$y^o z@I>uMz1n+y?B(3#w9!D;tkeRI{WNsWwl>=>8S(?uiFFKPx+EJrqxdu@Jk!7a(ot>^NFarH38J%aQ>VH zI^)kI4-?!v(=V;5iP+v|pA!q%NgiZC8b3w?T3iC?*;a!XP9WwQkuda)$O6g{n;dVaHu z)$9g!6f%q?r9t;tTJ?q9VQPNAKrM}j!iZJZMDT@mdig-EUqoKrt_MOI;^V;^z~pNRN>1_z@^X&2DYi(q z6*KcmejNg&5C3*HR|c}LC2+o4oevtY7#1&>w5o(07rin47D>eg--w$38IB)>1DV&( z^^N%GgUCC+JdY>ime-5Ax}dYVUQEWCf%;@7Me^W3lDdZArd-(uk`*z66gyk-?n**; zTLQnF-XbIlXVOv)a%$so0;|mq@>QS_$rpn05-+)mS6y? z3$XrcqJt^K{2z(VP@;Z4ObT<@gwR!124S6yPYpvowgPtdYeNy413e9Id9nlNQ%w)v zd(Z|Y{HX~V7)asLj_J|J0&->ap2V=9zE5Ak^((v1(kczb~b>@>A2AW+lY-V(v#I(kTVp`;C+ox zaRdO!(xEI-xkV60f{>8V8xyViK;ZL$@vxxq$gdrDO&y&-b8GPl3AbLzer$Nr-Q5kS zphJj(9Gl)VdS+JEd$c=T$)wlM3tk?_qei!c1tzq2D)N5*OalkBeHb(pH#IdK3C8uo z24&nSs;c_Z)%8gzRY_HKx$kA{cOS6$&;x{&t>(Q7{%=V)MnXbvs+^S-%b^?f`i8eg@cn4#XU&VT zT)$3Mj2;wq@t&ZGrxaLFgN)VJHNwgNGImti@ zTrpvTjle7 zbnlw^Mt|y@5pAC^E9i{gtLzoTmcy~+$BBA~(r%`zyQ;(9K+{tfy=En)9SyB9bLi>w zvFG3`z;9#c;MzoPfF@J842uA1IpFf-n5)Hpn%jCXEqKw%2B>3-GH9tE@)*c@ULZF= z>VInivVXJe3p@91vHB(JGT45~PnsE6{}q>(HeUV{(U$DkC zPeFK8JfQFik4So1Do(}$!Nj?7g_M(9h#?40NL`+dxq_OGozQd4Cr*giG33U58Q7tJ z?xp8z+BG?;rf3!Z<)p$*S($KDfKRg0HPGv(B$vDG=aA?!Rwb6z`Qr4UZvY~?VPgBq zA+RQCwB0bUC)PQ`pw@PrbqTX2OtCJz`-uJbXX!z)#1ie|8Xtr;0QqPI0l6otriSk! z2|lpwZ|fI6qb0C7`9R&{P733XAiCt-d$u<{)yFoMq%{JP{ia5HiXh$Ct8B`|#4Y7x zw&Z@WVJ&4RH6vWiZZZ@Pve!4TogxX4NlGOd$bQ;gGWTfPgui?1&0MI?h6Om{DZA}s zf3|WAi*6<%GPR>30q6(}uw+-vAG)c?Ya3{p*mC&4IC~FpEZ_fs__Ak4qOv6s3L)EV z6h%hL-XuGFh5MEfA3{Q8k3`wo8Mm2ivgd8@J#Opf{-5ge{r&&P^L&rzIiBY@#L=Cu z>%7kE9Piib{d&L78nuTC3K|-E?^_c?4{=4;jgQ^ct@jq_i`uE@rFTJnG%E`$Yv_Kv&G8m(K)8(r$6;qUiC%!);S=4lO z`zH>BZHM?>mwV|V1#JenP;(w%FhV`ZwSww_zG%dkH^-Lrm1lF8ywBy&PWG0tFTdMu z4w6pK?9Fj;9h~14f6mlhO|&{nJHHG~%I<DsKO{V2F+I>=C zUo_8x) zYxPDsoRHKn?##^)lX@1dC9uS1Re@nhSUZJ?aR!N6yNSwTc^Jz@)!?3l63bbYZ(Cvl zHs$<8z|qwC^nZK-ss)w*?ei|s=V8np>Q4{KrkJq2Pd#l`Z@Y*ANW`C+lqB|Py*dVvD6GZkrI8v1LPZY;@EK`!qztmM@ z#B`NK1;o*$jH*h>V9mPuKH58E!69#JXP5K%=i*`DMKpwoOvpfdjl>#kU$pvQr9T+V z)>qXV_kV^nv@Uif>ejv%1}Q0!fO8;$o!Z^4-PhPp9t4?~=3o~1udy;)@K`$eLlns= zVAshrsJfh{oEb1)ZvV`7D9_rX>TB`T)3YA3>FC+!R}BAvN@+?9_;g~V2mW%$2Y%^0 z;Uq^cw%T=XRR8okvSRU6q5cA&#C+-F6Nq9Aj{X(G|6w-cwsq2ZZ~sly2qt9~CeCbk z#RuF0XQ3KwY}J#hPEG>D1}>KbExVg-$}Se3Zs}9IJgr;@SM^i|3D50m)nxQa|58YM zZ@hqc={gYNVh84rUT_@06z#@c%Eoo=dGr~qxlzZ#-nq+Bx3P-4;Bv8 z{)gMoz7)A{=xOEYG|T~DJZN)pW<7=NaAl+j-YT+XlIrU2278TwVky&!)5re){#fij z&i45z%IvNG&z|d2PaFSelCZy%{#l(Ndxq;Sxf`epSWMF{#O&C z;9ph}t2eM5H&2S24!la3&W4|%guw4A+z}9nQVXRSeg6KDTXF^dg0{B<3|3~XS^%Ug zd~7J1m+5H(ZBpJJaNVU>|2en_i~sf&wPReh|1-5mne{U-n(L*fs7ELmH8ZLo)fFEr zfN13fC<+Jhq8jW>2qfvsY==Jp8;j0Qf;%WN6_oBX795e)+@^HvB{3`d@BxQJQKt<0 z)K%hZ7sCgewZQU?VksrPfZcfXE~v-`cZAXH;kh>^xozAWG$CbV^x7%A#Kt4?!NCr$ zX0yQ{#A)Dk8*J~UpbAX#VBlHZL?4QY3MDS1js(*;^u^aze!%>C|`3pHgNB)-zivQ2}@_!d(d>Yp` z>E0+A5N1G_2o=#3)$DVrnw(YVdc7RoWyU5rVlno7QcAdw;C!9K#vUI~r@NenPT_nN z7pn6>(feh`n)?^nh?^%jBqAaszdz2XZ9Pil#>Kk z;gz$M!7m)Ji4g0x2drezQtvqKC{()MfcnTB2-0#Y1FSp z3N1Paa{;Zh@tWb!ZSehV7y|U^!T}K@K_M()*P+(+hEG&WzHNDZ@MQeO;|=f7ZPzdY zOAx0xECSsvS@(}P7F)QIoU#(7!4)H8oi0Q&4fmK2%5SyOQ~h3;SLsV;|!u?r^8!L(=$Y+`;Uy2PjiK>sY_*Jp| zPHu9FO2y1`A`4GQ{8>Y68G`5hT%1!XgK_Fv3d3X`TL?qbX6CHtE}Ntj*X5g!CCl(` zfD5Xf+YZ7!HVp*Uk!R>}_qbx0B~|yMZPR!3!lV$uae;~D_B3iA?jz4W7^7ILFx-MP zdih#D6U%*>0w8CaJ*?ebYt?rnn>jT)y6MMU`4ZB4yu4WT)hQ0;@sijIqC@`tK=q_V zY92NB8Ici;39UhUZ==0Wv0EF%$O;s8cFh4>{v*LwZ-6sf8-e+S@StpX2;YrP#SCX4HYcjqe=<0fRx(jjn+m9bm>w|n0xpYB zE?VB#*9ZAE1yky;+vR!4n2+;O*4NNXM+(x1hlGVSfen8&Pq(Dmt*gD=%%)5)Niknb zzjDx~ENEOe$;qQ-tK0sfuhq^APKfmHD7S<9jd&^KGn@%}qch$8;X{IzsB<6ki2~ke z(BH6Q-!8;r=k<5j1%EEW!xaKRWZ^^vK|mA^TvGyzeSMtswZi%~Xg?i%Xf3EPy5_f| zcZZaWtYzG$jNZo*FWy5MKvYFITv~|!5-9tI>KpU5a-V8y5$IvBy_r4h(3a$>*(@L7mkzx4nyr5;+ajer2Y)dyEG&E*|ukDiKI?x0lXh}Z9e_dep>|-!^}8|aX9vmGoDP}D$U=A z4MmCjXlrTBhKo#5eY|Vf4gnhI3K(K^nd#ddzNhGaB*F?zYWJeh(Jqm$u5{9rg;Z`H z<9`M(Y8azR;CQhdmOR4qwD4v*VsNNogI5B-r_je9#1Lr zn@zqb-)`~LL{=ZNZ-4L5$MHG#mDnqU<8^4d&cnz|AHKu$Es*Ac#J~SFqr+~j^zk%e zsQ=YJVV4U*sy>x_2EUI&^KV<1FH5@WYd7jIO$Lv%7`zQa=uRzITo@uiI-vTaBX)1S zwc~mM)~`T11v9@Df%MwMMSH%V?&VuPI4Q`xI-~IM94?0EH`s%mE>2xKUyAH0LP}OB zxgXbUZc(U7AK%3D(>C&I;eq9U03ClQg;dQh$-ik^#xxujnl`*ftIx??2cGuk_8NFP zJP5z0i~yp#d>I$I(7HTZ6P_!8l>|0>Ei!Z=WHgX))%>s-jMrXl8ccTr3AayD?jbt% z9Y^j|d|IDc)`9BhWc@qN%ep=~^rcmxigun6OmxiG9tu^P#~;65sk?d|+E-3~^L?-S z#nSM8qK!blu|M6Cawr68#>VF4Iy`)>gbSq=RT?C1eNDtIa_R54J6XSa#|VD{F>97D zj~$AH%cum9U{7HP+0kReqgPu_7_-J+)icFNTC<}f9QU&=BvzV1&<7tf0jUjg2=ITV z{MTMoz;54eGt)COyAc`|h6B;k(&iKvwt^BnsNSq@+#%tuO5*+E(GtsQ-|U#AB;L&s zF{RD-7gOXk1$)NuN~UGfqeC_9Y#I-&0xy{ww|=bMMb8AY{BWE6Jfr^_Mmgmt<|DyS zgJUvI#4_U3Kot;MQmPFT8y$80k+AX&v2#oV`K2=8$SWn7onPYEn4;raT{4Qee7<4n zF{6=rycu?@!&<7ZCl~dB7W5f(2r|3rArb!+SE}9h(H6evyV@S#21LBdr`n~0Hl%i>~al`3JMDqt*mlXj-;azxL@AV zIi);~zSUqQgu6_<2F$k}0YPqCG-oj&KnbB|*{Wru0y}Hnn`tRNyN^F6C6Pm(d-XVZ zDPqsuy}Eh#Yz}jubMFJH0F1lG2oDsZATK~@eRyEtS2qori%i^G$2B)+PV|_%UqpL_ zAc!a4;>eh7O+kK(KUr{~SlY+&{BP6M%rcroC?4-Gwa{zp3BKk%LQELt$)rh z6P#h|Z-$L49p~379a+9xSsK8ilF#KeX(7MI(93s;t1*b*=knKPO_;x?;#S6uB1*5! z-Fm<--i*=9`Ih$pxkEy1MOn;P){ZVN8zdwTK@(+k$ySu9`E|`v(T7WUt4_0@UB|p^ zhjKE7LVoYdetieaR|^b+@pF;d#2$-I62S$>%!(^iuiMR_Fb$NIr~i=mr6NuwH8f7$ zR$*|A=+6kIu-;yEXptKoLe1Vx)kQ)^Rx%3D>Y$mgug6IR%$9B1v2{rb)kDE)1V z22rcpN%h{jiv`nX%s{W-{oEdj6(KPsr(C7m(MPRn%bt`jU>CtE>b-3Nx|plZmE=j0 z&o|Ja#fQ_>)6*@gAA70mj4Dqpc(K#B6U7q7zp(#u-~{1vDS{YUhrKv=kztYMgEnUG zUCHks>5O)(Vyvp|{1gs)waR5ie5N@L@gij9NbzCf3G~#DTNK~^95-Q=fswa?u^DIN ztpkLYaV9YRc4l^CQHxzko`uTTPy=D6bVJ=Z$m$tO&5t?3CyWBuoN9^mk0>#&_~wcU z#?z^Y*kI#Hq3ht);G;LqXJER|{bL5;$tNWxB?LyXA2YOasjpnY2NgI%_wS2Oz?pyK zH;F)2LiAQbOg;84E`rawW4j`X>gtSYnCa<51= zGZ`qQgP=&*d1WQ@pMZ3DYhB#YeSPH3Vkl{;(6229TpsS`wTWuL)ckbt{&uNF+(+Ws zS<2}zgwAU{958+}86&VWxeWO3SKvQ^!lCrEo9G6gEW zWiKr!NcDxw?gMUN7K!p%i$SKP)teo+MzU;;z(0K}j~N=$dhp;uT6sC$`T02&J`Q&* zDY(=2;bFzmamkM#^dNKyN=;?yzli8SuJT^k0wDnb4*#Kt^U*=rRlc#(wg-xenIOkI zV-Jb?9Ptm>ly$jZZ0?7KNWnGMCHq&eJ{oGV`e}EkwET)g%Vd_?QiQAf1h32x?ss9zD=-15HNA8{#@zmVDKT(0;WB;>uDY?Nzn(dJqq*5r_zI)@*&%r-UhC}dmX1oX zD)Ptw(BHhpIXB-!K+LDpKxpNie#a|)+8*KVUfux@Xs8D}i-7C0`n7O{oafx&JNUZj z-;4}gFE1}D+%v}=GZI2hN;$9zfqa3}{4eS&badZA0pgQ*{)R^1-TB8(mbZyeB<)@1 zzNr(EgM)*Wjx+v~3jnNLbZMj`Qn=1|??3hV5^QJotROCsn65`mT5%{Iyplc2#6Qgn(Y8@7Fh;baR3G6uKBY%~+ z>1{b*X6`QYG(e}9L6oTb{CNx&t%Y=-ypNBhvx^IGbL=nL4bq&g5!fjP=@uCU1w!Cr z5LjATsv3vb$?z%sbkMC`(9Th-rUbUNu17e3VrbN;xQ=)9hY#WhyW{EU=~lM3GzbpY ztIjhFMNF4kV*Avz3XSeS^{K|5Z*XwAc_K_2GT7@gtf2^2S#y~O5BT;vj=7SyKq1XXgZ9fOc>+eZs3XWQ!6aW)I_9qg9 z@d1kz$O%FhnmC*bpsNn>MB?j#oTt|&&!b0QuUwAfEj})na9e%8<0Ltvhb3RSi=6o3 z+0|2l7|2mQ+q~gB?+A7EPP(!Kwg)FZG6tqa7osbF)m3cU_|7>A-~b?3ku#0`VXfh5 zfSw*HE0?TQoZqe}FV{lXbEcUuS@K`wb-!O?+4B;3Oyqp~Ca0ou39NT)Q2iDH>+KFk zV=z0zzq5HloKfoaK!G-WeHKxwcq0mhTA?-)Z!$V^zlyE)se)YJfw}_PW-u1N9~srY zkk_eAjxznF2KP8!kgMc@3;5*@+RQI4v2$<`bX3^Ol@Mx_f>?$-DCtM#44Kj={w|Ox4SO+hFA_v^ls5bDG5m zOSkw=xly5|c(Q7x>&oRlGUB3b546wl&=4*^3vo*@daT$y*s+z#gTIb_VHl)7DeeQs zXISfAG9Q$fTqrpHo90YpVxI@9kDrm>u14iI=N1+;H)L||Y-pzjVCJ=d7xu5<*BbQ{ zXd)-Xw|jWY^e%aCoknx2Wz^I#{!S;H^!3XUPN6_)%Z z*j>!8S&%H$DYc5K^amk4sRaxZbwDpl@l6INuZ)`8jcYZ5Fnu&8cw$T5?)9Zhgm_a1 zdkN#x{Iwfc@a8%QZO#2mF6p>jlFNLZo|Q!a^5sXX!4Ao24-0aWI>C9OhoiZwIEzYj zD7KEi=(EBC?*JUM{Iz4>R>b!54nh z(ogt8*z}HUR>0X99;kf?-0tfu_LO|IJite|&9SjT4|tf0oL-=e2O*=`Ip%oehg)vT z`&Z6@2{1k0UHBfWXpL~QvH8{#di(>G9C+2iLJVerW5R6u`70;^uBQYT@YSVysX@fb zZw~Z=$Lq+`e2=$^k<1T)z7)95HIsf4lt86yZt>!OFcyOaW9sHA-XgcWjyBt`9u@RH zYZA%k47}KRQG-->3AdAy7(b?_@)0W5e|NhfD0pFX;CXg1%v8|)f2R>f^WGPpPPSD! zq?(_6xB~cvbnuRWO|QI>QA(xDwkt8Z9C5fgnYX$E4fUInHCJFNG6^`}^BnDJ?}vY-s@0;Ztx4&D^Ww6^lm z;(j2N0vv^wU}(I9TPfs2M@tLd(JZizp@v+--YR4kUu!T2x1Ti!9%Rj-I|swY4i&iT zc1H&fkrE_anE2ZAYVwP_tE;~k#XL7RX9reQv?McA`>7Hh5xyr~+D3cExjNdovE(cl z6zb`l2)Gj|3SG=xi@WSYZnYb2Y>m8DztG5OBAxdB@ZR22*yp`%QYR1Xk>Rt=w-rEC z>2=xOev!K3*m{zdq}~Xy3-9zr_ zzfE5`ocHQdqr!J8lbcCom5fv&Fc@=Bzgf3=h_8|@@*VCAnACy3OZ-}2)txu5Q84$k zR!T^*$W&qbd)%k%PQTpViFEHm;%yXj5oE+lT2&N_w!MmwoA^{;W5q_{T zPvY+gyDv38MV?x>=^=88J>X)v|03S=bfnEZ6d#o`i`{Ob90fDKWgLWP+0!b2sEgs^ z>jXjnvJ}KUGfNw^|M`otKd$J%v+@Y7lUf07}A|MkM}{kmWN0;x!- z2-rb33aJ1&cERmo zq}19#dG#Rnmky&S)M-niJ%!pNteK9hj77uD`A42S`^{1#*70)e>*K=LE!YmkIib18 zyMuN#EbHVF|0`Z-Ar*TVfh8njzRsgsonV9*+TJFO$IBDy{NbF8svE=L&pcj_>jLcU zzrFy3+x9Fz^{cQWs^8G!-K4JyKUR%>&heq?C57qn7@-yngVI>-9rb~pT1E~Gk)G-- z0Q`IF8EwvRwWA6<2{LQwuoST|R>mtnQBxb*eRw^ir=0P+BdtSZ^gCq({as8)sWMI*ZxP;Ex*G5;O-pkv^=>r5_{7xY)&B) z;BNVqmRYm?QN$ykBmnkip3!1AyHO&0=SUe zjX}EMNS34P#{{QOUDJrGBRi06|MP&~XUU<4h6bP&R0K;OE-o$=EiD1GJeYg+u5lf2 z_wcAabD9KM!xXxsAs~h)XV7Nn1bAU5Isa&4uXy*E=GHW@GPh?QrwOPo>3K8p!vn2j ziR|TCsaU~LTc2cTiM#uTqep2A41o= zgVMFs9uP91q7PTQz(Cf}kO@l5&%Xo^ft9^IFw7;uZ?kj-8a(idTgI2VlW7VQpWNDB zaC<8Vhk)bmTO<;BRQdC#LfC@qphFiRV03|H_N^!Je!%wAbamkCEC-Y%?K@_6J}~e+ z(PF}>l_{@;YV)p|hQ^1kvo{S5@2ip7>A-qRn&|hEe~<0iQI*S5``yElDE1?#Eu&80 z{NwYk!K8?!d1{*oS~Nm^V<;dpp^!m4J|B$vACwzwz=?D?U6S5q`Iw^B`xW(6Q$He> z#Wy64N`fZQ9`7ifj}kAT*b_sN#)XadTCxl>eh;HyJfYJsXDX_U#L3}zU%$=M{%(5@ zFT;E==i5Cq&`T0$=)W0~sa-rKS}SHPeSQ7Du`$wmM!)f~F~C~-r=_tbwhj#pj7(gm zGAY>6C7Rzn62rhDD;t{+hAFx5+x^*UmcR@7LA+9sxne}U3BQg(d&3qb`TdGZWh1(L zYFcFl>-+EHyl~=peJ}?z})A!Z7FWb{G76<|$ zRmI2U)#Q)Cg;d#fr<`^)L$<*w4xmM`=)?-IX4J${W|uE|Obv1&P@)+m(k{UGef&u; z6e~dd22P9}rY$`tV3(|6??T0iX-$xjGU!oVe|6jtCu+uz-o(-~42xFG{mGNS9Ztle zqN29<_DYDWq23AyV}nXZ91t^oeX^5cmN=yrQiw&y!ox{TnRZM^#Pq z9!FW*p%T#N?Chq2Ue>pTG7@X7EiVRxH?1RG#gag$bWEY5XL{c3|4skb%9r$YDKtLWrz19DJ0gaev{d~4-7P%SdF*3hy%6ib${4+jD5$0;k zsc^oxl0ogE>>;Frhf-RJZ+~gEEQ~29?SM5$LFfC6e~!ugpg^CObufF(^XCTlSdsdiULL`yO)f43e1>31@eAs( z)yOF%Bm{zDjOut98q2?sH}mk-4&;Y(z>W`@OAR0R|1_D2Bb%`~@R&rqfaGIi#`9ug z?bh^eod`!aMt4FiWa>=_`E`wizv~FN^JVyY$J3|Y*TGwyg!f-yeNN;DxHWW_k53U4 z0vma62+sgXiG@wskAC;JBO^M2K|u{K?)?)7IBeBm6Nl6Mnc4=)PLKdHo34K|!sBAX z?r>-N&2TIpQ|xZ#cj@G=CY~n6^-|+UD|Spw$Mf91-Lsu>tPaOa5qK1?NyI@-JR!<) zcP;#Uh&wiDm&$2U0q9FU&X@Omk5a8j@l?!HDswrK#@T{pwbnMu6(Jd0bMBA>Ju=j( zh`LHgXXd9xrsYNoy)RkFeYF+%chT;LdkEXv&B~4V~b1e7mt^rF2 zeyd(qPVWMxwF2&1re;2yn5nC_Ek#A+@7eCbB_qdh6`3m zGCpOB1Cedn7(;eX5|d|Cs|StA|6Xtw2+X(t6U}TA%YyzEJpXX7O*TOm;hf0Aj}_vr z%^yF-m*6O6VYT3AD?YTka`mcwmIj-U&=tUuMO`|U31RuhFg{QB_)j)bYOIISIfhVs z%@lV5c*Wk2GbBMqV8A>D9%QnGMz!kd>VBZI5Fq}FlLf0+1wq1Cv>8qBtz+1-9I z^;%!rQuBB@wOK!Idt~wY^^c(FU}H5YKId~H4$Yl{6N!9331xTp`-wM6OfxghcRb&x zjohvWsr3)vZwdqw1wFw{z)n*mUv1I6JL{44skd?LaR_ExNlQK2fCE28Ug7!6gyoUv z&ZSRe+|2bWa!vkb5g#KB4s_c}6vfw!Ydi&%Ra9D5`m>z?I+_D|JsBGtZjeidAI%WC z9u6F6%zyh0ww>>L?wpw03oGvwS$tz~7RyPhqNMY#4>8MaghMwLTG0NV*zl)Oe=q4h#-+H{MSC5kN(`+ z@Bj%SEjcf*s+N&)rP)x#nSk6@-pymVc3JKbrw;rm!&-IYEBk zTx4H)D%Q7u!R}Z|RPWZbUFQ~gz>^-39f@GSwX$oWT*B*>n5f~l?9ktiMDQHG`FoYAUE_^MYId1} zHifU%)Rr>h5c}J2QTCZ>RQRT0`<%uO>lgrB!DaN%Z3&p)OBqsYw)fLSNl-`BF3Ez) z4!beJxtyYe^b>+dLX@tYf(%lH3H z$zEiFolf}!|Ak7jBf5&yPq|H)K2vEBKM={BL@>M-FG=(vu|7zQsBz zZ?vbW%HKqCND2jkqX?)T4mmqL#Dl;w2Upyl5v2UVY_qHWxRng1^8JAJ_w8$uU){*-AB&iF+%ralQ~ndVj?Q7!?3Mr-R-V zE-nDX&A^}U4BsWgE6xh2@&|9|m@L&){mdu+3I|m8tGeTtP(6@7@Oy5XJmg83 zLQBZ2s#1hSMz(?g;OX^mxF!^{XKPPFpZj@#U@6M0=UJ!_3FqDh&3b?Ei0)bL0RR1K z)iv)XL|h0~oSjjfZYP5E!$7RX6*ftCg&B^->?%)yMA!0o1s_o4w8W5tu-zlbDxc1; zim1k`$XRMyszps|8(+3Ev{bL7Y3UaZJ2gF1C=I7-TFvKXv-8S8{C&0MEk|7+v5V*E zmb0=v2YH;3J+0@@rnnx=vbd)>49N!s)lS zt*@>QIRt{evpTfmb-nN8#SNVfGPJ(7$XusqB874azbX1^*7kRZYCBUvj^hL4yqmyI zeybR``x8Py^AP0=`!O3C9)9o*#XPw~gKygQ-9lMc#qAP3J^jvpzw&jc*>)C^x&Iz{ z(r%N;sIG5`3keCizDWD{@z%hw@N}Qz)#72J4(bC1Q+ z8fcPrwwGeq=6P@p(&}luoK&m!BdI_ut!;}Lq0O^BdEiljyH&8U#XW_l!KZxBRh� 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 G1pgB+RNqYi literal 73105 zcmce-1yCH(w>~&na7hRdBuGMVO>lRT;DN#2U4pv>*M#8i?yiFb3qgWQa0~7XGR$m~ z-+OQOU%OSiTeY=S-7`Qp-S?h*?z!jt&UYh}6=iX;$gn^l5blTfQlCH|0`ukuq~O`E2FrV&z~D0(oR?r;o=jF+CrcODGOstn@V#9B$D1wNo|& zCOKl3`ay?>^#qkK;d1W;`F#p48`Xk(y;b2Ve`uU2`WQ|2F2WCSGFW}voGofDTZWrp z4CgU`tB&fgXjwonns4(`I}aHTptBEyn#OxDJNSpG{4Los(NTSYqEVQg{OkOy0hPe?ql_(5e-y|`5TD&yC%Aol+HZM7qbv^;BM4L?wpyn#=KNl zEq^n)q%LRDbS{jUR&SnH{J=0tMIY%(>Ld3&tmp-i8q`8e5gpk}fPi2+Fg!0dV=Zk# zPL`j4e03*kV+`Zc*Dxcvq&5KFTWf|$(bZqlC2>_D!IyU*KCX(K>C{T+DlgBgIxfcI zY81wfwigQ|B~&&fe!?Y8l2lt{&d%Ckt6VdJCMUTvb*ZR&N3Oj_@{F_z8z*`x1ntRj zFY;@5qbYlICCgtNH6~wyHCg|IP1GkZJ;^BOVM%jF}Ike`|u>DEi>b%%Q zsU`!4Wh^xF`iI*`p&xG683a0}nKI@XFUoXYeUT5V56>iPvoE2I5scEiO1V=^vBj za8LwQkjgAWU-rhlY0v!A=>6)hVUCrm^o?&@CMD`@FnwU-+6Tjz9?wP~E=dK+0e#Bu z%2-8xUPodKm{Wni*XIQ%Z*;9cn}2toP}rAvtx<{{{il$P<8x|Tch06!gCjKbcU~sB zOq8453)aP2qXw(u2Q9f%LwD&`+LuR@vY&rd_kDcFR9MOxuo>`?nnR5l2l@KLo4lTd@EcND32Z?#%B2Tno-Ry)2Vlak*x)zlIy4)Z(=0Vpu`tFHfXE_gT(e#b4fijUA?h8i4T7WZep; za3k!EqKs8oHX3AQBbJrY{TSG!%s-yLyX*niGKp->uxyX>fIs4vcAAjgOQ~{6t8&GC zXAx9L0Tmrci_O2XL?=fbKIQQ&Gz`vpVN0OkH!m}CEk-{X?&Pq|QLq`2*ykvd)M$)u z4b|?FY%LB~bYSJojO_u=BZ;??JzQZ=HJWEoq}0;a3&o<~;NAF(kIR=jYiqkLE}u+G(*4ly zmIC28f5$=a8=H~B+?O6fxO{K@k)sMOgd(>vg(GRHg(Cse<`sLOn_#_{&UM)-S9|{R zTh~YF+^qxPM@{jx4^c_AuZhb|!(=%!EUCAXuGIVHhac9*9mJzU+;W(4Aa0z*i>%cg z@cr#>KL4_2^a1`qODLNZ$47xqc+l%^K3OmCNm^kf#WXSeP{lNA_V~w-w8xJE#k8$1 z72{8qO(@owNKyh+nqmO~$gfbJ6THevH8#YbUE39nA}4RK4I!?W_(Y^uU>s`8KRpnD zJc`3GF&VJK#pCP|tR>*Wl{oexrRAA+leDT?`gHXzokG*_oNbg@leFJzxqQSN7+Gu&zZml)FubKr5g9K7}_uh{QWFQH%5KGsJh zEAbw4D`f9$&XUIG7LS0)SOniU4cTSeGJYa=qEObxr#^gF%(g|A?(nTSLa#mEM7r(u zwQ~qa#7QhpA&~mTrWkd!6ZMM$zGnm|C$Ik`=s{;mJE6p+$R1HRxE*NfLRo%Ao?(ga z^-s=iCCQ#2(<*E`!NCh!x@?-Y8^6x_5@C`>C=hDCoL8fW6@6@Ax@e3Mf zhH#ZR$Xf%o%Vg~1Ju83@qCDWEu~^1Fhp4NicA-JaAre0S4wt<3WmD&;nvrfpmMmT`i> zNxH{}nv$Z5BZ=@wUoX*^5V_XR-0UBocx4U(&lw#Bo|OV8qm#fh48~~q?G+q_ORq^I zBPFmQzp=X_+K6F5M(CNzYl?{4r?EfgF~ZnBq_f!B<94@i(5dF@5FU0l4^QvUqGp}? zkGH{u5b%Q~*wQ#vJp!qgf|9;t%6SI_q6U4C5?AxcIL!3+d4AOi$zHHM{(}0=P%Io9 zBPbFzu*}jaf8)3DeLl4ZtAfhJd+~0$r{1U)&DKw+UtvXlEn^reRF9+N|Ckd=5+2|o zUSf(#gV}1&v+yV3_MtX)*uL%q56uG7^+kui=jh>|tW;oqzE3^zk^P{gBujuQ{&*mx zCHxko#t8a%z@?CD{_`_|@_P{Rf8BwF+5Ml(5@Iw+nvee^&~v#rHFJO5uEgyniYoq> z?^ysE@U+}u`D_urn5d}DF~Jili5lt*zm%92q{sL0>1oxQVMR!wHrDSFW< zYJu!ffe2g7;aPJL_>k$T6qY?jqApUsc;xn64GudszRkwaS1F(}6erMr&CLx)(`>W` z7k5dS`f4Fu^dYSF+5Y8ezV3J=5Fbv^Q#m(bcG&4E-w4nY5flh3SfVJdkPR@r7`LU5{i#D z`@uXX2mCtcm3Wqo-wX(HiQum8Rz9}I>fKET<7 zVz~kVCiJYapk+;Kh zDxN8W4;r5doam;^_LYpUxnrH@|=ABlpW=L@g`Qx>S519$*TkqD= zSCq{BSi_&PUnaoB#N+{s7@Q6xdAN>kaHX>CzK$)1%}8&t6zT=_xXcIs%vtyn3$>aMPW7h$qF_|AGTHfAMh z)q6Wp^`t?2W{1Y(?sD%gE~TkMy&U{7gNq1>lu)qarrA-(I>&aJm-{=l%K~?sdcJ>f zAddF^2^m>VZWmI5R&G}lQo^v5rY47>1UR>;Dyi-KZBTGmCO8d@taFI{HL>u(!uEgby`4gA!JL94q=x)U09&aex@710`jyFV@W^>w=Ns5@q# z^vWjwtofhlJHt22ajTY)duRKG)upZ%+oB6|s|&vOpM`iyz-PLLy%*!V?NojfO6<)c z#3J?`hJ@_LEp`1c5#PJ`>}+FOLrQj~Uz{E(_ppIi7ghT1a=Be^o@ zYhHM#b2ymBZ6ieK-Y8nM{$ka9{Bj=M(o3XmX%%*p9!F2-)g`fX;f=Z`X#PuCHjcFK zc)5L{)7w3Yez?K z(k1(?P)|rvMMZQ;2}7LG^)mk-5rq0x%(jE;%{_zdJjZ+&VE{IJ$CtnFZ!QprTcRlF zJO(aI-Q2se0nV}w?aSxqbz`^etzRB^$n!0+I*t#kD^LypPJGS$97`pdHB#M@lJ#4d zGd-ArnVp`NHpS2xBO)TAq%6|-Q%Pm{n<82ESjze{=o}Lxqp-N*m`V~G^9DjMA)KG# z`v@E9T$#m1lEO4^sF%Tni2v?bCU*D5xafF=FnhbX-%ZNOfbMHiQ3JHg?ewhR&pDej z6HPG5sj$yOUfFXGe-#mzp5rYY$M+!0`}Mg^2OjwEEoXr(XbZ-1Ea|(;8d6gpRUI8U zM@Npv#;Pakt*xzJLP8qb`X26~yXPb9yD_{gYlrpYMgE(6Oa^`IIq3T3GmFOh+S+8= zd~O!Q-`*4y6d2ZO)@WBosuL-G_^{{lB8$%{Patoh*g{c1Yy2SFd5oVjE{;-oF?T=v zrr+U4!`+q1{q@mHyqBQZx>?9&1D3u`adtnu-|Gi5ZM6A4mv3BoW-YLb zAN?5!K@FWv9fz*gZP=H74jZlq_OZg(H1lcS@)YGW`_aqQ^TCGfkgab#bNpT%npERs zB7ds#JF#kb{UOmf<`1w783&@ZnP7A!w3}DC(qhp0>RG1laiI$we4%)pdYL}!xmWF7 zcNx7w5?u@RbB%vyG`_)y@v0tXP$Ms*UI@8h`0HGW(AU{X$w0RPz3Ei-R7d$Eb|)YP zBm0M4DBh)|W$RU1?zKL*k!}boLV88D>el@-;wk9y>gtYHvc6a8ph>$9VOE?de14ay zmvk8pjR^A9EdSBH}_&8AtxU> z+Z^2Uzg~EW1p#TJHG6K8=z>=U43~Ufc7tCYN1h6r)PX~Wh^Ow~(0b^J@NrESAKhs` z5CRT=ezH(MxV=B8l?6Ps>wO#La9B%>WMIdS22A+VandPEYQ!t6aHs-e0=x*1hRWj z4YB8Ue)WZiIGD$7d7sl}wn9t(!2`<&$AF0FrfjNIz#|^p`*L8NVY+ymm`}%`tLzh1 zT+{)+n2{0B#2KANkX8&_cx=}tdUOUyY&rH->uxTz4m$EtY-KYT9u}JH z5t1k=zbDWza3_)uk)D71j**3J=O?GHhu{H*D-qb#f-1kND2ve3^ANscqXtGJ>h0?j z58ND#t+)IwiHe5qv~*$*CVIYdGnlTQojxn#k0cXgtF?`Xi|+uvDJw506>uq08V|X7 z*mYH z+ZNt*zEqG9FcREXBFXxlUQQc7FykgvRJ0Zb(g>bXDmq#+$i`7_x8-a3`1fz$b(jps z-d-9_gW>sFTDnfHPHG%YM?(koENy{`&Q+8W^mi zrS-wZg$n^Y@t^cJ7nPS*a4i7BuK8$MKXY}5gt)kP@gfYL%!MW-q^e%{btpbvbN7c2 zAD+H>W7o{=h7ZZ?#4Bd?mvvfQoxPT|K@swUd4$Hj2-U_fq7GS1BcppTe+x>EqmuR2 zLn$l!q_SO5R+rX?j!#HMr6eA>iyuv*(fJ-8QMAJ<8HT$qrB7L1trN!2mojvU0l&EL zx3pB&LhRfT-*W-Rd-{POc6 zM6Vnk-XFK>;_4ggsX_ z?tM`3==99Y#T z9p@XuN28$`LYW-Rn86H{cj>9A!(ve(S&3m09OXFsXw7ifr4RlutZ4XHSx0T|4UhV) zEVp-kG}b0vxlnD83T~@^hK4=~8m%(8t*+85|HEk#dbhvWh}E*FV6&M(r(k^%xqjUn z21NUURgH$zv&*R}_HWbEYTQoUAmJ~U{0A%|%Uzv1$6asy&hAG}^pWr|F^x`EI`29{ z=LPEKw*Dful=oJ*FX_B#Y9y!#nXU5hZ{CF_R?R1SUYvjr_78?fhWkv_Ye;|4ow>D zv3rDjCt{6cdlgYnYGG}SoTiuT_$eEr(`eV!7QR5xiw&`tzoLPrSI$rFjhYlO%SINHWF?UW^f)BrXoR6Yf zu$MtU*x|>Qywz|zI=VXd6a6@4_j{NQm=zVO@~rKW&G8ti!Bgi?6;^9;oq@?%r}OlA z-CJuLYerUApv5PhQ2p{z#wU1W@6Etyb9&ywaYcn^G^e9_?t2y!BFkrtuH20|AZwI^ z)z83~o)#)b$SkP+t8$W7*-z zqx~H$+yDkYcPFyY#(3txcDGy(AzSrFbk2c%&MKnXVZ=kDC?#(BxEyq#`=x3pjeQnw zs0XF^4t2)1VsEdc=Seogdc9e@a{s7#b!;qC5CaoCx2r0vW{9J=ub1C_jQ|hk7!cYf z(EIweX6+$=+*NwE*XqnfoVXtxMgrl4$(tJwJW8Rz zPvLEC3&Hnp>0wHC0xtd_?!{`S6IiQtNPW;-S<=KAa0xDxcoB7z?ZU>tX4^Hdh7K3h zI1fTpf}U4wRu*(74OGnJ_)MuGtz7l*R%ktZi~=2Ik%P_;x&0mk4 zdZcZ(+~)doadhuvR%fVC`$1B$Hc?Y~t#;+dj~^qyefyRNfF^10IM|7>*+&Tp zWK2v<*4}CvjWC1U2w=v3j6C}CCG?Yyo?OjB^a90JZS;&a_$0%XUPVPXJT{i@?b{&A zufp@tWqrTwbMG?uhpcbko?V+B(wR6s!ILG0Ao^Tfcl6xJ&~s)Tv!;q+OBH3lNpFTRI+@}kj~@qYRHz3Md*9V z-xt#ZZe3t*?k}il35l5@K@mCBA#3r5`giyH#EFJ>LIk1+l;5kBNb})!P0iQcaF$(c zfQ0ECHk9&SQXO^xV3(^y$5^gp7{=Sw((3BsU+dIw-+sHP-zcrB+R0afJ~PG(rY0n; z*sX_;HisYnMj^{-D+@ghSEeX5lai7-zcGm$fkGybo$sSuvV^>GF*#|xJ}hO^OfR#p zYy2Z@IG8-LnEV2g)jOrMwD?OL2Y-<=V5N+jGchxlI;y{gPa65u(qmg6EYw%WJ6s=L z+^V++ftEFqo@{>Hmq|WUjtzJgf( z!#|-u{|}EOPVgl_;{O>Fg({B0Knr>_4R9cZJn|8bPo>F;|G#=@uk9t?zgG$VFT_*a zy*YHDhh0l+9V(bAW{T#nr< zVq_3AGvoI6+cM&QC6o~!?zpq;ZIEuXWeRimYlaL{nVv_jF7GM2-|0BJC5!TOxep=` z#ia(P?En4TwtWHX{~?aLs*+Yqt6;edSgvBY%D8GCr0QH_)T;nH)GEsYX$|lkH&WVsI0CYx@ zK%&H^B)_aIQd?Ca>|y-=uju*coC3UUk?q34as;t}cQUvd0v}JmhrlWxb|Kgg1{OXu zX9$GV7D;seGDrvrgK-8d010U8e9LV!>mj5lFaN{3u?&=n8C0Am%6uRIV%vv=I@DV< zy-<>emB>8+{$j!ONEKaG`zvgq%{?O{3+il%Z(H>8f<_d|dN^dvB&Iya;0_~L%t!ya z{`7kyKfjYulz!(%MELP=hv0y!uCDxemhkP~ns`vquP-5CMsLx7D;vc1seH88r;Nl> z61gq7>G%J6vkXNM$bJgbvJ@npD@_Vn#OZ!SRwgDUse>#B0oHGSSgg9d|tl>Rt?Gv3NBIk`DL}*D#8)&3a@r@l-b%%DeAAg_pu#u z2f6U*dv;jUOB^i!sv~T~H`6i}Pd_COQu#RyRL$o6chNzx1$^ej8|Z9%ZP;0Y)H-G)pFxO`8XrXka6D+ejDD5!AL@4cDPX9IZ<-D8%7I+s>W*|>yrF%@=mDFVO(7LZN0OaPHMGPu0FCQKqHM`oMIXc$Nxd%chGE(_W znaIVjcQ}wWA^RJ!s3FdOpd`iJ9!C#N&t*guJp(OlL9eB|aHfIM81Yp(iz(ET*QWj*6wsLU&|O(w#?Gn@d1WPEJ1UXP{wsodx(O zuc&qYIj`en^$0uMN~}ZdvoV%C83_o+Q0Xa!`STX!)9|OSFSqe2__`~Ms>~KQ;jVih zqp(h+ht*w`bvfoP%hvNB?n${n7l@3j%>E?$8Z+fBBVEhAYjFDZ4>wt4@d^f42;>nZ zwW|gmi)wjkR_4kRVETS6iLwK_~tN zIkSi;fCEz1QSB>Om4C8!ezsXsZ6gK-GnHkifz_RF){HhbHyIfiK!#H~BS;=jGf_V6 zCxX69|0jqCic|d!q$?_LfTCu69Dg}ExdEV&>QK@kw0Tc` zCLj3`t#_J-mshu)U_EDx)>wc!a|J)aeZ|f`zT{l6>B#pY@%yx~m*aa3z)c@5xy18& z;z5FN_WScIAc-d5*z|xdyFb7?B1ENMKE%i57;9QoUEQUkIx;L8_TG+<; z5S_Ad=jOJy&G(JiCTR&-Syg`!YY$}$6jH9P+~7p;yxh_B?DYBZfWptM;e?sdbYAAs z=Bx9xhB7*R?{%-i7U12~~5?0CJpGt$mkkq%^y)KamqV0YwXZ(k)cy8K&R)2=eFq82ca z`rL^v`_p4l<3DpVSy4OV!EP`wLJa6>@gg7|;28TZnbrBkt0l>b8P+q5ChU%2NspN! zjxzE)8d=Tu>*+5g=#mkAKEJ+XiO33z#)X82IbcEru5fYrMn*8Pu?rif#Wgiwq^~R& zfOP$Cw|{OY8&t8|0I6wU@RLu*?CWhd)w{nNxI|F9S`XL&RswY6GFY4v{0qQ%Bh2Uh z?C`4dVu#f+ZiMS|>Ae(4zMWg6SlLlnrQhlYg;P@!`b!?;v#;Za`zY&d-w+PDwNkYFmdvADW4WAna0~ z$ko$R#>7=sIvDbwL;<-`;VjvBehiD&gql<3mHS;thkC3%cH|O^hqot1r@_ zPbrDVT2aCr*TPV^re~f~lJ-QJjo+2H^cH08ZIF~DZFDkJmNXpFa)4NR@U*Pm zE4!_%ZE5jsCF>k)u)9vdo}|ZDW1<1}h+#eO{U?Nb*e4#43yKRFftfc`!oGUhz|}9H z43oJ_B#*g@2+ zUz@Bv(1DF-AiK*~5Yll-9T_*cy0C9?;o4EzY@1*)6|P%sqpfq`RStJE%~muQcDUcP zGZ3t^JMvimy#yLhIb3vYDfSu4iXYU zS{LW#c79z^Krpy#JZf&nxq*&ZcO4UE2)O&$#1ND8SZ&IDf&9xnF{;=XI89`M$Oe#T z|IZOu(*G6W@;>mb`}a;X#M*ECn%}v=7yf8~7{@T7#HnpWu5b6G3Wr(eIq%=S!P!fi<&t2Nlm zO6AQG{|f5)9#%7Q-xCvqvD|-U1m*=S*v9n2eg0buPz0C-%i_%@`^y0m@4B3(Ea7{s zTl4WQHsNiiM-qmljjH;;9`t(ey^iGHyX#QEBft9P-v1w96kWc%*niL!0W9MG1{3{% z47C2LSE!d;UyA$(W_<*}!teVD8v8D*G%{l1*?m~U+#DmYKBw+O>Eqb+%KX}V1%Yg+ zl5(my1Y5Yb^5_UNqa6~PHz_Fv@%Ur1P@LtpAMI%mV7f0;=~HYV2lyHJRcEm}hvk}B z^+lYixtk5fzwE`GcNC>ElvtmawL=H3q&{!~xjkaNM>hM(+MX=skJ`;AAbVz<9Rt-S zk6#J@pkW3RpiKxIQwD=W`qp!5O2S*_HGNA)fm(x-2BOYvL@fXymRX3gf%@K5t`krn z+W+=O&PU&Wy*Fe(I8H=iC$63G7xQI`JFsw;vv*#8`(zon-fSXU)9)9sibvXW+=pJ$ zu)8;M#ZN5140VI2`l1plTaCY7Uwc}`dv$bZ^k^Z8Wapo#Yu{Iu=9rc2z!N+yo{?~i zYy~5gr)Fl`pgV%KBX=GbCXUDD@eXNnYHDVFfZDEpVg6R1ES)E20y^Re18w>z^o~I% z!-c%Rh_If$Dj#&q%gcKq?8OCS<);frlzvd3R@rQkok>ow7y2!ZxoNN^(`)1;coj`p zdehg8j9;SY)4c)js~GRlW>yD4@w~PKRPb^2P{>`8z}h!XihFB(-{TgAvYy8|VU+Pq zfx1XOt0J~z=*sM9gmEj~A+2a&U|_>VAR;$((BDj&Eyv_oyvW0aaSq-^Hff_ zOZm@d^F|XF{@aP_iG?+N*3qk8gbTa8WdHul{oHMrvo_lC`%RLgoIn&EwT(}HqIz~my|2X#nqONk{fmbOaZ{6Otjc%2 zZM(??p4S-0%Mz|CDo@8Y(KWwbQv!AJKJ$7Nb@f?uB9F)UHVtTJQZ$AVltfC=4J(mx zs<7-oe}3zP=|rhO3rtZ!M{u|b$==%9B3@!+W20kXiLUOt!(!E?TUsw_?hK=UjdEJL zMgjy8m}EK88UWKk8-ZP4C)klcGYN%}qE(rtH*+77Ao-`S_^oC`tK~EvoBY!AH%8|j zF)3+jocE@bUzfh`6b3f7$wYTxhUlS?AKy*Fppe59R|8w+zw*hkU1(HfWO!sGvMx!F zp3hl-Qqs~Ymk$W!8q0x3YcnwJ$g1^i-?WPM;zk~? zozC%8V-YTJYwhrys@3@B1FH@IzHlh`;*XY^n_D4AU~nT=gtRNWUSshCoUDkAE~>F#fw9)j{8=W~{*58pjRxLa(5pE6c{N#)tIvEDrw zFX5)Ty3YU`%Hc2DCco5Rm2lUS&hDXmsjjBBrGhl8S!0NFA}WFwaDt^9Nk8j%IMe93 zF5#M!ynj7s;4AHuEus(I9y#a&txd+UnQRSx#S!*rAfI#C8exY_C%0Zs%8~LpQm3Y- zPNJp#Bd^v~*$GB?8ucE4qWmN6l!tqgZVYxNhn#ex89?`Xddw;C!r;>w^T-8{oFsnP%V;IDUwg^EmBCI24opE zo)_lCESlXrqv=;>4cFaDqwP=IlQVql5Yx7cxCp~!zp`Z52j8&@cQ zw8!zauQY9BzN)VCi}KA^Xw351tyIXT3TahVR2Ah`QTDEd9#n6RRJ%8miRA2I!GJ|> z^y@GAxO75GN$A9SSLUPF0hJ9v{4(;LQT5V}1;Bxg+Ld0(7Vqf1;eV$kPTkQe!`8e% z0SkZ{xUiyjctA4SfASR!nMEH*a;~rPAnt5(gq_iS)wfxoM}RVbyL=W@gPX!({eAAb z|8eCqq^0wZNV5B=@j0`~t*=#4<9_viu8`RQQZMcVDY2Z|8U5(1C(KlZ{cYC4qj~g5 zvC}D%%+ziB=5TZH1F(#3*xg(Ul0QEh_x1fxL7>KT_}Lp_VZBC8mPf%?1c{awT)pj^ zg~NW_eCM-289-ZSF4$WF9?!bEx6hmDs2>3)7d`|em)w>nW(fpwxyXAevDVRnBvzgI zI)bHu#77XkGN&;Fs|!LpkEX48O*Uf9=s8{8j0+l5(zy^RHxU zg&`$@Dzc^SMlO_wO&$Z|ms!3-6hHwW1$x!n#|Vgf%4G4Gn3w~r_zPJ8FV2zdQafy)&4nW7JjP6@s1A=l7#q()v&=U;|x&voS$fH|W4O=}8Sa!mHErW{x z&swrplmSR-Q1nB6BoWw@($>~a6RF>0iD2Djw*ec_m)?v4bP#u2={xL?<2|4 zMEifKS3KsG?_$zfvrBf5tMf}P3Cf@CGQh7_ofj;ay6r-Gbp39=0ba3(NYsXQW~Lp! z7V;G@TYZR=tpc0GaVx9&W`y0dUAO!D-k3KERmGO>V22NPbf3VvQFuy(u|{>X9kXZv z((>Q+OApS*?b}};bhq3Qk#Mv9HHUo$cXOwa?yr7O$Xv1ZXssG2|F~3k1q0;X;7+=9 zah!Od(1<(qCPoAfy;Cdy=}zSMD$F466mekS{V>|TL*@tP>8sgAq?VQAoY_=EZZS8J z&u<#%3@qRXY!WuLWh(p^903dU7Vfv4EczWDh{-}Z*&x(4wqo~H<;eTc&))0oYc;>U zH~sG@u#1kp1rfhQdI6cwhPyvJK>G#3uw4iV`8f=_w~XS|XM155zvu7osrwS>SNxhk zuUMSKyTZY!+d(CSsp1A&=%M6;A3B18cff#BLzb(vRiq~c;jamK5(|CD$?rg5db^r! zQks{|iqmTiV@JPR=vD42Ut`t)0qM|~A0)6^(Ug2+yjJaZ90uFV1j``=B4kCKvSnTM zts52X0K#jBKH8+!j)W9#;3m7YEs|*UA=?NJ^jH(n?R<4g3LF=0AL5(fL;zuXW@17a zkk&W}Wa5zXME`92tX`#CN-5|jZ@|XIrABo!Rg4e1y}i9_D3nWXB26J-*Y6PJ<%Pat zMU?{`8%N^>$lN!AycB-3uf?xkh32D+1tX{YMrr`YH>V{_isU-cE;n(C$19{kPAMxLg5OdM~IL`IR_A8^Tk5WqueaxOZ^V#l1m1;>9CVzKbc>@9Zg`E8fVg)0;bZg9uGj5 zG8E~7Rs%$L7!2kkd}$r1(IPKjd&P$gfb|mxJ&~ZRA1k1VGpIAzw{O zjo*6&BeuC7KsVzNuW@)U(Ze}K1Ar0Ogdncn*-}$YhY+ilh<9KO?ps{3i^1z7tD%GO z<<-==Y+|4q9CcMw_8V3!V`@r^@&xD9>V7m?6#ztn9SQ%L_CbzymH??2ztrx2!jsI- z#x|S$yA0B`MwzEktzYTF1cI1#e$vA&C_Xv$er*#lSzfIyT7ti!9{gBX01k<{9Bu<3 zR{%ZFx`~_H4#h)AM}c6|s!Fa**dNjUsont<`a8T%2$sb;Z`(=v4{RYx0hB_^lNEJy16Qa;*!srEhYYURWf5TW0jrqaUL-MG#fhqL!Y;XkmR<2xEQu?MOSD@=gd z#-orECb5g+;9P+D+rn0_$VCp5C?Wq-Ck>qtf?2y*+@Srp zus;Z?CCmV~@@{GQe^md9q;2hY*#BLRMGa=Gilpaz_1i(@fBt9H^LoJ|vFjmBRhMXd zttXgN$b&=J1bwO*acb`__usn*aMrb&*~S*rW@m*f|8L!rzIm%|;5UqbGb^*bs zf}!OWnKNN%P~rJPrOU~}sG0t#zxhMZlcc>0w>5j!#5#q99U9 zMa6XS%&fYqihcw?Z3>CL=E8n$gaIsYBb(PDs|;;1T%S!t`U4tB_9E5`)i7XO)K*GCV4QhUINPA(s*zrmq|LI1nvzEr3xV12h@{{SP32 zqrOlTEse3CiOe&ADsYeaOK9l+CZG#Nq6UP$*-b81ONo{JQ6wkhqobWAjRde86S?Vp ztwF7(LoFb<0<-0ZmU_{+|3xM5LZeMG89)m_{2ng%-n=P{zJpq9+1*E55mp)YHI3KE zw@CQIrZ(dUm)d#1s;B^^t&6{tZ}g!jrZ63Yj_gbW3d6|?g!#cfgacmp^lpR8C-=S5ZV&Cxqc&GnBVI^kVrmsb-^1!a{42_ zpYdz$IDKv$BO@cVGesR%gyP~?7Q}p%_B;2Z%Cinm+n@z2<;X7P%X;cI>2_&@g~f6$ zBwrN2!M2U!pmS@HA3q){DAdNz$2MtN#BWmonAKr z7z_e*2^%ize@Dy?R}_F6Pi}55pnXPijP1`GkBg25NMwqDni>uX$v%&R%B!kDdnEWR z37pOEEDA#Ohq>>_iR+|f&ituYP0>|%yJ6SCFI6im%-_E|E$v_n+e(ZM9dPS(ahJK| zRWCqWzb9SE=6!#1VtI7~II+`mLWdnW{`&0__4;1%u=lCBWd@w)SrA(8J6iuXrAF9} z49NDRQw}yWhcfYQ8zPh>*ugB{gtOgWy&Ac0rMG%BOe^oYro8`rWvw8 zknqSWu@|m)Kwq4zP2u}OZsR(l_PX$+Md4IJ&O@L;Sf|HXIC>jOhudD(zYZT<=9~4`QWV`aoc0;%Xw+NgC)L>+@d2#G3_R{%` z!_Rg3i#k+19Xd1Tz4&J?Z{u0qAP~jXj$(+yQc_-kz9l5+y=%6cN}iH%L}rcJKF)3B zb~{IZIk+mbk8H@pJt`>S`WtGEaR zG13hXj6s*c=7vhwD<;mCuJGmb4-L)wHY_^V8E z3GRNLSQv$Iq z{$W(B);MIN63YkhA4==p(e&ah`K6W6P%oy8?dK#UlkLsrG0rxdS65dQ!d`zir&D;( zFR;TSBJ7=0Q&KFmykIJ>>wR$yfSSA|?fdtF@q?Li5^w178#cDs-d>4rBDc;4JgcVB z6t^Tx?SZ8_Mn=Z{FPMZaM@>sOnEe3jO#|Q50$hKM#ku>8Wscy*?-#aQ*P=}n0EV_o zAsdbtwWHaHiWAyNo(GDOv-^G0BD$7;Xb@>j9KN>2M*HF>u*I`v7Q-QWX*e`)IbxVI zEA&j`?UoYpW-J67fzW3Unws=jk3e|nS^YgVXu#-J626-L&}p?ZcAKva)>E*vW8KAT zG8Daj_W|YZn?p09HQvsB{_V7M|5}CPGs@#OW%`b@%j#>hV&B&G>(ZpOH0__6ia?;# zs^3ZEfhxf^@J;<~xFBLxc?G@2=D1yNcjK_tpa)osd3n7vIJ8af6i>ejYa5Jd#n$(J z@PTPPf1WW>EGr|me*oqiVPs<4>IaWAK6)N2F?Ofd)nxK=yE{7|g85-yUu(C-BV+ex zey7W9EMsqqldBrk9u~7>S5U05vRiu`I$9M^38k`@+uzX?b@D7O`n-m^- zWBumtjm#|^!IaB5Yjaq08*^Ao3OY;5d+52XJ*aeyfJ zKE&_>6+JhrM)C%oBE4#TM|%qT$n+}e>I#=kMck9rp&Fw;A+K=F*3X4rb;2^gGB0GW zD(W{Fn9HdP7@}HA7_Jw~Ny%0dDh?^~#wfpZHhiBcpZl973U_J}IM4ffh;S42M|dA- z%mAgDjT1g?klV@2-cIB{L;xl0ubl67iJDXKN8Dx;aWiNW=|-dD{ewq6##?4^jlmTh zok>)M|GTWLXuKg_dCus^;2?@Z;sQGP5;W=i_nO^BK$VDsb4sRs-i>l}JlEx0rJM`S zpjXT&(U_!{x3pe-G^Pk_PUO6fCRcRJtdHtbLJE%^89+(X)6s>hRpUD}r6Qe}5$EH1_&LLOeFH zrW`3JhXgQ^Zz_J)YhOYk)oOqYzO*e2`3$g-UKp`odz3$HlRF#Q>4}dw>g|@|eu83c zX~`hnAMz!nl?^pI{7@W-^JixkPKPO@CgfB;r-1^dLj(ZR6cH6=qq3k4?AXjd#esNw zIH1@%6k9zJ1N8OfBgae4O78fiZ@(P)A7Sk*3J}uC=M)r_9-RXz?u)mk@1u^Q$+$nR z`pNdnIwLwfFQ!!ovrThEhr2hk4d*XTPUf-&kB!W?Vd>xiS+=NG)$>EP{>nEp`@#81EW#4~g3F~OJel|;9IlgS1oBUogq1=05vqwlM>8c?7#!av@ zU$5AM>S1K_=VYFCVN@|+e>!f1XD@Rd5bHwshxJ%3X+kad?fapmx!i>r79VIwRKzXc z6LcCIGqADt7d)vwRl+X=J$?FA=zJBwJU6%Jds0%p?d^r0`olBG4a&j^?orW;VwA^) zN$>2>JJzhYzkl_CdpHaO`tzxbDix|`xq3S91g)nTHa0d4udMacxkpUAsoJ>xLGvO; z$T!MJv&dhXu^ca~M!gFy#~Q4rIuzZjCy!P-(<^nF?=J5M9?O^ak?IfWoiMxphmZc1 z`14gR5r|*c%^2MP$~c`5Aoj~lI z%-DlLRe#?$9mroGN{C&1OCDhMuCBzM0wW`|_@q5fLrsl zTHvqnvZ=oTwt5A>Z)KM5Jlq($*+^%9@7?Ns{IK%!Pl8wV{)){PH&t9{Q}^TiS}fOK z2b9q*yIJ1v6&1~aU1NZ_A?w#Kd0U=zW>jEHV&j~Clw0itz~tWCY{o6LIKAdc$BpXW znBrh$i~xj4(oB!@DSD(HwY{U+ z1PLoY`##I_xMdR5E1#(J7YQ^rlNpUys@)6m3DGx*Zh(eVrro~h=|^zK_2UAuN;+yox6QsMKKZ3A@@O4AJg1CI--PXiq;sAR3>?Q*VxAMG4c`vBnX z(ugJj>Ea+`umf*@Cc4gmhbpuve=<9J|C4bVVYsCjf zPz5SNb!1CBVBF=w%0Q96p&>I_D%SR%HM5ytG5af^_(oc2-J0qdyYL?_K#JkUbFwea zoG$96x#f>gIy*Hf#B%&0FLIJ_&yw2QlH0_K+VnPQ%#1a|OQ}7{Bvi8x9P&2QjO4oqU7j-Pk!Qg)yB64 z4AWt(aD@Hyzq8;Pm<4eR2~E~6up+7OKIb*ohn$`@Nnl`<0kudvV&6rL8pvbrv7!0X zmU=PH73`ERdRxq1jwTKI@m>K*>G;~9MbUWL-hdz-UC5Bb9NFBij)! zbnrhY#509@P0oLD3R#x_03rW%Mfm>!NgM$_|C`l(GXexnm0b+L?F}!!Y;x0ux$V7$IeVywC@Eg5ZQsZJr zvBTeA6RAOH;^=}PW71~nvbw#O&S@a-C*fn(oS!GsS#)Q8`0xrOuRDGj@LK(&e0FVd ziQ|9%b09)fhLTfbGxxx>Q-09Cc0TB{*D>U9pr8x6lVkM8A=@O5R{=p<6Hx-$pmWfz zQ`<{ajd<^wBdq1m6V!TS59uVfjtC!$-FVQBoV8L$oFp>2=YHFemisQU*e(iMS{npOQ&2UbSXeo)^l5zn>?pJOlL^9IYk zc5c`BAA>jyu(X+(r7xa6(+|bB{%&(eG4Ncl&iDO}{#6<4vcP(j8hH9P|3N3t>{X-9 zvoVV^Scey|-UL`LoUD5=w?mgoSpth72EbJrP=*WZEUJ?;Qrk@7nt<)PaUNuAUP;Q6 zfk_YOW1T~6AFRTC1U@CK$r-AB|38xw?F{%NYG34D{L&0T?#=%#8KFub>puyx3q!6x zG>j+68Or1Fxw`yY`+aaS1%mjPw6C~~kK65B=@}Z#m{(lHJE6a%)?-t94El;^-#xZk zXgq;(lBijPn@02N@cuX0bm z?ELUuQi?`2SK{qn!a(_;@F(d(D^KV@muy4M6RU;u)t7oi`{>F?YhD7DxipzmvBVgjjufVeinz-qI*S`U@Xhp?~j>qLiUFbmy`G|-KURc6LB1=a5;7Q^e?b)L%VCE3mpFM z=`w%CwJaQe?~p(jWC06-f+pEIim{)^0;p;LY$m4Q@h;ov9yhV zxiY$Z%gbzx_qjs^s4@b^oyvK>Ev zw%V1+NSu3WcI_HaKTaE0ZgN4#@faOmE&?PV<;47!yXOy?HZ|gvn);sWFa_ zOQU2M$d$hP)%20wl3ite37+fUMFviEibvumn}Tp^4`=Be%lR(QyW|$N#|u60ay$td ziA{!o;|rC3&j9W8IEC&%OVyFvg#`le49iIp|R>>$hwQ z0xI3DzS*vJ3IN26e+mHIx;kEO?%AFKG-|ATm#&nsx>8&dFiulRj1y3-`fM4bU2u1Q znFsBS$dGL0S2k;MQ=OjeUZ|Gnb9UXMA}Q0H{O{l~L6QODLUG+}&{5yOVCP3V*gY~c zGoku%V_VxS>(l+t*5g#>(A^5>mxDjDf^GcSYyjNE#l;2e1};lPuCIrOhx;c0^d+;! z1L)8^6(RJcfLHt9xi^GaFa;6si;1i2ifR9yZm=yPIio=~!Sh2mnfxFq_kw%SM=r)3 z!3)>Vp8YO%B93&$)YqH`rx6ttCRpd+W`?dips^Y@yKQwx=ko0fX9G=n2e@x+tk5PD z3+lYM$#|iH<-!HEz6v9geZt|(ZkcOm+(&?pc>XZt^8WXWuOD@P?D#2(C4{I0#t$E} z@a5yYQkIRNMh__JjJJ&9WUMT^3W|!_mj4uNj65jutNjTmdyK$+;jDy&7T|Qwx&sn> zSJ2j)(VFB>{hE%Fbo3}RHZ2gj`Cg?^O*pFZsbj}C>_aWY=IadNtT>E7myQHT9N@h` zqNa18q|$NX+c13qOfIzk^xDW|e*S!Q^LELg0d1f+e)^D) zZ=fuWkpHnpYspxV@MmLhQR_Iwb+~iwf8GX#Q6~=c_fPH&!WV=AUP=pbb8}Cs>OUO~ zbgjHAsN#E--k_mLJ>=;q=a%rsA{X&;NYs~-QDcN3QHsXqpMp>=JKf~_ZvVy-G^vi= zL&0sRvGp;1Sl8hMt(bbqMq=BC4<{}kZug}gUQSF*>|OHJ();@3hrZiLMTh%T0`bSe zIp}ZHk|nWAaYqo*_AxhC_H{>OY%H^J2wK`hJ@TF5nP^-N^{jcj3B}vL6(lo|bDw5n zVxoe8;4hcrj?~dj`{|Lh<~{%Ul|SHDa(XB3EJ22WB3xnrR^LmS_13umDME?TpU#2| z|EX66a{te7gj34=QwEwcyAJ)W5qztdQiOKpvhR+9fPVrdZ zWiqaXO=lEF3%z*rhC2J#+1kU6jSYo9uzwuQBnZ%$pS0OE)p*Z9jgIQ^GuKT`BS9(o zq1VX=gT)TndI{g&$vU~EBbRcL$CkxlgbonHA-)uHYqDQ~iAqTw2ZUpVo@-H<5yvMn zqTOOd(oIwPJFXNEOOk)Ai4bk7Cmj?U`&`%7h5Lzav@IU@6yKAlc9yVgF)-iv#q+w zTI^(C>|?1CxIqVl0#B+62zb^TJ$zJrz8rlZ&(HFNRY)JP8JvTz#=!DH|4&th?2l-# zK3lTq;J7~y8yM)f!B^bD`#t%d-mBiGWQF0-|*dZNN<=^f!Vdv z1H4;x49kjQ?0TJ?ys#~L6)XW5)k9N?GxW_5ENb@6)@KLFo$Ps>>Cc@786&CQH;Ve= zA3B%G`PIhmt2{6>m5@t_#kGA`=8S4DT03J(jXAj*(?+UkRcgHXJmyZTW!&dD(STKV#GLGi3b=PpX9h5A=q^z7g^4g_E+a~{k z@BUrP0Bz)xsAfwHEgVMMJxC|^80GBgsmDG@0W*3b_%`JA^y&}RbmdY zj6YKeCQvW2DM-vUo@3a91(B`56;9NkSc1{#Ifz+^H9QuH^67wIziv}b92*-m7?r;9 zhr4fLA|A-|0Q+AUg+fg#vGT{!uC1-%c6M~G_nt;tSqT9|l2$}SBnc=aIm0C-CEb$* z*x4ay(!~22HUoy7$a<%H z`5>_L(+@g03cqC(6=;0ceUC&+`7r9qBc1;8#S77|>%d~D9e@Bq{Z~hxib(B?y@s!? zVU|B26AejoQu~-!9k4$-$f~gnbW3NlYG_f%{Z}hn3pfH&+fMDx_Hzu9q;{hdyS#@a zExW6&mrmJ_HA$taMs099e(1Jjg~f@Sublg=D1TD!5~GPE^Qv|p1}#2Gf-|$&P8>h6vH#lm3P7Zd;$g&sUG(isJL5X^omEsd6iB5 zma1pDYH}O8`~D>{6%~F}|5clSaX(%?u>De#@6dPw$e_ zN#tNHJ)+fEDGqzb3@^xfH7fH9Gd=BsKa5Q1)i0f1j~wQhp&^O8nRxY{u}&#Y>voZ$)y~O=ZB-@i z-GYY00@Gb|&KKA{2l8pBpt`;?df#&v=yg*-fp+*kPH^8Ie3l)es>Ub=r>4D+Eer(> zN2xG#8{H8p=?n0O09CMNHwF8>^>IN6XnT=1R({P#dkHoTAqD~A*6hN<$%_{`OdK3f z@Mx@-+SaW7kc^6W5_+%HrSFsSsIWk5$&AVCVd>|8W2Zlxdrw}adS=$U#^Y+XM`2%T z9*|qJw(aL<79{Z%cQ3@ANh@#LzDMqOE$%&+XwI0xLQB=RvSVps0kGVy@{NE!#Ngl{ zRjL1ziz!`D7^q$OR8Is+&amAl9^Uh8NHj`S`Zd2pY+?&*Y3fOI-?&0fT>-|`hVPVE z6V&U3rO{u7^&W2G#uee=#98y-C4(!<5lxK%0ika^^ZMH7y029swc0%s>4I|j{5V;l zKNC#S`5TzI5`v$b3_BUl^gOOqwEtcB&iS)y8-J}XHO(DWs_p^0s42f$pz?RLz+ z9Z~Gs zo5olwMX~< z=&N!(PIs8<^9X5r+RlG>)#A8hr`ZOZX=+rjp2#b-Pj*8_G`N2cA_Y3HjtB48bpH|{ zG-S*}E9dmnjGg)-_JIc+vrk#j}0wR}9!bzZU;enJCYN9aa|r|A}(>8hlyeiYm0Yb5A!=)50}qEJX5U*#K8 z@?ZnR{-2~JHUAl;`{OJaW-)1LHX)$_jsQX@qvSCSv)!#O(f&=g`*`+DU%V*DmfmN` z9%pWDiY_Sx56zIso6aJjPznYLcw^g|58#`>X#gGUZ+c}uB29;g$|$R5lmAdr!39W9GwvPTB|BnCMK>1I?K%I5!|7UIyl`$eIDsGT0ppEh^*{d}c#-N8 z<=4;y|9EnFhQGaUjTf@*8Mi6JKe-Ohj`j-8TegPX#7S^rug(S&n;m$@^3E6YqPuO7 z4JZw$6$_RGeSDU+ld!n90=69#{vHmY5*ygQ57?vi8h zQ!Q3^d1q>U22?4KUmhV=<`;zj5`Q;DO)fYcvM` z2TyXJ_&V&E!^G5WJNtIMffxcD<)nbw-kIEKPbBhNj(b1>xhd~^H*HdNlmr&*OC^EV z@yIze5r|{$d$Ucqe%0r#zw3NwKEC7;cJS@~ys23g`C?beW64jHi~EPzTM)^sThJ7P zsGr^boS@z;gb7_>59bA;s5)Vmvzpf48_x~n0h;OAhd7$Bp9$)As}XN1l>`>9PXa_KJ_&8p$cR5 zeJXio3;PV--GekooK`2hB1vyZM{oH~C-N>3-c(X`6&Zb3en`#h$++s_cX2TqYGvhn z%rs}l+DF^2d-8jN_Wlf;U+wtOcuw3IrJmGz&co1DR`8+@q@77=X>n`|KQ*V~6!p7h zA7ZVcQidkt<{W+Fcoe*`@&^_uQI12cEPUZ<@0>XJ5-Fk2dFt^?w~jyg*5*gp-^$5R z3XJ5m7S{>u5r%%N+JTw8cl7KtDj7XgUZiK8R-0^U#B!XqNR2=?R*Au9P+$WHk;lP$D&J03lP!f@5$FXUVUc)WWy|jTKcXMkBr(uW9V-t>Fqy)q(R>_dUJO-gN zuluVe@7#LbWslmFv@WhMWkXN9VgWIHIK>myQ9DAo;PIXPO;X}x?<#Wk_s?8{mmdl$ zJw&CPwj3dl2)n!+{dx(?KYxu}gby)*7bwQJQ#4Lx6d|o--emADu^p?G*k^9A}hUBKT9zWFlzy0MKUVcaFf+)xUfjEc)N>vSD1qol( zqbb0l`gPYTPN6=ta|Uj8VGLg3%u&DbO(1Gl=%GRcc+HTVYRPpZ&L`;-3JUY1Ta7Kw zXS`WR9u%kd`sCSAL3IWla8P~dc(EYO$E=!EobP(`%Ifjx82Tj_z7Gep;^_B?N;L8^ z3>nG=I_o5w>e;5r9X6Cdo*IARU;$eyD?2)`Oq)64yL8pc$|XF3jh!P$$GwPQbfR-{ zHxR_mM?GT%6&Ds(ygPoB*&N9}p-CcPOJ+oV)5G1*@*0Gr!~GsEe|!1SC6EQ&xPCnh zMEEX~kBCOMRT+(o;E&RVf|+DN+6!QJ~OHIRzXpcQ`O@3WMTD?uR z=Ae@C7m2CWZH3-YI(CqLPh^ztn60AM{9|K&i?KB#X=$jS;=Jmsx93vRtk1v*2ifpE zECx)!8sO2qQWj1XUO0Y71~Fo33YR(I>UB9^`uGN@=1w-zRcE45%oI&)SNQ`fyS6_! zZ9r~4pX(?=Qh;zc)Do`&^Zg>KgGwZfj)ni!&$Fy(==!~Tl4A=QyfASc;9eOL8cI=< zdotA&@5hTIY-J2Los54T`-d-TFK4=$rX#KN_JNvp&{ULq5gR~uOg}WtnM7o}6K{&m z&a~c`6-T1?3J8ZYz_#6K>iyYB*X&<5`C6Y9_=72t)YX#QP$SQ(-f~o#LZ5)4+2>+3 zR6fj{$0Yj_0IGY;V0-`{+Y`_vuz`#L4poczZzhWTaWM%Ayy-oioj#8u#{TS@cjF|V zh{U8tmxx{_;b)j%Ofb;lSG`9YSHR5!5C`n9E-JkTSK~*gVqlFy>^v~_y2zI31U@hE zYW~%d+8Q@;Z5NkwkPX25&z?Wu`aP1mbmSHkc0m=rs>56VY|2OC_V1M;!b8{1ju^nXl-_@(u3}>6-X+D~~+fc;-JpN&rpSYFvx#f=> zIPt=}mCtJJ#SIag_0#P~D}tMc1DHwXgt>hZ#lWrd>Gu5yw0&+(H%j`OZYxWzAc!1$ zo#lX+#uMFa%{#Z$*=Hl_=Km)7!pqfp(3Ximx6PWim$kL<(f(pwGAIkOhz_B!L}s*F zQyphKuYWUzrtISZn1nxrF$mi}osF~<=7`dxR02cn0Z~7cyiJE}AHpU~o^<>sgnk!> zKdG*u?R|zO(bm-IK~t(et6!H;XmR*acLbm@(dexX@eD5_+{zil*h#ewS>e%78nm={h z!T5Bv4eUv|nS0~>JO<*qL%xl3=BL?6M>nY73-*OR;SB!4rfUQeSpEf{sm16H?fx5O zdh!0h1(vW%^DyuLi$eFR+`NMvasWZ6mtFT^4TE1dj$1zM<5N2mGlb9q#a_q>@Pf6D#6n?N)hL!v*z$uB3}$~C?S9ar@)l(5xx zN1DW3y$abBLDlhQ#gsp_|6Ygl=sLKo{%a#`#b^?km7@8+^k$=&TmAV^!5TOKNt3T-L z6~>kYZqmT6HCNo4zlOaqahKxus0nz~#SA6tN#G+i8j{8MH{zTcmx{@d_R`~5|9&X{ zMI=?i@ZJQ^GxXshUot8-bO+`xr((GB6q61zzZ7VA^q@h<9j1A<3&6ECpn3!dpQj>w zfwzDS;AlRJyqrvAy)F0`mVKt@wyRiV2;(zYcY#IJ{=o?Ch}9_OUjHuV z#B(DEfJd^=>Ei${UhSV*TgkxVqlS2@*0&Z;%T1k`_lr(P7XFRvfS zxD0dqvc7yd23`+PP#?>z6_lWwfz^MVl`g1omuQ#XBo!OmQia`^j!i01V$zRVMe?%Dy}n&Y;Opa^mBDiGvA5sQ^ZmOGP*!{S@hNam9tAUNYZq#E>+Z_Q zS7)CkA3tARP3cf2&A*w$>WQr6SCuXI-Zr80y4Xc$ ze9}r{M-Y=Y%O3-KFTgjQnQnUyGHVF(_4UmxE@lO&G(Z|@+pU5U9=N))3ksgU415ZB z))f^L!r|5dHPduqb#*HE{e8xg2Ob_(7RH{3yFW8v89Bg`9-w?f)t(~r-D#3zl#Sp> z2lsgsef@`bz7;`U4#6xa@G=-bmETI04x&?M3UHraCh=}h}Z zUsJ@LI^R4TfA+6M_N#w(w{TOOkZ!!-xmrUM|0uUg8Y{qo!?z}av3@SOpFd)p#w)2?CgXbD?Smc5_GF$=ZHS-Z6RJFA>xpX`y23Yhb4ZvKq_x zgWOJ_R_v95T#Y^Pi;s812UKunjx!sU4Ejtv?Y8PwsQRL z9yya4du+_qP=&IEbS;2uEDZr`#qi9n>Xj)50Er}wB_ z_W^cI0f}pC_g=s8cqCt+E8{zd@t(gZM1$DU@x#caGZW{(TvB-%ZV%m#rjxpDoO3J9%C;Fj(mb(tk1oI@(rw+WjRXI_wI~ z9bR=VUTIQHm80xk2|gvHNF*YNLrDEGJqydRd8;ph`RrP?ilgj2t_PZNDRMk?Y{=*C zDV9v>>5~hpT@Kze#6bxv)!Gcp!Q6X9?`=+v@0$^^uV4^v@x%t)- z9!nx7Y!g(8cKBzq5IET(vn=l#J&a^Lpvf$Pc(WOk+~Tvp?b5NJ#z#_P$Bg)(zK-QM zY~*sZVKoDCc@nps938);c+@dKxHeumeGdk7*jpG9g$o289?ggE-}4JZAKIq_$&qc) z&6}_8gPpTS7L~<8&#I|Y!RqWx&Chr``P>=C#@c-Sl?N)`1LuCA@*UwUN3q&)Mwz>6 za+TY;@{(-@f7)#@b)3V)d;7I8@J!uXwf|BXp+$W9E*5bk5n_b z^Q7n9;1C;KTthzn*5ex`gQ|v|z;h?mTs7Sx!-w3iFeP8Q&ZQa<#B29SZRrc_!iBhU zw$bq-Ctzc!?L0r2QbHZjJ>#q9Mv41RqNMMo(QCc3HIv(=vqN+818sZuemDo)WgH|N z;>EPQ(#g&~7XQ)PeAF<3->qo<&iUU)$5OMZL~8n}k19V<@5qRRslShpPn1IL^gOE_ zm~N5z4-5>Rv%j%o0SEj%impGj0}QX0t_&E45PkE+*t5~us>+H<{Km|9)uC^$-f}+? zEHUbpr?*U>eEU`>2M6UHa6C!;+UWRbF|b4c2GLnRg8GaUrvOKsy;Q77uTbjVhrX|J-Q(CJ?JF? zLCy#uo&&`fIeA5UFGFTlew5GKK{thy%mezD;0*pzZ(U3t3PHt2q3I2zl#vY=B>G>;5ey7U2= zqkQ_79(#TqE%G4wHTLmnB4Z<+nNrWo;Z7!p18g;cIpw1_Z0XMy#x#^fQo~W?zBqMMs5|Mamlq^ zJmAsTa9LL(t8IwGcFpTPvYn-cqLXG?N$W1HIU+Lf85(e&h&X$IV74$>GN;=N2(8xn zt)!wr$?q}RRiFpNcNa`;9^u*d*XyyD@)T-a@dRO_UC?HP`&}=3)aSxRqq^e&rWd;m zL|ycIgayKAOElX|6tDH<5$pf&0*7&6aBJBBd(hi6XX$w*B;4M^pn)^&oUe+~wp$?Q zaG_D=0KK0T;mMpGz@P{M+D+DMStX{|0TYkJ!OpJ>VkEGkM&1iJ5I1}qwz>H*mQR)z z1b8uVaXLV{1I$9hP!{VgZ1Z9Xv1?^S7GaaPC~_uE7R%0o3lT zka#B@@QIGt08TyW+|3K^B1mTFNOKqY{Lax&_2LCN{FCJ6<$eW5(#YeZV+Z=nZ7BiKiu}V;(v)5y3 z3C8@f9Y|}q&Dd%f{HlP8oikMSp#TfBj?ODm?gUt8ngLVmPhjf>()#!B-@TmkZ86l- zAO*H4RDh6(g_ZSDNVNqeQ2@iM`afG)&2)6TGWMeL2B6`9&>NI|LBS|eevV30{quwM z7kBR`T<`1&xWpN4W&UkouAqE+bix!~zX=Yx$@=A3{8>6eTjRr-fps!jYICQzazjz;qzZN};$KXy=830Uq*rlb}TKE9_S2s{M_ zNmfJPr|7cY|3G%H5rFg~iq$1V_6cd3R|HRJ4^h=cJ^a?w8U5I$NleMjrJ1`)Y@q7R zF*>A%iZ95$XR&-vswp?G=;<(|O@$exO?CDp+Y-0)K*o0bH+jLkYDrokc&$?5Twr$bI`V z=%v>|EeP9y1JAREVe%T5JQmS6I0gt0B|`TtX>R}Ugogs>9M-0?dePzJ%%yyCRD;#C|7TaF9k371!5Q*KL4LrP$u;zF%w! zanmVC3QgQpkDdhUgrlKgM8+4BDN?ZG)L{bK;;&RhHPtRv_Z} z{L*v-Iw+<40$|QYcZos#wl3A`Lc+5V2Z(GZEU_=NNyi=i{wttRYtfT7+C?bt=&2}$ z?pNGvDN&owFH98!Ly&9QWU{r?FHbU%z&g%pYLa zdypnmdI>lt=0^JjQoNZTtL;dCKVYUrfNCW$S1IffMk%-c=__nW>pCC!s_kfsD{WsM z_0QzsH=^@Z5kinG(%FAjx6ei23ns9k?Gn`Y_{_mNu{-NT+v-}R-I8?h;04N+N5TE@ zb{YH6fEa_TSHrAJ763}Lqr_dnvUrJlPX#h~3D}*)!^4;0$e1FFheGwPH9G_V)(xKC z?-bTLSYFVx>2r|Muxjq_Z3zIKo$>;Nyfjjj?lJEV}j5UNH`mtin&9bm_B*W<#wf70&}L zjW-#Mj@Np-%b2QqAW_#FU~%~VqCIUZ9U`5vemB|lPME?BU}^?TddbZN|^-4mBudel2&u1ieYQ%Td4r)`gBh zGTh=S-0uQt#(_0N@JHQ*NgrVh?H$4JHsw-tiXoXp&r}j*{ASwu!9t6cr_z(Q zCOSGa>$T)t3KHIYj)vt`H@+^A%!h(KrF{!9!#NJsZo|!Qa6nji)!5wiKvF{D6ji1o zA&0W&Cc>$6IS!Ndl{^(aHXbn6Bq7hAh0%B|(9K0Tz|Jqr-|Wm(zD|7`6lC%2%#B4^ zqv=VwGQsBdaCo#uz}*(d+C1(ItZI15f^pLU`NzYNZH;pigxtsFY)y7SRul?`WC6N* z`-o7dN&qw)3U*VJRxwPqd{%wYi7oE719%i#t-Dxe5U!@Cxx^?ZqE1*|Sw6&0x$k)50?a6GH%lK4*Wdm9vzwn~Lv2AYHWsnORt|tAzy_)>T8b*b*}i6Lg4iX; z;Y0Rb4>;+A-@hN-m{Eo?GgKlFJ+~`0JN#>04-QnPq2BSZ--k^zOTK@WehLt8Zl9`n zHj3GGP=1KF$|?X);^p52g|X2UTNQqU9n|M*NKRq%DOWBaoVX`R+l1GgsLhqW6P|tg z8A<-W)ceDxkM9}od{L=Ck^4%!wnMginQ~x<@6Q=?wTXSHmlWxkTf`eXBgEb1Avm z44sPW5`{89<_Lk~kIe34TFoCDZ1zaZbG1~{NhwwaU0Hv~)9k>~7`C5v%bl#DnWwSr z-ehj*Sv8)RH8Q(hzyNclLJnvw;Z}^1p84>`9RC-)696nM1<0;fMkpcA0OtA~ql*6J z?0ej!(^>8WP-_4$mfNj>Wr$_hNZf{dw{a_EYgmFW&j{l?SnuYXRQ-q5K#W&eZu9Ew$ z#d8=~SU^mcD8u7}+}WZdf#SkciTKdo6AbW~)7FV4QVoKN8wV$+y{w>>iPV0tIn1VL zUl@>n09vh~qZ9RkghG)c_q4bHpuB(DRbU9|lFKt+cx&jf zw&Nz72D)YwEcs1#c6O&=$q#|Pxh1+RaKkQZ(-n3pIu~3jK>LW;t>q{MPSQwo#88w~ z{|Rx*7Q^}SYJE2$P3#lm16&D@Cp=+O4PLYnnrnVXM32(3>SfibNmBQK@-y=yY%Tew zo@kB~r3M0vGq6gFi!L!{n_Uy%SNw~LA8|u0YKWNEB9mBhNM{-HbFGx!XHG#)_EyM# z>32>(8~MuTmKS1GGmmmVtp^qrEIm93R!JkSI}yM9aswZ$vZ2}2>z!mZ!eb}vA3@K_ zoYA(G|B%?f>jR!3&BLg(lCoZTdC6J>q{D!sd2H^dWebaUUr&A;I%snDUpF&n$Ww99yQMng~ev z0H+A-4`R83cg2zp2iU)v3q&*jD(^Q{8%4uWxVHLRw*tO?dIFEFK6ovH7@Du=sW{6e zT{ZqOa-@me8gnghKIc4hko9xkXULc1Y47VIPK!(PYT?SFn1;vS(|;U03~M1p9}#y! zYXIf(7%0&5k#h%vK7RUi$>2GSkdRPKU>O6Tn%{P_0#fSZH%I~pK?}MDws^FzpW_01fP-Y)<2-g%)2Hnx3~Di6LbCwYbv1)#x-kAcQJv0 zd^~T$|HhQ@@;;4_@}vZOxA-M@o~`U0aBNozy;sCh4M-Q*c4 zN~^Rij`vDTq?JHW&hHo0g?9=mdZ)y_^E=#*LudfURPv{(=R{G?~a># z8XwmdGsN-gw|!K*VET#_wf{nfT5uIEi##ny2%(DC@g1y5;`j-?SBs9N#>;rGrB_)2J$b>8njE_nGVG)RdoNQ z#O=<8Lu$>T%~s9?+42r*au`G%eFy#eVx2Sef;mqbUGZy5&n;B@B$Sz#cP$Wjw$da$ zIfJLc&m@{xdFj{BUa@4DmqgD{xN&ry41lbw-1r^<{=0zz6F|CNq@)zw!B={&bebat zu9(jyszO-H0;i>D6`AyMv$K3*PdcR` zM>S}mae;BBJweaUud)vqt}iL5p7j=8{UOcz(iJ~9L24)CxTwP7dJZkB*xIq=J(t}< zC&jB$n9;*Xr!u>?hr7QGq_cB!XpD@EoC`~MKdlYbQh{(5C|w!BF&o_JB}GNro00da z=^h9sfdh#ndtb<0(a}9|zgH9_)0Yo^1|?eoCHyo52%*n+1}eR?<>lz8sYQV{p{c0} zF!tNj_QqzCdQOQT2;H8mP18rCv263x%S#>O`##28cGHnBjSs`t<8SQy9Ivrf(rugqu={Pumi$L8x8$`#3!53{t;``yI zc(dj5bF64!L9s;<_Wu2Q){V?+-XJ7^l0Fi^DVk3n30K_1>pD6hkg>B z#Rrsacs@E$+tsqAc1O+c;sp{>*>ReJo6OjLxpFeTw%cw)Yg6tLQVJXKz zH%i1g3F`BeP#CR&>bG3h2n@mBHXZ1&nB!PmKozTOsYUIrkjP_&429U#1M%*O48osl z=hGFf1J}Bd>xiy@ixo>b7C(fAV@Uq z7j{fl!smZ3^&OSj6t-|;4uB-b41wG^M?Vv>-_bt&{o>P_>(ss55K_%vHNM8r#V?^u#=sw$CGFiFqrH=_EhsWZ zc)?a9ji*fKMF14F5HMs4DUL(G*@kC5OIXqRzDhpx$@MK30f-#-=pJzF@2?f&H143( zwyKjPMI|F@MRP$)nn%kDIPJeKcVE%iL;fqQit@U5?^eWApPjqb$ASvB9iKoe+clk3 zRm8D5Bh*`1@TrO^mB^JRA5P%O-n*pKnbR@PnRtkvYwC~Zs*Sxm8fLOZybrK9X^^BP zpR0!a6GcdncDMom3$2=>;^J?>RKiWGumDIyq6f`x-v);gv9YkQyaoCqAnoMf=BA0$ zox#CUU`TZVc~`DaCK>TSF=o3yR@;05`g*uKs;~v%u|w7s9N=T0IDMK1lzf|g#?$7L zIuCY7Jx`uKtrK{3{+l515ia?<$yjaEMCm^hr$`Cyu8%V{R*HVz+wo(DCW!e9Gb;KQ zkZU7)cS0Lz64duqf%~;Rwwu}4i+TQA&={f7^M<*TmP5|g8C{jMooLg*nw{vTOif#Q z28M4B?iFSWxl~TkGgr`#=aNgUA0EtFM&HP8KU%|}(x4sJYHT?kC&0yZ|JK?#I9;XM zu8r}G-Y8tYMcRg?@#Yk7DXoosGZuK3yi7~Ga2Y*&dS@h6LNj1$uTvTm9vG-_`Y_Dz zyW$4UnX0SAA8$H}8O1Thj6n5TURO$cm19fdC5Fo$i0<et;#TeK8kpTNzqb~X~$0&&&KCE(<3RNXZIWDaaeG>X!=O{ ze!cRyYb8BBeb`YQZcd+3eOo`uG0m7RZT)xfD2U7)@GQTay{7Tr0K!kX*LYWxy9I{D zSe$cPDWpFt-}o+kUYOR9h`MWi4log$=xk9ZzS>QkiY81Dmw5}{Dl!;g3EYmDL%}mf z?@!6;c<=awd1NRUjy%9=7uM#`xVyXKw_hjNsszv`x3OtPbws}8u>BrlFF8Wz^2^yJ zQrG^l?Bi0Qn``A16vi}{Jc0m4!K}(k7M8d;uz57y^E}KR#paEzyhu-%8b$rEz$ccE zmyAqRORlD9e2-Hi##?P3Q}lm&$=U?)_h1Sa?-!u_7qDL?(%iUh%qNhH=*?frIHqk; zXe;|9?yTB}CXL;U3ukG)@`}8SyZNS23YV!r)#>Jz?6|vYINv$@bH^RGV?P-Z%6@F| z`R=YiwYLzi&r$`t-7g#a?0M61^x!*eOk(rC0l{8g!yBRCZ#JupH%a@!xsKc>)zh;u z>3D?->>?~q;I$7&HZbIng;$`$(&$J4;_Boo_=kMSPYn%1#5>6UL;O~`gui8O9u2HG zo7&r>PoFxaL?p)t&>Ey?unKcE=OPtzTPQNie5k_~6g^gdIkilT4)xFSU`IXCU9Fw0 zznldvcX4ZZoK9&hd`sZ-CV)@nEfmt&C&C z`*TUPhEEyGpFfrOw*K%_R**`~^CJof)&FAct;3@F-nY?BBhr#eibxA8B{c{ten1I9 zKxzOB=@97|8VtffRJsJIp&Nz}QIL?98bZ2;j;XW8&-wn&?>*-|??3N*U0e#AVP@~O z_gd?Ip67n<8@rI?c4GXfPupn}J0s%0mU!QHZ>TAzV*12t-PKu8Z9zCOgL59mODmlii9_}L(YQ4caPF>i>RsLIb>>_2VK4U2FEvp z56@M+uHfYnC4=v?rUqa2eHS-L;JlAP_NEUaB|CfI&3jo=Y=XJk6HC9o<8q)3n$^+o z;Vnx%jh~Fi(T+p;0=SqPB2qFk*MXx1FsGD1%>@1hU$ji8!vTfp!NZ3kI|nUCJM%oM z{*0hom+a@j2Se}y3YYY`bJRepa}lxyK9Fx#<&ea{D8)|DZ>B#YB`VsUvF>8lqS-la zoNHPDItweePBYRLi-nw1RXtOh`Ah%MxCZth?M*T%YR#BOakMU0{R{qus?3-%rY{(5 z4&h$i(S4B_>NmsAku(PfhbSN*T*Ef#j0>9{GOKo%GL?Qjt2xH4X2>_(`zT!? zWq$YRu*K0(W&Vvok&~LN!CBF-p5KV6r7-KQWzYB_ReRz`O4m{c5p+de0L~f_QBhuj z%CDY3zk1^aEifq;7$*6J$+ z(*i;-kAmYn?SQeKy)xb}nMy6`O8OUrPKeB>+_wRFItc1n7^9u$+&O;_l-QteV-25k ztM?mluCxc^QG)iLKKp-lh-!AIN*{ipm2LVm^7w`tE|YE(T75_;nLz)lm8*DnOq@y=Zx4_|#0paKbXcye%0&ef(on2ja zay-ggh7ZVPIMKuWb!k~y?ocs)Xd4 zx!Eja99LGR+XA=#fGDH+v_DXwG$?P@L=FxqOy{5plSP}AVujj1$|upDv;WMPsZD%* z!$0XOj(?NZ>PBKl2ZKJXfzP*->m#XFnWi>2U;NJ-@gDR0PCmEc<89Gm^K?Q`0`_>-T3<@b-4da|=iA8mf`BddEx; zXbsGxHn88YU31P~=|nTYqsV|J!0?n8OoNA-!pUt9H5GINqY1{vUy*TmZV(`g*J(K7 z>RWTyE`Q!yY#vLx_+A!w@XQAQ$F^*b+ty-kqiVb-hxSL_rP$LC zhE#&I`8P&Tq#yqED@2F{1yhW<%QOeiH13Wo0r(DJwB4t};S}yR!?7>JhiLniS2R4C zOks+5qCAcH!JS~`6#%BqH-3NX+xzOh#GugTW@%ZkXMP9P{&K}; zF@w}K#Ak}NY8{`Uaw|Fr@rw2&L`{*w)WPG<1|YFEs0Lb`mbOJ~$bQOOM{jpZU58Vz zwyS}K1u)Tgp=w-vf_V;Q@adk^+2R%1Ipwbom2#g}Sb3&j=3Q;c+i>7(3C z**~B`5vW48fvj)WRI;`U494XOC-g{`deTA)$*IB16TDW66DkX?w!x^%<&au7F0adx z`tIxY(o}Z*$umVWN}{3>TgYGq>q%=M zXTG%g94)f)H?w{j$}9zbB?VPKLc|Kg)E&bygM%h<^yt7Oc%@1`#YzN5SbMi{xAp2! zs~}L^`32G{2IgR@V7lHza!o9z|7z;!O*g%sy$h0jjEddXM4aS> zgaZXEYvOMcca5)WggG8>`jv)H1{MiG*rRINdu_6Py_6+i{+V=qHAYO8^FMqj_fCl+ z@r3KY?SbDe_(uRe9g6GRJqN#K1>DT==K6!~{*;zJMB}~n-EeP6O$1+6S^0$vu|9@> z26b9Zgm#<)o4WpXKrGsCMvH5AId=jiB6(H9^6t!-xsX5vIH#dP*&dk!>dawxE@;_V z=)2u-i(;aJ97I0Z<`1Pe98$;rS(tkfv8`~m2voy5f zjs`P3S=oaUh^}r&r)#s`8HM+lyQ)dxDHF#?{>DjgO#=2h!kZAD5MU#1x2djpYoA2* zS4)Hv4A)O^j$>;e|Kb=94;6YB@mHCI;%^tt&H~_vhaYIp{gohr-nl#mbn%Sy|CMJ( z{SPuG`*-xSKWn7#tN2pkackY1K5aoh5{iW}V!rA$ZWwa1uQ(l2gW?&?#O@gXt~N4y zL#OFR|1h;I=G6WsspI+JAl>;j42h+d?>NQ(GwdPZZPzc$(;M|Kt*dO~XYGDY6-1&7 zI&=?*d@(?1<@jV7jqQx*vy`Q$odU`0ZNY@&@7<+66xk_7arM(}3Cc?;Hvvu6)6?C> zyYfL4m&U8w%kRGM%dZ=q^{opXBy~*kyysDVV7VD^hkil(LvMq_ciwN=t)Cmse#nXM z#~dB#etu6{D)zsJ@d*{O5>Ze{XbKaEmZmt&61hLxJ+czf_hn%Dp69k__U8@5KiVZC z-gK5t_O-0Ehh3{dPanKGOMF)^XzSy2Hk`E(mh-sFOuB=aw+f@NJh9Y6>sv~?-Sd#kuPTX0e7ILzNYA4>ZN65Oru;X+ zOCzGI&*z!@z727B^5)$S?HaX&JF6n|cU7rbcr({n%KtkXGJH_#Fs+hHHh7)iPd1t>jWlC2H*rVAgOdL~u z(Gx>68&&9?Qt9y?!KW(cNiSAE;H8ElE6P~x_~CbFz|e#@l>^VAuTj=pp6$Z%EG-R~ zNpL9a%+6-Qtu^i_w|~#e>};Uw{qL;mdb)Qss84myN#Fzxgu!s$vycW0Ky&-c+vJ9= zAUZYrdl$lmnLkDmJ^1qr?ngXHNZ5uyGUU6|g|v=+!V)NQ%XoI%f0i{6_xw~eVI*f= z=~aRo4juEtUN;IZVdgV~+PTvHN$h5XL9Ld%K^sby0E7}rR*w05^(9DjS>izjO9mKp z1FX`75BJHS$8;SS$#rg2*gLbLgEY`FnrlGy@L^{V?Gc0fhSWCPvr!6UpgKT9PQzJx z|9)b}DQrd8%Tux6{Y8O3&3|Q+9oMKECVSI7&7|;>>(%hMmQ!L{{~!&j;IUX2Bs9yS z0Y{t=_Xxs)5_svuuJ<00+yX}GBY4{EEIQ2Yir370-x~?Ro1&G0A$Ij+FiffeTs#W8 zN7#V>q_Ab&eaDHIxBDFCLRAZw7n4=9v651Rx?;p?)h|6P0(x}JG4>* zi=?bN6)u&OREZ(BIG?*_met5HD$F!kj6b~L-xBaw`e6P2M@vL9U(^%N%Ilm_FbQ5HLAhe0e*53~?pNdiMctz8GQIG&Spv{XxXJapLe>xib{X$waeEbw|)2YB(V4 zN}CZW2oXW5_HL^zlq@UT0fHP_NM6?J`zKD7jc5sw?i%MwDzZ3ScO;>x9XFAK4?yx; znk;PY25VlY_^^qs3~cv=Sex)*nh0(1oagS~y6~VuZ_Pm828aaAmsMX~P{oUijk}V- zgcIK25f@`=Jo9rU-(YUD;F)p--2zo6UvyhqBV1oLP8q+AXkwVSVm(~d;phf~pE6L}L0+Ce(Pfy?qe{ zU!QGv23mGmAkob7iiZMHrV+OYCSS|Hsk?iX*i~netWs(j$>=4xp`{?Gt*ELxD=Zw+ zii(QZ%j~G~f3nQ2evuHmJ;0(T&J23AW7WkA)yX?o&e%B=JN6gVsl4l97 z_RP69RI=)I2{gM64r}Sw*%G-)3I+G#L*JD+cI_;QNdGMp`5_^@ zBfVDn+5*`-bgATZfCkb6yzPxV>wtSXg!{zCH=KEY5>HkV)B+D>uIv~@5#rdfGu2g9 zT)muJvmAe53(;&*m?)<5yC>0iaLC%N3PN1Jv}M&RfO|orfKx_BCJ%+m#jeiOR5Fzu zc9E9PAWN<&gKAy;k46!8+~PGt_oI&7f#r`AGiGbZ{jY+~t@|JaF9%WsTP`LXZyC_K zrkd|25CnboHj~vLzzaI^Kj~C>IpdcJ6_n@dSnk(7h#^{69oU2WvG%$b#!X2Nk)^v{ zG#(Tmr+8Z!cgot(`P2rifU9WR1fq33f{0BCX%qQF$|-&X#pV?0W&}K}1*byXQ<~rk z9wL%?s<|^GlL>}qZE02_a?u1Tb^La;HkP~nWyXF>ZbKGT8ilg5XLk24NC+D3_rQUK z7mKgy;a&TH^{qbyG`p|X;oa4p%~)(b$eYnZ0QhJ26$-hYXm&&%HBMp%Qqt<9W>#X5 z=}~Y|Ho?HJx%}4(mfKEp%2Z=Te@N7aVxp?n#^~}OmTj% zOm76=T!E_~tS2rlq(|`7!_237(Lzg+Dp#4tuOYf*Gp>shz~HGLFn*ZH7rECV-<>o%)rLvORWwK@wv*iktWm3h)u6%L z824Ou75lI;1M8y#IT7YZ>M@uUc)C^|dd5r&nf_}G^E%AH)b73b@ zAT4wiA`%0LCoCM+GWf{t%dB}-bP`ZvVj|coIW;X=5m>Rr+HTSUjAgbZ%_=e(J`uUP zsPVGvLOmnEYTMgQj4T3b;!)Gd$;tYA25`UmgeBm7aKWl3cwylYpPDZ#uw>FevsfIf zat2otw^t`odp&UofxzsrUTfiv>TGxbtPRz4K=Pj=QI{>6@dk_DF*e@%{Wxs~=JZ~r zJAg3p7__(FcWr(JZ>0X>Kf$JfTf6K$QDgM|#}BrwtSkz$x+M7{{SP*nuClss&0arB z+XbdYRyFPvP+z@|8{mqFoITqr5v(XLPZmB(%;12qzD&l@0!xFvm-D5c2QF$s_TFOC{m7JU6+Wo#u@k6*+s;?GU4dei4flMz08X10824{l@ zpvY-fX!^yqMZavr{KB5&StMYw{e3m#J9L{2s|E6CZ)3!NQ3uAN;m?fpKe&uv2_T^s z2?iytn?FBZZl|E4g&a;cStL`_L4H0Do|~PceZ`oATFPq zhLEhe;Nzqs_weHn7ZvEr=w}|jwh*J{DaV6-YBz-2;p(O#jrpo9dWvANiCG8$+xzG{dCf^aW7Jw_ITS`x7mrPZfD z%wBT&P1~`3hjm@NWgizP^`Hoi_djrI+{uFD!g{Y1+)bntJg)q&ONrw^BqdpfK70ET zwAeCC?wxM#bU*S=_3yK)YB?u8Zp*H(q%wAT-_(Z*ZSdbl1ieou*l23AG%|&{e#lS2 zw#~javtffG;Ty;b7PR#dvs*|pv93z^=0Ibm=FKjqSDw4$bya7dQX3%P?^pBClME%p za6}`na_Z<8#+zAV2hqTNFXCS2_Ghk^8>`ssur}E?w~^df ztMs{NLXaFjg6NU|{tkQ08lB^UbjPu-#SZ*UOC!TDciZ>A9bWZXQ~S0JJNm!yGf|Y_ z4aZ60>@qOYTQLJJKq#ocen@a`AIMyN?p~Z=^YHp8e5?TS(J`SaDQkV&q1_va??O(; zsy-m09R-#F82u>#`sK0Ae#hvE}i=`<1?kb z^MJ$|!LsB^!b}mxMjZ%8AWu`~Q2rZON&uSTR8AWz{ONW2<*zli9$hlk(IBHmDM_JR zAg5=Aou-7EJC)368$17WhNy0^F7B_>LFQh?%yU}!8G~Ct*>&QcH4sH~Of%~&l30k~ z{9oP$toq0?i(~JFG_@;w6II>kl2sE$_t(#S0+%vWkTNE@LHu(H(tHrzgxqyn^$~rS zrmnD7be(m1PY?+AUgYQq^<(Kig+i~WK+VW!$S|KN-zZ!fYu{ZBQYUs*d8>#Q$h|CG z42e^o8>Zr0XRgf@jb8<;XfvCp)^h#9R6s<)W}_LzN0*kP z9c91Vm$AG06_qU&j`_}XCR|H7)GZIdtZqsaJ9xy7@L(#k#HlxvpPBb|%I{Rw71&Re ze>IG89P?3P#w$pc8|W9-oEg7!xjR|FDb_6@TU~nZ}okr zg~P*7Zy=)u>`qb(TSEfA^uiY8SBR`nF??jzq6dN)snk?*!r|ciU!362$j7dk$w8++ zMx5k+0UR3#{~TxiJ(>|p@d1Js)N9QFO*h;F?<+@r3cNU5tPQ&LVC~uEwP&i@f8WSo zzJXcp^~Zxh_80pdu06>9#TME9=-Q`s^HO^n+1J|S&lI4dlJn4FXn9u7`(ycI$@qE+ zHwOfT{rl(C&LKkj4Lf+f&`IYT*}v%PCu2dQRNfwKZ-8g1^5&0r=eI)PteIy7dIPiq z)izI{15T<RQT@nT#52uF117@{&(*gB9OrMzlF9<8mfL^Ug= z`7n)A|qW7 zFMU06t9FJqkT7HxeRO1tKYEN@8r<(UKpGtA#iB`s&1l}lS4&;59F!eQ7yHbT|HB2~ zPbFH83zEGhD1fLx6=YujOa>wwP4gofCtFAlyr`=bKVOL`HaryFyls>tyjSn9Jx}u5 zSH9~eN0^Fl-BcK{is4s%M(Iv%_k3x|-0xGa2lV|rPXy>aX{g=aV|Gd7K#WlOay4)0 z-G~^(oZ3=_>WTOwM(uTiyg>ByHKaS?jx4qTdERbdlJZfYkbV15gy$jC{11=6*EEL0%1`>B_lMP6;ngH;nP!!-jQC`b_+6(tT)LL6qT z$_O>dmnX5lhg=O71d%>e3i2lsxw&^Ty+Pgr3`U@Rvb;&8?U(I|Ukue_Ayb^%Cdq29 zPK8mzlFW%Qx7%a+b<{2Z1JSI>R6%9A&gCsY6{I;{9w~<(`GS6AewC}|K@kg%+~d^8 zt1#Y6x&t*!1fOH#32u4vL|jTHA@Sbc{UN6LL;$G>cm`etU45Y5CS>Dmxmos5R!a|g zW8o&PZMIk!MMpyCETxrk3C~DeN-T+Q>=ofhZyUJgpSXkjf%9+Wve<8&>+02u^Lfzp zr>gj7`J}{J4CW#W?rjd)dTiz4@>Mo_c!^-&rKh`f|VQTg%uoO1N|kSy$*dWx10+zK|G{U27?k2 zq2n=d+xRZk65t0z5HP7}Ew&Dj^O#N8cJECMs@d*5F-q)a)~tzszi?9S+7(jia_7;` zv)q+JF2tl+aEgUcKfkJ8*2Uks3=cg0KM(A7&W2W{b#y1(tfG39#df2dH{rEr8GnhG zSXaxB!y{j{+U3*2=0w;}l4xqcrg}F)Z{cT)aRD(C1T#Cx=ktO=e-?a5<~1UBeR6~t zHJMvdu3U5lli8d2S1vaYpK@FaHNs3&DF(TkQJ*pXb5bjhBR;AW{MT?CY`7%Ej3~mW`})LWCFns z=up&pYVvO6g&<+qX*sbt+tA2}`H8aAurwo|a^I6CFvrMUG7e9gf=jSd`n{F%a6{{Z ziZuN;Fl_E%04F0!$0O*io|S6qB0}mEcOxrp#pJXmgZ=)ktbtpdEAWRNAtFE=%G2OW z_@#K>m>(tF++D&yJ|r^-cz9S2^;tcCs!Rzl!2|Qy4R#{XW$D_CdQbkp;5g_iL)A{I zmGqdfwHVJf(`9_4SUOrrl_NxPlnw*^ex0sKnuLdiqGV_Ew;PxB zKkv3BjaSdL{PXtD%<~UC>3`&7nLa`R);SHg9-tq*MG zmLot%+2vy9=kVo(;v1|CBn9r%TWitsjLyzq#S|3u&9v!<6DOn`;g3Ae zrgCTi#zZ)<)jSEgk68OW&$08S?YF_zX;<)*77WN&|p+D-d)0N(mJZb zteoZ$F)Fouij5jmPiJ{$#ZI(dZR@r(rc>8iy8nun|!r7#w=b8hi& z?`Agr*NYP5PE@XpkQ%Ys*d(!3?i|*>QHL9|!NPeO#zjTy9e0g>g1Xbb-=4 zVi;8<;Gp3hZHfrQKw?9w>!gaXl9Cx9;I;!c&-G?DIWTv`CcHl;WXY1tX z)t89luz9n{-edpr@f{S(_x6X&IDw1O4b^f}>jMLAY{dC1n8Lm`SiG>Aj&@u(eSnFMy7( zi?l~l4I~1u-#9%ld0!|UZix&agVWXqG47YKJq%d`GH-Jh8)Y^v8Y#z^@%=mfEgC#@ zLFC;oja6MF;&!D_zG7Ot{dL_JJ6`=m=kO=eEO0|5=7po_9yGq%^peeu_64NW%{Tpk%leN*j4pBwFdq*D+%$vk(s728$J8?!$3QD5bd%Kc0vCHXTj z33uJlGI$(@G@N~`10z@*VFF0j8I4_`>fn+-eEhg<8WiL;zq*aySTXDGv%UJ2MTc#x z&FB@b1;?Zu8q$wyz}cj4t(t!CRDJzVbvx6;!%Vm(T4``h`0VA&>Qh1b$N!iWm2tjE z3s}yD_ad}z;>6vAlRtf8_!r5>TkDuPAr0D55TkOGoW!5-OMxJ)#hh^zHm}1a!xD8x zK=4p;jaRF(CZ=SVm>P|t;BjZM%V36si0a@Qc@R(e+?XC+r{WDg0m6{}9Bcudxjmqx zgw~dsZyY&;4zWHE{$kE-s*&E5tgf7YfaDW)OY2D?T~(_q^oL-_S;o;zV<}FNio!`aH4)5R&0pJ+Ndbayn zVND$?`BMzsCR&G&+O!XFZ*i|M35 z$Tmv{@X+bg(!L-Vx-F>&z-~^O@8?~goSF}Pp?G|t-Qvb%A+?VYPw)xhuLhY}_sJ`a zgX!;#G=vNx{ORL=k5?2o|1y9{HCsp3#`Uln$P_lGb4r-+%mz?GrXlrm|3P&^o9ix+}l3#P~Z%{#2&#)}YzQ2ua zItG~0Oc1E-k5)V}u1{l1!{_8M_X<(a89WES>+i3NNE@LzPY&0>GXq;ZggPyg3Ys>!cN=q+-DJu{K@~`63YGV@UKbi0}#ByH9~LG#Vqx3By8)s7qb6T1^o zU8-TR$H3umYY~%efB4~L&EC`i5F5&c>ku`OM3t~%PUYiemIP$?O0`LWXRdxi!R`I$ zV#tGcBQC?O%g>_(5$4{OE35p-Joqh#5EH`s-POio--{XTU$mrYnonK7&ZFVX!x)6i zzhGu`Z+U0`#`WuV(+*Vn{AFh)Bu+#z^J|Swx9IOQ;5()CDJpW0VisNU*7;|KdKu(A z@~d(_f9{+EVD|N!Szpiv7Au8HUNQ-xnwIZ&F4h4~d{7>IO)y}pqdw3b2y7T63&?j!FkS*c61)5v%b|bX| zm^N(IH5+Uy`=NSF%-?U5MckwgpS z5F#S35*hGkdi1CvQW+KVOR&xv!bmtJkWxAcYao23;RJ z46=Xw7)B*`RaZCPQ9K@KQCz)#{R-$1n{0hi0WP+EnOamK`)$GkSP4yHakJItg${Y; zLSFml zk|!gZUegZQEq}4NRkv^{u80x+Gw53K)9#1DUj8b}j^<8qM<7Z5UV~7vQe^`=GhGK1 z5!=tzTtR+Sj^|IuWw&}JAA|=TmZqeqCkNvuc+v{R%k$;(#S{~5BDO^ z*qm)K$}xbCdt{?7;2rD&^Md3i0%Rh|u!NY^zBRDlMi+cN#ewpGE{8N+@?3bc)E_MA zTW(H##M~QCc8*0!vJ12adwPuznx^Y^-aTs?vGP)=a-9rKa{aWTI8k~(*HPJs_RW67 zuV1A%ll&zLFCdpY7(7HKRcCFgLJ z;l|e(>S_93&_V&Sel5Wtt0yC4(gH&PU$**fvpxr>9mqiGH@1LYLRtvup>=65>z)8x zXJ|#CC3Z(nT1LvNpn2u@W+|m}srlCZSDtD$Uk9vO+J3O~4rSOL13T&Q5m{Uq{y0Y{ z{y#{?^TC5xtpmN%-VEZ731J`$WJX4&rG;zcT_;1)q-PZc=aB8(fxY336_zmaT~jYt zlNm+Kg9^wQ=|&2uYV@Rft6;RiVNZoEbtYXBBIr<*dwPOu69rQo7N@)R5KA)_x^$(U zsq(Q4;ISaN5Fc^Td3^ar@D&M-$JJL|mY!TGO4hWTPH<;x0-B<7A8&;|y-qhGrTXX3 zpJ+pla|QYNAfM;?7&O^!BYy5(a&QDz6ZZ@wn|m_3H1;+Qc!B|d#*W_W=t0c=2tHH| z??Pt^EMi1$!}Q} z#ZtL%n!Df~4_8@CSQ;uWxcNF#oVdoKNI2foqi$tU*2)EIfskW)C5_SY6}OOWgD&FI z2r9us+1i7tsWV-2(){Xr*&}cRTPJiDzi-a1qUaWMFFW3pIRoTN?LnSKw~H@L2iVkl zkG{r!;RXd7>}9(#Q_Y9yL}Ih;F$w>s3I*Sfs-e7a*PG%XB}Yu4E8v_h{BR$Chvxh{ z#FtGL=zXyRfn>* zkWRQdI35^s?PTtdV|)8c7n&I0V>ra%5->t(129kP1dZ2M^26#Aa!{aFGkd%Po1UPA zDhT+^RTb4x8-f6pJ6NX8(!B6{ypQ(f&9H{YKKr*_9&bz^>R8QU#RyV={KZIHf}sb; z)&*|;`lTX1BMb=`|9q~8^>KFJlb`cwES&9pCfH{C%DH-*jUK5Tc74AK_LBSk04f9q zQX^4zLPS!6-T0~gWHKP@hb(QnI`c<=4B$KHBRsdsj27~6V&uygHLXVD5CCr%B zh$yX(TspCvGC}!^YV*rpYa&;?=5DahXPO9N&q2D+W3-r-QP4U=k1h37?6lt9%O8f! z)Ny{i@+mtDog)!++<#sWH_mA<%Z>-#^0s(fHExE^)ny_~jcazlU0%~Hp<>`Mit z5BX1PFPp7~u;jo-mnIGB1b~a$2aTXQov zwbjR|iHbcSQo1CP?j#8u$_!P5&tTQ6VT^{{74~}dSF?#_^3hJN$t%Gh;(!R&R?_+COAot%bu<2=u4(UWDb`vse zh9It&G{C~fQR%tQC=%f8YSC;&g3GU;7?sp#hwIHaJw1K_7SiHXBuQZ(G*y!`o(p=5D=98XFd&r@UtL6`1L% zR=7-dBj?s7L(VZ_alI0BT6E#)UahGpoA=lQ1 z#}MSDdmnpfW(sNcFs;lf;}ywH%+LoQzsqyx%xYB+h@x8HBr;5|7JY}PbotdO8#AIN z;7b}Pn!EUt#4_9=c%VX5?3=^0RK;4>2a{S%<8ob2h z9zW}_(m6zq*I4&})~uNd3isQOKy9Bf3}6icAGKpqxt zOjG_DBQk=g)%jl_csflGEM#MRry|Fu*y@4^yVaX;aAnHCV3iL@KuDPtb7af)4GxA! zN7F;ifb{1+5eUIB+f*8#{7>`HoQ(t1ErhERyc9ewZVIqV?$7be!e^8=%FeM z2FG$lr&=6mk2+Ll%-&L%jVbjkx#Cn+QzYi~hn|B^bwg3W?I|hC%tB*|=jDhEG7OP| zQ%|Mlo;sdMbZ~Xl()BDe*r5zo$Yj5_dN7;yB@w#aJX(6+W2sL#@2>q)F07CE{>2@? zD5j;&y@AboQgaBEgQH_82QBEjj0g{>21ZAqw~z`{p*4L!u%%)AC0bXRzJHgiD-r>n zw%~AlqJ*?GHFR!Dfd>>OK&a(?x;SWwKLl}H{}LwsAKc6Pt@)_;6VQdt@46VU?|kv0 z=GjbpM$ipBrZU=dB@_XsA_aumATpy&OwuWu$KpcP#zPz+B!S0w{@M3|oGr}f?CGjB z{p;ShV+N|u?{CH#XpD!ZE`k0?=UbmN_!{S0v6}~qQ9nspNZICyW3J>YK^Gnn^N(5OvoWrgL0svkQ zBd?aWaV6~@fPG~$Ej2Y3*rdxVC}cEMM%~K%{FxTe++ykOLbee=z9hAHdf`pdR(rfG zq|8jbOmsV~YZxlbGb{fy^|HY`EeO2bNf=~umu3)E*q>5V-He#pvQCf;J?KsnL)7C` zvl(w*Yq-e8lAHZ~NASDLjz;07)IM3}fc=fc+>X<8wiidTde$6_lYxf7=qW-6n?IWU zhoIXlrhLqg+Flsi64Ed-$tLD=+(h!92f8QfkBd=J7ccZ&tmtU5f)DL0Unrg=m&Tg$ z9v*UL%ZK1DzXc{bJW%}W*TM$Ire)bScIid%JHTlSuJL4(d?|5PEIpi@=<{sMB5xly zOp@~&t3$|P=d1txkhpf^+Vr~5Sk*tX>poL#k9t#OREH45`{Cj*O48i49;DHmB!BtF zk7Jolco!0Vca3g|B~>sui8M6Gahp(#!pJ~w0Lo28lQSUy4by6;rKQQ7TVUWczw^EknX>S_Top5MUiR_PA)`GjbC`h1z9qX6`DDCmcGwHdoEk@lk93HI5KGzDfqC@ zC>76f3m{~86K9!JMt+koxPRmw8zy{CUK~06859=!^;|Mj^I?C_Bb?QxkDOL@LpwsI zz+la2V`u;*f59gd;Q`|C=d!UBvdWD(7Bl>NQ0DJJMS=f29Vx8NmS!pRH$_Rmd;%~# z{z4M#7Kog-R0u;j|A!0kKTl!)zy9F=#EaM#dbM793bF@%+^ihIu;T9_%??QGX-HOz z>A@*E#=1? z0&mWGJ@DbBt5;k=yQh9g^Qp%@$sQK^F~F90OoAF*WGbQMEHFHi|9I0L$-qtXy0 zf`(ae!q6a9twglaw@kMOg2`Vr!pa|=1pBD|9H&5Q?qE~juTFPyJSc0u#(W1G9u!Np z_u&^{cA6G&g0K5G;%*!*58UKeHWU!h@T7*~6@BHP^tyZoD82?k)ngf=aWOv1d{=L1 zgolw-%XG$&Djg=oGJxP!A=QDO=!K}_qh4w)$&Qy?wIOjs_F8MQq@Eel!o}t>`mfh0 zUdD#^!2KRkDZ0_x+d~CI7p*v2d*M33Itc{B$^>u0q|_78l2iFi)i`q2`!|@|XJurV zfMCd3=o>wC29okWjR6$x}9t@x3qI^GU}19WLH?*qH*lsSSPSyFy9R5nCTqu(zVy z^-qYY6IwpV&5NSAf$GWRt9{$I``MC~gxYqe47vc$CNjs8yf&~J8m`%l*9YwYh4dqCvgX0_3FmkJ?`eR3K*IPVh&Xw zE(x(2U5rIbIytS{s*X@Y-)p`aITD{8_#FO9Uam33gkH|=wQFu}TH@!99H249JLpHM z1@-UFkbg#^tABryH9K31LK5lh0fCz%Fb^!$n4Oc$Ia)j7IZtOS5yo>AtDIJ8O6mtt8=5H z=Aif3c5Sq@=INTbe5xuP1mryB0U=_6<)zZM&daHPK^U7#&dO5I&cbst?3AElXLEbi zj>e2j_ad!I**XqdT>JrU_#aT1Gbl&^STQ&zTlr4|w)JGIo^0beN=;z!YH!a!u3*~? zB|l;6qp~Ql?eA^uPqH#ITjXE|(PR`zsBk2{69Nxgdr{8uzo?oLn(}R{odtY5|9z>C zq#bFt=sQ6h+a7ZhpRXVGB~E~l0VH&*R6(|PbqM(N27~MK3$$Snblj=Y->DJ+tD+>a z1T1B`y86PG&QiLecVfq{F8>FWRkMpz708bEDhZbvP)qih%*7Juwsbo+zkX}~(Hqr| zUTnUa&G>X*3V`=(x11_BfFyV{=tKt&OQ1LtwzCKf(bjGP2|93@vh;fIrP(NSAZ6b} zIUuG8R3Bo&6&*pc-8U-UFtH-w*mD>dVi;LUa~)4RQ~^wfyIDWro-k zlJqy^`*f_XzPRkE-`@iFFJz}gUE{zAMOZ{zyzH+lB z)%~1sx21)}3lJFl1(CCOK+hM*a@duc1FzTf6wvz%){?-M#a9iq3>{bQMx`iN#)ApI z|M`5i*k+QF!C#d6#1R~fb+VvHev&jIgw8}KzMe&R@*UN^V;1}1P+e`jyCJKrSQ=j+u`!?=GM zB@Lfw#JyjV508rQQ$O_K5+nVvr`H}(*x9`DF<2^U*l~e0|HB^tFz*=(F0CINUp%>r zEUDpf`|NaZtbIhpc`=zvgzJil{4JS35GFCQfC6P` z5_wCslfkJ(>+{n+x*|MrT7nuh|Go&p^L_%6!?X`!*$3Co!C1~g1(^o@A(pQbb{1a- zXPqAYk*EbD)E(f$oJ9ArGi{)D6VYz}TI%U~MBK)-n{4D^LPfuAet5472v7Gzu^ z^9qngRaW9*k@D*1GfIO9H(^6JVo=n{KXwM#ljq<5SoXBFNUy}evsu%xtvo)_?qUPL zU+y7)B7*WwOpxJ|XI36(-%$jEYgrSU+Tzd>#0|B^;|2Zl!}~E;{zA3thblVj&PRsf zEMN(Ff{>tw#`y36bN3=<`A2jgS>An9aQP^5B1^or+vmfa;8qG|Sh$BMge(|=Qwb>d)#4O$lI51e*UyvECTXovT8&ceu!QcbjxvGdOMwh2-N zunx(QLVR&AuqgTEQ2v8-=gpfwhjKe?Ps%RtA3&(+k9`P0w(v4V20F;fXCLV3cYrwS zZ&0%=mVKt|(Yl45>$55zfnl!SlKJ^U>ZwU7GP*nBQM&=T#_G+WhLJhOeBLC)a1&uL zE&}R2A@AOCkQ=SNy}ivV9q$@ecMXwR>TcKIig`aBRU*KOh?3cR)^6X{ z@6A0Ynvn?*Co3=8jE6dLzhk8ZQ0##W+?(s5%z5zSeu8RJQxFbFI$cNT*J{9re@_zJ z)+S#9Al&7K6pBw46&2MV&;yH7`R_gy93784h3jZ7xgYfip*cPR;y3^O)n%N)O(DZb zjro7zqVw|~JSV;NcMybbC7w5*Rt8jpm@-oF$Sdy9yl((dDpygzATEyOp?uu^DaQ$Y4WwR2G%E3U{4?!_7F)v<0~O`n z)e#nuA2YFLAxshG#PqlK<*SmafZ}{!PxWL4Cppd?**itL*A!TLIC?+M`{Tjg)%E39 zaKFkh{{qe!Ma$f3u}f!L7bOd)@OF@`@lBw!e*P9<=8H>7we5|-Hx;Lh$c|iq%%E3D zw*9uc>~Z$l+87N)KJ8)xu(l?*acwr?T;sZsfN$)(`%6b%K&Z2`6I3(ffmneG2Ds1| znVK$mkn?(U!3qV#nXa;Zn+(cKsG4#Z_&jF83)d&7?o=-d-lz&>WzHe3yYzlvrB6T} zZ6D>Y(!U4)KgO;Upuknx5(B+`f1v-arD;IN6^YKRKCoeT`sQ07Pxy-RDE86CbxJ&y*VS^ zKrIugQblwQaV)^!_j34L%4o-3-+2 z7tGYDlZ_cyJrH3n)7}EhUH5=c5&*ImAiQG$sdqI5>$1}A{jo*gLbMPxPKfrH=_DDfQ80U|7-@59dU^w zujotb?yUJ|4VNKvFH9Yv(~A}uHgBGRPS&^v_C0;Js?-uL@` zb7$^g=q3hhft#n8%h)Nibu;hjcW=0`M)pl@-j3`(L+**sZc&} zksO+^D<#I|f9#DqJMr;fo_?)fE`O94EVRB59*cOc;u`>kEC(%fEP++8=xKvNo&WH4bjbcXRenYO z<=+-7dh0XB?1g@C?TXiT%*%! zc76xyCZHkSXp?^}&Ihz(J>2OMa|f<lRTY3LYb7X`kS8L=Q#stzH{$mK4u8_8ag-4V6f+&i7P(c*TdSI*VAu- z@*#3q^jyXgib|S1bI2jA`?)gkJ_1!M+w-YkW;>)bT0xwvW8}~dUeKhE0KRY$e*1$L zfUxDRXop^sr)st!wh0YZH44aMQ&G%p=V?fJc{wBqnDu<6ClO%BtKMG^0bY8xl@<_?Uk&(WNxL&O#a~vZZRB?Q|sv4q7 z98CHE7KbmFukcOVc{C)sJXl>Nh-Yn%N0z{cuERaU>QHWENn-H!)jtz(XFQj6`sV^SbkoazWQg7Uyd7vhPw6wf(mJbAqF&E9n;|CoR zeZtQ!Wdt5PwFGd}s?;o2*0kZjuHix9HZA1wVy&=2kSTgEdWl~QCOQhaJX1sik)UI1 zm^x5pv3N$~QYy63jRXwQM(r;D6V0s$E(XkI#0VB5%3xozOHs$Q`cjXwuE>9j#1DzK8ce{0Z9yE_E7~l-Z7g#TS#M%r2drBBvMg5<_Cz1*Nn4E_=w-1uoqxVSpHy{Bf^(k*6R<55b6M}1Z{L>80nPS=4T{hBEUmfyo6Wtx6vupdx8C!52=->rTG-FA4j9=2ZWq9sO)84!}nL^GZITqyr)f(}R+4|5oa? ziMf1RWIYE_!0+i=F8%pnrKiUX3B8Pa-jsZW9CC{M%e61`NB?yKcm9afPF^A{YD$2v zuc)m22?T(EnzF^a`SOE2SSaEdUV}17;Px!p0L9&| zvo99CKl9^aRp0!0FNkFBN$)yuY*f+4>6#YgJdxCJ6xhr(Nr9ObZs&|C=uMYM4LSe1 z%Iz=GlSE_FtbY8HCZh{74WA|tE`}kcDyA8itwbSN97CgV_^^uZ{PNaoCh@MriRAXTBGzY65~#ECCyR@+2v)R3$d@fSw^*U#`7-BMF-00%9(}&B@SG+LD+&tMxhD9dD_Qz_+ zFp`^JL|7*g0PO|zx3RHHkXlRIz90X&g!O?!L$SvFVdEc;rA-32vrj+of3vpapqG6H zq8)n4#@03(c+xTheNk`?cdoL_eRbNtzvO_q)H5JoT@}c7HBWGBtnarsE0u345mX#Y z{g{@arS?!sWt}$i&Fk&DjM%*>hm%_#NOD!Z1o?*iD*qWFN#Uu+dXjKB-d`1T_E{r4 z6@++>*RT4~ukj>x-JJ`xvzwT{fO_NKT{jl% z*VC5p$EmIXUOZyg+&_ACw?&SYJ0=g@28KP9>k{6>rO6{Gd+xunJ^L?&Vq#(ub2&LV z+S@LCH&LD2(t16}Lc>z}P0B!Y9MtSJp8uvCy??#AUuN}z|9Gr6*0fex82(j(IIE`I zXQDsnK01JxVqvy$eEww#L^J0c5bIuci^<{X=!63uGpb9nvc`I5ROAp=aFd%4#vOO& zzr9?J0`3Iq^oXbM&hwT|O_U#l0f!yMfB%i*!-r>LdE}$2-ic|$OQ;|-pj|VA;CD5? zuhR}HpSn*$T<+2Y;SzlOeF~ZVUWP}6%|b<+zHocSa?2WIc&(0>+sS$N*upQGy|l&o z`Qc0cq{|v|-LMM99Re;30Ti+ywU0V4@mkpx2K zUcm}j;~xITGFEnlLFbgWZ~J%g#VELMbPa5kX!?!Y=rD02I~S^#Nwm&awglL^4;60j z(t6g~CJsYnZ;7qavE#aNPZu%nWd|HLL7@{b#ntsTOx$5R*pY>?ad!gup4X?U3#1|o$pmb#S*2!7e= zt-0iB;*#zr7Er7W1fr~S#3_Pzg!8?_tl`bR7T%p+qM-3Pg{wTCrKKL6Tb#_ixL!m% zVJFo#XKjV&w(C)jDY5tAL$~D`XR<)z6(X(BM0S`t7{O!i)<76G5*0vNZJ(ige<}p# zxD#-`GL)FLAzILWmlPWM0OJhMf6~I)k&v*(wJi2UMu2a9{rWj3Za$x*@BONgvG-I$ zxM_LbidIWfK*V!BFWAEZCJkf`e9ouoQEd$5#Z4fn;Y?t0W=ViHqZ;TR#5?ShaNbvvrBr=%waE-gU(9XpMl%IwiD-qXUZJ` zBQuZ+34f4@AZ*`7n?*b%g0{;GyU7aL1io2k_#etvv8LYUMuJ5nv4n{9!|d+zj`zZc z`sEc6uvNh$i$i(m|5P9yuM0N6Txhs3mo+&33#%^=Ov#5!OoeYtO8&MySvEnJ%`=Gf z0z!?|N2~LXbObC(7c9Q_-8*mn#_U^!k4dS0lv+y%f}A+h7ka?k0QM@GR|jH@|hUT!iD1y!&cy@*Eb0poTocu6h&&5}PD#9bKOw zhrOa-is~;nhlpKr#G3`&-amgkDO36B81NUK`58^IirN1hqj)rLyy3IzMn=-2#AvW7 zZJ``cP&^J7@fUS`>?$U#{D4RSEFzEzA3U7LLpPC0TkC)Bu!@>oZSRO{pXx?hPqxK{ zX+igS+$dOJSAIxdKbQL(rIp+~wB={&A0AlGG#Q9E3`=3>6~jab34eQ8S*bGeduwvT z>BeshMUzKwkltqpPS$m#?{fNFZn9Zaf*?0rFX+h{daDa@HFvh&tejgy=>GM_!n!aT@%e+Jy!0s2Yvc01)`Pr zg#2m=Qe*}8IdZQC6Opt%$7S!SqYFlb{Ul5J?b!(4GePsEL;xv9H@)`aym6DmPz9bQ ze~cGL63ZxyDRFq8}1Xp zOIxI2Jc9mTj94A}st$ zaiVv2+RtzKxotGqlwV76OqB?)(;7*yqBvmH>E@*F1+nX`3{YkVM@JoF<7iOANSh}l zR0bY}Sv?ghgHp52+a{IIV+I;efa%m20*3c9MG!2G@s^}B;kfW5#BcvAEq|)1uwzaOfpUY*L`1EImF?RP7+JNso%JA=R7jKq~rS;$GqVo z7uwJ~@df7(Jp`_jumnQMEan+C`=fuzwUIm|@3hZ6T{$q(QVu`+YFu1K<^mi$;W*mV zAbzzpTOPq2l-ipaK&yBz=*8g}`E2nf-{{o|o@QB7ly0x9zX!q3FqD$r9yrhZ6YH6N zh~V-2<;ZAUVG}9sxyJ3Y^=|J9`Xf6%QyHG*EhG-+(Ic6NNZ8qm=pK|{jBMadd*Kpd2fB7l)46PTLic>svETch*~*`0#l45PjcpM({59nnw4qI6sHtn7BRx!{(X zzgkN#+C-|UDc*0VEHZ0iSY3^6DfE(^@0ls5nnUme>ZN(L(y6YDFesm*Q}Xbr%6qC7 z)ORdDGOk661)Q%bor{&??daT2I9!V?ipM6r<08JFWz$BayW4KB3Nij0WPC_$Va(b0 zFR4C(ljGZ0n%g>;5_|^t?0&se)MqKPrUpKu@flk_B2D|r8ZlifNq->6d9ebbfzXC5IZbv|A{>}qVlB;PiIjH!Q z_?{tmEO|Vrqo|5KP<`}hgFw)NGeAIyu4jiYHj7j|OoW$#!##@UnQ*F+L`2u#B7p8Z zGV%w<$8o^$p~M0~9MK!{F@O4)sEHk_QN9$9B-5I9Sx3!yi(9~;h>-LH?;Y8dTBsuO zt^|TB2=#55$9L8n88`xZbGQF+a2jP`M`^Z|ZgIrECoBIdZLPyC>bozS*LN^H-r)v6 zcrmo^#YVif5|V7BVx3y7-PK z$XrIj1%d>7hUdc$rH5u$J`>V+NNW`N3_%_Td=_!X^ghbn!u{NM2jq9{!=^y$kX6j0 zEc;pbgXR$K{RpzyZHf8z!gAt0mZ<3HrV^W0*i0Pa!^0^vor63 zwdeZn>REvB`$tD2|W*{pHX^R6pR@MH2* z=TvanIr>#+h6+@K~%;(CP*U*~1M%L$K`aD{psFCQATQ7S)?82V^`g8OLBe#5Erl7DSr>3Un=fOL5(b>Y%=D()PpWv#yo3T5> zQA#Q*D$xW!pBFW-h}OGKPS+trLqo?fkav;CO;1;%NhZobX1zkND1}lZPg`t_jzHsy zbTct7TVnf!@!0JUBF54YNddCepvHOruDM`PiD|=&?U}oX^_~Za1E~uR2#i0U9zhZH zz2~5Ik4KIZo(iYoKkD&N_{$^bbHmZ={mbrOw-F*Oz0Z4WIuKsFLqHpZo1d>)>yaVy zKGq|&s14viYc0IjRUDvGcd#(0Tpn&@Zb9Ppi;y0kG z3^|4V{rW}KEJK1z+8+QyOTm?}1_496gleezGi!m#dOE|8m96-882bm{&@~RM@&YGO zNzTp~to7`Vur;vAOyI};pv@H(puf*~(Ed7n%4MYX<(+gpeLU#MK+2cI;koX308^x% z#bono0YvL8=$dSV;N2obMV-;bgRuu)NfMHh?t?RgfHuo%3V|ON7HlA==(&C&hpj)K$Fi%@bj1pMN~My zpJK3EI36IL|^!Slc2+J=J9CVJ|lV zdY*}C%<@qGMi7dgI~ZNIoG9XK9P9(^3oqQt>XNMY*4`6p+k*DYz=I1Q=jm7GoKFR^or$Zx zNGB-F&XxD(&70Cb+ZKH_pd)-1a8YHbhAPS8OU^mrR>9m|@GfosUEixkw$Dd7yC)Qo+n9MruxKg!c`|R*@Pb0Q?(h7#p#Y!mdEXy~H!n1}TmDqBJii zoQ^)O$Zagr=rO>O{q32Y+@AJ7-UQO)T?_-1vgPqK!5k~ulav+aCSvDb8^qK8D$D## zv#iHg{nAM2rZVZ&!0oV#0A$miMJ!PGnBa^6~fP6nA^3KviTLy3O$>r znO@*$$S=wacN~BDJ&p|s&3KggAfOY%H8HUfh5#^s{SxcIZ6)Bb1EuCrz$MH@D5rfCX-+u!!{ zCol)rGBxE!Vt--|TcelWWH>GwEaNMU3yfJKUz0^eFdu!&+{YQ%XW_j6ElTw@V zDepFTT#KouLh?+Vianqk)6X~)-?lW79p?p(Ccb}P<}f7m3^Y!1Q0x4F2}V;0i-~Dz zXlfpOWwg_88xA=1t(}uXmQqavcP?P}_36>a+iFA8T@b+B_Txe6xqfve`}ixjp#uHi zpy|>eSWti)zMcBSxnAI?;=2hW6cl{i8WBIB$dZRsi0B^#^TE)mvm+GSfN}uBTCsIQ z5goxt>BV;63tf@TkDB%$@Fc2OAKuIf6Q`RWY7*gty~KaND(aPt1;$K!6Tm_J*iXa; zvb=#L{k`go1F9R2Wuf`UEm&A5u2-eLY0#Jlmd4-C1MD<`$sQ*Nu8 zQ}C+ekdKV`@mXt9IA$qbF37tL|>{}5?mjIFFb z>N;-fk`yxPqtj-0d8^1042tBc%@Hs?1A{f|Z%f^&c|llOB}XAz!gh&L6ts$^#@E86m08+8 zv79r^jc>5xCB2=UIx+J`$*i(CFD2a4v2l(+X6v4cN_imGEAZ)s3>HV{GZmAQCIG>z zJ?Qz)c?N;W?<*(}ntAl>2tX%hX6CEoZ_Z5L5`F|mNrJxfs*upm>6!KmB8?-SuMuO8 z8xj3Xe@bV${b~&gCL5eS?X(mry#%P?AB;OhzX}E@a^IWaL^uOUH-z zvO1udnSVq$(%@+M(V%%@>>1?r_kooG@??blPY`n#vttLQ*Dzy;)f4Tos!)VbDP}t? zEpiL*8-c8(Yi2y0Xg)VD1>e*|kNN$CyBr$pev>eOS7)E+UX;QfrEa=9n=AE$^Mek; z)M2n@tD^IMNQT>z`ut$08WKuG1y<#Db2B2o5t3G>n`D74(}OsL?!nPS>n~fW73{cC{u&F?KiPRO zdAZcI(2fXe^2omlTKDAg|0o45XD_CxP#zkbiD5Ie?;@-}FkHjLBtAsZR*Z)ncJEXF zm~~sRR>jBYR=zBKw9+#?#se~%=n?GfP!tVrp++?G?%NY7HU6S}P=t8y@ zZt2kY4hwS3^0yO$Gz>Is0?s86+F-^s5=NT3F29G(E@}SHw+@J!MHgvctIt=zi$ISe zVbH6T5zl%-`-GK0GR{$<0~plnIik={au#BLJ>eq*4#lKTX@oC>^E&y|GVH$(8xOfo z`j5dELs|a&pqGAZ(9;CFZIwTtGA>Z}1eB4w+18`n;y7Y=#g&37mj`zjBReu3cIN>+ zLPwk9=1`9iq(ge_AWc6N&D{c=oSBMQFMlGEz9n_sIMK6Bz3ce}Dk87%T#QlL z>4iCRBfj}xBKl8xt^w5PKJbd7s-}9<*Ld_u8GjscOhgtTpg;*DI{T<>sv=M}C0#Rxm)w_Wp_U!rV1!V^8 zsAW<-1Gw2RG41U1x{Il*mKFxfLj~a;ivArx8W|)!Cu7pLcBp z%AP*!O3S_K%CH=5e(ma2$Rza`h@@9#K`qoRkmo0P5KNlBc<0Na-x&XKp_coO4Fr5_ zU#@E&xX(heE&%qBW%~1X!075ZBU7bZ+Yk24wpJKW%(JzDyCvBQf%b8jfL-YE0y!j{ zD?sowth*4HYt>5W5d!gBH1&bD*oj>;r_Rj8#9T9veifdsB7;IL^Qu5fuu2@7!WMp= zi^GD)o+pqIadPO=!g*b zOgHuG>ajhBnD+2ffu=7Ch_g(Y1j$oEJE^YA;#Nu*4x(;)ITLSN@SZx$t&z}m1%}36 zcP%7VYH-TAF!XYPwg%~&+hUT3Y_8)i^4$a^H5xhgilCM%xpLR;?-#o3bm(0+V%R*x zGA0ulJ@aPBJm`x6M*1rdA%fcGM-LxHbwFc)!L~v5W`6Jm?D--FP;v*H)BEz|jY|)I z!uhb?&hQW1ty1Ol(G2nmZLz$vKhV|>zRK(8)`C-O@A(Sdorwy-x2{u#dIS zj+J+V_!8&X;KsOVP(rdyx$Q4DQkNHkcRZW1DIf<&N7NFPe2GVAUwthq0#Qb&%T)a; zCjf0LwbhJ3GfoC<)jB|J%IoOpPdPckAkGZh1cd>kUl_$fYbwu{ATk9_ej`Nn3=D+E znKezb%D6d1JRTIq6c~_=R^y*pF!Pu4P^TRUY@s|J7j@r%;czEYbR3c|^Co3Gy*b9+ zf8P3?Q_Pbh1I;w)SHV9%*6y&N!6St;y5iuo^h6iDuJI(`lqH=nGCdIjz-|VLM8c05 zX(C#)Bh0tYHi1Tte;G1>wA10mi;4${K1Vx?zd<|7q1dl(R5>7E1#l6Fjm*$Sb#B== zLGhn{p_>dBJrITCYv$MxhZHaCOJZj~FpydAGw^Jt9;TF!^euQ~7YN0a7+n{oZm4nP zmzU>$#;n-foH_f!I=|q~t;I)0-R-OOcg|aJl-;{`-Zq+QTZRS9h1!nNY-dgf;#FsA zfg>mr;!tDHF|8B@ML&odkQ@OIE~T>lmmr$fB%g1kx!*U!Un#hlI-0U>*mW${z^H#?Zx(Fj(!hU*Q@m zY8sr_zUwNaKglR3XAU$?%9_^EA{aZed;&KET;oqMf;M&^()ce7cdoxwR#p}dQr-oC zB=G?%2=P-cD()y4i1mMiSbqq}Zwse&?@*oDIvF9Rjiz-cr_asJ8FTYLpIlU8?tP29~HRMpe13H$jW8H=m=Zc^j&dQXm(MmQp%o2GH5Goa&6u0Hg0xKPDy|7y1 zGPlZqpOL&!%Xj*$Y3oqgV+-E1DmtJrq)H*S-)Cl|z&u?Brvw5~LwG`$%4WW9TiZQd zzyg3~ZJg6nSrDL*zkj1gCJii62kXeVhyGWjrnap!eCO#1r#4bjLYH^Juq@))a7S2fa(B@=S1#+TKOzo)^7atIPf;%l z3YXn~;x5hAHj2~A{gUoiASA0A5FnQsVAK-RdaLZ`DEpJAoh3~TZZhegb8~lot0P=I z;ov6@j-4YVnRI$VYSdiNv>Rk=LOL_+Z#y>n= z%KE-wTDA_si4>KCOdU~?G0}@QV`@${>>v}mK7uIpZxXv>S0LPKRek=P^J0Z%GKIFG zVMj(&gU)r<-w(T9m#Z+buyjTt38Hqy|6q&j@Ko}$r*?cTs{f2(38ARyy651^BS5UW zOLN#cyqI%%0ZK3c22W|8@|gLQ{fVqhTDbiFJx1$j0hwzTs(sV+1C=RshE-#^gK*t+2h~39*;jseOYTniz z`nbLN)J$gVbbCl&0#w(aCo6laua%Jy5a}@>9b@T|^j$_J^*6amA3y45DcJ-_W$yFR zant$Nl8L*bB%d<|Jd`+rOyCQ>EC@XSb)m zXt*Q)2k7?y5D%VvWl;1KleG5O6c_`%OP1BOUyp@XIz>9vPUvX+&Y|*6e^QjBiQx>KcD6kXIl42DnUqmbGwjcIG;&?LZk_F|31?>R^M$it#Np6l z=j5lZuF2+%q1#LSzPozxF0GNF@&zfx>RvAc2#xe$nS6{yOrFN^ciyc0^0)TTuoL{| zSpG!2$bch_9{9Hp4e1xJ^&M@%iKVdpPyuy3``j__IMDQ9su2Y5_j-ul`$rq^r;oyiC0zy}yY`62<``JCg0fc6Pci`4Dz zn)qvAXsGMI#w?om(B|IdSU*9C?w3b8#sy00r7-^NZR$_AaL(EM_|4e>3=-XD7Xp>| zOc)l&)LfU~`#aTKm91FtJJ^kkF)E%PhRzg*<$`W*;1Sr*i5A^?Vp(kzC>aZOq54}9 zt+U=oppZ;%i;dZbN1XHkr7mMSCMPNeRXQ)+!*5AsI#+KS571=OBY?(LJ6VM2oSH^@ zM>c*e4MxiZUx`AP$5f96^`#$!O+tCo5VCK&ztLkuI1Zo4m)BP@2{;ds0OS%K^*X>X znj=GG@#m3k(PE87&=260&=KE=MGGwqC5X);oH@rqbwHxao>{{(hIO|PKOgzsW`pc4~5};Bt%4tb4%PWahn4AI;HjO4}21 z)PUw_>QxZX$|&Mc{uQcfXQ<=L+m20iAs{0))rtGgrXT`{xwlqbwX3qSsh zHb;LA0_@}_no}M?G`1H+#*k(85O_H+Q9gZ!=+S>cYYD&UPq=S%rml9%uMj3aUFL3` zM>TVo;`rsv#3e}1CH{TSeR^v7hA+CvnXG~@NiNFwbt+I@EzU+lk)3LK6NRde9_DPP z!YRrCstgK5Fydk!2)}N;D)GO~j&9QI@Khuc?DEpcyf(*_LD8OkgEwXciJqHNG{t0V zWh&g}2!F;c7A|jP4S}#&s@=P*CrbYW4>q$Hf>@1Yf1dZ#Jb-Yx94pHmv0W`!@0-cf zOY27Nc;As2emxvTZK0^~#gQ5`8;n#wBWhZ&haUL?ZnQ2ftA`!UFg*c6 z-7NA~i|7C(jfF-KJ38=;XyR5WZIqT4`K8U)czDiV4KjI6nC~X&JU=2Wo6w0lvnt)F<`P=qx(#B`z-bXd_GgI{ZOWu)unQct|g z>{v*wCKjaiWeX#NB!ViWCXHxWKg{7^%Yfct$l2v-TiM@%iq(#u@B6pXE? z82r^GhOsB3=aOdhz#U}W4H;*NSMPclnDornc0Dh=`bNwQ&j`(mHGhnVVjOXUti?Sz zB93+lSveN>lmOiif__+mPE*9DuAnSSh+59unI(lGOSd#d{x+tUJ5cwr+abE`zJHRO zXKti#ybOY{X@>1&1WqOL>eZ{-8T&H|y!=eBzW#ZR)y z?>%_HwAnm6Kpuep$wmfOtGG}t&o^oo7`4#mlL6aVUeoQxDScbsY8ZN>e(JF^&B6F9 zlLiaBsd~?cUS2g0P7`Y&gl+97l1}pi6c*4YR{8erTc9DELn&SH*JtTeQxmEA*oFV9 z)g}gG!n?c=4i2_3<4M~MT61#9IrO=aL__7T!g4zDw3Cl_NCn91c%tWi0w2$57}l8z z6wdQ0-;y?ka}-`7k5=KkdGic2i?%j%80fda937k^)QE?oC<8x%TQ`RaAkHP5J=RK- z{vQA4Y=)Upi*9AbRooJ%lW~o<_hO=gGl;j4F#IJ5&~~ml+1X{4m%jx?Fb^Ob(@hf} zQd7IY{d`~L{bFcG*1)IA+=M_35NZR028S0`at98WKLeeSXb%n4!&xcfaEAg%p?P0@ zl#$~(Qgp(wHOmOnz_~?#Om6_=-1*sYqY_6#PO)h*@?*=aSdd*_Ha><5jFj@GYksiu z|0j&UaO?S-W@kVLjF-ZpLYs+`9<6b{OEFT1oMj-sTw7l!JH!gY1%Gh#%NYTZ)(XVj5#amxu>v~})2r)tDt2V}Ly=P_{DE9Z(Jo=W>qT0?& z*pRzzmBIr93DAq8CDmHp)bn?dKFFaTgU;MxC-I4*$+E;BA$j?9kSfj`=mg_&w8X#> z#G7)<*i+)$>zHbt<*$P6tRX{lSX%w@?`(=X*QL`nY+}0SVvvaMdn0$p+^Gz0%*a}n z&7E94mr2|TniLp8fz7najgC@7iw7CJr3h~tmwa-Q!+}(OX`jCQFl76Ec=E+6I+QT7 z3FR#b_=LLS>VaO4?@IS=LwQLYHzA8`bn%7GQ%gZf(WJFCj+3CG*BpXwUJ(!#WsM&C zZP?&_b8+jMbWnZ$!-I{f7^`w^Q`6S>{sM(MI&X^(H&MX~r%yuvk>}55-BOl`NAIse z2K6(br3ltwrt?hhWaIml)5Rw<8n}ec4i>bG*UbRlT$T)@XOCJanBIIvK|SvID(xZ- zcifEtyLmCZJ7&te@cS@8!OICy3rNrJ-;W=}^jww@p^EtQYOspgL_-vWKJA6Wc@(@7 zTDNq}UvfF#qtwwcc*m3=KxbG#nX*6m_NS(aUz9g7F7sj8pVU;}2#PB3n7AG5ao3F66%;xE z`<8h&E$GCOCMgDy>P30nd1|1YMXIOVcOffjK6bDz>rf9fWb6@pGgQ5|=dlG!DTnGx zDqBf&_#wQ-z7GUWgO2Sc8XDc#wE1o}r*=?cIY0nK7xc*D)Ydn3*&J(9l+?Wof-JMD z+iZ@u5&z!UT?nUEbxnAz!XatZk?IvA1v_j)A_T_pf4J?7CaO=2rtkejWHX9#{ZCBx z-DR?Wsc=y_a8`e|g7Zo2`u{Z#uJruXiiH3Y8-F~hKOD3!){Hfb0z6sv@kziFph)gU z&6IunZIaCZ${TfIxg6HZNz~f>!*~e*@6{2Xg?={uAf|))#?4-)%@24pQmYk_Tk}&?PJx8* zEbLTeX@!0w0P4s`#59?gxZ~*PXtF1@E~bUk(OL@lug8CM5qhN49Z&k_6xc#()7>(u z57SB@=B&FPIhe+{IbyT#saQq7UVJ=q)6;uCFrC0Bc|-QW=2#`$(2xXdgv!rkNnffm zdrQFX1$y{cN^ZExTZ;`6PN!yHeqNAt0hzaKWABu~;SlhQb(Li+%MUy9wf(9qx?XMD zt_nFmcs;ipN9>dsF=bIb$4oj`kQiZ8Shj&^%57)enXAuytm6T3bl}yKAk*X2bYzNQ zLApIFEnX9Z<9V%0ZY)m(1O!;Mc&g+IvP;Z8HhD5y{j;5+ed<%G|F)~J@1g+4df;6S zSXN&Ch1<4e6LOC_a0Z`@q=jsTy#r>b2(a-Ba0rOQk;L{jt@%_sv_bJD}f;pNsRp z2AEr|yr9{mpTp|o0iiZhyhd`Y= z%O+Z`8xkI-2dIdI!Oic-y_JzpjnXmczb*4Szt;4=!w>Q1sq*+^CP^6f*m#X%0JZiW zno_;KlW37x6Ete&8@PxfOH{om(j*&2E~qXq%(|#g*9PYLay-)Kx6B;@k`YC0rZgGw zzz|#+`$TPj?b_$u&lWLnE`uryZuv>mTw$SN+riiBWNwyxGL~POk;55&AU^Bfvz6s4 zva|oBc@JFM0B~2YvkL5X%c~pZTurEs~(?*9~MM|gRru7eLj$`2gK7LxfK_uCrn%Yg;263@Y)fUe@eH1TRT z?A{`;9!3>4?kzE;KlYI^#OFbesFMnARelNojoPG3gvQra;$P;;O%&ujusv#}i-X8H zkKeBLMooii#B;!*=k|)EBpjkay0u@0%9fC5jSD^J_zyRBnLZ14{4E^G)zf>gt2+@C z=*TDUPj8Dcl$D)ywefSwSmRb0F6lDNFq^?r-yx15E=fp4vKuqU9^ZG+k{vxN4gB*F z8`|8BLIxxmx^lJ=@Izpalvx%N6@6|&Bpl~2RlR5aEiA02uGXJS<|lqlRP>;ZrgOMb z2f6fOvQk@aze~^;T=UArr^Q*G6V4#0EnH!;Z<&?D_L1ew?^jEDjcxL#yaNJZ8v+Wc6xQ^ogYyhr zdajl{?fv_E`uh5P)B;zofYd$18Cu#8lFmjGT0=@LvrKAgY61BD5y<<*@6)dI{zYOU zBI|l^@eHGxqwc~>zu^+D!-3v6efn}Ypk=8jbAPIrTius`%Oup9J+s|^0M-HTaQMH7 z^^Vgo#=xiU?&ZBd?}JhwV9@h^YpNk3J-xWZxK{H+07`jnv1uxMzLys^TZvK@G%E1{ zTg>z0WldiLZqHQ=*=v(Mfu|7j!SskDbVo*4Q1erE?p|@KZcITqScEBrz z+u^n)xQt#|VoP*jtHD*=M?+dz_Kv^5@+#1KV9;JQP!n{@DUHGw@azH&7KLKq?oS#H zVDHS6I1B8ED7Gxm6*qBna&|3e!nc?dyAK=>3!8nd)1uan*bG+5CVdxPH+SpUQr+6} ze;>n{y#1>R*$19t6O4C2nkN%mKJ;!iZJ5oF!iz@Z>pwz{nI!eXAy4*H{|^ zg&$H$#WiqjpS{FJSKm0qrbtrf99Bc#Z8yqZ9hBS2Y2NCZB5q?-*1onXbh*^co^okK z-*4fT94{-&$!ilHn~8m*Adv&MD5s;U{&$jV*5e0fE`4rs;JM7E;Zy5~y{E`)qrNfv%u<6vKy5e;s`7js%Z$m(gLjYX** zCdyiH&$(G1IRCuikoe8-!H%p1{!ApF0{B~ZkPh{W#~4NemZEzvf*%&4Xs53)66&XG zZeE%^Eo*)1)Gd5z>64O2z1_NT+_LQ;X(eKSe9W2iRmL-_j*|0jzs|i0tFJF_mwAj$ za0y@IEB9^OnHw<^tnHoB3nDyNK_%CLS$_*>v|s$CCJA^_Nf;sn;0_1hp3)8~=*YWs zztm3NP>`rSu1-!&W>Y93KW2XvR2n--R<$M+aI*8C6A8d!Q~YV#Tg>v$ZhUy8q9M=B zgQ4LY4^ssq&9*e$V`N8=-QfWfXpxM(Gs)68Y%oLmN&IXm60#w`p{QKgte2{s#T>1w@O6!B&sogRj`3pYRE5Im*BcBA`GJ9>a zfX=0TuM*9g52>-<-uP?C98^F5_E>UUt_Y)%PF1yaa-L4my4DVjPuN{T%_SbwV_TAq zQQ%%V%Wp&19s^+qIpi&Hvd3c|QxeQysNC0j%w+ZTYd*#fi8Q#U8&}xb-K}qYGHn5x z;Ga=(BRsc*C`pEeKP7Y|HL-d;tX9EHt@oF9B#Um>K`qxzJoVah8>=NV9ZMAeQ8CWi zin&k6_rvPSwJBC{$jO4ilIxinjp!pYiB4dXjHKEfHVOqKwvr}PZ z(mg$VGF7P$7mHGdQtx9hPcu?e3!j^R*+yBj$kp%lM%A31)UO6ID^JDSc4R*rsH8ns z;z|26w)GrhAnS-zaJ@;B_A~d>Fo_9?{Xf}s!LDxx$Vy0N{{f1I+@vSeZ0ScjH(+zpiF#q1>hnY9B{@I;@h_n!FMf)Ed&Scfp zum;&?1`eaJ&L)6UxMh8LhR6HpsDrrhalM3m=0hGV|4}oBuR2$p6a&nTkiV81m;N&x zno@a}gg(W{Mj3;?dkdTbG9OAT`gQCNC!!~mE3ZHlC>~g-+_JN_6L`%#(;mRi_2GZ* zb`6T45L%%|t;5T%G*uTEr2_!v^c*W2BA5x&b9RQDC#^2n!Yog(Z9tlI@2Nu$&a^1D zWU_8;Y}?nsmp;XU#zQs)A+(#eV9CwzHGM``*Id~OGMHd}0&$cy6zGQjRTl9T(O@7> mHySAZ5f=qBKK!4;Ga~Pj1%W;N)I0_P{;8>G-YZeE2>xHH^H971 diff --git a/icons/obj/items.dmi b/icons/obj/items.dmi index 819ce7883e4418e1c86a9ca74e8e84665959cb4a..09ae246998e8cdf11fa7f21e20ac08f62551da3b 100644 GIT binary patch delta 11896 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 delta 11515 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 delta 8354 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 Date: Mon, 14 Sep 2015 04:10:50 +0200 Subject: [PATCH 34/44] I forgot the freedom eagle --- .../clothing/spacesuits/miscellaneous.dm | 20 ++++++++++++++++++ icons/mob/suit.dmi | Bin 397295 -> 400030 bytes icons/obj/clothing/suits.dmi | Bin 130081 -> 130979 bytes 3 files changed, 20 insertions(+) diff --git a/code/modules/clothing/spacesuits/miscellaneous.dm b/code/modules/clothing/spacesuits/miscellaneous.dm index 489886d697f..e6946fa0ddd 100644 --- a/code/modules/clothing/spacesuits/miscellaneous.dm +++ b/code/modules/clothing/spacesuits/miscellaneous.dm @@ -174,3 +174,23 @@ desc = "An EVA suit specifically designed for the clown. SPESSHONK!" icon_state = "spaceclown_suit" item_state = "spaceclown_items" + +/obj/item/clothing/head/helmet/space/freedom + name = "eagle helmet" + desc = "An advanced, space-proof helmet. It appears to be modeled after an old-world eagle." + icon_state = "griffinhat" + item_state = "griffinhat" + armor = list(melee = 40, bullet = 40, laser = 30, energy = 25, bomb = 100, bio = 100, rad = 100) + max_heat_protection_temperature = FIRE_IMMUNITY_HELM_MAX_TEMP_PROTECT + unacidable = 1 + +/obj/item/clothing/suit/space/freedom + name = "eagle suit" + desc = "An advanced, light suit, fabricated from a mixture of synthetic feathers and space-resistant material. A gun holster appears to be intergrated into the suit and the wings appear to be stuck in 'freedom' mode." + icon_state = "freedom" + item_state = "freedom" + allowed = list(/obj/item/weapon/gun,/obj/item/ammo_box,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/restraints/handcuffs,/obj/item/weapon/tank/internals) + armor = list(melee = 40, bullet = 40, laser = 30,energy = 25, bomb = 100, bio = 100, rad = 100) + slowdown = 1 + max_heat_protection_temperature = FIRE_IMMUNITY_HELM_MAX_TEMP_PROTECT + unacidable = 1 diff --git a/icons/mob/suit.dmi b/icons/mob/suit.dmi index bdc4de8da2bd1674ecf5d93485e1f38faf8c56f4..7aa0bd96a1ba41af7a49e76002288f5205cb01b7 100644 GIT binary patch delta 5862 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 delta 3106 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 diff --git a/icons/obj/clothing/suits.dmi b/icons/obj/clothing/suits.dmi index 42b7407d87f0578f0965165607763015680fc41b..8db68ca02cfa1711e9fabcb451571b08b0327dc7 100644 GIT binary patch delta 18478 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 delta 17572 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 From 591f2747ca7c68588817bfc7f8bdad03c71271da Mon Sep 17 00:00:00 2001 From: Markolie Date: Mon, 14 Sep 2015 04:36:41 +0200 Subject: [PATCH 35/44] Further gun updates --- _maps/map_files/cyberiad/z2.dmm | 508 +++++++++--------- .../clothing/spacesuits/miscellaneous.dm | 4 +- .../projectiles/guns/projectile/automatic.dm | 22 +- .../projectiles/guns/projectile/shotgun.dm | 8 +- 4 files changed, 282 insertions(+), 260 deletions(-) diff --git a/_maps/map_files/cyberiad/z2.dmm b/_maps/map_files/cyberiad/z2.dmm index 867577c5a14..01765fad4b5 100644 --- a/_maps/map_files/cyberiad/z2.dmm +++ b/_maps/map_files/cyberiad/z2.dmm @@ -1600,219 +1600,220 @@ "EN" = (/obj/structure/rack,/obj/item/ammo_box/magazine/m10mm,/obj/item/ammo_box/magazine/m10mm,/obj/item/ammo_box/magazine/m10mm,/obj/item/ammo_box/magazine/m10mm,/obj/item/ammo_box/magazine/m10mm,/obj/item/ammo_box/magazine/m10mm,/obj/item/weapon/gun/projectile/automatic/pistol,/obj/item/weapon/gun/projectile/automatic/pistol{pixel_x = 3; pixel_y = -3},/obj/item/weapon/suppressor,/obj/item/weapon/suppressor{pixel_x = 3; pixel_y = -3},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) "EO" = (/obj/structure/rack,/obj/item/ammo_box/magazine/m12g,/obj/item/ammo_box/magazine/m12g,/obj/item/ammo_box/magazine/m12g/stun,/obj/item/ammo_box/magazine/m12g/stun,/obj/item/ammo_box/magazine/m12g/dragon,/obj/item/ammo_box/magazine/m12g/dragon,/obj/item/weapon/gun/projectile/automatic/shotgun/bulldog,/obj/item/weapon/gun/projectile/automatic/shotgun/bulldog{pixel_x = 3; pixel_y = -3},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) "EP" = (/obj/structure/rack,/obj/item/ammo_box/magazine/smgm45,/obj/item/ammo_box/magazine/smgm45,/obj/item/ammo_box/magazine/smgm45,/obj/item/ammo_box/magazine/smgm45,/obj/item/ammo_box/magazine/smgm45,/obj/item/ammo_box/magazine/smgm45,/obj/item/weapon/gun/projectile/automatic/c20r,/obj/item/weapon/gun/projectile/automatic/c20r{pixel_x = 3; pixel_y = -3},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) -"EQ" = (/obj/structure/rack,/obj/item/ammo_box/magazine/m75,/obj/item/ammo_box/magazine/m75,/obj/item/ammo_box/magazine/m75,/obj/item/ammo_box/magazine/m75,/obj/item/ammo_box/magazine/m75,/obj/item/ammo_box/magazine/m75,/obj/item/weapon/gun/projectile/automatic/gyropistol,/obj/item/weapon/gun/projectile/automatic/gyropistol{pixel_x = 3; pixel_y = -3},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) -"ER" = (/obj/structure/rack,/obj/item/ammo_box/magazine/m50,/obj/item/ammo_box/magazine/m50,/obj/item/ammo_box/magazine/m50,/obj/item/ammo_box/magazine/m50,/obj/item/ammo_box/magazine/m50,/obj/item/ammo_box/magazine/m50,/obj/item/weapon/gun/projectile/automatic/pistol/deagle,/obj/item/weapon/gun/projectile/automatic/pistol/deagle{pixel_x = 3; pixel_y = -3},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) -"ES" = (/obj/structure/rack,/obj/item/ammo_box/a357,/obj/item/ammo_box/a357,/obj/item/weapon/gun/projectile/revolver/mateba,/obj/item/weapon/gun/projectile/revolver/mateba{pixel_x = 3; pixel_y = -3},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) -"ET" = (/obj/structure/table,/obj/item/weapon/reagent_containers/food/snacks/grown/lemon,/obj/item/weapon/reagent_containers/food/snacks/grown/berries,/obj/item/weapon/reagent_containers/food/snacks/grown/banana,/obj/item/weapon/reagent_containers/food/snacks/grown/cherries,/obj/item/weapon/reagent_containers/food/snacks/grown/orange,/obj/item/weapon/reagent_containers/food/snacks/grown/corn,/obj/item/weapon/reagent_containers/food/snacks/grown/mushroom/amanita,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/admin) -"EU" = (/obj/structure/table,/obj/item/weapon/storage/box/beakers,/obj/item/weapon/reagent_containers/glass/beaker/bluespace,/obj/item/weapon/reagent_containers/glass/beaker/bluespace,/obj/item/weapon/reagent_containers/glass/beaker/bluespace,/obj/item/weapon/reagent_containers/glass/beaker/bluespace,/obj/item/weapon/storage/box/autoinjectors,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/admin) -"EV" = (/obj/structure/table,/obj/item/weapon/storage/box/syringes,/obj/item/device/assembly/igniter,/obj/item/device/assembly/igniter,/obj/item/device/assembly/igniter,/obj/item/device/assembly/igniter,/obj/item/device/assembly/timer,/obj/item/device/assembly/timer,/obj/item/device/assembly/timer,/obj/item/device/assembly/timer,/obj/item/weapon/grenade/chem_grenade/large,/obj/item/weapon/grenade/chem_grenade/large,/obj/item/weapon/grenade/chem_grenade/large,/obj/item/weapon/grenade/chem_grenade/large,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/admin) -"EW" = (/obj/structure/table,/obj/item/device/assembly/signaler,/obj/item/device/assembly/signaler,/obj/item/device/assembly/signaler,/obj/item/device/assembly/signaler,/obj/item/device/assembly/signaler,/obj/item/device/assembly/infra,/obj/item/device/assembly/infra,/obj/item/device/assembly/infra,/obj/item/device/assembly/infra,/obj/item/device/assembly/infra,/obj/item/device/assembly/prox_sensor,/obj/item/device/assembly/prox_sensor,/obj/item/device/assembly/prox_sensor,/obj/item/device/assembly/prox_sensor,/obj/item/device/assembly/prox_sensor,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/admin) -"EX" = (/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/turf/unsimulated/wall{dir = 4; icon = 'icons/turf/shuttle.dmi'; icon_state = "window5"; name = "window"; opacity = 0; tag = "icon-window5 (EAST)"},/area/admin) -"EY" = (/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/turf/unsimulated/wall{dir = 2; icon = 'icons/turf/shuttle.dmi'; icon_state = "window5"; name = "window"; opacity = 0; tag = "icon-window5"},/area/admin) -"EZ" = (/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id_tag = "ADMINCHEMLOCKDOWN"; name = "Security Doors"; opacity = 0},/obj/machinery/door/airlock/hatch{name = "Chem Lab"; req_access_txt = "0"},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/admin) -"Fa" = (/obj/structure/rack,/obj/item/ammo_box/magazine/m762,/obj/item/ammo_box/magazine/m762,/obj/item/ammo_box/magazine/m762,/obj/item/ammo_box/magazine/m762,/obj/item/weapon/gun/projectile/automatic/l6_saw,/obj/item/weapon/gun/projectile/automatic/l6_saw{pixel_x = 3; pixel_y = -3},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) -"Fb" = (/obj/structure/rack,/obj/item/weapon/gun/projectile/automatic/proto,/obj/item/weapon/gun/projectile/automatic/proto{pixel_x = 3; pixel_y = -3},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) -"Fc" = (/obj/structure/rack,/obj/item/ammo_box/magazine/m556,/obj/item/ammo_box/magazine/m556,/obj/item/ammo_box/magazine/m556,/obj/item/ammo_box/magazine/m556,/obj/item/ammo_box/magazine/m556,/obj/item/ammo_box/magazine/m556,/obj/item/ammo_box/a40mm,/obj/item/ammo_box/a40mm,/obj/item/ammo_box/a40mm,/obj/item/ammo_box/a40mm,/obj/item/weapon/gun/projectile/automatic/m90,/obj/item/weapon/gun/projectile/automatic/m90{pixel_x = 3; pixel_y = -3},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) -"Fd" = (/obj/structure/mirror{dir = 4; pixel_x = 0; pixel_y = -32},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) -"Fe" = (/obj/machinery/optable,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/admin) -"Ff" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/syndicate,/obj/item/weapon/shard,/obj/item/weapon/kitchenknife,/obj/item/weapon/storage/firstaid/tactical,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/admin) -"Fg" = (/obj/structure/table,/obj/item/weapon/gun/energy/pulse_rifle/pistol,/obj/machinery/door_control{desc = "A remote control switch to lock down the admin lab."; icon_state = "doorctrl0"; id = "ADMINCHEMLOCKDOWN"; name = "Lockdown"; pixel_y = 24; req_access_txt = "0"},/turf/unsimulated/floor{dir = 9; icon_state = "carpetside"},/area/admin) -"Fh" = (/turf/unsimulated/floor{dir = 1; icon_state = "carpetside"},/area/admin) -"Fi" = (/obj/machinery/computer/secure_data,/obj/item/weapon/paper/sop,/turf/unsimulated/floor{dir = 5; icon_state = "carpetside"},/area/admin) -"Fj" = (/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/turf/unsimulated/wall{dir = 8; icon = 'icons/turf/shuttle.dmi'; icon_state = "diagonalWall3"},/area/admin) -"Fk" = (/obj/effect/decal/cleanable/blood,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/admin) -"Fl" = (/obj/structure/table,/obj/item/stack/cable_coil,/obj/item/stack/rods,/obj/item/weapon/pen,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/admin) -"Fm" = (/obj/machinery/computer/communications,/turf/unsimulated/floor{dir = 8; icon_state = "carpetside"},/area/admin) -"Fn" = (/obj/structure/stool/bed/chair/office/dark,/turf/unsimulated/floor{icon_state = "carpet"; dir = 2},/area/admin) -"Fo" = (/obj/machinery/computer/med_data,/turf/unsimulated/floor{dir = 4; icon_state = "carpetside"},/area/admin) -"Fp" = (/obj/structure/rack,/obj/item/weapon/shield/energy,/obj/item/weapon/shield/energy{pixel_x = 3; pixel_y = -3},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) -"Fq" = (/obj/structure/rack,/obj/item/weapon/katana{pixel_x = 3; pixel_y = -3},/obj/item/weapon/katana,/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) -"Fr" = (/obj/structure/rack,/obj/item/weapon/melee/energy/sword,/obj/item/weapon/melee/energy/sword{pixel_x = 3; pixel_y = -3},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) -"Fs" = (/obj/structure/rack,/obj/machinery/recharger/wallcharger{pixel_x = 30},/obj/item/weapon/gun/energy/xray,/obj/item/weapon/gun/energy/xray{pixel_x = 3; pixel_y = -3},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) -"Ft" = (/obj/structure/table,/obj/random/toolbox,/obj/random/bomb_supply,/obj/machinery/syndicatebomb/badmin/clown,/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) -"Fu" = (/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) -"Fv" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/syndicate,/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) -"Fw" = (/obj/structure/table,/obj/item/weapon/rcd,/obj/item/weapon/rcd_ammo,/obj/item/weapon/rcd_ammo,/obj/item/weapon/storage/pill_bottle/random_drug_bottle,/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) -"Fx" = (/obj/structure/table,/obj/item/weapon/scalpel,/obj/item/weapon/bonesetter,/obj/item/weapon/bonegel,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/admin) -"Fy" = (/obj/structure/table,/obj/item/weapon/kitchen/utensil/fork,/obj/item/weapon/lighter,/obj/item/weapon/restraints/handcuffs/cable/red,/obj/item/weapon/storage/box/mousetraps,/obj/item/weapon/storage/fancy/cigarettes,/obj/item/weapon/pen,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/admin) -"Fz" = (/obj/structure/table,/obj/structure/window/reinforced,/obj/item/weapon/paper_bin,/obj/item/weapon/pen,/turf/unsimulated/floor{dir = 10; icon_state = "carpetside"},/area/admin) -"FA" = (/obj/structure/table,/obj/machinery/door/window/southleft{name = "security checkpoint"; req_access_txt = "0"},/turf/unsimulated/floor{dir = 2; icon_state = "carpetside"},/area/admin) -"FB" = (/obj/structure/table,/obj/structure/window/reinforced,/obj/machinery/recharger,/turf/unsimulated/floor{dir = 6; icon_state = "carpetside"},/area/admin) -"FC" = (/obj/machinery/recharger/wallcharger{pixel_x = 30},/obj/structure/rack,/obj/item/weapon/gun/energy/pulse_rifle/pistol/m1911,/obj/item/weapon/gun/energy/pulse_rifle/pistol/m1911{pixel_x = 3; pixel_y = -3},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) -"FD" = (/obj/structure/table,/obj/item/weapon/tank/oxygen/yellow,/obj/random/bomb_supply,/obj/item/clothing/under/rebeloutfit,/obj/item/clothing/suit/poncho/ponchoshame,/obj/item/clothing/head/sombrero/shamebrero,/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) -"FE" = (/obj/machinery/door/airlock/hatch{name = "Tool Storage"; req_access_txt = "0"},/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) -"FF" = (/obj/structure/table,/obj/item/weapon/FixOVein,/obj/item/weapon/retractor,/obj/item/weapon/cautery,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/admin) -"FG" = (/obj/structure/kitchenspike,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/admin) -"FH" = (/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/turf/unsimulated/wall{dir = 2; icon = 'icons/turf/shuttle.dmi'; icon_state = "window5_end"; name = "window"; opacity = 0; tag = "icon-window5_end"},/area/admin) -"FI" = (/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/turf/unsimulated/wall{dir = 2; icon = 'icons/turf/shuttle.dmi'; icon_state = "window5_mid"; name = "window"; opacity = 0; tag = "icon-window5_mid"},/area/admin) -"FJ" = (/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/turf/unsimulated/wall{dir = 1; icon = 'icons/turf/shuttle.dmi'; icon_state = "window5_end"; name = "window"; opacity = 0; tag = "icon-window5_end (NORTH)"},/area/admin) -"FK" = (/turf/simulated/wall/r_wall,/area/adminconstruction) -"FL" = (/obj/structure/rack,/obj/item/weapon/gun/energy/meteorgun,/obj/item/weapon/gun/energy/meteorgun{pixel_x = 3; pixel_y = -3},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) -"FM" = (/obj/structure/rack,/obj/item/weapon/twohanded/knighthammer{pixel_x = -3; pixel_y = 3},/obj/item/weapon/twohanded/mjollnir,/obj/item/weapon/twohanded/singularityhammer{pixel_x = 3; pixel_y = -3},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) -"FN" = (/obj/structure/rack,/obj/item/weapon/gun/energy/crossbow,/obj/item/weapon/gun/energy/crossbow{pixel_x = 3; pixel_y = -3},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) -"FO" = (/obj/machinery/recharger/wallcharger{pixel_x = 30},/obj/structure/rack,/obj/item/weapon/gun/energy/pulse_rifle,/obj/item/weapon/gun/energy/pulse_rifle{pixel_x = 3; pixel_y = -3},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) -"FP" = (/obj/structure/table,/obj/random/tool,/obj/item/clothing/gloves/color/yellow,/obj/item/weapon/pinpointer/advpinpointer,/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) -"FQ" = (/obj/structure/table,/obj/item/weapon/grenade/syndieminibomb{pixel_x = 4; pixel_y = 2; pixel_z = 0},/obj/item/weapon/grenade/syndieminibomb{pixel_x = -1},/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) -"FR" = (/obj/structure/table,/obj/machinery/recharger{pixel_y = 0},/obj/item/toy/cards/deck/syndicate/black,/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) -"FS" = (/obj/structure/table,/obj/item/weapon/surgicaldrill,/obj/item/stack/medical/advanced/bruise_pack,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/admin) -"FT" = (/obj/structure/table,/obj/item/weapon/hemostat,/obj/item/weapon/circular_saw,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/admin) -"FU" = (/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id_tag = "ADMINCHEMLOCKDOWN"; name = "Security Doors"; opacity = 0},/obj/machinery/door/airlock/hatch{desc = "Uh oh."; name = "Operating Theater"; req_access_txt = "0"},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/admin) -"FV" = (/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/turf/unsimulated/wall{dir = 4; icon = 'icons/turf/shuttle.dmi'; icon_state = "diagonalWall3"},/area/admin) -"FW" = (/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/admin) -"FX" = (/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/turf/unsimulated/wall{dir = 2; icon = 'icons/turf/shuttle.dmi'; icon_state = "diagonalWall3"},/area/admin) -"FY" = (/turf/simulated/floor{dir = 8; icon_state = "neutralfull"},/area/adminconstruction) -"FZ" = (/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/turf/unsimulated/wall{dir = 4; icon = 'icons/turf/shuttle.dmi'; icon_state = "diagonalWall3"},/area/admin) -"Ga" = (/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/turf/unsimulated/wall{dir = 2; icon = 'icons/turf/shuttle.dmi'; icon_state = "diagonalWall3"},/area/admin) -"Gb" = (/obj/machinery/door/airlock/hatch{desc = "You've heard rumors of the horrors that go on within this lab."; name = "Laboratory (DANGER!)"; req_access_txt = "0"},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) -"Gc" = (/obj/machinery/computer/ordercomp,/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) -"Gd" = (/obj/machinery/computer/crew,/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) -"Ge" = (/obj/machinery/computer/security{network = list("SS13","Telecomms","Research Outpost","Mining Outpost","ERT","CentCom","Thunderdome")},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) -"Gf" = (/obj/machinery/computer/rdservercontrol{badmin = 1; name = "Master R&D Server Controller"},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) -"Gg" = (/obj/machinery/r_n_d/server/centcom,/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) -"Gh" = (/obj/structure/table,/obj/item/weapon/card/id/silver{pixel_x = -3; pixel_y = -3},/obj/item/weapon/card/id/captains_spare,/obj/item/weapon/card/id/fluff/lifetime{pixel_x = 3; pixel_y = 3},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) -"Gi" = (/obj/structure/table,/obj/item/weapon/card/id/centcom{pixel_x = -3; pixel_y = -3},/obj/item/weapon/card/id{pixel_x = 0; pixel_y = 0},/obj/item/weapon/card/id/admin{pixel_x = 3; pixel_y = 3},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) -"Gj" = (/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/turf/unsimulated/wall{dir = 2; icon = 'icons/turf/shuttle.dmi'; icon_state = "window5"; name = "window"; opacity = 0; tag = "icon-window5"},/area/admin) -"Gk" = (/obj/structure/stool/bed/chair/comfy/black,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/admin) -"Gl" = (/obj/machinery/computer/card,/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) -"Gm" = (/obj/structure/stool/bed/chair{dir = 1},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) -"Gn" = (/obj/machinery/door/airlock/glass{name = "Computer Hub"; req_access_txt = "0"},/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id_tag = "ADMINLOCKDOWN"; name = "Security Doors"; opacity = 0},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) -"Go" = (/obj/effect/landmark{name = "aroomwarp"; tag = ""},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) -"Gp" = (/obj/machinery/door/airlock/hatch{desc = "For all your shady business needs"; name = "Gambling Den"; req_access_txt = "0"},/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/admin) -"Gq" = (/obj/structure/table/woodentable,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/admin) -"Gr" = (/obj/structure/table/woodentable,/obj/item/toy/cards/deck/syndicate,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/admin) -"Gs" = (/obj/structure/table/woodentable,/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/devilskiss,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/admin) -"Gt" = (/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/turf/unsimulated/wall{desc = "This window appears to be reinforced, it looks nearly impossible to break."; dir = 8; icon = 'icons/turf/shuttle.dmi'; icon_state = "window5_end"; name = "window"; opacity = 0; tag = "icon-window5_end (WEST)"},/area/admin) -"Gu" = (/obj/machinery/computer/artillerycontrol{luminosity = 255},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) -"Gv" = (/obj/structure/stool/bed/chair{dir = 8},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) -"Gw" = (/obj/item/weapon/stool,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/admin) -"Gx" = (/obj/structure/table/woodentable,/obj/item/weapon/lighter/zippo/fluff/naples_1,/obj/item/weapon/storage/fancy/cigarettes/dromedaryco,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/admin) -"Gy" = (/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/turf/unsimulated/wall{desc = "This window appears to be reinforced, it looks nearly impossible to break."; dir = 4; icon = 'icons/turf/shuttle.dmi'; icon_state = "window5_end"; name = "window"; opacity = 0; tag = "icon-window5 (EAST)"},/area/admin) -"Gz" = (/obj/machinery/computer/communications,/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) -"GA" = (/obj/structure/stool/bed/chair,/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) -"GB" = (/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/turf/unsimulated/wall{dir = 1; icon = 'icons/turf/shuttle.dmi'; icon_state = "diagonalWall3"},/area/admin) -"GC" = (/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/turf/unsimulated/wall{dir = 8; icon = 'icons/turf/shuttle.dmi'; icon_state = "diagonalWall3"},/area/admin) -"GD" = (/obj/machinery/computer/message_monitor,/obj/item/weapon/paper/monitorkey,/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) -"GE" = (/obj/machinery/computer/atmos_alert,/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) -"GF" = (/obj/machinery/computer/secure_data,/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) -"GG" = (/obj/machinery/computer/account_database{name = "Admin Accounts Database"},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) -"GH" = (/obj/structure/table,/obj/item/weapon/gun/projectile/automatic/pistol,/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) -"GI" = (/obj/structure/table,/obj/machinery/door_control{desc = "A remote control switch to lock down external access to the admin room."; icon_state = "doorctrl0"; id = "ADMINLOCKDOWN"; name = "Lockdown"; pixel_y = 0; req_access_txt = "0"},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) -"GJ" = (/obj/structure/table,/obj/item/weapon/storage/fancy/cigarettes/syndicate,/obj/item/weapon/reagent_containers/food/drinks/cans/adminbooze,/obj/item/weapon/reagent_containers/food/drinks/cans/badminbrew,/obj/item/weapon/reagent_containers/food/drinks/cans/madminmalt,/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) -"GK" = (/obj/machinery/door/airlock/hatch{desc = "Danger: May contain robustness"; name = "Dojo"; req_access_txt = "0"},/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) -"GL" = (/obj/machinery/door/airlock/glass{name = "Shuttle Bay"; req_access_txt = "0"},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) -"GM" = (/obj/structure/showcase,/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) -"GN" = (/obj/item/weapon/storage/toolbox/syndicate{desc = "A powerful relic many men worked long and hard to keep safe and away from the forces of evil."; force = 1e+008; name = "toolbox of robustness"},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/table/woodentable,/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) -"GO" = (/turf/unsimulated/floor{icon_state = "gcircuit"},/area/admin) -"GP" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/item/weapon/grenade/clusterbuster/smoke,/obj/structure/table/woodentable,/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) -"GQ" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/structure/table/woodentable,/obj/item/weapon/sleeping_carp_scroll,/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) -"GR" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/structure/table/woodentable,/obj/item/weapon/twohanded/bostaff,/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) -"GS" = (/obj/structure/ninjatele{pixel_x = -28},/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) -"GT" = (/obj/structure/ninjatele{pixel_x = 28},/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) -"GU" = (/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/turf/unsimulated/wall{dir = 1; icon = 'icons/turf/shuttle.dmi'; icon_state = "diagonalWall3"},/area/admin) -"GV" = (/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/turf/unsimulated/wall{dir = 8; icon = 'icons/turf/shuttle.dmi'; icon_state = "diagonalWall3"},/area/admin) -"GW" = (/obj/structure/stool/bed,/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) -"GX" = (/obj/effect/decal/cleanable/blood,/obj/structure/toilet{dir = 8},/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) -"GY" = (/obj/effect/decal/cleanable/fungus,/turf/unsimulated/wall{tag = "icon-wall3 (EAST)"; icon = 'icons/turf/shuttle.dmi'; icon_state = "wall3"; dir = 4},/area/admin) -"GZ" = (/turf/unsimulated/floor{icon_state = "engine"},/obj/structure/window/reinforced{dir = 1},/turf/unsimulated/wall{dir = 1; icon = 'icons/turf/shuttle.dmi'; icon_state = "diagonalWall3"},/area/admin) -"Ha" = (/obj/structure/window/reinforced{dir = 1},/turf/unsimulated/floor{icon_state = "engine"},/area/admin) -"Hb" = (/obj/machinery/door/window{dir = 1; name = "Suit Storage"; req_access_txt = "0"},/turf/unsimulated/floor{icon_state = "engine"},/area/admin) -"Hc" = (/turf/unsimulated/floor{icon_state = "engine"},/obj/structure/window/reinforced{dir = 1},/turf/unsimulated/wall{dir = 8; icon = 'icons/turf/shuttle.dmi'; icon_state = "diagonalWall3"},/area/admin) -"Hd" = (/obj/structure/window/reinforced,/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) -"He" = (/obj/machinery/door/window/southleft{name = "Cell B"; req_access_txt = "101"},/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) -"Hf" = (/obj/structure/rack,/obj/item/clothing/suit/space/space_ninja,/turf/unsimulated/floor{icon_state = "engine"},/area/admin) -"Hg" = (/turf/unsimulated/floor{icon_state = "engine"},/area/admin) -"Hh" = (/obj/structure/rack,/obj/item/clothing/head/helmet/space/space_ninja,/turf/unsimulated/floor{icon_state = "engine"},/area/admin) -"Hi" = (/turf/unsimulated/wall,/area/tdome) -"Hj" = (/turf/unsimulated/wall{desc = "The door appears to be locked tightly."; icon = 'icons/obj/doors/Doorhatchele.dmi'; icon_state = "door_closed"; name = "Locked Door"},/area/tdome) -"Hk" = (/obj/machinery/iv_drip,/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) -"Hl" = (/obj/structure/stool/bed/chair,/obj/effect/decal/cleanable/blood,/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) -"Hm" = (/obj/machinery/vending/medical,/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) -"Hn" = (/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/turf/unsimulated/wall{dir = 4; icon = 'icons/turf/shuttle.dmi'; icon_state = "diagonalWall3"},/area/admin) -"Ho" = (/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/turf/unsimulated/wall{dir = 2; icon = 'icons/turf/shuttle.dmi'; icon_state = "diagonalWall3"},/area/admin) -"Hp" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/box/handcuffs,/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) -"Hq" = (/obj/structure/table/reinforced,/obj/item/clothing/suit/straight_jacket,/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) -"Hr" = (/obj/structure/table/reinforced,/obj/item/clothing/glasses/sunglasses/blindfold,/obj/item/clothing/mask/muzzle,/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) -"Hs" = (/turf/unsimulated/floor{icon_state = "engine"},/turf/unsimulated/wall{dir = 4; icon = 'icons/turf/shuttle.dmi'; icon_state = "window5"; name = "window"; opacity = 0; tag = "icon-window5 (EAST)"},/area/admin) -"Ht" = (/obj/structure/rack,/obj/item/clothing/gloves/space_ninja,/turf/unsimulated/floor{icon_state = "engine"},/area/admin) -"Hu" = (/obj/structure/rack,/obj/item/weapon/katana/energy,/obj/item/clothing/mask/gas/voice/space_ninja,/turf/unsimulated/floor{icon_state = "engine"},/area/admin) -"Hv" = (/obj/structure/rack,/obj/item/clothing/shoes/space_ninja,/turf/unsimulated/floor{icon_state = "engine"},/area/admin) -"Hw" = (/obj/structure/closet/secure_closet/bar{req_access = null; req_access_txt = "112"},/turf/unsimulated/floor{icon_state = "white"},/area/tdome) -"Hx" = (/turf/unsimulated/floor{icon_state = "white"},/area/tdome) -"Hy" = (/obj/machinery/gibber,/turf/unsimulated/floor{icon_state = "white"},/area/tdome) -"Hz" = (/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/turf/unsimulated/wall{dir = 4; icon = 'icons/turf/shuttle.dmi'; icon_state = "window5"; name = "window"; opacity = 0; tag = "icon-window5 (EAST)"},/area/admin) -"HA" = (/obj/machinery/door/airlock/hatch{desc = "Uh oh. You'd better hope you aren't going in here!"; name = "Prisoner Treatment"},/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) -"HB" = (/obj/machinery/door/airlock/hatch{desc = "Uh oh. You'd better hope you aren't going in here!"; name = "Detainment"},/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) -"HC" = (/turf/unsimulated/floor{icon_state = "engine"},/turf/unsimulated/wall{dir = 2; icon = 'icons/turf/shuttle.dmi'; icon_state = "window5"; name = "window"; opacity = 0; tag = "icon-window5"},/area/admin) -"HD" = (/obj/machinery/vending/cigarette,/turf/unsimulated/floor{tag = "icon-redbluefull (WEST)"; icon_state = "redbluefull"; dir = 8},/area/tdome/tdomeobserve) -"HE" = (/obj/structure/table,/obj/item/weapon/reagent_containers/food/drinks/cans/beer,/obj/item/weapon/reagent_containers/food/drinks/cans/beer,/obj/item/weapon/reagent_containers/food/drinks/cans/beer,/obj/item/weapon/lighter/zippo,/obj/item/weapon/storage/fancy/cigarettes,/turf/unsimulated/floor{tag = "icon-redbluefull (WEST)"; icon_state = "redbluefull"; dir = 8},/area/tdome/tdomeobserve) -"HF" = (/obj/structure/table{icon_state = "tabledir"; dir = 2},/obj/item/weapon/reagent_containers/food/drinks/cans/cola,/turf/unsimulated/floor{tag = "icon-redbluefull (WEST)"; icon_state = "redbluefull"; dir = 8},/area/tdome/tdomeobserve) -"HG" = (/obj/structure/reagent_dispensers/beerkeg,/turf/unsimulated/floor{tag = "icon-redbluefull (WEST)"; icon_state = "redbluefull"; dir = 8},/area/tdome/tdomeobserve) -"HH" = (/obj/machinery/computer/security/telescreen{desc = "Used for watching the Thunderdome."; name = "Thunderdome Telescreen"; network = list("Thunderdome"); pixel_y = 30},/turf/unsimulated/floor{tag = "icon-redbluefull (WEST)"; icon_state = "redbluefull"; dir = 8},/area/tdome/tdomeobserve) -"HI" = (/turf/unsimulated/floor{tag = "icon-redbluefull (WEST)"; icon_state = "redbluefull"; dir = 8},/area/tdome/tdomeobserve) -"HJ" = (/obj/machinery/vending/coffee,/turf/unsimulated/floor{tag = "icon-redbluefull (WEST)"; icon_state = "redbluefull"; dir = 8},/area/tdome/tdomeobserve) -"HK" = (/obj/structure/table/reinforced,/obj/item/weapon/melee/classic_baton/telescopic,/obj/item/weapon/paper/Court,/obj/item/weapon/pen,/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) -"HL" = (/obj/structure/table/reinforced,/obj/item/weapon/scalpel,/obj/item/weapon/storage/box/syndie_kit/mindslave,/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) -"HM" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/box/mousetraps,/obj/item/weapon/storage/box/trackimp,/obj/item/weapon/storage/box/syndie_kit/imp_explosive,/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) -"HN" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/box/flashbangs,/obj/item/weapon/storage/box/flashes,/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) -"HO" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/box/grenades,/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) -"HP" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/box/teargas,/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) -"HQ" = (/obj/structure/closet/secure_closet/freezer/meat{req_access_txt = "112"},/turf/unsimulated/floor{icon_state = "white"},/area/tdome) -"HR" = (/obj/structure/closet/secure_closet/freezer/fridge{req_access_txt = "112"},/turf/unsimulated/floor{icon_state = "white"},/area/tdome) -"HS" = (/obj/structure/stool/bed/chair,/obj/effect/landmark{name = "tdomeobserve"},/turf/unsimulated/floor{tag = "icon-redbluefull (WEST)"; icon_state = "redbluefull"; dir = 8},/area/tdome/tdomeobserve) -"HT" = (/obj/machinery/vending/snack,/turf/unsimulated/floor{tag = "icon-redbluefull (WEST)"; icon_state = "redbluefull"; dir = 8},/area/tdome/tdomeobserve) -"HU" = (/obj/structure/window/reinforced{dir = 1; layer = 2.9},/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) -"HV" = (/obj/machinery/door/window{dir = 1; name = "Cell A"; req_access_txt = "101"},/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) -"HW" = (/obj/structure/table{icon_state = "tabledir"; dir = 9},/obj/item/weapon/storage/box/donkpockets{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/box/donkpockets{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/box/donkpockets{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/box/donkpockets{pixel_x = 3; pixel_y = 3},/turf/unsimulated/floor{icon_state = "white"},/area/tdome) -"HX" = (/obj/structure/table,/obj/machinery/kitchen_machine/microwave/upgraded,/turf/unsimulated/floor{icon_state = "white"},/area/tdome) -"HY" = (/obj/structure/table/reinforced,/turf/unsimulated/floor{icon_state = "white"},/area/tdome) -"HZ" = (/obj/item/device/camera,/turf/unsimulated/floor{tag = "icon-redbluefull (WEST)"; icon_state = "redbluefull"; dir = 8},/area/tdome/tdomeobserve) -"Ia" = (/obj/structure/toilet{dir = 8},/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) -"Ib" = (/obj/structure/rack,/obj/item/clothing/under/color/red,/obj/item/clothing/shoes/brown,/obj/item/weapon/grenade/smokebomb,/obj/item/weapon/legcuffs/beartrap,/obj/item/weapon/sleeping_carp_scroll,/obj/item/weapon/twohanded/bostaff,/turf/unsimulated/floor{icon_state = "dark"},/area/tdome/arena) -"Ic" = (/turf/unsimulated/wall/fakeglass{tag = "icon-fakewindows (WEST)"; icon_state = "fakewindows"; dir = 8},/area/tdome) -"Id" = (/turf/unsimulated/wall/fakeglass{tag = "icon-fakewindows2 (WEST)"; icon_state = "fakewindows2"; dir = 8},/area/tdome) -"Ie" = (/turf/unsimulated/wall/fakeglass{tag = "icon-fakewindows (EAST)"; icon_state = "fakewindows"; dir = 4},/area/tdome) -"If" = (/obj/structure/rack,/obj/item/clothing/under/color/green,/obj/item/clothing/shoes/brown,/obj/item/weapon/grenade/smokebomb,/obj/item/weapon/legcuffs/beartrap,/obj/item/weapon/sleeping_carp_scroll,/obj/item/weapon/twohanded/bostaff,/turf/unsimulated/floor{icon_state = "dark"},/area/tdome/arena) -"Ig" = (/obj/machinery/door/poddoor{id_tag = "thunderdomeaxe"; name = "Axe Supply"},/turf/unsimulated/floor{icon_state = "dark"},/area/tdome/arena) -"Ih" = (/obj/structure/rack,/obj/item/clothing/under/color/red,/obj/item/clothing/shoes/brown,/obj/item/clothing/suit/armor/tdome/red,/obj/item/clothing/head/helmet/thunderdome,/obj/item/weapon/melee/energy/sword/red,/turf/unsimulated/floor{icon_state = "dark"},/area/tdome/arena) -"Ii" = (/obj/machinery/door/poddoor{id_tag = "thunderdomegen"; name = "General Supply"},/turf/unsimulated/floor{icon_state = "dark"},/area/tdome/arena) -"Ij" = (/turf/unsimulated/floor{name = "plating"},/area/tdome/tdome2) -"Ik" = (/obj/machinery/door/poddoor{id_tag = "thunderdome"; name = "Thunderdome Blast Door"},/turf/unsimulated/floor{name = "plating"},/area/tdome/arena) -"Il" = (/turf/simulated/floor{icon_state = "red"; dir = 8},/area/tdome/arena) -"Im" = (/turf/simulated/floor{icon_state = "green"; dir = 4},/area/tdome/arena) -"In" = (/turf/unsimulated/floor{name = "plating"},/area/tdome/tdome1) -"Io" = (/obj/structure/rack,/obj/item/clothing/under/color/green,/obj/item/clothing/shoes/brown,/obj/item/clothing/suit/armor/tdome/green,/obj/item/clothing/head/helmet/thunderdome,/obj/item/weapon/melee/energy/sword/green,/turf/unsimulated/floor{icon_state = "dark"},/area/tdome/arena) -"Ip" = (/obj/machinery/door/airlock/hatch{name = "Teleporter Access"; req_access_txt = "0"},/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id_tag = "ADMINLOCKDOWN"; name = "Security Doors"; opacity = 0},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) -"Iq" = (/obj/effect/landmark{name = "tdome2"},/turf/unsimulated/floor{name = "plating"},/area/tdome/tdome2) -"Ir" = (/obj/effect/landmark{name = "tdome1"},/turf/unsimulated/floor{name = "plating"},/area/tdome/tdome1) -"Is" = (/obj/structure/rack,/obj/item/weapon/tank/jetpack/oxygen,/obj/item/weapon/tank/jetpack/oxygen,/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) -"It" = (/obj/structure/rack,/obj/item/clothing/suit/space,/obj/item/clothing/suit/space,/obj/item/clothing/mask/breath,/obj/item/clothing/mask/breath,/obj/item/clothing/head/helmet/space,/obj/item/clothing/head/helmet/space,/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) -"Iu" = (/obj/machinery/camera{pixel_x = 11; pixel_y = -9; network = list("Thunderdome"); c_tag = "Thunderdome Red Team"},/obj/effect/landmark{name = "tdome2"},/turf/unsimulated/floor{name = "plating"},/area/tdome/tdome2) -"Iv" = (/turf/simulated/floor/bluegrid,/area/tdome/arena) -"Iw" = (/obj/machinery/flasher{id = "flash"; name = "Thunderdome Flash"},/turf/simulated/floor/bluegrid,/area/tdome/arena) -"Ix" = (/obj/machinery/camera{pixel_x = 12; pixel_y = -10; network = list("Thunderdome"); c_tag = "Thunderdome Green Team"},/obj/effect/landmark{name = "tdome1"},/turf/unsimulated/floor{name = "plating"},/area/tdome/tdome1) -"Iy" = (/obj/machinery/camera{pixel_x = 10; network = list("Thunderdome"); c_tag = "Thunderdome Arena"},/turf/simulated/floor/bluegrid,/area/tdome/arena) -"Iz" = (/obj/structure/table,/obj/random/powercell,/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) -"IA" = (/obj/structure/table,/obj/random/tool,/obj/random/bomb_supply,/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) -"IB" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/mechanical,/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) -"IC" = (/obj/structure/table,/obj/random/technology_scanner,/obj/random/tech_supply,/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) -"ID" = (/obj/machinery/door/poddoor{id_tag = "thunderdomehea"; name = "Heavy Supply"},/turf/unsimulated/floor{icon_state = "dark"},/area/tdome/arena) -"IE" = (/obj/structure/table,/obj/item/clothing/gloves/color/yellow,/obj/random/bomb_supply,/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) -"IF" = (/obj/machinery/computer/teleporter,/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) -"IG" = (/obj/machinery/teleport/station,/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) -"IH" = (/obj/machinery/teleport/hub/upgraded,/turf/unsimulated/floor{tag = "icon-delivery"; icon_state = "delivery"},/area/admin) -"II" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/electrical,/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) -"IJ" = (/obj/structure/rack,/obj/item/clothing/under/color/red,/obj/item/clothing/shoes/brown,/obj/item/clothing/suit/armor/vest,/obj/item/clothing/head/helmet/swat,/obj/item/weapon/gun/energy/laser,/obj/item/weapon/shield/energy,/obj/machinery/recharger/wallcharger{pixel_x = 3; pixel_y = -30},/turf/unsimulated/floor{icon_state = "dark"},/area/tdome/arena) -"IK" = (/obj/structure/rack,/obj/item/clothing/under/color/green,/obj/item/clothing/shoes/brown,/obj/item/clothing/suit/armor/vest,/obj/item/clothing/head/helmet/swat,/obj/item/weapon/gun/energy/laser,/obj/item/weapon/shield/energy,/obj/machinery/recharger/wallcharger{pixel_x = 3; pixel_y = -30},/turf/unsimulated/floor{icon_state = "dark"},/area/tdome/arena) -"IL" = (/turf/unsimulated/floor{tag = "icon-redyellowfull (NORTHEAST)"; icon_state = "redyellowfull"; dir = 5},/area/tdome/tdomeadmin) -"IM" = (/obj/structure/stool/bed/chair{dir = 1},/obj/effect/landmark{name = "tdomeadmin"},/turf/unsimulated/floor{tag = "icon-redyellowfull (NORTHEAST)"; icon_state = "redyellowfull"; dir = 5},/area/tdome/tdomeadmin) -"IN" = (/obj/structure/table,/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/devilskiss,/turf/unsimulated/floor{tag = "icon-redyellowfull (NORTHEAST)"; icon_state = "redyellowfull"; dir = 5},/area/tdome/tdomeadmin) -"IO" = (/obj/structure/stool/bed/chair/comfy/black{dir = 1},/turf/unsimulated/floor{tag = "icon-redyellowfull (NORTHEAST)"; icon_state = "redyellowfull"; dir = 5},/area/tdome/tdomeadmin) -"IP" = (/obj/structure/table,/obj/machinery/door_control{desc = "A remote control switch for port-side blast doors."; icon_state = "doorctrl0"; id = "thunderdome"; name = "Main Blast Doors"; pixel_x = -3; pixel_y = 0; req_access_txt = "104"},/turf/unsimulated/floor{tag = "icon-redyellowfull (NORTHEAST)"; icon_state = "redyellowfull"; dir = 5},/area/tdome/tdomeadmin) -"IQ" = (/obj/machinery/computer/security/telescreen{desc = "Used for watching the Thunderdome."; name = "Thunderdome Telescreen"; network = list("Thunderdome"); pixel_y = -30},/turf/unsimulated/floor{tag = "icon-redyellowfull (NORTHEAST)"; icon_state = "redyellowfull"; dir = 5},/area/tdome/tdomeadmin) -"IR" = (/turf/unsimulated/floor{icon_state = "floor"},/area/tdome/tdomeadmin) -"IS" = (/obj/structure/table,/obj/machinery/door_control{desc = "A remote control switch for port-side blast doors."; icon_state = "doorctrl0"; id = "thunderdomehea"; name = "Ranged Gear"; pixel_x = 0; pixel_y = 5; req_access_txt = "104"},/turf/unsimulated/floor{icon_state = "floor"},/area/tdome/tdomeadmin) -"IT" = (/obj/structure/table,/obj/machinery/door_control{desc = "A remote control switch for port-side blast doors."; icon_state = "doorctrl0"; id = "thunderdomegen"; name = "General Equiptment"; pixel_x = 0; pixel_y = 5; req_access_txt = "104"},/turf/unsimulated/floor{icon_state = "floor"},/area/tdome/tdomeadmin) -"IU" = (/obj/structure/table,/obj/machinery/door_control{desc = "A remote control switch for port-side blast doors."; icon_state = "doorctrl0"; id = "thunderdomeaxe"; name = "Specialist Supply"; pixel_x = 0; pixel_y = 5; req_access_txt = "104"},/turf/unsimulated/floor{icon_state = "floor"},/area/tdome/tdomeadmin) +"EQ" = (/obj/machinery/vending/liberationstation,/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) +"ER" = (/obj/structure/rack,/obj/item/ammo_box/magazine/m75,/obj/item/ammo_box/magazine/m75,/obj/item/ammo_box/magazine/m75,/obj/item/ammo_box/magazine/m75,/obj/item/ammo_box/magazine/m75,/obj/item/ammo_box/magazine/m75,/obj/item/weapon/gun/projectile/automatic/gyropistol,/obj/item/weapon/gun/projectile/automatic/gyropistol{pixel_x = 3; pixel_y = -3},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) +"ES" = (/obj/structure/rack,/obj/item/ammo_box/magazine/m50,/obj/item/ammo_box/magazine/m50,/obj/item/ammo_box/magazine/m50,/obj/item/ammo_box/magazine/m50,/obj/item/ammo_box/magazine/m50,/obj/item/ammo_box/magazine/m50,/obj/item/weapon/gun/projectile/automatic/pistol/deagle,/obj/item/weapon/gun/projectile/automatic/pistol/deagle{pixel_x = 3; pixel_y = -3},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) +"ET" = (/obj/structure/rack,/obj/item/ammo_box/a357,/obj/item/ammo_box/a357,/obj/item/weapon/gun/projectile/revolver/mateba,/obj/item/weapon/gun/projectile/revolver/mateba{pixel_x = 3; pixel_y = -3},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) +"EU" = (/obj/structure/table,/obj/item/weapon/reagent_containers/food/snacks/grown/lemon,/obj/item/weapon/reagent_containers/food/snacks/grown/berries,/obj/item/weapon/reagent_containers/food/snacks/grown/banana,/obj/item/weapon/reagent_containers/food/snacks/grown/cherries,/obj/item/weapon/reagent_containers/food/snacks/grown/orange,/obj/item/weapon/reagent_containers/food/snacks/grown/corn,/obj/item/weapon/reagent_containers/food/snacks/grown/mushroom/amanita,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/admin) +"EV" = (/obj/structure/table,/obj/item/weapon/storage/box/beakers,/obj/item/weapon/reagent_containers/glass/beaker/bluespace,/obj/item/weapon/reagent_containers/glass/beaker/bluespace,/obj/item/weapon/reagent_containers/glass/beaker/bluespace,/obj/item/weapon/reagent_containers/glass/beaker/bluespace,/obj/item/weapon/storage/box/autoinjectors,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/admin) +"EW" = (/obj/structure/table,/obj/item/weapon/storage/box/syringes,/obj/item/device/assembly/igniter,/obj/item/device/assembly/igniter,/obj/item/device/assembly/igniter,/obj/item/device/assembly/igniter,/obj/item/device/assembly/timer,/obj/item/device/assembly/timer,/obj/item/device/assembly/timer,/obj/item/device/assembly/timer,/obj/item/weapon/grenade/chem_grenade/large,/obj/item/weapon/grenade/chem_grenade/large,/obj/item/weapon/grenade/chem_grenade/large,/obj/item/weapon/grenade/chem_grenade/large,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/admin) +"EX" = (/obj/structure/table,/obj/item/device/assembly/signaler,/obj/item/device/assembly/signaler,/obj/item/device/assembly/signaler,/obj/item/device/assembly/signaler,/obj/item/device/assembly/signaler,/obj/item/device/assembly/infra,/obj/item/device/assembly/infra,/obj/item/device/assembly/infra,/obj/item/device/assembly/infra,/obj/item/device/assembly/infra,/obj/item/device/assembly/prox_sensor,/obj/item/device/assembly/prox_sensor,/obj/item/device/assembly/prox_sensor,/obj/item/device/assembly/prox_sensor,/obj/item/device/assembly/prox_sensor,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/admin) +"EY" = (/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/turf/unsimulated/wall{dir = 4; icon = 'icons/turf/shuttle.dmi'; icon_state = "window5"; name = "window"; opacity = 0; tag = "icon-window5 (EAST)"},/area/admin) +"EZ" = (/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/turf/unsimulated/wall{dir = 2; icon = 'icons/turf/shuttle.dmi'; icon_state = "window5"; name = "window"; opacity = 0; tag = "icon-window5"},/area/admin) +"Fa" = (/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id_tag = "ADMINCHEMLOCKDOWN"; name = "Security Doors"; opacity = 0},/obj/machinery/door/airlock/hatch{name = "Chem Lab"; req_access_txt = "0"},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/admin) +"Fb" = (/obj/structure/rack,/obj/item/ammo_box/magazine/m762,/obj/item/ammo_box/magazine/m762,/obj/item/ammo_box/magazine/m762,/obj/item/ammo_box/magazine/m762,/obj/item/weapon/gun/projectile/automatic/l6_saw,/obj/item/weapon/gun/projectile/automatic/l6_saw{pixel_x = 3; pixel_y = -3},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) +"Fc" = (/obj/structure/rack,/obj/item/weapon/gun/projectile/automatic/proto,/obj/item/weapon/gun/projectile/automatic/proto{pixel_x = 3; pixel_y = -3},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) +"Fd" = (/obj/structure/rack,/obj/item/ammo_box/magazine/m556,/obj/item/ammo_box/magazine/m556,/obj/item/ammo_box/magazine/m556,/obj/item/ammo_box/magazine/m556,/obj/item/ammo_box/magazine/m556,/obj/item/ammo_box/magazine/m556,/obj/item/ammo_box/a40mm,/obj/item/ammo_box/a40mm,/obj/item/ammo_box/a40mm,/obj/item/ammo_box/a40mm,/obj/item/weapon/gun/projectile/automatic/m90,/obj/item/weapon/gun/projectile/automatic/m90{pixel_x = 3; pixel_y = -3},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) +"Fe" = (/obj/structure/mirror{dir = 4; pixel_x = 0; pixel_y = -32},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) +"Ff" = (/obj/machinery/optable,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/admin) +"Fg" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/syndicate,/obj/item/weapon/shard,/obj/item/weapon/kitchenknife,/obj/item/weapon/storage/firstaid/tactical,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/admin) +"Fh" = (/obj/structure/table,/obj/item/weapon/gun/energy/pulse_rifle/pistol,/obj/machinery/door_control{desc = "A remote control switch to lock down the admin lab."; icon_state = "doorctrl0"; id = "ADMINCHEMLOCKDOWN"; name = "Lockdown"; pixel_y = 24; req_access_txt = "0"},/turf/unsimulated/floor{dir = 9; icon_state = "carpetside"},/area/admin) +"Fi" = (/turf/unsimulated/floor{dir = 1; icon_state = "carpetside"},/area/admin) +"Fj" = (/obj/machinery/computer/secure_data,/obj/item/weapon/paper/sop,/turf/unsimulated/floor{dir = 5; icon_state = "carpetside"},/area/admin) +"Fk" = (/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/turf/unsimulated/wall{dir = 8; icon = 'icons/turf/shuttle.dmi'; icon_state = "diagonalWall3"},/area/admin) +"Fl" = (/obj/effect/decal/cleanable/blood,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/admin) +"Fm" = (/obj/structure/table,/obj/item/stack/cable_coil,/obj/item/stack/rods,/obj/item/weapon/pen,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/admin) +"Fn" = (/obj/machinery/computer/communications,/turf/unsimulated/floor{dir = 8; icon_state = "carpetside"},/area/admin) +"Fo" = (/obj/structure/stool/bed/chair/office/dark,/turf/unsimulated/floor{icon_state = "carpet"; dir = 2},/area/admin) +"Fp" = (/obj/machinery/computer/med_data,/turf/unsimulated/floor{dir = 4; icon_state = "carpetside"},/area/admin) +"Fq" = (/obj/structure/rack,/obj/item/weapon/shield/energy,/obj/item/weapon/shield/energy{pixel_x = 3; pixel_y = -3},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) +"Fr" = (/obj/structure/rack,/obj/item/weapon/katana{pixel_x = 3; pixel_y = -3},/obj/item/weapon/katana,/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) +"Fs" = (/obj/structure/rack,/obj/item/weapon/melee/energy/sword,/obj/item/weapon/melee/energy/sword{pixel_x = 3; pixel_y = -3},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) +"Ft" = (/obj/structure/rack,/obj/machinery/recharger/wallcharger{pixel_x = 30},/obj/item/weapon/gun/energy/xray,/obj/item/weapon/gun/energy/xray{pixel_x = 3; pixel_y = -3},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) +"Fu" = (/obj/structure/table,/obj/random/toolbox,/obj/random/bomb_supply,/obj/machinery/syndicatebomb/badmin/clown,/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) +"Fv" = (/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) +"Fw" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/syndicate,/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) +"Fx" = (/obj/structure/table,/obj/item/weapon/rcd,/obj/item/weapon/rcd_ammo,/obj/item/weapon/rcd_ammo,/obj/item/weapon/storage/pill_bottle/random_drug_bottle,/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) +"Fy" = (/obj/structure/table,/obj/item/weapon/scalpel,/obj/item/weapon/bonesetter,/obj/item/weapon/bonegel,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/admin) +"Fz" = (/obj/structure/table,/obj/item/weapon/kitchen/utensil/fork,/obj/item/weapon/lighter,/obj/item/weapon/restraints/handcuffs/cable/red,/obj/item/weapon/storage/box/mousetraps,/obj/item/weapon/storage/fancy/cigarettes,/obj/item/weapon/pen,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/admin) +"FA" = (/obj/structure/table,/obj/structure/window/reinforced,/obj/item/weapon/paper_bin,/obj/item/weapon/pen,/turf/unsimulated/floor{dir = 10; icon_state = "carpetside"},/area/admin) +"FB" = (/obj/structure/table,/obj/machinery/door/window/southleft{name = "security checkpoint"; req_access_txt = "0"},/turf/unsimulated/floor{dir = 2; icon_state = "carpetside"},/area/admin) +"FC" = (/obj/structure/table,/obj/structure/window/reinforced,/obj/machinery/recharger,/turf/unsimulated/floor{dir = 6; icon_state = "carpetside"},/area/admin) +"FD" = (/obj/machinery/recharger/wallcharger{pixel_x = 30},/obj/structure/rack,/obj/item/weapon/gun/energy/pulse_rifle/pistol/m1911,/obj/item/weapon/gun/energy/pulse_rifle/pistol/m1911{pixel_x = 3; pixel_y = -3},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) +"FE" = (/obj/structure/table,/obj/item/weapon/tank/oxygen/yellow,/obj/random/bomb_supply,/obj/item/clothing/under/rebeloutfit,/obj/item/clothing/suit/poncho/ponchoshame,/obj/item/clothing/head/sombrero/shamebrero,/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) +"FF" = (/obj/machinery/door/airlock/hatch{name = "Tool Storage"; req_access_txt = "0"},/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) +"FG" = (/obj/structure/table,/obj/item/weapon/FixOVein,/obj/item/weapon/retractor,/obj/item/weapon/cautery,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/admin) +"FH" = (/obj/structure/kitchenspike,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/admin) +"FI" = (/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/turf/unsimulated/wall{dir = 2; icon = 'icons/turf/shuttle.dmi'; icon_state = "window5_end"; name = "window"; opacity = 0; tag = "icon-window5_end"},/area/admin) +"FJ" = (/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/turf/unsimulated/wall{dir = 2; icon = 'icons/turf/shuttle.dmi'; icon_state = "window5_mid"; name = "window"; opacity = 0; tag = "icon-window5_mid"},/area/admin) +"FK" = (/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/turf/unsimulated/wall{dir = 1; icon = 'icons/turf/shuttle.dmi'; icon_state = "window5_end"; name = "window"; opacity = 0; tag = "icon-window5_end (NORTH)"},/area/admin) +"FL" = (/turf/simulated/wall/r_wall,/area/adminconstruction) +"FM" = (/obj/structure/rack,/obj/item/weapon/gun/energy/meteorgun,/obj/item/weapon/gun/energy/meteorgun{pixel_x = 3; pixel_y = -3},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) +"FN" = (/obj/structure/rack,/obj/item/weapon/twohanded/knighthammer{pixel_x = -3; pixel_y = 3},/obj/item/weapon/twohanded/mjollnir,/obj/item/weapon/twohanded/singularityhammer{pixel_x = 3; pixel_y = -3},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) +"FO" = (/obj/structure/rack,/obj/item/weapon/gun/energy/crossbow,/obj/item/weapon/gun/energy/crossbow{pixel_x = 3; pixel_y = -3},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) +"FP" = (/obj/machinery/recharger/wallcharger{pixel_x = 30},/obj/structure/rack,/obj/item/weapon/gun/energy/pulse_rifle,/obj/item/weapon/gun/energy/pulse_rifle{pixel_x = 3; pixel_y = -3},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) +"FQ" = (/obj/structure/table,/obj/random/tool,/obj/item/clothing/gloves/color/yellow,/obj/item/weapon/pinpointer/advpinpointer,/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) +"FR" = (/obj/structure/table,/obj/item/weapon/grenade/syndieminibomb{pixel_x = 4; pixel_y = 2; pixel_z = 0},/obj/item/weapon/grenade/syndieminibomb{pixel_x = -1},/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) +"FS" = (/obj/structure/table,/obj/machinery/recharger{pixel_y = 0},/obj/item/toy/cards/deck/syndicate/black,/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) +"FT" = (/obj/structure/table,/obj/item/weapon/surgicaldrill,/obj/item/stack/medical/advanced/bruise_pack,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/admin) +"FU" = (/obj/structure/table,/obj/item/weapon/hemostat,/obj/item/weapon/circular_saw,/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/admin) +"FV" = (/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id_tag = "ADMINCHEMLOCKDOWN"; name = "Security Doors"; opacity = 0},/obj/machinery/door/airlock/hatch{desc = "Uh oh."; name = "Operating Theater"; req_access_txt = "0"},/turf/unsimulated/floor{icon_state = "freezerfloor"; dir = 2},/area/admin) +"FW" = (/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/turf/unsimulated/wall{dir = 4; icon = 'icons/turf/shuttle.dmi'; icon_state = "diagonalWall3"},/area/admin) +"FX" = (/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/admin) +"FY" = (/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/turf/unsimulated/wall{dir = 2; icon = 'icons/turf/shuttle.dmi'; icon_state = "diagonalWall3"},/area/admin) +"FZ" = (/turf/simulated/floor{dir = 8; icon_state = "neutralfull"},/area/adminconstruction) +"Ga" = (/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/turf/unsimulated/wall{dir = 4; icon = 'icons/turf/shuttle.dmi'; icon_state = "diagonalWall3"},/area/admin) +"Gb" = (/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/turf/unsimulated/wall{dir = 2; icon = 'icons/turf/shuttle.dmi'; icon_state = "diagonalWall3"},/area/admin) +"Gc" = (/obj/machinery/door/airlock/hatch{desc = "You've heard rumors of the horrors that go on within this lab."; name = "Laboratory (DANGER!)"; req_access_txt = "0"},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) +"Gd" = (/obj/machinery/computer/ordercomp,/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) +"Ge" = (/obj/machinery/computer/crew,/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) +"Gf" = (/obj/machinery/computer/security{network = list("SS13","Telecomms","Research Outpost","Mining Outpost","ERT","CentCom","Thunderdome")},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) +"Gg" = (/obj/machinery/computer/rdservercontrol{badmin = 1; name = "Master R&D Server Controller"},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) +"Gh" = (/obj/machinery/r_n_d/server/centcom,/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) +"Gi" = (/obj/structure/table,/obj/item/weapon/card/id/silver{pixel_x = -3; pixel_y = -3},/obj/item/weapon/card/id/captains_spare,/obj/item/weapon/card/id/fluff/lifetime{pixel_x = 3; pixel_y = 3},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) +"Gj" = (/obj/structure/table,/obj/item/weapon/card/id/centcom{pixel_x = -3; pixel_y = -3},/obj/item/weapon/card/id{pixel_x = 0; pixel_y = 0},/obj/item/weapon/card/id/admin{pixel_x = 3; pixel_y = 3},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) +"Gk" = (/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/turf/unsimulated/wall{dir = 2; icon = 'icons/turf/shuttle.dmi'; icon_state = "window5"; name = "window"; opacity = 0; tag = "icon-window5"},/area/admin) +"Gl" = (/obj/structure/stool/bed/chair/comfy/black,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/admin) +"Gm" = (/obj/machinery/computer/card,/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) +"Gn" = (/obj/structure/stool/bed/chair{dir = 1},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) +"Go" = (/obj/machinery/door/airlock/glass{name = "Computer Hub"; req_access_txt = "0"},/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id_tag = "ADMINLOCKDOWN"; name = "Security Doors"; opacity = 0},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) +"Gp" = (/obj/effect/landmark{name = "aroomwarp"; tag = ""},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) +"Gq" = (/obj/machinery/door/airlock/hatch{desc = "For all your shady business needs"; name = "Gambling Den"; req_access_txt = "0"},/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/admin) +"Gr" = (/obj/structure/table/woodentable,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/admin) +"Gs" = (/obj/structure/table/woodentable,/obj/item/toy/cards/deck/syndicate,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/admin) +"Gt" = (/obj/structure/table/woodentable,/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/devilskiss,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/admin) +"Gu" = (/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/turf/unsimulated/wall{desc = "This window appears to be reinforced, it looks nearly impossible to break."; dir = 8; icon = 'icons/turf/shuttle.dmi'; icon_state = "window5_end"; name = "window"; opacity = 0; tag = "icon-window5_end (WEST)"},/area/admin) +"Gv" = (/obj/machinery/computer/artillerycontrol{luminosity = 255},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) +"Gw" = (/obj/structure/stool/bed/chair{dir = 8},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) +"Gx" = (/obj/item/weapon/stool,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/admin) +"Gy" = (/obj/structure/table/woodentable,/obj/item/weapon/lighter/zippo/fluff/naples_1,/obj/item/weapon/storage/fancy/cigarettes/dromedaryco,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/admin) +"Gz" = (/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/turf/unsimulated/wall{desc = "This window appears to be reinforced, it looks nearly impossible to break."; dir = 4; icon = 'icons/turf/shuttle.dmi'; icon_state = "window5_end"; name = "window"; opacity = 0; tag = "icon-window5 (EAST)"},/area/admin) +"GA" = (/obj/machinery/computer/communications,/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) +"GB" = (/obj/structure/stool/bed/chair,/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) +"GC" = (/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/turf/unsimulated/wall{dir = 1; icon = 'icons/turf/shuttle.dmi'; icon_state = "diagonalWall3"},/area/admin) +"GD" = (/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/turf/unsimulated/wall{dir = 8; icon = 'icons/turf/shuttle.dmi'; icon_state = "diagonalWall3"},/area/admin) +"GE" = (/obj/machinery/computer/message_monitor,/obj/item/weapon/paper/monitorkey,/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) +"GF" = (/obj/machinery/computer/atmos_alert,/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) +"GG" = (/obj/machinery/computer/secure_data,/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) +"GH" = (/obj/machinery/computer/account_database{name = "Admin Accounts Database"},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) +"GI" = (/obj/structure/table,/obj/item/weapon/gun/projectile/automatic/pistol,/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) +"GJ" = (/obj/structure/table,/obj/machinery/door_control{desc = "A remote control switch to lock down external access to the admin room."; icon_state = "doorctrl0"; id = "ADMINLOCKDOWN"; name = "Lockdown"; pixel_y = 0; req_access_txt = "0"},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) +"GK" = (/obj/structure/table,/obj/item/weapon/storage/fancy/cigarettes/syndicate,/obj/item/weapon/reagent_containers/food/drinks/cans/adminbooze,/obj/item/weapon/reagent_containers/food/drinks/cans/badminbrew,/obj/item/weapon/reagent_containers/food/drinks/cans/madminmalt,/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) +"GL" = (/obj/machinery/door/airlock/hatch{desc = "Danger: May contain robustness"; name = "Dojo"; req_access_txt = "0"},/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) +"GM" = (/obj/machinery/door/airlock/glass{name = "Shuttle Bay"; req_access_txt = "0"},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) +"GN" = (/obj/structure/showcase,/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) +"GO" = (/obj/item/weapon/storage/toolbox/syndicate{desc = "A powerful relic many men worked long and hard to keep safe and away from the forces of evil."; force = 1e+008; name = "toolbox of robustness"},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/table/woodentable,/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) +"GP" = (/turf/unsimulated/floor{icon_state = "gcircuit"},/area/admin) +"GQ" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/item/weapon/grenade/clusterbuster/smoke,/obj/structure/table/woodentable,/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) +"GR" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/structure/table/woodentable,/obj/item/weapon/sleeping_carp_scroll,/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) +"GS" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/structure/table/woodentable,/obj/item/weapon/twohanded/bostaff,/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) +"GT" = (/obj/structure/ninjatele{pixel_x = -28},/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) +"GU" = (/obj/structure/ninjatele{pixel_x = 28},/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) +"GV" = (/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/turf/unsimulated/wall{dir = 1; icon = 'icons/turf/shuttle.dmi'; icon_state = "diagonalWall3"},/area/admin) +"GW" = (/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/turf/unsimulated/wall{dir = 8; icon = 'icons/turf/shuttle.dmi'; icon_state = "diagonalWall3"},/area/admin) +"GX" = (/obj/structure/stool/bed,/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) +"GY" = (/obj/effect/decal/cleanable/blood,/obj/structure/toilet{dir = 8},/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) +"GZ" = (/obj/effect/decal/cleanable/fungus,/turf/unsimulated/wall{tag = "icon-wall3 (EAST)"; icon = 'icons/turf/shuttle.dmi'; icon_state = "wall3"; dir = 4},/area/admin) +"Ha" = (/turf/unsimulated/floor{icon_state = "engine"},/obj/structure/window/reinforced{dir = 1},/turf/unsimulated/wall{dir = 1; icon = 'icons/turf/shuttle.dmi'; icon_state = "diagonalWall3"},/area/admin) +"Hb" = (/obj/structure/window/reinforced{dir = 1},/turf/unsimulated/floor{icon_state = "engine"},/area/admin) +"Hc" = (/obj/machinery/door/window{dir = 1; name = "Suit Storage"; req_access_txt = "0"},/turf/unsimulated/floor{icon_state = "engine"},/area/admin) +"Hd" = (/turf/unsimulated/floor{icon_state = "engine"},/obj/structure/window/reinforced{dir = 1},/turf/unsimulated/wall{dir = 8; icon = 'icons/turf/shuttle.dmi'; icon_state = "diagonalWall3"},/area/admin) +"He" = (/obj/structure/window/reinforced,/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) +"Hf" = (/obj/machinery/door/window/southleft{name = "Cell B"; req_access_txt = "101"},/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) +"Hg" = (/obj/structure/rack,/obj/item/clothing/suit/space/space_ninja,/turf/unsimulated/floor{icon_state = "engine"},/area/admin) +"Hh" = (/turf/unsimulated/floor{icon_state = "engine"},/area/admin) +"Hi" = (/obj/structure/rack,/obj/item/clothing/head/helmet/space/space_ninja,/turf/unsimulated/floor{icon_state = "engine"},/area/admin) +"Hj" = (/turf/unsimulated/wall,/area/tdome) +"Hk" = (/turf/unsimulated/wall{desc = "The door appears to be locked tightly."; icon = 'icons/obj/doors/Doorhatchele.dmi'; icon_state = "door_closed"; name = "Locked Door"},/area/tdome) +"Hl" = (/obj/machinery/iv_drip,/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) +"Hm" = (/obj/structure/stool/bed/chair,/obj/effect/decal/cleanable/blood,/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) +"Hn" = (/obj/machinery/vending/medical,/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) +"Ho" = (/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/turf/unsimulated/wall{dir = 4; icon = 'icons/turf/shuttle.dmi'; icon_state = "diagonalWall3"},/area/admin) +"Hp" = (/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/turf/unsimulated/wall{dir = 2; icon = 'icons/turf/shuttle.dmi'; icon_state = "diagonalWall3"},/area/admin) +"Hq" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/box/handcuffs,/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) +"Hr" = (/obj/structure/table/reinforced,/obj/item/clothing/suit/straight_jacket,/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) +"Hs" = (/obj/structure/table/reinforced,/obj/item/clothing/glasses/sunglasses/blindfold,/obj/item/clothing/mask/muzzle,/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) +"Ht" = (/turf/unsimulated/floor{icon_state = "engine"},/turf/unsimulated/wall{dir = 4; icon = 'icons/turf/shuttle.dmi'; icon_state = "window5"; name = "window"; opacity = 0; tag = "icon-window5 (EAST)"},/area/admin) +"Hu" = (/obj/structure/rack,/obj/item/clothing/gloves/space_ninja,/turf/unsimulated/floor{icon_state = "engine"},/area/admin) +"Hv" = (/obj/structure/rack,/obj/item/weapon/katana/energy,/obj/item/clothing/mask/gas/voice/space_ninja,/turf/unsimulated/floor{icon_state = "engine"},/area/admin) +"Hw" = (/obj/structure/rack,/obj/item/clothing/shoes/space_ninja,/turf/unsimulated/floor{icon_state = "engine"},/area/admin) +"Hx" = (/obj/structure/closet/secure_closet/bar{req_access = null; req_access_txt = "112"},/turf/unsimulated/floor{icon_state = "white"},/area/tdome) +"Hy" = (/turf/unsimulated/floor{icon_state = "white"},/area/tdome) +"Hz" = (/obj/machinery/gibber,/turf/unsimulated/floor{icon_state = "white"},/area/tdome) +"HA" = (/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/turf/unsimulated/wall{dir = 4; icon = 'icons/turf/shuttle.dmi'; icon_state = "window5"; name = "window"; opacity = 0; tag = "icon-window5 (EAST)"},/area/admin) +"HB" = (/obj/machinery/door/airlock/hatch{desc = "Uh oh. You'd better hope you aren't going in here!"; name = "Prisoner Treatment"},/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) +"HC" = (/obj/machinery/door/airlock/hatch{desc = "Uh oh. You'd better hope you aren't going in here!"; name = "Detainment"},/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) +"HD" = (/turf/unsimulated/floor{icon_state = "engine"},/turf/unsimulated/wall{dir = 2; icon = 'icons/turf/shuttle.dmi'; icon_state = "window5"; name = "window"; opacity = 0; tag = "icon-window5"},/area/admin) +"HE" = (/obj/machinery/vending/cigarette,/turf/unsimulated/floor{tag = "icon-redbluefull (WEST)"; icon_state = "redbluefull"; dir = 8},/area/tdome/tdomeobserve) +"HF" = (/obj/structure/table,/obj/item/weapon/reagent_containers/food/drinks/cans/beer,/obj/item/weapon/reagent_containers/food/drinks/cans/beer,/obj/item/weapon/reagent_containers/food/drinks/cans/beer,/obj/item/weapon/lighter/zippo,/obj/item/weapon/storage/fancy/cigarettes,/turf/unsimulated/floor{tag = "icon-redbluefull (WEST)"; icon_state = "redbluefull"; dir = 8},/area/tdome/tdomeobserve) +"HG" = (/obj/structure/table{icon_state = "tabledir"; dir = 2},/obj/item/weapon/reagent_containers/food/drinks/cans/cola,/turf/unsimulated/floor{tag = "icon-redbluefull (WEST)"; icon_state = "redbluefull"; dir = 8},/area/tdome/tdomeobserve) +"HH" = (/obj/structure/reagent_dispensers/beerkeg,/turf/unsimulated/floor{tag = "icon-redbluefull (WEST)"; icon_state = "redbluefull"; dir = 8},/area/tdome/tdomeobserve) +"HI" = (/obj/machinery/computer/security/telescreen{desc = "Used for watching the Thunderdome."; name = "Thunderdome Telescreen"; network = list("Thunderdome"); pixel_y = 30},/turf/unsimulated/floor{tag = "icon-redbluefull (WEST)"; icon_state = "redbluefull"; dir = 8},/area/tdome/tdomeobserve) +"HJ" = (/turf/unsimulated/floor{tag = "icon-redbluefull (WEST)"; icon_state = "redbluefull"; dir = 8},/area/tdome/tdomeobserve) +"HK" = (/obj/machinery/vending/coffee,/turf/unsimulated/floor{tag = "icon-redbluefull (WEST)"; icon_state = "redbluefull"; dir = 8},/area/tdome/tdomeobserve) +"HL" = (/obj/structure/table/reinforced,/obj/item/weapon/melee/classic_baton/telescopic,/obj/item/weapon/paper/Court,/obj/item/weapon/pen,/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) +"HM" = (/obj/structure/table/reinforced,/obj/item/weapon/scalpel,/obj/item/weapon/storage/box/syndie_kit/mindslave,/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) +"HN" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/box/mousetraps,/obj/item/weapon/storage/box/trackimp,/obj/item/weapon/storage/box/syndie_kit/imp_explosive,/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) +"HO" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/box/flashbangs,/obj/item/weapon/storage/box/flashes,/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) +"HP" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/box/grenades,/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) +"HQ" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/box/teargas,/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) +"HR" = (/obj/structure/closet/secure_closet/freezer/meat{req_access_txt = "112"},/turf/unsimulated/floor{icon_state = "white"},/area/tdome) +"HS" = (/obj/structure/closet/secure_closet/freezer/fridge{req_access_txt = "112"},/turf/unsimulated/floor{icon_state = "white"},/area/tdome) +"HT" = (/obj/structure/stool/bed/chair,/obj/effect/landmark{name = "tdomeobserve"},/turf/unsimulated/floor{tag = "icon-redbluefull (WEST)"; icon_state = "redbluefull"; dir = 8},/area/tdome/tdomeobserve) +"HU" = (/obj/machinery/vending/snack,/turf/unsimulated/floor{tag = "icon-redbluefull (WEST)"; icon_state = "redbluefull"; dir = 8},/area/tdome/tdomeobserve) +"HV" = (/obj/structure/window/reinforced{dir = 1; layer = 2.9},/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) +"HW" = (/obj/machinery/door/window{dir = 1; name = "Cell A"; req_access_txt = "101"},/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) +"HX" = (/obj/structure/table{icon_state = "tabledir"; dir = 9},/obj/item/weapon/storage/box/donkpockets{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/box/donkpockets{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/box/donkpockets{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/box/donkpockets{pixel_x = 3; pixel_y = 3},/turf/unsimulated/floor{icon_state = "white"},/area/tdome) +"HY" = (/obj/structure/table,/obj/machinery/kitchen_machine/microwave/upgraded,/turf/unsimulated/floor{icon_state = "white"},/area/tdome) +"HZ" = (/obj/structure/table/reinforced,/turf/unsimulated/floor{icon_state = "white"},/area/tdome) +"Ia" = (/obj/item/device/camera,/turf/unsimulated/floor{tag = "icon-redbluefull (WEST)"; icon_state = "redbluefull"; dir = 8},/area/tdome/tdomeobserve) +"Ib" = (/obj/structure/toilet{dir = 8},/turf/unsimulated/floor{tag = "icon-dark"; icon_state = "dark"},/area/admin) +"Ic" = (/obj/structure/rack,/obj/item/clothing/under/color/red,/obj/item/clothing/shoes/brown,/obj/item/weapon/grenade/smokebomb,/obj/item/weapon/legcuffs/beartrap,/obj/item/weapon/sleeping_carp_scroll,/obj/item/weapon/twohanded/bostaff,/turf/unsimulated/floor{icon_state = "dark"},/area/tdome/arena) +"Id" = (/turf/unsimulated/wall/fakeglass{tag = "icon-fakewindows (WEST)"; icon_state = "fakewindows"; dir = 8},/area/tdome) +"Ie" = (/turf/unsimulated/wall/fakeglass{tag = "icon-fakewindows2 (WEST)"; icon_state = "fakewindows2"; dir = 8},/area/tdome) +"If" = (/turf/unsimulated/wall/fakeglass{tag = "icon-fakewindows (EAST)"; icon_state = "fakewindows"; dir = 4},/area/tdome) +"Ig" = (/obj/structure/rack,/obj/item/clothing/under/color/green,/obj/item/clothing/shoes/brown,/obj/item/weapon/grenade/smokebomb,/obj/item/weapon/legcuffs/beartrap,/obj/item/weapon/sleeping_carp_scroll,/obj/item/weapon/twohanded/bostaff,/turf/unsimulated/floor{icon_state = "dark"},/area/tdome/arena) +"Ih" = (/obj/machinery/door/poddoor{id_tag = "thunderdomeaxe"; name = "Axe Supply"},/turf/unsimulated/floor{icon_state = "dark"},/area/tdome/arena) +"Ii" = (/obj/structure/rack,/obj/item/clothing/under/color/red,/obj/item/clothing/shoes/brown,/obj/item/clothing/suit/armor/tdome/red,/obj/item/clothing/head/helmet/thunderdome,/obj/item/weapon/melee/energy/sword/red,/turf/unsimulated/floor{icon_state = "dark"},/area/tdome/arena) +"Ij" = (/obj/machinery/door/poddoor{id_tag = "thunderdomegen"; name = "General Supply"},/turf/unsimulated/floor{icon_state = "dark"},/area/tdome/arena) +"Ik" = (/turf/unsimulated/floor{name = "plating"},/area/tdome/tdome2) +"Il" = (/obj/machinery/door/poddoor{id_tag = "thunderdome"; name = "Thunderdome Blast Door"},/turf/unsimulated/floor{name = "plating"},/area/tdome/arena) +"Im" = (/turf/simulated/floor{icon_state = "red"; dir = 8},/area/tdome/arena) +"In" = (/turf/simulated/floor{icon_state = "green"; dir = 4},/area/tdome/arena) +"Io" = (/turf/unsimulated/floor{name = "plating"},/area/tdome/tdome1) +"Ip" = (/obj/structure/rack,/obj/item/clothing/under/color/green,/obj/item/clothing/shoes/brown,/obj/item/clothing/suit/armor/tdome/green,/obj/item/clothing/head/helmet/thunderdome,/obj/item/weapon/melee/energy/sword/green,/turf/unsimulated/floor{icon_state = "dark"},/area/tdome/arena) +"Iq" = (/obj/machinery/door/airlock/hatch{name = "Teleporter Access"; req_access_txt = "0"},/obj/machinery/door/poddoor{density = 0; icon_state = "pdoor0"; id_tag = "ADMINLOCKDOWN"; name = "Security Doors"; opacity = 0},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) +"Ir" = (/obj/effect/landmark{name = "tdome2"},/turf/unsimulated/floor{name = "plating"},/area/tdome/tdome2) +"Is" = (/obj/effect/landmark{name = "tdome1"},/turf/unsimulated/floor{name = "plating"},/area/tdome/tdome1) +"It" = (/obj/structure/rack,/obj/item/weapon/tank/jetpack/oxygen,/obj/item/weapon/tank/jetpack/oxygen,/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) +"Iu" = (/obj/structure/rack,/obj/item/clothing/suit/space,/obj/item/clothing/suit/space,/obj/item/clothing/mask/breath,/obj/item/clothing/mask/breath,/obj/item/clothing/head/helmet/space,/obj/item/clothing/head/helmet/space,/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) +"Iv" = (/obj/machinery/camera{pixel_x = 11; pixel_y = -9; network = list("Thunderdome"); c_tag = "Thunderdome Red Team"},/obj/effect/landmark{name = "tdome2"},/turf/unsimulated/floor{name = "plating"},/area/tdome/tdome2) +"Iw" = (/turf/simulated/floor/bluegrid,/area/tdome/arena) +"Ix" = (/obj/machinery/flasher{id = "flash"; name = "Thunderdome Flash"},/turf/simulated/floor/bluegrid,/area/tdome/arena) +"Iy" = (/obj/machinery/camera{pixel_x = 12; pixel_y = -10; network = list("Thunderdome"); c_tag = "Thunderdome Green Team"},/obj/effect/landmark{name = "tdome1"},/turf/unsimulated/floor{name = "plating"},/area/tdome/tdome1) +"Iz" = (/obj/machinery/camera{pixel_x = 10; network = list("Thunderdome"); c_tag = "Thunderdome Arena"},/turf/simulated/floor/bluegrid,/area/tdome/arena) +"IA" = (/obj/structure/table,/obj/random/powercell,/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) +"IB" = (/obj/structure/table,/obj/random/tool,/obj/random/bomb_supply,/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) +"IC" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/mechanical,/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) +"ID" = (/obj/structure/table,/obj/random/technology_scanner,/obj/random/tech_supply,/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) +"IE" = (/obj/machinery/door/poddoor{id_tag = "thunderdomehea"; name = "Heavy Supply"},/turf/unsimulated/floor{icon_state = "dark"},/area/tdome/arena) +"IF" = (/obj/structure/table,/obj/item/clothing/gloves/color/yellow,/obj/random/bomb_supply,/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) +"IG" = (/obj/machinery/computer/teleporter,/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) +"IH" = (/obj/machinery/teleport/station,/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) +"II" = (/obj/machinery/teleport/hub/upgraded,/turf/unsimulated/floor{tag = "icon-delivery"; icon_state = "delivery"},/area/admin) +"IJ" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/electrical,/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin) +"IK" = (/obj/structure/rack,/obj/item/clothing/under/color/red,/obj/item/clothing/shoes/brown,/obj/item/clothing/suit/armor/vest,/obj/item/clothing/head/helmet/swat,/obj/item/weapon/gun/energy/laser,/obj/item/weapon/shield/energy,/obj/machinery/recharger/wallcharger{pixel_x = 3; pixel_y = -30},/turf/unsimulated/floor{icon_state = "dark"},/area/tdome/arena) +"IL" = (/obj/structure/rack,/obj/item/clothing/under/color/green,/obj/item/clothing/shoes/brown,/obj/item/clothing/suit/armor/vest,/obj/item/clothing/head/helmet/swat,/obj/item/weapon/gun/energy/laser,/obj/item/weapon/shield/energy,/obj/machinery/recharger/wallcharger{pixel_x = 3; pixel_y = -30},/turf/unsimulated/floor{icon_state = "dark"},/area/tdome/arena) +"IM" = (/turf/unsimulated/floor{tag = "icon-redyellowfull (NORTHEAST)"; icon_state = "redyellowfull"; dir = 5},/area/tdome/tdomeadmin) +"IN" = (/obj/structure/stool/bed/chair{dir = 1},/obj/effect/landmark{name = "tdomeadmin"},/turf/unsimulated/floor{tag = "icon-redyellowfull (NORTHEAST)"; icon_state = "redyellowfull"; dir = 5},/area/tdome/tdomeadmin) +"IO" = (/obj/structure/table,/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/devilskiss,/turf/unsimulated/floor{tag = "icon-redyellowfull (NORTHEAST)"; icon_state = "redyellowfull"; dir = 5},/area/tdome/tdomeadmin) +"IP" = (/obj/structure/stool/bed/chair/comfy/black{dir = 1},/turf/unsimulated/floor{tag = "icon-redyellowfull (NORTHEAST)"; icon_state = "redyellowfull"; dir = 5},/area/tdome/tdomeadmin) +"IQ" = (/obj/structure/table,/obj/machinery/door_control{desc = "A remote control switch for port-side blast doors."; icon_state = "doorctrl0"; id = "thunderdome"; name = "Main Blast Doors"; pixel_x = -3; pixel_y = 0; req_access_txt = "104"},/turf/unsimulated/floor{tag = "icon-redyellowfull (NORTHEAST)"; icon_state = "redyellowfull"; dir = 5},/area/tdome/tdomeadmin) +"IR" = (/obj/machinery/computer/security/telescreen{desc = "Used for watching the Thunderdome."; name = "Thunderdome Telescreen"; network = list("Thunderdome"); pixel_y = -30},/turf/unsimulated/floor{tag = "icon-redyellowfull (NORTHEAST)"; icon_state = "redyellowfull"; dir = 5},/area/tdome/tdomeadmin) +"IS" = (/turf/unsimulated/floor{icon_state = "floor"},/area/tdome/tdomeadmin) +"IT" = (/obj/structure/table,/obj/machinery/door_control{desc = "A remote control switch for port-side blast doors."; icon_state = "doorctrl0"; id = "thunderdomehea"; name = "Ranged Gear"; pixel_x = 0; pixel_y = 5; req_access_txt = "104"},/turf/unsimulated/floor{icon_state = "floor"},/area/tdome/tdomeadmin) +"IU" = (/obj/structure/table,/obj/machinery/door_control{desc = "A remote control switch for port-side blast doors."; icon_state = "doorctrl0"; id = "thunderdomegen"; name = "General Equiptment"; pixel_x = 0; pixel_y = 5; req_access_txt = "104"},/turf/unsimulated/floor{icon_state = "floor"},/area/tdome/tdomeadmin) +"IV" = (/obj/structure/table,/obj/machinery/door_control{desc = "A remote control switch for port-side blast doors."; icon_state = "doorctrl0"; id = "thunderdomeaxe"; name = "Specialist Supply"; pixel_x = 0; pixel_y = 5; req_access_txt = "104"},/turf/unsimulated/floor{icon_state = "floor"},/area/tdome/tdomeadmin) (1,1,1) = {" aaabacadaeafagahaaaiajakalamanaoagafajacadahakaeamaiaoapaqarasatauavawaxayazaAaBaCaDaEaFaGaHaIaJaKawaxayazaAaBaCaDaEaFaLaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaMaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaOaPaPaPaPaPaQaPaPaPaPaPaQaPaPaPaPaPaQaPaPaPaPaPaQaPaPaPaPaPaQaPaPaPaPaPaQaPaPaPaPaPaR @@ -2027,48 +2028,47 @@ aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNDADwDwEtDKDKDKDKDKDKDKDKDKDKDKDKEuDAEnaNDtDwEvEwExEyEwEzDwEAaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNEBDKECDKDKDKDKDKDKDKDKDKDKDKDKDKDKDAaNaNaNEDEEEFEwEwEwEGEDaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNDADwDwDwDwDwDMEHDMDwDwDwDwDwEIDKDKDAaNaNaNEJEKEwEwEwEwELEJaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNEnaNEMDAENEOEPDKDKDKEQERESEuDADKDKDAaNaNDtDAETEwEUEVEwEWDAaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNEXDKDKDKDKDKDKDKDKDKDKEXDKDKDADwEYDwDwDwEZDwDwEZDwDAaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNDAFaFbFcDKDKDKFdFdFdDKEHDKDKDAFeEwEwFfDADKDAFgFhFiDAaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNEXDKDKDKDKDKFjDwDwDwDwDADKDKDAEwEwFkFlDADKDAFmFnFoDIaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNDAFpFqFrDKFsDAFtFuFvFwDADKDKDAFxEwEwFyDADKDAFzFAFBDNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNEXDKDKDKDKFCDAFDFuFuFuFEDKDKDAFFEwEwFGDADKDKDKDKDKEfaNaNaNaNDtDwFHFIFJDwDuaNaNaNaNaNaNaN -aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFKFKFKFKFKFKFKFKFKFKFKFKFKFKFKFKFKFKFKFKFKFKFKFKFKFKFKFKFKFKFKFKFKFKFKFKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNDAFLFMFNDKFODAFPFuFQFRDADKDKDAFSFTEwEwFUDKDKDKDKDKDAaNaNaNDtDwFVFWFWFWFXDwDuaNaNaNaNaNaN -aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFKFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNDtDwDwDwDwDwDwDwDwDwDwDwFZDKDKGaDwDwDwDwDwDwDwDwGbDwDADuaNDtDwFVFWFWFWFWFWFXDADuaNaNaNaNaN -aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFKFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNDtDAGcGdGeGfGgGhGiGaDAFZDKDKDKDKDKDKGaDwDwDwDwDwFZDKGaDwDwGjDwFVFWFWFWGkFWFWFWFXDAaNaNaNaNaN -aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFKFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNDIGlDKDKGmDKDKDKDKDKGnDKDKGoGoGoGoDKDKDKDKDKDKDKDKDKDKGpFWFWFWFWFWFWGqGrGsFWFWFWGtaNaNaNaNaN -aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFKFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNDNGuGvDKDKDKDKDKDKDKGnDKDKGoGoGoGoDKDKDKDKDKDKDKDKDKDKGpFWFWFWFWFWGwGxGqGqGwFWFWGyaNaNaNaNaN -aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFKFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNEfGzDKDKGADKDKDKDKDKGnDKDKGoGoGoGoDKDKDKDKDKDKDKDKDKFjDwDwGjDwGBFWFWGwGwGwFWFWGCDAaNaNaNaNaN -aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFKFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNEMDAGDGEGFGGGHGIGJFjDAEIDKDKDKDKDKDKFjDwDwEIDKFjDwDwDwDAEnaNEMDwGBFWFWFWFWFWGCDAEnaNaNaNaNaN -aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFKFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNEMDwDwDwDwDwDwDwDwDwDwDwEIDKDKFjDwDwDwDwDwGKDwDwDwDADAaNaNaNEMDwGBFWFWFWGCDwEnaNaNaNaNaNaN -aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFKFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNEMaNaNaNaNaNaNaNaNaNDvDAGLGLDAaNDAFuGMFuFuFuGMFuDADAaNaNaNaNEMDwFHFIFJDwEnaNaNaNaNaNaNaN -aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFKFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNDtDwDwDwDwFZDKDKDAaNDAGNFuFuGOFuFuGPDADAaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFKFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNDIDKDKDKDKDKDKDKDAaNDAGQGOFuFuFuGOGRDADAaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFKFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNEfDKDKDKDKDKDKDKDAaNDAGSFuFuGOFuFuGTDADAaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFKFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNDtDwDwDuaNEMDxDyDyDzEIDKDKDAaNDAGUFuFuFuFuFuGVDAEnaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFKFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNDtaNaNDtDAGWGXGYDuaNaNaNaNaNDIDKDKDAaNEMDwGZHaHbHaHcDwEnaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFKFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNDtDwDwDwDwDAHdHeDADwDwDwDwDuaNEfDKDKDAaNaNEMDwHfHgHhDwEnaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNHiHiHiHiHjHiHiHiaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFKFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNDtDAHkHlHmDAHnFuFuHoDAHpHqHrHoDwFZDKDKDAaNaNaNHsHtHuHvHsaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNHiHwHxHxHxHxHyHiHiHiHiHiHiHiHiHjHiHiHiHiHiHiHiHiaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFKFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNHzFuFuFuHAFuFuFuFuHBFuFuFuFuHBDKDKDKDAaNaNEMDwDwHCDwDwEnaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNHiHwHxHxHxHxHyHiHDHEHFHEHGHHHIHIHIHHHGHIHGHIHJHiaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFKFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNEMDAHKHLHMDAGUFuFuGVDAHNHOHPGVDwEIDKDKDAaNaNaNEMaNaNaNEnaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNHiHQHxHxHxHxHRHiHIHSHSHSHSHSHIHIHIHSHSHSHSHSHTHiaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFKFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNEMDwDwDwDwGYHUHVDADwDwDwDwEnaNDIDKDKDAaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNHiHQHWHXHXHxHxHYHIHIHIHZHIHIHIHIHIHIHIHZHIHIHIHiaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFKFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNEMaNaNEMDAGWIaDAEnaNaNaNaNaNEfDKDKDAaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNHiHiHiHiHiHiHiHiHIHSHSHSHSHSHIHIHIHSHSHSHSHSHIHiHiHiHiHiHiHiaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFKFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNEMDwDwEnaNDtDxDyDyDzFZDKDKDAaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNHiIbIbIbIbIbHiIcIdIdIdIdIdIdIdIdIdIdIdIdIdIeHiIfIfIfIfIfHiaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFKFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNDIDKDKDKDKDKDKDKDAaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNHiHiHiIgIgIgIgIgjajbjcjcjcjcjcjcjcjcjcjcjcjcjcjbjaIgIgIgIgIgHiHiHiaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFKFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNEfDKDKDKDKDKDKFjDAEnaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNHiIhIiIjIjIjIjIjIkIljcjcjcjcjcjcjcjcjcjcjcjcjcImIkInInInInInIiIoHiaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFKFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNEMDwDwDMIpDMDwDwEnaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNHiIhIiIjIqIjIqIjIkIljcjcjcjcjcjcjcjcjcjcjcjcjcImIkInIrInIrInIiIoHiaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFKFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNDAIsDKDKDKItDAaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNHiIhIiIjIjIuIjIjIkIljcjcjcjcjcIvIwIvjcjcjcjcjcImIkInInIxInInIiIoHiaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFKFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNDIDKDKDKDKDKDIaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNHiIhIiIjIqIjIqIjIkIljcjcjcjcjcIvIyIvjcjcjcjcjcImIkInIrInIrInIiIoHiaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFKFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNDNIzDKDKDKIADNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNHiIhIiIjIjIjIjIjIkIljcjcjcjcjcjcjcjcjcjcjcjcjcImIkInInInInInIiIoHiaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFKFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNEfIBDKDKDKICEfaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNHiHiHiIDIDIDIDIDjajbjcjcjcjcjcjcjcjcjcjcjcjcjcjbjaIDIDIDIDIDHiHiHiaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFKFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFYFKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNEMDwIEIFIGIHIIDwEnaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNHiIJIJIJIJIJHiIcIdIdIdIdIdIdIdIdIdIdIdIdIdIeHiIKIKIKIKIKHiaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFKFKFKFKFKFKFKFKFKFKFKFKFKFKFKFKFKFKFKFKFKFKFKFKFKFKFKFKFKFKFKFKFKFKFKFKaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNEMDwDxDyDzDwEnaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNHiHiHiHiHiHiHiILIMIMIMIMIMINIOIPIMIMIMIMIMILHiHiHiHiHiHiHiaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNEMaNaNaNEnaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNaNaNaNaNaNaNHiILILILIQILIRIRIRIRIRILIQILILILHiaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNaNaNaNaNaNaNHiHiHjHiHiHiHiISITIUHiHiHiHiHjHiHiaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN -aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNHiHiHiHiHiaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNEnaNEMDAENEOEPDKDKEQERESETEuDADKDKDAaNaNDtDAEUEwEVEWEwEXDAaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNEYDKDKDKDKDKDKDKDKDKDKEYDKDKDADwEZDwDwDwFaDwDwFaDwDAaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNDAFbFcFdDKDKDKFeFeFeDKEHDKDKDAFfEwEwFgDADKDAFhFiFjDAaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNEYDKDKDKDKDKFkDwDwDwDwDADKDKDAEwEwFlFmDADKDAFnFoFpDIaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNDAFqFrFsDKFtDAFuFvFwFxDADKDKDAFyEwEwFzDADKDAFAFBFCDNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNEYDKDKDKDKFDDAFEFvFvFvFFDKDKDAFGEwEwFHDADKDKDKDKDKEfaNaNaNaNDtDwFIFJFKDwDuaNaNaNaNaNaNaN +aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNDAFMFNFODKFPDAFQFvFRFSDADKDKDAFTFUEwEwFVDKDKDKDKDKDAaNaNaNDtDwFWFXFXFXFYDwDuaNaNaNaNaNaN +aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFLFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFLaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNDtDwDwDwDwDwDwDwDwDwDwDwGaDKDKGbDwDwDwDwDwDwDwDwGcDwDADuaNDtDwFWFXFXFXFXFXFYDADuaNaNaNaNaN +aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFLFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFLaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNDtDAGdGeGfGgGhGiGjGbDAGaDKDKDKDKDKDKGbDwDwDwDwDwGaDKGbDwDwGkDwFWFXFXFXGlFXFXFXFYDAaNaNaNaNaN +aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFLFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFLaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNDIGmDKDKGnDKDKDKDKDKGoDKDKGpGpGpGpDKDKDKDKDKDKDKDKDKDKGqFXFXFXFXFXFXGrGsGtFXFXFXGuaNaNaNaNaN +aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFLFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFLaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNDNGvGwDKDKDKDKDKDKDKGoDKDKGpGpGpGpDKDKDKDKDKDKDKDKDKDKGqFXFXFXFXFXGxGyGrGrGxFXFXGzaNaNaNaNaN +aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFLFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFLaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNEfGADKDKGBDKDKDKDKDKGoDKDKGpGpGpGpDKDKDKDKDKDKDKDKDKFkDwDwGkDwGCFXFXGxGxGxFXFXGDDAaNaNaNaNaN +aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFLFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFLaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNEMDAGEGFGGGHGIGJGKFkDAEIDKDKDKDKDKDKFkDwDwEIDKFkDwDwDwDAEnaNEMDwGCFXFXFXFXFXGDDAEnaNaNaNaNaN +aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFLFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFLaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNEMDwDwDwDwDwDwDwDwDwDwDwEIDKDKFkDwDwDwDwDwGLDwDwDwDADAaNaNaNEMDwGCFXFXFXGDDwEnaNaNaNaNaNaN +aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFLFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFLaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNEMaNaNaNaNaNaNaNaNaNDvDAGMGMDAaNDAFvGNFvFvFvGNFvDADAaNaNaNaNEMDwFIFJFKDwEnaNaNaNaNaNaNaN +aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFLFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFLaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNDtDwDwDwDwGaDKDKDAaNDAGOFvFvGPFvFvGQDADAaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFLFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFLaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNDIDKDKDKDKDKDKDKDAaNDAGRGPFvFvFvGPGSDADAaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFLFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFLaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNEfDKDKDKDKDKDKDKDAaNDAGTFvFvGPFvFvGUDADAaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFLFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFLaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNDtDwDwDuaNEMDxDyDyDzEIDKDKDAaNDAGVFvFvFvFvFvGWDAEnaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFLFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFLaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNDtaNaNDtDAGXGYGZDuaNaNaNaNaNDIDKDKDAaNEMDwHaHbHcHbHdDwEnaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFLFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFLaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNDtDwDwDwDwDAHeHfDADwDwDwDwDuaNEfDKDKDAaNaNEMDwHgHhHiDwEnaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNHjHjHjHjHkHjHjHjaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFLFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFLaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNDtDAHlHmHnDAHoFvFvHpDAHqHrHsHpDwGaDKDKDAaNaNaNHtHuHvHwHtaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNHjHxHyHyHyHyHzHjHjHjHjHjHjHjHjHkHjHjHjHjHjHjHjHjaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFLFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFLaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNHAFvFvFvHBFvFvFvFvHCFvFvFvFvHCDKDKDKDAaNaNEMDwDwHDDwDwEnaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNHjHxHyHyHyHyHzHjHEHFHGHFHHHIHJHJHJHIHHHJHHHJHKHjaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFLFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFLaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNEMDAHLHMHNDAGVFvFvGWDAHOHPHQGWDwEIDKDKDAaNaNaNEMaNaNaNEnaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNHjHRHyHyHyHyHSHjHJHTHTHTHTHTHJHJHJHTHTHTHTHTHUHjaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFLFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFLaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNEMDwDwDwDwGZHVHWDADwDwDwDwEnaNDIDKDKDAaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNHjHRHXHYHYHyHyHZHJHJHJIaHJHJHJHJHJHJHJIaHJHJHJHjaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFLFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFLaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNEMaNaNEMDAGXIbDAEnaNaNaNaNaNEfDKDKDAaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNHjHjHjHjHjHjHjHjHJHTHTHTHTHTHJHJHJHTHTHTHTHTHJHjHjHjHjHjHjHjaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFLFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFLaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNEMDwDwEnaNDtDxDyDyDzGaDKDKDAaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNHjIcIcIcIcIcHjIdIeIeIeIeIeIeIeIeIeIeIeIeIeIfHjIgIgIgIgIgHjaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFLFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFLaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNDIDKDKDKDKDKDKDKDAaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNHjHjHjIhIhIhIhIhjajbjcjcjcjcjcjcjcjcjcjcjcjcjcjbjaIhIhIhIhIhHjHjHjaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFLFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFLaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNEfDKDKDKDKDKDKFkDAEnaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNHjIiIjIkIkIkIkIkIlImjcjcjcjcjcjcjcjcjcjcjcjcjcInIlIoIoIoIoIoIjIpHjaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFLFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFLaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNEMDwDwDMIqDMDwDwEnaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNHjIiIjIkIrIkIrIkIlImjcjcjcjcjcjcjcjcjcjcjcjcjcInIlIoIsIoIsIoIjIpHjaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFLFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFLaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNDAItDKDKDKIuDAaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNHjIiIjIkIkIvIkIkIlImjcjcjcjcjcIwIxIwjcjcjcjcjcInIlIoIoIyIoIoIjIpHjaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFLFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFLaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNDIDKDKDKDKDKDIaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNHjIiIjIkIrIkIrIkIlImjcjcjcjcjcIwIzIwjcjcjcjcjcInIlIoIsIoIsIoIjIpHjaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFLFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFLaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNDNIADKDKDKIBDNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNHjIiIjIkIkIkIkIkIlImjcjcjcjcjcjcjcjcjcjcjcjcjcInIlIoIoIoIoIoIjIpHjaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFLFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFLaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNEfICDKDKDKIDEfaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNHjHjHjIEIEIEIEIEjajbjcjcjcjcjcjcjcjcjcjcjcjcjcjbjaIEIEIEIEIEHjHjHjaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFLFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFZFLaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNEMDwIFIGIHIIIJDwEnaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNHjIKIKIKIKIKHjIdIeIeIeIeIeIeIeIeIeIeIeIeIeIfHjILILILILILHjaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLFLaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNEMDwDxDyDzDwEnaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNHjHjHjHjHjHjHjIMINININININIOIPIQINININININIMHjHjHjHjHjHjHjaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNEMaNaNaNEnaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNaNaNaNaNaNaNHjIMIMIMIRIMISISISISISIMIRIMIMIMHjaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNaNaNaNaNaNaNHjHjHkHjHjHjHjITIUIVHjHjHjHjHkHjHjaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN +aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNHjHjHjHjHjaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN "} - diff --git a/code/modules/clothing/spacesuits/miscellaneous.dm b/code/modules/clothing/spacesuits/miscellaneous.dm index e6946fa0ddd..8c2527dffa0 100644 --- a/code/modules/clothing/spacesuits/miscellaneous.dm +++ b/code/modules/clothing/spacesuits/miscellaneous.dm @@ -186,10 +186,10 @@ /obj/item/clothing/suit/space/freedom name = "eagle suit" - desc = "An advanced, light suit, fabricated from a mixture of synthetic feathers and space-resistant material. A gun holster appears to be intergrated into the suit and the wings appear to be stuck in 'freedom' mode." + desc = "An advanced, light suit, fabricated from a mixture of synthetic feathers and space-resistant material. A gun holster appears to be integrated into the suit and the wings appear to be stuck in 'freedom' mode." icon_state = "freedom" item_state = "freedom" - allowed = list(/obj/item/weapon/gun,/obj/item/ammo_box,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/restraints/handcuffs,/obj/item/weapon/tank/internals) + allowed = list(/obj/item/weapon/gun,/obj/item/ammo_box,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/restraints/handcuffs,/obj/item/weapon/tank) armor = list(melee = 40, bullet = 40, laser = 30,energy = 25, bomb = 100, bio = 100, rad = 100) slowdown = 1 max_heat_protection_temperature = FIRE_IMMUNITY_HELM_MAX_TEMP_PROTECT diff --git a/code/modules/projectiles/guns/projectile/automatic.dm b/code/modules/projectiles/guns/projectile/automatic.dm index 26f73921bd0..eb614f0e7b2 100644 --- a/code/modules/projectiles/guns/projectile/automatic.dm +++ b/code/modules/projectiles/guns/projectile/automatic.dm @@ -29,8 +29,26 @@ return /obj/item/weapon/gun/projectile/automatic/attackby(var/obj/item/A as obj, mob/user as mob, params) - if(..() && chambered) - alarmed = 0 + . = ..() + if(.) + return + if(istype(A, /obj/item/ammo_box/magazine)) + var/obj/item/ammo_box/magazine/AM = A + if(istype(AM, text2path(mag_type))) + if(magazine) + user << "You perform a tactical reload on \the [src], replacing the magazine." + magazine.forceMove(get_turf(src.loc)) + magazine.update_icon() + magazine = null + else + user << "You insert the magazine into \the [src]." + user.remove_from_mob(AM) + magazine = AM + magazine.forceMove(src) + chamber_round() + A.update_icon() + update_icon() + return 1 /obj/item/weapon/gun/projectile/automatic/ui_action_click() burst_select() diff --git a/code/modules/projectiles/guns/projectile/shotgun.dm b/code/modules/projectiles/guns/projectile/shotgun.dm index dfcd69212cb..3d98953c8d5 100644 --- a/code/modules/projectiles/guns/projectile/shotgun.dm +++ b/code/modules/projectiles/guns/projectile/shotgun.dm @@ -260,13 +260,17 @@ /obj/item/weapon/gun/projectile/automatic/shotgun/bulldog/proc/update_magazine() if(magazine) - src.overlays = 0 + overlays.Cut() overlays += "[magazine.icon_state]" return /obj/item/weapon/gun/projectile/automatic/shotgun/bulldog/update_icon() - src.overlays = 0 + overlays.Cut() update_magazine() + if(!select) + overlays += "[initial(icon_state)]semi" + if(select) + overlays += "[initial(icon_state)]burst" icon_state = "bulldog[chambered ? "" : "-e"]" return From 2b74789b378edeebc1df4115e6420411672f4f78 Mon Sep 17 00:00:00 2001 From: Markolie Date: Mon, 14 Sep 2015 04:39:39 +0200 Subject: [PATCH 36/44] Burst fire tweaks --- code/modules/projectiles/guns/projectile/automatic.dm | 2 +- code/modules/projectiles/guns/projectile/shotgun.dm | 9 +++------ 2 files changed, 4 insertions(+), 7 deletions(-) diff --git a/code/modules/projectiles/guns/projectile/automatic.dm b/code/modules/projectiles/guns/projectile/automatic.dm index eb614f0e7b2..de58dbb90e8 100644 --- a/code/modules/projectiles/guns/projectile/automatic.dm +++ b/code/modules/projectiles/guns/projectile/automatic.dm @@ -243,8 +243,8 @@ mag_type = "/obj/item/ammo_box/magazine/tommygunm45" fire_sound = 'sound/weapons/Gunshot_smg.ogg' can_suppress = 0 + fire_delay = 1 burst_size = 4 - /obj/item/weapon/gun/projectile/automatic/ar name = "ARG" diff --git a/code/modules/projectiles/guns/projectile/shotgun.dm b/code/modules/projectiles/guns/projectile/shotgun.dm index 3d98953c8d5..94f78bcc198 100644 --- a/code/modules/projectiles/guns/projectile/shotgun.dm +++ b/code/modules/projectiles/guns/projectile/shotgun.dm @@ -250,8 +250,9 @@ mag_type = "/obj/item/ammo_box/magazine/m12g" fire_sound = 'sound/weapons/Gunshot4.ogg' can_suppress = 0 - burst_size = 2 - fire_delay = 1 + burst_size = 1 + fire_delay = 0 + action_button_name = null /obj/item/weapon/gun/projectile/automatic/shotgun/bulldog/New() ..() @@ -267,10 +268,6 @@ /obj/item/weapon/gun/projectile/automatic/shotgun/bulldog/update_icon() overlays.Cut() update_magazine() - if(!select) - overlays += "[initial(icon_state)]semi" - if(select) - overlays += "[initial(icon_state)]burst" icon_state = "bulldog[chambered ? "" : "-e"]" return From 7921c539e90c3e69b50b0c6321c2cb153d576511 Mon Sep 17 00:00:00 2001 From: Markolie Date: Mon, 14 Sep 2015 07:05:00 +0200 Subject: [PATCH 37/44] Fix typo --- code/game/machinery/vending.dm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/code/game/machinery/vending.dm b/code/game/machinery/vending.dm index 6ddf7d7f79e..78b78c26e27 100644 --- a/code/game/machinery/vending.dm +++ b/code/game/machinery/vending.dm @@ -848,8 +848,8 @@ desc = "An overwhelming amount of ancient patriotism washes over you just by looking at the machine." icon_state = "liberationstation" req_access_txt = "1" - product_slogans = "Liberation Station: Your one-stop shop for all things second ammendment!;Be a patriot today, pick up a gun!;Quality weapons for cheap prices!;Better dead than red!" - product_ads = "Float like an astronaut, sting like a bullet!;Express your second ammendment today!;Guns don't kill people, but you can!;Who needs responsibilities when you have guns?" + product_slogans = "Liberation Station: Your one-stop shop for all things second amendment!;Be a patriot today, pick up a gun!;Quality weapons for cheap prices!;Better dead than red!" + product_ads = "Float like an astronaut, sting like a bullet!;Express your second amendment today!;Guns don't kill people, but you can!;Who needs responsibilities when you have guns?" vend_reply = "Remember the name: Liberation Station!" products = list(/obj/item/weapon/gun/projectile/automatic/pistol/deagle/gold = 2,/obj/item/weapon/gun/projectile/automatic/pistol/deagle/camo = 2, /obj/item/weapon/gun/projectile/automatic/pistol/m2411 = 2,/obj/item/weapon/gun/projectile/automatic/proto = 2, From 40b4145537b7134966df5759f70fd9a83b30a314 Mon Sep 17 00:00:00 2001 From: FalseIncarnate Date: Mon, 14 Sep 2015 04:27:58 -0400 Subject: [PATCH 38/44] Botany Fixes Fixes invisible plant sprites Fixes Ghost Peppers missing their New() proc --- code/modules/hydroponics/seed_controller.dm | 7 +++++++ code/modules/hydroponics/seed_datums.dm | 7 ++++--- code/modules/hydroponics/trays/tray.dm | 2 ++ code/modules/hydroponics/trays/tray_update_icons.dm | 5 ++++- 4 files changed, 17 insertions(+), 4 deletions(-) diff --git a/code/modules/hydroponics/seed_controller.dm b/code/modules/hydroponics/seed_controller.dm index c8bbcc632bb..b7a6b31cb7c 100644 --- a/code/modules/hydroponics/seed_controller.dm +++ b/code/modules/hydroponics/seed_controller.dm @@ -148,3 +148,10 @@ var/global/datum/controller/plants/plant_controller // Set in New(). /datum/controller/plants/proc/remove_plant(var/obj/effect/plant/plant) plant_queue -= plant + +/client/proc/list_plant_sprites() + if(!plant_controller || !plant_controller.plant_sprites || !plant_controller.plant_sprites.len) + world << "Cannot list plant sprites, plant controller or plant sprites list may not be initialized." + + for(var/base in plant_controller.plant_sprites) + world << "[base] : [plant_controller.plant_sprites[base]] growth states" \ No newline at end of file diff --git a/code/modules/hydroponics/seed_datums.dm b/code/modules/hydroponics/seed_datums.dm index ff24279989b..dd744858635 100644 --- a/code/modules/hydroponics/seed_datums.dm +++ b/code/modules/hydroponics/seed_datums.dm @@ -43,10 +43,11 @@ kitchen_tag = "ghostchili" preset_icon = "ghostchilipepper" -/datum/seed/chili/ice/New() +/datum/seed/chili/ghost/New() ..() - set_trait(TRAIT_MATURATION,4) - set_trait(TRAIT_PRODUCTION,4) + set_trait(TRAIT_MATURATION,10) + set_trait(TRAIT_PRODUCTION,10) + set_trait(TRAIT_YIELD,3) set_trait(TRAIT_PRODUCT_COLOUR,"#00EDC6") // Berry plants/variants. diff --git a/code/modules/hydroponics/trays/tray.dm b/code/modules/hydroponics/trays/tray.dm index 76ede0d9d2d..2ac101eb759 100644 --- a/code/modules/hydroponics/trays/tray.dm +++ b/code/modules/hydroponics/trays/tray.dm @@ -133,6 +133,8 @@ ) //--FalseIncarnate + var/last_plant_ikey //This is for debugging reference, and is otherwise useless. --FalseIncarnate + /obj/machinery/portable_atmospherics/hydroponics/AltClick() if(mechanical && !usr.stat && !usr.lying && Adjacent(usr)) close_lid(usr) diff --git a/code/modules/hydroponics/trays/tray_update_icons.dm b/code/modules/hydroponics/trays/tray_update_icons.dm index 45454c0d286..ceab49c8e2f 100644 --- a/code/modules/hydroponics/trays/tray_update_icons.dm +++ b/code/modules/hydroponics/trays/tray_update_icons.dm @@ -36,7 +36,9 @@ if(age >= seed.get_trait(TRAIT_MATURATION)) overlay_stage = seed.growth_stages else - var/maturation = round(seed.get_trait(TRAIT_MATURATION)/seed.growth_stages) + var/maturation = seed.get_trait(TRAIT_MATURATION)/seed.growth_stages + if(maturation < 1) + maturation = 1 overlay_stage = maturation ? max(1,round(age/maturation)) : 1 var/ikey = "[seed.get_trait(TRAIT_PLANT_ICON)]-[overlay_stage]" var/image/plant_overlay = plant_controller.plant_icon_cache["[ikey]-[seed.get_trait(TRAIT_PLANT_COLOUR)]"] @@ -45,6 +47,7 @@ plant_overlay.color = seed.get_trait(TRAIT_PLANT_COLOUR) plant_controller.plant_icon_cache["[ikey]-[seed.get_trait(TRAIT_PLANT_COLOUR)]"] = plant_overlay overlays |= plant_overlay + last_plant_ikey = ikey if(harvest && overlay_stage == seed.growth_stages) ikey = "[seed.get_trait(TRAIT_PRODUCT_ICON)]" From 9d2dab6917514a1e22000b83d69c5ee527148a05 Mon Sep 17 00:00:00 2001 From: Fox-McCloud Date: Mon, 14 Sep 2015 04:49:29 -0400 Subject: [PATCH 39/44] Reagents Performance and Garbage Collection --- code/modules/reagents/Chemistry-Holder.dm | 3 ++- .../chemical_reaction_slime.dm | 25 +++++++++++-------- .../oldchem/reagents/_reagent_base.dm | 3 ++- 3 files changed, 18 insertions(+), 13 deletions(-) diff --git a/code/modules/reagents/Chemistry-Holder.dm b/code/modules/reagents/Chemistry-Holder.dm index 29a67ffe492..c5d2ba86fbf 100644 --- a/code/modules/reagents/Chemistry-Holder.dm +++ b/code/modules/reagents/Chemistry-Holder.dm @@ -628,6 +628,7 @@ atom/proc/create_reagents(var/max_vol) reagents.my_atom = src /datum/reagents/Destroy() + ..() processing_objects.Remove(src) for(var/datum/reagent/R in reagent_list) qdel(R) @@ -635,4 +636,4 @@ atom/proc/create_reagents(var/max_vol) reagent_list = null if(my_atom && my_atom.reagents == src) my_atom.reagents = null - return ..() \ No newline at end of file + return QDEL_HINT_QUEUE \ No newline at end of file diff --git a/code/modules/reagents/oldchem/chemical_reaction/chemical_reaction_slime.dm b/code/modules/reagents/oldchem/chemical_reaction/chemical_reaction_slime.dm index a1d8b033672..9d38b1ad599 100644 --- a/code/modules/reagents/oldchem/chemical_reaction/chemical_reaction_slime.dm +++ b/code/modules/reagents/oldchem/chemical_reaction/chemical_reaction_slime.dm @@ -214,11 +214,12 @@ on_reaction(var/datum/reagents/holder) for(var/mob/O in viewers(get_turf(holder.my_atom), null)) O.show_message(text("\red The slime extract begins to vibrate violently !"), 1) - sleep(50) - playsound(get_turf(holder.my_atom), 'sound/effects/phasein.ogg', 100, 1) - for(var/mob/living/M in range (get_turf(holder.my_atom), 7)) - M.bodytemperature -= 140 - M << "\blue You feel a chill!" + spawn(50) + if(holder && holder.my_atom) + playsound(get_turf(holder.my_atom), 'sound/effects/phasein.ogg', 100, 1) + for(var/mob/living/M in range (get_turf(holder.my_atom), 7)) + M.bodytemperature -= 140 + M << "\blue You feel a chill!" //Orange slimecasp @@ -242,10 +243,11 @@ feedback_add_details("slime_cores_used","[replacetext(name," ","_")]") for(var/mob/O in viewers(get_turf(holder.my_atom), null)) O.show_message(text("\red The slime extract begins to vibrate violently !"), 1) - sleep(50) - var/turf/simulated/T = get_turf(holder.my_atom) - if(istype(T)) - T.atmos_spawn_air(SPAWN_HEAT | SPAWN_TOXINS, 50) + spawn(50) + if(holder && holder.my_atom) + var/turf/simulated/T = get_turf(holder.my_atom) + if(istype(T)) + T.atmos_spawn_air(SPAWN_HEAT | SPAWN_TOXINS, 50) //Yellow slimeoverload @@ -387,8 +389,9 @@ on_reaction(var/datum/reagents/holder) for(var/mob/O in viewers(get_turf(holder.my_atom), null)) O.show_message(text("\red The slime extract begins to vibrate violently !"), 1) - sleep(50) - explosion(get_turf(holder.my_atom), 1 ,3, 6) + spawn(50) + if(holder && holder.my_atom) + explosion(get_turf(holder.my_atom), 1 ,3, 6) //Light Pink slimepotion2 name = "Slime Potion 2" diff --git a/code/modules/reagents/oldchem/reagents/_reagent_base.dm b/code/modules/reagents/oldchem/reagents/_reagent_base.dm index 2b2a94ee149..782f25d36cc 100644 --- a/code/modules/reagents/oldchem/reagents/_reagent_base.dm +++ b/code/modules/reagents/oldchem/reagents/_reagent_base.dm @@ -78,5 +78,6 @@ return /datum/reagent/Destroy() + ..() holder = null - return ..() \ No newline at end of file + return QDEL_HINT_QUEUE \ No newline at end of file From 0c991f70920db8ac2bfec4367a12a109f07142ce Mon Sep 17 00:00:00 2001 From: Markolie Date: Mon, 14 Sep 2015 22:13:18 +0200 Subject: [PATCH 40/44] Nuke code admin check fix --- code/modules/admin/verbs/pray.dm | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/code/modules/admin/verbs/pray.dm b/code/modules/admin/verbs/pray.dm index 2985f05aab8..8d41f49a918 100644 --- a/code/modules/admin/verbs/pray.dm +++ b/code/modules/admin/verbs/pray.dm @@ -16,7 +16,7 @@ msg = "\blue \icon[cross] PRAY: [key_name(src, 1)] (?) (PP) (VV) (SM) ([admin_jump_link(src, "holder")]) (CA) (SC): [msg]" for(var/client/X in admins) - if(R_EVENT & X.holder.rights) + if(check_rights(R_EVENT,0,X.mob)) X << msg usr << "Your prayers have been received by the gods." @@ -37,7 +37,7 @@ msg = "\blue SYNDICATE: [key_name(Sender, 1)] (PP) (VV) (SM) ([admin_jump_link(Sender, "holder")]) (CA) (BSA) (REPLY): [msg]" for(var/client/X in admins) - if(R_EVENT & X.holder.rights) + if(check_rights(R_EVENT,0,X.mob)) X << msg /proc/HONK_announce(var/text , var/mob/Sender) @@ -53,12 +53,16 @@ msg = "\blue ERT REQUEST: [key_name(Sender, 1)] (PP) (VV) (SM) ([admin_jump_link(Sender, "holder")]) (CA) (BSA) (REPLY): [msg]" for(var/client/X in admins) - if(R_EVENT & X.holder.rights) + if(check_rights(R_EVENT,0,X.mob)) X << msg /proc/Nuke_request(text , mob/Sender) var/nuke_code = get_nuke_code() var/msg = sanitize(copytext(text, 1, MAX_MESSAGE_LEN)) msg = "NUKE CODE REQUEST: [key_name(Sender)] (PP) (VV) (SM) ([admin_jump_link(Sender, "holder")]) (CA) (BSA) (RPLY): [msg]" - admins << msg - admins << "The nuke code is [nuke_code]." \ No newline at end of file + + for(var/client/X in admins) + if(check_rights(R_EVENT,0,X.mob)) + X << msg + X << "The nuke code is [nuke_code]." + \ No newline at end of file From 84c60aa5604f7b1f06a38ec82830a130243f3c45 Mon Sep 17 00:00:00 2001 From: Markolie Date: Mon, 14 Sep 2015 22:13:32 +0200 Subject: [PATCH 41/44] Monkey/human transform fixes --- code/__DEFINES/flags.dm | 18 +- code/game/dna/dna.dm | 128 ---- code/game/dna/dna_misc.dm | 575 ------------------ code/game/dna/genes/monkey.dm | 35 +- .../special_shadowling_abilities.dm | 1 + code/modules/admin/admin.dm | 2 +- .../mob/living/carbon/human/species/apollo.dm | 3 +- .../living/carbon/human/species/species.dm | 1 + .../living/carbon/human/species/station.dm | 23 +- .../mob/living/carbon/human/update_icons.dm | 6 +- .../mob/new_player/preferences_setup.dm | 6 +- code/modules/mob/transform_procs.dm | 54 -- 12 files changed, 58 insertions(+), 794 deletions(-) delete mode 100644 code/game/dna/dna.dm delete mode 100644 code/game/dna/dna_misc.dm diff --git a/code/__DEFINES/flags.dm b/code/__DEFINES/flags.dm index 4ce8554bb4c..b0312b6a475 100644 --- a/code/__DEFINES/flags.dm +++ b/code/__DEFINES/flags.dm @@ -42,13 +42,17 @@ #define NO_PAIN 32 #define REQUIRE_LIGHT 64 #define IS_WHITELISTED 128 -#define HAS_LIPS 512 -#define HAS_UNDERWEAR 1024 -#define IS_PLANT 2048 -#define CAN_BE_FAT 4096 -#define IS_RESTRICTED 8192 -#define NO_INTORGANS 16384 -#define NO_POISON 32768 +#define HAS_LIPS 256 +#define IS_PLANT 512 +#define CAN_BE_FAT 1024 +#define IS_RESTRICTED 2048 +#define NO_INTORGANS 4096 +#define NO_POISON 8192 + +//Species clothing flags +#define HAS_UNDERWEAR 1 +#define HAS_UNDERSHIRT 2 +#define HAS_SOCKS 4 //Species Blood Flags #define BLOOD_SLIME 1 diff --git a/code/game/dna/dna.dm b/code/game/dna/dna.dm deleted file mode 100644 index 716d563a6e7..00000000000 --- a/code/game/dna/dna.dm +++ /dev/null @@ -1,128 +0,0 @@ -/////////////////////////// DNA DATUM -/datum/dna - var/unique_enzymes = null - var/struc_enzymes = null - var/uni_identity = null - var/b_type = "A+" - var/mutantrace = null //The type of mutant race the player is if applicable (i.e. potato-man) - var/real_name //Stores the real name of the person who originally got this dna datum. Used primarely for changelings, - -/datum/dna/proc/check_integrity(var/mob/living/carbon/human/character) - if(character) - if(length(uni_identity) != 39) - //Lazy. - var/temp - - //Hair - var/hair = 0 - if(!character.h_style) - character.h_style = "Skinhead" - - var/hrange = round(4095 / hair_styles_list.len) - var/index = hair_styles_list.Find(character.h_style) - if(index) - hair = index * hrange - rand(1,hrange-1) - - //Facial Hair - var/beard = 0 - if(!character.f_style) - character.f_style = "Shaved" - - var/f_hrange = round(4095 / facial_hair_styles_list.len) - index = facial_hair_styles_list.Find(character.f_style) - if(index) - beard = index * f_hrange - rand(1,f_hrange-1) - - temp = add_zero2(num2hex((character.r_hair),1), 3) - temp += add_zero2(num2hex((character.b_hair),1), 3) - temp += add_zero2(num2hex((character.g_hair),1), 3) - temp += add_zero2(num2hex((character.r_facial),1), 3) - temp += add_zero2(num2hex((character.b_facial),1), 3) - temp += add_zero2(num2hex((character.g_facial),1), 3) - temp += add_zero2(num2hex(((character.s_tone + 220) * 16),1), 3) - temp += add_zero2(num2hex((character.r_eyes),1), 3) - temp += add_zero2(num2hex((character.g_eyes),1), 3) - temp += add_zero2(num2hex((character.b_eyes),1), 3) - - var/gender - - if (character.gender == MALE) - gender = add_zero2(num2hex((rand(1,(2050+BLOCKADD))),1), 3) - else - gender = add_zero2(num2hex((rand((2051+BLOCKADD),4094)),1), 3) - - temp += gender - temp += add_zero2(num2hex((beard),1), 3) - temp += add_zero2(num2hex((hair),1), 3) - - uni_identity = temp - if(length(struc_enzymes)!= 3*STRUCDNASIZE) - var/mutstring = "" - for(var/i = 1, i <= STRUCDNASIZE, i++) - mutstring += add_zero2(num2hex(rand(1,1024)),3) - - struc_enzymes = mutstring - if(length(unique_enzymes) != 32) - unique_enzymes = md5(character.real_name) - else - if(length(uni_identity) != 39) uni_identity = "00600200A00E0110148FC01300B0095BD7FD3F4" - if(length(struc_enzymes)!= 3*STRUCDNASIZE) struc_enzymes = "43359156756131E13763334D1C369012032164D4FE4CD61544B6C03F251B6C60A42821D26BA3B0FD6" - -/datum/dna/proc/ready_dna(mob/living/carbon/human/character) - var/temp - - //Hair - var/hair = 0 - if(!character.h_style) - character.h_style = random_hair_style(character.gender) - - var/hrange = round(4095 / hair_styles_list.len) - var/index = hair_styles_list.Find(character.h_style) - if(index) - hair = index * hrange - rand(1,hrange-1) - - //Facial Hair - var/beard = 0 - if(!character.f_style) - character.f_style = random_facial_hair_style(character.gender) - - var/f_hrange = round(4095 / facial_hair_styles_list.len) - index = facial_hair_styles_list.Find(character.f_style) - if(index) - beard = index * f_hrange - rand(1,f_hrange-1) - - temp = add_zero2(num2hex((character.r_hair),1), 3) - temp += add_zero2(num2hex((character.b_hair),1), 3) - temp += add_zero2(num2hex((character.g_hair),1), 3) - temp += add_zero2(num2hex((character.r_facial),1), 3) - temp += add_zero2(num2hex((character.b_facial),1), 3) - temp += add_zero2(num2hex((character.g_facial),1), 3) - temp += add_zero2(num2hex(((character.s_tone + 220) * 16),1), 3) - temp += add_zero2(num2hex((character.r_eyes),1), 3) - temp += add_zero2(num2hex((character.g_eyes),1), 3) - temp += add_zero2(num2hex((character.b_eyes),1), 3) - - var/gender - - if (character.gender == MALE) - gender = add_zero2(num2hex((rand(1,(2050+BLOCKADD))),1), 3) - else - gender = add_zero2(num2hex((rand((2051+BLOCKADD),4094)),1), 3) - - temp += gender - temp += add_zero2(num2hex((beard),1), 3) - temp += add_zero2(num2hex((hair),1), 3) - - uni_identity = temp - - var/mutstring = "" - for(var/i = 1, i <= STRUCDNASIZE, i++) - mutstring += add_zero2(num2hex(rand(1,1024)),3) - - - struc_enzymes = mutstring - - unique_enzymes = md5(character.real_name) - reg_dna[unique_enzymes] = character.real_name - -/////////////////////////// DNA DATUM \ No newline at end of file diff --git a/code/game/dna/dna_misc.dm b/code/game/dna/dna_misc.dm deleted file mode 100644 index b4c8bda8b9f..00000000000 --- a/code/game/dna/dna_misc.dm +++ /dev/null @@ -1,575 +0,0 @@ -/////////////////////////// DNA HELPER-PROCS -/proc/getleftblocks(input,blocknumber,blocksize) - var/string - - if (blocknumber > 1) - string = copytext(input,1,((blocksize*blocknumber)-(blocksize-1))) - return string - else - return null - -/proc/getrightblocks(input,blocknumber,blocksize) - var/string - if (blocknumber < (length(input)/blocksize)) - string = copytext(input,blocksize*blocknumber+1,length(input)+1) - return string - else - return null - -/proc/getblockstring(input,block,subblock,blocksize,src,ui) // src is probably used here just for urls; ui is 1 when requesting for the unique identifier screen, 0 for structural enzymes screen - var/string - var/subpos = 1 // keeps track of the current sub block - var/blockpos = 1 // keeps track of the current block - - - for(var/i = 1, i <= length(input), i++) // loop through each letter - - var/pushstring - - if(subpos == subblock && blockpos == block) // if the current block/subblock is selected, mark it - pushstring = "[copytext(input, i, i+1)]" - else - if(ui) //This is for allowing block clicks to be differentiated - pushstring = "[copytext(input, i, i+1)]" - else - pushstring = "[copytext(input, i, i+1)]" - - string += pushstring // push the string to the return string - - if(subpos >= blocksize) // add a line break for every block - string += " | " - subpos = 0 - blockpos++ - - subpos++ - - return string - - -/proc/getblock(input,blocknumber,blocksize) - var/result - result = copytext(input ,(blocksize*blocknumber)-(blocksize-1),(blocksize*blocknumber)+1) - return result - -/proc/getblockbuffer(input,blocknumber,blocksize) - var/result[3] - var/block = copytext(input ,(blocksize*blocknumber)-(blocksize-1),(blocksize*blocknumber)+1) - for(var/i = 1, i <= 3, i++) - result[i] = copytext(block, i, i+1) - return result - -/proc/setblock(istring, blocknumber, replacement, blocksize) - if(!blocknumber) - return istring - if(!istring || !replacement || !blocksize) return 0 - var/result = getleftblocks(istring, blocknumber, blocksize) + replacement + getrightblocks(istring, blocknumber, blocksize) - return result - -/proc/add_zero2(t, u) - var/temp1 - while (length(t) < u) - t = "0[t]" - temp1 = t - if (length(t) > u) - temp1 = copytext(t,2,u+1) - return temp1 - -/proc/miniscramble(input,rs,rd) - var/output - output = null - if (input == "C" || input == "D" || input == "E" || input == "F") - output = pick(prob((rs*10));"4",prob((rs*10));"5",prob((rs*10));"6",prob((rs*10));"7",prob((rs*5)+(rd));"0",prob((rs*5)+(rd));"1",prob((rs*10)-(rd));"2",prob((rs*10)-(rd));"3") - if (input == "8" || input == "9" || input == "A" || input == "B") - output = pick(prob((rs*10));"4",prob((rs*10));"5",prob((rs*10));"A",prob((rs*10));"B",prob((rs*5)+(rd));"C",prob((rs*5)+(rd));"D",prob((rs*5)+(rd));"2",prob((rs*5)+(rd));"3") - if (input == "4" || input == "5" || input == "6" || input == "7") - output = pick(prob((rs*10));"4",prob((rs*10));"5",prob((rs*10));"A",prob((rs*10));"B",prob((rs*5)+(rd));"C",prob((rs*5)+(rd));"D",prob((rs*5)+(rd));"2",prob((rs*5)+(rd));"3") - if (input == "0" || input == "1" || input == "2" || input == "3") - output = pick(prob((rs*10));"8",prob((rs*10));"9",prob((rs*10));"A",prob((rs*10));"B",prob((rs*10)-(rd));"C",prob((rs*10)-(rd));"D",prob((rs*5)+(rd));"E",prob((rs*5)+(rd));"F") - if (!output) output = "5" - return output - -//Instead of picking a value far from the input, this will pick values closer to it. -//Sorry for the block of code, but it's more efficient then calling text2hex -> loop -> hex2text -/proc/miniscrambletarget(input,rs,rd) - var/output = null - switch(input) - if("0") - output = pick(prob((rs*10)+(rd));"0",prob((rs*10)+(rd));"1",prob((rs*10));"2",prob((rs*10)-(rd));"3") - if("1") - output = pick(prob((rs*10)+(rd));"0",prob((rs*10)+(rd));"1",prob((rs*10)+(rd));"2",prob((rs*10));"3",prob((rs*10)-(rd));"4") - if("2") - output = pick(prob((rs*10));"0",prob((rs*10)+(rd));"1",prob((rs*10)+(rd));"2",prob((rs*10)+(rd));"3",prob((rs*10));"4",prob((rs*10)-(rd));"5") - if("3") - output = pick(prob((rs*10)-(rd));"0",prob((rs*10));"1",prob((rs*10)+(rd));"2",prob((rs*10)+(rd));"3",prob((rs*10)+(rd));"4",prob((rs*10));"5",prob((rs*10)-(rd));"6") - if("4") - output = pick(prob((rs*10)-(rd));"1",prob((rs*10));"2",prob((rs*10)+(rd));"3",prob((rs*10)+(rd));"4",prob((rs*10)+(rd));"5",prob((rs*10));"6",prob((rs*10)-(rd));"7") - if("5") - output = pick(prob((rs*10)-(rd));"2",prob((rs*10));"3",prob((rs*10)+(rd));"4",prob((rs*10)+(rd));"5",prob((rs*10)+(rd));"6",prob((rs*10));"7",prob((rs*10)-(rd));"8") - if("6") - output = pick(prob((rs*10)-(rd));"3",prob((rs*10));"4",prob((rs*10)+(rd));"5",prob((rs*10)+(rd));"6",prob((rs*10)+(rd));"7",prob((rs*10));"8",prob((rs*10)-(rd));"9") - if("7") - output = pick(prob((rs*10)-(rd));"4",prob((rs*10));"5",prob((rs*10)+(rd));"6",prob((rs*10)+(rd));"7",prob((rs*10)+(rd));"8",prob((rs*10));"9",prob((rs*10)-(rd));"A") - if("8") - output = pick(prob((rs*10)-(rd));"5",prob((rs*10));"6",prob((rs*10)+(rd));"7",prob((rs*10)+(rd));"8",prob((rs*10)+(rd));"9",prob((rs*10));"A",prob((rs*10)-(rd));"B") - if("9") - output = pick(prob((rs*10)-(rd));"6",prob((rs*10));"7",prob((rs*10)+(rd));"8",prob((rs*10)+(rd));"9",prob((rs*10)+(rd));"A",prob((rs*10));"B",prob((rs*10)-(rd));"C") - if("10")//A - output = pick(prob((rs*10)-(rd));"7",prob((rs*10));"8",prob((rs*10)+(rd));"9",prob((rs*10)+(rd));"A",prob((rs*10)+(rd));"B",prob((rs*10));"C",prob((rs*10)-(rd));"D") - if("11")//B - output = pick(prob((rs*10)-(rd));"8",prob((rs*10));"9",prob((rs*10)+(rd));"A",prob((rs*10)+(rd));"B",prob((rs*10)+(rd));"C",prob((rs*10));"D",prob((rs*10)-(rd));"E") - if("12")//C - output = pick(prob((rs*10)-(rd));"9",prob((rs*10));"A",prob((rs*10)+(rd));"B",prob((rs*10)+(rd));"C",prob((rs*10)+(rd));"D",prob((rs*10));"E",prob((rs*10)-(rd));"F") - if("13")//D - output = pick(prob((rs*10)-(rd));"A",prob((rs*10));"B",prob((rs*10)+(rd));"C",prob((rs*10)+(rd));"D",prob((rs*10)+(rd));"E",prob((rs*10));"F") - if("14")//E - output = pick(prob((rs*10)-(rd));"B",prob((rs*10));"C",prob((rs*10)+(rd));"D",prob((rs*10)+(rd));"E",prob((rs*10)+(rd));"F") - if("15")//F - output = pick(prob((rs*10)-(rd));"C",prob((rs*10));"D",prob((rs*10)+(rd));"E",prob((rs*10)+(rd));"F") - - if(!input || !output) //How did this happen? - output = "8" - - return output - -/proc/isblockon(hnumber, bnumber , var/UI = 0) - - var/temp2 - temp2 = hex2num(hnumber) - - if(UI) - if(temp2 >= 2050) - return 1 - else - return 0 - - if (bnumber == HULKBLOCK || bnumber == TELEBLOCK || bnumber == NOBREATHBLOCK || bnumber == NOPRINTSBLOCK || bnumber == SMALLSIZEBLOCK || bnumber == SHOCKIMMUNITYBLOCK) - if (temp2 >= 3500 + BLOCKADD) - return 1 - else - return 0 - if (bnumber == XRAYBLOCK || bnumber == FIREBLOCK || bnumber == REMOTEVIEWBLOCK || bnumber == REGENERATEBLOCK || bnumber == INCREASERUNBLOCK || bnumber == REMOTETALKBLOCK || bnumber == MORPHBLOCK) - if (temp2 >= 3050 + BLOCKADD) - return 1 - else - return 0 - - - if (temp2 >= 2050 + BLOCKADD) - return 1 - else - return 0 - -/proc/ismuton(var/block,var/mob/M) - return isblockon(getblock(M.dna.struc_enzymes, block,3),block) - -/proc/randmutb(mob/M as mob) - if(!M) return - var/num - var/newdna - num = pick(GLASSESBLOCK,COUGHBLOCK,FAKEBLOCK,NERVOUSBLOCK,CLUMSYBLOCK,TWITCHBLOCK,HEADACHEBLOCK,BLINDBLOCK,DEAFBLOCK,HALLUCINATIONBLOCK) - M.dna.check_integrity() - newdna = setblock(M.dna.struc_enzymes,num,toggledblock(getblock(M.dna.struc_enzymes,num,3)),3) - M.dna.struc_enzymes = newdna - return - -/proc/randmutg(mob/M as mob) - if(!M) return - var/num - var/newdna - num = pick(HULKBLOCK,XRAYBLOCK,FIREBLOCK,TELEBLOCK,NOBREATHBLOCK,REMOTEVIEWBLOCK,REGENERATEBLOCK,INCREASERUNBLOCK,REMOTETALKBLOCK,MORPHBLOCK,BLENDBLOCK,NOPRINTSBLOCK,SHOCKIMMUNITYBLOCK,SMALLSIZEBLOCK) - M.dna.check_integrity() - newdna = setblock(M.dna.struc_enzymes,num,toggledblock(getblock(M.dna.struc_enzymes,num,3)),3) - M.dna.struc_enzymes = newdna - return - -/proc/scramble(var/type, mob/M as mob, var/p) - if(!M) return - M.dna.check_integrity() - if(type) - for(var/i = 1, i <= STRUCDNASIZE-1, i++) - if(prob(p)) - M.dna.uni_identity = setblock(M.dna.uni_identity, i, add_zero2(num2hex(rand(1,4095), 1), 3), 3) - updateappearance(M, M.dna.uni_identity) - - else - for(var/i = 1, i <= STRUCDNASIZE-1, i++) - if(prob(p)) - M.dna.struc_enzymes = setblock(M.dna.struc_enzymes, i, add_zero2(num2hex(rand(1,4095), 1), 3), 3) - domutcheck(M, null) - return - -/proc/randmuti(mob/M as mob) - if(!M) return - var/num - var/newdna - num = rand(1,UNIDNASIZE) - M.dna.check_integrity() - newdna = setblock(M.dna.uni_identity,num,add_zero2(num2hex(rand(1,4095),1),3),3) - M.dna.uni_identity = newdna - return - -/proc/toggledblock(hnumber) //unused - var/temp3 - var/chtemp - temp3 = hex2num(hnumber) - if (temp3 < 2050) - chtemp = rand(2050,4095) - return add_zero2(num2hex(chtemp,1),3) - else - chtemp = rand(1,2049) - return add_zero2(num2hex(chtemp,1),3) -/////////////////////////// DNA HELPER-PROCS - -/////////////////////////// DNA MISC-PROCS -/proc/updateappearance(mob/M as mob , structure) - if(istype(M, /mob/living/carbon/human)) - M.dna.check_integrity() - var/mob/living/carbon/human/H = M - H.r_hair = hex2num(getblock(structure,1,3)) - H.b_hair = hex2num(getblock(structure,2,3)) - H.g_hair = hex2num(getblock(structure,3,3)) - H.r_facial = hex2num(getblock(structure,4,3)) - H.b_facial = hex2num(getblock(structure,5,3)) - H.g_facial = hex2num(getblock(structure,6,3)) - H.s_tone = round(((hex2num(getblock(structure,7,3)) / 16) - 220)) - H.r_eyes = hex2num(getblock(structure,8,3)) - H.g_eyes = hex2num(getblock(structure,9,3)) - H.b_eyes = hex2num(getblock(structure,10,3)) - if(H.internal_organs_by_name["eyes"]) - H.update_eyes() - - if (isblockon(getblock(structure, 11,3),11 , 1)) - H.gender = FEMALE - else - H.gender = MALE - - //Hair - var/hairnum = hex2num(getblock(structure,13,3)) - var/index = round(1 +(hairnum / 4096)*hair_styles_list.len) - if((0 < index) && (index <= hair_styles_list.len)) - H.h_style = hair_styles_list[index] - - //Facial Hair - var/beardnum = hex2num(getblock(structure,12,3)) - index = round(1 +(beardnum / 4096)*facial_hair_styles_list.len) - if((0 < index) && (index <= facial_hair_styles_list.len)) - H.f_style = facial_hair_styles_list[index] - - H.update_body(0) - H.update_hair() - - return 1 - else - return 0 - -/proc/probinj(var/pr, var/inj) - return prob(pr+inj*pr) - -/proc/domutcheck(mob/living/M as mob, connected, inj) - if (!M) return - - M.dna.check_integrity() - - M.disabilities = 0 - M.sdisabilities = 0 - var/old_mutations = M.mutations - M.mutations = list() - M.pass_flags = 0 -// M.see_in_dark = 2 -// M.see_invisible = 0 - - if(PLANT in old_mutations) - M.mutations.Add(PLANT) - if(SKELETON in old_mutations) - M.mutations.Add(SKELETON) - if(FAT in old_mutations) - M.mutations.Add(FAT) - if(HUSK in old_mutations) - M.mutations.Add(HUSK) - - if(ismuton(NOBREATHBLOCK,M)) - if(probinj(45,inj) || (mNobreath in old_mutations)) - M << "\blue You feel no need to breathe." - M.mutations.Add(mNobreath) - if(ismuton(REMOTEVIEWBLOCK,M)) - if(probinj(45,inj) || (mRemote in old_mutations)) - M << "\blue Your mind expands" - M.mutations.Add(mRemote) - M.verbs += /mob/living/carbon/human/proc/remoteobserve - if(ismuton(REGENERATEBLOCK,M)) - if(probinj(45,inj) || (mRegen in old_mutations)) - M << "\blue Your body pulses with energy" - M.mutations.Add(mRegen) - if(ismuton(INCREASERUNBLOCK,M)) - if(probinj(45,inj) || (mRun in old_mutations)) - M << "\blue You feel quick" - M.mutations.Add(mRun) - if(ismuton(REMOTETALKBLOCK,M)) - if(probinj(45,inj) || (mRemotetalk in old_mutations)) - M << "\blue You expand your mind outwards" - M.mutations.Add(mRemotetalk) - M.verbs += /mob/living/carbon/human/proc/remotesay - if(ismuton(MORPHBLOCK,M)) - if(probinj(45,inj) || (mMorph in old_mutations)) - M.mutations.Add(mMorph) - M << "\blue Your skin feels strange" - M.verbs += /mob/living/carbon/human/proc/morph - if(ismuton(BLENDBLOCK,M)) - if(probinj(45,inj) || (mBlend in old_mutations)) - M.mutations.Add(mBlend) - M << "\blue You feel alone" - if(ismuton(HALLUCINATIONBLOCK,M)) - if(probinj(45,inj) || (mHallucination in old_mutations)) - M.mutations.Add(mHallucination) - M << "\red Your mind says 'Hello'" - if(ismuton(NOPRINTSBLOCK,M)) - if(probinj(45,inj) || (mFingerprints in old_mutations)) - M.mutations.Add(mFingerprints) - M << "\blue Your fingers feel numb" - if(ismuton(SHOCKIMMUNITYBLOCK,M)) - if(probinj(45,inj) || (mShock in old_mutations)) - M.mutations.Add(mShock) - M << "\blue Your skin feels dry" - if(ismuton(SMALLSIZEBLOCK,M)) - if(probinj(45,inj) || (mSmallsize in old_mutations)) - M << "\blue Your skin feels rubbery" - M.mutations.Add(mSmallsize) - M.pass_flags |= 1 - - - - if (isblockon(getblock(M.dna.struc_enzymes, HULKBLOCK,3),HULKBLOCK)) - if(probinj(5,inj) || (HULK in old_mutations)) - M << "\blue Your muscles hurt." - M.mutations.Add(HULK) - if (isblockon(getblock(M.dna.struc_enzymes, HEADACHEBLOCK,3),HEADACHEBLOCK)) - M.disabilities |= EPILEPSY - M << "\red You get a headache." - if (isblockon(getblock(M.dna.struc_enzymes, FAKEBLOCK,3),FAKEBLOCK)) - M << "\red You feel strange." - if (prob(95)) - if(prob(50)) - randmutb(M) - else - randmuti(M) - else - randmutg(M) - if (isblockon(getblock(M.dna.struc_enzymes, COUGHBLOCK,3),COUGHBLOCK)) - M.disabilities |= COUGHING - M << "\red You start coughing." - if (isblockon(getblock(M.dna.struc_enzymes, CLUMSYBLOCK,3),CLUMSYBLOCK)) - M << "\red You feel lightheaded." - M.mutations.Add(CLUMSY) - if (isblockon(getblock(M.dna.struc_enzymes, TWITCHBLOCK,3),TWITCHBLOCK)) - M.disabilities |= TOURETTES - M << "\red You twitch." - if (isblockon(getblock(M.dna.struc_enzymes, XRAYBLOCK,3),XRAYBLOCK)) - if(probinj(30,inj) || (XRAY in old_mutations)) - M << "\blue The walls suddenly disappear." -// M.sight |= (SEE_MOBS|SEE_OBJS|SEE_TURFS) -// M.see_in_dark = 8 -// M.see_invisible = 2 - M.mutations.Add(XRAY) - if (isblockon(getblock(M.dna.struc_enzymes, NERVOUSBLOCK,3),NERVOUSBLOCK)) - M.disabilities |= NERVOUS - M << "\red You feel nervous." - if (isblockon(getblock(M.dna.struc_enzymes, FIREBLOCK,3),FIREBLOCK)) - if(probinj(30,inj) || (COLD_RESISTANCE in old_mutations)) - M << "\blue Your body feels warm." - M.mutations.Add(COLD_RESISTANCE) - if (isblockon(getblock(M.dna.struc_enzymes, BLINDBLOCK,3),BLINDBLOCK)) - M.sdisabilities |= BLIND - M << "\red You can't seem to see anything." - if (isblockon(getblock(M.dna.struc_enzymes, TELEBLOCK,3),TELEBLOCK)) - if(probinj(15,inj) || (TK in old_mutations)) - M << "\blue You feel smarter." - M.mutations.Add(TK) - if (isblockon(getblock(M.dna.struc_enzymes, DEAFBLOCK,3),DEAFBLOCK)) - M.sdisabilities |= DEAF - M.ear_deaf = 1 - M << "\red Its kinda quiet.." - if (isblockon(getblock(M.dna.struc_enzymes, GLASSESBLOCK,3),GLASSESBLOCK)) - M.disabilities |= NEARSIGHTED - M << "Your eyes feel weird..." - - /* If you want the new mutations to work, UNCOMMENT THIS. - if(istype(M, /mob/living/carbon)) - for (var/datum/mutations/mut in global_mutations) - mut.check_mutation(M) - */ - -//////////////////////////////////////////////////////////// Monkey Block - if (isblockon(getblock(M.dna.struc_enzymes, MONKEYBLOCK,3),MONKEYBLOCK) && istype(M, /mob/living/carbon/human)) - // human > monkey - var/mob/living/carbon/human/H = M - H.notransform = 1 - var/list/implants = list() //Try to preserve implants. - for(var/obj/item/weapon/implant/W in H) - implants += W - W.loc = null - - if(!connected) - for(var/obj/item/W in (H.contents-implants)) - if (W==H.w_uniform) // will be teared - continue - H.unEquip(W) - M.notransform = 1 - M.canmove = 0 - M.icon = null - M.invisibility = 101 - var/atom/movable/overlay/animation = new( M.loc ) - animation.icon_state = "blank" - animation.icon = 'icons/mob/mob.dmi' - animation.master = src - flick("h2monkey", animation) - sleep(48) - del(animation) - - - var/mob/living/carbon/monkey/O = null - if(H.species.primitive) - O = new H.species.primitive(src) - else - H.gib() //Trying to change the species of a creature with no primitive var set is messy. - return - - if(M) - if (M.dna) - O.dna = M.dna - M.dna = null - - if (M.suiciding) - O.suiciding = M.suiciding - M.suiciding = null - - - for(var/datum/disease/D in M.viruses) - O.viruses += D - D.affected_mob = O - M.viruses -= D - - - for(var/obj/T in (M.contents-implants)) - del(T) - - O.loc = M.loc - - if(M.mind) - M.mind.transfer_to(O) //transfer our mind to the cute little monkey - - if (connected) //inside dna thing - var/obj/machinery/dna_scannernew/C = connected - O.loc = C - C.occupant = O - connected = null - O.real_name = text("monkey ([])",copytext(md5(M.real_name), 2, 6)) - O.take_overall_damage(M.getBruteLoss() + 40, M.getFireLoss()) - O.adjustToxLoss(M.getToxLoss() + 20) - O.adjustOxyLoss(M.getOxyLoss()) - O.stat = M.stat - O.a_intent = I_HARM - for (var/obj/item/weapon/implant/I in implants) - I.loc = O - I.implanted = O -// O.update_icon = 1 //queue a full icon update at next life() call - del(M) - return - - if (!isblockon(getblock(M.dna.struc_enzymes, MONKEYBLOCK,3),MONKEYBLOCK) && !istype(M, /mob/living/carbon/human)) - // monkey > human, - var/mob/living/carbon/monkey/Mo = M - Mo.notransform = 1 - var/list/implants = list() //Still preserving implants - for(var/obj/item/weapon/implant/W in Mo) - implants += W - W.loc = null - if(!connected) - for(var/obj/item/W in (Mo.contents-implants)) - Mo.unEquip(W) - M.notransform = 1 - M.canmove = 0 - M.icon = null - M.invisibility = 101 - var/atom/movable/overlay/animation = new( M.loc ) - animation.icon_state = "blank" - animation.icon = 'icons/mob/mob.dmi' - animation.master = src - flick("monkey2h", animation) - sleep(48) - del(animation) - - var/mob/living/carbon/human/human/O = new( src ) - if(Mo.greaterform) - O.set_species(Mo.greaterform) - - if (isblockon(getblock(M.dna.uni_identity, 11,3),11)) - O.gender = FEMALE - else - O.gender = MALE - - if (M) - if (M.dna) - O.dna = M.dna - M.dna = null - - if (M.suiciding) - O.suiciding = M.suiciding - M.suiciding = null - - for(var/datum/disease/D in M.viruses) - O.viruses += D - D.affected_mob = O - M.viruses -= D - - //for(var/obj/T in M) - // del(T) - - O.loc = M.loc - - if(M.mind) - M.mind.transfer_to(O) //transfer our mind to the human - - if (connected) //inside dna thing - var/obj/machinery/dna_scannernew/C = connected - O.loc = C - C.occupant = O - connected = null - - var/i - while (!i) - var/randomname - if (O.gender == MALE) - randomname = capitalize(pick(first_names_male) + " " + capitalize(pick(last_names))) - else - randomname = capitalize(pick(first_names_female) + " " + capitalize(pick(last_names))) - if (findname(randomname)) - continue - else - O.real_name = randomname - i++ - updateappearance(O,O.dna.uni_identity) - O.take_overall_damage(M.getBruteLoss(), M.getFireLoss()) - O.adjustToxLoss(M.getToxLoss()) - O.adjustOxyLoss(M.getOxyLoss()) - O.stat = M.stat - for (var/obj/item/weapon/implant/I in implants) - I.loc = O - I.implanted = O -// O.update_icon = 1 //queue a full icon update at next life() call - del(M) - return -//////////////////////////////////////////////////////////// Monkey Block - if(M) - M.update_icon = 1 //queue a full icon update at next life() call - return null - - -/proc/togglemut(mob/M as mob, var/block) - if(!M) return - var/newdna - M.dna.check_integrity() - newdna = setblock(M.dna.struc_enzymes,block,toggledblock(getblock(M.dna.struc_enzymes,block,3)),3) - M.dna.struc_enzymes = newdna - return - -/////////////////////////// DNA MISC-PROCS \ No newline at end of file diff --git a/code/game/dna/genes/monkey.dm b/code/game/dna/genes/monkey.dm index d260575a89b..474c034f21c 100644 --- a/code/game/dna/genes/monkey.dm +++ b/code/game/dna/genes/monkey.dm @@ -5,31 +5,34 @@ block=MONKEYBLOCK /datum/dna/gene/monkey/can_activate(var/mob/M,var/flags) - return istype(M, /mob/living/carbon/human) + return ishuman(M) /datum/dna/gene/monkey/activate(var/mob/living/carbon/human/H, var/connected, var/flags) if(!istype(H,/mob/living/carbon/human)) -// testing("Cannot monkey-ify [M], type is [M.type].") return - if(issmall(H)) // Already a monkey + if(issmall(H)) return for(var/obj/item/W in H) if(istype(W,/obj/item/organ)) continue + if(istype(W,/obj/item/weapon/implant)) + continue H.unEquip(W) + H.regenerate_icons() H.canmove = 0 H.stunned = 1 H.icon = null H.invisibility = 101 - var/atom/movable/overlay/animation = new /atom/movable/overlay( H.loc ) + + var/atom/movable/overlay/animation = new /atom/movable/overlay(H.loc) animation.icon_state = "blank" animation.icon = 'icons/mob/mob.dmi' animation.master = H flick("h2monkey", animation) - sleep(48) - //animation = null - + sleep(22) + qdel(animation) + H.stunned = 0 H.update_canmove() H.invisibility = initial(H.invisibility) @@ -43,33 +46,34 @@ if(H.hud_used) H.hud_used.instantiate() - H << "You are now a [H.species.name]. " - qdel(animation) + H << "You are now a [H.species.name]." return H /datum/dna/gene/monkey/deactivate(var/mob/living/carbon/human/H, var/connected, var/flags) if(!istype(H,/mob/living/carbon/human)) -// testing("Cannot monkey-ify [M], type is [M.type].") return for(var/obj/item/W in H) - if (W==H.w_uniform) // will be torn + if (W == H.w_uniform) // will be torn continue if(istype(W,/obj/item/organ)) continue + if(istype(W,/obj/item/weapon/implant)) + continue H.unEquip(W) H.regenerate_icons() H.canmove = 0 H.stunned = 1 H.icon = null H.invisibility = 101 - var/atom/movable/overlay/animation = new /atom/movable/overlay( H.loc ) + + var/atom/movable/overlay/animation = new /atom/movable/overlay(H.loc) animation.icon_state = "blank" animation.icon = 'icons/mob/mob.dmi' animation.master = H flick("monkey2h", animation) - sleep(48) - //animation = null + sleep(22) + qdel(animation) H.stunned = 0 H.update_canmove() @@ -84,7 +88,6 @@ if(H.hud_used) H.hud_used.instantiate() - H << "You are now a [H.species.name]. " - qdel(animation) + H << "You are now a [H.species.name]." return H \ No newline at end of file diff --git a/code/game/gamemodes/shadowling/special_shadowling_abilities.dm b/code/game/gamemodes/shadowling/special_shadowling_abilities.dm index 1566e3b254b..bb4fc80c7d6 100644 --- a/code/game/gamemodes/shadowling/special_shadowling_abilities.dm +++ b/code/game/gamemodes/shadowling/special_shadowling_abilities.dm @@ -77,6 +77,7 @@ var/list/possibleShadowlingNames = list("U'ruan", "Y`shej", "Nex", "Hel-uae", "N H.underwear = "None" H.undershirt = "None" + H.socks = "None" H.faction |= "faithless" H.equip_to_slot_or_del(new /obj/item/clothing/under/shadowling(usr), slot_w_uniform) diff --git a/code/modules/admin/admin.dm b/code/modules/admin/admin.dm index a4a836db6a6..ca079ba8139 100644 --- a/code/modules/admin/admin.dm +++ b/code/modules/admin/admin.dm @@ -606,7 +606,7 @@ var/global/nologevent = 0 return if(confirm == "Yes") var/delay = input("What delay should the restart have (in seconds)?", "Restart Delay", 5) as num - if(!delay) + if(isnull(delay)) delay = 50 else delay = delay * 10 diff --git a/code/modules/mob/living/carbon/human/species/apollo.dm b/code/modules/mob/living/carbon/human/species/apollo.dm index f5445b80543..8d0e64d44af 100644 --- a/code/modules/mob/living/carbon/human/species/apollo.dm +++ b/code/modules/mob/living/carbon/human/species/apollo.dm @@ -35,7 +35,8 @@ "antennae" = /obj/item/organ/wryn/hivenode ) - flags = IS_WHITELISTED | HAS_LIPS | HAS_UNDERWEAR | NO_BREATHE | HAS_SKIN_COLOR | NO_SCAN | NO_SCAN | HIVEMIND + flags = IS_WHITELISTED | HAS_LIPS | NO_BREATHE | HAS_SKIN_COLOR | NO_SCAN | NO_SCAN | HIVEMIND + clothing_flags = HAS_UNDERWEAR | HAS_UNDERSHIRT | HAS_SOCKS dietflags = DIET_HERB //bees feed off nectar, so bee people feed off plants too reagent_tag = PROCESS_ORG diff --git a/code/modules/mob/living/carbon/human/species/species.dm b/code/modules/mob/living/carbon/human/species/species.dm index 58b5968ebf8..09bd76f00eb 100644 --- a/code/modules/mob/living/carbon/human/species/species.dm +++ b/code/modules/mob/living/carbon/human/species/species.dm @@ -61,6 +61,7 @@ var/has_fine_manipulation = 1 // Can use small items. var/flags = 0 // Various specific features. + var/clothing_flags = 0 // Underwear and socks. var/bloodflags = 0 var/bodyflags = 0 var/dietflags = 0 // Make sure you set this, otherwise it won't be able to digest a lot of foods diff --git a/code/modules/mob/living/carbon/human/species/station.dm b/code/modules/mob/living/carbon/human/species/station.dm index b59efdda468..1604c5baea4 100644 --- a/code/modules/mob/living/carbon/human/species/station.dm +++ b/code/modules/mob/living/carbon/human/species/station.dm @@ -6,7 +6,8 @@ primitive_form = "Monkey" path = /mob/living/carbon/human/human language = "Sol Common" - flags = HAS_LIPS | HAS_UNDERWEAR | CAN_BE_FAT + flags = HAS_LIPS | CAN_BE_FAT + clothing_flags = HAS_UNDERWEAR | HAS_UNDERSHIRT | HAS_SOCKS bodyflags = HAS_SKIN_TONE dietflags = DIET_OMNI unarmed_type = /datum/unarmed_attack/punch @@ -37,7 +38,8 @@ else, frequently even their own lives. They prefer warmer temperatures than most species and \ their native tongue is a heavy hissing laungage called Sinta'Unathi." - flags = HAS_LIPS | HAS_UNDERWEAR + flags = HAS_LIPS + clothing_flags = HAS_UNDERWEAR | HAS_UNDERSHIRT | HAS_SOCKS bodyflags = FEET_CLAWS | HAS_TAIL | HAS_SKIN_COLOR | TAIL_WAGGING dietflags = DIET_CARN @@ -88,7 +90,8 @@ primitive_form = "Farwa" - flags = HAS_LIPS | HAS_UNDERWEAR | CAN_BE_FAT + flags = HAS_LIPS | CAN_BE_FAT + clothing_flags = HAS_UNDERWEAR | HAS_UNDERSHIRT | HAS_SOCKS bodyflags = FEET_PADDED | HAS_TAIL | HAS_SKIN_COLOR | TAIL_WAGGING dietflags = DIET_OMNI @@ -119,7 +122,8 @@ to the degree it can cause conflict with more rigorous and strict authorities. They speak a guttural language known as 'Canilunzt' \ which has a heavy emphasis on utilizing tail positioning and ear twitches to communicate intent." - flags = HAS_LIPS | HAS_UNDERWEAR + flags = HAS_LIPS + clothing_flags = HAS_UNDERWEAR | HAS_UNDERSHIRT | HAS_SOCKS bodyflags = FEET_PADDED | HAS_TAIL | HAS_SKIN_COLOR | TAIL_WAGGING dietflags = DIET_OMNI @@ -148,7 +152,8 @@ herbivores on the whole and tend to be co-operative with the other species of the galaxy, although they rarely reveal \ the secrets of their empire to their allies." - flags = HAS_LIPS | HAS_UNDERWEAR + flags = HAS_LIPS + clothing_flags = HAS_UNDERWEAR | HAS_UNDERSHIRT | HAS_SOCKS bodyflags = HAS_SKIN_COLOR dietflags = DIET_HERB @@ -190,6 +195,7 @@ poison_type = "oxygen" flags = NO_SCAN | IS_WHITELISTED + clothing_flags = HAS_SOCKS dietflags = DIET_OMNI blood_color = "#2299FC" @@ -278,6 +284,7 @@ brute_mod = 0.8 flags = IS_WHITELISTED + clothing_flags = HAS_SOCKS bodyflags = FEET_CLAWS dietflags = DIET_HERB @@ -295,6 +302,7 @@ unarmed_type = /datum/unarmed_attack/punch flags = IS_WHITELISTED | NO_BREATHE | HAS_LIPS | NO_INTORGANS | NO_SCAN + clothing_flags = HAS_SOCKS bodyflags = HAS_SKIN_COLOR bloodflags = BLOOD_SLIME dietflags = DIET_CARN @@ -322,7 +330,8 @@ default_genes = list(REMOTE_TALK) - flags = IS_WHITELISTED | HAS_LIPS | HAS_UNDERWEAR | CAN_BE_FAT + flags = IS_WHITELISTED | HAS_LIPS | CAN_BE_FAT + clothing_flags = HAS_UNDERWEAR | HAS_UNDERSHIRT | HAS_SOCKS dietflags = DIET_HERB reagent_tag = PROCESS_ORG @@ -373,6 +382,7 @@ water and other radiation." flags = NO_BREATHE | REQUIRE_LIGHT | IS_PLANT | RAD_ABSORB | NO_BLOOD | NO_PAIN + clothing_flags = HAS_SOCKS dietflags = 0 //Diona regenerate nutrition in light, no diet necessary body_temperature = T0C + 15 //make the plant people have a bit lower body temperature, why not @@ -467,6 +477,7 @@ passive_temp_gain = 10 //this should cause IPCs to stabilize at ~80 C in a 20 C environment. flags = IS_WHITELISTED | NO_BREATHE | NO_SCAN | NO_BLOOD | NO_PAIN | NO_DNA_RAD + clothing_flags = HAS_SOCKS dietflags = 0 //IPCs can't eat, so no diet blood_color = "#1F181F" flesh_color = "#AAAAAA" diff --git a/code/modules/mob/living/carbon/human/update_icons.dm b/code/modules/mob/living/carbon/human/update_icons.dm index f7493c272d8..9eee8087697 100644 --- a/code/modules/mob/living/carbon/human/update_icons.dm +++ b/code/modules/mob/living/carbon/human/update_icons.dm @@ -317,18 +317,18 @@ var/global/list/damage_icon_parts = list() stand_icon.Blend(base_icon,ICON_OVERLAY) //Underwear - if(underwear && species.flags & HAS_UNDERWEAR) + if(underwear && species.clothing_flags & HAS_UNDERWEAR) var/datum/sprite_accessory/underwear/U = underwear_list[underwear] if(U) stand_icon.Blend(new /icon(U.icon, "uw_[U.icon_state]_s"), ICON_OVERLAY) - if(undershirt && species.flags & HAS_UNDERWEAR) + if(undershirt && species.clothing_flags & HAS_UNDERSHIRT) var/datum/sprite_accessory/undershirt/U2 = undershirt_list[undershirt] if(U2) stand_icon.Blend(new /icon(U2.icon, "us_[U2.icon_state]_s"), ICON_OVERLAY) - if(socks) + if(socks && species.clothing_flags & HAS_SOCKS) var/datum/sprite_accessory/socks/U3 = socks_list[socks] if(U3) stand_icon.Blend(new /icon(U3.icon, "sk_[U3.icon_state]_s"), ICON_OVERLAY) diff --git a/code/modules/mob/new_player/preferences_setup.dm b/code/modules/mob/new_player/preferences_setup.dm index 77f48b976d5..829679ca93e 100644 --- a/code/modules/mob/new_player/preferences_setup.dm +++ b/code/modules/mob/new_player/preferences_setup.dm @@ -254,19 +254,19 @@ datum/preferences var/icon/underwear_s = null - if(underwear && current_species.flags & HAS_UNDERWEAR) + if(underwear && current_species.clothing_flags & HAS_UNDERWEAR) var/datum/sprite_accessory/underwear/U = underwear_list[underwear] if(U) underwear_s = new/icon(U.icon, "[U.icon_state]_s", ICON_OVERLAY) var/icon/undershirt_s = null - if(undershirt && current_species.flags & HAS_UNDERWEAR) + if(undershirt && current_species.clothing_flags & HAS_UNDERSHIRT) var/datum/sprite_accessory/undershirt/U2 = undershirt_list[undershirt] if(U2) undershirt_s = new/icon(U2.icon, "[U2.icon_state]_s", ICON_OVERLAY) var/icon/socks_s = null - if(socks) + if(socks && current_species.clothing_flags & HAS_SOCKS) var/datum/sprite_accessory/socks/U3 = socks_list[socks] if(U3) socks_s = new/icon(U3.icon, "[U3.icon_state]_s", ICON_OVERLAY) diff --git a/code/modules/mob/transform_procs.dm b/code/modules/mob/transform_procs.dm index 73870334d37..4fabdc6510e 100644 --- a/code/modules/mob/transform_procs.dm +++ b/code/modules/mob/transform_procs.dm @@ -3,60 +3,6 @@ H.dna.SetSEState(MONKEYBLOCK,1) domutcheck(H, null) -/* -/mob/living/carbon/human/proc/monkeyize() - if (notransform) - return - for(var/obj/item/W in src) - if (W==w_uniform) // will be torn - continue - unEquip(W) - regenerate_icons() - notransform = 1 - canmove = 0 - stunned = 1 - icon = null - invisibility = 101 - for(var/t in organs) - del(t) - var/atom/movable/overlay/animation = new /atom/movable/overlay( loc ) - animation.icon_state = "blank" - animation.icon = 'icons/mob/mob.dmi' - animation.master = src - flick("h2monkey", animation) - sleep(48) - //animation = null - - if(!species.primitive) //If the creature in question has no primitive set, this is going to be messy. - gib() - return - - var/mob/living/carbon/monkey/O = null - - O = new species.primitive(loc) - - O.dna = dna.Clone() - O.dna.SetSEState(MONKEYBLOCK,1) - O.dna.SetSEValueRange(MONKEYBLOCK,0xDAC, 0xFFF) - O.loc = loc - O.viruses = viruses - O.a_intent = I_HARM - - - if (client) - client.mob = O - if(mind) - mind.transfer_to(O) - - O << "You are now [O]. " - - spawn(0)//To prevent the proc from returning null. - del(src) - del(animation) - - return O -*/ - /mob/new_player/AIize() spawning = 1 return ..() From 7a0c1bae77e75f8b8637af243369bb7446d3f8e6 Mon Sep 17 00:00:00 2001 From: Markolie Date: Mon, 14 Sep 2015 22:26:09 +0200 Subject: [PATCH 42/44] Fix ore redemption deconstruction --- code/game/machinery/machinery.dm | 2 +- code/modules/mining/equipment_locker.dm | 21 +++++++++++---------- 2 files changed, 12 insertions(+), 11 deletions(-) diff --git a/code/game/machinery/machinery.dm b/code/game/machinery/machinery.dm index ca86c4ba839..bca87a8bad8 100644 --- a/code/game/machinery/machinery.dm +++ b/code/game/machinery/machinery.dm @@ -381,7 +381,7 @@ Class Procs: for(var/obj/item/I in component_parts) if(I.reliability != 100 && crit_fail) I.crit_fail = 1 - I.loc = src.loc + I.forceMove(loc) qdel(src) /obj/machinery/proc/default_deconstruction_screwdriver(var/mob/user, var/icon_state_open, var/icon_state_closed, var/obj/item/weapon/screwdriver/S) diff --git a/code/modules/mining/equipment_locker.dm b/code/modules/mining/equipment_locker.dm index 67eb53c2e0d..daf02b7e2a2 100644 --- a/code/modules/mining/equipment_locker.dm +++ b/code/modules/mining/equipment_locker.dm @@ -101,22 +101,23 @@ inserted_id = I interact(user) return + if(exchange_parts(user, W)) return - if(default_deconstruction_crowbar(W)) - return - - if(default_unfasten_wrench(user, W)) - return - if(default_deconstruction_screwdriver(user, "ore_redemption-open", "ore_redemption", W)) - updateUsrDialog() - return if(panel_open) if(istype(W, /obj/item/weapon/crowbar)) empty_content() default_deconstruction_crowbar(W) - return 1 + return + + if(default_unfasten_wrench(user, W)) + return + + if(default_deconstruction_screwdriver(user, "ore_redemption-open", "ore_redemption", W)) + updateUsrDialog() + return + ..() /obj/machinery/mineral/ore_redemption/proc/SmeltMineral(var/obj/item/weapon/ore/O) @@ -253,7 +254,7 @@ while(s.amount > s.max_amount) new s.type(loc,s.max_amount) s.use(s.max_amount) - s.loc = loc + s.forceMove(loc) s.layer = initial(s.layer) /**********************Mining Equipment Locker**************************/ From 351beaad3f8e8f1f7286e821915fc58da777d211 Mon Sep 17 00:00:00 2001 From: veganzombeh Date: Mon, 14 Sep 2015 21:49:59 +0100 Subject: [PATCH 43/44] Fixes indentation --- code/modules/mob/living/silicon/pai/pai.dm | 32 +++++++++++----------- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/code/modules/mob/living/silicon/pai/pai.dm b/code/modules/mob/living/silicon/pai/pai.dm index 7ad2b3f9d71..fed276969f7 100644 --- a/code/modules/mob/living/silicon/pai/pai.dm +++ b/code/modules/mob/living/silicon/pai/pai.dm @@ -552,22 +552,22 @@ return H /mob/living/silicon/pai/MouseDrop(atom/over_object) - var/mob/living/carbon/H = over_object - if(!istype(H) || !Adjacent(H)) return ..() - if(usr == src) - switch(alert(H, "[src] wants you to pick them up. Do it?",,"Yes","No")) - if("Yes") - if(Adjacent(H)) - get_scooped(H) - else - src << "You need to stay in reaching distance to be picked up." - if("No") - src << "[H] decided not to pick you up." - else - if(Adjacent(H)) - get_scooped(H) - else - return ..() + var/mob/living/carbon/human/H = over_object //changed to human to avoid stupid issues like xenos holding pAIs. + if(!istype(H) || !Adjacent(H)) return ..() + if(usr == src) + switch(alert(H, "[src] wants you to pick them up. Do it?",,"Yes","No")) + if("Yes") + if(Adjacent(H)) + get_scooped(H) + else + src << "You need to stay in reaching distance to be picked up." + if("No") + src << "[H] decided not to pick you up." + else + if(Adjacent(H)) + get_scooped(H) + else + return ..() /mob/living/silicon/pai/on_forcemove(atom/newloc) if(card) From e3a6bf535f34b236adc58107bebce1633c93c14b Mon Sep 17 00:00:00 2001 From: Fox-McCloud Date: Mon, 14 Sep 2015 21:54:21 -0400 Subject: [PATCH 44/44] Powernet Datum Destroying --- code/modules/power/powernet.dm | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/code/modules/power/powernet.dm b/code/modules/power/powernet.dm index 0c65a49b251..1fe2737d31b 100644 --- a/code/modules/power/powernet.dm +++ b/code/modules/power/powernet.dm @@ -11,7 +11,7 @@ var/perapc = 0 // per-apc avilability var/perapc_excess = 0 var/netexcess = 0 // excess power on the powernet (typically avail-load) - + var/problem = 0 // If either of these is set to 1 there is some sort of issue at the powernet. @@ -20,6 +20,14 @@ ..() /datum/powernet/Destroy() + //Go away references, you suck! + for(var/obj/structure/cable/C in cables) + cables -= C + C.powernet = null + for(var/obj/machinery/power/M in nodes) + nodes -= M + M.powernet = null + powernets -= src return ..() @@ -76,7 +84,7 @@ M.disconnect_from_network()//..remove it M.powernet = src nodes[M] = M - + // Triggers warning for certain amount of ticks /datum/powernet/proc/trigger_warning(var/duration_ticks = 20) problem = max(duration_ticks, problem) @@ -85,7 +93,7 @@ //called every ticks by the powernet controller /datum/powernet/proc/reset() var/numapc = 0 - + if(problem > 0) problem = max(problem - 1, 0)